<?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>226488</bug_id>
          
          <creation_ts>2021-06-01 04:44:46 -0700</creation_ts>
          <short_desc>Update libvpx to M92</short_desc>
          <delta_ts>2021-07-10 10:18: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>annulen</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>pnormand</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>viv718918</cc>
    
    <cc>vjaquez</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1765558</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-06-01 04:44:46 -0700</bug_when>
    <thetext>Update libvpx to M92</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1765577</commentid>
    <comment_count>1</comment_count>
      <attachid>430251</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-06-01 05:08:59 -0700</bug_when>
    <thetext>Created attachment 430251
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1767334</commentid>
    <comment_count>2</comment_count>
      <attachid>430718</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-06-07 00:38:12 -0700</bug_when>
    <thetext>Created attachment 430718
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1767490</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-06-07 11:11:05 -0700</bug_when>
    <thetext>Committed r278564 (238562@main): &lt;https://commits.webkit.org/238562@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 430718.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1767491</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-06-07 11:12:19 -0700</bug_when>
    <thetext>&lt;rdar://problem/78954544&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>430251</attachid>
            <date>2021-06-01 05:08:59 -0700</date>
            <delta_ts>2021-06-07 00:33:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-226488-20210601140855.patch</filename>
            <type>text/plain</type>
            <size>2778258</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc4MjY5CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvQ2hhbmdlTG9nIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL0NoYW5n
ZUxvZwppbmRleCA1ODczNDUzMDhhOWM2NWM5OWYxZTQzOWQ4MDM0YTc5NGJiMTI1YjE3Li42ZDRl
M2VlMWRjMTQ5MTc4NDFiODA0MTE3YzBjNmZiNGMxYTcxYzExIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAyMS0wNi0wMSAgWW91ZW5uIEZh
YmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgVXBkYXRlIGxpYnZweCB0byBNOTIK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNjQ4OAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ01ha2VM
aXN0cy50eHQ6CisgICAgICAgICogU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9CVUlMRC5nbjoK
KyAgICAgICAgKiBTb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L0RJUl9NRVRBREFUQTogQWRkZWQu
CisgICAgICAgICogU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9PV05FUlM6CisgICAgICAgICog
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9SRUFETUUuY2hyb21pdW06CisgICAgICAgICogU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9nZW5lcmF0ZV9nbmkuc2g6CisgICAgICAgICogU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9saWJ2cHhfc3Jjcy5nbmk6CisgICAgICAgICogU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9ydW5fcGVybC5weToKKyAgICAgICAgKiBTb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9jb25maWcvdnB4X3ZlcnNpb24uaDoKKyAgICAgICAgKiBsaWJ3ZWJy
dGMueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKwogMjAyMS0wNi0wMSAgWW91ZW5uIEZhYmxl
dCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgVXBkYXRlIGxpYnNydHAgdG8gTTkyCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ01ha2VMaXN0cy50eHQgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ01ha2VMaXN0cy50eHQKaW5kZXggMGU5OTI5MDBj
ZmNjMzk0MzYyMDMxNzVkZjVmOWVhMDYxNWYxODhiMC4uZjIyYmY4NDUyMWNkYmI5NGNhZWZjMTU2
MDIyZGVmODBhODIzZjUxMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9DTWFrZUxp
c3RzLnR4dApAQCAtMjI0Niw2ICsyMjQ2LDcgQEAgaWYgKEFQUExFKQogICAgICAgICBTb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIu
YwogICAgICAgICBTb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2V0aHJlYWQuYwogICAgICAgICBTb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dGVuZC5jCisgICAgICAgIFNvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJs
LmMKICAgICAgICAgU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9maXJzdHBhc3MuYwogICAgICAgICBTb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZyYW1lX3NjYWxlLmMKICAgICAgICAgU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9sb29r
YWhlYWQuYwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvQlVJTEQuZ24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9CVUlMRC5nbgppbmRleCAzMWEyNmU1YjQ0MDQ5Y2Qw
NTY0ZTllNTU5ZGZhMDFlZjU4MzY5NzIyLi5hYjJmZDBiYmFiMDc4YjUyOTI3NDBjMzIwZWIwZWIx
ZDVhYzc5YzNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9CVUlMRC5nbgorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9CVUlMRC5nbgpAQCAtNCw5ICs0LDExIEBA
CiAKIGltcG9ydCgiLy9idWlsZC9jb25maWcvYW5kcm9pZC9jb25maWcuZ25pIikKIGltcG9ydCgi
Ly9idWlsZC9jb25maWcvYXJtLmduaSIpCitpbXBvcnQoIi8vYnVpbGQvY29uZmlnL2Nocm9tZW9z
L3VpX21vZGUuZ25pIikKK2ltcG9ydCgiLy9idWlsZC9jb25maWcvaW9zL2NvbmZpZy5nbmkiKQog
aW1wb3J0KCIvL2J1aWxkL2NvbmZpZy9zYW5pdGl6ZXJzL3Nhbml0aXplcnMuZ25pIikKIGltcG9y
dCgiLy90aGlyZF9wYXJ0eS9saWJ2cHgvbGlidnB4X3NyY3MuZ25pIikKLWltcG9ydCgiLy90aGly
ZF9wYXJ0eS95YXNtL3lhc21fYXNzZW1ibGUuZ25pIikKK2ltcG9ydCgiLy90aGlyZF9wYXJ0eS9u
YXNtL25hc21fYXNzZW1ibGUuZ25pIikKIAogIyBTZXRzIHRoZSBhcmNoaXRlY3R1cmUgbmFtZSBm
b3IgYnVpbGRpbmcgbGlidnB4LgogaWYgKGN1cnJlbnRfY3B1ID09ICJ4ODYiKSB7CkBAIC0xOCw3
ICsyMCw3IEBAIGlmIChjdXJyZW50X2NwdSA9PSAieDg2IikgewogICAgIGNwdV9hcmNoX2Z1bGwg
PSAieDY0IgogICB9CiB9IGVsc2UgaWYgKGN1cnJlbnRfY3B1ID09ICJhcm0iKSB7Ci0gIGlmIChp
c19jaHJvbWVvcykgeworICBpZiAoaXNfY2hyb21lb3NfYXNoKSB7CiAgICAgIyBDaHJvbWVPUyBn
ZXRzIGhpZ2hiZCB2cDkgYnV0IG90aGVyIGFybSB0YXJnZXRzIGRvIG5vdC4KICAgICBjcHVfYXJj
aF9mdWxsID0gImFybS1uZW9uLWhpZ2hiZCIKICAgfSBlbHNlIGlmIChhcm1fdXNlX25lb24pIHsK
QEAgLTI4LDEyICszMCwxNCBAQCBpZiAoY3VycmVudF9jcHUgPT0gIng4NiIpIHsKICAgfSBlbHNl
IHsKICAgICBjcHVfYXJjaF9mdWxsID0gImFybSIKICAgfQotfSBlbHNlIHsKLSAgaWYgKGlzX2No
cm9tZW9zKSB7Cit9IGVsc2UgaWYgKGN1cnJlbnRfY3B1ID09ICJhcm02NCIpIHsKKyAgaWYgKGlz
X2Nocm9tZW9zX2FzaCB8fCBpc19tYWMpIHsKICAgICBjcHVfYXJjaF9mdWxsID0gImFybTY0LWhp
Z2hiZCIKICAgfSBlbHNlIHsKICAgICBjcHVfYXJjaF9mdWxsID0gY3VycmVudF9jcHUKICAgfQor
fSBlbHNlIHsKKyAgY3B1X2FyY2hfZnVsbCA9IGN1cnJlbnRfY3B1CiB9CiAKIGlmIChpc19uYWNs
KSB7CkBAIC0xMDEsNyArMTA1LDcgQEAgY29uZmlnKCJsaWJ2cHhfZXh0ZXJuYWxfY29uZmlnIikg
ewogfQogCiBpZiAoY3VycmVudF9jcHUgPT0gIng4NiIgfHwgKGN1cnJlbnRfY3B1ID09ICJ4NjQi
ICYmICFpc19tc2FuKSkgewotICB5YXNtX2Fzc2VtYmxlKCJsaWJ2cHhfeWFzbSIpIHsKKyAgbmFz
bV9hc3NlbWJsZSgibGlidnB4X2FzbSIpIHsKICAgICBpZiAoY3VycmVudF9jcHUgPT0gIng4NiIp
IHsKICAgICAgIHNvdXJjZXMgPSBsaWJ2cHhfc3Jjc194ODZfYXNzZW1ibHkKICAgICB9IGVsc2Ug
aWYgKGN1cnJlbnRfY3B1ID09ICJ4NjQiKSB7CkBAIC0xMzQsOCArMTM4LDEwIEBAIGlmIChjdXJy
ZW50X2NwdSA9PSAieDg2IiB8fCAoY3VycmVudF9jcHUgPT0gIng2NCIgJiYgIWlzX21zYW4pKSB7
CiAgICAgfQogICAgIGlmIChjdXJyZW50X2NwdSA9PSAieDg2IikgewogICAgICAgc291cmNlcyA9
IGxpYnZweF9zcmNzX3g4Nl9tbXgKKyAgICAgIGRlcHMgPSBbICI6bGlidnB4X3g4Nl9oZWFkZXJz
IiBdCiAgICAgfSBlbHNlIGlmIChjdXJyZW50X2NwdSA9PSAieDY0IikgewogICAgICAgc291cmNl
cyA9IGxpYnZweF9zcmNzX3g4Nl82NF9tbXgKKyAgICAgIGRlcHMgPSBbICI6bGlidnB4X3g4Nl82
NF9oZWFkZXJzIiBdCiAgICAgfQogICB9CiAKQEAgLTE0OCw4ICsxNTQsMTAgQEAgaWYgKGN1cnJl
bnRfY3B1ID09ICJ4ODYiIHx8IChjdXJyZW50X2NwdSA9PSAieDY0IiAmJiAhaXNfbXNhbikpIHsK
ICAgICB9CiAgICAgaWYgKGN1cnJlbnRfY3B1ID09ICJ4ODYiKSB7CiAgICAgICBzb3VyY2VzID0g
bGlidnB4X3NyY3NfeDg2X3NzZTIKKyAgICAgIGRlcHMgPSBbICI6bGlidnB4X3g4Nl9oZWFkZXJz
IiBdCiAgICAgfSBlbHNlIGlmIChjdXJyZW50X2NwdSA9PSAieDY0IikgewogICAgICAgc291cmNl
cyA9IGxpYnZweF9zcmNzX3g4Nl82NF9zc2UyCisgICAgICBkZXBzID0gWyAiOmxpYnZweF94ODZf
NjRfaGVhZGVycyIgXQogICAgIH0KICAgfQogCkBAIC0xNjIsOCArMTcwLDEwIEBAIGlmIChjdXJy
ZW50X2NwdSA9PSAieDg2IiB8fCAoY3VycmVudF9jcHUgPT0gIng2NCIgJiYgIWlzX21zYW4pKSB7
CiAgICAgfQogICAgIGlmIChjdXJyZW50X2NwdSA9PSAieDg2IikgewogICAgICAgc291cmNlcyA9
IGxpYnZweF9zcmNzX3g4Nl9zc3NlMworICAgICAgZGVwcyA9IFsgIjpsaWJ2cHhfeDg2X2hlYWRl
cnMiIF0KICAgICB9IGVsc2UgaWYgKGN1cnJlbnRfY3B1ID09ICJ4NjQiKSB7CiAgICAgICBzb3Vy
Y2VzID0gbGlidnB4X3NyY3NfeDg2XzY0X3Nzc2UzCisgICAgICBkZXBzID0gWyAiOmxpYnZweF94
ODZfNjRfaGVhZGVycyIgXQogICAgIH0KICAgfQogCkBAIC0xNzUsOCArMTg1LDEwIEBAIGlmIChj
dXJyZW50X2NwdSA9PSAieDg2IiB8fCAoY3VycmVudF9jcHUgPT0gIng2NCIgJiYgIWlzX21zYW4p
KSB7CiAgICAgICBjZmxhZ3MgPSBbICItbXNzZTQuMSIgXQogICAgIH0KICAgICBpZiAoY3VycmVu
dF9jcHUgPT0gIng4NiIpIHsKKyAgICAgIGRlcHMgPSBbICI6bGlidnB4X3g4Nl9oZWFkZXJzIiBd
CiAgICAgICBzb3VyY2VzID0gbGlidnB4X3NyY3NfeDg2X3NzZTRfMQogICAgIH0gZWxzZSBpZiAo
Y3VycmVudF9jcHUgPT0gIng2NCIpIHsKKyAgICAgIGRlcHMgPSBbICI6bGlidnB4X3g4Nl82NF9o
ZWFkZXJzIiBdCiAgICAgICBzb3VyY2VzID0gbGlidnB4X3NyY3NfeDg2XzY0X3NzZTRfMQogICAg
IH0KICAgfQpAQCAtMTkxLDggKzIwMywxMCBAQCBpZiAoY3VycmVudF9jcHUgPT0gIng4NiIgfHwg
KGN1cnJlbnRfY3B1ID09ICJ4NjQiICYmICFpc19tc2FuKSkgewogICAgICAgY2ZsYWdzID0gWyAi
LW1hdngiIF0KICAgICB9CiAgICAgaWYgKGN1cnJlbnRfY3B1ID09ICJ4ODYiKSB7CisgICAgICBk
ZXBzID0gWyAiOmxpYnZweF94ODZfaGVhZGVycyIgXQogICAgICAgc291cmNlcyA9IGxpYnZweF9z
cmNzX3g4Nl9hdngKICAgICB9IGVsc2UgaWYgKGN1cnJlbnRfY3B1ID09ICJ4NjQiKSB7CisgICAg
ICBkZXBzID0gWyAiOmxpYnZweF94ODZfNjRfaGVhZGVycyIgXQogICAgICAgc291cmNlcyA9IGxp
YnZweF9zcmNzX3g4Nl82NF9hdngKICAgICB9CiAgIH0KQEAgLTIwNyw4ICsyMjEsMTAgQEAgaWYg
KGN1cnJlbnRfY3B1ID09ICJ4ODYiIHx8IChjdXJyZW50X2NwdSA9PSAieDY0IiAmJiAhaXNfbXNh
bikpIHsKICAgICAgIGNmbGFncyA9IFsgIi1tYXZ4MiIgXQogICAgIH0KICAgICBpZiAoY3VycmVu
dF9jcHUgPT0gIng4NiIpIHsKKyAgICAgIGRlcHMgPSBbICI6bGlidnB4X3g4Nl9oZWFkZXJzIiBd
CiAgICAgICBzb3VyY2VzID0gbGlidnB4X3NyY3NfeDg2X2F2eDIKICAgICB9IGVsc2UgaWYgKGN1
cnJlbnRfY3B1ID09ICJ4NjQiKSB7CisgICAgICBkZXBzID0gWyAiOmxpYnZweF94ODZfNjRfaGVh
ZGVycyIgXQogICAgICAgc291cmNlcyA9IGxpYnZweF9zcmNzX3g4Nl82NF9hdngyCiAgICAgfQog
ICB9CkBAIC0yMzEsOCArMjQ3LDEwIEBAIGlmIChjdXJyZW50X2NwdSA9PSAieDg2IiB8fCAoY3Vy
cmVudF9jcHUgPT0gIng2NCIgJiYgIWlzX21zYW4pKSB7CiAgICAgICBdCiAgICAgfQogICAgIGlm
IChjdXJyZW50X2NwdSA9PSAieDg2IikgeworICAgICAgZGVwcyA9IFsgIjpsaWJ2cHhfeDg2X2hl
YWRlcnMiIF0KICAgICAgIHNvdXJjZXMgPSBsaWJ2cHhfc3Jjc194ODZfYXZ4NTEyCiAgICAgfSBl
bHNlIGlmIChjdXJyZW50X2NwdSA9PSAieDY0IikgeworICAgICAgZGVwcyA9IFsgIjpsaWJ2cHhf
eDg2XzY0X2hlYWRlcnMiIF0KICAgICAgIHNvdXJjZXMgPSBsaWJ2cHhfc3Jjc194ODZfNjRfYXZ4
NTEyCiAgICAgfQogICB9CkBAIC0yNDQsNiArMjYyLDcgQEAgaWYgKGNwdV9hcmNoX2Z1bGwgPT0g
ImFybS1uZW9uLWNwdS1kZXRlY3QiKSB7CiAgICAgY29uZmlncyArPSBbICI6bGlidnB4X2NvbmZp
ZyIgXQogICAgIGNmbGFncyA9IFsgIi1tZnB1PW5lb24iIF0KICAgICBzb3VyY2VzID0gbGlidnB4
X3NyY3NfYXJtX25lb25fY3B1X2RldGVjdF9uZW9uCisgICAgZGVwcyA9IFsgIjpsaWJ2cHhfYXJt
X25lb25fY3B1X2RldGVjdF9oZWFkZXJzIiBdCiAgIH0KIH0KIApAQCAtMzAyLDM5ICszMjEsMTAy
IEBAIGlmIChjdXJyZW50X2NwdSA9PSAiYXJtIiAmJiBhcm1fYXNzZW1ibHlfc291cmNlcyAhPSBb
XSkgewogICB9CiB9CiAKK3NvdXJjZV9zZXQoImxpYnZweF94ODZfaGVhZGVycyIpIHsKKyAgc291
cmNlcyA9IGxpYnZweF9zcmNzX3g4Nl9oZWFkZXJzCit9CisKK3NvdXJjZV9zZXQoImxpYnZweF94
ODZfNjRfaGVhZGVycyIpIHsKKyAgc291cmNlcyA9IGxpYnZweF9zcmNzX3g4Nl82NF9oZWFkZXJz
Cit9CisKK3NvdXJjZV9zZXQoImxpYnZweF9hcm1faGVhZGVycyIpIHsKKyAgc291cmNlcyA9IGxp
YnZweF9zcmNzX2FybV9oZWFkZXJzCit9CisKK3NvdXJjZV9zZXQoImxpYnZweF9hcm1fbmVvbl9o
ZWFkZXJzIikgeworICBzb3VyY2VzID0gbGlidnB4X3NyY3NfYXJtX25lb25faGVhZGVycworfQor
Citzb3VyY2Vfc2V0KCJsaWJ2cHhfYXJtX25lb25fY3B1X2RldGVjdF9oZWFkZXJzIikgeworICBz
b3VyY2VzID0gbGlidnB4X3NyY3NfYXJtX25lb25fY3B1X2RldGVjdF9oZWFkZXJzCit9CisKK3Nv
dXJjZV9zZXQoImxpYnZweF9hcm02NF9oZWFkZXJzIikgeworICBzb3VyY2VzID0gbGlidnB4X3Ny
Y3NfYXJtNjRfaGVhZGVycworfQorCitzb3VyY2Vfc2V0KCJsaWJ2cHhfYXJtX25lb25faGlnaGJk
X2hlYWRlcnMiKSB7CisgIHNvdXJjZXMgPSBsaWJ2cHhfc3Jjc19hcm1fbmVvbl9oaWdoYmRfaGVh
ZGVycworfQorCitzb3VyY2Vfc2V0KCJsaWJ2cHhfYXJtNjRfaGlnaGJkX2hlYWRlcnMiKSB7Cisg
IHNvdXJjZXMgPSBsaWJ2cHhfc3Jjc19hcm02NF9oaWdoYmRfaGVhZGVycworfQorCitzb3VyY2Vf
c2V0KCJsaWJ2cHhfbWlwc19oZWFkZXJzIikgeworICBzb3VyY2VzID0gbGlidnB4X3NyY3NfbWlw
c19oZWFkZXJzCit9CisKK3NvdXJjZV9zZXQoImxpYnZweF9uYWNsX2hlYWRlcnMiKSB7CisgIHNv
dXJjZXMgPSBsaWJ2cHhfc3Jjc19uYWNsX2hlYWRlcnMKK30KKworc291cmNlX3NldCgibGlidnB4
X2dlbmVyaWNfaGVhZGVycyIpIHsKKyAgc291cmNlcyA9IGxpYnZweF9zcmNzX2dlbmVyaWNfaGVh
ZGVycworfQorCiBzdGF0aWNfbGlicmFyeSgibGlidnB4IikgewotICBpZiAoIWlzX2RlYnVnICYm
IGlzX3dpbikgeworICBpZiAoIWlzX2RlYnVnICYmIChpc193aW4gfHwgaXNfY2hyb21lb3MpKSB7
CiAgICAgY29uZmlncyAtPSBbICIvL2J1aWxkL2NvbmZpZy9jb21waWxlcjpkZWZhdWx0X29wdGlt
aXphdGlvbiIgXQogICAgIGNvbmZpZ3MgKz0gWyAiLy9idWlsZC9jb25maWcvY29tcGlsZXI6b3B0
aW1pemVfbWF4IiBdCiAgIH0KIAotICBpZiAoaXNfbmFjbCkgeworICAjIEFzICJuYXNtIiBkb2Vz
IG5vdCBlbWJlZCB0aGUgcmVxdWlyZWQgTENfQlVJTERfVkVSU0lPTiBzZWN0aW9uIGluIG9iamVj
dAorICAjIGZpbGVzLCBpdCBpcyBub3QgcG9zc2libGUgdG8gYnVpbGQgb3B0aW1pc2VkIHZlcnNp
b24gb2YgdGhlIGNvZGUgaWYgdGhlCisgICMgdGFyZ2V0IGlzIGlPUyB1bmRlciAiY2F0YWx5c3Qi
IGVudmlyb25tZW50LiBUaGlzIHZlcnNpb24gaXMgbm90IHNoaXBwZWQsCisgICMgc28gdGhlcmUg
aXMgbm8gY29uY2VybiBhYm91dCBwZXJmb3JtYW5jZS4KKyAgIyBUT0RPKGNyYnVnLmNvbS8xMTQ1
MTk3KTogUmVtb3ZlIHRoaXMgZXhjZXB0aW9uIG9uY2UgIm5hc20iIGhhcyBzdXBwb3J0CisgICMg
Zm9yIGVtYmVkZGluZyB0aGUgY29ycmVjdCBMRF9CVUlMRF9WRVJTSU9OIHNlY3Rpb24uCisgIF9m
b3JjZV9nZW5lcmljX3NyY3MgPSBpc19pb3MgJiYgdGFyZ2V0X2Vudmlyb25tZW50ID09ICJjYXRh
bHlzdCIKKworICBpZiAoaXNfbmFjbCB8fCBfZm9yY2VfZ2VuZXJpY19zcmNzKSB7CiAgICAgc291
cmNlcyA9IGxpYnZweF9zcmNzX2dlbmVyaWMKKyAgICBwdWJsaWNfZGVwcyA9IFsgIjpsaWJ2cHhf
Z2VuZXJpY19oZWFkZXJzIiBdCiAgIH0gZWxzZSBpZiAoY3VycmVudF9jcHUgPT0gIng4NiIpIHsK
ICAgICBzb3VyY2VzID0gbGlidnB4X3NyY3NfeDg2CisgICAgcHVibGljX2RlcHMgPSBbICI6bGli
dnB4X3g4Nl9oZWFkZXJzIiBdCiAgIH0gZWxzZSBpZiAoY3VycmVudF9jcHUgPT0gIng2NCIpIHsK
ICAgICBpZiAoaXNfbXNhbikgewogICAgICAgc291cmNlcyA9IGxpYnZweF9zcmNzX2dlbmVyaWMK
KyAgICAgIHB1YmxpY19kZXBzID0gWyAiOmxpYnZweF9nZW5lcmljX2hlYWRlcnMiIF0KICAgICB9
IGVsc2UgewogICAgICAgc291cmNlcyA9IGxpYnZweF9zcmNzX3g4Nl82NAorICAgICAgcHVibGlj
X2RlcHMgPSBbICI6bGlidnB4X3g4Nl82NF9oZWFkZXJzIiBdCiAgICAgfQogICB9IGVsc2UgaWYg
KGN1cnJlbnRfY3B1ID09ICJtaXBzZWwiIHx8IGN1cnJlbnRfY3B1ID09ICJtaXBzNjRlbCIpIHsK
ICAgICBzb3VyY2VzID0gbGlidnB4X3NyY3NfbWlwcworICAgIHB1YmxpY19kZXBzID0gWyAiOmxp
YnZweF9taXBzX2hlYWRlcnMiIF0KICAgfSBlbHNlIGlmIChjdXJyZW50X2NwdSA9PSAiYXJtIikg
ewotICAgIGlmIChpc19jaHJvbWVvcykgeworICAgIGlmIChpc19jaHJvbWVvc19hc2gpIHsKICAg
ICAgIHNvdXJjZXMgPSBsaWJ2cHhfc3Jjc19hcm1fbmVvbl9oaWdoYmQKKyAgICAgIHB1YmxpY19k
ZXBzID0gWyAiOmxpYnZweF9hcm1fbmVvbl9oaWdoYmRfaGVhZGVycyIgXQogICAgIH0gZWxzZSBp
ZiAoYXJtX3VzZV9uZW9uKSB7CiAgICAgICBzb3VyY2VzID0gbGlidnB4X3NyY3NfYXJtX25lb24K
KyAgICAgIHB1YmxpY19kZXBzID0gWyAiOmxpYnZweF9hcm1fbmVvbl9oZWFkZXJzIiBdCiAgICAg
fSBlbHNlIGlmIChpc19hbmRyb2lkKSB7CiAgICAgICBzb3VyY2VzID0gbGlidnB4X3NyY3NfYXJt
X25lb25fY3B1X2RldGVjdAorICAgICAgcHVibGljX2RlcHMgPSBbICI6bGlidnB4X2FybV9uZW9u
X2NwdV9kZXRlY3RfaGVhZGVycyIgXQogICAgIH0gZWxzZSB7CiAgICAgICBzb3VyY2VzID0gbGli
dnB4X3NyY3NfYXJtCisgICAgICBwdWJsaWNfZGVwcyA9IFsgIjpsaWJ2cHhfYXJtX2hlYWRlcnMi
IF0KICAgICB9CiAgIH0gZWxzZSBpZiAoY3VycmVudF9jcHUgPT0gImFybTY0IikgewotICAgIGlm
IChpc19jaHJvbWVvcyB8fCBpc193aW4pIHsKKyAgICBpZiAoaXNfY2hyb21lb3NfYXNoIHx8IGlz
X3dpbiB8fCBpc19tYWMpIHsKICAgICAgIHNvdXJjZXMgPSBsaWJ2cHhfc3Jjc19hcm02NF9oaWdo
YmQKKyAgICAgIHB1YmxpY19kZXBzID0gWyAiOmxpYnZweF9hcm02NF9oaWdoYmRfaGVhZGVycyIg
XQogICAgIH0gZWxzZSB7CiAgICAgICBzb3VyY2VzID0gbGlidnB4X3NyY3NfYXJtNjQKKyAgICAg
IHB1YmxpY19kZXBzID0gWyAiOmxpYnZweF9hcm02NF9oZWFkZXJzIiBdCiAgICAgfQogICB9CiAK
QEAgLTM0MiwxNyArNDI0LDE5IEBAIHN0YXRpY19saWJyYXJ5KCJsaWJ2cHgiKSB7CiAgIGNvbmZp
Z3MgKz0gWyAiLy9idWlsZC9jb25maWcvY29tcGlsZXI6bm9fY2hyb21pdW1fY29kZSIgXQogICBj
b25maWdzICs9IFsgIjpsaWJ2cHhfY29uZmlnIiBdCiAgIGRlcHMgPSBbXQotICBpZiAoY3VycmVu
dF9jcHUgPT0gIng4NiIgfHwgKGN1cnJlbnRfY3B1ID09ICJ4NjQiICYmICFpc19tc2FuKSkgewot
ICAgIGRlcHMgKz0gWwotICAgICAgIjpsaWJ2cHhfaW50cmluc2ljc19hdngiLAotICAgICAgIjps
aWJ2cHhfaW50cmluc2ljc19hdngyIiwKLSAgICAgICI6bGlidnB4X2ludHJpbnNpY3NfYXZ4NTEy
IiwKLSAgICAgICI6bGlidnB4X2ludHJpbnNpY3NfbW14IiwKLSAgICAgICI6bGlidnB4X2ludHJp
bnNpY3Nfc3NlMiIsCi0gICAgICAiOmxpYnZweF9pbnRyaW5zaWNzX3NzZTRfMSIsCi0gICAgICAi
OmxpYnZweF9pbnRyaW5zaWNzX3Nzc2UzIiwKLSAgICAgICI6bGlidnB4X3lhc20iLAotICAgIF0K
KyAgaWYgKCFfZm9yY2VfZ2VuZXJpY19zcmNzKSB7CisgICAgaWYgKGN1cnJlbnRfY3B1ID09ICJ4
ODYiIHx8IChjdXJyZW50X2NwdSA9PSAieDY0IiAmJiAhaXNfbXNhbikpIHsKKyAgICAgIGRlcHMg
Kz0gWworICAgICAgICAiOmxpYnZweF9hc20iLAorICAgICAgICAiOmxpYnZweF9pbnRyaW5zaWNz
X2F2eCIsCisgICAgICAgICI6bGlidnB4X2ludHJpbnNpY3NfYXZ4MiIsCisgICAgICAgICI6bGli
dnB4X2ludHJpbnNpY3NfYXZ4NTEyIiwKKyAgICAgICAgIjpsaWJ2cHhfaW50cmluc2ljc19tbXgi
LAorICAgICAgICAiOmxpYnZweF9pbnRyaW5zaWNzX3NzZTIiLAorICAgICAgICAiOmxpYnZweF9p
bnRyaW5zaWNzX3NzZTRfMSIsCisgICAgICAgICI6bGlidnB4X2ludHJpbnNpY3Nfc3NzZTMiLAor
ICAgICAgXQorICAgIH0KICAgfQogICBpZiAoY3B1X2FyY2hfZnVsbCA9PSAiYXJtLW5lb24tY3B1
LWRldGVjdCIpIHsKICAgICBkZXBzICs9IFsgIjpsaWJ2cHhfaW50cmluc2ljc19uZW9uIiBdCkBA
IC0zNjYsMyArNDUwLDIyIEBAIHN0YXRpY19saWJyYXJ5KCJsaWJ2cHgiKSB7CiAKICAgcHVibGlj
X2NvbmZpZ3MgPSBbICI6bGlidnB4X2V4dGVybmFsX2NvbmZpZyIgXQogfQorCitzdGF0aWNfbGli
cmFyeSgibGlidnA5cmMiKSB7CisgIGlmICghaXNfZGVidWcgJiYgaXNfd2luKSB7CisgICAgY29u
ZmlncyAtPSBbICIvL2J1aWxkL2NvbmZpZy9jb21waWxlcjpkZWZhdWx0X29wdGltaXphdGlvbiIg
XQorICAgIGNvbmZpZ3MgKz0gWyAiLy9idWlsZC9jb25maWcvY29tcGlsZXI6b3B0aW1pemVfbWF4
IiBdCisgIH0KKworICBzb3VyY2VzID0gWworICAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9yYXRlY3RybF9ydGMuY2MiLAorICAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9yYXRlY3RybF9ydGMuaCIsCisgIF0KKworICBjb25maWdzIC09
IFsgIi8vYnVpbGQvY29uZmlnL2NvbXBpbGVyOmNocm9taXVtX2NvZGUiIF0KKyAgY29uZmlncyAr
PSBbICIvL2J1aWxkL2NvbmZpZy9jb21waWxlcjpub19jaHJvbWl1bV9jb2RlIiBdCisgIGNvbmZp
Z3MgKz0gWyAiOmxpYnZweF9jb25maWciIF0KKyAgcHVibGljX2RlcHMgPSBbICI6bGlidnB4IiBd
CisKKyAgcHVibGljX2NvbmZpZ3MgPSBbICI6bGlidnB4X2V4dGVybmFsX2NvbmZpZyIgXQorfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvRElSX01FVEFEQVRBIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvRElSX01FVEFEQVRBCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBjYzdlNWY0YWMx
OTliYWFiZDZiYTEyYjdiMWZmYWZlZmIyYmRlMGYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9ESVJfTUVUQURB
VEEKQEAgLTAsMCArMSwzIEBACittb25vcmFpbDogeworICBjb21wb25lbnQ6ICJJbnRlcm5hbHM+
TWVkaWE+VmlkZW8iCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9PV05FUlMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9PV05FUlMKaW5kZXggOTRjMjQxNTljYzI2
NTZhNTdiYzU5N2QwNzc4NDQ0MjU0N2Y0MWMyMy4uNjUyNDY3ODYyYzc3NDY5YjUwNTlhYzAxM2Y3
YzIwMjc2OGQ5OWM2YSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvT1dORVJTCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L09XTkVSUwpAQCAtMiw0ICsyLDMgQEAg
dG9tZmluZWdhbkBjaHJvbWl1bS5vcmcKIGpvaGFubmtvZW5pZ0Bnb29nbGUuY29tCiBqemVybkBj
aHJvbWl1bS5vcmcKIGp6ZXJuQGdvb2dsZS5jb20KLSMgQ09NUE9ORU5UOiBJbnRlcm5hbHM+TWVk
aWE+VmlkZW8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L1JFQURNRS5jaHJvbWl1bSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L1JFQURNRS5jaHJvbWl1bQppbmRleCBl
N2U4YmQyOTI0YjRkNTRjODg0NzcyYzVlZGRlMTczMGY4ZjUwNzA5Li4zNDViZWQ2MWRhYWRmYjNi
MGUxYTNhZTViZjAxM2U4NDNmYWM5NWQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9SRUFETUUuY2hyb21pdW0KKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvUkVB
RE1FLmNocm9taXVtCkBAIC02LDkgKzYsOSBAQCBMaWNlbnNlOiBCU0QKIExpY2Vuc2UgRmlsZTog
c291cmNlL2xpYnZweC9MSUNFTlNFCiBTZWN1cml0eSBDcml0aWNhbDogeWVzCiAKLURhdGU6IFdl
ZG5lc2RheSBNYXJjaCAwNCAyMDIwCitEYXRlOiBGcmlkYXkgSmFudWFyeSAyOSAyMDIxCiBCcmFu
Y2g6IG1hc3RlcgotQ29tbWl0OiA1NTMyNzc1ZWZlODA4Y2IwOTQyZTdiOTliZjJmMjMyYzZjZTk5
ZmVlCitDb21taXQ6IDYxZWRlYzFlZmJlYTFjMDJkNzE4NTdlMmFmZjk0MjZkOWNkMmRmNGUKIAog
RGVzY3JpcHRpb246CiBDb250YWlucyB0aGUgc291cmNlcyB1c2VkIHRvIGNvbXBpbGUgbGlidnB4
IGJpbmFyaWVzIHVzZWQgYnkgR29vZ2xlIENocm9tZSBhbmQKQEAgLTMxLDExICszMSwyNSBAQCBQ
bGVhc2UgZm9sbG93IHRoZXNlIHN0ZXBzIHRvIHVwZGF0ZSBsaWJ2cHggc291cmNlIGNvZGU6CiAK
IDIuIEdlbmVyYXRlIC5nbmkgYW5kIGNvbmZpZyBmaWxlcy4KIAotICAgY2QgdGhpcmRfcGFydHkv
bGlidnB4Ci0gICAuL2dlbmVyYXRlX2duaS5zaAorICAgICBjZCB0aGlyZF9wYXJ0eS9saWJ2cHgK
KyAgICAgLi9nZW5lcmF0ZV9nbmkuc2gKKworICBBbWVuZCB0aGUgY29tbWl0IGNyZWF0ZWQgYnkg
dGhlIGZpcnN0IHN0ZXA6CisKKyAgICAgZ2l0IGNvbW1pdCAtYSAtLWFtZW5kCiAKIDMuIFVwZGF0
ZSAnQnJhbmNoJyBpbiBSRUFETUUuY2hyb21pdW0gaWYgbmVjZXNzYXJ5LgogCis0LiBVcGxvYWQg
dGhlIGNoYW5nZSB0byBHZXJyaXQ6CisKKyAgICAgZ2l0IGNsIHVwbG9hZAorCisgICBSdW4gdHJ5
am9iczoKKworICAgICBnaXQgY2wgdHJ5CisKKzUuIFNlbmQgb3V0IGZvciByZXZpZXcgd2hlbiBh
bGwgdHJ5am9icyBwYXNzLiBTdWJtaXQgaXQgd2hlbiArMSBpcyBncmFudGVkLgorCiBUb29scyBu
ZWVkZWQgdG8gYnVpbGQgbGlidnB4OgogCiAtIGdlbmVyYXRlX2duaS5zaApkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvZ2Vu
ZXJhdGVfZ25pLnNoIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvZ2VuZXJhdGVfZ25pLnNoCmluZGV4IGJjZjg0YjBkMjYwMDRhMjYyMjliN2E3
OWFjNTU1N2FjMmY5ZjFiZTguLmI5MzdiOTZkYmQ0NzIxODc2NmEyOTIxYzlhMjM4ZmYwYjM1OTMz
Y2MgMTAwNzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L2dlbmVyYXRlX2duaS5zaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9nZW5lcmF0ZV9nbmkuc2gKQEAgLTExOCw2
ICsxMTgsMTUgQEAgZnVuY3Rpb24gY29udmVydF9zcmNzX3RvX3Byb2plY3RfZmlsZXMgewogICAj
IElnbm9yZSBpbmNsdWRlIGZpbGVzLgogICBzb3VyY2VfbGlzdD0kKGVjaG8gIiRzb3VyY2VfbGlz
dCIgfCBncmVwIC12ICd4ODZfYWJpX3N1cHBvcnRcLmFzbScpCiAKKyAgIyBUaGVzZSBoZWFkZXJz
IGFyZSAjaW5jbHVkZWQgY29uZGl0aW9uYWxseSB3aXRoICNpZiBWUFhfQVJDSF9BUk0gYW5kCisg
ICMgc2ltaWxhci4gSG93ZXZlciwgb25seSB0aGUgaGVhZGVyKHMpIHJlbGV2YW50IGZvciB0aGUg
Y3VycmVudCBhcmNoaXRlY3R1cmUKKyAgIyBhcmUgcHJlc2VudCBpbiAkMSwgaGVuY2UgImduIGNo
ZWNrIiB3aWxsIGRldGVjdCB0aGVtIGFzIGludmFsaWQgaW5jbHVkZXMKKyAgIyB1bmxlc3MgZXhw
bGljaXRseSBhZGRlZC4KKyAgc291cmNlX2xpc3Q9JChlY2hvIC1lICIkc291cmNlX2xpc3RcXG52
cHhfcG9ydHMvYXJtLmgiKQorICBzb3VyY2VfbGlzdD0kKGVjaG8gLWUgIiRzb3VyY2VfbGlzdFxc
bnZweF9wb3J0cy94ODYuaCIpCisgIHNvdXJjZV9saXN0PSQoZWNobyAtZSAiJHNvdXJjZV9saXN0
XFxudnB4X3BvcnRzL21pcHMuaCIpCisgIHNvdXJjZV9saXN0PSQoZWNobyAiJHNvdXJjZV9saXN0
IiB8IHNvcnQgLXUpCisKICAgIyBUaGUgYWN0dWFsIEFSTSBmaWxlcyBlbmQgaW4gLmFzbS4gV2Ug
aGF2ZSBydWxlcyB0byB0cmFuc2xhdGUgdGhlbSB0byAuUwogICBzb3VyY2VfbGlzdD0kKGVjaG8g
IiRzb3VyY2VfbGlzdCIgfCBzZWQgcy9cLmFzbVwucyQvLmFzbS8pCiAKQEAgLTE0Miw4ICsxNTEs
OSBAQCBmdW5jdGlvbiBjb252ZXJ0X3NyY3NfdG9fcHJvamVjdF9maWxlcyB7CiAKICAgIyBXcml0
ZSBhIHNpbmdsZSAuZ25pIGZpbGUgdGhhdCBpbmNsdWRlcyBhbGwgc291cmNlIGZpbGVzIGZvciBh
bGwgYXJjaHMuCiAgIGlmIFsgMCAtbmUgJHsjeDg2X2xpc3R9IF07IHRoZW4KLSAgICBsb2NhbCBj
X3NvdXJjZXM9JChlY2hvICIkc291cmNlX2xpc3QiIHwgZWdyZXAgJy4oY3xoKSQnKQotICAgIGxv
Y2FsIGFzc2VtYmx5X3NvdXJjZXM9JChlY2hvICIkc291cmNlX2xpc3QiIHwgZWdyZXAgJy5hc20k
JykKKyAgICBsb2NhbCBjX3NvdXJjZXM9JChlY2hvICIkc291cmNlX2xpc3QiIHwgZWdyZXAgJ1wu
YyQnKQorICAgIGxvY2FsIGNfaGVhZGVycz0kKGVjaG8gIiRzb3VyY2VfbGlzdCIgfCBlZ3JlcCAn
XC5oJCcpCisgICAgbG9jYWwgYXNzZW1ibHlfc291cmNlcz0kKGVjaG8gIiRzb3VyY2VfbGlzdCIg
fCBlZ3JlcCAnXC5hc20kJykKICAgICBsb2NhbCBtbXhfc291cmNlcz0kKGVjaG8gIiRpbnRyaW5z
aWNfbGlzdCIgfCBncmVwICdfbW14XC5jJCcpCiAgICAgbG9jYWwgc3NlMl9zb3VyY2VzPSQoZWNo
byAiJGludHJpbnNpY19saXN0IiB8IGdyZXAgJ19zc2UyXC5jJCcpCiAgICAgbG9jYWwgc3NlM19z
b3VyY2VzPSQoZWNobyAiJGludHJpbnNpY19saXN0IiB8IGdyZXAgJ19zc2UzXC5jJCcpCkBAIC0x
NTQsNiArMTY0LDcgQEAgZnVuY3Rpb24gY29udmVydF9zcmNzX3RvX3Byb2plY3RfZmlsZXMgewog
ICAgIGxvY2FsIGF2eDUxMl9zb3VyY2VzPSQoZWNobyAiJGludHJpbnNpY19saXN0IiB8IGdyZXAg
J19hdng1MTJcLmMkJykKIAogICAgIHdyaXRlX2duaSBjX3NvdXJjZXMgJDIgIiRCQVNFX0RJUi9s
aWJ2cHhfc3Jjcy5nbmkiCisgICAgd3JpdGVfZ25pIGNfaGVhZGVycyAkMl9oZWFkZXJzICIkQkFT
RV9ESVIvbGlidnB4X3NyY3MuZ25pIgogICAgIHdyaXRlX2duaSBhc3NlbWJseV9zb3VyY2VzICQy
X2Fzc2VtYmx5ICIkQkFTRV9ESVIvbGlidnB4X3NyY3MuZ25pIgogICAgIHdyaXRlX2duaSBtbXhf
c291cmNlcyAkMl9tbXggIiRCQVNFX0RJUi9saWJ2cHhfc3Jjcy5nbmkiCiAgICAgd3JpdGVfZ25p
IHNzZTJfc291cmNlcyAkMl9zc2UyICIkQkFTRV9ESVIvbGlidnB4X3NyY3MuZ25pIgpAQCAtMTY0
LDExICsxNzUsMTMgQEAgZnVuY3Rpb24gY29udmVydF9zcmNzX3RvX3Byb2plY3RfZmlsZXMgewog
ICAgIHdyaXRlX2duaSBhdngyX3NvdXJjZXMgJDJfYXZ4MiAiJEJBU0VfRElSL2xpYnZweF9zcmNz
LmduaSIKICAgICB3cml0ZV9nbmkgYXZ4NTEyX3NvdXJjZXMgJDJfYXZ4NTEyICIkQkFTRV9ESVIv
bGlidnB4X3NyY3MuZ25pIgogICBlbHNlCi0gICAgbG9jYWwgY19zb3VyY2VzPSQoZWNobyAiJHNv
dXJjZV9saXN0IiB8IGVncmVwICcuKGN8aCkkJykKKyAgICBsb2NhbCBjX3NvdXJjZXM9JChlY2hv
ICIkc291cmNlX2xpc3QiIHwgZWdyZXAgJ1wuYyQnKQorICAgIGxvY2FsIGNfaGVhZGVycz0kKGVj
aG8gIiRzb3VyY2VfbGlzdCIgfCBlZ3JlcCAnXC5oJCcpCiAgICAgbG9jYWwgYXNzZW1ibHlfc291
cmNlcz0kKGVjaG8gLWUgIiRzb3VyY2VfbGlzdFxuJGludHJpbnNpY19saXN0IiB8IFwKLSAgICAg
IGVncmVwICcuYXNtJCcpCisgICAgICBlZ3JlcCAnXC5hc20kJykKICAgICBsb2NhbCBuZW9uX3Nv
dXJjZXM9JChlY2hvICIkaW50cmluc2ljX2xpc3QiIHwgZ3JlcCAnX25lb25cLmMkJykKICAgICB3
cml0ZV9nbmkgY19zb3VyY2VzICQyICIkQkFTRV9ESVIvbGlidnB4X3NyY3MuZ25pIgorICAgIHdy
aXRlX2duaSBjX2hlYWRlcnMgJDJfaGVhZGVycyAiJEJBU0VfRElSL2xpYnZweF9zcmNzLmduaSIK
ICAgICB3cml0ZV9nbmkgYXNzZW1ibHlfc291cmNlcyAkMl9hc3NlbWJseSAiJEJBU0VfRElSL2xp
YnZweF9zcmNzLmduaSIKICAgICBpZiBbIDAgLW5lICR7I25lb25fc291cmNlc30gXTsgdGhlbgog
ICAgICAgd3JpdGVfZ25pIG5lb25fc291cmNlcyAkMl9uZW9uICIkQkFTRV9ESVIvbGlidnB4X3Ny
Y3MuZ25pIgpAQCAtNDkwLDcgKzUwMyw3IEBAIGlmIFsgLXogJE9OTFlfQ09ORklHUyBdOyB0aGVu
CiAgIG1ha2UgbGlidnB4X3NyY3MudHh0IHRhcmdldD1saWJzICRjb25maWcgPiAvZGV2L251bGwK
ICAgY29udmVydF9zcmNzX3RvX3Byb2plY3RfZmlsZXMgbGlidnB4X3NyY3MudHh0IGxpYnZweF9z
cmNzX2FybTY0X2hpZ2hiZAogCi0gIGVjaG8gIkFSTTY0IFdpbmRvd3MgdXNlcyB0aGUgQVJNNjQg
TGludXggSGlnaEJEIHNvdXJjZSBsaXN0LiBObyBuZWVkIHRvIGdlbmVyYXRlIGl0LiIKKyAgZWNo
byAiQVJNNjQgV2luZG93cyBhbmQgTWFjIHVzZSB0aGUgQVJNNjQgTGludXggSGlnaEJEIHNvdXJj
ZSBsaXN0LiBObyBuZWVkIHRvIGdlbmVyYXRlIGl0LiIKIAogICBlY2hvICJHZW5lcmF0ZSBNSVBT
IHNvdXJjZSBsaXN0LiIKICAgY29uZmlnPSQocHJpbnRfY29uZmlnX2Jhc2ljIGxpbnV4L21pcHNl
bCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L2xpYnZweF9zcmNzLmduaSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L2xpYnZweF9zcmNzLmduaQppbmRleCBiZTc5NmNi
NmExNjZkOTIzZjAxZjkzYjllM2VhMDJiYWI4ZjMwNTk1Li5iMTY1YjBmN2M5NDdjYzA1MWNkMGZm
ZTA4ZWY5MzY4NzZhZDBjMzZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9saWJ2cHhfc3Jjcy5nbmkKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvbGlidnB4X3Ny
Y3MuZ25pCkBAIC0yLDc4NyArMiwzMjYgQEAKIAogbGlidnB4X3NyY3NfeDg2ID0gWwogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FsbG9jY29tbW9uLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FsbG9j
Y29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2Jsb2NrZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9ibG9ja2QuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vY29lZnVwZGF0ZXByb2JzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9kZWZhdWx0X2NvZWZfcHJvYnMuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZGVxdWFudGl6ZS5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRy
b3B5LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2VudHJvcHkuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vZW50cm9weW1vZGUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vZW50cm9weW1vZGUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHltdi5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9leHRlbmQuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZXh0ZW5kLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbHRlci5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maWx0ZXIu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZmlu
ZG5lYXJtdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9maW5kbmVhcm12LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2dlbmVyaWMvc3lzdGVtZGVwZW5kZW50LmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2hlYWRlci5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pZGN0X2Jsay5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pZGN0bGxtLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ludnRyYW5z
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2xv
b3BmaWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vbG9vcGZpbHRlcl9maWx0ZXJzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL21icGl0Y2guYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWZxZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tb2RlY29udC5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tb2RlY29udC5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tdi5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9vbnl4LmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL29ueXhjX2ludC5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9vbnl4ZC5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9wb3N0
cHJvYy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9wb3N0cHJvYy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9wcGZsYWdzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3F1YW50X2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9xdWFudF9jb21tb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRlci5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludGVyLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50
cmEuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
cmVjb25pbnRyYS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9yZWNvbmludHJhNHg0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcnRjZC5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zZXR1cGludHJhcmVjb24uYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc2V0dXBpbnRyYXJl
Y29uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L3N3YXB5djEyYnVmZmVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3N3YXB5djEyYnVmZmVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3N5c3RlbWRlcGVuZGVudC5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90aHJlYWRpbmcuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdHJlZWNvZGVyLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3RyZWVj
b2Rlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi92cDhfZW50cm9weW1vZGVkYXRhLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3ZwOF9sb29wZmlsdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92cDhfc2tpbl9k
ZXRlY3Rpb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24veDg2L2xvb3BmaWx0ZXJfeDg2LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni92cDhfYXNtX3N0dWJzLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kYm9vbGh1ZmYuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2Rib29saHVmZi5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVj
b2RlZnJhbWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9k
ZWNvZGVyL2RlY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZGVjb2Rlci9kZWNvZGVtdi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlcnRocmVhZGluZy5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGV0b2tlbml6ZS5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGV0b2tlbml6ZS5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvb255
eGRfaWYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNv
ZGVyL29ueXhkX2ludC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2RlY29kZXIvdGhyZWFkaW5nLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZGVjb2Rlci90cmVlcmVhZGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0uYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2JpdHN0cmVhbS5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYmxvY2suaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jvb2xodWZm
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9i
b29saHVmZi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvY29weV9jLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9kY3QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL2RjdF92YWx1ZV9jb3N0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3RfdmFsdWVfdG9rZW5zLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZWZhdWx0Y29lZmNvdW50
cy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
ZGVub2lzaW5nLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9kZW5vaXNpbmcuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL2VuY29kZWZyYW1lLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVmcmFtZS5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlaW50cmEuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWludHJh
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9l
bmNvZGVtYi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvZW5jb2RlbWIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL2VuY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtdi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZXRocmVhZGluZy5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZXRocmVhZGluZy5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZmlyc3RwYXNzLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9sb29r
YWhlYWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL2xvb2thaGVhZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvbWNvbXAuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL21jb21wLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9tb2RlY29zdHMuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVjb3N0cy5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbXJfZGlzc2ltLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tcl9kaXNzaW0uaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL29ueXhf
aWYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L29ueXhfaW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9waWNraW50ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL3BpY2tpbnRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xwZi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xwZi5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcXVhbnRpemUuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yYXRlY3Ry
bC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
cmRvcHQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL3Jkb3B0LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9zZWdtZW50YXRpb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL3NlZ21lbnRhdGlvbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdG9rZW5pemUuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Rva2VuaXplLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci90cmVld3JpdGVyLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci90cmVl
d3JpdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci92cDhfcXVhbnRpemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC92cDhfY3hfaWZhY2UuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC92cDhfZHhfaWZhY2UuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2FsbG9jY29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9hbGxvY2NvbW1vbi5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYmxvY2tk
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9ibG9ja2QuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uX2RhdGEuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbl9kYXRhLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5LmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRy
b3B5LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9lbnRyb3B5bW9kZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltdi5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW12LmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnVt
cy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfZmlsdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9maWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2lkY3QuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2lk
Y3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X2xvb3BmaWx0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21mcWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21mcWUuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X212LmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdnJlZl9jb21tb24u
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X212cmVmX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfb255eGNfaW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0cHJvYy5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcG9zdHByb2MuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3BwZmxhZ3MuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3By
ZWRfY29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9xdWFudF9jb21tb24uaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29u
aW50ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X3JlY29uaW50ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3J0Y2QuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NjYWxlLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9z
Y2FsZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfc2Nhbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfc2Nhbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGhyZWFkX2NvbW1vbi5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
dGhyZWFkX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfdGlsZV9jb21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RpbGVfY29tbW9uLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlZnJhbWUuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9k
ZWNvZGVmcmFtZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2RlY29kZXIvdnA5X2RlY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlbXYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVyLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rlci5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2Rl
dG9rZW5pemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9k
ZWNvZGVyL3ZwOV9kZXRva2VuaXplLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1YmV4cC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RzdWJleHAuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9qb2JfcXVldWUuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9q
b2JfcXVldWUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9hcV9jeWNsaWNyZWZyZXNoLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVzaC5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2JpdHN0cmVh
bS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2JpdHN0cmVhbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2Jsb2NrLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29z
dC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2Nvc3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9kY3QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Rlbm9pc2VyLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlZnJhbWUuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNv
ZGVmcmFtZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2VuY29kZW1iLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW12LmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5j
b2Rlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2VuY29kZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXRocmVhZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dF9yYXRlY3RybC5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dGVu
ZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2V4dGVuZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2ZpcnN0cGFzcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZyYW1lX3NjYWxlLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfam9iX3F1ZXVlLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbG9va2Fo
ZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfbG9va2FoZWFkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfbWJncmFwaC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21jb21wLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWNvbXAuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tdWx0aV90aHJlYWQu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9tdWx0aV90aHJlYWQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGFydGl0
aW9uX21vZGVscy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3BpY2tscGYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbHBmLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja21vZGUuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbW9kZS5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3F1
YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfcXVhbnRpemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJsLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmQuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZC5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jkb3B0
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfcmRvcHQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9yZXNpemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24u
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9za2luX2RldGVjdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRfZmVhdHVyZXMuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zcGVl
ZF9mZWF0dXJlcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3N1YmV4cC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRleHQuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdmNfbGF5
ZXJjb250ZXh0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfdGVtcG9yYWxfZmlsdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdG9rZW5pemUuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90b2tlbml6ZS5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3RyZWV3
cml0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV90cmVld3JpdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvdnA5X2N4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9pbnRlcm5hbC92cHhfY29kZWNfaW50
ZXJuYWwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMv
dnB4X2NvZGVjLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgv
c3JjL3ZweF9kZWNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvc3JjL3ZweF9lbmNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvc3JjL3ZweF9pbWFnZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4L3ZwOC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4L3ZwOGN4LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvdnA4ZHguaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eC92cHhfY29kZWMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eC92cHhfZGVjb2Rlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4L3ZweF9lbmNvZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvdnB4X2ZyYW1lX2J1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4L3ZweF9pbWFnZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4L3ZweF9pbnRlZ2VyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FkZF9ub2lzZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hdmcuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9idWZmZXIu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3Jp
dGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Jp
dHdyaXRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9iaXR3cml0ZXJfYnVmZmVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2JpdHdyaXRlcl9idWZmZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvZGVibG9jay5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnRyYXByZWQuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbG9vcGZpbHRlci5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wb3N0cHJvYy5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wcm9iLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Byb2IuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHNuci5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wc25yLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50aXplLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50aXpl
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NhZC5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2luX2Rl
dGVjdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9za2luX2RldGVjdGlvbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9zdWJ0cmFjdC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9zdW1fc3F1YXJlcy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC90eGZtX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2NvbnZvbHZlLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9kc3BfY29t
bW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Zw
eF9kc3BfcnRjZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC92cHhfZmlsdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3g4Ni9iaXRkZXB0aF9jb252ZXJzaW9uX2F2eDIuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2JpdGRlcHRoX2NvbnZlcnNpb25f
c3NlMi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94
ODYvY29udm9sdmUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AveDg2L2NvbnZvbHZlX2F2eDIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AveDg2L2NvbnZvbHZlX3NzZTIuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2NvbnZvbHZlX3Nzc2UzLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9md2RfZGN0MzJ4
MzJfaW1wbF9hdngyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3g4Ni9md2RfZGN0MzJ4MzJfaW1wbF9zc2UyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9md2RfdHhmbV9pbXBsX3NzZTIuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2Z3ZF90eGZt
X3NzZTIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
eDg2L2hpZ2hiZF9pbnZfdHhmbV9zc2UyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9oaWdoYmRfaW52X3R4Zm1fc3NlNC5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaW52X3R4Zm1fc3NlMi5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaW52
X3R4Zm1fc3NzZTMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AveDg2L21lbV9zc2UyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3g4Ni9xdWFudGl6ZV9zc2UyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9xdWFudGl6ZV9zc3NlMy5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdHJhbnNwb3NlX3NzZTIu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3R4
Zm1fY29tbW9uX3NzZTIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9tZW0vaW5jbHVkZS92cHhfbWVtX2ludHJubC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS92cHhfbWVtLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVtL3ZweF9tZW0uaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9iaXRvcHMuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9jb21waWxlcl9hdHRyaWJ1dGVzLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvZW1taW50
cmluX2NvbXBhdC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X3BvcnRzL21lbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X3BvcnRzL21lbV9vcHMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9wb3J0cy9tZW1fb3BzX2FsaWduZWQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9wb3J0cy9tc3ZjLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfcG9ydHMvc3RhdGljX2Fzc2VydC5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3N5c3RlbV9zdGF0ZS5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3ZweF9vbmNlLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X3RpbWVy
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMveDg2
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2Vu
ZXJpYy9nZW5fc2NhbGVycy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3NjYWxlL2dlbmVyaWMvdnB4X3NjYWxlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95djEyY29uZmlnLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95djEyZXh0
ZW5kLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUv
dnB4X3NjYWxlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
c2NhbGUvdnB4X3NjYWxlX3J0Y2QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9zY2FsZS95djEyY29uZmlnLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfdXRpbC9lbmRpYW5faW5sLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfYXRvbWljcy5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RocmVhZC5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RocmVhZC5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RpbWVz
dGFtcC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwv
dnB4X3dyaXRlX3l1dl9mcmFtZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X3V0aWwvdnB4X3dyaXRlX3l1dl9mcmFtZS5oIiwKLV0KLWxpYnZweF9zcmNzX3g4
Nl9hc3NlbWJseSA9IFsKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi94ODYvZGVxdWFudGl6ZV9tbXguYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvaWRjdGxsbV9tbXguYXNtIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvaWRjdGxsbV9zc2Uy
LmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
eDg2L2l3YWxzaF9zc2UyLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24veDg2L2xvb3BmaWx0ZXJfc3NlMi5hc20iLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9tZnFlX3NzZTIuYXNtIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvcmVjb25f
bW14LmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24veDg2L3JlY29uX3NzZTIuYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi94ODYvc3VicGl4ZWxfbW14LmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L3N1YnBpeGVsX3NzZTIuYXNtIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvc3Vi
cGl4ZWxfc3NzZTMuYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIveDg2L2Jsb2NrX2Vycm9yX3NzZTIuYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2L2NvcHlfc3NlMi5hc20iLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci94ODYvY29weV9z
c2UzLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL3g4Ni9kY3Rfc3NlMi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci94ODYvZndhbHNoX3NzZTIuYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi94ODYvdnA5X21mcWVfc3NlMi5hc20iLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci94ODYvdnA5
X2RjdF9zc2UyLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3g4Ni92cDlfZXJyb3Jfc3NlMi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9hZGRfbm9pc2Vfc3NlMi5hc20iLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9kZWJsb2NrX3NzZTIu
YXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYv
aGlnaGJkX2ludHJhcHJlZF9zc2UyLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9zYWQ0ZF9zc2UyLmFzbSIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9zYWRfc3NlMi5h
c20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9o
aWdoYmRfc3VicGVsX3ZhcmlhbmNlX2ltcGxfc3NlMi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9oaWdoYmRfdmFyaWFuY2VfaW1wbF9zc2Uy
LmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2
L2ludHJhcHJlZF9zc2UyLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AveDg2L2ludHJhcHJlZF9zc3NlMy5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9pbnZfd2h0X3NzZTIuYXNtIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvc2FkNGRfc3NlMi5h
c20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9z
YWRfc3NlMi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3g4Ni9zYWRfc3NlMy5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3g4Ni9zYWRfc3NlNC5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zYWRfc3NzZTMuYXNtIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvc3VicGVsX3ZhcmlhbmNlX3NzZTIu
YXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYv
c3VidHJhY3Rfc3NlMi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3g4Ni92cHhfY29udm9sdmVfY29weV9zc2UyLmFzbSIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9oaWdoX3N1YnBpeGVsXzh0
X3NzZTIuYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC94ODYvdnB4X2hpZ2hfc3VicGl4ZWxfYmlsaW5lYXJfc3NlMi5hc20iLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92cHhfc3VicGl4ZWxfOHRfc3Nl
Mi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4
Ni92cHhfc3VicGl4ZWxfOHRfc3NzZTMuYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X3N1YnBpeGVsX2JpbGluZWFyX3NzZTIuYXNtIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X3N1
YnBpeGVsX2JpbGluZWFyX3Nzc2UzLmFzbSIsCi1dCi1saWJ2cHhfc3Jjc194ODZfbW14ID0gWwot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9pZGN0
X2Jsa19tbXguYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9w
b3J0cy9lbW1zX21teC5jIiwKIF0KLWxpYnZweF9zcmNzX3g4Nl9zc2UyID0gWwotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9iaWxpbmVhcl9maWx0
ZXJfc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi94ODYvaWRjdF9ibGtfc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2L2Rlbm9pc2luZ19zc2UyLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci94ODYvdnA4X2VuY19zdHVic19z
c2UyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci94ODYvdnA4X3F1YW50aXplX3NzZTIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24veDg2L3ZwOV9pZGN0X2ludHJpbl9zc2UyLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci94ODYvdnA5X2RjdF9p
bnRyaW5fc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIveDg2L3ZwOV9kZW5vaXNlcl9zc2UyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci94ODYvdnA5X2hpZ2hiZF9ibG9ja19lcnJvcl9p
bnRyaW5fc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIveDg2L3ZwOV9xdWFudGl6ZV9zc2UyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9hdmdfaW50cmluX3NzZTIuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2F2Z19wcmVkX3NzZTIu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2Z3
ZF90eGZtX3NzZTIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AveDg2L2hpZ2hiZF9pZGN0MTZ4MTZfYWRkX3NzZTIuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9pZGN0MzJ4MzJfYWRkX3Nz
ZTIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2
L2hpZ2hiZF9pZGN0NHg0X2FkZF9zc2UyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9oaWdoYmRfaWRjdDh4OF9hZGRfc3NlMi5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX2ludHJh
cHJlZF9pbnRyaW5fc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC94ODYvaGlnaGJkX2xvb3BmaWx0ZXJfc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX3F1YW50aXplX2ludHJp
bl9zc2UyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3g4Ni9oaWdoYmRfdmFyaWFuY2Vfc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaW52X3R4Zm1fc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvbG9vcGZpbHRlcl9zc2UyLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9wb3N0X3By
b2Nfc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC94ODYvcXVhbnRpemVfc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC94ODYvc3VtX3NxdWFyZXNfc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdmFyaWFuY2Vfc3NlMi5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X3N1YnBpeGVs
XzR0X2ludHJpbl9zc2UyLmMiLAotXQotbGlidnB4X3NyY3NfeDg2X3NzZTMgPSBbXQotbGlidnB4
X3NyY3NfeDg2X3Nzc2UzID0gWwotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci94ODYvdnA4X3F1YW50aXplX3Nzc2UzLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci94ODYvdnA5X2ZyYW1lX3NjYWxlX3Nz
c2UzLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4
Ni9oaWdoYmRfaW50cmFwcmVkX2ludHJpbl9zc3NlMy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaW52X3R4Zm1fc3NzZTMuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3F1YW50aXplX3Nzc2Uz
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92
cHhfc3VicGl4ZWxfOHRfaW50cmluX3Nzc2UzLmMiLAotXQotbGlidnB4X3NyY3NfeDg2X3NzZTRf
MSA9IFsKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
eDg2L3F1YW50aXplX3NzZTQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24veDg2L3ZwOV9oaWdoYmRfaWh0MTZ4MTZfYWRkX3NzZTQuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24veDg2L3ZwOV9oaWdo
YmRfaWh0NHg0X2FkZF9zc2U0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3g4Ni92cDlfaGlnaGJkX2lodDh4OF9hZGRfc3NlNC5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX2lkY3Qx
NngxNl9hZGRfc3NlNC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC94ODYvaGlnaGJkX2lkY3QzMngzMl9hZGRfc3NlNC5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX2lkY3Q0eDRfYWRkX3Nz
ZTQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2
L2hpZ2hiZF9pZGN0OHg4X2FkZF9zc2U0LmMiLAotXQotbGlidnB4X3NyY3NfeDg2X2F2eCA9IFsK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIveDg2L3Zw
OV9kaWFtb25kX3NlYXJjaF9zYWRfYXZ4LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9xdWFudGl6ZV9hdnguYyIsCi1dCi1saWJ2cHhfc3Jjc194
ODZfYXZ4MiA9IFsKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIveDg2L3ZwOV9lcnJvcl9hdngyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci94ODYvdnA5X3F1YW50aXplX2F2eDIuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2F2Z19pbnRyaW5fYXZ4
Mi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYv
ZndkX3R4Zm1fYXZ4Mi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC94ODYvaGlnaGJkX2NvbnZvbHZlX2F2eDIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2xvb3BmaWx0ZXJfYXZ4Mi5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvc2FkNGRfYXZ4Mi5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvc2Fk
X2F2eDIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
eDg2L3ZhcmlhbmNlX2F2eDIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AveDg2L3ZweF9zdWJwaXhlbF84dF9pbnRyaW5fYXZ4Mi5jIiwKLV0KLWxpYnZw
eF9zcmNzX3g4Nl9hdng1MTIgPSBbXQotbGlidnB4X3NyY3NfeDg2XzY0ID0gWwotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FsbG9jY29tbW9uLmMiLAor
bGlidnB4X3NyY3NfeDg2X2hlYWRlcnMgPSBbCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vYWxsb2Njb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYmxvY2tkLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Jsb2NrZC5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9jb2VmdXBkYXRlcHJvYnMuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vY29tbW9u
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Rl
ZmF1bHRfY29lZl9wcm9icy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9kZXF1YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHkuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weS5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5
bXYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
ZW50cm9weW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2V4dGVuZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9leHRlbmQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vZmlsdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2ZpbHRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbmRuZWFybXYuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZ2VuZXJpYy9zeXN0ZW1kZXBl
bmRlbnQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vaGVhZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2lkY3RfYmxrLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2lkY3RsbG0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vaW52dHJhbnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbG9vcGZpbHRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29wZmlsdGVyX2ZpbHRlcnMuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWJwaXRjaC5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tZnFl
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21v
ZGVjb250LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL21vZGVjb250LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL212LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL29ueXguaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vb255eGNfaW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL29ueXhkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3BwZmxhZ3MuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcXVhbnRfY29tbW9uLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2Nv
bW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9yZWNvbmludGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL3JlY29uaW50ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYTR4
NC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9y
dGNkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L3NldHVwaW50cmFyZWNvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9zZXR1cGludHJhcmVjb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZmZXIuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZmZXIuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3lzdGVt
ZGVwZW5kZW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL3RocmVhZGluZy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi90cmVlY29kZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vdHJlZWNvZGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9lbnRyb3B5bW9kZWRhdGEuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X2xvb3BmaWx0
ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
dnA4X3NraW5fZGV0ZWN0aW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvbG9vcGZpbHRlcl94ODYuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L3ZwOF9h
c21fc3R1YnMuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9k
ZWNvZGVyL2Rib29saHVmZi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2RlY29kZXIvZGJvb2xodWZmLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVmcmFtZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlbXYuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZW12LmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVydGhy
ZWFkaW5nLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVj
b2Rlci9kZXRva2VuaXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZGVjb2Rlci9kZXRva2VuaXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZGVjb2Rlci9vbnl4ZF9pZi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvb255eGRfaW50LmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci90aHJlYWRpbmcuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL3RyZWVyZWFkZXIu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jp
dHN0cmVhbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvYml0c3RyZWFtLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9ibG9jay5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvYm9vbGh1ZmYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jvb2xodWZmLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9jb3B5X2MuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RjdC5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGN0X3ZhbHVlX2Nvc3QuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RjdF92
YWx1ZV90b2tlbnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL2RlZmF1bHRjb2VmY291bnRzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rlbm9pc2luZy5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlZnJhbWUuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29k
ZWZyYW1lLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9lbmNvZGVpbnRyYS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvZW5jb2RlaW50cmEuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW1iLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtYi5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbXYuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW12Lmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ldGhy
ZWFkaW5nLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9ldGhyZWFkaW5nLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9maXJzdHBhc3MuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbG9va2FoZWFkLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tY29tcC5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVjb3N0cy5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbW9k
ZWNvc3RzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9tcl9kaXNzaW0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL21yX2Rpc3NpbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pZi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pbnQuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tpbnRlci5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2ludGVyLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNrbHBm
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9w
aWNrbHBmLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9xdWFudGl6ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvcmF0ZWN0cmwuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yZG9wdC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmRvcHQuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3NlZ21lbnRhdGlvbi5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvc2VnbWVudGF0aW9u
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci90
b2tlbml6ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvdG9rZW5pemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3ZwOF9xdWFudGl6ZS5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3ZwOF9jeF9pZmFjZS5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3ZwOF9keF9pZmFjZS5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYWxsb2Nj
b21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X2FsbG9jY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9ibG9ja2QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Jsb2NrZC5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb25fZGF0YS5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
Y29tbW9uX2RhdGEuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X2VudHJvcHkuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHkuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltb2RlLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
ZW50cm9weW12LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9lbnRyb3B5bXYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X2VudW1zLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9maWx0ZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZpbHRlci5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZnJhbWVfYnVmZmVy
cy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfZnJhbWVfYnVmZmVycy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfaWRjdC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfaWRjdC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbG9vcGZpbHRlci5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbG9vcGZpbHRlci5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbWZx
ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfbWZxZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfbXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X212cmVmX2NvbW1vbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbXZyZWZfY29tbW9uLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9vbnl4Y19pbnQuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Bvc3Rw
cm9jLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9wb3N0cHJvYy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfcHBmbGFncy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcHJlZF9jb21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3ByZWRfY29tbW9uLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9xdWFudF9j
b21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X3F1YW50X2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRlci5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRyYS5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
cmVjb25pbnRyYS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfcnRjZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfc2NhbGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NjYWxlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FuLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FuLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zZWdfY29tbW9uLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9z
ZWdfY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV90aHJlYWRfY29tbW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aHJlYWRfY29tbW9uLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aWxlX2NvbW1vbi5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGls
ZV9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9k
ZWNvZGVyL3ZwOV9kZWNvZGVmcmFtZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZWZyYW1lLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlbXYuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVt
di5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIv
dnA5X2RlY29kZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9kZWNvZGVyL3ZwOV9kZWNvZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGV0b2tlbml6ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RldG9rZW5pemUuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kc3ViZXhw
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92
cDlfZHN1YmV4cC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2RlY29kZXIvdnA5X2pvYl9xdWV1ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2pvYl9xdWV1ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2FxX2N5Y2xpY3JlZnJlc2guYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9h
cV9jeWNsaWNyZWZyZXNoLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfYml0c3RyZWFtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYml0c3RyZWFtLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYmxvY2suaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9jb250ZXh0
X3RyZWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9jb250ZXh0X3RyZWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9jb3N0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29zdC5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2RjdC5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Rlbm9pc2VyLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZGVu
b2lzZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9lbmNvZGVmcmFtZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZWZyYW1lLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtYi5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2VuY29kZW12LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfZW5jb2RlbXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2Rlci5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V0aHJlYWQuYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhy
ZWFkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfZXh0ZW5kLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZmlyc3RwYXNzLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZnJhbWVf
c2NhbGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9qb2JfcXVldWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tYmdyYXBoLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWNv
bXAuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9tY29tcC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X211bHRpX3RocmVhZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X211bHRpX3RocmVhZC5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRl
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfbm9pc2VfZXN0aW1hdGUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9wYXJ0aXRpb25fbW9kZWxzLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja2xwZi5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2tscGYu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9waWNrbW9kZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3BpY2ttb2RlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfcXVhbnRpemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9xdWFudGl6ZS5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJsLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
cmF0ZWN0cmwuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9yZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3JkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZG9wdC5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jlc2l6ZS5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jlc2l6ZS5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Nl
Z21lbnRhdGlvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3NlZ21lbnRhdGlvbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc2tpbl9kZXRlY3Rp
b24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9zcGVlZF9mZWF0dXJlcy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
c3ZjX2xheWVyY29udGV4dC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRleHQuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90ZW1wb3JhbF9maWx0ZXIuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90
b2tlbml6ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X3Rva2VuaXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3RyZWV3cml0ZXIuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfY3hfaWZhY2UuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfY3hfaWZhY2UuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfZHhfaWZhY2UuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfZHhfaWZhY2Uu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfaWZhY2Vf
Y29tbW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5
X2lmYWNlX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4L2ludGVybmFsL3ZweF9jb2RlY19pbnRlcm5hbC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfY29kZWMuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2RlY29kZXIuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2VuY29kZXIuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2ltYWdlLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnA4LmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnA4Y3guaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cDhkeC5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9jb2RlYy5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9kZWNvZGVyLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2VuY29kZXIuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZXh0X3JhdGVjdHJsLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2ZyYW1lX2J1ZmZlci5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbWFnZS5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbnRlZ2Vy
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FkZF9u
b2lzZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9h
dmcuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0
cmVhZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2JpdHJlYWRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9idWZmZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlci5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXJfYnVmZmVyLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlcl9i
dWZmZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
ZGVibG9jay5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9md2RfdHhmbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9md2RfdHhmbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9pbnRyYXByZWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvaW52X3R4Zm0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvbG9vcGZpbHRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wb3N0cHJvYy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wcm9iLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Byb2IuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHNuci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wc25yLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50aXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50aXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NhZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2luX2RldGVjdGlvbi5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2luX2RldGVjdGlvbi5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9zdWJ0cmFjdC5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9zdW1fc3F1YXJl
cy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC90eGZt
X2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC92YXJpYW5jZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC92YXJpYW5jZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC92cHhfY29udm9sdmUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvdnB4X2NvbnZvbHZlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9kc3BfY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9kc3BfcnRjZC5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfZmlsdGVyLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9iaXRkZXB0aF9j
b252ZXJzaW9uX2F2eDIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AveDg2L2JpdGRlcHRoX2NvbnZlcnNpb25fc3NlMi5oIiwKQEAgLTgwNCw0MSArMzQz
LDM0IEBAIGxpYnZweF9zcmNzX3g4Nl82NCA9IFsKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdHJhbnNwb3NlX3NzZTIuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3R4Zm1fY29tbW9uX3NzZTIuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9tZW0vaW5jbHVkZS92
cHhfbWVtX2ludHJubC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X21lbS92cHhfbWVtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfbWVtL3ZweF9tZW0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9wb3J0cy9hcm0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9wb3J0cy9iaXRvcHMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9wb3J0cy9jb21waWxlcl9hdHRyaWJ1dGVzLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvZW1taW50cmluX2NvbXBhdC5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21lbS5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21lbV9vcHMuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9tZW1fb3Bz
X2FsaWduZWQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9w
b3J0cy9taXBzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
cG9ydHMvbXN2Yy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X3BvcnRzL3N0YXRpY19hc3NlcnQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9wb3J0cy9zeXN0ZW1fc3RhdGUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfb25jZS5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3ZweF90aW1lci5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3g4Ni5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL2dlbmVyaWMvZ2VuX3NjYWxlcnMu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5l
cmljL3ZweF9zY2FsZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X3NjYWxlL2dlbmVyaWMveXYxMmNvbmZpZy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL2dlbmVyaWMveXYxMmV4dGVuZC5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL3ZweF9zY2FsZS5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL3ZweF9zY2FsZV9y
dGNkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUv
eXYxMmNvbmZpZy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X3V0aWwvZW5kaWFuX2lubC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3V0aWwvdnB4X2F0b21pY3MuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF91dGlsL3ZweF90aHJlYWQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF90aHJlYWQuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF90aW1lc3RhbXAuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF93cml0ZV95dXZfZnJh
bWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3Zw
eF93cml0ZV95dXZfZnJhbWUuaCIsCiBdCi1saWJ2cHhfc3Jjc194ODZfNjRfYXNzZW1ibHkgPSBb
CitsaWJ2cHhfc3Jjc194ODZfYXNzZW1ibHkgPSBbCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2RlcXVhbnRpemVfbW14LmFzbSIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2lkY3RsbG1fbW14
LmFzbSIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
eDg2L2lkY3RsbG1fc3NlMi5hc20iLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3g4Ni9pd2Fsc2hfc3NlMi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9sb29wZmlsdGVyX2Jsb2NrX3NzZTJf
eDg2XzY0LmFzbSIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24veDg2L2xvb3BmaWx0ZXJfc3NlMi5hc20iLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9tZnFlX3NzZTIuYXNtIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvcmVjb25fbW14LmFzbSIs
CkBAIC04NTQsMTEgKzM4Niw4IEBAIGxpYnZweF9zcmNzX3g4Nl82NF9hc3NlbWJseSA9IFsKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi94ODYvdnA5X21m
cWVfc3NlMi5hc20iLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci94ODYvdnA5X2RjdF9zc2UyLmFzbSIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3g4Ni92cDlfZXJyb3Jfc3NlMi5hc20iLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci94ODYvdnA5X3F1YW50
aXplX3Nzc2UzX3g4Nl82NC5hc20iLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3g4Ni9hZGRfbm9pc2Vfc3NlMi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9hdmdfc3NzZTNfeDg2XzY0LmFzbSIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2RlYmxvY2tf
c3NlMi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3g4Ni9md2RfdHhmbV9zc3NlM194ODZfNjQuYXNtIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX2ludHJhcHJlZF9zc2UyLmFzbSIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9z
YWQ0ZF9zc2UyLmFzbSIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AveDg2L2hpZ2hiZF9zYWRfc3NlMi5hc20iLApAQCAtODcyLDcgKzQwMSw2IEBAIGxpYnZw
eF9zcmNzX3g4Nl82NF9hc3NlbWJseSA9IFsKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC94ODYvc2FkX3NzZTMuYXNtIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvc2FkX3NzZTQuYXNtIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvc2FkX3Nzc2UzLmFzbSIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3NzaW1fb3B0
X3g4Nl82NC5hc20iLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3g4Ni9zdWJwZWxfdmFyaWFuY2Vfc3NlMi5hc20iLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zdWJ0cmFjdF9zc2UyLmFzbSIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9jb252b2x2ZV9j
b3B5X3NzZTIuYXNtIiwKQEAgLTg4MiwxMiArNDEwLDEyIEBAIGxpYnZweF9zcmNzX3g4Nl82NF9h
c3NlbWJseSA9IFsKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC94ODYvdnB4X3N1YnBpeGVsXzh0X3Nzc2UzLmFzbSIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9zdWJwaXhlbF9iaWxpbmVhcl9zc2UyLmFz
bSIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3Zw
eF9zdWJwaXhlbF9iaWxpbmVhcl9zc3NlMy5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfcG9ydHMvZW1tc19tbXguYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2Zsb2F0X2NvbnRyb2xfd29yZC5hc20iLAog
XQotbGlidnB4X3NyY3NfeDg2XzY0X21teCA9Ci0gICAgWyAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9pZGN0X2Jsa19tbXguYyIgXQotbGlidnB4X3Ny
Y3NfeDg2XzY0X3NzZTIgPSBbCitsaWJ2cHhfc3Jjc194ODZfbW14ID0gWworICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9pZGN0X2Jsa19tbXguYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9lbW1zX21t
eC5jIiwKK10KK2xpYnZweF9zcmNzX3g4Nl9zc2UyID0gWwogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9iaWxpbmVhcl9maWx0ZXJfc3NlMi5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvaWRj
dF9ibGtfc3NlMi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIveDg2L2Rlbm9pc2luZ19zc2UyLmMiLApAQCAtOTE3LDggKzQ0NSw4IEBAIGxpYnZw
eF9zcmNzX3g4Nl82NF9zc2UyID0gWwogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3g4Ni92YXJpYW5jZV9zc2UyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92cHhfc3VicGl4ZWxfNHRfaW50cmluX3NzZTIu
YyIsCiBdCi1saWJ2cHhfc3Jjc194ODZfNjRfc3NlMyA9IFtdCi1saWJ2cHhfc3Jjc194ODZfNjRf
c3NzZTMgPSBbCitsaWJ2cHhfc3Jjc194ODZfc3NlMyA9IFtdCitsaWJ2cHhfc3Jjc194ODZfc3Nz
ZTMgPSBbCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L3g4Ni92cDhfcXVhbnRpemVfc3NzZTMuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3g4Ni92cDlfZnJhbWVfc2NhbGVfc3NzZTMuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9pbnRy
YXByZWRfaW50cmluX3Nzc2UzLmMiLApAQCAtOTI2LDcgKzQ1NCw3IEBAIGxpYnZweF9zcmNzX3g4
Nl82NF9zc3NlMyA9IFsKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC94ODYvcXVhbnRpemVfc3NzZTMuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9zdWJwaXhlbF84dF9pbnRyaW5fc3NzZTMuYyIsCiBd
Ci1saWJ2cHhfc3Jjc194ODZfNjRfc3NlNF8xID0gWworbGlidnB4X3NyY3NfeDg2X3NzZTRfMSA9
IFsKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2
L3F1YW50aXplX3NzZTQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24veDg2L3ZwOV9oaWdoYmRfaWh0MTZ4MTZfYWRkX3NzZTQuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24veDg2L3ZwOV9oaWdoYmRf
aWh0NHg0X2FkZF9zc2U0LmMiLApAQCAtOTM2LDExICs0NjQsMTEgQEAgbGlidnB4X3NyY3NfeDg2
XzY0X3NzZTRfMSA9IFsKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC94ODYvaGlnaGJkX2lkY3Q0eDRfYWRkX3NzZTQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9pZGN0OHg4X2FkZF9zc2U0LmMi
LAogXQotbGlidnB4X3NyY3NfeDg2XzY0X2F2eCA9IFsKK2xpYnZweF9zcmNzX3g4Nl9hdnggPSBb
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3g4Ni92
cDlfZGlhbW9uZF9zZWFyY2hfc2FkX2F2eC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvcXVhbnRpemVfYXZ4LmMiLAogXQotbGlidnB4X3NyY3Nf
eDg2XzY0X2F2eDIgPSBbCitsaWJ2cHhfc3Jjc194ODZfYXZ4MiA9IFsKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIveDg2L3ZwOV9lcnJvcl9hdngyLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci94ODYv
dnA5X3F1YW50aXplX2F2eDIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AveDg2L2F2Z19pbnRyaW5fYXZ4Mi5jIiwKQEAgLTk1Miw2NDUgKzQ4MCwyNzA0
IEBAIGxpYnZweF9zcmNzX3g4Nl82NF9hdngyID0gWwogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92YXJpYW5jZV9hdngyLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92cHhfc3VicGl4ZWxfOHRfaW50
cmluX2F2eDIuYyIsCiBdCi1saWJ2cHhfc3Jjc194ODZfNjRfYXZ4NTEyID0gW10KLWxpYnZweF9z
cmNzX2FybSA9IFsKK2xpYnZweF9zcmNzX3g4Nl9hdng1MTIgPSBbXQorbGlidnB4X3NyY3NfeDg2
XzY0ID0gWwogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2FsbG9jY29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2FsbG9jY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2Jsb2NrZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vY29lZnVwZGF0ZXByb2JzLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2NvbW1vbi5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9kZWZhdWx0X2NvZWZf
cHJvYnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vZGVxdWFudGl6ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9lbnRyb3B5LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL2VudHJvcHkuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW1vZGUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW1vZGUuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW12LmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHltdi5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9leHRl
bmQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
ZXh0ZW5kLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2ZpbHRlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9maWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vZmluZG5lYXJtdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2dlbmVyaWMvc3lzdGVtZGVwZW5kZW50LmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2hlYWRlci5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pZGN0
X2Jsay5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9pZGN0bGxtLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2ludnRyYW5zLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2xvb3BmaWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vbG9vcGZpbHRlcl9maWx0ZXJzLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21icGl0Y2guYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWZxZS5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tb2RlY29udC5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tb2RlY29u
dC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9t
di5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9v
bnl4LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L29ueXhjX2ludC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9vbnl4ZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9wb3N0cHJvYy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9wb3N0cHJvYy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9wcGZsYWdzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9xdWFudF9jb21tb24uaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRl
ci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9y
ZWNvbmludGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL3JlY29uaW50cmEuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhNHg0LmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcnRjZC5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zZXR1cGludHJh
cmVjb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vc2V0dXBpbnRyYXJlY29uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3N3YXB5djEyYnVmZmVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3N3YXB5djEyYnVmZmVyLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3N5c3RlbWRlcGVuZGVudC5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90aHJl
YWRpbmcuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vdHJlZWNvZGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL3RyZWVjb2Rlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi92cDhfZW50cm9weW1vZGVkYXRhLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9sb29wZmlsdGVyLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9za2luX2Rl
dGVjdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi92cDhfc2tpbl9kZXRlY3Rpb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2xvb3BmaWx0ZXJfeDg2LmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni92cDhfYXNtX3N0dWJzLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kYm9v
bGh1ZmYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNv
ZGVyL2Rib29saHVmZi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2RlY29kZXIvZGVjb2RlZnJhbWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVtdi5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlcnRocmVhZGluZy5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGV0b2tl
bml6ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29k
ZXIvZGV0b2tlbml6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2RlY29kZXIvb255eGRfaWYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9kZWNvZGVyL29ueXhkX2ludC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvdGhyZWFkaW5nLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci90cmVlcmVhZGVyLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0uYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2JpdHN0
cmVhbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvYmxvY2suaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL2Jvb2xodWZmLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9ib29saHVmZi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvY29weV9jLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RjdF92YWx1ZV9jb3N0LmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3RfdmFsdWVfdG9rZW5z
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9k
ZWZhdWx0Y29lZmNvdW50cy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvZGVub2lzaW5nLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWZyYW1lLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVmcmFtZS5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2Rl
aW50cmEuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL2VuY29kZWludHJhLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9lbmNvZGVtYi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbWIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtdi5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZXRocmVhZGluZy5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZXRocmVh
ZGluZy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvZmlyc3RwYXNzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9sb29rYWhlYWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21jb21wLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tb2RlY29zdHMuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVjb3N0cy5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbXJfZGlz
c2ltLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9tcl9kaXNzaW0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL29ueXhfaWYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL29ueXhfaW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNraW50ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tpbnRlci5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xwZi5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xwZi5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcXVhbnRp
emUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L3JhdGVjdHJsLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9yYXRlY3RybC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvcmRvcHQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL3Jkb3B0LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9zZWdtZW50YXRpb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3NlZ21lbnRhdGlvbi5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdG9rZW5pemUuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Rva2Vu
aXplLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci90cmVld3JpdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci90cmVld3JpdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci92cDhfcXVhbnRpemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC92cDhfY3hfaWZhY2UuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC92cDhfZHhfaWZhY2UuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2FsbG9jY29tbW9uLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9hbGxv
Y2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfYmxvY2tkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9ibG9ja2QuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uX2RhdGEuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbl9kYXRh
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9lbnRyb3B5LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9lbnRyb3B5LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltdi5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
ZW50cm9weW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9lbnVtcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfZmlsdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9maWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1
ZmZlcnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X2lkY3QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X2lkY3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21mcWUuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21mcWUuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X212
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9tdnJlZl9jb21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X212cmVmX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfb255eGNfaW50LmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0cHJvYy5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcG9zdHBy
b2MuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X3BwZmxhZ3MuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X3ByZWRfY29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9uLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9xdWFu
dF9jb21tb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X3JlY29uaW50ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X3J0Y2QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X3NjYWxlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9zY2FsZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
dGhyZWFkX2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfdGhyZWFkX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9jb21tb24uYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RpbGVfY29tbW9uLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlf
ZGVjb2RlZnJhbWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9kZWNvZGVyL3ZwOV9kZWNvZGVmcmFtZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlbXYuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVy
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92
cDlfZGVjb2Rlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2RlY29kZXIvdnA5X2RldG9rZW5pemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZXRva2VuaXplLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1YmV4cC5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RzdWJleHAu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3Zw
OV9qb2JfcXVldWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9kZWNvZGVyL3ZwOV9qb2JfcXVldWUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9hcV9jeWNsaWNyZWZyZXNoLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVm
cmVzaC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2JpdHN0cmVhbS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2JpdHN0cmVhbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Jsb2NrLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29u
dGV4dF90cmVlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfY29zdC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2Nvc3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kY3QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Rlbm9pc2VyLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5j
b2RlZnJhbWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9lbmNvZGVmcmFtZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW1iLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2VuY29kZW12LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfZW5jb2Rlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXRocmVhZC5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dF9y
YXRlY3RybC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2V4dGVuZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2V4dGVuZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZpcnN0cGFzcy5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZyYW1lX3NjYWxlLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfam9i
X3F1ZXVlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfbG9va2FoZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfbG9va2FoZWFkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWJncmFwaC5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21jb21wLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWNvbXAu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9tdWx0aV90aHJlYWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9tdWx0aV90aHJlYWQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2Vz
dGltYXRlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfcGFydGl0aW9uX21vZGVscy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2tscGYuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbHBmLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja21vZGUu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9waWNrbW9kZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3F1YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfcXVhbnRpemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJsLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
cmQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9yZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X3Jkb3B0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfcmRvcHQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24u
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9zZWdtZW50YXRpb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9za2luX2RldGVjdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRf
ZmVhdHVyZXMuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9zcGVlZF9mZWF0dXJlcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNv
bnRleHQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9zdmNfbGF5ZXJjb250ZXh0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdGVtcG9yYWxfZmlsdGVyLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdG9rZW5pemUuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90
b2tlbml6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X3RyZWV3cml0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90cmVld3JpdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1vbi5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21t
b24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9pbnRlcm5h
bC92cHhfY29kZWNfaW50ZXJuYWwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweC9zcmMvdnB4X2NvZGVjLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHgvc3JjL3ZweF9kZWNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9lbmNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9pbWFnZS5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOC5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOGN4LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHgvdnA4ZHguaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweC92cHhfY29kZWMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweC92cHhfZGVjb2Rlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9lbmNvZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2ZyYW1lX2J1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbWFnZS5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbnRlZ2VyLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FkZF9ub2lzZS5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hdmcuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlci5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVm
ZmVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Jp
dHJlYWRlcl9idWZmZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYml0d3JpdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2JpdHdyaXRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXJfYnVmZmVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlcl9idWZmZXIuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvZGVibG9jay5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnRyYXByZWQu
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW52X3R4
Zm0uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW52
X3R4Zm0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
bG9vcGZpbHRlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9wb3N0cHJvYy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9wcm9iLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3Byb2IuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvcHNuci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9wc25yLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3F1YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3F1YW50aXplLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3NhZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9za2luX2RldGVjdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9za2luX2RldGVjdGlvbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9zdWJ0cmFjdC5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9zdW1fc3F1YXJlcy5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC90eGZtX2NvbW1vbi5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9s
dmUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4
X2NvbnZvbHZlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3ZweF9kc3BfY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3ZweF9kc3BfcnRjZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfZmlsdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfbWVtL2luY2x1ZGUvdnB4X21lbV9pbnRybmwuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9tZW0vdnB4X21lbS5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS92cHhfbWVtLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYXJtLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYXJtX2NwdWRl
dGVjdC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRz
L2JpdG9wcy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3Bv
cnRzL2NvbXBpbGVyX2F0dHJpYnV0ZXMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9wb3J0cy9lbW1pbnRyaW5fY29tcGF0LmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbWVtLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbWVtX29wcy5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21lbV9vcHNfYWxpZ25lZC5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21zdmMuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9zdGF0aWNf
YXNzZXJ0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9y
dHMvc3lzdGVtX3N0YXRlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfcG9ydHMvdnB4X29uY2UuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9wb3J0cy92cHhfdGltZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL2dlbl9zY2FsZXJzLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy92cHhfc2NhbGUu
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5l
cmljL3l2MTJjb25maWcuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJleHRlbmQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhfc2NhbGUuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhfc2NhbGVfcnRjZC5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL3l2MTJjb25maWcuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL2VuZGlhbl9p
bmwuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3Zw
eF9hdG9taWNzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
dXRpbC92cHhfdGhyZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfdXRpbC92cHhfdGhyZWFkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfdXRpbC92cHhfdGltZXN0YW1wLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfd3JpdGVfeXV2X2ZyYW1lLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfd3JpdGVfeXV2X2Zy
YW1lLmgiLAogXQotbGlidnB4X3NyY3NfYXJtX2Fzc2VtYmx5ID0gW10KLWxpYnZweF9zcmNzX2Fy
bV9uZW9uID0gWwotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2FsbG9jY29tbW9uLmMiLAorbGlidnB4X3NyY3NfeDg2XzY0X2hlYWRlcnMgPSBbCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYWxsb2Njb21tb24u
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJt
L2xvb3BmaWx0ZXJfYXJtLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2FybS9sb29wZmlsdGVyX2FybS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9iaWxpbmVhcnByZWRpY3RfbmVv
bi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9h
cm0vbmVvbi9jb3B5bWVtX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vZGNfb25seV9pZGN0X2FkZF9uZW9uLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2Rl
cXVhbnRfaWRjdF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2FybS9uZW9uL2RlcXVhbnRpemViX25lb24uYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vaWRjdF9ibGtfbmVv
bi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9h
cm0vbmVvbi9pd2Fsc2hfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9sb29wZmlsdGVyc2ltcGxlaG9yaXpvbnRhbGVkZ2Vf
bmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9hcm0vbmVvbi9sb29wZmlsdGVyc2ltcGxldmVydGljYWxlZGdlX25lb24uYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vbWJsb29w
ZmlsdGVyX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vYXJtL25lb24vc2hvcnRpZGN0NHg0bGxtX25lb24uYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vc2l4dGFwcHJlZGlj
dF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2FybS9uZW9uL3ZwOF9sb29wZmlsdGVyX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYmxvY2tkLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Jsb2NrZC5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9jb2VmdXBkYXRlcHJvYnMuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vY29tbW9u
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Rl
ZmF1bHRfY29lZl9wcm9icy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9kZXF1YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHkuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weS5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5
bXYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
ZW50cm9weW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2V4dGVuZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9leHRlbmQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vZmlsdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2ZpbHRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbmRuZWFybXYuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZ2VuZXJpYy9zeXN0ZW1kZXBl
bmRlbnQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vaGVhZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2lkY3RfYmxrLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2lkY3RsbG0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vaW52dHJhbnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbG9vcGZpbHRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29wZmlsdGVyX2ZpbHRlcnMuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWJwaXRjaC5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tZnFl
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21v
ZGVjb250LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL21vZGVjb250LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL212LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL29ueXguaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vb255eGNfaW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL29ueXhkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3BwZmxhZ3MuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcXVhbnRfY29tbW9uLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2Nv
bW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9yZWNvbmludGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL3JlY29uaW50ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYTR4
NC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9y
dGNkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L3NldHVwaW50cmFyZWNvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9zZXR1cGludHJhcmVjb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZmZXIuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZmZXIuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3lzdGVt
ZGVwZW5kZW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL3RocmVhZGluZy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi90cmVlY29kZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vdHJlZWNvZGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9lbnRyb3B5bW9kZWRhdGEuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X2xvb3BmaWx0
ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
dnA4X3NraW5fZGV0ZWN0aW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZmLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kYm9vbGh1ZmYuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZWZy
YW1lLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rl
ci9kZWNvZGVtdi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2RlY29kZXIvZGVjb2RlbXYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9kZWNvZGVyL2RlY29kZXJ0aHJlYWRpbmcuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RldG9rZW5pemUuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RldG9rZW5pemUuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL29ueXhkX2lm
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9v
bnl4ZF9pbnQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9k
ZWNvZGVyL3RocmVhZGluZy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2RlY29kZXIvdHJlZXJlYWRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYXJtL25lb24vZGVub2lzaW5nX25lb24uYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9uL2Zh
c3RxdWFudGl6ZWJfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvYXJtL25lb24vc2hvcnRmZGN0X25lb24uYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9uL3ZwOF9zaG9ydHdh
bHNoNHg0X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL2JpdHN0cmVhbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvYml0c3RyZWFtLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ibG9jay5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYm9vbGh1ZmYuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jvb2xodWZmLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9jb3B5X2MuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RjdC5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGN0X3Zh
bHVlX2Nvc3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL2RjdF92YWx1ZV90b2tlbnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RlZmF1bHRjb2VmY291bnRzLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rlbm9pc2luZy5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5j
b2RlZnJhbWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL2VuY29kZWZyYW1lLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9lbmNvZGVpbnRyYS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlaW50cmEuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW1iLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtYi5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2Rl
bXYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L2VuY29kZW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9ldGhyZWFkaW5nLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9ldGhyZWFkaW5nLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9maXJzdHBhc3MuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbG9va2FoZWFkLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tY29tcC5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNv
bXAuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L21vZGVjb3N0cy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvbW9kZWNvc3RzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9tcl9kaXNzaW0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21yX2Rpc3NpbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pZi5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pbnQuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tpbnRlci5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlj
a2ludGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9waWNrbHBmLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9waWNrbHBmLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9xdWFudGl6ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yZG9wdC5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmRvcHQuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3NlZ21lbnRhdGlv
bi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
c2VnbWVudGF0aW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci90b2tlbml6ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvdG9rZW5pemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3ZwOF9xdWFudGl6ZS5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3ZwOF9jeF9pZmFj
ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfYWxsb2Njb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X2Jsb2NrZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb25fZGF0YS5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weS5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50
cm9weW1vZGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X2VudHJvcHltdi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfZW51bXMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZnJhbWVfYnVmZmVycy5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfaWRjdC5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
bG9vcGZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfbWZxZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfbXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X212cmVmX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfb255eGNfaW50LmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0cHJvYy5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
cHBmbGFncy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfcHJlZF9jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X3F1YW50X2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRlci5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRy
YS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfc2NhbGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X3NjYW4uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X3NlZ19jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RocmVhZF9jb21tb24uaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RpbGVfY29tbW9uLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlf
ZGVjb2RlZnJhbWUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9kZWNvZGVyL3ZwOV9kZWNvZGVtdi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZXRva2VuaXplLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1YmV4cC5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5
X2pvYl9xdWV1ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2FxX2N5Y2xpY3JlZnJlc2guaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9iaXRzdHJlYW0uaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ibG9jay5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2NvbnRl
eHRfdHJlZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2Nvc3QuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZWZyYW1lLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNv
ZGVtdi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2VuY29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZmlyc3Rw
YXNzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfam9iX3F1ZXVlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfbG9va2FoZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWJncmFwaC5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21jb21wLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbXVsdGlfdGhy
ZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfbm9pc2VfZXN0aW1hdGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9wYXJ0aXRpb25fbW9kZWxzLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja2xwZi5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2tt
b2RlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfcXVhbnRpemUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50
YXRpb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9za2luX2RldGVjdGlvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ZjX2xh
eWVyY29udGV4dC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3RlbXBvcmFsX2ZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Rva2VuaXplLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9pZmFj
ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFj
ZV9jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9p
bnRlcm5hbC92cHhfY29kZWNfaW50ZXJuYWwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweC92cDguaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweC92cDhjeC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4L3ZwOGR4LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHgvdnB4X2NvZGVjLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHgvdnB4X2RlY29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweC92cHhfZW5jb2Rlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4L3ZweF9leHRfcmF0ZWN0cmwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweC92cHhfZnJhbWVfYnVmZmVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2ltYWdlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2ludGVnZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9idWZmZXIuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlcl9i
dWZmZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
ZndkX3R4Zm0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvaW52X3R4Zm0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvcG9zdHByb2MuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvcHJvYi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9wc25yLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3F1YW50aXplLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3NraW5fZGV0ZWN0aW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3R4Zm1fY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZhcmlhbmNlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9jb252b2x2ZS5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfZHNwX2NvbW1vbi5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfZmlsdGVyLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9iaXRk
ZXB0aF9jb252ZXJzaW9uX2F2eDIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AveDg2L2JpdGRlcHRoX2NvbnZlcnNpb25fc3NlMi5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvY29udm9sdmUuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2NvbnZvbHZl
X2F2eDIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
eDg2L2NvbnZvbHZlX3NzZTIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AveDg2L2NvbnZvbHZlX3Nzc2UzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9md2RfZGN0MzJ4MzJfaW1wbF9hdngyLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9md2RfZGN0
MzJ4MzJfaW1wbF9zc2UyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3g4Ni9md2RfdHhmbV9pbXBsX3NzZTIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2Z3ZF90eGZtX3NzZTIuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9pbnZfdHhm
bV9zc2UyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3g4Ni9oaWdoYmRfaW52X3R4Zm1fc3NlNC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaW52X3R4Zm1fc3NlMi5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaW52X3R4Zm1fc3NzZTMuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L21lbV9zc2Uy
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9x
dWFudGl6ZV9zc2UyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3g4Ni9xdWFudGl6ZV9zc3NlMy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdHJhbnNwb3NlX3NzZTIuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3R4Zm1fY29tbW9uX3NzZTIuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9tZW0vaW5jbHVkZS92
cHhfbWVtX2ludHJubC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X21lbS92cHhfbWVtLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfcG9ydHMvYXJtLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfcG9ydHMvYml0b3BzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfcG9ydHMvY29tcGlsZXJfYXR0cmlidXRlcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2VtbWludHJpbl9jb21wYXQuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9tZW0uaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9tZW1fb3BzLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbWVtX29wc19h
bGlnbmVkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9y
dHMvbWlwcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3Bv
cnRzL21zdmMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9w
b3J0cy9zdGF0aWNfYXNzZXJ0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfcG9ydHMvc3lzdGVtX3N0YXRlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X29uY2UuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfdGltZXIuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy94ODYuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhfc2NhbGUuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS95djEyY29uZmlnLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC9lbmRpYW5faW5s
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhf
YXRvbWljcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0
aWwvdnB4X3RocmVhZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X3V0aWwvdnB4X3RpbWVzdGFtcC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3dyaXRlX3l1dl9mcmFtZS5oIiwKK10KK2xpYnZweF9zcmNz
X3g4Nl82NF9hc3NlbWJseSA9IFsKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi94ODYvZGVxdWFudGl6ZV9tbXguYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvaWRjdGxsbV9tbXguYXNtIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvaWRjdGxs
bV9zc2UyLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24veDg2L2l3YWxzaF9zc2UyLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2xvb3BmaWx0ZXJfYmxvY2tfc3NlMl94ODZfNjQuYXNt
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYv
bG9vcGZpbHRlcl9zc2UyLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24veDg2L21mcWVfc3NlMi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9yZWNvbl9tbXguYXNtIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvcmVjb25fc3NlMi5h
c20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4
Ni9zdWJwaXhlbF9tbXguYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi94ODYvc3VicGl4ZWxfc3NlMi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9zdWJwaXhlbF9zc3NlMy5hc20iLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci94ODYvYmxv
Y2tfZXJyb3Jfc3NlMi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci94ODYvY29weV9zc2UyLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9jb3B5X3NzZTMuYXNtIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2L2RjdF9zc2UyLmFz
bSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4
Ni9md2Fsc2hfc3NlMi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3g4Ni92cDlfbWZxZV9zc2UyLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3g4Ni92cDlfZGN0X3NzZTIuYXNtIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIveDg2L3ZwOV9l
cnJvcl9zc2UyLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3g4Ni92cDlfcXVhbnRpemVfc3NzZTNfeDg2XzY0LmFzbSIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2FkZF9ub2lzZV9zc2UyLmFz
bSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2F2
Z19zc3NlM194ODZfNjQuYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC94ODYvZGVibG9ja19zc2UyLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2Z3ZF90eGZtX3Nzc2UzX3g4Nl82NC5hc20iLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9oaWdoYmRf
aW50cmFwcmVkX3NzZTIuYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC94ODYvaGlnaGJkX3NhZDRkX3NzZTIuYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX3NhZF9zc2UyLmFzbSIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9z
dWJwZWxfdmFyaWFuY2VfaW1wbF9zc2UyLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF92YXJpYW5jZV9pbXBsX3NzZTIuYXNtIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaW50cmFw
cmVkX3NzZTIuYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC94ODYvaW50cmFwcmVkX3Nzc2UzLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2ludl93aHRfc3NlMi5hc20iLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zYWQ0ZF9zc2UyLmFzbSIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3NhZF9zc2Uy
LmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2
L3NhZF9zc2UzLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AveDg2L3NhZF9zc2U0LmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AveDg2L3NhZF9zc3NlMy5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zc2ltX29wdF94ODZfNjQuYXNtIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvc3VicGVsX3Zhcmlh
bmNlX3NzZTIuYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC94ODYvc3VidHJhY3Rfc3NlMi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92cHhfY29udm9sdmVfY29weV9zc2UyLmFzbSIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9oaWdoX3N1
YnBpeGVsXzh0X3NzZTIuYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC94ODYvdnB4X2hpZ2hfc3VicGl4ZWxfYmlsaW5lYXJfc3NlMi5hc20iLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92cHhfc3VicGl4
ZWxfOHRfc3NlMi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3g4Ni92cHhfc3VicGl4ZWxfOHRfc3NzZTMuYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X3N1YnBpeGVsX2JpbGluZWFyX3Nz
ZTIuYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94
ODYvdnB4X3N1YnBpeGVsX2JpbGluZWFyX3Nzc2UzLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9lbW1zX21teC5hc20iLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvZmxvYXRfY29udHJvbF93b3JkLmFz
bSIsCitdCitsaWJ2cHhfc3Jjc194ODZfNjRfbW14ID0KKyAgICBbICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2lkY3RfYmxrX21teC5jIiBdCitsaWJ2
cHhfc3Jjc194ODZfNjRfc3NlMiA9IFsKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi94ODYvYmlsaW5lYXJfZmlsdGVyX3NzZTIuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2lkY3RfYmxrX3NzZTIu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4
Ni9kZW5vaXNpbmdfc3NlMi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIveDg2L3ZwOF9lbmNfc3R1YnNfc3NlMi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2L3ZwOF9xdWFudGl6ZV9zc2Uy
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3g4
Ni92cDlfaWRjdF9pbnRyaW5fc3NlMi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIveDg2L3ZwOV9kY3RfaW50cmluX3NzZTIuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3g4Ni92cDlfZGVub2lz
ZXJfc3NlMi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIveDg2L3ZwOV9oaWdoYmRfYmxvY2tfZXJyb3JfaW50cmluX3NzZTIuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3g4Ni92cDlfcXVhbnRp
emVfc3NlMi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC94ODYvYXZnX2ludHJpbl9zc2UyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL3g4Ni9hdmdfcHJlZF9zc2UyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9md2RfdHhmbV9zc2UyLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9oaWdoYmRfaWRjdDE2
eDE2X2FkZF9zc2UyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3g4Ni9oaWdoYmRfaWRjdDMyeDMyX2FkZF9zc2UyLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9oaWdoYmRfaWRjdDR4NF9hZGRfc3Nl
Mi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYv
aGlnaGJkX2lkY3Q4eDhfYWRkX3NzZTIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9pbnRyYXByZWRfaW50cmluX3NzZTIuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9s
b29wZmlsdGVyX3NzZTIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AveDg2L2hpZ2hiZF9xdWFudGl6ZV9pbnRyaW5fc3NlMi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX3ZhcmlhbmNlX3Nz
ZTIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2
L2ludl90eGZtX3NzZTIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AveDg2L2xvb3BmaWx0ZXJfc3NlMi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvcG9zdF9wcm9jX3NzZTIuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3F1YW50aXplX3NzZTIuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3N1bV9z
cXVhcmVzX3NzZTIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AveDg2L3ZhcmlhbmNlX3NzZTIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9zdWJwaXhlbF80dF9pbnRyaW5fc3NlMi5jIiwKK10K
K2xpYnZweF9zcmNzX3g4Nl82NF9zc2UzID0gW10KK2xpYnZweF9zcmNzX3g4Nl82NF9zc3NlMyA9
IFsKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2
L3ZwOF9xdWFudGl6ZV9zc3NlMy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIveDg2L3ZwOV9mcmFtZV9zY2FsZV9zc3NlMy5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX2ludHJhcHJl
ZF9pbnRyaW5fc3NzZTMuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AveDg2L2ludl90eGZtX3Nzc2UzLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9xdWFudGl6ZV9zc3NlMy5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X3N1YnBpeGVsXzh0X2lu
dHJpbl9zc3NlMy5jIiwKK10KK2xpYnZweF9zcmNzX3g4Nl82NF9zc2U0XzEgPSBbCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9xdWFudGl6ZV9z
c2U0LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3g4Ni92cDlfaGlnaGJkX2lodDE2eDE2X2FkZF9zc2U0LmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3g4Ni92cDlfaGlnaGJkX2lodDR4NF9hZGRf
c3NlNC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi94ODYvdnA5X2hpZ2hiZF9paHQ4eDhfYWRkX3NzZTQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9pZGN0MTZ4MTZfYWRkX3NzZTQu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hp
Z2hiZF9pZGN0MzJ4MzJfYWRkX3NzZTQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9pZGN0NHg0X2FkZF9zc2U0LmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9oaWdoYmRfaWRjdDh4
OF9hZGRfc3NlNC5jIiwKK10KK2xpYnZweF9zcmNzX3g4Nl82NF9hdnggPSBbCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3g4Ni92cDlfZGlhbW9uZF9z
ZWFyY2hfc2FkX2F2eC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC94ODYvcXVhbnRpemVfYXZ4LmMiLAorXQorbGlidnB4X3NyY3NfeDg2XzY0X2F2eDIg
PSBbCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3g4
Ni92cDlfZXJyb3JfYXZ4Mi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIveDg2L3ZwOV9xdWFudGl6ZV9hdngyLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9hdmdfaW50cmluX2F2eDIuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2Z3ZF90eGZt
X2F2eDIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
eDg2L2hpZ2hiZF9jb252b2x2ZV9hdngyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9sb29wZmlsdGVyX2F2eDIuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3NhZDRkX2F2eDIuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3NhZF9hdngyLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92YXJp
YW5jZV9hdngyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3g4Ni92cHhfc3VicGl4ZWxfOHRfaW50cmluX2F2eDIuYyIsCitdCitsaWJ2cHhfc3Jjc194
ODZfNjRfYXZ4NTEyID0gW10KK2xpYnZweF9zcmNzX2FybSA9IFsKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hbGxvY2NvbW1vbi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZGVxdWFudGl6ZS5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRy
b3B5LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2VudHJvcHltb2RlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2VudHJvcHltdi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9leHRlbmQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vZmlsdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbmRuZWFybXYuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZ2VuZXJpYy9zeXN0ZW1kZXBlbmRlbnQu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaWRj
dF9ibGsuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vaWRjdGxsbS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9sb29wZmlsdGVyX2ZpbHRlcnMuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWJwaXRjaC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tZnFlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21vZGVjb250LmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2NvbW1vbi5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNv
bmludGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL3JlY29uaW50cmEuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vcmVjb25pbnRyYTR4NC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ydGNkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3NldHVwaW50cmFyZWNvbi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zd2FweXYxMmJ1ZmZlci5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90cmVlY29k
ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
dnA4X2xvb3BmaWx0ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vdnA4X3NraW5fZGV0ZWN0aW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kYm9vbGh1ZmYuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZWZyYW1lLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVtdi5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGV0
b2tlbml6ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Rl
Y29kZXIvb255eGRfaWYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9kZWNvZGVyL3RocmVhZGluZy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvYml0c3RyZWFtLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ib29saHVmZi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvY29weV9jLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3QuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rlbm9pc2luZy5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2Rl
ZnJhbWUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL2VuY29kZWludHJhLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9lbmNvZGVtYi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbXYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2V0aHJlYWRpbmcuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVjb3N0
cy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
bXJfZGlzc2ltLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9vbnl4X2lmLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9waWNraW50ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tscGYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yZG9wdC5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvc2VnbWVudGF0aW9uLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci90b2tlbml6
ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
dHJlZXdyaXRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvdnA4X3F1YW50aXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvdnA4X2N4X2lmYWNlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvdnA4X2R4X2lmYWNlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9hbGxvY2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYmxvY2tkLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb25f
ZGF0YS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfZW50cm9weS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltdi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZmlsdGVyLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9mcmFtZV9idWZm
ZXJzLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9pZGN0LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9sb29wZmlsdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9tZnFlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdnJlZl9jb21tb24uYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Bvc3Rwcm9jLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wcmVk
X2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfcXVhbnRfY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludHJhLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9ydGNkLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2Fs
ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfc2Nhbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfc2VnX2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfdGhyZWFkX2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9jb21tb24uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVm
cmFtZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29k
ZXIvdnA5X2RlY29kZW12LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZGVjb2Rlci92cDlfZGVjb2Rlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RldG9rZW5pemUuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kc3ViZXhwLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfam9iX3F1
ZXVlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfYXFfY3ljbGljcmVmcmVzaC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2JpdHN0cmVhbS5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2NvbnRleHRfdHJlZS5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Nvc3Qu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9kY3QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9kZW5vaXNlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZWZyYW1lLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Vu
Y29kZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9ldGhyZWFkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZnJhbWVfc2NhbGUuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9s
b29rYWhlYWQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9tY29tcC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X211bHRpX3RocmVhZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja2xw
Zi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3BpY2ttb2RlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfcXVhbnRpemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JkLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9zZWdtZW50YXRpb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9za2luX2RldGVjdGlvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhw
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfc3ZjX2xheWVyY29udGV4dC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Rva2VuaXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9pZmFjZS5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24u
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2Nv
ZGVjLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3Zw
eF9kZWNvZGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgv
c3JjL3ZweF9lbmNvZGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvc3JjL3ZweF9pbWFnZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9hZGRfbm9pc2UuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvYXZnLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2JpdHJlYWRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlci5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXJfYnVmZmVyLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2RlYmxvY2suYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvZndkX3R4Zm0u
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW50cmFw
cmVkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2lu
dl90eGZtLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2xvb3BmaWx0ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvcHJvYi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9wc25yLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3F1YW50aXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3NhZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9za2luX2RldGVjdGlvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9zdWJ0cmFjdC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9zdW1fc3F1YXJlcy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9ydGNkLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVtL3ZweF9tZW0uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hcm1fY3B1ZGV0ZWN0
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2Vu
ZXJpYy9nZW5fc2NhbGVycy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3NjYWxlL2dlbmVyaWMvdnB4X3NjYWxlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95djEyY29uZmlnLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95djEyZXh0
ZW5kLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUv
dnB4X3NjYWxlX3J0Y2QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF91dGlsL3ZweF90aHJlYWQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF91dGlsL3ZweF93cml0ZV95dXZfZnJhbWUuYyIsCitdCitsaWJ2cHhfc3Jjc19h
cm1faGVhZGVycyA9IFsKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9hbGxvY2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vY29lZnVwZGF0ZXByb2JzLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9kZWZhdWx0X2NvZWZfcHJvYnMu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50
cm9weS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9lbnRyb3B5bW9kZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9lbnRyb3B5bXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vZXh0ZW5kLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2hlYWRlci5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pbnZ0cmFucy5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29wZmlsdGVyLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21vZGVj
b250LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L212LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L29ueXguaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vb255eGNfaW50LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL29ueXhkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3Bvc3Rwcm9jLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3BwZmxhZ3MuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcXVhbnRfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50ZXIuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYS5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmlu
dHJhNHg0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL3NldHVwaW50cmFyZWNvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9zd2FweXYxMmJ1ZmZlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zeXN0ZW1kZXBlbmRlbnQuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdGhyZWFkaW5nLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3RyZWVjb2Rl
ci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92
cDhfZW50cm9weW1vZGVkYXRhLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZmLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVtdi5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlcnRo
cmVhZGluZy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Rl
Y29kZXIvZGV0b2tlbml6ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2RlY29kZXIvb255eGRfaW50LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZGVjb2Rlci90cmVlcmVhZGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0uaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jsb2NrLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ib29saHVmZi5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGN0X3Zh
bHVlX2Nvc3QuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL2RjdF92YWx1ZV90b2tlbnMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RlZmF1bHRjb2VmY291bnRzLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWZyYW1l
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9l
bmNvZGVpbnRyYS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvZW5jb2RlbWIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL2VuY29kZW12LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ldGhyZWFkaW5nLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9maXJzdHBhc3MuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVj
b3N0cy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvbXJfZGlzc2ltLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9vbnl4X2ludC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvcGlja2ludGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNrbHBmLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9xdWFudGl6ZS5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Jkb3B0LmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9zZWdtZW50
YXRpb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL3Rva2VuaXplLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci90cmVld3JpdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9hbGxvY2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYmxvY2tkLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb24uaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1v
bl9kYXRhLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9lbnRyb3B5LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW12LmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnVtcy5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZmlsdGVyLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9m
cmFtZV9idWZmZXJzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9pZGN0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9sb29wZmlsdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tZnFlLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdi5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbXZyZWZfY29tbW9uLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9v
bnl4Y19pbnQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X3Bvc3Rwcm9jLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9wcGZsYWdzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9uLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9y
ZWNvbmludGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9yZWNvbmludHJhLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FsZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGhyZWFkX2Nv
bW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfdGlsZV9jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVmcmFtZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZW12LmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rlci5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2Rl
dG9rZW5pemUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9k
ZWNvZGVyL3ZwOV9kc3ViZXhwLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZGVjb2Rlci92cDlfam9iX3F1ZXVlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVzaC5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2JpdHN0
cmVhbS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2Jsb2NrLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29zdC5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Rlbm9pc2VyLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlZnJh
bWUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9lbmNvZGVtYi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2VuY29kZW12LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2Rlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V0aHJlYWQuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRfcmF0ZWN0
cmwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9leHRlbmQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9maXJzdHBhc3MuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9qb2JfcXVldWUuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tYmdyYXBo
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfbWNvbXAuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9tdWx0aV90aHJlYWQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BhcnRpdGlvbl9tb2Rl
bHMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9waWNrbHBmLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfcGlja21vZGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9xdWFudGl6ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJsLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmQuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZG9w
dC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3Jlc2l6ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3NlZ21lbnRhdGlvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRfZmVhdHVy
ZXMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9zdWJleHAuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9zdmNfbGF5ZXJjb250ZXh0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdGVtcG9yYWxfZmlsdGVyLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdG9rZW5p
emUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV90cmVld3JpdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvdnA5X2N4X2lmYWNlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvdnA5X2R4X2lmYWNlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4L2ludGVybmFsL3ZweF9jb2RlY19pbnRlcm5hbC5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOC5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOGN4LmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnA4ZHguaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfY29kZWMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZGVjb2Rlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9lbmNvZGVyLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2V4dF9yYXRlY3RybC5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9mcmFtZV9idWZmZXIuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfaW1hZ2UuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfaW50ZWdlci5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXIu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVh
ZGVyX2J1ZmZlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9iaXR3cml0ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYml0d3JpdGVyX2J1ZmZlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZfdHhmbS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wb3N0cHJvYy5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wcm9iLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3BzbnIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcXVhbnRpemUuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Avc2tpbl9kZXRlY3Rpb24uaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdHhmbV9jb21tb24uaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdmFyaWFuY2UuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2NvbnZv
bHZlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Zw
eF9kc3BfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3ZweF9maWx0ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9tZW0vaW5jbHVkZS92cHhfbWVtX2ludHJubC5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS92cHhfbWVtLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYXJtLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYml0b3BzLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvY29tcGlsZXJfYXR0cmlidXRlcy5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2VtbWlu
dHJpbl9jb21wYXQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9wb3J0cy9tZW0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9wb3J0cy9tZW1fb3BzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfcG9ydHMvbWVtX29wc19hbGlnbmVkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfcG9ydHMvbWlwcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21zdmMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9zdGF0aWNfYXNzZXJ0LmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvc3lzdGVtX3N0YXRlLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X29uY2UuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfdGlt
ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy94
ODYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92
cHhfc2NhbGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9z
Y2FsZS95djEyY29uZmlnLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfdXRpbC9lbmRpYW5faW5sLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfdXRpbC92cHhfYXRvbWljcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RocmVhZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RpbWVzdGFtcC5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3dyaXRlX3l1dl9mcmFt
ZS5oIiwKK10KK2xpYnZweF9zcmNzX2FybV9hc3NlbWJseSA9IFtdCitsaWJ2cHhfc3Jjc19hcm1f
bmVvbiA9IFsKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9hbGxvY2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9hcm0vbG9vcGZpbHRlcl9hcm0uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vYmlsaW5lYXJwcmVkaWN0X25lb24u
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJt
L25lb24vY29weW1lbV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL2FybS9uZW9uL2RjX29ubHlfaWRjdF9hZGRfbmVvbi5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9kZXF1
YW50X2lkY3RfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9hcm0vbmVvbi9kZXF1YW50aXplYl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2lkY3RfYmxrX25lb24u
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJt
L25lb24vaXdhbHNoX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vYXJtL25lb24vbG9vcGZpbHRlcnNpbXBsZWhvcml6b250YWxlZGdlX25l
b24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
YXJtL25lb24vbG9vcGZpbHRlcnNpbXBsZXZlcnRpY2FsZWRnZV9uZW9uLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL21ibG9vcGZp
bHRlcl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2FybS9uZW9uL3Nob3J0aWRjdDR4NGxsbV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL3NpeHRhcHByZWRpY3Rf
bmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9hcm0vbmVvbi92cDhfbG9vcGZpbHRlcl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Jsb2NrZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9kZXF1YW50aXplLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHkuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW1vZGUu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50
cm9weW12LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2V4dGVuZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9maWx0ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vZmluZG5lYXJtdi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9nZW5lcmljL3N5c3RlbWRlcGVuZGVudC5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pZGN0X2Jsay5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pZGN0bGxtLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2xvb3Bm
aWx0ZXJfZmlsdGVycy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9tYnBpdGNoLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL21mcWUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vbW9kZWNvbnQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcG9zdHByb2MuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcXVhbnRfY29tbW9uLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50ZXIuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRy
YS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9y
ZWNvbmludHJhNHg0LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL3J0Y2QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vc2V0dXBpbnRyYXJlY29uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3N3YXB5djEyYnVmZmVyLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3RyZWVjb2Rlci5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92cDhfbG9vcGZpbHRl
ci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92
cDhfc2tpbl9kZXRlY3Rpb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9kZWNvZGVyL2Rib29saHVmZi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlZnJhbWUuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZW12LmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZXRva2VuaXplLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9vbnl4ZF9p
Zi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIv
dGhyZWFkaW5nLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9hcm0vbmVvbi9kZW5vaXNpbmdfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYXJtL25lb24vZmFzdHF1YW50aXplYl9uZW9u
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9h
cm0vbmVvbi9zaG9ydGZkY3RfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvYXJtL25lb24vdnA4X3Nob3J0d2Fsc2g0eDRfbmVvbi5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYml0c3Ry
ZWFtLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9ib29saHVmZi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvY29weV9jLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9kY3QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL2Rlbm9pc2luZy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlZnJhbWUuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWludHJhLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtYi5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2Rl
bXYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L2V0aHJlYWRpbmcuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL2xvb2thaGVhZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVjb3N0cy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbXJfZGlzc2ltLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9vbnl4X2lmLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNraW50ZXIuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2ts
cGYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L3JhdGVjdHJsLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9yZG9wdC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvc2VnbWVudGF0aW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci90b2tlbml6ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdyaXRlci5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdnA4X3F1YW50aXplLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvdnA4X2N4X2lmYWNlLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvdnA4X2R4X2lmYWNl
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL2Fy
bS9uZW9uL3ZwOV9paHQxNngxNl9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0NHg0X2FkZF9uZW9uLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL2FybS9u
ZW9uL3ZwOV9paHQ4eDhfYWRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2FsbG9jY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9ibG9ja2QuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbl9kYXRh
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9lbnRyb3B5LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW12LmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9maWx0ZXIuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X2lkY3QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X2xvb3BmaWx0ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X21mcWUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X212cmVmX2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcG9zdHByb2MuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3ByZWRfY29t
bW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9xdWFudF9jb21tb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3J0Y2QuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NjYWxlLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9z
Y2FuLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9zZWdfY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV90aHJlYWRfY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aWxlX2NvbW1vbi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZWZyYW1l
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92
cDlfZGVjb2RlbXYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9kZWNvZGVyL3ZwOV9kZWNvZGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGV0b2tlbml6ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RzdWJleHAuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9qb2JfcXVldWUu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL2Fy
bS9uZW9uL3ZwOV9kZW5vaXNlcl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci9hcm0vbmVvbi92cDlfZXJyb3JfbmVvbi5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvYXJtL25lb24vdnA5
X2ZyYW1lX3NjYWxlX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL2FybS9uZW9uL3ZwOV9xdWFudGl6ZV9uZW9uLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVm
cmVzaC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2JpdHN0cmVhbS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2NvbnRleHRfdHJlZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Nvc3QuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kY3QuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2VuY29kZWZyYW1lLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
ZXh0X3JhdGVjdHJsLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfZnJhbWVfc2NhbGUuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tY29tcC5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X211bHRpX3RocmVhZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja2xwZi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2ttb2RlLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcXVh
bnRpemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9yYXRlY3RybC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3JkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9z
a2luX2RldGVjdGlvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVyY29udGV4
dC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3Rva2VuaXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9pZmFjZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2NvZGVjLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9kZWNvZGVyLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9lbmNvZGVyLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9pbWFn
ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hZGRf
bm9pc2UuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
YXJtL2F2Z19uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2FybS9hdmdfcHJlZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS9kZWJsb2NrX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2ZkY3QxNngxNl9uZW9uLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9mZGN0MzJ4MzJf
bmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9h
cm0vZmRjdF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2FybS9mZGN0X3BhcnRpYWxfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vZndkX3R4Zm1fbmVvbi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGFkYW1hcmRfbmVvbi5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDE2
eDE2XzFfYWRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXJtL2lkY3QxNngxNl9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyXzEzNV9hZGRfbmVvbi5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMy
eDMyXzFfYWRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXJtL2lkY3QzMngzMl8zNF9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyX2FkZF9uZW9uLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0OHg4
XzFfYWRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYXJtL2lkY3Q4eDhfYWRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2ludHJhcHJlZF9uZW9uLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9xdWFudGl6ZV9uZW9uLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zYWQ0ZF9u
ZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Fy
bS9zYWRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9hcm0vc3VicGVsX3ZhcmlhbmNlX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1YnRyYWN0X25lb24uYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1bV9zcXVhcmVzX25lb24u
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3Zh
cmlhbmNlX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYXJtL3ZweF9jb252b2x2ZThfbmVvbl9hc20uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZV9uZW9uLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfc2NhbGVk
X2NvbnZvbHZlOF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2F2Zy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9iaXRyZWFkZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvYml0cmVhZGVyX2J1ZmZlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyX2J1ZmZlci5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9kZWJsb2NrLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Z3ZF90eGZtLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2ludHJhcHJlZC5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZfdHhmbS5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9sb29wZmls
dGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3By
b2IuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHNu
ci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9xdWFu
dGl6ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9z
YWQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Avc2tp
bl9kZXRlY3Rpb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3Avc3VidHJhY3QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3Avc3VtX3NxdWFyZXMuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvdmFyaWFuY2UuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvdnB4X2NvbnZvbHZlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9kc3BfcnRjZC5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS92cHhfbWVtLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYXJtX2NwdWRldGVjdC5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL2dlbmVyaWMvZ2Vu
X3NjYWxlcnMuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9z
Y2FsZS9nZW5lcmljL3ZweF9zY2FsZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X3NjYWxlL2dlbmVyaWMveXYxMmNvbmZpZy5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL2dlbmVyaWMveXYxMmV4dGVuZC5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL3ZweF9zY2Fs
ZV9ydGNkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRp
bC92cHhfdGhyZWFkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfdXRpbC92cHhfd3JpdGVfeXV2X2ZyYW1lLmMiLAorXQorbGlidnB4X3NyY3NfYXJtX25lb25f
aGVhZGVycyA9IFsKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9hbGxvY2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9hcm0vbG9vcGZpbHRlcl9hcm0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYmxvY2tkLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2NvZWZ1cGRhdGVwcm9icy5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9jb21tb24uaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZGVmYXVs
dF9jb2VmX3Byb2JzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2VudHJvcHkuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vZW50cm9weW1vZGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW12LmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2V4dGVuZC5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maWx0ZXIuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZmluZG5lYXJtdi5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9oZWFkZXIuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaW52dHJh
bnMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
bG9vcGZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9tb2RlY29udC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9tdi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9vbnl4LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL29ueXhjX2ludC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9vbnl4ZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9wb3N0cHJvYy5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9wcGZsYWdzLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2NvbW1vbi5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludGVy
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Jl
Y29uaW50cmEuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vcmVjb25pbnRyYTR4NC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9zZXR1cGludHJhcmVjb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZmZXIuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3lzdGVtZGVwZW5kZW50
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Ro
cmVhZGluZy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi90cmVlY29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vdnA4X2VudHJvcHltb2RlZGF0YS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92cDhfc2tpbl9kZXRlY3Rpb24uaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2Rib29saHVmZi5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVj
b2RlbXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNv
ZGVyL2RlY29kZXJ0aHJlYWRpbmcuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9kZWNvZGVyL2RldG9rZW5pemUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL29ueXhkX2ludC5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvdHJlZXJlYWRlci5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYml0c3RyZWFtLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ibG9j
ay5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
Ym9vbGh1ZmYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL2RjdF92YWx1ZV9jb3N0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9kY3RfdmFsdWVfdG9rZW5zLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZWZhdWx0Y29lZmNvdW50cy5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGVub2lz
aW5nLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9lbmNvZGVmcmFtZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvZW5jb2RlaW50cmEuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW1iLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtdi5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZXRocmVhZGluZy5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZmlyc3RwYXNzLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9sb29r
YWhlYWQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL21jb21wLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9tb2RlY29zdHMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL21yX2Rpc3NpbS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pbnQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tpbnRlci5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xwZi5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcXVhbnRpemUuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVj
dHJsLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9yZG9wdC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvc2VnbWVudGF0aW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci90b2tlbml6ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdyaXRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0X25lb24uaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Fs
bG9jY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9ibG9ja2QuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uX2RhdGEuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHkuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHlt
b2RlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9lbnRyb3B5bXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X2VudW1zLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9maWx0ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2lkY3QuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2xvb3Bm
aWx0ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X21mcWUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X212LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9tdnJlZl9jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X29ueXhjX2ludC5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcG9zdHByb2MuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3BwZmxh
Z3MuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X3ByZWRfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9xdWFudF9jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50ZXIuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Nj
YWxlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9zY2FuLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9zZWdfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV90aHJlYWRfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aWxlX2NvbW1vbi5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29k
ZWZyYW1lLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVj
b2Rlci92cDlfZGVjb2RlbXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGV0b2tlbml6ZS5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RzdWJleHAuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9qb2Jf
cXVldWUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9hcV9jeWNsaWNyZWZyZXNoLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYml0c3RyZWFtLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYmxvY2suaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9jb250ZXh0X3Ry
ZWUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9jb3N0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfZGVub2lzZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVmcmFtZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW1iLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbXYu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9lbmNvZGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfZXRocmVhZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dF9yYXRlY3RybC5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dGVuZC5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZpcnN0cGFzcy5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2pvYl9xdWV1ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2xvb2thaGVhZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21iZ3JhcGguaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tY29tcC5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X211bHRpX3RocmVhZC5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X25vaXNlX2VzdGltYXRlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfcGFydGl0aW9uX21vZGVscy5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2tscGYuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbW9kZS5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X3F1YW50aXplLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfcmF0ZWN0cmwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jkb3B0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmVzaXplLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc2VnbWVudGF0aW9u
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfc2tpbl9kZXRlY3Rpb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9zcGVlZF9mZWF0dXJlcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNv
bnRleHQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV90ZW1wb3JhbF9maWx0ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90b2tlbml6ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3RyZWV3cml0ZXIuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfY3hfaWZhY2UuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfZHhfaWZhY2UuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfaWZhY2VfY29t
bW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvaW50ZXJu
YWwvdnB4X2NvZGVjX2ludGVybmFsLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvdnA4LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvdnA4Y3guaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eC92cDhkeC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3Zw
eF9jb2RlYy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3Zw
eF9kZWNvZGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgv
dnB4X2VuY29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eC92cHhfZXh0X3JhdGVjdHJsLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHgvdnB4X2ZyYW1lX2J1ZmZlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4L3ZweF9pbWFnZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4L3ZweF9pbnRlZ2VyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0X25lb24uaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL21lbV9uZW9uLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zdW1fbmVvbi5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdHJhbnNwb3Nl
X25lb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
YXJtL3ZweF9jb252b2x2ZThfbmVvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9uZW9uX2FzbS5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXIuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyX2J1ZmZl
ci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3
cml0ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
Yml0d3JpdGVyX2J1ZmZlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9md2RfdHhmbS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9pbnZfdHhmbS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9wb3N0cHJvYy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9wcm9iLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3BzbnIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvcXVhbnRpemUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3Avc2tpbl9kZXRlY3Rpb24uaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdHhmbV9jb21tb24uaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdmFyaWFuY2UuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2NvbnZvbHZlLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9kc3BfY29t
bW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Zw
eF9maWx0ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9t
ZW0vaW5jbHVkZS92cHhfbWVtX2ludHJubC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X21lbS92cHhfbWVtLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfcG9ydHMvYXJtLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfcG9ydHMvYml0b3BzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvY29tcGlsZXJfYXR0cmlidXRlcy5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2VtbWludHJpbl9jb21w
YXQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9t
ZW0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9t
ZW1fb3BzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9y
dHMvbWVtX29wc19hbGlnbmVkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfcG9ydHMvbWlwcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X3BvcnRzL21zdmMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9wb3J0cy9zdGF0aWNfYXNzZXJ0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvc3lzdGVtX3N0YXRlLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X29uY2UuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfdGltZXIuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy94ODYuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhfc2NhbGUu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS95djEy
Y29uZmlnLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRp
bC9lbmRpYW5faW5sLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfdXRpbC92cHhfYXRvbWljcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X3V0aWwvdnB4X3RocmVhZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RpbWVzdGFtcC5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3dyaXRlX3l1dl9mcmFtZS5oIiwKK10K
K2xpYnZweF9zcmNzX2FybV9uZW9uX2Fzc2VtYmx5ID0gWworICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0NHg0XzFfYWRkX25lb24uYXNtIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDR4NF9h
ZGRfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9pZGN0X25lb24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9hcm0vaW50cmFwcmVkX25lb25fYXNtLmFzbSIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2xvb3BmaWx0ZXJfMTZfbmVvbi5h
c20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9s
b29wZmlsdGVyXzRfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS9sb29wZmlsdGVyXzhfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zYXZlX3JlZ19uZW9uLmFzbSIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252
b2x2ZThfYXZnX2hvcml6X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfYXZnX2hvcml6
X2ZpbHRlcl90eXBlMl9uZW9uLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfYXZnX3ZlcnRfZmlsdGVyX3R5cGUxX25l
b24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9h
cm0vdnB4X2NvbnZvbHZlOF9hdmdfdmVydF9maWx0ZXJfdHlwZTJfbmVvbi5hc20iLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4
X2hvcml6X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfaG9yaXpfZmlsdGVyX3R5cGUy
X25lb24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vdnB4X2NvbnZvbHZlOF92ZXJ0X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThf
dmVydF9maWx0ZXJfdHlwZTJfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmVfYXZnX25lb25fYXNtLmFzbSIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252
b2x2ZV9jb3B5X25lb25fYXNtLmFzbSIsCitdCitsaWJ2cHhfc3Jjc19hcm1fbmVvbl9jcHVfZGV0
ZWN0ID0gWworICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2FsbG9jY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2FybS9sb29wZmlsdGVyX2FybS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZGVxdWFudGl6ZS5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5LmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHltb2RlLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJv
cHltdi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9leHRlbmQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vZmlsdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2ZpbmRuZWFybXYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vZ2VuZXJpYy9zeXN0ZW1kZXBlbmRlbnQuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaWRjdF9ibGsuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaWRjdGxsbS5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29wZmls
dGVyX2ZpbHRlcnMuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vbWJwaXRjaC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9tZnFlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL21vZGVjb250LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludGVyLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmEu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVj
b25pbnRyYTR4NC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9ydGNkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL3NldHVwaW50cmFyZWNvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zd2FweXYxMmJ1ZmZlci5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90cmVlY29kZXIuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X2xvb3BmaWx0ZXIu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4
X3NraW5fZGV0ZWN0aW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZGVjb2Rlci9kYm9vbGh1ZmYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZWZyYW1lLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVtdi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGV0b2tlbml6ZS5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvb255eGRfaWYu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL3Ro
cmVhZGluZy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvYml0c3RyZWFtLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9ib29saHVmZi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvY29weV9jLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rlbm9pc2luZy5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlZnJhbWUuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWludHJh
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9l
bmNvZGVtYi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvZW5jb2RlbXYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL2V0aHJlYWRpbmcuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVjb3N0cy5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbXJfZGlzc2ltLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9vbnl4X2lm
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9w
aWNraW50ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL3BpY2tscGYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9yZG9wdC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvc2VnbWVudGF0aW9uLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci90b2tlbml6ZS5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdyaXRlci5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdnA4X3F1
YW50aXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvdnA4
X2N4X2lmYWNlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
dnA4X2R4X2lmYWNlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9hbGxvY2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYmxvY2tkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb25fZGF0YS5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weS5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
ZW50cm9weW1vZGUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X2VudHJvcHltdi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZmlsdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9mcmFtZV9idWZmZXJzLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9pZGN0LmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9sb29w
ZmlsdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9tZnFlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9tdnJlZl9jb21tb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Bvc3Rwcm9jLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRf
Y29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9yZWNvbmludGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludHJhLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9ydGNkLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FsZS5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2Nv
bW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfdGhyZWFkX2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9jb21tb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVmcmFtZS5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZW12
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92
cDlfZGVjb2Rlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2RlY29kZXIvdnA5X2RldG9rZW5pemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kc3ViZXhwLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfam9iX3F1ZXVlLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGlj
cmVmcmVzaC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2JpdHN0cmVhbS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X2NvbnRleHRfdHJlZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Nvc3QuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kY3QuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNl
ci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2VuY29kZWZyYW1lLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFk
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfZXh0X3JhdGVjdHJsLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZnJhbWVfc2NhbGUuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tY29t
cC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X211bHRpX3RocmVhZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja2xwZi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2ttb2RlLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
cXVhbnRpemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24u
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9za2luX2RldGVjdGlvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVyY29u
dGV4dC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X3Rva2VuaXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9pZmFjZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2NvZGVjLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9kZWNvZGVyLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9lbmNvZGVy
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9p
bWFnZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9h
ZGRfbm9pc2UuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXZnLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2JpdHJlYWRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2JpdHdyaXRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXJfYnVmZmVyLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2RlYmxvY2suYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvZndkX3R4Zm0uYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW50cmFwcmVkLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2ludl90eGZtLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2xvb3BmaWx0ZXIuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHJvYi5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wc25yLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50aXplLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NhZC5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2luX2RldGVj
dGlvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9z
dWJ0cmFjdC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9zdW1fc3F1YXJlcy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC92YXJpYW5jZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC92cHhfY29udm9sdmUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9ydGNkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfbWVtL3ZweF9tZW0uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hcm1fY3B1ZGV0ZWN0LmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy9nZW5fc2NhbGVy
cy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL2dl
bmVyaWMvdnB4X3NjYWxlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfc2NhbGUvZ2VuZXJpYy95djEyY29uZmlnLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95djEyZXh0ZW5kLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvdnB4X3NjYWxlX3J0Y2Qu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF90
aHJlYWQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGls
L3ZweF93cml0ZV95dXZfZnJhbWUuYyIsCitdCitsaWJ2cHhfc3Jjc19hcm1fbmVvbl9jcHVfZGV0
ZWN0X2hlYWRlcnMgPSBbCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vYWxsb2Njb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vYXJtL2xvb3BmaWx0ZXJfYXJtLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Jsb2NrZC5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9jb2VmdXBkYXRlcHJvYnMuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vY29tbW9u
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Rl
ZmF1bHRfY29lZl9wcm9icy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9lbnRyb3B5LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2VudHJvcHltb2RlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHltdi5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9leHRlbmQuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZmlsdGVyLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbmRuZWFybXYuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaGVhZGVy
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2lu
dnRyYW5zLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2xvb3BmaWx0ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vbW9kZWNvbnQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vbXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vb255eC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9vbnl4Y19pbnQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vb255eGQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcG9zdHByb2MuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcHBmbGFncy5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9xdWFudF9jb21tb24uaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25p
bnRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9yZWNvbmludHJhLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL3JlY29uaW50cmE0eDQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vc2V0dXBpbnRyYXJlY29uLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3N3YXB5djEyYnVmZmVyLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3N5c3RlbWRlcGVu
ZGVudC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi90aHJlYWRpbmcuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vdHJlZWNvZGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3ZwOF9lbnRyb3B5bW9kZWRhdGEuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X3NraW5fZGV0ZWN0aW9uLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kYm9vbGh1
ZmYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVy
L2RlY29kZW12LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZGVjb2Rlci9kZWNvZGVydGhyZWFkaW5nLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZXRva2VuaXplLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9vbnl4ZF9pbnQuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL3RyZWVyZWFkZXIuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2JpdHN0cmVh
bS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
YmxvY2suaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL2Jvb2xodWZmLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9kY3RfdmFsdWVfY29zdC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGN0X3ZhbHVlX3Rva2Vucy5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGVmYXVsdGNvZWZjb3VudHMu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rl
bm9pc2luZy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvZW5jb2RlZnJhbWUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL2VuY29kZWludHJhLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtYi5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbXYuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2V0aHJlYWRpbmcuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2ZpcnN0cGFz
cy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
bG9va2FoZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9tY29tcC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvbW9kZWNvc3RzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9tcl9kaXNzaW0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL29ueXhfaW50LmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNraW50ZXIuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tscGYuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3F1YW50aXpl
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9y
YXRlY3RybC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvcmRvcHQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL3NlZ21lbnRhdGlvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvdG9rZW5pemUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25lb24vdnA5X2lodF9uZW9u
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9hbGxvY2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfYmxvY2tkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbl9kYXRhLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5LmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRy
b3B5bW9kZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfZW50cm9weW12LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9lbnVtcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZmlsdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9mcmFtZV9idWZmZXJzLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9pZGN0Lmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9s
b29wZmlsdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9tZnFlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9tdi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfbXZyZWZfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9vbnl4Y19pbnQuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Bvc3Rwcm9jLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9w
cGZsYWdzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9wcmVkX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludGVyLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludHJh
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9zY2FsZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfc2Nhbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGhyZWFkX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9jb21tb24uaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9k
ZWNvZGVmcmFtZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2RlY29kZXIvdnA5X2RlY29kZW12LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RldG9rZW5pemUuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kc3ViZXhwLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlf
am9iX3F1ZXVlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVzaC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2JpdHN0cmVhbS5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Jsb2NrLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4
dF90cmVlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfY29zdC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2Rlbm9pc2VyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlZnJhbWUuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtYi5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29k
ZW12LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfZW5jb2Rlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2V0aHJlYWQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRfcmF0ZWN0cmwuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRlbmQuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9maXJzdHBh
c3MuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9qb2JfcXVldWUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tYmdyYXBoLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWNvbXAuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tdWx0aV90aHJl
YWQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9ub2lzZV9lc3RpbWF0ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BhcnRpdGlvbl9tb2RlbHMuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbHBmLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja21v
ZGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9xdWFudGl6ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3JhdGVjdHJsLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZG9wdC5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jlc2l6ZS5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NlZ21lbnRh
dGlvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRfZmVhdHVyZXMuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdWJleHAuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdmNfbGF5
ZXJjb250ZXh0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfdGVtcG9yYWxfZmlsdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdG9rZW5pemUuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90cmVld3JpdGVyLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNl
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2lmYWNl
X2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L2lu
dGVybmFsL3ZweF9jb2RlY19pbnRlcm5hbC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4L3ZwOC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4L3ZwOGN4LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvdnA4ZHguaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eC92cHhfY29kZWMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eC92cHhfZGVjb2Rlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4L3ZweF9lbmNvZGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvdnB4X2V4dF9yYXRlY3RybC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4L3ZweF9mcmFtZV9idWZmZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweC92cHhfaW1hZ2UuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweC92cHhfaW50ZWdlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdF9uZW9uLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9tZW1fbmVvbi5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc3VtX25lb24uaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3RyYW5z
cG9zZV9uZW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS92cHhfY29udm9sdmU4X25lb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfbmVvbl9hc20uaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9i
dWZmZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
Yml0d3JpdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2JpdHdyaXRlcl9idWZmZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvZndkX3R4Zm0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvcG9zdHByb2MuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHJvYi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wc25yLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50aXplLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NraW5fZGV0ZWN0aW9uLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3R4Zm1fY29tbW9uLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZhcmlhbmNlLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9jb252b2x2ZS5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfZHNw
X2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC92cHhfZmlsdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfbWVtL2luY2x1ZGUvdnB4X21lbV9pbnRybmwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9tZW0vdnB4X21lbS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2FybS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2JpdG9wcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2NvbXBpbGVyX2F0dHJpYnV0ZXMuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9lbW1pbnRyaW5f
Y29tcGF0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9y
dHMvbWVtLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9y
dHMvbWVtX29wcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X3BvcnRzL21lbV9vcHNfYWxpZ25lZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X3BvcnRzL21pcHMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9wb3J0cy9tc3ZjLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfcG9ydHMvc3RhdGljX2Fzc2VydC5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3N5c3RlbV9zdGF0ZS5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3ZweF9vbmNlLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X3RpbWVyLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMveDg2Lmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvdnB4X3Nj
YWxlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUv
eXYxMmNvbmZpZy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X3V0aWwvZW5kaWFuX2lubC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3V0aWwvdnB4X2F0b21pY3MuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF91dGlsL3ZweF90aHJlYWQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF90aW1lc3RhbXAuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF93cml0ZV95dXZfZnJhbWUuaCIs
CitdCitsaWJ2cHhfc3Jjc19hcm1fbmVvbl9jcHVfZGV0ZWN0X2Fzc2VtYmx5ID0gWworICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0NHg0XzFfYWRk
X25lb24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vaWRjdDR4NF9hZGRfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0X25lb24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaW50cmFwcmVkX25lb25fYXNtLmFzbSIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2xvb3Bm
aWx0ZXJfMTZfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FybS9sb29wZmlsdGVyXzRfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9sb29wZmlsdGVyXzhfbmVvbi5hc20iLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zYXZlX3Jl
Z19uZW9uLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL3ZweF9jb252b2x2ZThfYXZnX2hvcml6X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252
b2x2ZThfYXZnX2hvcml6X2ZpbHRlcl90eXBlMl9uZW9uLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfYXZnX3ZlcnRf
ZmlsdGVyX3R5cGUxX25lb24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9hdmdfdmVydF9maWx0ZXJfdHlwZTJfbmVv
bi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Fy
bS92cHhfY29udm9sdmU4X2hvcml6X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfaG9y
aXpfZmlsdGVyX3R5cGUyX25lb24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF92ZXJ0X2ZpbHRlcl90eXBlMV9uZW9u
LmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L3ZweF9jb252b2x2ZThfdmVydF9maWx0ZXJfdHlwZTJfbmVvbi5hc20iLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmVfYXZnX25l
b25fYXNtLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL3ZweF9jb252b2x2ZV9jb3B5X25lb25fYXNtLmFzbSIsCitdCitsaWJ2cHhfc3Jjc19h
cm1fbmVvbl9jcHVfZGV0ZWN0X25lb24gPSBbCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vYmlsaW5lYXJwcmVkaWN0X25lb24uYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24v
Y29weW1lbV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2FybS9uZW9uL2RjX29ubHlfaWRjdF9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9kZXF1YW50X2lk
Y3RfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9hcm0vbmVvbi9kZXF1YW50aXplYl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2lkY3RfYmxrX25lb24uYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24v
aXdhbHNoX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vYXJtL25lb24vbG9vcGZpbHRlcnNpbXBsZWhvcml6b250YWxlZGdlX25lb24uYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25l
b24vbG9vcGZpbHRlcnNpbXBsZXZlcnRpY2FsZWRnZV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL21ibG9vcGZpbHRlcl9u
ZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2FybS9uZW9uL3Nob3J0aWRjdDR4NGxsbV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL3NpeHRhcHByZWRpY3RfbmVvbi5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0v
bmVvbi92cDhfbG9vcGZpbHRlcl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9hcm0vbmVvbi9kZW5vaXNpbmdfbmVvbi5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYXJtL25lb24vZmFz
dHF1YW50aXplYl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9hcm0vbmVvbi9zaG9ydGZkY3RfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYXJtL25lb24vdnA4X3Nob3J0d2Fs
c2g0eDRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0MTZ4MTZfYWRkX25lb24uYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25lb24vdnA5X2lodDR4NF9h
ZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi9hcm0vbmVvbi92cDlfaWh0OHg4X2FkZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci9hcm0vbmVvbi92cDlfZGVub2lzZXJfbmVv
bi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
YXJtL25lb24vdnA5X2Vycm9yX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL2FybS9uZW9uL3ZwOV9mcmFtZV9zY2FsZV9uZW9uLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci9hcm0vbmVv
bi92cDlfcXVhbnRpemVfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9hcm0vYXZnX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2F2Z19wcmVkX25lb24uYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2RlYmxvY2tfbmVvbi5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vZmRjdDE2eDE2
X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
YXJtL2ZkY3QzMngzMl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS9mZGN0X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2ZkY3RfcGFydGlhbF9uZW9uLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9md2RfdHhmbV9uZW9uLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oYWRh
bWFyZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9pZGN0MTZ4MTZfMV9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDE2eDE2X2FkZF9uZW9uLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0MzJ4MzJfMTM1
X2FkZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9pZGN0MzJ4MzJfMV9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyXzM0X2FkZF9uZW9uLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0MzJ4MzJf
YWRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL2lkY3Q4eDhfMV9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDh4OF9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaW50cmFwcmVkX25lb24uYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3F1YW50
aXplX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL3NhZDRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvYXJtL3NhZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS9zdWJwZWxfdmFyaWFuY2VfbmVvbi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc3VidHJhY3RfbmVvbi5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc3Vt
X3NxdWFyZXNfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9hcm0vdmFyaWFuY2VfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlX25lb24uYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9zY2FsZWRfY29udm9s
dmU4X25lb24uYyIsCitdCitsaWJ2cHhfc3Jjc19hcm02NCA9IFsKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hbGxvY2NvbW1vbi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbG9vcGZpbHRlcl9h
cm0uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
YXJtL25lb24vYmlsaW5lYXJwcmVkaWN0X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vY29weW1lbV9uZW9uLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2Rj
X29ubHlfaWRjdF9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9kZXF1YW50X2lkY3RfbmVvbi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9kZXF1YW50
aXplYl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2FybS9uZW9uL2lkY3RfYmxrX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vaXdhbHNoX25lb24uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vbG9v
cGZpbHRlcnNpbXBsZWhvcml6b250YWxlZGdlX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vbG9vcGZpbHRlcnNpbXBsZXZl
cnRpY2FsZWRnZV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2FybS9uZW9uL21ibG9vcGZpbHRlcl9uZW9uLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL3Nob3J0aWRjdDR4
NGxsbV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2FybS9uZW9uL3NpeHRhcHByZWRpY3RfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi92cDhfbG9vcGZpbHRlcl9u
ZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2Jsb2NrZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9kZXF1YW50aXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2VudHJvcHkuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vZW50cm9weW1vZGUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW12LmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2V4dGVuZC5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maWx0ZXIuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZmluZG5lYXJtdi5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9nZW5lcmlj
L3N5c3RlbWRlcGVuZGVudC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9pZGN0X2Jsay5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9pZGN0bGxtLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL2xvb3BmaWx0ZXJfZmlsdGVycy5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tYnBpdGNoLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21mcWUuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbW9kZWNvbnQu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcG9z
dHByb2MuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vcXVhbnRfY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3JlY29uaW50ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhNHg0LmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3J0Y2QuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc2V0dXBpbnRyYXJlY29u
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3N3
YXB5djEyYnVmZmVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL3RyZWVjb2Rlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi92cDhfbG9vcGZpbHRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92cDhfc2tpbl9kZXRlY3Rpb24uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2Rib29saHVmZi5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVj
b2RlZnJhbWUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9k
ZWNvZGVyL2RlY29kZW12LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZGVjb2Rlci9kZXRva2VuaXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZGVjb2Rlci9vbnl4ZF9pZi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvdGhyZWFkaW5nLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9hcm0vbmVvbi9kZW5vaXNpbmdf
bmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvYXJtL25lb24vZmFzdHF1YW50aXplYl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9hcm0vbmVvbi9zaG9ydGZkY3RfbmVvbi5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYXJtL25l
b24vdnA4X3Nob3J0d2Fsc2g0eDRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYml0c3RyZWFtLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ib29saHVmZi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvY29weV9jLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3QuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rlbm9pc2luZy5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5j
b2RlZnJhbWUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL2VuY29kZWludHJhLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9lbmNvZGVtYi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbXYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2V0aHJlYWRpbmcuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVj
b3N0cy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvbXJfZGlzc2ltLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9vbnl4X2lmLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9waWNraW50ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tscGYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yZG9wdC5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvc2VnbWVudGF0aW9uLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci90b2tl
bml6ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvdHJlZXdyaXRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvdnA4X3F1YW50aXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvdnA4X2N4X2lmYWNlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvdnA4X2R4X2lmYWNlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9paHQxNngxNl9hZGRfbmVv
bi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9h
cm0vbmVvbi92cDlfaWh0NHg0X2FkZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9paHQ4eDhfYWRkX25lb24uYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Fs
bG9jY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9ibG9ja2QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbl9kYXRhLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5LmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50
cm9weW12LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9maWx0ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2lkY3QuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21mcWUuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X212
cmVmX2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfcG9zdHByb2MuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X3ByZWRfY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9xdWFudF9jb21tb24uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50
ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X3JlY29uaW50cmEuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X3J0Y2QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X3NjYWxlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FuLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zZWdfY29tbW9uLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aHJlYWRfY29t
bW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV90aWxlX2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZWZyYW1lLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlbXYuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVyLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGV0
b2tlbml6ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Rl
Y29kZXIvdnA5X2RzdWJleHAuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9kZWNvZGVyL3ZwOV9qb2JfcXVldWUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL2FybS9uZW9uL3ZwOV9kZW5vaXNlcl9uZW9uLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci9hcm0v
bmVvbi92cDlfZXJyb3JfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvYXJtL25lb24vdnA5X2ZyYW1lX3NjYWxlX25lb24uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL2FybS9uZW9uL3Zw
OV9xdWFudGl6ZV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVzaC5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2JpdHN0cmVhbS5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2NvbnRleHRf
dHJlZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2Nvc3QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9kY3QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZWZyYW1lLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9l
bmNvZGVtdi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2VuY29kZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZnJh
bWVfc2NhbGUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9sb29rYWhlYWQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tY29tcC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X211bHRpX3RocmVhZC5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGlt
YXRlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfcGlja2xwZi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3BpY2ttb2RlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcXVhbnRpemUuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JkLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRv
cHQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9yZXNpemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9za2luX2RldGVjdGlvbi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1
cmVzLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfc3ViZXhwLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVyY29udGV4dC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Rva2VuaXplLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFj
ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9p
ZmFjZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9p
ZmFjZV9jb21tb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eC9zcmMvdnB4X2NvZGVjLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvc3JjL3ZweF9kZWNvZGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvc3JjL3ZweF9lbmNvZGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9pbWFnZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hZGRfbm9pc2UuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2F2Z19uZW9uLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9hdmdfcHJlZF9uZW9uLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9kZWJs
b2NrX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL2ZkY3QxNngxNl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2FybS9mZGN0MzJ4MzJfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vZmRjdF9uZW9uLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9mZGN0X3BhcnRpYWxfbmVv
bi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
ZndkX3R4Zm1fbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9hcm0vaGFkYW1hcmRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDE2eDE2XzFfYWRkX25lb24uYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3QxNngxNl9hZGRf
bmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9h
cm0vaWRjdDMyeDMyXzEzNV9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyXzFfYWRkX25lb24uYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3QzMngzMl8zNF9h
ZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vaWRjdDMyeDMyX2FkZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0NHg0XzFfYWRkX25lb24uYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3Q0eDRfYWRkX25lb24u
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lk
Y3Q4eDhfMV9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9hcm0vaWRjdDh4OF9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaW50cmFwcmVkX25lb24uYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2xvb3BmaWx0ZXJfbmVv
bi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
cXVhbnRpemVfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9hcm0vc2FkNGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9hcm0vc2FkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1YnBlbF92YXJpYW5jZV9uZW9uLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zdWJ0cmFjdF9u
ZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Fy
bS9zdW1fc3F1YXJlc19uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS92YXJpYW5jZV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X25lb24uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2
ZV9hdmdfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9hcm0vdnB4X2NvbnZvbHZlX2NvcHlfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlX25lb24uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9zY2FsZWRf
Y29udm9sdmU4X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXZnLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2JpdHJlYWRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXJfYnVmZmVyLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2RlYmxvY2suYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvZndkX3R4Zm0uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW50cmFwcmVkLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2ludl90eGZtLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2xvb3BmaWx0
ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHJv
Yi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wc25y
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50
aXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Nh
ZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2lu
X2RldGVjdGlvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9zdWJ0cmFjdC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9zdW1fc3F1YXJlcy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9ydGNkLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVtL3ZweF9tZW0uYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hcm1fY3B1ZGV0ZWN0LmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy9nZW5f
c2NhbGVycy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3Nj
YWxlL2dlbmVyaWMvdnB4X3NjYWxlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95djEyY29uZmlnLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95djEyZXh0ZW5kLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvdnB4X3NjYWxl
X3J0Y2QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGls
L3ZweF90aHJlYWQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF91dGlsL3ZweF93cml0ZV95dXZfZnJhbWUuYyIsCitdCitsaWJ2cHhfc3Jjc19hcm02NF9oZWFk
ZXJzID0gWworICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2FsbG9jY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2FybS9sb29wZmlsdGVyX2FybS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vY29lZnVwZGF0ZXByb2JzLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2NvbW1vbi5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9kZWZhdWx0X2Nv
ZWZfcHJvYnMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vZW50cm9weS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZXh0ZW5kLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2hlYWRlci5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pbnZ0cmFucy5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29w
ZmlsdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL21vZGVjb250LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL212LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL29ueXguaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vb255eGNfaW50LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL29ueXhkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3BwZmxhZ3MuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcXVhbnRfY29tbW9uLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50ZXIuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25p
bnRyYS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9yZWNvbmludHJhNHg0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3NldHVwaW50cmFyZWNvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zd2FweXYxMmJ1ZmZlci5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zeXN0ZW1kZXBlbmRlbnQuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdGhyZWFk
aW5nLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L3RyZWVjb2Rlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi92cDhfZW50cm9weW1vZGVkYXRhLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZmLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVt
di5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIv
ZGVjb2RlcnRocmVhZGluZy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2RlY29kZXIvZGV0b2tlbml6ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvb255eGRfaW50LmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci90cmVlcmVhZGVyLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0uaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jsb2NrLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ib29s
aHVmZi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvZGN0X3ZhbHVlX2Nvc3QuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL2RjdF92YWx1ZV90b2tlbnMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RlZmF1bHRjb2VmY291bnRzLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Vu
Y29kZWZyYW1lLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9lbmNvZGVpbnRyYS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbWIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW12LmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ldGhyZWFkaW5nLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9maXJzdHBhc3MuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVh
ZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
bWNvbXAuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL21vZGVjb3N0cy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvbXJfZGlzc2ltLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9vbnl4X2ludC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2ludGVyLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNrbHBmLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9xdWFudGl6ZS5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Jk
b3B0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9zZWdtZW50YXRpb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL3Rva2VuaXplLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci90cmVld3JpdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9paHRfbmVvbi5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYWxsb2Nj
b21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X2Jsb2NrZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb25fZGF0YS5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weS5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X2VudHJvcHltdi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfZW51bXMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X2ZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZnJhbWVfYnVmZmVycy5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfaWRjdC5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbG9vcGZpbHRl
ci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfbWZxZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfbXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X212cmVmX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfb255eGNfaW50LmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0cHJvYy5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcHBmbGFncy5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
cHJlZF9jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X3F1YW50X2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRlci5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRyYS5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2NhbGUu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X3NjYW4uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X3NlZ19jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X3RocmVhZF9jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RpbGVfY29tbW9uLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlZnJh
bWUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVy
L3ZwOV9kZWNvZGVtdi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2RlY29kZXIvdnA5X2RlY29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZXRva2VuaXplLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1YmV4cC5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2pvYl9xdWV1
ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2FxX2N5Y2xpY3JlZnJlc2guaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9iaXRzdHJlYW0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ibG9jay5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2NvbnRleHRfdHJlZS5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2Nvc3QuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9kZW5vaXNlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZWZyYW1lLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Vu
Y29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9ldGhyZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZmlyc3RwYXNzLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfam9i
X3F1ZXVlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfbG9va2FoZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfbWJncmFwaC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21jb21wLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbXVsdGlfdGhyZWFkLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbm9p
c2VfZXN0aW1hdGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9wYXJ0aXRpb25fbW9kZWxzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja2xwZi5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2ttb2RlLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcXVh
bnRpemUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9yYXRlY3RybC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3JkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9z
a2luX2RldGVjdGlvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVyY29udGV4
dC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3RlbXBvcmFsX2ZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Rva2VuaXplLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9pZmFjZS5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24u
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9pbnRlcm5hbC92
cHhfY29kZWNfaW50ZXJuYWwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC92cDguaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eC92cDhjeC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3Zw
OGR4LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2Nv
ZGVjLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2Rl
Y29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhf
ZW5jb2Rlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3Zw
eF9leHRfcmF0ZWN0cmwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweC92cHhfZnJhbWVfYnVmZmVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvdnB4X2ltYWdlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvdnB4X2ludGVnZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3RfbmVvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vbWVtX25lb24uaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1bV9uZW9uLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS90cmFuc3Bvc2VfbmVv
bi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
dnB4X2NvbnZvbHZlOF9uZW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2JpdHJlYWRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlci5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXJfYnVmZmVyLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Z3ZF90eGZtLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2ludl90eGZtLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Bvc3Rwcm9j
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Byb2Iu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHNuci5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9xdWFudGl6
ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2lu
X2RldGVjdGlvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC90eGZtX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC92YXJpYW5jZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2ZpbHRlci5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS9pbmNsdWRlL3ZweF9tZW1faW50cm5s
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVtL3ZweF9t
ZW0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9h
cm0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9i
aXRvcHMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0
cy9jb21waWxlcl9hdHRyaWJ1dGVzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfcG9ydHMvZW1taW50cmluX2NvbXBhdC5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21lbS5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21lbV9vcHMuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9tZW1fb3BzX2FsaWduZWQuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9taXBzLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbXN2Yy5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3N0YXRpY19h
c3NlcnQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0
cy9zeXN0ZW1fc3RhdGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9wb3J0cy92cHhfb25jZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X3BvcnRzL3ZweF90aW1lci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3BvcnRzL3g4Ni5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3NjYWxlL3ZweF9zY2FsZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL3l2MTJjb25maWcuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL2VuZGlhbl9pbmwuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF9hdG9taWNzLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFk
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhf
dGltZXN0YW1wLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
dXRpbC92cHhfd3JpdGVfeXV2X2ZyYW1lLmgiLAorXQorbGlidnB4X3NyY3NfYXJtNjRfYXNzZW1i
bHkgPSBbXQorbGlidnB4X3NyY3NfYXJtX25lb25faGlnaGJkID0gWworICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FsbG9jY29tbW9uLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9sb29wZmlsdGVy
X2FybS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9hcm0vbmVvbi9iaWxpbmVhcnByZWRpY3RfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9jb3B5bWVtX25lb24uYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24v
ZGNfb25seV9pZGN0X2FkZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2RlcXVhbnRfaWRjdF9uZW9uLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2RlcXVh
bnRpemViX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vYXJtL25lb24vaWRjdF9ibGtfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9pd2Fsc2hfbmVvbi5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9s
b29wZmlsdGVyc2ltcGxlaG9yaXpvbnRhbGVkZ2VfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9sb29wZmlsdGVyc2ltcGxl
dmVydGljYWxlZGdlX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vYXJtL25lb24vbWJsb29wZmlsdGVyX25lb24uYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vc2hvcnRpZGN0
NHg0bGxtX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vYXJtL25lb24vc2l4dGFwcHJlZGljdF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL3ZwOF9sb29wZmlsdGVy
X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vYmxvY2tkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2RlcXVhbnRpemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vZW50cm9weS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bXYuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZXh0ZW5kLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbHRlci5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2dlbmVy
aWMvc3lzdGVtZGVwZW5kZW50LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL2lkY3RfYmxrLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL2lkY3RsbG0uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbG9vcGZpbHRlcl9maWx0ZXJzLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21icGl0Y2guYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWZxZS5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tb2RlY29u
dC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9w
b3N0cHJvYy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9xdWFudF9jb21tb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vcmVjb25pbnRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcnRjZC5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zZXR1cGludHJhcmVj
b24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
c3dhcHl2MTJidWZmZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vdHJlZWNvZGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3ZwOF9sb29wZmlsdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZm
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9k
ZWNvZGVmcmFtZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2RlY29kZXIvZGVjb2RlbXYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9kZWNvZGVyL2RldG9rZW5pemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL29ueXhkX2lmLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci90aHJlYWRpbmcuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9uL2Rlbm9pc2lu
Z19uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9hcm0vbmVvbi9mYXN0cXVhbnRpemViX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9uL3Nob3J0ZmRjdF9uZW9uLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9hcm0v
bmVvbi92cDhfc2hvcnR3YWxzaDR4NF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0uYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jvb2xodWZmLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9jb3B5X2MuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RjdC5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGVub2lzaW5n
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9l
bmNvZGVmcmFtZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvZW5jb2RlaW50cmEuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW1iLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtdi5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZXRocmVhZGluZy5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbG9va2FoZWFkLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tY29tcC5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbW9k
ZWNvc3RzLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9tcl9kaXNzaW0uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL29ueXhfaWYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tpbnRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xwZi5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Jkb3B0LmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9zZWdtZW50YXRpb24u
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Rv
a2VuaXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci90cmVld3JpdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci92cDhfcXVhbnRpemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC92cDhfY3hfaWZhY2UuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC92cDhfZHhfaWZhY2UuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25lb24vdnA5X2hpZ2hiZF9paHQxNngx
Nl9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi9hcm0vbmVvbi92cDlfaGlnaGJkX2lodDR4NF9hZGRfbmVvbi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaGln
aGJkX2lodDh4OF9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0MTZ4MTZfYWRkX25lb24uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25lb24vdnA5
X2lodDR4NF9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0OHg4X2FkZF9uZW9uLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9hbGxvY2NvbW1vbi5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
YmxvY2tkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9jb21tb25fZGF0YS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltdi5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZmls
dGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9mcmFtZV9idWZmZXJzLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9pZGN0LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9sb29wZmlsdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tZnFlLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdnJlZl9jb21tb24u
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X3Bvc3Rwcm9jLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludGVyLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmlu
dHJhLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9ydGNkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9zY2FsZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGhyZWFkX2NvbW1vbi5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9j
b21tb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNv
ZGVyL3ZwOV9kZWNvZGVmcmFtZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZW12LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rlci5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RldG9rZW5pemUuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9k
c3ViZXhwLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVj
b2Rlci92cDlfam9iX3F1ZXVlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci9hcm0vbmVvbi92cDlfZGVub2lzZXJfbmVvbi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvYXJtL25lb24vdnA5X2Zy
YW1lX3NjYWxlX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL2FybS9uZW9uL3ZwOV9xdWFudGl6ZV9uZW9uLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVz
aC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2JpdHN0cmVhbS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2NvbnRleHRfdHJlZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Nvc3QuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kY3QuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Vu
Y29kZWZyYW1lLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfZW5jb2RlbWIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0
X3JhdGVjdHJsLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfZXh0ZW5kLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfZnJhbWVfc2NhbGUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tY29tcC5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X211
bHRpX3RocmVhZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja2xwZi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2ttb2RlLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcXVhbnRp
emUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9yYXRlY3RybC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3JkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9za2lu
X2RldGVjdGlvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVyY29udGV4dC5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X3Rva2VuaXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfdHJlZXdyaXRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9pZmFjZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2NvZGVjLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9kZWNvZGVyLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9lbmNvZGVyLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9pbWFnZS5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hZGRfbm9p
c2UuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L2F2Z19uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9hdmdfcHJlZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2FybS9kZWJsb2NrX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2ZkY3QxNngxNl9uZW9uLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9mZGN0MzJ4MzJfbmVv
bi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
ZmRjdF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9mZGN0X3BhcnRpYWxfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vZndkX3R4Zm1fbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGFkYW1hcmRfbmVvbi5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lk
Y3QxNngxNl9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lkY3QzMngzMl8xMDI0X2FkZF9uZW9uLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdoYmRfaWRjdDMy
eDMyXzEzNV9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lkY3QzMngzMl8zNF9hZGRfbmVvbi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lkY3QzMngz
Ml9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9hcm0vaGlnaGJkX2lkY3Q0eDRfYWRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF9pZGN0OHg4X2FkZF9uZW9uLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdo
YmRfaW50cmFwcmVkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF9sb29wZmlsdGVyX25lb24uYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF92cHhfY29udm9sdmU4
X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
YXJtL2hpZ2hiZF92cHhfY29udm9sdmVfYXZnX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF92cHhfY29udm9sdmVfY29weV9u
ZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Fy
bS9oaWdoYmRfdnB4X2NvbnZvbHZlX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3QxNngxNl8xX2FkZF9uZW9uLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0MTZ4MTZfYWRk
X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
YXJtL2lkY3QzMngzMl8xMzVfYWRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3QzMngzMl8xX2FkZF9uZW9uLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0MzJ4MzJfMzRf
YWRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL2lkY3QzMngzMl9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDh4OF8xX2FkZF9uZW9uLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0OHg4X2FkZF9uZW9u
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9p
bnRyYXByZWRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9hcm0vcXVhbnRpemVfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc2FkNGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc2FkX25lb24uYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1YnBlbF92YXJpYW5jZV9u
ZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Fy
bS9zdWJ0cmFjdF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FybS9zdW1fc3F1YXJlc19uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92YXJpYW5jZV9uZW9uLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X25l
b25fYXNtLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2FybS92cHhfY29udm9sdmVfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X3NjYWxlZF9jb252b2x2ZThfbmVvbi5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hdmcuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9idWZm
ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0
d3JpdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2JpdHdyaXRlcl9idWZmZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvZGVibG9jay5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9pbnRyYXByZWQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbG9vcGZpbHRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wcm9iLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3BzbnIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcXVhbnRpemUuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Avc2FkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NraW5fZGV0ZWN0aW9uLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3N1YnRyYWN0LmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3N1bV9zcXVhcmVzLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZhcmlhbmNlLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9jb252
b2x2ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92
cHhfZHNwX3J0Y2QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9tZW0vdnB4X21lbS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X3BvcnRzL2FybV9jcHVkZXRlY3QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL2dlbl9zY2FsZXJzLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy92cHhfc2NhbGUuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmlj
L3l2MTJjb25maWcuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9zY2FsZS9nZW5lcmljL3l2MTJleHRlbmQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhfc2NhbGVfcnRjZC5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RocmVhZC5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3dyaXRlX3l1dl9mcmFt
ZS5jIiwKK10KK2xpYnZweF9zcmNzX2FybV9uZW9uX2hpZ2hiZF9oZWFkZXJzID0gWworICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FsbG9jY29tbW9uLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9s
b29wZmlsdGVyX2FybS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9ibG9ja2QuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vY29lZnVwZGF0ZXByb2JzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9kZWZhdWx0X2NvZWZfcHJvYnMuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weS5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRy
b3B5bW9kZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9lbnRyb3B5bXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vZXh0ZW5kLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL2ZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2hlYWRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pbnZ0cmFucy5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29wZmlsdGVyLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21vZGVjb250Lmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL212Lmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL29ueXgu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vb255
eGNfaW50LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL29ueXhkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL3Bvc3Rwcm9jLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3BwZmxhZ3MuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vcXVhbnRfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50ZXIuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYS5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhNHg0
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Nl
dHVwaW50cmFyZWNvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9zd2FweXYxMmJ1ZmZlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zeXN0ZW1kZXBlbmRlbnQuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdGhyZWFkaW5nLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3RyZWVjb2Rlci5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92cDhfZW50
cm9weW1vZGVkYXRhLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZmLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVtdi5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlcnRocmVhZGlu
Zy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIv
ZGV0b2tlbml6ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2RlY29kZXIvb255eGRfaW50LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZGVjb2Rlci90cmVlcmVhZGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0uaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jsb2NrLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ib29saHVmZi5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGN0X3ZhbHVlX2Nv
c3QuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L2RjdF92YWx1ZV90b2tlbnMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL2RlZmF1bHRjb2VmY291bnRzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWZyYW1lLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVp
bnRyYS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvZW5jb2RlbWIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL2VuY29kZW12LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9ldGhyZWFkaW5nLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9maXJzdHBhc3MuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVjb3N0cy5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbXJf
ZGlzc2ltLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9vbnl4X2ludC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvcGlja2ludGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9waWNrbHBmLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9xdWFudGl6ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Jkb3B0LmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9zZWdtZW50YXRpb24u
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Rv
a2VuaXplLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci90cmVld3JpdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9paHRfbmVvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYWxsb2Njb21tb24uaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Jsb2NrZC5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
Y29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9jb21tb25fZGF0YS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltdi5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW51
bXMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X2ZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfZnJhbWVfYnVmZmVycy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfaWRjdC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbG9vcGZpbHRlci5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbWZxZS5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbXYuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X212
cmVmX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfb255eGNfaW50LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0cHJvYy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcHBmbGFncy5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcHJlZF9jb21tb24uaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3F1
YW50X2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfcmVjb25pbnRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRyYS5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2NhbGUuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NjYW4uaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NlZ19jb21t
b24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X3RocmVhZF9jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X3RpbGVfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlZnJhbWUuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVtdi5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5
X2RlY29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9k
ZWNvZGVyL3ZwOV9kZXRva2VuaXplLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1YmV4cC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2pvYl9xdWV1ZS5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2FxX2N5Y2xpY3Jl
ZnJlc2guaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9iaXRzdHJlYW0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9ibG9jay5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2NvbnRleHRfdHJlZS5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Nvc3QuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNl
ci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2VuY29kZWZyYW1lLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFk
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfZXh0X3JhdGVjdHJsLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZmlyc3RwYXNzLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfam9iX3F1ZXVlLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbG9va2Fo
ZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfbWJncmFwaC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X21jb21wLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfbXVsdGlfdGhyZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbm9pc2VfZXN0aW1hdGUuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9w
YXJ0aXRpb25fbW9kZWxzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfcGlja2xwZi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2ttb2RlLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcXVhbnRpemUuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3Ry
bC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3JkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfcmRvcHQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9za2luX2RldGVjdGlvbi5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X3NwZWVkX2ZlYXR1cmVzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVyY29udGV4dC5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3RlbXBvcmFsX2Zp
bHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X3Rva2VuaXplLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9pZmFjZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9pbnRlcm5hbC92cHhfY29kZWNfaW50ZXJu
YWwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cDguaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cDhjeC5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOGR4LmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2NvZGVjLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2RlY29kZXIuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZW5jb2Rlci5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9leHRfcmF0ZWN0cmwu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZnJhbWVf
YnVmZmVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4
X2ltYWdlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4
X2ludGVnZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL2hpZ2hiZF9pZGN0X25lb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3RfbmVvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vbWVtX25lb24uaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1bV9uZW9uLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS90cmFuc3Bvc2VfbmVv
bi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
dnB4X2NvbnZvbHZlOF9uZW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X25lb25fYXNtLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlci5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRl
ci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3
cml0ZXJfYnVmZmVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2Z3ZF90eGZtLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2ludl90eGZtLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3Bvc3Rwcm9jLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL3Byb2IuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvcHNuci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9xdWFudGl6ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9za2luX2RldGVjdGlvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC90eGZtX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9jb21tb24u
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2Zp
bHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS9p
bmNsdWRlL3ZweF9tZW1faW50cm5sLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfbWVtL3ZweF9tZW0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9wb3J0cy9hcm0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9wb3J0cy9iaXRvcHMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9wb3J0cy9jb21waWxlcl9hdHRyaWJ1dGVzLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvZW1taW50cmluX2NvbXBhdC5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21lbS5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21lbV9v
cHMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9t
ZW1fb3BzX2FsaWduZWQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9wb3J0cy9taXBzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfcG9ydHMvbXN2Yy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3BvcnRzL3N0YXRpY19hc3NlcnQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9wb3J0cy9zeXN0ZW1fc3RhdGUuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfb25jZS5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3ZweF90aW1lci5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3g4Ni5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL3ZweF9zY2FsZS5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL3l2MTJjb25m
aWcuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL2Vu
ZGlhbl9pbmwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91
dGlsL3ZweF9hdG9taWNzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfdXRpbC92cHhfdGhyZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfdXRpbC92cHhfdGltZXN0YW1wLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfd3JpdGVfeXV2X2ZyYW1lLmgiLAorXQorbGli
dnB4X3NyY3NfYXJtX25lb25faGlnaGJkX2Fzc2VtYmx5ID0gWworICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0NHg0XzFfYWRkX25lb24uYXNtIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDR4
NF9hZGRfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2FybS9pZGN0X25lb24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9hcm0vaW50cmFwcmVkX25lb25fYXNtLmFzbSIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2xvb3BmaWx0ZXJfMTZfbmVv
bi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Fy
bS9sb29wZmlsdGVyXzRfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2FybS9sb29wZmlsdGVyXzhfbmVvbi5hc20iLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zYXZlX3JlZ19uZW9uLmFzbSIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9j
b252b2x2ZThfYXZnX2hvcml6X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfYXZnX2hv
cml6X2ZpbHRlcl90eXBlMl9uZW9uLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfYXZnX3ZlcnRfZmlsdGVyX3R5cGUx
X25lb24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vdnB4X2NvbnZvbHZlOF9hdmdfdmVydF9maWx0ZXJfdHlwZTJfbmVvbi5hc20iLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9s
dmU4X2hvcml6X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfaG9yaXpfZmlsdGVyX3R5
cGUyX25lb24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF92ZXJ0X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2
ZThfdmVydF9maWx0ZXJfdHlwZTJfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmVfYXZnX25lb25fYXNtLmFzbSIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9j
b252b2x2ZV9jb3B5X25lb25fYXNtLmFzbSIsCitdCitsaWJ2cHhfc3Jjc19hcm02NF9oaWdoYmQg
PSBbCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYWxs
b2Njb21tb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vYXJtL2xvb3BmaWx0ZXJfYXJtLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2JpbGluZWFycHJlZGljdF9uZW9uLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9u
L2NvcHltZW1fbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9hcm0vbmVvbi9kY19vbmx5X2lkY3RfYWRkX25lb24uYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vZGVxdWFudF9p
ZGN0X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vYXJtL25lb24vZGVxdWFudGl6ZWJfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9pZGN0X2Jsa19uZW9uLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9u
L2l3YWxzaF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2FybS9uZW9uL2xvb3BmaWx0ZXJzaW1wbGVob3Jpem9udGFsZWRnZV9uZW9uLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9u
ZW9uL2xvb3BmaWx0ZXJzaW1wbGV2ZXJ0aWNhbGVkZ2VfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9tYmxvb3BmaWx0ZXJf
bmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9hcm0vbmVvbi9zaG9ydGlkY3Q0eDRsbG1fbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9zaXh0YXBwcmVkaWN0X25lb24u
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJt
L25lb24vdnA4X2xvb3BmaWx0ZXJfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZGVxdWFudGl6ZS5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5LmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHltb2RlLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHlt
di5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9l
eHRlbmQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vZmlsdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2ZpbmRuZWFybXYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vZ2VuZXJpYy9zeXN0ZW1kZXBlbmRlbnQuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaWRjdF9ibGsuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaWRjdGxsbS5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29wZmlsdGVy
X2ZpbHRlcnMuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vbWJwaXRjaC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9tZnFlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL21vZGVjb250LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludGVyLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmEuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25p
bnRyYTR4NC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9ydGNkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL3NldHVwaW50cmFyZWNvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9zd2FweXYxMmJ1ZmZlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90cmVlY29kZXIuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X2xvb3BmaWx0ZXIuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X3Nr
aW5fZGV0ZWN0aW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZGVjb2Rlci9kYm9vbGh1ZmYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZWZyYW1lLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVtdi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGV0b2tlbml6ZS5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvb255eGRfaWYuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL3RocmVh
ZGluZy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvYXJtL25lb24vZGVub2lzaW5nX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9uL2Zhc3RxdWFudGl6ZWJfbmVvbi5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYXJtL25l
b24vc2hvcnRmZGN0X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9uL3ZwOF9zaG9ydHdhbHNoNHg0X25lb24uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2JpdHN0cmVhbS5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYm9v
bGh1ZmYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL2NvcHlfYy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvZGN0LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9kZW5vaXNpbmcuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWZyYW1lLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVpbnRyYS5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbWIuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW12LmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ldGhy
ZWFkaW5nLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9sb29rYWhlYWQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL21jb21wLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9tb2RlY29zdHMuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21yX2Rpc3NpbS5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pZi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2ludGVyLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNrbHBmLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yYXRl
Y3RybC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvcmRvcHQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL3NlZ21lbnRhdGlvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvdG9rZW5pemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3ZwOF9xdWFudGl6ZS5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3ZwOF9jeF9pZmFjZS5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3ZwOF9keF9pZmFjZS5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVv
bi92cDlfaGlnaGJkX2lodDE2eDE2X2FkZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9oaWdoYmRfaWh0NHg0X2Fk
ZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL2FybS9uZW9uL3ZwOV9oaWdoYmRfaWh0OHg4X2FkZF9uZW9uLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9paHQxNngx
Nl9hZGRfbmVvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0NHg0X2FkZF9uZW9uLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9paHQ4eDhfYWRk
X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vYXJtL25lb24vdnA5X2lodF9uZW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9hbGxvY2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYWxsb2Njb21tb24uaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Jsb2Nr
ZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfYmxvY2tkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9jb21tb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbl9kYXRhLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb25fZGF0YS5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weS5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50
cm9weS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfZW50cm9weW1vZGUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltb2RlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bXYuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltdi5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW51
bXMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X2ZpbHRlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfZmlsdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9mcmFtZV9idWZmZXJzLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9mcmFtZV9idWZmZXJzLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9pZGN0LmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9p
ZGN0LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9sb29wZmlsdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9sb29wZmlsdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tZnFlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tZnFlLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdi5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbXZyZWZfY29tbW9u
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9tdnJlZl9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X29ueXhjX2ludC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcG9zdHByb2MuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Bvc3Rwcm9jLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wcGZsYWdzLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9w
cmVkX2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfcHJlZF9jb21tb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3F1YW50X2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9uLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNv
bmludGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9yZWNvbmludGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludHJhLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludHJhLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9ydGNkLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FsZS5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
c2NhbGUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X3NjYW4uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X3NjYW4uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X3NlZ19jb21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NlZ19jb21tb24uaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RocmVhZF9jb21tb24u
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X3RocmVhZF9jb21tb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X3RpbGVfY29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aWxlX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZWZyYW1lLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlf
ZGVjb2RlZnJhbWUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9kZWNvZGVyL3ZwOV9kZWNvZGVtdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZW12LmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rlci5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZXIuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9k
ZXRva2VuaXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZGVjb2Rlci92cDlfZGV0b2tlbml6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RzdWJleHAuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kc3ViZXhwLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfam9iX3F1ZXVlLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlf
am9iX3F1ZXVlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci9hcm0vbmVvbi92cDlfZGVub2lzZXJfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvYXJtL25lb24vdnA5X2Vycm9yX25lb24u
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL2Fy
bS9uZW9uL3ZwOV9mcmFtZV9zY2FsZV9uZW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci9hcm0vbmVvbi92cDlfcXVhbnRpemVfbmVvbi5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Fx
X2N5Y2xpY3JlZnJlc2guYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9hcV9jeWNsaWNyZWZyZXNoLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYml0c3RyZWFtLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYml0c3RyZWFt
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfYmxvY2suaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9jb250ZXh0X3RyZWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9jb250ZXh0X3RyZWUuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9jb3N0LmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29zdC5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Rj
dC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2Rlbm9pc2VyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfZGVub2lzZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVmcmFtZS5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZWZyYW1lLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5j
b2RlbWIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9lbmNvZGVtYi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbXYuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVyLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2Rl
ci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2V0aHJlYWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
Zmlyc3RwYXNzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfZnJhbWVfc2NhbGUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9qb2JfcXVldWUuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhl
YWQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9tYmdyYXBoLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfbWNvbXAuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tY29tcC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X211bHRpX3RocmVhZC5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X211bHRpX3RocmVh
ZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X25vaXNlX2VzdGltYXRlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfbm9pc2VfZXN0aW1hdGUuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9wYXJ0aXRpb25fbW9kZWxzLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
cGlja2xwZi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X3BpY2tscGYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbW9kZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2ttb2RlLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcXVhbnRpemUuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9xdWFu
dGl6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X3JhdGVjdHJsLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfcmF0ZWN0cmwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JkLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZG9wdC5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jl
c2l6ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X3Jlc2l6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3NlZ21lbnRhdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NlZ21lbnRhdGlvbi5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NraW5fZGV0ZWN0
aW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfc2tpbl9kZXRlY3Rpb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zcGVlZF9mZWF0dXJlcy5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
c3ViZXhwLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfc3ViZXhwLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVyY29udGV4dC5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRleHQuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90
ZW1wb3JhbF9maWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV90b2tlbml6ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Rva2VuaXplLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3RyZWV3
cml0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlf
Y3hfaWZhY2UuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92
cDlfY3hfaWZhY2UuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS92cDlfZHhfaWZhY2UuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS92cDlfZHhfaWZhY2UuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS92cDlfaWZhY2VfY29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4L2ludGVybmFsL3ZweF9jb2RlY19pbnRlcm5hbC5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfY29kZWMuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2RlY29k
ZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4
X2VuY29kZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9z
cmMvdnB4X2ltYWdlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHgvdnA4LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnA4
Y3guaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cDhkeC5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9jb2RlYy5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9kZWNvZGVy
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2VuY29k
ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZnJh
bWVfYnVmZmVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgv
dnB4X2ltYWdlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgv
dnB4X2ludGVnZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYWRkX25vaXNlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FybS9hdmdfbmVvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9hcm0vYXZnX3ByZWRfbmVvbi5jIiwKQEAgLTE2MDEsMjgxMyArMzE4
OCwxMzA3IEBAIGxpYnZweF9zcmNzX2FybV9uZW9uID0gWwogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9mZGN0X3BhcnRpYWxfbmVvbi5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vZndkX3R4Zm1fbmVv
bi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
aGFkYW1hcmRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9hcm0vaGlnaGJkX2lkY3QxNngxNl9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lkY3QzMngzMl8xMDI0
X2FkZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9oaWdoYmRfaWRjdDMyeDMyXzEzNV9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lkY3QzMngzMl8zNF9h
ZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vaGlnaGJkX2lkY3QzMngzMl9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lkY3Q0eDRfYWRkX25lb24uYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hi
ZF9pZGN0OHg4X2FkZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS9oaWdoYmRfaW50cmFwcmVkX25lb24uYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF9sb29wZmlsdGVyX25l
b24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L2hpZ2hiZF92cHhfY29udm9sdmU4X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF92cHhfY29udm9sdmVfYXZnX25lb24uYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hi
ZF92cHhfY29udm9sdmVfY29weV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdoYmRfdnB4X2NvbnZvbHZlX25lb24uYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3QxNngxNl8x
X2FkZF9uZW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9pZGN0MTZ4MTZfYWRkX25lb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3QzMngzMl8xMzVfYWRkX25lb24uYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3QzMngzMl8x
X2FkZF9uZW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9pZGN0MzJ4MzJfMzRfYWRkX25lb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3QzMngzMl9hZGRfbmVvbi5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDR4NF8xX2Fk
ZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2FybS9pZGN0NHg0X2FkZF9uZW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2FybS9pZGN0OHg4XzFfYWRkX25lb24uYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3Q4eDhfYWRkX25lb24uYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3Rf
bmVvbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9h
cm0vaW50cmFwcmVkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvYXJtL21lbV9uZW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS9sb29wZmlsdGVyX25lb24uYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3F1YW50aXplX25lb24uYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3NhZDRkX25l
b24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L3NhZF9uZW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9zdWJwZWxfdmFyaWFuY2VfbmVvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc3VidHJhY3RfbmVvbi5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc3VtX25lb24uaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1bV9zcXVhcmVz
X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
YXJtL3RyYW5zcG9zZV9uZW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS92YXJpYW5jZV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X25lb24uaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2
ZThfbmVvbl9hc20uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYXJtL3ZweF9jb252b2x2ZThfbmVvbl9hc20uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfbmVvbi5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZv
bHZlX2F2Z19uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2FybS92cHhfY29udm9sdmVfY29weV9uZW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmVfbmVvbi5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X3NjYWxl
ZF9jb252b2x2ZThfbmVvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9hdmcuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYml0cmVhZGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2JpdHJlYWRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9idWZmZXIuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlci5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXJf
YnVmZmVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2JpdHdyaXRlcl9idWZmZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvZGVibG9jay5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9pbnRyYXByZWQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbG9vcGZpbHRlci5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wb3N0cHJvYy5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wcm9iLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Byb2IuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHNuci5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wc25yLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50aXplLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50aXplLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NhZC5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2luX2RldGVjdGlvbi5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2luX2RldGVj
dGlvbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9z
dWJ0cmFjdC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9zdW1fc3F1YXJlcy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC90eGZtX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2NvbnZvbHZlLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9kc3BfY29tbW9uLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9kc3BfcnRjZC5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfZmls
dGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVtL2lu
Y2x1ZGUvdnB4X21lbV9pbnRybmwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9tZW0vdnB4X21lbS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X21lbS92cHhfbWVtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfcG9ydHMvYXJtLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfcG9ydHMvYXJtX2NwdWRldGVjdC5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2JpdG9wcy5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2NvbXBpbGVyX2F0dHJpYnV0ZXMuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9lbW1pbnRy
aW5fY29tcGF0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
cG9ydHMvbWVtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
cG9ydHMvbWVtX29wcy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X3BvcnRzL21lbV9vcHNfYWxpZ25lZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3BvcnRzL21zdmMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9wb3J0cy9zdGF0aWNfYXNzZXJ0LmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvc3lzdGVtX3N0YXRlLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X29uY2UuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfdGltZXIu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5l
cmljL2dlbl9zY2FsZXJzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfc2NhbGUvZ2VuZXJpYy92cHhfc2NhbGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJjb25maWcuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJleHRl
bmQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92
cHhfc2NhbGUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9z
Y2FsZS92cHhfc2NhbGVfcnRjZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X3NjYWxlL3l2MTJjb25maWcuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF91dGlsL2VuZGlhbl9pbmwuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF9hdG9taWNzLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGltZXN0
YW1wLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92
cHhfd3JpdGVfeXV2X2ZyYW1lLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfdXRpbC92cHhfd3JpdGVfeXV2X2ZyYW1lLmgiLAotXQotbGlidnB4X3NyY3NfYXJt
X25lb25fYXNzZW1ibHkgPSBbCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXJtL2lkY3Q0eDRfMV9hZGRfbmVvbi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0NHg0X2FkZF9uZW9uLmFzbSIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3RfbmVv
bi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Fy
bS9pbnRyYXByZWRfbmVvbl9hc20uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9hcm0vbG9vcGZpbHRlcl8xNl9uZW9uLmFzbSIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2xvb3BmaWx0ZXJfNF9uZW9u
LmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L2xvb3BmaWx0ZXJfOF9uZW9uLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYXJtL3NhdmVfcmVnX25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9hdmdfaG9yaXpf
ZmlsdGVyX3R5cGUxX25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9hdmdfaG9yaXpfZmlsdGVyX3R5cGUyX25l
b24uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9h
cm0vdnB4X2NvbnZvbHZlOF9hdmdfdmVydF9maWx0ZXJfdHlwZTFfbmVvbi5hc20iLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4
X2F2Z192ZXJ0X2ZpbHRlcl90eXBlMl9uZW9uLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfaG9yaXpfZmlsdGVyX3R5
cGUxX25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9ob3Jpel9maWx0ZXJfdHlwZTJfbmVvbi5hc20iLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9s
dmU4X3ZlcnRfZmlsdGVyX3R5cGUxX25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF92ZXJ0X2ZpbHRlcl90eXBl
Ml9uZW9uLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL3ZweF9jb252b2x2ZV9hdmdfbmVvbl9hc20uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlX2NvcHlfbmVvbl9h
c20uYXNtIiwKLV0KLWxpYnZweF9zcmNzX2FybV9uZW9uX2NwdV9kZXRlY3QgPSBbCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYWxsb2Njb21tb24uYyIs
CitdCitsaWJ2cHhfc3Jjc19hcm02NF9oaWdoYmRfaGVhZGVycyA9IFsKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hbGxvY2NvbW1vbi5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbG9vcGZpbHRl
cl9hcm0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vYXJtL2xvb3BmaWx0ZXJfYXJtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2Jsb2NrZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vY29lZnVwZGF0ZXByb2JzLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2NvbW1vbi5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9kZWZhdWx0X2NvZWZf
cHJvYnMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vZGVxdWFudGl6ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9lbnRyb3B5LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL2VudHJvcHkuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW1vZGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW1vZGUuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW12LmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHltdi5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9leHRl
bmQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
ZXh0ZW5kLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2ZpbHRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9maWx0ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vZmluZG5lYXJtdi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2dlbmVyaWMvc3lzdGVtZGVwZW5kZW50LmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2hlYWRlci5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pZGN0
X2Jsay5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9pZGN0bGxtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2ludnRyYW5zLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2xvb3BmaWx0ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vbG9vcGZpbHRlcl9maWx0ZXJzLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21icGl0Y2guYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWZxZS5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tb2RlY29udC5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tb2RlY29u
dC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9t
di5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9v
bnl4LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L29ueXhjX2ludC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9vbnl4ZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9wb3N0cHJvYy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9wb3N0cHJvYy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9wcGZsYWdzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2NvbW1vbi5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9xdWFudF9jb21tb24uaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRl
ci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9y
ZWNvbmludGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL3JlY29uaW50cmEuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhNHg0LmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcnRjZC5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zZXR1cGludHJh
cmVjb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vc2V0dXBpbnRyYXJlY29uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3N3YXB5djEyYnVmZmVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3N3YXB5djEyYnVmZmVyLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3N5c3RlbWRlcGVuZGVudC5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90aHJl
YWRpbmcuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vdHJlZWNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL3RyZWVjb2Rlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi92cDhfZW50cm9weW1vZGVkYXRhLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9sb29wZmlsdGVyLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9za2luX2Rl
dGVjdGlvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi92cDhfc2tpbl9kZXRlY3Rpb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9kZWNvZGVyL2Rib29saHVmZi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZmLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVmcmFtZS5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlbXYu
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2Rl
Y29kZW12LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVj
b2Rlci9kZWNvZGVydGhyZWFkaW5nLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZGVjb2Rlci9kZXRva2VuaXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZXRva2VuaXplLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9vbnl4ZF9pZi5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvb255eGRfaW50Lmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci90aHJl
YWRpbmcuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNv
ZGVyL3RyZWVyZWFkZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL2JpdHN0cmVhbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvYml0c3RyZWFtLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ibG9jay5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYm9vbGh1ZmYuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jvb2xodWZmLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9jb3B5X2MuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RjdC5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGN0
X3ZhbHVlX2Nvc3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL2RjdF92YWx1ZV90b2tlbnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RlZmF1bHRjb2VmY291bnRzLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rlbm9pc2lu
Zy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
ZW5jb2RlZnJhbWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL2VuY29kZWZyYW1lLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVpbnRyYS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlaW50cmEuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW1iLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtYi5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5j
b2RlbXYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL2VuY29kZW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9ldGhyZWFkaW5nLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9ldGhyZWFkaW5nLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9maXJzdHBhc3MuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbG9va2FoZWFkLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tY29t
cC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
bWNvbXAuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL21vZGVjb3N0cy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvbW9kZWNvc3RzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9tcl9kaXNzaW0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21yX2Rpc3NpbS5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pZi5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pbnQuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tpbnRl
ci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
cGlja2ludGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9waWNrbHBmLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9waWNrbHBmLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9xdWFudGl6ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yZG9wdC5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmRvcHQuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3NlZ21lbnRh
dGlvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvc2VnbWVudGF0aW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci90b2tlbml6ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvdG9rZW5pemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3ZwOF9xdWFudGl6
ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3ZwOF9jeF9p
ZmFjZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3ZwOF9k
eF9pZmFjZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi9hcm0vbmVvbi92cDlfaWh0X25lb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2FsbG9jY29tbW9uLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9hbGxvY2NvbW1vbi5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYmxv
Y2tkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9ibG9ja2QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uX2RhdGEuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbl9kYXRhLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5LmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9l
bnRyb3B5LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9lbnRyb3B5bW9kZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltdi5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW12Lmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9l
bnVtcy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfZmlsdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9maWx0ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2lkY3Qu
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X2lkY3QuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X2xvb3BmaWx0ZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21mcWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21mcWUuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X212LmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdnJlZl9jb21t
b24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X212cmVmX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfb255eGNfaW50LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0cHJvYy5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcG9zdHByb2MuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3BwZmxhZ3Mu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X3ByZWRfY29tbW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9uLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9xdWFudF9jb21tb24uaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Jl
Y29uaW50ZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X3JlY29uaW50ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3J0Y2QuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NjYWxl
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9zY2FsZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfc2Nhbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfc2Nhbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGhyZWFkX2NvbW1v
bi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfdGhyZWFkX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9jb21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RpbGVfY29tbW9uLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlZnJhbWUu
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3Zw
OV9kZWNvZGVmcmFtZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2RlY29kZXIvdnA5X2RlY29kZW12LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlbXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVyLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rlci5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5
X2RldG9rZW5pemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9kZWNvZGVyL3ZwOV9kZXRva2VuaXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1YmV4cC5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RzdWJleHAuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9qb2JfcXVldWUu
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3Zw
OV9qb2JfcXVldWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9hcV9jeWNsaWNyZWZyZXNoLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVzaC5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2JpdHN0
cmVhbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2JpdHN0cmVhbS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2Jsb2NrLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
Y29zdC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2Nvc3QuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9kY3QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Rlbm9pc2VyLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlZnJhbWUuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9l
bmNvZGVmcmFtZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2VuY29kZW1iLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW12Lmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
ZW5jb2Rlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2VuY29kZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXRocmVhZC5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dGVuZC5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dF9yYXRl
Y3RybC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2V4dGVuZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2ZpcnN0cGFzcy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZyYW1lX3NjYWxlLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfam9iX3F1ZXVlLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbG9v
a2FoZWFkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfbG9va2FoZWFkLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfbWJncmFwaC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21jb21wLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWNvbXAuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tdWx0aV90aHJl
YWQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9tdWx0aV90aHJlYWQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGFy
dGl0aW9uX21vZGVscy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3BpY2tscGYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbHBmLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja21vZGUuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbW9kZS5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X3F1YW50aXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfcXVhbnRpemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJsLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmQuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZC5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jk
b3B0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfcmRvcHQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9yZXNpemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRp
b24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9za2luX2RldGVjdGlvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRfZmVhdHVyZXMuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9z
cGVlZF9mZWF0dXJlcy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3N1YmV4cC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRleHQuYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdmNf
bGF5ZXJjb250ZXh0LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfdGVtcG9yYWxfZmlsdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdG9rZW5pemUuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90b2tlbml6ZS5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Ry
ZWV3cml0ZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV90cmVld3JpdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1vbi5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9pbnRlcm5hbC92cHhfY29kZWNf
aW50ZXJuYWwuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9z
cmMvdnB4X2NvZGVjLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHgvc3JjL3ZweF9kZWNvZGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHgvc3JjL3ZweF9lbmNvZGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHgvc3JjL3ZweF9pbWFnZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4L3ZwOGN4LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHgvdnA4ZHguaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweC92cHhfY29kZWMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweC92cHhfZGVjb2Rlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4L3ZweF9lbmNvZGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHgvdnB4X2V4dF9yYXRlY3RybC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4L3ZweF9mcmFtZV9idWZmZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfaW1hZ2UuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfaW50ZWdlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hZGRfbm9pc2UuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF9pZGN0X25lb24uaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3Rf
bmVvbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9h
cm0vbWVtX25lb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYXJtL3N1bV9uZW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS90cmFuc3Bvc2VfbmVvbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9uZW9uLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9s
dmU4X25lb25fYXNtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2F2Zy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9iaXRyZWFkZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYml0cmVhZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2JpdHJlYWRlcl9idWZmZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyX2J1ZmZlci5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXIuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlcl9idWZm
ZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0
d3JpdGVyX2J1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9kZWJsb2NrLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2Z3ZF90eGZtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2Z3ZF90eGZtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2ludHJhcHJlZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZfdHhmbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZfdHhmbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9sb29wZmlsdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Bvc3Rwcm9jLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Byb2IuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHJvYi5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wc25yLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3BzbnIuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcXVhbnRpemUuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcXVhbnRpemUuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Avc2FkLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NraW5fZGV0ZWN0aW9uLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NraW5fZGV0ZWN0aW9u
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3N1YnRy
YWN0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3N1
bV9zcXVhcmVzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3R4Zm1fY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3ZhcmlhbmNlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3ZhcmlhbmNlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL3ZweF9jb252b2x2ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9jb21tb24uaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9ydGNkLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9maWx0ZXIu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9tZW0vaW5jbHVk
ZS92cHhfbWVtX2ludHJubC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X21lbS92cHhfbWVtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfbWVtL3ZweF9tZW0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9wb3J0cy9hcm0uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9wb3J0cy9hcm1fY3B1ZGV0ZWN0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYml0b3BzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvY29tcGlsZXJfYXR0cmlidXRlcy5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2VtbWludHJpbl9j
b21wYXQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0
cy9tZW0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0
cy9tZW1fb3BzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
cG9ydHMvbWVtX29wc19hbGlnbmVkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfcG9ydHMvbWlwcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X3BvcnRzL21zdmMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9wb3J0cy9zdGF0aWNfYXNzZXJ0LmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvc3lzdGVtX3N0YXRlLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X29uY2UuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfdGltZXIuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmlj
L2dlbl9zY2FsZXJzLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfc2NhbGUvZ2VuZXJpYy92cHhfc2NhbGUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJjb25maWcuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJleHRlbmQu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy94ODYu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhf
c2NhbGUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2Fs
ZS92cHhfc2NhbGVfcnRjZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3NjYWxlL3l2MTJjb25maWcuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF91dGlsL2VuZGlhbl9pbmwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF9hdG9taWNzLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGltZXN0YW1w
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhf
d3JpdGVfeXV2X2ZyYW1lLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfdXRpbC92cHhfd3JpdGVfeXV2X2ZyYW1lLmgiLAogXQotbGlidnB4X3NyY3NfYXJtX25l
b25fY3B1X2RldGVjdF9hc3NlbWJseSA9IFsKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDR4NF8xX2FkZF9uZW9uLmFzbSIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3Q0eDRfYWRkX25lb24u
YXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
aWRjdF9uZW9uLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYXJtL2ludHJhcHJlZF9uZW9uX2FzbS5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9sb29wZmlsdGVyXzE2X25lb24uYXNtIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vbG9vcGZpbHRl
cl80X25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9hcm0vbG9vcGZpbHRlcl84X25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc2F2ZV9yZWdfbmVvbi5hc20iLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X2F2
Z19ob3Jpel9maWx0ZXJfdHlwZTFfbmVvbi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X2F2Z19ob3Jpel9maWx0ZXJf
dHlwZTJfbmVvbi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2FybS92cHhfY29udm9sdmU4X2F2Z192ZXJ0X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9j
b252b2x2ZThfYXZnX3ZlcnRfZmlsdGVyX3R5cGUyX25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9ob3Jpel9m
aWx0ZXJfdHlwZTFfbmVvbi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X2hvcml6X2ZpbHRlcl90eXBlMl9uZW9uLmFz
bSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3Zw
eF9jb252b2x2ZThfdmVydF9maWx0ZXJfdHlwZTFfbmVvbi5hc20iLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X3ZlcnRfZmls
dGVyX3R5cGUyX25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlX2F2Z19uZW9uX2FzbS5hc20iLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmVfY29w
eV9uZW9uX2FzbS5hc20iLAotXQotbGlidnB4X3NyY3NfYXJtX25lb25fY3B1X2RldGVjdF9uZW9u
ID0gWwotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Fy
bS9uZW9uL2JpbGluZWFycHJlZGljdF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2NvcHltZW1fbmVvbi5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9kY19v
bmx5X2lkY3RfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vYXJtL25lb24vZGVxdWFudF9pZGN0X25lb24uYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vZGVxdWFudGl6
ZWJfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9hcm0vbmVvbi9pZGN0X2Jsa19uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2l3YWxzaF9uZW9uLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2xvb3Bm
aWx0ZXJzaW1wbGVob3Jpem9udGFsZWRnZV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2xvb3BmaWx0ZXJzaW1wbGV2ZXJ0
aWNhbGVkZ2VfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9hcm0vbmVvbi9tYmxvb3BmaWx0ZXJfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9zaG9ydGlkY3Q0eDRs
bG1fbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9hcm0vbmVvbi9zaXh0YXBwcmVkaWN0X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vdnA4X2xvb3BmaWx0ZXJfbmVv
bi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
YXJtL25lb24vZGVub2lzaW5nX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9uL2Zhc3RxdWFudGl6ZWJfbmVvbi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYXJtL25lb24v
c2hvcnRmZGN0X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL2FybS9uZW9uL3ZwOF9zaG9ydHdhbHNoNHg0X25lb24uYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25lb24vdnA5X2lo
dDE2eDE2X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9paHQ0eDRfYWRkX25lb24uYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25lb24vdnA5X2lodDh4
OF9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvYXJtL25lb24vdnA5X2Rlbm9pc2VyX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL2FybS9uZW9uL3ZwOV9lcnJvcl9uZW9u
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci9h
cm0vbmVvbi92cDlfZnJhbWVfc2NhbGVfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvYXJtL25lb24vdnA5X3F1YW50aXplX25lb24uYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2F2Z19u
ZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Fy
bS9hdmdfcHJlZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FybS9kZWJsb2NrX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2ZkY3QxNngxNl9uZW9uLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9mZGN0MzJ4MzJfbmVvbi5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vZmRjdF9u
ZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Fy
bS9mZGN0X3BhcnRpYWxfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9hcm0vZndkX3R4Zm1fbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGFkYW1hcmRfbmVvbi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDE2eDE2XzFfYWRk
X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
YXJtL2lkY3QxNngxNl9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyXzEzNV9hZGRfbmVvbi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyXzFfYWRk
X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
YXJtL2lkY3QzMngzMl8zNF9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyX2FkZF9uZW9uLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0OHg4XzFfYWRkX25l
b24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L2lkY3Q4eDhfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvYXJtL2ludHJhcHJlZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9xdWFudGl6ZV9uZW9uLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zYWQ0ZF9uZW9uLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zYWRfbmVv
bi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
c3VicGVsX3ZhcmlhbmNlX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYXJtL3N1YnRyYWN0X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1bV9zcXVhcmVzX25lb24uYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZhcmlhbmNlX25l
b24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L3ZweF9jb252b2x2ZV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS92cHhfc2NhbGVkX2NvbnZvbHZlOF9uZW9uLmMiLAotXQotbGlidnB4
X3NyY3NfYXJtNjQgPSBbCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vYWxsb2Njb21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vYWxsb2Njb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL2xvb3BmaWx0ZXJfYXJtLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9sb29wZmlsdGVy
X2FybS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9hcm0vbmVvbi9iaWxpbmVhcnByZWRpY3RfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9jb3B5bWVtX25lb24uYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24v
ZGNfb25seV9pZGN0X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2RlcXVhbnRfaWRjdF9uZW9uLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2RlcXVh
bnRpemViX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vYXJtL25lb24vaWRjdF9ibGtfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9pd2Fsc2hfbmVvbi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9s
b29wZmlsdGVyc2ltcGxlaG9yaXpvbnRhbGVkZ2VfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9sb29wZmlsdGVyc2ltcGxl
dmVydGljYWxlZGdlX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vYXJtL25lb24vbWJsb29wZmlsdGVyX25lb24uYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vc2hvcnRpZGN0
NHg0bGxtX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vYXJtL25lb24vc2l4dGFwcHJlZGljdF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL3ZwOF9sb29wZmlsdGVy
X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vYmxvY2tkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2Jsb2NrZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9jb2VmdXBkYXRlcHJvYnMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2RlZmF1bHRfY29lZl9wcm9icy5oIiwKK2xpYnZw
eF9zcmNzX2FybTY0X2hpZ2hiZF9hc3NlbWJseSA9IFtdCitsaWJ2cHhfc3Jjc19taXBzID0gWwor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FsbG9jY29t
bW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2Jsb2NrZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9kZXF1YW50aXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2VudHJvcHkuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vZW50cm9weS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bXYuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW12
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2V4
dGVuZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9leHRlbmQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vZmlsdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2ZpbHRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbmRuZWFybXYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZ2VuZXJpYy9zeXN0ZW1kZXBlbmRlbnQuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaGVhZGVy
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2lk
Y3RfYmxrLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2lkY3RsbG0uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vaW52dHJhbnMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vbG9vcGZpbHRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29wZmlsdGVyX2ZpbHRlcnMuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWJwaXRjaC5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tZnFlLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21vZGVjb250LmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21vZGVj
b250LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L212LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L29ueXguaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vb255eGNfaW50LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL29ueXhkLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3Bvc3Rwcm9jLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3BwZmxhZ3MuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcXVhbnRfY29tbW9uLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2NvbW1vbi5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmlu
dGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L3JlY29uaW50ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vcmVjb25pbnRyYS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYTR4NC5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ydGNkLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3NldHVwaW50
cmFyZWNvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9zZXR1cGludHJhcmVjb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZmZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZmZXIuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3lzdGVtZGVwZW5kZW50
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Ro
cmVhZGluZy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi90cmVlY29kZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vdHJlZWNvZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3ZwOF9lbnRyb3B5bW9kZWRhdGEuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X2xvb3BmaWx0ZXIuYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X3NraW5f
ZGV0ZWN0aW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZmLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kYm9vbGh1ZmYuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZWZyYW1lLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVt
di5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIv
ZGVjb2RlbXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9k
ZWNvZGVyL2RlY29kZXJ0aHJlYWRpbmcuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RldG9rZW5pemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RldG9rZW5pemUuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL29ueXhkX2lmLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9vbnl4ZF9pbnQu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL3Ro
cmVhZGluZy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Rl
Y29kZXIvdHJlZXJlYWRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvYXJtL25lb24vZGVub2lzaW5nX25lb24uYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9uL2Zhc3RxdWFudGl6
ZWJfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvYXJtL25lb24vc2hvcnRmZGN0X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9uL3ZwOF9zaG9ydHdhbHNoNHg0X25l
b24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L2JpdHN0cmVhbS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvYml0c3RyZWFtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9ibG9jay5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvYm9vbGh1ZmYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jvb2xodWZmLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9jb3B5X2MuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RjdC5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGN0X3ZhbHVlX2Nvc3Qu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rj
dF92YWx1ZV90b2tlbnMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL2RlZmF1bHRjb2VmY291bnRzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rlbm9pc2luZy5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlZnJhbWUu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Vu
Y29kZWZyYW1lLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9lbmNvZGVpbnRyYS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlaW50cmEuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW1iLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtYi5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbXYuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW12
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9l
dGhyZWFkaW5nLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9ldGhyZWFkaW5nLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9maXJzdHBhc3MuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbG9va2FoZWFkLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tY29tcC5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVjb3N0
cy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
bW9kZWNvc3RzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9tcl9kaXNzaW0uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL21yX2Rpc3NpbS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pZi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pbnQuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tpbnRlci5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2ludGVyLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNr
bHBmLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9waWNrbHBmLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9xdWFudGl6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yZG9wdC5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmRvcHQuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3NlZ21lbnRhdGlvbi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvc2VnbWVudGF0
aW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci90b2tlbml6ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvdG9rZW5pemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3ZwOF9xdWFudGl6ZS5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3ZwOF9jeF9pZmFjZS5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3ZwOF9keF9pZmFjZS5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVv
bi92cDlfaWh0MTZ4MTZfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25lb24vdnA5X2lodDR4NF9hZGRfbmVvbi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92
cDlfaWh0OHg4X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9paHRfbmVvbi5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYWxsb2Njb21tb24uYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2FsbG9j
Y29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9ibG9ja2QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X2Jsb2NrZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb25fZGF0YS5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uX2RhdGEu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X2VudHJvcHkuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X2VudHJvcHkuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltb2RlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW12LmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9l
bnRyb3B5bXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X2VudW1zLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9maWx0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZpbHRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZnJhbWVfYnVmZmVycy5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZnJhbWVfYnVm
ZmVycy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfaWRjdC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfaWRjdC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfbG9vcGZpbHRlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbG9vcGZpbHRlci5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbWZxZS5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbWZxZS5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbXYu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X212cmVmX2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfbXZyZWZfY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9vbnl4Y19pbnQuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Bvc3Rwcm9jLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0cHJv
Yy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfcHBmbGFncy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfcHJlZF9jb21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3ByZWRfY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9xdWFudF9jb21tb24uYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3F1YW50
X2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfcmVjb25pbnRlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRyYS5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRyYS5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
cnRjZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfc2NhbGUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X3NjYWxlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9zY2FuLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FuLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zZWdfY29tbW9uLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zZWdfY29tbW9uLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90
aHJlYWRfY29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV90aHJlYWRfY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aWxlX2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9jb21tb24uaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9k
ZWNvZGVmcmFtZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2RlY29kZXIvdnA5X2RlY29kZWZyYW1lLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlbXYuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVtdi5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZXIu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3Zw
OV9kZWNvZGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZGVjb2Rlci92cDlfZGV0b2tlbml6ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RldG9rZW5pemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kc3ViZXhwLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1YmV4cC5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5
X2pvYl9xdWV1ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2RlY29kZXIvdnA5X2pvYl9xdWV1ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvYXJtL25lb24vdnA5X2Rlbm9pc2VyX25lb24uYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL2FybS9uZW9uL3Zw
OV9lcnJvcl9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci9hcm0vbmVvbi92cDlfZnJhbWVfc2NhbGVfbmVvbi5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvYXJtL25lb24vdnA5X3F1YW50
aXplX25lb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9hcV9jeWNsaWNyZWZyZXNoLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVzaC5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2JpdHN0cmVh
bS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2JpdHN0cmVhbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2Jsb2NrLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29z
dC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2Nvc3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9kY3QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Rlbm9pc2VyLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlZnJhbWUuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNv
ZGVmcmFtZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2VuY29kZW1iLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW12LmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5j
b2Rlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2VuY29kZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXRocmVhZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dF9yYXRlY3RybC5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dGVu
ZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2V4dGVuZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2ZpcnN0cGFzcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZyYW1lX3NjYWxlLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfam9iX3F1ZXVlLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbG9va2Fo
ZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfbG9va2FoZWFkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfbWJncmFwaC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21jb21wLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWNvbXAuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tdWx0aV90aHJlYWQu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9tdWx0aV90aHJlYWQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGFydGl0
aW9uX21vZGVscy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3BpY2tscGYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbHBmLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja21vZGUuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbW9kZS5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3F1
YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfcXVhbnRpemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJsLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmQuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZC5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jkb3B0
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfcmRvcHQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9yZXNpemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24u
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9za2luX2RldGVjdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRfZmVhdHVyZXMuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zcGVl
ZF9mZWF0dXJlcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3N1YmV4cC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRleHQuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdmNfbGF5
ZXJjb250ZXh0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfdGVtcG9yYWxfZmlsdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdG9rZW5pemUuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90b2tlbml6ZS5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3RyZWV3
cml0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV90cmVld3JpdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvdnA5X2N4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9pbnRlcm5hbC92cHhfY29kZWNfaW50
ZXJuYWwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMv
dnB4X2NvZGVjLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgv
c3JjL3ZweF9kZWNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvc3JjL3ZweF9lbmNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvc3JjL3ZweF9pbWFnZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4L3ZwOC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4L3ZwOGN4LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvdnA4ZHguaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eC92cHhfY29kZWMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eC92cHhfZGVjb2Rlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4L3ZweF9lbmNvZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvdnB4X2ZyYW1lX2J1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4L3ZweF9pbWFnZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4L3ZweF9pbnRlZ2VyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FkZF9ub2lzZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vYXZnX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2F2Z19wcmVkX25lb24uYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2RlYmxvY2tfbmVv
bi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
ZmRjdDE2eDE2X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXJtL2ZkY3QzMngzMl9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2FybS9mZGN0X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2ZkY3RfcGFydGlhbF9uZW9uLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9md2RfdHhm
bV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2FybS9oYWRhbWFyZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS9pZGN0MTZ4MTZfMV9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDE2eDE2X2FkZF9uZW9uLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0
MzJ4MzJfMTM1X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS9pZGN0MzJ4MzJfMV9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyXzM0X2FkZF9uZW9u
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9p
ZGN0MzJ4MzJfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvYXJtL2lkY3Q0eDRfMV9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDR4NF9hZGRfbmVvbi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDh4OF8x
X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9pZGN0OHg4X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0X25lb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2ludHJhcHJlZF9uZW9uLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9sb29wZmlsdGVyX25l
b24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L21lbV9uZW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9xdWFudGl6ZV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2FybS9zYWQ0ZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zYWRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc3VicGVsX3ZhcmlhbmNlX25lb24u
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1
YnRyYWN0X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYXJtL3N1bV9uZW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS9zdW1fc3F1YXJlc19uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS90cmFuc3Bvc2VfbmVvbi5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdmFyaWFuY2VfbmVv
bi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
dnB4X2NvbnZvbHZlOF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X25lb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZV9hdmdfbmVvbi5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4
X2NvbnZvbHZlX2NvcHlfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9zY2FsZWRfY29udm9sdmU4X25l
b24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXZn
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJl
YWRlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9i
aXRyZWFkZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYml0cmVhZGVyX2J1ZmZlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXIuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyX2J1ZmZlci5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXJfYnVm
ZmVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Rl
YmxvY2suYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
ZndkX3R4Zm0uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvZndkX3R4Zm0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvaW50cmFwcmVkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2ludl90eGZtLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2ludl90eGZtLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2xvb3BmaWx0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvcG9zdHByb2MuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHJvYi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wcm9iLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL3BzbnIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvcHNuci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9xdWFudGl6ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9xdWFudGl6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9zYWQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3Avc2tpbl9kZXRlY3Rpb24uYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Avc2tpbl9kZXRlY3Rpb24uaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Avc3VidHJhY3QuYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Avc3VtX3NxdWFyZXMu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdHhmbV9j
b21tb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
dmFyaWFuY2UuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvdmFyaWFuY2UuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvdnB4X2NvbnZvbHZlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3ZweF9jb252b2x2ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfZHNwX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfZHNwX3J0Y2QuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2ZpbHRlci5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS9pbmNsdWRlL3ZweF9tZW1f
aW50cm5sLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVt
L3ZweF9tZW0uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9t
ZW0vdnB4X21lbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X3BvcnRzL2FybS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X3BvcnRzL2FybV9jcHVkZXRlY3QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9wb3J0cy9iaXRvcHMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9wb3J0cy9jb21waWxlcl9hdHRyaWJ1dGVzLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvZW1taW50cmluX2NvbXBhdC5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21lbS5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21lbV9vcHMu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9tZW1f
b3BzX2FsaWduZWQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9wb3J0cy9tc3ZjLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfcG9ydHMvc3RhdGljX2Fzc2VydC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X3BvcnRzL3N5c3RlbV9zdGF0ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3ZweF9vbmNlLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X3RpbWVyLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbWlwc19jcHVkZXRlY3QuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmlj
L2dlbl9zY2FsZXJzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfc2NhbGUvZ2VuZXJpYy92cHhfc2NhbGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJjb25maWcuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJleHRlbmQu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhf
c2NhbGUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2Fs
ZS92cHhfc2NhbGVfcnRjZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3NjYWxlL3l2MTJjb25maWcuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF91dGlsL2VuZGlhbl9pbmwuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF9hdG9taWNzLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGltZXN0YW1w
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhf
d3JpdGVfeXV2X2ZyYW1lLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfdXRpbC92cHhfd3JpdGVfeXV2X2ZyYW1lLmgiLAogXQotbGlidnB4X3NyY3NfYXJtNjRf
YXNzZW1ibHkgPSBbXQotbGlidnB4X3NyY3NfYXJtX25lb25faGlnaGJkID0gWwotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FsbG9jY29tbW9uLmMiLAor
bGlidnB4X3NyY3NfbWlwc19oZWFkZXJzID0gWwogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL2FsbG9jY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9sb29wZmlsdGVyX2FybS5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbG9vcGZp
bHRlcl9hcm0uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vYXJtL25lb24vYmlsaW5lYXJwcmVkaWN0X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vY29weW1lbV9uZW9uLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9u
ZW9uL2RjX29ubHlfaWRjdF9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9kZXF1YW50X2lkY3RfbmVvbi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9k
ZXF1YW50aXplYl9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2FybS9uZW9uL2lkY3RfYmxrX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vaXdhbHNoX25lb24uYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25l
b24vbG9vcGZpbHRlcnNpbXBsZWhvcml6b250YWxlZGdlX25lb24uYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vbG9vcGZpbHRlcnNp
bXBsZXZlcnRpY2FsZWRnZV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL21ibG9vcGZpbHRlcl9uZW9uLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL3Nob3J0
aWRjdDR4NGxsbV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2FybS9uZW9uL3NpeHRhcHByZWRpY3RfbmVvbi5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi92cDhfbG9vcGZp
bHRlcl9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2Jsb2NrZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9ibG9ja2QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vY29lZnVwZGF0ZXByb2JzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9kZWZhdWx0X2NvZWZfcHJvYnMuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZGVxdWFudGl6
ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9l
bnRyb3B5LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2VudHJvcHkuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vZW50cm9weW1vZGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vZW50cm9weW1vZGUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW12LmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHltdi5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9leHRlbmQuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZXh0ZW5kLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbHRlci5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maWx0
ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
ZmluZG5lYXJtdi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9maW5kbmVhcm12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL2dlbmVyaWMvc3lzdGVtZGVwZW5kZW50LmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2hlYWRlci5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pZGN0X2Jsay5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pZGN0bGxtLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ludnRy
YW5zLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2xvb3BmaWx0ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vbG9vcGZpbHRlcl9maWx0ZXJzLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL21icGl0Y2guYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWZxZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tb2RlY29udC5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tb2RlY29udC5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tdi5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9vbnl4LmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL29ueXhjX2ludC5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9vbnl4
ZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9w
b3N0cHJvYy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9wb3N0cHJvYy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9wcGZsYWdzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3F1YW50X2NvbW1vbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9xdWFudF9jb21tb24uaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRlci5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludGVyLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29u
aW50cmEuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vcmVjb25pbnRyYS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9yZWNvbmludHJhNHg0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcnRjZC5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zZXR1cGludHJhcmVjb24uYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc2V0dXBpbnRy
YXJlY29uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL3N3YXB5djEyYnVmZmVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3N3YXB5djEyYnVmZmVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3N5c3RlbWRlcGVuZGVudC5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90aHJlYWRpbmcuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdHJlZWNvZGVy
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Ry
ZWVjb2Rlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi92cDhfZW50cm9weW1vZGVkYXRhLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9sb29wZmlsdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92cDhfc2tp
bl9kZXRlY3Rpb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9kZWNvZGVyL2Rib29saHVmZi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZmLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVmcmFtZS5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlbXYuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZW12LmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVy
dGhyZWFkaW5nLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZGVjb2Rlci9kZXRva2VuaXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZGVjb2Rlci9kZXRva2VuaXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9vbnl4ZF9pZi5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvb255eGRfaW50LmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci90aHJlYWRpbmcuYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL3RyZWVyZWFk
ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L2FybS9uZW9uL2Rlbm9pc2luZ19uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9hcm0vbmVvbi9mYXN0cXVhbnRpemViX25lb24uYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9u
L3Nob3J0ZmRjdF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9hcm0vbmVvbi92cDhfc2hvcnR3YWxzaDR4NF9uZW9uLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0uYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2JpdHN0
cmVhbS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvYmxvY2suaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL2Jvb2xodWZmLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9ib29saHVmZi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvY29weV9jLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RjdF92YWx1ZV9jb3N0LmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3RfdmFsdWVfdG9rZW5z
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9k
ZWZhdWx0Y29lZmNvdW50cy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvZGVub2lzaW5nLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWZyYW1lLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVmcmFtZS5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2Rl
aW50cmEuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL2VuY29kZWludHJhLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9lbmNvZGVtYi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbWIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW12LmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtdi5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZXRocmVhZGluZy5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZXRocmVh
ZGluZy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvZmlyc3RwYXNzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9sb29rYWhlYWQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21jb21wLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tb2RlY29zdHMuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVjb3N0cy5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbXJfZGlz
c2ltLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9tcl9kaXNzaW0uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL29ueXhfaWYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL29ueXhfaW50LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNraW50ZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tpbnRlci5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xwZi5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xwZi5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcXVhbnRp
emUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L3JhdGVjdHJsLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9yYXRlY3RybC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvcmRvcHQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL3Jkb3B0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9zZWdtZW50YXRpb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3NlZ21lbnRhdGlvbi5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdG9rZW5pemUuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Rva2Vu
aXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci90cmVld3JpdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci90cmVld3JpdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci92cDhfcXVhbnRpemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC92cDhfY3hfaWZhY2UuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC92cDhfZHhfaWZhY2UuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25lb24vdnA5X2hpZ2hiZF9p
aHQxNngxNl9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaGlnaGJkX2lodDR4NF9hZGRfbmVvbi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92
cDlfaGlnaGJkX2lodDh4OF9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0MTZ4MTZfYWRkX25lb24uYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25l
b24vdnA5X2lodDR4NF9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0OHg4X2FkZF9uZW9uLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3Zw
OV9paHRfbmVvbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfYWxsb2Njb21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2FsbG9jY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9ibG9ja2QuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Jsb2NrZC5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29t
bW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9jb21tb25fZGF0YS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uX2RhdGEuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHkuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHkuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHlt
b2RlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9lbnRyb3B5bW9kZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW12LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bXYuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudW1zLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9maWx0ZXIuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Zp
bHRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfZnJhbWVfYnVmZmVycy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfZnJhbWVfYnVmZmVycy5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfaWRjdC5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfaWRjdC5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbG9vcGZpbHRl
ci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfbG9vcGZpbHRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfbWZxZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfbWZxZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X212cmVmX2NvbW1vbi5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbXZyZWZfY29tbW9u
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9vbnl4Y19pbnQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X3Bvc3Rwcm9jLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0cHJvYy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcHBmbGFncy5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcHJlZF9jb21tb24uYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3By
ZWRfY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9xdWFudF9jb21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3F1YW50X2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRlci5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25p
bnRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfcmVjb25pbnRyYS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRyYS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcnRjZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2NhbGUuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NjYWxlLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FuLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9z
Y2FuLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9zZWdfY29tbW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9zZWdfY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aHJlYWRfY29tbW9uLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aHJlYWRfY29tbW9u
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV90aWxlX2NvbW1vbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfdGlsZV9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVmcmFtZS5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZWZyYW1lLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlf
ZGVjb2RlbXYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9k
ZWNvZGVyL3ZwOV9kZWNvZGVtdi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVyLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGV0b2tlbml6ZS5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2Rl
dG9rZW5pemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9k
ZWNvZGVyL3ZwOV9kc3ViZXhwLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZGVjb2Rlci92cDlfZHN1YmV4cC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2pvYl9xdWV1ZS5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2pvYl9xdWV1ZS5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvYXJtL25l
b24vdnA5X2Rlbm9pc2VyX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL2FybS9uZW9uL3ZwOV9mcmFtZV9zY2FsZV9uZW9uLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci9hcm0vbmVvbi92
cDlfcXVhbnRpemVfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2FxX2N5Y2xpY3JlZnJlc2guYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9hcV9jeWNsaWNyZWZyZXNoLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
Yml0c3RyZWFtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfYml0c3RyZWFtLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfYmxvY2suaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9jb250ZXh0X3RyZWUuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9jb250ZXh0X3Ry
ZWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9jb3N0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfY29zdC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2RjdC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Rlbm9pc2VyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZGVub2lzZXIuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVmcmFt
ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2VuY29kZWZyYW1lLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtYi5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW12LmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2Rl
bXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9lbmNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfZW5jb2Rlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V0aHJlYWQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0
X3JhdGVjdHJsLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfZXh0ZW5kLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfZmlyc3RwYXNzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZnJhbWVfc2NhbGUuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9qb2JfcXVldWUu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9sb29rYWhlYWQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tYmdyYXBoLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWNvbXAuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tY29tcC5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X211bHRp
X3RocmVhZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X211bHRpX3RocmVhZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbm9pc2VfZXN0aW1hdGUu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9wYXJ0aXRpb25fbW9kZWxzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfcGlja2xwZi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2tscGYuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbW9kZS5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2tt
b2RlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfcXVhbnRpemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9xdWFudGl6ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJsLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmF0ZWN0cmwuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZC5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jk
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfcmRvcHQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9yZG9wdC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3Jlc2l6ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jlc2l6ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NlZ21lbnRhdGlvbi5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NlZ21l
bnRhdGlvbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc2tpbl9kZXRlY3Rpb24uaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zcGVlZF9mZWF0dXJl
cy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3NwZWVkX2ZlYXR1cmVzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVyY29udGV4dC5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X3N2Y19sYXllcmNvbnRleHQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV90ZW1wb3JhbF9maWx0ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90b2tlbml6ZS5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Rva2VuaXpl
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfdHJlZXdyaXRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3RyZWV3cml0ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS92cDlfY3hfaWZhY2UuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfY3hfaWZhY2UuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfZHhfaWZhY2UuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfZHhfaWZhY2UuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfaWZhY2VfY29tbW9uLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1vbi5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L2ludGVybmFsL3ZweF9j
b2RlY19pbnRlcm5hbC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4L3NyYy92cHhfY29kZWMuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC9zcmMvdnB4X2RlY29kZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweC9zcmMvdnB4X2VuY29kZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2ltYWdlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnA4LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHgvdnA4Y3guaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweC92cDhkeC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4L3ZweF9jb2RlYy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4L3ZweF9kZWNvZGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvdnB4X2VuY29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweC92cHhfZXh0X3JhdGVjdHJsLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2ZyYW1lX2J1ZmZlci5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbWFnZS5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbnRlZ2VyLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FkZF9ub2lzZS5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vYXZnX25lb24uYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2F2Z19wcmVk
X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
YXJtL2RlYmxvY2tfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9hcm0vZmRjdDE2eDE2X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2ZkY3QzMngzMl9uZW9uLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9mZGN0X25lb24uYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2ZkY3RfcGFy
dGlhbF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9md2RfdHhmbV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2FybS9oYWRhbWFyZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdoYmRfaWRjdDE2eDE2X2FkZF9uZW9u
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9o
aWdoYmRfaWRjdDMyeDMyXzEwMjRfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF9pZGN0MzJ4MzJfMTM1X2FkZF9uZW9u
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9o
aWdoYmRfaWRjdDMyeDMyXzM0X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdoYmRfaWRjdDMyeDMyX2FkZF9uZW9uLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdoYmRf
aWRjdDR4NF9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lkY3Q4eDhfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF9pZGN0X25lb24uaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hi
ZF9pbnRyYXByZWRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2xvb3BmaWx0ZXJfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX3ZweF9jb252b2x2ZThf
bmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9h
cm0vaGlnaGJkX3ZweF9jb252b2x2ZV9hdmdfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX3ZweF9jb252b2x2ZV9jb3B5X25l
b24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L2hpZ2hiZF92cHhfY29udm9sdmVfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDE2eDE2XzFfYWRkX25lb24uYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3QxNngxNl9hZGRf
bmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9h
cm0vaWRjdDMyeDMyXzEzNV9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyXzFfYWRkX25lb24uYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3QzMngzMl8zNF9h
ZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vaWRjdDMyeDMyX2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0OHg4XzFfYWRkX25lb24uYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3Q4eDhfYWRkX25lb24u
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lk
Y3RfbmVvbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vaW50cmFwcmVkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYXJtL21lbV9uZW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2FybS9xdWFudGl6ZV9uZW9uLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zYWQ0ZF9uZW9uLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zYWRfbmVvbi5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc3Vi
cGVsX3ZhcmlhbmNlX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvYXJtL3N1YnRyYWN0X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1bV9uZW9uLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zdW1fc3F1YXJlc19uZW9uLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS90cmFuc3Bv
c2VfbmVvbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vdmFyaWFuY2VfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9uZW9uLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X25lb25fYXNt
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92
cHhfY29udm9sdmU4X25lb25fYXNtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmVfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X3NjYWxlZF9jb252b2x2ZThf
bmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9h
dmcuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0
cmVhZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2JpdHJlYWRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9idWZmZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlci5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXJfYnVmZmVyLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlcl9i
dWZmZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
ZGVibG9jay5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9md2RfdHhmbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9md2RfdHhmbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9pbnRyYXByZWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvaW52X3R4Zm0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvbG9vcGZpbHRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wb3N0cHJvYy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wcm9iLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Byb2IuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHNuci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wc25yLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50aXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50aXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NhZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2luX2RldGVjdGlvbi5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2luX2RldGVjdGlvbi5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9zdWJ0cmFjdC5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9zdW1fc3F1YXJl
cy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC90eGZt
X2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC92YXJpYW5jZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC92YXJpYW5jZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC92cHhfY29udm9sdmUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvdnB4X2NvbnZvbHZlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9kc3BfY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9kc3BfcnRjZC5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfZmlsdGVyLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVtL2luY2x1ZGUvdnB4X21l
bV9pbnRybmwuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9t
ZW0vdnB4X21lbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X21lbS92cHhfbWVtLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfcG9ydHMvYXJtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfcG9ydHMvYXJtX2NwdWRldGVjdC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X3BvcnRzL2FzbWRlZnNfbW1pLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYml0b3BzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvY29tcGlsZXJfYXR0cmlidXRlcy5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2VtbWludHJpbl9j
b21wYXQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0
cy9tZW0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0
cy9tZW1fb3BzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
cG9ydHMvbWVtX29wc19hbGlnbmVkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfcG9ydHMvbWlwcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X3BvcnRzL21zdmMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9wb3J0cy9zdGF0aWNfYXNzZXJ0LmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvc3lzdGVtX3N0YXRlLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X29uY2UuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfdGltZXIuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmlj
L2dlbl9zY2FsZXJzLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfc2NhbGUvZ2VuZXJpYy92cHhfc2NhbGUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJjb25maWcuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJleHRlbmQu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhf
c2NhbGUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2Fs
ZS92cHhfc2NhbGVfcnRjZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3NjYWxlL3l2MTJjb25maWcuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF91dGlsL2VuZGlhbl9pbmwuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF9hdG9taWNzLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGltZXN0YW1w
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhf
d3JpdGVfeXV2X2ZyYW1lLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfdXRpbC92cHhfd3JpdGVfeXV2X2ZyYW1lLmgiLAotXQotbGlidnB4X3NyY3NfYXJtX25l
b25faGlnaGJkX2Fzc2VtYmx5ID0gWwotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS9pZGN0NHg0XzFfYWRkX25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDR4NF9hZGRfbmVvbi5hc20i
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0
X25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vaW50cmFwcmVkX25lb25fYXNtLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2xvb3BmaWx0ZXJfMTZfbmVvbi5hc20iLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9sb29wZmlsdGVyXzRf
bmVvbi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2FybS9sb29wZmlsdGVyXzhfbmVvbi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS9zYXZlX3JlZ19uZW9uLmFzbSIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfYXZnX2hv
cml6X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfYXZnX2hvcml6X2ZpbHRlcl90eXBl
Ml9uZW9uLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL3ZweF9jb252b2x2ZThfYXZnX3ZlcnRfZmlsdGVyX3R5cGUxX25lb24uYXNtIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZv
bHZlOF9hdmdfdmVydF9maWx0ZXJfdHlwZTJfbmVvbi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X2hvcml6X2ZpbHRl
cl90eXBlMV9uZW9uLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfaG9yaXpfZmlsdGVyX3R5cGUyX25lb24uYXNtIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2Nv
bnZvbHZlOF92ZXJ0X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfdmVydF9maWx0ZXJf
dHlwZTJfbmVvbi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2FybS92cHhfY29udm9sdmVfYXZnX25lb25fYXNtLmFzbSIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZV9jb3B5X25l
b25fYXNtLmFzbSIsCi1dCi1saWJ2cHhfc3Jjc19hcm02NF9oaWdoYmQgPSBbCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYWxsb2Njb21tb24uYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYWxsb2Njb21t
b24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
YXJtL2xvb3BmaWx0ZXJfYXJtLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL2FybS9sb29wZmlsdGVyX2FybS5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9iaWxpbmVhcnByZWRpY3Rf
bmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9hcm0vbmVvbi9jb3B5bWVtX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vZGNfb25seV9pZGN0X2FkZF9uZW9uLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9u
L2RlcXVhbnRfaWRjdF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL2FybS9uZW9uL2RlcXVhbnRpemViX25lb24uYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vaWRjdF9ibGtf
bmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9hcm0vbmVvbi9pd2Fsc2hfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9sb29wZmlsdGVyc2ltcGxlaG9yaXpvbnRhbGVk
Z2VfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9hcm0vbmVvbi9sb29wZmlsdGVyc2ltcGxldmVydGljYWxlZGdlX25lb24uYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vbWJs
b29wZmlsdGVyX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vYXJtL25lb24vc2hvcnRpZGN0NHg0bGxtX25lb24uYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vc2l4dGFwcHJl
ZGljdF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2FybS9uZW9uL3ZwOF9sb29wZmlsdGVyX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy94ODYuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhfc2NhbGUuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS95djEyY29uZmlnLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC9lbmRpYW5faW5sLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfYXRv
bWljcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwv
dnB4X3RocmVhZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X3V0aWwvdnB4X3RpbWVzdGFtcC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X3V0aWwvdnB4X3dyaXRlX3l1dl9mcmFtZS5oIiwKK10KK2xpYnZweF9zcmNzX21p
cHNfYXNzZW1ibHkgPSBbXQorbGlidnB4X3NyY3NfbmFjbCA9IFsKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hbGxvY2NvbW1vbi5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYmxvY2tkLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2NvZWZ1cGRh
dGVwcm9icy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vZGVmYXVsdF9jb2VmX3Byb2JzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL2RlcXVhbnRpemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weS5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5LmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHltb2RlLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJv
cHltb2RlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2VudHJvcHltdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9lbnRyb3B5bXYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vZXh0ZW5kLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL2V4dGVuZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maWx0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZmlsdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbmRuZWFybXYuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZmluZG5lYXJtdi5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9nZW5lcmlj
L3N5c3RlbWRlcGVuZGVudC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9oZWFkZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vaWRjdF9ibGsuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaWRjdGxsbS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pbnZ0cmFucy5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29wZmlsdGVyLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2xvb3BmaWx0ZXJfZmls
dGVycy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9tYnBpdGNoLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL21mcWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vbW9kZWNvbnQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vbW9kZWNvbnQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vbXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vb255eC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9vbnl4Y19pbnQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vb255eGQuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcG9zdHByb2MuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcG9zdHByb2MuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcHBmbGFncy5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9xdWFudF9j
b21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vcXVhbnRfY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3JlY29uaW50ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmEuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYTR4
NC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9y
ZWNvbmludHJhNHg0LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL3J0Y2QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vc2V0dXBpbnRyYXJlY29uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3NldHVwaW50cmFyZWNvbi5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zd2FweXYxMmJ1ZmZlci5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zd2FweXYx
MmJ1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9zeXN0ZW1kZXBlbmRlbnQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vdGhyZWFkaW5nLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3RyZWVjb2Rlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90cmVlY29kZXIuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X2VudHJvcHltb2RlZGF0
YS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92
cDhfbG9vcGZpbHRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi92cDhfc2tpbl9kZXRlY3Rpb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X3NraW5fZGV0ZWN0aW9uLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kYm9vbGh1ZmYuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2Rib29s
aHVmZi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29k
ZXIvZGVjb2RlZnJhbWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9kZWNvZGVyL2RlY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVtdi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlcnRocmVhZGluZy5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGV0b2tlbml6ZS5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGV0b2tl
bml6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29k
ZXIvb255eGRfaWYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9kZWNvZGVyL29ueXhkX2ludC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2RlY29kZXIvdGhyZWFkaW5nLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZGVjb2Rlci90cmVlcmVhZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9hcm0vbmVvbi9kZW5vaXNpbmdfbmVv
bi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
YXJtL25lb24vZmFzdHF1YW50aXplYl9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9hcm0vbmVvbi9zaG9ydGZkY3RfbmVvbi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYXJtL25lb24v
dnA4X3Nob3J0d2Fsc2g0eDRfbmVvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvYml0c3RyZWFtLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0uaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jsb2NrLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ib29saHVmZi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYm9vbGh1ZmYu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Nv
cHlfYy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvZGN0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9kY3RfdmFsdWVfY29zdC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvZGN0X3ZhbHVlX3Rva2Vucy5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGVmYXVsdGNvZWZjb3VudHMuaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rlbm9pc2lu
Zy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
ZGVub2lzaW5nLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9lbmNvZGVmcmFtZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlZnJhbWUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWludHJhLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVpbnRyYS5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbWIu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Vu
Y29kZW1iLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9lbmNvZGVtdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvZW5jb2RlbXYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL2V0aHJlYWRpbmcuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2V0aHJlYWRpbmcuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2ZpcnN0cGFzcy5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbG9va2FoZWFkLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9sb29r
YWhlYWQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL21jb21wLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9tY29tcC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvbW9kZWNvc3RzLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9tb2RlY29zdHMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21yX2Rpc3NpbS5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbXJfZGlzc2ltLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9vbnl4X2lmLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9vbnl4X2lu
dC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
cGlja2ludGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9waWNraW50ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL3BpY2tscGYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tscGYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3F1YW50aXplLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yYXRlY3RybC5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwuaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Jkb3B0LmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yZG9w
dC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
c2VnbWVudGF0aW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9zZWdtZW50YXRpb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Rva2VuaXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci90b2tlbml6ZS5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdyaXRlci5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdyaXRlci5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdnA4
X3F1YW50aXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
dnA4X2N4X2lmYWNlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvdnA4X2R4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9oaWdoYmRfaWh0MTZ4MTZfYWRkX25lb24uYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25lb24v
dnA5X2hpZ2hiZF9paHQ0eDRfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25lb24vdnA5X2hpZ2hiZF9paHQ4eDhfYWRkX25l
b24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
YXJtL25lb24vdnA5X2lodDE2eDE2X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9paHQ0eDRfYWRkX25lb24u
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJt
L25lb24vdnA5X2lodDh4OF9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0X25lb24uaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2FsbG9jY29tbW9u
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9hbGxvY2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfYmxvY2tkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9ibG9ja2QuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uX2RhdGEuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1v
bl9kYXRhLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9lbnRyb3B5LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUuaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJv
cHltdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfZW50cm9weW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9lbnVtcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZmlsdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9maWx0ZXIuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Zy
YW1lX2J1ZmZlcnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X2lkY3QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X2lkY3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21mcWUuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21m
cWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X212LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9tdnJlZl9jb21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X212cmVmX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfb255eGNfaW50LmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0cHJvYy5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
cG9zdHByb2MuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X3BwZmxhZ3MuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X3ByZWRfY29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9u
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9xdWFudF9jb21tb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X3JlY29uaW50ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50ZXIuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29u
aW50cmEuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X3J0Y2QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X3NjYWxlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9zY2FsZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2Nv
bW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfdGhyZWFkX2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfdGhyZWFkX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9jb21tb24uYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RpbGVfY29t
bW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rl
ci92cDlfZGVjb2RlZnJhbWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVmcmFtZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZW12LmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlbXYuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9k
ZWNvZGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVj
b2Rlci92cDlfZGVjb2Rlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2RlY29kZXIvdnA5X2RldG9rZW5pemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZXRva2VuaXplLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1YmV4cC5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2Rz
dWJleHAuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNv
ZGVyL3ZwOV9qb2JfcXVldWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9kZWNvZGVyL3ZwOV9qb2JfcXVldWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL2FybS9uZW9uL3ZwOV9kZW5vaXNlcl9uZW9uLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci9hcm0v
bmVvbi92cDlfZnJhbWVfc2NhbGVfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvYXJtL25lb24vdnA5X3F1YW50aXplX25lb24uYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9hcV9j
eWNsaWNyZWZyZXNoLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVzaC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2JpdHN0cmVhbS5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2JpdHN0cmVhbS5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2Jsb2NrLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfY29udGV4dF90cmVlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29zdC5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Nvc3QuaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kY3Qu
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9kZW5vaXNlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2Rlbm9pc2VyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlZnJhbWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVmcmFtZS5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29k
ZW1iLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfZW5jb2RlbWIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW12LmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2Rlci5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9ldGhyZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfZXRocmVhZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dF9yYXRlY3RybC5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dGVuZC5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dGVuZC5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Zp
cnN0cGFzcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2ZyYW1lX3NjYWxlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfam9iX3F1ZXVlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbG9va2FoZWFkLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbG9va2FoZWFk
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfbWJncmFwaC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X21jb21wLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfbWNvbXAuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tdWx0aV90aHJlYWQuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tdWx0aV90aHJlYWQu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9ub2lzZV9lc3RpbWF0ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGFydGl0aW9uX21vZGVscy5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Bp
Y2tscGYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9waWNrbHBmLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfcGlja21vZGUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbW9kZS5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3F1YW50aXplLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcXVhbnRp
emUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9yYXRlY3RybC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3JhdGVjdHJsLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZC5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jkb3B0LmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNp
emUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9yZXNpemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9za2luX2RldGVjdGlv
bi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3NraW5fZGV0ZWN0aW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRfZmVhdHVyZXMuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zcGVlZF9mZWF0dXJlcy5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N1
YmV4cC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X3N1YmV4cC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRleHQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdmNfbGF5ZXJjb250ZXh0LmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdGVt
cG9yYWxfZmlsdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfdG9rZW5pemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90b2tlbml6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3RyZWV3cml0ZXIuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90cmVld3Jp
dGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2N4
X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5
X2N4X2lmYWNlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
dnA5X2R4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvdnA5X2R4X2lmYWNlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvdnA5X2lmYWNlX2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweC9pbnRlcm5hbC92cHhfY29kZWNfaW50ZXJuYWwuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2NvZGVjLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9kZWNvZGVy
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9l
bmNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3Jj
L3ZweF9pbWFnZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
L3ZwOC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOGN4
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnA4ZHguaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfY29kZWMuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZGVjb2Rlci5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9lbmNvZGVy
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2ZyYW1l
X2J1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3Zw
eF9pbWFnZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3Zw
eF9pbnRlZ2VyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FkZF9ub2lzZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9hcm0vYXZnX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYXJtL2F2Z19wcmVkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2RlYmxvY2tfbmVvbi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vZmRjdDE2eDE2X25lb24u
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2Zk
Y3QzMngzMl9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2FybS9mZGN0X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYXJtL2ZkY3RfcGFydGlhbF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9md2RfdHhmbV9uZW9uLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oYWRhbWFyZF9u
ZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Fy
bS9oaWdoYmRfaWRjdDE2eDE2X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdoYmRfaWRjdDMyeDMyXzEwMjRfYWRkX25lb24u
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hp
Z2hiZF9pZGN0MzJ4MzJfMTM1X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdoYmRfaWRjdDMyeDMyXzM0X2FkZF9uZW9uLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdo
YmRfaWRjdDMyeDMyX2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2FybS9oaWdoYmRfaWRjdDR4NF9hZGRfbmVvbi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lkY3Q4eDhf
YWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL2hpZ2hiZF9pZGN0X25lb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF9pbnRyYXByZWRfbmVvbi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2xvb3BmaWx0
ZXJfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vaGlnaGJkX3ZweF9jb252b2x2ZThfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX3ZweF9jb252b2x2ZV9hdmdfbmVv
bi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
aGlnaGJkX3ZweF9jb252b2x2ZV9jb3B5X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF92cHhfY29udm9sdmVfbmVvbi5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDE2
eDE2XzFfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXJtL2lkY3QxNngxNl9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyXzEzNV9hZGRfbmVvbi5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMy
eDMyXzFfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXJtL2lkY3QzMngzMl8zNF9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyX2FkZF9uZW9uLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0NHg0
XzFfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYXJtL2lkY3Q0eDRfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3Q4eDhfMV9hZGRfbmVvbi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDh4OF9hZGRfbmVv
bi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
aWRjdF9uZW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9pbnRyYXByZWRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9hcm0vbG9vcGZpbHRlcl9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9tZW1fbmVvbi5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vcXVhbnRpemVfbmVvbi5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc2Fk
NGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vc2FkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXJtL3N1YnBlbF92YXJpYW5jZV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zdWJ0cmFjdF9uZW9uLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zdW1fbmVvbi5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc3VtX3Nx
dWFyZXNfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9hcm0vdHJhbnNwb3NlX25lb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZhcmlhbmNlX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfbmVvbi5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2Nv
bnZvbHZlOF9uZW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2FybS92cHhfY29udm9sdmVfYXZnX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZV9jb3B5X25lb24uYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9j
b252b2x2ZV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2FybS92cHhfc2NhbGVkX2NvbnZvbHZlOF9uZW9uLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2F2Zy5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXIuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9idWZmZXIuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVy
X2J1ZmZlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9iaXR3cml0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYml0d3JpdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2JpdHdyaXRlcl9idWZmZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyX2J1ZmZlci5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9kZWJsb2NrLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Z3ZF90eGZtLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Z3ZF90eGZtLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2ludHJhcHJlZC5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZfdHhmbS5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZfdHhmbS5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9sb29wZmls
dGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Bv
c3Rwcm9jLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3Byb2IuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
cHJvYi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9w
c25yLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Bz
bnIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcXVh
bnRpemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
cXVhbnRpemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3Avc2FkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3NraW5fZGV0ZWN0aW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3NraW5fZGV0ZWN0aW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3N1YnRyYWN0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL3N1bV9zcXVhcmVzLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3R4Zm1fY29tbW9uLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZhcmlhbmNlLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZhcmlhbmNlLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9jb252b2x2ZS5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9s
dmUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4
X2RzcF9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvdnB4X2RzcF9ydGNkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3ZweF9maWx0ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9tZW0vaW5jbHVkZS92cHhfbWVtX2ludHJubC5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS92cHhfbWVtLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVtL3ZweF9tZW0uaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hcm0uaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hcm1fY3B1ZGV0ZWN0LmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYml0b3Bz
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvY29t
cGlsZXJfYXR0cmlidXRlcy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3BvcnRzL2VtbWludHJpbl9jb21wYXQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9tZW0uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9tZW1fb3BzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbWVtX29wc19hbGlnbmVkLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbXN2Yy5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3N0YXRpY19hc3NlcnQu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9zeXN0
ZW1fc3RhdGUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9w
b3J0cy92cHhfb25jZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X3BvcnRzL3ZweF90aW1lci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9ydGNkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVtL3ZweF9tZW0uYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL2dlbl9zY2FsZXJzLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy92
cHhfc2NhbGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9z
Y2FsZS9nZW5lcmljL3l2MTJjb25maWcuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJleHRlbmQuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhfc2NhbGUuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhfc2NhbGVfcnRjZC5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL3l2MTJj
b25maWcuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGls
L2VuZGlhbl9pbmwuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF91dGlsL3ZweF9hdG9taWNzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGltZXN0YW1wLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfd3JpdGVfeXV2X2ZyYW1lLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfd3Jp
dGVfeXV2X2ZyYW1lLmgiLAogXQotbGlidnB4X3NyY3NfYXJtNjRfaGlnaGJkX2Fzc2VtYmx5ID0g
W10KLWxpYnZweF9zcmNzX21pcHMgPSBbCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vYWxsb2Njb21tb24uYyIsCitsaWJ2cHhfc3Jjc19uYWNsX2hlYWRl
cnMgPSBbCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
YWxsb2Njb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vYmxvY2tkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2Jsb2NrZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9jb2VmdXBkYXRlcHJvYnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2RlZmF1bHRfY29lZl9wcm9icy5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9kZXF1YW50
aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2VudHJvcHkuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vZW50cm9weS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bXYuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW12LmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2V4dGVuZC5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9leHRlbmQuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZmlsdGVy
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Zp
bHRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9maW5kbmVhcm12LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2ZpbmRuZWFybXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vZ2VuZXJpYy9zeXN0ZW1kZXBlbmRlbnQuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaGVhZGVyLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2lkY3RfYmxrLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2lkY3RsbG0u
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaW52
dHJhbnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vbG9vcGZpbHRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9sb29wZmlsdGVyX2ZpbHRlcnMuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWJwaXRjaC5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tZnFlLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21vZGVjb250LmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21vZGVjb250LmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL212LmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL29ueXguaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vb255eGNfaW50
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL29u
eXhkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L3Bvc3Rwcm9jLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL3Bvc3Rwcm9jLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3BwZmxhZ3MuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vcXVhbnRfY29tbW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludGVyLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50ZXIu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVj
b25pbnRyYS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9yZWNvbmludHJhLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYTR4NC5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ydGNkLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3NldHVwaW50cmFyZWNvbi5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zZXR1cGlu
dHJhcmVjb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vc3dhcHl2MTJidWZmZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZmZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3lzdGVtZGVwZW5kZW50LmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3RocmVhZGluZy5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90cmVlY29k
ZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
dHJlZWNvZGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL3ZwOF9lbnRyb3B5bW9kZWRhdGEuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X2xvb3BmaWx0ZXIuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X3NraW5fZGV0ZWN0aW9uLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9z
a2luX2RldGVjdGlvbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2RlY29kZXIvZGJvb2xodWZmLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZGVjb2Rlci9kYm9vbGh1ZmYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZWZyYW1lLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVtdi5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlbXYuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29k
ZXJ0aHJlYWRpbmcuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9kZWNvZGVyL2RldG9rZW5pemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9kZWNvZGVyL2RldG9rZW5pemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL29ueXhkX2lmLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9vbnl4ZF9pbnQuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL3RocmVhZGluZy5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvdHJlZXJl
YWRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvYml0c3RyZWFtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9iaXRzdHJlYW0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL2Jsb2NrLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ib29saHVmZi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYm9vbGh1ZmYuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2NvcHlfYy5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGN0LmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3RfdmFsdWVfY29z
dC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
ZGN0X3ZhbHVlX3Rva2Vucy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvZGVmYXVsdGNvZWZjb3VudHMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rlbm9pc2luZy5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGVub2lzaW5nLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVmcmFt
ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
ZW5jb2RlZnJhbWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL2VuY29kZWludHJhLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVpbnRyYS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbWIuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW1iLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtdi5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2Rl
bXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L2V0aHJlYWRpbmcuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL2V0aHJlYWRpbmcuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL2ZpcnN0cGFzcy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbG9va2FoZWFkLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9sb29rYWhlYWQuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21jb21wLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tY29tcC5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbW9kZWNv
c3RzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9tb2RlY29zdHMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL21yX2Rpc3NpbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvbXJfZGlzc2ltLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9vbnl4X2lmLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9vbnl4X2ludC5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2ludGVyLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNraW50ZXIu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Bp
Y2tscGYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL3BpY2tscGYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL3F1YW50aXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9yYXRlY3RybC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Jkb3B0LmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yZG9wdC5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvc2VnbWVudGF0aW9uLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9zZWdtZW50
YXRpb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL3Rva2VuaXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci90b2tlbml6ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdyaXRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdyaXRlci5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdnA4X3F1YW50aXplLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvdnA4X2N4X2lmYWNlLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvdnA4X2R4X2lmYWNlLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9h
bGxvY2NvbW1vbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfYWxsb2Njb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Jsb2NrZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYmxvY2tkLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb24uaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbl9k
YXRhLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9jb21tb25fZGF0YS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weS5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHlt
b2RlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9lbnRyb3B5bXYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X2VudHJvcHltdi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW51bXMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZpbHRlci5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZmlsdGVyLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9mcmFtZV9i
dWZmZXJzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9mcmFtZV9idWZmZXJzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9pZGN0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9pZGN0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9sb29wZmlsdGVyLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9sb29wZmlsdGVy
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9tZnFlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9tZnFlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9tdi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfbXZyZWZfY29tbW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdnJlZl9jb21tb24uaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X29ueXhjX2ludC5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
cG9zdHByb2MuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X3Bvc3Rwcm9jLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9wcGZsYWdzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcHJlZF9jb21tb24uaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3F1
YW50X2NvbW1vbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfcXVhbnRfY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludGVyLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludGVyLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmlu
dHJhLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9yZWNvbmludHJhLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9ydGNkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FsZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2NhbGUuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NjYW4uYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NjYW4uaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NlZ19jb21t
b24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X3NlZ19jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X3RocmVhZF9jb21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RocmVhZF9jb21tb24uaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RpbGVfY29tbW9u
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV90aWxlX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2RlY29kZXIvdnA5X2RlY29kZWZyYW1lLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlZnJhbWUuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVtdi5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2Rl
Y29kZW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVj
b2Rlci92cDlfZGVjb2Rlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZXRva2VuaXplLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGV0b2tlbml6ZS5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2Rz
dWJleHAuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNv
ZGVyL3ZwOV9kc3ViZXhwLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZGVjb2Rlci92cDlfam9iX3F1ZXVlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfam9iX3F1ZXVlLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVz
aC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2FxX2N5Y2xpY3JlZnJlc2guaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9iaXRzdHJlYW0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9iaXRzdHJlYW0uaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ibG9jay5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Nv
bnRleHRfdHJlZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2NvbnRleHRfdHJlZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Nvc3QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9jb3N0LmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZGN0LmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZGVub2lzZXIu
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9kZW5vaXNlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2VuY29kZWZyYW1lLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlZnJhbWUuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtYi5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29k
ZW1iLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfZW5jb2RlbXYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVyLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXRocmVhZC5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2V0aHJlYWQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9leHRlbmQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRfcmF0ZWN0cmwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRlbmQuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9maXJzdHBhc3MuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9m
cmFtZV9zY2FsZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2pvYl9xdWV1ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2xvb2thaGVhZC5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2xvb2thaGVhZC5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21iZ3JhcGgu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9tY29tcC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X21jb21wLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfbXVsdGlfdGhyZWFkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbXVsdGlfdGhyZWFkLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbm9pc2VfZXN0
aW1hdGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BhcnRpdGlvbl9tb2RlbHMuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbHBmLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlj
a2xwZi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X3BpY2ttb2RlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfcGlja21vZGUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9xdWFudGl6ZS5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3F1YW50aXplLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmF0ZWN0
cmwuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9yYXRlY3RybC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3JkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfcmQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZG9wdC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jkb3B0LmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmVzaXplLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmVzaXpl
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfc2VnbWVudGF0aW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfc2VnbWVudGF0aW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc2tpbl9kZXRlY3Rpb24uYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9za2luX2Rl
dGVjdGlvbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRfZmVhdHVyZXMuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdWJleHAuYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdWJl
eHAuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9zdmNfbGF5ZXJjb250ZXh0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVyY29udGV4dC5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3RlbXBvcmFsX2ZpbHRl
ci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3Rva2VuaXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfdG9rZW5pemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90cmVld3JpdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9pZmFj
ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9p
ZmFjZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9p
ZmFjZV9jb21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS92cDlfaWZhY2VfY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHgvaW50ZXJuYWwvdnB4X2NvZGVjX2ludGVybmFsLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9jb2RlYy5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfZGVjb2Rlci5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfZW5jb2Rlci5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfaW1hZ2Uu
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cDguaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cDhjeC5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOGR4LmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2NvZGVjLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2RlY29kZXIuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZW5jb2Rlci5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9leHRfcmF0ZWN0cmwuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZnJhbWVfYnVm
ZmVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2lt
YWdlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2lu
dGVnZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
YWRkX25vaXNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2F2Zy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9iaXRyZWFkZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYml0cmVhZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2JpdHJlYWRlcl9idWZmZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyX2J1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXIuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlcl9idWZmZXIu
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3Jp
dGVyX2J1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9kZWJsb2NrLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2Z3ZF90eGZtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2Z3ZF90eGZtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2ludHJhcHJlZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9pbnZfdHhmbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZfdHhmbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9sb29wZmlsdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Bvc3Rwcm9jLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Byb2IuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHJvYi5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wc25yLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3BzbnIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcXVhbnRpemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcXVhbnRpemUuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Avc2FkLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NraW5fZGV0ZWN0aW9uLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NraW5fZGV0ZWN0aW9uLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3N1YnRyYWN0
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3N1bV9z
cXVhcmVzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3R4Zm1fY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3ZhcmlhbmNlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3ZhcmlhbmNlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3ZweF9jb252b2x2ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9jb21tb24uaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9ydGNkLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9maWx0ZXIuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9tZW0vaW5jbHVkZS92
cHhfbWVtX2ludHJubC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X21lbS92cHhfbWVtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfbWVtL3ZweF9tZW0uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9wb3J0cy9hc21kZWZzX21taS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3BvcnRzL2FybS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3BvcnRzL2JpdG9wcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2NvbXBpbGVyX2F0dHJpYnV0ZXMuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9lbW1pbnRyaW5fY29tcGF0
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbWVt
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbWVt
X29wcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRz
L21lbV9vcHNfYWxpZ25lZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3BvcnRzL21pcHMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9wb3J0cy9tc3ZjLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfcG9ydHMvc3RhdGljX2Fzc2VydC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3N5c3RlbV9zdGF0ZS5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3ZweF9vbmNlLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X3RpbWVyLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy9nZW5f
c2NhbGVycy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3Nj
YWxlL2dlbmVyaWMvdnB4X3NjYWxlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95djEyY29uZmlnLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95djEyZXh0ZW5kLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMveDg2LmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvdnB4X3NjYWxl
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvdnB4
X3NjYWxlX3J0Y2QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9zY2FsZS95djEyY29uZmlnLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfdXRpbC9lbmRpYW5faW5sLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfdXRpbC92cHhfYXRvbWljcy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RocmVhZC5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RocmVhZC5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RpbWVzdGFtcC5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3dyaXRl
X3l1dl9mcmFtZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X3V0aWwvdnB4X3dyaXRlX3l1dl9mcmFtZS5oIiwKIF0KLWxpYnZweF9zcmNzX21pcHNfYXNzZW1i
bHkgPSBbXQotbGlidnB4X3NyY3NfbmFjbCA9IFsKK2xpYnZweF9zcmNzX25hY2xfYXNzZW1ibHkg
PSBbXQorbGlidnB4X3NyY3NfZ2VuZXJpYyA9IFsKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hbGxvY2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hbGxvY2NvbW1vbi5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYmxvY2tkLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2NvZWZ1cGRh
dGVwcm9icy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vZGVmYXVsdF9jb2VmX3Byb2JzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL2RlcXVhbnRpemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weS5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5LmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHltb2RlLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJv
cHltb2RlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2VudHJvcHltdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9lbnRyb3B5bXYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vZXh0ZW5kLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL2V4dGVuZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maWx0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZmlsdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbmRuZWFybXYuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZmluZG5lYXJtdi5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9nZW5lcmlj
L3N5c3RlbWRlcGVuZGVudC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9oZWFkZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vaWRjdF9ibGsuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaWRjdGxsbS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pbnZ0cmFucy5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29wZmlsdGVyLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2xvb3BmaWx0ZXJfZmls
dGVycy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9tYnBpdGNoLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL21mcWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vbW9kZWNvbnQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vbW9kZWNvbnQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vbXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vb255eC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9vbnl4Y19pbnQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vb255eGQuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcG9zdHByb2MuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcG9zdHByb2MuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcHBmbGFncy5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9xdWFudF9j
b21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vcXVhbnRfY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3JlY29uaW50ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmEuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYTR4
NC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9y
ZWNvbmludHJhNHg0LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL3J0Y2QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vc2V0dXBpbnRyYXJlY29uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3NldHVwaW50cmFyZWNvbi5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zd2FweXYxMmJ1ZmZlci5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zd2FweXYx
MmJ1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9zeXN0ZW1kZXBlbmRlbnQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vdGhyZWFkaW5nLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3RyZWVjb2Rlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90cmVlY29kZXIuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X2VudHJvcHltb2RlZGF0
YS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92
cDhfbG9vcGZpbHRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi92cDhfc2tpbl9kZXRlY3Rpb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X3NraW5fZGV0ZWN0aW9uLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kYm9vbGh1ZmYuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2Rib29s
aHVmZi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29k
ZXIvZGVjb2RlZnJhbWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9kZWNvZGVyL2RlY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVtdi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlcnRocmVhZGluZy5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGV0b2tlbml6ZS5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGV0b2tl
bml6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29k
ZXIvb255eGRfaWYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9kZWNvZGVyL29ueXhkX2ludC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2RlY29kZXIvdGhyZWFkaW5nLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZGVjb2Rlci90cmVlcmVhZGVyLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0uYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2JpdHN0cmVhbS5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYmxvY2su
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jv
b2xodWZmLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9ib29saHVmZi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvY29weV9jLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9kY3QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL2RjdF92YWx1ZV9jb3N0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3RfdmFsdWVfdG9rZW5zLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZWZhdWx0Y29l
ZmNvdW50cy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvZGVub2lzaW5nLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWZyYW1lLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVmcmFtZS5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlaW50cmEuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29k
ZWludHJhLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9lbmNvZGVtYi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvZW5jb2RlbWIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtdi5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZXRocmVhZGluZy5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZXRocmVhZGluZy5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZmlyc3Rw
YXNzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9sb29rYWhlYWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL2xvb2thaGVhZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL21jb21wLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tb2RlY29zdHMuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVjb3N0cy5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbXJfZGlzc2ltLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tcl9kaXNz
aW0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L29ueXhfaWYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL29ueXhfaW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9waWNraW50ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tpbnRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xwZi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xwZi5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcXVhbnRpemUuaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJs
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9y
YXRlY3RybC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvcmRvcHQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL3Jkb3B0LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9zZWdtZW50YXRpb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3NlZ21lbnRhdGlvbi5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdG9rZW5pemUuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Rva2VuaXplLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci90cmVld3Jp
dGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci90cmVld3JpdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci92cDhfcXVhbnRpemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC92cDhfY3hfaWZhY2UuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC92cDhfZHhfaWZhY2UuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2FsbG9jY29tbW9uLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9hbGxvY2NvbW1vbi5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
YmxvY2tkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9ibG9ja2QuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uX2RhdGEuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbl9kYXRhLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9lbnRyb3B5LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltdi5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW12
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9lbnVtcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfZmlsdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9maWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2lk
Y3QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X2lkY3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X2xvb3BmaWx0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21mcWUuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21mcWUuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X212LmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdnJlZl9j
b21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X212cmVmX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfb255eGNfaW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0cHJvYy5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcG9zdHByb2MuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3BwZmxh
Z3MuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X3ByZWRfY29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9uLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9xdWFudF9jb21tb24u
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X3JlY29uaW50ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X3JlY29uaW50ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3J0Y2QuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Nj
YWxlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9zY2FsZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfc2Nhbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGhyZWFkX2Nv
bW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfdGhyZWFkX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9jb21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RpbGVfY29tbW9uLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlZnJh
bWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVy
L3ZwOV9kZWNvZGVmcmFtZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlbXYuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVyLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rl
ci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIv
dnA5X2RldG9rZW5pemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9kZWNvZGVyL3ZwOV9kZXRva2VuaXplLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1YmV4cC5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RzdWJleHAuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9qb2JfcXVl
dWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVy
L3ZwOV9qb2JfcXVldWUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9hcV9jeWNsaWNyZWZyZXNoLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVzaC5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Jp
dHN0cmVhbS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2JpdHN0cmVhbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Jsb2NrLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVl
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfY29zdC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2Nvc3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9kY3QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Rlbm9pc2VyLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlZnJhbWUu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9lbmNvZGVmcmFtZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2VuY29kZW1iLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW12
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfZW5jb2Rlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2VuY29kZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXRocmVhZC5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dF9yYXRlY3RybC5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2V4dGVuZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2V4dGVuZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2ZpcnN0cGFzcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZyYW1lX3NjYWxlLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfam9iX3F1ZXVlLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
bG9va2FoZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfbG9va2FoZWFkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWJncmFwaC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21jb21wLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWNvbXAuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tdWx0aV90
aHJlYWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9tdWx0aV90aHJlYWQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
cGFydGl0aW9uX21vZGVscy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3BpY2tscGYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbHBmLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja21vZGUuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbW9k
ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3F1YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfcXVhbnRpemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJsLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmQuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZC5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X3Jkb3B0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfcmRvcHQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50
YXRpb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9za2luX2RldGVjdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRfZmVhdHVyZXMu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9zcGVlZF9mZWF0dXJlcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRleHQuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9z
dmNfbGF5ZXJjb250ZXh0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfdGVtcG9yYWxfZmlsdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdG9rZW5pemUuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90b2tlbml6ZS5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X3RyZWV3cml0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV90cmVld3JpdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1vbi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9pbnRlcm5hbC92cHhfY29k
ZWNfaW50ZXJuYWwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eC9zcmMvdnB4X2NvZGVjLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvc3JjL3ZweF9kZWNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvc3JjL3ZweF9lbmNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9pbWFnZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4L3ZwOGN4LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvdnA4ZHguaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC92cHhfY29kZWMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC92cHhfZGVjb2Rlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4L3ZweF9lbmNvZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvdnB4X2ZyYW1lX2J1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbWFnZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbnRlZ2VyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FkZF9ub2lzZS5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hdmcuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlci5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9i
dWZmZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
Yml0d3JpdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2JpdHdyaXRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9iaXR3cml0ZXJfYnVmZmVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlcl9idWZmZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvZGVibG9jay5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnRyYXByZWQuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbG9vcGZpbHRl
ci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wb3N0
cHJvYy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9w
cm9iLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3By
b2IuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHNu
ci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wc25y
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50
aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1
YW50aXplLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3NhZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9z
a2luX2RldGVjdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9za2luX2RldGVjdGlvbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9zdWJ0cmFjdC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9zdW1fc3F1YXJlcy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC90eGZtX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2NvbnZvbHZl
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9k
c3BfY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3ZweF9kc3BfcnRjZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC92cHhfZmlsdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfbWVtL2luY2x1ZGUvdnB4X21lbV9pbnRybmwuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9tZW0vdnB4X21lbS5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS92cHhfbWVtLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYml0b3BzLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvY29tcGlsZXJfYXR0cmli
dXRlcy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRz
L2VtbWludHJpbl9jb21wYXQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9wb3J0cy9tZW0uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9wb3J0cy9tZW1fb3BzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfcG9ydHMvbWVtX29wc19hbGlnbmVkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbXN2Yy5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3N0YXRpY19hc3NlcnQuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9zeXN0ZW1fc3RhdGUuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfb25j
ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3Zw
eF90aW1lci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3Nj
YWxlL2dlbmVyaWMvZ2VuX3NjYWxlcnMuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3ZweF9zY2FsZS5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL2dlbmVyaWMveXYxMmNvbmZpZy5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL2dlbmVyaWMv
eXYxMmV4dGVuZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X3NjYWxlL3ZweF9zY2FsZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3NjYWxlL3ZweF9zY2FsZV9ydGNkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfc2NhbGUveXYxMmNvbmZpZy5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvZW5kaWFuX2lubC5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X2F0b21pY3MuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF90aHJlYWQuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF90aHJl
YWQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3Zw
eF90aW1lc3RhbXAuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF91dGlsL3ZweF93cml0ZV95dXZfZnJhbWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF93cml0ZV95dXZfZnJhbWUuaCIsCiBdCi1saWJ2cHhf
c3Jjc19uYWNsX2Fzc2VtYmx5ID0gW10KLWxpYnZweF9zcmNzX2dlbmVyaWMgPSBbCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYWxsb2Njb21tb24uYyIs
CitsaWJ2cHhfc3Jjc19nZW5lcmljX2hlYWRlcnMgPSBbCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYWxsb2Njb21tb24uaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYmxvY2tkLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Jsb2NrZC5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9jb2VmdXBkYXRlcHJv
YnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
Y29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2RlZmF1bHRfY29lZl9wcm9icy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9kZXF1YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHkuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weS5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9k
ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9l
bnRyb3B5bXYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vZW50cm9weW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2V4dGVuZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9leHRlbmQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vZmlsdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbHRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbmRuZWFybXYuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZ2VuZXJpYy9zeXN0
ZW1kZXBlbmRlbnQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vaGVhZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2lkY3RfYmxrLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2lkY3RsbG0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaW52dHJhbnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbG9vcGZpbHRlci5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29wZmlsdGVyX2ZpbHRlcnMu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWJw
aXRjaC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9tZnFlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL21vZGVjb250LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL21vZGVjb250LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL212LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL29ueXguaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vb255eGNfaW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL29ueXhkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3BwZmxhZ3MuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcXVhbnRfY29tbW9u
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1
YW50X2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9yZWNvbmludGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3JlY29uaW50ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYS5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25p
bnRyYTR4NC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9ydGNkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL3NldHVwaW50cmFyZWNvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9zZXR1cGludHJhcmVjb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZmZXIuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZm
ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
c3lzdGVtZGVwZW5kZW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3RocmVhZGluZy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi90cmVlY29kZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdHJlZWNvZGVyLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9lbnRyb3B5bW9kZWRhdGEuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X2xv
b3BmaWx0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vdnA4X3NraW5fZGV0ZWN0aW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZmLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kYm9vbGh1ZmYu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2Rl
Y29kZWZyYW1lLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZGVjb2Rlci9kZWNvZGVtdi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2RlY29kZXIvZGVjb2RlbXYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZXJ0aHJlYWRpbmcuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RldG9rZW5pemUuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RldG9rZW5pemUu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL29u
eXhkX2lmLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVj
b2Rlci9vbnl4ZF9pbnQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9kZWNvZGVyL3RocmVhZGluZy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2RlY29kZXIvdHJlZXJlYWRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYml0c3RyZWFtLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0uaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jsb2NrLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ib29saHVm
Zi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
Ym9vbGh1ZmYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL2NvcHlfYy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvZGN0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9kY3RfdmFsdWVfY29zdC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGN0X3ZhbHVlX3Rva2Vucy5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGVmYXVsdGNvZWZjb3Vu
dHMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L2Rlbm9pc2luZy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvZGVub2lzaW5nLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9lbmNvZGVmcmFtZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlZnJhbWUuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWludHJhLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVpbnRy
YS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
ZW5jb2RlbWIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL2VuY29kZW1iLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9lbmNvZGVtdi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2V0aHJlYWRpbmcuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2V0aHJlYWRpbmcuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2ZpcnN0cGFzcy5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbG9v
a2FoZWFkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9sb29rYWhlYWQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL21jb21wLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9tY29tcC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvbW9kZWNvc3RzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tb2RlY29zdHMuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21yX2Rpc3NpbS5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbXJfZGlzc2ltLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9vbnl4
X2lmLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9vbnl4X2ludC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvcGlja2ludGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9waWNraW50ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tscGYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tscGYuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3F1YW50aXplLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yYXRlY3RybC5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0
cmwuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L3Jkb3B0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9yZG9wdC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvc2VnbWVudGF0aW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9zZWdtZW50YXRpb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Rva2VuaXplLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci90b2tlbml6ZS5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdyaXRlci5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJl
ZXdyaXRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvdnA4X3F1YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvdnA4X2N4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvdnA4X2R4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9hbGxvY2NvbW1vbi5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYWxsb2Njb21tb24uaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Jsb2Nr
ZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfYmxvY2tkLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbl9kYXRhLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb25fZGF0YS5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weS5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50
cm9weS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfZW50cm9weW1vZGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltb2RlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bXYuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltdi5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW51
bXMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X2ZpbHRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfZmlsdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9mcmFtZV9idWZmZXJzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9mcmFtZV9idWZmZXJzLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9pZGN0LmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9p
ZGN0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9sb29wZmlsdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9sb29wZmlsdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tZnFlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tZnFlLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdi5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbXZyZWZfY29tbW9u
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9tdnJlZl9jb21tb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X29ueXhjX2ludC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcG9zdHByb2MuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Bvc3Rwcm9jLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wcGZsYWdzLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9w
cmVkX2NvbW1vbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfcHJlZF9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3F1YW50X2NvbW1vbi5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9uLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNv
bmludGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9yZWNvbmludGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludHJhLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludHJhLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9ydGNkLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FsZS5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
c2NhbGUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X3NjYW4uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X3NjYW4uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X3NlZ19jb21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NlZ19jb21tb24uaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RocmVhZF9jb21tb24u
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X3RocmVhZF9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X3RpbGVfY29tbW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aWxlX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZWZyYW1lLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlf
ZGVjb2RlZnJhbWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9kZWNvZGVyL3ZwOV9kZWNvZGVtdi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rlci5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZXIuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9k
ZXRva2VuaXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZGVjb2Rlci92cDlfZGV0b2tlbml6ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RzdWJleHAuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kc3ViZXhwLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfam9iX3F1ZXVlLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlf
am9iX3F1ZXVlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVzaC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2FxX2N5Y2xpY3JlZnJlc2guaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9iaXRzdHJl
YW0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9iaXRzdHJlYW0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9ibG9jay5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2NvbnRleHRfdHJlZS5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2NvbnRleHRfdHJlZS5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Nv
c3QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9jb3N0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfZGN0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZGVub2lzZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZWZyYW1lLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5j
b2RlZnJhbWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9lbmNvZGVtYi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW1iLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbXYuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Vu
Y29kZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9lbmNvZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZXRocmVhZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V0aHJlYWQuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRlbmQuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRfcmF0ZWN0
cmwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9leHRlbmQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9maXJzdHBhc3MuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9mcmFtZV9zY2FsZS5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2pvYl9xdWV1ZS5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2xvb2th
aGVhZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2xvb2thaGVhZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X21iZ3JhcGguaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tY29tcC5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21jb21wLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbXVsdGlfdGhyZWFk
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfbXVsdGlfdGhyZWFkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfbm9pc2VfZXN0aW1hdGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BhcnRp
dGlvbl9tb2RlbHMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9waWNrbHBmLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja2xwZi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2ttb2RlLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja21vZGUuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9x
dWFudGl6ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X3F1YW50aXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfcmF0ZWN0cmwuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JkLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmQuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZG9w
dC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3Jkb3B0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfcmVzaXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfcmVzaXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc2VnbWVudGF0aW9uLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc2VnbWVudGF0aW9u
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfc2tpbl9kZXRlY3Rpb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9za2luX2RldGVjdGlvbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3Bl
ZWRfZmVhdHVyZXMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9zdWJleHAuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdWJleHAuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdmNfbGF5ZXJjb250ZXh0LmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ZjX2xh
eWVyY29udGV4dC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3RlbXBvcmFsX2ZpbHRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Rva2VuaXplLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdG9rZW5pemUuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90cmVl
d3JpdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfdHJlZXdyaXRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9pZmFjZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9pZmFjZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfaWZhY2VfY29tbW9uLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvaW50ZXJuYWwvdnB4X2NvZGVjX2lu
dGVybmFsLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3Jj
L3ZweF9jb2RlYy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
L3NyYy92cHhfZGVjb2Rlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4L3NyYy92cHhfZW5jb2Rlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4L3NyYy92cHhfaW1hZ2UuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweC92cDguaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweC92cDhjeC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4L3ZwOGR4LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHgvdnB4X2NvZGVjLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHgvdnB4X2RlY29kZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweC92cHhfZW5jb2Rlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4L3ZweF9leHRfcmF0ZWN0cmwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweC92cHhfZnJhbWVfYnVmZmVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2ltYWdlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2ludGVnZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYWRkX25vaXNlLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2F2Zy5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXIuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9idWZmZXIuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVy
X2J1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9iaXR3cml0ZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYml0d3JpdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2JpdHdyaXRlcl9idWZmZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyX2J1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9kZWJsb2NrLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Z3ZF90eGZtLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Z3ZF90eGZtLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2ludHJhcHJlZC5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZfdHhmbS5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZfdHhmbS5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9sb29wZmls
dGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Bv
c3Rwcm9jLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3Byb2IuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
cHJvYi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9w
c25yLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Bz
bnIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcXVh
bnRpemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
cXVhbnRpemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3Avc2FkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3NraW5fZGV0ZWN0aW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3NraW5fZGV0ZWN0aW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3N1YnRyYWN0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL3N1bV9zcXVhcmVzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3R4Zm1fY29tbW9uLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZhcmlhbmNlLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZhcmlhbmNlLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9jb252b2x2ZS5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9s
dmUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4
X2RzcF9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvdnB4X2RzcF9ydGNkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3ZweF9maWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9tZW0vaW5jbHVkZS92cHhfbWVtX2ludHJubC5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS92cHhfbWVtLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVtL3ZweF9tZW0uaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hcm0uaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9iaXRvcHMuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9jb21waWxlcl9hdHRy
aWJ1dGVzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9y
dHMvZW1taW50cmluX2NvbXBhdC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X3BvcnRzL21lbS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X3BvcnRzL21lbV9vcHMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9wb3J0cy9tZW1fb3BzX2FsaWduZWQuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9taXBzLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbXN2Yy5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3N0YXRpY19hc3NlcnQuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9zeXN0ZW1fc3RhdGUu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhf
b25jZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRz
L3ZweF90aW1lci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X3NjYWxlL2dlbmVyaWMvZ2VuX3NjYWxlcnMuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3ZweF9zY2FsZS5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL2dlbmVyaWMveXYxMmNvbmZpZy5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL2dlbmVy
aWMveXYxMmV4dGVuZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X3BvcnRzL3g4Ni5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X3NjYWxlL3ZweF9zY2FsZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X3NjYWxlL3ZweF9zY2FsZV9ydGNkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUveXYxMmNvbmZpZy5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvZW5kaWFuX2lubC5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X2F0b21pY3MuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF90aHJlYWQu
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF90
aHJlYWQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGls
L3ZweF90aW1lc3RhbXAuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF91dGlsL3ZweF93cml0ZV95dXZfZnJhbWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF93cml0ZV95dXZfZnJhbWUuaCIsCiBdCiBsaWJ2
cHhfc3Jjc19nZW5lcmljX2Fzc2VtYmx5ID0gW10KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3J1bl9wZXJsLnB5IGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvcnVuX3Bl
cmwucHkKaW5kZXggYTgxODI4ZWIyYmQ5MGQ5OGFiYmE5NGZkZjUzMTFlMDg0MmRjZDU0My4uYTIx
M2IxMjBlYzE5YjY4NmY1MGY0MjMzZTFkYzE4YmFhMWM3N2RjZSAxMDA3NTUKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvcnVuX3Blcmwu
cHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvcnVuX3BlcmwucHkKQEAgLTEsNCArMSw0IEBACi0jIS91c3IvYmluL3B5dGhvbgorIyEv
dXNyL2Jpbi9lbnYgcHl0aG9uCiAjCiAjIENvcHlyaWdodCAyMDE0IFRoZSBDaHJvbWl1bSBBdXRo
b3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogIyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBn
b3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvY29uZmlnL3ZweF92ZXJzaW9uLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvY29uZmlnL3ZweF92ZXJzaW9uLmgKaW5kZXgg
Y2M2YTgzYzlhNDRlNTExYzlkMTkxMGRiOWYyOWRhZGM3N2ViODY1NC4uZDJiZGE1YWZjOWE5NGQ1
ZjNkZGVmZjMwNTdlYWM0NGUwMjkxYzE1OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2NvbmZpZy92cHhfdmVy
c2lvbi5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9jb25maWcvdnB4X3ZlcnNpb24uaApAQCAtMSw5ICsxLDkgQEAKIC8v
IFRoaXMgZmlsZSBpcyBnZW5lcmF0ZWQuIERvIG5vdCBlZGl0LgogI2RlZmluZSBWRVJTSU9OX01B
Sk9SIDEKLSNkZWZpbmUgVkVSU0lPTl9NSU5PUiA4Ci0jZGVmaW5lIFZFUlNJT05fUEFUQ0ggMgot
I2RlZmluZSBWRVJTSU9OX0VYVFJBICIxMDAtZzU1MzI3NzVlZiIKKyNkZWZpbmUgVkVSU0lPTl9N
SU5PUiA5CisjZGVmaW5lIFZFUlNJT05fUEFUQ0ggMAorI2RlZmluZSBWRVJTSU9OX0VYVFJBICIx
NDctZzYxZWRlYzFlZiIKICNkZWZpbmUgVkVSU0lPTl9QQUNLRUQgXAogICAoKFZFUlNJT05fTUFK
T1IgPDwgMTYpIHwgKFZFUlNJT05fTUlOT1IgPDwgOCkgfCAoVkVSU0lPTl9QQVRDSCkpCi0jZGVm
aW5lIFZFUlNJT05fU1RSSU5HX05PU1AgInYxLjguMi0xMDAtZzU1MzI3NzVlZiIKLSNkZWZpbmUg
VkVSU0lPTl9TVFJJTkcgIiB2MS44LjItMTAwLWc1NTMyNzc1ZWYiCisjZGVmaW5lIFZFUlNJT05f
U1RSSU5HX05PU1AgInYxLjkuMC0xNDctZzYxZWRlYzFlZiIKKyNkZWZpbmUgVkVSU0lPTl9TVFJJ
TkcgIiB2MS45LjAtMTQ3LWc2MWVkZWMxZWYiCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L0FVVEhP
UlMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L0FVVEhPUlMKaW5kZXggM2ViMDNlOTIzMzVkNGRjZWVhYzE2Y2ZhNGQ2
NjVkY2QxN2UyNTg5Mi4uMzUyYzkxZmVkYTBlY2VlMmQzYjAxNjA2Njk0YTI0NjgzZTg1MTZjMyAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC9BVVRIT1JTCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvQVVUSE9SUwpA
QCAtMjUsNiArMjUsNyBAQCBBbmdpZSBDaGlhbmcgPGFuZ2llYmlyZEBnb29nbGUuY29tPgogQXJv
biBSb3NlbmJlcmcgPGFyb3NlbmJlcmdAbG9naXRlY2guY29tPgogQXR0aWxhIE5hZ3kgPGF0dGls
YW5hZ3lAZ29vZ2xlLmNvbT4KIEJpcmsgTWFnbnVzc2VuIDxiaXJrLm1hZ251c3NlbkBnb29nbGVt
YWlsLmNvbT4KK0JyaWFuIEZvbGV5IDxicGZvbGV5QGdvb2dsZS5jb20+CiBCcmlvbiBWaWJiZXIg
PGJ2aWJiZXJAd2lraW1lZGlhLm9yZz4KIGNoYW5nanVuLnlhbmcgPGNoYW5nanVuLnlhbmdAaW50
ZWwuY29tPgogQ2hhcmxlcyAnQnVjaycgS3Jhc2ljIDxja3Jhc2ljQGdvb2dsZS5jb20+CkBAIC0z
Myw2ICszNCw3IEBAIENoaSBZbyBUc2FpIDxjaGl5b3RzYWlAZ29vZ2xlLmNvbT4KIGNobSA8Y2ht
QHJvY2stY2hpcHMuY29tPgogQ2hyaXMgQ3VubmluZ2hhbSA8Y2hjdW5uaW5naGFtQGNocm9taXVt
Lm9yZz4KIENocmlzdGlhbiBEdXZpdmllciA8Y2R1dml2aWVyQGdvb2dsZS5jb20+CitDbGVtZW50
IENvdXJiZXQgPGNvdXJiZXRAZ29vZ2xlLmNvbT4KIERhbmllbGUgQ2FzdGFnbmEgPGRjYXN0YWdu
YUBjaHJvbWl1bS5vcmc+CiBEYW5pZWwgS2FuZyA8ZGRrYW5nQGdvb2dsZS5jb20+CiBEYW4gWmh1
IDx6eGRhbkBnb29nbGUuY29tPgpAQCAtOTEsNiArOTMsNyBAQCBKb2huIEtvbGVzemFyIDxqa29s
ZXN6YXJAZ29vZ2xlLmNvbT4KIEpvaG5ueSBLbG9uYXJpcyA8Z29vZ2xlQGphd2tuZWUuY29tPgog
Sm9obiBTdGFyayA8amhuc3Rya0BnbWFpbC5jb20+CiBKb24gS3Vua2VlIDxqa3Vua2VlQG1pY3Jv
c29mdC5jb20+CitKb3JnZSBFLiBNb3JlaXJhIDxqZW1vcmVpcmFAZ29vZ2xlLmNvbT4KIEpvc2h1
YSBCbGVlY2hlciBTbnlkZXIgPGpvc2hAdHJlZWxpbmVsYWJzLmNvbT4KIEpvc2h1YSBMaXR0IDxq
b3NodWFsaXR0QGdvb2dsZS5jb20+CiBKdWxpYSBSb2Jzb24gPGp1bGlhbXJvYnNvbkBnbWFpbC5j
b20+CkBAIC0xMjUsNiArMTI4LDcgQEAgTWlya28gQm9uYWRlaSA8bWJvbmFkZWlAZ29vZ2xlLmNv
bT4KIE1vcml5b3NoaSBLb2l6dW1pIDxtb3pvQG1vem8uanA+CiBNb3J0b24gSm9udXNjaGF0IDx5
YWJhd29ja0BnbWFpbC5jb20+CiBOYXRoYW4gRS4gRWdnZSA8bmVnZ2VAbW96aWxsYS5jb20+CitO
ZWlsIEJpcmtiZWNrIDxuZWlsLmJpcmtiZWNrQGdtYWlsLmNvbT4KIE5pY28gV2ViZXIgPHRoYWtp
c0BjaHJvbWl1bS5vcmc+CiBOaXZlZGl0aGEgUmF1IDxuaXZlZGl0aGEucmF1QGdtYWlsLmNvbT4K
IFBhcmFnIFNhbGFzYWthciA8aW1nLm1pcHMxQGdtYWlsLmNvbT4KQEAgLTE2NSw2ICsxNjksNyBA
QCBTaGltb24gRG9vZGtpbiA8aGVscG1lcHJvMUBnbWFpbC5jb20+CiBTaGl5b3UgWWluIDx5aW5z
aGl5b3UtaGZAbG9vbmdzb24uY24+CiBTaHViaGFtIFRhbmRsZSA8c2h1YmhhbS50YW5kbGVAaXR0
aWFtLmNvbT4KIFNodW55YW8gTGkgPHNodW55YW9saUBnb29nbGUuY29tPgorU3JlZXJlbmogQmFs
YWNoYW5kcmFuIDxic3JlZXJlbmpAZ21haWwuY29tPgogU3RlZmFuIEhvbG1lciA8aG9sbWVyQGdv
b2dsZS5jb20+CiBTdW1hbiBTdW5rYXJhIDxzdW5rYXJhc0Bnb29nbGUuY29tPgogU3VwcmFkZWVw
IFQgUiA8c3VwcmFkZWVwLnRyQGl0dGlhbS5jb20+CkBAIC0xODUsNiArMTkwLDcgQEAgVmlnbmVz
aCBWZW5rYXRhc3VicmFtYW5pYW4gPHZpZ25lc2h2QGdvb2dsZS5jb20+CiBWaXRhbHkgQnVrYSA8
dml0YWx5YnVrYUBjaHJvbWl1bS5vcmc+CiBWbGFkIFRzeXJrbGV2aWNoIDx2dHN5cmtsZXZpY2hA
Y2hyb21pdW0ub3JnPgogV2FuLVRlaCBDaGFuZyA8d3RjQGdvb2dsZS5jb20+CitXb25rYXAgSmFu
ZyA8d29ua2FwQGdvb2dsZS5jb20+CiB4aXdlaSBndSA8Z3V4aXdlaS1oZkBsb29uZ3Nvbi5jbj4K
IFlhb3d1IFh1IDx5YW93dUBnb29nbGUuY29tPgogWWkgTHVvIDxsdW95aUBnb29nbGUuY29tPgpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC9DT05UUklCVVRJTkcubWQgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L0NPTlRS
SUJVVElORy5tZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41NzdjOTZhNmI1ZGY3ODMxZjFjZWY0NmQ5YWQ1MjQ1OWE5
MmRhZTlhCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9DT05UUklCVVRJTkcubWQKQEAg
LTAsMCArMSwzMCBAQAorIyBIb3cgdG8gQ29udHJpYnV0ZQorCitXZSdkIGxvdmUgdG8gYWNjZXB0
IHlvdXIgcGF0Y2hlcyBhbmQgY29udHJpYnV0aW9ucyB0byB0aGlzIHByb2plY3QuIFRoZXJlIGFy
ZQoranVzdCBhIGZldyBzbWFsbCBndWlkZWxpbmVzIHlvdSBuZWVkIHRvIGZvbGxvdy4KKworIyMg
Q29udHJpYnV0b3IgTGljZW5zZSBBZ3JlZW1lbnQKKworQ29udHJpYnV0aW9ucyB0byB0aGlzIHBy
b2plY3QgbXVzdCBiZSBhY2NvbXBhbmllZCBieSBhIENvbnRyaWJ1dG9yIExpY2Vuc2UKK0FncmVl
bWVudC4gWW91IChvciB5b3VyIGVtcGxveWVyKSByZXRhaW4gdGhlIGNvcHlyaWdodCB0byB5b3Vy
IGNvbnRyaWJ1dGlvbjsKK3RoaXMgc2ltcGx5IGdpdmVzIHVzIHBlcm1pc3Npb24gdG8gdXNlIGFu
ZCByZWRpc3RyaWJ1dGUgeW91ciBjb250cmlidXRpb25zIGFzCitwYXJ0IG9mIHRoZSBwcm9qZWN0
LiBIZWFkIG92ZXIgdG8gPGh0dHBzOi8vY2xhLmRldmVsb3BlcnMuZ29vZ2xlLmNvbS8+IHRvIHNl
ZQoreW91ciBjdXJyZW50IGFncmVlbWVudHMgb24gZmlsZSBvciB0byBzaWduIGEgbmV3IG9uZS4K
KworWW91IGdlbmVyYWxseSBvbmx5IG5lZWQgdG8gc3VibWl0IGEgQ0xBIG9uY2UsIHNvIGlmIHlv
dSd2ZSBhbHJlYWR5IHN1Ym1pdHRlZCBvbmUKKyhldmVuIGlmIGl0IHdhcyBmb3IgYSBkaWZmZXJl
bnQgcHJvamVjdCksIHlvdSBwcm9iYWJseSBkb24ndCBuZWVkIHRvIGRvIGl0CithZ2Fpbi4KKwor
IyMgQ29kZSByZXZpZXdzCisKK0FsbCBzdWJtaXNzaW9ucywgaW5jbHVkaW5nIHN1Ym1pc3Npb25z
IGJ5IHByb2plY3QgbWVtYmVycywgcmVxdWlyZSByZXZpZXcuIFdlCit1c2UgYSBbR2Vycml0XSho
dHRwczovL3d3dy5nZXJyaXRjb2RlcmV2aWV3LmNvbSkgaW5zdGFuY2UgaG9zdGVkIGF0CitodHRw
czovL2Nocm9taXVtLXJldmlldy5nb29nbGVzb3VyY2UuY29tIGZvciB0aGlzIHB1cnBvc2UuCisK
K1NlZSBodHRwczovL3d3dy53ZWJtcHJvamVjdC5vcmcvY29kZS9jb250cmlidXRlL3N1Ym1pdHRp
bmctcGF0Y2hlcyBmb3IgYW4KK2V4YW1wbGUgb2YgYSB0eXBpY2FsIGdlcnJpdCB3b3JrZmxvdy4K
KworIyMgQ29tbXVuaXR5IEd1aWRlbGluZXMKKworVGhpcyBwcm9qZWN0IGZvbGxvd3MKK1tHb29n
bGUncyBPcGVuIFNvdXJjZSBDb21tdW5pdHkgR3VpZGVsaW5lc10oaHR0cHM6Ly9vcGVuc291cmNl
Lmdvb2dsZS5jb20vY29uZHVjdC8pLgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9SRUFETUUgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L1JFQURNRQppbmRleCBmZDMzMzdkYWFkMWZiYzNjMDEyM2M5MDc3ZTU4MWQ4NzEy
MWM1NWYzLi42MmZlZjM0NTkzMmVkNDU4NmU3MTY5ZWY3NjhjMWRkNjJmMDFiMDQzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L1JFQURNRQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L1JFQURNRQpAQCAtMSw0ICsx
LDQgQEAKLVJFQURNRSAtIDkgRGVjZW1iZXIgMjAxOQorUkVBRE1FIC0gMjAgSnVseSAyMDIwCiAK
IFdlbGNvbWUgdG8gdGhlIFdlYk0gVlA4L1ZQOSBDb2RlYyBTREshCiAKQEAgLTYyLDYgKzYyLDcg
QEAgQ09NUElMSU5HIFRIRSBBUFBMSUNBVElPTlMvTElCUkFSSUVTOgogCiAgICAgYXJtNjQtYW5k
cm9pZC1nY2MKICAgICBhcm02NC1kYXJ3aW4tZ2NjCisgICAgYXJtNjQtZGFyd2luMjAtZ2NjCiAg
ICAgYXJtNjQtbGludXgtZ2NjCiAgICAgYXJtNjQtd2luNjQtZ2NjCiAgICAgYXJtNjQtd2luNjQt
dnMxNQpAQCAtMTEyLDYgKzExMyw4IEBAIENPTVBJTElORyBUSEUgQVBQTElDQVRJT05TL0xJQlJB
UklFUzoKICAgICB4ODZfNjQtZGFyd2luMTYtZ2NjCiAgICAgeDg2XzY0LWRhcndpbjE3LWdjYwog
ICAgIHg4Nl82NC1kYXJ3aW4xOC1nY2MKKyAgICB4ODZfNjQtZGFyd2luMTktZ2NjCisgICAgeDg2
XzY0LWRhcndpbjIwLWdjYwogICAgIHg4Nl82NC1pcGhvbmVzaW11bGF0b3ItZ2NjCiAgICAgeDg2
XzY0LWxpbnV4LWdjYwogICAgIHg4Nl82NC1saW51eC1pY2MKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvYnVpbGQvbWFrZS9BbmRyb2lkLm1rIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL0FuZHJvaWQu
bWsKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNmNiM2FmMDI3YjRlZWY4MjgwYjkxOGVlOTdhMWM5ZjNlNGY0NGNhMQot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9BbmRyb2lkLm1rCkBAIC0w
LDAgKzEsMjExIEBACisjIworIyMgIENvcHlyaWdodCAoYykgMjAxMiBUaGUgV2ViTSBwcm9qZWN0
IGF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisjIworIyMgIFVzZSBvZiB0aGlzIHNvdXJj
ZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UKKyMjICB0aGF0IGNhbiBi
ZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UKKyMj
ICB0cmVlLiBBbiBhZGRpdGlvbmFsIGludGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQg
Y2FuIGJlIGZvdW5kCisjIyAgaW4gdGhlIGZpbGUgUEFURU5UUy4gIEFsbCBjb250cmlidXRpbmcg
cHJvamVjdCBhdXRob3JzIG1heQorIyMgIGJlIGZvdW5kIGluIHRoZSBBVVRIT1JTIGZpbGUgaW4g
dGhlIHJvb3Qgb2YgdGhlIHNvdXJjZSB0cmVlLgorIyMKKworIworIyBUaGlzIGZpbGUgaXMgdG8g
YmUgdXNlZCBmb3IgY29tcGlsaW5nIGxpYnZweCBmb3IgQW5kcm9pZCB1c2luZyB0aGUgTkRLLgor
IyBJbiBhbiBBbmRyb2lkIHByb2plY3QgcGxhY2UgYSBsaWJ2cHggY2hlY2tvdXQgaW4gdGhlIGpu
aSBkaXJlY3RvcnkuCisjIFJ1biB0aGUgY29uZmlndXJlIHNjcmlwdCBmcm9tIHRoZSBqbmkgZGly
ZWN0b3J5LiAgQmFzZSBsaWJ2cHgKKyMgZW5jb2Rlci9kZWNvZGVyIGNvbmZpZ3VyYXRpb24gd2ls
bCBsb29rIHNpbWlsYXIgdG86CisjIC4vbGlidnB4L2NvbmZpZ3VyZSAtLXRhcmdldD1hcm12Ny1h
bmRyb2lkLWdjYyAtLWRpc2FibGUtZXhhbXBsZXMgXAorIyAgICAgICAgICAgICAgICAgICAgLS1l
bmFibGUtZXh0ZXJuYWwtYnVpbGQKKyMKKyMgV2hlbiB0YXJnZXRpbmcgQW5kcm9pZCwgcmVhbHRp
bWUtb25seSBpcyBlbmFibGVkIGJ5IGRlZmF1bHQuICBUaGlzIGNhbgorIyBiZSBvdmVycmlkZGVu
IGJ5IGFkZGluZyB0aGUgY29tbWFuZCBsaW5lIGZsYWc6CisjICAtLWRpc2FibGUtcmVhbHRpbWUt
b25seQorIworIyBUaGlzIHdpbGwgY3JlYXRlIC5tayBmaWxlcyB0aGF0IGNvbnRhaW4gdmFyaWFi
bGVzIHRoYXQgY29udGFpbiB0aGUKKyMgc291cmNlIGZpbGVzIHRvIGNvbXBpbGUuCisjCisjIFBs
YWNlIGFuIEFuZHJvaWQubWsgZmlsZSBpbiB0aGUgam5pIGRpcmVjdG9yeSB0aGF0IHJlZmVyZW5j
ZXMgdGhlCisjIEFuZHJvaWQubWsgZmlsZSBpbiB0aGUgbGlidnB4IGRpcmVjdG9yeToKKyMgTE9D
QUxfUEFUSCA6PSAkKGNhbGwgbXktZGlyKQorIyBpbmNsdWRlICQoQ0xFQVJfVkFSUykKKyMgaW5j
bHVkZSBqbmkvbGlidnB4L2J1aWxkL21ha2UvQW5kcm9pZC5taworIworIyBCeSBkZWZhdWx0IGxp
YnZweCB3aWxsIHVzZSB0aGUgJ2NwdWZlYXR1cmVzJyBtb2R1bGUgZnJvbSB0aGUgTkRLLiBUaGlz
IGFsbG93cworIyB0aGUgbGlicmFyeSB0byBiZSBidWlsdCB3aXRoIGFsbCBhdmFpbGFibGUgb3B0
aW1pemF0aW9ucyAoU1NFMi0+QVZYNTEyIGZvcgorIyB4ODYsIE5FT04gZm9yIGFybSwgRFNQcjIg
Zm9yIG1pcHMpLiBUaGlzIGNhbiBiZSBkaXNhYmxlZCB3aXRoCisjICAgLS1kaXNhYmxlLXJ1bnRp
bWUtY3B1LWRldGVjdAorIyBidXQgdGhlIHJlc3VsdGluZyBsaWJyYXJ5ICptdXN0KiBiZSBydW4g
b24gZGV2aWNlcyBzdXBwb3J0aW5nIGFsbCBvZiB0aGUKKyMgZW5hYmxlZCBleHRlbnNpb25zLiBU
aGV5IGNhbiBiZSBkaXNhYmxlZCBpbmRpdmlkdWFsbHkgd2l0aAorIyAgIC0tZGlzYWJsZS17c3Nl
Miwgc3NlMywgc3NzZTMsIHNzZTRfMSwgYXZ4LCBhdngyLCBhdng1MTJ9CisjICAgLS1kaXNhYmxl
LW5lb25bLWFzbV0KKyMgICAtLWRpc2FibGUte2RzcHIyLCBtc2F9CisKKyMKKyMgUnVubmluZyBu
ZGstYnVpbGQgd2lsbCBidWlsZCBsaWJ2cHggYW5kIGluY2x1ZGUgaXQgaW4geW91ciBwcm9qZWN0
LgorIworCitDT05GSUdfRElSIDo9ICQoTE9DQUxfUEFUSCkvCitMSUJWUFhfUEFUSCA6PSAkKExP
Q0FMX1BBVEgpL2xpYnZweAorQVNNX0NOVl9QQVRIX0xPQ0FMIDo9ICQoVEFSR0VUX0FSQ0hfQUJJ
KS9hZHMyZ2FzCitBU01fQ05WX1BBVEggOj0gJChMT0NBTF9QQVRIKS8kKEFTTV9DTlZfUEFUSF9M
T0NBTCkKK2lmbmVxICgkKFYpLDEpCisgIHFleGVjIDo9IEAKK2VuZGlmCisKKyMgVXNlIHRoZSBt
YWtlZmlsZXMgZ2VuZXJhdGVkIGJ5IHVwc3RyZWFtIGNvbmZpZ3VyZSB0byBkZXRlcm1pbmUgd2hp
Y2ggZmlsZXMgdG8KKyMgYnVpbGQuIEFsc28gc2V0IGFueSBhcmNoaXRlY3R1cmUtc3BlY2lmaWMg
ZmxhZ3MuCitpZmVxICgkKFRBUkdFVF9BUkNIX0FCSSksYXJtZWFiaS12N2EpCisgIGluY2x1ZGUg
JChDT05GSUdfRElSKWxpYnMtYXJtdjctYW5kcm9pZC1nY2MubWsKKyAgTE9DQUxfQVJNX01PREUg
Oj0gYXJtCitlbHNlIGlmZXEgICgkKFRBUkdFVF9BUkNIX0FCSSksYXJtNjQtdjhhKQorICBpbmNs
dWRlICQoQ09ORklHX0RJUilsaWJzLWFybTY0LWFuZHJvaWQtZ2NjLm1rCisgIExPQ0FMX0FSTV9N
T0RFIDo9IGFybQorZWxzZSBpZmVxICgkKFRBUkdFVF9BUkNIX0FCSSkseDg2KQorICBpbmNsdWRl
ICQoQ09ORklHX0RJUilsaWJzLXg4Ni1hbmRyb2lkLWdjYy5taworZWxzZSBpZmVxICgkKFRBUkdF
VF9BUkNIX0FCSSkseDg2XzY0KQorICBpbmNsdWRlICQoQ09ORklHX0RJUilsaWJzLXg4Nl82NC1h
bmRyb2lkLWdjYy5taworZWxzZSBpZmVxICgkKFRBUkdFVF9BUkNIX0FCSSksbWlwcykKKyAgaW5j
bHVkZSAkKENPTkZJR19ESVIpbGlicy1taXBzLWFuZHJvaWQtZ2NjLm1rCitlbHNlCisgICQoZXJy
b3IgTm90IGEgc3VwcG9ydGVkIFRBUkdFVF9BUkNIX0FCSTogJChUQVJHRVRfQVJDSF9BQkkpKQor
ZW5kaWYKKworIyBSdWxlIHRoYXQgaXMgbm9ybWFsbHkgaW4gTWFrZWZpbGUgY3JlYXRlZCBieSBs
aWJ2cHgKKyMgY29uZmlndXJlLiAgVXNlZCB0byBmaWx0ZXIgb3V0IHNvdXJjZSBmaWxlcyBiYXNl
ZCBvbiBjb25maWd1cmF0aW9uLgorZW5hYmxlZD0kKGZpbHRlci1vdXQgJCgkKDEpLW5vKSwkKCQo
MSkteWVzKSkKKworIyBPdmVycmlkZSB0aGUgcmVsYXRpdmUgcGF0aCB0aGF0IGlzIGRlZmluZWQg
YnkgdGhlIGxpYnZweAorIyBjb25maWd1cmUgcHJvY2VzcworU1JDX1BBVEhfQkFSRSA6PSAkKExJ
QlZQWF9QQVRIKQorCisjIEluY2x1ZGUgdGhlIGxpc3Qgb2YgZmlsZXMgdG8gYmUgYnVpbHQKK2lu
Y2x1ZGUgJChMSUJWUFhfUEFUSCkvbGlicy5taworCisjIE9wdGltaXNlIHRoZSBjb2RlLiBNYXkg
d2FudCB0byByZXZpc2l0IHRoaXMgc2V0dGluZyBpbiB0aGUgZnV0dXJlLgorTE9DQUxfQ0ZMQUdT
IDo9IC1PMworCisjIEZvciB4ODYsIGluY2x1ZGUgdGhlIHNvdXJjZSBjb2RlIGluIHRoZSBzZWFy
Y2ggcGF0aCBzbyBpdCB3aWxsIGZpbmQgZmlsZXMKKyMgbGlrZSB4ODZpbmMuYXNtIGFuZCB4ODZf
YWJpX3N1cHBvcnQuYXNtCitMT0NBTF9BU01GTEFHUyA6PSAtSSQoTElCVlBYX1BBVEgpCisKKy5Q
UkVDSU9VUzogJS5hc20uUworJChBU01fQ05WX1BBVEgpL2xpYnZweC8lLmFzbS5TOiAkKExJQlZQ
WF9QQVRIKS8lLmFzbQorCSQocWV4ZWMpbWtkaXIgLXAgJChkaXIgJEApCisJJChxZXhlYykkKENP
TkZJR19ESVIpJChBU01fQ09OVkVSU0lPTikgPCQ8ID4gJEAKKworIyBGb3IgYnVpbGRpbmcgKl9y
dGNkLmgsIHdoaWNoIGhhdmUgcnVsZXMgaW4gbGlicy5taworVEdUX0lTQTo9JCh3b3JkIDEsICQo
c3Vic3QgLSwgLCQoVE9PTENIQUlOKSkpCit0YXJnZXQgOj0gbGlicworCitMT0NBTF9TUkNfRklM
RVMgKz0gdnB4X2NvbmZpZy5jCisKKyMgUmVtb3ZlIGR1cGxpY2F0ZSBlbnRyaWVzCitDT0RFQ19T
UkNTX1VOSVFVRSA9ICQoc29ydCAkKENPREVDX1NSQ1MpKQorCisjIFB1bGwgb3V0IEMgZmlsZXMu
ICB2cHhfY29uZmlnLmMgaXMgaW4gdGhlIGltbWVkaWF0ZSBkaXJlY3RvcnkgYW5kCisjIHNvIGl0
IGRvZXMgbm90IG5lZWQgbGlidnB4LyBwcmVmaXhlZCBsaWtlIHRoZSByZXN0IG9mIHRoZSBzb3Vy
Y2UgZmlsZXMuCisjIFRoZSBuZW9uIGZpbGVzIHdpdGggaW50cmluc2ljcyBuZWVkIHRvIGhhdmUg
Lm5lb24gYXBwZW5kZWQgc28gdGhlIHByb3BlcgorIyBmbGFncyBhcmUgYXBwbGllZC4KK0NPREVD
X1NSQ1NfQyA9ICQoZmlsdGVyICUuYywgJChDT0RFQ19TUkNTX1VOSVFVRSkpCitMT0NBTF9ORU9O
X1NSQ1NfQyA9ICQoZmlsdGVyICVfbmVvbi5jLCAkKENPREVDX1NSQ1NfQykpCitMT0NBTF9DT0RF
Q19TUkNTX0MgPSAkKGZpbHRlci1vdXQgdnB4X2NvbmZpZy5jICVfbmVvbi5jLCAkKENPREVDX1NS
Q1NfQykpCisKK0xPQ0FMX1NSQ19GSUxFUyArPSAkKGZvcmVhY2ggZmlsZSwgJChMT0NBTF9DT0RF
Q19TUkNTX0MpLCBsaWJ2cHgvJChmaWxlKSkKK2lmZXEgKCQoVEFSR0VUX0FSQ0hfQUJJKSxhcm1l
YWJpLXY3YSkKKyAgTE9DQUxfU1JDX0ZJTEVTICs9ICQoZm9yZWFjaCBmaWxlLCAkKExPQ0FMX05F
T05fU1JDU19DKSwgbGlidnB4LyQoZmlsZSkubmVvbikKK2Vsc2UgIyBJZiB0aGVyZSBhcmUgbmVv
biBzb3VyY2VzIHRoZW4gd2UgYXJlIGJ1aWxkaW5nIGZvciBhcm02NCBhbmQgZG8gbm90IG5lZWQg
dG8gc3BlY2lmeSAubmVvbgorICBMT0NBTF9TUkNfRklMRVMgKz0gJChmb3JlYWNoIGZpbGUsICQo
TE9DQUxfTkVPTl9TUkNTX0MpLCBsaWJ2cHgvJChmaWxlKSkKK2VuZGlmCisKKyMgUHVsbCBvdXQg
YXNzZW1ibHkgZmlsZXMsIHNwbGl0dGluZyBORU9OIGZyb20gdGhlIHJlc3QuICBUaGlzIGlzCisj
IGRvbmUgdG8gc3BlY2lmeSB0aGF0IHRoZSBORU9OIGFzc2VtYmx5IGZpbGVzIHVzZSBORU9OIGFz
c2VtYmxlciBmbGFncy4KKyMgeDg2IGFzc2VtYmx5IG1hdGNoZXMgJS5hc20sIGFybSBtYXRjaGVz
ICUuYXNtLlMKKworIyB4ODY6CisKK0NPREVDX1NSQ1NfQVNNX1g4NiA9ICQoZmlsdGVyICUuYXNt
LCAkKENPREVDX1NSQ1NfVU5JUVVFKSkKK0xPQ0FMX1NSQ19GSUxFUyArPSAkKGZvcmVhY2ggZmls
ZSwgJChDT0RFQ19TUkNTX0FTTV9YODYpLCBsaWJ2cHgvJChmaWxlKSkKKworIyBhcm06CitDT0RF
Q19TUkNTX0FTTV9BUk1fQUxMID0gJChmaWx0ZXIgJS5hc20uUywgJChDT0RFQ19TUkNTX1VOSVFV
RSkpCitDT0RFQ19TUkNTX0FTTV9BUk0gPSAkKGZvcmVhY2ggdiwgXAorICAgICAgICAgICAgICAg
ICAgICAgJChDT0RFQ19TUkNTX0FTTV9BUk1fQUxMKSwgXAorICAgICAgICAgICAgICAgICAgICAg
JChpZiAkKGZpbmRzdHJpbmcgbmVvbiwkKHYpKSwsJCh2KSkpCitDT0RFQ19TUkNTX0FTTV9BRFMy
R0FTID0gJChwYXRzdWJzdCAlLlMsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAkKEFTTV9D
TlZfUEFUSF9MT0NBTCkvbGlidnB4LyUuUywgXAorICAgICAgICAgICAgICAgICAgICAgICAgICQo
Q09ERUNfU1JDU19BU01fQVJNKSkKK0xPQ0FMX1NSQ19GSUxFUyArPSAkKENPREVDX1NSQ1NfQVNN
X0FEUzJHQVMpCisKK2lmZXEgKCQoVEFSR0VUX0FSQ0hfQUJJKSxhcm1lYWJpLXY3YSkKKyAgQVNN
X0lOQ0xVREVTIDo9IHZweF9kc3AvYXJtL2lkY3RfbmVvbi5hc20uUworICBDT0RFQ19TUkNTX0FT
TV9ORU9OID0gJChmb3JlYWNoIHYsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICQoQ09ERUNf
U1JDU19BU01fQVJNX0FMTCksXAorICAgICAgICAgICAgICAgICAgICAgICAgJChpZiAkKGZpbmRz
dHJpbmcgbmVvbiwkKHYpKSwkKHYpLCkpCisgIENPREVDX1NSQ1NfQVNNX05FT04gOj0gJChmaWx0
ZXItb3V0ICQoYWRkcHJlZml4ICUsICQoQVNNX0lOQ0xVREVTKSksIFwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAkKENPREVDX1NSQ1NfQVNNX05FT04pKQorICBDT0RFQ19TUkNTX0FTTV9ORU9O
X0FEUzJHQVMgPSAkKHBhdHN1YnN0ICUuUywgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAkKEFTTV9DTlZfUEFUSF9MT0NBTCkvbGlidnB4LyUuUywgXAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAkKENPREVDX1NSQ1NfQVNNX05FT04pKQorICBMT0NBTF9TUkNfRklM
RVMgKz0gJChwYXRzdWJzdCAlLlMsIFwKKyAgICAgICAgICAgICAgICAgICAgICUuUy5uZW9uLCBc
CisgICAgICAgICAgICAgICAgICAgICAkKENPREVDX1NSQ1NfQVNNX05FT05fQURTMkdBUykpCisK
KyAgTkVPTl9BU01fVEFSR0VUUyA9ICQocGF0c3Vic3QgJS5TLCBcCisgICAgICAgICAgICAgICAg
ICAgICAkKEFTTV9DTlZfUEFUSCkvbGlidnB4LyUuUywgXAorICAgICAgICAgICAgICAgICAgICAg
JChDT0RFQ19TUkNTX0FTTV9ORU9OKSkKKyMgYWRkIGEgZGVwZW5kZW5jeSB0byB0aGUgZnVsbCBw
YXRoIHRvIHRoZSBhZHMyZ2FzIG91dHB1dCB0byBlbnN1cmUgdGhlCisjIGluY2x1ZGVzIGFyZSBj
b252ZXJ0ZWQgZmlyc3QuCitpZm5lcSAoJChzdHJpcCAkKE5FT05fQVNNX1RBUkdFVFMpKSwpCisk
KE5FT05fQVNNX1RBUkdFVFMpOiAkKGFkZHByZWZpeCAkKEFTTV9DTlZfUEFUSCkvbGlidnB4Lywg
JChBU01fSU5DTFVERVMpKQorZW5kaWYKK2VuZGlmCisKK0xPQ0FMX0NGTEFHUyArPSBcCisgICAg
LURIQVZFX0NPTkZJR19IPXZweF9jb25maWcuaCBcCisgICAgLUkkKExJQlZQWF9QQVRIKSBcCisg
ICAgLUkkKEFTTV9DTlZfUEFUSCkgXAorICAgIC1JJChBU01fQ05WX1BBVEgpL2xpYnZweAorCitM
T0NBTF9NT0RVTEUgOj0gbGlidnB4CisKK2lmZXEgKCQoQ09ORklHX1JVTlRJTUVfQ1BVX0RFVEVD
VCkseWVzKQorICBMT0NBTF9TVEFUSUNfTElCUkFSSUVTIDo9IGNwdWZlYXR1cmVzCitlbmRpZgor
CisjIEFkZCBhIGRlcGVuZGVuY3kgdG8gZm9yY2UgZ2VuZXJhdGlvbiBvZiB0aGUgUlRDRCBmaWxl
cy4KK2RlZmluZSBydGNkX2RlcF90ZW1wbGF0ZQorcnRjZF9kZXBfdGVtcGxhdGVfU1JDUyA6PSAk
KGFkZHByZWZpeCAkKExPQ0FMX1BBVEgpLywgJChMT0NBTF9TUkNfRklMRVMpKQorcnRjZF9kZXBf
dGVtcGxhdGVfU1JDUyA6PSAkJChydGNkX2RlcF90ZW1wbGF0ZV9TUkNTOi5uZW9uPSkKK2lmZXEg
KCQoQ09ORklHX1ZQOCksIHllcykKKyQkKHJ0Y2RfZGVwX3RlbXBsYXRlX1NSQ1MpOiB2cDhfcnRj
ZC5oCitlbmRpZgoraWZlcSAoJChDT05GSUdfVlA5KSwgeWVzKQorJCQocnRjZF9kZXBfdGVtcGxh
dGVfU1JDUyk6IHZwOV9ydGNkLmgKK2VuZGlmCiskJChydGNkX2RlcF90ZW1wbGF0ZV9TUkNTKTog
dnB4X3NjYWxlX3J0Y2QuaAorJCQocnRjZF9kZXBfdGVtcGxhdGVfU1JDUyk6IHZweF9kc3BfcnRj
ZC5oCisKK3J0Y2RfZGVwX3RlbXBsYXRlX0NPTkZJR19BU01fQUJJUyA6PSB4ODYgeDg2XzY0IGFy
bWVhYmktdjdhCitpZm5lcSAoJCQoZmluZHN0cmluZyAkKFRBUkdFVF9BUkNIX0FCSSksJCQocnRj
ZF9kZXBfdGVtcGxhdGVfQ09ORklHX0FTTV9BQklTKSksKQorJCQocnRjZF9kZXBfdGVtcGxhdGVf
U1JDUyk6IHZweF9jb25maWcuYXNtCitlbmRpZgorZW5kZWYKKworJChldmFsICQoY2FsbCBydGNk
X2RlcF90ZW1wbGF0ZSkpCisKKy5QSE9OWTogY2xlYW4KK2NsZWFuOgorCUBlY2hvICJDbGVhbjog
YWRzMmdhcyBmaWxlcyBbJChUQVJHRVRfQVJDSF9BQkkpXSIKKwkkKHFleGVjKSQoUk0pICQoQ09E
RUNfU1JDU19BU01fQURTMkdBUykgJChDT0RFQ19TUkNTX0FTTV9ORU9OX0FEUzJHQVMpCisJJChx
ZXhlYykkKFJNKSAtciAkKEFTTV9DTlZfUEFUSCkKKwkkKHFleGVjKSQoUk0pICQoQ0xFQU4tT0JK
UykKKworaWZlcSAoJChFTkFCTEVfU0hBUkVEKSwxKQorICBMT0NBTF9DRkxBR1MgKz0gLWZQSUMK
KyAgaW5jbHVkZSAkKEJVSUxEX1NIQVJFRF9MSUJSQVJZKQorZWxzZQorICBpbmNsdWRlICQoQlVJ
TERfU1RBVElDX0xJQlJBUlkpCitlbmRpZgorCitpZmVxICgkKENPTkZJR19SVU5USU1FX0NQVV9E
RVRFQ1QpLHllcykKKyQoY2FsbCBpbXBvcnQtbW9kdWxlLGFuZHJvaWQvY3B1ZmVhdHVyZXMpCitl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL01ha2VmaWxlIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC9idWlsZC9tYWtlL01ha2VmaWxlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjljYTk3YzhjNjQwNjI3OTU1Njk0
M2RmMmNlMjk3ZDEyYTdlYjA1ZjIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2J1aWxk
L21ha2UvTWFrZWZpbGUKQEAgLTAsMCArMSw0NjQgQEAKKyMjCisjIyAgQ29weXJpZ2h0IChjKSAy
MDEwIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyMjCisj
IyAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGlj
ZW5zZQorIyMgIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJv
b3Qgb2YgdGhlIHNvdXJjZQorIyMgIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHBy
b3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyMjICBpbiB0aGUgZmlsZSBQQVRFTlRT
LiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisjIyAgYmUgZm91bmQgaW4g
dGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisjIworCisK
K2luY2x1ZGUgY29uZmlnLm1rCitxdWlldD89dHJ1ZQoraWZlcSAoJCh0YXJnZXQpLCkKKyMgSWYg
YSB0YXJnZXQgd2Fzbid0IHNwZWNpZmllZCwgaW52b2tlIGZvciBhbGwgZW5hYmxlZCB0YXJnZXRz
LgorLkRFRkFVTFQ6CisJQGZvciB0IGluICQoQUxMX1RBUkdFVFMpOyBkbyBcCisJICAgICAkKE1B
S0UpIC0tbm8tcHJpbnQtZGlyZWN0b3J5IHRhcmdldD0kJHQgJChNQUtFQ01ER09BTFMpIHx8IGV4
aXQgJCQ/O1wKKyAgICAgICAgZG9uZQorYWxsOiAuREVGQVVMVAorY2xlYW46OiAuREVGQVVMVAor
ZXhhbXBsZXRlc3Q6IC5ERUZBVUxUCitpbnN0YWxsOjogLkRFRkFVTFQKK3Rlc3Q6OiAuREVGQVVM
VAordGVzdC1uby1kYXRhLWNoZWNrOjogLkRFRkFVTFQKK3Rlc3RkYXRhOjogLkRFRkFVTFQKK3V0
aWx0ZXN0OiAuREVGQVVMVAorZXhhbXBsZXRlc3Qtbm8tZGF0YS1jaGVjayB1dGlsdGVzdC1uby1k
YXRhLWNoZWNrOiAuREVGQVVMVAordGVzdF8lOiAuREVGQVVMVCA7CisKKyMgTm90ZTogbWQ1c3Vt
IGlzIG5vdCBpbnN0YWxsZWQgb24gT1MgWCwgYnV0IG9wZW5zc2wgaXMuIE9wZW5zc2wgbWF5IG5v
dCBiZQorIyBpbnN0YWxsZWQgb24gY3lnd2luLCBzbyB3ZSBuZWVkIHRvIGF1dG9kZXRlY3QgaGVy
ZS4KK21kNXN1bSA6PSAkKGZpcnN0d29yZCAkKHdpbGRjYXJkIFwKKyAgICAgICAgICAkKGZvcmVh
Y2ggZSxtZDVzdW0gb3BlbnNzbCxcCisgICAgICAgICAgJChmb3JlYWNoIHAsJChzdWJzdCA6LCAs
JChQQVRIKSksJChwKS8kKGUpKikpXAorICAgICAgICAgICkpCittZDVzdW0gOj0gJChpZiAkKGZp
bHRlciAlb3BlbnNzbCwkKG1kNXN1bSkpLCQobWQ1c3VtKSBkZ3N0IC1tZDUsJChtZDVzdW0pKQor
CitUR1RfQ0M6PSQod29yZCAzLCAkKHN1YnN0IC0sICwkKFRPT0xDSEFJTikpKQorZGlzdDoKKwlA
Zm9yIHQgaW4gJChBTExfVEFSR0VUUyk7IGRvIFwKKwkgICAgICQoTUFLRSkgLS1uby1wcmludC1k
aXJlY3RvcnkgdGFyZ2V0PSQkdCAkKE1BS0VDTURHT0FMUykgfHwgZXhpdCAkJD87XAorICAgICAg
ICBkb25lCisgICAgICAgICMgUnVuIGNvbmZpZ3VyZSBmb3IgdGhlIHVzZXIgd2l0aCB0aGUgY3Vy
cmVudCB0b29sY2hhaW4uCisJQGlmIFsgLWQgIiQoRElTVF9ESVIpL3NyYyIgXTsgdGhlbiBcCisg
ICAgICAgICAgICBta2RpciAtcCAiJChESVNUX0RJUikvYnVpbGQiOyBcCisgICAgICAgICAgICBj
ZCAiJChESVNUX0RJUikvYnVpbGQiOyBcCisgICAgICAgICAgICBlY2hvICJSZXJ1bm5pbmcgY29u
ZmlndXJlICQoQ09ORklHVVJFX0FSR1MpIjsgXAorICAgICAgICAgICAgLi4vc3JjL2NvbmZpZ3Vy
ZSAkKENPTkZJR1VSRV9BUkdTKTsgXAorICAgICAgICAgICAgJChpZiAkKGZpbHRlciB2cyUsJChU
R1RfQ0MpKSxtYWtlIE5PX0xBVU5DSF9ERVZFTlY9MTspIFwKKyAgICAgICAgZmkKKwlAaWYgWyAt
ZCAiJChESVNUX0RJUikiIF07IHRoZW4gXAorICAgICAgICAgICAgZWNobyAiICAgIFtNRDVTVU1d
ICQoRElTVF9ESVIpIjsgXAorCSAgICBjZCAkKERJU1RfRElSKSAmJiBcCisJICAgICQobWQ1c3Vt
KSBgZmluZCAuIC1uYW1lIG1kNXN1bXMudHh0IC1wcnVuZSAtbyAtdHlwZSBmIC1wcmludGAgXAor
ICAgICAgICAgICAgICAgIHwgc2VkIC1lICdzL01ENShcKC4qXCkpPSBcKFswLTlhLWZdXHszMlx9
XCkvXDIgIFwxLycgXAorICAgICAgICAgICAgICAgID4gbWQ1c3Vtcy50eHQ7XAorICAgICAgICBm
aQorZW5kaWYKKworIyBTaW5jZSB3ZSBpbnZva2UgbWFrZSByZWN1cnNpdmVseSBmb3IgbXVsdGlw
bGUgdGFyZ2V0cyB3ZSBuZWVkIHRvIGluY2x1ZGUgdGhlCisjIC5tayBmaWxlIGZvciB0aGUgY29y
cmVjdCB0YXJnZXQsIGJ1dCBvbmx5IHdoZW4gJCh0YXJnZXQpIGlzIG5vbi1lbXB0eS4KK2lmbmVx
ICgkKHRhcmdldCksKQoraW5jbHVkZSAkKHRhcmdldCktJChUT09MQ0hBSU4pLm1rCitlbmRpZgor
QlVJTERfUk9PVD89LgorVlBBVEg9JChTUkNfUEFUSF9CQVJFKQorQ0ZMQUdTKz0tSSQoQlVJTERf
UEZYKSQoQlVJTERfUk9PVCkgLUkkKFNSQ19QQVRIKQorQ1hYRkxBR1MrPS1JJChCVUlMRF9QRlgp
JChCVUlMRF9ST09UKSAtSSQoU1JDX1BBVEgpCitBU0ZMQUdTKz0tSSQoQlVJTERfUEZYKSQoQlVJ
TERfUk9PVCkvIC1JJChTUkNfUEFUSCkvCitESVNUX0RJUj89ZGlzdAorSE9TVENDPz1nY2MKK1RH
VF9JU0E6PSQod29yZCAxLCAkKHN1YnN0IC0sICwkKFRPT0xDSEFJTikpKQorVEdUX09TOj0kKHdv
cmQgMiwgJChzdWJzdCAtLCAsJChUT09MQ0hBSU4pKSkKK1RHVF9DQzo9JCh3b3JkIDMsICQoc3Vi
c3QgLSwgLCQoVE9PTENIQUlOKSkpCitxdWlldDo9JChpZiAkKG9yICQodmVyYm9zZSksICQoVikp
LCwgeWVzKQorcWV4ZWM9JChpZiAkKHF1aWV0KSxAKQorCisjIENhbmNlbCBidWlsdC1pbiBpbXBs
aWNpdCBydWxlcworJTogJS5vCislLmFzbToKKyUuYToKKyU6ICUuY2MKKworIworIyBDb21tb24g
cnVsZXMiCisjCisuUEhPTlk6IGFsbAorYWxsOgorCisuUEhPTlk6IGNsZWFuCitjbGVhbjo6CisJ
cm0gLWYgJChPQkpTLXllcykgJChPQkpTLXllczoubz0uZCkgJChPQkpTLXllczouYXNtLlMubz0u
YXNtLlMpCisJcm0gLWYgJChDTEVBTi1PQkpTKQorCisuUEhPTlk6IGNsZWFuCitkaXN0Y2xlYW46
IGNsZWFuCisJaWYgWyAteiAiJCh0YXJnZXQpIiBdOyB0aGVuIFwKKyAgICAgIHJtIC1mIE1ha2Vm
aWxlOyBcCisgICAgICBybSAtZiBjb25maWcubG9nIGNvbmZpZy5tazsgXAorICAgICAgcm0gLWYg
dnB4X2NvbmZpZy5baGNdIHZweF9jb25maWcuYXNtOyBcCisgICAgICBybSAtZiBhcm1fbmVvbi5o
OyBcCisgICAgZWxzZSBcCisgICAgICBybSAtZiAkKHRhcmdldCktJChUT09MQ0hBSU4pLm1rOyBc
CisgICAgZmkKKworLlBIT05ZOiBkaXN0CitkaXN0OgorLlBIT05ZOiBleGFtcGxldGVzdAorZXhh
bXBsZXRlc3Q6CisuUEhPTlk6IGluc3RhbGwKK2luc3RhbGw6OgorLlBIT05ZOiB0ZXN0Cit0ZXN0
OjoKKy5QSE9OWTogdGVzdGRhdGEKK3Rlc3RkYXRhOjoKKy5QSE9OWTogdXRpbHRlc3QKK3V0aWx0
ZXN0OgorLlBIT05ZOiB0ZXN0LW5vLWRhdGEtY2hlY2sgZXhhbXBsZXRlc3Qtbm8tZGF0YS1jaGVj
ayB1dGlsdGVzdC1uby1kYXRhLWNoZWNrCit0ZXN0LW5vLWRhdGEtY2hlY2s6OgorZXhhbXBsZXRl
c3Qtbm8tZGF0YS1jaGVjayB1dGlsdGVzdC1uby1kYXRhLWNoZWNrOgorCisjIEZvcmNlIHRvIHJl
YWxpZ24gc3RhY2sgYWx3YXlzIG9uIE9TLzIKK2lmZXEgKCQoVE9PTENIQUlOKSwgeDg2LW9zMi1n
Y2MpCitDRkxBR1MgKz0gLW1zdGFja3JlYWxpZ24KK2VuZGlmCisKKyMgeDg2W182NF0KKyQoQlVJ
TERfUEZYKSVfbW14LmMuZDogQ0ZMQUdTICs9IC1tbW14CiskKEJVSUxEX1BGWCklX21teC5jLm86
IENGTEFHUyArPSAtbW1teAorJChCVUlMRF9QRlgpJV9zc2UyLmMuZDogQ0ZMQUdTICs9IC1tc3Nl
MgorJChCVUlMRF9QRlgpJV9zc2UyLmMubzogQ0ZMQUdTICs9IC1tc3NlMgorJChCVUlMRF9QRlgp
JV9zc2UzLmMuZDogQ0ZMQUdTICs9IC1tc3NlMworJChCVUlMRF9QRlgpJV9zc2UzLmMubzogQ0ZM
QUdTICs9IC1tc3NlMworJChCVUlMRF9QRlgpJV9zc3NlMy5jLmQ6IENGTEFHUyArPSAtbXNzc2Uz
CiskKEJVSUxEX1BGWCklX3Nzc2UzLmMubzogQ0ZMQUdTICs9IC1tc3NzZTMKKyQoQlVJTERfUEZY
KSVfc3NlNC5jLmQ6IENGTEFHUyArPSAtbXNzZTQuMQorJChCVUlMRF9QRlgpJV9zc2U0LmMubzog
Q0ZMQUdTICs9IC1tc3NlNC4xCiskKEJVSUxEX1BGWCklX2F2eC5jLmQ6IENGTEFHUyArPSAtbWF2
eAorJChCVUlMRF9QRlgpJV9hdnguYy5vOiBDRkxBR1MgKz0gLW1hdngKKyQoQlVJTERfUEZYKSVf
YXZ4Mi5jLmQ6IENGTEFHUyArPSAtbWF2eDIKKyQoQlVJTERfUEZYKSVfYXZ4Mi5jLm86IENGTEFH
UyArPSAtbWF2eDIKKyQoQlVJTERfUEZYKSVfYXZ4NTEyLmMuZDogQ0ZMQUdTICs9IC1tYXZ4NTEy
ZiAtbWF2eDUxMmNkIC1tYXZ4NTEyYncgLW1hdng1MTJkcSAtbWF2eDUxMnZsCiskKEJVSUxEX1BG
WCklX2F2eDUxMi5jLm86IENGTEFHUyArPSAtbWF2eDUxMmYgLW1hdng1MTJjZCAtbWF2eDUxMmJ3
IC1tYXZ4NTEyZHEgLW1hdng1MTJ2bAorCisjIFBPV0VSCiskKEJVSUxEX1BGWCklX3ZzeC5jLmQ6
IENGTEFHUyArPSAtbWFsdGl2ZWMgLW12c3gKKyQoQlVJTERfUEZYKSVfdnN4LmMubzogQ0ZMQUdT
ICs9IC1tYWx0aXZlYyAtbXZzeAorCisjIE1JUFMKKyQoQlVJTERfUEZYKSVfbXNhLmMuZDogQ0ZM
QUdTICs9IC1tbXNhCiskKEJVSUxEX1BGWCklX21zYS5jLm86IENGTEFHUyArPSAtbW1zYQorCisk
KEJVSUxEX1BGWCklLmMuZDogJS5jCisJJChpZiAkKHF1aWV0KSxAZWNobyAiICAgIFtERVBdICRA
IikKKwkkKHFleGVjKW1rZGlyIC1wICQoZGlyICRAKQorCSQocWV4ZWMpJChDQykgJChJTlRFUk5B
TF9DRkxBR1MpICQoQ0ZMQUdTKSAtTSAkPCB8ICQoZm10X2RlcHMpID4gJEAKKworJChCVUlMRF9Q
RlgpJS5jLm86ICUuYworCSQoaWYgJChxdWlldCksQGVjaG8gIiAgICBbQ0NdICRAIikKKwkkKHFl
eGVjKSQoaWYgJChDT05GSUdfREVQRU5ERU5DWV9UUkFDS0lORyksLG1rZGlyIC1wICQoZGlyICRA
KSkKKwkkKHFleGVjKSQoQ0MpICQoSU5URVJOQUxfQ0ZMQUdTKSAkKENGTEFHUykgLWMgLW8gJEAg
JDwKKworJChCVUlMRF9QRlgpJS5jYy5kOiAlLmNjCisJJChpZiAkKHF1aWV0KSxAZWNobyAiICAg
IFtERVBdICRAIikKKwkkKHFleGVjKW1rZGlyIC1wICQoZGlyICRAKQorCSQocWV4ZWMpJChDWFgp
ICQoSU5URVJOQUxfQ0ZMQUdTKSAkKENYWEZMQUdTKSAtTSAkPCB8ICQoZm10X2RlcHMpID4gJEAK
KworJChCVUlMRF9QRlgpJS5jYy5vOiAlLmNjCisJJChpZiAkKHF1aWV0KSxAZWNobyAiICAgIFtD
WFhdICRAIikKKwkkKHFleGVjKSQoaWYgJChDT05GSUdfREVQRU5ERU5DWV9UUkFDS0lORyksLG1r
ZGlyIC1wICQoZGlyICRAKSkKKwkkKHFleGVjKSQoQ1hYKSAkKElOVEVSTkFMX0NGTEFHUykgJChD
WFhGTEFHUykgLWMgLW8gJEAgJDwKKworJChCVUlMRF9QRlgpJS5jcHAuZDogJS5jcHAKKwkkKGlm
ICQocXVpZXQpLEBlY2hvICIgICAgW0RFUF0gJEAiKQorCSQocWV4ZWMpbWtkaXIgLXAgJChkaXIg
JEApCisJJChxZXhlYykkKENYWCkgJChJTlRFUk5BTF9DRkxBR1MpICQoQ1hYRkxBR1MpIC1NICQ8
IHwgJChmbXRfZGVwcykgPiAkQAorCiskKEJVSUxEX1BGWCklLmNwcC5vOiAlLmNwcAorCSQoaWYg
JChxdWlldCksQGVjaG8gIiAgICBbQ1hYXSAkQCIpCisJJChxZXhlYykkKGlmICQoQ09ORklHX0RF
UEVOREVOQ1lfVFJBQ0tJTkcpLCxta2RpciAtcCAkKGRpciAkQCkpCisJJChxZXhlYykkKENYWCkg
JChJTlRFUk5BTF9DRkxBR1MpICQoQ1hYRkxBR1MpIC1jIC1vICRAICQ8CisKKyQoQlVJTERfUEZY
KSUuYXNtLmQ6ICUuYXNtCisJJChpZiAkKHF1aWV0KSxAZWNobyAiICAgIFtERVBdICRAIikKKwkk
KHFleGVjKW1rZGlyIC1wICQoZGlyICRAKQorCSQocWV4ZWMpJChTUkNfUEFUSF9CQVJFKS9idWls
ZC9tYWtlL2dlbl9hc21fZGVwcy5zaCBcCisgICAgICAgICAgICAtLWJ1aWxkLXBmeD0kKEJVSUxE
X1BGWCkgLS1kZXBmaWxlPSRAICQoQVNGTEFHUykgJDwgPiAkQAorCiskKEJVSUxEX1BGWCklLmFz
bS5vOiAlLmFzbQorCSQoaWYgJChxdWlldCksQGVjaG8gIiAgICBbQVNdICRAIikKKwkkKHFleGVj
KSQoaWYgJChDT05GSUdfREVQRU5ERU5DWV9UUkFDS0lORyksLG1rZGlyIC1wICQoZGlyICRAKSkK
KwkkKHFleGVjKSQoQVMpICQoQVNGTEFHUykgLW8gJEAgJDwKKworJChCVUlMRF9QRlgpJS5TLmQ6
ICUuUworCSQoaWYgJChxdWlldCksQGVjaG8gIiAgICBbREVQXSAkQCIpCisJJChxZXhlYylta2Rp
ciAtcCAkKGRpciAkQCkKKwkkKHFleGVjKSQoU1JDX1BBVEhfQkFSRSkvYnVpbGQvbWFrZS9nZW5f
YXNtX2RlcHMuc2ggXAorICAgICAgICAgICAgLS1idWlsZC1wZng9JChCVUlMRF9QRlgpIC0tZGVw
ZmlsZT0kQCAkKEFTRkxBR1MpICQ8ID4gJEAKKworJChCVUlMRF9QRlgpJS5TLm86ICUuUworCSQo
aWYgJChxdWlldCksQGVjaG8gIiAgICBbQVNdICRAIikKKwkkKHFleGVjKSQoaWYgJChDT05GSUdf
REVQRU5ERU5DWV9UUkFDS0lORyksLG1rZGlyIC1wICQoZGlyICRAKSkKKwkkKHFleGVjKSQoQVMp
ICQoQVNGTEFHUykgLW8gJEAgJDwKKworLlBSRUNJT1VTOiAlLmMuUworJS5jLlM6IENGTEFHUyAr
PSAtRElOTElORV9BU00KKyQoQlVJTERfUEZYKSUuYy5TOiAlLmMKKwkkKGlmICQocXVpZXQpLEBl
Y2hvICIgICAgW0dFTl0gJEAiKQorCSQocWV4ZWMpJChpZiAkKENPTkZJR19ERVBFTkRFTkNZX1RS
QUNLSU5HKSwsbWtkaXIgLXAgJChkaXIgJEApKQorCSQocWV4ZWMpJChDQykgLVMgJChDRkxBR1Mp
IC1vICRAICQ8CisKKy5QUkVDSU9VUzogJS5hc20uUworJChCVUlMRF9QRlgpJS5hc20uUzogJS5h
c20KKwkkKGlmICQocXVpZXQpLEBlY2hvICIgICAgW0FTTSBDT05WRVJTSU9OXSAkQCIpCisJJChx
ZXhlYylta2RpciAtcCAkKGRpciAkQCkKKwkkKHFleGVjKSQoQVNNX0NPTlZFUlNJT04pIDwkPCA+
JEAKKworIyBJZiB3ZSdyZSBpbiBkZWJ1ZyBtb2RlLCBwcmV0ZW5kIHdlIGRvbid0IGhhdmUgR05V
IHN0cmlwLCB0byBmYWxsIGJhY2sgdG8KKyMgdGhlIGNvcHkgaW1wbGVtZW50YXRpb24KK0hBVkVf
R05VX1NUUklQIDo9ICQoaWYgJChDT05GSUdfREVCVUcpLCwkKEhBVkVfR05VX1NUUklQKSkKK2lm
ZXEgKCQoSEFWRV9HTlVfU1RSSVApLHllcykKKyMgT2xkZXIgYmludXRpbHMgc3RyaXAgZ2xvYmFs
IHN5bWJvbHMgbm90IG5lZWRlZCBmb3IgcmVsb2NhdGlvbiBwcm9jZXNzaW5nCisjIHdoZW4gZ2l2
ZW4gLS1zdHJpcC11bm5lZWRlZC4gVXNpbmcgbm0gYW5kIGF3ayB0byBpZGVudGlmeSBnbG9iYWxz
IGFuZAorIyBrZWVwIHRoZW0gY2F1c2VkIGNvbW1hbmQgbGluZSBsZW5ndGggaXNzdWVzIHVuZGVy
IG1pbmd3IGFuZCBzZWdmYXVsdHMgaW4KKyMgdGVzdF9saWJ2cHggd2VyZSBvYnNlcnZlZCB1bmRl
ciBPUy8yOiBzaW1wbHkgdXNlIC0tc3RyaXAtZGVidWcuCislLmE6ICVfZy5hCisJJChpZiAkKHF1
aWV0KSxAZWNobyAiICAgIFtTVFJJUF0gJEAgPCAkPCIpCisJJChxZXhlYykkKFNUUklQKSAtLXN0
cmlwLWRlYnVnIFwKKyAgICAgICAgICAtbyAkQCAkPAorZWxzZQorJS5hOiAlX2cuYQorCSQoaWYg
JChxdWlldCksQGVjaG8gIiAgICBbQ1BdICRAIDwgJDwiKQorCSQocWV4ZWMpY3AgJDwgJEAKK2Vu
ZGlmCisKKyMKKyMgVXRpbGl0eSBmdW5jdGlvbnMKKyMKK3BhaXJtYXA9JChpZiAkKHN0cmlwICQo
MikpLFwKKyAgICAkKGNhbGwgJCgxKSwkKHdvcmQgMSwkKDIpKSwkKHdvcmQgMiwkKDIpKSlcCisg
ICAgJChjYWxsIHBhaXJtYXAsJCgxKSwkKHdvcmRsaXN0IDMsJCh3b3JkcyAkKDIpKSwkKDIpKSlc
CispCisKK2VuYWJsZWQ9JChmaWx0ZXItb3V0ICQoJCgxKS1ubyksJCgkKDEpLXllcykpCitjb25k
X2VuYWJsZWQ9JChpZiAkKGZpbHRlciB5ZXMsJCgkKDEpKSksICQoY2FsbCBlbmFibGVkLCQoMikp
KQorCitmaW5kX2ZpbGUxPSQod29yZCAxLCQod2lsZGNhcmQgJChzdWJzdCAvLywvLCQoYWRkc3Vm
Zml4IC8kKDEpLCQoMikpKSkpCitmaW5kX2ZpbGU9JChmb3JlYWNoIGYsJCgxKSwkKGNhbGwgZmlu
ZF9maWxlMSwkKHN0cmlwICQoZikpLCQoc3RyaXAgJCgyKSkpICkKK29ial9wYXRzPS5jPS5jLm8g
JChBU19TRlgpPSQoQVNfU0ZYKS5vIC5jYz0uY2MubyAuY3BwPS5jcHAubworb2Jqcz0kKGFkZHBy
ZWZpeCAkKEJVSUxEX1BGWCksJChmb3JlYWNoIHAsJChvYmpfcGF0cyksJChmaWx0ZXIgJS5vLCQo
MTokKHApKSkgKSkKKworaW5zdGFsbF9tYXBfdGVtcGxhdGVzPSQoZXZhbCAkKGNhbGwgaW5zdGFs
bF9tYXBfdGVtcGxhdGUsJCgxKSwkKDIpKSkKKworbm90PSQoc3Vic3QgeWVzLG5vLCQoMSkpCisK
K2lmZXEgKCQoQ09ORklHX01TVlMpLHllcykKK2xpYl9maWxlX25hbWU9JCgxKS5saWIKK2Vsc2UK
K2xpYl9maWxlX25hbWU9bGliJCgxKS5hCitlbmRpZgorIworIyBSdWxlIFRlbXBsYXRlcworIwor
ZGVmaW5lIGxpbmtlcl90ZW1wbGF0ZQorJCgxKTogJChmaWx0ZXItb3V0IC0lLCQoMikpCiskKDEp
OgorCSQoaWYgJChxdWlldCksQGVjaG8gICAgIiAgICBbTERdICQkQCIpCisJJChxZXhlYykkJChM
RCkgJCQoc3RyaXAgJCQoSU5URVJOQUxfTERGTEFHUykgJCQoTERGTEFHUykgLW8gJCRAICQoMikg
JCgzKSAkJChleHRyYWxpYnMpKQorZW5kZWYKK2RlZmluZSBsaW5rZXJ4eF90ZW1wbGF0ZQorJCgx
KTogJChmaWx0ZXItb3V0IC0lLCQoMikpCiskKDEpOgorCSQoaWYgJChxdWlldCksQGVjaG8gICAg
IiAgICBbTERdICQkQCIpCisJJChxZXhlYykkJChDWFgpICQkKHN0cmlwICQkKElOVEVSTkFMX0xE
RkxBR1MpICQkKExERkxBR1MpIC1vICQkQCAkKDIpICQoMykgJCQoZXh0cmFsaWJzKSkKK2VuZGVm
CisjIG1ha2UtMy44MCBoYXMgYSBidWcgd2l0aCBleHBhbmRpbmcgbGFyZ2UgaW5wdXQgc3RyaW5n
cyB0byB0aGUgZXZhbCBmdW5jdGlvbiwKKyMgd2hpY2ggd2FzIHRyaWdnZXJlZCBpbiBzb21lIGNh
c2VzIGJ5IHRoZSBmb2xsb3dpbmcgY29tcG9uZW50IG9mCisjIGxpbmtlcl90ZW1wbGF0ZToKKyMg
ICAkKDEpOiAkJChjYWxsIGZpbmRfZmlsZSwgJChwYXRzdWJzdCAtbCUsbGliJS5hLCQoZmlsdGVy
IC1sJSwkKDIpKSksXAorIyAgICAgICAgICAgICAgICAgICAgICAgICAgICQkKHBhdHN1YnN0IC1M
JSwlLCQkKGZpbHRlciAtTCUsJCQoTERGTEFHUykgJCgyKSkpKQorIyBUaGlzIG1heSBiZSB1c2Vm
dWwgdG8gcmV2aXNpdCBpbiB0aGUgZnV0dXJlIChpdCB0cmllcyB0byBsb2NhdGUgbGlicmFyaWVz
CisjIGluIGEgc2VhcmNoIHBhdGggYW5kIGFkZCB0aGVtIGFzIHByZXJlcXVpc2l0ZXMKKworZGVm
aW5lIGluc3RhbGxfbWFwX3RlbXBsYXRlCiskKERJU1RfRElSKS8kKDEpOiAkKDIpCisJJChpZiAk
KHF1aWV0KSxAZWNobyAiICAgIFtJTlNUQUxMXSAkJEAiKQorCSQocWV4ZWMpbWtkaXIgLXAgJCQo
ZGlyICQkQCkKKwkkKHFleGVjKWNwIC1wICQkPCAkJEAKK2VuZGVmCisKK2RlZmluZSBhcmNoaXZl
X3RlbXBsYXRlCisjIE5vdCB1c2luZyBhIHBhdHRlcm4gcnVsZSBoZXJlIGJlY2F1c2Ugd2UgZG9u
J3Qgd2FudCB0byBnZW5lcmF0ZSBlbXB0eQorIyBhcmNoaXZlcyB3aGVuIHRoZXkgYXJlIGxpc3Rl
ZCBhcyBhIGRlcGVuZGVuY3kgaW4gZmlsZXMgbm90IHJlc3BvbnNpYmxlCisjIGZvciBjcmVhdGlu
ZyB0aGVtLgorJCgxKToKKwkkKGlmICQocXVpZXQpLEBlY2hvICIgICAgW0FSXSAkJEAiKQorCSQo
cWV4ZWMpJCQoQVIpICQkKEFSRkxBR1MpICQkQCAkJF4KK2VuZGVmCisKK2RlZmluZSBzb190ZW1w
bGF0ZQorIyBOb3QgdXNpbmcgYSBwYXR0ZXJuIHJ1bGUgaGVyZSBiZWNhdXNlIHdlIGRvbid0IHdh
bnQgdG8gZ2VuZXJhdGUgZW1wdHkKKyMgYXJjaGl2ZXMgd2hlbiB0aGV5IGFyZSBsaXN0ZWQgYXMg
YSBkZXBlbmRlbmN5IGluIGZpbGVzIG5vdCByZXNwb25zaWJsZQorIyBmb3IgY3JlYXRpbmcgdGhl
bS4KKyMKKyMgVGhpcyBuZWVkcyBmdXJ0aGVyIGFic3RyYWN0aW9uIGZvciBkZWFsaW5nIHdpdGgg
bm9uLUdOVSBsaW5rZXJzLgorJCgxKToKKwkkKGlmICQocXVpZXQpLEBlY2hvICIgICAgW0xEXSAk
JEAiKQorCSQocWV4ZWMpJCQoTEQpIC1zaGFyZWQgJCQoTERGTEFHUykgXAorICAgICAgICAgICAg
LVdsLC0tbm8tdW5kZWZpbmVkIC1XbCwtc29uYW1lLCQkKFNPTkFNRSkgXAorICAgICAgICAgICAg
LVdsLC0tdmVyc2lvbi1zY3JpcHQsJCQoRVhQT1JUU19GSUxFKSAtbyAkJEAgXAorICAgICAgICAg
ICAgJCQoZmlsdGVyICUubywkJF4pICQkKGV4dHJhbGlicykKK2VuZGVmCisKK2RlZmluZSBkbF90
ZW1wbGF0ZQorIyBOb3QgdXNpbmcgYSBwYXR0ZXJuIHJ1bGUgaGVyZSBiZWNhdXNlIHdlIGRvbid0
IHdhbnQgdG8gZ2VuZXJhdGUgZW1wdHkKKyMgYXJjaGl2ZXMgd2hlbiB0aGV5IGFyZSBsaXN0ZWQg
YXMgYSBkZXBlbmRlbmN5IGluIGZpbGVzIG5vdCByZXNwb25zaWJsZQorIyBmb3IgY3JlYXRpbmcg
dGhlbS4KKyQoMSk6CisJJChpZiAkKHF1aWV0KSxAZWNobyAiICAgIFtMRF0gJCRAIikKKwkkKHFl
eGVjKSQkKExEKSAtZHluYW1pY2xpYiAkJChMREZMQUdTKSBcCisJICAgIC1leHBvcnRlZF9zeW1i
b2xzX2xpc3QgJCQoRVhQT1JUU19GSUxFKSBcCisgICAgICAgIC1XbCwtaGVhZGVycGFkX21heF9p
bnN0YWxsX25hbWVzLC1jb21wYXRpYmlsaXR5X3ZlcnNpb24sMS4wLC1jdXJyZW50X3ZlcnNpb24s
JCQoVkVSU0lPTl9NQUpPUikgXAorICAgICAgICAtbyAkJEAgXAorICAgICAgICAkJChmaWx0ZXIg
JS5vLCQkXikgJCQoZXh0cmFsaWJzKQorZW5kZWYKKworZGVmaW5lIGRsbF90ZW1wbGF0ZQorIyBO
b3QgdXNpbmcgYSBwYXR0ZXJuIHJ1bGUgaGVyZSBiZWNhdXNlIHdlIGRvbid0IHdhbnQgdG8gZ2Vu
ZXJhdGUgZW1wdHkKKyMgYXJjaGl2ZXMgd2hlbiB0aGV5IGFyZSBsaXN0ZWQgYXMgYSBkZXBlbmRl
bmN5IGluIGZpbGVzIG5vdCByZXNwb25zaWJsZQorIyBmb3IgY3JlYXRpbmcgdGhlbS4KKyQoMSk6
CisJJChpZiAkKHF1aWV0KSxAZWNobyAiICAgIFtMRF0gJCRAIikKKwkkKHFleGVjKSQkKExEKSAt
WmRsbCAkJChMREZMQUdTKSBcCisgICAgICAgIC1vICQkQCBcCisgICAgICAgICQkKGZpbHRlciAl
Lm8sJCReKSAkJChleHRyYWxpYnMpICQkKEVYUE9SVFNfRklMRSkKK2VuZGVmCisKKworIworIyBH
ZXQgY3VycmVudCBjb25maWd1cmF0aW9uCisjCitpZm5lcSAoJCh0YXJnZXQpLCkKK2luY2x1ZGUg
JChTUkNfUEFUSF9CQVJFKS8kKHRhcmdldDotJChUT09MQ0hBSU4pPSkubWsKK2VuZGlmCisKK3Nr
aXBfZGVwcyA6PSAkKGZpbHRlciAlY2xlYW4sJChNQUtFQ01ER09BTFMpKQorc2tpcF9kZXBzICs9
ICQoZmluZHN0cmluZyB0ZXN0ZGF0YSwkKE1BS0VDTURHT0FMUykpCitpZmVxICgkKHN0cmlwICQo
c2tpcF9kZXBzKSksKQorICBpZmVxICgkKENPTkZJR19ERVBFTkRFTkNZX1RSQUNLSU5HKSx5ZXMp
CisgICAgIyBPbGRlciB2ZXJzaW9ucyBvZiBtYWtlIGRvbid0IGxpa2UgLWluY2x1ZGUgZGlyZWN0
aXZlcyB3aXRoIG5vIGFyZ3VtZW50cworICAgIGlmbmVxICgkKGZpbHRlciAlLmQsJChPQkpTLXll
czoubz0uZCkpLCkKKyAgICAgIC1pbmNsdWRlICQoZmlsdGVyICUuZCwkKE9CSlMteWVzOi5vPS5k
KSkKKyAgICBlbmRpZgorICBlbmRpZgorZW5kaWYKKworIworIyBDb25maWd1cmF0aW9uIGRlcGVu
ZGVudCBydWxlcworIworJChjYWxsIHBhaXJtYXAsaW5zdGFsbF9tYXBfdGVtcGxhdGVzLCQoSU5T
VEFMTF9NQVBTKSkKKworRE9DUz0kKGNhbGwgY29uZF9lbmFibGVkLENPTkZJR19JTlNUQUxMX0RP
Q1MsRE9DUykKKy5kb2NzOiAkKERPQ1MpCisJQHRvdWNoICRACisKK0lOU1RBTEwtRE9DUz0kKGNh
bGwgY29uZF9lbmFibGVkLENPTkZJR19JTlNUQUxMX0RPQ1MsSU5TVEFMTC1ET0NTKQoraWZlcSAo
JChNQUtFQ01ER09BTFMpLGRpc3QpCitJTlNUQUxMLURPQ1MrPSQoY2FsbCBjb25kX2VuYWJsZWQs
Q09ORklHX0lOU1RBTExfRE9DUyxESVNULURPQ1MpCitlbmRpZgorLmluc3RhbGwtZG9jczogLmRv
Y3MgJChhZGRwcmVmaXggJChESVNUX0RJUikvLCQoSU5TVEFMTC1ET0NTKSkKKwlAdG91Y2ggJEAK
KworY2xlYW46OgorCXJtIC1mIC5kb2NzIC5pbnN0YWxsLWRvY3MgJChET0NTKQorCitCSU5TPSQo
Y2FsbCBlbmFibGVkLEJJTlMpCisuYmluczogJChCSU5TKQorCUB0b3VjaCAkQAorCitJTlNUQUxM
LUJJTlM9JChjYWxsIGNvbmRfZW5hYmxlZCxDT05GSUdfSU5TVEFMTF9CSU5TLElOU1RBTEwtQklO
UykKK2lmZXEgKCQoTUFLRUNNREdPQUxTKSxkaXN0KQorSU5TVEFMTC1CSU5TKz0kKGNhbGwgY29u
ZF9lbmFibGVkLENPTkZJR19JTlNUQUxMX0JJTlMsRElTVC1CSU5TKQorZW5kaWYKKy5pbnN0YWxs
LWJpbnM6IC5iaW5zICQoYWRkcHJlZml4ICQoRElTVF9ESVIpLywkKElOU1RBTEwtQklOUykpCisJ
QHRvdWNoICRACisKK2NsZWFuOjoKKwlybSAtZiAuYmlucyAuaW5zdGFsbC1iaW5zICQoQklOUykK
KworTElCUz0kKGNhbGwgZW5hYmxlZCxMSUJTKQorLmxpYnM6ICQoTElCUykKKwlAdG91Y2ggJEAK
KyQoZm9yZWFjaCBsaWIsJChmaWx0ZXIgJV9nLmEsJChMSUJTKSksJChldmFsICQoY2FsbCBhcmNo
aXZlX3RlbXBsYXRlLCQobGliKSkpKQorJChmb3JlYWNoIGxpYiwkKGZpbHRlciAlc28uJChTT19W
RVJTSU9OX01BSk9SKS4kKFNPX1ZFUlNJT05fTUlOT1IpLiQoU09fVkVSU0lPTl9QQVRDSCksJChM
SUJTKSksJChldmFsICQoY2FsbCBzb190ZW1wbGF0ZSwkKGxpYikpKSkKKyQoZm9yZWFjaCBsaWIs
JChmaWx0ZXIgJSQoU09fVkVSU0lPTl9NQUpPUikuZHlsaWIsJChMSUJTKSksJChldmFsICQoY2Fs
bCBkbF90ZW1wbGF0ZSwkKGxpYikpKSkKKyQoZm9yZWFjaCBsaWIsJChmaWx0ZXIgJSQoU09fVkVS
U0lPTl9NQUpPUikuZGxsLCQoTElCUykpLCQoZXZhbCAkKGNhbGwgZGxsX3RlbXBsYXRlLCQobGli
KSkpKQorCitJTlNUQUxMLUxJQlM9JChjYWxsIGNvbmRfZW5hYmxlZCxDT05GSUdfSU5TVEFMTF9M
SUJTLElOU1RBTEwtTElCUykKK2lmZXEgKCQoTUFLRUNNREdPQUxTKSxkaXN0KQorSU5TVEFMTC1M
SUJTKz0kKGNhbGwgY29uZF9lbmFibGVkLENPTkZJR19JTlNUQUxMX0xJQlMsRElTVC1MSUJTKQor
ZW5kaWYKKy5pbnN0YWxsLWxpYnM6IC5saWJzICQoYWRkcHJlZml4ICQoRElTVF9ESVIpLywkKElO
U1RBTEwtTElCUykpCisJQHRvdWNoICRACisKK2NsZWFuOjoKKwlybSAtZiAubGlicyAuaW5zdGFs
bC1saWJzICQoTElCUykKKworaWZlcSAoJChDT05GSUdfRVhURVJOQUxfQlVJTEQpLHllcykKK1BS
T0pFQ1RTPSQoY2FsbCBlbmFibGVkLFBST0pFQ1RTKQorLnByb2plY3RzOiAkKFBST0pFQ1RTKQor
CUB0b3VjaCAkQAorCitJTlNUQUxMLVBST0pFQ1RTPSQoY2FsbCBjb25kX2VuYWJsZWQsQ09ORklH
X0lOU1RBTExfUFJPSkVDVFMsSU5TVEFMTC1QUk9KRUNUUykKK2lmZXEgKCQoTUFLRUNNREdPQUxT
KSxkaXN0KQorSU5TVEFMTC1QUk9KRUNUUys9JChjYWxsIGNvbmRfZW5hYmxlZCxDT05GSUdfSU5T
VEFMTF9QUk9KRUNUUyxESVNULVBST0pFQ1RTKQorZW5kaWYKKy5pbnN0YWxsLXByb2plY3RzOiAu
cHJvamVjdHMgJChhZGRwcmVmaXggJChESVNUX0RJUikvLCQoSU5TVEFMTC1QUk9KRUNUUykpCisJ
QHRvdWNoICRACisKK2NsZWFuOjoKKwlybSAtZiAucHJvamVjdHMgLmluc3RhbGwtcHJvamVjdHMg
JChQUk9KRUNUUykKK2VuZGlmCisKKyMgSWYgdGhlcmUgYXJlIGFueSBzb3VyY2UgZmlsZXMgdG8g
YmUgZGlzdHJpYnV0ZWQsIHRoZW4gaW5jbHVkZSB0aGUgYnVpbGQKKyMgc3lzdGVtIHRvby4KK2lm
bmVxICgkKGNhbGwgZW5hYmxlZCxESVNULVNSQ1MpLCkKKyAgICBESVNULVNSQ1MteWVzICAgICAg
ICAgICAgKz0gY29uZmlndXJlCisgICAgRElTVC1TUkNTLXllcyAgICAgICAgICAgICs9IGJ1aWxk
L21ha2UvY29uZmlndXJlLnNoCisgICAgRElTVC1TUkNTLXllcyAgICAgICAgICAgICs9IGJ1aWxk
L21ha2UvZ2VuX2FzbV9kZXBzLnNoCisgICAgRElTVC1TUkNTLXllcyAgICAgICAgICAgICs9IGJ1
aWxkL21ha2UvTWFrZWZpbGUKKyAgICBESVNULVNSQ1MtJChDT05GSUdfTVNWUykgICs9IGJ1aWxk
L21ha2UvZ2VuX21zdnNfZGVmLnNoCisgICAgRElTVC1TUkNTLSQoQ09ORklHX01TVlMpICArPSBi
dWlsZC9tYWtlL2dlbl9tc3ZzX3Nsbi5zaAorICAgIERJU1QtU1JDUy0kKENPTkZJR19NU1ZTKSAg
Kz0gYnVpbGQvbWFrZS9nZW5fbXN2c192Y3hwcm9qLnNoCisgICAgRElTVC1TUkNTLSQoQ09ORklH
X01TVlMpICArPSBidWlsZC9tYWtlL21zdnNfY29tbW9uLnNoCisgICAgRElTVC1TUkNTLSQoQ09O
RklHX1JWQ1QpICs9IGJ1aWxkL21ha2UvYXJtbGlua19hZGFwdGVyLnNoCisgICAgRElTVC1TUkNT
LSQoVlBYX0FSQ0hfQVJNKSArPSBidWlsZC9tYWtlL2FkczJnYXMucGwKKyAgICBESVNULVNSQ1Mt
JChWUFhfQVJDSF9BUk0pICs9IGJ1aWxkL21ha2UvYWRzMmdhc19hcHBsZS5wbAorICAgIERJU1Qt
U1JDUy0kKFZQWF9BUkNIX0FSTSkgKz0gYnVpbGQvbWFrZS9hZHMyYXJtYXNtX21zLnBsCisgICAg
RElTVC1TUkNTLSQoVlBYX0FSQ0hfQVJNKSArPSBidWlsZC9tYWtlL3RodW1iLnBtCisgICAgRElT
VC1TUkNTLXllcyAgICAgICAgICAgICs9ICQodGFyZ2V0Oi0kKFRPT0xDSEFJTik9KS5taworZW5k
aWYKK0lOU1RBTEwtU1JDUyA6PSAkKGNhbGwgY29uZF9lbmFibGVkLENPTkZJR19JTlNUQUxMX1NS
Q1MsSU5TVEFMTC1TUkNTKQoraWZlcSAoJChNQUtFQ01ER09BTFMpLGRpc3QpCitJTlNUQUxMLVNS
Q1MgKz0gJChjYWxsIGNvbmRfZW5hYmxlZCxDT05GSUdfSU5TVEFMTF9TUkNTLERJU1QtU1JDUykK
K2VuZGlmCisuaW5zdGFsbC1zcmNzOiAkKGFkZHByZWZpeCAkKERJU1RfRElSKS9zcmMvLCQoSU5T
VEFMTC1TUkNTKSkKKwlAdG91Y2ggJEAKKworY2xlYW46OgorCXJtIC1mIC5pbnN0YWxsLXNyY3MK
KworaWZlcSAoJChDT05GSUdfRVhURVJOQUxfQlVJTEQpLHllcykKKyAgICBCVUlMRF9UQVJHRVRT
ICs9IC5wcm9qZWN0cworICAgIElOU1RBTExfVEFSR0VUUyArPSAuaW5zdGFsbC1wcm9qZWN0cwor
ZW5kaWYKK0JVSUxEX1RBUkdFVFMgKz0gLmRvY3MgLmxpYnMgLmJpbnMKK0lOU1RBTExfVEFSR0VU
UyArPSAuaW5zdGFsbC1kb2NzIC5pbnN0YWxsLXNyY3MgLmluc3RhbGwtbGlicyAuaW5zdGFsbC1i
aW5zCithbGw6ICQoQlVJTERfVEFSR0VUUykKK2luc3RhbGw6OiAkKElOU1RBTExfVEFSR0VUUykK
K2Rpc3Q6ICQoSU5TVEFMTF9UQVJHRVRTKQordGVzdDo6CisKKy5TVUZGSVhFUzogICMgRGVsZXRl
IGRlZmF1bHQgc3VmZml4IHJ1bGVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2J1aWxkL21ha2Uv
YWRzMmFybWFzbV9tcy5wbCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9hZHMyYXJtYXNtX21zLnBs
Cm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjJhMmM0NzBmZjg4YTVkMWI1NDhhMDM5MTYxNzRkYmIwOTM2Y2ZhZjkKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2J1aWxkL21ha2UvYWRzMmFybWFzbV9tcy5wbApA
QCAtMCwwICsxLDM5IEBACisjIS91c3IvYmluL2VudiBwZXJsCisjIworIyMgIENvcHlyaWdodCAo
YykgMjAxMyBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisj
IworIyMgIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxl
IGxpY2Vuc2UKKyMjICB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGluIHRo
ZSByb290IG9mIHRoZSBzb3VyY2UKKyMjICB0cmVlLiBBbiBhZGRpdGlvbmFsIGludGVsbGVjdHVh
bCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQgY2FuIGJlIGZvdW5kCisjIyAgaW4gdGhlIGZpbGUgUEFU
RU5UUy4gIEFsbCBjb250cmlidXRpbmcgcHJvamVjdCBhdXRob3JzIG1heQorIyMgIGJlIGZvdW5k
IGluIHRoZSBBVVRIT1JTIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZSB0cmVlLgorIyMK
KwordXNlIEZpbmRCaW47Cit1c2UgbGliICRGaW5kQmluOjpCaW47Cit1c2UgdGh1bWI7CisKK3By
aW50ICI7IFRoaXMgZmlsZSB3YXMgY3JlYXRlZCBmcm9tIGEgLmFzbSBmaWxlXG4iOworcHJpbnQg
IjsgIHVzaW5nIHRoZSBhZHMyYXJtYXNtX21zLnBsIHNjcmlwdC5cbiI7CisKK3doaWxlICg8U1RE
SU4+KQoreworICAgIHVuZGVmICRjb21tZW50OworICAgIHVuZGVmICRsaW5lOworCisgICAgcy9S
RVFVSVJFOC8vOworICAgIHMvUFJFU0VSVkU4Ly87CisgICAgcy9eXHMqQVJNXHMqJC8vOworICAg
IHMvQVJFQVxzK1x8XHwoLiopXHxcfC9BUkVBIHwkMXwvOworICAgIHMvcXN1YmFkZHgvcXNheC9p
OworICAgIHMvcWFkZHN1YngvcWFzeC9pOworCisgICAgdGh1bWI6OkZpeFRodW1iSW5zdHJ1Y3Rp
b25zKCRfLCAxKTsKKworICAgIHMvbGRybmViL2xkcmJuZS9pOworICAgIHMvbGRybmVoL2xkcmhu
ZS9pOworICAgIHMvXihccyopRU5EUC4qLyQmXG4kMUFMSUdOIDQvOworCisgICAgcHJpbnQ7Cit9
CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9hZHMyZ2FzLnBsIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC9idWlsZC9tYWtlL2FkczJnYXMucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjZhOGY1M2VhZTIzOGNjZTM0
MjI5Mzg0NDRkOWZjYWM3MjM4Yjg2NwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVp
bGQvbWFrZS9hZHMyZ2FzLnBsCkBAIC0wLDAgKzEsMjM4IEBACisjIS91c3IvYmluL2VudiBwZXJs
CisjIworIyMgIENvcHlyaWdodCAoYykgMjAxMCBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMuIEFs
bCBSaWdodHMgUmVzZXJ2ZWQuCisjIworIyMgIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdv
dmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UKKyMjICB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0
aGUgTElDRU5TRSBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UKKyMjICB0cmVlLiBBbiBh
ZGRpdGlvbmFsIGludGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQgY2FuIGJlIGZvdW5k
CisjIyAgaW4gdGhlIGZpbGUgUEFURU5UUy4gIEFsbCBjb250cmlidXRpbmcgcHJvamVjdCBhdXRo
b3JzIG1heQorIyMgIGJlIGZvdW5kIGluIHRoZSBBVVRIT1JTIGZpbGUgaW4gdGhlIHJvb3Qgb2Yg
dGhlIHNvdXJjZSB0cmVlLgorIyMKKworCisjIGFkczJnYXMucGwKKyMgQXV0aG9yOiBFcmljIEZ1
bmcgKGVmdW5nIChhdCkgYWNtLm9yZykKKyMKKyMgQ29udmVydCBBUk0gRGV2ZWxvcGVyIFN1aXRl
IDEuMC4xIHN5bnRheCBhc3NlbWJseSBzb3VyY2UgdG8gR05VIGFzIGZvcm1hdAorIworIyBVc2Fn
ZTogY2F0IGlucHV0ZmlsZSB8IHBlcmwgYWRzMmdhcy5wbCA+IG91dHB1dGZpbGUKKyMKKwordXNl
IEZpbmRCaW47Cit1c2UgbGliICRGaW5kQmluOjpCaW47Cit1c2UgdGh1bWI7CisKK215ICR0aHVt
YiA9IDA7CitteSAkZWxmID0gMTsKKworZm9yZWFjaCBteSAkYXJnIChAQVJHVikgeworICAgICR0
aHVtYiA9IDEgaWYgKCRhcmcgZXEgIi10aHVtYiIpOworICAgICRlbGYgPSAwIGlmICgkYXJnIGVx
ICItbm9lbGYiKTsKK30KKworcHJpbnQgIkAgVGhpcyBmaWxlIHdhcyBjcmVhdGVkIGZyb20gYSAu
YXNtIGZpbGVcbiI7CitwcmludCAiQCAgdXNpbmcgdGhlIGFkczJnYXMucGwgc2NyaXB0LlxuIjsK
K3ByaW50ICJcdC5zeW50YXggdW5pZmllZFxuIjsKK2lmICgkdGh1bWIpIHsKKyAgICBwcmludCAi
XHQudGh1bWJcbiI7Cit9CisKKyMgU3RhY2sgb2YgcHJvY2VkdXJlIG5hbWVzLgorQHByb2Nfc3Rh
Y2sgPSAoKTsKKword2hpbGUgKDxTVERJTj4pCit7CisgICAgdW5kZWYgJGNvbW1lbnQ7CisgICAg
dW5kZWYgJGxpbmU7CisgICAgJGNvbW1lbnRfY2hhciA9ICI7IjsKKyAgICAkY29tbWVudF9zdWIg
PSAiQCI7CisKKyAgICAjIEhhbmRsZSBjb21tZW50cy4KKyAgICBpZiAoLyRjb21tZW50X2NoYXIv
KQorICAgIHsKKyAgICAgICRjb21tZW50ID0gIiI7CisgICAgICAoJGxpbmUsICRjb21tZW50KSA9
IC8oLio/KSRjb21tZW50X2NoYXIoLiopLzsKKyAgICAgICRfID0gJGxpbmU7CisgICAgfQorCisg
ICAgIyBMb2FkIGFuZCBzdG9yZSBhbGlnbm1lbnQKKyAgICBzL0AvLDovZzsKKworICAgICMgSGV4
YWRlY2ltYWwgY29uc3RhbnRzIHByZWZhY2VkIGJ5IDB4CisgICAgcy8jJi8jMHgvZzsKKworICAg
ICMgQ29udmVydCA6T1I6IHRvIHwKKyAgICBzLzpPUjovIHwgL2c7CisKKyAgICAjIENvbnZlcnQg
OkFORDogdG8gJgorICAgIHMvOkFORDovICYgL2c7CisKKyAgICAjIENvbnZlcnQgOk5PVDogdG8g
fgorICAgIHMvOk5PVDovIH4gL2c7CisKKyAgICAjIENvbnZlcnQgOlNITDogdG8gPDwKKyAgICBz
LzpTSEw6LyA8PCAvZzsKKworICAgICMgQ29udmVydCA6U0hSOiB0byA+PgorICAgIHMvOlNIUjov
ID4+IC9nOworCisgICAgIyBDb252ZXJ0IEVMU0UgdG8gLmVsc2UKKyAgICBzL1xiRUxTRVxiLy5l
bHNlL2c7CisKKyAgICAjIENvbnZlcnQgRU5ESUYgdG8gLmVuZGlmCisgICAgcy9cYkVORElGXGIv
LmVuZGlmL2c7CisKKyAgICAjIENvbnZlcnQgRUxTRUlGIHRvIC5lbHNlaWYKKyAgICBzL1xiRUxT
RUlGXGIvLmVsc2VpZi9nOworCisgICAgIyBDb252ZXJ0IExUT1JHIHRvIC5sdG9yZworICAgIHMv
XGJMVE9SR1xiLy5sdG9yZy9nOworCisgICAgIyBDb252ZXJ0IGVuZGZ1bmMgdG8gbm90aGluZy4K
KyAgICBzL1xiZW5kZnVuY1xiLy9pZzsKKworICAgICMgQ29udmVydCBGVU5DVElPTiB0byBub3Ro
aW5nLgorICAgIHMvXGJGVU5DVElPTlxiLy9nOworICAgIHMvXGJmdW5jdGlvblxiLy9nOworCisg
ICAgcy9cYkVOVFJZXGIvL2c7CisgICAgcy9cYk1TQVJNQVNNXGIvMC9nOworICAgIHMvXlxzK2Vu
ZFxzKyQvL2c7CisKKyAgICAjIENvbnZlcnQgSUYgOkRFRjp0byAuaWYKKyAgICAjIGdjYyBkb2Vz
bid0IGhhdmUgdGhlIGFiaWxpdHkgdG8gZG8gYSBjb25kaXRpb25hbAorICAgICMgaWYgZGVmaW5l
ZCB2YXJpYWJsZSB0aGF0IGlzIHNldCBieSBJRiA6REVGOiBvbgorICAgICMgYXJtYXNtLCBzbyBj
b252ZXJ0IGl0IHRvIGEgbm9ybWFsIC5pZiBhbmQgdGhlbgorICAgICMgbWFrZSBzdXJlIHRvIGRl
ZmluZSBhIHZhbHVlIGVsZXNld2hlcmUKKyAgICBpZiAocy9cYklGIDpERUY6XGIvLmlmIC9nKQor
ICAgIHsKKyAgICAgICAgcy89Lz09L2c7CisgICAgfQorCisgICAgIyBDb252ZXJ0IElGIHRvIC5p
ZgorICAgIGlmIChzL1xiSUZcYi8uaWYvZykKKyAgICB7CisgICAgICAgIHMvPSsvPT0vZzsKKyAg
ICB9CisKKyAgICAjIENvbnZlcnQgSU5DTFVERSB0byAuSU5DTFVERSAiZmlsZSIKKyAgICBzL0lO
Q0xVREUoXHMqKSguKikkLy5pbmNsdWRlICQxXCIkMlwiLzsKKworICAgICMgQ29kZSBkaXJlY3Rp
dmUgKEFSTSB2cyBUaHVtYikKKyAgICBzL0NPREUoWzAtOV1bMC05XSkvLmNvZGUgJDEvOworCisg
ICAgIyBObyBBUkVBIHJlcXVpcmVkCisgICAgIyBCdXQgQUxJR05zIGluIEFSRUEgbXVzdCBiZSBv
YmV5ZWQKKyAgICBzL15ccypBUkVBLipBTElHTj0oWzAtOV0pJC8udGV4dFxuLnAyYWxpZ24gJDEv
OworICAgICMgSWYgbm8gQUxJR04sIHN0cmlwIHRoZSBBUkVBIGFuZCBhbGlnbiB0byA0IGJ5dGVz
CisgICAgcy9eXHMqQVJFQS4qJC8udGV4dFxuLnAyYWxpZ24gMi87CisKKyAgICAjIERDRCB0byAu
d29yZAorICAgICMgVGhpcyBvbmUgaXMgZm9yIGluY29taW5nIHN5bWJvbHMKKyAgICBzL0RDRFxz
K1x8KFx3KilcfC8ubG9uZyAkMS87CisKKyAgICAjIERDVyB0byAuc2hvcnQKKyAgICBzL0RDV1xz
K1x8KFx3KilcfC8uc2hvcnQgJDEvOworICAgIHMvRENXKC4qKS8uc2hvcnQgJDEvOworCisgICAg
IyBDb25zdGFudHMgZGVmaW5lZCBpbiBzY29wZQorICAgIHMvRENEKC4qKS8ubG9uZyAkMS87Cisg
ICAgcy9EQ0IoLiopLy5ieXRlICQxLzsKKworICAgICMgTWFrZSBmdW5jdGlvbiB2aXNpYmxlIHRv
IGxpbmtlciwgYW5kIG1ha2UgYWRkaXRpb25hbCBzeW1ib2wgd2l0aAorICAgICMgcHJlcGVuZGVk
IHVuZGVyc2NvcmUKKyAgICBpZiAoJGVsZikgeworICAgICAgICBzL0VYUE9SVFxzK1x8KFtcJFx3
XSopXHwvLmdsb2JhbCAkMSBcblx0LnR5cGUgJDEsIGZ1bmN0aW9uLzsKKyAgICB9IGVsc2Ugewor
ICAgICAgICBzL0VYUE9SVFxzK1x8KFtcJFx3XSopXHwvLmdsb2JhbCAkMS87CisgICAgfQorICAg
IHMvSU1QT1JUXHMrXHwoW1wkXHddKilcfC8uZ2xvYmFsICQxLzsKKworICAgIHMvRVhQT1JUXHMr
KFtcJFx3XSopLy5nbG9iYWwgJDEvOworICAgIHMvZXhwb3J0XHMrKFtcJFx3XSopLy5nbG9iYWwg
JDEvOworCisgICAgIyBObyB2ZXJ0aWNhbCBiYXJzIHJlcXVpcmVkOyBtYWtlIGFkZGl0aW9uYWwg
c3ltYm9sIHdpdGggcHJlcGVuZGVkCisgICAgIyB1bmRlcnNjb3JlCisgICAgcy9eXHwoXCQ/XHcr
KVx8L18kMVxuXHQkMTovZzsKKworICAgICMgTGFiZWxzIG5lZWQgdHJhaWxpbmcgY29sb24KKyMg
ICBzL14oXHcrKS8kMTovIGlmICEvRVFVLzsKKyAgICAjIHB1dCB0aGUgY29sb24gYXQgdGhlIGVu
ZCBvZiB0aGUgbGluZSBpbiB0aGUgbWFjcm8KKyAgICBzL14oW2EtekEtWl8wLTlcJF0rKS8kMTov
IGlmICEvRVFVLzsKKworICAgICMgQUxJR04gZGlyZWN0aXZlCisgICAgcy9cYkFMSUdOXGIvLmJh
bGlnbi9nOworCisgICAgaWYgKCR0aHVtYikgeworICAgICAgICAjIEFSTSBjb2RlIC0gd2UgZm9y
Y2UgZXZlcnl0aGluZyB0byB0aHVtYiB3aXRoIHRoZSBkZWNsYXJhdGlvbiBpbiB0aGUgaGVhZGVy
CisgICAgICAgIHMvXHNBUk0vL2c7CisgICAgfSBlbHNlIHsKKyAgICAgICAgIyBBUk0gY29kZQor
ICAgICAgICBzL1xzQVJNLy5hcm0vZzsKKyAgICB9CisKKyAgICAjIHB1c2gvcG9wCisgICAgcy8o
cHVzaFxzKykoclxkKykvc3RtZGIgc3BcISwgXHskMlx9L2c7CisgICAgcy8ocG9wXHMrKShyXGQr
KS9sZG1pYSBzcFwhLCBceyQyXH0vZzsKKworICAgICMgTkVPTiBjb2RlCisgICAgcy8odmxkMS5c
ZCtccyspKHFcZCspLyQxXHskMlx9L2c7CisgICAgcy8odnRibC5cZCtccytbXixdKyksKFteLF0r
KS8kMSxceyQyXH0vZzsKKworICAgIGlmICgkdGh1bWIpIHsKKyAgICAgICAgdGh1bWI6OkZpeFRo
dW1iSW5zdHJ1Y3Rpb25zKCRfLCAwKTsKKyAgICB9CisKKyAgICAjIGVhYmlfYXR0cmlidXRlcyBu
dW1lcmljYWwgZXF1aXZhbGVudHMgY2FuIGJlIGZvdW5kIGluIHRoZQorICAgICMgIkFSTSBJSEkg
MDA0NUMiIGRvY3VtZW50LgorCisgICAgaWYgKCRlbGYpIHsKKyAgICAgICAgIyBSRVFVSVJFOCBT
dGFjayBpcyByZXF1aXJlZCB0byBiZSA4LWJ5dGUgYWxpZ25lZAorICAgICAgICBzL1xzUkVRVUlS
RTgvLmVhYmlfYXR0cmlidXRlIDI0LCAxIFxAVGFnX0FCSV9hbGlnbl9uZWVkZWQvZzsKKworICAg
ICAgICAjIFBSRVNFUlZFOCBTdGFjayA4LWJ5dGUgYWxpZ24gaXMgcHJlc2VydmVkCisgICAgICAg
IHMvXHNQUkVTRVJWRTgvLmVhYmlfYXR0cmlidXRlIDI1LCAxIFxAVGFnX0FCSV9hbGlnbl9wcmVz
ZXJ2ZWQvZzsKKyAgICB9IGVsc2UgeworICAgICAgICBzL1xzUkVRVUlSRTgvLzsKKyAgICAgICAg
cy9cc1BSRVNFUlZFOC8vOworICAgIH0KKworICAgICMgVXNlIFBST0MgYW5kIEVORFAgdG8gZ2l2
ZSB0aGUgc3ltYm9scyBhIC5zaXplIGRpcmVjdGl2ZS4KKyAgICAjIFRoaXMgbWFrZXMgdGhlbSBz
aG93IHVwIHByb3Blcmx5IGluIGRlYnVnZ2luZyB0b29scyBsaWtlIGdkYiBhbmQgdmFsZ3JpbmQu
CisgICAgaWYgKC9cYlBST0NcYi8pCisgICAgeworICAgICAgICBteSAkcHJvYzsKKyAgICAgICAg
L15fKFtcLjAtOUEtWl9hLXpdXHcrKVxiLzsKKyAgICAgICAgJHByb2MgPSAkMTsKKyAgICAgICAg
cHVzaChAcHJvY19zdGFjaywgJHByb2MpIGlmICgkcHJvYyk7CisgICAgICAgIHMvXGJQUk9DXGIv
QCAkJi87CisgICAgfQorICAgIGlmICgvXGJFTkRQXGIvKQorICAgIHsKKyAgICAgICAgbXkgJHBy
b2M7CisgICAgICAgIHMvXGJFTkRQXGIvQCAkJi87CisgICAgICAgICRwcm9jID0gcG9wKEBwcm9j
X3N0YWNrKTsKKyAgICAgICAgJF8gPSAiXHQuc2l6ZSAkcHJvYywgLi0kcHJvYyIuJF8gaWYgKCRw
cm9jIGFuZCAkZWxmKTsKKyAgICB9CisKKyAgICAjIEVRVSBkaXJlY3RpdmUKKyAgICBzLyhcUytc
cyspRVFVKFxzK1xTKykvLmVxdSAkMSwgJDIvOworCisgICAgIyBCZWdpbiBtYWNybyBkZWZpbml0
aW9uCisgICAgaWYgKC9cYk1BQ1JPXGIvKSB7CisgICAgICAgICRfID0gPFNURElOPjsKKyAgICAg
ICAgcy9eLy5tYWNyby87CisgICAgICAgIHMvXCQvL2c7ICAgICAgICAgICAgICAgICMgcmVtb3Zl
IGZvcm1hbCBwYXJhbSByZWZlcmVuY2UKKyAgICAgICAgcy87L0AvZzsgICAgICAgICAgICAgICAg
IyBjaGFuZ2UgY29tbWVudCBjaGFyYWN0ZXJzCisgICAgfQorCisgICAgIyBGb3IgbWFjcm9zLCB1
c2UgXCB0byByZWZlcmVuY2UgZm9ybWFsIHBhcmFtcworICAgIHMvXCQvXFwvZzsgICAgICAgICAg
ICAgICAgICAjIEVuZCBtYWNybyBkZWZpbml0aW9uCisgICAgcy9cYk1FTkRcYi8uZW5kbS87ICAg
ICAgICAgICAgICAjIE5vIG5lZWQgdG8gdGVsbCBpdCB3aGVyZSB0byBzdG9wIGFzc2VtYmxpbmcK
KyAgICBuZXh0IGlmIC9eXHMqRU5EXHMqJC87CisgICAgcHJpbnQ7CisgICAgcHJpbnQgIiRjb21t
ZW50X3N1YiRjb21tZW50XG4iIGlmIGRlZmluZWQgJGNvbW1lbnQ7Cit9CisKKyMgTWFyayB0aGF0
IHRoaXMgb2JqZWN0IGRvZXNuJ3QgbmVlZCBhbiBleGVjdXRhYmxlIHN0YWNrLgorcHJpbnRmICgi
XHQuc2VjdGlvblx0Lm5vdGUuR05VLXN0YWNrLFwiXCIsXCVcJXByb2diaXRzXG4iKSBpZiAkZWxm
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL2FkczJnYXNfYXBwbGUucGwgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L2J1aWxkL21ha2UvYWRzMmdhc19hcHBsZS5wbApuZXcgZmlsZSBtb2RlIDEwMDc1
NQppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44NDg4NzJm
YTdkMWYwMzZhYTRkNTk4MzA3NGJmZjRjY2RlOTA2ZjI1Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC9idWlsZC9tYWtlL2FkczJnYXNfYXBwbGUucGwKQEAgLTAsMCArMSwyMDIgQEAKKyMh
L3Vzci9iaW4vZW52IHBlcmwKKyMjCisjIyAgQ29weXJpZ2h0IChjKSAyMDEwIFRoZSBXZWJNIHBy
b2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyMjCisjIyAgVXNlIG9mIHRoaXMg
c291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZQorIyMgIHRoYXQg
Y2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJj
ZQorIyMgIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBn
cmFudCBjYW4gYmUgZm91bmQKKyMjICBpbiB0aGUgZmlsZSBQQVRFTlRTLiAgQWxsIGNvbnRyaWJ1
dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisjIyAgYmUgZm91bmQgaW4gdGhlIEFVVEhPUlMgZmls
ZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisjIworCisKKyMgYWRzMmdhc19hcHBs
ZS5wbAorIyBBdXRob3I6IEVyaWMgRnVuZyAoZWZ1bmcgKGF0KSBhY20ub3JnKQorIworIyBDb252
ZXJ0IEFSTSBEZXZlbG9wZXIgU3VpdGUgMS4wLjEgc3ludGF4IGFzc2VtYmx5IHNvdXJjZSB0byBH
TlUgYXMgZm9ybWF0CisjCisjIFVzYWdlOiBjYXQgaW5wdXRmaWxlIHwgcGVybCBhZHMyZ2FzX2Fw
cGxlLnBsID4gb3V0cHV0ZmlsZQorIworCitwcmludCAiQCBUaGlzIGZpbGUgd2FzIGNyZWF0ZWQg
ZnJvbSBhIC5hc20gZmlsZVxuIjsKK3ByaW50ICJAICB1c2luZyB0aGUgYWRzMmdhc19hcHBsZS5w
bCBzY3JpcHQuXG5cbiI7CitwcmludCAiXHQuc3ludGF4IHVuaWZpZWRcbiI7CisKK215ICVyZWdp
c3Rlcl9hbGlhc2VzOworbXkgJW1hY3JvX2FsaWFzZXM7CisKK215IEBtYXBwaW5nX2xpc3QgPSAo
IlwkMCIsICJcJDEiLCAiXCQyIiwgIlwkMyIsICJcJDQiLCAiXCQ1IiwgIlwkNiIsICJcJDciLCAi
XCQ4IiwgIlwkOSIpOworCitteSBAaW5jb21pbmdfYXJyYXk7CisKK215IEBpbXBvcnRlZF9mdW5j
dGlvbnM7CisKKyMgUGVybCB0cmltIGZ1bmN0aW9uIHRvIHJlbW92ZSB3aGl0ZXNwYWNlIGZyb20g
dGhlIHN0YXJ0IGFuZCBlbmQgb2YgdGhlIHN0cmluZworc3ViIHRyaW0oJCkKK3sKKyAgICBteSAk
c3RyaW5nID0gc2hpZnQ7CisgICAgJHN0cmluZyA9fiBzL15ccysvLzsKKyAgICAkc3RyaW5nID1+
IHMvXHMrJC8vOworICAgIHJldHVybiAkc3RyaW5nOworfQorCit3aGlsZSAoPFNURElOPikKK3sK
KyAgICAjIExvYWQgYW5kIHN0b3JlIGFsaWdubWVudAorICAgIHMvQC8sOi9nOworCisgICAgIyBD
b21tZW50IGNoYXJhY3RlcgorICAgIHMvOy8gQC9nOworCisgICAgIyBIZXhhZGVjaW1hbCBjb25z
dGFudHMgcHJlZmFjZWQgYnkgMHgKKyAgICBzLyMmLyMweC9nOworCisgICAgIyBDb252ZXJ0IDpP
UjogdG8gfAorICAgIHMvOk9SOi8gfCAvZzsKKworICAgICMgQ29udmVydCA6QU5EOiB0byAmCisg
ICAgcy86QU5EOi8gJiAvZzsKKworICAgICMgQ29udmVydCA6Tk9UOiB0byB+CisgICAgcy86Tk9U
Oi8gfiAvZzsKKworICAgICMgQ29udmVydCA6U0hMOiB0byA8PAorICAgIHMvOlNITDovIDw8IC9n
OworCisgICAgIyBDb252ZXJ0IDpTSFI6IHRvID4+CisgICAgcy86U0hSOi8gPj4gL2c7CisKKyAg
ICAjIENvbnZlcnQgRUxTRSB0byAuZWxzZQorICAgIHMvXGJFTFNFXGIvLmVsc2UvZzsKKworICAg
ICMgQ29udmVydCBFTkRJRiB0byAuZW5kaWYKKyAgICBzL1xiRU5ESUZcYi8uZW5kaWYvZzsKKwor
ICAgICMgQ29udmVydCBFTFNFSUYgdG8gLmVsc2VpZgorICAgIHMvXGJFTFNFSUZcYi8uZWxzZWlm
L2c7CisKKyAgICAjIENvbnZlcnQgTFRPUkcgdG8gLmx0b3JnCisgICAgcy9cYkxUT1JHXGIvLmx0
b3JnL2c7CisKKyAgICAjIENvbnZlcnQgSUYgOkRFRjp0byAuaWYKKyAgICAjIGdjYyBkb2Vzbid0
IGhhdmUgdGhlIGFiaWxpdHkgdG8gZG8gYSBjb25kaXRpb25hbAorICAgICMgaWYgZGVmaW5lZCB2
YXJpYWJsZSB0aGF0IGlzIHNldCBieSBJRiA6REVGOiBvbgorICAgICMgYXJtYXNtLCBzbyBjb252
ZXJ0IGl0IHRvIGEgbm9ybWFsIC5pZiBhbmQgdGhlbgorICAgICMgbWFrZSBzdXJlIHRvIGRlZmlu
ZSBhIHZhbHVlIGVsZXNld2hlcmUKKyAgICBpZiAocy9cYklGIDpERUY6XGIvLmlmIC9nKQorICAg
IHsKKyAgICAgICAgcy89Lz09L2c7CisgICAgfQorCisgICAgIyBDb252ZXJ0IElGIHRvIC5pZgor
ICAgIGlmIChzL1xiSUZcYi8uaWYvZykKKyAgICB7CisgICAgICAgIHMvPS89PS9nOworICAgIH0K
KworICAgICMgQ29udmVydCBJTkNMVURFIHRvIC5JTkNMVURFICJmaWxlIgorICAgIHMvSU5DTFVE
RShccyopKC4qKSQvLmluY2x1ZGUgJDFcIiQyXCIvOworCisgICAgIyBDb2RlIGRpcmVjdGl2ZSAo
QVJNIHZzIFRodW1iKQorICAgIHMvQ09ERShbMC05XVswLTldKS8uY29kZSAkMS87CisKKyAgICAj
IE5vIEFSRUEgcmVxdWlyZWQKKyAgICAjIEJ1dCBBTElHTnMgaW4gQVJFQSBtdXN0IGJlIG9iZXll
ZAorICAgIHMvXlxzKkFSRUEuKkFMSUdOPShbMC05XSkkLy50ZXh0XG4ucDJhbGlnbiAkMS87Cisg
ICAgIyBJZiBubyBBTElHTiwgc3RyaXAgdGhlIEFSRUEgYW5kIGFsaWduIHRvIDQgYnl0ZXMKKyAg
ICBzL15ccypBUkVBLiokLy50ZXh0XG4ucDJhbGlnbiAyLzsKKworICAgICMgRENEIHRvIC53b3Jk
CisgICAgIyBUaGlzIG9uZSBpcyBmb3IgaW5jb21pbmcgc3ltYm9scworICAgIHMvRENEXHMrXHwo
XHcqKVx8Ly5sb25nICQxLzsKKworICAgICMgRENXIHRvIC5zaG9ydAorICAgIHMvRENXXHMrXHwo
XHcqKVx8Ly5zaG9ydCAkMS87CisgICAgcy9EQ1coLiopLy5zaG9ydCAkMS87CisKKyAgICAjIENv
bnN0YW50cyBkZWZpbmVkIGluIHNjb3BlCisgICAgcy9EQ0QoLiopLy5sb25nICQxLzsKKyAgICBz
L0RDQiguKikvLmJ5dGUgJDEvOworCisgICAgIyBNYWtlIGZ1bmN0aW9uIHZpc2libGUgdG8gbGlu
a2VyLCBhbmQgbWFrZSBhZGRpdGlvbmFsIHN5bWJvbCB3aXRoCisgICAgIyBwcmVwZW5kZWQgdW5k
ZXJzY29yZQorICAgIHMvRVhQT1JUXHMrXHwoW1wkXHddKilcfC8uZ2xvYmwgXyQxXG5cdC5nbG9i
bCAkMS87CisKKyAgICAjIFByZXBlbmQgaW1wb3J0ZWQgZnVuY3Rpb25zIHdpdGggXworICAgIGlm
IChzL0lNUE9SVFxzK1x8KFtcJFx3XSopXHwvLmdsb2JsICQxLykKKyAgICB7CisgICAgICAgICRm
dW5jdGlvbiA9IHRyaW0oJDEpOworICAgICAgICBwdXNoKEBpbXBvcnRlZF9mdW5jdGlvbnMsICRm
dW5jdGlvbik7CisgICAgfQorCisgICAgZm9yZWFjaCAkZnVuY3Rpb24gKEBpbXBvcnRlZF9mdW5j
dGlvbnMpCisgICAgeworICAgICAgICBzLyRmdW5jdGlvbi9fJGZ1bmN0aW9uLzsKKyAgICB9CisK
KyAgICAjIE5vIHZlcnRpY2FsIGJhcnMgcmVxdWlyZWQ7IG1ha2UgYWRkaXRpb25hbCBzeW1ib2wg
d2l0aCBwcmVwZW5kZWQKKyAgICAjIHVuZGVyc2NvcmUKKyAgICBzL15cfChcJD9cdyspXHwvXyQx
XG5cdCQxOi9nOworCisgICAgIyBMYWJlbHMgbmVlZCB0cmFpbGluZyBjb2xvbgorIyAgIHMvXihc
dyspLyQxOi8gaWYgIS9FUVUvOworICAgICMgcHV0IHRoZSBjb2xvbiBhdCB0aGUgZW5kIG9mIHRo
ZSBsaW5lIGluIHRoZSBtYWNybworICAgIHMvXihbYS16QS1aXzAtOVwkXSspLyQxOi8gaWYgIS9F
UVUvOworCisgICAgIyBBTElHTiBkaXJlY3RpdmUKKyAgICBzL1xiQUxJR05cYi8uYmFsaWduL2c7
CisKKyAgICAjIFN0cmlwIEFSTQorICAgIHMvXHNBUk0vQCBBUk0vZzsKKworICAgICMgU3RyaXAg
UkVRVUlSRTgKKyAgICAjcy9cc1JFUVVJUkU4L0AgUkVRVUlSRTgvZzsKKyAgICBzL1xzUkVRVUlS
RTgvQCAvZzsKKworICAgICMgU3RyaXAgUFJFU0VSVkU4CisgICAgcy9cc1BSRVNFUlZFOC9AIFBS
RVNFUlZFOC9nOworCisgICAgIyBTdHJpcCBQUk9DIGFuZCBFTkRQUk9DCisgICAgcy9cYlBST0Nc
Yi9AL2c7CisgICAgcy9cYkVORFBcYi9AL2c7CisKKyAgICAjIEVRVSBkaXJlY3RpdmUKKyAgICBz
LyguKilFUVUoLiopLy5zZXQgJDEsICQyLzsKKworICAgICMgQmVnaW4gbWFjcm8gZGVmaW5pdGlv
bgorICAgIGlmICgvXGJNQUNST1xiLykKKyAgICB7CisgICAgICAgICMgUHJvY2VzcyBuZXh0IGxp
bmUgZG93biwgd2hpY2ggd2lsbCBiZSB0aGUgbWFjcm8gZGVmaW5pdGlvbgorICAgICAgICAkXyA9
IDxTVERJTj47CisKKyAgICAgICAgJHRyaW1tZWQgPSB0cmltKCRfKTsKKworICAgICAgICAjIHJl
bW92ZSBjb21tYXMgdGhhdCBhcmUgc2VwYXJhdGluZyBsaXN0CisgICAgICAgICR0cmltbWVkID1+
IHMvLC8vZzsKKworICAgICAgICAjIHN0cmluZyB0byBhcnJheQorICAgICAgICBAaW5jb21pbmdf
YXJyYXkgPSBzcGxpdCgvXHMrLywgJHRyaW1tZWQpOworCisgICAgICAgIHByaW50ICIubWFjcm8g
QGluY29taW5nX2FycmF5WzBdXG4iOworCisgICAgICAgICMgcmVtb3ZlIHRoZSBmaXJzdCBlbGVt
ZW50LCBhcyB0aGF0IGlzIHRoZSBuYW1lIG9mIHRoZSBtYWNybworICAgICAgICBzaGlmdCAoQGlu
Y29taW5nX2FycmF5KTsKKworICAgICAgICBAbWFjcm9fYWxpYXNlc3tAaW5jb21pbmdfYXJyYXl9
ID0gQG1hcHBpbmdfbGlzdDsKKworICAgICAgICBuZXh0OworICAgIH0KKworICAgIHdoaWxlICgo
JGtleSwgJHZhbHVlKSA9IGVhY2goJW1hY3JvX2FsaWFzZXMpKQorICAgIHsKKyAgICAgICAgJGtl
eSA9fiBzL1wkL1xcXCQvOworICAgICAgICBzLyRrZXlcYi8kdmFsdWUvZzsKKyAgICB9CisKKyAg
ICAjIEZvciBtYWNyb3MsIHVzZSBcIHRvIHJlZmVyZW5jZSBmb3JtYWwgcGFyYW1zCisjICAgcy9c
JC9cXC9nOyAgICAgICAgICAgICAgICAgICMgRW5kIG1hY3JvIGRlZmluaXRpb24KKyAgICBzL1xi
TUVORFxiLy5lbmRtLzsgICAgICAgICAgICAgICMgTm8gbmVlZCB0byB0ZWxsIGl0IHdoZXJlIHRv
IHN0b3AgYXNzZW1ibGluZworICAgIG5leHQgaWYgL15ccypFTkRccyokLzsKKworICAgIHByaW50
OworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL2FybWxpbmtfYWRhcHRlci5z
aCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9hcm1saW5rX2FkYXB0ZXIuc2gKbmV3IGZpbGUgbW9k
ZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
NzVjMzQyZTk3Y2UzOTIzZWZmMGVlYzg2NDdhOTA4MjNiMTZjNGQ0ZgotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9hcm1saW5rX2FkYXB0ZXIuc2gKQEAgLTAsMCArMSw1
NCBAQAorIyEvYmluL3NoCisjIworIyMgIENvcHlyaWdodCAoYykgMjAxMCBUaGUgV2ViTSBwcm9q
ZWN0IGF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisjIworIyMgIFVzZSBvZiB0aGlzIHNv
dXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UKKyMjICB0aGF0IGNh
biBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UK
KyMjICB0cmVlLiBBbiBhZGRpdGlvbmFsIGludGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHMgZ3Jh
bnQgY2FuIGJlIGZvdW5kCisjIyAgaW4gdGhlIGZpbGUgUEFURU5UUy4gIEFsbCBjb250cmlidXRp
bmcgcHJvamVjdCBhdXRob3JzIG1heQorIyMgIGJlIGZvdW5kIGluIHRoZSBBVVRIT1JTIGZpbGUg
aW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZSB0cmVlLgorIyMKKworCit2ZXJib3NlPTAKK3NldCAt
LSAkKgorZm9yIGk7IGRvCisgICAgaWYgWyAiJGkiID0gIi1vIiBdOyB0aGVuCisgICAgICAgIG9u
X29mPTEKKyAgICBlbGlmIFsgIiRpIiA9ICItdiIgXTsgdGhlbgorICAgICAgICB2ZXJib3NlPTEK
KyAgICBlbGlmIFsgIiRpIiA9ICItZyIgXTsgdGhlbgorICAgICAgICBhcmdzPSIke2FyZ3N9IC0t
ZGVidWciCisgICAgZWxpZiBbICIkb25fb2YiID0gIjEiIF07IHRoZW4KKyAgICAgICAgb3V0Zmls
ZT0kaQorICAgICAgICBvbl9vZj0wCisgICAgZWxpZiBbIC1mICIkaSIgXTsgdGhlbgorICAgICAg
ICBpbmZpbGVzPSIkaW5maWxlcyAkaSIKKyAgICBlbGlmIFsgIiR7aSMtbH0iICE9ICIkaSIgXTsg
dGhlbgorICAgICAgICBsaWJzPSIkbGlicyAke2kjLWx9IgorICAgIGVsaWYgWyAiJHtpIy1MfSIg
IT0gIiRpIiBdOyB0aGVuCisgICAgICAgIGxpYnBhdGhzPSIke2xpYnBhdGhzfSAke2kjLUx9Igor
ICAgIGVsc2UKKyAgICAgICAgYXJncz0iJHthcmdzfSAke2l9IgorICAgIGZpCisgICAgc2hpZnQK
K2RvbmUKKworIyBBYnNvbHV0aXplIGxpYnJhcnkgZmlsZSBuYW1lcworZm9yIGYgaW4gJGxpYnM7
IGRvCisgICAgZm91bmQ9MAorICAgIGZvciBkIGluICRsaWJwYXRoczsgZG8KKyAgICAgICAgWyAt
ZiAiJGQvJGYiIF0gJiYgaW5maWxlcz0iJGluZmlsZXMgJGQvJGYiICYmIGZvdW5kPTEgJiYgYnJl
YWsKKyAgICAgICAgWyAtZiAiJGQvbGliJHtmfS5zbyIgXSAmJiBpbmZpbGVzPSIkaW5maWxlcyAk
ZC9saWIke2Z9LnNvIiAmJiBmb3VuZD0xICYmIGJyZWFrCisgICAgICAgIFsgLWYgIiRkL2xpYiR7
Zn0uYSIgXSAmJiBpbmZpbGVzPSIkaW5maWxlcyAkZC9saWIke2Z9LmEiICYmIGZvdW5kPTEgJiYg
YnJlYWsKKyAgICBkb25lCisgICAgWyAkZm91bmQgLWVxIDAgXSAmJiBpbmZpbGVzPSIkaW5maWxl
cyAkZiIKK2RvbmUKK2ZvciBkIGluICRsaWJwYXRoczsgZG8KKyAgICBbIC1uICIkbGlic2VhcmNo
cGF0aCIgXSAmJiBsaWJzZWFyY2hwYXRoPSIke2xpYnNlYXJjaHBhdGh9LCIKKyAgICBsaWJzZWFy
Y2hwYXRoPSIke2xpYnNlYXJjaHBhdGh9JGQiCitkb25lCisKK2NtZD0iYXJtbGluayAkYXJncyAt
LXVzZXJsaWJwYXRoPSRsaWJzZWFyY2hwYXRoIC0tb3V0cHV0PSRvdXRmaWxlICRpbmZpbGVzIgor
WyAkdmVyYm9zZSAtZXEgMSBdICYmIGVjaG8gJGNtZAorJGNtZApkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC9idWlsZC9tYWtlL2NvbmZpZ3VyZS5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9jb25m
aWd1cmUuc2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uYzRlOTM4ZmM3MjdkYzBlNjQzODJjN2NhODg3MmUxOWQwNzRk
YmExMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9jb25maWd1cmUu
c2gKQEAgLTAsMCArMSwxNjMzIEBACisjIS9iaW4vc2gKKyMjCisjIyAgY29uZmlndXJlLnNoCisj
IworIyMgIFRoaXMgc2NyaXB0IGlzIHNvdXJjZWQgYnkgdGhlIG1haW4gY29uZmlndXJlIHNjcmlw
dCBhbmQgY29udGFpbnMKKyMjICB1dGlsaXR5IGZ1bmN0aW9ucyBhbmQgb3RoZXIgY29tbW9uIGJp
dHMgdGhhdCBhcmVuJ3Qgc3RyaWN0bHkgbGlidnB4CisjIyAgcmVsYXRlZC4KKyMjCisjIyAgVGhp
cyBidWlsZCBzeXN0ZW0gaXMgYmFzZWQgaW4gcGFydCBvbiB0aGUgRkZtcGVnIGNvbmZpZ3VyZSBz
Y3JpcHQuCisjIworCisKKyMKKyMgTG9nZ2luZyAvIE91dHB1dCBGdW5jdGlvbnMKKyMKK2RpZV91
bmtub3duKCl7CisgIGVjaG8gIlVua25vd24gb3B0aW9uIFwiJDFcIi4iCisgIGVjaG8gIlNlZSAk
MCAtLWhlbHAgZm9yIGF2YWlsYWJsZSBvcHRpb25zLiIKKyAgY2xlYW5fdGVtcF9maWxlcworICBl
eGl0IDEKK30KKworZGllKCkgeworICBlY2hvICIkQCIKKyAgZWNobworICBlY2hvICJDb25maWd1
cmF0aW9uIGZhaWxlZC4gVGhpcyBjb3VsZCByZWZsZWN0IGEgbWlzY29uZmlndXJhdGlvbiBvZiB5
b3VyIgorICBlY2hvICJ0b29sY2hhaW5zLCBpbXByb3BlciBvcHRpb25zIHNlbGVjdGVkLCBvciBh
bm90aGVyIHByb2JsZW0uIElmIHlvdSIKKyAgZWNobyAiZG9uJ3Qgc2VlIGFueSB1c2VmdWwgZXJy
b3IgbWVzc2FnZXMgYWJvdmUsIHRoZSBuZXh0IHN0ZXAgaXMgdG8gbG9vayIKKyAgZWNobyAiYXQg
dGhlIGNvbmZpZ3VyZSBlcnJvciBsb2cgZmlsZSAoJGxvZ2ZpbGUpIHRvIGRldGVybWluZSB3aGF0
IgorICBlY2hvICJjb25maWd1cmUgd2FzIHRyeWluZyB0byBkbyB3aGVuIGl0IGRpZWQuIgorICBj
bGVhbl90ZW1wX2ZpbGVzCisgIGV4aXQgMQorfQorCitsb2coKXsKKyAgZWNobyAiJEAiID4+JGxv
Z2ZpbGUKK30KKworbG9nX2ZpbGUoKXsKKyAgbG9nIEJFR0lOICQxCisgIGNhdCAtbiAkMSA+PiRs
b2dmaWxlCisgIGxvZyBFTkQgJDEKK30KKworbG9nX2VjaG8oKSB7CisgIGVjaG8gIiRAIgorICBs
b2cgIiRAIgorfQorCitmd3JpdGUgKCkgeworICBvdXRmaWxlPSQxCisgIHNoaWZ0CisgIGVjaG8g
IiRAIiA+PiAke291dGZpbGV9Cit9CisKK3Nob3dfaGVscF9wcmUoKXsKKyAgZm9yIG9wdCBpbiAk
e0NNRExJTkVfU0VMRUNUfTsgZG8KKyAgICBvcHQyPWBlY2hvICRvcHQgfCBzZWQgLWUgJ3M7Xzst
O2cnYAorICAgIGlmIGVuYWJsZWQgJG9wdDsgdGhlbgorICAgICAgZXZhbCAidG9nZ2xlXyR7b3B0
fT1cIi0tZGlzYWJsZS0ke29wdDJ9XCIiCisgICAgZWxzZQorICAgICAgZXZhbCAidG9nZ2xlXyR7
b3B0fT1cIi0tZW5hYmxlLSR7b3B0Mn0gXCIiCisgICAgZmkKKyAgZG9uZQorCisgIGNhdCA8PEVP
RgorVXNhZ2U6IGNvbmZpZ3VyZSBbb3B0aW9uc10KK09wdGlvbnM6CisKK0J1aWxkIG9wdGlvbnM6
CisgIC0taGVscCAgICAgICAgICAgICAgICAgICAgICBwcmludCB0aGlzIG1lc3NhZ2UKKyAgLS1s
b2c9eWVzfG5vfEZJTEUgICAgICAgICAgIGZpbGUgY29uZmlndXJlIGxvZyBpcyB3cml0dGVuIHRv
IFtjb25maWcubG9nXQorICAtLXRhcmdldD1UQVJHRVQgICAgICAgICAgICAgdGFyZ2V0IHBsYXRm
b3JtIHR1cGxlIFtnZW5lcmljLWdudV0KKyAgLS1jcHU9Q1BVICAgICAgICAgICAgICAgICAgIG9w
dGltaXplIGZvciBhIHNwZWNpZmljIGNwdSByYXRoZXIgdGhhbiBhIGZhbWlseQorICAtLWV4dHJh
LWNmbGFncz1FQ0ZMQUdTICAgICAgYWRkIEVDRkxBR1MgdG8gQ0ZMQUdTIFskQ0ZMQUdTXQorICAt
LWV4dHJhLWN4eGZsYWdzPUVDWFhGTEFHUyAgYWRkIEVDWFhGTEFHUyB0byBDWFhGTEFHUyBbJENY
WEZMQUdTXQorICAke3RvZ2dsZV9leHRyYV93YXJuaW5nc30gICAgZW1pdCBoYXJtbGVzcyB3YXJu
aW5ncyAoYWx3YXlzIG5vbi1mYXRhbCkKKyAgJHt0b2dnbGVfd2Vycm9yfSAgICAgICAgICAgIHRy
ZWF0IHdhcm5pbmdzIGFzIGVycm9ycywgaWYgcG9zc2libGUKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIChub3QgYXZhaWxhYmxlIHdpdGggYWxsIGNvbXBpbGVycykKKyAgJHt0b2dnbGVf
b3B0aW1pemF0aW9uc30gICAgIHR1cm4gb24vb2ZmIGNvbXBpbGVyIG9wdGltaXphdGlvbiBmbGFn
cworICAke3RvZ2dsZV9waWN9ICAgICAgICAgICAgICAgdHVybiBvbi9vZmYgUG9zaXRpb24gSW5k
ZXBlbmRlbnQgQ29kZQorICAke3RvZ2dsZV9jY2FjaGV9ICAgICAgICAgICAgdHVybiBvbi9vZmYg
Y29tcGlsZXIgY2FjaGUKKyAgJHt0b2dnbGVfZGVidWd9ICAgICAgICAgICAgIGVuYWJsZS9kaXNh
YmxlIGRlYnVnIG1vZGUKKyAgJHt0b2dnbGVfZ3Byb2Z9ICAgICAgICAgICAgIGVuYWJsZS9kaXNh
YmxlIGdwcm9mIHByb2ZpbGluZyBpbnN0cnVtZW50YXRpb24KKyAgJHt0b2dnbGVfZ2Nvdn0gICAg
ICAgICAgICAgIGVuYWJsZS9kaXNhYmxlIGdjb3YgY292ZXJhZ2UgaW5zdHJ1bWVudGF0aW9uCisg
ICR7dG9nZ2xlX3RodW1ifSAgICAgICAgICAgICBlbmFibGUvZGlzYWJsZSBidWlsZGluZyBhcm0g
YXNzZW1ibHkgaW4gdGh1bWIgbW9kZQorICAke3RvZ2dsZV9kZXBlbmRlbmN5X3RyYWNraW5nfQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzYWJsZSB0byBzcGVlZCB1cCBvbmUtdGlt
ZSBidWlsZAorCitJbnN0YWxsIG9wdGlvbnM6CisgICR7dG9nZ2xlX2luc3RhbGxfZG9jc30gICAg
ICBjb250cm9sIHdoZXRoZXIgZG9jcyBhcmUgaW5zdGFsbGVkCisgICR7dG9nZ2xlX2luc3RhbGxf
Ymluc30gICAgICBjb250cm9sIHdoZXRoZXIgYmluYXJpZXMgYXJlIGluc3RhbGxlZAorICAke3Rv
Z2dsZV9pbnN0YWxsX2xpYnN9ICAgICAgY29udHJvbCB3aGV0aGVyIGxpYnJhcmllcyBhcmUgaW5z
dGFsbGVkCisgICR7dG9nZ2xlX2luc3RhbGxfc3Jjc30gICAgICBjb250cm9sIHdoZXRoZXIgc291
cmNlcyBhcmUgaW5zdGFsbGVkCisKKworRU9GCit9CisKK3Nob3dfaGVscF9wb3N0KCl7CisgIGNh
dCA8PEVPRgorCisKK05PVEVTOgorICAgIE9iamVjdCBmaWxlcyBhcmUgYnVpbHQgYXQgdGhlIHBs
YWNlIHdoZXJlIGNvbmZpZ3VyZSBpcyBsYXVuY2hlZC4KKworICAgIEFsbCBib29sZWFuIG9wdGlv
bnMgY2FuIGJlIG5lZ2F0ZWQuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIHRoZSBvcHBvc2l0ZQorICAg
IG9mIHRoYXQgc2hvd24gYWJvdmUuIElmIHRoZSBvcHRpb24gLS1kaXNhYmxlLWZvbyBpcyBsaXN0
ZWQsIHRoZW4KKyAgICB0aGUgZGVmYXVsdCB2YWx1ZSBmb3IgZm9vIGlzIGVuYWJsZWQuCisKK1N1
cHBvcnRlZCB0YXJnZXRzOgorRU9GCisgIHNob3dfdGFyZ2V0cyAke2FsbF9wbGF0Zm9ybXN9Cisg
IGVjaG8KKyAgZXhpdCAxCit9CisKK3Nob3dfdGFyZ2V0cygpIHsKKyAgd2hpbGUgWyAtbiAiJCoi
IF07IGRvCisgICAgaWYgWyAiJHsxJSUtKn0iID0gIiR7MiUlLSp9IiBdOyB0aGVuCisgICAgICBp
ZiBbICIkezIlJS0qfSIgPSAiJHszJSUtKn0iIF07IHRoZW4KKyAgICAgICAgcHJpbnRmICIgICAg
JS0yNHMgJS0yNHMgJS0yNHNcbiIgIiQxIiAiJDIiICIkMyIKKyAgICAgICAgc2hpZnQ7IHNoaWZ0
OyBzaGlmdAorICAgICAgZWxzZQorICAgICAgICBwcmludGYgIiAgICAlLTI0cyAlLTI0c1xuIiAi
JDEiICIkMiIKKyAgICAgICAgc2hpZnQ7IHNoaWZ0CisgICAgICBmaQorICAgIGVsc2UKKyAgICAg
IHByaW50ZiAiICAgICUtMjRzXG4iICIkMSIKKyAgICAgIHNoaWZ0CisgICAgZmkKKyAgZG9uZQor
fQorCitzaG93X2hlbHAoKSB7CisgIHNob3dfaGVscF9wcmUKKyAgc2hvd19oZWxwX3Bvc3QKK30K
KworIworIyBMaXN0IFByb2Nlc3NpbmcgRnVuY3Rpb25zCisjCitzZXRfYWxsKCl7CisgIHZhbHVl
PSQxCisgIHNoaWZ0CisgIGZvciB2YXIgaW4gJCo7IGRvCisgICAgZXZhbCAkdmFyPSR2YWx1ZQor
ICBkb25lCit9CisKK2lzX2luKCl7CisgIHZhbHVlPSQxCisgIHNoaWZ0CisgIGZvciB2YXIgaW4g
JCo7IGRvCisgICAgWyAkdmFyID0gJHZhbHVlIF0gJiYgcmV0dXJuIDAKKyAgZG9uZQorICByZXR1
cm4gMQorfQorCithZGRfY2ZsYWdzKCkgeworICBDRkxBR1M9IiR7Q0ZMQUdTfSAkQCIKKyAgQ1hY
RkxBR1M9IiR7Q1hYRkxBR1N9ICRAIgorfQorCithZGRfY2ZsYWdzX29ubHkoKSB7CisgIENGTEFH
Uz0iJHtDRkxBR1N9ICRAIgorfQorCithZGRfY3h4ZmxhZ3Nfb25seSgpIHsKKyAgQ1hYRkxBR1M9
IiR7Q1hYRkxBR1N9ICRAIgorfQorCithZGRfbGRmbGFncygpIHsKKyAgTERGTEFHUz0iJHtMREZM
QUdTfSAkQCIKK30KKworYWRkX2FzZmxhZ3MoKSB7CisgIEFTRkxBR1M9IiR7QVNGTEFHU30gJEAi
Cit9CisKK2FkZF9leHRyYWxpYnMoKSB7CisgIGV4dHJhbGlicz0iJHtleHRyYWxpYnN9ICRAIgor
fQorCisjCisjIEJvb2xlYW4gTWFuaXB1bGF0aW9uIEZ1bmN0aW9ucworIworCitlbmFibGVfZmVh
dHVyZSgpeworICBzZXRfYWxsIHllcyAkKgorfQorCitkaXNhYmxlX2ZlYXR1cmUoKXsKKyAgc2V0
X2FsbCBubyAkKgorfQorCitlbmFibGVkKCl7CisgIGV2YWwgdGVzdCAieFwkJDEiID0gInh5ZXMi
Cit9CisKK2Rpc2FibGVkKCl7CisgIGV2YWwgdGVzdCAieFwkJDEiID0gInhubyIKK30KKworZW5h
YmxlX2NvZGVjKCl7CisgIGVuYWJsZWQgIiR7MX0iIHx8IGVjaG8gIiAgZW5hYmxpbmcgJHsxfSIK
KyAgZW5hYmxlX2ZlYXR1cmUgIiR7MX0iCisKKyAgaXNfaW4gIiR7MX0iIHZwOCB2cDkgJiYgZW5h
YmxlX2ZlYXR1cmUgIiR7MX1fZW5jb2RlciIgIiR7MX1fZGVjb2RlciIKK30KKworZGlzYWJsZV9j
b2RlYygpeworICBkaXNhYmxlZCAiJHsxfSIgfHwgZWNobyAiICBkaXNhYmxpbmcgJHsxfSIKKyAg
ZGlzYWJsZV9mZWF0dXJlICIkezF9IgorCisgIGlzX2luICIkezF9IiB2cDggdnA5ICYmIGRpc2Fi
bGVfZmVhdHVyZSAiJHsxfV9lbmNvZGVyIiAiJHsxfV9kZWNvZGVyIgorfQorCisjIEl0ZXJhdGVz
IHRocm91Z2ggcG9zaXRpb25hbCBwYXJhbWV0ZXJzLCBjaGVja3MgdG8gY29uZmlybSB0aGUgcGFy
YW1ldGVyIGhhcworIyBub3QgYmVlbiBleHBsaWNpdGx5IChmb3JjZSkgZGlzYWJsZWQsIGFuZCBl
bmFibGVzIHRoZSBzZXR0aW5nIGNvbnRyb2xsZWQgYnkKKyMgdGhlIHBhcmFtZXRlciB3aGVuIHRo
ZSBzZXR0aW5nIGlzIG5vdCBkaXNhYmxlZC4KKyMgTm90ZTogRG9lcyBOT1QgYWx0ZXIgUlRDRCBn
ZW5lcmF0aW9uIG9wdGlvbnMgKCRSVENEX09QVElPTlMpLgorc29mdF9lbmFibGUoKSB7CisgIGZv
ciB2YXIgaW4gJCo7IGRvCisgICAgaWYgISBkaXNhYmxlZCAkdmFyOyB0aGVuCisgICAgICBlbmFi
bGVkICR2YXIgfHwgbG9nX2VjaG8gIiAgZW5hYmxpbmcgJHZhciIKKyAgICAgIGVuYWJsZV9mZWF0
dXJlICR2YXIKKyAgICBmaQorICBkb25lCit9CisKKyMgSXRlcmF0ZXMgdGhyb3VnaCBwb3NpdGlv
bmFsIHBhcmFtZXRlcnMsIGNoZWNrcyB0byBjb25maXJtIHRoZSBwYXJhbWV0ZXIgaGFzCisjIG5v
dCBiZWVuIGV4cGxpY2l0bHkgKGZvcmNlKSBlbmFibGVkLCBhbmQgZGlzYWJsZXMgdGhlIHNldHRp
bmcgY29udHJvbGxlZCBieQorIyB0aGUgcGFyYW1ldGVyIHdoZW4gdGhlIHNldHRpbmcgaXMgbm90
IGVuYWJsZWQuCisjIE5vdGU6IERvZXMgTk9UIGFsdGVyIFJUQ0QgZ2VuZXJhdGlvbiBvcHRpb25z
ICgkUlRDRF9PUFRJT05TKS4KK3NvZnRfZGlzYWJsZSgpIHsKKyAgZm9yIHZhciBpbiAkKjsgZG8K
KyAgICBpZiAhIGVuYWJsZWQgJHZhcjsgdGhlbgorICAgICAgZGlzYWJsZWQgJHZhciB8fCBsb2df
ZWNobyAiICBkaXNhYmxpbmcgJHZhciIKKyAgICAgIGRpc2FibGVfZmVhdHVyZSAkdmFyCisgICAg
ZmkKKyAgZG9uZQorfQorCisjCisjIFRleHQgUHJvY2Vzc2luZyBGdW5jdGlvbnMKKyMKK3RvdXBw
ZXIoKXsKKyAgZWNobyAiJEAiIHwgdHIgYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXogQUJDREVG
R0hJSktMTU5PUFFSU1RVVldYWVoKK30KKwordG9sb3dlcigpeworICBlY2hvICIkQCIgfCB0ciBB
QkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWiBhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5egorfQor
CisjCisjIFRlbXBvcmFyeSBGaWxlIEZ1bmN0aW9ucworIworc291cmNlX3BhdGg9JHswJS8qfQor
ZW5hYmxlX2ZlYXR1cmUgc291cmNlX3BhdGhfdXNlZAoraWYgWyAteiAiJHNvdXJjZV9wYXRoIiBd
IHx8IFsgIiRzb3VyY2VfcGF0aCIgPSAiLiIgXTsgdGhlbgorICBzb3VyY2VfcGF0aD0iYHB3ZGAi
CisgIGRpc2FibGVfZmVhdHVyZSBzb3VyY2VfcGF0aF91c2VkCitmaQorIyBNYWtlZmlsZXMgZ3Jl
ZWRpbHkgcHJvY2VzcyB0aGUgJyMnIGNoYXJhY3RlciBhcyBhIGNvbW1lbnQsIGV2ZW4gaWYgaXQg
aXMKKyMgaW5zaWRlIHF1b3Rlcy4gU28sIHRoaXMgY2hhcmFjdGVyIG11c3QgYmUgZXNjYXBlZCBp
biBhbGwgcGF0aHMgaW4gTWFrZWZpbGVzLgorc291cmNlX3BhdGhfbWs9JChlY2hvICRzb3VyY2Vf
cGF0aCB8IHNlZCAtZSAncztcIztcXFwjO2cnKQorCitpZiB0ZXN0ICEgLXogIiRUTVBESVIiIDsg
dGhlbgorICBUTVBESVJ4PSIke1RNUERJUn0iCitlbGlmIHRlc3QgISAteiAiJFRFTVBESVIiIDsg
dGhlbgorICBUTVBESVJ4PSIke1RFTVBESVJ9IgorZWxzZQorICBUTVBESVJ4PSIvdG1wIgorZmkK
K1JBTkQ9JChhd2sgJ0JFR0lOIHsgc3JhbmQoKTsgcHJpbnRmICIlZFxuIiwocmFuZCgpICogMzI3
NjgpfScpCitUTVBfSD0iJHtUTVBESVJ4fS92cHgtY29uZi0kJC0ke1JBTkR9LmgiCitUTVBfQz0i
JHtUTVBESVJ4fS92cHgtY29uZi0kJC0ke1JBTkR9LmMiCitUTVBfQ0M9IiR7VE1QRElSeH0vdnB4
LWNvbmYtJCQtJHtSQU5EfS5jYyIKK1RNUF9PPSIke1RNUERJUnh9L3ZweC1jb25mLSQkLSR7UkFO
RH0ubyIKK1RNUF9YPSIke1RNUERJUnh9L3ZweC1jb25mLSQkLSR7UkFORH0ueCIKK1RNUF9BU009
IiR7VE1QRElSeH0vdnB4LWNvbmYtJCQtJHtSQU5EfS5hc20iCisKK2NsZWFuX3RlbXBfZmlsZXMo
KSB7CisgIHJtIC1mICR7VE1QX0N9ICR7VE1QX0NDfSAke1RNUF9IfSAke1RNUF9PfSAke1RNUF9Y
fSAke1RNUF9BU019CisgIGVuYWJsZWQgZ2NvdiAmJiBybSAtZiAke1RNUF9DJS5jfS5nY25vICR7
VE1QX0NDJS5jY30uZ2NubworfQorCisjCisjIFRvb2xjaGFpbiBDaGVjayBGdW5jdGlvbnMKKyMK
K2NoZWNrX2NtZCgpIHsKKyAgZW5hYmxlZCBleHRlcm5hbF9idWlsZCAmJiByZXR1cm4KKyAgbG9n
ICIkQCIKKyAgIiRAIiA+PiR7bG9nZmlsZX0gMj4mMQorfQorCitjaGVja19jYygpIHsKKyAgbG9n
IGNoZWNrX2NjICIkQCIKKyAgY2F0ID4ke1RNUF9DfQorICBsb2dfZmlsZSAke1RNUF9DfQorICBj
aGVja19jbWQgJHtDQ30gJHtDRkxBR1N9ICIkQCIgLWMgLW8gJHtUTVBfT30gJHtUTVBfQ30KK30K
KworY2hlY2tfY3h4KCkgeworICBsb2cgY2hlY2tfY3h4ICIkQCIKKyAgY2F0ID4ke1RNUF9DQ30K
KyAgbG9nX2ZpbGUgJHtUTVBfQ0N9CisgIGNoZWNrX2NtZCAke0NYWH0gJHtDWFhGTEFHU30gIiRA
IiAtYyAtbyAke1RNUF9PfSAke1RNUF9DQ30KK30KKworY2hlY2tfY3BwKCkgeworICBsb2cgY2hl
Y2tfY3BwICIkQCIKKyAgY2F0ID4gJHtUTVBfQ30KKyAgbG9nX2ZpbGUgJHtUTVBfQ30KKyAgY2hl
Y2tfY21kICR7Q0N9ICR7Q0ZMQUdTfSAiJEAiIC1FIC1vICR7VE1QX099ICR7VE1QX0N9Cit9CisK
K2NoZWNrX2xkKCkgeworICBsb2cgY2hlY2tfbGQgIiRAIgorICBjaGVja19jYyAkQCBcCisgICAg
JiYgY2hlY2tfY21kICR7TER9ICR7TERGTEFHU30gIiRAIiAtbyAke1RNUF9YfSAke1RNUF9PfSAk
e2V4dHJhbGlic30KK30KKworY2hlY2tfbGliKCkgeworICBsb2cgY2hlY2tfbGliICIkQCIKKyAg
Y2hlY2tfY2MgJEAgXAorICAgICYmIGNoZWNrX2NtZCAke0xEfSAke0xERkxBR1N9IC1vICR7VE1Q
X1h9ICR7VE1QX099ICIkQCIgJHtleHRyYWxpYnN9Cit9CisKK2NoZWNrX2hlYWRlcigpeworICBs
b2cgY2hlY2tfaGVhZGVyICIkQCIKKyAgaGVhZGVyPSQxCisgIHNoaWZ0CisgIHZhcj1gZWNobyAk
aGVhZGVyIHwgc2VkICdzL1teQS1aYS16MC05X10vXy9nJ2AKKyAgZGlzYWJsZV9mZWF0dXJlICR2
YXIKKyAgY2hlY2tfY3BwICIkQCIgPDxFT0YgJiYgZW5hYmxlX2ZlYXR1cmUgJHZhcgorI2luY2x1
ZGUgIiRoZWFkZXIiCitpbnQgeDsKK0VPRgorfQorCitjaGVja19jZmxhZ3MoKSB7CisgbG9nIGNo
ZWNrX2NmbGFncyAiJEAiCisgY2hlY2tfY2MgLVdlcnJvciAiJEAiIDw8RU9GCitpbnQgeDsKK0VP
RgorfQorCitjaGVja19jeHhmbGFncygpIHsKKyAgbG9nIGNoZWNrX2N4eGZsYWdzICIkQCIKKwor
ICAjIENhdGNoIENGTEFHUyB0aGF0IHRyaWdnZXIgQ1hYIHdhcm5pbmdzCisgIGNhc2UgIiRDWFgi
IGluCisgICAgKmMrKy1hbmFseXplcnwqY2xhbmcrK3wqZysrKikKKyAgICAgIGNoZWNrX2N4eCAt
V2Vycm9yICIkQCIgPDxFT0YKK2ludCB4OworRU9GCisgICAgICA7OworICAgICopCisgICAgICBj
aGVja19jeHggLVdlcnJvciAiJEAiIDw8RU9GCitpbnQgeDsKK0VPRgorICAgICAgOzsKKyAgICBl
c2FjCit9CisKK2NoZWNrX2FkZF9jZmxhZ3MoKSB7CisgIGNoZWNrX2N4eGZsYWdzICIkQCIgJiYg
YWRkX2N4eGZsYWdzX29ubHkgIiRAIgorICBjaGVja19jZmxhZ3MgIiRAIiAmJiBhZGRfY2ZsYWdz
X29ubHkgIiRAIgorfQorCitjaGVja19hZGRfY3h4ZmxhZ3MoKSB7CisgIGNoZWNrX2N4eGZsYWdz
ICIkQCIgJiYgYWRkX2N4eGZsYWdzX29ubHkgIiRAIgorfQorCitjaGVja19hZGRfYXNmbGFncygp
IHsKKyAgbG9nIGFkZF9hc2ZsYWdzICIkQCIKKyAgYWRkX2FzZmxhZ3MgIiRAIgorfQorCitjaGVj
a19hZGRfbGRmbGFncygpIHsKKyAgbG9nIGFkZF9sZGZsYWdzICIkQCIKKyAgYWRkX2xkZmxhZ3Mg
IiRAIgorfQorCitjaGVja19hc21fYWxpZ24oKSB7CisgIGxvZyBjaGVja19hc21fYWxpZ24gIiRA
IgorICBjYXQgPiR7VE1QX0FTTX0gPDxFT0YKK3NlY3Rpb24gLnJvZGF0YQorYWxpZ24gMTYKK0VP
RgorICBsb2dfZmlsZSAke1RNUF9BU019CisgIGNoZWNrX2NtZCAke0FTfSAke0FTRkxBR1N9IC1v
ICR7VE1QX099ICR7VE1QX0FTTX0KKyAgcmVhZGVsZiAtV1MgJHtUTVBfT30gPiR7VE1QX1h9Cisg
IGxvZ19maWxlICR7VE1QX1h9CisgIGlmICEgZ3JlcCAtcSAnXC5yb2RhdGEgLiogMTYkJyAke1RN
UF9YfTsgdGhlbgorICAgIGRpZSAiJHtBU30gJHtBU0ZMQUdTfSBkb2VzIG5vdCBzdXBwb3J0IHNl
Y3Rpb24gYWxpZ25tZW50IChuYXNtIDw9Mi4wOD8pIgorICBmaQorfQorCisjIHRlc3RzIGZvciAt
bSQxIHRvZ2dsaW5nIHRoZSBmZWF0dXJlIGdpdmVuIGluICQyLiBJZiAkMiBpcyBlbXB0eSAkMSBp
cyB1c2VkLgorY2hlY2tfZ2NjX21hY2hpbmVfb3B0aW9uKCkgeworICBvcHQ9IiQxIgorICBmZWF0
dXJlPSIkMiIKKyAgWyAtbiAiJGZlYXR1cmUiIF0gfHwgZmVhdHVyZT0iJG9wdCIKKworICBpZiBl
bmFibGVkIGdjYyAmJiAhIGRpc2FibGVkICIkZmVhdHVyZSIgJiYgISBjaGVja19jZmxhZ3MgIi1t
JG9wdCI7IHRoZW4KKyAgICBSVENEX09QVElPTlM9IiR7UlRDRF9PUFRJT05TfS0tZGlzYWJsZS0k
ZmVhdHVyZSAiCisgIGVsc2UKKyAgICBzb2Z0X2VuYWJsZSAiJGZlYXR1cmUiCisgIGZpCit9CisK
KyMgdGVzdHMgZm9yIC1tJDIsIC1tJDMsIC1tJDQuLi4gdG9nZ2xpbmcgdGhlIGZlYXR1cmUgZ2l2
ZW4gaW4gJDEuCitjaGVja19nY2NfbWFjaGluZV9vcHRpb25zKCkgeworICBmZWF0dXJlPSIkMSIK
KyAgc2hpZnQKKyAgZmxhZ3M9Ii1tJDEiCisgIHNoaWZ0CisgIGZvciBvcHQgaW4gJCo7IGRvCisg
ICAgZmxhZ3M9IiRmbGFncyAtbSRvcHQiCisgIGRvbmUKKworICBpZiBlbmFibGVkIGdjYyAmJiAh
IGRpc2FibGVkICIkZmVhdHVyZSIgJiYgISBjaGVja19jZmxhZ3MgJGZsYWdzOyB0aGVuCisgICAg
UlRDRF9PUFRJT05TPSIke1JUQ0RfT1BUSU9OU30tLWRpc2FibGUtJGZlYXR1cmUgIgorICBlbHNl
CisgICAgc29mdF9lbmFibGUgIiRmZWF0dXJlIgorICBmaQorfQorCitjaGVja19nY2NfYXZ4NTEy
X2NvbXBpbGVzKCkgeworICBpZiBkaXNhYmxlZCBnY2M7IHRoZW4KKyAgICByZXR1cm4KKyAgZmkK
KworICBjaGVja19jYyAtbWF2eDUxMmYgPDxFT0YKKyNpbmNsdWRlIDxpbW1pbnRyaW4uaD4KK3Zv
aWQgZih2b2lkKSB7CisgIF9fbTUxMmkgeCA9IF9tbTUxMl9zZXQxX2VwaTE2KDApOworICAodm9p
ZCl4OworfQorRU9GCisgIGNvbXBpbGVfcmVzdWx0PSQ/CisgIGlmIFsgJHtjb21waWxlX3Jlc3Vs
dH0gLW5lIDAgXTsgdGhlbgorICAgIGxvZ19lY2hvICIgICAgZGlzYWJsaW5nIGF2eDUxMjogbm90
IHN1cHBvcnRlZCBieSBjb21waWxlciIKKyAgICBkaXNhYmxlX2ZlYXR1cmUgYXZ4NTEyCisgICAg
UlRDRF9PUFRJT05TPSIke1JUQ0RfT1BUSU9OU30tLWRpc2FibGUtYXZ4NTEyICIKKyAgZmkKK30K
Kword3JpdGVfY29tbW9uX2NvbmZpZ19iYW5uZXIoKSB7CisgIHByaW50X3dlYm1fbGljZW5zZSBj
b25maWcubWsgIiMjIiAiIgorICBlY2hvICcjIFRoaXMgZmlsZSBhdXRvbWF0aWNhbGx5IGdlbmVy
YXRlZCBieSBjb25maWd1cmUuIERvIG5vdCBlZGl0IScgPj4gY29uZmlnLm1rCisgIGVjaG8gIlRP
T0xDSEFJTiA6PSAke3Rvb2xjaGFpbn0iID4+IGNvbmZpZy5taworCisgIGNhc2UgJHt0b29sY2hh
aW59IGluCisgICAgKi1saW51eC1ydmN0KQorICAgICAgZWNobyAiQUxUX0xJQkMgOj0gJHthbHRf
bGliY30iID4+IGNvbmZpZy5taworICAgICAgOzsKKyAgZXNhYworfQorCit3cml0ZV9jb21tb25f
Y29uZmlnX3RhcmdldHMoKSB7CisgIGZvciB0IGluICR7YWxsX3RhcmdldHN9OyBkbworICAgIGlm
IGVuYWJsZWQgJHt0fTsgdGhlbgorICAgICAgaWYgZW5hYmxlZCBjaGlsZDsgdGhlbgorICAgICAg
ICBmd3JpdGUgY29uZmlnLm1rICJBTExfVEFSR0VUUyArPSAke3R9LSR7dG9vbGNoYWlufSIKKyAg
ICAgIGVsc2UKKyAgICAgICAgZndyaXRlIGNvbmZpZy5tayAiQUxMX1RBUkdFVFMgKz0gJHt0fSIK
KyAgICAgIGZpCisgICAgZmkKKyAgICB0cnVlOworICBkb25lCisgIHRydWUKK30KKword3JpdGVf
Y29tbW9uX3RhcmdldF9jb25maWdfbWsoKSB7CisgIHNhdmVkX0NDPSIke0NDfSIKKyAgc2F2ZWRf
Q1hYPSIke0NYWH0iCisgIGVuYWJsZWQgY2NhY2hlICYmIENDPSJjY2FjaGUgJHtDQ30iCisgIGVu
YWJsZWQgY2NhY2hlICYmIENYWD0iY2NhY2hlICR7Q1hYfSIKKyAgcHJpbnRfd2VibV9saWNlbnNl
ICQxICIjIyIgIiIKKworICBjYXQgPj4gJDEgPDwgRU9GCisjIFRoaXMgZmlsZSBhdXRvbWF0aWNh
bGx5IGdlbmVyYXRlZCBieSBjb25maWd1cmUuIERvIG5vdCBlZGl0IQorU1JDX1BBVEg9IiRzb3Vy
Y2VfcGF0aF9tayIKK1NSQ19QQVRIX0JBUkU9JHNvdXJjZV9wYXRoX21rCitCVUlMRF9QRlg9JHtC
VUlMRF9QRlh9CitUT09MQ0hBSU49JHt0b29sY2hhaW59CitBU01fQ09OVkVSU0lPTj0ke2FzbV9j
b252ZXJzaW9uX2NtZDotJHtzb3VyY2VfcGF0aF9ta30vYnVpbGQvbWFrZS9hZHMyZ2FzLnBsfQor
R0VOX1ZDUFJPSj0ke2dlbl92Y3Byb2pfY21kfQorTVNWU19BUkNIX0RJUj0ke21zdnNfYXJjaF9k
aXJ9CisKK0NDPSR7Q0N9CitDWFg9JHtDWFh9CitBUj0ke0FSfQorTEQ9JHtMRH0KK0FTPSR7QVN9
CitTVFJJUD0ke1NUUklQfQorTk09JHtOTX0KKworQ0ZMQUdTICA9ICR7Q0ZMQUdTfQorQ1hYRkxB
R1MgID0gJHtDWFhGTEFHU30KK0FSRkxBR1MgPSAtY3JzXCQoaWYgXCQocXVpZXQpLCx2KQorTERG
TEFHUyA9ICR7TERGTEFHU30KK0FTRkxBR1MgPSAke0FTRkxBR1N9CitleHRyYWxpYnMgPSAke2V4
dHJhbGlic30KK0FTX1NGWCAgICA9ICR7QVNfU0ZYOi0uYXNtfQorRVhFX1NGWCAgID0gJHtFWEVf
U0ZYfQorVkNQUk9KX1NGWCA9ICR7VkNQUk9KX1NGWH0KK1JUQ0RfT1BUSU9OUyA9ICR7UlRDRF9P
UFRJT05TfQorTElCWVVWX0NYWEZMQUdTID0gJHtMSUJZVVZfQ1hYRkxBR1N9CitFT0YKKworICBp
ZiBlbmFibGVkIHJ2Y3Q7IHRoZW4gY2F0ID4+ICQxIDw8IEVPRgorZm10X2RlcHMgPSBzZWQgLWUg
J3M7Xl9faW1hZ2UuYXhmO1wke0A6LmQ9Lm99IFwkQDsnICNoaWRlCitFT0YKKyAgZWxzZSBjYXQg
Pj4gJDEgPDwgRU9GCitmbXRfZGVwcyA9IHNlZCAtZSAnczteXChbYS16QS1aMC05X10qXClcLm87
XCR7QDouZD0ub30gXCRAOycKK0VPRgorICBmaQorCisgIHByaW50X2NvbmZpZ19tayBWUFhfQVJD
SCAiJHsxfSIgJHtBUkNIX0xJU1R9CisgIHByaW50X2NvbmZpZ19tayBIQVZFICAgICAiJHsxfSIg
JHtIQVZFX0xJU1R9CisgIHByaW50X2NvbmZpZ19tayBDT05GSUcgICAiJHsxfSIgJHtDT05GSUdf
TElTVH0KKyAgcHJpbnRfY29uZmlnX21rIEhBVkUgICAgICIkezF9IiBnbnVfc3RyaXAKKworICBl
bmFibGVkIG1zdnMgJiYgZWNobyAiQ09ORklHX1ZTX1ZFUlNJT049JHt2c192ZXJzaW9ufSIgPj4g
IiR7MX0iCisKKyAgQ0M9IiR7c2F2ZWRfQ0N9IgorICBDWFg9IiR7c2F2ZWRfQ1hYfSIKK30KKwor
d3JpdGVfY29tbW9uX3RhcmdldF9jb25maWdfaCgpIHsKKyAgcHJpbnRfd2VibV9saWNlbnNlICR7
VE1QX0h9ICIvKiIgIiAqLyIKKyAgY2F0ID4+ICR7VE1QX0h9IDw8IEVPRgorLyogVGhpcyBmaWxl
IGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IGNvbmZpZ3VyZS4gRG8gbm90IGVkaXQhICovCisj
aWZuZGVmIFZQWF9DT05GSUdfSAorI2RlZmluZSBWUFhfQ09ORklHX0gKKyNkZWZpbmUgUkVTVFJJ
Q1QgICAgJHtSRVNUUklDVH0KKyNkZWZpbmUgSU5MSU5FICAgICAgJHtJTkxJTkV9CitFT0YKKyAg
cHJpbnRfY29uZmlnX2ggVlBYX0FSQ0ggIiR7VE1QX0h9IiAke0FSQ0hfTElTVH0KKyAgcHJpbnRf
Y29uZmlnX2ggSEFWRSAgICAgIiR7VE1QX0h9IiAke0hBVkVfTElTVH0KKyAgcHJpbnRfY29uZmln
X2ggQ09ORklHICAgIiR7VE1QX0h9IiAke0NPTkZJR19MSVNUfQorICBwcmludF9jb25maWdfdmFy
c19oICAgICAiJHtUTVBfSH0iICR7VkFSX0xJU1R9CisgIGVjaG8gIiNlbmRpZiAvKiBWUFhfQ09O
RklHX0ggKi8iID4+ICR7VE1QX0h9CisgIG1rZGlyIC1wIGBkaXJuYW1lICIkMSJgCisgIGNtcCAi
JDEiICR7VE1QX0h9ID4vZGV2L251bGwgMj4mMSB8fCBtdiAke1RNUF9IfSAiJDEiCit9CisKK3dy
aXRlX3dpbl9hcm02NF9uZW9uX2hfd29ya2Fyb3VuZCgpIHsKKyAgcHJpbnRfd2VibV9saWNlbnNl
ICR7VE1QX0h9ICIvKiIgIiAqLyIKKyAgY2F0ID4+ICR7VE1QX0h9IDw8IEVPRgorLyogVGhpcyBm
aWxlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IGNvbmZpZ3VyZS4gRG8gbm90IGVkaXQhICov
CisjaWZuZGVmIFZQWF9XSU5fQVJNX05FT05fSF9XT1JLQVJPVU5ECisjZGVmaW5lIFZQWF9XSU5f
QVJNX05FT05fSF9XT1JLQVJPVU5ECisvKiBUaGUgV2luZG93cyBTREsgaGFzIGFybV9uZW9uLmgs
IGJ1dCB1bmxpa2Ugb24gb3RoZXIgcGxhdGZvcm1zIGl0IGlzCisgKiBBUk0zMi1vbmx5LiBBUk02
NCBORU9OIHN1cHBvcnQgaXMgcHJvdmlkZWQgYnkgYXJtNjRfbmVvbi5oLCBhIHByb3BlcgorICog
c3VwZXJzZXQgb2YgYXJtX25lb24uaC4gV29yayBhcm91bmQgdGhpcyBieSBwcm92aWRpbmcgYSBt
b3JlIGxvY2FsCisgKiBhcm1fbmVvbi5oIHRoYXQgc2ltcGx5ICNpbmNsdWRlcyBhcm02NF9uZW9u
LmguCisgKi8KKyNpbmNsdWRlIDxhcm02NF9uZW9uLmg+CisjZW5kaWYgLyogVlBYX1dJTl9BUk1f
TkVPTl9IX1dPUktBUk9VTkQgKi8KK0VPRgorICBta2RpciAtcCBgZGlybmFtZSAiJDEiYAorICBj
bXAgIiQxIiAke1RNUF9IfSA+L2Rldi9udWxsIDI+JjEgfHwgbXYgJHtUTVBfSH0gIiQxIgorfQor
Citwcm9jZXNzX2NvbW1vbl9jbWRsaW5lKCkgeworICBmb3Igb3B0IGluICIkQCI7IGRvCisgICAg
b3B0dmFsPSIke29wdCMqPX0iCisgICAgY2FzZSAiJG9wdCIgaW4KKyAgICAgIC0tY2hpbGQpCisg
ICAgICAgIGVuYWJsZV9mZWF0dXJlIGNoaWxkCisgICAgICAgIDs7CisgICAgICAtLWxvZyopCisg
ICAgICAgIGxvZ2dpbmc9IiRvcHR2YWwiCisgICAgICAgIGlmICEgZGlzYWJsZWQgbG9nZ2luZyA7
IHRoZW4KKyAgICAgICAgICBlbmFibGVkIGxvZ2dpbmcgfHwgbG9nZmlsZT0iJGxvZ2dpbmciCisg
ICAgICAgIGVsc2UKKyAgICAgICAgICBsb2dmaWxlPS9kZXYvbnVsbAorICAgICAgICBmaQorICAg
ICAgICA7OworICAgICAgLS10YXJnZXQ9KikKKyAgICAgICAgdG9vbGNoYWluPSIke3Rvb2xjaGFp
bjotJHtvcHR2YWx9fSIKKyAgICAgICAgOzsKKyAgICAgIC0tZm9yY2UtdGFyZ2V0PSopCisgICAg
ICAgIHRvb2xjaGFpbj0iJHt0b29sY2hhaW46LSR7b3B0dmFsfX0iCisgICAgICAgIGVuYWJsZV9m
ZWF0dXJlIGZvcmNlX3Rvb2xjaGFpbgorICAgICAgICA7OworICAgICAgLS1jcHU9KikKKyAgICAg
ICAgdHVuZV9jcHU9IiRvcHR2YWwiCisgICAgICAgIDs7CisgICAgICAtLWV4dHJhLWNmbGFncz0q
KQorICAgICAgICBleHRyYV9jZmxhZ3M9IiR7b3B0dmFsfSIKKyAgICAgICAgOzsKKyAgICAgIC0t
ZXh0cmEtY3h4ZmxhZ3M9KikKKyAgICAgICAgZXh0cmFfY3h4ZmxhZ3M9IiR7b3B0dmFsfSIKKyAg
ICAgICAgOzsKKyAgICAgIC0tZW5hYmxlLT8qfC0tZGlzYWJsZS0/KikKKyAgICAgICAgZXZhbCBg
ZWNobyAiJG9wdCIgfCBzZWQgJ3MvLS0vYWN0aW9uPS87cy8tLyBvcHRpb249LztzLy0vXy9nJ2AK
KyAgICAgICAgaWYgaXNfaW4gJHtvcHRpb259ICR7QVJDSF9FWFRfTElTVH07IHRoZW4KKyAgICAg
ICAgICBbICRhY3Rpb24gPSAiZGlzYWJsZSIgXSAmJiBSVENEX09QVElPTlM9IiR7UlRDRF9PUFRJ
T05TfS0tZGlzYWJsZS0ke29wdGlvbn0gIgorICAgICAgICBlbGlmIFsgJGFjdGlvbiA9ICJkaXNh
YmxlIiBdICYmICEgZGlzYWJsZWQgJG9wdGlvbiA7IHRoZW4KKyAgICAgICAgICBpc19pbiAke29w
dGlvbn0gJHtDTURMSU5FX1NFTEVDVH0gfHwgZGllX3Vua25vd24gJG9wdAorICAgICAgICAgIGxv
Z19lY2hvICIgIGRpc2FibGluZyAkb3B0aW9uIgorICAgICAgICBlbGlmIFsgJGFjdGlvbiA9ICJl
bmFibGUiIF0gJiYgISBlbmFibGVkICRvcHRpb24gOyB0aGVuCisgICAgICAgICAgaXNfaW4gJHtv
cHRpb259ICR7Q01ETElORV9TRUxFQ1R9IHx8IGRpZV91bmtub3duICRvcHQKKyAgICAgICAgICBs
b2dfZWNobyAiICBlbmFibGluZyAkb3B0aW9uIgorICAgICAgICBmaQorICAgICAgICAke2FjdGlv
bn1fZmVhdHVyZSAkb3B0aW9uCisgICAgICAgIDs7CisgICAgICAtLXJlcXVpcmUtPyopCisgICAg
ICAgIGV2YWwgYGVjaG8gIiRvcHQiIHwgc2VkICdzLy0tL2FjdGlvbj0vO3MvLS8gb3B0aW9uPS87
cy8tL18vZydgCisgICAgICAgIGlmIGlzX2luICR7b3B0aW9ufSAke0FSQ0hfRVhUX0xJU1R9OyB0
aGVuCisgICAgICAgICAgICBSVENEX09QVElPTlM9IiR7UlRDRF9PUFRJT05TfSR7b3B0fSAiCisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgIGRpZV91bmtub3duICRvcHQKKyAgICAgICAgZmkKKyAg
ICAgICAgOzsKKyAgICAgIC0tZm9yY2UtZW5hYmxlLT8qfC0tZm9yY2UtZGlzYWJsZS0/KikKKyAg
ICAgICAgZXZhbCBgZWNobyAiJG9wdCIgfCBzZWQgJ3MvLS1mb3JjZS0vYWN0aW9uPS87cy8tLyBv
cHRpb249LztzLy0vXy9nJ2AKKyAgICAgICAgJHthY3Rpb259X2ZlYXR1cmUgJG9wdGlvbgorICAg
ICAgICA7OworICAgICAgLS1saWJjPSopCisgICAgICAgIFsgLWQgIiR7b3B0dmFsfSIgXSB8fCBk
aWUgIk5vdCBhIGRpcmVjdG9yeTogJHtvcHR2YWx9IgorICAgICAgICBkaXNhYmxlX2ZlYXR1cmUg
YnVpbHRpbl9saWJjCisgICAgICAgIGFsdF9saWJjPSIke29wdHZhbH0iCisgICAgICAgIDs7Cisg
ICAgICAtLWFzPSopCisgICAgICAgIFsgIiR7b3B0dmFsfSIgPSB5YXNtIF0gfHwgWyAiJHtvcHR2
YWx9IiA9IG5hc20gXSBcCisgICAgICAgICAgfHwgWyAiJHtvcHR2YWx9IiA9IGF1dG8gXSBcCisg
ICAgICAgICAgfHwgZGllICJNdXN0IGJlIHlhc20sIG5hc20gb3IgYXV0bzogJHtvcHR2YWx9Igor
ICAgICAgICBhbHRfYXM9IiR7b3B0dmFsfSIKKyAgICAgICAgOzsKKyAgICAgIC0tc2l6ZS1saW1p
dD0qKQorICAgICAgICB3PSIke29wdHZhbCUleCp9IgorICAgICAgICBoPSIke29wdHZhbCMjKnh9
IgorICAgICAgICBWQVJfTElTVD0iREVDT0RFX1dJRFRIX0xJTUlUICR7d30gREVDT0RFX0hFSUdI
VF9MSU1JVCAke2h9IgorICAgICAgICBbICR7d30gLWd0IDAgXSAmJiBbICR7aH0gLWd0IDAgXSB8
fCBkaWUgIkludmFsaWQgc2l6ZS1saW1pdDogdG9vIHNtYWxsLiIKKyAgICAgICAgWyAke3d9IC1s
dCA2NTUzNiBdICYmIFsgJHtofSAtbHQgNjU1MzYgXSBcCisgICAgICAgICAgICB8fCBkaWUgIklu
dmFsaWQgc2l6ZS1saW1pdDogdG9vIGJpZy4iCisgICAgICAgIGVuYWJsZV9mZWF0dXJlIHNpemVf
bGltaXQKKyAgICAgICAgOzsKKyAgICAgIC0tcHJlZml4PSopCisgICAgICAgIHByZWZpeD0iJHtv
cHR2YWx9IgorICAgICAgICA7OworICAgICAgLS1saWJkaXI9KikKKyAgICAgICAgbGliZGlyPSIk
e29wdHZhbH0iCisgICAgICAgIDs7CisgICAgICAtLWxpYmN8LS1hc3wtLXByZWZpeHwtLWxpYmRp
cikKKyAgICAgICAgZGllICJPcHRpb24gJHtvcHR9IHJlcXVpcmVzIGFyZ3VtZW50IgorICAgICAg
ICA7OworICAgICAgLS1oZWxwfC1oKQorICAgICAgICBzaG93X2hlbHAKKyAgICAgICAgOzsKKyAg
ICAgICopCisgICAgICAgIGRpZV91bmtub3duICRvcHQKKyAgICAgICAgOzsKKyAgICBlc2FjCisg
IGRvbmUKK30KKworcHJvY2Vzc19jbWRsaW5lKCkgeworICBmb3Igb3B0IGRvCisgICAgb3B0dmFs
PSIke29wdCMqPX0iCisgICAgY2FzZSAiJG9wdCIgaW4KKyAgICAgICopCisgICAgICAgIHByb2Nl
c3NfY29tbW9uX2NtZGxpbmUgJG9wdAorICAgICAgICA7OworICAgIGVzYWMKKyAgZG9uZQorfQor
Citwb3N0X3Byb2Nlc3NfY29tbW9uX2NtZGxpbmUoKSB7CisgIHByZWZpeD0iJHtwcmVmaXg6LS91
c3IvbG9jYWx9IgorICBwcmVmaXg9IiR7cHJlZml4JS99IgorICBsaWJkaXI9IiR7bGliZGlyOi0k
e3ByZWZpeH0vbGlifSIKKyAgbGliZGlyPSIke2xpYmRpciUvfSIKKyAgaWYgWyAiJHtsaWJkaXIj
JHtwcmVmaXh9fSIgPSAiJHtsaWJkaXJ9IiBdOyB0aGVuCisgICAgZGllICJMaWJkaXIgJHtsaWJk
aXJ9IG11c3QgYmUgYSBzdWJkaXJlY3Rvcnkgb2YgJHtwcmVmaXh9IgorICBmaQorfQorCitwb3N0
X3Byb2Nlc3NfY21kbGluZSgpIHsKKyAgdHJ1ZTsKK30KKworc2V0dXBfZ251X3Rvb2xjaGFpbigp
IHsKKyAgQ0M9JHtDQzotJHtDUk9TU31nY2N9CisgIENYWD0ke0NYWDotJHtDUk9TU31nKyt9Cisg
IEFSPSR7QVI6LSR7Q1JPU1N9YXJ9CisgIExEPSR7TEQ6LSR7Q1JPU1N9JHtsaW5rX3dpdGhfY2M6
LWxkfX0KKyAgQVM9JHtBUzotJHtDUk9TU31hc30KKyAgU1RSSVA9JHtTVFJJUDotJHtDUk9TU31z
dHJpcH0KKyAgTk09JHtOTTotJHtDUk9TU31ubX0KKyAgQVNfU0ZYPS5TCisgIEVYRV9TRlg9Cit9
CisKKyMgUmVsaWFibHkgZmluZCB0aGUgbmV3ZXN0IGF2YWlsYWJsZSBEYXJ3aW4gU0RLcy4gKE9s
ZGVyIHZlcnNpb25zIG9mCisjIHhjcnVuIGRvbid0IHN1cHBvcnQgLS1zaG93LXNkay1wYXRoLikK
K3Nob3dfZGFyd2luX3Nka19wYXRoKCkgeworICB4Y3J1biAtLXNkayAkMSAtLXNob3ctc2RrLXBh
dGggMj4vZGV2L251bGwgfHwKKyAgICB4Y29kZWJ1aWxkIC1zZGsgJDEgLXZlcnNpb24gUGF0aCAy
Pi9kZXYvbnVsbAorfQorCisjIFByaW50IHRoZSBtYWpvciB2ZXJzaW9uIG51bWJlciBvZiB0aGUg
RGFyd2luIFNESyBzcGVjaWZpZWQgYnkgJDEuCitzaG93X2Rhcndpbl9zZGtfbWFqb3JfdmVyc2lv
bigpIHsKKyAgeGNydW4gLS1zZGsgJDEgLS1zaG93LXNkay12ZXJzaW9uIDI+L2Rldi9udWxsIHwg
Y3V0IC1kLiAtZjEKK30KKworIyBQcmludCB0aGUgWGNvZGUgdmVyc2lvbi4KK3Nob3dfeGNvZGVf
dmVyc2lvbigpIHsKKyAgeGNvZGVidWlsZCAtdmVyc2lvbiB8IGhlYWQgLW4xIHwgY3V0IC1kJyAn
IC1mMgorfQorCisjIEZhaWxzIHdoZW4gWGNvZGUgdmVyc2lvbiBpcyBsZXNzIHRoYW4gNi4zLgor
Y2hlY2tfeGNvZGVfbWluaW11bV92ZXJzaW9uKCkgeworICB4Y29kZV9tYWpvcj0kKHNob3dfeGNv
ZGVfdmVyc2lvbiB8IGN1dCAtZjEgLWQuKQorICB4Y29kZV9taW5vcj0kKHNob3dfeGNvZGVfdmVy
c2lvbiB8IGN1dCAtZjIgLWQuKQorICB4Y29kZV9taW5fbWFqb3I9NgorICB4Y29kZV9taW5fbWlu
b3I9MworICBpZiBbICR7eGNvZGVfbWFqb3J9IC1sdCAke3hjb2RlX21pbl9tYWpvcn0gXTsgdGhl
bgorICAgIHJldHVybiAxCisgIGZpCisgIGlmIFsgJHt4Y29kZV9tYWpvcn0gLWVxICR7eGNvZGVf
bWluX21ham9yfSBdIFwKKyAgICAmJiBbICR7eGNvZGVfbWlub3J9IC1sdCAke3hjb2RlX21pbl9t
aW5vcn0gXTsgdGhlbgorICAgIHJldHVybiAxCisgIGZpCit9CisKK3Byb2Nlc3NfY29tbW9uX3Rv
b2xjaGFpbigpIHsKKyAgaWYgWyAteiAiJHRvb2xjaGFpbiIgXTsgdGhlbgorICAgIGdjY3Rhcmdl
dD0iJHtDSE9TVDotJChnY2MgLWR1bXBtYWNoaW5lIDI+IC9kZXYvbnVsbCl9IgorICAgICMgZGV0
ZWN0IHRndF9pc2EKKyAgICBjYXNlICIkZ2NjdGFyZ2V0IiBpbgorICAgICAgYWFyY2g2NCopCisg
ICAgICAgIHRndF9pc2E9YXJtNjQKKyAgICAgICAgOzsKKyAgICAgIGFybXY3Ki1oYXJkZmxvYXQq
IHwgYXJtdjcqLWdudWVhYmloZiB8IGFybS0qLWdudWVhYmloZikKKyAgICAgICAgdGd0X2lzYT1h
cm12NworICAgICAgICBmbG9hdF9hYmk9aGFyZAorICAgICAgICA7OworICAgICAgYXJtdjcqKQor
ICAgICAgICB0Z3RfaXNhPWFybXY3CisgICAgICAgIGZsb2F0X2FiaT1zb2Z0ZnAKKyAgICAgICAg
OzsKKyAgICAgICp4ODZfNjQqfCphbWQ2NCopCisgICAgICAgIHRndF9pc2E9eDg2XzY0CisgICAg
ICAgIDs7CisgICAgICAqaVszNDU2XTg2KikKKyAgICAgICAgdGd0X2lzYT14ODYKKyAgICAgICAg
OzsKKyAgICAgICpzcGFyYyopCisgICAgICAgIHRndF9pc2E9c3BhcmMKKyAgICAgICAgOzsKKyAg
ICAgIHBvd2VyKjY0bGUqLSopCisgICAgICAgIHRndF9pc2E9cHBjNjRsZQorICAgICAgICA7Owor
ICAgICAgKm1pcHM2NGVsKikKKyAgICAgICAgdGd0X2lzYT1taXBzNjQKKyAgICAgICAgOzsKKyAg
ICAgICptaXBzMzJlbCopCisgICAgICAgIHRndF9pc2E9bWlwczMyCisgICAgICAgIDs7CisgICAg
ZXNhYworCisgICAgIyBkZXRlY3QgdGd0X29zCisgICAgY2FzZSAiJGdjY3RhcmdldCIgaW4KKyAg
ICAgICpkYXJ3aW4xWzAtOV0qKQorICAgICAgICB0Z3RfaXNhPXg4Nl82NAorICAgICAgICB0Z3Rf
b3M9YGVjaG8gJGdjY3RhcmdldCB8IHNlZCAncy8uKlwoZGFyd2luMVswLTldXCkuKi9cMS8nYAor
ICAgICAgICA7OworICAgICAgKmRhcndpbjIwKikKKyAgICAgICAgdGd0X2lzYT1gdW5hbWUgLW1g
CisgICAgICAgIHRndF9vcz1gZWNobyAkZ2NjdGFyZ2V0IHwgc2VkICdzLy4qXChkYXJ3aW4yWzAt
OV1cKS4qL1wxLydgCisgICAgICAgIDs7CisgICAgICB4ODZfNjQqbWluZ3czMiopCisgICAgICAg
IHRndF9vcz13aW42NAorICAgICAgICA7OworICAgICAgeDg2XzY0KmN5Z3dpbiopCisgICAgICAg
IHRndF9vcz13aW42NAorICAgICAgICA7OworICAgICAgKm1pbmd3MzIqfCpjeWd3aW4qKQorICAg
ICAgICBbIC16ICIkdGd0X2lzYSIgXSAmJiB0Z3RfaXNhPXg4NgorICAgICAgICB0Z3Rfb3M9d2lu
MzIKKyAgICAgICAgOzsKKyAgICAgICpsaW51eCp8KmJzZCopCisgICAgICAgIHRndF9vcz1saW51
eAorICAgICAgICA7OworICAgICAgKnNvbGFyaXMyLjEwKQorICAgICAgICB0Z3Rfb3M9c29sYXJp
cworICAgICAgICA7OworICAgICAgKm9zMiopCisgICAgICAgIHRndF9vcz1vczIKKyAgICAgICAg
OzsKKyAgICBlc2FjCisKKyAgICBpZiBbIC1uICIkdGd0X2lzYSIgXSAmJiBbIC1uICIkdGd0X29z
IiBdOyB0aGVuCisgICAgICB0b29sY2hhaW49JHt0Z3RfaXNhfS0ke3RndF9vc30tZ2NjCisgICAg
ZmkKKyAgZmkKKworICB0b29sY2hhaW49JHt0b29sY2hhaW46LWdlbmVyaWMtZ251fQorCisgIGlz
X2luICR7dG9vbGNoYWlufSAke2FsbF9wbGF0Zm9ybXN9IHx8IGVuYWJsZWQgZm9yY2VfdG9vbGNo
YWluIFwKKyAgICB8fCBkaWUgIlVucmVjb2duaXplZCB0b29sY2hhaW4gJyR7dG9vbGNoYWlufSci
CisKKyAgZW5hYmxlZCBjaGlsZCB8fCBsb2dfZWNobyAiQ29uZmlndXJpbmcgZm9yIHRhcmdldCAn
JHt0b29sY2hhaW59JyIKKworICAjCisgICMgU2V0IHVwIHRvb2xjaGFpbiB2YXJpYWJsZXMKKyAg
IworICB0Z3RfaXNhPSQoZWNobyAke3Rvb2xjaGFpbn0gfCBhd2sgJ0JFR0lOe0ZTPSItIn17cHJp
bnQgJDF9JykKKyAgdGd0X29zPSQoZWNobyAke3Rvb2xjaGFpbn0gfCBhd2sgJ0JFR0lOe0ZTPSIt
In17cHJpbnQgJDJ9JykKKyAgdGd0X2NjPSQoZWNobyAke3Rvb2xjaGFpbn0gfCBhd2sgJ0JFR0lO
e0ZTPSItIn17cHJpbnQgJDN9JykKKworICAjIE1hcmsgdGhlIHNwZWNpZmljIElTQSByZXF1ZXN0
ZWQgYXMgZW5hYmxlZAorICBzb2Z0X2VuYWJsZSAke3RndF9pc2F9CisgIGVuYWJsZV9mZWF0dXJl
ICR7dGd0X29zfQorICBlbmFibGVfZmVhdHVyZSAke3RndF9jY30KKworICAjIEVuYWJsZSB0aGUg
YXJjaGl0ZWN0dXJlIGZhbWlseQorICBjYXNlICR7dGd0X2lzYX0gaW4KKyAgICBhcm0qKQorICAg
ICAgZW5hYmxlX2ZlYXR1cmUgYXJtCisgICAgICA7OworICAgIG1pcHMqKQorICAgICAgZW5hYmxl
X2ZlYXR1cmUgbWlwcworICAgICAgOzsKKyAgICBwcGMqKQorICAgICAgZW5hYmxlX2ZlYXR1cmUg
cHBjCisgICAgICA7OworICBlc2FjCisKKyAgIyBQSUMgaXMgcHJvYmFibHkgd2hhdCB3ZSB3YW50
IHdoZW4gYnVpbGRpbmcgc2hhcmVkIGxpYnMKKyAgZW5hYmxlZCBzaGFyZWQgJiYgc29mdF9lbmFi
bGUgcGljCisKKyAgIyBNaW5pbXVtIGlPUyB2ZXJzaW9uIGZvciBhbGwgdGFyZ2V0IHBsYXRmb3Jt
cyAoZGFyd2luIGFuZCBpcGhvbmVzaW11bGF0b3IpLgorICAjIFNoYXJlZCBsaWJyYXJ5IGZyYW1l
d29yayBidWlsZHMgYXJlIG9ubHkgcG9zc2libGUgb24gaU9TIDggYW5kIGxhdGVyLgorICBpZiBl
bmFibGVkIHNoYXJlZDsgdGhlbgorICAgIElPU19WRVJTSU9OX09QVElPTlM9Ii0tZW5hYmxlLXNo
YXJlZCIKKyAgICBJT1NfVkVSU0lPTl9NSU49IjguMCIKKyAgZWxzZQorICAgIElPU19WRVJTSU9O
X09QVElPTlM9IiIKKyAgICBJT1NfVkVSU0lPTl9NSU49IjcuMCIKKyAgZmkKKworICAjIEhhbmRs
ZSBkYXJ3aW4gdmFyaWFudHMuIE5ld2VyIFNES3MgYWxsb3cgdGFyZ2V0aW5nIG9sZGVyCisgICMg
cGxhdGZvcm1zLCBzbyB1c2UgdGhlIG5ld2VzdCBvbmUgYXZhaWxhYmxlLgorICBjYXNlICR7dG9v
bGNoYWlufSBpbgorICAgIGFybSotZGFyd2luLSopCisgICAgICBhZGRfY2ZsYWdzICItbWlwaG9u
ZW9zLXZlcnNpb24tbWluPSR7SU9TX1ZFUlNJT05fTUlOfSIKKyAgICAgIGlwaG9uZW9zX3Nka19k
aXI9IiQoc2hvd19kYXJ3aW5fc2RrX3BhdGggaXBob25lb3MpIgorICAgICAgaWYgWyAtZCAiJHtp
cGhvbmVvc19zZGtfZGlyfSIgXTsgdGhlbgorICAgICAgICBhZGRfY2ZsYWdzICAiLWlzeXNyb290
ICR7aXBob25lb3Nfc2RrX2Rpcn0iCisgICAgICAgIGFkZF9sZGZsYWdzICItaXN5c3Jvb3QgJHtp
cGhvbmVvc19zZGtfZGlyfSIKKyAgICAgIGZpCisgICAgICA7OworICAgICotZGFyd2luKikKKyAg
ICAgIG9zeF9zZGtfZGlyPSIkKHNob3dfZGFyd2luX3Nka19wYXRoIG1hY29zeCkiCisgICAgICBp
ZiBbIC1kICIke29zeF9zZGtfZGlyfSIgXTsgdGhlbgorICAgICAgICBhZGRfY2ZsYWdzICAiLWlz
eXNyb290ICR7b3N4X3Nka19kaXJ9IgorICAgICAgICBhZGRfbGRmbGFncyAiLWlzeXNyb290ICR7
b3N4X3Nka19kaXJ9IgorICAgICAgZmkKKyAgICAgIDs7CisgIGVzYWMKKworICBjYXNlICR7dG9v
bGNoYWlufSBpbgorICAgICotZGFyd2luOC0qKQorICAgICAgYWRkX2NmbGFncyAgIi1tbWFjb3N4
LXZlcnNpb24tbWluPTEwLjQiCisgICAgICBhZGRfbGRmbGFncyAiLW1tYWNvc3gtdmVyc2lvbi1t
aW49MTAuNCIKKyAgICAgIDs7CisgICAgKi1kYXJ3aW45LSopCisgICAgICBhZGRfY2ZsYWdzICAi
LW1tYWNvc3gtdmVyc2lvbi1taW49MTAuNSIKKyAgICAgIGFkZF9sZGZsYWdzICItbW1hY29zeC12
ZXJzaW9uLW1pbj0xMC41IgorICAgICAgOzsKKyAgICAqLWRhcndpbjEwLSopCisgICAgICBhZGRf
Y2ZsYWdzICAiLW1tYWNvc3gtdmVyc2lvbi1taW49MTAuNiIKKyAgICAgIGFkZF9sZGZsYWdzICIt
bW1hY29zeC12ZXJzaW9uLW1pbj0xMC42IgorICAgICAgOzsKKyAgICAqLWRhcndpbjExLSopCisg
ICAgICBhZGRfY2ZsYWdzICAiLW1tYWNvc3gtdmVyc2lvbi1taW49MTAuNyIKKyAgICAgIGFkZF9s
ZGZsYWdzICItbW1hY29zeC12ZXJzaW9uLW1pbj0xMC43IgorICAgICAgOzsKKyAgICAqLWRhcndp
bjEyLSopCisgICAgICBhZGRfY2ZsYWdzICAiLW1tYWNvc3gtdmVyc2lvbi1taW49MTAuOCIKKyAg
ICAgIGFkZF9sZGZsYWdzICItbW1hY29zeC12ZXJzaW9uLW1pbj0xMC44IgorICAgICAgOzsKKyAg
ICAqLWRhcndpbjEzLSopCisgICAgICBhZGRfY2ZsYWdzICAiLW1tYWNvc3gtdmVyc2lvbi1taW49
MTAuOSIKKyAgICAgIGFkZF9sZGZsYWdzICItbW1hY29zeC12ZXJzaW9uLW1pbj0xMC45IgorICAg
ICAgOzsKKyAgICAqLWRhcndpbjE0LSopCisgICAgICBhZGRfY2ZsYWdzICAiLW1tYWNvc3gtdmVy
c2lvbi1taW49MTAuMTAiCisgICAgICBhZGRfbGRmbGFncyAiLW1tYWNvc3gtdmVyc2lvbi1taW49
MTAuMTAiCisgICAgICA7OworICAgICotZGFyd2luMTUtKikKKyAgICAgIGFkZF9jZmxhZ3MgICIt
bW1hY29zeC12ZXJzaW9uLW1pbj0xMC4xMSIKKyAgICAgIGFkZF9sZGZsYWdzICItbW1hY29zeC12
ZXJzaW9uLW1pbj0xMC4xMSIKKyAgICAgIDs7CisgICAgKi1kYXJ3aW4xNi0qKQorICAgICAgYWRk
X2NmbGFncyAgIi1tbWFjb3N4LXZlcnNpb24tbWluPTEwLjEyIgorICAgICAgYWRkX2xkZmxhZ3Mg
Ii1tbWFjb3N4LXZlcnNpb24tbWluPTEwLjEyIgorICAgICAgOzsKKyAgICAqLWRhcndpbjE3LSop
CisgICAgICBhZGRfY2ZsYWdzICAiLW1tYWNvc3gtdmVyc2lvbi1taW49MTAuMTMiCisgICAgICBh
ZGRfbGRmbGFncyAiLW1tYWNvc3gtdmVyc2lvbi1taW49MTAuMTMiCisgICAgICA7OworICAgICot
ZGFyd2luMTgtKikKKyAgICAgIGFkZF9jZmxhZ3MgICItbW1hY29zeC12ZXJzaW9uLW1pbj0xMC4x
NCIKKyAgICAgIGFkZF9sZGZsYWdzICItbW1hY29zeC12ZXJzaW9uLW1pbj0xMC4xNCIKKyAgICAg
IDs7CisgICAgKi1kYXJ3aW4xOS0qKQorICAgICAgYWRkX2NmbGFncyAgIi1tbWFjb3N4LXZlcnNp
b24tbWluPTEwLjE1IgorICAgICAgYWRkX2xkZmxhZ3MgIi1tbWFjb3N4LXZlcnNpb24tbWluPTEw
LjE1IgorICAgICAgOzsKKyAgICAqLWRhcndpbjIwLSopCisgICAgICBhZGRfY2ZsYWdzICAiLW1t
YWNvc3gtdmVyc2lvbi1taW49MTAuMTYgLWFyY2ggJHt0b29sY2hhaW4lJS0qfSIKKyAgICAgIGFk
ZF9sZGZsYWdzICItbW1hY29zeC12ZXJzaW9uLW1pbj0xMC4xNiAtYXJjaCAke3Rvb2xjaGFpbiUl
LSp9IgorICAgICAgOzsKKyAgICAqLWlwaG9uZXNpbXVsYXRvci0qKQorICAgICAgYWRkX2NmbGFn
cyAgIi1taXBob25lb3MtdmVyc2lvbi1taW49JHtJT1NfVkVSU0lPTl9NSU59IgorICAgICAgYWRk
X2xkZmxhZ3MgIi1taXBob25lb3MtdmVyc2lvbi1taW49JHtJT1NfVkVSU0lPTl9NSU59IgorICAg
ICAgaW9zc2ltX3Nka19kaXI9IiQoc2hvd19kYXJ3aW5fc2RrX3BhdGggaXBob25lc2ltdWxhdG9y
KSIKKyAgICAgIGlmIFsgLWQgIiR7aW9zc2ltX3Nka19kaXJ9IiBdOyB0aGVuCisgICAgICAgIGFk
ZF9jZmxhZ3MgICItaXN5c3Jvb3QgJHtpb3NzaW1fc2RrX2Rpcn0iCisgICAgICAgIGFkZF9sZGZs
YWdzICItaXN5c3Jvb3QgJHtpb3NzaW1fc2RrX2Rpcn0iCisgICAgICBmaQorICAgICAgOzsKKyAg
ZXNhYworCisgICMgSGFuZGxlIFNvbGFyaXMgdmFyaWFudHMuIFNvbGFyaXMgMTAgbmVlZHMgLWxw
b3NpeDQKKyAgY2FzZSAke3Rvb2xjaGFpbn0gaW4KKyAgICBzcGFyYy1zb2xhcmlzLSopCisgICAg
ICBhZGRfZXh0cmFsaWJzIC1scG9zaXg0CisgICAgICA7OworICAgICotc29sYXJpcy0qKQorICAg
ICAgYWRkX2V4dHJhbGlicyAtbHBvc2l4NAorICAgICAgOzsKKyAgZXNhYworCisgICMgUHJvY2Vz
cyBBUk0gYXJjaGl0ZWN0dXJlIHZhcmlhbnRzCisgIGNhc2UgJHt0b29sY2hhaW59IGluCisgICAg
YXJtKikKKyAgICAgICMgb24gYXJtLCBpc2EgdmVyc2lvbnMgYXJlIHN1cGVyc2V0cworICAgICAg
Y2FzZSAke3RndF9pc2F9IGluCisgICAgICAgIGFybTY0fGFybXY4KQorICAgICAgICAgIHNvZnRf
ZW5hYmxlIG5lb24KKyAgICAgICAgICA7OworICAgICAgICBhcm12N3xhcm12N3MpCisgICAgICAg
ICAgc29mdF9lbmFibGUgbmVvbgorICAgICAgICAgICMgT25seSBlbmFibGUgbmVvbl9hc20gd2hl
biBuZW9uIGlzIGFsc28gZW5hYmxlZC4KKyAgICAgICAgICBlbmFibGVkIG5lb24gJiYgc29mdF9l
bmFibGUgbmVvbl9hc20KKyAgICAgICAgICAjIElmIHNvbWVvbmUgdHJpZXMgdG8gZm9yY2UgaXQg
dGhyb3VnaCwgZGllLgorICAgICAgICAgIGlmIGRpc2FibGVkIG5lb24gJiYgZW5hYmxlZCBuZW9u
X2FzbTsgdGhlbgorICAgICAgICAgICAgZGllICJEaXNhYmxpbmcgbmVvbiB3aGlsZSBrZWVwaW5n
IG5lb24tYXNtIGlzIG5vdCBzdXBwb3J0ZWQiCisgICAgICAgICAgZmkKKyAgICAgICAgICA7Owor
ICAgICAgZXNhYworCisgICAgICBhc21fY29udmVyc2lvbl9jbWQ9ImNhdCIKKworICAgICAgY2Fz
ZSAke3RndF9jY30gaW4KKyAgICAgICAgZ2NjKQorICAgICAgICAgIGxpbmtfd2l0aF9jYz1nY2MK
KyAgICAgICAgICBzZXR1cF9nbnVfdG9vbGNoYWluCisgICAgICAgICAgYXJjaF9pbnQ9JHt0Z3Rf
aXNhIyNhcm12fQorICAgICAgICAgIGFyY2hfaW50PSR7YXJjaF9pbnQlJXRlfQorICAgICAgICAg
IHR1bmVfY2ZsYWdzPSItbXR1bmU9IgorICAgICAgICAgIGlmIFsgJHt0Z3RfaXNhfSA9ICJhcm12
NyIgXSB8fCBbICR7dGd0X2lzYX0gPSAiYXJtdjdzIiBdOyB0aGVuCisgICAgICAgICAgICBpZiBb
IC16ICIke2Zsb2F0X2FiaX0iIF07IHRoZW4KKyAgICAgICAgICAgICAgY2hlY2tfY3BwIDw8RU9G
ICYmIGZsb2F0X2FiaT1oYXJkIHx8IGZsb2F0X2FiaT1zb2Z0ZnAKKyNpZm5kZWYgX19BUk1fUENT
X1ZGUAorI2Vycm9yICJub3QgaGFyZGZwIgorI2VuZGlmCitFT0YKKyAgICAgICAgICAgIGZpCisg
ICAgICAgICAgICBjaGVja19hZGRfY2ZsYWdzICAtbWFyY2g9YXJtdjctYSAtbWZsb2F0LWFiaT0k
e2Zsb2F0X2FiaX0KKyAgICAgICAgICAgIGNoZWNrX2FkZF9hc2ZsYWdzIC1tYXJjaD1hcm12Ny1h
IC1tZmxvYXQtYWJpPSR7ZmxvYXRfYWJpfQorCisgICAgICAgICAgICBpZiBlbmFibGVkIG5lb24g
fHwgZW5hYmxlZCBuZW9uX2FzbTsgdGhlbgorICAgICAgICAgICAgICBjaGVja19hZGRfY2ZsYWdz
IC1tZnB1PW5lb24gIy1mdHJlZS12ZWN0b3JpemUKKyAgICAgICAgICAgICAgY2hlY2tfYWRkX2Fz
ZmxhZ3MgLW1mcHU9bmVvbgorICAgICAgICAgICAgZmkKKyAgICAgICAgICBlbGlmIFsgJHt0Z3Rf
aXNhfSA9ICJhcm02NCIgXSB8fCBbICR7dGd0X2lzYX0gPSAiYXJtdjgiIF07IHRoZW4KKyAgICAg
ICAgICAgIGNoZWNrX2FkZF9jZmxhZ3MgLW1hcmNoPWFybXY4LWEKKyAgICAgICAgICAgIGNoZWNr
X2FkZF9hc2ZsYWdzIC1tYXJjaD1hcm12OC1hCisgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
Y2hlY2tfYWRkX2NmbGFncyAtbWFyY2g9JHt0Z3RfaXNhfQorICAgICAgICAgICAgY2hlY2tfYWRk
X2FzZmxhZ3MgLW1hcmNoPSR7dGd0X2lzYX0KKyAgICAgICAgICBmaQorCisgICAgICAgICAgZW5h
YmxlZCBkZWJ1ZyAmJiBhZGRfYXNmbGFncyAtZworICAgICAgICAgIGFzbV9jb252ZXJzaW9uX2Nt
ZD0iJHtzb3VyY2VfcGF0aF9ta30vYnVpbGQvbWFrZS9hZHMyZ2FzLnBsIgorCisgICAgICAgICAg
Y2FzZSAke3RndF9vc30gaW4KKyAgICAgICAgICAgIHdpbiopCisgICAgICAgICAgICAgIGFzbV9j
b252ZXJzaW9uX2NtZD0iJGFzbV9jb252ZXJzaW9uX2NtZCAtbm9lbGYiCisgICAgICAgICAgICAg
IEFTPSIkQ0MgLWMiCisgICAgICAgICAgICAgIEVYRV9TRlg9LmV4ZQorICAgICAgICAgICAgICBl
bmFibGVfZmVhdHVyZSB0aHVtYgorICAgICAgICAgICAgICA7OworICAgICAgICAgIGVzYWMKKwor
ICAgICAgICAgIGlmIGVuYWJsZWQgdGh1bWI7IHRoZW4KKyAgICAgICAgICAgIGFzbV9jb252ZXJz
aW9uX2NtZD0iJGFzbV9jb252ZXJzaW9uX2NtZCAtdGh1bWIiCisgICAgICAgICAgICBjaGVja19h
ZGRfY2ZsYWdzIC1tdGh1bWIKKyAgICAgICAgICAgIGNoZWNrX2FkZF9hc2ZsYWdzIC1tdGh1bWIg
LW1pbXBsaWNpdC1pdD1hbHdheXMKKyAgICAgICAgICBmaQorICAgICAgICAgIDs7CisgICAgICAg
IHZzKikKKyAgICAgICAgICAjIEEgbnVtYmVyIG9mIEFSTS1iYXNlZCBXaW5kb3dzIHBsYXRmb3Jt
cyBhcmUgY29uc3RyYWluZWQgYnkgdGhlaXIKKyAgICAgICAgICAjIHJlc3BlY3RpdmUgU0RLcycg
bGltaXRhdGlvbnMuIEZvcnR1bmF0ZWx5LCB0aGVzZSBhcmUgYWxsIDMyLWJpdCBBQklzCisgICAg
ICAgICAgIyBhbmQgc28gY2FuIGJlIHNlbGVjdGVkIGFzICd3aW4zMicuCisgICAgICAgICAgaWYg
WyAke3RndF9vc30gPSAid2luMzIiIF07IHRoZW4KKyAgICAgICAgICAgIGFzbV9jb252ZXJzaW9u
X2NtZD0iJHtzb3VyY2VfcGF0aF9ta30vYnVpbGQvbWFrZS9hZHMyYXJtYXNtX21zLnBsIgorICAg
ICAgICAgICAgQVNfU0ZYPS5TCisgICAgICAgICAgICBtc3ZzX2FyY2hfZGlyPWFybS1tc3ZzCisg
ICAgICAgICAgICBkaXNhYmxlX2ZlYXR1cmUgbXVsdGl0aHJlYWQKKyAgICAgICAgICAgIGRpc2Fi
bGVfZmVhdHVyZSB1bml0X3Rlc3RzCisgICAgICAgICAgICBpZiBbICR7dGd0X2NjIyN2c30gLWdl
IDEyIF07IHRoZW4KKyAgICAgICAgICAgICAgIyBNU1ZDIDIwMTMgZG9lc24ndCBhbGxvdyBkb2lu
ZyBwbGFpbiAuZXhlIHByb2plY3RzIGZvciBBUk0zMiwKKyAgICAgICAgICAgICAgIyBvbmx5ICJB
cHBDb250YWluZXJBcHBsaWNhdGlvbiIgd2hpY2ggcmVxdWlyZXMgYW4gQXBweE1hbmlmZXN0Lgor
ICAgICAgICAgICAgICAjIFRoZXJlZm9yZSBkaXNhYmxlIHRoZSBleGFtcGxlcywganVzdCBidWls
ZCB0aGUgbGlicmFyeS4KKyAgICAgICAgICAgICAgZGlzYWJsZV9mZWF0dXJlIGV4YW1wbGVzCisg
ICAgICAgICAgICAgIGRpc2FibGVfZmVhdHVyZSB0b29scworICAgICAgICAgICAgZmkKKyAgICAg
ICAgICBlbHNlCisgICAgICAgICAgICAjIFdpbmRvd3MgMTAgb24gQVJNLCBvbiB0aGUgb3RoZXIg
aGFuZCwgaGFzIGZ1bGwgV2luZG93cyBTREsgc3VwcG9ydAorICAgICAgICAgICAgIyBmb3IgYnVp
bGRpbmcgV2luMzIgQVJNNjQgYXBwbGljYXRpb25zIGluIGFkZGl0aW9uIHRvIEFSTTY0CisgICAg
ICAgICAgICAjIFdpbmRvd3MgU3RvcmUgYXBwcy4gSXQgaXMgdGhlIG9ubHkgNjQtYml0IEFSTSBB
QkkgdGhhdAorICAgICAgICAgICAgIyBXaW5kb3dzIHN1cHBvcnRzLCBzbyBpdCBpcyB0aGUgZGVm
YXVsdCBkZWZpbml0aW9uIG9mICd3aW42NCcuCisgICAgICAgICAgICAjIEFSTTY0IGJ1aWxkIHN1
cHBvcnQgb2ZmaWNpYWxseSBzaGlwcGVkIGluIFZpc3VhbCBTdHVkaW8gMTUuOS4wLgorCisgICAg
ICAgICAgICAjIEJlY2F1c2UgdGhlIEFSTTY0IFdpbmRvd3MgU0RLJ3MgYXJtX25lb24uaCBpcyBB
Uk0zMi1zcGVjaWZpYworICAgICAgICAgICAgIyB3aGlsZSBMTFZNJ3MgaXMgbm90LCBwcm9iZSBp
dHMgdmFsaWRpdHkuCisgICAgICAgICAgICBpZiBlbmFibGVkIG5lb247IHRoZW4KKyAgICAgICAg
ICAgICAgaWYgWyAtbiAiJHtDQ30iIF07IHRoZW4KKyAgICAgICAgICAgICAgICBjaGVja19oZWFk
ZXIgYXJtX25lb24uaCB8fCBjaGVja19oZWFkZXIgYXJtNjRfbmVvbi5oICYmIFwKKyAgICAgICAg
ICAgICAgICAgICAgZW5hYmxlX2ZlYXR1cmUgd2luX2FybTY0X25lb25faF93b3JrYXJvdW5kCisg
ICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAjIElmIGEgcHJvYmUgaXMgbm90IHBv
c3NpYmxlLCBhc3N1bWUgdGhpcyBpcyB0aGUgcHVyZSBXaW5kb3dzCisgICAgICAgICAgICAgICAg
IyBTREsgYW5kIHNvIHRoZSB3b3JrYXJvdW5kIGlzIG5lY2Vzc2FyeS4KKyAgICAgICAgICAgICAg
ICBlbmFibGVfZmVhdHVyZSB3aW5fYXJtNjRfbmVvbl9oX3dvcmthcm91bmQKKyAgICAgICAgICAg
ICAgZmkKKyAgICAgICAgICAgIGZpCisgICAgICAgICAgZmkKKyAgICAgICAgICA7OworICAgICAg
ICBydmN0KQorICAgICAgICAgIENDPWFybWNjCisgICAgICAgICAgQVI9YXJtYXIKKyAgICAgICAg
ICBBUz1hcm1hc20KKyAgICAgICAgICBMRD0iJHtzb3VyY2VfcGF0aH0vYnVpbGQvbWFrZS9hcm1s
aW5rX2FkYXB0ZXIuc2giCisgICAgICAgICAgU1RSSVA9YXJtLW5vbmUtbGludXgtZ251ZWFiaS1z
dHJpcAorICAgICAgICAgIE5NPWFybS1ub25lLWxpbnV4LWdudWVhYmktbm0KKyAgICAgICAgICB0
dW5lX2NmbGFncz0iLS1jcHU9IgorICAgICAgICAgIHR1bmVfYXNmbGFncz0iLS1jcHU9IgorICAg
ICAgICAgIGlmIFsgLXogIiR7dHVuZV9jcHV9IiBdOyB0aGVuCisgICAgICAgICAgICBpZiBbICR7
dGd0X2lzYX0gPSAiYXJtdjciIF07IHRoZW4KKyAgICAgICAgICAgICAgaWYgZW5hYmxlZCBuZW9u
IHx8IGVuYWJsZWQgbmVvbl9hc20KKyAgICAgICAgICAgICAgdGhlbgorICAgICAgICAgICAgICAg
IGNoZWNrX2FkZF9jZmxhZ3MgLS1mcHU9c29mdHZmcCt2ZnB2MworICAgICAgICAgICAgICAgIGNo
ZWNrX2FkZF9hc2ZsYWdzIC0tZnB1PXNvZnR2ZnArdmZwdjMKKyAgICAgICAgICAgICAgZmkKKyAg
ICAgICAgICAgICAgY2hlY2tfYWRkX2NmbGFncyAtLWNwdT1Db3J0ZXgtQTgKKyAgICAgICAgICAg
ICAgY2hlY2tfYWRkX2FzZmxhZ3MgLS1jcHU9Q29ydGV4LUE4CisgICAgICAgICAgICBlbHNlCisg
ICAgICAgICAgICAgIGNoZWNrX2FkZF9jZmxhZ3MgLS1jcHU9JHt0Z3RfaXNhIyNhcm12fQorICAg
ICAgICAgICAgICBjaGVja19hZGRfYXNmbGFncyAtLWNwdT0ke3RndF9pc2EjI2FybXZ9CisgICAg
ICAgICAgICBmaQorICAgICAgICAgIGZpCisgICAgICAgICAgYXJjaF9pbnQ9JHt0Z3RfaXNhIyNh
cm12fQorICAgICAgICAgIGFyY2hfaW50PSR7YXJjaF9pbnQlJXRlfQorICAgICAgICAgIGVuYWJs
ZWQgZGVidWcgJiYgYWRkX2FzZmxhZ3MgLWcKKyAgICAgICAgICBhZGRfY2ZsYWdzIC0tZ251Cisg
ICAgICAgICAgYWRkX2NmbGFncyAtLWVudW1faXNfaW50CisgICAgICAgICAgYWRkX2NmbGFncyAt
LXdjaGFyMzIKKyAgICAgICAgICA7OworICAgICAgZXNhYworCisgICAgICBjYXNlICR7dGd0X29z
fSBpbgorICAgICAgICBub25lKikKKyAgICAgICAgICBkaXNhYmxlX2ZlYXR1cmUgbXVsdGl0aHJl
YWQKKyAgICAgICAgICBkaXNhYmxlX2ZlYXR1cmUgb3Nfc3VwcG9ydAorICAgICAgICAgIDs7CisK
KyAgICAgICAgYW5kcm9pZCopCisgICAgICAgICAgZWNobyAiQXNzdW1pbmcgc3RhbmRhbG9uZSBi
dWlsZCB3aXRoIE5ESyB0b29sY2hhaW4uIgorICAgICAgICAgIGVjaG8gIlNlZSBidWlsZC9tYWtl
L0FuZHJvaWQubWsgZm9yIGRldGFpbHMuIgorICAgICAgICAgIGNoZWNrX2FkZF9sZGZsYWdzIC1z
dGF0aWMKKyAgICAgICAgICBzb2Z0X2VuYWJsZSB1bml0X3Rlc3RzCisgICAgICAgICAgOzsKKwor
ICAgICAgICBkYXJ3aW4pCisgICAgICAgICAgaWYgISBlbmFibGVkIGV4dGVybmFsX2J1aWxkOyB0
aGVuCisgICAgICAgICAgICBYQ1JVTl9GSU5EPSJ4Y3J1biAtLXNkayBpcGhvbmVvcyAtLWZpbmQi
CisgICAgICAgICAgICBDWFg9IiQoJHtYQ1JVTl9GSU5EfSBjbGFuZysrKSIKKyAgICAgICAgICAg
IENDPSIkKCR7WENSVU5fRklORH0gY2xhbmcpIgorICAgICAgICAgICAgQVI9IiQoJHtYQ1JVTl9G
SU5EfSBhcikiCisgICAgICAgICAgICBBUz0iJCgke1hDUlVOX0ZJTkR9IGFzKSIKKyAgICAgICAg
ICAgIFNUUklQPSIkKCR7WENSVU5fRklORH0gc3RyaXApIgorICAgICAgICAgICAgTk09IiQoJHtY
Q1JVTl9GSU5EfSBubSkiCisgICAgICAgICAgICBSQU5MSUI9IiQoJHtYQ1JVTl9GSU5EfSByYW5s
aWIpIgorICAgICAgICAgICAgQVNfU0ZYPS5TCisgICAgICAgICAgICBMRD0iJHtDWFg6LSQoJHtY
Q1JVTl9GSU5EfSBsZCl9IgorCisgICAgICAgICAgICAjIEFTRkxBR1MgaXMgd3JpdHRlbiBoZXJl
IGluc3RlYWQgb2YgdXNpbmcgY2hlY2tfYWRkX2FzZmxhZ3MKKyAgICAgICAgICAgICMgYmVjYXVz
ZSB3ZSBuZWVkIHRvIG92ZXJ3cml0ZSBhbGwgb2YgQVNGTEFHUyBhbmQgcHVyZ2UgdGhlCisgICAg
ICAgICAgICAjIG9wdGlvbnMgdGhhdCB3ZXJlIHB1dCBpbiBhYm92ZQorICAgICAgICAgICAgQVNG
TEFHUz0iLWFyY2ggJHt0Z3RfaXNhfSAtZyIKKworICAgICAgICAgICAgYWRkX2NmbGFncyAtYXJj
aCAke3RndF9pc2F9CisgICAgICAgICAgICBhZGRfbGRmbGFncyAtYXJjaCAke3RndF9pc2F9CisK
KyAgICAgICAgICAgIGFsdF9saWJjPSIkKHNob3dfZGFyd2luX3Nka19wYXRoIGlwaG9uZW9zKSIK
KyAgICAgICAgICAgIGlmIFsgLWQgIiR7YWx0X2xpYmN9IiBdOyB0aGVuCisgICAgICAgICAgICAg
IGFkZF9jZmxhZ3MgLWlzeXNyb290ICR7YWx0X2xpYmN9CisgICAgICAgICAgICBmaQorCisgICAg
ICAgICAgICBpZiBbICIke0xEfSIgPSAiJHtDWFh9IiBdOyB0aGVuCisgICAgICAgICAgICAgIGFk
ZF9sZGZsYWdzIC1taXBob25lb3MtdmVyc2lvbi1taW49IiR7SU9TX1ZFUlNJT05fTUlOfSIKKyAg
ICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgYWRkX2xkZmxhZ3MgLWlvc192ZXJzaW9uX21p
biAiJHtJT1NfVkVSU0lPTl9NSU59IgorICAgICAgICAgICAgZmkKKworICAgICAgICAgICAgZm9y
IGQgaW4gbGliIHVzci9saWIgdXNyL2xpYi9zeXN0ZW07IGRvCisgICAgICAgICAgICAgIHRyeV9k
aXI9IiR7YWx0X2xpYmN9LyR7ZH0iCisgICAgICAgICAgICAgIFsgLWQgIiR7dHJ5X2Rpcn0iIF0g
JiYgYWRkX2xkZmxhZ3MgLUwiJHt0cnlfZGlyfSIKKyAgICAgICAgICAgIGRvbmUKKworICAgICAg
ICAgICAgY2FzZSAke3RndF9pc2F9IGluCisgICAgICAgICAgICAgIGFybXY3fGFybXY3c3xhcm12
OHxhcm02NCkKKyAgICAgICAgICAgICAgICBpZiBlbmFibGVkIG5lb24gJiYgISBjaGVja194Y29k
ZV9taW5pbXVtX3ZlcnNpb247IHRoZW4KKyAgICAgICAgICAgICAgICAgIHNvZnRfZGlzYWJsZSBu
ZW9uCisgICAgICAgICAgICAgICAgICBsb2dfZWNobyAiICBuZW9uIGRpc2FibGVkOiB1cGdyYWRl
IFhjb2RlIChuZWVkIHY2LjMrKS4iCisgICAgICAgICAgICAgICAgICBpZiBlbmFibGVkIG5lb25f
YXNtOyB0aGVuCisgICAgICAgICAgICAgICAgICAgIHNvZnRfZGlzYWJsZSBuZW9uX2FzbQorICAg
ICAgICAgICAgICAgICAgICBsb2dfZWNobyAiICBuZW9uX2FzbSBkaXNhYmxlZDogdXBncmFkZSBY
Y29kZSAobmVlZCB2Ni4zKykuIgorICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAg
ICBmaQorICAgICAgICAgICAgICAgIDs7CisgICAgICAgICAgICBlc2FjCisKKyAgICAgICAgICAg
IGlmIFsgIiQoc2hvd19kYXJ3aW5fc2RrX21ham9yX3ZlcnNpb24gaXBob25lb3MpIiAtZ3QgOCBd
OyB0aGVuCisgICAgICAgICAgICAgIGNoZWNrX2FkZF9jZmxhZ3MgLWZlbWJlZC1iaXRjb2RlCisg
ICAgICAgICAgICAgIGNoZWNrX2FkZF9hc2ZsYWdzIC1mZW1iZWQtYml0Y29kZQorICAgICAgICAg
ICAgICBjaGVja19hZGRfbGRmbGFncyAtZmVtYmVkLWJpdGNvZGUKKyAgICAgICAgICAgIGZpCisg
ICAgICAgICAgZmkKKworICAgICAgICAgIGFzbV9jb252ZXJzaW9uX2NtZD0iJHtzb3VyY2VfcGF0
aF9ta30vYnVpbGQvbWFrZS9hZHMyZ2FzX2FwcGxlLnBsIgorICAgICAgICAgIDs7CisKKyAgICAg
ICAgbGludXgqKQorICAgICAgICAgIGVuYWJsZV9mZWF0dXJlIGxpbnV4CisgICAgICAgICAgaWYg
ZW5hYmxlZCBydmN0OyB0aGVuCisgICAgICAgICAgICAjIENoZWNrIGlmIHdlIGhhdmUgQ29kZVNv
dXJjZXJ5IEdDQyBpbiBQQVRILiBOZWVkZWQgZm9yCisgICAgICAgICAgICAjIGxpYnJhcmllcwor
ICAgICAgICAgICAgd2hpY2ggYXJtLW5vbmUtbGludXgtZ251ZWFiaS1nY2MgMj4mLSB8fCBcCisg
ICAgICAgICAgICAgIGRpZSAiQ291bGRuJ3QgZmluZCBDb2RlU291cmNlcnkgR0NDIGZyb20gUEFU
SCIKKworICAgICAgICAgICAgIyBVc2UgYXJtY2MgYXMgYSBsaW5rZXIgdG8gZW5hYmxlIHRyYW5z
bGF0aW9uIG9mCisgICAgICAgICAgICAjIHNvbWUgZ2NjIHNwZWNpZmljIG9wdGlvbnMgc3VjaCBh
cyAtbG0gYW5kIC1scHRocmVhZC4KKyAgICAgICAgICAgIExEPSJhcm1jYyAtLXRyYW5zbGF0ZV9n
Y2MiCisKKyAgICAgICAgICAgICMgY3JlYXRlIGNvbmZpZ3VyYXRpb24gZmlsZSAodXNlcyBwYXRo
IHRvIENvZGVTb3VyY2VyeSBHQ0MpCisgICAgICAgICAgICBhcm1jYyAtLWFybV9saW51eF9jb25m
aWd1cmUgLS1hcm1fbGludXhfY29uZmlnX2ZpbGU9YXJtX2xpbnV4LmNmZworCisgICAgICAgICAg
ICBhZGRfY2ZsYWdzIC0tYXJtX2xpbnV4X3BhdGhzIC0tYXJtX2xpbnV4X2NvbmZpZ19maWxlPWFy
bV9saW51eC5jZmcKKyAgICAgICAgICAgIGFkZF9hc2ZsYWdzIC0tbm9faGlkZV9hbGwgLS1hcGNz
PS9pbnRlcndvcmsKKyAgICAgICAgICAgIGFkZF9sZGZsYWdzIC0tYXJtX2xpbnV4X3BhdGhzIC0t
YXJtX2xpbnV4X2NvbmZpZ19maWxlPWFybV9saW51eC5jZmcKKyAgICAgICAgICAgIGVuYWJsZWQg
cGljICYmIGFkZF9jZmxhZ3MgLS1hcGNzPS9mcGljCisgICAgICAgICAgICBlbmFibGVkIHBpYyAm
JiBhZGRfYXNmbGFncyAtLWFwY3M9L2ZwaWMKKyAgICAgICAgICAgIGVuYWJsZWQgc2hhcmVkICYm
IGFkZF9jZmxhZ3MgLS1zaGFyZWQKKyAgICAgICAgICBmaQorICAgICAgICAgIDs7CisgICAgICBl
c2FjCisgICAgICA7OworICAgIG1pcHMqKQorICAgICAgbGlua193aXRoX2NjPWdjYworICAgICAg
c2V0dXBfZ251X3Rvb2xjaGFpbgorICAgICAgdHVuZV9jZmxhZ3M9Ii1tdHVuZT0iCisgICAgICBp
ZiBlbmFibGVkIGRzcHIyOyB0aGVuCisgICAgICAgIGNoZWNrX2FkZF9jZmxhZ3MgLW1pcHMzMnIy
IC1tZHNwcjIKKyAgICAgIGZpCisKKyAgICAgIGlmIGVuYWJsZWQgcnVudGltZV9jcHVfZGV0ZWN0
OyB0aGVuCisgICAgICAgIGRpc2FibGVfZmVhdHVyZSBydW50aW1lX2NwdV9kZXRlY3QKKyAgICAg
IGZpCisKKyAgICAgIGlmIFsgLW4gIiR7dHVuZV9jcHV9IiBdOyB0aGVuCisgICAgICAgIGNhc2Ug
JHt0dW5lX2NwdX0gaW4KKyAgICAgICAgICBwNTYwMCkKKyAgICAgICAgICAgIGNoZWNrX2FkZF9j
ZmxhZ3MgLW1pcHMzMnI1IC1tbG9hZC1zdG9yZS1wYWlycworICAgICAgICAgICAgY2hlY2tfYWRk
X2NmbGFncyAtbXNjaGVkLXdlaWdodCAtbWhhcmQtZmxvYXQgLW1mcDY0CisgICAgICAgICAgICBj
aGVja19hZGRfYXNmbGFncyAtbWlwczMycjUgLW1oYXJkLWZsb2F0IC1tZnA2NAorICAgICAgICAg
ICAgY2hlY2tfYWRkX2xkZmxhZ3MgLW1mcDY0CisgICAgICAgICAgICA7OworICAgICAgICAgIGk2
NDAwfHA2NjAwKQorICAgICAgICAgICAgY2hlY2tfYWRkX2NmbGFncyAtbWlwczY0cjYgLW1hYmk9
NjQgLW1zY2hlZC13ZWlnaHQKKyAgICAgICAgICAgIGNoZWNrX2FkZF9jZmxhZ3MgIC1tbG9hZC1z
dG9yZS1wYWlycyAtbWhhcmQtZmxvYXQgLW1mcDY0CisgICAgICAgICAgICBjaGVja19hZGRfYXNm
bGFncyAtbWlwczY0cjYgLW1hYmk9NjQgLW1oYXJkLWZsb2F0IC1tZnA2NAorICAgICAgICAgICAg
Y2hlY2tfYWRkX2xkZmxhZ3MgLW1pcHM2NHI2IC1tYWJpPTY0IC1tZnA2NAorICAgICAgICAgICAg
OzsKKyAgICAgICAgICBsb29uZ3NvbjMqKQorICAgICAgICAgICAgY2hlY2tfY2ZsYWdzIC1tYXJj
aD1sb29uZ3NvbjNhICYmIHNvZnRfZW5hYmxlIG1taSBcCisgICAgICAgICAgICAgIHx8IGRpc2Fi
bGVfZmVhdHVyZSBtbWkKKyAgICAgICAgICAgIGNoZWNrX2NmbGFncyAtbW1zYSAmJiBzb2Z0X2Vu
YWJsZSBtc2EgXAorICAgICAgICAgICAgICB8fCBkaXNhYmxlX2ZlYXR1cmUgbXNhCisgICAgICAg
ICAgICB0Z3RfaXNhPWxvb25nc29uM2EKKyAgICAgICAgICAgIDs7CisgICAgICAgIGVzYWMKKwor
ICAgICAgICBpZiBlbmFibGVkIG1taSB8fCBlbmFibGVkIG1zYTsgdGhlbgorICAgICAgICAgIHNv
ZnRfZW5hYmxlIHJ1bnRpbWVfY3B1X2RldGVjdAorICAgICAgICBmaQorCisgICAgICAgIGlmIGVu
YWJsZWQgbXNhOyB0aGVuCisgICAgICAgICAgIyBUT0RPKGxpYnl1djo3OTMpCisgICAgICAgICAg
IyBUaGUgbmV3IG1pcHMgZnVuY3Rpb25zIGluIGxpYnl1diBkbyBub3QgYnVpbGQKKyAgICAgICAg
ICAjIHdpdGggdGhlIHRvb2xjaGFpbnMgd2UgY3VycmVudGx5IHVzZSBmb3IgdGVzdGluZy4KKyAg
ICAgICAgICBzb2Z0X2Rpc2FibGUgbGlieXV2CisgICAgICAgIGZpCisgICAgICBmaQorCisgICAg
ICBjaGVja19hZGRfY2ZsYWdzIC1tYXJjaD0ke3RndF9pc2F9CisgICAgICBjaGVja19hZGRfYXNm
bGFncyAtbWFyY2g9JHt0Z3RfaXNhfQorICAgICAgY2hlY2tfYWRkX2FzZmxhZ3MgLUtQSUMKKyAg
ICAgIDs7CisgICAgcHBjNjRsZSopCisgICAgICBsaW5rX3dpdGhfY2M9Z2NjCisgICAgICBzZXR1
cF9nbnVfdG9vbGNoYWluCisgICAgICAjIERvIG5vdCBlbmFibGUgdnN4IGJ5IGRlZmF1bHQuCisg
ICAgICAjIGh0dHBzOi8vYnVncy5jaHJvbWl1bS5vcmcvcC93ZWJtL2lzc3Vlcy9kZXRhaWw/aWQ9
MTUyMgorICAgICAgZW5hYmxlZCB2c3ggfHwgUlRDRF9PUFRJT05TPSIke1JUQ0RfT1BUSU9OU30t
LWRpc2FibGUtdnN4ICIKKyAgICAgIGlmIFsgLW4gIiR7dHVuZV9jcHV9IiBdOyB0aGVuCisgICAg
ICAgIGNhc2UgJHt0dW5lX2NwdX0gaW4KKyAgICAgICAgICBwb3dlcj8pCisgICAgICAgICAgICB0
dW5lX2NmbGFncz0iLW1jcHU9IgorICAgICAgICAgICAgOzsKKyAgICAgICAgZXNhYworICAgICAg
ZmkKKyAgICAgIDs7CisgICAgeDg2KikKKyAgICAgIGNhc2UgICR7dGd0X29zfSBpbgorICAgICAg
ICBhbmRyb2lkKQorICAgICAgICAgIHNvZnRfZW5hYmxlIHJlYWx0aW1lX29ubHkKKyAgICAgICAg
ICA7OworICAgICAgICB3aW4qKQorICAgICAgICAgIGVuYWJsZWQgZ2NjICYmIGFkZF9jZmxhZ3Mg
LWZuby1jb21tb24KKyAgICAgICAgICA7OworICAgICAgICBzb2xhcmlzKikKKyAgICAgICAgICBD
Qz0ke0NDOi0ke0NST1NTfWdjY30KKyAgICAgICAgICBDWFg9JHtDWFg6LSR7Q1JPU1N9ZysrfQor
ICAgICAgICAgIExEPSR7TEQ6LSR7Q1JPU1N9Z2NjfQorICAgICAgICAgIENST1NTPSR7Q1JPU1Mt
Z30KKyAgICAgICAgICA7OworICAgICAgICBvczIpCisgICAgICAgICAgZGlzYWJsZV9mZWF0dXJl
IHBpYworICAgICAgICAgIEFTPSR7QVM6LW5hc219CisgICAgICAgICAgYWRkX2xkZmxhZ3MgLVpo
aWdoLW1lbQorICAgICAgICAgIDs7CisgICAgICBlc2FjCisKKyAgICAgIEFTPSIke2FsdF9hczot
JHtBUzotYXV0b319IgorICAgICAgY2FzZSAgJHt0Z3RfY2N9IGluCisgICAgICAgIGljYyopCisg
ICAgICAgICAgQ0M9JHtDQzotaWNjfQorICAgICAgICAgIExEPSR7TEQ6LWljY30KKyAgICAgICAg
ICBzZXR1cF9nbnVfdG9vbGNoYWluCisgICAgICAgICAgYWRkX2NmbGFncyAtdXNlLW1zYXNtICAj
IHJlbW92ZSAtdXNlLW1zYXNtIHRvbz8KKyAgICAgICAgICAjIGFkZCAtbm8taW50ZWwtZXh0ZW5z
aW9ucyB0byBzdXBwcmVzcyB3YXJuaW5nICMxMDIzNworICAgICAgICAgICMgcmVmZXIgdG8gaHR0
cDovL3NvZnR3YXJlLmludGVsLmNvbS9lbi11cy9mb3J1bXMvdG9waWMvMjgwMTk5CisgICAgICAg
ICAgYWRkX2xkZmxhZ3MgLWktc3RhdGljIC1uby1pbnRlbC1leHRlbnNpb25zCisgICAgICAgICAg
ZW5hYmxlZCB4ODZfNjQgJiYgYWRkX2NmbGFncyAtaXBvIC1zdGF0aWMgLU8zIC1uby1wcmVjLWRp
dgorICAgICAgICAgIGVuYWJsZWQgeDg2XzY0ICYmIEFSPXhpYXIKKyAgICAgICAgICBjYXNlICR7
dHVuZV9jcHV9IGluCisgICAgICAgICAgICBhdG9tKikKKyAgICAgICAgICAgICAgdHVuZV9jZmxh
Z3M9Ii14IgorICAgICAgICAgICAgICB0dW5lX2NwdT0iU1NFM19BVE9NIgorICAgICAgICAgICAg
ICA7OworICAgICAgICAgICAgKikKKyAgICAgICAgICAgICAgdHVuZV9jZmxhZ3M9Ii1tYXJjaD0i
CisgICAgICAgICAgICAgIDs7CisgICAgICAgICAgZXNhYworICAgICAgICAgIDs7CisgICAgICAg
IGdjYyopCisgICAgICAgICAgbGlua193aXRoX2NjPWdjYworICAgICAgICAgIHR1bmVfY2ZsYWdz
PSItbWFyY2g9IgorICAgICAgICAgIHNldHVwX2dudV90b29sY2hhaW4KKyAgICAgICAgICAjZm9y
IDMyIGJpdCB4ODYgYnVpbGRzLCAtTzMgZGlkIG5vdCB0dXJuIG9uIHRoaXMgZmxhZworICAgICAg
ICAgIGVuYWJsZWQgb3B0aW1pemF0aW9ucyAmJiBkaXNhYmxlZCBncHJvZiAmJiBjaGVja19hZGRf
Y2ZsYWdzIC1mb21pdC1mcmFtZS1wb2ludGVyCisgICAgICAgICAgOzsKKyAgICAgICAgdnMqKQor
ICAgICAgICAgICMgV2hlbiBidWlsZGluZyB3aXRoIE1pY3Jvc29mdCBWaXN1YWwgU3R1ZGlvIHRo
ZSBhc3NlbWJsZXIgaXMKKyAgICAgICAgICAjIGludm9rZWQgZGlyZWN0bHkuIENoZWNraW5nIGF0
IGNvbmZpZ3VyZSB0aW1lIGlzIHVubmVjZXNzYXJ5LgorICAgICAgICAgICMgU2tpcCB0aGUgY2hl
Y2sgYnkgc2V0dGluZyBBUyBhcmJpdHJhcmlseQorICAgICAgICAgIEFTPW1zdnMKKyAgICAgICAg
ICBtc3ZzX2FyY2hfZGlyPXg4Ni1tc3ZzCisgICAgICAgICAgY2FzZSAke3RndF9jYyMjdnN9IGlu
CisgICAgICAgICAgICAxNCkKKyAgICAgICAgICAgICAgZWNobyAiJHt0Z3RfY2N9IGRvZXMgbm90
IHN1cHBvcnQgYXZ4NTEyLCBkaXNhYmxpbmcuLi4uLiIKKyAgICAgICAgICAgICAgUlRDRF9PUFRJ
T05TPSIke1JUQ0RfT1BUSU9OU30tLWRpc2FibGUtYXZ4NTEyICIKKyAgICAgICAgICAgICAgc29m
dF9kaXNhYmxlIGF2eDUxMgorICAgICAgICAgICAgICA7OworICAgICAgICAgIGVzYWMKKyAgICAg
ICAgICA7OworICAgICAgZXNhYworCisgICAgICBiaXRzPTMyCisgICAgICBlbmFibGVkIHg4Nl82
NCAmJiBiaXRzPTY0CisgICAgICBjaGVja19jcHAgPDxFT0YgJiYgYml0cz14MzIKKyNpZiAhZGVm
aW5lZChfX0lMUDMyX18pIHx8ICFkZWZpbmVkKF9feDg2XzY0X18pCisjZXJyb3IgIm5vdCB4MzIi
CisjZW5kaWYKK0VPRgorICAgICAgY2FzZSAke3RndF9jY30gaW4KKyAgICAgICAgZ2NjKikKKyAg
ICAgICAgICBhZGRfY2ZsYWdzIC1tJHtiaXRzfQorICAgICAgICAgIGFkZF9sZGZsYWdzIC1tJHti
aXRzfQorICAgICAgICAgIDs7CisgICAgICBlc2FjCisKKyAgICAgIHNvZnRfZW5hYmxlIHJ1bnRp
bWVfY3B1X2RldGVjdAorICAgICAgIyBXZSBjYW4ndCB1c2UgJ2NoZWNrX2NmbGFncycgdW50aWwg
dGhlIGNvbXBpbGVyIGlzIGNvbmZpZ3VyZWQgYW5kIENDIGlzCisgICAgICAjIHBvcHVsYXRlZC4K
KyAgICAgIGZvciBleHQgaW4gJHtBUkNIX0VYVF9MSVNUX1g4Nn07IGRvCisgICAgICAgICMgZGlz
YWJsZSBoaWdoZXIgb3JkZXIgZXh0ZW5zaW9ucyB0byBzaW1wbGlmeSBhc20gZGVwZW5kZW5jaWVz
CisgICAgICAgIGlmIFsgIiRkaXNhYmxlX2V4dHMiID0gInllcyIgXTsgdGhlbgorICAgICAgICAg
IGlmICEgZGlzYWJsZWQgJGV4dDsgdGhlbgorICAgICAgICAgICAgUlRDRF9PUFRJT05TPSIke1JU
Q0RfT1BUSU9OU30tLWRpc2FibGUtJHtleHR9ICIKKyAgICAgICAgICAgIGRpc2FibGVfZmVhdHVy
ZSAkZXh0CisgICAgICAgICAgZmkKKyAgICAgICAgZWxpZiBkaXNhYmxlZCAkZXh0OyB0aGVuCisg
ICAgICAgICAgZGlzYWJsZV9leHRzPSJ5ZXMiCisgICAgICAgIGVsc2UKKyAgICAgICAgICBpZiBb
ICIkZXh0IiA9ICJhdng1MTIiIF07IHRoZW4KKyAgICAgICAgICAgIGNoZWNrX2djY19tYWNoaW5l
X29wdGlvbnMgJGV4dCBhdng1MTJmIGF2eDUxMmNkIGF2eDUxMmJ3IGF2eDUxMmRxIGF2eDUxMnZs
CisgICAgICAgICAgICBjaGVja19nY2NfYXZ4NTEyX2NvbXBpbGVzCisgICAgICAgICAgZWxzZQor
ICAgICAgICAgICAgIyB1c2UgdGhlIHNob3J0ZW5lZCB2ZXJzaW9uIGZvciB0aGUgZmxhZzogc3Nl
NF8xIC0+IHNzZTQKKyAgICAgICAgICAgIGNoZWNrX2djY19tYWNoaW5lX29wdGlvbiAke2V4dCVf
Kn0gJGV4dAorICAgICAgICAgIGZpCisgICAgICAgIGZpCisgICAgICBkb25lCisKKyAgICAgIGlm
IGVuYWJsZWQgZXh0ZXJuYWxfYnVpbGQ7IHRoZW4KKyAgICAgICAgbG9nX2VjaG8gIiAgc2tpcHBp
bmcgYXNzZW1ibGVyIGRldGVjdGlvbiIKKyAgICAgIGVsc2UKKyAgICAgICAgY2FzZSAiJHtBU30i
IGluCisgICAgICAgICAgYXV0b3wiIikKKyAgICAgICAgICAgIHdoaWNoIG5hc20gPi9kZXYvbnVs
bCAyPiYxICYmIEFTPW5hc20KKyAgICAgICAgICAgIHdoaWNoIHlhc20gPi9kZXYvbnVsbCAyPiYx
ICYmIEFTPXlhc20KKyAgICAgICAgICAgIGlmIFsgIiR7QVN9IiA9IG5hc20gXSA7IHRoZW4KKyAg
ICAgICAgICAgICAgIyBBcHBsZSBzaGlwcyB2ZXJzaW9uIDAuOTggb2YgbmFzbSB0aHJvdWdoIGF0
IGxlYXN0IFhjb2RlIDYuIFJldmlzaXQKKyAgICAgICAgICAgICAgIyB0aGlzIGNoZWNrIGlmIHRo
ZXkgc3RhcnQgc2hpcHBpbmcgYSBjb21wYXRpYmxlIHZlcnNpb24uCisgICAgICAgICAgICAgIGFw
cGxlPWBuYXNtIC12IHwgZ3JlcCAiQXBwbGUiYAorICAgICAgICAgICAgICBbIC1uICIke2FwcGxl
fSIgXSBcCisgICAgICAgICAgICAgICAgJiYgZWNobyAiVW5zdXBwb3J0ZWQgdmVyc2lvbiBvZiBu
YXNtOiAke2FwcGxlfSIgXAorICAgICAgICAgICAgICAgICYmIEFTPSIiCisgICAgICAgICAgICBm
aQorICAgICAgICAgICAgWyAiJHtBU30iID0gYXV0byBdIHx8IFsgLXogIiR7QVN9IiBdIFwKKyAg
ICAgICAgICAgICAgJiYgZGllICJOZWl0aGVyIHlhc20gbm9yIG5hc20gaGF2ZSBiZWVuIGZvdW5k
LiIgXAorICAgICAgICAgICAgICAgICAgICAgIlNlZSB0aGUgcHJlcmVxdWlzaXRlcyBzZWN0aW9u
IGluIHRoZSBSRUFETUUgZm9yIG1vcmUgaW5mby4iCisgICAgICAgICAgICA7OworICAgICAgICBl
c2FjCisgICAgICAgIGxvZ19lY2hvICIgIHVzaW5nICRBUyIKKyAgICAgIGZpCisgICAgICBBU19T
Rlg9LmFzbQorICAgICAgY2FzZSAgJHt0Z3Rfb3N9IGluCisgICAgICAgIHdpbjMyKQorICAgICAg
ICAgIGFkZF9hc2ZsYWdzIC1mIHdpbjMyCisgICAgICAgICAgZW5hYmxlZCBkZWJ1ZyAmJiBhZGRf
YXNmbGFncyAtZyBjdjgKKyAgICAgICAgICBFWEVfU0ZYPS5leGUKKyAgICAgICAgICA7OworICAg
ICAgICB3aW42NCkKKyAgICAgICAgICBhZGRfYXNmbGFncyAtZiB3aW42NAorICAgICAgICAgIGVu
YWJsZWQgZGVidWcgJiYgYWRkX2FzZmxhZ3MgLWcgY3Y4CisgICAgICAgICAgRVhFX1NGWD0uZXhl
CisgICAgICAgICAgOzsKKyAgICAgICAgbGludXgqfHNvbGFyaXMqfGFuZHJvaWQqKQorICAgICAg
ICAgIGFkZF9hc2ZsYWdzIC1mIGVsZiR7Yml0c30KKyAgICAgICAgICBlbmFibGVkIGRlYnVnICYm
IFsgIiR7QVN9IiA9IHlhc20gXSAmJiBhZGRfYXNmbGFncyAtZyBkd2FyZjIKKyAgICAgICAgICBl
bmFibGVkIGRlYnVnICYmIFsgIiR7QVN9IiA9IG5hc20gXSAmJiBhZGRfYXNmbGFncyAtZworICAg
ICAgICAgIFsgIiR7QVMjIyovfSIgPSBuYXNtIF0gJiYgY2hlY2tfYXNtX2FsaWduCisgICAgICAg
ICAgOzsKKyAgICAgICAgZGFyd2luKikKKyAgICAgICAgICBhZGRfYXNmbGFncyAtZiBtYWNobyR7
Yml0c30KKyAgICAgICAgICBlbmFibGVkIHg4NiAmJiBkYXJ3aW5fYXJjaD0iLWFyY2ggaTM4NiIg
fHwgZGFyd2luX2FyY2g9Ii1hcmNoIHg4Nl82NCIKKyAgICAgICAgICBhZGRfY2ZsYWdzICAke2Rh
cndpbl9hcmNofQorICAgICAgICAgIGFkZF9sZGZsYWdzICR7ZGFyd2luX2FyY2h9CisgICAgICAg
ICAgIyAtbWR5bmFtaWMtbm8tcGljIGlzIHN0aWxsIGEgYml0IG9mIHZvb2RvbyAtLSBpdCB3YXMg
cmVxdWlyZWQgYXQKKyAgICAgICAgICAjIG9uZSB0aW1lLCBidXQgZG9lcyBub3Qgc2VlbSB0byBi
ZSBub3csIGFuZCBpdCBicmVha3Mgc29tZSBvZiB0aGUKKyAgICAgICAgICAjIGNvZGUgdGhhdCBz
dGlsbCByZWxpZXMgb24gaW5saW5lIGFzc2VtYmx5LgorICAgICAgICAgICMgZW5hYmxlZCBpY2Mg
JiYgISBlbmFibGVkIHBpYyAmJiBhZGRfY2ZsYWdzIC1mbm8tcGljIC1tZHluYW1pYy1uby1waWMK
KyAgICAgICAgICBlbmFibGVkIGljYyAmJiAhIGVuYWJsZWQgcGljICYmIGFkZF9jZmxhZ3MgLWZu
by1waWMKKyAgICAgICAgICA7OworICAgICAgICBpcGhvbmVzaW11bGF0b3IpCisgICAgICAgICAg
YWRkX2FzZmxhZ3MgLWYgbWFjaG8ke2JpdHN9CisgICAgICAgICAgZW5hYmxlZCB4ODYgJiYgc2lt
X2FyY2g9Ii1hcmNoIGkzODYiIHx8IHNpbV9hcmNoPSItYXJjaCB4ODZfNjQiCisgICAgICAgICAg
YWRkX2NmbGFncyAgJHtzaW1fYXJjaH0KKyAgICAgICAgICBhZGRfbGRmbGFncyAke3NpbV9hcmNo
fQorCisgICAgICAgICAgaWYgWyAiJChkaXNhYmxlZCBleHRlcm5hbF9idWlsZCkiIF0gJiYKKyAg
ICAgICAgICAgICAgWyAiJChzaG93X2Rhcndpbl9zZGtfbWFqb3JfdmVyc2lvbiBpcGhvbmVzaW11
bGF0b3IpIiAtZ3QgOCBdOyB0aGVuCisgICAgICAgICAgICAjIHlhc20gdjEuMy4wIGRvZXNuJ3Qg
a25vdyB3aGF0IC1mZW1iZWQtYml0Y29kZSBtZWFucywgc28gdHVybmluZyBpdAorICAgICAgICAg
ICAgIyBvbiBpcyBwb2ludGxlc3MgKHVubGVzcyBidWlsZGluZyBhIEMtb25seSBsaWIpLiBXYXJu
IHRoZSB1c2VyLCBidXQKKyAgICAgICAgICAgICMgZG8gbm90aGluZyBoZXJlLgorICAgICAgICAg
ICAgbG9nICJXYXJuaW5nOiBCaXRjb2RlIGVtYmVkIGRpc2FibGVkIGZvciBzaW11bGF0b3IgdGFy
Z2V0cy4iCisgICAgICAgICAgZmkKKyAgICAgICAgICA7OworICAgICAgICBvczIpCisgICAgICAg
ICAgYWRkX2FzZmxhZ3MgLWYgYW91dAorICAgICAgICAgIGVuYWJsZWQgZGVidWcgJiYgYWRkX2Fz
ZmxhZ3MgLWcKKyAgICAgICAgICBFWEVfU0ZYPS5leGUKKyAgICAgICAgICA7OworICAgICAgICAq
KQorICAgICAgICAgIGxvZyAiV2FybmluZzogVW5rbm93biBvcyAkdGd0X29zIHdoaWxlIHNldHRp
bmcgdXAgJEFTIGZsYWdzIgorICAgICAgICAgIDs7CisgICAgICBlc2FjCisgICAgICA7OworICAg
ICotZ2NjfGdlbmVyaWMtZ251KQorICAgICAgbGlua193aXRoX2NjPWdjYworICAgICAgZW5hYmxl
X2ZlYXR1cmUgZ2NjCisgICAgICBzZXR1cF9nbnVfdG9vbGNoYWluCisgICAgICA7OworICBlc2Fj
CisKKyAgIyBUcnkgdG8gZW5hYmxlIENQVSBzcGVjaWZpYyB0dW5pbmcKKyAgaWYgWyAtbiAiJHt0
dW5lX2NwdX0iIF07IHRoZW4KKyAgICBpZiBbIC1uICIke3R1bmVfY2ZsYWdzfSIgXTsgdGhlbgor
ICAgICAgY2hlY2tfYWRkX2NmbGFncyAke3R1bmVfY2ZsYWdzfSR7dHVuZV9jcHV9IHx8IFwKKyAg
ICAgICAgZGllICJSZXF1ZXN0ZWQgQ1BVICcke3R1bmVfY3B1fScgbm90IHN1cHBvcnRlZCBieSBj
b21waWxlciIKKyAgICBmaQorICAgIGlmIFsgLW4gIiR7dHVuZV9hc2ZsYWdzfSIgXTsgdGhlbgor
ICAgICAgY2hlY2tfYWRkX2FzZmxhZ3MgJHt0dW5lX2FzZmxhZ3N9JHt0dW5lX2NwdX0gfHwgXAor
ICAgICAgICBkaWUgIlJlcXVlc3RlZCBDUFUgJyR7dHVuZV9jcHV9JyBub3Qgc3VwcG9ydGVkIGJ5
IGFzc2VtYmxlciIKKyAgICBmaQorICAgIGlmIFsgLXogIiR7dHVuZV9jZmxhZ3N9JHt0dW5lX2Fz
ZmxhZ3N9IiBdOyB0aGVuCisgICAgICBsb2dfZWNobyAiV2FybmluZzogQ1BVIHR1bmluZyBub3Qg
c3VwcG9ydGVkIGJ5IHRoaXMgdG9vbGNoYWluIgorICAgIGZpCisgIGZpCisKKyAgaWYgZW5hYmxl
ZCBkZWJ1ZzsgdGhlbgorICAgIGNoZWNrX2FkZF9jZmxhZ3MgLWcgJiYgY2hlY2tfYWRkX2xkZmxh
Z3MgLWcKKyAgZWxzZQorICAgIGNoZWNrX2FkZF9jZmxhZ3MgLUROREVCVUcKKyAgZmkKKworICBl
bmFibGVkIGdwcm9mICYmIGNoZWNrX2FkZF9jZmxhZ3MgLXBnICYmIGNoZWNrX2FkZF9sZGZsYWdz
IC1wZworICBlbmFibGVkIGdjb3YgJiYKKyAgICBjaGVja19hZGRfY2ZsYWdzIC1mcHJvZmlsZS1h
cmNzIC1mdGVzdC1jb3ZlcmFnZSAmJgorICAgIGNoZWNrX2FkZF9sZGZsYWdzIC1mcHJvZmlsZS1h
cmNzIC1mdGVzdC1jb3ZlcmFnZQorCisgIGlmIGVuYWJsZWQgb3B0aW1pemF0aW9uczsgdGhlbgor
ICAgIGlmIGVuYWJsZWQgcnZjdDsgdGhlbgorICAgICAgZW5hYmxlZCBzbWFsbCAmJiBjaGVja19h
ZGRfY2ZsYWdzIC1Pc3BhY2UgfHwgY2hlY2tfYWRkX2NmbGFncyAtT3RpbWUKKyAgICBlbHNlCisg
ICAgICBlbmFibGVkIHNtYWxsICYmIGNoZWNrX2FkZF9jZmxhZ3MgLU8yIHx8ICBjaGVja19hZGRf
Y2ZsYWdzIC1PMworICAgIGZpCisgIGZpCisKKyAgIyBQb3NpdGlvbiBJbmRlcGVuZGVudCBDb2Rl
IChQSUMpIHN1cHBvcnQsIGZvciBidWlsZGluZyByZWxvY2F0YWJsZQorICAjIHNoYXJlZCBvYmpl
Y3RzCisgIGVuYWJsZWQgZ2NjICYmIGVuYWJsZWQgcGljICYmIGNoZWNrX2FkZF9jZmxhZ3MgLWZQ
SUMKKworICAjIFdvcmsgYXJvdW5kIGxvbmdqbXAgaW50ZXJjZXB0aW9uIG9uIGdsaWJjID49IDIu
MTEsIHRvIGltcHJvdmUgYmluYXJ5CisgICMgY29tcGF0aWJpbGl0eS4gU2VlIGh0dHA6Ly9jb2Rl
Lmdvb2dsZS5jb20vcC93ZWJtL2lzc3Vlcy9kZXRhaWw/aWQ9MTY2CisgIGVuYWJsZWQgbGludXgg
JiYgY2hlY2tfYWRkX2NmbGFncyAtVV9GT1JUSUZZX1NPVVJDRSAtRF9GT1JUSUZZX1NPVVJDRT0w
CisKKyAgIyBDaGVjayBmb3Igc3RyaXAgdXRpbGl0eSB2YXJpYW50CisgICR7U1RSSVB9IC1WIDI+
L2Rldi9udWxsIHwgZ3JlcCBHTlUgPi9kZXYvbnVsbCAmJiBlbmFibGVfZmVhdHVyZSBnbnVfc3Ry
aXAKKworICAjIFRyeSB0byBkZXRlcm1pbmUgdGFyZ2V0IGVuZGlhbm5lc3MKKyAgY2hlY2tfY2Mg
PDxFT0YKK3Vuc2lnbmVkIGludCBlID0gJ08nPDwyNCB8ICcyJzw8MTYgfCAnQic8PDggfCAnRSc7
CitFT0YKKyAgICBbIC1mICIke1RNUF9PfSIgXSAmJiBvZCAtQSBuIC10IHgxICIke1RNUF9PfSIg
fCB0ciAtZCAnXG4nIHwKKyAgICAgICAgZ3JlcCAnNGYgKjMyICo0MiAqNDUnID4vZGV2L251bGwg
Mj4mMSAmJiBlbmFibGVfZmVhdHVyZSBiaWdfZW5kaWFuCisKKyAgICAjIFRyeSB0byBmaW5kIHdo
aWNoIGlubGluZSBrZXl3b3JkcyBhcmUgc3VwcG9ydGVkCisgICAgY2hlY2tfY2MgPDxFT0YgJiYg
SU5MSU5FPSJpbmxpbmUiCitzdGF0aWMgaW5saW5lIGZ1bmN0aW9uKCkge30KK0VPRgorCisgICMg
QWxtb3N0IGV2ZXJ5IHBsYXRmb3JtIHVzZXMgcHRocmVhZHMuCisgIGlmIGVuYWJsZWQgbXVsdGl0
aHJlYWQ7IHRoZW4KKyAgICBjYXNlICR7dG9vbGNoYWlufSBpbgorICAgICAgKi13aW4qLXZzKikK
KyAgICAgICAgOzsKKyAgICAgICotYW5kcm9pZC1nY2MpCisgICAgICAgICMgYmlvbmljIGluY2x1
ZGVzIGJhc2ljIHB0aHJlYWQgZnVuY3Rpb25hbGl0eSwgb2J2aWF0aW5nIC1scHRocmVhZC4KKyAg
ICAgICAgOzsKKyAgICAgICopCisgICAgICAgIGNoZWNrX2hlYWRlciBwdGhyZWFkLmggJiYgY2hl
Y2tfbGliIC1scHRocmVhZCA8PEVPRiAmJiBhZGRfZXh0cmFsaWJzIC1scHRocmVhZCB8fCBkaXNh
YmxlX2ZlYXR1cmUgcHRocmVhZF9oCisjaW5jbHVkZSA8cHRocmVhZC5oPgorI2luY2x1ZGUgPHN0
ZGRlZi5oPgoraW50IG1haW4odm9pZCkgeyByZXR1cm4gcHRocmVhZF9jcmVhdGUoTlVMTCwgTlVM
TCwgTlVMTCwgTlVMTCk7IH0KK0VPRgorICAgICAgICA7OworICAgIGVzYWMKKyAgZmkKKworICAj
IG9ubHkgZm9yIE1JUFMgcGxhdGZvcm1zCisgIGNhc2UgJHt0b29sY2hhaW59IGluCisgICAgbWlw
cyopCisgICAgICBpZiBlbmFibGVkIGJpZ19lbmRpYW47IHRoZW4KKyAgICAgICAgaWYgZW5hYmxl
ZCBkc3ByMjsgdGhlbgorICAgICAgICAgIGVjaG8gImRzcHIyIG9wdGltaXphdGlvbnMgYXJlIGF2
YWlsYWJsZSBvbmx5IGZvciBsaXR0bGUgZW5kaWFuIHBsYXRmb3JtcyIKKyAgICAgICAgICBkaXNh
YmxlX2ZlYXR1cmUgZHNwcjIKKyAgICAgICAgZmkKKyAgICAgICAgaWYgZW5hYmxlZCBtc2E7IHRo
ZW4KKyAgICAgICAgICBlY2hvICJtc2Egb3B0aW1pemF0aW9ucyBhcmUgYXZhaWxhYmxlIG9ubHkg
Zm9yIGxpdHRsZSBlbmRpYW4gcGxhdGZvcm1zIgorICAgICAgICAgIGRpc2FibGVfZmVhdHVyZSBt
c2EKKyAgICAgICAgZmkKKyAgICAgICAgaWYgZW5hYmxlZCBtbWk7IHRoZW4KKyAgICAgICAgICBl
Y2hvICJtbWkgb3B0aW1pemF0aW9ucyBhcmUgYXZhaWxhYmxlIG9ubHkgZm9yIGxpdHRsZSBlbmRp
YW4gcGxhdGZvcm1zIgorICAgICAgICAgIGRpc2FibGVfZmVhdHVyZSBtbWkKKyAgICAgICAgZmkK
KyAgICAgIGZpCisgICAgICA7OworICBlc2FjCisKKyAgIyBnbGliYyBuZWVkcyB0aGVzZQorICBp
ZiBlbmFibGVkIGxpbnV4OyB0aGVuCisgICAgYWRkX2NmbGFncyAtRF9MQVJHRUZJTEVfU09VUkNF
CisgICAgYWRkX2NmbGFncyAtRF9GSUxFX09GRlNFVF9CSVRTPTY0CisgIGZpCit9CisKK3Byb2Nl
c3NfdG9vbGNoYWluKCkgeworICBwcm9jZXNzX2NvbW1vbl90b29sY2hhaW4KK30KKworcHJpbnRf
Y29uZmlnX21rKCkgeworICBzYXZlZF9wcmVmaXg9IiR7cHJlZml4fSIKKyAgcHJlZml4PSQxCisg
IG1ha2VmaWxlPSQyCisgIHNoaWZ0IDIKKyAgZm9yIGNmZzsgZG8KKyAgICBpZiBlbmFibGVkICRj
Zmc7IHRoZW4KKyAgICAgIHVwbmFtZT0iYHRvdXBwZXIgJGNmZ2AiCisgICAgICBlY2hvICIke3By
ZWZpeH1fJHt1cG5hbWV9PXllcyIgPj4gJG1ha2VmaWxlCisgICAgZmkKKyAgZG9uZQorICBwcmVm
aXg9IiR7c2F2ZWRfcHJlZml4fSIKK30KKworcHJpbnRfY29uZmlnX2goKSB7CisgIHNhdmVkX3By
ZWZpeD0iJHtwcmVmaXh9IgorICBwcmVmaXg9JDEKKyAgaGVhZGVyPSQyCisgIHNoaWZ0IDIKKyAg
Zm9yIGNmZzsgZG8KKyAgICB1cG5hbWU9ImB0b3VwcGVyICRjZmdgIgorICAgIGlmIGVuYWJsZWQg
JGNmZzsgdGhlbgorICAgICAgZWNobyAiI2RlZmluZSAke3ByZWZpeH1fJHt1cG5hbWV9IDEiID4+
ICRoZWFkZXIKKyAgICBlbHNlCisgICAgICBlY2hvICIjZGVmaW5lICR7cHJlZml4fV8ke3VwbmFt
ZX0gMCIgPj4gJGhlYWRlcgorICAgIGZpCisgIGRvbmUKKyAgcHJlZml4PSIke3NhdmVkX3ByZWZp
eH0iCit9CisKK3ByaW50X2NvbmZpZ192YXJzX2goKSB7CisgIGhlYWRlcj0kMQorICBzaGlmdAor
ICB3aGlsZSBbICQjIC1ndCAwIF07IGRvCisgICAgdXBuYW1lPSJgdG91cHBlciAkMWAiCisgICAg
ZWNobyAiI2RlZmluZSAke3VwbmFtZX0gJDIiID4+ICRoZWFkZXIKKyAgICBzaGlmdCAyCisgIGRv
bmUKK30KKworcHJpbnRfd2VibV9saWNlbnNlKCkgeworICBzYXZlZF9wcmVmaXg9IiR7cHJlZml4
fSIKKyAgZGVzdGluYXRpb249JDEKKyAgcHJlZml4PSIkMiIKKyAgc3VmZml4PSIkMyIKKyAgc2hp
ZnQgMworICBjYXQgPDxFT0YgPiAke2Rlc3RpbmF0aW9ufQorJHtwcmVmaXh9IENvcHlyaWdodCAo
YykgMjAxMSBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuJHtz
dWZmaXh9Ciske3ByZWZpeH0gJHtzdWZmaXh9Ciske3ByZWZpeH0gVXNlIG9mIHRoaXMgc291cmNl
IGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSR7c3VmZml4fQorJHtwcmVm
aXh9IHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2Yg
dGhlIHNvdXJjZSR7c3VmZml4fQorJHtwcmVmaXh9IHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxs
ZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQke3N1ZmZpeH0KKyR7cHJl
Zml4fSBpbiB0aGUgZmlsZSBQQVRFTlRTLiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhv
cnMgbWF5JHtzdWZmaXh9Ciske3ByZWZpeH0gYmUgZm91bmQgaW4gdGhlIEFVVEhPUlMgZmlsZSBp
biB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuJHtzdWZmaXh9CitFT0YKKyAgcHJlZml4PSIk
e3NhdmVkX3ByZWZpeH0iCit9CisKK3Byb2Nlc3NfdGFyZ2V0cygpIHsKKyAgdHJ1ZTsKK30KKwor
cHJvY2Vzc19kZXRlY3QoKSB7CisgIHRydWU7Cit9CisKK2VuYWJsZV9mZWF0dXJlIGxvZ2dpbmcK
K2xvZ2ZpbGU9ImNvbmZpZy5sb2ciCitzZWxmPSQwCitwcm9jZXNzKCkgeworICBjbWRsaW5lX2Fy
Z3M9IiRAIgorICBwcm9jZXNzX2NtZGxpbmUgIiRAIgorICBpZiBlbmFibGVkIGNoaWxkOyB0aGVu
CisgICAgZWNobyAiIyAke3NlbGZ9ICRAIiA+PiAke2xvZ2ZpbGV9CisgIGVsc2UKKyAgICBlY2hv
ICIjICR7c2VsZn0gJEAiID4gJHtsb2dmaWxlfQorICBmaQorICBwb3N0X3Byb2Nlc3NfY29tbW9u
X2NtZGxpbmUKKyAgcG9zdF9wcm9jZXNzX2NtZGxpbmUKKyAgcHJvY2Vzc190b29sY2hhaW4KKyAg
cHJvY2Vzc19kZXRlY3QKKyAgcHJvY2Vzc190YXJnZXRzCisKKyAgT09UX0lOU1RBTExTPSIke09P
VF9JTlNUQUxMU30iCisgIGlmIGVuYWJsZWQgc291cmNlX3BhdGhfdXNlZDsgdGhlbgorICAjIFBy
ZXBhcmUgdGhlIFBXRCBmb3IgYnVpbGRpbmcuCisgIGZvciBmIGluICR7T09UX0lOU1RBTExTfTsg
ZG8KKyAgICBpbnN0YWxsIC1EICIke3NvdXJjZV9wYXRofS8kZiIgIiRmIgorICBkb25lCisgIGZp
CisgIGNwICIke3NvdXJjZV9wYXRofS9idWlsZC9tYWtlL01ha2VmaWxlIiAuCisKKyAgY2xlYW5f
dGVtcF9maWxlcworICB0cnVlCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2J1aWxkL21ha2Uv
Z2VuX2FzbV9kZXBzLnNoIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL2dlbl9hc21fZGVwcy5zaApu
ZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi42YTdiZmY5ZWJjZTRjMTFlY2NhZTcwZTc2NjE5YzgzMzJmNDM1M2I2Ci0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL2dlbl9hc21fZGVwcy5zaApAQCAt
MCwwICsxLDY0IEBACisjIS9iaW4vc2gKKyMjCisjIyAgQ29weXJpZ2h0IChjKSAyMDEwIFRoZSBX
ZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyMjCisjIyAgVXNlIG9m
IHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZQorIyMg
IHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhl
IHNvdXJjZQorIyMgIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJp
Z2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyMjICBpbiB0aGUgZmlsZSBQQVRFTlRTLiAgQWxsIGNv
bnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisjIyAgYmUgZm91bmQgaW4gdGhlIEFVVEhP
UlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisjIworCisKK3NlbGY9JDAK
K3Nob3dfaGVscCgpIHsKKyAgICBlY2hvICJ1c2FnZTogJHNlbGYgW29wdGlvbnNdIDxzcmNmaWxl
PiIKKyAgICBlY2hvCisgICAgZWNobyAiR2VuZXJhdGUgTWFrZWZpbGUgZGVwZW5kZW5jeSBpbmZv
cm1hdGlvbiBmcm9tIGFzc2VtYmx5IGNvZGUgc291cmNlIgorICAgIGVjaG8KKyAgICBleGl0IDEK
K30KK2RpZV91bmtub3duKCl7CisgICAgZWNobyAiVW5rbm93biBvcHRpb24gXCIkMVwiLiIKKyAg
ICBlY2hvICJTZWUgJDAgLS1oZWxwIGZvciBhdmFpbGFibGUgb3B0aW9ucy4iCisgICAgZXhpdCAx
Cit9Citmb3Igb3B0IGRvCisgICAgb3B0dmFsPSIke29wdCMqPX0iCisgICAgY2FzZSAiJG9wdCIg
aW4KKyAgICAtLWJ1aWxkLXBmeD0qKSBwZng9IiR7b3B0dmFsfSIKKyAgICA7OworICAgIC0tZGVw
ZmlsZT0qKSBvdXQ9IiR7b3B0dmFsfSIKKyAgICA7OworICAgIC1JKikgcmF3X2luY19wYXRocz0i
JHtyYXdfaW5jX3BhdGhzfSAke29wdH0iCisgICAgICAgICBpbmNfcGF0aD0iJHtpbmNfcGF0aH0g
JHtvcHQjLUl9IgorICAgIDs7CisgICAgLWh8LS1oZWxwKSBzaG93X2hlbHAKKyAgICA7OworICAg
ICopIFsgLWYgIiRvcHQiIF0gJiYgc3JjZmlsZT0iJG9wdCIKKyAgICA7OworICAgIGVzYWMKK2Rv
bmUKKworWyAtbiAiJHNyY2ZpbGUiIF0gfHwgc2hvd19oZWxwCitzZng9JHtzZng6LWFzbX0KK2lu
Y2x1ZGVzPSQoTENfQUxMPUMgZWdyZXAgLWkgImluY2x1ZGUgK1wiP1thLXowLTlfL10rXC4ke3Nm
eH0iICRzcmNmaWxlIHwKKyAgICAgICAgICAgcGVybCAtcCAtZSAiczsuKj8oW2EtejAtOV8vXSsu
JHtzZnh9KS4qO1wxOyIpCisjIiByZXN0b3JlIGVkaXRvciBzdGF0ZQorZm9yIGluYyBpbiAke2lu
Y2x1ZGVzfTsgZG8KKyAgICBmb3VuZF9pbmNfcGF0aD0KKyAgICBmb3IgaWRpciBpbiAke2luY19w
YXRofTsgZG8KKyAgICAgICAgWyAtZiAiJHtpZGlyfS8ke2luY30iIF0gJiYgZm91bmRfaW5jX3Bh
dGg9IiR7aWRpcn0iICYmIGJyZWFrCisgICAgZG9uZQorICAgIGlmIFsgLWYgYGRpcm5hbWUgJHNy
Y2ZpbGVgLyRpbmMgXTsgdGhlbgorICAgICAgICAjIEhhbmRsZSBpbmNsdWRlIGZpbGVzIGluIHRo
ZSBzYW1lIGRpcmVjdG9yeSBhcyB0aGUgc291cmNlCisgICAgICAgICRzZWxmIC0tYnVpbGQtcGZ4
PSRwZnggLS1kZXBmaWxlPSRvdXQgJHtyYXdfaW5jX3BhdGhzfSBgZGlybmFtZSAkc3JjZmlsZWAv
JGluYworICAgIGVsaWYgWyAtbiAiJHtmb3VuZF9pbmNfcGF0aH0iIF07IHRoZW4KKyAgICAgICAg
IyBIYW5kbGUgaW5jbHVkZSBmaWxlcyBvbiB0aGUgaW5jbHVkZSBwYXRoCisgICAgICAgICRzZWxm
IC0tYnVpbGQtcGZ4PSRwZnggLS1kZXBmaWxlPSRvdXQgJHtyYXdfaW5jX3BhdGhzfSAiJHtmb3Vu
ZF9pbmNfcGF0aH0vJGluYyIKKyAgICBlbHNlCisgICAgICAgICMgSGFuZGxlIGdlbmVyYXRlZCBp
bmNsdWRlcyBpbiB0aGUgYnVpbGQgcm9vdCAod2hpY2ggbWF5IG5vdCBleGlzdCB5ZXQpCisgICAg
ICAgIGVjaG8gJHtvdXR9ICR7b3V0JWR9bzogIiR7cGZ4fSR7aW5jfSIKKyAgICBmaQorZG9uZQor
ZWNobyAke291dH0gJHtvdXQlZH1vOiAkc3JjZmlsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9i
dWlsZC9tYWtlL2dlbl9tc3ZzX2RlZi5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9nZW5fbXN2
c19kZWYuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNGRlZmNjMmU3YzdlNWYyNTMzOWM1YTIzYWM5YTU3YjRjN2Fl
YzM2ZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9nZW5fbXN2c19k
ZWYuc2gKQEAgLTAsMCArMSw4MyBAQAorIyEvYmluL2Jhc2gKKyMjCisjIyAgQ29weXJpZ2h0IChj
KSAyMDEwIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyMj
CisjIyAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUg
bGljZW5zZQorIyMgIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhl
IHJvb3Qgb2YgdGhlIHNvdXJjZQorIyMgIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFs
IHByb3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyMjICBpbiB0aGUgZmlsZSBQQVRF
TlRTLiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisjIyAgYmUgZm91bmQg
aW4gdGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisjIwor
CisKK3NlbGY9JDAKK3NlbGZfYmFzZW5hbWU9JHtzZWxmIyMqL30KK0VPTD0kJ1xuJworCitzaG93
X2hlbHAoKSB7CisgICAgY2F0IDw8RU9GCitVc2FnZTogJHtzZWxmX2Jhc2VuYW1lfSBbb3B0aW9u
c10gZmlsZTEgW2ZpbGUyIC4uLl0KKworVGhpcyBzY3JpcHQgZ2VuZXJhdGVzIGEgTVNWQyBtb2R1
bGUgZGVmaW5pdGlvbiBmaWxlIGNvbnRhaW5pbmcgYSBsaXN0IG9mIHN5bWJvbHMKK3RvIGV4cG9y
dCBmcm9tIGEgRExMLiBTb3VyY2UgZmlsZXMgYXJlIHRlY2huaWNhbGx5IGJhc2ggc2NyaXB0cyAo
YW5kIHRodXMgbWF5Cit1c2UgI2NvbW1lbnQgc3ludGF4KSBidXQgaW4gZ2VuZXJhbCwgdGFrZSB0
aGUgZm9ybSBvZiBhIGxpc3Qgb2Ygc3ltYm9sczoKKworICA8a2luZD4gc3ltYm9sMSBbc3ltYm9s
Miwgc3ltYm9sMywgLi4uXQorCit3aGVyZSA8a2luZD4gaXMgZWl0aGVyICd0ZXh0JyBvciAnZGF0
YScKKworCitPcHRpb25zOgorICAgIC0taGVscCAgICAgICAgICAgICAgICAgICAgICBQcmludCB0
aGlzIG1lc3NhZ2UKKyAgICAtLW91dD1maWxlbmFtZSAgICAgICAgICAgICAgV3JpdGUgb3V0cHV0
IHRvIGEgZmlsZSBbc3Rkb3V0XQorICAgIC0tbmFtZT1wcm9qZWN0X25hbWUgICAgICAgICBOYW1l
IG9mIHRoZSBsaWJyYXJ5IChyZXF1aXJlZCkKK0VPRgorICAgIGV4aXQgMQorfQorCitkaWUoKSB7
CisgICAgZWNobyAiJHtzZWxmX2Jhc2VuYW1lfTogJEAiCisgICAgZXhpdCAxCit9CisKK2RpZV91
bmtub3duKCl7CisgICAgZWNobyAiVW5rbm93biBvcHRpb24gXCIkMVwiLiIKKyAgICBlY2hvICJT
ZWUgJHtzZWxmX2Jhc2VuYW1lfSAtLWhlbHAgZm9yIGF2YWlsYWJsZSBvcHRpb25zLiIKKyAgICBl
eGl0IDEKK30KKwordGV4dCgpIHsKKyAgICBmb3Igc3ltIGluICIkQCI7IGRvCisgICAgICAgIGVj
aG8gIiAgJHN5bSIgPj4gJHtvdXRmaWxlfQorICAgIGRvbmUKK30KKworZGF0YSgpIHsKKyAgICBm
b3Igc3ltIGluICIkQCI7IGRvCisgICAgICAgIHByaW50ZiAiICAlLTQwcyBEQVRBXG4iICIkc3lt
IiA+PiAke291dGZpbGV9CisgICAgZG9uZQorfQorCisjIFByb2Nlc3MgY29tbWFuZCBsaW5lCitm
b3Igb3B0IGluICIkQCI7IGRvCisgICAgb3B0dmFsPSIke29wdCMqPX0iCisgICAgY2FzZSAiJG9w
dCIgaW4KKyAgICAtLWhlbHB8LWgpIHNob3dfaGVscAorICAgIDs7CisgICAgLS1vdXQ9Kikgb3V0
ZmlsZT0iJG9wdHZhbCIKKyAgICA7OworICAgIC0tbmFtZT0qKSBuYW1lPSIke29wdHZhbH0iCisg
ICAgOzsKKyAgICAgLSopIGRpZV91bmtub3duICRvcHQKKyAgICA7OworICAgICopIGZpbGVfbGlz
dFskeyNmaWxlX2xpc3RbQF19XT0iJG9wdCIKKyAgICBlc2FjCitkb25lCitvdXRmaWxlPSR7b3V0
ZmlsZTotL2Rldi9zdGRvdXR9CitbIC1uICIkbmFtZSIgXSB8fCBkaWUgIkxpYnJhcnkgbmFtZSAo
LS1uYW1lKSBtdXN0IGJlIHNwZWNpZmllZCEiCisKK2VjaG8gIkxJQlJBUlkgJHtuYW1lfSIgPiAk
e291dGZpbGV9CitlY2hvICJFWFBPUlRTIiA+PiAke291dGZpbGV9Citmb3IgZiBpbiAiJHtmaWxl
X2xpc3RbQF19IjsgZG8KKyAgICAuICRmCitkb25lCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2J1
aWxkL21ha2UvZ2VuX21zdnNfc2xuLnNoIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL2dlbl9tc3Zz
X3Nsbi5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5kMWFkZmQ3NDljNjYzYTViMDZkNjAzZWI4MWRlMTk4OTQ1YWZi
NDE5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL2dlbl9tc3ZzX3Ns
bi5zaApAQCAtMCwwICsxLDI1NCBAQAorIyEvYmluL2Jhc2gKKyMjCisjIyAgQ29weXJpZ2h0IChj
KSAyMDEwIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyMj
CisjIyAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUg
bGljZW5zZQorIyMgIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhl
IHJvb3Qgb2YgdGhlIHNvdXJjZQorIyMgIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFs
IHByb3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyMjICBpbiB0aGUgZmlsZSBQQVRF
TlRTLiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisjIyAgYmUgZm91bmQg
aW4gdGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisjIwor
CisKK3NlbGY9JDAKK3NlbGZfYmFzZW5hbWU9JHtzZWxmIyMqL30KK0VPTD0kJ1xuJworRU9MRE9T
PSQnXHInCisKK3Nob3dfaGVscCgpIHsKKyAgICBjYXQgPDxFT0YKK1VzYWdlOiAke3NlbGZfYmFz
ZW5hbWV9IFtvcHRpb25zXSBmaWxlMSBbZmlsZTIgLi4uXQorCitUaGlzIHNjcmlwdCBnZW5lcmF0
ZXMgYSBWaXN1YWwgU3R1ZGlvIHNvbHV0aW9uIGZpbGUgZnJvbSBhIGxpc3Qgb2YgcHJvamVjdAor
ZmlsZXMuCisKK09wdGlvbnM6CisgICAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgIFByaW50
IHRoaXMgbWVzc2FnZQorICAgIC0tb3V0PW91dGZpbGUgICAgICAgICAgICAgICBSZWRpcmVjdCBv
dXRwdXQgdG8gYSBmaWxlCisgICAgLS12ZXI9dmVyc2lvbiAgICAgICAgICAgICAgIFZlcnNpb24g
KDE0LTE2KSBvZiB2aXN1YWwgc3R1ZGlvIHRvIGdlbmVyYXRlIGZvcgorICAgIC0tdGFyZ2V0PWlz
YS1vcy1jYyAgICAgICAgICBUYXJnZXQgc3BlY2lmaWVyCitFT0YKKyAgICBleGl0IDEKK30KKwor
ZGllKCkgeworICAgIGVjaG8gIiR7c2VsZl9iYXNlbmFtZX06ICRAIiA+JjIKKyAgICBbIC1mICIk
e291dGZpbGV9IiBdICYmIHJtIC1mICR7b3V0ZmlsZX17LC5ta30KKyAgICBleGl0IDEKK30KKwor
ZGllX3Vua25vd24oKXsKKyAgICBlY2hvICJVbmtub3duIG9wdGlvbiBcIiQxXCIuIiA+JjIKKyAg
ICBlY2hvICJTZWUgJHtzZWxmX2Jhc2VuYW1lfSAtLWhlbHAgZm9yIGF2YWlsYWJsZSBvcHRpb25z
LiIgPiYyCisgICAgWyAtZiAiJHtvdXRmaWxlfSIgXSAmJiBybSAtZiAke291dGZpbGV9eywubWt9
CisgICAgZXhpdCAxCit9CisKK2luZGVudDE9JCdcdCcKK2luZGVudD0iIgoraW5kZW50X3B1c2go
KSB7CisgICAgaW5kZW50PSIke2luZGVudH0ke2luZGVudDF9IgorfQoraW5kZW50X3BvcCgpIHsK
KyAgICBpbmRlbnQ9IiR7aW5kZW50JSR7aW5kZW50MX19IgorfQorCitwYXJzZV9wcm9qZWN0KCkg
eworICAgIGxvY2FsIGZpbGU9JDEKKyAgICBsb2NhbCBuYW1lPWBncmVwIFJvb3ROYW1lc3BhY2Ug
IiRmaWxlIiB8IHNlZCAncywuKjwuKj5cKC4qXCk8Ly4qPi4qLFwxLCdgCisgICAgbG9jYWwgZ3Vp
ZD1gZ3JlcCBQcm9qZWN0R3VpZCAiJGZpbGUiIHwgc2VkICdzLC4qPC4qPlwoLipcKTwvLio+Lios
XDEsJ2AKKworICAgICMgc2F2ZSB0aGUgcHJvamVjdCBHVUlEIHRvIGEgdmFyYWlibGUsIG5vcm1h
bGl6aW5nIHRvIHRoZSBiYXNlbmFtZSBvZiB0aGUKKyAgICAjIHZjeHByb2ogZmlsZSB3aXRob3V0
IHRoZSBleHRlbnNpb24KKyAgICBsb2NhbCB2YXIKKyAgICB2YXI9JHtmaWxlIyMqL30KKyAgICB2
YXI9JHt2YXIlJS4ke3NmeH19CisgICAgZXZhbCAiJHt2YXJ9X2ZpbGU9XCIkMVwiIgorICAgIGV2
YWwgIiR7dmFyfV9uYW1lPSRuYW1lIgorICAgIGV2YWwgIiR7dmFyfV9ndWlkPSRndWlkIgorCisg
ICAgY3VyX2NvbmZpZ19saXN0PWBncmVwIC1CMSAnTGFiZWw9IkNvbmZpZ3VyYXRpb24iJyAkZmls
ZSB8CisgICAgICAgIGdyZXAgQ29uZGl0aW9uIHwgY3V0IC1kXCcgLWY0YAorICAgIG5ld19jb25m
aWdfbGlzdD0kKGZvciBpIGluICRjb25maWdfbGlzdCAkY3VyX2NvbmZpZ19saXN0OyBkbworICAg
ICAgICBlY2hvICRpCisgICAgZG9uZSB8IHNvcnQgfCB1bmlxKQorICAgIGlmIFsgIiRjb25maWdf
bGlzdCIgIT0gIiIgXSAmJiBbICIkY29uZmlnX2xpc3QiICE9ICIkbmV3X2NvbmZpZ19saXN0IiBd
OyB0aGVuCisgICAgICAgIG1peGVkX3BsYXRmb3Jtcz0xCisgICAgZmkKKyAgICBjb25maWdfbGlz
dD0iJG5ld19jb25maWdfbGlzdCIKKyAgICBldmFsICIke3Zhcn1fY29uZmlnX2xpc3Q9XCIkY3Vy
X2NvbmZpZ19saXN0XCIiCisgICAgcHJval9saXN0PSIke3Byb2pfbGlzdH0gJHt2YXJ9IgorfQor
Citwcm9jZXNzX3Byb2plY3QoKSB7CisgICAgZXZhbCAibG9jYWwgZmlsZT1cJHskMV9maWxlfSIK
KyAgICBldmFsICJsb2NhbCBuYW1lPVwkeyQxX25hbWV9IgorICAgIGV2YWwgImxvY2FsIGd1aWQ9
XCR7JDFfZ3VpZH0iCisKKyAgICAjIHNhdmUgdGhlIHByb2plY3QgR1VJRCB0byBhIHZhcmFpYmxl
LCBub3JtYWxpemluZyB0byB0aGUgYmFzZW5hbWUgb2YgdGhlCisgICAgIyB2Y3Byb2ogZmlsZSB3
aXRob3V0IHRoZSBleHRlbnNpb24KKyAgICBsb2NhbCB2YXIKKyAgICB2YXI9JHtmaWxlIyMqL30K
KyAgICB2YXI9JHt2YXIlJS4ke3NmeH19CisgICAgZXZhbCAiJHt2YXJ9X2d1aWQ9JGd1aWQiCisK
KyAgICBlY2hvICJQcm9qZWN0KFwiezhCQzlDRUI4LThCNEEtMTFEMC04RDExLTAwQTBDOTFCQzk0
Mn1cIikgPSBcIiRuYW1lXCIsIFwiJGZpbGVcIiwgXCIkZ3VpZFwiIgorICAgIGVjaG8gIkVuZFBy
b2plY3QiCit9CisKK3Byb2Nlc3NfZ2xvYmFsKCkgeworICAgIGVjaG8gIkdsb2JhbCIKKyAgICBp
bmRlbnRfcHVzaAorCisgICAgIworICAgICMgU29sdXRpb24gQ29uZmlndXJhdGlvbiBQbGF0Zm9y
bXMKKyAgICAjCisgICAgZWNobyAiJHtpbmRlbnR9R2xvYmFsU2VjdGlvbihTb2x1dGlvbkNvbmZp
Z3VyYXRpb25QbGF0Zm9ybXMpID0gcHJlU29sdXRpb24iCisgICAgaW5kZW50X3B1c2gKKyAgICBJ
RlNfYmFrPSR7SUZTfQorICAgIElGUz0kJ1xyJyQnXG4nCisgICAgaWYgWyAiJG1peGVkX3BsYXRm
b3JtcyIgIT0gIiIgXTsgdGhlbgorICAgICAgICBjb25maWdfbGlzdD0iCitSZWxlYXNlfE1peGVk
IFBsYXRmb3JtcworRGVidWd8TWl4ZWQgUGxhdGZvcm1zIgorICAgIGZpCisgICAgZm9yIGNvbmZp
ZyBpbiAke2NvbmZpZ19saXN0fTsgZG8KKyAgICAgICAgZWNobyAiJHtpbmRlbnR9JGNvbmZpZyA9
ICRjb25maWciCisgICAgZG9uZQorICAgIElGUz0ke0lGU19iYWt9CisgICAgaW5kZW50X3BvcAor
ICAgIGVjaG8gIiR7aW5kZW50fUVuZEdsb2JhbFNlY3Rpb24iCisKKyAgICAjCisgICAgIyBQcm9q
ZWN0IENvbmZpZ3VyYXRpb24gUGxhdGZvcm1zCisgICAgIworICAgIGVjaG8gIiR7aW5kZW50fUds
b2JhbFNlY3Rpb24oUHJvamVjdENvbmZpZ3VyYXRpb25QbGF0Zm9ybXMpID0gcG9zdFNvbHV0aW9u
IgorICAgIGluZGVudF9wdXNoCisgICAgZm9yIHByb2ogaW4gJHtwcm9qX2xpc3R9OyBkbworICAg
ICAgICBldmFsICJsb2NhbCBwcm9qX2d1aWQ9XCR7JHtwcm9qfV9ndWlkfSIKKyAgICAgICAgZXZh
bCAibG9jYWwgcHJval9jb25maWdfbGlzdD1cJHske3Byb2p9X2NvbmZpZ19saXN0fSIKKyAgICAg
ICAgSUZTPSQnXHInJCdcbicKKyAgICAgICAgZm9yIGNvbmZpZyBpbiAke3Byb2pfY29uZmlnX2xp
c3R9OyBkbworICAgICAgICAgICAgaWYgWyAiJG1peGVkX3BsYXRmb3JtcyIgIT0gIiIgXTsgdGhl
bgorICAgICAgICAgICAgICAgIGxvY2FsIGM9JHtjb25maWclJXwqfQorICAgICAgICAgICAgICAg
IGVjaG8gIiR7aW5kZW50fSR7cHJval9ndWlkfS4ke2N9fE1peGVkIFBsYXRmb3Jtcy5BY3RpdmVD
ZmcgPSAke2NvbmZpZ30iCisgICAgICAgICAgICAgICAgZWNobyAiJHtpbmRlbnR9JHtwcm9qX2d1
aWR9LiR7Y318TWl4ZWQgUGxhdGZvcm1zLkJ1aWxkLjAgPSAke2NvbmZpZ30iCisgICAgICAgICAg
ICBlbHNlCisgICAgICAgICAgICAgICAgZWNobyAiJHtpbmRlbnR9JHtwcm9qX2d1aWR9LiR7Y29u
ZmlnfS5BY3RpdmVDZmcgPSAke2NvbmZpZ30iCisgICAgICAgICAgICAgICAgZWNobyAiJHtpbmRl
bnR9JHtwcm9qX2d1aWR9LiR7Y29uZmlnfS5CdWlsZC4wID0gJHtjb25maWd9IgorICAgICAgICAg
ICAgZmkKKworICAgICAgICBkb25lCisgICAgICAgIElGUz0ke0lGU19iYWt9CisgICAgZG9uZQor
ICAgIGluZGVudF9wb3AKKyAgICBlY2hvICIke2luZGVudH1FbmRHbG9iYWxTZWN0aW9uIgorCisg
ICAgIworICAgICMgU29sdXRpb24gUHJvcGVydGllcworICAgICMKKyAgICBlY2hvICIke2luZGVu
dH1HbG9iYWxTZWN0aW9uKFNvbHV0aW9uUHJvcGVydGllcykgPSBwcmVTb2x1dGlvbiIKKyAgICBp
bmRlbnRfcHVzaAorICAgIGVjaG8gIiR7aW5kZW50fUhpZGVTb2x1dGlvbk5vZGUgPSBGQUxTRSIK
KyAgICBpbmRlbnRfcG9wCisgICAgZWNobyAiJHtpbmRlbnR9RW5kR2xvYmFsU2VjdGlvbiIKKwor
ICAgIGluZGVudF9wb3AKKyAgICBlY2hvICJFbmRHbG9iYWwiCit9CisKK3Byb2Nlc3NfbWFrZWZp
bGUoKSB7CisgICAgSUZTX2Jhaz0ke0lGU30KKyAgICBJRlM9JCdccickJ1xuJworICAgIGxvY2Fs
IFRBQj0kJ1x0JworICAgIGNhdCA8PEVPRgorTVNCVUlMRF9UT09MIDo9IG1zYnVpbGQuZXhlCitm
b3VuZF9kZXZlbnYgOj0gXCQoc2hlbGwgd2hpY2ggXCQoTVNCVUlMRF9UT09MKSA+L2Rldi9udWxs
IDI+JjEgJiYgZWNobyB5ZXMpCisubm9kZXZlbnYub25jZToKKyR7VEFCfUBlY2hvICIgICogXCQo
TVNCVUlMRF9UT09MKSBub3QgZm91bmQgaW4gcGF0aC4iCiske1RBQn1AZWNobyAiICAqICIKKyR7
VEFCfUBlY2hvICIgICogWW91IHdpbGwgaGF2ZSB0byBidWlsZCBhbGwgY29uZmlndXJhdGlvbnMg
bWFudWFsbHkgdXNpbmcgdGhlIgorJHtUQUJ9QGVjaG8gIiAgKiBWaXN1YWwgU3R1ZGlvIElERS4g
VG8gYWxsb3cgbWFrZSB0byBidWlsZCB0aGVtIGF1dG9tYXRpY2FsbHksIgorJHtUQUJ9QGVjaG8g
IiAgKiBhZGQgdGhlIENvbW1vbjcvSURFIGRpcmVjdG9yeSBvZiB5b3VyIFZpc3VhbCBTdHVkaW8i
Ciske1RBQn1AZWNobyAiICAqIGluc3RhbGxhdGlvbiB0byB5b3VyIHBhdGgsIGVnOiIKKyR7VEFC
fUBlY2hvICIgICogICBDOlxQcm9ncmFtIEZpbGVzXE1pY3Jvc29mdCBWaXN1YWwgU3R1ZGlvIDEw
LjBcQ29tbW9uN1xJREUiCiske1RBQn1AZWNobyAiICAqICIKKyR7VEFCfUB0b3VjaCBcJEAKK0NM
RUFOLU9CSlMgKz0gXCQoaWYgXCQoZm91bmRfZGV2ZW52KSwsLm5vZGV2ZW52Lm9uY2UpCisKK0VP
RgorCisgICAgZm9yIHNsbl9jb25maWcgaW4gJHtjb25maWdfbGlzdH07IGRvCisgICAgICAgIGxv
Y2FsIGNvbmZpZz0ke3Nsbl9jb25maWclJXwqfQorICAgICAgICBsb2NhbCBwbGF0Zm9ybT0ke3Ns
bl9jb25maWcjIyp8fQorICAgICAgICBsb2NhbCBub3dzX3Nsbl9jb25maWc9YGVjaG8gJHNsbl9j
b25maWcgfCBzZWQgLWUgJ3MvW15hLXpBLVowLTldL18vZydgCisgICAgICAgIGNhdCA8PEVPRgor
QlVJTERfVEFSR0VUUyArPSBcJChpZiBcJChOT19MQVVOQ0hfREVWRU5WKSwsJG5vd3Nfc2xuX2Nv
bmZpZykKK2NsZWFuOjoKKyR7VEFCfXJtIC1yZiAiJHBsYXRmb3JtIi8iJGNvbmZpZyIKKy5QSE9O
WTogJG5vd3Nfc2xuX2NvbmZpZworaWZuZXEgKFwkKGZvdW5kX2RldmVudiksKQorJG5vd3Nfc2xu
X2NvbmZpZzogJG91dGZpbGUKKyR7VEFCfVwkKE1TQlVJTERfVE9PTCkgJG91dGZpbGUgLW0gLXQ6
QnVpbGQgXFwKKyR7VEFCfSR7VEFCfS1wOkNvbmZpZ3VyYXRpb249IiRjb25maWciIC1wOlBsYXRm
b3JtPSIkcGxhdGZvcm0iCitlbHNlCiskbm93c19zbG5fY29uZmlnOiAkb3V0ZmlsZSAubm9kZXZl
bnYub25jZQorJHtUQUJ9QGVjaG8gIiAgKiBTa2lwcGluZyBidWlsZCBvZiAkc2xuX2NvbmZpZyAo
XCQoTVNCVUlMRF9UT09MKSBub3QgaW4gcGF0aCkuIgorJHtUQUJ9QGVjaG8gIiAgKiAiCitlbmRp
ZgorCitFT0YKKyAgICBkb25lCisgICAgSUZTPSR7SUZTX2Jha30KK30KKworIyBQcm9jZXNzIGNv
bW1hbmQgbGluZQorb3V0ZmlsZT0vZGV2L3N0ZG91dAorZm9yIG9wdCBpbiAiJEAiOyBkbworICAg
IG9wdHZhbD0iJHtvcHQjKj19IgorICAgIGNhc2UgIiRvcHQiIGluCisgICAgLS1oZWxwfC1oKSBz
aG93X2hlbHAKKyAgICA7OworICAgIC0tb3V0PSopIG91dGZpbGU9IiR7b3B0dmFsfSI7IG1rb3V0
ZmlsZT0iJHtvcHR2YWx9Ii5taworICAgIDs7CisgICAgLS1kZXA9KikgZXZhbCAiJHtvcHR2YWwl
JToqfV9kZXBzPVwiXCR7JHtvcHR2YWwlJToqfV9kZXBzfSAke29wdHZhbCMjKjp9XCIiCisgICAg
OzsKKyAgICAtLXZlcj0qKQorICAgICAgdnNfdmVyPSIkb3B0dmFsIgorICAgICAgY2FzZSAkb3B0
dmFsIGluCisgICAgICAgIDE0KSB2c195ZWFyPTIwMTUgOzsKKyAgICAgICAgMTUpIHZzX3llYXI9
MjAxNyA7OworICAgICAgICAxNikgdnNfeWVhcj0yMDE5IDs7CisgICAgICAgICopIGRpZSBVbnJl
Y29nbml6ZWQgVmlzdWFsIFN0dWRpbyBWZXJzaW9uIGluICRvcHQgOzsKKyAgICAgIGVzYWMKKyAg
ICA7OworICAgIC0tdGFyZ2V0PSopIHRhcmdldD0iJHtvcHR2YWx9IgorICAgIDs7CisgICAgLSop
IGRpZV91bmtub3duICRvcHQKKyAgICA7OworICAgICopIGZpbGVfbGlzdFskeyNmaWxlX2xpc3Rb
QF19XT0iJG9wdCIKKyAgICBlc2FjCitkb25lCitvdXRmaWxlPSR7b3V0ZmlsZTotL2Rldi9zdGRv
dXR9Citta291dGZpbGU9JHtta291dGZpbGU6LS9kZXYvc3Rkb3V0fQorY2FzZSAiJHt2c192ZXJ9
IiBpbgorICAgIDFbNC02XSkKKyAgICAgICMgVlMgaGFzIHVzZWQgRm9ybWF0IFZlcnNpb24gMTIu
MDAgY29udGludW91c2x5IHNpbmNlIHZzMTEuCisgICAgICBzbG5fdmVycz0iMTIuMDAiCisgICAg
ICBzbG5fdmVyc19zdHI9IlZpc3VhbCBTdHVkaW8gJHt2c195ZWFyfSIKKyAgICA7OworZXNhYwor
c2Z4PXZjeHByb2oKKworZm9yIGYgaW4gIiR7ZmlsZV9saXN0W0BdfSI7IGRvCisgICAgcGFyc2Vf
cHJvamVjdCAkZgorZG9uZQorY2F0ICA+JHtvdXRmaWxlfSA8PEVPRgorTWljcm9zb2Z0IFZpc3Vh
bCBTdHVkaW8gU29sdXRpb24gRmlsZSwgRm9ybWF0IFZlcnNpb24gJHNsbl92ZXJzJHtFT0xET1N9
CisjICRzbG5fdmVyc19zdHIke0VPTERPU30KK0VPRgorZm9yIHByb2ogaW4gJHtwcm9qX2xpc3R9
OyBkbworICAgIHByb2Nlc3NfcHJvamVjdCAkcHJvaiA+PiR7b3V0ZmlsZX0KK2RvbmUKK3Byb2Nl
c3NfZ2xvYmFsID4+JHtvdXRmaWxlfQorcHJvY2Vzc19tYWtlZmlsZSA+JHtta291dGZpbGV9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L2J1aWxkL21ha2UvZ2VuX21zdnNfdmN4cHJvai5zaCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvYnVpbGQvbWFrZS9nZW5fbXN2c192Y3hwcm9qLnNoCm5ldyBmaWxlIG1vZGUgMTAw
NzU1CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJiMWMz
MWQyMzBkYTM4ZTYxZGY1OWI3YTQwZDdiOGRhYTc1N2M5ZmIKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L2J1aWxkL21ha2UvZ2VuX21zdnNfdmN4cHJvai5zaApAQCAtMCwwICsxLDQ4NSBA
QAorIyEvYmluL2Jhc2gKKyMjCisjIyAgQ29weXJpZ2h0IChjKSAyMDEzIFRoZSBXZWJNIHByb2pl
Y3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyMjCisjIyAgVXNlIG9mIHRoaXMgc291
cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZQorIyMgIHRoYXQgY2Fu
IGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZQor
IyMgIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBncmFu
dCBjYW4gYmUgZm91bmQKKyMjICBpbiB0aGUgZmlsZSBQQVRFTlRTLiAgQWxsIGNvbnRyaWJ1dGlu
ZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisjIyAgYmUgZm91bmQgaW4gdGhlIEFVVEhPUlMgZmlsZSBp
biB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisjIworCitzZWxmPSQwCitzZWxmX2Jhc2Vu
YW1lPSR7c2VsZiMjKi99CitzZWxmX2Rpcm5hbWU9JChkaXJuYW1lICIkMCIpCisKKy4gIiRzZWxm
X2Rpcm5hbWUvbXN2c19jb21tb24uc2gifHwgZXhpdCAxMjcKKworc2hvd19oZWxwKCkgeworICAg
IGNhdCA8PEVPRgorVXNhZ2U6ICR7c2VsZl9iYXNlbmFtZX0gLS1uYW1lPXByb2puYW1lIFtvcHRp
b25zXSBmaWxlMSBbZmlsZTIgLi4uXQorCitUaGlzIHNjcmlwdCBnZW5lcmF0ZXMgYSBWaXN1YWwg
U3R1ZGlvIHByb2plY3QgZmlsZSBmcm9tIGEgbGlzdCBvZiBzb3VyY2UKK2NvZGUgZmlsZXMuCisK
K09wdGlvbnM6CisgICAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgIFByaW50IHRoaXMgbWVz
c2FnZQorICAgIC0tZXhlICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSBhIHByb2plY3Qg
Zm9yIGJ1aWxkaW5nIGFuIEFwcGxpY2F0aW9uCisgICAgLS1saWIgICAgICAgICAgICAgICAgICAg
ICAgIEdlbmVyYXRlIGEgcHJvamVjdCBmb3IgY3JlYXRpbmcgYSBzdGF0aWMgbGlicmFyeQorICAg
IC0tZGxsICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSBhIHByb2plY3QgZm9yIGNyZWF0
aW5nIGEgZGxsCisgICAgLS1zdGF0aWMtY3J0ICAgICAgICAgICAgICAgIFVzZSB0aGUgc3RhdGlj
IEMgcnVudGltZSAoL01UKQorICAgIC0tZW5hYmxlLXdlcnJvciAgICAgICAgICAgICBUcmVhdCB3
YXJuaW5ncyBhcyBlcnJvcnMgKC9XWCkKKyAgICAtLXRhcmdldD1pc2Etb3MtY2MgICAgICAgICAg
VGFyZ2V0IHNwZWNpZmllciAocmVxdWlyZWQpCisgICAgLS1vdXQ9ZmlsZW5hbWUgICAgICAgICAg
ICAgIFdyaXRlIG91dHB1dCB0byBhIGZpbGUgW3N0ZG91dF0KKyAgICAtLW5hbWU9cHJvamVjdF9u
YW1lICAgICAgICAgTmFtZSBvZiB0aGUgcHJvamVjdCAocmVxdWlyZWQpCisgICAgLS1wcm9qLWd1
aWQ9R1VJRCAgICAgICAgICAgIEdVSUQgdG8gdXNlIGZvciB0aGUgcHJvamVjdAorICAgIC0tbW9k
dWxlLWRlZj1maWxlbmFtZSAgICAgICBGaWxlIGNvbnRhaW5pbmcgZXhwb3J0IGRlZmluaXRpb25z
IChmb3IgRExMcykKKyAgICAtLXZlcj12ZXJzaW9uICAgICAgICAgICAgICAgVmVyc2lvbiAoMTQt
MTYpIG9mIHZpc3VhbCBzdHVkaW8gdG8gZ2VuZXJhdGUgZm9yCisgICAgLS1zcmMtcGF0aC1iYXJl
PWRpciAgICAgICAgIFBhdGggdG8gcm9vdCBvZiBzb3VyY2UgdHJlZQorICAgIC1JcGF0aC90by9p
bmNsdWRlICAgICAgICAgICBBZGRpdGlvbmFsIGluY2x1ZGUgZGlyZWN0b3JpZXMKKyAgICAtREZM
QUdbPXZhbHVlXSAgICAgICAgICAgICAgUHJlcHJvY2Vzc29yIG1hY3JvcyB0byBkZWZpbmUKKyAg
ICAtTHBhdGgvdG8vbGliICAgICAgICAgICAgICAgQWRkaXRpb25hbCBsaWJyYXJ5IHNlYXJjaCBw
YXRocworICAgIC1sbGlibmFtZSAgICAgICAgICAgICAgICAgICBMaWJyYXJ5IHRvIGxpbmsgYWdh
aW5zdAorRU9GCisgICAgZXhpdCAxCit9CisKK3RhZ19jb250ZW50KCkgeworICAgIGxvY2FsIHRh
Zz0kMQorICAgIGxvY2FsIGNvbnRlbnQ9JDIKKyAgICBzaGlmdAorICAgIHNoaWZ0CisgICAgaWYg
WyAkIyAtbmUgMCBdOyB0aGVuCisgICAgICAgIGVjaG8gIiR7aW5kZW50fTwke3RhZ30iCisgICAg
ICAgIGluZGVudF9wdXNoCisgICAgICAgIHRhZ19hdHRyaWJ1dGVzICIkQCIKKyAgICAgICAgZWNo
byAiJHtpbmRlbnR9PiR7Y29udGVudH08LyR7dGFnfT4iCisgICAgICAgIGluZGVudF9wb3AKKyAg
ICBlbHNlCisgICAgICAgIGVjaG8gIiR7aW5kZW50fTwke3RhZ30+JHtjb250ZW50fTwvJHt0YWd9
PiIKKyAgICBmaQorfQorCitnZW5lcmF0ZV9maWx0ZXIoKSB7CisgICAgbG9jYWwgbmFtZT0kMQor
ICAgIGxvY2FsIHBhdHM9JDIKKyAgICBsb2NhbCBmaWxlX2xpc3Rfc3oKKyAgICBsb2NhbCBpCisg
ICAgbG9jYWwgZgorICAgIGxvY2FsIHNhdmVJRlM9IiRJRlMiCisgICAgbG9jYWwgcGFjaworICAg
IGVjaG8gImdlbmVyYXRpbmcgZmlsdGVyICckbmFtZScgZnJvbSAkeyNmaWxlX2xpc3RbQF19IGZp
bGVzIiA+JjIKKyAgICBJRlM9KgorCisgICAgZmlsZV9saXN0X3N6PSR7I2ZpbGVfbGlzdFtAXX0K
KyAgICBmb3IgaSBpbiAkeyFmaWxlX2xpc3RbQF19OyBkbworICAgICAgICBmPSR7ZmlsZV9saXN0
W2ldfQorICAgICAgICBmb3IgcGF0IGluICR7cGF0cy8vOy8kSUZTfTsgZG8KKyAgICAgICAgICAg
IGlmIFsgIiR7ZiMjKi59IiA9PSAiJHBhdCIgXTsgdGhlbgorICAgICAgICAgICAgICAgIHVuc2V0
IGZpbGVfbGlzdFtpXQorCisgICAgICAgICAgICAgICAgb2JqZj0kKGVjaG8gJHtmJS4qfS5vYmog
XAorICAgICAgICAgICAgICAgICAgICAgICB8IHNlZCAtZSAicywkc3JjX3BhdGhfYmFyZSwsIiBc
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC1lICdzL15bXC4vXVwrLy9nJyAtZSAncyxb
Oi8gXSxfLGcnKQorCisgICAgICAgICAgICAgICAgaWYgKFsgIiRwYXQiID09ICJhc20iIF0gfHwg
WyAiJHBhdCIgPT0gInMiIF0gfHwgWyAiJHBhdCIgPT0gIlMiIF0pICYmICR1c2VzX2FzbTsgdGhl
bgorICAgICAgICAgICAgICAgICAgICAjIEF2b2lkIG9iamVjdCBmaWxlIG5hbWUgY29sbGlzaW9u
cywgaS5lLiB2cHhfY29uZmlnLmMgYW5kCisgICAgICAgICAgICAgICAgICAgICMgdnB4X2NvbmZp
Zy5hc20gcHJvZHVjZSB0aGUgc2FtZSBvYmplY3QgZmlsZSB3aXRob3V0CisgICAgICAgICAgICAg
ICAgICAgICMgdGhpcyBhZGRpdGlvbmFsIHN1ZmZpeC4KKyAgICAgICAgICAgICAgICAgICAgb2Jq
Zj0ke29iamYlLm9ian1fYXNtLm9iagorICAgICAgICAgICAgICAgICAgICBvcGVuX3RhZyBDdXN0
b21CdWlsZCBcCisgICAgICAgICAgICAgICAgICAgICAgICBJbmNsdWRlPSIkZiIKKyAgICAgICAg
ICAgICAgICAgICAgZm9yIHBsYXQgaW4gIiR7cGxhdGZvcm1zW0BdfSI7IGRvCisgICAgICAgICAg
ICAgICAgICAgICAgICBmb3IgY2ZnIGluIERlYnVnIFJlbGVhc2U7IGRvCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdGFnX2NvbnRlbnQgTWVzc2FnZSAiQXNzZW1ibGluZyAlKEZpbGVuYW1l
KSUoRXh0ZW5zaW9uKSIgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25kaXRp
b249IidcJChDb25maWd1cmF0aW9uKXxcJChQbGF0Zm9ybSknPT0nJGNmZ3wkcGxhdCciCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdGFnX2NvbnRlbnQgQ29tbWFuZCAiJChldmFsIGVjaG8g
XCRhc21fJHtjZmd9X2NtZGxpbmUpIC1vIFwkKEludERpcikkb2JqZiIgXAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBDb25kaXRpb249IidcJChDb25maWd1cmF0aW9uKXxcJChQbGF0
Zm9ybSknPT0nJGNmZ3wkcGxhdCciCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFnX2Nv
bnRlbnQgT3V0cHV0cyAiXCQoSW50RGlyKSRvYmpmIiBcCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIENvbmRpdGlvbj0iJ1wkKENvbmZpZ3VyYXRpb24pfFwkKFBsYXRmb3JtKSc9PSck
Y2ZnfCRwbGF0JyIKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvbmUKKyAgICAgICAgICAgICAg
ICAgICAgZG9uZQorICAgICAgICAgICAgICAgICAgICBjbG9zZV90YWcgQ3VzdG9tQnVpbGQKKyAg
ICAgICAgICAgICAgICBlbGlmIFsgIiRwYXQiID09ICJjIiBdIHx8IFwKKyAgICAgICAgICAgICAg
ICAgICAgIFsgIiRwYXQiID09ICJjYyIgXSB8fCBbICIkcGF0IiA9PSAiY3BwIiBdOyB0aGVuCisg
ICAgICAgICAgICAgICAgICAgIG9wZW5fdGFnIENsQ29tcGlsZSBcCisgICAgICAgICAgICAgICAg
ICAgICAgICBJbmNsdWRlPSIkZiIKKyAgICAgICAgICAgICAgICAgICAgIyBTZXBhcmF0ZSBmaWxl
IG5hbWVzIHdpdGggQ29uZGl0aW9uPworICAgICAgICAgICAgICAgICAgICB0YWdfY29udGVudCBP
YmplY3RGaWxlTmFtZSAiXCQoSW50RGlyKSRvYmpmIgorICAgICAgICAgICAgICAgICAgICAjIENo
ZWNrIGZvciBBVlggYW5kIHR1cm4gaXQgb24gdG8gYXZvaWQgd2FybmluZ3MuCisgICAgICAgICAg
ICAgICAgICAgIGlmIFtbICRmID1+IGF2eC4/XC5jJCBdXTsgdGhlbgorICAgICAgICAgICAgICAg
ICAgICAgICAgdGFnX2NvbnRlbnQgQWRkaXRpb25hbE9wdGlvbnMgIi9hcmNoOkFWWCIKKyAgICAg
ICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgY2xvc2VfdGFnIENsQ29tcGls
ZQorICAgICAgICAgICAgICAgIGVsaWYgWyAiJHBhdCIgPT0gImgiIF0gOyB0aGVuCisgICAgICAg
ICAgICAgICAgICAgIHRhZyBDbEluY2x1ZGUgXAorICAgICAgICAgICAgICAgICAgICAgICAgSW5j
bHVkZT0iJGYiCisgICAgICAgICAgICAgICAgZWxpZiBbICIkcGF0IiA9PSAidmN4cHJvaiIgXSA7
IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgb3Blbl90YWcgUHJvamVjdFJlZmVyZW5jZSBcCisg
ICAgICAgICAgICAgICAgICAgICAgICBJbmNsdWRlPSIkZiIKKyAgICAgICAgICAgICAgICAgICAg
ZGVwZ3VpZD1gZ3JlcCBQcm9qZWN0R3VpZCAiJGYiIHwgc2VkICdzLC4qPC4qPlwoLipcKTwvLio+
LiosXDEsJ2AKKyAgICAgICAgICAgICAgICAgICAgdGFnX2NvbnRlbnQgUHJvamVjdCAiJGRlcGd1
aWQiCisgICAgICAgICAgICAgICAgICAgIHRhZ19jb250ZW50IFJlZmVyZW5jZU91dHB1dEFzc2Vt
Ymx5IGZhbHNlCisgICAgICAgICAgICAgICAgICAgIGNsb3NlX3RhZyBQcm9qZWN0UmVmZXJlbmNl
CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICB0YWcgTm9uZSBcCisg
ICAgICAgICAgICAgICAgICAgICAgICBJbmNsdWRlPSIkZiIKKyAgICAgICAgICAgICAgICBmaQor
CisgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgIGZpCisgICAgICAgIGRvbmUKKyAg
ICBkb25lCisKKyAgICBJRlM9IiRzYXZlSUZTIgorfQorCisjIFByb2Nlc3MgY29tbWFuZCBsaW5l
Cit1bnNldCB0YXJnZXQKK2ZvciBvcHQgaW4gIiRAIjsgZG8KKyAgICBvcHR2YWw9IiR7b3B0Iyo9
fSIKKyAgICBjYXNlICIkb3B0IiBpbgorICAgICAgICAtLWhlbHB8LWgpIHNob3dfaGVscAorICAg
ICAgICA7OworICAgICAgICAtLXRhcmdldD0qKSB0YXJnZXQ9IiR7b3B0dmFsfSIKKyAgICAgICAg
OzsKKyAgICAgICAgLS1vdXQ9Kikgb3V0ZmlsZT0iJG9wdHZhbCIKKyAgICAgICAgOzsKKyAgICAg
ICAgLS1uYW1lPSopIG5hbWU9IiR7b3B0dmFsfSIKKyAgICAgICAgOzsKKyAgICAgICAgLS1wcm9q
LWd1aWQ9KikgZ3VpZD0iJHtvcHR2YWx9IgorICAgICAgICA7OworICAgICAgICAtLW1vZHVsZS1k
ZWY9KikgbW9kdWxlX2RlZj0iJHtvcHR2YWx9IgorICAgICAgICA7OworICAgICAgICAtLWV4ZSkg
cHJval9raW5kPSJleGUiCisgICAgICAgIDs7CisgICAgICAgIC0tZGxsKSBwcm9qX2tpbmQ9ImRs
bCIKKyAgICAgICAgOzsKKyAgICAgICAgLS1saWIpIHByb2pfa2luZD0ibGliIgorICAgICAgICA7
OworICAgICAgICAtLXNyYy1wYXRoLWJhcmU9KikKKyAgICAgICAgICAgIHNyY19wYXRoX2JhcmU9
JChmaXhfcGF0aCAiJG9wdHZhbCIpCisgICAgICAgICAgICBzcmNfcGF0aF9iYXJlPSR7c3JjX3Bh
dGhfYmFyZSUvfQorICAgICAgICA7OworICAgICAgICAtLXN0YXRpYy1jcnQpIHVzZV9zdGF0aWNf
cnVudGltZT10cnVlCisgICAgICAgIDs7CisgICAgICAgIC0tZW5hYmxlLXdlcnJvcikgd2Vycm9y
PXRydWUKKyAgICAgICAgOzsKKyAgICAgICAgLS12ZXI9KikKKyAgICAgICAgICAgIHZzX3Zlcj0i
JG9wdHZhbCIKKyAgICAgICAgICAgIGNhc2UgIiRvcHR2YWwiIGluCisgICAgICAgICAgICAgICAg
MVs0LTZdKQorICAgICAgICAgICAgICAgIDs7CisgICAgICAgICAgICAgICAgKikgZGllIFVucmVj
b2duaXplZCBWaXN1YWwgU3R1ZGlvIFZlcnNpb24gaW4gJG9wdAorICAgICAgICAgICAgICAgIDs7
CisgICAgICAgICAgICBlc2FjCisgICAgICAgIDs7CisgICAgICAgIC1JKikKKyAgICAgICAgICAg
IG9wdD0ke29wdCMjLUl9CisgICAgICAgICAgICBvcHQ9JChmaXhfcGF0aCAiJG9wdCIpCisgICAg
ICAgICAgICBvcHQ9IiR7b3B0JS99IgorICAgICAgICAgICAgaW5jcz0iJHtpbmNzfSR7aW5jczor
O30mcXVvdDske29wdH0mcXVvdDsiCisgICAgICAgICAgICB5YXNtaW5jcz0iJHt5YXNtaW5jc30g
LUkmcXVvdDske29wdH0mcXVvdDsiCisgICAgICAgIDs7CisgICAgICAgIC1EKikgZGVmaW5lcz0i
JHtkZWZpbmVzfSR7ZGVmaW5lczorO30ke29wdCMjLUR9IgorICAgICAgICA7OworICAgICAgICAt
TCopICMgZnVkZ2UgLiB0byAkKE91dERpcikKKyAgICAgICAgICAgIGlmIFsgIiR7b3B0IyMtTH0i
ID09ICIuIiBdOyB0aGVuCisgICAgICAgICAgICAgICAgbGliZGlycz0iJHtsaWJkaXJzfSR7bGli
ZGlyczorO30mcXVvdDtcJChPdXREaXIpJnF1b3Q7IgorICAgICAgICAgICAgZWxzZQorICAgICAg
ICAgICAgICAgICAjIEFsc28gdHJ5IGRpcmVjdG9yaWVzIGZvciB0aGlzIHBsYXRmb3JtL2NvbmZp
Z3VyYXRpb24KKyAgICAgICAgICAgICAgICAgb3B0PSR7b3B0IyMtTH0KKyAgICAgICAgICAgICAg
ICAgb3B0PSQoZml4X3BhdGggIiRvcHQiKQorICAgICAgICAgICAgICAgICBsaWJkaXJzPSIke2xp
YmRpcnN9JHtsaWJkaXJzOis7fSZxdW90OyR7b3B0fSZxdW90OyIKKyAgICAgICAgICAgICAgICAg
bGliZGlycz0iJHtsaWJkaXJzfSR7bGliZGlyczorO30mcXVvdDske29wdH0vXCQoUGxhdGZvcm1O
YW1lKS9cJChDb25maWd1cmF0aW9uKSZxdW90OyIKKyAgICAgICAgICAgICAgICAgbGliZGlycz0i
JHtsaWJkaXJzfSR7bGliZGlyczorO30mcXVvdDske29wdH0vXCQoUGxhdGZvcm1OYW1lKSZxdW90
OyIKKyAgICAgICAgICAgIGZpCisgICAgICAgIDs7CisgICAgICAgIC1sKikgbGlicz0iJHtsaWJz
fSR7bGliczorIH0ke29wdCMjLWx9LmxpYiIKKyAgICAgICAgOzsKKyAgICAgICAgLSopIGRpZV91
bmtub3duICRvcHQKKyAgICAgICAgOzsKKyAgICAgICAgKikKKyAgICAgICAgICAgICMgVGhlIHBh
dGhzIGluIGZpbGVfbGlzdCBhcmUgZml4ZWQgb3V0c2lkZSBvZiB0aGUgbG9vcC4KKyAgICAgICAg
ICAgIGZpbGVfbGlzdFskeyNmaWxlX2xpc3RbQF19XT0iJG9wdCIKKyAgICAgICAgICAgIGNhc2Ug
IiRvcHQiIGluCisgICAgICAgICAgICAgICAgICouYXNtfCouW1NzXSkgdXNlc19hc209dHJ1ZQor
ICAgICAgICAgICAgICAgICA7OworICAgICAgICAgICAgZXNhYworICAgICAgICA7OworICAgIGVz
YWMKK2RvbmUKKworIyBNYWtlIG9uZSBjYWxsIHRvIGZpeF9wYXRoIGZvciBmaWxlX2xpc3QgdG8g
aW1wcm92ZSBwZXJmb3JtYW5jZS4KK2ZpeF9maWxlX2xpc3QgZmlsZV9saXN0CisKK291dGZpbGU9
JHtvdXRmaWxlOi0vZGV2L3N0ZG91dH0KK2d1aWQ9JHtndWlkOi1gZ2VuZXJhdGVfdXVpZGB9Cit1
c2VzX2FzbT0ke3VzZXNfYXNtOi1mYWxzZX0KKworWyAtbiAiJG5hbWUiIF0gfHwgZGllICJQcm9q
ZWN0IG5hbWUgKC0tbmFtZSkgbXVzdCBiZSBzcGVjaWZpZWQhIgorWyAtbiAiJHRhcmdldCIgXSB8
fCBkaWUgIlRhcmdldCAoLS10YXJnZXQpIG11c3QgYmUgc3BlY2lmaWVkISIKKworaWYgJHt1c2Vf
c3RhdGljX3J1bnRpbWU6LWZhbHNlfTsgdGhlbgorICAgIHJlbGVhc2VfcnVudGltZT1NdWx0aVRo
cmVhZGVkCisgICAgZGVidWdfcnVudGltZT1NdWx0aVRocmVhZGVkRGVidWcKKyAgICBsaWJfc2Z4
PW10CitlbHNlCisgICAgcmVsZWFzZV9ydW50aW1lPU11bHRpVGhyZWFkZWRETEwKKyAgICBkZWJ1
Z19ydW50aW1lPU11bHRpVGhyZWFkZWREZWJ1Z0RMTAorICAgIGxpYl9zZng9bWQKK2ZpCisKKyMg
Q2FsY3VsYXRlIGRlYnVnIGxpYiBuYW1lczogSWYgYSBsaWIgZW5kcyBpbiAke2xpYl9zZnh9Lmxp
YiwgdGhlbiByZW5hbWUKKyMgaXQgdG8gJHtsaWJfc2Z4fWQubGliLiBUaGlzIHByZWNsdWRlcyBs
aW5raW5nIHRvIHJlbGVhc2UgbGlicyBmcm9tIGEKKyMgZGVidWcgZXhlLCBzbyB0aGlzIG1heSBu
ZWVkIHRvIGJlIHJlZmFjdG9yZWQgbGF0ZXIuCitmb3IgbGliIGluICR7bGlic307IGRvCisgICAg
aWYgWyAiJGxpYiIgIT0gIiR7bGliJSR7bGliX3NmeH0ubGlifSIgXTsgdGhlbgorICAgICAgICBs
aWI9JHtsaWIlLmxpYn1kLmxpYgorICAgIGZpCisgICAgZGVidWdfbGlicz0iJHtkZWJ1Z19saWJz
fSR7ZGVidWdfbGliczorIH0ke2xpYn0iCitkb25lCitkZWJ1Z19saWJzPSR7ZGVidWdfbGlicy8v
IC87fQorbGlicz0ke2xpYnMvLyAvO30KKworCisjIExpc3Qgb2YgYWxsIHBsYXRmb3JtcyBzdXBw
b3J0ZWQgZm9yIHRoaXMgdGFyZ2V0CitjYXNlICIkdGFyZ2V0IiBpbgorICAgIHg4Nl82NCopCisg
ICAgICAgIHBsYXRmb3Jtc1swXT0ieDY0IgorICAgICAgICBhc21fRGVidWdfY21kbGluZT0ieWFz
bSAtWHZjIC1nIGN2OCAtZiB3aW42NCAke3lhc21pbmNzfSAmcXVvdDslKEZ1bGxQYXRoKSZxdW90
OyIKKyAgICAgICAgYXNtX1JlbGVhc2VfY21kbGluZT0ieWFzbSAtWHZjIC1mIHdpbjY0ICR7eWFz
bWluY3N9ICZxdW90OyUoRnVsbFBhdGgpJnF1b3Q7IgorICAgIDs7CisgICAgeDg2KikKKyAgICAg
ICAgcGxhdGZvcm1zWzBdPSJXaW4zMiIKKyAgICAgICAgYXNtX0RlYnVnX2NtZGxpbmU9Inlhc20g
LVh2YyAtZyBjdjggLWYgd2luMzIgJHt5YXNtaW5jc30gJnF1b3Q7JShGdWxsUGF0aCkmcXVvdDsi
CisgICAgICAgIGFzbV9SZWxlYXNlX2NtZGxpbmU9Inlhc20gLVh2YyAtZiB3aW4zMiAke3lhc21p
bmNzfSAmcXVvdDslKEZ1bGxQYXRoKSZxdW90OyIKKyAgICA7OworICAgIGFybTY0KikKKyAgICAg
ICAgcGxhdGZvcm1zWzBdPSJBUk02NCIKKyAgICAgICAgYXNtX0RlYnVnX2NtZGxpbmU9ImFybWFz
bTY0IC1ub2xvZ28gLW9sZGl0ICZxdW90OyUoRnVsbFBhdGgpJnF1b3Q7IgorICAgICAgICBhc21f
UmVsZWFzZV9jbWRsaW5lPSJhcm1hc202NCAtbm9sb2dvIC1vbGRpdCAmcXVvdDslKEZ1bGxQYXRo
KSZxdW90OyIKKyAgICA7OworICAgIGFybSopCisgICAgICAgIHBsYXRmb3Jtc1swXT0iQVJNIgor
ICAgICAgICBhc21fRGVidWdfY21kbGluZT0iYXJtYXNtIC1ub2xvZ28gLW9sZGl0ICZxdW90OyUo
RnVsbFBhdGgpJnF1b3Q7IgorICAgICAgICBhc21fUmVsZWFzZV9jbWRsaW5lPSJhcm1hc20gLW5v
bG9nbyAtb2xkaXQgJnF1b3Q7JShGdWxsUGF0aCkmcXVvdDsiCisgICAgOzsKKyAgICAqKSBkaWUg
IlVuc3VwcG9ydGVkIHRhcmdldCAkdGFyZ2V0ISIKKyAgICA7OworZXNhYworCitnZW5lcmF0ZV92
Y3hwcm9qKCkgeworICAgIGVjaG8gIjw/eG1sIHZlcnNpb249XCIxLjBcIiBlbmNvZGluZz1cInV0
Zi04XCI/PiIKKyAgICBvcGVuX3RhZyBQcm9qZWN0IFwKKyAgICAgICAgRGVmYXVsdFRhcmdldHM9
IkJ1aWxkIiBcCisgICAgICAgIFRvb2xzVmVyc2lvbj0iNC4wIiBcCisgICAgICAgIHhtbG5zPSJo
dHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL2RldmVsb3Blci9tc2J1aWxkLzIwMDMiIFwKKwor
ICAgIG9wZW5fdGFnIEl0ZW1Hcm91cCBcCisgICAgICAgIExhYmVsPSJQcm9qZWN0Q29uZmlndXJh
dGlvbnMiCisgICAgZm9yIHBsYXQgaW4gIiR7cGxhdGZvcm1zW0BdfSI7IGRvCisgICAgICAgIGZv
ciBjb25maWcgaW4gRGVidWcgUmVsZWFzZTsgZG8KKyAgICAgICAgICAgIG9wZW5fdGFnIFByb2pl
Y3RDb25maWd1cmF0aW9uIFwKKyAgICAgICAgICAgICAgICBJbmNsdWRlPSIkY29uZmlnfCRwbGF0
IgorICAgICAgICAgICAgdGFnX2NvbnRlbnQgQ29uZmlndXJhdGlvbiAkY29uZmlnCisgICAgICAg
ICAgICB0YWdfY29udGVudCBQbGF0Zm9ybSAkcGxhdAorICAgICAgICAgICAgY2xvc2VfdGFnIFBy
b2plY3RDb25maWd1cmF0aW9uCisgICAgICAgIGRvbmUKKyAgICBkb25lCisgICAgY2xvc2VfdGFn
IEl0ZW1Hcm91cAorCisgICAgb3Blbl90YWcgUHJvcGVydHlHcm91cCBcCisgICAgICAgIExhYmVs
PSJHbG9iYWxzIgorICAgICAgICB0YWdfY29udGVudCBQcm9qZWN0R3VpZCAieyR7Z3VpZH19Igor
ICAgICAgICB0YWdfY29udGVudCBSb290TmFtZXNwYWNlICR7bmFtZX0KKyAgICAgICAgdGFnX2Nv
bnRlbnQgS2V5d29yZCBNYW5hZ2VkQ1Byb2oKKyAgICAgICAgaWYgWyAkdnNfdmVyIC1nZSAxMiBd
ICYmIFsgIiR7cGxhdGZvcm1zWzBdfSIgPSAiQVJNIiBdOyB0aGVuCisgICAgICAgICAgICB0YWdf
Y29udGVudCBBcHBDb250YWluZXJBcHBsaWNhdGlvbiB0cnVlCisgICAgICAgICAgICAjIFRoZSBh
cHBsaWNhdGlvbiB0eXBlIGNhbiBiZSBvbmUgb2YgIldpbmRvd3MgU3RvcmUiLAorICAgICAgICAg
ICAgIyAiV2luZG93cyBQaG9uZSIgb3IgIldpbmRvd3MgUGhvbmUgU2lsdmVybGlnaHQiLiBUaGUK
KyAgICAgICAgICAgICMgYWN0dWFsIHZhbHVlIGRvZXNuJ3QgbWF0dGVyIGZyb20gdGhlIGxpYnZw
eCBwb2ludCBvZiB2aWV3LAorICAgICAgICAgICAgIyBzaW5jZSBhIHN0YXRpYyBsaWJyYXJ5IGJ1
aWx0IGZvciBvbmUgd29ya3Mgb24gdGhlIG90aGVycy4KKyAgICAgICAgICAgICMgVGhlIFBsYXRm
b3JtVG9vbHNldCBmaWVsZCBuZWVkcyB0byBiZSBzZXQgaW4gc3luYyB3aXRoIHRoaXM7CisgICAg
ICAgICAgICAjIGZvciBXaW5kb3dzIFN0b3JlIGFuZCBXaW5kb3dzIFBob25lIFNpbHZlcmxpZ2h0
IGl0IHNob3VsZCBiZQorICAgICAgICAgICAgIyB2MTIwIHdoaWxlIGl0IHNob3VsZCBiZSB2MTIw
X3dwODEgaWYgdGhlIHR5cGUgaXMgV2luZG93cyBQaG9uZS4KKyAgICAgICAgICAgIHRhZ19jb250
ZW50IEFwcGxpY2F0aW9uVHlwZSAiV2luZG93cyBTdG9yZSIKKyAgICAgICAgICAgIHRhZ19jb250
ZW50IEFwcGxpY2F0aW9uVHlwZVJldmlzaW9uIDguMQorICAgICAgICBmaQorICAgICAgICBpZiBb
ICIke3BsYXRmb3Jtc1swXX0iID0gIkFSTTY0IiBdOyB0aGVuCisgICAgICAgICAgICAjIFJlcXVp
cmUgdGhlIGZpcnN0IFZpc3VhbCBTdHVkaW8gdmVyc2lvbiB0byBoYXZlIEFSTTY0IHN1cHBvcnQu
CisgICAgICAgICAgICB0YWdfY29udGVudCBNaW5pbXVtVmlzdWFsU3R1ZGlvVmVyc2lvbiAxNS45
CisgICAgICAgIGZpCisgICAgICAgIGlmIFsgJHZzX3ZlciAtZXEgMTUgXSAmJiBbICIke3BsYXRm
b3Jtc1swXX0iID0gIkFSTTY0IiBdOyB0aGVuCisgICAgICAgICAgICAjIFNpbmNlIFZTIDE1IGRv
ZXMgbm90IGhhdmUgYSAndXNlIGxhdGVzdCBTREsgdmVyc2lvbicgZmFjaWxpdHksCisgICAgICAg
ICAgICAjIHNwZWNpZmljYWxseSByZXF1aXJlIHRoZSBjb250ZW1wb3JhbmVvdXMgU0RLIHdpdGgg
b2ZmaWNpYWwgQVJNNjQKKyAgICAgICAgICAgICMgc3VwcG9ydC4KKyAgICAgICAgICAgIHRhZ19j
b250ZW50IFdpbmRvd3NUYXJnZXRQbGF0Zm9ybVZlcnNpb24gMTAuMC4xNzc2My4wCisgICAgICAg
IGZpCisgICAgY2xvc2VfdGFnIFByb3BlcnR5R3JvdXAKKworICAgIHRhZyBJbXBvcnQgXAorICAg
ICAgICBQcm9qZWN0PSJcJChWQ1RhcmdldHNQYXRoKVxcTWljcm9zb2Z0LkNwcC5EZWZhdWx0LnBy
b3BzIgorCisgICAgZm9yIHBsYXQgaW4gIiR7cGxhdGZvcm1zW0BdfSI7IGRvCisgICAgICAgIGZv
ciBjb25maWcgaW4gUmVsZWFzZSBEZWJ1ZzsgZG8KKyAgICAgICAgICAgIG9wZW5fdGFnIFByb3Bl
cnR5R3JvdXAgXAorICAgICAgICAgICAgICAgIENvbmRpdGlvbj0iJ1wkKENvbmZpZ3VyYXRpb24p
fFwkKFBsYXRmb3JtKSc9PSckY29uZmlnfCRwbGF0JyIgXAorICAgICAgICAgICAgICAgIExhYmVs
PSJDb25maWd1cmF0aW9uIgorICAgICAgICAgICAgaWYgWyAiJHByb2pfa2luZCIgPSAiZXhlIiBd
OyB0aGVuCisgICAgICAgICAgICAgICAgdGFnX2NvbnRlbnQgQ29uZmlndXJhdGlvblR5cGUgQXBw
bGljYXRpb24KKyAgICAgICAgICAgIGVsaWYgWyAiJHByb2pfa2luZCIgPSAiZGxsIiBdOyB0aGVu
CisgICAgICAgICAgICAgICAgdGFnX2NvbnRlbnQgQ29uZmlndXJhdGlvblR5cGUgRHluYW1pY0xp
YnJhcnkKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICB0YWdfY29udGVudCBDb25m
aWd1cmF0aW9uVHlwZSBTdGF0aWNMaWJyYXJ5CisgICAgICAgICAgICBmaQorICAgICAgICAgICAg
aWYgWyAiJHZzX3ZlciIgPSAiMTQiIF07IHRoZW4KKyAgICAgICAgICAgICAgICB0YWdfY29udGVu
dCBQbGF0Zm9ybVRvb2xzZXQgdjE0MAorICAgICAgICAgICAgZmkKKyAgICAgICAgICAgIGlmIFsg
IiR2c192ZXIiID0gIjE1IiBdOyB0aGVuCisgICAgICAgICAgICAgICAgdGFnX2NvbnRlbnQgUGxh
dGZvcm1Ub29sc2V0IHYxNDEKKyAgICAgICAgICAgIGZpCisgICAgICAgICAgICBpZiBbICIkdnNf
dmVyIiA9ICIxNiIgXTsgdGhlbgorICAgICAgICAgICAgICAgIHRhZ19jb250ZW50IFBsYXRmb3Jt
VG9vbHNldCB2MTQyCisgICAgICAgICAgICBmaQorICAgICAgICAgICAgdGFnX2NvbnRlbnQgQ2hh
cmFjdGVyU2V0IFVuaWNvZGUKKyAgICAgICAgICAgIGlmIFsgIiRjb25maWciID0gIlJlbGVhc2Ui
IF07IHRoZW4KKyAgICAgICAgICAgICAgICB0YWdfY29udGVudCBXaG9sZVByb2dyYW1PcHRpbWl6
YXRpb24gdHJ1ZQorICAgICAgICAgICAgZmkKKyAgICAgICAgICAgIGNsb3NlX3RhZyBQcm9wZXJ0
eUdyb3VwCisgICAgICAgIGRvbmUKKyAgICBkb25lCisKKyAgICB0YWcgSW1wb3J0IFwKKyAgICAg
ICAgUHJvamVjdD0iXCQoVkNUYXJnZXRzUGF0aClcXE1pY3Jvc29mdC5DcHAucHJvcHMiCisKKyAg
ICBvcGVuX3RhZyBJbXBvcnRHcm91cCBcCisgICAgICAgIExhYmVsPSJQcm9wZXJ0eVNoZWV0cyIK
KyAgICAgICAgdGFnIEltcG9ydCBcCisgICAgICAgICAgICBQcm9qZWN0PSJcJChVc2VyUm9vdERp
cilcXE1pY3Jvc29mdC5DcHAuXCQoUGxhdGZvcm0pLnVzZXIucHJvcHMiIFwKKyAgICAgICAgICAg
IENvbmRpdGlvbj0iZXhpc3RzKCdcJChVc2VyUm9vdERpcilcXE1pY3Jvc29mdC5DcHAuXCQoUGxh
dGZvcm0pLnVzZXIucHJvcHMnKSIgXAorICAgICAgICAgICAgTGFiZWw9IkxvY2FsQXBwRGF0YVBs
YXRmb3JtIgorICAgIGNsb3NlX3RhZyBJbXBvcnRHcm91cAorCisgICAgdGFnIFByb3BlcnR5R3Jv
dXAgXAorICAgICAgICBMYWJlbD0iVXNlck1hY3JvcyIKKworICAgIGZvciBwbGF0IGluICIke3Bs
YXRmb3Jtc1tAXX0iOyBkbworICAgICAgICBwbGF0X25vX3dzPWBlY2hvICRwbGF0IHwgc2VkICdz
L1teQS1aYS16MC05X10vXy9nJ2AKKyAgICAgICAgZm9yIGNvbmZpZyBpbiBEZWJ1ZyBSZWxlYXNl
OyBkbworICAgICAgICAgICAgb3Blbl90YWcgUHJvcGVydHlHcm91cCBcCisgICAgICAgICAgICAg
ICAgQ29uZGl0aW9uPSInXCQoQ29uZmlndXJhdGlvbil8XCQoUGxhdGZvcm0pJz09JyRjb25maWd8
JHBsYXQnIgorICAgICAgICAgICAgdGFnX2NvbnRlbnQgT3V0RGlyICJcJChTb2x1dGlvbkRpcikk
cGxhdF9ub193c1xcXCQoQ29uZmlndXJhdGlvbilcXCIKKyAgICAgICAgICAgIHRhZ19jb250ZW50
IEludERpciAiJHBsYXRfbm9fd3NcXFwkKENvbmZpZ3VyYXRpb24pXFwke25hbWV9XFwiCisgICAg
ICAgICAgICBpZiBbICIkcHJval9raW5kIiA9PSAibGliIiBdOyB0aGVuCisgICAgICAgICAgICAg
IGlmIFsgIiRjb25maWciID09ICJEZWJ1ZyIgXTsgdGhlbgorICAgICAgICAgICAgICAgIGNvbmZp
Z19zdWZmaXg9ZAorICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgY29uZmlnX3N1
ZmZpeD0iIgorICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICB0YWdfY29udGVudCBUYXJn
ZXROYW1lICIke25hbWV9JHtsaWJfc2Z4fSR7Y29uZmlnX3N1ZmZpeH0iCisgICAgICAgICAgICBm
aQorICAgICAgICAgICAgY2xvc2VfdGFnIFByb3BlcnR5R3JvdXAKKyAgICAgICAgZG9uZQorICAg
IGRvbmUKKworICAgIGZvciBwbGF0IGluICIke3BsYXRmb3Jtc1tAXX0iOyBkbworICAgICAgICBm
b3IgY29uZmlnIGluIERlYnVnIFJlbGVhc2U7IGRvCisgICAgICAgICAgICBvcGVuX3RhZyBJdGVt
RGVmaW5pdGlvbkdyb3VwIFwKKyAgICAgICAgICAgICAgICBDb25kaXRpb249IidcJChDb25maWd1
cmF0aW9uKXxcJChQbGF0Zm9ybSknPT0nJGNvbmZpZ3wkcGxhdCciCisgICAgICAgICAgICBpZiBb
ICIkbmFtZSIgPT0gInZweCIgXTsgdGhlbgorICAgICAgICAgICAgICAgIGhvc3RwbGF0PSRwbGF0
CisgICAgICAgICAgICAgICAgaWYgWyAiJGhvc3RwbGF0IiA9PSAiQVJNIiBdOyB0aGVuCisgICAg
ICAgICAgICAgICAgICAgIGhvc3RwbGF0PVdpbjMyCisgICAgICAgICAgICAgICAgZmkKKyAgICAg
ICAgICAgIGZpCisgICAgICAgICAgICBvcGVuX3RhZyBDbENvbXBpbGUKKyAgICAgICAgICAgIGlm
IFsgIiRjb25maWciID0gIkRlYnVnIiBdOyB0aGVuCisgICAgICAgICAgICAgICAgb3B0PURpc2Fi
bGVkCisgICAgICAgICAgICAgICAgcnVudGltZT0kZGVidWdfcnVudGltZQorICAgICAgICAgICAg
ICAgIGN1cmxpYnM9JGRlYnVnX2xpYnMKKyAgICAgICAgICAgICAgICBkZWJ1Zz1fREVCVUcKKyAg
ICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBvcHQ9TWF4U3BlZWQKKyAgICAgICAgICAg
ICAgICBydW50aW1lPSRyZWxlYXNlX3J1bnRpbWUKKyAgICAgICAgICAgICAgICBjdXJsaWJzPSRs
aWJzCisgICAgICAgICAgICAgICAgdGFnX2NvbnRlbnQgRmF2b3JTaXplT3JTcGVlZCBTcGVlZAor
ICAgICAgICAgICAgICAgIGRlYnVnPU5ERUJVRworICAgICAgICAgICAgZmkKKyAgICAgICAgICAg
IGV4dHJhZGVmaW5lcz0iOyRkZWZpbmVzIgorICAgICAgICAgICAgdGFnX2NvbnRlbnQgT3B0aW1p
emF0aW9uICRvcHQKKyAgICAgICAgICAgIHRhZ19jb250ZW50IEFkZGl0aW9uYWxJbmNsdWRlRGly
ZWN0b3JpZXMgIiRpbmNzOyUoQWRkaXRpb25hbEluY2x1ZGVEaXJlY3RvcmllcykiCisgICAgICAg
ICAgICB0YWdfY29udGVudCBQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyAiV0lOMzI7JGRlYnVnO19D
UlRfU0VDVVJFX05PX1dBUk5JTkdTO19DUlRfU0VDVVJFX05PX0RFUFJFQ0FURSRleHRyYWRlZmlu
ZXM7JShQcmVwcm9jZXNzb3JEZWZpbml0aW9ucykiCisgICAgICAgICAgICB0YWdfY29udGVudCBS
dW50aW1lTGlicmFyeSAkcnVudGltZQorICAgICAgICAgICAgdGFnX2NvbnRlbnQgV2FybmluZ0xl
dmVsIExldmVsMworICAgICAgICAgICAgaWYgJHt3ZXJyb3I6LWZhbHNlfTsgdGhlbgorICAgICAg
ICAgICAgICAgIHRhZ19jb250ZW50IFRyZWF0V2FybmluZ0FzRXJyb3IgdHJ1ZQorICAgICAgICAg
ICAgZmkKKyAgICAgICAgICAgIGlmIFsgJHZzX3ZlciAtZ2UgMTEgXTsgdGhlbgorICAgICAgICAg
ICAgICAgICMgV2UgbmVlZCB0byBvdmVycmlkZSB0aGUgZGVmYXVsdHMgZm9yIHRoZXNlIHNldHRp
bmdzCisgICAgICAgICAgICAgICAgIyBpZiBBcHBDb250YWluZXJBcHBsaWNhdGlvbiBpcyBzZXQu
CisgICAgICAgICAgICAgICAgdGFnX2NvbnRlbnQgQ29tcGlsZUFzV2luUlQgZmFsc2UKKyAgICAg
ICAgICAgICAgICB0YWdfY29udGVudCBQcmVjb21waWxlZEhlYWRlciBOb3RVc2luZworICAgICAg
ICAgICAgICAgIHRhZ19jb250ZW50IFNETENoZWNrIGZhbHNlCisgICAgICAgICAgICBmaQorICAg
ICAgICAgICAgY2xvc2VfdGFnIENsQ29tcGlsZQorICAgICAgICAgICAgY2FzZSAiJHByb2pfa2lu
ZCIgaW4KKyAgICAgICAgICAgIGV4ZSkKKyAgICAgICAgICAgICAgICBvcGVuX3RhZyBMaW5rCisg
ICAgICAgICAgICAgICAgdGFnX2NvbnRlbnQgR2VuZXJhdGVEZWJ1Z0luZm9ybWF0aW9uIHRydWUK
KyAgICAgICAgICAgICAgICAjIENvbnNvbGUgaXMgdGhlIGRlZmF1bHQgbm9ybWFsbHksIGJ1dCBp
ZgorICAgICAgICAgICAgICAgICMgQXBwQ29udGFpbmVyQXBwbGljYXRpb24gaXMgc2V0LCB3ZSBu
ZWVkIHRvIG92ZXJyaWRlIGl0LgorICAgICAgICAgICAgICAgIHRhZ19jb250ZW50IFN1YlN5c3Rl
bSBDb25zb2xlCisgICAgICAgICAgICAgICAgY2xvc2VfdGFnIExpbmsKKyAgICAgICAgICAgICAg
ICA7OworICAgICAgICAgICAgZGxsKQorICAgICAgICAgICAgICAgIG9wZW5fdGFnIExpbmsKKyAg
ICAgICAgICAgICAgICB0YWdfY29udGVudCBHZW5lcmF0ZURlYnVnSW5mb3JtYXRpb24gdHJ1ZQor
ICAgICAgICAgICAgICAgIHRhZ19jb250ZW50IE1vZHVsZURlZmluaXRpb25GaWxlICRtb2R1bGVf
ZGVmCisgICAgICAgICAgICAgICAgY2xvc2VfdGFnIExpbmsKKyAgICAgICAgICAgICAgICA7Owor
ICAgICAgICAgICAgbGliKQorICAgICAgICAgICAgICAgIDs7CisgICAgICAgICAgICBlc2FjCisg
ICAgICAgICAgICBjbG9zZV90YWcgSXRlbURlZmluaXRpb25Hcm91cAorICAgICAgICBkb25lCisK
KyAgICBkb25lCisKKyAgICBvcGVuX3RhZyBJdGVtR3JvdXAKKyAgICBnZW5lcmF0ZV9maWx0ZXIg
IlNvdXJjZSBGaWxlcyIgICAiYztjYztjcHA7ZGVmO29kbDtpZGw7aHBqO2JhdDthc207YXNteDtz
O1MiCisgICAgY2xvc2VfdGFnIEl0ZW1Hcm91cAorICAgIG9wZW5fdGFnIEl0ZW1Hcm91cAorICAg
IGdlbmVyYXRlX2ZpbHRlciAiSGVhZGVyIEZpbGVzIiAgICJoO2htO2lubDtpbmM7eHNkIgorICAg
IGNsb3NlX3RhZyBJdGVtR3JvdXAKKyAgICBvcGVuX3RhZyBJdGVtR3JvdXAKKyAgICBnZW5lcmF0
ZV9maWx0ZXIgIkJ1aWxkIEZpbGVzIiAgICAibWsiCisgICAgY2xvc2VfdGFnIEl0ZW1Hcm91cAor
ICAgIG9wZW5fdGFnIEl0ZW1Hcm91cAorICAgIGdlbmVyYXRlX2ZpbHRlciAiUmVmZXJlbmNlcyIg
ICAgICJ2Y3hwcm9qIgorICAgIGNsb3NlX3RhZyBJdGVtR3JvdXAKKworICAgIHRhZyBJbXBvcnQg
XAorICAgICAgICBQcm9qZWN0PSJcJChWQ1RhcmdldHNQYXRoKVxcTWljcm9zb2Z0LkNwcC50YXJn
ZXRzIgorCisgICAgb3Blbl90YWcgSW1wb3J0R3JvdXAgXAorICAgICAgICBMYWJlbD0iRXh0ZW5z
aW9uVGFyZ2V0cyIKKyAgICBjbG9zZV90YWcgSW1wb3J0R3JvdXAKKworICAgIGNsb3NlX3RhZyBQ
cm9qZWN0CisKKyAgICAjIFRoaXMgbXVzdCBiZSBkb25lIGZyb20gd2l0aGluIHRoZSB7fSBzdWJz
aGVsbAorICAgIGVjaG8gIklnbm9yZWQgZmlsZXMgbGlzdCAoJHsjZmlsZV9saXN0W0BdfSBpdGVt
cykgaXM6IiA+JjIKKyAgICBmb3IgZiBpbiAiJHtmaWxlX2xpc3RbQF19IjsgZG8KKyAgICAgICAg
ZWNobyAiICAgICRmIiA+JjIKKyAgICBkb25lCit9CisKKyMgVGhpcyByZWdleHAgZG9lc24ndCBj
YXRjaCBtb3N0IG9mIHRoZSBzdHJpbmdzIGluIHRoZSB2Y3hwcm9qIGZvcm1hdCwKKyMgc2luY2Ug
dGhleSdyZSBsaWtlIDx0YWc+cGF0aDwvdGFnPiBpbnN0ZWFkIG9mIDx0YWcgYXR0cj0icGF0aCIg
Lz4KKyMgYXMgcHJldmlvdXNseS4gSXQgc3RpbGwgc2VlbXMgdG8gd29yayBvayBkZXNwaXRlIHRo
aXMuCitnZW5lcmF0ZV92Y3hwcm9qIHwKKyAgICBzZWQgIC1lICcvIi9zO1woW14gIl1cKS87XDFc
XDtnJyB8CisgICAgc2VkICAtZSAnL3htbG5zL3M7XFw7LztnJyA+ICR7b3V0ZmlsZX0KKworZXhp
dApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL2lvcy1JbmZvLnBsaXN0IGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC9idWlsZC9tYWtlL2lvcy1JbmZvLnBsaXN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQxNTdiMTFhMGQ1
MDNiY2U5Mjg2ZjA0NTJlNjZjNTY3NTYwZWU3M2MKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L2J1aWxkL21ha2UvaW9zLUluZm8ucGxpc3QKQEAgLTAsMCArMSwzNyBAQAorPD94bWwgdmVy
c2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzwhRE9DVFlQRSBwbGlzdCBQVUJMSUMgIi0v
L0FwcGxlLy9EVEQgUExJU1QgMS4wLy9FTiIgImh0dHA6Ly93d3cuYXBwbGUuY29tL0RURHMvUHJv
cGVydHlMaXN0LTEuMC5kdGQiPgorPHBsaXN0IHZlcnNpb249IjEuMCI+Cis8ZGljdD4KKwk8a2V5
PkNGQnVuZGxlRGV2ZWxvcG1lbnRSZWdpb248L2tleT4KKwk8c3RyaW5nPmVuPC9zdHJpbmc+CisJ
PGtleT5DRkJ1bmRsZUV4ZWN1dGFibGU8L2tleT4KKwk8c3RyaW5nPlZQWDwvc3RyaW5nPgorCTxr
ZXk+Q0ZCdW5kbGVJZGVudGlmaWVyPC9rZXk+CisJPHN0cmluZz5vcmcud2VibXByb2plY3QuVlBY
PC9zdHJpbmc+CisJPGtleT5DRkJ1bmRsZUluZm9EaWN0aW9uYXJ5VmVyc2lvbjwva2V5PgorCTxz
dHJpbmc+Ni4wPC9zdHJpbmc+CisJPGtleT5DRkJ1bmRsZU5hbWU8L2tleT4KKwk8c3RyaW5nPlZQ
WDwvc3RyaW5nPgorCTxrZXk+Q0ZCdW5kbGVQYWNrYWdlVHlwZTwva2V5PgorCTxzdHJpbmc+Rk1X
Szwvc3RyaW5nPgorCTxrZXk+Q0ZCdW5kbGVTaG9ydFZlcnNpb25TdHJpbmc8L2tleT4KKwk8c3Ry
aW5nPiR7VkVSU0lPTn08L3N0cmluZz4KKwk8a2V5PkNGQnVuZGxlU2lnbmF0dXJlPC9rZXk+CisJ
PHN0cmluZz4/Pz8/PC9zdHJpbmc+CisJPGtleT5DRkJ1bmRsZVN1cHBvcnRlZFBsYXRmb3Jtczwv
a2V5PgorCTxhcnJheT4KKwkJPHN0cmluZz5pUGhvbmVPUzwvc3RyaW5nPgorCTwvYXJyYXk+CisJ
PGtleT5DRkJ1bmRsZVZlcnNpb248L2tleT4KKwk8c3RyaW5nPiR7VkVSU0lPTn08L3N0cmluZz4K
Kwk8a2V5Pk1pbmltdW1PU1ZlcnNpb248L2tleT4KKwk8c3RyaW5nPiR7SU9TX1ZFUlNJT05fTUlO
fTwvc3RyaW5nPgorCTxrZXk+VUlEZXZpY2VGYW1pbHk8L2tleT4KKwk8YXJyYXk+CisJCTxpbnRl
Z2VyPjE8L2ludGVnZXI+CisJCTxpbnRlZ2VyPjI8L2ludGVnZXI+CisJPC9hcnJheT4KKwk8a2V5
PlZQWEZ1bGxWZXJzaW9uPC9rZXk+CisJPHN0cmluZz4ke0ZVTExWRVJTSU9OfTwvc3RyaW5nPgor
PC9kaWN0PgorPC9wbGlzdD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9pb3Ni
dWlsZC5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9pb3NidWlsZC5zaApuZXcgZmlsZSBtb2Rl
IDEwMDc1NQppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45
NzhmZmJiYjk4ODdjOGIwZjk0YjMwNDk1YjM0YWUwMDUxYmFkNGRhCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC9idWlsZC9tYWtlL2lvc2J1aWxkLnNoCkBAIC0wLDAgKzEsMzg0IEBACisj
IS9iaW4vc2gKKyMjCisjIyAgQ29weXJpZ2h0IChjKSAyMDE0IFRoZSBXZWJNIHByb2plY3QgYXV0
aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyMjCisjIyAgVXNlIG9mIHRoaXMgc291cmNlIGNv
ZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZQorIyMgIHRoYXQgY2FuIGJlIGZv
dW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZQorIyMgIHRy
ZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBncmFudCBjYW4g
YmUgZm91bmQKKyMjICBpbiB0aGUgZmlsZSBQQVRFTlRTLiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9q
ZWN0IGF1dGhvcnMgbWF5CisjIyAgYmUgZm91bmQgaW4gdGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUg
cm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisjIworIyMKKyMjIFRoaXMgc2NyaXB0IGdlbmVyYXRl
cyAnVlBYLmZyYW1ld29yaycuIEFuIGlPUyBhcHAgY2FuIGVuY29kZSBhbmQgZGVjb2RlIFZQeAor
IyMgdmlkZW8gYnkgaW5jbHVkaW5nICdWUFguZnJhbWV3b3JrJy4KKyMjCisjIyBSdW4gaW9zYnVp
bGQuc2ggdG8gY3JlYXRlICdWUFguZnJhbWV3b3JrJyBpbiB0aGUgY3VycmVudCBkaXJlY3Rvcnku
CisjIworc2V0IC1lCitkZXZudWxsPSc+IC9kZXYvbnVsbCAyPiYxJworCitCVUlMRF9ST09UPSJf
aW9zYnVpbGQiCitDT05GSUdVUkVfQVJHUz0iLS1kaXNhYmxlLWRvY3MKKyAgICAgICAgICAgICAg
ICAtLWRpc2FibGUtZXhhbXBsZXMKKyAgICAgICAgICAgICAgICAtLWRpc2FibGUtbGlieXV2Cisg
ICAgICAgICAgICAgICAgLS1kaXNhYmxlLXVuaXQtdGVzdHMiCitESVNUX0RJUj0iX2Rpc3QiCitG
UkFNRVdPUktfRElSPSJWUFguZnJhbWV3b3JrIgorRlJBTUVXT1JLX0xJQj0iVlBYLmZyYW1ld29y
ay9WUFgiCitIRUFERVJfRElSPSIke0ZSQU1FV09SS19ESVJ9L0hlYWRlcnMvdnB4IgorU0NSSVBU
X0RJUj0kKGRpcm5hbWUgIiQwIikKK0xJQlZQWF9TT1VSQ0VfRElSPSQoY2QgJHtTQ1JJUFRfRElS
fS8uLi8uLjsgcHdkKQorTElQTz0kKHhjcnVuIC1zZGsgaXBob25lb3Mke1NES30gLWZpbmQgbGlw
bykKK09SSUdfUFdEPSIkKHB3ZCkiCitBUk1fVEFSR0VUUz0iYXJtNjQtZGFyd2luLWdjYworICAg
ICAgICAgICAgIGFybXY3LWRhcndpbi1nY2MKKyAgICAgICAgICAgICBhcm12N3MtZGFyd2luLWdj
YyIKK1NJTV9UQVJHRVRTPSJ4ODYtaXBob25lc2ltdWxhdG9yLWdjYworICAgICAgICAgICAgIHg4
Nl82NC1pcGhvbmVzaW11bGF0b3ItZ2NjIgorT1NYX1RBUkdFVFM9Ing4Ni1kYXJ3aW4xNi1nY2MK
KyAgICAgICAgICAgICB4ODZfNjQtZGFyd2luMTYtZ2NjIgorVEFSR0VUUz0iJHtBUk1fVEFSR0VU
U30gJHtTSU1fVEFSR0VUU30iCisKKyMgQ29uZmlndXJlcyBmb3IgdGhlIHRhcmdldCBzcGVjaWZp
ZWQgYnkgJDEsIGFuZCBpbnZva2VzIG1ha2Ugd2l0aCB0aGUgZGlzdAorIyB0YXJnZXQgdXNpbmcg
JERJU1RfRElSIGFzIHRoZSBkaXN0cmlidXRpb24gb3V0cHV0IGRpcmVjdG9yeS4KK2J1aWxkX3Rh
cmdldCgpIHsKKyAgbG9jYWwgdGFyZ2V0PSIkMSIKKyAgbG9jYWwgb2xkX3B3ZD0iJChwd2QpIgor
ICBsb2NhbCB0YXJnZXRfc3BlY2lmaWNfZmxhZ3M9IiIKKworICB2bG9nICIqKipCdWlsZGluZyB0
YXJnZXQ6ICR7dGFyZ2V0fSoqKiIKKworICBjYXNlICIke3RhcmdldH0iIGluCisgICAgeDg2LSop
CisgICAgICB0YXJnZXRfc3BlY2lmaWNfZmxhZ3M9Ii0tZW5hYmxlLXBpYyIKKyAgICAgIHZsb2cg
IkVuYWJsZWQgUElDIGZvciAke3RhcmdldH0iCisgICAgICA7OworICBlc2FjCisKKyAgbWtkaXIg
IiR7dGFyZ2V0fSIKKyAgY2QgIiR7dGFyZ2V0fSIKKyAgZXZhbCAiJHtMSUJWUFhfU09VUkNFX0RJ
Un0vY29uZmlndXJlIiAtLXRhcmdldD0iJHt0YXJnZXR9IiBcCisgICAgJHtDT05GSUdVUkVfQVJH
U30gJHtFWFRSQV9DT05GSUdVUkVfQVJHU30gJHt0YXJnZXRfc3BlY2lmaWNfZmxhZ3N9IFwKKyAg
ICAke2Rldm51bGx9CisgIGV4cG9ydCBESVNUX0RJUgorICBldmFsIG1ha2UgZGlzdCAke2Rldm51
bGx9CisgIGNkICIke29sZF9wd2R9IgorCisgIHZsb2cgIioqKkRvbmUgYnVpbGRpbmcgdGFyZ2V0
OiAke3RhcmdldH0qKioiCit9CisKKyMgUmV0dXJucyB0aGUgcHJlcHJvY2Vzc29yIHN5bWJvbCBm
b3IgdGhlIHRhcmdldCBzcGVjaWZpZWQgYnkgJDEuCit0YXJnZXRfdG9fcHJlcHJvY19zeW1ib2wo
KSB7CisgIHRhcmdldD0iJDEiCisgIGNhc2UgIiR7dGFyZ2V0fSIgaW4KKyAgICBhcm02NC0qKQor
ICAgICAgZWNobyAiX19hYXJjaDY0X18iCisgICAgICA7OworICAgIGFybXY3LSopCisgICAgICBl
Y2hvICJfX0FSTV9BUkNIXzdBX18iCisgICAgICA7OworICAgIGFybXY3cy0qKQorICAgICAgZWNo
byAiX19BUk1fQVJDSF83U19fIgorICAgICAgOzsKKyAgICB4ODYtKikKKyAgICAgIGVjaG8gIl9f
aTM4Nl9fIgorICAgICAgOzsKKyAgICB4ODZfNjQtKikKKyAgICAgIGVjaG8gIl9feDg2XzY0X18i
CisgICAgICA7OworICAgICopCisgICAgICBlY2hvICIjZXJyb3IgJHt0YXJnZXR9IHVua25vd24v
dW5zdXBwb3J0ZWQiCisgICAgICByZXR1cm4gMQorICAgICAgOzsKKyAgZXNhYworfQorCisjIENy
ZWF0ZSBhIHZweF9jb25maWcuaCBzaGltIHRoYXQsIGJhc2VkIG9uIHByZXByb2Nlc3NvciBzZXR0
aW5ncyBmb3IgdGhlCisjIGN1cnJlbnQgdGFyZ2V0IENQVSwgaW5jbHVkZXMgdGhlIHJlYWwgdnB4
X2NvbmZpZy5oIGZvciB0aGUgY3VycmVudCB0YXJnZXQuCisjICQxIGlzIHRoZSBsaXN0IG9mIHRh
cmdldHMuCitjcmVhdGVfdnB4X2ZyYW1ld29ya19jb25maWdfc2hpbSgpIHsKKyAgbG9jYWwgdGFy
Z2V0cz0iJDEiCisgIGxvY2FsIGNvbmZpZ19maWxlPSIke0hFQURFUl9ESVJ9L3ZweF9jb25maWcu
aCIKKyAgbG9jYWwgcHJlcHJvY19zeW1ib2w9IiIKKyAgbG9jYWwgdGFyZ2V0PSIiCisgIGxvY2Fs
IGluY2x1ZGVfZ3VhcmQ9IlZQWF9GUkFNRVdPUktfSEVBREVSU19WUFhfVlBYX0NPTkZJR19IXyIK
KworICBsb2NhbCBmaWxlX2hlYWRlcj0iLyoKKyAqICBDb3B5cmlnaHQgKGMpICQoZGF0ZSArJVkp
IFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyAqCisgKiAg
VXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5z
ZQorICogIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qg
b2YgdGhlIHNvdXJjZQorICogIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHByb3Bl
cnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyAqICBpbiB0aGUgZmlsZSBQQVRFTlRTLiAg
QWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisgKiAgYmUgZm91bmQgaW4gdGhl
IEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisgKi8KKworLyog
R0VORVJBVEVEIEZJTEU6IERPIE5PVCBFRElUISAqLworCisjaWZuZGVmICR7aW5jbHVkZV9ndWFy
ZH0KKyNkZWZpbmUgJHtpbmNsdWRlX2d1YXJkfQorCisjaWYgZGVmaW5lZCIKKworICBwcmludGYg
IiVzIiAiJHtmaWxlX2hlYWRlcn0iID4gIiR7Y29uZmlnX2ZpbGV9IgorICBmb3IgdGFyZ2V0IGlu
ICR7dGFyZ2V0c307IGRvCisgICAgcHJlcHJvY19zeW1ib2w9JCh0YXJnZXRfdG9fcHJlcHJvY19z
eW1ib2wgIiR7dGFyZ2V0fSIpCisgICAgcHJpbnRmICIgJHtwcmVwcm9jX3N5bWJvbH1cbiIgPj4g
IiR7Y29uZmlnX2ZpbGV9IgorICAgIHByaW50ZiAiI2RlZmluZSBWUFhfRlJBTUVXT1JLX1RBUkdF
VCBcIiR7dGFyZ2V0fVwiXG4iID4+ICIke2NvbmZpZ19maWxlfSIKKyAgICBwcmludGYgIiNpbmNs
dWRlIFwiVlBYL3ZweC8ke3RhcmdldH0vdnB4X2NvbmZpZy5oXCJcbiIgPj4gIiR7Y29uZmlnX2Zp
bGV9IgorICAgIHByaW50ZiAiI2VsaWYgZGVmaW5lZCIgPj4gIiR7Y29uZmlnX2ZpbGV9IgorICAg
IG1rZGlyICIke0hFQURFUl9ESVJ9LyR7dGFyZ2V0fSIKKyAgICBjcCAtcCAiJHtCVUlMRF9ST09U
fS8ke3RhcmdldH0vdnB4X2NvbmZpZy5oIiAiJHtIRUFERVJfRElSfS8ke3RhcmdldH0iCisgIGRv
bmUKKworICAjIENvbnN1bWUgdGhlIGxhc3QgbGluZSBvZiBvdXRwdXQgZnJvbSB0aGUgbG9vcDog
V2UgZG9uJ3Qgd2FudCBpdC4KKyAgc2VkIC1pLmJhayAtZSAnJGQnICIke2NvbmZpZ19maWxlfSIK
KyAgcm0gIiR7Y29uZmlnX2ZpbGV9LmJhayIKKworICBwcmludGYgIiNlbmRpZlxuXG4iID4+ICIk
e2NvbmZpZ19maWxlfSIKKyAgcHJpbnRmICIjZW5kaWYgIC8vICR7aW5jbHVkZV9ndWFyZH0iID4+
ICIke2NvbmZpZ19maWxlfSIKK30KKworIyBWZXJpZmllcyB0aGF0ICRGUkFNRVdPUktfTElCIGZh
dCBsaWJyYXJ5IGNvbnRhaW5zIHJlcXVlc3RlZCBidWlsZHMuCit2ZXJpZnlfZnJhbWV3b3JrX3Rh
cmdldHMoKSB7CisgIGxvY2FsIHJlcXVlc3RlZF9jcHVzPSIiCisgIGxvY2FsIGNwdT0iIgorCisg
ICMgRXh0cmFjdCBDUFUgZnJvbSBmdWxsIHRhcmdldCBuYW1lLgorICBmb3IgdGFyZ2V0OyBkbwor
ICAgIGNwdT0iJHt0YXJnZXQlJS0qfSIKKyAgICBpZiBbICIke2NwdX0iID0gIng4NiIgXTsgdGhl
bgorICAgICAgIyBsaXBvIC1pbmZvIG91dHB1dHMgaTM4NiBmb3IgbGlidnB4IHg4NiB0YXJnZXRz
LgorICAgICAgY3B1PSJpMzg2IgorICAgIGZpCisgICAgcmVxdWVzdGVkX2NwdXM9IiR7cmVxdWVz
dGVkX2NwdXN9JHtjcHV9ICIKKyAgZG9uZQorCisgICMgR2V0IHRhcmdldCBDUFVzIHByZXNlbnQg
aW4gZnJhbWV3b3JrIGxpYnJhcnkuCisgIGxvY2FsIHRhcmdldHNfYnVpbHQ9JCgke0xJUE99IC1p
bmZvICR7RlJBTUVXT1JLX0xJQn0pCisKKyAgIyAkTElQTyAtaW5mbyBvdXRwdXRzIGEgc3RyaW5n
IGxpa2UgdGhlIGZvbGxvd2luZzoKKyAgIyAgIEFyY2hpdGVjdHVyZXMgaW4gdGhlIGZhdCBmaWxl
OiAkRlJBTUVXT1JLX0xJQiA8YXJjaGl0ZWN0dXJlcz4KKyAgIyBDYXB0dXJlIG9ubHkgdGhlIGFy
Y2hpdGVjdHVyZSBzdHJpbmdzLgorICB0YXJnZXRzX2J1aWx0PSR7dGFyZ2V0c19idWlsdCMjKjog
fQorCisgICMgU29ydCBDUFUgc3RyaW5ncyB0byBtYWtlIHRoZSBuZXh0IHN0ZXAgYSBzaW1wbGUg
c3RyaW5nIGNvbXBhcmUuCisgIGxvY2FsIGFjdHVhbD0kKGVjaG8gJHt0YXJnZXRzX2J1aWx0fSB8
IHRyICIgIiAiXG4iIHwgc29ydCB8IHRyICJcbiIgIiAiKQorICBsb2NhbCByZXF1ZXN0ZWQ9JChl
Y2hvICR7cmVxdWVzdGVkX2NwdXN9IHwgdHIgIiAiICJcbiIgfCBzb3J0IHwgdHIgIlxuIiAiICIp
CisKKyAgdmxvZyAiUmVxdWVzdGVkICR7RlJBTUVXT1JLX0xJQn0gQ1BVczogJHtyZXF1ZXN0ZWR9
IgorICB2bG9nICJBY3R1YWwgJHtGUkFNRVdPUktfTElCfSBDUFVzOiAke2FjdHVhbH0iCisKKyAg
aWYgWyAiJHtyZXF1ZXN0ZWR9IiAhPSAiJHthY3R1YWx9IiBdOyB0aGVuCisgICAgZWxvZyAiQWN0
dWFsICR7RlJBTUVXT1JLX0xJQn0gdGFyZ2V0cyBkbyBub3QgbWF0Y2ggcmVxdWVzdGVkIHRhcmdl
dCBsaXN0LiIKKyAgICBlbG9nICIgIFJlcXVlc3RlZCB0YXJnZXQgQ1BVczogJHtyZXF1ZXN0ZWR9
IgorICAgIGVsb2cgIiAgQWN0dWFsIHRhcmdldCBDUFVzOiAke2FjdHVhbH0iCisgICAgcmV0dXJu
IDEKKyAgZmkKK30KKworIyBDb25maWd1cmVzIGFuZCBidWlsZHMgZWFjaCB0YXJnZXQgc3BlY2lm
aWVkIGJ5ICQxLCBhbmQgdGhlbiBidWlsZHMKKyMgVlBYLmZyYW1ld29yay4KK2J1aWxkX2ZyYW1l
d29yaygpIHsKKyAgbG9jYWwgbGliX2xpc3Q9IiIKKyAgbG9jYWwgdGFyZ2V0cz0iJDEiCisgIGxv
Y2FsIHRhcmdldD0iIgorICBsb2NhbCB0YXJnZXRfZGlzdF9kaXI9IiIKKworICAjIENsZWFuIHVw
IGZyb20gcHJldmlvdXMgYnVpbGQocykuCisgIHJtIC1yZiAiJHtCVUlMRF9ST09UfSIgIiR7RlJB
TUVXT1JLX0RJUn0iCisKKyAgIyBDcmVhdGUgb3V0cHV0IGRpcnMuCisgIG1rZGlyIC1wICIke0JV
SUxEX1JPT1R9IgorICBta2RpciAtcCAiJHtIRUFERVJfRElSfSIKKworICBjZCAiJHtCVUlMRF9S
T09UfSIKKworICBmb3IgdGFyZ2V0IGluICR7dGFyZ2V0c307IGRvCisgICAgYnVpbGRfdGFyZ2V0
ICIke3RhcmdldH0iCisgICAgdGFyZ2V0X2Rpc3RfZGlyPSIke0JVSUxEX1JPT1R9LyR7dGFyZ2V0
fS8ke0RJU1RfRElSfSIKKyAgICBpZiBbICIke0VOQUJMRV9TSEFSRUR9IiA9ICJ5ZXMiIF07IHRo
ZW4KKyAgICAgIGxvY2FsIHN1ZmZpeD0iZHlsaWIiCisgICAgZWxzZQorICAgICAgbG9jYWwgc3Vm
Zml4PSJhIgorICAgIGZpCisgICAgbGliX2xpc3Q9IiR7bGliX2xpc3R9ICR7dGFyZ2V0X2Rpc3Rf
ZGlyfS9saWIvbGlidnB4LiR7c3VmZml4fSIKKyAgZG9uZQorCisgIGNkICIke09SSUdfUFdEfSIK
KworICAjIFRoZSBiYXNpYyBsaWJ2cHggQVBJIGluY2x1ZGVzIGFyZSBhbGwgdGhlIHNhbWU7IGp1
c3QgZ3JhYiB0aGUgbW9zdCByZWNlbnQKKyAgIyBzZXQuCisgIGNwIC1wICIke3RhcmdldF9kaXN0
X2Rpcn0iL2luY2x1ZGUvdnB4LyogIiR7SEVBREVSX0RJUn0iCisKKyAgIyBCdWlsZCB0aGUgZmF0
IGxpYnJhcnkuCisgICR7TElQT30gLWNyZWF0ZSAke2xpYl9saXN0fSAtb3V0cHV0ICR7RlJBTUVX
T1JLX0RJUn0vVlBYCisKKyAgIyBDcmVhdGUgdGhlIHZweF9jb25maWcuaCBzaGltIHRoYXQgYWxs
b3dzIHVzYWdlIG9mIHZweF9jb25maWcuaCBmcm9tCisgICMgd2l0aGluIFZQWC5mcmFtZXdvcmsu
CisgIGNyZWF0ZV92cHhfZnJhbWV3b3JrX2NvbmZpZ19zaGltICIke3RhcmdldHN9IgorCisgICMg
Q29weSBpbiB2cHhfdmVyc2lvbi5oLgorICBjcCAtcCAiJHtCVUlMRF9ST09UfS8ke3RhcmdldH0v
dnB4X3ZlcnNpb24uaCIgIiR7SEVBREVSX0RJUn0iCisKKyAgaWYgWyAiJHtFTkFCTEVfU0hBUkVE
fSIgPSAieWVzIiBdOyB0aGVuCisgICAgIyBBZGp1c3QgdGhlIGR5bGliJ3MgbmFtZSBzbyBkeW5h
bWljIGxpbmtpbmcgaW4gYXBwcyB3b3JrcyBhcyBleHBlY3RlZC4KKyAgICBpbnN0YWxsX25hbWVf
dG9vbCAtaWQgJ0BycGF0aC9WUFguZnJhbWV3b3JrL1ZQWCcgJHtGUkFNRVdPUktfRElSfS9WUFgK
KworICAgICMgQ29weSBpbiBJbmZvLnBsaXN0LgorICAgIGNhdCAiJHtTQ1JJUFRfRElSfS9pb3Mt
SW5mby5wbGlzdCIgXAorICAgICAgfCBzZWQgInMvXCR7RlVMTFZFUlNJT059LyR7RlVMTFZFUlNJ
T059L2ciIFwKKyAgICAgIHwgc2VkICJzL1wke1ZFUlNJT059LyR7VkVSU0lPTn0vZyIgXAorICAg
ICAgfCBzZWQgInMvXCR7SU9TX1ZFUlNJT05fTUlOfS8ke0lPU19WRVJTSU9OX01JTn0vZyIgXAor
ICAgICAgPiAiJHtGUkFNRVdPUktfRElSfS9JbmZvLnBsaXN0IgorICBmaQorCisgICMgQ29uZmly
bSBWUFguZnJhbWV3b3JrL1ZQWCBjb250YWlucyB0aGUgdGFyZ2V0cyByZXF1ZXN0ZWQuCisgIHZl
cmlmeV9mcmFtZXdvcmtfdGFyZ2V0cyAke3RhcmdldHN9CisKKyAgdmxvZyAiQ3JlYXRlZCBmYXQg
bGlicmFyeSAke0ZSQU1FV09SS19MSUJ9IGNvbnRhaW5pbmc6IgorICBmb3IgbGliIGluICR7bGli
X2xpc3R9OyBkbworICAgIHZsb2cgIiAgJChlY2hvICR7bGlifSB8IGF3ayAtRiAvICd7cHJpbnQg
JDIsICRORn0nKSIKKyAgZG9uZQorfQorCisjIFRyYXAgZnVuY3Rpb24uIENsZWFucyB1cCB0aGUg
c3VidHJlZSB1c2VkIHRvIGJ1aWxkIGFsbCB0YXJnZXRzIGNvbnRhaW5lZCBpbgorIyAkVEFSR0VU
Uy4KK2NsZWFudXAoKSB7CisgIGxvY2FsIHJlcz0kPworICBjZCAiJHtPUklHX1BXRH0iCisKKyAg
aWYgWyAkcmVzIC1uZSAwIF07IHRoZW4KKyAgICBlbG9nICJidWlsZCBleGl0ZWQgd2l0aCBlcnJv
ciAoJHJlcykiCisgIGZpCisKKyAgaWYgWyAiJHtQUkVTRVJWRV9CVUlMRF9PVVRQVVR9IiAhPSAi
eWVzIiBdOyB0aGVuCisgICAgcm0gLXJmICIke0JVSUxEX1JPT1R9IgorICBmaQorfQorCitwcmlu
dF9saXN0KCkgeworICBsb2NhbCBpbmRlbnQ9IiQxIgorICBzaGlmdAorICBsb2NhbCBsaXN0PSIk
QCIKKyAgZm9yIGVudHJ5IGluICR7bGlzdH07IGRvCisgICAgZWNobyAiJHtpbmRlbnR9JHtlbnRy
eX0iCisgIGRvbmUKK30KKworaW9zYnVpbGRfdXNhZ2UoKSB7CitjYXQgPDwgRU9GCisgIFVzYWdl
OiAkezAjIyovfSBbYXJndW1lbnRzXQorICAgIC0taGVscDogRGlzcGxheSB0aGlzIG1lc3NhZ2Ug
YW5kIGV4aXQuCisgICAgLS1lbmFibGUtc2hhcmVkOiBCdWlsZCBhIGR5bmFtaWMgZnJhbWV3b3Jr
IGZvciB1c2Ugb24gaU9TIDggb3IgbGF0ZXIuCisgICAgLS1leHRyYS1jb25maWd1cmUtYXJncyA8
YXJncz46IEV4dHJhIGFyZ3MgdG8gcGFzcyB3aGVuIGNvbmZpZ3VyaW5nIGxpYnZweC4KKyAgICAt
LW1hY29zeDogVXNlcyBkYXJ3aW4xNiB0YXJnZXRzIGluc3RlYWQgb2YgaXBob25lc2ltdWxhdG9y
IHRhcmdldHMgZm9yIHg4NgorICAgICAgICAgICAgICBhbmQgeDg2XzY0LiBBbGxvd3MgbGlua2lu
ZyB0byBmcmFtZXdvcmsgd2hlbiBidWlsZHMgdGFyZ2V0IE1hY09TWAorICAgICAgICAgICAgICBp
bnN0ZWFkIG9mIGlPUy4KKyAgICAtLXByZXNlcnZlLWJ1aWxkLW91dHB1dDogRG8gbm90IGRlbGV0
ZSB0aGUgYnVpbGQgZGlyZWN0b3J5LgorICAgIC0tc2hvdy1idWlsZC1vdXRwdXQ6IFNob3cgb3V0
cHV0IGZyb20gZWFjaCBsaWJyYXJ5IGJ1aWxkLgorICAgIC0tdGFyZ2V0cyA8dGFyZ2V0cz46IE92
ZXJyaWRlIGRlZmF1bHQgdGFyZ2V0IGxpc3QuIERlZmF1bHRzOgorJChwcmludF9saXN0ICIgICAg
ICAgICIgJHtUQVJHRVRTfSkKKyAgICAtLXRlc3QtbGluazogQ29uZmlybXMgYWxsIHRhcmdldHMg
Y2FuIGJlIGxpbmtlZC4gRnVuY3Rpb25hbGx5IGlkZW50aWNhbCB0bworICAgICAgICAgICAgICAg
ICBwYXNzaW5nIC0tZW5hYmxlLWV4YW1wbGVzIHZpYSAtLWV4dHJhLWNvbmZpZ3VyZS1hcmdzLgor
ICAgIC0tdmVyYm9zZTogT3V0cHV0IGluZm9ybWF0aW9uIGFib3V0IHRoZSBlbnZpcm9ubWVudCBh
bmQgZWFjaCBzdGFnZSBvZiB0aGUKKyAgICAgICAgICAgICAgIGJ1aWxkLgorRU9GCit9CisKK2Vs
b2coKSB7CisgIGVjaG8gIiR7MCMjKi99IGZhaWxlZCBiZWNhdXNlOiAkQCIgMT4mMgorfQorCit2
bG9nKCkgeworICBpZiBbICIke1ZFUkJPU0V9IiA9ICJ5ZXMiIF07IHRoZW4KKyAgICBlY2hvICIk
QCIKKyAgZmkKK30KKwordHJhcCBjbGVhbnVwIEVYSVQKKworIyBQYXJzZSB0aGUgY29tbWFuZCBs
aW5lLgord2hpbGUgWyAtbiAiJDEiIF07IGRvCisgIGNhc2UgIiQxIiBpbgorICAgIC0tZXh0cmEt
Y29uZmlndXJlLWFyZ3MpCisgICAgICBFWFRSQV9DT05GSUdVUkVfQVJHUz0iJDIiCisgICAgICBz
aGlmdAorICAgICAgOzsKKyAgICAtLWhlbHApCisgICAgICBpb3NidWlsZF91c2FnZQorICAgICAg
ZXhpdAorICAgICAgOzsKKyAgICAtLWVuYWJsZS1zaGFyZWQpCisgICAgICBFTkFCTEVfU0hBUkVE
PXllcworICAgICAgOzsKKyAgICAtLXByZXNlcnZlLWJ1aWxkLW91dHB1dCkKKyAgICAgIFBSRVNF
UlZFX0JVSUxEX09VVFBVVD15ZXMKKyAgICAgIDs7CisgICAgLS1zaG93LWJ1aWxkLW91dHB1dCkK
KyAgICAgIGRldm51bGw9CisgICAgICA7OworICAgIC0tdGVzdC1saW5rKQorICAgICAgRVhUUkFf
Q09ORklHVVJFX0FSR1M9IiR7RVhUUkFfQ09ORklHVVJFX0FSR1N9IC0tZW5hYmxlLWV4YW1wbGVz
IgorICAgICAgOzsKKyAgICAtLXRhcmdldHMpCisgICAgICBUQVJHRVRTPSIkMiIKKyAgICAgIHNo
aWZ0CisgICAgICA7OworICAgIC0tbWFjb3N4KQorICAgICAgVEFSR0VUUz0iJHtBUk1fVEFSR0VU
U30gJHtPU1hfVEFSR0VUU30iCisgICAgICA7OworICAgIC0tdmVyYm9zZSkKKyAgICAgIFZFUkJP
U0U9eWVzCisgICAgICA7OworICAgICopCisgICAgICBpb3NidWlsZF91c2FnZQorICAgICAgZXhp
dCAxCisgICAgICA7OworICBlc2FjCisgIHNoaWZ0Citkb25lCisKK2lmIFsgIiR7RU5BQkxFX1NI
QVJFRH0iID0gInllcyIgXTsgdGhlbgorICBDT05GSUdVUkVfQVJHUz0iLS1lbmFibGUtc2hhcmVk
ICR7Q09ORklHVVJFX0FSR1N9IgorZmkKKworRlVMTFZFUlNJT049JCgiJHtTQ1JJUFRfRElSfSIv
dmVyc2lvbi5zaCAtLWJhcmUgIiR7TElCVlBYX1NPVVJDRV9ESVJ9IikKK1ZFUlNJT049JChlY2hv
ICIke0ZVTExWRVJTSU9OfSIgfCBzZWQgLUUgJ3MvXnYoWzAtOV0rXC5bMC05XStcLlswLTldKyku
KiQvXDEvJykKKworaWYgWyAiJEVOQUJMRV9TSEFSRUQiID0gInllcyIgXTsgdGhlbgorICBJT1Nf
VkVSU0lPTl9PUFRJT05TPSItLWVuYWJsZS1zaGFyZWQiCisgIElPU19WRVJTSU9OX01JTj0iOC4w
IgorZWxzZQorICBJT1NfVkVSU0lPTl9PUFRJT05TPSIiCisgIElPU19WRVJTSU9OX01JTj0iNy4w
IgorZmkKKworaWYgWyAiJHtWRVJCT1NFfSIgPSAieWVzIiBdOyB0aGVuCitjYXQgPDwgRU9GCisg
IEJVSUxEX1JPT1Q9JHtCVUlMRF9ST09UfQorICBESVNUX0RJUj0ke0RJU1RfRElSfQorICBDT05G
SUdVUkVfQVJHUz0ke0NPTkZJR1VSRV9BUkdTfQorICBFWFRSQV9DT05GSUdVUkVfQVJHUz0ke0VY
VFJBX0NPTkZJR1VSRV9BUkdTfQorICBGUkFNRVdPUktfRElSPSR7RlJBTUVXT1JLX0RJUn0KKyAg
RlJBTUVXT1JLX0xJQj0ke0ZSQU1FV09SS19MSUJ9CisgIEhFQURFUl9ESVI9JHtIRUFERVJfRElS
fQorICBMSUJWUFhfU09VUkNFX0RJUj0ke0xJQlZQWF9TT1VSQ0VfRElSfQorICBMSVBPPSR7TElQ
T30KKyAgTUFLRUZMQUdTPSR7TUFLRUZMQUdTfQorICBPUklHX1BXRD0ke09SSUdfUFdEfQorICBQ
UkVTRVJWRV9CVUlMRF9PVVRQVVQ9JHtQUkVTRVJWRV9CVUlMRF9PVVRQVVR9CisgIFRBUkdFVFM9
IiQocHJpbnRfbGlzdCAiIiAke1RBUkdFVFN9KSIKKyAgRU5BQkxFX1NIQVJFRD0ke0VOQUJMRV9T
SEFSRUR9CisgIE9TWF9UQVJHRVRTPSIke09TWF9UQVJHRVRTfSIKKyAgU0lNX1RBUkdFVFM9IiR7
U0lNX1RBUkdFVFN9IgorICBTQ1JJUFRfRElSPSIke1NDUklQVF9ESVJ9IgorICBGVUxMVkVSU0lP
Tj0iJHtGVUxMVkVSU0lPTn0iCisgIFZFUlNJT049IiR7VkVSU0lPTn0iCisgIElPU19WRVJTSU9O
X01JTj0iJHtJT1NfVkVSU0lPTl9NSU59IgorRU9GCitmaQorCitidWlsZF9mcmFtZXdvcmsgIiR7
VEFSR0VUU30iCitlY2hvICJTdWNjZXNzZnVsbHkgYnVpbHQgJyR7RlJBTUVXT1JLX0RJUn0nIGZv
cjoiCitwcmludF9saXN0ICIiICR7VEFSR0VUU30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVp
bGQvbWFrZS9tc3ZzX2NvbW1vbi5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9tc3ZzX2NvbW1v
bi5zaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4yN2RkZjdmZDkxZDdmMzRkODdlNGRlOGUwYjlhMTg2MjhjYmIyZDFi
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL21zdnNfY29tbW9uLnNo
CkBAIC0wLDAgKzEsMTIzIEBACisjIS9iaW4vYmFzaAorIyMKKyMjICBDb3B5cmlnaHQgKGMpIDIw
MTQgVGhlIFdlYk0gcHJvamVjdCBhdXRob3JzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorIyMKKyMj
ICBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNl
bnNlCisjIyAgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9v
dCBvZiB0aGUgc291cmNlCisjIyAgdHJlZS4gQW4gYWRkaXRpb25hbCBpbnRlbGxlY3R1YWwgcHJv
cGVydHkgcmlnaHRzIGdyYW50IGNhbiBiZSBmb3VuZAorIyMgIGluIHRoZSBmaWxlIFBBVEVOVFMu
ICBBbGwgY29udHJpYnV0aW5nIHByb2plY3QgYXV0aG9ycyBtYXkKKyMjICBiZSBmb3VuZCBpbiB0
aGUgQVVUSE9SUyBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UgdHJlZS4KKyMjCisKK2lm
IFsgIiQodW5hbWUgLW8gMj4vZGV2L251bGwpIiA9ICJDeWd3aW4iIF0gXAorICAgJiYgY3lncGF0
aCAtLWhlbHAgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCisgICAgRklYUEFUSD0nY3lncGF0aCAtbScK
K2Vsc2UKKyAgICBGSVhQQVRIPSdlY2hvX3BhdGgnCitmaQorCitkaWUoKSB7CisgICAgZWNobyAi
JHtzZWxmX2Jhc2VuYW1lfTogJEAiID4mMgorICAgIGV4aXQgMQorfQorCitkaWVfdW5rbm93bigp
eworICAgIGVjaG8gIlVua25vd24gb3B0aW9uIFwiJDFcIi4iID4mMgorICAgIGVjaG8gIlNlZSAk
e3NlbGZfYmFzZW5hbWV9IC0taGVscCBmb3IgYXZhaWxhYmxlIG9wdGlvbnMuIiA+JjIKKyAgICBl
eGl0IDEKK30KKworZWNob19wYXRoKCkgeworICAgIGZvciBwYXRoOyBkbworICAgICAgICBlY2hv
ICIkcGF0aCIKKyAgICBkb25lCit9CisKKyMgT3V0cHV0IG9uZSwgcG9zc2libHkgY2hhbmdlZCBi
YXNlZCBvbiB0aGUgc3lzdGVtLCBwYXRoIHBlciBsaW5lLgorZml4X3BhdGgoKSB7CisgICAgJEZJ
WFBBVEggIiRAIgorfQorCisjIENvcnJlY3RzIHRoZSBwYXRocyBpbiBmaWxlX2xpc3QgaW4gb25l
IHBhc3MgZm9yIGVmZmljaWVuY3kuCisjICQxIGlzIHRoZSBuYW1lIG9mIHRoZSBhcnJheSB0byBi
ZSBtb2RpZmllZC4KK2ZpeF9maWxlX2xpc3QoKSB7CisgICAgaWYgWyAiJHtGSVhQQVRIfSIgPSAi
ZWNob19wYXRoIiBdIDsgdGhlbgorICAgICAgIyBXaGVuIHVzZWQgd2l0aCBlY2hvX3BhdGgsIGZp
eF9maWxlX2xpc3QgaXMgYSBuby1vcC4gQXZvaWQgd2FybmluZyBhYm91dAorICAgICAgIyB1bnN1
cHBvcnRlZCAnZGVjbGFyZSAtbicgd2hlbiBpdCBpcyBub3QgaW1wb3J0YW50LgorICAgICAgcmV0
dXJuIDAKKyAgICBlbGlmIFsgIiR7QkFTSF9WRVJTSU5GT30iIC1sdCA0IF0gOyB0aGVuCisgICAg
ICBlY2hvICJDeWd3aW4gcGF0aCBjb252ZXJzaW9uIGhhcyBmYWlsZWQuIFBsZWFzZSB1c2UgYSB2
ZXJzaW9uIG9mIGJhc2giCisgICAgICBlY2hvICJ3aGljaCBzdXBwb3J0cyBuYW1lcmVmICgtbiks
IGludHJvZHVjZWQgaW4gYmFzaCA0LjMiCisgICAgICByZXR1cm4gMQorICAgIGZpCisgICAgZGVj
bGFyZSAtbiBhcnJheV9yZWY9JDEKKyAgICBmaWxlcz0kKGZpeF9wYXRoICIke2FycmF5X3JlZltA
XX0iKQorICAgIGxvY2FsIElGUz0kJ1xuJworICAgIGFycmF5X3JlZj0oJGZpbGVzKQorfQorCitn
ZW5lcmF0ZV91dWlkKCkgeworICAgIGxvY2FsIGhleD0iMDEyMzQ1Njc4OUFCQ0RFRiIKKyAgICBs
b2NhbCBpCisgICAgbG9jYWwgdXVpZD0iIgorICAgIGxvY2FsIGoKKyAgICAjOTM5OTUzODAtODlC
RC00YjA0LTg4RUItNjI1RkJFNTJFQkZCCisgICAgZm9yICgoaT0wOyBpPDMyOyBpKyspKTsgZG8K
KyAgICAgICAgKCggaiA9ICRSQU5ET00gJSAxNiApKQorICAgICAgICB1dWlkPSIke3V1aWR9JHto
ZXg6JGo6MX0iCisgICAgZG9uZQorICAgIGVjaG8gIiR7dXVpZDowOjh9LSR7dXVpZDo4OjR9LSR7
dXVpZDoxMjo0fS0ke3V1aWQ6MTY6NH0tJHt1dWlkOjIwOjEyfSIKK30KKworaW5kZW50MT0iICAg
ICIKK2luZGVudD0iIgoraW5kZW50X3B1c2goKSB7CisgICAgaW5kZW50PSIke2luZGVudH0ke2lu
ZGVudDF9IgorfQoraW5kZW50X3BvcCgpIHsKKyAgICBpbmRlbnQ9IiR7aW5kZW50JSR7aW5kZW50
MX19IgorfQorCit0YWdfYXR0cmlidXRlcygpIHsKKyAgICBmb3Igb3B0IGluICIkQCI7IGRvCisg
ICAgICAgIG9wdHZhbD0iJHtvcHQjKj19IgorICAgICAgICBbIC1uICIke29wdHZhbH0iIF0gfHwK
KyAgICAgICAgICAgIGRpZSAiTWlzc2luZyBhdHRyaWJ1dGUgdmFsdWUgaW4gJyRvcHQnIHdoaWxl
IGdlbmVyYXRpbmcgJHRhZyB0YWciCisgICAgICAgIGVjaG8gIiR7aW5kZW50fSR7b3B0JSU9Kn09
XCIke29wdHZhbH1cIiIKKyAgICBkb25lCit9CisKK29wZW5fdGFnKCkgeworICAgIGxvY2FsIHRh
Zz0kMQorICAgIHNoaWZ0CisgICAgaWYgWyAkIyAtbmUgMCBdOyB0aGVuCisgICAgICAgIGVjaG8g
IiR7aW5kZW50fTwke3RhZ30iCisgICAgICAgIGluZGVudF9wdXNoCisgICAgICAgIHRhZ19hdHRy
aWJ1dGVzICIkQCIKKyAgICAgICAgZWNobyAiJHtpbmRlbnR9PiIKKyAgICBlbHNlCisgICAgICAg
IGVjaG8gIiR7aW5kZW50fTwke3RhZ30+IgorICAgICAgICBpbmRlbnRfcHVzaAorICAgIGZpCit9
CisKK2Nsb3NlX3RhZygpIHsKKyAgICBsb2NhbCB0YWc9JDEKKyAgICBpbmRlbnRfcG9wCisgICAg
ZWNobyAiJHtpbmRlbnR9PC8ke3RhZ30+IgorfQorCit0YWcoKSB7CisgICAgbG9jYWwgdGFnPSQx
CisgICAgc2hpZnQKKyAgICBpZiBbICQjIC1uZSAwIF07IHRoZW4KKyAgICAgICAgZWNobyAiJHtp
bmRlbnR9PCR7dGFnfSIKKyAgICAgICAgaW5kZW50X3B1c2gKKyAgICAgICAgdGFnX2F0dHJpYnV0
ZXMgIiRAIgorICAgICAgICBpbmRlbnRfcG9wCisgICAgICAgIGVjaG8gIiR7aW5kZW50fS8+Igor
ICAgIGVsc2UKKyAgICAgICAgZWNobyAiJHtpbmRlbnR9PCR7dGFnfS8+IgorICAgIGZpCit9CisK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9ydGNkLnBsIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9i
dWlsZC9tYWtlL3J0Y2QucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWNiOWY2ZTQ2NjczNTM0M2FmNjZkMjI3MWIx
ZGJkYjEwNzQwNDQyMwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9y
dGNkLnBsCkBAIC0wLDAgKzEsNDkzIEBACisjIS91c3IvYmluL2VudiBwZXJsCisjIworIyMgIENv
cHlyaWdodCAoYykgMjAxNyBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMuIEFsbCBSaWdodHMgUmVz
ZXJ2ZWQuCisjIworIyMgIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEg
QlNELXN0eWxlIGxpY2Vuc2UKKyMjICB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBm
aWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UKKyMjICB0cmVlLiBBbiBhZGRpdGlvbmFsIGlu
dGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQgY2FuIGJlIGZvdW5kCisjIyAgaW4gdGhl
IGZpbGUgUEFURU5UUy4gIEFsbCBjb250cmlidXRpbmcgcHJvamVjdCBhdXRob3JzIG1heQorIyMg
IGJlIGZvdW5kIGluIHRoZSBBVVRIT1JTIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZSB0
cmVlLgorIyMKKworbm8gc3RyaWN0ICdyZWZzJzsKK3VzZSB3YXJuaW5nczsKK3VzZSBHZXRvcHQ6
Okxvbmc7CitHZXRvcHQ6Okxvbmc6OkNvbmZpZ3VyZSgiYXV0b19oZWxwIikgaWYgJEdldG9wdDo6
TG9uZzo6VkVSU0lPTiA+IDIuMzI7CisKK215ICVBTExfRlVOQ1MgPSAoKTsKK215IEBBTExfQVJD
SFM7CitteSBAQUxMX0ZPUldBUkRfREVDTFM7CitteSBAUkVRVUlSRVM7CisKK215ICVvcHRzID0g
KCk7CitteSAlZGlzYWJsZWQgPSAoKTsKK215ICVyZXF1aXJlZCA9ICgpOworCitteSBAYXJndjsK
K2ZvcmVhY2ggKEBBUkdWKSB7CisgICRkaXNhYmxlZHskMX0gPSAxLCBuZXh0IGlmIC8tLWRpc2Fi
bGUtKC4qKS87CisgICRyZXF1aXJlZHskMX0gPSAxLCBuZXh0IGlmIC8tLXJlcXVpcmUtKC4qKS87
CisgIHB1c2ggQGFyZ3YsICRfOworfQorCisjIE5COiB1c2UgR2V0T3B0aW9ucygpIGluc3RlYWQg
b2YgR2V0T3B0aW9uc0Zyb21BcnJheSgpIGZvciBjb21wYXRpYmlsaXR5LgorQEFSR1YgPSBAYXJn
djsKK0dldE9wdGlvbnMoCisgIFwlb3B0cywKKyAgJ2FyY2g9cycsCisgICdzeW09cycsCisgICdj
b25maWc9cycsCispOworCitmb3JlYWNoIG15ICRvcHQgKHF3L2FyY2ggY29uZmlnLykgeworICBp
ZiAoIWRlZmluZWQoJG9wdHN7JG9wdH0pKSB7CisgICAgd2FybiAiLS0kb3B0IGlzIHJlcXVpcmVk
IVxuIjsKKyAgICBHZXRvcHQ6Okxvbmc6OkhlbHBNZXNzYWdlKCctZXhpdCcgPT4gMSk7CisgIH0K
K30KKworZm9yZWFjaCBteSAkZGVmc19maWxlIChAQVJHVikgeworICBpZiAoIS1mICRkZWZzX2Zp
bGUpIHsKKyAgICB3YXJuICIkZGVmc19maWxlOiAkIVxuIjsKKyAgICBHZXRvcHQ6Okxvbmc6Okhl
bHBNZXNzYWdlKCctZXhpdCcgPT4gMSk7CisgIH0KK30KKworb3BlbiBDT05GSUdfRklMRSwgJG9w
dHN7Y29uZmlnfSBvcgorICBkaWUgIkVycm9yIG9wZW5pbmcgY29uZmlnIGZpbGUgJyRvcHRze2Nv
bmZpZ30nOiAkIVxuIjsKKworbXkgJWNvbmZpZyA9ICgpOword2hpbGUgKDxDT05GSUdfRklMRT4p
IHsKKyAgbmV4dCBpZiAhL14oPzpDT05GSUdffEhBVkVfKS87CisgIGNob21wOworICBteSBAcGFp
ciA9IHNwbGl0IC89LzsKKyAgJGNvbmZpZ3skcGFpclswXX0gPSAkcGFpclsxXTsKK30KK2Nsb3Nl
IENPTkZJR19GSUxFOworCisjCisjIFJvdXRpbmVzIGZvciB0aGUgUlRDRCBEU0wgdG8gY2FsbAor
Iworc3ViIHZweF9jb25maWcoJCkgeworICByZXR1cm4gKGRlZmluZWQgJGNvbmZpZ3skX1swXX0p
ID8gJGNvbmZpZ3skX1swXX0gOiAiIjsKK30KKworc3ViIHNwZWNpYWxpemUgeworICBteSAkZm49
JF9bMF07CisgIHNoaWZ0OworICBmb3JlYWNoIG15ICRvcHQgKEBfKSB7CisgICAgZXZhbCAiXCQk
e2ZufV8ke29wdH09JHtmbn1fJHtvcHR9IjsKKyAgfQorfQorCitzdWIgYWRkX3Byb3RvIHsKKyAg
bXkgJGZuID0gc3BsaWNlKEBfLCAtMiwgMSk7CisgICRBTExfRlVOQ1N7JGZufSA9IFxAXzsKKyAg
c3BlY2lhbGl6ZSAkZm4sICJjIjsKK30KKworc3ViIHJlcXVpcmUgeworICBmb3JlYWNoIG15ICRm
biAoa2V5cyAlQUxMX0ZVTkNTKSB7CisgICAgZm9yZWFjaCBteSAkb3B0IChAXykgeworICAgICAg
bXkgJG9mbiA9IGV2YWwgIlwkJHtmbn1fJHtvcHR9IjsKKyAgICAgIG5leHQgaWYgISRvZm47CisK
KyAgICAgICMgaWYgd2UgYWxyZWFkeSBoYXZlIGEgZGVmYXVsdCwgdGhlbiB3ZSBjYW4gZGlzYWJs
ZSBpdCwgYXMgd2Uga25vdworICAgICAgIyB3ZSBjYW4gZG8gYmV0dGVyLgorICAgICAgbXkgJGJl
c3QgPSBldmFsICJcJCR7Zm59X2RlZmF1bHQiOworICAgICAgaWYgKCRiZXN0KSB7CisgICAgICAg
IG15ICRiZXN0X29mbiA9IGV2YWwgIlwkJHtiZXN0fSI7CisgICAgICAgIGlmICgkYmVzdF9vZm4g
JiYgIiRiZXN0X29mbiIgbmUgIiRvZm4iKSB7CisgICAgICAgICAgZXZhbCAiXCQke2Jlc3R9X2xp
bmsgPSAnZmFsc2UnIjsKKyAgICAgICAgfQorICAgICAgfQorICAgICAgZXZhbCAiXCQke2ZufV9k
ZWZhdWx0PSR7Zm59XyR7b3B0fSI7CisgICAgICBldmFsICJcJCR7Zm59XyR7b3B0fV9saW5rPSd0
cnVlJyI7CisgICAgfQorICB9Cit9CisKK3N1YiBmb3J3YXJkX2RlY2xzIHsKKyAgcHVzaCBAQUxM
X0ZPUldBUkRfREVDTFMsIEBfOworfQorCisjCisjIEluY2x1ZGUgdGhlIHVzZXIncyBkaXJlY3Rp
dmVzCisjCitmb3JlYWNoIG15ICRmIChAQVJHVikgeworICBvcGVuIEZJTEUsICI8IiwgJGYgb3Ig
ZGllICJjYW5ub3Qgb3BlbiAkZjogJCFcbiI7CisgIG15ICRjb250ZW50cyA9IGpvaW4oJycsIDxG
SUxFPik7CisgIGNsb3NlIEZJTEU7CisgIGV2YWwgJGNvbnRlbnRzIG9yIHdhcm4gImV2YWwgZmFp
bGVkOiAkQFxuIjsKK30KKworIworIyBQcm9jZXNzIHRoZSBkaXJlY3RpdmVzIGFjY29yZGluZyB0
byB0aGUgY29tbWFuZCBsaW5lCisjCitzdWIgcHJvY2Vzc19mb3J3YXJkX2RlY2xzKCkgeworICBm
b3JlYWNoIChAQUxMX0ZPUldBUkRfREVDTFMpIHsKKyAgICAkXy0+KCk7CisgIH0KK30KKworc3Vi
IGRldGVybWluZV9pbmRpcmVjdGlvbiB7CisgIHZweF9jb25maWcoIkNPTkZJR19SVU5USU1FX0NQ
VV9ERVRFQ1QiKSBlcSAieWVzIiBvciAmcmVxdWlyZShAQUxMX0FSQ0hTKTsKKyAgZm9yZWFjaCBt
eSAkZm4gKGtleXMgJUFMTF9GVU5DUykgeworICAgIG15ICRuID0gIiI7CisgICAgbXkgQHZhbCA9
IEB7JEFMTF9GVU5DU3skZm59fTsKKyAgICBteSAkYXJncyA9IHBvcCBAdmFsOworICAgIG15ICRy
dHlwID0gIkB2YWwiOworICAgIG15ICRkZm4gPSBldmFsICJcJCR7Zm59X2RlZmF1bHQiOworICAg
ICRkZm4gPSBldmFsICJcJCR7ZGZufSI7CisgICAgZm9yZWFjaCBteSAkb3B0IChAXykgeworICAg
ICAgbXkgJG9mbiA9IGV2YWwgIlwkJHtmbn1fJHtvcHR9IjsKKyAgICAgIG5leHQgaWYgISRvZm47
CisgICAgICBteSAkbGluayA9IGV2YWwgIlwkJHtmbn1fJHtvcHR9X2xpbmsiOworICAgICAgbmV4
dCBpZiAkbGluayAmJiAkbGluayBlcSAiZmFsc2UiOworICAgICAgJG4gLj0gIngiOworICAgIH0K
KyAgICBpZiAoJG4gZXEgIngiKSB7CisgICAgICBldmFsICJcJCR7Zm59X2luZGlyZWN0ID0gJ2Zh
bHNlJyI7CisgICAgfSBlbHNlIHsKKyAgICAgIGV2YWwgIlwkJHtmbn1faW5kaXJlY3QgPSAndHJ1
ZSciOworICAgIH0KKyAgfQorfQorCitzdWIgZGVjbGFyZV9mdW5jdGlvbl9wb2ludGVycyB7Cisg
IGZvcmVhY2ggbXkgJGZuIChzb3J0IGtleXMgJUFMTF9GVU5DUykgeworICAgIG15IEB2YWwgPSBA
eyRBTExfRlVOQ1N7JGZufX07CisgICAgbXkgJGFyZ3MgPSBwb3AgQHZhbDsKKyAgICBteSAkcnR5
cCA9ICJAdmFsIjsKKyAgICBteSAkZGZuID0gZXZhbCAiXCQke2ZufV9kZWZhdWx0IjsKKyAgICAk
ZGZuID0gZXZhbCAiXCQke2Rmbn0iOworICAgIGZvcmVhY2ggbXkgJG9wdCAoQF8pIHsKKyAgICAg
IG15ICRvZm4gPSBldmFsICJcJCR7Zm59XyR7b3B0fSI7CisgICAgICBuZXh0IGlmICEkb2ZuOwor
ICAgICAgcHJpbnQgIiRydHlwICR7b2ZufSgkYXJncyk7XG4iOworICAgIH0KKyAgICBpZiAoZXZh
bCAiXCQke2ZufV9pbmRpcmVjdCIgZXEgImZhbHNlIikgeworICAgICAgcHJpbnQgIiNkZWZpbmUg
JHtmbn0gJHtkZm59XG4iOworICAgIH0gZWxzZSB7CisgICAgICBwcmludCAiUlRDRF9FWFRFUk4g
JHJ0eXAgKCoke2ZufSkoJGFyZ3MpO1xuIjsKKyAgICB9CisgICAgcHJpbnQgIlxuIjsKKyAgfQor
fQorCitzdWIgc2V0X2Z1bmN0aW9uX3BvaW50ZXJzIHsKKyAgZm9yZWFjaCBteSAkZm4gKHNvcnQg
a2V5cyAlQUxMX0ZVTkNTKSB7CisgICAgbXkgQHZhbCA9IEB7JEFMTF9GVU5DU3skZm59fTsKKyAg
ICBteSAkYXJncyA9IHBvcCBAdmFsOworICAgIG15ICRydHlwID0gIkB2YWwiOworICAgIG15ICRk
Zm4gPSBldmFsICJcJCR7Zm59X2RlZmF1bHQiOworICAgICRkZm4gPSBldmFsICJcJCR7ZGZufSI7
CisgICAgaWYgKGV2YWwgIlwkJHtmbn1faW5kaXJlY3QiIGVxICJ0cnVlIikgeworICAgICAgcHJp
bnQgIiAgICAkZm4gPSAkZGZuO1xuIjsKKyAgICAgIGZvcmVhY2ggbXkgJG9wdCAoQF8pIHsKKyAg
ICAgICAgbXkgJG9mbiA9IGV2YWwgIlwkJHtmbn1fJHtvcHR9IjsKKyAgICAgICAgbmV4dCBpZiAh
JG9mbjsKKyAgICAgICAgbmV4dCBpZiAiJG9mbiIgZXEgIiRkZm4iOworICAgICAgICBteSAkbGlu
ayA9IGV2YWwgIlwkJHtmbn1fJHtvcHR9X2xpbmsiOworICAgICAgICBuZXh0IGlmICRsaW5rICYm
ICRsaW5rIGVxICJmYWxzZSI7CisgICAgICAgIG15ICRjb25kID0gZXZhbCAiXCRoYXZlXyR7b3B0
fSI7CisgICAgICAgIHByaW50ICIgICAgaWYgKCR7Y29uZH0pICRmbiA9ICRvZm47XG4iCisgICAg
ICB9CisgICAgfQorICB9Cit9CisKK3N1YiBmaWx0ZXIgeworICBteSBAZmlsdGVyZWQ7CisgIGZv
cmVhY2ggKEBfKSB7IHB1c2ggQGZpbHRlcmVkLCAkXyB1bmxlc3MgJGRpc2FibGVkeyRffTsgfQor
ICByZXR1cm4gQGZpbHRlcmVkOworfQorCisjCisjIEhlbHBlciBmdW5jdGlvbnMgZm9yIGdlbmVy
YXRpbmcgdGhlIGFyY2ggc3BlY2lmaWMgUlRDRCBmaWxlcworIworc3ViIGNvbW1vbl90b3AoKSB7
CisgIG15ICRpbmNsdWRlX2d1YXJkID0gdWMoJG9wdHN7c3ltfSkuIl9IXyI7CisgIHByaW50IDw8
RU9GOworLy8gVGhpcyBmaWxlIGlzIGdlbmVyYXRlZC4gRG8gbm90IGVkaXQuCisjaWZuZGVmICR7
aW5jbHVkZV9ndWFyZH0KKyNkZWZpbmUgJHtpbmNsdWRlX2d1YXJkfQorCisjaWZkZWYgUlRDRF9D
CisjZGVmaW5lIFJUQ0RfRVhURVJOCisjZWxzZQorI2RlZmluZSBSVENEX0VYVEVSTiBleHRlcm4K
KyNlbmRpZgorCitFT0YKKworcHJvY2Vzc19mb3J3YXJkX2RlY2xzKCk7CitwcmludCA8PEVPRjsK
KworI2lmZGVmIF9fY3BsdXNwbHVzCitleHRlcm4gIkMiIHsKKyNlbmRpZgorCitFT0YKK2RlY2xh
cmVfZnVuY3Rpb25fcG9pbnRlcnMoImMiLCBAQUxMX0FSQ0hTKTsKKworcHJpbnQgPDxFT0Y7Cit2
b2lkICRvcHRze3N5bX0odm9pZCk7CisKK0VPRgorfQorCitzdWIgY29tbW9uX2JvdHRvbSgpIHsK
KyAgcHJpbnQgPDxFT0Y7CisKKyNpZmRlZiBfX2NwbHVzcGx1cworfSAgLy8gZXh0ZXJuICJDIgor
I2VuZGlmCisKKyNlbmRpZgorRU9GCit9CisKK3N1YiB4ODYoKSB7CisgIGRldGVybWluZV9pbmRp
cmVjdGlvbigiYyIsIEBBTExfQVJDSFMpOworCisgICMgQXNzaWduIHRoZSBoZWxwZXIgdmFyaWFi
bGUgZm9yIGVhY2ggZW5hYmxlZCBleHRlbnNpb24KKyAgZm9yZWFjaCBteSAkb3B0IChAQUxMX0FS
Q0hTKSB7CisgICAgbXkgJG9wdF91YyA9IHVjICRvcHQ7CisgICAgZXZhbCAiXCRoYXZlXyR7b3B0
fT1cImZsYWdzICYgSEFTXyR7b3B0X3VjfVwiIjsKKyAgfQorCisgIGNvbW1vbl90b3A7CisgIHBy
aW50IDw8RU9GOworI2lmZGVmIFJUQ0RfQworI2luY2x1ZGUgInZweF9wb3J0cy94ODYuaCIKK3N0
YXRpYyB2b2lkIHNldHVwX3J0Y2RfaW50ZXJuYWwodm9pZCkKK3sKKyAgICBpbnQgZmxhZ3MgPSB4
ODZfc2ltZF9jYXBzKCk7CisKKyAgICAodm9pZClmbGFnczsKKworRU9GCisKKyAgc2V0X2Z1bmN0
aW9uX3BvaW50ZXJzKCJjIiwgQEFMTF9BUkNIUyk7CisKKyAgcHJpbnQgPDxFT0Y7Cit9CisjZW5k
aWYKK0VPRgorICBjb21tb25fYm90dG9tOworfQorCitzdWIgYXJtKCkgeworICBkZXRlcm1pbmVf
aW5kaXJlY3Rpb24oImMiLCBAQUxMX0FSQ0hTKTsKKworICAjIEFzc2lnbiB0aGUgaGVscGVyIHZh
cmlhYmxlIGZvciBlYWNoIGVuYWJsZWQgZXh0ZW5zaW9uCisgIGZvcmVhY2ggbXkgJG9wdCAoQEFM
TF9BUkNIUykgeworICAgIG15ICRvcHRfdWMgPSB1YyAkb3B0OworICAgICMgRW5hYmxlIG5lb24g
YXNzZW1ibHkgYmFzZWQgb24gSEFWRV9ORU9OIGxvZ2ljIGluc3RlYWQgb2YgYWRkaW5nIG5ldwor
ICAgICMgSEFWRV9ORU9OX0FTTSBsb2dpYworICAgIGlmICgkb3B0IGVxICduZW9uX2FzbScpIHsg
JG9wdF91YyA9ICdORU9OJyB9CisgICAgZXZhbCAiXCRoYXZlXyR7b3B0fT1cImZsYWdzICYgSEFT
XyR7b3B0X3VjfVwiIjsKKyAgfQorCisgIGNvbW1vbl90b3A7CisgIHByaW50IDw8RU9GOworI2lu
Y2x1ZGUgInZweF9jb25maWcuaCIKKworI2lmZGVmIFJUQ0RfQworI2luY2x1ZGUgInZweF9wb3J0
cy9hcm0uaCIKK3N0YXRpYyB2b2lkIHNldHVwX3J0Y2RfaW50ZXJuYWwodm9pZCkKK3sKKyAgICBp
bnQgZmxhZ3MgPSBhcm1fY3B1X2NhcHMoKTsKKworICAgICh2b2lkKWZsYWdzOworCitFT0YKKwor
ICBzZXRfZnVuY3Rpb25fcG9pbnRlcnMoImMiLCBAQUxMX0FSQ0hTKTsKKworICBwcmludCA8PEVP
RjsKK30KKyNlbmRpZgorRU9GCisgIGNvbW1vbl9ib3R0b207Cit9CisKK3N1YiBtaXBzKCkgewor
ICBkZXRlcm1pbmVfaW5kaXJlY3Rpb24oImMiLCBAQUxMX0FSQ0hTKTsKKworICAjIEFzc2lnbiB0
aGUgaGVscGVyIHZhcmlhYmxlIGZvciBlYWNoIGVuYWJsZWQgZXh0ZW5zaW9uCisgIGZvcmVhY2gg
bXkgJG9wdCAoQEFMTF9BUkNIUykgeworICAgIG15ICRvcHRfdWMgPSB1YyAkb3B0OworICAgIGV2
YWwgIlwkaGF2ZV8ke29wdH09XCJmbGFncyAmIEhBU18ke29wdF91Y31cIiI7CisgIH0KKworICBj
b21tb25fdG9wOworCisgIHByaW50IDw8RU9GOworI2luY2x1ZGUgInZweF9jb25maWcuaCIKKwor
I2lmZGVmIFJUQ0RfQworI2luY2x1ZGUgInZweF9wb3J0cy9taXBzLmgiCitzdGF0aWMgdm9pZCBz
ZXR1cF9ydGNkX2ludGVybmFsKHZvaWQpCit7CisgICAgaW50IGZsYWdzID0gbWlwc19jcHVfY2Fw
cygpOworCisgICAgKHZvaWQpZmxhZ3M7CisKK0VPRgorCisgIHNldF9mdW5jdGlvbl9wb2ludGVy
cygiYyIsIEBBTExfQVJDSFMpOworCisgIHByaW50IDw8RU9GOworI2lmIEhBVkVfRFNQUjIKK3Zv
aWQgdnB4X2RzcHV0aWxfc3RhdGljX2luaXQoKTsKKyNpZiBDT05GSUdfVlA4Cit2b2lkIGRzcHV0
aWxfc3RhdGljX2luaXQoKTsKKyNlbmRpZgorCit2cHhfZHNwdXRpbF9zdGF0aWNfaW5pdCgpOwor
I2lmIENPTkZJR19WUDgKK2RzcHV0aWxfc3RhdGljX2luaXQoKTsKKyNlbmRpZgorI2VuZGlmCit9
CisjZW5kaWYKK0VPRgorICBjb21tb25fYm90dG9tOworfQorCitzdWIgcHBjKCkgeworICBkZXRl
cm1pbmVfaW5kaXJlY3Rpb24oImMiLCBAQUxMX0FSQ0hTKTsKKworICAjIEFzc2lnbiB0aGUgaGVs
cGVyIHZhcmlhYmxlIGZvciBlYWNoIGVuYWJsZWQgZXh0ZW5zaW9uCisgIGZvcmVhY2ggbXkgJG9w
dCAoQEFMTF9BUkNIUykgeworICAgIG15ICRvcHRfdWMgPSB1YyAkb3B0OworICAgIGV2YWwgIlwk
aGF2ZV8ke29wdH09XCJmbGFncyAmIEhBU18ke29wdF91Y31cIiI7CisgIH0KKworICBjb21tb25f
dG9wOworICBwcmludCA8PEVPRjsKKyNpbmNsdWRlICJ2cHhfY29uZmlnLmgiCisKKyNpZmRlZiBS
VENEX0MKKyNpbmNsdWRlICJ2cHhfcG9ydHMvcHBjLmgiCitzdGF0aWMgdm9pZCBzZXR1cF9ydGNk
X2ludGVybmFsKHZvaWQpCit7CisgICAgaW50IGZsYWdzID0gcHBjX3NpbWRfY2FwcygpOworICAg
ICh2b2lkKWZsYWdzOworRU9GCisKKyAgc2V0X2Z1bmN0aW9uX3BvaW50ZXJzKCJjIiwgQEFMTF9B
UkNIUyk7CisKKyAgcHJpbnQgPDxFT0Y7Cit9CisjZW5kaWYKK0VPRgorICBjb21tb25fYm90dG9t
OworfQorCitzdWIgdW5vcHRpbWl6ZWQoKSB7CisgIGRldGVybWluZV9pbmRpcmVjdGlvbiAiYyI7
CisgIGNvbW1vbl90b3A7CisgIHByaW50IDw8RU9GOworI2luY2x1ZGUgInZweF9jb25maWcuaCIK
KworI2lmZGVmIFJUQ0RfQworc3RhdGljIHZvaWQgc2V0dXBfcnRjZF9pbnRlcm5hbCh2b2lkKQor
eworRU9GCisKKyAgc2V0X2Z1bmN0aW9uX3BvaW50ZXJzICJjIjsKKworICBwcmludCA8PEVPRjsK
K30KKyNlbmRpZgorRU9GCisgIGNvbW1vbl9ib3R0b207Cit9CisKKyMKKyMgTWFpbiBEcml2ZXIK
KyMKKworJnJlcXVpcmUoImMiKTsKKyZyZXF1aXJlKGtleXMgJXJlcXVpcmVkKTsKK2lmICgkb3B0
c3thcmNofSBlcSAneDg2JykgeworICBAQUxMX0FSQ0hTID0gZmlsdGVyKHF3L21teCBzc2Ugc3Nl
MiBzc2UzIHNzc2UzIHNzZTRfMSBhdnggYXZ4MiBhdng1MTIvKTsKKyAgeDg2OworfSBlbHNpZiAo
JG9wdHN7YXJjaH0gZXEgJ3g4Nl82NCcpIHsKKyAgQEFMTF9BUkNIUyA9IGZpbHRlcihxdy9tbXgg
c3NlIHNzZTIgc3NlMyBzc3NlMyBzc2U0XzEgYXZ4IGF2eDIgYXZ4NTEyLyk7CisgIEBSRVFVSVJF
UyA9IGZpbHRlcihxdy9tbXggc3NlIHNzZTIvKTsKKyAgJnJlcXVpcmUoQFJFUVVJUkVTKTsKKyAg
eDg2OworfSBlbHNpZiAoJG9wdHN7YXJjaH0gZXEgJ21pcHMzMicgfHwgJG9wdHN7YXJjaH0gZXEg
J21pcHM2NCcpIHsKKyAgbXkgJGhhdmVfZHNwcjIgPSAwOworICBteSAkaGF2ZV9tc2EgPSAwOwor
ICBteSAkaGF2ZV9tbWkgPSAwOworICBAQUxMX0FSQ0hTID0gZmlsdGVyKCIkb3B0c3thcmNofSIp
OworICBvcGVuIENPTkZJR19GSUxFLCAkb3B0c3tjb25maWd9IG9yCisgICAgZGllICJFcnJvciBv
cGVuaW5nIGNvbmZpZyBmaWxlICckb3B0c3tjb25maWd9JzogJCFcbiI7CisgIHdoaWxlICg8Q09O
RklHX0ZJTEU+KSB7CisgICAgaWYgKC9IQVZFX0RTUFIyPXllcy8pIHsKKyAgICAgICRoYXZlX2Rz
cHIyID0gMTsKKyAgICB9CisgICAgaWYgKC9IQVZFX01TQT15ZXMvKSB7CisgICAgICAkaGF2ZV9t
c2EgPSAxOworICAgIH0KKyAgICBpZiAoL0hBVkVfTU1JPXllcy8pIHsKKyAgICAgICRoYXZlX21t
aSA9IDE7CisgICAgfQorICB9CisgIGNsb3NlIENPTkZJR19GSUxFOworICBpZiAoJGhhdmVfZHNw
cjIgPT0gMSkgeworICAgIEBBTExfQVJDSFMgPSBmaWx0ZXIoIiRvcHRze2FyY2h9IiwgcXcvZHNw
cjIvKTsKKyAgfSBlbHNpZiAoJGhhdmVfbXNhID09IDEgJiYgJGhhdmVfbW1pID09IDEpIHsKKyAg
ICBAQUxMX0FSQ0hTID0gZmlsdGVyKCIkb3B0c3thcmNofSIsIHF3L21taSBtc2EvKTsKKyAgfSBl
bHNpZiAoJGhhdmVfbXNhID09IDEpIHsKKyAgICBAQUxMX0FSQ0hTID0gZmlsdGVyKCIkb3B0c3th
cmNofSIsIHF3L21zYS8pOworICB9IGVsc2lmICgkaGF2ZV9tbWkgPT0gMSkgeworICAgIEBBTExf
QVJDSFMgPSBmaWx0ZXIoIiRvcHRze2FyY2h9IiwgcXcvbW1pLyk7CisgIH0gZWxzZSB7CisgICAg
dW5vcHRpbWl6ZWQ7CisgIH0KKyAgbWlwczsKK30gZWxzaWYgKCRvcHRze2FyY2h9ID1+IC9hcm12
N1x3Py8pIHsKKyAgQEFMTF9BUkNIUyA9IGZpbHRlcihxdy9uZW9uX2FzbSBuZW9uLyk7CisgIGFy
bTsKK30gZWxzaWYgKCRvcHRze2FyY2h9IGVxICdhcm12OCcgfHwgJG9wdHN7YXJjaH0gZXEgJ2Fy
bTY0JyApIHsKKyAgQEFMTF9BUkNIUyA9IGZpbHRlcihxdy9uZW9uLyk7CisgICZyZXF1aXJlKCJu
ZW9uIik7CisgIGFybTsKK30gZWxzaWYgKCRvcHRze2FyY2h9ID1+IC9ecHBjLyApIHsKKyAgQEFM
TF9BUkNIUyA9IGZpbHRlcihxdy92c3gvKTsKKyAgcHBjOworfSBlbHNlIHsKKyAgdW5vcHRpbWl6
ZWQ7Cit9CisKK19fRU5EX18KKworPWhlYWQxIE5BTUUKKworcnRjZCAtCisKKz1oZWFkMSBTWU5P
UFNJUworCitVc2FnZTogcnRjZC5wbCBbb3B0aW9uc10gRklMRQorCitTZWUgJ3Blcmxkb2MgcnRj
ZC5wbCcgZm9yIG1vcmUgZGV0YWlscy4KKworPWhlYWQxIERFU0NSSVBUSU9OCisKK1JlYWRzIHRo
ZSBSdW4gVGltZSBDUFUgRGV0ZWN0aW9ucyBkZWZpbml0aW9ucyBmcm9tIEZJTEUgYW5kIGdlbmVy
YXRlcyBhCitDIGhlYWRlciBmaWxlIG9uIHN0ZG91dC4KKworPWhlYWQxIE9QVElPTlMKKworT3B0
aW9uczoKKyAgLS1hcmNoPUFSQ0ggICAgICAgQXJjaGl0ZWN0dXJlIHRvIGdlbmVyYXRlIGRlZnMg
Zm9yIChyZXF1aXJlZCkKKyAgLS1kaXNhYmxlLUVYVCAgICAgRGlzYWJsZSBzdXBwb3J0IGZvciBF
WFQgZXh0ZW5zaW9ucworICAtLXJlcXVpcmUtRVhUICAgICBSZXF1aXJlIHN1cHBvcnQgZm9yIEVY
VCBleHRlbnNpb25zCisgIC0tc3ltPVNZTUJPTCAgICAgIFVuaXF1ZSBzeW1ib2wgdG8gdXNlIGZv
ciBSVENEIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uCisgIC0tY29uZmlnPUZJTEUgICAgIEZpbGUg
d2l0aCBDT05GSUdfRk9PPXllcyBsaW5lcyB0byBwYXJzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC9idWlsZC9tYWtlL3RodW1iLnBtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL3RodW1iLnBtCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjljNDllMmQ4YjcyNDUyYWQyNGY3Y2VlN2VmMDlhMzY5ZGQzNzk2MGIKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2J1aWxkL21ha2UvdGh1bWIucG0KQEAgLTAsMCArMSw2
MyBAQAorIyEvdXNyL2Jpbi9lbnYgcGVybAorIyMKKyMjICBDb3B5cmlnaHQgKGMpIDIwMTMgVGhl
IFdlYk0gcHJvamVjdCBhdXRob3JzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorIyMKKyMjICBVc2Ug
b2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlCisj
IyAgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBvZiB0
aGUgc291cmNlCisjIyAgdHJlZS4gQW4gYWRkaXRpb25hbCBpbnRlbGxlY3R1YWwgcHJvcGVydHkg
cmlnaHRzIGdyYW50IGNhbiBiZSBmb3VuZAorIyMgIGluIHRoZSBmaWxlIFBBVEVOVFMuICBBbGwg
Y29udHJpYnV0aW5nIHByb2plY3QgYXV0aG9ycyBtYXkKKyMjICBiZSBmb3VuZCBpbiB0aGUgQVVU
SE9SUyBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UgdHJlZS4KKyMjCisKK3BhY2thZ2Ug
dGh1bWI7CisKK3N1YiBGaXhUaHVtYkluc3RydWN0aW9ucygkJCkKK3sKKyAgICBteSAkc2hvcnRf
YnJhbmNoZXMgPSAkX1sxXTsKKyAgICBteSAkYnJhbmNoX3NoaWZ0X29mZnNldCA9ICRzaG9ydF9i
cmFuY2hlcyA/IDEgOiAwOworCisgICAgIyBXcml0ZSBhZGRpdGlvbnMgd2l0aCBzaGlmdHMsIHN1
Y2ggYXMgImFkZCByMTAsIHIxMSwgbHNsICM4IiwKKyAgICAjIGluIHRocmVlIG9wZXJhbmQgZm9y
bSwgImFkZCByMTAsIHIxMCwgcjExLCBsc2wgIzgiLgorICAgIHMvKGFkZFxzKykoclxkKyksXHMq
KHJcZCspLFxzKihsc2wgI1xkKykvJDEkMiwgJDIsICQzLCAkNC9nOworCisgICAgIyBDb252ZXJ0
IGFkZGl0aW9ucyB3aXRoIGEgbm9uLWNvbnN0YW50IHNoaWZ0IGludG8gYSBzZXF1ZW5jZQorICAg
ICMgd2l0aCBsZWZ0IHNoaWZ0LCBhZGRpdGlvbiBhbmQgYSByaWdodCBzaGlmdCAodG8gcmVzdG9y
ZSB0aGUKKyAgICAjIHJlZ2lzdGVyIHRvIHRoZSBvcmlnaW5hbCB2YWx1ZSkuIEN1cnJlbnRseSB0
aGUgcmlnaHQgc2hpZnQKKyAgICAjIGlzbid0IG5lY2Vzc2FyeSBpbiB0aGUgY29kZSBiYXNlIHNp
bmNlIHRoZSB2YWx1ZXMgaW4gdGhlc2UKKyAgICAjIHJlZ2lzdGVycyBhcmVuJ3QgdXNlZCwgYnV0
IGRvaW5nIHRoZSBzaGlmdCBmb3IgY29uc2lzdGVuY3kuCisgICAgIyBUaGlzIGNvbnZlcnRzIGlu
c3RydWN0aW9ucyBzdWNoIGFzICJhZGQgcjEyLCByMTIsIHI1LCBsc2wgcjQiCisgICAgIyBpbnRv
IHRoZSBzZXF1ZW5jZSAibHNsIHI1LCByNCIsICJhZGQgcjEyLCByMTIsIHI1IiwgImxzciByNSwg
cjQiLgorICAgIHMvXihccyopKGFkZCkoXHMrKShyXGQrKSxccyooclxkKyksXHMqKHJcZCspLFxz
KmxzbCAoclxkKykvJDFsc2wkMyQ2LCAkN1xuJDEkMiQzJDQsICQ1LCAkNlxuJDFsc3IkMyQ2LCAk
Ny9nOworCisgICAgIyBDb252ZXJ0IGxvYWRzIHdpdGggcmlnaHQgc2hpZnRzIGluIHRoZSBpbmRl
eGluZyBpbnRvIGEKKyAgICAjIHNlcXVlbmNlIG9mIGFuIGFkZCwgbG9hZCBhbmQgc3ViLiBUaGlz
IGNvbnZlcnRzCisgICAgIyAibGRyYiByNCwgW3I5LCBsciwgYXNyICMxXSIgaW50byAiYWRkIHI5
LCByOSwgbHIsIGFzciAjMSIsCisgICAgIyAibGRyYiByOSwgW3I5XSIsICJzdWIgcjksIHI5LCBs
ciwgYXNyICMxIi4KKyAgICBzL14oXHMqKShsZHJiKShccyspKHJcZCspLFxzKlxbKFx3KyksXHMq
KFx3KyksXHMqKGFzciAjXGQrKVxdLyQxYWRkICQzJDUsICQ1LCAkNiwgJDdcbiQxJDIkMyQ0LCBb
JDVdXG4kMXN1YiAkMyQ1LCAkNSwgJDYsICQ3L2c7CisKKyAgICAjIENvbnZlcnQgcmVnaXN0ZXIg
aW5kZXhpbmcgd2l0aCB3cml0ZWJhY2sgaW50byBhIHNlcGFyYXRlIGFkZAorICAgICMgaW5zdHJ1
Y3Rpb24uIFRoaXMgY29udmVydHMgImxkcmIgcjEyLCBbcjEsIHIyXSEiIGludG8KKyAgICAjICJs
ZHJiIHIxMiwgW3IxLCByMl0iLCAiYWRkIHIxLCByMSwgcjIiLgorICAgIHMvXihccyopKGxkcmIp
KFxzKykoclxkKyksXHMqXFsoXHcrKSxccyooXHcrKVxdIS8kMSQyJDMkNCwgWyQ1LCAkNl1cbiQx
YWRkICQzJDUsICQ2L2c7CisKKyAgICAjIENvbnZlcnQgbmVnYXRpdmUgcmVnaXN0ZXIgaW5kZXhp
bmcgaW50byBzZXBhcmF0ZSBzdWIvYWRkIGluc3RydWN0aW9ucy4KKyAgICAjIFRoaXMgY29udmVy
dHMgImxkcm5lIHI0LCBbc3JjLCAtcHN0ZXAsIGxzbCAjMV0iIGludG8KKyAgICAjICJzdWJuZSBz
cmMsIHNyYywgcHN0ZXAsIGxzbCAjMSIsICJsZHJuZSByNCwgW3NyY10iLAorICAgICMgImFkZG5l
IHNyYywgc3JjLCBwc3RlcCwgbHNsICMxIi4gSW4gYSBjb3VwbGUgb2YgY2FzZXMgd2hlcmUKKyAg
ICAjIHRoaXMgaXMgdXNlZCwgaXQncyB1c2VkIGZvciB0d28gc3Vic2VxdWVudCBsb2FkIGluc3Ry
dWN0aW9ucywKKyAgICAjIHdoZXJlIGEgaGFuZC13cml0dGVuIHZlcnNpb24gb2YgaXQgY291bGQg
bWVyZ2UgdHdvIHN1YnNlcXVlbnQKKyAgICAjIGFkZCBhbmQgc3ViIGluc3RydWN0aW9ucy4KKyAg
ICBzL14oXHMqKSgobGRyfHN0cnxwbGQpKG5lKT8pKFxzKykoclxkKyxccyopP1xbKFx3KyksIC0o
W15cXV0rKVxdLyQxc3ViJDQkNSQ3LCAkNywgJDhcbiQxJDIkNSQ2XFskN1xdXG4kMWFkZCQ0JDUk
NywgJDcsICQ4L2c7CisKKyAgICAjIENvbnZlcnQgcmVnaXN0ZXIgcG9zdCBpbmRleGluZyB0byBh
IHNlcGFyYXRlIGFkZCBpbnN0cnVjdGlvbi4KKyAgICAjIFRoaXMgY29udmVydHMgImxkcm5lYiBy
OSwgW3IwXSwgcjIiIGludG8gImxkcm5lYiByOSwgW3IwXSIsCisgICAgIyAiYWRkbmUgcjAsIHIw
LCByMiIuCisgICAgcy9eKFxzKikoKGxkcnxzdHIpKG5lKT9bYmhkXT8pKFxzKykoXHcrKSwoXHMq
XHcrLCk/XHMqXFsoXHcrKVxdLFxzKihcdyspLyQxJDIkNSQ2LCQ3IFskOF1cbiQxYWRkJDQkNSQ4
LCAkOCwgJDkvZzsKKworICAgICMgQ29udmVydCAibW92IHBjLCBsciIgaW50byAiYnggbHIiLCBz
aW5jZSB0aGUgZm9ybWVyIG9ubHkgd29ya3MKKyAgICAjIGZvciBzd2l0Y2hpbmcgZnJvbSBhcm0g
dG8gdGh1bWIgKGFuZCBvbmx5IGluIGFybXY3KSwgYnV0IG5vdAorICAgICMgZnJvbSB0aHVtYiB0
byBhcm0uCisgICAgcy9tb3YoXHMqKXBjXHMqLFxzKmxyL2J4JDFsci9nOworfQorCisxOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL3ZlcnNpb24uc2ggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2J1
aWxkL21ha2UvdmVyc2lvbi5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMzZlZGUxMGYyY2UwMjdmNzIyOWQ1OThh
NTQ2OWNhODY5ZmJjM2QxCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtl
L3ZlcnNpb24uc2gKQEAgLTAsMCArMSw3OCBAQAorIyEvYmluL3NoCisjIworIyMgIENvcHlyaWdo
dCAoYykgMjAxMCBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQu
CisjIworIyMgIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0
eWxlIGxpY2Vuc2UKKyMjICB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGlu
IHRoZSByb290IG9mIHRoZSBzb3VyY2UKKyMjICB0cmVlLiBBbiBhZGRpdGlvbmFsIGludGVsbGVj
dHVhbCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQgY2FuIGJlIGZvdW5kCisjIyAgaW4gdGhlIGZpbGUg
UEFURU5UUy4gIEFsbCBjb250cmlidXRpbmcgcHJvamVjdCBhdXRob3JzIG1heQorIyMgIGJlIGZv
dW5kIGluIHRoZSBBVVRIT1JTIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZSB0cmVlLgor
IyMKKworCisKK2ZvciBvcHQgaW4gIiRAIjsgZG8KKyAgICBvcHR2YWw9IiR7b3B0Iyo9fSIKKyAg
ICBjYXNlICIkb3B0IiBpbgorICAgIC0tYmFyZSkgYmFyZT10cnVlIDs7CisgICAgKikgYnJlYWsg
OzsKKyAgICBlc2FjCisgICAgc2hpZnQKK2RvbmUKK3NvdXJjZV9wYXRoPSR7MTotLn0KK291dF9m
aWxlPSR7Mn0KK2lkPSR7MzotVkVSU0lPTl9TVFJJTkd9CisKK2dpdF92ZXJzaW9uX2lkPSIiCitp
ZiBbIC1lICIke3NvdXJjZV9wYXRofS8uZ2l0IiBdOyB0aGVuCisgICAgIyBTb3VyY2UgUGF0aCBp
cyBhIGdpdCB3b3JraW5nIGNvcHkuIENoZWNrIGZvciBsb2NhbCBtb2RpZmljYXRpb25zLgorICAg
ICMgTm90ZSB0aGF0IGdpdCBzdWJtb2R1bGVzIG1heSBoYXZlIGEgZmlsZSBhcyAuZ2l0LCBub3Qg
YSBkaXJlY3RvcnkuCisgICAgZXhwb3J0IEdJVF9ESVI9IiR7c291cmNlX3BhdGh9Ly5naXQiCisg
ICAgZ2l0X3ZlcnNpb25faWQ9YGdpdCBkZXNjcmliZSAtLW1hdGNoPXZbMC05XSogMj4vZGV2L251
bGxgCitmaQorCitjaGFuZ2Vsb2dfdmVyc2lvbj0iIgorZm9yIHAgaW4gIiR7c291cmNlX3BhdGh9
IiAiJHtzb3VyY2VfcGF0aH0vLi4iOyBkbworICAgIGlmIFsgLXogIiRnaXRfdmVyc2lvbl9pZCIg
LWEgLWYgIiR7cH0vQ0hBTkdFTE9HIiBdOyB0aGVuCisgICAgICAgIGNoYW5nZWxvZ192ZXJzaW9u
PWBoZWFkIC1uMSAiJHtwfS9DSEFOR0VMT0ciIHwgYXdrICd7cHJpbnQgJDJ9J2AKKyAgICAgICAg
Y2hhbmdlbG9nX3ZlcnNpb249IiR7Y2hhbmdlbG9nX3ZlcnNpb259IgorICAgICAgICBicmVhawor
ICAgIGZpCitkb25lCit2ZXJzaW9uX3N0cj0iJHtjaGFuZ2Vsb2dfdmVyc2lvbn0ke2dpdF92ZXJz
aW9uX2lkfSIKK2JhcmVfdmVyc2lvbj0ke3ZlcnNpb25fc3RyI3Z9CittYWpvcl92ZXJzaW9uPSR7
YmFyZV92ZXJzaW9uJSUuKn0KK2JhcmVfdmVyc2lvbj0ke2JhcmVfdmVyc2lvbiMqLn0KK21pbm9y
X3ZlcnNpb249JHtiYXJlX3ZlcnNpb24lJS4qfQorYmFyZV92ZXJzaW9uPSR7YmFyZV92ZXJzaW9u
IyoufQorcGF0Y2hfdmVyc2lvbj0ke2JhcmVfdmVyc2lvbiUlLSp9CitiYXJlX3ZlcnNpb249JHti
YXJlX3ZlcnNpb24jJHtwYXRjaF92ZXJzaW9ufX0KK2V4dHJhX3ZlcnNpb249JHtiYXJlX3ZlcnNp
b24jIy19CisKKyNzaW5jZSB0aGV5J2xsIGJlIHVzZWQgYXMgaW50ZWdlcnMgYmVsb3cgbWFrZSBz
dXJlIHRoZXkgYXJlIG9yIGZvcmNlIHRvIDAKK2ZvciB2IGluIG1ham9yX3ZlcnNpb24gbWlub3Jf
dmVyc2lvbiBwYXRjaF92ZXJzaW9uOyBkbworICAgIGlmIGV2YWwgZWNobyBcJCR2IHxncmVwIC1F
IC1xICdbXls6ZGlnaXQ6XV0nOyB0aGVuCisgICAgICAgIGV2YWwgJHY9MAorICAgIGZpCitkb25l
CisKK2lmIFsgJHtiYXJlfSBdOyB0aGVuCisgICAgZWNobyAiJHtjaGFuZ2Vsb2dfdmVyc2lvbn0k
e2dpdF92ZXJzaW9uX2lkfSIgPiAkJC50bXAKK2Vsc2UKKyAgICBjYXQ8PEVPRj4kJC50bXAKKy8v
IFRoaXMgZmlsZSBpcyBnZW5lcmF0ZWQuIERvIG5vdCBlZGl0LgorI2RlZmluZSBWRVJTSU9OX01B
Sk9SICAkbWFqb3JfdmVyc2lvbgorI2RlZmluZSBWRVJTSU9OX01JTk9SICAkbWlub3JfdmVyc2lv
bgorI2RlZmluZSBWRVJTSU9OX1BBVENIICAkcGF0Y2hfdmVyc2lvbgorI2RlZmluZSBWRVJTSU9O
X0VYVFJBICAiJGV4dHJhX3ZlcnNpb24iCisjZGVmaW5lIFZFUlNJT05fUEFDS0VEICgoVkVSU0lP
Tl9NQUpPUjw8MTYpfChWRVJTSU9OX01JTk9SPDw4KXwoVkVSU0lPTl9QQVRDSCkpCisjZGVmaW5l
ICR7aWR9X05PU1AgIiR7dmVyc2lvbl9zdHJ9IgorI2RlZmluZSAke2lkfSAgICAgICIgJHt2ZXJz
aW9uX3N0cn0iCitFT0YKK2ZpCitpZiBbIC1uICIkb3V0X2ZpbGUiIF07IHRoZW4KK2RpZmYgJCQu
dG1wICR7b3V0X2ZpbGV9ID4vZGV2L251bGwgMj4mMSB8fCBjYXQgJCQudG1wID4gJHtvdXRfZmls
ZX0KK2Vsc2UKK2NhdCAkJC50bXAKK2ZpCitybSAkJC50bXAKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvY29uZmlndXJlIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9jb25maWd1cmUKaW5kZXggMTgxZTI3YjdjMDlmMDQ0
Mzc0NjI2NDA5NzMyMDRhZDczNmU4ZDlhNy4uZjdlMTFhYWYyZDRkZmMyNTJiYjdmMWMzMmNiMmZk
MzYxNGIwNWJmNiAxMDA3NTUKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9jb25maWd1cmUKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC9jb25maWd1cmUKQEAgLTk5LDYgKzk5LDcgQEAgRU9GCiAjIGFscGhhYmV0aWNhbGx5IGJ5
IGFyY2hpdGVjdHVyZSwgZ2VuZXJpYy1nbnUgbGFzdC4KIGFsbF9wbGF0Zm9ybXM9IiR7YWxsX3Bs
YXRmb3Jtc30gYXJtNjQtYW5kcm9pZC1nY2MiCiBhbGxfcGxhdGZvcm1zPSIke2FsbF9wbGF0Zm9y
bXN9IGFybTY0LWRhcndpbi1nY2MiCithbGxfcGxhdGZvcm1zPSIke2FsbF9wbGF0Zm9ybXN9IGFy
bTY0LWRhcndpbjIwLWdjYyIKIGFsbF9wbGF0Zm9ybXM9IiR7YWxsX3BsYXRmb3Jtc30gYXJtNjQt
bGludXgtZ2NjIgogYWxsX3BsYXRmb3Jtcz0iJHthbGxfcGxhdGZvcm1zfSBhcm02NC13aW42NC1n
Y2MiCiBhbGxfcGxhdGZvcm1zPSIke2FsbF9wbGF0Zm9ybXN9IGFybTY0LXdpbjY0LXZzMTUiCkBA
IC0xNDksNiArMTUwLDggQEAgYWxsX3BsYXRmb3Jtcz0iJHthbGxfcGxhdGZvcm1zfSB4ODZfNjQt
ZGFyd2luMTUtZ2NjIgogYWxsX3BsYXRmb3Jtcz0iJHthbGxfcGxhdGZvcm1zfSB4ODZfNjQtZGFy
d2luMTYtZ2NjIgogYWxsX3BsYXRmb3Jtcz0iJHthbGxfcGxhdGZvcm1zfSB4ODZfNjQtZGFyd2lu
MTctZ2NjIgogYWxsX3BsYXRmb3Jtcz0iJHthbGxfcGxhdGZvcm1zfSB4ODZfNjQtZGFyd2luMTgt
Z2NjIgorYWxsX3BsYXRmb3Jtcz0iJHthbGxfcGxhdGZvcm1zfSB4ODZfNjQtZGFyd2luMTktZ2Nj
IgorYWxsX3BsYXRmb3Jtcz0iJHthbGxfcGxhdGZvcm1zfSB4ODZfNjQtZGFyd2luMjAtZ2NjIgog
YWxsX3BsYXRmb3Jtcz0iJHthbGxfcGxhdGZvcm1zfSB4ODZfNjQtaXBob25lc2ltdWxhdG9yLWdj
YyIKIGFsbF9wbGF0Zm9ybXM9IiR7YWxsX3BsYXRmb3Jtc30geDg2XzY0LWxpbnV4LWdjYyIKIGFs
bF9wbGF0Zm9ybXM9IiR7YWxsX3BsYXRmb3Jtc30geDg2XzY0LWxpbnV4LWljYyIKQEAgLTYyNyw2
ICs2MzAsNyBAQCBwcm9jZXNzX3Rvb2xjaGFpbigpIHsKICAgICAgICAgY2hlY2tfYWRkX2NmbGFn
cyAtV21pc3NpbmctZGVjbGFyYXRpb25zCiAgICAgICAgIGNoZWNrX2FkZF9jZmxhZ3MgLVdtaXNz
aW5nLXByb3RvdHlwZXMKICAgICAgICAgY2hlY2tfYWRkX2NmbGFncyAtV3VuaW5pdGlhbGl6ZWQK
KyAgICAgICAgY2hlY2tfYWRkX2NmbGFncyAtV3VucmVhY2hhYmxlLWNvZGUtbG9vcC1pbmNyZW1l
bnQKICAgICAgICAgY2hlY2tfYWRkX2NmbGFncyAtV3VudXNlZAogICAgICAgICBjaGVja19hZGRf
Y2ZsYWdzIC1XZXh0cmEKICAgICAgICAgIyBjaGVja19hZGRfY2ZsYWdzIGFsc28gYWRkcyB0byBj
eHhmbGFncy4gZ3Rlc3QgZG9lcyBub3QgZG8gd2VsbCB3aXRoCkBAIC03MzIsNiArNzM2LDcgQEAg
cHJvY2Vzc190b29sY2hhaW4oKSB7CiAgICAgICAgICAgICAjIEdUZXN0TG9nIG11c3QgYmUgbW9k
aWZpZWQgdG8gdXNlIEFuZHJvaWQgbG9nZ2luZyB1dGlsaXRpZXMuCiAgICAgICAgIDs7CiAgICAg
ICAgICotZGFyd2luLSopCisgICAgICAgICAgICBjaGVja19hZGRfY3h4ZmxhZ3MgLXN0ZD1jKysx
MQogICAgICAgICAgICAgIyBpT1MvQVJNIGJ1aWxkcyBkbyBub3Qgd29yayB3aXRoIGd0ZXN0LiBU
aGlzIGRvZXMgbm90IG1hdGNoCiAgICAgICAgICAgICAjIHg4NiB0YXJnZXRzLgogICAgICAgICA7
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy9kZWNvZGVfd2l0aF9kcm9wcy5jIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC9leGFtcGxlcy9kZWNvZGVfd2l0aF9kcm9wcy5jCmluZGV4IGU2OWUyYTlmOWIz
YTExOWQ3NTQ4OTI4NWQ1YTJmMGI5MzdlMzY1MzYuLjAzYzc5YTQ1NjE2MTg1OGZhN2FmZmJlMDIw
M2FkZDUxY2RhMmY4YWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvZGVjb2RlX3dp
dGhfZHJvcHMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4YW1wbGVzL2RlY29kZV93aXRoX2Ryb3BzLmMK
QEAgLTEwNiw3ICsxMDYsNyBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpIHsKICAg
cHJpbnRmKCJVc2luZyAlc1xuIiwgdnB4X2NvZGVjX2lmYWNlX25hbWUoZGVjb2Rlci0+Y29kZWNf
aW50ZXJmYWNlKCkpKTsKIAogICBpZiAodnB4X2NvZGVjX2RlY19pbml0KCZjb2RlYywgZGVjb2Rl
ci0+Y29kZWNfaW50ZXJmYWNlKCksIE5VTEwsIDApKQotICAgIGRpZV9jb2RlYygmY29kZWMsICJG
YWlsZWQgdG8gaW5pdGlhbGl6ZSBkZWNvZGVyLiIpOworICAgIGRpZSgiRmFpbGVkIHRvIGluaXRp
YWxpemUgZGVjb2Rlci4iKTsKIAogICB3aGlsZSAodnB4X3ZpZGVvX3JlYWRlcl9yZWFkX2ZyYW1l
KHJlYWRlcikpIHsKICAgICB2cHhfY29kZWNfaXRlcl90IGl0ZXIgPSBOVUxMOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC9leGFtcGxlcy9wb3N0cHJvYy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy9w
b3N0cHJvYy5jCmluZGV4IDE1NzEzYjk0NmE5NjhiMzMxNDExNzExZjM4YTZmZDM1NzFjM2QzMTMu
LmJlOTk5YjQyOWU3YzIwZjEyZjI3NzczZjMxY2U0ZGU3NTBiYTU5Y2IgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvZXhhbXBsZXMvcG9zdHByb2MuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4YW1wbGVzL3Bv
c3Rwcm9jLmMKQEAgLTg2LDkgKzg2LDkgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2
KSB7CiAgIHJlcyA9IHZweF9jb2RlY19kZWNfaW5pdCgmY29kZWMsIGRlY29kZXItPmNvZGVjX2lu
dGVyZmFjZSgpLCBOVUxMLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgVlBYX0NPREVDX1VT
RV9QT1NUUFJPQyk7CiAgIGlmIChyZXMgPT0gVlBYX0NPREVDX0lOQ0FQQUJMRSkKLSAgICBkaWVf
Y29kZWMoJmNvZGVjLCAiUG9zdHByb2Mgbm90IHN1cHBvcnRlZCBieSB0aGlzIGRlY29kZXIuIik7
CisgICAgZGllKCJQb3N0cHJvYyBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMgZGVjb2Rlci4iKTsKIAot
ICBpZiAocmVzKSBkaWVfY29kZWMoJmNvZGVjLCAiRmFpbGVkIHRvIGluaXRpYWxpemUgZGVjb2Rl
ci4iKTsKKyAgaWYgKHJlcykgZGllKCJGYWlsZWQgdG8gaW5pdGlhbGl6ZSBkZWNvZGVyLiIpOwog
CiAgIHdoaWxlICh2cHhfdmlkZW9fcmVhZGVyX3JlYWRfZnJhbWUocmVhZGVyKSkgewogICAgIHZw
eF9jb2RlY19pdGVyX3QgaXRlciA9IE5VTEw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4YW1w
bGVzL3NldF9tYXBzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4YW1wbGVzL3NldF9tYXBzLmMKaW5kZXggYzBj
N2QxMGU3MmE3MmNmNjMyMTkxYmY4N2VmMDJkNzA3N2RiYWYxNS4uODY3ZTQ3M2FlYTRiYmI5ODRi
NjI3YTkwMTM2YjU0M2Q4ZmUwMDVhYyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy9z
ZXRfbWFwcy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvc2V0X21hcHMuYwpAQCAtMjA5LDcg
KzIwOSw3IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikgewogICAgIGRpZSgiRmFp
bGVkIHRvIG9wZW4gJXMgZm9yIHJlYWRpbmcuIiwgYXJndls0XSk7CiAKICAgaWYgKHZweF9jb2Rl
Y19lbmNfaW5pdCgmY29kZWMsIGVuY29kZXItPmNvZGVjX2ludGVyZmFjZSgpLCAmY2ZnLCAwKSkK
LSAgICBkaWVfY29kZWMoJmNvZGVjLCAiRmFpbGVkIHRvIGluaXRpYWxpemUgZW5jb2RlciIpOwor
ICAgIGRpZSgiRmFpbGVkIHRvIGluaXRpYWxpemUgZW5jb2RlciIpOwogCiAgIC8vIEVuY29kZSBm
cmFtZXMuCiAgIHdoaWxlICh2cHhfaW1nX3JlYWQoJnJhdywgaW5maWxlKSkgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC9leGFtcGxlcy9zaW1wbGVfZGVjb2Rlci5jIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFt
cGxlcy9zaW1wbGVfZGVjb2Rlci5jCmluZGV4IDJiYjFhMDUyNDViZDNhYmUyN2ZhMmU0NmNjMDYx
YmE4MjJiMGE3ZWIuLmQwODllODI2ZDViOGVhNGNkMjQzNDYwZDNhMGFkYWI0ZGU0ZjJmNTYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvc2ltcGxlX2RlY29kZXIuYworKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L2V4YW1wbGVzL3NpbXBsZV9kZWNvZGVyLmMKQEAgLTExOCw3ICsxMTgsNyBAQCBpbnQg
bWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpIHsKICAgcHJpbnRmKCJVc2luZyAlc1xuIiwgdnB4
X2NvZGVjX2lmYWNlX25hbWUoZGVjb2Rlci0+Y29kZWNfaW50ZXJmYWNlKCkpKTsKIAogICBpZiAo
dnB4X2NvZGVjX2RlY19pbml0KCZjb2RlYywgZGVjb2Rlci0+Y29kZWNfaW50ZXJmYWNlKCksIE5V
TEwsIDApKQotICAgIGRpZV9jb2RlYygmY29kZWMsICJGYWlsZWQgdG8gaW5pdGlhbGl6ZSBkZWNv
ZGVyLiIpOworICAgIGRpZSgiRmFpbGVkIHRvIGluaXRpYWxpemUgZGVjb2Rlci4iKTsKIAogICB3
aGlsZSAodnB4X3ZpZGVvX3JlYWRlcl9yZWFkX2ZyYW1lKHJlYWRlcikpIHsKICAgICB2cHhfY29k
ZWNfaXRlcl90IGl0ZXIgPSBOVUxMOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy9z
aW1wbGVfZW5jb2Rlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy9zaW1wbGVfZW5jb2Rlci5jCmlu
ZGV4IGRkZTYzNDRmOGQ2MzI0ODdiMTIxMmYyM2U0NGY5OGQ0NjBiMGY5NTYuLmRmZmRkNmQ3ZGEz
ZTU1MmJkYTI4ZTQyYWViZmIxZDI2MGU2ZDg1N2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhh
bXBsZXMvc2ltcGxlX2VuY29kZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4YW1wbGVzL3NpbXBsZV9l
bmNvZGVyLmMKQEAgLTIxOCw3ICsyMTgsNyBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqKmFy
Z3YpIHsKICAgICBkaWUoIkZhaWxlZCB0byBvcGVuICVzIGZvciByZWFkaW5nLiIsIGluZmlsZV9h
cmcpOwogCiAgIGlmICh2cHhfY29kZWNfZW5jX2luaXQoJmNvZGVjLCBlbmNvZGVyLT5jb2RlY19p
bnRlcmZhY2UoKSwgJmNmZywgMCkpCi0gICAgZGllX2NvZGVjKCZjb2RlYywgIkZhaWxlZCB0byBp
bml0aWFsaXplIGVuY29kZXIiKTsKKyAgICBkaWUoIkZhaWxlZCB0byBpbml0aWFsaXplIGVuY29k
ZXIiKTsKIAogICAvLyBFbmNvZGUgZnJhbWVzLgogICB3aGlsZSAodnB4X2ltZ19yZWFkKCZyYXcs
IGluZmlsZSkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvdHdvcGFzc19lbmNv
ZGVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L2V4YW1wbGVzL3R3b3Bhc3NfZW5jb2Rlci5jCmluZGV4IDRlNjNh
N2E2Yzk3NDI5MTNkNmU1MTlhOTZlM2MwNTIyN2U1MTVmZTguLjNkOTUwYjJjNGI5ODE1ZTM2OTUw
NzI5ZjFhYmE2OTg1MzI1NzliZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvdHdv
cGFzc19lbmNvZGVyLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy90d29wYXNzX2VuY29kZXIu
YwpAQCAtMTI4LDcgKzEyOCw3IEBAIHN0YXRpYyB2cHhfZml4ZWRfYnVmX3QgcGFzczAodnB4X2lt
YWdlX3QgKnJhdywgRklMRSAqaW5maWxlLAogICB2cHhfZml4ZWRfYnVmX3Qgc3RhdHMgPSB7IE5V
TEwsIDAgfTsKIAogICBpZiAodnB4X2NvZGVjX2VuY19pbml0KCZjb2RlYywgZW5jb2Rlci0+Y29k
ZWNfaW50ZXJmYWNlKCksIGNmZywgMCkpCi0gICAgZGllX2NvZGVjKCZjb2RlYywgIkZhaWxlZCB0
byBpbml0aWFsaXplIGVuY29kZXIiKTsKKyAgICBkaWUoIkZhaWxlZCB0byBpbml0aWFsaXplIGVu
Y29kZXIiKTsKIAogICAvLyBDYWxjdWxhdGUgZnJhbWUgc3RhdGlzdGljcy4KICAgd2hpbGUgKHZw
eF9pbWdfcmVhZChyYXcsIGluZmlsZSkpIHsKQEAgLTE2NCw3ICsxNjQsNyBAQCBzdGF0aWMgdm9p
ZCBwYXNzMSh2cHhfaW1hZ2VfdCAqcmF3LCBGSUxFICppbmZpbGUsIGNvbnN0IGNoYXIgKm91dGZp
bGVfbmFtZSwKICAgaWYgKCF3cml0ZXIpIGRpZSgiRmFpbGVkIHRvIG9wZW4gJXMgZm9yIHdyaXRp
bmciLCBvdXRmaWxlX25hbWUpOwogCiAgIGlmICh2cHhfY29kZWNfZW5jX2luaXQoJmNvZGVjLCBl
bmNvZGVyLT5jb2RlY19pbnRlcmZhY2UoKSwgY2ZnLCAwKSkKLSAgICBkaWVfY29kZWMoJmNvZGVj
LCAiRmFpbGVkIHRvIGluaXRpYWxpemUgZW5jb2RlciIpOworICAgIGRpZSgiRmFpbGVkIHRvIGlu
aXRpYWxpemUgZW5jb2RlciIpOwogCiAgIC8vIEVuY29kZSBmcmFtZXMuCiAgIHdoaWxlICh2cHhf
aW1nX3JlYWQocmF3LCBpbmZpbGUpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4YW1wbGVz
L3ZwOGN4X3NldF9yZWYuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvdnA4Y3hfc2V0X3JlZi5jCmlu
ZGV4IDg0NjQ3N2M2MWVmMmEzYzlkY2FjNTIzZmM3MWIxN2Y3ZTM3MjU3ZjcuLmNhNTI4ZjllOTBh
YzlkNWUyMTc3MzQwN2U4YTExNmMyNzU3NTgwMTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhh
bXBsZXMvdnA4Y3hfc2V0X3JlZi5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvdnA4Y3hfc2V0
X3JlZi5jCkBAIC0xNTUsNyArMTU1LDcgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2
KSB7CiAgICAgZGllKCJGYWlsZWQgdG8gb3BlbiAlcyBmb3IgcmVhZGluZy4iLCBhcmd2WzNdKTsK
IAogICBpZiAodnB4X2NvZGVjX2VuY19pbml0KCZjb2RlYywgZW5jb2Rlci0+Y29kZWNfaW50ZXJm
YWNlKCksICZjZmcsIDApKQotICAgIGRpZV9jb2RlYygmY29kZWMsICJGYWlsZWQgdG8gaW5pdGlh
bGl6ZSBlbmNvZGVyIik7CisgICAgZGllKCJGYWlsZWQgdG8gaW5pdGlhbGl6ZSBlbmNvZGVyIik7
CiAKICAgLy8gRW5jb2RlIGZyYW1lcy4KICAgd2hpbGUgKHZweF9pbWdfcmVhZCgmcmF3LCBpbmZp
bGUpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4YW1wbGVzL3ZwOV9sb3NzbGVzc19lbmNv
ZGVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L2V4YW1wbGVzL3ZwOV9sb3NzbGVzc19lbmNvZGVyLmMKaW5kZXgg
Y2I1Y2E2YmZlMGI3NjM0MzcyNmVkMTE5YTliZmMwMTEwMjIyNzgyOS4uYzRlYjNhOGIxNzFmNTU3
YTE0NDdlZDkwYjVjZTdhNmYzNzNhNzZlMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxl
cy92cDlfbG9zc2xlc3NfZW5jb2Rlci5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvdnA5X2xv
c3NsZXNzX2VuY29kZXIuYwpAQCAtMTEwLDcgKzExMCw3IEBAIGludCBtYWluKGludCBhcmdjLCBj
aGFyICoqYXJndikgewogICAgIGRpZSgiRmFpbGVkIHRvIG9wZW4gJXMgZm9yIHJlYWRpbmcuIiwg
YXJndlszXSk7CiAKICAgaWYgKHZweF9jb2RlY19lbmNfaW5pdCgmY29kZWMsIGVuY29kZXItPmNv
ZGVjX2ludGVyZmFjZSgpLCAmY2ZnLCAwKSkKLSAgICBkaWVfY29kZWMoJmNvZGVjLCAiRmFpbGVk
IHRvIGluaXRpYWxpemUgZW5jb2RlciIpOworICAgIGRpZSgiRmFpbGVkIHRvIGluaXRpYWxpemUg
ZW5jb2RlciIpOwogCiAgIGlmICh2cHhfY29kZWNfY29udHJvbF8oJmNvZGVjLCBWUDlFX1NFVF9M
T1NTTEVTUywgMSkpCiAgICAgZGllX2NvZGVjKCZjb2RlYywgIkZhaWxlZCB0byB1c2UgbG9zc2xl
c3MgbW9kZSIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy92cDlfc3BhdGlhbF9z
dmNfZW5jb2Rlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy92cDlfc3BhdGlhbF9zdmNfZW5jb2Rl
ci5jCmluZGV4IGI5ODc5ODlhODZjZjFmMTE0OWRiODdlNmRiNWYyOGQ3MDY4NGM5ZjIuLjYzMDU1
NzI5Nzk1ZWJjOTM0MDdlZmZiMWE1NmM3MWQxODU3ZjBhMTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvZXhhbXBsZXMvdnA5X3NwYXRpYWxfc3ZjX2VuY29kZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4
YW1wbGVzL3ZwOV9zcGF0aWFsX3N2Y19lbmNvZGVyLmMKQEAgLTgyOCwxMiArODI4LDE1IEBAIHN0
YXRpYyB2b2lkIHN2Y19vdXRwdXRfcmNfc3RhdHMoCiAgIHZweF9jb2RlY19jb250cm9sKGNvZGVj
LCBWUDlFX0dFVF9TVkNfTEFZRVJfSUQsIGxheWVyX2lkKTsKICAgcGFyc2Vfc3VwZXJmcmFtZV9p
bmRleChjeF9wa3QtPmRhdGEuZnJhbWUuYnVmLCBjeF9wa3QtPmRhdGEuZnJhbWUuc3osCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgc2l6ZXNfcGFyc2VkLCAmY291bnQpOwotICBpZiAoZW5jX2Nm
Zy0+c3NfbnVtYmVyX2xheWVycyA9PSAxKSBzaXplc1swXSA9IGN4X3BrdC0+ZGF0YS5mcmFtZS5z
ejsKLSAgZm9yIChzbCA9IDA7IHNsIDwgZW5jX2NmZy0+c3NfbnVtYmVyX2xheWVyczsgKytzbCkg
ewotICAgIHNpemVzW3NsXSA9IDA7Ci0gICAgaWYgKGN4X3BrdC0+ZGF0YS5mcmFtZS5zcGF0aWFs
X2xheWVyX2VuY29kZWRbc2xdKSB7Ci0gICAgICBzaXplc1tzbF0gPSBzaXplc19wYXJzZWRbbnVt
X2xheWVyc19lbmNvZGVkXTsKLSAgICAgIG51bV9sYXllcnNfZW5jb2RlZCsrOworICBpZiAoZW5j
X2NmZy0+c3NfbnVtYmVyX2xheWVycyA9PSAxKSB7CisgICAgc2l6ZXNbMF0gPSBjeF9wa3QtPmRh
dGEuZnJhbWUuc3o7CisgIH0gZWxzZSB7CisgICAgZm9yIChzbCA9IDA7IHNsIDwgZW5jX2NmZy0+
c3NfbnVtYmVyX2xheWVyczsgKytzbCkgeworICAgICAgc2l6ZXNbc2xdID0gMDsKKyAgICAgIGlm
IChjeF9wa3QtPmRhdGEuZnJhbWUuc3BhdGlhbF9sYXllcl9lbmNvZGVkW3NsXSkgeworICAgICAg
ICBzaXplc1tzbF0gPSBzaXplc19wYXJzZWRbbnVtX2xheWVyc19lbmNvZGVkXTsKKyAgICAgICAg
bnVtX2xheWVyc19lbmNvZGVkKys7CisgICAgICB9CiAgICAgfQogICB9CiAgIGZvciAoc2wgPSAw
OyBzbCA8IGVuY19jZmctPnNzX251bWJlcl9sYXllcnM7ICsrc2wpIHsKQEAgLTEwNTAsNiArMTA1
Myw5IEBAIGludCBtYWluKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikgewogCiAgIHZweF9j
b2RlY19jb250cm9sKCZlbmNvZGVyLCBWUDlFX1NFVF9UVU5FX0NPTlRFTlQsIGFwcF9pbnB1dC50
dW5lX2NvbnRlbnQpOwogCisgIHZweF9jb2RlY19jb250cm9sKCZlbmNvZGVyLCBWUDlFX1NFVF9E
SVNBQkxFX09WRVJTSE9PVF9NQVhRX0NCUiwgMCk7CisgIHZweF9jb2RlY19jb250cm9sKCZlbmNv
ZGVyLCBWUDlFX1NFVF9ESVNBQkxFX0xPT1BGSUxURVIsIDApOworCiAgIHN2Y19kcm9wX2ZyYW1l
LmZyYW1lZHJvcF9tb2RlID0gRlVMTF9TVVBFUkZSQU1FX0RST1A7CiAgIGZvciAoc2wgPSAwOyBz
bCA8ICh1bnNpZ25lZCBpbnQpc3ZjX2N0eC5zcGF0aWFsX2xheWVyczsgKytzbCkKICAgICBzdmNf
ZHJvcF9mcmFtZS5mcmFtZWRyb3BfdGhyZXNoW3NsXSA9IGVuY19jZmcucmNfZHJvcGZyYW1lX3Ro
cmVzaDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvdnA5Y3hfc2V0X3JlZi5jIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC9leGFtcGxlcy92cDljeF9zZXRfcmVmLmMKaW5kZXggOTExYWQzODYzMGM2NTFk
ZGY0MjQ5YWE1ZDQwNzkyZTJjOWIwMmRjZi4uMWEwODIzMTUzYmQwYzkyZWRkOWQwZWU3ODcxNmE2
ZmY5ZDYzM2NmZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy92cDljeF9zZXRfcmVm
LmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy92cDljeF9zZXRfcmVmLmMKQEAgLTI1MSw3ICsy
NTEsNyBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpIHsKICAgICBkaWUoIkZhaWxl
ZCB0byBvcGVuICVzIGZvciByZWFkaW5nLiIsIGluZmlsZV9hcmcpOwogCiAgIGlmICh2cHhfY29k
ZWNfZW5jX2luaXQoJmVjb2RlYywgZW5jb2Rlci0+Y29kZWNfaW50ZXJmYWNlKCksICZjZmcsIDAp
KQotICAgIGRpZV9jb2RlYygmZWNvZGVjLCAiRmFpbGVkIHRvIGluaXRpYWxpemUgZW5jb2RlciIp
OworICAgIGRpZSgiRmFpbGVkIHRvIGluaXRpYWxpemUgZW5jb2RlciIpOwogCiAgIC8vIERpc2Fi
bGUgYWx0X3JlZi4KICAgaWYgKHZweF9jb2RlY19jb250cm9sKCZlY29kZWMsIFZQOEVfU0VUX0VO
QUJMRUFVVE9BTFRSRUYsIDApKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy92cHhf
ZGVjX2Z1enplci5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvdnB4X2RlY19mdXp6ZXIuY2MKaW5k
ZXggZDU1ZmUxNTcxYmUzNTk5OTVjYmZiNDM4YWI5ZDM4YmE0OWY4ODcxMC4uMzRjMGUxMTIzODNi
OGExYWM4MzA0YTc5MWRhOThhNzIzOThkYjVhOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFt
cGxlcy92cHhfZGVjX2Z1enplci5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4YW1wbGVzL3ZweF9kZWNf
ZnV6emVyLmNjCkBAIC05NCw2ICs5NCwxMyBAQCBleHRlcm4gIkMiIGludCBMTFZNRnV6emVyVGVz
dE9uZUlucHV0KGNvbnN0IHVpbnQ4X3QgKmRhdGEsIHNpemVfdCBzaXplKSB7CiAgICAgcmV0dXJu
IDA7CiAgIH0KIAorICBpZiAodGhyZWFkcyA+IDEpIHsKKyAgICBjb25zdCBpbnQgZW5hYmxlID0g
KGRhdGFbSVZGX0ZJTEVfSERSX1NaXSAmIDB4YTApICE9IDA7CisgICAgY29uc3QgdnB4X2NvZGVj
X2Vycl90IGVyciA9CisgICAgICAgIHZweF9jb2RlY19jb250cm9sKCZjb2RlYywgVlA5RF9TRVRf
TE9PUF9GSUxURVJfT1BULCBlbmFibGUpOworICAgIHN0YXRpY19jYXN0PHZvaWQ+KGVycik7Cisg
IH0KKwogICBkYXRhICs9IElWRl9GSUxFX0hEUl9TWjsKICAgc2l6ZSAtPSBJVkZfRklMRV9IRFJf
U1o7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvdnB4X3RlbXBvcmFsX3N2Y19l
bmNvZGVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4YW1wbGVzL3ZweF90ZW1wb3JhbF9zdmNfZW5jb2Rlci5j
CmluZGV4IDkyNTA0M2QxMDY2NzI1N2Q4NDY0ZTEzMzZlZDA4OWI1NjZkMGU3MzMuLmZmZWFlMmFi
YzRmNjhjOTM5Zjk4NDdmNTc2NzViYTQzOGJhNThhNzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
ZXhhbXBsZXMvdnB4X3RlbXBvcmFsX3N2Y19lbmNvZGVyLmMKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFt
cGxlcy92cHhfdGVtcG9yYWxfc3ZjX2VuY29kZXIuYwpAQCAtODE1LDcgKzgxNSw3IEBAIGludCBt
YWluKGludCBhcmdjLCBjaGFyICoqYXJndikgewogI2Vsc2UKICAgaWYgKHZweF9jb2RlY19lbmNf
aW5pdCgmY29kZWMsIGVuY29kZXItPmNvZGVjX2ludGVyZmFjZSgpLCAmY2ZnLCAwKSkKICNlbmRp
ZiAgLy8gQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKLSAgICBkaWVfY29kZWMoJmNvZGVjLCAiRmFp
bGVkIHRvIGluaXRpYWxpemUgZW5jb2RlciIpOworICAgIGRpZSgiRmFpbGVkIHRvIGluaXRpYWxp
emUgZW5jb2RlciIpOwogCiAgIGlmIChzdHJuY21wKGVuY29kZXItPm5hbWUsICJ2cDgiLCAzKSA9
PSAwKSB7CiAgICAgdnB4X2NvZGVjX2NvbnRyb2woJmNvZGVjLCBWUDhFX1NFVF9DUFVVU0VELCAt
c3BlZWQpOwpAQCAtODMxLDYgKzgzMSw3IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJn
dikgewogICB9IGVsc2UgaWYgKHN0cm5jbXAoZW5jb2Rlci0+bmFtZSwgInZwOSIsIDMpID09IDAp
IHsKICAgICB2cHhfc3ZjX2V4dHJhX2NmZ190IHN2Y19wYXJhbXM7CiAgICAgbWVtc2V0KCZzdmNf
cGFyYW1zLCAwLCBzaXplb2Yoc3ZjX3BhcmFtcykpOworICAgIHZweF9jb2RlY19jb250cm9sKCZj
b2RlYywgVlA5RV9TRVRfRElTQUJMRV9PVkVSU0hPT1RfTUFYUV9DQlIsIDApOwogICAgIHZweF9j
b2RlY19jb250cm9sKCZjb2RlYywgVlA4RV9TRVRfQ1BVVVNFRCwgc3BlZWQpOwogICAgIHZweF9j
b2RlY19jb250cm9sKCZjb2RlYywgVlA5RV9TRVRfQVFfTU9ERSwgMyk7CiAgICAgdnB4X2NvZGVj
X2NvbnRyb2woJmNvZGVjLCBWUDlFX1NFVF9HRl9DQlJfQk9PU1RfUENULCAwKTsKQEAgLTg0MCw2
ICs4NDEsNyBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpIHsKICAgICB2cHhfY29k
ZWNfY29udHJvbCgmY29kZWMsIFZQOEVfU0VUX1NUQVRJQ19USFJFU0hPTEQsIDEpOwogICAgIHZw
eF9jb2RlY19jb250cm9sKCZjb2RlYywgVlA5RV9TRVRfVFVORV9DT05URU5ULCAwKTsKICAgICB2
cHhfY29kZWNfY29udHJvbCgmY29kZWMsIFZQOUVfU0VUX1RJTEVfQ09MVU1OUywgZ2V0X21zYihj
ZmcuZ190aHJlYWRzKSk7CisgICAgdnB4X2NvZGVjX2NvbnRyb2woJmNvZGVjLCBWUDlFX1NFVF9E
SVNBQkxFX0xPT1BGSUxURVIsIDApOwogI2lmIFJPSV9NQVAKICAgICBzZXRfcm9pX21hcChlbmNv
ZGVyLT5uYW1lLCAmY2ZnLCAmcm9pKTsKICAgICBpZiAodnB4X2NvZGVjX2NvbnRyb2woJmNvZGVj
LCBWUDlFX1NFVF9ST0lfTUFQLCAmcm9pKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvbGlicy5t
ayBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvbGlicy5tawppbmRleCA1NjlkYmRjNTBiY2Y4MmVlYmNlZjRjNGE1MjUw
MjA3OGM0NDJlY2E3Li5iNWJjMzU3NTVjZjE2ZGY3NjUwMmUwNGZlMDgyOTg1YzE4MGRjZWFhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L2xpYnMubWsKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9saWJzLm1rCkBA
IC02Myw2ICs2Myw3IEBAIGlmZXEgKCQoQ09ORklHX1ZQOF9FTkNPREVSKSx5ZXMpCiAgIENPREVD
X1NSQ1MteWVzICs9ICQoYWRkcHJlZml4ICQoVlA4X1BSRUZJWCksJChjYWxsIGVuYWJsZWQsVlA4
X0NYX1NSQ1MpKQogICBDT0RFQ19FWFBPUlRTLXllcyArPSAkKGFkZHByZWZpeCAkKFZQOF9QUkVG
SVgpLCQoVlA4X0NYX0VYUE9SVFMpKQogICBJTlNUQUxMLUxJQlMteWVzICs9IGluY2x1ZGUvdnB4
L3ZwOC5oIGluY2x1ZGUvdnB4L3ZwOGN4LmgKKyAgSU5TVEFMTC1MSUJTLXllcyArPSBpbmNsdWRl
L3ZweC92cHhfZXh0X3JhdGVjdHJsLmgKICAgSU5TVEFMTF9NQVBTICs9IGluY2x1ZGUvdnB4LyUg
JChTUkNfUEFUSF9CQVJFKS8kKFZQOF9QUkVGSVgpLyUKICAgQ09ERUNfRE9DX1NFQ1RJT05TICs9
IHZwOCB2cDhfZW5jb2RlcgogZW5kaWYKQEAgLTg3LDEwICs4OCwyMCBAQCBpZmVxICgkKENPTkZJ
R19WUDlfRU5DT0RFUikseWVzKQogICBDT0RFQ19TUkNTLXllcyArPSAkKGFkZHByZWZpeCAkKFZQ
OV9QUkVGSVgpLCQoY2FsbCBlbmFibGVkLFZQOV9DWF9TUkNTKSkKICAgQ09ERUNfRVhQT1JUUy15
ZXMgKz0gJChhZGRwcmVmaXggJChWUDlfUFJFRklYKSwkKFZQOV9DWF9FWFBPUlRTKSkKICAgQ09E
RUNfU1JDUy15ZXMgKz0gJChWUDlfUFJFRklYKXZwOWN4Lm1rIHZweC92cDguaCB2cHgvdnA4Y3gu
aAorICBDT0RFQ19TUkNTLXllcyArPSB2cHgvdnB4X2V4dF9yYXRlY3RybC5oCiAgIElOU1RBTEwt
TElCUy15ZXMgKz0gaW5jbHVkZS92cHgvdnA4LmggaW5jbHVkZS92cHgvdnA4Y3guaAorICBJTlNU
QUxMLUxJQlMteWVzICs9IGluY2x1ZGUvdnB4L3ZweF9leHRfcmF0ZWN0cmwuaAogICBJTlNUQUxM
X01BUFMgKz0gaW5jbHVkZS92cHgvJSAkKFNSQ19QQVRIX0JBUkUpLyQoVlA5X1BSRUZJWCkvJQot
ICBDT0RFQ19ET0NfU1JDUyArPSB2cHgvdnA4LmggdnB4L3ZwOGN4LmgKKyAgQ09ERUNfRE9DX1NS
Q1MgKz0gdnB4L3ZwOC5oIHZweC92cDhjeC5oIHZweC92cHhfZXh0X3JhdGVjdHJsLmgKICAgQ09E
RUNfRE9DX1NFQ1RJT05TICs9IHZwOSB2cDlfZW5jb2RlcgorCisgIFJDX1JUQ19TUkNTIDo9ICQo
YWRkcHJlZml4ICQoVlA5X1BSRUZJWCksJChjYWxsIGVuYWJsZWQsVlA5X0NYX1NSQ1MpKQorICBS
Q19SVENfU1JDUyArPSAkKFZQOV9QUkVGSVgpdnA5Y3gubWsgdnB4L3ZwOC5oIHZweC92cDhjeC5o
CisgIFJDX1JUQ19TUkNTICs9IHZweC92cHhfZXh0X3JhdGVjdHJsLmgKKyAgUkNfUlRDX1NSQ1Mg
Kz0gJChWUDlfUFJFRklYKXJhdGVjdHJsX3J0Yy5jYworICBSQ19SVENfU1JDUyArPSAkKFZQOV9Q
UkVGSVgpcmF0ZWN0cmxfcnRjLmgKKyAgSU5TVEFMTC1TUkNTLSQoQ09ORklHX0NPREVDX1NSQ1Mp
ICs9ICQoVlA5X1BSRUZJWClyYXRlY3RybF9ydGMuY2MKKyAgSU5TVEFMTC1TUkNTLSQoQ09ORklH
X0NPREVDX1NSQ1MpICs9ICQoVlA5X1BSRUZJWClyYXRlY3RybF9ydGMuaAogZW5kaWYKIAogaWZl
cSAoJChDT05GSUdfVlA5X0RFQ09ERVIpLHllcykKQEAgLTExNSw2ICsxMjYsNyBAQCBlbmRpZgog
aWZlcSAoJChDT05GSUdfTVNWUykseWVzKQogQ09ERUNfTElCPSQoaWYgJChDT05GSUdfU1RBVElD
X01TVkNSVCksdnB4bXQsdnB4bWQpCiBHVEVTVF9MSUI9JChpZiAkKENPTkZJR19TVEFUSUNfTVNW
Q1JUKSxndGVzdG10LGd0ZXN0bWQpCitSQ19SVENfTElCPSQoaWYgJChDT05GSUdfU1RBVElDX01T
VkNSVCksdnA5cmNtdCx2cDlyY21kKQogIyBUaGlzIHZhcmlhYmxlIHVzZXMgZGVmZXJyZWQgZXhw
YW5zaW9uIGludGVudGlvbmFsbHksIHNpbmNlIHRoZSByZXN1bHRzIG9mCiAjICQod2lsZGNhcmQp
IG1heSBjaGFuZ2UgZHVyaW5nIHRoZSBjb3Vyc2Ugb2YgdGhlIE1ha2UuCiBWU19QTEFURk9STVMg
PSAkKGZvcmVhY2ggZCwkKHdpbGRjYXJkICovUmVsZWFzZS8kKENPREVDX0xJQikubGliKSwkKHdv
cmQgMSwkKHN1YnN0IC8sICwkKGQpKSkpCkBAIC0xNjUsNyArMTc3LDE4IEBAIElOU1RBTEwtTElC
Uy0kKENPTkZJR19TVEFUSUMpICs9ICQoTElCU1VCRElSKS9saWJ2cHguYQogSU5TVEFMTC1MSUJT
LSQoQ09ORklHX0RFQlVHX0xJQlMpICs9ICQoTElCU1VCRElSKS9saWJ2cHhfZy5hCiBlbmRpZgog
CitpZmVxICgkKENPTkZJR19WUDlfRU5DT0RFUikkKENPTkZJR19SQVRFX0NUUkwpLHllc3llcykK
KyAgU0lNUExFX0VOQ09ERV9TUkNTIDo9ICQoY2FsbCBlbmFibGVkLENPREVDX1NSQ1MpCisgIFNJ
TVBMRV9FTkNPREVfU1JDUyArPSAkKFZQOV9QUkVGSVgpc2ltcGxlX2VuY29kZS5jYworICBTSU1Q
TEVfRU5DT0RFX1NSQ1MgKz0gJChWUDlfUFJFRklYKXNpbXBsZV9lbmNvZGUuaAorICBTSU1QTEVf
RU5DT0RFX1NSQ1MgKz0gaXZmZW5jLmgKKyAgU0lNUExFX0VOQ09ERV9TUkNTICs9IGl2ZmVuYy5j
CisgIElOU1RBTEwtU1JDUy0kKENPTkZJR19DT0RFQ19TUkNTKSArPSAkKFZQOV9QUkVGSVgpc2lt
cGxlX2VuY29kZS5jYworICBJTlNUQUxMLVNSQ1MtJChDT05GSUdfQ09ERUNfU1JDUykgKz0gJChW
UDlfUFJFRklYKXNpbXBsZV9lbmNvZGUuaAorZW5kaWYKKwogQ09ERUNfU1JDUz0kKGNhbGwgZW5h
YmxlZCxDT0RFQ19TUkNTKQorCiBJTlNUQUxMLVNSQ1MtJChDT05GSUdfQ09ERUNfU1JDUykgKz0g
JChDT0RFQ19TUkNTKQogSU5TVEFMTC1TUkNTLSQoQ09ORklHX0NPREVDX1NSQ1MpICs9ICQoY2Fs
bCBlbmFibGVkLENPREVDX0VYUE9SVFMpCiAKQEAgLTIyNSwxNSArMjQ4LDQ1IEBAIFBST0pFQ1RT
LXllcyArPSB2cHguJChWQ1BST0pfU0ZYKQogdnB4LiQoVkNQUk9KX1NGWCk6IHZweF9jb25maWcu
YXNtCiB2cHguJChWQ1BST0pfU0ZYKTogJChSVENEKQogCi1lbmRpZgotZWxzZQordnA5cmMuJChW
Q1BST0pfU0ZYKTogXAorICAgIFZDUFJPSl9TUkNTPSQoZmlsdGVyLW91dCAkKGFkZHByZWZpeCAl
LCAkKEFTTV9JTkNMVURFUykpLCAkXikKKwordnA5cmMuJChWQ1BST0pfU0ZYKTogJChSQ19SVENf
U1JDUykKKwlAZWNobyAiICAgIFtDUkVBVEVdICRAIgorCSQocWV4ZWMpJChHRU5fVkNQUk9KKSBc
CisgICAgICAgICAgICAkKGlmICQoQ09ORklHX1NIQVJFRCksLS1kbGwsLS1saWIpIFwKKyAgICAg
ICAgICAgIC0tdGFyZ2V0PSQoVE9PTENIQUlOKSBcCisgICAgICAgICAgICAkKGlmICQoQ09ORklH
X1NUQVRJQ19NU1ZDUlQpLC0tc3RhdGljLWNydCkgXAorICAgICAgICAgICAgLS1uYW1lPXZwOXJj
IFwKKyAgICAgICAgICAgIC0tcHJvai1ndWlkPUMyNkZGOTUyLTk0OTQtNDgzOC05QTNGLTdGM0Q0
RjYxMzM4NSBcCisgICAgICAgICAgICAtLXZlcj0kKENPTkZJR19WU19WRVJTSU9OKSBcCisgICAg
ICAgICAgICAtLXNyYy1wYXRoLWJhcmU9IiQoU1JDX1BBVEhfQkFSRSkiIFwKKyAgICAgICAgICAg
IC0tb3V0PSRAICQoQ0ZMQUdTKSBcCisgICAgICAgICAgICAkKGZpbHRlciAkKFNSQ19QQVRIX0JB
UkUpL3ZwOS8lLmMsICQoVkNQUk9KX1NSQ1MpKSBcCisgICAgICAgICAgICAkKGZpbHRlciAkKFNS
Q19QQVRIX0JBUkUpL3ZwOS8lLmNjLCAkKFZDUFJPSl9TUkNTKSkgXAorICAgICAgICAgICAgJChm
aWx0ZXIgJChTUkNfUEFUSF9CQVJFKS92cDkvJS5oLCAkKFZDUFJPSl9TUkNTKSkgXAorICAgICAg
ICAgICAgJChmaWx0ZXIgJChTUkNfUEFUSF9CQVJFKS92cHgvJSwgJChWQ1BST0pfU1JDUykpIFwK
KyAgICAgICAgICAgICQoZmlsdGVyICQoU1JDX1BBVEhfQkFSRSkvdnB4X2RzcC8lLCAkKFZDUFJP
Sl9TUkNTKSkgXAorICAgICAgICAgICAgJChmaWx0ZXItb3V0ICQoYWRkcHJlZml4ICQoU1JDX1BB
VEhfQkFSRSkvLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICB2cDgvJS5jIHZwOC8lLmgg
dnA5LyUuYyB2cDkvJS5jYyB2cDkvJS5oIHZweC8lIFwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHZweF9kc3AvJSksIFwKKyAgICAgICAgICAgICAgJChWQ1BST0pfU1JDUykpIFwKKyAgICAg
ICAgICAgIC0tc3JjLXBhdGgtYmFyZT0iJChTUkNfUEFUSF9CQVJFKSIgXAorCitQUk9KRUNUUy15
ZXMgKz0gdnA5cmMuJChWQ1BST0pfU0ZYKQorCit2cDlyYy4kKFZDUFJPSl9TRlgpOiB2cHhfY29u
ZmlnLmFzbQordnA5cmMuJChWQ1BST0pfU0ZYKTogJChSVENEKQorCitlbmRpZiAjIGlmZXEgKCQo
Q09ORklHX01TVlMpLHllcykKK2Vsc2UgIyBpZmVxICgkKENPTkZJR19FWFRFUk5BTF9CVUlMRCks
eWVzKQogTElCVlBYX09CSlM9JChjYWxsIG9ianMsICQoZmlsdGVyLW91dCAkKEFTTV9JTkNMVURF
UyksICQoQ09ERUNfU1JDUykpKQogT0JKUy15ZXMgKz0gJChMSUJWUFhfT0JKUykKIExJQlMtJChp
ZiB5ZXMsJChDT05GSUdfU1RBVElDKSkgKz0gJChCVUlMRF9QRlgpbGlidnB4LmEgJChCVUlMRF9Q
RlgpbGlidnB4X2cuYQogJChCVUlMRF9QRlgpbGlidnB4X2cuYTogJChMSUJWUFhfT0JKUykKIAog
U09fVkVSU0lPTl9NQUpPUiA6PSA2Ci1TT19WRVJTSU9OX01JTk9SIDo9IDIKK1NPX1ZFUlNJT05f
TUlOT1IgOj0gMwogU09fVkVSU0lPTl9QQVRDSCA6PSAwCiBpZmVxICgkKGZpbHRlciBkYXJ3aW4l
LCQoVEdUX09TKSksJChUR1RfT1MpKQogTElCVlBYX1NPICAgICAgICAgICAgICAgOj0gbGlidnB4
LiQoU09fVkVSU0lPTl9NQUpPUikuZHlsaWIKQEAgLTMzMCw4ICszODMsMjQgQEAgZW5kaWYKIElO
U1RBTEwtTElCUy15ZXMgKz0gJChMSUJTVUJESVIpL3BrZ2NvbmZpZy92cHgucGMKIElOU1RBTExf
TUFQUyArPSAkKExJQlNVQkRJUikvcGtnY29uZmlnLyUucGMgJS5wYwogQ0xFQU4tT0JKUyArPSB2
cHgucGMKKworaWZlcSAoJChDT05GSUdfVlA5X0VOQ09ERVIpLHllcykKKyAgUkNfUlRDX09CSlM9
JChjYWxsIG9ianMsJChSQ19SVENfU1JDUykpCisgIFJDX1JUQ19PQkpTPSQoY2FsbCBvYmpzLCQo
UkNfUlRDX1NSQ1MpKQorICBPQkpTLXllcyArPSAkKFJDX1JUQ19PQkpTKQorICBMSUJTLXllcyAr
PSAkKEJVSUxEX1BGWClsaWJ2cDlyYy5hICQoQlVJTERfUEZYKWxpYnZwOXJjX2cuYQorICAkKEJV
SUxEX1BGWClsaWJ2cDlyY19nLmE6ICQoUkNfUlRDX09CSlMpCitlbmRpZgorCitpZmVxICgkKENP
TkZJR19WUDlfRU5DT0RFUikkKENPTkZJR19SQVRFX0NUUkwpLHllc3llcykKKyAgU0lNUExFX0VO
Q09ERV9PQkpTPSQoY2FsbCBvYmpzLCQoU0lNUExFX0VOQ09ERV9TUkNTKSkKKyAgT0JKUy15ZXMg
Kz0gJChTSU1QTEVfRU5DT0RFX09CSlMpCisgIExJQlMteWVzICs9ICQoQlVJTERfUEZYKWxpYnNp
bXBsZV9lbmNvZGUuYSAkKEJVSUxEX1BGWClsaWJzaW1wbGVfZW5jb2RlX2cuYQorICAkKEJVSUxE
X1BGWClsaWJzaW1wbGVfZW5jb2RlX2cuYTogJChTSU1QTEVfRU5DT0RFX09CSlMpCiBlbmRpZgog
CitlbmRpZiAjIGlmZXEgKCQoQ09ORklHX0VYVEVSTkFMX0JVSUxEKSx5ZXMpCisKIGxpYnZweC52
ZXI6ICQoY2FsbCBlbmFibGVkLENPREVDX0VYUE9SVFMpCiAJQGVjaG8gIiAgICBbQ1JFQVRFXSAk
QCIKIAkkKHFleGVjKWVjaG8gInsgZ2xvYmFsOiIgPiAkQApAQCAtMzUxLDEzICs0MjAsMTMgQEAg
aWZlcSAoJChWUFhfQVJDSF9YODYpJChWUFhfQVJDSF9YODZfNjQpLHllcykKICMgWUFTTQogJChC
VUlMRF9QRlgpdnB4X2NvbmZpZy5hc206ICQoQlVJTERfUEZYKXZweF9jb25maWcuaAogCUBlY2hv
ICIgICAgW0NSRUFURV0gJEAiCi0JQGVncmVwICIjZGVmaW5lIFtBLVowLTlfXSsgWzAxXSIgJDwg
XAorCUBMQ19BTEw9QyBlZ3JlcCAiI2RlZmluZSBbQS1aMC05X10rIFswMV0iICQ8IFwKIAkgICAg
fCBhd2sgJ3twcmludCAkJDIgIiBlcXUgIiAkJDN9JyA+ICRACiBlbHNlCiBBRFMyR0FTPSQoaWYg
JChmaWx0ZXIgeWVzLCQoQ09ORklHX0dDQykpLHwgJChBU01fQ09OVkVSU0lPTikpCiAkKEJVSUxE
X1BGWCl2cHhfY29uZmlnLmFzbTogJChCVUlMRF9QRlgpdnB4X2NvbmZpZy5oCiAJQGVjaG8gIiAg
ICBbQ1JFQVRFXSAkQCIKLQlAZWdyZXAgIiNkZWZpbmUgW0EtWjAtOV9dKyBbMDFdIiAkPCBcCisJ
QExDX0FMTD1DIGVncmVwICIjZGVmaW5lIFtBLVowLTlfXSsgWzAxXSIgJDwgXAogCSAgICB8IGF3
ayAne3ByaW50ICQkMiAiIEVRVSAiICQkM30nICQoQURTMkdBUykgPiAkQAogCUBlY2hvICIgICAg
ICAgIEVORCIgJChBRFMyR0FTKSA+PiAkQAogQ0xFQU4tT0JKUyArPSAkKEJVSUxEX1BGWCl2cHhf
Y29uZmlnLmFzbQpAQCAtMzg3LDMxICs0NTYsNTUgQEAgaWZlcSAoJChDT05GSUdfVU5JVF9URVNU
UykseWVzKQogTElCVlBYX1RFU1RfREFUQV9QQVRIID89IC4KIAogaW5jbHVkZSAkKFNSQ19QQVRI
X0JBUkUpL3Rlc3QvdGVzdC5tawotTElCVlBYX1RFU1RfU1JDUz0kKGFkZHByZWZpeCB0ZXN0Lywk
KGNhbGwgZW5hYmxlZCxMSUJWUFhfVEVTVF9TUkNTKSkKKworIyBhZGRwcmVmaXhfY2xlYW4gYmVo
YXZlcyBsaWtlIGFkZHByZWZpeCBpZiB0aGUgdGFyZ2V0IGRvZXNuJ3Qgc3RhcnQgd2l0aCAiLi4v
IgorIyBIb3dldmVyLCBpZiB0aGUgdGFyZ2V0IHN0YXJ0cyB3aXRoICIuLi8iLCBpbnN0ZWFkIG9m
IGFkZGluZyBwcmVmaXgsCisjIGl0IHdpbGwgcmVtb3ZlICIuLi8iLgorIyBVc2luZyBhZGRwcmVm
aXhfY2xlYW4sIHdlIGNhbiBhdm9pZCB0d28gZGlmZmVyZW50IHRhcmdldHMgYnVpbGRpbmcgdGhl
CisjIHNhbWUgZmlsZSwgaS5lLgorIyB0ZXN0Ly4uL2l2ZmVuYy5jLmQ6IGl2ZmVuYy5vCisjIGl2
ZmVuYy5jLmQ6IGl2ZmVuYy5vCisjIE5vdGUgdGhhdCB0aGUgb3RoZXIgd2F5IHRvIHNvbHZlIHRo
aXMgcHJvYmxlbSBpcyB1c2luZyAicmVhbHBhdGgiLgorIyBUaGUgInJlYWxwYXRoIiBpcyBzdXBw
b3J0ZWQgYnkgbWFrZSAzLjgxIG9yIGxhdGVyLgorYWRkcHJlZml4X2NsZWFuPSQocGF0c3Vic3Qg
JCgxKS4uLyUsJSwkKGFkZHByZWZpeCAkKDEpLCAkKDIpKSkKK0xJQlZQWF9URVNUX1NSQ1M9JChj
YWxsIGFkZHByZWZpeF9jbGVhbix0ZXN0LywkKGNhbGwgZW5hYmxlZCxMSUJWUFhfVEVTVF9TUkNT
KSkKKwogTElCVlBYX1RFU1RfQklOPS4vdGVzdF9saWJ2cHgkKEVYRV9TRlgpCiBMSUJWUFhfVEVT
VF9EQVRBPSQoYWRkcHJlZml4ICQoTElCVlBYX1RFU1RfREFUQV9QQVRIKS8sXAogICAgICAgICAg
ICAgICAgICAgICAgJChjYWxsIGVuYWJsZWQsTElCVlBYX1RFU1RfREFUQSkpCiBsaWJ2cHhfdGVz
dF9kYXRhX3VybD1odHRwczovL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZG93bmxvYWRzLndlYm1w
cm9qZWN0Lm9yZy90ZXN0X2RhdGEvbGlidnB4LyQoMSkKIAogVEVTVF9JTlRSQV9QUkVEX1NQRUVE
X0JJTj0uL3Rlc3RfaW50cmFfcHJlZF9zcGVlZCQoRVhFX1NGWCkKLVRFU1RfSU5UUkFfUFJFRF9T
UEVFRF9TUkNTPSQoYWRkcHJlZml4IHRlc3QvLCQoY2FsbCBlbmFibGVkLFRFU1RfSU5UUkFfUFJF
RF9TUEVFRF9TUkNTKSkKK1RFU1RfSU5UUkFfUFJFRF9TUEVFRF9TUkNTPSQoY2FsbCBhZGRwcmVm
aXhfY2xlYW4sdGVzdC8sXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgJChjYWxsIGVuYWJs
ZWQsVEVTVF9JTlRSQV9QUkVEX1NQRUVEX1NSQ1MpKQogVEVTVF9JTlRSQV9QUkVEX1NQRUVEX09C
SlMgOj0gJChzb3J0ICQoY2FsbCBvYmpzLCQoVEVTVF9JTlRSQV9QUkVEX1NQRUVEX1NSQ1MpKSkK
IAorUkNfSU5URVJGQUNFX1RFU1RfQklOPS4vdGVzdF9yY19pbnRlcmZhY2UkKEVYRV9TRlgpCitS
Q19JTlRFUkZBQ0VfVEVTVF9TUkNTPSQoY2FsbCBhZGRwcmVmaXhfY2xlYW4sdGVzdC8sXAorICAg
ICAgICAgICAgICAgICAgICAgICAkKGNhbGwgZW5hYmxlZCxSQ19JTlRFUkZBQ0VfVEVTVF9TUkNT
KSkKK1JDX0lOVEVSRkFDRV9URVNUX09CSlMgOj0gJChzb3J0ICQoY2FsbCBvYmpzLCQoUkNfSU5U
RVJGQUNFX1RFU1RfU1JDUykpKQorCitTSU1QTEVfRU5DT0RFX1RFU1RfQklOPS4vdGVzdF9zaW1w
bGVfZW5jb2RlJChFWEVfU0ZYKQorU0lNUExFX0VOQ09ERV9URVNUX1NSQ1M9JChjYWxsIGFkZHBy
ZWZpeF9jbGVhbix0ZXN0LyxcCisgICAgICAgICAgICAgICAgICAgICAgICAkKGNhbGwgZW5hYmxl
ZCxTSU1QTEVfRU5DT0RFX1RFU1RfU1JDUykpCitTSU1QTEVfRU5DT0RFX1RFU1RfT0JKUyA6PSAk
KHNvcnQgJChjYWxsIG9ianMsJChTSU1QTEVfRU5DT0RFX1RFU1RfU1JDUykpKQorCiBsaWJ2cHhf
dGVzdF9zcmNzLnR4dDoKIAlAZWNobyAiICAgIFtDUkVBVEVdICRAIgogCUBlY2hvICQoTElCVlBY
X1RFU1RfU1JDUykgfCB4YXJncyAtbjEgZWNobyB8IExDX0FMTD1DIHNvcnQgLXUgPiAkQAogQ0xF
QU4tT0JKUyArPSBsaWJ2cHhfdGVzdF9zcmNzLnR4dAogCisjIEF0dGVtcHQgdG8gZG93bmxvYWQg
dGhlIGZpbGUgdXNpbmcgY3VybCwgcmV0cnlpbmcgb25jZSBpZiBpdCBmYWlscyBmb3IgYQorIyBw
YXJ0aWFsIGZpbGUgKDE4KS4KICQoTElCVlBYX1RFU1RfREFUQSk6ICQoU1JDX1BBVEhfQkFSRSkv
dGVzdC90ZXN0LWRhdGEuc2hhMQogCUBlY2hvICIgICAgW0RPV05MT0FEXSAkQCIKLQkjIEF0dGVt
cHQgdG8gZG93bmxvYWQgdGhlIGZpbGUgdXNpbmcgY3VybCwgcmV0cnlpbmcgb25jZSBpZiBpdCBm
YWlscyBmb3IgYQotCSMgcGFydGlhbCBmaWxlICgxOCkuCiAJJChxZXhlYykoIFwKIAkgIHRyYXAg
J3JtIC1mICRAJyBJTlQgVEVSTTsgXAotCSAgY3VybD0iY3VybCAtLXJldHJ5IDEgLUwgLW8gJEAg
JChjYWxsIGxpYnZweF90ZXN0X2RhdGFfdXJsLCQoQEYpKSI7IFwKLQkgICQkY3VybDsgXAotCSAg
Y2FzZSAiJCQ/IiBpbiBcCi0JICAgIDE4KSAkJGN1cmwgLUMgLTs7IFwKKwkgIGN1cmw9ImN1cmwg
LVMgLXMgLS1yZXRyeSAxIC1MIC1vICRAICQoY2FsbCBsaWJ2cHhfdGVzdF9kYXRhX3VybCwkKEBG
KSkiOyBcCisJICAkJGN1cmw7IHJldD0kJD87IFwKKwkgIGNhc2UgIiQkcmV0IiBpbiBcCisJICAg
IDE4KSAkJGN1cmwgLUMgLSA7OyBcCisJICAgICopIGV4aXQgJCRyZXQgOzsgXAogCSAgZXNhYyBc
CiAJKQogCkBAIC00ODYsNiArNTc5LDI1IEBAIHRlc3RfaW50cmFfcHJlZF9zcGVlZC4kKFZDUFJP
Sl9TRlgpOiAkKFRFU1RfSU5UUkFfUFJFRF9TUEVFRF9TUkNTKSB2cHguJChWQ1BST0pfCiAgICAg
ICAgICAgICAtSS4gLUkiJChTUkNfUEFUSF9CQVJFKS90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3Ny
Yy9pbmNsdWRlIiBcCiAgICAgICAgICAgICAtTC4gLWwkKENPREVDX0xJQikgLWwkKEdURVNUX0xJ
QikgJF4KIGVuZGlmICAjIFRFU1RfSU5UUkFfUFJFRF9TUEVFRAorCitpZm5lcSAoJChzdHJpcCAk
KFJDX0lOVEVSRkFDRV9URVNUX09CSlMpKSwpCitQUk9KRUNUUy0kKENPTkZJR19NU1ZTKSArPSB0
ZXN0X3JjX2ludGVyZmFjZS4kKFZDUFJPSl9TRlgpCit0ZXN0X3JjX2ludGVyZmFjZS4kKFZDUFJP
Sl9TRlgpOiAkKFJDX0lOVEVSRkFDRV9URVNUX1NSQ1MpIHZweC4kKFZDUFJPSl9TRlgpIFwKKwl2
cDlyYy4kKFZDUFJPSl9TRlgpIGd0ZXN0LiQoVkNQUk9KX1NGWCkKKwlAZWNobyAiICAgIFtDUkVB
VEVdICRAIgorCSQocWV4ZWMpJChHRU5fVkNQUk9KKSBcCisgICAgICAgICAgICAtLWV4ZSBcCisg
ICAgICAgICAgICAtLXRhcmdldD0kKFRPT0xDSEFJTikgXAorICAgICAgICAgICAgLS1uYW1lPXRl
c3RfcmNfaW50ZXJmYWNlIFwKKyAgICAgICAgICAgIC1EX1ZBUklBRElDX01BWD0xMCBcCisgICAg
ICAgICAgICAtLXByb2otZ3VpZD0zMDQ1OEY4OC0xQkM2LTQ2ODktQjQxQy01MEYzNzM3QUFCMjcg
XAorICAgICAgICAgICAgLS12ZXI9JChDT05GSUdfVlNfVkVSU0lPTikgXAorICAgICAgICAgICAg
LS1zcmMtcGF0aC1iYXJlPSIkKFNSQ19QQVRIX0JBUkUpIiBcCisgICAgICAgICAgICAkKGlmICQo
Q09ORklHX1NUQVRJQ19NU1ZDUlQpLC0tc3RhdGljLWNydCkgXAorICAgICAgICAgICAgLS1vdXQ9
JEAgJChJTlRFUk5BTF9DRkxBR1MpICQoQ0ZMQUdTKSBcCisgICAgICAgICAgICAtSS4gLUkiJChT
UkNfUEFUSF9CQVJFKS90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlIiBcCisgICAg
ICAgICAgICAtTC4gLWwkKENPREVDX0xJQikgLWwkKFJDX1JUQ19MSUIpIC1sJChHVEVTVF9MSUIp
ICReCitlbmRpZiAgIyBSQ19JTlRFUkZBQ0VfVEVTVAogZW5kaWYKIGVsc2UKIApAQCAtNTI3LDYg
KzYzOSwzMCBAQCAkKGV2YWwgJChjYWxsIGxpbmtlcnh4X3RlbXBsYXRlLCQoVEVTVF9JTlRSQV9Q
UkVEX1NQRUVEX0JJTiksIFwKICAgICAgICAgICAgICAgLUwuIC1sdnB4IC1sZ3Rlc3QgJChleHRy
YWxpYnMpIC1sbSkpCiBlbmRpZiAgIyBURVNUX0lOVFJBX1BSRURfU1BFRUQKIAoraWZuZXEgKCQo
c3RyaXAgJChSQ19JTlRFUkZBQ0VfVEVTVF9PQkpTKSksKQorJChSQ19JTlRFUkZBQ0VfVEVTVF9P
QkpTKSAkKFJDX0lOVEVSRkFDRV9URVNUX09CSlM6Lm89LmQpOiBcCisgIENYWEZMQUdTICs9ICQo
R1RFU1RfSU5DTFVERVMpCitPQkpTLXllcyArPSAkKFJDX0lOVEVSRkFDRV9URVNUX09CSlMpCitC
SU5TLXllcyArPSAkKFJDX0lOVEVSRkFDRV9URVNUX0JJTikKKworJChSQ19JTlRFUkZBQ0VfVEVT
VF9CSU4pOiAkKFRFU1RfTElCUykgbGlidnA5cmMuYQorJChldmFsICQoY2FsbCBsaW5rZXJ4eF90
ZW1wbGF0ZSwkKFJDX0lOVEVSRkFDRV9URVNUX0JJTiksIFwKKyAgICAgICAgICAgICAgJChSQ19J
TlRFUkZBQ0VfVEVTVF9PQkpTKSBcCisgICAgICAgICAgICAgIC1MLiAtbHZweCAtbGd0ZXN0IC1s
dnA5cmMgJChleHRyYWxpYnMpIC1sbSkpCitlbmRpZiAgIyBSQ19JTlRFUkZBQ0VfVEVTVAorCitp
Zm5lcSAoJChzdHJpcCAkKFNJTVBMRV9FTkNPREVfVEVTVF9PQkpTKSksKQorJChTSU1QTEVfRU5D
T0RFX1RFU1RfT0JKUykgJChTSU1QTEVfRU5DT0RFX1RFU1RfT0JKUzoubz0uZCk6IFwKKyAgQ1hY
RkxBR1MgKz0gJChHVEVTVF9JTkNMVURFUykKK09CSlMteWVzICs9ICQoU0lNUExFX0VOQ09ERV9U
RVNUX09CSlMpCitCSU5TLXllcyArPSAkKFNJTVBMRV9FTkNPREVfVEVTVF9CSU4pCisKKyQoU0lN
UExFX0VOQ09ERV9URVNUX0JJTik6ICQoVEVTVF9MSUJTKSBsaWJzaW1wbGVfZW5jb2RlLmEKKyQo
ZXZhbCAkKGNhbGwgbGlua2VyeHhfdGVtcGxhdGUsJChTSU1QTEVfRU5DT0RFX1RFU1RfQklOKSwg
XAorICAgICAgICAgICAgICAkKFNJTVBMRV9FTkNPREVfVEVTVF9PQkpTKSBcCisgICAgICAgICAg
ICAgIC1MLiAtbHNpbXBsZV9lbmNvZGUgLWx2cHggLWxndGVzdCAkKGV4dHJhbGlicykgLWxtKSkK
K2VuZGlmICAjIFNJTVBMRV9FTkNPREVfVEVTVAorCiBlbmRpZiAgIyBDT05GSUdfVU5JVF9URVNU
UwogCiAjIEluc3RhbGwgdGVzdCBzb3VyY2VzIG9ubHkgaWYgY29kZWMgc291cmNlIGlzIGluY2x1
ZGVkCkBAIC01MzQsNiArNjcwLDcgQEAgSU5TVEFMTC1TUkNTLSQoQ09ORklHX0NPREVDX1NSQ1Mp
ICs9ICQocGF0c3Vic3QgJChTUkNfUEFUSF9CQVJFKS8lLCUsXAogICAgICQoc2hlbGwgZmluZCAk
KFNSQ19QQVRIX0JBUkUpL3RoaXJkX3BhcnR5L2dvb2dsZXRlc3QgLXR5cGUgZikpCiBJTlNUQUxM
LVNSQ1MtJChDT05GSUdfQ09ERUNfU1JDUykgKz0gJChMSUJWUFhfVEVTVF9TUkNTKQogSU5TVEFM
TC1TUkNTLSQoQ09ORklHX0NPREVDX1NSQ1MpICs9ICQoVEVTVF9JTlRSQV9QUkVEX1NQRUVEX1NS
Q1MpCitJTlNUQUxMLVNSQ1MtJChDT05GSUdfQ09ERUNfU1JDUykgKz0gJChSQ19JTlRFUkZBQ0Vf
VEVTVF9TUkNTKQogCiBkZWZpbmUgdGVzdF9zaGFyZF90ZW1wbGF0ZQogdGVzdDo6IHRlc3Rfc2hh
cmQuJCgxKQpAQCAtNTc0LDYgKzcxMSw3IEBAIGVuZGlmCiAKICMjIFVwZGF0ZSB0aGUgZ2xvYmFs
IHNyYyBsaXN0CiBTUkNTICs9ICQoQ09ERUNfU1JDUykgJChMSUJWUFhfVEVTVF9TUkNTKSAkKEdU
RVNUX1NSQ1MpCitTUkNTICs9ICQoUkNfSU5URVJGQUNFX1RFU1RfU1JDUykKIAogIyMKICMjIHZw
eGRlYy92cHhlbmMgdGVzdHMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYWN0aXZlX21h
cF9yZWZyZXNoX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYWN0aXZlX21hcF9yZWZyZXNoX3Rl
c3QuY2MKaW5kZXggYTk4NWVkNGYxMTkwNGI5ZTE5ZmFkZTBkOTc2OWYyZDQ4NmUxZmNkYi4uNjhk
ODg1NmVhYTZmMjlmNDVhOWQwNjk3NjlkYTAwNTdlNTk2YjcwYiAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC90ZXN0L2FjdGl2ZV9tYXBfcmVmcmVzaF90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVz
dC9hY3RpdmVfbWFwX3JlZnJlc2hfdGVzdC5jYwpAQCAtODAsNyArODAsNyBAQCBjbGFzcyBBY3Rp
dmVNYXBSZWZyZXNoVGVzdAogICAgIH0gZWxzZSBpZiAodmlkZW8tPmZyYW1lKCkgPj0gMiAmJiB2
aWRlby0+aW1nKCkpIHsKICAgICAgIHZweF9pbWFnZV90ICpjdXJyZW50ID0gdmlkZW8tPmltZygp
OwogICAgICAgdnB4X2ltYWdlX3QgKnByZXZpb3VzID0geTRtX2hvbGRlcl8tPmltZygpOwotICAg
ICAgQVNTRVJUX1RSVUUocHJldmlvdXMgIT0gTlVMTCk7CisgICAgICBBU1NFUlRfTkUocHJldmlv
dXMsIG51bGxwdHIpOwogICAgICAgdnB4X2FjdGl2ZV9tYXBfdCBtYXAgPSB2cHhfYWN0aXZlX21h
cF90KCk7CiAgICAgICBjb25zdCBpbnQgd2lkdGggPSBzdGF0aWNfY2FzdDxpbnQ+KGN1cnJlbnQt
PmRfdyk7CiAgICAgICBjb25zdCBpbnQgaGVpZ2h0ID0gc3RhdGljX2Nhc3Q8aW50PihjdXJyZW50
LT5kX2gpOwpAQCAtMTIyLDcgKzEyMiw3IEBAIFRFU1RfUChBY3RpdmVNYXBSZWZyZXNoVGVzdCwg
VGVzdCkgewogICBBU1NFUlRfTk9fRkFUQUxfRkFJTFVSRShSdW5Mb29wKCZ2aWRlbykpOwogfQog
Ci1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKEFjdGl2ZU1hcFJlZnJlc2hUZXN0LAotICAgICAg
ICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0OjprUmVh
bFRpbWUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDUsIDYp
KTsKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKEFjdGl2ZU1hcFJlZnJlc2hUZXN0LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6
a1JlYWxUaW1lKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2Uo
NSwgNikpOwogfSAgLy8gbmFtZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYWN0
aXZlX21hcF90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2FjdGl2ZV9tYXBfdGVzdC5jYwppbmRl
eCAwMzUzNmM4MWVmNDgwNGRkZWIxMjNhMGYwNmZkZjYwZjQwM2FkZDg4Li45YzU1ZjlhOGIxNzg0
NTFlNTFlOGVmYzg1OTg1MzY4MTg3OGJlMGU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qv
YWN0aXZlX21hcF90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9hY3RpdmVfbWFwX3Rlc3Qu
Y2MKQEAgLTYyLDcgKzYyLDcgQEAgY2xhc3MgQWN0aXZlTWFwVGVzdAogICAgICAgdnB4X2FjdGl2
ZV9tYXBfdCBtYXAgPSB2cHhfYWN0aXZlX21hcF90KCk7CiAgICAgICBtYXAuY29scyA9IChrV2lk
dGggKyAxNSkgLyAxNjsKICAgICAgIG1hcC5yb3dzID0gKGtIZWlnaHQgKyAxNSkgLyAxNjsKLSAg
ICAgIG1hcC5hY3RpdmVfbWFwID0gTlVMTDsKKyAgICAgIG1hcC5hY3RpdmVfbWFwID0gbnVsbHB0
cjsKICAgICAgIGVuY29kZXItPkNvbnRyb2woVlA4RV9TRVRfQUNUSVZFTUFQLCAmbWFwKTsKICAg
ICB9CiAgIH0KQEAgLTg1LDcgKzg1LDcgQEAgVEVTVF9QKEFjdGl2ZU1hcFRlc3QsIFRlc3QpIHsK
ICAgQVNTRVJUX05PX0ZBVEFMX0ZBSUxVUkUoUnVuTG9vcCgmdmlkZW8pKTsKIH0KIAotVlA5X0lO
U1RBTlRJQVRFX1RFU1RfQ0FTRShBY3RpdmVNYXBUZXN0LAotICAgICAgICAgICAgICAgICAgICAg
ICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0OjprUmVhbFRpbWUpLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDAsIDkpKTsKK1ZQOV9JTlNUQU5U
SUFURV9URVNUX1NVSVRFKEFjdGl2ZU1hcFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0OjprUmVhbFRpbWUpLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgwLCA5KSk7CiB9ICAvLyBuYW1lc3Bh
Y2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9hZGRfbm9pc2VfdGVzdC5jYyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdGVzdC9hZGRfbm9pc2VfdGVzdC5jYwppbmRleCAwZDE4OTNjNTI0YTZjOGI3MzM1NTA5
YThhYmQxNWE5ZjA2YzlhY2Q1Li4yNWRlNDI3OWMyODQzNzc3NDVhYjdjZWFlZWJhZjc5YzA3ZDdh
ZGM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYWRkX25vaXNlX3Rlc3QuY2MKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90ZXN0L2FkZF9ub2lzZV90ZXN0LmNjCkBAIC01Myw3ICs1Myw3IEBAIFRFU1Rf
UChBZGROb2lzZVRlc3QsIENoZWNrTm9pc2VBZGRlZCkgewogICBjb25zdCBpbnQgY2xhbXAgPSB2
cHhfc2V0dXBfbm9pc2UoR0VUX1BBUkFNKDApLCBub2lzZSwga05vaXNlU2l6ZSk7CiAgIHVpbnQ4
X3QgKmNvbnN0IHMgPQogICAgICAgcmVpbnRlcnByZXRfY2FzdDx1aW50OF90ICo+KHZweF9jYWxs
b2MoaW1hZ2Vfc2l6ZSwgc2l6ZW9mKCpzKSkpOwotICBBU1NFUlRfVFJVRShzICE9IE5VTEwpOwor
ICBBU1NFUlRfTkUocywgbnVsbHB0cik7CiAgIG1lbXNldChzLCA5OSwgaW1hZ2Vfc2l6ZSAqIHNp
emVvZigqcykpOwogCiAgIEFTTV9SRUdJU1RFUl9TVEFURV9DSEVDSygKQEAgLTEwNiw4ICsxMDYs
OCBAQCBURVNUX1AoQWRkTm9pc2VUZXN0LCBDaGVja0N2c0Fzc2VtYmx5KSB7CiAKICAgdWludDhf
dCAqY29uc3QgcyA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDhfdCAqPih2cHhfY2FsbG9jKGltYWdl
X3NpemUsIDEpKTsKICAgdWludDhfdCAqY29uc3QgZCA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDhf
dCAqPih2cHhfY2FsbG9jKGltYWdlX3NpemUsIDEpKTsKLSAgQVNTRVJUX1RSVUUocyAhPSBOVUxM
KTsKLSAgQVNTRVJUX1RSVUUoZCAhPSBOVUxMKTsKKyAgQVNTRVJUX05FKHMsIG51bGxwdHIpOwor
ICBBU1NFUlRfTkUoZCwgbnVsbHB0cik7CiAKICAgbWVtc2V0KHMsIDk5LCBpbWFnZV9zaXplKTsK
ICAgbWVtc2V0KGQsIDk5LCBpbWFnZV9zaXplKTsKQEAgLTEyOSwyMCArMTI5LDIwIEBAIFRFU1Rf
UChBZGROb2lzZVRlc3QsIENoZWNrQ3ZzQXNzZW1ibHkpIHsKIAogdXNpbmcgc3RkOjptYWtlX3R1
cGxlOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVf
UCgKICAgICBDLCBBZGROb2lzZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBs
ZSgzLjI1LCB2cHhfcGxhbmVfYWRkX25vaXNlX2MpLAogICAgICAgICAgICAgICAgICAgICAgIG1h
a2VfdHVwbGUoNC40LCB2cHhfcGxhbmVfYWRkX25vaXNlX2MpKSk7CiAKICNpZiBIQVZFX1NTRTIK
LUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAg
IFNTRTIsIEFkZE5vaXNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDMu
MjUsIHZweF9wbGFuZV9hZGRfbm9pc2Vfc3NlMiksCiAgICAgICAgICAgICAgICAgICAgICAgbWFr
ZV90dXBsZSg0LjQsIHZweF9wbGFuZV9hZGRfbm9pc2Vfc3NlMikpKTsKICNlbmRpZgogCiAjaWYg
SEFWRV9NU0EKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlU
RV9QKAogICAgIE1TQSwgQWRkTm9pc2VUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2Vf
dHVwbGUoMy4yNSwgdnB4X3BsYW5lX2FkZF9ub2lzZV9tc2EpLAogICAgICAgICAgICAgICAgICAg
ICAgIG1ha2VfdHVwbGUoNC40LCB2cHhfcGxhbmVfYWRkX25vaXNlX21zYSkpKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGVzdC9hbHRfcmVmX2FxX3NlZ21lbnRfdGVzdC5jYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC9hbHRfcmVmX2FxX3NlZ21lbnRfdGVzdC5jYwppbmRleCA2ZTAzYTQ3ODUyNWY5YWIy
OTBkZTZmZjRjZTk2NzVmYmQzYjc1N2QyLi4wMGEwMGUyN2M1NTZkNDY0MWE4YTdkZGFlMDY2YWNk
ZTFiNzY4ODY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYWx0X3JlZl9hcV9zZWdtZW50
X3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2FsdF9yZWZfYXFfc2VnbWVudF90ZXN0LmNj
CkBAIC0xNTAsOCArMTUwLDggQEAgVEVTVF9QKEFsdFJlZkFxU2VnbWVudFRlc3QsIFRlc3ROb01p
c01hdGNoQWx0UmVmQVE0KSB7CiAgIEFTU0VSVF9OT19GQVRBTF9GQUlMVVJFKFJ1bkxvb3AoJnZp
ZGVvKSk7CiB9CiAKLVZQOV9JTlNUQU5USUFURV9URVNUX0NBU0UoQWx0UmVmQXFTZWdtZW50VGVz
dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2cHhf
dGVzdDo6a09uZVBhc3NHb29kLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA6OmxpYnZweF90ZXN0OjprVHdvUGFzc0dvb2QpLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDIsIDUpKTsKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NV
SVRFKEFsdFJlZkFxU2VnbWVudFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRl
c3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0OjprT25lUGFzc0dvb2QsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6OmxpYnZweF90ZXN0OjprVHdvUGFzc0dv
b2QpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgyLCA1KSk7
CiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9hbHRyZWZfdGVz
dC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9hbHRyZWZfdGVzdC5jYwppbmRleCAwMTE5YmU0ZGEwYWIx
NmIwNjI0OWRkZjYwZWU5NzQ2NTJhMWRjZDRkLi42OWJjZWY3NzRlMjNlZWEzMjc5MjY5NDIxMGNm
MDhkZDlmOGQ1ZTdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYWx0cmVmX3Rlc3QuY2MK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90ZXN0L2FsdHJlZl90ZXN0LmNjCkBAIC02Myw4ICs2Myw4IEBAIFRF
U1RfUChBbHRSZWZUZXN0LCBNb25vdG9uaWNUaW1lc3RhbXBzKSB7CiAgIEVYUEVDVF9HRShhbHRy
ZWZfY291bnQoKSwgMSk7CiB9CiAKLVZQOF9JTlNUQU5USUFURV9URVNUX0NBU0UoQWx0UmVmVGVz
dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZShrTG9va0FoZWFk
TWluLCBrTG9va0FoZWFkTWF4KSk7CitWUDhfSU5TVEFOVElBVEVfVEVTVF9TVUlURShBbHRSZWZU
ZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZShrTG9va0Fo
ZWFkTWluLCBrTG9va0FoZWFkTWF4KSk7CiAKICNlbmRpZiAgLy8gQ09ORklHX1ZQOF9FTkNPREVS
CiAKQEAgLTE0MiwxMSArMTQyLDExIEBAIFRFU1RfUChBbHRSZWZGb3JjZWRLZXlUZXN0TGFyZ2Us
IEZvcmNlZEZyYW1lSXNLZXkpIHsKICAgfQogfQogCi1WUDhfSU5TVEFOVElBVEVfVEVTVF9DQVNF
KEFsdFJlZkZvcmNlZEtleVRlc3RMYXJnZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a09uZVBhc3NHb29kKSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgwLCA5KSk7CitWUDhfSU5TVEFOVElBVEVf
VEVTVF9TVUlURShBbHRSZWZGb3JjZWRLZXlUZXN0TGFyZ2UsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0OjprT25lUGFzc0dvb2QpLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgwLCA5KSk7CiAKLVZQ
OV9JTlNUQU5USUFURV9URVNUX0NBU0UoQWx0UmVmRm9yY2VkS2V5VGVzdExhcmdlLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0OjprT25l
UGFzc0dvb2QpLAotICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDAs
IDkpKTsKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKEFsdFJlZkZvcmNlZEtleVRlc3RMYXJn
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKDo6bGlidnB4
X3Rlc3Q6OmtPbmVQYXNzR29vZCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rp
bmc6OlJhbmdlKDAsIDkpKTsKIH0gIC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90ZXN0L2FuZHJvaWQvUkVBRE1FIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2FuZHJvaWQvUkVBRE1FCmlu
ZGV4IGY2N2ZlYTUwYzdiOGE4MGNkNGU1ODIyZDFhNTg2NzgwOGI2ZmM0OTguLjBjZDMwNzc5ZDQx
ZWY5ODIzODBmYTU5MzY3NzAxYjcyOGU1MGMwZDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVz
dC9hbmRyb2lkL1JFQURNRQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYW5kcm9pZC9SRUFETUUKQEAg
LTE2LDcgKzE2LDcgQEAgTm90ZTogQm90aCBhZGIgYW5kIG5kay1idWlsZCBhcmUgYXZhaWxhYmxl
IGF0OgogCiAzKSBSdW4gZ2V0X2ZpbGVzLnB5IHRvIGRvd25sb2FkIHRoZSB0ZXN0IGZpbGVzOgog
cHl0aG9uIGdldF9maWxlcy5weSAtaSAvcGF0aC90by90ZXN0LWRhdGEuc2hhMSAtbyAvcGF0aC90
by9wdXQvZmlsZXMgXAotICAtdSBodHRwOi8vZG93bmxvYWRzLndlYm1wcm9qZWN0Lm9yZy90ZXN0
X2RhdGEvbGlidnB4CisgIC11IGh0dHBzOi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kb3dubG9h
ZHMud2VibXByb2plY3Qub3JnL3Rlc3RfZGF0YS9saWJ2cHgKIAogNCkgVHJhbnNmZXIgZmlsZXMg
dG8gZGV2aWNlIHVzaW5nIGFkYi4gRW5zdXJlIHlvdSBoYXZlIHByb3BlciBwZXJtaXNzaW9ucyBm
b3IKIHRoZSB0YXJnZXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9hcV9zZWdtZW50X3Rl
c3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYXFfc2VnbWVudF90ZXN0LmNjCmluZGV4IDNjNDA1M2Jl
N2YzMWViZWZlMWFiMWM0Mjg1YjllOGE3MDg2YTQzZWMuLjJjYmM5OTFkMGMzMjc1NzcwYTY0ZDhj
NGM2MDQ3NDllMmY4YWE3NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9hcV9zZWdtZW50
X3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2FxX3NlZ21lbnRfdGVzdC5jYwpAQCAtMTAy
LDggKzEwMiw4IEBAIFRFU1RfUChBcVNlZ21lbnRUZXN0LCBUZXN0Tm9NaXNNYXRjaEFRMykgewog
ICBBU1NFUlRfTk9fRkFUQUxfRkFJTFVSRShSdW5Mb29wKCZ2aWRlbykpOwogfQogCi1WUDlfSU5T
VEFOVElBVEVfVEVTVF9DQVNFKEFxU2VnbWVudFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgIDo6dGVzdGluZzo6VmFsdWVzKDo6bGlidnB4X3Rlc3Q6OmtSZWFsVGltZSwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOjpsaWJ2cHhfdGVzdDo6a09uZVBh
c3NHb29kKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgzLCA5
KSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURShBcVNlZ21lbnRUZXN0LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a1JlYWxU
aW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOjpsaWJ2
cHhfdGVzdDo6a09uZVBhc3NHb29kKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVz
dGluZzo6UmFuZ2UoMywgOSkpOwogfSAgLy8gbmFtZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rlc3QvYXZnX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYXZnX3Rlc3QuY2MKaW5kZXgg
NzJlMTZmNjU3ODEzYzQ0ZGU0NjZhMjI0ZTJhODBiMTk0NGJlZTU5Yi4uMTk2NTIyY2U1ODhhOWIw
OGU1MWZmYzJiODNjZTJhZGIwNGM1Zjc4OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2F2
Z190ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9hdmdfdGVzdC5jYwpAQCAtMzUsMTIgKzM1
LDEyIEBAIHRlbXBsYXRlIDx0eXBlbmFtZSBQaXhlbD4KIGNsYXNzIEF2ZXJhZ2VUZXN0QmFzZSA6
IHB1YmxpYyA6OnRlc3Rpbmc6OlRlc3QgewogIHB1YmxpYzoKICAgQXZlcmFnZVRlc3RCYXNlKGlu
dCB3aWR0aCwgaW50IGhlaWdodCkKLSAgICAgIDogd2lkdGhfKHdpZHRoKSwgaGVpZ2h0XyhoZWln
aHQpLCBzb3VyY2VfZGF0YV8oTlVMTCksIHNvdXJjZV9zdHJpZGVfKDApLAotICAgICAgICBiaXRf
ZGVwdGhfKDgpIHt9CisgICAgICA6IHdpZHRoXyh3aWR0aCksIGhlaWdodF8oaGVpZ2h0KSwgc291
cmNlX2RhdGFfKG51bGxwdHIpLAorICAgICAgICBzb3VyY2Vfc3RyaWRlXygwKSwgYml0X2RlcHRo
Xyg4KSB7fQogCiAgIHZpcnR1YWwgdm9pZCBUZWFyRG93bigpIHsKICAgICB2cHhfZnJlZShzb3Vy
Y2VfZGF0YV8pOwotICAgIHNvdXJjZV9kYXRhXyA9IE5VTEw7CisgICAgc291cmNlX2RhdGFfID0g
bnVsbHB0cjsKICAgICBsaWJ2cHhfdGVzdDo6Q2xlYXJTeXN0ZW1TdGF0ZSgpOwogICB9CiAKQEAg
LTUyLDcgKzUyLDcgQEAgY2xhc3MgQXZlcmFnZVRlc3RCYXNlIDogcHVibGljIDo6dGVzdGluZzo6
VGVzdCB7CiAgIHZpcnR1YWwgdm9pZCBTZXRVcCgpIHsKICAgICBzb3VyY2VfZGF0YV8gPSByZWlu
dGVycHJldF9jYXN0PFBpeGVsICo+KAogICAgICAgICB2cHhfbWVtYWxpZ24oa0RhdGFBbGlnbm1l
bnQsIGtEYXRhQmxvY2tTaXplICogc2l6ZW9mKHNvdXJjZV9kYXRhX1swXSkpKTsKLSAgICBBU1NF
UlRfVFJVRShzb3VyY2VfZGF0YV8gIT0gTlVMTCk7CisgICAgQVNTRVJUX05FKHNvdXJjZV9kYXRh
XywgbnVsbHB0cik7CiAgICAgc291cmNlX3N0cmlkZV8gPSAod2lkdGhfICsgMzEpICYgfjMxOwog
ICAgIGJpdF9kZXB0aF8gPSA4OwogICAgIHJuZF8uUmVzZXQoQUNNUmFuZG9tOjpEZXRlcm1pbmlz
dGljU2VlZCgpKTsKQEAgLTE1Miw2ICsxNTIsNyBAQCBjbGFzcyBBdmVyYWdlVGVzdEhCRCA6IHB1
YmxpYyBBdmVyYWdlVGVzdEJhc2U8dWludDE2X3Q+LAogfTsKICNlbmRpZiAgLy8gQ09ORklHX1ZQ
OV9ISUdIQklUREVQVEgKIAorI2lmIEhBVkVfTkVPTiB8fCBIQVZFX1NTRTIgfHwgSEFWRV9NU0EK
IHR5cGVkZWYgdm9pZCAoKkludFByb1Jvd0Z1bmMpKGludDE2X3QgaGJ1ZlsxNl0sIHVpbnQ4X3Qg
Y29uc3QgKnJlZiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGludCByZWZf
c3RyaWRlLCBjb25zdCBpbnQgaGVpZ2h0KTsKIApAQCAtMTYxLDcgKzE2Miw4IEBAIGNsYXNzIElu
dFByb1Jvd1Rlc3QgOiBwdWJsaWMgQXZlcmFnZVRlc3RCYXNlPHVpbnQ4X3Q+LAogICAgICAgICAg
ICAgICAgICAgICAgIHB1YmxpYyA6OnRlc3Rpbmc6OldpdGhQYXJhbUludGVyZmFjZTxJbnRQcm9S
b3dQYXJhbT4gewogIHB1YmxpYzoKICAgSW50UHJvUm93VGVzdCgpCi0gICAgICA6IEF2ZXJhZ2VU
ZXN0QmFzZSgxNiwgR0VUX1BBUkFNKDApKSwgaGJ1Zl9hc21fKE5VTEwpLCBoYnVmX2NfKE5VTEwp
IHsKKyAgICAgIDogQXZlcmFnZVRlc3RCYXNlKDE2LCBHRVRfUEFSQU0oMCkpLCBoYnVmX2FzbV8o
bnVsbHB0ciksCisgICAgICAgIGhidWZfY18obnVsbHB0cikgewogICAgIGFzbV9mdW5jXyA9IEdF
VF9QQVJBTSgxKTsKICAgICBjX2Z1bmNfID0gR0VUX1BBUkFNKDIpOwogICB9CkBAIC0xNzAsNyAr
MTcyLDcgQEAgY2xhc3MgSW50UHJvUm93VGVzdCA6IHB1YmxpYyBBdmVyYWdlVGVzdEJhc2U8dWlu
dDhfdD4sCiAgIHZpcnR1YWwgdm9pZCBTZXRVcCgpIHsKICAgICBzb3VyY2VfZGF0YV8gPSByZWlu
dGVycHJldF9jYXN0PHVpbnQ4X3QgKj4oCiAgICAgICAgIHZweF9tZW1hbGlnbihrRGF0YUFsaWdu
bWVudCwga0RhdGFCbG9ja1NpemUgKiBzaXplb2Yoc291cmNlX2RhdGFfWzBdKSkpOwotICAgIEFT
U0VSVF9UUlVFKHNvdXJjZV9kYXRhXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoc291cmNlX2Rh
dGFfLCBudWxscHRyKTsKIAogICAgIGhidWZfYXNtXyA9IHJlaW50ZXJwcmV0X2Nhc3Q8aW50MTZf
dCAqPigKICAgICAgICAgdnB4X21lbWFsaWduKGtEYXRhQWxpZ25tZW50LCBzaXplb2YoKmhidWZf
YXNtXykgKiAxNikpOwpAQCAtMTgwLDExICsxODIsMTEgQEAgY2xhc3MgSW50UHJvUm93VGVzdCA6
IHB1YmxpYyBBdmVyYWdlVGVzdEJhc2U8dWludDhfdD4sCiAKICAgdmlydHVhbCB2b2lkIFRlYXJE
b3duKCkgewogICAgIHZweF9mcmVlKHNvdXJjZV9kYXRhXyk7Ci0gICAgc291cmNlX2RhdGFfID0g
TlVMTDsKKyAgICBzb3VyY2VfZGF0YV8gPSBudWxscHRyOwogICAgIHZweF9mcmVlKGhidWZfY18p
OwotICAgIGhidWZfY18gPSBOVUxMOworICAgIGhidWZfY18gPSBudWxscHRyOwogICAgIHZweF9m
cmVlKGhidWZfYXNtXyk7Ci0gICAgaGJ1Zl9hc21fID0gTlVMTDsKKyAgICBoYnVmX2FzbV8gPSBu
dWxscHRyOwogICB9CiAKICAgdm9pZCBSdW5Db21wYXJpc29uKCkgewpAQCAtMjAwLDYgKzIwMiw3
IEBAIGNsYXNzIEludFByb1Jvd1Rlc3QgOiBwdWJsaWMgQXZlcmFnZVRlc3RCYXNlPHVpbnQ4X3Q+
LAogICBpbnQxNl90ICpoYnVmX2FzbV87CiAgIGludDE2X3QgKmhidWZfY187CiB9OworR1RFU1Rf
QUxMT1dfVU5JTlNUQU5USUFURURfUEFSQU1FVEVSSVpFRF9URVNUKEludFByb1Jvd1Rlc3QpOwog
CiB0eXBlZGVmIGludDE2X3QgKCpJbnRQcm9Db2xGdW5jKSh1aW50OF90IGNvbnN0ICpyZWYsIGNv
bnN0IGludCB3aWR0aCk7CiAKQEAgLTIyNiw2ICsyMjksOCBAQCBjbGFzcyBJbnRQcm9Db2xUZXN0
IDogcHVibGljIEF2ZXJhZ2VUZXN0QmFzZTx1aW50OF90PiwKICAgaW50MTZfdCBzdW1fYXNtXzsK
ICAgaW50MTZfdCBzdW1fY187CiB9OworR1RFU1RfQUxMT1dfVU5JTlNUQU5USUFURURfUEFSQU1F
VEVSSVpFRF9URVNUKEludFByb0NvbFRlc3QpOworI2VuZGlmICAvLyBIQVZFX05FT04gfHwgSEFW
RV9TU0UyIHx8IEhBVkVfTVNBCiAKIHR5cGVkZWYgaW50ICgqU2F0ZEZ1bmMpKGNvbnN0IHRyYW5f
bG93X3QgKmNvZWZmcywgaW50IGxlbmd0aCk7CiB0eXBlZGVmIHN0ZDo6dHVwbGU8aW50LCBTYXRk
RnVuYz4gU2F0ZFRlc3RQYXJhbTsKQEAgLTIzOSw3ICsyNDQsNyBAQCBjbGFzcyBTYXRkVGVzdCA6
IHB1YmxpYyA6OnRlc3Rpbmc6OlRlc3QsCiAgICAgcm5kXy5SZXNldChBQ01SYW5kb206OkRldGVy
bWluaXN0aWNTZWVkKCkpOwogICAgIHNyY18gPSByZWludGVycHJldF9jYXN0PHRyYW5fbG93X3Qg
Kj4oCiAgICAgICAgIHZweF9tZW1hbGlnbigxNiwgc2l6ZW9mKCpzcmNfKSAqIHNhdGRfc2l6ZV8p
KTsKLSAgICBBU1NFUlRfVFJVRShzcmNfICE9IE5VTEwpOworICAgIEFTU0VSVF9ORShzcmNfLCBu
dWxscHRyKTsKICAgfQogCiAgIHZpcnR1YWwgdm9pZCBUZWFyRG93bigpIHsKQEAgLTI5NSw4ICsz
MDAsOCBAQCBjbGFzcyBCbG9ja0Vycm9yVGVzdEZQCiAgICAgICAgIHZweF9tZW1hbGlnbigxNiwg
c2l6ZW9mKCpjb2VmZl8pICogdHhmbV9zaXplXykpOwogICAgIGRxY29lZmZfID0gcmVpbnRlcnBy
ZXRfY2FzdDx0cmFuX2xvd190ICo+KAogICAgICAgICB2cHhfbWVtYWxpZ24oMTYsIHNpemVvZigq
ZHFjb2VmZl8pICogdHhmbV9zaXplXykpOwotICAgIEFTU0VSVF9UUlVFKGNvZWZmXyAhPSBOVUxM
KTsKLSAgICBBU1NFUlRfVFJVRShkcWNvZWZmXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoY29l
ZmZfLCBudWxscHRyKTsKKyAgICBBU1NFUlRfTkUoZHFjb2VmZl8sIG51bGxwdHIpOwogICB9CiAK
ICAgdmlydHVhbCB2b2lkIFRlYXJEb3duKCkgewpAQCAtMzc4LDYgKzM4Myw3IEBAIFRFU1RfUChB
dmVyYWdlVGVzdEhCRCwgUmFuZG9tKSB7CiB9CiAjZW5kaWYgIC8vIENPTkZJR19WUDlfSElHSEJJ
VERFUFRICiAKKyNpZiBIQVZFX05FT04gfHwgSEFWRV9TU0UyIHx8IEhBVkVfTVNBCiBURVNUX1Ao
SW50UHJvUm93VGVzdCwgTWluVmFsdWUpIHsKICAgRmlsbENvbnN0YW50KDApOwogICBSdW5Db21w
YXJpc29uKCk7CkBAIC00MDcsNiArNDEzLDcgQEAgVEVTVF9QKEludFByb0NvbFRlc3QsIFJhbmRv
bSkgewogICBGaWxsUmFuZG9tKCk7CiAgIFJ1bkNvbXBhcmlzb24oKTsKIH0KKyNlbmRpZgogCiBU
RVNUX1AoU2F0ZExvd2JkVGVzdCwgTWluVmFsdWUpIHsKICAgY29uc3QgaW50IGtNaW4gPSAtMzI2
NDA7CkBAIC01NTcsMzggKzU2NCwzOCBAQCBURVNUX1AoQmxvY2tFcnJvclRlc3RGUCwgRElTQUJM
RURfU3BlZWQpIHsKIAogdXNpbmcgc3RkOjptYWtlX3R1cGxlOwogCi1JTlNUQU5USUFURV9URVNU
X0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBDLCBBdmVyYWdlVGVzdCwK
ICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAxNiwgMSwgOCwgJnZweF9hdmdf
OHg4X2MpLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMTYsIDE2LCAxLCA0LCAm
dnB4X2F2Z180eDRfYykpKTsKIAogI2lmIENPTkZJR19WUDlfSElHSEJJVERFUFRICi1JTlNUQU5U
SUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBDLCBBdmVy
YWdlVGVzdEhCRCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAxNiwgMSwg
OCwgJnZweF9oaWdoYmRfYXZnXzh4OF9jKSwKICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1
cGxlKDE2LCAxNiwgMSwgNCwgJnZweF9oaWdoYmRfYXZnXzR4NF9jKSkpOwogCiAjaWYgSEFWRV9T
U0UyCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgK
ICAgICBTU0UyLCBBdmVyYWdlVGVzdEhCRCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1
cGxlKDE2LCAxNiwgMSwgOCwgJnZweF9oaWdoYmRfYXZnXzh4OF9zc2UyKSwKICAgICAgICAgICAg
ICAgICAgICAgICBtYWtlX3R1cGxlKDE2LCAxNiwgMSwgNCwgJnZweF9oaWdoYmRfYXZnXzR4NF9z
c2UyKSkpOwogI2VuZGlmICAvLyBIQVZFX1NTRTIKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1Ao
QywgU2F0ZEhpZ2hiZFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZh
bHVlcyhtYWtlX3R1cGxlKDE2LCAmdnB4X3NhdGRfYyksCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4X3NhdGRfYyksCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDI1NiwgJnZweF9z
YXRkX2MpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90
dXBsZSgxMDI0LCAmdnB4X3NhdGRfYykpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDLCBT
YXRkSGlnaGJkVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVl
cyhtYWtlX3R1cGxlKDE2LCAmdnB4X3NhdGRfYyksCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSg2NCwgJnZweF9zYXRkX2MpLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMjU2LCAmdnB4X3Nh
dGRfYyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90
dXBsZSgxMDI0LCAmdnB4X3NhdGRfYykpKTsKICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9ISUdIQklU
REVQVEgKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoQywgU2F0ZExvd2JkVGVzdCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoMTYsICZ2cHhf
c2F0ZF9jKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ha2Vf
dHVwbGUoNjQsICZ2cHhfc2F0ZF9jKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIG1ha2VfdHVwbGUoMjU2LCAmdnB4X3NhdGRfYyksCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDEwMjQsICZ2cHhfc2F0ZF9jKSkp
OworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKEMsIFNhdGRMb3diZFRlc3QsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgxNiwgJnZweF9zYXRk
X2MpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVw
bGUoNjQsICZ2cHhfc2F0ZF9jKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBtYWtlX3R1cGxlKDI1NiwgJnZweF9zYXRkX2MpLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMTAyNCwgJnZweF9zYXRkX2MpKSk7
CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAog
ICAgIEMsIEJsb2NrRXJyb3JUZXN0RlAsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBs
ZSgxNiwgJnZwOV9ibG9ja19lcnJvcl9mcF9jKSwKICAgICAgICAgICAgICAgICAgICAgICBtYWtl
X3R1cGxlKDY0LCAmdnA5X2Jsb2NrX2Vycm9yX2ZwX2MpLApAQCAtNTk2LDcgKzYwMyw3IEBAIElO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUo
MTAyNCwgJnZwOV9ibG9ja19lcnJvcl9mcF9jKSkpOwogCiAjaWYgSEFWRV9TU0UyCi1JTlNUQU5U
SUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBTU0UyLCBB
dmVyYWdlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAxNiwgMCwg
OCwgJnZweF9hdmdfOHg4X3NzZTIpLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUo
MTYsIDE2LCA1LCA4LCAmdnB4X2F2Z184eDhfc3NlMiksCkBAIC02MDUsMjcgKzYxMiwyNyBAQCBJ
TlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxl
KDE2LCAxNiwgNSwgNCwgJnZweF9hdmdfNHg0X3NzZTIpLAogICAgICAgICAgICAgICAgICAgICAg
IG1ha2VfdHVwbGUoMzIsIDMyLCAxNSwgNCwgJnZweF9hdmdfNHg0X3NzZTIpKSk7CiAKLUlOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTRTIs
IEludFByb1Jvd1Rlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgxNiwgJnZw
eF9pbnRfcHJvX3Jvd19zc2UyLCAmdnB4X2ludF9wcm9fcm93X2MpLAogICAgICAgICAgICAgICAg
ICAgICAgIG1ha2VfdHVwbGUoMzIsICZ2cHhfaW50X3Byb19yb3dfc3NlMiwgJnZweF9pbnRfcHJv
X3Jvd19jKSwKICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4X2ludF9w
cm9fcm93X3NzZTIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2ludF9w
cm9fcm93X2MpKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVT
VF9TVUlURV9QKAogICAgIFNTRTIsIEludFByb0NvbFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXMobWFrZV90dXBsZSgxNiwgJnZweF9pbnRfcHJvX2NvbF9zc2UyLCAmdnB4X2ludF9wcm9fY29s
X2MpLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMzIsICZ2cHhfaW50X3Byb19j
b2xfc3NlMiwgJnZweF9pbnRfcHJvX2NvbF9jKSwKICAgICAgICAgICAgICAgICAgICAgICBtYWtl
X3R1cGxlKDY0LCAmdnB4X2ludF9wcm9fY29sX3NzZTIsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAmdnB4X2ludF9wcm9fY29sX2MpKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FT
RV9QKFNTRTIsIFNhdGRMb3diZFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rp
bmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAmdnB4X3NhdGRfc3NlMiksCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4X3NhdGRfc3Nl
MiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxl
KDI1NiwgJnZweF9zYXRkX3NzZTIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgbWFrZV90dXBsZSgxMDI0LCAmdnB4X3NhdGRfc3NlMikpKTsKK0lOU1RBTlRJQVRF
X1RFU1RfU1VJVEVfUChTU0UyLCBTYXRkTG93YmRUZXN0LAorICAgICAgICAgICAgICAgICAgICAg
ICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoMTYsICZ2cHhfc2F0ZF9zc2UyKSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDY0LCAm
dnB4X3NhdGRfc3NlMiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgbWFrZV90dXBsZSgyNTYsICZ2cHhfc2F0ZF9zc2UyKSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDEwMjQsICZ2cHhfc2F0ZF9zc2UyKSkp
OwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgK
ICAgICBTU0UyLCBCbG9ja0Vycm9yVGVzdEZQLAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2Vf
dHVwbGUoMTYsICZ2cDlfYmxvY2tfZXJyb3JfZnBfc3NlMiksCiAgICAgICAgICAgICAgICAgICAg
ICAgbWFrZV90dXBsZSg2NCwgJnZwOV9ibG9ja19lcnJvcl9mcF9zc2UyKSwKQEAgLTYzNCwxNCAr
NjQxLDE0IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX1NTRTIK
IAogI2lmIEhBVkVfQVZYMgotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoQVZYMiwgU2F0ZExvd2Jk
VGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVw
bGUoMTYsICZ2cHhfc2F0ZF9hdngyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIG1ha2VfdHVwbGUoNjQsICZ2cHhfc2F0ZF9hdngyKSwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMjU2LCAmdnB4X3NhdGRfYXZ4
MiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxl
KDEwMjQsICZ2cHhfc2F0ZF9hdngyKSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKEFWWDIs
IFNhdGRMb3diZFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXMobWFrZV90dXBsZSgxNiwgJnZweF9zYXRkX2F2eDIpLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoNjQsICZ2cHhfc2F0ZF9hdngyKSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDI1Niwg
JnZweF9zYXRkX2F2eDIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIG1ha2VfdHVwbGUoMTAyNCwgJnZweF9zYXRkX2F2eDIpKSk7CiAKICNpZiBDT05GSUdfVlA5
X0hJR0hCSVRERVBUSAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNU
X1NVSVRFX1AoCiAgICAgQVZYMiwgU2F0ZEhpZ2hiZFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXMobWFrZV90dXBsZSgxNiwgJnZweF9oaWdoYmRfc2F0ZF9hdngyKSwKICAgICAgICAgICAgICAg
ICAgICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4X2hpZ2hiZF9zYXRkX2F2eDIpLApAQCAtNjQ5LDcg
KzY1Niw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAgICAgICAgICAg
IG1ha2VfdHVwbGUoMTAyNCwgJnZweF9oaWdoYmRfc2F0ZF9hdngyKSkpOwogI2VuZGlmICAvLyBD
T05GSUdfVlA5X0hJR0hCSVRERVBUSAogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RB
TlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBBVlgyLCBCbG9ja0Vycm9yVGVzdEZQLAogICAgIDo6
dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoMTYsICZ2cDlfYmxvY2tfZXJyb3JfZnBfYXZ4Miks
CiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSg2NCwgJnZwOV9ibG9ja19lcnJvcl9m
cF9hdngyKSwKQEAgLTY1OCw3ICs2NjUsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNl
bmRpZgogCiAjaWYgSEFWRV9ORU9OCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJ
QVRFX1RFU1RfU1VJVEVfUCgKICAgICBORU9OLCBBdmVyYWdlVGVzdCwKICAgICA6OnRlc3Rpbmc6
OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAxNiwgMCwgOCwgJnZweF9hdmdfOHg4X25lb24pLAogICAg
ICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMTYsIDE2LCA1LCA4LCAmdnB4X2F2Z184eDhf
bmVvbiksCkBAIC02NjcsMzAgKzY3NCwzMCBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAg
ICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDE2LCAxNiwgNSwgNCwgJnZweF9hdmdfNHg0
X25lb24pLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMzIsIDMyLCAxNSwgNCwg
JnZweF9hdmdfNHg0X25lb24pKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QKAogICAgIE5FT04sIEludFByb1Jvd1Rlc3QsCiAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgxNiwgJnZweF9pbnRfcHJvX3Jvd19uZW9uLCAmdnB4X2lu
dF9wcm9fcm93X2MpLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMzIsICZ2cHhf
aW50X3Byb19yb3dfbmVvbiwgJnZweF9pbnRfcHJvX3Jvd19jKSwKICAgICAgICAgICAgICAgICAg
ICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4X2ludF9wcm9fcm93X25lb24sCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAmdnB4X2ludF9wcm9fcm93X2MpKSk7CiAKLUlOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE5FT04sIEludFBy
b0NvbFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgxNiwgJnZweF9pbnRf
cHJvX2NvbF9uZW9uLCAmdnB4X2ludF9wcm9fY29sX2MpLAogICAgICAgICAgICAgICAgICAgICAg
IG1ha2VfdHVwbGUoMzIsICZ2cHhfaW50X3Byb19jb2xfbmVvbiwgJnZweF9pbnRfcHJvX2NvbF9j
KSwKICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4X2ludF9wcm9fY29s
X25lb24sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2ludF9wcm9fY29s
X2MpKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE5FT04sIFNhdGRMb3diZFRlc3QsCi0g
ICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAm
dnB4X3NhdGRfbmVvbiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBtYWtlX3R1cGxlKDY0LCAmdnB4X3NhdGRfbmVvbiksCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDI1NiwgJnZweF9zYXRkX25lb24pLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSgxMDI0LCAm
dnB4X3NhdGRfbmVvbikpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChORU9OLCBTYXRkTG93
YmRUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2Vf
dHVwbGUoMTYsICZ2cHhfc2F0ZF9uZW9uKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4X3NhdGRfbmVvbiksCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSgyNTYsICZ2cHhfc2F0
ZF9uZW9uKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtl
X3R1cGxlKDEwMjQsICZ2cHhfc2F0ZF9uZW9uKSkpOwogCiAvLyBUT0RPKGppYW5qKTogUmVtb3Zl
IHRoZSBoaWdoYml0ZGVwdGggZmxhZyBvbmNlIHRoZSBTSU1EIGZ1bmN0aW9ucyBhcmUKIC8vIGlu
IHBsYWNlLgogI2lmICFDT05GSUdfVlA5X0hJR0hCSVRERVBUSAotSU5TVEFOVElBVEVfVEVTVF9D
QVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTkVPTiwgQmxvY2tFcnJvclRl
c3RGUCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAmdnA5X2Jsb2NrX2Vy
cm9yX2ZwX25lb24pLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoNjQsICZ2cDlf
YmxvY2tfZXJyb3JfZnBfbmVvbiksCkBAIC03MDAsNyArNzA3LDcgQEAgSU5TVEFOVElBVEVfVEVT
VF9DQVNFX1AoCiAjZW5kaWYgIC8vIEhBVkVfTkVPTgogCiAjaWYgSEFWRV9NU0EKLUlOU1RBTlRJ
QVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE1TQSwgQXZl
cmFnZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgxNiwgMTYsIDAsIDgs
ICZ2cHhfYXZnXzh4OF9tc2EpLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMTYs
IDE2LCA1LCA4LCAmdnB4X2F2Z184eDhfbXNhKSwKQEAgLTcwOSwxNCArNzE2LDE0IEBAIElOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMTYs
IDE2LCA1LCA0LCAmdnB4X2F2Z180eDRfbXNhKSwKICAgICAgICAgICAgICAgICAgICAgICBtYWtl
X3R1cGxlKDMyLCAzMiwgMTUsIDQsICZ2cHhfYXZnXzR4NF9tc2EpKSk7CiAKLUlOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE1TQSwgSW50UHJv
Um93VGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAmdnB4X2ludF9w
cm9fcm93X21zYSwgJnZweF9pbnRfcHJvX3Jvd19jKSwKICAgICAgICAgICAgICAgICAgICAgICBt
YWtlX3R1cGxlKDMyLCAmdnB4X2ludF9wcm9fcm93X21zYSwgJnZweF9pbnRfcHJvX3Jvd19jKSwK
ICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4X2ludF9wcm9fcm93X21z
YSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfaW50X3Byb19yb3dfYykp
KTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1Ao
CiAgICAgTVNBLCBJbnRQcm9Db2xUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVw
bGUoMTYsICZ2cHhfaW50X3Byb19jb2xfbXNhLCAmdnB4X2ludF9wcm9fY29sX2MpLAogICAgICAg
ICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMzIsICZ2cHhfaW50X3Byb19jb2xfbXNhLCAmdnB4
X2ludF9wcm9fY29sX2MpLApAQCAtNzI2LDExICs3MzMsMTEgQEAgSU5TVEFOVElBVEVfVEVTVF9D
QVNFX1AoCiAvLyBUT0RPKGppbmduaW5nKTogUmVtb3ZlIHRoZSBoaWdoYml0ZGVwdGggZmxhZyBv
bmNlIHRoZSBTSU1EIGZ1bmN0aW9ucyBhcmUKIC8vIGluIHBsYWNlLgogI2lmICFDT05GSUdfVlA5
X0hJR0hCSVRERVBUSAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTVNBLCBTYXRkTG93YmRUZXN0
LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgx
NiwgJnZweF9zYXRkX21zYSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4X3NhdGRfbXNhKSwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMjU2LCAmdnB4X3NhdGRfbXNhKSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMTAyNCwg
JnZweF9zYXRkX21zYSkpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChNU0EsIFNhdGRMb3di
ZFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90
dXBsZSgxNiwgJnZweF9zYXRkX21zYSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgbWFrZV90dXBsZSg2NCwgJnZweF9zYXRkX21zYSksCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSgyNTYsICZ2cHhfc2F0ZF9t
c2EpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVw
bGUoMTAyNCwgJnZweF9zYXRkX21zYSkpKTsKICNlbmRpZiAgLy8gIUNPTkZJR19WUDlfSElHSEJJ
VERFUFRICiAjZW5kaWYgIC8vIEhBVkVfTVNBCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVz
dC9ibG9ja2luZXNzX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYmxvY2tpbmVzc190ZXN0LmNj
CmluZGV4IGNlZDZlNjZjNjIwNzBkOTQzMDdjOTM2MWU5NThlNTMzMmZkZGNiNGMuLjExYjJhM2Y2
MWZmM2M5ODY2ODRiMzZmNTI0M2RiMmI1NmFlZTlmMGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dGVzdC9ibG9ja2luZXNzX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2Jsb2NraW5lc3Nf
dGVzdC5jYwpAQCAtMzUsMTggKzM1LDE4IEBAIGNsYXNzIEJsb2NraW5lc3NUZXN0QmFzZSA6IHB1
YmxpYyA6OnRlc3Rpbmc6OlRlc3QgewogIHB1YmxpYzoKICAgQmxvY2tpbmVzc1Rlc3RCYXNlKGlu
dCB3aWR0aCwgaW50IGhlaWdodCkgOiB3aWR0aF8od2lkdGgpLCBoZWlnaHRfKGhlaWdodCkge30K
IAotICBzdGF0aWMgdm9pZCBTZXRVcFRlc3RDYXNlKCkgeworICBzdGF0aWMgdm9pZCBTZXRVcFRl
c3RTdWl0ZSgpIHsKICAgICBzb3VyY2VfZGF0YV8gPSByZWludGVycHJldF9jYXN0PHVpbnQ4X3Qg
Kj4oCiAgICAgICAgIHZweF9tZW1hbGlnbihrRGF0YUFsaWdubWVudCwga0RhdGFCdWZmZXJTaXpl
KSk7CiAgICAgcmVmZXJlbmNlX2RhdGFfID0gcmVpbnRlcnByZXRfY2FzdDx1aW50OF90ICo+KAog
ICAgICAgICB2cHhfbWVtYWxpZ24oa0RhdGFBbGlnbm1lbnQsIGtEYXRhQnVmZmVyU2l6ZSkpOwog
ICB9CiAKLSAgc3RhdGljIHZvaWQgVGVhckRvd25UZXN0Q2FzZSgpIHsKKyAgc3RhdGljIHZvaWQg
VGVhckRvd25UZXN0U3VpdGUoKSB7CiAgICAgdnB4X2ZyZWUoc291cmNlX2RhdGFfKTsKLSAgICBz
b3VyY2VfZGF0YV8gPSBOVUxMOworICAgIHNvdXJjZV9kYXRhXyA9IG51bGxwdHI7CiAgICAgdnB4
X2ZyZWUocmVmZXJlbmNlX2RhdGFfKTsKLSAgICByZWZlcmVuY2VfZGF0YV8gPSBOVUxMOworICAg
IHJlZmVyZW5jZV9kYXRhXyA9IG51bGxwdHI7CiAgIH0KIAogICB2aXJ0dWFsIHZvaWQgVGVhckRv
d24oKSB7IGxpYnZweF90ZXN0OjpDbGVhclN5c3RlbVN0YXRlKCk7IH0KQEAgLTE1NCw4ICsxNTQs
OCBAQCBjbGFzcyBCbG9ja2luZXNzVlA5VGVzdAogfTsKICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9F
TkNPREVSCiAKLXVpbnQ4X3QgKkJsb2NraW5lc3NUZXN0QmFzZTo6c291cmNlX2RhdGFfID0gTlVM
TDsKLXVpbnQ4X3QgKkJsb2NraW5lc3NUZXN0QmFzZTo6cmVmZXJlbmNlX2RhdGFfID0gTlVMTDsK
K3VpbnQ4X3QgKkJsb2NraW5lc3NUZXN0QmFzZTo6c291cmNlX2RhdGFfID0gbnVsbHB0cjsKK3Vp
bnQ4X3QgKkJsb2NraW5lc3NUZXN0QmFzZTo6cmVmZXJlbmNlX2RhdGFfID0gbnVsbHB0cjsKIAog
I2lmIENPTkZJR19WUDlfRU5DT0RFUgogVEVTVF9QKEJsb2NraW5lc3NWUDlUZXN0LCBTb3VyY2VC
bG9ja2llclRoYW5SZWZlcmVuY2UpIHsKQEAgLTIxNSw3ICsyMTUsOCBAQCB1c2luZyBzdGQ6Om1h
a2VfdHVwbGU7CiBjb25zdCBCbG9ja2luZXNzUGFyYW0gY192cDlfdGVzdHNbXSA9IHsgbWFrZV90
dXBsZSgzMjAsIDI0MCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
bWFrZV90dXBsZSgzMTgsIDI0MiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgbWFrZV90dXBsZSgzMTgsIDIzOCkgfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEMs
IEJsb2NraW5lc3NWUDlUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKGNfdnA5X3Rlc3RzKSk7CitJ
TlNUQU5USUFURV9URVNUX1NVSVRFX1AoQywgQmxvY2tpbmVzc1ZQOVRlc3QsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihjX3ZwOV90ZXN0cykpOwogI2VuZGlm
CiAKIH0gIC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2JvcmRlcnNf
dGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9ib3JkZXJzX3Rlc3QuY2MKaW5kZXggYjkxYTE1Yjgw
MDM2YWQyYmQxZGMwZjc1MTliMzI4ZDIyOTRlMTA1Yi4uM2MxZjY5YTkyM2ZjZDBiMzgzMTY5MWQz
MDYwNzY4MGY2NjkyNzgxNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2JvcmRlcnNfdGVz
dC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYm9yZGVyc190ZXN0LmNjCkBAIC03OSw2ICs3OSw2
IEBAIFRFU1RfUChCb3JkZXJzVGVzdCwgVGVzdExvd0JpdHJhdGUpIHsKICAgQVNTRVJUX05PX0ZB
VEFMX0ZBSUxVUkUoUnVuTG9vcCgmdmlkZW8pKTsKIH0KIAotVlA5X0lOU1RBTlRJQVRFX1RFU1Rf
Q0FTRShCb3JkZXJzVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpW
YWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a1R3b1Bhc3NHb29kKSk7CitWUDlfSU5TVEFOVElBVEVfVEVT
VF9TVUlURShCb3JkZXJzVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGlu
Zzo6VmFsdWVzKDo6bGlidnB4X3Rlc3Q6OmtUd29QYXNzR29vZCkpOwogfSAgLy8gbmFtZXNwYWNl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYnl0ZV9hbGlnbm1lbnRfdGVzdC5jYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC9ieXRlX2FsaWdubWVudF90ZXN0LmNjCmluZGV4IDBlZjZjNGM1MTkyZjI2
ZDJkODA1OGZlN2IxNzk0MDc0YjliMDBiYTkuLjFlMGZmY2ViOGQwMzhhZDBiYjBjNTVhYmI0ZDUx
MTI5ZGUzODdmNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9ieXRlX2FsaWdubWVudF90
ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9ieXRlX2FsaWdubWVudF90ZXN0LmNjCkBAIC01
NSwyMyArNTUsMjQgQEAgY29uc3QgQnl0ZUFsaWdubWVudFRlc3RQYXJhbSBrQmFUZXN0UGFyYW1z
W10gPSB7CiBjbGFzcyBCeXRlQWxpZ25tZW50VGVzdAogICAgIDogcHVibGljIDo6dGVzdGluZzo6
VGVzdFdpdGhQYXJhbTxCeXRlQWxpZ25tZW50VGVzdFBhcmFtPiB7CiAgcHJvdGVjdGVkOgotICBC
eXRlQWxpZ25tZW50VGVzdCgpIDogdmlkZW9fKE5VTEwpLCBkZWNvZGVyXyhOVUxMKSwgbWQ1X2Zp
bGVfKE5VTEwpIHt9CisgIEJ5dGVBbGlnbm1lbnRUZXN0KCkKKyAgICAgIDogdmlkZW9fKG51bGxw
dHIpLCBkZWNvZGVyXyhudWxscHRyKSwgbWQ1X2ZpbGVfKG51bGxwdHIpIHt9CiAKICAgdmlydHVh
bCB2b2lkIFNldFVwKCkgewogICAgIHZpZGVvXyA9IG5ldyBsaWJ2cHhfdGVzdDo6V2ViTVZpZGVv
U291cmNlKGtWUDlUZXN0RmlsZSk7Ci0gICAgQVNTRVJUX1RSVUUodmlkZW9fICE9IE5VTEwpOwor
ICAgIEFTU0VSVF9ORSh2aWRlb18sIG51bGxwdHIpOwogICAgIHZpZGVvXy0+SW5pdCgpOwogICAg
IHZpZGVvXy0+QmVnaW4oKTsKIAogICAgIGNvbnN0IHZweF9jb2RlY19kZWNfY2ZnX3QgY2ZnID0g
dnB4X2NvZGVjX2RlY19jZmdfdCgpOwogICAgIGRlY29kZXJfID0gbmV3IGxpYnZweF90ZXN0OjpW
UDlEZWNvZGVyKGNmZywgMCk7Ci0gICAgQVNTRVJUX1RSVUUoZGVjb2Rlcl8gIT0gTlVMTCk7Cisg
ICAgQVNTRVJUX05FKGRlY29kZXJfLCBudWxscHRyKTsKIAogICAgIE9wZW5NZDVGaWxlKGtWUDlN
ZDVGaWxlKTsKICAgfQogCiAgIHZpcnR1YWwgdm9pZCBUZWFyRG93bigpIHsKLSAgICBpZiAobWQ1
X2ZpbGVfICE9IE5VTEwpIGZjbG9zZShtZDVfZmlsZV8pOworICAgIGlmIChtZDVfZmlsZV8gIT0g
bnVsbHB0cikgZmNsb3NlKG1kNV9maWxlXyk7CiAKICAgICBkZWxldGUgZGVjb2Rlcl87CiAgICAg
ZGVsZXRlIHZpZGVvXzsKQEAgLTkwLDcgKzkxLDcgQEAgY2xhc3MgQnl0ZUFsaWdubWVudFRlc3QK
ICAgfQogCiAgIHZweF9jb2RlY19lcnJfdCBEZWNvZGVSZW1haW5pbmdGcmFtZXMoaW50IGJ5dGVf
YWxpZ25tZW50X3RvX2NoZWNrKSB7Ci0gICAgZm9yICg7IHZpZGVvXy0+Y3hkYXRhKCkgIT0gTlVM
TDsgdmlkZW9fLT5OZXh0KCkpIHsKKyAgICBmb3IgKDsgdmlkZW9fLT5jeGRhdGEoKSAhPSBudWxs
cHRyOyB2aWRlb18tPk5leHQoKSkgewogICAgICAgY29uc3QgdnB4X2NvZGVjX2Vycl90IHJlcyA9
CiAgICAgICAgICAgZGVjb2Rlcl8tPkRlY29kZUZyYW1lKHZpZGVvXy0+Y3hkYXRhKCksIHZpZGVv
Xy0+ZnJhbWVfc2l6ZSgpKTsKICAgICAgIGlmIChyZXMgIT0gVlBYX0NPREVDX09LKSByZXR1cm4g
cmVzOwpAQCAtMTEzLDcgKzExNCw3IEBAIGNsYXNzIEJ5dGVBbGlnbm1lbnRUZXN0CiAgICAgY29u
c3QgdnB4X2ltYWdlX3QgKmltZzsKIAogICAgIC8vIEdldCBkZWNvbXByZXNzZWQgZGF0YQotICAg
IHdoaWxlICgoaW1nID0gZGVjX2l0ZXIuTmV4dCgpKSAhPSBOVUxMKSB7CisgICAgd2hpbGUgKChp
bWcgPSBkZWNfaXRlci5OZXh0KCkpICE9IG51bGxwdHIpIHsKICAgICAgIGlmIChieXRlX2FsaWdu
bWVudF90b19jaGVjayA9PSBrTGVnYWN5Qnl0ZUFsaWdubWVudCkgewogICAgICAgICBDaGVja0J5
dGVBbGlnbm1lbnQoaW1nLT5wbGFuZXNbMF0sIGtMZWdhY3lZUGxhbmVCeXRlQWxpZ25tZW50KTsK
ICAgICAgIH0gZWxzZSB7CkBAIC0xMjgsMTIgKzEyOSwxMiBAQCBjbGFzcyBCeXRlQWxpZ25tZW50
VGVzdAogICAvLyBUT0RPKGZnYWxsaWdhbik6IE1vdmUgdGhlIE1ENSB0ZXN0aW5nIGNvZGUgaW50
byBhbm90aGVyIGNsYXNzLgogICB2b2lkIE9wZW5NZDVGaWxlKGNvbnN0IHN0ZDo6c3RyaW5nICZt
ZDVfZmlsZV9uYW1lXykgewogICAgIG1kNV9maWxlXyA9IGxpYnZweF90ZXN0OjpPcGVuVGVzdERh
dGFGaWxlKG1kNV9maWxlX25hbWVfKTsKLSAgICBBU1NFUlRfVFJVRShtZDVfZmlsZV8gIT0gTlVM
TCkKKyAgICBBU1NFUlRfTkUobWQ1X2ZpbGVfLCBudWxscHRyKQogICAgICAgICA8PCAiTUQ1IGZp
bGUgb3BlbiBmYWlsZWQuIEZpbGVuYW1lOiAiIDw8IG1kNV9maWxlX25hbWVfOwogICB9CiAKICAg
dm9pZCBDaGVja01kNShjb25zdCB2cHhfaW1hZ2VfdCAmaW1nKSB7Ci0gICAgQVNTRVJUX1RSVUUo
bWQ1X2ZpbGVfICE9IE5VTEwpOworICAgIEFTU0VSVF9ORShtZDVfZmlsZV8sIG51bGxwdHIpOwog
ICAgIGNoYXIgZXhwZWN0ZWRfbWQ1WzMzXTsKICAgICBjaGFyIGp1bmtbMTI4XTsKIApAQCAtMTc2
LDggKzE3Nyw4IEBAIFRFU1RfUChCeXRlQWxpZ25tZW50VGVzdCwgVGVzdEFsaWdubWVudCkgewog
ICB9CiB9CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEFsaWdubWVudHMsIEJ5dGVBbGlnbm1l
bnRUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrQmFU
ZXN0UGFyYW1zKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoQWxpZ25tZW50cywgQnl0ZUFs
aWdubWVudFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJ
bihrQmFUZXN0UGFyYW1zKSk7CiAKICNlbmRpZiAgLy8gQ09ORklHX1dFQk1fSU8KIApkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90ZXN0L2NvZGVjX2ZhY3RvcnkuaCBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9j
b2RlY19mYWN0b3J5LmgKaW5kZXggMTdjOTUxMmNhOGIwNTEzNjgzMGNlYWFiZDhiMTg2MTRkODg2
MGE1YS4uNzdjZTQ5ZGU5ZjVkNGU3M2EzOWEyNDMxM2YyYjUxZmFiYWI2ZGFmNSAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L2NvZGVjX2ZhY3RvcnkuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qv
Y29kZWNfZmFjdG9yeS5oCkBAIC0xNTcsMTUgKzE1NywxNSBAQCBjbGFzcyBWUDhDb2RlY0ZhY3Rv
cnkgOiBwdWJsaWMgQ29kZWNGYWN0b3J5IHsKIAogY29uc3QgbGlidnB4X3Rlc3Q6OlZQOENvZGVj
RmFjdG9yeSBrVlA4OwogCi0jZGVmaW5lIFZQOF9JTlNUQU5USUFURV9URVNUX0NBU0UodGVzdCwg
Li4uKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICBJTlNUQU5USUFURV9URVNU
X0NBU0VfUCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKKyNkZWZpbmUgVlA4X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUodGVzdCwgLi4uKSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCisgIElOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCggICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgVlA4
LCB0ZXN0LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKICAgICAgIDo6dGVzdGluZzo6Q29tYmluZSggICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgICAgOjp0ZXN0aW5nOjpW
YWx1ZXMoc3RhdGljX2Nhc3Q8Y29uc3QgbGlidnB4X3Rlc3Q6OkNvZGVjRmFjdG9yeSAqPiggXAog
ICAgICAgICAgICAgICAmbGlidnB4X3Rlc3Q6OmtWUDgpKSwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwKICAgICAgICAgICBfX1ZBX0FSR1NfXykpCiAjZWxzZQotI2Rl
ZmluZSBWUDhfSU5TVEFOVElBVEVfVEVTVF9DQVNFKHRlc3QsIC4uLikKKyNkZWZpbmUgVlA4X0lO
U1RBTlRJQVRFX1RFU1RfU1VJVEUodGVzdCwgLi4uKQogI2VuZGlmICAvLyBDT05GSUdfVlA4CiAK
IC8qCkBAIC0yNTMsMTUgKzI1MywxNSBAQCBjbGFzcyBWUDlDb2RlY0ZhY3RvcnkgOiBwdWJsaWMg
Q29kZWNGYWN0b3J5IHsKIAogY29uc3QgbGlidnB4X3Rlc3Q6OlZQOUNvZGVjRmFjdG9yeSBrVlA5
OwogCi0jZGVmaW5lIFZQOV9JTlNUQU5USUFURV9URVNUX0NBU0UodGVzdCwgLi4uKSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXAotICBJTlNUQU5USUFURV9URVNUX0NBU0VfUCggICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyNkZWZpbmUg
VlA5X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUodGVzdCwgLi4uKSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCisgIElOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCggICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgVlA5LCB0ZXN0LCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
ICAgICAgIDo6dGVzdGluZzo6Q29tYmluZSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoc3RhdGlj
X2Nhc3Q8Y29uc3QgbGlidnB4X3Rlc3Q6OkNvZGVjRmFjdG9yeSAqPiggXAogICAgICAgICAgICAg
ICAmbGlidnB4X3Rlc3Q6OmtWUDkpKSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKICAgICAgICAgICBfX1ZBX0FSR1NfXykpCiAjZWxzZQotI2RlZmluZSBWUDlfSU5T
VEFOVElBVEVfVEVTVF9DQVNFKHRlc3QsIC4uLikKKyNkZWZpbmUgVlA5X0lOU1RBTlRJQVRFX1RF
U1RfU1VJVEUodGVzdCwgLi4uKQogI2VuZGlmICAvLyBDT05GSUdfVlA5CiAKIH0gIC8vIG5hbWVz
cGFjZSBsaWJ2cHhfdGVzdApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2NvbXBfYXZnX3By
ZWRfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9jb21wX2F2Z19wcmVkX3Rlc3QuY2MKaW5kZXgg
NTZlNzAxZTA5Y2JmODJiYWZmOGU4ZjQ1YTFkYjJmMTQyOWMzMGE5NC4uYjkyMDFhMjBmOWMzMmFh
ZTVmOGYwMDY0YzQ0YmYzZjJiODRmZDcxOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2Nv
bXBfYXZnX3ByZWRfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvY29tcF9hdmdfcHJlZF90
ZXN0LmNjCkBAIC0yOSw5ICsyOSw5IEBAIHVpbnQ4X3QgYXZnX3dpdGhfcm91bmRpbmcodWludDhf
dCBhLCB1aW50OF90IGIpIHsgcmV0dXJuIChhICsgYiArIDEpID4+IDE7IH0KIAogdm9pZCByZWZl
cmVuY2VfcHJlZChjb25zdCBCdWZmZXI8dWludDhfdD4gJnByZWQsIGNvbnN0IEJ1ZmZlcjx1aW50
OF90PiAmcmVmLAogICAgICAgICAgICAgICAgICAgICBpbnQgd2lkdGgsIGludCBoZWlnaHQsIEJ1
ZmZlcjx1aW50OF90PiAqYXZnKSB7Ci0gIEFTU0VSVF9UUlVFKGF2Zy0+VG9wTGVmdFBpeGVsKCkg
IT0gTlVMTCk7Ci0gIEFTU0VSVF9UUlVFKHByZWQuVG9wTGVmdFBpeGVsKCkgIT0gTlVMTCk7Ci0g
IEFTU0VSVF9UUlVFKHJlZi5Ub3BMZWZ0UGl4ZWwoKSAhPSBOVUxMKTsKKyAgQVNTRVJUX05FKGF2
Zy0+VG9wTGVmdFBpeGVsKCksIG51bGxwdHIpOworICBBU1NFUlRfTkUocHJlZC5Ub3BMZWZ0UGl4
ZWwoKSwgbnVsbHB0cik7CisgIEFTU0VSVF9ORShyZWYuVG9wTGVmdFBpeGVsKCksIG51bGxwdHIp
OwogCiAgIGZvciAoaW50IHkgPSAwOyB5IDwgaGVpZ2h0OyArK3kpIHsKICAgICBmb3IgKGludCB4
ID0gMDsgeCA8IHdpZHRoOyArK3gpIHsKQEAgLTE2NiwyMSArMTY2LDIxIEBAIFRFU1RfUChBdmdQ
cmVkVGVzdCwgRElTQUJMRURfU3BlZWQpIHsKICAgfQogfQogCi1JTlNUQU5USUFURV9URVNUX0NB
U0VfUChDLCBBdmdQcmVkVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6
VmFsdWVzKCZ2cHhfY29tcF9hdmdfcHJlZF9jKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1Ao
QywgQXZnUHJlZFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXMoJnZweF9jb21wX2F2Z19wcmVkX2MpKTsKIAogI2lmIEhBVkVfU1NFMgotSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoU1NFMiwgQXZnUHJlZFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6
OnRlc3Rpbmc6OlZhbHVlcygmdnB4X2NvbXBfYXZnX3ByZWRfc3NlMikpOworSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QKFNTRTIsIEF2Z1ByZWRUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAg
IDo6dGVzdGluZzo6VmFsdWVzKCZ2cHhfY29tcF9hdmdfcHJlZF9zc2UyKSk7CiAjZW5kaWYgIC8v
IEhBVkVfU1NFMgogCiAjaWYgSEFWRV9ORU9OCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChORU9O
LCBBdmdQcmVkVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVz
KCZ2cHhfY29tcF9hdmdfcHJlZF9uZW9uKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoTkVP
TiwgQXZnUHJlZFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXMoJnZweF9jb21wX2F2Z19wcmVkX25lb24pKTsKICNlbmRpZiAgLy8gSEFWRV9ORU9OCiAKICNp
ZiBIQVZFX1ZTWAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoVlNYLCBBdmdQcmVkVGVzdCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKCZ2cHhfY29tcF9hdmdfcHJl
ZF92c3gpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChWU1gsIEF2Z1ByZWRUZXN0LAorICAg
ICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKCZ2cHhfY29tcF9hdmdfcHJl
ZF92c3gpKTsKICNlbmRpZiAgLy8gSEFWRV9WU1gKIH0gIC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L2NvbmZpZ190ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2NvbmZp
Z190ZXN0LmNjCmluZGV4IGIyZjhlYTVlZDMyNjJhY2VlODNiNWQzYzQ5NDI1NTI0YmM2NmNhM2Eu
LjhmNGM2MGUxMTM3ZDExZjE2Yjg3YzNlZjE4MDEwNWIwYmFlZGE5ZmQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC9jb25maWdfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvY29uZmln
X3Rlc3QuY2MKQEAgLTU4LDUgKzU4LDUgQEAgVEVTVF9QKENvbmZpZ1Rlc3QsIExhZ0lzRGlzYWJs
ZWQpIHsKICAgRVhQRUNUX0VRKGZyYW1lX2NvdW50X2luXywgZnJhbWVfY291bnRfb3V0Xyk7CiB9
CiAKLVZQOF9JTlNUQU5USUFURV9URVNUX0NBU0UoQ29uZmlnVGVzdCwgT05FX1BBU1NfVEVTVF9N
T0RFUyk7CitWUDhfSU5TVEFOVElBVEVfVEVTVF9TVUlURShDb25maWdUZXN0LCBPTkVfUEFTU19U
RVNUX01PREVTKTsKIH0gIC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0
L2NvbnNpc3RlbmN5X3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvY29uc2lzdGVuY3lfdGVzdC5j
YwppbmRleCA4NzViMDZmNGFhMTRmZDhhMzkxMTJiZmY3NTBiZTNjMzhjMWZlYWJkLi5mMGUyY2Iy
OTdlZjhmODdhNDI4ZTkyNTBkOTU1MzU3OTliZDAwMWJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3Rlc3QvY29uc2lzdGVuY3lfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvY29uc2lzdGVu
Y3lfdGVzdC5jYwpAQCAtMzksNyArMzksNyBAQCBjbGFzcyBDb25zaXN0ZW5jeVRlc3RCYXNlIDog
cHVibGljIDo6dGVzdGluZzo6VGVzdCB7CiAgcHVibGljOgogICBDb25zaXN0ZW5jeVRlc3RCYXNl
KGludCB3aWR0aCwgaW50IGhlaWdodCkgOiB3aWR0aF8od2lkdGgpLCBoZWlnaHRfKGhlaWdodCkg
e30KIAotICBzdGF0aWMgdm9pZCBTZXRVcFRlc3RDYXNlKCkgeworICBzdGF0aWMgdm9pZCBTZXRV
cFRlc3RTdWl0ZSgpIHsKICAgICBzb3VyY2VfZGF0YV9bMF0gPSByZWludGVycHJldF9jYXN0PHVp
bnQ4X3QgKj4oCiAgICAgICAgIHZweF9tZW1hbGlnbihrRGF0YUFsaWdubWVudCwga0RhdGFCdWZm
ZXJTaXplKSk7CiAgICAgcmVmZXJlbmNlX2RhdGFfWzBdID0gcmVpbnRlcnByZXRfY2FzdDx1aW50
OF90ICo+KApAQCAtNTIsMTUgKzUyLDE1IEBAIGNsYXNzIENvbnNpc3RlbmN5VGVzdEJhc2UgOiBw
dWJsaWMgOjp0ZXN0aW5nOjpUZXN0IHsKICAgfQogCiAgIHN0YXRpYyB2b2lkIENsZWFyU3NpbSgp
IHsgbWVtc2V0KHNzaW1fYXJyYXlfLCAwLCBrRGF0YUJ1ZmZlclNpemUgLyAxNik7IH0KLSAgc3Rh
dGljIHZvaWQgVGVhckRvd25UZXN0Q2FzZSgpIHsKKyAgc3RhdGljIHZvaWQgVGVhckRvd25UZXN0
U3VpdGUoKSB7CiAgICAgdnB4X2ZyZWUoc291cmNlX2RhdGFfWzBdKTsKLSAgICBzb3VyY2VfZGF0
YV9bMF0gPSBOVUxMOworICAgIHNvdXJjZV9kYXRhX1swXSA9IG51bGxwdHI7CiAgICAgdnB4X2Zy
ZWUocmVmZXJlbmNlX2RhdGFfWzBdKTsKLSAgICByZWZlcmVuY2VfZGF0YV9bMF0gPSBOVUxMOwor
ICAgIHJlZmVyZW5jZV9kYXRhX1swXSA9IG51bGxwdHI7CiAgICAgdnB4X2ZyZWUoc291cmNlX2Rh
dGFfWzFdKTsKLSAgICBzb3VyY2VfZGF0YV9bMV0gPSBOVUxMOworICAgIHNvdXJjZV9kYXRhX1sx
XSA9IG51bGxwdHI7CiAgICAgdnB4X2ZyZWUocmVmZXJlbmNlX2RhdGFfWzFdKTsKLSAgICByZWZl
cmVuY2VfZGF0YV9bMV0gPSBOVUxMOworICAgIHJlZmVyZW5jZV9kYXRhX1sxXSA9IG51bGxwdHI7
CiAKICAgICBkZWxldGVbXSBzc2ltX2FycmF5XzsKICAgfQpAQCAtMTQ1LDkgKzE0NSw5IEBAIGNs
YXNzIENvbnNpc3RlbmN5VlA5VGVzdAogfTsKICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9FTkNPREVS
CiAKLXVpbnQ4X3QgKkNvbnNpc3RlbmN5VGVzdEJhc2U6OnNvdXJjZV9kYXRhX1syXSA9IHsgTlVM
TCwgTlVMTCB9OwotdWludDhfdCAqQ29uc2lzdGVuY3lUZXN0QmFzZTo6cmVmZXJlbmNlX2RhdGFf
WzJdID0geyBOVUxMLCBOVUxMIH07Ci1Tc2ltdiAqQ29uc2lzdGVuY3lUZXN0QmFzZTo6c3NpbV9h
cnJheV8gPSBOVUxMOwordWludDhfdCAqQ29uc2lzdGVuY3lUZXN0QmFzZTo6c291cmNlX2RhdGFf
WzJdID0geyBudWxscHRyLCBudWxscHRyIH07Cit1aW50OF90ICpDb25zaXN0ZW5jeVRlc3RCYXNl
OjpyZWZlcmVuY2VfZGF0YV9bMl0gPSB7IG51bGxwdHIsIG51bGxwdHIgfTsKK1NzaW12ICpDb25z
aXN0ZW5jeVRlc3RCYXNlOjpzc2ltX2FycmF5XyA9IG51bGxwdHI7CiAKICNpZiBDT05GSUdfVlA5
X0VOQ09ERVIKIFRFU1RfUChDb25zaXN0ZW5jeVZQOVRlc3QsIENvbnNpc3RlbmN5SXNaZXJvKSB7
CkBAIC0yMDgsOCArMjA4LDggQEAgdXNpbmcgc3RkOjptYWtlX3R1cGxlOwogY29uc3QgQ29uc2lz
dGVuY3lQYXJhbSBjX3ZwOV90ZXN0c1tdID0geyBtYWtlX3R1cGxlKDMyMCwgMjQwKSwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSgzMTgsIDI0Miks
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMzE4
LCAyMzgpIH07Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUChDLCBDb25zaXN0ZW5jeVZQOVRlc3Qs
Ci0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGNfdnA5X3Rlc3Rz
KSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoQywgQ29uc2lzdGVuY3lWUDlUZXN0LAorICAg
ICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oY192cDlfdGVzdHMpKTsK
ICNlbmRpZgogCiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9j
b252b2x2ZV90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2NvbnZvbHZlX3Rlc3QuY2MKaW5kZXgg
ZDhkMDUzZGY1ZmQ2Y2E0M2I2NDU2ZmZiNGRiOGJjZjg2YTYyOWVmMS4uNGIyZGFkZWZhYzBkMDMz
NTA5YjUwNzA0ZjIzMzJkMDY3MjdiOTI5MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2Nv
bnZvbHZlX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2NvbnZvbHZlX3Rlc3QuY2MKQEAg
LTM0MSw3ICszNDEsNyBAQCB2b2lkIHdyYXBwZXJfZmlsdGVyX2Jsb2NrMmRfOF9jKGNvbnN0IHVp
bnQ4X3QgKnNyY19wdHIsCiAKIGNsYXNzIENvbnZvbHZlVGVzdCA6IHB1YmxpYyA6OnRlc3Rpbmc6
OlRlc3RXaXRoUGFyYW08Q29udm9sdmVQYXJhbT4gewogIHB1YmxpYzoKLSAgc3RhdGljIHZvaWQg
U2V0VXBUZXN0Q2FzZSgpIHsKKyAgc3RhdGljIHZvaWQgU2V0VXBUZXN0U3VpdGUoKSB7CiAgICAg
Ly8gRm9yY2UgaW5wdXRfIHRvIGJlIHVuYWxpZ25lZCwgb3V0cHV0IHRvIGJlIDE2IGJ5dGUgYWxp
Z25lZC4KICAgICBpbnB1dF8gPSByZWludGVycHJldF9jYXN0PHVpbnQ4X3QgKj4oCiAgICAgICAg
ICAgICAgICAgIHZweF9tZW1hbGlnbihrRGF0YUFsaWdubWVudCwga0lucHV0QnVmZmVyU2l6ZSAr
IDEpKSArCkBAIC0zNjMsMjAgKzM2MywyMCBAQCBjbGFzcyBDb252b2x2ZVRlc3QgOiBwdWJsaWMg
Ojp0ZXN0aW5nOjpUZXN0V2l0aFBhcmFtPENvbnZvbHZlUGFyYW0+IHsKIAogICB2aXJ0dWFsIHZv
aWQgVGVhckRvd24oKSB7IGxpYnZweF90ZXN0OjpDbGVhclN5c3RlbVN0YXRlKCk7IH0KIAotICBz
dGF0aWMgdm9pZCBUZWFyRG93blRlc3RDYXNlKCkgeworICBzdGF0aWMgdm9pZCBUZWFyRG93blRl
c3RTdWl0ZSgpIHsKICAgICB2cHhfZnJlZShpbnB1dF8gLSAxKTsKLSAgICBpbnB1dF8gPSBOVUxM
OworICAgIGlucHV0XyA9IG51bGxwdHI7CiAgICAgdnB4X2ZyZWUob3V0cHV0Xyk7Ci0gICAgb3V0
cHV0XyA9IE5VTEw7CisgICAgb3V0cHV0XyA9IG51bGxwdHI7CiAgICAgdnB4X2ZyZWUob3V0cHV0
X3JlZl8pOwotICAgIG91dHB1dF9yZWZfID0gTlVMTDsKKyAgICBvdXRwdXRfcmVmXyA9IG51bGxw
dHI7CiAjaWYgQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKICAgICB2cHhfZnJlZShpbnB1dDE2XyAt
IDEpOwotICAgIGlucHV0MTZfID0gTlVMTDsKKyAgICBpbnB1dDE2XyA9IG51bGxwdHI7CiAgICAg
dnB4X2ZyZWUob3V0cHV0MTZfKTsKLSAgICBvdXRwdXQxNl8gPSBOVUxMOworICAgIG91dHB1dDE2
XyA9IG51bGxwdHI7CiAgICAgdnB4X2ZyZWUob3V0cHV0MTZfcmVmXyk7Ci0gICAgb3V0cHV0MTZf
cmVmXyA9IE5VTEw7CisgICAgb3V0cHV0MTZfcmVmXyA9IG51bGxwdHI7CiAjZW5kaWYKICAgfQog
CkBAIC01NDEsMTMgKzU0MSwxMyBAQCBjbGFzcyBDb252b2x2ZVRlc3QgOiBwdWJsaWMgOjp0ZXN0
aW5nOjpUZXN0V2l0aFBhcmFtPENvbnZvbHZlUGFyYW0+IHsKICNlbmRpZgogfTsKIAotdWludDhf
dCAqQ29udm9sdmVUZXN0OjppbnB1dF8gPSBOVUxMOwotdWludDhfdCAqQ29udm9sdmVUZXN0Ojpv
dXRwdXRfID0gTlVMTDsKLXVpbnQ4X3QgKkNvbnZvbHZlVGVzdDo6b3V0cHV0X3JlZl8gPSBOVUxM
OwordWludDhfdCAqQ29udm9sdmVUZXN0OjppbnB1dF8gPSBudWxscHRyOwordWludDhfdCAqQ29u
dm9sdmVUZXN0OjpvdXRwdXRfID0gbnVsbHB0cjsKK3VpbnQ4X3QgKkNvbnZvbHZlVGVzdDo6b3V0
cHV0X3JlZl8gPSBudWxscHRyOwogI2lmIENPTkZJR19WUDlfSElHSEJJVERFUFRICi11aW50MTZf
dCAqQ29udm9sdmVUZXN0OjppbnB1dDE2XyA9IE5VTEw7Ci11aW50MTZfdCAqQ29udm9sdmVUZXN0
OjpvdXRwdXQxNl8gPSBOVUxMOwotdWludDE2X3QgKkNvbnZvbHZlVGVzdDo6b3V0cHV0MTZfcmVm
XyA9IE5VTEw7Cit1aW50MTZfdCAqQ29udm9sdmVUZXN0OjppbnB1dDE2XyA9IG51bGxwdHI7Cit1
aW50MTZfdCAqQ29udm9sdmVUZXN0OjpvdXRwdXQxNl8gPSBudWxscHRyOwordWludDE2X3QgKkNv
bnZvbHZlVGVzdDo6b3V0cHV0MTZfcmVmXyA9IG51bGxwdHI7CiAjZW5kaWYKIAogVEVTVF9QKENv
bnZvbHZlVGVzdCwgR3VhcmRCbG9ja3MpIHsgQ2hlY2tHdWFyZEJsb2NrcygpOyB9CkBAIC01NjIs
NyArNTYyLDcgQEAgVEVTVF9QKENvbnZvbHZlVGVzdCwgRElTQUJMRURfQ29weV9TcGVlZCkgewog
CiAgIHZweF91c2VjX3RpbWVyX3N0YXJ0KCZ0aW1lcik7CiAgIGZvciAoaW50IG4gPSAwOyBuIDwg
a051bVRlc3RzOyArK24pIHsKLSAgICBVVVRfLT5jb3B5X1swXShpbiwga0lucHV0U3RyaWRlLCBv
dXQsIGtPdXRwdXRTdHJpZGUsIE5VTEwsIDAsIDAsIDAsIDAsCisgICAgVVVUXy0+Y29weV9bMF0o
aW4sIGtJbnB1dFN0cmlkZSwgb3V0LCBrT3V0cHV0U3RyaWRlLCBudWxscHRyLCAwLCAwLCAwLCAw
LAogICAgICAgICAgICAgICAgICAgIHdpZHRoLCBoZWlnaHQpOwogICB9CiAgIHZweF91c2VjX3Rp
bWVyX21hcmsoJnRpbWVyKTsKQEAgLTU4Miw3ICs1ODIsNyBAQCBURVNUX1AoQ29udm9sdmVUZXN0
LCBESVNBQkxFRF9BdmdfU3BlZWQpIHsKIAogICB2cHhfdXNlY190aW1lcl9zdGFydCgmdGltZXIp
OwogICBmb3IgKGludCBuID0gMDsgbiA8IGtOdW1UZXN0czsgKytuKSB7Ci0gICAgVVVUXy0+Y29w
eV9bMV0oaW4sIGtJbnB1dFN0cmlkZSwgb3V0LCBrT3V0cHV0U3RyaWRlLCBOVUxMLCAwLCAwLCAw
LCAwLAorICAgIFVVVF8tPmNvcHlfWzFdKGluLCBrSW5wdXRTdHJpZGUsIG91dCwga091dHB1dFN0
cmlkZSwgbnVsbHB0ciwgMCwgMCwgMCwgMCwKICAgICAgICAgICAgICAgICAgICB3aWR0aCwgaGVp
Z2h0KTsKICAgfQogICB2cHhfdXNlY190aW1lcl9tYXJrKCZ0aW1lcik7CkBAIC03ODAsNyArNzgw
LDggQEAgVEVTVF9QKENvbnZvbHZlVGVzdCwgQ29weSkgewogICB1aW50OF90ICpjb25zdCBvdXQg
PSBvdXRwdXQoKTsKIAogICBBU01fUkVHSVNURVJfU1RBVEVfQ0hFQ0soVVVUXy0+Y29weV9bMF0o
aW4sIGtJbnB1dFN0cmlkZSwgb3V0LCBrT3V0cHV0U3RyaWRlLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgMCwgMCwgMCwgMCwgV2lkdGgoKSwgSGVpZ2h0
KCkpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxwdHIs
IDAsIDAsIDAsIDAsIFdpZHRoKCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBIZWlnaHQoKSkpOwogCiAgIENoZWNrR3VhcmRCbG9ja3MoKTsKIApAQCAtNzk5LDcg
KzgwMCw4IEBAIFRFU1RfUChDb252b2x2ZVRlc3QsIEF2ZykgewogICBDb3B5T3V0cHV0VG9SZWYo
KTsKIAogICBBU01fUkVHSVNURVJfU1RBVEVfQ0hFQ0soVVVUXy0+Y29weV9bMV0oaW4sIGtJbnB1
dFN0cmlkZSwgb3V0LCBrT3V0cHV0U3RyaWRlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgTlVMTCwgMCwgMCwgMCwgMCwgV2lkdGgoKSwgSGVpZ2h0KCkpKTsKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxwdHIsIDAsIDAsIDAs
IDAsIFdpZHRoKCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBI
ZWlnaHQoKSkpOwogCiAgIENoZWNrR3VhcmRCbG9ja3MoKTsKIApAQCAtOTU1LDkgKzk1Nyw5IEBA
IFRFU1RfUChDb252b2x2ZVRlc3QsIE1hdGNoZXNSZWZlcmVuY2VTdWJwaXhlbEZpbHRlcikgewog
ICAgICAgICAgICAgICAgIFVVVF8tPmg4X1tpXShpbiwga0lucHV0U3RyaWRlLCBvdXQsIGtPdXRw
dXRTdHJpZGUsIGZpbHRlcnMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlcl94
LCAxNiwgMCwgMTYsIFdpZHRoKCksIEhlaWdodCgpKSk7CiAgICAgICAgICAgZWxzZQotICAgICAg
ICAgICAgQVNNX1JFR0lTVEVSX1NUQVRFX0NIRUNLKFVVVF8tPmNvcHlfW2ldKGluLCBrSW5wdXRT
dHJpZGUsIG91dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBrT3V0cHV0U3RyaWRlLCBOVUxMLCAwLCAwLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIDAsIFdpZHRoKCksIEhlaWdodCgpKSk7
CisgICAgICAgICAgICBBU01fUkVHSVNURVJfU1RBVEVfQ0hFQ0soCisgICAgICAgICAgICAgICAg
VVVUXy0+Y29weV9baV0oaW4sIGtJbnB1dFN0cmlkZSwgb3V0LCBrT3V0cHV0U3RyaWRlLCBudWxs
cHRyLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIDAsIDAsIFdpZHRoKCks
IEhlaWdodCgpKSk7CiAKICAgICAgICAgICBDaGVja0d1YXJkQmxvY2tzKCk7CiAKQEAgLTEwNTMs
OSArMTA1NSw5IEBAIFRFU1RfUChDb252b2x2ZVRlc3QsIEZpbHRlckV4dHJlbWVzKSB7CiAgICAg
ICAgICAgICAgICAgICBVVVRfLT5oOF9bMF0oaW4sIGtJbnB1dFN0cmlkZSwgb3V0LCBrT3V0cHV0
U3RyaWRlLCBmaWx0ZXJzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlcl94
LCAxNiwgMCwgMTYsIFdpZHRoKCksIEhlaWdodCgpKSk7CiAgICAgICAgICAgICBlbHNlCi0gICAg
ICAgICAgICAgIEFTTV9SRUdJU1RFUl9TVEFURV9DSEVDSyhVVVRfLT5jb3B5X1swXShpbiwga0lu
cHV0U3RyaWRlLCBvdXQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBrT3V0cHV0U3RyaWRlLCBOVUxMLCAwLCAwLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgMCwgV2lkdGgoKSwgSGVp
Z2h0KCkpKTsKKyAgICAgICAgICAgICAgQVNNX1JFR0lTVEVSX1NUQVRFX0NIRUNLKAorICAgICAg
ICAgICAgICAgICAgVVVUXy0+Y29weV9bMF0oaW4sIGtJbnB1dFN0cmlkZSwgb3V0LCBrT3V0cHV0
U3RyaWRlLCBudWxscHRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgMCwg
MCwgMCwgV2lkdGgoKSwgSGVpZ2h0KCkpKTsKIAogICAgICAgICAgICAgZm9yIChpbnQgeSA9IDA7
IHkgPCBIZWlnaHQoKTsgKyt5KSB7CiAgICAgICAgICAgICAgIGZvciAoaW50IHggPSAwOyB4IDwg
V2lkdGgoKTsgKyt4KQpAQCAtMTI3Niw3ICsxMjc4LDggQEAgY29uc3QgQ29udm9sdmVGdW5jdGlv
bnMgY29udm9sdmU4X2MoCiAgICAgdnB4X3NjYWxlZF8yZF9jLCB2cHhfc2NhbGVkX2F2Z18yZF9j
LCAwKTsKIGNvbnN0IENvbnZvbHZlUGFyYW0ga0FycmF5Q29udm9sdmVfY1tdID0geyBBTExfU0la
RVMoY29udm9sdmU4X2MpIH07CiAjZW5kaWYKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEMsIENv
bnZvbHZlVGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrQXJyYXlDb252b2x2ZV9jKSk7CitJTlNU
QU5USUFURV9URVNUX1NVSVRFX1AoQywgQ29udm9sdmVUZXN0LAorICAgICAgICAgICAgICAgICAg
ICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oa0FycmF5Q29udm9sdmVfYykpOwogCiAjaWYgSEFW
RV9TU0UyICYmIFZQWF9BUkNIX1g4Nl82NAogI2lmIENPTkZJR19WUDlfSElHSEJJVERFUFRICkBA
IC0xMzE3LDggKzEzMjAsOCBAQCBjb25zdCBDb252b2x2ZUZ1bmN0aW9ucyBjb252b2x2ZThfc3Nl
MigKIAogY29uc3QgQ29udm9sdmVQYXJhbSBrQXJyYXlDb252b2x2ZV9zc2UyW10gPSB7IEFMTF9T
SVpFUyhjb252b2x2ZThfc3NlMikgfTsKICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9ISUdIQklUREVQ
VEgKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKFNTRTIsIENvbnZvbHZlVGVzdCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oa0FycmF5Q29udm9sdmVfc3NlMikp
OworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFNTRTIsIENvbnZvbHZlVGVzdCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtBcnJheUNvbnZvbHZlX3NzZTIp
KTsKICNlbmRpZgogCiAjaWYgSEFWRV9TU1NFMwpAQCAtMTMzMCw4ICsxMzMzLDggQEAgY29uc3Qg
Q29udm9sdmVGdW5jdGlvbnMgY29udm9sdmU4X3Nzc2UzKAogICAgIHZweF9zY2FsZWRfYXZnX3Zl
cnRfYywgdnB4X3NjYWxlZF8yZF9zc3NlMywgdnB4X3NjYWxlZF9hdmdfMmRfYywgMCk7CiAKIGNv
bnN0IENvbnZvbHZlUGFyYW0ga0FycmF5Q29udm9sdmU4X3Nzc2UzW10gPSB7IEFMTF9TSVpFUyhj
b252b2x2ZThfc3NzZTMpIH07Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUChTU1NFMywgQ29udm9s
dmVUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrQXJy
YXlDb252b2x2ZThfc3NzZTMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChTU1NFMywgQ29u
dm9sdmVUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4o
a0FycmF5Q29udm9sdmU4X3Nzc2UzKSk7CiAjZW5kaWYKIAogI2lmIEhBVkVfQVZYMgpAQCAtMTM2
Miw4ICsxMzY1LDggQEAgY29uc3QgQ29udm9sdmVGdW5jdGlvbnMgY29udm9sdmUxMl9hdngyKAog
Y29uc3QgQ29udm9sdmVQYXJhbSBrQXJyYXlDb252b2x2ZThfYXZ4MltdID0geyBBTExfU0laRVMo
Y29udm9sdmU4X2F2eDIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBBTExfU0laRVMoY29udm9sdmUxMF9hdngyKSwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgQUxMX1NJWkVTKGNvbnZvbHZlMTJfYXZ4MikgfTsK
LUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEFWWDIsIENvbnZvbHZlVGVzdCwKLSAgICAgICAgICAg
ICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oa0FycmF5Q29udm9sdmU4X2F2eDIpKTsK
K0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChBVlgyLCBDb252b2x2ZVRlc3QsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrQXJyYXlDb252b2x2ZThfYXZ4Mikp
OwogI2Vsc2UgICAvLyAhQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKIGNvbnN0IENvbnZvbHZlRnVu
Y3Rpb25zIGNvbnZvbHZlOF9hdngyKAogICAgIHZweF9jb252b2x2ZV9jb3B5X2MsIHZweF9jb252
b2x2ZV9hdmdfYywgdnB4X2NvbnZvbHZlOF9ob3Jpel9hdngyLApAQCAtMTM3Miw4ICsxMzc1LDgg
QEAgY29uc3QgQ29udm9sdmVGdW5jdGlvbnMgY29udm9sdmU4X2F2eDIoCiAgICAgdnB4X3NjYWxl
ZF9ob3Jpel9jLCB2cHhfc2NhbGVkX2F2Z19ob3Jpel9jLCB2cHhfc2NhbGVkX3ZlcnRfYywKICAg
ICB2cHhfc2NhbGVkX2F2Z192ZXJ0X2MsIHZweF9zY2FsZWRfMmRfYywgdnB4X3NjYWxlZF9hdmdf
MmRfYywgMCk7CiBjb25zdCBDb252b2x2ZVBhcmFtIGtBcnJheUNvbnZvbHZlOF9hdngyW10gPSB7
IEFMTF9TSVpFUyhjb252b2x2ZThfYXZ4MikgfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEFW
WDIsIENvbnZvbHZlVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFs
dWVzSW4oa0FycmF5Q29udm9sdmU4X2F2eDIpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChB
VlgyLCBDb252b2x2ZVRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpW
YWx1ZXNJbihrQXJyYXlDb252b2x2ZThfYXZ4MikpOwogI2VuZGlmICAvLyBDT05GSUdfVlA5X0hJ
R0hCSVRERVBUSAogI2VuZGlmICAvLyBIQVZFX0FWWDIKIApAQCAtMTQxNiw4ICsxNDE5LDggQEAg
Y29uc3QgQ29udm9sdmVGdW5jdGlvbnMgY29udm9sdmU4X25lb24oCiAKIGNvbnN0IENvbnZvbHZl
UGFyYW0ga0FycmF5Q29udm9sdmVfbmVvbltdID0geyBBTExfU0laRVMoY29udm9sdmU4X25lb24p
IH07CiAjZW5kaWYgIC8vIENPTkZJR19WUDlfSElHSEJJVERFUFRICi1JTlNUQU5USUFURV9URVNU
X0NBU0VfUChORU9OLCBDb252b2x2ZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRl
c3Rpbmc6OlZhbHVlc0luKGtBcnJheUNvbnZvbHZlX25lb24pKTsKK0lOU1RBTlRJQVRFX1RFU1Rf
U1VJVEVfUChORU9OLCBDb252b2x2ZVRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXNJbihrQXJyYXlDb252b2x2ZV9uZW9uKSk7CiAjZW5kaWYgIC8vIEhBVkVf
TkVPTgogCiAjaWYgSEFWRV9EU1BSMgpAQCAtMTQyOSw4ICsxNDMyLDggQEAgY29uc3QgQ29udm9s
dmVGdW5jdGlvbnMgY29udm9sdmU4X2RzcHIyKAogICAgIHZweF9zY2FsZWRfYXZnX3ZlcnRfYywg
dnB4X3NjYWxlZF8yZF9jLCB2cHhfc2NhbGVkX2F2Z18yZF9jLCAwKTsKIAogY29uc3QgQ29udm9s
dmVQYXJhbSBrQXJyYXlDb252b2x2ZThfZHNwcjJbXSA9IHsgQUxMX1NJWkVTKGNvbnZvbHZlOF9k
c3ByMikgfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKERTUFIyLCBDb252b2x2ZVRlc3QsCi0g
ICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtBcnJheUNvbnZvbHZl
OF9kc3ByMikpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKERTUFIyLCBDb252b2x2ZVRlc3Qs
CisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrQXJyYXlDb252
b2x2ZThfZHNwcjIpKTsKICNlbmRpZiAgLy8gSEFWRV9EU1BSMgogCiAjaWYgSEFWRV9NU0EKQEAg
LTE0NDIsOCArMTQ0NSw4IEBAIGNvbnN0IENvbnZvbHZlRnVuY3Rpb25zIGNvbnZvbHZlOF9tc2Eo
CiAgICAgdnB4X3NjYWxlZF9hdmdfdmVydF9jLCB2cHhfc2NhbGVkXzJkX21zYSwgdnB4X3NjYWxl
ZF9hdmdfMmRfYywgMCk7CiAKIGNvbnN0IENvbnZvbHZlUGFyYW0ga0FycmF5Q29udm9sdmU4X21z
YVtdID0geyBBTExfU0laRVMoY29udm9sdmU4X21zYSkgfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FT
RV9QKE1TQSwgQ29udm9sdmVUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXNJbihrQXJyYXlDb252b2x2ZThfbXNhKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRF
X1AoTVNBLCBDb252b2x2ZVRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXNJbihrQXJyYXlDb252b2x2ZThfbXNhKSk7CiAjZW5kaWYgIC8vIEhBVkVfTVNBCiAK
ICNpZiBIQVZFX1ZTWApAQCAtMTQ1NCw4ICsxNDU3LDggQEAgY29uc3QgQ29udm9sdmVGdW5jdGlv
bnMgY29udm9sdmU4X3ZzeCgKICAgICB2cHhfc2NhbGVkX2hvcml6X2MsIHZweF9zY2FsZWRfYXZn
X2hvcml6X2MsIHZweF9zY2FsZWRfdmVydF9jLAogICAgIHZweF9zY2FsZWRfYXZnX3ZlcnRfYywg
dnB4X3NjYWxlZF8yZF9jLCB2cHhfc2NhbGVkX2F2Z18yZF9jLCAwKTsKIGNvbnN0IENvbnZvbHZl
UGFyYW0ga0FycmF5Q29udm9sdmVfdnN4W10gPSB7IEFMTF9TSVpFUyhjb252b2x2ZThfdnN4KSB9
OwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoVlNYLCBDb252b2x2ZVRlc3QsCi0gICAgICAgICAg
ICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtBcnJheUNvbnZvbHZlX3ZzeCkpOwor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFZTWCwgQ29udm9sdmVUZXN0LAorICAgICAgICAgICAg
ICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oa0FycmF5Q29udm9sdmVfdnN4KSk7CiAj
ZW5kaWYgIC8vIEhBVkVfVlNYCiAKICNpZiBIQVZFX01NSQpAQCAtMTQ2Niw3ICsxNDY5LDcgQEAg
Y29uc3QgQ29udm9sdmVGdW5jdGlvbnMgY29udm9sdmU4X21taSgKICAgICB2cHhfc2NhbGVkX2hv
cml6X2MsIHZweF9zY2FsZWRfYXZnX2hvcml6X2MsIHZweF9zY2FsZWRfdmVydF9jLAogICAgIHZw
eF9zY2FsZWRfYXZnX3ZlcnRfYywgdnB4X3NjYWxlZF8yZF9jLCB2cHhfc2NhbGVkX2F2Z18yZF9j
LCAwKTsKIGNvbnN0IENvbnZvbHZlUGFyYW0ga0FycmF5Q29udm9sdmVfbW1pW10gPSB7IEFMTF9T
SVpFUyhjb252b2x2ZThfbW1pKSB9OwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTU1JLCBDb252
b2x2ZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtB
cnJheUNvbnZvbHZlX21taSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE1NSSwgQ29udm9s
dmVUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oa0Fy
cmF5Q29udm9sdmVfbW1pKSk7CiAjZW5kaWYgIC8vIEhBVkVfTU1JCiB9ICAvLyBuYW1lc3BhY2UK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9jcHVfc3BlZWRfdGVzdC5jYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC9jcHVfc3BlZWRfdGVzdC5jYwppbmRleCAyZmI1YzEwZWFlMTNkZjdhZWE3ZWE2NmNk
N2VjMzY2MzVkMzhmODE0Li5hNzYyM2YwOWFjMTU1MDViYzBlMTJjNzhmYjMyNjg1NGY2MjI0MDc5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvY3B1X3NwZWVkX3Rlc3QuY2MKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L2NwdV9zcGVlZF90ZXN0LmNjCkBAIC0xNDgsOSArMTQ4LDkgQEAgVEVTVF9Q
KENwdVNwZWVkVGVzdCwgVGVzdExvd0JpdHJhdGUpIHsKICAgQVNTRVJUX05PX0ZBVEFMX0ZBSUxV
UkUoUnVuTG9vcCgmdmlkZW8pKTsKIH0KIAotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShDcHVT
cGVlZFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKDo6
bGlidnB4X3Rlc3Q6OmtUd29QYXNzR29vZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgOjpsaWJ2cHhfdGVzdDo6a09uZVBhc3NHb29kLAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6OmxpYnZweF90ZXN0OjprUmVhbFRpbWUp
LAotICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDAsIDEwKSk7CitW
UDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURShDcHVTcGVlZFRlc3QsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0OjprVHdvUGFzc0dvb2Qs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6OmxpYnZweF90
ZXN0OjprT25lUGFzc0dvb2QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA6OmxpYnZweF90ZXN0OjprUmVhbFRpbWUpLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgwLCAxMCkpOwogfSAgLy8gbmFtZXNwYWNlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3Rlc3QvY3FfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9jcV90ZXN0
LmNjCmluZGV4IDQ3NGI5ZDBmYTJlZWVjMjUzMmVkOWFmNjk5N2UwYWEwMDBhYTQ5NjYuLjI5MmFk
YjBkMDRmNGEwMWE1MDliYzVlMGJiNWNlNmI0NTQxZjQ3M2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC9jcV90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9jcV90ZXN0LmNjCkBAIC0y
OSw5ICsyOSw5IEBAIGNsYXNzIENRVGVzdCA6IHB1YmxpYyA6OmxpYnZweF90ZXN0OjpFbmNvZGVy
VGVzdCwKICAgLy8gbWFwcyB0aGUgY3FsZXZlbCB0byB0aGUgYml0cmF0ZSBwcm9kdWNlZC4KICAg
dHlwZWRlZiBzdGQ6Om1hcDxpbnQsIHVpbnQzMl90PiBCaXRyYXRlTWFwOwogCi0gIHN0YXRpYyB2
b2lkIFNldFVwVGVzdENhc2UoKSB7IGJpdHJhdGVzXy5jbGVhcigpOyB9CisgIHN0YXRpYyB2b2lk
IFNldFVwVGVzdFN1aXRlKCkgeyBiaXRyYXRlc18uY2xlYXIoKTsgfQogCi0gIHN0YXRpYyB2b2lk
IFRlYXJEb3duVGVzdENhc2UoKSB7CisgIHN0YXRpYyB2b2lkIFRlYXJEb3duVGVzdFN1aXRlKCkg
ewogICAgIEFTU0VSVF9UUlVFKCFIYXNGYWlsdXJlKCkpCiAgICAgICAgIDw8ICJza2lwcGluZyBi
aXRyYXRlIHZhbGlkYXRpb24gZHVlIHRvIGVhcmxpZXIgZmFpbHVyZS4iOwogICAgIHVpbnQzMl90
IHByZXZfYWN0dWFsX2JpdHJhdGUgPSBrQ1FUYXJnZXRCaXRyYXRlOwpAQCAtMTI2LDYgKzEyNiw2
IEBAIFRFU1RfUChDUVRlc3QsIExpbmVhclBTTlJJc0hpZ2hlckZvckNRTGV2ZWwpIHsKICAgRVhQ
RUNUX0dFKGNxX3BzbnJfbGluLCB2YnJfcHNucl9saW4pOwogfQogCi1WUDhfSU5TVEFOVElBVEVf
VEVTVF9DQVNFKENRVGVzdCwgOjp0ZXN0aW5nOjpSYW5nZShrQ1FMZXZlbE1pbiwga0NRTGV2ZWxN
YXgsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBr
Q1FMZXZlbFN0ZXApKTsKK1ZQOF9JTlNUQU5USUFURV9URVNUX1NVSVRFKENRVGVzdCwgOjp0ZXN0
aW5nOjpSYW5nZShrQ1FMZXZlbE1pbiwga0NRTGV2ZWxNYXgsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga0NRTGV2ZWxTdGVwKSk7CiB9ICAvLyBu
YW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9jeF9zZXRfcmVmLnNoIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L2N4X3NldF9yZWYuc2gKaW5kZXggMGE1OGRjMTg3YjU2ZTUxNzg5ZTZhYmEz
OTBkZTBkNTEzOWViYTVlOC4uMGEzZDUwY2UxZmIyYmRlNGU4ZTJjYjZmZWVlZWE5ZGE1NTcyMDAw
MCAxMDA3NTUKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2N4X3NldF9yZWYuc2gKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC90ZXN0L2N4X3NldF9yZWYuc2gKQEAgLTM4LDcgKzM4LDcgQEAgdnB4X3NldF9yZWYoKSB7
CiAKICAgZXZhbCAiJHtWUFhfVEVTVF9QUkVGSVh9IiAiJHtlbmNvZGVyfSIgIiR7WVVWX1JBV19J
TlBVVF9XSURUSH0iIFwKICAgICAgICIke1lVVl9SQVdfSU5QVVRfSEVJR0hUfSIgIiR7WVVWX1JB
V19JTlBVVH0iICIke291dHB1dF9maWxlfSIgXAotICAgICAgIiR7cmVmX2ZyYW1lX251bX0iICR7
ZGV2bnVsbH0KKyAgICAgICIke3JlZl9mcmFtZV9udW19IiAke2Rldm51bGx9IHx8IHJldHVybiAx
CiAKICAgWyAtZSAiJHtvdXRwdXRfZmlsZX0iIF0gfHwgcmV0dXJuIDEKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdGVzdC9kY3QxNngxNl90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2RjdDE2
eDE2X3Rlc3QuY2MKaW5kZXggOWNjZjJiODRmMTFmNDIzODI2YjIyZjYzZjkxYTQ5Yzg5NDM4MzFk
OC4uYzA0ODgwZWM5NWY0ZmQ5NzJhZjFjZjI2ZmEzZTk3NDE3YTFiMDViMCAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90ZXN0L2RjdDE2eDE2X3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2Rj
dDE2eDE2X3Rlc3QuY2MKQEAgLTcxNCw2ICs3MTQsNyBAQCBURVNUX1AoVHJhbnMxNngxNkhULCBR
dWFudENoZWNrKSB7CiAgIFJ1blF1YW50Q2hlY2soNDI5LCA3MjkpOwogfQogCisjaWYgSEFWRV9T
U0UyICYmIENPTkZJR19WUDlfSElHSEJJVERFUFRIICYmICFDT05GSUdfRU1VTEFURV9IQVJEV0FS
RQogY2xhc3MgSW52VHJhbnMxNngxNkRDVCA6IHB1YmxpYyBUcmFuczE2eDE2VGVzdEJhc2UsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgcHVibGljIDo6dGVzdGluZzo6VGVzdFdpdGhQYXJhbTxJ
ZGN0MTZ4MTZQYXJhbT4gewogIHB1YmxpYzoKQEAgLTczOSwyOSArNzQwLDMxIEBAIGNsYXNzIElu
dlRyYW5zMTZ4MTZEQ1QgOiBwdWJsaWMgVHJhbnMxNngxNlRlc3RCYXNlLAogICBJZGN0RnVuYyBp
bnZfdHhmbV87CiAgIGludCB0aHJlc2hfOwogfTsKK0dURVNUX0FMTE9XX1VOSU5TVEFOVElBVEVE
X1BBUkFNRVRFUklaRURfVEVTVChJbnZUcmFuczE2eDE2RENUKTsKIAogVEVTVF9QKEludlRyYW5z
MTZ4MTZEQ1QsIENvbXBhcmVSZWZlcmVuY2UpIHsKICAgQ29tcGFyZUludlJlZmVyZW5jZShyZWZf
dHhmbV8sIHRocmVzaF8pOwogfQorI2VuZGlmICAvLyBIQVZFX1NTRTIgJiYgQ09ORklHX1ZQOV9I
SUdIQklUREVQVEggJiYgIUNPTkZJR19FTVVMQVRFX0hBUkRXQVJFCiAKIHVzaW5nIHN0ZDo6bWFr
ZV90dXBsZTsKIAogI2lmIENPTkZJR19WUDlfSElHSEJJVERFUFRICi1JTlNUQU5USUFURV9URVNU
X0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBDLCBUcmFuczE2eDE2RENU
LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBtYWtlX3R1cGxlKCZ2cHhfaGlnaGJk
X2ZkY3QxNngxNl9jLCAmaWRjdDE2eDE2XzEwLCAwLCBWUFhfQklUU18xMCksCiAgICAgICAgIG1h
a2VfdHVwbGUoJnZweF9oaWdoYmRfZmRjdDE2eDE2X2MsICZpZGN0MTZ4MTZfMTIsIDAsIFZQWF9C
SVRTXzEyKSwKICAgICAgICAgbWFrZV90dXBsZSgmdnB4X2ZkY3QxNngxNl9jLCAmdnB4X2lkY3Qx
NngxNl8yNTZfYWRkX2MsIDAsIFZQWF9CSVRTXzgpKSk7CiAjZWxzZQotSU5TVEFOVElBVEVfVEVT
VF9DQVNFX1AoQywgVHJhbnMxNngxNkRDVCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVz
dGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZweF9mZGN0MTZ4MTZfYywKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9pZGN0MTZ4MTZfMjU2
X2FkZF9jLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAwLCBWUFhfQklUU184KSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKEMsIFRyYW5z
MTZ4MTZEQ1QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFr
ZV90dXBsZSgmdnB4X2ZkY3QxNngxNl9jLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9pZGN0MTZ4MTZfMjU2X2FkZF9jLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgVlBYX0JJ
VFNfOCkpKTsKICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKIAogI2lmIENPTkZJ
R19WUDlfSElHSEJJVERFUFRICi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRF
X1RFU1RfU1VJVEVfUCgKICAgICBDLCBUcmFuczE2eDE2SFQsCiAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXMoCiAgICAgICAgIG1ha2VfdHVwbGUoJnZwOV9oaWdoYmRfZmh0MTZ4MTZfYywgJmlodDE2eDE2
XzEwLCAwLCBWUFhfQklUU18xMCksCkBAIC03NzcsNyArNzgwLDcgQEAgSU5TVEFOVElBVEVfVEVT
VF9DQVNFX1AoCiAgICAgICAgIG1ha2VfdHVwbGUoJnZwOV9maHQxNngxNl9jLCAmdnA5X2lodDE2
eDE2XzI1Nl9hZGRfYywgMiwgVlBYX0JJVFNfOCksCiAgICAgICAgIG1ha2VfdHVwbGUoJnZwOV9m
aHQxNngxNl9jLCAmdnA5X2lodDE2eDE2XzI1Nl9hZGRfYywgMywgVlBYX0JJVFNfOCkpKTsKICNl
bHNlCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgK
ICAgICBDLCBUcmFuczE2eDE2SFQsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIG1h
a2VfdHVwbGUoJnZwOV9maHQxNngxNl9jLCAmdnA5X2lodDE2eDE2XzI1Nl9hZGRfYywgMCwgVlBY
X0JJVFNfOCksCkBAIC03ODcsMTggKzc5MCwxOCBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgK
ICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKIAogI2lmIEhBVkVfTkVPTiAmJiAh
Q09ORklHX0VNVUxBVEVfSEFSRFdBUkUKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QKAogICAgIE5FT04sIFRyYW5zMTZ4MTZEQ1QsCiAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3QxNngxNl9uZW9uLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgJnZweF9pZGN0MTZ4MTZfMjU2X2FkZF9uZW9uLCAwLCBWUFhf
QklUU184KSkpOwogI2VuZGlmICAvLyBIQVZFX05FT04gJiYgIUNPTkZJR19FTVVMQVRFX0hBUkRX
QVJFCiAKICNpZiBIQVZFX1NTRTIgJiYgIUNPTkZJR19WUDlfSElHSEJJVERFUFRIICYmICFDT05G
SUdfRU1VTEFURV9IQVJEV0FSRQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFU
RV9URVNUX1NVSVRFX1AoCiAgICAgU1NFMiwgVHJhbnMxNngxNkRDVCwKICAgICA6OnRlc3Rpbmc6
OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfZmRjdDE2eDE2X3NzZTIsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAmdnB4X2lkY3QxNngxNl8yNTZfYWRkX3NzZTIsIDAsIFZQWF9CSVRT
XzgpKSk7Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVf
UCgKICAgICBTU0UyLCBUcmFuczE2eDE2SFQsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90
dXBsZSgmdnA5X2ZodDE2eDE2X3NzZTIsICZ2cDlfaWh0MTZ4MTZfMjU2X2FkZF9zc2UyLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgVlBYX0JJVFNfOCksCkBAIC04MTEsNyAr
ODE0LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAjZW5kaWYgIC8vIEhBVkVfU1NFMiAm
JiAhQ09ORklHX1ZQOV9ISUdIQklUREVQVEggJiYgIUNPTkZJR19FTVVMQVRFX0hBUkRXQVJFCiAK
ICNpZiBIQVZFX1NTRTIgJiYgQ09ORklHX1ZQOV9ISUdIQklUREVQVEggJiYgIUNPTkZJR19FTVVM
QVRFX0hBUkRXQVJFCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1Rf
U1VJVEVfUCgKICAgICBTU0UyLCBUcmFuczE2eDE2RENULAogICAgIDo6dGVzdGluZzo6VmFsdWVz
KAogICAgICAgICBtYWtlX3R1cGxlKCZ2cHhfaGlnaGJkX2ZkY3QxNngxNl9zc2UyLCAmaWRjdDE2
eDE2XzEwLCAwLCBWUFhfQklUU18xMCksCkBAIC04MjIsNyArODI1LDcgQEAgSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoCiAgICAgICAgICAgICAgICAgICAgVlBYX0JJVFNfMTIpLAogICAgICAgICBt
YWtlX3R1cGxlKCZ2cHhfZmRjdDE2eDE2X3NzZTIsICZ2cHhfaWRjdDE2eDE2XzI1Nl9hZGRfYywg
MCwKICAgICAgICAgICAgICAgICAgICBWUFhfQklUU184KSkpOwotSU5TVEFOVElBVEVfVEVTVF9D
QVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgU1NFMiwgVHJhbnMxNngxNkhU
LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBtYWtlX3R1cGxlKCZ2cDlfZmh0MTZ4
MTZfc3NlMiwgJnZwOV9paHQxNngxNl8yNTZfYWRkX2MsIDAsIFZQWF9CSVRTXzgpLApAQCAtODMy
LDcgKzgzNSw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAgICAgICAg
IFZQWF9CSVRTXzgpKSk7CiAvLyBPcHRpbWl6YXRpb25zIHRha2UgZWZmZWN0IGF0IGEgdGhyZXNo
b2xkIG9mIDMxNTUsIHNvIHdlIHVzZSBhIHZhbHVlIGNsb3NlIHRvCiAvLyB0aGF0IHRvIHRlc3Qg
Ym90aCBicmFuY2hlcy4KLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVT
VF9TVUlURV9QKAogICAgIFNTRTIsIEludlRyYW5zMTZ4MTZEQ1QsCiAgICAgOjp0ZXN0aW5nOjpW
YWx1ZXMobWFrZV90dXBsZSgmaWRjdDE2eDE2XzEwX2FkZF8xMF9jLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgJmlkY3QxNngxNl8xMF9hZGRfMTBfc3NlMiwgMzE2NywgVlBYX0JJ
VFNfMTApLApAQCAtODQ1LDExICs4NDgsMTEgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAj
ZW5kaWYgIC8vIEhBVkVfU1NFMiAmJiBDT05GSUdfVlA5X0hJR0hCSVRERVBUSCAmJiAhQ09ORklH
X0VNVUxBVEVfSEFSRFdBUkUKIAogI2lmIEhBVkVfTVNBICYmICFDT05GSUdfVlA5X0hJR0hCSVRE
RVBUSCAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9Q
KE1TQSwgVHJhbnMxNngxNkRDVCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6
VmFsdWVzKG1ha2VfdHVwbGUoJnZweF9mZGN0MTZ4MTZfbXNhLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2lkY3QxNngxNl8yNTZfYWRk
X21zYSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgMCwgVlBYX0JJVFNfOCkpKTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElB
VEVfVEVTVF9TVUlURV9QKAorICAgIE1TQSwgVHJhbnMxNngxNkRDVCwKKyAgICA6OnRlc3Rpbmc6
OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfZmRjdDE2eDE2X21zYSwgJnZweF9pZGN0MTZ4MTZfMjU2
X2FkZF9tc2EsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCBWUFhfQklUU184
KSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE1TQSwgVHJhbnMxNngxNkhULAog
ICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBtYWtlX3R1cGxlKCZ2cDlfZmh0MTZ4MTZf
bXNhLCAmdnA5X2lodDE2eDE2XzI1Nl9hZGRfbXNhLCAwLCBWUFhfQklUU184KSwKQEAgLTg2MCw5
ICs4NjMsOSBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNlbmRpZiAgLy8gSEFWRV9NU0Eg
JiYgIUNPTkZJR19WUDlfSElHSEJJVERFUFRIICYmICFDT05GSUdfRU1VTEFURV9IQVJEV0FSRQog
CiAjaWYgSEFWRV9WU1ggJiYgIUNPTkZJR19WUDlfSElHSEJJVERFUFRIICYmICFDT05GSUdfRU1V
TEFURV9IQVJEV0FSRQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoVlNYLCBUcmFuczE2eDE2RENU
LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgm
dnB4X2ZkY3QxNngxNl9jLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAmdnB4X2lkY3QxNngxNl8yNTZfYWRkX3ZzeCwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgVlBYX0JJVFNfOCkpKTsK
K0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKKyAgICBWU1gsIFRyYW5zMTZ4MTZEQ1QsCisgICAg
Ojp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3QxNngxNl9jLCAmdnB4X2lkY3Qx
NngxNl8yNTZfYWRkX3ZzeCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIFZQ
WF9CSVRTXzgpKSk7CiAjZW5kaWYgIC8vIEhBVkVfVlNYICYmICFDT05GSUdfVlA5X0hJR0hCSVRE
RVBUSCAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKIH0gIC8vIG5hbWVzcGFjZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90ZXN0L2RjdDMyeDMyX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qv
ZGN0MzJ4MzJfdGVzdC5jYwppbmRleCA5NGQ2YjM3ZmE5MWFlOTliMTY0NTFlYjQ0ZTNlODZmNzIz
MWMyMWI5Li44Mzk4ZTE3ZTgxYTQ0OTE2MzJjMWU1NGE3OTdmOWZiMDNjZjEyZjk0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3Rlc3QvZGN0MzJ4MzJfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rl
c3QvZGN0MzJ4MzJfdGVzdC5jYwpAQCAtMzE3LDcgKzMxNyw3IEBAIFRFU1RfUChUcmFuczMyeDMy
VGVzdCwgSW52ZXJzZUFjY3VyYWN5KSB7CiB1c2luZyBzdGQ6Om1ha2VfdHVwbGU7CiAKICNpZiBD
T05GSUdfVlA5X0hJR0hCSVRERVBUSAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5U
SUFURV9URVNUX1NVSVRFX1AoCiAgICAgQywgVHJhbnMzMngzMlRlc3QsCiAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXMoCiAgICAgICAgIG1ha2VfdHVwbGUoJnZweF9oaWdoYmRfZmRjdDMyeDMyX2MsICZp
ZGN0MzJ4MzJfMTAsIDAsIFZQWF9CSVRTXzEwKSwKQEAgLTMyOCw3ICszMjgsNyBAQCBJTlNUQU5U
SUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgbWFrZV90dXBsZSgmdnB4X2ZkY3QzMngzMl9yZF9j
LCAmdnB4X2lkY3QzMngzMl8xMDI0X2FkZF9jLCAxLAogICAgICAgICAgICAgICAgICAgIFZQWF9C
SVRTXzgpKSk7CiAjZWxzZQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9U
RVNUX1NVSVRFX1AoCiAgICAgQywgVHJhbnMzMngzMlRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3QzMngzMl9jLCAmdnB4X2lkY3QzMngzMl8xMDI0X2FkZF9j
LCAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVlBYX0JJVFNfOCksCkBAIC0z
MzcsNyArMzM3LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAjZW5kaWYgIC8vIENPTkZJ
R19WUDlfSElHSEJJVERFUFRICiAKICNpZiBIQVZFX05FT04gJiYgIUNPTkZJR19FTVVMQVRFX0hB
UkRXQVJFCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVf
UCgKICAgICBORU9OLCBUcmFuczMyeDMyVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtl
X3R1cGxlKCZ2cHhfZmRjdDMyeDMyX25lb24sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAmdnB4X2lkY3QzMngzMl8xMDI0X2FkZF9uZW9uLCAwLCBWUFhfQklUU184KSwKQEAgLTM0
Niw3ICszNDYsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNlbmRpZiAgLy8gSEFWRV9O
RU9OICYmICFDT05GSUdfRU1VTEFURV9IQVJEV0FSRQogCiAjaWYgSEFWRV9TU0UyICYmICFDT05G
SUdfVlA5X0hJR0hCSVRERVBUSCAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKLUlOU1RBTlRJ
QVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTRTIsIFRy
YW5zMzJ4MzJUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZweF9mZGN0
MzJ4MzJfc3NlMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfaWRjdDMy
eDMyXzEwMjRfYWRkX3NzZTIsIDAsIFZQWF9CSVRTXzgpLApAQCAtMzU1LDcgKzM1NSw3IEBAIElO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX1NTRTIgJiYgIUNPTkZJR19W
UDlfSElHSEJJVERFUFRIICYmICFDT05GSUdfRU1VTEFURV9IQVJEV0FSRQogCiAjaWYgSEFWRV9T
U0UyICYmIENPTkZJR19WUDlfSElHSEJJVERFUFRIICYmICFDT05GSUdfRU1VTEFURV9IQVJEV0FS
RQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAg
ICAgU1NFMiwgVHJhbnMzMngzMlRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAg
IG1ha2VfdHVwbGUoJnZweF9oaWdoYmRfZmRjdDMyeDMyX3NzZTIsICZpZGN0MzJ4MzJfMTAsIDAs
IFZQWF9CSVRTXzEwKSwKQEAgLTM3MSw3ICszNzEsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0Vf
UCgKICNlbmRpZiAgLy8gSEFWRV9TU0UyICYmIENPTkZJR19WUDlfSElHSEJJVERFUFRIICYmICFD
T05GSUdfRU1VTEFURV9IQVJEV0FSRQogCiAjaWYgSEFWRV9BVlgyICYmICFDT05GSUdfVlA5X0hJ
R0hCSVRERVBUSCAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKLUlOU1RBTlRJQVRFX1RFU1Rf
Q0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEFWWDIsIFRyYW5zMzJ4MzJU
ZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZweF9mZGN0MzJ4MzJfYXZ4
MiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfaWRjdDMyeDMyXzEwMjRf
YWRkX3NzZTIsIDAsIFZQWF9CSVRTXzgpLApAQCAtMzgwLDcgKzM4MCw3IEBAIElOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX0FWWDIgJiYgIUNPTkZJR19WUDlfSElHSEJJ
VERFUFRIICYmICFDT05GSUdfRU1VTEFURV9IQVJEV0FSRQogCiAjaWYgSEFWRV9NU0EgJiYgIUNP
TkZJR19WUDlfSElHSEJJVERFUFRIICYmICFDT05GSUdfRU1VTEFURV9IQVJEV0FSRQotSU5TVEFO
VElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTVNBLCBU
cmFuczMyeDMyVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfZmRj
dDMyeDMyX21zYSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfaWRjdDMy
eDMyXzEwMjRfYWRkX21zYSwgMCwgVlBYX0JJVFNfOCksCkBAIC0zODksNyArMzg5LDcgQEAgSU5T
VEFOVElBVEVfVEVTVF9DQVNFX1AoCiAjZW5kaWYgIC8vIEhBVkVfTVNBICYmICFDT05GSUdfVlA5
X0hJR0hCSVRERVBUSCAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKIAogI2lmIEhBVkVfVlNY
ICYmICFDT05GSUdfVlA5X0hJR0hCSVRERVBUSCAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUK
LUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAg
IFZTWCwgVHJhbnMzMngzMlRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgm
dnB4X2ZkY3QzMngzMl9jLCAmdnB4X2lkY3QzMngzMl8xMDI0X2FkZF92c3gsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAwLCBWUFhfQklUU184KSwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdGVzdC9kY3RfcGFydGlhbF90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2RjdF9wYXJ0
aWFsX3Rlc3QuY2MKaW5kZXggYzg4OWU5MmQ3MDlhNmIwNzA1ZjdiMzk4N2RjMWVlOTdkMjExNmU2
NS4uOGQwZTNhOTEyZTk4NDI2N2FjMmM3ODE1NDFmOWYwNDZkYTRkZDE2YyAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90ZXN0L2RjdF9wYXJ0aWFsX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0
L2RjdF9wYXJ0aWFsX3Rlc3QuY2MKQEAgLTM5LDcgKzM5LDcgQEAgdHlwZWRlZiB0dXBsZTxQYXJ0
aWFsRmRjdEZ1bmMsIGludCAvKiBzaXplICovLCB2cHhfYml0X2RlcHRoX3Q+CiAKIHRyYW5fbG93
X3QgcGFydGlhbF9mZGN0X3JlZihjb25zdCBCdWZmZXI8aW50MTZfdD4gJmluLCBpbnQgc2l6ZSkg
ewogICBpbnQ2NF90IHN1bSA9IDA7Ci0gIGlmIChpbi5Ub3BMZWZ0UGl4ZWwoKSAhPSBOVUxMKSB7
CisgIGlmIChpbi5Ub3BMZWZ0UGl4ZWwoKSAhPSBudWxscHRyKSB7CiAgICAgZm9yIChpbnQgeSA9
IDA7IHkgPCBzaXplOyArK3kpIHsKICAgICAgIGZvciAoaW50IHggPSAwOyB4IDwgc2l6ZTsgKyt4
KSB7CiAgICAgICAgIHN1bSArPSBpbi5Ub3BMZWZ0UGl4ZWwoKVt5ICogaW4uc3RyaWRlKCkgKyB4
XTsKQEAgLTgxLDcgKzgxLDcgQEAgY2xhc3MgUGFydGlhbEZkY3RUZXN0IDogcHVibGljIDo6dGVz
dGluZzo6VGVzdFdpdGhQYXJhbTxQYXJ0aWFsRmRjdFBhcmFtPiB7CiAgICAgQnVmZmVyPHRyYW5f
bG93X3Q+IG91dHB1dF9ibG9jayA9IEJ1ZmZlcjx0cmFuX2xvd190PihzaXplXywgc2l6ZV8sIDAs
IDE2KTsKICAgICBBU1NFUlRfVFJVRShvdXRwdXRfYmxvY2suSW5pdCgpKTsKIAotICAgIGlmIChv
dXRwdXRfYmxvY2suVG9wTGVmdFBpeGVsKCkgIT0gTlVMTCkgeworICAgIGlmIChvdXRwdXRfYmxv
Y2suVG9wTGVmdFBpeGVsKCkgIT0gbnVsbHB0cikgewogICAgICAgZm9yIChpbnQgaSA9IDA7IGkg
PCAxMDA7ICsraSkgewogICAgICAgICBpZiAoaSA9PSAwKSB7CiAgICAgICAgICAgaW5wdXRfYmxv
Y2suU2V0KG1heHZhbHVlKTsKQEAgLTExMSw3ICsxMTEsNyBAQCBjbGFzcyBQYXJ0aWFsRmRjdFRl
c3QgOiBwdWJsaWMgOjp0ZXN0aW5nOjpUZXN0V2l0aFBhcmFtPFBhcnRpYWxGZGN0UGFyYW0+IHsK
IFRFU1RfUChQYXJ0aWFsRmRjdFRlc3QsIFBhcnRpYWxGZGN0VGVzdCkgeyBSdW5UZXN0KCk7IH0K
IAogI2lmIENPTkZJR19WUDlfSElHSEJJVERFUFRICi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgK
K0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBDLCBQYXJ0aWFsRmRjdFRlc3QsCiAgICAg
Ojp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2hpZ2hiZF9mZGN0MzJ4MzJfMV9jLCAz
MiwgVlBYX0JJVFNfMTIpLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoJnZweF9o
aWdoYmRfZmRjdDMyeDMyXzFfYywgMzIsIFZQWF9CSVRTXzEwKSwKQEAgLTEyNCw3ICsxMjQsNyBA
QCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1
cGxlKCZ2cHhfZmRjdDh4OF8xX2MsIDgsIFZQWF9CSVRTXzgpLAogICAgICAgICAgICAgICAgICAg
ICAgIG1ha2VfdHVwbGUoJnZweF9mZGN0NHg0XzFfYywgNCwgVlBYX0JJVFNfOCkpKTsKICNlbHNl
Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAg
ICBDLCBQYXJ0aWFsRmRjdFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgm
dnB4X2ZkY3QzMngzMl8xX2MsIDMyLCBWUFhfQklUU184KSwKICAgICAgICAgICAgICAgICAgICAg
ICBtYWtlX3R1cGxlKCZ2cHhfZmRjdDE2eDE2XzFfYywgMTYsIFZQWF9CSVRTXzgpLApAQCAtMTMz
LDcgKzEzMyw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBDT05GSUdf
VlA5X0hJR0hCSVRERVBUSAogCiAjaWYgSEFWRV9TU0UyCi1JTlNUQU5USUFURV9URVNUX0NBU0Vf
UCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBTU0UyLCBQYXJ0aWFsRmRjdFRlc3Qs
CiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3QzMngzMl8xX3NzZTIs
IDMyLCBWUFhfQklUU184KSwKICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKCZ2cHhf
ZmRjdDE2eDE2XzFfc3NlMiwgMTYsIFZQWF9CSVRTXzgpLApAQCAtMTQzLDcgKzE0Myw3IEBAIElO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogCiAjaWYgSEFWRV9ORU9OCiAjaWYgQ09ORklHX1ZQOV9I
SUdIQklUREVQVEgKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9T
VUlURV9QKAogICAgIE5FT04sIFBhcnRpYWxGZGN0VGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVl
cyhtYWtlX3R1cGxlKCZ2cHhfZmRjdDMyeDMyXzFfbmVvbiwgMzIsIFZQWF9CSVRTXzgpLAogICAg
ICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoJnZweF9mZGN0MTZ4MTZfMV9uZW9uLCAxNiwg
VlBYX0JJVFNfOCksCkBAIC0xNTIsNyArMTUyLDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1Ao
CiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSgmdnB4X2ZkY3Q4eDhfMV9uZW9uLCA4
LCBWUFhfQklUU184KSwKICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKCZ2cHhfZmRj
dDR4NF8xX25lb24sIDQsIFZQWF9CSVRTXzgpKSk7CiAjZWxzZQotSU5TVEFOVElBVEVfVEVTVF9D
QVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTkVPTiwgUGFydGlhbEZkY3RU
ZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZweF9mZGN0MzJ4MzJfMV9u
ZW9uLCAzMiwgVlBYX0JJVFNfOCksCiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSgm
dnB4X2ZkY3QxNngxNl8xX25lb24sIDE2LCBWUFhfQklUU184KSwKQEAgLTE2MywxMSArMTYzLDEx
IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogCiAjaWYgSEFWRV9NU0EKICNpZiBDT05GSUdf
VlA5X0hJR0hCSVRERVBUSAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTVNBLCBQYXJ0aWFsRmRj
dFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1
cGxlKCZ2cHhfZmRjdDh4OF8xX21zYSwgOCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgVlBYX0JJVFNfOCkpKTsKK0lOU1RBTlRJQVRFX1RFU1Rf
U1VJVEVfUChNU0EsIFBhcnRpYWxGZGN0VGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6
OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfZmRjdDh4OF8xX21zYSwgOCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQWF9CSVRT
XzgpKSk7CiAjZWxzZSAgIC8vICFDT05GSUdfVlA5X0hJR0hCSVRERVBUSAotSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTVNBLCBQYXJ0aWFs
RmRjdFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3QzMngz
Ml8xX21zYSwgMzIsIFZQWF9CSVRTXzgpLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVw
bGUoJnZweF9mZGN0MTZ4MTZfMV9tc2EsIDE2LCBWUFhfQklUU184KSwKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC9kY3RfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9kY3RfdGVzdC5jYwpp
bmRleCBlZDEyZjc3NTY5MTcyMjBhYmU3NTFmNTFhYzg1MzRjNDA3M2ZmMTRjLi45NTQxODY5NTM1
MTA1N2U0NDBjZmNmOWJkMDlhNzg1Nzg4YTUyNmRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rl
c3QvZGN0X3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2RjdF90ZXN0LmNjCkBAIC0xNjAs
MTcgKzE2MCwxNyBAQCBjbGFzcyBUcmFuc1Rlc3RCYXNlIDogcHVibGljIDo6dGVzdGluZzo6VGVz
dFdpdGhQYXJhbTxEY3RQYXJhbT4gewogCiAgICAgc3JjXyA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWlu
dDhfdCAqPigKICAgICAgICAgdnB4X21lbWFsaWduKDE2LCBwaXhlbF9zaXplXyAqIGJsb2NrX3Np
emVfKSk7Ci0gICAgQVNTRVJUX1RSVUUoc3JjXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoc3Jj
XywgbnVsbHB0cik7CiAgICAgZHN0XyA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDhfdCAqPigKICAg
ICAgICAgdnB4X21lbWFsaWduKDE2LCBwaXhlbF9zaXplXyAqIGJsb2NrX3NpemVfKSk7Ci0gICAg
QVNTRVJUX1RSVUUoZHN0XyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoZHN0XywgbnVsbHB0cik7
CiAgIH0KIAogICB2aXJ0dWFsIHZvaWQgVGVhckRvd24oKSB7CiAgICAgdnB4X2ZyZWUoc3JjXyk7
Ci0gICAgc3JjXyA9IE5VTEw7CisgICAgc3JjXyA9IG51bGxwdHI7CiAgICAgdnB4X2ZyZWUoZHN0
Xyk7Ci0gICAgZHN0XyA9IE5VTEw7CisgICAgZHN0XyA9IG51bGxwdHI7CiAgICAgbGlidnB4X3Rl
c3Q6OkNsZWFyU3lzdGVtU3RhdGUoKTsKICAgfQogCkBAIC0yMTEsNyArMjExLDcgQEAgY2xhc3Mg
VHJhbnNUZXN0QmFzZSA6IHB1YmxpYyA6OnRlc3Rpbmc6OlRlc3RXaXRoUGFyYW08RGN0UGFyYW0+
IHsKICAgICBCdWZmZXI8aW50MTZfdD4gdGVzdF9pbnB1dF9ibG9jayA9CiAgICAgICAgIEJ1ZmZl
cjxpbnQxNl90PihzaXplXywgc2l6ZV8sIDgsIHNpemVfID09IDQgPyAwIDogMTYpOwogICAgIEFT
U0VSVF9UUlVFKHRlc3RfaW5wdXRfYmxvY2suSW5pdCgpKTsKLSAgICBBU1NFUlRfVFJVRSh0ZXN0
X2lucHV0X2Jsb2NrLlRvcExlZnRQaXhlbCgpICE9IE5VTEwpOworICAgIEFTU0VSVF9ORSh0ZXN0
X2lucHV0X2Jsb2NrLlRvcExlZnRQaXhlbCgpLCBudWxscHRyKTsKICAgICBCdWZmZXI8dHJhbl9s
b3dfdD4gdGVzdF90ZW1wX2Jsb2NrID0KICAgICAgICAgQnVmZmVyPHRyYW5fbG93X3Q+KHNpemVf
LCBzaXplXywgMCwgMTYpOwogICAgIEFTU0VSVF9UUlVFKHRlc3RfdGVtcF9ibG9jay5Jbml0KCkp
OwpAQCAtMzE2LDcgKzMxNiw3IEBAIGNsYXNzIFRyYW5zVGVzdEJhc2UgOiBwdWJsaWMgOjp0ZXN0
aW5nOjpUZXN0V2l0aFBhcmFtPERjdFBhcmFtPiB7CiAgICAgICB9IGVsc2UgaWYgKGkgPT0gMSkg
ewogICAgICAgICBpbnB1dF9leHRyZW1lX2Jsb2NrLlNldCgtbWF4X3BpeGVsX3ZhbHVlXyk7CiAg
ICAgICB9IGVsc2UgewotICAgICAgICBBU1NFUlRfVFJVRShpbnB1dF9leHRyZW1lX2Jsb2NrLlRv
cExlZnRQaXhlbCgpICE9IE5VTEwpOworICAgICAgICBBU1NFUlRfTkUoaW5wdXRfZXh0cmVtZV9i
bG9jay5Ub3BMZWZ0UGl4ZWwoKSwgbnVsbHB0cik7CiAgICAgICAgIGZvciAoaW50IGggPSAwOyBo
IDwgc2l6ZV87ICsraCkgewogICAgICAgICAgIGZvciAoaW50IHcgPSAwOyB3IDwgc2l6ZV87ICsr
dykgewogICAgICAgICAgICAgaW5wdXRfZXh0cmVtZV9ibG9jawpAQCAtMzMxLDcgKzMzMSw3IEBA
IGNsYXNzIFRyYW5zVGVzdEJhc2UgOiBwdWJsaWMgOjp0ZXN0aW5nOjpUZXN0V2l0aFBhcmFtPERj
dFBhcmFtPiB7CiAKICAgICAgIC8vIFRoZSBtaW5pbXVtIHF1YW50IHZhbHVlIGlzIDQuCiAgICAg
ICBFWFBFQ1RfVFJVRShvdXRwdXRfYmxvY2suQ2hlY2tWYWx1ZXMob3V0cHV0X3JlZl9ibG9jaykp
OwotICAgICAgQVNTRVJUX1RSVUUob3V0cHV0X2Jsb2NrLlRvcExlZnRQaXhlbCgpICE9IE5VTEwp
OworICAgICAgQVNTRVJUX05FKG91dHB1dF9ibG9jay5Ub3BMZWZ0UGl4ZWwoKSwgbnVsbHB0cik7
CiAgICAgICBmb3IgKGludCBoID0gMDsgaCA8IHNpemVfOyArK2gpIHsKICAgICAgICAgZm9yIChp
bnQgdyA9IDA7IHcgPCBzaXplXzsgKyt3KSB7CiAgICAgICAgICAgRVhQRUNUX0dFKApAQCAtMzY5
LDcgKzM2OSw3IEBAIGNsYXNzIFRyYW5zVGVzdEJhc2UgOiBwdWJsaWMgOjp0ZXN0aW5nOjpUZXN0
V2l0aFBhcmFtPERjdFBhcmFtPiB7CiAKICAgICBmb3IgKGludCBpID0gMDsgaSA8IGNvdW50X3Rl
c3RfYmxvY2s7ICsraSkgewogICAgICAgSW5pdE1lbSgpOwotICAgICAgQVNTRVJUX1RSVUUoaW4u
VG9wTGVmdFBpeGVsKCkgIT0gTlVMTCk7CisgICAgICBBU1NFUlRfTkUoaW4uVG9wTGVmdFBpeGVs
KCksIG51bGxwdHIpOwogICAgICAgLy8gSW5pdGlhbGl6ZSBhIHRlc3QgYmxvY2sgd2l0aCBpbnB1
dCByYW5nZSBbLW1heF9waXhlbF92YWx1ZV8sCiAgICAgICAvLyBtYXhfcGl4ZWxfdmFsdWVfXS4K
ICAgICAgIGZvciAoaW50IGggPSAwOyBoIDwgc2l6ZV87ICsraCkgewpAQCAtNDczLDcgKzQ3Myw3
IEBAIHN0YXRpYyBjb25zdCBGdW5jSW5mbyBkY3RfY19mdW5jX2luZm9bXSA9IHsKICAgICAxIH0K
IH07CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9Q
KAogICAgIEMsIFRyYW5zRENULAogICAgIDo6dGVzdGluZzo6Q29tYmluZSgKICAgICAgICAgOjp0
ZXN0aW5nOjpSYW5nZSgwLCBzdGF0aWNfY2FzdDxpbnQ+KHNpemVvZihkY3RfY19mdW5jX2luZm8p
IC8KQEAgLTUwNSw3ICs1MDUsNyBAQCBzdGF0aWMgY29uc3QgRnVuY0luZm8gZGN0X3NzZTJfZnVu
Y19pbmZvW10gPSB7CiAgICAgJmlkY3Rfd3JhcHBlcjx2cHhfaWRjdDMyeDMyXzEwMjRfYWRkX3Nz
ZTI+LCAzMiwgMSB9CiB9OwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRF
X1RFU1RfU1VJVEVfUCgKICAgICBTU0UyLCBUcmFuc0RDVCwKICAgICA6OnRlc3Rpbmc6OkNvbWJp
bmUoCiAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoMCwgc3RhdGljX2Nhc3Q8aW50PihzaXplb2Yo
ZGN0X3NzZTJfZnVuY19pbmZvKSAvCkBAIC01MjEsOSArNTIxLDkgQEAgc3RhdGljIGNvbnN0IEZ1
bmNJbmZvIGRjdF9zc3NlM19mdW5jX2luZm8gPSB7CiB9OwogCiAvLyBUT0RPKGpvaGFubmtvZW5p
Zyk6IGhpZ2ggYml0IGRlcHRoIGZkY3Q4eDguCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChTU1NF
MywgVHJhbnNEQ1QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyht
YWtlX3R1cGxlKDAsICZkY3Rfc3NzZTNfZnVuY19pbmZvLCAwLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWUFhfQklUU184KSkpOworSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QKFNTU0UzLCBUcmFuc0RDVCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDAsICZkY3Rfc3NzZTNfZnVuY19pbmZv
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
MCwgVlBYX0JJVFNfOCkpKTsKICNlbmRpZiAgLy8gSEFWRV9TU1NFMyAmJiAhQ09ORklHX1ZQOV9I
SUdIQklUREVQVEggJiYgVlBYX0FSQ0hfWDg2XzY0CiAKICNpZiBIQVZFX0FWWDIgJiYgIUNPTkZJ
R19WUDlfSElHSEJJVERFUFRICkBAIC01MzMsOSArNTMzLDkgQEAgc3RhdGljIGNvbnN0IEZ1bmNJ
bmZvIGRjdF9hdngyX2Z1bmNfaW5mbyA9IHsKIH07CiAKIC8vIFRPRE8oam9oYW5ua29lbmlnKTog
aGlnaCBiaXQgZGVwdGggZmRjdDMyeDMyLgotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoQVZYMiwg
VHJhbnNEQ1QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtl
X3R1cGxlKDAsICZkY3RfYXZ4Ml9mdW5jX2luZm8sIDAsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQWF9CSVRTXzgpKSk7CitJTlNUQU5USUFU
RV9URVNUX1NVSVRFX1AoQVZYMiwgVHJhbnNEQ1QsCisgICAgICAgICAgICAgICAgICAgICAgICAg
Ojp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgwLCAmZGN0X2F2eDJfZnVuY19pbmZvLCAwLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVlBY
X0JJVFNfOCkpKTsKICNlbmRpZiAgLy8gSEFWRV9BVlgyICYmICFDT05GSUdfVlA5X0hJR0hCSVRE
RVBUSAogCiAjaWYgSEFWRV9ORU9OCkBAIC01NTAsNyArNTUwLDcgQEAgc3RhdGljIGNvbnN0IEZ1
bmNJbmZvIGRjdF9uZW9uX2Z1bmNfaW5mb1s0XSA9IHsKICAgICAmaWRjdF93cmFwcGVyPHZweF9p
ZGN0MzJ4MzJfMTAyNF9hZGRfbmVvbj4sIDMyLCAxIH0KIH07CiAKLUlOU1RBTlRJQVRFX1RFU1Rf
Q0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE5FT04sIFRyYW5zRENULAog
ICAgIDo6dGVzdGluZzo6Q29tYmluZSg6OnRlc3Rpbmc6OlJhbmdlKDAsIDQpLAogICAgICAgICAg
ICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhkY3RfbmVvbl9mdW5jX2luZm8pLApAQCAt
NTY5LDExICs1NjksMTEgQEAgc3RhdGljIGNvbnN0IEZ1bmNJbmZvIGRjdF9tc2FfZnVuY19pbmZv
WzRdID0gewogICAgIDMyLCAxIH0KIH07CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE1TQSwg
VHJhbnNEQ1QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OkNvbWJpbmUoOjp0
ZXN0aW5nOjpSYW5nZSgwLCA0KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhkY3RfbXNhX2Z1bmNfaW5mbyksCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoMCksCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXMoVlBYX0JJVFNfOCkpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKKyAgICBNU0EsIFRy
YW5zRENULAorICAgIDo6dGVzdGluZzo6Q29tYmluZSg6OnRlc3Rpbmc6OlJhbmdlKDAsIDQpLAor
ICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhkY3RfbXNhX2Z1bmNfaW5m
byksCisgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKDApLCA6OnRlc3Rp
bmc6OlZhbHVlcyhWUFhfQklUU184KSkpOwogI2VuZGlmICAvLyBIQVZFX01TQSAmJiAhQ09ORklH
X1ZQOV9ISUdIQklUREVQVEgKIAogI2lmIEhBVkVfVlNYICYmICFDT05GSUdfVlA5X0hJR0hCSVRE
RVBUSApAQCAtNTgxLDkgKzU4MSw5IEBAIHN0YXRpYyBjb25zdCBGdW5jSW5mbyBkY3RfdnN4X2Z1
bmNfaW5mbyA9IHsKICAgJmZkY3Rfd3JhcHBlcjx2cHhfZmRjdDR4NF9jPiwgJmlkY3Rfd3JhcHBl
cjx2cHhfaWRjdDR4NF8xNl9hZGRfdnN4PiwgNCwgMQogfTsKIAotSU5TVEFOVElBVEVfVEVTVF9D
QVNFX1AoVlNYLCBUcmFuc0RDVCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6
VmFsdWVzKG1ha2VfdHVwbGUoMCwgJmRjdF92c3hfZnVuY19pbmZvLCAwLAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWUFhfQklUU184KSkpOwor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFZTWCwgVHJhbnNEQ1QsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgwLCAmZGN0X3ZzeF9mdW5jX2lu
Zm8sIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBWUFhfQklUU184KSkpOwogI2VuZGlmICAvLyBIQVZFX1ZTWCAmJiAhQ09ORklHX1ZQOV9I
SUdIQklUREVQVEggJiYKIAogI2VuZGlmICAvLyAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKQEAg
LTYxOSw3ICs2MTksNyBAQCBzdGF0aWMgY29uc3QgRnVuY0luZm8gaHRfY19mdW5jX2luZm9bXSA9
IHsKICAgeyAmdnA5X2ZodDE2eDE2X2MsICZpaHRfd3JhcHBlcjx2cDlfaWh0MTZ4MTZfMjU2X2Fk
ZF9jPiwgMTYsIDEgfQogfTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFU
RV9URVNUX1NVSVRFX1AoCiAgICAgQywgVHJhbnNIVCwKICAgICA6OnRlc3Rpbmc6OkNvbWJpbmUo
CiAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoMCwgc3RhdGljX2Nhc3Q8aW50PihzaXplb2YoaHRf
Y19mdW5jX2luZm8pIC8KQEAgLTY0NSw3ICs2NDUsNyBAQCBzdGF0aWMgY29uc3QgRnVuY0luZm8g
aHRfbmVvbl9mdW5jX2luZm9bXSA9IHsKICAgeyAmdnA5X2ZodDE2eDE2X2MsICZpaHRfd3JhcHBl
cjx2cDlfaWh0MTZ4MTZfMjU2X2FkZF9uZW9uPiwgMTYsIDEgfQogfTsKIAotSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTkVPTiwgVHJhbnNI
VCwKICAgICA6OnRlc3Rpbmc6OkNvbWJpbmUoCiAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoMCwg
c3RhdGljX2Nhc3Q8aW50PihzaXplb2YoaHRfbmVvbl9mdW5jX2luZm8pIC8KQEAgLTY2MiwxMSAr
NjYyLDExIEBAIHN0YXRpYyBjb25zdCBGdW5jSW5mbyBodF9zc2UyX2Z1bmNfaW5mb1szXSA9IHsK
ICAgeyAmdnA5X2ZodDE2eDE2X3NzZTIsICZpaHRfd3JhcHBlcjx2cDlfaWh0MTZ4MTZfMjU2X2Fk
ZF9zc2UyPiwgMTYsIDEgfQogfTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoU1NFMiwgVHJh
bnNIVCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6Q29tYmluZSg6OnRlc3Rp
bmc6OlJhbmdlKDAsIDMpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDo6dGVzdGluZzo6VmFsdWVzKGh0X3NzZTJfZnVuY19pbmZvKSwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDAsIDQpLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVz
KFZQWF9CSVRTXzgpKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCisgICAgU1NFMiwgVHJh
bnNIVCwKKyAgICA6OnRlc3Rpbmc6OkNvbWJpbmUoOjp0ZXN0aW5nOjpSYW5nZSgwLCAzKSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoaHRfc3NlMl9mdW5jX2luZm8p
LAorICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDAsIDQpLCA6OnRlc3Rp
bmc6OlZhbHVlcyhWUFhfQklUU184KSkpOwogI2VuZGlmICAvLyBIQVZFX1NTRTIKIAogI2lmIEhB
VkVfU1NFNF8xICYmIENPTkZJR19WUDlfSElHSEJJVERFUFRICkBAIC02NzksNyArNjc5LDcgQEAg
c3RhdGljIGNvbnN0IEZ1bmNJbmZvIGh0X3NzZTRfMV9mdW5jX2luZm9bM10gPSB7CiAgICAgJmhp
Z2hiZF9paHRfd3JhcHBlcjx2cDlfaGlnaGJkX2lodDE2eDE2XzI1Nl9hZGRfc3NlNF8xPiwgMTYs
IDIgfQogfTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NV
SVRFX1AoCiAgICAgU1NFNF8xLCBUcmFuc0hULAogICAgIDo6dGVzdGluZzo6Q29tYmluZSg6OnRl
c3Rpbmc6OlJhbmdlKDAsIDMpLAogICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZh
bHVlcyhodF9zc2U0XzFfZnVuY19pbmZvKSwKQEAgLTY5NSwxMSArNjk1LDExIEBAIHN0YXRpYyBj
b25zdCBGdW5jSW5mbyBodF92c3hfZnVuY19pbmZvWzNdID0gewogICB7ICZ2cDlfZmh0MTZ4MTZf
YywgJmlodF93cmFwcGVyPHZwOV9paHQxNngxNl8yNTZfYWRkX3ZzeD4sIDE2LCAxIH0KIH07CiAK
LUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKFZTWCwgVHJhbnNIVCwKLSAgICAgICAgICAgICAgICAg
ICAgICAgIDo6dGVzdGluZzo6Q29tYmluZSg6OnRlc3Rpbmc6OlJhbmdlKDAsIDMpLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKGh0
X3ZzeF9mdW5jX2luZm8pLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDo6dGVzdGluZzo6UmFuZ2UoMCwgNCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoVlBYX0JJVFNfOCkpKTsKK0lOU1RBTlRJ
QVRFX1RFU1RfU1VJVEVfUChWU1gsIFRyYW5zSFQsCisgICAgICAgICAgICAgICAgICAgICAgICAg
Ojp0ZXN0aW5nOjpDb21iaW5lKDo6dGVzdGluZzo6UmFuZ2UoMCwgMyksCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKGh0X3ZzeF9m
dW5jX2luZm8pLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6
OnRlc3Rpbmc6OlJhbmdlKDAsIDQpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhWUFhfQklUU184KSkpOwogI2VuZGlmICAvLyBI
QVZFX1ZTWAogI2VuZGlmICAvLyAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKIApAQCAtNzI2LDcg
KzcyNiw3IEBAIHN0YXRpYyBjb25zdCBGdW5jSW5mbyB3aHRfY19mdW5jX2luZm9bXSA9IHsKICAg
eyAmZmRjdF93cmFwcGVyPHZwOV9md2h0NHg0X2M+LCAmaWRjdF93cmFwcGVyPHZweF9pd2h0NHg0
XzE2X2FkZF9jPiwgNCwgMSB9CiB9OwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RB
TlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBDLCBUcmFuc1dIVCwKICAgICA6OnRlc3Rpbmc6OkNv
bWJpbmUoCiAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoMCwgc3RhdGljX2Nhc3Q8aW50PihzaXpl
b2Yod2h0X2NfZnVuY19pbmZvKSAvCkBAIC03MzksOSArNzM5LDkgQEAgc3RhdGljIGNvbnN0IEZ1
bmNJbmZvIHdodF9zc2UyX2Z1bmNfaW5mbyA9IHsKICAgJmZkY3Rfd3JhcHBlcjx2cDlfZndodDR4
NF9zc2UyPiwgJmlkY3Rfd3JhcHBlcjx2cHhfaXdodDR4NF8xNl9hZGRfc3NlMj4sIDQsIDEKIH07
CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKFNTRTIsIFRyYW5zV0hULAotICAgICAgICAgICAg
ICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgwLCAmd2h0X3NzZTJfZnVu
Y19pbmZvLCAwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBWUFhfQklUU184KSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFNTRTIsIFRy
YW5zV0hULAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2Vf
dHVwbGUoMCwgJndodF9zc2UyX2Z1bmNfaW5mbywgMCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQWF9CSVRTXzgpKSk7CiAjZW5kaWYgIC8v
IEhBVkVfU1NFMiAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKIAogI2lmIEhBVkVfVlNYICYm
ICFDT05GSUdfRU1VTEFURV9IQVJEV0FSRSAmJiAhQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKQEAg
LTc0OSw4ICs3NDksOCBAQCBzdGF0aWMgY29uc3QgRnVuY0luZm8gd2h0X3ZzeF9mdW5jX2luZm8g
PSB7CiAgICZmZGN0X3dyYXBwZXI8dnA5X2Z3aHQ0eDRfYz4sICZpZGN0X3dyYXBwZXI8dnB4X2l3
aHQ0eDRfMTZfYWRkX3ZzeD4sIDQsIDEKIH07CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKFZT
WCwgVHJhbnNXSFQsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyht
YWtlX3R1cGxlKDAsICZ3aHRfdnN4X2Z1bmNfaW5mbywgMCwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVlBYX0JJVFNfOCkpKTsKK0lOU1RBTlRJ
QVRFX1RFU1RfU1VJVEVfUChWU1gsIFRyYW5zV0hULAorICAgICAgICAgICAgICAgICAgICAgICAg
IDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoMCwgJndodF92c3hfZnVuY19pbmZvLCAwLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVlBY
X0JJVFNfOCkpKTsKICNlbmRpZiAgLy8gSEFWRV9WU1ggJiYgIUNPTkZJR19FTVVMQVRFX0hBUkRX
QVJFCiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9kZWNvZGVf
YXBpX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZGVjb2RlX2FwaV90ZXN0LmNjCmluZGV4IGQ0
YjY3Y2NkYjhlNmJkZDNkYmRmNmQyYTJhM2Y4YTdiN2RkYTU1NzYuLjllODJhY2UxYjhiYzJkNWE0
YmQ4NTFlZTE4NzY2Mjk4ZTFhNzkzZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9kZWNv
ZGVfYXBpX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2RlY29kZV9hcGlfdGVzdC5jYwpA
QCAtMzEsMjcgKzMxLDMzIEBAIFRFU1QoRGVjb2RlQVBJLCBJbnZhbGlkUGFyYW1zKSB7CiAgIHVp
bnQ4X3QgYnVmWzFdID0geyAwIH07CiAgIHZweF9jb2RlY19jdHhfdCBkZWM7CiAKLSAgRVhQRUNU
X0VRKFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNLCB2cHhfY29kZWNfZGVjX2luaXQoTlVMTCwgTlVM
TCwgTlVMTCwgMCkpOwotICBFWFBFQ1RfRVEoVlBYX0NPREVDX0lOVkFMSURfUEFSQU0sIHZweF9j
b2RlY19kZWNfaW5pdCgmZGVjLCBOVUxMLCBOVUxMLCAwKSk7Ci0gIEVYUEVDVF9FUShWUFhfQ09E
RUNfSU5WQUxJRF9QQVJBTSwgdnB4X2NvZGVjX2RlY29kZShOVUxMLCBOVUxMLCAwLCBOVUxMLCAw
KSk7Ci0gIEVYUEVDVF9FUShWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwgdnB4X2NvZGVjX2RlY29k
ZShOVUxMLCBidWYsIDAsIE5VTEwsIDApKTsKLSAgRVhQRUNUX0VRKFZQWF9DT0RFQ19JTlZBTElE
X1BBUkFNLAotICAgICAgICAgICAgdnB4X2NvZGVjX2RlY29kZShOVUxMLCBidWYsIE5FTEVNRU5U
UyhidWYpLCBOVUxMLCAwKSk7Ci0gIEVYUEVDVF9FUShWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwK
LSAgICAgICAgICAgIHZweF9jb2RlY19kZWNvZGUoTlVMTCwgTlVMTCwgTkVMRU1FTlRTKGJ1Ziks
IE5VTEwsIDApKTsKLSAgRVhQRUNUX0VRKFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNLCB2cHhfY29k
ZWNfZGVzdHJveShOVUxMKSk7Ci0gIEVYUEVDVF9UUlVFKHZweF9jb2RlY19lcnJvcihOVUxMKSAh
PSBOVUxMKTsKKyAgRVhQRUNUX0VRKHZweF9jb2RlY19kZWNfaW5pdChudWxscHRyLCBudWxscHRy
LCBudWxscHRyLCAwKSwKKyAgICAgICAgICAgIFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNKTsKKyAg
RVhQRUNUX0VRKHZweF9jb2RlY19kZWNfaW5pdCgmZGVjLCBudWxscHRyLCBudWxscHRyLCAwKSwK
KyAgICAgICAgICAgIFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNKTsKKyAgRVhQRUNUX0VRKHZweF9j
b2RlY19kZWNvZGUobnVsbHB0ciwgbnVsbHB0ciwgMCwgbnVsbHB0ciwgMCksCisgICAgICAgICAg
ICBWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSk7CisgIEVYUEVDVF9FUSh2cHhfY29kZWNfZGVjb2Rl
KG51bGxwdHIsIGJ1ZiwgMCwgbnVsbHB0ciwgMCksCisgICAgICAgICAgICBWUFhfQ09ERUNfSU5W
QUxJRF9QQVJBTSk7CisgIEVYUEVDVF9FUSh2cHhfY29kZWNfZGVjb2RlKG51bGxwdHIsIGJ1Ziwg
TkVMRU1FTlRTKGJ1ZiksIG51bGxwdHIsIDApLAorICAgICAgICAgICAgVlBYX0NPREVDX0lOVkFM
SURfUEFSQU0pOworICBFWFBFQ1RfRVEodnB4X2NvZGVjX2RlY29kZShudWxscHRyLCBudWxscHRy
LCBORUxFTUVOVFMoYnVmKSwgbnVsbHB0ciwgMCksCisgICAgICAgICAgICBWUFhfQ09ERUNfSU5W
QUxJRF9QQVJBTSk7CisgIEVYUEVDVF9FUSh2cHhfY29kZWNfZGVzdHJveShudWxscHRyKSwgVlBY
X0NPREVDX0lOVkFMSURfUEFSQU0pOworICBFWFBFQ1RfTkUodnB4X2NvZGVjX2Vycm9yKG51bGxw
dHIpLCBudWxscHRyKTsKKyAgRVhQRUNUX0VRKHZweF9jb2RlY19lcnJvcl9kZXRhaWwobnVsbHB0
ciksIG51bGxwdHIpOwogCiAgIGZvciAoaW50IGkgPSAwOyBpIDwgTkVMRU1FTlRTKGtDb2RlY3Mp
OyArK2kpIHsKICAgICBFWFBFQ1RfRVEoVlBYX0NPREVDX0lOVkFMSURfUEFSQU0sCi0gICAgICAg
ICAgICAgIHZweF9jb2RlY19kZWNfaW5pdChOVUxMLCBrQ29kZWNzW2ldLCBOVUxMLCAwKSk7Cisg
ICAgICAgICAgICAgIHZweF9jb2RlY19kZWNfaW5pdChudWxscHRyLCBrQ29kZWNzW2ldLCBudWxs
cHRyLCAwKSk7CiAKLSAgICBFWFBFQ1RfRVEoVlBYX0NPREVDX09LLCB2cHhfY29kZWNfZGVjX2lu
aXQoJmRlYywga0NvZGVjc1tpXSwgTlVMTCwgMCkpOworICAgIEVYUEVDVF9FUShWUFhfQ09ERUNf
T0ssIHZweF9jb2RlY19kZWNfaW5pdCgmZGVjLCBrQ29kZWNzW2ldLCBudWxscHRyLCAwKSk7CiAg
ICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19VTlNVUF9CSVRTVFJFQU0sCi0gICAgICAgICAgICAgIHZw
eF9jb2RlY19kZWNvZGUoJmRlYywgYnVmLCBORUxFTUVOVFMoYnVmKSwgTlVMTCwgMCkpOworICAg
ICAgICAgICAgICB2cHhfY29kZWNfZGVjb2RlKCZkZWMsIGJ1ZiwgTkVMRU1FTlRTKGJ1ZiksIG51
bGxwdHIsIDApKTsKICAgICBFWFBFQ1RfRVEoVlBYX0NPREVDX0lOVkFMSURfUEFSQU0sCi0gICAg
ICAgICAgICAgIHZweF9jb2RlY19kZWNvZGUoJmRlYywgTlVMTCwgTkVMRU1FTlRTKGJ1ZiksIE5V
TEwsIDApKTsKLSAgICBFWFBFQ1RfRVEoVlBYX0NPREVDX0lOVkFMSURfUEFSQU0sIHZweF9jb2Rl
Y19kZWNvZGUoJmRlYywgYnVmLCAwLCBOVUxMLCAwKSk7CisgICAgICAgICAgICAgIHZweF9jb2Rl
Y19kZWNvZGUoJmRlYywgbnVsbHB0ciwgTkVMRU1FTlRTKGJ1ZiksIG51bGxwdHIsIDApKTsKKyAg
ICBFWFBFQ1RfRVEoVlBYX0NPREVDX0lOVkFMSURfUEFSQU0sCisgICAgICAgICAgICAgIHZweF9j
b2RlY19kZWNvZGUoJmRlYywgYnVmLCAwLCBudWxscHRyLCAwKSk7CiAKICAgICBFWFBFQ1RfRVEo
VlBYX0NPREVDX09LLCB2cHhfY29kZWNfZGVzdHJveSgmZGVjKSk7CiAgIH0KQEAgLTYyLDExICs2
OCwxMiBAQCBURVNUKERlY29kZUFQSSwgT3B0aW9uYWxQYXJhbXMpIHsKICAgdnB4X2NvZGVjX2N0
eF90IGRlYzsKIAogI2lmIENPTkZJR19FUlJPUl9DT05DRUFMTUVOVAotICBFWFBFQ1RfRVEoVlBY
X0NPREVDX09LLCB2cHhfY29kZWNfZGVjX2luaXQoJmRlYywgJnZweF9jb2RlY192cDhfZHhfYWxn
bywgTlVMTCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQ
WF9DT0RFQ19VU0VfRVJST1JfQ09OQ0VBTE1FTlQpKTsKKyAgRVhQRUNUX0VRKFZQWF9DT0RFQ19P
SywKKyAgICAgICAgICAgIHZweF9jb2RlY19kZWNfaW5pdCgmZGVjLCAmdnB4X2NvZGVjX3ZwOF9k
eF9hbGdvLCBudWxscHRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQWF9DT0RF
Q19VU0VfRVJST1JfQ09OQ0VBTE1FTlQpKTsKICNlbHNlCiAgIEVYUEVDVF9FUShWUFhfQ09ERUNf
SU5DQVBBQkxFLAotICAgICAgICAgICAgdnB4X2NvZGVjX2RlY19pbml0KCZkZWMsICZ2cHhfY29k
ZWNfdnA4X2R4X2FsZ28sIE5VTEwsCisgICAgICAgICAgICB2cHhfY29kZWNfZGVjX2luaXQoJmRl
YywgJnZweF9jb2RlY192cDhfZHhfYWxnbywgbnVsbHB0ciwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBWUFhfQ09ERUNfVVNFX0VSUk9SX0NPTkNFQUxNRU5UKSk7CiAjZW5kaWYgIC8v
IENPTkZJR19FUlJPUl9DT05DRUFMTUVOVAogfQpAQCAtOTAsMjUgKzk3LDI1IEBAIHZvaWQgVGVz
dFZwOUNvbnRyb2xzKHZweF9jb2RlY19jdHhfdCAqZGVjKSB7CiAgICAgICBkZWZhdWx0OiBFWFBF
Q1RfRVEoVlBYX0NPREVDX09LLCByZXMpIDw8IGtDb250cm9sc1tpXTsgYnJlYWs7CiAgICAgfQog
ICAgIEVYUEVDVF9FUShWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwKLSAgICAgICAgICAgICAgdnB4
X2NvZGVjX2NvbnRyb2xfKGRlYywga0NvbnRyb2xzW2ldLCBOVUxMKSk7CisgICAgICAgICAgICAg
IHZweF9jb2RlY19jb250cm9sXyhkZWMsIGtDb250cm9sc1tpXSwgbnVsbHB0cikpOwogICB9CiAK
ICAgdnA5X3JlZl9mcmFtZV90IHJlZjsKICAgcmVmLmlkeCA9IDA7CiAgIEVYUEVDVF9FUShWUFhf
Q09ERUNfRVJST1IsIHZweF9jb2RlY19jb250cm9sKGRlYywgVlA5X0dFVF9SRUZFUkVOQ0UsICZy
ZWYpKTsKICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNLAotICAgICAgICAgICAg
dnB4X2NvZGVjX2NvbnRyb2woZGVjLCBWUDlfR0VUX1JFRkVSRU5DRSwgTlVMTCkpOworICAgICAg
ICAgICAgdnB4X2NvZGVjX2NvbnRyb2woZGVjLCBWUDlfR0VUX1JFRkVSRU5DRSwgbnVsbHB0cikp
OwogCiAgIHZweF9yZWZfZnJhbWVfdCByZWZfY29weTsKICAgY29uc3QgaW50IHdpZHRoID0gMzUy
OwogICBjb25zdCBpbnQgaGVpZ2h0ID0gMjg4OwotICBBU1NFUlRfVFJVRSgKLSAgICAgIHZweF9p
bWdfYWxsb2MoJnJlZl9jb3B5LmltZywgVlBYX0lNR19GTVRfSTQyMCwgd2lkdGgsIGhlaWdodCwg
MSkgIT0gTlVMTCk7CisgIEVYUEVDVF9ORSh2cHhfaW1nX2FsbG9jKCZyZWZfY29weS5pbWcsIFZQ
WF9JTUdfRk1UX0k0MjAsIHdpZHRoLCBoZWlnaHQsIDEpLAorICAgICAgICAgICAgbnVsbHB0cik7
CiAgIHJlZl9jb3B5LmZyYW1lX3R5cGUgPSBWUDhfTEFTVF9GUkFNRTsKICAgRVhQRUNUX0VRKFZQ
WF9DT0RFQ19FUlJPUiwKICAgICAgICAgICAgIHZweF9jb2RlY19jb250cm9sKGRlYywgVlA4X0NP
UFlfUkVGRVJFTkNFLCAmcmVmX2NvcHkpKTsKICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19JTlZBTElE
X1BBUkFNLAotICAgICAgICAgICAgdnB4X2NvZGVjX2NvbnRyb2woZGVjLCBWUDhfQ09QWV9SRUZF
UkVOQ0UsIE5VTEwpKTsKKyAgICAgICAgICAgIHZweF9jb2RlY19jb250cm9sKGRlYywgVlA4X0NP
UFlfUkVGRVJFTkNFLCBudWxscHRyKSk7CiAgIHZweF9pbWdfZnJlZSgmcmVmX2NvcHkuaW1nKTsK
IH0KIApAQCAtMTIyLDE3ICsxMjksMTcgQEAgVEVTVChEZWNvZGVBUEksIFZwOUludmFsaWREZWNv
ZGUpIHsKICAgQVNTRVJUX1RSVUUoIUhhc0ZhaWx1cmUoKSk7CiAKICAgdnB4X2NvZGVjX2N0eF90
IGRlYzsKLSAgRVhQRUNUX0VRKFZQWF9DT0RFQ19PSywgdnB4X2NvZGVjX2RlY19pbml0KCZkZWMs
IGNvZGVjLCBOVUxMLCAwKSk7CisgIEVYUEVDVF9FUShWUFhfQ09ERUNfT0ssIHZweF9jb2RlY19k
ZWNfaW5pdCgmZGVjLCBjb2RlYywgbnVsbHB0ciwgMCkpOwogICBjb25zdCB1aW50MzJfdCBmcmFt
ZV9zaXplID0gc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHZpZGVvLmZyYW1lX3NpemUoKSk7CiAjaWYg
Q09ORklHX1ZQOV9ISUdIQklUREVQVEgKICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19NRU1fRVJST1Is
Ci0gICAgICAgICAgICB2cHhfY29kZWNfZGVjb2RlKCZkZWMsIHZpZGVvLmN4ZGF0YSgpLCBmcmFt
ZV9zaXplLCBOVUxMLCAwKSk7CisgICAgICAgICAgICB2cHhfY29kZWNfZGVjb2RlKCZkZWMsIHZp
ZGVvLmN4ZGF0YSgpLCBmcmFtZV9zaXplLCBudWxscHRyLCAwKSk7CiAjZWxzZQogICBFWFBFQ1Rf
RVEoVlBYX0NPREVDX1VOU1VQX0JJVFNUUkVBTSwKLSAgICAgICAgICAgIHZweF9jb2RlY19kZWNv
ZGUoJmRlYywgdmlkZW8uY3hkYXRhKCksIGZyYW1lX3NpemUsIE5VTEwsIDApKTsKKyAgICAgICAg
ICAgIHZweF9jb2RlY19kZWNvZGUoJmRlYywgdmlkZW8uY3hkYXRhKCksIGZyYW1lX3NpemUsIG51
bGxwdHIsIDApKTsKICNlbmRpZgotICB2cHhfY29kZWNfaXRlcl90IGl0ZXIgPSBOVUxMOwotICBF
WFBFQ1RfRVEoTlVMTCwgdnB4X2NvZGVjX2dldF9mcmFtZSgmZGVjLCAmaXRlcikpOworICB2cHhf
Y29kZWNfaXRlcl90IGl0ZXIgPSBudWxscHRyOworICBFWFBFQ1RfRVEobnVsbHB0ciwgdnB4X2Nv
ZGVjX2dldF9mcmFtZSgmZGVjLCAmaXRlcikpOwogCiAgIFRlc3RWcDlDb250cm9scygmZGVjKTsK
ICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19PSywgdnB4X2NvZGVjX2Rlc3Ryb3koJmRlYykpOwpAQCAt
MTQ1LDEyICsxNTIsMTIgQEAgdm9pZCBUZXN0UGVla0luZm8oY29uc3QgdWludDhfdCAqY29uc3Qg
ZGF0YSwgdWludDMyX3QgZGF0YV9zeiwKICAgLy8gdG8gZGVjb2Rlcl9wZWVrX3NpX2ludGVybmFs
IG9uIGZyYW1lcyBvZiBzaXplIDwgOC4KICAgaWYgKGRhdGFfc3ogPj0gOCkgewogICAgIHZweF9j
b2RlY19jdHhfdCBkZWM7Ci0gICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19PSywgdnB4X2NvZGVjX2Rl
Y19pbml0KCZkZWMsIGNvZGVjLCBOVUxMLCAwKSk7CisgICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19P
SywgdnB4X2NvZGVjX2RlY19pbml0KCZkZWMsIGNvZGVjLCBudWxscHRyLCAwKSk7CiAgICAgRVhQ
RUNUX0VRKChkYXRhX3N6IDwgcGVla19zaXplKSA/IFZQWF9DT0RFQ19VTlNVUF9CSVRTVFJFQU0K
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogVlBYX0NPREVDX0NPUlJVUFRf
RlJBTUUsCi0gICAgICAgICAgICAgIHZweF9jb2RlY19kZWNvZGUoJmRlYywgZGF0YSwgZGF0YV9z
eiwgTlVMTCwgMCkpOwotICAgIHZweF9jb2RlY19pdGVyX3QgaXRlciA9IE5VTEw7Ci0gICAgRVhQ
RUNUX0VRKE5VTEwsIHZweF9jb2RlY19nZXRfZnJhbWUoJmRlYywgJml0ZXIpKTsKKyAgICAgICAg
ICAgICAgdnB4X2NvZGVjX2RlY29kZSgmZGVjLCBkYXRhLCBkYXRhX3N6LCBudWxscHRyLCAwKSk7
CisgICAgdnB4X2NvZGVjX2l0ZXJfdCBpdGVyID0gbnVsbHB0cjsKKyAgICBFWFBFQ1RfRVEobnVs
bHB0ciwgdnB4X2NvZGVjX2dldF9mcmFtZSgmZGVjLCAmaXRlcikpOwogICAgIEVYUEVDVF9FUShW
UFhfQ09ERUNfT0ssIHZweF9jb2RlY19kZXN0cm95KCZkZWMpKTsKICAgfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rlc3QvZGVjb2RlX2NvcnJ1cHRlZC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9k
ZWNvZGVfY29ycnVwdGVkLmNjCmluZGV4IGIxNDk1Y2U4OWZmNWYxODgwNGE1YWQyZWJjODZkMTU2
MzYzOWQ0NWMuLjMxZTFkYTY5Y2MwYTNmMWM4ZDY1OTNjNGJjYzY1ZDk0ZWI5YWJlNTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9kZWNvZGVfY29ycnVwdGVkLmNjCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC9kZWNvZGVfY29ycnVwdGVkLmNjCkBAIC04NywxNCArODcsMTQgQEAgVEVTVF9QKERl
Y29kZUNvcnJ1cHRlZEZyYW1lVGVzdCwgRGVjb2RlQ29ycnVwdGVkRnJhbWUpIHsKIH0KIAogI2lm
IENPTkZJR19WUDkKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9T
VUlURV9QKAogICAgIFZQOSwgRGVjb2RlQ29ycnVwdGVkRnJhbWVUZXN0LAogICAgIDo6dGVzdGlu
Zzo6VmFsdWVzKAogICAgICAgICBzdGF0aWNfY2FzdDxjb25zdCBsaWJ2cHhfdGVzdDo6Q29kZWNG
YWN0b3J5ICo+KCZsaWJ2cHhfdGVzdDo6a1ZQOSkpKTsKICNlbmRpZiAgLy8gQ09ORklHX1ZQOQog
CiAjaWYgQ09ORklHX1ZQOAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9U
RVNUX1NVSVRFX1AoCiAgICAgVlA4LCBEZWNvZGVDb3JydXB0ZWRGcmFtZVRlc3QsCiAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIHN0YXRpY19jYXN0PGNvbnN0IGxpYnZweF90ZXN0OjpD
b2RlY0ZhY3RvcnkgKj4oJmxpYnZweF90ZXN0OjprVlA4KSkpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC90ZXN0L2RlY29kZV9wZXJmX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZGVjb2RlX3Bl
cmZfdGVzdC5jYwppbmRleCBhZWNkZDNlOTk5MzExN2E1NjE3ZDVhY2Y0MDQwZmZiNDFjYWJmMmJh
Li5lMDdhNjY3NDQwYzA0MmM2MzJhYzBiODA3NjA5N2RiMTdlNDAwMjM5IDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3Rlc3QvZGVjb2RlX3BlcmZfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qv
ZGVjb2RlX3BlcmZfdGVzdC5jYwpAQCAtODcsNyArODcsNyBAQCBURVNUX1AoRGVjb2RlUGVyZlRl
c3QsIFBlcmZUZXN0KSB7CiAgIHZweF91c2VjX3RpbWVyIHQ7CiAgIHZweF91c2VjX3RpbWVyX3N0
YXJ0KCZ0KTsKIAotICBmb3IgKHZpZGVvLkJlZ2luKCk7IHZpZGVvLmN4ZGF0YSgpICE9IE5VTEw7
IHZpZGVvLk5leHQoKSkgeworICBmb3IgKHZpZGVvLkJlZ2luKCk7IHZpZGVvLmN4ZGF0YSgpICE9
IG51bGxwdHI7IHZpZGVvLk5leHQoKSkgewogICAgIGRlY29kZXIuRGVjb2RlRnJhbWUodmlkZW8u
Y3hkYXRhKCksIHZpZGVvLmZyYW1lX3NpemUoKSk7CiAgIH0KIApAQCAtMTA3LDggKzEwNyw4IEBA
IFRFU1RfUChEZWNvZGVQZXJmVGVzdCwgUGVyZlRlc3QpIHsKICAgcHJpbnRmKCJ9XG4iKTsKIH0K
IAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoVlA5LCBEZWNvZGVQZXJmVGVzdCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oa1ZQOURlY29kZVBlcmZWZWN0b3Jz
KSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoVlA5LCBEZWNvZGVQZXJmVGVzdCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtWUDlEZWNvZGVQZXJmVmVj
dG9ycykpOwogCiBjbGFzcyBWUDlOZXdFbmNvZGVEZWNvZGVQZXJmVGVzdAogICAgIDogcHVibGlj
IDo6bGlidnB4X3Rlc3Q6OkVuY29kZXJUZXN0LApAQCAtMTUwLDE2ICsxNTAsMTYgQEAgY2xhc3Mg
VlA5TmV3RW5jb2RlRGVjb2RlUGVyZlRlc3QKICAgICBjb25zdCBzdGQ6OnN0cmluZyBkYXRhX3Bh
dGggPSBnZXRlbnYoIkxJQlZQWF9URVNUX0RBVEFfUEFUSCIpOwogICAgIGNvbnN0IHN0ZDo6c3Ry
aW5nIHBhdGhfdG9fc291cmNlID0gZGF0YV9wYXRoICsgIi8iICsga05ld0VuY29kZU91dHB1dEZp
bGU7CiAgICAgb3V0ZmlsZV8gPSBmb3BlbihwYXRoX3RvX3NvdXJjZS5jX3N0cigpLCAid2IiKTsK
LSAgICBBU1NFUlRfVFJVRShvdXRmaWxlXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUob3V0Zmls
ZV8sIG51bGxwdHIpOwogICB9CiAKICAgdmlydHVhbCB2b2lkIEVuZFBhc3NIb29rKCkgewotICAg
IGlmIChvdXRmaWxlXyAhPSBOVUxMKSB7CisgICAgaWYgKG91dGZpbGVfICE9IG51bGxwdHIpIHsK
ICAgICAgIGlmICghZnNlZWsob3V0ZmlsZV8sIDAsIFNFRUtfU0VUKSkgewogICAgICAgICBpdmZf
d3JpdGVfZmlsZV9oZWFkZXIob3V0ZmlsZV8sICZjZmdfLCBWUDlfRk9VUkNDLCBvdXRfZnJhbWVz
Xyk7CiAgICAgICB9CiAgICAgICBmY2xvc2Uob3V0ZmlsZV8pOwotICAgICAgb3V0ZmlsZV8gPSBO
VUxMOworICAgICAgb3V0ZmlsZV8gPSBudWxscHRyOwogICAgIH0KICAgfQogCkBAIC0yMzYsNyAr
MjM2LDcgQEAgVEVTVF9QKFZQOU5ld0VuY29kZURlY29kZVBlcmZUZXN0LCBQZXJmVGVzdCkgewog
ICB2cHhfdXNlY190aW1lciB0OwogICB2cHhfdXNlY190aW1lcl9zdGFydCgmdCk7CiAKLSAgZm9y
IChkZWNvZGVfdmlkZW8uQmVnaW4oKTsgZGVjb2RlX3ZpZGVvLmN4ZGF0YSgpICE9IE5VTEw7Cisg
IGZvciAoZGVjb2RlX3ZpZGVvLkJlZ2luKCk7IGRlY29kZV92aWRlby5jeGRhdGEoKSAhPSBudWxs
cHRyOwogICAgICAgIGRlY29kZV92aWRlby5OZXh0KCkpIHsKICAgICBkZWNvZGVyLkRlY29kZUZy
YW1lKGRlY29kZV92aWRlby5jeGRhdGEoKSwgZGVjb2RlX3ZpZGVvLmZyYW1lX3NpemUoKSk7CiAg
IH0KQEAgLTI1OCw2ICsyNTgsNiBAQCBURVNUX1AoVlA5TmV3RW5jb2RlRGVjb2RlUGVyZlRlc3Qs
IFBlcmZUZXN0KSB7CiAgIHByaW50ZigifVxuIik7CiB9CiAKLVZQOV9JTlNUQU5USUFURV9URVNU
X0NBU0UoVlA5TmV3RW5jb2RlRGVjb2RlUGVyZlRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgIDo6dGVzdGluZzo6VmFsdWVzKDo6bGlidnB4X3Rlc3Q6OmtUd29QYXNzR29vZCkpOworVlA5
X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUoVlA5TmV3RW5jb2RlRGVjb2RlUGVyZlRlc3QsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0Ojpr
VHdvUGFzc0dvb2QpKTsKIH0gIC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90
ZXN0L2RlY29kZV9zdmNfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9kZWNvZGVfc3ZjX3Rlc3Qu
Y2MKaW5kZXggYzZmMDg3M2Y4OTczMjY2YjMxMWFlMDM4M2JjNzdmMjg2MDY5YzYxMS4uZWM5OTM1
ZGE3OTVlYWRmODI0MGJkOTcwMTUxMjRkOGM4ZTVmOWQwOCAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90ZXN0L2RlY29kZV9zdmNfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZGVjb2RlX3N2
Y190ZXN0LmNjCkBAIC01Niw3ICs1Niw3IEBAIFRFU1RfUChEZWNvZGVTdmNUZXN0LCBEZWNvZGVT
dmNUZXN0VXBUb1NwYXRpYWxMYXllcjApIHsKICAgY29uc3Qgc3RkOjpzdHJpbmcgZmlsZW5hbWUg
PSBHRVRfUEFSQU0oMSk7CiAgIHN0ZDo6dW5pcXVlX3B0cjxsaWJ2cHhfdGVzdDo6Q29tcHJlc3Nl
ZFZpZGVvU291cmNlPiB2aWRlbzsKICAgdmlkZW8ucmVzZXQobmV3IGxpYnZweF90ZXN0OjpJVkZW
aWRlb1NvdXJjZShmaWxlbmFtZSkpOwotICBBU1NFUlRfVFJVRSh2aWRlby5nZXQoKSAhPSBOVUxM
KTsKKyAgQVNTRVJUX05FKHZpZGVvLmdldCgpLCBudWxscHRyKTsKICAgdmlkZW8tPkluaXQoKTsK
ICAgdG90YWxfZnJhbWVzXyA9IDA7CiAgIHNwYXRpYWxfbGF5ZXJfID0gMDsKQEAgLTczLDcgKzcz
LDcgQEAgVEVTVF9QKERlY29kZVN2Y1Rlc3QsIERlY29kZVN2Y1Rlc3RVcFRvU3BhdGlhbExheWVy
MSkgewogICBjb25zdCBzdGQ6OnN0cmluZyBmaWxlbmFtZSA9IEdFVF9QQVJBTSgxKTsKICAgc3Rk
Ojp1bmlxdWVfcHRyPGxpYnZweF90ZXN0OjpDb21wcmVzc2VkVmlkZW9Tb3VyY2U+IHZpZGVvOwog
ICB2aWRlby5yZXNldChuZXcgbGlidnB4X3Rlc3Q6OklWRlZpZGVvU291cmNlKGZpbGVuYW1lKSk7
Ci0gIEFTU0VSVF9UUlVFKHZpZGVvLmdldCgpICE9IE5VTEwpOworICBBU1NFUlRfTkUodmlkZW8u
Z2V0KCksIG51bGxwdHIpOwogICB2aWRlby0+SW5pdCgpOwogICB0b3RhbF9mcmFtZXNfID0gMDsK
ICAgc3BhdGlhbF9sYXllcl8gPSAxOwpAQCAtOTAsNyArOTAsNyBAQCBURVNUX1AoRGVjb2RlU3Zj
VGVzdCwgRGVjb2RlU3ZjVGVzdFVwVG9TcGF0aWFsTGF5ZXIyKSB7CiAgIGNvbnN0IHN0ZDo6c3Ry
aW5nIGZpbGVuYW1lID0gR0VUX1BBUkFNKDEpOwogICBzdGQ6OnVuaXF1ZV9wdHI8bGlidnB4X3Rl
c3Q6OkNvbXByZXNzZWRWaWRlb1NvdXJjZT4gdmlkZW87CiAgIHZpZGVvLnJlc2V0KG5ldyBsaWJ2
cHhfdGVzdDo6SVZGVmlkZW9Tb3VyY2UoZmlsZW5hbWUpKTsKLSAgQVNTRVJUX1RSVUUodmlkZW8u
Z2V0KCkgIT0gTlVMTCk7CisgIEFTU0VSVF9ORSh2aWRlby5nZXQoKSwgbnVsbHB0cik7CiAgIHZp
ZGVvLT5Jbml0KCk7CiAgIHRvdGFsX2ZyYW1lc18gPSAwOwogICBzcGF0aWFsX2xheWVyXyA9IDI7
CkBAIC0xMDgsNyArMTA4LDcgQEAgVEVTVF9QKERlY29kZVN2Y1Rlc3QsIERlY29kZVN2Y1Rlc3RV
cFRvU3BhdGlhbExheWVyMTApIHsKICAgY29uc3Qgc3RkOjpzdHJpbmcgZmlsZW5hbWUgPSBHRVRf
UEFSQU0oMSk7CiAgIHN0ZDo6dW5pcXVlX3B0cjxsaWJ2cHhfdGVzdDo6Q29tcHJlc3NlZFZpZGVv
U291cmNlPiB2aWRlbzsKICAgdmlkZW8ucmVzZXQobmV3IGxpYnZweF90ZXN0OjpJVkZWaWRlb1Nv
dXJjZShmaWxlbmFtZSkpOwotICBBU1NFUlRfVFJVRSh2aWRlby5nZXQoKSAhPSBOVUxMKTsKKyAg
QVNTRVJUX05FKHZpZGVvLmdldCgpLCBudWxscHRyKTsKICAgdmlkZW8tPkluaXQoKTsKICAgdG90
YWxfZnJhbWVzXyA9IDA7CiAgIHNwYXRpYWxfbGF5ZXJfID0gMTA7CkBAIC0xMTgsNyArMTE4LDcg
QEAgVEVTVF9QKERlY29kZVN2Y1Rlc3QsIERlY29kZVN2Y1Rlc3RVcFRvU3BhdGlhbExheWVyMTAp
IHsKICAgQVNTRVJUX0VRKHRvdGFsX2ZyYW1lc18sIGtOdW1GcmFtZXMpOwogfQogCi1WUDlfSU5T
VEFOVElBVEVfVEVTVF9DQVNFKAorVlA5X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUoCiAgICAgRGVj
b2RlU3ZjVGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbihsaWJ2cHhfdGVzdDo6a1ZQOVRlc3RWZWN0
b3JzU3ZjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlidnB4X3Rl
c3Q6OmtWUDlUZXN0VmVjdG9yc1N2YyArCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgbGlidnB4X3Rlc3Q6OmtOdW1WUDlUZXN0VmVjdG9yc1N2YykpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90ZXN0L2RlY29kZV90ZXN0X2RyaXZlci5jYyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dGVzdC9kZWNvZGVfdGVzdF9kcml2ZXIuY2MKaW5kZXggYWUyMzU4Nzc1OWQzOGFkNzA0MzE4YzRj
YTVkYjQzZGRhNTM0YmY0ZS4uNzczZDY3M2QzN2U5ZDNhNzYxOWVkMTE2NjRhZDllNTM2NWZjNzVm
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2RlY29kZV90ZXN0X2RyaXZlci5jYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rlc3QvZGVjb2RlX3Rlc3RfZHJpdmVyLmNjCkBAIC0yNiw3ICsyNiw3IEBA
IHZweF9jb2RlY19lcnJfdCBEZWNvZGVyOjpQZWVrU3RyZWFtKGNvbnN0IHVpbnQ4X3QgKmN4ZGF0
YSwgc2l6ZV90IHNpemUsCiB9CiAKIHZweF9jb2RlY19lcnJfdCBEZWNvZGVyOjpEZWNvZGVGcmFt
ZShjb25zdCB1aW50OF90ICpjeGRhdGEsIHNpemVfdCBzaXplKSB7Ci0gIHJldHVybiBEZWNvZGVG
cmFtZShjeGRhdGEsIHNpemUsIE5VTEwpOworICByZXR1cm4gRGVjb2RlRnJhbWUoY3hkYXRhLCBz
aXplLCBudWxscHRyKTsKIH0KIAogdnB4X2NvZGVjX2Vycl90IERlY29kZXI6OkRlY29kZUZyYW1l
KGNvbnN0IHVpbnQ4X3QgKmN4ZGF0YSwgc2l6ZV90IHNpemUsCkBAIC02Nyw3ICs2Nyw3IEBAIHZv
aWQgRGVjb2RlclRlc3Q6OkhhbmRsZVBlZWtSZXN1bHQoRGVjb2RlciAqY29uc3QgZGVjb2RlciwK
IHZvaWQgRGVjb2RlclRlc3Q6OlJ1bkxvb3AoQ29tcHJlc3NlZFZpZGVvU291cmNlICp2aWRlbywK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdnB4X2NvZGVjX2RlY19jZmdfdCAmZGVj
X2NmZykgewogICBEZWNvZGVyICpjb25zdCBkZWNvZGVyID0gY29kZWNfLT5DcmVhdGVEZWNvZGVy
KGRlY19jZmcsIGZsYWdzXyk7Ci0gIEFTU0VSVF9UUlVFKGRlY29kZXIgIT0gTlVMTCk7CisgIEFT
U0VSVF9ORShkZWNvZGVyLCBudWxscHRyKTsKICAgYm9vbCBlbmRfb2ZfZmlsZSA9IGZhbHNlOwog
CiAgIC8vIERlY29kZSBmcmFtZXMuCkBAIC03OCw3ICs3OCw3IEBAIHZvaWQgRGVjb2RlclRlc3Q6
OlJ1bkxvb3AoQ29tcHJlc3NlZFZpZGVvU291cmNlICp2aWRlbywKICAgICB2cHhfY29kZWNfc3Ry
ZWFtX2luZm9fdCBzdHJlYW1faW5mbzsKICAgICBzdHJlYW1faW5mby5zeiA9IHNpemVvZihzdHJl
YW1faW5mbyk7CiAKLSAgICBpZiAodmlkZW8tPmN4ZGF0YSgpICE9IE5VTEwpIHsKKyAgICBpZiAo
dmlkZW8tPmN4ZGF0YSgpICE9IG51bGxwdHIpIHsKICAgICAgIGNvbnN0IHZweF9jb2RlY19lcnJf
dCByZXNfcGVlayA9IGRlY29kZXItPlBlZWtTdHJlYW0oCiAgICAgICAgICAgdmlkZW8tPmN4ZGF0
YSgpLCB2aWRlby0+ZnJhbWVfc2l6ZSgpLCAmc3RyZWFtX2luZm8pOwogICAgICAgSGFuZGxlUGVl
a1Jlc3VsdChkZWNvZGVyLCB2aWRlbywgcmVzX3BlZWspOwpAQCAtODksMTMgKzg5LDEzIEBAIHZv
aWQgRGVjb2RlclRlc3Q6OlJ1bkxvb3AoQ29tcHJlc3NlZFZpZGVvU291cmNlICp2aWRlbywKICAg
ICAgIGlmICghSGFuZGxlRGVjb2RlUmVzdWx0KHJlc19kZWMsICp2aWRlbywgZGVjb2RlcikpIGJy
ZWFrOwogICAgIH0gZWxzZSB7CiAgICAgICAvLyBTaWduYWwgZW5kIG9mIHRoZSBmaWxlIHRvIHRo
ZSBkZWNvZGVyLgotICAgICAgY29uc3QgdnB4X2NvZGVjX2Vycl90IHJlc19kZWMgPSBkZWNvZGVy
LT5EZWNvZGVGcmFtZShOVUxMLCAwKTsKKyAgICAgIGNvbnN0IHZweF9jb2RlY19lcnJfdCByZXNf
ZGVjID0gZGVjb2Rlci0+RGVjb2RlRnJhbWUobnVsbHB0ciwgMCk7CiAgICAgICBBU1NFUlRfRVEo
VlBYX0NPREVDX09LLCByZXNfZGVjKSA8PCBkZWNvZGVyLT5EZWNvZGVFcnJvcigpOwogICAgICAg
ZW5kX29mX2ZpbGUgPSB0cnVlOwogICAgIH0KIAogICAgIER4RGF0YUl0ZXJhdG9yIGRlY19pdGVy
ID0gZGVjb2Rlci0+R2V0RHhEYXRhKCk7Ci0gICAgY29uc3QgdnB4X2ltYWdlX3QgKmltZyA9IE5V
TEw7CisgICAgY29uc3QgdnB4X2ltYWdlX3QgKmltZyA9IG51bGxwdHI7CiAKICAgICAvLyBHZXQg
ZGVjb21wcmVzc2VkIGRhdGEKICAgICB3aGlsZSAoITo6dGVzdGluZzo6VGVzdDo6SGFzRmFpbHVy
ZSgpICYmIChpbWcgPSBkZWNfaXRlci5OZXh0KCkpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3Rlc3QvZGVjb2RlX3RvX21kNS5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9kZWNvZGVfdG9fbWQ1LnNo
CmluZGV4IDg1NGI3NGY4NGYxODFlZWE0YjA5ZDIxMDY5OGU1YTRhMjZlNmU3YmUuLjE1ZWVlMzlm
YWNiNWVkOTE2Njc3NDliNjU0Y2JjZGMzNDhiN2M4ZmUgMTAwNzU1Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dGVzdC9kZWNvZGVfdG9fbWQ1LnNoCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9kZWNvZGVfdG9fbWQ1
LnNoCkBAIC00MCw3ICs0MCw3IEBAIGRlY29kZV90b19tZDUoKSB7CiAgIGZpCiAKICAgZXZhbCAi
JHtWUFhfVEVTVF9QUkVGSVh9IiAiJHtkZWNvZGVyfSIgIiR7aW5wdXRfZmlsZX0iICIke291dHB1
dF9maWxlfSIgXAotICAgICAgJHtkZXZudWxsfQorICAgICAgJHtkZXZudWxsfSB8fCByZXR1cm4g
MQogCiAgIFsgLWUgIiR7b3V0cHV0X2ZpbGV9IiBdIHx8IHJldHVybiAxCiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdGVzdC9kZWNvZGVfd2l0aF9kcm9wcy5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9k
ZWNvZGVfd2l0aF9kcm9wcy5zaAppbmRleCA5YjJlZGI2NDI5MjE2M2IxY2I4ZDdjMjY3NDAwYTc2
NzE5YzAzODFhLi4yYzgyNjA0NWIzMzJmNmM0YzUzNTc4YTIwYzYyNGQzNmEyNTg4ZDFkIDEwMDc1
NQotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZGVjb2RlX3dpdGhfZHJvcHMuc2gKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC90ZXN0L2RlY29kZV93aXRoX2Ryb3BzLnNoCkBAIC00MCw3ICs0MCw3IEBAIGRlY29kZV93
aXRoX2Ryb3BzKCkgewogICBmaQogCiAgIGV2YWwgIiR7VlBYX1RFU1RfUFJFRklYfSIgIiR7ZGVj
b2Rlcn0iICIke2lucHV0X2ZpbGV9IiAiJHtvdXRwdXRfZmlsZX0iIFwKLSAgICAgICIke2Ryb3Bf
bW9kZX0iICR7ZGV2bnVsbH0KKyAgICAgICIke2Ryb3BfbW9kZX0iICR7ZGV2bnVsbH0gfHwgcmV0
dXJuIDEKIAogICBbIC1lICIke291dHB1dF9maWxlfSIgXSB8fCByZXR1cm4gMQogfQpAQCAtNTIs
MTAgKzUyLDEwIEBAIGRlY29kZV93aXRoX2Ryb3BzKCkgewogZGVjb2RlX3dpdGhfZHJvcHNfdnA4
KCkgewogICBpZiBbICIkKHZwOF9kZWNvZGVfYXZhaWxhYmxlKSIgPSAieWVzIiBdOyB0aGVuCiAg
ICAgIyBUZXN0IHNlcXVlbmNlIG1vZGU6IERyb3AgZnJhbWVzIDItMjguCi0gICAgZGVjb2RlX3dp
dGhfZHJvcHMgIiR7VlA4X0lWRl9GSUxFfSIgInZwOCIgIjItMjgiCisgICAgZGVjb2RlX3dpdGhf
ZHJvcHMgIiR7VlA4X0lWRl9GSUxFfSIgInZwOCIgIjItMjgiIHx8IHJldHVybiAxCiAKICAgICAj
IFRlc3QgcGF0dGVybiBtb2RlOiBEcm9wIDMgb2YgZXZlcnkgNCBmcmFtZXMuCi0gICAgZGVjb2Rl
X3dpdGhfZHJvcHMgIiR7VlA4X0lWRl9GSUxFfSIgInZwOCIgIjMvNCIKKyAgICBkZWNvZGVfd2l0
aF9kcm9wcyAiJHtWUDhfSVZGX0ZJTEV9IiAidnA4IiAiMy80IiB8fCByZXR1cm4gMQogICBmaQog
fQogCkBAIC02NiwxMCArNjYsMTAgQEAgZGVjb2RlX3dpdGhfZHJvcHNfdnA4KCkgewogZGVjb2Rl
X3dpdGhfZHJvcHNfdnA5KCkgewogICBpZiBbICIkKHZwOV9kZWNvZGVfYXZhaWxhYmxlKSIgPSAi
eWVzIiBdOyB0aGVuCiAgICAgIyBUZXN0IHNlcXVlbmNlIG1vZGU6IERyb3AgZnJhbWVzIDItMjgu
Ci0gICAgZGVjb2RlX3dpdGhfZHJvcHMgIiR7VlA5X0lWRl9GSUxFfSIgInZwOSIgIjItMTkiCisg
ICAgZGVjb2RlX3dpdGhfZHJvcHMgIiR7VlA5X0lWRl9GSUxFfSIgInZwOSIgIjItMTkiIHx8IHJl
dHVybiAxCiAKICAgICAjIFRlc3QgcGF0dGVybiBtb2RlOiBEcm9wIDMgb2YgZXZlcnkgNCBmcmFt
ZXMuCi0gICAgZGVjb2RlX3dpdGhfZHJvcHMgIiR7VlA5X0lWRl9GSUxFfSIgInZwOSIgIjMvNCIK
KyAgICBkZWNvZGVfd2l0aF9kcm9wcyAiJHtWUDlfSVZGX0ZJTEV9IiAidnA5IiAiMy80IiB8fCBy
ZXR1cm4gMQogICBmaQogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZW5jb2RlX2Fw
aV90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2VuY29kZV9hcGlfdGVzdC5jYwppbmRleCA4N2Uy
OWI2MWRiMTJkOGU1MWFmODU5ZmQwM2Q0NmEyZDcwYmE4YjQxLi42YmQ3ZTU5M2RhY2M2ZTJkMjBm
YTFkMTc2NDEzNDhkY2U2OTgwYzIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZW5jb2Rl
X2FwaV90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9lbmNvZGVfYXBpX3Rlc3QuY2MKQEAg
LTM0LDI5ICszNCwzMyBAQCBURVNUKEVuY29kZUFQSSwgSW52YWxpZFBhcmFtcykgewogCiAgIEVY
UEVDVF9FUSgmaW1nLCB2cHhfaW1nX3dyYXAoJmltZywgVlBYX0lNR19GTVRfSTQyMCwgMSwgMSwg
MSwgYnVmKSk7CiAKLSAgRVhQRUNUX0VRKFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNLCB2cHhfY29k
ZWNfZW5jX2luaXQoTlVMTCwgTlVMTCwgTlVMTCwgMCkpOwotICBFWFBFQ1RfRVEoVlBYX0NPREVD
X0lOVkFMSURfUEFSQU0sIHZweF9jb2RlY19lbmNfaW5pdCgmZW5jLCBOVUxMLCBOVUxMLCAwKSk7
Ci0gIEVYUEVDVF9FUShWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwgdnB4X2NvZGVjX2VuY29kZShO
VUxMLCBOVUxMLCAwLCAwLCAwLCAwKSk7Ci0gIEVYUEVDVF9FUShWUFhfQ09ERUNfSU5WQUxJRF9Q
QVJBTSwgdnB4X2NvZGVjX2VuY29kZShOVUxMLCAmaW1nLCAwLCAwLCAwLCAwKSk7Ci0gIEVYUEVD
VF9FUShWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwgdnB4X2NvZGVjX2Rlc3Ryb3koTlVMTCkpOwog
ICBFWFBFQ1RfRVEoVlBYX0NPREVDX0lOVkFMSURfUEFSQU0sCi0gICAgICAgICAgICB2cHhfY29k
ZWNfZW5jX2NvbmZpZ19kZWZhdWx0KE5VTEwsIE5VTEwsIDApKTsKKyAgICAgICAgICAgIHZweF9j
b2RlY19lbmNfaW5pdChudWxscHRyLCBudWxscHRyLCBudWxscHRyLCAwKSk7CiAgIEVYUEVDVF9F
UShWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwKLSAgICAgICAgICAgIHZweF9jb2RlY19lbmNfY29u
ZmlnX2RlZmF1bHQoTlVMTCwgJmNmZywgMCkpOwotICBFWFBFQ1RfVFJVRSh2cHhfY29kZWNfZXJy
b3IoTlVMTCkgIT0gTlVMTCk7CisgICAgICAgICAgICB2cHhfY29kZWNfZW5jX2luaXQoJmVuYywg
bnVsbHB0ciwgbnVsbHB0ciwgMCkpOworICBFWFBFQ1RfRVEoVlBYX0NPREVDX0lOVkFMSURfUEFS
QU0sCisgICAgICAgICAgICB2cHhfY29kZWNfZW5jb2RlKG51bGxwdHIsIG51bGxwdHIsIDAsIDAs
IDAsIDApKTsKKyAgRVhQRUNUX0VRKFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNLAorICAgICAgICAg
ICAgdnB4X2NvZGVjX2VuY29kZShudWxscHRyLCAmaW1nLCAwLCAwLCAwLCAwKSk7CisgIEVYUEVD
VF9FUShWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwgdnB4X2NvZGVjX2Rlc3Ryb3kobnVsbHB0cikp
OworICBFWFBFQ1RfRVEoVlBYX0NPREVDX0lOVkFMSURfUEFSQU0sCisgICAgICAgICAgICB2cHhf
Y29kZWNfZW5jX2NvbmZpZ19kZWZhdWx0KG51bGxwdHIsIG51bGxwdHIsIDApKTsKKyAgRVhQRUNU
X0VRKFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNLAorICAgICAgICAgICAgdnB4X2NvZGVjX2VuY19j
b25maWdfZGVmYXVsdChudWxscHRyLCAmY2ZnLCAwKSk7CisgIEVYUEVDVF9ORSh2cHhfY29kZWNf
ZXJyb3IobnVsbHB0ciksIG51bGxwdHIpOwogCiAgIGZvciAoaW50IGkgPSAwOyBpIDwgTkVMRU1F
TlRTKGtDb2RlY3MpOyArK2kpIHsKICAgICBTQ09QRURfVFJBQ0UodnB4X2NvZGVjX2lmYWNlX25h
bWUoa0NvZGVjc1tpXSkpOwogICAgIEVYUEVDVF9FUShWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwK
LSAgICAgICAgICAgICAgdnB4X2NvZGVjX2VuY19pbml0KE5VTEwsIGtDb2RlY3NbaV0sIE5VTEws
IDApKTsKKyAgICAgICAgICAgICAgdnB4X2NvZGVjX2VuY19pbml0KG51bGxwdHIsIGtDb2RlY3Nb
aV0sIG51bGxwdHIsIDApKTsKICAgICBFWFBFQ1RfRVEoVlBYX0NPREVDX0lOVkFMSURfUEFSQU0s
Ci0gICAgICAgICAgICAgIHZweF9jb2RlY19lbmNfaW5pdCgmZW5jLCBrQ29kZWNzW2ldLCBOVUxM
LCAwKSk7CisgICAgICAgICAgICAgIHZweF9jb2RlY19lbmNfaW5pdCgmZW5jLCBrQ29kZWNzW2ld
LCBudWxscHRyLCAwKSk7CiAgICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNLAog
ICAgICAgICAgICAgICB2cHhfY29kZWNfZW5jX2NvbmZpZ19kZWZhdWx0KGtDb2RlY3NbaV0sICZj
ZmcsIDEpKTsKIAogICAgIEVYUEVDVF9FUShWUFhfQ09ERUNfT0ssIHZweF9jb2RlY19lbmNfY29u
ZmlnX2RlZmF1bHQoa0NvZGVjc1tpXSwgJmNmZywgMCkpOwogICAgIEVYUEVDVF9FUShWUFhfQ09E
RUNfT0ssIHZweF9jb2RlY19lbmNfaW5pdCgmZW5jLCBrQ29kZWNzW2ldLCAmY2ZnLCAwKSk7Ci0g
ICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19PSywgdnB4X2NvZGVjX2VuY29kZSgmZW5jLCBOVUxMLCAw
LCAwLCAwLCAwKSk7CisgICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19PSywgdnB4X2NvZGVjX2VuY29k
ZSgmZW5jLCBudWxscHRyLCAwLCAwLCAwLCAwKSk7CiAKICAgICBFWFBFQ1RfRVEoVlBYX0NPREVD
X09LLCB2cHhfY29kZWNfZGVzdHJveSgmZW5jKSk7CiAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC9lbmNvZGVfcGVyZl90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2VuY29kZV9wZXJm
X3Rlc3QuY2MKaW5kZXggMTQyZDllMmRhOGVmNTc3MjdhOTQyNjA0OWM2YzU1YzVmNzkzZjVmNi4u
MTQyYTU1OTUyYjdlNjE4MDMwNmQ4NTE5NGE3ZmJkMWZlNWYyMGRjYyAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L2VuY29kZV9wZXJmX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2Vu
Y29kZV9wZXJmX3Rlc3QuY2MKQEAgLTE4Myw2ICsxODMsNiBAQCBURVNUX1AoVlA5RW5jb2RlUGVy
ZlRlc3QsIFBlcmZUZXN0KSB7CiAgIH0KIH0KIAotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShW
UDlFbmNvZGVQZXJmVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpW
YWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a1JlYWxUaW1lKSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9T
VUlURShWUDlFbmNvZGVQZXJmVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVz
dGluZzo6VmFsdWVzKDo6bGlidnB4X3Rlc3Q6OmtSZWFsVGltZSkpOwogfSAgLy8gbmFtZXNwYWNl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZW5jb2RlX3Rlc3RfZHJpdmVyLmNjIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L2VuY29kZV90ZXN0X2RyaXZlci5jYwppbmRleCA4ZmRiZGI2MmFlN2RjMDQ2
OTlhYzAzNWU2OWM0ZTc0YTQwODRiMzlkLi4xY2UzOWVhZWZmYjQ3OTE2ZmNjMDM1MjYwYzAxMGM0
MGVmYzU3YWJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZW5jb2RlX3Rlc3RfZHJpdmVy
LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9lbmNvZGVfdGVzdF9kcml2ZXIuY2MKQEAgLTkxLDcg
KzkxLDcgQEAgdm9pZCBFbmNvZGVyOjpFbmNvZGVGcmFtZUludGVybmFsKGNvbnN0IFZpZGVvU291
cmNlICZ2aWRlbywKIAogdm9pZCBFbmNvZGVyOjpGbHVzaCgpIHsKICAgY29uc3QgdnB4X2NvZGVj
X2Vycl90IHJlcyA9Ci0gICAgICB2cHhfY29kZWNfZW5jb2RlKCZlbmNvZGVyXywgTlVMTCwgMCwg
MCwgMCwgZGVhZGxpbmVfKTsKKyAgICAgIHZweF9jb2RlY19lbmNvZGUoJmVuY29kZXJfLCBudWxs
cHRyLCAwLCAwLCAwLCBkZWFkbGluZV8pOwogICBpZiAoIWVuY29kZXJfLnByaXYpCiAgICAgQVNT
RVJUX0VRKFZQWF9DT0RFQ19FUlJPUiwgcmVzKSA8PCBFbmNvZGVyRXJyb3IoKTsKICAgZWxzZQpA
QCAtMTgyLDcgKzE4Miw3IEBAIHZvaWQgRW5jb2RlclRlc3Q6OlJ1bkxvb3AoVmlkZW9Tb3VyY2Ug
KnZpZGVvKSB7CiAgICAgQmVnaW5QYXNzSG9vayhwYXNzKTsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8
RW5jb2Rlcj4gZW5jb2RlcigKICAgICAgICAgY29kZWNfLT5DcmVhdGVFbmNvZGVyKGNmZ18sIGRl
YWRsaW5lXywgaW5pdF9mbGFnc18sICZzdGF0c18pKTsKLSAgICBBU1NFUlRfVFJVRShlbmNvZGVy
LmdldCgpICE9IE5VTEwpOworICAgIEFTU0VSVF9ORShlbmNvZGVyLmdldCgpLCBudWxscHRyKTsK
IAogICAgIEFTU0VSVF9OT19GQVRBTF9GQUlMVVJFKHZpZGVvLT5CZWdpbigpKTsKICAgICBlbmNv
ZGVyLT5Jbml0RW5jb2Rlcih2aWRlbyk7CkBAIC0xOTgsNyArMTk4LDcgQEAgdm9pZCBFbmNvZGVy
VGVzdDo6UnVuTG9vcChWaWRlb1NvdXJjZSAqdmlkZW8pIHsKICAgICAgICAgY29kZWNfLT5DcmVh
dGVEZWNvZGVyKGRlY19jZmcsIGRlY19pbml0X2ZsYWdzKSk7CiAgICAgYm9vbCBhZ2FpbjsKICAg
ICBmb3IgKGFnYWluID0gdHJ1ZTsgYWdhaW47IHZpZGVvLT5OZXh0KCkpIHsKLSAgICAgIGFnYWlu
ID0gKHZpZGVvLT5pbWcoKSAhPSBOVUxMKTsKKyAgICAgIGFnYWluID0gKHZpZGVvLT5pbWcoKSAh
PSBudWxscHRyKTsKIAogICAgICAgUHJlRW5jb2RlRnJhbWVIb29rKHZpZGVvKTsKICAgICAgIFBy
ZUVuY29kZUZyYW1lSG9vayh2aWRlbywgZW5jb2Rlci5nZXQoKSk7CkBAIC0yMTYsNyArMjE2LDcg
QEAgdm9pZCBFbmNvZGVyVGVzdDo6UnVuTG9vcChWaWRlb1NvdXJjZSAqdmlkZW8pIHsKICAgICAg
ICAgc3dpdGNoIChwa3QtPmtpbmQpIHsKICAgICAgICAgICBjYXNlIFZQWF9DT0RFQ19DWF9GUkFN
RV9QS1Q6CiAgICAgICAgICAgICBoYXNfY3hkYXRhID0gdHJ1ZTsKLSAgICAgICAgICAgIGlmIChk
ZWNvZGVyLmdldCgpICE9IE5VTEwgJiYgRG9EZWNvZGUoKSkgeworICAgICAgICAgICAgaWYgKGRl
Y29kZXIgIT0gbnVsbHB0ciAmJiBEb0RlY29kZSgpKSB7CiAgICAgICAgICAgICAgIFByZURlY29k
ZUZyYW1lSG9vayh2aWRlbywgZGVjb2Rlci5nZXQoKSk7CiAgICAgICAgICAgICAgIHZweF9jb2Rl
Y19lcnJfdCByZXNfZGVjID0gZGVjb2Rlci0+RGVjb2RlRnJhbWUoCiAgICAgICAgICAgICAgICAg
ICAoY29uc3QgdWludDhfdCAqKXBrdC0+ZGF0YS5mcmFtZS5idWYsIHBrdC0+ZGF0YS5mcmFtZS5z
eik7CkBAIC0yNDAsNyArMjQwLDcgQEAgdm9pZCBFbmNvZGVyVGVzdDo6UnVuTG9vcChWaWRlb1Nv
dXJjZSAqdmlkZW8pIHsKIAogICAgICAgLy8gRmx1c2ggdGhlIGRlY29kZXIgd2hlbiB0aGVyZSBh
cmUgbm8gbW9yZSBmcmFnbWVudHMuCiAgICAgICBpZiAoKGluaXRfZmxhZ3NfICYgVlBYX0NPREVD
X1VTRV9PVVRQVVRfUEFSVElUSU9OKSAmJiBoYXNfZHhkYXRhKSB7Ci0gICAgICAgIGNvbnN0IHZw
eF9jb2RlY19lcnJfdCByZXNfZGVjID0gZGVjb2Rlci0+RGVjb2RlRnJhbWUoTlVMTCwgMCk7Cisg
ICAgICAgIGNvbnN0IHZweF9jb2RlY19lcnJfdCByZXNfZGVjID0gZGVjb2Rlci0+RGVjb2RlRnJh
bWUobnVsbHB0ciwgMCk7CiAgICAgICAgIGlmICghSGFuZGxlRGVjb2RlUmVzdWx0KHJlc19kZWMs
ICp2aWRlbywgZGVjb2Rlci5nZXQoKSkpIGJyZWFrOwogICAgICAgfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3Rlc3QvZW5jb2RlX3Rlc3RfZHJpdmVyLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZW5j
b2RlX3Rlc3RfZHJpdmVyLmgKaW5kZXggM2VkYmE0YjkyNmE1NTYzMzkxNWNlY2Q4YTUwZDdjZTg0
NDIwM2YyOC4uMzhjNjE5NTJlYjg3OTcxODViNTE5MDQ4M2ZhNjVkOWFkYmE3NjI3ZSAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90ZXN0L2VuY29kZV90ZXN0X2RyaXZlci5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC9lbmNvZGVfdGVzdF9kcml2ZXIuaApAQCAtMTQ4LDYgKzE0OCwxMyBAQCBjbGFzcyBF
bmNvZGVyIHsKICAgICBBU1NFUlRfRVEoVlBYX0NPREVDX09LLCByZXMpIDw8IEVuY29kZXJFcnJv
cigpOwogICB9CiAKKyNpZiBDT05GSUdfVlA5X0VOQ09ERVIKKyAgdm9pZCBDb250cm9sKGludCBj
dHJsX2lkLCB2cHhfcmNfZnVuY3NfdCAqYXJnKSB7CisgICAgY29uc3QgdnB4X2NvZGVjX2Vycl90
IHJlcyA9IHZweF9jb2RlY19jb250cm9sXygmZW5jb2Rlcl8sIGN0cmxfaWQsIGFyZyk7CisgICAg
QVNTRVJUX0VRKFZQWF9DT0RFQ19PSywgcmVzKSA8PCBFbmNvZGVyRXJyb3IoKTsKKyAgfQorI2Vu
ZGlmICAvLyBDT05GSUdfVlA5X0VOQ09ERVIKKwogI2lmIENPTkZJR19WUDhfRU5DT0RFUiB8fCBD
T05GSUdfVlA5X0VOQ09ERVIKICAgdm9pZCBDb250cm9sKGludCBjdHJsX2lkLCB2cHhfYWN0aXZl
X21hcF90ICphcmcpIHsKICAgICBjb25zdCB2cHhfY29kZWNfZXJyX3QgcmVzID0gdnB4X2NvZGVj
X2NvbnRyb2xfKCZlbmNvZGVyXywgY3RybF9pZCwgYXJnKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC9lcnJvcl9yZXNpbGllbmNlX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZXJyb3Jf
cmVzaWxpZW5jZV90ZXN0LmNjCmluZGV4IDAzMGI2N2M1NzI5MzhhY2ZiZWU4MTczOGVlOWM4ZDBm
NTgzNjg4YjAuLjQ1YTMyN2VjMmZkOTRlOWQ3MTk5N2Y5M2YyYzc3MTY2MTU2MjA0YjUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9lcnJvcl9yZXNpbGllbmNlX3Rlc3QuY2MKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L2Vycm9yX3Jlc2lsaWVuY2VfdGVzdC5jYwpAQCAtNTczLDEwICs1NzMsMTAg
QEAgVEVTVF9QKEVycm9yUmVzaWxpZW5jZVRlc3RMYXJnZUNvZGVjQ29udHJvbHMsIENvZGVjQ29u
dHJvbDNUZW1wb3JhbExheWVycykgewogICB9CiB9CiAKLVZQOF9JTlNUQU5USUFURV9URVNUX0NB
U0UoRXJyb3JSZXNpbGllbmNlVGVzdExhcmdlLCBPTkVfUEFTU19URVNUX01PREVTLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh0cnVlKSk7Ci1WUDhfSU5TVEFO
VElBVEVfVEVTVF9DQVNFKEVycm9yUmVzaWxpZW5jZVRlc3RMYXJnZUNvZGVjQ29udHJvbHMsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgIE9ORV9QQVNTX1RFU1RfTU9ERVMpOwotVlA5X0lOU1RB
TlRJQVRFX1RFU1RfQ0FTRShFcnJvclJlc2lsaWVuY2VUZXN0TGFyZ2UsIE9ORV9QQVNTX1RFU1Rf
TU9ERVMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHRydWUp
KTsKK1ZQOF9JTlNUQU5USUFURV9URVNUX1NVSVRFKEVycm9yUmVzaWxpZW5jZVRlc3RMYXJnZSwg
T05FX1BBU1NfVEVTVF9NT0RFUywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGlu
Zzo6VmFsdWVzKHRydWUpKTsKK1ZQOF9JTlNUQU5USUFURV9URVNUX1NVSVRFKEVycm9yUmVzaWxp
ZW5jZVRlc3RMYXJnZUNvZGVjQ29udHJvbHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBP
TkVfUEFTU19URVNUX01PREVTKTsKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKEVycm9yUmVz
aWxpZW5jZVRlc3RMYXJnZSwgT05FX1BBU1NfVEVTVF9NT0RFUywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHRydWUpKTsKIH0gIC8vIG5hbWVzcGFjZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2V4dGVybmFsX2ZyYW1lX2J1ZmZlcl90ZXN0LmNjIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90ZXN0L2V4dGVybmFsX2ZyYW1lX2J1ZmZlcl90ZXN0LmNjCmluZGV4IDQzOGVl
YjNlY2RmNWUyMWJiY2Y2MmJiMjRiZDAyZWNiZDIxOGViNGQuLjNiZDRhMWM0NzMzY2EwMzBlZmMy
ZTlhODk2OGEyMmRjZTQwZGI5MDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9leHRlcm5h
bF9mcmFtZV9idWZmZXJfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZXh0ZXJuYWxfZnJh
bWVfYnVmZmVyX3Rlc3QuY2MKQEAgLTM2LDcgKzM2LDcgQEAgc3RydWN0IEV4dGVybmFsRnJhbWVC
dWZmZXIgewogY2xhc3MgRXh0ZXJuYWxGcmFtZUJ1ZmZlckxpc3QgewogIHB1YmxpYzoKICAgRXh0
ZXJuYWxGcmFtZUJ1ZmZlckxpc3QoKQotICAgICAgOiBudW1fYnVmZmVyc18oMCksIG51bV91c2Vk
X2J1ZmZlcnNfKDApLCBleHRfZmJfbGlzdF8oTlVMTCkge30KKyAgICAgIDogbnVtX2J1ZmZlcnNf
KDApLCBudW1fdXNlZF9idWZmZXJzXygwKSwgZXh0X2ZiX2xpc3RfKG51bGxwdHIpIHt9CiAKICAg
dmlydHVhbCB+RXh0ZXJuYWxGcmFtZUJ1ZmZlckxpc3QoKSB7CiAgICAgZm9yIChpbnQgaSA9IDA7
IGkgPCBudW1fYnVmZmVyc187ICsraSkgewpAQCAtNTEsNyArNTEsNyBAQCBjbGFzcyBFeHRlcm5h
bEZyYW1lQnVmZmVyTGlzdCB7CiAKICAgICBudW1fYnVmZmVyc18gPSBudW1fYnVmZmVyczsKICAg
ICBleHRfZmJfbGlzdF8gPSBuZXcgRXh0ZXJuYWxGcmFtZUJ1ZmZlcltudW1fYnVmZmVyc19dOwot
ICAgIEVYUEVDVF9UUlVFKGV4dF9mYl9saXN0XyAhPSBOVUxMKTsKKyAgICBFWFBFQ1RfTkUoZXh0
X2ZiX2xpc3RfLCBudWxscHRyKTsKICAgICBtZW1zZXQoZXh0X2ZiX2xpc3RfLCAwLCBzaXplb2Yo
ZXh0X2ZiX2xpc3RfWzBdKSAqIG51bV9idWZmZXJzXyk7CiAgICAgcmV0dXJuIHRydWU7CiAgIH0K
QEAgLTYxLDcgKzYxLDcgQEAgY2xhc3MgRXh0ZXJuYWxGcmFtZUJ1ZmZlckxpc3QgewogICAvLyBm
cmFtZSBidWZmZXIgaXMgaW4gdXNlIGJ5IGxpYnZweC4gRmluYWxseSBzZXRzIHxmYnwgdG8gcG9p
bnQgdG8gdGhlCiAgIC8vIGV4dGVybmFsIGZyYW1lIGJ1ZmZlci4gUmV0dXJucyA8IDAgb24gYW4g
ZXJyb3IuCiAgIGludCBHZXRGcmVlRnJhbWVCdWZmZXIoc2l6ZV90IG1pbl9zaXplLCB2cHhfY29k
ZWNfZnJhbWVfYnVmZmVyX3QgKmZiKSB7Ci0gICAgRVhQRUNUX1RSVUUoZmIgIT0gTlVMTCk7Cisg
ICAgRVhQRUNUX05FKGZiLCBudWxscHRyKTsKICAgICBjb25zdCBpbnQgaWR4ID0gRmluZEZyZWVC
dWZmZXJJbmRleCgpOwogICAgIGlmIChpZHggPT0gbnVtX2J1ZmZlcnNfKSByZXR1cm4gLTE7CiAK
QEAgLTgxLDEzICs4MSwxMyBAQCBjbGFzcyBFeHRlcm5hbEZyYW1lQnVmZmVyTGlzdCB7CiAgIC8v
IFRlc3QgZnVuY3Rpb24gdGhhdCB3aWxsIG5vdCBhbGxvY2F0ZSBhbnkgZGF0YSBmb3IgdGhlIGZy
YW1lIGJ1ZmZlci4KICAgLy8gUmV0dXJucyA8IDAgb24gYW4gZXJyb3IuCiAgIGludCBHZXRaZXJv
RnJhbWVCdWZmZXIoc2l6ZV90IG1pbl9zaXplLCB2cHhfY29kZWNfZnJhbWVfYnVmZmVyX3QgKmZi
KSB7Ci0gICAgRVhQRUNUX1RSVUUoZmIgIT0gTlVMTCk7CisgICAgRVhQRUNUX05FKGZiLCBudWxs
cHRyKTsKICAgICBjb25zdCBpbnQgaWR4ID0gRmluZEZyZWVCdWZmZXJJbmRleCgpOwogICAgIGlm
IChpZHggPT0gbnVtX2J1ZmZlcnNfKSByZXR1cm4gLTE7CiAKICAgICBpZiAoZXh0X2ZiX2xpc3Rf
W2lkeF0uc2l6ZSA8IG1pbl9zaXplKSB7CiAgICAgICBkZWxldGVbXSBleHRfZmJfbGlzdF9baWR4
XS5kYXRhOwotICAgICAgZXh0X2ZiX2xpc3RfW2lkeF0uZGF0YSA9IE5VTEw7CisgICAgICBleHRf
ZmJfbGlzdF9baWR4XS5kYXRhID0gbnVsbHB0cjsKICAgICAgIGV4dF9mYl9saXN0X1tpZHhdLnNp
emUgPSBtaW5fc2l6ZTsKICAgICB9CiAKQEAgLTk4LDE0ICs5OCwxNCBAQCBjbGFzcyBFeHRlcm5h
bEZyYW1lQnVmZmVyTGlzdCB7CiAgIC8vIE1hcmtzIHRoZSBleHRlcm5hbCBmcmFtZSBidWZmZXIg
dGhhdCB8ZmJ8IGlzIHBvaW50aW5nIHRvIGFzIGZyZWUuCiAgIC8vIFJldHVybnMgPCAwIG9uIGFu
IGVycm9yLgogICBpbnQgUmV0dXJuRnJhbWVCdWZmZXIodnB4X2NvZGVjX2ZyYW1lX2J1ZmZlcl90
ICpmYikgewotICAgIGlmIChmYiA9PSBOVUxMKSB7Ci0gICAgICBFWFBFQ1RfVFJVRShmYiAhPSBO
VUxMKTsKKyAgICBpZiAoZmIgPT0gbnVsbHB0cikgeworICAgICAgRVhQRUNUX05FKGZiLCBudWxs
cHRyKTsKICAgICAgIHJldHVybiAtMTsKICAgICB9CiAgICAgRXh0ZXJuYWxGcmFtZUJ1ZmZlciAq
Y29uc3QgZXh0X2ZiID0KICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxFeHRlcm5hbEZyYW1lQnVm
ZmVyICo+KGZiLT5wcml2KTsKLSAgICBpZiAoZXh0X2ZiID09IE5VTEwpIHsKLSAgICAgIEVYUEVD
VF9UUlVFKGV4dF9mYiAhPSBOVUxMKTsKKyAgICBpZiAoZXh0X2ZiID09IG51bGxwdHIpIHsKKyAg
ICAgIEVYUEVDVF9ORShleHRfZmIsIG51bGxwdHIpOwogICAgICAgcmV0dXJuIC0xOwogICAgIH0K
ICAgICBFWFBFQ1RfRVEoMSwgZXh0X2ZiLT5pbl91c2UpOwpAQCAtMTE3LDcgKzExNyw3IEBAIGNs
YXNzIEV4dGVybmFsRnJhbWVCdWZmZXJMaXN0IHsKICAgLy8gQ2hlY2tzIHRoYXQgdGhlIHZweF9p
bWFnZV90IGRhdGEgaXMgY29udGFpbmVkIHdpdGhpbiB0aGUgZXh0ZXJuYWwgZnJhbWUKICAgLy8g
YnVmZmVyIHByaXZhdGUgZGF0YSBwYXNzZWQgYmFjayBpbiB0aGUgdnB4X2ltYWdlX3QuCiAgIHZv
aWQgQ2hlY2tJbWFnZUZyYW1lQnVmZmVyKGNvbnN0IHZweF9pbWFnZV90ICppbWcpIHsKLSAgICBp
ZiAoaW1nLT5mYl9wcml2ICE9IE5VTEwpIHsKKyAgICBpZiAoaW1nLT5mYl9wcml2ICE9IG51bGxw
dHIpIHsKICAgICAgIGNvbnN0IHN0cnVjdCBFeHRlcm5hbEZyYW1lQnVmZmVyICpjb25zdCBleHRf
ZmIgPQogICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8RXh0ZXJuYWxGcmFtZUJ1ZmZlciAqPihp
bWctPmZiX3ByaXYpOwogCkBAIC0xNDMsNyArMTQzLDcgQEAgY2xhc3MgRXh0ZXJuYWxGcmFtZUJ1
ZmZlckxpc3QgewogICAvLyBTZXRzIHxmYnwgdG8gYW4gZXh0ZXJuYWwgZnJhbWUgYnVmZmVyLiBp
ZHggaXMgdGhlIGluZGV4IGludG8gdGhlIGZyYW1lCiAgIC8vIGJ1ZmZlciBsaXN0LgogICB2b2lk
IFNldEZyYW1lQnVmZmVyKGludCBpZHgsIHZweF9jb2RlY19mcmFtZV9idWZmZXJfdCAqZmIpIHsK
LSAgICBBU1NFUlRfVFJVRShmYiAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoZmIsIG51bGxwdHIp
OwogICAgIGZiLT5kYXRhID0gZXh0X2ZiX2xpc3RfW2lkeF0uZGF0YTsKICAgICBmYi0+c2l6ZSA9
IGV4dF9mYl9saXN0X1tpZHhdLnNpemU7CiAgICAgQVNTRVJUX0VRKDAsIGV4dF9mYl9saXN0X1tp
ZHhdLmluX3VzZSk7CkBAIC0yMDgsMTAgKzIwOCwxMCBAQCBjbGFzcyBFeHRlcm5hbEZyYW1lQnVm
ZmVyTUQ1VGVzdAogIHByb3RlY3RlZDoKICAgRXh0ZXJuYWxGcmFtZUJ1ZmZlck1ENVRlc3QoKQog
ICAgICAgOiBEZWNvZGVyVGVzdChHRVRfUEFSQU0oOjpsaWJ2cHhfdGVzdDo6a0NvZGVjRmFjdG9y
eVBhcmFtKSksCi0gICAgICAgIG1kNV9maWxlXyhOVUxMKSwgbnVtX2J1ZmZlcnNfKDApIHt9Cisg
ICAgICAgIG1kNV9maWxlXyhudWxscHRyKSwgbnVtX2J1ZmZlcnNfKDApIHt9CiAKICAgdmlydHVh
bCB+RXh0ZXJuYWxGcmFtZUJ1ZmZlck1ENVRlc3QoKSB7Ci0gICAgaWYgKG1kNV9maWxlXyAhPSBO
VUxMKSBmY2xvc2UobWQ1X2ZpbGVfKTsKKyAgICBpZiAobWQ1X2ZpbGVfICE9IG51bGxwdHIpIGZj
bG9zZShtZDVfZmlsZV8pOwogICB9CiAKICAgdmlydHVhbCB2b2lkIFByZURlY29kZUZyYW1lSG9v
aygKQEAgLTIyOCwxMyArMjI4LDEzIEBAIGNsYXNzIEV4dGVybmFsRnJhbWVCdWZmZXJNRDVUZXN0
CiAKICAgdm9pZCBPcGVuTUQ1RmlsZShjb25zdCBzdGQ6OnN0cmluZyAmbWQ1X2ZpbGVfbmFtZV8p
IHsKICAgICBtZDVfZmlsZV8gPSBsaWJ2cHhfdGVzdDo6T3BlblRlc3REYXRhRmlsZShtZDVfZmls
ZV9uYW1lXyk7Ci0gICAgQVNTRVJUX1RSVUUobWQ1X2ZpbGVfICE9IE5VTEwpCisgICAgQVNTRVJU
X05FKG1kNV9maWxlXywgbnVsbHB0cikKICAgICAgICAgPDwgIk1kNSBmaWxlIG9wZW4gZmFpbGVk
LiBGaWxlbmFtZTogIiA8PCBtZDVfZmlsZV9uYW1lXzsKICAgfQogCiAgIHZpcnR1YWwgdm9pZCBE
ZWNvbXByZXNzZWRGcmFtZUhvb2soY29uc3QgdnB4X2ltYWdlX3QgJmltZywKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBpbnQgZnJhbWVfbnVtYmVy
KSB7Ci0gICAgQVNTRVJUX1RSVUUobWQ1X2ZpbGVfICE9IE5VTEwpOworICAgIEFTU0VSVF9ORSht
ZDVfZmlsZV8sIG51bGxwdHIpOwogICAgIGNoYXIgZXhwZWN0ZWRfbWQ1WzMzXTsKICAgICBjaGFy
IGp1bmtbMTI4XTsKIApAQCAtMjg2LDI0ICsyODYsMjUgQEAgY29uc3QgY2hhciBrVlA5Tm9uUmVm
VGVzdEZpbGVbXSA9ICJ2cDkwLTItMjItc3ZjXzEyODB4NzIwXzEud2VibSI7CiAvLyBDbGFzcyBm
b3IgdGVzdGluZyBwYXNzaW5nIGluIGV4dGVybmFsIGZyYW1lIGJ1ZmZlcnMgdG8gbGlidnB4Lgog
Y2xhc3MgRXh0ZXJuYWxGcmFtZUJ1ZmZlclRlc3QgOiBwdWJsaWMgOjp0ZXN0aW5nOjpUZXN0IHsK
ICBwcm90ZWN0ZWQ6Ci0gIEV4dGVybmFsRnJhbWVCdWZmZXJUZXN0KCkgOiB2aWRlb18oTlVMTCks
IGRlY29kZXJfKE5VTEwpLCBudW1fYnVmZmVyc18oMCkge30KKyAgRXh0ZXJuYWxGcmFtZUJ1ZmZl
clRlc3QoKQorICAgICAgOiB2aWRlb18obnVsbHB0ciksIGRlY29kZXJfKG51bGxwdHIpLCBudW1f
YnVmZmVyc18oMCkge30KIAogICB2aXJ0dWFsIHZvaWQgU2V0VXAoKSB7CiAgICAgdmlkZW9fID0g
bmV3IGxpYnZweF90ZXN0OjpXZWJNVmlkZW9Tb3VyY2Uoa1ZQOVRlc3RGaWxlKTsKLSAgICBBU1NF
UlRfVFJVRSh2aWRlb18gIT0gTlVMTCk7CisgICAgQVNTRVJUX05FKHZpZGVvXywgbnVsbHB0cik7
CiAgICAgdmlkZW9fLT5Jbml0KCk7CiAgICAgdmlkZW9fLT5CZWdpbigpOwogCiAgICAgdnB4X2Nv
ZGVjX2RlY19jZmdfdCBjZmcgPSB2cHhfY29kZWNfZGVjX2NmZ190KCk7CiAgICAgZGVjb2Rlcl8g
PSBuZXcgbGlidnB4X3Rlc3Q6OlZQOURlY29kZXIoY2ZnLCAwKTsKLSAgICBBU1NFUlRfVFJVRShk
ZWNvZGVyXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoZGVjb2Rlcl8sIG51bGxwdHIpOwogICB9
CiAKICAgdmlydHVhbCB2b2lkIFRlYXJEb3duKCkgewogICAgIGRlbGV0ZSBkZWNvZGVyXzsKLSAg
ICBkZWNvZGVyXyA9IE5VTEw7CisgICAgZGVjb2Rlcl8gPSBudWxscHRyOwogICAgIGRlbGV0ZSB2
aWRlb187Ci0gICAgdmlkZW9fID0gTlVMTDsKKyAgICB2aWRlb18gPSBudWxscHRyOwogICB9CiAK
ICAgLy8gUGFzc2VzIHRoZSBleHRlcm5hbCBmcmFtZSBidWZmZXIgaW5mb3JtYXRpb24gdG8gbGli
dnB4LgpAQCAtMzI3LDcgKzMyOCw3IEBAIGNsYXNzIEV4dGVybmFsRnJhbWVCdWZmZXJUZXN0IDog
cHVibGljIDo6dGVzdGluZzo6VGVzdCB7CiAgIH0KIAogICB2cHhfY29kZWNfZXJyX3QgRGVjb2Rl
UmVtYWluaW5nRnJhbWVzKCkgewotICAgIGZvciAoOyB2aWRlb18tPmN4ZGF0YSgpICE9IE5VTEw7
IHZpZGVvXy0+TmV4dCgpKSB7CisgICAgZm9yICg7IHZpZGVvXy0+Y3hkYXRhKCkgIT0gbnVsbHB0
cjsgdmlkZW9fLT5OZXh0KCkpIHsKICAgICAgIGNvbnN0IHZweF9jb2RlY19lcnJfdCByZXMgPQog
ICAgICAgICAgIGRlY29kZXJfLT5EZWNvZGVGcmFtZSh2aWRlb18tPmN4ZGF0YSgpLCB2aWRlb18t
PmZyYW1lX3NpemUoKSk7CiAgICAgICBpZiAocmVzICE9IFZQWF9DT0RFQ19PSykgcmV0dXJuIHJl
czsKQEAgLTMzOCwxMCArMzM5LDEwIEBAIGNsYXNzIEV4dGVybmFsRnJhbWVCdWZmZXJUZXN0IDog
cHVibGljIDo6dGVzdGluZzo6VGVzdCB7CiAKICAgdm9pZCBDaGVja0RlY29kZWRGcmFtZXMoKSB7
CiAgICAgbGlidnB4X3Rlc3Q6OkR4RGF0YUl0ZXJhdG9yIGRlY19pdGVyID0gZGVjb2Rlcl8tPkdl
dER4RGF0YSgpOwotICAgIGNvbnN0IHZweF9pbWFnZV90ICppbWcgPSBOVUxMOworICAgIGNvbnN0
IHZweF9pbWFnZV90ICppbWcgPSBudWxscHRyOwogCiAgICAgLy8gR2V0IGRlY29tcHJlc3NlZCBk
YXRhCi0gICAgd2hpbGUgKChpbWcgPSBkZWNfaXRlci5OZXh0KCkpICE9IE5VTEwpIHsKKyAgICB3
aGlsZSAoKGltZyA9IGRlY19pdGVyLk5leHQoKSkgIT0gbnVsbHB0cikgewogICAgICAgZmJfbGlz
dF8uQ2hlY2tJbWFnZUZyYW1lQnVmZmVyKGltZyk7CiAgICAgfQogICB9CkBAIC0zNTYsMTMgKzM1
NywxMyBAQCBjbGFzcyBFeHRlcm5hbEZyYW1lQnVmZmVyTm9uUmVmVGVzdCA6IHB1YmxpYyBFeHRl
cm5hbEZyYW1lQnVmZmVyVGVzdCB7CiAgcHJvdGVjdGVkOgogICB2aXJ0dWFsIHZvaWQgU2V0VXAo
KSB7CiAgICAgdmlkZW9fID0gbmV3IGxpYnZweF90ZXN0OjpXZWJNVmlkZW9Tb3VyY2Uoa1ZQOU5v
blJlZlRlc3RGaWxlKTsKLSAgICBBU1NFUlRfVFJVRSh2aWRlb18gIT0gTlVMTCk7CisgICAgQVNT
RVJUX05FKHZpZGVvXywgbnVsbHB0cik7CiAgICAgdmlkZW9fLT5Jbml0KCk7CiAgICAgdmlkZW9f
LT5CZWdpbigpOwogCiAgICAgdnB4X2NvZGVjX2RlY19jZmdfdCBjZmcgPSB2cHhfY29kZWNfZGVj
X2NmZ190KCk7CiAgICAgZGVjb2Rlcl8gPSBuZXcgbGlidnB4X3Rlc3Q6OlZQOURlY29kZXIoY2Zn
LCAwKTsKLSAgICBBU1NFUlRfVFJVRShkZWNvZGVyXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUo
ZGVjb2Rlcl8sIG51bGxwdHIpOwogICB9CiAKICAgdmlydHVhbCB2b2lkIENoZWNrRnJhbWVCdWZm
ZXJSZWxlYXNlKCkgewpAQCAtNDA1LDcgKzQwNiw3IEBAIFRFU1RfUChFeHRlcm5hbEZyYW1lQnVm
ZmVyTUQ1VGVzdCwgRXh0RkJNRDVNYXRjaCkgewogICAgIHJldHVybjsKICNlbmRpZgogICB9Ci0g
IEFTU0VSVF9UUlVFKHZpZGVvLmdldCgpICE9IE5VTEwpOworICBBU1NFUlRfTkUodmlkZW8uZ2V0
KCksIG51bGxwdHIpOwogICB2aWRlby0+SW5pdCgpOwogCiAgIC8vIENvbnN0cnVjdCBtZDUgZmls
ZSBuYW1lLgpAQCAtNDgyLDEzICs0ODMsMTQgQEAgVEVTVF9GKEV4dGVybmFsRnJhbWVCdWZmZXJU
ZXN0LCBOdWxsR2V0RnVuY3Rpb24pIHsKICAgY29uc3QgaW50IG51bV9idWZmZXJzID0gVlA5X01B
WElNVU1fUkVGX0JVRkZFUlMgKyBWUFhfTUFYSU1VTV9XT1JLX0JVRkZFUlM7CiAgIEFTU0VSVF9F
USgKICAgICAgIFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNLAotICAgICAgU2V0RnJhbWVCdWZmZXJG
dW5jdGlvbnMobnVtX2J1ZmZlcnMsIE5VTEwsIHJlbGVhc2VfdnA5X2ZyYW1lX2J1ZmZlcikpOwor
ICAgICAgU2V0RnJhbWVCdWZmZXJGdW5jdGlvbnMobnVtX2J1ZmZlcnMsIG51bGxwdHIsIHJlbGVh
c2VfdnA5X2ZyYW1lX2J1ZmZlcikpOwogfQogCiBURVNUX0YoRXh0ZXJuYWxGcmFtZUJ1ZmZlclRl
c3QsIE51bGxSZWxlYXNlRnVuY3Rpb24pIHsKICAgY29uc3QgaW50IG51bV9idWZmZXJzID0gVlA5
X01BWElNVU1fUkVGX0JVRkZFUlMgKyBWUFhfTUFYSU1VTV9XT1JLX0JVRkZFUlM7Ci0gIEFTU0VS
VF9FUShWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwKLSAgICAgICAgICAgIFNldEZyYW1lQnVmZmVy
RnVuY3Rpb25zKG51bV9idWZmZXJzLCBnZXRfdnA5X2ZyYW1lX2J1ZmZlciwgTlVMTCkpOworICBB
U1NFUlRfRVEoCisgICAgICBWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwKKyAgICAgIFNldEZyYW1l
QnVmZmVyRnVuY3Rpb25zKG51bV9idWZmZXJzLCBnZXRfdnA5X2ZyYW1lX2J1ZmZlciwgbnVsbHB0
cikpOwogfQogCiBURVNUX0YoRXh0ZXJuYWxGcmFtZUJ1ZmZlclRlc3QsIFNldEFmdGVyRGVjb2Rl
KSB7CkBAIC01MDksNyArNTExLDcgQEAgVEVTVF9GKEV4dGVybmFsRnJhbWVCdWZmZXJOb25SZWZU
ZXN0LCBSZWxlYXNlTm9uUmVmRnJhbWVCdWZmZXIpIHsKIH0KICNlbmRpZiAgLy8gQ09ORklHX1dF
Qk1fSU8KIAotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRSgKK1ZQOV9JTlNUQU5USUFURV9URVNU
X1NVSVRFKAogICAgIEV4dGVybmFsRnJhbWVCdWZmZXJNRDVUZXN0LAogICAgIDo6dGVzdGluZzo6
VmFsdWVzSW4obGlidnB4X3Rlc3Q6OmtWUDlUZXN0VmVjdG9ycywKICAgICAgICAgICAgICAgICAg
ICAgICAgIGxpYnZweF90ZXN0OjprVlA5VGVzdFZlY3RvcnMgKwpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC90ZXN0L2ZkY3Q4eDhfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9mZGN0OHg4X3Rlc3Qu
Y2MKaW5kZXggMWQ0ZjMxODcxZjBjYmVmYjMxOWY1NmM1NzQ0NzcyZDhiOGMzNDYyNi4uMDgyMjY2
NmU3MDZkZmI3NDM4NmZlN2EyOGVkNDEwZmE4YWNkMjBmYyAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90ZXN0L2ZkY3Q4eDhfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZmRjdDh4OF90ZXN0
LmNjCkBAIC01OTgsNiArNTk4LDcgQEAgVEVTVF9QKEZ3ZFRyYW5zOHg4SFQsIFJvdW5kVHJpcEVy
cm9yQ2hlY2spIHsgUnVuUm91bmRUcmlwRXJyb3JDaGVjaygpOyB9CiAKIFRFU1RfUChGd2RUcmFu
czh4OEhULCBFeHRyZW1hbENoZWNrKSB7IFJ1bkV4dHJlbWFsQ2hlY2soKTsgfQogCisjaWYgSEFW
RV9TU0UyICYmIENPTkZJR19WUDlfSElHSEJJVERFUFRIICYmICFDT05GSUdfRU1VTEFURV9IQVJE
V0FSRQogY2xhc3MgSW52VHJhbnM4eDhEQ1QgOiBwdWJsaWMgRndkVHJhbnM4eDhUZXN0QmFzZSwK
ICAgICAgICAgICAgICAgICAgICAgICAgcHVibGljIDo6dGVzdGluZzo6VGVzdFdpdGhQYXJhbTxJ
ZGN0OHg4UGFyYW0+IHsKICBwdWJsaWM6CkBAIC02MjQsMjkgKzYyNSwzMSBAQCBjbGFzcyBJbnZU
cmFuczh4OERDVCA6IHB1YmxpYyBGd2RUcmFuczh4OFRlc3RCYXNlLAogICBJZGN0RnVuYyBpbnZf
dHhmbV87CiAgIGludCB0aHJlc2hfOwogfTsKK0dURVNUX0FMTE9XX1VOSU5TVEFOVElBVEVEX1BB
UkFNRVRFUklaRURfVEVTVChJbnZUcmFuczh4OERDVCk7CiAKIFRFU1RfUChJbnZUcmFuczh4OERD
VCwgQ29tcGFyZVJlZmVyZW5jZSkgewogICBDb21wYXJlSW52UmVmZXJlbmNlKHJlZl90eGZtXywg
dGhyZXNoXyk7CiB9CisjZW5kaWYgIC8vIEhBVkVfU1NFMiAmJiBDT05GSUdfVlA5X0hJR0hCSVRE
RVBUSCAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKIAogdXNpbmcgc3RkOjptYWtlX3R1cGxl
OwogCiAjaWYgQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9Q
KAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEMsIEZ3ZFRyYW5zOHg4RENULAogICAg
IDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBtYWtlX3R1cGxlKCZ2cHhfZmRjdDh4OF9jLCAm
dnB4X2lkY3Q4eDhfNjRfYWRkX2MsIDAsIFZQWF9CSVRTXzgpLAogICAgICAgICBtYWtlX3R1cGxl
KCZ2cHhfaGlnaGJkX2ZkY3Q4eDhfYywgJmlkY3Q4eDhfMTAsIDAsIFZQWF9CSVRTXzEwKSwKICAg
ICAgICAgbWFrZV90dXBsZSgmdnB4X2hpZ2hiZF9mZGN0OHg4X2MsICZpZGN0OHg4XzEyLCAwLCBW
UFhfQklUU18xMikpKTsKICNlbHNlCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChDLCBGd2RUcmFu
czh4OERDVCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2Vf
dHVwbGUoJnZweF9mZGN0OHg4X2MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICZ2cHhfaWRjdDh4OF82NF9hZGRfYywgMCwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVlBYX0JJVFNfOCkpKTsK
K0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDLCBGd2RUcmFuczh4OERDVCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfZmRjdDh4OF9j
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
JnZweF9pZGN0OHg4XzY0X2FkZF9jLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgVlBYX0JJVFNfOCkpKTsKICNlbmRpZiAgLy8gQ09ORklH
X1ZQOV9ISUdIQklUREVQVEgKIAogI2lmIENPTkZJR19WUDlfSElHSEJJVERFUFRICi1JTlNUQU5U
SUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBDLCBGd2RU
cmFuczh4OEhULAogICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBtYWtlX3R1cGxlKCZ2
cDlfZmh0OHg4X2MsICZ2cDlfaWh0OHg4XzY0X2FkZF9jLCAwLCBWUFhfQklUU184KSwKQEAgLTY2
Miw3ICs2NjUsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgbWFrZV90dXBs
ZSgmdnA5X2ZodDh4OF9jLCAmdnA5X2lodDh4OF82NF9hZGRfYywgMiwgVlBYX0JJVFNfOCksCiAg
ICAgICAgIG1ha2VfdHVwbGUoJnZwOV9maHQ4eDhfYywgJnZwOV9paHQ4eDhfNjRfYWRkX2MsIDMs
IFZQWF9CSVRTXzgpKSk7CiAjZWxzZQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5U
SUFURV9URVNUX1NVSVRFX1AoCiAgICAgQywgRndkVHJhbnM4eDhIVCwKICAgICA6OnRlc3Rpbmc6
OlZhbHVlcygKICAgICAgICAgbWFrZV90dXBsZSgmdnA5X2ZodDh4OF9jLCAmdnA5X2lodDh4OF82
NF9hZGRfYywgMCwgVlBYX0JJVFNfOCksCkBAIC02NzIsMTMgKzY3NSwxMyBAQCBJTlNUQU5USUFU
RV9URVNUX0NBU0VfUCgKICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKIAogI2lm
IEhBVkVfTkVPTiAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKLUlOU1RBTlRJQVRFX1RFU1Rf
Q0FTRV9QKE5FT04sIEZ3ZFRyYW5zOHg4RENULAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3Q4eDhfbmVvbiwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9pZGN0OHg4XzY0
X2FkZF9uZW9uLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAwLCBWUFhfQklUU184KSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE5FT04s
IEZ3ZFRyYW5zOHg4RENULAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFs
dWVzKG1ha2VfdHVwbGUoJnZweF9mZGN0OHg4X25lb24sCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2lkY3Q4eDhfNjRfYWRkX25lb24s
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAw
LCBWUFhfQklUU184KSkpOwogCiAjaWYgIUNPTkZJR19WUDlfSElHSEJJVERFUFRICi1JTlNUQU5U
SUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBORU9OLCBG
d2RUcmFuczh4OEhULAogICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBtYWtlX3R1cGxl
KCZ2cDlfZmh0OHg4X2MsICZ2cDlfaWh0OHg4XzY0X2FkZF9uZW9uLCAwLCBWUFhfQklUU184KSwK
QEAgLTY4OSwxMSArNjkyLDExIEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAv
LyBIQVZFX05FT04gJiYgIUNPTkZJR19FTVVMQVRFX0hBUkRXQVJFCiAKICNpZiBIQVZFX1NTRTIg
JiYgIUNPTkZJR19WUDlfSElHSEJJVERFUFRIICYmICFDT05GSUdfRU1VTEFURV9IQVJEV0FSRQot
SU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoU1NFMiwgRndkVHJhbnM4eDhEQ1QsCi0gICAgICAgICAg
ICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfZmRjdDh4OF9z
c2UyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAmdnB4X2lkY3Q4eDhfNjRfYWRkX3NzZTIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDAsIFZQWF9CSVRTXzgpKSk7Ci1JTlNUQU5USUFURV9U
RVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChTU0UyLCBGd2RUcmFuczh4OERD
VCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxl
KCZ2cHhfZmRjdDh4OF9zc2UyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgJnZweF9pZGN0OHg4XzY0X2FkZF9zc2UyLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgVlBYX0JJVFNfOCkp
KTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBTU0UyLCBGd2RUcmFuczh4OEhULAog
ICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBtYWtlX3R1cGxlKCZ2cDlfZmh0OHg4X3Nz
ZTIsICZ2cDlfaWh0OHg4XzY0X2FkZF9zc2UyLCAwLCBWUFhfQklUU184KSwKQEAgLTcwMyw3ICs3
MDYsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNlbmRpZiAgLy8gSEFWRV9TU0UyICYm
ICFDT05GSUdfVlA5X0hJR0hCSVRERVBUSCAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKIAog
I2lmIEhBVkVfU1NFMiAmJiBDT05GSUdfVlA5X0hJR0hCSVRERVBUSCAmJiAhQ09ORklHX0VNVUxB
VEVfSEFSRFdBUkUKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9T
VUlURV9QKAogICAgIFNTRTIsIEZ3ZFRyYW5zOHg4RENULAogICAgIDo6dGVzdGluZzo6VmFsdWVz
KG1ha2VfdHVwbGUoJnZweF9mZGN0OHg4X3NzZTIsICZ2cHhfaWRjdDh4OF82NF9hZGRfYywgMCwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQWF9CSVRTXzgpLApAQCAtNzE2LDcg
KzcxOSw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAgICAgICAgICAg
IG1ha2VfdHVwbGUoJnZweF9oaWdoYmRfZmRjdDh4OF9zc2UyLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgJmlkY3Q4eDhfNjRfYWRkXzEyX3NzZTIsIDEyLCBWUFhfQklUU18xMikp
KTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1Ao
CiAgICAgU1NFMiwgRndkVHJhbnM4eDhIVCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcygKICAgICAg
ICAgbWFrZV90dXBsZSgmdnA5X2ZodDh4OF9zc2UyLCAmdnA5X2lodDh4OF82NF9hZGRfYywgMCwg
VlBYX0JJVFNfOCksCkBAIC03MjYsNyArNzI5LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1Ao
CiAKIC8vIE9wdGltaXphdGlvbnMgdGFrZSBlZmZlY3QgYXQgYSB0aHJlc2hvbGQgb2YgNjIwMSwg
c28gd2UgdXNlIGEgdmFsdWUgY2xvc2UgdG8KIC8vIHRoYXQgdG8gdGVzdCBib3RoIGJyYW5jaGVz
LgotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAg
ICAgU1NFMiwgSW52VHJhbnM4eDhEQ1QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAg
IG1ha2VfdHVwbGUoJmlkY3Q4eDhfMTJfYWRkXzEwX2MsICZpZGN0OHg4XzEyX2FkZF8xMF9zc2Uy
LCA2MjI1LApAQCAtNzM5LDE4ICs3NDIsMTggQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAK
ICNpZiBIQVZFX1NTU0UzICYmIFZQWF9BUkNIX1g4Nl82NCAmJiAhQ09ORklHX1ZQOV9ISUdIQklU
REVQVEggJiYgXAogICAgICFDT05GSUdfRU1VTEFURV9IQVJEV0FSRQotSU5TVEFOVElBVEVfVEVT
VF9DQVNFX1AoU1NTRTMsIEZ3ZFRyYW5zOHg4RENULAotICAgICAgICAgICAgICAgICAgICAgICAg
Ojp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3Q4eDhfc3NzZTMsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfaWRjdDh4
OF82NF9hZGRfc3NlMiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgMCwgVlBYX0JJVFNfOCkpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChT
U1NFMywgRndkVHJhbnM4eDhEQ1QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3Q4eDhfc3NzZTMsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2lkY3Q4eDhfNjRfYWRk
X3NzZTIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAwLCBWUFhfQklUU184KSkpOwogI2VuZGlmCiAKICNpZiBIQVZFX01TQSAmJiAhQ09ORklH
X1ZQOV9ISUdIQklUREVQVEggJiYgIUNPTkZJR19FTVVMQVRFX0hBUkRXQVJFCi1JTlNUQU5USUFU
RV9URVNUX0NBU0VfUChNU0EsIEZ3ZFRyYW5zOHg4RENULAotICAgICAgICAgICAgICAgICAgICAg
ICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3Q4eDhfbXNhLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2lkY3Q4
eDhfNjRfYWRkX21zYSwgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgVlBYX0JJVFNfOCkpKTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE1TQSwgRndkVHJhbnM4eDhEQ1QsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3Q4eDhf
bXNhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgJnZweF9pZGN0OHg4XzY0X2FkZF9tc2EsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAwLCBWUFhfQklUU184KSkpOworSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QKAogICAgIE1TQSwgRndkVHJhbnM4eDhIVCwKICAgICA6OnRlc3Rpbmc6OlZh
bHVlcygKICAgICAgICAgbWFrZV90dXBsZSgmdnA5X2ZodDh4OF9tc2EsICZ2cDlfaWh0OHg4XzY0
X2FkZF9tc2EsIDAsIFZQWF9CSVRTXzgpLApAQCAtNzYwLDkgKzc2Myw5IEBAIElOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX01TQSAmJiAhQ09ORklHX1ZQOV9ISUdIQklU
REVQVEggJiYgIUNPTkZJR19FTVVMQVRFX0hBUkRXQVJFCiAKICNpZiBIQVZFX1ZTWCAmJiAhQ09O
RklHX1ZQOV9ISUdIQklUREVQVEggJiYgIUNPTkZJR19FTVVMQVRFX0hBUkRXQVJFCi1JTlNUQU5U
SUFURV9URVNUX0NBU0VfUChWU1gsIEZ3ZFRyYW5zOHg4RENULAotICAgICAgICAgICAgICAgICAg
ICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3Q4eDhfYywKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9pZGN0
OHg4XzY0X2FkZF92c3gsIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFZQWF9CSVRTXzgpKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1Ao
VlNYLCBGd2RUcmFuczh4OERDVCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6
OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfZmRjdDh4OF9jLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9pZGN0OHg4XzY0X2FkZF92c3gs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAw
LCBWUFhfQklUU184KSkpOwogI2VuZGlmICAvLyBIQVZFX1ZTWCAmJiAhQ09ORklHX1ZQOV9ISUdI
QklUREVQVEggJiYgIUNPTkZJR19FTVVMQVRFX0hBUkRXQVJFCiB9ICAvLyBuYW1lc3BhY2UKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9mcmFtZV9zaXplX3Rlc3RzLmNjIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90ZXN0L2ZyYW1lX3NpemVfdGVzdHMuY2MKaW5kZXggOTM5N2FmMmIyZGMyZDlhOTlhMzUzOGUy
MmE4MDNlNjg2ZmQ3ODgwYy4uZDg1YzE5M2UwYjZlMzJiN2FmYjBiZTc2NGNmMmU3ZGQ4ZDExNTIy
NyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2ZyYW1lX3NpemVfdGVzdHMuY2MKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90ZXN0L2ZyYW1lX3NpemVfdGVzdHMuY2MKQEAgLTY5LDcgKzY5LDcgQEAgY2xh
c3MgRW5jb2RlcldpdGhFeHBlY3RlZEVycm9yIDogcHVibGljIDo6bGlidnB4X3Rlc3Q6OkVuY29k
ZXIgewogI2lmIENPTkZJR19WUDlfRU5DT0RFUgogICAgIHJldHVybiAmdnB4X2NvZGVjX3ZwOV9j
eF9hbGdvOwogI2Vsc2UKLSAgICByZXR1cm4gTlVMTDsKKyAgICByZXR1cm4gbnVsbHB0cjsKICNl
bmRpZgogICB9CiB9OwpAQCAtMTMwLDcgKzEzMCw3IEBAIGNsYXNzIFZQOUZyYW1lU2l6ZVRlc3Rz
TGFyZ2UgOiBwdWJsaWMgOjpsaWJ2cHhfdGVzdDo6RW5jb2RlclRlc3QsCiAgICAgICBlbmNvZGVy
LT5Jbml0RW5jb2Rlcih2aWRlbyk7CiAgICAgICBBU1NFUlRfRkFMU0UoOjp0ZXN0aW5nOjpUZXN0
OjpIYXNGYXRhbEZhaWx1cmUoKSk7CiAgICAgICBmb3IgKGJvb2wgYWdhaW4gPSB0cnVlOyBhZ2Fp
bjsgdmlkZW8tPk5leHQoKSkgewotICAgICAgICBhZ2FpbiA9ICh2aWRlby0+aW1nKCkgIT0gTlVM
TCk7CisgICAgICAgIGFnYWluID0gKHZpZGVvLT5pbWcoKSAhPSBudWxscHRyKTsKIAogICAgICAg
ICBQcmVFbmNvZGVGcmFtZUhvb2sodmlkZW8sIGVuY29kZXIuZ2V0KCkpOwogICAgICAgICBlbmNv
ZGVyLT5FbmNvZGVGcmFtZSh2aWRlbywgZnJhbWVfZmxhZ3NfLCBleHBlY3RlZF9lcnIpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2hhZGFtYXJkX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rl
c3QvaGFkYW1hcmRfdGVzdC5jYwppbmRleCA2YjdhYWUzZDUwZTkzMmQzOTJjMWMzMTAxYTYyNDhj
ZDQ2ZTVjZWJhLi5kYWI5NDVhNTYxZmE2OWM3ZGE5ODhlMjMyNmMzNjllYjQ2NTQxZTgxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvaGFkYW1hcmRfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3Rlc3QvaGFkYW1hcmRfdGVzdC5jYwpAQCAtMjMzLDE0ICsyMzMsMTQgQEAgVEVTVF9QKEhhZGFt
YXJkTG93YmRUZXN0LCBESVNBQkxFRF9TcGVlZCkgewogICBTcGVlZFRlc3QoMTAwMDAwMDApOwog
fQogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgK
ICAgICBDLCBIYWRhbWFyZExvd2JkVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhIYWRhbWFy
ZEZ1bmNXaXRoU2l6ZSgmdnB4X2hhZGFtYXJkXzh4OF9jLCA4KSwKICAgICAgICAgICAgICAgICAg
ICAgICBIYWRhbWFyZEZ1bmNXaXRoU2l6ZSgmdnB4X2hhZGFtYXJkXzE2eDE2X2MsIDE2KSwKICAg
ICAgICAgICAgICAgICAgICAgICBIYWRhbWFyZEZ1bmNXaXRoU2l6ZSgmdnB4X2hhZGFtYXJkXzMy
eDMyX2MsIDMyKSkpOwogCiAjaWYgSEFWRV9TU0UyCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgK
K0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBTU0UyLCBIYWRhbWFyZExvd2JkVGVzdCwK
ICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhIYWRhbWFyZEZ1bmNXaXRoU2l6ZSgmdnB4X2hhZGFtYXJk
Xzh4OF9zc2UyLCA4KSwKICAgICAgICAgICAgICAgICAgICAgICBIYWRhbWFyZEZ1bmNXaXRoU2l6
ZSgmdnB4X2hhZGFtYXJkXzE2eDE2X3NzZTIsIDE2KSwKQEAgLTI0OCwyMCArMjQ4LDIwIEBAIElO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX1NTRTIKIAogI2lmIEhBVkVf
QVZYMgotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1Ao
CiAgICAgQVZYMiwgSGFkYW1hcmRMb3diZFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoSGFk
YW1hcmRGdW5jV2l0aFNpemUoJnZweF9oYWRhbWFyZF8xNngxNl9hdngyLCAxNiksCiAgICAgICAg
ICAgICAgICAgICAgICAgSGFkYW1hcmRGdW5jV2l0aFNpemUoJnZweF9oYWRhbWFyZF8zMngzMl9h
dngyLCAzMikpKTsKICNlbmRpZiAgLy8gSEFWRV9BVlgyCiAKICNpZiBIQVZFX1NTU0UzICYmIFZQ
WF9BUkNIX1g4Nl82NAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNU
X1NVSVRFX1AoCiAgICAgU1NTRTMsIEhhZGFtYXJkTG93YmRUZXN0LAogICAgIDo6dGVzdGluZzo6
VmFsdWVzKEhhZGFtYXJkRnVuY1dpdGhTaXplKCZ2cHhfaGFkYW1hcmRfOHg4X3Nzc2UzLCA4KSkp
OwogI2VuZGlmICAvLyBIQVZFX1NTU0UzICYmIFZQWF9BUkNIX1g4Nl82NAogCiAjaWYgSEFWRV9O
RU9OCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgK
ICAgICBORU9OLCBIYWRhbWFyZExvd2JkVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhIYWRh
bWFyZEZ1bmNXaXRoU2l6ZSgmdnB4X2hhZGFtYXJkXzh4OF9uZW9uLCA4KSwKICAgICAgICAgICAg
ICAgICAgICAgICBIYWRhbWFyZEZ1bmNXaXRoU2l6ZSgmdnB4X2hhZGFtYXJkXzE2eDE2X25lb24s
IDE2KSkpOwpAQCAtMjcxLDcgKzI3MSw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogLy8g
aW4gcGxhY2UgYW5kIHR1cm4gb24gdGhlIHVuaXQgdGVzdC4KICNpZiAhQ09ORklHX1ZQOV9ISUdI
QklUREVQVEgKICNpZiBIQVZFX01TQQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5U
SUFURV9URVNUX1NVSVRFX1AoCiAgICAgTVNBLCBIYWRhbWFyZExvd2JkVGVzdCwKICAgICA6OnRl
c3Rpbmc6OlZhbHVlcyhIYWRhbWFyZEZ1bmNXaXRoU2l6ZSgmdnB4X2hhZGFtYXJkXzh4OF9tc2Es
IDgpLAogICAgICAgICAgICAgICAgICAgICAgIEhhZGFtYXJkRnVuY1dpdGhTaXplKCZ2cHhfaGFk
YW1hcmRfMTZ4MTZfbXNhLCAxNikpKTsKQEAgLTI3OSw3ICsyNzksNyBAQCBJTlNUQU5USUFURV9U
RVNUX0NBU0VfUCgKICNlbmRpZiAgLy8gIUNPTkZJR19WUDlfSElHSEJJVERFUFRICiAKICNpZiBI
QVZFX1ZTWAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRF
X1AoCiAgICAgVlNYLCBIYWRhbWFyZExvd2JkVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhI
YWRhbWFyZEZ1bmNXaXRoU2l6ZSgmdnB4X2hhZGFtYXJkXzh4OF92c3gsIDgpLAogICAgICAgICAg
ICAgICAgICAgICAgIEhhZGFtYXJkRnVuY1dpdGhTaXplKCZ2cHhfaGFkYW1hcmRfMTZ4MTZfdnN4
LCAxNikpKTsKQEAgLTMwMSwxNCArMzAxLDE0IEBAIFRFU1RfUChIYWRhbWFyZEhpZ2hiZFRlc3Qs
IERJU0FCTEVEX1NwZWVkKSB7CiAgIFNwZWVkVGVzdCgxMDAwMDAwMCk7CiB9CiAKLUlOU1RBTlRJ
QVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEMsIEhhZGFt
YXJkSGlnaGJkVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhIYWRhbWFyZEZ1bmNXaXRoU2l6
ZSgmdnB4X2hpZ2hiZF9oYWRhbWFyZF84eDhfYywgOCksCiAgICAgICAgICAgICAgICAgICAgICAg
SGFkYW1hcmRGdW5jV2l0aFNpemUoJnZweF9oaWdoYmRfaGFkYW1hcmRfMTZ4MTZfYywgMTYpLAog
ICAgICAgICAgICAgICAgICAgICAgIEhhZGFtYXJkRnVuY1dpdGhTaXplKCZ2cHhfaGlnaGJkX2hh
ZGFtYXJkXzMyeDMyX2MsIDMyKSkpOwogCiAjaWYgSEFWRV9BVlgyCi1JTlNUQU5USUFURV9URVNU
X0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBBVlgyLCBIYWRhbWFyZEhp
Z2hiZFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoSGFkYW1hcmRGdW5jV2l0aFNpemUoJnZw
eF9oaWdoYmRfaGFkYW1hcmRfOHg4X2F2eDIsIDgpLAogICAgICAgICAgICAgICAgICAgICAgIEhh
ZGFtYXJkRnVuY1dpdGhTaXplKCZ2cHhfaGlnaGJkX2hhZGFtYXJkXzE2eDE2X2F2eDIsIDE2KSwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9pZGN0X3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rl
c3QvaWRjdF90ZXN0LmNjCmluZGV4IDM1NjRjMGJkNWQxZGRlZTliNjQ4MjUwZjU1NTUyMGE3NDJh
NjQzNjkuLjFiOTUzMmUxYzE0N2U5MjM0ZjE2OTdkZjA1NzEzMzMzZDdiMmVhMWUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGVzdC9pZGN0X3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2lk
Y3RfdGVzdC5jYwpAQCAtMzEsMTMgKzMxLDEzIEBAIGNsYXNzIElEQ1RUZXN0IDogcHVibGljIDo6
dGVzdGluZzo6VGVzdFdpdGhQYXJhbTxJZGN0RnVuYz4gewogICAgIFVVVCA9IEdldFBhcmFtKCk7
CiAKICAgICBpbnB1dCA9IG5ldyBCdWZmZXI8aW50MTZfdD4oNCwgNCwgMCk7Ci0gICAgQVNTRVJU
X1RSVUUoaW5wdXQgIT0gTlVMTCk7CisgICAgQVNTRVJUX05FKGlucHV0LCBudWxscHRyKTsKICAg
ICBBU1NFUlRfVFJVRShpbnB1dC0+SW5pdCgpKTsKICAgICBwcmVkaWN0ID0gbmV3IEJ1ZmZlcjx1
aW50OF90Pig0LCA0LCAzKTsKLSAgICBBU1NFUlRfVFJVRShwcmVkaWN0ICE9IE5VTEwpOworICAg
IEFTU0VSVF9ORShwcmVkaWN0LCBudWxscHRyKTsKICAgICBBU1NFUlRfVFJVRShwcmVkaWN0LT5J
bml0KCkpOwogICAgIG91dHB1dCA9IG5ldyBCdWZmZXI8dWludDhfdD4oNCwgNCwgMyk7Ci0gICAg
QVNTRVJUX1RSVUUob3V0cHV0ICE9IE5VTEwpOworICAgIEFTU0VSVF9ORShvdXRwdXQsIG51bGxw
dHIpOwogICAgIEFTU0VSVF9UUlVFKG91dHB1dC0+SW5pdCgpKTsKICAgfQogCkBAIC03Miw3ICs3
Miw3IEBAIFRFU1RfUChJRENUVGVzdCwgVGVzdEFsbFplcm9zKSB7CiAKIFRFU1RfUChJRENUVGVz
dCwgVGVzdEFsbE9uZXMpIHsKICAgaW5wdXQtPlNldCgwKTsKLSAgQVNTRVJUX1RSVUUoaW5wdXQt
PlRvcExlZnRQaXhlbCgpICE9IE5VTEwpOworICBBU1NFUlRfTkUoaW5wdXQtPlRvcExlZnRQaXhl
bCgpLCBudWxscHRyKTsKICAgLy8gV2hlbiB0aGUgZmlyc3QgZWxlbWVudCBpcyAnNCcgaXQgd2ls
bCBmaWxsIHRoZSBvdXRwdXQgYnVmZmVyIHdpdGggJzEnLgogICBpbnB1dC0+VG9wTGVmdFBpeGVs
KClbMF0gPSA0OwogICBwcmVkaWN0LT5TZXQoMCk7CkBAIC05MCw3ICs5MCw3IEBAIFRFU1RfUChJ
RENUVGVzdCwgVGVzdEFkZE9uZSkgewogICAvLyBTZXQgdGhlIHRyYW5zZm9ybSBvdXRwdXQgdG8g
JzEnIGFuZCBtYWtlIHN1cmUgaXQgZ2V0cyBhZGRlZCB0byB0aGUKICAgLy8gcHJlZGljdGlvbiBi
dWZmZXIuCiAgIGlucHV0LT5TZXQoMCk7Ci0gIEFTU0VSVF9UUlVFKGlucHV0LT5Ub3BMZWZ0UGl4
ZWwoKSAhPSBOVUxMKTsKKyAgQVNTRVJUX05FKGlucHV0LT5Ub3BMZWZ0UGl4ZWwoKSwgbnVsbHB0
cik7CiAgIGlucHV0LT5Ub3BMZWZ0UGl4ZWwoKVswXSA9IDQ7CiAgIG91dHB1dC0+U2V0KDApOwog
CkBAIC0xNTUsMjUgKzE1NSwyNiBAQCBURVNUX1AoSURDVFRlc3QsIFRlc3RXaXRoRGF0YSkgewog
ICBBU1NFUlRfVFJVRShvdXRwdXQtPkNoZWNrUGFkZGluZygpKTsKIH0KIAotSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoQywgSURDVFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzKHZwOF9zaG9ydF9pZGN0
NHg0bGxtX2MpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDLCBJRENUVGVzdCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cDhfc2hvcnRfaWRjdDR4NGxs
bV9jKSk7CiAKICNpZiBIQVZFX05FT04KLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE5FT04sIElE
Q1RUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnA4X3No
b3J0X2lkY3Q0eDRsbG1fbmVvbikpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE5FT04sIElE
Q1RUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZwOF9z
aG9ydF9pZGN0NHg0bGxtX25lb24pKTsKICNlbmRpZiAgLy8gSEFWRV9ORU9OCiAKICNpZiBIQVZF
X01NWAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTU1YLCBJRENUVGVzdCwKLSAgICAgICAgICAg
ICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZwOF9zaG9ydF9pZGN0NHg0bGxtX21teCkp
OworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE1NWCwgSURDVFRlc3QsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnA4X3Nob3J0X2lkY3Q0eDRsbG1fbW14KSk7
CiAjZW5kaWYgIC8vIEhBVkVfTU1YCiAKICNpZiBIQVZFX01TQQotSU5TVEFOVElBVEVfVEVTVF9D
QVNFX1AoTVNBLCBJRENUVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6
VmFsdWVzKHZwOF9zaG9ydF9pZGN0NHg0bGxtX21zYSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlU
RV9QKE1TQSwgSURDVFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpW
YWx1ZXModnA4X3Nob3J0X2lkY3Q0eDRsbG1fbXNhKSk7CiAjZW5kaWYgIC8vIEhBVkVfTVNBCiAK
ICNpZiBIQVZFX01NSQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTU1JLCBJRENUVGVzdCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZwOF9zaG9ydF9pZGN0NHg0
bGxtX21taSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE1NSSwgSURDVFRlc3QsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnA4X3Nob3J0X2lkY3Q0eDRs
bG1fbW1pKSk7CiAjZW5kaWYgIC8vIEhBVkVfTU1JCiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGVzdC9pbnZhbGlkX2ZpbGVfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVz
dC9pbnZhbGlkX2ZpbGVfdGVzdC5jYwppbmRleCA4YjFiYzU2YzliYjkxMzdhNDIyYzkzMTc4YTM1
ODlmNDUxMzI2MTk3Li43NjJkNTg1ZjU5OWYzZThhOWUxODFiNDA3ODFjMGEzYjE3MDNjMTZhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvaW52YWxpZF9maWxlX3Rlc3QuY2MKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L2ludmFsaWRfZmlsZV90ZXN0LmNjCkBAIC0zOCwxNSArMzgsMTUgQEAgc3Rk
Ojpvc3RyZWFtICZvcGVyYXRvcjw8KHN0ZDo6b3N0cmVhbSAmb3MsIGNvbnN0IERlY29kZVBhcmFt
ICZkcCkgewogY2xhc3MgSW52YWxpZEZpbGVUZXN0IDogcHVibGljIDo6bGlidnB4X3Rlc3Q6OkRl
Y29kZXJUZXN0LAogICAgICAgICAgICAgICAgICAgICAgICAgcHVibGljIDo6bGlidnB4X3Rlc3Q6
OkNvZGVjVGVzdFdpdGhQYXJhbTxEZWNvZGVQYXJhbT4gewogIHByb3RlY3RlZDoKLSAgSW52YWxp
ZEZpbGVUZXN0KCkgOiBEZWNvZGVyVGVzdChHRVRfUEFSQU0oMCkpLCByZXNfZmlsZV8oTlVMTCkg
e30KKyAgSW52YWxpZEZpbGVUZXN0KCkgOiBEZWNvZGVyVGVzdChHRVRfUEFSQU0oMCkpLCByZXNf
ZmlsZV8obnVsbHB0cikge30KIAogICB2aXJ0dWFsIH5JbnZhbGlkRmlsZVRlc3QoKSB7Ci0gICAg
aWYgKHJlc19maWxlXyAhPSBOVUxMKSBmY2xvc2UocmVzX2ZpbGVfKTsKKyAgICBpZiAocmVzX2Zp
bGVfICE9IG51bGxwdHIpIGZjbG9zZShyZXNfZmlsZV8pOwogICB9CiAKICAgdm9pZCBPcGVuUmVz
RmlsZShjb25zdCBzdGQ6OnN0cmluZyAmcmVzX2ZpbGVfbmFtZV8pIHsKICAgICByZXNfZmlsZV8g
PSBsaWJ2cHhfdGVzdDo6T3BlblRlc3REYXRhRmlsZShyZXNfZmlsZV9uYW1lXyk7Ci0gICAgQVNT
RVJUX1RSVUUocmVzX2ZpbGVfICE9IE5VTEwpCisgICAgQVNTRVJUX05FKHJlc19maWxlXywgbnVs
bHB0cikKICAgICAgICAgPDwgIlJlc3VsdCBmaWxlIG9wZW4gZmFpbGVkLiBGaWxlbmFtZTogIiA8
PCByZXNfZmlsZV9uYW1lXzsKICAgfQogCkBAIC01NCw3ICs1NCw3IEBAIGNsYXNzIEludmFsaWRG
aWxlVGVzdCA6IHB1YmxpYyA6OmxpYnZweF90ZXN0OjpEZWNvZGVyVGVzdCwKICAgICAgIGNvbnN0
IHZweF9jb2RlY19lcnJfdCByZXNfZGVjLAogICAgICAgY29uc3QgbGlidnB4X3Rlc3Q6OkNvbXBy
ZXNzZWRWaWRlb1NvdXJjZSAmdmlkZW8sCiAgICAgICBsaWJ2cHhfdGVzdDo6RGVjb2RlciAqZGVj
b2RlcikgewotICAgIEVYUEVDVF9UUlVFKHJlc19maWxlXyAhPSBOVUxMKTsKKyAgICBFWFBFQ1Rf
TkUocmVzX2ZpbGVfLCBudWxscHRyKTsKICAgICBpbnQgZXhwZWN0ZWRfcmVzX2RlYzsKIAogICAg
IC8vIFJlYWQgaW50ZWdlciByZXN1bHQuCkBAIC0xMDIsNyArMTAyLDcgQEAgY2xhc3MgSW52YWxp
ZEZpbGVUZXN0IDogcHVibGljIDo6bGlidnB4X3Rlc3Q6OkRlY29kZXJUZXN0LAogICAgICAgcmV0
dXJuOwogI2VuZGlmCiAgICAgfQotICAgIEFTU0VSVF9UUlVFKHZpZGVvLmdldCgpICE9IE5VTEwp
OworICAgIEFTU0VSVF9ORSh2aWRlby5nZXQoKSwgbnVsbHB0cik7CiAgICAgdmlkZW8tPkluaXQo
KTsKIAogICAgIC8vIENvbnN0cnVjdCByZXN1bHQgZmlsZSBuYW1lLiBUaGUgZmlsZSBob2xkcyBh
IGxpc3Qgb2YgZXhwZWN0ZWQgaW50ZWdlcgpAQCAtMTI5LDggKzEyOSw4IEBAIGNvbnN0IERlY29k
ZVBhcmFtIGtWUDhJbnZhbGlkRmlsZVRlc3RzW10gPSB7CiAgIHsgMSwgImludmFsaWQtdnA4MC0w
MC1jb21wcmVoZW5zaXZlLXMxNzY2MV9yMDEtMDVfYjYtLml2ZiIgfSwKIH07CiAKLVZQOF9JTlNU
QU5USUFURV9URVNUX0NBU0UoSW52YWxpZEZpbGVUZXN0LAotICAgICAgICAgICAgICAgICAgICAg
ICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtWUDhJbnZhbGlkRmlsZVRlc3RzKSk7CitWUDhfSU5T
VEFOVElBVEVfVEVTVF9TVUlURShJbnZhbGlkRmlsZVRlc3QsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtWUDhJbnZhbGlkRmlsZVRlc3RzKSk7CiAjZW5k
aWYgIC8vIENPTkZJR19WUDhfREVDT0RFUgogCiAjaWYgQ09ORklHX1ZQOV9ERUNPREVSCkBAIC0x
NjMsOCArMTYzLDggQEAgY29uc3QgRGVjb2RlUGFyYW0ga1ZQOUludmFsaWRGaWxlVGVzdHNbXSA9
IHsKICAgeyAxLCAiaW52YWxpZC1jcmJ1Zy02NjcwNDQud2VibSIgfSwKIH07CiAKLVZQOV9JTlNU
QU5USUFURV9URVNUX0NBU0UoSW52YWxpZEZpbGVUZXN0LAotICAgICAgICAgICAgICAgICAgICAg
ICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtWUDlJbnZhbGlkRmlsZVRlc3RzKSk7CitWUDlfSU5T
VEFOVElBVEVfVEVTVF9TVUlURShJbnZhbGlkRmlsZVRlc3QsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtWUDlJbnZhbGlkRmlsZVRlc3RzKSk7CiAjZW5k
aWYgIC8vIENPTkZJR19WUDlfREVDT0RFUgogCiAvLyBUaGlzIGNsYXNzIHdpbGwgaW5jbHVkZSB0
ZXN0IHZlY3RvcnMgdGhhdCBhcmUgZXhwZWN0ZWQgdG8gZmFpbApAQCAtMTg0LDggKzE4NCw4IEBA
IGNvbnN0IERlY29kZVBhcmFtIGtWUDhJbnZhbGlkUGVla1Rlc3RzW10gPSB7CiAgIHsgMSwgImlu
dmFsaWQtdnA4MC0wMC1jb21wcmVoZW5zaXZlLTAxOC5pdmYuMmtmXzB4Ni5pdmYiIH0sCiB9Owog
Ci1WUDhfSU5TVEFOVElBVEVfVEVTVF9DQVNFKEludmFsaWRGaWxlSW52YWxpZFBlZWtUZXN0LAot
ICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtWUDhJbnZhbGlk
UGVla1Rlc3RzKSk7CitWUDhfSU5TVEFOVElBVEVfVEVTVF9TVUlURShJbnZhbGlkRmlsZUludmFs
aWRQZWVrVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVz
SW4oa1ZQOEludmFsaWRQZWVrVGVzdHMpKTsKICNlbmRpZiAgLy8gQ09ORklHX1ZQOF9ERUNPREVS
CiAKICNpZiBDT05GSUdfVlA5X0RFQ09ERVIKQEAgLTE5Myw4ICsxOTMsOSBAQCBjb25zdCBEZWNv
ZGVQYXJhbSBrVlA5SW52YWxpZEZpbGVJbnZhbGlkUGVla1Rlc3RzW10gPSB7CiAgIHsgMSwgImlu
dmFsaWQtdnA5MC0wMS12My53ZWJtIiB9LAogfTsKIAotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FT
RShJbnZhbGlkRmlsZUludmFsaWRQZWVrVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
Ojp0ZXN0aW5nOjpWYWx1ZXNJbihrVlA5SW52YWxpZEZpbGVJbnZhbGlkUGVla1Rlc3RzKSk7CitW
UDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURSgKKyAgICBJbnZhbGlkRmlsZUludmFsaWRQZWVrVGVz
dCwKKyAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtWUDlJbnZhbGlkRmlsZUludmFsaWRQZWVrVGVz
dHMpKTsKIAogY29uc3QgRGVjb2RlUGFyYW0ga011bHRpVGhyZWFkZWRWUDlJbnZhbGlkRmlsZVRl
c3RzW10gPSB7CiAgIHsgNCwgImludmFsaWQtdnA5MC0yLTA4LXRpbGVfMXg0X2ZyYW1lX3BhcmFs
bGVsX2FsbF9rZXkud2VibSIgfSwKQEAgLTIxMCw3ICsyMTEsNyBAQCBjb25zdCBEZWNvZGVQYXJh
bSBrTXVsdGlUaHJlYWRlZFZQOUludmFsaWRGaWxlVGVzdHNbXSA9IHsKICAgeyA0LCAiaW52YWxp
ZC1jcmJ1Zy0xNTYyLml2ZiIgfSwKIH07CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5T
VEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFZQOU11bHRpVGhyZWFkZWQsIEludmFsaWRGaWxl
VGVzdCwKICAgICA6OnRlc3Rpbmc6OkNvbWJpbmUoCiAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVz
KApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2tleWZyYW1lX3Rlc3QuY2MgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rlc3Qva2V5ZnJhbWVfdGVzdC5jYwppbmRleCA1ODJkNDQ4MTY4ZDFkYmRiNWJiMGUxOTMx
YTcyMGEyMmUxYjAyZDg4Li5hMTNkZWM5Y2UyZGM3ZDEwYjQ2ZjgxNzg0YWVjMzMwMWZjOGE3ZmRm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qva2V5ZnJhbWVfdGVzdC5jYworKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3Rlc3Qva2V5ZnJhbWVfdGVzdC5jYwpAQCAtMTQ1LDUgKzE0NSw1IEBAIFRFU1RfUChL
ZXlmcmFtZVRlc3QsIFRlc3RBdXRvS2V5ZnJhbWUpIHsKICAgfQogfQogCi1WUDhfSU5TVEFOVElB
VEVfVEVTVF9DQVNFKEtleWZyYW1lVGVzdCwgQUxMX1RFU1RfTU9ERVMpOworVlA4X0lOU1RBTlRJ
QVRFX1RFU1RfU1VJVEUoS2V5ZnJhbWVUZXN0LCBBTExfVEVTVF9NT0RFUyk7CiB9ICAvLyBuYW1l
c3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9sZXZlbF90ZXN0LmNjIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC90ZXN0L2xldmVsX3Rlc3QuY2MKaW5kZXggMjY5MzVhODFiMDI0Y2M5YTg2OWRlM2FiNTdk
MWZhNmEyNTM5MWEyMy4uMDM4ZDc1ZjQ0ZjhhNGJhOWNhMTMyYzg2MmY4ZmY0MWRhODZmYjEyYiAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2xldmVsX3Rlc3QuY2MKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90ZXN0L2xldmVsX3Rlc3QuY2MKQEAgLTE0MCw4ICsxNDAsOCBAQCBURVNUX1AoTGV2ZWxUZXN0
LCBUZXN0VGFyZ2V0TGV2ZWxBcGkpIHsKICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19PSywgdnB4X2Nv
ZGVjX2Rlc3Ryb3koJmVuYykpOwogfQogCi1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKExldmVs
VGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2
cHhfdGVzdDo6a1R3b1Bhc3NHb29kLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA6OmxpYnZweF90ZXN0OjprT25lUGFzc0dvb2QpLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDAsIDkpKTsKK1ZQOV9JTlNUQU5USUFURV9URVNU
X1NVSVRFKExldmVsVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6
VmFsdWVzKDo6bGlidnB4X3Rlc3Q6OmtUd29QYXNzR29vZCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDo6bGlidnB4X3Rlc3Q6OmtPbmVQYXNzR29vZCksCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDAsIDkpKTsKIH0gIC8v
IG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2xwZl90ZXN0LmNjIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L2xwZl90ZXN0LmNjCmluZGV4IDlkYjExODFjNmM2MTBjY2ZhMjRmYWQ0ZDIx
OTc4M2MwYjc0YmQ5NTguLjYyYzZmMzBhMDcwMzlmZmMxNzdkNDAzZmVjZGQ3NDVjZDJjMDkzMjMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9scGZfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3Rlc3QvbHBmX3Rlc3QuY2MKQEAgLTE0NSw3ICsxNDUsMTAgQEAgY2xhc3MgTG9vcDhUZXN0NlBh
cmFtIDogcHVibGljIDo6dGVzdGluZzo6VGVzdFdpdGhQYXJhbTxsb29wOF9wYXJhbV90PiB7CiAg
IGxvb3Bfb3BfdCBsb29wZmlsdGVyX29wXzsKICAgbG9vcF9vcF90IHJlZl9sb29wZmlsdGVyX29w
XzsKIH07CitHVEVTVF9BTExPV19VTklOU1RBTlRJQVRFRF9QQVJBTUVURVJJWkVEX1RFU1QoTG9v
cDhUZXN0NlBhcmFtKTsKIAorI2lmIEhBVkVfTkVPTiB8fCBIQVZFX1NTRTIgfHwgXAorICAgIChI
QVZFX0RTUFIyIHx8IEhBVkVfTVNBICYmICFDT05GSUdfVlA5X0hJR0hCSVRERVBUSCkKIGNsYXNz
IExvb3A4VGVzdDlQYXJhbSA6IHB1YmxpYyA6OnRlc3Rpbmc6OlRlc3RXaXRoUGFyYW08ZHVhbGxv
b3A4X3BhcmFtX3Q+IHsKICBwdWJsaWM6CiAgIHZpcnR1YWwgfkxvb3A4VGVzdDlQYXJhbSgpIHt9
CkBAIC0xNjQsNiArMTY3LDkgQEAgY2xhc3MgTG9vcDhUZXN0OVBhcmFtIDogcHVibGljIDo6dGVz
dGluZzo6VGVzdFdpdGhQYXJhbTxkdWFsbG9vcDhfcGFyYW1fdD4gewogICBkdWFsX2xvb3Bfb3Bf
dCBsb29wZmlsdGVyX29wXzsKICAgZHVhbF9sb29wX29wX3QgcmVmX2xvb3BmaWx0ZXJfb3BfOwog
fTsKK0dURVNUX0FMTE9XX1VOSU5TVEFOVElBVEVEX1BBUkFNRVRFUklaRURfVEVTVChMb29wOFRl
c3Q5UGFyYW0pOworI2VuZGlmICAvLyBIQVZFX05FT04gfHwgSEFWRV9TU0UyIHx8IChIQVZFX0RT
UFIyIHx8IEhBVkVfTVNBICYmCisgICAgICAgIC8vICghQ09ORklHX1ZQOV9ISUdIQklUREVQVEgp
KQogCiBURVNUX1AoTG9vcDhUZXN0NlBhcmFtLCBPcGVyYXRpb25DaGVjaykgewogICBBQ01SYW5k
b20gcm5kKEFDTVJhbmRvbTo6RGV0ZXJtaW5pc3RpY1NlZWQoKSk7CkBAIC0yNzUsNiArMjgxLDgg
QEAgVEVTVF9QKExvb3A4VGVzdDZQYXJhbSwgVmFsdWVDaGVjaykgewogICAgICAgPDwgIkZpcnN0
IGZhaWxlZCBhdCB0ZXN0IGNhc2UgIiA8PCBmaXJzdF9mYWlsdXJlOwogfQogCisjaWYgSEFWRV9O
RU9OIHx8IEhBVkVfU1NFMiB8fCBcCisgICAgKEhBVkVfRFNQUjIgfHwgSEFWRV9NU0EgJiYgKCFD
T05GSUdfVlA5X0hJR0hCSVRERVBUSCkpCiBURVNUX1AoTG9vcDhUZXN0OVBhcmFtLCBPcGVyYXRp
b25DaGVjaykgewogICBBQ01SYW5kb20gcm5kKEFDTVJhbmRvbTo6RGV0ZXJtaW5pc3RpY1NlZWQo
KSk7CiAgIGNvbnN0IGludCBjb3VudF90ZXN0X2Jsb2NrID0gbnVtYmVyX29mX2l0ZXJhdGlvbnM7
CkBAIC00MDIsMTIgKzQxMCwxNCBAQCBURVNUX1AoTG9vcDhUZXN0OVBhcmFtLCBWYWx1ZUNoZWNr
KSB7CiAgICAgICAgICAibG9vcGZpbHRlciBvdXRwdXQuICIKICAgICAgIDw8ICJGaXJzdCBmYWls
ZWQgYXQgdGVzdCBjYXNlICIgPDwgZmlyc3RfZmFpbHVyZTsKIH0KKyNlbmRpZiAgLy8gSEFWRV9O
RU9OIHx8IEhBVkVfU1NFMiB8fCAoSEFWRV9EU1BSMiB8fCBIQVZFX01TQSAmJgorICAgICAgICAv
LyAoIUNPTkZJR19WUDlfSElHSEJJVERFUFRIKSkKIAogdXNpbmcgc3RkOjptYWtlX3R1cGxlOwog
CiAjaWYgSEFWRV9TU0UyCiAjaWYgQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKLUlOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTRTIsIExvb3A4
VGVzdDZQYXJhbSwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfaGlnaGJk
X2xwZl9ob3Jpem9udGFsXzRfc3NlMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICZ2cHhfaGlnaGJkX2xwZl9ob3Jpem9udGFsXzRfYywgOCksCkBAIC00NTgsNyArNDY4LDcgQEAg
SU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBs
ZSgmdnB4X2hpZ2hiZF9scGZfdmVydGljYWxfMTZfZHVhbF9zc2UyLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgJnZweF9oaWdoYmRfbHBmX3ZlcnRpY2FsXzE2X2R1YWxfYywgMTIp
KSk7CiAjZWxzZQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NV
SVRFX1AoCiAgICAgU1NFMiwgTG9vcDhUZXN0NlBhcmFtLAogICAgIDo6dGVzdGluZzo6VmFsdWVz
KAogICAgICAgICBtYWtlX3R1cGxlKCZ2cHhfbHBmX2hvcml6b250YWxfNF9zc2UyLCAmdnB4X2xw
Zl9ob3Jpem9udGFsXzRfYywgOCksCkBAIC00NzUsNyArNDg1LDcgQEAgSU5TVEFOVElBVEVfVEVT
VF9DQVNFX1AoCiAjZW5kaWYKIAogI2lmIEhBVkVfQVZYMiAmJiAoIUNPTkZJR19WUDlfSElHSEJJ
VERFUFRIKQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRF
X1AoCiAgICAgQVZYMiwgTG9vcDhUZXN0NlBhcmFtLAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1h
a2VfdHVwbGUoJnZweF9scGZfaG9yaXpvbnRhbF8xNl9hdngyLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgJnZweF9scGZfaG9yaXpvbnRhbF8xNl9jLCA4KSwKQEAgLTQ4NSw3ICs0
OTUsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKIAogI2lmIEhBVkVfU1NFMgogI2lmIENP
TkZJR19WUDlfSElHSEJJVERFUFRICi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJ
QVRFX1RFU1RfU1VJVEVfUCgKICAgICBTU0UyLCBMb29wOFRlc3Q5UGFyYW0sCiAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2hpZ2hiZF9scGZfaG9yaXpvbnRhbF80X2R1YWxf
c3NlMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfaGlnaGJkX2xwZl9o
b3Jpem9udGFsXzRfZHVhbF9jLCA4KSwKQEAgLTUxMiw3ICs1MjIsNyBAQCBJTlNUQU5USUFURV9U
RVNUX0NBU0VfUCgKICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKCZ2cHhfaGlnaGJk
X2xwZl92ZXJ0aWNhbF84X2R1YWxfc3NlMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICZ2cHhfaGlnaGJkX2xwZl92ZXJ0aWNhbF84X2R1YWxfYywgMTIpKSk7CiAjZWxzZQotSU5T
VEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgU1NF
MiwgTG9vcDhUZXN0OVBhcmFtLAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZw
eF9scGZfaG9yaXpvbnRhbF80X2R1YWxfc3NlMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICZ2cHhfbHBmX2hvcml6b250YWxfNF9kdWFsX2MsIDgpLApAQCAtNTI3LDcgKzUzNyw3
IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogCiAjaWYgSEFWRV9ORU9OCiAjaWYgQ09ORklH
X1ZQOV9ISUdIQklUREVQVEgKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QKAogICAgIE5FT04sIExvb3A4VGVzdDZQYXJhbSwKICAgICA6OnRlc3Rpbmc6
OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfaGlnaGJkX2xwZl9ob3Jpem9udGFsXzRfbmVvbiwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfaGlnaGJkX2xwZl9ob3Jpem9udGFs
XzRfYywgOCksCkBAIC01NzcsNyArNTg3LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2hpZ2hiZF9scGZfdmVydGljYWxf
MTZfZHVhbF9jLCAxMCksCiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSgmdnB4X2hp
Z2hiZF9scGZfdmVydGljYWxfMTZfZHVhbF9uZW9uLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgJnZweF9oaWdoYmRfbHBmX3ZlcnRpY2FsXzE2X2R1YWxfYywgMTIpKSk7Ci1JTlNU
QU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBORU9O
LCBMb29wOFRlc3Q5UGFyYW0sCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4
X2hpZ2hiZF9scGZfaG9yaXpvbnRhbF80X2R1YWxfbmVvbiwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICZ2cHhfaGlnaGJkX2xwZl9ob3Jpem9udGFsXzRfZHVhbF9jLCA4KSwKQEAg
LTYwNCw3ICs2MTQsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgICAgICAg
ICAgICAgICBtYWtlX3R1cGxlKCZ2cHhfaGlnaGJkX2xwZl92ZXJ0aWNhbF84X2R1YWxfbmVvbiwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfaGlnaGJkX2xwZl92ZXJ0aWNh
bF84X2R1YWxfYywgMTIpKSk7CiAjZWxzZQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNU
QU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTkVPTiwgTG9vcDhUZXN0NlBhcmFtLAogICAgIDo6
dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBtYWtlX3R1cGxlKCZ2cHhfbHBmX2hvcml6b250YWxf
MTZfbmVvbiwgJnZweF9scGZfaG9yaXpvbnRhbF8xNl9jLCA4KSwKQEAgLTYxNyw3ICs2MjcsNyBA
QCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgbWFrZV90dXBsZSgmdnB4X2xwZl92
ZXJ0aWNhbF84X25lb24sICZ2cHhfbHBmX3ZlcnRpY2FsXzhfYywgOCksCiAgICAgICAgIG1ha2Vf
dHVwbGUoJnZweF9scGZfaG9yaXpvbnRhbF80X25lb24sICZ2cHhfbHBmX2hvcml6b250YWxfNF9j
LCA4KSwKICAgICAgICAgbWFrZV90dXBsZSgmdnB4X2xwZl92ZXJ0aWNhbF80X25lb24sICZ2cHhf
bHBmX3ZlcnRpY2FsXzRfYywgOCkpKTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QKAogICAgIE5FT04sIExvb3A4VGVzdDlQYXJhbSwKICAgICA6OnRl
c3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfbHBmX2hvcml6b250YWxfOF9kdWFsX25lb24s
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2xwZl9ob3Jpem9udGFsXzhf
ZHVhbF9jLCA4KSwKQEAgLTYzMSw3ICs2NDEsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgK
ICNlbmRpZiAgLy8gSEFWRV9ORU9OCiAKICNpZiBIQVZFX0RTUFIyICYmICFDT05GSUdfVlA5X0hJ
R0hCSVRERVBUSAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NV
SVRFX1AoCiAgICAgRFNQUjIsIExvb3A4VGVzdDZQYXJhbSwKICAgICA6OnRlc3Rpbmc6OlZhbHVl
cygKICAgICAgICAgbWFrZV90dXBsZSgmdnB4X2xwZl9ob3Jpem9udGFsXzRfZHNwcjIsICZ2cHhf
bHBmX2hvcml6b250YWxfNF9jLCA4KSwKQEAgLTY0NSw3ICs2NTUsNyBAQCBJTlNUQU5USUFURV9U
RVNUX0NBU0VfUCgKICAgICAgICAgbWFrZV90dXBsZSgmdnB4X2xwZl92ZXJ0aWNhbF8xNl9kdWFs
X2RzcHIyLCAmdnB4X2xwZl92ZXJ0aWNhbF8xNl9kdWFsX2MsCiAgICAgICAgICAgICAgICAgICAg
OCkpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRF
X1AoCiAgICAgRFNQUjIsIExvb3A4VGVzdDlQYXJhbSwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyht
YWtlX3R1cGxlKCZ2cHhfbHBmX2hvcml6b250YWxfNF9kdWFsX2RzcHIyLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgJnZweF9scGZfaG9yaXpvbnRhbF80X2R1YWxfYywgOCksCkBA
IC02NTgsNyArNjY4LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAjZW5kaWYgIC8vIEhB
VkVfRFNQUjIgJiYgIUNPTkZJR19WUDlfSElHSEJJVERFUFRICiAKICNpZiBIQVZFX01TQSAmJiAo
IUNPTkZJR19WUDlfSElHSEJJVERFUFRIKQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNU
QU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTVNBLCBMb29wOFRlc3Q2UGFyYW0sCiAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIG1ha2VfdHVwbGUoJnZweF9scGZfaG9yaXpvbnRhbF80
X21zYSwgJnZweF9scGZfaG9yaXpvbnRhbF80X2MsIDgpLApAQCAtNjcwLDcgKzY4MCw3IEBAIElO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICBtYWtlX3R1cGxlKCZ2cHhfbHBmX3ZlcnRp
Y2FsXzhfbXNhLCAmdnB4X2xwZl92ZXJ0aWNhbF84X2MsIDgpLAogICAgICAgICBtYWtlX3R1cGxl
KCZ2cHhfbHBmX3ZlcnRpY2FsXzE2X21zYSwgJnZweF9scGZfdmVydGljYWxfMTZfYywgOCkpKTsK
IAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAg
ICAgTVNBLCBMb29wOFRlc3Q5UGFyYW0sCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBs
ZSgmdnB4X2xwZl9ob3Jpem9udGFsXzRfZHVhbF9tc2EsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAmdnB4X2xwZl9ob3Jpem9udGFsXzRfZHVhbF9jLCA4KSwKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdGVzdC9taW5tYXhfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9taW5tYXhf
dGVzdC5jYwppbmRleCA5YzExOTExNmE4ZTJiMTg2NDJiNjkyZThhMjJmOTI5OGFhMDBiNzNkLi4x
MjMyN2JjMTg4YWYzY2FkODU1YmM2MzY1OWVlMGZhYTQ1NDI5MmRiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3Rlc3QvbWlubWF4X3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L21pbm1heF90
ZXN0LmNjCkBAIC0xMTUsMjEgKzExNSwyMSBAQCBURVNUX1AoTWluTWF4VGVzdCwgQ29tcGFyZVJl
ZmVyZW5jZUFuZFZhcnlTdHJpZGUpIHsKICAgfQogfQogCi1JTlNUQU5USUFURV9URVNUX0NBU0Vf
UChDLCBNaW5NYXhUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlcygmdnB4X21pbm1heF84eDhfYykpOwor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKEMsIE1pbk1heFRlc3QsIDo6dGVzdGluZzo6VmFsdWVz
KCZ2cHhfbWlubWF4Xzh4OF9jKSk7CiAKICNpZiBIQVZFX1NTRTIKLUlOU1RBTlRJQVRFX1RFU1Rf
Q0FTRV9QKFNTRTIsIE1pbk1heFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rp
bmc6OlZhbHVlcygmdnB4X21pbm1heF84eDhfc3NlMikpOworSU5TVEFOVElBVEVfVEVTVF9TVUlU
RV9QKFNTRTIsIE1pbk1heFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXMoJnZweF9taW5tYXhfOHg4X3NzZTIpKTsKICNlbmRpZgogCiAjaWYgSEFWRV9ORU9O
Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUChORU9OLCBNaW5NYXhUZXN0LAotICAgICAgICAgICAg
ICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoJnZweF9taW5tYXhfOHg4X25lb24pKTsKK0lO
U1RBTlRJQVRFX1RFU1RfU1VJVEVfUChORU9OLCBNaW5NYXhUZXN0LAorICAgICAgICAgICAgICAg
ICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKCZ2cHhfbWlubWF4Xzh4OF9uZW9uKSk7CiAjZW5k
aWYKIAogI2lmIEhBVkVfTVNBCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChNU0EsIE1pbk1heFRl
c3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcygmdnB4X21pbm1h
eF84eDhfbXNhKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoTVNBLCBNaW5NYXhUZXN0LAor
ICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKCZ2cHhfbWlubWF4Xzh4
OF9tc2EpKTsKICNlbmRpZgogCiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC9ub25fZ3JlZWR5X212X3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvbm9uX2dyZWVk
eV9tdl90ZXN0LmNjCmluZGV4IGM3ODMzMWIyODUyMTY1Y2JkYTY0ZTFmZjQxOGUwNWZhMzliZGFm
YzAuLjkyNzAyOWRlNDVjYmNkNmU3Mjg3YTBkODRjZDdjOWJiZTZkOTljNjUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdGVzdC9ub25fZ3JlZWR5X212X3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90
ZXN0L25vbl9ncmVlZHlfbXZfdGVzdC5jYwpAQCAtMTI5LDExICsxMjksMTEgQEAgVEVTVChub25f
Z3JlZWR5X212LCBzbW9vdGhfbWYpIHsKICAgY29uc3QgY2hhciAqZ3JvdW5kX3RydXRoX2ZpbGUg
PQogICAgICAgIm5vbl9ncmVlZHlfbXZfdGVzdF9maWxlcy9ncm91bmRfdHJ1dGhfMTZ4MTYudHh0
IjsKICAgQkxPQ0tfU0laRSBic2l6ZSA9IEJMT0NLXzMyWDMyOwotICBNViAqc2VhcmNoX21mID0g
TlVMTDsKLSAgTVYgKnNtb290aF9tZiA9IE5VTEw7Ci0gIE1WICplc3RpbWF0aW9uID0gTlVMTDsK
LSAgTVYgKmdyb3VuZF90cnV0aCA9IE5VTEw7Ci0gIGludCgqbG9jYWxfdmFyKVtNRl9MT0NBTF9T
VFJVQ1RVUkVfU0laRV0gPSBOVUxMOworICBNViAqc2VhcmNoX21mID0gbnVsbHB0cjsKKyAgTVYg
KnNtb290aF9tZiA9IG51bGxwdHI7CisgIE1WICplc3RpbWF0aW9uID0gbnVsbHB0cjsKKyAgTVYg
Kmdyb3VuZF90cnV0aCA9IG51bGxwdHI7CisgIGludCgqbG9jYWxfdmFyKVtNRl9MT0NBTF9TVFJV
Q1RVUkVfU0laRV0gPSBudWxscHRyOwogICBpbnQgcm93cyA9IDAsIGNvbHMgPSAwOwogCiAgIGlu
dCBhbHBoYSA9IDEwMCwgbWF4X2l0ZXIgPSAxMDA7CkBAIC0xNjksOCArMTY5LDggQEAgVEVTVChu
b25fZ3JlZWR5X212LCBsb2NhbF92YXIpIHsKICAgY29uc3QgY2hhciAqZ3RfbG9jYWxfdmFyX2Zp
bGUgPSAibm9uX2dyZWVkeV9tdl90ZXN0X2ZpbGVzL2xvY2FsVmFyXzE2eDE2LnR4dCI7CiAgIGNv
bnN0IGNoYXIgKnNlYXJjaF9tZl9maWxlID0gIm5vbl9ncmVlZHlfbXZfdGVzdF9maWxlcy9leGhh
dXN0XzE2eDE2LnR4dCI7CiAgIEJMT0NLX1NJWkUgYnNpemUgPSBCTE9DS18xNlgxNjsKLSAgaW50
KCpndF9sb2NhbF92YXIpW01GX0xPQ0FMX1NUUlVDVFVSRV9TSVpFXSA9IE5VTEw7Ci0gIGludCgq
ZXN0X2xvY2FsX3ZhcilbTUZfTE9DQUxfU1RSVUNUVVJFX1NJWkVdID0gTlVMTDsKKyAgaW50KCpn
dF9sb2NhbF92YXIpW01GX0xPQ0FMX1NUUlVDVFVSRV9TSVpFXSA9IG51bGxwdHI7CisgIGludCgq
ZXN0X2xvY2FsX3ZhcilbTUZfTE9DQUxfU1RSVUNUVVJFX1NJWkVdID0gbnVsbHB0cjsKICAgWVYx
Ml9CVUZGRVJfQ09ORklHIHJlZl9mcmFtZSwgY3VyX2ZyYW1lOwogICBpbnQgcm93cywgY29sczsK
ICAgTVYgKnNlYXJjaF9tZjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9wYXJ0aWFsX2lk
Y3RfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9wYXJ0aWFsX2lkY3RfdGVzdC5jYwppbmRleCBl
NjZhNjk1ZWIwZDU0NzkzZTg0NzNhOTU1YjkwNjYwYjQwMGMxODAwLi5hMTYwMTIwZGUxZjlmYTJj
ZTU0YTAyN2RjODRkZjU2ZmMyZGMxMDA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvcGFy
dGlhbF9pZGN0X3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3BhcnRpYWxfaWRjdF90ZXN0
LmNjCkBAIC0xMDIsMTEgKzEwMiwxMSBAQCBjbGFzcyBQYXJ0aWFsSURjdFRlc3QgOiBwdWJsaWMg
Ojp0ZXN0aW5nOjpUZXN0V2l0aFBhcmFtPFBhcnRpYWxJbnZUeGZtUGFyYW0+IHsKIAogICB2aXJ0
dWFsIHZvaWQgVGVhckRvd24oKSB7CiAgICAgdnB4X2ZyZWUoaW5wdXRfYmxvY2tfKTsKLSAgICBp
bnB1dF9ibG9ja18gPSBOVUxMOworICAgIGlucHV0X2Jsb2NrXyA9IG51bGxwdHI7CiAgICAgdnB4
X2ZyZWUob3V0cHV0X2Jsb2NrXyk7Ci0gICAgb3V0cHV0X2Jsb2NrXyA9IE5VTEw7CisgICAgb3V0
cHV0X2Jsb2NrXyA9IG51bGxwdHI7CiAgICAgdnB4X2ZyZWUob3V0cHV0X2Jsb2NrX3JlZl8pOwot
ICAgIG91dHB1dF9ibG9ja19yZWZfID0gTlVMTDsKKyAgICBvdXRwdXRfYmxvY2tfcmVmXyA9IG51
bGxwdHI7CiAgICAgbGlidnB4X3Rlc3Q6OkNsZWFyU3lzdGVtU3RhdGUoKTsKICAgfQogCkBAIC00
NzQsOCArNDc0LDggQEAgY29uc3QgUGFydGlhbEludlR4Zm1QYXJhbSBjX3BhcnRpYWxfaWRjdF90
ZXN0c1tdID0gewogICAgICAgICAgICAgICZ3cmFwcGVyPHZweF9pZGN0NHg0XzFfYWRkX2M+LCBU
WF80WDQsIDEsIDgsIDEpCiB9OwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChDLCBQYXJ0aWFs
SURjdFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGNf
cGFydGlhbF9pZGN0X3Rlc3RzKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoQywgUGFydGlh
bElEY3RUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4o
Y19wYXJ0aWFsX2lkY3RfdGVzdHMpKTsKIAogI2lmICFDT05GSUdfRU1VTEFURV9IQVJEV0FSRQog
CkBAIC02MjUsOCArNjI1LDggQEAgY29uc3QgUGFydGlhbEludlR4Zm1QYXJhbSBuZW9uX3BhcnRp
YWxfaWRjdF90ZXN0c1tdID0gewogICAgICAgICAgICAgICZ3cmFwcGVyPHZweF9pZGN0NHg0XzFf
YWRkX25lb24+LCBUWF80WDQsIDEsIDgsIDEpCiB9OwogCi1JTlNUQU5USUFURV9URVNUX0NBU0Vf
UChORU9OLCBQYXJ0aWFsSURjdFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rp
bmc6OlZhbHVlc0luKG5lb25fcGFydGlhbF9pZGN0X3Rlc3RzKSk7CitJTlNUQU5USUFURV9URVNU
X1NVSVRFX1AoTkVPTiwgUGFydGlhbElEY3RUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAg
IDo6dGVzdGluZzo6VmFsdWVzSW4obmVvbl9wYXJ0aWFsX2lkY3RfdGVzdHMpKTsKICNlbmRpZiAg
Ly8gSEFWRV9ORU9OCiAKICNpZiBIQVZFX1NTRTIKQEAgLTc3Niw4ICs3NzYsOCBAQCBjb25zdCBQ
YXJ0aWFsSW52VHhmbVBhcmFtIHNzZTJfcGFydGlhbF9pZGN0X3Rlc3RzW10gPSB7CiAgICAgICAg
ICAgICAgJndyYXBwZXI8dnB4X2lkY3Q0eDRfMV9hZGRfc3NlMj4sIFRYXzRYNCwgMSwgOCwgMSkK
IH07CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKFNTRTIsIFBhcnRpYWxJRGN0VGVzdCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oc3NlMl9wYXJ0aWFsX2lk
Y3RfdGVzdHMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChTU0UyLCBQYXJ0aWFsSURjdFRl
c3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihzc2UyX3Bh
cnRpYWxfaWRjdF90ZXN0cykpOwogCiAjZW5kaWYgIC8vIEhBVkVfU1NFMgogCkBAIC03OTEsOCAr
NzkxLDggQEAgY29uc3QgUGFydGlhbEludlR4Zm1QYXJhbSBzc3NlM19wYXJ0aWFsX2lkY3RfdGVz
dHNbXSA9IHsKICAgICAgICAgICAgICAmd3JhcHBlcjx2cHhfaWRjdDh4OF8xMl9hZGRfc3NzZTM+
LCBUWF84WDgsIDEyLCA4LCAxKQogfTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoU1NTRTMs
IFBhcnRpYWxJRGN0VGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFs
dWVzSW4oc3NzZTNfcGFydGlhbF9pZGN0X3Rlc3RzKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRF
X1AoU1NTRTMsIFBhcnRpYWxJRGN0VGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRl
c3Rpbmc6OlZhbHVlc0luKHNzc2UzX3BhcnRpYWxfaWRjdF90ZXN0cykpOwogI2VuZGlmICAvLyBI
QVZFX1NTU0UzCiAKICNpZiBIQVZFX1NTRTRfMSAmJiBDT05GSUdfVlA5X0hJR0hCSVRERVBUSApA
QCAtODg5LDggKzg4OSw4IEBAIGNvbnN0IFBhcnRpYWxJbnZUeGZtUGFyYW0gc3NlNF8xX3BhcnRp
YWxfaWRjdF90ZXN0c1tdID0gewogICAgICAgJmhpZ2hiZF93cmFwcGVyPHZweF9oaWdoYmRfaWRj
dDR4NF8xNl9hZGRfc3NlNF8xPiwgVFhfNFg0LCAxNiwgMTIsIDIpCiB9OwogCi1JTlNUQU5USUFU
RV9URVNUX0NBU0VfUChTU0U0XzEsIFBhcnRpYWxJRGN0VGVzdCwKLSAgICAgICAgICAgICAgICAg
ICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oc3NlNF8xX3BhcnRpYWxfaWRjdF90ZXN0cykpOwor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFNTRTRfMSwgUGFydGlhbElEY3RUZXN0LAorICAgICAg
ICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oc3NlNF8xX3BhcnRpYWxfaWRj
dF90ZXN0cykpOwogI2VuZGlmICAvLyBIQVZFX1NTRTRfMSAmJiBDT05GSUdfVlA5X0hJR0hCSVRE
RVBUSAogCiAjaWYgSEFWRV9EU1BSMiAmJiAhQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKQEAgLTkx
OSw4ICs5MTksOCBAQCBjb25zdCBQYXJ0aWFsSW52VHhmbVBhcmFtIGRzcHIyX3BhcnRpYWxfaWRj
dF90ZXN0c1tdID0gewogICAgICAgICAgICAgICZ3cmFwcGVyPHZweF9pZGN0NHg0XzFfYWRkX2Rz
cHIyPiwgVFhfNFg0LCAxLCA4LCAxKQogfTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoRFNQ
UjIsIFBhcnRpYWxJRGN0VGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6
VmFsdWVzSW4oZHNwcjJfcGFydGlhbF9pZGN0X3Rlc3RzKSk7CitJTlNUQU5USUFURV9URVNUX1NV
SVRFX1AoRFNQUjIsIFBhcnRpYWxJRGN0VGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6
OnRlc3Rpbmc6OlZhbHVlc0luKGRzcHIyX3BhcnRpYWxfaWRjdF90ZXN0cykpOwogI2VuZGlmICAv
LyBIQVZFX0RTUFIyICYmICFDT05GSUdfVlA5X0hJR0hCSVRERVBUSAogCiAjaWYgSEFWRV9NU0Eg
JiYgIUNPTkZJR19WUDlfSElHSEJJVERFUFRICkBAIC05NTAsOCArOTUwLDggQEAgY29uc3QgUGFy
dGlhbEludlR4Zm1QYXJhbSBtc2FfcGFydGlhbF9pZGN0X3Rlc3RzW10gPSB7CiAgICAgICAgICAg
ICAgJndyYXBwZXI8dnB4X2lkY3Q0eDRfMV9hZGRfbXNhPiwgVFhfNFg0LCAxLCA4LCAxKQogfTsK
IAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTVNBLCBQYXJ0aWFsSURjdFRlc3QsCi0gICAgICAg
ICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKG1zYV9wYXJ0aWFsX2lkY3RfdGVz
dHMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChNU0EsIFBhcnRpYWxJRGN0VGVzdCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKG1zYV9wYXJ0aWFsX2lk
Y3RfdGVzdHMpKTsKICNlbmRpZiAgLy8gSEFWRV9NU0EgJiYgIUNPTkZJR19WUDlfSElHSEJJVERF
UFRICiAKICNlbmRpZiAgLy8gIUNPTkZJR19FTVVMQVRFX0hBUkRXQVJFCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3Rlc3QvcG9zdHByb2Muc2ggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvcG9zdHByb2Muc2gK
aW5kZXggOTM5YTNlNzYyMGEzNjM5N2VjZDg5MzdhNTdiZTBlNzg4MTM4NWVjOC4uOTFjYTliMjZm
ZWE5MGI5YTJhZmYxMzQ0OWM4YzQ1YWM2YjNiOWU2ZSAxMDA3NTUKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90
ZXN0L3Bvc3Rwcm9jLnNoCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9wb3N0cHJvYy5zaApAQCAtMzgs
NyArMzgsNyBAQCBwb3N0cHJvYygpIHsKICAgZmkKIAogICBldmFsICIke1ZQWF9URVNUX1BSRUZJ
WH0iICIke2RlY29kZXJ9IiAiJHtpbnB1dF9maWxlfSIgIiR7b3V0cHV0X2ZpbGV9IiBcCi0gICAg
ICAke2Rldm51bGx9CisgICAgICAke2Rldm51bGx9IHx8IHJldHVybiAxCiAKICAgWyAtZSAiJHtv
dXRwdXRfZmlsZX0iIF0gfHwgcmV0dXJuIDEKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVz
dC9wcF9maWx0ZXJfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9wcF9maWx0ZXJfdGVzdC5jYwpp
bmRleCAxZWQyNjFiZjliNjllYWQ2OGFjMmVmMzA4NTQ3YmQ2YzM4MDdlMmEzLi5hNTExZmZiZTk4
ZDA1ZGIxZDE2Zjc4ODg4OGUzNjdiNGVhYjBhODk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rl
c3QvcHBfZmlsdGVyX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3BwX2ZpbHRlcl90ZXN0
LmNjCkBAIC00NTksNyArNDU5LDcgQEAgVEVTVF9QKFZweE1iUG9zdFByb2NEb3duVGVzdCwgQ2hl
Y2tMb3dGaWx0ZXJPdXRwdXQpIHsKICAgU2V0Um93cyhzcmNfY18uVG9wTGVmdFBpeGVsKCksIHJv
d3NfLCBjb2xzXywgc3JjX2NfLnN0cmlkZSgpKTsKIAogICB1bnNpZ25lZCBjaGFyICpleHBlY3Rl
ZF9vdXRwdXQgPSBuZXcgdW5zaWduZWQgY2hhcltyb3dzXyAqIGNvbHNfXTsKLSAgQVNTRVJUX1RS
VUUoZXhwZWN0ZWRfb3V0cHV0ICE9IE5VTEwpOworICBBU1NFUlRfTkUoZXhwZWN0ZWRfb3V0cHV0
LCBudWxscHRyKTsKICAgU2V0Um93cyhleHBlY3RlZF9vdXRwdXQsIHJvd3NfLCBjb2xzXywgY29s
c18pOwogCiAgIFJ1bkZpbHRlckxldmVsKHNyY19jXy5Ub3BMZWZ0UGl4ZWwoKSwgcm93c18sIGNv
bHNfLCBzcmNfY18uc3RyaWRlKCksIHEybWJsKDApLApAQCAtNTExLDYyICs1MTEsNjIgQEAgVEVT
VF9QKFZweE1iUG9zdFByb2NEb3duVGVzdCwgRElTQUJMRURfU3BlZWQpIHsKICAgUHJpbnRNZWRp
YW4oIjE2eDE2Iik7CiB9CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QKAogICAgIEMsIFZweFBvc3RQcm9jRG93bkFuZEFjcm9zc01iUm93VGVzdCwK
ICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfcG9zdF9wcm9jX2Rvd25fYW5kX2Fjcm9zc19tYl9y
b3dfYykpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChDLCBWcHhNYlBvc3RQcm9jQWNyb3Nz
SXBUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X21i
cG9zdF9wcm9jX2Fjcm9zc19pcF9jKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoQywgVnB4
TWJQb3N0UHJvY0Fjcm9zc0lwVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rp
bmc6OlZhbHVlcyh2cHhfbWJwb3N0X3Byb2NfYWNyb3NzX2lwX2MpKTsKIAotSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoQywgVnB4TWJQb3N0UHJvY0Rvd25UZXN0LAotICAgICAgICAgICAgICAgICAg
ICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X21icG9zdF9wcm9jX2Rvd25fYykpOworSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QKEMsIFZweE1iUG9zdFByb2NEb3duVGVzdCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfbWJwb3N0X3Byb2NfZG93bl9jKSk7
CiAKICNpZiBIQVZFX1NTRTIKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QKAogICAgIFNTRTIsIFZweFBvc3RQcm9jRG93bkFuZEFjcm9zc01iUm93VGVz
dCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfcG9zdF9wcm9jX2Rvd25fYW5kX2Fjcm9zc19t
Yl9yb3dfc3NlMikpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChTU0UyLCBWcHhNYlBvc3RQ
cm9jQWNyb3NzSXBUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXModnB4X21icG9zdF9wcm9jX2Fjcm9zc19pcF9zc2UyKSk7CitJTlNUQU5USUFURV9URVNUX1NV
SVRFX1AoU1NFMiwgVnB4TWJQb3N0UHJvY0Fjcm9zc0lwVGVzdCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfbWJwb3N0X3Byb2NfYWNyb3NzX2lwX3NzZTIp
KTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoU1NFMiwgVnB4TWJQb3N0UHJvY0Rvd25UZXN0
LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X21icG9zdF9w
cm9jX2Rvd25fc3NlMikpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFNTRTIsIFZweE1iUG9z
dFByb2NEb3duVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVl
cyh2cHhfbWJwb3N0X3Byb2NfZG93bl9zc2UyKSk7CiAjZW5kaWYgIC8vIEhBVkVfU1NFMgogCiAj
aWYgSEFWRV9ORU9OCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1Rf
U1VJVEVfUCgKICAgICBORU9OLCBWcHhQb3N0UHJvY0Rvd25BbmRBY3Jvc3NNYlJvd1Rlc3QsCiAg
ICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X3Bvc3RfcHJvY19kb3duX2FuZF9hY3Jvc3NfbWJfcm93
X25lb24pKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTkVPTiwgVnB4TWJQb3N0UHJvY0Fj
cm9zc0lwVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZw
eF9tYnBvc3RfcHJvY19hY3Jvc3NfaXBfbmVvbikpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9Q
KE5FT04sIFZweE1iUG9zdFByb2NBY3Jvc3NJcFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X21icG9zdF9wcm9jX2Fjcm9zc19pcF9uZW9uKSk7CiAK
LUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE5FT04sIFZweE1iUG9zdFByb2NEb3duVGVzdCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZweF9tYnBvc3RfcHJvY19k
b3duX25lb24pKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChORU9OLCBWcHhNYlBvc3RQcm9j
RG93blRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4
X21icG9zdF9wcm9jX2Rvd25fbmVvbikpOwogI2VuZGlmICAvLyBIQVZFX05FT04KIAogI2lmIEhB
VkVfTVNBCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVf
UCgKICAgICBNU0EsIFZweFBvc3RQcm9jRG93bkFuZEFjcm9zc01iUm93VGVzdCwKICAgICA6OnRl
c3Rpbmc6OlZhbHVlcyh2cHhfcG9zdF9wcm9jX2Rvd25fYW5kX2Fjcm9zc19tYl9yb3dfbXNhKSk7
CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE1TQSwgVnB4TWJQb3N0UHJvY0Fjcm9zc0lwVGVz
dCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZweF9tYnBvc3Rf
cHJvY19hY3Jvc3NfaXBfbXNhKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoTVNBLCBWcHhN
YlBvc3RQcm9jQWNyb3NzSXBUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGlu
Zzo6VmFsdWVzKHZweF9tYnBvc3RfcHJvY19hY3Jvc3NfaXBfbXNhKSk7CiAKLUlOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKE1TQSwgVnB4TWJQb3N0UHJvY0Rvd25UZXN0LAotICAgICAgICAgICAgICAg
ICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X21icG9zdF9wcm9jX2Rvd25fbXNhKSk7CitJ
TlNUQU5USUFURV9URVNUX1NVSVRFX1AoTVNBLCBWcHhNYlBvc3RQcm9jRG93blRlc3QsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X21icG9zdF9wcm9jX2Rv
d25fbXNhKSk7CiAjZW5kaWYgIC8vIEhBVkVfTVNBCiAKICNpZiBIQVZFX1ZTWAotSU5TVEFOVElB
VEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgVlNYLCBWcHhQ
b3N0UHJvY0Rvd25BbmRBY3Jvc3NNYlJvd1Rlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4
X3Bvc3RfcHJvY19kb3duX2FuZF9hY3Jvc3NfbWJfcm93X3ZzeCkpOwogCi1JTlNUQU5USUFURV9U
RVNUX0NBU0VfUChWU1gsIFZweE1iUG9zdFByb2NBY3Jvc3NJcFRlc3QsCi0gICAgICAgICAgICAg
ICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfbWJwb3N0X3Byb2NfYWNyb3NzX2lwX3Zz
eCkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFZTWCwgVnB4TWJQb3N0UHJvY0Fjcm9zc0lw
VGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfbWJw
b3N0X3Byb2NfYWNyb3NzX2lwX3ZzeCkpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChWU1gs
IFZweE1iUG9zdFByb2NEb3duVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGlu
Zzo6VmFsdWVzKHZweF9tYnBvc3RfcHJvY19kb3duX3ZzeCkpOworSU5TVEFOVElBVEVfVEVTVF9T
VUlURV9QKFZTWCwgVnB4TWJQb3N0UHJvY0Rvd25UZXN0LAorICAgICAgICAgICAgICAgICAgICAg
ICAgIDo6dGVzdGluZzo6VmFsdWVzKHZweF9tYnBvc3RfcHJvY19kb3duX3ZzeCkpOwogI2VuZGlm
ICAvLyBIQVZFX1ZTWAogCiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dGVzdC9wcmVkaWN0X3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvcHJlZGljdF90ZXN0LmNjCmlu
ZGV4IGQ0MGQ5Yzc1NWU2N2UwYTIxYmUwZmI3MGViYTkxNWM5ZGQ5MTQwY2YuLjc0NzI5NzA1NzYx
YmRmNTBmNGFhOGNmMTE4NTIwMGJjMjIxMzIyNGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVz
dC9wcmVkaWN0X3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ByZWRpY3RfdGVzdC5jYwpA
QCAtNDEsMTEgKzQxLDExIEBAIGNsYXNzIFByZWRpY3RUZXN0QmFzZSA6IHB1YmxpYyBBYnN0cmFj
dEJlbmNoLAogIHB1YmxpYzoKICAgUHJlZGljdFRlc3RCYXNlKCkKICAgICAgIDogd2lkdGhfKEdF
VF9QQVJBTSgwKSksIGhlaWdodF8oR0VUX1BBUkFNKDEpKSwgcHJlZGljdF8oR0VUX1BBUkFNKDIp
KSwKLSAgICAgICAgc3JjXyhOVUxMKSwgcGFkZGVkX2RzdF8oTlVMTCksIGRzdF8oTlVMTCksIGRz
dF9jXyhOVUxMKSB7fQorICAgICAgICBzcmNfKG51bGxwdHIpLCBwYWRkZWRfZHN0XyhudWxscHRy
KSwgZHN0XyhudWxscHRyKSwgZHN0X2NfKG51bGxwdHIpIHt9CiAKICAgdmlydHVhbCB2b2lkIFNl
dFVwKCkgewogICAgIHNyY18gPSBuZXcgdWludDhfdFtrU3JjU2l6ZV07Ci0gICAgQVNTRVJUX1RS
VUUoc3JjXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoc3JjXywgbnVsbHB0cik7CiAKICAgICAv
LyBwYWRkZWRfZHN0XyBwcm92aWRlcyBhIGJ1ZmZlciBvZiBrQm9yZGVyU2l6ZSBhcm91bmQgdGhl
IGRlc3RpbmF0aW9uCiAgICAgLy8gbWVtb3J5IHRvIGZhY2lsaXRhdGUgZGV0ZWN0aW5nIG91dCBv
ZiBib3VuZHMgd3JpdGVzLgpAQCAtNTMsMTEgKzUzLDExIEBAIGNsYXNzIFByZWRpY3RUZXN0QmFz
ZSA6IHB1YmxpYyBBYnN0cmFjdEJlbmNoLAogICAgIHBhZGRlZF9kc3Rfc2l6ZV8gPSBkc3Rfc3Ry
aWRlXyAqIChrQm9yZGVyU2l6ZSArIGhlaWdodF8gKyBrQm9yZGVyU2l6ZSk7CiAgICAgcGFkZGVk
X2RzdF8gPQogICAgICAgICByZWludGVycHJldF9jYXN0PHVpbnQ4X3QgKj4odnB4X21lbWFsaWdu
KDE2LCBwYWRkZWRfZHN0X3NpemVfKSk7Ci0gICAgQVNTRVJUX1RSVUUocGFkZGVkX2RzdF8gIT0g
TlVMTCk7CisgICAgQVNTRVJUX05FKHBhZGRlZF9kc3RfLCBudWxscHRyKTsKICAgICBkc3RfID0g
cGFkZGVkX2RzdF8gKyAoa0JvcmRlclNpemUgKiBkc3Rfc3RyaWRlXykgKyBrQm9yZGVyU2l6ZTsK
IAogICAgIGRzdF9jXyA9IG5ldyB1aW50OF90WzE2ICogMTZdOwotICAgIEFTU0VSVF9UUlVFKGRz
dF9jXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoZHN0X2NfLCBudWxscHRyKTsKIAogICAgIG1l
bXNldChzcmNfLCAwLCBrU3JjU2l6ZSk7CiAgICAgbWVtc2V0KHBhZGRlZF9kc3RfLCAxMjgsIHBh
ZGRlZF9kc3Rfc2l6ZV8pOwpAQCAtNjYsMTIgKzY2LDEyIEBAIGNsYXNzIFByZWRpY3RUZXN0QmFz
ZSA6IHB1YmxpYyBBYnN0cmFjdEJlbmNoLAogCiAgIHZpcnR1YWwgdm9pZCBUZWFyRG93bigpIHsK
ICAgICBkZWxldGVbXSBzcmNfOwotICAgIHNyY18gPSBOVUxMOworICAgIHNyY18gPSBudWxscHRy
OwogICAgIHZweF9mcmVlKHBhZGRlZF9kc3RfKTsKLSAgICBwYWRkZWRfZHN0XyA9IE5VTEw7Ci0g
ICAgZHN0XyA9IE5VTEw7CisgICAgcGFkZGVkX2RzdF8gPSBudWxscHRyOworICAgIGRzdF8gPSBu
dWxscHRyOwogICAgIGRlbGV0ZVtdIGRzdF9jXzsKLSAgICBkc3RfY18gPSBOVUxMOworICAgIGRz
dF9jXyA9IG51bGxwdHI7CiAgICAgbGlidnB4X3Rlc3Q6OkNsZWFyU3lzdGVtU3RhdGUoKTsKICAg
fQogCkBAIC0yOTgsMTQgKzI5OCwxNCBAQCBURVNUX1AoU2l4dGFwUHJlZGljdFRlc3QsIFRlc3RX
aXRoUHJlc2V0RGF0YSkgewogICAgICAgQ29tcGFyZUJ1ZmZlcnMoa0V4cGVjdGVkRHN0LCBrRXhw
ZWN0ZWREc3RTdHJpZGUsIGRzdF8sIGRzdF9zdHJpZGVfKSk7CiB9CiAKLUlOU1RBTlRJQVRFX1RF
U1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEMsIFNpeHRhcFByZWRp
Y3RUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoMTYsIDE2LCAmdnA4X3Np
eHRhcF9wcmVkaWN0MTZ4MTZfYyksCiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSg4
LCA4LCAmdnA4X3NpeHRhcF9wcmVkaWN0OHg4X2MpLAogICAgICAgICAgICAgICAgICAgICAgIG1h
a2VfdHVwbGUoOCwgNCwgJnZwOF9zaXh0YXBfcHJlZGljdDh4NF9jKSwKICAgICAgICAgICAgICAg
ICAgICAgICBtYWtlX3R1cGxlKDQsIDQsICZ2cDhfc2l4dGFwX3ByZWRpY3Q0eDRfYykpKTsKICNp
ZiBIQVZFX05FT04KLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9T
VUlURV9QKAogICAgIE5FT04sIFNpeHRhcFByZWRpY3RUZXN0LAogICAgIDo6dGVzdGluZzo6VmFs
dWVzKG1ha2VfdHVwbGUoMTYsIDE2LCAmdnA4X3NpeHRhcF9wcmVkaWN0MTZ4MTZfbmVvbiksCiAg
ICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSg4LCA4LCAmdnA4X3NpeHRhcF9wcmVkaWN0
OHg4X25lb24pLApAQCAtMzEzLDE5ICszMTMsMTkgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1Ao
CiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSg0LCA0LCAmdnA4X3NpeHRhcF9wcmVk
aWN0NHg0X25lb24pKSk7CiAjZW5kaWYKICNpZiBIQVZFX01NWAotSU5TVEFOVElBVEVfVEVTVF9D
QVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTU1YLCBTaXh0YXBQcmVkaWN0
VGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDQsIDQsICZ2cDhfc2l4dGFw
X3ByZWRpY3Q0eDRfbW14KSkpOwogI2VuZGlmCiAjaWYgSEFWRV9TU0UyCi1JTlNUQU5USUFURV9U
RVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBTU0UyLCBTaXh0YXBQ
cmVkaWN0VGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAxNiwgJnZw
OF9zaXh0YXBfcHJlZGljdDE2eDE2X3NzZTIpLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2Vf
dHVwbGUoOCwgOCwgJnZwOF9zaXh0YXBfcHJlZGljdDh4OF9zc2UyKSwKICAgICAgICAgICAgICAg
ICAgICAgICBtYWtlX3R1cGxlKDgsIDQsICZ2cDhfc2l4dGFwX3ByZWRpY3Q4eDRfc3NlMikpKTsK
ICNlbmRpZgogI2lmIEhBVkVfU1NTRTMKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTU0UzLCBTaXh0YXBQcmVkaWN0VGVzdCwKICAgICA6
OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAxNiwgJnZwOF9zaXh0YXBfcHJlZGljdDE2
eDE2X3Nzc2UzKSwKICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDgsIDgsICZ2cDhf
c2l4dGFwX3ByZWRpY3Q4eDhfc3NzZTMpLApAQCAtMzMzLDcgKzMzMyw3IEBAIElOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoNCwgNCwgJnZw
OF9zaXh0YXBfcHJlZGljdDR4NF9zc3NlMykpKTsKICNlbmRpZgogI2lmIEhBVkVfTVNBCi1JTlNU
QU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBNU0Es
IFNpeHRhcFByZWRpY3RUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoMTYs
IDE2LCAmdnA4X3NpeHRhcF9wcmVkaWN0MTZ4MTZfbXNhKSwKICAgICAgICAgICAgICAgICAgICAg
ICBtYWtlX3R1cGxlKDgsIDgsICZ2cDhfc2l4dGFwX3ByZWRpY3Q4eDhfbXNhKSwKQEAgLTM0Miw3
ICszNDIsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNlbmRpZgogCiAjaWYgSEFWRV9N
TUkKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAog
ICAgIE1NSSwgU2l4dGFwUHJlZGljdFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90
dXBsZSgxNiwgMTYsICZ2cDhfc2l4dGFwX3ByZWRpY3QxNngxNl9tbWkpLAogICAgICAgICAgICAg
ICAgICAgICAgIG1ha2VfdHVwbGUoOCwgOCwgJnZwOF9zaXh0YXBfcHJlZGljdDh4OF9tbWkpLApA
QCAtMzY3LDE0ICszNjcsMTQgQEAgVEVTVF9QKEJpbGluZWFyUHJlZGljdFRlc3QsIERJU0FCTEVE
X1NwZWVkKSB7CiAgIFByaW50TWVkaWFuKHRpdGxlKTsKIH0KIAotSU5TVEFOVElBVEVfVEVTVF9D
QVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgQywgQmlsaW5lYXJQcmVkaWN0
VGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAxNiwgJnZwOF9iaWxp
bmVhcl9wcmVkaWN0MTZ4MTZfYyksCiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSg4
LCA4LCAmdnA4X2JpbGluZWFyX3ByZWRpY3Q4eDhfYyksCiAgICAgICAgICAgICAgICAgICAgICAg
bWFrZV90dXBsZSg4LCA0LCAmdnA4X2JpbGluZWFyX3ByZWRpY3Q4eDRfYyksCiAgICAgICAgICAg
ICAgICAgICAgICAgbWFrZV90dXBsZSg0LCA0LCAmdnA4X2JpbGluZWFyX3ByZWRpY3Q0eDRfYykp
KTsKICNpZiBIQVZFX05FT04KLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QKAogICAgIE5FT04sIEJpbGluZWFyUHJlZGljdFRlc3QsCiAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgxNiwgMTYsICZ2cDhfYmlsaW5lYXJfcHJlZGljdDE2eDE2
X25lb24pLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoOCwgOCwgJnZwOF9iaWxp
bmVhcl9wcmVkaWN0OHg4X25lb24pLApAQCAtMzgyLDcgKzM4Miw3IEBAIElOU1RBTlRJQVRFX1RF
U1RfQ0FTRV9QKAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoNCwgNCwgJnZwOF9i
aWxpbmVhcl9wcmVkaWN0NHg0X25lb24pKSk7CiAjZW5kaWYKICNpZiBIQVZFX1NTRTIKLUlOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTRTIs
IEJpbGluZWFyUHJlZGljdFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgx
NiwgMTYsICZ2cDhfYmlsaW5lYXJfcHJlZGljdDE2eDE2X3NzZTIpLAogICAgICAgICAgICAgICAg
ICAgICAgIG1ha2VfdHVwbGUoOCwgOCwgJnZwOF9iaWxpbmVhcl9wcmVkaWN0OHg4X3NzZTIpLApA
QCAtMzkwLDEzICszOTAsMTMgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAgICAgICAgICAg
ICAgICAgICAgICAgbWFrZV90dXBsZSg0LCA0LCAmdnA4X2JpbGluZWFyX3ByZWRpY3Q0eDRfc3Nl
MikpKTsKICNlbmRpZgogI2lmIEhBVkVfU1NTRTMKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTU0UzLCBCaWxpbmVhclByZWRpY3RUZXN0
LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoMTYsIDE2LCAmdnA4X2JpbGluZWFy
X3ByZWRpY3QxNngxNl9zc3NlMyksCiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSg4
LCA4LCAmdnA4X2JpbGluZWFyX3ByZWRpY3Q4eDhfc3NzZTMpKSk7CiAjZW5kaWYKICNpZiBIQVZF
X01TQQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1Ao
CiAgICAgTVNBLCBCaWxpbmVhclByZWRpY3RUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1h
a2VfdHVwbGUoMTYsIDE2LCAmdnA4X2JpbGluZWFyX3ByZWRpY3QxNngxNl9tc2EpLAogICAgICAg
ICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoOCwgOCwgJnZwOF9iaWxpbmVhcl9wcmVkaWN0OHg4
X21zYSksCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvcXVhbnRpemVfdGVzdC5jYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC9xdWFudGl6ZV90ZXN0LmNjCmluZGV4IGE3NDk3NzQyY2ViYTFiMThiOWVh
NjMzZDFkYTIwMzc5YWM0OTlmMzcuLjc5MmIyMTQzMmViNzZmNzAwODhhNmE1ZWI1OGVmMWMyMGU4
OTA2OWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9xdWFudGl6ZV90ZXN0LmNjCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdGVzdC9xdWFudGl6ZV90ZXN0LmNjCkBAIC00Niw5ICs0Niw5IEBAIGNsYXNz
IFF1YW50aXplVGVzdEJhc2UgewogIHB1YmxpYzoKICAgdmlydHVhbCB+UXVhbnRpemVUZXN0QmFz
ZSgpIHsKICAgICB2cDhfcmVtb3ZlX2NvbXByZXNzb3IoJnZwOF9jb21wXyk7Ci0gICAgdnA4X2Nv
bXBfID0gTlVMTDsKKyAgICB2cDhfY29tcF8gPSBudWxscHRyOwogICAgIHZweF9mcmVlKG1hY3Jv
YmxvY2tkX2RzdF8pOwotICAgIG1hY3JvYmxvY2tkX2RzdF8gPSBOVUxMOworICAgIG1hY3JvYmxv
Y2tkX2RzdF8gPSBudWxscHRyOwogICAgIGxpYnZweF90ZXN0OjpDbGVhclN5c3RlbVN0YXRlKCk7
CiAgIH0KIApAQCAtMTQ2LDYgKzE0Niw3IEBAIGNsYXNzIFF1YW50aXplVGVzdCA6IHB1YmxpYyBR
dWFudGl6ZVRlc3RCYXNlLAogICBWUDhRdWFudGl6ZSBhc21fcXVhbnRfOwogICBWUDhRdWFudGl6
ZSBjX3F1YW50XzsKIH07CitHVEVTVF9BTExPV19VTklOU1RBTlRJQVRFRF9QQVJBTUVURVJJWkVE
X1RFU1QoUXVhbnRpemVUZXN0KTsKIAogVEVTVF9QKFF1YW50aXplVGVzdCwgVGVzdFplcm9JbnB1
dCkgewogICBGaWxsQ29lZmZDb25zdGFudCgwKTsKQEAgLTE4MSw3ICsxODIsNyBAQCBURVNUX1Ao
UXVhbnRpemVUZXN0LCBESVNBQkxFRF9TcGVlZCkgewogfQogCiAjaWYgSEFWRV9TU0UyCi1JTlNU
QU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBTU0Uy
LCBRdWFudGl6ZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIG1ha2VfdHVw
bGUoJnZwOF9mYXN0X3F1YW50aXplX2Jfc3NlMiwgJnZwOF9mYXN0X3F1YW50aXplX2JfYyksCkBA
IC0xODksMjYgKzE5MCwyNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNlbmRpZiAgLy8g
SEFWRV9TU0UyCiAKICNpZiBIQVZFX1NTU0UzCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChTU1NF
MywgUXVhbnRpemVUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXMobWFrZV90dXBsZSgmdnA4X2Zhc3RfcXVhbnRpemVfYl9zc3NlMywKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZwOF9mYXN0X3F1YW50aXpl
X2JfYykpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKKyAgICBTU1NFMywgUXVhbnRpemVU
ZXN0LAorICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZwOF9mYXN0X3F1YW50aXpl
X2Jfc3NzZTMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnA4X2Zhc3RfcXVh
bnRpemVfYl9jKSkpOwogI2VuZGlmICAvLyBIQVZFX1NTU0UzCiAKICNpZiBIQVZFX1NTRTRfMQot
SU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAg
U1NFNF8xLCBRdWFudGl6ZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgm
dnA4X3JlZ3VsYXJfcXVhbnRpemVfYl9zc2U0XzEsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAmdnA4X3JlZ3VsYXJfcXVhbnRpemVfYl9jKSkpOwogI2VuZGlmICAvLyBIQVZFX1NT
RTRfMQogCiAjaWYgSEFWRV9ORU9OCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChORU9OLCBRdWFu
dGl6ZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtl
X3R1cGxlKCZ2cDhfZmFzdF9xdWFudGl6ZV9iX25lb24sCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cDhfZmFzdF9xdWFudGl6ZV9iX2MpKSk7
CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoTkVPTiwgUXVhbnRpemVUZXN0LAorICAgICAgICAg
ICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZwOF9mYXN0X3F1
YW50aXplX2JfbmVvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICZ2cDhfZmFzdF9xdWFudGl6ZV9iX2MpKSk7CiAjZW5kaWYgIC8vIEhBVkVf
TkVPTgogCiAjaWYgSEFWRV9NU0EKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElB
VEVfVEVTVF9TVUlURV9QKAogICAgIE1TQSwgUXVhbnRpemVUZXN0LAogICAgIDo6dGVzdGluZzo6
VmFsdWVzKAogICAgICAgICBtYWtlX3R1cGxlKCZ2cDhfZmFzdF9xdWFudGl6ZV9iX21zYSwgJnZw
OF9mYXN0X3F1YW50aXplX2JfYyksCkBAIC0yMTYsNyArMjE4LDcgQEAgSU5TVEFOVElBVEVfVEVT
VF9DQVNFX1AoCiAjZW5kaWYgIC8vIEhBVkVfTVNBCiAKICNpZiBIQVZFX01NSQotSU5TVEFOVElB
VEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTU1JLCBRdWFu
dGl6ZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIG1ha2VfdHVwbGUoJnZw
OF9mYXN0X3F1YW50aXplX2JfbW1pLCAmdnA4X2Zhc3RfcXVhbnRpemVfYl9jKSwKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGVzdC9yYXRlY3RybF9ydGNfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVz
dC9yYXRlY3RybF9ydGNfdGVzdC5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zYTFjODQ2OWVlNzVjY2YyZDg2MTI1
MzY5NTEwNmRjZjIxYTMwMTA1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3Jh
dGVjdHJsX3J0Y190ZXN0LmNjCkBAIC0wLDAgKzEsMjI5IEBACisvKgorICogIENvcHlyaWdodCAo
YykgMjAyMCBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisg
KgorICogIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxl
IGxpY2Vuc2UKKyAqICB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGluIHRo
ZSByb290IG9mIHRoZSBzb3VyY2UKKyAqICB0cmVlLiBBbiBhZGRpdGlvbmFsIGludGVsbGVjdHVh
bCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQgY2FuIGJlIGZvdW5kCisgKiAgaW4gdGhlIGZpbGUgUEFU
RU5UUy4gIEFsbCBjb250cmlidXRpbmcgcHJvamVjdCBhdXRob3JzIG1heQorICogIGJlIGZvdW5k
IGluIHRoZSBBVVRIT1JTIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZSB0cmVlLgorICov
CisjaW5jbHVkZSAidnA5L3JhdGVjdHJsX3J0Yy5oIgorCisjaW5jbHVkZSA8ZnN0cmVhbT4gIC8v
IE5PTElOVAorI2luY2x1ZGUgPHN0cmluZz4KKworI2luY2x1ZGUgIi4vdnB4X2NvbmZpZy5oIgor
I2luY2x1ZGUgInRoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3Qu
aCIKKyNpbmNsdWRlICJ0ZXN0L2NvZGVjX2ZhY3RvcnkuaCIKKyNpbmNsdWRlICJ0ZXN0L2VuY29k
ZV90ZXN0X2RyaXZlci5oIgorI2luY2x1ZGUgInRlc3QvdXRpbC5oIgorI2luY2x1ZGUgInRlc3Qv
dmlkZW9fc291cmNlLmgiCisjaW5jbHVkZSAidnB4L3ZweF9jb2RlYy5oIgorI2luY2x1ZGUgInZw
eF9wb3J0cy9iaXRvcHMuaCIKKworbmFtZXNwYWNlIHsKKworY29uc3Qgc2l6ZV90IGtOdW1GcmFt
ZSA9IDg1MDsKKworc3RydWN0IEZyYW1lSW5mbyB7CisgIGZyaWVuZCBzdGQ6OmlzdHJlYW0gJm9w
ZXJhdG9yPj4oc3RkOjppc3RyZWFtICZpcywgRnJhbWVJbmZvICZpbmZvKSB7CisgICAgaXMgPj4g
aW5mby5mcmFtZV9pZCA+PiBpbmZvLnNwYXRpYWxfaWQgPj4gaW5mby50ZW1wb3JhbF9pZCA+PiBp
bmZvLmJhc2VfcSA+PgorICAgICAgICBpbmZvLnRhcmdldF9iYW5kd2lkdGggPj4gaW5mby5idWZm
ZXJfbGV2ZWwgPj4gaW5mby5maWx0ZXJfbGV2ZWxfID4+CisgICAgICAgIGluZm8uYnl0ZXNfdXNl
ZDsKKyAgICByZXR1cm4gaXM7CisgIH0KKyAgaW50IGZyYW1lX2lkOworICBpbnQgc3BhdGlhbF9p
ZDsKKyAgaW50IHRlbXBvcmFsX2lkOworICAvLyBCYXNlIFFQCisgIGludCBiYXNlX3E7CisgIHNp
emVfdCB0YXJnZXRfYmFuZHdpZHRoOworICBzaXplX3QgYnVmZmVyX2xldmVsOworICAvLyBMb29w
ZmlsdGVyIGxldmVsCisgIGludCBmaWx0ZXJfbGV2ZWxfOworICAvLyBGcmFtZSBzaXplIGZvciBj
dXJyZW50IGZyYW1lLCB1c2VkIGZvciBwb3NlIGVuY29kZSB1cGRhdGUKKyAgc2l6ZV90IGJ5dGVz
X3VzZWQ7Cit9OworCisvLyBUaGlzIHRlc3QgcnVucyB0aGUgcmF0ZSBjb250cm9sIGludGVyZmFj
ZSBhbmQgY29tcGFyZSBhZ2FpbnN0IGdyb3VuZCB0cnV0aAorLy8gZ2VuZXJhdGVkIGJ5IGVuY29k
ZXJzLgorLy8gU2V0dGluZ3MgZm9yIHRoZSBlbmNvZGVyOgorLy8gRm9yIDEgbGF5ZXI6CisvLwor
Ly8gZXhhbXBsZXMvdnB4X3RlbXBvcmFsX3N2Y19lbmNvZGVyIGdpcHNyZWNfbW90aW9uMS4xMjgw
XzcyMC55dXYgb3V0IHZwOQorLy8gICAgMTI4MCA3MjAgMSAzMCA3IDAgMCAxIDAgMTAwMAorLy8K
Ky8vIEZvciBTVkMgKDMgdGVtcG9yYWwgbGF5ZXJzLCAzIHNwYXRpYWwgbGF5ZXJzKToKKy8vCisv
LyBleGFtcGxlcy92cDlfc3BhdGlhbF9zdmNfZW5jb2RlciAtZiAxMDAwMCAtdyAxMjgwIC1oIDcy
MCAtdCAxLzMwIC1zbCAzCisvLyAtayAxMDAwMCAtYmwgMTAwLDE0MCwyMDAsMjUwLDM1MCw1MDAs
NDUwLDYzMCw5MDAgLWIgMTYwMCAtLXJjLWVuZC11c2FnZT0xCisvLyAtLWxhZy1pbi1mcmFtZXM9
MCAtLXBhc3Nlcz0xIC0tc3BlZWQ9NyAtLXRocmVhZHM9MQorLy8gLS10ZW1wb3JhbC1sYXllcmlu
Zy1tb2RlPTMgLWFxIDEgLXJjc3RhdCAxCisvLyBnaXBzcmVjX21vdGlvbjEuMTI4MF83MjAueXV2
IC1vIG91dC53ZWJtCisvLworLy8gLSBBUV9Nb2RlIDAKKy8vIC0gRGlzYWJsZSBnb2xkZW4gcmVm
cmVzaAorLy8gLSBCaXRyYXRlIHggMiBhdCBmcmFtZS9zdXBlcmZyYW1lIDIwMAorLy8gLSBCaXRy
YXRlIC8gNCBhdCBmcmFtZS9zdXBlcmZyYW1lIDQwMAorLy8KKy8vIFRoZSBnZW5lcmF0ZWQgZmls
ZSBpbmNsdWRlczoKKy8vIGZyYW1lIG51bWJlciwgc3BhdGlhbCBsYXllciBJRCwgdGVtcG9yYWwg
bGF5ZXIgSUQsIGJhc2UgUVAsIHRhcmdldAorLy8gYmFuZHdpZHRoLCBidWZmZXIgbGV2ZWwsIGxv
b3BmaWx0ZXIgbGV2ZWwsIGVuY29kZWQgZnJhbWUgc2l6ZQorLy8gVE9ETyhqaWFuaik6IFJlbW92
ZSBnb2xkZW4gZmlsZXMsIGFuZCBydW4gYWN0dWFsIGVuY29kaW5nIGluIHRoaXMgdGVzdC4KK2Ns
YXNzIFJjSW50ZXJmYWNlVGVzdCA6IHB1YmxpYyA6OnRlc3Rpbmc6OlRlc3QgeworIHB1YmxpYzoK
KyAgZXhwbGljaXQgUmNJbnRlcmZhY2VUZXN0KCkge30KKworICB2aXJ0dWFsIH5SY0ludGVyZmFj
ZVRlc3QoKSB7fQorCisgcHJvdGVjdGVkOgorICB2b2lkIFJ1bk9uZUxheWVyKCkgeworICAgIFNl
dENvbmZpZ09uZUxheWVyKCk7CisgICAgcmNfYXBpXyA9IGxpYnZweDo6VlA5UmF0ZUNvbnRyb2xS
VEM6OkNyZWF0ZShyY19jZmdfKTsKKyAgICBGcmFtZUluZm8gZnJhbWVfaW5mbzsKKyAgICBsaWJ2
cHg6OlZQOUZyYW1lUGFyYW1zUXBSVEMgZnJhbWVfcGFyYW1zOworICAgIGZyYW1lX3BhcmFtcy5m
cmFtZV90eXBlID0gS0VZX0ZSQU1FOworICAgIGZyYW1lX3BhcmFtcy5zcGF0aWFsX2xheWVyX2lk
ID0gMDsKKyAgICBmcmFtZV9wYXJhbXMudGVtcG9yYWxfbGF5ZXJfaWQgPSAwOworICAgIHN0ZDo6
aWZzdHJlYW0gb25lX2xheWVyX2ZpbGU7CisgICAgb25lX2xheWVyX2ZpbGUub3BlbihsaWJ2cHhf
dGVzdDo6R2V0RGF0YVBhdGgoKSArCisgICAgICAgICAgICAgICAgICAgICAgICAiL3JjX2ludGVy
ZmFjZV90ZXN0X29uZV9sYXllciIpOworICAgIEFTU0VSVF9UUlVFKG9uZV9sYXllcl9maWxlLmdv
b2QoKSk7CisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBrTnVtRnJhbWU7IGkrKykgeworICAg
ICAgb25lX2xheWVyX2ZpbGUgPj4gZnJhbWVfaW5mbzsKKyAgICAgIGlmIChmcmFtZV9pbmZvLmZy
YW1lX2lkID4gMCkgZnJhbWVfcGFyYW1zLmZyYW1lX3R5cGUgPSBJTlRFUl9GUkFNRTsKKyAgICAg
IGlmIChmcmFtZV9pbmZvLmZyYW1lX2lkID09IDIwMCkgeworICAgICAgICByY19jZmdfLnRhcmdl
dF9iYW5kd2lkdGggPSByY19jZmdfLnRhcmdldF9iYW5kd2lkdGggKiAyOworICAgICAgICByY19h
cGlfLT5VcGRhdGVSYXRlQ29udHJvbChyY19jZmdfKTsKKyAgICAgIH0gZWxzZSBpZiAoZnJhbWVf
aW5mby5mcmFtZV9pZCA9PSA0MDApIHsKKyAgICAgICAgcmNfY2ZnXy50YXJnZXRfYmFuZHdpZHRo
ID0gcmNfY2ZnXy50YXJnZXRfYmFuZHdpZHRoIC8gNDsKKyAgICAgICAgcmNfYXBpXy0+VXBkYXRl
UmF0ZUNvbnRyb2wocmNfY2ZnXyk7CisgICAgICB9CisgICAgICBBU1NFUlRfRVEoZnJhbWVfaW5m
by5zcGF0aWFsX2lkLCAwKTsKKyAgICAgIEFTU0VSVF9FUShmcmFtZV9pbmZvLnRlbXBvcmFsX2lk
LCAwKTsKKyAgICAgIHJjX2FwaV8tPkNvbXB1dGVRUChmcmFtZV9wYXJhbXMpOworICAgICAgQVNT
RVJUX0VRKHJjX2FwaV8tPkdldFFQKCksIGZyYW1lX2luZm8uYmFzZV9xKTsKKyAgICAgIEFTU0VS
VF9FUShyY19hcGlfLT5HZXRMb29wZmlsdGVyTGV2ZWwoKSwgZnJhbWVfaW5mby5maWx0ZXJfbGV2
ZWxfKTsKKyAgICAgIHJjX2FwaV8tPlBvc3RFbmNvZGVVcGRhdGUoZnJhbWVfaW5mby5ieXRlc191
c2VkKTsKKyAgICB9CisgIH0KKworICB2b2lkIFJ1blNWQygpIHsKKyAgICBTZXRDb25maWdTVkMo
KTsKKyAgICByY19hcGlfID0gbGlidnB4OjpWUDlSYXRlQ29udHJvbFJUQzo6Q3JlYXRlKHJjX2Nm
Z18pOworICAgIEZyYW1lSW5mbyBmcmFtZV9pbmZvOworICAgIGxpYnZweDo6VlA5RnJhbWVQYXJh
bXNRcFJUQyBmcmFtZV9wYXJhbXM7CisgICAgZnJhbWVfcGFyYW1zLmZyYW1lX3R5cGUgPSBLRVlf
RlJBTUU7CisgICAgc3RkOjppZnN0cmVhbSBzdmNfZmlsZTsKKyAgICBzdmNfZmlsZS5vcGVuKHN0
ZDo6c3RyaW5nKHN0ZDo6Z2V0ZW52KCJMSUJWUFhfVEVTVF9EQVRBX1BBVEgiKSkgKworICAgICAg
ICAgICAgICAgICAgIi9yY19pbnRlcmZhY2VfdGVzdF9zdmMiKTsKKyAgICBBU1NFUlRfVFJVRShz
dmNfZmlsZS5nb29kKCkpOworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwga051bUZyYW1lICog
cmNfY2ZnXy5zc19udW1iZXJfbGF5ZXJzOyBpKyspIHsKKyAgICAgIHN2Y19maWxlID4+IGZyYW1l
X2luZm87CisgICAgICBpZiAoZnJhbWVfaW5mby5mcmFtZV9pZCA+IDApIGZyYW1lX3BhcmFtcy5m
cmFtZV90eXBlID0gSU5URVJfRlJBTUU7CisgICAgICBpZiAoZnJhbWVfaW5mby5mcmFtZV9pZCA9
PSAyMDAgKiByY19jZmdfLnNzX251bWJlcl9sYXllcnMpIHsKKyAgICAgICAgZm9yIChpbnQgbGF5
ZXIgPSAwOworICAgICAgICAgICAgIGxheWVyIDwgcmNfY2ZnXy5zc19udW1iZXJfbGF5ZXJzICog
cmNfY2ZnXy50c19udW1iZXJfbGF5ZXJzOworICAgICAgICAgICAgIGxheWVyKyspCisgICAgICAg
ICAgcmNfY2ZnXy5sYXllcl90YXJnZXRfYml0cmF0ZVtsYXllcl0gKj0gMjsKKyAgICAgICAgcmNf
Y2ZnXy50YXJnZXRfYmFuZHdpZHRoICo9IDI7CisgICAgICAgIHJjX2FwaV8tPlVwZGF0ZVJhdGVD
b250cm9sKHJjX2NmZ18pOworICAgICAgfSBlbHNlIGlmIChmcmFtZV9pbmZvLmZyYW1lX2lkID09
IDQwMCAqIHJjX2NmZ18uc3NfbnVtYmVyX2xheWVycykgeworICAgICAgICBmb3IgKGludCBsYXll
ciA9IDA7CisgICAgICAgICAgICAgbGF5ZXIgPCByY19jZmdfLnNzX251bWJlcl9sYXllcnMgKiBy
Y19jZmdfLnRzX251bWJlcl9sYXllcnM7CisgICAgICAgICAgICAgbGF5ZXIrKykKKyAgICAgICAg
ICByY19jZmdfLmxheWVyX3RhcmdldF9iaXRyYXRlW2xheWVyXSAvPSA0OworICAgICAgICByY19j
ZmdfLnRhcmdldF9iYW5kd2lkdGggLz0gNDsKKyAgICAgICAgcmNfYXBpXy0+VXBkYXRlUmF0ZUNv
bnRyb2wocmNfY2ZnXyk7CisgICAgICB9CisgICAgICBmcmFtZV9wYXJhbXMuc3BhdGlhbF9sYXll
cl9pZCA9IGZyYW1lX2luZm8uc3BhdGlhbF9pZDsKKyAgICAgIGZyYW1lX3BhcmFtcy50ZW1wb3Jh
bF9sYXllcl9pZCA9IGZyYW1lX2luZm8udGVtcG9yYWxfaWQ7CisgICAgICByY19hcGlfLT5Db21w
dXRlUVAoZnJhbWVfcGFyYW1zKTsKKyAgICAgIEFTU0VSVF9FUShyY19hcGlfLT5HZXRRUCgpLCBm
cmFtZV9pbmZvLmJhc2VfcSk7CisgICAgICBBU1NFUlRfRVEocmNfYXBpXy0+R2V0TG9vcGZpbHRl
ckxldmVsKCksIGZyYW1lX2luZm8uZmlsdGVyX2xldmVsXyk7CisgICAgICByY19hcGlfLT5Qb3N0
RW5jb2RlVXBkYXRlKGZyYW1lX2luZm8uYnl0ZXNfdXNlZCk7CisgICAgfQorICB9CisKKyBwcml2
YXRlOgorICB2b2lkIFNldENvbmZpZ09uZUxheWVyKCkgeworICAgIHJjX2NmZ18ud2lkdGggPSAx
MjgwOworICAgIHJjX2NmZ18uaGVpZ2h0ID0gNzIwOworICAgIHJjX2NmZ18ubWF4X3F1YW50aXpl
ciA9IDUyOworICAgIHJjX2NmZ18ubWluX3F1YW50aXplciA9IDI7CisgICAgcmNfY2ZnXy50YXJn
ZXRfYmFuZHdpZHRoID0gMTAwMDsKKyAgICByY19jZmdfLmJ1Zl9pbml0aWFsX3N6ID0gNjAwOwor
ICAgIHJjX2NmZ18uYnVmX29wdGltYWxfc3ogPSA2MDA7CisgICAgcmNfY2ZnXy5idWZfc3ogPSAx
MDAwOworICAgIHJjX2NmZ18udW5kZXJzaG9vdF9wY3QgPSA1MDsKKyAgICByY19jZmdfLm92ZXJz
aG9vdF9wY3QgPSA1MDsKKyAgICByY19jZmdfLm1heF9pbnRyYV9iaXRyYXRlX3BjdCA9IDEwMDA7
CisgICAgcmNfY2ZnXy5mcmFtZXJhdGUgPSAzMC4wOworICAgIHJjX2NmZ18uc3NfbnVtYmVyX2xh
eWVycyA9IDE7CisgICAgcmNfY2ZnXy50c19udW1iZXJfbGF5ZXJzID0gMTsKKyAgICByY19jZmdf
LnNjYWxpbmdfZmFjdG9yX251bVswXSA9IDE7CisgICAgcmNfY2ZnXy5zY2FsaW5nX2ZhY3Rvcl9k
ZW5bMF0gPSAxOworICAgIHJjX2NmZ18ubGF5ZXJfdGFyZ2V0X2JpdHJhdGVbMF0gPSAxMDAwOwor
ICAgIHJjX2NmZ18ubWF4X3F1YW50aXplcnNbMF0gPSA1MjsKKyAgICByY19jZmdfLm1pbl9xdWFu
dGl6ZXJzWzBdID0gMjsKKyAgfQorCisgIHZvaWQgU2V0Q29uZmlnU1ZDKCkgeworICAgIHJjX2Nm
Z18ud2lkdGggPSAxMjgwOworICAgIHJjX2NmZ18uaGVpZ2h0ID0gNzIwOworICAgIHJjX2NmZ18u
bWF4X3F1YW50aXplciA9IDU2OworICAgIHJjX2NmZ18ubWluX3F1YW50aXplciA9IDI7CisgICAg
cmNfY2ZnXy50YXJnZXRfYmFuZHdpZHRoID0gMTYwMDsKKyAgICByY19jZmdfLmJ1Zl9pbml0aWFs
X3N6ID0gNTAwOworICAgIHJjX2NmZ18uYnVmX29wdGltYWxfc3ogPSA2MDA7CisgICAgcmNfY2Zn
Xy5idWZfc3ogPSAxMDAwOworICAgIHJjX2NmZ18udW5kZXJzaG9vdF9wY3QgPSA1MDsKKyAgICBy
Y19jZmdfLm92ZXJzaG9vdF9wY3QgPSA1MDsKKyAgICByY19jZmdfLm1heF9pbnRyYV9iaXRyYXRl
X3BjdCA9IDkwMDsKKyAgICByY19jZmdfLmZyYW1lcmF0ZSA9IDMwLjA7CisgICAgcmNfY2ZnXy5z
c19udW1iZXJfbGF5ZXJzID0gMzsKKyAgICByY19jZmdfLnRzX251bWJlcl9sYXllcnMgPSAzOwor
CisgICAgcmNfY2ZnXy5zY2FsaW5nX2ZhY3Rvcl9udW1bMF0gPSAxOworICAgIHJjX2NmZ18uc2Nh
bGluZ19mYWN0b3JfZGVuWzBdID0gNDsKKyAgICByY19jZmdfLnNjYWxpbmdfZmFjdG9yX251bVsx
XSA9IDI7CisgICAgcmNfY2ZnXy5zY2FsaW5nX2ZhY3Rvcl9kZW5bMV0gPSA0OworICAgIHJjX2Nm
Z18uc2NhbGluZ19mYWN0b3JfbnVtWzJdID0gNDsKKyAgICByY19jZmdfLnNjYWxpbmdfZmFjdG9y
X2RlblsyXSA9IDQ7CisKKyAgICByY19jZmdfLnRzX3JhdGVfZGVjaW1hdG9yWzBdID0gNDsKKyAg
ICByY19jZmdfLnRzX3JhdGVfZGVjaW1hdG9yWzFdID0gMjsKKyAgICByY19jZmdfLnRzX3JhdGVf
ZGVjaW1hdG9yWzJdID0gMTsKKworICAgIHJjX2NmZ18ubGF5ZXJfdGFyZ2V0X2JpdHJhdGVbMF0g
PSAxMDA7CisgICAgcmNfY2ZnXy5sYXllcl90YXJnZXRfYml0cmF0ZVsxXSA9IDE0MDsKKyAgICBy
Y19jZmdfLmxheWVyX3RhcmdldF9iaXRyYXRlWzJdID0gMjAwOworICAgIHJjX2NmZ18ubGF5ZXJf
dGFyZ2V0X2JpdHJhdGVbM10gPSAyNTA7CisgICAgcmNfY2ZnXy5sYXllcl90YXJnZXRfYml0cmF0
ZVs0XSA9IDM1MDsKKyAgICByY19jZmdfLmxheWVyX3RhcmdldF9iaXRyYXRlWzVdID0gNTAwOwor
ICAgIHJjX2NmZ18ubGF5ZXJfdGFyZ2V0X2JpdHJhdGVbNl0gPSA0NTA7CisgICAgcmNfY2ZnXy5s
YXllcl90YXJnZXRfYml0cmF0ZVs3XSA9IDYzMDsKKyAgICByY19jZmdfLmxheWVyX3RhcmdldF9i
aXRyYXRlWzhdID0gOTAwOworCisgICAgZm9yIChpbnQgc2wgPSAwOyBzbCA8IHJjX2NmZ18uc3Nf
bnVtYmVyX2xheWVyczsgKytzbCkgeworICAgICAgZm9yIChpbnQgdGwgPSAwOyB0bCA8IHJjX2Nm
Z18udHNfbnVtYmVyX2xheWVyczsgKyt0bCkgeworICAgICAgICBjb25zdCBpbnQgaSA9IHNsICog
cmNfY2ZnXy50c19udW1iZXJfbGF5ZXJzICsgdGw7CisgICAgICAgIHJjX2NmZ18ubWF4X3F1YW50
aXplcnNbaV0gPSA1NjsKKyAgICAgICAgcmNfY2ZnXy5taW5fcXVhbnRpemVyc1tpXSA9IDI7Cisg
ICAgICB9CisgICAgfQorICB9CisKKyAgc3RkOjp1bmlxdWVfcHRyPGxpYnZweDo6VlA5UmF0ZUNv
bnRyb2xSVEM+IHJjX2FwaV87CisgIGxpYnZweDo6VlA5UmF0ZUNvbnRyb2xSdGNDb25maWcgcmNf
Y2ZnXzsKK307CisKK1RFU1RfRihSY0ludGVyZmFjZVRlc3QsIE9uZUxheWVyKSB7IFJ1bk9uZUxh
eWVyKCk7IH0KKworVEVTVF9GKFJjSW50ZXJmYWNlVGVzdCwgU1ZDKSB7IFJ1blNWQygpOyB9Cit9
ICAvLyBuYW1lc3BhY2UKKworaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KSB7CisgIDo6
dGVzdGluZzo6SW5pdEdvb2dsZVRlc3QoJmFyZ2MsIGFyZ3YpOworICByZXR1cm4gUlVOX0FMTF9U
RVNUUygpOworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3JlYWx0aW1lX3Rlc3QuY2Mg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rlc3QvcmVhbHRpbWVfdGVzdC5jYwppbmRleCA2M2YxYWMzYzI5NTdkMGNk
MGU2ZGQzYTU2ZTZmMGQ1NGNkYTQzZmNiLi42M2E1MzQ3ZDk5MTBjYzAzODNiZTlkMGYxN2EwMGFk
Y2JlNDBjZTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvcmVhbHRpbWVfdGVzdC5jYwor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3Rlc3QvcmVhbHRpbWVfdGVzdC5jYwpAQCAtMjQsMTUgKzI0LDE1IEBA
IGNsYXNzIFJlYWx0aW1lVGVzdAogICAgICAgcHVibGljIDo6bGlidnB4X3Rlc3Q6OkNvZGVjVGVz
dFdpdGhQYXJhbTxsaWJ2cHhfdGVzdDo6VGVzdE1vZGU+IHsKICBwcm90ZWN0ZWQ6CiAgIFJlYWx0
aW1lVGVzdCgpIDogRW5jb2RlclRlc3QoR0VUX1BBUkFNKDApKSwgZnJhbWVfcGFja2V0c18oMCkg
e30KLSAgdmlydHVhbCB+UmVhbHRpbWVUZXN0KCkge30KKyAgflJlYWx0aW1lVGVzdCgpIG92ZXJy
aWRlIHt9CiAKLSAgdmlydHVhbCB2b2lkIFNldFVwKCkgeworICB2b2lkIFNldFVwKCkgb3ZlcnJp
ZGUgewogICAgIEluaXRpYWxpemVDb25maWcoKTsKICAgICBjZmdfLmdfbGFnX2luX2ZyYW1lcyA9
IDA7CiAgICAgU2V0TW9kZSg6OmxpYnZweF90ZXN0OjprUmVhbFRpbWUpOwogICB9CiAKLSAgdmly
dHVhbCB2b2lkIEJlZ2luUGFzc0hvb2sodW5zaWduZWQgaW50IC8qcGFzcyovKSB7CisgIHZvaWQg
QmVnaW5QYXNzSG9vayh1bnNpZ25lZCBpbnQgLypwYXNzKi8pIG92ZXJyaWRlIHsKICAgICAvLyBU
T0RPKHRvbWZpbmVnYW4pOiBXZSdyZSBjaGFuZ2luZyB0aGUgcGFzcyB2YWx1ZSBoZXJlIHRvIG1h
a2Ugc3VyZQogICAgIC8vIHdlIGdldCBmcmFtZXMgd2hlbiByZWFsIHRpbWUgbW9kZSBpcyBjb21i
aW5lZCB3aXRoIHxnX3Bhc3N8IHNldCB0bwogICAgIC8vIFZQWF9SQ19GSVJTVF9QQVNTLiBUaGlz
IGlzIG5lY2Vzc2FyeSBiZWNhdXNlIEVuY29kZXJUZXN0OjpSdW5Mb29wKCkgc2V0cwpAQCAtNDAs
NyArNDAsMTUgQEAgY2xhc3MgUmVhbHRpbWVUZXN0CiAgICAgLy8gd2hpY2ggb3ZlcnJpZGVzIHRo
ZSBvbmUgc3BlY2lmaWVkIGluIFNldFVwKCkgYWJvdmUuCiAgICAgY2ZnXy5nX3Bhc3MgPSBWUFhf
UkNfRklSU1RfUEFTUzsKICAgfQotICB2aXJ0dWFsIHZvaWQgRnJhbWVQa3RIb29rKGNvbnN0IHZw
eF9jb2RlY19jeF9wa3RfdCAqIC8qcGt0Ki8pIHsKKworICB2b2lkIFByZUVuY29kZUZyYW1lSG9v
ayg6OmxpYnZweF90ZXN0OjpWaWRlb1NvdXJjZSAqdmlkZW8sCisgICAgICAgICAgICAgICAgICAg
ICAgICAgIDo6bGlidnB4X3Rlc3Q6OkVuY29kZXIgKmVuY29kZXIpIG92ZXJyaWRlIHsKKyAgICBp
ZiAodmlkZW8tPmZyYW1lKCkgPT0gMCkgeworICAgICAgZW5jb2Rlci0+Q29udHJvbChWUDhFX1NF
VF9DUFVVU0VELCA4KTsKKyAgICB9CisgIH0KKworICB2b2lkIEZyYW1lUGt0SG9vayhjb25zdCB2
cHhfY29kZWNfY3hfcGt0X3QgKiAvKnBrdCovKSBvdmVycmlkZSB7CiAgICAgZnJhbWVfcGFja2V0
c18rKzsKICAgfQogCkBAIC01NSw5ICs2MywxNyBAQCBURVNUX1AoUmVhbHRpbWVUZXN0LCBSZWFs
dGltZUZpcnN0UGFzc1Byb2R1Y2VzRnJhbWVzKSB7CiAgIEVYUEVDVF9FUShrRnJhbWVzVG9FbmNv
ZGUsIGZyYW1lX3BhY2tldHNfKTsKIH0KIAotVlA4X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShSZWFs
dGltZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKDo6
bGlidnB4X3Rlc3Q6OmtSZWFsVGltZSkpOwotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShSZWFs
dGltZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKDo6
bGlidnB4X3Rlc3Q6OmtSZWFsVGltZSkpOworVEVTVF9QKFJlYWx0aW1lVGVzdCwgSW50ZWdlck92
ZXJmbG93KSB7CisgIDo6bGlidnB4X3Rlc3Q6OlJhbmRvbVZpZGVvU291cmNlIHZpZGVvOworICB2
aWRlby5TZXRTaXplKDgwMCwgNDgwKTsKKyAgdmlkZW8uc2V0X2xpbWl0KDIwKTsKKyAgY2ZnXy5y
Y190YXJnZXRfYml0cmF0ZSA9IDE0MDAwMDAwMDsKKyAgQVNTRVJUX05PX0ZBVEFMX0ZBSUxVUkUo
UnVuTG9vcCgmdmlkZW8pKTsKK30KKworVlA4X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUoUmVhbHRp
bWVUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoOjps
aWJ2cHhfdGVzdDo6a1JlYWxUaW1lKSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURShSZWFs
dGltZVRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6
OmxpYnZweF90ZXN0OjprUmVhbFRpbWUpKTsKIAogfSAgLy8gbmFtZXNwYWNlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rlc3QvcmVzaXplX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvcmVzaXpl
X3Rlc3QuY2MKaW5kZXggNWYzMjNkYjVhYmIzYzQxYjIxMjY2ZTc4ZTkzYWY2NWI2YWI5OTcwOS4u
YzU3MTcwZmY5Yjc4Yjc3MmNiMWFlNGJiZDg4YjNkOGVlMWJmMGI5NyAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L3Jlc2l6ZV90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9yZXNpemVf
dGVzdC5jYwpAQCAtMjcxLDggKzI3MSw4IEBAIGNsYXNzIFJlc2l6aW5nVmlkZW9Tb3VyY2UgOiBw
dWJsaWMgOjpsaWJ2cHhfdGVzdDo6RHVtbXlWaWRlb1NvdXJjZSB7CiAgcHJvdGVjdGVkOgogICB2
aXJ0dWFsIHZvaWQgTmV4dCgpIHsKICAgICArK2ZyYW1lXzsKLSAgICB1bnNpZ25lZCBpbnQgd2lk
dGg7Ci0gICAgdW5zaWduZWQgaW50IGhlaWdodDsKKyAgICB1bnNpZ25lZCBpbnQgd2lkdGggPSAw
OworICAgIHVuc2lnbmVkIGludCBoZWlnaHQgPSAwOwogICAgIFNjYWxlRm9yRnJhbWVOdW1iZXIo
ZnJhbWVfLCBrSW5pdGlhbFdpZHRoLCBrSW5pdGlhbEhlaWdodCwgJndpZHRoLCAmaGVpZ2h0LAog
ICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ19jb2RlY18sIHNtYWxsZXJfd2lkdGhfbGFyZ2Vy
X3NpemVfKTsKICAgICBTZXRTaXplKHdpZHRoLCBoZWlnaHQpOwpAQCAtMzUwLDcgKzM1MCw3IEBA
IGNsYXNzIFJlc2l6ZUludGVybmFsVGVzdCA6IHB1YmxpYyBSZXNpemVUZXN0IHsKICBwcm90ZWN0
ZWQ6CiAjaWYgV1JJVEVfQ09NUFJFU1NFRF9TVFJFQU0KICAgUmVzaXplSW50ZXJuYWxUZXN0KCkK
LSAgICAgIDogUmVzaXplVGVzdCgpLCBmcmFtZTBfcHNucl8oMC4wKSwgb3V0ZmlsZV8oTlVMTCks
IG91dF9mcmFtZXNfKDApIHt9CisgICAgICA6IFJlc2l6ZVRlc3QoKSwgZnJhbWUwX3BzbnJfKDAu
MCksIG91dGZpbGVfKG51bGxwdHIpLCBvdXRfZnJhbWVzXygwKSB7fQogI2Vsc2UKICAgUmVzaXpl
SW50ZXJuYWxUZXN0KCkgOiBSZXNpemVUZXN0KCksIGZyYW1lMF9wc25yXygwLjApIHt9CiAjZW5k
aWYKQEAgLTM2OSw3ICszNjksNyBAQCBjbGFzcyBSZXNpemVJbnRlcm5hbFRlc3QgOiBwdWJsaWMg
UmVzaXplVGVzdCB7CiAgICAgICBpZiAoIWZzZWVrKG91dGZpbGVfLCAwLCBTRUVLX1NFVCkpCiAg
ICAgICAgIHdyaXRlX2l2Zl9maWxlX2hlYWRlcigmY2ZnXywgb3V0X2ZyYW1lc18sIG91dGZpbGVf
KTsKICAgICAgIGZjbG9zZShvdXRmaWxlXyk7Ci0gICAgICBvdXRmaWxlXyA9IE5VTEw7CisgICAg
ICBvdXRmaWxlXyA9IG51bGxwdHI7CiAgICAgfQogI2VuZGlmCiAgIH0KQEAgLTYxMCwxMSArNjEw
LDExIEBAIFRFU1RfUChSZXNpemVSZWFsdGltZVRlc3QsIERJU0FCTEVEX1Rlc3RFeHRlcm5hbFJl
c2l6ZVNtYWxsZXJXaWR0aEJpZ2dlclNpemUpIHsKIC8vIFJ1biBhdCBsb3cgYml0cmF0ZSwgd2l0
aCByZXNpemVfYWxsb3dlZCA9IDEsIGFuZCB2ZXJpZnkgdGhhdCB3ZSBnZXQKIC8vIG9uZSByZXNp
emUgZG93biBldmVudC4KIFRFU1RfUChSZXNpemVSZWFsdGltZVRlc3QsIFRlc3RJbnRlcm5hbFJl
c2l6ZURvd24pIHsKLSAgOjpsaWJ2cHhfdGVzdDo6STQyMFZpZGVvU291cmNlIHZpZGVvKCJoYW50
cm9fY29sbGFnZV93MzUyaDI4OC55dXYiLCAzNTIsIDI4OCwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDMwLCAxLCAwLCAyOTkpOworICA6OmxpYnZweF90ZXN0OjpJNDIw
VmlkZW9Tb3VyY2UgdmlkZW8oIm5pa2xhc182NDBfNDgwXzMwLnl1diIsIDY0MCwgNDgwLCAzMCwg
MSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIDI5OSk7CiAgIERl
ZmF1bHRDb25maWcoKTsKLSAgY2ZnXy5nX3cgPSAzNTI7Ci0gIGNmZ18uZ19oID0gMjg4OworICBj
ZmdfLmdfdyA9IDY0MDsKKyAgY2ZnXy5nX2ggPSA0ODA7CiAgIGNoYW5nZV9iaXRyYXRlXyA9IGZh
bHNlOwogICBtaXNtYXRjaF9wc25yXyA9IDAuMDsKICAgbWlzbWF0Y2hfbmZyYW1lc18gPSAwOwpA
QCAtNjQ4LDExICs2NDgsMTEgQEAgVEVTVF9QKFJlc2l6ZVJlYWx0aW1lVGVzdCwgVGVzdEludGVy
bmFsUmVzaXplRG93bikgewogLy8gU3RhcnQgYXQgbG93IHRhcmdldCBiaXRyYXRlLCByYWlzZSB0
aGUgYml0cmF0ZSBpbiB0aGUgbWlkZGxlIG9mIHRoZSBjbGlwLAogLy8gc2NhbGluZy11cCBzaG91
bGQgb2NjdXIgYWZ0ZXIgYml0cmF0ZSBjaGFuZ2VkLgogVEVTVF9QKFJlc2l6ZVJlYWx0aW1lVGVz
dCwgVGVzdEludGVybmFsUmVzaXplRG93blVwQ2hhbmdlQml0UmF0ZSkgewotICA6OmxpYnZweF90
ZXN0OjpJNDIwVmlkZW9Tb3VyY2UgdmlkZW8oImhhbnRyb19jb2xsYWdlX3czNTJoMjg4Lnl1diIs
IDM1MiwgMjg4LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMzAsIDEs
IDAsIDM1OSk7CisgIDo6bGlidnB4X3Rlc3Q6Okk0MjBWaWRlb1NvdXJjZSB2aWRlbygibmlrbGFz
XzY0MF80ODBfMzAueXV2IiwgNjQwLCA0ODAsIDMwLCAxLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgMCwgNDAwKTsKICAgRGVmYXVsdENvbmZpZygpOwotICBjZmdfLmdf
dyA9IDM1MjsKLSAgY2ZnXy5nX2ggPSAyODg7CisgIGNmZ18uZ193ID0gNjQwOworICBjZmdfLmdf
aCA9IDQ4MDsKICAgY2hhbmdlX2JpdHJhdGVfID0gdHJ1ZTsKICAgbWlzbWF0Y2hfcHNucl8gPSAw
LjA7CiAgIG1pc21hdGNoX25mcmFtZXNfID0gMDsKQEAgLTY3MiwxMSArNjcyLDExIEBAIFRFU1Rf
UChSZXNpemVSZWFsdGltZVRlc3QsIFRlc3RJbnRlcm5hbFJlc2l6ZURvd25VcENoYW5nZUJpdFJh
dGUpIHsKICAgICBBU1NFUlRfRVEoaW5mby0+aCwgR2V0RnJhbWVIZWlnaHQoaWR4KSk7CiAgICAg
aWYgKGluZm8tPncgIT0gbGFzdF93IHx8IGluZm8tPmggIT0gbGFzdF9oKSB7CiAgICAgICByZXNp
emVfY291bnQrKzsKLSAgICAgIGlmIChyZXNpemVfY291bnQgPT0gMSkgeworICAgICAgaWYgKHJl
c2l6ZV9jb3VudCA8PSAyKSB7CiAgICAgICAgIC8vIFZlcmlmeSB0aGF0IHJlc2l6ZSBkb3duIG9j
Y3Vycy4KICAgICAgICAgQVNTRVJUX0xUKGluZm8tPncsIGxhc3Rfdyk7CiAgICAgICAgIEFTU0VS
VF9MVChpbmZvLT5oLCBsYXN0X2gpOwotICAgICAgfSBlbHNlIGlmIChyZXNpemVfY291bnQgPT0g
MikgeworICAgICAgfSBlbHNlIGlmIChyZXNpemVfY291bnQgPiAyKSB7CiAgICAgICAgIC8vIFZl
cmlmeSB0aGF0IHJlc2l6ZSB1cCBvY2N1cnMuCiAgICAgICAgIEFTU0VSVF9HVChpbmZvLT53LCBs
YXN0X3cpOwogICAgICAgICBBU1NFUlRfR1QoaW5mby0+aCwgbGFzdF9oKTsKQEAgLTY4Nyw4ICs2
ODcsOCBAQCBURVNUX1AoUmVzaXplUmVhbHRpbWVUZXN0LCBUZXN0SW50ZXJuYWxSZXNpemVEb3du
VXBDaGFuZ2VCaXRSYXRlKSB7CiAgIH0KIAogI2lmIENPTkZJR19WUDlfREVDT0RFUgotICAvLyBW
ZXJpZnkgdGhhdCB3ZSBnZXQgMiByZXNpemUgZXZlbnRzIGluIHRoaXMgdGVzdC4KLSAgQVNTRVJU
X0VRKHJlc2l6ZV9jb3VudCwgMikgPDwgIlJlc2l6aW5nIHNob3VsZCBvY2N1ciB0d2ljZS4iOwor
ICAvLyBWZXJpZnkgdGhhdCB3ZSBnZXQgNCByZXNpemUgZXZlbnRzIGluIHRoaXMgdGVzdC4KKyAg
QVNTRVJUX0VRKHJlc2l6ZV9jb3VudCwgNCkgPDwgIlJlc2l6aW5nIHNob3VsZCBvY2N1ciB0d2lj
ZS4iOwogICBFWFBFQ1RfRVEoc3RhdGljX2Nhc3Q8dW5zaWduZWQgaW50PigwKSwgR2V0TWlzbWF0
Y2hGcmFtZXMoKSk7CiAjZWxzZQogICBwcmludGYoIldhcm5pbmc6IFZQOSBkZWNvZGVyIHVuYXZh
aWxhYmxlLCB1bmFibGUgdG8gY2hlY2sgcmVzaXplIGNvdW50IVxuIik7CkBAIC03MDUsNyArNzA1
LDcgQEAgY2xhc3MgUmVzaXplQ3NwVGVzdCA6IHB1YmxpYyBSZXNpemVUZXN0IHsKICBwcm90ZWN0
ZWQ6CiAjaWYgV1JJVEVfQ09NUFJFU1NFRF9TVFJFQU0KICAgUmVzaXplQ3NwVGVzdCgpCi0gICAg
ICA6IFJlc2l6ZVRlc3QoKSwgZnJhbWUwX3BzbnJfKDAuMCksIG91dGZpbGVfKE5VTEwpLCBvdXRf
ZnJhbWVzXygwKSB7fQorICAgICAgOiBSZXNpemVUZXN0KCksIGZyYW1lMF9wc25yXygwLjApLCBv
dXRmaWxlXyhudWxscHRyKSwgb3V0X2ZyYW1lc18oMCkge30KICNlbHNlCiAgIFJlc2l6ZUNzcFRl
c3QoKSA6IFJlc2l6ZVRlc3QoKSwgZnJhbWUwX3BzbnJfKDAuMCkge30KICNlbmRpZgpAQCAtNzI0
LDcgKzcyNCw3IEBAIGNsYXNzIFJlc2l6ZUNzcFRlc3QgOiBwdWJsaWMgUmVzaXplVGVzdCB7CiAg
ICAgICBpZiAoIWZzZWVrKG91dGZpbGVfLCAwLCBTRUVLX1NFVCkpCiAgICAgICAgIHdyaXRlX2l2
Zl9maWxlX2hlYWRlcigmY2ZnXywgb3V0X2ZyYW1lc18sIG91dGZpbGVfKTsKICAgICAgIGZjbG9z
ZShvdXRmaWxlXyk7Ci0gICAgICBvdXRmaWxlXyA9IE5VTEw7CisgICAgICBvdXRmaWxlXyA9IG51
bGxwdHI7CiAgICAgfQogI2VuZGlmCiAgIH0KQEAgLTc5MywxNCArNzkzLDE0IEBAIFRFU1RfUChS
ZXNpemVDc3BUZXN0LCBUZXN0UmVzaXplQ3NwV29ya3MpIHsKICAgQVNTRVJUX05PX0ZBVEFMX0ZB
SUxVUkUoUnVuTG9vcCgmdmlkZW8pKTsKIH0KIAotVlA4X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShS
ZXNpemVUZXN0LCBPTkVfUEFTU19URVNUX01PREVTKTsKLVZQOV9JTlNUQU5USUFURV9URVNUX0NB
U0UoUmVzaXplVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXMoOjpsaWJ2cHhfdGVzdDo6a1JlYWxUaW1lKSk7Ci1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNF
KFJlc2l6ZUludGVybmFsVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a09uZVBhc3NCZXN0KSk7Ci1WUDlfSU5TVEFOVElBVEVf
VEVTVF9DQVNFKFJlc2l6ZVJlYWx0aW1lVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
Ojp0ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a1JlYWxUaW1lKSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSg1LCA5KSk7Ci1WUDlfSU5TVEFOVElBVEVf
VEVTVF9DQVNFKFJlc2l6ZUNzcFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVz
dGluZzo6VmFsdWVzKDo6bGlidnB4X3Rlc3Q6OmtSZWFsVGltZSkpOworVlA4X0lOU1RBTlRJQVRF
X1RFU1RfU1VJVEUoUmVzaXplVGVzdCwgT05FX1BBU1NfVEVTVF9NT0RFUyk7CitWUDlfSU5TVEFO
VElBVEVfVEVTVF9TVUlURShSZXNpemVUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ojp0ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a1JlYWxUaW1lKSk7CitWUDlfSU5TVEFO
VElBVEVfVEVTVF9TVUlURShSZXNpemVJbnRlcm5hbFRlc3QsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0OjprT25lUGFzc0Jlc3QpKTsK
K1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKFJlc2l6ZVJlYWx0aW1lVGVzdCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKDo6bGlidnB4X3Rlc3Q6OmtSZWFs
VGltZSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDUsIDkp
KTsKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKFJlc2l6ZUNzcFRlc3QsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0OjprUmVhbFRp
bWUpKTsKIH0gIC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3Jlc2l6
ZV91dGlsLnNoIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3Jlc2l6ZV91dGlsLnNoCmluZGV4IDVlNDcyNzE2
ZGEzNTg5OGRhNzQ0MWRhNGNjYmYxMTRhZjVlMzg4MjIuLmE5YjBmODFlMmI4YzdmZDg1ZGEyMzcz
MTc2ODFjZmI3ZjQ4ZDViZjYgMTAwNzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9yZXNpemVfdXRp
bC5zaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvcmVzaXplX3V0aWwuc2gKQEAgLTQxLDcgKzQxLDcg
QEAgcmVzaXplX3V0aWwoKSB7CiAgICAgZXZhbCAiJHtWUFhfVEVTVF9QUkVGSVh9IiAiJHtyZXNp
emVyfSIgIiR7WVVWX1JBV19JTlBVVH0iIFwKICAgICAgICAgIiR7WVVWX1JBV19JTlBVVF9XSURU
SH14JHtZVVZfUkFXX0lOUFVUX0hFSUdIVH0iIFwKICAgICAgICAgIiR7dGFyZ2V0X2RpbWVuc2lv
bnN9IiAiJHtvdXRwdXRfZmlsZX0iICR7ZnJhbWVzX3RvX3Jlc2l6ZX0gXAotICAgICAgICAke2Rl
dm51bGx9CisgICAgICAgICR7ZGV2bnVsbH0gfHwgcmV0dXJuIDEKIAogICAgIFsgLWUgIiR7b3V0
cHV0X2ZpbGV9IiBdIHx8IHJldHVybiAxCiAgIGZpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rl
c3Qvc2FkX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvc2FkX3Rlc3QuY2MKaW5kZXggZTM5Nzc1
Y2M0NjI4YWY1NDkyNzNlNjdlMjhjYmI3NjRkN2Y2ZjJlNy4uZWUxMGE0NjM4OTE0OWIyMzU0NjEy
MTE0YWZlMWU0M2ZjNTQwZjEzOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3NhZF90ZXN0
LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zYWRfdGVzdC5jYwpAQCAtMjYsNiArMjYsMTAgQEAK
ICNpbmNsdWRlICJ2cHhfcG9ydHMvbXN2Yy5oIgogI2luY2x1ZGUgInZweF9wb3J0cy92cHhfdGlt
ZXIuaCIKIAorLy8gY29uc3RbZXhwcl0gc2hvdWxkIGJlIHN1ZmZpY2llbnQgZm9yIERFQ0xBUkVf
QUxJR05FRCBidXQgZWFybHkKKy8vIGltcGxlbWVudGF0aW9ucyBvZiBjKysxMSBhcHBlYXIgdG8g
aGF2ZSBzb21lIGlzc3VlcyB3aXRoIGl0LgorI2RlZmluZSBrRGF0YUFsaWdubWVudCAzMgorCiB0
ZW1wbGF0ZSA8dHlwZW5hbWUgRnVuY3Rpb24+CiBzdHJ1Y3QgVGVzdFBhcmFtcyB7CiAgIFRlc3RQ
YXJhbXMoaW50IHcsIGludCBoLCBGdW5jdGlvbiBmLCBpbnQgYmQgPSAtMSkKQEAgLTk5LDE3ICsx
MDMsMTcgQEAgY2xhc3MgU0FEVGVzdEJhc2UgOiBwdWJsaWMgOjp0ZXN0aW5nOjpUZXN0V2l0aFBh
cmFtPFBhcmFtVHlwZT4gewogCiAgIHZpcnR1YWwgdm9pZCBUZWFyRG93bigpIHsKICAgICB2cHhf
ZnJlZShzb3VyY2VfZGF0YThfKTsKLSAgICBzb3VyY2VfZGF0YThfID0gTlVMTDsKKyAgICBzb3Vy
Y2VfZGF0YThfID0gbnVsbHB0cjsKICAgICB2cHhfZnJlZShyZWZlcmVuY2VfZGF0YThfKTsKLSAg
ICByZWZlcmVuY2VfZGF0YThfID0gTlVMTDsKKyAgICByZWZlcmVuY2VfZGF0YThfID0gbnVsbHB0
cjsKICAgICB2cHhfZnJlZShzZWNvbmRfcHJlZDhfKTsKLSAgICBzZWNvbmRfcHJlZDhfID0gTlVM
TDsKKyAgICBzZWNvbmRfcHJlZDhfID0gbnVsbHB0cjsKICAgICB2cHhfZnJlZShzb3VyY2VfZGF0
YTE2Xyk7Ci0gICAgc291cmNlX2RhdGExNl8gPSBOVUxMOworICAgIHNvdXJjZV9kYXRhMTZfID0g
bnVsbHB0cjsKICAgICB2cHhfZnJlZShyZWZlcmVuY2VfZGF0YTE2Xyk7Ci0gICAgcmVmZXJlbmNl
X2RhdGExNl8gPSBOVUxMOworICAgIHJlZmVyZW5jZV9kYXRhMTZfID0gbnVsbHB0cjsKICAgICB2
cHhfZnJlZShzZWNvbmRfcHJlZDE2Xyk7Ci0gICAgc2Vjb25kX3ByZWQxNl8gPSBOVUxMOworICAg
IHNlY29uZF9wcmVkMTZfID0gbnVsbHB0cjsKIAogICAgIGxpYnZweF90ZXN0OjpDbGVhclN5c3Rl
bVN0YXRlKCk7CiAgIH0KQEAgLTExNyw5ICsxMjEsNiBAQCBjbGFzcyBTQURUZXN0QmFzZSA6IHB1
YmxpYyA6OnRlc3Rpbmc6OlRlc3RXaXRoUGFyYW08UGFyYW1UeXBlPiB7CiAgcHJvdGVjdGVkOgog
ICAvLyBIYW5kbGUgYmxvY2tzIHVwIHRvIDQgYmxvY2tzIDY0eDY0IHdpdGggc3RyaWRlIHVwIHRv
IDEyOAogICAvLyBjcmJ1Zy5jb20vd2VibS8xNjYwCi0gIC8vIGNvbnN0W2V4cHJdIHNob3VsZCBi
ZSBzdWZmaWNpZW50IGZvciBERUNMQVJFX0FMSUdORUQgYnV0IGVhcmx5Ci0gIC8vIGltcGxlbWVu
dGF0aW9ucyBvZiBjKysxMSBhcHBlYXIgdG8gaGF2ZSBzb21lIGlzc3VlcyB3aXRoIGl0LgotICBl
bnVtIHsga0RhdGFBbGlnbm1lbnQgPSAzMiB9OwogICBzdGF0aWMgY29uc3QgaW50IGtEYXRhQmxv
Y2tTaXplID0gNjQgKiAxMjg7CiAgIHN0YXRpYyBjb25zdCBpbnQga0RhdGFCdWZmZXJTaXplID0g
NCAqIGtEYXRhQmxvY2tTaXplOwogCkBAIC02MjgsNyArNjI5LDcgQEAgY29uc3QgU2FkTXhOUGFy
YW0gY190ZXN0c1tdID0gewogICBTYWRNeE5QYXJhbSg0LCA0LCAmdnB4X2hpZ2hiZF9zYWQ0eDRf
YywgMTIpLAogI2VuZGlmICAvLyBDT05GSUdfVlA5X0hJR0hCSVRERVBUSAogfTsKLUlOU1RBTlRJ
QVRFX1RFU1RfQ0FTRV9QKEMsIFNBRFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oY190ZXN0cykp
OworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKEMsIFNBRFRlc3QsIDo6dGVzdGluZzo6VmFsdWVz
SW4oY190ZXN0cykpOwogCiBjb25zdCBTYWRNeE5BdmdQYXJhbSBhdmdfY190ZXN0c1tdID0gewog
ICBTYWRNeE5BdmdQYXJhbSg2NCwgNjQsICZ2cHhfc2FkNjR4NjRfYXZnX2MpLApAQCAtNjg2LDcg
KzY4Nyw3IEBAIGNvbnN0IFNhZE14TkF2Z1BhcmFtIGF2Z19jX3Rlc3RzW10gPSB7CiAgIFNhZE14
TkF2Z1BhcmFtKDQsIDQsICZ2cHhfaGlnaGJkX3NhZDR4NF9hdmdfYywgMTIpLAogI2VuZGlmICAv
LyBDT05GSUdfVlA5X0hJR0hCSVRERVBUSAogfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEMs
IFNBRGF2Z1Rlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oYXZnX2NfdGVzdHMpKTsKK0lOU1RBTlRJ
QVRFX1RFU1RfU1VJVEVfUChDLCBTQURhdmdUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKGF2Z19j
X3Rlc3RzKSk7CiAKIGNvbnN0IFNhZE14Tng0UGFyYW0geDRkX2NfdGVzdHNbXSA9IHsKICAgU2Fk
TXhOeDRQYXJhbSg2NCwgNjQsICZ2cHhfc2FkNjR4NjR4NGRfYyksCkBAIC03NDQsNyArNzQ1LDcg
QEAgY29uc3QgU2FkTXhOeDRQYXJhbSB4NGRfY190ZXN0c1tdID0gewogICBTYWRNeE54NFBhcmFt
KDQsIDQsICZ2cHhfaGlnaGJkX3NhZDR4NHg0ZF9jLCAxMiksCiAjZW5kaWYgIC8vIENPTkZJR19W
UDlfSElHSEJJVERFUFRICiB9OwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoQywgU0FEeDRUZXN0
LCA6OnRlc3Rpbmc6OlZhbHVlc0luKHg0ZF9jX3Rlc3RzKSk7CitJTlNUQU5USUFURV9URVNUX1NV
SVRFX1AoQywgU0FEeDRUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKHg0ZF9jX3Rlc3RzKSk7CiAK
IC8vIFRPRE8oYW5naWViaXJkKTogaW1wbGVtZW50IHRoZSBtYXJrZWQtZG93biBzYWQgZnVuY3Rp
b25zCiBjb25zdCBTYWRNeE54OFBhcmFtIHg4X2NfdGVzdHNbXSA9IHsKQEAgLTc2Miw3ICs3NjMs
NyBAQCBjb25zdCBTYWRNeE54OFBhcmFtIHg4X2NfdGVzdHNbXSA9IHsKICAgLy8gU2FkTXhOeDhQ
YXJhbSg0LCA4LCAmdnB4X3NhZDR4OHg4X2MpLAogICBTYWRNeE54OFBhcmFtKDQsIDQsICZ2cHhf
c2FkNHg0eDhfYyksCiB9OwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoQywgU0FEeDhUZXN0LCA6
OnRlc3Rpbmc6OlZhbHVlc0luKHg4X2NfdGVzdHMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVf
UChDLCBTQUR4OFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oeDhfY190ZXN0cykpOwogCiAvLy0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLQogLy8gQVJNIGZ1bmN0aW9ucwpAQCAtNzgwLDcgKzc4MSw3IEBA
IGNvbnN0IFNhZE14TlBhcmFtIG5lb25fdGVzdHNbXSA9IHsKICAgU2FkTXhOUGFyYW0oNCwgOCwg
JnZweF9zYWQ0eDhfbmVvbiksCiAgIFNhZE14TlBhcmFtKDQsIDQsICZ2cHhfc2FkNHg0X25lb24p
LAogfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE5FT04sIFNBRFRlc3QsIDo6dGVzdGluZzo6
VmFsdWVzSW4obmVvbl90ZXN0cykpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE5FT04sIFNB
RFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4obmVvbl90ZXN0cykpOwogCiBjb25zdCBTYWRNeE5B
dmdQYXJhbSBhdmdfbmVvbl90ZXN0c1tdID0gewogICBTYWRNeE5BdmdQYXJhbSg2NCwgNjQsICZ2
cHhfc2FkNjR4NjRfYXZnX25lb24pLApAQCAtNzk3LDcgKzc5OCw3IEBAIGNvbnN0IFNhZE14TkF2
Z1BhcmFtIGF2Z19uZW9uX3Rlc3RzW10gPSB7CiAgIFNhZE14TkF2Z1BhcmFtKDQsIDgsICZ2cHhf
c2FkNHg4X2F2Z19uZW9uKSwKICAgU2FkTXhOQXZnUGFyYW0oNCwgNCwgJnZweF9zYWQ0eDRfYXZn
X25lb24pLAogfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE5FT04sIFNBRGF2Z1Rlc3QsIDo6
dGVzdGluZzo6VmFsdWVzSW4oYXZnX25lb25fdGVzdHMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJ
VEVfUChORU9OLCBTQURhdmdUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKGF2Z19uZW9uX3Rlc3Rz
KSk7CiAKIGNvbnN0IFNhZE14Tng0UGFyYW0geDRkX25lb25fdGVzdHNbXSA9IHsKICAgU2FkTXhO
eDRQYXJhbSg2NCwgNjQsICZ2cHhfc2FkNjR4NjR4NGRfbmVvbiksCkBAIC04MTQsNyArODE1LDcg
QEAgY29uc3QgU2FkTXhOeDRQYXJhbSB4NGRfbmVvbl90ZXN0c1tdID0gewogICBTYWRNeE54NFBh
cmFtKDQsIDgsICZ2cHhfc2FkNHg4eDRkX25lb24pLAogICBTYWRNeE54NFBhcmFtKDQsIDQsICZ2
cHhfc2FkNHg0eDRkX25lb24pLAogfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE5FT04sIFNB
RHg0VGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbih4NGRfbmVvbl90ZXN0cykpOworSU5TVEFOVElB
VEVfVEVTVF9TVUlURV9QKE5FT04sIFNBRHg0VGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbih4NGRf
bmVvbl90ZXN0cykpOwogI2VuZGlmICAvLyBIQVZFX05FT04KIAogLy8tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0KQEAgLTg3MCw3ICs4NzEsNyBAQCBjb25zdCBTYWRNeE5QYXJhbSBzc2UyX3Rlc3RzW10g
PSB7CiAgIFNhZE14TlBhcmFtKDgsIDQsICZ2cHhfaGlnaGJkX3NhZDh4NF9zc2UyLCAxMiksCiAj
ZW5kaWYgIC8vIENPTkZJR19WUDlfSElHSEJJVERFUFRICiB9OwotSU5TVEFOVElBVEVfVEVTVF9D
QVNFX1AoU1NFMiwgU0FEVGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbihzc2UyX3Rlc3RzKSk7CitJ
TlNUQU5USUFURV9URVNUX1NVSVRFX1AoU1NFMiwgU0FEVGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJ
bihzc2UyX3Rlc3RzKSk7CiAKIGNvbnN0IFNhZE14TkF2Z1BhcmFtIGF2Z19zc2UyX3Rlc3RzW10g
PSB7CiAgIFNhZE14TkF2Z1BhcmFtKDY0LCA2NCwgJnZweF9zYWQ2NHg2NF9hdmdfc3NlMiksCkBA
IC05MjIsNyArOTIzLDcgQEAgY29uc3QgU2FkTXhOQXZnUGFyYW0gYXZnX3NzZTJfdGVzdHNbXSA9
IHsKICAgU2FkTXhOQXZnUGFyYW0oOCwgNCwgJnZweF9oaWdoYmRfc2FkOHg0X2F2Z19zc2UyLCAx
MiksCiAjZW5kaWYgIC8vIENPTkZJR19WUDlfSElHSEJJVERFUFRICiB9OwotSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoU1NFMiwgU0FEYXZnVGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbihhdmdfc3Nl
Ml90ZXN0cykpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFNTRTIsIFNBRGF2Z1Rlc3QsIDo6
dGVzdGluZzo6VmFsdWVzSW4oYXZnX3NzZTJfdGVzdHMpKTsKIAogY29uc3QgU2FkTXhOeDRQYXJh
bSB4NGRfc3NlMl90ZXN0c1tdID0gewogICBTYWRNeE54NFBhcmFtKDY0LCA2NCwgJnZweF9zYWQ2
NHg2NHg0ZF9zc2UyKSwKQEAgLTk4MCw3ICs5ODEsNyBAQCBjb25zdCBTYWRNeE54NFBhcmFtIHg0
ZF9zc2UyX3Rlc3RzW10gPSB7CiAgIFNhZE14Tng0UGFyYW0oNCwgNCwgJnZweF9oaWdoYmRfc2Fk
NHg0eDRkX3NzZTIsIDEyKSwKICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKIH07
Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUChTU0UyLCBTQUR4NFRlc3QsIDo6dGVzdGluZzo6VmFs
dWVzSW4oeDRkX3NzZTJfdGVzdHMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChTU0UyLCBT
QUR4NFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oeDRkX3NzZTJfdGVzdHMpKTsKICNlbmRpZiAg
Ly8gSEFWRV9TU0UyCiAKICNpZiBIQVZFX1NTRTMKQEAgLTk5OSw4ICsxMDAwLDggQEAgY29uc3Qg
U2FkTXhOeDhQYXJhbSB4OF9zc2U0XzFfdGVzdHNbXSA9IHsKICAgU2FkTXhOeDhQYXJhbSg4LCA4
LCAmdnB4X3NhZDh4OHg4X3NzZTRfMSksCiAgIFNhZE14Tng4UGFyYW0oNCwgNCwgJnZweF9zYWQ0
eDR4OF9zc2U0XzEpLAogfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKFNTRTRfMSwgU0FEeDhU
ZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbih4OF9zc2U0
XzFfdGVzdHMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChTU0U0XzEsIFNBRHg4VGVzdCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKHg4X3NzZTRfMV90
ZXN0cykpOwogI2VuZGlmICAvLyBIQVZFX1NTRTRfMQogCiAjaWYgSEFWRV9BVlgyCkBAIC0xMDEx
LDcgKzEwMTIsNyBAQCBjb25zdCBTYWRNeE5QYXJhbSBhdngyX3Rlc3RzW10gPSB7CiAgIFNhZE14
TlBhcmFtKDMyLCAzMiwgJnZweF9zYWQzMngzMl9hdngyKSwKICAgU2FkTXhOUGFyYW0oMzIsIDE2
LCAmdnB4X3NhZDMyeDE2X2F2eDIpLAogfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEFWWDIs
IFNBRFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oYXZ4Ml90ZXN0cykpOworSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QKEFWWDIsIFNBRFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oYXZ4Ml90ZXN0
cykpOwogCiBjb25zdCBTYWRNeE5BdmdQYXJhbSBhdmdfYXZ4Ml90ZXN0c1tdID0gewogICBTYWRN
eE5BdmdQYXJhbSg2NCwgNjQsICZ2cHhfc2FkNjR4NjRfYXZnX2F2eDIpLApAQCAtMTAyMCwyNyAr
MTAyMSwyNyBAQCBjb25zdCBTYWRNeE5BdmdQYXJhbSBhdmdfYXZ4Ml90ZXN0c1tdID0gewogICBT
YWRNeE5BdmdQYXJhbSgzMiwgMzIsICZ2cHhfc2FkMzJ4MzJfYXZnX2F2eDIpLAogICBTYWRNeE5B
dmdQYXJhbSgzMiwgMTYsICZ2cHhfc2FkMzJ4MTZfYXZnX2F2eDIpLAogfTsKLUlOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKEFWWDIsIFNBRGF2Z1Rlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oYXZnX2F2
eDJfdGVzdHMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChBVlgyLCBTQURhdmdUZXN0LCA6
OnRlc3Rpbmc6OlZhbHVlc0luKGF2Z19hdngyX3Rlc3RzKSk7CiAKIGNvbnN0IFNhZE14Tng0UGFy
YW0geDRkX2F2eDJfdGVzdHNbXSA9IHsKICAgU2FkTXhOeDRQYXJhbSg2NCwgNjQsICZ2cHhfc2Fk
NjR4NjR4NGRfYXZ4MiksCiAgIFNhZE14Tng0UGFyYW0oMzIsIDMyLCAmdnB4X3NhZDMyeDMyeDRk
X2F2eDIpLAogfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEFWWDIsIFNBRHg0VGVzdCwgOjp0
ZXN0aW5nOjpWYWx1ZXNJbih4NGRfYXZ4Ml90ZXN0cykpOworSU5TVEFOVElBVEVfVEVTVF9TVUlU
RV9QKEFWWDIsIFNBRHg0VGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbih4NGRfYXZ4Ml90ZXN0cykp
OwogCiBjb25zdCBTYWRNeE54OFBhcmFtIHg4X2F2eDJfdGVzdHNbXSA9IHsKICAgLy8gU2FkTXhO
eDhQYXJhbSg2NCwgNjQsICZ2cHhfc2FkNjR4NjR4OF9jKSwKICAgU2FkTXhOeDhQYXJhbSgzMiwg
MzIsICZ2cHhfc2FkMzJ4MzJ4OF9hdngyKSwKIH07Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUChB
VlgyLCBTQUR4OFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oeDhfYXZ4Ml90ZXN0cykpOworSU5T
VEFOVElBVEVfVEVTVF9TVUlURV9QKEFWWDIsIFNBRHg4VGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJ
bih4OF9hdngyX3Rlc3RzKSk7CiAjZW5kaWYgIC8vIEhBVkVfQVZYMgogCiAjaWYgSEFWRV9BVlg1
MTIKIGNvbnN0IFNhZE14Tng0UGFyYW0geDRkX2F2eDUxMl90ZXN0c1tdID0gewogICBTYWRNeE54
NFBhcmFtKDY0LCA2NCwgJnZweF9zYWQ2NHg2NHg0ZF9hdng1MTIpLAogfTsKLUlOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKEFWWDUxMiwgU0FEeDRUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAg
Ojp0ZXN0aW5nOjpWYWx1ZXNJbih4NGRfYXZ4NTEyX3Rlc3RzKSk7CitJTlNUQU5USUFURV9URVNU
X1NVSVRFX1AoQVZYNTEyLCBTQUR4NFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXNJbih4NGRfYXZ4NTEyX3Rlc3RzKSk7CiAjZW5kaWYgIC8vIEhBVkVfQVZY
NTEyCiAKIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkBAIC0xMDYxLDcgKzEwNjIsNyBAQCBjb25z
dCBTYWRNeE5QYXJhbSBtc2FfdGVzdHNbXSA9IHsKICAgU2FkTXhOUGFyYW0oNCwgOCwgJnZweF9z
YWQ0eDhfbXNhKSwKICAgU2FkTXhOUGFyYW0oNCwgNCwgJnZweF9zYWQ0eDRfbXNhKSwKIH07Ci1J
TlNUQU5USUFURV9URVNUX0NBU0VfUChNU0EsIFNBRFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4o
bXNhX3Rlc3RzKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoTVNBLCBTQURUZXN0LCA6OnRl
c3Rpbmc6OlZhbHVlc0luKG1zYV90ZXN0cykpOwogCiBjb25zdCBTYWRNeE5BdmdQYXJhbSBhdmdf
bXNhX3Rlc3RzW10gPSB7CiAgIFNhZE14TkF2Z1BhcmFtKDY0LCA2NCwgJnZweF9zYWQ2NHg2NF9h
dmdfbXNhKSwKQEAgLTEwNzgsNyArMTA3OSw3IEBAIGNvbnN0IFNhZE14TkF2Z1BhcmFtIGF2Z19t
c2FfdGVzdHNbXSA9IHsKICAgU2FkTXhOQXZnUGFyYW0oNCwgOCwgJnZweF9zYWQ0eDhfYXZnX21z
YSksCiAgIFNhZE14TkF2Z1BhcmFtKDQsIDQsICZ2cHhfc2FkNHg0X2F2Z19tc2EpLAogfTsKLUlO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE1TQSwgU0FEYXZnVGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJ
bihhdmdfbXNhX3Rlc3RzKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoTVNBLCBTQURhdmdU
ZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKGF2Z19tc2FfdGVzdHMpKTsKIAogY29uc3QgU2FkTXhO
eDRQYXJhbSB4NGRfbXNhX3Rlc3RzW10gPSB7CiAgIFNhZE14Tng0UGFyYW0oNjQsIDY0LCAmdnB4
X3NhZDY0eDY0eDRkX21zYSksCkBAIC0xMDk1LDcgKzEwOTYsNyBAQCBjb25zdCBTYWRNeE54NFBh
cmFtIHg0ZF9tc2FfdGVzdHNbXSA9IHsKICAgU2FkTXhOeDRQYXJhbSg0LCA4LCAmdnB4X3NhZDR4
OHg0ZF9tc2EpLAogICBTYWRNeE54NFBhcmFtKDQsIDQsICZ2cHhfc2FkNHg0eDRkX21zYSksCiB9
OwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTVNBLCBTQUR4NFRlc3QsIDo6dGVzdGluZzo6VmFs
dWVzSW4oeDRkX21zYV90ZXN0cykpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE1TQSwgU0FE
eDRUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKHg0ZF9tc2FfdGVzdHMpKTsKICNlbmRpZiAgLy8g
SEFWRV9NU0EKIAogLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQEAgLTExMTQsNyArMTExNSw3IEBA
IGNvbnN0IFNhZE14TlBhcmFtIHZzeF90ZXN0c1tdID0gewogICBTYWRNeE5QYXJhbSg4LCA4LCAm
dnB4X3NhZDh4OF92c3gpLAogICBTYWRNeE5QYXJhbSg4LCA0LCAmdnB4X3NhZDh4NF92c3gpLAog
fTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKFZTWCwgU0FEVGVzdCwgOjp0ZXN0aW5nOjpWYWx1
ZXNJbih2c3hfdGVzdHMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChWU1gsIFNBRFRlc3Qs
IDo6dGVzdGluZzo6VmFsdWVzSW4odnN4X3Rlc3RzKSk7CiAKIGNvbnN0IFNhZE14TkF2Z1BhcmFt
IGF2Z192c3hfdGVzdHNbXSA9IHsKICAgU2FkTXhOQXZnUGFyYW0oNjQsIDY0LCAmdnB4X3NhZDY0
eDY0X2F2Z192c3gpLApAQCAtMTEyNiw3ICsxMTI3LDcgQEAgY29uc3QgU2FkTXhOQXZnUGFyYW0g
YXZnX3ZzeF90ZXN0c1tdID0gewogICBTYWRNeE5BdmdQYXJhbSgxNiwgMTYsICZ2cHhfc2FkMTZ4
MTZfYXZnX3ZzeCksCiAgIFNhZE14TkF2Z1BhcmFtKDE2LCA4LCAmdnB4X3NhZDE2eDhfYXZnX3Zz
eCksCiB9OwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoVlNYLCBTQURhdmdUZXN0LCA6OnRlc3Rp
bmc6OlZhbHVlc0luKGF2Z192c3hfdGVzdHMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChW
U1gsIFNBRGF2Z1Rlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oYXZnX3ZzeF90ZXN0cykpOwogCiBj
b25zdCBTYWRNeE54NFBhcmFtIHg0ZF92c3hfdGVzdHNbXSA9IHsKICAgU2FkTXhOeDRQYXJhbSg2
NCwgNjQsICZ2cHhfc2FkNjR4NjR4NGRfdnN4KSwKQEAgLTExMzgsNyArMTEzOSw3IEBAIGNvbnN0
IFNhZE14Tng0UGFyYW0geDRkX3ZzeF90ZXN0c1tdID0gewogICBTYWRNeE54NFBhcmFtKDE2LCAx
NiwgJnZweF9zYWQxNngxNng0ZF92c3gpLAogICBTYWRNeE54NFBhcmFtKDE2LCA4LCAmdnB4X3Nh
ZDE2eDh4NGRfdnN4KSwKIH07Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUChWU1gsIFNBRHg0VGVz
dCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbih4NGRfdnN4X3Rlc3RzKSk7CitJTlNUQU5USUFURV9URVNU
X1NVSVRFX1AoVlNYLCBTQUR4NFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oeDRkX3ZzeF90ZXN0
cykpOwogI2VuZGlmICAvLyBIQVZFX1ZTWAogCiAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpAQCAt
MTE1OSw3ICsxMTYwLDcgQEAgY29uc3QgU2FkTXhOUGFyYW0gbW1pX3Rlc3RzW10gPSB7CiAgIFNh
ZE14TlBhcmFtKDQsIDgsICZ2cHhfc2FkNHg4X21taSksCiAgIFNhZE14TlBhcmFtKDQsIDQsICZ2
cHhfc2FkNHg0X21taSksCiB9OwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTU1JLCBTQURUZXN0
LCA6OnRlc3Rpbmc6OlZhbHVlc0luKG1taV90ZXN0cykpOworSU5TVEFOVElBVEVfVEVTVF9TVUlU
RV9QKE1NSSwgU0FEVGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbihtbWlfdGVzdHMpKTsKIAogY29u
c3QgU2FkTXhOQXZnUGFyYW0gYXZnX21taV90ZXN0c1tdID0gewogICBTYWRNeE5BdmdQYXJhbSg2
NCwgNjQsICZ2cHhfc2FkNjR4NjRfYXZnX21taSksCkBAIC0xMTc2LDcgKzExNzcsNyBAQCBjb25z
dCBTYWRNeE5BdmdQYXJhbSBhdmdfbW1pX3Rlc3RzW10gPSB7CiAgIFNhZE14TkF2Z1BhcmFtKDQs
IDgsICZ2cHhfc2FkNHg4X2F2Z19tbWkpLAogICBTYWRNeE5BdmdQYXJhbSg0LCA0LCAmdnB4X3Nh
ZDR4NF9hdmdfbW1pKSwKIH07Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUChNTUksIFNBRGF2Z1Rl
c3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oYXZnX21taV90ZXN0cykpOworSU5TVEFOVElBVEVfVEVT
VF9TVUlURV9QKE1NSSwgU0FEYXZnVGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbihhdmdfbW1pX3Rl
c3RzKSk7CiAKIGNvbnN0IFNhZE14Tng0UGFyYW0geDRkX21taV90ZXN0c1tdID0gewogICBTYWRN
eE54NFBhcmFtKDY0LCA2NCwgJnZweF9zYWQ2NHg2NHg0ZF9tbWkpLApAQCAtMTE5Myw2ICsxMTk0
LDYgQEAgY29uc3QgU2FkTXhOeDRQYXJhbSB4NGRfbW1pX3Rlc3RzW10gPSB7CiAgIFNhZE14Tng0
UGFyYW0oNCwgOCwgJnZweF9zYWQ0eDh4NGRfbW1pKSwKICAgU2FkTXhOeDRQYXJhbSg0LCA0LCAm
dnB4X3NhZDR4NHg0ZF9tbWkpLAogfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE1NSSwgU0FE
eDRUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKHg0ZF9tbWlfdGVzdHMpKTsKK0lOU1RBTlRJQVRF
X1RFU1RfU1VJVEVfUChNTUksIFNBRHg0VGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbih4NGRfbW1p
X3Rlc3RzKSk7CiAjZW5kaWYgIC8vIEhBVkVfTU1JCiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGVzdC9zZXRfbWFwcy5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zZXRfbWFw
cy5zaAppbmRleCBlN2M4ZDQzZmE4ODVjYzNjYWJmMTFhNjE0ODA3ZmEzYjI4NmY3YTI2Li5mNDVk
YzUxZjQ5MTdlZjdkMWZhZmI2YzIwMjNiZDI0M2ViY2Y4NTZmIDEwMDc1NQotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rlc3Qvc2V0X21hcHMuc2gKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3NldF9tYXBzLnNoCkBA
IC0zNiw3ICszNiw3IEBAIHNldF9tYXBzKCkgewogCiAgIGV2YWwgIiR7VlBYX1RFU1RfUFJFRklY
fSIgIiR7ZW5jb2Rlcn0iICIke2NvZGVjfSIgIiR7WVVWX1JBV19JTlBVVF9XSURUSH0iIFwKICAg
ICAgICIke1lVVl9SQVdfSU5QVVRfSEVJR0hUfSIgIiR7WVVWX1JBV19JTlBVVH0iICIke291dHB1
dF9maWxlfSIgXAotICAgICAgJHtkZXZudWxsfQorICAgICAgJHtkZXZudWxsfSB8fCByZXR1cm4g
MQogCiAgIFsgLWUgIiR7b3V0cHV0X2ZpbGV9IiBdIHx8IHJldHVybiAxCiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rlc3Qvc2ltcGxlX2RlY29kZXIuc2ggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvc2lt
cGxlX2RlY29kZXIuc2gKaW5kZXggN2VlYWY3MWIxYzY2OGI5NWExMWMxOTZhY2U4YWU0MWVkMTRi
MDFjNi4uNjVmYzQ4MjhlZDhhYTMyMTQ4YjgzZWQ1NmZjYmVlMmEyODczMWVkNCAxMDA3NTUKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L3NpbXBsZV9kZWNvZGVyLnNoCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVz
dC9zaW1wbGVfZGVjb2Rlci5zaApAQCAtMzgsNyArMzgsNyBAQCBzaW1wbGVfZGVjb2RlcigpIHsK
ICAgZmkKIAogICBldmFsICIke1ZQWF9URVNUX1BSRUZJWH0iICIke2RlY29kZXJ9IiAiJHtpbnB1
dF9maWxlfSIgIiR7b3V0cHV0X2ZpbGV9IiBcCi0gICAgICAke2Rldm51bGx9CisgICAgICAke2Rl
dm51bGx9IHx8IHJldHVybiAxCiAKICAgWyAtZSAiJHtvdXRwdXRfZmlsZX0iIF0gfHwgcmV0dXJu
IDEKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zaW1wbGVfZW5jb2RlX3Rlc3QuY2Mg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rlc3Qvc2ltcGxlX2VuY29kZV90ZXN0LmNjCmluZGV4IGVkYWY1YmZiNGEx
NGZmMGIzYmU3ODU5OTRhMjI0YzkxY2FiMWI4YWMuLmFiODkzMDQ1ZDgwM2M4NjcxZTk1MGVhNDcy
ZjcyN2RhYTQ3MGY5MjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zaW1wbGVfZW5jb2Rl
X3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3NpbXBsZV9lbmNvZGVfdGVzdC5jYwpAQCAt
MTAsNiArMTAsNyBAQAogCiAjaW5jbHVkZSA8bWF0aC5oPgogI2luY2x1ZGUgPG1lbW9yeT4KKyNp
bmNsdWRlIDxzdHJpbmc+CiAjaW5jbHVkZSA8dmVjdG9yPgogI2luY2x1ZGUgInRoaXJkX3BhcnR5
L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QuaCIKICNpbmNsdWRlICJ2cDkvc2lt
cGxlX2VuY29kZS5oIgpAQCAtMTcsMTUgKzE4LDYgQEAKIG5hbWVzcGFjZSB2cDkgewogbmFtZXNw
YWNlIHsKIAotLy8gVE9ETyhhbmdpcmJpZCk6IEZpbmQgYSBiZXR0ZXIgd2F5IHRvIGNvbnN0cnVj
dCBlbmNvZGUgaW5mbwotY29uc3QgaW50IHcgPSAzNTI7Ci1jb25zdCBpbnQgaCA9IDI4ODsKLWNv
bnN0IGludCBmcmFtZV9yYXRlX251bSA9IDMwOwotY29uc3QgaW50IGZyYW1lX3JhdGVfZGVuID0g
MTsKLWNvbnN0IGludCB0YXJnZXRfYml0cmF0ZSA9IDEwMDA7Ci1jb25zdCBpbnQgbnVtX2ZyYW1l
cyA9IDE3OwotY29uc3QgY2hhciBpbmZpbGVfcGF0aFtdID0gImJ1c18zNTJ4Mjg4XzQyMF9mMjBf
YjgueXV2IjsKLQogZG91YmxlIEdldEJpdHJhdGVJbkticHMoc2l6ZV90IGJpdF9zaXplLCBpbnQg
bnVtX2ZyYW1lcywgaW50IGZyYW1lX3JhdGVfbnVtLAogICAgICAgICAgICAgICAgICAgICAgICAg
aW50IGZyYW1lX3JhdGVfZGVuKSB7CiAgIHJldHVybiBzdGF0aWNfY2FzdDxkb3VibGU+KGJpdF9z
aXplKSAvIG51bV9mcmFtZXMgKiBmcmFtZV9yYXRlX251bSAvCkBAIC0zNiwxNCArMjgsMjYgQEAg
ZG91YmxlIEdldEJpdHJhdGVJbkticHMoc2l6ZV90IGJpdF9zaXplLCBpbnQgbnVtX2ZyYW1lcywg
aW50IGZyYW1lX3JhdGVfbnVtLAogLy8gRm9yIGV4YW1wbGUsIGlmIHNpemUgaXMgNywgcmV0dXJu
IDIuCiBpbnQgR2V0TnVtVW5pdDR4NChpbnQgc2l6ZSkgeyByZXR1cm4gKHNpemUgKyAzKSA+PiAy
OyB9CiAKLVRFU1QoU2ltcGxlRW5jb2RlLCBDb21wdXRlRmlyc3RQYXNzU3RhdHMpIHsKLSAgU2lt
cGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUodywgaCwgZnJhbWVfcmF0ZV9udW0sIGZyYW1lX3JhdGVf
ZGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRfYml0cmF0ZSwgbnVtX2Zy
YW1lcywgaW5maWxlX3BhdGgpOworY2xhc3MgU2ltcGxlRW5jb2RlVGVzdCA6IHB1YmxpYyA6OnRl
c3Rpbmc6OlRlc3QgeworIHByb3RlY3RlZDoKKyAgY29uc3QgaW50IHdpZHRoXyA9IDM1MjsKKyAg
Y29uc3QgaW50IGhlaWdodF8gPSAyODg7CisgIGNvbnN0IGludCBmcmFtZV9yYXRlX251bV8gPSAz
MDsKKyAgY29uc3QgaW50IGZyYW1lX3JhdGVfZGVuXyA9IDE7CisgIGNvbnN0IGludCB0YXJnZXRf
Yml0cmF0ZV8gPSAxMDAwOworICBjb25zdCBpbnQgbnVtX2ZyYW1lc18gPSAxNzsKKyAgY29uc3Qg
c3RkOjpzdHJpbmcgaW5fZmlsZV9wYXRoX3N0cl8gPSAiYnVzXzM1MngyODhfNDIwX2YyMF9iOC55
dXYiOworfTsKKworVEVTVF9GKFNpbXBsZUVuY29kZVRlc3QsIENvbXB1dGVGaXJzdFBhc3NTdGF0
cykgeworICBTaW1wbGVFbmNvZGUgc2ltcGxlX2VuY29kZSh3aWR0aF8sIGhlaWdodF8sIGZyYW1l
X3JhdGVfbnVtXywgZnJhbWVfcmF0ZV9kZW5fLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB0YXJnZXRfYml0cmF0ZV8sIG51bV9mcmFtZXNfLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbl9maWxlX3BhdGhfc3RyXy5jX3N0cigpKTsKICAgc2ltcGxlX2VuY29kZS5Db21wdXRl
Rmlyc3RQYXNzU3RhdHMoKTsKICAgc3RkOjp2ZWN0b3I8c3RkOjp2ZWN0b3I8ZG91YmxlPj4gZnJh
bWVfc3RhdHMgPQogICAgICAgc2ltcGxlX2VuY29kZS5PYnNlcnZlRmlyc3RQYXNzU3RhdHMoKTsK
LSAgRVhQRUNUX0VRKGZyYW1lX3N0YXRzLnNpemUoKSwgc3RhdGljX2Nhc3Q8c2l6ZV90PihudW1f
ZnJhbWVzKSk7Ci0gIHNpemVfdCBkYXRhX251bSA9IGZyYW1lX3N0YXRzWzBdLnNpemUoKTsKKyAg
RVhQRUNUX0VRKGZyYW1lX3N0YXRzLnNpemUoKSwgc3RhdGljX2Nhc3Q8c2l6ZV90PihudW1fZnJh
bWVzXykpOworICBjb25zdCBzaXplX3QgZGF0YV9udW0gPSBmcmFtZV9zdGF0c1swXS5zaXplKCk7
CiAgIC8vIFJlYWQgT2JzZXJ2ZUZpcnN0UGFzc1N0YXRzIGJlZm9yZSBjaGFuZ2luZyBGSVJTVFBB
U1NfU1RBVFMuCiAgIEVYUEVDVF9FUShkYXRhX251bSwgc3RhdGljX2Nhc3Q8c2l6ZV90PigyNSkp
OwogICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGZyYW1lX3N0YXRzLnNpemUoKTsgKytpKSB7CkBA
IC01NiwyNSArNjAsNDkgQEAgVEVTVChTaW1wbGVFbmNvZGUsIENvbXB1dGVGaXJzdFBhc3NTdGF0
cykgewogICB9CiB9CiAKLVRFU1QoU2ltcGxlRW5jb2RlLCBHZXRDb2RpbmdGcmFtZU51bSkgewot
ICBTaW1wbGVFbmNvZGUgc2ltcGxlX2VuY29kZSh3LCBoLCBmcmFtZV9yYXRlX251bSwgZnJhbWVf
cmF0ZV9kZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldF9iaXRyYXRlLCBu
dW1fZnJhbWVzLCBpbmZpbGVfcGF0aCk7CitURVNUX0YoU2ltcGxlRW5jb2RlVGVzdCwgT2JzZXJ2
ZUZpcnN0UGFzc01vdGlvblZlY3RvcnMpIHsKKyAgU2ltcGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUo
d2lkdGhfLCBoZWlnaHRfLCBmcmFtZV9yYXRlX251bV8sIGZyYW1lX3JhdGVfZGVuXywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2JpdHJhdGVfLCBudW1fZnJhbWVzXywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5fZmlsZV9wYXRoX3N0cl8uY19zdHIoKSk7CiAg
IHNpbXBsZV9lbmNvZGUuQ29tcHV0ZUZpcnN0UGFzc1N0YXRzKCk7Ci0gIGludCBudW1fY29kaW5n
X2ZyYW1lcyA9IHNpbXBsZV9lbmNvZGUuR2V0Q29kaW5nRnJhbWVOdW0oKTsKKyAgc3RkOjp2ZWN0
b3I8c3RkOjp2ZWN0b3I8TW90aW9uVmVjdG9ySW5mbz4+IGZwc19tb3Rpb25fdmVjdG9ycyA9Cisg
ICAgICBzaW1wbGVfZW5jb2RlLk9ic2VydmVGaXJzdFBhc3NNb3Rpb25WZWN0b3JzKCk7CisgIEVY
UEVDVF9FUShmcHNfbW90aW9uX3ZlY3RvcnMuc2l6ZSgpLCBzdGF0aWNfY2FzdDxzaXplX3Q+KG51
bV9mcmFtZXNfKSk7CisgIGNvbnN0IHNpemVfdCBudW1fYmxvY2tzID0gKCh3aWR0aF8gKyAxNSkg
Pj4gNCkgKiAoKGhlaWdodF8gKyAxNSkgPj4gNCk7CisgIEVYUEVDVF9FUShudW1fYmxvY2tzLCBm
cHNfbW90aW9uX3ZlY3RvcnNbMF0uc2l6ZSgpKTsKKyAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBm
cHNfbW90aW9uX3ZlY3RvcnMuc2l6ZSgpOyArK2kpIHsKKyAgICBFWFBFQ1RfRVEobnVtX2Jsb2Nr
cywgZnBzX21vdGlvbl92ZWN0b3JzW2ldLnNpemUoKSk7CisgICAgZm9yIChzaXplX3QgaiA9IDA7
IGogPCBudW1fYmxvY2tzOyArK2opIHsKKyAgICAgIGNvbnN0IGludCBtdl9jb3VudCA9IGZwc19t
b3Rpb25fdmVjdG9yc1tpXVtqXS5tdl9jb3VudDsKKyAgICAgIGNvbnN0IGludCByZWZfY291bnQg
PQorICAgICAgICAgIChmcHNfbW90aW9uX3ZlY3RvcnNbaV1bal0ucmVmX2ZyYW1lWzBdICE9IGtS
ZWZGcmFtZVR5cGVOb25lKSArCisgICAgICAgICAgKGZwc19tb3Rpb25fdmVjdG9yc1tpXVtqXS5y
ZWZfZnJhbWVbMV0gIT0ga1JlZkZyYW1lVHlwZU5vbmUpOworICAgICAgRVhQRUNUX0VRKG12X2Nv
dW50LCByZWZfY291bnQpOworICAgIH0KKyAgfQorfQorCitURVNUX0YoU2ltcGxlRW5jb2RlVGVz
dCwgR2V0Q29kaW5nRnJhbWVOdW0pIHsKKyAgU2ltcGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUod2lk
dGhfLCBoZWlnaHRfLCBmcmFtZV9yYXRlX251bV8sIGZyYW1lX3JhdGVfZGVuXywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2JpdHJhdGVfLCBudW1fZnJhbWVzXywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaW5fZmlsZV9wYXRoX3N0cl8uY19zdHIoKSk7CisgIHNp
bXBsZV9lbmNvZGUuQ29tcHV0ZUZpcnN0UGFzc1N0YXRzKCk7CisgIGNvbnN0IGludCBudW1fY29k
aW5nX2ZyYW1lcyA9IHNpbXBsZV9lbmNvZGUuR2V0Q29kaW5nRnJhbWVOdW0oKTsKICAgRVhQRUNU
X0VRKG51bV9jb2RpbmdfZnJhbWVzLCAxOSk7CiB9CiAKLVRFU1QoU2ltcGxlRW5jb2RlLCBFbmNv
ZGVGcmFtZSkgewotICBTaW1wbGVFbmNvZGUgc2ltcGxlX2VuY29kZSh3LCBoLCBmcmFtZV9yYXRl
X251bSwgZnJhbWVfcmF0ZV9kZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdl
dF9iaXRyYXRlLCBudW1fZnJhbWVzLCBpbmZpbGVfcGF0aCk7CitURVNUX0YoU2ltcGxlRW5jb2Rl
VGVzdCwgRW5jb2RlRnJhbWUpIHsKKyAgU2ltcGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUod2lkdGhf
LCBoZWlnaHRfLCBmcmFtZV9yYXRlX251bV8sIGZyYW1lX3JhdGVfZGVuXywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdGFyZ2V0X2JpdHJhdGVfLCBudW1fZnJhbWVzXywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaW5fZmlsZV9wYXRoX3N0cl8uY19zdHIoKSk7CiAgIHNpbXBs
ZV9lbmNvZGUuQ29tcHV0ZUZpcnN0UGFzc1N0YXRzKCk7CiAgIGludCBudW1fY29kaW5nX2ZyYW1l
cyA9IHNpbXBsZV9lbmNvZGUuR2V0Q29kaW5nRnJhbWVOdW0oKTsKLSAgRVhQRUNUX0dFKG51bV9j
b2RpbmdfZnJhbWVzLCBudW1fZnJhbWVzKTsKKyAgRVhQRUNUX0dFKG51bV9jb2RpbmdfZnJhbWVz
LCBudW1fZnJhbWVzXyk7CiAgIHNpbXBsZV9lbmNvZGUuU3RhcnRFbmNvZGUoKTsKICAgc2l6ZV90
IHRvdGFsX2RhdGFfYml0X3NpemUgPSAwOwogICBpbnQgY29kZWRfc2hvd19mcmFtZV9jb3VudCA9
IDA7CiAgIGludCBmcmFtZV9jb2RpbmdfaW5kZXggPSAwOwotICB3aGlsZSAoY29kZWRfc2hvd19m
cmFtZV9jb3VudCA8IG51bV9mcmFtZXMpIHsKKyAgd2hpbGUgKGNvZGVkX3Nob3dfZnJhbWVfY291
bnQgPCBudW1fZnJhbWVzXykgewogICAgIGNvbnN0IEdyb3VwT2ZQaWN0dXJlIGdyb3VwX29mX3Bp
Y3R1cmUgPQogICAgICAgICBzaW1wbGVfZW5jb2RlLk9ic2VydmVHcm91cE9mUGljdHVyZSgpOwog
ICAgIGNvbnN0IHN0ZDo6dmVjdG9yPEVuY29kZUZyYW1lSW5mbz4gJmVuY29kZV9mcmFtZV9saXN0
ID0KQEAgLTkyLDIzICsxMjAsOTMgQEAgVEVTVChTaW1wbGVFbmNvZGUsIEVuY29kZUZyYW1lKSB7
CiAgICAgICBFWFBFQ1RfR0UoZW5jb2RlX2ZyYW1lX3Jlc3VsdC5wc25yLCAzNCkKICAgICAgICAg
ICA8PCAiVGhlIHBzbnIgaXMgc3VwcG9zZWQgdG8gYmUgZ3JlYXRlciB0aGFuIDM0IGdpdmVuIHRo
ZSAiCiAgICAgICAgICAgICAgInRhcmdldF9iaXRyYXRlIDEwMDAga2JwcyI7CisgICAgICBFWFBF
Q1RfRVEoZW5jb2RlX2ZyYW1lX3Jlc3VsdC5yZWZfZnJhbWVfaW5mbywKKyAgICAgICAgICAgICAg
ICBlbmNvZGVfZnJhbWVfbGlzdFtncm91cF9pbmRleF0ucmVmX2ZyYW1lX2luZm8pOwogICAgICAg
dG90YWxfZGF0YV9iaXRfc2l6ZSArPSBlbmNvZGVfZnJhbWVfcmVzdWx0LmNvZGluZ19kYXRhX2Jp
dF9zaXplOwogICAgICAgKytmcmFtZV9jb2RpbmdfaW5kZXg7CiAgICAgfQogICAgIGNvZGVkX3No
b3dfZnJhbWVfY291bnQgKz0gZ3JvdXBfb2ZfcGljdHVyZS5zaG93X2ZyYW1lX2NvdW50OwogICB9
Ci0gIGNvbnN0IGRvdWJsZSBiaXRyYXRlID0gR2V0Qml0cmF0ZUluS2Jwcyh0b3RhbF9kYXRhX2Jp
dF9zaXplLCBudW1fZnJhbWVzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZnJhbWVfcmF0ZV9udW0sIGZyYW1lX3JhdGVfZGVuKTsKKyAgY29uc3QgZG91YmxlIGJp
dHJhdGUgPSBHZXRCaXRyYXRlSW5LYnBzKHRvdGFsX2RhdGFfYml0X3NpemUsIG51bV9mcmFtZXNf
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWVfcmF0ZV9u
dW1fLCBmcmFtZV9yYXRlX2Rlbl8pOwogICBjb25zdCBkb3VibGUgb2ZmX3RhcmdldF90aHJlc2hv
bGQgPSAxNTA7Ci0gIEVYUEVDVF9MRShmYWJzKHRhcmdldF9iaXRyYXRlIC0gYml0cmF0ZSksIG9m
Zl90YXJnZXRfdGhyZXNob2xkKTsKKyAgRVhQRUNUX0xFKGZhYnModGFyZ2V0X2JpdHJhdGVfIC0g
Yml0cmF0ZSksIG9mZl90YXJnZXRfdGhyZXNob2xkKTsKICAgc2ltcGxlX2VuY29kZS5FbmRFbmNv
ZGUoKTsKIH0KIAotVEVTVChTaW1wbGVFbmNvZGUsIEVuY29kZUZyYW1lV2l0aFF1YW50aXplSW5k
ZXgpIHsKLSAgU2ltcGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUodywgaCwgZnJhbWVfcmF0ZV9udW0s
IGZyYW1lX3JhdGVfZGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRfYml0
cmF0ZSwgbnVtX2ZyYW1lcywgaW5maWxlX3BhdGgpOworVEVTVF9GKFNpbXBsZUVuY29kZVRlc3Qs
IE9ic2VydmVLZXlGcmFtZU1hcCkgeworICBTaW1wbGVFbmNvZGUgc2ltcGxlX2VuY29kZSh3aWR0
aF8sIGhlaWdodF8sIGZyYW1lX3JhdGVfbnVtXywgZnJhbWVfcmF0ZV9kZW5fLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB0YXJnZXRfYml0cmF0ZV8sIG51bV9mcmFtZXNfLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbl9maWxlX3BhdGhfc3RyXy5jX3N0cigpKTsKICAgc2lt
cGxlX2VuY29kZS5Db21wdXRlRmlyc3RQYXNzU3RhdHMoKTsKLSAgaW50IG51bV9jb2RpbmdfZnJh
bWVzID0gc2ltcGxlX2VuY29kZS5HZXRDb2RpbmdGcmFtZU51bSgpOworICBzdGQ6OnZlY3Rvcjxp
bnQ+IGtleV9mcmFtZV9tYXAgPSBzaW1wbGVfZW5jb2RlLk9ic2VydmVLZXlGcmFtZU1hcCgpOwor
ICBFWFBFQ1RfRVEoa2V5X2ZyYW1lX21hcC5zaXplKCksIHN0YXRpY19jYXN0PHNpemVfdD4obnVt
X2ZyYW1lc18pKTsKKyAgc2ltcGxlX2VuY29kZS5TdGFydEVuY29kZSgpOworICBpbnQgY29kZWRf
c2hvd19mcmFtZV9jb3VudCA9IDA7CisgIHdoaWxlIChjb2RlZF9zaG93X2ZyYW1lX2NvdW50IDwg
bnVtX2ZyYW1lc18pIHsKKyAgICBjb25zdCBHcm91cE9mUGljdHVyZSBncm91cF9vZl9waWN0dXJl
ID0KKyAgICAgICAgc2ltcGxlX2VuY29kZS5PYnNlcnZlR3JvdXBPZlBpY3R1cmUoKTsKKyAgICBj
b25zdCBzdGQ6OnZlY3RvcjxFbmNvZGVGcmFtZUluZm8+ICZlbmNvZGVfZnJhbWVfbGlzdCA9Cisg
ICAgICAgIGdyb3VwX29mX3BpY3R1cmUuZW5jb2RlX2ZyYW1lX2xpc3Q7CisgICAgZm9yIChzaXpl
X3QgZ3JvdXBfaW5kZXggPSAwOyBncm91cF9pbmRleCA8IGVuY29kZV9mcmFtZV9saXN0LnNpemUo
KTsKKyAgICAgICAgICsrZ3JvdXBfaW5kZXgpIHsKKyAgICAgIEVuY29kZUZyYW1lUmVzdWx0IGVu
Y29kZV9mcmFtZV9yZXN1bHQ7CisgICAgICBzaW1wbGVfZW5jb2RlLkVuY29kZUZyYW1lKCZlbmNv
ZGVfZnJhbWVfcmVzdWx0KTsKKyAgICAgIGlmIChlbmNvZGVfZnJhbWVfcmVzdWx0LmZyYW1lX3R5
cGUgPT0ga0ZyYW1lVHlwZUtleSkgeworICAgICAgICBFWFBFQ1RfRVEoa2V5X2ZyYW1lX21hcFtl
bmNvZGVfZnJhbWVfcmVzdWx0LnNob3dfaWR4XSwgMSk7CisgICAgICB9IGVsc2UgeworICAgICAg
ICBFWFBFQ1RfRVEoa2V5X2ZyYW1lX21hcFtlbmNvZGVfZnJhbWVfcmVzdWx0LnNob3dfaWR4XSwg
MCk7CisgICAgICB9CisgICAgfQorICAgIGNvZGVkX3Nob3dfZnJhbWVfY291bnQgKz0gZ3JvdXBf
b2ZfcGljdHVyZS5zaG93X2ZyYW1lX2NvdW50OworICB9CisgIHNpbXBsZV9lbmNvZGUuRW5kRW5j
b2RlKCk7Cit9CisKK1RFU1RfRihTaW1wbGVFbmNvZGVUZXN0LCBFbmNvZGVGcmFtZVdpdGhUYXJn
ZXRGcmFtZUJpdHMpIHsKKyAgU2ltcGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUod2lkdGhfLCBoZWln
aHRfLCBmcmFtZV9yYXRlX251bV8sIGZyYW1lX3JhdGVfZGVuXywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdGFyZ2V0X2JpdHJhdGVfLCBudW1fZnJhbWVzXywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW5fZmlsZV9wYXRoX3N0cl8uY19zdHIoKSk7CisgIHNpbXBsZV9lbmNv
ZGUuQ29tcHV0ZUZpcnN0UGFzc1N0YXRzKCk7CisgIGNvbnN0IGludCBudW1fY29kaW5nX2ZyYW1l
cyA9IHNpbXBsZV9lbmNvZGUuR2V0Q29kaW5nRnJhbWVOdW0oKTsKKyAgc2ltcGxlX2VuY29kZS5T
dGFydEVuY29kZSgpOworICBmb3IgKGludCBpID0gMDsgaSA8IG51bV9jb2RpbmdfZnJhbWVzOyAr
K2kpIHsKKyAgICBFbmNvZGVGcmFtZUluZm8gZW5jb2RlX2ZyYW1lX2luZm8gPSBzaW1wbGVfZW5j
b2RlLkdldE5leHRFbmNvZGVGcmFtZUluZm8oKTsKKyAgICBpbnQgdGFyZ2V0X2ZyYW1lX2JpdHM7
CisgICAgc3dpdGNoIChlbmNvZGVfZnJhbWVfaW5mby5mcmFtZV90eXBlKSB7CisgICAgICBjYXNl
IGtGcmFtZVR5cGVJbnRlcjogdGFyZ2V0X2ZyYW1lX2JpdHMgPSAyMDAwMDsgYnJlYWs7CisgICAg
ICBjYXNlIGtGcmFtZVR5cGVLZXk6CisgICAgICBjYXNlIGtGcmFtZVR5cGVBbHRSZWY6CisgICAg
ICBjYXNlIGtGcmFtZVR5cGVHb2xkZW46IHRhcmdldF9mcmFtZV9iaXRzID0gMTAwMDAwOyBicmVh
azsKKyAgICAgIGNhc2Uga0ZyYW1lVHlwZU92ZXJsYXk6IHRhcmdldF9mcmFtZV9iaXRzID0gMjAw
MDsgYnJlYWs7CisgICAgICBkZWZhdWx0OiB0YXJnZXRfZnJhbWVfYml0cyA9IDIwMDAwOworICAg
IH0KKworICAgIGRvdWJsZSBwZXJjZW50X2RpZmYgPSAxNTsKKyAgICBpZiAoZW5jb2RlX2ZyYW1l
X2luZm8uZnJhbWVfdHlwZSA9PSBrRnJhbWVUeXBlT3ZlcmxheSkgeworICAgICAgcGVyY2VudF9k
aWZmID0gMTAwOworICAgIH0KKyAgICBFbmNvZGVGcmFtZVJlc3VsdCBlbmNvZGVfZnJhbWVfcmVz
dWx0OworICAgIHNpbXBsZV9lbmNvZGUuRW5jb2RlRnJhbWVXaXRoVGFyZ2V0RnJhbWVCaXRzKAor
ICAgICAgICAmZW5jb2RlX2ZyYW1lX3Jlc3VsdCwgdGFyZ2V0X2ZyYW1lX2JpdHMsIHBlcmNlbnRf
ZGlmZik7CisgICAgY29uc3QgaW50IHJlY29kZV9jb3VudCA9IGVuY29kZV9mcmFtZV9yZXN1bHQu
cmVjb2RlX2NvdW50OworICAgIC8vIFRPRE8oYW5naWViaXJkKTogUmVwbGFjZSA3IGJ5IFJBVEVf
Q1RSTF9NQVhfUkVDT0RFX05VTQorICAgIEVYUEVDVF9MRShyZWNvZGVfY291bnQsIDcpOworICAg
IEVYUEVDVF9HRShyZWNvZGVfY291bnQsIDEpOworCisgICAgY29uc3QgZG91YmxlIGRpZmYgPSBm
YWJzKChkb3VibGUpZW5jb2RlX2ZyYW1lX3Jlc3VsdC5jb2RpbmdfZGF0YV9iaXRfc2l6ZSAtCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldF9mcmFtZV9iaXRzKTsKKyAgICBFWFBF
Q1RfTEUoZGlmZiAqIDEwMCAvIHRhcmdldF9mcmFtZV9iaXRzLCBwZXJjZW50X2RpZmYpOworICB9
CisgIHNpbXBsZV9lbmNvZGUuRW5kRW5jb2RlKCk7Cit9CisKK1RFU1RfRihTaW1wbGVFbmNvZGVU
ZXN0LCBFbmNvZGVGcmFtZVdpdGhRdWFudGl6ZUluZGV4KSB7CisgIFNpbXBsZUVuY29kZSBzaW1w
bGVfZW5jb2RlKHdpZHRoXywgaGVpZ2h0XywgZnJhbWVfcmF0ZV9udW1fLCBmcmFtZV9yYXRlX2Rl
bl8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldF9iaXRyYXRlXywgbnVtX2Zy
YW1lc18sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluX2ZpbGVfcGF0aF9zdHJfLmNf
c3RyKCkpOworICBzaW1wbGVfZW5jb2RlLkNvbXB1dGVGaXJzdFBhc3NTdGF0cygpOworICBjb25z
dCBpbnQgbnVtX2NvZGluZ19mcmFtZXMgPSBzaW1wbGVfZW5jb2RlLkdldENvZGluZ0ZyYW1lTnVt
KCk7CiAgIHNpbXBsZV9lbmNvZGUuU3RhcnRFbmNvZGUoKTsKICAgZm9yIChpbnQgaSA9IDA7IGkg
PCBudW1fY29kaW5nX2ZyYW1lczsgKytpKSB7CiAgICAgY29uc3QgaW50IGFzc2lnbmVkX3F1YW50
aXplX2luZGV4ID0gMTAwICsgaTsKQEAgLTEyMCwxNSArMjE4LDI0IEBAIFRFU1QoU2ltcGxlRW5j
b2RlLCBFbmNvZGVGcmFtZVdpdGhRdWFudGl6ZUluZGV4KSB7CiAgIHNpbXBsZV9lbmNvZGUuRW5k
RW5jb2RlKCk7CiB9CiAKLVRFU1QoU2ltcGxlRW5jb2RlLCBFbmNvZGVDb25zaXN0ZW5jeVRlc3Qp
IHsKKy8vIFRoaXMgdGVzdCBlbmNvZGVzIHRoZSB2aWRlbyB1c2luZyBFbmNvZGVGcmFtZSgpLCB3
aGVyZSBxdWFudGl6ZSBpbmRleGVzCisvLyBhcmUgc2VsZWN0ZWQgYnkgdnA5IHJhdGUgY29udHJv
bC4KKy8vIEVuY29kZSBzdGF0cyBhbmQgdGhlIHF1YW50aXplX2luZGV4ZXMgYXJlIGNvbGxlY3Rl
ZC4KKy8vIFRoZW4gdGhlIHRlc3QgZW5jb2RlcyB0aGUgdmlkZW8gYWdhaW4gdXNpbmcgRW5jb2Rl
RnJhbWVXaXRoUXVhbnRpemVJbmRleCgpCisvLyB1c2luZyB0aGUgcXVhbnRpemUgaW5kZXhlcyBj
b2xsZWN0ZWQgZnJvbSB0aGUgZmlyc3QgcnVuLgorLy8gVGhlbiB0ZXN0IHdoZXRoZXIgdGhlIGVu
Y29kZSBzdGF0cyBvZiB0aGUgdHdvIGVuY29kaW5nIHJ1bnMgbWF0Y2guCitURVNUX0YoU2ltcGxl
RW5jb2RlVGVzdCwgRW5jb2RlQ29uc2lzdGVuY3lUZXN0KSB7CiAgIHN0ZDo6dmVjdG9yPGludD4g
cXVhbnRpemVfaW5kZXhfbGlzdDsKICAgc3RkOjp2ZWN0b3I8dWludDY0X3Q+IHJlZl9zc2VfbGlz
dDsKICAgc3RkOjp2ZWN0b3I8ZG91YmxlPiByZWZfcHNucl9saXN0OwogICBzdGQ6OnZlY3Rvcjxz
aXplX3Q+IHJlZl9iaXRfc2l6ZV9saXN0OworICBzdGQ6OnZlY3RvcjxGcmFtZVR5cGU+IHJlZl9m
cmFtZV90eXBlX2xpc3Q7CisgIHN0ZDo6dmVjdG9yPGludD4gcmVmX3Nob3dfaWR4X2xpc3Q7CiAg
IHsKICAgICAvLyBUaGUgZmlyc3QgZW5jb2RlLgotICAgIFNpbXBsZUVuY29kZSBzaW1wbGVfZW5j
b2RlKHcsIGgsIGZyYW1lX3JhdGVfbnVtLCBmcmFtZV9yYXRlX2RlbiwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB0YXJnZXRfYml0cmF0ZSwgbnVtX2ZyYW1lcywgaW5maWxlX3BhdGgp
OworICAgIFNpbXBsZUVuY29kZSBzaW1wbGVfZW5jb2RlKHdpZHRoXywgaGVpZ2h0XywgZnJhbWVf
cmF0ZV9udW1fLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyYW1lX3JhdGVfZGVu
XywgdGFyZ2V0X2JpdHJhdGVfLCBudW1fZnJhbWVzXywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbl9maWxlX3BhdGhfc3RyXy5jX3N0cigpKTsKICAgICBzaW1wbGVfZW5jb2RlLkNv
bXB1dGVGaXJzdFBhc3NTdGF0cygpOwogICAgIGNvbnN0IGludCBudW1fY29kaW5nX2ZyYW1lcyA9
IHNpbXBsZV9lbmNvZGUuR2V0Q29kaW5nRnJhbWVOdW0oKTsKICAgICBzaW1wbGVfZW5jb2RlLlN0
YXJ0RW5jb2RlKCk7CkBAIC0xMzksMTMgKzI0NiwxNiBAQCBURVNUKFNpbXBsZUVuY29kZSwgRW5j
b2RlQ29uc2lzdGVuY3lUZXN0KSB7CiAgICAgICByZWZfc3NlX2xpc3QucHVzaF9iYWNrKGVuY29k
ZV9mcmFtZV9yZXN1bHQuc3NlKTsKICAgICAgIHJlZl9wc25yX2xpc3QucHVzaF9iYWNrKGVuY29k
ZV9mcmFtZV9yZXN1bHQucHNucik7CiAgICAgICByZWZfYml0X3NpemVfbGlzdC5wdXNoX2JhY2so
ZW5jb2RlX2ZyYW1lX3Jlc3VsdC5jb2RpbmdfZGF0YV9iaXRfc2l6ZSk7CisgICAgICByZWZfZnJh
bWVfdHlwZV9saXN0LnB1c2hfYmFjayhlbmNvZGVfZnJhbWVfcmVzdWx0LmZyYW1lX3R5cGUpOwor
ICAgICAgcmVmX3Nob3dfaWR4X2xpc3QucHVzaF9iYWNrKGVuY29kZV9mcmFtZV9yZXN1bHQuc2hv
d19pZHgpOwogICAgIH0KICAgICBzaW1wbGVfZW5jb2RlLkVuZEVuY29kZSgpOwogICB9CiAgIHsK
ICAgICAvLyBUaGUgc2Vjb25kIGVuY29kZSB3aXRoIHF1YW50aXplIGluZGV4IGdvdCBmcm9tIHRo
ZSBmaXJzdCBlbmNvZGUuCi0gICAgU2ltcGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUodywgaCwgZnJh
bWVfcmF0ZV9udW0sIGZyYW1lX3JhdGVfZGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHRhcmdldF9iaXRyYXRlLCBudW1fZnJhbWVzLCBpbmZpbGVfcGF0aCk7CisgICAgU2ltcGxl
RW5jb2RlIHNpbXBsZV9lbmNvZGUod2lkdGhfLCBoZWlnaHRfLCBmcmFtZV9yYXRlX251bV8sCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWVfcmF0ZV9kZW5fLCB0YXJnZXRfYml0
cmF0ZV8sIG51bV9mcmFtZXNfLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluX2Zp
bGVfcGF0aF9zdHJfLmNfc3RyKCkpOwogICAgIHNpbXBsZV9lbmNvZGUuQ29tcHV0ZUZpcnN0UGFz
c1N0YXRzKCk7CiAgICAgY29uc3QgaW50IG51bV9jb2RpbmdfZnJhbWVzID0gc2ltcGxlX2VuY29k
ZS5HZXRDb2RpbmdGcmFtZU51bSgpOwogICAgIEVYUEVDVF9FUShzdGF0aWNfY2FzdDxzaXplX3Q+
KG51bV9jb2RpbmdfZnJhbWVzKSwKQEAgLTE1OSw2ICsyNjksOCBAQCBURVNUKFNpbXBsZUVuY29k
ZSwgRW5jb2RlQ29uc2lzdGVuY3lUZXN0KSB7CiAgICAgICBFWFBFQ1RfRVEoZW5jb2RlX2ZyYW1l
X3Jlc3VsdC5zc2UsIHJlZl9zc2VfbGlzdFtpXSk7CiAgICAgICBFWFBFQ1RfRE9VQkxFX0VRKGVu
Y29kZV9mcmFtZV9yZXN1bHQucHNuciwgcmVmX3BzbnJfbGlzdFtpXSk7CiAgICAgICBFWFBFQ1Rf
RVEoZW5jb2RlX2ZyYW1lX3Jlc3VsdC5jb2RpbmdfZGF0YV9iaXRfc2l6ZSwgcmVmX2JpdF9zaXpl
X2xpc3RbaV0pOworICAgICAgRVhQRUNUX0VRKGVuY29kZV9mcmFtZV9yZXN1bHQuZnJhbWVfdHlw
ZSwgcmVmX2ZyYW1lX3R5cGVfbGlzdFtpXSk7CisgICAgICBFWFBFQ1RfRVEoZW5jb2RlX2ZyYW1l
X3Jlc3VsdC5zaG93X2lkeCwgcmVmX3Nob3dfaWR4X2xpc3RbaV0pOwogICAgIH0KICAgICBzaW1w
bGVfZW5jb2RlLkVuZEVuY29kZSgpOwogICB9CkBAIC0xNjYsMTMgKzI3OCwxNCBAQCBURVNUKFNp
bXBsZUVuY29kZSwgRW5jb2RlQ29uc2lzdGVuY3lUZXN0KSB7CiAKIC8vIFRlc3QgdGhlIGluZm9y
bWF0aW9uIChwYXJ0aXRpb24gaW5mbyBhbmQgbW90aW9uIHZlY3RvciBpbmZvKSBzdG9yZWQgaW4K
IC8vIGVuY29kZXIgaXMgdGhlIHNhbWUgYmV0d2VlbiB0d28gZW5jb2RlIHJ1bnMuCi1URVNUKFNp
bXBsZUVuY29kZSwgRW5jb2RlQ29uc2lzdGVuY3lUZXN0MikgewotICBjb25zdCBpbnQgbnVtX3Jv
d3NfNHg0ID0gR2V0TnVtVW5pdDR4NCh3KTsKLSAgY29uc3QgaW50IG51bV9jb2xzXzR4NCA9IEdl
dE51bVVuaXQ0eDQoaCk7CitURVNUX0YoU2ltcGxlRW5jb2RlVGVzdCwgRW5jb2RlQ29uc2lzdGVu
Y3lUZXN0MikgeworICBjb25zdCBpbnQgbnVtX3Jvd3NfNHg0ID0gR2V0TnVtVW5pdDR4NCh3aWR0
aF8pOworICBjb25zdCBpbnQgbnVtX2NvbHNfNHg0ID0gR2V0TnVtVW5pdDR4NChoZWlnaHRfKTsK
ICAgY29uc3QgaW50IG51bV91bml0c180eDQgPSBudW1fcm93c180eDQgKiBudW1fY29sc180eDQ7
CiAgIC8vIFRoZSBmaXJzdCBlbmNvZGUuCi0gIFNpbXBsZUVuY29kZSBzaW1wbGVfZW5jb2RlKHcs
IGgsIGZyYW1lX3JhdGVfbnVtLCBmcmFtZV9yYXRlX2RlbiwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdGFyZ2V0X2JpdHJhdGUsIG51bV9mcmFtZXMsIGluZmlsZV9wYXRoKTsKKyAgU2lt
cGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUod2lkdGhfLCBoZWlnaHRfLCBmcmFtZV9yYXRlX251bV8s
IGZyYW1lX3JhdGVfZGVuXywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2Jp
dHJhdGVfLCBudW1fZnJhbWVzXywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5fZmls
ZV9wYXRoX3N0cl8uY19zdHIoKSk7CiAgIHNpbXBsZV9lbmNvZGUuQ29tcHV0ZUZpcnN0UGFzc1N0
YXRzKCk7CiAgIGNvbnN0IGludCBudW1fY29kaW5nX2ZyYW1lcyA9IHNpbXBsZV9lbmNvZGUuR2V0
Q29kaW5nRnJhbWVOdW0oKTsKICAgc3RkOjp2ZWN0b3I8UGFydGl0aW9uSW5mbz4gcGFydGl0aW9u
X2luZm9fbGlzdChudW1fdW5pdHNfNHg0ICoKQEAgLTE5Miw4ICszMDUsOSBAQCBURVNUKFNpbXBs
ZUVuY29kZSwgRW5jb2RlQ29uc2lzdGVuY3lUZXN0MikgewogICB9CiAgIHNpbXBsZV9lbmNvZGUu
RW5kRW5jb2RlKCk7CiAgIC8vIFRoZSBzZWNvbmQgZW5jb2RlLgotICBTaW1wbGVFbmNvZGUgc2lt
cGxlX2VuY29kZV8yKHcsIGgsIGZyYW1lX3JhdGVfbnVtLCBmcmFtZV9yYXRlX2RlbiwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRfYml0cmF0ZSwgbnVtX2ZyYW1lcywgaW5m
aWxlX3BhdGgpOworICBTaW1wbGVFbmNvZGUgc2ltcGxlX2VuY29kZV8yKHdpZHRoXywgaGVpZ2h0
XywgZnJhbWVfcmF0ZV9udW1fLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyYW1l
X3JhdGVfZGVuXywgdGFyZ2V0X2JpdHJhdGVfLCBudW1fZnJhbWVzXywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpbl9maWxlX3BhdGhfc3RyXy5jX3N0cigpKTsKICAgc2ltcGxlX2Vu
Y29kZV8yLkNvbXB1dGVGaXJzdFBhc3NTdGF0cygpOwogICBjb25zdCBpbnQgbnVtX2NvZGluZ19m
cmFtZXNfMiA9IHNpbXBsZV9lbmNvZGVfMi5HZXRDb2RpbmdGcmFtZU51bSgpOwogICBzaW1wbGVf
ZW5jb2RlXzIuU3RhcnRFbmNvZGUoKTsKQEAgLTIzNCwxNCArMzQ4LDE1IEBAIFRFU1QoU2ltcGxl
RW5jb2RlLCBFbmNvZGVDb25zaXN0ZW5jeVRlc3QyKSB7CiB9CiAKIC8vIFRlc3QgdGhlIGluZm9y
bWF0aW9uIHN0b3JlZCBpbiBlbmNvZGVyIGlzIHRoZSBzYW1lIGJldHdlZW4gdHdvIGVuY29kZSBy
dW5zLgotVEVTVChTaW1wbGVFbmNvZGUsIEVuY29kZUNvbnNpc3RlbmN5VGVzdDMpIHsKK1RFU1Rf
RihTaW1wbGVFbmNvZGVUZXN0LCBFbmNvZGVDb25zaXN0ZW5jeVRlc3QzKSB7CiAgIHN0ZDo6dmVj
dG9yPGludD4gcXVhbnRpemVfaW5kZXhfbGlzdDsKLSAgY29uc3QgaW50IG51bV9yb3dzXzR4NCA9
IEdldE51bVVuaXQ0eDQodyk7Ci0gIGNvbnN0IGludCBudW1fY29sc180eDQgPSBHZXROdW1Vbml0
NHg0KGgpOworICBjb25zdCBpbnQgbnVtX3Jvd3NfNHg0ID0gR2V0TnVtVW5pdDR4NCh3aWR0aF8p
OworICBjb25zdCBpbnQgbnVtX2NvbHNfNHg0ID0gR2V0TnVtVW5pdDR4NChoZWlnaHRfKTsKICAg
Y29uc3QgaW50IG51bV91bml0c180eDQgPSBudW1fcm93c180eDQgKiBudW1fY29sc180eDQ7CiAg
IC8vIFRoZSBmaXJzdCBlbmNvZGUuCi0gIFNpbXBsZUVuY29kZSBzaW1wbGVfZW5jb2RlKHcsIGgs
IGZyYW1lX3JhdGVfbnVtLCBmcmFtZV9yYXRlX2RlbiwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdGFyZ2V0X2JpdHJhdGUsIG51bV9mcmFtZXMsIGluZmlsZV9wYXRoKTsKKyAgU2ltcGxl
RW5jb2RlIHNpbXBsZV9lbmNvZGUod2lkdGhfLCBoZWlnaHRfLCBmcmFtZV9yYXRlX251bV8sIGZy
YW1lX3JhdGVfZGVuXywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2JpdHJh
dGVfLCBudW1fZnJhbWVzXywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5fZmlsZV9w
YXRoX3N0cl8uY19zdHIoKSk7CiAgIHNpbXBsZV9lbmNvZGUuQ29tcHV0ZUZpcnN0UGFzc1N0YXRz
KCk7CiAgIGNvbnN0IGludCBudW1fY29kaW5nX2ZyYW1lcyA9IHNpbXBsZV9lbmNvZGUuR2V0Q29k
aW5nRnJhbWVOdW0oKTsKICAgc3RkOjp2ZWN0b3I8UGFydGl0aW9uSW5mbz4gcGFydGl0aW9uX2lu
Zm9fbGlzdChudW1fdW5pdHNfNHg0ICoKQEAgLTI1OCw4ICszNzMsOSBAQCBURVNUKFNpbXBsZUVu
Y29kZSwgRW5jb2RlQ29uc2lzdGVuY3lUZXN0MykgewogICB9CiAgIHNpbXBsZV9lbmNvZGUuRW5k
RW5jb2RlKCk7CiAgIC8vIFRoZSBzZWNvbmQgZW5jb2RlLgotICBTaW1wbGVFbmNvZGUgc2ltcGxl
X2VuY29kZV8yKHcsIGgsIGZyYW1lX3JhdGVfbnVtLCBmcmFtZV9yYXRlX2RlbiwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRfYml0cmF0ZSwgbnVtX2ZyYW1lcywgaW5maWxl
X3BhdGgpOworICBTaW1wbGVFbmNvZGUgc2ltcGxlX2VuY29kZV8yKHdpZHRoXywgaGVpZ2h0Xywg
ZnJhbWVfcmF0ZV9udW1fLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyYW1lX3Jh
dGVfZGVuXywgdGFyZ2V0X2JpdHJhdGVfLCBudW1fZnJhbWVzXywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpbl9maWxlX3BhdGhfc3RyXy5jX3N0cigpKTsKICAgc2ltcGxlX2VuY29k
ZV8yLkNvbXB1dGVGaXJzdFBhc3NTdGF0cygpOwogICBjb25zdCBpbnQgbnVtX2NvZGluZ19mcmFt
ZXNfMiA9IHNpbXBsZV9lbmNvZGVfMi5HZXRDb2RpbmdGcmFtZU51bSgpOwogICBzaW1wbGVfZW5j
b2RlXzIuU3RhcnRFbmNvZGUoKTsKQEAgLTI4OSw0NSArNDA1LDUxIEBAIFRFU1QoU2ltcGxlRW5j
b2RlLCBFbmNvZGVDb25zaXN0ZW5jeVRlc3QzKSB7CiAvLyBHZXQgUVBzIGFuZCBhcmYgbG9jYXRp
b25zIGZyb20gdGhlIGZpcnN0IGVuY29kZS4KIC8vIFNldCBleHRlcm5hbCBhcmZzIGFuZCBRUHMg
Zm9yIHRoZSBzZWNvbmQgZW5jb2RlLgogLy8gRXhwZWN0IHRvIGdldCBtYXRjaGVkIHJlc3VsdHMu
Ci1URVNUKFNpbXBsZUVuY29kZSwgRW5jb2RlQ29uc2lzdGVuY3lUZXN0VXNlRXh0ZXJuYWxBcmZz
KSB7CitURVNUX0YoU2ltcGxlRW5jb2RlVGVzdCwgRW5jb2RlQ29uc2lzdGVuY3lTZXRFeHRlcm5h
bEdyb3VwT2ZQaWN0dXJlc01hcCkgewogICBzdGQ6OnZlY3RvcjxpbnQ+IHF1YW50aXplX2luZGV4
X2xpc3Q7CiAgIHN0ZDo6dmVjdG9yPHVpbnQ2NF90PiByZWZfc3NlX2xpc3Q7CiAgIHN0ZDo6dmVj
dG9yPGRvdWJsZT4gcmVmX3BzbnJfbGlzdDsKICAgc3RkOjp2ZWN0b3I8c2l6ZV90PiByZWZfYml0
X3NpemVfbGlzdDsKLSAgc3RkOjp2ZWN0b3I8aW50PiBleHRlcm5hbF9hcmZfaW5kZXhlcyhudW1f
ZnJhbWVzLCAwKTsKKyAgc3RkOjp2ZWN0b3I8aW50PiBnb3BfbWFwKG51bV9mcmFtZXNfLCAwKTsK
ICAgewogICAgIC8vIFRoZSBmaXJzdCBlbmNvZGUuCi0gICAgU2ltcGxlRW5jb2RlIHNpbXBsZV9l
bmNvZGUodywgaCwgZnJhbWVfcmF0ZV9udW0sIGZyYW1lX3JhdGVfZGVuLAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHRhcmdldF9iaXRyYXRlLCBudW1fZnJhbWVzLCBpbmZpbGVfcGF0
aCk7CisgICAgU2ltcGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUod2lkdGhfLCBoZWlnaHRfLCBmcmFt
ZV9yYXRlX251bV8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWVfcmF0ZV9k
ZW5fLCB0YXJnZXRfYml0cmF0ZV8sIG51bV9mcmFtZXNfLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGluX2ZpbGVfcGF0aF9zdHJfLmNfc3RyKCkpOwogICAgIHNpbXBsZV9lbmNvZGUu
Q29tcHV0ZUZpcnN0UGFzc1N0YXRzKCk7Ci0gICAgY29uc3QgaW50IG51bV9jb2RpbmdfZnJhbWVz
ID0gc2ltcGxlX2VuY29kZS5HZXRDb2RpbmdGcmFtZU51bSgpOwogICAgIHNpbXBsZV9lbmNvZGUu
U3RhcnRFbmNvZGUoKTsKLSAgICBmb3IgKGludCBpID0gMDsgaSA8IG51bV9jb2RpbmdfZnJhbWVz
OyArK2kpIHsKLSAgICAgIEVuY29kZUZyYW1lUmVzdWx0IGVuY29kZV9mcmFtZV9yZXN1bHQ7Ci0g
ICAgICBzaW1wbGVfZW5jb2RlLkVuY29kZUZyYW1lKCZlbmNvZGVfZnJhbWVfcmVzdWx0KTsKLSAg
ICAgIHF1YW50aXplX2luZGV4X2xpc3QucHVzaF9iYWNrKGVuY29kZV9mcmFtZV9yZXN1bHQucXVh
bnRpemVfaW5kZXgpOwotICAgICAgcmVmX3NzZV9saXN0LnB1c2hfYmFjayhlbmNvZGVfZnJhbWVf
cmVzdWx0LnNzZSk7Ci0gICAgICByZWZfcHNucl9saXN0LnB1c2hfYmFjayhlbmNvZGVfZnJhbWVf
cmVzdWx0LnBzbnIpOwotICAgICAgcmVmX2JpdF9zaXplX2xpc3QucHVzaF9iYWNrKGVuY29kZV9m
cmFtZV9yZXN1bHQuY29kaW5nX2RhdGFfYml0X3NpemUpOwotICAgICAgaWYgKGVuY29kZV9mcmFt
ZV9yZXN1bHQuZnJhbWVfdHlwZSA9PSBrRnJhbWVUeXBlS2V5KSB7Ci0gICAgICAgIGV4dGVybmFs
X2FyZl9pbmRleGVzW2VuY29kZV9mcmFtZV9yZXN1bHQuc2hvd19pZHhdID0gMDsKLSAgICAgIH0g
ZWxzZSBpZiAoZW5jb2RlX2ZyYW1lX3Jlc3VsdC5mcmFtZV90eXBlID09IGtGcmFtZVR5cGVBbHRS
ZWYpIHsKLSAgICAgICAgZXh0ZXJuYWxfYXJmX2luZGV4ZXNbZW5jb2RlX2ZyYW1lX3Jlc3VsdC5z
aG93X2lkeF0gPSAxOwotICAgICAgfSBlbHNlIHsKLSAgICAgICAgLy8gVGhpcyBoYXMgdG8gYmUg
fD0gYmVjYXVzZSB3ZSBjYW4ndCBsZXQgb3ZlcmxheSBvdmVyd3JpdGVzIHRoZQotICAgICAgICAv
LyBhcmYgdHlwZSBmb3IgdGhlIHNhbWUgZnJhbWUuCi0gICAgICAgIGV4dGVybmFsX2FyZl9pbmRl
eGVzW2VuY29kZV9mcmFtZV9yZXN1bHQuc2hvd19pZHhdIHw9IDA7CisKKyAgICBpbnQgY29kZWRf
c2hvd19mcmFtZV9jb3VudCA9IDA7CisgICAgd2hpbGUgKGNvZGVkX3Nob3dfZnJhbWVfY291bnQg
PCBudW1fZnJhbWVzXykgeworICAgICAgY29uc3QgR3JvdXBPZlBpY3R1cmUgZ3JvdXBfb2ZfcGlj
dHVyZSA9CisgICAgICAgICAgc2ltcGxlX2VuY29kZS5PYnNlcnZlR3JvdXBPZlBpY3R1cmUoKTsK
KyAgICAgIGdvcF9tYXBbY29kZWRfc2hvd19mcmFtZV9jb3VudF0gfD0ga0dvcE1hcEZsYWdTdGFy
dDsKKyAgICAgIGlmIChncm91cF9vZl9waWN0dXJlLnVzZV9hbHRfcmVmKSB7CisgICAgICAgIGdv
cF9tYXBbY29kZWRfc2hvd19mcmFtZV9jb3VudF0gfD0ga0dvcE1hcEZsYWdVc2VBbHRSZWY7CiAg
ICAgICB9CisgICAgICBjb25zdCBzdGQ6OnZlY3RvcjxFbmNvZGVGcmFtZUluZm8+ICZlbmNvZGVf
ZnJhbWVfbGlzdCA9CisgICAgICAgICAgZ3JvdXBfb2ZfcGljdHVyZS5lbmNvZGVfZnJhbWVfbGlz
dDsKKyAgICAgIGZvciAoc2l6ZV90IGdyb3VwX2luZGV4ID0gMDsgZ3JvdXBfaW5kZXggPCBlbmNv
ZGVfZnJhbWVfbGlzdC5zaXplKCk7CisgICAgICAgICAgICsrZ3JvdXBfaW5kZXgpIHsKKyAgICAg
ICAgRW5jb2RlRnJhbWVSZXN1bHQgZW5jb2RlX2ZyYW1lX3Jlc3VsdDsKKyAgICAgICAgc2ltcGxl
X2VuY29kZS5FbmNvZGVGcmFtZSgmZW5jb2RlX2ZyYW1lX3Jlc3VsdCk7CisgICAgICAgIHF1YW50
aXplX2luZGV4X2xpc3QucHVzaF9iYWNrKGVuY29kZV9mcmFtZV9yZXN1bHQucXVhbnRpemVfaW5k
ZXgpOworICAgICAgICByZWZfc3NlX2xpc3QucHVzaF9iYWNrKGVuY29kZV9mcmFtZV9yZXN1bHQu
c3NlKTsKKyAgICAgICAgcmVmX3BzbnJfbGlzdC5wdXNoX2JhY2soZW5jb2RlX2ZyYW1lX3Jlc3Vs
dC5wc25yKTsKKyAgICAgICAgcmVmX2JpdF9zaXplX2xpc3QucHVzaF9iYWNrKGVuY29kZV9mcmFt
ZV9yZXN1bHQuY29kaW5nX2RhdGFfYml0X3NpemUpOworICAgICAgfQorICAgICAgY29kZWRfc2hv
d19mcmFtZV9jb3VudCArPSBncm91cF9vZl9waWN0dXJlLnNob3dfZnJhbWVfY291bnQ7CiAgICAg
fQogICAgIHNpbXBsZV9lbmNvZGUuRW5kRW5jb2RlKCk7CiAgIH0KICAgewogICAgIC8vIFRoZSBz
ZWNvbmQgZW5jb2RlIHdpdGggcXVhbnRpemUgaW5kZXggZ290IGZyb20gdGhlIGZpcnN0IGVuY29k
ZS4KICAgICAvLyBUaGUgZXh0ZXJuYWwgYXJmcyBhcmUgdGhlIHNhbWUgYXMgdGhlIGZpcnN0IGVu
Y29kZS4KLSAgICBTaW1wbGVFbmNvZGUgc2ltcGxlX2VuY29kZSh3LCBoLCBmcmFtZV9yYXRlX251
bSwgZnJhbWVfcmF0ZV9kZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0
X2JpdHJhdGUsIG51bV9mcmFtZXMsIGluZmlsZV9wYXRoKTsKKyAgICBTaW1wbGVFbmNvZGUgc2lt
cGxlX2VuY29kZSh3aWR0aF8sIGhlaWdodF8sIGZyYW1lX3JhdGVfbnVtXywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBmcmFtZV9yYXRlX2Rlbl8sIHRhcmdldF9iaXRyYXRlXywgbnVt
X2ZyYW1lc18sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5fZmlsZV9wYXRoX3N0
cl8uY19zdHIoKSk7CiAgICAgc2ltcGxlX2VuY29kZS5Db21wdXRlRmlyc3RQYXNzU3RhdHMoKTsK
LSAgICBzaW1wbGVfZW5jb2RlLlNldEV4dGVybmFsR3JvdXBPZlBpY3R1cmUoZXh0ZXJuYWxfYXJm
X2luZGV4ZXMpOworICAgIHNpbXBsZV9lbmNvZGUuU2V0RXh0ZXJuYWxHcm91cE9mUGljdHVyZXNN
YXAoZ29wX21hcC5kYXRhKCksIGdvcF9tYXAuc2l6ZSgpKTsKICAgICBjb25zdCBpbnQgbnVtX2Nv
ZGluZ19mcmFtZXMgPSBzaW1wbGVfZW5jb2RlLkdldENvZGluZ0ZyYW1lTnVtKCk7CiAgICAgRVhQ
RUNUX0VRKHN0YXRpY19jYXN0PHNpemVfdD4obnVtX2NvZGluZ19mcmFtZXMpLAogICAgICAgICAg
ICAgICBxdWFudGl6ZV9pbmRleF9saXN0LnNpemUoKSk7CkBAIC0zNDUsMTEgKzQ2Nyw4MCBAQCBU
RVNUKFNpbXBsZUVuY29kZSwgRW5jb2RlQ29uc2lzdGVuY3lUZXN0VXNlRXh0ZXJuYWxBcmZzKSB7
CiAgIH0KIH0KIAotVEVTVChTaW1wbGVFbmNvZGUsIEdldEVuY29kZUZyYW1lSW5mbykgeworVEVT
VF9GKFNpbXBsZUVuY29kZVRlc3QsIFNldEV4dGVybmFsR3JvdXBPZlBpY3R1cmVzTWFwKSB7Cisg
IFNpbXBsZUVuY29kZSBzaW1wbGVfZW5jb2RlKHdpZHRoXywgaGVpZ2h0XywgZnJhbWVfcmF0ZV9u
dW1fLCBmcmFtZV9yYXRlX2Rlbl8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdl
dF9iaXRyYXRlXywgbnVtX2ZyYW1lc18sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu
X2ZpbGVfcGF0aF9zdHJfLmNfc3RyKCkpOworICBzaW1wbGVfZW5jb2RlLkNvbXB1dGVGaXJzdFBh
c3NTdGF0cygpOworCisgIHN0ZDo6dmVjdG9yPGludD4gZ29wX21hcChudW1fZnJhbWVzXywgMCk7
CisKKyAgLy8gU2hvdWxkIGJlIHRoZSBmaXJzdCBnb3AgZ3JvdXAuCisgIGdvcF9tYXBbMF0gPSAw
OworCisgIC8vIFNlY29uZCBnb3AgZ3JvdXAgd2l0aCBhbiBhbHQgcmVmLgorICBnb3BfbWFwWzVd
IHw9IGtHb3BNYXBGbGFnU3RhcnQgfCBrR29wTWFwRmxhZ1VzZUFsdFJlZjsKKworICAvLyBUaGly
ZCBnb3AgZ3JvdXAgd2l0aG91dCBhbiBhbHQgcmVmLgorICBnb3BfbWFwWzEwXSB8PSBrR29wTWFw
RmxhZ1N0YXJ0OworCisgIC8vIExhc3QgZ29wIGdyb3VwLgorICBnb3BfbWFwWzE0XSB8PSBrR29w
TWFwRmxhZ1N0YXJ0IHwga0dvcE1hcEZsYWdVc2VBbHRSZWY7CisKKyAgc2ltcGxlX2VuY29kZS5T
ZXRFeHRlcm5hbEdyb3VwT2ZQaWN0dXJlc01hcChnb3BfbWFwLmRhdGEoKSwgZ29wX21hcC5zaXpl
KCkpOworCisgIHN0ZDo6dmVjdG9yPGludD4gb2JzZXJ2ZWRfZ29wX21hcCA9CisgICAgICBzaW1w
bGVfZW5jb2RlLk9ic2VydmVFeHRlcm5hbEdyb3VwT2ZQaWN0dXJlc01hcCgpOworCisgIC8vIEZp
cnN0IGdvcCBncm91cC4KKyAgLy8gVGhlcmUgaXMgYWx3YXlzIGEga2V5IGZyYW1lIGF0IHNob3df
aWR4IDAgYW5kIGtleSBmcmFtZSBzaG91bGQgYWx3YXlzIGJlCisgIC8vIHRoZSBzdGFydCBvZiBh
IGdvcC4gV2UgZXhwZWN0IE9ic2VydmVFeHRlcm5hbEdyb3VwT2ZQaWN0dXJlc01hcCgpIHdpbGwK
KyAgLy8gaW5zZXJ0IGFuIGV4dHJhIGdvcCBzdGFydCBoZXJlLgorICBFWFBFQ1RfRVEob2JzZXJ2
ZWRfZ29wX21hcFswXSwga0dvcE1hcEZsYWdTdGFydCB8IGtHb3BNYXBGbGFnVXNlQWx0UmVmKTsK
KworICAvLyBTZWNvbmQgZ29wIGdyb3VwIHdpdGggYW4gYWx0IHJlZi4KKyAgRVhQRUNUX0VRKG9i
c2VydmVkX2dvcF9tYXBbNV0sIGtHb3BNYXBGbGFnU3RhcnQgfCBrR29wTWFwRmxhZ1VzZUFsdFJl
Zik7CisKKyAgLy8gVGhpcmQgZ29wIGdyb3VwIHdpdGhvdXQgYW4gYWx0IHJlZi4KKyAgRVhQRUNU
X0VRKG9ic2VydmVkX2dvcF9tYXBbMTBdLCBrR29wTWFwRmxhZ1N0YXJ0KTsKKworICAvLyBMYXN0
IGdvcCBncm91cC4gVGhlIGxhc3QgZ29wIGlzIG5vdCBzdXBwb3NlZCB0byB1c2UgYW4gYWx0IHJl
Zi4gV2UgZXhwZWN0CisgIC8vIE9ic2VydmVFeHRlcm5hbEdyb3VwT2ZQaWN0dXJlc01hcCgpIHdp
bGwgcmVtb3ZlIHRoZSBhbHQgcmVmIGZsYWcgaGVyZS4KKyAgRVhQRUNUX0VRKG9ic2VydmVkX2dv
cF9tYXBbMTRdLCBrR29wTWFwRmxhZ1N0YXJ0KTsKKworICBpbnQgcmVmX2dvcF9zaG93X2ZyYW1l
X2NvdW50X2xpc3RbNF0gPSB7IDUsIDUsIDQsIDMgfTsKKyAgc2l6ZV90IHJlZl9nb3BfY29kZWRf
ZnJhbWVfY291bnRfbGlzdFs0XSA9IHsgNiwgNiwgNCwgMyB9OworICBpbnQgZ29wX2NvdW50ID0g
MDsKKworICBzaW1wbGVfZW5jb2RlLlN0YXJ0RW5jb2RlKCk7CisgIGludCBjb2RlZF9zaG93X2Zy
YW1lX2NvdW50ID0gMDsKKyAgd2hpbGUgKGNvZGVkX3Nob3dfZnJhbWVfY291bnQgPCBudW1fZnJh
bWVzXykgeworICAgIGNvbnN0IEdyb3VwT2ZQaWN0dXJlIGdyb3VwX29mX3BpY3R1cmUgPQorICAg
ICAgICBzaW1wbGVfZW5jb2RlLk9ic2VydmVHcm91cE9mUGljdHVyZSgpOworICAgIGNvbnN0IHN0
ZDo6dmVjdG9yPEVuY29kZUZyYW1lSW5mbz4gJmVuY29kZV9mcmFtZV9saXN0ID0KKyAgICAgICAg
Z3JvdXBfb2ZfcGljdHVyZS5lbmNvZGVfZnJhbWVfbGlzdDsKKyAgICBFWFBFQ1RfRVEoZW5jb2Rl
X2ZyYW1lX2xpc3Quc2l6ZSgpLAorICAgICAgICAgICAgICByZWZfZ29wX2NvZGVkX2ZyYW1lX2Nv
dW50X2xpc3RbZ29wX2NvdW50XSk7CisgICAgRVhQRUNUX0VRKGdyb3VwX29mX3BpY3R1cmUuc2hv
d19mcmFtZV9jb3VudCwKKyAgICAgICAgICAgICAgcmVmX2dvcF9zaG93X2ZyYW1lX2NvdW50X2xp
c3RbZ29wX2NvdW50XSk7CisgICAgZm9yIChzaXplX3QgZ3JvdXBfaW5kZXggPSAwOyBncm91cF9p
bmRleCA8IGVuY29kZV9mcmFtZV9saXN0LnNpemUoKTsKKyAgICAgICAgICsrZ3JvdXBfaW5kZXgp
IHsKKyAgICAgIEVuY29kZUZyYW1lUmVzdWx0IGVuY29kZV9mcmFtZV9yZXN1bHQ7CisgICAgICBz
aW1wbGVfZW5jb2RlLkVuY29kZUZyYW1lKCZlbmNvZGVfZnJhbWVfcmVzdWx0KTsKKyAgICB9Cisg
ICAgY29kZWRfc2hvd19mcmFtZV9jb3VudCArPSBncm91cF9vZl9waWN0dXJlLnNob3dfZnJhbWVf
Y291bnQ7CisgICAgKytnb3BfY291bnQ7CisgIH0KKyAgRVhQRUNUX0VRKGdvcF9jb3VudCwgNCk7
CisgIHNpbXBsZV9lbmNvZGUuRW5kRW5jb2RlKCk7Cit9CisKK1RFU1RfRihTaW1wbGVFbmNvZGVU
ZXN0LCBHZXRFbmNvZGVGcmFtZUluZm8pIHsKICAgLy8gTWFrZXMgc3VyZSB0aGF0IHRoZSBlbmNv
ZGVfZnJhbWVfaW5mbyBvYnRhaW5lZCBmcm9tIEdldEVuY29kZUZyYW1lSW5mbygpCiAgIC8vIG1h
dGNoZXMgdGhlIGNvdW50ZXJwYXJ0IGluIGVuY29kZV9mcmFtZV9yZXN1bHQgb2J0YWluZWQgZnJv
bSBFbmNvZGVGcmFtZSgpCi0gIFNpbXBsZUVuY29kZSBzaW1wbGVfZW5jb2RlKHcsIGgsIGZyYW1l
X3JhdGVfbnVtLCBmcmFtZV9yYXRlX2RlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dGFyZ2V0X2JpdHJhdGUsIG51bV9mcmFtZXMsIGluZmlsZV9wYXRoKTsKKyAgU2ltcGxlRW5jb2Rl
IHNpbXBsZV9lbmNvZGUod2lkdGhfLCBoZWlnaHRfLCBmcmFtZV9yYXRlX251bV8sIGZyYW1lX3Jh
dGVfZGVuXywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2JpdHJhdGVfLCBu
dW1fZnJhbWVzXywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5fZmlsZV9wYXRoX3N0
cl8uY19zdHIoKSk7CiAgIHNpbXBsZV9lbmNvZGUuQ29tcHV0ZUZpcnN0UGFzc1N0YXRzKCk7CiAg
IGNvbnN0IGludCBudW1fY29kaW5nX2ZyYW1lcyA9IHNpbXBsZV9lbmNvZGUuR2V0Q29kaW5nRnJh
bWVOdW0oKTsKICAgc2ltcGxlX2VuY29kZS5TdGFydEVuY29kZSgpOwpAQCAtMzYzLDEyICs1NTQs
MTggQEAgVEVTVChTaW1wbGVFbmNvZGUsIEdldEVuY29kZUZyYW1lSW5mbykgewogICBzaW1wbGVf
ZW5jb2RlLkVuZEVuY29kZSgpOwogfQogCi1URVNUKFNpbXBsZUVuY29kZSwgR2V0RnJhbWVQaXhl
bENvdW50KSB7Ci0gIFNpbXBsZUVuY29kZSBzaW1wbGVfZW5jb2RlKHcsIGgsIGZyYW1lX3JhdGVf
bnVtLCBmcmFtZV9yYXRlX2RlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0
X2JpdHJhdGUsIG51bV9mcmFtZXMsIGluZmlsZV9wYXRoKTsKK1RFU1RfRihTaW1wbGVFbmNvZGVU
ZXN0LCBHZXRGcmFtZVBpeGVsQ291bnQpIHsKKyAgU2ltcGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUo
d2lkdGhfLCBoZWlnaHRfLCBmcmFtZV9yYXRlX251bV8sIGZyYW1lX3JhdGVfZGVuXywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2JpdHJhdGVfLCBudW1fZnJhbWVzXywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5fZmlsZV9wYXRoX3N0cl8uY19zdHIoKSk7CiAg
IEVYUEVDVF9FUShzaW1wbGVfZW5jb2RlLkdldEZyYW1lUGl4ZWxDb3VudCgpLAotICAgICAgICAg
ICAgc3RhdGljX2Nhc3Q8dWludDY0X3Q+KHcgKiBoICogMyAvIDIpKTsKKyAgICAgICAgICAgIHN0
YXRpY19jYXN0PHVpbnQ2NF90Pih3aWR0aF8gKiBoZWlnaHRfICogMyAvIDIpKTsKIH0KIAogfSAg
Ly8gbmFtZXNwYWNlCiB9ICAvLyBuYW1lc3BhY2UgdnA5CisKK2ludCBtYWluKGludCBhcmdjLCBj
aGFyICoqYXJndikgeworICA6OnRlc3Rpbmc6OkluaXRHb29nbGVUZXN0KCZhcmdjLCBhcmd2KTsK
KyAgcmV0dXJuIFJVTl9BTExfVEVTVFMoKTsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVz
dC9zaW1wbGVfZW5jb2Rlci5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zaW1wbGVfZW5jb2Rlci5zaApp
bmRleCBlZTYzM2FlOTllODA2Mzc2ODI0YWVmYjNkZTA1ZWU0OTc2MDYyYWRmLi5kYzdmNDZmZjM4
YzRkMTg4ZGMzZmJhNGU5MTVkMmMxMjQ0OTFmMDFmIDEwMDc1NQotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rl
c3Qvc2ltcGxlX2VuY29kZXIuc2gKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3NpbXBsZV9lbmNvZGVy
LnNoCkBAIC0zNiw3ICszNiw3IEBAIHNpbXBsZV9lbmNvZGVyKCkgewogCiAgIGV2YWwgIiR7VlBY
X1RFU1RfUFJFRklYfSIgIiR7ZW5jb2Rlcn0iICIke2NvZGVjfSIgIiR7WVVWX1JBV19JTlBVVF9X
SURUSH0iIFwKICAgICAgICIke1lVVl9SQVdfSU5QVVRfSEVJR0hUfSIgIiR7WVVWX1JBV19JTlBV
VH0iICIke291dHB1dF9maWxlfSIgOTk5OSAwIDEwMCBcCi0gICAgICAke2Rldm51bGx9CisgICAg
ICAke2Rldm51bGx9IHx8IHJldHVybiAxCiAKICAgWyAtZSAiJHtvdXRwdXRfZmlsZX0iIF0gfHwg
cmV0dXJuIDEKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zdHJlc3Muc2ggYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3Rlc3Qvc3RyZXNzLnNoCmluZGV4IGZkZWM3NjRjN2FlZmM3NDk3NDE4Mjk0NjRjMGE5
ZDBiMzk2ODVjMjQuLmJhNzlhNTJhYzNjZjU4ZGI4MjU5YzQ2Yjk1ZjQwNjQ0YzFhY2M5MDIgMTAw
NzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zdHJlc3Muc2gKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0
L3N0cmVzcy5zaApAQCAtMTgsNyArMTgsNyBAQAogWVVWPSIke0xJQlZQWF9URVNUX0RBVEFfUEFU
SH0vbmlrbGFzXzEyODBfNzIwXzMwLnl1diIKIFZQOD0iJHtMSUJWUFhfVEVTVF9EQVRBX1BBVEh9
L3Rvc192cDgud2VibSIKIFZQOT0iJHtMSUJWUFhfVEVTVF9EQVRBX1BBVEh9L3ZwOTAtMi1zaW50
ZWxfMTkyMHg4MThfdGlsZV8xeDRfZnBtXzIyNzlrYnBzLndlYm0iCi1EQVRBX1VSTD0iaHR0cDov
L2Rvd25sb2Fkcy53ZWJtcHJvamVjdC5vcmcvdGVzdF9kYXRhL2xpYnZweC8iCitEQVRBX1VSTD0i
aHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2Rvd25sb2Fkcy53ZWJtcHJvamVjdC5vcmcv
dGVzdF9kYXRhL2xpYnZweC8iCiBTSEExX0ZJTEU9IiQoZGlybmFtZSAkMCkvdGVzdC1kYXRhLnNo
YTEiCiAKICMgU2V0IHNoYTFzdW0gdG8gcHJvcGVyIHNoYSBwcm9ncmFtIChzaGExc3VtLCBzaGFz
dW0sIHNoYTEpLiBUaGlzIGNvZGUgaXMKQEAgLTUyLDcgKzUyLDcgQEAgc3RyZXNzX3ZlcmlmeV9l
bnZpcm9ubWVudCgpIHsKICAgZmkKICAgZm9yIGZpbGUgaW4gIiR7WVVWfSIgIiR7VlA4fSIgIiR7
VlA5fSI7IGRvCiAgICAgaWYgWyAhIC1lICIke2ZpbGV9IiBdIDsgdGhlbgotICAgICAgZG93bmxv
YWRfYW5kX2NoZWNrX2ZpbGUgIiR7ZmlsZX0iCisgICAgICBkb3dubG9hZF9hbmRfY2hlY2tfZmls
ZSAiJHtmaWxlfSIgfHwgcmV0dXJuIDEKICAgICBmaQogICBkb25lCiAgIGlmIFsgISAtZSAiJHtZ
VVZ9IiBdIHx8IFsgISAtZSAiJHtWUDh9IiBdIHx8IFsgISAtZSAiJHtWUDl9IiBdIDsgdGhlbgpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3N1bV9zcXVhcmVzX3Rlc3QuY2MgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rlc3Qvc3VtX3NxdWFyZXNfdGVzdC5jYwppbmRleCBkMmM3MGY0ZDRiNGQzZjkxZmY3ODgy
ZmNhMThhNDNkYzUyNzY5YWRhLi5kZjZkYTg0MDM3NmNjZTU3OWVhNWZjMDVkZjQ2ZTIwYTJlMTk3
YmU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvc3VtX3NxdWFyZXNfdGVzdC5jYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rlc3Qvc3VtX3NxdWFyZXNfdGVzdC5jYwpAQCAtNDUsNiArNDUsNyBAQCBj
bGFzcyBTdW1TcXVhcmVzVGVzdCA6IHB1YmxpYyA6OnRlc3Rpbmc6OlRlc3RXaXRoUGFyYW08U3Vt
U3F1YXJlc1BhcmFtPiB7CiAgIFNTSTE2RnVuYyByZWZfZnVuY187CiAgIFNTSTE2RnVuYyB0c3Rf
ZnVuY187CiB9OworR1RFU1RfQUxMT1dfVU5JTlNUQU5USUFURURfUEFSQU1FVEVSSVpFRF9URVNU
KFN1bVNxdWFyZXNUZXN0KTsKIAogVEVTVF9QKFN1bVNxdWFyZXNUZXN0LCBPcGVyYXRpb25DaGVj
aykgewogICBBQ01SYW5kb20gcm5kKEFDTVJhbmRvbTo6RGV0ZXJtaW5pc3RpY1NlZWQoKSk7CkBA
IC0xMDYsMjEgKzEwNywyMSBAQCBURVNUX1AoU3VtU3F1YXJlc1Rlc3QsIEV4dHJlbWVWYWx1ZXMp
IHsKIHVzaW5nIHN0ZDo6bWFrZV90dXBsZTsKIAogI2lmIEhBVkVfTkVPTgotSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTkVPTiwgU3VtU3F1
YXJlc1Rlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X3N1bV9zcXVh
cmVzXzJkX2kxNl9jLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9zdW1f
c3F1YXJlc18yZF9pMTZfbmVvbikpKTsKICNlbmRpZiAgLy8gSEFWRV9ORU9OCiAKICNpZiBIQVZF
X1NTRTIKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9Q
KAogICAgIFNTRTIsIFN1bVNxdWFyZXNUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2Vf
dHVwbGUoJnZweF9zdW1fc3F1YXJlc18yZF9pMTZfYywKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICZ2cHhfc3VtX3NxdWFyZXNfMmRfaTE2X3NzZTIpKSk7CiAjZW5kaWYgIC8vIEhB
VkVfU1NFMgogCiAjaWYgSEFWRV9NU0EKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QKAogICAgIE1TQSwgU3VtU3F1YXJlc1Rlc3QsCiAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X3N1bV9zcXVhcmVzXzJkX2kxNl9jLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9zdW1fc3F1YXJlc18yZF9pMTZfbXNhKSkp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3N1cGVyZnJhbWVfdGVzdC5jYyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdGVzdC9zdXBlcmZyYW1lX3Rlc3QuY2MKaW5kZXggOGM4ZDFhZTI5MDRmZTM5NGQ3MTEw
MzBjYjkwNTFhODY3OTQ2MzI0ZS4uYTVjOTJlOTE0N2JjNzc4OTRjOTkzNGEzZGZkNTNhNWQxZmY2
ZDVhOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3N1cGVyZnJhbWVfdGVzdC5jYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rlc3Qvc3VwZXJmcmFtZV90ZXN0LmNjCkBAIC0yNyw3ICsyNyw3IEBAIGNs
YXNzIFN1cGVyZnJhbWVUZXN0CiAgICAgICBwdWJsaWMgOjpsaWJ2cHhfdGVzdDo6Q29kZWNUZXN0
V2l0aFBhcmFtPFN1cGVyZnJhbWVUZXN0UGFyYW0+IHsKICBwcm90ZWN0ZWQ6CiAgIFN1cGVyZnJh
bWVUZXN0KCkKLSAgICAgIDogRW5jb2RlclRlc3QoR0VUX1BBUkFNKDApKSwgbW9kaWZpZWRfYnVm
XyhOVUxMKSwgbGFzdF9zZl9wdHNfKDApIHt9CisgICAgICA6IEVuY29kZXJUZXN0KEdFVF9QQVJB
TSgwKSksIG1vZGlmaWVkX2J1Zl8obnVsbHB0ciksIGxhc3Rfc2ZfcHRzXygwKSB7fQogICB2aXJ0
dWFsIH5TdXBlcmZyYW1lVGVzdCgpIHt9CiAKICAgdmlydHVhbCB2b2lkIFNldFVwKCkgewpAQCAt
OTUsNyArOTUsNyBAQCBURVNUX1AoU3VwZXJmcmFtZVRlc3QsIFRlc3RTdXBlcmZyYW1lSW5kZXhJ
c09wdGlvbmFsKSB7CiAgIEVYUEVDVF9FUShzZl9jb3VudF8sIDEpOwogfQogCi1WUDlfSU5TVEFO
VElBVEVfVEVTVF9DQVNFKAorVlA5X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUoCiAgICAgU3VwZXJm
cmFtZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpDb21iaW5lKDo6dGVzdGluZzo6VmFsdWVzKDo6bGli
dnB4X3Rlc3Q6OmtUd29QYXNzR29vZCksCiAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGlu
Zzo6VmFsdWVzKDApKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvc3ZjX2RhdGFyYXRl
X3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvc3ZjX2RhdGFyYXRlX3Rlc3QuY2MKaW5kZXggZjk5
NWU0YzA4YWQ2NDczZmFmMmQxMWI3NzIxOTRjMDYwNGY4MmM0YS4uMGE3ZDAwMzJjMTQyYmEwMjQx
YWE3YWIwZDY0MzU5MWY5NmY3OWM3OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3N2Y19k
YXRhcmF0ZV90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zdmNfZGF0YXJhdGVfdGVzdC5j
YwpAQCAtMzM3LDcgKzMzNyw3IEBAIGNsYXNzIERhdGFyYXRlT25lUGFzc0NiclN2YyA6IHB1Ymxp
YyBPbmVQYXNzQ2JyU3ZjIHsKICAgICB9IGVsc2UgaWYgKGR5bmFtaWNfZHJvcF9sYXllcl8gJiYg
c2luZ2xlX2xheWVyX3Jlc2l6ZV8pIHsKICAgICAgIC8vIENoYW5nZSBsYXllciBiaXRyYXRlcyB0
byBzZXQgdG9wIGxheWVycyB0byAwLiBUaGlzIHdpbGwgdHJpZ2dlciBza2lwCiAgICAgICAvLyBl
bmNvZGluZy9kcm9wcGluZyBvZiB0b3Agc3BhdGlhbCBsYXllcnMuCi0gICAgICBpZiAodmlkZW8t
PmZyYW1lKCkgPT0gMTApIHsKKyAgICAgIGlmICh2aWRlby0+ZnJhbWUoKSA9PSAyKSB7CiAgICAg
ICAgIGNmZ18ucmNfdGFyZ2V0X2JpdHJhdGUgLT0KICAgICAgICAgICAgIChjZmdfLmxheWVyX3Rh
cmdldF9iaXRyYXRlWzFdICsgY2ZnXy5sYXllcl90YXJnZXRfYml0cmF0ZVsyXSk7CiAgICAgICAg
IG1pZGRsZV9iaXRyYXRlXyA9IGNmZ18ubGF5ZXJfdGFyZ2V0X2JpdHJhdGVbMV07CkBAIC0zNDgs
MTIgKzM0OCwyNiBAQCBjbGFzcyBEYXRhcmF0ZU9uZVBhc3NDYnJTdmMgOiBwdWJsaWMgT25lUGFz
c0NiclN2YyB7CiAgICAgICAgIGNmZ18ubGF5ZXJfdGFyZ2V0X2JpdHJhdGVbMF0gPSAzMDsKICAg
ICAgICAgY2ZnXy5yY190YXJnZXRfYml0cmF0ZSA9IGNmZ18ubGF5ZXJfdGFyZ2V0X2JpdHJhdGVb
MF07CiAgICAgICAgIGVuY29kZXItPkNvbmZpZygmY2ZnXyk7Ci0gICAgICB9IGVsc2UgaWYgKHZp
ZGVvLT5mcmFtZSgpID09IDMwMCkgeworICAgICAgfSBlbHNlIGlmICh2aWRlby0+ZnJhbWUoKSA9
PSAxMDApIHsKICAgICAgICAgLy8gU2V0IGJhc2Ugc3BhdGlhbCBsYXllciB0byB2ZXJ5IGhpZ2gg
dG8gZ28gYmFjayB1cCB0byBvcmlnaW5hbCBzaXplLgotICAgICAgICBjZmdfLmxheWVyX3Rhcmdl
dF9iaXRyYXRlWzBdID0gMzAwOworICAgICAgICBjZmdfLmxheWVyX3RhcmdldF9iaXRyYXRlWzBd
ID0gNDAwOwogICAgICAgICBjZmdfLnJjX3RhcmdldF9iaXRyYXRlID0gY2ZnXy5sYXllcl90YXJn
ZXRfYml0cmF0ZVswXTsKICAgICAgICAgZW5jb2Rlci0+Q29uZmlnKCZjZmdfKTsKICAgICAgIH0K
KyAgICB9IGVsc2UgaWYgKCFkeW5hbWljX2Ryb3BfbGF5ZXJfICYmIHNpbmdsZV9sYXllcl9yZXNp
emVfKSB7CisgICAgICBpZiAodmlkZW8tPmZyYW1lKCkgPT0gMikgeworICAgICAgICBjZmdfLmxh
eWVyX3RhcmdldF9iaXRyYXRlWzBdID0gMzA7CisgICAgICAgIGNmZ18ubGF5ZXJfdGFyZ2V0X2Jp
dHJhdGVbMV0gPSA1MDsKKyAgICAgICAgY2ZnXy5yY190YXJnZXRfYml0cmF0ZSA9CisgICAgICAg
ICAgICAoY2ZnXy5sYXllcl90YXJnZXRfYml0cmF0ZVswXSArIGNmZ18ubGF5ZXJfdGFyZ2V0X2Jp
dHJhdGVbMV0pOworICAgICAgICBlbmNvZGVyLT5Db25maWcoJmNmZ18pOworICAgICAgfSBlbHNl
IGlmICh2aWRlby0+ZnJhbWUoKSA9PSAxNjApIHsKKyAgICAgICAgY2ZnXy5sYXllcl90YXJnZXRf
Yml0cmF0ZVswXSA9IDE1MDA7CisgICAgICAgIGNmZ18ubGF5ZXJfdGFyZ2V0X2JpdHJhdGVbMV0g
PSAyMDAwOworICAgICAgICBjZmdfLnJjX3RhcmdldF9iaXRyYXRlID0KKyAgICAgICAgICAgIChj
ZmdfLmxheWVyX3RhcmdldF9iaXRyYXRlWzBdICsgY2ZnXy5sYXllcl90YXJnZXRfYml0cmF0ZVsx
XSk7CisgICAgICAgIGVuY29kZXItPkNvbmZpZygmY2ZnXyk7CisgICAgICB9CiAgICAgfQogICAg
IGlmIChmb3JjZV9rZXlfdGVzdF8gJiYgZm9yY2Vfa2V5XykgZnJhbWVfZmxhZ3NfID0gVlBYX0VG
TEFHX0ZPUkNFX0tGOwogCkBAIC00NTIsMTAgKzQ2NiwxMiBAQCBjbGFzcyBEYXRhcmF0ZU9uZVBh
c3NDYnJTdmMgOiBwdWJsaWMgT25lUGFzc0NiclN2YyB7CiAgICAgcGFyc2Vfc3VwZXJmcmFtZV9p
bmRleChzdGF0aWNfY2FzdDxjb25zdCB1aW50OF90ICo+KHBrdC0+ZGF0YS5mcmFtZS5idWYpLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcGt0LT5kYXRhLmZyYW1lLnN6LCBzaXplc19wYXJz
ZWQsICZjb3VudCk7CiAgICAgLy8gQ291bnQgbWF5IGJlIGxlc3MgdGhhbiBudW1iZXIgb2Ygc3Bh
dGlhbCBsYXllcnMgYmVjYXVzZSBvZiBmcmFtZSBkcm9wcy4KLSAgICBmb3IgKGludCBzbCA9IDA7
IHNsIDwgbnVtYmVyX3NwYXRpYWxfbGF5ZXJzXzsgKytzbCkgewotICAgICAgaWYgKHBrdC0+ZGF0
YS5mcmFtZS5zcGF0aWFsX2xheWVyX2VuY29kZWRbc2xdKSB7Ci0gICAgICAgIHNpemVzW3NsXSA9
IHNpemVzX3BhcnNlZFtudW1fbGF5ZXJzX2VuY29kZWRdOwotICAgICAgICBudW1fbGF5ZXJzX2Vu
Y29kZWQrKzsKKyAgICBpZiAobnVtYmVyX3NwYXRpYWxfbGF5ZXJzXyA+IDEpIHsKKyAgICAgIGZv
ciAoaW50IHNsID0gMDsgc2wgPCBudW1iZXJfc3BhdGlhbF9sYXllcnNfOyArK3NsKSB7CisgICAg
ICAgIGlmIChwa3QtPmRhdGEuZnJhbWUuc3BhdGlhbF9sYXllcl9lbmNvZGVkW3NsXSkgeworICAg
ICAgICAgIHNpemVzW3NsXSA9IHNpemVzX3BhcnNlZFtudW1fbGF5ZXJzX2VuY29kZWRdOworICAg
ICAgICAgIG51bV9sYXllcnNfZW5jb2RlZCsrOworICAgICAgICB9CiAgICAgICB9CiAgICAgfQog
ICAgIC8vIEZvciBzdXBlcmZyYW1lIHdpdGggSW50cmEtb25seSBjb3VudCB3aWxsIGJlICsxIGxh
cmdlcgpAQCAtODM4LDcgKzg1NCw3IEBAIFRFU1RfUChEYXRhcmF0ZU9uZVBhc3NDYnJTdmNTaW5n
bGVCUiwgT25lUGFzc0NiclN2YzNTTF9EaXNhYmxlRW5hYmxlTGF5ZXJzKSB7CiAvLyB0aGUgZmx5
IHN3aXRjaGluZyB0byAxIHNwYXRpYWwgbGF5ZXIgd2l0aCBkeW5hbWljIHJlc2l6ZSBlbmFibGVk
LgogLy8gVGhlIHJlc2l6ZXIgd2lsbCByZXNpemUgdGhlIHNpbmdsZSBsYXllciBkb3duIGFuZCBi
YWNrIHVwIGFnYWluLCBhcyB0aGUKIC8vIGJpdHJhdGUgZ29lcyBiYWNrIHVwLgotVEVTVF9QKERh
dGFyYXRlT25lUGFzc0NiclN2Y1NpbmdsZUJSLCBPbmVQYXNzQ2JyU3ZjM1NMX1NpbmdsZUxheWVy
UmVzaXplKSB7CitURVNUX1AoRGF0YXJhdGVPbmVQYXNzQ2JyU3ZjU2luZ2xlQlIsIE9uZVBhc3ND
YnJTdmMyU0xfU2luZ2xlTGF5ZXJSZXNpemUpIHsKICAgU2V0U3ZjQ29uZmlnKDIsIDEpOwogICBj
ZmdfLnJjX2J1Zl9pbml0aWFsX3N6ID0gNTAwOwogICBjZmdfLnJjX2J1Zl9vcHRpbWFsX3N6ID0g
NTAwOwpAQCAtODUwLDEwICs4NjYsMTAgQEAgVEVTVF9QKERhdGFyYXRlT25lUGFzc0NiclN2Y1Np
bmdsZUJSLCBPbmVQYXNzQ2JyU3ZjM1NMX1NpbmdsZUxheWVyUmVzaXplKSB7CiAgIGNmZ18ucmNf
ZHJvcGZyYW1lX3RocmVzaCA9IDMwOwogICBjZmdfLmtmX21heF9kaXN0ID0gOTk5OTsKICAgY2Zn
Xy5yY19yZXNpemVfYWxsb3dlZCA9IDE7Ci0gIDo6bGlidnB4X3Rlc3Q6Okk0MjBWaWRlb1NvdXJj
ZSB2aWRlbygibmlrbGFzXzY0MF80ODBfMzAueXV2IiwgNjQwLCA0ODAsIDMwLCAxLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgNDAwKTsKLSAgdG9wX3NsX3dpZHRo
XyA9IDY0MDsKLSAgdG9wX3NsX2hlaWdodF8gPSA0ODA7CisgIDo6bGlidnB4X3Rlc3Q6Okk0MjBW
aWRlb1NvdXJjZSB2aWRlbygiZGVza3RvcF9vZmZpY2UxLjEyODBfNzIwLTAyMC55dXYiLCAxMjgw
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNzIwLCAxNSwgMSwgMCwg
MzAwKTsKKyAgdG9wX3NsX3dpZHRoXyA9IDEyODA7CisgIHRvcF9zbF9oZWlnaHRfID0gNzIwOwog
ICBjZmdfLnJjX3RhcmdldF9iaXRyYXRlID0gODAwOwogICBSZXNldE1vZGVsKCk7CiAgIGR5bmFt
aWNfZHJvcF9sYXllcl8gPSB0cnVlOwpAQCAtODc1LDYgKzg5MSwzOCBAQCBURVNUX1AoRGF0YXJh
dGVPbmVQYXNzQ2JyU3ZjU2luZ2xlQlIsIE9uZVBhc3NDYnJTdmMzU0xfU2luZ2xlTGF5ZXJSZXNp
emUpIHsKICNlbmRpZgogfQogCisvLyBGb3IgIHBhc3MgQ0JSIFNWQyB3aXRoIDEgc3BhdGlhbCBh
bmQgMiB0ZW1wb3JhbCBsYXllcnMgd2l0aCBkeW5hbWljIHJlc2l6ZQorLy8gYW5kIGRlbm9pc2Vy
IGVuYWJsZWQuIFRoZSByZXNpemVyIHdpbGwgcmVzaXplIHRoZSBzaW5nbGUgbGF5ZXIgZG93biBh
bmQgYmFjaworLy8gdXAgYWdhaW4sIGFzIHRoZSBiaXRyYXRlIGdvZXMgYmFjayB1cC4KK1RFU1Rf
UChEYXRhcmF0ZU9uZVBhc3NDYnJTdmNTaW5nbGVCUiwgT25lUGFzc0NiclN2YzFTTDJUTF9EZW5v
aXNlUmVzaXplKSB7CisgIFNldFN2Y0NvbmZpZygxLCAyKTsKKyAgY2ZnXy5yY19idWZfaW5pdGlh
bF9zeiA9IDUwMDsKKyAgY2ZnXy5yY19idWZfb3B0aW1hbF9zeiA9IDUwMDsKKyAgY2ZnXy5yY19i
dWZfc3ogPSAxMDAwOworICBjZmdfLnJjX21pbl9xdWFudGl6ZXIgPSAwOworICBjZmdfLnJjX21h
eF9xdWFudGl6ZXIgPSA2MzsKKyAgY2ZnXy5nX3RocmVhZHMgPSAxOworICBjZmdfLnRlbXBvcmFs
X2xheWVyaW5nX21vZGUgPSAyOworICBjZmdfLnJjX2Ryb3BmcmFtZV90aHJlc2ggPSAzMDsKKyAg
Y2ZnXy5rZl9tYXhfZGlzdCA9IDk5OTk7CisgIGNmZ18ucmNfcmVzaXplX2FsbG93ZWQgPSAxOwor
ICA6OmxpYnZweF90ZXN0OjpJNDIwVmlkZW9Tb3VyY2UgdmlkZW8oImRlc2t0b3Bfb2ZmaWNlMS4x
MjgwXzcyMC0wMjAueXV2IiwgMTI4MCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDcyMCwgMTIsIDEsIDAsIDMwMCk7CisgIHRvcF9zbF93aWR0aF8gPSAxMjgwOworICB0
b3Bfc2xfaGVpZ2h0XyA9IDcyMDsKKyAgY2ZnXy5yY190YXJnZXRfYml0cmF0ZSA9IDgwMDsKKyAg
UmVzZXRNb2RlbCgpOworICBkeW5hbWljX2Ryb3BfbGF5ZXJfID0gZmFsc2U7CisgIHNpbmdsZV9s
YXllcl9yZXNpemVfID0gdHJ1ZTsKKyAgZGVub2lzZXJfb25fID0gMTsKKyAgYmFzZV9zcGVlZF9z
ZXR0aW5nXyA9IHNwZWVkX3NldHRpbmdfOworICBBc3NpZ25MYXllckJpdHJhdGVzKCk7CisgIEFT
U0VSVF9OT19GQVRBTF9GQUlMVVJFKFJ1bkxvb3AoJnZpZGVvKSk7CisgIC8vIEV4cGVjdCBhdCBs
ZWFzdCBvbmUgcmVzaXplIGRvd24gYW5kIGF0IGxlYXN0IG9uZSByZXNpemUgYmFjayB1cC4KKyAg
RVhQRUNUX0dFKG51bV9yZXNpemVfZG93bl8sIDEpOworICBFWFBFQ1RfR0UobnVtX3Jlc2l6ZV91
cF8sIDEpOworfQorCiAvLyBSdW4gU1ZDIGVuY29kZXIgZm9yIDEgdGVtcG9yYWwgbGF5ZXIsIDIg
c3BhdGlhbCBsYXllcnMsIHdpdGggc3BhdGlhbAogLy8gZG93bnNjYWxlIDV4NS4KIFRFU1RfUChE
YXRhcmF0ZU9uZVBhc3NDYnJTdmNTaW5nbGVCUiwgT25lUGFzc0NiclN2YzJTTDFUTDV4NU11bHRp
cGxlUnVucykgewpAQCAtMTQ4MSwyOSArMTUyOSwyOSBAQCBURVNUX1AoRGF0YXJhdGVPbmVQYXNz
Q2JyU3ZjUG9zdGVuY29kZURyb3AsIE9uZVBhc3NDYnJTdmMyUUwxVExTY3JlZW4pIHsKICNlbmRp
ZgogfQogCi1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKERhdGFyYXRlT25lUGFzc0NiclN2Y1Np
bmdsZUJSLAotICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDUsIDEw
KSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURShEYXRhcmF0ZU9uZVBhc3NDYnJTdmNTaW5n
bGVCUiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoNSwgMTAp
KTsKIAotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShEYXRhcmF0ZU9uZVBhc3NDYnJTdmNQb3N0
ZW5jb2RlRHJvcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSg1
LCA2KSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURShEYXRhcmF0ZU9uZVBhc3NDYnJTdmNQ
b3N0ZW5jb2RlRHJvcCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6UmFu
Z2UoNSwgNikpOwogCi1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKERhdGFyYXRlT25lUGFzc0Ni
clN2Y0ludGVyTGF5ZXJQcmVkU2luZ2xlQlIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6
dGVzdGluZzo6UmFuZ2UoNSwgMTApLCA6OnRlc3Rpbmc6OlJhbmdlKDAsIDMpKTsKK1ZQOV9JTlNU
QU5USUFURV9URVNUX1NVSVRFKERhdGFyYXRlT25lUGFzc0NiclN2Y0ludGVyTGF5ZXJQcmVkU2lu
Z2xlQlIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDUsIDEw
KSwgOjp0ZXN0aW5nOjpSYW5nZSgwLCAzKSk7CiAKLVZQOV9JTlNUQU5USUFURV9URVNUX0NBU0Uo
RGF0YXJhdGVPbmVQYXNzQ2JyU3ZjTXVsdGlCUiwgOjp0ZXN0aW5nOjpSYW5nZSg1LCAxMCksCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoMCwgMykpOworVlA5X0lO
U1RBTlRJQVRFX1RFU1RfU1VJVEUoRGF0YXJhdGVPbmVQYXNzQ2JyU3ZjTXVsdGlCUiwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoNSwgMTApLCA6OnRlc3Rpbmc6
OlJhbmdlKDAsIDMpKTsKIAotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShEYXRhcmF0ZU9uZVBh
c3NDYnJTdmNGcmFtZURyb3BNdWx0aUJSLAotICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRl
c3Rpbmc6OlJhbmdlKDUsIDEwKSwgOjp0ZXN0aW5nOjpSYW5nZSgwLCAyKSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgwLCAzKSk7CitWUDlfSU5TVEFOVElBVEVf
VEVTVF9TVUlURShEYXRhcmF0ZU9uZVBhc3NDYnJTdmNGcmFtZURyb3BNdWx0aUJSLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSg1LCAxMCksIDo6dGVzdGluZzo6
UmFuZ2UoMCwgMiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdl
KDAsIDMpKTsKIAogI2lmIENPTkZJR19WUDlfVEVNUE9SQUxfREVOT0lTSU5HCi1WUDlfSU5TVEFO
VElBVEVfVEVTVF9DQVNFKERhdGFyYXRlT25lUGFzc0NiclN2Y0Rlbm9pc2VyLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDUsIDEwKSwgOjp0ZXN0aW5nOjpSYW5n
ZSgxLCAzKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgwLCAz
KSwgOjp0ZXN0aW5nOjpSYW5nZSgwLCA0KSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURShE
YXRhcmF0ZU9uZVBhc3NDYnJTdmNEZW5vaXNlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
IDo6dGVzdGluZzo6UmFuZ2UoNSwgMTApLCA6OnRlc3Rpbmc6OlJhbmdlKDEsIDMpLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgwLCAzKSwgOjp0ZXN0aW5nOjpS
YW5nZSgwLCA0KSk7CiAjZW5kaWYKIAotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShEYXRhcmF0
ZU9uZVBhc3NDYnJTdmNTbWFsbEtGLCA6OnRlc3Rpbmc6OlJhbmdlKDUsIDEwKSwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgzMiwgMzYpKTsKK1ZQOV9JTlNUQU5U
SUFURV9URVNUX1NVSVRFKERhdGFyYXRlT25lUGFzc0NiclN2Y1NtYWxsS0YsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDUsIDEwKSwgOjp0ZXN0aW5nOjpSYW5n
ZSgzMiwgMzYpKTsKIH0gIC8vIG5hbWVzcGFjZQogfSAgLy8gbmFtZXNwYWNlIHN2Y190ZXN0CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvc3ZjX2VuZF90b19lbmRfdGVzdC5jYyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdGVzdC9zdmNfZW5kX3RvX2VuZF90ZXN0LmNjCmluZGV4IDgyMjU5YWMzMGNhY2JmYzQ2
ZGNmMzE3MDZjZThkMDAxZDQ4YmU3NDguLjUxODgyNGQwM2ZjMTYzNDdhYzAzMjgxNWYxNDkyZTRj
ZWU5YWJjZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zdmNfZW5kX3RvX2VuZF90ZXN0
LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zdmNfZW5kX3RvX2VuZF90ZXN0LmNjCkBAIC0xMjEs
NyArMTIxLDggQEAgY2xhc3MgU3luY0ZyYW1lT25lUGFzc0NiclN2YyA6IHB1YmxpYyBPbmVQYXNz
Q2JyU3ZjLAogICAgICAgICBmcmFtZV90b19zdGFydF9kZWNvZGVfKDApLCBmcmFtZV90b19zeW5j
XygwKSwKICAgICAgICAgaW50ZXJfbGF5ZXJfcHJlZF9tb2RlXyhHRVRfUEFSQU0oMSkpLCBkZWNv
ZGVfdG9fbGF5ZXJfYmVmb3JlX3N5bmNfKC0xKSwKICAgICAgICAgZGVjb2RlX3RvX2xheWVyX2Fm
dGVyX3N5bmNfKC0xKSwgZGVub2lzZXJfb25fKDApLAotICAgICAgICBpbnRyYV9vbmx5X3Rlc3Rf
KGZhbHNlKSwgbWlzbWF0Y2hfbmZyYW1lc18oMCksIG51bV9ub25yZWZfZnJhbWVzXygwKSB7Cisg
ICAgICAgIGludHJhX29ubHlfdGVzdF8oZmFsc2UpLCBsb29wZmlsdGVyX29mZl8oMCksIG1pc21h
dGNoX25mcmFtZXNfKDApLAorICAgICAgICBudW1fbm9ucmVmX2ZyYW1lc18oMCkgewogICAgIFNl
dE1vZGUoOjpsaWJ2cHhfdGVzdDo6a1JlYWxUaW1lKTsKICAgICBtZW1zZXQoJnN2Y19sYXllcl9z
eW5jXywgMCwgc2l6ZW9mKHN2Y19sYXllcl9zeW5jXykpOwogICB9CkBAIC0xNTQsNiArMTU1LDgg
QEAgY2xhc3MgU3luY0ZyYW1lT25lUGFzc0NiclN2YyA6IHB1YmxpYyBPbmVQYXNzQ2JyU3ZjLAog
ICAgICAgICAvLyBTbyBzZXQgaXQgaGVyZSBpbiB0aGVzZSB0ZXNzIHRvIGF2b2lkIGVuY29kZXIt
ZGVjb2RlcgogICAgICAgICAvLyBtaXNtYXRjaCBjaGVjayBvbiBjb2xvciBzcGFjZSBzZXR0aW5n
LgogICAgICAgICBlbmNvZGVyLT5Db250cm9sKFZQOUVfU0VUX0NPTE9SX1NQQUNFLCBWUFhfQ1Nf
QlRfNjAxKTsKKworICAgICAgZW5jb2Rlci0+Q29udHJvbChWUDlFX1NFVF9ESVNBQkxFX0xPT1BG
SUxURVIsIGxvb3BmaWx0ZXJfb2ZmXyk7CiAgICAgfQogICAgIGlmICh2aWRlby0+ZnJhbWUoKSA9
PSBmcmFtZV90b19zeW5jXykgewogICAgICAgZW5jb2Rlci0+Q29udHJvbChWUDlFX1NFVF9TVkNf
U1BBVElBTF9MQVlFUl9TWU5DLCAmc3ZjX2xheWVyX3N5bmNfKTsKQEAgLTIxNCw3ICsyMTcsMTAg
QEAgY2xhc3MgU3luY0ZyYW1lT25lUGFzc0NiclN2YyA6IHB1YmxpYyBPbmVQYXNzQ2JyU3ZjLAog
ICBpbnQgZGVjb2RlX3RvX2xheWVyX2FmdGVyX3N5bmNfOwogICBpbnQgZGVub2lzZXJfb25fOwog
ICBib29sIGludHJhX29ubHlfdGVzdF87CisgIGludCBsb29wZmlsdGVyX29mZl87CiAgIHZweF9z
dmNfc3BhdGlhbF9sYXllcl9zeW5jX3Qgc3ZjX2xheWVyX3N5bmNfOworICB1bnNpZ25lZCBpbnQg
bWlzbWF0Y2hfbmZyYW1lc187CisgIHVuc2lnbmVkIGludCBudW1fbm9ucmVmX2ZyYW1lc187CiAK
ICBwcml2YXRlOgogICB2aXJ0dWFsIHZvaWQgU2V0Q29uZmlnKGNvbnN0IGludCBudW1fdGVtcG9y
YWxfbGF5ZXIpIHsKQEAgLTI0Myw5ICsyNDksNiBAQCBjbGFzcyBTeW5jRnJhbWVPbmVQYXNzQ2Jy
U3ZjIDogcHVibGljIE9uZVBhc3NDYnJTdmMsCiAgICAgICBjZmdfLnRlbXBvcmFsX2xheWVyaW5n
X21vZGUgPSAxOwogICAgIH0KICAgfQotCi0gIHVuc2lnbmVkIGludCBtaXNtYXRjaF9uZnJhbWVz
XzsKLSAgdW5zaWduZWQgaW50IG51bV9ub25yZWZfZnJhbWVzXzsKIH07CiAKIC8vIFRlc3QgZm9y
IHN5bmMgbGF5ZXIgZm9yIDEgcGFzcyBDQlIgU1ZDOiAzIHNwYXRpYWwgbGF5ZXJzIGFuZApAQCAt
NDcwLDkgKzQ3MywxNzcgQEAgVEVTVF9QKFN5bmNGcmFtZU9uZVBhc3NDYnJTdmMsIE9uZVBhc3ND
YnJTdmMxU0wzVExTeW5jRnJhbWVJbnRyYU9ubHlRVkdBKSB7CiAjZW5kaWYKIH0KIAotVlA5X0lO
U1RBTlRJQVRFX1RFU1RfQ0FTRShTeW5jRnJhbWVPbmVQYXNzQ2JyU3ZjLCA6OnRlc3Rpbmc6OlJh
bmdlKDAsIDMpKTsKKy8vIFBhcmFtczogTG9vcGZpbHRlciBtb2Rlcy4KK2NsYXNzIExvb3BmaWx0
ZXJPbmVQYXNzQ2JyU3ZjIDogcHVibGljIE9uZVBhc3NDYnJTdmMsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHB1YmxpYyA6OmxpYnZweF90ZXN0OjpDb2RlY1Rlc3RXaXRoUGFyYW08
aW50PiB7CisgcHVibGljOgorICBMb29wZmlsdGVyT25lUGFzc0NiclN2YygpCisgICAgICA6IE9u
ZVBhc3NDYnJTdmMoR0VUX1BBUkFNKDApKSwgbG9vcGZpbHRlcl9vZmZfKEdFVF9QQVJBTSgxKSks
CisgICAgICAgIG1pc21hdGNoX25mcmFtZXNfKDApLCBudW1fbm9ucmVmX2ZyYW1lc18oMCkgewor
ICAgIFNldE1vZGUoOjpsaWJ2cHhfdGVzdDo6a1JlYWxUaW1lKTsKKyAgfQorCisgcHJvdGVjdGVk
OgorICB2aXJ0dWFsIH5Mb29wZmlsdGVyT25lUGFzc0NiclN2YygpIHt9CisKKyAgdmlydHVhbCB2
b2lkIFNldFVwKCkgeworICAgIEluaXRpYWxpemVDb25maWcoKTsKKyAgICBzcGVlZF9zZXR0aW5n
XyA9IDc7CisgIH0KKworICB2aXJ0dWFsIHZvaWQgUHJlRW5jb2RlRnJhbWVIb29rKDo6bGlidnB4
X3Rlc3Q6OlZpZGVvU291cmNlICp2aWRlbywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA6OmxpYnZweF90ZXN0OjpFbmNvZGVyICplbmNvZGVyKSB7CisgICAgUHJlRW5jb2RlRnJh
bWVIb29rU2V0dXAodmlkZW8sIGVuY29kZXIpOworICAgIGlmIChudW1iZXJfdGVtcG9yYWxfbGF5
ZXJzXyA+IDEgfHwgbnVtYmVyX3NwYXRpYWxfbGF5ZXJzXyA+IDEpIHsKKyAgICAgIC8vIENvbnNp
ZGVyIDMgY2FzZXM6CisgICAgICBpZiAobG9vcGZpbHRlcl9vZmZfID09IDApIHsKKyAgICAgICAg
Ly8gbG9vcGZpbHRlciBpcyBvbiBmb3IgYWxsIHNwYXRpYWwgbGF5ZXJzIG9uIGV2ZXJ5IHN1cGVy
cmZyYW1lLgorICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IFZQWF9TU19NQVhfTEFZRVJTOyAr
K2kpIHsKKyAgICAgICAgICBzdmNfcGFyYW1zXy5sb29wZmlsdGVyX2N0cmxbaV0gPSAwOworICAg
ICAgICB9CisgICAgICB9IGVsc2UgaWYgKGxvb3BmaWx0ZXJfb2ZmXyA9PSAxKSB7CisgICAgICAg
IC8vIGxvb3BmaWx0ZXIgaXMgb2ZmIGZvciBub24tcmVmZXJlbmNlIGZyYW1lcyBmb3IgYWxsIHNw
YXRpYWwgbGF5ZXJzLgorICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IFZQWF9TU19NQVhfTEFZ
RVJTOyArK2kpIHsKKyAgICAgICAgICBzdmNfcGFyYW1zXy5sb29wZmlsdGVyX2N0cmxbaV0gPSAx
OworICAgICAgICB9CisgICAgICB9IGVsc2UgeworICAgICAgICAvLyBsb29wZmlsdGVyIGlzIG9m
ZiBmb3IgYWxsIFNMMCBmcmFtZXMsIGFuZCBvZmYgb25seSBmb3Igbm9uLXJlZmVyZW5jZQorICAg
ICAgICAvLyBmcmFtZXMgZm9yIFNMID4gMC4KKyAgICAgICAgc3ZjX3BhcmFtc18ubG9vcGZpbHRl
cl9jdHJsWzBdID0gMjsKKyAgICAgICAgZm9yIChpbnQgaSA9IDE7IGkgPCBWUFhfU1NfTUFYX0xB
WUVSUzsgKytpKSB7CisgICAgICAgICAgc3ZjX3BhcmFtc18ubG9vcGZpbHRlcl9jdHJsW2ldID0g
MTsKKyAgICAgICAgfQorICAgICAgfQorICAgICAgZW5jb2Rlci0+Q29udHJvbChWUDlFX1NFVF9T
VkNfUEFSQU1FVEVSUywgJnN2Y19wYXJhbXNfKTsKKyAgICB9IGVsc2UgaWYgKG51bWJlcl90ZW1w
b3JhbF9sYXllcnNfID09IDEgJiYgbnVtYmVyX3NwYXRpYWxfbGF5ZXJzXyA9PSAxKSB7CisgICAg
ICAvLyBGb3Igbm9uLVNWQyBtb2RlIHVzZSB0aGUgc2luZ2xlIGxheWVyIGNvbnRyb2wuCisgICAg
ICBlbmNvZGVyLT5Db250cm9sKFZQOUVfU0VUX0RJU0FCTEVfTE9PUEZJTFRFUiwgbG9vcGZpbHRl
cl9vZmZfKTsKKyAgICB9CisgIH0KKworICB2aXJ0dWFsIHZvaWQgRnJhbWVQa3RIb29rKGNvbnN0
IHZweF9jb2RlY19jeF9wa3RfdCAqcGt0KSB7CisgICAgLy8gS2VlcCB0cmFjayBvZiBudW1iZXIg
b2Ygbm9uLXJlZmVyZW5jZSBmcmFtZXMsIG5lZWRlZCBmb3IgbWlzbWF0Y2ggY2hlY2suCisgICAg
Ly8gTm9uLXJlZmVyZW5jZSBmcmFtZXMgYXJlIHRvcCBzcGF0aWFsIGFuZCB0ZW1wb3JhbCBsYXll
ciBmcmFtZXMsCisgICAgLy8gZm9yIFRMID4gMC4KKyAgICBpZiAodGVtcG9yYWxfbGF5ZXJfaWRf
ID09IG51bWJlcl90ZW1wb3JhbF9sYXllcnNfIC0gMSAmJgorICAgICAgICB0ZW1wb3JhbF9sYXll
cl9pZF8gPiAwICYmCisgICAgICAgIHBrdC0+ZGF0YS5mcmFtZS5zcGF0aWFsX2xheWVyX2VuY29k
ZWRbbnVtYmVyX3NwYXRpYWxfbGF5ZXJzXyAtIDFdKQorICAgICAgbnVtX25vbnJlZl9mcmFtZXNf
Kys7CisgIH0KKworICB2aXJ0dWFsIHZvaWQgTWlzbWF0Y2hIb29rKGNvbnN0IHZweF9pbWFnZV90
ICogLyppbWcxKi8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdnB4X2ltYWdl
X3QgKiAvKmltZzIqLykgeworICAgICsrbWlzbWF0Y2hfbmZyYW1lc187CisgIH0KKworICB2aXJ0
dWFsIHZvaWQgU2V0Q29uZmlnKGNvbnN0IGludCAvKm51bV90ZW1wb3JhbF9sYXllciovKSB7fQor
CisgIGludCBHZXRNaXNtYXRjaEZyYW1lcygpIGNvbnN0IHsgcmV0dXJuIG1pc21hdGNoX25mcmFt
ZXNfOyB9CisgIGludCBHZXROb25SZWZGcmFtZXMoKSBjb25zdCB7IHJldHVybiBudW1fbm9ucmVm
X2ZyYW1lc187IH0KKworICBpbnQgbG9vcGZpbHRlcl9vZmZfOworCisgcHJpdmF0ZToKKyAgaW50
IG1pc21hdGNoX25mcmFtZXNfOworICBpbnQgbnVtX25vbnJlZl9mcmFtZXNfOworfTsKKworVEVT
VF9QKExvb3BmaWx0ZXJPbmVQYXNzQ2JyU3ZjLCBPbmVQYXNzQ2JyU3ZjMVNMMVRMTG9vcGZpbHRl
ck9mZikgeworICBTZXRTdmNDb25maWcoMSwgMSk7CisgIGNmZ18ucmNfYnVmX2luaXRpYWxfc3og
PSA1MDA7CisgIGNmZ18ucmNfYnVmX29wdGltYWxfc3ogPSA1MDA7CisgIGNmZ18ucmNfYnVmX3N6
ID0gMTAwMDsKKyAgY2ZnXy5yY19taW5fcXVhbnRpemVyID0gMDsKKyAgY2ZnXy5yY19tYXhfcXVh
bnRpemVyID0gNjM7CisgIGNmZ18uZ190aHJlYWRzID0gMTsKKyAgY2ZnXy5yY19kcm9wZnJhbWVf
dGhyZXNoID0gMDsKKyAgY2ZnXy5yY190YXJnZXRfYml0cmF0ZSA9IDgwMDsKKyAgY2ZnXy5rZl9t
YXhfZGlzdCA9IDk5OTk7CisgIGNmZ18ucmNfZW5kX3VzYWdlID0gVlBYX0NCUjsKKyAgY2ZnXy5n
X2xhZ19pbl9mcmFtZXMgPSAwOworICBjZmdfLmdfZXJyb3JfcmVzaWxpZW50ID0gMTsKKyAgY2Zn
Xy50c19yYXRlX2RlY2ltYXRvclswXSA9IDE7CisgIGNmZ18udGVtcG9yYWxfbGF5ZXJpbmdfbW9k
ZSA9IDA7CisgIDo6bGlidnB4X3Rlc3Q6Okk0MjBWaWRlb1NvdXJjZSB2aWRlbygibmlrbGFzXzY0
MF80ODBfMzAueXV2IiwgNjQwLCA0ODAsIDMwLCAxLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgMCwgNDAwKTsKKyAgY2ZnXy5yY190YXJnZXRfYml0cmF0ZSA9IDYwMDsK
KyAgQXNzaWduTGF5ZXJCaXRyYXRlcygpOworICBBU1NFUlRfTk9fRkFUQUxfRkFJTFVSRShSdW5M
b29wKCZ2aWRlbykpOworI2lmIENPTkZJR19WUDlfREVDT0RFUgorICBpZiAobG9vcGZpbHRlcl9v
ZmZfID09IDApCisgICAgRVhQRUNUX0VRKEdldE5vblJlZkZyYW1lcygpLCBHZXRNaXNtYXRjaEZy
YW1lcygpKTsKKyAgZWxzZQorICAgIEVYUEVDVF9FUShHZXRNaXNtYXRjaEZyYW1lcygpLCAwKTsK
KyNlbmRpZgorfQorCitURVNUX1AoTG9vcGZpbHRlck9uZVBhc3NDYnJTdmMsIE9uZVBhc3NDYnJT
dmMxU0wzVExMb29wZmlsdGVyT2ZmKSB7CisgIFNldFN2Y0NvbmZpZygxLCAzKTsKKyAgY2ZnXy5y
Y19idWZfaW5pdGlhbF9zeiA9IDUwMDsKKyAgY2ZnXy5yY19idWZfb3B0aW1hbF9zeiA9IDUwMDsK
KyAgY2ZnXy5yY19idWZfc3ogPSAxMDAwOworICBjZmdfLnJjX21pbl9xdWFudGl6ZXIgPSAwOwor
ICBjZmdfLnJjX21heF9xdWFudGl6ZXIgPSA2MzsKKyAgY2ZnXy5nX3RocmVhZHMgPSAxOworICBj
ZmdfLnJjX2Ryb3BmcmFtZV90aHJlc2ggPSAwOworICBjZmdfLnJjX3RhcmdldF9iaXRyYXRlID0g
ODAwOworICBjZmdfLmtmX21heF9kaXN0ID0gOTk5OTsKKyAgY2ZnXy5yY19lbmRfdXNhZ2UgPSBW
UFhfQ0JSOworICBjZmdfLmdfbGFnX2luX2ZyYW1lcyA9IDA7CisgIGNmZ18uZ19lcnJvcl9yZXNp
bGllbnQgPSAxOworICBjZmdfLnRzX3JhdGVfZGVjaW1hdG9yWzBdID0gNDsKKyAgY2ZnXy50c19y
YXRlX2RlY2ltYXRvclsxXSA9IDI7CisgIGNmZ18udHNfcmF0ZV9kZWNpbWF0b3JbMl0gPSAxOwor
ICBjZmdfLnRlbXBvcmFsX2xheWVyaW5nX21vZGUgPSAzOworICA6OmxpYnZweF90ZXN0OjpJNDIw
VmlkZW9Tb3VyY2UgdmlkZW8oIm5pa2xhc182NDBfNDgwXzMwLnl1diIsIDY0MCwgNDgwLCAzMCwg
MSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIDQwMCk7CisgIGNm
Z18ucmNfdGFyZ2V0X2JpdHJhdGUgPSA2MDA7CisgIEFzc2lnbkxheWVyQml0cmF0ZXMoKTsKKyAg
QVNTRVJUX05PX0ZBVEFMX0ZBSUxVUkUoUnVuTG9vcCgmdmlkZW8pKTsKKyNpZiBDT05GSUdfVlA5
X0RFQ09ERVIKKyAgaWYgKGxvb3BmaWx0ZXJfb2ZmXyA9PSAwKQorICAgIEVYUEVDVF9FUShHZXRO
b25SZWZGcmFtZXMoKSwgR2V0TWlzbWF0Y2hGcmFtZXMoKSk7CisgIGVsc2UKKyAgICBFWFBFQ1Rf
RVEoR2V0TWlzbWF0Y2hGcmFtZXMoKSwgMCk7CisjZW5kaWYKK30KKworVEVTVF9QKExvb3BmaWx0
ZXJPbmVQYXNzQ2JyU3ZjLCBPbmVQYXNzQ2JyU3ZjM1NMM1RMTG9vcGZpbHRlck9mZikgeworICBT
ZXRTdmNDb25maWcoMywgMyk7CisgIGNmZ18ucmNfYnVmX2luaXRpYWxfc3ogPSA1MDA7CisgIGNm
Z18ucmNfYnVmX29wdGltYWxfc3ogPSA1MDA7CisgIGNmZ18ucmNfYnVmX3N6ID0gMTAwMDsKKyAg
Y2ZnXy5yY19taW5fcXVhbnRpemVyID0gMDsKKyAgY2ZnXy5yY19tYXhfcXVhbnRpemVyID0gNjM7
CisgIGNmZ18uZ190aHJlYWRzID0gMTsKKyAgY2ZnXy5yY19kcm9wZnJhbWVfdGhyZXNoID0gMDsK
KyAgY2ZnXy5yY190YXJnZXRfYml0cmF0ZSA9IDgwMDsKKyAgY2ZnXy5rZl9tYXhfZGlzdCA9IDk5
OTk7CisgIGNmZ18ucmNfZW5kX3VzYWdlID0gVlBYX0NCUjsKKyAgY2ZnXy5nX2xhZ19pbl9mcmFt
ZXMgPSAwOworICBjZmdfLmdfZXJyb3JfcmVzaWxpZW50ID0gMTsKKyAgY2ZnXy50c19yYXRlX2Rl
Y2ltYXRvclswXSA9IDQ7CisgIGNmZ18udHNfcmF0ZV9kZWNpbWF0b3JbMV0gPSAyOworICBjZmdf
LnRzX3JhdGVfZGVjaW1hdG9yWzJdID0gMTsKKyAgY2ZnXy50ZW1wb3JhbF9sYXllcmluZ19tb2Rl
ID0gMzsKKyAgOjpsaWJ2cHhfdGVzdDo6STQyMFZpZGVvU291cmNlIHZpZGVvKCJuaWtsYXNfNjQw
XzQ4MF8zMC55dXYiLCA2NDAsIDQ4MCwgMzAsIDEsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAwLCA0MDApOworICBjZmdfLnJjX3RhcmdldF9iaXRyYXRlID0gNjAwOwor
ICBBc3NpZ25MYXllckJpdHJhdGVzKCk7CisgIEFTU0VSVF9OT19GQVRBTF9GQUlMVVJFKFJ1bkxv
b3AoJnZpZGVvKSk7CisjaWYgQ09ORklHX1ZQOV9ERUNPREVSCisgIGlmIChsb29wZmlsdGVyX29m
Zl8gPT0gMCkKKyAgICBFWFBFQ1RfRVEoR2V0Tm9uUmVmRnJhbWVzKCksIEdldE1pc21hdGNoRnJh
bWVzKCkpOworICBlbHNlCisgICAgRVhQRUNUX0VRKEdldE1pc21hdGNoRnJhbWVzKCksIDApOwor
I2VuZGlmCit9CisKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKFN5bmNGcmFtZU9uZVBhc3ND
YnJTdmMsIDo6dGVzdGluZzo6UmFuZ2UoMCwgMykpOworCitWUDlfSU5TVEFOVElBVEVfVEVTVF9T
VUlURShMb29wZmlsdGVyT25lUGFzc0NiclN2YywgOjp0ZXN0aW5nOjpSYW5nZSgwLCAzKSk7CiAK
LUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAg
IFZQOSwgU2NhbGVQYXJ0aXRpb25PbmVQYXNzQ2JyU3ZjLAogICAgIDo6dGVzdGluZzo6VmFsdWVz
KAogICAgICAgICBzdGF0aWNfY2FzdDxjb25zdCBsaWJ2cHhfdGVzdDo6Q29kZWNGYWN0b3J5ICo+
KCZsaWJ2cHhfdGVzdDo6a1ZQOSkpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zdmNf
dGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zdmNfdGVzdC5jYwppbmRleCA0Nzk4Yzc3MTgzMjMx
MjhjNTU0MDlkNDI5NGQwNDQ1MTFkMjAwZjY0Li5jYmMwYWJlMDMyZGEzNjc1ZTc0NDc4ZjdhOTMz
ZDdlYzNhYjgwNTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvc3ZjX3Rlc3QuY2MKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L3N2Y190ZXN0LmNjCkBAIC00MywxMyArNDMsMTQgQEAgdm9pZCBP
bmVQYXNzQ2JyU3ZjOjpQcmVFbmNvZGVGcmFtZUhvb2tTZXR1cCg6OmxpYnZweF90ZXN0OjpWaWRl
b1NvdXJjZSAqdmlkZW8sCiAgICAgICBzdmNfcGFyYW1zXy5tYXhfcXVhbnRpemVyc1tpXSA9IDYz
OwogICAgICAgc3ZjX3BhcmFtc18ubWluX3F1YW50aXplcnNbaV0gPSAwOwogICAgIH0KLSAgICBz
dmNfcGFyYW1zXy5zcGVlZF9wZXJfbGF5ZXJbMF0gPSBiYXNlX3NwZWVkX3NldHRpbmdfOwotICAg
IGZvciAoaW50IGkgPSAxOyBpIDwgVlBYX1NTX01BWF9MQVlFUlM7ICsraSkgewotICAgICAgc3Zj
X3BhcmFtc18uc3BlZWRfcGVyX2xheWVyW2ldID0gc3BlZWRfc2V0dGluZ187CisgICAgaWYgKG51
bWJlcl90ZW1wb3JhbF9sYXllcnNfID4gMSB8fCBudW1iZXJfc3BhdGlhbF9sYXllcnNfID4gMSkg
eworICAgICAgc3ZjX3BhcmFtc18uc3BlZWRfcGVyX2xheWVyWzBdID0gYmFzZV9zcGVlZF9zZXR0
aW5nXzsKKyAgICAgIGZvciAoaW50IGkgPSAxOyBpIDwgVlBYX1NTX01BWF9MQVlFUlM7ICsraSkg
eworICAgICAgICBzdmNfcGFyYW1zXy5zcGVlZF9wZXJfbGF5ZXJbaV0gPSBzcGVlZF9zZXR0aW5n
XzsKKyAgICAgIH0KKyAgICAgIGVuY29kZXItPkNvbnRyb2woVlA5RV9TRVRfU1ZDLCAxKTsKKyAg
ICAgIGVuY29kZXItPkNvbnRyb2woVlA5RV9TRVRfU1ZDX1BBUkFNRVRFUlMsICZzdmNfcGFyYW1z
Xyk7CiAgICAgfQotCi0gICAgZW5jb2Rlci0+Q29udHJvbChWUDlFX1NFVF9TVkMsIDEpOwotICAg
IGVuY29kZXItPkNvbnRyb2woVlA5RV9TRVRfU1ZDX1BBUkFNRVRFUlMsICZzdmNfcGFyYW1zXyk7
CiAgICAgZW5jb2Rlci0+Q29udHJvbChWUDhFX1NFVF9DUFVVU0VELCBzcGVlZF9zZXR0aW5nXyk7
CiAgICAgZW5jb2Rlci0+Q29udHJvbChWUDlFX1NFVF9BUV9NT0RFLCAzKTsKICAgICBlbmNvZGVy
LT5Db250cm9sKFZQOEVfU0VUX01BWF9JTlRSQV9CSVRSQVRFX1BDVCwgMzAwKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGVzdC90ZXN0LWRhdGEubWsgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdGVzdC1k
YXRhLm1rCmluZGV4IDgxZjAzNWQ4M2ExZTVjNThiMWJhMmFjYjk5OGFhM2JhZTgzYmI4NWYuLjc0
NDkwMWIxMTU4MzViYjI5MjMxYzBiOWI0NWY5MjZhYmU5YTI1YTIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdGVzdC90ZXN0LWRhdGEubWsKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3Rlc3QtZGF0YS5t
awpAQCAtMiw2ICsyLDcgQEAgTElCVlBYX1RFU1RfU1JDUy15ZXMgKz0gdGVzdC1kYXRhLm1rCiAK
ICMgRW5jb2RlciB0ZXN0IHNvdXJjZQogTElCVlBYX1RFU1RfREFUQS0kKENPTkZJR19FTkNPREVS
UykgKz0gaGFudHJvX2NvbGxhZ2VfdzM1MmgyODgueXV2CitMSUJWUFhfVEVTVF9EQVRBLSQoQ09O
RklHX0VOQ09ERVJTKSArPSBoYW50cm9fY29sbGFnZV93MzUyaDI4OF9udjEyLnl1dgogTElCVlBY
X1RFU1RfREFUQS0kKENPTkZJR19FTkNPREVSUykgKz0gaGFudHJvX29kZC55dXYKIExJQlZQWF9U
RVNUX0RBVEEtJChDT05GSUdfRU5DT0RFUlMpICs9IGRlc2t0b3Bfb2ZmaWNlMS4xMjgwXzcyMC0w
MjAueXV2CiBMSUJWUFhfVEVTVF9EQVRBLSQoQ09ORklHX0VOQ09ERVJTKSArPSBzbGlkZXNfY29k
ZV90ZXJtX3dlYl9wbG90LjE5MjBfMTA4MC55dXYKQEAgLTI2LDcgKzI3LDkgQEAgTElCVlBYX1RF
U1RfREFUQS0kKENPTkZJR19WUDlfRU5DT0RFUikgKz0gbm9pc3lfY2xpcF82NDBfMzYwLnk0bQog
TElCVlBYX1RFU1RfREFUQS0kKENPTkZJR19WUDlfRU5DT0RFUikgKz0gcnVzaF9ob3VyXzQ0NC55
NG0KIExJQlZQWF9URVNUX0RBVEEtJChDT05GSUdfVlA5X0VOQ09ERVIpICs9IHNjcmVlbmRhdGEu
eTRtCiBMSUJWUFhfVEVTVF9EQVRBLSQoQ09ORklHX1ZQOV9FTkNPREVSKSArPSBuaWtsYXNfNjQw
XzQ4MF8zMC55dXYKLUxJQlZQWF9URVNUX0RBVEEtJChDT05GSUdfUkFURV9DVFJMKSArPSBidXNf
MzUyeDI4OF80MjBfZjIwX2I4Lnl1dgorTElCVlBYX1RFU1RfREFUQS0kKENPTkZJR19WUDlfRU5D
T0RFUikgKz0gcmNfaW50ZXJmYWNlX3Rlc3Rfb25lX2xheWVyCitMSUJWUFhfVEVTVF9EQVRBLSQo
Q09ORklHX1ZQOV9FTkNPREVSKSArPSByY19pbnRlcmZhY2VfdGVzdF9zdmMKK0xJQlZQWF9URVNU
X0RBVEEtJChDT05GSUdfVlA5X0VOQ09ERVIpICs9IGJ1c18zNTJ4Mjg4XzQyMF9mMjBfYjgueXV2
CiAKICMgVGVzdCB2ZWN0b3JzCiBMSUJWUFhfVEVTVF9EQVRBLSQoQ09ORklHX1ZQOF9ERUNPREVS
KSArPSB2cDgwLTAwLWNvbXByZWhlbnNpdmUtMDAxLml2ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90ZXN0L3Rlc3QtZGF0YS5zaGExIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3Rlc3QtZGF0YS5zaGExCmlu
ZGV4IGRjYWVhMjg2Njc1MzA2Y2FhYzM2ZmE2MzBkNDgzNzkxZTQxN2Q0NjMuLjZmOTAyMTU1NGQ5
NWNhNDFhOWViOGFjMWIwNGMwODVhYzZhYTcxYjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVz
dC90ZXN0LWRhdGEuc2hhMQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdGVzdC1kYXRhLnNoYTEKQEAg
LTg2OCwzICs4NjgsNiBAQCBiYWM0NTU5MDYzNjBiNDUzMzhhMTZkZDYyNmFjNWYxOWJjMzZhMzA3
ICpkZXNrdG9wX29mZmljZTEuMTI4MF83MjAtMDIwLnl1dgogMDk0YmU0YjgwZmEzMGJkMjI3MTQ5
ZWExNmFiNjQ3NmQ1NDllYTA5MiAqc2xpZGVzX2NvZGVfdGVybV93ZWJfcGxvdC4xOTIwXzEwODAu
eXV2CiA1MThhMGJlOTk4YWZlY2U3NmQzZGY3NjA0N2Q1MWUyNTZjNTkxZmYyICppbnZhbGlkLWJ1
Zy0xNDgyNzExMDkuaXZmCiBkMzk2NGY5ZGFkOWY2MDM2M2M4MWI2ODgzMjRkOTViNGVjN2M4MDM4
ICppbnZhbGlkLWJ1Zy0xNDgyNzExMDkuaXZmLnJlcworYWQxOGNhMTZmMGEyNDlmYjNiN2MzOGRl
MGQ5YjMyN2ZlZDI3M2Y5NiAqaGFudHJvX2NvbGxhZ2VfdzM1MmgyODhfbnYxMi55dXYKKzAzZjgy
N2MwZTM2ZmY5YTZlMjNjNWNjMTE5MzY5MjRlNGYxODI3YWIgKnJjX2ludGVyZmFjZV90ZXN0X29u
ZV9sYXllcgorOTllNGY0YzI5NjFkNDZkYzI4NmRiMjMwMDkwYTM5ZDc4NDYwYjI1ZCAqcmNfaW50
ZXJmYWNlX3Rlc3Rfc3ZjCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdGVzdC5tayBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC90ZXN0Lm1rCmluZGV4IGI0YTVlYTBjYjM2NWM0MmE5ZjViODI3NjZmNjQ1
NGM2NWZkMGRiNWMuLjA0OTAyMzgyZGJlZDVlMTYzMmZmODQzYzJlYjNjZjZiZTE2Y2QxOTIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC90ZXN0Lm1rCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC90
ZXN0Lm1rCkBAIC01OCw3ICs1OCw3IEBAIExJQlZQWF9URVNUX1NSQ1MtJChDT05GSUdfVlA5X0VO
Q09ERVIpICs9IHN2Y190ZXN0LmNjCiBMSUJWUFhfVEVTVF9TUkNTLSQoQ09ORklHX1ZQOV9FTkNP
REVSKSArPSBzdmNfdGVzdC5oCiBMSUJWUFhfVEVTVF9TUkNTLSQoQ09ORklHX1ZQOV9FTkNPREVS
KSArPSBzdmNfZW5kX3RvX2VuZF90ZXN0LmNjCiBMSUJWUFhfVEVTVF9TUkNTLSQoQ09ORklHX1ZQ
OV9FTkNPREVSKSArPSB0aW1lc3RhbXBfdGVzdC5jYwotTElCVlBYX1RFU1RfU1JDUy0kKENPTkZJ
R19SQVRFX0NUUkwpICAgKz0gc2ltcGxlX2VuY29kZV90ZXN0LmNjCitMSUJWUFhfVEVTVF9TUkNT
LSQoQ09ORklHX1ZQOV9FTkNPREVSKSArPSB2cDlfZXh0X3JhdGVjdHJsX3Rlc3QuY2MKIAogTElC
VlBYX1RFU1RfU1JDUy15ZXMgICAgICAgICAgICAgICAgICAgKz0gZGVjb2RlX3Rlc3RfZHJpdmVy
LmNjCiBMSUJWUFhfVEVTVF9TUkNTLXllcyAgICAgICAgICAgICAgICAgICArPSBkZWNvZGVfdGVz
dF9kcml2ZXIuaApAQCAtMTIyLDExICsxMjIsMTMgQEAgaWZlcSAoJChDT05GSUdfVlA4X0VOQ09E
RVIpJChDT05GSUdfVlA4X0RFQ09ERVIpLHllc3llcykKIExJQlZQWF9URVNUX1NSQ1MteWVzICAg
ICAgICAgICAgICAgICAgICs9IHZwOF9ib29sY29kZXJfdGVzdC5jYwogTElCVlBYX1RFU1RfU1JD
Uy15ZXMgICAgICAgICAgICAgICAgICAgKz0gdnA4X2ZyYWdtZW50c190ZXN0LmNjCiBlbmRpZgot
CiBMSUJWUFhfVEVTVF9TUkNTLSQoQ09ORklHX1BPU1RQUk9DKSAgICArPSBhZGRfbm9pc2VfdGVz
dC5jYwogTElCVlBYX1RFU1RfU1JDUy0kKENPTkZJR19QT1NUUFJPQykgICAgKz0gcHBfZmlsdGVy
X3Rlc3QuY2MKIExJQlZQWF9URVNUX1NSQ1MtJChDT05GSUdfVlA4X0RFQ09ERVIpICs9IHZwOF9k
ZWNyeXB0X3Rlc3QuY2MKK2lmbmVxICgsICQoZmlsdGVyIHllcywgJChIQVZFX1NTRTIpICQoSEFW
RV9TU1NFMykgJChIQVZFX1NTRTRfMSkgJChIQVZFX05FT04pIFwKKyAgICAgICAgICAgICAgICAg
ICAgICAgJChIQVZFX01TQSkgJChIQVZFX01NSSkpKQogTElCVlBYX1RFU1RfU1JDUy0kKENPTkZJ
R19WUDhfRU5DT0RFUikgKz0gcXVhbnRpemVfdGVzdC5jYworZW5kaWYKIExJQlZQWF9URVNUX1NS
Q1MtJChDT05GSUdfVlA4X0VOQ09ERVIpICs9IHNldF9yb2kuY2MKIExJQlZQWF9URVNUX1NSQ1Mt
JChDT05GSUdfVlA4X0VOQ09ERVIpICs9IHZhcmlhbmNlX3Rlc3QuY2MKIExJQlZQWF9URVNUX1NS
Q1MtJChDT05GSUdfVlA4X0VOQ09ERVIpICs9IHZwOF9mZGN0NHg0X3Rlc3QuY2MKQEAgLTE3NSw3
ICsxNzcsOSBAQCBpZm5lcSAoJChDT05GSUdfUkVBTFRJTUVfT05MWSkseWVzKQogTElCVlBYX1RF
U1RfU1JDUy0kKENPTkZJR19WUDlfRU5DT0RFUikgKz0geXV2X3RlbXBvcmFsX2ZpbHRlcl90ZXN0
LmNjCiBlbmRpZgogTElCVlBYX1RFU1RfU1JDUy0kKENPTkZJR19WUDlfRU5DT0RFUikgKz0gdmFy
aWFuY2VfdGVzdC5jYworaWZuZXEgKCwgJChmaWx0ZXIgeWVzLCAkKEhBVkVfU1NFMikgJChIQVZF
X0FWWDIpKSkKIExJQlZQWF9URVNUX1NSQ1MtJChDT05GSUdfVlA5X0VOQ09ERVIpICs9IHZwOV9i
bG9ja19lcnJvcl90ZXN0LmNjCitlbmRpZgogTElCVlBYX1RFU1RfU1JDUy0kKENPTkZJR19WUDlf
RU5DT0RFUikgKz0gdnA5X3F1YW50aXplX3Rlc3QuY2MKIExJQlZQWF9URVNUX1NSQ1MtJChDT05G
SUdfVlA5X0VOQ09ERVIpICs9IHZwOV9zdWJ0cmFjdF90ZXN0LmNjCiAKQEAgLTE4OSwyMCArMTkz
LDMwIEBAIExJQlZQWF9URVNUX1NSQ1MtJChDT05GSUdfTk9OX0dSRUVEWV9NVikgKz0gbm9uX2dy
ZWVkeV9tdl90ZXN0LmNjCiBlbmRpZgogCiBpZmVxICgkKENPTkZJR19WUDlfRU5DT0RFUikkKENP
TkZJR19WUDlfVEVNUE9SQUxfREVOT0lTSU5HKSx5ZXN5ZXMpCitpZm5lcSAoLCAkKGZpbHRlciB5
ZXMsICQoSEFWRV9TU0UyKSAkKEhBVkVfQVZYMikpKQogTElCVlBYX1RFU1RfU1JDUy15ZXMgKz0g
dnA5X2Rlbm9pc2VyX3Rlc3QuY2MKIGVuZGlmCitlbmRpZgogTElCVlBYX1RFU1RfU1JDUy0kKENP
TkZJR19WUDlfRU5DT0RFUikgKz0gdnA5X2FyZl9mcmVxX3Rlc3QuY2MKIAoraWZlcSAoJChDT05G
SUdfVlA5X0VOQ09ERVIpLHllcykKK1NJTVBMRV9FTkNPREVfVEVTVF9TUkNTLSQoQ09ORklHX1JB
VEVfQ1RSTCkgOj0gc2ltcGxlX2VuY29kZV90ZXN0LmNjCitlbmRpZgorCiBlbmRpZiAjIFZQOQog
CiAjIyBNdWx0aS1jb2RlYyAvIHVuY29uZGl0aW9uYWwgd2hpdGVib3ggdGVzdHMuCiAKIExJQlZQ
WF9URVNUX1NSQ1MtJChDT05GSUdfRU5DT0RFUlMpICs9IHNhZF90ZXN0LmNjCitpZm5lcSAoLCAk
KGZpbHRlciB5ZXMsICQoSEFWRV9ORU9OKSAkKEhBVkVfU1NFMikgJChIQVZFX01TQSkpKQogTElC
VlBYX1RFU1RfU1JDUy0kKENPTkZJR19FTkNPREVSUykgKz0gc3VtX3NxdWFyZXNfdGVzdC5jYwor
ZW5kaWYKIAogVEVTVF9JTlRSQV9QUkVEX1NQRUVEX1NSQ1MteWVzIDo9IHRlc3RfaW50cmFfcHJl
ZF9zcGVlZC5jYwogVEVTVF9JTlRSQV9QUkVEX1NQRUVEX1NSQ1MteWVzICs9IC4uL21kNV91dGls
cy5oIC4uL21kNV91dGlscy5jCiAKK1JDX0lOVEVSRkFDRV9URVNUX1NSQ1MtJChDT05GSUdfVlA5
X0VOQ09ERVIpIDo9IHJhdGVjdHJsX3J0Y190ZXN0LmNjCisKIGVuZGlmICMgQ09ORklHX1NIQVJF
RAogCiBpbmNsdWRlICQoU1JDX1BBVEhfQkFSRSkvdGVzdC90ZXN0LWRhdGEubWsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGVzdC90ZXN0X2ludHJhX3ByZWRfc3BlZWQuY2MgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3Rlc3QvdGVzdF9pbnRyYV9wcmVkX3NwZWVkLmNjCmluZGV4IDBiZTlmZWVmZDk5ZWUyYzcwNzRj
ZTBlNjExODk2MjZkMTM0OGVjYTkuLjA4MTAwYTE0NmUyNTVkMDM4MDhhNjE0NjRkMmM4MGQ0YjEw
NWQ2MjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC90ZXN0X2ludHJhX3ByZWRfc3BlZWQu
Y2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3Rlc3RfaW50cmFfcHJlZF9zcGVlZC5jYwpAQCAtODUs
NyArODUsNyBAQCB2b2lkIFRlc3RJbnRyYVByZWQoY29uc3QgY2hhciBuYW1lW10sIFZweFByZWRG
dW5jIGNvbnN0ICpwcmVkX2Z1bmNzLAogICBpbnRyYV9wcmVkX3Rlc3RfbWVtLkluaXQoYmxvY2tf
c2l6ZSwgOCk7CiAKICAgZm9yIChpbnQgayA9IDA7IGsgPCBrTnVtVnA5SW50cmFQcmVkRnVuY3M7
ICsraykgewotICAgIGlmIChwcmVkX2Z1bmNzW2tdID09IE5VTEwpIGNvbnRpbnVlOworICAgIGlm
IChwcmVkX2Z1bmNzW2tdID09IG51bGxwdHIpIGNvbnRpbnVlOwogICAgIG1lbWNweShpbnRyYV9w
cmVkX3Rlc3RfbWVtLnNyYywgaW50cmFfcHJlZF90ZXN0X21lbS5yZWZfc3JjLAogICAgICAgICAg
ICBzaXplb2YoaW50cmFfcHJlZF90ZXN0X21lbS5zcmMpKTsKICAgICB2cHhfdXNlY190aW1lciB0
aW1lcjsKQEAgLTIwNiw1OCArMjA2LDY0IEBAIElOVFJBX1BSRURfVEVTVChDLCBUZXN0SW50cmFQ
cmVkMzIsIHZweF9kY19wcmVkaWN0b3JfMzJ4MzJfYywKIElOVFJBX1BSRURfVEVTVChTU0UyLCBU
ZXN0SW50cmFQcmVkNCwgdnB4X2RjX3ByZWRpY3Rvcl80eDRfc3NlMiwKICAgICAgICAgICAgICAg
ICB2cHhfZGNfbGVmdF9wcmVkaWN0b3JfNHg0X3NzZTIsIHZweF9kY190b3BfcHJlZGljdG9yXzR4
NF9zc2UyLAogICAgICAgICAgICAgICAgIHZweF9kY18xMjhfcHJlZGljdG9yXzR4NF9zc2UyLCB2
cHhfdl9wcmVkaWN0b3JfNHg0X3NzZTIsCi0gICAgICAgICAgICAgICAgdnB4X2hfcHJlZGljdG9y
XzR4NF9zc2UyLCB2cHhfZDQ1X3ByZWRpY3Rvcl80eDRfc3NlMiwgTlVMTCwKLSAgICAgICAgICAg
ICAgICBOVUxMLCBOVUxMLCB2cHhfZDIwN19wcmVkaWN0b3JfNHg0X3NzZTIsIE5VTEwsCisgICAg
ICAgICAgICAgICAgdnB4X2hfcHJlZGljdG9yXzR4NF9zc2UyLCB2cHhfZDQ1X3ByZWRpY3Rvcl80
eDRfc3NlMiwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICBudWxscHRyLCBudWxscHRyLCB2cHhf
ZDIwN19wcmVkaWN0b3JfNHg0X3NzZTIsIG51bGxwdHIsCiAgICAgICAgICAgICAgICAgdnB4X3Rt
X3ByZWRpY3Rvcl80eDRfc3NlMikKIAogSU5UUkFfUFJFRF9URVNUKFNTRTIsIFRlc3RJbnRyYVBy
ZWQ4LCB2cHhfZGNfcHJlZGljdG9yXzh4OF9zc2UyLAogICAgICAgICAgICAgICAgIHZweF9kY19s
ZWZ0X3ByZWRpY3Rvcl84eDhfc3NlMiwgdnB4X2RjX3RvcF9wcmVkaWN0b3JfOHg4X3NzZTIsCiAg
ICAgICAgICAgICAgICAgdnB4X2RjXzEyOF9wcmVkaWN0b3JfOHg4X3NzZTIsIHZweF92X3ByZWRp
Y3Rvcl84eDhfc3NlMiwKLSAgICAgICAgICAgICAgICB2cHhfaF9wcmVkaWN0b3JfOHg4X3NzZTIs
IHZweF9kNDVfcHJlZGljdG9yXzh4OF9zc2UyLCBOVUxMLAotICAgICAgICAgICAgICAgIE5VTEws
IE5VTEwsIE5VTEwsIE5VTEwsIHZweF90bV9wcmVkaWN0b3JfOHg4X3NzZTIpCisgICAgICAgICAg
ICAgICAgdnB4X2hfcHJlZGljdG9yXzh4OF9zc2UyLCB2cHhfZDQ1X3ByZWRpY3Rvcl84eDhfc3Nl
MiwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBu
dWxscHRyLCB2cHhfdG1fcHJlZGljdG9yXzh4OF9zc2UyKQogCiBJTlRSQV9QUkVEX1RFU1QoU1NF
MiwgVGVzdEludHJhUHJlZDE2LCB2cHhfZGNfcHJlZGljdG9yXzE2eDE2X3NzZTIsCiAgICAgICAg
ICAgICAgICAgdnB4X2RjX2xlZnRfcHJlZGljdG9yXzE2eDE2X3NzZTIsCiAgICAgICAgICAgICAg
ICAgdnB4X2RjX3RvcF9wcmVkaWN0b3JfMTZ4MTZfc3NlMiwKICAgICAgICAgICAgICAgICB2cHhf
ZGNfMTI4X3ByZWRpY3Rvcl8xNngxNl9zc2UyLCB2cHhfdl9wcmVkaWN0b3JfMTZ4MTZfc3NlMiwK
LSAgICAgICAgICAgICAgICB2cHhfaF9wcmVkaWN0b3JfMTZ4MTZfc3NlMiwgTlVMTCwgTlVMTCwg
TlVMTCwgTlVMTCwgTlVMTCwgTlVMTCwKLSAgICAgICAgICAgICAgICB2cHhfdG1fcHJlZGljdG9y
XzE2eDE2X3NzZTIpCisgICAgICAgICAgICAgICAgdnB4X2hfcHJlZGljdG9yXzE2eDE2X3NzZTIs
IG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsCisgICAgICAgICAgICAgICAgbnVs
bHB0ciwgbnVsbHB0ciwgdnB4X3RtX3ByZWRpY3Rvcl8xNngxNl9zc2UyKQogCiBJTlRSQV9QUkVE
X1RFU1QoU1NFMiwgVGVzdEludHJhUHJlZDMyLCB2cHhfZGNfcHJlZGljdG9yXzMyeDMyX3NzZTIs
CiAgICAgICAgICAgICAgICAgdnB4X2RjX2xlZnRfcHJlZGljdG9yXzMyeDMyX3NzZTIsCiAgICAg
ICAgICAgICAgICAgdnB4X2RjX3RvcF9wcmVkaWN0b3JfMzJ4MzJfc3NlMiwKICAgICAgICAgICAg
ICAgICB2cHhfZGNfMTI4X3ByZWRpY3Rvcl8zMngzMl9zc2UyLCB2cHhfdl9wcmVkaWN0b3JfMzJ4
MzJfc3NlMiwKLSAgICAgICAgICAgICAgICB2cHhfaF9wcmVkaWN0b3JfMzJ4MzJfc3NlMiwgTlVM
TCwgTlVMTCwgTlVMTCwgTlVMTCwgTlVMTCwgTlVMTCwKLSAgICAgICAgICAgICAgICB2cHhfdG1f
cHJlZGljdG9yXzMyeDMyX3NzZTIpCisgICAgICAgICAgICAgICAgdnB4X2hfcHJlZGljdG9yXzMy
eDMyX3NzZTIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsCisgICAgICAgICAg
ICAgICAgbnVsbHB0ciwgbnVsbHB0ciwgdnB4X3RtX3ByZWRpY3Rvcl8zMngzMl9zc2UyKQogI2Vu
ZGlmICAvLyBIQVZFX1NTRTIKIAogI2lmIEhBVkVfU1NTRTMKLUlOVFJBX1BSRURfVEVTVChTU1NF
MywgVGVzdEludHJhUHJlZDQsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsIE5V
TEwsCi0gICAgICAgICAgICAgICAgTlVMTCwgTlVMTCwgdnB4X2QxNTNfcHJlZGljdG9yXzR4NF9z
c3NlMywgTlVMTCwKLSAgICAgICAgICAgICAgICB2cHhfZDYzX3ByZWRpY3Rvcl80eDRfc3NzZTMs
IE5VTEwpCi1JTlRSQV9QUkVEX1RFU1QoU1NTRTMsIFRlc3RJbnRyYVByZWQ4LCBOVUxMLCBOVUxM
LCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLAotICAgICAgICAgICAgICAgIE5VTEwsIE5V
TEwsIHZweF9kMTUzX3ByZWRpY3Rvcl84eDhfc3NzZTMsCi0gICAgICAgICAgICAgICAgdnB4X2Qy
MDdfcHJlZGljdG9yXzh4OF9zc3NlMywgdnB4X2Q2M19wcmVkaWN0b3JfOHg4X3Nzc2UzLCBOVUxM
KQotSU5UUkFfUFJFRF9URVNUKFNTU0UzLCBUZXN0SW50cmFQcmVkMTYsIE5VTEwsIE5VTEwsIE5V
TEwsIE5VTEwsIE5VTEwsIE5VTEwsCi0gICAgICAgICAgICAgICAgdnB4X2Q0NV9wcmVkaWN0b3Jf
MTZ4MTZfc3NzZTMsIE5VTEwsIE5VTEwsCi0gICAgICAgICAgICAgICAgdnB4X2QxNTNfcHJlZGlj
dG9yXzE2eDE2X3Nzc2UzLCB2cHhfZDIwN19wcmVkaWN0b3JfMTZ4MTZfc3NzZTMsCi0gICAgICAg
ICAgICAgICAgdnB4X2Q2M19wcmVkaWN0b3JfMTZ4MTZfc3NzZTMsIE5VTEwpCi1JTlRSQV9QUkVE
X1RFU1QoU1NTRTMsIFRlc3RJbnRyYVByZWQzMiwgTlVMTCwgTlVMTCwgTlVMTCwgTlVMTCwgTlVM
TCwgTlVMTCwKLSAgICAgICAgICAgICAgICB2cHhfZDQ1X3ByZWRpY3Rvcl8zMngzMl9zc3NlMywg
TlVMTCwgTlVMTCwKLSAgICAgICAgICAgICAgICB2cHhfZDE1M19wcmVkaWN0b3JfMzJ4MzJfc3Nz
ZTMsIHZweF9kMjA3X3ByZWRpY3Rvcl8zMngzMl9zc3NlMywKLSAgICAgICAgICAgICAgICB2cHhf
ZDYzX3ByZWRpY3Rvcl8zMngzMl9zc3NlMywgTlVMTCkKK0lOVFJBX1BSRURfVEVTVChTU1NFMywg
VGVzdEludHJhUHJlZDQsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsCisgICAg
ICAgICAgICAgICAgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwK
KyAgICAgICAgICAgICAgICB2cHhfZDE1M19wcmVkaWN0b3JfNHg0X3Nzc2UzLCBudWxscHRyLAor
ICAgICAgICAgICAgICAgIHZweF9kNjNfcHJlZGljdG9yXzR4NF9zc3NlMywgbnVsbHB0cikKK0lO
VFJBX1BSRURfVEVTVChTU1NFMywgVGVzdEludHJhUHJlZDgsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIG51bGxwdHIsCisgICAgICAgICAgICAgICAgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0
ciwgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICB2cHhfZDE1M19wcmVkaWN0b3Jf
OHg4X3Nzc2UzLCB2cHhfZDIwN19wcmVkaWN0b3JfOHg4X3Nzc2UzLAorICAgICAgICAgICAgICAg
IHZweF9kNjNfcHJlZGljdG9yXzh4OF9zc3NlMywgbnVsbHB0cikKK0lOVFJBX1BSRURfVEVTVChT
U1NFMywgVGVzdEludHJhUHJlZDE2LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBudWxscHRy
LAorICAgICAgICAgICAgICAgIG51bGxwdHIsIG51bGxwdHIsIHZweF9kNDVfcHJlZGljdG9yXzE2
eDE2X3Nzc2UzLCBudWxscHRyLAorICAgICAgICAgICAgICAgIG51bGxwdHIsIHZweF9kMTUzX3By
ZWRpY3Rvcl8xNngxNl9zc3NlMywKKyAgICAgICAgICAgICAgICB2cHhfZDIwN19wcmVkaWN0b3Jf
MTZ4MTZfc3NzZTMsIHZweF9kNjNfcHJlZGljdG9yXzE2eDE2X3Nzc2UzLAorICAgICAgICAgICAg
ICAgIG51bGxwdHIpCitJTlRSQV9QUkVEX1RFU1QoU1NTRTMsIFRlc3RJbnRyYVByZWQzMiwgbnVs
bHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICBudWxscHRy
LCBudWxscHRyLCB2cHhfZDQ1X3ByZWRpY3Rvcl8zMngzMl9zc3NlMywgbnVsbHB0ciwKKyAgICAg
ICAgICAgICAgICBudWxscHRyLCB2cHhfZDE1M19wcmVkaWN0b3JfMzJ4MzJfc3NzZTMsCisgICAg
ICAgICAgICAgICAgdnB4X2QyMDdfcHJlZGljdG9yXzMyeDMyX3Nzc2UzLCB2cHhfZDYzX3ByZWRp
Y3Rvcl8zMngzMl9zc3NlMywKKyAgICAgICAgICAgICAgICBudWxscHRyKQogI2VuZGlmICAvLyBI
QVZFX1NTU0UzCiAKICNpZiBIQVZFX0RTUFIyCi1JTlRSQV9QUkVEX1RFU1QoRFNQUjIsIFRlc3RJ
bnRyYVByZWQ0LCB2cHhfZGNfcHJlZGljdG9yXzR4NF9kc3ByMiwgTlVMTCwgTlVMTCwKLSAgICAg
ICAgICAgICAgICBOVUxMLCBOVUxMLCB2cHhfaF9wcmVkaWN0b3JfNHg0X2RzcHIyLCBOVUxMLCBO
VUxMLCBOVUxMLCBOVUxMLAotICAgICAgICAgICAgICAgIE5VTEwsIE5VTEwsIHZweF90bV9wcmVk
aWN0b3JfNHg0X2RzcHIyKQotSU5UUkFfUFJFRF9URVNUKERTUFIyLCBUZXN0SW50cmFQcmVkOCwg
dnB4X2RjX3ByZWRpY3Rvcl84eDhfZHNwcjIsIE5VTEwsIE5VTEwsCi0gICAgICAgICAgICAgICAg
TlVMTCwgTlVMTCwgdnB4X2hfcHJlZGljdG9yXzh4OF9kc3ByMiwgTlVMTCwgTlVMTCwgTlVMTCwg
TlVMTCwKLSAgICAgICAgICAgICAgICBOVUxMLCBOVUxMLCB2cHhfdG1fcHJlZGljdG9yXzh4OF9j
KQotSU5UUkFfUFJFRF9URVNUKERTUFIyLCBUZXN0SW50cmFQcmVkMTYsIHZweF9kY19wcmVkaWN0
b3JfMTZ4MTZfZHNwcjIsIE5VTEwsCi0gICAgICAgICAgICAgICAgTlVMTCwgTlVMTCwgTlVMTCwg
dnB4X2hfcHJlZGljdG9yXzE2eDE2X2RzcHIyLCBOVUxMLCBOVUxMLCBOVUxMLAotICAgICAgICAg
ICAgICAgIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwpCitJTlRSQV9QUkVEX1RFU1QoRFNQUjIsIFRl
c3RJbnRyYVByZWQ0LCB2cHhfZGNfcHJlZGljdG9yXzR4NF9kc3ByMiwgbnVsbHB0ciwKKyAgICAg
ICAgICAgICAgICBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCB2cHhfaF9wcmVkaWN0b3JfNHg0
X2RzcHIyLCBudWxscHRyLAorICAgICAgICAgICAgICAgIG51bGxwdHIsIG51bGxwdHIsIG51bGxw
dHIsIG51bGxwdHIsIG51bGxwdHIsCisgICAgICAgICAgICAgICAgdnB4X3RtX3ByZWRpY3Rvcl80
eDRfZHNwcjIpCitJTlRSQV9QUkVEX1RFU1QoRFNQUjIsIFRlc3RJbnRyYVByZWQ4LCB2cHhfZGNf
cHJlZGljdG9yXzh4OF9kc3ByMiwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICBudWxscHRyLCBu
dWxscHRyLCBudWxscHRyLCB2cHhfaF9wcmVkaWN0b3JfOHg4X2RzcHIyLCBudWxscHRyLAorICAg
ICAgICAgICAgICAgIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIs
CisgICAgICAgICAgICAgICAgdnB4X3RtX3ByZWRpY3Rvcl84eDhfYykKK0lOVFJBX1BSRURfVEVT
VChEU1BSMiwgVGVzdEludHJhUHJlZDE2LCB2cHhfZGNfcHJlZGljdG9yXzE2eDE2X2RzcHIyLCBu
dWxscHRyLAorICAgICAgICAgICAgICAgIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIHZweF9o
X3ByZWRpY3Rvcl8xNngxNl9kc3ByMiwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICBudWxscHRy
LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyKQogI2VuZGlmICAv
LyBIQVZFX0RTUFIyCiAKICNpZiBIQVZFX05FT04KQEAgLTI2NSw3OCArMjcxLDc4IEBAIElOVFJB
X1BSRURfVEVTVChORU9OLCBUZXN0SW50cmFQcmVkNCwgdnB4X2RjX3ByZWRpY3Rvcl80eDRfbmVv
biwKICAgICAgICAgICAgICAgICB2cHhfZGNfbGVmdF9wcmVkaWN0b3JfNHg0X25lb24sIHZweF9k
Y190b3BfcHJlZGljdG9yXzR4NF9uZW9uLAogICAgICAgICAgICAgICAgIHZweF9kY18xMjhfcHJl
ZGljdG9yXzR4NF9uZW9uLCB2cHhfdl9wcmVkaWN0b3JfNHg0X25lb24sCiAgICAgICAgICAgICAg
ICAgdnB4X2hfcHJlZGljdG9yXzR4NF9uZW9uLCB2cHhfZDQ1X3ByZWRpY3Rvcl80eDRfbmVvbiwK
LSAgICAgICAgICAgICAgICB2cHhfZDEzNV9wcmVkaWN0b3JfNHg0X25lb24sIE5VTEwsIE5VTEws
IE5VTEwsIE5VTEwsCisgICAgICAgICAgICAgICAgdnB4X2QxMzVfcHJlZGljdG9yXzR4NF9uZW9u
LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLAogICAgICAgICAgICAgICAgIHZw
eF90bV9wcmVkaWN0b3JfNHg0X25lb24pCiBJTlRSQV9QUkVEX1RFU1QoTkVPTiwgVGVzdEludHJh
UHJlZDgsIHZweF9kY19wcmVkaWN0b3JfOHg4X25lb24sCiAgICAgICAgICAgICAgICAgdnB4X2Rj
X2xlZnRfcHJlZGljdG9yXzh4OF9uZW9uLCB2cHhfZGNfdG9wX3ByZWRpY3Rvcl84eDhfbmVvbiwK
ICAgICAgICAgICAgICAgICB2cHhfZGNfMTI4X3ByZWRpY3Rvcl84eDhfbmVvbiwgdnB4X3ZfcHJl
ZGljdG9yXzh4OF9uZW9uLAogICAgICAgICAgICAgICAgIHZweF9oX3ByZWRpY3Rvcl84eDhfbmVv
biwgdnB4X2Q0NV9wcmVkaWN0b3JfOHg4X25lb24sCi0gICAgICAgICAgICAgICAgdnB4X2QxMzVf
cHJlZGljdG9yXzh4OF9uZW9uLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLAorICAgICAgICAgICAg
ICAgIHZweF9kMTM1X3ByZWRpY3Rvcl84eDhfbmVvbiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0
ciwgbnVsbHB0ciwKICAgICAgICAgICAgICAgICB2cHhfdG1fcHJlZGljdG9yXzh4OF9uZW9uKQog
SU5UUkFfUFJFRF9URVNUKE5FT04sIFRlc3RJbnRyYVByZWQxNiwgdnB4X2RjX3ByZWRpY3Rvcl8x
NngxNl9uZW9uLAogICAgICAgICAgICAgICAgIHZweF9kY19sZWZ0X3ByZWRpY3Rvcl8xNngxNl9u
ZW9uLAogICAgICAgICAgICAgICAgIHZweF9kY190b3BfcHJlZGljdG9yXzE2eDE2X25lb24sCiAg
ICAgICAgICAgICAgICAgdnB4X2RjXzEyOF9wcmVkaWN0b3JfMTZ4MTZfbmVvbiwgdnB4X3ZfcHJl
ZGljdG9yXzE2eDE2X25lb24sCiAgICAgICAgICAgICAgICAgdnB4X2hfcHJlZGljdG9yXzE2eDE2
X25lb24sIHZweF9kNDVfcHJlZGljdG9yXzE2eDE2X25lb24sCi0gICAgICAgICAgICAgICAgdnB4
X2QxMzVfcHJlZGljdG9yXzE2eDE2X25lb24sIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsCi0gICAg
ICAgICAgICAgICAgdnB4X3RtX3ByZWRpY3Rvcl8xNngxNl9uZW9uKQorICAgICAgICAgICAgICAg
IHZweF9kMTM1X3ByZWRpY3Rvcl8xNngxNl9uZW9uLCBudWxscHRyLCBudWxscHRyLCBudWxscHRy
LAorICAgICAgICAgICAgICAgIG51bGxwdHIsIHZweF90bV9wcmVkaWN0b3JfMTZ4MTZfbmVvbikK
IElOVFJBX1BSRURfVEVTVChORU9OLCBUZXN0SW50cmFQcmVkMzIsIHZweF9kY19wcmVkaWN0b3Jf
MzJ4MzJfbmVvbiwKICAgICAgICAgICAgICAgICB2cHhfZGNfbGVmdF9wcmVkaWN0b3JfMzJ4MzJf
bmVvbiwKICAgICAgICAgICAgICAgICB2cHhfZGNfdG9wX3ByZWRpY3Rvcl8zMngzMl9uZW9uLAog
ICAgICAgICAgICAgICAgIHZweF9kY18xMjhfcHJlZGljdG9yXzMyeDMyX25lb24sIHZweF92X3By
ZWRpY3Rvcl8zMngzMl9uZW9uLAogICAgICAgICAgICAgICAgIHZweF9oX3ByZWRpY3Rvcl8zMngz
Ml9uZW9uLCB2cHhfZDQ1X3ByZWRpY3Rvcl8zMngzMl9uZW9uLAotICAgICAgICAgICAgICAgIHZw
eF9kMTM1X3ByZWRpY3Rvcl8zMngzMl9uZW9uLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLAotICAg
ICAgICAgICAgICAgIHZweF90bV9wcmVkaWN0b3JfMzJ4MzJfbmVvbikKKyAgICAgICAgICAgICAg
ICB2cHhfZDEzNV9wcmVkaWN0b3JfMzJ4MzJfbmVvbiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0
ciwKKyAgICAgICAgICAgICAgICBudWxscHRyLCB2cHhfdG1fcHJlZGljdG9yXzMyeDMyX25lb24p
CiAjZW5kaWYgIC8vIEhBVkVfTkVPTgogCiAjaWYgSEFWRV9NU0EKIElOVFJBX1BSRURfVEVTVChN
U0EsIFRlc3RJbnRyYVByZWQ0LCB2cHhfZGNfcHJlZGljdG9yXzR4NF9tc2EsCiAgICAgICAgICAg
ICAgICAgdnB4X2RjX2xlZnRfcHJlZGljdG9yXzR4NF9tc2EsIHZweF9kY190b3BfcHJlZGljdG9y
XzR4NF9tc2EsCiAgICAgICAgICAgICAgICAgdnB4X2RjXzEyOF9wcmVkaWN0b3JfNHg0X21zYSwg
dnB4X3ZfcHJlZGljdG9yXzR4NF9tc2EsCi0gICAgICAgICAgICAgICAgdnB4X2hfcHJlZGljdG9y
XzR4NF9tc2EsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsCi0gICAgICAgICAg
ICAgICAgdnB4X3RtX3ByZWRpY3Rvcl80eDRfbXNhKQorICAgICAgICAgICAgICAgIHZweF9oX3By
ZWRpY3Rvcl80eDRfbXNhLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLAorICAg
ICAgICAgICAgICAgIG51bGxwdHIsIG51bGxwdHIsIHZweF90bV9wcmVkaWN0b3JfNHg0X21zYSkK
IElOVFJBX1BSRURfVEVTVChNU0EsIFRlc3RJbnRyYVByZWQ4LCB2cHhfZGNfcHJlZGljdG9yXzh4
OF9tc2EsCiAgICAgICAgICAgICAgICAgdnB4X2RjX2xlZnRfcHJlZGljdG9yXzh4OF9tc2EsIHZw
eF9kY190b3BfcHJlZGljdG9yXzh4OF9tc2EsCiAgICAgICAgICAgICAgICAgdnB4X2RjXzEyOF9w
cmVkaWN0b3JfOHg4X21zYSwgdnB4X3ZfcHJlZGljdG9yXzh4OF9tc2EsCi0gICAgICAgICAgICAg
ICAgdnB4X2hfcHJlZGljdG9yXzh4OF9tc2EsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEws
IE5VTEwsCi0gICAgICAgICAgICAgICAgdnB4X3RtX3ByZWRpY3Rvcl84eDhfbXNhKQorICAgICAg
ICAgICAgICAgIHZweF9oX3ByZWRpY3Rvcl84eDhfbXNhLCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBudWxscHRyLAorICAgICAgICAgICAgICAgIG51bGxwdHIsIG51bGxwdHIsIHZweF90bV9w
cmVkaWN0b3JfOHg4X21zYSkKIElOVFJBX1BSRURfVEVTVChNU0EsIFRlc3RJbnRyYVByZWQxNiwg
dnB4X2RjX3ByZWRpY3Rvcl8xNngxNl9tc2EsCiAgICAgICAgICAgICAgICAgdnB4X2RjX2xlZnRf
cHJlZGljdG9yXzE2eDE2X21zYSwgdnB4X2RjX3RvcF9wcmVkaWN0b3JfMTZ4MTZfbXNhLAogICAg
ICAgICAgICAgICAgIHZweF9kY18xMjhfcHJlZGljdG9yXzE2eDE2X21zYSwgdnB4X3ZfcHJlZGlj
dG9yXzE2eDE2X21zYSwKLSAgICAgICAgICAgICAgICB2cHhfaF9wcmVkaWN0b3JfMTZ4MTZfbXNh
LCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLAotICAgICAgICAgICAgICAgIHZw
eF90bV9wcmVkaWN0b3JfMTZ4MTZfbXNhKQorICAgICAgICAgICAgICAgIHZweF9oX3ByZWRpY3Rv
cl8xNngxNl9tc2EsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsCisgICAgICAg
ICAgICAgICAgbnVsbHB0ciwgbnVsbHB0ciwgdnB4X3RtX3ByZWRpY3Rvcl8xNngxNl9tc2EpCiBJ
TlRSQV9QUkVEX1RFU1QoTVNBLCBUZXN0SW50cmFQcmVkMzIsIHZweF9kY19wcmVkaWN0b3JfMzJ4
MzJfbXNhLAogICAgICAgICAgICAgICAgIHZweF9kY19sZWZ0X3ByZWRpY3Rvcl8zMngzMl9tc2Es
IHZweF9kY190b3BfcHJlZGljdG9yXzMyeDMyX21zYSwKICAgICAgICAgICAgICAgICB2cHhfZGNf
MTI4X3ByZWRpY3Rvcl8zMngzMl9tc2EsIHZweF92X3ByZWRpY3Rvcl8zMngzMl9tc2EsCi0gICAg
ICAgICAgICAgICAgdnB4X2hfcHJlZGljdG9yXzMyeDMyX21zYSwgTlVMTCwgTlVMTCwgTlVMTCwg
TlVMTCwgTlVMTCwgTlVMTCwKLSAgICAgICAgICAgICAgICB2cHhfdG1fcHJlZGljdG9yXzMyeDMy
X21zYSkKKyAgICAgICAgICAgICAgICB2cHhfaF9wcmVkaWN0b3JfMzJ4MzJfbXNhLCBudWxscHRy
LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLAorICAgICAgICAgICAgICAgIG51bGxwdHIsIG51
bGxwdHIsIHZweF90bV9wcmVkaWN0b3JfMzJ4MzJfbXNhKQogI2VuZGlmICAvLyBIQVZFX01TQQog
CiAjaWYgSEFWRV9WU1gKIC8vIFRPRE8oY3JidWcuY29tL3dlYm0vMTUyMik6IEZpeCB0ZXN0IGZh
aWx1cmVzLgogI2lmIDAKLUlOVFJBX1BSRURfVEVTVChWU1gsIFRlc3RJbnRyYVByZWQ0LCBOVUxM
LCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLAotICAgICAgICAgICAgICAgIHZweF9oX3ByZWRpY3Rv
cl80eDRfdnN4LCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLAotICAgICAgICAg
ICAgICAgIHZweF90bV9wcmVkaWN0b3JfNHg0X3ZzeCkKLQotSU5UUkFfUFJFRF9URVNUKFZTWCwg
VGVzdEludHJhUHJlZDgsIHZweF9kY19wcmVkaWN0b3JfOHg4X3ZzeCwgTlVMTCwgTlVMTCwgTlVM
TCwKLSAgICAgICAgICAgICAgICBOVUxMLCB2cHhfaF9wcmVkaWN0b3JfOHg4X3ZzeCwgdnB4X2Q0
NV9wcmVkaWN0b3JfOHg4X3ZzeCwgTlVMTCwKLSAgICAgICAgICAgICAgICBOVUxMLCBOVUxMLCBO
VUxMLCB2cHhfZDYzX3ByZWRpY3Rvcl84eDhfdnN4LAotICAgICAgICAgICAgICAgIHZweF90bV9w
cmVkaWN0b3JfOHg4X3ZzeCkKK0lOVFJBX1BSRURfVEVTVChWU1gsIFRlc3RJbnRyYVByZWQ0LCBu
dWxscHRyLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLAorICAgICAgICAgICAgICAgIG51bGxw
dHIsIHZweF9oX3ByZWRpY3Rvcl80eDRfdnN4LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLAor
ICAgICAgICAgICAgICAgIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIHZweF90bV9wcmVkaWN0
b3JfNHg0X3ZzeCkKKworSU5UUkFfUFJFRF9URVNUKFZTWCwgVGVzdEludHJhUHJlZDgsIHZweF9k
Y19wcmVkaWN0b3JfOHg4X3ZzeCwgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICBu
dWxscHRyLCBudWxscHRyLCB2cHhfaF9wcmVkaWN0b3JfOHg4X3ZzeCwKKyAgICAgICAgICAgICAg
ICB2cHhfZDQ1X3ByZWRpY3Rvcl84eDhfdnN4LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBu
dWxscHRyLAorICAgICAgICAgICAgICAgIHZweF9kNjNfcHJlZGljdG9yXzh4OF92c3gsIHZweF90
bV9wcmVkaWN0b3JfOHg4X3ZzeCkKICNlbmRpZgogCiBJTlRSQV9QUkVEX1RFU1QoVlNYLCBUZXN0
SW50cmFQcmVkMTYsIHZweF9kY19wcmVkaWN0b3JfMTZ4MTZfdnN4LAogICAgICAgICAgICAgICAg
IHZweF9kY19sZWZ0X3ByZWRpY3Rvcl8xNngxNl92c3gsIHZweF9kY190b3BfcHJlZGljdG9yXzE2
eDE2X3ZzeCwKICAgICAgICAgICAgICAgICB2cHhfZGNfMTI4X3ByZWRpY3Rvcl8xNngxNl92c3gs
IHZweF92X3ByZWRpY3Rvcl8xNngxNl92c3gsCi0gICAgICAgICAgICAgICAgdnB4X2hfcHJlZGlj
dG9yXzE2eDE2X3ZzeCwgdnB4X2Q0NV9wcmVkaWN0b3JfMTZ4MTZfdnN4LCBOVUxMLAotICAgICAg
ICAgICAgICAgIE5VTEwsIE5VTEwsIE5VTEwsIHZweF9kNjNfcHJlZGljdG9yXzE2eDE2X3ZzeCwK
KyAgICAgICAgICAgICAgICB2cHhfaF9wcmVkaWN0b3JfMTZ4MTZfdnN4LCB2cHhfZDQ1X3ByZWRp
Y3Rvcl8xNngxNl92c3gsIG51bGxwdHIsCisgICAgICAgICAgICAgICAgbnVsbHB0ciwgbnVsbHB0
ciwgbnVsbHB0ciwgdnB4X2Q2M19wcmVkaWN0b3JfMTZ4MTZfdnN4LAogICAgICAgICAgICAgICAg
IHZweF90bV9wcmVkaWN0b3JfMTZ4MTZfdnN4KQogCiBJTlRSQV9QUkVEX1RFU1QoVlNYLCBUZXN0
SW50cmFQcmVkMzIsIHZweF9kY19wcmVkaWN0b3JfMzJ4MzJfdnN4LAogICAgICAgICAgICAgICAg
IHZweF9kY19sZWZ0X3ByZWRpY3Rvcl8zMngzMl92c3gsIHZweF9kY190b3BfcHJlZGljdG9yXzMy
eDMyX3ZzeCwKICAgICAgICAgICAgICAgICB2cHhfZGNfMTI4X3ByZWRpY3Rvcl8zMngzMl92c3gs
IHZweF92X3ByZWRpY3Rvcl8zMngzMl92c3gsCi0gICAgICAgICAgICAgICAgdnB4X2hfcHJlZGlj
dG9yXzMyeDMyX3ZzeCwgdnB4X2Q0NV9wcmVkaWN0b3JfMzJ4MzJfdnN4LCBOVUxMLAotICAgICAg
ICAgICAgICAgIE5VTEwsIE5VTEwsIE5VTEwsIHZweF9kNjNfcHJlZGljdG9yXzMyeDMyX3ZzeCwK
KyAgICAgICAgICAgICAgICB2cHhfaF9wcmVkaWN0b3JfMzJ4MzJfdnN4LCB2cHhfZDQ1X3ByZWRp
Y3Rvcl8zMngzMl92c3gsIG51bGxwdHIsCisgICAgICAgICAgICAgICAgbnVsbHB0ciwgbnVsbHB0
ciwgbnVsbHB0ciwgdnB4X2Q2M19wcmVkaWN0b3JfMzJ4MzJfdnN4LAogICAgICAgICAgICAgICAg
IHZweF90bV9wcmVkaWN0b3JfMzJ4MzJfdnN4KQogI2VuZGlmICAvLyBIQVZFX1ZTWAogCkBAIC0z
NjEsNyArMzY3LDcgQEAgdm9pZCBUZXN0SGlnaGJkSW50cmFQcmVkKGNvbnN0IGNoYXIgbmFtZVtd
LCBWcHhIaWdoYmRQcmVkRnVuYyBjb25zdCAqcHJlZF9mdW5jcywKICAgaW50cmFfcHJlZF90ZXN0
X21lbS5Jbml0KGJsb2NrX3NpemUsIDEyKTsKIAogICBmb3IgKGludCBrID0gMDsgayA8IGtOdW1W
cDlJbnRyYVByZWRGdW5jczsgKytrKSB7Ci0gICAgaWYgKHByZWRfZnVuY3Nba10gPT0gTlVMTCkg
Y29udGludWU7CisgICAgaWYgKHByZWRfZnVuY3Nba10gPT0gbnVsbHB0cikgY29udGludWU7CiAg
ICAgbWVtY3B5KGludHJhX3ByZWRfdGVzdF9tZW0uc3JjLCBpbnRyYV9wcmVkX3Rlc3RfbWVtLnJl
Zl9zcmMsCiAgICAgICAgICAgIHNpemVvZihpbnRyYV9wcmVkX3Rlc3RfbWVtLnNyYykpOwogICAg
IHZweF91c2VjX3RpbWVyIHRpbWVyOwpAQCAtNDg3LDE5ICs0OTMsMTcgQEAgSElHSEJEX0lOVFJB
X1BSRURfVEVTVCgKICAgICBTU0UyLCBUZXN0SGlnaGJkSW50cmFQcmVkNCwgdnB4X2hpZ2hiZF9k
Y19wcmVkaWN0b3JfNHg0X3NzZTIsCiAgICAgdnB4X2hpZ2hiZF9kY19sZWZ0X3ByZWRpY3Rvcl80
eDRfc3NlMiwgdnB4X2hpZ2hiZF9kY190b3BfcHJlZGljdG9yXzR4NF9zc2UyLAogICAgIHZweF9o
aWdoYmRfZGNfMTI4X3ByZWRpY3Rvcl80eDRfc3NlMiwgdnB4X2hpZ2hiZF92X3ByZWRpY3Rvcl80
eDRfc3NlMiwKLSAgICB2cHhfaGlnaGJkX2hfcHJlZGljdG9yXzR4NF9zc2UyLCBOVUxMLCB2cHhf
aGlnaGJkX2QxMzVfcHJlZGljdG9yXzR4NF9zc2UyLAotICAgIHZweF9oaWdoYmRfZDExN19wcmVk
aWN0b3JfNHg0X3NzZTIsIHZweF9oaWdoYmRfZDE1M19wcmVkaWN0b3JfNHg0X3NzZTIsCi0gICAg
dnB4X2hpZ2hiZF9kMjA3X3ByZWRpY3Rvcl80eDRfc3NlMiwgdnB4X2hpZ2hiZF9kNjNfcHJlZGlj
dG9yXzR4NF9zc2UyLAotICAgIHZweF9oaWdoYmRfdG1fcHJlZGljdG9yXzR4NF9jKQotCi1ISUdI
QkRfSU5UUkFfUFJFRF9URVNUKFNTRTIsIFRlc3RIaWdoYmRJbnRyYVByZWQ4LAotICAgICAgICAg
ICAgICAgICAgICAgICB2cHhfaGlnaGJkX2RjX3ByZWRpY3Rvcl84eDhfc3NlMiwKLSAgICAgICAg
ICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9kY19sZWZ0X3ByZWRpY3Rvcl84eDhfc3NlMiwKLSAg
ICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9kY190b3BfcHJlZGljdG9yXzh4OF9zc2Uy
LAotICAgICAgICAgICAgICAgICAgICAgICB2cHhfaGlnaGJkX2RjXzEyOF9wcmVkaWN0b3JfOHg4
X3NzZTIsCi0gICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfdl9wcmVkaWN0b3JfOHg4
X3NzZTIsCi0gICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfaF9wcmVkaWN0b3JfOHg4
X3NzZTIsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsCi0gICAgICAgICAgICAgICAgICAgICAgIE5V
TEwsIE5VTEwsIHZweF9oaWdoYmRfdG1fcHJlZGljdG9yXzh4OF9zc2UyKQorICAgIHZweF9oaWdo
YmRfaF9wcmVkaWN0b3JfNHg0X3NzZTIsIG51bGxwdHIsCisgICAgdnB4X2hpZ2hiZF9kMTM1X3By
ZWRpY3Rvcl80eDRfc3NlMiwgdnB4X2hpZ2hiZF9kMTE3X3ByZWRpY3Rvcl80eDRfc3NlMiwKKyAg
ICB2cHhfaGlnaGJkX2QxNTNfcHJlZGljdG9yXzR4NF9zc2UyLCB2cHhfaGlnaGJkX2QyMDdfcHJl
ZGljdG9yXzR4NF9zc2UyLAorICAgIHZweF9oaWdoYmRfZDYzX3ByZWRpY3Rvcl80eDRfc3NlMiwg
dnB4X2hpZ2hiZF90bV9wcmVkaWN0b3JfNHg0X2MpCisKK0hJR0hCRF9JTlRSQV9QUkVEX1RFU1Qo
CisgICAgU1NFMiwgVGVzdEhpZ2hiZEludHJhUHJlZDgsIHZweF9oaWdoYmRfZGNfcHJlZGljdG9y
Xzh4OF9zc2UyLAorICAgIHZweF9oaWdoYmRfZGNfbGVmdF9wcmVkaWN0b3JfOHg4X3NzZTIsIHZw
eF9oaWdoYmRfZGNfdG9wX3ByZWRpY3Rvcl84eDhfc3NlMiwKKyAgICB2cHhfaGlnaGJkX2RjXzEy
OF9wcmVkaWN0b3JfOHg4X3NzZTIsIHZweF9oaWdoYmRfdl9wcmVkaWN0b3JfOHg4X3NzZTIsCisg
ICAgdnB4X2hpZ2hiZF9oX3ByZWRpY3Rvcl84eDhfc3NlMiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVs
bHB0ciwgbnVsbHB0ciwKKyAgICBudWxscHRyLCBudWxscHRyLCB2cHhfaGlnaGJkX3RtX3ByZWRp
Y3Rvcl84eDhfc3NlMikKIAogSElHSEJEX0lOVFJBX1BSRURfVEVTVChTU0UyLCBUZXN0SGlnaGJk
SW50cmFQcmVkMTYsCiAgICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfZGNfcHJlZGlj
dG9yXzE2eDE2X3NzZTIsCkBAIC01MDcsOCArNTExLDkgQEAgSElHSEJEX0lOVFJBX1BSRURfVEVT
VChTU0UyLCBUZXN0SGlnaGJkSW50cmFQcmVkMTYsCiAgICAgICAgICAgICAgICAgICAgICAgIHZw
eF9oaWdoYmRfZGNfdG9wX3ByZWRpY3Rvcl8xNngxNl9zc2UyLAogICAgICAgICAgICAgICAgICAg
ICAgICB2cHhfaGlnaGJkX2RjXzEyOF9wcmVkaWN0b3JfMTZ4MTZfc3NlMiwKICAgICAgICAgICAg
ICAgICAgICAgICAgdnB4X2hpZ2hiZF92X3ByZWRpY3Rvcl8xNngxNl9zc2UyLAotICAgICAgICAg
ICAgICAgICAgICAgICB2cHhfaGlnaGJkX2hfcHJlZGljdG9yXzE2eDE2X3NzZTIsIE5VTEwsIE5V
TEwsIE5VTEwsCi0gICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE5VTEwsIE5VTEwsIHZweF9o
aWdoYmRfdG1fcHJlZGljdG9yXzE2eDE2X3NzZTIpCisgICAgICAgICAgICAgICAgICAgICAgIHZw
eF9oaWdoYmRfaF9wcmVkaWN0b3JfMTZ4MTZfc3NlMiwgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAg
ICAgICAgICAgICAgICAgICAgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwKKyAg
ICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF90bV9wcmVkaWN0b3JfMTZ4MTZfc3NlMikK
IAogSElHSEJEX0lOVFJBX1BSRURfVEVTVChTU0UyLCBUZXN0SGlnaGJkSW50cmFQcmVkMzIsCiAg
ICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfZGNfcHJlZGljdG9yXzMyeDMyX3NzZTIs
CkBAIC01MTYsMzUgKzUyMSw0MCBAQCBISUdIQkRfSU5UUkFfUFJFRF9URVNUKFNTRTIsIFRlc3RI
aWdoYmRJbnRyYVByZWQzMiwKICAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9kY190
b3BfcHJlZGljdG9yXzMyeDMyX3NzZTIsCiAgICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdo
YmRfZGNfMTI4X3ByZWRpY3Rvcl8zMngzMl9zc2UyLAogICAgICAgICAgICAgICAgICAgICAgICB2
cHhfaGlnaGJkX3ZfcHJlZGljdG9yXzMyeDMyX3NzZTIsCi0gICAgICAgICAgICAgICAgICAgICAg
IHZweF9oaWdoYmRfaF9wcmVkaWN0b3JfMzJ4MzJfc3NlMiwgTlVMTCwgTlVMTCwgTlVMTCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgTlVMTCwgTlVMTCwgdnB4X2hpZ2hiZF90bV9wcmVk
aWN0b3JfMzJ4MzJfc3NlMikKKyAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9oX3By
ZWRpY3Rvcl8zMngzMl9zc2UyLCBudWxscHRyLCBudWxscHRyLAorICAgICAgICAgICAgICAgICAg
ICAgICBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLAorICAgICAgICAgICAgICAg
ICAgICAgICB2cHhfaGlnaGJkX3RtX3ByZWRpY3Rvcl8zMngzMl9zc2UyKQogI2VuZGlmICAvLyBI
QVZFX1NTRTIKIAogI2lmIEhBVkVfU1NTRTMKLUhJR0hCRF9JTlRSQV9QUkVEX1RFU1QoU1NTRTMs
IFRlc3RIaWdoYmRJbnRyYVByZWQ0LCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLAotICAgICAgICAg
ICAgICAgICAgICAgICBOVUxMLCBOVUxMLCB2cHhfaGlnaGJkX2Q0NV9wcmVkaWN0b3JfNHg0X3Nz
c2UzLCBOVUxMLAotICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCBOVUxMLCBOVUxMLCBOVUxM
LCBOVUxMKQotSElHSEJEX0lOVFJBX1BSRURfVEVTVChTU1NFMywgVGVzdEhpZ2hiZEludHJhUHJl
ZDgsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsCi0gICAgICAgICAgICAgICAgICAgICAgIE5VTEws
IE5VTEwsIHZweF9oaWdoYmRfZDQ1X3ByZWRpY3Rvcl84eDhfc3NzZTMsCitISUdIQkRfSU5UUkFf
UFJFRF9URVNUKFNTU0UzLCBUZXN0SGlnaGJkSW50cmFQcmVkNCwgbnVsbHB0ciwgbnVsbHB0ciwg
bnVsbHB0ciwKKyAgICAgICAgICAgICAgICAgICAgICAgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0
ciwKKyAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9kNDVfcHJlZGljdG9yXzR4NF9z
c3NlMywgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICAgICAgICAgbnVsbHB0ciwg
bnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0cikKK0hJR0hCRF9JTlRSQV9QUkVEX1RFU1QoU1NTRTMs
IFRlc3RIaWdoYmRJbnRyYVByZWQ4LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLAorICAgICAg
ICAgICAgICAgICAgICAgICBudWxscHRyLCBudWxscHRyLCBudWxscHRyLAorICAgICAgICAgICAg
ICAgICAgICAgICB2cHhfaGlnaGJkX2Q0NV9wcmVkaWN0b3JfOHg4X3Nzc2UzLAogICAgICAgICAg
ICAgICAgICAgICAgICB2cHhfaGlnaGJkX2QxMzVfcHJlZGljdG9yXzh4OF9zc3NlMywKICAgICAg
ICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9kMTE3X3ByZWRpY3Rvcl84eDhfc3NzZTMsCiAg
ICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfZDE1M19wcmVkaWN0b3JfOHg4X3Nzc2Uz
LAogICAgICAgICAgICAgICAgICAgICAgICB2cHhfaGlnaGJkX2QyMDdfcHJlZGljdG9yXzh4OF9z
c3NlMywKLSAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9kNjNfcHJlZGljdG9yXzh4
OF9zc3NlMywgTlVMTCkKLUhJR0hCRF9JTlRSQV9QUkVEX1RFU1QoU1NTRTMsIFRlc3RIaWdoYmRJ
bnRyYVByZWQxNiwgTlVMTCwgTlVMTCwgTlVMTCwgTlVMTCwKLSAgICAgICAgICAgICAgICAgICAg
ICAgTlVMTCwgTlVMTCwgdnB4X2hpZ2hiZF9kNDVfcHJlZGljdG9yXzE2eDE2X3Nzc2UzLAorICAg
ICAgICAgICAgICAgICAgICAgICB2cHhfaGlnaGJkX2Q2M19wcmVkaWN0b3JfOHg4X3Nzc2UzLCBu
dWxscHRyKQorSElHSEJEX0lOVFJBX1BSRURfVEVTVChTU1NFMywgVGVzdEhpZ2hiZEludHJhUHJl
ZDE2LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLAorICAgICAgICAgICAgICAgICAgICAgICBu
dWxscHRyLCBudWxscHRyLCBudWxscHRyLAorICAgICAgICAgICAgICAgICAgICAgICB2cHhfaGln
aGJkX2Q0NV9wcmVkaWN0b3JfMTZ4MTZfc3NzZTMsCiAgICAgICAgICAgICAgICAgICAgICAgIHZw
eF9oaWdoYmRfZDEzNV9wcmVkaWN0b3JfMTZ4MTZfc3NzZTMsCiAgICAgICAgICAgICAgICAgICAg
ICAgIHZweF9oaWdoYmRfZDExN19wcmVkaWN0b3JfMTZ4MTZfc3NzZTMsCiAgICAgICAgICAgICAg
ICAgICAgICAgIHZweF9oaWdoYmRfZDE1M19wcmVkaWN0b3JfMTZ4MTZfc3NzZTMsCiAgICAgICAg
ICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfZDIwN19wcmVkaWN0b3JfMTZ4MTZfc3NzZTMsCi0g
ICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfZDYzX3ByZWRpY3Rvcl8xNngxNl9zc3Nl
MywgTlVMTCkKLUhJR0hCRF9JTlRSQV9QUkVEX1RFU1QoU1NTRTMsIFRlc3RIaWdoYmRJbnRyYVBy
ZWQzMiwgTlVMTCwgTlVMTCwgTlVMTCwgTlVMTCwKLSAgICAgICAgICAgICAgICAgICAgICAgTlVM
TCwgTlVMTCwgdnB4X2hpZ2hiZF9kNDVfcHJlZGljdG9yXzMyeDMyX3Nzc2UzLAorICAgICAgICAg
ICAgICAgICAgICAgICB2cHhfaGlnaGJkX2Q2M19wcmVkaWN0b3JfMTZ4MTZfc3NzZTMsIG51bGxw
dHIpCitISUdIQkRfSU5UUkFfUFJFRF9URVNUKFNTU0UzLCBUZXN0SGlnaGJkSW50cmFQcmVkMzIs
IG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsCisgICAgICAgICAgICAgICAgICAgICAgIG51bGxw
dHIsIG51bGxwdHIsIG51bGxwdHIsCisgICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRf
ZDQ1X3ByZWRpY3Rvcl8zMngzMl9zc3NlMywKICAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hp
Z2hiZF9kMTM1X3ByZWRpY3Rvcl8zMngzMl9zc3NlMywKICAgICAgICAgICAgICAgICAgICAgICAg
dnB4X2hpZ2hiZF9kMTE3X3ByZWRpY3Rvcl8zMngzMl9zc3NlMywKICAgICAgICAgICAgICAgICAg
ICAgICAgdnB4X2hpZ2hiZF9kMTUzX3ByZWRpY3Rvcl8zMngzMl9zc3NlMywKICAgICAgICAgICAg
ICAgICAgICAgICAgdnB4X2hpZ2hiZF9kMjA3X3ByZWRpY3Rvcl8zMngzMl9zc3NlMywKLSAgICAg
ICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9kNjNfcHJlZGljdG9yXzMyeDMyX3Nzc2UzLCBO
VUxMKQorICAgICAgICAgICAgICAgICAgICAgICB2cHhfaGlnaGJkX2Q2M19wcmVkaWN0b3JfMzJ4
MzJfc3NzZTMsIG51bGxwdHIpCiAjZW5kaWYgIC8vIEhBVkVfU1NTRTMKIAogI2lmIEhBVkVfTkVP
TgpAQCAtNTUzLDE0ICs1NjMsMTQgQEAgSElHSEJEX0lOVFJBX1BSRURfVEVTVCgKICAgICB2cHhf
aGlnaGJkX2RjX2xlZnRfcHJlZGljdG9yXzR4NF9uZW9uLCB2cHhfaGlnaGJkX2RjX3RvcF9wcmVk
aWN0b3JfNHg0X25lb24sCiAgICAgdnB4X2hpZ2hiZF9kY18xMjhfcHJlZGljdG9yXzR4NF9uZW9u
LCB2cHhfaGlnaGJkX3ZfcHJlZGljdG9yXzR4NF9uZW9uLAogICAgIHZweF9oaWdoYmRfaF9wcmVk
aWN0b3JfNHg0X25lb24sIHZweF9oaWdoYmRfZDQ1X3ByZWRpY3Rvcl80eDRfbmVvbiwKLSAgICB2
cHhfaGlnaGJkX2QxMzVfcHJlZGljdG9yXzR4NF9uZW9uLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxM
LAorICAgIHZweF9oaWdoYmRfZDEzNV9wcmVkaWN0b3JfNHg0X25lb24sIG51bGxwdHIsIG51bGxw
dHIsIG51bGxwdHIsIG51bGxwdHIsCiAgICAgdnB4X2hpZ2hiZF90bV9wcmVkaWN0b3JfNHg0X25l
b24pCiBISUdIQkRfSU5UUkFfUFJFRF9URVNUKAogICAgIE5FT04sIFRlc3RIaWdoYmRJbnRyYVBy
ZWQ4LCB2cHhfaGlnaGJkX2RjX3ByZWRpY3Rvcl84eDhfbmVvbiwKICAgICB2cHhfaGlnaGJkX2Rj
X2xlZnRfcHJlZGljdG9yXzh4OF9uZW9uLCB2cHhfaGlnaGJkX2RjX3RvcF9wcmVkaWN0b3JfOHg4
X25lb24sCiAgICAgdnB4X2hpZ2hiZF9kY18xMjhfcHJlZGljdG9yXzh4OF9uZW9uLCB2cHhfaGln
aGJkX3ZfcHJlZGljdG9yXzh4OF9uZW9uLAogICAgIHZweF9oaWdoYmRfaF9wcmVkaWN0b3JfOHg4
X25lb24sIHZweF9oaWdoYmRfZDQ1X3ByZWRpY3Rvcl84eDhfbmVvbiwKLSAgICB2cHhfaGlnaGJk
X2QxMzVfcHJlZGljdG9yXzh4OF9uZW9uLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLAorICAgIHZw
eF9oaWdoYmRfZDEzNV9wcmVkaWN0b3JfOHg4X25lb24sIG51bGxwdHIsIG51bGxwdHIsIG51bGxw
dHIsIG51bGxwdHIsCiAgICAgdnB4X2hpZ2hiZF90bV9wcmVkaWN0b3JfOHg4X25lb24pCiBISUdI
QkRfSU5UUkFfUFJFRF9URVNUKE5FT04sIFRlc3RIaWdoYmRJbnRyYVByZWQxNiwKICAgICAgICAg
ICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9kY19wcmVkaWN0b3JfMTZ4MTZfbmVvbiwKQEAgLTU3
MCw4ICs1ODAsOCBAQCBISUdIQkRfSU5UUkFfUFJFRF9URVNUKE5FT04sIFRlc3RIaWdoYmRJbnRy
YVByZWQxNiwKICAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF92X3ByZWRpY3Rvcl8x
NngxNl9uZW9uLAogICAgICAgICAgICAgICAgICAgICAgICB2cHhfaGlnaGJkX2hfcHJlZGljdG9y
XzE2eDE2X25lb24sCiAgICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfZDQ1X3ByZWRp
Y3Rvcl8xNngxNl9uZW9uLAotICAgICAgICAgICAgICAgICAgICAgICB2cHhfaGlnaGJkX2QxMzVf
cHJlZGljdG9yXzE2eDE2X25lb24sIE5VTEwsIE5VTEwsIE5VTEwsCi0gICAgICAgICAgICAgICAg
ICAgICAgIE5VTEwsIHZweF9oaWdoYmRfdG1fcHJlZGljdG9yXzE2eDE2X25lb24pCisgICAgICAg
ICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfZDEzNV9wcmVkaWN0b3JfMTZ4MTZfbmVvbiwgbnVs
bHB0ciwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICAgICAgICAgbnVsbHB0ciwgbnVsbHB0ciwg
dnB4X2hpZ2hiZF90bV9wcmVkaWN0b3JfMTZ4MTZfbmVvbikKIEhJR0hCRF9JTlRSQV9QUkVEX1RF
U1QoTkVPTiwgVGVzdEhpZ2hiZEludHJhUHJlZDMyLAogICAgICAgICAgICAgICAgICAgICAgICB2
cHhfaGlnaGJkX2RjX3ByZWRpY3Rvcl8zMngzMl9uZW9uLAogICAgICAgICAgICAgICAgICAgICAg
ICB2cHhfaGlnaGJkX2RjX2xlZnRfcHJlZGljdG9yXzMyeDMyX25lb24sCkBAIC01ODAsOCArNTkw
LDggQEAgSElHSEJEX0lOVFJBX1BSRURfVEVTVChORU9OLCBUZXN0SGlnaGJkSW50cmFQcmVkMzIs
CiAgICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfdl9wcmVkaWN0b3JfMzJ4MzJfbmVv
biwKICAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9oX3ByZWRpY3Rvcl8zMngzMl9u
ZW9uLAogICAgICAgICAgICAgICAgICAgICAgICB2cHhfaGlnaGJkX2Q0NV9wcmVkaWN0b3JfMzJ4
MzJfbmVvbiwKLSAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9kMTM1X3ByZWRpY3Rv
cl8zMngzMl9uZW9uLCBOVUxMLCBOVUxMLCBOVUxMLAotICAgICAgICAgICAgICAgICAgICAgICBO
VUxMLCB2cHhfaGlnaGJkX3RtX3ByZWRpY3Rvcl8zMngzMl9uZW9uKQorICAgICAgICAgICAgICAg
ICAgICAgICB2cHhfaGlnaGJkX2QxMzVfcHJlZGljdG9yXzMyeDMyX25lb24sIG51bGxwdHIsIG51
bGxwdHIsCisgICAgICAgICAgICAgICAgICAgICAgIG51bGxwdHIsIG51bGxwdHIsIHZweF9oaWdo
YmRfdG1fcHJlZGljdG9yXzMyeDMyX25lb24pCiAjZW5kaWYgIC8vIEhBVkVfTkVPTgogCiAjZW5k
aWYgIC8vIENPTkZJR19WUDlfSElHSEJJVERFUFRICmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rl
c3QvdGVzdF92ZWN0b3JfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC90ZXN0X3ZlY3Rvcl90ZXN0
LmNjCmluZGV4IDVhOTczNzEyMmY2ZjY1ZTZlNWRhMDRkY2ExZGRiOGU0N2MwM2YxOTYuLmNhOTkw
ZjRkZDRlMDc1NzBmNzQ1NjFkNGVmOWEwMWY4ODFkYmQ4NDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC90ZXN0X3ZlY3Rvcl90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC90ZXN0X3Zl
Y3Rvcl90ZXN0LmNjCkBAIC00MCw3ICs0MCw3IEBAIHR5cGVkZWYgc3RkOjp0dXBsZTxpbnQsIGlu
dCwgY29uc3QgY2hhciAqPiBEZWNvZGVQYXJhbTsKIGNsYXNzIFRlc3RWZWN0b3JUZXN0IDogcHVi
bGljIDo6bGlidnB4X3Rlc3Q6OkRlY29kZXJUZXN0LAogICAgICAgICAgICAgICAgICAgICAgICBw
dWJsaWMgOjpsaWJ2cHhfdGVzdDo6Q29kZWNUZXN0V2l0aFBhcmFtPERlY29kZVBhcmFtPiB7CiAg
cHJvdGVjdGVkOgotICBUZXN0VmVjdG9yVGVzdCgpIDogRGVjb2RlclRlc3QoR0VUX1BBUkFNKDAp
KSwgbWQ1X2ZpbGVfKE5VTEwpIHsKKyAgVGVzdFZlY3RvclRlc3QoKSA6IERlY29kZXJUZXN0KEdF
VF9QQVJBTSgwKSksIG1kNV9maWxlXyhudWxscHRyKSB7CiAjaWYgQ09ORklHX1ZQOV9ERUNPREVS
CiAgICAgcmVzaXplX2NsaXBzXy5pbnNlcnQoOjpsaWJ2cHhfdGVzdDo6a1ZQOVRlc3RWZWN0b3Jz
UmVzaXplLAogICAgICAgICAgICAgICAgICAgICAgICAgIDo6bGlidnB4X3Rlc3Q6OmtWUDlUZXN0
VmVjdG9yc1Jlc2l6ZSArCkBAIC01NCw3ICs1NCw3IEBAIGNsYXNzIFRlc3RWZWN0b3JUZXN0IDog
cHVibGljIDo6bGlidnB4X3Rlc3Q6OkRlY29kZXJUZXN0LAogCiAgIHZvaWQgT3Blbk1ENUZpbGUo
Y29uc3Qgc3RkOjpzdHJpbmcgJm1kNV9maWxlX25hbWVfKSB7CiAgICAgbWQ1X2ZpbGVfID0gbGli
dnB4X3Rlc3Q6Ok9wZW5UZXN0RGF0YUZpbGUobWQ1X2ZpbGVfbmFtZV8pOwotICAgIEFTU0VSVF9U
UlVFKG1kNV9maWxlXyAhPSBOVUxMKQorICAgIEFTU0VSVF9ORShtZDVfZmlsZV8sIG51bGxwdHIp
CiAgICAgICAgIDw8ICJNZDUgZmlsZSBvcGVuIGZhaWxlZC4gRmlsZW5hbWU6ICIgPDwgbWQ1X2Zp
bGVfbmFtZV87CiAgIH0KIApAQCAtNzksNyArNzksNyBAQCBjbGFzcyBUZXN0VmVjdG9yVGVzdCA6
IHB1YmxpYyA6OmxpYnZweF90ZXN0OjpEZWNvZGVyVGVzdCwKIAogICB2aXJ0dWFsIHZvaWQgRGVj
b21wcmVzc2VkRnJhbWVIb29rKGNvbnN0IHZweF9pbWFnZV90ICZpbWcsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgaW50IGZyYW1lX251bWJlcikg
ewotICAgIEFTU0VSVF9UUlVFKG1kNV9maWxlXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUobWQ1
X2ZpbGVfLCBudWxscHRyKTsKICAgICBjaGFyIGV4cGVjdGVkX21kNVszM107CiAgICAgY2hhciBq
dW5rWzEyOF07CiAKQEAgLTEzNyw3ICsxMzcsNyBAQCBURVNUX1AoVGVzdFZlY3RvclRlc3QsIE1E
NU1hdGNoKSB7CiAgICAgcmV0dXJuOwogI2VuZGlmCiAgIH0KLSAgQVNTRVJUX1RSVUUodmlkZW8u
Z2V0KCkgIT0gTlVMTCk7CisgIEFTU0VSVF9ORSh2aWRlby5nZXQoKSwgbnVsbHB0cik7CiAgIHZp
ZGVvLT5Jbml0KCk7CiAKICAgLy8gQ29uc3RydWN0IG1kNSBmaWxlIG5hbWUuCkBAIC0xNTMsNyAr
MTUzLDcgQEAgVEVTVF9QKFRlc3RWZWN0b3JUZXN0LCBNRDVNYXRjaCkgewogfQogCiAjaWYgQ09O
RklHX1ZQOF9ERUNPREVSCi1WUDhfSU5TVEFOVElBVEVfVEVTVF9DQVNFKAorVlA4X0lOU1RBTlRJ
QVRFX1RFU1RfU1VJVEUoCiAgICAgVGVzdFZlY3RvclRlc3QsCiAgICAgOjp0ZXN0aW5nOjpDb21i
aW5lKAogICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcygxKSwgICAvLyBTaW5nbGUgdGhyZWFkLgpA
QCAtMTYzLDcgKzE2Myw3IEBAIFZQOF9JTlNUQU5USUFURV9URVNUX0NBU0UoCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGxpYnZweF90ZXN0OjprTnVtVlA4VGVzdFZlY3RvcnMpKSk7
CiAKIC8vIFRlc3QgVlA4IGRlY29kZSBpbiB3aXRoIGRpZmZlcmVudCBudW1iZXJzIG9mIHRocmVh
ZHMuCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgK
ICAgICBWUDhNdWx0aVRocmVhZGVkLCBUZXN0VmVjdG9yVGVzdCwKICAgICA6OnRlc3Rpbmc6OkNv
bWJpbmUoCiAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKApAQCAtMTc4LDcgKzE3OCw3IEBAIElO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBDT05GSUdfVlA4X0RFQ09ERVIKIAog
I2lmIENPTkZJR19WUDlfREVDT0RFUgotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRSgKK1ZQOV9J
TlNUQU5USUFURV9URVNUX1NVSVRFKAogICAgIFRlc3RWZWN0b3JUZXN0LAogICAgIDo6dGVzdGlu
Zzo6Q29tYmluZSgKICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoMSksICAgLy8gU2luZ2xlIHRo
cmVhZC4KQEAgLTE4Nyw3ICsxODcsNyBAQCBWUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnZweF90ZXN0OjprVlA5VGVzdFZlY3RvcnMgKwog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ2cHhfdGVzdDo6a051bVZQOVRlc3RW
ZWN0b3JzKSkpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1Rf
U1VJVEVfUCgKICAgICBWUDlNdWx0aVRocmVhZGVkLCBUZXN0VmVjdG9yVGVzdCwKICAgICA6OnRl
c3Rpbmc6OkNvbWJpbmUoCiAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKApkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90ZXN0L3RpbGVfaW5kZXBlbmRlbmNlX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rl
c3QvdGlsZV9pbmRlcGVuZGVuY2VfdGVzdC5jYwppbmRleCAxZDEwMjBhOWQzZTFiNWE5Mjc1MDlm
MmU2MDI2ZTgwMTEyYTZkYjQ3Li5kOTJjMTNmODhlZGNlNWE2N2MyYjU3Y2I3YjI5Y2I4ZmJhZmRj
ZjU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdGlsZV9pbmRlcGVuZGVuY2VfdGVzdC5j
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdGlsZV9pbmRlcGVuZGVuY2VfdGVzdC5jYwpAQCAtMTAw
LDUgKzEwMCw1IEBAIFRFU1RfUChUaWxlSW5kZXBlbmRlbmNlVGVzdCwgTUQ1TWF0Y2gpIHsKICAg
QVNTRVJUX1NUUkVRKG1kNV9md19zdHIsIG1kNV9pbnZfc3RyKTsKIH0KIAotVlA5X0lOU1RBTlRJ
QVRFX1RFU1RfQ0FTRShUaWxlSW5kZXBlbmRlbmNlVGVzdCwgOjp0ZXN0aW5nOjpSYW5nZSgwLCAy
LCAxKSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURShUaWxlSW5kZXBlbmRlbmNlVGVzdCwg
Ojp0ZXN0aW5nOjpSYW5nZSgwLCAyLCAxKSk7CiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdGVzdC90aW1lc3RhbXBfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC90aW1l
c3RhbXBfdGVzdC5jYwppbmRleCA0MWMxOTI4ODc1ZmNjY2Q0MmFkN2QwN2Y3NmM4Mjg1Y2MxYWNj
MDQ3Li42NDVhOWYyZmY4YTlmNmYxYThlOWQxMjNkYjliM2U2ZmI2NGFlNDk1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rlc3QvdGltZXN0YW1wX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0
L3RpbWVzdGFtcF90ZXN0LmNjCkBAIC05NCw4ICs5NCw4IEBAIFRFU1RfUChUaW1lc3RhbXBUZXN0
LCBUZXN0VnB4Um9sbG92ZXIpIHsKICAgQVNTRVJUX05PX0ZBVEFMX0ZBSUxVUkUoUnVuTG9vcCgm
dmlkZW8pKTsKIH0KIAotVlA4X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShUaW1lc3RhbXBUZXN0LAot
ICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0
OjprVHdvUGFzc0dvb2QpKTsKLVZQOV9JTlNUQU5USUFURV9URVNUX0NBU0UoVGltZXN0YW1wVGVz
dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2cHhf
dGVzdDo6a1R3b1Bhc3NHb29kKSk7CitWUDhfSU5TVEFOVElBVEVfVEVTVF9TVUlURShUaW1lc3Rh
bXBUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoOjps
aWJ2cHhfdGVzdDo6a1R3b1Bhc3NHb29kKSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURShU
aW1lc3RhbXBUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXMoOjpsaWJ2cHhfdGVzdDo6a1R3b1Bhc3NHb29kKSk7CiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGVzdC90d29wYXNzX2VuY29kZXIuc2ggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rl
c3QvdHdvcGFzc19lbmNvZGVyLnNoCmluZGV4IGVhZWFhYmRmZDBjMDc0NjU4NDdkZTkxYjg3NTdl
NmQ2NDg4ZTI0YzQuLjY5ZWNiYWNkMGM0Nzk5NTkyODEyODc0ZDIyNDkwMDFhNjBlMDQ5MmQgMTAw
NzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC90d29wYXNzX2VuY29kZXIuc2gKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC90ZXN0L3R3b3Bhc3NfZW5jb2Rlci5zaApAQCAtMzcsNyArMzcsNyBAQCB0d29wYXNzX2Vu
Y29kZXIoKSB7CiAKICAgZXZhbCAiJHtWUFhfVEVTVF9QUkVGSVh9IiAiJHtlbmNvZGVyfSIgIiR7
Y29kZWN9IiAiJHtZVVZfUkFXX0lOUFVUX1dJRFRIfSIgXAogICAgICAgIiR7WVVWX1JBV19JTlBV
VF9IRUlHSFR9IiAiJHtZVVZfUkFXX0lOUFVUfSIgIiR7b3V0cHV0X2ZpbGV9IiAxMDAgXAotICAg
ICAgJHtkZXZudWxsfQorICAgICAgJHtkZXZudWxsfSB8fCByZXR1cm4gMQogCiAgIFsgLWUgIiR7
b3V0cHV0X2ZpbGV9IiBdIHx8IHJldHVybiAxCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rl
c3QvdXNlcl9wcml2X3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdXNlcl9wcml2X3Rlc3QuY2MK
aW5kZXggN2JlYTc2YjBhOTRlN2JkZTVmNjQ5MDZkMmY5MTNiMzA5YzdkZTkyMi4uMjA3NDFmODI2
OGVhMGE5OTVhYjdiZDZlMmFkM2ExODg0ZTUwZjRjZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90
ZXN0L3VzZXJfcHJpdl90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC91c2VyX3ByaXZfdGVz
dC5jYwpAQCAtNTcsMTggKzU3LDE4IEBAIHN0cmluZyBEZWNvZGVGaWxlKGNvbnN0IHN0cmluZyAm
ZmlsZW5hbWUpIHsKICAgICB2b2lkICp1c2VyX3ByaXYgPSByZWludGVycHJldF9jYXN0PHZvaWQg
Kj4oJmZyYW1lX251bSk7CiAgICAgY29uc3QgdnB4X2NvZGVjX2Vycl90IHJlcyA9CiAgICAgICAg
IGRlY29kZXIuRGVjb2RlRnJhbWUodmlkZW8uY3hkYXRhKCksIHZpZGVvLmZyYW1lX3NpemUoKSwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnJhbWVfbnVtID09IDApID8gTlVMTCA6IHVz
ZXJfcHJpdik7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGZyYW1lX251bSA9PSAwKSA/
IG51bGxwdHIgOiB1c2VyX3ByaXYpOwogICAgIGlmIChyZXMgIT0gVlBYX0NPREVDX09LKSB7CiAg
ICAgICBFWFBFQ1RfRVEoVlBYX0NPREVDX09LLCByZXMpIDw8IGRlY29kZXIuRGVjb2RlRXJyb3Io
KTsKICAgICAgIGJyZWFrOwogICAgIH0KICAgICBsaWJ2cHhfdGVzdDo6RHhEYXRhSXRlcmF0b3Ig
ZGVjX2l0ZXIgPSBkZWNvZGVyLkdldER4RGF0YSgpOwotICAgIGNvbnN0IHZweF9pbWFnZV90ICpp
bWcgPSBOVUxMOworICAgIGNvbnN0IHZweF9pbWFnZV90ICppbWcgPSBudWxscHRyOwogCiAgICAg
Ly8gR2V0IGRlY29tcHJlc3NlZCBkYXRhLgogICAgIHdoaWxlICgoaW1nID0gZGVjX2l0ZXIuTmV4
dCgpKSkgewogICAgICAgaWYgKGZyYW1lX251bSA9PSAwKSB7Ci0gICAgICAgIENoZWNrVXNlclBy
aXZhdGVEYXRhKGltZy0+dXNlcl9wcml2LCBOVUxMKTsKKyAgICAgICAgQ2hlY2tVc2VyUHJpdmF0
ZURhdGEoaW1nLT51c2VyX3ByaXYsIG51bGxwdHIpOwogICAgICAgfSBlbHNlIHsKICAgICAgICAg
Q2hlY2tVc2VyUHJpdmF0ZURhdGEoaW1nLT51c2VyX3ByaXYsICZmcmFtZV9udW0pOwogCkBAIC03
OCw3ICs3OCw3IEBAIHN0cmluZyBEZWNvZGVGaWxlKGNvbnN0IHN0cmluZyAmZmlsZW5hbWUpIHsK
ICAgICAgICAgcmVmLmlkeCA9IHJuZC5SYW5kOCgpICUgMzsKICAgICAgICAgZGVjb2Rlci5Db250
cm9sKFZQOV9HRVRfUkVGRVJFTkNFLCAmcmVmKTsKIAotICAgICAgICBDaGVja1VzZXJQcml2YXRl
RGF0YShyZWYuaW1nLnVzZXJfcHJpdiwgTlVMTCk7CisgICAgICAgIENoZWNrVXNlclByaXZhdGVE
YXRhKHJlZi5pbWcudXNlcl9wcml2LCBudWxscHRyKTsKICAgICAgIH0KICAgICAgIG1kNS5BZGQo
aW1nKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdmFyaWFuY2VfdGVzdC5j
YyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGVzdC92YXJpYW5jZV90ZXN0LmNjCmluZGV4IGU5ZmEwM2M2ODBhMmYw
Nzc1YTdhNzdjOGQ3NGVjYzNmOWYxY2M5NTMuLjFiNzZiMjA0MTkyNTU5ZjBiZDEwNGU3ZDg3Mjc5
NDhlMWQ5NmUyZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92YXJpYW5jZV90ZXN0LmNj
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92YXJpYW5jZV90ZXN0LmNjCkBAIC0yNTMsNyArMjUzLDcg
QEAgdm9pZCBTdW1PZlNxdWFyZXNUZXN0OjpSZWZUZXN0KCkgewogCiB0ZW1wbGF0ZSA8dHlwZW5h
bWUgRnVuYz4KIHN0cnVjdCBUZXN0UGFyYW1zIHsKLSAgVGVzdFBhcmFtcyhpbnQgbG9nMncgPSAw
LCBpbnQgbG9nMmggPSAwLCBGdW5jIGZ1bmN0aW9uID0gTlVMTCwKKyAgVGVzdFBhcmFtcyhpbnQg
bG9nMncgPSAwLCBpbnQgbG9nMmggPSAwLCBGdW5jIGZ1bmN0aW9uID0gbnVsbHB0ciwKICAgICAg
ICAgICAgICBpbnQgYml0X2RlcHRoX3ZhbHVlID0gMCkKICAgICAgIDogbG9nMndpZHRoKGxvZzJ3
KSwgbG9nMmhlaWdodChsb2cyaCksIGZ1bmMoZnVuY3Rpb24pIHsKICAgICB1c2VfaGlnaF9iaXRf
ZGVwdGggPSAoYml0X2RlcHRoX3ZhbHVlID4gMCk7CkBAIC0yOTcsOCArMjk3LDggQEAgY2xhc3Mg
TWFpblRlc3RDbGFzcwogICAgICAgICB1c2VfaGlnaF9iaXRfZGVwdGgoKSA/IHNpemVvZih1aW50
MTZfdCkgOiBzaXplb2YodWludDhfdCk7CiAgICAgc3JjXyA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWlu
dDhfdCAqPih2cHhfbWVtYWxpZ24oMTYsIGJsb2NrX3NpemUoKSAqIHVuaXQpKTsKICAgICByZWZf
ID0gbmV3IHVpbnQ4X3RbYmxvY2tfc2l6ZSgpICogdW5pdF07Ci0gICAgQVNTRVJUX1RSVUUoc3Jj
XyAhPSBOVUxMKTsKLSAgICBBU1NFUlRfVFJVRShyZWZfICE9IE5VTEwpOworICAgIEFTU0VSVF9O
RShzcmNfLCBudWxscHRyKTsKKyAgICBBU1NFUlRfTkUocmVmXywgbnVsbHB0cik7CiAjaWYgQ09O
RklHX1ZQOV9ISUdIQklUREVQVEgKICAgICBpZiAodXNlX2hpZ2hfYml0X2RlcHRoKCkpIHsKICAg
ICAgIC8vIFRPRE8oc2thbCk6IHJlbW92ZSEKQEAgLTMxOSw4ICszMTksOCBAQCBjbGFzcyBNYWlu
VGVzdENsYXNzCiAKICAgICB2cHhfZnJlZShzcmNfKTsKICAgICBkZWxldGVbXSByZWZfOwotICAg
IHNyY18gPSBOVUxMOwotICAgIHJlZl8gPSBOVUxMOworICAgIHNyY18gPSBudWxscHRyOworICAg
IHJlZl8gPSBudWxscHRyOwogICAgIGxpYnZweF90ZXN0OjpDbGVhclN5c3RlbVN0YXRlKCk7CiAg
IH0KIApAQCAtNTczLDkgKzU3Myw5IEBAIGNsYXNzIFN1YnBlbFZhcmlhbmNlVGVzdAogICAgICAg
ICAgIChibG9ja19zaXplKCkgKyB3aWR0aCgpICsgaGVpZ2h0KCkgKyAxKSAqIHNpemVvZih1aW50
MTZfdCkpKSk7CiAjZW5kaWYgIC8vIENPTkZJR19WUDlfSElHSEJJVERFUFRICiAgICAgfQotICAg
IEFTU0VSVF9UUlVFKHNyY18gIT0gTlVMTCk7Ci0gICAgQVNTRVJUX1RSVUUoc2VjXyAhPSBOVUxM
KTsKLSAgICBBU1NFUlRfVFJVRShyZWZfICE9IE5VTEwpOworICAgIEFTU0VSVF9ORShzcmNfLCBu
dWxscHRyKTsKKyAgICBBU1NFUlRfTkUoc2VjXywgbnVsbHB0cik7CisgICAgQVNTRVJUX05FKHJl
Zl8sIG51bGxwdHIpOwogICB9CiAKICAgdmlydHVhbCB2b2lkIFRlYXJEb3duKCkgewpAQCAtNzM4
LDIzICs3MzgsMjMgQEAgVEVTVF9QKFZweFN1YnBlbFZhcmlhbmNlVGVzdCwgUmVmKSB7IFJlZlRl
c3QoKTsgfQogVEVTVF9QKFZweFN1YnBlbFZhcmlhbmNlVGVzdCwgRXh0cmVtZVJlZikgeyBFeHRy
ZW1lUmVmVGVzdCgpOyB9CiBURVNUX1AoVnB4U3VicGVsQXZnVmFyaWFuY2VUZXN0LCBSZWYpIHsg
UmVmVGVzdCgpOyB9CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEMsIFN1bU9mU3F1YXJlc1Rl
c3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfZ2V0X21i
X3NzX2MpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDLCBTdW1PZlNxdWFyZXNUZXN0LAor
ICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZweF9nZXRfbWJfc3Nf
YykpOwogCiB0eXBlZGVmIFRlc3RQYXJhbXM8R2V0NHg0U3NlRnVuYz4gU3NlUGFyYW1zOwotSU5T
VEFOVElBVEVfVEVTVF9DQVNFX1AoQywgVnB4U3NlVGVzdCwKLSAgICAgICAgICAgICAgICAgICAg
ICAgIDo6dGVzdGluZzo6VmFsdWVzKFNzZVBhcmFtcygyLCAyLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfZ2V0NHg0c3NlX2NzX2MpKSk7
CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoQywgVnB4U3NlVGVzdCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhTc2VQYXJhbXMoMiwgMiwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9nZXQ0eDRzc2Vf
Y3NfYykpKTsKIAogdHlwZWRlZiBUZXN0UGFyYW1zPHZweF92YXJpYW5jZV9mbl90PiBNc2VQYXJh
bXM7Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUChDLCBWcHhNc2VUZXN0LAotICAgICAgICAgICAg
ICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoTXNlUGFyYW1zKDQsIDQsICZ2cHhfbXNlMTZ4
MTZfYyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNc2VQYXJh
bXMoNCwgMywgJnZweF9tc2UxNng4X2MpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgTXNlUGFyYW1zKDMsIDQsICZ2cHhfbXNlOHgxNl9jKSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1zZVBhcmFtcygzLCAzLCAmdnB4X21zZTh4
OF9jKSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKEMsIFZweE1zZVRlc3QsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoTXNlUGFyYW1zKDQsIDQsICZ2cHhf
bXNlMTZ4MTZfYyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
TXNlUGFyYW1zKDQsIDMsICZ2cHhfbXNlMTZ4OF9jKSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBNc2VQYXJhbXMoMywgNCwgJnZweF9tc2U4eDE2X2MpLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1zZVBhcmFtcygzLCAzLCAm
dnB4X21zZTh4OF9jKSkpOwogCiB0eXBlZGVmIFRlc3RQYXJhbXM8dnB4X3ZhcmlhbmNlX2ZuX3Q+
IFZhcmlhbmNlUGFyYW1zOwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9U
RVNUX1NVSVRFX1AoCiAgICAgQywgVnB4VmFyaWFuY2VUZXN0LAogICAgIDo6dGVzdGluZzo6VmFs
dWVzKFZhcmlhbmNlUGFyYW1zKDYsIDYsICZ2cHhfdmFyaWFuY2U2NHg2NF9jKSwKICAgICAgICAg
ICAgICAgICAgICAgICBWYXJpYW5jZVBhcmFtcyg2LCA1LCAmdnB4X3ZhcmlhbmNlNjR4MzJfYyks
CkBAIC03NzEsNyArNzcxLDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAgICAgICAgICAg
ICAgICAgICAgICAgVmFyaWFuY2VQYXJhbXMoMiwgMiwgJnZweF92YXJpYW5jZTR4NF9jKSkpOwog
CiB0eXBlZGVmIFRlc3RQYXJhbXM8dnB4X3N1YnBpeHZhcmlhbmNlX2ZuX3Q+IFN1YnBlbFZhcmlh
bmNlUGFyYW1zOwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NV
SVRFX1AoCiAgICAgQywgVnB4U3VicGVsVmFyaWFuY2VUZXN0LAogICAgIDo6dGVzdGluZzo6VmFs
dWVzKAogICAgICAgICBTdWJwZWxWYXJpYW5jZVBhcmFtcyg2LCA2LCAmdnB4X3N1Yl9waXhlbF92
YXJpYW5jZTY0eDY0X2MsIDApLApAQCAtNzg5LDcgKzc4OSw3IEBAIElOU1RBTlRJQVRFX1RFU1Rf
Q0FTRV9QKAogICAgICAgICBTdWJwZWxWYXJpYW5jZVBhcmFtcygyLCAyLCAmdnB4X3N1Yl9waXhl
bF92YXJpYW5jZTR4NF9jLCAwKSkpOwogCiB0eXBlZGVmIFRlc3RQYXJhbXM8dnB4X3N1YnBfYXZn
X3ZhcmlhbmNlX2ZuX3Q+IFN1YnBlbEF2Z1ZhcmlhbmNlUGFyYW1zOwotSU5TVEFOVElBVEVfVEVT
VF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgQywgVnB4U3VicGVsQXZn
VmFyaWFuY2VUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBTdWJwZWxBdmdW
YXJpYW5jZVBhcmFtcyg2LCA2LCAmdnB4X3N1Yl9waXhlbF9hdmdfdmFyaWFuY2U2NHg2NF9jLCAw
KSwKQEAgLTgwNywxNCArODA3LDExIEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAg
ICBTdWJwZWxBdmdWYXJpYW5jZVBhcmFtcygyLCAyLCAmdnB4X3N1Yl9waXhlbF9hdmdfdmFyaWFu
Y2U0eDRfYywgMCkpKTsKIAogI2lmIENPTkZJR19WUDlfSElHSEJJVERFUFRICi10eXBlZGVmIE1h
aW5UZXN0Q2xhc3M8dnB4X3ZhcmlhbmNlX2ZuX3Q+IFZweEhCRE1zZVRlc3Q7CiB0eXBlZGVmIE1h
aW5UZXN0Q2xhc3M8dnB4X3ZhcmlhbmNlX2ZuX3Q+IFZweEhCRFZhcmlhbmNlVGVzdDsKIHR5cGVk
ZWYgU3VicGVsVmFyaWFuY2VUZXN0PHZweF9zdWJwaXh2YXJpYW5jZV9mbl90PiBWcHhIQkRTdWJw
ZWxWYXJpYW5jZVRlc3Q7CiB0eXBlZGVmIFN1YnBlbFZhcmlhbmNlVGVzdDx2cHhfc3VicF9hdmdf
dmFyaWFuY2VfZm5fdD4KICAgICBWcHhIQkRTdWJwZWxBdmdWYXJpYW5jZVRlc3Q7CiAKLVRFU1Rf
UChWcHhIQkRNc2VUZXN0LCBSZWZNc2UpIHsgUmVmVGVzdE1zZSgpOyB9Ci1URVNUX1AoVnB4SEJE
TXNlVGVzdCwgTWF4TXNlKSB7IE1heFRlc3RNc2UoKTsgfQogVEVTVF9QKFZweEhCRFZhcmlhbmNl
VGVzdCwgWmVybykgeyBaZXJvVGVzdCgpOyB9CiBURVNUX1AoVnB4SEJEVmFyaWFuY2VUZXN0LCBS
ZWYpIHsgUmVmVGVzdCgpOyB9CiBURVNUX1AoVnB4SEJEVmFyaWFuY2VUZXN0LCBSZWZTdHJpZGUp
IHsgUmVmU3RyaWRlVGVzdCgpOyB9CkBAIC04MjUsNyArODIyLDEwIEBAIFRFU1RfUChWcHhIQkRT
dWJwZWxWYXJpYW5jZVRlc3QsIEV4dHJlbWVSZWYpIHsgRXh0cmVtZVJlZlRlc3QoKTsgfQogVEVT
VF9QKFZweEhCRFN1YnBlbEF2Z1ZhcmlhbmNlVGVzdCwgUmVmKSB7IFJlZlRlc3QoKTsgfQogCiAv
KiBUT0RPKGRlYmFyZ2hhKTogVGhpcyB0ZXN0IGRvZXMgbm90IHN1cHBvcnQgdGhlIGhpZ2hiZCB2
ZXJzaW9uCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK3R5cGVkZWYgTWFpblRlc3RDbGFzczx2
cHhfdmFyaWFuY2VfZm5fdD4gVnB4SEJETXNlVGVzdDsKK1RFU1RfUChWcHhIQkRNc2VUZXN0LCBS
ZWZNc2UpIHsgUmVmVGVzdE1zZSgpOyB9CitURVNUX1AoVnB4SEJETXNlVGVzdCwgTWF4TXNlKSB7
IE1heFRlc3RNc2UoKTsgfQorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEMsIFZweEhC
RE1zZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoTXNlUGFyYW1zKDQsIDQsICZ2cHhfaGln
aGJkXzEyX21zZTE2eDE2X2MpLAogICAgICAgICAgICAgICAgICAgICAgIE1zZVBhcmFtcyg0LCA0
LCAmdnB4X2hpZ2hiZF8xMl9tc2UxNng4X2MpLApAQCAtODQwLDggKzg0MCw5IEBAIElOU1RBTlRJ
QVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAgICAgICAgICAgIE1zZVBhcmFtcyg0LCA0LCAm
dnB4X2hpZ2hiZF84X21zZTh4MTZfYyksCiAgICAgICAgICAgICAgICAgICAgICAgTXNlUGFyYW1z
KDQsIDQsICZ2cHhfaGlnaGJkXzhfbXNlOHg4X2MpKSk7CiAqLworR1RFU1RfQUxMT1dfVU5JTlNU
QU5USUFURURfUEFSQU1FVEVSSVpFRF9URVNUKFZweEhCRE1zZVRlc3QpOwogCi1JTlNUQU5USUFU
RV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBDLCBWcHhIQkRW
YXJpYW5jZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoVmFyaWFuY2VQYXJhbXMoNiwgNiwg
JnZweF9oaWdoYmRfMTJfdmFyaWFuY2U2NHg2NF9jLCAxMiksCiAgICAgICAgICAgICAgICAgICAg
ICAgVmFyaWFuY2VQYXJhbXMoNiwgNSwgJnZweF9oaWdoYmRfMTJfdmFyaWFuY2U2NHgzMl9jLCAx
MiksCkBAIC04ODMsNyArODg0LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAgICAgICAg
ICAgICAgICAgICAgICAgVmFyaWFuY2VQYXJhbXMoMiwgMywgJnZweF9oaWdoYmRfOF92YXJpYW5j
ZTR4OF9jLCA4KSwKICAgICAgICAgICAgICAgICAgICAgICBWYXJpYW5jZVBhcmFtcygyLCAyLCAm
dnB4X2hpZ2hiZF84X3ZhcmlhbmNlNHg0X2MsIDgpKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FT
RV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEMsIFZweEhCRFN1YnBlbFZhcmlh
bmNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcygKICAgICAgICAgU3VicGVsVmFyaWFuY2VQ
YXJhbXMoNiwgNiwgJnZweF9oaWdoYmRfOF9zdWJfcGl4ZWxfdmFyaWFuY2U2NHg2NF9jLCA4KSwK
QEAgLTk0MSw3ICs5NDIsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgU3Vi
cGVsVmFyaWFuY2VQYXJhbXMoMiwgMiwgJnZweF9oaWdoYmRfMTJfc3ViX3BpeGVsX3ZhcmlhbmNl
NHg0X2MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEyKSkpOwogCi1JTlNUQU5USUFU
RV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBDLCBWcHhIQkRT
dWJwZWxBdmdWYXJpYW5jZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIFN1
YnBlbEF2Z1ZhcmlhbmNlUGFyYW1zKDYsIDYsCkBAIC0xMDQ0LDE2ICsxMDQ1LDE2IEBAIElOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBDT05GSUdfVlA5X0hJR0hCSVRERVBUSAog
CiAjaWYgSEFWRV9TU0UyCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChTU0UyLCBTdW1PZlNxdWFy
ZXNUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X2dl
dF9tYl9zc19zc2UyKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoU1NFMiwgU3VtT2ZTcXVh
cmVzVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhf
Z2V0X21iX3NzX3NzZTIpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoU1NFMiwgVnB4TXNl
VGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKE1zZVBhcmFt
cyg0LCA0LCAmdnB4X21zZTE2eDE2X3NzZTIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgTXNlUGFyYW1zKDQsIDMsICZ2cHhfbXNlMTZ4OF9zc2UyKSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1zZVBhcmFtcygzLCA0LCAmdnB4
X21zZTh4MTZfc3NlMiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBNc2VQYXJhbXMoMywgMywgJnZweF9tc2U4eDhfc3NlMikpKTsKK0lOU1RBTlRJQVRFX1RFU1Rf
U1VJVEVfUChTU0UyLCBWcHhNc2VUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVz
dGluZzo6VmFsdWVzKE1zZVBhcmFtcyg0LCA0LCAmdnB4X21zZTE2eDE2X3NzZTIpLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1zZVBhcmFtcyg0LCAzLCAmdnB4
X21zZTE2eDhfc3NlMiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgTXNlUGFyYW1zKDMsIDQsICZ2cHhfbXNlOHgxNl9zc2UyKSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBNc2VQYXJhbXMoMywgMywgJnZweF9tc2U4eDhfc3Nl
MikpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRF
X1AoCiAgICAgU1NFMiwgVnB4VmFyaWFuY2VUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKFZh
cmlhbmNlUGFyYW1zKDYsIDYsICZ2cHhfdmFyaWFuY2U2NHg2NF9zc2UyKSwKICAgICAgICAgICAg
ICAgICAgICAgICBWYXJpYW5jZVBhcmFtcyg2LCA1LCAmdnB4X3ZhcmlhbmNlNjR4MzJfc3NlMiks
CkBAIC0xMDY5LDcgKzEwNzAsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAg
ICAgICAgICAgICAgICBWYXJpYW5jZVBhcmFtcygyLCAzLCAmdnB4X3ZhcmlhbmNlNHg4X3NzZTIp
LAogICAgICAgICAgICAgICAgICAgICAgIFZhcmlhbmNlUGFyYW1zKDIsIDIsICZ2cHhfdmFyaWFu
Y2U0eDRfc3NlMikpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9U
RVNUX1NVSVRFX1AoCiAgICAgU1NFMiwgVnB4U3VicGVsVmFyaWFuY2VUZXN0LAogICAgIDo6dGVz
dGluZzo6VmFsdWVzKAogICAgICAgICBTdWJwZWxWYXJpYW5jZVBhcmFtcyg2LCA2LCAmdnB4X3N1
Yl9waXhlbF92YXJpYW5jZTY0eDY0X3NzZTIsIDApLApAQCAtMTA4Niw3ICsxMDg3LDcgQEAgSU5T
VEFOVElBVEVfVEVTVF9DQVNFX1AoCiAgICAgICAgIFN1YnBlbFZhcmlhbmNlUGFyYW1zKDIsIDMs
ICZ2cHhfc3ViX3BpeGVsX3ZhcmlhbmNlNHg4X3NzZTIsIDApLAogICAgICAgICBTdWJwZWxWYXJp
YW5jZVBhcmFtcygyLCAyLCAmdnB4X3N1Yl9waXhlbF92YXJpYW5jZTR4NF9zc2UyLCAwKSkpOwog
Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAg
ICBTU0UyLCBWcHhTdWJwZWxBdmdWYXJpYW5jZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMo
CiAgICAgICAgIFN1YnBlbEF2Z1ZhcmlhbmNlUGFyYW1zKDYsIDYsICZ2cHhfc3ViX3BpeGVsX2F2
Z192YXJpYW5jZTY0eDY0X3NzZTIsIDApLApAQCAtMTEwNSw3ICsxMTA2LDcgQEAgSU5TVEFOVElB
VEVfVEVTVF9DQVNFX1AoCiAKICNpZiBDT05GSUdfVlA5X0hJR0hCSVRERVBUSAogLyogVE9ETyhk
ZWJhcmdoYSk6IFRoaXMgdGVzdCBkb2VzIG5vdCBzdXBwb3J0IHRoZSBoaWdoYmQgdmVyc2lvbgot
SU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAg
U1NFMiwgVnB4SEJETXNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhNc2VQYXJhbXMoNCwg
NCwgJnZweF9oaWdoYmRfMTJfbXNlMTZ4MTZfc3NlMiksCiAgICAgICAgICAgICAgICAgICAgICAg
TXNlUGFyYW1zKDQsIDMsICZ2cHhfaGlnaGJkXzEyX21zZTE2eDhfc3NlMiksCkBAIC0xMTIxLDcg
KzExMjIsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgICAgICAgICAgICAg
ICBNc2VQYXJhbXMoMywgMywgJnZweF9oaWdoYmRfOF9tc2U4eDhfc3NlMikpKTsKICovCiAKLUlO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNT
RTIsIFZweEhCRFZhcmlhbmNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcygKICAgICAgICAg
VmFyaWFuY2VQYXJhbXMoNiwgNiwgJnZweF9oaWdoYmRfMTJfdmFyaWFuY2U2NHg2NF9zc2UyLCAx
MiksCkBAIC0xMTU1LDcgKzExNTYsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAg
ICAgVmFyaWFuY2VQYXJhbXMoMywgNCwgJnZweF9oaWdoYmRfOF92YXJpYW5jZTh4MTZfc3NlMiwg
OCksCiAgICAgICAgIFZhcmlhbmNlUGFyYW1zKDMsIDMsICZ2cHhfaGlnaGJkXzhfdmFyaWFuY2U4
eDhfc3NlMiwgOCkpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9U
RVNUX1NVSVRFX1AoCiAgICAgU1NFMiwgVnB4SEJEU3VicGVsVmFyaWFuY2VUZXN0LAogICAgIDo6
dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBTdWJwZWxWYXJpYW5jZVBhcmFtcyg2LCA2LCAmdnB4
X2hpZ2hiZF8xMl9zdWJfcGl4ZWxfdmFyaWFuY2U2NHg2NF9zc2UyLApAQCAtMTIyNCw3ICsxMjI1
LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAgICAgICAgIFN1YnBlbFZhcmlhbmNlUGFy
YW1zKDMsIDIsICZ2cHhfaGlnaGJkXzhfc3ViX3BpeGVsX3ZhcmlhbmNlOHg0X3NzZTIsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDgpKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9Q
KAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTRTIsIFZweEhCRFN1YnBlbEF2Z1Zh
cmlhbmNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcygKICAgICAgICAgU3VicGVsQXZnVmFy
aWFuY2VQYXJhbXMoNiwgNiwKQEAgLTEzMzAsNyArMTMzMSw3IEBAIElOU1RBTlRJQVRFX1RFU1Rf
Q0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX1NTRTIKIAogI2lmIEhBVkVfU1NTRTMKLUlOU1RBTlRJ
QVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTU0UzLCBW
cHhTdWJwZWxWYXJpYW5jZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIFN1
YnBlbFZhcmlhbmNlUGFyYW1zKDYsIDYsICZ2cHhfc3ViX3BpeGVsX3ZhcmlhbmNlNjR4NjRfc3Nz
ZTMsIDApLApAQCAtMTM0Nyw3ICsxMzQ4LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAg
ICAgICAgIFN1YnBlbFZhcmlhbmNlUGFyYW1zKDIsIDMsICZ2cHhfc3ViX3BpeGVsX3ZhcmlhbmNl
NHg4X3Nzc2UzLCAwKSwKICAgICAgICAgU3VicGVsVmFyaWFuY2VQYXJhbXMoMiwgMiwgJnZweF9z
dWJfcGl4ZWxfdmFyaWFuY2U0eDRfc3NzZTMsIDApKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FT
RV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTU0UzLCBWcHhTdWJwZWxBdmdW
YXJpYW5jZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIFN1YnBlbEF2Z1Zh
cmlhbmNlUGFyYW1zKDYsIDYsICZ2cHhfc3ViX3BpeGVsX2F2Z192YXJpYW5jZTY0eDY0X3Nzc2Uz
LApAQCAtMTM3NCwxMSArMTM3NSwxMSBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNlbmRp
ZiAgLy8gSEFWRV9TU1NFMwogCiAjaWYgSEFWRV9BVlgyCi1JTlNUQU5USUFURV9URVNUX0NBU0Vf
UChBVlgyLCBWcHhNc2VUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpW
YWx1ZXMoTXNlUGFyYW1zKDQsIDQsICZ2cHhfbXNlMTZ4MTZfYXZ4MiksCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNc2VQYXJhbXMoNCwgMywgJnZweF9tc2UxNng4
X2F2eDIpKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoQVZYMiwgVnB4TXNlVGVzdCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhNc2VQYXJhbXMoNCwgNCwg
JnZweF9tc2UxNngxNl9hdngyKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBNc2VQYXJhbXMoNCwgMywgJnZweF9tc2UxNng4X2F2eDIpKSk7CiAKLUlOU1RBTlRJ
QVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEFWWDIsIFZw
eFZhcmlhbmNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhWYXJpYW5jZVBhcmFtcyg2LCA2
LCAmdnB4X3ZhcmlhbmNlNjR4NjRfYXZ4MiksCiAgICAgICAgICAgICAgICAgICAgICAgVmFyaWFu
Y2VQYXJhbXMoNiwgNSwgJnZweF92YXJpYW5jZTY0eDMyX2F2eDIpLApAQCAtMTM4OSwxMyArMTM5
MCwxMyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgICAgICAgICAgICAgICBW
YXJpYW5jZVBhcmFtcyg0LCA0LCAmdnB4X3ZhcmlhbmNlMTZ4MTZfYXZ4MiksCiAgICAgICAgICAg
ICAgICAgICAgICAgVmFyaWFuY2VQYXJhbXMoNCwgMywgJnZweF92YXJpYW5jZTE2eDhfYXZ4Mikp
KTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1Ao
CiAgICAgQVZYMiwgVnB4U3VicGVsVmFyaWFuY2VUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVz
KAogICAgICAgICBTdWJwZWxWYXJpYW5jZVBhcmFtcyg2LCA2LCAmdnB4X3N1Yl9waXhlbF92YXJp
YW5jZTY0eDY0X2F2eDIsIDApLAogICAgICAgICBTdWJwZWxWYXJpYW5jZVBhcmFtcyg1LCA1LCAm
dnB4X3N1Yl9waXhlbF92YXJpYW5jZTMyeDMyX2F2eDIsIDApKSk7CiAKLUlOU1RBTlRJQVRFX1RF
U1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEFWWDIsIFZweFN1YnBl
bEF2Z1ZhcmlhbmNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcygKICAgICAgICAgU3VicGVs
QXZnVmFyaWFuY2VQYXJhbXMoNiwgNiwgJnZweF9zdWJfcGl4ZWxfYXZnX3ZhcmlhbmNlNjR4NjRf
YXZ4MiwgMCksCkBAIC0xNDA0LDE0ICsxNDA1LDE1IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9Q
KAogI2VuZGlmICAvLyBIQVZFX0FWWDIKIAogI2lmIEhBVkVfTkVPTgotSU5TVEFOVElBVEVfVEVT
VF9DQVNFX1AoTkVPTiwgVnB4U3NlVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVz
dGluZzo6VmFsdWVzKFNzZVBhcmFtcygyLCAyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfZ2V0NHg0c3NlX2NzX25lb24pKSk7CitJTlNU
QU5USUFURV9URVNUX1NVSVRFX1AoTkVPTiwgVnB4U3NlVGVzdCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhTc2VQYXJhbXMoMiwgMiwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9nZXQ0eDRzc2VfY3Nf
bmVvbikpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTkVPTiwgVnB4TXNlVGVzdCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKE1zZVBhcmFtcyg0LCA0LCAm
dnB4X21zZTE2eDE2X25lb24pKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoTkVPTiwgVnB4
TXNlVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhNc2VQ
YXJhbXMoNCwgNCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgJnZweF9tc2UxNngxNl9uZW9uKSkpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0Vf
UCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBORU9OLCBWcHhWYXJpYW5jZVRlc3Qs
CiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoVmFyaWFuY2VQYXJhbXMoNiwgNiwgJnZweF92YXJpYW5j
ZTY0eDY0X25lb24pLAogICAgICAgICAgICAgICAgICAgICAgIFZhcmlhbmNlUGFyYW1zKDYsIDUs
ICZ2cHhfdmFyaWFuY2U2NHgzMl9uZW9uKSwKQEAgLTE0MjcsNyArMTQyOSw3IEBAIElOU1RBTlRJ
QVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAgICAgICAgICAgIFZhcmlhbmNlUGFyYW1zKDIs
IDMsICZ2cHhfdmFyaWFuY2U0eDhfbmVvbiksCiAgICAgICAgICAgICAgICAgICAgICAgVmFyaWFu
Y2VQYXJhbXMoMiwgMiwgJnZweF92YXJpYW5jZTR4NF9uZW9uKSkpOwogCi1JTlNUQU5USUFURV9U
RVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBORU9OLCBWcHhTdWJw
ZWxWYXJpYW5jZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIFN1YnBlbFZh
cmlhbmNlUGFyYW1zKDYsIDYsICZ2cHhfc3ViX3BpeGVsX3ZhcmlhbmNlNjR4NjRfbmVvbiwgMCks
CkBAIC0xNDQ0LDcgKzE0NDYsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAg
U3VicGVsVmFyaWFuY2VQYXJhbXMoMiwgMywgJnZweF9zdWJfcGl4ZWxfdmFyaWFuY2U0eDhfbmVv
biwgMCksCiAgICAgICAgIFN1YnBlbFZhcmlhbmNlUGFyYW1zKDIsIDIsICZ2cHhfc3ViX3BpeGVs
X3ZhcmlhbmNlNHg0X25lb24sIDApKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5T
VEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE5FT04sIFZweFN1YnBlbEF2Z1ZhcmlhbmNlVGVz
dCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcygKICAgICAgICAgU3VicGVsQXZnVmFyaWFuY2VQYXJh
bXMoNiwgNiwgJnZweF9zdWJfcGl4ZWxfYXZnX3ZhcmlhbmNlNjR4NjRfbmVvbiwgMCksCkBAIC0x
NDYzLDIwICsxNDY1LDIwIEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBI
QVZFX05FT04KIAogI2lmIEhBVkVfTVNBCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChNU0EsIFN1
bU9mU3F1YXJlc1Rlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVl
cyh2cHhfZ2V0X21iX3NzX21zYSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE1TQSwgU3Vt
T2ZTcXVhcmVzVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVl
cyh2cHhfZ2V0X21iX3NzX21zYSkpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChNU0EsIFZw
eFNzZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhTc2VQ
YXJhbXMoMiwgMiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAmdnB4X2dldDR4NHNzZV9jc19tc2EpKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRF
X1AoTVNBLCBWcHhTc2VUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6
VmFsdWVzKFNzZVBhcmFtcygyLCAyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAmdnB4X2dldDR4NHNzZV9jc19tc2EpKSk7CiAKLUlOU1RBTlRJ
QVRFX1RFU1RfQ0FTRV9QKE1TQSwgVnB4TXNlVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAg
IDo6dGVzdGluZzo6VmFsdWVzKE1zZVBhcmFtcyg0LCA0LCAmdnB4X21zZTE2eDE2X21zYSksCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNc2VQYXJhbXMoNCwgMywg
JnZweF9tc2UxNng4X21zYSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBNc2VQYXJhbXMoMywgNCwgJnZweF9tc2U4eDE2X21zYSksCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBNc2VQYXJhbXMoMywgMywgJnZweF9tc2U4eDhfbXNh
KSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE1TQSwgVnB4TXNlVGVzdCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhNc2VQYXJhbXMoNCwgNCwgJnZweF9t
c2UxNngxNl9tc2EpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IE1zZVBhcmFtcyg0LCAzLCAmdnB4X21zZTE2eDhfbXNhKSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBNc2VQYXJhbXMoMywgNCwgJnZweF9tc2U4eDE2X21zYSks
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTXNlUGFyYW1zKDMs
IDMsICZ2cHhfbXNlOHg4X21zYSkpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNU
QU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTVNBLCBWcHhWYXJpYW5jZVRlc3QsCiAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXMoVmFyaWFuY2VQYXJhbXMoNiwgNiwgJnZweF92YXJpYW5jZTY0eDY0X21z
YSksCiAgICAgICAgICAgICAgICAgICAgICAgVmFyaWFuY2VQYXJhbXMoNiwgNSwgJnZweF92YXJp
YW5jZTY0eDMyX21zYSksCkBAIC0xNDkyLDcgKzE0OTQsNyBAQCBJTlNUQU5USUFURV9URVNUX0NB
U0VfUCgKICAgICAgICAgICAgICAgICAgICAgICBWYXJpYW5jZVBhcmFtcygyLCAzLCAmdnB4X3Zh
cmlhbmNlNHg4X21zYSksCiAgICAgICAgICAgICAgICAgICAgICAgVmFyaWFuY2VQYXJhbXMoMiwg
MiwgJnZweF92YXJpYW5jZTR4NF9tc2EpKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE1TQSwgVnB4U3VicGVsVmFyaWFuY2VUZXN0
LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBTdWJwZWxWYXJpYW5jZVBhcmFtcygy
LCAyLCAmdnB4X3N1Yl9waXhlbF92YXJpYW5jZTR4NF9tc2EsIDApLApAQCAtMTUwOSw3ICsxNTEx
LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAgICAgICAgIFN1YnBlbFZhcmlhbmNlUGFy
YW1zKDYsIDUsICZ2cHhfc3ViX3BpeGVsX3ZhcmlhbmNlNjR4MzJfbXNhLCAwKSwKICAgICAgICAg
U3VicGVsVmFyaWFuY2VQYXJhbXMoNiwgNiwgJnZweF9zdWJfcGl4ZWxfdmFyaWFuY2U2NHg2NF9t
c2EsIDApKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9T
VUlURV9QKAogICAgIE1TQSwgVnB4U3VicGVsQXZnVmFyaWFuY2VUZXN0LAogICAgIDo6dGVzdGlu
Zzo6VmFsdWVzKAogICAgICAgICBTdWJwZWxBdmdWYXJpYW5jZVBhcmFtcyg2LCA2LCAmdnB4X3N1
Yl9waXhlbF9hdmdfdmFyaWFuY2U2NHg2NF9tc2EsIDApLApAQCAtMTUyOCwxOSArMTUzMCwxOSBA
QCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNlbmRpZiAgLy8gSEFWRV9NU0EKIAogI2lmIEhB
VkVfVlNYCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChWU1gsIFN1bU9mU3F1YXJlc1Rlc3QsCi0g
ICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfZ2V0X21iX3NzX3Zz
eCkpOwotCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChWU1gsIFZweFNzZVRlc3QsCi0gICAgICAg
ICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhTc2VQYXJhbXMoMiwgMiwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2dldDR4
NHNzZV9jc192c3gpKSk7Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUChWU1gsIFZweE1zZVRlc3Qs
Ci0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhNc2VQYXJhbXMoNCwg
NCwgJnZweF9tc2UxNngxNl92c3gpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgTXNlUGFyYW1zKDQsIDMsICZ2cHhfbXNlMTZ4OF92c3gpLAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTXNlUGFyYW1zKDMsIDQsICZ2cHhfbXNlOHgx
Nl92c3gpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTXNlUGFy
YW1zKDMsIDMsICZ2cHhfbXNlOHg4X3ZzeCkpKTsKLQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1Ao
CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoVlNYLCBTdW1PZlNxdWFyZXNUZXN0LAorICAgICAg
ICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZweF9nZXRfbWJfc3NfdnN4KSk7
CisKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChWU1gsIFZweFNzZVRlc3QsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoU3NlUGFyYW1zKDIsIDIsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfZ2V0NHg0
c3NlX2NzX3ZzeCkpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChWU1gsIFZweE1zZVRlc3Qs
CisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoTXNlUGFyYW1zKDQs
IDQsICZ2cHhfbXNlMTZ4MTZfdnN4KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBNc2VQYXJhbXMoNCwgMywgJnZweF9tc2UxNng4X3ZzeCksCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTXNlUGFyYW1zKDMsIDQsICZ2cHhfbXNl
OHgxNl92c3gpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1z
ZVBhcmFtcygzLCAzLCAmdnB4X21zZTh4OF92c3gpKSk7CisKK0lOU1RBTlRJQVRFX1RFU1RfU1VJ
VEVfUCgKICAgICBWU1gsIFZweFZhcmlhbmNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhW
YXJpYW5jZVBhcmFtcyg2LCA2LCAmdnB4X3ZhcmlhbmNlNjR4NjRfdnN4KSwKICAgICAgICAgICAg
ICAgICAgICAgICBWYXJpYW5jZVBhcmFtcyg2LCA1LCAmdnB4X3ZhcmlhbmNlNjR4MzJfdnN4KSwK
QEAgLTE1NTgsMTMgKzE1NjAsMTMgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAjZW5kaWYg
IC8vIEhBVkVfVlNYCiAKICNpZiBIQVZFX01NSQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTU1J
LCBWcHhNc2VUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMo
TXNlUGFyYW1zKDQsIDQsICZ2cHhfbXNlMTZ4MTZfbW1pKSwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIE1zZVBhcmFtcyg0LCAzLCAmdnB4X21zZTE2eDhfbW1pKSwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1zZVBhcmFtcygzLCA0
LCAmdnB4X21zZTh4MTZfbW1pKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIE1zZVBhcmFtcygzLCAzLCAmdnB4X21zZTh4OF9tbWkpKSk7CitJTlNUQU5USUFURV9U
RVNUX1NVSVRFX1AoTU1JLCBWcHhNc2VUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6
dGVzdGluZzo6VmFsdWVzKE1zZVBhcmFtcyg0LCA0LCAmdnB4X21zZTE2eDE2X21taSksCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTXNlUGFyYW1zKDQsIDMsICZ2
cHhfbXNlMTZ4OF9tbWkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIE1zZVBhcmFtcygzLCA0LCAmdnB4X21zZTh4MTZfbW1pKSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBNc2VQYXJhbXMoMywgMywgJnZweF9tc2U4eDhfbW1p
KSkpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVf
UCgKICAgICBNTUksIFZweFZhcmlhbmNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhWYXJp
YW5jZVBhcmFtcyg2LCA2LCAmdnB4X3ZhcmlhbmNlNjR4NjRfbW1pKSwKICAgICAgICAgICAgICAg
ICAgICAgICBWYXJpYW5jZVBhcmFtcyg2LCA1LCAmdnB4X3ZhcmlhbmNlNjR4MzJfbW1pKSwKQEAg
LTE1ODAsNyArMTU4Miw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAg
ICAgICAgICAgIFZhcmlhbmNlUGFyYW1zKDIsIDMsICZ2cHhfdmFyaWFuY2U0eDhfbW1pKSwKICAg
ICAgICAgICAgICAgICAgICAgICBWYXJpYW5jZVBhcmFtcygyLCAyLCAmdnB4X3ZhcmlhbmNlNHg0
X21taSkpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NV
SVRFX1AoCiAgICAgTU1JLCBWcHhTdWJwZWxWYXJpYW5jZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpW
YWx1ZXMoCiAgICAgICAgIFN1YnBlbFZhcmlhbmNlUGFyYW1zKDYsIDYsICZ2cHhfc3ViX3BpeGVs
X3ZhcmlhbmNlNjR4NjRfbW1pLCAwKSwKQEAgLTE1OTcsNyArMTU5OSw3IEBAIElOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKAogICAgICAgICBTdWJwZWxWYXJpYW5jZVBhcmFtcygyLCAzLCAmdnB4X3N1
Yl9waXhlbF92YXJpYW5jZTR4OF9tbWksIDApLAogICAgICAgICBTdWJwZWxWYXJpYW5jZVBhcmFt
cygyLCAyLCAmdnB4X3N1Yl9waXhlbF92YXJpYW5jZTR4NF9tbWksIDApKSk7CiAKLUlOU1RBTlRJ
QVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE1NSSwgVnB4
U3VicGVsQXZnVmFyaWFuY2VUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBT
dWJwZWxBdmdWYXJpYW5jZVBhcmFtcyg2LCA2LCAmdnB4X3N1Yl9waXhlbF9hdmdfdmFyaWFuY2U2
NHg2NF9tbWksIDApLApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOF9kYXRhcmF0ZV90
ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOF9kYXRhcmF0ZV90ZXN0LmNjCmluZGV4IDk1YTEx
NTdmNmMyYjAzNWIwZTg5YTRjZjVlYmE0YTYzZTQ5NmYwZTQuLmRjZDY4YTJkNGM3ZjI1OTM0N2Rm
YmMwYzBlODFjNjJjYmM0Y2E3YTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDhfZGF0
YXJhdGVfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA4X2RhdGFyYXRlX3Rlc3QuY2MK
QEAgLTQwOCw5ICs0MDgsMzEgQEAgVEVTVF9QKERhdGFyYXRlVGVzdFJlYWxUaW1lLCBHRkJvb3N0
KSB7CiAgICAgICA8PCAiIFRoZSBkYXRhcmF0ZSBmb3IgdGhlIGZpbGUgbWlzc2VkIHRoZSB0YXJn
ZXQhIjsKIH0KIAotVlA4X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShEYXRhcmF0ZVRlc3RMYXJnZSwg
QUxMX1RFU1RfTU9ERVMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFs
dWVzKDApKTsKLVZQOF9JTlNUQU5USUFURV9URVNUX0NBU0UoRGF0YXJhdGVUZXN0UmVhbFRpbWUs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKDo6bGlidnB4X3Rl
c3Q6OmtSZWFsVGltZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFs
dWVzKC02LCAtMTIpKTsKK1RFU1RfUChEYXRhcmF0ZVRlc3RSZWFsVGltZSwgTlYxMikgeworICBk
ZW5vaXNlcl9vbl8gPSAwOworICBjZmdfLnJjX2J1Zl9pbml0aWFsX3N6ID0gNTAwOworICBjZmdf
LnJjX2Ryb3BmcmFtZV90aHJlc2ggPSAwOworICBjZmdfLnJjX21heF9xdWFudGl6ZXIgPSA1NjsK
KyAgY2ZnXy5yY19lbmRfdXNhZ2UgPSBWUFhfQ0JSOworICBjZmdfLmdfZXJyb3JfcmVzaWxpZW50
ID0gMDsKKyAgOjpsaWJ2cHhfdGVzdDo6WVVWVmlkZW9Tb3VyY2UgdmlkZW8oImhhbnRyb19jb2xs
YWdlX3czNTJoMjg4X252MTIueXV2IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgVlBYX0lNR19GTVRfTlYxMiwgMzUyLCAyODgsIDMwLCAxLCAwLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAxMDApOworCisgIGNmZ18ucmNfdGFyZ2V0X2JpdHJh
dGUgPSAyMDA7CisgIFJlc2V0TW9kZWwoKTsKKworICBBU1NFUlRfTk9fRkFUQUxfRkFJTFVSRShS
dW5Mb29wKCZ2aWRlbykpOworICBBU1NFUlRfR0UoY2ZnXy5yY190YXJnZXRfYml0cmF0ZSwgZWZm
ZWN0aXZlX2RhdGFyYXRlXyAqIDAuOTUpCisgICAgICA8PCAiIFRoZSBkYXRhcmF0ZSBmb3IgdGhl
IGZpbGUgZXhjZWVkcyB0aGUgdGFyZ2V0ISI7CisKKyAgQVNTRVJUX0xFKGNmZ18ucmNfdGFyZ2V0
X2JpdHJhdGUsIGZpbGVfZGF0YXJhdGVfICogMS40KQorICAgICAgPDwgIiBUaGUgZGF0YXJhdGUg
Zm9yIHRoZSBmaWxlIG1pc3NlZCB0aGUgdGFyZ2V0ISI7Cit9CisKK1ZQOF9JTlNUQU5USUFURV9U
RVNUX1NVSVRFKERhdGFyYXRlVGVzdExhcmdlLCBBTExfVEVTVF9NT0RFUywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKDApKTsKK1ZQOF9JTlNUQU5USUFURV9U
RVNUX1NVSVRFKERhdGFyYXRlVGVzdFJlYWxUaW1lLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgOjp0ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a1JlYWxUaW1lKSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKC02LCAtMTIpKTsKIH0gIC8vIG5h
bWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOF9kZW5vaXNlcl9zc2UyX3Rl
c3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA4X2Rlbm9pc2VyX3NzZTJfdGVzdC5jYwppbmRleCAy
Y2JjZjA0MTQ5ODcwOGJkOWU2MzU3YTU2MWU3YjNhMTdjN2NlOGI0Li4wMTk3ZjE0M2YzZTExZWRk
MWE1ZGJjMDgxZWEyOWI2NTZlMjE0NGQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA4
X2Rlbm9pc2VyX3NzZTJfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA4X2Rlbm9pc2Vy
X3NzZTJfdGVzdC5jYwpAQCAtMTEwLDUgKzExMCw1IEBAIFRFU1RfUChWUDhEZW5vaXNlclRlc3Qs
IEJpdGV4YWN0Q2hlY2spIHsKIH0KIAogLy8gVGVzdCBmb3IgYWxsIGJsb2NrIHNpemUuCi1JTlNU
QU5USUFURV9URVNUX0NBU0VfUChTU0UyLCBWUDhEZW5vaXNlclRlc3QsIDo6dGVzdGluZzo6VmFs
dWVzKDAsIDEpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChTU0UyLCBWUDhEZW5vaXNlclRl
c3QsIDo6dGVzdGluZzo6VmFsdWVzKDAsIDEpKTsKIH0gIC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L3ZwOF9mZGN0NHg0X3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qv
dnA4X2ZkY3Q0eDRfdGVzdC5jYwppbmRleCBiNzY5N2Q4NTk2ZjU0NzY1NjY1YTg1MGQyOGRlY2Rk
ZTA1N2VlMGM1Li5kNWFjMjUzMDAzZmNmMmQ5MzJhNjhlOTQ5MmM5Mzk5ZjgxNjQwMTAxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA4X2ZkY3Q0eDRfdGVzdC5jYworKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rlc3QvdnA4X2ZkY3Q0eDRfdGVzdC5jYwpAQCAtMTgzLDI0ICsxODMsMjQgQEAgVEVTVF9Q
KEZkY3RUZXN0LCBSb3VuZFRyaXBFcnJvckNoZWNrKSB7CiAgICAgICA8PCAiRXJyb3I6IEZEQ1Qv
SURDVCBoYXMgYXZlcmFnZSByb3VuZHRyaXAgZXJyb3IgPiAxIHBlciBibG9jayI7CiB9OwogCi1J
TlNUQU5USUFURV9URVNUX0NBU0VfUChDLCBGZGN0VGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXModnA4
X3Nob3J0X2ZkY3Q0eDRfYykpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKEMsIEZkY3RUZXN0
LCA6OnRlc3Rpbmc6OlZhbHVlcyh2cDhfc2hvcnRfZmRjdDR4NF9jKSk7CiAKICNpZiBIQVZFX05F
T04KLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE5FT04sIEZkY3RUZXN0LAotICAgICAgICAgICAg
ICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnA4X3Nob3J0X2ZkY3Q0eDRfbmVvbikpOwor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE5FT04sIEZkY3RUZXN0LAorICAgICAgICAgICAgICAg
ICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZwOF9zaG9ydF9mZGN0NHg0X25lb24pKTsKICNl
bmRpZiAgLy8gSEFWRV9ORU9OCiAKICNpZiBIQVZFX1NTRTIKLUlOU1RBTlRJQVRFX1RFU1RfQ0FT
RV9QKFNTRTIsIEZkY3RUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpW
YWx1ZXModnA4X3Nob3J0X2ZkY3Q0eDRfc3NlMikpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9Q
KFNTRTIsIEZkY3RUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFs
dWVzKHZwOF9zaG9ydF9mZGN0NHg0X3NzZTIpKTsKICNlbmRpZiAgLy8gSEFWRV9TU0UyCiAKICNp
ZiBIQVZFX01TQQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTVNBLCBGZGN0VGVzdCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZwOF9zaG9ydF9mZGN0NHg0X21z
YSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE1TQSwgRmRjdFRlc3QsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnA4X3Nob3J0X2ZkY3Q0eDRfbXNhKSk7
CiAjZW5kaWYgIC8vIEhBVkVfTVNBCiAjaWYgSEFWRV9NTUkKLUlOU1RBTlRJQVRFX1RFU1RfQ0FT
RV9QKE1NSSwgRmRjdFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZh
bHVlcyh2cDhfc2hvcnRfZmRjdDR4NF9tbWkpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChN
TUksIEZkY3RUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVz
KHZwOF9zaG9ydF9mZGN0NHg0X21taSkpOwogI2VuZGlmICAvLyBIQVZFX01NSQogfSAgLy8gbmFt
ZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA4X211bHRpX3Jlc29sdXRpb25f
ZW5jb2Rlci5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDhfbXVsdGlfcmVzb2x1dGlvbl9lbmNvZGVy
LnNoCmluZGV4IGJkNDViNTM4MWY2ZDc4NWY1NzM1YzNmODk2YzgzNjNiZGIzZDRmZDQuLjFlOTZm
OTRjYzdlNWUxODRmOWFjOGUwMmY0MDVlMzRjODI2NjllOWUgMTAwNzU1Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC92cDhfbXVsdGlfcmVzb2x1dGlvbl9lbmNvZGVyLnNoCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dGVzdC92cDhfbXVsdGlfcmVzb2x1dGlvbl9lbmNvZGVyLnNoCkBAIC03MSw3ICs3MSw3IEBAIHZw
OF9tdWx0aV9yZXNvbHV0aW9uX2VuY29kZXJfdGhyZWVfZm9ybWF0cygpIHsKICAgICAgICAgJHts
YXllcl9iaXRyYXRlc30gXAogICAgICAgICAke3RlbXBvcmFsX2xheWVyc30gXAogICAgICAgICAi
JHtrZXlmcmFtZV9pbnNlcnR9IiBcCi0gICAgICAgIDAKKyAgICAgICAgMCB8fCByZXR1cm4gMQog
CiAgICAgICBmb3Igb3V0cHV0X2ZpbGUgaW4gJHtvdXRwdXRfZmlsZXN9OyBkbwogICAgICAgICBp
ZiBbICEgLWUgIiR7b3V0cHV0X2ZpbGV9IiBdOyB0aGVuCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3Rlc3QvdnA5X2FyZl9mcmVxX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X2FyZl9mcmVx
X3Rlc3QuY2MKaW5kZXggOWEzNDU1YjRhYTE1OTBjYzdiYWNmOTYyMzc2ZTE2ODdlNTVlOWRhOS4u
YzdlNmYxYWYwMjU4MWRhY2E4ZTQyOGRlNjc2ZjU0NWM5YzQzN2M3MiAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L3ZwOV9hcmZfZnJlcV90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92
cDlfYXJmX2ZyZXFfdGVzdC5jYwpAQCAtMjEzLDcgKzIxMyw3IEBAIFRFU1RfUChBcmZGcmVxVGVz
dCwgTWluQXJmRnJlcVRlc3QpIHsKICAgfQogfQogCi1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNF
KEFyZkZyZXFUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKGtUZXN0VmVjdG9ycyksCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oa0VuY29kZVZlY3RvcnMpLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtNaW5BcmZWZWN0
b3JzKSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURShBcmZGcmVxVGVzdCwgOjp0ZXN0aW5n
OjpWYWx1ZXNJbihrVGVzdFZlY3RvcnMpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXNJbihrRW5jb2RlVmVjdG9ycyksCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtNaW5BcmZWZWN0b3JzKSk7CiB9ICAvLyBuYW1lc3Bh
Y2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfYmxvY2tfZXJyb3JfdGVzdC5jYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdGVzdC92cDlfYmxvY2tfZXJyb3JfdGVzdC5jYwppbmRleCA3MWEwNjg2ZDdh
NTUxZTZmNDIzNzMwYjUwYjlmMWNjYWY0NzI0MDM0Li5iOTNiMDE0ZTY1MmEwNTFkOGUyMzAxMjQy
YTVjYTcyMGRjNDQ1OGIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X2Jsb2NrX2Vy
cm9yX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9ibG9ja19lcnJvcl90ZXN0LmNj
CkBAIC02Nyw2ICs2Nyw3IEBAIGNsYXNzIEJsb2NrRXJyb3JUZXN0IDogcHVibGljIDo6dGVzdGlu
Zzo6VGVzdFdpdGhQYXJhbTxCbG9ja0Vycm9yUGFyYW0+IHsKICAgSEJEQmxvY2tFcnJvckZ1bmMg
ZXJyb3JfYmxvY2tfb3BfOwogICBIQkRCbG9ja0Vycm9yRnVuYyByZWZfZXJyb3JfYmxvY2tfb3Bf
OwogfTsKK0dURVNUX0FMTE9XX1VOSU5TVEFOVElBVEVEX1BBUkFNRVRFUklaRURfVEVTVChCbG9j
a0Vycm9yVGVzdCk7CiAKIFRFU1RfUChCbG9ja0Vycm9yVGVzdCwgT3BlcmF0aW9uQ2hlY2spIHsK
ICAgQUNNUmFuZG9tIHJuZChBQ01SYW5kb206OkRldGVybWluaXN0aWNTZWVkKCkpOwpAQCAtMTg1
LDEyICsxODYsMTIgQEAgY29uc3QgQmxvY2tFcnJvclBhcmFtIHNzZTJfYmxvY2tfZXJyb3JfdGVz
dHNbXSA9IHsKICAgICAgICAgICAgICAmQmxvY2tFcnJvcjhCaXRXcmFwcGVyPHZwOV9ibG9ja19l
cnJvcl9jPiwgVlBYX0JJVFNfOCkKIH07CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKFNTRTIs
IEJsb2NrRXJyb3JUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXNJbihzc2UyX2Jsb2NrX2Vycm9yX3Rlc3RzKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1Ao
U1NFMiwgQmxvY2tFcnJvclRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXNJbihzc2UyX2Jsb2NrX2Vycm9yX3Rlc3RzKSk7CiAjZW5kaWYgIC8vIEhBVkVfU1NF
MgogCiAjaWYgSEFWRV9BVlgyCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRF
X1RFU1RfU1VJVEVfUCgKICAgICBBVlgyLCBCbG9ja0Vycm9yVGVzdCwKICAgICA6OnRlc3Rpbmc6
OlZhbHVlcyhtYWtlX3R1cGxlKCZCbG9ja0Vycm9yOEJpdFdyYXBwZXI8dnA5X2Jsb2NrX2Vycm9y
X2F2eDI+LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJkJsb2NrRXJyb3I4Qml0
V3JhcHBlcjx2cDlfYmxvY2tfZXJyb3JfYz4sCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qv
dnA5X2Jvb2xjb2Rlcl90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9ib29sY29kZXJfdGVz
dC5jYwppbmRleCAwY2FmYTY3MzBlMjUxYTA3YWQ2ODJhYTkzZDdiMTQ0YzQ5YmMwNWMzLi42YmEx
NzFhMDAwODBhM2MwYTIyMWIwZDNlNzE1ZjMwMTdlM2Y1YzNiIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rlc3QvdnA5X2Jvb2xjb2Rlcl90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlf
Ym9vbGNvZGVyX3Rlc3QuY2MKQEAgLTc0LDcgKzc0LDcgQEAgVEVTVChWUDksIFRlc3RCaXRJTykg
ewogICAgICAgICBHVEVTVF9BU1NFUlRfRVEoYndfYnVmZmVyWzBdICYgMHg4MCwgMCk7CiAKICAg
ICAgICAgdnB4X3JlYWRlciBicjsKLSAgICAgICAgdnB4X3JlYWRlcl9pbml0KCZiciwgYndfYnVm
ZmVyLCBrQnVmZmVyU2l6ZSwgTlVMTCwgTlVMTCk7CisgICAgICAgIHZweF9yZWFkZXJfaW5pdCgm
YnIsIGJ3X2J1ZmZlciwga0J1ZmZlclNpemUsIG51bGxwdHIsIG51bGxwdHIpOwogICAgICAgICBi
aXRfcm5kLlJlc2V0KHJhbmRvbV9zZWVkKTsKICAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBr
Qml0c1RvVGVzdDsgKytpKSB7CiAgICAgICAgICAgaWYgKGJpdF9tZXRob2QgPT0gMikgewpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9kYXRhcmF0ZV90ZXN0LmNjIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90ZXN0L3ZwOV9kYXRhcmF0ZV90ZXN0LmNjCmluZGV4IGY5ZjJhYWFmZmFmMWZhNTg2NmVhY2M1
NGIwMGQxYTkxZTFlMjBkNzMuLjk5MzBjNzU0YzdhNGZlYjNiNjEzYzQzMzRmYTgyZjJiNjRmMGI1
OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfZGF0YXJhdGVfdGVzdC5jYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rlc3QvdnA5X2RhdGFyYXRlX3Rlc3QuY2MKQEAgLTcwMSw3ICs3MDEsNyBA
QCBURVNUX1AoRGF0YXJhdGVUZXN0VlA5UmVhbFRpbWUsIFJlZ2lvbk9mSW50ZXJlc3QpIHsKICAg
Ly8gVXNlIDIgc3RhdGVzOiAxIGlzIGNlbnRlciBzcXVhcmUsIDAgaXMgdGhlIHJlc3QuCiAgIHJv
aV8ucm9pX21hcCA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDhfdCAqPigKICAgICAgIGNhbGxvYyhy
b2lfLnJvd3MgKiByb2lfLmNvbHMsIHNpemVvZigqcm9pXy5yb2lfbWFwKSkpOwotICBBU1NFUlRf
VFJVRShyb2lfLnJvaV9tYXAgIT0gTlVMTCk7CisgIEFTU0VSVF9ORShyb2lfLnJvaV9tYXAsIG51
bGxwdHIpOwogCiAgIGZvciAodW5zaWduZWQgaW50IGkgPSAwOyBpIDwgcm9pXy5yb3dzOyArK2kp
IHsKICAgICBmb3IgKHVuc2lnbmVkIGludCBqID0gMDsgaiA8IHJvaV8uY29sczsgKytqKSB7CkBA
IC05MzUsMjMgKzkzNSwyMyBAQCBURVNUX1AoRGF0YXJhdGVUZXN0VlA5UmVhbFRpbWVEZW5vaXNl
ciwgRGVub2lzZXJPZmZPbikgewogfQogI2VuZGlmICAvLyBDT05GSUdfVlA5X1RFTVBPUkFMX0RF
Tk9JU0lORwogCi1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKERhdGFyYXRlVGVzdFZQOVJlYWxU
aW1lTXVsdGlCUiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSg1
LCAxMCksIDo6dGVzdGluZzo6UmFuZ2UoMCwgNCkpOworVlA5X0lOU1RBTlRJQVRFX1RFU1RfU1VJ
VEUoRGF0YXJhdGVUZXN0VlA5UmVhbFRpbWVNdWx0aUJSLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgOjp0ZXN0aW5nOjpSYW5nZSg1LCAxMCksIDo6dGVzdGluZzo6UmFuZ2UoMCwgNCkpOwog
Ci1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKERhdGFyYXRlVGVzdFZQOUxhcmdlVkJSLCA6OnRl
c3Rpbmc6OlJhbmdlKDUsIDkpLAotICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6
OlJhbmdlKDAsIDIpKTsKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKERhdGFyYXRlVGVzdFZQ
OUxhcmdlVkJSLCA6OnRlc3Rpbmc6OlJhbmdlKDUsIDkpLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgwLCAyKSk7CiAKLVZQOV9JTlNUQU5USUFURV9URVNUX0NB
U0UoRGF0YXJhdGVUZXN0VlA5UmVhbFRpbWUsIDo6dGVzdGluZzo6UmFuZ2UoNSwgMTApKTsKK1ZQ
OV9JTlNUQU5USUFURV9URVNUX1NVSVRFKERhdGFyYXRlVGVzdFZQOVJlYWxUaW1lLCA6OnRlc3Rp
bmc6OlJhbmdlKDUsIDEwKSk7CiAKLVZQOV9JTlNUQU5USUFURV9URVNUX0NBU0UoRGF0YXJhdGVU
ZXN0VlA5UmVhbFRpbWVEZWx0YVFVViwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0
aW5nOjpSYW5nZSg1LCAxMCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6
VmFsdWVzKC01LCAtMTAsIC0xNSkpOworVlA5X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUoRGF0YXJh
dGVUZXN0VlA5UmVhbFRpbWVEZWx0YVFVViwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6
dGVzdGluZzo6UmFuZ2UoNSwgMTApLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXMoLTUsIC0xMCwgLTE1KSk7CiAKLVZQOV9JTlNUQU5USUFURV9URVNUX0NBU0Uo
RGF0YXJhdGVUZXN0VlA5UG9zdEVuY29kZURyb3AsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
IDo6dGVzdGluZzo6UmFuZ2UoNSwgNikpOworVlA5X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUoRGF0
YXJhdGVUZXN0VlA5UG9zdEVuY29kZURyb3AsCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6
OnRlc3Rpbmc6OlJhbmdlKDUsIDYpKTsKIAogI2lmIENPTkZJR19WUDlfVEVNUE9SQUxfREVOT0lT
SU5HCi1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKERhdGFyYXRlVGVzdFZQOVJlYWxUaW1lRGVu
b2lzZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoNSwgMTAp
KTsKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKERhdGFyYXRlVGVzdFZQOVJlYWxUaW1lRGVu
b2lzZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDUsIDEw
KSk7CiAjZW5kaWYKIH0gIC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0
L3ZwOV9kZW5vaXNlcl90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9kZW5vaXNlcl90ZXN0
LmNjCmluZGV4IDQ3ZmE1ODdmY2E3MzA4N2EzNzk1ZGQ3YTlmZWZkNjZlMDg2MTFiYWUuLmQ4ODRi
N2ViOTI1ODNiYTUzNmQ5OWI1MGUxZjI4MmJjYmQwMzc1MzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC92cDlfZGVub2lzZXJfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X2Rl
bm9pc2VyX3Rlc3QuY2MKQEAgLTUxLDYgKzUxLDcgQEAgY2xhc3MgVlA5RGVub2lzZXJUZXN0CiAg
cHJvdGVjdGVkOgogICBCTE9DS19TSVpFIGJzXzsKIH07CitHVEVTVF9BTExPV19VTklOU1RBTlRJ
QVRFRF9QQVJBTUVURVJJWkVEX1RFU1QoVlA5RGVub2lzZXJUZXN0KTsKIAogVEVTVF9QKFZQOURl
bm9pc2VyVGVzdCwgQml0ZXhhY3RDaGVjaykgewogICBBQ01SYW5kb20gcm5kKEFDTVJhbmRvbTo6
RGV0ZXJtaW5pc3RpY1NlZWQoKSk7CkBAIC0xMDQsNyArMTA1LDcgQEAgdXNpbmcgc3RkOjptYWtl
X3R1cGxlOwogCiAvLyBUZXN0IGZvciBhbGwgYmxvY2sgc2l6ZS4KICNpZiBIQVZFX1NTRTIKLUlO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNT
RTIsIFZQOURlbm9pc2VyVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2
cDlfZGVub2lzZXJfZmlsdGVyX3NzZTIsIEJMT0NLXzhYOCksCiAgICAgICAgICAgICAgICAgICAg
ICAgbWFrZV90dXBsZSgmdnA5X2Rlbm9pc2VyX2ZpbHRlcl9zc2UyLCBCTE9DS184WDE2KSwKQEAg
LTExOSw3ICsxMjAsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNlbmRpZiAgLy8gSEFW
RV9TU0UyCiAKICNpZiBIQVZFX05FT04KLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QKAogICAgIE5FT04sIFZQOURlbm9pc2VyVGVzdCwKICAgICA6OnRl
c3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cDlfZGVub2lzZXJfZmlsdGVyX25lb24sIEJMT0NL
XzhYOCksCiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSgmdnA5X2Rlbm9pc2VyX2Zp
bHRlcl9uZW9uLCBCTE9DS184WDE2KSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlf
ZW5jb2Rlcl9wYXJtc19nZXRfdG9fZGVjb2Rlci5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfZW5j
b2Rlcl9wYXJtc19nZXRfdG9fZGVjb2Rlci5jYwppbmRleCBmYWRlMDhiYmQ0NzUxZWQ4MTQ1ZjQw
YTllYjhkNWNiYmYwYjg2M2M4Li5jZTIxOThjNTkyMTgxN2VhODFjYTAyMWVjODcyYjEzYWE0MTJm
OWY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X2VuY29kZXJfcGFybXNfZ2V0X3Rv
X2RlY29kZXIuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9lbmNvZGVyX3Bhcm1zX2dldF90
b19kZWNvZGVyLmNjCkBAIC0xNDIsMTIgKzE0MiwxMiBAQCBURVNUX1AoVnB4RW5jb2RlclBhcm1z
R2V0VG9EZWNvZGVyLCBCaXRzdHJlYW1QYXJtcykgewogCiAgIHN0ZDo6dW5pcXVlX3B0cjxsaWJ2
cHhfdGVzdDo6VmlkZW9Tb3VyY2U+IHZpZGVvKAogICAgICAgbmV3IGxpYnZweF90ZXN0OjpZNG1W
aWRlb1NvdXJjZSh0ZXN0X3ZpZGVvXy5uYW1lLCAwLCB0ZXN0X3ZpZGVvXy5mcmFtZXMpKTsKLSAg
QVNTRVJUX1RSVUUodmlkZW8uZ2V0KCkgIT0gTlVMTCk7CisgIEFTU0VSVF9ORSh2aWRlby5nZXQo
KSwgbnVsbHB0cik7CiAKICAgQVNTRVJUX05PX0ZBVEFMX0ZBSUxVUkUoUnVuTG9vcCh2aWRlby5n
ZXQoKSkpOwogfQogCi1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKFZweEVuY29kZXJQYXJtc0dl
dFRvRGVjb2RlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJ
bihrVlA5RW5jb2RlUGFyYW1ldGVyU2V0KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXNJbihrVlA5RW5jb2RlUGVyZlRlc3RWZWN0b3JzKSk7CitWUDlfSU5TVEFO
VElBVEVfVEVTVF9TVUlURShWcHhFbmNvZGVyUGFybXNHZXRUb0RlY29kZXIsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtWUDlFbmNvZGVQYXJhbWV0ZXJT
ZXQpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrVlA5
RW5jb2RlUGVyZlRlc3RWZWN0b3JzKSk7CiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC92cDlfZW5kX3RvX2VuZF90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3Zw
OV9lbmRfdG9fZW5kX3Rlc3QuY2MKaW5kZXggN2NiNzE2ZjIyNjI0YzE5YzllZjZkNmY0YmIzMzQx
NGFmMzcwYmQzMS4uN2NjMTI2ZWE1ODAwZjgzMzFlMGYzOTQ0YmU5Mjg3Yzg1ZjYyMjJlOSAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9lbmRfdG9fZW5kX3Rlc3QuY2MKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L3ZwOV9lbmRfdG9fZW5kX3Rlc3QuY2MKQEAgLTU5LDYgKzU5LDEwIEBAIGNv
bnN0IFRlc3RWaWRlb1BhcmFtIGtUZXN0VmVjdG9yc1tdID0gewogI2VuZGlmICAvLyBDT05GSUdf
VlA5X0hJR0hCSVRERVBUSAogfTsKIAorY29uc3QgVGVzdFZpZGVvUGFyYW0ga1Rlc3RWZWN0b3Jz
TnYxMltdID0geworICB7ICJoYW50cm9fY29sbGFnZV93MzUyaDI4OF9udjEyLnl1diIsIDgsIFZQ
WF9JTUdfRk1UX05WMTIsIFZQWF9CSVRTXzgsIDAgfSwKK307CisKIC8vIEVuY29kaW5nIG1vZGVz
IHRlc3RlZAogY29uc3QgbGlidnB4X3Rlc3Q6OlRlc3RNb2RlIGtFbmNvZGluZ01vZGVWZWN0b3Jz
W10gPSB7CiAgIDo6bGlidnB4X3Rlc3Q6OmtUd29QYXNzR29vZCwgOjpsaWJ2cHhfdGVzdDo6a09u
ZVBhc3NHb29kLApAQCAtMjM3LDYgKzI0MSwyNyBAQCBjbGFzcyBFbmRUb0VuZFRlc3RMb29wRmls
dGVyVGhyZWFkaW5nCiB9OwogI2VuZGlmICAvLyBDT05GSUdfVlA5X0RFQ09ERVIKIAorY2xhc3Mg
RW5kVG9FbmROVjEyIDogcHVibGljIEVuZFRvRW5kVGVzdExhcmdlIHt9OworCitURVNUX1AoRW5k
VG9FbmROVjEyLCBFbmR0b0VuZE5WMTJUZXN0KSB7CisgIGNmZ18ucmNfdGFyZ2V0X2JpdHJhdGUg
PSBrQml0cmF0ZTsKKyAgY2ZnXy5nX2Vycm9yX3Jlc2lsaWVudCA9IDA7CisgIGNmZ18uZ19wcm9m
aWxlID0gdGVzdF92aWRlb19wYXJhbV8ucHJvZmlsZTsKKyAgY2ZnXy5nX2lucHV0X2JpdF9kZXB0
aCA9IHRlc3RfdmlkZW9fcGFyYW1fLmlucHV0X2JpdF9kZXB0aDsKKyAgY2ZnXy5nX2JpdF9kZXB0
aCA9IHRlc3RfdmlkZW9fcGFyYW1fLmJpdF9kZXB0aDsKKyAgaW5pdF9mbGFnc18gPSBWUFhfQ09E
RUNfVVNFX1BTTlI7CisgIGlmIChjZmdfLmdfYml0X2RlcHRoID4gOCkgaW5pdF9mbGFnc18gfD0g
VlBYX0NPREVDX1VTRV9ISUdIQklUREVQVEg7CisKKyAgc3RkOjp1bmlxdWVfcHRyPGxpYnZweF90
ZXN0OjpWaWRlb1NvdXJjZT4gdmlkZW87CisKKyAgdmlkZW8ucmVzZXQobmV3IGxpYnZweF90ZXN0
OjpZVVZWaWRlb1NvdXJjZSh0ZXN0X3ZpZGVvX3BhcmFtXy5maWxlbmFtZSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3ZpZGVvX3BhcmFtXy5mbXQs
IDM1MiwgMjg4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDMwLCAxLCAwLCAxMDApKTsKKyAgQVNTRVJUX05FKHZpZGVvLmdldCgpLCBudWxscHRyKTsKKwor
ICBBU1NFUlRfTk9fRkFUQUxfRkFJTFVSRShSdW5Mb29wKHZpZGVvLmdldCgpKSk7Cit9CisKIFRF
U1RfUChFbmRUb0VuZFRlc3RMYXJnZSwgRW5kdG9FbmRQU05SVGVzdCkgewogICBjZmdfLnJjX3Rh
cmdldF9iaXRyYXRlID0ga0JpdHJhdGU7CiAgIGNmZ18uZ19lcnJvcl9yZXNpbGllbnQgPSAwOwpA
QCAtMjU1LDcgKzI4MCw3IEBAIFRFU1RfUChFbmRUb0VuZFRlc3RMYXJnZSwgRW5kdG9FbmRQU05S
VGVzdCkgewogICAgICAgICB0ZXN0X3ZpZGVvX3BhcmFtXy5maWxlbmFtZSwgdGVzdF92aWRlb19w
YXJhbV8uZm10LCBrV2lkdGgsIGtIZWlnaHQsCiAgICAgICAgIGtGcmFtZXJhdGUsIDEsIDAsIGtG
cmFtZXMpKTsKICAgfQotICBBU1NFUlRfVFJVRSh2aWRlby5nZXQoKSAhPSBOVUxMKTsKKyAgQVNT
RVJUX05FKHZpZGVvLmdldCgpLCBudWxscHRyKTsKIAogICBBU1NFUlRfTk9fRkFUQUxfRkFJTFVS
RShSdW5Mb29wKHZpZGVvLmdldCgpKSk7CiAgIGNvbnN0IGRvdWJsZSBwc25yID0gR2V0QXZlcmFn
ZVBzbnIoKTsKQEAgLTI4Miw3ICszMDcsNyBAQCBURVNUX1AoRW5kVG9FbmRUZXN0TGFyZ2UsIEVu
ZHRvRW5kUFNOUkRlbm9pc2VyQVFUZXN0KSB7CiAgICAgICAgIHRlc3RfdmlkZW9fcGFyYW1fLmZp
bGVuYW1lLCB0ZXN0X3ZpZGVvX3BhcmFtXy5mbXQsIGtXaWR0aCwga0hlaWdodCwKICAgICAgICAg
a0ZyYW1lcmF0ZSwgMSwgMCwga0ZyYW1lcykpOwogICB9Ci0gIEFTU0VSVF9UUlVFKHZpZGVvLmdl
dCgpICE9IE5VTEwpOworICBBU1NFUlRfTkUodmlkZW8uZ2V0KCksIG51bGxwdHIpOwogCiAgIEFT
U0VSVF9OT19GQVRBTF9GQUlMVVJFKFJ1bkxvb3AodmlkZW8uZ2V0KCkpKTsKICAgY29uc3QgZG91
YmxlIHBzbnIgPSBHZXRBdmVyYWdlUHNucigpOwpAQCAtMzA5LDE2ICszMzQsMjEgQEAgVEVTVF9Q
KEVuZFRvRW5kVGVzdExvb3BGaWx0ZXJUaHJlYWRpbmcsIFRpbGVDb3VudENoYW5nZSkgewogfQog
I2VuZGlmICAvLyBDT05GSUdfVlA5X0RFQ09ERVIKIAotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FT
RShFbmRUb0VuZFRlc3RMYXJnZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXNJbihrRW5jb2RpbmdNb2RlVmVjdG9ycyksCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oa1Rlc3RWZWN0b3JzKSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrQ3B1VXNlZFZlY3RvcnMpKTsKK1ZQOV9JTlNU
QU5USUFURV9URVNUX1NVSVRFKEVuZFRvRW5kVGVzdExhcmdlLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrRW5jb2RpbmdNb2RlVmVjdG9ycyksCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtUZXN0VmVjdG9ycyks
CisgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtDcHVVc2Vk
VmVjdG9ycykpOworCitWUDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURShFbmRUb0VuZE5WMTIsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0
OjprUmVhbFRpbWUpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXNJbihrVGVzdFZlY3RvcnNOdjEyKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVz
dGluZzo6VmFsdWVzKDYsIDcsIDgpKTsKIAotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShFbmRU
b0VuZFRlc3RBZGFwdGl2ZVJEVGhyZXNoLAotICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRl
c3Rpbmc6OlZhbHVlcyg1LCA2LCA3KSwgOjp0ZXN0aW5nOjpWYWx1ZXMoOCwgOSkpOworVlA5X0lO
U1RBTlRJQVRFX1RFU1RfU1VJVEUoRW5kVG9FbmRUZXN0QWRhcHRpdmVSRFRocmVzaCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKDUsIDYsIDcpLCA6OnRlc3Rp
bmc6OlZhbHVlcyg4LCA5KSk7CiAKICNpZiBDT05GSUdfVlA5X0RFQ09ERVIKLVZQOV9JTlNUQU5U
SUFURV9URVNUX0NBU0UoRW5kVG9FbmRUZXN0TG9vcEZpbHRlclRocmVhZGluZywgOjp0ZXN0aW5n
OjpCb29sKCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoMiwg
NikpOworVlA5X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUoRW5kVG9FbmRUZXN0TG9vcEZpbHRlclRo
cmVhZGluZywgOjp0ZXN0aW5nOjpCb29sKCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6
OnRlc3Rpbmc6OlJhbmdlKDIsIDYpKTsKICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9ERUNPREVSCiB9
ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfZXRocmVhZF90
ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9ldGhyZWFkX3Rlc3QuY2MKaW5kZXggNmRlNzZl
OWU1NTU0OTRiYTJmMzA3N2Q4MGM0ZjEyNGU5OWRlZWI4ZC4uMjFjYWY3OTE4YzJiOTU3MTU4YzUy
OTU0NGI0YzZiZjc0YWNiN2MyOCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9ldGhy
ZWFkX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9ldGhyZWFkX3Rlc3QuY2MKQEAg
LTQxLDcgKzQxLDcgQEAgY2xhc3MgVlB4Rmlyc3RQYXNzRW5jb2RlclRocmVhZFRlc3QKIAogICAg
IHJvd19tdF9tb2RlXyA9IDE7CiAgICAgZmlyc3RfcGFzc19vbmx5XyA9IHRydWU7Ci0gICAgZmly
c3RwYXNzX3N0YXRzXy5idWYgPSBOVUxMOworICAgIGZpcnN0cGFzc19zdGF0c18uYnVmID0gbnVs
bHB0cjsKICAgICBmaXJzdHBhc3Nfc3RhdHNfLnN6ID0gMDsKICAgfQogICB2aXJ0dWFsIH5WUHhG
aXJzdFBhc3NFbmNvZGVyVGhyZWFkVGVzdCgpIHsgZnJlZShmaXJzdHBhc3Nfc3RhdHNfLmJ1Zik7
IH0KQEAgLTM5MCw3ICszOTAsNyBAQCBURVNUX1AoVlB4RW5jb2RlclRocmVhZFRlc3QsIEVuY29k
ZXJSZXN1bHRUZXN0KSB7CiAgIEVYUEVDVF9ORUFSKHNpbmdsZV90aHJfcHNuciwgbXVsdGlfdGhy
X3BzbnIsIDAuMik7CiB9CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QKAogICAgIFZQOSwgVlB4Rmlyc3RQYXNzRW5jb2RlclRocmVhZFRlc3QsCiAg
ICAgOjp0ZXN0aW5nOjpDb21iaW5lKAogICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcygKQEAgLTQw
MSw3ICs0MDEsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKIC8vIFNwbGl0IHRoaXMgaW50
byB0d28gaW5zdGFudGlhdGlvbnMgc28gdGhhdCB3ZSBjYW4gZGlzdGluZ3Vpc2gKIC8vIGJldHdl
ZW4gdmVyeSBzbG93IHJ1bnMgKCBpZSBjcHVfc3BlZWQgMCApIHZzIG9uZXMgdGhhdCBjYW4gYmUK
IC8vIHJ1biBuaWdodGx5IGJ5IGFkZGluZyBMYXJnZSB0byB0aGUgdGl0bGUuCi1JTlNUQU5USUFU
RV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBWUDksIFZQeEVu
Y29kZXJUaHJlYWRUZXN0LAogICAgIDo6dGVzdGluZzo6Q29tYmluZSgKICAgICAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXMoCkBAIC00MTMsNyArNDEzLDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1Ao
CiAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoMCwgMyksICAgIC8vIHRpbGVfY29sdW1ucwogICAg
ICAgICA6OnRlc3Rpbmc6OlJhbmdlKDIsIDUpKSk7ICAvLyB0aHJlYWRzCiAKLUlOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFZQOUxhcmdlLCBW
UHhFbmNvZGVyVGhyZWFkVGVzdCwKICAgICA6OnRlc3Rpbmc6OkNvbWJpbmUoCiAgICAgICAgIDo6
dGVzdGluZzo6VmFsdWVzKApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9leHRfcmF0
ZWN0cmxfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfZXh0X3JhdGVjdHJsX3Rlc3QuY2MK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNGIzNjkzYTM0NzBkNjg1NTRkZTMwNmYzNzE4YTAwNDEzYWVkNjUyYgotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfZXh0X3JhdGVjdHJsX3Rlc3QuY2MK
QEAgLTAsMCArMSwxOTUgQEAKKy8qCisgKiAgQ29weXJpZ2h0IChjKSAyMDIwIFRoZSBXZWJNIHBy
b2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyAqCisgKiAgVXNlIG9mIHRoaXMg
c291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZQorICogIHRoYXQg
Y2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJj
ZQorICogIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBn
cmFudCBjYW4gYmUgZm91bmQKKyAqICBpbiB0aGUgZmlsZSBQQVRFTlRTLiAgQWxsIGNvbnRyaWJ1
dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisgKiAgYmUgZm91bmQgaW4gdGhlIEFVVEhPUlMgZmls
ZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisgKi8KKworI2luY2x1ZGUgPG5ldz4K
KworI2luY2x1ZGUgInRlc3QvY29kZWNfZmFjdG9yeS5oIgorI2luY2x1ZGUgInRlc3QvZW5jb2Rl
X3Rlc3RfZHJpdmVyLmgiCisjaW5jbHVkZSAidGVzdC91dGlsLmgiCisjaW5jbHVkZSAidGVzdC95
dXZfdmlkZW9fc291cmNlLmgiCisjaW5jbHVkZSAidGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMv
aW5jbHVkZS9ndGVzdC9ndGVzdC5oIgorI2luY2x1ZGUgInZweC92cHhfZXh0X3JhdGVjdHJsLmgi
CisKK25hbWVzcGFjZSB7CisKK2NvbnN0ZXhwciBpbnQga01vZGVsTWFnaWNOdW1iZXIgPSA1MTM5
NjsKK2NvbnN0ZXhwciB1bnNpZ25lZCBpbnQgUHJpdk1hZ2ljTnVtYmVyID0gNTU2NjsKK2NvbnN0
ZXhwciBpbnQga0ZyYW1lTnVtID0gNTsKK2NvbnN0ZXhwciBpbnQga0xvc3NsZXNzQ29kaW5nSW5k
ZXggPSAyOworCitzdHJ1Y3QgVG95UmF0ZUN0cmwgeworICBpbnQgbWFnaWNfbnVtYmVyOworICBp
bnQgY29kaW5nX2luZGV4OworfTsKKwordnB4X3JjX3N0YXR1c190IHJjX2NyZWF0ZV9tb2RlbCh2
b2lkICpwcml2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2cHhfcmNf
Y29uZmlnX3QgKnJhdGVjdHJsX2NvbmZpZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdnB4X3JjX21vZGVsX3QgKnJhdGVfY3RybF9tb2RlbF9wdCkgeworICBUb3lSYXRlQ3RybCAq
dG95X3JhdGVfY3RybCA9IG5ldyAoc3RkOjpub3Rocm93KSBUb3lSYXRlQ3RybDsKKyAgRVhQRUNU
X05FKHRveV9yYXRlX2N0cmwsIG51bGxwdHIpOworICB0b3lfcmF0ZV9jdHJsLT5tYWdpY19udW1i
ZXIgPSBrTW9kZWxNYWdpY051bWJlcjsKKyAgdG95X3JhdGVfY3RybC0+Y29kaW5nX2luZGV4ID0g
LTE7CisgICpyYXRlX2N0cmxfbW9kZWxfcHQgPSB0b3lfcmF0ZV9jdHJsOworICBFWFBFQ1RfRVEo
cHJpdiwgcmVpbnRlcnByZXRfY2FzdDx2b2lkICo+KFByaXZNYWdpY051bWJlcikpOworICBFWFBF
Q1RfRVEocmF0ZWN0cmxfY29uZmlnLT5mcmFtZV93aWR0aCwgMzUyKTsKKyAgRVhQRUNUX0VRKHJh
dGVjdHJsX2NvbmZpZy0+ZnJhbWVfaGVpZ2h0LCAyODgpOworICBFWFBFQ1RfRVEocmF0ZWN0cmxf
Y29uZmlnLT5zaG93X2ZyYW1lX2NvdW50LCBrRnJhbWVOdW0pOworICBFWFBFQ1RfRVEocmF0ZWN0
cmxfY29uZmlnLT50YXJnZXRfYml0cmF0ZV9rYnBzLCAyNDAwMCk7CisgIEVYUEVDVF9FUShyYXRl
Y3RybF9jb25maWctPmZyYW1lX3JhdGVfbnVtLCAzMCk7CisgIEVYUEVDVF9FUShyYXRlY3RybF9j
b25maWctPmZyYW1lX3JhdGVfZGVuLCAxKTsKKyAgcmV0dXJuIFZQWF9SQ19PSzsKK30KKwordnB4
X3JjX3N0YXR1c190IHJjX3NlbmRfZmlyc3RwYXNzX3N0YXRzKAorICAgIHZweF9yY19tb2RlbF90
IHJhdGVfY3RybF9tb2RlbCwKKyAgICBjb25zdCB2cHhfcmNfZmlyc3RwYXNzX3N0YXRzX3QgKmZp
cnN0X3Bhc3Nfc3RhdHMpIHsKKyAgY29uc3QgVG95UmF0ZUN0cmwgKnRveV9yYXRlX2N0cmwgPQor
ICAgICAgc3RhdGljX2Nhc3Q8VG95UmF0ZUN0cmwgKj4ocmF0ZV9jdHJsX21vZGVsKTsKKyAgRVhQ
RUNUX0VRKHRveV9yYXRlX2N0cmwtPm1hZ2ljX251bWJlciwga01vZGVsTWFnaWNOdW1iZXIpOwor
ICBFWFBFQ1RfRVEoZmlyc3RfcGFzc19zdGF0cy0+bnVtX2ZyYW1lcywga0ZyYW1lTnVtKTsKKyAg
Zm9yIChpbnQgaSA9IDA7IGkgPCBmaXJzdF9wYXNzX3N0YXRzLT5udW1fZnJhbWVzOyArK2kpIHsK
KyAgICBFWFBFQ1RfRE9VQkxFX0VRKGZpcnN0X3Bhc3Nfc3RhdHMtPmZyYW1lX3N0YXRzW2ldLmZy
YW1lLCBpKTsKKyAgfQorICByZXR1cm4gVlBYX1JDX09LOworfQorCit2cHhfcmNfc3RhdHVzX3Qg
cmNfZ2V0X2VuY29kZWZyYW1lX2RlY2lzaW9uKAorICAgIHZweF9yY19tb2RlbF90IHJhdGVfY3Ry
bF9tb2RlbCwKKyAgICBjb25zdCB2cHhfcmNfZW5jb2RlZnJhbWVfaW5mb190ICplbmNvZGVfZnJh
bWVfaW5mbywKKyAgICB2cHhfcmNfZW5jb2RlZnJhbWVfZGVjaXNpb25fdCAqZnJhbWVfZGVjaXNp
b24pIHsKKyAgVG95UmF0ZUN0cmwgKnRveV9yYXRlX2N0cmwgPSBzdGF0aWNfY2FzdDxUb3lSYXRl
Q3RybCAqPihyYXRlX2N0cmxfbW9kZWwpOworICB0b3lfcmF0ZV9jdHJsLT5jb2RpbmdfaW5kZXgg
Kz0gMTsKKworICBFWFBFQ1RfRVEodG95X3JhdGVfY3RybC0+bWFnaWNfbnVtYmVyLCBrTW9kZWxN
YWdpY051bWJlcik7CisKKyAgRVhQRUNUX0xUKGVuY29kZV9mcmFtZV9pbmZvLT5zaG93X2luZGV4
LCBrRnJhbWVOdW0pOworICBFWFBFQ1RfRVEoZW5jb2RlX2ZyYW1lX2luZm8tPmNvZGluZ19pbmRl
eCwgdG95X3JhdGVfY3RybC0+Y29kaW5nX2luZGV4KTsKKworICBpZiAoZW5jb2RlX2ZyYW1lX2lu
Zm8tPmNvZGluZ19pbmRleCA9PSAwKSB7CisgICAgRVhQRUNUX0VRKGVuY29kZV9mcmFtZV9pbmZv
LT5zaG93X2luZGV4LCAwKTsKKyAgICBFWFBFQ1RfRVEoZW5jb2RlX2ZyYW1lX2luZm8tPmdvcF9p
bmRleCwgMCk7CisgICAgRVhQRUNUX0VRKGVuY29kZV9mcmFtZV9pbmZvLT5mcmFtZV90eXBlLCAw
IC8qa0ZyYW1lVHlwZUtleSovKTsKKyAgICBFWFBFQ1RfRVEoZW5jb2RlX2ZyYW1lX2luZm8tPnJl
Zl9mcmFtZV92YWxpZF9saXN0WzBdLAorICAgICAgICAgICAgICAwKTsgIC8vIGtSZWZGcmFtZVR5
cGVMYXN0CisgICAgRVhQRUNUX0VRKGVuY29kZV9mcmFtZV9pbmZvLT5yZWZfZnJhbWVfdmFsaWRf
bGlzdFsxXSwKKyAgICAgICAgICAgICAgMCk7ICAvLyBrUmVmRnJhbWVUeXBlUGFzdAorICAgIEVY
UEVDVF9FUShlbmNvZGVfZnJhbWVfaW5mby0+cmVmX2ZyYW1lX3ZhbGlkX2xpc3RbMl0sCisgICAg
ICAgICAgICAgIDApOyAgLy8ga1JlZkZyYW1lVHlwZUZ1dHVyZQorICB9CisKKyAgaWYgKGVuY29k
ZV9mcmFtZV9pbmZvLT5jb2RpbmdfaW5kZXggPT0gMSkgeworICAgIEVYUEVDVF9FUShlbmNvZGVf
ZnJhbWVfaW5mby0+c2hvd19pbmRleCwgNCk7CisgICAgRVhQRUNUX0VRKGVuY29kZV9mcmFtZV9p
bmZvLT5nb3BfaW5kZXgsIDEpOworICAgIEVYUEVDVF9FUShlbmNvZGVfZnJhbWVfaW5mby0+ZnJh
bWVfdHlwZSwgMiAvKmtGcmFtZVR5cGVBbHRSZWYqLyk7CisgICAgRVhQRUNUX0VRKGVuY29kZV9m
cmFtZV9pbmZvLT5yZWZfZnJhbWVfdmFsaWRfbGlzdFswXSwKKyAgICAgICAgICAgICAgMSk7ICAv
LyBrUmVmRnJhbWVUeXBlTGFzdAorICAgIEVYUEVDVF9FUShlbmNvZGVfZnJhbWVfaW5mby0+cmVm
X2ZyYW1lX3ZhbGlkX2xpc3RbMV0sCisgICAgICAgICAgICAgIDApOyAgLy8ga1JlZkZyYW1lVHlw
ZVBhc3QKKyAgICBFWFBFQ1RfRVEoZW5jb2RlX2ZyYW1lX2luZm8tPnJlZl9mcmFtZV92YWxpZF9s
aXN0WzJdLAorICAgICAgICAgICAgICAwKTsgIC8vIGtSZWZGcmFtZVR5cGVGdXR1cmUKKyAgICBF
WFBFQ1RfRVEoZW5jb2RlX2ZyYW1lX2luZm8tPnJlZl9mcmFtZV9jb2RpbmdfaW5kZXhlc1swXSwK
KyAgICAgICAgICAgICAgMCk7ICAvLyBrUmVmRnJhbWVUeXBlTGFzdAorICB9CisKKyAgaWYgKGVu
Y29kZV9mcmFtZV9pbmZvLT5jb2RpbmdfaW5kZXggPj0gMiAmJgorICAgICAgZW5jb2RlX2ZyYW1l
X2luZm8tPmNvZGluZ19pbmRleCA8IDUpIHsKKyAgICAvLyBJbiB0aGUgZmlyc3QgZ3JvdXAgb2Yg
cGljdHVyZXMsIGNvZGluZ19pbmRleCBhbmQgZ29wX2luZGV4IGFyZSBlcXVhbC4KKyAgICBFWFBF
Q1RfRVEoZW5jb2RlX2ZyYW1lX2luZm8tPmdvcF9pbmRleCwgZW5jb2RlX2ZyYW1lX2luZm8tPmNv
ZGluZ19pbmRleCk7CisgICAgRVhQRUNUX0VRKGVuY29kZV9mcmFtZV9pbmZvLT5mcmFtZV90eXBl
LCAxIC8qa0ZyYW1lVHlwZUludGVyKi8pOworICB9CisKKyAgaWYgKGVuY29kZV9mcmFtZV9pbmZv
LT5jb2RpbmdfaW5kZXggPT0gNSkgeworICAgIEVYUEVDVF9FUShlbmNvZGVfZnJhbWVfaW5mby0+
c2hvd19pbmRleCwgNCk7CisgICAgRVhQRUNUX0VRKGVuY29kZV9mcmFtZV9pbmZvLT5nb3BfaW5k
ZXgsIDApOworICAgIEVYUEVDVF9FUShlbmNvZGVfZnJhbWVfaW5mby0+ZnJhbWVfdHlwZSwgMyAv
KmtGcmFtZVR5cGVPdmVybGF5Ki8pOworICAgIEVYUEVDVF9FUShlbmNvZGVfZnJhbWVfaW5mby0+
cmVmX2ZyYW1lX3ZhbGlkX2xpc3RbMF0sCisgICAgICAgICAgICAgIDEpOyAgLy8ga1JlZkZyYW1l
VHlwZUxhc3QKKyAgICBFWFBFQ1RfRVEoZW5jb2RlX2ZyYW1lX2luZm8tPnJlZl9mcmFtZV92YWxp
ZF9saXN0WzFdLAorICAgICAgICAgICAgICAxKTsgIC8vIGtSZWZGcmFtZVR5cGVQYXN0CisgICAg
RVhQRUNUX0VRKGVuY29kZV9mcmFtZV9pbmZvLT5yZWZfZnJhbWVfdmFsaWRfbGlzdFsyXSwKKyAg
ICAgICAgICAgICAgMSk7ICAvLyBrUmVmRnJhbWVUeXBlRnV0dXJlCisgICAgRVhQRUNUX0VRKGVu
Y29kZV9mcmFtZV9pbmZvLT5yZWZfZnJhbWVfY29kaW5nX2luZGV4ZXNbMF0sCisgICAgICAgICAg
ICAgIDQpOyAgLy8ga1JlZkZyYW1lVHlwZUxhc3QKKyAgICBFWFBFQ1RfRVEoZW5jb2RlX2ZyYW1l
X2luZm8tPnJlZl9mcmFtZV9jb2RpbmdfaW5kZXhlc1sxXSwKKyAgICAgICAgICAgICAgMCk7ICAv
LyBrUmVmRnJhbWVUeXBlUGFzdAorICAgIEVYUEVDVF9FUShlbmNvZGVfZnJhbWVfaW5mby0+cmVm
X2ZyYW1lX2NvZGluZ19pbmRleGVzWzJdLAorICAgICAgICAgICAgICAxKTsgIC8vIGtSZWZGcmFt
ZVR5cGVGdXR1cmUKKyAgfQorICBpZiAoZW5jb2RlX2ZyYW1lX2luZm8tPmNvZGluZ19pbmRleCA9
PSBrTG9zc2xlc3NDb2RpbmdJbmRleCkgeworICAgIC8vIFdlIHNob3VsZCBnZXQgc3NlID09IDAg
YXQgcmNfdXBkYXRlX2VuY29kZWZyYW1lX3Jlc3VsdCgpCisgICAgZnJhbWVfZGVjaXNpb24tPnFf
aW5kZXggPSAwOworICB9IGVsc2UgeworICAgIGZyYW1lX2RlY2lzaW9uLT5xX2luZGV4ID0gMTAw
OworICB9CisgIHJldHVybiBWUFhfUkNfT0s7Cit9CisKK3ZweF9yY19zdGF0dXNfdCByY191cGRh
dGVfZW5jb2RlZnJhbWVfcmVzdWx0KAorICAgIHZweF9yY19tb2RlbF90IHJhdGVfY3RybF9tb2Rl
bCwKKyAgICBjb25zdCB2cHhfcmNfZW5jb2RlZnJhbWVfcmVzdWx0X3QgKmVuY29kZV9mcmFtZV9y
ZXN1bHQpIHsKKyAgY29uc3QgVG95UmF0ZUN0cmwgKnRveV9yYXRlX2N0cmwgPQorICAgICAgc3Rh
dGljX2Nhc3Q8VG95UmF0ZUN0cmwgKj4ocmF0ZV9jdHJsX21vZGVsKTsKKyAgRVhQRUNUX0VRKHRv
eV9yYXRlX2N0cmwtPm1hZ2ljX251bWJlciwga01vZGVsTWFnaWNOdW1iZXIpOworCisgIGNvbnN0
IGludDY0X3QgcmVmX3BpeGVsX2NvdW50ID0gMzUyICogMjg4ICogMyAvIDI7CisgIEVYUEVDVF9F
UShlbmNvZGVfZnJhbWVfcmVzdWx0LT5waXhlbF9jb3VudCwgcmVmX3BpeGVsX2NvdW50KTsKKyAg
aWYgKHRveV9yYXRlX2N0cmwtPmNvZGluZ19pbmRleCA9PSBrTG9zc2xlc3NDb2RpbmdJbmRleCkg
eworICAgIEVYUEVDVF9FUShlbmNvZGVfZnJhbWVfcmVzdWx0LT5zc2UsIDApOworICB9CisgIHJl
dHVybiBWUFhfUkNfT0s7Cit9CisKK3ZweF9yY19zdGF0dXNfdCByY19kZWxldGVfbW9kZWwodnB4
X3JjX21vZGVsX3QgcmF0ZV9jdHJsX21vZGVsKSB7CisgIFRveVJhdGVDdHJsICp0b3lfcmF0ZV9j
dHJsID0gc3RhdGljX2Nhc3Q8VG95UmF0ZUN0cmwgKj4ocmF0ZV9jdHJsX21vZGVsKTsKKyAgRVhQ
RUNUX0VRKHRveV9yYXRlX2N0cmwtPm1hZ2ljX251bWJlciwga01vZGVsTWFnaWNOdW1iZXIpOwor
ICBkZWxldGUgdG95X3JhdGVfY3RybDsKKyAgcmV0dXJuIFZQWF9SQ19PSzsKK30KKworY2xhc3Mg
RXh0UmF0ZUN0cmxUZXN0IDogcHVibGljIDo6bGlidnB4X3Rlc3Q6OkVuY29kZXJUZXN0LAorICAg
ICAgICAgICAgICAgICAgICAgICAgcHVibGljIDo6dGVzdGluZzo6VGVzdCB7CisgcHJvdGVjdGVk
OgorICBFeHRSYXRlQ3RybFRlc3QoKSA6IEVuY29kZXJUZXN0KCY6OmxpYnZweF90ZXN0OjprVlA5
KSB7fQorCisgIH5FeHRSYXRlQ3RybFRlc3QoKSBvdmVycmlkZSA9IGRlZmF1bHQ7CisKKyAgdm9p
ZCBTZXRVcCgpIG92ZXJyaWRlIHsKKyAgICBJbml0aWFsaXplQ29uZmlnKCk7CisgICAgU2V0TW9k
ZSg6OmxpYnZweF90ZXN0OjprVHdvUGFzc0dvb2QpOworICB9CisKKyAgdm9pZCBQcmVFbmNvZGVG
cmFtZUhvb2soOjpsaWJ2cHhfdGVzdDo6VmlkZW9Tb3VyY2UgKnZpZGVvLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICA6OmxpYnZweF90ZXN0OjpFbmNvZGVyICplbmNvZGVyKSBvdmVycmlkZSB7
CisgICAgaWYgKHZpZGVvLT5mcmFtZSgpID09IDApIHsKKyAgICAgIHZweF9yY19mdW5jc190IHJj
X2Z1bmNzOworICAgICAgcmNfZnVuY3MuY3JlYXRlX21vZGVsID0gcmNfY3JlYXRlX21vZGVsOwor
ICAgICAgcmNfZnVuY3Muc2VuZF9maXJzdHBhc3Nfc3RhdHMgPSByY19zZW5kX2ZpcnN0cGFzc19z
dGF0czsKKyAgICAgIHJjX2Z1bmNzLmdldF9lbmNvZGVmcmFtZV9kZWNpc2lvbiA9IHJjX2dldF9l
bmNvZGVmcmFtZV9kZWNpc2lvbjsKKyAgICAgIHJjX2Z1bmNzLnVwZGF0ZV9lbmNvZGVmcmFtZV9y
ZXN1bHQgPSByY191cGRhdGVfZW5jb2RlZnJhbWVfcmVzdWx0OworICAgICAgcmNfZnVuY3MuZGVs
ZXRlX21vZGVsID0gcmNfZGVsZXRlX21vZGVsOworICAgICAgcmNfZnVuY3MucHJpdiA9IHJlaW50
ZXJwcmV0X2Nhc3Q8dm9pZCAqPihQcml2TWFnaWNOdW1iZXIpOworICAgICAgZW5jb2Rlci0+Q29u
dHJvbChWUDlFX1NFVF9FWFRFUk5BTF9SQVRFX0NPTlRST0wsICZyY19mdW5jcyk7CisgICAgfQor
ICB9Cit9OworCitURVNUX0YoRXh0UmF0ZUN0cmxUZXN0LCBFbmNvZGVUZXN0KSB7CisgIGNmZ18u
cmNfdGFyZ2V0X2JpdHJhdGUgPSAyNDAwMDsKKworICBzdGQ6OnVuaXF1ZV9wdHI8bGlidnB4X3Rl
c3Q6OlZpZGVvU291cmNlPiB2aWRlbzsKKyAgdmlkZW8ucmVzZXQobmV3IChzdGQ6Om5vdGhyb3cp
IGxpYnZweF90ZXN0OjpZVVZWaWRlb1NvdXJjZSgKKyAgICAgICJidXNfMzUyeDI4OF80MjBfZjIw
X2I4Lnl1diIsIFZQWF9JTUdfRk1UX0k0MjAsIDM1MiwgMjg4LCAzMCwgMSwgMCwKKyAgICAgIGtG
cmFtZU51bSkpOworCisgIEFTU0VSVF9ORSh2aWRlby5nZXQoKSwgbnVsbHB0cik7CisgIEFTU0VS
VF9OT19GQVRBTF9GQUlMVVJFKFJ1bkxvb3AodmlkZW8uZ2V0KCkpKTsKK30KKworfSAgLy8gbmFt
ZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X2ludHJhcHJlZF90ZXN0LmNj
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L3ZwOV9pbnRyYXByZWRfdGVzdC5jYwppbmRleCA1ODA5MWY4NzVi
MWFmZWFmYjgxOTgxZGVmZTE3MDNmYmNmMWVlNzcxLi5jY2FjZTcxOWVhN2RiZmEwOWFkYjUxNzY2
YzgxNTYzMjQ3OTJlOTIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X2ludHJhcHJl
ZF90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfaW50cmFwcmVkX3Rlc3QuY2MKQEAg
LTMyLDcgKzMyLDcgQEAgdHlwZWRlZiB2b2lkICgqSW50cmFQcmVkRnVuYykodWludDhfdCAqZHN0
LCBwdHJkaWZmX3Qgc3RyaWRlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
dWludDhfdCAqYWJvdmUsIGNvbnN0IHVpbnQ4X3QgKmxlZnQpOwogCiBzdHJ1Y3QgSW50cmFQcmVk
UGFyYW0gewotICBJbnRyYVByZWRQYXJhbShJbnRyYVByZWRGdW5jIHByZWQgPSBOVUxMLCBJbnRy
YVByZWRGdW5jIHJlZiA9IE5VTEwsCisgIEludHJhUHJlZFBhcmFtKEludHJhUHJlZEZ1bmMgcHJl
ZCA9IG51bGxwdHIsIEludHJhUHJlZEZ1bmMgcmVmID0gbnVsbHB0ciwKICAgICAgICAgICAgICAg
ICAgaW50IGJsb2NrX3NpemVfdmFsdWUgPSAwLCBpbnQgYml0X2RlcHRoX3ZhbHVlID0gMCkKICAg
ICAgIDogcHJlZF9mbihwcmVkKSwgcmVmX2ZuKHJlZiksIGJsb2NrX3NpemUoYmxvY2tfc2l6ZV92
YWx1ZSksCiAgICAgICAgIGJpdF9kZXB0aChiaXRfZGVwdGhfdmFsdWUpIHt9CkBAIC0xMzIsMTIg
KzEzMiwxMiBAQCBURVNUX1AoVlA5SW50cmFQcmVkVGVzdCwgSW50cmFQcmVkVGVzdHMpIHsKIAog
Ly8gSW5zdGFudGlhdGUgYSB0b2tlbiB0ZXN0IHRvIGF2b2lkIC1XdW5pbml0aWFsaXplZCB3YXJu
aW5ncyB3aGVuIG5vbmUgb2YgdGhlCiAvLyBvdGhlciB0ZXN0cyBhcmUgZW5hYmxlZC4KLUlOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEMsIFZQ
OUludHJhUHJlZFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoSW50cmFQcmVkUGFyYW0oJnZw
eF9kNDVfcHJlZGljdG9yXzR4NF9jLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICZ2cHhfZDQ1X3ByZWRpY3Rvcl80eDRfYywgNCwgOCkpKTsKICNpZiBIQVZFX1NTRTIKLUlO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNT
RTIsIFZQOUludHJhUHJlZFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIElu
dHJhUHJlZFBhcmFtKCZ2cHhfZDQ1X3ByZWRpY3Rvcl80eDRfc3NlMiwgJnZweF9kNDVfcHJlZGlj
dG9yXzR4NF9jLCA0LApAQCAtMjAxLDcgKzIwMSw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9Q
KAogI2VuZGlmICAvLyBIQVZFX1NTRTIKIAogI2lmIEhBVkVfU1NTRTMKLUlOU1RBTlRJQVRFX1RF
U1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTU0UzLCBWUDlJbnRy
YVByZWRUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKEludHJhUHJlZFBhcmFtKCZ2cHhfZDQ1
X3ByZWRpY3Rvcl8xNngxNl9zc3NlMywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAmdnB4X2Q0NV9wcmVkaWN0b3JfMTZ4MTZfYywgMTYsIDgpLApAQCAtMjMyLDcgKzIzMiw3
IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX1NTU0UzCiAKICNp
ZiBIQVZFX05FT04KLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9T
VUlURV9QKAogICAgIE5FT04sIFZQOUludHJhUHJlZFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXMoCiAgICAgICAgIEludHJhUHJlZFBhcmFtKCZ2cHhfZDQ1X3ByZWRpY3Rvcl80eDRfbmVvbiwg
JnZweF9kNDVfcHJlZGljdG9yXzR4NF9jLCA0LApAQCAtMzA2LDcgKzMwNiw3IEBAIElOU1RBTlRJ
QVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX05FT04KIAogI2lmIEhBVkVfRFNQUjIK
LUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAg
IERTUFIyLCBWUDlJbnRyYVByZWRUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKEludHJhUHJl
ZFBhcmFtKCZ2cHhfZGNfcHJlZGljdG9yXzR4NF9kc3ByMiwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAmdnB4X2RjX3ByZWRpY3Rvcl80eDRfYywgNCwgOCksCkBAIC0zMjcs
NyArMzI3LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAjZW5kaWYgIC8vIEhBVkVfRFNQ
UjIKIAogI2lmIEhBVkVfTVNBCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRF
X1RFU1RfU1VJVEVfUCgKICAgICBNU0EsIFZQOUludHJhUHJlZFRlc3QsCiAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXMoCiAgICAgICAgIEludHJhUHJlZFBhcmFtKCZ2cHhfZGNfMTI4X3ByZWRpY3Rvcl80
eDRfbXNhLApAQCAtNDAxLDcgKzQwMSw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2Vu
ZGlmCiAKICNpZiBIQVZFX1ZTWAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFU
RV9URVNUX1NVSVRFX1AoCiAgICAgVlNYLCBWUDlJbnRyYVByZWRUZXN0LAogICAgIDo6dGVzdGlu
Zzo6VmFsdWVzKEludHJhUHJlZFBhcmFtKCZ2cHhfZDQ1X3ByZWRpY3Rvcl8xNngxNl92c3gsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9kNDVfcHJlZGljdG9yXzE2
eDE2X2MsIDE2LCA4KSwKQEAgLTQ0Niw4ICs0NDYsOSBAQCB0eXBlZGVmIHZvaWQgKCpIaWdoYmRJ
bnRyYVByZWQpKHVpbnQxNl90ICpkc3QsIHB0cmRpZmZfdCBzdHJpZGUsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQxNl90ICphYm92ZSwgY29uc3QgdWludDE2X3Qg
KmxlZnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBicHMpOwogc3RydWN0
IEhpZ2hiZEludHJhUHJlZFBhcmFtIHsKLSAgSGlnaGJkSW50cmFQcmVkUGFyYW0oSGlnaGJkSW50
cmFQcmVkIHByZWQgPSBOVUxMLCBIaWdoYmRJbnRyYVByZWQgcmVmID0gTlVMTCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgaW50IGJsb2NrX3NpemVfdmFsdWUgPSAwLCBpbnQgYml0X2RlcHRoX3Zh
bHVlID0gMCkKKyAgSGlnaGJkSW50cmFQcmVkUGFyYW0oSGlnaGJkSW50cmFQcmVkIHByZWQgPSBu
dWxscHRyLAorICAgICAgICAgICAgICAgICAgICAgICBIaWdoYmRJbnRyYVByZWQgcmVmID0gbnVs
bHB0ciwgaW50IGJsb2NrX3NpemVfdmFsdWUgPSAwLAorICAgICAgICAgICAgICAgICAgICAgICBp
bnQgYml0X2RlcHRoX3ZhbHVlID0gMCkKICAgICAgIDogcHJlZF9mbihwcmVkKSwgcmVmX2ZuKHJl
ZiksIGJsb2NrX3NpemUoYmxvY2tfc2l6ZV92YWx1ZSksCiAgICAgICAgIGJpdF9kZXB0aChiaXRf
ZGVwdGhfdmFsdWUpIHt9CiAKQEAgLTQ1Nyw2ICs0NTgsNyBAQCBzdHJ1Y3QgSGlnaGJkSW50cmFQ
cmVkUGFyYW0gewogICBpbnQgYml0X2RlcHRoOwogfTsKIAorI2lmIEhBVkVfU1NTRTMgfHwgSEFW
RV9ORU9OIHx8IEhBVkVfU1NFMgogdGVtcGxhdGUgPD4KIHZvaWQgSW50cmFQcmVkVGVzdDx1aW50
MTZfdCwgSGlnaGJkSW50cmFQcmVkUGFyYW0+OjpQcmVkaWN0KCkgewogICBjb25zdCBpbnQgYml0
X2RlcHRoID0gcGFyYW1zXy5iaXRfZGVwdGg7CkBAIC00NjYsNiArNDY4LDcgQEAgdm9pZCBJbnRy
YVByZWRUZXN0PHVpbnQxNl90LCBIaWdoYmRJbnRyYVByZWRQYXJhbT46OlByZWRpY3QoKSB7CiB9
CiAKIHR5cGVkZWYgSW50cmFQcmVkVGVzdDx1aW50MTZfdCwgSGlnaGJkSW50cmFQcmVkUGFyYW0+
IFZQOUhpZ2hiZEludHJhUHJlZFRlc3Q7CitHVEVTVF9BTExPV19VTklOU1RBTlRJQVRFRF9QQVJB
TUVURVJJWkVEX1RFU1QoVlA5SGlnaGJkSW50cmFQcmVkVGVzdCk7CiAKIFRFU1RfUChWUDlIaWdo
YmRJbnRyYVByZWRUZXN0LCBIaWdoYmRJbnRyYVByZWRUZXN0cykgewogICAvLyBtYXggYmxvY2sg
c2l6ZSBpcyAzMgpAQCAtNDc1LDkgKzQ3OCwxMCBAQCBURVNUX1AoVlA5SGlnaGJkSW50cmFQcmVk
VGVzdCwgSGlnaGJkSW50cmFQcmVkVGVzdHMpIHsKICAgREVDTEFSRV9BTElHTkVEKDE2LCB1aW50
MTZfdCwgcmVmX2RzdFszICogMzIgKiAzMl0pOwogICBSdW5UZXN0KGxlZnRfY29sLCBhYm92ZV9k
YXRhLCBkc3QsIHJlZl9kc3QpOwogfQorI2VuZGlmCiAKICNpZiBIQVZFX1NTU0UzCi1JTlNUQU5U
SUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBTU1NFM19U
T19DXzgsIFZQOUhpZ2hiZEludHJhUHJlZFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAg
ICAgICAgIEhpZ2hiZEludHJhUHJlZFBhcmFtKCZ2cHhfaGlnaGJkX2Q0NV9wcmVkaWN0b3JfNHg0
X3Nzc2UzLApAQCAtNTE5LDcgKzUyMyw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAg
ICAgICBIaWdoYmRJbnRyYVByZWRQYXJhbSgmdnB4X2hpZ2hiZF9kMjA3X3ByZWRpY3Rvcl8zMngz
Ml9zc3NlMywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9oaWdoYmRfZDIwN19w
cmVkaWN0b3JfMzJ4MzJfYywgMzIsIDgpKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTU0UzX1RPX0NfMTAsIFZQOUhpZ2hiZElu
dHJhUHJlZFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIEhpZ2hiZEludHJh
UHJlZFBhcmFtKCZ2cHhfaGlnaGJkX2Q0NV9wcmVkaWN0b3JfNHg0X3Nzc2UzLApAQCAtNTYxLDcg
KzU2NSw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICBIaWdoYmRJbnRyYVBy
ZWRQYXJhbSgmdnB4X2hpZ2hiZF9kMjA3X3ByZWRpY3Rvcl8zMngzMl9zc3NlMywKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgJnZweF9oaWdoYmRfZDIwN19wcmVkaWN0b3JfMzJ4MzJfYywg
MzIsIDEwKSkpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1Rf
U1VJVEVfUCgKICAgICBTU1NFM19UT19DXzEyLCBWUDlIaWdoYmRJbnRyYVByZWRUZXN0LAogICAg
IDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBIaWdoYmRJbnRyYVByZWRQYXJhbSgmdnB4X2hp
Z2hiZF9kNDVfcHJlZGljdG9yXzR4NF9zc3NlMywKQEAgLTYwNSw3ICs2MDksNyBAQCBJTlNUQU5U
SUFURV9URVNUX0NBU0VfUCgKICNlbmRpZiAgLy8gSEFWRV9TU1NFMwogCiAjaWYgSEFWRV9TU0Uy
Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAg
ICBTU0UyX1RPX0NfOCwgVlA5SGlnaGJkSW50cmFQcmVkVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZh
bHVlcygKICAgICAgICAgSGlnaGJkSW50cmFQcmVkUGFyYW0oJnZweF9oaWdoYmRfZGNfMTI4X3By
ZWRpY3Rvcl80eDRfc3NlMiwKQEAgLTY3NSw3ICs2NzksNyBAQCBJTlNUQU5USUFURV9URVNUX0NB
U0VfUCgKICAgICAgICAgSGlnaGJkSW50cmFQcmVkUGFyYW0oJnZweF9oaWdoYmRfdl9wcmVkaWN0
b3JfMzJ4MzJfc3NlMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9oaWdoYmRf
dl9wcmVkaWN0b3JfMzJ4MzJfYywgMzIsIDgpKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9Q
KAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTRTJfVE9fQ18xMCwgVlA5SGlnaGJk
SW50cmFQcmVkVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcygKICAgICAgICAgSGlnaGJkSW50
cmFQcmVkUGFyYW0oJnZweF9oaWdoYmRfZGNfMTI4X3ByZWRpY3Rvcl80eDRfc3NlMiwKQEAgLTc0
NSw3ICs3NDksNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgSGlnaGJkSW50
cmFQcmVkUGFyYW0oJnZweF9oaWdoYmRfdl9wcmVkaWN0b3JfMzJ4MzJfc3NlMiwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgJnZweF9oaWdoYmRfdl9wcmVkaWN0b3JfMzJ4MzJfYywgMzIs
IDEwKSkpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJ
VEVfUCgKICAgICBTU0UyX1RPX0NfMTIsIFZQOUhpZ2hiZEludHJhUHJlZFRlc3QsCiAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIEhpZ2hiZEludHJhUHJlZFBhcmFtKCZ2cHhfaGlnaGJk
X2RjXzEyOF9wcmVkaWN0b3JfNHg0X3NzZTIsCkBAIC04MTcsNyArODIxLDcgQEAgSU5TVEFOVElB
VEVfVEVTVF9DQVNFX1AoCiAjZW5kaWYgIC8vIEhBVkVfU1NFMgogCiAjaWYgSEFWRV9ORU9OCi1J
TlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBO
RU9OX1RPX0NfOCwgVlA5SGlnaGJkSW50cmFQcmVkVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVl
cygKICAgICAgICAgSGlnaGJkSW50cmFQcmVkUGFyYW0oJnZweF9oaWdoYmRfZDQ1X3ByZWRpY3Rv
cl80eDRfbmVvbiwKQEAgLTg5Myw3ICs4OTcsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgK
ICAgICAgICAgSGlnaGJkSW50cmFQcmVkUGFyYW0oJnZweF9oaWdoYmRfdl9wcmVkaWN0b3JfMzJ4
MzJfbmVvbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9oaWdoYmRfdl9wcmVk
aWN0b3JfMzJ4MzJfYywgMzIsIDgpKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5T
VEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE5FT05fVE9fQ18xMCwgVlA5SGlnaGJkSW50cmFQ
cmVkVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcygKICAgICAgICAgSGlnaGJkSW50cmFQcmVk
UGFyYW0oJnZweF9oaWdoYmRfZDQ1X3ByZWRpY3Rvcl80eDRfbmVvbiwKQEAgLTk2OSw3ICs5NzMs
NyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgSGlnaGJkSW50cmFQcmVkUGFy
YW0oJnZweF9oaWdoYmRfdl9wcmVkaWN0b3JfMzJ4MzJfbmVvbiwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgJnZweF9oaWdoYmRfdl9wcmVkaWN0b3JfMzJ4MzJfYywgMzIsIDEwKSkpOwog
Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAg
ICBORU9OX1RPX0NfMTIsIFZQOUhpZ2hiZEludHJhUHJlZFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpW
YWx1ZXMoCiAgICAgICAgIEhpZ2hiZEludHJhUHJlZFBhcmFtKCZ2cHhfaGlnaGJkX2Q0NV9wcmVk
aWN0b3JfNHg0X25lb24sCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X2xvc3NsZXNz
X3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X2xvc3NsZXNzX3Rlc3QuY2MKaW5kZXggNWNm
MGE0MWRhNGQxZDc3YTU0MzM3NGM2NzBkZmJmYmVmNzg5MzJlYS4uOTMxYWMzMGEzNjc4MDZlZWIz
MjUzMjY2YTJjZjgxNmJiYzI2ZTdlYSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9s
b3NzbGVzc190ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfbG9zc2xlc3NfdGVzdC5j
YwpAQCAtMTE4LDggKzExOCw4IEBAIFRFU1RfUChMb3NzbGVzc1Rlc3QsIFRlc3RMb3NzTGVzc0Vu
Y29kaW5nQ3RybCkgewogICBFWFBFQ1RfR0UocHNucl9sb3NzbGVzcywga01heFBzbnIpOwogfQog
Ci1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKExvc3NsZXNzVGVzdCwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a1JlYWxUaW1lLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6OmxpYnZweF90ZXN0
OjprT25lUGFzc0dvb2QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDo6bGlidnB4X3Rlc3Q6OmtUd29QYXNzR29vZCkpOworVlA5X0lOU1RBTlRJQVRFX1RFU1Rf
U1VJVEUoTG9zc2xlc3NUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a1JlYWxUaW1lLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgOjpsaWJ2cHhfdGVzdDo6a09uZVBhc3NHb29kLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOjpsaWJ2cHhfdGVzdDo6
a1R3b1Bhc3NHb29kKSk7CiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dGVzdC92cDlfbW90aW9uX3ZlY3Rvcl90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9tb3Rp
b25fdmVjdG9yX3Rlc3QuY2MKaW5kZXggYjU1NmExYzM3ODQ2MGJkOTA5NTdkMmVmOGFlY2IxMTI4
Y2YwNWU4MC4uNmIxMDgyYTEwNmY5OTdiNTY3NGZiOGQzYmRhYTcxN2I1OWYxODU1ZiAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9tb3Rpb25fdmVjdG9yX3Rlc3QuY2MKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L3ZwOV9tb3Rpb25fdmVjdG9yX3Rlc3QuY2MKQEAgLTg4LDEyICs4OCwxMiBA
QCBURVNUX1AoTW90aW9uVmVjdG9yVGVzdExhcmdlLCBPdmVyYWxsVGVzdCkgewogICAgICAgIm5p
a2xhc182NDBfNDgwXzMwLnl1diIsIFZQWF9JTUdfRk1UX0k0MjAsIDM4NDAsIDIxNjAsICAvLyAy
MDQ4LCAxMDgwLAogICAgICAgMzAsIDEsIDAsIDUpKTsKIAotICBBU1NFUlRfVFJVRSh2aWRlby5n
ZXQoKSAhPSBOVUxMKTsKKyAgQVNTRVJUX05FKHZpZGVvLmdldCgpLCBudWxscHRyKTsKICAgQVNT
RVJUX05PX0ZBVEFMX0ZBSUxVUkUoUnVuTG9vcCh2aWRlby5nZXQoKSkpOwogfQogCi1WUDlfSU5T
VEFOVElBVEVfVEVTVF9DQVNFKE1vdGlvblZlY3RvclRlc3RMYXJnZSwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrRW5jb2RpbmdNb2RlVmVjdG9ycyksCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oa0NwdVVzZWRWZWN0
b3JzKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrTVZU
ZXN0TW9kZXMpKTsKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKE1vdGlvblZlY3RvclRlc3RM
YXJnZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oa0Vu
Y29kaW5nTW9kZVZlY3RvcnMpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXNJbihrQ3B1VXNlZFZlY3RvcnMpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ojp0ZXN0aW5nOjpWYWx1ZXNJbihrTVZUZXN0TW9kZXMpKTsKIH0gIC8vIG5hbWVzcGFjZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9xdWFudGl6ZV90ZXN0LmNjIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90ZXN0L3ZwOV9xdWFudGl6ZV90ZXN0LmNjCmluZGV4IDY5YzJjNWEwYjllODQ3MzMwMWI1Yjcy
NTcyZjQ3MWRmYzRjODdiNDkuLmNiNDQ4MWIxMDMxZTZiZmNhNzgxMDNjMjU1YzU0YzQ3YjM3YTY5
MjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfcXVhbnRpemVfdGVzdC5jYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rlc3QvdnA5X3F1YW50aXplX3Rlc3QuY2MKQEAgLTExMCwxMyArMTEwLDEz
IEBAIGNsYXNzIFZQOVF1YW50aXplQmFzZSA6IHB1YmxpYyBBYnN0cmFjdEJlbmNoIHsKICAgICB2
cHhfZnJlZShxdWFudF9wdHJfKTsKICAgICB2cHhfZnJlZShxdWFudF9zaGlmdF9wdHJfKTsKICAg
ICB2cHhfZnJlZShkZXF1YW50X3B0cl8pOwotICAgIHpiaW5fcHRyXyA9IE5VTEw7Ci0gICAgcm91
bmRfZnBfcHRyXyA9IE5VTEw7Ci0gICAgcXVhbnRfZnBfcHRyXyA9IE5VTEw7Ci0gICAgcm91bmRf
cHRyXyA9IE5VTEw7Ci0gICAgcXVhbnRfcHRyXyA9IE5VTEw7Ci0gICAgcXVhbnRfc2hpZnRfcHRy
XyA9IE5VTEw7Ci0gICAgZGVxdWFudF9wdHJfID0gTlVMTDsKKyAgICB6YmluX3B0cl8gPSBudWxs
cHRyOworICAgIHJvdW5kX2ZwX3B0cl8gPSBudWxscHRyOworICAgIHF1YW50X2ZwX3B0cl8gPSBu
dWxscHRyOworICAgIHJvdW5kX3B0cl8gPSBudWxscHRyOworICAgIHF1YW50X3B0cl8gPSBudWxs
cHRyOworICAgIHF1YW50X3NoaWZ0X3B0cl8gPSBudWxscHRyOworICAgIGRlcXVhbnRfcHRyXyA9
IG51bGxwdHI7CiAgICAgbGlidnB4X3Rlc3Q6OkNsZWFyU3lzdGVtU3RhdGUoKTsKICAgfQogCkBA
IC00NzUsNyArNDc1LDcgQEAgdXNpbmcgc3RkOjptYWtlX3R1cGxlOwogCiAjaWYgSEFWRV9TU0Uy
CiAjaWYgQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTRTIsIFZQOVF1YW50aXplVGVzdCwKICAg
ICA6OnRlc3Rpbmc6OlZhbHVlcygKICAgICAgICAgbWFrZV90dXBsZSgmdnB4X3F1YW50aXplX2Jf
c3NlMiwgJnZweF9xdWFudGl6ZV9iX2MsIFZQWF9CSVRTXzgsIDE2LApAQCAtNDk0LDcgKzQ5NCw3
IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAgICAgICAgICZ2cHhfaGln
aGJkX3F1YW50aXplX2JfMzJ4MzJfYywgVlBYX0JJVFNfMTIsIDMyLCBmYWxzZSkpKTsKIAogI2Vs
c2UKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAog
ICAgIFNTRTIsIFZQOVF1YW50aXplVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1
cGxlKCZ2cHhfcXVhbnRpemVfYl9zc2UyLCAmdnB4X3F1YW50aXplX2JfYywKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFZQWF9CSVRTXzgsIDE2LCBmYWxzZSksCkBAIC01MDYsNyAr
NTA2LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAKICNpZiBIQVZFX1NTU0UzCiAjaWYg
VlBYX0FSQ0hfWDg2XzY0Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RF
U1RfU1VJVEVfUCgKICAgICBTU1NFMywgVlA5UXVhbnRpemVUZXN0LAogICAgIDo6dGVzdGluZzo6
VmFsdWVzKG1ha2VfdHVwbGUoJnZweF9xdWFudGl6ZV9iX3Nzc2UzLCAmdnB4X3F1YW50aXplX2Jf
YywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQWF9CSVRTXzgsIDE2LCBmYWxz
ZSksCkBAIC01MjAsNyArNTIwLDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAmUXVhbnRGUFdyYXBwZXI8cXVhbnRpemVfZnBfMzJ4
MzJfbnpfYz4sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWUFhfQklUU184LCAz
MiwgdHJ1ZSkpKTsKICNlbHNlCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRF
X1RFU1RfU1VJVEVfUCgKICAgICBTU1NFMywgVlA5UXVhbnRpemVUZXN0LAogICAgIDo6dGVzdGlu
Zzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZweF9xdWFudGl6ZV9iX3Nzc2UzLCAmdnB4X3F1YW50aXpl
X2JfYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQWF9CSVRTXzgsIDE2LCBm
YWxzZSksCkBAIC01MzIsMTcgKzUzMiwxNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNl
bmRpZiAgLy8gSEFWRV9TU1NFMwogCiAjaWYgSEFWRV9BVlgKLUlOU1RBTlRJQVRFX1RFU1RfQ0FT
RV9QKEFWWCwgVlA5UXVhbnRpemVUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X3F1YW50aXplX2JfYXZ4LAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X3F1YW50aXplX2Jf
YywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
VlBYX0JJVFNfOCwgMTYsIGZhbHNlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIG1ha2VfdHVwbGUoJnZweF9xdWFudGl6ZV9iXzMyeDMyX2F2eCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9xdWFudGl6
ZV9iXzMyeDMyX2MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFZQWF9CSVRTXzgsIDMyLCBmYWxzZSkpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJ
VEVfUChBVlgsIFZQOVF1YW50aXplVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRl
c3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfcXVhbnRpemVfYl9hdngsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X3F1YW50aXpl
X2JfYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFZQWF9CSVRTXzgsIDE2LCBmYWxzZSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbWFrZV90dXBsZSgmdnB4X3F1YW50aXplX2JfMzJ4MzJfYXZ4LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9x
dWFudGl6ZV9iXzMyeDMyX2MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBWUFhfQklUU184LCAzMiwgZmFsc2UpKSk7CiAjZW5kaWYgIC8vIEhB
VkVfQVZYCiAKICNpZiBWUFhfQVJDSF9YODZfNjQgJiYgSEFWRV9BVlgyCi1JTlNUQU5USUFURV9U
RVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBBVlgyLCBWUDlRdWFu
dGl6ZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmUXVhbnRGUFdyYXBw
ZXI8dnA5X3F1YW50aXplX2ZwX2F2eDI+LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgJlF1YW50RlBXcmFwcGVyPHF1YW50aXplX2ZwX256X2M+LCBWUFhfQklUU184LApAQCAtNTUw
LDcgKzU1MCw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX0FW
WDIKIAogI2lmIEhBVkVfTkVPTgotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFU
RV9URVNUX1NVSVRFX1AoCiAgICAgTkVPTiwgVlA5UXVhbnRpemVUZXN0LAogICAgIDo6dGVzdGlu
Zzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZweF9xdWFudGl6ZV9iX25lb24sICZ2cHhfcXVhbnRpemVf
Yl9jLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVlBYX0JJVFNfOCwgMTYsIGZh
bHNlKSwKQEAgLTU2Niw3ICs1NjYsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNlbmRp
ZiAgLy8gSEFWRV9ORU9OCiAKICNpZiBIQVZFX1ZTWCAmJiAhQ09ORklHX1ZQOV9ISUdIQklUREVQ
VEgKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAog
ICAgIFZTWCwgVlA5UXVhbnRpemVUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVw
bGUoJnZweF9xdWFudGl6ZV9iX3ZzeCwgJnZweF9xdWFudGl6ZV9iX2MsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBWUFhfQklUU184LCAxNiwgZmFsc2UpLApAQCAtNTgyLDcgKzU4
Miw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX1ZTWCAmJiAh
Q09ORklHX1ZQOV9ISUdIQklUREVQVEgKIAogLy8gT25seSB1c2VmdWwgdG8gY29tcGFyZSAiU3Bl
ZWQiIHRlc3QgcmVzdWx0cy4KLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QKAogICAgIERJU0FCTEVEX0MsIFZQOVF1YW50aXplVGVzdCwKICAgICA6OnRl
c3Rpbmc6OlZhbHVlcygKICAgICAgICAgbWFrZV90dXBsZSgmdnB4X3F1YW50aXplX2JfYywgJnZw
eF9xdWFudGl6ZV9iX2MsIFZQWF9CSVRTXzgsIDE2LCBmYWxzZSksCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3Rlc3QvdnA5X3NjYWxlX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X3NjYWxl
X3Rlc3QuY2MKaW5kZXggZjNlN2YwYTBlMmI4M2EyY2IzOTk4ZGRhY2RmNjhhNDVhM2RmYTllMy4u
MmQxMjAzZmI4OWVhMzgzMDM1ZmE4ZmFkN2Q1NjFjNTliNGEzZDI5OSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L3ZwOV9zY2FsZV90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlf
c2NhbGVfdGVzdC5jYwpAQCAtMTk5LDE3ICsxOTksMTcgQEAgVEVTVF9QKFNjYWxlVGVzdCwgRElT
QUJMRURfU3BlZWQpIHsKICAgfQogfQogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChDLCBTY2Fs
ZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cDlfc2Nh
bGVfYW5kX2V4dGVuZF9mcmFtZV9jKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoQywgU2Nh
bGVUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZwOV9z
Y2FsZV9hbmRfZXh0ZW5kX2ZyYW1lX2MpKTsKIAogI2lmIEhBVkVfU1NTRTMKLUlOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKFNTU0UzLCBTY2FsZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6
OnRlc3Rpbmc6OlZhbHVlcyh2cDlfc2NhbGVfYW5kX2V4dGVuZF9mcmFtZV9zc3NlMykpOworSU5T
VEFOVElBVEVfVEVTVF9TVUlURV9QKFNTU0UzLCBTY2FsZVRlc3QsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnA5X3NjYWxlX2FuZF9leHRlbmRfZnJhbWVfc3Nz
ZTMpKTsKICNlbmRpZiAgLy8gSEFWRV9TU1NFMwogCiAjaWYgSEFWRV9ORU9OCi1JTlNUQU5USUFU
RV9URVNUX0NBU0VfUChORU9OLCBTY2FsZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6
OnRlc3Rpbmc6OlZhbHVlcyh2cDlfc2NhbGVfYW5kX2V4dGVuZF9mcmFtZV9uZW9uKSk7CitJTlNU
QU5USUFURV9URVNUX1NVSVRFX1AoTkVPTiwgU2NhbGVUZXN0LAorICAgICAgICAgICAgICAgICAg
ICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZwOV9zY2FsZV9hbmRfZXh0ZW5kX2ZyYW1lX25lb24p
KTsKICNlbmRpZiAgLy8gSEFWRV9ORU9OCiAKIH0gIC8vIG5hbWVzcGFjZSBsaWJ2cHhfdGVzdApk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9za2lwX2xvb3BmaWx0ZXJfdGVzdC5jYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdGVzdC92cDlfc2tpcF9sb29wZmlsdGVyX3Rlc3QuY2MKaW5kZXggZDQxYTc4
NGEyMmM1M2ZhMjViZTFhZTgxNDE5MzEzMjM5NGFkYzk4OC4uYzA4MGEyY2FhZTgyZDlkYzMwZjc4
ZDA1NTY0MmViMjQwOTVmOTdkZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9za2lw
X2xvb3BmaWx0ZXJfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X3NraXBfbG9vcGZp
bHRlcl90ZXN0LmNjCkBAIC0yNCwzMyArMjQsNDIgQEAgY29uc3QgY2hhciBrVnA5TWQ1RmlsZVtd
ID0gInZwOTAtMi0wOC10aWxlXzF4OF9mcmFtZV9wYXJhbGxlbC53ZWJtLm1kNSI7CiAvLyBDbGFz
cyBmb3IgdGVzdGluZyBzaHV0dGluZyBvZmYgdGhlIGxvb3AgZmlsdGVyLgogY2xhc3MgU2tpcExv
b3BGaWx0ZXJUZXN0IHsKICBwdWJsaWM6Ci0gIFNraXBMb29wRmlsdGVyVGVzdCgpIDogdmlkZW9f
KE5VTEwpLCBkZWNvZGVyXyhOVUxMKSwgbWQ1X2ZpbGVfKE5VTEwpIHt9CisgIFNraXBMb29wRmls
dGVyVGVzdCgpCisgICAgICA6IHZpZGVvXyhudWxscHRyKSwgZGVjb2Rlcl8obnVsbHB0ciksIG1k
NV9maWxlXyhudWxscHRyKSB7fQogCiAgIH5Ta2lwTG9vcEZpbHRlclRlc3QoKSB7Ci0gICAgaWYg
KG1kNV9maWxlXyAhPSBOVUxMKSBmY2xvc2UobWQ1X2ZpbGVfKTsKKyAgICBpZiAobWQ1X2ZpbGVf
ICE9IG51bGxwdHIpIGZjbG9zZShtZDVfZmlsZV8pOwogICAgIGRlbGV0ZSBkZWNvZGVyXzsKICAg
ICBkZWxldGUgdmlkZW9fOwogICB9CiAKICAgLy8gSWYgfHRocmVhZHN8ID4gMCB0aGVuIHNldCB0
aGUgZGVjb2RlciB3aXRoIHRoYXQgbnVtYmVyIG9mIHRocmVhZHMuCi0gIHZvaWQgSW5pdChpbnQg
bnVtX3RocmVhZHMpIHsKKyAgYm9vbCBJbml0KGludCBudW1fdGhyZWFkcykgewogICAgIGV4cGVj
dGVkX21kNV9bMF0gPSAnXDAnOwogICAgIGp1bmtfWzBdID0gJ1wwJzsKICAgICB2aWRlb18gPSBu
ZXcgbGlidnB4X3Rlc3Q6OldlYk1WaWRlb1NvdXJjZShrVnA5VGVzdEZpbGUpOwotICAgIEFTU0VS
VF9UUlVFKHZpZGVvXyAhPSBOVUxMKTsKKyAgICBpZiAodmlkZW9fID09IG51bGxwdHIpIHsKKyAg
ICAgIEVYUEVDVF9ORSh2aWRlb18sIG51bGxwdHIpOworICAgICAgcmV0dXJuIGZhbHNlOworICAg
IH0KICAgICB2aWRlb18tPkluaXQoKTsKICAgICB2aWRlb18tPkJlZ2luKCk7CiAKICAgICB2cHhf
Y29kZWNfZGVjX2NmZ190IGNmZyA9IHZweF9jb2RlY19kZWNfY2ZnX3QoKTsKICAgICBpZiAobnVt
X3RocmVhZHMgPiAwKSBjZmcudGhyZWFkcyA9IG51bV90aHJlYWRzOwogICAgIGRlY29kZXJfID0g
bmV3IGxpYnZweF90ZXN0OjpWUDlEZWNvZGVyKGNmZywgMCk7Ci0gICAgQVNTRVJUX1RSVUUoZGVj
b2Rlcl8gIT0gTlVMTCk7CisgICAgaWYgKGRlY29kZXJfID09IG51bGxwdHIpIHsKKyAgICAgIEVY
UEVDVF9ORShkZWNvZGVyXywgbnVsbHB0cik7CisgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQog
CiAgICAgT3Blbk1kNUZpbGUoa1ZwOU1kNUZpbGUpOworICAgIHJldHVybiAhOjp0ZXN0aW5nOjpU
ZXN0OjpIYXNGYWlsdXJlKCk7CiAgIH0KIAogICAvLyBTZXQgdGhlIFZQOSBza2lwTG9vcEZpbHRl
ciBjb250cm9sIHZhbHVlLgogICB2b2lkIFNldFNraXBMb29wRmlsdGVyKGludCB2YWx1ZSwgdnB4
X2NvZGVjX2Vycl90IGV4cGVjdGVkX3ZhbHVlKSB7CisgICAgQVNTRVJUX05FKGRlY29kZXJfLCBu
dWxscHRyKTsKICAgICBkZWNvZGVyXy0+Q29udHJvbChWUDlfU0VUX1NLSVBfTE9PUF9GSUxURVIs
IHZhbHVlLCBleHBlY3RlZF92YWx1ZSk7CiAgIH0KIApAQCAtNjUsNyArNzQsNyBAQCBjbGFzcyBT
a2lwTG9vcEZpbHRlclRlc3QgewogICB9CiAKICAgdnB4X2NvZGVjX2Vycl90IERlY29kZVJlbWFp
bmluZ0ZyYW1lcygpIHsKLSAgICBmb3IgKDsgdmlkZW9fLT5jeGRhdGEoKSAhPSBOVUxMOyB2aWRl
b18tPk5leHQoKSkgeworICAgIGZvciAoOyB2aWRlb18tPmN4ZGF0YSgpICE9IG51bGxwdHI7IHZp
ZGVvXy0+TmV4dCgpKSB7CiAgICAgICBjb25zdCB2cHhfY29kZWNfZXJyX3QgcmVzID0KICAgICAg
ICAgICBkZWNvZGVyXy0+RGVjb2RlRnJhbWUodmlkZW9fLT5jeGRhdGEoKSwgdmlkZW9fLT5mcmFt
ZV9zaXplKCkpOwogICAgICAgaWYgKHJlcyAhPSBWUFhfQ09ERUNfT0spIHJldHVybiByZXM7CkBA
IC04NSwxMyArOTQsMTMgQEAgY2xhc3MgU2tpcExvb3BGaWx0ZXJUZXN0IHsKICAgLy8gVE9ETyhm
Z2FsbGlnYW4pOiBNb3ZlIHRoZSBNRDUgdGVzdGluZyBjb2RlIGludG8gYW5vdGhlciBjbGFzcy4K
ICAgdm9pZCBPcGVuTWQ1RmlsZShjb25zdCBzdGQ6OnN0cmluZyAmbWQ1X2ZpbGVfbmFtZSkgewog
ICAgIG1kNV9maWxlXyA9IGxpYnZweF90ZXN0OjpPcGVuVGVzdERhdGFGaWxlKG1kNV9maWxlX25h
bWUpOwotICAgIEFTU0VSVF9UUlVFKG1kNV9maWxlXyAhPSBOVUxMKQorICAgIEFTU0VSVF9ORSht
ZDVfZmlsZV8sIG51bGxwdHIpCiAgICAgICAgIDw8ICJNRDUgZmlsZSBvcGVuIGZhaWxlZC4gRmls
ZW5hbWU6ICIgPDwgbWQ1X2ZpbGVfbmFtZTsKICAgfQogCiAgIC8vIFJlYWRzIHRoZSBuZXh0IGxp
bmUgb2YgdGhlIE1ENSBmaWxlLgogICB2b2lkIFJlYWRNZDUoKSB7Ci0gICAgQVNTRVJUX1RSVUUo
bWQ1X2ZpbGVfICE9IE5VTEwpOworICAgIEFTU0VSVF9ORShtZDVfZmlsZV8sIG51bGxwdHIpOwog
ICAgIGNvbnN0IGludCByZXMgPSBmc2NhbmYobWQ1X2ZpbGVfLCAiJXMgICVzIiwgZXhwZWN0ZWRf
bWQ1XywganVua18pOwogICAgIEFTU0VSVF9ORShFT0YsIHJlcykgPDwgIlJlYWQgbWQ1IGRhdGEg
ZmFpbGVkIjsKICAgICBleHBlY3RlZF9tZDVfWzMyXSA9ICdcMCc7CkBAIC0xMjEsNyArMTMwLDcg
QEAgVEVTVChTa2lwTG9vcEZpbHRlclRlc3QsIFNodXRPZmZMb29wRmlsdGVyKSB7CiAgIGNvbnN0
IGludCBub25femVyb192YWx1ZSA9IDE7CiAgIGNvbnN0IGludCBudW1fdGhyZWFkcyA9IDA7CiAg
IFNraXBMb29wRmlsdGVyVGVzdCBza2lwX2xvb3BfZmlsdGVyOwotICBza2lwX2xvb3BfZmlsdGVy
LkluaXQobnVtX3RocmVhZHMpOworICBBU1NFUlRfVFJVRShza2lwX2xvb3BfZmlsdGVyLkluaXQo
bnVtX3RocmVhZHMpKTsKICAgc2tpcF9sb29wX2ZpbHRlci5TZXRTa2lwTG9vcEZpbHRlcihub25f
emVyb192YWx1ZSwgVlBYX0NPREVDX09LKTsKICAgQVNTRVJUX0VRKFZQWF9DT0RFQ19PSywgc2tp
cF9sb29wX2ZpbHRlci5EZWNvZGVSZW1haW5pbmdGcmFtZXMoKSk7CiAgIHNraXBfbG9vcF9maWx0
ZXIuQ2hlY2tNZDUoZmFsc2UpOwpAQCAtMTMxLDcgKzE0MCw3IEBAIFRFU1QoU2tpcExvb3BGaWx0
ZXJUZXN0LCBTaHV0T2ZmTG9vcEZpbHRlclNpbmdsZVRocmVhZCkgewogICBjb25zdCBpbnQgbm9u
X3plcm9fdmFsdWUgPSAxOwogICBjb25zdCBpbnQgbnVtX3RocmVhZHMgPSAxOwogICBTa2lwTG9v
cEZpbHRlclRlc3Qgc2tpcF9sb29wX2ZpbHRlcjsKLSAgc2tpcF9sb29wX2ZpbHRlci5Jbml0KG51
bV90aHJlYWRzKTsKKyAgQVNTRVJUX1RSVUUoc2tpcF9sb29wX2ZpbHRlci5Jbml0KG51bV90aHJl
YWRzKSk7CiAgIHNraXBfbG9vcF9maWx0ZXIuU2V0U2tpcExvb3BGaWx0ZXIobm9uX3plcm9fdmFs
dWUsIFZQWF9DT0RFQ19PSyk7CiAgIEFTU0VSVF9FUShWUFhfQ09ERUNfT0ssIHNraXBfbG9vcF9m
aWx0ZXIuRGVjb2RlUmVtYWluaW5nRnJhbWVzKCkpOwogICBza2lwX2xvb3BfZmlsdGVyLkNoZWNr
TWQ1KGZhbHNlKTsKQEAgLTE0MSw3ICsxNTAsNyBAQCBURVNUKFNraXBMb29wRmlsdGVyVGVzdCwg
U2h1dE9mZkxvb3BGaWx0ZXI4VGhyZWFkcykgewogICBjb25zdCBpbnQgbm9uX3plcm9fdmFsdWUg
PSAxOwogICBjb25zdCBpbnQgbnVtX3RocmVhZHMgPSA4OwogICBTa2lwTG9vcEZpbHRlclRlc3Qg
c2tpcF9sb29wX2ZpbHRlcjsKLSAgc2tpcF9sb29wX2ZpbHRlci5Jbml0KG51bV90aHJlYWRzKTsK
KyAgQVNTRVJUX1RSVUUoc2tpcF9sb29wX2ZpbHRlci5Jbml0KG51bV90aHJlYWRzKSk7CiAgIHNr
aXBfbG9vcF9maWx0ZXIuU2V0U2tpcExvb3BGaWx0ZXIobm9uX3plcm9fdmFsdWUsIFZQWF9DT0RF
Q19PSyk7CiAgIEFTU0VSVF9FUShWUFhfQ09ERUNfT0ssIHNraXBfbG9vcF9maWx0ZXIuRGVjb2Rl
UmVtYWluaW5nRnJhbWVzKCkpOwogICBza2lwX2xvb3BfZmlsdGVyLkNoZWNrTWQ1KGZhbHNlKTsK
QEAgLTE1MSw3ICsxNjAsNyBAQCBURVNUKFNraXBMb29wRmlsdGVyVGVzdCwgV2l0aExvb3BGaWx0
ZXIpIHsKICAgY29uc3QgaW50IG5vbl96ZXJvX3ZhbHVlID0gMTsKICAgY29uc3QgaW50IG51bV90
aHJlYWRzID0gMDsKICAgU2tpcExvb3BGaWx0ZXJUZXN0IHNraXBfbG9vcF9maWx0ZXI7Ci0gIHNr
aXBfbG9vcF9maWx0ZXIuSW5pdChudW1fdGhyZWFkcyk7CisgIEFTU0VSVF9UUlVFKHNraXBfbG9v
cF9maWx0ZXIuSW5pdChudW1fdGhyZWFkcykpOwogICBza2lwX2xvb3BfZmlsdGVyLlNldFNraXBM
b29wRmlsdGVyKG5vbl96ZXJvX3ZhbHVlLCBWUFhfQ09ERUNfT0spOwogICBza2lwX2xvb3BfZmls
dGVyLlNldFNraXBMb29wRmlsdGVyKDAsIFZQWF9DT0RFQ19PSyk7CiAgIEFTU0VSVF9FUShWUFhf
Q09ERUNfT0ssIHNraXBfbG9vcF9maWx0ZXIuRGVjb2RlUmVtYWluaW5nRnJhbWVzKCkpOwpAQCAt
MTYxLDcgKzE3MCw3IEBAIFRFU1QoU2tpcExvb3BGaWx0ZXJUZXN0LCBXaXRoTG9vcEZpbHRlcikg
ewogVEVTVChTa2lwTG9vcEZpbHRlclRlc3QsIFRvZ2dsZUxvb3BGaWx0ZXIpIHsKICAgY29uc3Qg
aW50IG51bV90aHJlYWRzID0gMDsKICAgU2tpcExvb3BGaWx0ZXJUZXN0IHNraXBfbG9vcF9maWx0
ZXI7Ci0gIHNraXBfbG9vcF9maWx0ZXIuSW5pdChudW1fdGhyZWFkcyk7CisgIEFTU0VSVF9UUlVF
KHNraXBfbG9vcF9maWx0ZXIuSW5pdChudW1fdGhyZWFkcykpOwogCiAgIGZvciAoaW50IGkgPSAw
OyBpIDwgMTA7ICsraSkgewogICAgIHNraXBfbG9vcF9maWx0ZXIuU2V0U2tpcExvb3BGaWx0ZXIo
aSAlIDIsIFZQWF9DT0RFQ19PSyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X3N1
YnRyYWN0X3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X3N1YnRyYWN0X3Rlc3QuY2MKaW5k
ZXggNjdlOGRlNmM3NGJlZDU0YjViNzAwMjI4MDM3ZDk0MTEyODA5ZGIwNS4uZWY4Y2MyMDdkNjhm
Yzk1YmI2ODMxYWVkNWE2NjFjMzA2YzAwOTc4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0
L3ZwOV9zdWJ0cmFjdF90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfc3VidHJhY3Rf
dGVzdC5jYwpAQCAtMTI2LDMwICsxMjYsMzAgQEAgVEVTVF9QKFZQOVN1YnRyYWN0QmxvY2tUZXN0
LCBTaW1wbGVTdWJ0cmFjdCkgewogICB9CiB9CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEMs
IFZQOVN1YnRyYWN0QmxvY2tUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXModnB4X3N1YnRyYWN0X2Jsb2NrX2MpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVf
UChDLCBWUDlTdWJ0cmFjdEJsb2NrVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRl
c3Rpbmc6OlZhbHVlcyh2cHhfc3VidHJhY3RfYmxvY2tfYykpOwogCiAjaWYgSEFWRV9TU0UyCi1J
TlNUQU5USUFURV9URVNUX0NBU0VfUChTU0UyLCBWUDlTdWJ0cmFjdEJsb2NrVGVzdCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZweF9zdWJ0cmFjdF9ibG9ja19z
c2UyKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoU1NFMiwgVlA5U3VidHJhY3RCbG9ja1Rl
c3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X3N1YnRy
YWN0X2Jsb2NrX3NzZTIpKTsKICNlbmRpZgogI2lmIEhBVkVfTkVPTgotSU5TVEFOVElBVEVfVEVT
VF9DQVNFX1AoTkVPTiwgVlA5U3VidHJhY3RCbG9ja1Rlc3QsCi0gICAgICAgICAgICAgICAgICAg
ICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfc3VidHJhY3RfYmxvY2tfbmVvbikpOworSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QKE5FT04sIFZQOVN1YnRyYWN0QmxvY2tUZXN0LAorICAgICAgICAg
ICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZweF9zdWJ0cmFjdF9ibG9ja19uZW9u
KSk7CiAjZW5kaWYKICNpZiBIQVZFX01TQQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTVNBLCBW
UDlTdWJ0cmFjdEJsb2NrVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6
VmFsdWVzKHZweF9zdWJ0cmFjdF9ibG9ja19tc2EpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVf
UChNU0EsIFZQOVN1YnRyYWN0QmxvY2tUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6
dGVzdGluZzo6VmFsdWVzKHZweF9zdWJ0cmFjdF9ibG9ja19tc2EpKTsKICNlbmRpZgogCiAjaWYg
SEFWRV9NTUkKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE1NSSwgVlA5U3VidHJhY3RCbG9ja1Rl
c3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfc3VidHJh
Y3RfYmxvY2tfbW1pKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoTU1JLCBWUDlTdWJ0cmFj
dEJsb2NrVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2
cHhfc3VidHJhY3RfYmxvY2tfbW1pKSk7CiAjZW5kaWYKIAogI2lmIEhBVkVfVlNYCi1JTlNUQU5U
SUFURV9URVNUX0NBU0VfUChWU1gsIFZQOVN1YnRyYWN0QmxvY2tUZXN0LAotICAgICAgICAgICAg
ICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X3N1YnRyYWN0X2Jsb2NrX3ZzeCkpOwor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFZTWCwgVlA5U3VidHJhY3RCbG9ja1Rlc3QsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X3N1YnRyYWN0X2Jsb2Nr
X3ZzeCkpOwogI2VuZGlmCiAKIH0gIC8vIG5hbWVzcGFjZSB2cDkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdGVzdC92cDlfdGhyZWFkX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X3RocmVh
ZF90ZXN0LmNjCmluZGV4IDMxYjZmZTU3YjRhYTE5ZGNlZWRlY2U4OTk2YmU5NTQwZjE1NTNiMGEu
LjM1MmFkNzFlY2EzYjE4YjllODA0ODYyY2M0ODUyN2JjMDBhOWI1MDMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC92cDlfdGhyZWFkX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3Zw
OV90aHJlYWRfdGVzdC5jYwpAQCAtMTI4LDE4ICsxMjgsMTggQEAgVEVTVF9QKFZQeFdvcmtlclRo
cmVhZFRlc3QsIEVuZFdpdGhvdXRTeW5jKSB7CiB9CiAKIFRFU1QoVlB4V29ya2VyVGhyZWFkVGVz
dCwgVGVzdEludGVyZmFjZUFQSSkgewotICBFWFBFQ1RfRVEoMCwgdnB4X3NldF93b3JrZXJfaW50
ZXJmYWNlKE5VTEwpKTsKLSAgRVhQRUNUX1RSVUUodnB4X2dldF93b3JrZXJfaW50ZXJmYWNlKCkg
IT0gTlVMTCk7CisgIEVYUEVDVF9FUSgwLCB2cHhfc2V0X3dvcmtlcl9pbnRlcmZhY2UobnVsbHB0
cikpOworICBFWFBFQ1RfTkUodnB4X2dldF93b3JrZXJfaW50ZXJmYWNlKCksIG51bGxwdHIpOwog
ICBmb3IgKGludCBpID0gMDsgaSA8IDY7ICsraSkgewogICAgIFZQeFdvcmtlckludGVyZmFjZSB3
aW50ZXJmYWNlID0gKnZweF9nZXRfd29ya2VyX2ludGVyZmFjZSgpOwogICAgIHN3aXRjaCAoaSkg
ewogICAgICAgZGVmYXVsdDoKLSAgICAgIGNhc2UgMDogd2ludGVyZmFjZS5pbml0ID0gTlVMTDsg
YnJlYWs7Ci0gICAgICBjYXNlIDE6IHdpbnRlcmZhY2UucmVzZXQgPSBOVUxMOyBicmVhazsKLSAg
ICAgIGNhc2UgMjogd2ludGVyZmFjZS5zeW5jID0gTlVMTDsgYnJlYWs7Ci0gICAgICBjYXNlIDM6
IHdpbnRlcmZhY2UubGF1bmNoID0gTlVMTDsgYnJlYWs7Ci0gICAgICBjYXNlIDQ6IHdpbnRlcmZh
Y2UuZXhlY3V0ZSA9IE5VTEw7IGJyZWFrOwotICAgICAgY2FzZSA1OiB3aW50ZXJmYWNlLmVuZCA9
IE5VTEw7IGJyZWFrOworICAgICAgY2FzZSAwOiB3aW50ZXJmYWNlLmluaXQgPSBudWxscHRyOyBi
cmVhazsKKyAgICAgIGNhc2UgMTogd2ludGVyZmFjZS5yZXNldCA9IG51bGxwdHI7IGJyZWFrOwor
ICAgICAgY2FzZSAyOiB3aW50ZXJmYWNlLnN5bmMgPSBudWxscHRyOyBicmVhazsKKyAgICAgIGNh
c2UgMzogd2ludGVyZmFjZS5sYXVuY2ggPSBudWxscHRyOyBicmVhazsKKyAgICAgIGNhc2UgNDog
d2ludGVyZmFjZS5leGVjdXRlID0gbnVsbHB0cjsgYnJlYWs7CisgICAgICBjYXNlIDU6IHdpbnRl
cmZhY2UuZW5kID0gbnVsbHB0cjsgYnJlYWs7CiAgICAgfQogICAgIEVYUEVDVF9FUSgwLCB2cHhf
c2V0X3dvcmtlcl9pbnRlcmZhY2UoJndpbnRlcmZhY2UpKTsKICAgfQpAQCAtMTcyLDcgKzE3Miw3
IEBAIHN0cmluZyBEZWNvZGVGaWxlKGNvbnN0IHN0cmluZyAmZmlsZW5hbWUsIGludCBudW1fdGhy
ZWFkcykgewogICAgIH0KIAogICAgIGxpYnZweF90ZXN0OjpEeERhdGFJdGVyYXRvciBkZWNfaXRl
ciA9IGRlY29kZXIuR2V0RHhEYXRhKCk7Ci0gICAgY29uc3QgdnB4X2ltYWdlX3QgKmltZyA9IE5V
TEw7CisgICAgY29uc3QgdnB4X2ltYWdlX3QgKmltZyA9IG51bGxwdHI7CiAKICAgICAvLyBHZXQg
ZGVjb21wcmVzc2VkIGRhdGEKICAgICB3aGlsZSAoKGltZyA9IGRlY19pdGVyLk5leHQoKSkpIHsK
QEAgLTE4Myw3ICsxODMsNyBAQCBzdHJpbmcgRGVjb2RlRmlsZShjb25zdCBzdHJpbmcgJmZpbGVu
YW1lLCBpbnQgbnVtX3RocmVhZHMpIHsKIH0KIAogdm9pZCBEZWNvZGVGaWxlcyhjb25zdCBGaWxl
TGlzdCBmaWxlc1tdKSB7Ci0gIGZvciAoY29uc3QgRmlsZUxpc3QgKml0ZXIgPSBmaWxlczsgaXRl
ci0+bmFtZSAhPSBOVUxMOyArK2l0ZXIpIHsKKyAgZm9yIChjb25zdCBGaWxlTGlzdCAqaXRlciA9
IGZpbGVzOyBpdGVyLT5uYW1lICE9IG51bGxwdHI7ICsraXRlcikgewogICAgIFNDT1BFRF9UUkFD
RShpdGVyLT5uYW1lKTsKICAgICBmb3IgKGludCB0ID0gMTsgdCA8PSA4OyArK3QpIHsKICAgICAg
IEVYUEVDVF9FUShpdGVyLT5leHBlY3RlZF9tZDUsIERlY29kZUZpbGUoaXRlci0+bmFtZSwgdCkp
CkBAIC0yNDUsNyArMjQ1LDcgQEAgVEVTVChWUDlEZWNvZGVNdWx0aVRocmVhZGVkVGVzdCwgRnJh
bWVQYXJhbGxlbCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiMzY4
ZWJjNmViZjNhNWU0NzhkODViMmMzMTQ5YjI4NDgiIH0sCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB7ICJ2cDkwLTItMDgtdGlsZV8xeDhfZnJhbWVfcGFyYWxsZWwud2VibSIs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIxN2U0MzlkYTIzODhhZmYz
YTBmNjljYjIyNTc5YzZjMSIgfSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHsgTlVMTCwgTlVMTCB9IH07CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7
IG51bGxwdHIsIG51bGxwdHIgfSB9OwogCiAgIERlY29kZUZpbGVzKGZpbGVzKTsKIH0KQEAgLTI5
Niw3ICsyOTYsNyBAQCBURVNUKFZQOURlY29kZU11bHRpVGhyZWFkZWRUZXN0LCBGcmFtZVBhcmFs
bGVsUmVzaXplKSB7CiAgICAgICAiYWU5NmYyMWYyMWI2MzcwY2MwMTI1NjIxYjQ0MWZjNTIiIH0s
CiAgICAgeyAidnA5MC0yLTE0LXJlc2l6ZS1mcC10aWxlcy04LTQud2VibSIsCiAgICAgICAiM2Vi
NGYyNGYxMDY0MGQ0MjIxOGY3ZmQ3YjlmZDMwZDQiIH0sCi0gICAgeyBOVUxMLCBOVUxMIH0KKyAg
ICB7IG51bGxwdHIsIG51bGxwdHIgfQogICB9OwogCiAgIERlY29kZUZpbGVzKGZpbGVzKTsKQEAg
LTMwOSwxMyArMzA5LDEzIEBAIFRFU1QoVlA5RGVjb2RlTXVsdGlUaHJlYWRlZFRlc3QsIE5vbkZy
YW1lUGFyYWxsZWwpIHsKICAgICB7ICJ2cDkwLTItMDgtdGlsZV8xeDgud2VibSIsICIwOTQxOTAy
YTUyZTkwOTJjYjAxMDkwNWVhYjE2MzY0YyIgfSwKICAgICB7ICJ2cDkwLTItMDgtdGlsZS00eDEu
d2VibSIsICIwNjUwNWFhZGU2NjQ3YzU4M2M4ZTAwYTJmNTgyMjY2ZiIgfSwKICAgICB7ICJ2cDkw
LTItMDgtdGlsZS00eDQud2VibSIsICI4NWMyMjk5ODkyNDYwZDc2ZTJjNjAwNTAyZDUyYmZlMiIg
fSwKLSAgICB7IE5VTEwsIE5VTEwgfQorICAgIHsgbnVsbHB0ciwgbnVsbHB0ciB9CiAgIH07CiAK
ICAgRGVjb2RlRmlsZXMoZmlsZXMpOwogfQogI2VuZGlmICAvLyBDT05GSUdfV0VCTV9JTwogCi1J
TlNUQU5USUFURV9URVNUX0NBU0VfUChTeW5jaHJvbm91cywgVlB4V29ya2VyVGhyZWFkVGVzdCwg
Ojp0ZXN0aW5nOjpCb29sKCkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFN5bmNocm9ub3Vz
LCBWUHhXb3JrZXJUaHJlYWRUZXN0LCA6OnRlc3Rpbmc6OkJvb2woKSk7CiAKIH0gIC8vIG5hbWVz
cGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZweF9zY2FsZV90ZXN0LmNjIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L3ZweF9zY2FsZV90ZXN0LmNjCmluZGV4IDA1N2EyYTI5NWY0NGZhYTI0Y2Jk
Y2YzMjMyNzg3M2ExNTI3YmE5MjkuLjdlZWE0MzdmYzgyNTk0ODJjNjEwMGVmYzAzY2Y0OTlhY2Vh
ZjJjOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cHhfc2NhbGVfdGVzdC5jYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rlc3QvdnB4X3NjYWxlX3Rlc3QuY2MKQEAgLTYyLDggKzYyLDggQEAgY2xh
c3MgRXh0ZW5kQm9yZGVyVGVzdAogCiBURVNUX1AoRXh0ZW5kQm9yZGVyVGVzdCwgRXh0ZW5kQm9y
ZGVyKSB7IEFTU0VSVF9OT19GQVRBTF9GQUlMVVJFKFJ1blRlc3QoKSk7IH0KIAotSU5TVEFOVElB
VEVfVEVTVF9DQVNFX1AoQywgRXh0ZW5kQm9yZGVyVGVzdCwKLSAgICAgICAgICAgICAgICAgICAg
ICAgIDo6dGVzdGluZzo6VmFsdWVzKHZwOF95djEyX2V4dGVuZF9mcmFtZV9ib3JkZXJzX2MpKTsK
K0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDLCBFeHRlbmRCb3JkZXJUZXN0LAorICAgICAgICAg
ICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZwOF95djEyX2V4dGVuZF9mcmFtZV9i
b3JkZXJzX2MpKTsKIAogY2xhc3MgQ29weUZyYW1lVGVzdCA6IHB1YmxpYyBWcHhTY2FsZUJhc2Us
CiAgICAgICAgICAgICAgICAgICAgICAgcHVibGljIDo6dGVzdGluZzo6VGVzdFdpdGhQYXJhbTxD
b3B5RnJhbWVGdW5jPiB7CkBAIC05NCw4ICs5NCw4IEBAIGNsYXNzIENvcHlGcmFtZVRlc3QgOiBw
dWJsaWMgVnB4U2NhbGVCYXNlLAogCiBURVNUX1AoQ29weUZyYW1lVGVzdCwgQ29weUZyYW1lKSB7
IEFTU0VSVF9OT19GQVRBTF9GQUlMVVJFKFJ1blRlc3QoKSk7IH0KIAotSU5TVEFOVElBVEVfVEVT
VF9DQVNFX1AoQywgQ29weUZyYW1lVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVz
dGluZzo6VmFsdWVzKHZwOF95djEyX2NvcHlfZnJhbWVfYykpOworSU5TVEFOVElBVEVfVEVTVF9T
VUlURV9QKEMsIENvcHlGcmFtZVRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXModnA4X3l2MTJfY29weV9mcmFtZV9jKSk7CiAKIH0gIC8vIG5hbWVzcGFjZQog
fSAgLy8gbmFtZXNwYWNlIGxpYnZweF90ZXN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qv
dnB4X3RlbXBvcmFsX3N2Y19lbmNvZGVyLnNoIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZweF90ZW1wb3Jh
bF9zdmNfZW5jb2Rlci5zaAppbmRleCA1ZTViYWM4ZmE2YWM3OTBjZmExYjNhMWIwMjE3YzY5Mzk0
NmYyNTM2Li42OWM3MzRkYWY4NGIwYTQ2ZTRlOGE5Y2YyNDZjNTQyYTI0YTc1M2YxIDEwMDc1NQot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3Rlc3QvdnB4X3RlbXBvcmFsX3N2Y19lbmNvZGVyLnNoCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC92cHhfdGVtcG9yYWxfc3ZjX2VuY29kZXIuc2gKQEAgLTU4LDE5ICs1OCwx
OSBAQCB2cHhfdHN2Y19lbmNvZGVyKCkgewogICAgICAgICAiJHtvdXRwdXRfZmlsZX0iICIke2Nv
ZGVjfSIgIiR7WVVWX1JBV19JTlBVVF9XSURUSH0iIFwKICAgICAgICAgIiR7WVVWX1JBV19JTlBV
VF9IRUlHSFR9IiAiJHt0aW1lYmFzZV9udW19IiAiJHt0aW1lYmFzZV9kZW59IiBcCiAgICAgICAg
ICIke3NwZWVkfSIgIiR7ZnJhbWVfZHJvcF90aHJlc2h9IiAiJHtlcnJvcl9yZXNpbGllbnR9IiAi
JHt0aHJlYWRzfSIgXAotICAgICAgICAiJEAiICR7ZGV2bnVsbH0KKyAgICAgICAgIiRAIiAke2Rl
dm51bGx9IHx8IHJldHVybiAxCiAgICAgICAjIFRlc3QgZm9yIHk0bSBpbnB1dC4KICAgICAgIGV2
YWwgIiR7VlBYX1RFU1RfUFJFRklYfSIgIiR7ZW5jb2Rlcn0iICIke1k0TV83MjBQX0lOUFVUfSIg
XAogICAgICAgICAiJHtvdXRwdXRfZmlsZX0iICIke2NvZGVjfSIgIiR7WTRNXzcyMFBfSU5QVVRf
V0lEVEh9IiBcCiAgICAgICAgICIke1k0TV83MjBQX0lOUFVUX0hFSUdIVH0iICIke3RpbWViYXNl
X251bX0iICIke3RpbWViYXNlX2Rlbl95NG19IiBcCiAgICAgICAgICIke3NwZWVkfSIgIiR7ZnJh
bWVfZHJvcF90aHJlc2h9IiAiJHtlcnJvcl9yZXNpbGllbnR9IiAiJHt0aHJlYWRzfSIgXAotICAg
ICAgICAiJEAiICR7ZGV2bnVsbH0KKyAgICAgICAgIiRAIiAke2Rldm51bGx9IHx8IHJldHVybiAx
CiAgICAgZWxzZQogICAgICAgZXZhbCAiJHtWUFhfVEVTVF9QUkVGSVh9IiAiJHtlbmNvZGVyfSIg
IiR7WVVWX1JBV19JTlBVVH0iIFwKICAgICAgICAgIiR7b3V0cHV0X2ZpbGV9IiAiJHtjb2RlY30i
ICIke1lVVl9SQVdfSU5QVVRfV0lEVEh9IiBcCiAgICAgICAgICIke1lVVl9SQVdfSU5QVVRfSEVJ
R0hUfSIgIiR7dGltZWJhc2VfbnVtfSIgIiR7dGltZWJhc2VfZGVufSIgXAogICAgICAgICAiJHtz
cGVlZH0iICIke2ZyYW1lX2Ryb3BfdGhyZXNofSIgIiR7ZXJyb3JfcmVzaWxpZW50fSIgIiR7dGhy
ZWFkc30iIFwKLSAgICAgICAgIiRAIiAiOCIgJHtkZXZudWxsfQorICAgICAgICAiJEAiICI4IiAk
e2Rldm51bGx9IHx8IHJldHVybiAxCiAgICAgZmkKICAgZG9uZQogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L3ZweGRlYy5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cHhkZWMuc2gKaW5kZXgg
MDQ0YWE3ZTE2ZDBjODgwNmExY2MzOTUyMmFkMDk0NTk5YTMwMGFkNy4uMTk5ZmVhZTVmM2YyYTc2
NWVjMGM4ZDJhMGUzMDcwN2QyZWQ0YjU1NCAxMDA3NTUKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3Zw
eGRlYy5zaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnB4ZGVjLnNoCkBAIC04Niw3ICs4Niw3IEBA
IHZweGRlY192cDlfd2VibV9mcmFtZV9wYXJhbGxlbCgpIHsKICAgICAgWyAiJCh3ZWJtX2lvX2F2
YWlsYWJsZSkiID0gInllcyIgXTsgdGhlbgogICAgIGZvciB0aHJlYWRzIGluIDIgMyA0IDUgNiA3
IDg7IGRvCiAgICAgICB2cHhkZWMgIiR7VlA5X0ZQTV9XRUJNX0ZJTEV9IiAtLXN1bW1hcnkgLS1u
b2JsaXQgLS10aHJlYWRzPSR0aHJlYWRzIFwKLSAgICAgICAgLS1mcmFtZS1wYXJhbGxlbAorICAg
ICAgICAtLWZyYW1lLXBhcmFsbGVsIHx8IHJldHVybiAxCiAgICAgZG9uZQogICBmaQogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZweGVuYy5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cHhl
bmMuc2gKaW5kZXggZjk0ZTJlMDk0YTM3NzE1MTdjZjQ1OWUwNGY5MmQ0ZTQ4MDhiOTE1Yi4uMTcy
MzQ5YTJiMzI5NDY4NTdlMjhmYWY1NThhMzk4YWMwYjNjZjRkZCAxMDA3NTUKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC90ZXN0L3ZweGVuYy5zaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnB4ZW5jLnNoCkBAIC0x
MzEsNyArMTMxLDcgQEAgdnB4ZW5jX3ZwOF9pdmYoKSB7CiAgICAgICAtLWNvZGVjPXZwOCBcCiAg
ICAgICAtLWxpbWl0PSIke1RFU1RfRlJBTUVTfSIgXAogICAgICAgLS1pdmYgXAotICAgICAgLS1v
dXRwdXQ9IiR7b3V0cHV0fSIKKyAgICAgIC0tb3V0cHV0PSIke291dHB1dH0iIHx8IHJldHVybiAx
CiAKICAgICBpZiBbICEgLWUgIiR7b3V0cHV0fSIgXTsgdGhlbgogICAgICAgZWxvZyAiT3V0cHV0
IGZpbGUgZG9lcyBub3QgZXhpc3QuIgpAQCAtMTQ3LDcgKzE0Nyw3IEBAIHZweGVuY192cDhfd2Vi
bSgpIHsKICAgICB2cHhlbmMgJCh5dXZfaW5wdXRfaGFudHJvX2NvbGxhZ2UpIFwKICAgICAgIC0t
Y29kZWM9dnA4IFwKICAgICAgIC0tbGltaXQ9IiR7VEVTVF9GUkFNRVN9IiBcCi0gICAgICAtLW91
dHB1dD0iJHtvdXRwdXR9IgorICAgICAgLS1vdXRwdXQ9IiR7b3V0cHV0fSIgfHwgcmV0dXJuIDEK
IAogICAgIGlmIFsgISAtZSAiJHtvdXRwdXR9IiBdOyB0aGVuCiAgICAgICBlbG9nICJPdXRwdXQg
ZmlsZSBkb2VzIG5vdCBleGlzdC4iCkBAIC0xNjIsNyArMTYyLDggQEAgdnB4ZW5jX3ZwOF93ZWJt
X3J0KCkgewogICAgIGxvY2FsIG91dHB1dD0iJHtWUFhfVEVTVF9PVVRQVVRfRElSfS92cDhfcnQu
d2VibSIKICAgICB2cHhlbmMgJCh5dXZfaW5wdXRfaGFudHJvX2NvbGxhZ2UpIFwKICAgICAgICQo
dnB4ZW5jX3J0X3BhcmFtcyB2cDgpIFwKLSAgICAgIC0tb3V0cHV0PSIke291dHB1dH0iCisgICAg
ICAtLW91dHB1dD0iJHtvdXRwdXR9IiB8fCByZXR1cm4gMQorCiAgICAgaWYgWyAhIC1lICIke291
dHB1dH0iIF07IHRoZW4KICAgICAgIGVsb2cgIk91dHB1dCBmaWxlIGRvZXMgbm90IGV4aXN0LiIK
ICAgICAgIHJldHVybiAxCkBAIC0xNzgsNyArMTc5LDcgQEAgdnB4ZW5jX3ZwOF93ZWJtXzJwYXNz
KCkgewogICAgICAgLS1jb2RlYz12cDggXAogICAgICAgLS1saW1pdD0iJHtURVNUX0ZSQU1FU30i
IFwKICAgICAgIC0tb3V0cHV0PSIke291dHB1dH0iIFwKLSAgICAgIC0tcGFzc2VzPTIKKyAgICAg
IC0tcGFzc2VzPTIgfHwgcmV0dXJuIDEKIAogICAgIGlmIFsgISAtZSAiJHtvdXRwdXR9IiBdOyB0
aGVuCiAgICAgICBlbG9nICJPdXRwdXQgZmlsZSBkb2VzIG5vdCBleGlzdC4iCkBAIC0xOTksNyAr
MjAwLDcgQEAgdnB4ZW5jX3ZwOF93ZWJtX2xhZzEwX2ZyYW1lczIwKCkgewogICAgICAgLS1sYWct
aW4tZnJhbWVzPSIke2xhZ19mcmFtZXN9IiBcCiAgICAgICAtLW91dHB1dD0iJHtvdXRwdXR9IiBc
CiAgICAgICAtLWF1dG8tYWx0LXJlZj0xIFwKLSAgICAgIC0tcGFzc2VzPTIKKyAgICAgIC0tcGFz
c2VzPTIgfHwgcmV0dXJuIDEKIAogICAgIGlmIFsgISAtZSAiJHtvdXRwdXR9IiBdOyB0aGVuCiAg
ICAgICBlbG9nICJPdXRwdXQgZmlsZSBkb2VzIG5vdCBleGlzdC4iCkBAIC0yMTUsNyArMjE2LDcg
QEAgdnB4ZW5jX3ZwOF9pdmZfcGlwZWRfaW5wdXQoKSB7CiAgICAgICAtLWNvZGVjPXZwOCBcCiAg
ICAgICAtLWxpbWl0PSIke1RFU1RfRlJBTUVTfSIgXAogICAgICAgLS1pdmYgXAotICAgICAgLS1v
dXRwdXQ9IiR7b3V0cHV0fSIKKyAgICAgIC0tb3V0cHV0PSIke291dHB1dH0iIHx8IHJldHVybiAx
CiAKICAgICBpZiBbICEgLWUgIiR7b3V0cHV0fSIgXTsgdGhlbgogICAgICAgZWxvZyAiT3V0cHV0
IGZpbGUgZG9lcyBub3QgZXhpc3QuIgpAQCAtMjMzLDcgKzIzNCw3IEBAIHZweGVuY192cDlfaXZm
KCkgewogICAgICAgLS1saW1pdD0iJHtURVNUX0ZSQU1FU30iIFwKICAgICAgICIke3Bhc3Nlc30i
IFwKICAgICAgIC0taXZmIFwKLSAgICAgIC0tb3V0cHV0PSIke291dHB1dH0iCisgICAgICAtLW91
dHB1dD0iJHtvdXRwdXR9IiB8fCByZXR1cm4gMQogCiAgICAgaWYgWyAhIC1lICIke291dHB1dH0i
IF07IHRoZW4KICAgICAgIGVsb2cgIk91dHB1dCBmaWxlIGRvZXMgbm90IGV4aXN0LiIKQEAgLTI1
MSw3ICsyNTIsNyBAQCB2cHhlbmNfdnA5X3dlYm0oKSB7CiAgICAgICAtLWNvZGVjPXZwOSBcCiAg
ICAgICAtLWxpbWl0PSIke1RFU1RfRlJBTUVTfSIgXAogICAgICAgIiR7cGFzc2VzfSIgXAotICAg
ICAgLS1vdXRwdXQ9IiR7b3V0cHV0fSIKKyAgICAgIC0tb3V0cHV0PSIke291dHB1dH0iIHx8IHJl
dHVybiAxCiAKICAgICBpZiBbICEgLWUgIiR7b3V0cHV0fSIgXTsgdGhlbgogICAgICAgZWxvZyAi
T3V0cHV0IGZpbGUgZG9lcyBub3QgZXhpc3QuIgpAQCAtMjY2LDcgKzI2Nyw3IEBAIHZweGVuY192
cDlfd2VibV9ydCgpIHsKICAgICBsb2NhbCBvdXRwdXQ9IiR7VlBYX1RFU1RfT1VUUFVUX0RJUn0v
dnA5X3J0LndlYm0iCiAgICAgdnB4ZW5jICQoeXV2X2lucHV0X2hhbnRyb19jb2xsYWdlKSBcCiAg
ICAgICAkKHZweGVuY19ydF9wYXJhbXMgdnA5KSBcCi0gICAgICAtLW91dHB1dD0iJHtvdXRwdXR9
IgorICAgICAgLS1vdXRwdXQ9IiR7b3V0cHV0fSIgfHwgcmV0dXJuIDEKIAogICAgIGlmIFsgISAt
ZSAiJHtvdXRwdXR9IiBdOyB0aGVuCiAgICAgICBlbG9nICJPdXRwdXQgZmlsZSBkb2VzIG5vdCBl
eGlzdC4iCkBAIC0yOTAsNyArMjkxLDcgQEAgdnB4ZW5jX3ZwOV93ZWJtX3J0X211bHRpdGhyZWFk
X3RpbGVkKCkgewogICAgICAgICAgICQodnB4ZW5jX3J0X3BhcmFtcyB2cDkpIFwKICAgICAgICAg
ICAtLXRocmVhZHM9JHt0aHJlYWRzfSBcCiAgICAgICAgICAgLS10aWxlLWNvbHVtbnM9JHt0aWxl
X2NvbHN9IFwKLSAgICAgICAgICAtLW91dHB1dD0iJHtvdXRwdXR9IgorICAgICAgICAgIC0tb3V0
cHV0PSIke291dHB1dH0iIHx8IHJldHVybiAxCiAKICAgICAgICAgaWYgWyAhIC1lICIke291dHB1
dH0iIF07IHRoZW4KICAgICAgICAgICBlbG9nICJPdXRwdXQgZmlsZSBkb2VzIG5vdCBleGlzdC4i
CkBAIC0zMTgsNyArMzE5LDggQEAgdnB4ZW5jX3ZwOV93ZWJtX3J0X211bHRpdGhyZWFkX3RpbGVk
X2ZyYW1lcGFyYWxsZWwoKSB7CiAgICAgICAgICAgLS10aHJlYWRzPSR7dGhyZWFkc30gXAogICAg
ICAgICAgIC0tdGlsZS1jb2x1bW5zPSR7dGlsZV9jb2xzfSBcCiAgICAgICAgICAgLS1mcmFtZS1w
YXJhbGxlbD0xIFwKLSAgICAgICAgICAtLW91dHB1dD0iJHtvdXRwdXR9IgorICAgICAgICAgIC0t
b3V0cHV0PSIke291dHB1dH0iIHx8IHJldHVybiAxCisKICAgICAgICAgaWYgWyAhIC1lICIke291
dHB1dH0iIF07IHRoZW4KICAgICAgICAgICBlbG9nICJPdXRwdXQgZmlsZSBkb2VzIG5vdCBleGlz
dC4iCiAgICAgICAgICAgcmV0dXJuIDEKQEAgLTMzNyw3ICszMzksNyBAQCB2cHhlbmNfdnA5X3dl
Ym1fMnBhc3MoKSB7CiAgICAgICAtLWNvZGVjPXZwOSBcCiAgICAgICAtLWxpbWl0PSIke1RFU1Rf
RlJBTUVTfSIgXAogICAgICAgLS1vdXRwdXQ9IiR7b3V0cHV0fSIgXAotICAgICAgLS1wYXNzZXM9
MgorICAgICAgLS1wYXNzZXM9MiB8fCByZXR1cm4gMQogCiAgICAgaWYgWyAhIC1lICIke291dHB1
dH0iIF07IHRoZW4KICAgICAgIGVsb2cgIk91dHB1dCBmaWxlIGRvZXMgbm90IGV4aXN0LiIKQEAg
LTM1Niw3ICszNTgsNyBAQCB2cHhlbmNfdnA5X2l2Zl9sb3NzbGVzcygpIHsKICAgICAgIC0taXZm
IFwKICAgICAgIC0tb3V0cHV0PSIke291dHB1dH0iIFwKICAgICAgICIke3Bhc3Nlc30iIFwKLSAg
ICAgIC0tbG9zc2xlc3M9MQorICAgICAgLS1sb3NzbGVzcz0xIHx8IHJldHVybiAxCiAKICAgICBp
ZiBbICEgLWUgIiR7b3V0cHV0fSIgXTsgdGhlbgogICAgICAgZWxvZyAiT3V0cHV0IGZpbGUgZG9l
cyBub3QgZXhpc3QuIgpAQCAtMzc2LDcgKzM3OCw3IEBAIHZweGVuY192cDlfaXZmX21pbnEwX21h
eHEwKCkgewogICAgICAgLS1vdXRwdXQ9IiR7b3V0cHV0fSIgXAogICAgICAgIiR7cGFzc2VzfSIg
XAogICAgICAgLS1taW4tcT0wIFwKLSAgICAgIC0tbWF4LXE9MAorICAgICAgLS1tYXgtcT0wIHx8
IHJldHVybiAxCiAKICAgICBpZiBbICEgLWUgIiR7b3V0cHV0fSIgXTsgdGhlbgogICAgICAgZWxv
ZyAiT3V0cHV0IGZpbGUgZG9lcyBub3QgZXhpc3QuIgpAQCAtMzk4LDcgKzQwMCw3IEBAIHZweGVu
Y192cDlfd2VibV9sYWcxMF9mcmFtZXMyMCgpIHsKICAgICAgIC0tbGFnLWluLWZyYW1lcz0iJHts
YWdfZnJhbWVzfSIgXAogICAgICAgLS1vdXRwdXQ9IiR7b3V0cHV0fSIgXAogICAgICAgIiR7cGFz
c2VzfSIgXAotICAgICAgLS1hdXRvLWFsdC1yZWY9MQorICAgICAgLS1hdXRvLWFsdC1yZWY9MSB8
fCByZXR1cm4gMQogCiAgICAgaWYgWyAhIC1lICIke291dHB1dH0iIF07IHRoZW4KICAgICAgIGVs
b2cgIk91dHB1dCBmaWxlIGRvZXMgbm90IGV4aXN0LiIKQEAgLTQxNyw3ICs0MTksNyBAQCB2cHhl
bmNfdnA5X3dlYm1fbm9uX3NxdWFyZV9wYXIoKSB7CiAgICAgICAtLWNvZGVjPXZwOSBcCiAgICAg
ICAtLWxpbWl0PSIke1RFU1RfRlJBTUVTfSIgXAogICAgICAgIiR7cGFzc2VzfSIgXAotICAgICAg
LS1vdXRwdXQ9IiR7b3V0cHV0fSIKKyAgICAgIC0tb3V0cHV0PSIke291dHB1dH0iIHx8IHJldHVy
biAxCiAKICAgICBpZiBbICEgLWUgIiR7b3V0cHV0fSIgXTsgdGhlbgogICAgICAgZWxvZyAiT3V0
cHV0IGZpbGUgZG9lcyBub3QgZXhpc3QuIgpAQCAtNDQzLDcgKzQ0NSw3IEBAIHZweGVuY192cDlf
d2VibV9zaGFycG5lc3MoKSB7CiAgICAgICAgIC0tZW5kLXVzYWdlPXEgXAogICAgICAgICAtLWNx
LWxldmVsPTQwIFwKICAgICAgICAgLS1vdXRwdXQ9IiR7b3V0cHV0fSIgXAotICAgICAgICAiJHtw
YXNzZXN9IgorICAgICAgICAiJHtwYXNzZXN9IiB8fCByZXR1cm4gMQogCiAgICAgICBpZiBbICEg
LWUgIiR7b3V0cHV0fSIgXTsgdGhlbgogICAgICAgICBlbG9nICJPdXRwdXQgZmlsZSBkb2VzIG5v
dCBleGlzdC4iCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QveTRtX3Rlc3QuY2MgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3Rlc3QveTRtX3Rlc3QuY2MKaW5kZXggNzZkMDMzZDUyYTcxMjBkOWI2MGE2MWU0YmNm
NzhlOGNjMmY4OGU2ZS4uODI3MjI2M2Y2NmE4ODhmM2U0Zjg4YTRkMDM1MjRjZGYzMzA1MTRiNCAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3k0bV90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dGVzdC95NG1fdGVzdC5jYwpAQCAtOTAsNyArOTAsNyBAQCBjbGFzcyBZNG1WaWRlb1NvdXJjZVRl
c3QgOiBwdWJsaWMgOjp0ZXN0aW5nOjpUZXN0V2l0aFBhcmFtPFk0bVRlc3RQYXJhbT4sCiAKICAg
Ly8gQ2hlY2tzIHk0bSBoZWFkZXIgaW5mb3JtYXRpb24KICAgdm9pZCBIZWFkZXJDaGVja3ModW5z
aWduZWQgaW50IGJpdF9kZXB0aCwgdnB4X2ltZ19mbXRfdCBmbXQpIHsKLSAgICBBU1NFUlRfVFJV
RShpbnB1dF9maWxlXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoaW5wdXRfZmlsZV8sIG51bGxw
dHIpOwogICAgIEFTU0VSVF9FUSh5NG1fLnBpY193LCAoaW50KWtXaWR0aCk7CiAgICAgQVNTRVJU
X0VRKHk0bV8ucGljX2gsIChpbnQpa0hlaWdodCk7CiAgICAgQVNTRVJUX0VRKGltZygpLT5kX3cs
IGtXaWR0aCk7CkBAIC0xMTYsNyArMTE2LDcgQEAgY2xhc3MgWTRtVmlkZW9Tb3VyY2VUZXN0IDog
cHVibGljIDo6dGVzdGluZzo6VGVzdFdpdGhQYXJhbTxZNG1UZXN0UGFyYW0+LAogCiAgIC8vIENo
ZWNrcyBNRDUgb2YgdGhlIHJhdyBmcmFtZSBkYXRhCiAgIHZvaWQgTWQ1Q2hlY2soY29uc3Qgc3Ry
aW5nICZleHBlY3RlZF9tZDUpIHsKLSAgICBBU1NFUlRfVFJVRShpbnB1dF9maWxlXyAhPSBOVUxM
KTsKKyAgICBBU1NFUlRfTkUoaW5wdXRfZmlsZV8sIG51bGxwdHIpOwogICAgIGxpYnZweF90ZXN0
OjpNRDUgbWQ1OwogICAgIGZvciAodW5zaWduZWQgaW50IGkgPSBzdGFydF87IGkgPCBsaW1pdF87
IGkrKykgewogICAgICAgbWQ1LkFkZChpbWcoKSk7CkBAIC0xMzMsMTYgKzEzMywxNiBAQCBURVNU
X1AoWTRtVmlkZW9Tb3VyY2VUZXN0LCBTb3VyY2VUZXN0KSB7CiAgIE1kNUNoZWNrKHQubWQ1cmF3
KTsKIH0KIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoQywgWTRtVmlkZW9Tb3VyY2VUZXN0LAot
ICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrWTRtVGVzdFZlY3Rv
cnMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDLCBZNG1WaWRlb1NvdXJjZVRlc3QsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrWTRtVGVzdFZlY3Rv
cnMpKTsKIAogY2xhc3MgWTRtVmlkZW9Xcml0ZVRlc3QgOiBwdWJsaWMgWTRtVmlkZW9Tb3VyY2VU
ZXN0IHsKICBwcm90ZWN0ZWQ6Ci0gIFk0bVZpZGVvV3JpdGVUZXN0KCkgOiB0bXBmaWxlXyhOVUxM
KSB7fQorICBZNG1WaWRlb1dyaXRlVGVzdCgpIDogdG1wZmlsZV8obnVsbHB0cikge30KIAogICB2
aXJ0dWFsIH5ZNG1WaWRlb1dyaXRlVGVzdCgpIHsKICAgICBkZWxldGUgdG1wZmlsZV87Ci0gICAg
aW5wdXRfZmlsZV8gPSBOVUxMOworICAgIGlucHV0X2ZpbGVfID0gbnVsbHB0cjsKICAgfQogCiAg
IHZvaWQgUmVwbGFjZUlucHV0RmlsZShGSUxFICppbnB1dF9maWxlKSB7CkBAIC0xNTUsMTEgKzE1
NSwxMSBAQCBjbGFzcyBZNG1WaWRlb1dyaXRlVGVzdCA6IHB1YmxpYyBZNG1WaWRlb1NvdXJjZVRl
c3QgewogCiAgIC8vIFdyaXRlcyBvdXQgYSB5NG0gZmlsZSBhbmQgdGhlbiByZWFkcyBpdCBiYWNr
CiAgIHZvaWQgV3JpdGVZNG1BbmRSZWFkQmFjaygpIHsKLSAgICBBU1NFUlRfVFJVRShpbnB1dF9m
aWxlXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoaW5wdXRfZmlsZV8sIG51bGxwdHIpOwogICAg
IGNoYXIgYnVmW1k0TV9CVUZGRVJfU0laRV0gPSB7IDAgfTsKICAgICBjb25zdCBzdHJ1Y3QgVnB4
UmF0aW9uYWwgZnJhbWVyYXRlID0geyB5NG1fLmZwc19uLCB5NG1fLmZwc19kIH07CiAgICAgdG1w
ZmlsZV8gPSBuZXcgbGlidnB4X3Rlc3Q6OlRlbXBPdXRGaWxlOwotICAgIEFTU0VSVF9UUlVFKHRt
cGZpbGVfLT5maWxlKCkgIT0gTlVMTCk7CisgICAgQVNTRVJUX05FKHRtcGZpbGVfLT5maWxlKCks
IG51bGxwdHIpOwogICAgIHk0bV93cml0ZV9maWxlX2hlYWRlcihidWYsIHNpemVvZihidWYpLCBr
V2lkdGgsIGtIZWlnaHQsICZmcmFtZXJhdGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIHk0
bV8udnB4X2ZtdCwgeTRtXy5iaXRfZGVwdGgpOwogICAgIGZwdXRzKGJ1ZiwgdG1wZmlsZV8tPmZp
bGUoKSk7CkBAIC0xODYsNiArMTg2LDU3IEBAIFRFU1RfUChZNG1WaWRlb1dyaXRlVGVzdCwgV3Jp
dGVUZXN0KSB7CiAgIE1kNUNoZWNrKHQubWQ1cmF3KTsKIH0KIAotSU5TVEFOVElBVEVfVEVTVF9D
QVNFX1AoQywgWTRtVmlkZW9Xcml0ZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRl
c3Rpbmc6OlZhbHVlc0luKGtZNG1UZXN0VmVjdG9ycykpOworSU5TVEFOVElBVEVfVEVTVF9TVUlU
RV9QKEMsIFk0bVZpZGVvV3JpdGVUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVz
dGluZzo6VmFsdWVzSW4oa1k0bVRlc3RWZWN0b3JzKSk7CisKK3N0YXRpYyBjb25zdCBjaGFyIGtZ
NE1SZWd1bGFySGVhZGVyW10gPQorICAgICJZVVY0TVBFRzIgVzQgSDQgRjMwOjEgSXAgQTA6MCBD
NDIwanBlZyBYWVNDU1M9NDIwSlBFR1xuIgorICAgICJGUkFNRVxuIgorICAgICIwMTIzNDU2Nzg5
MTIzNDU2MDEyMzAxMjMiOworCitURVNUKFk0TUhlYWRlclRlc3QsIFJlZ3VsYXJIZWFkZXIpIHsK
KyAgbGlidnB4X3Rlc3Q6OlRlbXBPdXRGaWxlIGY7CisgIGZ3cml0ZShrWTRNUmVndWxhckhlYWRl
ciwgMSwgc2l6ZW9mKGtZNE1SZWd1bGFySGVhZGVyKSwgZi5maWxlKCkpOworICBmZmx1c2goZi5m
aWxlKCkpOworICBFWFBFQ1RfRVEoMCwgZnNlZWsoZi5maWxlKCksIDAsIDApKTsKKworICB5NG1f
aW5wdXQgeTRtOworICBFWFBFQ1RfRVEoeTRtX2lucHV0X29wZW4oJnk0bSwgZi5maWxlKCksIC8q
c2tpcF9idWZmZXI9Ki9OVUxMLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgLypudW1fc2tp
cD0qLzAsIC8qb25seV80MjA9Ki8wKSwKKyAgICAgICAgICAgIDApOworICBFWFBFQ1RfRVEoeTRt
LnBpY193LCA0KTsKKyAgRVhQRUNUX0VRKHk0bS5waWNfaCwgNCk7CisgIEVYUEVDVF9FUSh5NG0u
ZnBzX24sIDMwKTsKKyAgRVhQRUNUX0VRKHk0bS5mcHNfZCwgMSk7CisgIEVYUEVDVF9FUSh5NG0u
aW50ZXJsYWNlLCAncCcpOworICBFWFBFQ1RfRVEoc3RyY21wKCI0MjBqcGVnIiwgeTRtLmNocm9t
YV90eXBlKSwgMCk7CisgIHk0bV9pbnB1dF9jbG9zZSgmeTRtKTsKK30KKworLy8gVGVzdGluZyB0
aGF0IGhlYWRlcnMgb3ZlciAxMDAgY2hhcmFjdGVycyBjYW4gYmUgcGFyc2VkLgorc3RhdGljIGNv
bnN0IGNoYXIga1k0TUxvbmdIZWFkZXJbXSA9CisgICAgIllVVjRNUEVHMiBXNCBINCBGMzA6MSBJ
cCBBMDowIEM0MjBqcGVnIFhZU0NTUz00MjBKUEVHICIKKyAgICAiWENPTE9SUkFOR0U9TElNSVRF
RCBYU09NRV9VTktOT1dOX01FVEFEQVRBIFhPVEhFUl9VTktOT1dOX01FVEFEQVRBXG4iCisgICAg
IkZSQU1FXG4iCisgICAgIjAxMjM0NTY3ODkxMjM0NTYwMTIzMDEyMyI7CisKK1RFU1QoWTRNSGVh
ZGVyVGVzdCwgTG9uZ0hlYWRlcikgeworICBsaWJ2cHhfdGVzdDo6VGVtcE91dEZpbGUgZjsKKyAg
ZndyaXRlKGtZNE1Mb25nSGVhZGVyLCAxLCBzaXplb2Yoa1k0TUxvbmdIZWFkZXIpLCBmLmZpbGUo
KSk7CisgIGZmbHVzaChmLmZpbGUoKSk7CisgIEVYUEVDVF9FUShmc2VlayhmLmZpbGUoKSwgMCwg
MCksIDApOworCisgIHk0bV9pbnB1dCB5NG07CisgIEVYUEVDVF9FUSh5NG1faW5wdXRfb3Blbigm
eTRtLCBmLmZpbGUoKSwgLypza2lwX2J1ZmZlcj0qL05VTEwsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKm51bV9za2lwPSovMCwgLypvbmx5XzQyMD0qLzApLAorICAgICAgICAgICAgMCk7
CisgIEVYUEVDVF9FUSh5NG0ucGljX3csIDQpOworICBFWFBFQ1RfRVEoeTRtLnBpY19oLCA0KTsK
KyAgRVhQRUNUX0VRKHk0bS5mcHNfbiwgMzApOworICBFWFBFQ1RfRVEoeTRtLmZwc19kLCAxKTsK
KyAgRVhQRUNUX0VRKHk0bS5pbnRlcmxhY2UsICdwJyk7CisgIEVYUEVDVF9FUShzdHJjbXAoIjQy
MGpwZWciLCB5NG0uY2hyb21hX3R5cGUpLCAwKTsKKyAgeTRtX2lucHV0X2Nsb3NlKCZ5NG0pOwor
fQorCiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC95dXZfdGVt
cG9yYWxfZmlsdGVyX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QveXV2X3RlbXBvcmFsX2ZpbHRl
cl90ZXN0LmNjCmluZGV4IDhmM2M1OGIwMzgzNGMzZDAzMzYzNzcxNWFlYzE1YjBhNWViM2YwOWUu
LmNmZGM4OGQ4OTZmOGMyZDBjYzU1NWMwNzdmNzcyN2VjMmQ1Y2QzNTAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC95dXZfdGVtcG9yYWxfZmlsdGVyX3Rlc3QuY2MKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90ZXN0L3l1dl90ZW1wb3JhbF9maWx0ZXJfdGVzdC5jYwpAQCAtNjc3LDcgKzY3Nyw3IEBAIFRF
U1RfUChZVVZUZW1wb3JhbEZpbHRlclRlc3QsIERJU0FCTEVEX1NwZWVkKSB7CiBXUkFQX0hJR0hC
RF9GVU5DKHZwOV9oaWdoYmRfYXBwbHlfdGVtcG9yYWxfZmlsdGVyX2MsIDEwKTsKIFdSQVBfSElH
SEJEX0ZVTkModnA5X2hpZ2hiZF9hcHBseV90ZW1wb3JhbF9maWx0ZXJfYywgMTIpOwogCi1JTlNU
QU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBDLCBZ
VVZUZW1wb3JhbEZpbHRlclRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIFRl
bXBvcmFsRmlsdGVyV2l0aEJkKCZ3cmFwX3ZwOV9oaWdoYmRfYXBwbHlfdGVtcG9yYWxfZmlsdGVy
X2NfMTAsIDEwKSwKQEAgLTY4Niw3ICs2ODYsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgK
IFdSQVBfSElHSEJEX0ZVTkModnA5X2hpZ2hiZF9hcHBseV90ZW1wb3JhbF9maWx0ZXJfc3NlNF8x
LCAxMCk7CiBXUkFQX0hJR0hCRF9GVU5DKHZwOV9oaWdoYmRfYXBwbHlfdGVtcG9yYWxfZmlsdGVy
X3NzZTRfMSwgMTIpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RF
U1RfU1VJVEVfUCgKICAgICBTU0U0XzEsIFlVVlRlbXBvcmFsRmlsdGVyVGVzdCwKICAgICA6OnRl
c3Rpbmc6OlZhbHVlcygKICAgICAgICAgVGVtcG9yYWxGaWx0ZXJXaXRoQmQoJndyYXBfdnA5X2hp
Z2hiZF9hcHBseV90ZW1wb3JhbF9maWx0ZXJfc3NlNF8xXzEwLApAQCAtNjk1LDE0ICs2OTUsMTQg
QEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDEyKSkpOwogI2VuZGlmICAvLyBIQVZFX1NTRTRfMQogI2Vsc2UKLUlOU1RBTlRJQVRFX1RFU1Rf
Q0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEMsIFlVVlRlbXBvcmFsRmls
dGVyVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhUZW1wb3JhbEZpbHRlcldpdGhCZCgmdnA5
X2FwcGx5X3RlbXBvcmFsX2ZpbHRlcl9jLCA4KSkpOwogCiAjaWYgSEFWRV9TU0U0XzEKLUlOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKFNTRTRfMSwgWVVWVGVtcG9yYWxGaWx0ZXJUZXN0LAotICAgICAg
ICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoVGVtcG9yYWxGaWx0ZXJXaXRoQmQo
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZwOV9hcHBseV90ZW1wb3JhbF9maWx0ZXJf
c3NlNF8xLCA4KSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFNTRTRfMSwgWVVWVGVtcG9y
YWxGaWx0ZXJUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVz
KFRlbXBvcmFsRmlsdGVyV2l0aEJkKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnA5
X2FwcGx5X3RlbXBvcmFsX2ZpbHRlcl9zc2U0XzEsIDgpKSk7CiAjZW5kaWYgIC8vIEhBVkVfU1NF
NF8xCiAjZW5kaWYgIC8vIENPTkZJR19WUDlfSElHSEJJVERFUFRICiB9ICAvLyBuYW1lc3BhY2UK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC95dXZfdmlkZW9fc291cmNlLmggYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rlc3QveXV2X3ZpZGVvX3NvdXJjZS5oCmluZGV4IDAyMGNlODAxZDkzODhjNjUxMjI4ZTgy
NDFkMDM2ZTQ1ZjMxZTQxOTcuLjM4M2FiOGYxYjFkZDg2ZjVhZDI5NDM2YTM1OWM5ZDQ1Zjg3ZGQz
OTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC95dXZfdmlkZW9fc291cmNlLmgKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90ZXN0L3l1dl92aWRlb19zb3VyY2UuaApAQCAtODQsNiArODQsNyBAQCBjbGFz
cyBZVVZWaWRlb1NvdXJjZSA6IHB1YmxpYyBWaWRlb1NvdXJjZSB7CiAgICAgICBoZWlnaHRfID0g
aGVpZ2h0OwogICAgICAgZm9ybWF0XyA9IGZvcm1hdDsKICAgICAgIHN3aXRjaCAoZm9ybWF0KSB7
CisgICAgICAgIGNhc2UgVlBYX0lNR19GTVRfTlYxMjoKICAgICAgICAgY2FzZSBWUFhfSU1HX0ZN
VF9JNDIwOiByYXdfc2l6ZV8gPSB3aWR0aCAqIGhlaWdodCAqIDMgLyAyOyBicmVhazsKICAgICAg
ICAgY2FzZSBWUFhfSU1HX0ZNVF9JNDIyOiByYXdfc2l6ZV8gPSB3aWR0aCAqIGhlaWdodCAqIDI7
IGJyZWFrOwogICAgICAgICBjYXNlIFZQWF9JTUdfRk1UX0k0NDA6IHJhd19zaXplXyA9IHdpZHRo
ICogaGVpZ2h0ICogMjsgYnJlYWs7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5
L2dvb2dsZXRlc3QvUkVBRE1FLmxpYnZweCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xl
dGVzdC9SRUFETUUubGlidnB4CmluZGV4IDQ5MDA1ZGRhYzk4ZWFjZDM2ZWM3ZDdjN2Y1OGZkNjdi
NDZiOGM4ZmMuLmVkNTVmYjA5ZjkzYjNlYmZiZGEyNjRlNmM2M2E2MjZhMzNhMTIwOWUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9SRUFETUUubGlidnB4Cisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9SRUFETUUubGlidnB4CkBAIC0x
LDUgKzEsNSBAQAogVVJMOiBodHRwczovL2dpdGh1Yi5jb20vZ29vZ2xlL2dvb2dsZXRlc3QuZ2l0
Ci1WZXJzaW9uOiByZWxlYXNlLTEuOC4xCitWZXJzaW9uOiByZWxlYXNlLTEuMTAuMC0yMjQtZzIz
YjJhM2IxCiBMaWNlbnNlOiBCU0QKIExpY2Vuc2UgRmlsZTogTElDRU5TRQogCkBAIC0xMywxNiAr
MTMsMTEgQEAgZ2VuZXJhdGlvbi4KIAogTG9jYWwgTW9kaWZpY2F0aW9uczoKIC0gUmVtb3ZlIGV2
ZXJ5dGhpbmcgYnV0OgotICBnb29nbGV0ZXN0LXJlbGVhc2UtMS44LjEvZ29vZ2xldGVzdC8KLSAg
IENIQU5HRVMKKyAgZ29vZ2xldGVzdC8KICAgIENPTlRSSUJVVE9SUwogICAgaW5jbHVkZQogICAg
TElDRU5TRQogICAgUkVBRE1FLm1kCiAgICBzcmMKLQotLSBNYWtlIFdpdGhQYXJhbUludGVyZmFj
ZTxUPjo6R2V0UGFyYW0gc3RhdGljIGluIG9yZGVyIHRvIGF2b2lkCi0gIGluaXRpYWxpemF0aW9u
IGlzc3VlcwotICBodHRwczovL2dpdGh1Yi5jb20vZ29vZ2xlL2dvb2dsZXRlc3QvcHVsbC8xODMw
Ci0tIFVzZSB3Y3NsZW4oKSBpbnN0ZWFkIG9mIHN0ZDo6d2NzbGVuKCkKLSAgaHR0cHM6Ly9naXRo
dWIuY29tL2dvb2dsZS9nb29nbGV0ZXN0L3B1bGwvMTg5OQorLSBFbmFibGUga0Vycm9yT25Vbmlu
c3RhbnRpYXRlZFBhcmFtZXRlcml6ZWRUZXN0IGFuZAorICBrRXJyb3JPblVuaW5zdGFudGlhdGVk
VHlwZVBhcmFtZXRlcml6ZWRUZXN0IGluIGd0ZXN0LmNjCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL0NIQU5HRVMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3Bh
cnR5L2dvb2dsZXRlc3Qvc3JjL0NIQU5HRVMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDA1NTIxMzI0MjEyYzkxMjg3ZDkyNDRkNDRiYWIzMDZkYjY2NGJhZGIuLjAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9n
b29nbGV0ZXN0L3NyYy9DSEFOR0VTCisrKyAvZGV2L251bGwKQEAgLTEsMTU3ICswLDAgQEAKLUNo
YW5nZXMgZm9yIDEuNy4wOgotCi0qIE5ldyBmZWF0dXJlOiBkZWF0aCB0ZXN0cyBhcmUgc3VwcG9y
dGVkIG9uIE9wZW5CU0QgYW5kIGluIGlPUwotICBzaW11bGF0b3Igbm93LgotKiBOZXcgZmVhdHVy
ZTogR29vZ2xlIFRlc3Qgbm93IGltcGxlbWVudHMgYSBwcm90b2NvbCB0byBhbGxvdwotICBhIHRl
c3QgcnVubmVyIHRvIGRldGVjdCB0aGF0IGEgdGVzdCBwcm9ncmFtIGhhcyBleGl0ZWQKLSAgcHJl
bWF0dXJlbHkgYW5kIHJlcG9ydCBpdCBhcyBhIGZhaWx1cmUgKGJlZm9yZSBpdCB3b3VsZCBiZQot
ICBmYWxzZWx5IHJlcG9ydGVkIGFzIGEgc3VjY2VzcyBpZiB0aGUgZXhpdCBjb2RlIGlzIDApLgot
KiBOZXcgZmVhdHVyZTogVGVzdDo6UmVjb3JkUHJvcGVydHkoKSBjYW4gbm93IGJlIHVzZWQgb3V0
c2lkZSBvZiB0aGUKLSAgbGlmZXNwYW4gb2YgYSB0ZXN0IG1ldGhvZCwgaW4gd2hpY2ggY2FzZSBp
dCB3aWxsIGJlIGF0dHJpYnV0ZWQgdG8KLSAgdGhlIGN1cnJlbnQgdGVzdCBjYXNlIG9yIHRoZSB0
ZXN0IHByb2dyYW0gaW4gdGhlIFhNTCByZXBvcnQuCi0qIE5ldyBmZWF0dXJlIChwb3RlbnRpYWxs
eSBicmVha2luZyk6IC0tZ3Rlc3RfbGlzdF90ZXN0cyBub3cgcHJpbnRzCi0gIHRoZSB0eXBlIHBh
cmFtZXRlcnMgYW5kIHZhbHVlIHBhcmFtZXRlcnMgZm9yIGVhY2ggdGVzdC4KLSogSW1wcm92ZW1l
bnQ6IGNoYXIgcG9pbnRlcnMgYW5kIGNoYXIgYXJyYXlzIGFyZSBub3cgZXNjYXBlZCBwcm9wZXJs
eQotICBpbiBmYWlsdXJlIG1lc3NhZ2VzLgotKiBJbXByb3ZlbWVudDogZmFpbHVyZSBzdW1tYXJ5
IGluIFhNTCByZXBvcnRzIG5vdyBpbmNsdWRlcyBmaWxlIGFuZAotICBsaW5lIGluZm9ybWF0aW9u
LgotKiBJbXByb3ZlbWVudDogdGhlIDx0ZXN0c3VpdGVzPiBYTUwgZWxlbWVudCBub3cgaGFzIGEg
dGltZXN0YW1wIGF0dHJpYnV0ZS4KLSogSW1wcm92ZW1lbnQ6IFdoZW4gLS1ndGVzdF9maWx0ZXIg
aXMgc3BlY2lmaWVkLCBYTUwgcmVwb3J0IG5vdyBkb2Vzbid0Ci0gIGNvbnRhaW4gaW5mb3JtYXRp
b24gYWJvdXQgdGVzdHMgdGhhdCBhcmUgZmlsdGVyZWQgb3V0LgotKiBGaXhlZCB0aGUgYnVnIHdo
ZXJlIGxvbmcgLS1ndGVzdF9maWx0ZXIgZmxhZyB2YWx1ZXMgYXJlIHRydW5jYXRlZCBpbgotICBk
ZWF0aCB0ZXN0cy4KLSogUG90ZW50aWFsbHkgYnJlYWtpbmcgY2hhbmdlOiBSVU5fQUxMX1RFU1RT
KCkgaXMgbm93IGltcGxlbWVudGVkIGFzIGEKLSAgZnVuY3Rpb24gaW5zdGVhZCBvZiBhIG1hY3Jv
IGluIG9yZGVyIHRvIHdvcmsgYmV0dGVyIHdpdGggQ2xhbmcuCi0qIENvbXBhdGliaWxpdHkgZml4
ZXMgd2l0aCBDKysgMTEgYW5kIHZhcmlvdXMgcGxhdGZvcm1zLgotKiBCdWcvd2FybmluZyBmaXhl
cy4KLQotQ2hhbmdlcyBmb3IgMS42LjA6Ci0KLSogTmV3IGZlYXR1cmU6IEFERF9GQUlMVVJFX0FU
KCkgZm9yIHJlcG9ydGluZyBhIHRlc3QgZmFpbHVyZSBhdCB0aGUKLSAgZ2l2ZW4gc291cmNlIGxv
Y2F0aW9uIC0tIHVzZWZ1bCBmb3Igd3JpdGluZyB0ZXN0aW5nIHV0aWxpdGllcy4KLSogTmV3IGZl
YXR1cmU6IHRoZSB1bml2ZXJzYWwgdmFsdWUgcHJpbnRlciBpcyBtb3ZlZCBmcm9tIEdvb2dsZSBN
b2NrCi0gIHRvIEdvb2dsZSBUZXN0LgotKiBOZXcgZmVhdHVyZTogdHlwZSBwYXJhbWV0ZXJzIGFu
ZCB2YWx1ZSBwYXJhbWV0ZXJzIGFyZSByZXBvcnRlZCBpbgotICB0aGUgWE1MIHJlcG9ydCBub3cu
Ci0qIEEgZ3Rlc3RfZGlzYWJsZV9wdGhyZWFkcyBDTWFrZSBvcHRpb24uCi0qIENvbG9yZWQgb3V0
cHV0IHdvcmtzIGluIEdOVSBTY3JlZW4gc2Vzc2lvbnMgbm93LgotKiBQYXJhbWV0ZXJzIG9mIHZh
bHVlLXBhcmFtZXRlcml6ZWQgdGVzdHMgYXJlIG5vdyBwcmludGVkIGluIHRoZQotICB0ZXh0dWFs
IG91dHB1dC4KLSogRmFpbHVyZXMgZnJvbSBhZCBob2MgdGVzdCBhc3NlcnRpb25zIHJ1biBiZWZv
cmUgUlVOX0FMTF9URVNUUygpIGFyZQotICBub3cgY29ycmVjdGx5IHJlcG9ydGVkLgotKiBBcmd1
bWVudHMgb2YgQVNTRVJUX1hZIGFuZCBFWFBFQ1RfWFkgbm8gbG9uZ2VyIG5lZWQgdG8gc3VwcG9y
dCA8PCB0bwotICBvc3RyZWFtLgotKiBNb3JlIGNvbXBsZXRlIGhhbmRsaW5nIG9mIGV4Y2VwdGlv
bnMuCi0qIEdURVNUX0FTU0VSVF9YWSBjYW4gYmUgdXNlZCBpbnN0ZWFkIG9mIEFTU0VSVF9YWSBp
biBjYXNlIHRoZSBsYXR0ZXIKLSAgbmFtZSBpcyBhbHJlYWR5IHVzZWQgYnkgYW5vdGhlciBsaWJy
YXJ5LgotKiAtLWd0ZXN0X2NhdGNoX2V4Y2VwdGlvbnMgaXMgbm93IHRydWUgYnkgZGVmYXVsdCwg
YWxsb3dpbmcgYSB0ZXN0Ci0gIHByb2dyYW0gdG8gY29udGludWUgYWZ0ZXIgYW4gZXhjZXB0aW9u
IGlzIHRocm93bi4KLSogVmFsdWUtcGFyYW1ldGVyaXplZCB0ZXN0IGZpeHR1cmVzIGNhbiBub3cg
ZGVyaXZlIGZyb20gVGVzdCBhbmQKLSAgV2l0aFBhcmFtSW50ZXJmYWNlPFQ+IHNlcGFyYXRlbHks
IGVhc2luZyBjb252ZXJzaW9uIG9mIGxlZ2FjeSB0ZXN0cy4KLSogRGVhdGggdGVzdCBtZXNzYWdl
cyBhcmUgY2xlYXJseSBtYXJrZWQgdG8gbWFrZSB0aGVtIG1vcmUKLSAgZGlzdGluZ3Vpc2hhYmxl
IGZyb20gb3RoZXIgbWVzc2FnZXMuCi0qIENvbXBhdGliaWxpdHkgZml4ZXMgZm9yIEFuZHJvaWQs
IEdvb2dsZSBOYXRpdmUgQ2xpZW50LCBNaW5HVywgSFAgVVgsCi0gIFBvd2VyUEMsIEx1Y2lkIGF1
dG90b29scywgbGliQ1N0ZCwgU3VuIEMrKywgQm9ybGFuZCBDKysgQnVpbGRlciAoQ29kZSBHZWFy
KSwKLSAgSUJNIFhMIEMrKyAoVmlzdWFsIEFnZSBDKyspLCBhbmQgQysrMHguCi0qIEJ1ZyBmaXhl
cyBhbmQgaW1wbGVtZW50YXRpb24gY2xlYW4tdXBzLgotKiBQb3RlbnRpYWxseSBpbmNvbXBhdGli
bGUgY2hhbmdlczogZGlzYWJsZXMgdGhlIGhhcm1mdWwgJ21ha2UgaW5zdGFsbCcKLSAgY29tbWFu
ZCBpbiBhdXRvdG9vbHMuCi0KLUNoYW5nZXMgZm9yIDEuNS4wOgotCi0gKiBOZXcgZmVhdHVyZTog
YXNzZXJ0aW9ucyBjYW4gYmUgc2FmZWx5IGNhbGxlZCBpbiBtdWx0aXBsZSB0aHJlYWRzCi0gICB3
aGVyZSB0aGUgcHRocmVhZHMgbGlicmFyeSBpcyBhdmFpbGFibGUuCi0gKiBOZXcgZmVhdHVyZTog
cHJlZGljYXRlcyB1c2VkIGluc2lkZSBFWFBFQ1RfVFJVRSgpIGFuZCBmcmllbmRzCi0gICBjYW4g
bm93IGdlbmVyYXRlIGN1c3RvbSBmYWlsdXJlIG1lc3NhZ2VzLgotICogTmV3IGZlYXR1cmU6IEdv
b2dsZSBUZXN0IGNhbiBub3cgYmUgY29tcGlsZWQgYXMgYSBETEwuCi0gKiBOZXcgZmVhdHVyZTog
ZnVzZWQgc291cmNlIGZpbGVzIGFyZSBpbmNsdWRlZC4KLSAqIE5ldyBmZWF0dXJlOiBwcmludHMg
aGVscCB3aGVuIGVuY291bnRlcmluZyB1bnJlY29nbml6ZWQgR29vZ2xlIFRlc3QgZmxhZ3MuCi0g
KiBFeHBlcmltZW50YWwgZmVhdHVyZTogQ01ha2UgYnVpbGQgc2NyaXB0IChyZXF1aXJlcyBDTWFr
ZSAyLjYuNCspLgotICogRXhwZXJpbWVudGFsIGZlYXR1cmU6IHRoZSBQdW1wIHNjcmlwdCBmb3Ig
bWV0YSBwcm9ncmFtbWluZy4KLSAqIGRvdWJsZSB2YWx1ZXMgc3RyZWFtZWQgdG8gYW4gYXNzZXJ0
aW9uIGFyZSBwcmludGVkIHdpdGggZW5vdWdoIHByZWNpc2lvbgotICAgdG8gZGlmZmVyZW50aWF0
ZSBhbnkgdHdvIGRpZmZlcmVudCB2YWx1ZXMuCi0gKiBHb29nbGUgVGVzdCBub3cgd29ya3Mgb24g
U29sYXJpcyBhbmQgQUlYLgotICogQnVpbGQgYW5kIHRlc3Qgc2NyaXB0IGltcHJvdmVtZW50cy4K
LSAqIEJ1ZyBmaXhlcyBhbmQgaW1wbGVtZW50YXRpb24gY2xlYW4tdXBzLgotCi0gUG90ZW50aWFs
bHkgYnJlYWtpbmcgY2hhbmdlczoKLQotICogU3RvcHBlZCBzdXBwb3J0aW5nIFZDKysgNy4xIHdp
dGggZXhjZXB0aW9ucyBkaXNhYmxlZC4KLSAqIERyb3BwZWQgc3VwcG9ydCBmb3IgJ21ha2UgaW5z
dGFsbCcuCi0KLUNoYW5nZXMgZm9yIDEuNC4wOgotCi0gKiBOZXcgZmVhdHVyZTogdGhlIGV2ZW50
IGxpc3RlbmVyIEFQSQotICogTmV3IGZlYXR1cmU6IHRlc3Qgc2h1ZmZsaW5nCi0gKiBOZXcgZmVh
dHVyZTogdGhlIFhNTCByZXBvcnQgZm9ybWF0IGlzIGNsb3NlciB0byBqdW5pdHJlcG9ydCBhbmQg
Y2FuCi0gICBiZSBwYXJzZWQgYnkgSHVkc29uIG5vdy4KLSAqIE5ldyBmZWF0dXJlOiB3aGVuIGEg
dGVzdCBydW5zIHVuZGVyIFZpc3VhbCBTdHVkaW8sIGl0cyBmYWlsdXJlcyBhcmUKLSAgIGludGVn
cmF0ZWQgaW4gdGhlIElERS4KLSAqIE5ldyBmZWF0dXJlOiAvTUQoZCkgdmVyc2lvbnMgb2YgVkMr
KyBwcm9qZWN0cy4KLSAqIE5ldyBmZWF0dXJlOiBlbGFwc2VkIHRpbWUgZm9yIHRoZSB0ZXN0cyBp
cyBwcmludGVkIGJ5IGRlZmF1bHQuCi0gKiBOZXcgZmVhdHVyZTogY29tZXMgd2l0aCBhIFRSMSB0
dXBsZSBpbXBsZW1lbnRhdGlvbiBzdWNoIHRoYXQgQm9vc3QKLSAgIGlzIG5vIGxvbmdlciBuZWVk
ZWQgZm9yIENvbWJpbmUoKS4KLSAqIE5ldyBmZWF0dXJlOiBFWFBFQ1RfREVBVEhfSUZfU1VQUE9S
VEVEIG1hY3JvIGFuZCBmcmllbmRzLgotICogTmV3IGZlYXR1cmU6IHRoZSBYY29kZSBwcm9qZWN0
IGNhbiBub3cgcHJvZHVjZSBzdGF0aWMgZ3Rlc3QKLSAgIGxpYnJhcmllcyBpbiBhZGRpdGlvbiB0
byBhIGZyYW1ld29yay4KLSAqIENvbXBhdGliaWxpdHkgZml4ZXMgZm9yIFNvbGFyaXMsIEN5Z3dp
biwgbWluR1csIFdpbmRvd3MgTW9iaWxlLAotICAgU3ltYmlhbiwgZ2NjLCBhbmQgQysrQnVpbGRl
ci4KLSAqIEJ1ZyBmaXhlcyBhbmQgaW1wbGVtZW50YXRpb24gY2xlYW4tdXBzLgotCi1DaGFuZ2Vz
IGZvciAxLjMuMDoKLQotICogTmV3IGZlYXR1cmU6IGRlYXRoIHRlc3RzIG9uIFdpbmRvd3MsIEN5
Z3dpbiwgYW5kIE1hYy4KLSAqIE5ldyBmZWF0dXJlOiBhYmlsaXR5IHRvIHVzZSBHb29nbGUgVGVz
dCBhc3NlcnRpb25zIGluIG90aGVyIHRlc3RpbmcKLSAgIGZyYW1ld29ya3MuCi0gKiBOZXcgZmVh
dHVyZTogYWJpbGl0eSB0byBydW4gZGlzYWJsZWQgdGVzdCB2aWEKLSAgIC0tZ3Rlc3RfYWxzb19y
dW5fZGlzYWJsZWRfdGVzdHMuCi0gKiBOZXcgZmVhdHVyZTogdGhlIC0taGVscCBmbGFnIGZvciBw
cmludGluZyB0aGUgdXNhZ2UuCi0gKiBOZXcgZmVhdHVyZTogYWNjZXNzIHRvIEdvb2dsZSBUZXN0
IGZsYWcgdmFsdWVzIGluIHVzZXIgY29kZS4KLSAqIE5ldyBmZWF0dXJlOiBhIHNjcmlwdCB0aGF0
IHBhY2tzIEdvb2dsZSBUZXN0IGludG8gb25lIC5oIGFuZCBvbmUKLSAgIC5jYyBmaWxlIGZvciBl
YXN5IGRlcGxveW1lbnQuCi0gKiBOZXcgZmVhdHVyZTogc3VwcG9ydCBmb3IgZGlzdHJpYnV0aW5n
IHRlc3QgZnVuY3Rpb25zIHRvIG11bHRpcGxlCi0gICBtYWNoaW5lcyAocmVxdWlyZXMgc3VwcG9y
dCBmcm9tIHRoZSB0ZXN0IHJ1bm5lcikuCi0gKiBCdWcgZml4ZXMgYW5kIGltcGxlbWVudGF0aW9u
IGNsZWFuLXVwcy4KLQotQ2hhbmdlcyBmb3IgMS4yLjE6Ci0KLSAqIENvbXBhdGliaWxpdHkgZml4
ZXMgZm9yIExpbnV4IElBLTY0IGFuZCBJQk0gei9PUy4KLSAqIEFkZGVkIHN1cHBvcnQgZm9yIHVz
aW5nIEJvb3N0IGFuZCBvdGhlciBUUjEgaW1wbGVtZW50YXRpb25zLgotICogQ2hhbmdlcyB0byB0
aGUgYnVpbGQgc2NyaXB0cyB0byBzdXBwb3J0IHVwY29taW5nIHJlbGVhc2Ugb2YgR29vZ2xlIEMr
KwotICAgTW9ja2luZyBGcmFtZXdvcmsuCi0gKiBBZGRlZCBNYWtlZmlsZSB0byB0aGUgZGlzdHJp
YnV0aW9uIHBhY2thZ2UuCi0gKiBJbXByb3ZlZCBidWlsZCBpbnN0cnVjdGlvbnMgaW4gUkVBRE1F
LgotCi1DaGFuZ2VzIGZvciAxLjIuMDoKLQotICogTmV3IGZlYXR1cmU6IHZhbHVlLXBhcmFtZXRl
cml6ZWQgdGVzdHMuCi0gKiBOZXcgZmVhdHVyZTogdGhlIEFTU0VSVC9FWFBFQ1RfKE5PTilGQVRB
TF9GQUlMVVJFKF9PTl9BTExfVEhSRUFEUykKLSAgIG1hY3Jvcy4KLSAqIENoYW5nZWQgdGhlIFhN
TCByZXBvcnQgZm9ybWF0IHRvIG1hdGNoIEpVbml0L0FudCdzLgotICogQWRkZWQgdGVzdHMgdG8g
dGhlIFhjb2RlIHByb2plY3QuCi0gKiBBZGRlZCBzY29ucy9TQ29uc2NyaXB0IGZvciBidWlsZGlu
ZyB3aXRoIFNDb25zLgotICogQWRkZWQgc3JjL2d0ZXN0LWFsbC5jYyBmb3IgYnVpbGRpbmcgR29v
Z2xlIFRlc3QgZnJvbSBhIHNpbmdsZSBmaWxlLgotICogRml4ZWQgY29tcGF0aWJpbGl0eSB3aXRo
IFNvbGFyaXMgYW5kIHovT1MuCi0gKiBFbmFibGVkIHJ1bm5pbmcgUHl0aG9uIHRlc3RzIG9uIHN5
c3RlbXMgd2l0aCBweXRob24gMi4zIGluc3RhbGxlZCwKLSAgIGUuZy4gTWFjIE9TIFggMTAuNC4K
LSAqIEJ1ZyBmaXhlcy4KLQotQ2hhbmdlcyBmb3IgMS4xLjA6Ci0KLSAqIE5ldyBmZWF0dXJlOiB0
eXBlLXBhcmFtZXRlcml6ZWQgdGVzdHMuCi0gKiBOZXcgZmVhdHVyZTogZXhjZXB0aW9uIGFzc2Vy
dGlvbnMuCi0gKiBOZXcgZmVhdHVyZTogcHJpbnRpbmcgZWxhcHNlZCB0aW1lIG9mIHRlc3RzLgot
ICogSW1wcm92ZWQgdGhlIHJvYnVzdG5lc3Mgb2YgZGVhdGggdGVzdHMuCi0gKiBBZGRlZCBhbiBY
Y29kZSBwcm9qZWN0IGFuZCBzYW1wbGVzLgotICogQWRqdXN0ZWQgdGhlIG91dHB1dCBmb3JtYXQg
b24gV2luZG93cyB0byBiZSB1bmRlcnN0YW5kYWJsZSBieSBWaXN1YWwgU3R1ZGlvLgotICogTWlu
b3IgYnVnIGZpeGVzLgotCi1DaGFuZ2VzIGZvciAxLjAuMToKLQotICogQWRkZWQgcHJvamVjdCBm
aWxlcyBmb3IgVmlzdWFsIFN0dWRpbyA3LjEuCi0gKiBGaXhlZCBpc3N1ZXMgd2l0aCBjb21waWxp
bmcgb24gTWFjIE9TIFguCi0gKiBGaXhlZCBpc3N1ZXMgd2l0aCBjb21waWxpbmcgb24gQ3lnd2lu
LgotCi1DaGFuZ2VzIGZvciAxLjAuMDoKLQotICogSW5pdGlhbCBPcGVuIFNvdXJjZSByZWxlYXNl
IG9mIEdvb2dsZSBUZXN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2ds
ZXRlc3Qvc3JjL0NPTlRSSUJVVE9SUyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVz
dC9zcmMvQ09OVFJJQlVUT1JTCmluZGV4IGZlYWUyZmMwNDQxMGRjMzA4ZTQ2NGFhMjU2ZmUxZjJk
MzFlZGM5ODguLjFlNGFmZTIxODI1YjViOTNjYmE1Nzc4OWI5MTEyMjYyNjVhOTkwOTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvQ09OVFJJQlVUT1JT
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvQ09OVFJJQlVUT1JT
CkBAIC0xNyw2ICsxNyw3IEBAIErDs2kgU2lndXLDsHNzb24gPGpvaUBnb29nbGUuY29tPgogS2Vp
ciBNaWVybGUgPG1pZXJsZUBnbWFpbC5jb20+CiBLZWl0aCBSYXkgPGtlaXRoLnJheUBnbWFpbC5j
b20+CiBLZW50b24gVmFyZGEgPGtlbnRvbkBnb29nbGUuY29tPgorS3J5c3RpYW4gS3V6bmlhcmVr
IDxrcnlzdGlhbi5rdXpuaWFyZWtAZ21haWwuY29tPgogTWFudWVsIEtsaW1layA8a2xpbWVrQGdv
b2dsZS5jb20+CiBNYXJrdXMgSGV1bGUgPG1hcmt1cy5oZXVsZUBnbWFpbC5jb20+CiBNaWthIFJh
ZW50byA8bWlraWVAaWtpLmZpPgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9n
b29nbGV0ZXN0L3NyYy9SRUFETUUubWQgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRl
c3Qvc3JjL1JFQURNRS5tZAppbmRleCBlMzBmZTgwNDcxMjdiZWUxNmQyYzcxZjE0YjUwOWYzNzU3
MWFkZDQxLi45MDQwNDhmNDg0MDAzMWQ2ZDEzMTUzZmU0YjAyNTIzNTVlYmI2MjMzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL1JFQURNRS5tZAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL1JFQURNRS5tZApAQCAtNiw1
MSArNiwxMCBAQCBUbyBidWlsZCBHb29nbGUgVGVzdCBhbmQgeW91ciB0ZXN0cyB0aGF0IHVzZSBp
dCwgeW91IG5lZWQgdG8gdGVsbCB5b3VyIGJ1aWxkCiBzeXN0ZW0gd2hlcmUgdG8gZmluZCBpdHMg
aGVhZGVycyBhbmQgc291cmNlIGZpbGVzLiBUaGUgZXhhY3Qgd2F5IHRvIGRvIGl0CiBkZXBlbmRz
IG9uIHdoaWNoIGJ1aWxkIHN5c3RlbSB5b3UgdXNlLCBhbmQgaXMgdXN1YWxseSBzdHJhaWdodGZv
cndhcmQuCiAKLSMjIyMgQnVpbGQKKyMjIyBCdWlsZCB3aXRoIENNYWtlCiAKLVN1cHBvc2UgeW91
IHB1dCBHb29nbGUgVGVzdCBpbiBkaXJlY3RvcnkgYCR7R1RFU1RfRElSfWAuIFRvIGJ1aWxkIGl0
LCBjcmVhdGUgYQotbGlicmFyeSBidWlsZCB0YXJnZXQgKG9yIGEgcHJvamVjdCBhcyBjYWxsZWQg
YnkgVmlzdWFsIFN0dWRpbyBhbmQgWGNvZGUpIHRvCi1jb21waWxlCi0KLSAgICAke0dURVNUX0RJ
Un0vc3JjL2d0ZXN0LWFsbC5jYwotCi13aXRoIGAke0dURVNUX0RJUn0vaW5jbHVkZWAgaW4gdGhl
IHN5c3RlbSBoZWFkZXIgc2VhcmNoIHBhdGggYW5kIGAke0dURVNUX0RJUn1gCi1pbiB0aGUgbm9y
bWFsIGhlYWRlciBzZWFyY2ggcGF0aC4gQXNzdW1pbmcgYSBMaW51eC1saWtlIHN5c3RlbSBhbmQg
Z2NjLAotc29tZXRoaW5nIGxpa2UgdGhlIGZvbGxvd2luZyB3aWxsIGRvOgotCi0gICAgZysrIC1p
c3lzdGVtICR7R1RFU1RfRElSfS9pbmNsdWRlIC1JJHtHVEVTVF9ESVJ9IFwKLSAgICAgICAgLXB0
aHJlYWQgLWMgJHtHVEVTVF9ESVJ9L3NyYy9ndGVzdC1hbGwuY2MKLSAgICBhciAtcnYgbGliZ3Rl
c3QuYSBndGVzdC1hbGwubwotCi0oV2UgbmVlZCBgLXB0aHJlYWRgIGFzIEdvb2dsZSBUZXN0IHVz
ZXMgdGhyZWFkcy4pCi0KLU5leHQsIHlvdSBzaG91bGQgY29tcGlsZSB5b3VyIHRlc3Qgc291cmNl
IGZpbGUgd2l0aCBgJHtHVEVTVF9ESVJ9L2luY2x1ZGVgIGluCi10aGUgc3lzdGVtIGhlYWRlciBz
ZWFyY2ggcGF0aCwgYW5kIGxpbmsgaXQgd2l0aCBndGVzdCBhbmQgYW55IG90aGVyIG5lY2Vzc2Fy
eQotbGlicmFyaWVzOgotCi0gICAgZysrIC1pc3lzdGVtICR7R1RFU1RfRElSfS9pbmNsdWRlIC1w
dGhyZWFkIHBhdGgvdG8veW91cl90ZXN0LmNjIGxpYmd0ZXN0LmEgXAotICAgICAgICAtbyB5b3Vy
X3Rlc3QKLQotQXMgYW4gZXhhbXBsZSwgdGhlIG1ha2UvIGRpcmVjdG9yeSBjb250YWlucyBhIE1h
a2VmaWxlIHRoYXQgeW91IGNhbiB1c2UgdG8gYnVpbGQKLUdvb2dsZSBUZXN0IG9uIHN5c3RlbXMg
d2hlcmUgR05VIG1ha2UgaXMgYXZhaWxhYmxlIChlLmcuIExpbnV4LCBNYWMgT1MgWCwgYW5kCi1D
eWd3aW4pLiBJdCBkb2Vzbid0IHRyeSB0byBidWlsZCBHb29nbGUgVGVzdCdzIG93biB0ZXN0cy4g
SW5zdGVhZCwgaXQganVzdAotYnVpbGRzIHRoZSBHb29nbGUgVGVzdCBsaWJyYXJ5IGFuZCBhIHNh
bXBsZSB0ZXN0LiBZb3UgY2FuIHVzZSBpdCBhcyBhIHN0YXJ0aW5nCi1wb2ludCBmb3IgeW91ciBv
d24gYnVpbGQgc2NyaXB0LgotCi1JZiB0aGUgZGVmYXVsdCBzZXR0aW5ncyBhcmUgY29ycmVjdCBm
b3IgeW91ciBlbnZpcm9ubWVudCwgdGhlIGZvbGxvd2luZyBjb21tYW5kcwotc2hvdWxkIHN1Y2Nl
ZWQ6Ci0KLSAgICBjZCAke0dURVNUX0RJUn0vbWFrZQotICAgIG1ha2UKLSAgICAuL3NhbXBsZTFf
dW5pdHRlc3QKLQotSWYgeW91IHNlZSBlcnJvcnMsIHRyeSB0byB0d2VhayB0aGUgY29udGVudHMg
b2YgYG1ha2UvTWFrZWZpbGVgIHRvIG1ha2UgdGhlbSBnbwotYXdheS4gVGhlcmUgYXJlIGluc3Ry
dWN0aW9ucyBpbiBgbWFrZS9NYWtlZmlsZWAgb24gaG93IHRvIGRvIGl0LgotCi0jIyMgVXNpbmcg
Q01ha2UKLQotR29vZ2xlIFRlc3QgY29tZXMgd2l0aCBhIENNYWtlIGJ1aWxkIHNjcmlwdCAoCi1b
Q01ha2VMaXN0cy50eHRdKGh0dHBzOi8vZ2l0aHViLmNvbS9nb29nbGUvZ29vZ2xldGVzdC9ibG9i
L21hc3Rlci9DTWFrZUxpc3RzLnR4dCkpCitHb29nbGUgVGVzdCBjb21lcyB3aXRoIGEgQ01ha2Ug
YnVpbGQgc2NyaXB0CisoW0NNYWtlTGlzdHMudHh0XShodHRwczovL2dpdGh1Yi5jb20vZ29vZ2xl
L2dvb2dsZXRlc3QvYmxvYi9tYXN0ZXIvQ01ha2VMaXN0cy50eHQpKQogdGhhdCBjYW4gYmUgdXNl
ZCBvbiBhIHdpZGUgcmFuZ2Ugb2YgcGxhdGZvcm1zICgiQyIgc3RhbmRzIGZvciBjcm9zcy1wbGF0
Zm9ybS4pLgogSWYgeW91IGRvbid0IGhhdmUgQ01ha2UgaW5zdGFsbGVkIGFscmVhZHksIHlvdSBj
YW4gZG93bmxvYWQgaXQgZm9yIGZyZWUgZnJvbQogPGh0dHA6Ly93d3cuY21ha2Uub3JnLz4uCkBA
IC0xMTUsNjAgKzc0LDY0IEBAIHB1bGxlZCBpbnRvIHRoZSBtYWluIGJ1aWxkIHdpdGggYGFkZF9z
dWJkaXJlY3RvcnkoKWAuIEZvciBleGFtcGxlOgogCiBOZXcgZmlsZSBgQ01ha2VMaXN0cy50eHQu
aW5gOgogCi0gICAgY21ha2VfbWluaW11bV9yZXF1aXJlZChWRVJTSU9OIDIuOC4yKQorYGBgY21h
a2UKK2NtYWtlX21pbmltdW1fcmVxdWlyZWQoVkVSU0lPTiAyLjguMikKIAotICAgIHByb2plY3Qo
Z29vZ2xldGVzdC1kb3dubG9hZCBOT05FKQorcHJvamVjdChnb29nbGV0ZXN0LWRvd25sb2FkIE5P
TkUpCiAKLSAgICBpbmNsdWRlKEV4dGVybmFsUHJvamVjdCkKLSAgICBFeHRlcm5hbFByb2plY3Rf
QWRkKGdvb2dsZXRlc3QKLSAgICAgIEdJVF9SRVBPU0lUT1JZICAgIGh0dHBzOi8vZ2l0aHViLmNv
bS9nb29nbGUvZ29vZ2xldGVzdC5naXQKLSAgICAgIEdJVF9UQUcgICAgICAgICAgIG1hc3Rlcgot
ICAgICAgU09VUkNFX0RJUiAgICAgICAgIiR7Q01BS0VfQklOQVJZX0RJUn0vZ29vZ2xldGVzdC1z
cmMiCi0gICAgICBCSU5BUllfRElSICAgICAgICAiJHtDTUFLRV9CSU5BUllfRElSfS9nb29nbGV0
ZXN0LWJ1aWxkIgotICAgICAgQ09ORklHVVJFX0NPTU1BTkQgIiIKLSAgICAgIEJVSUxEX0NPTU1B
TkQgICAgICIiCi0gICAgICBJTlNUQUxMX0NPTU1BTkQgICAiIgotICAgICAgVEVTVF9DT01NQU5E
ICAgICAgIiIKLSAgICApCitpbmNsdWRlKEV4dGVybmFsUHJvamVjdCkKK0V4dGVybmFsUHJvamVj
dF9BZGQoZ29vZ2xldGVzdAorICBHSVRfUkVQT1NJVE9SWSAgICBodHRwczovL2dpdGh1Yi5jb20v
Z29vZ2xlL2dvb2dsZXRlc3QuZ2l0CisgIEdJVF9UQUcgICAgICAgICAgIG1hc3RlcgorICBTT1VS
Q0VfRElSICAgICAgICAiJHtDTUFLRV9DVVJSRU5UX0JJTkFSWV9ESVJ9L2dvb2dsZXRlc3Qtc3Jj
IgorICBCSU5BUllfRElSICAgICAgICAiJHtDTUFLRV9DVVJSRU5UX0JJTkFSWV9ESVJ9L2dvb2ds
ZXRlc3QtYnVpbGQiCisgIENPTkZJR1VSRV9DT01NQU5EICIiCisgIEJVSUxEX0NPTU1BTkQgICAg
ICIiCisgIElOU1RBTExfQ09NTUFORCAgICIiCisgIFRFU1RfQ09NTUFORCAgICAgICIiCispCitg
YGAKIAogRXhpc3RpbmcgYnVpbGQncyBgQ01ha2VMaXN0cy50eHRgOgogCi0gICAgIyBEb3dubG9h
ZCBhbmQgdW5wYWNrIGdvb2dsZXRlc3QgYXQgY29uZmlndXJlIHRpbWUKLSAgICBjb25maWd1cmVf
ZmlsZShDTWFrZUxpc3RzLnR4dC5pbiBnb29nbGV0ZXN0LWRvd25sb2FkL0NNYWtlTGlzdHMudHh0
KQotICAgIGV4ZWN1dGVfcHJvY2VzcyhDT01NQU5EICR7Q01BS0VfQ09NTUFORH0gLUcgIiR7Q01B
S0VfR0VORVJBVE9SfSIgLgotICAgICAgUkVTVUxUX1ZBUklBQkxFIHJlc3VsdAotICAgICAgV09S
S0lOR19ESVJFQ1RPUlkgJHtDTUFLRV9CSU5BUllfRElSfS9nb29nbGV0ZXN0LWRvd25sb2FkICkK
LSAgICBpZihyZXN1bHQpCi0gICAgICBtZXNzYWdlKEZBVEFMX0VSUk9SICJDTWFrZSBzdGVwIGZv
ciBnb29nbGV0ZXN0IGZhaWxlZDogJHtyZXN1bHR9IikKLSAgICBlbmRpZigpCi0gICAgZXhlY3V0
ZV9wcm9jZXNzKENPTU1BTkQgJHtDTUFLRV9DT01NQU5EfSAtLWJ1aWxkIC4KLSAgICAgIFJFU1VM
VF9WQVJJQUJMRSByZXN1bHQKLSAgICAgIFdPUktJTkdfRElSRUNUT1JZICR7Q01BS0VfQklOQVJZ
X0RJUn0vZ29vZ2xldGVzdC1kb3dubG9hZCApCi0gICAgaWYocmVzdWx0KQotICAgICAgbWVzc2Fn
ZShGQVRBTF9FUlJPUiAiQnVpbGQgc3RlcCBmb3IgZ29vZ2xldGVzdCBmYWlsZWQ6ICR7cmVzdWx0
fSIpCi0gICAgZW5kaWYoKQotCi0gICAgIyBQcmV2ZW50IG92ZXJyaWRpbmcgdGhlIHBhcmVudCBw
cm9qZWN0J3MgY29tcGlsZXIvbGlua2VyCi0gICAgIyBzZXR0aW5ncyBvbiBXaW5kb3dzCi0gICAg
c2V0KGd0ZXN0X2ZvcmNlX3NoYXJlZF9jcnQgT04gQ0FDSEUgQk9PTCAiIiBGT1JDRSkKLQotICAg
ICMgQWRkIGdvb2dsZXRlc3QgZGlyZWN0bHkgdG8gb3VyIGJ1aWxkLiBUaGlzIGRlZmluZXMKLSAg
ICAjIHRoZSBndGVzdCBhbmQgZ3Rlc3RfbWFpbiB0YXJnZXRzLgotICAgIGFkZF9zdWJkaXJlY3Rv
cnkoJHtDTUFLRV9CSU5BUllfRElSfS9nb29nbGV0ZXN0LXNyYwotICAgICAgICAgICAgICAgICAg
ICAgJHtDTUFLRV9CSU5BUllfRElSfS9nb29nbGV0ZXN0LWJ1aWxkCi0gICAgICAgICAgICAgICAg
ICAgICBFWENMVURFX0ZST01fQUxMKQotCi0gICAgIyBUaGUgZ3Rlc3QvZ3Rlc3RfbWFpbiB0YXJn
ZXRzIGNhcnJ5IGhlYWRlciBzZWFyY2ggcGF0aAotICAgICMgZGVwZW5kZW5jaWVzIGF1dG9tYXRp
Y2FsbHkgd2hlbiB1c2luZyBDTWFrZSAyLjguMTEgb3IKLSAgICAjIGxhdGVyLiBPdGhlcndpc2Ug
d2UgaGF2ZSB0byBhZGQgdGhlbSBoZXJlIG91cnNlbHZlcy4KLSAgICBpZiAoQ01BS0VfVkVSU0lP
TiBWRVJTSU9OX0xFU1MgMi44LjExKQotICAgICAgaW5jbHVkZV9kaXJlY3RvcmllcygiJHtndGVz
dF9TT1VSQ0VfRElSfS9pbmNsdWRlIikKLSAgICBlbmRpZigpCi0KLSAgICAjIE5vdyBzaW1wbHkg
bGluayBhZ2FpbnN0IGd0ZXN0IG9yIGd0ZXN0X21haW4gYXMgbmVlZGVkLiBFZwotICAgIGFkZF9l
eGVjdXRhYmxlKGV4YW1wbGUgZXhhbXBsZS5jcHApCi0gICAgdGFyZ2V0X2xpbmtfbGlicmFyaWVz
KGV4YW1wbGUgZ3Rlc3RfbWFpbikKLSAgICBhZGRfdGVzdChOQU1FIGV4YW1wbGVfdGVzdCBDT01N
QU5EIGV4YW1wbGUpCitgYGBjbWFrZQorIyBEb3dubG9hZCBhbmQgdW5wYWNrIGdvb2dsZXRlc3Qg
YXQgY29uZmlndXJlIHRpbWUKK2NvbmZpZ3VyZV9maWxlKENNYWtlTGlzdHMudHh0LmluIGdvb2ds
ZXRlc3QtZG93bmxvYWQvQ01ha2VMaXN0cy50eHQpCitleGVjdXRlX3Byb2Nlc3MoQ09NTUFORCAk
e0NNQUtFX0NPTU1BTkR9IC1HICIke0NNQUtFX0dFTkVSQVRPUn0iIC4KKyAgUkVTVUxUX1ZBUklB
QkxFIHJlc3VsdAorICBXT1JLSU5HX0RJUkVDVE9SWSAke0NNQUtFX0NVUlJFTlRfQklOQVJZX0RJ
Un0vZ29vZ2xldGVzdC1kb3dubG9hZCApCitpZihyZXN1bHQpCisgIG1lc3NhZ2UoRkFUQUxfRVJS
T1IgIkNNYWtlIHN0ZXAgZm9yIGdvb2dsZXRlc3QgZmFpbGVkOiAke3Jlc3VsdH0iKQorZW5kaWYo
KQorZXhlY3V0ZV9wcm9jZXNzKENPTU1BTkQgJHtDTUFLRV9DT01NQU5EfSAtLWJ1aWxkIC4KKyAg
UkVTVUxUX1ZBUklBQkxFIHJlc3VsdAorICBXT1JLSU5HX0RJUkVDVE9SWSAke0NNQUtFX0NVUlJF
TlRfQklOQVJZX0RJUn0vZ29vZ2xldGVzdC1kb3dubG9hZCApCitpZihyZXN1bHQpCisgIG1lc3Nh
Z2UoRkFUQUxfRVJST1IgIkJ1aWxkIHN0ZXAgZm9yIGdvb2dsZXRlc3QgZmFpbGVkOiAke3Jlc3Vs
dH0iKQorZW5kaWYoKQorCisjIFByZXZlbnQgb3ZlcnJpZGluZyB0aGUgcGFyZW50IHByb2plY3Qn
cyBjb21waWxlci9saW5rZXIKKyMgc2V0dGluZ3Mgb24gV2luZG93cworc2V0KGd0ZXN0X2ZvcmNl
X3NoYXJlZF9jcnQgT04gQ0FDSEUgQk9PTCAiIiBGT1JDRSkKKworIyBBZGQgZ29vZ2xldGVzdCBk
aXJlY3RseSB0byBvdXIgYnVpbGQuIFRoaXMgZGVmaW5lcworIyB0aGUgZ3Rlc3QgYW5kIGd0ZXN0
X21haW4gdGFyZ2V0cy4KK2FkZF9zdWJkaXJlY3RvcnkoJHtDTUFLRV9DVVJSRU5UX0JJTkFSWV9E
SVJ9L2dvb2dsZXRlc3Qtc3JjCisgICAgICAgICAgICAgICAgICR7Q01BS0VfQ1VSUkVOVF9CSU5B
UllfRElSfS9nb29nbGV0ZXN0LWJ1aWxkCisgICAgICAgICAgICAgICAgIEVYQ0xVREVfRlJPTV9B
TEwpCisKKyMgVGhlIGd0ZXN0L2d0ZXN0X21haW4gdGFyZ2V0cyBjYXJyeSBoZWFkZXIgc2VhcmNo
IHBhdGgKKyMgZGVwZW5kZW5jaWVzIGF1dG9tYXRpY2FsbHkgd2hlbiB1c2luZyBDTWFrZSAyLjgu
MTEgb3IKKyMgbGF0ZXIuIE90aGVyd2lzZSB3ZSBoYXZlIHRvIGFkZCB0aGVtIGhlcmUgb3Vyc2Vs
dmVzLgoraWYgKENNQUtFX1ZFUlNJT04gVkVSU0lPTl9MRVNTIDIuOC4xMSkKKyAgaW5jbHVkZV9k
aXJlY3RvcmllcygiJHtndGVzdF9TT1VSQ0VfRElSfS9pbmNsdWRlIikKK2VuZGlmKCkKKworIyBO
b3cgc2ltcGx5IGxpbmsgYWdhaW5zdCBndGVzdCBvciBndGVzdF9tYWluIGFzIG5lZWRlZC4gRWcK
K2FkZF9leGVjdXRhYmxlKGV4YW1wbGUgZXhhbXBsZS5jcHApCit0YXJnZXRfbGlua19saWJyYXJp
ZXMoZXhhbXBsZSBndGVzdF9tYWluKQorYWRkX3Rlc3QoTkFNRSBleGFtcGxlX3Rlc3QgQ09NTUFO
RCBleGFtcGxlKQorYGBgCiAKIE5vdGUgdGhhdCB0aGlzIGFwcHJvYWNoIHJlcXVpcmVzIENNYWtl
IDIuOC4yIG9yIGxhdGVyIGR1ZSB0byBpdHMgdXNlIG9mIHRoZQogYEV4dGVybmFsUHJvamVjdF9B
ZGQoKWAgY29tbWFuZC4gVGhlIGFib3ZlIHRlY2huaXF1ZSBpcyBkaXNjdXNzZWQgaW4gbW9yZSBk
ZXRhaWwKQEAgLTE4OCw0NyArMTUxLDE0IEBAIEdvb2dsZSBUZXN0IGFscmVhZHkgaGFzIGEgQ01h
a2Ugb3B0aW9uIGZvciB0aGlzOiBgZ3Rlc3RfZm9yY2Vfc2hhcmVkX2NydGAKIEVuYWJsaW5nIHRo
aXMgb3B0aW9uIHdpbGwgbWFrZSBndGVzdCBsaW5rIHRoZSBydW50aW1lcyBkeW5hbWljYWxseSB0
b28sIGFuZAogbWF0Y2ggdGhlIHByb2plY3QgaW4gd2hpY2ggaXQgaXMgaW5jbHVkZWQuCiAKLSMj
IyBMZWdhY3kgQnVpbGQgU2NyaXB0cwotCi1CZWZvcmUgc2V0dGxpbmcgb24gQ01ha2UsIHdlIGhh
dmUgYmVlbiBwcm92aWRpbmcgaGFuZC1tYWludGFpbmVkIGJ1aWxkCi1wcm9qZWN0cy9zY3JpcHRz
IGZvciBWaXN1YWwgU3R1ZGlvLCBYY29kZSwgYW5kIEF1dG90b29scy4gV2hpbGUgd2UgY29udGlu
dWUgdG8KLXByb3ZpZGUgdGhlbSBmb3IgY29udmVuaWVuY2UsIHRoZXkgYXJlIG5vdCBhY3RpdmVs
eSBtYWludGFpbmVkIGFueSBtb3JlLiBXZQotaGlnaGx5IHJlY29tbWVuZCB0aGF0IHlvdSBmb2xs
b3cgdGhlIGluc3RydWN0aW9ucyBpbiB0aGUgYWJvdmUgc2VjdGlvbnMgdG8KLWludGVncmF0ZSBH
b29nbGUgVGVzdCB3aXRoIHlvdXIgZXhpc3RpbmcgYnVpbGQgc3lzdGVtLgotCi1JZiB5b3Ugc3Rp
bGwgbmVlZCB0byB1c2UgdGhlIGxlZ2FjeSBidWlsZCBzY3JpcHRzLCBoZXJlJ3MgaG93OgotCi1U
aGUgbXN2Y1wgZm9sZGVyIGNvbnRhaW5zIHR3byBzb2x1dGlvbnMgd2l0aCBWaXN1YWwgQysrIHBy
b2plY3RzLiBPcGVuIHRoZQotYGd0ZXN0LnNsbmAgb3IgYGd0ZXN0LW1kLnNsbmAgZmlsZSB1c2lu
ZyBWaXN1YWwgU3R1ZGlvLCBhbmQgeW91IGFyZSByZWFkeSB0bwotYnVpbGQgR29vZ2xlIFRlc3Qg
dGhlIHNhbWUgd2F5IHlvdSBidWlsZCBhbnkgVmlzdWFsIFN0dWRpbyBwcm9qZWN0LiBGaWxlcyB0
aGF0Ci1oYXZlIG5hbWVzIGVuZGluZyB3aXRoIC1tZCB1c2UgRExMIHZlcnNpb25zIG9mIE1pY3Jv
c29mdCBydW50aW1lIGxpYnJhcmllcyAodGhlCi0vTUQgb3IgdGhlIC9NRGQgY29tcGlsZXIgb3B0
aW9uKS4gRmlsZXMgd2l0aG91dCB0aGF0IHN1ZmZpeCB1c2Ugc3RhdGljIHZlcnNpb25zCi1vZiB0
aGUgcnVudGltZSBsaWJyYXJpZXMgKHRoZSAvTVQgb3IgdGhlIC9NVGQgb3B0aW9uKS4gUGxlYXNl
IG5vdGUgdGhhdCBvbmUgbXVzdAotdXNlIHRoZSBzYW1lIG9wdGlvbiB0byBjb21waWxlIGJvdGgg
Z3Rlc3QgYW5kIHRoZSB0ZXN0IGNvZGUuIElmIHlvdSB1c2UgVmlzdWFsCi1TdHVkaW8gMjAwNSBv
ciBhYm92ZSwgd2UgcmVjb21tZW5kIHRoZSAtbWQgdmVyc2lvbiBhcyAvTUQgaXMgdGhlIGRlZmF1
bHQgZm9yIG5ldwotcHJvamVjdHMgaW4gdGhlc2UgdmVyc2lvbnMgb2YgVmlzdWFsIFN0dWRpby4K
KyMjIyMgQysrIFN0YW5kYXJkIFZlcnNpb24KIAotT24gTWFjIE9TIFgsIG9wZW4gdGhlIGBndGVz
dC54Y29kZXByb2pgIGluIHRoZSBgeGNvZGUvYCBmb2xkZXIgdXNpbmcgWGNvZGUuCi1CdWlsZCB0
aGUgImd0ZXN0IiB0YXJnZXQuIFRoZSB1bml2ZXJzYWwgYmluYXJ5IGZyYW1ld29yayB3aWxsIGVu
ZCB1cCBpbiB5b3VyCi1zZWxlY3RlZCBidWlsZCBkaXJlY3RvcnkgKHNlbGVjdGVkIGluIHRoZSBY
Y29kZSAiUHJlZmVyZW5jZXMuLi4iIC0+ICJCdWlsZGluZyIKLXBhbmUgYW5kIGRlZmF1bHRzIHRv
IHhjb2RlL2J1aWxkKS4gQWx0ZXJuYXRpdmVseSwgYXQgdGhlIGNvbW1hbmQgbGluZSwgZW50ZXI6
Ci0KLSAgICB4Y29kZWJ1aWxkCi0KLVRoaXMgd2lsbCBidWlsZCB0aGUgIlJlbGVhc2UiIGNvbmZp
Z3VyYXRpb24gb2YgZ3Rlc3QuZnJhbWV3b3JrIGluIHlvdXIgZGVmYXVsdAotYnVpbGQgbG9jYXRp
b24uIFNlZSB0aGUgInhjb2RlYnVpbGQiIG1hbiBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIGFi
b3V0Ci1idWlsZGluZyBkaWZmZXJlbnQgY29uZmlndXJhdGlvbnMgYW5kIGJ1aWxkaW5nIGluIGRp
ZmZlcmVudCBsb2NhdGlvbnMuCi0KLUlmIHlvdSB3aXNoIHRvIHVzZSB0aGUgR29vZ2xlIFRlc3Qg
WGNvZGUgcHJvamVjdCB3aXRoIFhjb2RlIDQueCBhbmQgYWJvdmUsIHlvdQotbmVlZCB0byBlaXRo
ZXI6Ci0KLSogICB1cGRhdGUgdGhlIFNESyBjb25maWd1cmF0aW9uIG9wdGlvbnMgaW4geGNvZGUv
Q29uZmlnL0dlbmVyYWwueGNvbmZpZy4KLSAgICBDb21tZW50IG9wdGlvbnMgYFNES1JPT1RgLCBg
TUFDT1NfREVQTE9ZTUVOVF9UQVJHRVRgLCBhbmQgYEdDQ19WRVJTSU9OYC4gSWYKLSAgICB5b3Ug
Y2hvb3NlIHRoaXMgcm91dGUgeW91IGxvc2UgdGhlIGFiaWxpdHkgdG8gdGFyZ2V0IGVhcmxpZXIg
dmVyc2lvbnMgb2YKLSAgICBNYWNPUyBYLgotKiAgIEluc3RhbGwgYW4gU0RLIGZvciBhbiBlYXJs
aWVyIHZlcnNpb24uIFRoaXMgZG9lc24ndCBhcHBlYXIgdG8gYmUgc3VwcG9ydGVkCi0gICAgYnkg
QXBwbGUsIGJ1dCBoYXMgYmVlbiByZXBvcnRlZCB0byB3b3JrCi0gICAgKGh0dHA6Ly9zdGFja292
ZXJmbG93LmNvbS9xdWVzdGlvbnMvNTM3ODUxOCkuCitBbiBlbnZpcm9ubWVudCB0aGF0IHN1cHBv
cnRzIEMrKzExIGlzIHJlcXVpcmVkIGluIG9yZGVyIHRvIHN1Y2Nlc3NmdWxseSBidWlsZAorR29v
Z2xlIFRlc3QuIE9uZSB3YXkgdG8gZW5zdXJlIHRoaXMgaXMgdG8gc3BlY2lmeSB0aGUgc3RhbmRh
cmQgaW4gdGhlIHRvcC1sZXZlbAorcHJvamVjdCwgZm9yIGV4YW1wbGUgYnkgdXNpbmcgdGhlIGBz
ZXQoQ01BS0VfQ1hYX1NUQU5EQVJEIDExKWAgY29tbWFuZC4gSWYgdGhpcworaXMgbm90IGZlYXNp
YmxlLCBmb3IgZXhhbXBsZSBpbiBhIEMgcHJvamVjdCB1c2luZyBHb29nbGUgVGVzdCBmb3IgdmFs
aWRhdGlvbiwKK3RoZW4gaXQgY2FuIGJlIHNwZWNpZmllZCBieSBhZGRpbmcgaXQgdG8gdGhlIG9w
dGlvbnMgZm9yIGNtYWtlIHZpYSB0aGUKK2BEQ01BS0VfQ1hYX0ZMQUdTYCBvcHRpb24uCiAKICMj
IyBUd2Vha2luZyBHb29nbGUgVGVzdAogCkBAIC0yMzksNDEgKzE2OSwxNCBAQCBjb21tYW5kIGxp
bmUuIEdlbmVyYWxseSwgdGhlc2UgbWFjcm9zIGFyZSBuYW1lZCBsaWtlIGBHVEVTVF9YWVpgIGFu
ZCB5b3UgZGVmaW5lCiB0aGVtIHRvIGVpdGhlciAxIG9yIDAgdG8gZW5hYmxlIG9yIGRpc2FibGUg
YSBjZXJ0YWluIGZlYXR1cmUuCiAKIFdlIGxpc3QgdGhlIG1vc3QgZnJlcXVlbnRseSB1c2VkIG1h
Y3JvcyBiZWxvdy4gRm9yIGEgY29tcGxldGUgbGlzdCwgc2VlIGZpbGUKLVtpbmNsdWRlL2d0ZXN0
L2ludGVybmFsL2d0ZXN0LXBvcnQuaF0oaHR0cHM6Ly9naXRodWIuY29tL2dvb2dsZS9nb29nbGV0
ZXN0L2Jsb2IvbWFzdGVyL2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtcG9ydC5oKS4KLQot
IyMjIENob29zaW5nIGEgVFIxIFR1cGxlIExpYnJhcnkKLQotU29tZSBHb29nbGUgVGVzdCBmZWF0
dXJlcyByZXF1aXJlIHRoZSBDKysgVGVjaG5pY2FsIFJlcG9ydCAxIChUUjEpIHR1cGxlCi1saWJy
YXJ5LCB3aGljaCBpcyBub3QgeWV0IGF2YWlsYWJsZSB3aXRoIGFsbCBjb21waWxlcnMuIFRoZSBn
b29kIG5ld3MgaXMgdGhhdAotR29vZ2xlIFRlc3QgaW1wbGVtZW50cyBhIHN1YnNldCBvZiBUUjEg
dHVwbGUgdGhhdCdzIGVub3VnaCBmb3IgaXRzIG93biBuZWVkLCBhbmQKLXdpbGwgYXV0b21hdGlj
YWxseSB1c2UgdGhpcyB3aGVuIHRoZSBjb21waWxlciBkb2Vzbid0IHByb3ZpZGUgVFIxIHR1cGxl
LgotCi1Vc3VhbGx5IHlvdSBkb24ndCBuZWVkIHRvIGNhcmUgYWJvdXQgd2hpY2ggdHVwbGUgbGli
cmFyeSBHb29nbGUgVGVzdCB1c2VzLgotSG93ZXZlciwgaWYgeW91ciBwcm9qZWN0IGFscmVhZHkg
dXNlcyBUUjEgdHVwbGUsIHlvdSBuZWVkIHRvIHRlbGwgR29vZ2xlIFRlc3QgdG8KLXVzZSB0aGUg
c2FtZSBUUjEgdHVwbGUgbGlicmFyeSB0aGUgcmVzdCBvZiB5b3VyIHByb2plY3QgdXNlcywgb3Ig
dGhlIHR3byB0dXBsZQotaW1wbGVtZW50YXRpb25zIHdpbGwgY2xhc2guIFRvIGRvIHRoYXQsIGFk
ZAotCi0gICAgLURHVEVTVF9VU0VfT1dOX1RSMV9UVVBMRT0wCi0KLXRvIHRoZSBjb21waWxlciBm
bGFncyB3aGlsZSBjb21waWxpbmcgR29vZ2xlIFRlc3QgYW5kIHlvdXIgdGVzdHMuIElmIHlvdSB3
YW50IHRvCi1mb3JjZSBHb29nbGUgVGVzdCB0byB1c2UgaXRzIG93biB0dXBsZSBsaWJyYXJ5LCBq
dXN0IGFkZAotCi0gICAgLURHVEVTVF9VU0VfT1dOX1RSMV9UVVBMRT0xCi0KLXRvIHRoZSBjb21w
aWxlciBmbGFncyBpbnN0ZWFkLgotCi1JZiB5b3UgZG9uJ3Qgd2FudCBHb29nbGUgVGVzdCB0byB1
c2UgdHVwbGUgYXQgYWxsLCBhZGQKLQotICAgIC1ER1RFU1RfSEFTX1RSMV9UVVBMRT0wCi0KLWFu
ZCBhbGwgZmVhdHVyZXMgdXNpbmcgdHVwbGUgd2lsbCBiZSBkaXNhYmxlZC4KK1tpbmNsdWRlL2d0
ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQuaF0oaHR0cHM6Ly9naXRodWIuY29tL2dvb2dsZS9nb29n
bGV0ZXN0L2Jsb2IvbWFzdGVyL2dvb2dsZXRlc3QvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVz
dC1wb3J0LmgpLgogCiAjIyMgTXVsdGktdGhyZWFkZWQgVGVzdHMKIAogR29vZ2xlIFRlc3QgaXMg
dGhyZWFkLXNhZmUgd2hlcmUgdGhlIHB0aHJlYWQgbGlicmFyeSBpcyBhdmFpbGFibGUuIEFmdGVy
Ci1gI2luY2x1ZGUgImd0ZXN0L2d0ZXN0LmgiYCwgeW91IGNhbiBjaGVjayB0aGUgYEdURVNUX0lT
X1RIUkVBRFNBRkVgIG1hY3JvIHRvIHNlZQotd2hldGhlciB0aGlzIGlzIHRoZSBjYXNlICh5ZXMg
aWYgdGhlIG1hY3JvIGlzIGAjZGVmaW5lZGAgdG8gMSwgbm8gaWYgaXQncwotdW5kZWZpbmVkLiku
CitgI2luY2x1ZGUgImd0ZXN0L2d0ZXN0LmgiYCwgeW91IGNhbiBjaGVjayB0aGUKK2BHVEVTVF9J
U19USFJFQURTQUZFYCBtYWNybyB0byBzZWUgd2hldGhlciB0aGlzIGlzIHRoZSBjYXNlICh5ZXMg
aWYgdGhlIG1hY3JvIGlzCitgI2RlZmluZWRgIHRvIDEsIG5vIGlmIGl0J3MgdW5kZWZpbmVkLiku
CiAKIElmIEdvb2dsZSBUZXN0IGRvZXNuJ3QgY29ycmVjdGx5IGRldGVjdCB3aGV0aGVyIHB0aHJl
YWQgaXMgYXZhaWxhYmxlIGluIHlvdXIKIGVudmlyb25tZW50LCB5b3UgY2FuIGZvcmNlIGl0IHdp
dGgKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5j
bHVkZS9ndGVzdC9ndGVzdC1kZWF0aC10ZXN0LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dv
b2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QtZGVhdGgtdGVzdC5oCmluZGV4IDIwYzU0
ZDg2OTUxOWY2OTMwZTdlYmZkMmMwODA1YmFjYTQyMjE2YmEuLmRjODc4ZmZiYjNhZTU2YTJiOTFi
OTMwYjcxYTdjYmI1MDMyMjJhNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkv
Z29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9ndGVzdC1kZWF0aC10ZXN0LmgKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2d0ZXN0LWRl
YXRoLXRlc3QuaApAQCAtMTYxLDcgKzE2MSw2IEBAIEdURVNUX0FQSV8gYm9vbCBJbkRlYXRoVGVz
dENoaWxkKCk7CiAvLyAgIGlzIHJhcmVseSBhIHByb2JsZW0gYXMgcGVvcGxlIHVzdWFsbHkgZG9u
J3QgcHV0IHRoZSB0ZXN0IGJpbmFyeQogLy8gICBkaXJlY3RvcnkgaW4gUEFUSC4KIC8vCi0vLyBG
SVhNRTogbWFrZSB0aHJlYWQtc2FmZSBkZWF0aCB0ZXN0cyBzZWFyY2ggdGhlIFBBVEguCiAKIC8v
IEFzc2VydHMgdGhhdCBhIGdpdmVuIHN0YXRlbWVudCBjYXVzZXMgdGhlIHByb2dyYW0gdG8gZXhp
dCwgd2l0aCBhbgogLy8gaW50ZWdlciBleGl0IHN0YXR1cyB0aGF0IHNhdGlzZmllcyBwcmVkaWNh
dGUsIGFuZCBlbWl0dGluZyBlcnJvciBvdXRwdXQKQEAgLTE3MCw3ICsxNjksNyBAQCBHVEVTVF9B
UElfIGJvb2wgSW5EZWF0aFRlc3RDaGlsZCgpOwogICAgIEdURVNUX0RFQVRIX1RFU1RfKHN0YXRl
bWVudCwgcHJlZGljYXRlLCByZWdleCwgR1RFU1RfRkFUQUxfRkFJTFVSRV8pCiAKIC8vIExpa2Ug
QVNTRVJUX0VYSVQsIGJ1dCBjb250aW51ZXMgb24gdG8gc3VjY2Vzc2l2ZSB0ZXN0cyBpbiB0aGUK
LS8vIHRlc3QgY2FzZSwgaWYgYW55OgorLy8gdGVzdCBzdWl0ZSwgaWYgYW55OgogIyBkZWZpbmUg
RVhQRUNUX0VYSVQoc3RhdGVtZW50LCBwcmVkaWNhdGUsIHJlZ2V4KSBcCiAgICAgR1RFU1RfREVB
VEhfVEVTVF8oc3RhdGVtZW50LCBwcmVkaWNhdGUsIHJlZ2V4LCBHVEVTVF9OT05GQVRBTF9GQUlM
VVJFXykKIApAQCAtMTgxLDcgKzE4MCw3IEBAIEdURVNUX0FQSV8gYm9vbCBJbkRlYXRoVGVzdENo
aWxkKCk7CiAgICAgQVNTRVJUX0VYSVQoc3RhdGVtZW50LCA6OnRlc3Rpbmc6OmludGVybmFsOjpF
eGl0ZWRVbnN1Y2Nlc3NmdWxseSwgcmVnZXgpCiAKIC8vIExpa2UgQVNTRVJUX0RFQVRILCBidXQg
Y29udGludWVzIG9uIHRvIHN1Y2Nlc3NpdmUgdGVzdHMgaW4gdGhlCi0vLyB0ZXN0IGNhc2UsIGlm
IGFueToKKy8vIHRlc3Qgc3VpdGUsIGlmIGFueToKICMgZGVmaW5lIEVYUEVDVF9ERUFUSChzdGF0
ZW1lbnQsIHJlZ2V4KSBcCiAgICAgRVhQRUNUX0VYSVQoc3RhdGVtZW50LCA6OnRlc3Rpbmc6Omlu
dGVybmFsOjpFeGl0ZWRVbnN1Y2Nlc3NmdWxseSwgcmVnZXgpCiAKQEAgLTIyOCw3ICsyMjcsNyBA
QCBjbGFzcyBHVEVTVF9BUElfIEtpbGxlZEJ5U2lnbmFsIHsKIC8vICAgcmV0dXJuIDEyOwogLy8g
fQogLy8KLS8vIFRFU1QoVGVzdENhc2UsIFRlc3REaWVPcjEyV29ya3NJbkRnYkFuZE9wdCkgewor
Ly8gVEVTVChUZXN0U3VpdGUsIFRlc3REaWVPcjEyV29ya3NJbkRnYkFuZE9wdCkgewogLy8gICBp
bnQgc2lkZWVmZmVjdCA9IDA7CiAvLyAgIC8vIE9ubHkgYXNzZXJ0cyBpbiBkYmcuCiAvLyAgIEVY
UEVDVF9ERUJVR19ERUFUSChEaWVJbkRlYnVnT3IxMigmc2lkZWVmZmVjdCksICJkZWF0aCIpOwpA
QCAtMjc3LDIwICsyNzYsMjAgQEAgY2xhc3MgR1RFU1RfQVBJXyBLaWxsZWRCeVNpZ25hbCB7CiAv
LyBUaGlzIG1hY3JvIGlzIHVzZWQgZm9yIGltcGxlbWVudGluZyBtYWNyb3Mgc3VjaCBhcwogLy8g
RVhQRUNUX0RFQVRIX0lGX1NVUFBPUlRFRCBhbmQgQVNTRVJUX0RFQVRIX0lGX1NVUFBPUlRFRCBv
biBzeXN0ZW1zIHdoZXJlCiAvLyBkZWF0aCB0ZXN0cyBhcmUgbm90IHN1cHBvcnRlZC4gVGhvc2Ug
bWFjcm9zIG11c3QgY29tcGlsZSBvbiBzdWNoIHN5c3RlbXMKLS8vIGlmZiBFWFBFQ1RfREVBVEgg
YW5kIEFTU0VSVF9ERUFUSCBjb21waWxlIHdpdGggdGhlIHNhbWUgcGFyYW1ldGVycyBvbgotLy8g
c3lzdGVtcyB0aGF0IHN1cHBvcnQgZGVhdGggdGVzdHMuIFRoaXMgYWxsb3dzIG9uZSB0byB3cml0
ZSBzdWNoIGEgbWFjcm8KLS8vIG9uIGEgc3lzdGVtIHRoYXQgZG9lcyBub3Qgc3VwcG9ydCBkZWF0
aCB0ZXN0cyBhbmQgYmUgc3VyZSB0aGF0IGl0IHdpbGwKLS8vIGNvbXBpbGUgb24gYSBkZWF0aC10
ZXN0IHN1cHBvcnRpbmcgc3lzdGVtLiBJdCBpcyBleHBvc2VkIHB1YmxpY2x5IHNvIHRoYXQKLS8v
IHN5c3RlbXMgdGhhdCBoYXZlIGRlYXRoLXRlc3RzIHdpdGggc3RyaWN0ZXIgcmVxdWlyZW1lbnRz
IHRoYW4KLS8vIEdURVNUX0hBU19ERUFUSF9URVNUIGNhbiB3cml0ZSB0aGVpciBvd24gZXF1aXZh
bGVudCBvZgotLy8gRVhQRUNUX0RFQVRIX0lGX1NVUFBPUlRFRCBhbmQgQVNTRVJUX0RFQVRIX0lG
X1NVUFBPUlRFRC4KKy8vIGlmIGFuZCBvbmx5IGlmIEVYUEVDVF9ERUFUSCBhbmQgQVNTRVJUX0RF
QVRIIGNvbXBpbGUgd2l0aCB0aGUgc2FtZSBwYXJhbWV0ZXJzCisvLyBvbiBzeXN0ZW1zIHRoYXQg
c3VwcG9ydCBkZWF0aCB0ZXN0cy4gVGhpcyBhbGxvd3Mgb25lIHRvIHdyaXRlIHN1Y2ggYSBtYWNy
byBvbgorLy8gYSBzeXN0ZW0gdGhhdCBkb2VzIG5vdCBzdXBwb3J0IGRlYXRoIHRlc3RzIGFuZCBi
ZSBzdXJlIHRoYXQgaXQgd2lsbCBjb21waWxlCisvLyBvbiBhIGRlYXRoLXRlc3Qgc3VwcG9ydGlu
ZyBzeXN0ZW0uIEl0IGlzIGV4cG9zZWQgcHVibGljbHkgc28gdGhhdCBzeXN0ZW1zCisvLyB0aGF0
IGhhdmUgZGVhdGgtdGVzdHMgd2l0aCBzdHJpY3RlciByZXF1aXJlbWVudHMgdGhhbiBHVEVTVF9I
QVNfREVBVEhfVEVTVAorLy8gY2FuIHdyaXRlIHRoZWlyIG93biBlcXVpdmFsZW50IG9mIEVYUEVD
VF9ERUFUSF9JRl9TVVBQT1JURUQgYW5kCisvLyBBU1NFUlRfREVBVEhfSUZfU1VQUE9SVEVELgog
Ly8KIC8vIFBhcmFtZXRlcnM6CiAvLyAgIHN0YXRlbWVudCAtICBBIHN0YXRlbWVudCB0aGF0IGEg
bWFjcm8gc3VjaCBhcyBFWFBFQ1RfREVBVEggd291bGQgdGVzdAogLy8gICAgICAgICAgICAgICAg
Zm9yIHByb2dyYW0gdGVybWluYXRpb24uIFRoaXMgbWFjcm8gaGFzIHRvIG1ha2Ugc3VyZSB0aGlz
CiAvLyAgICAgICAgICAgICAgICBzdGF0ZW1lbnQgaXMgY29tcGlsZWQgYnV0IG5vdCBleGVjdXRl
ZCwgdG8gZW5zdXJlIHRoYXQKIC8vICAgICAgICAgICAgICAgIEVYUEVDVF9ERUFUSF9JRl9TVVBQ
T1JURUQgY29tcGlsZXMgd2l0aCBhIGNlcnRhaW4KLS8vICAgICAgICAgICAgICAgIHBhcmFtZXRl
ciBpZmYgRVhQRUNUX0RFQVRIIGNvbXBpbGVzIHdpdGggaXQuCisvLyAgICAgICAgICAgICAgICBw
YXJhbWV0ZXIgaWYgYW5kIG9ubHkgaWYgRVhQRUNUX0RFQVRIIGNvbXBpbGVzIHdpdGggaXQuCiAv
LyAgIHJlZ2V4ICAgICAtICBBIHJlZ2V4IHRoYXQgYSBtYWNybyBzdWNoIGFzIEVYUEVDVF9ERUFU
SCB3b3VsZCB1c2UgdG8gdGVzdAogLy8gICAgICAgICAgICAgICAgdGhlIG91dHB1dCBvZiBzdGF0
ZW1lbnQuICBUaGlzIHBhcmFtZXRlciBoYXMgdG8gYmUKIC8vICAgICAgICAgICAgICAgIGNvbXBp
bGVkIGJ1dCBub3QgZXZhbHVhdGVkIGJ5IHRoaXMgbWFjcm8sIHRvIGVuc3VyZSB0aGF0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rl
c3QvZ3Rlc3QtbWF0Y2hlcnMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9z
cmMvaW5jbHVkZS9ndGVzdC9ndGVzdC1tYXRjaGVycy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE2MWNlZjQwOTNj
YzAwYzUzMmY1NmFiMGYzNTVlM2Q1ZWU5MWY2YzgKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QtbWF0Y2hl
cnMuaApAQCAtMCwwICsxLDc1MCBAQAorLy8gQ29weXJpZ2h0IDIwMDcsIEdvb2dsZSBJbmMuCisv
LyBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8KKy8vIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorLy8gbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFy
ZQorLy8gbWV0OgorLy8KKy8vICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisvLyBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisvLyAgICAgKiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisvLyBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyCisvLyBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlCisvLyBkaXN0cmlidXRpb24uCisvLyAgICAgKiBOZWl0aGVyIHRo
ZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisvLyBjb250cmlidXRv
cnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJv
bQorLy8gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlz
c2lvbi4KKy8vCisvLyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQg
SE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisvLyAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorLy8gTElNSVRFRCBUTywgVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisv
LyBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFIENPUFlSSUdIVAorLy8gT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisvLyBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisvLyBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwKKy8vIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWQorLy8gVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorLy8gKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisvLyBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorCisvLyBUaGUgR29vZ2xlIEMrKyBUZXN0aW5nIGFuZCBNb2NraW5nIEZyYW1l
d29yayAoR29vZ2xlIFRlc3QpCisvLworLy8gVGhpcyBmaWxlIGltcGxlbWVudHMganVzdCBlbm91
Z2ggb2YgdGhlIG1hdGNoZXIgaW50ZXJmYWNlIHRvIGFsbG93CisvLyBFWFBFQ1RfREVBVEggYW5k
IGZyaWVuZHMgdG8gYWNjZXB0IGEgbWF0Y2hlciBhcmd1bWVudC4KKworLy8gSVdZVSBwcmFnbWE6
IHByaXZhdGUsIGluY2x1ZGUgInRlc3RpbmcvYmFzZS9wdWJsaWMvZ3VuaXQuaCIKKy8vIElXWVUg
cHJhZ21hOiBmcmllbmQgdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9nb29nbGVtb2NrLy4qCisvLyBJ
V1lVIHByYWdtYTogZnJpZW5kIHRoaXJkX3BhcnR5L2dvb2dsZXRlc3QvZ29vZ2xldGVzdC8uKgor
CisjaWZuZGVmIEdURVNUX0lOQ0xVREVfR1RFU1RfR1RFU1RfTUFUQ0hFUlNfSF8KKyNkZWZpbmUg
R1RFU1RfSU5DTFVERV9HVEVTVF9HVEVTVF9NQVRDSEVSU19IXworCisjaW5jbHVkZSA8bWVtb3J5
PgorI2luY2x1ZGUgPG9zdHJlYW0+CisjaW5jbHVkZSA8c3RyaW5nPgorI2luY2x1ZGUgPHR5cGVf
dHJhaXRzPgorCisjaW5jbHVkZSAiZ3Rlc3QvZ3Rlc3QtcHJpbnRlcnMuaCIKKyNpbmNsdWRlICJn
dGVzdC9pbnRlcm5hbC9ndGVzdC1pbnRlcm5hbC5oIgorI2luY2x1ZGUgImd0ZXN0L2ludGVybmFs
L2d0ZXN0LXBvcnQuaCIKKworLy8gTVNWQyB3YXJuaW5nIEM1MDQ2IGlzIG5ldyBhcyBvZiBWUzIw
MTcgdmVyc2lvbiAxNS44LgorI2lmIGRlZmluZWQoX01TQ19WRVIpICYmIF9NU0NfVkVSID49IDE5
MTUKKyNkZWZpbmUgR1RFU1RfTUFZQkVfNTA0Nl8gNTA0NgorI2Vsc2UKKyNkZWZpbmUgR1RFU1Rf
TUFZQkVfNTA0Nl8KKyNlbmRpZgorCitHVEVTVF9ESVNBQkxFX01TQ19XQVJOSU5HU19QVVNIXygK
KyAgICA0MjUxIEdURVNUX01BWUJFXzUwNDZfIC8qIGNsYXNzIEEgbmVlZHMgdG8gaGF2ZSBkbGwt
aW50ZXJmYWNlIHRvIGJlIHVzZWQgYnkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNs
aWVudHMgb2YgY2xhc3MgQiAqLworICAgIC8qIFN5bWJvbCBpbnZvbHZpbmcgdHlwZSB3aXRoIGlu
dGVybmFsIGxpbmthZ2Ugbm90IGRlZmluZWQgKi8pCisKK25hbWVzcGFjZSB0ZXN0aW5nIHsKKwor
Ly8gVG8gaW1wbGVtZW50IGEgbWF0Y2hlciBGb28gZm9yIHR5cGUgVCwgZGVmaW5lOgorLy8gICAx
LiBhIGNsYXNzIEZvb01hdGNoZXJJbXBsIHRoYXQgaW1wbGVtZW50cyB0aGUKKy8vICAgICAgTWF0
Y2hlckludGVyZmFjZTxUPiBpbnRlcmZhY2UsIGFuZAorLy8gICAyLiBhIGZhY3RvcnkgZnVuY3Rp
b24gdGhhdCBjcmVhdGVzIGEgTWF0Y2hlcjxUPiBvYmplY3QgZnJvbSBhCisvLyAgICAgIEZvb01h
dGNoZXJJbXBsKi4KKy8vCisvLyBUaGUgdHdvLWxldmVsIGRlbGVnYXRpb24gZGVzaWduIG1ha2Vz
IGl0IHBvc3NpYmxlIHRvIGFsbG93IGEgdXNlcgorLy8gdG8gd3JpdGUgInYiIGluc3RlYWQgb2Yg
IkVxKHYpIiB3aGVyZSBhIE1hdGNoZXIgaXMgZXhwZWN0ZWQsIHdoaWNoCisvLyBpcyBpbXBvc3Np
YmxlIGlmIHdlIHBhc3MgbWF0Y2hlcnMgYnkgcG9pbnRlcnMuICBJdCBhbHNvIGVhc2VzCisvLyBv
d25lcnNoaXAgbWFuYWdlbWVudCBhcyBNYXRjaGVyIG9iamVjdHMgY2FuIG5vdyBiZSBjb3BpZWQg
bGlrZQorLy8gcGxhaW4gdmFsdWVzLgorCisvLyBNYXRjaFJlc3VsdExpc3RlbmVyIGlzIGFuIGFi
c3RyYWN0IGNsYXNzLiAgSXRzIDw8IG9wZXJhdG9yIGNhbiBiZQorLy8gdXNlZCBieSBhIG1hdGNo
ZXIgdG8gZXhwbGFpbiB3aHkgYSB2YWx1ZSBtYXRjaGVzIG9yIGRvZXNuJ3QgbWF0Y2guCisvLwor
Y2xhc3MgTWF0Y2hSZXN1bHRMaXN0ZW5lciB7CisgcHVibGljOgorICAvLyBDcmVhdGVzIGEgbGlz
dGVuZXIgb2JqZWN0IHdpdGggdGhlIGdpdmVuIHVuZGVybHlpbmcgb3N0cmVhbS4gIFRoZQorICAv
LyBsaXN0ZW5lciBkb2VzIG5vdCBvd24gdGhlIG9zdHJlYW0sIGFuZCBkb2VzIG5vdCBkZXJlZmVy
ZW5jZSBpdAorICAvLyBpbiB0aGUgY29uc3RydWN0b3Igb3IgZGVzdHJ1Y3Rvci4KKyAgZXhwbGlj
aXQgTWF0Y2hSZXN1bHRMaXN0ZW5lcig6OnN0ZDo6b3N0cmVhbSogb3MpIDogc3RyZWFtXyhvcykg
e30KKyAgdmlydHVhbCB+TWF0Y2hSZXN1bHRMaXN0ZW5lcigpID0gMDsgIC8vIE1ha2VzIHRoaXMg
Y2xhc3MgYWJzdHJhY3QuCisKKyAgLy8gU3RyZWFtcyB4IHRvIHRoZSB1bmRlcmx5aW5nIG9zdHJl
YW07IGRvZXMgbm90aGluZyBpZiB0aGUgb3N0cmVhbQorICAvLyBpcyBOVUxMLgorICB0ZW1wbGF0
ZSA8dHlwZW5hbWUgVD4KKyAgTWF0Y2hSZXN1bHRMaXN0ZW5lciYgb3BlcmF0b3I8PChjb25zdCBU
JiB4KSB7CisgICAgaWYgKHN0cmVhbV8gIT0gbnVsbHB0cikgKnN0cmVhbV8gPDwgeDsKKyAgICBy
ZXR1cm4gKnRoaXM7CisgIH0KKworICAvLyBSZXR1cm5zIHRoZSB1bmRlcmx5aW5nIG9zdHJlYW0u
CisgIDo6c3RkOjpvc3RyZWFtKiBzdHJlYW0oKSB7IHJldHVybiBzdHJlYW1fOyB9CisKKyAgLy8g
UmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoZSBsaXN0ZW5lciBpcyBpbnRlcmVzdGVkIGlu
IGFuIGV4cGxhbmF0aW9uCisgIC8vIG9mIHRoZSBtYXRjaCByZXN1bHQuICBBIG1hdGNoZXIncyBN
YXRjaEFuZEV4cGxhaW4oKSBtZXRob2QgY2FuIHVzZQorICAvLyB0aGlzIGluZm9ybWF0aW9uIHRv
IGF2b2lkIGdlbmVyYXRpbmcgdGhlIGV4cGxhbmF0aW9uIHdoZW4gbm8gb25lCisgIC8vIGludGVu
ZHMgdG8gaGVhciBpdC4KKyAgYm9vbCBJc0ludGVyZXN0ZWQoKSBjb25zdCB7IHJldHVybiBzdHJl
YW1fICE9IG51bGxwdHI7IH0KKworIHByaXZhdGU6CisgIDo6c3RkOjpvc3RyZWFtKiBjb25zdCBz
dHJlYW1fOworCisgIEdURVNUX0RJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTl8oTWF0Y2hSZXN1bHRM
aXN0ZW5lcik7Cit9OworCitpbmxpbmUgTWF0Y2hSZXN1bHRMaXN0ZW5lcjo6fk1hdGNoUmVzdWx0
TGlzdGVuZXIoKSB7Cit9CisKKy8vIEFuIGluc3RhbmNlIG9mIGEgc3ViY2xhc3Mgb2YgdGhpcyBr
bm93cyBob3cgdG8gZGVzY3JpYmUgaXRzZWxmIGFzIGEKKy8vIG1hdGNoZXIuCitjbGFzcyBNYXRj
aGVyRGVzY3JpYmVySW50ZXJmYWNlIHsKKyBwdWJsaWM6CisgIHZpcnR1YWwgfk1hdGNoZXJEZXNj
cmliZXJJbnRlcmZhY2UoKSB7fQorCisgIC8vIERlc2NyaWJlcyB0aGlzIG1hdGNoZXIgdG8gYW4g
b3N0cmVhbS4gIFRoZSBmdW5jdGlvbiBzaG91bGQgcHJpbnQKKyAgLy8gYSB2ZXJiIHBocmFzZSB0
aGF0IGRlc2NyaWJlcyB0aGUgcHJvcGVydHkgYSB2YWx1ZSBtYXRjaGluZyB0aGlzCisgIC8vIG1h
dGNoZXIgc2hvdWxkIGhhdmUuICBUaGUgc3ViamVjdCBvZiB0aGUgdmVyYiBwaHJhc2UgaXMgdGhl
IHZhbHVlCisgIC8vIGJlaW5nIG1hdGNoZWQuICBGb3IgZXhhbXBsZSwgdGhlIERlc2NyaWJlVG8o
KSBtZXRob2Qgb2YgdGhlIEd0KDcpCisgIC8vIG1hdGNoZXIgcHJpbnRzICJpcyBncmVhdGVyIHRo
YW4gNyIuCisgIHZpcnR1YWwgdm9pZCBEZXNjcmliZVRvKDo6c3RkOjpvc3RyZWFtKiBvcykgY29u
c3QgPSAwOworCisgIC8vIERlc2NyaWJlcyB0aGUgbmVnYXRpb24gb2YgdGhpcyBtYXRjaGVyIHRv
IGFuIG9zdHJlYW0uICBGb3IKKyAgLy8gZXhhbXBsZSwgaWYgdGhlIGRlc2NyaXB0aW9uIG9mIHRo
aXMgbWF0Y2hlciBpcyAiaXMgZ3JlYXRlciB0aGFuCisgIC8vIDciLCB0aGUgbmVnYXRlZCBkZXNj
cmlwdGlvbiBjb3VsZCBiZSAiaXMgbm90IGdyZWF0ZXIgdGhhbiA3Ii4KKyAgLy8gWW91IGFyZSBu
b3QgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgdGhpcyB3aGVuIGltcGxlbWVudGluZworICAvLyBNYXRj
aGVySW50ZXJmYWNlLCBidXQgaXQgaXMgaGlnaGx5IGFkdmlzZWQgc28gdGhhdCB5b3VyIG1hdGNo
ZXIKKyAgLy8gY2FuIHByb2R1Y2UgZ29vZCBlcnJvciBtZXNzYWdlcy4KKyAgdmlydHVhbCB2b2lk
IERlc2NyaWJlTmVnYXRpb25Ubyg6OnN0ZDo6b3N0cmVhbSogb3MpIGNvbnN0IHsKKyAgICAqb3Mg
PDwgIm5vdCAoIjsKKyAgICBEZXNjcmliZVRvKG9zKTsKKyAgICAqb3MgPDwgIikiOworICB9Cit9
OworCisvLyBUaGUgaW1wbGVtZW50YXRpb24gb2YgYSBtYXRjaGVyLgordGVtcGxhdGUgPHR5cGVu
YW1lIFQ+CitjbGFzcyBNYXRjaGVySW50ZXJmYWNlIDogcHVibGljIE1hdGNoZXJEZXNjcmliZXJJ
bnRlcmZhY2UgeworIHB1YmxpYzoKKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRo
ZSBtYXRjaGVyIG1hdGNoZXMgeDsgYWxzbyBleHBsYWlucyB0aGUKKyAgLy8gbWF0Y2ggcmVzdWx0
IHRvICdsaXN0ZW5lcicgaWYgbmVjZXNzYXJ5IChzZWUgdGhlIG5leHQgcGFyYWdyYXBoKSwgaW4K
KyAgLy8gdGhlIGZvcm0gb2YgYSBub24tcmVzdHJpY3RpdmUgcmVsYXRpdmUgY2xhdXNlICgid2hp
Y2ggLi4uIiwKKyAgLy8gIndob3NlIC4uLiIsIGV0YykgdGhhdCBkZXNjcmliZXMgeC4gIEZvciBl
eGFtcGxlLCB0aGUKKyAgLy8gTWF0Y2hBbmRFeHBsYWluKCkgbWV0aG9kIG9mIHRoZSBQb2ludGVl
KC4uLikgbWF0Y2hlciBzaG91bGQKKyAgLy8gZ2VuZXJhdGUgYW4gZXhwbGFuYXRpb24gbGlrZSAi
d2hpY2ggcG9pbnRzIHRvIC4uLiIuCisgIC8vCisgIC8vIEltcGxlbWVudGF0aW9ucyBvZiBNYXRj
aEFuZEV4cGxhaW4oKSBzaG91bGQgYWRkIGFuIGV4cGxhbmF0aW9uIG9mCisgIC8vIHRoZSBtYXRj
aCByZXN1bHQgKmlmIGFuZCBvbmx5IGlmKiB0aGV5IGNhbiBwcm92aWRlIGFkZGl0aW9uYWwKKyAg
Ly8gaW5mb3JtYXRpb24gdGhhdCdzIG5vdCBhbHJlYWR5IHByZXNlbnQgKG9yIG5vdCBvYnZpb3Vz
KSBpbiB0aGUKKyAgLy8gcHJpbnQtb3V0IG9mIHggYW5kIHRoZSBtYXRjaGVyJ3MgZGVzY3JpcHRp
b24uICBXaGV0aGVyIHRoZSBtYXRjaAorICAvLyBzdWNjZWVkcyBpcyBub3QgYSBmYWN0b3IgaW4g
ZGVjaWRpbmcgd2hldGhlciBhbiBleHBsYW5hdGlvbiBpcworICAvLyBuZWVkZWQsIGFzIHNvbWV0
aW1lcyB0aGUgY2FsbGVyIG5lZWRzIHRvIHByaW50IGEgZmFpbHVyZSBtZXNzYWdlCisgIC8vIHdo
ZW4gdGhlIG1hdGNoIHN1Y2NlZWRzIChlLmcuIHdoZW4gdGhlIG1hdGNoZXIgaXMgdXNlZCBpbnNp
ZGUKKyAgLy8gTm90KCkpLgorICAvLworICAvLyBGb3IgZXhhbXBsZSwgYSAiaGFzIGF0IGxlYXN0
IDEwIGVsZW1lbnRzIiBtYXRjaGVyIHNob3VsZCBleHBsYWluCisgIC8vIHdoYXQgdGhlIGFjdHVh
bCBlbGVtZW50IGNvdW50IGlzLCByZWdhcmRsZXNzIG9mIHRoZSBtYXRjaCByZXN1bHQsCisgIC8v
IGFzIGl0IGlzIHVzZWZ1bCBpbmZvcm1hdGlvbiB0byB0aGUgcmVhZGVyOyBvbiB0aGUgb3RoZXIg
aGFuZCwgYW4KKyAgLy8gImlzIGVtcHR5IiBtYXRjaGVyIHByb2JhYmx5IG9ubHkgbmVlZHMgdG8g
ZXhwbGFpbiB3aGF0IHRoZSBhY3R1YWwKKyAgLy8gc2l6ZSBpcyB3aGVuIHRoZSBtYXRjaCBmYWls
cywgYXMgaXQncyByZWR1bmRhbnQgdG8gc2F5IHRoYXQgdGhlCisgIC8vIHNpemUgaXMgMCB3aGVu
IHRoZSB2YWx1ZSBpcyBhbHJlYWR5IGtub3duIHRvIGJlIGVtcHR5LgorICAvLworICAvLyBZb3Ug
c2hvdWxkIG92ZXJyaWRlIHRoaXMgbWV0aG9kIHdoZW4gZGVmaW5pbmcgYSBuZXcgbWF0Y2hlci4K
KyAgLy8KKyAgLy8gSXQncyB0aGUgcmVzcG9uc2liaWxpdHkgb2YgdGhlIGNhbGxlciAoR29vZ2xl
IFRlc3QpIHRvIGd1YXJhbnRlZQorICAvLyB0aGF0ICdsaXN0ZW5lcicgaXMgbm90IE5VTEwuICBU
aGlzIGhlbHBzIHRvIHNpbXBsaWZ5IGEgbWF0Y2hlcidzCisgIC8vIGltcGxlbWVudGF0aW9uIHdo
ZW4gaXQgZG9lc24ndCBjYXJlIGFib3V0IHRoZSBwZXJmb3JtYW5jZSwgYXMgaXQKKyAgLy8gY2Fu
IHRhbGsgdG8gJ2xpc3RlbmVyJyB3aXRob3V0IGNoZWNraW5nIGl0cyB2YWxpZGl0eSBmaXJzdC4K
KyAgLy8gSG93ZXZlciwgaW4gb3JkZXIgdG8gaW1wbGVtZW50IGR1bW15IGxpc3RlbmVycyBlZmZp
Y2llbnRseSwKKyAgLy8gbGlzdGVuZXItPnN0cmVhbSgpIG1heSBiZSBOVUxMLgorICB2aXJ0dWFs
IGJvb2wgTWF0Y2hBbmRFeHBsYWluKFQgeCwgTWF0Y2hSZXN1bHRMaXN0ZW5lciogbGlzdGVuZXIp
IGNvbnN0ID0gMDsKKworICAvLyBJbmhlcml0cyB0aGVzZSBtZXRob2RzIGZyb20gTWF0Y2hlckRl
c2NyaWJlckludGVyZmFjZToKKyAgLy8gICB2aXJ0dWFsIHZvaWQgRGVzY3JpYmVUbyg6OnN0ZDo6
b3N0cmVhbSogb3MpIGNvbnN0ID0gMDsKKyAgLy8gICB2aXJ0dWFsIHZvaWQgRGVzY3JpYmVOZWdh
dGlvblRvKDo6c3RkOjpvc3RyZWFtKiBvcykgY29uc3Q7Cit9OworCituYW1lc3BhY2UgaW50ZXJu
YWwgeworCisvLyBDb252ZXJ0cyBhIE1hdGNoZXJJbnRlcmZhY2U8VD4gdG8gYSBNYXRjaGVySW50
ZXJmYWNlPGNvbnN0IFQmPi4KK3RlbXBsYXRlIDx0eXBlbmFtZSBUPgorY2xhc3MgTWF0Y2hlcklu
dGVyZmFjZUFkYXB0ZXIgOiBwdWJsaWMgTWF0Y2hlckludGVyZmFjZTxjb25zdCBUJj4geworIHB1
YmxpYzoKKyAgZXhwbGljaXQgTWF0Y2hlckludGVyZmFjZUFkYXB0ZXIoY29uc3QgTWF0Y2hlcklu
dGVyZmFjZTxUPiogaW1wbCkKKyAgICAgIDogaW1wbF8oaW1wbCkge30KKyAgfk1hdGNoZXJJbnRl
cmZhY2VBZGFwdGVyKCkgb3ZlcnJpZGUgeyBkZWxldGUgaW1wbF87IH0KKworICB2b2lkIERlc2Ny
aWJlVG8oOjpzdGQ6Om9zdHJlYW0qIG9zKSBjb25zdCBvdmVycmlkZSB7IGltcGxfLT5EZXNjcmli
ZVRvKG9zKTsgfQorCisgIHZvaWQgRGVzY3JpYmVOZWdhdGlvblRvKDo6c3RkOjpvc3RyZWFtKiBv
cykgY29uc3Qgb3ZlcnJpZGUgeworICAgIGltcGxfLT5EZXNjcmliZU5lZ2F0aW9uVG8ob3MpOwor
ICB9CisKKyAgYm9vbCBNYXRjaEFuZEV4cGxhaW4oY29uc3QgVCYgeCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgTWF0Y2hSZXN1bHRMaXN0ZW5lciogbGlzdGVuZXIpIGNvbnN0IG92ZXJyaWRlIHsK
KyAgICByZXR1cm4gaW1wbF8tPk1hdGNoQW5kRXhwbGFpbih4LCBsaXN0ZW5lcik7CisgIH0KKwor
IHByaXZhdGU6CisgIGNvbnN0IE1hdGNoZXJJbnRlcmZhY2U8VD4qIGNvbnN0IGltcGxfOworCisg
IEdURVNUX0RJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTl8oTWF0Y2hlckludGVyZmFjZUFkYXB0ZXIp
OworfTsKKworc3RydWN0IEFueUVxIHsKKyAgdGVtcGxhdGUgPHR5cGVuYW1lIEEsIHR5cGVuYW1l
IEI+CisgIGJvb2wgb3BlcmF0b3IoKShjb25zdCBBJiBhLCBjb25zdCBCJiBiKSBjb25zdCB7IHJl
dHVybiBhID09IGI7IH0KK307CitzdHJ1Y3QgQW55TmUgeworICB0ZW1wbGF0ZSA8dHlwZW5hbWUg
QSwgdHlwZW5hbWUgQj4KKyAgYm9vbCBvcGVyYXRvcigpKGNvbnN0IEEmIGEsIGNvbnN0IEImIGIp
IGNvbnN0IHsgcmV0dXJuIGEgIT0gYjsgfQorfTsKK3N0cnVjdCBBbnlMdCB7CisgIHRlbXBsYXRl
IDx0eXBlbmFtZSBBLCB0eXBlbmFtZSBCPgorICBib29sIG9wZXJhdG9yKCkoY29uc3QgQSYgYSwg
Y29uc3QgQiYgYikgY29uc3QgeyByZXR1cm4gYSA8IGI7IH0KK307CitzdHJ1Y3QgQW55R3Qgewor
ICB0ZW1wbGF0ZSA8dHlwZW5hbWUgQSwgdHlwZW5hbWUgQj4KKyAgYm9vbCBvcGVyYXRvcigpKGNv
bnN0IEEmIGEsIGNvbnN0IEImIGIpIGNvbnN0IHsgcmV0dXJuIGEgPiBiOyB9Cit9Oworc3RydWN0
IEFueUxlIHsKKyAgdGVtcGxhdGUgPHR5cGVuYW1lIEEsIHR5cGVuYW1lIEI+CisgIGJvb2wgb3Bl
cmF0b3IoKShjb25zdCBBJiBhLCBjb25zdCBCJiBiKSBjb25zdCB7IHJldHVybiBhIDw9IGI7IH0K
K307CitzdHJ1Y3QgQW55R2UgeworICB0ZW1wbGF0ZSA8dHlwZW5hbWUgQSwgdHlwZW5hbWUgQj4K
KyAgYm9vbCBvcGVyYXRvcigpKGNvbnN0IEEmIGEsIGNvbnN0IEImIGIpIGNvbnN0IHsgcmV0dXJu
IGEgPj0gYjsgfQorfTsKKworLy8gQSBtYXRjaCByZXN1bHQgbGlzdGVuZXIgdGhhdCBpZ25vcmVz
IHRoZSBleHBsYW5hdGlvbi4KK2NsYXNzIER1bW15TWF0Y2hSZXN1bHRMaXN0ZW5lciA6IHB1Ymxp
YyBNYXRjaFJlc3VsdExpc3RlbmVyIHsKKyBwdWJsaWM6CisgIER1bW15TWF0Y2hSZXN1bHRMaXN0
ZW5lcigpIDogTWF0Y2hSZXN1bHRMaXN0ZW5lcihudWxscHRyKSB7fQorCisgcHJpdmF0ZToKKyAg
R1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhEdW1teU1hdGNoUmVzdWx0TGlzdGVuZXIp
OworfTsKKworLy8gQSBtYXRjaCByZXN1bHQgbGlzdGVuZXIgdGhhdCBmb3J3YXJkcyB0aGUgZXhw
bGFuYXRpb24gdG8gYSBnaXZlbgorLy8gb3N0cmVhbS4gIFRoZSBkaWZmZXJlbmNlIGJldHdlZW4g
dGhpcyBhbmQgTWF0Y2hSZXN1bHRMaXN0ZW5lciBpcworLy8gdGhhdCB0aGUgZm9ybWVyIGlzIGNv
bmNyZXRlLgorY2xhc3MgU3RyZWFtTWF0Y2hSZXN1bHRMaXN0ZW5lciA6IHB1YmxpYyBNYXRjaFJl
c3VsdExpc3RlbmVyIHsKKyBwdWJsaWM6CisgIGV4cGxpY2l0IFN0cmVhbU1hdGNoUmVzdWx0TGlz
dGVuZXIoOjpzdGQ6Om9zdHJlYW0qIG9zKQorICAgICAgOiBNYXRjaFJlc3VsdExpc3RlbmVyKG9z
KSB7fQorCisgcHJpdmF0ZToKKyAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhTdHJl
YW1NYXRjaFJlc3VsdExpc3RlbmVyKTsKK307CisKKy8vIEFuIGludGVybmFsIGNsYXNzIGZvciBp
bXBsZW1lbnRpbmcgTWF0Y2hlcjxUPiwgd2hpY2ggd2lsbCBkZXJpdmUKKy8vIGZyb20gaXQuICBX
ZSBwdXQgZnVuY3Rpb25hbGl0aWVzIGNvbW1vbiB0byBhbGwgTWF0Y2hlcjxUPgorLy8gc3BlY2lh
bGl6YXRpb25zIGhlcmUgdG8gYXZvaWQgY29kZSBkdXBsaWNhdGlvbi4KK3RlbXBsYXRlIDx0eXBl
bmFtZSBUPgorY2xhc3MgTWF0Y2hlckJhc2UgeworIHB1YmxpYzoKKyAgLy8gUmV0dXJucyB0cnVl
IGlmIGFuZCBvbmx5IGlmIHRoZSBtYXRjaGVyIG1hdGNoZXMgeDsgYWxzbyBleHBsYWlucyB0aGUK
KyAgLy8gbWF0Y2ggcmVzdWx0IHRvICdsaXN0ZW5lcicuCisgIGJvb2wgTWF0Y2hBbmRFeHBsYWlu
KGNvbnN0IFQmIHgsIE1hdGNoUmVzdWx0TGlzdGVuZXIqIGxpc3RlbmVyKSBjb25zdCB7CisgICAg
cmV0dXJuIGltcGxfLT5NYXRjaEFuZEV4cGxhaW4oeCwgbGlzdGVuZXIpOworICB9CisKKyAgLy8g
UmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoaXMgbWF0Y2hlciBtYXRjaGVzIHguCisgIGJv
b2wgTWF0Y2hlcyhjb25zdCBUJiB4KSBjb25zdCB7CisgICAgRHVtbXlNYXRjaFJlc3VsdExpc3Rl
bmVyIGR1bW15OworICAgIHJldHVybiBNYXRjaEFuZEV4cGxhaW4oeCwgJmR1bW15KTsKKyAgfQor
CisgIC8vIERlc2NyaWJlcyB0aGlzIG1hdGNoZXIgdG8gYW4gb3N0cmVhbS4KKyAgdm9pZCBEZXNj
cmliZVRvKDo6c3RkOjpvc3RyZWFtKiBvcykgY29uc3QgeyBpbXBsXy0+RGVzY3JpYmVUbyhvcyk7
IH0KKworICAvLyBEZXNjcmliZXMgdGhlIG5lZ2F0aW9uIG9mIHRoaXMgbWF0Y2hlciB0byBhbiBv
c3RyZWFtLgorICB2b2lkIERlc2NyaWJlTmVnYXRpb25Ubyg6OnN0ZDo6b3N0cmVhbSogb3MpIGNv
bnN0IHsKKyAgICBpbXBsXy0+RGVzY3JpYmVOZWdhdGlvblRvKG9zKTsKKyAgfQorCisgIC8vIEV4
cGxhaW5zIHdoeSB4IG1hdGNoZXMsIG9yIGRvZXNuJ3QgbWF0Y2gsIHRoZSBtYXRjaGVyLgorICB2
b2lkIEV4cGxhaW5NYXRjaFJlc3VsdFRvKGNvbnN0IFQmIHgsIDo6c3RkOjpvc3RyZWFtKiBvcykg
Y29uc3QgeworICAgIFN0cmVhbU1hdGNoUmVzdWx0TGlzdGVuZXIgbGlzdGVuZXIob3MpOworICAg
IE1hdGNoQW5kRXhwbGFpbih4LCAmbGlzdGVuZXIpOworICB9CisKKyAgLy8gUmV0dXJucyB0aGUg
ZGVzY3JpYmVyIGZvciB0aGlzIG1hdGNoZXIgb2JqZWN0OyByZXRhaW5zIG93bmVyc2hpcAorICAv
LyBvZiB0aGUgZGVzY3JpYmVyLCB3aGljaCBpcyBvbmx5IGd1YXJhbnRlZWQgdG8gYmUgYWxpdmUg
d2hlbgorICAvLyB0aGlzIG1hdGNoZXIgb2JqZWN0IGlzIGFsaXZlLgorICBjb25zdCBNYXRjaGVy
RGVzY3JpYmVySW50ZXJmYWNlKiBHZXREZXNjcmliZXIoKSBjb25zdCB7CisgICAgcmV0dXJuIGlt
cGxfLmdldCgpOworICB9CisKKyBwcm90ZWN0ZWQ6CisgIE1hdGNoZXJCYXNlKCkge30KKworICAv
LyBDb25zdHJ1Y3RzIGEgbWF0Y2hlciBmcm9tIGl0cyBpbXBsZW1lbnRhdGlvbi4KKyAgZXhwbGlj
aXQgTWF0Y2hlckJhc2UoY29uc3QgTWF0Y2hlckludGVyZmFjZTxjb25zdCBUJj4qIGltcGwpIDog
aW1wbF8oaW1wbCkge30KKworICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVT4KKyAgZXhwbGljaXQgTWF0
Y2hlckJhc2UoCisgICAgICBjb25zdCBNYXRjaGVySW50ZXJmYWNlPFU+KiBpbXBsLAorICAgICAg
dHlwZW5hbWUgc3RkOjplbmFibGVfaWY8IXN0ZDo6aXNfc2FtZTxVLCBjb25zdCBVJj46OnZhbHVl
Pjo6dHlwZSogPQorICAgICAgICAgIG51bGxwdHIpCisgICAgICA6IGltcGxfKG5ldyBpbnRlcm5h
bDo6TWF0Y2hlckludGVyZmFjZUFkYXB0ZXI8VT4oaW1wbCkpIHt9CisKKyAgTWF0Y2hlckJhc2Uo
Y29uc3QgTWF0Y2hlckJhc2UmKSA9IGRlZmF1bHQ7CisgIE1hdGNoZXJCYXNlJiBvcGVyYXRvcj0o
Y29uc3QgTWF0Y2hlckJhc2UmKSA9IGRlZmF1bHQ7CisgIE1hdGNoZXJCYXNlKE1hdGNoZXJCYXNl
JiYpID0gZGVmYXVsdDsKKyAgTWF0Y2hlckJhc2UmIG9wZXJhdG9yPShNYXRjaGVyQmFzZSYmKSA9
IGRlZmF1bHQ7CisKKyAgdmlydHVhbCB+TWF0Y2hlckJhc2UoKSB7fQorCisgcHJpdmF0ZToKKyAg
c3RkOjpzaGFyZWRfcHRyPGNvbnN0IE1hdGNoZXJJbnRlcmZhY2U8Y29uc3QgVCY+PiBpbXBsXzsK
K307CisKK30gIC8vIG5hbWVzcGFjZSBpbnRlcm5hbAorCisvLyBBIE1hdGNoZXI8VD4gaXMgYSBj
b3B5YWJsZSBhbmQgSU1NVVRBQkxFIChleGNlcHQgYnkgYXNzaWdubWVudCkKKy8vIG9iamVjdCB0
aGF0IGNhbiBjaGVjayB3aGV0aGVyIGEgdmFsdWUgb2YgdHlwZSBUIG1hdGNoZXMuICBUaGUKKy8v
IGltcGxlbWVudGF0aW9uIG9mIE1hdGNoZXI8VD4gaXMganVzdCBhIHN0ZDo6c2hhcmVkX3B0ciB0
byBjb25zdAorLy8gTWF0Y2hlckludGVyZmFjZTxUPi4gIERvbid0IGluaGVyaXQgZnJvbSBNYXRj
aGVyIQordGVtcGxhdGUgPHR5cGVuYW1lIFQ+CitjbGFzcyBNYXRjaGVyIDogcHVibGljIGludGVy
bmFsOjpNYXRjaGVyQmFzZTxUPiB7CisgcHVibGljOgorICAvLyBDb25zdHJ1Y3RzIGEgbnVsbCBt
YXRjaGVyLiAgTmVlZGVkIGZvciBzdG9yaW5nIE1hdGNoZXIgb2JqZWN0cyBpbiBTVEwKKyAgLy8g
Y29udGFpbmVycy4gIEEgZGVmYXVsdC1jb25zdHJ1Y3RlZCBtYXRjaGVyIGlzIG5vdCB5ZXQgaW5p
dGlhbGl6ZWQuICBZb3UKKyAgLy8gY2Fubm90IHVzZSBpdCB1bnRpbCBhIHZhbGlkIHZhbHVlIGhh
cyBiZWVuIGFzc2lnbmVkIHRvIGl0LgorICBleHBsaWNpdCBNYXRjaGVyKCkge30gIC8vIE5PTElO
VAorCisgIC8vIENvbnN0cnVjdHMgYSBtYXRjaGVyIGZyb20gaXRzIGltcGxlbWVudGF0aW9uLgor
ICBleHBsaWNpdCBNYXRjaGVyKGNvbnN0IE1hdGNoZXJJbnRlcmZhY2U8Y29uc3QgVCY+KiBpbXBs
KQorICAgICAgOiBpbnRlcm5hbDo6TWF0Y2hlckJhc2U8VD4oaW1wbCkge30KKworICB0ZW1wbGF0
ZSA8dHlwZW5hbWUgVT4KKyAgZXhwbGljaXQgTWF0Y2hlcigKKyAgICAgIGNvbnN0IE1hdGNoZXJJ
bnRlcmZhY2U8VT4qIGltcGwsCisgICAgICB0eXBlbmFtZSBzdGQ6OmVuYWJsZV9pZjwhc3RkOjpp
c19zYW1lPFUsIGNvbnN0IFUmPjo6dmFsdWU+Ojp0eXBlKiA9CisgICAgICAgICAgbnVsbHB0cikK
KyAgICAgIDogaW50ZXJuYWw6Ok1hdGNoZXJCYXNlPFQ+KGltcGwpIHt9CisKKyAgLy8gSW1wbGlj
aXQgY29uc3RydWN0b3IgaGVyZSBhbGxvd3MgcGVvcGxlIHRvIHdyaXRlCisgIC8vIEVYUEVDVF9D
QUxMKGZvbywgQmFyKDUpKSBpbnN0ZWFkIG9mIEVYUEVDVF9DQUxMKGZvbywgQmFyKEVxKDUpKSkg
c29tZXRpbWVzCisgIE1hdGNoZXIoVCB2YWx1ZSk7ICAvLyBOT0xJTlQKK307CisKKy8vIFRoZSBm
b2xsb3dpbmcgdHdvIHNwZWNpYWxpemF0aW9ucyBhbGxvdyB0aGUgdXNlciB0byB3cml0ZSBzdHIK
Ky8vIGluc3RlYWQgb2YgRXEoc3RyKSBhbmQgImZvbyIgaW5zdGVhZCBvZiBFcSgiZm9vIikgd2hl
biBhIHN0ZDo6c3RyaW5nCisvLyBtYXRjaGVyIGlzIGV4cGVjdGVkLgordGVtcGxhdGUgPD4KK2Ns
YXNzIEdURVNUX0FQSV8gTWF0Y2hlcjxjb25zdCBzdGQ6OnN0cmluZyY+CisgICAgOiBwdWJsaWMg
aW50ZXJuYWw6Ok1hdGNoZXJCYXNlPGNvbnN0IHN0ZDo6c3RyaW5nJj4geworIHB1YmxpYzoKKyAg
TWF0Y2hlcigpIHt9CisKKyAgZXhwbGljaXQgTWF0Y2hlcihjb25zdCBNYXRjaGVySW50ZXJmYWNl
PGNvbnN0IHN0ZDo6c3RyaW5nJj4qIGltcGwpCisgICAgICA6IGludGVybmFsOjpNYXRjaGVyQmFz
ZTxjb25zdCBzdGQ6OnN0cmluZyY+KGltcGwpIHt9CisKKyAgLy8gQWxsb3dzIHRoZSB1c2VyIHRv
IHdyaXRlIHN0ciBpbnN0ZWFkIG9mIEVxKHN0cikgc29tZXRpbWVzLCB3aGVyZQorICAvLyBzdHIg
aXMgYSBzdGQ6OnN0cmluZyBvYmplY3QuCisgIE1hdGNoZXIoY29uc3Qgc3RkOjpzdHJpbmcmIHMp
OyAgLy8gTk9MSU5UCisKKyAgLy8gQWxsb3dzIHRoZSB1c2VyIHRvIHdyaXRlICJmb28iIGluc3Rl
YWQgb2YgRXEoImZvbyIpIHNvbWV0aW1lcy4KKyAgTWF0Y2hlcihjb25zdCBjaGFyKiBzKTsgIC8v
IE5PTElOVAorfTsKKwordGVtcGxhdGUgPD4KK2NsYXNzIEdURVNUX0FQSV8gTWF0Y2hlcjxzdGQ6
OnN0cmluZz4KKyAgICA6IHB1YmxpYyBpbnRlcm5hbDo6TWF0Y2hlckJhc2U8c3RkOjpzdHJpbmc+
IHsKKyBwdWJsaWM6CisgIE1hdGNoZXIoKSB7fQorCisgIGV4cGxpY2l0IE1hdGNoZXIoY29uc3Qg
TWF0Y2hlckludGVyZmFjZTxjb25zdCBzdGQ6OnN0cmluZyY+KiBpbXBsKQorICAgICAgOiBpbnRl
cm5hbDo6TWF0Y2hlckJhc2U8c3RkOjpzdHJpbmc+KGltcGwpIHt9CisgIGV4cGxpY2l0IE1hdGNo
ZXIoY29uc3QgTWF0Y2hlckludGVyZmFjZTxzdGQ6OnN0cmluZz4qIGltcGwpCisgICAgICA6IGlu
dGVybmFsOjpNYXRjaGVyQmFzZTxzdGQ6OnN0cmluZz4oaW1wbCkge30KKworICAvLyBBbGxvd3Mg
dGhlIHVzZXIgdG8gd3JpdGUgc3RyIGluc3RlYWQgb2YgRXEoc3RyKSBzb21ldGltZXMsIHdoZXJl
CisgIC8vIHN0ciBpcyBhIHN0cmluZyBvYmplY3QuCisgIE1hdGNoZXIoY29uc3Qgc3RkOjpzdHJp
bmcmIHMpOyAgLy8gTk9MSU5UCisKKyAgLy8gQWxsb3dzIHRoZSB1c2VyIHRvIHdyaXRlICJmb28i
IGluc3RlYWQgb2YgRXEoImZvbyIpIHNvbWV0aW1lcy4KKyAgTWF0Y2hlcihjb25zdCBjaGFyKiBz
KTsgIC8vIE5PTElOVAorfTsKKworI2lmIEdURVNUX0lOVEVSTkFMX0hBU19TVFJJTkdfVklFVwor
Ly8gVGhlIGZvbGxvd2luZyB0d28gc3BlY2lhbGl6YXRpb25zIGFsbG93IHRoZSB1c2VyIHRvIHdy
aXRlIHN0cgorLy8gaW5zdGVhZCBvZiBFcShzdHIpIGFuZCAiZm9vIiBpbnN0ZWFkIG9mIEVxKCJm
b28iKSB3aGVuIGEgYWJzbDo6c3RyaW5nX3ZpZXcKKy8vIG1hdGNoZXIgaXMgZXhwZWN0ZWQuCit0
ZW1wbGF0ZSA8PgorY2xhc3MgR1RFU1RfQVBJXyBNYXRjaGVyPGNvbnN0IGludGVybmFsOjpTdHJp
bmdWaWV3Jj4KKyAgICA6IHB1YmxpYyBpbnRlcm5hbDo6TWF0Y2hlckJhc2U8Y29uc3QgaW50ZXJu
YWw6OlN0cmluZ1ZpZXcmPiB7CisgcHVibGljOgorICBNYXRjaGVyKCkge30KKworICBleHBsaWNp
dCBNYXRjaGVyKGNvbnN0IE1hdGNoZXJJbnRlcmZhY2U8Y29uc3QgaW50ZXJuYWw6OlN0cmluZ1Zp
ZXcmPiogaW1wbCkKKyAgICAgIDogaW50ZXJuYWw6Ok1hdGNoZXJCYXNlPGNvbnN0IGludGVybmFs
OjpTdHJpbmdWaWV3Jj4oaW1wbCkge30KKworICAvLyBBbGxvd3MgdGhlIHVzZXIgdG8gd3JpdGUg
c3RyIGluc3RlYWQgb2YgRXEoc3RyKSBzb21ldGltZXMsIHdoZXJlCisgIC8vIHN0ciBpcyBhIHN0
ZDo6c3RyaW5nIG9iamVjdC4KKyAgTWF0Y2hlcihjb25zdCBzdGQ6OnN0cmluZyYgcyk7ICAvLyBO
T0xJTlQKKworICAvLyBBbGxvd3MgdGhlIHVzZXIgdG8gd3JpdGUgImZvbyIgaW5zdGVhZCBvZiBF
cSgiZm9vIikgc29tZXRpbWVzLgorICBNYXRjaGVyKGNvbnN0IGNoYXIqIHMpOyAgLy8gTk9MSU5U
CisKKyAgLy8gQWxsb3dzIHRoZSB1c2VyIHRvIHBhc3MgYWJzbDo6c3RyaW5nX3ZpZXdzIG9yIHN0
ZDo6c3RyaW5nX3ZpZXdzIGRpcmVjdGx5LgorICBNYXRjaGVyKGludGVybmFsOjpTdHJpbmdWaWV3
IHMpOyAgLy8gTk9MSU5UCit9OworCit0ZW1wbGF0ZSA8PgorY2xhc3MgR1RFU1RfQVBJXyBNYXRj
aGVyPGludGVybmFsOjpTdHJpbmdWaWV3PgorICAgIDogcHVibGljIGludGVybmFsOjpNYXRjaGVy
QmFzZTxpbnRlcm5hbDo6U3RyaW5nVmlldz4geworIHB1YmxpYzoKKyAgTWF0Y2hlcigpIHt9CisK
KyAgZXhwbGljaXQgTWF0Y2hlcihjb25zdCBNYXRjaGVySW50ZXJmYWNlPGNvbnN0IGludGVybmFs
OjpTdHJpbmdWaWV3Jj4qIGltcGwpCisgICAgICA6IGludGVybmFsOjpNYXRjaGVyQmFzZTxpbnRl
cm5hbDo6U3RyaW5nVmlldz4oaW1wbCkge30KKyAgZXhwbGljaXQgTWF0Y2hlcihjb25zdCBNYXRj
aGVySW50ZXJmYWNlPGludGVybmFsOjpTdHJpbmdWaWV3PiogaW1wbCkKKyAgICAgIDogaW50ZXJu
YWw6Ok1hdGNoZXJCYXNlPGludGVybmFsOjpTdHJpbmdWaWV3PihpbXBsKSB7fQorCisgIC8vIEFs
bG93cyB0aGUgdXNlciB0byB3cml0ZSBzdHIgaW5zdGVhZCBvZiBFcShzdHIpIHNvbWV0aW1lcywg
d2hlcmUKKyAgLy8gc3RyIGlzIGEgc3RkOjpzdHJpbmcgb2JqZWN0LgorICBNYXRjaGVyKGNvbnN0
IHN0ZDo6c3RyaW5nJiBzKTsgIC8vIE5PTElOVAorCisgIC8vIEFsbG93cyB0aGUgdXNlciB0byB3
cml0ZSAiZm9vIiBpbnN0ZWFkIG9mIEVxKCJmb28iKSBzb21ldGltZXMuCisgIE1hdGNoZXIoY29u
c3QgY2hhciogcyk7ICAvLyBOT0xJTlQKKworICAvLyBBbGxvd3MgdGhlIHVzZXIgdG8gcGFzcyBh
YnNsOjpzdHJpbmdfdmlld3Mgb3Igc3RkOjpzdHJpbmdfdmlld3MgZGlyZWN0bHkuCisgIE1hdGNo
ZXIoaW50ZXJuYWw6OlN0cmluZ1ZpZXcgcyk7ICAvLyBOT0xJTlQKK307CisjZW5kaWYgIC8vIEdU
RVNUX0lOVEVSTkFMX0hBU19TVFJJTkdfVklFVworCisvLyBQcmludHMgYSBtYXRjaGVyIGluIGEg
aHVtYW4tcmVhZGFibGUgZm9ybWF0LgordGVtcGxhdGUgPHR5cGVuYW1lIFQ+CitzdGQ6Om9zdHJl
YW0mIG9wZXJhdG9yPDwoc3RkOjpvc3RyZWFtJiBvcywgY29uc3QgTWF0Y2hlcjxUPiYgbWF0Y2hl
cikgeworICBtYXRjaGVyLkRlc2NyaWJlVG8oJm9zKTsKKyAgcmV0dXJuIG9zOworfQorCisvLyBU
aGUgUG9seW1vcnBoaWNNYXRjaGVyIGNsYXNzIHRlbXBsYXRlIG1ha2VzIGl0IGVhc3kgdG8gaW1w
bGVtZW50IGEKKy8vIHBvbHltb3JwaGljIG1hdGNoZXIgKGkuZS4gYSBtYXRjaGVyIHRoYXQgY2Fu
IG1hdGNoIHZhbHVlcyBvZiBtb3JlCisvLyB0aGFuIG9uZSB0eXBlLCBlLmcuIEVxKG4pIGFuZCBO
b3ROdWxsKCkpLgorLy8KKy8vIFRvIGRlZmluZSBhIHBvbHltb3JwaGljIG1hdGNoZXIsIGEgdXNl
ciBzaG91bGQgcHJvdmlkZSBhbiBJbXBsCisvLyBjbGFzcyB0aGF0IGhhcyBhIERlc2NyaWJlVG8o
KSBtZXRob2QgYW5kIGEgRGVzY3JpYmVOZWdhdGlvblRvKCkKKy8vIG1ldGhvZCwgYW5kIGRlZmlu
ZSBhIG1lbWJlciBmdW5jdGlvbiAob3IgbWVtYmVyIGZ1bmN0aW9uIHRlbXBsYXRlKQorLy8KKy8v
ICAgYm9vbCBNYXRjaEFuZEV4cGxhaW4oY29uc3QgVmFsdWUmIHZhbHVlLAorLy8gICAgICAgICAg
ICAgICAgICAgICAgICBNYXRjaFJlc3VsdExpc3RlbmVyKiBsaXN0ZW5lcikgY29uc3Q7CisvLwor
Ly8gU2VlIHRoZSBkZWZpbml0aW9uIG9mIE5vdE51bGwoKSBmb3IgYSBjb21wbGV0ZSBleGFtcGxl
LgordGVtcGxhdGUgPGNsYXNzIEltcGw+CitjbGFzcyBQb2x5bW9ycGhpY01hdGNoZXIgeworIHB1
YmxpYzoKKyAgZXhwbGljaXQgUG9seW1vcnBoaWNNYXRjaGVyKGNvbnN0IEltcGwmIGFuX2ltcGwp
IDogaW1wbF8oYW5faW1wbCkge30KKworICAvLyBSZXR1cm5zIGEgbXV0YWJsZSByZWZlcmVuY2Ug
dG8gdGhlIHVuZGVybHlpbmcgbWF0Y2hlcgorICAvLyBpbXBsZW1lbnRhdGlvbiBvYmplY3QuCisg
IEltcGwmIG11dGFibGVfaW1wbCgpIHsgcmV0dXJuIGltcGxfOyB9CisKKyAgLy8gUmV0dXJucyBh
biBpbW11dGFibGUgcmVmZXJlbmNlIHRvIHRoZSB1bmRlcmx5aW5nIG1hdGNoZXIKKyAgLy8gaW1w
bGVtZW50YXRpb24gb2JqZWN0LgorICBjb25zdCBJbXBsJiBpbXBsKCkgY29uc3QgeyByZXR1cm4g
aW1wbF87IH0KKworICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KKyAgb3BlcmF0b3IgTWF0Y2hlcjxU
PigpIGNvbnN0IHsKKyAgICByZXR1cm4gTWF0Y2hlcjxUPihuZXcgTW9ub21vcnBoaWNJbXBsPGNv
bnN0IFQmPihpbXBsXykpOworICB9CisKKyBwcml2YXRlOgorICB0ZW1wbGF0ZSA8dHlwZW5hbWUg
VD4KKyAgY2xhc3MgTW9ub21vcnBoaWNJbXBsIDogcHVibGljIE1hdGNoZXJJbnRlcmZhY2U8VD4g
eworICAgcHVibGljOgorICAgIGV4cGxpY2l0IE1vbm9tb3JwaGljSW1wbChjb25zdCBJbXBsJiBp
bXBsKSA6IGltcGxfKGltcGwpIHt9CisKKyAgICB2b2lkIERlc2NyaWJlVG8oOjpzdGQ6Om9zdHJl
YW0qIG9zKSBjb25zdCBvdmVycmlkZSB7IGltcGxfLkRlc2NyaWJlVG8ob3MpOyB9CisKKyAgICB2
b2lkIERlc2NyaWJlTmVnYXRpb25Ubyg6OnN0ZDo6b3N0cmVhbSogb3MpIGNvbnN0IG92ZXJyaWRl
IHsKKyAgICAgIGltcGxfLkRlc2NyaWJlTmVnYXRpb25Ubyhvcyk7CisgICAgfQorCisgICAgYm9v
bCBNYXRjaEFuZEV4cGxhaW4oVCB4LCBNYXRjaFJlc3VsdExpc3RlbmVyKiBsaXN0ZW5lcikgY29u
c3Qgb3ZlcnJpZGUgeworICAgICAgcmV0dXJuIGltcGxfLk1hdGNoQW5kRXhwbGFpbih4LCBsaXN0
ZW5lcik7CisgICAgfQorCisgICBwcml2YXRlOgorICAgIGNvbnN0IEltcGwgaW1wbF87CisgIH07
CisKKyAgSW1wbCBpbXBsXzsKK307CisKKy8vIENyZWF0ZXMgYSBtYXRjaGVyIGZyb20gaXRzIGlt
cGxlbWVudGF0aW9uLgorLy8gREVQUkVDQVRFRDogRXNwZWNpYWxseSBpbiB0aGUgZ2VuZXJpYyBj
b2RlLCBwcmVmZXI6CisvLyAgIE1hdGNoZXI8VD4obmV3IE15TWF0Y2hlckltcGw8Y29uc3QgVCY+
KC4uLikpOworLy8KKy8vIE1ha2VNYXRjaGVyIG1heSBjcmVhdGUgYSBNYXRjaGVyIHRoYXQgYWNj
ZXB0cyBpdHMgYXJndW1lbnQgYnkgdmFsdWUsIHdoaWNoCisvLyBsZWFkcyB0byB1bm5lY2Vzc2Fy
eSBjb3BpZXMgJiBsYWNrIG9mIHN1cHBvcnQgZm9yIG5vbi1jb3B5YWJsZSB0eXBlcy4KK3RlbXBs
YXRlIDx0eXBlbmFtZSBUPgoraW5saW5lIE1hdGNoZXI8VD4gTWFrZU1hdGNoZXIoY29uc3QgTWF0
Y2hlckludGVyZmFjZTxUPiogaW1wbCkgeworICByZXR1cm4gTWF0Y2hlcjxUPihpbXBsKTsKK30K
KworLy8gQ3JlYXRlcyBhIHBvbHltb3JwaGljIG1hdGNoZXIgZnJvbSBpdHMgaW1wbGVtZW50YXRp
b24uICBUaGlzIGlzCisvLyBlYXNpZXIgdG8gdXNlIHRoYW4gdGhlIFBvbHltb3JwaGljTWF0Y2hl
cjxJbXBsPiBjb25zdHJ1Y3RvciBhcyBpdAorLy8gZG9lc24ndCByZXF1aXJlIHlvdSB0byBleHBs
aWNpdGx5IHdyaXRlIHRoZSB0ZW1wbGF0ZSBhcmd1bWVudCwgZS5nLgorLy8KKy8vICAgTWFrZVBv
bHltb3JwaGljTWF0Y2hlcihmb28pOworLy8gdnMKKy8vICAgUG9seW1vcnBoaWNNYXRjaGVyPFR5
cGVPZkZvbz4oZm9vKTsKK3RlbXBsYXRlIDxjbGFzcyBJbXBsPgoraW5saW5lIFBvbHltb3JwaGlj
TWF0Y2hlcjxJbXBsPiBNYWtlUG9seW1vcnBoaWNNYXRjaGVyKGNvbnN0IEltcGwmIGltcGwpIHsK
KyAgcmV0dXJuIFBvbHltb3JwaGljTWF0Y2hlcjxJbXBsPihpbXBsKTsKK30KKworbmFtZXNwYWNl
IGludGVybmFsIHsKKy8vIEltcGxlbWVudHMgYSBtYXRjaGVyIHRoYXQgY29tcGFyZXMgYSBnaXZl
biB2YWx1ZSB3aXRoIGEKKy8vIHByZS1zdXBwbGllZCB2YWx1ZSB1c2luZyBvbmUgb2YgdGhlID09
LCA8PSwgPCwgZXRjLCBvcGVyYXRvcnMuICBUaGUKKy8vIHR3byB2YWx1ZXMgYmVpbmcgY29tcGFy
ZWQgZG9uJ3QgaGF2ZSB0byBoYXZlIHRoZSBzYW1lIHR5cGUuCisvLworLy8gVGhlIG1hdGNoZXIg
ZGVmaW5lZCBoZXJlIGlzIHBvbHltb3JwaGljIChmb3IgZXhhbXBsZSwgRXEoNSkgY2FuIGJlCisv
LyB1c2VkIHRvIG1hdGNoIGFuIGludCwgYSBzaG9ydCwgYSBkb3VibGUsIGV0YykuICBUaGVyZWZv
cmUgd2UgdXNlCisvLyBhIHRlbXBsYXRlIHR5cGUgY29udmVyc2lvbiBvcGVyYXRvciBpbiB0aGUg
aW1wbGVtZW50YXRpb24uCisvLworLy8gVGhlIGZvbGxvd2luZyB0ZW1wbGF0ZSBkZWZpbml0aW9u
IGFzc3VtZXMgdGhhdCB0aGUgUmhzIHBhcmFtZXRlciBpcworLy8gYSAiYmFyZSIgdHlwZSAoaS5l
LiBuZWl0aGVyICdjb25zdCBUJyBub3IgJ1QmJykuCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRCwgdHlw
ZW5hbWUgUmhzLCB0eXBlbmFtZSBPcD4KK2NsYXNzIENvbXBhcmlzb25CYXNlIHsKKyBwdWJsaWM6
CisgIGV4cGxpY2l0IENvbXBhcmlzb25CYXNlKGNvbnN0IFJocyYgcmhzKSA6IHJoc18ocmhzKSB7
fQorICB0ZW1wbGF0ZSA8dHlwZW5hbWUgTGhzPgorICBvcGVyYXRvciBNYXRjaGVyPExocz4oKSBj
b25zdCB7CisgICAgcmV0dXJuIE1hdGNoZXI8TGhzPihuZXcgSW1wbDxjb25zdCBMaHMmPihyaHNf
KSk7CisgIH0KKworIHByaXZhdGU6CisgIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgorICBzdGF0aWMg
Y29uc3QgVCYgVW53cmFwKGNvbnN0IFQmIHYpIHsgcmV0dXJuIHY7IH0KKyAgdGVtcGxhdGUgPHR5
cGVuYW1lIFQ+CisgIHN0YXRpYyBjb25zdCBUJiBVbndyYXAoc3RkOjpyZWZlcmVuY2Vfd3JhcHBl
cjxUPiB2KSB7IHJldHVybiB2OyB9CisKKyAgdGVtcGxhdGUgPHR5cGVuYW1lIExocywgdHlwZW5h
bWUgPSBSaHM+CisgIGNsYXNzIEltcGwgOiBwdWJsaWMgTWF0Y2hlckludGVyZmFjZTxMaHM+IHsK
KyAgIHB1YmxpYzoKKyAgICBleHBsaWNpdCBJbXBsKGNvbnN0IFJocyYgcmhzKSA6IHJoc18ocmhz
KSB7fQorICAgIGJvb2wgTWF0Y2hBbmRFeHBsYWluKExocyBsaHMsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgTWF0Y2hSZXN1bHRMaXN0ZW5lciogLyogbGlzdGVuZXIgKi8pIGNvbnN0IG92ZXJy
aWRlIHsKKyAgICAgIHJldHVybiBPcCgpKGxocywgVW53cmFwKHJoc18pKTsKKyAgICB9CisgICAg
dm9pZCBEZXNjcmliZVRvKDo6c3RkOjpvc3RyZWFtKiBvcykgY29uc3Qgb3ZlcnJpZGUgeworICAg
ICAgKm9zIDw8IEQ6OkRlc2MoKSA8PCAiICI7CisgICAgICBVbml2ZXJzYWxQcmludChVbndyYXAo
cmhzXyksIG9zKTsKKyAgICB9CisgICAgdm9pZCBEZXNjcmliZU5lZ2F0aW9uVG8oOjpzdGQ6Om9z
dHJlYW0qIG9zKSBjb25zdCBvdmVycmlkZSB7CisgICAgICAqb3MgPDwgRDo6TmVnYXRlZERlc2Mo
KSA8PCAgIiAiOworICAgICAgVW5pdmVyc2FsUHJpbnQoVW53cmFwKHJoc18pLCBvcyk7CisgICAg
fQorCisgICBwcml2YXRlOgorICAgIFJocyByaHNfOworICB9OworICBSaHMgcmhzXzsKK307CisK
K3RlbXBsYXRlIDx0eXBlbmFtZSBSaHM+CitjbGFzcyBFcU1hdGNoZXIgOiBwdWJsaWMgQ29tcGFy
aXNvbkJhc2U8RXFNYXRjaGVyPFJocz4sIFJocywgQW55RXE+IHsKKyBwdWJsaWM6CisgIGV4cGxp
Y2l0IEVxTWF0Y2hlcihjb25zdCBSaHMmIHJocykKKyAgICAgIDogQ29tcGFyaXNvbkJhc2U8RXFN
YXRjaGVyPFJocz4sIFJocywgQW55RXE+KHJocykgeyB9CisgIHN0YXRpYyBjb25zdCBjaGFyKiBE
ZXNjKCkgeyByZXR1cm4gImlzIGVxdWFsIHRvIjsgfQorICBzdGF0aWMgY29uc3QgY2hhciogTmVn
YXRlZERlc2MoKSB7IHJldHVybiAiaXNuJ3QgZXF1YWwgdG8iOyB9Cit9OwordGVtcGxhdGUgPHR5
cGVuYW1lIFJocz4KK2NsYXNzIE5lTWF0Y2hlciA6IHB1YmxpYyBDb21wYXJpc29uQmFzZTxOZU1h
dGNoZXI8UmhzPiwgUmhzLCBBbnlOZT4geworIHB1YmxpYzoKKyAgZXhwbGljaXQgTmVNYXRjaGVy
KGNvbnN0IFJocyYgcmhzKQorICAgICAgOiBDb21wYXJpc29uQmFzZTxOZU1hdGNoZXI8UmhzPiwg
UmhzLCBBbnlOZT4ocmhzKSB7IH0KKyAgc3RhdGljIGNvbnN0IGNoYXIqIERlc2MoKSB7IHJldHVy
biAiaXNuJ3QgZXF1YWwgdG8iOyB9CisgIHN0YXRpYyBjb25zdCBjaGFyKiBOZWdhdGVkRGVzYygp
IHsgcmV0dXJuICJpcyBlcXVhbCB0byI7IH0KK307Cit0ZW1wbGF0ZSA8dHlwZW5hbWUgUmhzPgor
Y2xhc3MgTHRNYXRjaGVyIDogcHVibGljIENvbXBhcmlzb25CYXNlPEx0TWF0Y2hlcjxSaHM+LCBS
aHMsIEFueUx0PiB7CisgcHVibGljOgorICBleHBsaWNpdCBMdE1hdGNoZXIoY29uc3QgUmhzJiBy
aHMpCisgICAgICA6IENvbXBhcmlzb25CYXNlPEx0TWF0Y2hlcjxSaHM+LCBSaHMsIEFueUx0Pihy
aHMpIHsgfQorICBzdGF0aWMgY29uc3QgY2hhciogRGVzYygpIHsgcmV0dXJuICJpcyA8IjsgfQor
ICBzdGF0aWMgY29uc3QgY2hhciogTmVnYXRlZERlc2MoKSB7IHJldHVybiAiaXNuJ3QgPCI7IH0K
K307Cit0ZW1wbGF0ZSA8dHlwZW5hbWUgUmhzPgorY2xhc3MgR3RNYXRjaGVyIDogcHVibGljIENv
bXBhcmlzb25CYXNlPEd0TWF0Y2hlcjxSaHM+LCBSaHMsIEFueUd0PiB7CisgcHVibGljOgorICBl
eHBsaWNpdCBHdE1hdGNoZXIoY29uc3QgUmhzJiByaHMpCisgICAgICA6IENvbXBhcmlzb25CYXNl
PEd0TWF0Y2hlcjxSaHM+LCBSaHMsIEFueUd0PihyaHMpIHsgfQorICBzdGF0aWMgY29uc3QgY2hh
ciogRGVzYygpIHsgcmV0dXJuICJpcyA+IjsgfQorICBzdGF0aWMgY29uc3QgY2hhciogTmVnYXRl
ZERlc2MoKSB7IHJldHVybiAiaXNuJ3QgPiI7IH0KK307Cit0ZW1wbGF0ZSA8dHlwZW5hbWUgUmhz
PgorY2xhc3MgTGVNYXRjaGVyIDogcHVibGljIENvbXBhcmlzb25CYXNlPExlTWF0Y2hlcjxSaHM+
LCBSaHMsIEFueUxlPiB7CisgcHVibGljOgorICBleHBsaWNpdCBMZU1hdGNoZXIoY29uc3QgUmhz
JiByaHMpCisgICAgICA6IENvbXBhcmlzb25CYXNlPExlTWF0Y2hlcjxSaHM+LCBSaHMsIEFueUxl
PihyaHMpIHsgfQorICBzdGF0aWMgY29uc3QgY2hhciogRGVzYygpIHsgcmV0dXJuICJpcyA8PSI7
IH0KKyAgc3RhdGljIGNvbnN0IGNoYXIqIE5lZ2F0ZWREZXNjKCkgeyByZXR1cm4gImlzbid0IDw9
IjsgfQorfTsKK3RlbXBsYXRlIDx0eXBlbmFtZSBSaHM+CitjbGFzcyBHZU1hdGNoZXIgOiBwdWJs
aWMgQ29tcGFyaXNvbkJhc2U8R2VNYXRjaGVyPFJocz4sIFJocywgQW55R2U+IHsKKyBwdWJsaWM6
CisgIGV4cGxpY2l0IEdlTWF0Y2hlcihjb25zdCBSaHMmIHJocykKKyAgICAgIDogQ29tcGFyaXNv
bkJhc2U8R2VNYXRjaGVyPFJocz4sIFJocywgQW55R2U+KHJocykgeyB9CisgIHN0YXRpYyBjb25z
dCBjaGFyKiBEZXNjKCkgeyByZXR1cm4gImlzID49IjsgfQorICBzdGF0aWMgY29uc3QgY2hhciog
TmVnYXRlZERlc2MoKSB7IHJldHVybiAiaXNuJ3QgPj0iOyB9Cit9OworCisvLyBJbXBsZW1lbnRz
IHBvbHltb3JwaGljIG1hdGNoZXJzIE1hdGNoZXNSZWdleChyZWdleCkgYW5kCisvLyBDb250YWlu
c1JlZ2V4KHJlZ2V4KSwgd2hpY2ggY2FuIGJlIHVzZWQgYXMgYSBNYXRjaGVyPFQ+IGFzIGxvbmcg
YXMKKy8vIFQgY2FuIGJlIGNvbnZlcnRlZCB0byBhIHN0cmluZy4KK2NsYXNzIE1hdGNoZXNSZWdl
eE1hdGNoZXIgeworIHB1YmxpYzoKKyAgTWF0Y2hlc1JlZ2V4TWF0Y2hlcihjb25zdCBSRSogcmVn
ZXgsIGJvb2wgZnVsbF9tYXRjaCkKKyAgICAgIDogcmVnZXhfKHJlZ2V4KSwgZnVsbF9tYXRjaF8o
ZnVsbF9tYXRjaCkge30KKworI2lmIEdURVNUX0lOVEVSTkFMX0hBU19TVFJJTkdfVklFVworICBi
b29sIE1hdGNoQW5kRXhwbGFpbihjb25zdCBpbnRlcm5hbDo6U3RyaW5nVmlldyYgcywKKyAgICAg
ICAgICAgICAgICAgICAgICAgTWF0Y2hSZXN1bHRMaXN0ZW5lciogbGlzdGVuZXIpIGNvbnN0IHsK
KyAgICByZXR1cm4gTWF0Y2hBbmRFeHBsYWluKHN0ZDo6c3RyaW5nKHMpLCBsaXN0ZW5lcik7Cisg
IH0KKyNlbmRpZiAgLy8gR1RFU1RfSU5URVJOQUxfSEFTX1NUUklOR19WSUVXCisKKyAgLy8gQWNj
ZXB0cyBwb2ludGVyIHR5cGVzLCBwYXJ0aWN1bGFybHk6CisgIC8vICAgY29uc3QgY2hhcioKKyAg
Ly8gICBjaGFyKgorICAvLyAgIGNvbnN0IHdjaGFyX3QqCisgIC8vICAgd2NoYXJfdCoKKyAgdGVt
cGxhdGUgPHR5cGVuYW1lIENoYXJUeXBlPgorICBib29sIE1hdGNoQW5kRXhwbGFpbihDaGFyVHlw
ZSogcywgTWF0Y2hSZXN1bHRMaXN0ZW5lciogbGlzdGVuZXIpIGNvbnN0IHsKKyAgICByZXR1cm4g
cyAhPSBudWxscHRyICYmIE1hdGNoQW5kRXhwbGFpbihzdGQ6OnN0cmluZyhzKSwgbGlzdGVuZXIp
OworICB9CisKKyAgLy8gTWF0Y2hlcyBhbnl0aGluZyB0aGF0IGNhbiBjb252ZXJ0IHRvIHN0ZDo6
c3RyaW5nLgorICAvLworICAvLyBUaGlzIGlzIGEgdGVtcGxhdGUsIG5vdCBqdXN0IGEgcGxhaW4g
ZnVuY3Rpb24gd2l0aCBjb25zdCBzdGQ6OnN0cmluZyYsCisgIC8vIGJlY2F1c2UgYWJzbDo6c3Ry
aW5nX3ZpZXcgaGFzIHNvbWUgaW50ZXJmZXJpbmcgbm9uLWV4cGxpY2l0IGNvbnN0cnVjdG9ycy4K
KyAgdGVtcGxhdGUgPGNsYXNzIE1hdGNoZWVTdHJpbmdUeXBlPgorICBib29sIE1hdGNoQW5kRXhw
bGFpbihjb25zdCBNYXRjaGVlU3RyaW5nVHlwZSYgcywKKyAgICAgICAgICAgICAgICAgICAgICAg
TWF0Y2hSZXN1bHRMaXN0ZW5lciogLyogbGlzdGVuZXIgKi8pIGNvbnN0IHsKKyAgICBjb25zdCBz
dGQ6OnN0cmluZyYgczIocyk7CisgICAgcmV0dXJuIGZ1bGxfbWF0Y2hfID8gUkU6OkZ1bGxNYXRj
aChzMiwgKnJlZ2V4XykKKyAgICAgICAgICAgICAgICAgICAgICAgOiBSRTo6UGFydGlhbE1hdGNo
KHMyLCAqcmVnZXhfKTsKKyAgfQorCisgIHZvaWQgRGVzY3JpYmVUbyg6OnN0ZDo6b3N0cmVhbSog
b3MpIGNvbnN0IHsKKyAgICAqb3MgPDwgKGZ1bGxfbWF0Y2hfID8gIm1hdGNoZXMiIDogImNvbnRh
aW5zIikgPDwgIiByZWd1bGFyIGV4cHJlc3Npb24gIjsKKyAgICBVbml2ZXJzYWxQcmludGVyPHN0
ZDo6c3RyaW5nPjo6UHJpbnQocmVnZXhfLT5wYXR0ZXJuKCksIG9zKTsKKyAgfQorCisgIHZvaWQg
RGVzY3JpYmVOZWdhdGlvblRvKDo6c3RkOjpvc3RyZWFtKiBvcykgY29uc3QgeworICAgICpvcyA8
PCAiZG9lc24ndCAiIDw8IChmdWxsX21hdGNoXyA/ICJtYXRjaCIgOiAiY29udGFpbiIpCisgICAg
ICAgIDw8ICIgcmVndWxhciBleHByZXNzaW9uICI7CisgICAgVW5pdmVyc2FsUHJpbnRlcjxzdGQ6
OnN0cmluZz46OlByaW50KHJlZ2V4Xy0+cGF0dGVybigpLCBvcyk7CisgIH0KKworIHByaXZhdGU6
CisgIGNvbnN0IHN0ZDo6c2hhcmVkX3B0cjxjb25zdCBSRT4gcmVnZXhfOworICBjb25zdCBib29s
IGZ1bGxfbWF0Y2hfOworfTsKK30gIC8vIG5hbWVzcGFjZSBpbnRlcm5hbAorCisvLyBNYXRjaGVz
IGEgc3RyaW5nIHRoYXQgZnVsbHkgbWF0Y2hlcyByZWd1bGFyIGV4cHJlc3Npb24gJ3JlZ2V4Jy4K
Ky8vIFRoZSBtYXRjaGVyIHRha2VzIG93bmVyc2hpcCBvZiAncmVnZXgnLgoraW5saW5lIFBvbHlt
b3JwaGljTWF0Y2hlcjxpbnRlcm5hbDo6TWF0Y2hlc1JlZ2V4TWF0Y2hlcj4gTWF0Y2hlc1JlZ2V4
KAorICAgIGNvbnN0IGludGVybmFsOjpSRSogcmVnZXgpIHsKKyAgcmV0dXJuIE1ha2VQb2x5bW9y
cGhpY01hdGNoZXIoaW50ZXJuYWw6Ok1hdGNoZXNSZWdleE1hdGNoZXIocmVnZXgsIHRydWUpKTsK
K30KK2lubGluZSBQb2x5bW9ycGhpY01hdGNoZXI8aW50ZXJuYWw6Ok1hdGNoZXNSZWdleE1hdGNo
ZXI+IE1hdGNoZXNSZWdleCgKKyAgICBjb25zdCBzdGQ6OnN0cmluZyYgcmVnZXgpIHsKKyAgcmV0
dXJuIE1hdGNoZXNSZWdleChuZXcgaW50ZXJuYWw6OlJFKHJlZ2V4KSk7Cit9CisKKy8vIE1hdGNo
ZXMgYSBzdHJpbmcgdGhhdCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gJ3JlZ2V4Jy4KKy8v
IFRoZSBtYXRjaGVyIHRha2VzIG93bmVyc2hpcCBvZiAncmVnZXgnLgoraW5saW5lIFBvbHltb3Jw
aGljTWF0Y2hlcjxpbnRlcm5hbDo6TWF0Y2hlc1JlZ2V4TWF0Y2hlcj4gQ29udGFpbnNSZWdleCgK
KyAgICBjb25zdCBpbnRlcm5hbDo6UkUqIHJlZ2V4KSB7CisgIHJldHVybiBNYWtlUG9seW1vcnBo
aWNNYXRjaGVyKGludGVybmFsOjpNYXRjaGVzUmVnZXhNYXRjaGVyKHJlZ2V4LCBmYWxzZSkpOwor
fQoraW5saW5lIFBvbHltb3JwaGljTWF0Y2hlcjxpbnRlcm5hbDo6TWF0Y2hlc1JlZ2V4TWF0Y2hl
cj4gQ29udGFpbnNSZWdleCgKKyAgICBjb25zdCBzdGQ6OnN0cmluZyYgcmVnZXgpIHsKKyAgcmV0
dXJuIENvbnRhaW5zUmVnZXgobmV3IGludGVybmFsOjpSRShyZWdleCkpOworfQorCisvLyBDcmVh
dGVzIGEgcG9seW1vcnBoaWMgbWF0Y2hlciB0aGF0IG1hdGNoZXMgYW55dGhpbmcgZXF1YWwgdG8g
eC4KKy8vIE5vdGU6IGlmIHRoZSBwYXJhbWV0ZXIgb2YgRXEoKSB3ZXJlIGRlY2xhcmVkIGFzIGNv
bnN0IFQmLCBFcSgiZm9vIikKKy8vIHdvdWxkbid0IGNvbXBpbGUuCit0ZW1wbGF0ZSA8dHlwZW5h
bWUgVD4KK2lubGluZSBpbnRlcm5hbDo6RXFNYXRjaGVyPFQ+IEVxKFQgeCkgeyByZXR1cm4gaW50
ZXJuYWw6OkVxTWF0Y2hlcjxUPih4KTsgfQorCisvLyBDb25zdHJ1Y3RzIGEgTWF0Y2hlcjxUPiBm
cm9tIGEgJ3ZhbHVlJyBvZiB0eXBlIFQuICBUaGUgY29uc3RydWN0ZWQKKy8vIG1hdGNoZXIgbWF0
Y2hlcyBhbnkgdmFsdWUgdGhhdCdzIGVxdWFsIHRvICd2YWx1ZScuCit0ZW1wbGF0ZSA8dHlwZW5h
bWUgVD4KK01hdGNoZXI8VD46Ok1hdGNoZXIoVCB2YWx1ZSkgeyAqdGhpcyA9IEVxKHZhbHVlKTsg
fQorCisvLyBDcmVhdGVzIGEgbW9ub21vcnBoaWMgbWF0Y2hlciB0aGF0IG1hdGNoZXMgYW55dGhp
bmcgd2l0aCB0eXBlIExocworLy8gYW5kIGVxdWFsIHRvIHJocy4gIEEgdXNlciBtYXkgbmVlZCB0
byB1c2UgdGhpcyBpbnN0ZWFkIG9mIEVxKC4uLikKKy8vIGluIG9yZGVyIHRvIHJlc29sdmUgYW4g
b3ZlcmxvYWRpbmcgYW1iaWd1aXR5LgorLy8KKy8vIFR5cGVkRXE8VD4oeCkgaXMganVzdCBhIGNv
bnZlbmllbnQgc2hvcnQtaGFuZCBmb3IgTWF0Y2hlcjxUPihFcSh4KSkKKy8vIG9yIE1hdGNoZXI8
VD4oeCksIGJ1dCBtb3JlIHJlYWRhYmxlIHRoYW4gdGhlIGxhdHRlci4KKy8vCisvLyBXZSBjb3Vs
ZCBkZWZpbmUgc2ltaWxhciBtb25vbW9ycGhpYyBtYXRjaGVycyBmb3Igb3RoZXIgY29tcGFyaXNv
bgorLy8gb3BlcmF0aW9ucyAoZS5nLiBUeXBlZEx0LCBUeXBlZEdlLCBhbmQgZXRjKSwgYnV0IGRl
Y2lkZWQgbm90IHRvIGRvCisvLyBpdCB5ZXQgYXMgdGhvc2UgYXJlIHVzZWQgbXVjaCBsZXNzIHRo
YW4gRXEoKSBpbiBwcmFjdGljZS4gIEEgdXNlcgorLy8gY2FuIGFsd2F5cyB3cml0ZSBNYXRjaGVy
PFQ+KEx0KDUpKSB0byBiZSBleHBsaWNpdCBhYm91dCB0aGUgdHlwZSwKKy8vIGZvciBleGFtcGxl
LgordGVtcGxhdGUgPHR5cGVuYW1lIExocywgdHlwZW5hbWUgUmhzPgoraW5saW5lIE1hdGNoZXI8
TGhzPiBUeXBlZEVxKGNvbnN0IFJocyYgcmhzKSB7IHJldHVybiBFcShyaHMpOyB9CisKKy8vIENy
ZWF0ZXMgYSBwb2x5bW9ycGhpYyBtYXRjaGVyIHRoYXQgbWF0Y2hlcyBhbnl0aGluZyA+PSB4Lgor
dGVtcGxhdGUgPHR5cGVuYW1lIFJocz4KK2lubGluZSBpbnRlcm5hbDo6R2VNYXRjaGVyPFJocz4g
R2UoUmhzIHgpIHsKKyAgcmV0dXJuIGludGVybmFsOjpHZU1hdGNoZXI8UmhzPih4KTsKK30KKwor
Ly8gQ3JlYXRlcyBhIHBvbHltb3JwaGljIG1hdGNoZXIgdGhhdCBtYXRjaGVzIGFueXRoaW5nID4g
eC4KK3RlbXBsYXRlIDx0eXBlbmFtZSBSaHM+CitpbmxpbmUgaW50ZXJuYWw6Okd0TWF0Y2hlcjxS
aHM+IEd0KFJocyB4KSB7CisgIHJldHVybiBpbnRlcm5hbDo6R3RNYXRjaGVyPFJocz4oeCk7Cit9
CisKKy8vIENyZWF0ZXMgYSBwb2x5bW9ycGhpYyBtYXRjaGVyIHRoYXQgbWF0Y2hlcyBhbnl0aGlu
ZyA8PSB4LgordGVtcGxhdGUgPHR5cGVuYW1lIFJocz4KK2lubGluZSBpbnRlcm5hbDo6TGVNYXRj
aGVyPFJocz4gTGUoUmhzIHgpIHsKKyAgcmV0dXJuIGludGVybmFsOjpMZU1hdGNoZXI8UmhzPih4
KTsKK30KKworLy8gQ3JlYXRlcyBhIHBvbHltb3JwaGljIG1hdGNoZXIgdGhhdCBtYXRjaGVzIGFu
eXRoaW5nIDwgeC4KK3RlbXBsYXRlIDx0eXBlbmFtZSBSaHM+CitpbmxpbmUgaW50ZXJuYWw6Okx0
TWF0Y2hlcjxSaHM+IEx0KFJocyB4KSB7CisgIHJldHVybiBpbnRlcm5hbDo6THRNYXRjaGVyPFJo
cz4oeCk7Cit9CisKKy8vIENyZWF0ZXMgYSBwb2x5bW9ycGhpYyBtYXRjaGVyIHRoYXQgbWF0Y2hl
cyBhbnl0aGluZyAhPSB4LgordGVtcGxhdGUgPHR5cGVuYW1lIFJocz4KK2lubGluZSBpbnRlcm5h
bDo6TmVNYXRjaGVyPFJocz4gTmUoUmhzIHgpIHsKKyAgcmV0dXJuIGludGVybmFsOjpOZU1hdGNo
ZXI8UmhzPih4KTsKK30KK30gIC8vIG5hbWVzcGFjZSB0ZXN0aW5nCisKK0dURVNUX0RJU0FCTEVf
TVNDX1dBUk5JTkdTX1BPUF8oKSAgLy8gIDQyNTEgNTA0NgorCisjZW5kaWYgIC8vIEdURVNUX0lO
Q0xVREVfR1RFU1RfR1RFU1RfTUFUQ0hFUlNfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhp
cmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9ndGVzdC1tZXNzYWdlLmggYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3Qt
bWVzc2FnZS5oCmluZGV4IDVjYTA0MTYxNGNiMzU1OTIyZjM1NWI4OTNmOWM4NGEzYjdmNTJjNmYu
LjIxODk5MjMyYTI1ZGI4YmVhNjkyMDY4OWRmNmU1ZjAxZjVmMjljODEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9ndGVzdC1t
ZXNzYWdlLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNs
dWRlL2d0ZXN0L2d0ZXN0LW1lc3NhZ2UuaApAQCAtNDgsNiArNDgsOCBAQAogI2RlZmluZSBHVEVT
VF9JTkNMVURFX0dURVNUX0dURVNUX01FU1NBR0VfSF8KIAogI2luY2x1ZGUgPGxpbWl0cz4KKyNp
bmNsdWRlIDxtZW1vcnk+CisjaW5jbHVkZSA8c3N0cmVhbT4KIAogI2luY2x1ZGUgImd0ZXN0L2lu
dGVybmFsL2d0ZXN0LXBvcnQuaCIKIApAQCAtMTA2LDE0ICsxMDgsNiBAQCBjbGFzcyBHVEVTVF9B
UElfIE1lc3NhZ2UgewogICAgICpzc18gPDwgc3RyOwogICB9CiAKLSNpZiBHVEVTVF9PU19TWU1C
SUFOCi0gIC8vIFN0cmVhbXMgYSB2YWx1ZSAoZWl0aGVyIGEgcG9pbnRlciBvciBub3QpIHRvIHRo
aXMgb2JqZWN0LgotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgaW5saW5lIE1lc3NhZ2UmIG9w
ZXJhdG9yIDw8KGNvbnN0IFQmIHZhbHVlKSB7Ci0gICAgU3RyZWFtSGVscGVyKHR5cGVuYW1lIGlu
dGVybmFsOjppc19wb2ludGVyPFQ+Ojp0eXBlKCksIHZhbHVlKTsKLSAgICByZXR1cm4gKnRoaXM7
Ci0gIH0KLSNlbHNlCiAgIC8vIFN0cmVhbXMgYSBub24tcG9pbnRlciB2YWx1ZSB0byB0aGlzIG9i
amVjdC4KICAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+CiAgIGlubGluZSBNZXNzYWdlJiBvcGVyYXRv
ciA8PChjb25zdCBUJiB2YWwpIHsKQEAgLTE1MSwxNCArMTQ1LDEzIEBAIGNsYXNzIEdURVNUX0FQ
SV8gTWVzc2FnZSB7CiAgIC8vIGFzICIobnVsbCkiLgogICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4K
ICAgaW5saW5lIE1lc3NhZ2UmIG9wZXJhdG9yIDw8KFQqIGNvbnN0JiBwb2ludGVyKSB7ICAvLyBO
T0xJTlQKLSAgICBpZiAocG9pbnRlciA9PSBOVUxMKSB7CisgICAgaWYgKHBvaW50ZXIgPT0gbnVs
bHB0cikgewogICAgICAgKnNzXyA8PCAiKG51bGwpIjsKICAgICB9IGVsc2UgewogICAgICAgKnNz
XyA8PCBwb2ludGVyOwogICAgIH0KICAgICByZXR1cm4gKnRoaXM7CiAgIH0KLSNlbmRpZiAgLy8g
R1RFU1RfT1NfU1lNQklBTgogCiAgIC8vIFNpbmNlIHRoZSBiYXNpYyBJTyBtYW5pcHVsYXRvcnMg
YXJlIG92ZXJsb2FkZWQgZm9yIGJvdGggbmFycm93CiAgIC8vIGFuZCB3aWRlIHN0cmVhbXMsIHdl
IGhhdmUgdG8gcHJvdmlkZSB0aGlzIHNwZWNpYWxpemVkIGRlZmluaXRpb24KQEAgLTE4NywxMiAr
MTgwLDYgQEAgY2xhc3MgR1RFU1RfQVBJXyBNZXNzYWdlIHsKICAgTWVzc2FnZSYgb3BlcmF0b3Ig
PDwoY29uc3QgOjpzdGQ6OndzdHJpbmcmIHdzdHIpOwogI2VuZGlmICAvLyBHVEVTVF9IQVNfU1RE
X1dTVFJJTkcKIAotI2lmIEdURVNUX0hBU19HTE9CQUxfV1NUUklORwotICAvLyBDb252ZXJ0cyB0
aGUgZ2l2ZW4gd2lkZSBzdHJpbmcgdG8gYSBuYXJyb3cgc3RyaW5nIHVzaW5nIHRoZSBVVEYtOAot
ICAvLyBlbmNvZGluZywgYW5kIHN0cmVhbXMgdGhlIHJlc3VsdCB0byB0aGlzIE1lc3NhZ2Ugb2Jq
ZWN0LgotICBNZXNzYWdlJiBvcGVyYXRvciA8PChjb25zdCA6OndzdHJpbmcmIHdzdHIpOwotI2Vu
ZGlmICAvLyBHVEVTVF9IQVNfR0xPQkFMX1dTVFJJTkcKLQogICAvLyBHZXRzIHRoZSB0ZXh0IHN0
cmVhbWVkIHRvIHRoaXMgb2JqZWN0IHNvIGZhciBhcyBhbiBzdGQ6OnN0cmluZy4KICAgLy8gRWFj
aCAnXDAnIGNoYXJhY3RlciBpbiB0aGUgYnVmZmVyIGlzIHJlcGxhY2VkIHdpdGggIlxcMCIuCiAg
IC8vCkBAIC0yMDAsMzEgKzE4Nyw4IEBAIGNsYXNzIEdURVNUX0FQSV8gTWVzc2FnZSB7CiAgIHN0
ZDo6c3RyaW5nIEdldFN0cmluZygpIGNvbnN0OwogCiAgcHJpdmF0ZToKLSNpZiBHVEVTVF9PU19T
WU1CSUFOCi0gIC8vIFRoZXNlIGFyZSBuZWVkZWQgYXMgdGhlIE5va2lhIFN5bWJpYW4gQ29tcGls
ZXIgY2Fubm90IGRlY2lkZSBiZXR3ZWVuCi0gIC8vIGNvbnN0IFQmIGFuZCBjb25zdCBUKiBpbiBh
IGZ1bmN0aW9uIHRlbXBsYXRlLiBUaGUgTm9raWEgY29tcGlsZXIgX2Nhbl8KLSAgLy8gZGVjaWRl
IGJldHdlZW4gY2xhc3MgdGVtcGxhdGUgc3BlY2lhbGl6YXRpb25zIGZvciBUIGFuZCBUKiwgc28g
YQotICAvLyB0cjE6OnR5cGVfdHJhaXRzLWxpa2UgaXNfcG9pbnRlciB3b3JrcywgYW5kIHdlIGNh
biBvdmVybG9hZCBvbiB0aGF0LgotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgaW5saW5lIHZv
aWQgU3RyZWFtSGVscGVyKGludGVybmFsOjp0cnVlX3R5cGUgLyppc19wb2ludGVyKi8sIFQqIHBv
aW50ZXIpIHsKLSAgICBpZiAocG9pbnRlciA9PSBOVUxMKSB7Ci0gICAgICAqc3NfIDw8ICIobnVs
bCkiOwotICAgIH0gZWxzZSB7Ci0gICAgICAqc3NfIDw8IHBvaW50ZXI7Ci0gICAgfQotICB9Ci0g
IHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBpbmxpbmUgdm9pZCBTdHJlYW1IZWxwZXIoaW50ZXJu
YWw6OmZhbHNlX3R5cGUgLyppc19wb2ludGVyKi8sCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBUJiB2YWx1ZSkgewotICAgIC8vIFNlZSB0aGUgY29tbWVudHMgaW4gTWVzc2FnZSYg
b3BlcmF0b3IgPDwoY29uc3QgVCYpIGFib3ZlIGZvciB3aHkKLSAgICAvLyB3ZSBuZWVkIHRoaXMg
dXNpbmcgc3RhdGVtZW50LgotICAgIHVzaW5nIDo6b3BlcmF0b3IgPDw7Ci0gICAgKnNzXyA8PCB2
YWx1ZTsKLSAgfQotI2VuZGlmICAvLyBHVEVTVF9PU19TWU1CSUFOCi0KICAgLy8gV2UnbGwgaG9s
ZCB0aGUgdGV4dCBzdHJlYW1lZCB0byB0aGlzIG9iamVjdCBoZXJlLgotICBjb25zdCBpbnRlcm5h
bDo6c2NvcGVkX3B0cjwgOjpzdGQ6OnN0cmluZ3N0cmVhbT4gc3NfOworICBjb25zdCBzdGQ6OnVu
aXF1ZV9wdHI8IDo6c3RkOjpzdHJpbmdzdHJlYW0+IHNzXzsKIAogICAvLyBXZSBkZWNsYXJlIChi
dXQgZG9uJ3QgaW1wbGVtZW50KSB0aGlzIHRvIHByZXZlbnQgdGhlIGNvbXBpbGVyCiAgIC8vIGZy
b20gaW1wbGVtZW50aW5nIHRoZSBhc3NpZ25tZW50IG9wZXJhdG9yLgpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2d0ZXN0LXBh
cmFtLXRlc3QuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVk
ZS9ndGVzdC9ndGVzdC1wYXJhbS10ZXN0LmgKaW5kZXggM2U5NWU0MzkwZTAwZTExNjMxMGE0MjM4
M2QyZTMwYjU4ZWRhNWYwZC4uNWIwMzlkZjlmNmUxY2JiMGQwNGQ5OWEzNWY0ZGFkY2NlYmY1ZTUz
OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNs
dWRlL2d0ZXN0L2d0ZXN0LXBhcmFtLXRlc3QuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5
L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QtcGFyYW0tdGVzdC5oCkBAIC0xLDcg
KzEsMyBAQAotLy8gVGhpcyBmaWxlIHdhcyBHRU5FUkFURUQgYnkgY29tbWFuZDoKLS8vICAgICBw
dW1wLnB5IGd0ZXN0LXBhcmFtLXRlc3QuaC5wdW1wCi0vLyBETyBOT1QgRURJVCBCWSBIQU5EISEh
Ci0KIC8vIENvcHlyaWdodCAyMDA4LCBHb29nbGUgSW5jLgogLy8gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KIC8vCkBAIC03NSw3ICs3MSw3IEBAIFRFU1RfUChGb29UZXN0LCBIYXNCbGFoQmxhaCkgewog
ICAuLi4KIH0KIAotLy8gRmluYWxseSwgeW91IGNhbiB1c2UgSU5TVEFOVElBVEVfVEVTVF9DQVNF
X1AgdG8gaW5zdGFudGlhdGUgdGhlIHRlc3QKKy8vIEZpbmFsbHksIHlvdSBjYW4gdXNlIElOU1RB
TlRJQVRFX1RFU1RfU1VJVEVfUCB0byBpbnN0YW50aWF0ZSB0aGUgdGVzdAogLy8gY2FzZSB3aXRo
IGFueSBzZXQgb2YgcGFyYW1ldGVycyB5b3Ugd2FudC4gR29vZ2xlIFRlc3QgZGVmaW5lcyBhIG51
bWJlcgogLy8gb2YgZnVuY3Rpb25zIGZvciBnZW5lcmF0aW5nIHRlc3QgcGFyYW1ldGVycy4gVGhl
eSByZXR1cm4gd2hhdCB3ZSBjYWxsCiAvLyAoc3VycHJpc2UhKSBwYXJhbWV0ZXIgZ2VuZXJhdG9y
cy4gSGVyZSBpcyBhIHN1bW1hcnkgb2YgdGhlbSwgd2hpY2gKQEAgLTk2LDE3ICs5MiwxNyBAQCBU
RVNUX1AoRm9vVGVzdCwgSGFzQmxhaEJsYWgpIHsKIC8vIEZvciBtb3JlIGRldGFpbHMsIHNlZSBj
b21tZW50cyBhdCB0aGUgZGVmaW5pdGlvbnMgb2YgdGhlc2UgZnVuY3Rpb25zIGJlbG93CiAvLyBp
biB0aGlzIGZpbGUuCiAvLwotLy8gVGhlIGZvbGxvd2luZyBzdGF0ZW1lbnQgd2lsbCBpbnN0YW50
aWF0ZSB0ZXN0cyBmcm9tIHRoZSBGb29UZXN0IHRlc3QgY2FzZQorLy8gVGhlIGZvbGxvd2luZyBz
dGF0ZW1lbnQgd2lsbCBpbnN0YW50aWF0ZSB0ZXN0cyBmcm9tIHRoZSBGb29UZXN0IHRlc3Qgc3Vp
dGUKIC8vIGVhY2ggd2l0aCBwYXJhbWV0ZXIgdmFsdWVzICJtZWVueSIsICJtaW55IiwgYW5kICJt
b2UiLgogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChJbnN0YW50aWF0aW9uTmFtZSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgIEZvb1Rlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICBWYWx1
ZXMoIm1lZW55IiwgIm1pbnkiLCAibW9lIikpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKElu
c3RhbnRpYXRpb25OYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgIEZvb1Rlc3QsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgVmFsdWVzKCJtZWVueSIsICJtaW55IiwgIm1vZSIpKTsKIAog
Ly8gVG8gZGlzdGluZ3Vpc2ggZGlmZmVyZW50IGluc3RhbmNlcyBvZiB0aGUgcGF0dGVybiwgKHll
cywgeW91Ci0vLyBjYW4gaW5zdGFudGlhdGUgaXQgbW9yZSB0aGVuIG9uY2UpIHRoZSBmaXJzdCBh
cmd1bWVudCB0byB0aGUKLS8vIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QIG1hY3JvIGlzIGEgcHJl
Zml4IHRoYXQgd2lsbCBiZSBhZGRlZCB0byB0aGUKLS8vIGFjdHVhbCB0ZXN0IGNhc2UgbmFtZS4g
UmVtZW1iZXIgdG8gcGljayB1bmlxdWUgcHJlZml4ZXMgZm9yIGRpZmZlcmVudAorLy8gY2FuIGlu
c3RhbnRpYXRlIGl0IG1vcmUgdGhhbiBvbmNlKSB0aGUgZmlyc3QgYXJndW1lbnQgdG8gdGhlCisv
LyBJTlNUQU5USUFURV9URVNUX1NVSVRFX1AgbWFjcm8gaXMgYSBwcmVmaXggdGhhdCB3aWxsIGJl
IGFkZGVkIHRvIHRoZQorLy8gYWN0dWFsIHRlc3Qgc3VpdGUgbmFtZS4gUmVtZW1iZXIgdG8gcGlj
ayB1bmlxdWUgcHJlZml4ZXMgZm9yIGRpZmZlcmVudAogLy8gaW5zdGFudGlhdGlvbnMuIFRoZSB0
ZXN0cyBmcm9tIHRoZSBpbnN0YW50aWF0aW9uIGFib3ZlIHdpbGwgaGF2ZQogLy8gdGhlc2UgbmFt
ZXM6CiAvLwpAQCAtMTIzLDcgKzExOSw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEluc3Rh
bnRpYXRpb25OYW1lLAogLy8gd2l0aCBwYXJhbWV0ZXIgdmFsdWVzICJjYXQiIGFuZCAiZG9nIjoK
IAogY29uc3QgY2hhciogcGV0c1tdID0geyJjYXQiLCAiZG9nIn07Ci1JTlNUQU5USUFURV9URVNU
X0NBU0VfUChBbm90aGVySW5zdGFudGlhdGlvbk5hbWUsIEZvb1Rlc3QsIFZhbHVlc0luKHBldHMp
KTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChBbm90aGVySW5zdGFudGlhdGlvbk5hbWUsIEZv
b1Rlc3QsIFZhbHVlc0luKHBldHMpKTsKIAogLy8gVGhlIHRlc3RzIGZyb20gdGhlIGluc3RhbnRp
YXRpb24gYWJvdmUgd2lsbCBoYXZlIHRoZXNlIG5hbWVzOgogLy8KQEAgLTEzMiw5ICsxMjgsOSBA
QCBJTlNUQU5USUFURV9URVNUX0NBU0VfUChBbm90aGVySW5zdGFudGlhdGlvbk5hbWUsIEZvb1Rl
c3QsIFZhbHVlc0luKHBldHMpKTsKIC8vICAgICogQW5vdGhlckluc3RhbnRpYXRpb25OYW1lL0Zv
b1Rlc3QuSGFzQmxhaEJsYWgvMCBmb3IgImNhdCIKIC8vICAgICogQW5vdGhlckluc3RhbnRpYXRp
b25OYW1lL0Zvb1Rlc3QuSGFzQmxhaEJsYWgvMSBmb3IgImRvZyIKIC8vCi0vLyBQbGVhc2Ugbm90
ZSB0aGF0IElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QIHdpbGwgaW5zdGFudGlhdGUgYWxsIHRlc3Rz
Ci0vLyBpbiB0aGUgZ2l2ZW4gdGVzdCBjYXNlLCB3aGV0aGVyIHRoZWlyIGRlZmluaXRpb25zIGNv
bWUgYmVmb3JlIG9yCi0vLyBBRlRFUiB0aGUgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1Agc3RhdGVt
ZW50LgorLy8gUGxlYXNlIG5vdGUgdGhhdCBJTlNUQU5USUFURV9URVNUX1NVSVRFX1Agd2lsbCBp
bnN0YW50aWF0ZSBhbGwgdGVzdHMKKy8vIGluIHRoZSBnaXZlbiB0ZXN0IHN1aXRlLCB3aGV0aGVy
IHRoZWlyIGRlZmluaXRpb25zIGNvbWUgYmVmb3JlIG9yCisvLyBBRlRFUiB0aGUgSU5TVEFOVElB
VEVfVEVTVF9TVUlURV9QIHN0YXRlbWVudC4KIC8vCiAvLyBQbGVhc2UgYWxzbyBub3RlIHRoYXQg
Z2VuZXJhdG9yIGV4cHJlc3Npb25zIChpbmNsdWRpbmcgcGFyYW1ldGVycyB0byB0aGUKIC8vIGdl
bmVyYXRvcnMpIGFyZSBldmFsdWF0ZWQgaW4gSW5pdEdvb2dsZVRlc3QoKSwgYWZ0ZXIgbWFpbigp
IGhhcyBzdGFydGVkLgpAQCAtMTc4LDI2ICsxNzQsMjMgQEAgVEVTVF9QKERlcml2ZWRUZXN0LCBE
b2VzQmxhaCkgewogCiAjZW5kaWYgIC8vIDAKIAotI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0
ZXN0LXBvcnQuaCIKLQotI2lmICFHVEVTVF9PU19TWU1CSUFOCi0jIGluY2x1ZGUgPHV0aWxpdHk+
Ci0jZW5kaWYKKyNpbmNsdWRlIDxpdGVyYXRvcj4KKyNpbmNsdWRlIDx1dGlsaXR5PgogCiAjaW5j
bHVkZSAiZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtaW50ZXJuYWwuaCIKICNpbmNsdWRlICJndGVzdC9p
bnRlcm5hbC9ndGVzdC1wYXJhbS11dGlsLmgiCi0jaW5jbHVkZSAiZ3Rlc3QvaW50ZXJuYWwvZ3Rl
c3QtcGFyYW0tdXRpbC1nZW5lcmF0ZWQuaCIKKyNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9ndGVz
dC1wb3J0LmgiCiAKIG5hbWVzcGFjZSB0ZXN0aW5nIHsKIAogLy8gRnVuY3Rpb25zIHByb2R1Y2lu
ZyBwYXJhbWV0ZXIgZ2VuZXJhdG9ycy4KIC8vCiAvLyBHb29nbGUgVGVzdCB1c2VzIHRoZXNlIGdl
bmVyYXRvcnMgdG8gcHJvZHVjZSBwYXJhbWV0ZXJzIGZvciB2YWx1ZS0KLS8vIHBhcmFtZXRlcml6
ZWQgdGVzdHMuIFdoZW4gYSBwYXJhbWV0ZXJpemVkIHRlc3QgY2FzZSBpcyBpbnN0YW50aWF0ZWQK
Ky8vIHBhcmFtZXRlcml6ZWQgdGVzdHMuIFdoZW4gYSBwYXJhbWV0ZXJpemVkIHRlc3Qgc3VpdGUg
aXMgaW5zdGFudGlhdGVkCiAvLyB3aXRoIGEgcGFydGljdWxhciBnZW5lcmF0b3IsIEdvb2dsZSBU
ZXN0IGNyZWF0ZXMgYW5kIHJ1bnMgdGVzdHMKIC8vIGZvciBlYWNoIGVsZW1lbnQgaW4gdGhlIHNl
cXVlbmNlIHByb2R1Y2VkIGJ5IHRoZSBnZW5lcmF0b3IuCiAvLwotLy8gSW4gdGhlIGZvbGxvd2lu
ZyBzYW1wbGUsIHRlc3RzIGZyb20gdGVzdCBjYXNlIEZvb1Rlc3QgYXJlIGluc3RhbnRpYXRlZAor
Ly8gSW4gdGhlIGZvbGxvd2luZyBzYW1wbGUsIHRlc3RzIGZyb20gdGVzdCBzdWl0ZSBGb29UZXN0
IGFyZSBpbnN0YW50aWF0ZWQKIC8vIGVhY2ggdGhyZWUgdGltZXMgd2l0aCBwYXJhbWV0ZXIgdmFs
dWVzIDMsIDUsIGFuZCA4OgogLy8KIC8vIGNsYXNzIEZvb1Rlc3QgOiBwdWJsaWMgVGVzdFdpdGhQ
YXJhbTxpbnQ+IHsgLi4uIH07CkBAIC0yMDYsNyArMTk5LDcgQEAgbmFtZXNwYWNlIHRlc3Rpbmcg
ewogLy8gfQogLy8gVEVTVF9QKEZvb1Rlc3QsIFRlc3RUaGF0KSB7CiAvLyB9Ci0vLyBJTlNUQU5U
SUFURV9URVNUX0NBU0VfUChUZXN0U2VxdWVuY2UsIEZvb1Rlc3QsIFZhbHVlcygzLCA1LCA4KSk7
CisvLyBJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoVGVzdFNlcXVlbmNlLCBGb29UZXN0LCBWYWx1
ZXMoMywgNSwgOCkpOwogLy8KIAogLy8gUmFuZ2UoKSByZXR1cm5zIGdlbmVyYXRvcnMgcHJvdmlk
aW5nIHNlcXVlbmNlcyBvZiB2YWx1ZXMgaW4gYSByYW5nZS4KQEAgLTI2MywxMyArMjU2LDEzIEBA
IGludGVybmFsOjpQYXJhbUdlbmVyYXRvcjxUPiBSYW5nZShUIHN0YXJ0LCBUIGVuZCkgewogLy8K
IC8vIEV4YW1wbGVzOgogLy8KLS8vIFRoaXMgaW5zdGFudGlhdGVzIHRlc3RzIGZyb20gdGVzdCBj
YXNlIFN0cmluZ1Rlc3QKKy8vIFRoaXMgaW5zdGFudGlhdGVzIHRlc3RzIGZyb20gdGVzdCBzdWl0
ZSBTdHJpbmdUZXN0CiAvLyBlYWNoIHdpdGggQy1zdHJpbmcgdmFsdWVzIG9mICJmb28iLCAiYmFy
IiwgYW5kICJiYXoiOgogLy8KIC8vIGNvbnN0IGNoYXIqIHN0cmluZ3NbXSA9IHsiZm9vIiwgImJh
ciIsICJiYXoifTsKLS8vIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKFN0cmluZ1NlcXVlbmNlLCBT
dHJpbmdUZXN0LCBWYWx1ZXNJbihzdHJpbmdzKSk7CisvLyBJTlNUQU5USUFURV9URVNUX1NVSVRF
X1AoU3RyaW5nU2VxdWVuY2UsIFN0cmluZ1Rlc3QsIFZhbHVlc0luKHN0cmluZ3MpKTsKIC8vCi0v
LyBUaGlzIGluc3RhbnRpYXRlcyB0ZXN0cyBmcm9tIHRlc3QgY2FzZSBTdGxTdHJpbmdUZXN0Cisv
LyBUaGlzIGluc3RhbnRpYXRlcyB0ZXN0cyBmcm9tIHRlc3Qgc3VpdGUgU3RsU3RyaW5nVGVzdAog
Ly8gZWFjaCB3aXRoIFNUTCBzdHJpbmdzIHdpdGggdmFsdWVzICJhIiBhbmQgImIiOgogLy8KIC8v
IDo6c3RkOjp2ZWN0b3I8IDo6c3RkOjpzdHJpbmc+IEdldFBhcmFtZXRlclN0cmluZ3MoKSB7CkBA
IC0yNzksOSArMjcyLDkgQEAgaW50ZXJuYWw6OlBhcmFtR2VuZXJhdG9yPFQ+IFJhbmdlKFQgc3Rh
cnQsIFQgZW5kKSB7CiAvLyAgIHJldHVybiB2OwogLy8gfQogLy8KLS8vIElOU1RBTlRJQVRFX1RF
U1RfQ0FTRV9QKENoYXJTZXF1ZW5jZSwKLS8vICAgICAgICAgICAgICAgICAgICAgICAgIFN0bFN0
cmluZ1Rlc3QsCi0vLyAgICAgICAgICAgICAgICAgICAgICAgICBWYWx1ZXNJbihHZXRQYXJhbWV0
ZXJTdHJpbmdzKCkpKTsKKy8vIElOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDaGFyU2VxdWVuY2Us
CisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgU3RsU3RyaW5nVGVzdCwKKy8vICAgICAgICAg
ICAgICAgICAgICAgICAgICBWYWx1ZXNJbihHZXRQYXJhbWV0ZXJTdHJpbmdzKCkpKTsKIC8vCiAv
LwogLy8gVGhpcyB3aWxsIGFsc28gaW5zdGFudGlhdGUgdGVzdHMgZnJvbSBDaGFyVGVzdApAQCAt
Mjk0LDE2ICsyODcsMTUgQEAgaW50ZXJuYWw6OlBhcmFtR2VuZXJhdG9yPFQ+IFJhbmdlKFQgc3Rh
cnQsIFQgZW5kKSB7CiAvLyAgIHJldHVybiBsaXN0OwogLy8gfQogLy8gOjpzdGQ6Omxpc3Q8Y2hh
cj4gbCA9IEdldFBhcmFtZXRlckNoYXJzKCk7Ci0vLyBJTlNUQU5USUFURV9URVNUX0NBU0VfUChD
aGFyU2VxdWVuY2UyLAotLy8gICAgICAgICAgICAgICAgICAgICAgICAgQ2hhclRlc3QsCi0vLyAg
ICAgICAgICAgICAgICAgICAgICAgICBWYWx1ZXNJbihsLmJlZ2luKCksIGwuZW5kKCkpKTsKKy8v
IElOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDaGFyU2VxdWVuY2UyLAorLy8gICAgICAgICAgICAg
ICAgICAgICAgICAgIENoYXJUZXN0LAorLy8gICAgICAgICAgICAgICAgICAgICAgICAgIFZhbHVl
c0luKGwuYmVnaW4oKSwgbC5lbmQoKSkpOwogLy8KIHRlbXBsYXRlIDx0eXBlbmFtZSBGb3J3YXJk
SXRlcmF0b3I+CiBpbnRlcm5hbDo6UGFyYW1HZW5lcmF0b3I8Ci0gIHR5cGVuYW1lIDo6dGVzdGlu
Zzo6aW50ZXJuYWw6Okl0ZXJhdG9yVHJhaXRzPEZvcndhcmRJdGVyYXRvcj46OnZhbHVlX3R5cGU+
CisgICAgdHlwZW5hbWUgc3RkOjppdGVyYXRvcl90cmFpdHM8Rm9yd2FyZEl0ZXJhdG9yPjo6dmFs
dWVfdHlwZT4KIFZhbHVlc0luKEZvcndhcmRJdGVyYXRvciBiZWdpbiwgRm9yd2FyZEl0ZXJhdG9y
IGVuZCkgewotICB0eXBlZGVmIHR5cGVuYW1lIDo6dGVzdGluZzo6aW50ZXJuYWw6Okl0ZXJhdG9y
VHJhaXRzPEZvcndhcmRJdGVyYXRvcj4KLSAgICAgIDo6dmFsdWVfdHlwZSBQYXJhbVR5cGU7Cisg
IHR5cGVkZWYgdHlwZW5hbWUgc3RkOjppdGVyYXRvcl90cmFpdHM8Rm9yd2FyZEl0ZXJhdG9yPjo6
dmFsdWVfdHlwZSBQYXJhbVR5cGU7CiAgIHJldHVybiBpbnRlcm5hbDo6UGFyYW1HZW5lcmF0b3I8
UGFyYW1UeXBlPigKICAgICAgIG5ldyBpbnRlcm5hbDo6VmFsdWVzSW5JdGVyYXRvclJhbmdlR2Vu
ZXJhdG9yPFBhcmFtVHlwZT4oYmVnaW4sIGVuZCkpOwogfQpAQCAtMzI2LDg2OSArMzE4LDIyIEBA
IGludGVybmFsOjpQYXJhbUdlbmVyYXRvcjx0eXBlbmFtZSBDb250YWluZXI6OnZhbHVlX3R5cGU+
IFZhbHVlc0luKAogLy8gVmFsdWVzKFQgdjEsIFQgdjIsIC4uLiwgVCB2TikKIC8vICAgLSByZXR1
cm5zIGEgZ2VuZXJhdG9yIHByb2R1Y2luZyBzZXF1ZW5jZXMgd2l0aCBlbGVtZW50cyB2MSwgdjIs
IC4uLiwgdk4uCiAvLwotLy8gRm9yIGV4YW1wbGUsIHRoaXMgaW5zdGFudGlhdGVzIHRlc3RzIGZy
b20gdGVzdCBjYXNlIEJhclRlc3QgZWFjaAorLy8gRm9yIGV4YW1wbGUsIHRoaXMgaW5zdGFudGlh
dGVzIHRlc3RzIGZyb20gdGVzdCBzdWl0ZSBCYXJUZXN0IGVhY2gKIC8vIHdpdGggdmFsdWVzICJv
bmUiLCAidHdvIiwgYW5kICJ0aHJlZSI6CiAvLwotLy8gSU5TVEFOVElBVEVfVEVTVF9DQVNFX1Ao
TnVtU2VxdWVuY2UsIEJhclRlc3QsIFZhbHVlcygib25lIiwgInR3byIsICJ0aHJlZSIpKTsKKy8v
IElOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChOdW1TZXF1ZW5jZSwKKy8vICAgICAgICAgICAgICAg
ICAgICAgICAgICBCYXJUZXN0LAorLy8gICAgICAgICAgICAgICAgICAgICAgICAgIFZhbHVlcygi
b25lIiwgInR3byIsICJ0aHJlZSIpKTsKIC8vCi0vLyBUaGlzIGluc3RhbnRpYXRlcyB0ZXN0cyBm
cm9tIHRlc3QgY2FzZSBCYXpUZXN0IGVhY2ggd2l0aCB2YWx1ZXMgMSwgMiwgMy41LgorLy8gVGhp
cyBpbnN0YW50aWF0ZXMgdGVzdHMgZnJvbSB0ZXN0IHN1aXRlIEJhelRlc3QgZWFjaCB3aXRoIHZh
bHVlcyAxLCAyLCAzLjUuCiAvLyBUaGUgZXhhY3QgdHlwZSBvZiB2YWx1ZXMgd2lsbCBkZXBlbmQg
b24gdGhlIHR5cGUgb2YgcGFyYW1ldGVyIGluIEJhelRlc3QuCiAvLwotLy8gSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoRmxvYXRpbmdOdW1iZXJzLCBCYXpUZXN0LCBWYWx1ZXMoMSwgMiwgMy41KSk7
CisvLyBJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoRmxvYXRpbmdOdW1iZXJzLCBCYXpUZXN0LCBW
YWx1ZXMoMSwgMiwgMy41KSk7CiAvLwotLy8gQ3VycmVudGx5LCBWYWx1ZXMoKSBzdXBwb3J0cyBm
cm9tIDEgdG8gNTAgcGFyYW1ldGVycy4KIC8vCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDE+Ci1pbnRl
cm5hbDo6VmFsdWVBcnJheTE8VDE+IFZhbHVlcyhUMSB2MSkgewotICByZXR1cm4gaW50ZXJuYWw6
OlZhbHVlQXJyYXkxPFQxPih2MSk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5h
bWUgVDI+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTI8VDEsIFQyPiBWYWx1ZXMoVDEgdjEsIFQyIHYy
KSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJheTI8VDEsIFQyPih2MSwgdjIpOwotfQot
Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMz4KLWludGVy
bmFsOjpWYWx1ZUFycmF5MzxUMSwgVDIsIFQzPiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2Mykg
ewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkzPFQxLCBUMiwgVDM+KHYxLCB2MiwgdjMp
OwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywg
dHlwZW5hbWUgVDQ+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTQ8VDEsIFQyLCBUMywgVDQ+IFZhbHVl
cyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCkgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVl
QXJyYXk0PFQxLCBUMiwgVDMsIFQ0Pih2MSwgdjIsIHYzLCB2NCk7Ci19Ci0KLXRlbXBsYXRlIDx0
eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5h
bWUgVDU+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTU8VDEsIFQyLCBUMywgVDQsIFQ1PiBWYWx1ZXMo
VDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsCi0gICAgVDUgdjUpIHsKLSAgcmV0dXJuIGludGVy
bmFsOjpWYWx1ZUFycmF5NTxUMSwgVDIsIFQzLCBUNCwgVDU+KHYxLCB2MiwgdjMsIHY0LCB2NSk7
Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0
eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDY+Ci1pbnRlcm5hbDo6VmFs
dWVBcnJheTY8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNj4gVmFsdWVzKFQxIHYxLCBUMiB2MiwgVDMg
djMsCi0gICAgVDQgdjQsIFQ1IHY1LCBUNiB2NikgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVl
QXJyYXk2PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDY+KHYxLCB2MiwgdjMsIHY0LCB2NSwgdjYpOwot
fQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlw
ZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNz4KLWlu
dGVybmFsOjpWYWx1ZUFycmF5NzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNz4gVmFsdWVzKFQx
IHYxLCBUMiB2MiwgVDMgdjMsCi0gICAgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcpIHsKLSAg
cmV0dXJuIGludGVybmFsOjpWYWx1ZUFycmF5NzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNz4o
djEsIHYyLCB2MywgdjQsIHY1LAotICAgICAgdjYsIHY3KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVu
YW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBU
NSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4PgotaW50ZXJuYWw6
OlZhbHVlQXJyYXk4PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOD4gVmFsdWVzKFQxIHYx
LCBUMiB2MiwKLSAgICBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4KSB7
Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJheTg8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwg
VDcsIFQ4Pih2MSwgdjIsIHYzLCB2NCwKLSAgICAgIHY1LCB2NiwgdjcsIHY4KTsKLX0KLQotdGVt
cGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0
LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4
LCB0eXBlbmFtZSBUOT4KLWludGVybmFsOjpWYWx1ZUFycmF5OTxUMSwgVDIsIFQzLCBUNCwgVDUs
IFQ2LCBUNywgVDgsIFQ5PiBWYWx1ZXMoVDEgdjEsIFQyIHYyLAotICAgIFQzIHYzLCBUNCB2NCwg
VDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5KSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6
VmFsdWVBcnJheTk8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOT4odjEsIHYyLCB2
MywKLSAgICAgIHY0LCB2NSwgdjYsIHY3LCB2OCwgdjkpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5h
bWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1
LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5
LCB0eXBlbmFtZSBUMTA+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTEwPFQxLCBUMiwgVDMsIFQ0LCBU
NSwgVDYsIFQ3LCBUOCwgVDksIFQxMD4gVmFsdWVzKFQxIHYxLAotICAgIFQyIHYyLCBUMyB2Mywg
VDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwgVDEwIHYxMCkgewotICBy
ZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkxMDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDgsIFQ5LCBUMTA+KHYxLAotICAgICAgdjIsIHYzLCB2NCwgdjUsIHY2LCB2NywgdjgsIHY5LCB2
MTApOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBU
MywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBU
NywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUg
VDExPgotaW50ZXJuYWw6OlZhbHVlQXJyYXkxMTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDgsIFQ5LCBUMTAsCi0gICAgVDExPiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQs
IFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwKLSAgICBUMTAgdjEwLCBUMTEgdjEx
KSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJheTExPFQxLCBUMiwgVDMsIFQ0LCBUNSwg
VDYsIFQ3LCBUOCwgVDksIFQxMCwKLSAgICAgIFQxMT4odjEsIHYyLCB2MywgdjQsIHY1LCB2Niwg
djcsIHY4LCB2OSwgdjEwLCB2MTEpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVu
YW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVu
YW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBU
MTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTI+Ci1pbnRlcm5hbDo6VmFsdWVBcnJh
eTEyPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAotICAgIFQx
Mj4gVmFsdWVzKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3
LCBUOCB2OCwgVDkgdjksCi0gICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMikgewotICByZXR1
cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkxMjxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgs
IFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMj4odjEsIHYyLCB2MywgdjQsIHY1LCB2NiwgdjcsIHY4
LCB2OSwgdjEwLCB2MTEsIHYxMik7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5h
bWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5h
bWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQx
MCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzPgotaW50ZXJu
YWw6OlZhbHVlQXJyYXkxMzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAs
IFQxMSwgVDEyLAotICAgIFQxMz4gVmFsdWVzKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBU
NSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgVDEwIHYxMCwgVDExIHYxMSwg
VDEyIHYxMiwgVDEzIHYxMykgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkxMzxUMSwg
VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEz
Pih2MSwgdjIsIHYzLCB2NCwgdjUsIHY2LCB2NywgdjgsIHY5LCB2MTAsIHYxMSwgdjEyLCB2MTMp
OwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywg
dHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywg
dHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDEx
LCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0PgotaW50ZXJuYWw6OlZh
bHVlQXJyYXkxNDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwg
VDEyLCBUMTMsCi0gICAgVDE0PiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1
IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwKLSAgICBUMTAgdjEwLCBUMTEgdjExLCBU
MTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0KSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJh
eTE0PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAotICAgICAg
VDEyLCBUMTMsIFQxND4odjEsIHYyLCB2MywgdjQsIHY1LCB2NiwgdjcsIHY4LCB2OSwgdjEwLCB2
MTEsIHYxMiwgdjEzLAotICAgICAgdjE0KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0
eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0
eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5h
bWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5
cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1PgotaW50ZXJuYWw6OlZhbHVlQXJyYXkxNTxUMSwgVDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgVDE0
LCBUMTU+IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBU
NyB2NywgVDggdjgsCi0gICAgVDkgdjksIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2
MTMsIFQxNCB2MTQsIFQxNSB2MTUpIHsKLSAgcmV0dXJuIGludGVybmFsOjpWYWx1ZUFycmF5MTU8
VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsCi0gICAgICBUMTIs
IFQxMywgVDE0LCBUMTU+KHYxLCB2MiwgdjMsIHY0LCB2NSwgdjYsIHY3LCB2OCwgdjksIHYxMCwg
djExLCB2MTIsCi0gICAgICB2MTMsIHYxNCwgdjE1KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1l
IFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwK
LSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwg
dHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBU
MTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNj4KLWludGVy
bmFsOjpWYWx1ZUFycmF5MTY8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEw
LCBUMTEsIFQxMiwgVDEzLAotICAgIFQxNCwgVDE1LCBUMTY+IFZhbHVlcyhUMSB2MSwgVDIgdjIs
IFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywKLSAgICBUOCB2OCwgVDkgdjksIFQx
MCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsCi0gICAg
VDE2IHYxNikgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkxNjxUMSwgVDIsIFQzLCBU
NCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBUMTQsIFQx
NSwgVDE2Pih2MSwgdjIsIHYzLCB2NCwgdjUsIHY2LCB2NywgdjgsIHY5LCB2MTAsIHYxMSwKLSAg
ICAgIHYxMiwgdjEzLCB2MTQsIHYxNSwgdjE2KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQx
LCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAg
ICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlw
ZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMs
IHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUg
VDE3PgotaW50ZXJuYWw6OlZhbHVlQXJyYXkxNzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgVDE0LCBUMTUsIFQxNiwgVDE3PiBWYWx1
ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsCi0gICAg
VDggdjgsIFQ5IHY5LCBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0
LCBUMTUgdjE1LAotICAgIFQxNiB2MTYsIFQxNyB2MTcpIHsKLSAgcmV0dXJuIGludGVybmFsOjpW
YWx1ZUFycmF5MTc8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEs
Ci0gICAgICBUMTIsIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3Pih2MSwgdjIsIHYzLCB2NCwgdjUs
IHY2LCB2NywgdjgsIHY5LCB2MTAsCi0gICAgICB2MTEsIHYxMiwgdjEzLCB2MTQsIHYxNSwgdjE2
LCB2MTcpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFt
ZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFt
ZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5h
bWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFt
ZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOD4KLWlu
dGVybmFsOjpWYWx1ZUFycmF5MTg8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwg
VDEwLCBUMTEsIFQxMiwgVDEzLAotICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4PiBWYWx1ZXMo
VDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwKLSAgICBUNyB2NywgVDgg
djgsIFQ5IHY5LCBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBU
MTUgdjE1LAotICAgIFQxNiB2MTYsIFQxNyB2MTcsIFQxOCB2MTgpIHsKLSAgcmV0dXJuIGludGVy
bmFsOjpWYWx1ZUFycmF5MTg8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEw
LCBUMTEsCi0gICAgICBUMTIsIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTg+KHYxLCB2Miwg
djMsIHY0LCB2NSwgdjYsIHY3LCB2OCwgdjksCi0gICAgICB2MTAsIHYxMSwgdjEyLCB2MTMsIHYx
NCwgdjE1LCB2MTYsIHYxNywgdjE4KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBl
bmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBl
bmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUg
VDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVu
YW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0
eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOT4KLWludGVybmFsOjpWYWx1ZUFycmF5MTk8VDEsIFQy
LCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAgIFQx
NCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTk+IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBU
NCB2NCwgVDUgdjUsCi0gICAgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksIFQxMCB2MTAsIFQx
MSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsCi0gICAgVDE1IHYxNSwgVDE2IHYxNiwg
VDE3IHYxNywgVDE4IHYxOCwgVDE5IHYxOSkgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJy
YXkxOTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAg
IFQxMiwgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5Pih2MSwgdjIsIHYzLCB2NCwg
djUsIHY2LCB2NywgdjgsCi0gICAgICB2OSwgdjEwLCB2MTEsIHYxMiwgdjEzLCB2MTQsIHYxNSwg
djE2LCB2MTcsIHYxOCwgdjE5KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFt
ZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFt
ZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEw
LAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1l
IFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBl
bmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwPgotaW50ZXJuYWw6OlZhbHVlQXJy
YXkyMDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBU
MTMsCi0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwPiBWYWx1ZXMoVDEgdjEs
IFQyIHYyLCBUMyB2MywgVDQgdjQsCi0gICAgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5
IHY5LCBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLAotICAgIFQxNCB2MTQsIFQx
NSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjApIHsKLSAg
cmV0dXJuIGludGVybmFsOjpWYWx1ZUFycmF5MjA8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcs
IFQ4LCBUOSwgVDEwLCBUMTEsCi0gICAgICBUMTIsIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBU
MTgsIFQxOSwgVDIwPih2MSwgdjIsIHYzLCB2NCwgdjUsIHY2LCB2NywKLSAgICAgIHY4LCB2OSwg
djEwLCB2MTEsIHYxMiwgdjEzLCB2MTQsIHYxNSwgdjE2LCB2MTcsIHYxOCwgdjE5LCB2MjApOwot
fQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlw
ZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlw
ZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0
eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0g
ICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5
LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxPgotaW50ZXJuYWw6OlZhbHVlQXJyYXky
MTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMs
Ci0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjE+IFZhbHVlcyhUMSB2
MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwKLSAgICBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwg
VDkgdjksIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsCi0gICAgVDE0IHYxNCwg
VDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIx
IHYyMSkgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkyMTxUMSwgVDIsIFQzLCBUNCwg
VDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBUMTQsIFQxNSwg
VDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMT4odjEsIHYyLCB2MywgdjQsIHY1LCB2NiwKLSAg
ICAgIHY3LCB2OCwgdjksIHYxMCwgdjExLCB2MTIsIHYxMywgdjE0LCB2MTUsIHYxNiwgdjE3LCB2
MTgsIHYxOSwgdjIwLCB2MjEpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1l
IFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1l
IFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAs
Ci0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUg
VDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVu
YW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0
eXBlbmFtZSBUMjI+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTIyPFQxLCBUMiwgVDMsIFQ0LCBUNSwg
VDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwgVDE2LCBU
MTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyPiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywK
LSAgICBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LCBUMTAgdjEwLCBU
MTEgdjExLCBUMTIgdjEyLAotICAgIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYs
IFQxNyB2MTcsIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsCi0gICAgVDIxIHYyMSwgVDIyIHYy
MikgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkyMjxUMSwgVDIsIFQzLCBUNCwgVDUs
IFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBUMTQsIFQxNSwgVDE2
LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyPih2MSwgdjIsIHYzLCB2NCwKLSAgICAgIHY1
LCB2NiwgdjcsIHY4LCB2OSwgdjEwLCB2MTEsIHYxMiwgdjEzLCB2MTQsIHYxNSwgdjE2LCB2MTcs
IHYxOCwgdjE5LAotICAgICAgdjIwLCB2MjEsIHYyMik7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFt
ZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUs
Ci0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDks
IHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUg
VDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVu
YW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0
eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzPgotaW50ZXJuYWw6OlZhbHVl
QXJyYXkyMzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEy
LCBUMTMsCi0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwg
VDIzPiBWYWx1ZXMoVDEgdjEsIFQyIHYyLAotICAgIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2
LCBUNyB2NywgVDggdjgsIFQ5IHY5LCBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLAotICAgIFQx
MyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsIFQxOCB2MTgsIFQxOSB2
MTksIFQyMCB2MjAsCi0gICAgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMykgewotICByZXR1cm4g
aW50ZXJuYWw6OlZhbHVlQXJyYXkyMzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5
LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5
LCBUMjAsIFQyMSwgVDIyLCBUMjM+KHYxLCB2MiwgdjMsCi0gICAgICB2NCwgdjUsIHY2LCB2Nywg
djgsIHY5LCB2MTAsIHYxMSwgdjEyLCB2MTMsIHYxNCwgdjE1LCB2MTYsIHYxNywgdjE4LCB2MTks
Ci0gICAgICB2MjAsIHYyMSwgdjIyLCB2MjMpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEs
IHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAg
IHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBl
bmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywg
dHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBU
MTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5h
bWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0PgotaW50ZXJu
YWw6OlZhbHVlQXJyYXkyNDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAs
IFQxMSwgVDEyLCBUMTMsCi0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBU
MjEsIFQyMiwgVDIzLCBUMjQ+IFZhbHVlcyhUMSB2MSwgVDIgdjIsCi0gICAgVDMgdjMsIFQ0IHY0
LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksIFQxMCB2MTAsIFQxMSB2MTEsIFQx
MiB2MTIsCi0gICAgVDEzIHYxMywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywg
VDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwKLSAgICBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIz
LCBUMjQgdjI0KSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJheTI0PFQxLCBUMiwgVDMs
IFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAotICAgICAgVDEyLCBUMTMsIFQxNCwg
VDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0Pih2MSwgdjIs
Ci0gICAgICB2MywgdjQsIHY1LCB2NiwgdjcsIHY4LCB2OSwgdjEwLCB2MTEsIHYxMiwgdjEzLCB2
MTQsIHYxNSwgdjE2LCB2MTcsIHYxOCwKLSAgICAgIHYxOSwgdjIwLCB2MjEsIHYyMiwgdjIzLCB2
MjQpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBU
MywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBU
NywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUg
VDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBU
MTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5h
bWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5
cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjU+Ci1pbnRlcm5hbDo6VmFsdWVB
cnJheTI1PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIs
IFQxMywKLSAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBU
MjMsIFQyNCwgVDI1PiBWYWx1ZXMoVDEgdjEsCi0gICAgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUg
djUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LCBUMTAgdjEwLCBUMTEgdjExLAotICAgIFQx
MiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsIFQxOCB2
MTgsIFQxOSB2MTksCi0gICAgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywgVDI0
IHYyNCwgVDI1IHYyNSkgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkyNTxUMSwgVDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBU
MTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1
Pih2MSwKLSAgICAgIHYyLCB2MywgdjQsIHY1LCB2NiwgdjcsIHY4LCB2OSwgdjEwLCB2MTEsIHYx
MiwgdjEzLCB2MTQsIHYxNSwgdjE2LCB2MTcsCi0gICAgICB2MTgsIHYxOSwgdjIwLCB2MjEsIHYy
MiwgdjIzLCB2MjQsIHYyNSk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUg
VDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUg
VDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwK
LSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBU
MTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5h
bWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5
cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAg
ICB0eXBlbmFtZSBUMjY+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTI2PFQxLCBUMiwgVDMsIFQ0LCBU
NSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwgVDE2
LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LAotICAgIFQyNj4g
VmFsdWVzKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBU
OCB2OCwgVDkgdjksCi0gICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0
IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywKLSAgICBUMTggdjE4LCBUMTkgdjE5LCBU
MjAgdjIwLCBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIzLCBUMjQgdjI0LCBUMjUgdjI1LAotICAg
IFQyNiB2MjYpIHsKLSAgcmV0dXJuIGludGVybmFsOjpWYWx1ZUFycmF5MjY8VDEsIFQyLCBUMywg
VDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsCi0gICAgICBUMTIsIFQxMywgVDE0LCBU
MTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwKLSAg
ICAgIFQyNj4odjEsIHYyLCB2MywgdjQsIHY1LCB2NiwgdjcsIHY4LCB2OSwgdjEwLCB2MTEsIHYx
MiwgdjEzLCB2MTQsIHYxNSwKLSAgICAgIHYxNiwgdjE3LCB2MTgsIHYxOSwgdjIwLCB2MjEsIHYy
MiwgdjIzLCB2MjQsIHYyNSwgdjI2KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBl
bmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBl
bmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUg
VDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVu
YW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0
eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQy
MSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1
LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3PgotaW50ZXJuYWw6OlZhbHVlQXJyYXky
NzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMs
Ci0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBU
MjQsIFQyNSwgVDI2LAotICAgIFQyNz4gVmFsdWVzKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0
LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgVDEwIHYxMCwgVDExIHYx
MSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywK
LSAgICBUMTggdjE4LCBUMTkgdjE5LCBUMjAgdjIwLCBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIz
LCBUMjQgdjI0LCBUMjUgdjI1LAotICAgIFQyNiB2MjYsIFQyNyB2MjcpIHsKLSAgcmV0dXJuIGlu
dGVybmFsOjpWYWx1ZUFycmF5Mjc8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwg
VDEwLCBUMTEsCi0gICAgICBUMTIsIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwg
VDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwKLSAgICAgIFQyNiwgVDI3Pih2MSwgdjIsIHYz
LCB2NCwgdjUsIHY2LCB2NywgdjgsIHY5LCB2MTAsIHYxMSwgdjEyLCB2MTMsIHYxNCwKLSAgICAg
IHYxNSwgdjE2LCB2MTcsIHYxOCwgdjE5LCB2MjAsIHYyMSwgdjIyLCB2MjMsIHYyNCwgdjI1LCB2
MjYsIHYyNyk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVu
YW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVu
YW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBl
bmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVu
YW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0
eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQy
MiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFt
ZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4PgotaW50ZXJuYWw6OlZhbHVlQXJyYXky
ODxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMs
Ci0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBU
MjQsIFQyNSwgVDI2LCBUMjcsCi0gICAgVDI4PiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2Mywg
VDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwKLSAgICBUMTAgdjEwLCBU
MTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcg
djE3LAotICAgIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQy
MyB2MjMsIFQyNCB2MjQsIFQyNSB2MjUsCi0gICAgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCkg
ewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkyODxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBUMTQsIFQxNSwgVDE2LCBU
MTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LAotICAgICAgVDI2LCBU
MjcsIFQyOD4odjEsIHYyLCB2MywgdjQsIHY1LCB2NiwgdjcsIHY4LCB2OSwgdjEwLCB2MTEsIHYx
MiwgdjEzLAotICAgICAgdjE0LCB2MTUsIHYxNiwgdjE3LCB2MTgsIHYxOSwgdjIwLCB2MjEsIHYy
MiwgdjIzLCB2MjQsIHYyNSwgdjI2LCB2MjcsCi0gICAgICB2MjgpOwotfQotCi10ZW1wbGF0ZSA8
dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVu
YW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVu
YW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5
cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2
LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAs
Ci0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUg
VDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVu
YW1lIFQyOCwgdHlwZW5hbWUgVDI5PgotaW50ZXJuYWw6OlZhbHVlQXJyYXkyOTxUMSwgVDIsIFQz
LCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgVDE0LCBU
MTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2
LCBUMjcsIFQyOCwKLSAgICBUMjk+IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwg
VDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAgIFQxMCB2MTAsIFQxMSB2MTEs
IFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsCi0g
ICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywg
VDI0IHYyNCwgVDI1IHYyNSwKLSAgICBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5
KSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJheTI5PFQxLCBUMiwgVDMsIFQ0LCBUNSwg
VDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAotICAgICAgVDEyLCBUMTMsIFQxNCwgVDE1LCBUMTYs
IFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsCi0gICAgICBUMjYs
IFQyNywgVDI4LCBUMjk+KHYxLCB2MiwgdjMsIHY0LCB2NSwgdjYsIHY3LCB2OCwgdjksIHYxMCwg
djExLCB2MTIsCi0gICAgICB2MTMsIHYxNCwgdjE1LCB2MTYsIHYxNywgdjE4LCB2MTksIHYyMCwg
djIxLCB2MjIsIHYyMywgdjI0LCB2MjUsIHYyNiwKLSAgICAgIHYyNywgdjI4LCB2MjkpOwotfQot
Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5h
bWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5h
bWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBl
bmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAg
dHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0
eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQy
MywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFt
ZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzA+Ci1pbnRlcm5h
bDo6VmFsdWVBcnJheTMwPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwg
VDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQy
MSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAgIFQyOSwgVDMwPiBWYWx1
ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4
LAotICAgIFQ5IHY5LCBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0
LCBUMTUgdjE1LCBUMTYgdjE2LAotICAgIFQxNyB2MTcsIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2
MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsCi0gICAgVDI1IHYyNSwgVDI2
IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwgVDI5IHYyOSwgVDMwIHYzMCkgewotICByZXR1cm4gaW50
ZXJuYWw6OlZhbHVlQXJyYXkzMDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBU
MTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBU
MjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LAotICAgICAgVDI2LCBUMjcsIFQyOCwgVDI5LCBU
MzA+KHYxLCB2MiwgdjMsIHY0LCB2NSwgdjYsIHY3LCB2OCwgdjksIHYxMCwgdjExLAotICAgICAg
djEyLCB2MTMsIHYxNCwgdjE1LCB2MTYsIHYxNywgdjE4LCB2MTksIHYyMCwgdjIxLCB2MjIsIHYy
MywgdjI0LCB2MjUsCi0gICAgICB2MjYsIHYyNywgdjI4LCB2MjksIHYzMCk7Ci19Ci0KLXRlbXBs
YXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwg
dHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwg
dHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQx
MiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFt
ZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1l
IFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBl
bmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywg
dHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBU
MzE+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTMxPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBU
OCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwg
VDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAgIFQy
OSwgVDMwLCBUMzE+IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2
IHY2LCBUNyB2NywKLSAgICBUOCB2OCwgVDkgdjksIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIs
IFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsCi0gICAgVDE2IHYxNiwgVDE3IHYxNywgVDE4IHYx
OCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywKLSAgICBUMjQg
djI0LCBUMjUgdjI1LCBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMw
LCBUMzEgdjMxKSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJheTMxPFQxLCBUMiwgVDMs
IFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAotICAgICAgVDEyLCBUMTMsIFQxNCwg
VDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsCi0g
ICAgICBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwgVDMxPih2MSwgdjIsIHYzLCB2NCwgdjUsIHY2
LCB2NywgdjgsIHY5LCB2MTAsCi0gICAgICB2MTEsIHYxMiwgdjEzLCB2MTQsIHYxNSwgdjE2LCB2
MTcsIHYxOCwgdjE5LCB2MjAsIHYyMSwgdjIyLCB2MjMsIHYyNCwKLSAgICAgIHYyNSwgdjI2LCB2
MjcsIHYyOCwgdjI5LCB2MzAsIHYzMSk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlw
ZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlw
ZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1l
IFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBl
bmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywg
dHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBU
MjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQy
NSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFt
ZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMj4KLWlu
dGVybmFsOjpWYWx1ZUFycmF5MzI8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwg
VDEwLCBUMTEsIFQxMiwgVDEzLAotICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQy
MCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsCi0gICAgVDI5LCBUMzAs
IFQzMSwgVDMyPiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2
NiwgVDcgdjcsCi0gICAgVDggdjgsIFQ5IHY5LCBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBU
MTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LAotICAgIFQxNiB2MTYsIFQxNyB2MTcsIFQxOCB2MTgs
IFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsCi0gICAgVDI0IHYy
NCwgVDI1IHYyNSwgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwgVDI5IHYyOSwgVDMwIHYzMCwg
VDMxIHYzMSwKLSAgICBUMzIgdjMyKSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJheTMy
PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAotICAgICAgVDEy
LCBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywg
VDI0LCBUMjUsCi0gICAgICBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzI+KHYxLCB2
MiwgdjMsIHY0LCB2NSwgdjYsIHY3LCB2OCwgdjksCi0gICAgICB2MTAsIHYxMSwgdjEyLCB2MTMs
IHYxNCwgdjE1LCB2MTYsIHYxNywgdjE4LCB2MTksIHYyMCwgdjIxLCB2MjIsIHYyMywKLSAgICAg
IHYyNCwgdjI1LCB2MjYsIHYyNywgdjI4LCB2MjksIHYzMCwgdjMxLCB2MzIpOwotfQotCi10ZW1w
bGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQs
IHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgs
IHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBU
MTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5h
bWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFt
ZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlw
ZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcs
IHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUg
VDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMz4KLWludGVybmFsOjpWYWx1ZUFycmF5MzM8
VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLAot
ICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0
LCBUMjUsIFQyNiwgVDI3LCBUMjgsCi0gICAgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzM+IFZhbHVl
cyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LAotICAgIFQ3IHY3LCBU
OCB2OCwgVDkgdjksIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQs
IFQxNSB2MTUsCi0gICAgVDE2IHYxNiwgVDE3IHYxNywgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYy
MCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywKLSAgICBUMjQgdjI0LCBUMjUgdjI1LCBUMjYg
djI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMxLAotICAgIFQz
MiB2MzIsIFQzMyB2MzMpIHsKLSAgcmV0dXJuIGludGVybmFsOjpWYWx1ZUFycmF5MzM8VDEsIFQy
LCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsCi0gICAgICBUMTIsIFQxMywg
VDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQy
NSwKLSAgICAgIFQyNiwgVDI3LCBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzPih2MSwgdjIs
IHYzLCB2NCwgdjUsIHY2LCB2NywgdjgsCi0gICAgICB2OSwgdjEwLCB2MTEsIHYxMiwgdjEzLCB2
MTQsIHYxNSwgdjE2LCB2MTcsIHYxOCwgdjE5LCB2MjAsIHYyMSwgdjIyLCB2MjMsCi0gICAgICB2
MjQsIHYyNSwgdjI2LCB2MjcsIHYyOCwgdjI5LCB2MzAsIHYzMSwgdjMyLCB2MzMpOwotfQotCi10
ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUg
VDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUg
VDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFt
ZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlw
ZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBl
bmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywg
dHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBU
MjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5h
bWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0PgotaW50ZXJu
YWw6OlZhbHVlQXJyYXkzNDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAs
IFQxMSwgVDEyLCBUMTMsCi0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBU
MjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICBUMjksIFQzMCwgVDMx
LCBUMzIsIFQzMywgVDM0PiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1
LAotICAgIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LCBUMTAgdjEwLCBUMTEgdjExLCBUMTIg
djEyLCBUMTMgdjEzLCBUMTQgdjE0LAotICAgIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsIFQx
OCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsCi0gICAgVDIzIHYyMywg
VDI0IHYyNCwgVDI1IHYyNSwgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwgVDI5IHYyOSwgVDMw
IHYzMCwKLSAgICBUMzEgdjMxLCBUMzIgdjMyLCBUMzMgdjMzLCBUMzQgdjM0KSB7Ci0gIHJldHVy
biBpbnRlcm5hbDo6VmFsdWVBcnJheTM0PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwg
VDksIFQxMCwgVDExLAotICAgICAgVDEyLCBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBU
MTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsCi0gICAgICBUMjYsIFQyNywgVDI4LCBU
MjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0Pih2MSwgdjIsIHYzLCB2NCwgdjUsIHY2LCB2NywK
LSAgICAgIHY4LCB2OSwgdjEwLCB2MTEsIHYxMiwgdjEzLCB2MTQsIHYxNSwgdjE2LCB2MTcsIHYx
OCwgdjE5LCB2MjAsIHYyMSwgdjIyLAotICAgICAgdjIzLCB2MjQsIHYyNSwgdjI2LCB2MjcsIHYy
OCwgdjI5LCB2MzAsIHYzMSwgdjMyLCB2MzMsIHYzNCk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFt
ZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUs
Ci0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDks
IHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUg
VDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVu
YW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0
eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5
cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4
LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1l
IFQzMiwgdHlwZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNT4KLWludGVybmFs
OjpWYWx1ZUFycmF5MzU8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBU
MTEsIFQxMiwgVDEzLAotICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIx
LCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsCi0gICAgVDI5LCBUMzAsIFQzMSwg
VDMyLCBUMzMsIFQzNCwgVDM1PiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsCi0g
ICAgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LCBUMTAgdjEwLCBUMTEgdjExLCBU
MTIgdjEyLCBUMTMgdjEzLAotICAgIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcs
IFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsCi0gICAgVDIyIHYyMiwgVDIzIHYy
MywgVDI0IHYyNCwgVDI1IHYyNSwgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwgVDI5IHYyOSwK
LSAgICBUMzAgdjMwLCBUMzEgdjMxLCBUMzIgdjMyLCBUMzMgdjMzLCBUMzQgdjM0LCBUMzUgdjM1
KSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJheTM1PFQxLCBUMiwgVDMsIFQ0LCBUNSwg
VDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAotICAgICAgVDEyLCBUMTMsIFQxNCwgVDE1LCBUMTYs
IFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsCi0gICAgICBUMjYs
IFQyNywgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzU+KHYxLCB2MiwgdjMs
IHY0LCB2NSwgdjYsCi0gICAgICB2NywgdjgsIHY5LCB2MTAsIHYxMSwgdjEyLCB2MTMsIHYxNCwg
djE1LCB2MTYsIHYxNywgdjE4LCB2MTksIHYyMCwgdjIxLAotICAgICAgdjIyLCB2MjMsIHYyNCwg
djI1LCB2MjYsIHYyNywgdjI4LCB2MjksIHYzMCwgdjMxLCB2MzIsIHYzMywgdjM0LCB2MzUpOwot
fQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlw
ZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlw
ZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0
eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0g
ICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5
LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1l
IFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBl
bmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAg
dHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0
eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2PgotaW50ZXJuYWw6OlZhbHVlQXJyYXkzNjxU
MSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0g
ICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQs
IFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBU
MzUsIFQzNj4gVmFsdWVzKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LAotICAgIFQ1IHY1LCBU
NiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEz
IHYxMywKLSAgICBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LCBUMTggdjE4LCBU
MTkgdjE5LCBUMjAgdjIwLCBUMjEgdjIxLAotICAgIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQs
IFQyNSB2MjUsIFQyNiB2MjYsIFQyNyB2MjcsIFQyOCB2MjgsIFQyOSB2MjksCi0gICAgVDMwIHYz
MCwgVDMxIHYzMSwgVDMyIHYzMiwgVDMzIHYzMywgVDM0IHYzNCwgVDM1IHYzNSwgVDM2IHYzNikg
ewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkzNjxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBUMTQsIFQxNSwgVDE2LCBU
MTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LAotICAgICAgVDI2LCBU
MjcsIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzY+KHYxLCB2Miwg
djMsIHY0LAotICAgICAgdjUsIHY2LCB2NywgdjgsIHY5LCB2MTAsIHYxMSwgdjEyLCB2MTMsIHYx
NCwgdjE1LCB2MTYsIHYxNywgdjE4LCB2MTksCi0gICAgICB2MjAsIHYyMSwgdjIyLCB2MjMsIHYy
NCwgdjI1LCB2MjYsIHYyNywgdjI4LCB2MjksIHYzMCwgdjMxLCB2MzIsIHYzMywKLSAgICAgIHYz
NCwgdjM1LCB2MzYpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0
eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0
eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAg
dHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0
eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQx
OCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFt
ZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlw
ZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBl
bmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywg
dHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBU
Mzc+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTM3PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBU
OCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwg
VDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAgIFQy
OSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzc+IFZhbHVlcyhUMSB2MSwg
VDIgdjIsIFQzIHYzLAotICAgIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkg
djksIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsCi0gICAgVDEzIHYxMywgVDE0IHYxNCwgVDE1
IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwKLSAgICBU
MjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIzLCBUMjQgdjI0LCBUMjUgdjI1LCBUMjYgdjI2LCBUMjcg
djI3LCBUMjggdjI4LAotICAgIFQyOSB2MjksIFQzMCB2MzAsIFQzMSB2MzEsIFQzMiB2MzIsIFQz
MyB2MzMsIFQzNCB2MzQsIFQzNSB2MzUsIFQzNiB2MzYsCi0gICAgVDM3IHYzNykgewotICByZXR1
cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkzNzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgs
IFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwg
VDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LAotICAgICAgVDI2LCBUMjcsIFQyOCwg
VDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNz4odjEsIHYyLCB2MywK
LSAgICAgIHY0LCB2NSwgdjYsIHY3LCB2OCwgdjksIHYxMCwgdjExLCB2MTIsIHYxMywgdjE0LCB2
MTUsIHYxNiwgdjE3LCB2MTgsIHYxOSwKLSAgICAgIHYyMCwgdjIxLCB2MjIsIHYyMywgdjI0LCB2
MjUsIHYyNiwgdjI3LCB2MjgsIHYyOSwgdjMwLCB2MzEsIHYzMiwgdjMzLAotICAgICAgdjM0LCB2
MzUsIHYzNiwgdjM3KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwg
dHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwg
dHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAg
IHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwg
dHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBU
MTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5h
bWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5
cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlw
ZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMs
IHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUg
VDM3LCB0eXBlbmFtZSBUMzg+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTM4PFQxLCBUMiwgVDMsIFQ0
LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwg
VDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQy
NywgVDI4LAotICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcs
IFQzOD4gVmFsdWVzKFQxIHYxLCBUMiB2MiwKLSAgICBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2
NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwKLSAgICBU
MTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LCBUMTggdjE4LCBUMTkg
djE5LCBUMjAgdjIwLAotICAgIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQy
NSB2MjUsIFQyNiB2MjYsIFQyNyB2MjcsIFQyOCB2MjgsCi0gICAgVDI5IHYyOSwgVDMwIHYzMCwg
VDMxIHYzMSwgVDMyIHYzMiwgVDMzIHYzMywgVDM0IHYzNCwgVDM1IHYzNSwgVDM2IHYzNiwKLSAg
ICBUMzcgdjM3LCBUMzggdjM4KSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJheTM4PFQx
LCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAotICAgICAgVDEyLCBU
MTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0
LCBUMjUsCi0gICAgICBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0
LCBUMzUsIFQzNiwgVDM3LCBUMzg+KHYxLCB2MiwKLSAgICAgIHYzLCB2NCwgdjUsIHY2LCB2Nywg
djgsIHY5LCB2MTAsIHYxMSwgdjEyLCB2MTMsIHYxNCwgdjE1LCB2MTYsIHYxNywgdjE4LAotICAg
ICAgdjE5LCB2MjAsIHYyMSwgdjIyLCB2MjMsIHYyNCwgdjI1LCB2MjYsIHYyNywgdjI4LCB2Mjks
IHYzMCwgdjMxLCB2MzIsCi0gICAgICB2MzMsIHYzNCwgdjM1LCB2MzYsIHYzNywgdjM4KTsKLX0K
LQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVu
YW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVu
YW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlw
ZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAg
IHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwg
dHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBU
MjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5h
bWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5
cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlw
ZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgs
IHR5cGVuYW1lIFQzOT4KLWludGVybmFsOjpWYWx1ZUFycmF5Mzk8VDEsIFQyLCBUMywgVDQsIFQ1
LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAgIFQxNCwgVDE1LCBUMTYs
IFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBU
MjgsCi0gICAgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4
LCBUMzk+IFZhbHVlcyhUMSB2MSwgVDIgdjIsCi0gICAgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYg
djYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsCi0gICAg
VDEzIHYxMywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywgVDE4IHYxOCwgVDE5
IHYxOSwgVDIwIHYyMCwKLSAgICBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIzLCBUMjQgdjI0LCBU
MjUgdjI1LCBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LAotICAgIFQyOSB2MjksIFQzMCB2MzAs
IFQzMSB2MzEsIFQzMiB2MzIsIFQzMyB2MzMsIFQzNCB2MzQsIFQzNSB2MzUsIFQzNiB2MzYsCi0g
ICAgVDM3IHYzNywgVDM4IHYzOCwgVDM5IHYzOSkgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVl
QXJyYXkzOTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAg
ICAgIFQxMiwgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIy
LCBUMjMsIFQyNCwgVDI1LAotICAgICAgVDI2LCBUMjcsIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMy
LCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzk+KHYxLAotICAgICAgdjIsIHYzLCB2
NCwgdjUsIHY2LCB2NywgdjgsIHY5LCB2MTAsIHYxMSwgdjEyLCB2MTMsIHYxNCwgdjE1LCB2MTYs
IHYxNywKLSAgICAgIHYxOCwgdjE5LCB2MjAsIHYyMSwgdjIyLCB2MjMsIHYyNCwgdjI1LCB2MjYs
IHYyNywgdjI4LCB2MjksIHYzMCwgdjMxLAotICAgICAgdjMyLCB2MzMsIHYzNCwgdjM1LCB2MzYs
IHYzNywgdjM4LCB2MzkpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQy
LCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2
LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0g
ICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0
LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1l
IFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBl
bmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAg
dHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0
eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQz
MywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFt
ZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDA+Ci1pbnRlcm5h
bDo6VmFsdWVBcnJheTQwPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwg
VDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQy
MSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAgIFQyOSwgVDMwLCBUMzEs
IFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDA+IFZhbHVlcyhUMSB2
MSwKLSAgICBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwg
VDkgdjksIFQxMCB2MTAsIFQxMSB2MTEsCi0gICAgVDEyIHYxMiwgVDEzIHYxMywgVDE0IHYxNCwg
VDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywgVDE4IHYxOCwgVDE5IHYxOSwKLSAgICBUMjAgdjIw
LCBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIzLCBUMjQgdjI0LCBUMjUgdjI1LCBUMjYgdjI2LCBU
MjcgdjI3LAotICAgIFQyOCB2MjgsIFQyOSB2MjksIFQzMCB2MzAsIFQzMSB2MzEsIFQzMiB2MzIs
IFQzMyB2MzMsIFQzNCB2MzQsIFQzNSB2MzUsCi0gICAgVDM2IHYzNiwgVDM3IHYzNywgVDM4IHYz
OCwgVDM5IHYzOSwgVDQwIHY0MCkgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXk0MDxU
MSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwg
VDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQy
NCwgVDI1LAotICAgICAgVDI2LCBUMjcsIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQz
NCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksCi0gICAgICBUNDA+KHYxLCB2MiwgdjMsIHY0LCB2
NSwgdjYsIHY3LCB2OCwgdjksIHYxMCwgdjExLCB2MTIsIHYxMywgdjE0LCB2MTUsCi0gICAgICB2
MTYsIHYxNywgdjE4LCB2MTksIHYyMCwgdjIxLCB2MjIsIHYyMywgdjI0LCB2MjUsIHYyNiwgdjI3
LCB2MjgsIHYyOSwKLSAgICAgIHYzMCwgdjMxLCB2MzIsIHYzMywgdjM0LCB2MzUsIHYzNiwgdjM3
LCB2MzgsIHYzOSwgdjQwKTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBU
MiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBU
NiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAot
ICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQx
NCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFt
ZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlw
ZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAg
IHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwg
dHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBU
MzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5h
bWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5
cGVuYW1lIFQ0MT4KLWludGVybmFsOjpWYWx1ZUFycmF5NDE8VDEsIFQyLCBUMywgVDQsIFQ1LCBU
NiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAgIFQxNCwgVDE1LCBUMTYsIFQx
NywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgs
Ci0gICAgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBU
MzksIFQ0MCwKLSAgICBUNDE+IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUg
djUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAgIFQxMCB2MTAsIFQxMSB2MTEsIFQx
MiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsCi0gICAg
VDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywgVDI0
IHYyNCwgVDI1IHYyNSwKLSAgICBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBU
MzAgdjMwLCBUMzEgdjMxLCBUMzIgdjMyLCBUMzMgdjMzLAotICAgIFQzNCB2MzQsIFQzNSB2MzUs
IFQzNiB2MzYsIFQzNyB2MzcsIFQzOCB2MzgsIFQzOSB2MzksIFQ0MCB2NDAsIFQ0MSB2NDEpIHsK
LSAgcmV0dXJuIGludGVybmFsOjpWYWx1ZUFycmF5NDE8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwg
VDcsIFQ4LCBUOSwgVDEwLCBUMTEsCi0gICAgICBUMTIsIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3
LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwKLSAgICAgIFQyNiwgVDI3
LCBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwg
VDM5LAotICAgICAgVDQwLCBUNDE+KHYxLCB2MiwgdjMsIHY0LCB2NSwgdjYsIHY3LCB2OCwgdjks
IHYxMCwgdjExLCB2MTIsIHYxMywgdjE0LAotICAgICAgdjE1LCB2MTYsIHYxNywgdjE4LCB2MTks
IHYyMCwgdjIxLCB2MjIsIHYyMywgdjI0LCB2MjUsIHYyNiwgdjI3LCB2MjgsCi0gICAgICB2Mjks
IHYzMCwgdjMxLCB2MzIsIHYzMywgdjM0LCB2MzUsIHYzNiwgdjM3LCB2MzgsIHYzOSwgdjQwLCB2
NDEpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBU
MywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBU
NywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUg
VDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBU
MTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5h
bWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5
cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2
LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAs
Ci0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUg
VDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVu
YW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAsCi0gICAgdHlwZW5hbWUgVDQxLCB0
eXBlbmFtZSBUNDI+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTQyPFQxLCBUMiwgVDMsIFQ0LCBUNSwg
VDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwgVDE2LCBU
MTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4
LAotICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwg
VDM5LCBUNDAsIFQ0MSwKLSAgICBUNDI+IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2
NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAgIFQxMCB2MTAsIFQxMSB2
MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcs
Ci0gICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYy
MywgVDI0IHYyNCwgVDI1IHYyNSwKLSAgICBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkg
djI5LCBUMzAgdjMwLCBUMzEgdjMxLCBUMzIgdjMyLCBUMzMgdjMzLAotICAgIFQzNCB2MzQsIFQz
NSB2MzUsIFQzNiB2MzYsIFQzNyB2MzcsIFQzOCB2MzgsIFQzOSB2MzksIFQ0MCB2NDAsIFQ0MSB2
NDEsCi0gICAgVDQyIHY0MikgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXk0MjxUMSwg
VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEz
LCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwg
VDI1LAotICAgICAgVDI2LCBUMjcsIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwg
VDM1LCBUMzYsIFQzNywgVDM4LCBUMzksCi0gICAgICBUNDAsIFQ0MSwgVDQyPih2MSwgdjIsIHYz
LCB2NCwgdjUsIHY2LCB2NywgdjgsIHY5LCB2MTAsIHYxMSwgdjEyLCB2MTMsCi0gICAgICB2MTQs
IHYxNSwgdjE2LCB2MTcsIHYxOCwgdjE5LCB2MjAsIHYyMSwgdjIyLCB2MjMsIHYyNCwgdjI1LCB2
MjYsIHYyNywKLSAgICAgIHYyOCwgdjI5LCB2MzAsIHYzMSwgdjMyLCB2MzMsIHYzNCwgdjM1LCB2
MzYsIHYzNywgdjM4LCB2MzksIHY0MCwgdjQxLAotICAgICAgdjQyKTsKLX0KLQotdGVtcGxhdGUg
PHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBl
bmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBl
bmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0
eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQx
NiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIw
LAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1l
IFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBl
bmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwg
dHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAot
ICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQz
OSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwgdHlwZW5hbWUgVDQyLCB0eXBlbmFt
ZSBUNDM+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTQzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3
LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQx
OCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAg
IFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBU
NDAsIFQ0MSwgVDQyLAotICAgIFQ0Mz4gVmFsdWVzKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0
LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgVDEwIHYxMCwgVDExIHYx
MSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywK
LSAgICBUMTggdjE4LCBUMTkgdjE5LCBUMjAgdjIwLCBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIz
LCBUMjQgdjI0LCBUMjUgdjI1LAotICAgIFQyNiB2MjYsIFQyNyB2MjcsIFQyOCB2MjgsIFQyOSB2
MjksIFQzMCB2MzAsIFQzMSB2MzEsIFQzMiB2MzIsIFQzMyB2MzMsCi0gICAgVDM0IHYzNCwgVDM1
IHYzNSwgVDM2IHYzNiwgVDM3IHYzNywgVDM4IHYzOCwgVDM5IHYzOSwgVDQwIHY0MCwgVDQxIHY0
MSwKLSAgICBUNDIgdjQyLCBUNDMgdjQzKSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJh
eTQzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAotICAgICAg
VDEyLCBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQy
MywgVDI0LCBUMjUsCi0gICAgICBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQz
MywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwKLSAgICAgIFQ0MCwgVDQxLCBUNDIsIFQ0
Mz4odjEsIHYyLCB2MywgdjQsIHY1LCB2NiwgdjcsIHY4LCB2OSwgdjEwLCB2MTEsIHYxMiwKLSAg
ICAgIHYxMywgdjE0LCB2MTUsIHYxNiwgdjE3LCB2MTgsIHYxOSwgdjIwLCB2MjEsIHYyMiwgdjIz
LCB2MjQsIHYyNSwgdjI2LAotICAgICAgdjI3LCB2MjgsIHYyOSwgdjMwLCB2MzEsIHYzMiwgdjMz
LCB2MzQsIHYzNSwgdjM2LCB2MzcsIHYzOCwgdjM5LCB2NDAsCi0gICAgICB2NDEsIHY0MiwgdjQz
KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMs
IHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcs
IHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQx
MSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1
LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1l
IFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBl
bmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwg
dHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAot
ICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQz
NCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFt
ZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwgdHlw
ZW5hbWUgVDQyLCB0eXBlbmFtZSBUNDMsIHR5cGVuYW1lIFQ0ND4KLWludGVybmFsOjpWYWx1ZUFy
cmF5NDQ8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwg
VDEzLAotICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQy
MywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsCi0gICAgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMs
IFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsIFQ0MywKLSAgICBU
NDQ+IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2
NywgVDggdjgsIFQ5IHY5LAotICAgIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMs
IFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsCi0gICAgVDE4IHYxOCwgVDE5IHYx
OSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywgVDI0IHYyNCwgVDI1IHYyNSwK
LSAgICBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMx
LCBUMzIgdjMyLCBUMzMgdjMzLAotICAgIFQzNCB2MzQsIFQzNSB2MzUsIFQzNiB2MzYsIFQzNyB2
MzcsIFQzOCB2MzgsIFQzOSB2MzksIFQ0MCB2NDAsIFQ0MSB2NDEsCi0gICAgVDQyIHY0MiwgVDQz
IHY0MywgVDQ0IHY0NCkgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXk0NDxUMSwgVDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBU
MTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1
LAotICAgICAgVDI2LCBUMjcsIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1
LCBUMzYsIFQzNywgVDM4LCBUMzksCi0gICAgICBUNDAsIFQ0MSwgVDQyLCBUNDMsIFQ0ND4odjEs
IHYyLCB2MywgdjQsIHY1LCB2NiwgdjcsIHY4LCB2OSwgdjEwLCB2MTEsCi0gICAgICB2MTIsIHYx
MywgdjE0LCB2MTUsIHYxNiwgdjE3LCB2MTgsIHYxOSwgdjIwLCB2MjEsIHYyMiwgdjIzLCB2MjQs
IHYyNSwKLSAgICAgIHYyNiwgdjI3LCB2MjgsIHYyOSwgdjMwLCB2MzEsIHYzMiwgdjMzLCB2MzQs
IHYzNSwgdjM2LCB2MzcsIHYzOCwgdjM5LAotICAgICAgdjQwLCB2NDEsIHY0MiwgdjQzLCB2NDQp
OwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywg
dHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywg
dHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDEx
LCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUs
Ci0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUg
VDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVu
YW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0
eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0g
ICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0
LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1l
IFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAsCi0gICAgdHlwZW5hbWUgVDQxLCB0eXBl
bmFtZSBUNDIsIHR5cGVuYW1lIFQ0MywgdHlwZW5hbWUgVDQ0LCB0eXBlbmFtZSBUNDU+Ci1pbnRl
cm5hbDo6VmFsdWVBcnJheTQ1PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQx
MCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAs
IFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAgIFQyOSwgVDMwLCBU
MzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwgVDQy
LCBUNDMsCi0gICAgVDQ0LCBUNDU+IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwg
VDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsCi0gICAgVDkgdjksIFQxMCB2MTAsIFQxMSB2MTEs
IFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsCi0gICAgVDE3IHYx
NywgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywg
VDI0IHYyNCwKLSAgICBUMjUgdjI1LCBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5
LCBUMzAgdjMwLCBUMzEgdjMxLCBUMzIgdjMyLAotICAgIFQzMyB2MzMsIFQzNCB2MzQsIFQzNSB2
MzUsIFQzNiB2MzYsIFQzNyB2MzcsIFQzOCB2MzgsIFQzOSB2MzksIFQ0MCB2NDAsCi0gICAgVDQx
IHY0MSwgVDQyIHY0MiwgVDQzIHY0MywgVDQ0IHY0NCwgVDQ1IHY0NSkgewotICByZXR1cm4gaW50
ZXJuYWw6OlZhbHVlQXJyYXk0NTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBU
MTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBU
MjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LAotICAgICAgVDI2LCBUMjcsIFQyOCwgVDI5LCBU
MzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksCi0gICAgICBU
NDAsIFQ0MSwgVDQyLCBUNDMsIFQ0NCwgVDQ1Pih2MSwgdjIsIHYzLCB2NCwgdjUsIHY2LCB2Nywg
djgsIHY5LCB2MTAsCi0gICAgICB2MTEsIHYxMiwgdjEzLCB2MTQsIHYxNSwgdjE2LCB2MTcsIHYx
OCwgdjE5LCB2MjAsIHYyMSwgdjIyLCB2MjMsIHYyNCwKLSAgICAgIHYyNSwgdjI2LCB2MjcsIHYy
OCwgdjI5LCB2MzAsIHYzMSwgdjMyLCB2MzMsIHYzNCwgdjM1LCB2MzYsIHYzNywgdjM4LAotICAg
ICAgdjM5LCB2NDAsIHY0MSwgdjQyLCB2NDMsIHY0NCwgdjQ1KTsKLX0KLQotdGVtcGxhdGUgPHR5
cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFt
ZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFt
ZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBl
bmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwg
dHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAot
ICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQy
NCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFt
ZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlw
ZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAg
IHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwg
dHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwgdHlwZW5hbWUgVDQyLCB0eXBlbmFtZSBU
NDMsIHR5cGVuYW1lIFQ0NCwgdHlwZW5hbWUgVDQ1LAotICAgIHR5cGVuYW1lIFQ0Nj4KLWludGVy
bmFsOjpWYWx1ZUFycmF5NDY8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEw
LCBUMTEsIFQxMiwgVDEzLAotICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwg
VDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsCi0gICAgVDI5LCBUMzAsIFQz
MSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIs
IFQ0MywKLSAgICBUNDQsIFQ0NSwgVDQ2PiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQg
djQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsCi0gICAgVDggdjgsIFQ5IHY5LCBUMTAgdjEwLCBUMTEg
djExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LAotICAgIFQxNiB2MTYsIFQx
NyB2MTcsIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2
MjMsCi0gICAgVDI0IHYyNCwgVDI1IHYyNSwgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwgVDI5
IHYyOSwgVDMwIHYzMCwgVDMxIHYzMSwKLSAgICBUMzIgdjMyLCBUMzMgdjMzLCBUMzQgdjM0LCBU
MzUgdjM1LCBUMzYgdjM2LCBUMzcgdjM3LCBUMzggdjM4LCBUMzkgdjM5LAotICAgIFQ0MCB2NDAs
IFQ0MSB2NDEsIFQ0MiB2NDIsIFQ0MyB2NDMsIFQ0NCB2NDQsIFQ0NSB2NDUsIFQ0NiB2NDYpIHsK
LSAgcmV0dXJuIGludGVybmFsOjpWYWx1ZUFycmF5NDY8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwg
VDcsIFQ4LCBUOSwgVDEwLCBUMTEsCi0gICAgICBUMTIsIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3
LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwKLSAgICAgIFQyNiwgVDI3
LCBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwg
VDM5LAotICAgICAgVDQwLCBUNDEsIFQ0MiwgVDQzLCBUNDQsIFQ0NSwgVDQ2Pih2MSwgdjIsIHYz
LCB2NCwgdjUsIHY2LCB2NywgdjgsIHY5LAotICAgICAgdjEwLCB2MTEsIHYxMiwgdjEzLCB2MTQs
IHYxNSwgdjE2LCB2MTcsIHYxOCwgdjE5LCB2MjAsIHYyMSwgdjIyLCB2MjMsCi0gICAgICB2MjQs
IHYyNSwgdjI2LCB2MjcsIHYyOCwgdjI5LCB2MzAsIHYzMSwgdjMyLCB2MzMsIHYzNCwgdjM1LCB2
MzYsIHYzNywKLSAgICAgIHYzOCwgdjM5LCB2NDAsIHY0MSwgdjQyLCB2NDMsIHY0NCwgdjQ1LCB2
NDYpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBU
MywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBU
NywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUg
VDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBU
MTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5h
bWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5
cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2
LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAs
Ci0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUg
VDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVu
YW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAsCi0gICAgdHlwZW5hbWUgVDQxLCB0
eXBlbmFtZSBUNDIsIHR5cGVuYW1lIFQ0MywgdHlwZW5hbWUgVDQ0LCB0eXBlbmFtZSBUNDUsCi0g
ICAgdHlwZW5hbWUgVDQ2LCB0eXBlbmFtZSBUNDc+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTQ3PFQx
LCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAg
ICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwg
VDI1LCBUMjYsIFQyNywgVDI4LAotICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQz
NSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwgVDQyLCBUNDMsCi0gICAgVDQ0LCBUNDUs
IFQ0NiwgVDQ3PiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2
NiwgVDcgdjcsCi0gICAgVDggdjgsIFQ5IHY5LCBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBU
MTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LAotICAgIFQxNiB2MTYsIFQxNyB2MTcsIFQxOCB2MTgs
IFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsCi0gICAgVDI0IHYy
NCwgVDI1IHYyNSwgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwgVDI5IHYyOSwgVDMwIHYzMCwg
VDMxIHYzMSwKLSAgICBUMzIgdjMyLCBUMzMgdjMzLCBUMzQgdjM0LCBUMzUgdjM1LCBUMzYgdjM2
LCBUMzcgdjM3LCBUMzggdjM4LCBUMzkgdjM5LAotICAgIFQ0MCB2NDAsIFQ0MSB2NDEsIFQ0MiB2
NDIsIFQ0MyB2NDMsIFQ0NCB2NDQsIFQ0NSB2NDUsIFQ0NiB2NDYsIFQ0NyB2NDcpIHsKLSAgcmV0
dXJuIGludGVybmFsOjpWYWx1ZUFycmF5NDc8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4
LCBUOSwgVDEwLCBUMTEsCi0gICAgICBUMTIsIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgs
IFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwKLSAgICAgIFQyNiwgVDI3LCBUMjgs
IFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LAot
ICAgICAgVDQwLCBUNDEsIFQ0MiwgVDQzLCBUNDQsIFQ0NSwgVDQ2LCBUNDc+KHYxLCB2MiwgdjMs
IHY0LCB2NSwgdjYsIHY3LCB2OCwKLSAgICAgIHY5LCB2MTAsIHYxMSwgdjEyLCB2MTMsIHYxNCwg
djE1LCB2MTYsIHYxNywgdjE4LCB2MTksIHYyMCwgdjIxLCB2MjIsIHYyMywKLSAgICAgIHYyNCwg
djI1LCB2MjYsIHYyNywgdjI4LCB2MjksIHYzMCwgdjMxLCB2MzIsIHYzMywgdjM0LCB2MzUsIHYz
NiwgdjM3LAotICAgICAgdjM4LCB2MzksIHY0MCwgdjQxLCB2NDIsIHY0MywgdjQ0LCB2NDUsIHY0
NiwgdjQ3KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5h
bWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5h
bWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVu
YW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5h
bWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5
cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIy
LCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1l
IFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUg
VDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVu
YW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0
eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0
MSwgdHlwZW5hbWUgVDQyLCB0eXBlbmFtZSBUNDMsIHR5cGVuYW1lIFQ0NCwgdHlwZW5hbWUgVDQ1
LAotICAgIHR5cGVuYW1lIFQ0NiwgdHlwZW5hbWUgVDQ3LCB0eXBlbmFtZSBUNDg+Ci1pbnRlcm5h
bDo6VmFsdWVBcnJheTQ4PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwg
VDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQy
MSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAgIFQyOSwgVDMwLCBUMzEs
IFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwgVDQyLCBU
NDMsCi0gICAgVDQ0LCBUNDUsIFQ0NiwgVDQ3LCBUNDg+IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQz
IHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LAotICAgIFQ3IHY3LCBUOCB2OCwgVDkgdjksIFQxMCB2
MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsCi0gICAgVDE2
IHYxNiwgVDE3IHYxNywgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYy
MiwgVDIzIHYyMywKLSAgICBUMjQgdjI0LCBUMjUgdjI1LCBUMjYgdjI2LCBUMjcgdjI3LCBUMjgg
djI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMxLAotICAgIFQzMiB2MzIsIFQzMyB2MzMsIFQz
NCB2MzQsIFQzNSB2MzUsIFQzNiB2MzYsIFQzNyB2MzcsIFQzOCB2MzgsIFQzOSB2MzksCi0gICAg
VDQwIHY0MCwgVDQxIHY0MSwgVDQyIHY0MiwgVDQzIHY0MywgVDQ0IHY0NCwgVDQ1IHY0NSwgVDQ2
IHY0NiwgVDQ3IHY0NywKLSAgICBUNDggdjQ4KSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVB
cnJheTQ4PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAotICAg
ICAgVDEyLCBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIs
IFQyMywgVDI0LCBUMjUsCi0gICAgICBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIs
IFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwKLSAgICAgIFQ0MCwgVDQxLCBUNDIs
IFQ0MywgVDQ0LCBUNDUsIFQ0NiwgVDQ3LCBUNDg+KHYxLCB2MiwgdjMsIHY0LCB2NSwgdjYsIHY3
LAotICAgICAgdjgsIHY5LCB2MTAsIHYxMSwgdjEyLCB2MTMsIHYxNCwgdjE1LCB2MTYsIHYxNywg
djE4LCB2MTksIHYyMCwgdjIxLCB2MjIsCi0gICAgICB2MjMsIHYyNCwgdjI1LCB2MjYsIHYyNywg
djI4LCB2MjksIHYzMCwgdjMxLCB2MzIsIHYzMywgdjM0LCB2MzUsIHYzNiwKLSAgICAgIHYzNywg
djM4LCB2MzksIHY0MCwgdjQxLCB2NDIsIHY0MywgdjQ0LCB2NDUsIHY0NiwgdjQ3LCB2NDgpOwot
fQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlw
ZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlw
ZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0
eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0g
ICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5
LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1l
IFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBl
bmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAg
dHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0
eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1lIFQz
OCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAsCi0gICAgdHlwZW5hbWUgVDQxLCB0eXBlbmFt
ZSBUNDIsIHR5cGVuYW1lIFQ0MywgdHlwZW5hbWUgVDQ0LCB0eXBlbmFtZSBUNDUsCi0gICAgdHlw
ZW5hbWUgVDQ2LCB0eXBlbmFtZSBUNDcsIHR5cGVuYW1lIFQ0OCwgdHlwZW5hbWUgVDQ5PgotaW50
ZXJuYWw6OlZhbHVlQXJyYXk0OTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBU
MTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIw
LCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICBUMjksIFQzMCwg
VDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEsIFQ0
MiwgVDQzLAotICAgIFQ0NCwgVDQ1LCBUNDYsIFQ0NywgVDQ4LCBUNDk+IFZhbHVlcyhUMSB2MSwg
VDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsCi0gICAgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkg
djksIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsCi0gICAgVDE1
IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYy
MSwgVDIyIHYyMiwKLSAgICBUMjMgdjIzLCBUMjQgdjI0LCBUMjUgdjI1LCBUMjYgdjI2LCBUMjcg
djI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLAotICAgIFQzMSB2MzEsIFQzMiB2MzIsIFQz
MyB2MzMsIFQzNCB2MzQsIFQzNSB2MzUsIFQzNiB2MzYsIFQzNyB2MzcsIFQzOCB2MzgsCi0gICAg
VDM5IHYzOSwgVDQwIHY0MCwgVDQxIHY0MSwgVDQyIHY0MiwgVDQzIHY0MywgVDQ0IHY0NCwgVDQ1
IHY0NSwgVDQ2IHY0NiwKLSAgICBUNDcgdjQ3LCBUNDggdjQ4LCBUNDkgdjQ5KSB7Ci0gIHJldHVy
biBpbnRlcm5hbDo6VmFsdWVBcnJheTQ5PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwg
VDksIFQxMCwgVDExLAotICAgICAgVDEyLCBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBU
MTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsCi0gICAgICBUMjYsIFQyNywgVDI4LCBU
MjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwKLSAg
ICAgIFQ0MCwgVDQxLCBUNDIsIFQ0MywgVDQ0LCBUNDUsIFQ0NiwgVDQ3LCBUNDgsIFQ0OT4odjEs
IHYyLCB2MywgdjQsIHY1LCB2NiwKLSAgICAgIHY3LCB2OCwgdjksIHYxMCwgdjExLCB2MTIsIHYx
MywgdjE0LCB2MTUsIHYxNiwgdjE3LCB2MTgsIHYxOSwgdjIwLCB2MjEsCi0gICAgICB2MjIsIHYy
MywgdjI0LCB2MjUsIHYyNiwgdjI3LCB2MjgsIHYyOSwgdjMwLCB2MzEsIHYzMiwgdjMzLCB2MzQs
IHYzNSwKLSAgICAgIHYzNiwgdjM3LCB2MzgsIHYzOSwgdjQwLCB2NDEsIHY0MiwgdjQzLCB2NDQs
IHY0NSwgdjQ2LCB2NDcsIHY0OCwgdjQ5KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0
eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0
eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5h
bWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5
cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3
LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1l
IFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUg
VDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVu
YW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0
eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQz
NiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQw
LAotICAgIHR5cGVuYW1lIFQ0MSwgdHlwZW5hbWUgVDQyLCB0eXBlbmFtZSBUNDMsIHR5cGVuYW1l
IFQ0NCwgdHlwZW5hbWUgVDQ1LAotICAgIHR5cGVuYW1lIFQ0NiwgdHlwZW5hbWUgVDQ3LCB0eXBl
bmFtZSBUNDgsIHR5cGVuYW1lIFQ0OSwgdHlwZW5hbWUgVDUwPgotaW50ZXJuYWw6OlZhbHVlQXJy
YXk1MDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBU
MTMsCi0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIz
LCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywg
VDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEsIFQ0MiwgVDQzLAotICAgIFQ0
NCwgVDQ1LCBUNDYsIFQ0NywgVDQ4LCBUNDksIFQ1MD4gVmFsdWVzKFQxIHYxLCBUMiB2MiwgVDMg
djMsIFQ0IHY0LAotICAgIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwgVDEwIHYx
MCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywKLSAgICBUMTQgdjE0LCBUMTUgdjE1LCBUMTYg
djE2LCBUMTcgdjE3LCBUMTggdjE4LCBUMTkgdjE5LCBUMjAgdjIwLCBUMjEgdjIxLAotICAgIFQy
MiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQyNSB2MjUsIFQyNiB2MjYsIFQyNyB2MjcsIFQyOCB2
MjgsIFQyOSB2MjksCi0gICAgVDMwIHYzMCwgVDMxIHYzMSwgVDMyIHYzMiwgVDMzIHYzMywgVDM0
IHYzNCwgVDM1IHYzNSwgVDM2IHYzNiwgVDM3IHYzNywKLSAgICBUMzggdjM4LCBUMzkgdjM5LCBU
NDAgdjQwLCBUNDEgdjQxLCBUNDIgdjQyLCBUNDMgdjQzLCBUNDQgdjQ0LCBUNDUgdjQ1LAotICAg
IFQ0NiB2NDYsIFQ0NyB2NDcsIFQ0OCB2NDgsIFQ0OSB2NDksIFQ1MCB2NTApIHsKLSAgcmV0dXJu
IGludGVybmFsOjpWYWx1ZUFycmF5NTA8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBU
OSwgVDEwLCBUMTEsCi0gICAgICBUMTIsIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQx
OSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwKLSAgICAgIFQyNiwgVDI3LCBUMjgsIFQy
OSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LAotICAg
ICAgVDQwLCBUNDEsIFQ0MiwgVDQzLCBUNDQsIFQ0NSwgVDQ2LCBUNDcsIFQ0OCwgVDQ5LCBUNTA+
KHYxLCB2MiwgdjMsIHY0LAotICAgICAgdjUsIHY2LCB2NywgdjgsIHY5LCB2MTAsIHYxMSwgdjEy
LCB2MTMsIHYxNCwgdjE1LCB2MTYsIHYxNywgdjE4LCB2MTksCi0gICAgICB2MjAsIHYyMSwgdjIy
LCB2MjMsIHYyNCwgdjI1LCB2MjYsIHYyNywgdjI4LCB2MjksIHYzMCwgdjMxLCB2MzIsIHYzMywK
LSAgICAgIHYzNCwgdjM1LCB2MzYsIHYzNywgdjM4LCB2MzksIHY0MCwgdjQxLCB2NDIsIHY0Mywg
djQ0LCB2NDUsIHY0NiwgdjQ3LAotICAgICAgdjQ4LCB2NDksIHY1MCk7Cit0ZW1wbGF0ZSA8dHlw
ZW5hbWUuLi4gVD4KK2ludGVybmFsOjpWYWx1ZUFycmF5PFQuLi4+IFZhbHVlcyhULi4uIHYpIHsK
KyAgcmV0dXJuIGludGVybmFsOjpWYWx1ZUFycmF5PFQuLi4+KHN0ZDo6bW92ZSh2KS4uLik7CiB9
CiAKIC8vIEJvb2woKSBhbGxvd3MgZ2VuZXJhdGluZyB0ZXN0cyB3aXRoIHBhcmFtZXRlcnMgaW4g
YSBzZXQgb2YgKGZhbHNlLCB0cnVlKS4KQEAgLTEyMDEsNyArMzQ2LDcgQEAgaW50ZXJuYWw6OlZh
bHVlQXJyYXk1MDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwg
VDEyLCBUMTMsCiAvLyBvZiBtdWx0aXBsZSBmbGFncyBjYW4gYmUgdGVzdGVkIHdoZW4gc2V2ZXJh
bCBCb29sKCkncyBhcmUgY29tYmluZWQgdXNpbmcKIC8vIENvbWJpbmUoKSBmdW5jdGlvbi4KIC8v
Ci0vLyBJbiB0aGUgZm9sbG93aW5nIGV4YW1wbGUgYWxsIHRlc3RzIGluIHRoZSB0ZXN0IGNhc2Ug
RmxhZ0RlcGVuZGVudFRlc3QKKy8vIEluIHRoZSBmb2xsb3dpbmcgZXhhbXBsZSBhbGwgdGVzdHMg
aW4gdGhlIHRlc3Qgc3VpdGUgRmxhZ0RlcGVuZGVudFRlc3QKIC8vIHdpbGwgYmUgaW5zdGFudGlh
dGVkIHR3aWNlIHdpdGggcGFyYW1ldGVycyBmYWxzZSBhbmQgdHJ1ZS4KIC8vCiAvLyBjbGFzcyBG
bGFnRGVwZW5kZW50VGVzdCA6IHB1YmxpYyB0ZXN0aW5nOjpUZXN0V2l0aFBhcmFtPGJvb2w+IHsK
QEAgLTEyMDksMTMgKzM1NCwxMiBAQCBpbnRlcm5hbDo6VmFsdWVBcnJheTUwPFQxLCBUMiwgVDMs
IFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKIC8vICAgICBleHRl
cm5hbF9mbGFnID0gR2V0UGFyYW0oKTsKIC8vICAgfQogLy8gfQotLy8gSU5TVEFOVElBVEVfVEVT
VF9DQVNFX1AoQm9vbFNlcXVlbmNlLCBGbGFnRGVwZW5kZW50VGVzdCwgQm9vbCgpKTsKKy8vIElO
U1RBTlRJQVRFX1RFU1RfU1VJVEVfUChCb29sU2VxdWVuY2UsIEZsYWdEZXBlbmRlbnRUZXN0LCBC
b29sKCkpOwogLy8KIGlubGluZSBpbnRlcm5hbDo6UGFyYW1HZW5lcmF0b3I8Ym9vbD4gQm9vbCgp
IHsKICAgcmV0dXJuIFZhbHVlcyhmYWxzZSwgdHJ1ZSk7CiB9CiAKLSMgaWYgR1RFU1RfSEFTX0NP
TUJJTkUKIC8vIENvbWJpbmUoKSBhbGxvd3MgdGhlIHVzZXIgdG8gY29tYmluZSB0d28gb3IgbW9y
ZSBzZXF1ZW5jZXMgdG8gcHJvZHVjZQogLy8gdmFsdWVzIG9mIGEgQ2FydGVzaWFuIHByb2R1Y3Qg
b2YgdGhvc2Ugc2VxdWVuY2VzJyBlbGVtZW50cy4KIC8vCkBAIC0xMjI0LDE4NCArMzY4LDgzIEBA
IGlubGluZSBpbnRlcm5hbDo6UGFyYW1HZW5lcmF0b3I8Ym9vbD4gQm9vbCgpIHsKIC8vICAgLSBy
ZXR1cm5zIGEgZ2VuZXJhdG9yIHByb2R1Y2luZyBzZXF1ZW5jZXMgd2l0aCBlbGVtZW50cyBjb21p
bmcgZnJvbQogLy8gICAgIHRoZSBDYXJ0ZXNpYW4gcHJvZHVjdCBvZiBlbGVtZW50cyBmcm9tIHRo
ZSBzZXF1ZW5jZXMgZ2VuZXJhdGVkIGJ5CiAvLyAgICAgZ2VuMSwgZ2VuMiwgLi4uLCBnZW5OLiBU
aGUgc2VxdWVuY2UgZWxlbWVudHMgd2lsbCBoYXZlIGEgdHlwZSBvZgotLy8gICAgIHR1cGxlPFQx
LCBUMiwgLi4uLCBUTj4gd2hlcmUgVDEsIFQyLCAuLi4sIFROIGFyZSB0aGUgdHlwZXMKKy8vICAg
ICBzdGQ6OnR1cGxlPFQxLCBUMiwgLi4uLCBUTj4gd2hlcmUgVDEsIFQyLCAuLi4sIFROIGFyZSB0
aGUgdHlwZXMKIC8vICAgICBvZiBlbGVtZW50cyBmcm9tIHNlcXVlbmNlcyBwcm9kdWNlcyBieSBn
ZW4xLCBnZW4yLCAuLi4sIGdlbk4uCiAvLwotLy8gQ29tYmluZSBjYW4gaGF2ZSB1cCB0byAxMCBh
cmd1bWVudHMuIFRoaXMgbnVtYmVyIGlzIGN1cnJlbnRseSBsaW1pdGVkCi0vLyBieSB0aGUgbWF4
aW11bSBudW1iZXIgb2YgZWxlbWVudHMgaW4gdGhlIHR1cGxlIGltcGxlbWVudGF0aW9uIHVzZWQg
YnkgR29vZ2xlCi0vLyBUZXN0LgorLy8gQ29tYmluZSBjYW4gaGF2ZSB1cCB0byAxMCBhcmd1bWVu
dHMuCiAvLwogLy8gRXhhbXBsZToKIC8vCi0vLyBUaGlzIHdpbGwgaW5zdGFudGlhdGUgdGVzdHMg
aW4gdGVzdCBjYXNlIEFuaW1hbFRlc3QgZWFjaCBvbmUgd2l0aAorLy8gVGhpcyB3aWxsIGluc3Rh
bnRpYXRlIHRlc3RzIGluIHRlc3Qgc3VpdGUgQW5pbWFsVGVzdCBlYWNoIG9uZSB3aXRoCiAvLyB0
aGUgcGFyYW1ldGVyIHZhbHVlcyB0dXBsZSgiY2F0IiwgQkxBQ0spLCB0dXBsZSgiY2F0IiwgV0hJ
VEUpLAogLy8gdHVwbGUoImRvZyIsIEJMQUNLKSwgYW5kIHR1cGxlKCJkb2ciLCBXSElURSk6CiAv
LwogLy8gZW51bSBDb2xvciB7IEJMQUNLLCBHUkFZLCBXSElURSB9OwogLy8gY2xhc3MgQW5pbWFs
VGVzdAotLy8gICAgIDogcHVibGljIHRlc3Rpbmc6OlRlc3RXaXRoUGFyYW08dHVwbGU8Y29uc3Qg
Y2hhciosIENvbG9yPiA+IHsuLi59OworLy8gICAgIDogcHVibGljIHRlc3Rpbmc6OlRlc3RXaXRo
UGFyYW08c3RkOjp0dXBsZTxjb25zdCBjaGFyKiwgQ29sb3I+ID4gey4uLn07CiAvLwogLy8gVEVT
VF9QKEFuaW1hbFRlc3QsIEFuaW1hbExvb2tzTmljZSkgey4uLn0KIC8vCi0vLyBJTlNUQU5USUFU
RV9URVNUX0NBU0VfUChBbmltYWxWYXJpYXRpb25zLCBBbmltYWxUZXN0LAotLy8gICAgICAgICAg
ICAgICAgICAgICAgICAgQ29tYmluZShWYWx1ZXMoImNhdCIsICJkb2ciKSwKLS8vICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgVmFsdWVzKEJMQUNLLCBXSElURSkpKTsKKy8vIElOU1RB
TlRJQVRFX1RFU1RfU1VJVEVfUChBbmltYWxWYXJpYXRpb25zLCBBbmltYWxUZXN0LAorLy8gICAg
ICAgICAgICAgICAgICAgICAgICAgIENvbWJpbmUoVmFsdWVzKCJjYXQiLCAiZG9nIiksCisvLyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWYWx1ZXMoQkxBQ0ssIFdISVRFKSkpOwog
Ly8KIC8vIFRoaXMgd2lsbCBpbnN0YW50aWF0ZSB0ZXN0cyBpbiBGbGFnRGVwZW5kZW50VGVzdCB3
aXRoIGFsbCB2YXJpYXRpb25zIG9mIHR3bwogLy8gQm9vbGVhbiBmbGFnczoKIC8vCiAvLyBjbGFz
cyBGbGFnRGVwZW5kZW50VGVzdAotLy8gICAgIDogcHVibGljIHRlc3Rpbmc6OlRlc3RXaXRoUGFy
YW08dHVwbGU8Ym9vbCwgYm9vbD4gPiB7CisvLyAgICAgOiBwdWJsaWMgdGVzdGluZzo6VGVzdFdp
dGhQYXJhbTxzdGQ6OnR1cGxlPGJvb2wsIGJvb2w+ID4gewogLy8gICB2aXJ0dWFsIHZvaWQgU2V0
VXAoKSB7CiAvLyAgICAgLy8gQXNzaWducyBleHRlcm5hbF9mbGFnXzEgYW5kIGV4dGVybmFsX2Zs
YWdfMiB2YWx1ZXMgZnJvbSB0aGUgdHVwbGUuCi0vLyAgICAgdGllKGV4dGVybmFsX2ZsYWdfMSwg
ZXh0ZXJuYWxfZmxhZ18yKSA9IEdldFBhcmFtKCk7CisvLyAgICAgc3RkOjp0aWUoZXh0ZXJuYWxf
ZmxhZ18xLCBleHRlcm5hbF9mbGFnXzIpID0gR2V0UGFyYW0oKTsKIC8vICAgfQogLy8gfTsKIC8v
CiAvLyBURVNUX1AoRmxhZ0RlcGVuZGVudFRlc3QsIFRlc3RGZWF0dXJlMSkgewogLy8gICAvLyBU
ZXN0IHlvdXIgY29kZSB1c2luZyBleHRlcm5hbF9mbGFnXzEgYW5kIGV4dGVybmFsX2ZsYWdfMiBo
ZXJlLgogLy8gfQotLy8gSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoVHdvQm9vbFNlcXVlbmNlLCBG
bGFnRGVwZW5kZW50VGVzdCwKLS8vICAgICAgICAgICAgICAgICAgICAgICAgIENvbWJpbmUoQm9v
bCgpLCBCb29sKCkpKTsKLS8vCi10ZW1wbGF0ZSA8dHlwZW5hbWUgR2VuZXJhdG9yMSwgdHlwZW5h
bWUgR2VuZXJhdG9yMj4KLWludGVybmFsOjpDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyMjxHZW5lcmF0
b3IxLCBHZW5lcmF0b3IyPiBDb21iaW5lKAotICAgIGNvbnN0IEdlbmVyYXRvcjEmIGcxLCBjb25z
dCBHZW5lcmF0b3IyJiBnMikgewotICByZXR1cm4gaW50ZXJuYWw6OkNhcnRlc2lhblByb2R1Y3RI
b2xkZXIyPEdlbmVyYXRvcjEsIEdlbmVyYXRvcjI+KAotICAgICAgZzEsIGcyKTsKLX0KLQotdGVt
cGxhdGUgPHR5cGVuYW1lIEdlbmVyYXRvcjEsIHR5cGVuYW1lIEdlbmVyYXRvcjIsIHR5cGVuYW1l
IEdlbmVyYXRvcjM+Ci1pbnRlcm5hbDo6Q2FydGVzaWFuUHJvZHVjdEhvbGRlcjM8R2VuZXJhdG9y
MSwgR2VuZXJhdG9yMiwgR2VuZXJhdG9yMz4gQ29tYmluZSgKLSAgICBjb25zdCBHZW5lcmF0b3Ix
JiBnMSwgY29uc3QgR2VuZXJhdG9yMiYgZzIsIGNvbnN0IEdlbmVyYXRvcjMmIGczKSB7Ci0gIHJl
dHVybiBpbnRlcm5hbDo6Q2FydGVzaWFuUHJvZHVjdEhvbGRlcjM8R2VuZXJhdG9yMSwgR2VuZXJh
dG9yMiwgR2VuZXJhdG9yMz4oCi0gICAgICBnMSwgZzIsIGczKTsKLX0KLQotdGVtcGxhdGUgPHR5
cGVuYW1lIEdlbmVyYXRvcjEsIHR5cGVuYW1lIEdlbmVyYXRvcjIsIHR5cGVuYW1lIEdlbmVyYXRv
cjMsCi0gICAgdHlwZW5hbWUgR2VuZXJhdG9yND4KLWludGVybmFsOjpDYXJ0ZXNpYW5Qcm9kdWN0
SG9sZGVyNDxHZW5lcmF0b3IxLCBHZW5lcmF0b3IyLCBHZW5lcmF0b3IzLAotICAgIEdlbmVyYXRv
cjQ+IENvbWJpbmUoCi0gICAgY29uc3QgR2VuZXJhdG9yMSYgZzEsIGNvbnN0IEdlbmVyYXRvcjIm
IGcyLCBjb25zdCBHZW5lcmF0b3IzJiBnMywKLSAgICAgICAgY29uc3QgR2VuZXJhdG9yNCYgZzQp
IHsKLSAgcmV0dXJuIGludGVybmFsOjpDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyNDxHZW5lcmF0b3Ix
LCBHZW5lcmF0b3IyLCBHZW5lcmF0b3IzLAotICAgICAgR2VuZXJhdG9yND4oCi0gICAgICBnMSwg
ZzIsIGczLCBnNCk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBHZW5lcmF0b3IxLCB0eXBlbmFt
ZSBHZW5lcmF0b3IyLCB0eXBlbmFtZSBHZW5lcmF0b3IzLAotICAgIHR5cGVuYW1lIEdlbmVyYXRv
cjQsIHR5cGVuYW1lIEdlbmVyYXRvcjU+Ci1pbnRlcm5hbDo6Q2FydGVzaWFuUHJvZHVjdEhvbGRl
cjU8R2VuZXJhdG9yMSwgR2VuZXJhdG9yMiwgR2VuZXJhdG9yMywKLSAgICBHZW5lcmF0b3I0LCBH
ZW5lcmF0b3I1PiBDb21iaW5lKAotICAgIGNvbnN0IEdlbmVyYXRvcjEmIGcxLCBjb25zdCBHZW5l
cmF0b3IyJiBnMiwgY29uc3QgR2VuZXJhdG9yMyYgZzMsCi0gICAgICAgIGNvbnN0IEdlbmVyYXRv
cjQmIGc0LCBjb25zdCBHZW5lcmF0b3I1JiBnNSkgewotICByZXR1cm4gaW50ZXJuYWw6OkNhcnRl
c2lhblByb2R1Y3RIb2xkZXI1PEdlbmVyYXRvcjEsIEdlbmVyYXRvcjIsIEdlbmVyYXRvcjMsCi0g
ICAgICBHZW5lcmF0b3I0LCBHZW5lcmF0b3I1PigKLSAgICAgIGcxLCBnMiwgZzMsIGc0LCBnNSk7
Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBHZW5lcmF0b3IxLCB0eXBlbmFtZSBHZW5lcmF0b3Iy
LCB0eXBlbmFtZSBHZW5lcmF0b3IzLAotICAgIHR5cGVuYW1lIEdlbmVyYXRvcjQsIHR5cGVuYW1l
IEdlbmVyYXRvcjUsIHR5cGVuYW1lIEdlbmVyYXRvcjY+Ci1pbnRlcm5hbDo6Q2FydGVzaWFuUHJv
ZHVjdEhvbGRlcjY8R2VuZXJhdG9yMSwgR2VuZXJhdG9yMiwgR2VuZXJhdG9yMywKLSAgICBHZW5l
cmF0b3I0LCBHZW5lcmF0b3I1LCBHZW5lcmF0b3I2PiBDb21iaW5lKAotICAgIGNvbnN0IEdlbmVy
YXRvcjEmIGcxLCBjb25zdCBHZW5lcmF0b3IyJiBnMiwgY29uc3QgR2VuZXJhdG9yMyYgZzMsCi0g
ICAgICAgIGNvbnN0IEdlbmVyYXRvcjQmIGc0LCBjb25zdCBHZW5lcmF0b3I1JiBnNSwgY29uc3Qg
R2VuZXJhdG9yNiYgZzYpIHsKLSAgcmV0dXJuIGludGVybmFsOjpDYXJ0ZXNpYW5Qcm9kdWN0SG9s
ZGVyNjxHZW5lcmF0b3IxLCBHZW5lcmF0b3IyLCBHZW5lcmF0b3IzLAotICAgICAgR2VuZXJhdG9y
NCwgR2VuZXJhdG9yNSwgR2VuZXJhdG9yNj4oCi0gICAgICBnMSwgZzIsIGczLCBnNCwgZzUsIGc2
KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIEdlbmVyYXRvcjEsIHR5cGVuYW1lIEdlbmVyYXRv
cjIsIHR5cGVuYW1lIEdlbmVyYXRvcjMsCi0gICAgdHlwZW5hbWUgR2VuZXJhdG9yNCwgdHlwZW5h
bWUgR2VuZXJhdG9yNSwgdHlwZW5hbWUgR2VuZXJhdG9yNiwKLSAgICB0eXBlbmFtZSBHZW5lcmF0
b3I3PgotaW50ZXJuYWw6OkNhcnRlc2lhblByb2R1Y3RIb2xkZXI3PEdlbmVyYXRvcjEsIEdlbmVy
YXRvcjIsIEdlbmVyYXRvcjMsCi0gICAgR2VuZXJhdG9yNCwgR2VuZXJhdG9yNSwgR2VuZXJhdG9y
NiwgR2VuZXJhdG9yNz4gQ29tYmluZSgKLSAgICBjb25zdCBHZW5lcmF0b3IxJiBnMSwgY29uc3Qg
R2VuZXJhdG9yMiYgZzIsIGNvbnN0IEdlbmVyYXRvcjMmIGczLAotICAgICAgICBjb25zdCBHZW5l
cmF0b3I0JiBnNCwgY29uc3QgR2VuZXJhdG9yNSYgZzUsIGNvbnN0IEdlbmVyYXRvcjYmIGc2LAot
ICAgICAgICBjb25zdCBHZW5lcmF0b3I3JiBnNykgewotICByZXR1cm4gaW50ZXJuYWw6OkNhcnRl
c2lhblByb2R1Y3RIb2xkZXI3PEdlbmVyYXRvcjEsIEdlbmVyYXRvcjIsIEdlbmVyYXRvcjMsCi0g
ICAgICBHZW5lcmF0b3I0LCBHZW5lcmF0b3I1LCBHZW5lcmF0b3I2LCBHZW5lcmF0b3I3PigKLSAg
ICAgIGcxLCBnMiwgZzMsIGc0LCBnNSwgZzYsIGc3KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1l
IEdlbmVyYXRvcjEsIHR5cGVuYW1lIEdlbmVyYXRvcjIsIHR5cGVuYW1lIEdlbmVyYXRvcjMsCi0g
ICAgdHlwZW5hbWUgR2VuZXJhdG9yNCwgdHlwZW5hbWUgR2VuZXJhdG9yNSwgdHlwZW5hbWUgR2Vu
ZXJhdG9yNiwKLSAgICB0eXBlbmFtZSBHZW5lcmF0b3I3LCB0eXBlbmFtZSBHZW5lcmF0b3I4Pgot
aW50ZXJuYWw6OkNhcnRlc2lhblByb2R1Y3RIb2xkZXI4PEdlbmVyYXRvcjEsIEdlbmVyYXRvcjIs
IEdlbmVyYXRvcjMsCi0gICAgR2VuZXJhdG9yNCwgR2VuZXJhdG9yNSwgR2VuZXJhdG9yNiwgR2Vu
ZXJhdG9yNywgR2VuZXJhdG9yOD4gQ29tYmluZSgKLSAgICBjb25zdCBHZW5lcmF0b3IxJiBnMSwg
Y29uc3QgR2VuZXJhdG9yMiYgZzIsIGNvbnN0IEdlbmVyYXRvcjMmIGczLAotICAgICAgICBjb25z
dCBHZW5lcmF0b3I0JiBnNCwgY29uc3QgR2VuZXJhdG9yNSYgZzUsIGNvbnN0IEdlbmVyYXRvcjYm
IGc2LAotICAgICAgICBjb25zdCBHZW5lcmF0b3I3JiBnNywgY29uc3QgR2VuZXJhdG9yOCYgZzgp
IHsKLSAgcmV0dXJuIGludGVybmFsOjpDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyODxHZW5lcmF0b3Ix
LCBHZW5lcmF0b3IyLCBHZW5lcmF0b3IzLAotICAgICAgR2VuZXJhdG9yNCwgR2VuZXJhdG9yNSwg
R2VuZXJhdG9yNiwgR2VuZXJhdG9yNywgR2VuZXJhdG9yOD4oCi0gICAgICBnMSwgZzIsIGczLCBn
NCwgZzUsIGc2LCBnNywgZzgpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgR2VuZXJhdG9yMSwg
dHlwZW5hbWUgR2VuZXJhdG9yMiwgdHlwZW5hbWUgR2VuZXJhdG9yMywKLSAgICB0eXBlbmFtZSBH
ZW5lcmF0b3I0LCB0eXBlbmFtZSBHZW5lcmF0b3I1LCB0eXBlbmFtZSBHZW5lcmF0b3I2LAotICAg
IHR5cGVuYW1lIEdlbmVyYXRvcjcsIHR5cGVuYW1lIEdlbmVyYXRvcjgsIHR5cGVuYW1lIEdlbmVy
YXRvcjk+Ci1pbnRlcm5hbDo6Q2FydGVzaWFuUHJvZHVjdEhvbGRlcjk8R2VuZXJhdG9yMSwgR2Vu
ZXJhdG9yMiwgR2VuZXJhdG9yMywKLSAgICBHZW5lcmF0b3I0LCBHZW5lcmF0b3I1LCBHZW5lcmF0
b3I2LCBHZW5lcmF0b3I3LCBHZW5lcmF0b3I4LAotICAgIEdlbmVyYXRvcjk+IENvbWJpbmUoCi0g
ICAgY29uc3QgR2VuZXJhdG9yMSYgZzEsIGNvbnN0IEdlbmVyYXRvcjImIGcyLCBjb25zdCBHZW5l
cmF0b3IzJiBnMywKLSAgICAgICAgY29uc3QgR2VuZXJhdG9yNCYgZzQsIGNvbnN0IEdlbmVyYXRv
cjUmIGc1LCBjb25zdCBHZW5lcmF0b3I2JiBnNiwKLSAgICAgICAgY29uc3QgR2VuZXJhdG9yNyYg
ZzcsIGNvbnN0IEdlbmVyYXRvcjgmIGc4LCBjb25zdCBHZW5lcmF0b3I5JiBnOSkgewotICByZXR1
cm4gaW50ZXJuYWw6OkNhcnRlc2lhblByb2R1Y3RIb2xkZXI5PEdlbmVyYXRvcjEsIEdlbmVyYXRv
cjIsIEdlbmVyYXRvcjMsCi0gICAgICBHZW5lcmF0b3I0LCBHZW5lcmF0b3I1LCBHZW5lcmF0b3I2
LCBHZW5lcmF0b3I3LCBHZW5lcmF0b3I4LCBHZW5lcmF0b3I5PigKLSAgICAgIGcxLCBnMiwgZzMs
IGc0LCBnNSwgZzYsIGc3LCBnOCwgZzkpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgR2VuZXJh
dG9yMSwgdHlwZW5hbWUgR2VuZXJhdG9yMiwgdHlwZW5hbWUgR2VuZXJhdG9yMywKLSAgICB0eXBl
bmFtZSBHZW5lcmF0b3I0LCB0eXBlbmFtZSBHZW5lcmF0b3I1LCB0eXBlbmFtZSBHZW5lcmF0b3I2
LAotICAgIHR5cGVuYW1lIEdlbmVyYXRvcjcsIHR5cGVuYW1lIEdlbmVyYXRvcjgsIHR5cGVuYW1l
IEdlbmVyYXRvcjksCi0gICAgdHlwZW5hbWUgR2VuZXJhdG9yMTA+Ci1pbnRlcm5hbDo6Q2FydGVz
aWFuUHJvZHVjdEhvbGRlcjEwPEdlbmVyYXRvcjEsIEdlbmVyYXRvcjIsIEdlbmVyYXRvcjMsCi0g
ICAgR2VuZXJhdG9yNCwgR2VuZXJhdG9yNSwgR2VuZXJhdG9yNiwgR2VuZXJhdG9yNywgR2VuZXJh
dG9yOCwgR2VuZXJhdG9yOSwKLSAgICBHZW5lcmF0b3IxMD4gQ29tYmluZSgKLSAgICBjb25zdCBH
ZW5lcmF0b3IxJiBnMSwgY29uc3QgR2VuZXJhdG9yMiYgZzIsIGNvbnN0IEdlbmVyYXRvcjMmIGcz
LAotICAgICAgICBjb25zdCBHZW5lcmF0b3I0JiBnNCwgY29uc3QgR2VuZXJhdG9yNSYgZzUsIGNv
bnN0IEdlbmVyYXRvcjYmIGc2LAotICAgICAgICBjb25zdCBHZW5lcmF0b3I3JiBnNywgY29uc3Qg
R2VuZXJhdG9yOCYgZzgsIGNvbnN0IEdlbmVyYXRvcjkmIGc5LAotICAgICAgICBjb25zdCBHZW5l
cmF0b3IxMCYgZzEwKSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6Q2FydGVzaWFuUHJvZHVjdEhvbGRl
cjEwPEdlbmVyYXRvcjEsIEdlbmVyYXRvcjIsIEdlbmVyYXRvcjMsCi0gICAgICBHZW5lcmF0b3I0
LCBHZW5lcmF0b3I1LCBHZW5lcmF0b3I2LCBHZW5lcmF0b3I3LCBHZW5lcmF0b3I4LCBHZW5lcmF0
b3I5LAotICAgICAgR2VuZXJhdG9yMTA+KAotICAgICAgZzEsIGcyLCBnMywgZzQsIGc1LCBnNiwg
ZzcsIGc4LCBnOSwgZzEwKTsKLX0KLSMgZW5kaWYgIC8vIEdURVNUX0hBU19DT01CSU5FCi0KLSMg
ZGVmaW5lIFRFU1RfUCh0ZXN0X2Nhc2VfbmFtZSwgdGVzdF9uYW1lKSBcCi0gIGNsYXNzIEdURVNU
X1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9jYXNlX25hbWUsIHRlc3RfbmFtZSkgXAotICAgICAgOiBw
dWJsaWMgdGVzdF9jYXNlX25hbWUgeyBcCi0gICBwdWJsaWM6IFwKLSAgICBHVEVTVF9URVNUX0NM
QVNTX05BTUVfKHRlc3RfY2FzZV9uYW1lLCB0ZXN0X25hbWUpKCkge30gXAotICAgIHZpcnR1YWwg
dm9pZCBUZXN0Qm9keSgpOyBcCi0gICBwcml2YXRlOiBcCi0gICAgc3RhdGljIGludCBBZGRUb1Jl
Z2lzdHJ5KCkgeyBcCi0gICAgICA6OnRlc3Rpbmc6OlVuaXRUZXN0OjpHZXRJbnN0YW5jZSgpLT5w
YXJhbWV0ZXJpemVkX3Rlc3RfcmVnaXN0cnkoKS4gXAotICAgICAgICAgIEdldFRlc3RDYXNlUGF0
dGVybkhvbGRlcjx0ZXN0X2Nhc2VfbmFtZT4oXAotICAgICAgICAgICAgICAjdGVzdF9jYXNlX25h
bWUsIFwKLSAgICAgICAgICAgICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6Q29kZUxvY2F0aW9uKFwK
LSAgICAgICAgICAgICAgICAgIF9fRklMRV9fLCBfX0xJTkVfXykpLT5BZGRUZXN0UGF0dGVybihc
Ci0gICAgICAgICAgICAgICAgICAgICAgR1RFU1RfU1RSSU5HSUZZXyh0ZXN0X2Nhc2VfbmFtZSks
IFwKLSAgICAgICAgICAgICAgICAgICAgICBHVEVTVF9TVFJJTkdJRllfKHRlc3RfbmFtZSksIFwK
LSAgICAgICAgICAgICAgICAgICAgICBuZXcgOjp0ZXN0aW5nOjppbnRlcm5hbDo6VGVzdE1ldGFG
YWN0b3J5PCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgIEdURVNUX1RFU1RfQ0xBU1NfTkFN
RV8oXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlX25hbWUsIHRlc3Rf
bmFtZSk+KCkpOyBcCi0gICAgICByZXR1cm4gMDsgXAotICAgIH0gXAotICAgIHN0YXRpYyBpbnQg
Z3Rlc3RfcmVnaXN0ZXJpbmdfZHVtbXlfIEdURVNUX0FUVFJJQlVURV9VTlVTRURfOyBcCi0gICAg
R1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhcCi0gICAgICAgIEdURVNUX1RFU1RfQ0xB
U1NfTkFNRV8odGVzdF9jYXNlX25hbWUsIHRlc3RfbmFtZSkpOyBcCi0gIH07IFwKLSAgaW50IEdU
RVNUX1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9jYXNlX25hbWUsIFwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdGVzdF9uYW1lKTo6Z3Rlc3RfcmVnaXN0ZXJpbmdfZHVtbXlfID0gXAotICAg
ICAgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0X2Nhc2VfbmFtZSwgdGVzdF9uYW1lKTo6QWRk
VG9SZWdpc3RyeSgpOyBcCi0gIHZvaWQgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0X2Nhc2Vf
bmFtZSwgdGVzdF9uYW1lKTo6VGVzdEJvZHkoKQotCi0vLyBUaGUgb3B0aW9uYWwgbGFzdCBhcmd1
bWVudCB0byBJTlNUQU5USUFURV9URVNUX0NBU0VfUCBhbGxvd3MgdGhlIHVzZXIKLS8vIHRvIHNw
ZWNpZnkgYSBmdW5jdGlvbiBvciBmdW5jdG9yIHRoYXQgZ2VuZXJhdGVzIGN1c3RvbSB0ZXN0IG5h
bWUgc3VmZml4ZXMKLS8vIGJhc2VkIG9uIHRoZSB0ZXN0IHBhcmFtZXRlcnMuIFRoZSBmdW5jdGlv
biBzaG91bGQgYWNjZXB0IG9uZSBhcmd1bWVudCBvZgotLy8gdHlwZSB0ZXN0aW5nOjpUZXN0UGFy
YW1JbmZvPGNsYXNzIFBhcmFtVHlwZT4sIGFuZCByZXR1cm4gc3RkOjpzdHJpbmcuCisvLyBJTlNU
QU5USUFURV9URVNUX1NVSVRFX1AoVHdvQm9vbFNlcXVlbmNlLCBGbGFnRGVwZW5kZW50VGVzdCwK
Ky8vICAgICAgICAgICAgICAgICAgICAgICAgICBDb21iaW5lKEJvb2woKSwgQm9vbCgpKSk7Cisv
LwordGVtcGxhdGUgPHR5cGVuYW1lLi4uIEdlbmVyYXRvcj4KK2ludGVybmFsOjpDYXJ0ZXNpYW5Q
cm9kdWN0SG9sZGVyPEdlbmVyYXRvci4uLj4gQ29tYmluZShjb25zdCBHZW5lcmF0b3ImLi4uIGcp
IHsKKyAgcmV0dXJuIGludGVybmFsOjpDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyPEdlbmVyYXRvci4u
Lj4oZy4uLik7Cit9CisKKyNkZWZpbmUgVEVTVF9QKHRlc3Rfc3VpdGVfbmFtZSwgdGVzdF9uYW1l
KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgIGNsYXNzIEdURVNUX1RF
U1RfQ0xBU1NfTkFNRV8odGVzdF9zdWl0ZV9uYW1lLCB0ZXN0X25hbWUpICAgICAgICAgICAgICAg
ICAgICAgXAorICAgICAgOiBwdWJsaWMgdGVzdF9zdWl0ZV9uYW1lIHsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgIHB1YmxpYzogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
CisgICAgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0X3N1aXRlX25hbWUsIHRlc3RfbmFtZSko
KSB7fSAgICAgICAgICAgICAgICAgICAgXAorICAgIHZvaWQgVGVzdEJvZHkoKSBvdmVycmlkZTsg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCisgICBwcml2YXRlOiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIHN0YXRpYyBp
bnQgQWRkVG9SZWdpc3RyeSgpIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAgIDo6dGVzdGluZzo6VW5pdFRlc3Q6OkdldEluc3RhbmNlKCkgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgLT5wYXJhbWV0
ZXJpemVkX3Rlc3RfcmVnaXN0cnkoKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAorICAgICAgICAgIC5HZXRUZXN0U3VpdGVQYXR0ZXJuSG9sZGVyPHRlc3Rfc3VpdGVfbmFt
ZT4oICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICAgR1RFU1RfU1RSSU5H
SUZZXyh0ZXN0X3N1aXRlX25hbWUpLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisg
ICAgICAgICAgICAgIDo6dGVzdGluZzo6aW50ZXJuYWw6OkNvZGVMb2NhdGlvbihfX0ZJTEVfXywg
X19MSU5FX18pKSAgICAgICAgICAgXAorICAgICAgICAgIC0+QWRkVGVzdFBhdHRlcm4oICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAg
ICAgICAgR1RFU1RfU1RSSU5HSUZZXyh0ZXN0X3N1aXRlX25hbWUpLCBHVEVTVF9TVFJJTkdJRllf
KHRlc3RfbmFtZSksICBcCisgICAgICAgICAgICAgIG5ldyA6OnRlc3Rpbmc6OmludGVybmFsOjpU
ZXN0TWV0YUZhY3Rvcnk8R1RFU1RfVEVTVF9DTEFTU19OQU1FXyggXAorICAgICAgICAgICAgICAg
ICAgdGVzdF9zdWl0ZV9uYW1lLCB0ZXN0X25hbWUpPigpKTsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKKyAgICAgIHJldHVybiAwOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgfSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAorICAgIHN0YXRpYyBpbnQgZ3Rlc3RfcmVnaXN0ZXJpbmdfZHVtbXlfIEdURVNUX0FUVFJJQlVU
RV9VTlVTRURfOyAgICAgICAgICAgICAgIFwKKyAgICBHVEVTVF9ESVNBTExPV19DT1BZX0FORF9B
U1NJR05fKEdURVNUX1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9zdWl0ZV9uYW1lLCAgICBcCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRl
c3RfbmFtZSkpOyAgICAgICAgXAorICB9OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgaW50IEdURVNU
X1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9zdWl0ZV9uYW1lLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfbmFtZSk6Omd0
ZXN0X3JlZ2lzdGVyaW5nX2R1bW15XyA9ICAgICAgICAgICAgXAorICAgICAgR1RFU1RfVEVTVF9D
TEFTU19OQU1FXyh0ZXN0X3N1aXRlX25hbWUsIHRlc3RfbmFtZSk6OkFkZFRvUmVnaXN0cnkoKTsg
ICAgIFwKKyAgdm9pZCBHVEVTVF9URVNUX0NMQVNTX05BTUVfKHRlc3Rfc3VpdGVfbmFtZSwgdGVz
dF9uYW1lKTo6VGVzdEJvZHkoKQorCisvLyBUaGUgbGFzdCBhcmd1bWVudCB0byBJTlNUQU5USUFU
RV9URVNUX1NVSVRFX1AgYWxsb3dzIHRoZSB1c2VyIHRvIHNwZWNpZnkKKy8vIGdlbmVyYXRvciBh
bmQgYW4gb3B0aW9uYWwgZnVuY3Rpb24gb3IgZnVuY3RvciB0aGF0IGdlbmVyYXRlcyBjdXN0b20g
dGVzdCBuYW1lCisvLyBzdWZmaXhlcyBiYXNlZCBvbiB0aGUgdGVzdCBwYXJhbWV0ZXJzLiBTdWNo
IGEgZnVuY3Rpb24gb3IgZnVuY3RvciBzaG91bGQKKy8vIGFjY2VwdCBvbmUgYXJndW1lbnQgb2Yg
dHlwZSB0ZXN0aW5nOjpUZXN0UGFyYW1JbmZvPGNsYXNzIFBhcmFtVHlwZT4sIGFuZAorLy8gcmV0
dXJuIHN0ZDo6c3RyaW5nLgogLy8KIC8vIHRlc3Rpbmc6OlByaW50VG9TdHJpbmdQYXJhbU5hbWUg
aXMgYSBidWlsdGluIHRlc3Qgc3VmZml4IGdlbmVyYXRvciB0aGF0CiAvLyByZXR1cm5zIHRoZSB2
YWx1ZSBvZiB0ZXN0aW5nOjpQcmludFRvU3RyaW5nKEdldFBhcmFtKCkpLgpAQCAtMTQxMCwyNCAr
NDUzLDU4IEBAIGludGVybmFsOjpDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyMTA8R2VuZXJhdG9yMSwg
R2VuZXJhdG9yMiwgR2VuZXJhdG9yMywKIC8vIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIG9yIHVu
ZGVyc2NvcmUuIEJlY2F1c2UgUHJpbnRUb1N0cmluZyBhZGRzIHF1b3RlcwogLy8gdG8gc3RkOjpz
dHJpbmcgYW5kIEMgc3RyaW5ncywgaXQgd29uJ3Qgd29yayBmb3IgdGhlc2UgdHlwZXMuCiAKLSMg
ZGVmaW5lIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKHByZWZpeCwgdGVzdF9jYXNlX25hbWUsIGdl
bmVyYXRvciwgLi4uKSBcCi0gIHN0YXRpYyA6OnRlc3Rpbmc6OmludGVybmFsOjpQYXJhbUdlbmVy
YXRvcjx0ZXN0X2Nhc2VfbmFtZTo6UGFyYW1UeXBlPiBcCi0gICAgICBndGVzdF8jI3ByZWZpeCMj
dGVzdF9jYXNlX25hbWUjI19FdmFsR2VuZXJhdG9yXygpIHsgcmV0dXJuIGdlbmVyYXRvcjsgfSBc
Ci0gIHN0YXRpYyA6OnN0ZDo6c3RyaW5nIGd0ZXN0XyMjcHJlZml4IyN0ZXN0X2Nhc2VfbmFtZSMj
X0V2YWxHZW5lcmF0ZU5hbWVfKCBcCi0gICAgICBjb25zdCA6OnRlc3Rpbmc6OlRlc3RQYXJhbUlu
Zm88dGVzdF9jYXNlX25hbWU6OlBhcmFtVHlwZT4mIGluZm8pIHsgXAotICAgIHJldHVybiA6OnRl
c3Rpbmc6OmludGVybmFsOjpHZXRQYXJhbU5hbWVHZW48dGVzdF9jYXNlX25hbWU6OlBhcmFtVHlw
ZT4gXAotICAgICAgICAoX19WQV9BUkdTX18pKGluZm8pOyBcCi0gIH0gXAotICBzdGF0aWMgaW50
IGd0ZXN0XyMjcHJlZml4IyN0ZXN0X2Nhc2VfbmFtZSMjX2R1bW15XyBHVEVTVF9BVFRSSUJVVEVf
VU5VU0VEXyA9IFwKLSAgICAgIDo6dGVzdGluZzo6VW5pdFRlc3Q6OkdldEluc3RhbmNlKCktPnBh
cmFtZXRlcml6ZWRfdGVzdF9yZWdpc3RyeSgpLiBcCi0gICAgICAgICAgR2V0VGVzdENhc2VQYXR0
ZXJuSG9sZGVyPHRlc3RfY2FzZV9uYW1lPihcCi0gICAgICAgICAgICAgICN0ZXN0X2Nhc2VfbmFt
ZSwgXAotICAgICAgICAgICAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpDb2RlTG9jYXRpb24oXAot
ICAgICAgICAgICAgICAgICAgX19GSUxFX18sIF9fTElORV9fKSktPkFkZFRlc3RDYXNlSW5zdGFu
dGlhdGlvbihcCi0gICAgICAgICAgICAgICAgICAgICAgI3ByZWZpeCwgXAotICAgICAgICAgICAg
ICAgICAgICAgICZndGVzdF8jI3ByZWZpeCMjdGVzdF9jYXNlX25hbWUjI19FdmFsR2VuZXJhdG9y
XywgXAotICAgICAgICAgICAgICAgICAgICAgICZndGVzdF8jI3ByZWZpeCMjdGVzdF9jYXNlX25h
bWUjI19FdmFsR2VuZXJhdGVOYW1lXywgXAotICAgICAgICAgICAgICAgICAgICAgIF9fRklMRV9f
LCBfX0xJTkVfXykKKyNkZWZpbmUgR1RFU1RfRVhQQU5EXyhhcmcpIGFyZworI2RlZmluZSBHVEVT
VF9HRVRfRklSU1RfKGZpcnN0LCAuLi4pIGZpcnN0CisjZGVmaW5lIEdURVNUX0dFVF9TRUNPTkRf
KGZpcnN0LCBzZWNvbmQsIC4uLikgc2Vjb25kCisKKyNkZWZpbmUgSU5TVEFOVElBVEVfVEVTVF9T
VUlURV9QKHByZWZpeCwgdGVzdF9zdWl0ZV9uYW1lLCAuLi4pICAgICAgICAgICAgICAgIFwKKyAg
c3RhdGljIDo6dGVzdGluZzo6aW50ZXJuYWw6OlBhcmFtR2VuZXJhdG9yPHRlc3Rfc3VpdGVfbmFt
ZTo6UGFyYW1UeXBlPiAgICAgIFwKKyAgICAgIGd0ZXN0XyMjcHJlZml4IyN0ZXN0X3N1aXRlX25h
bWUjI19FdmFsR2VuZXJhdG9yXygpIHsgICAgICAgICAgICAgICAgICAgIFwKKyAgICByZXR1cm4g
R1RFU1RfRVhQQU5EXyhHVEVTVF9HRVRfRklSU1RfKF9fVkFfQVJHU19fLCBEVU1NWV9QQVJBTV8p
KTsgICAgICAgIFwKKyAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgc3RhdGljIDo6c3RkOjpzdHJp
bmcgZ3Rlc3RfIyNwcmVmaXgjI3Rlc3Rfc3VpdGVfbmFtZSMjX0V2YWxHZW5lcmF0ZU5hbWVfKCAg
IFwKKyAgICAgIGNvbnN0IDo6dGVzdGluZzo6VGVzdFBhcmFtSW5mbzx0ZXN0X3N1aXRlX25hbWU6
OlBhcmFtVHlwZT4mIGluZm8pIHsgICAgIFwKKyAgICBpZiAoOjp0ZXN0aW5nOjppbnRlcm5hbDo6
QWx3YXlzRmFsc2UoKSkgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAg
IDo6dGVzdGluZzo6aW50ZXJuYWw6OlRlc3ROb3RFbXB0eShHVEVTVF9FWFBBTkRfKEdURVNUX0dF
VF9TRUNPTkRfKCAgICAgIFwKKyAgICAgICAgICBfX1ZBX0FSR1NfXywgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICA6OnRl
c3Rpbmc6OmludGVybmFsOjpEZWZhdWx0UGFyYW1OYW1lPHRlc3Rfc3VpdGVfbmFtZTo6UGFyYW1U
eXBlPiwgIFwKKyAgICAgICAgICBEVU1NWV9QQVJBTV8pKSk7ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgIGF1dG8gdCA9IHN0ZDo6bWFr
ZV90dXBsZShfX1ZBX0FSR1NfXyk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
KyAgICAgIHN0YXRpY19hc3NlcnQoc3RkOjp0dXBsZV9zaXplPGRlY2x0eXBlKHQpPjo6dmFsdWUg
PD0gMiwgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICAgICAgICAgIlRvbyBNYW55IEFy
Z3MhIik7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB9ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKKyAgICByZXR1cm4gKChHVEVTVF9FWFBBTkRfKEdURVNUX0dFVF9TRUNP
TkRfKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgX19WQV9BUkdT
X18sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKKyAgICAgICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6RGVmYXVsdFBhcmFtTmFtZTx0ZXN0
X3N1aXRlX25hbWU6OlBhcmFtVHlwZT4sICAgIFwKKyAgICAgICAgRFVNTVlfUEFSQU1fKSkpKShp
bmZvKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAg
fSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwKKyAgc3RhdGljIGludCBndGVzdF8jI3ByZWZpeCMjdGVzdF9z
dWl0ZV9uYW1lIyNfZHVtbXlfICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgIEdURVNU
X0FUVFJJQlVURV9VTlVTRURfID0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAgICAgICA6OnRlc3Rpbmc6OlVuaXRUZXN0OjpHZXRJbnN0YW5jZSgp
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICAgLT5wYXJh
bWV0ZXJpemVkX3Rlc3RfcmVnaXN0cnkoKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKKyAgICAgICAgICAgICAgLkdldFRlc3RTdWl0ZVBhdHRlcm5Ib2xkZXI8dGVzdF9zdWl0ZV9u
YW1lPiggICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICAgICAgIEdURVNUX1NUUklO
R0lGWV8odGVzdF9zdWl0ZV9uYW1lKSwgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAg
ICAgICAgICAgICAgIDo6dGVzdGluZzo6aW50ZXJuYWw6OkNvZGVMb2NhdGlvbihfX0ZJTEVfXywg
X19MSU5FX18pKSAgICAgIFwKKyAgICAgICAgICAgICAgLT5BZGRUZXN0U3VpdGVJbnN0YW50aWF0
aW9uKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICAg
ICAgIEdURVNUX1NUUklOR0lGWV8ocHJlZml4KSwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKKyAgICAgICAgICAgICAgICAgICZndGVzdF8jI3ByZWZpeCMjdGVzdF9zdWl0ZV9u
YW1lIyNfRXZhbEdlbmVyYXRvcl8sICAgICAgICAgIFwKKyAgICAgICAgICAgICAgICAgICZndGVz
dF8jI3ByZWZpeCMjdGVzdF9zdWl0ZV9uYW1lIyNfRXZhbEdlbmVyYXRlTmFtZV8sICAgICAgIFwK
KyAgICAgICAgICAgICAgICAgIF9fRklMRV9fLCBfX0xJTkVfXykKKworCisvLyBBbGxvdyBNYXJr
aW5nIGEgUGFyYW1ldGVyaXplZCB0ZXN0IGNsYXNzIGFzIG5vdCBuZWVkaW5nIHRvIGJlIGluc3Rh
bnRpYXRlZC4KKyNkZWZpbmUgR1RFU1RfQUxMT1dfVU5JTlNUQU5USUFURURfUEFSQU1FVEVSSVpF
RF9URVNUKFQpICAgICAgICAgICAgICAgICAgIFwKKyAgbmFtZXNwYWNlIGd0ZXN0X2RvX25vdF91
c2Vfb3V0c2lkZV9uYW1lc3BhY2Vfc2NvcGUge30gICAgICAgICAgICAgICAgICAgXAorICBzdGF0
aWMgY29uc3QgOjp0ZXN0aW5nOjppbnRlcm5hbDo6TWFya0FzSWdub3JlZCBndGVzdF9hbGxvd19p
Z25vcmVfIyNUKCBcCisgICAgICBHVEVTVF9TVFJJTkdJRllfKFQpKQorCisvLyBMZWdhY3kgQVBJ
IGlzIGRlcHJlY2F0ZWQgYnV0IHN0aWxsIGF2YWlsYWJsZQorI2lmbmRlZiBHVEVTVF9SRU1PVkVf
TEVHQUNZX1RFU1RfQ0FTRUFQSV8KKyNkZWZpbmUgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgc3RhdGljX2Fzc2Vy
dCg6OnRlc3Rpbmc6OmludGVybmFsOjpJbnN0YW50aWF0ZVRlc3RDYXNlX1BfSXNEZXByZWNhdGVk
KCksIFwKKyAgICAgICAgICAgICAgICAiIik7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QCisj
ZW5kaWYgIC8vIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwogCiB9ICAvLyBuYW1l
c3BhY2UgdGVzdGluZwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2ds
ZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QtcGFyYW0tdGVzdC5oLnB1bXAgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QtcGFyYW0t
dGVzdC5oLnB1bXAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI3NGYyYjNiNTY5MzMw
MDEyZTg1ZWUzY2Y0ZmQ1N2ViMGI1NDIxZDYuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9p
bmNsdWRlL2d0ZXN0L2d0ZXN0LXBhcmFtLXRlc3QuaC5wdW1wCisrKyAvZGV2L251bGwKQEAgLTEs
NTAwICswLDAgQEAKLSQkIC0qLSBtb2RlOiBjKys7IC0qLQotJHZhciBuID0gNTAgICQkIE1heGlt
dW0gbGVuZ3RoIG9mIFZhbHVlcyBhcmd1bWVudHMgd2Ugd2FudCB0byBzdXBwb3J0LgotJHZhciBt
YXh0dXBsZSA9IDEwICAkJCBNYXhpbXVtIG51bWJlciBvZiBDb21iaW5lIGFyZ3VtZW50cyB3ZSB3
YW50IHRvIHN1cHBvcnQuCi0vLyBDb3B5cmlnaHQgMjAwOCwgR29vZ2xlIEluYy4KLS8vIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCi0vLwotLy8gUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0vLyBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCi0vLyBt
ZXQ6Ci0vLwotLy8gICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLS8vIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLS8vICAgICAqIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLS8vIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIKLS8vIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUKLS8vIGRpc3RyaWJ1dGlvbi4KLS8vICAgICAqIE5laXRoZXIgdGhlIG5hbWUg
b2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKLS8vIGNvbnRyaWJ1dG9ycyBtYXkg
YmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCi0vLyB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgot
Ly8KLS8vIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJT
IEFORCBDT05UUklCVVRPUlMKLS8vICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0vLyBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKLS8vIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUCi0vLyBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLS8vIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKLS8vIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAotLy8g
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCi0vLyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0vLyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLS8vIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCi0vLwotLy8gTWFjcm9zIGFuZCBmdW5jdGlvbnMgZm9yIGltcGxlbWVudGluZyBwYXJhbWV0
ZXJpemVkIHRlc3RzCi0vLyBpbiBHb29nbGUgQysrIFRlc3RpbmcgYW5kIE1vY2tpbmcgRnJhbWV3
b3JrIChHb29nbGUgVGVzdCkKLS8vCi0vLyBUaGlzIGZpbGUgaXMgZ2VuZXJhdGVkIGJ5IGEgU0NS
SVBULiAgRE8gTk9UIEVESVQgQlkgSEFORCEKLS8vCi0vLyBHT09HTEVURVNUX0NNMDAwMSBETyBO
T1QgREVMRVRFCi0jaWZuZGVmIEdURVNUX0lOQ0xVREVfR1RFU1RfR1RFU1RfUEFSQU1fVEVTVF9I
XwotI2RlZmluZSBHVEVTVF9JTkNMVURFX0dURVNUX0dURVNUX1BBUkFNX1RFU1RfSF8KLQotCi0v
LyBWYWx1ZS1wYXJhbWV0ZXJpemVkIHRlc3RzIGFsbG93IHlvdSB0byB0ZXN0IHlvdXIgY29kZSB3
aXRoIGRpZmZlcmVudAotLy8gcGFyYW1ldGVycyB3aXRob3V0IHdyaXRpbmcgbXVsdGlwbGUgY29w
aWVzIG9mIHRoZSBzYW1lIHRlc3QuCi0vLwotLy8gSGVyZSBpcyBob3cgeW91IHVzZSB2YWx1ZS1w
YXJhbWV0ZXJpemVkIHRlc3RzOgotCi0jaWYgMAotCi0vLyBUbyB3cml0ZSB2YWx1ZS1wYXJhbWV0
ZXJpemVkIHRlc3RzLCBmaXJzdCB5b3Ugc2hvdWxkIGRlZmluZSBhIGZpeHR1cmUKLS8vIGNsYXNz
LiBJdCBpcyB1c3VhbGx5IGRlcml2ZWQgZnJvbSB0ZXN0aW5nOjpUZXN0V2l0aFBhcmFtPFQ+IChz
ZWUgYmVsb3cgZm9yCi0vLyBhbm90aGVyIGluaGVyaXRhbmNlIHNjaGVtZSB0aGF0J3Mgc29tZXRp
bWVzIHVzZWZ1bCBpbiBtb3JlIGNvbXBsaWNhdGVkCi0vLyBjbGFzcyBoaWVyYXJjaGllcyksIHdo
ZXJlIHRoZSB0eXBlIG9mIHlvdXIgcGFyYW1ldGVyIHZhbHVlcy4KLS8vIFRlc3RXaXRoUGFyYW08
VD4gaXMgaXRzZWxmIGRlcml2ZWQgZnJvbSB0ZXN0aW5nOjpUZXN0LiBUIGNhbiBiZSBhbnkKLS8v
IGNvcHlhYmxlIHR5cGUuIElmIGl0J3MgYSByYXcgcG9pbnRlciwgeW91IGFyZSByZXNwb25zaWJs
ZSBmb3IgbWFuYWdpbmcgdGhlCi0vLyBsaWZlc3BhbiBvZiB0aGUgcG9pbnRlZCB2YWx1ZXMuCi0K
LWNsYXNzIEZvb1Rlc3QgOiBwdWJsaWMgOjp0ZXN0aW5nOjpUZXN0V2l0aFBhcmFtPGNvbnN0IGNo
YXIqPiB7Ci0gIC8vIFlvdSBjYW4gaW1wbGVtZW50IGFsbCB0aGUgdXN1YWwgY2xhc3MgZml4dHVy
ZSBtZW1iZXJzIGhlcmUuCi19OwotCi0vLyBUaGVuLCB1c2UgdGhlIFRFU1RfUCBtYWNybyB0byBk
ZWZpbmUgYXMgbWFueSBwYXJhbWV0ZXJpemVkIHRlc3RzCi0vLyBmb3IgdGhpcyBmaXh0dXJlIGFz
IHlvdSB3YW50LiBUaGUgX1Agc3VmZml4IGlzIGZvciAicGFyYW1ldGVyaXplZCIKLS8vIG9yICJw
YXR0ZXJuIiwgd2hpY2hldmVyIHlvdSBwcmVmZXIgdG8gdGhpbmsuCi0KLVRFU1RfUChGb29UZXN0
LCBEb2VzQmxhaCkgewotICAvLyBJbnNpZGUgYSB0ZXN0LCBhY2Nlc3MgdGhlIHRlc3QgcGFyYW1l
dGVyIHdpdGggdGhlIEdldFBhcmFtKCkgbWV0aG9kCi0gIC8vIG9mIHRoZSBUZXN0V2l0aFBhcmFt
PFQ+IGNsYXNzOgotICBFWFBFQ1RfVFJVRShmb28uQmxhaChHZXRQYXJhbSgpKSk7Ci0gIC4uLgot
fQotCi1URVNUX1AoRm9vVGVzdCwgSGFzQmxhaEJsYWgpIHsKLSAgLi4uCi19Ci0KLS8vIEZpbmFs
bHksIHlvdSBjYW4gdXNlIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QIHRvIGluc3RhbnRpYXRlIHRo
ZSB0ZXN0Ci0vLyBjYXNlIHdpdGggYW55IHNldCBvZiBwYXJhbWV0ZXJzIHlvdSB3YW50LiBHb29n
bGUgVGVzdCBkZWZpbmVzIGEgbnVtYmVyCi0vLyBvZiBmdW5jdGlvbnMgZm9yIGdlbmVyYXRpbmcg
dGVzdCBwYXJhbWV0ZXJzLiBUaGV5IHJldHVybiB3aGF0IHdlIGNhbGwKLS8vIChzdXJwcmlzZSEp
IHBhcmFtZXRlciBnZW5lcmF0b3JzLiBIZXJlIGlzIGEgc3VtbWFyeSBvZiB0aGVtLCB3aGljaAot
Ly8gYXJlIGFsbCBpbiB0aGUgdGVzdGluZyBuYW1lc3BhY2U6Ci0vLwotLy8KLS8vICBSYW5nZShi
ZWdpbiwgZW5kIFssIHN0ZXBdKSAtIFlpZWxkcyB2YWx1ZXMge2JlZ2luLCBiZWdpbitzdGVwLAot
Ly8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmVnaW4rc3RlcCtzdGVwLCAuLi59LiBU
aGUgdmFsdWVzIGRvIG5vdAotLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5jbHVk
ZSBlbmQuIHN0ZXAgZGVmYXVsdHMgdG8gMS4KLS8vICBWYWx1ZXModjEsIHYyLCAuLi4sIHZOKSAg
ICAtIFlpZWxkcyB2YWx1ZXMge3YxLCB2MiwgLi4uLCB2Tn0uCi0vLyAgVmFsdWVzSW4oY29udGFp
bmVyKSAgICAgICAgLSBZaWVsZHMgdmFsdWVzIGZyb20gYSBDLXN0eWxlIGFycmF5LCBhbiBTVEwK
LS8vICBWYWx1ZXNJbihiZWdpbixlbmQpICAgICAgICAgIGNvbnRhaW5lciwgb3IgYW4gaXRlcmF0
b3IgcmFuZ2UgW2JlZ2luLCBlbmQpLgotLy8gIEJvb2woKSAgICAgICAgICAgICAgICAgICAgIC0g
WWllbGRzIHNlcXVlbmNlIHtmYWxzZSwgdHJ1ZX0uCi0vLyAgQ29tYmluZShnMSwgZzIsIC4uLiwg
Z04pICAgLSBZaWVsZHMgYWxsIGNvbWJpbmF0aW9ucyAodGhlIENhcnRlc2lhbiBwcm9kdWN0Ci0v
LyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgdGhlIG1hdGggc2F2dnkpIG9mIHRo
ZSB2YWx1ZXMgZ2VuZXJhdGVkCi0vLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieSB0
aGUgTiBnZW5lcmF0b3JzLgotLy8KLS8vIEZvciBtb3JlIGRldGFpbHMsIHNlZSBjb21tZW50cyBh
dCB0aGUgZGVmaW5pdGlvbnMgb2YgdGhlc2UgZnVuY3Rpb25zIGJlbG93Ci0vLyBpbiB0aGlzIGZp
bGUuCi0vLwotLy8gVGhlIGZvbGxvd2luZyBzdGF0ZW1lbnQgd2lsbCBpbnN0YW50aWF0ZSB0ZXN0
cyBmcm9tIHRoZSBGb29UZXN0IHRlc3QgY2FzZQotLy8gZWFjaCB3aXRoIHBhcmFtZXRlciB2YWx1
ZXMgIm1lZW55IiwgIm1pbnkiLCBhbmQgIm1vZSIuCi0KLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9Q
KEluc3RhbnRpYXRpb25OYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgRm9vVGVzdCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgIFZhbHVlcygibWVlbnkiLCAibWlueSIsICJtb2UiKSk7Ci0K
LS8vIFRvIGRpc3Rpbmd1aXNoIGRpZmZlcmVudCBpbnN0YW5jZXMgb2YgdGhlIHBhdHRlcm4sICh5
ZXMsIHlvdQotLy8gY2FuIGluc3RhbnRpYXRlIGl0IG1vcmUgdGhlbiBvbmNlKSB0aGUgZmlyc3Qg
YXJndW1lbnQgdG8gdGhlCi0vLyBJTlNUQU5USUFURV9URVNUX0NBU0VfUCBtYWNybyBpcyBhIHBy
ZWZpeCB0aGF0IHdpbGwgYmUgYWRkZWQgdG8gdGhlCi0vLyBhY3R1YWwgdGVzdCBjYXNlIG5hbWUu
IFJlbWVtYmVyIHRvIHBpY2sgdW5pcXVlIHByZWZpeGVzIGZvciBkaWZmZXJlbnQKLS8vIGluc3Rh
bnRpYXRpb25zLiBUaGUgdGVzdHMgZnJvbSB0aGUgaW5zdGFudGlhdGlvbiBhYm92ZSB3aWxsIGhh
dmUKLS8vIHRoZXNlIG5hbWVzOgotLy8KLS8vICAgICogSW5zdGFudGlhdGlvbk5hbWUvRm9vVGVz
dC5Eb2VzQmxhaC8wIGZvciAibWVlbnkiCi0vLyAgICAqIEluc3RhbnRpYXRpb25OYW1lL0Zvb1Rl
c3QuRG9lc0JsYWgvMSBmb3IgIm1pbnkiCi0vLyAgICAqIEluc3RhbnRpYXRpb25OYW1lL0Zvb1Rl
c3QuRG9lc0JsYWgvMiBmb3IgIm1vZSIKLS8vICAgICogSW5zdGFudGlhdGlvbk5hbWUvRm9vVGVz
dC5IYXNCbGFoQmxhaC8wIGZvciAibWVlbnkiCi0vLyAgICAqIEluc3RhbnRpYXRpb25OYW1lL0Zv
b1Rlc3QuSGFzQmxhaEJsYWgvMSBmb3IgIm1pbnkiCi0vLyAgICAqIEluc3RhbnRpYXRpb25OYW1l
L0Zvb1Rlc3QuSGFzQmxhaEJsYWgvMiBmb3IgIm1vZSIKLS8vCi0vLyBZb3UgY2FuIHVzZSB0aGVz
ZSBuYW1lcyBpbiAtLWd0ZXN0X2ZpbHRlci4KLS8vCi0vLyBUaGlzIHN0YXRlbWVudCB3aWxsIGlu
c3RhbnRpYXRlIGFsbCB0ZXN0cyBmcm9tIEZvb1Rlc3QgYWdhaW4sIGVhY2gKLS8vIHdpdGggcGFy
YW1ldGVyIHZhbHVlcyAiY2F0IiBhbmQgImRvZyI6Ci0KLWNvbnN0IGNoYXIqIHBldHNbXSA9IHsi
Y2F0IiwgImRvZyJ9OwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoQW5vdGhlckluc3RhbnRpYXRp
b25OYW1lLCBGb29UZXN0LCBWYWx1ZXNJbihwZXRzKSk7Ci0KLS8vIFRoZSB0ZXN0cyBmcm9tIHRo
ZSBpbnN0YW50aWF0aW9uIGFib3ZlIHdpbGwgaGF2ZSB0aGVzZSBuYW1lczoKLS8vCi0vLyAgICAq
IEFub3RoZXJJbnN0YW50aWF0aW9uTmFtZS9Gb29UZXN0LkRvZXNCbGFoLzAgZm9yICJjYXQiCi0v
LyAgICAqIEFub3RoZXJJbnN0YW50aWF0aW9uTmFtZS9Gb29UZXN0LkRvZXNCbGFoLzEgZm9yICJk
b2ciCi0vLyAgICAqIEFub3RoZXJJbnN0YW50aWF0aW9uTmFtZS9Gb29UZXN0Lkhhc0JsYWhCbGFo
LzAgZm9yICJjYXQiCi0vLyAgICAqIEFub3RoZXJJbnN0YW50aWF0aW9uTmFtZS9Gb29UZXN0Lkhh
c0JsYWhCbGFoLzEgZm9yICJkb2ciCi0vLwotLy8gUGxlYXNlIG5vdGUgdGhhdCBJTlNUQU5USUFU
RV9URVNUX0NBU0VfUCB3aWxsIGluc3RhbnRpYXRlIGFsbCB0ZXN0cwotLy8gaW4gdGhlIGdpdmVu
IHRlc3QgY2FzZSwgd2hldGhlciB0aGVpciBkZWZpbml0aW9ucyBjb21lIGJlZm9yZSBvcgotLy8g
QUZURVIgdGhlIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QIHN0YXRlbWVudC4KLS8vCi0vLyBQbGVh
c2UgYWxzbyBub3RlIHRoYXQgZ2VuZXJhdG9yIGV4cHJlc3Npb25zIChpbmNsdWRpbmcgcGFyYW1l
dGVycyB0byB0aGUKLS8vIGdlbmVyYXRvcnMpIGFyZSBldmFsdWF0ZWQgaW4gSW5pdEdvb2dsZVRl
c3QoKSwgYWZ0ZXIgbWFpbigpIGhhcyBzdGFydGVkLgotLy8gVGhpcyBhbGxvd3MgdGhlIHVzZXIg
b24gb25lIGhhbmQsIHRvIGFkanVzdCBnZW5lcmF0b3IgcGFyYW1ldGVycyBpbiBvcmRlcgotLy8g
dG8gZHluYW1pY2FsbHkgZGV0ZXJtaW5lIGEgc2V0IG9mIHRlc3RzIHRvIHJ1biBhbmQgb24gdGhl
IG90aGVyIGhhbmQsCi0vLyBnaXZlIHRoZSB1c2VyIGEgY2hhbmNlIHRvIGluc3BlY3QgdGhlIGdl
bmVyYXRlZCB0ZXN0cyB3aXRoIEdvb2dsZSBUZXN0Ci0vLyByZWZsZWN0aW9uIEFQSSBiZWZvcmUg
UlVOX0FMTF9URVNUUygpIGlzIGV4ZWN1dGVkLgotLy8KLS8vIFlvdSBjYW4gc2VlIHNhbXBsZXMv
c2FtcGxlN191bml0dGVzdC5jYyBhbmQgc2FtcGxlcy9zYW1wbGU4X3VuaXR0ZXN0LmNjCi0vLyBm
b3IgbW9yZSBleGFtcGxlcy4KLS8vCi0vLyBJbiB0aGUgZnV0dXJlLCB3ZSBwbGFuIHRvIHB1Ymxp
c2ggdGhlIEFQSSBmb3IgZGVmaW5pbmcgbmV3IHBhcmFtZXRlcgotLy8gZ2VuZXJhdG9ycy4gQnV0
IGZvciBub3cgdGhpcyBpbnRlcmZhY2UgcmVtYWlucyBwYXJ0IG9mIHRoZSBpbnRlcm5hbAotLy8g
aW1wbGVtZW50YXRpb24gYW5kIGlzIHN1YmplY3QgdG8gY2hhbmdlLgotLy8KLS8vCi0vLyBBIHBh
cmFtZXRlcml6ZWQgdGVzdCBmaXh0dXJlIG11c3QgYmUgZGVyaXZlZCBmcm9tIHRlc3Rpbmc6OlRl
c3QgYW5kIGZyb20KLS8vIHRlc3Rpbmc6OldpdGhQYXJhbUludGVyZmFjZTxUPiwgd2hlcmUgVCBp
cyB0aGUgdHlwZSBvZiB0aGUgcGFyYW1ldGVyCi0vLyB2YWx1ZXMuIEluaGVyaXRpbmcgZnJvbSBU
ZXN0V2l0aFBhcmFtPFQ+IHNhdGlzZmllcyB0aGF0IHJlcXVpcmVtZW50IGJlY2F1c2UKLS8vIFRl
c3RXaXRoUGFyYW08VD4gaW5oZXJpdHMgZnJvbSBib3RoIFRlc3QgYW5kIFdpdGhQYXJhbUludGVy
ZmFjZS4gSW4gbW9yZQotLy8gY29tcGxpY2F0ZWQgaGllcmFyY2hpZXMsIGhvd2V2ZXIsIGl0IGlz
IG9jY2FzaW9uYWxseSB1c2VmdWwgdG8gaW5oZXJpdAotLy8gc2VwYXJhdGVseSBmcm9tIFRlc3Qg
YW5kIFdpdGhQYXJhbUludGVyZmFjZS4gRm9yIGV4YW1wbGU6Ci0KLWNsYXNzIEJhc2VUZXN0IDog
cHVibGljIDo6dGVzdGluZzo6VGVzdCB7Ci0gIC8vIFlvdSBjYW4gaW5oZXJpdCBhbGwgdGhlIHVz
dWFsIG1lbWJlcnMgZm9yIGEgbm9uLXBhcmFtZXRlcml6ZWQgdGVzdAotICAvLyBmaXh0dXJlIGhl
cmUuCi19OwotCi1jbGFzcyBEZXJpdmVkVGVzdCA6IHB1YmxpYyBCYXNlVGVzdCwgcHVibGljIDo6
dGVzdGluZzo6V2l0aFBhcmFtSW50ZXJmYWNlPGludD4gewotICAvLyBUaGUgdXN1YWwgdGVzdCBm
aXh0dXJlIG1lbWJlcnMgZ28gaGVyZSB0b28uCi19OwotCi1URVNUX0YoQmFzZVRlc3QsIEhhc0Zv
bykgewotICAvLyBUaGlzIGlzIGFuIG9yZGluYXJ5IG5vbi1wYXJhbWV0ZXJpemVkIHRlc3QuCi19
Ci0KLVRFU1RfUChEZXJpdmVkVGVzdCwgRG9lc0JsYWgpIHsKLSAgLy8gR2V0UGFyYW0gd29ya3Mg
anVzdCB0aGUgc2FtZSBoZXJlIGFzIGlmIHlvdSBpbmhlcml0IGZyb20gVGVzdFdpdGhQYXJhbS4K
LSAgRVhQRUNUX1RSVUUoZm9vLkJsYWgoR2V0UGFyYW0oKSkpOwotfQotCi0jZW5kaWYgIC8vIDAK
LQotI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQuaCIKLQotI2lmICFHVEVTVF9P
U19TWU1CSUFOCi0jIGluY2x1ZGUgPHV0aWxpdHk+Ci0jZW5kaWYKLQotI2luY2x1ZGUgImd0ZXN0
L2ludGVybmFsL2d0ZXN0LWludGVybmFsLmgiCi0jaW5jbHVkZSAiZ3Rlc3QvaW50ZXJuYWwvZ3Rl
c3QtcGFyYW0tdXRpbC5oIgotI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LXBhcmFtLXV0
aWwtZ2VuZXJhdGVkLmgiCi0KLW5hbWVzcGFjZSB0ZXN0aW5nIHsKLQotLy8gRnVuY3Rpb25zIHBy
b2R1Y2luZyBwYXJhbWV0ZXIgZ2VuZXJhdG9ycy4KLS8vCi0vLyBHb29nbGUgVGVzdCB1c2VzIHRo
ZXNlIGdlbmVyYXRvcnMgdG8gcHJvZHVjZSBwYXJhbWV0ZXJzIGZvciB2YWx1ZS0KLS8vIHBhcmFt
ZXRlcml6ZWQgdGVzdHMuIFdoZW4gYSBwYXJhbWV0ZXJpemVkIHRlc3QgY2FzZSBpcyBpbnN0YW50
aWF0ZWQKLS8vIHdpdGggYSBwYXJ0aWN1bGFyIGdlbmVyYXRvciwgR29vZ2xlIFRlc3QgY3JlYXRl
cyBhbmQgcnVucyB0ZXN0cwotLy8gZm9yIGVhY2ggZWxlbWVudCBpbiB0aGUgc2VxdWVuY2UgcHJv
ZHVjZWQgYnkgdGhlIGdlbmVyYXRvci4KLS8vCi0vLyBJbiB0aGUgZm9sbG93aW5nIHNhbXBsZSwg
dGVzdHMgZnJvbSB0ZXN0IGNhc2UgRm9vVGVzdCBhcmUgaW5zdGFudGlhdGVkCi0vLyBlYWNoIHRo
cmVlIHRpbWVzIHdpdGggcGFyYW1ldGVyIHZhbHVlcyAzLCA1LCBhbmQgODoKLS8vCi0vLyBjbGFz
cyBGb29UZXN0IDogcHVibGljIFRlc3RXaXRoUGFyYW08aW50PiB7IC4uLiB9OwotLy8KLS8vIFRF
U1RfUChGb29UZXN0LCBUZXN0VGhpcykgewotLy8gfQotLy8gVEVTVF9QKEZvb1Rlc3QsIFRlc3RU
aGF0KSB7Ci0vLyB9Ci0vLyBJTlNUQU5USUFURV9URVNUX0NBU0VfUChUZXN0U2VxdWVuY2UsIEZv
b1Rlc3QsIFZhbHVlcygzLCA1LCA4KSk7Ci0vLwotCi0vLyBSYW5nZSgpIHJldHVybnMgZ2VuZXJh
dG9ycyBwcm92aWRpbmcgc2VxdWVuY2VzIG9mIHZhbHVlcyBpbiBhIHJhbmdlLgotLy8KLS8vIFN5
bm9wc2lzOgotLy8gUmFuZ2Uoc3RhcnQsIGVuZCkKLS8vICAgLSByZXR1cm5zIGEgZ2VuZXJhdG9y
IHByb2R1Y2luZyBhIHNlcXVlbmNlIG9mIHZhbHVlcyB7c3RhcnQsIHN0YXJ0KzEsCi0vLyAgICAg
c3RhcnQrMiwgLi4uLCB9LgotLy8gUmFuZ2Uoc3RhcnQsIGVuZCwgc3RlcCkKLS8vICAgLSByZXR1
cm5zIGEgZ2VuZXJhdG9yIHByb2R1Y2luZyBhIHNlcXVlbmNlIG9mIHZhbHVlcyB7c3RhcnQsIHN0
YXJ0K3N0ZXAsCi0vLyAgICAgc3RhcnQrc3RlcCtzdGVwLCAuLi4sIH0uCi0vLyBOb3RlczoKLS8v
ICAgKiBUaGUgZ2VuZXJhdGVkIHNlcXVlbmNlcyBuZXZlciBpbmNsdWRlIGVuZC4gRm9yIGV4YW1w
bGUsIFJhbmdlKDEsIDUpCi0vLyAgICAgcmV0dXJucyBhIGdlbmVyYXRvciBwcm9kdWNpbmcgYSBz
ZXF1ZW5jZSB7MSwgMiwgMywgNH0uIFJhbmdlKDEsIDksIDIpCi0vLyAgICAgcmV0dXJucyBhIGdl
bmVyYXRvciBwcm9kdWNpbmcgezEsIDMsIDUsIDd9LgotLy8gICAqIHN0YXJ0IGFuZCBlbmQgbXVz
dCBoYXZlIHRoZSBzYW1lIHR5cGUuIFRoYXQgdHlwZSBtYXkgYmUgYW55IGludGVncmFsIG9yCi0v
LyAgICAgZmxvYXRpbmctcG9pbnQgdHlwZSBvciBhIHVzZXIgZGVmaW5lZCB0eXBlIHNhdGlzZnlp
bmcgdGhlc2UgY29uZGl0aW9uczoKLS8vICAgICAqIEl0IG11c3QgYmUgYXNzaWduYWJsZSAoaGF2
ZSBvcGVyYXRvcj0oKSBkZWZpbmVkKS4KLS8vICAgICAqIEl0IG11c3QgaGF2ZSBvcGVyYXRvciso
KSAob3BlcmF0b3IrKGludC1jb21wYXRpYmxlIHR5cGUpIGZvcgotLy8gICAgICAgdHdvLW9wZXJh
bmQgdmVyc2lvbikuCi0vLyAgICAgKiBJdCBtdXN0IGhhdmUgb3BlcmF0b3I8KCkgZGVmaW5lZC4K
LS8vICAgICBFbGVtZW50cyBpbiB0aGUgcmVzdWx0aW5nIHNlcXVlbmNlcyB3aWxsIGFsc28gaGF2
ZSB0aGF0IHR5cGUuCi0vLyAgICogQ29uZGl0aW9uIHN0YXJ0IDwgZW5kIG11c3QgYmUgc2F0aXNm
aWVkIGluIG9yZGVyIGZvciByZXN1bHRpbmcgc2VxdWVuY2VzCi0vLyAgICAgdG8gY29udGFpbiBh
bnkgZWxlbWVudHMuCi0vLwotdGVtcGxhdGUgPHR5cGVuYW1lIFQsIHR5cGVuYW1lIEluY3JlbWVu
dFQ+Ci1pbnRlcm5hbDo6UGFyYW1HZW5lcmF0b3I8VD4gUmFuZ2UoVCBzdGFydCwgVCBlbmQsIElu
Y3JlbWVudFQgc3RlcCkgewotICByZXR1cm4gaW50ZXJuYWw6OlBhcmFtR2VuZXJhdG9yPFQ+KAot
ICAgICAgbmV3IGludGVybmFsOjpSYW5nZUdlbmVyYXRvcjxULCBJbmNyZW1lbnRUPihzdGFydCwg
ZW5kLCBzdGVwKSk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotaW50ZXJuYWw6OlBhcmFt
R2VuZXJhdG9yPFQ+IFJhbmdlKFQgc3RhcnQsIFQgZW5kKSB7Ci0gIHJldHVybiBSYW5nZShzdGFy
dCwgZW5kLCAxKTsKLX0KLQotLy8gVmFsdWVzSW4oKSBmdW5jdGlvbiBhbGxvd3MgZ2VuZXJhdGlv
biBvZiB0ZXN0cyB3aXRoIHBhcmFtZXRlcnMgY29taW5nIGZyb20KLS8vIGEgY29udGFpbmVyLgot
Ly8KLS8vIFN5bm9wc2lzOgotLy8gVmFsdWVzSW4oY29uc3QgVCAoJmFycmF5KVtOXSkKLS8vICAg
LSByZXR1cm5zIGEgZ2VuZXJhdG9yIHByb2R1Y2luZyBzZXF1ZW5jZXMgd2l0aCBlbGVtZW50cyBm
cm9tCi0vLyAgICAgYSBDLXN0eWxlIGFycmF5LgotLy8gVmFsdWVzSW4oY29uc3QgQ29udGFpbmVy
JiBjb250YWluZXIpCi0vLyAgIC0gcmV0dXJucyBhIGdlbmVyYXRvciBwcm9kdWNpbmcgc2VxdWVu
Y2VzIHdpdGggZWxlbWVudHMgZnJvbQotLy8gICAgIGFuIFNUTC1zdHlsZSBjb250YWluZXIuCi0v
LyBWYWx1ZXNJbihJdGVyYXRvciBiZWdpbiwgSXRlcmF0b3IgZW5kKQotLy8gICAtIHJldHVybnMg
YSBnZW5lcmF0b3IgcHJvZHVjaW5nIHNlcXVlbmNlcyB3aXRoIGVsZW1lbnRzIGZyb20KLS8vICAg
ICBhIHJhbmdlIFtiZWdpbiwgZW5kKSBkZWZpbmVkIGJ5IGEgcGFpciBvZiBTVEwtc3R5bGUgaXRl
cmF0b3JzLiBUaGVzZQotLy8gICAgIGl0ZXJhdG9ycyBjYW4gYWxzbyBiZSBwbGFpbiBDIHBvaW50
ZXJzLgotLy8KLS8vIFBsZWFzZSBub3RlIHRoYXQgVmFsdWVzSW4gY29waWVzIHRoZSB2YWx1ZXMg
ZnJvbSB0aGUgY29udGFpbmVycwotLy8gcGFzc2VkIGluIGFuZCBrZWVwcyB0aGVtIHRvIGdlbmVy
YXRlIHRlc3RzIGluIFJVTl9BTExfVEVTVFMoKS4KLS8vCi0vLyBFeGFtcGxlczoKLS8vCi0vLyBU
aGlzIGluc3RhbnRpYXRlcyB0ZXN0cyBmcm9tIHRlc3QgY2FzZSBTdHJpbmdUZXN0Ci0vLyBlYWNo
IHdpdGggQy1zdHJpbmcgdmFsdWVzIG9mICJmb28iLCAiYmFyIiwgYW5kICJiYXoiOgotLy8KLS8v
IGNvbnN0IGNoYXIqIHN0cmluZ3NbXSA9IHsiZm9vIiwgImJhciIsICJiYXoifTsKLS8vIElOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKFN0cmluZ1NlcXVlbmNlLCBTdHJpbmdUZXN0LCBWYWx1ZXNJbihz
dHJpbmdzKSk7Ci0vLwotLy8gVGhpcyBpbnN0YW50aWF0ZXMgdGVzdHMgZnJvbSB0ZXN0IGNhc2Ug
U3RsU3RyaW5nVGVzdAotLy8gZWFjaCB3aXRoIFNUTCBzdHJpbmdzIHdpdGggdmFsdWVzICJhIiBh
bmQgImIiOgotLy8KLS8vIDo6c3RkOjp2ZWN0b3I8IDo6c3RkOjpzdHJpbmc+IEdldFBhcmFtZXRl
clN0cmluZ3MoKSB7Ci0vLyAgIDo6c3RkOjp2ZWN0b3I8IDo6c3RkOjpzdHJpbmc+IHY7Ci0vLyAg
IHYucHVzaF9iYWNrKCJhIik7Ci0vLyAgIHYucHVzaF9iYWNrKCJiIik7Ci0vLyAgIHJldHVybiB2
OwotLy8gfQotLy8KLS8vIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKENoYXJTZXF1ZW5jZSwKLS8v
ICAgICAgICAgICAgICAgICAgICAgICAgIFN0bFN0cmluZ1Rlc3QsCi0vLyAgICAgICAgICAgICAg
ICAgICAgICAgICBWYWx1ZXNJbihHZXRQYXJhbWV0ZXJTdHJpbmdzKCkpKTsKLS8vCi0vLwotLy8g
VGhpcyB3aWxsIGFsc28gaW5zdGFudGlhdGUgdGVzdHMgZnJvbSBDaGFyVGVzdAotLy8gZWFjaCB3
aXRoIHBhcmFtZXRlciB2YWx1ZXMgJ2EnIGFuZCAnYic6Ci0vLwotLy8gOjpzdGQ6Omxpc3Q8Y2hh
cj4gR2V0UGFyYW1ldGVyQ2hhcnMoKSB7Ci0vLyAgIDo6c3RkOjpsaXN0PGNoYXI+IGxpc3Q7Ci0v
LyAgIGxpc3QucHVzaF9iYWNrKCdhJyk7Ci0vLyAgIGxpc3QucHVzaF9iYWNrKCdiJyk7Ci0vLyAg
IHJldHVybiBsaXN0OwotLy8gfQotLy8gOjpzdGQ6Omxpc3Q8Y2hhcj4gbCA9IEdldFBhcmFtZXRl
ckNoYXJzKCk7Ci0vLyBJTlNUQU5USUFURV9URVNUX0NBU0VfUChDaGFyU2VxdWVuY2UyLAotLy8g
ICAgICAgICAgICAgICAgICAgICAgICAgQ2hhclRlc3QsCi0vLyAgICAgICAgICAgICAgICAgICAg
ICAgICBWYWx1ZXNJbihsLmJlZ2luKCksIGwuZW5kKCkpKTsKLS8vCi10ZW1wbGF0ZSA8dHlwZW5h
bWUgRm9yd2FyZEl0ZXJhdG9yPgotaW50ZXJuYWw6OlBhcmFtR2VuZXJhdG9yPAotICB0eXBlbmFt
ZSA6OnRlc3Rpbmc6OmludGVybmFsOjpJdGVyYXRvclRyYWl0czxGb3J3YXJkSXRlcmF0b3I+Ojp2
YWx1ZV90eXBlPgotVmFsdWVzSW4oRm9yd2FyZEl0ZXJhdG9yIGJlZ2luLCBGb3J3YXJkSXRlcmF0
b3IgZW5kKSB7Ci0gIHR5cGVkZWYgdHlwZW5hbWUgOjp0ZXN0aW5nOjppbnRlcm5hbDo6SXRlcmF0
b3JUcmFpdHM8Rm9yd2FyZEl0ZXJhdG9yPgotICAgICAgOjp2YWx1ZV90eXBlIFBhcmFtVHlwZTsK
LSAgcmV0dXJuIGludGVybmFsOjpQYXJhbUdlbmVyYXRvcjxQYXJhbVR5cGU+KAotICAgICAgbmV3
IGludGVybmFsOjpWYWx1ZXNJbkl0ZXJhdG9yUmFuZ2VHZW5lcmF0b3I8UGFyYW1UeXBlPihiZWdp
biwgZW5kKSk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBULCBzaXplX3QgTj4KLWludGVybmFs
OjpQYXJhbUdlbmVyYXRvcjxUPiBWYWx1ZXNJbihjb25zdCBUICgmYXJyYXkpW05dKSB7Ci0gIHJl
dHVybiBWYWx1ZXNJbihhcnJheSwgYXJyYXkgKyBOKTsKLX0KLQotdGVtcGxhdGUgPGNsYXNzIENv
bnRhaW5lcj4KLWludGVybmFsOjpQYXJhbUdlbmVyYXRvcjx0eXBlbmFtZSBDb250YWluZXI6OnZh
bHVlX3R5cGU+IFZhbHVlc0luKAotICAgIGNvbnN0IENvbnRhaW5lciYgY29udGFpbmVyKSB7Ci0g
IHJldHVybiBWYWx1ZXNJbihjb250YWluZXIuYmVnaW4oKSwgY29udGFpbmVyLmVuZCgpKTsKLX0K
LQotLy8gVmFsdWVzKCkgYWxsb3dzIGdlbmVyYXRpbmcgdGVzdHMgZnJvbSBleHBsaWNpdGx5IHNw
ZWNpZmllZCBsaXN0IG9mCi0vLyBwYXJhbWV0ZXJzLgotLy8KLS8vIFN5bm9wc2lzOgotLy8gVmFs
dWVzKFQgdjEsIFQgdjIsIC4uLiwgVCB2TikKLS8vICAgLSByZXR1cm5zIGEgZ2VuZXJhdG9yIHBy
b2R1Y2luZyBzZXF1ZW5jZXMgd2l0aCBlbGVtZW50cyB2MSwgdjIsIC4uLiwgdk4uCi0vLwotLy8g
Rm9yIGV4YW1wbGUsIHRoaXMgaW5zdGFudGlhdGVzIHRlc3RzIGZyb20gdGVzdCBjYXNlIEJhclRl
c3QgZWFjaAotLy8gd2l0aCB2YWx1ZXMgIm9uZSIsICJ0d28iLCBhbmQgInRocmVlIjoKLS8vCi0v
LyBJTlNUQU5USUFURV9URVNUX0NBU0VfUChOdW1TZXF1ZW5jZSwgQmFyVGVzdCwgVmFsdWVzKCJv
bmUiLCAidHdvIiwgInRocmVlIikpOwotLy8KLS8vIFRoaXMgaW5zdGFudGlhdGVzIHRlc3RzIGZy
b20gdGVzdCBjYXNlIEJhelRlc3QgZWFjaCB3aXRoIHZhbHVlcyAxLCAyLCAzLjUuCi0vLyBUaGUg
ZXhhY3QgdHlwZSBvZiB2YWx1ZXMgd2lsbCBkZXBlbmQgb24gdGhlIHR5cGUgb2YgcGFyYW1ldGVy
IGluIEJhelRlc3QuCi0vLwotLy8gSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoRmxvYXRpbmdOdW1i
ZXJzLCBCYXpUZXN0LCBWYWx1ZXMoMSwgMiwgMy41KSk7Ci0vLwotLy8gQ3VycmVudGx5LCBWYWx1
ZXMoKSBzdXBwb3J0cyBmcm9tIDEgdG8gJG4gcGFyYW1ldGVycy4KLS8vCi0kcmFuZ2UgaSAxLi5u
Ci0kZm9yIGkgW1sKLSRyYW5nZSBqIDEuLmkKLQotdGVtcGxhdGUgPCRmb3IgaiwgW1t0eXBlbmFt
ZSBUJGpdXT4KLWludGVybmFsOjpWYWx1ZUFycmF5JGk8JGZvciBqLCBbW1Qkal1dPiBWYWx1ZXMo
JGZvciBqLCBbW1QkaiB2JGpdXSkgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkkaTwk
Zm9yIGosIFtbVCRqXV0+KCRmb3IgaiwgW1t2JGpdXSk7Ci19Ci0KLV1dCi0KLS8vIEJvb2woKSBh
bGxvd3MgZ2VuZXJhdGluZyB0ZXN0cyB3aXRoIHBhcmFtZXRlcnMgaW4gYSBzZXQgb2YgKGZhbHNl
LCB0cnVlKS4KLS8vCi0vLyBTeW5vcHNpczoKLS8vIEJvb2woKQotLy8gICAtIHJldHVybnMgYSBn
ZW5lcmF0b3IgcHJvZHVjaW5nIHNlcXVlbmNlcyB3aXRoIGVsZW1lbnRzIHtmYWxzZSwgdHJ1ZX0u
Ci0vLwotLy8gSXQgaXMgdXNlZnVsIHdoZW4gdGVzdGluZyBjb2RlIHRoYXQgZGVwZW5kcyBvbiBC
b29sZWFuIGZsYWdzLiBDb21iaW5hdGlvbnMKLS8vIG9mIG11bHRpcGxlIGZsYWdzIGNhbiBiZSB0
ZXN0ZWQgd2hlbiBzZXZlcmFsIEJvb2woKSdzIGFyZSBjb21iaW5lZCB1c2luZwotLy8gQ29tYmlu
ZSgpIGZ1bmN0aW9uLgotLy8KLS8vIEluIHRoZSBmb2xsb3dpbmcgZXhhbXBsZSBhbGwgdGVzdHMg
aW4gdGhlIHRlc3QgY2FzZSBGbGFnRGVwZW5kZW50VGVzdAotLy8gd2lsbCBiZSBpbnN0YW50aWF0
ZWQgdHdpY2Ugd2l0aCBwYXJhbWV0ZXJzIGZhbHNlIGFuZCB0cnVlLgotLy8KLS8vIGNsYXNzIEZs
YWdEZXBlbmRlbnRUZXN0IDogcHVibGljIHRlc3Rpbmc6OlRlc3RXaXRoUGFyYW08Ym9vbD4gewot
Ly8gICB2aXJ0dWFsIHZvaWQgU2V0VXAoKSB7Ci0vLyAgICAgZXh0ZXJuYWxfZmxhZyA9IEdldFBh
cmFtKCk7Ci0vLyAgIH0KLS8vIH0KLS8vIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEJvb2xTZXF1
ZW5jZSwgRmxhZ0RlcGVuZGVudFRlc3QsIEJvb2woKSk7Ci0vLwotaW5saW5lIGludGVybmFsOjpQ
YXJhbUdlbmVyYXRvcjxib29sPiBCb29sKCkgewotICByZXR1cm4gVmFsdWVzKGZhbHNlLCB0cnVl
KTsKLX0KLQotIyBpZiBHVEVTVF9IQVNfQ09NQklORQotLy8gQ29tYmluZSgpIGFsbG93cyB0aGUg
dXNlciB0byBjb21iaW5lIHR3byBvciBtb3JlIHNlcXVlbmNlcyB0byBwcm9kdWNlCi0vLyB2YWx1
ZXMgb2YgYSBDYXJ0ZXNpYW4gcHJvZHVjdCBvZiB0aG9zZSBzZXF1ZW5jZXMnIGVsZW1lbnRzLgot
Ly8KLS8vIFN5bm9wc2lzOgotLy8gQ29tYmluZShnZW4xLCBnZW4yLCAuLi4sIGdlbk4pCi0vLyAg
IC0gcmV0dXJucyBhIGdlbmVyYXRvciBwcm9kdWNpbmcgc2VxdWVuY2VzIHdpdGggZWxlbWVudHMg
Y29taW5nIGZyb20KLS8vICAgICB0aGUgQ2FydGVzaWFuIHByb2R1Y3Qgb2YgZWxlbWVudHMgZnJv
bSB0aGUgc2VxdWVuY2VzIGdlbmVyYXRlZCBieQotLy8gICAgIGdlbjEsIGdlbjIsIC4uLiwgZ2Vu
Ti4gVGhlIHNlcXVlbmNlIGVsZW1lbnRzIHdpbGwgaGF2ZSBhIHR5cGUgb2YKLS8vICAgICB0dXBs
ZTxUMSwgVDIsIC4uLiwgVE4+IHdoZXJlIFQxLCBUMiwgLi4uLCBUTiBhcmUgdGhlIHR5cGVzCi0v
LyAgICAgb2YgZWxlbWVudHMgZnJvbSBzZXF1ZW5jZXMgcHJvZHVjZXMgYnkgZ2VuMSwgZ2VuMiwg
Li4uLCBnZW5OLgotLy8KLS8vIENvbWJpbmUgY2FuIGhhdmUgdXAgdG8gJG1heHR1cGxlIGFyZ3Vt
ZW50cy4gVGhpcyBudW1iZXIgaXMgY3VycmVudGx5IGxpbWl0ZWQKLS8vIGJ5IHRoZSBtYXhpbXVt
IG51bWJlciBvZiBlbGVtZW50cyBpbiB0aGUgdHVwbGUgaW1wbGVtZW50YXRpb24gdXNlZCBieSBH
b29nbGUKLS8vIFRlc3QuCi0vLwotLy8gRXhhbXBsZToKLS8vCi0vLyBUaGlzIHdpbGwgaW5zdGFu
dGlhdGUgdGVzdHMgaW4gdGVzdCBjYXNlIEFuaW1hbFRlc3QgZWFjaCBvbmUgd2l0aAotLy8gdGhl
IHBhcmFtZXRlciB2YWx1ZXMgdHVwbGUoImNhdCIsIEJMQUNLKSwgdHVwbGUoImNhdCIsIFdISVRF
KSwKLS8vIHR1cGxlKCJkb2ciLCBCTEFDSyksIGFuZCB0dXBsZSgiZG9nIiwgV0hJVEUpOgotLy8K
LS8vIGVudW0gQ29sb3IgeyBCTEFDSywgR1JBWSwgV0hJVEUgfTsKLS8vIGNsYXNzIEFuaW1hbFRl
c3QKLS8vICAgICA6IHB1YmxpYyB0ZXN0aW5nOjpUZXN0V2l0aFBhcmFtPHR1cGxlPGNvbnN0IGNo
YXIqLCBDb2xvcj4gPiB7Li4ufTsKLS8vCi0vLyBURVNUX1AoQW5pbWFsVGVzdCwgQW5pbWFsTG9v
a3NOaWNlKSB7Li4ufQotLy8KLS8vIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEFuaW1hbFZhcmlh
dGlvbnMsIEFuaW1hbFRlc3QsCi0vLyAgICAgICAgICAgICAgICAgICAgICAgICBDb21iaW5lKFZh
bHVlcygiY2F0IiwgImRvZyIpLAotLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBW
YWx1ZXMoQkxBQ0ssIFdISVRFKSkpOwotLy8KLS8vIFRoaXMgd2lsbCBpbnN0YW50aWF0ZSB0ZXN0
cyBpbiBGbGFnRGVwZW5kZW50VGVzdCB3aXRoIGFsbCB2YXJpYXRpb25zIG9mIHR3bwotLy8gQm9v
bGVhbiBmbGFnczoKLS8vCi0vLyBjbGFzcyBGbGFnRGVwZW5kZW50VGVzdAotLy8gICAgIDogcHVi
bGljIHRlc3Rpbmc6OlRlc3RXaXRoUGFyYW08dHVwbGU8Ym9vbCwgYm9vbD4gPiB7Ci0vLyAgIHZp
cnR1YWwgdm9pZCBTZXRVcCgpIHsKLS8vICAgICAvLyBBc3NpZ25zIGV4dGVybmFsX2ZsYWdfMSBh
bmQgZXh0ZXJuYWxfZmxhZ18yIHZhbHVlcyBmcm9tIHRoZSB0dXBsZS4KLS8vICAgICB0aWUoZXh0
ZXJuYWxfZmxhZ18xLCBleHRlcm5hbF9mbGFnXzIpID0gR2V0UGFyYW0oKTsKLS8vICAgfQotLy8g
fTsKLS8vCi0vLyBURVNUX1AoRmxhZ0RlcGVuZGVudFRlc3QsIFRlc3RGZWF0dXJlMSkgewotLy8g
ICAvLyBUZXN0IHlvdXIgY29kZSB1c2luZyBleHRlcm5hbF9mbGFnXzEgYW5kIGV4dGVybmFsX2Zs
YWdfMiBoZXJlLgotLy8gfQotLy8gSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoVHdvQm9vbFNlcXVl
bmNlLCBGbGFnRGVwZW5kZW50VGVzdCwKLS8vICAgICAgICAgICAgICAgICAgICAgICAgIENvbWJp
bmUoQm9vbCgpLCBCb29sKCkpKTsKLS8vCi0kcmFuZ2UgaSAyLi5tYXh0dXBsZQotJGZvciBpIFtb
Ci0kcmFuZ2UgaiAxLi5pCi0KLXRlbXBsYXRlIDwkZm9yIGosIFtbdHlwZW5hbWUgR2VuZXJhdG9y
JGpdXT4KLWludGVybmFsOjpDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyJGk8JGZvciBqLCBbW0dlbmVy
YXRvciRqXV0+IENvbWJpbmUoCi0gICAgJGZvciBqLCBbW2NvbnN0IEdlbmVyYXRvciRqJiBnJGpd
XSkgewotICByZXR1cm4gaW50ZXJuYWw6OkNhcnRlc2lhblByb2R1Y3RIb2xkZXIkaTwkZm9yIGos
IFtbR2VuZXJhdG9yJGpdXT4oCi0gICAgICAkZm9yIGosIFtbZyRqXV0pOwotfQotCi1dXQotIyBl
bmRpZiAgLy8gR1RFU1RfSEFTX0NPTUJJTkUKLQotIyBkZWZpbmUgVEVTVF9QKHRlc3RfY2FzZV9u
YW1lLCB0ZXN0X25hbWUpIFwKLSAgY2xhc3MgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0X2Nh
c2VfbmFtZSwgdGVzdF9uYW1lKSBcCi0gICAgICA6IHB1YmxpYyB0ZXN0X2Nhc2VfbmFtZSB7IFwK
LSAgIHB1YmxpYzogXAotICAgIEdURVNUX1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9jYXNlX25hbWUs
IHRlc3RfbmFtZSkoKSB7fSBcCi0gICAgdmlydHVhbCB2b2lkIFRlc3RCb2R5KCk7IFwKLSAgIHBy
aXZhdGU6IFwKLSAgICBzdGF0aWMgaW50IEFkZFRvUmVnaXN0cnkoKSB7IFwKLSAgICAgIDo6dGVz
dGluZzo6VW5pdFRlc3Q6OkdldEluc3RhbmNlKCktPnBhcmFtZXRlcml6ZWRfdGVzdF9yZWdpc3Ry
eSgpLiBcCi0gICAgICAgICAgR2V0VGVzdENhc2VQYXR0ZXJuSG9sZGVyPHRlc3RfY2FzZV9uYW1l
PihcCi0gICAgICAgICAgICAgICN0ZXN0X2Nhc2VfbmFtZSwgXAotICAgICAgICAgICAgICA6OnRl
c3Rpbmc6OmludGVybmFsOjpDb2RlTG9jYXRpb24oXAotICAgICAgICAgICAgICAgICAgX19GSUxF
X18sIF9fTElORV9fKSktPkFkZFRlc3RQYXR0ZXJuKFwKLSAgICAgICAgICAgICAgICAgICAgICBH
VEVTVF9TVFJJTkdJRllfKHRlc3RfY2FzZV9uYW1lKSwgXAotICAgICAgICAgICAgICAgICAgICAg
IEdURVNUX1NUUklOR0lGWV8odGVzdF9uYW1lKSwgXAotICAgICAgICAgICAgICAgICAgICAgIG5l
dyA6OnRlc3Rpbmc6OmludGVybmFsOjpUZXN0TWV0YUZhY3Rvcnk8IFwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyhcCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB0ZXN0X2Nhc2VfbmFtZSwgdGVzdF9uYW1lKT4oKSk7IFwKLSAgICAgIHJldHVy
biAwOyBcCi0gICAgfSBcCi0gICAgc3RhdGljIGludCBndGVzdF9yZWdpc3RlcmluZ19kdW1teV8g
R1RFU1RfQVRUUklCVVRFX1VOVVNFRF87IFwKLSAgICBHVEVTVF9ESVNBTExPV19DT1BZX0FORF9B
U1NJR05fKFwKLSAgICAgICAgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0X2Nhc2VfbmFtZSwg
dGVzdF9uYW1lKSk7IFwKLSAgfTsgXAotICBpbnQgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0
X2Nhc2VfbmFtZSwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X25hbWUpOjpn
dGVzdF9yZWdpc3RlcmluZ19kdW1teV8gPSBcCi0gICAgICBHVEVTVF9URVNUX0NMQVNTX05BTUVf
KHRlc3RfY2FzZV9uYW1lLCB0ZXN0X25hbWUpOjpBZGRUb1JlZ2lzdHJ5KCk7IFwKLSAgdm9pZCBH
VEVTVF9URVNUX0NMQVNTX05BTUVfKHRlc3RfY2FzZV9uYW1lLCB0ZXN0X25hbWUpOjpUZXN0Qm9k
eSgpCi0KLS8vIFRoZSBvcHRpb25hbCBsYXN0IGFyZ3VtZW50IHRvIElOU1RBTlRJQVRFX1RFU1Rf
Q0FTRV9QIGFsbG93cyB0aGUgdXNlcgotLy8gdG8gc3BlY2lmeSBhIGZ1bmN0aW9uIG9yIGZ1bmN0
b3IgdGhhdCBnZW5lcmF0ZXMgY3VzdG9tIHRlc3QgbmFtZSBzdWZmaXhlcwotLy8gYmFzZWQgb24g
dGhlIHRlc3QgcGFyYW1ldGVycy4gVGhlIGZ1bmN0aW9uIHNob3VsZCBhY2NlcHQgb25lIGFyZ3Vt
ZW50IG9mCi0vLyB0eXBlIHRlc3Rpbmc6OlRlc3RQYXJhbUluZm88Y2xhc3MgUGFyYW1UeXBlPiwg
YW5kIHJldHVybiBzdGQ6OnN0cmluZy4KLS8vCi0vLyB0ZXN0aW5nOjpQcmludFRvU3RyaW5nUGFy
YW1OYW1lIGlzIGEgYnVpbHRpbiB0ZXN0IHN1ZmZpeCBnZW5lcmF0b3IgdGhhdAotLy8gcmV0dXJu
cyB0aGUgdmFsdWUgb2YgdGVzdGluZzo6UHJpbnRUb1N0cmluZyhHZXRQYXJhbSgpKS4KLS8vCi0v
LyBOb3RlOiB0ZXN0IG5hbWVzIG11c3QgYmUgbm9uLWVtcHR5LCB1bmlxdWUsIGFuZCBtYXkgb25s
eSBjb250YWluIEFTQ0lJCi0vLyBhbHBoYW51bWVyaWMgY2hhcmFjdGVycyBvciB1bmRlcnNjb3Jl
LiBCZWNhdXNlIFByaW50VG9TdHJpbmcgYWRkcyBxdW90ZXMKLS8vIHRvIHN0ZDo6c3RyaW5nIGFu
ZCBDIHN0cmluZ3MsIGl0IHdvbid0IHdvcmsgZm9yIHRoZXNlIHR5cGVzLgotCi0jIGRlZmluZSBJ
TlNUQU5USUFURV9URVNUX0NBU0VfUChwcmVmaXgsIHRlc3RfY2FzZV9uYW1lLCBnZW5lcmF0b3Is
IC4uLikgXAotICBzdGF0aWMgOjp0ZXN0aW5nOjppbnRlcm5hbDo6UGFyYW1HZW5lcmF0b3I8dGVz
dF9jYXNlX25hbWU6OlBhcmFtVHlwZT4gXAotICAgICAgZ3Rlc3RfIyNwcmVmaXgjI3Rlc3RfY2Fz
ZV9uYW1lIyNfRXZhbEdlbmVyYXRvcl8oKSB7IHJldHVybiBnZW5lcmF0b3I7IH0gXAotICBzdGF0
aWMgOjpzdGQ6OnN0cmluZyBndGVzdF8jI3ByZWZpeCMjdGVzdF9jYXNlX25hbWUjI19FdmFsR2Vu
ZXJhdGVOYW1lXyggXAotICAgICAgY29uc3QgOjp0ZXN0aW5nOjpUZXN0UGFyYW1JbmZvPHRlc3Rf
Y2FzZV9uYW1lOjpQYXJhbVR5cGU+JiBpbmZvKSB7IFwKLSAgICByZXR1cm4gOjp0ZXN0aW5nOjpp
bnRlcm5hbDo6R2V0UGFyYW1OYW1lR2VuPHRlc3RfY2FzZV9uYW1lOjpQYXJhbVR5cGU+IFwKLSAg
ICAgICAgKF9fVkFfQVJHU19fKShpbmZvKTsgXAotICB9IFwKLSAgc3RhdGljIGludCBndGVzdF8j
I3ByZWZpeCMjdGVzdF9jYXNlX25hbWUjI19kdW1teV8gR1RFU1RfQVRUUklCVVRFX1VOVVNFRF8g
PSBcCi0gICAgICA6OnRlc3Rpbmc6OlVuaXRUZXN0OjpHZXRJbnN0YW5jZSgpLT5wYXJhbWV0ZXJp
emVkX3Rlc3RfcmVnaXN0cnkoKS4gXAotICAgICAgICAgIEdldFRlc3RDYXNlUGF0dGVybkhvbGRl
cjx0ZXN0X2Nhc2VfbmFtZT4oXAotICAgICAgICAgICAgICAjdGVzdF9jYXNlX25hbWUsIFwKLSAg
ICAgICAgICAgICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6Q29kZUxvY2F0aW9uKFwKLSAgICAgICAg
ICAgICAgICAgIF9fRklMRV9fLCBfX0xJTkVfXykpLT5BZGRUZXN0Q2FzZUluc3RhbnRpYXRpb24o
XAotICAgICAgICAgICAgICAgICAgICAgICNwcmVmaXgsIFwKLSAgICAgICAgICAgICAgICAgICAg
ICAmZ3Rlc3RfIyNwcmVmaXgjI3Rlc3RfY2FzZV9uYW1lIyNfRXZhbEdlbmVyYXRvcl8sIFwKLSAg
ICAgICAgICAgICAgICAgICAgICAmZ3Rlc3RfIyNwcmVmaXgjI3Rlc3RfY2FzZV9uYW1lIyNfRXZh
bEdlbmVyYXRlTmFtZV8sIFwKLSAgICAgICAgICAgICAgICAgICAgICBfX0ZJTEVfXywgX19MSU5F
X18pCi0KLX0gIC8vIG5hbWVzcGFjZSB0ZXN0aW5nCi0KLSNlbmRpZiAgLy8gR1RFU1RfSU5DTFVE
RV9HVEVTVF9HVEVTVF9QQVJBTV9URVNUX0hfCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJk
X3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QtcHJpbnRlcnMuaCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9ndGVzdC1w
cmludGVycy5oCmluZGV4IDUxODY1Zjg0ZTZmNmZhM2UwZmNlMTk4NzAwYjVhNWRmZTVmNjU1MGUu
LjQwN2QxZjE4NTk2MjliODkxYjZlY2IyYzY3OTcyODY2MDgxYmQxNGUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9ndGVzdC1w
cmludGVycy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5j
bHVkZS9ndGVzdC9ndGVzdC1wcmludGVycy5oCkBAIC0xMDAsMTcgKzEwMCwxNiBAQAogI2lmbmRl
ZiBHVEVTVF9JTkNMVURFX0dURVNUX0dURVNUX1BSSU5URVJTX0hfCiAjZGVmaW5lIEdURVNUX0lO
Q0xVREVfR1RFU1RfR1RFU1RfUFJJTlRFUlNfSF8KIAorI2luY2x1ZGUgPGZ1bmN0aW9uYWw+CiAj
aW5jbHVkZSA8b3N0cmVhbT4gIC8vIE5PTElOVAogI2luY2x1ZGUgPHNzdHJlYW0+CiAjaW5jbHVk
ZSA8c3RyaW5nPgorI2luY2x1ZGUgPHR1cGxlPgorI2luY2x1ZGUgPHR5cGVfdHJhaXRzPgogI2lu
Y2x1ZGUgPHV0aWxpdHk+CiAjaW5jbHVkZSA8dmVjdG9yPgotI2luY2x1ZGUgImd0ZXN0L2ludGVy
bmFsL2d0ZXN0LXBvcnQuaCIKICNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9ndGVzdC1pbnRlcm5h
bC5oIgotCi0jaWYgR1RFU1RfSEFTX1NURF9UVVBMRV8KLSMgaW5jbHVkZSA8dHVwbGU+Ci0jZW5k
aWYKKyNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9ndGVzdC1wb3J0LmgiCiAKICNpZiBHVEVTVF9I
QVNfQUJTTAogI2luY2x1ZGUgImFic2wvc3RyaW5ncy9zdHJpbmdfdmlldy5oIgpAQCAtMTM2LDkg
KzEzNSw5IEBAIGVudW0gVHlwZUtpbmQgewogICBrUHJvdG9idWYsICAgICAgICAgICAgICAvLyBh
IHByb3RvYnVmIHR5cGUKICAga0NvbnZlcnRpYmxlVG9JbnRlZ2VyLCAgLy8gYSB0eXBlIGltcGxp
Y2l0bHkgY29udmVydGlibGUgdG8gQmlnZ2VzdEludAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAvLyAoZS5nLiBhIG5hbWVkIG9yIHVubmFtZWQgZW51bSB0eXBlKQotI2lmIEdURVNUX0hBU19B
QlNMCisjaWYgR1RFU1RfSU5URVJOQUxfSEFTX1NUUklOR19WSUVXCiAgIGtDb252ZXJ0aWJsZVRv
U3RyaW5nVmlldywgIC8vIGEgdHlwZSBpbXBsaWNpdGx5IGNvbnZlcnRpYmxlIHRvCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8vIGFic2w6OnN0cmluZ192aWV3CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8vIGFic2w6OnN0cmluZ192aWV3IG9yIHN0ZDo6c3RyaW5nX3ZpZXcK
ICNlbmRpZgogICBrT3RoZXJUeXBlICAvLyBhbnl0aGluZyBlbHNlCiB9OwpAQCAtMTUyLDkgKzE1
MSwxMCBAQCBjbGFzcyBUeXBlV2l0aG91dEZvcm1hdHRlciB7CiAgcHVibGljOgogICAvLyBUaGlz
IGRlZmF1bHQgdmVyc2lvbiBpcyBjYWxsZWQgd2hlbiBrVHlwZUtpbmQgaXMga090aGVyVHlwZS4K
ICAgc3RhdGljIHZvaWQgUHJpbnRWYWx1ZShjb25zdCBUJiB2YWx1ZSwgOjpzdGQ6Om9zdHJlYW0q
IG9zKSB7Ci0gICAgUHJpbnRCeXRlc0luT2JqZWN0VG8oc3RhdGljX2Nhc3Q8Y29uc3QgdW5zaWdu
ZWQgY2hhcio+KAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWludGVycHJldF9jYXN0
PGNvbnN0IHZvaWQqPigmdmFsdWUpKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2Yo
dmFsdWUpLCBvcyk7CisgICAgUHJpbnRCeXRlc0luT2JqZWN0VG8oCisgICAgICAgIHN0YXRpY19j
YXN0PGNvbnN0IHVuc2lnbmVkIGNoYXIqPigKKyAgICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8
Y29uc3Qgdm9pZCo+KHN0ZDo6YWRkcmVzc29mKHZhbHVlKSkpLAorICAgICAgICBzaXplb2YodmFs
dWUpLCBvcyk7CiAgIH0KIH07CiAKQEAgLTE5MSwxMiArMTkxLDEzIEBAIGNsYXNzIFR5cGVXaXRo
b3V0Rm9ybWF0dGVyPFQsIGtDb252ZXJ0aWJsZVRvSW50ZWdlcj4gewogICB9CiB9OwogCi0jaWYg
R1RFU1RfSEFTX0FCU0wKKyNpZiBHVEVTVF9JTlRFUk5BTF9IQVNfU1RSSU5HX1ZJRVcKIHRlbXBs
YXRlIDx0eXBlbmFtZSBUPgogY2xhc3MgVHlwZVdpdGhvdXRGb3JtYXR0ZXI8VCwga0NvbnZlcnRp
YmxlVG9TdHJpbmdWaWV3PiB7CiAgcHVibGljOgogICAvLyBTaW5jZSBUIGhhcyBuZWl0aGVyIG9w
ZXJhdG9yPDwgbm9yIFByaW50VG8oKSBidXQgY2FuIGJlIGltcGxpY2l0bHkKLSAgLy8gY29udmVy
dGVkIHRvIGFic2w6OnN0cmluZ192aWV3LCB3ZSBwcmludCBpdCBhcyBhIGFic2w6OnN0cmluZ192
aWV3LgorICAvLyBjb252ZXJ0ZWQgdG8gYWJzbDo6c3RyaW5nX3ZpZXcsIHdlIHByaW50IGl0IGFz
IGEgYWJzbDo6c3RyaW5nX3ZpZXcKKyAgLy8gKG9yIHN0ZDo6c3RyaW5nX3ZpZXcpLgogICAvLwog
ICAvLyBOb3RlOiB0aGUgaW1wbGVtZW50YXRpb24gaXMgZnVydGhlciBiZWxvdywgYXMgaXQgZGVw
ZW5kcyBvbgogICAvLyBpbnRlcm5hbDo6UHJpbnRUbyBzeW1ib2wgd2hpY2ggaXMgZGVmaW5lZCBs
YXRlciBpbiB0aGUgZmlsZS4KQEAgLTIzMywxMyArMjM0LDEzIEBAIHRlbXBsYXRlIDx0eXBlbmFt
ZSBDaGFyLCB0eXBlbmFtZSBDaGFyVHJhaXRzLCB0eXBlbmFtZSBUPgogICAgIDo6c3RkOjpiYXNp
Y19vc3RyZWFtPENoYXIsIENoYXJUcmFpdHM+JiBvcywgY29uc3QgVCYgeCkgewogICBUeXBlV2l0
aG91dEZvcm1hdHRlcjxULCAoaW50ZXJuYWw6OklzQVByb3RvY29sTWVzc2FnZTxUPjo6dmFsdWUK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGtQcm90b2J1ZgotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDogaW50ZXJuYWw6OkltcGxpY2l0bHlDb252ZXJ0aWJsZTwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IHN0ZDo6aXNfY29udmVydGlibGU8CiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVCYsIGludGVybmFsOjpCaWdn
ZXN0SW50Pjo6dmFsdWUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGtD
b252ZXJ0aWJsZVRvSW50ZWdlcgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDoKLSNpZiBHVEVTVF9IQVNfQUJTTAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGludGVybmFsOjpJbXBsaWNpdGx5Q29udmVydGlibGU8Ci0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFQmLCBhYnNsOjpzdHJpbmdfdmlldz46OnZhbHVl
CisjaWYgR1RFU1RfSU5URVJOQUxfSEFTX1NUUklOR19WSUVXCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc3RkOjppc19jb252ZXJ0aWJsZTwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVCYsIGludGVybmFsOjpTdHJpbmdWaWV3Pjo6
dmFsdWUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBrQ29udmVy
dGlibGVUb1N0cmluZ1ZpZXcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgOgogI2VuZGlmCkBAIC0yNjYsMTAgKzI2Nyw4IEBAIHZvaWQgRGVmYXVsdFByaW50Tm9uQ29u
dGFpbmVyVG8oY29uc3QgVCYgdmFsdWUsIDo6c3RkOjpvc3RyZWFtKiBvcykgewogICAvLyA3LjMu
NC0xIFtuYW1lc3BhY2UudWRpcl0uICBUaGlzIGFsbG93cyB1cyB0byBmYWxsIGJhY2sgb250bwog
ICAvLyB0ZXN0aW5nOjppbnRlcm5hbDI6Om9wZXJhdG9yPDwgaW4gY2FzZSBUIGRvZXNuJ3QgY29t
ZSB3aXRoIGEgPDwKICAgLy8gb3BlcmF0b3IuCi0gIC8vCi0gIC8vIFdlIGNhbm5vdCB3cml0ZSAn
dXNpbmcgOjp0ZXN0aW5nOjppbnRlcm5hbDI6Om9wZXJhdG9yPDw7Jywgd2hpY2gKLSAgLy8gZ2Nj
IDMuMyBmYWlscyB0byBjb21waWxlIGR1ZSB0byBhIGNvbXBpbGVyIGJ1Zy4KLSAgdXNpbmcgbmFt
ZXNwYWNlIDo6dGVzdGluZzo6aW50ZXJuYWwyOyAgLy8gTk9MSU5UCisKKyAgdXNpbmcgOjp0ZXN0
aW5nOjppbnRlcm5hbDI6Om9wZXJhdG9yPDw7CiAKICAgLy8gQXNzdW1pbmcgVCBpcyBkZWZpbmVk
IGluIG5hbWVzcGFjZSBmb28sIGluIHRoZSBuZXh0IHN0YXRlbWVudCwKICAgLy8gdGhlIGNvbXBp
bGVyIHdpbGwgY29uc2lkZXIgYWxsIG9mOgpAQCAtMzU4LDE2ICszNTcsNiBAQCBHVEVTVF9JTVBM
X0ZPUk1BVF9DX1NUUklOR19BU19QT0lOVEVSXyhjb25zdCB3Y2hhcl90KTsKIEdURVNUX0lNUExf
Rk9STUFUX0NfU1RSSU5HX0FTX1NUUklOR18oY2hhciwgOjpzdGQ6OnN0cmluZyk7CiBHVEVTVF9J
TVBMX0ZPUk1BVF9DX1NUUklOR19BU19TVFJJTkdfKGNvbnN0IGNoYXIsIDo6c3RkOjpzdHJpbmcp
OwogCi0jaWYgR1RFU1RfSEFTX0dMT0JBTF9TVFJJTkcKLUdURVNUX0lNUExfRk9STUFUX0NfU1RS
SU5HX0FTX1NUUklOR18oY2hhciwgOjpzdHJpbmcpOwotR1RFU1RfSU1QTF9GT1JNQVRfQ19TVFJJ
TkdfQVNfU1RSSU5HXyhjb25zdCBjaGFyLCA6OnN0cmluZyk7Ci0jZW5kaWYKLQotI2lmIEdURVNU
X0hBU19HTE9CQUxfV1NUUklORwotR1RFU1RfSU1QTF9GT1JNQVRfQ19TVFJJTkdfQVNfU1RSSU5H
Xyh3Y2hhcl90LCA6OndzdHJpbmcpOwotR1RFU1RfSU1QTF9GT1JNQVRfQ19TVFJJTkdfQVNfU1RS
SU5HXyhjb25zdCB3Y2hhcl90LCA6OndzdHJpbmcpOwotI2VuZGlmCi0KICNpZiBHVEVTVF9IQVNf
U1REX1dTVFJJTkcKIEdURVNUX0lNUExfRk9STUFUX0NfU1RSSU5HX0FTX1NUUklOR18od2NoYXJf
dCwgOjpzdGQ6OndzdHJpbmcpOwogR1RFU1RfSU1QTF9GT1JNQVRfQ19TVFJJTkdfQVNfU1RSSU5H
Xyhjb25zdCB3Y2hhcl90LCA6OnN0ZDo6d3N0cmluZyk7CkBAIC00NDgsNyArNDM3LDcgQEAgdm9p
ZCBEZWZhdWx0UHJpbnRUbyhXcmFwUHJpbnRlclR5cGU8a1ByaW50Q29udGFpbmVyPiAvKiBkdW1t
eSAqLywKIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgogdm9pZCBEZWZhdWx0UHJpbnRUbyhXcmFwUHJp
bnRlclR5cGU8a1ByaW50UG9pbnRlcj4gLyogZHVtbXkgKi8sCiAgICAgICAgICAgICAgICAgICAg
IFQqIHAsIDo6c3RkOjpvc3RyZWFtKiBvcykgewotICBpZiAocCA9PSBOVUxMKSB7CisgIGlmIChw
ID09IG51bGxwdHIpIHsKICAgICAqb3MgPDwgIk5VTEwiOwogICB9IGVsc2UgewogICAgIC8vIFQg
aXMgbm90IGEgZnVuY3Rpb24gdHlwZS4gIFdlIGp1c3QgY2FsbCA8PCB0byBwcmludCBwLApAQCAt
NDYwLDcgKzQ0OSw3IEBAIHZvaWQgRGVmYXVsdFByaW50VG8oV3JhcFByaW50ZXJUeXBlPGtQcmlu
dFBvaW50ZXI+IC8qIGR1bW15ICovLAogdGVtcGxhdGUgPHR5cGVuYW1lIFQ+CiB2b2lkIERlZmF1
bHRQcmludFRvKFdyYXBQcmludGVyVHlwZTxrUHJpbnRGdW5jdGlvblBvaW50ZXI+IC8qIGR1bW15
ICovLAogICAgICAgICAgICAgICAgICAgICBUKiBwLCA6OnN0ZDo6b3N0cmVhbSogb3MpIHsKLSAg
aWYgKHAgPT0gTlVMTCkgeworICBpZiAocCA9PSBudWxscHRyKSB7CiAgICAgKm9zIDw8ICJOVUxM
IjsKICAgfSBlbHNlIHsKICAgICAvLyBUIGlzIGEgZnVuY3Rpb24gdHlwZSwgc28gJypvcyA8PCBw
JyBkb2Vzbid0IGRvIHdoYXQgd2Ugd2FudApAQCAtNTE1LDEzICs1MDQsOSBAQCB2b2lkIFByaW50
VG8oY29uc3QgVCYgdmFsdWUsIDo6c3RkOjpvc3RyZWFtKiBvcykgewogICAgICAgICAgICAgICAg
ICAgKHNpemVvZihJc0NvbnRhaW5lclRlc3Q8VD4oMCkpID09IHNpemVvZihJc0NvbnRhaW5lcikp
ICYmCiAgICAgICAgICAgICAgICFJc1JlY3Vyc2l2ZUNvbnRhaW5lcjxUPjo6dmFsdWUKICAgICAg
ICAgICA/IGtQcmludENvbnRhaW5lcgotICAgICAgICAgIDogIWlzX3BvaW50ZXI8VD46OnZhbHVl
CisgICAgICAgICAgOiAhc3RkOjppc19wb2ludGVyPFQ+Ojp2YWx1ZQogICAgICAgICAgICAgICAg
ID8ga1ByaW50T3RoZXIKLSNpZiBHVEVTVF9MQU5HX0NYWDExCiAgICAgICAgICAgICAgICAgOiBz
dGQ6OmlzX2Z1bmN0aW9uPHR5cGVuYW1lIHN0ZDo6cmVtb3ZlX3BvaW50ZXI8VD46OnR5cGU+Ojp2
YWx1ZQotI2Vsc2UKLSAgICAgICAgICAgICAgICA6ICFpbnRlcm5hbDo6SW1wbGljaXRseUNvbnZl
cnRpYmxlPFQsIGNvbnN0IHZvaWQqPjo6dmFsdWUKLSNlbmRpZgogICAgICAgICAgICAgICAgICAg
ICAgID8ga1ByaW50RnVuY3Rpb25Qb2ludGVyCiAgICAgICAgICAgICAgICAgICAgICAgOiBrUHJp
bnRQb2ludGVyID4gKCksCiAgICAgICB2YWx1ZSwgb3MpOwpAQCAtNjAzLDI3ICs1ODgsMTMgQEAg
dm9pZCBQcmludFJhd0FycmF5VG8oY29uc3QgVCBhW10sIHNpemVfdCBjb3VudCwgOjpzdGQ6Om9z
dHJlYW0qIG9zKSB7CiAgIH0KIH0KIAotLy8gT3ZlcmxvYWRzIGZvciA6OnN0cmluZyBhbmQgOjpz
dGQ6OnN0cmluZy4KLSNpZiBHVEVTVF9IQVNfR0xPQkFMX1NUUklORwotR1RFU1RfQVBJXyB2b2lk
IFByaW50U3RyaW5nVG8oY29uc3QgOjpzdHJpbmcmcywgOjpzdGQ6Om9zdHJlYW0qIG9zKTsKLWlu
bGluZSB2b2lkIFByaW50VG8oY29uc3QgOjpzdHJpbmcmIHMsIDo6c3RkOjpvc3RyZWFtKiBvcykg
ewotICBQcmludFN0cmluZ1RvKHMsIG9zKTsKLX0KLSNlbmRpZiAgLy8gR1RFU1RfSEFTX0dMT0JB
TF9TVFJJTkcKLQorLy8gT3ZlcmxvYWRzIGZvciA6OnN0ZDo6c3RyaW5nLgogR1RFU1RfQVBJXyB2
b2lkIFByaW50U3RyaW5nVG8oY29uc3QgOjpzdGQ6OnN0cmluZyZzLCA6OnN0ZDo6b3N0cmVhbSog
b3MpOwogaW5saW5lIHZvaWQgUHJpbnRUbyhjb25zdCA6OnN0ZDo6c3RyaW5nJiBzLCA6OnN0ZDo6
b3N0cmVhbSogb3MpIHsKICAgUHJpbnRTdHJpbmdUbyhzLCBvcyk7CiB9CiAKLS8vIE92ZXJsb2Fk
cyBmb3IgOjp3c3RyaW5nIGFuZCA6OnN0ZDo6d3N0cmluZy4KLSNpZiBHVEVTVF9IQVNfR0xPQkFM
X1dTVFJJTkcKLUdURVNUX0FQSV8gdm9pZCBQcmludFdpZGVTdHJpbmdUbyhjb25zdCA6OndzdHJp
bmcmcywgOjpzdGQ6Om9zdHJlYW0qIG9zKTsKLWlubGluZSB2b2lkIFByaW50VG8oY29uc3QgOjp3
c3RyaW5nJiBzLCA6OnN0ZDo6b3N0cmVhbSogb3MpIHsKLSAgUHJpbnRXaWRlU3RyaW5nVG8ocywg
b3MpOwotfQotI2VuZGlmICAvLyBHVEVTVF9IQVNfR0xPQkFMX1dTVFJJTkcKLQorLy8gT3Zlcmxv
YWRzIGZvciA6OnN0ZDo6d3N0cmluZy4KICNpZiBHVEVTVF9IQVNfU1REX1dTVFJJTkcKIEdURVNU
X0FQSV8gdm9pZCBQcmludFdpZGVTdHJpbmdUbyhjb25zdCA6OnN0ZDo6d3N0cmluZyZzLCA6OnN0
ZDo6b3N0cmVhbSogb3MpOwogaW5saW5lIHZvaWQgUHJpbnRUbyhjb25zdCA6OnN0ZDo6d3N0cmlu
ZyYgcywgOjpzdGQ6Om9zdHJlYW0qIG9zKSB7CkBAIC02MzEsMTA2ICs2MDIsNDUgQEAgaW5saW5l
IHZvaWQgUHJpbnRUbyhjb25zdCA6OnN0ZDo6d3N0cmluZyYgcywgOjpzdGQ6Om9zdHJlYW0qIG9z
KSB7CiB9CiAjZW5kaWYgIC8vIEdURVNUX0hBU19TVERfV1NUUklORwogCi0jaWYgR1RFU1RfSEFT
X0FCU0wKLS8vIE92ZXJsb2FkIGZvciBhYnNsOjpzdHJpbmdfdmlldy4KLWlubGluZSB2b2lkIFBy
aW50VG8oYWJzbDo6c3RyaW5nX3ZpZXcgc3AsIDo6c3RkOjpvc3RyZWFtKiBvcykgeworI2lmIEdU
RVNUX0lOVEVSTkFMX0hBU19TVFJJTkdfVklFVworLy8gT3ZlcmxvYWQgZm9yIGludGVybmFsOjpT
dHJpbmdWaWV3LgoraW5saW5lIHZvaWQgUHJpbnRUbyhpbnRlcm5hbDo6U3RyaW5nVmlldyBzcCwg
OjpzdGQ6Om9zdHJlYW0qIG9zKSB7CiAgIFByaW50VG8oOjpzdGQ6OnN0cmluZyhzcCksIG9zKTsK
IH0KLSNlbmRpZiAgLy8gR1RFU1RfSEFTX0FCU0wKKyNlbmRpZiAgLy8gR1RFU1RfSU5URVJOQUxf
SEFTX1NUUklOR19WSUVXCiAKLSNpZiBHVEVTVF9MQU5HX0NYWDExCiBpbmxpbmUgdm9pZCBQcmlu
dFRvKHN0ZDo6bnVsbHB0cl90LCA6OnN0ZDo6b3N0cmVhbSogb3MpIHsgKm9zIDw8ICIobnVsbHB0
cikiOyB9Ci0jZW5kaWYgIC8vIEdURVNUX0xBTkdfQ1hYMTEKIAotI2lmIEdURVNUX0hBU19UUjFf
VFVQTEUgfHwgR1RFU1RfSEFTX1NURF9UVVBMRV8KLS8vIEhlbHBlciBmdW5jdGlvbiBmb3IgcHJp
bnRpbmcgYSB0dXBsZS4gIFQgbXVzdCBiZSBpbnN0YW50aWF0ZWQgd2l0aAotLy8gYSB0dXBsZSB0
eXBlLgogdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci12b2lkIFByaW50VHVwbGVUbyhjb25zdCBUJiB0
LCA6OnN0ZDo6b3N0cmVhbSogb3MpOwotI2VuZGlmICAvLyBHVEVTVF9IQVNfVFIxX1RVUExFIHx8
IEdURVNUX0hBU19TVERfVFVQTEVfCi0KLSNpZiBHVEVTVF9IQVNfVFIxX1RVUExFCi0vLyBPdmVy
bG9hZCBmb3IgOjpzdGQ6OnRyMTo6dHVwbGUuICBOZWVkZWQgZm9yIHByaW50aW5nIGZ1bmN0aW9u
IGFyZ3VtZW50cywKLS8vIHdoaWNoIGFyZSBwYWNrZWQgYXMgdHVwbGVzLgotCi0vLyBPdmVybG9h
ZGVkIFByaW50VG8oKSBmb3IgdHVwbGVzIG9mIHZhcmlvdXMgYXJpdGllcy4gIFdlIHN1cHBvcnQK
LS8vIHR1cGxlcyBvZiB1cC10byAxMCBmaWVsZHMuICBUaGUgZm9sbG93aW5nIGltcGxlbWVudGF0
aW9uIHdvcmtzCi0vLyByZWdhcmRsZXNzIG9mIHdoZXRoZXIgdHIxOjp0dXBsZSBpcyBpbXBsZW1l
bnRlZCB1c2luZyB0aGUKLS8vIG5vbi1zdGFuZGFyZCB2YXJpYWRpYyB0ZW1wbGF0ZSBmZWF0dXJl
IG9yIG5vdC4KLQotaW5saW5lIHZvaWQgUHJpbnRUbyhjb25zdCA6OnN0ZDo6dHIxOjp0dXBsZTw+
JiB0LCA6OnN0ZDo6b3N0cmVhbSogb3MpIHsKLSAgUHJpbnRUdXBsZVRvKHQsIG9zKTsKLX0KLQot
dGVtcGxhdGUgPHR5cGVuYW1lIFQxPgotdm9pZCBQcmludFRvKGNvbnN0IDo6c3RkOjp0cjE6OnR1
cGxlPFQxPiYgdCwgOjpzdGQ6Om9zdHJlYW0qIG9zKSB7Ci0gIFByaW50VHVwbGVUbyh0LCBvcyk7
Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDI+Ci12b2lkIFByaW50VG8o
Y29uc3QgOjpzdGQ6OnRyMTo6dHVwbGU8VDEsIFQyPiYgdCwgOjpzdGQ6Om9zdHJlYW0qIG9zKSB7
Ci0gIFByaW50VHVwbGVUbyh0LCBvcyk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlw
ZW5hbWUgVDIsIHR5cGVuYW1lIFQzPgotdm9pZCBQcmludFRvKGNvbnN0IDo6c3RkOjp0cjE6OnR1
cGxlPFQxLCBUMiwgVDM+JiB0LCA6OnN0ZDo6b3N0cmVhbSogb3MpIHsKLSAgUHJpbnRUdXBsZVRv
KHQsIG9zKTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5h
bWUgVDMsIHR5cGVuYW1lIFQ0Pgotdm9pZCBQcmludFRvKGNvbnN0IDo6c3RkOjp0cjE6OnR1cGxl
PFQxLCBUMiwgVDMsIFQ0PiYgdCwgOjpzdGQ6Om9zdHJlYW0qIG9zKSB7Ci0gIFByaW50VHVwbGVU
byh0LCBvcyk7Cit2b2lkIFByaW50VG8oc3RkOjpyZWZlcmVuY2Vfd3JhcHBlcjxUPiByZWYsIDo6
c3RkOjpvc3RyZWFtKiBvcykgeworICBVbml2ZXJzYWxQcmludGVyPFQmPjo6UHJpbnQocmVmLmdl
dCgpLCBvcyk7CiB9CiAKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVu
YW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDU+Ci12b2lkIFByaW50VG8oY29uc3QgOjpz
dGQ6OnRyMTo6dHVwbGU8VDEsIFQyLCBUMywgVDQsIFQ1PiYgdCwKLSAgICAgICAgICAgICA6OnN0
ZDo6b3N0cmVhbSogb3MpIHsKLSAgUHJpbnRUdXBsZVRvKHQsIG9zKTsKLX0KLQotdGVtcGxhdGUg
PHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBl
bmFtZSBUNSwKLSAgICAgICAgICB0eXBlbmFtZSBUNj4KLXZvaWQgUHJpbnRUbyhjb25zdCA6OnN0
ZDo6dHIxOjp0dXBsZTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2PiYgdCwKLSAgICAgICAgICAgICA6
OnN0ZDo6b3N0cmVhbSogb3MpIHsKLSAgUHJpbnRUdXBsZVRvKHQsIG9zKTsKLX0KLQotdGVtcGxh
dGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0
eXBlbmFtZSBUNSwKLSAgICAgICAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDc+Ci12b2lkIFBy
aW50VG8oY29uc3QgOjpzdGQ6OnRyMTo6dHVwbGU8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDc+
JiB0LAotICAgICAgICAgICAgIDo6c3RkOjpvc3RyZWFtKiBvcykgewotICBQcmludFR1cGxlVG8o
dCwgb3MpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFt
ZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgICAgICAgIHR5cGVuYW1lIFQ2LCB0
eXBlbmFtZSBUNywgdHlwZW5hbWUgVDg+Ci12b2lkIFByaW50VG8oY29uc3QgOjpzdGQ6OnRyMTo6
dHVwbGU8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4PiYgdCwKLSAgICAgICAgICAgICA6
OnN0ZDo6b3N0cmVhbSogb3MpIHsKLSAgUHJpbnRUdXBsZVRvKHQsIG9zKTsKLX0KLQotdGVtcGxh
dGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0
eXBlbmFtZSBUNSwKLSAgICAgICAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1l
IFQ4LCB0eXBlbmFtZSBUOT4KLXZvaWQgUHJpbnRUbyhjb25zdCA6OnN0ZDo6dHIxOjp0dXBsZTxU
MSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5PiYgdCwKLSAgICAgICAgICAgICA6OnN0
ZDo6b3N0cmVhbSogb3MpIHsKLSAgUHJpbnRUdXBsZVRvKHQsIG9zKTsKLX0KLQotdGVtcGxhdGUg
PHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBl
bmFtZSBUNSwKLSAgICAgICAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4
LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwPgotdm9pZCBQcmludFRvKAotICAgIGNvbnN0IDo6
c3RkOjp0cjE6OnR1cGxlPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMD4m
IHQsCi0gICAgOjpzdGQ6Om9zdHJlYW0qIG9zKSB7Ci0gIFByaW50VHVwbGVUbyh0LCBvcyk7Cisv
LyBIZWxwZXIgZnVuY3Rpb24gZm9yIHByaW50aW5nIGEgdHVwbGUuICBUIG11c3QgYmUgaW5zdGFu
dGlhdGVkIHdpdGgKKy8vIGEgdHVwbGUgdHlwZS4KK3RlbXBsYXRlIDx0eXBlbmFtZSBUPgordm9p
ZCBQcmludFR1cGxlVG8oY29uc3QgVCYsIHN0ZDo6aW50ZWdyYWxfY29uc3RhbnQ8c2l6ZV90LCAw
PiwKKyAgICAgICAgICAgICAgICAgIDo6c3RkOjpvc3RyZWFtKikge30KKwordGVtcGxhdGUgPHR5
cGVuYW1lIFQsIHNpemVfdCBJPgordm9pZCBQcmludFR1cGxlVG8oY29uc3QgVCYgdCwgc3RkOjpp
bnRlZ3JhbF9jb25zdGFudDxzaXplX3QsIEk+LAorICAgICAgICAgICAgICAgICAgOjpzdGQ6Om9z
dHJlYW0qIG9zKSB7CisgIFByaW50VHVwbGVUbyh0LCBzdGQ6OmludGVncmFsX2NvbnN0YW50PHNp
emVfdCwgSSAtIDE+KCksIG9zKTsKKyAgR1RFU1RfSU5URU5USU9OQUxfQ09OU1RfQ09ORF9QVVNI
XygpCisgIGlmIChJID4gMSkgeworICAgIEdURVNUX0lOVEVOVElPTkFMX0NPTlNUX0NPTkRfUE9Q
XygpCisgICAgKm9zIDw8ICIsICI7CisgIH0KKyAgVW5pdmVyc2FsUHJpbnRlcjx0eXBlbmFtZSBz
dGQ6OnR1cGxlX2VsZW1lbnQ8SSAtIDEsIFQ+Ojp0eXBlPjo6UHJpbnQoCisgICAgICBzdGQ6Omdl
dDxJIC0gMT4odCksIG9zKTsKIH0KLSNlbmRpZiAgLy8gR1RFU1RfSEFTX1RSMV9UVVBMRQogCi0j
aWYgR1RFU1RfSEFTX1NURF9UVVBMRV8KIHRlbXBsYXRlIDx0eXBlbmFtZS4uLiBUeXBlcz4KIHZv
aWQgUHJpbnRUbyhjb25zdCA6OnN0ZDo6dHVwbGU8VHlwZXMuLi4+JiB0LCA6OnN0ZDo6b3N0cmVh
bSogb3MpIHsKLSAgUHJpbnRUdXBsZVRvKHQsIG9zKTsKKyAgKm9zIDw8ICIoIjsKKyAgUHJpbnRU
dXBsZVRvKHQsIHN0ZDo6aW50ZWdyYWxfY29uc3RhbnQ8c2l6ZV90LCBzaXplb2YuLi4oVHlwZXMp
PigpLCBvcyk7CisgICpvcyA8PCAiKSI7CiB9Ci0jZW5kaWYgIC8vIEdURVNUX0hBU19TVERfVFVQ
TEVfCiAKIC8vIE92ZXJsb2FkIGZvciBzdGQ6OnBhaXIuCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgVDEs
IHR5cGVuYW1lIFQyPgpAQCAtODI2LDcgKzczNiw2IEBAIHZvaWQgVW5pdmVyc2FsUHJpbnRBcnJh
eShjb25zdCBUKiBiZWdpbiwgc2l6ZV90IGxlbiwgOjpzdGQ6Om9zdHJlYW0qIG9zKSB7CiAgICAg
Ly8gSWYgdGhlIGFycmF5IGhhcyBtb3JlIHRoYW4ga1RocmVzaG9sZCBlbGVtZW50cywgd2UnbGwg
aGF2ZSB0bwogICAgIC8vIG9taXQgc29tZSBkZXRhaWxzIGJ5IHByaW50aW5nIG9ubHkgdGhlIGZp
cnN0IGFuZCB0aGUgbGFzdAogICAgIC8vIGtDaHVua1NpemUgZWxlbWVudHMuCi0gICAgLy8gRklY
TUU6IGxldCB0aGUgdXNlciBjb250cm9sIHRoZSB0aHJlc2hvbGQgdXNpbmcgYSBmbGFnLgogICAg
IGlmIChsZW4gPD0ga1RocmVzaG9sZCkgewogICAgICAgUHJpbnRSYXdBcnJheVRvKGJlZ2luLCBs
ZW4sIG9zKTsKICAgICB9IGVsc2UgewpAQCAtOTA1LDcgKzgxNCw3IEBAIHRlbXBsYXRlIDw+CiBj
bGFzcyBVbml2ZXJzYWxUZXJzZVByaW50ZXI8Y29uc3QgY2hhcio+IHsKICBwdWJsaWM6CiAgIHN0
YXRpYyB2b2lkIFByaW50KGNvbnN0IGNoYXIqIHN0ciwgOjpzdGQ6Om9zdHJlYW0qIG9zKSB7Ci0g
ICAgaWYgKHN0ciA9PSBOVUxMKSB7CisgICAgaWYgKHN0ciA9PSBudWxscHRyKSB7CiAgICAgICAq
b3MgPDwgIk5VTEwiOwogICAgIH0gZWxzZSB7CiAgICAgICBVbml2ZXJzYWxQcmludChzdGQ6OnN0
cmluZyhzdHIpLCBvcyk7CkBAIC05MjUsNyArODM0LDcgQEAgdGVtcGxhdGUgPD4KIGNsYXNzIFVu
aXZlcnNhbFRlcnNlUHJpbnRlcjxjb25zdCB3Y2hhcl90Kj4gewogIHB1YmxpYzoKICAgc3RhdGlj
IHZvaWQgUHJpbnQoY29uc3Qgd2NoYXJfdCogc3RyLCA6OnN0ZDo6b3N0cmVhbSogb3MpIHsKLSAg
ICBpZiAoc3RyID09IE5VTEwpIHsKKyAgICBpZiAoc3RyID09IG51bGxwdHIpIHsKICAgICAgICpv
cyA8PCAiTlVMTCI7CiAgICAgfSBlbHNlIHsKICAgICAgIFVuaXZlcnNhbFByaW50KDo6c3RkOjp3
c3RyaW5nKHN0ciksIG9zKTsKQEAgLTk2MSwxMDkgKzg3MCwyMCBAQCB2b2lkIFVuaXZlcnNhbFBy
aW50KGNvbnN0IFQmIHZhbHVlLCA6OnN0ZDo6b3N0cmVhbSogb3MpIHsKIAogdHlwZWRlZiA6OnN0
ZDo6dmVjdG9yPCA6OnN0ZDo6c3RyaW5nPiBTdHJpbmdzOwogCi0vLyBUdXBsZVBvbGljeTxUdXBs
ZVQ+IG11c3QgcHJvdmlkZToKLS8vIC0gdHVwbGVfc2l6ZQotLy8gICAgIHNpemUgb2YgdHVwbGUg
VHVwbGVULgotLy8gLSBnZXQ8c2l6ZV90IEk+KGNvbnN0IFR1cGxlVCYgdCkKLS8vICAgICBzdGF0
aWMgZnVuY3Rpb24gZXh0cmFjdGluZyBlbGVtZW50IEkgb2YgdHVwbGUgVHVwbGVULgotLy8gLSB0
dXBsZV9lbGVtZW50PHNpemVfdCBJPjo6dHlwZQotLy8gICAgIHR5cGUgb2YgZWxlbWVudCBJIG9m
IHR1cGxlIFR1cGxlVC4KLXRlbXBsYXRlIDx0eXBlbmFtZSBUdXBsZVQ+Ci1zdHJ1Y3QgVHVwbGVQ
b2xpY3k7Ci0KLSNpZiBHVEVTVF9IQVNfVFIxX1RVUExFCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVHVw
bGVUPgotc3RydWN0IFR1cGxlUG9saWN5IHsKLSAgdHlwZWRlZiBUdXBsZVQgVHVwbGU7Ci0gIHN0
YXRpYyBjb25zdCBzaXplX3QgdHVwbGVfc2l6ZSA9IDo6c3RkOjp0cjE6OnR1cGxlX3NpemU8VHVw
bGU+Ojp2YWx1ZTsKLQotICB0ZW1wbGF0ZSA8c2l6ZV90IEk+Ci0gIHN0cnVjdCB0dXBsZV9lbGVt
ZW50IDogOjpzdGQ6OnRyMTo6dHVwbGVfZWxlbWVudDxzdGF0aWNfY2FzdDxpbnQ+KEkpLCBUdXBs
ZT4gewotICB9OwotCi0gIHRlbXBsYXRlIDxzaXplX3QgST4KLSAgc3RhdGljIHR5cGVuYW1lIEFk
ZFJlZmVyZW5jZTxjb25zdCB0eXBlbmFtZSA6OnN0ZDo6dHIxOjp0dXBsZV9lbGVtZW50PAotICAg
ICAgc3RhdGljX2Nhc3Q8aW50PihJKSwgVHVwbGU+Ojp0eXBlPjo6dHlwZQotICBnZXQoY29uc3Qg
VHVwbGUmIHR1cGxlKSB7Ci0gICAgcmV0dXJuIDo6c3RkOjp0cjE6OmdldDxJPih0dXBsZSk7Ci0g
IH0KLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVHVwbGVUPgotY29uc3Qgc2l6ZV90IFR1cGxlUG9s
aWN5PFR1cGxlVD46OnR1cGxlX3NpemU7Ci0jZW5kaWYgIC8vIEdURVNUX0hBU19UUjFfVFVQTEUK
LQotI2lmIEdURVNUX0hBU19TVERfVFVQTEVfCi10ZW1wbGF0ZSA8dHlwZW5hbWUuLi4gVHlwZXM+
Ci1zdHJ1Y3QgVHVwbGVQb2xpY3k8IDo6c3RkOjp0dXBsZTxUeXBlcy4uLj4gPiB7Ci0gIHR5cGVk
ZWYgOjpzdGQ6OnR1cGxlPFR5cGVzLi4uPiBUdXBsZTsKLSAgc3RhdGljIGNvbnN0IHNpemVfdCB0
dXBsZV9zaXplID0gOjpzdGQ6OnR1cGxlX3NpemU8VHVwbGU+Ojp2YWx1ZTsKLQotICB0ZW1wbGF0
ZSA8c2l6ZV90IEk+Ci0gIHN0cnVjdCB0dXBsZV9lbGVtZW50IDogOjpzdGQ6OnR1cGxlX2VsZW1l
bnQ8SSwgVHVwbGU+IHt9OwotCi0gIHRlbXBsYXRlIDxzaXplX3QgST4KLSAgc3RhdGljIGNvbnN0
IHR5cGVuYW1lIDo6c3RkOjp0dXBsZV9lbGVtZW50PEksIFR1cGxlPjo6dHlwZSYgZ2V0KAotICAg
ICAgY29uc3QgVHVwbGUmIHR1cGxlKSB7Ci0gICAgcmV0dXJuIDo6c3RkOjpnZXQ8ST4odHVwbGUp
OwotICB9Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1lLi4uIFR5cGVzPgotY29uc3Qgc2l6ZV90IFR1
cGxlUG9saWN5PCA6OnN0ZDo6dHVwbGU8VHlwZXMuLi4+ID46OnR1cGxlX3NpemU7Ci0jZW5kaWYg
IC8vIEdURVNUX0hBU19TVERfVFVQTEVfCi0KLSNpZiBHVEVTVF9IQVNfVFIxX1RVUExFIHx8IEdU
RVNUX0hBU19TVERfVFVQTEVfCi0vLyBUaGlzIGhlbHBlciB0ZW1wbGF0ZSBhbGxvd3MgUHJpbnRU
bygpIGZvciB0dXBsZXMgYW5kCi0vLyBVbml2ZXJzYWxUZXJzZVByaW50VHVwbGVGaWVsZHNUb1N0
cmluZ3MoKSB0byBiZSBkZWZpbmVkIGJ5Ci0vLyBpbmR1Y3Rpb24gb24gdGhlIG51bWJlciBvZiB0
dXBsZSBmaWVsZHMuICBUaGUgaWRlYSBpcyB0aGF0Ci0vLyBUdXBsZVByZWZpeFByaW50ZXI8Tj46
OlByaW50UHJlZml4VG8odCwgb3MpIHByaW50cyB0aGUgZmlyc3QgTgotLy8gZmllbGRzIGluIHR1
cGxlIHQsIGFuZCBjYW4gYmUgZGVmaW5lZCBpbiB0ZXJtcyBvZgotLy8gVHVwbGVQcmVmaXhQcmlu
dGVyPE4gLSAxPi4KLS8vCi0vLyBUaGUgaW5kdWN0aXZlIGNhc2UuCi10ZW1wbGF0ZSA8c2l6ZV90
IE4+Ci1zdHJ1Y3QgVHVwbGVQcmVmaXhQcmludGVyIHsKLSAgLy8gUHJpbnRzIHRoZSBmaXJzdCBO
IGZpZWxkcyBvZiBhIHR1cGxlLgotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVHVwbGU+Ci0gIHN0YXRp
YyB2b2lkIFByaW50UHJlZml4VG8oY29uc3QgVHVwbGUmIHQsIDo6c3RkOjpvc3RyZWFtKiBvcykg
ewotICAgIFR1cGxlUHJlZml4UHJpbnRlcjxOIC0gMT46OlByaW50UHJlZml4VG8odCwgb3MpOwot
ICAgIEdURVNUX0lOVEVOVElPTkFMX0NPTlNUX0NPTkRfUFVTSF8oKQotICAgIGlmIChOID4gMSkg
ewotICAgIEdURVNUX0lOVEVOVElPTkFMX0NPTlNUX0NPTkRfUE9QXygpCi0gICAgICAqb3MgPDwg
IiwgIjsKLSAgICB9Ci0gICAgVW5pdmVyc2FsUHJpbnRlcjwKLSAgICAgICAgdHlwZW5hbWUgVHVw
bGVQb2xpY3k8VHVwbGU+Ojp0ZW1wbGF0ZSB0dXBsZV9lbGVtZW50PE4gLSAxPjo6dHlwZT4KLSAg
ICAgICAgOjpQcmludChUdXBsZVBvbGljeTxUdXBsZT46OnRlbXBsYXRlIGdldDxOIC0gMT4odCks
IG9zKTsKLSAgfQotCiAgIC8vIFRlcnNlbHkgcHJpbnRzIHRoZSBmaXJzdCBOIGZpZWxkcyBvZiBh
IHR1cGxlIHRvIGEgc3RyaW5nIHZlY3RvciwKICAgLy8gb25lIGVsZW1lbnQgZm9yIGVhY2ggZmll
bGQuCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUdXBsZT4KLSAgc3RhdGljIHZvaWQgVGVyc2VQcmlu
dFByZWZpeFRvU3RyaW5ncyhjb25zdCBUdXBsZSYgdCwgU3RyaW5ncyogc3RyaW5ncykgewotICAg
IFR1cGxlUHJlZml4UHJpbnRlcjxOIC0gMT46OlRlcnNlUHJpbnRQcmVmaXhUb1N0cmluZ3ModCwg
c3RyaW5ncyk7Ci0gICAgOjpzdGQ6OnN0cmluZ3N0cmVhbSBzczsKLSAgICBVbml2ZXJzYWxUZXJz
ZVByaW50KFR1cGxlUG9saWN5PFR1cGxlPjo6dGVtcGxhdGUgZ2V0PE4gLSAxPih0KSwgJnNzKTsK
LSAgICBzdHJpbmdzLT5wdXNoX2JhY2soc3Muc3RyKCkpOwotICB9Ci19OwotCi0vLyBCYXNlIGNh
c2UuCi10ZW1wbGF0ZSA8Pgotc3RydWN0IFR1cGxlUHJlZml4UHJpbnRlcjwwPiB7Ci0gIHRlbXBs
YXRlIDx0eXBlbmFtZSBUdXBsZT4KLSAgc3RhdGljIHZvaWQgUHJpbnRQcmVmaXhUbyhjb25zdCBU
dXBsZSYsIDo6c3RkOjpvc3RyZWFtKikge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVHVwbGU+
Ci0gIHN0YXRpYyB2b2lkIFRlcnNlUHJpbnRQcmVmaXhUb1N0cmluZ3MoY29uc3QgVHVwbGUmLCBT
dHJpbmdzKikge30KLX07Ci0KLS8vIEhlbHBlciBmdW5jdGlvbiBmb3IgcHJpbnRpbmcgYSB0dXBs
ZS4KLS8vIFR1cGxlIG11c3QgYmUgZWl0aGVyIHN0ZDo6dHIxOjp0dXBsZSBvciBzdGQ6OnR1cGxl
IHR5cGUuCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgVHVwbGU+Ci12b2lkIFByaW50VHVwbGVUbyhjb25z
dCBUdXBsZSYgdCwgOjpzdGQ6Om9zdHJlYW0qIG9zKSB7Ci0gICpvcyA8PCAiKCI7Ci0gIFR1cGxl
UHJlZml4UHJpbnRlcjxUdXBsZVBvbGljeTxUdXBsZT46OnR1cGxlX3NpemU+OjpQcmludFByZWZp
eFRvKHQsIG9zKTsKLSAgKm9zIDw8ICIpIjsKK3ZvaWQgVGVyc2VQcmludFByZWZpeFRvU3RyaW5n
cyhjb25zdCBUdXBsZSYsIHN0ZDo6aW50ZWdyYWxfY29uc3RhbnQ8c2l6ZV90LCAwPiwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBTdHJpbmdzKikge30KK3RlbXBsYXRlIDx0eXBlbmFt
ZSBUdXBsZSwgc2l6ZV90IEk+Cit2b2lkIFRlcnNlUHJpbnRQcmVmaXhUb1N0cmluZ3MoY29uc3Qg
VHVwbGUmIHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkOjppbnRlZ3JhbF9j
b25zdGFudDxzaXplX3QsIEk+LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0cmlu
Z3MqIHN0cmluZ3MpIHsKKyAgVGVyc2VQcmludFByZWZpeFRvU3RyaW5ncyh0LCBzdGQ6OmludGVn
cmFsX2NvbnN0YW50PHNpemVfdCwgSSAtIDE+KCksCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgc3RyaW5ncyk7CisgIDo6c3RkOjpzdHJpbmdzdHJlYW0gc3M7CisgIFVuaXZlcnNhbFRlcnNl
UHJpbnQoc3RkOjpnZXQ8SSAtIDE+KHQpLCAmc3MpOworICBzdHJpbmdzLT5wdXNoX2JhY2soc3Mu
c3RyKCkpOwogfQogCiAvLyBQcmludHMgdGhlIGZpZWxkcyBvZiBhIHR1cGxlIHRlcnNlbHkgdG8g
YSBzdHJpbmcgdmVjdG9yLCBvbmUKQEAgLTEwNzIsMjAgKzg5MiwyMCBAQCB2b2lkIFByaW50VHVw
bGVUbyhjb25zdCBUdXBsZSYgdCwgOjpzdGQ6Om9zdHJlYW0qIG9zKSB7CiB0ZW1wbGF0ZSA8dHlw
ZW5hbWUgVHVwbGU+CiBTdHJpbmdzIFVuaXZlcnNhbFRlcnNlUHJpbnRUdXBsZUZpZWxkc1RvU3Ry
aW5ncyhjb25zdCBUdXBsZSYgdmFsdWUpIHsKICAgU3RyaW5ncyByZXN1bHQ7Ci0gIFR1cGxlUHJl
Zml4UHJpbnRlcjxUdXBsZVBvbGljeTxUdXBsZT46OnR1cGxlX3NpemU+OjoKLSAgICAgIFRlcnNl
UHJpbnRQcmVmaXhUb1N0cmluZ3ModmFsdWUsICZyZXN1bHQpOworICBUZXJzZVByaW50UHJlZml4
VG9TdHJpbmdzKAorICAgICAgdmFsdWUsIHN0ZDo6aW50ZWdyYWxfY29uc3RhbnQ8c2l6ZV90LCBz
dGQ6OnR1cGxlX3NpemU8VHVwbGU+Ojp2YWx1ZT4oKSwKKyAgICAgICZyZXN1bHQpOwogICByZXR1
cm4gcmVzdWx0OwogfQotI2VuZGlmICAvLyBHVEVTVF9IQVNfVFIxX1RVUExFIHx8IEdURVNUX0hB
U19TVERfVFVQTEVfCiAKIH0gIC8vIG5hbWVzcGFjZSBpbnRlcm5hbAogCi0jaWYgR1RFU1RfSEFT
X0FCU0wKKyNpZiBHVEVTVF9JTlRFUk5BTF9IQVNfU1RSSU5HX1ZJRVcKIG5hbWVzcGFjZSBpbnRl
cm5hbDIgewogdGVtcGxhdGUgPHR5cGVuYW1lIFQ+CiB2b2lkIFR5cGVXaXRob3V0Rm9ybWF0dGVy
PFQsIGtDb252ZXJ0aWJsZVRvU3RyaW5nVmlldz46OlByaW50VmFsdWUoCiAgICAgY29uc3QgVCYg
dmFsdWUsIDo6c3RkOjpvc3RyZWFtKiBvcykgewotICBpbnRlcm5hbDo6UHJpbnRUbyhhYnNsOjpz
dHJpbmdfdmlldyh2YWx1ZSksIG9zKTsKKyAgaW50ZXJuYWw6OlByaW50VG8oaW50ZXJuYWw6OlN0
cmluZ1ZpZXcodmFsdWUpLCBvcyk7CiB9CiB9ICAvLyBuYW1lc3BhY2UgaW50ZXJuYWwyCiAjZW5k
aWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5j
bHVkZS9ndGVzdC9ndGVzdC1zcGkuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVz
dC9zcmMvaW5jbHVkZS9ndGVzdC9ndGVzdC1zcGkuaAppbmRleCAxZTg5ODM5MzhlYTI3OTJjNTI2
OTBlYWQyOWIwMGFiNThjZGFhZTljLi5hYTM4ODcwZThlMWM5MTI5NGU3M2NmNGU4Y2I0MWQ3ZjMy
NzY0ZThlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3Jj
L2luY2x1ZGUvZ3Rlc3QvZ3Rlc3Qtc3BpLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9n
b29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2d0ZXN0LXNwaS5oCkBAIC03MiwxNCArNzIsMTUg
QEAgY2xhc3MgR1RFU1RfQVBJXyBTY29wZWRGYWtlVGVzdFBhcnRSZXN1bHRSZXBvcnRlcgogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZXN0UGFydFJlc3VsdEFycmF5KiByZXN1
bHQpOwogCiAgIC8vIFRoZSBkJ3RvciByZXN0b3JlcyB0aGUgcHJldmlvdXMgdGVzdCBwYXJ0IHJl
c3VsdCByZXBvcnRlci4KLSAgdmlydHVhbCB+U2NvcGVkRmFrZVRlc3RQYXJ0UmVzdWx0UmVwb3J0
ZXIoKTsKKyAgflNjb3BlZEZha2VUZXN0UGFydFJlc3VsdFJlcG9ydGVyKCkgb3ZlcnJpZGU7CiAK
ICAgLy8gQXBwZW5kcyB0aGUgVGVzdFBhcnRSZXN1bHQgb2JqZWN0IHRvIHRoZSBUZXN0UGFydFJl
c3VsdEFycmF5CiAgIC8vIHJlY2VpdmVkIGluIHRoZSBjb25zdHJ1Y3Rvci4KICAgLy8KICAgLy8g
VGhpcyBtZXRob2QgaXMgZnJvbSB0aGUgVGVzdFBhcnRSZXN1bHRSZXBvcnRlckludGVyZmFjZQog
ICAvLyBpbnRlcmZhY2UuCi0gIHZpcnR1YWwgdm9pZCBSZXBvcnRUZXN0UGFydFJlc3VsdChjb25z
dCBUZXN0UGFydFJlc3VsdCYgcmVzdWx0KTsKKyAgdm9pZCBSZXBvcnRUZXN0UGFydFJlc3VsdChj
b25zdCBUZXN0UGFydFJlc3VsdCYgcmVzdWx0KSBvdmVycmlkZTsKKwogIHByaXZhdGU6CiAgIHZv
aWQgSW5pdCgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRl
c3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QtdGVzdC1wYXJ0LmggYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJk
X3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QtdGVzdC1wYXJ0LmgKaW5k
ZXggMWM3Yjg5ZTA4Nzk2ZDk3MzBmOWY4ZWVhZTQwNjIyNzE3N2RiYTUxOS4uMDVhNzk4NTM1ODZh
OTExYzQ5ZGRmOTEwZmExZjA1OTVlMzM4MjY1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGly
ZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2d0ZXN0LXRlc3QtcGFydC5oCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9n
dGVzdC10ZXN0LXBhcnQuaApAQCAtNTMsMjIgKzUzLDIwIEBAIGNsYXNzIEdURVNUX0FQSV8gVGVz
dFBhcnRSZXN1bHQgewogICBlbnVtIFR5cGUgewogICAgIGtTdWNjZXNzLCAgICAgICAgICAvLyBT
dWNjZWVkZWQuCiAgICAga05vbkZhdGFsRmFpbHVyZSwgIC8vIEZhaWxlZCBidXQgdGhlIHRlc3Qg
Y2FuIGNvbnRpbnVlLgotICAgIGtGYXRhbEZhaWx1cmUgICAgICAvLyBGYWlsZWQgYW5kIHRoZSB0
ZXN0IHNob3VsZCBiZSB0ZXJtaW5hdGVkLgorICAgIGtGYXRhbEZhaWx1cmUsICAgICAvLyBGYWls
ZWQgYW5kIHRoZSB0ZXN0IHNob3VsZCBiZSB0ZXJtaW5hdGVkLgorICAgIGtTa2lwICAgICAgICAg
ICAgICAvLyBTa2lwcGVkLgogICB9OwogCiAgIC8vIEMndG9yLiAgVGVzdFBhcnRSZXN1bHQgZG9l
cyBOT1QgaGF2ZSBhIGRlZmF1bHQgY29uc3RydWN0b3IuCiAgIC8vIEFsd2F5cyB1c2UgdGhpcyBj
b25zdHJ1Y3RvciAod2l0aCBwYXJhbWV0ZXJzKSB0byBjcmVhdGUgYQogICAvLyBUZXN0UGFydFJl
c3VsdCBvYmplY3QuCi0gIFRlc3RQYXJ0UmVzdWx0KFR5cGUgYV90eXBlLAotICAgICAgICAgICAg
ICAgICBjb25zdCBjaGFyKiBhX2ZpbGVfbmFtZSwKLSAgICAgICAgICAgICAgICAgaW50IGFfbGlu
ZV9udW1iZXIsCisgIFRlc3RQYXJ0UmVzdWx0KFR5cGUgYV90eXBlLCBjb25zdCBjaGFyKiBhX2Zp
bGVfbmFtZSwgaW50IGFfbGluZV9udW1iZXIsCiAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIq
IGFfbWVzc2FnZSkKICAgICAgIDogdHlwZV8oYV90eXBlKSwKLSAgICAgICAgZmlsZV9uYW1lXyhh
X2ZpbGVfbmFtZSA9PSBOVUxMID8gIiIgOiBhX2ZpbGVfbmFtZSksCisgICAgICAgIGZpbGVfbmFt
ZV8oYV9maWxlX25hbWUgPT0gbnVsbHB0ciA/ICIiIDogYV9maWxlX25hbWUpLAogICAgICAgICBs
aW5lX251bWJlcl8oYV9saW5lX251bWJlciksCiAgICAgICAgIHN1bW1hcnlfKEV4dHJhY3RTdW1t
YXJ5KGFfbWVzc2FnZSkpLAotICAgICAgICBtZXNzYWdlXyhhX21lc3NhZ2UpIHsKLSAgfQorICAg
ICAgICBtZXNzYWdlXyhhX21lc3NhZ2UpIHt9CiAKICAgLy8gR2V0cyB0aGUgb3V0Y29tZSBvZiB0
aGUgdGVzdCBwYXJ0LgogICBUeXBlIHR5cGUoKSBjb25zdCB7IHJldHVybiB0eXBlXzsgfQpAQCAt
NzYsNyArNzQsNyBAQCBjbGFzcyBHVEVTVF9BUElfIFRlc3RQYXJ0UmVzdWx0IHsKICAgLy8gR2V0
cyB0aGUgbmFtZSBvZiB0aGUgc291cmNlIGZpbGUgd2hlcmUgdGhlIHRlc3QgcGFydCB0b29rIHBs
YWNlLCBvcgogICAvLyBOVUxMIGlmIGl0J3MgdW5rbm93bi4KICAgY29uc3QgY2hhciogZmlsZV9u
YW1lKCkgY29uc3QgewotICAgIHJldHVybiBmaWxlX25hbWVfLmVtcHR5KCkgPyBOVUxMIDogZmls
ZV9uYW1lXy5jX3N0cigpOworICAgIHJldHVybiBmaWxlX25hbWVfLmVtcHR5KCkgPyBudWxscHRy
IDogZmlsZV9uYW1lXy5jX3N0cigpOwogICB9CiAKICAgLy8gR2V0cyB0aGUgbGluZSBpbiB0aGUg
c291cmNlIGZpbGUgd2hlcmUgdGhlIHRlc3QgcGFydCB0b29rIHBsYWNlLApAQCAtODksMTggKzg3
LDIxIEBAIGNsYXNzIEdURVNUX0FQSV8gVGVzdFBhcnRSZXN1bHQgewogICAvLyBHZXRzIHRoZSBt
ZXNzYWdlIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGVzdCBwYXJ0LgogICBjb25zdCBjaGFyKiBtZXNz
YWdlKCkgY29uc3QgeyByZXR1cm4gbWVzc2FnZV8uY19zdHIoKTsgfQogCi0gIC8vIFJldHVybnMg
dHJ1ZSBpZmYgdGhlIHRlc3QgcGFydCBwYXNzZWQuCi0gIGJvb2wgcGFzc2VkKCkgY29uc3QgeyBy
ZXR1cm4gdHlwZV8gPT0ga1N1Y2Nlc3M7IH0KKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5
IGlmIHRoZSB0ZXN0IHBhcnQgd2FzIHNraXBwZWQuCisgIGJvb2wgc2tpcHBlZCgpIGNvbnN0IHsg
cmV0dXJuIHR5cGVfID09IGtTa2lwOyB9CiAKLSAgLy8gUmV0dXJucyB0cnVlIGlmZiB0aGUgdGVz
dCBwYXJ0IGZhaWxlZC4KLSAgYm9vbCBmYWlsZWQoKSBjb25zdCB7IHJldHVybiB0eXBlXyAhPSBr
U3VjY2VzczsgfQorICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHRlc3QgcGFy
dCBwYXNzZWQuCisgIGJvb2wgcGFzc2VkKCkgY29uc3QgeyByZXR1cm4gdHlwZV8gPT0ga1N1Y2Nl
c3M7IH0KIAotICAvLyBSZXR1cm5zIHRydWUgaWZmIHRoZSB0ZXN0IHBhcnQgbm9uLWZhdGFsbHkg
ZmFpbGVkLgorICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHRlc3QgcGFydCBu
b24tZmF0YWxseSBmYWlsZWQuCiAgIGJvb2wgbm9uZmF0YWxseV9mYWlsZWQoKSBjb25zdCB7IHJl
dHVybiB0eXBlXyA9PSBrTm9uRmF0YWxGYWlsdXJlOyB9CiAKLSAgLy8gUmV0dXJucyB0cnVlIGlm
ZiB0aGUgdGVzdCBwYXJ0IGZhdGFsbHkgZmFpbGVkLgorICAvLyBSZXR1cm5zIHRydWUgaWYgYW5k
IG9ubHkgaWYgdGhlIHRlc3QgcGFydCBmYXRhbGx5IGZhaWxlZC4KICAgYm9vbCBmYXRhbGx5X2Zh
aWxlZCgpIGNvbnN0IHsgcmV0dXJuIHR5cGVfID09IGtGYXRhbEZhaWx1cmU7IH0KIAorICAvLyBS
ZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHRlc3QgcGFydCBmYWlsZWQuCisgIGJvb2wg
ZmFpbGVkKCkgY29uc3QgeyByZXR1cm4gZmF0YWxseV9mYWlsZWQoKSB8fCBub25mYXRhbGx5X2Zh
aWxlZCgpOyB9CisKICBwcml2YXRlOgogICBUeXBlIHR5cGVfOwogCkBAIC0xNjQsOCArMTY1LDgg
QEAgY2xhc3MgR1RFU1RfQVBJXyBIYXNOZXdGYXRhbEZhaWx1cmVIZWxwZXIKICAgICA6IHB1Ymxp
YyBUZXN0UGFydFJlc3VsdFJlcG9ydGVySW50ZXJmYWNlIHsKICBwdWJsaWM6CiAgIEhhc05ld0Zh
dGFsRmFpbHVyZUhlbHBlcigpOwotICB2aXJ0dWFsIH5IYXNOZXdGYXRhbEZhaWx1cmVIZWxwZXIo
KTsKLSAgdmlydHVhbCB2b2lkIFJlcG9ydFRlc3RQYXJ0UmVzdWx0KGNvbnN0IFRlc3RQYXJ0UmVz
dWx0JiByZXN1bHQpOworICB+SGFzTmV3RmF0YWxGYWlsdXJlSGVscGVyKCkgb3ZlcnJpZGU7Cisg
IHZvaWQgUmVwb3J0VGVzdFBhcnRSZXN1bHQoY29uc3QgVGVzdFBhcnRSZXN1bHQmIHJlc3VsdCkg
b3ZlcnJpZGU7CiAgIGJvb2wgaGFzX25ld19mYXRhbF9mYWlsdXJlKCkgY29uc3QgeyByZXR1cm4g
aGFzX25ld19mYXRhbF9mYWlsdXJlXzsgfQogIHByaXZhdGU6CiAgIGJvb2wgaGFzX25ld19mYXRh
bF9mYWlsdXJlXzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVz
dC9zcmMvaW5jbHVkZS9ndGVzdC9ndGVzdC10eXBlZC10ZXN0LmggYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJk
X3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QtdHlwZWQtdGVzdC5oCmlu
ZGV4IDc0YmNlNDZiZGM1MGY0YzhjZGUyYzZkNzI2NDkxMWZmNGQ5OWNmMTkuLjNmZmE1MGI3Mzlh
YTBiNTc3NzZlNDcwYTMxMDQ0ODA4Y2UyMWMwYTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhp
cmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9ndGVzdC10eXBlZC10ZXN0LmgK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0
L2d0ZXN0LXR5cGVkLXRlc3QuaApAQCAtMjcsNyArMjcsNiBAQAogLy8gKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiAv
LyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgogCi0KIC8vIEdPT0dMRVRFU1RfQ00wMDAxIERPIE5PVCBERUxFVEUKIAog
I2lmbmRlZiBHVEVTVF9JTkNMVURFX0dURVNUX0dURVNUX1RZUEVEX1RFU1RfSF8KQEAgLTUyLDIy
ICs1MSwyMiBAQCBjbGFzcyBGb29UZXN0IDogcHVibGljIHRlc3Rpbmc6OlRlc3QgewogICBUIHZh
bHVlXzsKIH07CiAKLS8vIE5leHQsIGFzc29jaWF0ZSBhIGxpc3Qgb2YgdHlwZXMgd2l0aCB0aGUg
dGVzdCBjYXNlLCB3aGljaCB3aWxsIGJlCisvLyBOZXh0LCBhc3NvY2lhdGUgYSBsaXN0IG9mIHR5
cGVzIHdpdGggdGhlIHRlc3Qgc3VpdGUsIHdoaWNoIHdpbGwgYmUKIC8vIHJlcGVhdGVkIGZvciBl
YWNoIHR5cGUgaW4gdGhlIGxpc3QuICBUaGUgdHlwZWRlZiBpcyBuZWNlc3NhcnkgZm9yCiAvLyB0
aGUgbWFjcm8gdG8gcGFyc2UgY29ycmVjdGx5LgogdHlwZWRlZiB0ZXN0aW5nOjpUeXBlczxjaGFy
LCBpbnQsIHVuc2lnbmVkIGludD4gTXlUeXBlczsKLVRZUEVEX1RFU1RfQ0FTRShGb29UZXN0LCBN
eVR5cGVzKTsKK1RZUEVEX1RFU1RfU1VJVEUoRm9vVGVzdCwgTXlUeXBlcyk7CiAKIC8vIElmIHRo
ZSB0eXBlIGxpc3QgY29udGFpbnMgb25seSBvbmUgdHlwZSwgeW91IGNhbiB3cml0ZSB0aGF0IHR5
cGUKIC8vIGRpcmVjdGx5IHdpdGhvdXQgVHlwZXM8Li4uPjoKLS8vICAgVFlQRURfVEVTVF9DQVNF
KEZvb1Rlc3QsIGludCk7CisvLyAgIFRZUEVEX1RFU1RfU1VJVEUoRm9vVGVzdCwgaW50KTsKIAog
Ly8gVGhlbiwgdXNlIFRZUEVEX1RFU1QoKSBpbnN0ZWFkIG9mIFRFU1RfRigpIHRvIGRlZmluZSBh
cyBtYW55IHR5cGVkCi0vLyB0ZXN0cyBmb3IgdGhpcyB0ZXN0IGNhc2UgYXMgeW91IHdhbnQuCisv
LyB0ZXN0cyBmb3IgdGhpcyB0ZXN0IHN1aXRlIGFzIHlvdSB3YW50LgogVFlQRURfVEVTVChGb29U
ZXN0LCBEb2VzQmxhaCkgewotICAvLyBJbnNpZGUgYSB0ZXN0LCByZWZlciB0byBUeXBlUGFyYW0g
dG8gZ2V0IHRoZSB0eXBlIHBhcmFtZXRlci4KLSAgLy8gU2luY2Ugd2UgYXJlIGluc2lkZSBhIGRl
cml2ZWQgY2xhc3MgdGVtcGxhdGUsIEMrKyByZXF1aXJlcyB1c2UgdG8KLSAgLy8gdmlzaXQgdGhl
IG1lbWJlcnMgb2YgRm9vVGVzdCB2aWEgJ3RoaXMnLgorICAvLyBJbnNpZGUgYSB0ZXN0LCByZWZl
ciB0byB0aGUgc3BlY2lhbCBuYW1lIFR5cGVQYXJhbSB0byBnZXQgdGhlIHR5cGUKKyAgLy8gcGFy
YW1ldGVyLiAgU2luY2Ugd2UgYXJlIGluc2lkZSBhIGRlcml2ZWQgY2xhc3MgdGVtcGxhdGUsIEMr
KyByZXF1aXJlcworICAvLyB1cyB0byB2aXNpdCB0aGUgbWVtYmVycyBvZiBGb29UZXN0IHZpYSAn
dGhpcycuCiAgIFR5cGVQYXJhbSBuID0gdGhpcy0+dmFsdWVfOwogCiAgIC8vIFRvIHZpc2l0IHN0
YXRpYyBtZW1iZXJzIG9mIHRoZSBmaXh0dXJlLCBhZGQgdGhlIFRlc3RGaXh0dXJlOjoKQEAgLTgz
LDcgKzgyLDcgQEAgVFlQRURfVEVTVChGb29UZXN0LCBEb2VzQmxhaCkgewogCiBUWVBFRF9URVNU
KEZvb1Rlc3QsIEhhc1Byb3BlcnR5QSkgeyAuLi4gfQogCi0vLyBUWVBFRF9URVNUX0NBU0UgdGFr
ZXMgYW4gb3B0aW9uYWwgdGhpcmQgYXJndW1lbnQgd2hpY2ggYWxsb3dzIHRvIHNwZWNpZnkgYQor
Ly8gVFlQRURfVEVTVF9TVUlURSB0YWtlcyBhbiBvcHRpb25hbCB0aGlyZCBhcmd1bWVudCB3aGlj
aCBhbGxvd3MgdG8gc3BlY2lmeSBhCiAvLyBjbGFzcyB0aGF0IGdlbmVyYXRlcyBjdXN0b20gdGVz
dCBuYW1lIHN1ZmZpeGVzIGJhc2VkIG9uIHRoZSB0eXBlLiBUaGlzIHNob3VsZAogLy8gYmUgYSBj
bGFzcyB3aGljaCBoYXMgYSBzdGF0aWMgdGVtcGxhdGUgZnVuY3Rpb24gR2V0TmFtZShpbnQgaW5k
ZXgpIHJldHVybmluZwogLy8gYSBzdHJpbmcgZm9yIGVhY2ggdHlwZS4gVGhlIHByb3ZpZGVkIGlu
dGVnZXIgaW5kZXggZXF1YWxzIHRoZSBpbmRleCBvZiB0aGUKQEAgLTk5LDcgKzk4LDcgQEAgVFlQ
RURfVEVTVChGb29UZXN0LCBIYXNQcm9wZXJ0eUEpIHsgLi4uIH0KIC8vICAgICAgIGlmIChzdGQ6
OmlzX3NhbWU8VCwgdW5zaWduZWQgaW50PigpKSByZXR1cm4gInVuc2lnbmVkSW50IjsKIC8vICAg
ICB9CiAvLyAgIH07Ci0vLyAgIFRZUEVEX1RFU1RfQ0FTRShGb29UZXN0LCBNeVR5cGVzLCBNeVR5
cGVOYW1lcyk7CisvLyAgIFRZUEVEX1RFU1RfU1VJVEUoRm9vVGVzdCwgTXlUeXBlcywgTXlUeXBl
TmFtZXMpOwogCiAjZW5kaWYgIC8vIDAKIApAQCAtMTI2LDEzICsxMjUsMTMgQEAgY2xhc3MgRm9v
VGVzdCA6IHB1YmxpYyB0ZXN0aW5nOjpUZXN0IHsKICAgLi4uCiB9OwogCi0vLyBOZXh0LCBkZWNs
YXJlIHRoYXQgeW91IHdpbGwgZGVmaW5lIGEgdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3QgY2FzZQor
Ly8gTmV4dCwgZGVjbGFyZSB0aGF0IHlvdSB3aWxsIGRlZmluZSBhIHR5cGUtcGFyYW1ldGVyaXpl
ZCB0ZXN0IHN1aXRlCiAvLyAodGhlIF9QIHN1ZmZpeCBpcyBmb3IgInBhcmFtZXRlcml6ZWQiIG9y
ICJwYXR0ZXJuIiwgd2hpY2hldmVyIHlvdQogLy8gcHJlZmVyKToKLVRZUEVEX1RFU1RfQ0FTRV9Q
KEZvb1Rlc3QpOworVFlQRURfVEVTVF9TVUlURV9QKEZvb1Rlc3QpOwogCiAvLyBUaGVuLCB1c2Ug
VFlQRURfVEVTVF9QKCkgdG8gZGVmaW5lIGFzIG1hbnkgdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3Rz
Ci0vLyBmb3IgdGhpcyB0eXBlLXBhcmFtZXRlcml6ZWQgdGVzdCBjYXNlIGFzIHlvdSB3YW50Lgor
Ly8gZm9yIHRoaXMgdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3Qgc3VpdGUgYXMgeW91IHdhbnQuCiBU
WVBFRF9URVNUX1AoRm9vVGVzdCwgRG9lc0JsYWgpIHsKICAgLy8gSW5zaWRlIGEgdGVzdCwgcmVm
ZXIgdG8gVHlwZVBhcmFtIHRvIGdldCB0aGUgdHlwZSBwYXJhbWV0ZXIuCiAgIFR5cGVQYXJhbSBu
ID0gMDsKQEAgLTE0MywxMCArMTQyLDEwIEBAIFRZUEVEX1RFU1RfUChGb29UZXN0LCBIYXNQcm9w
ZXJ0eUEpIHsgLi4uIH0KIAogLy8gTm93IHRoZSB0cmlja3kgcGFydDogeW91IG5lZWQgdG8gcmVn
aXN0ZXIgYWxsIHRlc3QgcGF0dGVybnMgYmVmb3JlCiAvLyB5b3UgY2FuIGluc3RhbnRpYXRlIHRo
ZW0uICBUaGUgZmlyc3QgYXJndW1lbnQgb2YgdGhlIG1hY3JvIGlzIHRoZQotLy8gdGVzdCBjYXNl
IG5hbWU7IHRoZSByZXN0IGFyZSB0aGUgbmFtZXMgb2YgdGhlIHRlc3RzIGluIHRoaXMgdGVzdAor
Ly8gdGVzdCBzdWl0ZSBuYW1lOyB0aGUgcmVzdCBhcmUgdGhlIG5hbWVzIG9mIHRoZSB0ZXN0cyBp
biB0aGlzIHRlc3QKIC8vIGNhc2UuCi1SRUdJU1RFUl9UWVBFRF9URVNUX0NBU0VfUChGb29UZXN0
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgRG9lc0JsYWgsIEhhc1Byb3BlcnR5QSk7CitS
RUdJU1RFUl9UWVBFRF9URVNUX1NVSVRFX1AoRm9vVGVzdCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBEb2VzQmxhaCwgSGFzUHJvcGVydHlBKTsKIAogLy8gRmluYWxseSwgeW91IGFyZSBm
cmVlIHRvIGluc3RhbnRpYXRlIHRoZSBwYXR0ZXJuIHdpdGggdGhlIHR5cGVzIHlvdQogLy8gd2Fu
dC4gIElmIHlvdSBwdXQgdGhlIGFib3ZlIGNvZGUgaW4gYSBoZWFkZXIgZmlsZSwgeW91IGNhbiAj
aW5jbHVkZQpAQCAtMTU0LDIyICsxNTMsMjMgQEAgUkVHSVNURVJfVFlQRURfVEVTVF9DQVNFX1Ao
Rm9vVGVzdCwKIC8vCiAvLyBUbyBkaXN0aW5ndWlzaCBkaWZmZXJlbnQgaW5zdGFuY2VzIG9mIHRo
ZSBwYXR0ZXJuLCB0aGUgZmlyc3QKIC8vIGFyZ3VtZW50IHRvIHRoZSBJTlNUQU5USUFURV8qIG1h
Y3JvIGlzIGEgcHJlZml4IHRoYXQgd2lsbCBiZSBhZGRlZAotLy8gdG8gdGhlIGFjdHVhbCB0ZXN0
IGNhc2UgbmFtZS4gIFJlbWVtYmVyIHRvIHBpY2sgdW5pcXVlIHByZWZpeGVzIGZvcgorLy8gdG8g
dGhlIGFjdHVhbCB0ZXN0IHN1aXRlIG5hbWUuICBSZW1lbWJlciB0byBwaWNrIHVuaXF1ZSBwcmVm
aXhlcyBmb3IKIC8vIGRpZmZlcmVudCBpbnN0YW5jZXMuCiB0eXBlZGVmIHRlc3Rpbmc6OlR5cGVz
PGNoYXIsIGludCwgdW5zaWduZWQgaW50PiBNeVR5cGVzOwotSU5TVEFOVElBVEVfVFlQRURfVEVT
VF9DQVNFX1AoTXksIEZvb1Rlc3QsIE15VHlwZXMpOworSU5TVEFOVElBVEVfVFlQRURfVEVTVF9T
VUlURV9QKE15LCBGb29UZXN0LCBNeVR5cGVzKTsKIAogLy8gSWYgdGhlIHR5cGUgbGlzdCBjb250
YWlucyBvbmx5IG9uZSB0eXBlLCB5b3UgY2FuIHdyaXRlIHRoYXQgdHlwZQogLy8gZGlyZWN0bHkg
d2l0aG91dCBUeXBlczwuLi4+OgotLy8gICBJTlNUQU5USUFURV9UWVBFRF9URVNUX0NBU0VfUChN
eSwgRm9vVGVzdCwgaW50KTsKKy8vICAgSU5TVEFOVElBVEVfVFlQRURfVEVTVF9TVUlURV9QKE15
LCBGb29UZXN0LCBpbnQpOwogLy8KLS8vIFNpbWlsYXIgdG8gdGhlIG9wdGlvbmFsIGFyZ3VtZW50
IG9mIFRZUEVEX1RFU1RfQ0FTRSBhYm92ZSwKLS8vIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QIHRh
a2VzIGFuIG9wdGlvbmFsIGZvdXJ0aCBhcmd1bWVudCB3aGljaCBhbGxvd3MgdG8KKy8vIFNpbWls
YXIgdG8gdGhlIG9wdGlvbmFsIGFyZ3VtZW50IG9mIFRZUEVEX1RFU1RfU1VJVEUgYWJvdmUsCisv
LyBJTlNUQU5USUFURV9URVNUX1NVSVRFX1AgdGFrZXMgYW4gb3B0aW9uYWwgZm91cnRoIGFyZ3Vt
ZW50IHdoaWNoIGFsbG93cyB0bwogLy8gZ2VuZXJhdGUgY3VzdG9tIG5hbWVzLgotLy8gICBJTlNU
QU5USUFURV9UWVBFRF9URVNUX0NBU0VfUChNeSwgRm9vVGVzdCwgTXlUeXBlcywgTXlUeXBlTmFt
ZXMpOworLy8gICBJTlNUQU5USUFURV9UWVBFRF9URVNUX1NVSVRFX1AoTXksIEZvb1Rlc3QsIE15
VHlwZXMsIE15VHlwZU5hbWVzKTsKIAogI2VuZGlmICAvLyAwCiAKKyNpbmNsdWRlICJndGVzdC9p
bnRlcm5hbC9ndGVzdC1pbnRlcm5hbC5oIgogI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0
LXBvcnQuaCIKICNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9ndGVzdC10eXBlLXV0aWwuaCIKIApA
QCAtMTgwLDM1ICsxODAsMzMgQEAgSU5TVEFOVElBVEVfVFlQRURfVEVTVF9DQVNFX1AoTXksIEZv
b1Rlc3QsIE15VHlwZXMpOwogLy8gSU5URVJOQUwgSU1QTEVNRU5UQVRJT04gLSBETyBOT1QgVVNF
IElOIFVTRVIgQ09ERS4KIC8vCiAvLyBFeHBhbmRzIHRvIHRoZSBuYW1lIG9mIHRoZSB0eXBlZGVm
IGZvciB0aGUgdHlwZSBwYXJhbWV0ZXJzIG9mIHRoZQotLy8gZ2l2ZW4gdGVzdCBjYXNlLgotIyBk
ZWZpbmUgR1RFU1RfVFlQRV9QQVJBTVNfKFRlc3RDYXNlTmFtZSkgZ3Rlc3RfdHlwZV9wYXJhbXNf
IyNUZXN0Q2FzZU5hbWUjI18KKy8vIGdpdmVuIHRlc3Qgc3VpdGUuCisjZGVmaW5lIEdURVNUX1RZ
UEVfUEFSQU1TXyhUZXN0U3VpdGVOYW1lKSBndGVzdF90eXBlX3BhcmFtc18jI1Rlc3RTdWl0ZU5h
bWUjI18KIAogLy8gRXhwYW5kcyB0byB0aGUgbmFtZSBvZiB0aGUgdHlwZWRlZiBmb3IgdGhlIE5h
bWVHZW5lcmF0b3IsIHJlc3BvbnNpYmxlIGZvcgogLy8gY3JlYXRpbmcgdGhlIHN1ZmZpeGVzIG9m
IHRoZSBuYW1lLgotI2RlZmluZSBHVEVTVF9OQU1FX0dFTkVSQVRPUl8oVGVzdENhc2VOYW1lKSBc
Ci0gIGd0ZXN0X3R5cGVfcGFyYW1zXyMjVGVzdENhc2VOYW1lIyNfTmFtZUdlbmVyYXRvcgotCi0v
LyBUaGUgJ1R5cGVzJyB0ZW1wbGF0ZSBhcmd1bWVudCBiZWxvdyBtdXN0IGhhdmUgc3BhY2VzIGFy
b3VuZCBpdAotLy8gc2luY2Ugc29tZSBjb21waWxlcnMgbWF5IGNob2tlIG9uICc+Picgd2hlbiBw
YXNzaW5nIGEgdGVtcGxhdGUKLS8vIGluc3RhbmNlIChlLmcuIFR5cGVzPGludD4pCi0jIGRlZmlu
ZSBUWVBFRF9URVNUX0NBU0UoQ2FzZU5hbWUsIFR5cGVzLCAuLi4pICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCi0gIHR5cGVkZWYgOjp0ZXN0aW5nOjppbnRlcm5hbDo6VHlwZUxpc3Q8IFR5
cGVzID46OnR5cGUgR1RFU1RfVFlQRV9QQVJBTVNfKCBcCi0gICAgICBDYXNlTmFtZSk7ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0g
IHR5cGVkZWYgOjp0ZXN0aW5nOjppbnRlcm5hbDo6TmFtZUdlbmVyYXRvclNlbGVjdG9yPF9fVkFf
QVJHU19fPjo6dHlwZSAgICBcCisjZGVmaW5lIEdURVNUX05BTUVfR0VORVJBVE9SXyhUZXN0U3Vp
dGVOYW1lKSBcCisgIGd0ZXN0X3R5cGVfcGFyYW1zXyMjVGVzdFN1aXRlTmFtZSMjX05hbWVHZW5l
cmF0b3IKKworI2RlZmluZSBUWVBFRF9URVNUX1NVSVRFKENhc2VOYW1lLCBUeXBlcywgLi4uKSAg
ICAgICAgICAgICAgICAgICAgICAgICAgXAorICB0eXBlZGVmIDo6dGVzdGluZzo6aW50ZXJuYWw6
OkdlbmVyYXRlVHlwZUxpc3Q8VHlwZXM+Ojp0eXBlICAgICAgICAgICAgXAorICAgICAgR1RFU1Rf
VFlQRV9QQVJBTVNfKENhc2VOYW1lKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAorICB0eXBlZGVmIDo6dGVzdGluZzo6aW50ZXJuYWw6Ok5hbWVHZW5lcmF0b3JTZWxlY3Rv
cjxfX1ZBX0FSR1NfXz46OnR5cGUgXAogICAgICAgR1RFU1RfTkFNRV9HRU5FUkFUT1JfKENhc2VO
YW1lKQogCi0jIGRlZmluZSBUWVBFRF9URVNUKENhc2VOYW1lLCBUZXN0TmFtZSkgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisjZGVmaW5lIFRZUEVEX1RFU1QoQ2FzZU5h
bWUsIFRlc3ROYW1lKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisg
IHN0YXRpY19hc3NlcnQoc2l6ZW9mKEdURVNUX1NUUklOR0lGWV8oVGVzdE5hbWUpKSA+IDEsICAg
ICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAgICAgInRlc3QtbmFtZSBtdXN0IG5v
dCBiZSBlbXB0eSIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgIHRlbXBsYXRl
IDx0eXBlbmFtZSBndGVzdF9UeXBlUGFyYW1fPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCiAgIGNsYXNzIEdURVNUX1RFU1RfQ0xBU1NfTkFNRV8oQ2FzZU5hbWUsIFRl
c3ROYW1lKSAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICA6IHB1YmxpYyBDYXNl
TmFtZTxndGVzdF9UeXBlUGFyYW1fPiB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCiAgICBwcml2YXRlOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgdHlwZWRlZiBDYXNlTmFtZTxndGVzdF9U
eXBlUGFyYW1fPiBUZXN0Rml4dHVyZTsgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAg
dHlwZWRlZiBndGVzdF9UeXBlUGFyYW1fIFR5cGVQYXJhbTsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCi0gICAgdmlydHVhbCB2b2lkIFRlc3RCb2R5KCk7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgdm9pZCBUZXN0
Qm9keSgpIG92ZXJyaWRlOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCiAgIH07ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgIHN0YXRpYyBib29sIGd0ZXN0XyMj
Q2FzZU5hbWUjI18jI1Rlc3ROYW1lIyNfcmVnaXN0ZXJlZF8gICAgICAgICAgICAgICAgICAgICBc
Ci0gICAgICAgIEdURVNUX0FUVFJJQlVURV9VTlVTRURfID0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpUeXBl
UGFyYW1ldGVyaXplZFRlc3Q8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICBH
VEVTVF9BVFRSSUJVVEVfVU5VU0VEXyA9IDo6dGVzdGluZzo6aW50ZXJuYWw6OlR5cGVQYXJhbWV0
ZXJpemVkVGVzdDwgICBcCiAgICAgICAgICAgQ2FzZU5hbWUsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgICAgOjp0ZXN0
aW5nOjppbnRlcm5hbDo6VGVtcGxhdGVTZWw8R1RFU1RfVEVTVF9DTEFTU19OQU1FXyhDYXNlTmFt
ZSwgICBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBUZXN0TmFtZSk+LCBcCkBAIC0yMTYsNyArMjE0LDggQEAgSU5TVEFO
VElBVEVfVFlQRURfVEVTVF9DQVNFX1AoTXksIEZvb1Rlc3QsIE15VHlwZXMpOwogICAgICAgICAg
ICAgICBDYXNlTmFtZSk+OjpSZWdpc3RlcigiIiwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rp
bmc6OmludGVybmFsOjpDb2RlTG9jYXRpb24oICAgICAgICAgXAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgX19GSUxFX18sIF9fTElORV9fKSwgICAgICAgICAgICAgICAg
ICAgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjQ2FzZU5hbWUsICNUZXN0
TmFtZSwgMCwgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBHVEVTVF9TVFJJTkdJRllfKENhc2VOYW1lKSwgICAgICAgICAgICAgICAgXAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHVEVTVF9TVFJJTkdJRllfKFRlc3ROYW1l
KSwgMCwgICAgICAgICAgICAgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6
OnRlc3Rpbmc6OmludGVybmFsOjpHZW5lcmF0ZU5hbWVzPCAgICAgICAgXAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgR1RFU1RfTkFNRV9HRU5FUkFUT1JfKENhc2VOYW1l
KSwgICAgICAgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR1RFU1Rf
VFlQRV9QQVJBTVNfKENhc2VOYW1lKT4oKSk7ICAgICAgXApAQCAtMjI0LDYgKzIyMywxMyBAQCBJ
TlNUQU5USUFURV9UWVBFRF9URVNUX0NBU0VfUChNeSwgRm9vVGVzdCwgTXlUeXBlcyk7CiAgIHZv
aWQgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyhDYXNlTmFtZSwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZXN0TmFt
ZSk8Z3Rlc3RfVHlwZVBhcmFtXz46OlRlc3RCb2R5KCkKIAorLy8gTGVnYWN5IEFQSSBpcyBkZXBy
ZWNhdGVkIGJ1dCBzdGlsbCBhdmFpbGFibGUKKyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xFR0FDWV9U
RVNUX0NBU0VBUElfCisjZGVmaW5lIFRZUEVEX1RFU1RfQ0FTRSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgc3RhdGljX2Fzc2VydCg6OnRlc3Rpbmc6
OmludGVybmFsOjpUeXBlZFRlc3RDYXNlSXNEZXByZWNhdGVkKCksICIiKTsgXAorICBUWVBFRF9U
RVNUX1NVSVRFCisjZW5kaWYgIC8vIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwor
CiAjZW5kaWYgIC8vIEdURVNUX0hBU19UWVBFRF9URVNUCiAKIC8vIEltcGxlbWVudHMgdHlwZS1w
YXJhbWV0ZXJpemVkIHRlc3RzLgpAQCAtMjMzLDczICsyMzksOTggQEAgSU5TVEFOVElBVEVfVFlQ
RURfVEVTVF9DQVNFX1AoTXksIEZvb1Rlc3QsIE15VHlwZXMpOwogLy8gSU5URVJOQUwgSU1QTEVN
RU5UQVRJT04gLSBETyBOT1QgVVNFIElOIFVTRVIgQ09ERS4KIC8vCiAvLyBFeHBhbmRzIHRvIHRo
ZSBuYW1lc3BhY2UgbmFtZSB0aGF0IHRoZSB0eXBlLXBhcmFtZXRlcml6ZWQgdGVzdHMgZm9yCi0v
LyB0aGUgZ2l2ZW4gdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3QgY2FzZSBhcmUgZGVmaW5lZCBpbi4g
IFRoZSBleGFjdAorLy8gdGhlIGdpdmVuIHR5cGUtcGFyYW1ldGVyaXplZCB0ZXN0IHN1aXRlIGFy
ZSBkZWZpbmVkIGluLiAgVGhlIGV4YWN0CiAvLyBuYW1lIG9mIHRoZSBuYW1lc3BhY2UgaXMgc3Vi
amVjdCB0byBjaGFuZ2Ugd2l0aG91dCBub3RpY2UuCi0jIGRlZmluZSBHVEVTVF9DQVNFX05BTUVT
UEFDRV8oVGVzdENhc2VOYW1lKSBcCi0gIGd0ZXN0X2Nhc2VfIyNUZXN0Q2FzZU5hbWUjI18KKyNk
ZWZpbmUgR1RFU1RfU1VJVEVfTkFNRVNQQUNFXyhUZXN0U3VpdGVOYW1lKSBndGVzdF9zdWl0ZV8j
I1Rlc3RTdWl0ZU5hbWUjI18KIAogLy8gSU5URVJOQUwgSU1QTEVNRU5UQVRJT04gLSBETyBOT1Qg
VVNFIElOIFVTRVIgQ09ERS4KIC8vCiAvLyBFeHBhbmRzIHRvIHRoZSBuYW1lIG9mIHRoZSB2YXJp
YWJsZSB1c2VkIHRvIHJlbWVtYmVyIHRoZSBuYW1lcyBvZgotLy8gdGhlIGRlZmluZWQgdGVzdHMg
aW4gdGhlIGdpdmVuIHRlc3QgY2FzZS4KLSMgZGVmaW5lIEdURVNUX1RZUEVEX1RFU1RfQ0FTRV9Q
X1NUQVRFXyhUZXN0Q2FzZU5hbWUpIFwKLSAgZ3Rlc3RfdHlwZWRfdGVzdF9jYXNlX3Bfc3RhdGVf
IyNUZXN0Q2FzZU5hbWUjI18KKy8vIHRoZSBkZWZpbmVkIHRlc3RzIGluIHRoZSBnaXZlbiB0ZXN0
IHN1aXRlLgorI2RlZmluZSBHVEVTVF9UWVBFRF9URVNUX1NVSVRFX1BfU1RBVEVfKFRlc3RTdWl0
ZU5hbWUpIFwKKyAgZ3Rlc3RfdHlwZWRfdGVzdF9zdWl0ZV9wX3N0YXRlXyMjVGVzdFN1aXRlTmFt
ZSMjXwogCiAvLyBJTlRFUk5BTCBJTVBMRU1FTlRBVElPTiAtIERPIE5PVCBVU0UgSU4gVVNFUiBD
T0RFIERJUkVDVExZLgogLy8KIC8vIEV4cGFuZHMgdG8gdGhlIG5hbWUgb2YgdGhlIHZhcmlhYmxl
IHVzZWQgdG8gcmVtZW1iZXIgdGhlIG5hbWVzIG9mCi0vLyB0aGUgcmVnaXN0ZXJlZCB0ZXN0cyBp
biB0aGUgZ2l2ZW4gdGVzdCBjYXNlLgotIyBkZWZpbmUgR1RFU1RfUkVHSVNURVJFRF9URVNUX05B
TUVTXyhUZXN0Q2FzZU5hbWUpIFwKLSAgZ3Rlc3RfcmVnaXN0ZXJlZF90ZXN0X25hbWVzXyMjVGVz
dENhc2VOYW1lIyNfCisvLyB0aGUgcmVnaXN0ZXJlZCB0ZXN0cyBpbiB0aGUgZ2l2ZW4gdGVzdCBz
dWl0ZS4KKyNkZWZpbmUgR1RFU1RfUkVHSVNURVJFRF9URVNUX05BTUVTXyhUZXN0U3VpdGVOYW1l
KSBcCisgIGd0ZXN0X3JlZ2lzdGVyZWRfdGVzdF9uYW1lc18jI1Rlc3RTdWl0ZU5hbWUjI18KIAog
Ly8gVGhlIHZhcmlhYmxlcyBkZWZpbmVkIGluIHRoZSB0eXBlLXBhcmFtZXRlcml6ZWQgdGVzdCBt
YWNyb3MgYXJlCiAvLyBzdGF0aWMgYXMgdHlwaWNhbGx5IHRoZXNlIG1hY3JvcyBhcmUgdXNlZCBp
biBhIC5oIGZpbGUgdGhhdCBjYW4gYmUKIC8vICNpbmNsdWRlZCBpbiBtdWx0aXBsZSB0cmFuc2xh
dGlvbiB1bml0cyBsaW5rZWQgdG9nZXRoZXIuCi0jIGRlZmluZSBUWVBFRF9URVNUX0NBU0VfUChD
YXNlTmFtZSkgXAotICBzdGF0aWMgOjp0ZXN0aW5nOjppbnRlcm5hbDo6VHlwZWRUZXN0Q2FzZVBT
dGF0ZSBcCi0gICAgICBHVEVTVF9UWVBFRF9URVNUX0NBU0VfUF9TVEFURV8oQ2FzZU5hbWUpCi0K
LSMgZGVmaW5lIFRZUEVEX1RFU1RfUChDYXNlTmFtZSwgVGVzdE5hbWUpIFwKLSAgbmFtZXNwYWNl
IEdURVNUX0NBU0VfTkFNRVNQQUNFXyhDYXNlTmFtZSkgeyBcCi0gIHRlbXBsYXRlIDx0eXBlbmFt
ZSBndGVzdF9UeXBlUGFyYW1fPiBcCi0gIGNsYXNzIFRlc3ROYW1lIDogcHVibGljIENhc2VOYW1l
PGd0ZXN0X1R5cGVQYXJhbV8+IHsgXAotICAgcHJpdmF0ZTogXAotICAgIHR5cGVkZWYgQ2FzZU5h
bWU8Z3Rlc3RfVHlwZVBhcmFtXz4gVGVzdEZpeHR1cmU7IFwKLSAgICB0eXBlZGVmIGd0ZXN0X1R5
cGVQYXJhbV8gVHlwZVBhcmFtOyBcCi0gICAgdmlydHVhbCB2b2lkIFRlc3RCb2R5KCk7IFwKLSAg
fTsgXAotICBzdGF0aWMgYm9vbCBndGVzdF8jI1Rlc3ROYW1lIyNfZGVmaW5lZF8gR1RFU1RfQVRU
UklCVVRFX1VOVVNFRF8gPSBcCi0gICAgICBHVEVTVF9UWVBFRF9URVNUX0NBU0VfUF9TVEFURV8o
Q2FzZU5hbWUpLkFkZFRlc3ROYW1lKFwKLSAgICAgICAgICBfX0ZJTEVfXywgX19MSU5FX18sICND
YXNlTmFtZSwgI1Rlc3ROYW1lKTsgXAotICB9IFwKLSAgdGVtcGxhdGUgPHR5cGVuYW1lIGd0ZXN0
X1R5cGVQYXJhbV8+IFwKLSAgdm9pZCBHVEVTVF9DQVNFX05BTUVTUEFDRV8oQ2FzZU5hbWUpOjpU
ZXN0TmFtZTxndGVzdF9UeXBlUGFyYW1fPjo6VGVzdEJvZHkoKQotCi0jIGRlZmluZSBSRUdJU1RF
Ul9UWVBFRF9URVNUX0NBU0VfUChDYXNlTmFtZSwgLi4uKSBcCi0gIG5hbWVzcGFjZSBHVEVTVF9D
QVNFX05BTUVTUEFDRV8oQ2FzZU5hbWUpIHsgXAotICB0eXBlZGVmIDo6dGVzdGluZzo6aW50ZXJu
YWw6OlRlbXBsYXRlczxfX1ZBX0FSR1NfXz46OnR5cGUgZ3Rlc3RfQWxsVGVzdHNfOyBcCi0gIH0g
XAotICBzdGF0aWMgY29uc3QgY2hhciogY29uc3QgR1RFU1RfUkVHSVNURVJFRF9URVNUX05BTUVT
XyhDYXNlTmFtZSkgXAotICAgICAgR1RFU1RfQVRUUklCVVRFX1VOVVNFRF8gPSBcCi0gICAgICAg
ICAgR1RFU1RfVFlQRURfVEVTVF9DQVNFX1BfU1RBVEVfKENhc2VOYW1lKS5WZXJpZnlSZWdpc3Rl
cmVkVGVzdE5hbWVzKCBcCi0gICAgICAgICAgICAgIF9fRklMRV9fLCBfX0xJTkVfXywgI19fVkFf
QVJHU19fKQotCi0vLyBUaGUgJ1R5cGVzJyB0ZW1wbGF0ZSBhcmd1bWVudCBiZWxvdyBtdXN0IGhh
dmUgc3BhY2VzIGFyb3VuZCBpdAotLy8gc2luY2Ugc29tZSBjb21waWxlcnMgbWF5IGNob2tlIG9u
ICc+Picgd2hlbiBwYXNzaW5nIGEgdGVtcGxhdGUKLS8vIGluc3RhbmNlIChlLmcuIFR5cGVzPGlu
dD4pCi0jIGRlZmluZSBJTlNUQU5USUFURV9UWVBFRF9URVNUX0NBU0VfUChQcmVmaXgsIENhc2VO
YW1lLCBUeXBlcywgLi4uKSAgICAgIFwKLSAgc3RhdGljIGJvb2wgZ3Rlc3RfIyNQcmVmaXgjI18j
I0Nhc2VOYW1lIEdURVNUX0FUVFJJQlVURV9VTlVTRURfID0gICAgICAgXAotICAgICAgOjp0ZXN0
aW5nOjppbnRlcm5hbDo6VHlwZVBhcmFtZXRlcml6ZWRUZXN0Q2FzZTwgICAgICAgICAgICAgICAg
ICAgICBcCi0gICAgICAgICAgQ2FzZU5hbWUsIEdURVNUX0NBU0VfTkFNRVNQQUNFXyhDYXNlTmFt
ZSk6Omd0ZXN0X0FsbFRlc3RzXywgICAgIFwKLSAgICAgICAgICA6OnRlc3Rpbmc6OmludGVybmFs
OjpUeXBlTGlzdDwgVHlwZXMgPjo6dHlwZT46OiAgICAgICAgICAgICAgICAgXAotICAgICAgICAg
IFJlZ2lzdGVyKCNQcmVmaXgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCi0gICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6Q29kZUxv
Y2F0aW9uKF9fRklMRV9fLCBfX0xJTkVfXyksIFwKLSAgICAgICAgICAgICAgICAgICAmR1RFU1Rf
VFlQRURfVEVTVF9DQVNFX1BfU1RBVEVfKENhc2VOYW1lKSwgI0Nhc2VOYW1lLCAgXAotICAgICAg
ICAgICAgICAgICAgIEdURVNUX1JFR0lTVEVSRURfVEVTVF9OQU1FU18oQ2FzZU5hbWUpLCAgICAg
ICAgICAgICAgICBcCi0gICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6R2Vu
ZXJhdGVOYW1lczwgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgICAgICAgICAgICAgICAgICAg
Ojp0ZXN0aW5nOjppbnRlcm5hbDo6TmFtZUdlbmVyYXRvclNlbGVjdG9yPCAgICAgICAgXAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgX19WQV9BUkdTX18+Ojp0eXBlLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCi0gICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6aW50ZXJu
YWw6OlR5cGVMaXN0PCBUeXBlcyA+Ojp0eXBlPigpKQorI2RlZmluZSBUWVBFRF9URVNUX1NVSVRF
X1AoU3VpdGVOYW1lKSAgICAgICAgICAgICAgXAorICBzdGF0aWMgOjp0ZXN0aW5nOjppbnRlcm5h
bDo6VHlwZWRUZXN0U3VpdGVQU3RhdGUgXAorICAgICAgR1RFU1RfVFlQRURfVEVTVF9TVUlURV9Q
X1NUQVRFXyhTdWl0ZU5hbWUpCisKKy8vIExlZ2FjeSBBUEkgaXMgZGVwcmVjYXRlZCBidXQgc3Rp
bGwgYXZhaWxhYmxlCisjaWZuZGVmIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwor
I2RlZmluZSBUWVBFRF9URVNUX0NBU0VfUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCisgIHN0YXRpY19hc3NlcnQoOjp0ZXN0aW5nOjppbnRlcm5hbDo6
VHlwZWRUZXN0Q2FzZV9QX0lzRGVwcmVjYXRlZCgpLCAiIik7IFwKKyAgVFlQRURfVEVTVF9TVUlU
RV9QCisjZW5kaWYgIC8vIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXworCisjZGVm
aW5lIFRZUEVEX1RFU1RfUChTdWl0ZU5hbWUsIFRlc3ROYW1lKSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAorICBuYW1lc3BhY2UgR1RFU1RfU1VJVEVfTkFNRVNQQUNFXyhTdWl0ZU5hbWUp
IHsgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgZ3Rlc3Rf
VHlwZVBhcmFtXz4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgY2xhc3MgVGVz
dE5hbWUgOiBwdWJsaWMgU3VpdGVOYW1lPGd0ZXN0X1R5cGVQYXJhbV8+IHsgICAgICAgICAgICAg
XAorICAgICBwcml2YXRlOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKKyAgICAgIHR5cGVkZWYgU3VpdGVOYW1lPGd0ZXN0X1R5cGVQYXJh
bV8+IFRlc3RGaXh0dXJlOyAgICAgICAgICAgICAgICBcCisgICAgICB0eXBlZGVmIGd0ZXN0X1R5
cGVQYXJhbV8gVHlwZVBhcmFtOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAg
dm9pZCBUZXN0Qm9keSgpIG92ZXJyaWRlOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKKyAgICB9OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgc3RhdGljIGJvb2wgZ3Rlc3RfIyNUZXN0TmFt
ZSMjX2RlZmluZWRfIEdURVNUX0FUVFJJQlVURV9VTlVTRURfID0gXAorICAgICAgICBHVEVTVF9U
WVBFRF9URVNUX1NVSVRFX1BfU1RBVEVfKFN1aXRlTmFtZSkuQWRkVGVzdE5hbWUoICAgICAgIFwK
KyAgICAgICAgICAgIF9fRklMRV9fLCBfX0xJTkVfXywgR1RFU1RfU1RSSU5HSUZZXyhTdWl0ZU5h
bWUpLCAgICAgICAgICBcCisgICAgICAgICAgICBHVEVTVF9TVFJJTkdJRllfKFRlc3ROYW1lKSk7
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICB9ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgdGVtcGxh
dGUgPHR5cGVuYW1lIGd0ZXN0X1R5cGVQYXJhbV8+ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCisgIHZvaWQgR1RFU1RfU1VJVEVfTkFNRVNQQUNFXyggICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgU3VpdGVOYW1lKTo6VGVzdE5hbWU8Z3Rlc3Rf
VHlwZVBhcmFtXz46OlRlc3RCb2R5KCkKKworLy8gTm90ZTogdGhpcyB3b24ndCB3b3JrIGNvcnJl
Y3RseSBpZiB0aGUgdHJhaWxpbmcgYXJndW1lbnRzIGFyZSBtYWNyb3MuCisjZGVmaW5lIFJFR0lT
VEVSX1RZUEVEX1RFU1RfU1VJVEVfUChTdWl0ZU5hbWUsIC4uLikgICAgICAgICAgICAgICAgICAg
ICAgICAgXAorICBuYW1lc3BhY2UgR1RFU1RfU1VJVEVfTkFNRVNQQUNFXyhTdWl0ZU5hbWUpIHsg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB0eXBlZGVmIDo6dGVzdGluZzo6aW50
ZXJuYWw6OlRlbXBsYXRlczxfX1ZBX0FSR1NfXz4gZ3Rlc3RfQWxsVGVzdHNfOyAgICBcCisgIH0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICBzdGF0aWMgY29uc3QgY2hhciogY29uc3QgR1RFU1RfUkVHSVNU
RVJFRF9URVNUX05BTUVTXyggICAgICAgICAgICAgICAgICAgIFwKKyAgICAgIFN1aXRlTmFtZSkg
R1RFU1RfQVRUUklCVVRFX1VOVVNFRF8gPSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCisgICAgICBHVEVTVF9UWVBFRF9URVNUX1NVSVRFX1BfU1RBVEVfKFN1aXRlTmFtZSkuVmVy
aWZ5UmVnaXN0ZXJlZFRlc3ROYW1lcyggXAorICAgICAgICAgIEdURVNUX1NUUklOR0lGWV8oU3Vp
dGVOYW1lKSwgX19GSUxFX18sIF9fTElORV9fLCAjX19WQV9BUkdTX18pCisKKy8vIExlZ2FjeSBB
UEkgaXMgZGVwcmVjYXRlZCBidXQgc3RpbGwgYXZhaWxhYmxlCisjaWZuZGVmIEdURVNUX1JFTU9W
RV9MRUdBQ1lfVEVTVF9DQVNFQVBJXworI2RlZmluZSBSRUdJU1RFUl9UWVBFRF9URVNUX0NBU0Vf
UCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgIHN0YXRpY19h
c3NlcnQoOjp0ZXN0aW5nOjppbnRlcm5hbDo6UmVnaXN0ZXJUeXBlZFRlc3RDYXNlX1BfSXNEZXBy
ZWNhdGVkKCksIFwKKyAgICAgICAgICAgICAgICAiIik7ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICBSRUdJU1RFUl9UWVBFRF9URVNU
X1NVSVRFX1AKKyNlbmRpZiAgLy8gR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUElfCisK
KyNkZWZpbmUgSU5TVEFOVElBVEVfVFlQRURfVEVTVF9TVUlURV9QKFByZWZpeCwgU3VpdGVOYW1l
LCBUeXBlcywgLi4uKSAgICAgICBcCisgIHN0YXRpY19hc3NlcnQoc2l6ZW9mKEdURVNUX1NUUklO
R0lGWV8oUHJlZml4KSkgPiAxLCAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAg
ICAgICJ0ZXN0LXN1aXQtcHJlZml4IG11c3Qgbm90IGJlIGVtcHR5Iik7ICAgICAgICAgICAgICAg
ICAgICAgIFwKKyAgc3RhdGljIGJvb2wgZ3Rlc3RfIyNQcmVmaXgjI18jI1N1aXRlTmFtZSBHVEVT
VF9BVFRSSUJVVEVfVU5VU0VEXyA9ICAgICAgICBcCisgICAgICA6OnRlc3Rpbmc6OmludGVybmFs
OjpUeXBlUGFyYW1ldGVyaXplZFRlc3RTdWl0ZTwgICAgICAgICAgICAgICAgICAgICAgXAorICAg
ICAgICAgIFN1aXRlTmFtZSwgR1RFU1RfU1VJVEVfTkFNRVNQQUNFXyhTdWl0ZU5hbWUpOjpndGVz
dF9BbGxUZXN0c18sICAgIFwKKyAgICAgICAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpHZW5lcmF0
ZVR5cGVMaXN0PFR5cGVzPjo6dHlwZT46OiAgICAgICAgICAgICBcCisgICAgICAgICAgUmVnaXN0
ZXIoR1RFU1RfU1RSSU5HSUZZXyhQcmVmaXgpLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAorICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6aW50ZXJuYWw6OkNvZGVMb2NhdGlv
bihfX0ZJTEVfXywgX19MSU5FX18pLCAgIFwKKyAgICAgICAgICAgICAgICAgICAmR1RFU1RfVFlQ
RURfVEVTVF9TVUlURV9QX1NUQVRFXyhTdWl0ZU5hbWUpLCAgICAgICAgICAgICBcCisgICAgICAg
ICAgICAgICAgICAgR1RFU1RfU1RSSU5HSUZZXyhTdWl0ZU5hbWUpLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgIEdURVNUX1JFR0lTVEVSRURfVEVTVF9O
QU1FU18oU3VpdGVOYW1lKSwgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICAgICAgICA6
OnRlc3Rpbmc6OmludGVybmFsOjpHZW5lcmF0ZU5hbWVzPCAgICAgICAgICAgICAgICAgICAgICBc
CisgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6aW50ZXJuYWw6Ok5hbWVHZW5lcmF0
b3JTZWxlY3RvcjwgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgX19WQV9B
UkdTX18+Ojp0eXBlLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAg
ICAgICAgICAgICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6R2VuZXJhdGVUeXBlTGlzdDxUeXBlcz46
OnR5cGU+KCkpCisKKy8vIExlZ2FjeSBBUEkgaXMgZGVwcmVjYXRlZCBidXQgc3RpbGwgYXZhaWxh
YmxlCisjaWZuZGVmIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXworI2RlZmluZSBJ
TlNUQU5USUFURV9UWVBFRF9URVNUX0NBU0VfUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAorICBzdGF0aWNfYXNzZXJ0KCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgOjp0ZXN0aW5nOjppbnRlcm5h
bDo6SW5zdGFudGlhdGVUeXBlZFRlc3RDYXNlX1BfSXNEZXByZWNhdGVkKCksICIiKTsgXAorICBJ
TlNUQU5USUFURV9UWVBFRF9URVNUX1NVSVRFX1AKKyNlbmRpZiAgLy8gR1RFU1RfUkVNT1ZFX0xF
R0FDWV9URVNUX0NBU0VBUElfCiAKICNlbmRpZiAgLy8gR1RFU1RfSEFTX1RZUEVEX1RFU1RfUAog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1
ZGUvZ3Rlc3QvZ3Rlc3QuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMv
aW5jbHVkZS9ndGVzdC9ndGVzdC5oCmluZGV4IDNiNGJiMWVlOTAyZTY4NWMxMmM4ZWVjMmYwYmEx
YmQ1YzMyYjkyOTIuLjM5Y2ZmMDhkNjU2OTU5YzI1MzYyZTI1YTYzNWNlZGNmYjcyMjgzNjEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9n
dGVzdC9ndGVzdC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMv
aW5jbHVkZS9ndGVzdC9ndGVzdC5oCkBAIC01MiwxMyArNTIsMTcgQEAKICNpZm5kZWYgR1RFU1Rf
SU5DTFVERV9HVEVTVF9HVEVTVF9IXwogI2RlZmluZSBHVEVTVF9JTkNMVURFX0dURVNUX0dURVNU
X0hfCiAKKyNpbmNsdWRlIDxjc3RkZGVmPgogI2luY2x1ZGUgPGxpbWl0cz4KKyNpbmNsdWRlIDxt
ZW1vcnk+CiAjaW5jbHVkZSA8b3N0cmVhbT4KKyNpbmNsdWRlIDx0eXBlX3RyYWl0cz4KICNpbmNs
dWRlIDx2ZWN0b3I+CiAKICNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9ndGVzdC1pbnRlcm5hbC5o
IgogI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LXN0cmluZy5oIgogI2luY2x1ZGUgImd0
ZXN0L2d0ZXN0LWRlYXRoLXRlc3QuaCIKKyNpbmNsdWRlICJndGVzdC9ndGVzdC1tYXRjaGVycy5o
IgogI2luY2x1ZGUgImd0ZXN0L2d0ZXN0LW1lc3NhZ2UuaCIKICNpbmNsdWRlICJndGVzdC9ndGVz
dC1wYXJhbS10ZXN0LmgiCiAjaW5jbHVkZSAiZ3Rlc3QvZ3Rlc3QtcHJpbnRlcnMuaCIKQEAgLTY5
LDIxICs3Myw2IEBACiBHVEVTVF9ESVNBQkxFX01TQ19XQVJOSU5HU19QVVNIXyg0MjUxIFwKIC8q
IGNsYXNzIEEgbmVlZHMgdG8gaGF2ZSBkbGwtaW50ZXJmYWNlIHRvIGJlIHVzZWQgYnkgY2xpZW50
cyBvZiBjbGFzcyBCICovKQogCi0vLyBEZXBlbmRpbmcgb24gdGhlIHBsYXRmb3JtLCBkaWZmZXJl
bnQgc3RyaW5nIGNsYXNzZXMgYXJlIGF2YWlsYWJsZS4KLS8vIE9uIExpbnV4LCBpbiBhZGRpdGlv
biB0byA6OnN0ZDo6c3RyaW5nLCBHb29nbGUgYWxzbyBtYWtlcyB1c2Ugb2YKLS8vIGNsYXNzIDo6
c3RyaW5nLCB3aGljaCBoYXMgdGhlIHNhbWUgaW50ZXJmYWNlIGFzIDo6c3RkOjpzdHJpbmcsIGJ1
dAotLy8gaGFzIGEgZGlmZmVyZW50IGltcGxlbWVudGF0aW9uLgotLy8KLS8vIFlvdSBjYW4gZGVm
aW5lIEdURVNUX0hBU19HTE9CQUxfU1RSSU5HIHRvIDEgdG8gaW5kaWNhdGUgdGhhdAotLy8gOjpz
dHJpbmcgaXMgYXZhaWxhYmxlIEFORCBpcyBhIGRpc3RpbmN0IHR5cGUgdG8gOjpzdGQ6OnN0cmlu
Zywgb3IKLS8vIGRlZmluZSBpdCB0byAwIHRvIGluZGljYXRlIG90aGVyd2lzZS4KLS8vCi0vLyBJ
ZiA6OnN0ZDo6c3RyaW5nIGFuZCA6OnN0cmluZyBhcmUgdGhlIHNhbWUgY2xhc3Mgb24geW91ciBw
bGF0Zm9ybQotLy8gZHVlIHRvIGFsaWFzaW5nLCB5b3Ugc2hvdWxkIGRlZmluZSBHVEVTVF9IQVNf
R0xPQkFMX1NUUklORyB0byAwLgotLy8KLS8vIElmIHlvdSBkbyBub3QgZGVmaW5lIEdURVNUX0hB
U19HTE9CQUxfU1RSSU5HLCBpdCBpcyBkZWZpbmVkCi0vLyBoZXVyaXN0aWNhbGx5LgotCiBuYW1l
c3BhY2UgdGVzdGluZyB7CiAKIC8vIFNpbGVuY2UgQzQxMDAgKHVucmVmZXJlbmNlZCBmb3JtYWwg
cGFyYW1ldGVyKSBhbmQgNDgwNQpAQCAtMTg4LDYgKzE3Nyw3IEBAIGNsYXNzIEZ1Y2hzaWFEZWF0
aFRlc3Q7CiBjbGFzcyBVbml0VGVzdEltcGwqIEdldFVuaXRUZXN0SW1wbCgpOwogdm9pZCBSZXBv
cnRGYWlsdXJlSW5Vbmtub3duTG9jYXRpb24oVGVzdFBhcnRSZXN1bHQ6OlR5cGUgcmVzdWx0X3R5
cGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6OnN0cmlu
ZyYgbWVzc2FnZSk7CitzdGQ6OnNldDxzdGQ6OnN0cmluZz4qIEdldElnbm9yZWRQYXJhbWV0ZXJp
emVkVGVzdFN1aXRlcygpOwogCiB9ICAvLyBuYW1lc3BhY2UgaW50ZXJuYWwKIApAQCAtMTk1LDcg
KzE4NSwxMiBAQCB2b2lkIFJlcG9ydEZhaWx1cmVJblVua25vd25Mb2NhdGlvbihUZXN0UGFydFJl
c3VsdDo6VHlwZSByZXN1bHRfdHlwZSwKIC8vIElmIHdlIGRvbid0IGZvcndhcmQgZGVjbGFyZSB0
aGVtIHRoZSBjb21waWxlciBtaWdodCBjb25mdXNlIHRoZSBjbGFzc2VzCiAvLyBpbiBmcmllbmRz
aGlwIGNsYXVzZXMgd2l0aCBzYW1lIG5hbWVkIGNsYXNzZXMgb24gdGhlIHNjb3BlLgogY2xhc3Mg
VGVzdDsKLWNsYXNzIFRlc3RDYXNlOworY2xhc3MgVGVzdFN1aXRlOworCisvLyBPbGQgQVBJIGlz
IHN0aWxsIGF2YWlsYWJsZSBidXQgZGVwcmVjYXRlZAorI2lmbmRlZiBHVEVTVF9SRU1PVkVfTEVH
QUNZX1RFU1RfQ0FTRUFQSV8KK3VzaW5nIFRlc3RDYXNlID0gVGVzdFN1aXRlOworI2VuZGlmCiBj
bGFzcyBUZXN0SW5mbzsKIGNsYXNzIFVuaXRUZXN0OwogCkBAIC0yODQsNyArMjc5LDExIEBAIGNs
YXNzIEdURVNUX0FQSV8gQXNzZXJ0aW9uUmVzdWx0IHsKICAgLy8gVXNlZCBpbiBFWFBFQ1RfVFJV
RS9GQUxTRShhc3NlcnRpb25fcmVzdWx0KS4KICAgQXNzZXJ0aW9uUmVzdWx0KGNvbnN0IEFzc2Vy
dGlvblJlc3VsdCYgb3RoZXIpOwogCi0jaWYgZGVmaW5lZChfTVNDX1ZFUikgJiYgX01TQ19WRVIg
PCAxOTEwCisvLyBDNDgwMCBpcyBhIGxldmVsIDMgd2FybmluZyBpbiBWaXN1YWwgU3R1ZGlvIDIw
MTUgYW5kIGVhcmxpZXIuCisvLyBUaGlzIHdhcm5pbmcgaXMgbm90IGVtaXR0ZWQgaW4gVmlzdWFs
IFN0dWRpbyAyMDE3LgorLy8gVGhpcyB3YXJuaW5nIGlzIG9mZiBieSBkZWZhdWx0IHN0YXJ0aW5n
IGluIFZpc3VhbCBTdHVkaW8gMjAxOSBidXQgY2FuIGJlCisvLyBlbmFibGVkIHdpdGggY29tbWFu
ZC1saW5lIG9wdGlvbnMuCisjaWYgZGVmaW5lZChfTVNDX1ZFUikgJiYgKF9NU0NfVkVSIDwgMTkx
MCB8fCBfTVNDX1ZFUiA+PSAxOTIwKQogICBHVEVTVF9ESVNBQkxFX01TQ19XQVJOSU5HU19QVVNI
Xyg0ODAwIC8qIGZvcmNpbmcgdmFsdWUgdG8gYm9vbCAqLykKICNlbmRpZgogCkBAIC0yOTgsMTIg
KzI5NywxMyBAQCBjbGFzcyBHVEVTVF9BUElfIEFzc2VydGlvblJlc3VsdCB7CiAgIHRlbXBsYXRl
IDx0eXBlbmFtZSBUPgogICBleHBsaWNpdCBBc3NlcnRpb25SZXN1bHQoCiAgICAgICBjb25zdCBU
JiBzdWNjZXNzLAotICAgICAgdHlwZW5hbWUgaW50ZXJuYWw6OkVuYWJsZUlmPAotICAgICAgICAg
ICFpbnRlcm5hbDo6SW1wbGljaXRseUNvbnZlcnRpYmxlPFQsIEFzc2VydGlvblJlc3VsdD46OnZh
bHVlPjo6dHlwZSoKLSAgICAgICAgICAvKmVuYWJsZXIqLyA9IE5VTEwpCisgICAgICB0eXBlbmFt
ZSBzdGQ6OmVuYWJsZV9pZjwKKyAgICAgICAgICAhc3RkOjppc19jb252ZXJ0aWJsZTxULCBBc3Nl
cnRpb25SZXN1bHQ+Ojp2YWx1ZT46OnR5cGUqCisgICAgICAvKmVuYWJsZXIqLworICAgICAgPSBu
dWxscHRyKQogICAgICAgOiBzdWNjZXNzXyhzdWNjZXNzKSB7fQogCi0jaWYgZGVmaW5lZChfTVND
X1ZFUikgJiYgX01TQ19WRVIgPCAxOTEwCisjaWYgZGVmaW5lZChfTVNDX1ZFUikgJiYgKF9NU0Nf
VkVSIDwgMTkxMCB8fCBfTVNDX1ZFUiA+PSAxOTIwKQogICBHVEVTVF9ESVNBQkxFX01TQ19XQVJO
SU5HU19QT1BfKCkKICNlbmRpZgogCkBAIC0zMTMsNyArMzEzLDcgQEAgY2xhc3MgR1RFU1RfQVBJ
XyBBc3NlcnRpb25SZXN1bHQgewogICAgIHJldHVybiAqdGhpczsKICAgfQogCi0gIC8vIFJldHVy
bnMgdHJ1ZSBpZmYgdGhlIGFzc2VydGlvbiBzdWNjZWVkZWQuCisgIC8vIFJldHVybnMgdHJ1ZSBp
ZiBhbmQgb25seSBpZiB0aGUgYXNzZXJ0aW9uIHN1Y2NlZWRlZC4KICAgb3BlcmF0b3IgYm9vbCgp
IGNvbnN0IHsgcmV0dXJuIHN1Y2Nlc3NfOyB9ICAvLyBOT0xJTlQKIAogICAvLyBSZXR1cm5zIHRo
ZSBhc3NlcnRpb24ncyBuZWdhdGlvbi4gVXNlZCB3aXRoIEVYUEVDVC9BU1NFUlRfRkFMU0UuCkBA
IC0zMjQsOSArMzI0LDggQEAgY2xhc3MgR1RFU1RfQVBJXyBBc3NlcnRpb25SZXN1bHQgewogICAv
LyBhc3NlcnRpb24ncyBleHBlY3RhdGlvbikuIFdoZW4gbm90aGluZyBoYXMgYmVlbiBzdHJlYW1l
ZCBpbnRvIHRoZQogICAvLyBvYmplY3QsIHJldHVybnMgYW4gZW1wdHkgc3RyaW5nLgogICBjb25z
dCBjaGFyKiBtZXNzYWdlKCkgY29uc3QgewotICAgIHJldHVybiBtZXNzYWdlXy5nZXQoKSAhPSBO
VUxMID8gIG1lc3NhZ2VfLT5jX3N0cigpIDogIiI7CisgICAgcmV0dXJuIG1lc3NhZ2VfLmdldCgp
ICE9IG51bGxwdHIgPyBtZXNzYWdlXy0+Y19zdHIoKSA6ICIiOwogICB9Ci0gIC8vIEZJWE1FOiBS
ZW1vdmUgdGhpcyBhZnRlciBtYWtpbmcgc3VyZSBubyBjbGllbnRzIHVzZSBpdC4KICAgLy8gRGVw
cmVjYXRlZDsgcGxlYXNlIHVzZSBtZXNzYWdlKCkgaW5zdGVhZC4KICAgY29uc3QgY2hhciogZmFp
bHVyZV9tZXNzYWdlKCkgY29uc3QgeyByZXR1cm4gbWVzc2FnZSgpOyB9CiAKQEAgLTM0Nyw4ICsz
NDYsNyBAQCBjbGFzcyBHVEVTVF9BUElfIEFzc2VydGlvblJlc3VsdCB7CiAgcHJpdmF0ZToKICAg
Ly8gQXBwZW5kcyB0aGUgY29udGVudHMgb2YgbWVzc2FnZSB0byBtZXNzYWdlXy4KICAgdm9pZCBB
cHBlbmRNZXNzYWdlKGNvbnN0IE1lc3NhZ2UmIGFfbWVzc2FnZSkgewotICAgIGlmIChtZXNzYWdl
Xy5nZXQoKSA9PSBOVUxMKQotICAgICAgbWVzc2FnZV8ucmVzZXQobmV3IDo6c3RkOjpzdHJpbmcp
OworICAgIGlmIChtZXNzYWdlXy5nZXQoKSA9PSBudWxscHRyKSBtZXNzYWdlXy5yZXNldChuZXcg
OjpzdGQ6OnN0cmluZyk7CiAgICAgbWVzc2FnZV8tPmFwcGVuZChhX21lc3NhZ2UuR2V0U3RyaW5n
KCkuY19zdHIoKSk7CiAgIH0KIApAQCAtMzYxLDcgKzM1OSw3IEBAIGNsYXNzIEdURVNUX0FQSV8g
QXNzZXJ0aW9uUmVzdWx0IHsKICAgLy8gY29uc3RydWN0IGlzIG5vdCBzYXRpc2ZpZWQgd2l0aCB0
aGUgcHJlZGljYXRlJ3Mgb3V0Y29tZS4KICAgLy8gUmVmZXJlbmNlZCB2aWEgYSBwb2ludGVyIHRv
IGF2b2lkIHRha2luZyB0b28gbXVjaCBzdGFjayBmcmFtZSBzcGFjZQogICAvLyB3aXRoIHRlc3Qg
YXNzZXJ0aW9ucy4KLSAgaW50ZXJuYWw6OnNjb3BlZF9wdHI8IDo6c3RkOjpzdHJpbmc+IG1lc3Nh
Z2VfOworICBzdGQ6OnVuaXF1ZV9wdHI8IDo6c3RkOjpzdHJpbmc+IG1lc3NhZ2VfOwogfTsKIAog
Ly8gTWFrZXMgYSBzdWNjZXNzZnVsIGFzc2VydGlvbiByZXN1bHQuCkBAIC0zODUsOCArMzgzLDgg
QEAgbmFtZXNwYWNlIHRlc3RpbmcgewogCiAvLyBUaGUgYWJzdHJhY3QgY2xhc3MgdGhhdCBhbGwg
dGVzdHMgaW5oZXJpdCBmcm9tLgogLy8KLS8vIEluIEdvb2dsZSBUZXN0LCBhIHVuaXQgdGVzdCBw
cm9ncmFtIGNvbnRhaW5zIG9uZSBvciBtYW55IFRlc3RDYXNlcywgYW5kCi0vLyBlYWNoIFRlc3RD
YXNlIGNvbnRhaW5zIG9uZSBvciBtYW55IFRlc3RzLgorLy8gSW4gR29vZ2xlIFRlc3QsIGEgdW5p
dCB0ZXN0IHByb2dyYW0gY29udGFpbnMgb25lIG9yIG1hbnkgVGVzdFN1aXRlcywgYW5kCisvLyBl
YWNoIFRlc3RTdWl0ZSBjb250YWlucyBvbmUgb3IgbWFueSBUZXN0cy4KIC8vCiAvLyBXaGVuIHlv
dSBkZWZpbmUgYSB0ZXN0IHVzaW5nIHRoZSBURVNUIG1hY3JvLCB5b3UgZG9uJ3QgbmVlZCB0bwog
Ly8gZXhwbGljaXRseSBkZXJpdmUgZnJvbSBUZXN0IC0gdGhlIFRFU1QgbWFjcm8gYXV0b21hdGlj
YWxseSBkb2VzCkBAIC00MTAsNDkgKzQwOCw1MyBAQCBjbGFzcyBHVEVTVF9BUElfIFRlc3Qgewog
IHB1YmxpYzoKICAgZnJpZW5kIGNsYXNzIFRlc3RJbmZvOwogCi0gIC8vIERlZmluZXMgdHlwZXMg
Zm9yIHBvaW50ZXJzIHRvIGZ1bmN0aW9ucyB0aGF0IHNldCB1cCBhbmQgdGVhciBkb3duCi0gIC8v
IGEgdGVzdCBjYXNlLgotICB0eXBlZGVmIGludGVybmFsOjpTZXRVcFRlc3RDYXNlRnVuYyBTZXRV
cFRlc3RDYXNlRnVuYzsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VGVhckRvd25UZXN0Q2FzZUZ1bmMg
VGVhckRvd25UZXN0Q2FzZUZ1bmM7Ci0KICAgLy8gVGhlIGQndG9yIGlzIHZpcnR1YWwgYXMgd2Ug
aW50ZW5kIHRvIGluaGVyaXQgZnJvbSBUZXN0LgogICB2aXJ0dWFsIH5UZXN0KCk7CiAKICAgLy8g
U2V0cyB1cCB0aGUgc3R1ZmYgc2hhcmVkIGJ5IGFsbCB0ZXN0cyBpbiB0aGlzIHRlc3QgY2FzZS4K
ICAgLy8KLSAgLy8gR29vZ2xlIFRlc3Qgd2lsbCBjYWxsIEZvbzo6U2V0VXBUZXN0Q2FzZSgpIGJl
Zm9yZSBydW5uaW5nIHRoZSBmaXJzdAorICAvLyBHb29nbGUgVGVzdCB3aWxsIGNhbGwgRm9vOjpT
ZXRVcFRlc3RTdWl0ZSgpIGJlZm9yZSBydW5uaW5nIHRoZSBmaXJzdAogICAvLyB0ZXN0IGluIHRl
c3QgY2FzZSBGb28uICBIZW5jZSBhIHN1Yi1jbGFzcyBjYW4gZGVmaW5lIGl0cyBvd24KLSAgLy8g
U2V0VXBUZXN0Q2FzZSgpIG1ldGhvZCB0byBzaGFkb3cgdGhlIG9uZSBkZWZpbmVkIGluIHRoZSBz
dXBlcgorICAvLyBTZXRVcFRlc3RTdWl0ZSgpIG1ldGhvZCB0byBzaGFkb3cgdGhlIG9uZSBkZWZp
bmVkIGluIHRoZSBzdXBlcgogICAvLyBjbGFzcy4KLSAgc3RhdGljIHZvaWQgU2V0VXBUZXN0Q2Fz
ZSgpIHt9CisgIHN0YXRpYyB2b2lkIFNldFVwVGVzdFN1aXRlKCkge30KIAotICAvLyBUZWFycyBk
b3duIHRoZSBzdHVmZiBzaGFyZWQgYnkgYWxsIHRlc3RzIGluIHRoaXMgdGVzdCBjYXNlLgorICAv
LyBUZWFycyBkb3duIHRoZSBzdHVmZiBzaGFyZWQgYnkgYWxsIHRlc3RzIGluIHRoaXMgdGVzdCBz
dWl0ZS4KICAgLy8KLSAgLy8gR29vZ2xlIFRlc3Qgd2lsbCBjYWxsIEZvbzo6VGVhckRvd25UZXN0
Q2FzZSgpIGFmdGVyIHJ1bm5pbmcgdGhlIGxhc3QKKyAgLy8gR29vZ2xlIFRlc3Qgd2lsbCBjYWxs
IEZvbzo6VGVhckRvd25UZXN0U3VpdGUoKSBhZnRlciBydW5uaW5nIHRoZSBsYXN0CiAgIC8vIHRl
c3QgaW4gdGVzdCBjYXNlIEZvby4gIEhlbmNlIGEgc3ViLWNsYXNzIGNhbiBkZWZpbmUgaXRzIG93
bgotICAvLyBUZWFyRG93blRlc3RDYXNlKCkgbWV0aG9kIHRvIHNoYWRvdyB0aGUgb25lIGRlZmlu
ZWQgaW4gdGhlIHN1cGVyCisgIC8vIFRlYXJEb3duVGVzdFN1aXRlKCkgbWV0aG9kIHRvIHNoYWRv
dyB0aGUgb25lIGRlZmluZWQgaW4gdGhlIHN1cGVyCiAgIC8vIGNsYXNzLgorICBzdGF0aWMgdm9p
ZCBUZWFyRG93blRlc3RTdWl0ZSgpIHt9CisKKyAgLy8gTGVnYWN5IEFQSSBpcyBkZXByZWNhdGVk
IGJ1dCBzdGlsbCBhdmFpbGFibGUKKyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NB
U0VBUElfCiAgIHN0YXRpYyB2b2lkIFRlYXJEb3duVGVzdENhc2UoKSB7fQorICBzdGF0aWMgdm9p
ZCBTZXRVcFRlc3RDYXNlKCkge30KKyNlbmRpZiAgLy8gR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNU
X0NBU0VBUElfCiAKLSAgLy8gUmV0dXJucyB0cnVlIGlmZiB0aGUgY3VycmVudCB0ZXN0IGhhcyBh
IGZhdGFsIGZhaWx1cmUuCisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgY3Vy
cmVudCB0ZXN0IGhhcyBhIGZhdGFsIGZhaWx1cmUuCiAgIHN0YXRpYyBib29sIEhhc0ZhdGFsRmFp
bHVyZSgpOwogCi0gIC8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIGN1cnJlbnQgdGVzdCBoYXMgYSBu
b24tZmF0YWwgZmFpbHVyZS4KKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoZSBj
dXJyZW50IHRlc3QgaGFzIGEgbm9uLWZhdGFsIGZhaWx1cmUuCiAgIHN0YXRpYyBib29sIEhhc05v
bmZhdGFsRmFpbHVyZSgpOwogCi0gIC8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIGN1cnJlbnQgdGVz
dCBoYXMgYSAoZWl0aGVyIGZhdGFsIG9yCisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBp
ZiB0aGUgY3VycmVudCB0ZXN0IHdhcyBza2lwcGVkLgorICBzdGF0aWMgYm9vbCBJc1NraXBwZWQo
KTsKKworICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIGN1cnJlbnQgdGVzdCBo
YXMgYSAoZWl0aGVyIGZhdGFsIG9yCiAgIC8vIG5vbi1mYXRhbCkgZmFpbHVyZS4KICAgc3RhdGlj
IGJvb2wgSGFzRmFpbHVyZSgpIHsgcmV0dXJuIEhhc0ZhdGFsRmFpbHVyZSgpIHx8IEhhc05vbmZh
dGFsRmFpbHVyZSgpOyB9CiAKLSAgLy8gTG9ncyBhIHByb3BlcnR5IGZvciB0aGUgY3VycmVudCB0
ZXN0LCB0ZXN0IGNhc2UsIG9yIGZvciB0aGUgZW50aXJlCisgIC8vIExvZ3MgYSBwcm9wZXJ0eSBm
b3IgdGhlIGN1cnJlbnQgdGVzdCwgdGVzdCBzdWl0ZSwgb3IgZm9yIHRoZSBlbnRpcmUKICAgLy8g
aW52b2NhdGlvbiBvZiB0aGUgdGVzdCBwcm9ncmFtIHdoZW4gdXNlZCBvdXRzaWRlIG9mIHRoZSBj
b250ZXh0IG9mIGEKLSAgLy8gdGVzdCBjYXNlLiAgT25seSB0aGUgbGFzdCB2YWx1ZSBmb3IgYSBn
aXZlbiBrZXkgaXMgcmVtZW1iZXJlZC4gIFRoZXNlCisgIC8vIHRlc3Qgc3VpdGUuICBPbmx5IHRo
ZSBsYXN0IHZhbHVlIGZvciBhIGdpdmVuIGtleSBpcyByZW1lbWJlcmVkLiAgVGhlc2UKICAgLy8g
YXJlIHB1YmxpYyBzdGF0aWMgc28gdGhleSBjYW4gYmUgY2FsbGVkIGZyb20gdXRpbGl0eSBmdW5j
dGlvbnMgdGhhdCBhcmUKICAgLy8gbm90IG1lbWJlcnMgb2YgdGhlIHRlc3QgZml4dHVyZS4gIENh
bGxzIHRvIFJlY29yZFByb3BlcnR5IG1hZGUgZHVyaW5nCiAgIC8vIGxpZmVzcGFuIG9mIHRoZSB0
ZXN0IChmcm9tIHRoZSBtb21lbnQgaXRzIGNvbnN0cnVjdG9yIHN0YXJ0cyB0byB0aGUKICAgLy8g
bW9tZW50IGl0cyBkZXN0cnVjdG9yIGZpbmlzaGVzKSB3aWxsIGJlIG91dHB1dCBpbiBYTUwgYXMg
YXR0cmlidXRlcyBvZgogICAvLyB0aGUgPHRlc3RjYXNlPiBlbGVtZW50LiAgUHJvcGVydGllcyBy
ZWNvcmRlZCBmcm9tIGZpeHR1cmUncwotICAvLyBTZXRVcFRlc3RDYXNlIG9yIFRlYXJEb3duVGVz
dENhc2UgYXJlIGxvZ2dlZCBhcyBhdHRyaWJ1dGVzIG9mIHRoZQorICAvLyBTZXRVcFRlc3RTdWl0
ZSBvciBUZWFyRG93blRlc3RTdWl0ZSBhcmUgbG9nZ2VkIGFzIGF0dHJpYnV0ZXMgb2YgdGhlCiAg
IC8vIGNvcnJlc3BvbmRpbmcgPHRlc3RzdWl0ZT4gZWxlbWVudC4gIENhbGxzIHRvIFJlY29yZFBy
b3BlcnR5IG1hZGUgaW4gdGhlCiAgIC8vIGdsb2JhbCBjb250ZXh0IChiZWZvcmUgb3IgYWZ0ZXIg
aW52b2NhdGlvbiBvZiBSVU5fQUxMX1RFU1RTIGFuZCBmcm9tCiAgIC8vIFNldFVwL1RlYXJEb3du
IG1ldGhvZCBvZiBFbnZpcm9ubWVudCBvYmplY3RzIHJlZ2lzdGVyZWQgd2l0aCBHb29nbGUKQEAg
LTQ3MSw4ICs0NzMsOCBAQCBjbGFzcyBHVEVTVF9BUElfIFRlc3QgewogICB2aXJ0dWFsIHZvaWQg
VGVhckRvd24oKTsKIAogIHByaXZhdGU6Ci0gIC8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIGN1cnJl
bnQgdGVzdCBoYXMgdGhlIHNhbWUgZml4dHVyZSBjbGFzcyBhcwotICAvLyB0aGUgZmlyc3QgdGVz
dCBpbiB0aGUgY3VycmVudCB0ZXN0IGNhc2UuCisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25s
eSBpZiB0aGUgY3VycmVudCB0ZXN0IGhhcyB0aGUgc2FtZSBmaXh0dXJlIGNsYXNzCisgIC8vIGFz
IHRoZSBmaXJzdCB0ZXN0IGluIHRoZSBjdXJyZW50IHRlc3Qgc3VpdGUuCiAgIHN0YXRpYyBib29s
IEhhc1NhbWVGaXh0dXJlQ2xhc3MoKTsKIAogICAvLyBSdW5zIHRoZSB0ZXN0IGFmdGVyIHRoZSB0
ZXN0IGZpeHR1cmUgaGFzIGJlZW4gc2V0IHVwLgpAQCAtNDkwLDcgKzQ5Miw3IEBAIGNsYXNzIEdU
RVNUX0FQSV8gVGVzdCB7CiAgIC8vIGludGVybmFsIG1ldGhvZCB0byBhdm9pZCBjbGFzaGluZyB3
aXRoIG5hbWVzIHVzZWQgaW4gdXNlciBURVNUcy4KICAgdm9pZCBEZWxldGVTZWxmXygpIHsgZGVs
ZXRlIHRoaXM7IH0KIAotICBjb25zdCBpbnRlcm5hbDo6c2NvcGVkX3B0cjwgR1RFU1RfRkxBR19T
QVZFUl8gPiBndGVzdF9mbGFnX3NhdmVyXzsKKyAgY29uc3Qgc3RkOjp1bmlxdWVfcHRyPEdURVNU
X0ZMQUdfU0FWRVJfPiBndGVzdF9mbGFnX3NhdmVyXzsKIAogICAvLyBPZnRlbiBhIHVzZXIgbWlz
c3BlbGxzIFNldFVwKCkgYXMgU2V0dXAoKSBhbmQgc3BlbmRzIGEgbG9uZyB0aW1lCiAgIC8vIHdv
bmRlcmluZyB3aHkgaXQgaXMgbmV2ZXIgY2FsbGVkIGJ5IEdvb2dsZSBUZXN0LiAgVGhlIGRlY2xh
cmF0aW9uIG9mCkBAIC01MDksNyArNTExLDcgQEAgY2xhc3MgR1RFU1RfQVBJXyBUZXN0IHsKICAg
Ly8gSWYgeW91IHNlZSBhbiBlcnJvciBhYm91dCBvdmVycmlkaW5nIHRoZSBmb2xsb3dpbmcgZnVu
Y3Rpb24gb3IKICAgLy8gYWJvdXQgaXQgYmVpbmcgcHJpdmF0ZSwgeW91IGhhdmUgbWlzLXNwZWxs
ZWQgU2V0VXAoKSBhcyBTZXR1cCgpLgogICBzdHJ1Y3QgU2V0dXBfc2hvdWxkX2JlX3NwZWxsZWRf
U2V0VXAge307Ci0gIHZpcnR1YWwgU2V0dXBfc2hvdWxkX2JlX3NwZWxsZWRfU2V0VXAqIFNldHVw
KCkgeyByZXR1cm4gTlVMTDsgfQorICB2aXJ0dWFsIFNldHVwX3Nob3VsZF9iZV9zcGVsbGVkX1Nl
dFVwKiBTZXR1cCgpIHsgcmV0dXJuIG51bGxwdHI7IH0KIAogICAvLyBXZSBkaXNhbGxvdyBjb3B5
aW5nIFRlc3RzLgogICBHVEVTVF9ESVNBTExPV19DT1BZX0FORF9BU1NJR05fKFRlc3QpOwpAQCAt
NTczLDIxICs1NzUsMjggQEAgY2xhc3MgR1RFU1RfQVBJXyBUZXN0UmVzdWx0IHsKICAgLy8gUmV0
dXJucyB0aGUgbnVtYmVyIG9mIHRoZSB0ZXN0IHByb3BlcnRpZXMuCiAgIGludCB0ZXN0X3Byb3Bl
cnR5X2NvdW50KCkgY29uc3Q7CiAKLSAgLy8gUmV0dXJucyB0cnVlIGlmZiB0aGUgdGVzdCBwYXNz
ZWQgKGkuZS4gbm8gdGVzdCBwYXJ0IGZhaWxlZCkuCi0gIGJvb2wgUGFzc2VkKCkgY29uc3QgeyBy
ZXR1cm4gIUZhaWxlZCgpOyB9CisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUg
dGVzdCBwYXNzZWQgKGkuZS4gbm8gdGVzdCBwYXJ0IGZhaWxlZCkuCisgIGJvb2wgUGFzc2VkKCkg
Y29uc3QgeyByZXR1cm4gIVNraXBwZWQoKSAmJiAhRmFpbGVkKCk7IH0KIAotICAvLyBSZXR1cm5z
IHRydWUgaWZmIHRoZSB0ZXN0IGZhaWxlZC4KKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5
IGlmIHRoZSB0ZXN0IHdhcyBza2lwcGVkLgorICBib29sIFNraXBwZWQoKSBjb25zdDsKKworICAv
LyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHRlc3QgZmFpbGVkLgogICBib29sIEZh
aWxlZCgpIGNvbnN0OwogCi0gIC8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIHRlc3QgZmF0YWxseSBm
YWlsZWQuCisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgdGVzdCBmYXRhbGx5
IGZhaWxlZC4KICAgYm9vbCBIYXNGYXRhbEZhaWx1cmUoKSBjb25zdDsKIAotICAvLyBSZXR1cm5z
IHRydWUgaWZmIHRoZSB0ZXN0IGhhcyBhIG5vbi1mYXRhbCBmYWlsdXJlLgorICAvLyBSZXR1cm5z
IHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHRlc3QgaGFzIGEgbm9uLWZhdGFsIGZhaWx1cmUuCiAg
IGJvb2wgSGFzTm9uZmF0YWxGYWlsdXJlKCkgY29uc3Q7CiAKICAgLy8gUmV0dXJucyB0aGUgZWxh
cHNlZCB0aW1lLCBpbiBtaWxsaXNlY29uZHMuCiAgIFRpbWVJbk1pbGxpcyBlbGFwc2VkX3RpbWUo
KSBjb25zdCB7IHJldHVybiBlbGFwc2VkX3RpbWVfOyB9CiAKKyAgLy8gR2V0cyB0aGUgdGltZSBv
ZiB0aGUgdGVzdCBjYXNlIHN0YXJ0LCBpbiBtcyBmcm9tIHRoZSBzdGFydCBvZiB0aGUKKyAgLy8g
VU5JWCBlcG9jaC4KKyAgVGltZUluTWlsbGlzIHN0YXJ0X3RpbWVzdGFtcCgpIGNvbnN0IHsgcmV0
dXJuIHN0YXJ0X3RpbWVzdGFtcF87IH0KKwogICAvLyBSZXR1cm5zIHRoZSBpLXRoIHRlc3QgcGFy
dCByZXN1bHQgYW1vbmcgYWxsIHRoZSByZXN1bHRzLiBpIGNhbiByYW5nZSBmcm9tIDAKICAgLy8g
dG8gdG90YWxfcGFydF9jb3VudCgpIC0gMS4gSWYgaSBpcyBub3QgaW4gdGhhdCByYW5nZSwgYWJv
cnRzIHRoZSBwcm9ncmFtLgogICBjb25zdCBUZXN0UGFydFJlc3VsdCYgR2V0VGVzdFBhcnRSZXN1
bHQoaW50IGkpIGNvbnN0OwpAQCAtNTk5LDcgKzYwOCw3IEBAIGNsYXNzIEdURVNUX0FQSV8gVGVz
dFJlc3VsdCB7CiAKICBwcml2YXRlOgogICBmcmllbmQgY2xhc3MgVGVzdEluZm87Ci0gIGZyaWVu
ZCBjbGFzcyBUZXN0Q2FzZTsKKyAgZnJpZW5kIGNsYXNzIFRlc3RTdWl0ZTsKICAgZnJpZW5kIGNs
YXNzIFVuaXRUZXN0OwogICBmcmllbmQgY2xhc3MgaW50ZXJuYWw6OkRlZmF1bHRHbG9iYWxUZXN0
UGFydFJlc3VsdFJlcG9ydGVyOwogICBmcmllbmQgY2xhc3MgaW50ZXJuYWw6OkV4ZWNEZWF0aFRl
c3Q7CkBAIC02MTgsNiArNjI3LDkgQEAgY2xhc3MgR1RFU1RfQVBJXyBUZXN0UmVzdWx0IHsKICAg
ICByZXR1cm4gdGVzdF9wcm9wZXJ0aWVzXzsKICAgfQogCisgIC8vIFNldHMgdGhlIHN0YXJ0IHRp
bWUuCisgIHZvaWQgc2V0X3N0YXJ0X3RpbWVzdGFtcChUaW1lSW5NaWxsaXMgc3RhcnQpIHsgc3Rh
cnRfdGltZXN0YW1wXyA9IHN0YXJ0OyB9CisKICAgLy8gU2V0cyB0aGUgZWxhcHNlZCB0aW1lLgog
ICB2b2lkIHNldF9lbGFwc2VkX3RpbWUoVGltZUluTWlsbGlzIGVsYXBzZWQpIHsgZWxhcHNlZF90
aW1lXyA9IGVsYXBzZWQ7IH0KIApAQCAtNjMxLDcgKzY0Myw3IEBAIGNsYXNzIEdURVNUX0FQSV8g
VGVzdFJlc3VsdCB7CiAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVGVzdFByb3BlcnR5JiB0
ZXN0X3Byb3BlcnR5KTsKIAogICAvLyBBZGRzIGEgZmFpbHVyZSBpZiB0aGUga2V5IGlzIGEgcmVz
ZXJ2ZWQgYXR0cmlidXRlIG9mIEdvb2dsZSBUZXN0Ci0gIC8vIHRlc3RjYXNlIHRhZ3MuICBSZXR1
cm5zIHRydWUgaWYgdGhlIHByb3BlcnR5IGlzIHZhbGlkLgorICAvLyB0ZXN0c3VpdGUgdGFncy4g
IFJldHVybnMgdHJ1ZSBpZiB0aGUgcHJvcGVydHkgaXMgdmFsaWQuCiAgIC8vIEZJWE1FOiBWYWxp
ZGF0ZSBhdHRyaWJ1dGUgbmFtZXMgYXJlIGxlZ2FsIGFuZCBodW1hbiByZWFkYWJsZS4KICAgc3Rh
dGljIGJvb2wgVmFsaWRhdGVUZXN0UHJvcGVydHkoY29uc3Qgc3RkOjpzdHJpbmcmIHhtbF9lbGVt
ZW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBUZXN0UHJvcGVy
dHkmIHRlc3RfcHJvcGVydHkpOwpAQCAtNjYxLDYgKzY3Myw4IEBAIGNsYXNzIEdURVNUX0FQSV8g
VGVzdFJlc3VsdCB7CiAgIHN0ZDo6dmVjdG9yPFRlc3RQcm9wZXJ0eT4gdGVzdF9wcm9wZXJ0aWVz
XzsKICAgLy8gUnVubmluZyBjb3VudCBvZiBkZWF0aCB0ZXN0cy4KICAgaW50IGRlYXRoX3Rlc3Rf
Y291bnRfOworICAvLyBUaGUgc3RhcnQgdGltZSwgaW4gbWlsbGlzZWNvbmRzIHNpbmNlIFVOSVgg
RXBvY2guCisgIFRpbWVJbk1pbGxpcyBzdGFydF90aW1lc3RhbXBfOwogICAvLyBUaGUgZWxhcHNl
ZCB0aW1lLCBpbiBtaWxsaXNlY29uZHMuCiAgIFRpbWVJbk1pbGxpcyBlbGFwc2VkX3RpbWVfOwog
CkBAIC02NzAsNyArNjg0LDcgQEAgY2xhc3MgR1RFU1RfQVBJXyBUZXN0UmVzdWx0IHsKIAogLy8g
QSBUZXN0SW5mbyBvYmplY3Qgc3RvcmVzIHRoZSBmb2xsb3dpbmcgaW5mb3JtYXRpb24gYWJvdXQg
YSB0ZXN0OgogLy8KLS8vICAgVGVzdCBjYXNlIG5hbWUKKy8vICAgVGVzdCBzdWl0ZSBuYW1lCiAv
LyAgIFRlc3QgbmFtZQogLy8gICBXaGV0aGVyIHRoZSB0ZXN0IHNob3VsZCBiZSBydW4KIC8vICAg
QSBmdW5jdGlvbiBwb2ludGVyIHRoYXQgY3JlYXRlcyB0aGUgdGVzdCBvYmplY3Qgd2hlbiBpbnZv
a2VkCkBAIC02ODUsOCArNjk5LDEzIEBAIGNsYXNzIEdURVNUX0FQSV8gVGVzdEluZm8gewogICAv
LyBkb24ndCBpbmhlcml0IGZyb20gVGVzdEluZm8uCiAgIH5UZXN0SW5mbygpOwogCi0gIC8vIFJl
dHVybnMgdGhlIHRlc3QgY2FzZSBuYW1lLgotICBjb25zdCBjaGFyKiB0ZXN0X2Nhc2VfbmFtZSgp
IGNvbnN0IHsgcmV0dXJuIHRlc3RfY2FzZV9uYW1lXy5jX3N0cigpOyB9CisgIC8vIFJldHVybnMg
dGhlIHRlc3Qgc3VpdGUgbmFtZS4KKyAgY29uc3QgY2hhciogdGVzdF9zdWl0ZV9uYW1lKCkgY29u
c3QgeyByZXR1cm4gdGVzdF9zdWl0ZV9uYW1lXy5jX3N0cigpOyB9CisKKy8vIExlZ2FjeSBBUEkg
aXMgZGVwcmVjYXRlZCBidXQgc3RpbGwgYXZhaWxhYmxlCisjaWZuZGVmIEdURVNUX1JFTU9WRV9M
RUdBQ1lfVEVTVF9DQVNFQVBJXworICBjb25zdCBjaGFyKiB0ZXN0X2Nhc2VfbmFtZSgpIGNvbnN0
IHsgcmV0dXJuIHRlc3Rfc3VpdGVfbmFtZSgpOyB9CisjZW5kaWYgIC8vIEdURVNUX1JFTU9WRV9M
RUdBQ1lfVEVTVF9DQVNFQVBJXwogCiAgIC8vIFJldHVybnMgdGhlIHRlc3QgbmFtZS4KICAgY29u
c3QgY2hhciogbmFtZSgpIGNvbnN0IHsgcmV0dXJuIG5hbWVfLmNfc3RyKCk7IH0KQEAgLTY5NCwx
NyArNzEzLDE1IEBAIGNsYXNzIEdURVNUX0FQSV8gVGVzdEluZm8gewogICAvLyBSZXR1cm5zIHRo
ZSBuYW1lIG9mIHRoZSBwYXJhbWV0ZXIgdHlwZSwgb3IgTlVMTCBpZiB0aGlzIGlzIG5vdCBhIHR5
cGVkCiAgIC8vIG9yIGEgdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3QuCiAgIGNvbnN0IGNoYXIqIHR5
cGVfcGFyYW0oKSBjb25zdCB7Ci0gICAgaWYgKHR5cGVfcGFyYW1fLmdldCgpICE9IE5VTEwpCi0g
ICAgICByZXR1cm4gdHlwZV9wYXJhbV8tPmNfc3RyKCk7Ci0gICAgcmV0dXJuIE5VTEw7CisgICAg
aWYgKHR5cGVfcGFyYW1fLmdldCgpICE9IG51bGxwdHIpIHJldHVybiB0eXBlX3BhcmFtXy0+Y19z
dHIoKTsKKyAgICByZXR1cm4gbnVsbHB0cjsKICAgfQogCiAgIC8vIFJldHVybnMgdGhlIHRleHQg
cmVwcmVzZW50YXRpb24gb2YgdGhlIHZhbHVlIHBhcmFtZXRlciwgb3IgTlVMTCBpZiB0aGlzCiAg
IC8vIGlzIG5vdCBhIHZhbHVlLXBhcmFtZXRlcml6ZWQgdGVzdC4KICAgY29uc3QgY2hhciogdmFs
dWVfcGFyYW0oKSBjb25zdCB7Ci0gICAgaWYgKHZhbHVlX3BhcmFtXy5nZXQoKSAhPSBOVUxMKQot
ICAgICAgcmV0dXJuIHZhbHVlX3BhcmFtXy0+Y19zdHIoKTsKLSAgICByZXR1cm4gTlVMTDsKKyAg
ICBpZiAodmFsdWVfcGFyYW1fLmdldCgpICE9IG51bGxwdHIpIHJldHVybiB2YWx1ZV9wYXJhbV8t
PmNfc3RyKCk7CisgICAgcmV0dXJuIG51bGxwdHI7CiAgIH0KIAogICAvLyBSZXR1cm5zIHRoZSBm
aWxlIG5hbWUgd2hlcmUgdGhpcyB0ZXN0IGlzIGRlZmluZWQuCkBAIC03MjEsNyArNzM4LDcgQEAg
Y2xhc3MgR1RFU1RfQVBJXyBUZXN0SW5mbyB7CiAgIC8vIGJlZW4gc3BlY2lmaWVkKSBhbmQgaXRz
IGZ1bGwgbmFtZSBtYXRjaGVzIHRoZSB1c2VyLXNwZWNpZmllZCBmaWx0ZXIuCiAgIC8vCiAgIC8v
IEdvb2dsZSBUZXN0IGFsbG93cyB0aGUgdXNlciB0byBmaWx0ZXIgdGhlIHRlc3RzIGJ5IHRoZWly
IGZ1bGwgbmFtZXMuCi0gIC8vIFRoZSBmdWxsIG5hbWUgb2YgYSB0ZXN0IEJhciBpbiB0ZXN0IGNh
c2UgRm9vIGlzIGRlZmluZWQgYXMKKyAgLy8gVGhlIGZ1bGwgbmFtZSBvZiBhIHRlc3QgQmFyIGlu
IHRlc3Qgc3VpdGUgRm9vIGlzIGRlZmluZWQgYXMKICAgLy8gIkZvby5CYXIiLiAgT25seSB0aGUg
dGVzdHMgdGhhdCBtYXRjaCB0aGUgZmlsdGVyIHdpbGwgcnVuLgogICAvLwogICAvLyBBIGZpbHRl
ciBpcyBhIGNvbG9uLXNlcGFyYXRlZCBsaXN0IG9mIGdsb2IgKG5vdCByZWdleCkgcGF0dGVybnMs
CkBAIC03MzQsNyArNzUxLDcgQEAgY2xhc3MgR1RFU1RfQVBJXyBUZXN0SW5mbyB7CiAgIC8vIGNv
bnRhaW5zIHRoZSBjaGFyYWN0ZXIgJ0EnIG9yIHN0YXJ0cyB3aXRoICJGb28uIi4KICAgYm9vbCBz
aG91bGRfcnVuKCkgY29uc3QgeyByZXR1cm4gc2hvdWxkX3J1bl87IH0KIAotICAvLyBSZXR1cm5z
IHRydWUgaWZmIHRoaXMgdGVzdCB3aWxsIGFwcGVhciBpbiB0aGUgWE1MIHJlcG9ydC4KKyAgLy8g
UmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoaXMgdGVzdCB3aWxsIGFwcGVhciBpbiB0aGUg
WE1MIHJlcG9ydC4KICAgYm9vbCBpc19yZXBvcnRhYmxlKCkgY29uc3QgewogICAgIC8vIFRoZSBY
TUwgcmVwb3J0IGluY2x1ZGVzIHRlc3RzIG1hdGNoaW5nIHRoZSBmaWx0ZXIsIGV4Y2x1ZGluZyB0
aG9zZQogICAgIC8vIHJ1biBpbiBvdGhlciBzaGFyZHMuCkBAIC03NDksMjQgKzc2NiwxOSBAQCBj
bGFzcyBHVEVTVF9BUElfIFRlc3RJbmZvIHsKICAgZnJpZW5kIGNsYXNzIGludGVybmFsOjpEZWZh
dWx0RGVhdGhUZXN0RmFjdG9yeTsKICNlbmRpZiAgLy8gR1RFU1RfSEFTX0RFQVRIX1RFU1QKICAg
ZnJpZW5kIGNsYXNzIFRlc3Q7Ci0gIGZyaWVuZCBjbGFzcyBUZXN0Q2FzZTsKKyAgZnJpZW5kIGNs
YXNzIFRlc3RTdWl0ZTsKICAgZnJpZW5kIGNsYXNzIGludGVybmFsOjpVbml0VGVzdEltcGw7CiAg
IGZyaWVuZCBjbGFzcyBpbnRlcm5hbDo6U3RyZWFtaW5nTGlzdGVuZXJUZXN0OwogICBmcmllbmQg
VGVzdEluZm8qIGludGVybmFsOjpNYWtlQW5kUmVnaXN0ZXJUZXN0SW5mbygKLSAgICAgIGNvbnN0
IGNoYXIqIHRlc3RfY2FzZV9uYW1lLAotICAgICAgY29uc3QgY2hhciogbmFtZSwKLSAgICAgIGNv
bnN0IGNoYXIqIHR5cGVfcGFyYW0sCi0gICAgICBjb25zdCBjaGFyKiB2YWx1ZV9wYXJhbSwKLSAg
ICAgIGludGVybmFsOjpDb2RlTG9jYXRpb24gY29kZV9sb2NhdGlvbiwKLSAgICAgIGludGVybmFs
OjpUeXBlSWQgZml4dHVyZV9jbGFzc19pZCwKLSAgICAgIFRlc3Q6OlNldFVwVGVzdENhc2VGdW5j
IHNldF91cF90YywKLSAgICAgIFRlc3Q6OlRlYXJEb3duVGVzdENhc2VGdW5jIHRlYXJfZG93bl90
YywKKyAgICAgIGNvbnN0IGNoYXIqIHRlc3Rfc3VpdGVfbmFtZSwgY29uc3QgY2hhciogbmFtZSwg
Y29uc3QgY2hhciogdHlwZV9wYXJhbSwKKyAgICAgIGNvbnN0IGNoYXIqIHZhbHVlX3BhcmFtLCBp
bnRlcm5hbDo6Q29kZUxvY2F0aW9uIGNvZGVfbG9jYXRpb24sCisgICAgICBpbnRlcm5hbDo6VHlw
ZUlkIGZpeHR1cmVfY2xhc3NfaWQsIGludGVybmFsOjpTZXRVcFRlc3RTdWl0ZUZ1bmMgc2V0X3Vw
X3RjLAorICAgICAgaW50ZXJuYWw6OlRlYXJEb3duVGVzdFN1aXRlRnVuYyB0ZWFyX2Rvd25fdGMs
CiAgICAgICBpbnRlcm5hbDo6VGVzdEZhY3RvcnlCYXNlKiBmYWN0b3J5KTsKIAogICAvLyBDb25z
dHJ1Y3RzIGEgVGVzdEluZm8gb2JqZWN0LiBUaGUgbmV3bHkgY29uc3RydWN0ZWQgaW5zdGFuY2Ug
YXNzdW1lcwogICAvLyBvd25lcnNoaXAgb2YgdGhlIGZhY3Rvcnkgb2JqZWN0LgotICBUZXN0SW5m
byhjb25zdCBzdGQ6OnN0cmluZyYgdGVzdF9jYXNlX25hbWUsCi0gICAgICAgICAgIGNvbnN0IHN0
ZDo6c3RyaW5nJiBuYW1lLAorICBUZXN0SW5mbyhjb25zdCBzdGQ6OnN0cmluZyYgdGVzdF9zdWl0
ZV9uYW1lLCBjb25zdCBzdGQ6OnN0cmluZyYgbmFtZSwKICAgICAgICAgICAgY29uc3QgY2hhciog
YV90eXBlX3BhcmFtLCAgIC8vIE5VTEwgaWYgbm90IGEgdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3QK
ICAgICAgICAgICAgY29uc3QgY2hhciogYV92YWx1ZV9wYXJhbSwgIC8vIE5VTEwgaWYgbm90IGEg
dmFsdWUtcGFyYW1ldGVyaXplZCB0ZXN0CiAgICAgICAgICAgIGludGVybmFsOjpDb2RlTG9jYXRp
b24gYV9jb2RlX2xvY2F0aW9uLApAQCAtNzg4LDIxICs4MDAsMjEgQEAgY2xhc3MgR1RFU1RfQVBJ
XyBUZXN0SW5mbyB7CiAgIH0KIAogICAvLyBUaGVzZSBmaWVsZHMgYXJlIGltbXV0YWJsZSBwcm9w
ZXJ0aWVzIG9mIHRoZSB0ZXN0LgotICBjb25zdCBzdGQ6OnN0cmluZyB0ZXN0X2Nhc2VfbmFtZV87
ICAgICAvLyBUZXN0IGNhc2UgbmFtZQorICBjb25zdCBzdGQ6OnN0cmluZyB0ZXN0X3N1aXRlX25h
bWVfOyAgICAvLyB0ZXN0IHN1aXRlIG5hbWUKICAgY29uc3Qgc3RkOjpzdHJpbmcgbmFtZV87ICAg
ICAgICAgICAgICAgLy8gVGVzdCBuYW1lCiAgIC8vIE5hbWUgb2YgdGhlIHBhcmFtZXRlciB0eXBl
LCBvciBOVUxMIGlmIHRoaXMgaXMgbm90IGEgdHlwZWQgb3IgYQogICAvLyB0eXBlLXBhcmFtZXRl
cml6ZWQgdGVzdC4KLSAgY29uc3QgaW50ZXJuYWw6OnNjb3BlZF9wdHI8Y29uc3QgOjpzdGQ6OnN0
cmluZz4gdHlwZV9wYXJhbV87CisgIGNvbnN0IHN0ZDo6dW5pcXVlX3B0cjxjb25zdCA6OnN0ZDo6
c3RyaW5nPiB0eXBlX3BhcmFtXzsKICAgLy8gVGV4dCByZXByZXNlbnRhdGlvbiBvZiB0aGUgdmFs
dWUgcGFyYW1ldGVyLCBvciBOVUxMIGlmIHRoaXMgaXMgbm90IGEKICAgLy8gdmFsdWUtcGFyYW1l
dGVyaXplZCB0ZXN0LgotICBjb25zdCBpbnRlcm5hbDo6c2NvcGVkX3B0cjxjb25zdCA6OnN0ZDo6
c3RyaW5nPiB2YWx1ZV9wYXJhbV87CisgIGNvbnN0IHN0ZDo6dW5pcXVlX3B0cjxjb25zdCA6OnN0
ZDo6c3RyaW5nPiB2YWx1ZV9wYXJhbV87CiAgIGludGVybmFsOjpDb2RlTG9jYXRpb24gbG9jYXRp
b25fOwotICBjb25zdCBpbnRlcm5hbDo6VHlwZUlkIGZpeHR1cmVfY2xhc3NfaWRfOyAgIC8vIElE
IG9mIHRoZSB0ZXN0IGZpeHR1cmUgY2xhc3MKLSAgYm9vbCBzaG91bGRfcnVuXzsgICAgICAgICAg
ICAgICAgIC8vIFRydWUgaWZmIHRoaXMgdGVzdCBzaG91bGQgcnVuCi0gIGJvb2wgaXNfZGlzYWJs
ZWRfOyAgICAgICAgICAgICAgICAvLyBUcnVlIGlmZiB0aGlzIHRlc3QgaXMgZGlzYWJsZWQKLSAg
Ym9vbCBtYXRjaGVzX2ZpbHRlcl87ICAgICAgICAgICAgIC8vIFRydWUgaWYgdGhpcyB0ZXN0IG1h
dGNoZXMgdGhlCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB1c2VyLXNw
ZWNpZmllZCBmaWx0ZXIuCi0gIGJvb2wgaXNfaW5fYW5vdGhlcl9zaGFyZF87ICAgICAgICAvLyBX
aWxsIGJlIHJ1biBpbiBhbm90aGVyIHNoYXJkLgorICBjb25zdCBpbnRlcm5hbDo6VHlwZUlkIGZp
eHR1cmVfY2xhc3NfaWRfOyAgLy8gSUQgb2YgdGhlIHRlc3QgZml4dHVyZSBjbGFzcworICBib29s
IHNob3VsZF9ydW5fOyAgICAgICAgICAgLy8gVHJ1ZSBpZiBhbmQgb25seSBpZiB0aGlzIHRlc3Qg
c2hvdWxkIHJ1bgorICBib29sIGlzX2Rpc2FibGVkXzsgICAgICAgICAgLy8gVHJ1ZSBpZiBhbmQg
b25seSBpZiB0aGlzIHRlc3QgaXMgZGlzYWJsZWQKKyAgYm9vbCBtYXRjaGVzX2ZpbHRlcl87ICAg
ICAgIC8vIFRydWUgaWYgdGhpcyB0ZXN0IG1hdGNoZXMgdGhlCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvLyB1c2VyLXNwZWNpZmllZCBmaWx0ZXIuCisgIGJvb2wgaXNfaW5fYW5vdGhl
cl9zaGFyZF87ICAvLyBXaWxsIGJlIHJ1biBpbiBhbm90aGVyIHNoYXJkLgogICBpbnRlcm5hbDo6
VGVzdEZhY3RvcnlCYXNlKiBjb25zdCBmYWN0b3J5XzsgIC8vIFRoZSBmYWN0b3J5IHRoYXQgY3Jl
YXRlcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRo
ZSB0ZXN0IG9iamVjdAogCkBAIC04MTMsOTAgKzgyNSw5OCBAQCBjbGFzcyBHVEVTVF9BUElfIFRl
c3RJbmZvIHsKICAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhUZXN0SW5mbyk7CiB9
OwogCi0vLyBBIHRlc3QgY2FzZSwgd2hpY2ggY29uc2lzdHMgb2YgYSB2ZWN0b3Igb2YgVGVzdElu
Zm9zLgorLy8gQSB0ZXN0IHN1aXRlLCB3aGljaCBjb25zaXN0cyBvZiBhIHZlY3RvciBvZiBUZXN0
SW5mb3MuCiAvLwotLy8gVGVzdENhc2UgaXMgbm90IGNvcHlhYmxlLgotY2xhc3MgR1RFU1RfQVBJ
XyBUZXN0Q2FzZSB7CisvLyBUZXN0U3VpdGUgaXMgbm90IGNvcHlhYmxlLgorY2xhc3MgR1RFU1Rf
QVBJXyBUZXN0U3VpdGUgewogIHB1YmxpYzoKLSAgLy8gQ3JlYXRlcyBhIFRlc3RDYXNlIHdpdGgg
dGhlIGdpdmVuIG5hbWUuCisgIC8vIENyZWF0ZXMgYSBUZXN0U3VpdGUgd2l0aCB0aGUgZ2l2ZW4g
bmFtZS4KICAgLy8KLSAgLy8gVGVzdENhc2UgZG9lcyBOT1QgaGF2ZSBhIGRlZmF1bHQgY29uc3Ry
dWN0b3IuICBBbHdheXMgdXNlIHRoaXMKLSAgLy8gY29uc3RydWN0b3IgdG8gY3JlYXRlIGEgVGVz
dENhc2Ugb2JqZWN0LgorICAvLyBUZXN0U3VpdGUgZG9lcyBOT1QgaGF2ZSBhIGRlZmF1bHQgY29u
c3RydWN0b3IuICBBbHdheXMgdXNlIHRoaXMKKyAgLy8gY29uc3RydWN0b3IgdG8gY3JlYXRlIGEg
VGVzdFN1aXRlIG9iamVjdC4KICAgLy8KICAgLy8gQXJndW1lbnRzOgogICAvLwotICAvLyAgIG5h
bWU6ICAgICAgICAgbmFtZSBvZiB0aGUgdGVzdCBjYXNlCisgIC8vICAgbmFtZTogICAgICAgICBu
YW1lIG9mIHRoZSB0ZXN0IHN1aXRlCiAgIC8vICAgYV90eXBlX3BhcmFtOiB0aGUgbmFtZSBvZiB0
aGUgdGVzdCdzIHR5cGUgcGFyYW1ldGVyLCBvciBOVUxMIGlmCiAgIC8vICAgICAgICAgICAgICAg
ICB0aGlzIGlzIG5vdCBhIHR5cGUtcGFyYW1ldGVyaXplZCB0ZXN0LgotICAvLyAgIHNldF91cF90
YzogICAgcG9pbnRlciB0byB0aGUgZnVuY3Rpb24gdGhhdCBzZXRzIHVwIHRoZSB0ZXN0IGNhc2UK
LSAgLy8gICB0ZWFyX2Rvd25fdGM6IHBvaW50ZXIgdG8gdGhlIGZ1bmN0aW9uIHRoYXQgdGVhcnMg
ZG93biB0aGUgdGVzdCBjYXNlCi0gIFRlc3RDYXNlKGNvbnN0IGNoYXIqIG5hbWUsIGNvbnN0IGNo
YXIqIGFfdHlwZV9wYXJhbSwKLSAgICAgICAgICAgVGVzdDo6U2V0VXBUZXN0Q2FzZUZ1bmMgc2V0
X3VwX3RjLAotICAgICAgICAgICBUZXN0OjpUZWFyRG93blRlc3RDYXNlRnVuYyB0ZWFyX2Rvd25f
dGMpOworICAvLyAgIHNldF91cF90YzogICAgcG9pbnRlciB0byB0aGUgZnVuY3Rpb24gdGhhdCBz
ZXRzIHVwIHRoZSB0ZXN0IHN1aXRlCisgIC8vICAgdGVhcl9kb3duX3RjOiBwb2ludGVyIHRvIHRo
ZSBmdW5jdGlvbiB0aGF0IHRlYXJzIGRvd24gdGhlIHRlc3Qgc3VpdGUKKyAgVGVzdFN1aXRlKGNv
bnN0IGNoYXIqIG5hbWUsIGNvbnN0IGNoYXIqIGFfdHlwZV9wYXJhbSwKKyAgICAgICAgICAgIGlu
dGVybmFsOjpTZXRVcFRlc3RTdWl0ZUZ1bmMgc2V0X3VwX3RjLAorICAgICAgICAgICAgaW50ZXJu
YWw6OlRlYXJEb3duVGVzdFN1aXRlRnVuYyB0ZWFyX2Rvd25fdGMpOwogCi0gIC8vIERlc3RydWN0
b3Igb2YgVGVzdENhc2UuCi0gIHZpcnR1YWwgflRlc3RDYXNlKCk7CisgIC8vIERlc3RydWN0b3Ig
b2YgVGVzdFN1aXRlLgorICB2aXJ0dWFsIH5UZXN0U3VpdGUoKTsKIAotICAvLyBHZXRzIHRoZSBu
YW1lIG9mIHRoZSBUZXN0Q2FzZS4KKyAgLy8gR2V0cyB0aGUgbmFtZSBvZiB0aGUgVGVzdFN1aXRl
LgogICBjb25zdCBjaGFyKiBuYW1lKCkgY29uc3QgeyByZXR1cm4gbmFtZV8uY19zdHIoKTsgfQog
CiAgIC8vIFJldHVybnMgdGhlIG5hbWUgb2YgdGhlIHBhcmFtZXRlciB0eXBlLCBvciBOVUxMIGlm
IHRoaXMgaXMgbm90IGEKLSAgLy8gdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3QgY2FzZS4KKyAgLy8g
dHlwZS1wYXJhbWV0ZXJpemVkIHRlc3Qgc3VpdGUuCiAgIGNvbnN0IGNoYXIqIHR5cGVfcGFyYW0o
KSBjb25zdCB7Ci0gICAgaWYgKHR5cGVfcGFyYW1fLmdldCgpICE9IE5VTEwpCi0gICAgICByZXR1
cm4gdHlwZV9wYXJhbV8tPmNfc3RyKCk7Ci0gICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKHR5cGVf
cGFyYW1fLmdldCgpICE9IG51bGxwdHIpIHJldHVybiB0eXBlX3BhcmFtXy0+Y19zdHIoKTsKKyAg
ICByZXR1cm4gbnVsbHB0cjsKICAgfQogCi0gIC8vIFJldHVybnMgdHJ1ZSBpZiBhbnkgdGVzdCBp
biB0aGlzIHRlc3QgY2FzZSBzaG91bGQgcnVuLgorICAvLyBSZXR1cm5zIHRydWUgaWYgYW55IHRl
c3QgaW4gdGhpcyB0ZXN0IHN1aXRlIHNob3VsZCBydW4uCiAgIGJvb2wgc2hvdWxkX3J1bigpIGNv
bnN0IHsgcmV0dXJuIHNob3VsZF9ydW5fOyB9CiAKLSAgLy8gR2V0cyB0aGUgbnVtYmVyIG9mIHN1
Y2Nlc3NmdWwgdGVzdHMgaW4gdGhpcyB0ZXN0IGNhc2UuCisgIC8vIEdldHMgdGhlIG51bWJlciBv
ZiBzdWNjZXNzZnVsIHRlc3RzIGluIHRoaXMgdGVzdCBzdWl0ZS4KICAgaW50IHN1Y2Nlc3NmdWxf
dGVzdF9jb3VudCgpIGNvbnN0OwogCi0gIC8vIEdldHMgdGhlIG51bWJlciBvZiBmYWlsZWQgdGVz
dHMgaW4gdGhpcyB0ZXN0IGNhc2UuCisgIC8vIEdldHMgdGhlIG51bWJlciBvZiBza2lwcGVkIHRl
c3RzIGluIHRoaXMgdGVzdCBzdWl0ZS4KKyAgaW50IHNraXBwZWRfdGVzdF9jb3VudCgpIGNvbnN0
OworCisgIC8vIEdldHMgdGhlIG51bWJlciBvZiBmYWlsZWQgdGVzdHMgaW4gdGhpcyB0ZXN0IHN1
aXRlLgogICBpbnQgZmFpbGVkX3Rlc3RfY291bnQoKSBjb25zdDsKIAogICAvLyBHZXRzIHRoZSBu
dW1iZXIgb2YgZGlzYWJsZWQgdGVzdHMgdGhhdCB3aWxsIGJlIHJlcG9ydGVkIGluIHRoZSBYTUwg
cmVwb3J0LgogICBpbnQgcmVwb3J0YWJsZV9kaXNhYmxlZF90ZXN0X2NvdW50KCkgY29uc3Q7CiAK
LSAgLy8gR2V0cyB0aGUgbnVtYmVyIG9mIGRpc2FibGVkIHRlc3RzIGluIHRoaXMgdGVzdCBjYXNl
LgorICAvLyBHZXRzIHRoZSBudW1iZXIgb2YgZGlzYWJsZWQgdGVzdHMgaW4gdGhpcyB0ZXN0IHN1
aXRlLgogICBpbnQgZGlzYWJsZWRfdGVzdF9jb3VudCgpIGNvbnN0OwogCiAgIC8vIEdldHMgdGhl
IG51bWJlciBvZiB0ZXN0cyB0byBiZSBwcmludGVkIGluIHRoZSBYTUwgcmVwb3J0LgogICBpbnQg
cmVwb3J0YWJsZV90ZXN0X2NvdW50KCkgY29uc3Q7CiAKLSAgLy8gR2V0IHRoZSBudW1iZXIgb2Yg
dGVzdHMgaW4gdGhpcyB0ZXN0IGNhc2UgdGhhdCBzaG91bGQgcnVuLgorICAvLyBHZXQgdGhlIG51
bWJlciBvZiB0ZXN0cyBpbiB0aGlzIHRlc3Qgc3VpdGUgdGhhdCBzaG91bGQgcnVuLgogICBpbnQg
dGVzdF90b19ydW5fY291bnQoKSBjb25zdDsKIAotICAvLyBHZXRzIHRoZSBudW1iZXIgb2YgYWxs
IHRlc3RzIGluIHRoaXMgdGVzdCBjYXNlLgorICAvLyBHZXRzIHRoZSBudW1iZXIgb2YgYWxsIHRl
c3RzIGluIHRoaXMgdGVzdCBzdWl0ZS4KICAgaW50IHRvdGFsX3Rlc3RfY291bnQoKSBjb25zdDsK
IAotICAvLyBSZXR1cm5zIHRydWUgaWZmIHRoZSB0ZXN0IGNhc2UgcGFzc2VkLgorICAvLyBSZXR1
cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHRlc3Qgc3VpdGUgcGFzc2VkLgogICBib29sIFBh
c3NlZCgpIGNvbnN0IHsgcmV0dXJuICFGYWlsZWQoKTsgfQogCi0gIC8vIFJldHVybnMgdHJ1ZSBp
ZmYgdGhlIHRlc3QgY2FzZSBmYWlsZWQuCi0gIGJvb2wgRmFpbGVkKCkgY29uc3QgeyByZXR1cm4g
ZmFpbGVkX3Rlc3RfY291bnQoKSA+IDA7IH0KKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5
IGlmIHRoZSB0ZXN0IHN1aXRlIGZhaWxlZC4KKyAgYm9vbCBGYWlsZWQoKSBjb25zdCB7CisgICAg
cmV0dXJuIGZhaWxlZF90ZXN0X2NvdW50KCkgPiAwIHx8IGFkX2hvY190ZXN0X3Jlc3VsdCgpLkZh
aWxlZCgpOworICB9CiAKICAgLy8gUmV0dXJucyB0aGUgZWxhcHNlZCB0aW1lLCBpbiBtaWxsaXNl
Y29uZHMuCiAgIFRpbWVJbk1pbGxpcyBlbGFwc2VkX3RpbWUoKSBjb25zdCB7IHJldHVybiBlbGFw
c2VkX3RpbWVfOyB9CiAKKyAgLy8gR2V0cyB0aGUgdGltZSBvZiB0aGUgdGVzdCBzdWl0ZSBzdGFy
dCwgaW4gbXMgZnJvbSB0aGUgc3RhcnQgb2YgdGhlCisgIC8vIFVOSVggZXBvY2guCisgIFRpbWVJ
bk1pbGxpcyBzdGFydF90aW1lc3RhbXAoKSBjb25zdCB7IHJldHVybiBzdGFydF90aW1lc3RhbXBf
OyB9CisKICAgLy8gUmV0dXJucyB0aGUgaS10aCB0ZXN0IGFtb25nIGFsbCB0aGUgdGVzdHMuIGkg
Y2FuIHJhbmdlIGZyb20gMCB0bwogICAvLyB0b3RhbF90ZXN0X2NvdW50KCkgLSAxLiBJZiBpIGlz
IG5vdCBpbiB0aGF0IHJhbmdlLCByZXR1cm5zIE5VTEwuCiAgIGNvbnN0IFRlc3RJbmZvKiBHZXRU
ZXN0SW5mbyhpbnQgaSkgY29uc3Q7CiAKICAgLy8gUmV0dXJucyB0aGUgVGVzdFJlc3VsdCB0aGF0
IGhvbGRzIHRlc3QgcHJvcGVydGllcyByZWNvcmRlZCBkdXJpbmcKLSAgLy8gZXhlY3V0aW9uIG9m
IFNldFVwVGVzdENhc2UgYW5kIFRlYXJEb3duVGVzdENhc2UuCisgIC8vIGV4ZWN1dGlvbiBvZiBT
ZXRVcFRlc3RTdWl0ZSBhbmQgVGVhckRvd25UZXN0U3VpdGUuCiAgIGNvbnN0IFRlc3RSZXN1bHQm
IGFkX2hvY190ZXN0X3Jlc3VsdCgpIGNvbnN0IHsgcmV0dXJuIGFkX2hvY190ZXN0X3Jlc3VsdF87
IH0KIAogIHByaXZhdGU6CiAgIGZyaWVuZCBjbGFzcyBUZXN0OwogICBmcmllbmQgY2xhc3MgaW50
ZXJuYWw6OlVuaXRUZXN0SW1wbDsKIAotICAvLyBHZXRzIHRoZSAobXV0YWJsZSkgdmVjdG9yIG9m
IFRlc3RJbmZvcyBpbiB0aGlzIFRlc3RDYXNlLgorICAvLyBHZXRzIHRoZSAobXV0YWJsZSkgdmVj
dG9yIG9mIFRlc3RJbmZvcyBpbiB0aGlzIFRlc3RTdWl0ZS4KICAgc3RkOjp2ZWN0b3I8VGVzdElu
Zm8qPiYgdGVzdF9pbmZvX2xpc3QoKSB7IHJldHVybiB0ZXN0X2luZm9fbGlzdF87IH0KIAotICAv
LyBHZXRzIHRoZSAoaW1tdXRhYmxlKSB2ZWN0b3Igb2YgVGVzdEluZm9zIGluIHRoaXMgVGVzdENh
c2UuCisgIC8vIEdldHMgdGhlIChpbW11dGFibGUpIHZlY3RvciBvZiBUZXN0SW5mb3MgaW4gdGhp
cyBUZXN0U3VpdGUuCiAgIGNvbnN0IHN0ZDo6dmVjdG9yPFRlc3RJbmZvKj4mIHRlc3RfaW5mb19s
aXN0KCkgY29uc3QgewogICAgIHJldHVybiB0ZXN0X2luZm9fbGlzdF87CiAgIH0KQEAgLTkwOCw1
MSArOTI4LDY0IEBAIGNsYXNzIEdURVNUX0FQSV8gVGVzdENhc2UgewogICAvLyBTZXRzIHRoZSBz
aG91bGRfcnVuIG1lbWJlci4KICAgdm9pZCBzZXRfc2hvdWxkX3J1bihib29sIHNob3VsZCkgeyBz
aG91bGRfcnVuXyA9IHNob3VsZDsgfQogCi0gIC8vIEFkZHMgYSBUZXN0SW5mbyB0byB0aGlzIHRl
c3QgY2FzZS4gIFdpbGwgZGVsZXRlIHRoZSBUZXN0SW5mbyB1cG9uCi0gIC8vIGRlc3RydWN0aW9u
IG9mIHRoZSBUZXN0Q2FzZSBvYmplY3QuCisgIC8vIEFkZHMgYSBUZXN0SW5mbyB0byB0aGlzIHRl
c3Qgc3VpdGUuICBXaWxsIGRlbGV0ZSB0aGUgVGVzdEluZm8gdXBvbgorICAvLyBkZXN0cnVjdGlv
biBvZiB0aGUgVGVzdFN1aXRlIG9iamVjdC4KICAgdm9pZCBBZGRUZXN0SW5mbyhUZXN0SW5mbyAq
IHRlc3RfaW5mbyk7CiAKLSAgLy8gQ2xlYXJzIHRoZSByZXN1bHRzIG9mIGFsbCB0ZXN0cyBpbiB0
aGlzIHRlc3QgY2FzZS4KKyAgLy8gQ2xlYXJzIHRoZSByZXN1bHRzIG9mIGFsbCB0ZXN0cyBpbiB0
aGlzIHRlc3Qgc3VpdGUuCiAgIHZvaWQgQ2xlYXJSZXN1bHQoKTsKIAotICAvLyBDbGVhcnMgdGhl
IHJlc3VsdHMgb2YgYWxsIHRlc3RzIGluIHRoZSBnaXZlbiB0ZXN0IGNhc2UuCi0gIHN0YXRpYyB2
b2lkIENsZWFyVGVzdENhc2VSZXN1bHQoVGVzdENhc2UqIHRlc3RfY2FzZSkgewotICAgIHRlc3Rf
Y2FzZS0+Q2xlYXJSZXN1bHQoKTsKKyAgLy8gQ2xlYXJzIHRoZSByZXN1bHRzIG9mIGFsbCB0ZXN0
cyBpbiB0aGUgZ2l2ZW4gdGVzdCBzdWl0ZS4KKyAgc3RhdGljIHZvaWQgQ2xlYXJUZXN0U3VpdGVS
ZXN1bHQoVGVzdFN1aXRlKiB0ZXN0X3N1aXRlKSB7CisgICAgdGVzdF9zdWl0ZS0+Q2xlYXJSZXN1
bHQoKTsKICAgfQogCi0gIC8vIFJ1bnMgZXZlcnkgdGVzdCBpbiB0aGlzIFRlc3RDYXNlLgorICAv
LyBSdW5zIGV2ZXJ5IHRlc3QgaW4gdGhpcyBUZXN0U3VpdGUuCiAgIHZvaWQgUnVuKCk7CiAKLSAg
Ly8gUnVucyBTZXRVcFRlc3RDYXNlKCkgZm9yIHRoaXMgVGVzdENhc2UuICBUaGlzIHdyYXBwZXIg
aXMgbmVlZGVkCi0gIC8vIGZvciBjYXRjaGluZyBleGNlcHRpb25zIHRocm93biBmcm9tIFNldFVw
VGVzdENhc2UoKS4KLSAgdm9pZCBSdW5TZXRVcFRlc3RDYXNlKCkgeyAoKnNldF91cF90Y18pKCk7
IH0KKyAgLy8gUnVucyBTZXRVcFRlc3RTdWl0ZSgpIGZvciB0aGlzIFRlc3RTdWl0ZS4gIFRoaXMg
d3JhcHBlciBpcyBuZWVkZWQKKyAgLy8gZm9yIGNhdGNoaW5nIGV4Y2VwdGlvbnMgdGhyb3duIGZy
b20gU2V0VXBUZXN0U3VpdGUoKS4KKyAgdm9pZCBSdW5TZXRVcFRlc3RTdWl0ZSgpIHsKKyAgICBp
ZiAoc2V0X3VwX3RjXyAhPSBudWxscHRyKSB7CisgICAgICAoKnNldF91cF90Y18pKCk7CisgICAg
fQorICB9CiAKLSAgLy8gUnVucyBUZWFyRG93blRlc3RDYXNlKCkgZm9yIHRoaXMgVGVzdENhc2Uu
ICBUaGlzIHdyYXBwZXIgaXMKLSAgLy8gbmVlZGVkIGZvciBjYXRjaGluZyBleGNlcHRpb25zIHRo
cm93biBmcm9tIFRlYXJEb3duVGVzdENhc2UoKS4KLSAgdm9pZCBSdW5UZWFyRG93blRlc3RDYXNl
KCkgeyAoKnRlYXJfZG93bl90Y18pKCk7IH0KKyAgLy8gUnVucyBUZWFyRG93blRlc3RTdWl0ZSgp
IGZvciB0aGlzIFRlc3RTdWl0ZS4gIFRoaXMgd3JhcHBlciBpcworICAvLyBuZWVkZWQgZm9yIGNh
dGNoaW5nIGV4Y2VwdGlvbnMgdGhyb3duIGZyb20gVGVhckRvd25UZXN0U3VpdGUoKS4KKyAgdm9p
ZCBSdW5UZWFyRG93blRlc3RTdWl0ZSgpIHsKKyAgICBpZiAodGVhcl9kb3duX3RjXyAhPSBudWxs
cHRyKSB7CisgICAgICAoKnRlYXJfZG93bl90Y18pKCk7CisgICAgfQorICB9CiAKLSAgLy8gUmV0
dXJucyB0cnVlIGlmZiB0ZXN0IHBhc3NlZC4KKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5
IGlmIHRlc3QgcGFzc2VkLgogICBzdGF0aWMgYm9vbCBUZXN0UGFzc2VkKGNvbnN0IFRlc3RJbmZv
KiB0ZXN0X2luZm8pIHsKICAgICByZXR1cm4gdGVzdF9pbmZvLT5zaG91bGRfcnVuKCkgJiYgdGVz
dF9pbmZvLT5yZXN1bHQoKS0+UGFzc2VkKCk7CiAgIH0KIAotICAvLyBSZXR1cm5zIHRydWUgaWZm
IHRlc3QgZmFpbGVkLgorICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGVzdCBza2lw
cGVkLgorICBzdGF0aWMgYm9vbCBUZXN0U2tpcHBlZChjb25zdCBUZXN0SW5mbyogdGVzdF9pbmZv
KSB7CisgICAgcmV0dXJuIHRlc3RfaW5mby0+c2hvdWxkX3J1bigpICYmIHRlc3RfaW5mby0+cmVz
dWx0KCktPlNraXBwZWQoKTsKKyAgfQorCisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBp
ZiB0ZXN0IGZhaWxlZC4KICAgc3RhdGljIGJvb2wgVGVzdEZhaWxlZChjb25zdCBUZXN0SW5mbyog
dGVzdF9pbmZvKSB7CiAgICAgcmV0dXJuIHRlc3RfaW5mby0+c2hvdWxkX3J1bigpICYmIHRlc3Rf
aW5mby0+cmVzdWx0KCktPkZhaWxlZCgpOwogICB9CiAKLSAgLy8gUmV0dXJucyB0cnVlIGlmZiB0
aGUgdGVzdCBpcyBkaXNhYmxlZCBhbmQgd2lsbCBiZSByZXBvcnRlZCBpbiB0aGUgWE1MCi0gIC8v
IHJlcG9ydC4KKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoZSB0ZXN0IGlzIGRp
c2FibGVkIGFuZCB3aWxsIGJlIHJlcG9ydGVkIGluCisgIC8vIHRoZSBYTUwgcmVwb3J0LgogICBz
dGF0aWMgYm9vbCBUZXN0UmVwb3J0YWJsZURpc2FibGVkKGNvbnN0IFRlc3RJbmZvKiB0ZXN0X2lu
Zm8pIHsKICAgICByZXR1cm4gdGVzdF9pbmZvLT5pc19yZXBvcnRhYmxlKCkgJiYgdGVzdF9pbmZv
LT5pc19kaXNhYmxlZF87CiAgIH0KIAotICAvLyBSZXR1cm5zIHRydWUgaWZmIHRlc3QgaXMgZGlz
YWJsZWQuCisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0ZXN0IGlzIGRpc2FibGVk
LgogICBzdGF0aWMgYm9vbCBUZXN0RGlzYWJsZWQoY29uc3QgVGVzdEluZm8qIHRlc3RfaW5mbykg
ewogICAgIHJldHVybiB0ZXN0X2luZm8tPmlzX2Rpc2FibGVkXzsKICAgfQogCi0gIC8vIFJldHVy
bnMgdHJ1ZSBpZmYgdGhpcyB0ZXN0IHdpbGwgYXBwZWFyIGluIHRoZSBYTUwgcmVwb3J0LgorICAv
LyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhpcyB0ZXN0IHdpbGwgYXBwZWFyIGluIHRo
ZSBYTUwgcmVwb3J0LgogICBzdGF0aWMgYm9vbCBUZXN0UmVwb3J0YWJsZShjb25zdCBUZXN0SW5m
byogdGVzdF9pbmZvKSB7CiAgICAgcmV0dXJuIHRlc3RfaW5mby0+aXNfcmVwb3J0YWJsZSgpOwog
ICB9CkBAIC05NjIsMTcgKzk5NSwxNyBAQCBjbGFzcyBHVEVTVF9BUElfIFRlc3RDYXNlIHsKICAg
ICByZXR1cm4gdGVzdF9pbmZvLT5zaG91bGRfcnVuKCk7CiAgIH0KIAotICAvLyBTaHVmZmxlcyB0
aGUgdGVzdHMgaW4gdGhpcyB0ZXN0IGNhc2UuCisgIC8vIFNodWZmbGVzIHRoZSB0ZXN0cyBpbiB0
aGlzIHRlc3Qgc3VpdGUuCiAgIHZvaWQgU2h1ZmZsZVRlc3RzKGludGVybmFsOjpSYW5kb20qIHJh
bmRvbSk7CiAKICAgLy8gUmVzdG9yZXMgdGhlIHRlc3Qgb3JkZXIgdG8gYmVmb3JlIHRoZSBmaXJz
dCBzaHVmZmxlLgogICB2b2lkIFVuc2h1ZmZsZVRlc3RzKCk7CiAKLSAgLy8gTmFtZSBvZiB0aGUg
dGVzdCBjYXNlLgorICAvLyBOYW1lIG9mIHRoZSB0ZXN0IHN1aXRlLgogICBzdGQ6OnN0cmluZyBu
YW1lXzsKICAgLy8gTmFtZSBvZiB0aGUgcGFyYW1ldGVyIHR5cGUsIG9yIE5VTEwgaWYgdGhpcyBp
cyBub3QgYSB0eXBlZCBvciBhCiAgIC8vIHR5cGUtcGFyYW1ldGVyaXplZCB0ZXN0LgotICBjb25z
dCBpbnRlcm5hbDo6c2NvcGVkX3B0cjxjb25zdCA6OnN0ZDo6c3RyaW5nPiB0eXBlX3BhcmFtXzsK
KyAgY29uc3Qgc3RkOjp1bmlxdWVfcHRyPGNvbnN0IDo6c3RkOjpzdHJpbmc+IHR5cGVfcGFyYW1f
OwogICAvLyBUaGUgdmVjdG9yIG9mIFRlc3RJbmZvcyBpbiB0aGVpciBvcmlnaW5hbCBvcmRlci4g
IEl0IG93bnMgdGhlCiAgIC8vIGVsZW1lbnRzIGluIHRoZSB2ZWN0b3IuCiAgIHN0ZDo6dmVjdG9y
PFRlc3RJbmZvKj4gdGVzdF9pbmZvX2xpc3RfOwpAQCAtOTgwLDIwICsxMDEzLDIyIEBAIGNsYXNz
IEdURVNUX0FQSV8gVGVzdENhc2UgewogICAvLyBzaHVmZmxpbmcgYW5kIHJlc3RvcmluZyB0aGUg
dGVzdCBvcmRlci4gIFRoZSBpLXRoIGVsZW1lbnQgaW4gdGhpcwogICAvLyB2ZWN0b3IgaXMgdGhl
IGluZGV4IG9mIHRoZSBpLXRoIHRlc3QgaW4gdGhlIHNodWZmbGVkIHRlc3QgbGlzdC4KICAgc3Rk
Ojp2ZWN0b3I8aW50PiB0ZXN0X2luZGljZXNfOwotICAvLyBQb2ludGVyIHRvIHRoZSBmdW5jdGlv
biB0aGF0IHNldHMgdXAgdGhlIHRlc3QgY2FzZS4KLSAgVGVzdDo6U2V0VXBUZXN0Q2FzZUZ1bmMg
c2V0X3VwX3RjXzsKLSAgLy8gUG9pbnRlciB0byB0aGUgZnVuY3Rpb24gdGhhdCB0ZWFycyBkb3du
IHRoZSB0ZXN0IGNhc2UuCi0gIFRlc3Q6OlRlYXJEb3duVGVzdENhc2VGdW5jIHRlYXJfZG93bl90
Y187Ci0gIC8vIFRydWUgaWZmIGFueSB0ZXN0IGluIHRoaXMgdGVzdCBjYXNlIHNob3VsZCBydW4u
CisgIC8vIFBvaW50ZXIgdG8gdGhlIGZ1bmN0aW9uIHRoYXQgc2V0cyB1cCB0aGUgdGVzdCBzdWl0
ZS4KKyAgaW50ZXJuYWw6OlNldFVwVGVzdFN1aXRlRnVuYyBzZXRfdXBfdGNfOworICAvLyBQb2lu
dGVyIHRvIHRoZSBmdW5jdGlvbiB0aGF0IHRlYXJzIGRvd24gdGhlIHRlc3Qgc3VpdGUuCisgIGlu
dGVybmFsOjpUZWFyRG93blRlc3RTdWl0ZUZ1bmMgdGVhcl9kb3duX3RjXzsKKyAgLy8gVHJ1ZSBp
ZiBhbmQgb25seSBpZiBhbnkgdGVzdCBpbiB0aGlzIHRlc3Qgc3VpdGUgc2hvdWxkIHJ1bi4KICAg
Ym9vbCBzaG91bGRfcnVuXzsKKyAgLy8gVGhlIHN0YXJ0IHRpbWUsIGluIG1pbGxpc2Vjb25kcyBz
aW5jZSBVTklYIEVwb2NoLgorICBUaW1lSW5NaWxsaXMgc3RhcnRfdGltZXN0YW1wXzsKICAgLy8g
RWxhcHNlZCB0aW1lLCBpbiBtaWxsaXNlY29uZHMuCiAgIFRpbWVJbk1pbGxpcyBlbGFwc2VkX3Rp
bWVfOwotICAvLyBIb2xkcyB0ZXN0IHByb3BlcnRpZXMgcmVjb3JkZWQgZHVyaW5nIGV4ZWN1dGlv
biBvZiBTZXRVcFRlc3RDYXNlIGFuZAotICAvLyBUZWFyRG93blRlc3RDYXNlLgorICAvLyBIb2xk
cyB0ZXN0IHByb3BlcnRpZXMgcmVjb3JkZWQgZHVyaW5nIGV4ZWN1dGlvbiBvZiBTZXRVcFRlc3RT
dWl0ZSBhbmQKKyAgLy8gVGVhckRvd25UZXN0U3VpdGUuCiAgIFRlc3RSZXN1bHQgYWRfaG9jX3Rl
c3RfcmVzdWx0XzsKIAotICAvLyBXZSBkaXNhbGxvdyBjb3B5aW5nIFRlc3RDYXNlcy4KLSAgR1RF
U1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhUZXN0Q2FzZSk7CisgIC8vIFdlIGRpc2FsbG93
IGNvcHlpbmcgVGVzdFN1aXRlcy4KKyAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhU
ZXN0U3VpdGUpOwogfTsKIAogLy8gQW4gRW52aXJvbm1lbnQgb2JqZWN0IGlzIGNhcGFibGUgb2Yg
c2V0dGluZyB1cCBhbmQgdGVhcmluZyBkb3duIGFuCkBAIC0xMDI0LDcgKzEwNTksNyBAQCBjbGFz
cyBFbnZpcm9ubWVudCB7CiAgIC8vIElmIHlvdSBzZWUgYW4gZXJyb3IgYWJvdXQgb3ZlcnJpZGlu
ZyB0aGUgZm9sbG93aW5nIGZ1bmN0aW9uIG9yCiAgIC8vIGFib3V0IGl0IGJlaW5nIHByaXZhdGUs
IHlvdSBoYXZlIG1pcy1zcGVsbGVkIFNldFVwKCkgYXMgU2V0dXAoKS4KICAgc3RydWN0IFNldHVw
X3Nob3VsZF9iZV9zcGVsbGVkX1NldFVwIHt9OwotICB2aXJ0dWFsIFNldHVwX3Nob3VsZF9iZV9z
cGVsbGVkX1NldFVwKiBTZXR1cCgpIHsgcmV0dXJuIE5VTEw7IH0KKyAgdmlydHVhbCBTZXR1cF9z
aG91bGRfYmVfc3BlbGxlZF9TZXRVcCogU2V0dXAoKSB7IHJldHVybiBudWxscHRyOyB9CiB9Owog
CiAjaWYgR1RFU1RfSEFTX0VYQ0VQVElPTlMKQEAgLTEwNjAsOCArMTA5NSwxMyBAQCBjbGFzcyBU
ZXN0RXZlbnRMaXN0ZW5lciB7CiAgIC8vIEZpcmVkIGFmdGVyIGVudmlyb25tZW50IHNldC11cCBm
b3IgZWFjaCBpdGVyYXRpb24gb2YgdGVzdHMgZW5kcy4KICAgdmlydHVhbCB2b2lkIE9uRW52aXJv
bm1lbnRzU2V0VXBFbmQoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCkgPSAwOwogCi0gIC8vIEZp
cmVkIGJlZm9yZSB0aGUgdGVzdCBjYXNlIHN0YXJ0cy4KLSAgdmlydHVhbCB2b2lkIE9uVGVzdENh
c2VTdGFydChjb25zdCBUZXN0Q2FzZSYgdGVzdF9jYXNlKSA9IDA7CisgIC8vIEZpcmVkIGJlZm9y
ZSB0aGUgdGVzdCBzdWl0ZSBzdGFydHMuCisgIHZpcnR1YWwgdm9pZCBPblRlc3RTdWl0ZVN0YXJ0
KGNvbnN0IFRlc3RTdWl0ZSYgLyp0ZXN0X3N1aXRlKi8pIHt9CisKKyAgLy8gIExlZ2FjeSBBUEkg
aXMgZGVwcmVjYXRlZCBidXQgc3RpbGwgYXZhaWxhYmxlCisjaWZuZGVmIEdURVNUX1JFTU9WRV9M
RUdBQ1lfVEVTVF9DQVNFQVBJXworICB2aXJ0dWFsIHZvaWQgT25UZXN0Q2FzZVN0YXJ0KGNvbnN0
IFRlc3RDYXNlJiAvKnRlc3RfY2FzZSovKSB7fQorI2VuZGlmICAvLyAgR1RFU1RfUkVNT1ZFX0xF
R0FDWV9URVNUX0NBU0VBUElfCiAKICAgLy8gRmlyZWQgYmVmb3JlIHRoZSB0ZXN0IHN0YXJ0cy4K
ICAgdmlydHVhbCB2b2lkIE9uVGVzdFN0YXJ0KGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2luZm8pID0g
MDsKQEAgLTEwNzQsOCArMTExNCwxMyBAQCBjbGFzcyBUZXN0RXZlbnRMaXN0ZW5lciB7CiAgIC8v
IEZpcmVkIGFmdGVyIHRoZSB0ZXN0IGVuZHMuCiAgIHZpcnR1YWwgdm9pZCBPblRlc3RFbmQoY29u
c3QgVGVzdEluZm8mIHRlc3RfaW5mbykgPSAwOwogCi0gIC8vIEZpcmVkIGFmdGVyIHRoZSB0ZXN0
IGNhc2UgZW5kcy4KLSAgdmlydHVhbCB2b2lkIE9uVGVzdENhc2VFbmQoY29uc3QgVGVzdENhc2Um
IHRlc3RfY2FzZSkgPSAwOworICAvLyBGaXJlZCBhZnRlciB0aGUgdGVzdCBzdWl0ZSBlbmRzLgor
ICB2aXJ0dWFsIHZvaWQgT25UZXN0U3VpdGVFbmQoY29uc3QgVGVzdFN1aXRlJiAvKnRlc3Rfc3Vp
dGUqLykge30KKworLy8gIExlZ2FjeSBBUEkgaXMgZGVwcmVjYXRlZCBidXQgc3RpbGwgYXZhaWxh
YmxlCisjaWZuZGVmIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXworICB2aXJ0dWFs
IHZvaWQgT25UZXN0Q2FzZUVuZChjb25zdCBUZXN0Q2FzZSYgLyp0ZXN0X2Nhc2UqLykge30KKyNl
bmRpZiAgLy8gIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwogCiAgIC8vIEZpcmVk
IGJlZm9yZSBlbnZpcm9ubWVudCB0ZWFyLWRvd24gZm9yIGVhY2ggaXRlcmF0aW9uIG9mIHRlc3Rz
IHN0YXJ0cy4KICAgdmlydHVhbCB2b2lkIE9uRW52aXJvbm1lbnRzVGVhckRvd25TdGFydChjb25z
dCBVbml0VGVzdCYgdW5pdF90ZXN0KSA9IDA7CkBAIC0xMDk4LDIxICsxMTQzLDMwIEBAIGNsYXNz
IFRlc3RFdmVudExpc3RlbmVyIHsKIC8vIGFib3ZlLgogY2xhc3MgRW1wdHlUZXN0RXZlbnRMaXN0
ZW5lciA6IHB1YmxpYyBUZXN0RXZlbnRMaXN0ZW5lciB7CiAgcHVibGljOgotICB2aXJ0dWFsIHZv
aWQgT25UZXN0UHJvZ3JhbVN0YXJ0KGNvbnN0IFVuaXRUZXN0JiAvKnVuaXRfdGVzdCovKSB7fQot
ICB2aXJ0dWFsIHZvaWQgT25UZXN0SXRlcmF0aW9uU3RhcnQoY29uc3QgVW5pdFRlc3QmIC8qdW5p
dF90ZXN0Ki8sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgLyppdGVy
YXRpb24qLykge30KLSAgdmlydHVhbCB2b2lkIE9uRW52aXJvbm1lbnRzU2V0VXBTdGFydChjb25z
dCBVbml0VGVzdCYgLyp1bml0X3Rlc3QqLykge30KLSAgdmlydHVhbCB2b2lkIE9uRW52aXJvbm1l
bnRzU2V0VXBFbmQoY29uc3QgVW5pdFRlc3QmIC8qdW5pdF90ZXN0Ki8pIHt9Ci0gIHZpcnR1YWwg
dm9pZCBPblRlc3RDYXNlU3RhcnQoY29uc3QgVGVzdENhc2UmIC8qdGVzdF9jYXNlKi8pIHt9Ci0g
IHZpcnR1YWwgdm9pZCBPblRlc3RTdGFydChjb25zdCBUZXN0SW5mbyYgLyp0ZXN0X2luZm8qLykg
e30KLSAgdmlydHVhbCB2b2lkIE9uVGVzdFBhcnRSZXN1bHQoY29uc3QgVGVzdFBhcnRSZXN1bHQm
IC8qdGVzdF9wYXJ0X3Jlc3VsdCovKSB7fQotICB2aXJ0dWFsIHZvaWQgT25UZXN0RW5kKGNvbnN0
IFRlc3RJbmZvJiAvKnRlc3RfaW5mbyovKSB7fQotICB2aXJ0dWFsIHZvaWQgT25UZXN0Q2FzZUVu
ZChjb25zdCBUZXN0Q2FzZSYgLyp0ZXN0X2Nhc2UqLykge30KLSAgdmlydHVhbCB2b2lkIE9uRW52
aXJvbm1lbnRzVGVhckRvd25TdGFydChjb25zdCBVbml0VGVzdCYgLyp1bml0X3Rlc3QqLykge30K
LSAgdmlydHVhbCB2b2lkIE9uRW52aXJvbm1lbnRzVGVhckRvd25FbmQoY29uc3QgVW5pdFRlc3Qm
IC8qdW5pdF90ZXN0Ki8pIHt9Ci0gIHZpcnR1YWwgdm9pZCBPblRlc3RJdGVyYXRpb25FbmQoY29u
c3QgVW5pdFRlc3QmIC8qdW5pdF90ZXN0Ki8sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50IC8qaXRlcmF0aW9uKi8pIHt9Ci0gIHZpcnR1YWwgdm9pZCBPblRlc3RQcm9ncmFt
RW5kKGNvbnN0IFVuaXRUZXN0JiAvKnVuaXRfdGVzdCovKSB7fQorICB2b2lkIE9uVGVzdFByb2dy
YW1TdGFydChjb25zdCBVbml0VGVzdCYgLyp1bml0X3Rlc3QqLykgb3ZlcnJpZGUge30KKyAgdm9p
ZCBPblRlc3RJdGVyYXRpb25TdGFydChjb25zdCBVbml0VGVzdCYgLyp1bml0X3Rlc3QqLywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgLyppdGVyYXRpb24qLykgb3ZlcnJpZGUge30K
KyAgdm9pZCBPbkVudmlyb25tZW50c1NldFVwU3RhcnQoY29uc3QgVW5pdFRlc3QmIC8qdW5pdF90
ZXN0Ki8pIG92ZXJyaWRlIHt9CisgIHZvaWQgT25FbnZpcm9ubWVudHNTZXRVcEVuZChjb25zdCBV
bml0VGVzdCYgLyp1bml0X3Rlc3QqLykgb3ZlcnJpZGUge30KKyAgdm9pZCBPblRlc3RTdWl0ZVN0
YXJ0KGNvbnN0IFRlc3RTdWl0ZSYgLyp0ZXN0X3N1aXRlKi8pIG92ZXJyaWRlIHt9CisvLyAgTGVn
YWN5IEFQSSBpcyBkZXByZWNhdGVkIGJ1dCBzdGlsbCBhdmFpbGFibGUKKyNpZm5kZWYgR1RFU1Rf
UkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUElfCisgIHZvaWQgT25UZXN0Q2FzZVN0YXJ0KGNvbnN0
IFRlc3RDYXNlJiAvKnRlc3RfY2FzZSovKSBvdmVycmlkZSB7fQorI2VuZGlmICAvLyAgR1RFU1Rf
UkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUElfCisKKyAgdm9pZCBPblRlc3RTdGFydChjb25zdCBU
ZXN0SW5mbyYgLyp0ZXN0X2luZm8qLykgb3ZlcnJpZGUge30KKyAgdm9pZCBPblRlc3RQYXJ0UmVz
dWx0KGNvbnN0IFRlc3RQYXJ0UmVzdWx0JiAvKnRlc3RfcGFydF9yZXN1bHQqLykgb3ZlcnJpZGUg
e30KKyAgdm9pZCBPblRlc3RFbmQoY29uc3QgVGVzdEluZm8mIC8qdGVzdF9pbmZvKi8pIG92ZXJy
aWRlIHt9CisgIHZvaWQgT25UZXN0U3VpdGVFbmQoY29uc3QgVGVzdFN1aXRlJiAvKnRlc3Rfc3Vp
dGUqLykgb3ZlcnJpZGUge30KKyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VB
UElfCisgIHZvaWQgT25UZXN0Q2FzZUVuZChjb25zdCBUZXN0Q2FzZSYgLyp0ZXN0X2Nhc2UqLykg
b3ZlcnJpZGUge30KKyNlbmRpZiAgLy8gIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJ
XworCisgIHZvaWQgT25FbnZpcm9ubWVudHNUZWFyRG93blN0YXJ0KGNvbnN0IFVuaXRUZXN0JiAv
KnVuaXRfdGVzdCovKSBvdmVycmlkZSB7fQorICB2b2lkIE9uRW52aXJvbm1lbnRzVGVhckRvd25F
bmQoY29uc3QgVW5pdFRlc3QmIC8qdW5pdF90ZXN0Ki8pIG92ZXJyaWRlIHt9CisgIHZvaWQgT25U
ZXN0SXRlcmF0aW9uRW5kKGNvbnN0IFVuaXRUZXN0JiAvKnVuaXRfdGVzdCovLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICBpbnQgLyppdGVyYXRpb24qLykgb3ZlcnJpZGUge30KKyAgdm9pZCBP
blRlc3RQcm9ncmFtRW5kKGNvbnN0IFVuaXRUZXN0JiAvKnVuaXRfdGVzdCovKSBvdmVycmlkZSB7
fQogfTsKIAogLy8gVGVzdEV2ZW50TGlzdGVuZXJzIGxldHMgdXNlcnMgYWRkIGxpc3RlbmVycyB0
byB0cmFjayBldmVudHMgaW4gR29vZ2xlIFRlc3QuCkBAIC0xMTUyLDcgKzEyMDYsNyBAQCBjbGFz
cyBHVEVTVF9BUElfIFRlc3RFdmVudExpc3RlbmVycyB7CiAgIH0KIAogIHByaXZhdGU6Ci0gIGZy
aWVuZCBjbGFzcyBUZXN0Q2FzZTsKKyAgZnJpZW5kIGNsYXNzIFRlc3RTdWl0ZTsKICAgZnJpZW5k
IGNsYXNzIFRlc3RJbmZvOwogICBmcmllbmQgY2xhc3MgaW50ZXJuYWw6OkRlZmF1bHRHbG9iYWxU
ZXN0UGFydFJlc3VsdFJlcG9ydGVyOwogICBmcmllbmQgY2xhc3MgaW50ZXJuYWw6Ok5vRXhlY0Rl
YXRoVGVzdDsKQEAgLTExOTMsNyArMTI0Nyw3IEBAIGNsYXNzIEdURVNUX0FQSV8gVGVzdEV2ZW50
TGlzdGVuZXJzIHsKICAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhUZXN0RXZlbnRM
aXN0ZW5lcnMpOwogfTsKIAotLy8gQSBVbml0VGVzdCBjb25zaXN0cyBvZiBhIHZlY3RvciBvZiBU
ZXN0Q2FzZXMuCisvLyBBIFVuaXRUZXN0IGNvbnNpc3RzIG9mIGEgdmVjdG9yIG9mIFRlc3RTdWl0
ZXMuCiAvLwogLy8gVGhpcyBpcyBhIHNpbmdsZXRvbiBjbGFzcy4gIFRoZSBvbmx5IGluc3RhbmNl
IG9mIFVuaXRUZXN0IGlzCiAvLyBjcmVhdGVkIHdoZW4gVW5pdFRlc3Q6OkdldEluc3RhbmNlKCkg
aXMgZmlyc3QgY2FsbGVkLiAgVGhpcwpAQCAtMTIyMiwxMCArMTI3NiwxNCBAQCBjbGFzcyBHVEVT
VF9BUElfIFVuaXRUZXN0IHsKICAgLy8gd2FzIGV4ZWN1dGVkLiAgVGhlIFVuaXRUZXN0IG9iamVj
dCBvd25zIHRoZSBzdHJpbmcuCiAgIGNvbnN0IGNoYXIqIG9yaWdpbmFsX3dvcmtpbmdfZGlyKCkg
Y29uc3Q7CiAKLSAgLy8gUmV0dXJucyB0aGUgVGVzdENhc2Ugb2JqZWN0IGZvciB0aGUgdGVzdCB0
aGF0J3MgY3VycmVudGx5IHJ1bm5pbmcsCisgIC8vIFJldHVybnMgdGhlIFRlc3RTdWl0ZSBvYmpl
Y3QgZm9yIHRoZSB0ZXN0IHRoYXQncyBjdXJyZW50bHkgcnVubmluZywKICAgLy8gb3IgTlVMTCBp
ZiBubyB0ZXN0IGlzIHJ1bm5pbmcuCi0gIGNvbnN0IFRlc3RDYXNlKiBjdXJyZW50X3Rlc3RfY2Fz
ZSgpIGNvbnN0Ci0gICAgICBHVEVTVF9MT0NLX0VYQ0xVREVEXyhtdXRleF8pOworICBjb25zdCBU
ZXN0U3VpdGUqIGN1cnJlbnRfdGVzdF9zdWl0ZSgpIGNvbnN0IEdURVNUX0xPQ0tfRVhDTFVERURf
KG11dGV4Xyk7CisKKy8vIExlZ2FjeSBBUEkgaXMgc3RpbGwgYXZhaWxhYmxlIGJ1dCBkZXByZWNh
dGVkCisjaWZuZGVmIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXworICBjb25zdCBU
ZXN0Q2FzZSogY3VycmVudF90ZXN0X2Nhc2UoKSBjb25zdCBHVEVTVF9MT0NLX0VYQ0xVREVEXyht
dXRleF8pOworI2VuZGlmCiAKICAgLy8gUmV0dXJucyB0aGUgVGVzdEluZm8gb2JqZWN0IGZvciB0
aGUgdGVzdCB0aGF0J3MgY3VycmVudGx5IHJ1bm5pbmcsCiAgIC8vIG9yIE5VTEwgaWYgbm8gdGVz
dCBpcyBydW5uaW5nLgpAQCAtMTIzNSwyOSArMTI5Myw0MCBAQCBjbGFzcyBHVEVTVF9BUElfIFVu
aXRUZXN0IHsKICAgLy8gUmV0dXJucyB0aGUgcmFuZG9tIHNlZWQgdXNlZCBhdCB0aGUgc3RhcnQg
b2YgdGhlIGN1cnJlbnQgdGVzdCBydW4uCiAgIGludCByYW5kb21fc2VlZCgpIGNvbnN0OwogCi0g
IC8vIFJldHVybnMgdGhlIFBhcmFtZXRlcml6ZWRUZXN0Q2FzZVJlZ2lzdHJ5IG9iamVjdCB1c2Vk
IHRvIGtlZXAgdHJhY2sgb2YKKyAgLy8gUmV0dXJucyB0aGUgUGFyYW1ldGVyaXplZFRlc3RTdWl0
ZVJlZ2lzdHJ5IG9iamVjdCB1c2VkIHRvIGtlZXAgdHJhY2sgb2YKICAgLy8gdmFsdWUtcGFyYW1l
dGVyaXplZCB0ZXN0cyBhbmQgaW5zdGFudGlhdGUgYW5kIHJlZ2lzdGVyIHRoZW0uCiAgIC8vCiAg
IC8vIElOVEVSTkFMIElNUExFTUVOVEFUSU9OIC0gRE8gTk9UIFVTRSBJTiBBIFVTRVIgUFJPR1JB
TS4KLSAgaW50ZXJuYWw6OlBhcmFtZXRlcml6ZWRUZXN0Q2FzZVJlZ2lzdHJ5JiBwYXJhbWV0ZXJp
emVkX3Rlc3RfcmVnaXN0cnkoKQorICBpbnRlcm5hbDo6UGFyYW1ldGVyaXplZFRlc3RTdWl0ZVJl
Z2lzdHJ5JiBwYXJhbWV0ZXJpemVkX3Rlc3RfcmVnaXN0cnkoKQogICAgICAgR1RFU1RfTE9DS19F
WENMVURFRF8obXV0ZXhfKTsKIAotICAvLyBHZXRzIHRoZSBudW1iZXIgb2Ygc3VjY2Vzc2Z1bCB0
ZXN0IGNhc2VzLgotICBpbnQgc3VjY2Vzc2Z1bF90ZXN0X2Nhc2VfY291bnQoKSBjb25zdDsKKyAg
Ly8gR2V0cyB0aGUgbnVtYmVyIG9mIHN1Y2Nlc3NmdWwgdGVzdCBzdWl0ZXMuCisgIGludCBzdWNj
ZXNzZnVsX3Rlc3Rfc3VpdGVfY291bnQoKSBjb25zdDsKIAotICAvLyBHZXRzIHRoZSBudW1iZXIg
b2YgZmFpbGVkIHRlc3QgY2FzZXMuCi0gIGludCBmYWlsZWRfdGVzdF9jYXNlX2NvdW50KCkgY29u
c3Q7CisgIC8vIEdldHMgdGhlIG51bWJlciBvZiBmYWlsZWQgdGVzdCBzdWl0ZXMuCisgIGludCBm
YWlsZWRfdGVzdF9zdWl0ZV9jb3VudCgpIGNvbnN0OwogCi0gIC8vIEdldHMgdGhlIG51bWJlciBv
ZiBhbGwgdGVzdCBjYXNlcy4KLSAgaW50IHRvdGFsX3Rlc3RfY2FzZV9jb3VudCgpIGNvbnN0Owor
ICAvLyBHZXRzIHRoZSBudW1iZXIgb2YgYWxsIHRlc3Qgc3VpdGVzLgorICBpbnQgdG90YWxfdGVz
dF9zdWl0ZV9jb3VudCgpIGNvbnN0OwogCi0gIC8vIEdldHMgdGhlIG51bWJlciBvZiBhbGwgdGVz
dCBjYXNlcyB0aGF0IGNvbnRhaW4gYXQgbGVhc3Qgb25lIHRlc3QKKyAgLy8gR2V0cyB0aGUgbnVt
YmVyIG9mIGFsbCB0ZXN0IHN1aXRlcyB0aGF0IGNvbnRhaW4gYXQgbGVhc3Qgb25lIHRlc3QKICAg
Ly8gdGhhdCBzaG91bGQgcnVuLgorICBpbnQgdGVzdF9zdWl0ZV90b19ydW5fY291bnQoKSBjb25z
dDsKKworICAvLyAgTGVnYWN5IEFQSSBpcyBkZXByZWNhdGVkIGJ1dCBzdGlsbCBhdmFpbGFibGUK
KyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUElfCisgIGludCBzdWNjZXNz
ZnVsX3Rlc3RfY2FzZV9jb3VudCgpIGNvbnN0OworICBpbnQgZmFpbGVkX3Rlc3RfY2FzZV9jb3Vu
dCgpIGNvbnN0OworICBpbnQgdG90YWxfdGVzdF9jYXNlX2NvdW50KCkgY29uc3Q7CiAgIGludCB0
ZXN0X2Nhc2VfdG9fcnVuX2NvdW50KCkgY29uc3Q7CisjZW5kaWYgIC8vICBHVEVTVF9SRU1PVkVf
TEVHQUNZX1RFU1RfQ0FTRUFQSV8KIAogICAvLyBHZXRzIHRoZSBudW1iZXIgb2Ygc3VjY2Vzc2Z1
bCB0ZXN0cy4KICAgaW50IHN1Y2Nlc3NmdWxfdGVzdF9jb3VudCgpIGNvbnN0OwogCisgIC8vIEdl
dHMgdGhlIG51bWJlciBvZiBza2lwcGVkIHRlc3RzLgorICBpbnQgc2tpcHBlZF90ZXN0X2NvdW50
KCkgY29uc3Q7CisKICAgLy8gR2V0cyB0aGUgbnVtYmVyIG9mIGZhaWxlZCB0ZXN0cy4KICAgaW50
IGZhaWxlZF90ZXN0X2NvdW50KCkgY29uc3Q7CiAKQEAgLTEyODMsMTkgKzEzNTIsMjUgQEAgY2xh
c3MgR1RFU1RfQVBJXyBVbml0VGVzdCB7CiAgIC8vIEdldHMgdGhlIGVsYXBzZWQgdGltZSwgaW4g
bWlsbGlzZWNvbmRzLgogICBUaW1lSW5NaWxsaXMgZWxhcHNlZF90aW1lKCkgY29uc3Q7CiAKLSAg
Ly8gUmV0dXJucyB0cnVlIGlmZiB0aGUgdW5pdCB0ZXN0IHBhc3NlZCAoaS5lLiBhbGwgdGVzdCBj
YXNlcyBwYXNzZWQpLgorICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHVuaXQg
dGVzdCBwYXNzZWQgKGkuZS4gYWxsIHRlc3Qgc3VpdGVzCisgIC8vIHBhc3NlZCkuCiAgIGJvb2wg
UGFzc2VkKCkgY29uc3Q7CiAKLSAgLy8gUmV0dXJucyB0cnVlIGlmZiB0aGUgdW5pdCB0ZXN0IGZh
aWxlZCAoaS5lLiBzb21lIHRlc3QgY2FzZSBmYWlsZWQKLSAgLy8gb3Igc29tZXRoaW5nIG91dHNp
ZGUgb2YgYWxsIHRlc3RzIGZhaWxlZCkuCisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBp
ZiB0aGUgdW5pdCB0ZXN0IGZhaWxlZCAoaS5lLiBzb21lIHRlc3Qgc3VpdGUKKyAgLy8gZmFpbGVk
IG9yIHNvbWV0aGluZyBvdXRzaWRlIG9mIGFsbCB0ZXN0cyBmYWlsZWQpLgogICBib29sIEZhaWxl
ZCgpIGNvbnN0OwogCi0gIC8vIEdldHMgdGhlIGktdGggdGVzdCBjYXNlIGFtb25nIGFsbCB0aGUg
dGVzdCBjYXNlcy4gaSBjYW4gcmFuZ2UgZnJvbSAwIHRvCi0gIC8vIHRvdGFsX3Rlc3RfY2FzZV9j
b3VudCgpIC0gMS4gSWYgaSBpcyBub3QgaW4gdGhhdCByYW5nZSwgcmV0dXJucyBOVUxMLgorICAv
LyBHZXRzIHRoZSBpLXRoIHRlc3Qgc3VpdGUgYW1vbmcgYWxsIHRoZSB0ZXN0IHN1aXRlcy4gaSBj
YW4gcmFuZ2UgZnJvbSAwIHRvCisgIC8vIHRvdGFsX3Rlc3Rfc3VpdGVfY291bnQoKSAtIDEuIElm
IGkgaXMgbm90IGluIHRoYXQgcmFuZ2UsIHJldHVybnMgTlVMTC4KKyAgY29uc3QgVGVzdFN1aXRl
KiBHZXRUZXN0U3VpdGUoaW50IGkpIGNvbnN0OworCisvLyAgTGVnYWN5IEFQSSBpcyBkZXByZWNh
dGVkIGJ1dCBzdGlsbCBhdmFpbGFibGUKKyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNU
X0NBU0VBUElfCiAgIGNvbnN0IFRlc3RDYXNlKiBHZXRUZXN0Q2FzZShpbnQgaSkgY29uc3Q7Cisj
ZW5kaWYgIC8vICBHVEVTVF9SRU1PVkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KIAogICAvLyBSZXR1
cm5zIHRoZSBUZXN0UmVzdWx0IGNvbnRhaW5pbmcgaW5mb3JtYXRpb24gb24gdGVzdCBmYWlsdXJl
cyBhbmQKLSAgLy8gcHJvcGVydGllcyBsb2dnZWQgb3V0c2lkZSBvZiBpbmRpdmlkdWFsIHRlc3Qg
Y2FzZXMuCisgIC8vIHByb3BlcnRpZXMgbG9nZ2VkIG91dHNpZGUgb2YgaW5kaXZpZHVhbCB0ZXN0
IHN1aXRlcy4KICAgY29uc3QgVGVzdFJlc3VsdCYgYWRfaG9jX3Rlc3RfcmVzdWx0KCkgY29uc3Q7
CiAKICAgLy8gUmV0dXJucyB0aGUgbGlzdCBvZiBldmVudCBsaXN0ZW5lcnMgdGhhdCBjYW4gYmUg
dXNlZCB0byB0cmFjayBldmVudHMKQEAgLTEzMjYsMTUgKzE0MDEsMTUgQEAgY2xhc3MgR1RFU1Rf
QVBJXyBVbml0VGVzdCB7CiAgICAgICBHVEVTVF9MT0NLX0VYQ0xVREVEXyhtdXRleF8pOwogCiAg
IC8vIEFkZHMgYSBUZXN0UHJvcGVydHkgdG8gdGhlIGN1cnJlbnQgVGVzdFJlc3VsdCBvYmplY3Qg
d2hlbiBpbnZva2VkIGZyb20KLSAgLy8gaW5zaWRlIGEgdGVzdCwgdG8gY3VycmVudCBUZXN0Q2Fz
ZSdzIGFkX2hvY190ZXN0X3Jlc3VsdF8gd2hlbiBpbnZva2VkCi0gIC8vIGZyb20gU2V0VXBUZXN0
Q2FzZSBvciBUZWFyRG93blRlc3RDYXNlLCBvciB0byB0aGUgZ2xvYmFsIHByb3BlcnR5IHNldAor
ICAvLyBpbnNpZGUgYSB0ZXN0LCB0byBjdXJyZW50IFRlc3RTdWl0ZSdzIGFkX2hvY190ZXN0X3Jl
c3VsdF8gd2hlbiBpbnZva2VkCisgIC8vIGZyb20gU2V0VXBUZXN0U3VpdGUgb3IgVGVhckRvd25U
ZXN0U3VpdGUsIG9yIHRvIHRoZSBnbG9iYWwgcHJvcGVydHkgc2V0CiAgIC8vIHdoZW4gaW52b2tl
ZCBlbHNld2hlcmUuICBJZiB0aGUgcmVzdWx0IGFscmVhZHkgY29udGFpbnMgYSBwcm9wZXJ0eSB3
aXRoCiAgIC8vIHRoZSBzYW1lIGtleSwgdGhlIHZhbHVlIHdpbGwgYmUgdXBkYXRlZC4KICAgdm9p
ZCBSZWNvcmRQcm9wZXJ0eShjb25zdCBzdGQ6OnN0cmluZyYga2V5LCBjb25zdCBzdGQ6OnN0cmlu
ZyYgdmFsdWUpOwogCi0gIC8vIEdldHMgdGhlIGktdGggdGVzdCBjYXNlIGFtb25nIGFsbCB0aGUg
dGVzdCBjYXNlcy4gaSBjYW4gcmFuZ2UgZnJvbSAwIHRvCi0gIC8vIHRvdGFsX3Rlc3RfY2FzZV9j
b3VudCgpIC0gMS4gSWYgaSBpcyBub3QgaW4gdGhhdCByYW5nZSwgcmV0dXJucyBOVUxMLgotICBU
ZXN0Q2FzZSogR2V0TXV0YWJsZVRlc3RDYXNlKGludCBpKTsKKyAgLy8gR2V0cyB0aGUgaS10aCB0
ZXN0IHN1aXRlIGFtb25nIGFsbCB0aGUgdGVzdCBzdWl0ZXMuIGkgY2FuIHJhbmdlIGZyb20gMCB0
bworICAvLyB0b3RhbF90ZXN0X3N1aXRlX2NvdW50KCkgLSAxLiBJZiBpIGlzIG5vdCBpbiB0aGF0
IHJhbmdlLCByZXR1cm5zIE5VTEwuCisgIFRlc3RTdWl0ZSogR2V0TXV0YWJsZVRlc3RTdWl0ZShp
bnQgaSk7CiAKICAgLy8gQWNjZXNzb3JzIGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2JqZWN0Lgog
ICBpbnRlcm5hbDo6VW5pdFRlc3RJbXBsKiBpbXBsKCkgeyByZXR1cm4gaW1wbF87IH0KQEAgLTEz
NDgsNiArMTQyMyw3IEBAIGNsYXNzIEdURVNUX0FQSV8gVW5pdFRlc3QgewogICBmcmllbmQgY2xh
c3MgaW50ZXJuYWw6OlN0cmVhbWluZ0xpc3RlbmVyVGVzdDsKICAgZnJpZW5kIGNsYXNzIGludGVy
bmFsOjpVbml0VGVzdFJlY29yZFByb3BlcnR5VGVzdEhlbHBlcjsKICAgZnJpZW5kIEVudmlyb25t
ZW50KiBBZGRHbG9iYWxUZXN0RW52aXJvbm1lbnQoRW52aXJvbm1lbnQqIGVudik7CisgIGZyaWVu
ZCBzdGQ6OnNldDxzdGQ6OnN0cmluZz4qIGludGVybmFsOjpHZXRJZ25vcmVkUGFyYW1ldGVyaXpl
ZFRlc3RTdWl0ZXMoKTsKICAgZnJpZW5kIGludGVybmFsOjpVbml0VGVzdEltcGwqIGludGVybmFs
OjpHZXRVbml0VGVzdEltcGwoKTsKICAgZnJpZW5kIHZvaWQgaW50ZXJuYWw6OlJlcG9ydEZhaWx1
cmVJblVua25vd25Mb2NhdGlvbigKICAgICAgIFRlc3RQYXJ0UmVzdWx0OjpUeXBlIHJlc3VsdF90
eXBlLApAQCAtMTQxOSw2ICsxNDk1LDEwIEBAIEdURVNUX0FQSV8gdm9pZCBJbml0R29vZ2xlVGVz
dChpbnQqIGFyZ2MsIGNoYXIqKiBhcmd2KTsKIC8vIFVOSUNPREUgbW9kZS4KIEdURVNUX0FQSV8g
dm9pZCBJbml0R29vZ2xlVGVzdChpbnQqIGFyZ2MsIHdjaGFyX3QqKiBhcmd2KTsKIAorLy8gVGhp
cyBvdmVybG9hZGVkIHZlcnNpb24gY2FuIGJlIHVzZWQgb24gQXJkdWluby9lbWJlZGRlZCBwbGF0
Zm9ybXMgd2hlcmUKKy8vIHRoZXJlIGlzIG5vIGFyZ2MvYXJndi4KK0dURVNUX0FQSV8gdm9pZCBJ
bml0R29vZ2xlVGVzdCgpOworCiBuYW1lc3BhY2UgaW50ZXJuYWwgewogCiAvLyBTZXBhcmF0ZSB0
aGUgZXJyb3IgZ2VuZXJhdGluZyBjb2RlIGZyb20gdGhlIGNvZGUgcGF0aCB0byByZWR1Y2UgdGhl
IHN0YWNrCkBAIC0xNDM1LDYgKzE1MTUsMTMgQEAgQXNzZXJ0aW9uUmVzdWx0IENtcEhlbHBlckVR
RmFpbHVyZShjb25zdCBjaGFyKiBsaHNfZXhwcmVzc2lvbiwKICAgICAgICAgICAgICAgICAgICBm
YWxzZSk7CiB9CiAKKy8vIFRoaXMgYmxvY2sgb2YgY29kZSBkZWZpbmVzIG9wZXJhdG9yPT0vIT0K
Ky8vIHRvIGJsb2NrIGxleGljYWwgc2NvcGUgbG9va3VwLgorLy8gSXQgcHJldmVudHMgdXNpbmcg
aW52YWxpZCBvcGVyYXRvcj09LyE9IGRlZmluZWQgYXQgbmFtZXNwYWNlIHNjb3BlLgorc3RydWN0
IGZha2V0eXBlIHt9OworaW5saW5lIGJvb2wgb3BlcmF0b3I9PShmYWtldHlwZSwgZmFrZXR5cGUp
IHsgcmV0dXJuIHRydWU7IH0KK2lubGluZSBib29sIG9wZXJhdG9yIT0oZmFrZXR5cGUsIGZha2V0
eXBlKSB7IHJldHVybiBmYWxzZTsgfQorCiAvLyBUaGUgaGVscGVyIGZ1bmN0aW9uIGZvciB7QVNT
RVJUfEVYUEVDVH1fRVEuCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyPgogQXNz
ZXJ0aW9uUmVzdWx0IENtcEhlbHBlckVRKGNvbnN0IGNoYXIqIGxoc19leHByZXNzaW9uLApAQCAt
MTQ1NiwxOCArMTU0MywxNyBAQCBHVEVTVF9BUElfIEFzc2VydGlvblJlc3VsdCBDbXBIZWxwZXJF
UShjb25zdCBjaGFyKiBsaHNfZXhwcmVzc2lvbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIEJpZ2dlc3RJbnQgbGhzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgQmlnZ2VzdEludCByaHMpOwogCi0vLyBUaGUgaGVscGVyIGNsYXNzIGZvciB7
QVNTRVJUfEVYUEVDVH1fRVEuICBUaGUgdGVtcGxhdGUgYXJndW1lbnQKLS8vIGxoc19pc19udWxs
X2xpdGVyYWwgaXMgdHJ1ZSBpZmYgdGhlIGZpcnN0IGFyZ3VtZW50IHRvIEFTU0VSVF9FUSgpCi0v
LyBpcyBhIG51bGwgcG9pbnRlciBsaXRlcmFsLiAgVGhlIGZvbGxvd2luZyBkZWZhdWx0IGltcGxl
bWVudGF0aW9uIGlzCi0vLyBmb3IgbGhzX2lzX251bGxfbGl0ZXJhbCBiZWluZyBmYWxzZS4KLXRl
bXBsYXRlIDxib29sIGxoc19pc19udWxsX2xpdGVyYWw+CiBjbGFzcyBFcUhlbHBlciB7CiAgcHVi
bGljOgogICAvLyBUaGlzIHRlbXBsYXRpemVkIHZlcnNpb24gaXMgZm9yIHRoZSBnZW5lcmFsIGNh
c2UuCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDI+CisgIHRlbXBsYXRlIDwK
KyAgICAgIHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwKKyAgICAgIC8vIERpc2FibGUgdGhpcyBv
dmVybG9hZCBmb3IgY2FzZXMgd2hlcmUgb25lIGFyZ3VtZW50IGlzIGEgcG9pbnRlcgorICAgICAg
Ly8gYW5kIHRoZSBvdGhlciBpcyB0aGUgbnVsbCBwb2ludGVyIGNvbnN0YW50LgorICAgICAgdHlw
ZW5hbWUgc3RkOjplbmFibGVfaWY8IXN0ZDo6aXNfaW50ZWdyYWw8VDE+Ojp2YWx1ZSB8fAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIXN0ZDo6aXNfcG9pbnRlcjxUMj46OnZhbHVlPjo6
dHlwZSogPSBudWxscHRyPgogICBzdGF0aWMgQXNzZXJ0aW9uUmVzdWx0IENvbXBhcmUoY29uc3Qg
Y2hhciogbGhzX2V4cHJlc3Npb24sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBjaGFyKiByaHNfZXhwcmVzc2lvbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IFQxJiBsaHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBjaGFyKiByaHNfZXhwcmVzc2lvbiwgY29uc3QgVDEmIGxocywKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IFQyJiByaHMpIHsKICAgICByZXR1cm4gQ21wSGVscGVyRVEo
bGhzX2V4cHJlc3Npb24sIHJoc19leHByZXNzaW9uLCBsaHMsIHJocyk7CiAgIH0KQEAgLTE0ODQs
NDkgKzE1NzAsMTUgQEAgY2xhc3MgRXFIZWxwZXIgewogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgQmlnZ2VzdEludCByaHMpIHsKICAgICByZXR1cm4gQ21wSGVscGVyRVEobGhzX2V4
cHJlc3Npb24sIHJoc19leHByZXNzaW9uLCBsaHMsIHJocyk7CiAgIH0KLX07CiAKLS8vIFRoaXMg
c3BlY2lhbGl6YXRpb24gaXMgdXNlZCB3aGVuIHRoZSBmaXJzdCBhcmd1bWVudCB0byBBU1NFUlRf
RVEoKQotLy8gaXMgYSBudWxsIHBvaW50ZXIgbGl0ZXJhbCwgbGlrZSBOVUxMLCBmYWxzZSwgb3Ig
MC4KLXRlbXBsYXRlIDw+Ci1jbGFzcyBFcUhlbHBlcjx0cnVlPiB7Ci0gcHVibGljOgotICAvLyBX
ZSBkZWZpbmUgdHdvIG92ZXJsb2FkZWQgdmVyc2lvbnMgb2YgQ29tcGFyZSgpLiAgVGhlIGZpcnN0
Ci0gIC8vIHZlcnNpb24gd2lsbCBiZSBwaWNrZWQgd2hlbiB0aGUgc2Vjb25kIGFyZ3VtZW50IHRv
IEFTU0VSVF9FUSgpIGlzCi0gIC8vIE5PVCBhIHBvaW50ZXIsIGUuZy4gQVNTRVJUX0VRKDAsIEFu
SW50RnVuY3Rpb24oKSkgb3IKLSAgLy8gRVhQRUNUX0VRKGZhbHNlLCBhX2Jvb2wpLgotICB0ZW1w
bGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyPgotICBzdGF0aWMgQXNzZXJ0aW9uUmVzdWx0
IENvbXBhcmUoCi0gICAgICBjb25zdCBjaGFyKiBsaHNfZXhwcmVzc2lvbiwKLSAgICAgIGNvbnN0
IGNoYXIqIHJoc19leHByZXNzaW9uLAotICAgICAgY29uc3QgVDEmIGxocywKLSAgICAgIGNvbnN0
IFQyJiByaHMsCi0gICAgICAvLyBUaGUgZm9sbG93aW5nIGxpbmUgcHJldmVudHMgdGhpcyBvdmVy
bG9hZCBmcm9tIGJlaW5nIGNvbnNpZGVyZWQgaWYgVDIKLSAgICAgIC8vIGlzIG5vdCBhIHBvaW50
ZXIgdHlwZS4gIFdlIG5lZWQgdGhpcyBiZWNhdXNlIEFTU0VSVF9FUShOVUxMLCBteV9wdHIpCi0g
ICAgICAvLyBleHBhbmRzIHRvIENvbXBhcmUoIiIsICIiLCBOVUxMLCBteV9wdHIpLCB3aGljaCBy
ZXF1aXJlcyBhIGNvbnZlcnNpb24KLSAgICAgIC8vIHRvIG1hdGNoIHRoZSBTZWNyZXQqIGluIHRo
ZSBvdGhlciBvdmVybG9hZCwgd2hpY2ggd291bGQgb3RoZXJ3aXNlIG1ha2UKLSAgICAgIC8vIHRo
aXMgdGVtcGxhdGUgbWF0Y2ggYmV0dGVyLgotICAgICAgdHlwZW5hbWUgRW5hYmxlSWY8IWlzX3Bv
aW50ZXI8VDI+Ojp2YWx1ZT46OnR5cGUqID0gMCkgewotICAgIHJldHVybiBDbXBIZWxwZXJFUShs
aHNfZXhwcmVzc2lvbiwgcmhzX2V4cHJlc3Npb24sIGxocywgcmhzKTsKLSAgfQotCi0gIC8vIFRo
aXMgdmVyc2lvbiB3aWxsIGJlIHBpY2tlZCB3aGVuIHRoZSBzZWNvbmQgYXJndW1lbnQgdG8gQVNT
RVJUX0VRKCkgaXMgYQotICAvLyBwb2ludGVyLCBlLmcuIEFTU0VSVF9FUShOVUxMLCBhX3BvaW50
ZXIpLgogICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KICAgc3RhdGljIEFzc2VydGlvblJlc3VsdCBD
b21wYXJlKAotICAgICAgY29uc3QgY2hhciogbGhzX2V4cHJlc3Npb24sCi0gICAgICBjb25zdCBj
aGFyKiByaHNfZXhwcmVzc2lvbiwKLSAgICAgIC8vIFdlIHVzZWQgdG8gaGF2ZSBhIHNlY29uZCB0
ZW1wbGF0ZSBwYXJhbWV0ZXIgaW5zdGVhZCBvZiBTZWNyZXQqLiAgVGhhdAotICAgICAgLy8gdGVt
cGxhdGUgcGFyYW1ldGVyIHdvdWxkIGRlZHVjZSB0byAnbG9uZycsIG1ha2luZyB0aGlzIGEgYmV0
dGVyIG1hdGNoCi0gICAgICAvLyB0aGFuIHRoZSBmaXJzdCBvdmVybG9hZCBldmVuIHdpdGhvdXQg
dGhlIGZpcnN0IG92ZXJsb2FkJ3MgRW5hYmxlSWYuCi0gICAgICAvLyBVbmZvcnR1bmF0ZWx5LCBn
Y2Mgd2l0aCAtV2NvbnZlcnNpb24tbnVsbCB3YXJucyB3aGVuICJwYXNzaW5nIE5VTEwgdG8KLSAg
ICAgIC8vIG5vbi1wb2ludGVyIGFyZ3VtZW50IiAoZXZlbiBhIGRlZHVjZWQgaW50ZWdyYWwgYXJn
dW1lbnQpLCBzbyB0aGUgb2xkCi0gICAgICAvLyBpbXBsZW1lbnRhdGlvbiBjYXVzZWQgd2Fybmlu
Z3MgaW4gdXNlciBjb2RlLgotICAgICAgU2VjcmV0KiAvKiBsaHMgKE5VTEwpICovLAotICAgICAg
VCogcmhzKSB7CisgICAgICBjb25zdCBjaGFyKiBsaHNfZXhwcmVzc2lvbiwgY29uc3QgY2hhciog
cmhzX2V4cHJlc3Npb24sCisgICAgICAvLyBIYW5kbGUgY2FzZXMgd2hlcmUgJzAnIGlzIHVzZWQg
YXMgYSBudWxsIHBvaW50ZXIgbGl0ZXJhbC4KKyAgICAgIHN0ZDo6bnVsbHB0cl90IC8qIGxocyAq
LywgVCogcmhzKSB7CiAgICAgLy8gV2UgYWxyZWFkeSBrbm93IHRoYXQgJ2xocycgaXMgYSBudWxs
IHBvaW50ZXIuCi0gICAgcmV0dXJuIENtcEhlbHBlckVRKGxoc19leHByZXNzaW9uLCByaHNfZXhw
cmVzc2lvbiwKLSAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8VCo+KE5VTEwpLCBy
aHMpOworICAgIHJldHVybiBDbXBIZWxwZXJFUShsaHNfZXhwcmVzc2lvbiwgcmhzX2V4cHJlc3Np
b24sIHN0YXRpY19jYXN0PFQqPihudWxscHRyKSwKKyAgICAgICAgICAgICAgICAgICAgICAgcmhz
KTsKICAgfQogfTsKIApAQCAtMTc1NSw2ICsxODA3LDEyIEBAIGNsYXNzIEdURVNUX0FQSV8gQXNz
ZXJ0SGVscGVyIHsKICAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhBc3NlcnRIZWxw
ZXIpOwogfTsKIAorZW51bSBHVGVzdENvbG9yIHsgQ09MT1JfREVGQVVMVCwgQ09MT1JfUkVELCBD
T0xPUl9HUkVFTiwgQ09MT1JfWUVMTE9XIH07CisKK0dURVNUX0FQSV8gR1RFU1RfQVRUUklCVVRF
X1BSSU5URl8oMiwgMykgdm9pZCBDb2xvcmVkUHJpbnRmKEdUZXN0Q29sb3IgY29sb3IsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBjaGFyKiBmbXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAuLi4pOworCiB9ICAvLyBuYW1lc3BhY2UgaW50ZXJuYWwKIAog
Ly8gVGhlIHB1cmUgaW50ZXJmYWNlIGNsYXNzIHRoYXQgYWxsIHZhbHVlLXBhcmFtZXRlcml6ZWQg
dGVzdHMgaW5oZXJpdCBmcm9tLgpAQCAtMTc3NCwxMyArMTgzMiwxMyBAQCBjbGFzcyBHVEVTVF9B
UElfIEFzc2VydEhlbHBlciB7CiAvLyAgIEZvb1Rlc3QoKSB7CiAvLyAgICAgLy8gQ2FuIHVzZSBH
ZXRQYXJhbSgpIGhlcmUuCiAvLyAgIH0KLS8vICAgdmlydHVhbCB+Rm9vVGVzdCgpIHsKKy8vICAg
fkZvb1Rlc3QoKSBvdmVycmlkZSB7CiAvLyAgICAgLy8gQ2FuIHVzZSBHZXRQYXJhbSgpIGhlcmUu
CiAvLyAgIH0KLS8vICAgdmlydHVhbCB2b2lkIFNldFVwKCkgeworLy8gICB2b2lkIFNldFVwKCkg
b3ZlcnJpZGUgewogLy8gICAgIC8vIENhbiB1c2UgR2V0UGFyYW0oKSBoZXJlLgogLy8gICB9Ci0v
LyAgIHZpcnR1YWwgdm9pZCBUZWFyRG93biB7CisvLyAgIHZvaWQgVGVhckRvd24gb3ZlcnJpZGUg
ewogLy8gICAgIC8vIENhbiB1c2UgR2V0UGFyYW0oKSBoZXJlLgogLy8gICB9CiAvLyB9OwpAQCAt
MTc4OSw3ICsxODQ3LDcgQEAgY2xhc3MgR1RFU1RfQVBJXyBBc3NlcnRIZWxwZXIgewogLy8gICBG
b28gZm9vOwogLy8gICBBU1NFUlRfVFJVRShmb28uRG9lc0JhcihHZXRQYXJhbSgpKSk7CiAvLyB9
Ci0vLyBJTlNUQU5USUFURV9URVNUX0NBU0VfUChPbmVUb1RlblJhbmdlLCBGb29UZXN0LCA6OnRl
c3Rpbmc6OlJhbmdlKDEsIDEwKSk7CisvLyBJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoT25lVG9U
ZW5SYW5nZSwgRm9vVGVzdCwgOjp0ZXN0aW5nOjpSYW5nZSgxLCAxMCkpOwogCiB0ZW1wbGF0ZSA8
dHlwZW5hbWUgVD4KIGNsYXNzIFdpdGhQYXJhbUludGVyZmFjZSB7CkBAIC0xODAwLDcgKzE4NTgs
NyBAQCBjbGFzcyBXaXRoUGFyYW1JbnRlcmZhY2UgewogICAvLyBUaGUgY3VycmVudCBwYXJhbWV0
ZXIgdmFsdWUuIElzIGFsc28gYXZhaWxhYmxlIGluIHRoZSB0ZXN0IGZpeHR1cmUncwogICAvLyBj
b25zdHJ1Y3Rvci4KICAgc3RhdGljIGNvbnN0IFBhcmFtVHlwZSYgR2V0UGFyYW0oKSB7Ci0gICAg
R1RFU1RfQ0hFQ0tfKHBhcmFtZXRlcl8gIT0gTlVMTCkKKyAgICBHVEVTVF9DSEVDS18ocGFyYW1l
dGVyXyAhPSBudWxscHRyKQogICAgICAgICA8PCAiR2V0UGFyYW0oKSBjYW4gb25seSBiZSBjYWxs
ZWQgaW5zaWRlIGEgdmFsdWUtcGFyYW1ldGVyaXplZCB0ZXN0ICIKICAgICAgICAgPDwgIi0tIGRp
ZCB5b3UgaW50ZW5kIHRvIHdyaXRlIFRFU1RfUCBpbnN0ZWFkIG9mIFRFU1RfRj8iOwogICAgIHJl
dHVybiAqcGFyYW1ldGVyXzsKQEAgLTE4MjEsNyArMTg3OSw3IEBAIGNsYXNzIFdpdGhQYXJhbUlu
dGVyZmFjZSB7CiB9OwogCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLWNvbnN0IFQqIFdpdGhQYXJh
bUludGVyZmFjZTxUPjo6cGFyYW1ldGVyXyA9IE5VTEw7Citjb25zdCBUKiBXaXRoUGFyYW1JbnRl
cmZhY2U8VD46OnBhcmFtZXRlcl8gPSBudWxscHRyOwogCiAvLyBNb3N0IHZhbHVlLXBhcmFtZXRl
cml6ZWQgY2xhc3NlcyBjYW4gaWdub3JlIHRoZSBleGlzdGVuY2Ugb2YKIC8vIFdpdGhQYXJhbUlu
dGVyZmFjZSwgYW5kIGNhbiBqdXN0IGluaGVyaXQgZnJvbSA6OnRlc3Rpbmc6OlRlc3RXaXRoUGFy
YW0uCkBAIC0xODMyLDYgKzE4OTAsMTEgQEAgY2xhc3MgVGVzdFdpdGhQYXJhbSA6IHB1YmxpYyBU
ZXN0LCBwdWJsaWMgV2l0aFBhcmFtSW50ZXJmYWNlPFQ+IHsKIAogLy8gTWFjcm9zIGZvciBpbmRp
Y2F0aW5nIHN1Y2Nlc3MvZmFpbHVyZSBpbiB0ZXN0IGNvZGUuCiAKKy8vIFNraXBzIHRlc3QgaW4g
cnVudGltZS4KKy8vIFNraXBwaW5nIHRlc3QgYWJvcnRzIGN1cnJlbnQgZnVuY3Rpb24uCisvLyBT
a2lwcGVkIHRlc3RzIGFyZSBuZWl0aGVyIHN1Y2Nlc3NmdWwgbm9yIGZhaWxlZC4KKyNkZWZpbmUg
R1RFU1RfU0tJUCgpIEdURVNUX1NLSVBfKCIiKQorCiAvLyBBRERfRkFJTFVSRSB1bmNvbmRpdGlv
bmFsbHkgYWRkcyBhIGZhaWx1cmUgdG8gdGhlIGN1cnJlbnQgdGVzdC4KIC8vIFNVQ0NFRUQgZ2Vu
ZXJhdGVzIGEgc3VjY2VzcyAtIGl0IGRvZXNuJ3QgYXV0b21hdGljYWxseSBtYWtlIHRoZQogLy8g
Y3VycmVudCB0ZXN0IHN1Y2Nlc3NmdWwsIGFzIGEgdGVzdCBpcyBvbmx5IHN1Y2Nlc3NmdWwgd2hl
biBpdCBoYXMKQEAgLTE4NjEsNiArMTkyNCwxMSBAQCBjbGFzcyBUZXN0V2l0aFBhcmFtIDogcHVi
bGljIFRlc3QsIHB1YmxpYyBXaXRoUGFyYW1JbnRlcmZhY2U8VD4gewogLy8gR2VuZXJhdGVzIGEg
ZmF0YWwgZmFpbHVyZSB3aXRoIGEgZ2VuZXJpYyBtZXNzYWdlLgogI2RlZmluZSBHVEVTVF9GQUlM
KCkgR1RFU1RfRkFUQUxfRkFJTFVSRV8oIkZhaWxlZCIpCiAKKy8vIExpa2UgR1RFU1RfRkFJTCgp
LCBidXQgYXQgdGhlIGdpdmVuIHNvdXJjZSBmaWxlIGxvY2F0aW9uLgorI2RlZmluZSBHVEVTVF9G
QUlMX0FUKGZpbGUsIGxpbmUpICAgICAgICAgXAorICBHVEVTVF9NRVNTQUdFX0FUXyhmaWxlLCBs
aW5lLCAiRmFpbGVkIiwgXAorICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlRlc3RQYXJ0
UmVzdWx0OjprRmF0YWxGYWlsdXJlKQorCiAvLyBEZWZpbmUgdGhpcyBtYWNybyB0byAxIHRvIG9t
aXQgdGhlIGRlZmluaXRpb24gb2YgRkFJTCgpLCB3aGljaCBpcyBhCiAvLyBnZW5lcmljIG5hbWUg
YW5kIGNsYXNoZXMgd2l0aCBzb21lIG90aGVyIGxpYnJhcmllcy4KICNpZiAhR1RFU1RfRE9OVF9E
RUZJTkVfRkFJTApAQCAtMTk2MSw5ICsyMDI5LDcgQEAgY2xhc3MgVGVzdFdpdGhQYXJhbSA6IHB1
YmxpYyBUZXN0LCBwdWJsaWMgV2l0aFBhcmFtSW50ZXJmYWNlPFQ+IHsKIC8vICAgQVNTRVJUX0dU
KHJlY29yZHMuc2l6ZSgpLCAwKSA8PCAiVGhlcmUgaXMgbm8gcmVjb3JkIGxlZnQuIjsKIAogI2Rl
ZmluZSBFWFBFQ1RfRVEodmFsMSwgdmFsMikgXAotICBFWFBFQ1RfUFJFRF9GT1JNQVQyKDo6dGVz
dGluZzo6aW50ZXJuYWw6OiBcCi0gICAgICAgICAgICAgICAgICAgICAgRXFIZWxwZXI8R1RFU1Rf
SVNfTlVMTF9MSVRFUkFMXyh2YWwxKT46OkNvbXBhcmUsIFwKLSAgICAgICAgICAgICAgICAgICAg
ICB2YWwxLCB2YWwyKQorICBFWFBFQ1RfUFJFRF9GT1JNQVQyKDo6dGVzdGluZzo6aW50ZXJuYWw6
OkVxSGVscGVyOjpDb21wYXJlLCB2YWwxLCB2YWwyKQogI2RlZmluZSBFWFBFQ1RfTkUodmFsMSwg
dmFsMikgXAogICBFWFBFQ1RfUFJFRF9GT1JNQVQyKDo6dGVzdGluZzo6aW50ZXJuYWw6OkNtcEhl
bHBlck5FLCB2YWwxLCB2YWwyKQogI2RlZmluZSBFWFBFQ1RfTEUodmFsMSwgdmFsMikgXApAQCAt
MTk3Niw5ICsyMDQyLDcgQEAgY2xhc3MgVGVzdFdpdGhQYXJhbSA6IHB1YmxpYyBUZXN0LCBwdWJs
aWMgV2l0aFBhcmFtSW50ZXJmYWNlPFQ+IHsKICAgRVhQRUNUX1BSRURfRk9STUFUMig6OnRlc3Rp
bmc6OmludGVybmFsOjpDbXBIZWxwZXJHVCwgdmFsMSwgdmFsMikKIAogI2RlZmluZSBHVEVTVF9B
U1NFUlRfRVEodmFsMSwgdmFsMikgXAotICBBU1NFUlRfUFJFRF9GT1JNQVQyKDo6dGVzdGluZzo6
aW50ZXJuYWw6OiBcCi0gICAgICAgICAgICAgICAgICAgICAgRXFIZWxwZXI8R1RFU1RfSVNfTlVM
TF9MSVRFUkFMXyh2YWwxKT46OkNvbXBhcmUsIFwKLSAgICAgICAgICAgICAgICAgICAgICB2YWwx
LCB2YWwyKQorICBBU1NFUlRfUFJFRF9GT1JNQVQyKDo6dGVzdGluZzo6aW50ZXJuYWw6OkVxSGVs
cGVyOjpDb21wYXJlLCB2YWwxLCB2YWwyKQogI2RlZmluZSBHVEVTVF9BU1NFUlRfTkUodmFsMSwg
dmFsMikgXAogICBBU1NFUlRfUFJFRF9GT1JNQVQyKDo6dGVzdGluZzo6aW50ZXJuYWw6OkNtcEhl
bHBlck5FLCB2YWwxLCB2YWwyKQogI2RlZmluZSBHVEVTVF9BU1NFUlRfTEUodmFsMSwgdmFsMikg
XApAQCAtMjE2OSwxMiArMjIzMyw2IEBAIGNsYXNzIEdURVNUX0FQSV8gU2NvcGVkVHJhY2Ugewog
ICAgIFB1c2hUcmFjZShmaWxlLCBsaW5lLCBtZXNzYWdlID8gbWVzc2FnZSA6ICIobnVsbCkiKTsK
ICAgfQogCi0jaWYgR1RFU1RfSEFTX0dMT0JBTF9TVFJJTkcKLSAgU2NvcGVkVHJhY2UoY29uc3Qg
Y2hhciogZmlsZSwgaW50IGxpbmUsIGNvbnN0IDo6c3RyaW5nJiBtZXNzYWdlKSB7Ci0gICAgUHVz
aFRyYWNlKGZpbGUsIGxpbmUsIG1lc3NhZ2UpOwotICB9Ci0jZW5kaWYKLQogICBTY29wZWRUcmFj
ZShjb25zdCBjaGFyKiBmaWxlLCBpbnQgbGluZSwgY29uc3Qgc3RkOjpzdHJpbmcmIG1lc3NhZ2Up
IHsKICAgICBQdXNoVHJhY2UoZmlsZSwgbGluZSwgbWVzc2FnZSk7CiAgIH0KQEAgLTIyMTIsMTAg
KzIyNzAsOSBAQCBjbGFzcyBHVEVTVF9BUElfIFNjb3BlZFRyYWNlIHsKICAgOjp0ZXN0aW5nOjpT
Y29wZWRUcmFjZSBHVEVTVF9DT05DQVRfVE9LRU5fKGd0ZXN0X3RyYWNlXywgX19MSU5FX18pKFwK
ICAgICBfX0ZJTEVfXywgX19MSU5FX18sIChtZXNzYWdlKSkKIAotCiAvLyBDb21waWxlLXRpbWUg
YXNzZXJ0aW9uIGZvciB0eXBlIGVxdWFsaXR5LgotLy8gU3RhdGljQXNzZXJ0VHlwZUVxPHR5cGUx
LCB0eXBlMj4oKSBjb21waWxlcyBpZmYgdHlwZTEgYW5kIHR5cGUyIGFyZQotLy8gdGhlIHNhbWUg
dHlwZS4gIFRoZSB2YWx1ZSBpdCByZXR1cm5zIGlzIG5vdCBpbnRlcmVzdGluZy4KKy8vIFN0YXRp
Y0Fzc2VydFR5cGVFcTx0eXBlMSwgdHlwZTI+KCkgY29tcGlsZXMgaWYgYW5kIG9ubHkgaWYgdHlw
ZTEgYW5kIHR5cGUyCisvLyBhcmUgdGhlIHNhbWUgdHlwZS4gIFRoZSB2YWx1ZSBpdCByZXR1cm5z
IGlzIG5vdCBpbnRlcmVzdGluZy4KIC8vCiAvLyBJbnN0ZWFkIG9mIG1ha2luZyBTdGF0aWNBc3Nl
cnRUeXBlRXEgYSBjbGFzcyB0ZW1wbGF0ZSwgd2UgbWFrZSBpdCBhCiAvLyBmdW5jdGlvbiB0ZW1w
bGF0ZSB0aGF0IGludm9rZXMgYSBoZWxwZXIgY2xhc3MgdGVtcGxhdGUuICBUaGlzCkBAIC0yMjQ0
LDE4ICsyMzAxLDE4IEBAIGNsYXNzIEdURVNUX0FQSV8gU2NvcGVkVHJhY2UgewogLy8KIC8vIHRv
IGNhdXNlIGEgY29tcGlsZXIgZXJyb3IuCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1l
IFQyPgotYm9vbCBTdGF0aWNBc3NlcnRUeXBlRXEoKSB7Ci0gICh2b2lkKWludGVybmFsOjpTdGF0
aWNBc3NlcnRUeXBlRXFIZWxwZXI8VDEsIFQyPigpOworY29uc3RleHByIGJvb2wgU3RhdGljQXNz
ZXJ0VHlwZUVxKCkgbm9leGNlcHQgeworICBzdGF0aWNfYXNzZXJ0KHN0ZDo6aXNfc2FtZTxUMSwg
VDI+Ojp2YWx1ZSwgIlQxIGFuZCBUMiBhcmUgbm90IHRoZSBzYW1lIHR5cGUiKTsKICAgcmV0dXJu
IHRydWU7CiB9CiAKIC8vIERlZmluZXMgYSB0ZXN0LgogLy8KLS8vIFRoZSBmaXJzdCBwYXJhbWV0
ZXIgaXMgdGhlIG5hbWUgb2YgdGhlIHRlc3QgY2FzZSwgYW5kIHRoZSBzZWNvbmQKLS8vIHBhcmFt
ZXRlciBpcyB0aGUgbmFtZSBvZiB0aGUgdGVzdCB3aXRoaW4gdGhlIHRlc3QgY2FzZS4KKy8vIFRo
ZSBmaXJzdCBwYXJhbWV0ZXIgaXMgdGhlIG5hbWUgb2YgdGhlIHRlc3Qgc3VpdGUsIGFuZCB0aGUg
c2Vjb25kCisvLyBwYXJhbWV0ZXIgaXMgdGhlIG5hbWUgb2YgdGhlIHRlc3Qgd2l0aGluIHRoZSB0
ZXN0IHN1aXRlLgogLy8KLS8vIFRoZSBjb252ZW50aW9uIGlzIHRvIGVuZCB0aGUgdGVzdCBjYXNl
IG5hbWUgd2l0aCAiVGVzdCIuICBGb3IKLS8vIGV4YW1wbGUsIGEgdGVzdCBjYXNlIGZvciB0aGUg
Rm9vIGNsYXNzIGNhbiBiZSBuYW1lZCBGb29UZXN0LgorLy8gVGhlIGNvbnZlbnRpb24gaXMgdG8g
ZW5kIHRoZSB0ZXN0IHN1aXRlIG5hbWUgd2l0aCAiVGVzdCIuICBGb3IKKy8vIGV4YW1wbGUsIGEg
dGVzdCBzdWl0ZSBmb3IgdGhlIEZvbyBjbGFzcyBjYW4gYmUgbmFtZWQgRm9vVGVzdC4KIC8vCiAv
LyBUZXN0IGNvZGUgc2hvdWxkIGFwcGVhciBiZXR3ZWVuIGJyYWNlcyBhZnRlciBhbiBpbnZvY2F0
aW9uIG9mCiAvLyB0aGlzIG1hY3JvLiAgRXhhbXBsZToKQEAgLTIyNzQsMjggKzIzMzEsMjggQEAg
Ym9vbCBTdGF0aWNBc3NlcnRUeXBlRXEoKSB7CiAvLyBjb2RlLiAgR2V0VGVzdFR5cGVJZCgpIGlz
IGd1YXJhbnRlZWQgdG8gYWx3YXlzIHJldHVybiB0aGUgc2FtZQogLy8gdmFsdWUsIGFzIGl0IGFs
d2F5cyBjYWxscyBHZXRUeXBlSWQ8PigpIGZyb20gdGhlIEdvb2dsZSBUZXN0CiAvLyBmcmFtZXdv
cmsuCi0jZGVmaW5lIEdURVNUX1RFU1QodGVzdF9jYXNlX25hbWUsIHRlc3RfbmFtZSlcCi0gIEdU
RVNUX1RFU1RfKHRlc3RfY2FzZV9uYW1lLCB0ZXN0X25hbWUsIFwKLSAgICAgICAgICAgICAgOjp0
ZXN0aW5nOjpUZXN0LCA6OnRlc3Rpbmc6OmludGVybmFsOjpHZXRUZXN0VHlwZUlkKCkpCisjZGVm
aW5lIEdURVNUX1RFU1QodGVzdF9zdWl0ZV9uYW1lLCB0ZXN0X25hbWUpICAgICAgICAgICAgIFwK
KyAgR1RFU1RfVEVTVF8odGVzdF9zdWl0ZV9uYW1lLCB0ZXN0X25hbWUsIDo6dGVzdGluZzo6VGVz
dCwgXAorICAgICAgICAgICAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpHZXRUZXN0VHlwZUlkKCkp
CiAKIC8vIERlZmluZSB0aGlzIG1hY3JvIHRvIDEgdG8gb21pdCB0aGUgZGVmaW5pdGlvbiBvZiBU
RVNUKCksIHdoaWNoCiAvLyBpcyBhIGdlbmVyaWMgbmFtZSBhbmQgY2xhc2hlcyB3aXRoIHNvbWUg
b3RoZXIgbGlicmFyaWVzLgogI2lmICFHVEVTVF9ET05UX0RFRklORV9URVNUCi0jIGRlZmluZSBU
RVNUKHRlc3RfY2FzZV9uYW1lLCB0ZXN0X25hbWUpIEdURVNUX1RFU1QodGVzdF9jYXNlX25hbWUs
IHRlc3RfbmFtZSkKKyNkZWZpbmUgVEVTVCh0ZXN0X3N1aXRlX25hbWUsIHRlc3RfbmFtZSkgR1RF
U1RfVEVTVCh0ZXN0X3N1aXRlX25hbWUsIHRlc3RfbmFtZSkKICNlbmRpZgogCiAvLyBEZWZpbmVz
IGEgdGVzdCB0aGF0IHVzZXMgYSB0ZXN0IGZpeHR1cmUuCiAvLwogLy8gVGhlIGZpcnN0IHBhcmFt
ZXRlciBpcyB0aGUgbmFtZSBvZiB0aGUgdGVzdCBmaXh0dXJlIGNsYXNzLCB3aGljaAotLy8gYWxz
byBkb3VibGVzIGFzIHRoZSB0ZXN0IGNhc2UgbmFtZS4gIFRoZSBzZWNvbmQgcGFyYW1ldGVyIGlz
IHRoZQotLy8gbmFtZSBvZiB0aGUgdGVzdCB3aXRoaW4gdGhlIHRlc3QgY2FzZS4KKy8vIGFsc28g
ZG91YmxlcyBhcyB0aGUgdGVzdCBzdWl0ZSBuYW1lLiAgVGhlIHNlY29uZCBwYXJhbWV0ZXIgaXMg
dGhlCisvLyBuYW1lIG9mIHRoZSB0ZXN0IHdpdGhpbiB0aGUgdGVzdCBzdWl0ZS4KIC8vCiAvLyBB
IHRlc3QgZml4dHVyZSBjbGFzcyBtdXN0IGJlIGRlY2xhcmVkIGVhcmxpZXIuICBUaGUgdXNlciBz
aG91bGQgcHV0CiAvLyB0aGUgdGVzdCBjb2RlIGJldHdlZW4gYnJhY2VzIGFmdGVyIHVzaW5nIHRo
aXMgbWFjcm8uICBFeGFtcGxlOgogLy8KIC8vICAgY2xhc3MgRm9vVGVzdCA6IHB1YmxpYyB0ZXN0
aW5nOjpUZXN0IHsKIC8vICAgIHByb3RlY3RlZDoKLS8vICAgICB2aXJ0dWFsIHZvaWQgU2V0VXAo
KSB7IGJfLkFkZEVsZW1lbnQoMyk7IH0KKy8vICAgICB2b2lkIFNldFVwKCkgb3ZlcnJpZGUgeyBi
Xy5BZGRFbGVtZW50KDMpOyB9CiAvLwogLy8gICAgIEZvbyBhXzsKIC8vICAgICBGb28gYl87CkBA
IC0yMzA5LDEwICsyMzY2LDEzIEBAIGJvb2wgU3RhdGljQXNzZXJ0VHlwZUVxKCkgewogLy8gICAg
IEVYUEVDVF9FUShhXy5zaXplKCksIDApOwogLy8gICAgIEVYUEVDVF9FUShiXy5zaXplKCksIDEp
OwogLy8gICB9Ci0KKy8vCisvLyBHT09HTEVURVNUX0NNMDAxMSBETyBOT1QgREVMRVRFCisjaWYg
IUdURVNUX0RPTlRfREVGSU5FX1RFU1QKICNkZWZpbmUgVEVTVF9GKHRlc3RfZml4dHVyZSwgdGVz
dF9uYW1lKVwKICAgR1RFU1RfVEVTVF8odGVzdF9maXh0dXJlLCB0ZXN0X25hbWUsIHRlc3RfZml4
dHVyZSwgXAogICAgICAgICAgICAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpHZXRUeXBlSWQ8dGVz
dF9maXh0dXJlPigpKQorI2VuZGlmICAvLyAhR1RFU1RfRE9OVF9ERUZJTkVfVEVTVAogCiAvLyBS
ZXR1cm5zIGEgcGF0aCB0byB0ZW1wb3JhcnkgZGlyZWN0b3J5LgogLy8gVHJpZXMgdG8gZGV0ZXJt
aW5lIGFuIGFwcHJvcHJpYXRlIGRpcmVjdG9yeSBmb3IgdGhlIHBsYXRmb3JtLgpAQCAtMjMyMiw2
ICsyMzgyLDg2IEBAIEdURVNUX0FQSV8gc3RkOjpzdHJpbmcgVGVtcERpcigpOwogIyAgcHJhZ21h
IHdhcm5pbmcocG9wKQogI2VuZGlmCiAKKy8vIER5bmFtaWNhbGx5IHJlZ2lzdGVycyBhIHRlc3Qg
d2l0aCB0aGUgZnJhbWV3b3JrLgorLy8KKy8vIFRoaXMgaXMgYW4gYWR2YW5jZWQgQVBJIG9ubHkg
dG8gYmUgdXNlZCB3aGVuIHRoZSBgVEVTVGAgbWFjcm9zIGFyZQorLy8gaW5zdWZmaWNpZW50LiBU
aGUgbWFjcm9zIHNob3VsZCBiZSBwcmVmZXJyZWQgd2hlbiBwb3NzaWJsZSwgYXMgdGhleSBhdm9p
ZAorLy8gbW9zdCBvZiB0aGUgY29tcGxleGl0eSBvZiBjYWxsaW5nIHRoaXMgZnVuY3Rpb24uCisv
LworLy8gVGhlIGBmYWN0b3J5YCBhcmd1bWVudCBpcyBhIGZhY3RvcnkgY2FsbGFibGUgKG1vdmUt
Y29uc3RydWN0aWJsZSkgb2JqZWN0IG9yCisvLyBmdW5jdGlvbiBwb2ludGVyIHRoYXQgY3JlYXRl
cyBhIG5ldyBpbnN0YW5jZSBvZiB0aGUgVGVzdCBvYmplY3QuIEl0CisvLyBoYW5kbGVzIG93bmVy
c2hpcCB0byB0aGUgY2FsbGVyLiBUaGUgc2lnbmF0dXJlIG9mIHRoZSBjYWxsYWJsZSBpcworLy8g
YEZpeHR1cmUqKClgLCB3aGVyZSBgRml4dHVyZWAgaXMgdGhlIHRlc3QgZml4dHVyZSBjbGFzcyBm
b3IgdGhlIHRlc3QuIEFsbAorLy8gdGVzdHMgcmVnaXN0ZXJlZCB3aXRoIHRoZSBzYW1lIGB0ZXN0
X3N1aXRlX25hbWVgIG11c3QgcmV0dXJuIHRoZSBzYW1lCisvLyBmaXh0dXJlIHR5cGUuIFRoaXMg
aXMgY2hlY2tlZCBhdCBydW50aW1lLgorLy8KKy8vIFRoZSBmcmFtZXdvcmsgd2lsbCBpbmZlciB0
aGUgZml4dHVyZSBjbGFzcyBmcm9tIHRoZSBmYWN0b3J5IGFuZCB3aWxsIGNhbGwKKy8vIHRoZSBg
U2V0VXBUZXN0U3VpdGVgIGFuZCBgVGVhckRvd25UZXN0U3VpdGVgIGZvciBpdC4KKy8vCisvLyBN
dXN0IGJlIGNhbGxlZCBiZWZvcmUgYFJVTl9BTExfVEVTVFMoKWAgaXMgaW52b2tlZCwgb3RoZXJ3
aXNlIGJlaGF2aW9yIGlzCisvLyB1bmRlZmluZWQuCisvLworLy8gVXNlIGNhc2UgZXhhbXBsZToK
Ky8vCisvLyBjbGFzcyBNeUZpeHR1cmUgOiBwdWJsaWMgOjp0ZXN0aW5nOjpUZXN0IHsKKy8vICBw
dWJsaWM6CisvLyAgIC8vIEFsbCBvZiB0aGVzZSBvcHRpb25hbCwganVzdCBsaWtlIGluIHJlZ3Vs
YXIgbWFjcm8gdXNhZ2UuCisvLyAgIHN0YXRpYyB2b2lkIFNldFVwVGVzdFN1aXRlKCkgeyAuLi4g
fQorLy8gICBzdGF0aWMgdm9pZCBUZWFyRG93blRlc3RTdWl0ZSgpIHsgLi4uIH0KKy8vICAgdm9p
ZCBTZXRVcCgpIG92ZXJyaWRlIHsgLi4uIH0KKy8vICAgdm9pZCBUZWFyRG93bigpIG92ZXJyaWRl
IHsgLi4uIH0KKy8vIH07CisvLworLy8gY2xhc3MgTXlUZXN0IDogcHVibGljIE15Rml4dHVyZSB7
CisvLyAgcHVibGljOgorLy8gICBleHBsaWNpdCBNeVRlc3QoaW50IGRhdGEpIDogZGF0YV8oZGF0
YSkge30KKy8vICAgdm9pZCBUZXN0Qm9keSgpIG92ZXJyaWRlIHsgLi4uIH0KKy8vCisvLyAgcHJp
dmF0ZToKKy8vICAgaW50IGRhdGFfOworLy8gfTsKKy8vCisvLyB2b2lkIFJlZ2lzdGVyTXlUZXN0
cyhjb25zdCBzdGQ6OnZlY3RvcjxpbnQ+JiB2YWx1ZXMpIHsKKy8vICAgZm9yIChpbnQgdiA6IHZh
bHVlcykgeworLy8gICAgIDo6dGVzdGluZzo6UmVnaXN0ZXJUZXN0KAorLy8gICAgICAgICAiTXlG
aXh0dXJlIiwgKCJUZXN0IiArIHN0ZDo6dG9fc3RyaW5nKHYpKS5jX3N0cigpLCBudWxscHRyLAor
Ly8gICAgICAgICBzdGQ6OnRvX3N0cmluZyh2KS5jX3N0cigpLAorLy8gICAgICAgICBfX0ZJTEVf
XywgX19MSU5FX18sCisvLyAgICAgICAgIC8vIEltcG9ydGFudCB0byB1c2UgdGhlIGZpeHR1cmUg
dHlwZSBhcyB0aGUgcmV0dXJuIHR5cGUgaGVyZS4KKy8vICAgICAgICAgWz1dKCkgLT4gTXlGaXh0
dXJlKiB7IHJldHVybiBuZXcgTXlUZXN0KHYpOyB9KTsKKy8vICAgfQorLy8gfQorLy8gLi4uCisv
LyBpbnQgbWFpbihpbnQgYXJnYywgY2hhcioqIGFyZ3YpIHsKKy8vICAgc3RkOjp2ZWN0b3I8aW50
PiB2YWx1ZXNfdG9fdGVzdCA9IExvYWRWYWx1ZXNGcm9tQ29uZmlnKCk7CisvLyAgIFJlZ2lzdGVy
TXlUZXN0cyh2YWx1ZXNfdG9fdGVzdCk7CisvLyAgIC4uLgorLy8gICByZXR1cm4gUlVOX0FMTF9U
RVNUUygpOworLy8gfQorLy8KK3RlbXBsYXRlIDxpbnQmLi4uIEV4cGxpY2l0UGFyYW1ldGVyQmFy
cmllciwgdHlwZW5hbWUgRmFjdG9yeT4KK1Rlc3RJbmZvKiBSZWdpc3RlclRlc3QoY29uc3QgY2hh
ciogdGVzdF9zdWl0ZV9uYW1lLCBjb25zdCBjaGFyKiB0ZXN0X25hbWUsCisgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IGNoYXIqIHR5cGVfcGFyYW0sIGNvbnN0IGNoYXIqIHZhbHVlX3BhcmFt
LAorICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyKiBmaWxlLCBpbnQgbGluZSwgRmFj
dG9yeSBmYWN0b3J5KSB7CisgIHVzaW5nIFRlc3RUID0gdHlwZW5hbWUgc3RkOjpyZW1vdmVfcG9p
bnRlcjxkZWNsdHlwZShmYWN0b3J5KCkpPjo6dHlwZTsKKworICBjbGFzcyBGYWN0b3J5SW1wbCA6
IHB1YmxpYyBpbnRlcm5hbDo6VGVzdEZhY3RvcnlCYXNlIHsKKyAgIHB1YmxpYzoKKyAgICBleHBs
aWNpdCBGYWN0b3J5SW1wbChGYWN0b3J5IGYpIDogZmFjdG9yeV8oc3RkOjptb3ZlKGYpKSB7fQor
ICAgIFRlc3QqIENyZWF0ZVRlc3QoKSBvdmVycmlkZSB7IHJldHVybiBmYWN0b3J5XygpOyB9CisK
KyAgIHByaXZhdGU6CisgICAgRmFjdG9yeSBmYWN0b3J5XzsKKyAgfTsKKworICByZXR1cm4gaW50
ZXJuYWw6Ok1ha2VBbmRSZWdpc3RlclRlc3RJbmZvKAorICAgICAgdGVzdF9zdWl0ZV9uYW1lLCB0
ZXN0X25hbWUsIHR5cGVfcGFyYW0sIHZhbHVlX3BhcmFtLAorICAgICAgaW50ZXJuYWw6OkNvZGVM
b2NhdGlvbihmaWxlLCBsaW5lKSwgaW50ZXJuYWw6OkdldFR5cGVJZDxUZXN0VD4oKSwKKyAgICAg
IGludGVybmFsOjpTdWl0ZUFwaVJlc29sdmVyPFRlc3RUPjo6R2V0U2V0VXBDYXNlT3JTdWl0ZShm
aWxlLCBsaW5lKSwKKyAgICAgIGludGVybmFsOjpTdWl0ZUFwaVJlc29sdmVyPFRlc3RUPjo6R2V0
VGVhckRvd25DYXNlT3JTdWl0ZShmaWxlLCBsaW5lKSwKKyAgICAgIG5ldyBGYWN0b3J5SW1wbHtz
dGQ6Om1vdmUoZmFjdG9yeSl9KTsKK30KKwogfSAgLy8gbmFtZXNwYWNlIHRlc3RpbmcKIAogLy8g
VXNlIHRoaXMgZnVuY3Rpb24gaW4gbWFpbigpIHRvIHJ1biBhbGwgdGVzdHMuICBJdCByZXR1cm5z
IDAgaWYgYWxsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qv
c3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3RfcHJlZF9pbXBsLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3Bh
cnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3RfcHJlZF9pbXBsLmgKaW5kZXgg
MGMxMTA1Y2I4ZWIyZWY3YzI2MTZlNjdmZjU1NTZhYWIyOWZmMmQxZC4uZDUxNDI1NWM3MzNiNzZh
ZThjNmNkMDE5MDJkMzI4ZjMwYjlhNmRlOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9w
YXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2d0ZXN0X3ByZWRfaW1wbC5oCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9ndGVz
dF9wcmVkX2ltcGwuaApAQCAtMjcsMTEgKzI3LDEwIEBACiAvLyAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIC8vIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCiAKLS8vIFRoaXMgZmlsZSBpcyBBVVRPTUFUSUNBTExZIEdFTkVSQVRFRCBvbiAw
MS8wMi8yMDE4IGJ5IGNvbW1hbmQKKy8vIFRoaXMgZmlsZSBpcyBBVVRPTUFUSUNBTExZIEdFTkVS
QVRFRCBvbiAwMS8wMi8yMDE5IGJ5IGNvbW1hbmQKIC8vICdnZW5fZ3Rlc3RfcHJlZF9pbXBsLnB5
IDUnLiAgRE8gTk9UIEVESVQgQlkgSEFORCEKIC8vCiAvLyBJbXBsZW1lbnRzIGEgZmFtaWx5IG9m
IGdlbmVyaWMgcHJlZGljYXRlIGFzc2VydGlvbiBtYWNyb3MuCi0KIC8vIEdPT0dMRVRFU1RfQ00w
MDAxIERPIE5PVCBERUxFVEUKIAogI2lmbmRlZiBHVEVTVF9JTkNMVURFX0dURVNUX0dURVNUX1BS
RURfSU1QTF9IXwpAQCAtNjcsNiArNjYsOCBAQCBuYW1lc3BhY2UgdGVzdGluZyB7CiAvLyBXZSBh
bHNvIGRlZmluZSB0aGUgRVhQRUNUXyogdmFyaWF0aW9ucy4KIC8vCiAvLyBGb3Igbm93IHdlIG9u
bHkgc3VwcG9ydCBwcmVkaWNhdGVzIHdob3NlIGFyaXR5IGlzIGF0IG1vc3QgNS4KKy8vIFBsZWFz
ZSBlbWFpbCBnb29nbGV0ZXN0ZnJhbWV3b3JrQGdvb2dsZWdyb3Vwcy5jb20gaWYgeW91IG5lZWQK
Ky8vIHN1cHBvcnQgZm9yIGhpZ2hlciBhcml0aWVzLgogCiAvLyBHVEVTVF9BU1NFUlRfIGlzIHRo
ZSBiYXNpYyBzdGF0ZW1lbnQgdG8gd2hpY2ggYWxsIG9mIHRoZSBhc3NlcnRpb25zCiAvLyBpbiB0
aGlzIGZpbGUgcmVkdWNlLiAgRG9uJ3QgdXNlIHRoaXMgaW4geW91ciBjb2RlLgpAQCAtODksOSAr
OTAsMTAgQEAgQXNzZXJ0aW9uUmVzdWx0IEFzc2VydFByZWQxSGVscGVyKGNvbnN0IGNoYXIqIHBy
ZWRfdGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBUMSYgdjEp
IHsKICAgaWYgKHByZWQodjEpKSByZXR1cm4gQXNzZXJ0aW9uU3VjY2VzcygpOwogCi0gIHJldHVy
biBBc3NlcnRpb25GYWlsdXJlKCkgPDwgcHJlZF90ZXh0IDw8ICIoIgotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDw8IGUxIDw8ICIpIGV2YWx1YXRlcyB0byBmYWxzZSwgd2hlcmUiCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgPDwgIlxuIiA8PCBlMSA8PCAiIGV2YWx1YXRlcyB0byAi
IDw8IHYxOworICByZXR1cm4gQXNzZXJ0aW9uRmFpbHVyZSgpCisgICAgICAgICA8PCBwcmVkX3Rl
eHQgPDwgIigiIDw8IGUxIDw8ICIpIGV2YWx1YXRlcyB0byBmYWxzZSwgd2hlcmUiCisgICAgICAg
ICA8PCAiXG4iCisgICAgICAgICA8PCBlMSA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IDo6dGVzdGlu
Zzo6UHJpbnRUb1N0cmluZyh2MSk7CiB9CiAKIC8vIEludGVybmFsIG1hY3JvIGZvciBpbXBsZW1l
bnRpbmcge0VYUEVDVHxBU1NFUlR9X1BSRURfRk9STUFUMS4KQEAgLTEzMywxMSArMTM1LDEyIEBA
IEFzc2VydGlvblJlc3VsdCBBc3NlcnRQcmVkMkhlbHBlcihjb25zdCBjaGFyKiBwcmVkX3RleHQs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVDImIHYyKSB7CiAgIGlm
IChwcmVkKHYxLCB2MikpIHJldHVybiBBc3NlcnRpb25TdWNjZXNzKCk7CiAKLSAgcmV0dXJuIEFz
c2VydGlvbkZhaWx1cmUoKSA8PCBwcmVkX3RleHQgPDwgIigiCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgPDwgZTEgPDwgIiwgIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw8IGUy
IDw8ICIpIGV2YWx1YXRlcyB0byBmYWxzZSwgd2hlcmUiCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPDwgIlxuIiA8PCBlMSA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IHYxCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPDwgIlxuIiA8PCBlMiA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IHYy
OworICByZXR1cm4gQXNzZXJ0aW9uRmFpbHVyZSgpCisgICAgICAgICA8PCBwcmVkX3RleHQgPDwg
IigiIDw8IGUxIDw8ICIsICIgPDwgZTIKKyAgICAgICAgIDw8ICIpIGV2YWx1YXRlcyB0byBmYWxz
ZSwgd2hlcmUiCisgICAgICAgICA8PCAiXG4iCisgICAgICAgICA8PCBlMSA8PCAiIGV2YWx1YXRl
cyB0byAiIDw8IDo6dGVzdGluZzo6UHJpbnRUb1N0cmluZyh2MSkgPDwgIlxuIgorICAgICAgICAg
PDwgZTIgPDwgIiBldmFsdWF0ZXMgdG8gIiA8PCA6OnRlc3Rpbmc6OlByaW50VG9TdHJpbmcodjIp
OwogfQogCiAvLyBJbnRlcm5hbCBtYWNybyBmb3IgaW1wbGVtZW50aW5nIHtFWFBFQ1R8QVNTRVJU
fV9QUkVEX0ZPUk1BVDIuCkBAIC0xODQsMTMgKzE4NywxMyBAQCBBc3NlcnRpb25SZXN1bHQgQXNz
ZXJ0UHJlZDNIZWxwZXIoY29uc3QgY2hhciogcHJlZF90ZXh0LAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IFQzJiB2MykgewogICBpZiAocHJlZCh2MSwgdjIsIHYzKSkg
cmV0dXJuIEFzc2VydGlvblN1Y2Nlc3MoKTsKIAotICByZXR1cm4gQXNzZXJ0aW9uRmFpbHVyZSgp
IDw8IHByZWRfdGV4dCA8PCAiKCIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PCBlMSA8
PCAiLCAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgZTIgPDwgIiwgIgotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDw8IGUzIDw8ICIpIGV2YWx1YXRlcyB0byBmYWxzZSwgd2hl
cmUiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgIlxuIiA8PCBlMSA8PCAiIGV2YWx1
YXRlcyB0byAiIDw8IHYxCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgIlxuIiA8PCBl
MiA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IHYyCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
PDwgIlxuIiA8PCBlMyA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IHYzOworICByZXR1cm4gQXNzZXJ0
aW9uRmFpbHVyZSgpCisgICAgICAgICA8PCBwcmVkX3RleHQgPDwgIigiIDw8IGUxIDw8ICIsICIg
PDwgZTIgPDwgIiwgIiA8PCBlMworICAgICAgICAgPDwgIikgZXZhbHVhdGVzIHRvIGZhbHNlLCB3
aGVyZSIKKyAgICAgICAgIDw8ICJcbiIKKyAgICAgICAgIDw8IGUxIDw8ICIgZXZhbHVhdGVzIHRv
ICIgPDwgOjp0ZXN0aW5nOjpQcmludFRvU3RyaW5nKHYxKSA8PCAiXG4iCisgICAgICAgICA8PCBl
MiA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IDo6dGVzdGluZzo6UHJpbnRUb1N0cmluZyh2MikgPDwg
IlxuIgorICAgICAgICAgPDwgZTMgPDwgIiBldmFsdWF0ZXMgdG8gIiA8PCA6OnRlc3Rpbmc6OlBy
aW50VG9TdHJpbmcodjMpOwogfQogCiAvLyBJbnRlcm5hbCBtYWNybyBmb3IgaW1wbGVtZW50aW5n
IHtFWFBFQ1R8QVNTRVJUfV9QUkVEX0ZPUk1BVDMuCkBAIC0yNDIsMTUgKzI0NSwxNCBAQCBBc3Nl
cnRpb25SZXN1bHQgQXNzZXJ0UHJlZDRIZWxwZXIoY29uc3QgY2hhciogcHJlZF90ZXh0LAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFQ0JiB2NCkgewogICBpZiAocHJl
ZCh2MSwgdjIsIHYzLCB2NCkpIHJldHVybiBBc3NlcnRpb25TdWNjZXNzKCk7CiAKLSAgcmV0dXJu
IEFzc2VydGlvbkZhaWx1cmUoKSA8PCBwcmVkX3RleHQgPDwgIigiCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgPDwgZTEgPDwgIiwgIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw8
IGUyIDw8ICIsICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PCBlMyA8PCAiLCAiCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgZTQgPDwgIikgZXZhbHVhdGVzIHRvIGZhbHNl
LCB3aGVyZSIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PCAiXG4iIDw8IGUxIDw8ICIg
ZXZhbHVhdGVzIHRvICIgPDwgdjEKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PCAiXG4i
IDw8IGUyIDw8ICIgZXZhbHVhdGVzIHRvICIgPDwgdjIKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA8PCAiXG4iIDw8IGUzIDw8ICIgZXZhbHVhdGVzIHRvICIgPDwgdjMKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA8PCAiXG4iIDw8IGU0IDw8ICIgZXZhbHVhdGVzIHRvICIgPDwgdjQ7
CisgIHJldHVybiBBc3NlcnRpb25GYWlsdXJlKCkKKyAgICAgICAgIDw8IHByZWRfdGV4dCA8PCAi
KCIgPDwgZTEgPDwgIiwgIiA8PCBlMiA8PCAiLCAiIDw8IGUzIDw8ICIsICIgPDwgZTQKKyAgICAg
ICAgIDw8ICIpIGV2YWx1YXRlcyB0byBmYWxzZSwgd2hlcmUiCisgICAgICAgICA8PCAiXG4iCisg
ICAgICAgICA8PCBlMSA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IDo6dGVzdGluZzo6UHJpbnRUb1N0
cmluZyh2MSkgPDwgIlxuIgorICAgICAgICAgPDwgZTIgPDwgIiBldmFsdWF0ZXMgdG8gIiA8PCA6
OnRlc3Rpbmc6OlByaW50VG9TdHJpbmcodjIpIDw8ICJcbiIKKyAgICAgICAgIDw8IGUzIDw8ICIg
ZXZhbHVhdGVzIHRvICIgPDwgOjp0ZXN0aW5nOjpQcmludFRvU3RyaW5nKHYzKSA8PCAiXG4iCisg
ICAgICAgICA8PCBlNCA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IDo6dGVzdGluZzo6UHJpbnRUb1N0
cmluZyh2NCk7CiB9CiAKIC8vIEludGVybmFsIG1hY3JvIGZvciBpbXBsZW1lbnRpbmcge0VYUEVD
VHxBU1NFUlR9X1BSRURfRk9STUFUNC4KQEAgLTMwNywxNyArMzA5LDE1IEBAIEFzc2VydGlvblJl
c3VsdCBBc3NlcnRQcmVkNUhlbHBlcihjb25zdCBjaGFyKiBwcmVkX3RleHQsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVDUmIHY1KSB7CiAgIGlmIChwcmVkKHYxLCB2
MiwgdjMsIHY0LCB2NSkpIHJldHVybiBBc3NlcnRpb25TdWNjZXNzKCk7CiAKLSAgcmV0dXJuIEFz
c2VydGlvbkZhaWx1cmUoKSA8PCBwcmVkX3RleHQgPDwgIigiCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgPDwgZTEgPDwgIiwgIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw8IGUy
IDw8ICIsICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PCBlMyA8PCAiLCAiCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgPDwgZTQgPDwgIiwgIgotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDw8IGU1IDw8ICIpIGV2YWx1YXRlcyB0byBmYWxzZSwgd2hlcmUiCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgPDwgIlxuIiA8PCBlMSA8PCAiIGV2YWx1YXRlcyB0byAiIDw8
IHYxCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgIlxuIiA8PCBlMiA8PCAiIGV2YWx1
YXRlcyB0byAiIDw8IHYyCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgIlxuIiA8PCBl
MyA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IHYzCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
PDwgIlxuIiA8PCBlNCA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IHY0Ci0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgPDwgIlxuIiA8PCBlNSA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IHY1OworICBy
ZXR1cm4gQXNzZXJ0aW9uRmFpbHVyZSgpCisgICAgICAgICA8PCBwcmVkX3RleHQgPDwgIigiIDw8
IGUxIDw8ICIsICIgPDwgZTIgPDwgIiwgIiA8PCBlMyA8PCAiLCAiIDw8IGU0CisgICAgICAgICA8
PCAiLCAiIDw8IGU1IDw8ICIpIGV2YWx1YXRlcyB0byBmYWxzZSwgd2hlcmUiCisgICAgICAgICA8
PCAiXG4iCisgICAgICAgICA8PCBlMSA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IDo6dGVzdGluZzo6
UHJpbnRUb1N0cmluZyh2MSkgPDwgIlxuIgorICAgICAgICAgPDwgZTIgPDwgIiBldmFsdWF0ZXMg
dG8gIiA8PCA6OnRlc3Rpbmc6OlByaW50VG9TdHJpbmcodjIpIDw8ICJcbiIKKyAgICAgICAgIDw8
IGUzIDw8ICIgZXZhbHVhdGVzIHRvICIgPDwgOjp0ZXN0aW5nOjpQcmludFRvU3RyaW5nKHYzKSA8
PCAiXG4iCisgICAgICAgICA8PCBlNCA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IDo6dGVzdGluZzo6
UHJpbnRUb1N0cmluZyh2NCkgPDwgIlxuIgorICAgICAgICAgPDwgZTUgPDwgIiBldmFsdWF0ZXMg
dG8gIiA8PCA6OnRlc3Rpbmc6OlByaW50VG9TdHJpbmcodjUpOwogfQogCiAvLyBJbnRlcm5hbCBt
YWNybyBmb3IgaW1wbGVtZW50aW5nIHtFWFBFQ1R8QVNTRVJUfV9QUkVEX0ZPUk1BVDUuCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rl
c3QvaW50ZXJuYWwvZ3Rlc3QtZGVhdGgtdGVzdC1pbnRlcm5hbC5oIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGly
ZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LWRlYXRo
LXRlc3QtaW50ZXJuYWwuaAppbmRleCAwYTliNDJjOGE1NzJhODcxOTRjNjUxMDkwM2UyMWVhMjI2
MGZhYzVjLi42OGJkMzUzMDYxOGYyNjRjNDQ3NDlhNzc5NmNlNWVlNTgxNzUxZTYyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3Qv
aW50ZXJuYWwvZ3Rlc3QtZGVhdGgtdGVzdC1pbnRlcm5hbC5oCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhp
cmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1kZWF0
aC10ZXN0LWludGVybmFsLmgKQEAgLTM2LDkgKzM2LDExIEBACiAjaWZuZGVmIEdURVNUX0lOQ0xV
REVfR1RFU1RfSU5URVJOQUxfR1RFU1RfREVBVEhfVEVTVF9JTlRFUk5BTF9IXwogI2RlZmluZSBH
VEVTVF9JTkNMVURFX0dURVNUX0lOVEVSTkFMX0dURVNUX0RFQVRIX1RFU1RfSU5URVJOQUxfSF8K
IAorI2luY2x1ZGUgImd0ZXN0L2d0ZXN0LW1hdGNoZXJzLmgiCiAjaW5jbHVkZSAiZ3Rlc3QvaW50
ZXJuYWwvZ3Rlc3QtaW50ZXJuYWwuaCIKIAogI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8
bWVtb3J5PgogCiBuYW1lc3BhY2UgdGVzdGluZyB7CiBuYW1lc3BhY2UgaW50ZXJuYWwgewpAQCAt
NzgsNyArODAsNyBAQCBjbGFzcyBHVEVTVF9BUElfIERlYXRoVGVzdCB7CiAgIC8vIGFyZ3VtZW50
IGlzIHNldC4gIElmIHRoZSBkZWF0aCB0ZXN0IHNob3VsZCBiZSBza2lwcGVkLCB0aGUgcG9pbnRl
cgogICAvLyBpcyBzZXQgdG8gTlVMTDsgb3RoZXJ3aXNlLCBpdCBpcyBzZXQgdG8gdGhlIGFkZHJl
c3Mgb2YgYSBuZXcgY29uY3JldGUKICAgLy8gRGVhdGhUZXN0IG9iamVjdCB0aGF0IGNvbnRyb2xz
IHRoZSBleGVjdXRpb24gb2YgdGhlIGN1cnJlbnQgdGVzdC4KLSAgc3RhdGljIGJvb2wgQ3JlYXRl
KGNvbnN0IGNoYXIqIHN0YXRlbWVudCwgY29uc3QgUkUqIHJlZ2V4LAorICBzdGF0aWMgYm9vbCBD
cmVhdGUoY29uc3QgY2hhciogc3RhdGVtZW50LCBNYXRjaGVyPGNvbnN0IHN0ZDo6c3RyaW5nJj4g
bWF0Y2hlciwKICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGZpbGUsIGludCBsaW5l
LCBEZWF0aFRlc3QqKiB0ZXN0KTsKICAgRGVhdGhUZXN0KCk7CiAgIHZpcnR1YWwgfkRlYXRoVGVz
dCgpIHsgfQpAQCAtMTQ0LDIxICsxNDYsNDQgQEAgR1RFU1RfRElTQUJMRV9NU0NfV0FSTklOR1Nf
UE9QXygpICAvLyAgNDI1MQogY2xhc3MgRGVhdGhUZXN0RmFjdG9yeSB7CiAgcHVibGljOgogICB2
aXJ0dWFsIH5EZWF0aFRlc3RGYWN0b3J5KCkgeyB9Ci0gIHZpcnR1YWwgYm9vbCBDcmVhdGUoY29u
c3QgY2hhciogc3RhdGVtZW50LCBjb25zdCBSRSogcmVnZXgsCi0gICAgICAgICAgICAgICAgICAg
ICAgY29uc3QgY2hhciogZmlsZSwgaW50IGxpbmUsIERlYXRoVGVzdCoqIHRlc3QpID0gMDsKKyAg
dmlydHVhbCBib29sIENyZWF0ZShjb25zdCBjaGFyKiBzdGF0ZW1lbnQsCisgICAgICAgICAgICAg
ICAgICAgICAgTWF0Y2hlcjxjb25zdCBzdGQ6OnN0cmluZyY+IG1hdGNoZXIsIGNvbnN0IGNoYXIq
IGZpbGUsCisgICAgICAgICAgICAgICAgICAgICAgaW50IGxpbmUsIERlYXRoVGVzdCoqIHRlc3Qp
ID0gMDsKIH07CiAKIC8vIEEgY29uY3JldGUgRGVhdGhUZXN0RmFjdG9yeSBpbXBsZW1lbnRhdGlv
biBmb3Igbm9ybWFsIHVzZS4KIGNsYXNzIERlZmF1bHREZWF0aFRlc3RGYWN0b3J5IDogcHVibGlj
IERlYXRoVGVzdEZhY3RvcnkgewogIHB1YmxpYzoKLSAgdmlydHVhbCBib29sIENyZWF0ZShjb25z
dCBjaGFyKiBzdGF0ZW1lbnQsIGNvbnN0IFJFKiByZWdleCwKLSAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBjaGFyKiBmaWxlLCBpbnQgbGluZSwgRGVhdGhUZXN0KiogdGVzdCk7CisgIGJvb2wg
Q3JlYXRlKGNvbnN0IGNoYXIqIHN0YXRlbWVudCwgTWF0Y2hlcjxjb25zdCBzdGQ6OnN0cmluZyY+
IG1hdGNoZXIsCisgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGZpbGUsIGludCBsaW5lLCBEZWF0
aFRlc3QqKiB0ZXN0KSBvdmVycmlkZTsKIH07CiAKIC8vIFJldHVybnMgdHJ1ZSBpZiBleGl0X3N0
YXR1cyBkZXNjcmliZXMgYSBwcm9jZXNzIHRoYXQgd2FzIHRlcm1pbmF0ZWQKIC8vIGJ5IGEgc2ln
bmFsLCBvciBleGl0ZWQgbm9ybWFsbHkgd2l0aCBhIG5vbnplcm8gZXhpdCBjb2RlLgogR1RFU1Rf
QVBJXyBib29sIEV4aXRlZFVuc3VjY2Vzc2Z1bGx5KGludCBleGl0X3N0YXR1cyk7CiAKKy8vIEEg
c3RyaW5nIHBhc3NlZCB0byBFWFBFQ1RfREVBVEggKGV0Yy4pIGlzIGNhdWdodCBieSBvbmUgb2Yg
dGhlc2Ugb3ZlcmxvYWRzCisvLyBhbmQgaW50ZXJwcmV0ZWQgYXMgYSByZWdleCAocmF0aGVyIHRo
YW4gYW4gRXEgbWF0Y2hlcikgZm9yIGxlZ2FjeQorLy8gY29tcGF0aWJpbGl0eS4KK2lubGluZSBN
YXRjaGVyPGNvbnN0IDo6c3RkOjpzdHJpbmcmPiBNYWtlRGVhdGhUZXN0TWF0Y2hlcigKKyAgICA6
OnRlc3Rpbmc6OmludGVybmFsOjpSRSByZWdleCkgeworICByZXR1cm4gQ29udGFpbnNSZWdleChy
ZWdleC5wYXR0ZXJuKCkpOworfQoraW5saW5lIE1hdGNoZXI8Y29uc3QgOjpzdGQ6OnN0cmluZyY+
IE1ha2VEZWF0aFRlc3RNYXRjaGVyKGNvbnN0IGNoYXIqIHJlZ2V4KSB7CisgIHJldHVybiBDb250
YWluc1JlZ2V4KHJlZ2V4KTsKK30KK2lubGluZSBNYXRjaGVyPGNvbnN0IDo6c3RkOjpzdHJpbmcm
PiBNYWtlRGVhdGhUZXN0TWF0Y2hlcigKKyAgICBjb25zdCA6OnN0ZDo6c3RyaW5nJiByZWdleCkg
eworICByZXR1cm4gQ29udGFpbnNSZWdleChyZWdleCk7Cit9CisKKy8vIElmIGEgTWF0Y2hlcjxj
b25zdCA6OnN0ZDo6c3RyaW5nJj4gaXMgcGFzc2VkIHRvIEVYUEVDVF9ERUFUSCAoZXRjLiksIGl0
J3MKKy8vIHVzZWQgZGlyZWN0bHkuCitpbmxpbmUgTWF0Y2hlcjxjb25zdCA6OnN0ZDo6c3RyaW5n
Jj4gTWFrZURlYXRoVGVzdE1hdGNoZXIoCisgICAgTWF0Y2hlcjxjb25zdCA6OnN0ZDo6c3RyaW5n
Jj4gbWF0Y2hlcikgeworICByZXR1cm4gbWF0Y2hlcjsKK30KKwogLy8gVHJhcHMgQysrIGV4Y2Vw
dGlvbnMgZXNjYXBpbmcgc3RhdGVtZW50IGFuZCByZXBvcnRzIHRoZW0gYXMgdGVzdAogLy8gZmFp
bHVyZXMuIE5vdGUgdGhhdCB0cmFwcGluZyBTRUggZXhjZXB0aW9ucyBpcyBub3QgaW1wbGVtZW50
ZWQgaGVyZS4KICMgaWYgR1RFU1RfSEFTX0VYQ0VQVElPTlMKQEAgLTE4NiwzOCArMjExLDM4IEBA
IEdURVNUX0FQSV8gYm9vbCBFeGl0ZWRVbnN1Y2Nlc3NmdWxseShpbnQgZXhpdF9zdGF0dXMpOwog
CiAvLyBUaGlzIG1hY3JvIGlzIGZvciBpbXBsZW1lbnRpbmcgQVNTRVJUX0RFQVRIKiwgRVhQRUNU
X0RFQVRIKiwKIC8vIEFTU0VSVF9FWElUKiwgYW5kIEVYUEVDVF9FWElUKi4KLSMgZGVmaW5lIEdU
RVNUX0RFQVRIX1RFU1RfKHN0YXRlbWVudCwgcHJlZGljYXRlLCByZWdleCwgZmFpbCkgXAotICBH
VEVTVF9BTUJJR1VPVVNfRUxTRV9CTE9DS0VSXyBcCi0gIGlmICg6OnRlc3Rpbmc6OmludGVybmFs
OjpBbHdheXNUcnVlKCkpIHsgXAotICAgIGNvbnN0IDo6dGVzdGluZzo6aW50ZXJuYWw6OlJFJiBn
dGVzdF9yZWdleCA9IChyZWdleCk7IFwKLSAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpEZWF0aFRl
c3QqIGd0ZXN0X2R0OyBcCi0gICAgaWYgKCE6OnRlc3Rpbmc6OmludGVybmFsOjpEZWF0aFRlc3Q6
OkNyZWF0ZSgjc3RhdGVtZW50LCAmZ3Rlc3RfcmVnZXgsIFwKLSAgICAgICAgX19GSUxFX18sIF9f
TElORV9fLCAmZ3Rlc3RfZHQpKSB7IFwKLSAgICAgIGdvdG8gR1RFU1RfQ09OQ0FUX1RPS0VOXyhn
dGVzdF9sYWJlbF8sIF9fTElORV9fKTsgXAotICAgIH0gXAotICAgIGlmIChndGVzdF9kdCAhPSBO
VUxMKSB7IFwKLSAgICAgIDo6dGVzdGluZzo6aW50ZXJuYWw6OnNjb3BlZF9wdHI8IDo6dGVzdGlu
Zzo6aW50ZXJuYWw6OkRlYXRoVGVzdD4gXAotICAgICAgICAgIGd0ZXN0X2R0X3B0cihndGVzdF9k
dCk7IFwKLSAgICAgIHN3aXRjaCAoZ3Rlc3RfZHQtPkFzc3VtZVJvbGUoKSkgeyBcCi0gICAgICAg
IGNhc2UgOjp0ZXN0aW5nOjppbnRlcm5hbDo6RGVhdGhUZXN0OjpPVkVSU0VFX1RFU1Q6IFwKLSAg
ICAgICAgICBpZiAoIWd0ZXN0X2R0LT5QYXNzZWQocHJlZGljYXRlKGd0ZXN0X2R0LT5XYWl0KCkp
KSkgeyBcCi0gICAgICAgICAgICBnb3RvIEdURVNUX0NPTkNBVF9UT0tFTl8oZ3Rlc3RfbGFiZWxf
LCBfX0xJTkVfXyk7IFwKLSAgICAgICAgICB9IFwKLSAgICAgICAgICBicmVhazsgXAotICAgICAg
ICBjYXNlIDo6dGVzdGluZzo6aW50ZXJuYWw6OkRlYXRoVGVzdDo6RVhFQ1VURV9URVNUOiB7IFwK
LSAgICAgICAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpEZWF0aFRlc3Q6OlJldHVyblNlbnRpbmVs
IFwKLSAgICAgICAgICAgICAgZ3Rlc3Rfc2VudGluZWwoZ3Rlc3RfZHQpOyBcCi0gICAgICAgICAg
R1RFU1RfRVhFQ1VURV9ERUFUSF9URVNUX1NUQVRFTUVOVF8oc3RhdGVtZW50LCBndGVzdF9kdCk7
IFwKLSAgICAgICAgICBndGVzdF9kdC0+QWJvcnQoOjp0ZXN0aW5nOjppbnRlcm5hbDo6RGVhdGhU
ZXN0OjpURVNUX0RJRF9OT1RfRElFKTsgXAotICAgICAgICAgIGJyZWFrOyBcCi0gICAgICAgIH0g
XAotICAgICAgICBkZWZhdWx0OiBcCi0gICAgICAgICAgYnJlYWs7IFwKLSAgICAgIH0gXAotICAg
IH0gXAotICB9IGVsc2UgXAotICAgIEdURVNUX0NPTkNBVF9UT0tFTl8oZ3Rlc3RfbGFiZWxfLCBf
X0xJTkVfXyk6IFwKLSAgICAgIGZhaWwoOjp0ZXN0aW5nOjppbnRlcm5hbDo6RGVhdGhUZXN0OjpM
YXN0TWVzc2FnZSgpKQorI2RlZmluZSBHVEVTVF9ERUFUSF9URVNUXyhzdGF0ZW1lbnQsIHByZWRp
Y2F0ZSwgcmVnZXhfb3JfbWF0Y2hlciwgZmFpbCkgICAgICAgIFwKKyAgR1RFU1RfQU1CSUdVT1VT
X0VMU0VfQkxPQ0tFUl8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCisgIGlmICg6OnRlc3Rpbmc6OmludGVybmFsOjpBbHdheXNUcnVlKCkpIHsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIDo6dGVzdGluZzo6aW50ZXJuYWw6
OkRlYXRoVGVzdCogZ3Rlc3RfZHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
KyAgICBpZiAoITo6dGVzdGluZzo6aW50ZXJuYWw6OkRlYXRoVGVzdDo6Q3JlYXRlKCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAjc3RhdGVtZW50LCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAg
ICAgICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6TWFrZURlYXRoVGVzdE1hdGNoZXIocmVnZXhfb3Jf
bWF0Y2hlciksICAgICAgIFwKKyAgICAgICAgICAgIF9fRklMRV9fLCBfX0xJTkVfXywgJmd0ZXN0
X2R0KSkgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICBnb3RvIEdU
RVNUX0NPTkNBVF9UT0tFTl8oZ3Rlc3RfbGFiZWxfLCBfX0xJTkVfXyk7ICAgICAgICAgICAgICAg
ICAgICAgICAgXAorICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBpZiAoZ3Rlc3RfZHQgIT0g
bnVsbHB0cikgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCisgICAgICBzdGQ6OnVuaXF1ZV9wdHI8IDo6dGVzdGluZzo6aW50ZXJuYWw6OkRlYXRoVGVz
dD4gZ3Rlc3RfZHRfcHRyKGd0ZXN0X2R0KTsgXAorICAgICAgc3dpdGNoIChndGVzdF9kdC0+QXNz
dW1lUm9sZSgpKSB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAg
ICAgICAgY2FzZSA6OnRlc3Rpbmc6OmludGVybmFsOjpEZWF0aFRlc3Q6Ok9WRVJTRUVfVEVTVDog
ICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgaWYgKCFndGVzdF9kdC0+UGFzc2VkKHBy
ZWRpY2F0ZShndGVzdF9kdC0+V2FpdCgpKSkpIHsgICAgICAgICAgICAgICAgXAorICAgICAgICAg
ICAgZ290byBHVEVTVF9DT05DQVRfVE9LRU5fKGd0ZXN0X2xhYmVsXywgX19MSU5FX18pOyAgICAg
ICAgICAgICAgICAgIFwKKyAgICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgYnJlYWs7
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXAorICAgICAgICBjYXNlIDo6dGVzdGluZzo6aW50ZXJuYWw6OkRlYXRoVGVzdDo6RVhF
Q1VURV9URVNUOiB7ICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICA6OnRlc3Rpbmc6Omlu
dGVybmFsOjpEZWF0aFRlc3Q6OlJldHVyblNlbnRpbmVsIGd0ZXN0X3NlbnRpbmVsKCAgICAgICBc
CisgICAgICAgICAgICAgIGd0ZXN0X2R0KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgIEdURVNUX0VYRUNVVEVfREVBVEhf
VEVTVF9TVEFURU1FTlRfKHN0YXRlbWVudCwgZ3Rlc3RfZHQpOyAgICAgICAgICAgIFwKKyAgICAg
ICAgICBndGVzdF9kdC0+QWJvcnQoOjp0ZXN0aW5nOjppbnRlcm5hbDo6RGVhdGhUZXN0OjpURVNU
X0RJRF9OT1RfRElFKTsgICBcCisgICAgICAgICAgYnJlYWs7ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICB9ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAgICAgZGVmYXVsdDogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgYnJlYWs7ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAorICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB9ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisg
IH0gZWxzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAorICAgIEdURVNUX0NPTkNBVF9UT0tFTl8oZ3Rlc3RfbGFi
ZWxfLCBfX0xJTkVfXykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAg
OiBmYWlsKDo6dGVzdGluZzo6aW50ZXJuYWw6OkRlYXRoVGVzdDo6TGFzdE1lc3NhZ2UoKSkKIC8v
IFRoZSBzeW1ib2wgImZhaWwiIGhlcmUgZXhwYW5kcyB0byBzb21ldGhpbmcgaW50byB3aGljaCBh
IG1lc3NhZ2UKIC8vIGNhbiBiZSBzdHJlYW1lZC4KIApAQCAtMjI2LDE0ICsyNTEsMTMgQEAgR1RF
U1RfQVBJXyBib29sIEV4aXRlZFVuc3VjY2Vzc2Z1bGx5KGludCBleGl0X3N0YXR1cyk7CiAvLyBt
dXN0IGFjY2VwdCBhIHN0cmVhbWVkIG1lc3NhZ2UgZXZlbiB0aG91Z2ggdGhlIG1lc3NhZ2UgaXMg
bmV2ZXIgcHJpbnRlZC4KIC8vIFRoZSByZWdleCBvYmplY3QgaXMgbm90IGV2YWx1YXRlZCwgYnV0
IGl0IGlzIHVzZWQgdG8gcHJldmVudCAidW51c2VkIgogLy8gd2FybmluZ3MgYW5kIHRvIGF2b2lk
IGFuIGV4cHJlc3Npb24gdGhhdCBkb2Vzbid0IGNvbXBpbGUgaW4gZGVidWcgbW9kZS4KLSNkZWZp
bmUgR1RFU1RfRVhFQ1VURV9TVEFURU1FTlRfKHN0YXRlbWVudCwgcmVnZXgpICAgICAgICAgICAg
IFwKLSAgR1RFU1RfQU1CSUdVT1VTX0VMU0VfQkxPQ0tFUl8gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKLSAgaWYgKDo6dGVzdGluZzo6aW50ZXJuYWw6OkFsd2F5c1RydWUoKSkgeyAg
ICAgICAgICAgICAgICAgICAgIFwKLSAgICBHVEVTVF9TVVBQUkVTU19VTlJFQUNIQUJMRV9DT0RF
X1dBUk5JTkdfQkVMT1dfKHN0YXRlbWVudCk7IFwKLSAgfSBlbHNlIGlmICghOjp0ZXN0aW5nOjpp
bnRlcm5hbDo6QWx3YXlzVHJ1ZSgpKSB7ICAgICAgICAgICAgIFwKLSAgICBjb25zdCA6OnRlc3Rp
bmc6OmludGVybmFsOjpSRSYgZ3Rlc3RfcmVnZXggPSAocmVnZXgpOyAgICAgIFwKLSAgICBzdGF0
aWNfY2FzdDx2b2lkPihndGVzdF9yZWdleCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
LSAgfSBlbHNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKKyNkZWZpbmUgR1RFU1RfRVhFQ1VURV9TVEFURU1FTlRfKHN0YXRlbWVudCwgcmVn
ZXhfb3JfbWF0Y2hlcikgICAgXAorICBHVEVTVF9BTUJJR1VPVVNfRUxTRV9CTE9DS0VSXyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgIGlmICg6OnRlc3Rpbmc6OmludGVybmFs
OjpBbHdheXNUcnVlKCkpIHsgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBHVEVTVF9TVVBQ
UkVTU19VTlJFQUNIQUJMRV9DT0RFX1dBUk5JTkdfQkVMT1dfKHN0YXRlbWVudCk7ICAgXAorICB9
IGVsc2UgaWYgKCE6OnRlc3Rpbmc6OmludGVybmFsOjpBbHdheXNUcnVlKCkpIHsgICAgICAgICAg
ICAgICBcCisgICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6TWFrZURlYXRoVGVzdE1hdGNoZXIocmVn
ZXhfb3JfbWF0Y2hlcik7IFwKKyAgfSBlbHNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIDo6dGVzdGluZzo6TWVzc2FnZSgpCiAK
IC8vIEEgY2xhc3MgcmVwcmVzZW50aW5nIHRoZSBwYXJzZWQgY29udGVudHMgb2YgdGhlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rl
c3QvaW50ZXJuYWwvZ3Rlc3QtZmlsZXBhdGguaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29v
Z2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1maWxlcGF0aC5oCmluZGV4
IGFlMzhkOTViZjg0NGZhOWRjMjE3MzljZjgyMTI3NmQ1YjM0MTdlM2EuLmMxMWIxMDE1MTZlNTMw
YWFhOTUxMGI2NWQ5N2RkNjdiYmMwNjkwYTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRf
cGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1maWxlcGF0
aC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9n
dGVzdC9pbnRlcm5hbC9ndGVzdC1maWxlcGF0aC5oCkBAIC0xMTAsNyArMTEwLDcgQEAgY2xhc3Mg
R1RFU1RfQVBJXyBGaWxlUGF0aCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IEZpbGVQYXRoJiBiYXNlX25hbWUsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGV4dGVuc2lvbik7CiAKLSAgLy8gUmV0dXJu
cyB0cnVlIGlmZiB0aGUgcGF0aCBpcyAiIi4KKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5
IGlmIHRoZSBwYXRoIGlzICIiLgogICBib29sIElzRW1wdHkoKSBjb25zdCB7IHJldHVybiBwYXRo
bmFtZV8uZW1wdHkoKTsgfQogCiAgIC8vIElmIGlucHV0IG5hbWUgaGFzIGEgdHJhaWxpbmcgc2Vw
YXJhdG9yIGNoYXJhY3RlciwgcmVtb3ZlcyBpdCBhbmQgcmV0dXJucwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFs
L2d0ZXN0LWludGVybmFsLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3Jj
L2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtaW50ZXJuYWwuaAppbmRleCBiNzYyZjYxZmM1
M2MzZGI5Y2ZiNzUzOTQwZDkxYjVkNTRhYjM2MzU3Li42YmFkODc4MGI1YTA2M2M1ZDg3ZTA1OGM3
Mjk5ZjhhZDBlZDUzODM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2ds
ZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtaW50ZXJuYWwuaAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvaW50ZXJu
YWwvZ3Rlc3QtaW50ZXJuYWwuaApAQCAtNTMsMTEgKzUzLDEzIEBACiAjaW5jbHVkZSA8Y3R5cGUu
aD4KICNpbmNsdWRlIDxmbG9hdC5oPgogI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPGNz
dGRpbnQ+CiAjaW5jbHVkZSA8aW9tYW5pcD4KICNpbmNsdWRlIDxsaW1pdHM+CiAjaW5jbHVkZSA8
bWFwPgogI2luY2x1ZGUgPHNldD4KICNpbmNsdWRlIDxzdHJpbmc+CisjaW5jbHVkZSA8dHlwZV90
cmFpdHM+CiAjaW5jbHVkZSA8dmVjdG9yPgogCiAjaW5jbHVkZSAiZ3Rlc3QvZ3Rlc3QtbWVzc2Fn
ZS5oIgpAQCAtNzcsOSArNzksMTcgQEAKICNkZWZpbmUgR1RFU1RfQ09OQ0FUX1RPS0VOX0lNUExf
KGZvbywgYmFyKSBmb28gIyMgYmFyCiAKIC8vIFN0cmluZ2lmaWVzIGl0cyBhcmd1bWVudC4KLSNk
ZWZpbmUgR1RFU1RfU1RSSU5HSUZZXyhuYW1lKSAjbmFtZQorLy8gV29yayBhcm91bmQgYSBidWcg
aW4gdmlzdWFsIHN0dWRpbyB3aGljaCBkb2Vzbid0IGFjY2VwdCBjb2RlIGxpa2UgdGhpczoKKy8v
CisvLyAgICNkZWZpbmUgR1RFU1RfU1RSSU5HSUZZXyhuYW1lKSAjbmFtZQorLy8gICAjZGVmaW5l
IE1BQ1JPKGEsIGIsIGMpIC4uLiBHVEVTVF9TVFJJTkdJRllfKGEpIC4uLgorLy8gICBNQUNSTygs
IHgsIHkpCisvLworLy8gQ29tcGxhaW5pbmcgYWJvdXQgdGhlIGFyZ3VtZW50IHRvIEdURVNUX1NU
UklOR0lGWV8gYmVpbmcgZW1wdHkuCisvLyBUaGlzIGlzIGFsbG93ZWQgYnkgdGhlIHNwZWMuCisj
ZGVmaW5lIEdURVNUX1NUUklOR0lGWV9IRUxQRVJfKG5hbWUsIC4uLikgI25hbWUKKyNkZWZpbmUg
R1RFU1RfU1RSSU5HSUZZXyguLi4pIEdURVNUX1NUUklOR0lGWV9IRUxQRVJfKF9fVkFfQVJHU19f
LCApCiAKLWNsYXNzIFByb3RvY29sTWVzc2FnZTsKIG5hbWVzcGFjZSBwcm90bzIgeyBjbGFzcyBN
ZXNzYWdlOyB9CiAKIG5hbWVzcGFjZSB0ZXN0aW5nIHsKQEAgLTkxLDcgKzEwMSw3IEBAIGNsYXNz
IE1lc3NhZ2U7ICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFJlcHJlc2VudHMgYSBmYWlsdXJl
IG1lc3NhZ2UuCiBjbGFzcyBUZXN0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBSZXBy
ZXNlbnRzIGEgdGVzdC4KIGNsYXNzIFRlc3RJbmZvOyAgICAgICAgICAgICAgICAgICAgICAgIC8v
IEluZm9ybWF0aW9uIGFib3V0IGEgdGVzdC4KIGNsYXNzIFRlc3RQYXJ0UmVzdWx0OyAgICAgICAg
ICAgICAgICAgIC8vIFJlc3VsdCBvZiBhIHRlc3QgcGFydC4KLWNsYXNzIFVuaXRUZXN0OyAgICAg
ICAgICAgICAgICAgICAgICAgIC8vIEEgY29sbGVjdGlvbiBvZiB0ZXN0IGNhc2VzLgorY2xhc3Mg
VW5pdFRlc3Q7ICAgICAgICAgICAgICAgICAgICAgICAgLy8gQSBjb2xsZWN0aW9uIG9mIHRlc3Qg
c3VpdGVzLgogCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KIDo6c3RkOjpzdHJpbmcgUHJpbnRUb1N0
cmluZyhjb25zdCBUJiB2YWx1ZSk7CkBAIC0xMDYsMzQgKzExNiwyMiBAQCBjbGFzcyBVbml0VGVz
dEltcGw7ICAgICAgICAgICAgICAgICAgICAvLyBPcGFxdWUgaW1wbGVtZW50YXRpb24gb2YgVW5p
dFRlc3QKIC8vIHN0YWNrIHRyYWNlLgogR1RFU1RfQVBJXyBleHRlcm4gY29uc3QgY2hhciBrU3Rh
Y2tUcmFjZU1hcmtlcltdOwogCi0vLyBUd28gb3ZlcmxvYWRlZCBoZWxwZXJzIGZvciBjaGVja2lu
ZyBhdCBjb21waWxlIHRpbWUgd2hldGhlciBhbgotLy8gZXhwcmVzc2lvbiBpcyBhIG51bGwgcG9p
bnRlciBsaXRlcmFsIChpLmUuIE5VTEwgb3IgYW55IDAtdmFsdWVkCi0vLyBjb21waWxlLXRpbWUg
aW50ZWdyYWwgY29uc3RhbnQpLiAgVGhlaXIgcmV0dXJuIHZhbHVlcyBoYXZlCi0vLyBkaWZmZXJl
bnQgc2l6ZXMsIHNvIHdlIGNhbiB1c2Ugc2l6ZW9mKCkgdG8gdGVzdCB3aGljaCB2ZXJzaW9uIGlz
Ci0vLyBwaWNrZWQgYnkgdGhlIGNvbXBpbGVyLiAgVGhlc2UgaGVscGVycyBoYXZlIG5vIGltcGxl
bWVudGF0aW9ucywgYXMKLS8vIHdlIG9ubHkgbmVlZCB0aGVpciBzaWduYXR1cmVzLgotLy8KLS8v
IEdpdmVuIElzTnVsbExpdGVyYWxIZWxwZXIoeCksIHRoZSBjb21waWxlciB3aWxsIHBpY2sgdGhl
IGZpcnN0Ci0vLyB2ZXJzaW9uIGlmIHggY2FuIGJlIGltcGxpY2l0bHkgY29udmVydGVkIHRvIFNl
Y3JldCosIGFuZCBwaWNrIHRoZQotLy8gc2Vjb25kIHZlcnNpb24gb3RoZXJ3aXNlLiAgU2luY2Ug
U2VjcmV0IGlzIGEgc2VjcmV0IGFuZCBpbmNvbXBsZXRlCi0vLyB0eXBlLCB0aGUgb25seSBleHBy
ZXNzaW9uIGEgdXNlciBjYW4gd3JpdGUgdGhhdCBoYXMgdHlwZSBTZWNyZXQqIGlzCi0vLyBhIG51
bGwgcG9pbnRlciBsaXRlcmFsLiAgVGhlcmVmb3JlLCB3ZSBrbm93IHRoYXQgeCBpcyBhIG51bGwK
LS8vIHBvaW50ZXIgbGl0ZXJhbCBpZiBhbmQgb25seSBpZiB0aGUgZmlyc3QgdmVyc2lvbiBpcyBw
aWNrZWQgYnkgdGhlCi0vLyBjb21waWxlci4KLWNoYXIgSXNOdWxsTGl0ZXJhbEhlbHBlcihTZWNy
ZXQqIHApOwotY2hhciAoJklzTnVsbExpdGVyYWxIZWxwZXIoLi4uKSlbMl07ICAvLyBOT0xJTlQK
LQotLy8gQSBjb21waWxlLXRpbWUgYm9vbCBjb25zdGFudCB0aGF0IGlzIHRydWUgaWYgYW5kIG9u
bHkgaWYgeCBpcyBhCi0vLyBudWxsIHBvaW50ZXIgbGl0ZXJhbCAoaS5lLiBOVUxMIG9yIGFueSAw
LXZhbHVlZCBjb21waWxlLXRpbWUKLS8vIGludGVncmFsIGNvbnN0YW50KS4KLSNpZmRlZiBHVEVT
VF9FTExJUFNJU19ORUVEU19QT0RfCi0vLyBXZSBsb3NlIHN1cHBvcnQgZm9yIE5VTEwgZGV0ZWN0
aW9uIHdoZXJlIHRoZSBjb21waWxlciBkb2Vzbid0IGxpa2UKLS8vIHBhc3Npbmcgbm9uLVBPRCBj
bGFzc2VzIHRocm91Z2ggZWxsaXBzaXMgKC4uLikuCi0jIGRlZmluZSBHVEVTVF9JU19OVUxMX0xJ
VEVSQUxfKHgpIGZhbHNlCi0jZWxzZQotIyBkZWZpbmUgR1RFU1RfSVNfTlVMTF9MSVRFUkFMXyh4
KSBcCi0gICAgKHNpemVvZig6OnRlc3Rpbmc6OmludGVybmFsOjpJc051bGxMaXRlcmFsSGVscGVy
KHgpKSA9PSAxKQotI2VuZGlmICAvLyBHVEVTVF9FTExJUFNJU19ORUVEU19QT0RfCisvLyBBbiBJ
Z25vcmVkVmFsdWUgb2JqZWN0IGNhbiBiZSBpbXBsaWNpdGx5IGNvbnN0cnVjdGVkIGZyb20gQU5Z
IHZhbHVlLgorY2xhc3MgSWdub3JlZFZhbHVlIHsKKyAgc3RydWN0IFNpbmsge307CisgcHVibGlj
OgorICAvLyBUaGlzIGNvbnN0cnVjdG9yIHRlbXBsYXRlIGFsbG93cyBhbnkgdmFsdWUgdG8gYmUg
aW1wbGljaXRseQorICAvLyBjb252ZXJ0ZWQgdG8gSWdub3JlZFZhbHVlLiAgVGhlIG9iamVjdCBo
YXMgbm8gZGF0YSBtZW1iZXIgYW5kCisgIC8vIGRvZXNuJ3QgdHJ5IHRvIHJlbWVtYmVyIGFueXRo
aW5nIGFib3V0IHRoZSBhcmd1bWVudC4gIFdlCisgIC8vIGRlbGliZXJhdGVseSBvbWl0IHRoZSAn
ZXhwbGljaXQnIGtleXdvcmQgaW4gb3JkZXIgdG8gYWxsb3cgdGhlCisgIC8vIGNvbnZlcnNpb24g
dG8gYmUgaW1wbGljaXQuCisgIC8vIERpc2FibGUgdGhlIGNvbnZlcnNpb24gaWYgVCBhbHJlYWR5
IGhhcyBhIG1hZ2ljYWwgY29udmVyc2lvbiBvcGVyYXRvci4KKyAgLy8gT3RoZXJ3aXNlIHdlIGdl
dCBhbWJpZ3VpdHkuCisgIHRlbXBsYXRlIDx0eXBlbmFtZSBULAorICAgICAgICAgICAgdHlwZW5h
bWUgc3RkOjplbmFibGVfaWY8IXN0ZDo6aXNfY29udmVydGlibGU8VCwgU2luaz46OnZhbHVlLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50Pjo6dHlwZSA9IDA+CisgIEln
bm9yZWRWYWx1ZShjb25zdCBUJiAvKiBpZ25vcmVkICovKSB7fSAgLy8gTk9MSU5UKHJ1bnRpbWUv
ZXhwbGljaXQpCit9OwogCiAvLyBBcHBlbmRzIHRoZSB1c2VyLXN1cHBsaWVkIG1lc3NhZ2UgdG8g
dGhlIEdvb2dsZS1UZXN0LWdlbmVyYXRlZCBtZXNzYWdlLgogR1RFU1RfQVBJXyBzdGQ6OnN0cmlu
ZyBBcHBlbmRVc2VyTWVzc2FnZSgKQEAgLTIwMSw3ICsxOTksNyBAQCBHVEVTVF9BUElfIHN0ZDo6
c3RyaW5nIERpZmZTdHJpbmdzKGNvbnN0IHN0ZDo6c3RyaW5nJiBsZWZ0LAogLy8gICBleHBlY3Rl
ZF92YWx1ZTogICAgICAiNSIKIC8vICAgYWN0dWFsX3ZhbHVlOiAgICAgICAgIjYiCiAvLwotLy8g
VGhlIGlnbm9yaW5nX2Nhc2UgcGFyYW1ldGVyIGlzIHRydWUgaWZmIHRoZSBhc3NlcnRpb24gaXMg
YQorLy8gVGhlIGlnbm9yaW5nX2Nhc2UgcGFyYW1ldGVyIGlzIHRydWUgaWYgYW5kIG9ubHkgaWYg
dGhlIGFzc2VydGlvbiBpcyBhCiAvLyAqX1NUUkNBU0VFUSouICBXaGVuIGl0J3MgdHJ1ZSwgdGhl
IHN0cmluZyAiIChpZ25vcmluZyBjYXNlKSIgd2lsbAogLy8gYmUgaW5zZXJ0ZWQgaW50byB0aGUg
bWVzc2FnZS4KIEdURVNUX0FQSV8gQXNzZXJ0aW9uUmVzdWx0IEVxRmFpbHVyZShjb25zdCBjaGFy
KiBleHBlY3RlZF9leHByZXNzaW9uLApAQCAtMzMwLDE1ICszMjgsMTUgQEAgY2xhc3MgRmxvYXRp
bmdQb2ludCB7CiAgIC8vIFJldHVybnMgdGhlIHNpZ24gYml0IG9mIHRoaXMgbnVtYmVyLgogICBC
aXRzIHNpZ25fYml0KCkgY29uc3QgeyByZXR1cm4ga1NpZ25CaXRNYXNrICYgdV8uYml0c187IH0K
IAotICAvLyBSZXR1cm5zIHRydWUgaWZmIHRoaXMgaXMgTkFOIChub3QgYSBudW1iZXIpLgorICAv
LyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhpcyBpcyBOQU4gKG5vdCBhIG51bWJlciku
CiAgIGJvb2wgaXNfbmFuKCkgY29uc3QgewogICAgIC8vIEl0J3MgYSBOQU4gaWYgdGhlIGV4cG9u
ZW50IGJpdHMgYXJlIGFsbCBvbmVzIGFuZCB0aGUgZnJhY3Rpb24KICAgICAvLyBiaXRzIGFyZSBu
b3QgZW50aXJlbHkgemVyb3MuCiAgICAgcmV0dXJuIChleHBvbmVudF9iaXRzKCkgPT0ga0V4cG9u
ZW50Qml0TWFzaykgJiYgKGZyYWN0aW9uX2JpdHMoKSAhPSAwKTsKICAgfQogCi0gIC8vIFJldHVy
bnMgdHJ1ZSBpZmYgdGhpcyBudW1iZXIgaXMgYXQgbW9zdCBrTWF4VWxwcyBVTFAncyBhd2F5IGZy
b20KLSAgLy8gcmhzLiAgSW4gcGFydGljdWxhciwgdGhpcyBmdW5jdGlvbjoKKyAgLy8gUmV0dXJu
cyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoaXMgbnVtYmVyIGlzIGF0IG1vc3Qga01heFVscHMgVUxQ
J3MgYXdheQorICAvLyBmcm9tIHJocy4gIEluIHBhcnRpY3VsYXIsIHRoaXMgZnVuY3Rpb246CiAg
IC8vCiAgIC8vICAgLSByZXR1cm5zIGZhbHNlIGlmIGVpdGhlciBudW1iZXIgaXMgKG9yIGJvdGgg
YXJlKSBOQU4uCiAgIC8vICAgLSB0cmVhdHMgcmVhbGx5IGxhcmdlIG51bWJlcnMgYXMgYWxtb3N0
IGVxdWFsIHRvIGluZmluaXR5LgpAQCAtNDA5LDcgKzQwNyw3IEBAIHR5cGVkZWYgRmxvYXRpbmdQ
b2ludDxmbG9hdD4gRmxvYXQ7CiB0eXBlZGVmIEZsb2F0aW5nUG9pbnQ8ZG91YmxlPiBEb3VibGU7
CiAKIC8vIEluIG9yZGVyIHRvIGNhdGNoIHRoZSBtaXN0YWtlIG9mIHB1dHRpbmcgdGVzdHMgdGhh
dCB1c2UgZGlmZmVyZW50Ci0vLyB0ZXN0IGZpeHR1cmUgY2xhc3NlcyBpbiB0aGUgc2FtZSB0ZXN0
IGNhc2UsIHdlIG5lZWQgdG8gYXNzaWduCisvLyB0ZXN0IGZpeHR1cmUgY2xhc3NlcyBpbiB0aGUg
c2FtZSB0ZXN0IHN1aXRlLCB3ZSBuZWVkIHRvIGFzc2lnbgogLy8gdW5pcXVlIElEcyB0byBmaXh0
dXJlIGNsYXNzZXMgYW5kIGNvbXBhcmUgdGhlbS4gIFRoZSBUeXBlSWQgdHlwZSBpcwogLy8gdXNl
ZCB0byBob2xkIHN1Y2ggSURzLiAgVGhlIHVzZXIgc2hvdWxkIHRyZWF0IFR5cGVJZCBhcyBhbiBv
cGFxdWUKIC8vIHR5cGU6IHRoZSBvbmx5IG9wZXJhdGlvbiBhbGxvd2VkIG9uIFR5cGVJZCB2YWx1
ZXMgaXMgdG8gY29tcGFyZQpAQCAtNDY5LDcgKzQ2Nyw3IEBAIGNsYXNzIFRlc3RGYWN0b3J5QmFz
ZSB7CiB0ZW1wbGF0ZSA8Y2xhc3MgVGVzdENsYXNzPgogY2xhc3MgVGVzdEZhY3RvcnlJbXBsIDog
cHVibGljIFRlc3RGYWN0b3J5QmFzZSB7CiAgcHVibGljOgotICB2aXJ0dWFsIFRlc3QqIENyZWF0
ZVRlc3QoKSB7IHJldHVybiBuZXcgVGVzdENsYXNzOyB9CisgIFRlc3QqIENyZWF0ZVRlc3QoKSBv
dmVycmlkZSB7IHJldHVybiBuZXcgVGVzdENsYXNzOyB9CiB9OwogCiAjaWYgR1RFU1RfT1NfV0lO
RE9XUwpAQCAtNDg1LDkgKzQ4Myw5IEBAIEdURVNUX0FQSV8gQXNzZXJ0aW9uUmVzdWx0IElzSFJF
U1VMVEZhaWx1cmUoY29uc3QgY2hhciogZXhwciwKIAogI2VuZGlmICAvLyBHVEVTVF9PU19XSU5E
T1dTCiAKLS8vIFR5cGVzIG9mIFNldFVwVGVzdENhc2UoKSBhbmQgVGVhckRvd25UZXN0Q2FzZSgp
IGZ1bmN0aW9ucy4KLXR5cGVkZWYgdm9pZCAoKlNldFVwVGVzdENhc2VGdW5jKSgpOwotdHlwZWRl
ZiB2b2lkICgqVGVhckRvd25UZXN0Q2FzZUZ1bmMpKCk7CisvLyBUeXBlcyBvZiBTZXRVcFRlc3RT
dWl0ZSgpIGFuZCBUZWFyRG93blRlc3RTdWl0ZSgpIGZ1bmN0aW9ucy4KK3VzaW5nIFNldFVwVGVz
dFN1aXRlRnVuYyA9IHZvaWQgKCopKCk7Cit1c2luZyBUZWFyRG93blRlc3RTdWl0ZUZ1bmMgPSB2
b2lkICgqKSgpOwogCiBzdHJ1Y3QgQ29kZUxvY2F0aW9uIHsKICAgQ29kZUxvY2F0aW9uKGNvbnN0
IHN0ZDo6c3RyaW5nJiBhX2ZpbGUsIGludCBhX2xpbmUpCkBAIC00OTcsMTIgKzQ5NSw2NCBAQCBz
dHJ1Y3QgQ29kZUxvY2F0aW9uIHsKICAgaW50IGxpbmU7CiB9OwogCisvLyAgSGVscGVyIHRvIGlk
ZW50aWZ5IHdoaWNoIHNldHVwIGZ1bmN0aW9uIGZvciBUZXN0Q2FzZSAvIFRlc3RTdWl0ZSB0byBj
YWxsLgorLy8gIE9ubHkgb25lIGZ1bmN0aW9uIGlzIGFsbG93ZWQsIGVpdGhlciBUZXN0Q2FzZSBv
ciBUZXN0U3V0ZSBidXQgbm90IGJvdGguCisKKy8vIFV0aWxpdHkgZnVuY3Rpb25zIHRvIGhlbHAg
U3VpdGVBcGlSZXNvbHZlcgordXNpbmcgU2V0VXBUZWFyRG93blN1aXRlRnVuY1R5cGUgPSB2b2lk
ICgqKSgpOworCitpbmxpbmUgU2V0VXBUZWFyRG93blN1aXRlRnVuY1R5cGUgR2V0Tm90RGVmYXVs
dE9yTnVsbCgKKyAgICBTZXRVcFRlYXJEb3duU3VpdGVGdW5jVHlwZSBhLCBTZXRVcFRlYXJEb3du
U3VpdGVGdW5jVHlwZSBkZWYpIHsKKyAgcmV0dXJuIGEgPT0gZGVmID8gbnVsbHB0ciA6IGE7Cit9
CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBUPgorLy8gIE5vdGUgdGhhdCBTdWl0ZUFwaVJlc29sdmVy
IGluaGVyaXRzIGZyb20gVCBiZWNhdXNlCisvLyAgU2V0VXBUZXN0U3VpdGUoKS9UZWFyRG93blRl
c3RTdWl0ZSgpIGNvdWxkIGJlIHByb3RlY3RlZC4gVGhzIHdheQorLy8gIFN1aXRlQXBpUmVzb2x2
ZXIgY2FuIGFjY2VzcyB0aGVtLgorc3RydWN0IFN1aXRlQXBpUmVzb2x2ZXIgOiBUIHsKKyAgLy8g
dGVzdGluZzo6VGVzdCBpcyBvbmx5IGZvcndhcmQgZGVjbGFyZWQgYXQgdGhpcyBwb2ludC4gU28g
d2UgbWFrZSBpdCBhCisgIC8vIGRlcGVuZGVuZCBjbGFzcyBmb3IgdGhlIGNvbXBpbGVyIHRvIGJl
IE9LIHdpdGggaXQuCisgIHVzaW5nIFRlc3QgPQorICAgICAgdHlwZW5hbWUgc3RkOjpjb25kaXRp
b25hbDxzaXplb2YoVCkgIT0gMCwgOjp0ZXN0aW5nOjpUZXN0LCB2b2lkPjo6dHlwZTsKKworICBz
dGF0aWMgU2V0VXBUZWFyRG93blN1aXRlRnVuY1R5cGUgR2V0U2V0VXBDYXNlT3JTdWl0ZShjb25z
dCBjaGFyKiBmaWxlbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaW50IGxpbmVfbnVtKSB7CisgICAgU2V0VXBUZWFyRG93blN1aXRl
RnVuY1R5cGUgdGVzdF9jYXNlX2ZwID0KKyAgICAgICAgR2V0Tm90RGVmYXVsdE9yTnVsbCgmVDo6
U2V0VXBUZXN0Q2FzZSwgJlRlc3Q6OlNldFVwVGVzdENhc2UpOworICAgIFNldFVwVGVhckRvd25T
dWl0ZUZ1bmNUeXBlIHRlc3Rfc3VpdGVfZnAgPQorICAgICAgICBHZXROb3REZWZhdWx0T3JOdWxs
KCZUOjpTZXRVcFRlc3RTdWl0ZSwgJlRlc3Q6OlNldFVwVGVzdFN1aXRlKTsKKworICAgIEdURVNU
X0NIRUNLXyghdGVzdF9jYXNlX2ZwIHx8ICF0ZXN0X3N1aXRlX2ZwKQorICAgICAgICA8PCAiVGVz
dCBjYW4gbm90IHByb3ZpZGUgYm90aCBTZXRVcFRlc3RTdWl0ZSBhbmQgU2V0VXBUZXN0Q2FzZSwg
cGxlYXNlICIKKyAgICAgICAgICAgIm1ha2Ugc3VyZSB0aGVyZSBpcyBvbmx5IG9uZSBwcmVzZW50
IGF0ICIKKyAgICAgICAgPDwgZmlsZW5hbWUgPDwgIjoiIDw8IGxpbmVfbnVtOworCisgICAgcmV0
dXJuIHRlc3RfY2FzZV9mcCAhPSBudWxscHRyID8gdGVzdF9jYXNlX2ZwIDogdGVzdF9zdWl0ZV9m
cDsKKyAgfQorCisgIHN0YXRpYyBTZXRVcFRlYXJEb3duU3VpdGVGdW5jVHlwZSBHZXRUZWFyRG93
bkNhc2VPclN1aXRlKGNvbnN0IGNoYXIqIGZpbGVuYW1lLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbGluZV9udW0pIHsKKyAg
ICBTZXRVcFRlYXJEb3duU3VpdGVGdW5jVHlwZSB0ZXN0X2Nhc2VfZnAgPQorICAgICAgICBHZXRO
b3REZWZhdWx0T3JOdWxsKCZUOjpUZWFyRG93blRlc3RDYXNlLCAmVGVzdDo6VGVhckRvd25UZXN0
Q2FzZSk7CisgICAgU2V0VXBUZWFyRG93blN1aXRlRnVuY1R5cGUgdGVzdF9zdWl0ZV9mcCA9Cisg
ICAgICAgIEdldE5vdERlZmF1bHRPck51bGwoJlQ6OlRlYXJEb3duVGVzdFN1aXRlLCAmVGVzdDo6
VGVhckRvd25UZXN0U3VpdGUpOworCisgICAgR1RFU1RfQ0hFQ0tfKCF0ZXN0X2Nhc2VfZnAgfHwg
IXRlc3Rfc3VpdGVfZnApCisgICAgICAgIDw8ICJUZXN0IGNhbiBub3QgcHJvdmlkZSBib3RoIFRl
YXJEb3duVGVzdFN1aXRlIGFuZCBUZWFyRG93blRlc3RDYXNlLCIKKyAgICAgICAgICAgIiBwbGVh
c2UgbWFrZSBzdXJlIHRoZXJlIGlzIG9ubHkgb25lIHByZXNlbnQgYXQiCisgICAgICAgIDw8IGZp
bGVuYW1lIDw8ICI6IiA8PCBsaW5lX251bTsKKworICAgIHJldHVybiB0ZXN0X2Nhc2VfZnAgIT0g
bnVsbHB0ciA/IHRlc3RfY2FzZV9mcCA6IHRlc3Rfc3VpdGVfZnA7CisgIH0KK307CisKIC8vIENy
ZWF0ZXMgYSBuZXcgVGVzdEluZm8gb2JqZWN0IGFuZCByZWdpc3RlcnMgaXQgd2l0aCBHb29nbGUg
VGVzdDsKIC8vIHJldHVybnMgdGhlIGNyZWF0ZWQgb2JqZWN0LgogLy8KIC8vIEFyZ3VtZW50czoK
IC8vCi0vLyAgIHRlc3RfY2FzZV9uYW1lOiAgIG5hbWUgb2YgdGhlIHRlc3QgY2FzZQorLy8gICB0
ZXN0X3N1aXRlX25hbWU6ICAgbmFtZSBvZiB0aGUgdGVzdCBzdWl0ZQogLy8gICBuYW1lOiAgICAg
ICAgICAgICBuYW1lIG9mIHRoZSB0ZXN0CiAvLyAgIHR5cGVfcGFyYW0gICAgICAgIHRoZSBuYW1l
IG9mIHRoZSB0ZXN0J3MgdHlwZSBwYXJhbWV0ZXIsIG9yIE5VTEwgaWYKIC8vICAgICAgICAgICAg
ICAgICAgICAgdGhpcyBpcyBub3QgYSB0eXBlZCBvciBhIHR5cGUtcGFyYW1ldGVyaXplZCB0ZXN0
LgpAQCAtNTEwLDIxICs1NjAsMTYgQEAgc3RydWN0IENvZGVMb2NhdGlvbiB7CiAvLyAgICAgICAg
ICAgICAgICAgICAgIG9yIE5VTEwgaWYgdGhpcyBpcyBub3QgYSB0eXBlLXBhcmFtZXRlcml6ZWQg
dGVzdC4KIC8vICAgY29kZV9sb2NhdGlvbjogICAgY29kZSBsb2NhdGlvbiB3aGVyZSB0aGUgdGVz
dCBpcyBkZWZpbmVkCiAvLyAgIGZpeHR1cmVfY2xhc3NfaWQ6IElEIG9mIHRoZSB0ZXN0IGZpeHR1
cmUgY2xhc3MKLS8vICAgc2V0X3VwX3RjOiAgICAgICAgcG9pbnRlciB0byB0aGUgZnVuY3Rpb24g
dGhhdCBzZXRzIHVwIHRoZSB0ZXN0IGNhc2UKLS8vICAgdGVhcl9kb3duX3RjOiAgICAgcG9pbnRl
ciB0byB0aGUgZnVuY3Rpb24gdGhhdCB0ZWFycyBkb3duIHRoZSB0ZXN0IGNhc2UKKy8vICAgc2V0
X3VwX3RjOiAgICAgICAgcG9pbnRlciB0byB0aGUgZnVuY3Rpb24gdGhhdCBzZXRzIHVwIHRoZSB0
ZXN0IHN1aXRlCisvLyAgIHRlYXJfZG93bl90YzogICAgIHBvaW50ZXIgdG8gdGhlIGZ1bmN0aW9u
IHRoYXQgdGVhcnMgZG93biB0aGUgdGVzdCBzdWl0ZQogLy8gICBmYWN0b3J5OiAgICAgICAgICBw
b2ludGVyIHRvIHRoZSBmYWN0b3J5IHRoYXQgY3JlYXRlcyBhIHRlc3Qgb2JqZWN0LgogLy8gICAg
ICAgICAgICAgICAgICAgICBUaGUgbmV3bHkgY3JlYXRlZCBUZXN0SW5mbyBpbnN0YW5jZSB3aWxs
IGFzc3VtZQogLy8gICAgICAgICAgICAgICAgICAgICBvd25lcnNoaXAgb2YgdGhlIGZhY3Rvcnkg
b2JqZWN0LgogR1RFU1RfQVBJXyBUZXN0SW5mbyogTWFrZUFuZFJlZ2lzdGVyVGVzdEluZm8oCi0g
ICAgY29uc3QgY2hhciogdGVzdF9jYXNlX25hbWUsCi0gICAgY29uc3QgY2hhciogbmFtZSwKLSAg
ICBjb25zdCBjaGFyKiB0eXBlX3BhcmFtLAotICAgIGNvbnN0IGNoYXIqIHZhbHVlX3BhcmFtLAot
ICAgIENvZGVMb2NhdGlvbiBjb2RlX2xvY2F0aW9uLAotICAgIFR5cGVJZCBmaXh0dXJlX2NsYXNz
X2lkLAotICAgIFNldFVwVGVzdENhc2VGdW5jIHNldF91cF90YywKLSAgICBUZWFyRG93blRlc3RD
YXNlRnVuYyB0ZWFyX2Rvd25fdGMsCi0gICAgVGVzdEZhY3RvcnlCYXNlKiBmYWN0b3J5KTsKKyAg
ICBjb25zdCBjaGFyKiB0ZXN0X3N1aXRlX25hbWUsIGNvbnN0IGNoYXIqIG5hbWUsIGNvbnN0IGNo
YXIqIHR5cGVfcGFyYW0sCisgICAgY29uc3QgY2hhciogdmFsdWVfcGFyYW0sIENvZGVMb2NhdGlv
biBjb2RlX2xvY2F0aW9uLAorICAgIFR5cGVJZCBmaXh0dXJlX2NsYXNzX2lkLCBTZXRVcFRlc3RT
dWl0ZUZ1bmMgc2V0X3VwX3RjLAorICAgIFRlYXJEb3duVGVzdFN1aXRlRnVuYyB0ZWFyX2Rvd25f
dGMsIFRlc3RGYWN0b3J5QmFzZSogZmFjdG9yeSk7CiAKIC8vIElmICpwc3RyIHN0YXJ0cyB3aXRo
IHRoZSBnaXZlbiBwcmVmaXgsIG1vZGlmaWVzICpwc3RyIHRvIGJlIHJpZ2h0CiAvLyBwYXN0IHRo
ZSBwcmVmaXggYW5kIHJldHVybnMgdHJ1ZTsgb3RoZXJ3aXNlIGxlYXZlcyAqcHN0ciB1bmNoYW5n
ZWQKQEAgLTUzNiwxOSArNTgxLDIwIEBAIEdURVNUX0FQSV8gYm9vbCBTa2lwUHJlZml4KGNvbnN0
IGNoYXIqIHByZWZpeCwgY29uc3QgY2hhcioqIHBzdHIpOwogR1RFU1RfRElTQUJMRV9NU0NfV0FS
TklOR1NfUFVTSF8oNDI1MSBcCiAvKiBjbGFzcyBBIG5lZWRzIHRvIGhhdmUgZGxsLWludGVyZmFj
ZSB0byBiZSB1c2VkIGJ5IGNsaWVudHMgb2YgY2xhc3MgQiAqLykKIAotLy8gU3RhdGUgb2YgdGhl
IGRlZmluaXRpb24gb2YgYSB0eXBlLXBhcmFtZXRlcml6ZWQgdGVzdCBjYXNlLgotY2xhc3MgR1RF
U1RfQVBJXyBUeXBlZFRlc3RDYXNlUFN0YXRlIHsKKy8vIFN0YXRlIG9mIHRoZSBkZWZpbml0aW9u
IG9mIGEgdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3Qgc3VpdGUuCitjbGFzcyBHVEVTVF9BUElfIFR5
cGVkVGVzdFN1aXRlUFN0YXRlIHsKICBwdWJsaWM6Ci0gIFR5cGVkVGVzdENhc2VQU3RhdGUoKSA6
IHJlZ2lzdGVyZWRfKGZhbHNlKSB7fQorICBUeXBlZFRlc3RTdWl0ZVBTdGF0ZSgpIDogcmVnaXN0
ZXJlZF8oZmFsc2UpIHt9CiAKICAgLy8gQWRkcyB0aGUgZ2l2ZW4gdGVzdCBuYW1lIHRvIGRlZmlu
ZWRfdGVzdF9uYW1lc18gYW5kIHJldHVybiB0cnVlCi0gIC8vIGlmIHRoZSB0ZXN0IGNhc2UgaGFz
bid0IGJlZW4gcmVnaXN0ZXJlZDsgb3RoZXJ3aXNlIGFib3J0cyB0aGUKKyAgLy8gaWYgdGhlIHRl
c3Qgc3VpdGUgaGFzbid0IGJlZW4gcmVnaXN0ZXJlZDsgb3RoZXJ3aXNlIGFib3J0cyB0aGUKICAg
Ly8gcHJvZ3JhbS4KICAgYm9vbCBBZGRUZXN0TmFtZShjb25zdCBjaGFyKiBmaWxlLCBpbnQgbGlu
ZSwgY29uc3QgY2hhciogY2FzZV9uYW1lLAogICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIq
IHRlc3RfbmFtZSkgewogICAgIGlmIChyZWdpc3RlcmVkXykgewotICAgICAgZnByaW50ZihzdGRl
cnIsICIlcyBUZXN0ICVzIG11c3QgYmUgZGVmaW5lZCBiZWZvcmUgIgotICAgICAgICAgICAgICAi
UkVHSVNURVJfVFlQRURfVEVTVF9DQVNFX1AoJXMsIC4uLikuXG4iLAorICAgICAgZnByaW50Zihz
dGRlcnIsCisgICAgICAgICAgICAgICIlcyBUZXN0ICVzIG11c3QgYmUgZGVmaW5lZCBiZWZvcmUg
IgorICAgICAgICAgICAgICAiUkVHSVNURVJfVFlQRURfVEVTVF9TVUlURV9QKCVzLCAuLi4pLlxu
IiwKICAgICAgICAgICAgICAgRm9ybWF0RmlsZUxvY2F0aW9uKGZpbGUsIGxpbmUpLmNfc3RyKCks
IHRlc3RfbmFtZSwgY2FzZV9uYW1lKTsKICAgICAgIGZmbHVzaChzdGRlcnIpOwogICAgICAgcG9z
aXg6OkFib3J0KCk7CkBAIC01NzEsOCArNjE3LDkgQEAgY2xhc3MgR1RFU1RfQVBJXyBUeXBlZFRl
c3RDYXNlUFN0YXRlIHsKICAgLy8gVmVyaWZpZXMgdGhhdCByZWdpc3RlcmVkX3Rlc3RzIG1hdGNo
IHRoZSB0ZXN0IG5hbWVzIGluCiAgIC8vIGRlZmluZWRfdGVzdF9uYW1lc187IHJldHVybnMgcmVn
aXN0ZXJlZF90ZXN0cyBpZiBzdWNjZXNzZnVsLCBvcgogICAvLyBhYm9ydHMgdGhlIHByb2dyYW0g
b3RoZXJ3aXNlLgotICBjb25zdCBjaGFyKiBWZXJpZnlSZWdpc3RlcmVkVGVzdE5hbWVzKAotICAg
ICAgY29uc3QgY2hhciogZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIqIHJlZ2lzdGVyZWRfdGVz
dHMpOworICBjb25zdCBjaGFyKiBWZXJpZnlSZWdpc3RlcmVkVGVzdE5hbWVzKGNvbnN0IGNoYXIq
IHRlc3Rfc3VpdGVfbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBjaGFyKiBmaWxlLCBpbnQgbGluZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCBjaGFyKiByZWdpc3RlcmVkX3Rlc3RzKTsKIAogIHByaXZhdGU6
CiAgIHR5cGVkZWYgOjpzdGQ6Om1hcDxzdGQ6OnN0cmluZywgQ29kZUxvY2F0aW9uPiBSZWdpc3Rl
cmVkVGVzdHNNYXA7CkBAIC01ODEsMTQgKzYyOCwxOSBAQCBjbGFzcyBHVEVTVF9BUElfIFR5cGVk
VGVzdENhc2VQU3RhdGUgewogICBSZWdpc3RlcmVkVGVzdHNNYXAgcmVnaXN0ZXJlZF90ZXN0c187
CiB9OwogCisvLyAgTGVnYWN5IEFQSSBpcyBkZXByZWNhdGVkIGJ1dCBzdGlsbCBhdmFpbGFibGUK
KyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUElfCit1c2luZyBUeXBlZFRl
c3RDYXNlUFN0YXRlID0gVHlwZWRUZXN0U3VpdGVQU3RhdGU7CisjZW5kaWYgIC8vICBHVEVTVF9S
RU1PVkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KKwogR1RFU1RfRElTQUJMRV9NU0NfV0FSTklOR1Nf
UE9QXygpICAvLyAgNDI1MQogCiAvLyBTa2lwcyB0byB0aGUgZmlyc3Qgbm9uLXNwYWNlIGNoYXIg
YWZ0ZXIgdGhlIGZpcnN0IGNvbW1hIGluICdzdHInOwogLy8gcmV0dXJucyBOVUxMIGlmIG5vIGNv
bW1hIGlzIGZvdW5kIGluICdzdHInLgogaW5saW5lIGNvbnN0IGNoYXIqIFNraXBDb21tYShjb25z
dCBjaGFyKiBzdHIpIHsKICAgY29uc3QgY2hhciogY29tbWEgPSBzdHJjaHIoc3RyLCAnLCcpOwot
ICBpZiAoY29tbWEgPT0gTlVMTCkgewotICAgIHJldHVybiBOVUxMOworICBpZiAoY29tbWEgPT0g
bnVsbHB0cikgeworICAgIHJldHVybiBudWxscHRyOwogICB9CiAgIHdoaWxlIChJc1NwYWNlKCoo
Kytjb21tYSkpKSB7fQogICByZXR1cm4gY29tbWE7CkBAIC01OTgsNyArNjUwLDcgQEAgaW5saW5l
IGNvbnN0IGNoYXIqIFNraXBDb21tYShjb25zdCBjaGFyKiBzdHIpIHsKIC8vIHRoZSBlbnRpcmUg
c3RyaW5nIGlmIGl0IGNvbnRhaW5zIG5vIGNvbW1hLgogaW5saW5lIHN0ZDo6c3RyaW5nIEdldFBy
ZWZpeFVudGlsQ29tbWEoY29uc3QgY2hhciogc3RyKSB7CiAgIGNvbnN0IGNoYXIqIGNvbW1hID0g
c3RyY2hyKHN0ciwgJywnKTsKLSAgcmV0dXJuIGNvbW1hID09IE5VTEwgPyBzdHIgOiBzdGQ6OnN0
cmluZyhzdHIsIGNvbW1hKTsKKyAgcmV0dXJuIGNvbW1hID09IG51bGxwdHIgPyBzdHIgOiBzdGQ6
OnN0cmluZyhzdHIsIGNvbW1hKTsKIH0KIAogLy8gU3BsaXRzIGEgZ2l2ZW4gc3RyaW5nIG9uIGEg
Z2l2ZW4gZGVsaW1pdGVyLCBwb3B1bGF0aW5nIGEgZ2l2ZW4KQEAgLTYyMSw3ICs2NzMsNyBAQCBz
dHJ1Y3QgTmFtZUdlbmVyYXRvclNlbGVjdG9yIHsKIH07CiAKIHRlbXBsYXRlIDx0eXBlbmFtZSBO
YW1lR2VuZXJhdG9yPgotdm9pZCBHZW5lcmF0ZU5hbWVzUmVjdXJzaXZlbHkoVHlwZXMwLCBzdGQ6
OnZlY3RvcjxzdGQ6OnN0cmluZz4qLCBpbnQpIHt9Cit2b2lkIEdlbmVyYXRlTmFtZXNSZWN1cnNp
dmVseShpbnRlcm5hbDo6Tm9uZSwgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+KiwgaW50KSB7fQog
CiB0ZW1wbGF0ZSA8dHlwZW5hbWUgTmFtZUdlbmVyYXRvciwgdHlwZW5hbWUgVHlwZXM+CiB2b2lk
IEdlbmVyYXRlTmFtZXNSZWN1cnNpdmVseShUeXBlcywgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+
KiByZXN1bHQsIGludCBpKSB7CkBAIC02NDgsNyArNzAwLDcgQEAgdGVtcGxhdGUgPEdURVNUX1RF
TVBMQVRFXyBGaXh0dXJlLCBjbGFzcyBUZXN0U2VsLCB0eXBlbmFtZSBUeXBlcz4KIGNsYXNzIFR5
cGVQYXJhbWV0ZXJpemVkVGVzdCB7CiAgcHVibGljOgogICAvLyAnaW5kZXgnIGlzIHRoZSBpbmRl
eCBvZiB0aGUgdGVzdCBpbiB0aGUgdHlwZSBsaXN0ICdUeXBlcycKLSAgLy8gc3BlY2lmaWVkIGlu
IElOU1RBTlRJQVRFX1RZUEVEX1RFU1RfQ0FTRV9QKFByZWZpeCwgVGVzdENhc2UsCisgIC8vIHNw
ZWNpZmllZCBpbiBJTlNUQU5USUFURV9UWVBFRF9URVNUX1NVSVRFX1AoUHJlZml4LCBUZXN0U3Vp
dGUsCiAgIC8vIFR5cGVzKS4gIFZhbGlkIHZhbHVlcyBmb3IgJ2luZGV4JyBhcmUgWzAsIE4gLSAx
XSB3aGVyZSBOIGlzIHRoZQogICAvLyBsZW5ndGggb2YgVHlwZXMuCiAgIHN0YXRpYyBib29sIFJl
Z2lzdGVyKGNvbnN0IGNoYXIqIHByZWZpeCwgY29uc3QgQ29kZUxvY2F0aW9uJiBjb2RlX2xvY2F0
aW9uLApAQCAtNjYzLDEzICs3MTUsMTcgQEAgY2xhc3MgVHlwZVBhcmFtZXRlcml6ZWRUZXN0IHsK
ICAgICAvLyBsaXN0LgogICAgIE1ha2VBbmRSZWdpc3RlclRlc3RJbmZvKAogICAgICAgICAoc3Rk
OjpzdHJpbmcocHJlZml4KSArIChwcmVmaXhbMF0gPT0gJ1wwJyA/ICIiIDogIi8iKSArIGNhc2Vf
bmFtZSArCi0gICAgICAgICAiLyIgKyB0eXBlX25hbWVzW2luZGV4XSkKKyAgICAgICAgICIvIiAr
IHR5cGVfbmFtZXNbc3RhdGljX2Nhc3Q8c2l6ZV90PihpbmRleCldKQogICAgICAgICAgICAgLmNf
c3RyKCksCiAgICAgICAgIFN0cmlwVHJhaWxpbmdTcGFjZXMoR2V0UHJlZml4VW50aWxDb21tYSh0
ZXN0X25hbWVzKSkuY19zdHIoKSwKICAgICAgICAgR2V0VHlwZU5hbWU8VHlwZT4oKS5jX3N0cigp
LAotICAgICAgICBOVUxMLCAgLy8gTm8gdmFsdWUgcGFyYW1ldGVyLgotICAgICAgICBjb2RlX2xv
Y2F0aW9uLCBHZXRUeXBlSWQ8Rml4dHVyZUNsYXNzPigpLCBUZXN0Q2xhc3M6OlNldFVwVGVzdENh
c2UsCi0gICAgICAgIFRlc3RDbGFzczo6VGVhckRvd25UZXN0Q2FzZSwgbmV3IFRlc3RGYWN0b3J5
SW1wbDxUZXN0Q2xhc3M+KTsKKyAgICAgICAgbnVsbHB0ciwgIC8vIE5vIHZhbHVlIHBhcmFtZXRl
ci4KKyAgICAgICAgY29kZV9sb2NhdGlvbiwgR2V0VHlwZUlkPEZpeHR1cmVDbGFzcz4oKSwKKyAg
ICAgICAgU3VpdGVBcGlSZXNvbHZlcjxUZXN0Q2xhc3M+OjpHZXRTZXRVcENhc2VPclN1aXRlKAor
ICAgICAgICAgICAgY29kZV9sb2NhdGlvbi5maWxlLmNfc3RyKCksIGNvZGVfbG9jYXRpb24ubGlu
ZSksCisgICAgICAgIFN1aXRlQXBpUmVzb2x2ZXI8VGVzdENsYXNzPjo6R2V0VGVhckRvd25DYXNl
T3JTdWl0ZSgKKyAgICAgICAgICAgIGNvZGVfbG9jYXRpb24uZmlsZS5jX3N0cigpLCBjb2RlX2xv
Y2F0aW9uLmxpbmUpLAorICAgICAgICBuZXcgVGVzdEZhY3RvcnlJbXBsPFRlc3RDbGFzcz4pOwog
CiAgICAgLy8gTmV4dCwgcmVjdXJzZXMgKGF0IGNvbXBpbGUgdGltZSkgd2l0aCB0aGUgdGFpbCBv
ZiB0aGUgdHlwZSBsaXN0LgogICAgIHJldHVybiBUeXBlUGFyYW1ldGVyaXplZFRlc3Q8Rml4dHVy
ZSwgVGVzdFNlbCwKQEAgLTY4NCw3ICs3NDAsNyBAQCBjbGFzcyBUeXBlUGFyYW1ldGVyaXplZFRl
c3QgewogCiAvLyBUaGUgYmFzZSBjYXNlIGZvciB0aGUgY29tcGlsZSB0aW1lIHJlY3Vyc2lvbi4K
IHRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gRml4dHVyZSwgY2xhc3MgVGVzdFNlbD4KLWNsYXNz
IFR5cGVQYXJhbWV0ZXJpemVkVGVzdDxGaXh0dXJlLCBUZXN0U2VsLCBUeXBlczA+IHsKK2NsYXNz
IFR5cGVQYXJhbWV0ZXJpemVkVGVzdDxGaXh0dXJlLCBUZXN0U2VsLCBpbnRlcm5hbDo6Tm9uZT4g
ewogIHB1YmxpYzoKICAgc3RhdGljIGJvb2wgUmVnaXN0ZXIoY29uc3QgY2hhciogLypwcmVmaXgq
LywgY29uc3QgQ29kZUxvY2F0aW9uJiwKICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hh
ciogLypjYXNlX25hbWUqLywgY29uc3QgY2hhciogLyp0ZXN0X25hbWVzKi8sCkBAIC02OTUsMTgg
Kzc1MSwyNCBAQCBjbGFzcyBUeXBlUGFyYW1ldGVyaXplZFRlc3Q8Rml4dHVyZSwgVGVzdFNlbCwg
VHlwZXMwPiB7CiAgIH0KIH07CiAKLS8vIFR5cGVQYXJhbWV0ZXJpemVkVGVzdENhc2U8Rml4dHVy
ZSwgVGVzdHMsIFR5cGVzPjo6UmVnaXN0ZXIoKQorR1RFU1RfQVBJXyB2b2lkIFJlZ2lzdGVyVHlw
ZVBhcmFtZXRlcml6ZWRUZXN0U3VpdGUoY29uc3QgY2hhciogdGVzdF9zdWl0ZV9uYW1lLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29kZUxvY2F0
aW9uIGNvZGVfbG9jYXRpb24pOworR1RFU1RfQVBJXyB2b2lkIFJlZ2lzdGVyVHlwZVBhcmFtZXRl
cml6ZWRUZXN0U3VpdGVJbnN0YW50aWF0aW9uKAorICAgIGNvbnN0IGNoYXIqIGNhc2VfbmFtZSk7
CisKKy8vIFR5cGVQYXJhbWV0ZXJpemVkVGVzdFN1aXRlPEZpeHR1cmUsIFRlc3RzLCBUeXBlcz46
OlJlZ2lzdGVyKCkKIC8vIHJlZ2lzdGVycyAqYWxsIGNvbWJpbmF0aW9ucyogb2YgJ1Rlc3RzJyBh
bmQgJ1R5cGVzJyB3aXRoIEdvb2dsZQogLy8gVGVzdC4gIFRoZSByZXR1cm4gdmFsdWUgaXMgaW5z
aWduaWZpY2FudCAtIHdlIGp1c3QgbmVlZCB0byByZXR1cm4KIC8vIHNvbWV0aGluZyBzdWNoIHRo
YXQgd2UgY2FuIGNhbGwgdGhpcyBmdW5jdGlvbiBpbiBhIG5hbWVzcGFjZSBzY29wZS4KIHRlbXBs
YXRlIDxHVEVTVF9URU1QTEFURV8gRml4dHVyZSwgdHlwZW5hbWUgVGVzdHMsIHR5cGVuYW1lIFR5
cGVzPgotY2xhc3MgVHlwZVBhcmFtZXRlcml6ZWRUZXN0Q2FzZSB7CitjbGFzcyBUeXBlUGFyYW1l
dGVyaXplZFRlc3RTdWl0ZSB7CiAgcHVibGljOgogICBzdGF0aWMgYm9vbCBSZWdpc3Rlcihjb25z
dCBjaGFyKiBwcmVmaXgsIENvZGVMb2NhdGlvbiBjb2RlX2xvY2F0aW9uLAotICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBUeXBlZFRlc3RDYXNlUFN0YXRlKiBzdGF0ZSwgY29uc3QgY2hhciog
Y2FzZV9uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBUeXBlZFRlc3RTdWl0ZVBT
dGF0ZSogc3RhdGUsIGNvbnN0IGNoYXIqIGNhc2VfbmFtZSwKICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3QgY2hhciogdGVzdF9uYW1lcywKICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
c3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+JiB0eXBlX25hbWVzID0KICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEdlbmVyYXRlTmFtZXM8RGVmYXVsdE5hbWVHZW5lcmF0b3IsIFR5cGVzPigpKSB7
CisgICAgUmVnaXN0ZXJUeXBlUGFyYW1ldGVyaXplZFRlc3RTdWl0ZUluc3RhbnRpYXRpb24oY2Fz
ZV9uYW1lKTsKICAgICBzdGQ6OnN0cmluZyB0ZXN0X25hbWUgPSBTdHJpcFRyYWlsaW5nU3BhY2Vz
KAogICAgICAgICBHZXRQcmVmaXhVbnRpbENvbW1hKHRlc3RfbmFtZXMpKTsKICAgICBpZiAoIXN0
YXRlLT5UZXN0RXhpc3RzKHRlc3RfbmFtZSkpIHsKQEAgLTcyNiwyMCArNzg4LDIwIEBAIGNsYXNz
IFR5cGVQYXJhbWV0ZXJpemVkVGVzdENhc2UgewogICAgICAgICBwcmVmaXgsIHRlc3RfbG9jYXRp
b24sIGNhc2VfbmFtZSwgdGVzdF9uYW1lcywgMCwgdHlwZV9uYW1lcyk7CiAKICAgICAvLyBOZXh0
LCByZWN1cnNlcyAoYXQgY29tcGlsZSB0aW1lKSB3aXRoIHRoZSB0YWlsIG9mIHRoZSB0ZXN0IGxp
c3QuCi0gICAgcmV0dXJuIFR5cGVQYXJhbWV0ZXJpemVkVGVzdENhc2U8Rml4dHVyZSwgdHlwZW5h
bWUgVGVzdHM6OlRhaWwsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVHlw
ZXM+OjpSZWdpc3RlcihwcmVmaXgsIGNvZGVfbG9jYXRpb24sCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZSwgY2FzZV9uYW1lLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2tpcENv
bW1hKHRlc3RfbmFtZXMpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdHlwZV9uYW1lcyk7CisgICAgcmV0dXJuIFR5cGVQYXJhbWV0ZXJpemVk
VGVzdFN1aXRlPEZpeHR1cmUsIHR5cGVuYW1lIFRlc3RzOjpUYWlsLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBUeXBlcz46OlJlZ2lzdGVyKHByZWZpeCwgY29kZV9sb2Nh
dGlvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzdGF0ZSwgY2FzZV9uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFNraXBDb21tYSh0ZXN0X25hbWVzKSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX25hbWVzKTsK
ICAgfQogfTsKIAogLy8gVGhlIGJhc2UgY2FzZSBmb3IgdGhlIGNvbXBpbGUgdGltZSByZWN1cnNp
b24uCiB0ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIEZpeHR1cmUsIHR5cGVuYW1lIFR5cGVzPgot
Y2xhc3MgVHlwZVBhcmFtZXRlcml6ZWRUZXN0Q2FzZTxGaXh0dXJlLCBUZW1wbGF0ZXMwLCBUeXBl
cz4geworY2xhc3MgVHlwZVBhcmFtZXRlcml6ZWRUZXN0U3VpdGU8Rml4dHVyZSwgaW50ZXJuYWw6
Ok5vbmUsIFR5cGVzPiB7CiAgcHVibGljOgogICBzdGF0aWMgYm9vbCBSZWdpc3Rlcihjb25zdCBj
aGFyKiAvKnByZWZpeCovLCBjb25zdCBDb2RlTG9jYXRpb24mLAotICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBUeXBlZFRlc3RDYXNlUFN0YXRlKiAvKnN0YXRlKi8sCisgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IFR5cGVkVGVzdFN1aXRlUFN0YXRlKiAvKnN0YXRlKi8sCiAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIC8qY2FzZV9uYW1lKi8sIGNvbnN0IGNoYXIqIC8q
dGVzdF9uYW1lcyovLAogICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6OnZlY3Rvcjxz
dGQ6OnN0cmluZz4mID0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZDo6dmVjdG9yPHN0
ZDo6c3RyaW5nPigpIC8qdHlwZV9uYW1lcyovKSB7CkBAIC03ODAsNiArODQyLDE2IEBAIHN0cnVj
dCBHVEVTVF9BUElfIENvbnN0Q2hhclB0ciB7CiAgIGNvbnN0IGNoYXIqIHZhbHVlOwogfTsKIAor
Ly8gSGVscGVyIGZvciBkZWNsYXJpbmcgc3RkOjpzdHJpbmcgd2l0aGluICdpZicgc3RhdGVtZW50
CisvLyBpbiBwcmUgQysrMTcgYnVpbGQgZW52aXJvbm1lbnQuCitzdHJ1Y3QgVHJ1ZVdpdGhTdHJp
bmcgeworICBUcnVlV2l0aFN0cmluZygpID0gZGVmYXVsdDsKKyAgZXhwbGljaXQgVHJ1ZVdpdGhT
dHJpbmcoY29uc3QgY2hhciogc3RyKSA6IHZhbHVlKHN0cikge30KKyAgZXhwbGljaXQgVHJ1ZVdp
dGhTdHJpbmcoY29uc3Qgc3RkOjpzdHJpbmcmIHN0cikgOiB2YWx1ZShzdHIpIHt9CisgIGV4cGxp
Y2l0IG9wZXJhdG9yIGJvb2woKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CisgIHN0ZDo6c3RyaW5n
IHZhbHVlOworfTsKKwogLy8gQSBzaW1wbGUgTGluZWFyIENvbmdydWVudGlhbCBHZW5lcmF0b3Ig
Zm9yIGdlbmVyYXRpbmcgcmFuZG9tCiAvLyBudW1iZXJzIHdpdGggYSB1bmlmb3JtIGRpc3RyaWJ1
dGlvbi4gIFVubGlrZSByYW5kKCkgYW5kIHNyYW5kKCksIGl0CiAvLyBkb2Vzbid0IHVzZSBnbG9i
YWwgc3RhdGUgKGFuZCB0aGVyZWZvcmUgY2FuJ3QgaW50ZXJmZXJlIHdpdGggdXNlcgpAQCAtNzg3
LDEzNSArODU5LDMwIEBAIHN0cnVjdCBHVEVTVF9BUElfIENvbnN0Q2hhclB0ciB7CiAvLyBidXQg
aXQncyBnb29kIGVub3VnaCBmb3Igb3VyIHB1cnBvc2VzLgogY2xhc3MgR1RFU1RfQVBJXyBSYW5k
b20gewogIHB1YmxpYzoKLSAgc3RhdGljIGNvbnN0IFVJbnQzMiBrTWF4UmFuZ2UgPSAxdSA8PCAz
MTsKKyAgc3RhdGljIGNvbnN0IHVpbnQzMl90IGtNYXhSYW5nZSA9IDF1IDw8IDMxOwogCi0gIGV4
cGxpY2l0IFJhbmRvbShVSW50MzIgc2VlZCkgOiBzdGF0ZV8oc2VlZCkge30KKyAgZXhwbGljaXQg
UmFuZG9tKHVpbnQzMl90IHNlZWQpIDogc3RhdGVfKHNlZWQpIHt9CiAKLSAgdm9pZCBSZXNlZWQo
VUludDMyIHNlZWQpIHsgc3RhdGVfID0gc2VlZDsgfQorICB2b2lkIFJlc2VlZCh1aW50MzJfdCBz
ZWVkKSB7IHN0YXRlXyA9IHNlZWQ7IH0KIAogICAvLyBHZW5lcmF0ZXMgYSByYW5kb20gbnVtYmVy
IGZyb20gWzAsIHJhbmdlKS4gIENyYXNoZXMgaWYgJ3JhbmdlJyBpcwogICAvLyAwIG9yIGdyZWF0
ZXIgdGhhbiBrTWF4UmFuZ2UuCi0gIFVJbnQzMiBHZW5lcmF0ZShVSW50MzIgcmFuZ2UpOworICB1
aW50MzJfdCBHZW5lcmF0ZSh1aW50MzJfdCByYW5nZSk7CiAKICBwcml2YXRlOgotICBVSW50MzIg
c3RhdGVfOworICB1aW50MzJfdCBzdGF0ZV87CiAgIEdURVNUX0RJU0FMTE9XX0NPUFlfQU5EX0FT
U0lHTl8oUmFuZG9tKTsKIH07CiAKLS8vIERlZmluaW5nIGEgdmFyaWFibGUgb2YgdHlwZSBDb21w
aWxlQXNzZXJ0VHlwZXNFcXVhbDxUMSwgVDI+IHdpbGwgY2F1c2UgYQotLy8gY29tcGlsZXIgZXJy
b3IgaWZmIFQxIGFuZCBUMiBhcmUgZGlmZmVyZW50IHR5cGVzLgotdGVtcGxhdGUgPHR5cGVuYW1l
IFQxLCB0eXBlbmFtZSBUMj4KLXN0cnVjdCBDb21waWxlQXNzZXJ0VHlwZXNFcXVhbDsKLQotdGVt
cGxhdGUgPHR5cGVuYW1lIFQ+Ci1zdHJ1Y3QgQ29tcGlsZUFzc2VydFR5cGVzRXF1YWw8VCwgVD4g
ewotfTsKLQotLy8gUmVtb3ZlcyB0aGUgcmVmZXJlbmNlIGZyb20gYSB0eXBlIGlmIGl0IGlzIGEg
cmVmZXJlbmNlIHR5cGUsCi0vLyBvdGhlcndpc2UgbGVhdmVzIGl0IHVuY2hhbmdlZC4gIFRoaXMg
aXMgdGhlIHNhbWUgYXMKLS8vIHRyMTo6cmVtb3ZlX3JlZmVyZW5jZSwgd2hpY2ggaXMgbm90IHdp
ZGVseSBhdmFpbGFibGUgeWV0LgotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1zdHJ1Y3QgUmVtb3Zl
UmVmZXJlbmNlIHsgdHlwZWRlZiBUIHR5cGU7IH07ICAvLyBOT0xJTlQKLXRlbXBsYXRlIDx0eXBl
bmFtZSBUPgotc3RydWN0IFJlbW92ZVJlZmVyZW5jZTxUJj4geyB0eXBlZGVmIFQgdHlwZTsgfTsg
IC8vIE5PTElOVAotCi0vLyBBIGhhbmR5IHdyYXBwZXIgYXJvdW5kIFJlbW92ZVJlZmVyZW5jZSB0
aGF0IHdvcmtzIHdoZW4gdGhlIGFyZ3VtZW50Ci0vLyBUIGRlcGVuZHMgb24gdGVtcGxhdGUgcGFy
YW1ldGVycy4KLSNkZWZpbmUgR1RFU1RfUkVNT1ZFX1JFRkVSRU5DRV8oVCkgXAotICAgIHR5cGVu
YW1lIDo6dGVzdGluZzo6aW50ZXJuYWw6OlJlbW92ZVJlZmVyZW5jZTxUPjo6dHlwZQotCi0vLyBS
ZW1vdmVzIGNvbnN0IGZyb20gYSB0eXBlIGlmIGl0IGlzIGEgY29uc3QgdHlwZSwgb3RoZXJ3aXNl
IGxlYXZlcwotLy8gaXQgdW5jaGFuZ2VkLiAgVGhpcyBpcyB0aGUgc2FtZSBhcyB0cjE6OnJlbW92
ZV9jb25zdCwgd2hpY2ggaXMgbm90Ci0vLyB3aWRlbHkgYXZhaWxhYmxlIHlldC4KLXRlbXBsYXRl
IDx0eXBlbmFtZSBUPgotc3RydWN0IFJlbW92ZUNvbnN0IHsgdHlwZWRlZiBUIHR5cGU7IH07ICAv
LyBOT0xJTlQKLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotc3RydWN0IFJlbW92ZUNvbnN0PGNvbnN0
IFQ+IHsgdHlwZWRlZiBUIHR5cGU7IH07ICAvLyBOT0xJTlQKLQotLy8gTVNWQyA4LjAsIFN1biBD
KyssIGFuZCBJQk0gWEwgQysrIGhhdmUgYSBidWcgd2hpY2ggY2F1c2VzIHRoZSBhYm92ZQotLy8g
ZGVmaW5pdGlvbiB0byBmYWlsIHRvIHJlbW92ZSB0aGUgY29uc3QgaW4gJ2NvbnN0IGludFszXScg
YW5kICdjb25zdAotLy8gY2hhclszXVs0XScuICBUaGUgZm9sbG93aW5nIHNwZWNpYWxpemF0aW9u
IHdvcmtzIGFyb3VuZCB0aGUgYnVnLgotdGVtcGxhdGUgPHR5cGVuYW1lIFQsIHNpemVfdCBOPgot
c3RydWN0IFJlbW92ZUNvbnN0PGNvbnN0IFRbTl0+IHsKLSAgdHlwZWRlZiB0eXBlbmFtZSBSZW1v
dmVDb25zdDxUPjo6dHlwZSB0eXBlW05dOwotfTsKLQotI2lmIGRlZmluZWQoX01TQ19WRVIpICYm
IF9NU0NfVkVSIDwgMTQwMAotLy8gVGhpcyBpcyB0aGUgb25seSBzcGVjaWFsaXphdGlvbiB0aGF0
IGFsbG93cyBWQysrIDcuMSB0byByZW1vdmUgY29uc3QgaW4KLS8vICdjb25zdCBpbnRbM10gYW5k
ICdjb25zdCBpbnRbM11bNF0nLiAgSG93ZXZlciwgaXQgY2F1c2VzIHRyb3VibGUgd2l0aCBHQ0MK
LS8vIGFuZCB0aHVzIG5lZWRzIHRvIGJlIGNvbmRpdGlvbmFsbHkgY29tcGlsZWQuCi10ZW1wbGF0
ZSA8dHlwZW5hbWUgVCwgc2l6ZV90IE4+Ci1zdHJ1Y3QgUmVtb3ZlQ29uc3Q8VFtOXT4gewotICB0
eXBlZGVmIHR5cGVuYW1lIFJlbW92ZUNvbnN0PFQ+Ojp0eXBlIHR5cGVbTl07Ci19OwotI2VuZGlm
Ci0KLS8vIEEgaGFuZHkgd3JhcHBlciBhcm91bmQgUmVtb3ZlQ29uc3QgdGhhdCB3b3JrcyB3aGVu
IHRoZSBhcmd1bWVudAotLy8gVCBkZXBlbmRzIG9uIHRlbXBsYXRlIHBhcmFtZXRlcnMuCi0jZGVm
aW5lIEdURVNUX1JFTU9WRV9DT05TVF8oVCkgXAotICAgIHR5cGVuYW1lIDo6dGVzdGluZzo6aW50
ZXJuYWw6OlJlbW92ZUNvbnN0PFQ+Ojp0eXBlCi0KIC8vIFR1cm5zIGNvbnN0IFUmLCBVJiwgY29u
c3QgVSwgYW5kIFUgYWxsIGludG8gVS4KICNkZWZpbmUgR1RFU1RfUkVNT1ZFX1JFRkVSRU5DRV9B
TkRfQ09OU1RfKFQpIFwKLSAgICBHVEVTVF9SRU1PVkVfQ09OU1RfKEdURVNUX1JFTU9WRV9SRUZF
UkVOQ0VfKFQpKQotCi0vLyBJbXBsaWNpdGx5Q29udmVydGlibGU8RnJvbSwgVG8+Ojp2YWx1ZSBp
cyBhIGNvbXBpbGUtdGltZSBib29sCi0vLyBjb25zdGFudCB0aGF0J3MgdHJ1ZSBpZmYgdHlwZSBG
cm9tIGNhbiBiZSBpbXBsaWNpdGx5IGNvbnZlcnRlZCB0bwotLy8gdHlwZSBUby4KLXRlbXBsYXRl
IDx0eXBlbmFtZSBGcm9tLCB0eXBlbmFtZSBUbz4KLWNsYXNzIEltcGxpY2l0bHlDb252ZXJ0aWJs
ZSB7Ci0gcHJpdmF0ZToKLSAgLy8gV2UgbmVlZCB0aGUgZm9sbG93aW5nIGhlbHBlciBmdW5jdGlv
bnMgb25seSBmb3IgdGhlaXIgdHlwZXMuCi0gIC8vIFRoZXkgaGF2ZSBubyBpbXBsZW1lbnRhdGlv
bnMuCi0KLSAgLy8gTWFrZUZyb20oKSBpcyBhbiBleHByZXNzaW9uIHdob3NlIHR5cGUgaXMgRnJv
bS4gIFdlIGNhbm5vdCBzaW1wbHkKLSAgLy8gdXNlIEZyb20oKSwgYXMgdGhlIHR5cGUgRnJvbSBt
YXkgbm90IGhhdmUgYSBwdWJsaWMgZGVmYXVsdAotICAvLyBjb25zdHJ1Y3Rvci4KLSAgc3RhdGlj
IHR5cGVuYW1lIEFkZFJlZmVyZW5jZTxGcm9tPjo6dHlwZSBNYWtlRnJvbSgpOwotCi0gIC8vIFRo
ZXNlIHR3byBmdW5jdGlvbnMgYXJlIG92ZXJsb2FkZWQuICBHaXZlbiBhbiBleHByZXNzaW9uCi0g
IC8vIEhlbHBlcih4KSwgdGhlIGNvbXBpbGVyIHdpbGwgcGljayB0aGUgZmlyc3QgdmVyc2lvbiBp
ZiB4IGNhbiBiZQotICAvLyBpbXBsaWNpdGx5IGNvbnZlcnRlZCB0byB0eXBlIFRvOyBvdGhlcndp
c2UgaXQgd2lsbCBwaWNrIHRoZQotICAvLyBzZWNvbmQgdmVyc2lvbi4KLSAgLy8KLSAgLy8gVGhl
IGZpcnN0IHZlcnNpb24gcmV0dXJucyBhIHZhbHVlIG9mIHNpemUgMSwgYW5kIHRoZSBzZWNvbmQK
LSAgLy8gdmVyc2lvbiByZXR1cm5zIGEgdmFsdWUgb2Ygc2l6ZSAyLiAgVGhlcmVmb3JlLCBieSBj
aGVja2luZyB0aGUKLSAgLy8gc2l6ZSBvZiBIZWxwZXIoeCksIHdoaWNoIGNhbiBiZSBkb25lIGF0
IGNvbXBpbGUgdGltZSwgd2UgY2FuIHRlbGwKLSAgLy8gd2hpY2ggdmVyc2lvbiBvZiBIZWxwZXIo
KSBpcyB1c2VkLCBhbmQgaGVuY2Ugd2hldGhlciB4IGNhbiBiZQotICAvLyBpbXBsaWNpdGx5IGNv
bnZlcnRlZCB0byB0eXBlIFRvLgotICBzdGF0aWMgY2hhciBIZWxwZXIoVG8pOwotICBzdGF0aWMg
Y2hhciAoJkhlbHBlciguLi4pKVsyXTsgIC8vIE5PTElOVAotCi0gIC8vIFdlIGhhdmUgdG8gcHV0
IHRoZSAncHVibGljJyBzZWN0aW9uIGFmdGVyIHRoZSAncHJpdmF0ZScgc2VjdGlvbiwKLSAgLy8g
b3IgTVNWQyByZWZ1c2VzIHRvIGNvbXBpbGUgdGhlIGNvZGUuCi0gcHVibGljOgotI2lmIGRlZmlu
ZWQoX19CT1JMQU5EQ19fKQotICAvLyBDKytCdWlsZGVyIGNhbm5vdCB1c2UgbWVtYmVyIG92ZXJs
b2FkIHJlc29sdXRpb24gZHVyaW5nIHRlbXBsYXRlCi0gIC8vIGluc3RhbnRpYXRpb24uICBUaGUg
c2ltcGxlc3Qgd29ya2Fyb3VuZCBpcyB0byB1c2UgaXRzIEMrKzB4IHR5cGUgdHJhaXRzCi0gIC8v
IGZ1bmN0aW9ucyAoQysrQnVpbGRlciAyMDA5IGFuZCBhYm92ZSBvbmx5KS4KLSAgc3RhdGljIGNv
bnN0IGJvb2wgdmFsdWUgPSBfX2lzX2NvbnZlcnRpYmxlKEZyb20sIFRvKTsKLSNlbHNlCi0gIC8v
IE1TVkMgd2FybnMgYWJvdXQgaW1wbGljaXRseSBjb252ZXJ0aW5nIGZyb20gZG91YmxlIHRvIGlu
dCBmb3IKLSAgLy8gcG9zc2libGUgbG9zcyBvZiBkYXRhLCBzbyB3ZSBuZWVkIHRvIHRlbXBvcmFy
aWx5IGRpc2FibGUgdGhlCi0gIC8vIHdhcm5pbmcuCi0gIEdURVNUX0RJU0FCTEVfTVNDX1dBUk5J
TkdTX1BVU0hfKDQyNDQpCi0gIHN0YXRpYyBjb25zdCBib29sIHZhbHVlID0KLSAgICAgIHNpemVv
ZihIZWxwZXIoSW1wbGljaXRseUNvbnZlcnRpYmxlOjpNYWtlRnJvbSgpKSkgPT0gMTsKLSAgR1RF
U1RfRElTQUJMRV9NU0NfV0FSTklOR1NfUE9QXygpCi0jZW5kaWYgIC8vIF9fQk9STEFORENfXwot
fTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBGcm9tLCB0eXBlbmFtZSBUbz4KLWNvbnN0IGJvb2wgSW1w
bGljaXRseUNvbnZlcnRpYmxlPEZyb20sIFRvPjo6dmFsdWU7CisgIHR5cGVuYW1lIHN0ZDo6cmVt
b3ZlX2NvbnN0PHR5cGVuYW1lIHN0ZDo6cmVtb3ZlX3JlZmVyZW5jZTxUPjo6dHlwZT46OnR5cGUK
IAogLy8gSXNBUHJvdG9jb2xNZXNzYWdlPFQ+Ojp2YWx1ZSBpcyBhIGNvbXBpbGUtdGltZSBib29s
IGNvbnN0YW50IHRoYXQncwotLy8gdHJ1ZSBpZmYgVCBpcyB0eXBlIFByb3RvY29sTWVzc2FnZSwg
cHJvdG8yOjpNZXNzYWdlLCBvciBhIHN1YmNsYXNzCi0vLyBvZiB0aG9zZS4KKy8vIHRydWUgaWYg
YW5kIG9ubHkgaWYgVCBpcyB0eXBlIHByb3RvMjo6TWVzc2FnZSBvciBhIHN1YmNsYXNzIG9mIGl0
LgogdGVtcGxhdGUgPHR5cGVuYW1lIFQ+CiBzdHJ1Y3QgSXNBUHJvdG9jb2xNZXNzYWdlCi0gICAg
OiBwdWJsaWMgYm9vbF9jb25zdGFudDwKLSAgSW1wbGljaXRseUNvbnZlcnRpYmxlPGNvbnN0IFQq
LCBjb25zdCA6OlByb3RvY29sTWVzc2FnZSo+Ojp2YWx1ZSB8fAotICBJbXBsaWNpdGx5Q29udmVy
dGlibGU8Y29uc3QgVCosIGNvbnN0IDo6cHJvdG8yOjpNZXNzYWdlKj46OnZhbHVlPiB7Ci19Owor
ICAgIDogcHVibGljIHN0ZDo6aXNfY29udmVydGlibGU8Y29uc3QgVCosIGNvbnN0IDo6cHJvdG8y
OjpNZXNzYWdlKj4ge307CiAKIC8vIFdoZW4gdGhlIGNvbXBpbGVyIHNlZXMgZXhwcmVzc2lvbiBJ
c0NvbnRhaW5lclRlc3Q8Qz4oMCksIGlmIEMgaXMgYW4KIC8vIFNUTC1zdHlsZSBjb250YWluZXIg
Y2xhc3MsIHRoZSBmaXJzdCBvdmVybG9hZCBvZiBJc0NvbnRhaW5lclRlc3QKQEAgLTk0Miw3ICs5
MDksNiBAQCBzdHJ1Y3QgSXNBUHJvdG9jb2xNZXNzYWdlCiAvLyBJc0NvbnRhaW5lclRlc3QodHlw
ZW5hbWUgQzo6Y29uc3RfaXRlcmF0b3IqKSBhbmQKIC8vIElzQ29udGFpbmVyVGVzdCguLi4pIGRv
ZXNuJ3Qgd29yayB3aXRoIFZpc3VhbCBBZ2UgQysrIGFuZCBTdW4gQysrLgogdHlwZWRlZiBpbnQg
SXNDb250YWluZXI7Ci0jaWYgR1RFU1RfTEFOR19DWFgxMQogdGVtcGxhdGUgPGNsYXNzIEMsCiAg
ICAgICAgICAgY2xhc3MgSXRlcmF0b3IgPSBkZWNsdHlwZSg6OnN0ZDo6ZGVjbHZhbDxjb25zdCBD
Jj4oKS5iZWdpbigpKSwKICAgICAgICAgICBjbGFzcyA9IGRlY2x0eXBlKDo6c3RkOjpkZWNsdmFs
PGNvbnN0IEMmPigpLmVuZCgpKSwKQEAgLTk1MiwxNCArOTE4LDYgQEAgdGVtcGxhdGUgPGNsYXNz
IEMsCiBJc0NvbnRhaW5lciBJc0NvbnRhaW5lclRlc3QoaW50IC8qIGR1bW15ICovKSB7CiAgIHJl
dHVybiAwOwogfQotI2Vsc2UKLXRlbXBsYXRlIDxjbGFzcyBDPgotSXNDb250YWluZXIgSXNDb250
YWluZXJUZXN0KGludCAvKiBkdW1teSAqLywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB0
eXBlbmFtZSBDOjppdGVyYXRvciogLyogaXQgKi8gPSBOVUxMLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHR5cGVuYW1lIEM6OmNvbnN0X2l0ZXJhdG9yKiAvKiBjb25zdF9pdCAqLyA9IE5V
TEwpIHsKLSAgcmV0dXJuIDA7Ci19Ci0jZW5kaWYgIC8vIEdURVNUX0xBTkdfQ1hYMTEKIAogdHlw
ZWRlZiBjaGFyIElzTm90Q29udGFpbmVyOwogdGVtcGxhdGUgPGNsYXNzIEM+CkBAIC05ODAsNDcg
KzkzOCwzMCBAQCBzdHJ1Y3QgSXNIYXNoVGFibGUgewogICBzdGF0aWMgY2hhciB0ZXN0KC4uLik7
CiAKICBwdWJsaWM6Ci0gIHN0YXRpYyBjb25zdCBib29sIHZhbHVlID0gc2l6ZW9mKHRlc3Q8VD4o
MCwgMCkpID09IHNpemVvZihpbnQpOworICBzdGF0aWMgY29uc3QgYm9vbCB2YWx1ZSA9IHNpemVv
Zih0ZXN0PFQ+KG51bGxwdHIsIG51bGxwdHIpKSA9PSBzaXplb2YoaW50KTsKIH07CiAKIHRlbXBs
YXRlIDx0eXBlbmFtZSBUPgogY29uc3QgYm9vbCBJc0hhc2hUYWJsZTxUPjo6dmFsdWU7CiAKLXRl
bXBsYXRlPHR5cGVuYW1lIFQ+Ci1zdHJ1Y3QgVm9pZFQgewotICAgIHR5cGVkZWYgdm9pZCB2YWx1
ZV90eXBlOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQsIHR5cGVuYW1lID0gdm9pZD4KLXN0
cnVjdCBIYXNWYWx1ZVR5cGUgOiBmYWxzZV90eXBlIHt9OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+
Ci1zdHJ1Y3QgSGFzVmFsdWVUeXBlPFQsIFZvaWRUPHR5cGVuYW1lIFQ6OnZhbHVlX3R5cGU+ID4g
OiB0cnVlX3R5cGUgewotfTsKLQogdGVtcGxhdGUgPHR5cGVuYW1lIEMsCi0gICAgICAgICAgYm9v
bCA9IHNpemVvZihJc0NvbnRhaW5lclRlc3Q8Qz4oMCkpID09IHNpemVvZihJc0NvbnRhaW5lciks
Ci0gICAgICAgICAgYm9vbCA9IEhhc1ZhbHVlVHlwZTxDPjo6dmFsdWU+CisgICAgICAgICAgYm9v
bCA9IHNpemVvZihJc0NvbnRhaW5lclRlc3Q8Qz4oMCkpID09IHNpemVvZihJc0NvbnRhaW5lcik+
CiBzdHJ1Y3QgSXNSZWN1cnNpdmVDb250YWluZXJJbXBsOwogCi10ZW1wbGF0ZSA8dHlwZW5hbWUg
QywgYm9vbCBIVj4KLXN0cnVjdCBJc1JlY3Vyc2l2ZUNvbnRhaW5lckltcGw8QywgZmFsc2UsIEhW
PiA6IHB1YmxpYyBmYWxzZV90eXBlIHt9OwordGVtcGxhdGUgPHR5cGVuYW1lIEM+CitzdHJ1Y3Qg
SXNSZWN1cnNpdmVDb250YWluZXJJbXBsPEMsIGZhbHNlPiA6IHB1YmxpYyBzdGQ6OmZhbHNlX3R5
cGUge307CiAKIC8vIFNpbmNlIHRoZSBJc1JlY3Vyc2l2ZUNvbnRhaW5lckltcGwgZGVwZW5kcyBv
biB0aGUgSXNDb250YWluZXJUZXN0IHdlIG5lZWQgdG8KIC8vIG9iZXkgdGhlIHNhbWUgaW5jb25z
aXN0ZW5jaWVzIGFzIHRoZSBJc0NvbnRhaW5lclRlc3QsIG5hbWVseSBjaGVjayBpZgogLy8gc29t
ZXRoaW5nIGlzIGEgY29udGFpbmVyIGlzIHJlbHlpbmcgb24gb25seSBjb25zdF9pdGVyYXRvciBp
biBDKysxMSBhbmQKIC8vIGlzIHJlbHlpbmcgb24gYm90aCBjb25zdF9pdGVyYXRvciBhbmQgaXRl
cmF0b3Igb3RoZXJ3aXNlCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgQz4KLXN0cnVjdCBJc1JlY3Vyc2l2
ZUNvbnRhaW5lckltcGw8QywgdHJ1ZSwgZmFsc2U+IDogcHVibGljIGZhbHNlX3R5cGUge307Ci0K
LXRlbXBsYXRlIDx0eXBlbmFtZSBDPgotc3RydWN0IElzUmVjdXJzaXZlQ29udGFpbmVySW1wbDxD
LCB0cnVlLCB0cnVlPiB7Ci0gICNpZiBHVEVTVF9MQU5HX0NYWDExCi0gIHR5cGVkZWYgdHlwZW5h
bWUgSXRlcmF0b3JUcmFpdHM8dHlwZW5hbWUgQzo6Y29uc3RfaXRlcmF0b3I+Ojp2YWx1ZV90eXBl
Ci0gICAgICB2YWx1ZV90eXBlOwotI2Vsc2UKLSAgdHlwZWRlZiB0eXBlbmFtZSBJdGVyYXRvclRy
YWl0czx0eXBlbmFtZSBDOjppdGVyYXRvcj46OnZhbHVlX3R5cGUgdmFsdWVfdHlwZTsKLSNlbmRp
ZgotICB0eXBlZGVmIGlzX3NhbWU8dmFsdWVfdHlwZSwgQz4gdHlwZTsKK3N0cnVjdCBJc1JlY3Vy
c2l2ZUNvbnRhaW5lckltcGw8QywgdHJ1ZT4geworICB1c2luZyB2YWx1ZV90eXBlID0gZGVjbHR5
cGUoKnN0ZDo6ZGVjbHZhbDx0eXBlbmFtZSBDOjpjb25zdF9pdGVyYXRvcj4oKSk7CisgIHVzaW5n
IHR5cGUgPQorICAgICAgc3RkOjppc19zYW1lPHR5cGVuYW1lIHN0ZDo6cmVtb3ZlX2NvbnN0PAor
ICAgICAgICAgICAgICAgICAgICAgICB0eXBlbmFtZSBzdGQ6OnJlbW92ZV9yZWZlcmVuY2U8dmFs
dWVfdHlwZT46OnR5cGU+Ojp0eXBlLAorICAgICAgICAgICAgICAgICAgIEM+OwogfTsKIAogLy8g
SXNSZWN1cnNpdmVDb250YWluZXI8VHlwZT4gaXMgYSB1bmFyeSBjb21waWxlLXRpbWUgcHJlZGlj
YXRlIHRoYXQKQEAgLTEwMzIsMTMgKzk3Myw2IEBAIHN0cnVjdCBJc1JlY3Vyc2l2ZUNvbnRhaW5l
ckltcGw8QywgdHJ1ZSwgdHJ1ZT4gewogdGVtcGxhdGUgPHR5cGVuYW1lIEM+CiBzdHJ1Y3QgSXNS
ZWN1cnNpdmVDb250YWluZXIgOiBwdWJsaWMgSXNSZWN1cnNpdmVDb250YWluZXJJbXBsPEM+Ojp0
eXBlIHt9OwogCi0vLyBFbmFibGVJZjxjb25kaXRpb24+Ojp0eXBlIGlzIHZvaWQgd2hlbiAnQ29u
ZCcgaXMgdHJ1ZSwgYW5kCi0vLyB1bmRlZmluZWQgd2hlbiAnQ29uZCcgaXMgZmFsc2UuICBUbyB1
c2UgU0ZJTkFFIHRvIG1ha2UgYSBmdW5jdGlvbgotLy8gb3ZlcmxvYWQgb25seSBhcHBseSB3aGVu
IGEgcGFydGljdWxhciBleHByZXNzaW9uIGlzIHRydWUsIGFkZAotLy8gInR5cGVuYW1lIEVuYWJs
ZUlmPGV4cHJlc3Npb24+Ojp0eXBlKiA9IDAiIGFzIHRoZSBsYXN0IHBhcmFtZXRlci4KLXRlbXBs
YXRlPGJvb2w+IHN0cnVjdCBFbmFibGVJZjsKLXRlbXBsYXRlPD4gc3RydWN0IEVuYWJsZUlmPHRy
dWU+IHsgdHlwZWRlZiB2b2lkIHR5cGU7IH07ICAvLyBOT0xJTlQKLQogLy8gVXRpbGl0aWVzIGZv
ciBuYXRpdmUgYXJyYXlzLgogCiAvLyBBcnJheUVxKCkgY29tcGFyZXMgdHdvIGstZGltZW5zaW9u
YWwgbmF0aXZlIGFycmF5cyB1c2luZyB0aGUKQEAgLTExNjEsMTAgKzEwOTUsOSBAQCBjbGFzcyBO
YXRpdmVBcnJheSB7CiAgIH0KIAogIHByaXZhdGU6Ci0gIGVudW0gewotICAgIGtDaGVja1R5cGVJ
c05vdENvbnN0T3JBUmVmZXJlbmNlID0gU3RhdGljQXNzZXJ0VHlwZUVxSGVscGVyPAotICAgICAg
ICBFbGVtZW50LCBHVEVTVF9SRU1PVkVfUkVGRVJFTkNFX0FORF9DT05TVF8oRWxlbWVudCk+Ojp2
YWx1ZQotICB9OworICBzdGF0aWNfYXNzZXJ0KCFzdGQ6OmlzX2NvbnN0PEVsZW1lbnQ+Ojp2YWx1
ZSwgIlR5cGUgbXVzdCBub3QgYmUgY29uc3QiKTsKKyAgc3RhdGljX2Fzc2VydCghc3RkOjppc19y
ZWZlcmVuY2U8RWxlbWVudD46OnZhbHVlLAorICAgICAgICAgICAgICAgICJUeXBlIG11c3Qgbm90
IGJlIGEgcmVmZXJlbmNlIik7CiAKICAgLy8gSW5pdGlhbGl6ZXMgdGhpcyBvYmplY3Qgd2l0aCBh
IGNvcHkgb2YgdGhlIGlucHV0LgogICB2b2lkIEluaXRDb3B5KGNvbnN0IEVsZW1lbnQqIGFycmF5
LCBzaXplX3QgYV9zaXplKSB7CkBAIC0xMTg5LDYgKzExMjIsMTQyIEBAIGNsYXNzIE5hdGl2ZUFy
cmF5IHsKICAgR1RFU1RfRElTQUxMT1dfQVNTSUdOXyhOYXRpdmVBcnJheSk7CiB9OwogCisvLyBC
YWNrcG9ydCBvZiBzdGQ6OmluZGV4X3NlcXVlbmNlLgordGVtcGxhdGUgPHNpemVfdC4uLiBJcz4K
K3N0cnVjdCBJbmRleFNlcXVlbmNlIHsKKyAgdXNpbmcgdHlwZSA9IEluZGV4U2VxdWVuY2U7Cit9
OworCisvLyBEb3VibGUgdGhlIEluZGV4U2VxdWVuY2UsIGFuZCBvbmUgaWYgcGx1c19vbmUgaXMg
dHJ1ZS4KK3RlbXBsYXRlIDxib29sIHBsdXNfb25lLCB0eXBlbmFtZSBULCBzaXplX3Qgc2l6ZW9m
VD4KK3N0cnVjdCBEb3VibGVTZXF1ZW5jZTsKK3RlbXBsYXRlIDxzaXplX3QuLi4gSSwgc2l6ZV90
IHNpemVvZlQ+CitzdHJ1Y3QgRG91YmxlU2VxdWVuY2U8dHJ1ZSwgSW5kZXhTZXF1ZW5jZTxJLi4u
Piwgc2l6ZW9mVD4geworICB1c2luZyB0eXBlID0gSW5kZXhTZXF1ZW5jZTxJLi4uLCAoc2l6ZW9m
VCArIEkpLi4uLCAyICogc2l6ZW9mVD47Cit9OwordGVtcGxhdGUgPHNpemVfdC4uLiBJLCBzaXpl
X3Qgc2l6ZW9mVD4KK3N0cnVjdCBEb3VibGVTZXF1ZW5jZTxmYWxzZSwgSW5kZXhTZXF1ZW5jZTxJ
Li4uPiwgc2l6ZW9mVD4geworICB1c2luZyB0eXBlID0gSW5kZXhTZXF1ZW5jZTxJLi4uLCAoc2l6
ZW9mVCArIEkpLi4uPjsKK307CisKKy8vIEJhY2twb3J0IG9mIHN0ZDo6bWFrZV9pbmRleF9zZXF1
ZW5jZS4KKy8vIEl0IHVzZXMgTyhsbihOKSkgaW5zdGFudGlhdGlvbiBkZXB0aC4KK3RlbXBsYXRl
IDxzaXplX3QgTj4KK3N0cnVjdCBNYWtlSW5kZXhTZXF1ZW5jZQorICAgIDogRG91YmxlU2VxdWVu
Y2U8TiAlIDIgPT0gMSwgdHlwZW5hbWUgTWFrZUluZGV4U2VxdWVuY2U8TiAvIDI+Ojp0eXBlLAor
ICAgICAgICAgICAgICAgICAgICAgTiAvIDI+Ojp0eXBlIHt9OworCit0ZW1wbGF0ZSA8Pgorc3Ry
dWN0IE1ha2VJbmRleFNlcXVlbmNlPDA+IDogSW5kZXhTZXF1ZW5jZTw+IHt9OworCit0ZW1wbGF0
ZSA8c2l6ZV90Pgorc3RydWN0IElnbm9yZSB7CisgIElnbm9yZSguLi4pOyAgLy8gTk9MSU5UCit9
OworCit0ZW1wbGF0ZSA8dHlwZW5hbWU+CitzdHJ1Y3QgRWxlbUZyb21MaXN0SW1wbDsKK3RlbXBs
YXRlIDxzaXplX3QuLi4gST4KK3N0cnVjdCBFbGVtRnJvbUxpc3RJbXBsPEluZGV4U2VxdWVuY2U8
SS4uLj4+IHsKKyAgLy8gV2UgbWFrZSBJZ25vcmUgYSB0ZW1wbGF0ZSB0byBzb2x2ZSBhIHByb2Js
ZW0gd2l0aCBNU1ZDLgorICAvLyBBIG5vbi10ZW1wbGF0ZSBJZ25vcmUgd291bGQgd29yayBmaW5l
IHdpdGggYGRlY2x0eXBlKElnbm9yZShJKSkuLi5gLCBidXQKKyAgLy8gTVNWQyBkb2Vzbid0IHVu
ZGVyc3RhbmQgaG93IHRvIGRlYWwgd2l0aCB0aGF0IHBhY2sgZXhwYW5zaW9uLgorICAvLyBVc2Ug
YDAgKiBJYCB0byBoYXZlIGEgc2luZ2xlIGluc3RhbnRpYXRpb24gb2YgSWdub3JlLgorICB0ZW1w
bGF0ZSA8dHlwZW5hbWUgUj4KKyAgc3RhdGljIFIgQXBwbHkoSWdub3JlPDAgKiBJPi4uLiwgUiAo
KikoKSwgLi4uKTsKK307CisKK3RlbXBsYXRlIDxzaXplX3QgTiwgdHlwZW5hbWUuLi4gVD4KK3N0
cnVjdCBFbGVtRnJvbUxpc3QgeworICB1c2luZyB0eXBlID0KKyAgICAgIGRlY2x0eXBlKEVsZW1G
cm9tTGlzdEltcGw8dHlwZW5hbWUgTWFrZUluZGV4U2VxdWVuY2U8Tj46OnR5cGU+OjpBcHBseSgK
KyAgICAgICAgICBzdGF0aWNfY2FzdDxUICgqKSgpPihudWxscHRyKS4uLikpOworfTsKKwordGVt
cGxhdGUgPHR5cGVuYW1lLi4uIFQ+CitjbGFzcyBGbGF0VHVwbGU7CisKK3RlbXBsYXRlIDx0eXBl
bmFtZSBEZXJpdmVkLCBzaXplX3QgST4KK3N0cnVjdCBGbGF0VHVwbGVFbGVtQmFzZTsKKwordGVt
cGxhdGUgPHR5cGVuYW1lLi4uIFQsIHNpemVfdCBJPgorc3RydWN0IEZsYXRUdXBsZUVsZW1CYXNl
PEZsYXRUdXBsZTxULi4uPiwgST4geworICB1c2luZyB2YWx1ZV90eXBlID0gdHlwZW5hbWUgRWxl
bUZyb21MaXN0PEksIFQuLi4+Ojp0eXBlOworICBGbGF0VHVwbGVFbGVtQmFzZSgpID0gZGVmYXVs
dDsKKyAgZXhwbGljaXQgRmxhdFR1cGxlRWxlbUJhc2UodmFsdWVfdHlwZSB0KSA6IHZhbHVlKHN0
ZDo6bW92ZSh0KSkge30KKyAgdmFsdWVfdHlwZSB2YWx1ZTsKK307CisKK3RlbXBsYXRlIDx0eXBl
bmFtZSBEZXJpdmVkLCB0eXBlbmFtZSBJZHg+CitzdHJ1Y3QgRmxhdFR1cGxlQmFzZTsKKwordGVt
cGxhdGUgPHNpemVfdC4uLiBJZHgsIHR5cGVuYW1lLi4uIFQ+CitzdHJ1Y3QgRmxhdFR1cGxlQmFz
ZTxGbGF0VHVwbGU8VC4uLj4sIEluZGV4U2VxdWVuY2U8SWR4Li4uPj4KKyAgICA6IEZsYXRUdXBs
ZUVsZW1CYXNlPEZsYXRUdXBsZTxULi4uPiwgSWR4Pi4uLiB7CisgIHVzaW5nIEluZGljZXMgPSBJ
bmRleFNlcXVlbmNlPElkeC4uLj47CisgIEZsYXRUdXBsZUJhc2UoKSA9IGRlZmF1bHQ7CisgIGV4
cGxpY2l0IEZsYXRUdXBsZUJhc2UoVC4uLiB0KQorICAgICAgOiBGbGF0VHVwbGVFbGVtQmFzZTxG
bGF0VHVwbGU8VC4uLj4sIElkeD4oc3RkOjptb3ZlKHQpKS4uLiB7fQorfTsKKworLy8gQW5hbG9n
IHRvIHN0ZDo6dHVwbGUgYnV0IHdpdGggZGlmZmVyZW50IHRyYWRlb2Zmcy4KKy8vIFRoaXMgY2xh
c3MgbWluaW1pemVzIHRoZSB0ZW1wbGF0ZSBpbnN0YW50aWF0aW9uIGRlcHRoLCB0aHVzIGFsbG93
aW5nIG1vcmUKKy8vIGVsZW1lbnRzIHRoYW4gc3RkOjp0dXBsZSB3b3VsZC4gc3RkOjp0dXBsZSBo
YXMgYmVlbiBzZWVuIHRvIHJlcXVpcmUgYW4KKy8vIGluc3RhbnRpYXRpb24gZGVwdGggb2YgbW9y
ZSB0aGFuIDEweCB0aGUgbnVtYmVyIG9mIGVsZW1lbnRzIGluIHNvbWUKKy8vIGltcGxlbWVudGF0
aW9ucy4KKy8vIEZsYXRUdXBsZSBhbmQgRWxlbUZyb21MaXN0IGFyZSBub3QgcmVjdXJzaXZlIGFu
ZCBoYXZlIGEgZml4ZWQgZGVwdGgKKy8vIHJlZ2FyZGxlc3Mgb2YgVC4uLgorLy8gTWFrZUluZGV4
U2VxdWVuY2UsIG9uIHRoZSBvdGhlciBoYW5kLCBpdCBpcyByZWN1cnNpdmUgYnV0IHdpdGggYW4K
Ky8vIGluc3RhbnRpYXRpb24gZGVwdGggb2YgTyhsbihOKSkuCit0ZW1wbGF0ZSA8dHlwZW5hbWUu
Li4gVD4KK2NsYXNzIEZsYXRUdXBsZQorICAgIDogcHJpdmF0ZSBGbGF0VHVwbGVCYXNlPEZsYXRU
dXBsZTxULi4uPiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlbmFtZSBNYWtlSW5k
ZXhTZXF1ZW5jZTxzaXplb2YuLi4oVCk+Ojp0eXBlPiB7CisgIHVzaW5nIEluZGljZXMgPSB0eXBl
bmFtZSBGbGF0VHVwbGVCYXNlPAorICAgICAgRmxhdFR1cGxlPFQuLi4+LCB0eXBlbmFtZSBNYWtl
SW5kZXhTZXF1ZW5jZTxzaXplb2YuLi4oVCk+Ojp0eXBlPjo6SW5kaWNlczsKKworIHB1YmxpYzoK
KyAgRmxhdFR1cGxlKCkgPSBkZWZhdWx0OworICBleHBsaWNpdCBGbGF0VHVwbGUoVC4uLiB0KSA6
IEZsYXRUdXBsZTo6RmxhdFR1cGxlQmFzZShzdGQ6Om1vdmUodCkuLi4pIHt9CisKKyAgdGVtcGxh
dGUgPHNpemVfdCBJPgorICBjb25zdCB0eXBlbmFtZSBFbGVtRnJvbUxpc3Q8SSwgVC4uLj46OnR5
cGUmIEdldCgpIGNvbnN0IHsKKyAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Y29uc3QgRmxhdFR1cGxl
RWxlbUJhc2U8RmxhdFR1cGxlLCBJPio+KHRoaXMpLT52YWx1ZTsKKyAgfQorCisgIHRlbXBsYXRl
IDxzaXplX3QgST4KKyAgdHlwZW5hbWUgRWxlbUZyb21MaXN0PEksIFQuLi4+Ojp0eXBlJiBHZXQo
KSB7CisgICAgcmV0dXJuIHN0YXRpY19jYXN0PEZsYXRUdXBsZUVsZW1CYXNlPEZsYXRUdXBsZSwg
ST4qPih0aGlzKS0+dmFsdWU7CisgIH0KK307CisKKy8vIFV0aWxpdHkgZnVuY3Rpb25zIHRvIGJl
IGNhbGxlZCB3aXRoIHN0YXRpY19hc3NlcnQgdG8gaW5kdWNlIGRlcHJlY2F0aW9uCisvLyB3YXJu
aW5ncy4KK0dURVNUX0lOVEVSTkFMX0RFUFJFQ0FURUQoCisgICAgIklOU1RBTlRJQVRFX1RFU1Rf
Q0FTRV9QIGlzIGRlcHJlY2F0ZWQsIHBsZWFzZSB1c2UgIgorICAgICJJTlNUQU5USUFURV9URVNU
X1NVSVRFX1AiKQorY29uc3RleHByIGJvb2wgSW5zdGFudGlhdGVUZXN0Q2FzZV9QX0lzRGVwcmVj
YXRlZCgpIHsgcmV0dXJuIHRydWU7IH0KKworR1RFU1RfSU5URVJOQUxfREVQUkVDQVRFRCgKKyAg
ICAiVFlQRURfVEVTVF9DQVNFX1AgaXMgZGVwcmVjYXRlZCwgcGxlYXNlIHVzZSAiCisgICAgIlRZ
UEVEX1RFU1RfU1VJVEVfUCIpCitjb25zdGV4cHIgYm9vbCBUeXBlZFRlc3RDYXNlX1BfSXNEZXBy
ZWNhdGVkKCkgeyByZXR1cm4gdHJ1ZTsgfQorCitHVEVTVF9JTlRFUk5BTF9ERVBSRUNBVEVEKAor
ICAgICJUWVBFRF9URVNUX0NBU0UgaXMgZGVwcmVjYXRlZCwgcGxlYXNlIHVzZSAiCisgICAgIlRZ
UEVEX1RFU1RfU1VJVEUiKQorY29uc3RleHByIGJvb2wgVHlwZWRUZXN0Q2FzZUlzRGVwcmVjYXRl
ZCgpIHsgcmV0dXJuIHRydWU7IH0KKworR1RFU1RfSU5URVJOQUxfREVQUkVDQVRFRCgKKyAgICAi
UkVHSVNURVJfVFlQRURfVEVTVF9DQVNFX1AgaXMgZGVwcmVjYXRlZCwgcGxlYXNlIHVzZSAiCisg
ICAgIlJFR0lTVEVSX1RZUEVEX1RFU1RfU1VJVEVfUCIpCitjb25zdGV4cHIgYm9vbCBSZWdpc3Rl
clR5cGVkVGVzdENhc2VfUF9Jc0RlcHJlY2F0ZWQoKSB7IHJldHVybiB0cnVlOyB9CisKK0dURVNU
X0lOVEVSTkFMX0RFUFJFQ0FURUQoCisgICAgIklOU1RBTlRJQVRFX1RZUEVEX1RFU1RfQ0FTRV9Q
IGlzIGRlcHJlY2F0ZWQsIHBsZWFzZSB1c2UgIgorICAgICJJTlNUQU5USUFURV9UWVBFRF9URVNU
X1NVSVRFX1AiKQorY29uc3RleHByIGJvb2wgSW5zdGFudGlhdGVUeXBlZFRlc3RDYXNlX1BfSXNE
ZXByZWNhdGVkKCkgeyByZXR1cm4gdHJ1ZTsgfQorCiB9ICAvLyBuYW1lc3BhY2UgaW50ZXJuYWwK
IH0gIC8vIG5hbWVzcGFjZSB0ZXN0aW5nCiAKQEAgLTEyMDgsNyArMTI3NywxMCBAQCBjbGFzcyBO
YXRpdmVBcnJheSB7CiAjZGVmaW5lIEdURVNUX1NVQ0NFU1NfKG1lc3NhZ2UpIFwKICAgR1RFU1Rf
TUVTU0FHRV8obWVzc2FnZSwgOjp0ZXN0aW5nOjpUZXN0UGFydFJlc3VsdDo6a1N1Y2Nlc3MpCiAK
LS8vIFN1cHByZXNzIE1TVkMgd2FybmluZyA0NzAyICh1bnJlYWNoYWJsZSBjb2RlKSBmb3IgdGhl
IGNvZGUgZm9sbG93aW5nCisjZGVmaW5lIEdURVNUX1NLSVBfKG1lc3NhZ2UpIFwKKyAgcmV0dXJu
IEdURVNUX01FU1NBR0VfKG1lc3NhZ2UsIDo6dGVzdGluZzo6VGVzdFBhcnRSZXN1bHQ6OmtTa2lw
KQorCisvLyBTdXBwcmVzcyBNU1ZDIHdhcm5pbmcgNDA3MiAodW5yZWFjaGFibGUgY29kZSkgZm9y
IHRoZSBjb2RlIGZvbGxvd2luZwogLy8gc3RhdGVtZW50IGlmIGl0IHJldHVybnMgb3IgdGhyb3dz
IChvciBkb2Vzbid0IHJldHVybiBvciB0aHJvdyBpbiBzb21lCiAvLyBzaXR1YXRpb25zKS4KICNk
ZWZpbmUgR1RFU1RfU1VQUFJFU1NfVU5SRUFDSEFCTEVfQ09ERV9XQVJOSU5HX0JFTE9XXyhzdGF0
ZW1lbnQpIFwKQEAgLTEyNDAsMTkgKzEzMTIsMzkgQEAgY2xhc3MgTmF0aXZlQXJyYXkgewogICAg
IEdURVNUX0NPTkNBVF9UT0tFTl8oZ3Rlc3RfbGFiZWxfdGVzdHRocm93XywgX19MSU5FX18pOiBc
CiAgICAgICBmYWlsKGd0ZXN0X21zZy52YWx1ZSkKIAorI2lmIEdURVNUX0hBU19FWENFUFRJT05T
CisKKyNkZWZpbmUgR1RFU1RfVEVTVF9OT19USFJPV19DQVRDSF9TVERfRVhDRVBUSU9OXygpIFwK
KyAgY2F0Y2ggKHN0ZDo6ZXhjZXB0aW9uIGNvbnN0JiBlKSB7IFwKKyAgICBndGVzdF9tc2cudmFs
dWUgPSAoIFwKKyAgICAgICJpdCB0aHJvd3Mgc3RkOjpleGNlcHRpb24tZGVyaXZlZCBleGNlcHRp
b24gd2l0aCBkZXNjcmlwdGlvbjogXCIiIFwKKyAgICApOyBcCisgICAgZ3Rlc3RfbXNnLnZhbHVl
ICs9IGUud2hhdCgpOyBcCisgICAgZ3Rlc3RfbXNnLnZhbHVlICs9ICJcIi4iOyBcCisgICAgZ290
byBHVEVTVF9DT05DQVRfVE9LRU5fKGd0ZXN0X2xhYmVsX3Rlc3Rub3Rocm93XywgX19MSU5FX18p
OyBcCisgIH0KKworI2Vsc2UgIC8vIEdURVNUX0hBU19FWENFUFRJT05TCisKKyNkZWZpbmUgR1RF
U1RfVEVTVF9OT19USFJPV19DQVRDSF9TVERfRVhDRVBUSU9OXygpCisKKyNlbmRpZiAgLy8gR1RF
U1RfSEFTX0VYQ0VQVElPTlMKKwogI2RlZmluZSBHVEVTVF9URVNUX05PX1RIUk9XXyhzdGF0ZW1l
bnQsIGZhaWwpIFwKICAgR1RFU1RfQU1CSUdVT1VTX0VMU0VfQkxPQ0tFUl8gXAotICBpZiAoOjp0
ZXN0aW5nOjppbnRlcm5hbDo6QWx3YXlzVHJ1ZSgpKSB7IFwKKyAgaWYgKDo6dGVzdGluZzo6aW50
ZXJuYWw6OlRydWVXaXRoU3RyaW5nIGd0ZXN0X21zZ3t9KSB7IFwKICAgICB0cnkgeyBcCiAgICAg
ICBHVEVTVF9TVVBQUkVTU19VTlJFQUNIQUJMRV9DT0RFX1dBUk5JTkdfQkVMT1dfKHN0YXRlbWVu
dCk7IFwKICAgICB9IFwKKyAgICBHVEVTVF9URVNUX05PX1RIUk9XX0NBVENIX1NURF9FWENFUFRJ
T05fKCkgXAogICAgIGNhdGNoICguLi4pIHsgXAorICAgICAgZ3Rlc3RfbXNnLnZhbHVlID0gIml0
IHRocm93cy4iOyBcCiAgICAgICBnb3RvIEdURVNUX0NPTkNBVF9UT0tFTl8oZ3Rlc3RfbGFiZWxf
dGVzdG5vdGhyb3dfLCBfX0xJTkVfXyk7IFwKICAgICB9IFwKICAgfSBlbHNlIFwKICAgICBHVEVT
VF9DT05DQVRfVE9LRU5fKGd0ZXN0X2xhYmVsX3Rlc3Rub3Rocm93XywgX19MSU5FX18pOiBcCi0g
ICAgICBmYWlsKCJFeHBlY3RlZDogIiAjc3RhdGVtZW50ICIgZG9lc24ndCB0aHJvdyBhbiBleGNl
cHRpb24uXG4iIFwKLSAgICAgICAgICAgIiAgQWN0dWFsOiBpdCB0aHJvd3MuIikKKyAgICAgIGZh
aWwoKCJFeHBlY3RlZDogIiAjc3RhdGVtZW50ICIgZG9lc24ndCB0aHJvdyBhbiBleGNlcHRpb24u
XG4iIFwKKyAgICAgICAgICAgICIgIEFjdHVhbDogIiArIGd0ZXN0X21zZy52YWx1ZSkuY19zdHIo
KSkKIAogI2RlZmluZSBHVEVTVF9URVNUX0FOWV9USFJPV18oc3RhdGVtZW50LCBmYWlsKSBcCiAg
IEdURVNUX0FNQklHVU9VU19FTFNFX0JMT0NLRVJfIFwKQEAgLTEzMDAsMzEgKzEzOTIsNDEgQEAg
Y2xhc3MgTmF0aXZlQXJyYXkgewogICAgICAgICAgICAiICBBY3R1YWw6IGl0IGRvZXMuIikKIAog
Ly8gRXhwYW5kcyB0byB0aGUgbmFtZSBvZiB0aGUgY2xhc3MgdGhhdCBpbXBsZW1lbnRzIHRoZSBn
aXZlbiB0ZXN0LgotI2RlZmluZSBHVEVTVF9URVNUX0NMQVNTX05BTUVfKHRlc3RfY2FzZV9uYW1l
LCB0ZXN0X25hbWUpIFwKLSAgdGVzdF9jYXNlX25hbWUjI18jI3Rlc3RfbmFtZSMjX1Rlc3QKKyNk
ZWZpbmUgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0X3N1aXRlX25hbWUsIHRlc3RfbmFtZSkg
XAorICB0ZXN0X3N1aXRlX25hbWUjI18jI3Rlc3RfbmFtZSMjX1Rlc3QKIAogLy8gSGVscGVyIG1h
Y3JvIGZvciBkZWZpbmluZyB0ZXN0cy4KLSNkZWZpbmUgR1RFU1RfVEVTVF8odGVzdF9jYXNlX25h
bWUsIHRlc3RfbmFtZSwgcGFyZW50X2NsYXNzLCBwYXJlbnRfaWQpXAotY2xhc3MgR1RFU1RfVEVT
VF9DTEFTU19OQU1FXyh0ZXN0X2Nhc2VfbmFtZSwgdGVzdF9uYW1lKSA6IHB1YmxpYyBwYXJlbnRf
Y2xhc3Mge1wKLSBwdWJsaWM6XAotICBHVEVTVF9URVNUX0NMQVNTX05BTUVfKHRlc3RfY2FzZV9u
YW1lLCB0ZXN0X25hbWUpKCkge31cCi0gcHJpdmF0ZTpcCi0gIHZpcnR1YWwgdm9pZCBUZXN0Qm9k
eSgpO1wKLSAgc3RhdGljIDo6dGVzdGluZzo6VGVzdEluZm8qIGNvbnN0IHRlc3RfaW5mb18gR1RF
U1RfQVRUUklCVVRFX1VOVVNFRF87XAotICBHVEVTVF9ESVNBTExPV19DT1BZX0FORF9BU1NJR05f
KFwKLSAgICAgIEdURVNUX1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9jYXNlX25hbWUsIHRlc3RfbmFt
ZSkpO1wKLX07XAotXAotOjp0ZXN0aW5nOjpUZXN0SW5mbyogY29uc3QgR1RFU1RfVEVTVF9DTEFT
U19OQU1FXyh0ZXN0X2Nhc2VfbmFtZSwgdGVzdF9uYW1lKVwKLSAgOjp0ZXN0X2luZm9fID1cCi0g
ICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6TWFrZUFuZFJlZ2lzdGVyVGVzdEluZm8oXAotICAgICAg
ICAjdGVzdF9jYXNlX25hbWUsICN0ZXN0X25hbWUsIE5VTEwsIE5VTEwsIFwKLSAgICAgICAgOjp0
ZXN0aW5nOjppbnRlcm5hbDo6Q29kZUxvY2F0aW9uKF9fRklMRV9fLCBfX0xJTkVfXyksIFwKLSAg
ICAgICAgKHBhcmVudF9pZCksIFwKLSAgICAgICAgcGFyZW50X2NsYXNzOjpTZXRVcFRlc3RDYXNl
LCBcCi0gICAgICAgIHBhcmVudF9jbGFzczo6VGVhckRvd25UZXN0Q2FzZSwgXAotICAgICAgICBu
ZXcgOjp0ZXN0aW5nOjppbnRlcm5hbDo6VGVzdEZhY3RvcnlJbXBsPFwKLSAgICAgICAgICAgIEdU
RVNUX1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9jYXNlX25hbWUsIHRlc3RfbmFtZSk+KTtcCi12b2lk
IEdURVNUX1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9jYXNlX25hbWUsIHRlc3RfbmFtZSk6OlRlc3RC
b2R5KCkKKyNkZWZpbmUgR1RFU1RfVEVTVF8odGVzdF9zdWl0ZV9uYW1lLCB0ZXN0X25hbWUsIHBh
cmVudF9jbGFzcywgcGFyZW50X2lkKSAgICAgIFwKKyAgc3RhdGljX2Fzc2VydChzaXplb2YoR1RF
U1RfU1RSSU5HSUZZXyh0ZXN0X3N1aXRlX25hbWUpKSA+IDEsICAgICAgICAgICAgICAgIFwKKyAg
ICAgICAgICAgICAgICAidGVzdF9zdWl0ZV9uYW1lIG11c3Qgbm90IGJlIGVtcHR5Iik7ICAgICAg
ICAgICAgICAgICAgICAgICAgIFwKKyAgc3RhdGljX2Fzc2VydChzaXplb2YoR1RFU1RfU1RSSU5H
SUZZXyh0ZXN0X25hbWUpKSA+IDEsICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAg
ICAgICAidGVzdF9uYW1lIG11c3Qgbm90IGJlIGVtcHR5Iik7ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgY2xhc3MgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0X3N1aXRlX25h
bWUsIHRlc3RfbmFtZSkgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgIDogcHVibGljIHBhcmVu
dF9jbGFzcyB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKKyAgIHB1YmxpYzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBHVEVTVF9URVNUX0NMQVNTX05BTUVfKHRl
c3Rfc3VpdGVfbmFtZSwgdGVzdF9uYW1lKSgpIHt9ICAgICAgICAgICAgICAgICAgIFwKKyAgICB+
R1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0X3N1aXRlX25hbWUsIHRlc3RfbmFtZSkoKSBvdmVy
cmlkZSA9IGRlZmF1bHQ7IFwKKyAgICBHVEVTVF9ESVNBTExPV19DT1BZX0FORF9BU1NJR05fKEdU
RVNUX1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9zdWl0ZV9uYW1lLCAgIFwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9uYW1lKSk7
ICAgICAgIFwKKyAgICBHVEVTVF9ESVNBTExPV19NT1ZFX0FORF9BU1NJR05fKEdURVNUX1RFU1Rf
Q0xBU1NfTkFNRV8odGVzdF9zdWl0ZV9uYW1lLCAgIFwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9uYW1lKSk7ICAgICAgIFwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgIHByaXZhdGU6ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB2b2lk
IFRlc3RCb2R5KCkgb3ZlcnJpZGU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKKyAgICBzdGF0aWMgOjp0ZXN0aW5nOjpUZXN0SW5mbyogY29uc3QgdGVz
dF9pbmZvXyBHVEVTVF9BVFRSSUJVVEVfVU5VU0VEXzsgICAgIFwKKyAgfTsgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgOjp0ZXN0aW5nOjpUZXN0SW5mbyogY29u
c3QgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0X3N1aXRlX25hbWUsICAgICAgICAgIFwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X25h
bWUpOjp0ZXN0X2luZm9fID0gIFwKKyAgICAgIDo6dGVzdGluZzo6aW50ZXJuYWw6Ok1ha2VBbmRS
ZWdpc3RlclRlc3RJbmZvKCAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAj
dGVzdF9zdWl0ZV9uYW1lLCAjdGVzdF9uYW1lLCBudWxscHRyLCBudWxscHRyLCAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAgICAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpDb2RlTG9jYXRpb24o
X19GSUxFX18sIF9fTElORV9fKSwgKHBhcmVudF9pZCksIFwKKyAgICAgICAgICA6OnRlc3Rpbmc6
OmludGVybmFsOjpTdWl0ZUFwaVJlc29sdmVyPCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKKyAgICAgICAgICAgICAgcGFyZW50X2NsYXNzPjo6R2V0U2V0VXBDYXNlT3JTdWl0ZShfX0ZJ
TEVfXywgX19MSU5FX18pLCAgICAgICAgIFwKKyAgICAgICAgICA6OnRlc3Rpbmc6OmludGVybmFs
OjpTdWl0ZUFwaVJlc29sdmVyPCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAg
ICAgICAgICAgcGFyZW50X2NsYXNzPjo6R2V0VGVhckRvd25DYXNlT3JTdWl0ZShfX0ZJTEVfXywg
X19MSU5FX18pLCAgICAgIFwKKyAgICAgICAgICBuZXcgOjp0ZXN0aW5nOjppbnRlcm5hbDo6VGVz
dEZhY3RvcnlJbXBsPEdURVNUX1RFU1RfQ0xBU1NfTkFNRV8oICAgIFwKKyAgICAgICAgICAgICAg
dGVzdF9zdWl0ZV9uYW1lLCB0ZXN0X25hbWUpPik7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKKyAgdm9pZCBHVEVTVF9URVNUX0NMQVNTX05BTUVfKHRlc3Rfc3VpdGVfbmFtZSwg
dGVzdF9uYW1lKTo6VGVzdEJvZHkoKQogCiAjZW5kaWYgIC8vIEdURVNUX0lOQ0xVREVfR1RFU1Rf
SU5URVJOQUxfR1RFU1RfSU5URVJOQUxfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRf
cGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1saW5rZWRf
cHRyLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rl
c3QvaW50ZXJuYWwvZ3Rlc3QtbGlua2VkX3B0ci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwODJiODcyODlhZTE3YzhhYTdiOTZkOGU4YzkyYjk2ZTAxOGM3NjhiLi4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFy
dHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1saW5rZWRfcHRy
LmgKKysrIC9kZXYvbnVsbApAQCAtMSwyNDMgKzAsMCBAQAotLy8gQ29weXJpZ2h0IDIwMDMgR29v
Z2xlIEluYy4KLS8vIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0vLwotLy8gUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0vLyBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMgYXJlCi0vLyBtZXQ6Ci0vLwotLy8gICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLS8vIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLS8vICAg
ICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUKLS8vIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIKLS8vIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLS8vIGRpc3RyaWJ1dGlvbi4KLS8vICAgICAq
IE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKLS8v
IGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMg
ZGVyaXZlZCBmcm9tCi0vLyB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3Jp
dHRlbiBwZXJtaXNzaW9uLgotLy8KLS8vIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF
IENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLS8vICJBUyBJUyIgQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0vLyBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IKLS8vIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0vLyBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLS8vIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKLS8v
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLAotLy8gREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0vLyBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0vLyAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKLS8vIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0vLwotLy8gQSAic21hcnQiIHBvaW50ZXIgdHlwZSB3aXRo
IHJlZmVyZW5jZSB0cmFja2luZy4gIEV2ZXJ5IHBvaW50ZXIgdG8gYQotLy8gcGFydGljdWxhciBv
YmplY3QgaXMga2VwdCBvbiBhIGNpcmN1bGFyIGxpbmtlZCBsaXN0LiAgV2hlbiB0aGUgbGFzdCBw
b2ludGVyCi0vLyB0byBhbiBvYmplY3QgaXMgZGVzdHJveWVkIG9yIHJlYXNzaWduZWQsIHRoZSBv
YmplY3QgaXMgZGVsZXRlZC4KLS8vCi0vLyBVc2VkIHByb3Blcmx5LCB0aGlzIGRlbGV0ZXMgdGhl
IG9iamVjdCB3aGVuIHRoZSBsYXN0IHJlZmVyZW5jZSBnb2VzIGF3YXkuCi0vLyBUaGVyZSBhcmUg
c2V2ZXJhbCBjYXZlYXRzOgotLy8gLSBMaWtlIGFsbCByZWZlcmVuY2UgY291bnRpbmcgc2NoZW1l
cywgY3ljbGVzIGxlYWQgdG8gbGVha3MuCi0vLyAtIEVhY2ggc21hcnQgcG9pbnRlciBpcyBhY3R1
YWxseSB0d28gcG9pbnRlcnMgKDggYnl0ZXMgaW5zdGVhZCBvZiA0KS4KLS8vIC0gRXZlcnkgdGlt
ZSBhIHBvaW50ZXIgaXMgYXNzaWduZWQsIHRoZSBlbnRpcmUgbGlzdCBvZiBwb2ludGVycyB0byB0
aGF0Ci0vLyAgIG9iamVjdCBpcyB0cmF2ZXJzZWQuICBUaGlzIGNsYXNzIGlzIHRoZXJlZm9yZSBO
T1QgU1VJVEFCTEUgd2hlbiB0aGVyZQotLy8gICB3aWxsIG9mdGVuIGJlIG1vcmUgdGhhbiB0d28g
b3IgdGhyZWUgcG9pbnRlcnMgdG8gYSBwYXJ0aWN1bGFyIG9iamVjdC4KLS8vIC0gUmVmZXJlbmNl
cyBhcmUgb25seSB0cmFja2VkIGFzIGxvbmcgYXMgbGlua2VkX3B0cjw+IG9iamVjdHMgYXJlIGNv
cGllZC4KLS8vICAgSWYgYSBsaW5rZWRfcHRyPD4gaXMgY29udmVydGVkIHRvIGEgcmF3IHBvaW50
ZXIgYW5kIGJhY2ssIEJBRCBUSElOR1MKLS8vICAgd2lsbCBoYXBwZW4gKGRvdWJsZSBkZWxldGlv
bikuCi0vLwotLy8gQSBnb29kIHVzZSBvZiB0aGlzIGNsYXNzIGlzIHN0b3Jpbmcgb2JqZWN0IHJl
ZmVyZW5jZXMgaW4gU1RMIGNvbnRhaW5lcnMuCi0vLyBZb3UgY2FuIHNhZmVseSBwdXQgbGlua2Vk
X3B0cjw+IGluIGEgdmVjdG9yPD4uCi0vLyBPdGhlciB1c2VzIG1heSBub3QgYmUgYXMgZ29vZC4K
LS8vCi0vLyBOb3RlOiBJZiB5b3UgdXNlIGFuIGluY29tcGxldGUgdHlwZSB3aXRoIGxpbmtlZF9w
dHI8PiwgdGhlIGNsYXNzCi0vLyAqY29udGFpbmluZyogbGlua2VkX3B0cjw+IG11c3QgaGF2ZSBh
IGNvbnN0cnVjdG9yIGFuZCBkZXN0cnVjdG9yIChldmVuCi0vLyBpZiB0aGV5IGRvIG5vdGhpbmch
KS4KLS8vCi0vLyBCaWxsIEdpYmJvbnMgc3VnZ2VzdGVkIHdlIHVzZSBzb21ldGhpbmcgbGlrZSB0
aGlzLgotLy8KLS8vIFRocmVhZCBTYWZldHk6Ci0vLyAgIFVubGlrZSBvdGhlciBsaW5rZWRfcHRy
IGltcGxlbWVudGF0aW9ucywgaW4gdGhpcyBpbXBsZW1lbnRhdGlvbgotLy8gICBhIGxpbmtlZF9w
dHIgb2JqZWN0IGlzIHRocmVhZC1zYWZlIGluIHRoZSBzZW5zZSB0aGF0OgotLy8gICAgIC0gaXQn
cyBzYWZlIHRvIGNvcHkgbGlua2VkX3B0ciBvYmplY3RzIGNvbmN1cnJlbnRseSwKLS8vICAgICAt
IGl0J3Mgc2FmZSB0byBjb3B5ICpmcm9tKiBhIGxpbmtlZF9wdHIgYW5kIHJlYWQgaXRzIHVuZGVy
bHlpbmcKLS8vICAgICAgIHJhdyBwb2ludGVyIChlLmcuIHZpYSBnZXQoKSkgY29uY3VycmVudGx5
LCBhbmQKLS8vICAgICAtIGl0J3Mgc2FmZSB0byB3cml0ZSB0byB0d28gbGlua2VkX3B0cnMgdGhh
dCBwb2ludCB0byB0aGUgc2FtZQotLy8gICAgICAgc2hhcmVkIG9iamVjdCBjb25jdXJyZW50bHku
Ci0vLyBGSVhNRTogcmVuYW1lIHRoaXMgdG8gc2FmZV9saW5rZWRfcHRyIHRvIGF2b2lkCi0vLyBj
b25mdXNpb24gd2l0aCBub3JtYWwgbGlua2VkX3B0ci4KLQotLy8gR09PR0xFVEVTVF9DTTAwMDEg
RE8gTk9UIERFTEVURQotCi0jaWZuZGVmIEdURVNUX0lOQ0xVREVfR1RFU1RfSU5URVJOQUxfR1RF
U1RfTElOS0VEX1BUUl9IXwotI2RlZmluZSBHVEVTVF9JTkNMVURFX0dURVNUX0lOVEVSTkFMX0dU
RVNUX0xJTktFRF9QVFJfSF8KLQotI2luY2x1ZGUgPHN0ZGxpYi5oPgotI2luY2x1ZGUgPGFzc2Vy
dC5oPgotCi0jaW5jbHVkZSAiZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtcG9ydC5oIgotCi1uYW1lc3Bh
Y2UgdGVzdGluZyB7Ci1uYW1lc3BhY2UgaW50ZXJuYWwgewotCi0vLyBQcm90ZWN0cyBjb3B5aW5n
IG9mIGFsbCBsaW5rZWRfcHRyIG9iamVjdHMuCi1HVEVTVF9BUElfIEdURVNUX0RFQ0xBUkVfU1RB
VElDX01VVEVYXyhnX2xpbmtlZF9wdHJfbXV0ZXgpOwotCi0vLyBUaGlzIGlzIHVzZWQgaW50ZXJu
YWxseSBieSBhbGwgaW5zdGFuY2VzIG9mIGxpbmtlZF9wdHI8Pi4gIEl0IG5lZWRzIHRvIGJlCi0v
LyBhIG5vbi10ZW1wbGF0ZSBjbGFzcyBiZWNhdXNlIGRpZmZlcmVudCB0eXBlcyBvZiBsaW5rZWRf
cHRyPD4gY2FuIHJlZmVyIHRvCi0vLyB0aGUgc2FtZSBvYmplY3QgKGxpbmtlZF9wdHI8U3VwZXJj
bGFzcz4ob2JqKSB2cyBsaW5rZWRfcHRyPFN1YmNsYXNzPihvYmopKS4KLS8vIFNvLCBpdCBuZWVk
cyB0byBiZSBwb3NzaWJsZSBmb3IgZGlmZmVyZW50IHR5cGVzIG9mIGxpbmtlZF9wdHIgdG8gcGFy
dGljaXBhdGUKLS8vIGluIHRoZSBzYW1lIGNpcmN1bGFyIGxpbmtlZCBsaXN0LCBzbyB3ZSBuZWVk
IGEgc2luZ2xlIGNsYXNzIHR5cGUgaGVyZS4KLS8vCi0vLyBETyBOT1QgVVNFIFRISVMgQ0xBU1Mg
RElSRUNUTFkgWU9VUlNFTEYuICBVc2UgbGlua2VkX3B0cjxUPi4KLWNsYXNzIGxpbmtlZF9wdHJf
aW50ZXJuYWwgewotIHB1YmxpYzoKLSAgLy8gQ3JlYXRlIGEgbmV3IGNpcmNsZSB0aGF0IGluY2x1
ZGVzIG9ubHkgdGhpcyBpbnN0YW5jZS4KLSAgdm9pZCBqb2luX25ldygpIHsKLSAgICBuZXh0XyA9
IHRoaXM7Ci0gIH0KLQotICAvLyBNYW55IGxpbmtlZF9wdHIgb3BlcmF0aW9ucyBtYXkgY2hhbmdl
IHAubGlua18gZm9yIHNvbWUgbGlua2VkX3B0cgotICAvLyB2YXJpYWJsZSBwIGluIHRoZSBzYW1l
IGNpcmNsZSBhcyB0aGlzIG9iamVjdC4gIFRoZXJlZm9yZSB3ZSBuZWVkCi0gIC8vIHRvIHByZXZl
bnQgdHdvIHN1Y2ggb3BlcmF0aW9ucyBmcm9tIG9jY3VycmluZyBjb25jdXJyZW50bHkuCi0gIC8v
Ci0gIC8vIE5vdGUgdGhhdCBkaWZmZXJlbnQgdHlwZXMgb2YgbGlua2VkX3B0ciBvYmplY3RzIGNh
biBjb2V4aXN0IGluIGEKLSAgLy8gY2lyY2xlIChlLmcuIGxpbmtlZF9wdHI8QmFzZT4sIGxpbmtl
ZF9wdHI8RGVyaXZlZDE+LCBhbmQKLSAgLy8gbGlua2VkX3B0cjxEZXJpdmVkMj4pLiAgVGhlcmVm
b3JlIHdlIG11c3QgdXNlIGEgc2luZ2xlIG11dGV4IHRvCi0gIC8vIHByb3RlY3QgYWxsIGxpbmtl
ZF9wdHIgb2JqZWN0cy4gIFRoaXMgY2FuIGNyZWF0ZSBzZXJpb3VzCi0gIC8vIGNvbnRlbnRpb24g
aW4gcHJvZHVjdGlvbiBjb2RlLCBidXQgaXMgYWNjZXB0YWJsZSBpbiBhIHRlc3RpbmcKLSAgLy8g
ZnJhbWV3b3JrLgotCi0gIC8vIEpvaW4gYW4gZXhpc3RpbmcgY2lyY2xlLgotICB2b2lkIGpvaW4o
bGlua2VkX3B0cl9pbnRlcm5hbCBjb25zdCogcHRyKQotICAgICAgR1RFU1RfTE9DS19FWENMVURF
RF8oZ19saW5rZWRfcHRyX211dGV4KSB7Ci0gICAgTXV0ZXhMb2NrIGxvY2soJmdfbGlua2VkX3B0
cl9tdXRleCk7Ci0KLSAgICBsaW5rZWRfcHRyX2ludGVybmFsIGNvbnN0KiBwID0gcHRyOwotICAg
IHdoaWxlIChwLT5uZXh0XyAhPSBwdHIpIHsKLSAgICAgIGFzc2VydChwLT5uZXh0XyAhPSB0aGlz
ICYmCi0gICAgICAgICAgICAgIlRyeWluZyB0byBqb2luKCkgYSBsaW5rZWQgcmluZyB3ZSBhcmUg
YWxyZWFkeSBpbi4gIgotICAgICAgICAgICAgICJJcyBHTW9jayB0aHJlYWQgc2FmZXR5IGVuYWJs
ZWQ/Iik7Ci0gICAgICBwID0gcC0+bmV4dF87Ci0gICAgfQotICAgIHAtPm5leHRfID0gdGhpczsK
LSAgICBuZXh0XyA9IHB0cjsKLSAgfQotCi0gIC8vIExlYXZlIHdoYXRldmVyIGNpcmNsZSB3ZSdy
ZSBwYXJ0IG9mLiAgUmV0dXJucyB0cnVlIGlmIHdlIHdlcmUgdGhlCi0gIC8vIGxhc3QgbWVtYmVy
IG9mIHRoZSBjaXJjbGUuICBPbmNlIHRoaXMgaXMgZG9uZSwgeW91IGNhbiBqb2luKCkgYW5vdGhl
ci4KLSAgYm9vbCBkZXBhcnQoKQotICAgICAgR1RFU1RfTE9DS19FWENMVURFRF8oZ19saW5rZWRf
cHRyX211dGV4KSB7Ci0gICAgTXV0ZXhMb2NrIGxvY2soJmdfbGlua2VkX3B0cl9tdXRleCk7Ci0K
LSAgICBpZiAobmV4dF8gPT0gdGhpcykgcmV0dXJuIHRydWU7Ci0gICAgbGlua2VkX3B0cl9pbnRl
cm5hbCBjb25zdCogcCA9IG5leHRfOwotICAgIHdoaWxlIChwLT5uZXh0XyAhPSB0aGlzKSB7Ci0g
ICAgICBhc3NlcnQocC0+bmV4dF8gIT0gbmV4dF8gJiYKLSAgICAgICAgICAgICAiVHJ5aW5nIHRv
IGRlcGFydCgpIGEgbGlua2VkIHJpbmcgd2UgYXJlIG5vdCBpbi4gIgotICAgICAgICAgICAgICJJ
cyBHTW9jayB0aHJlYWQgc2FmZXR5IGVuYWJsZWQ/Iik7Ci0gICAgICBwID0gcC0+bmV4dF87Ci0g
ICAgfQotICAgIHAtPm5leHRfID0gbmV4dF87Ci0gICAgcmV0dXJuIGZhbHNlOwotICB9Ci0KLSBw
cml2YXRlOgotICBtdXRhYmxlIGxpbmtlZF9wdHJfaW50ZXJuYWwgY29uc3QqIG5leHRfOwotfTsK
LQotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1jbGFzcyBsaW5rZWRfcHRyIHsKLSBwdWJsaWM6Ci0g
IHR5cGVkZWYgVCBlbGVtZW50X3R5cGU7Ci0KLSAgLy8gVGFrZSBvdmVyIG93bmVyc2hpcCBvZiBh
IHJhdyBwb2ludGVyLiAgVGhpcyBzaG91bGQgaGFwcGVuIGFzIHNvb24gYXMKLSAgLy8gcG9zc2li
bGUgYWZ0ZXIgdGhlIG9iamVjdCBpcyBjcmVhdGVkLgotICBleHBsaWNpdCBsaW5rZWRfcHRyKFQq
IHB0ciA9IE5VTEwpIHsgY2FwdHVyZShwdHIpOyB9Ci0gIH5saW5rZWRfcHRyKCkgeyBkZXBhcnQo
KTsgfQotCi0gIC8vIENvcHkgYW4gZXhpc3RpbmcgbGlua2VkX3B0cjw+LCBhZGRpbmcgb3Vyc2Vs
dmVzIHRvIHRoZSBsaXN0IG9mIHJlZmVyZW5jZXMuCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBVPiBs
aW5rZWRfcHRyKGxpbmtlZF9wdHI8VT4gY29uc3QmIHB0cikgeyBjb3B5KCZwdHIpOyB9Ci0gIGxp
bmtlZF9wdHIobGlua2VkX3B0ciBjb25zdCYgcHRyKSB7ICAvLyBOT0xJTlQKLSAgICBhc3NlcnQo
JnB0ciAhPSB0aGlzKTsKLSAgICBjb3B5KCZwdHIpOwotICB9Ci0KLSAgLy8gQXNzaWdubWVudCBy
ZWxlYXNlcyB0aGUgb2xkIHZhbHVlIGFuZCBhY3F1aXJlcyB0aGUgbmV3LgotICB0ZW1wbGF0ZSA8
dHlwZW5hbWUgVT4gbGlua2VkX3B0ciYgb3BlcmF0b3I9KGxpbmtlZF9wdHI8VT4gY29uc3QmIHB0
cikgewotICAgIGRlcGFydCgpOwotICAgIGNvcHkoJnB0cik7Ci0gICAgcmV0dXJuICp0aGlzOwot
ICB9Ci0KLSAgbGlua2VkX3B0ciYgb3BlcmF0b3I9KGxpbmtlZF9wdHIgY29uc3QmIHB0cikgewot
ICAgIGlmICgmcHRyICE9IHRoaXMpIHsKLSAgICAgIGRlcGFydCgpOwotICAgICAgY29weSgmcHRy
KTsKLSAgICB9Ci0gICAgcmV0dXJuICp0aGlzOwotICB9Ci0KLSAgLy8gU21hcnQgcG9pbnRlciBt
ZW1iZXJzLgotICB2b2lkIHJlc2V0KFQqIHB0ciA9IE5VTEwpIHsKLSAgICBkZXBhcnQoKTsKLSAg
ICBjYXB0dXJlKHB0cik7Ci0gIH0KLSAgVCogZ2V0KCkgY29uc3QgeyByZXR1cm4gdmFsdWVfOyB9
Ci0gIFQqIG9wZXJhdG9yLT4oKSBjb25zdCB7IHJldHVybiB2YWx1ZV87IH0KLSAgVCYgb3BlcmF0
b3IqKCkgY29uc3QgeyByZXR1cm4gKnZhbHVlXzsgfQotCi0gIGJvb2wgb3BlcmF0b3I9PShUKiBw
KSBjb25zdCB7IHJldHVybiB2YWx1ZV8gPT0gcDsgfQotICBib29sIG9wZXJhdG9yIT0oVCogcCkg
Y29uc3QgeyByZXR1cm4gdmFsdWVfICE9IHA7IH0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFU+Ci0g
IGJvb2wgb3BlcmF0b3I9PShsaW5rZWRfcHRyPFU+IGNvbnN0JiBwdHIpIGNvbnN0IHsKLSAgICBy
ZXR1cm4gdmFsdWVfID09IHB0ci5nZXQoKTsKLSAgfQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVT4K
LSAgYm9vbCBvcGVyYXRvciE9KGxpbmtlZF9wdHI8VT4gY29uc3QmIHB0cikgY29uc3QgewotICAg
IHJldHVybiB2YWx1ZV8gIT0gcHRyLmdldCgpOwotICB9Ci0KLSBwcml2YXRlOgotICB0ZW1wbGF0
ZSA8dHlwZW5hbWUgVT4KLSAgZnJpZW5kIGNsYXNzIGxpbmtlZF9wdHI7Ci0KLSAgVCogdmFsdWVf
OwotICBsaW5rZWRfcHRyX2ludGVybmFsIGxpbmtfOwotCi0gIHZvaWQgZGVwYXJ0KCkgewotICAg
IGlmIChsaW5rXy5kZXBhcnQoKSkgZGVsZXRlIHZhbHVlXzsKLSAgfQotCi0gIHZvaWQgY2FwdHVy
ZShUKiBwdHIpIHsKLSAgICB2YWx1ZV8gPSBwdHI7Ci0gICAgbGlua18uam9pbl9uZXcoKTsKLSAg
fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBVPiB2b2lkIGNvcHkobGlua2VkX3B0cjxVPiBjb25z
dCogcHRyKSB7Ci0gICAgdmFsdWVfID0gcHRyLT5nZXQoKTsKLSAgICBpZiAodmFsdWVfKQotICAg
ICAgbGlua18uam9pbigmcHRyLT5saW5rXyk7Ci0gICAgZWxzZQotICAgICAgbGlua18uam9pbl9u
ZXcoKTsKLSAgfQotfTsKLQotdGVtcGxhdGU8dHlwZW5hbWUgVD4gaW5saW5lCi1ib29sIG9wZXJh
dG9yPT0oVCogcHRyLCBjb25zdCBsaW5rZWRfcHRyPFQ+JiB4KSB7Ci0gIHJldHVybiBwdHIgPT0g
eC5nZXQoKTsKLX0KLQotdGVtcGxhdGU8dHlwZW5hbWUgVD4gaW5saW5lCi1ib29sIG9wZXJhdG9y
IT0oVCogcHRyLCBjb25zdCBsaW5rZWRfcHRyPFQ+JiB4KSB7Ci0gIHJldHVybiBwdHIgIT0geC5n
ZXQoKTsKLX0KLQotLy8gQSBmdW5jdGlvbiB0byBjb252ZXJ0IFQqIGludG8gbGlua2VkX3B0cjxU
PgotLy8gRG9pbmcgZS5nLiBtYWtlX2xpbmtlZF9wdHIobmV3IEZvb0JhckJhejx0eXBlPihhcmcp
KSBpcyBhIHNob3J0ZXIgbm90YXRpb24KLS8vIGZvciBsaW5rZWRfcHRyPEZvb0JhckJhejx0eXBl
PiA+KG5ldyBGb29CYXJCYXo8dHlwZT4oYXJnKSkKLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotbGlu
a2VkX3B0cjxUPiBtYWtlX2xpbmtlZF9wdHIoVCogcHRyKSB7Ci0gIHJldHVybiBsaW5rZWRfcHRy
PFQ+KHB0cik7Ci19Ci0KLX0gIC8vIG5hbWVzcGFjZSBpbnRlcm5hbAotfSAgLy8gbmFtZXNwYWNl
IHRlc3RpbmcKLQotI2VuZGlmICAvLyBHVEVTVF9JTkNMVURFX0dURVNUX0lOVEVSTkFMX0dURVNU
X0xJTktFRF9QVFJfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xl
dGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1wYXJhbS11dGlsLWdlbmVyYXRl
ZC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0
L2ludGVybmFsL2d0ZXN0LXBhcmFtLXV0aWwtZ2VuZXJhdGVkLmgKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDRmYWM4YzAyNzAzZDU5MWViMmYyMmVmMTQ4NDFiNDI1NTZjNTA0MDguLjAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90
aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LXBh
cmFtLXV0aWwtZ2VuZXJhdGVkLmgKKysrIC9kZXYvbnVsbApAQCAtMSw1NTUyICswLDAgQEAKLS8v
IFRoaXMgZmlsZSB3YXMgR0VORVJBVEVEIGJ5IGNvbW1hbmQ6Ci0vLyAgICAgcHVtcC5weSBndGVz
dC1wYXJhbS11dGlsLWdlbmVyYXRlZC5oLnB1bXAKLS8vIERPIE5PVCBFRElUIEJZIEhBTkQhISEK
LQotLy8gQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4KLS8vIEFsbCBSaWdodHMgUmVzZXJ2ZWQu
Ci0vLwotLy8gUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Ci0vLyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCi0vLyBtZXQ6Ci0vLwotLy8gICAg
ICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLS8vIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KLS8vICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLS8vIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKLS8vIGluIHRoZSBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLS8v
IGRpc3RyaWJ1dGlvbi4KLS8vICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4g
bm9yIHRoZSBuYW1lcyBvZiBpdHMKLS8vIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCi0vLyB0aGlzIHNvZnR3YXJlIHdp
dGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotLy8KLS8vIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRP
UlMKLS8vICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UCi0vLyBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKLS8vIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0vLyBPV05F
UiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwKLS8vIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QKLS8vIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAotLy8gREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0v
LyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCi0vLyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLS8vIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0KLQotLy8gVHlw
ZSBhbmQgZnVuY3Rpb24gdXRpbGl0aWVzIGZvciBpbXBsZW1lbnRpbmcgcGFyYW1ldGVyaXplZCB0
ZXN0cy4KLS8vIFRoaXMgZmlsZSBpcyBnZW5lcmF0ZWQgYnkgYSBTQ1JJUFQuICBETyBOT1QgRURJ
VCBCWSBIQU5EIQotLy8KLS8vIEN1cnJlbnRseSBHb29nbGUgVGVzdCBzdXBwb3J0cyBhdCBtb3N0
IDUwIGFyZ3VtZW50cyBpbiBWYWx1ZXMsCi0vLyBhbmQgYXQgbW9zdCAxMCBhcmd1bWVudHMgaW4g
Q29tYmluZS4gUGxlYXNlIGNvbnRhY3QKLS8vIGdvb2dsZXRlc3RmcmFtZXdvcmtAZ29vZ2xlZ3Jv
dXBzLmNvbSBpZiB5b3UgbmVlZCBtb3JlLgotLy8gUGxlYXNlIG5vdGUgdGhhdCB0aGUgbnVtYmVy
IG9mIGFyZ3VtZW50cyB0byBDb21iaW5lIGlzIGxpbWl0ZWQKLS8vIGJ5IHRoZSBtYXhpbXVtIGFy
aXR5IG9mIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0dXBsZSB3aGljaCBpcwotLy8gY3VycmVudGx5
IHNldCBhdCAxMC4KLQotLy8gR09PR0xFVEVTVF9DTTAwMDEgRE8gTk9UIERFTEVURQotCi0jaWZu
ZGVmIEdURVNUX0lOQ0xVREVfR1RFU1RfSU5URVJOQUxfR1RFU1RfUEFSQU1fVVRJTF9HRU5FUkFU
RURfSF8KLSNkZWZpbmUgR1RFU1RfSU5DTFVERV9HVEVTVF9JTlRFUk5BTF9HVEVTVF9QQVJBTV9V
VElMX0dFTkVSQVRFRF9IXwotCi0jaW5jbHVkZSAiZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtcGFyYW0t
dXRpbC5oIgotI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQuaCIKLQotbmFtZXNw
YWNlIHRlc3RpbmcgewotCi0vLyBGb3J3YXJkIGRlY2xhcmF0aW9ucyBvZiBWYWx1ZXNJbigpLCB3
aGljaCBpcyBpbXBsZW1lbnRlZCBpbgotLy8gaW5jbHVkZS9ndGVzdC9ndGVzdC1wYXJhbS10ZXN0
LmguCi10ZW1wbGF0ZSA8dHlwZW5hbWUgRm9yd2FyZEl0ZXJhdG9yPgotaW50ZXJuYWw6OlBhcmFt
R2VuZXJhdG9yPAotICB0eXBlbmFtZSA6OnRlc3Rpbmc6OmludGVybmFsOjpJdGVyYXRvclRyYWl0
czxGb3J3YXJkSXRlcmF0b3I+Ojp2YWx1ZV90eXBlPgotVmFsdWVzSW4oRm9yd2FyZEl0ZXJhdG9y
IGJlZ2luLCBGb3J3YXJkSXRlcmF0b3IgZW5kKTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQsIHNp
emVfdCBOPgotaW50ZXJuYWw6OlBhcmFtR2VuZXJhdG9yPFQ+IFZhbHVlc0luKGNvbnN0IFQgKCZh
cnJheSlbTl0pOwotCi10ZW1wbGF0ZSA8Y2xhc3MgQ29udGFpbmVyPgotaW50ZXJuYWw6OlBhcmFt
R2VuZXJhdG9yPHR5cGVuYW1lIENvbnRhaW5lcjo6dmFsdWVfdHlwZT4gVmFsdWVzSW4oCi0gICAg
Y29uc3QgQ29udGFpbmVyJiBjb250YWluZXIpOwotCi1uYW1lc3BhY2UgaW50ZXJuYWwgewotCi0v
LyBVc2VkIGluIHRoZSBWYWx1ZXMoKSBmdW5jdGlvbiB0byBwcm92aWRlIHBvbHltb3JwaGljIGNh
cGFiaWxpdGllcy4KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMT4KLWNsYXNzIFZhbHVlQXJyYXkxIHsK
LSBwdWJsaWM6Ci0gIGV4cGxpY2l0IFZhbHVlQXJyYXkxKFQxIHYxKSA6IHYxXyh2MSkge30KLQot
ICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBj
b25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0YXRpY19jYXN0PFQ+KHYxXyl9OwotICAg
IHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5MShjb25zdCBWYWx1
ZUFycmF5MSYgb3RoZXIpIDogdjFfKG90aGVyLnYxXykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5v
IGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVy
YXRvcj0oY29uc3QgVmFsdWVBcnJheTEmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci19Owot
Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyPgotY2xhc3MgVmFsdWVBcnJheTIg
ewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTIoVDEgdjEsIFQyIHYyKSA6IHYxXyh2MSksIHYyXyh2
Mikge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0
b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0YXRpY19jYXN0PFQ+KHYx
XyksIHN0YXRpY19jYXN0PFQ+KHYyXyl9OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0g
IH0KLQotICBWYWx1ZUFycmF5Mihjb25zdCBWYWx1ZUFycmF5MiYgb3RoZXIpIDogdjFfKG90aGVy
LnYxXyksIHYyXyhvdGhlci52Ml8pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRh
dGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0
IFZhbHVlQXJyYXkyJiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87
Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMz4K
LWNsYXNzIFZhbHVlQXJyYXkzIHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXkzKFQxIHYxLCBUMiB2
MiwgVDMgdjMpIDogdjFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSB7fQotCi0gIHRlbXBsYXRlIDx0
eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsKLSAgICBj
b25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4odjJf
KSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjNfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFy
cmF5KTsKLSAgfQotCi0gIFZhbHVlQXJyYXkzKGNvbnN0IFZhbHVlQXJyYXkzJiBvdGhlcikgOiB2
MV8ob3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyksCi0gICAgICB2M18ob3RoZXIudjNfKSB7fQot
Ci0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3Vw
cG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MyYgb3RoZXIpOwotCi0g
IGNvbnN0IFQxIHYxXzsKLSAgY29uc3QgVDIgdjJfOwotICBjb25zdCBUMyB2M187Ci19OwotCi10
ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUg
VDQ+Ci1jbGFzcyBWYWx1ZUFycmF5NCB7Ci0gcHVibGljOgotICBWYWx1ZUFycmF5NChUMSB2MSwg
VDIgdjIsIFQzIHYzLCBUNCB2NCkgOiB2MV8odjEpLCB2Ml8odjIpLCB2M18odjMpLAotICAgICAg
djRfKHY0KSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJhbUdl
bmVyYXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nhc3Q8
VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjNf
KSwgc3RhdGljX2Nhc3Q8VD4odjRfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5KTsKLSAg
fQotCi0gIFZhbHVlQXJyYXk0KGNvbnN0IFZhbHVlQXJyYXk0JiBvdGhlcikgOiB2MV8ob3RoZXIu
djFfKSwgdjJfKG90aGVyLnYyXyksCi0gICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0
Xykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBp
cyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTQmIG90aGVy
KTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNfOwot
ICBjb25zdCBUNCB2NF87Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQy
LCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1PgotY2xhc3MgVmFsdWVBcnJh
eTUgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTUoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQs
IFQ1IHY1KSA6IHYxXyh2MSksIHYyXyh2MiksIHYzXyh2MyksCi0gICAgICB2NF8odjQpLCB2NV8o
djUpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJh
dG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2
MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBz
dGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2NV8pfTsKLSAgICByZXR1cm4gVmFs
dWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTUoY29uc3QgVmFsdWVBcnJheTUmIG90
aGVyKSA6IHYxXyhvdGhlci52MV8pLCB2Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52
M18pLCB2NF8ob3RoZXIudjRfKSwgdjVfKG90aGVyLnY1Xykge30KLQotIHByaXZhdGU6Ci0gIC8v
IE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBv
cGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTUmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0g
IGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0
IFQ1IHY1XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVu
YW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDY+Ci1jbGFz
cyBWYWx1ZUFycmF5NiB7Ci0gcHVibGljOgotICBWYWx1ZUFycmF5NihUMSB2MSwgVDIgdjIsIFQz
IHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2KSA6IHYxXyh2MSksIHYyXyh2MiksCi0gICAgICB2M18o
djMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1l
IFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQg
YXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAg
ICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2Fz
dDxUPih2NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pfTsKLSAgICByZXR1cm4gVmFs
dWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTYoY29uc3QgVmFsdWVBcnJheTYmIG90
aGVyKSA6IHYxXyhvdGhlci52MV8pLCB2Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52
M18pLCB2NF8ob3RoZXIudjRfKSwgdjVfKG90aGVyLnY1XyksIHY2XyhvdGhlci52Nl8pIHt9Ci0K
LSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBw
b3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IFZhbHVlQXJyYXk2JiBvdGhlcik7Ci0KLSAg
Y29uc3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3Qg
VDQgdjRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLX07Ci0KLXRlbXBsYXRl
IDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlw
ZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3PgotY2xhc3MgVmFsdWVBcnJh
eTcgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTcoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQs
IFQ1IHY1LCBUNiB2NiwgVDcgdjcpIDogdjFfKHYxKSwKLSAgICAgIHYyXyh2MiksIHYzXyh2Myks
IHY0Xyh2NCksIHY1Xyh2NSksIHY2Xyh2NiksIHY3Xyh2Nykge30KLQotICB0ZW1wbGF0ZSA8dHlw
ZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29u
c3QgVCBhcnJheVtdID0ge3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyks
Ci0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRp
Y19jYXN0PFQ+KHY1XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0
PFQ+KHY3Xyl9OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFy
cmF5Nyhjb25zdCBWYWx1ZUFycmF5NyYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhl
ci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIu
djVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSB7fQotCi0gcHJpdmF0
ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgot
ICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5NyYgb3RoZXIpOwotCi0gIGNvbnN0IFQx
IHYxXzsKLSAgY29uc3QgVDIgdjJfOwotICBjb25zdCBUMyB2M187Ci0gIGNvbnN0IFQ0IHY0XzsK
LSAgY29uc3QgVDUgdjVfOwotICBjb25zdCBUNiB2Nl87Ci0gIGNvbnN0IFQ3IHY3XzsKLX07Ci0K
LXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFt
ZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFt
ZSBUOD4KLWNsYXNzIFZhbHVlQXJyYXk4IHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXk4KFQxIHYx
LCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LAotICAgICAgVDggdjgp
IDogdjFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSwgdjRfKHY0KSwgdjVfKHY1KSwgdjZfKHY2KSwg
djdfKHY3KSwKLSAgICAgIHY4Xyh2OCkge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAg
b3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtd
ID0ge3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0
YXRpY19jYXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1
XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0
YXRpY19jYXN0PFQ+KHY4Xyl9OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQot
ICBWYWx1ZUFycmF5OChjb25zdCBWYWx1ZUFycmF5OCYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyks
IHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2
NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhf
KG90aGVyLnY4Xykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNz
aWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJh
eTgmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3Qg
VDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZf
OwotICBjb25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBl
bmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUg
VDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUg
VDk+Ci1jbGFzcyBWYWx1ZUFycmF5OSB7Ci0gcHVibGljOgotICBWYWx1ZUFycmF5OShUMSB2MSwg
VDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsCi0gICAgICBU
OSB2OSkgOiB2MV8odjEpLCB2Ml8odjIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8o
djYpLCB2N18odjcpLAotICAgICAgdjhfKHY4KSwgdjlfKHY5KSB7fQotCi0gIHRlbXBsYXRlIDx0
eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsKLSAgICBj
b25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4odjJf
KSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjNfKSwgc3RhdGljX2Nhc3Q8VD4odjRfKSwgc3Rh
dGljX2Nhc3Q8VD4odjVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjZfKSwgc3RhdGljX2Nh
c3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8VD4odjhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4o
djlfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5KTsKLSAgfQotCi0gIFZhbHVlQXJyYXk5
KGNvbnN0IFZhbHVlQXJyYXk5JiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90aGVyLnYy
XyksCi0gICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhlci52NV8p
LCB2Nl8ob3RoZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIudjhfKSwg
djlfKG90aGVyLnY5Xykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0g
YXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVB
cnJheTkmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29u
c3QgVDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYg
djZfOwotICBjb25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwot
fTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5
cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5
cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwPgotY2xhc3MgVmFsdWVBcnJheTEw
IHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXkxMChUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwg
VDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAgICAgVDEwIHYxMCkgOiB2MV8o
djEpLCB2Ml8odjIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpLCB2N18odjcp
LAotICAgICAgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApIHt9Ci0KLSAgdGVtcGxhdGUgPHR5
cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNv
bnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8p
LAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0
aWNfY2FzdDxUPih2NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2Fz
dDxUPih2N18pLCBzdGF0aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2
OV8pLCBzdGF0aWNfY2FzdDxUPih2MTBfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5KTsK
LSAgfQotCi0gIFZhbHVlQXJyYXkxMChjb25zdCBWYWx1ZUFycmF5MTAmIG90aGVyKSA6IHYxXyhv
dGhlci52MV8pLCB2Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52M18pLCB2NF8ob3Ro
ZXIudjRfKSwgdjVfKG90aGVyLnY1XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAgdjdfKG90aGVy
LnY3XyksIHY4XyhvdGhlci52OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhlci52MTBfKSB7
fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVu
c3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MTAmIG90aGVyKTsK
LQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNfOwotICBj
b25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBjb25zdCBU
NyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBUMTAgdjEw
XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQz
LCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3
LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBU
MTE+Ci1jbGFzcyBWYWx1ZUFycmF5MTEgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTExKFQxIHYx
LCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjks
Ci0gICAgICBUMTAgdjEwLCBUMTEgdjExKSA6IHYxXyh2MSksIHYyXyh2MiksIHYzXyh2MyksIHY0
Xyh2NCksIHY1Xyh2NSksIHY2Xyh2NiksCi0gICAgICB2N18odjcpLCB2OF8odjgpLCB2OV8odjkp
LCB2MTBfKHYxMCksIHYxMV8odjExKSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBv
cGVyYXRvciBQYXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10g
PSB7c3RhdGljX2Nhc3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3Rh
dGljX2Nhc3Q8VD4odjNfKSwgc3RhdGljX2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVf
KSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3Rh
dGljX2Nhc3Q8VD4odjhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nh
c3Q8VD4odjEwXyksIHN0YXRpY19jYXN0PFQ+KHYxMV8pfTsKLSAgICByZXR1cm4gVmFsdWVzSW4o
YXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTExKGNvbnN0IFZhbHVlQXJyYXkxMSYgb3RoZXIp
IDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyks
IHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2
N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90aGVy
LnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8g
aW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJh
dG9yPShjb25zdCBWYWx1ZUFycmF5MTEmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNv
bnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1
IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBjb25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsK
LSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBUMTAgdjEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci19
OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlw
ZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlw
ZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0
eXBlbmFtZSBUMTI+Ci1jbGFzcyBWYWx1ZUFycmF5MTIgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJh
eTEyKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2
OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyKSA6IHYxXyh2MSksIHYy
Xyh2MiksIHYzXyh2MyksIHY0Xyh2NCksIHY1Xyh2NSksCi0gICAgICB2Nl8odjYpLCB2N18odjcp
LCB2OF8odjgpLCB2OV8odjkpLCB2MTBfKHYxMCksIHYxMV8odjExKSwgdjEyXyh2MTIpIHt9Ci0K
LSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkg
Y29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0
aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2Fz
dDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2
Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18pLCBzdGF0aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBz
dGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNfY2FzdDxUPih2MTBfKSwgc3RhdGljX2Nhc3Q8VD4o
djExXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxMl8pfTsKLSAgICByZXR1cm4gVmFsdWVz
SW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTEyKGNvbnN0IFZhbHVlQXJyYXkxMiYgb3Ro
ZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYz
XyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAg
ICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90
aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJfKSB7fQot
Ci0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3Vw
cG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MTImIG90aGVyKTsKLQot
ICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNfOwotICBjb25z
dCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBjb25zdCBUNyB2
N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBUMTAgdjEwXzsK
LSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotfTsKLQotdGVtcGxhdGUgPHR5
cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFt
ZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFt
ZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBl
bmFtZSBUMTM+Ci1jbGFzcyBWYWx1ZUFycmF5MTMgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTEz
KFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwg
VDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzKSA6IHYxXyh2
MSksIHYyXyh2MiksIHYzXyh2MyksIHY0Xyh2NCksCi0gICAgICB2NV8odjUpLCB2Nl8odjYpLCB2
N18odjcpLCB2OF8odjgpLCB2OV8odjkpLCB2MTBfKHYxMCksIHYxMV8odjExKSwKLSAgICAgIHYx
Ml8odjEyKSwgdjEzXyh2MTMpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJh
dG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtz
dGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBzdGF0aWNf
Y2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2NV8pLAot
ICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18pLCBzdGF0aWNf
Y2FzdDxUPih2OF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNfY2FzdDxU
Pih2MTBfKSwgc3RhdGljX2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYx
Ml8pLCBzdGF0aWNfY2FzdDxUPih2MTNfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5KTsK
LSAgfQotCi0gIFZhbHVlQXJyYXkxMyhjb25zdCBWYWx1ZUFycmF5MTMmIG90aGVyKSA6IHYxXyhv
dGhlci52MV8pLCB2Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52M18pLCB2NF8ob3Ro
ZXIudjRfKSwgdjVfKG90aGVyLnY1XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAgdjdfKG90aGVy
LnY3XyksIHY4XyhvdGhlci52OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhlci52MTBfKSwK
LSAgICAgIHYxMV8ob3RoZXIudjExXyksIHYxMl8ob3RoZXIudjEyXyksIHYxM18ob3RoZXIudjEz
Xykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBp
cyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTEzJiBvdGhl
cik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsK
LSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLSAgY29u
c3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29uc3QgVDEw
IHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwotICBjb25zdCBUMTIgdjEyXzsKLSAgY29uc3QgVDEz
IHYxM187Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFt
ZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFt
ZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5h
bWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0PgotY2xhc3Mg
VmFsdWVBcnJheTE0IHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXkxNChUMSB2MSwgVDIgdjIsIFQz
IHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAgICAgVDEw
IHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0IHYxNCkgOiB2MV8odjEpLCB2Ml8o
djIpLCB2M18odjMpLAotICAgICAgdjRfKHY0KSwgdjVfKHY1KSwgdjZfKHY2KSwgdjdfKHY3KSwg
djhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLAotICAgICAgdjExXyh2MTEpLCB2MTJfKHYxMiks
IHYxM18odjEzKSwgdjE0Xyh2MTQpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIG9w
ZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlbXSA9
IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBzdGF0
aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2NV8p
LAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18pLCBzdGF0
aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNfY2Fz
dDxUPih2MTBfKSwgc3RhdGljX2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+
KHYxMl8pLCBzdGF0aWNfY2FzdDxUPih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4odjE0Xyl9OwotICAg
IHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5MTQoY29uc3QgVmFs
dWVBcnJheTE0JiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyksCi0gICAg
ICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhlci52NV8pLCB2Nl8ob3Ro
ZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIudjhfKSwgdjlfKG90aGVy
LnY5XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFfKG90aGVyLnYxMV8pLCB2MTJfKG90
aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90aGVyLnYxNF8pIHt9Ci0KLSBwcml2
YXRlOgotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQu
Ci0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IFZhbHVlQXJyYXkxNCYgb3RoZXIpOwotCi0gIGNvbnN0
IFQxIHYxXzsKLSAgY29uc3QgVDIgdjJfOwotICBjb25zdCBUMyB2M187Ci0gIGNvbnN0IFQ0IHY0
XzsKLSAgY29uc3QgVDUgdjVfOwotICBjb25zdCBUNiB2Nl87Ci0gIGNvbnN0IFQ3IHY3XzsKLSAg
Y29uc3QgVDggdjhfOwotICBjb25zdCBUOSB2OV87Ci0gIGNvbnN0IFQxMCB2MTBfOwotICBjb25z
dCBUMTEgdjExXzsKLSAgY29uc3QgVDEyIHYxMl87Ci0gIGNvbnN0IFQxMyB2MTNfOwotICBjb25z
dCBUMTQgdjE0XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5
cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5
cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0
eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5
cGVuYW1lIFQxNT4KLWNsYXNzIFZhbHVlQXJyYXkxNSB7Ci0gcHVibGljOgotICBWYWx1ZUFycmF5
MTUoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4
LCBUOSB2OSwKLSAgICAgIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2
MTQsIFQxNSB2MTUpIDogdjFfKHYxKSwgdjJfKHYyKSwKLSAgICAgIHYzXyh2MyksIHY0Xyh2NCks
IHY1Xyh2NSksIHY2Xyh2NiksIHY3Xyh2NyksIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwK
LSAgICAgIHYxMV8odjExKSwgdjEyXyh2MTIpLCB2MTNfKHYxMyksIHYxNF8odjE0KSwgdjE1Xyh2
MTUpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJh
dG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2
MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBz
dGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2NV8pLAotICAgICAgICBzdGF0aWNf
Y2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18pLCBzdGF0aWNfY2FzdDxUPih2OF8pLAot
ICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNfY2FzdDxUPih2MTBfKSwgc3RhdGlj
X2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxMl8pLCBzdGF0aWNfY2Fz
dDxUPih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4odjE0XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+
KHYxNV8pfTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJh
eTE1KGNvbnN0IFZhbHVlQXJyYXkxNSYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhl
ci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIu
djVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4
XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52
MTFfKSwgdjEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRf
KSwKLSAgICAgIHYxNV8ob3RoZXIudjE1Xykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxl
bWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0o
Y29uc3QgVmFsdWVBcnJheTE1JiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBU
MiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBUNSB2NV87
Ci0gIGNvbnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87Ci0gIGNv
bnN0IFQ5IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwotICBjb25z
dCBUMTIgdjEyXzsKLSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRfOwotICBjb25z
dCBUMTUgdjE1XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5
cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5
cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0
eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5
cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTY+Ci1jbGFzcyBWYWx1ZUFycmF5MTYgewotIHB1
YmxpYzoKLSAgVmFsdWVBcnJheTE2KFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwg
VDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIg
djEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2KSA6IHYxXyh2MSksCi0gICAg
ICB2Ml8odjIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpLCB2N18odjcpLCB2
OF8odjgpLCB2OV8odjkpLAotICAgICAgdjEwXyh2MTApLCB2MTFfKHYxMSksIHYxMl8odjEyKSwg
djEzXyh2MTMpLCB2MTRfKHYxNCksIHYxNV8odjE1KSwKLSAgICAgIHYxNl8odjE2KSB7fQotCi0g
IHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjxUPigpIGNv
bnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4odjFfKSwgc3RhdGlj
X2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjNfKSwgc3RhdGljX2Nhc3Q8
VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjZf
KSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8VD4odjhfKSwKLSAgICAgICAgc3Rh
dGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4odjEwXyksIHN0YXRpY19jYXN0PFQ+KHYx
MV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTJfKSwgc3RhdGljX2Nhc3Q8VD4odjEzXyks
IHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTVfKSwgc3Rh
dGljX2Nhc3Q8VD4odjE2Xyl9OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQot
ICBWYWx1ZUFycmF5MTYoY29uc3QgVmFsdWVBcnJheTE2JiBvdGhlcikgOiB2MV8ob3RoZXIudjFf
KSwgdjJfKG90aGVyLnYyXyksCi0gICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0Xyks
IHY1XyhvdGhlci52NV8pLCB2Nl8ob3RoZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2
OF8ob3RoZXIudjhfKSwgdjlfKG90aGVyLnY5XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2
MTFfKG90aGVyLnYxMV8pLCB2MTJfKG90aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRf
KG90aGVyLnYxNF8pLAotICAgICAgdjE1XyhvdGhlci52MTVfKSwgdjE2XyhvdGhlci52MTZfKSB7
fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVu
c3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MTYmIG90aGVyKTsK
LQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNfOwotICBj
b25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBjb25zdCBU
NyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBUMTAgdjEw
XzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotICBjb25zdCBUMTMgdjEz
XzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwotICBjb25zdCBUMTYgdjE2
XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQz
LCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3
LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBU
MTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQx
NSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNz4KLWNsYXNzIFZhbHVlQXJyYXkxNyB7
Ci0gcHVibGljOgotICBWYWx1ZUFycmF5MTcoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1
IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwKLSAgICAgIFQxMCB2MTAsIFQxMSB2MTEs
IFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsCi0gICAgICBUMTcg
djE3KSA6IHYxXyh2MSksIHYyXyh2MiksIHYzXyh2MyksIHY0Xyh2NCksIHY1Xyh2NSksIHY2Xyh2
NiksIHY3Xyh2NyksCi0gICAgICB2OF8odjgpLCB2OV8odjkpLCB2MTBfKHYxMCksIHYxMV8odjEx
KSwgdjEyXyh2MTIpLCB2MTNfKHYxMyksIHYxNF8odjE0KSwKLSAgICAgIHYxNV8odjE1KSwgdjE2
Xyh2MTYpLCB2MTdfKHYxNykge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0
b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0
YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1XyksCi0g
ICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0YXRpY19j
YXN0PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19jYXN0PFQ+
KHYxMF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjEy
XyksIHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNfY2FzdDxU
Pih2MTdfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5KTsKLSAgfQotCi0gIFZhbHVlQXJy
YXkxNyhjb25zdCBWYWx1ZUFycmF5MTcmIG90aGVyKSA6IHYxXyhvdGhlci52MV8pLCB2Ml8ob3Ro
ZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52M18pLCB2NF8ob3RoZXIudjRfKSwgdjVfKG90aGVy
LnY1XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAgdjdfKG90aGVyLnY3XyksIHY4XyhvdGhlci52
OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhlci52MTBfKSwKLSAgICAgIHYxMV8ob3RoZXIu
djExXyksIHYxMl8ob3RoZXIudjEyXyksIHYxM18ob3RoZXIudjEzXyksIHYxNF8ob3RoZXIudjE0
XyksCi0gICAgICB2MTVfKG90aGVyLnYxNV8pLCB2MTZfKG90aGVyLnYxNl8pLCB2MTdfKG90aGVy
LnYxN18pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1l
bnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IFZhbHVlQXJyYXkxNyYg
b3RoZXIpOwotCi0gIGNvbnN0IFQxIHYxXzsKLSAgY29uc3QgVDIgdjJfOwotICBjb25zdCBUMyB2
M187Ci0gIGNvbnN0IFQ0IHY0XzsKLSAgY29uc3QgVDUgdjVfOwotICBjb25zdCBUNiB2Nl87Ci0g
IGNvbnN0IFQ3IHY3XzsKLSAgY29uc3QgVDggdjhfOwotICBjb25zdCBUOSB2OV87Ci0gIGNvbnN0
IFQxMCB2MTBfOwotICBjb25zdCBUMTEgdjExXzsKLSAgY29uc3QgVDEyIHYxMl87Ci0gIGNvbnN0
IFQxMyB2MTNfOwotICBjb25zdCBUMTQgdjE0XzsKLSAgY29uc3QgVDE1IHYxNV87Ci0gIGNvbnN0
IFQxNiB2MTZfOwotICBjb25zdCBUMTcgdjE3XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBU
MSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0g
ICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5
cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEz
LCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1l
IFQxNywgdHlwZW5hbWUgVDE4PgotY2xhc3MgVmFsdWVBcnJheTE4IHsKLSBwdWJsaWM6Ci0gIFZh
bHVlQXJyYXkxOChUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2
NywgVDggdjgsIFQ5IHY5LAotICAgICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYx
MywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywKLSAgICAgIFQxOCB2MTgpIDog
djFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSwgdjRfKHY0KSwgdjVfKHY1KSwgdjZfKHY2KSwgdjdf
KHY3KSwKLSAgICAgIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwgdjExXyh2MTEpLCB2MTJf
KHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQpLAotICAgICAgdjE1Xyh2MTUpLCB2MTZfKHYxNiks
IHYxN18odjE3KSwgdjE4Xyh2MTgpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIG9w
ZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlbXSA9
IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBzdGF0
aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2NV8p
LAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18pLCBzdGF0
aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNfY2Fz
dDxUPih2MTBfKSwgc3RhdGljX2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+
KHYxMl8pLCBzdGF0aWNfY2FzdDxUPih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4odjE0XyksCi0gICAg
ICAgIHN0YXRpY19jYXN0PFQ+KHYxNV8pLCBzdGF0aWNfY2FzdDxUPih2MTZfKSwgc3RhdGljX2Nh
c3Q8VD4odjE3XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxOF8pfTsKLSAgICByZXR1cm4g
VmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTE4KGNvbnN0IFZhbHVlQXJyYXkx
OCYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90
aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2Xyks
Ci0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2
MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJf
KSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRfKSwKLSAgICAgIHYxNV8ob3RoZXIu
djE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIudjE3XyksIHYxOF8ob3RoZXIudjE4
Xykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBp
cyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTE4JiBvdGhl
cik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsK
LSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLSAgY29u
c3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29uc3QgVDEw
IHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwotICBjb25zdCBUMTIgdjEyXzsKLSAgY29uc3QgVDEz
IHYxM187Ci0gIGNvbnN0IFQxNCB2MTRfOwotICBjb25zdCBUMTUgdjE1XzsKLSAgY29uc3QgVDE2
IHYxNl87Ci0gIGNvbnN0IFQxNyB2MTdfOwotICBjb25zdCBUMTggdjE4XzsKLX07Ci0KLXRlbXBs
YXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwg
dHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwg
dHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQx
MiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFt
ZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTk+Ci1jbGFzcyBW
YWx1ZUFycmF5MTkgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTE5KFQxIHYxLCBUMiB2MiwgVDMg
djMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgICBUMTAg
djEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2
LCBUMTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYxOSkgOiB2MV8odjEpLCB2Ml8odjIpLCB2
M18odjMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpLAotICAgICAgdjdfKHY3KSwgdjhfKHY4
KSwgdjlfKHY5KSwgdjEwXyh2MTApLCB2MTFfKHYxMSksIHYxMl8odjEyKSwgdjEzXyh2MTMpLAot
ICAgICAgdjE0Xyh2MTQpLCB2MTVfKHYxNSksIHYxNl8odjE2KSwgdjE3Xyh2MTcpLCB2MThfKHYx
OCksIHYxOV8odjE5KSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQ
YXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGlj
X2Nhc3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjNfKSwgc3RhdGljX2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8
VD4odjhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4odjEw
XyksIHN0YXRpY19jYXN0PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTJfKSwg
c3RhdGljX2Nhc3Q8VD4odjEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAgICBzdGF0
aWNfY2FzdDxUPih2MTVfKSwgc3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19jYXN0PFQ+KHYx
N18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8VD4odjE5Xyl9
OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5MTkoY29u
c3QgVmFsdWVBcnJheTE5JiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyks
Ci0gICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhlci52NV8pLCB2
Nl8ob3RoZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIudjhfKSwgdjlf
KG90aGVyLnY5XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFfKG90aGVyLnYxMV8pLCB2
MTJfKG90aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90aGVyLnYxNF8pLAotICAg
ICAgdjE1XyhvdGhlci52MTVfKSwgdjE2XyhvdGhlci52MTZfKSwgdjE3XyhvdGhlci52MTdfKSwg
djE4XyhvdGhlci52MThfKSwKLSAgICAgIHYxOV8ob3RoZXIudjE5Xykge30KLQotIHByaXZhdGU6
Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAg
dm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTE5JiBvdGhlcik7Ci0KLSAgY29uc3QgVDEg
djFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwot
ICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25z
dCBUOCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQx
MSB2MTFfOwotICBjb25zdCBUMTIgdjEyXzsKLSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQx
NCB2MTRfOwotICBjb25zdCBUMTUgdjE1XzsKLSAgY29uc3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQx
NyB2MTdfOwotICBjb25zdCBUMTggdjE4XzsKLSAgY29uc3QgVDE5IHYxOV87Ci19OwotCi10ZW1w
bGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQs
IHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgs
IHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBU
MTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5h
bWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFt
ZSBUMjA+Ci1jbGFzcyBWYWx1ZUFycmF5MjAgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTIwKFQx
IHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkg
djksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBU
MTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYy
MCkgOiB2MV8odjEpLCB2Ml8odjIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8odjUpLAotICAgICAg
djZfKHY2KSwgdjdfKHY3KSwgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLCB2MTFfKHYxMSks
IHYxMl8odjEyKSwKLSAgICAgIHYxM18odjEzKSwgdjE0Xyh2MTQpLCB2MTVfKHYxNSksIHYxNl8o
djE2KSwgdjE3Xyh2MTcpLCB2MThfKHYxOCksCi0gICAgICB2MTlfKHYxOSksIHYyMF8odjIwKSB7
fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjxU
PigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4odjFfKSwg
c3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjNfKSwgc3RhdGlj
X2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8VD4odjhfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4odjEwXyksIHN0YXRpY19jYXN0
PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTJfKSwgc3RhdGljX2Nhc3Q8VD4o
djEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTVf
KSwgc3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19jYXN0PFQ+KHYxN18pLAotICAgICAgICBz
dGF0aWNfY2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8VD4odjE5XyksIHN0YXRpY19jYXN0PFQ+
KHYyMF8pfTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJh
eTIwKGNvbnN0IFZhbHVlQXJyYXkyMCYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhl
ci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIu
djVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4
XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52
MTFfKSwgdjEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRf
KSwKLSAgICAgIHYxNV8ob3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIu
djE3XyksIHYxOF8ob3RoZXIudjE4XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90
aGVyLnYyMF8pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2ln
bm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IFZhbHVlQXJyYXky
MCYgb3RoZXIpOwotCi0gIGNvbnN0IFQxIHYxXzsKLSAgY29uc3QgVDIgdjJfOwotICBjb25zdCBU
MyB2M187Ci0gIGNvbnN0IFQ0IHY0XzsKLSAgY29uc3QgVDUgdjVfOwotICBjb25zdCBUNiB2Nl87
Ci0gIGNvbnN0IFQ3IHY3XzsKLSAgY29uc3QgVDggdjhfOwotICBjb25zdCBUOSB2OV87Ci0gIGNv
bnN0IFQxMCB2MTBfOwotICBjb25zdCBUMTEgdjExXzsKLSAgY29uc3QgVDEyIHYxMl87Ci0gIGNv
bnN0IFQxMyB2MTNfOwotICBjb25zdCBUMTQgdjE0XzsKLSAgY29uc3QgVDE1IHYxNV87Ci0gIGNv
bnN0IFQxNiB2MTZfOwotICBjb25zdCBUMTcgdjE3XzsKLSAgY29uc3QgVDE4IHYxOF87Ci0gIGNv
bnN0IFQxOSB2MTlfOwotICBjb25zdCBUMjAgdjIwXzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFt
ZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUs
Ci0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDks
IHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUg
VDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVu
YW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0
eXBlbmFtZSBUMjE+Ci1jbGFzcyBWYWx1ZUFycmF5MjEgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJh
eTIxKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2
OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQg
djE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYxOSwg
VDIwIHYyMCwgVDIxIHYyMSkgOiB2MV8odjEpLCB2Ml8odjIpLCB2M18odjMpLCB2NF8odjQpLAot
ICAgICAgdjVfKHY1KSwgdjZfKHY2KSwgdjdfKHY3KSwgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2
MTApLCB2MTFfKHYxMSksCi0gICAgICB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQpLCB2
MTVfKHYxNSksIHYxNl8odjE2KSwgdjE3Xyh2MTcpLAotICAgICAgdjE4Xyh2MTgpLCB2MTlfKHYx
OSksIHYyMF8odjIwKSwgdjIxXyh2MjEpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0g
IG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlb
XSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBz
dGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2
NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18pLCBz
dGF0aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNf
Y2FzdDxUPih2MTBfKSwgc3RhdGljX2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19jYXN0
PFQ+KHYxMl8pLCBzdGF0aWNfY2FzdDxUPih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4odjE0XyksCi0g
ICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxNV8pLCBzdGF0aWNfY2FzdDxUPih2MTZfKSwgc3RhdGlj
X2Nhc3Q8VD4odjE3XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxOF8pLCBzdGF0aWNfY2Fz
dDxUPih2MTlfKSwgc3RhdGljX2Nhc3Q8VD4odjIwXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+
KHYyMV8pfTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJh
eTIxKGNvbnN0IFZhbHVlQXJyYXkyMSYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhl
ci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIu
djVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4
XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52
MTFfKSwgdjEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRf
KSwKLSAgICAgIHYxNV8ob3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIu
djE3XyksIHYxOF8ob3RoZXIudjE4XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90
aGVyLnYyMF8pLCB2MjFfKG90aGVyLnYyMV8pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBs
ZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9
KGNvbnN0IFZhbHVlQXJyYXkyMSYgb3RoZXIpOwotCi0gIGNvbnN0IFQxIHYxXzsKLSAgY29uc3Qg
VDIgdjJfOwotICBjb25zdCBUMyB2M187Ci0gIGNvbnN0IFQ0IHY0XzsKLSAgY29uc3QgVDUgdjVf
OwotICBjb25zdCBUNiB2Nl87Ci0gIGNvbnN0IFQ3IHY3XzsKLSAgY29uc3QgVDggdjhfOwotICBj
b25zdCBUOSB2OV87Ci0gIGNvbnN0IFQxMCB2MTBfOwotICBjb25zdCBUMTEgdjExXzsKLSAgY29u
c3QgVDEyIHYxMl87Ci0gIGNvbnN0IFQxMyB2MTNfOwotICBjb25zdCBUMTQgdjE0XzsKLSAgY29u
c3QgVDE1IHYxNV87Ci0gIGNvbnN0IFQxNiB2MTZfOwotICBjb25zdCBUMTcgdjE3XzsKLSAgY29u
c3QgVDE4IHYxOF87Ci0gIGNvbnN0IFQxOSB2MTlfOwotICBjb25zdCBUMjAgdjIwXzsKLSAgY29u
c3QgVDIxIHYyMV87Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0
eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0
eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAg
dHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0
eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQx
OCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFt
ZSBUMjI+Ci1jbGFzcyBWYWx1ZUFycmF5MjIgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTIyKFQx
IHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkg
djksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBU
MTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYy
MCwgVDIxIHYyMSwgVDIyIHYyMikgOiB2MV8odjEpLCB2Ml8odjIpLCB2M18odjMpLAotICAgICAg
djRfKHY0KSwgdjVfKHY1KSwgdjZfKHY2KSwgdjdfKHY3KSwgdjhfKHY4KSwgdjlfKHY5KSwgdjEw
Xyh2MTApLAotICAgICAgdjExXyh2MTEpLCB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQp
LCB2MTVfKHYxNSksIHYxNl8odjE2KSwKLSAgICAgIHYxN18odjE3KSwgdjE4Xyh2MTgpLCB2MTlf
KHYxOSksIHYyMF8odjIwKSwgdjIxXyh2MjEpLCB2MjJfKHYyMikge30KLQotICB0ZW1wbGF0ZSA8
dHlwZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAg
Y29uc3QgVCBhcnJheVtdID0ge3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYy
XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0
YXRpY19jYXN0PFQ+KHY1XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19j
YXN0PFQ+KHY3XyksIHN0YXRpY19jYXN0PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+
KHY5XyksIHN0YXRpY19jYXN0PFQ+KHYxMF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjEyXyksIHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2Fz
dDxUPih2MTRfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+
KHYxNl8pLCBzdGF0aWNfY2FzdDxUPih2MTdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE4
XyksIHN0YXRpY19jYXN0PFQ+KHYxOV8pLCBzdGF0aWNfY2FzdDxUPih2MjBfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjIxXyksIHN0YXRpY19jYXN0PFQ+KHYyMl8pfTsKLSAgICByZXR1cm4g
VmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTIyKGNvbnN0IFZhbHVlQXJyYXky
MiYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90
aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2Xyks
Ci0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2
MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJf
KSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRfKSwKLSAgICAgIHYxNV8ob3RoZXIu
djE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIudjE3XyksIHYxOF8ob3RoZXIudjE4
XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90aGVyLnYyMF8pLCB2MjFfKG90aGVy
LnYyMV8pLCB2MjJfKG90aGVyLnYyMl8pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1l
bnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNv
bnN0IFZhbHVlQXJyYXkyMiYgb3RoZXIpOwotCi0gIGNvbnN0IFQxIHYxXzsKLSAgY29uc3QgVDIg
djJfOwotICBjb25zdCBUMyB2M187Ci0gIGNvbnN0IFQ0IHY0XzsKLSAgY29uc3QgVDUgdjVfOwot
ICBjb25zdCBUNiB2Nl87Ci0gIGNvbnN0IFQ3IHY3XzsKLSAgY29uc3QgVDggdjhfOwotICBjb25z
dCBUOSB2OV87Ci0gIGNvbnN0IFQxMCB2MTBfOwotICBjb25zdCBUMTEgdjExXzsKLSAgY29uc3Qg
VDEyIHYxMl87Ci0gIGNvbnN0IFQxMyB2MTNfOwotICBjb25zdCBUMTQgdjE0XzsKLSAgY29uc3Qg
VDE1IHYxNV87Ci0gIGNvbnN0IFQxNiB2MTZfOwotICBjb25zdCBUMTcgdjE3XzsKLSAgY29uc3Qg
VDE4IHYxOF87Ci0gIGNvbnN0IFQxOSB2MTlfOwotICBjb25zdCBUMjAgdjIwXzsKLSAgY29uc3Qg
VDIxIHYyMV87Ci0gIGNvbnN0IFQyMiB2MjJfOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQx
LCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAg
ICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlw
ZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMs
IHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUg
VDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVu
YW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjM+Ci1jbGFzcyBWYWx1ZUFycmF5MjMg
ewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTIzKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBU
NSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjEx
LCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LAot
ICAgICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYy
MykgOiB2MV8odjEpLCB2Ml8odjIpLAotICAgICAgdjNfKHYzKSwgdjRfKHY0KSwgdjVfKHY1KSwg
djZfKHY2KSwgdjdfKHY3KSwgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLAotICAgICAgdjEx
Xyh2MTEpLCB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQpLCB2MTVfKHYxNSksIHYxNl8o
djE2KSwKLSAgICAgIHYxN18odjE3KSwgdjE4Xyh2MTgpLCB2MTlfKHYxOSksIHYyMF8odjIwKSwg
djIxXyh2MjEpLCB2MjJfKHYyMiksCi0gICAgICB2MjNfKHYyMykge30KLQotICB0ZW1wbGF0ZSA8
dHlwZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAg
Y29uc3QgVCBhcnJheVtdID0ge3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYy
XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0
YXRpY19jYXN0PFQ+KHY1XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19j
YXN0PFQ+KHY3XyksIHN0YXRpY19jYXN0PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+
KHY5XyksIHN0YXRpY19jYXN0PFQ+KHYxMF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjEyXyksIHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2Fz
dDxUPih2MTRfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+
KHYxNl8pLCBzdGF0aWNfY2FzdDxUPih2MTdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE4
XyksIHN0YXRpY19jYXN0PFQ+KHYxOV8pLCBzdGF0aWNfY2FzdDxUPih2MjBfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjIxXyksIHN0YXRpY19jYXN0PFQ+KHYyMl8pLCBzdGF0aWNfY2FzdDxU
Pih2MjNfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5KTsKLSAgfQotCi0gIFZhbHVlQXJy
YXkyMyhjb25zdCBWYWx1ZUFycmF5MjMmIG90aGVyKSA6IHYxXyhvdGhlci52MV8pLCB2Ml8ob3Ro
ZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52M18pLCB2NF8ob3RoZXIudjRfKSwgdjVfKG90aGVy
LnY1XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAgdjdfKG90aGVyLnY3XyksIHY4XyhvdGhlci52
OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhlci52MTBfKSwKLSAgICAgIHYxMV8ob3RoZXIu
djExXyksIHYxMl8ob3RoZXIudjEyXyksIHYxM18ob3RoZXIudjEzXyksIHYxNF8ob3RoZXIudjE0
XyksCi0gICAgICB2MTVfKG90aGVyLnYxNV8pLCB2MTZfKG90aGVyLnYxNl8pLCB2MTdfKG90aGVy
LnYxN18pLCB2MThfKG90aGVyLnYxOF8pLAotICAgICAgdjE5XyhvdGhlci52MTlfKSwgdjIwXyhv
dGhlci52MjBfKSwgdjIxXyhvdGhlci52MjFfKSwgdjIyXyhvdGhlci52MjJfKSwKLSAgICAgIHYy
M18ob3RoZXIudjIzXykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0g
YXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVB
cnJheTIzJiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNv
bnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2
IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsK
LSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwotICBjb25zdCBUMTIgdjEyXzsK
LSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRfOwotICBjb25zdCBUMTUgdjE1XzsK
LSAgY29uc3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQxNyB2MTdfOwotICBjb25zdCBUMTggdjE4XzsK
LSAgY29uc3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQyMCB2MjBfOwotICBjb25zdCBUMjEgdjIxXzsK
LSAgY29uc3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQyMyB2MjNfOwotfTsKLQotdGVtcGxhdGUgPHR5
cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFt
ZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFt
ZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBl
bmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwg
dHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAot
ICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQy
ND4KLWNsYXNzIFZhbHVlQXJyYXkyNCB7Ci0gcHVibGljOgotICBWYWx1ZUFycmF5MjQoVDEgdjEs
IFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwK
LSAgICAgIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2
MTUsIFQxNiB2MTYsIFQxNyB2MTcsCi0gICAgICBUMTggdjE4LCBUMTkgdjE5LCBUMjAgdjIwLCBU
MjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIzLCBUMjQgdjI0KSA6IHYxXyh2MSksCi0gICAgICB2Ml8o
djIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpLCB2N18odjcpLCB2OF8odjgp
LCB2OV8odjkpLAotICAgICAgdjEwXyh2MTApLCB2MTFfKHYxMSksIHYxMl8odjEyKSwgdjEzXyh2
MTMpLCB2MTRfKHYxNCksIHYxNV8odjE1KSwKLSAgICAgIHYxNl8odjE2KSwgdjE3Xyh2MTcpLCB2
MThfKHYxOCksIHYxOV8odjE5KSwgdjIwXyh2MjApLCB2MjFfKHYyMSksCi0gICAgICB2MjJfKHYy
MiksIHYyM18odjIzKSwgdjI0Xyh2MjQpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0g
IG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlb
XSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBz
dGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2
NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18pLCBz
dGF0aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNf
Y2FzdDxUPih2MTBfKSwgc3RhdGljX2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19jYXN0
PFQ+KHYxMl8pLCBzdGF0aWNfY2FzdDxUPih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4odjE0XyksCi0g
ICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxNV8pLCBzdGF0aWNfY2FzdDxUPih2MTZfKSwgc3RhdGlj
X2Nhc3Q8VD4odjE3XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxOF8pLCBzdGF0aWNfY2Fz
dDxUPih2MTlfKSwgc3RhdGljX2Nhc3Q8VD4odjIwXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+
KHYyMV8pLCBzdGF0aWNfY2FzdDxUPih2MjJfKSwgc3RhdGljX2Nhc3Q8VD4odjIzXyksCi0gICAg
ICAgIHN0YXRpY19jYXN0PFQ+KHYyNF8pfTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwot
ICB9Ci0KLSAgVmFsdWVBcnJheTI0KGNvbnN0IFZhbHVlQXJyYXkyNCYgb3RoZXIpIDogdjFfKG90
aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhl
ci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIu
djdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAot
ICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNf
KSwgdjE0XyhvdGhlci52MTRfKSwKLSAgICAgIHYxNV8ob3RoZXIudjE1XyksIHYxNl8ob3RoZXIu
djE2XyksIHYxN18ob3RoZXIudjE3XyksIHYxOF8ob3RoZXIudjE4XyksCi0gICAgICB2MTlfKG90
aGVyLnYxOV8pLCB2MjBfKG90aGVyLnYyMF8pLCB2MjFfKG90aGVyLnYyMV8pLCB2MjJfKG90aGVy
LnYyMl8pLAotICAgICAgdjIzXyhvdGhlci52MjNfKSwgdjI0XyhvdGhlci52MjRfKSB7fQotCi0g
cHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9y
dGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MjQmIG90aGVyKTsKLQotICBj
b25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNfOwotICBjb25zdCBU
NCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBjb25zdCBUNyB2N187
Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBUMTAgdjEwXzsKLSAg
Y29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotICBjb25zdCBUMTMgdjEzXzsKLSAg
Y29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwotICBjb25zdCBUMTYgdjE2XzsKLSAg
Y29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwotICBjb25zdCBUMTkgdjE5XzsKLSAg
Y29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwotICBjb25zdCBUMjIgdjIyXzsKLSAg
Y29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwotfTsKLQotdGVtcGxhdGUgPHR5cGVu
YW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBU
NSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBU
OSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFt
ZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlw
ZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAg
IHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwg
dHlwZW5hbWUgVDI1PgotY2xhc3MgVmFsdWVBcnJheTI1IHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJy
YXkyNShUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDgg
djgsIFQ5IHY5LAotICAgICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0
IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywKLSAgICAgIFQxOCB2MTgsIFQxOSB2MTks
IFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsCi0gICAgICBUMjUg
djI1KSA6IHYxXyh2MSksIHYyXyh2MiksIHYzXyh2MyksIHY0Xyh2NCksIHY1Xyh2NSksIHY2Xyh2
NiksIHY3Xyh2NyksCi0gICAgICB2OF8odjgpLCB2OV8odjkpLCB2MTBfKHYxMCksIHYxMV8odjEx
KSwgdjEyXyh2MTIpLCB2MTNfKHYxMyksIHYxNF8odjE0KSwKLSAgICAgIHYxNV8odjE1KSwgdjE2
Xyh2MTYpLCB2MTdfKHYxNyksIHYxOF8odjE4KSwgdjE5Xyh2MTkpLCB2MjBfKHYyMCksCi0gICAg
ICB2MjFfKHYyMSksIHYyMl8odjIyKSwgdjIzXyh2MjMpLCB2MjRfKHYyNCksIHYyNV8odjI1KSB7
fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjxU
PigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4odjFfKSwg
c3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjNfKSwgc3RhdGlj
X2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8VD4odjhfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4odjEwXyksIHN0YXRpY19jYXN0
PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTJfKSwgc3RhdGljX2Nhc3Q8VD4o
djEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTVf
KSwgc3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19jYXN0PFQ+KHYxN18pLAotICAgICAgICBz
dGF0aWNfY2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8VD4odjE5XyksIHN0YXRpY19jYXN0PFQ+
KHYyMF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjFfKSwgc3RhdGljX2Nhc3Q8VD4odjIy
XyksIHN0YXRpY19jYXN0PFQ+KHYyM18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjRfKSwg
c3RhdGljX2Nhc3Q8VD4odjI1Xyl9OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0K
LQotICBWYWx1ZUFycmF5MjUoY29uc3QgVmFsdWVBcnJheTI1JiBvdGhlcikgOiB2MV8ob3RoZXIu
djFfKSwgdjJfKG90aGVyLnYyXyksCi0gICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0
XyksIHY1XyhvdGhlci52NV8pLCB2Nl8ob3RoZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18p
LCB2OF8ob3RoZXIudjhfKSwgdjlfKG90aGVyLnY5XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAg
ICB2MTFfKG90aGVyLnYxMV8pLCB2MTJfKG90aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2
MTRfKG90aGVyLnYxNF8pLAotICAgICAgdjE1XyhvdGhlci52MTVfKSwgdjE2XyhvdGhlci52MTZf
KSwgdjE3XyhvdGhlci52MTdfKSwgdjE4XyhvdGhlci52MThfKSwKLSAgICAgIHYxOV8ob3RoZXIu
djE5XyksIHYyMF8ob3RoZXIudjIwXyksIHYyMV8ob3RoZXIudjIxXyksIHYyMl8ob3RoZXIudjIy
XyksCi0gICAgICB2MjNfKG90aGVyLnYyM18pLCB2MjRfKG90aGVyLnYyNF8pLCB2MjVfKG90aGVy
LnYyNV8pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1l
bnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IFZhbHVlQXJyYXkyNSYg
b3RoZXIpOwotCi0gIGNvbnN0IFQxIHYxXzsKLSAgY29uc3QgVDIgdjJfOwotICBjb25zdCBUMyB2
M187Ci0gIGNvbnN0IFQ0IHY0XzsKLSAgY29uc3QgVDUgdjVfOwotICBjb25zdCBUNiB2Nl87Ci0g
IGNvbnN0IFQ3IHY3XzsKLSAgY29uc3QgVDggdjhfOwotICBjb25zdCBUOSB2OV87Ci0gIGNvbnN0
IFQxMCB2MTBfOwotICBjb25zdCBUMTEgdjExXzsKLSAgY29uc3QgVDEyIHYxMl87Ci0gIGNvbnN0
IFQxMyB2MTNfOwotICBjb25zdCBUMTQgdjE0XzsKLSAgY29uc3QgVDE1IHYxNV87Ci0gIGNvbnN0
IFQxNiB2MTZfOwotICBjb25zdCBUMTcgdjE3XzsKLSAgY29uc3QgVDE4IHYxOF87Ci0gIGNvbnN0
IFQxOSB2MTlfOwotICBjb25zdCBUMjAgdjIwXzsKLSAgY29uc3QgVDIxIHYyMV87Ci0gIGNvbnN0
IFQyMiB2MjJfOwotICBjb25zdCBUMjMgdjIzXzsKLSAgY29uc3QgVDI0IHYyNF87Ci0gIGNvbnN0
IFQyNSB2MjVfOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlw
ZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlw
ZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5
cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlw
ZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgs
IHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUg
VDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVu
YW1lIFQyNj4KLWNsYXNzIFZhbHVlQXJyYXkyNiB7Ci0gcHVibGljOgotICBWYWx1ZUFycmF5MjYo
VDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBU
OSB2OSwKLSAgICAgIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQs
IFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsCi0gICAgICBUMTggdjE4LCBUMTkgdjE5LCBUMjAg
djIwLCBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIzLCBUMjQgdjI0LCBUMjUgdjI1LAotICAgICAg
VDI2IHYyNikgOiB2MV8odjEpLCB2Ml8odjIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8odjUpLCB2
Nl8odjYpLCB2N18odjcpLAotICAgICAgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLCB2MTFf
KHYxMSksIHYxMl8odjEyKSwgdjEzXyh2MTMpLCB2MTRfKHYxNCksCi0gICAgICB2MTVfKHYxNSks
IHYxNl8odjE2KSwgdjE3Xyh2MTcpLCB2MThfKHYxOCksIHYxOV8odjE5KSwgdjIwXyh2MjApLAot
ICAgICAgdjIxXyh2MjEpLCB2MjJfKHYyMiksIHYyM18odjIzKSwgdjI0Xyh2MjQpLCB2MjVfKHYy
NSksIHYyNl8odjI2KSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQ
YXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGlj
X2Nhc3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjNfKSwgc3RhdGljX2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8
VD4odjhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4odjEw
XyksIHN0YXRpY19jYXN0PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTJfKSwg
c3RhdGljX2Nhc3Q8VD4odjEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAgICBzdGF0
aWNfY2FzdDxUPih2MTVfKSwgc3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19jYXN0PFQ+KHYx
N18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8VD4odjE5Xyks
IHN0YXRpY19jYXN0PFQ+KHYyMF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjFfKSwgc3Rh
dGljX2Nhc3Q8VD4odjIyXyksIHN0YXRpY19jYXN0PFQ+KHYyM18pLAotICAgICAgICBzdGF0aWNf
Y2FzdDxUPih2MjRfKSwgc3RhdGljX2Nhc3Q8VD4odjI1XyksIHN0YXRpY19jYXN0PFQ+KHYyNl8p
fTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTI2KGNv
bnN0IFZhbHVlQXJyYXkyNiYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8p
LAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwg
djZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5
XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwg
djEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRfKSwKLSAg
ICAgIHYxNV8ob3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIudjE3Xyks
IHYxOF8ob3RoZXIudjE4XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90aGVyLnYy
MF8pLCB2MjFfKG90aGVyLnYyMV8pLCB2MjJfKG90aGVyLnYyMl8pLAotICAgICAgdjIzXyhvdGhl
ci52MjNfKSwgdjI0XyhvdGhlci52MjRfKSwgdjI1XyhvdGhlci52MjVfKSwgdjI2XyhvdGhlci52
MjZfKSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50
IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MjYmIG90
aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNf
OwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBj
b25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBU
MTAgdjEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotICBjb25zdCBU
MTMgdjEzXzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwotICBjb25zdCBU
MTYgdjE2XzsKLSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwotICBjb25zdCBU
MTkgdjE5XzsKLSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwotICBjb25zdCBU
MjIgdjIyXzsKLSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwotICBjb25zdCBU
MjUgdjI1XzsKLSAgY29uc3QgVDI2IHYyNl87Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEs
IHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAg
IHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBl
bmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywg
dHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBU
MTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5h
bWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFt
ZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjc+Ci1jbGFzcyBWYWx1ZUFycmF5
MjcgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTI3KFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0
LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEg
djExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3
LAotICAgICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIz
IHYyMywgVDI0IHYyNCwgVDI1IHYyNSwKLSAgICAgIFQyNiB2MjYsIFQyNyB2MjcpIDogdjFfKHYx
KSwgdjJfKHYyKSwgdjNfKHYzKSwgdjRfKHY0KSwgdjVfKHY1KSwgdjZfKHY2KSwKLSAgICAgIHY3
Xyh2NyksIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwgdjExXyh2MTEpLCB2MTJfKHYxMiks
IHYxM18odjEzKSwKLSAgICAgIHYxNF8odjE0KSwgdjE1Xyh2MTUpLCB2MTZfKHYxNiksIHYxN18o
djE3KSwgdjE4Xyh2MTgpLCB2MTlfKHYxOSksCi0gICAgICB2MjBfKHYyMCksIHYyMV8odjIxKSwg
djIyXyh2MjIpLCB2MjNfKHYyMyksIHYyNF8odjI0KSwgdjI1Xyh2MjUpLAotICAgICAgdjI2Xyh2
MjYpLCB2MjdfKHYyNykge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0b3Ig
UGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0YXRp
Y19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0YXRpY19jYXN0
PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1XyksCi0gICAg
ICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0YXRpY19jYXN0
PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19jYXN0PFQ+KHYx
MF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjEyXyks
IHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAgICAgICAgc3Rh
dGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNfY2FzdDxUPih2
MTdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE4XyksIHN0YXRpY19jYXN0PFQ+KHYxOV8p
LCBzdGF0aWNfY2FzdDxUPih2MjBfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjIxXyksIHN0
YXRpY19jYXN0PFQ+KHYyMl8pLCBzdGF0aWNfY2FzdDxUPih2MjNfKSwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8VD4odjI0XyksIHN0YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0aWNfY2FzdDxUPih2MjZf
KSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI3Xyl9OwotICAgIHJldHVybiBWYWx1ZXNJbihh
cnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5MjcoY29uc3QgVmFsdWVBcnJheTI3JiBvdGhlcikg
OiB2MV8ob3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyksCi0gICAgICB2M18ob3RoZXIudjNfKSwg
djRfKG90aGVyLnY0XyksIHY1XyhvdGhlci52NV8pLCB2Nl8ob3RoZXIudjZfKSwKLSAgICAgIHY3
XyhvdGhlci52N18pLCB2OF8ob3RoZXIudjhfKSwgdjlfKG90aGVyLnY5XyksIHYxMF8ob3RoZXIu
djEwXyksCi0gICAgICB2MTFfKG90aGVyLnYxMV8pLCB2MTJfKG90aGVyLnYxMl8pLCB2MTNfKG90
aGVyLnYxM18pLCB2MTRfKG90aGVyLnYxNF8pLAotICAgICAgdjE1XyhvdGhlci52MTVfKSwgdjE2
XyhvdGhlci52MTZfKSwgdjE3XyhvdGhlci52MTdfKSwgdjE4XyhvdGhlci52MThfKSwKLSAgICAg
IHYxOV8ob3RoZXIudjE5XyksIHYyMF8ob3RoZXIudjIwXyksIHYyMV8ob3RoZXIudjIxXyksIHYy
Ml8ob3RoZXIudjIyXyksCi0gICAgICB2MjNfKG90aGVyLnYyM18pLCB2MjRfKG90aGVyLnYyNF8p
LCB2MjVfKG90aGVyLnYyNV8pLCB2MjZfKG90aGVyLnYyNl8pLAotICAgICAgdjI3XyhvdGhlci52
MjdfKSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50
IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MjcmIG90
aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNf
OwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBj
b25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBU
MTAgdjEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotICBjb25zdCBU
MTMgdjEzXzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwotICBjb25zdCBU
MTYgdjE2XzsKLSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwotICBjb25zdCBU
MTkgdjE5XzsKLSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwotICBjb25zdCBU
MjIgdjIyXzsKLSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwotICBjb25zdCBU
MjUgdjI1XzsKLSAgY29uc3QgVDI2IHYyNl87Ci0gIGNvbnN0IFQyNyB2MjdfOwotfTsKLQotdGVt
cGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0
LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4
LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUg
VDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVu
YW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5h
bWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5
cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3
LCB0eXBlbmFtZSBUMjg+Ci1jbGFzcyBWYWx1ZUFycmF5MjggewotIHB1YmxpYzoKLSAgVmFsdWVB
cnJheTI4KFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBU
OCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBU
MTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYx
OSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywgVDI0IHYyNCwgVDI1IHYyNSwK
LSAgICAgIFQyNiB2MjYsIFQyNyB2MjcsIFQyOCB2MjgpIDogdjFfKHYxKSwgdjJfKHYyKSwgdjNf
KHYzKSwgdjRfKHY0KSwgdjVfKHY1KSwKLSAgICAgIHY2Xyh2NiksIHY3Xyh2NyksIHY4Xyh2OCks
IHY5Xyh2OSksIHYxMF8odjEwKSwgdjExXyh2MTEpLCB2MTJfKHYxMiksCi0gICAgICB2MTNfKHYx
MyksIHYxNF8odjE0KSwgdjE1Xyh2MTUpLCB2MTZfKHYxNiksIHYxN18odjE3KSwgdjE4Xyh2MTgp
LAotICAgICAgdjE5Xyh2MTkpLCB2MjBfKHYyMCksIHYyMV8odjIxKSwgdjIyXyh2MjIpLCB2MjNf
KHYyMyksIHYyNF8odjI0KSwKLSAgICAgIHYyNV8odjI1KSwgdjI2Xyh2MjYpLCB2MjdfKHYyNyks
IHYyOF8odjI4KSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJh
bUdlbmVyYXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nh
c3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4o
djNfKSwgc3RhdGljX2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8VD4o
djhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4odjEwXyks
IHN0YXRpY19jYXN0PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTJfKSwgc3Rh
dGljX2Nhc3Q8VD4odjEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAgICBzdGF0aWNf
Y2FzdDxUPih2MTVfKSwgc3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19jYXN0PFQ+KHYxN18p
LAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8VD4odjE5XyksIHN0
YXRpY19jYXN0PFQ+KHYyMF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjFfKSwgc3RhdGlj
X2Nhc3Q8VD4odjIyXyksIHN0YXRpY19jYXN0PFQ+KHYyM18pLAotICAgICAgICBzdGF0aWNfY2Fz
dDxUPih2MjRfKSwgc3RhdGljX2Nhc3Q8VD4odjI1XyksIHN0YXRpY19jYXN0PFQ+KHYyNl8pLAot
ICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjdfKSwgc3RhdGljX2Nhc3Q8VD4odjI4Xyl9OwotICAg
IHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5MjgoY29uc3QgVmFs
dWVBcnJheTI4JiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyksCi0gICAg
ICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhlci52NV8pLCB2Nl8ob3Ro
ZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIudjhfKSwgdjlfKG90aGVy
LnY5XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFfKG90aGVyLnYxMV8pLCB2MTJfKG90
aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90aGVyLnYxNF8pLAotICAgICAgdjE1
XyhvdGhlci52MTVfKSwgdjE2XyhvdGhlci52MTZfKSwgdjE3XyhvdGhlci52MTdfKSwgdjE4Xyhv
dGhlci52MThfKSwKLSAgICAgIHYxOV8ob3RoZXIudjE5XyksIHYyMF8ob3RoZXIudjIwXyksIHYy
MV8ob3RoZXIudjIxXyksIHYyMl8ob3RoZXIudjIyXyksCi0gICAgICB2MjNfKG90aGVyLnYyM18p
LCB2MjRfKG90aGVyLnYyNF8pLCB2MjVfKG90aGVyLnYyNV8pLCB2MjZfKG90aGVyLnYyNl8pLAot
ICAgICAgdjI3XyhvdGhlci52MjdfKSwgdjI4XyhvdGhlci52MjhfKSB7fQotCi0gcHJpdmF0ZToK
LSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2
b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MjgmIG90aGVyKTsKLQotICBjb25zdCBUMSB2
MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0g
IGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBjb25zdCBUNyB2N187Ci0gIGNvbnN0
IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBUMTAgdjEwXzsKLSAgY29uc3QgVDEx
IHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotICBjb25zdCBUMTMgdjEzXzsKLSAgY29uc3QgVDE0
IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwotICBjb25zdCBUMTYgdjE2XzsKLSAgY29uc3QgVDE3
IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwotICBjb25zdCBUMTkgdjE5XzsKLSAgY29uc3QgVDIw
IHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwotICBjb25zdCBUMjIgdjIyXzsKLSAgY29uc3QgVDIz
IHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwotICBjb25zdCBUMjUgdjI1XzsKLSAgY29uc3QgVDI2
IHYyNl87Ci0gIGNvbnN0IFQyNyB2MjdfOwotICBjb25zdCBUMjggdjI4XzsKLX07Ci0KLXRlbXBs
YXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwg
dHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwg
dHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQx
MiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFt
ZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1l
IFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBl
bmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywg
dHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjk+Ci1jbGFzcyBWYWx1ZUFycmF5MjkgewotIHB1Ymxp
YzoKLSAgVmFsdWVBcnJheTI5KFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYg
djYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEy
LCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LAotICAgICAgVDE4
IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywgVDI0IHYy
NCwgVDI1IHYyNSwKLSAgICAgIFQyNiB2MjYsIFQyNyB2MjcsIFQyOCB2MjgsIFQyOSB2MjkpIDog
djFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSwgdjRfKHY0KSwKLSAgICAgIHY1Xyh2NSksIHY2Xyh2
NiksIHY3Xyh2NyksIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwgdjExXyh2MTEpLAotICAg
ICAgdjEyXyh2MTIpLCB2MTNfKHYxMyksIHYxNF8odjE0KSwgdjE1Xyh2MTUpLCB2MTZfKHYxNiks
IHYxN18odjE3KSwKLSAgICAgIHYxOF8odjE4KSwgdjE5Xyh2MTkpLCB2MjBfKHYyMCksIHYyMV8o
djIxKSwgdjIyXyh2MjIpLCB2MjNfKHYyMyksCi0gICAgICB2MjRfKHYyNCksIHYyNV8odjI1KSwg
djI2Xyh2MjYpLCB2MjdfKHYyNyksIHYyOF8odjI4KSwgdjI5Xyh2MjkpIHt9Ci0KLSAgdGVtcGxh
dGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3Qgewot
ICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxU
Pih2Ml8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8p
LCBzdGF0aWNfY2FzdDxUPih2NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0
aWNfY2FzdDxUPih2N18pLCBzdGF0aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBzdGF0aWNfY2Fz
dDxUPih2OV8pLCBzdGF0aWNfY2FzdDxUPih2MTBfKSwgc3RhdGljX2Nhc3Q8VD4odjExXyksCi0g
ICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxMl8pLCBzdGF0aWNfY2FzdDxUPih2MTNfKSwgc3RhdGlj
X2Nhc3Q8VD4odjE0XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxNV8pLCBzdGF0aWNfY2Fz
dDxUPih2MTZfKSwgc3RhdGljX2Nhc3Q8VD4odjE3XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+
KHYxOF8pLCBzdGF0aWNfY2FzdDxUPih2MTlfKSwgc3RhdGljX2Nhc3Q8VD4odjIwXyksCi0gICAg
ICAgIHN0YXRpY19jYXN0PFQ+KHYyMV8pLCBzdGF0aWNfY2FzdDxUPih2MjJfKSwgc3RhdGljX2Nh
c3Q8VD4odjIzXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyNF8pLCBzdGF0aWNfY2FzdDxU
Pih2MjVfKSwgc3RhdGljX2Nhc3Q8VD4odjI2XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYy
N18pLCBzdGF0aWNfY2FzdDxUPih2MjhfKSwgc3RhdGljX2Nhc3Q8VD4odjI5Xyl9OwotICAgIHJl
dHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5MjkoY29uc3QgVmFsdWVB
cnJheTI5JiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyksCi0gICAgICB2
M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhlci52NV8pLCB2Nl8ob3RoZXIu
djZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIudjhfKSwgdjlfKG90aGVyLnY5
XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFfKG90aGVyLnYxMV8pLCB2MTJfKG90aGVy
LnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90aGVyLnYxNF8pLAotICAgICAgdjE1Xyhv
dGhlci52MTVfKSwgdjE2XyhvdGhlci52MTZfKSwgdjE3XyhvdGhlci52MTdfKSwgdjE4XyhvdGhl
ci52MThfKSwKLSAgICAgIHYxOV8ob3RoZXIudjE5XyksIHYyMF8ob3RoZXIudjIwXyksIHYyMV8o
b3RoZXIudjIxXyksIHYyMl8ob3RoZXIudjIyXyksCi0gICAgICB2MjNfKG90aGVyLnYyM18pLCB2
MjRfKG90aGVyLnYyNF8pLCB2MjVfKG90aGVyLnYyNV8pLCB2MjZfKG90aGVyLnYyNl8pLAotICAg
ICAgdjI3XyhvdGhlci52MjdfKSwgdjI4XyhvdGhlci52MjhfKSwgdjI5XyhvdGhlci52MjlfKSB7
fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVu
c3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MjkmIG90aGVyKTsK
LQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNfOwotICBj
b25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBjb25zdCBU
NyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBUMTAgdjEw
XzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotICBjb25zdCBUMTMgdjEz
XzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwotICBjb25zdCBUMTYgdjE2
XzsKLSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwotICBjb25zdCBUMTkgdjE5
XzsKLSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwotICBjb25zdCBUMjIgdjIy
XzsKLSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwotICBjb25zdCBUMjUgdjI1
XzsKLSAgY29uc3QgVDI2IHYyNl87Ci0gIGNvbnN0IFQyNyB2MjdfOwotICBjb25zdCBUMjggdjI4
XzsKLSAgY29uc3QgVDI5IHYyOV87Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVu
YW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVu
YW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBU
MTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5h
bWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5
cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIx
LCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUs
Ci0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUg
VDI5LCB0eXBlbmFtZSBUMzA+Ci1jbGFzcyBWYWx1ZUFycmF5MzAgewotIHB1YmxpYzoKLSAgVmFs
dWVBcnJheTMwKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3
LCBUOCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEz
LCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5
IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywgVDI0IHYyNCwgVDI1IHYy
NSwKLSAgICAgIFQyNiB2MjYsIFQyNyB2MjcsIFQyOCB2MjgsIFQyOSB2MjksIFQzMCB2MzApIDog
djFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSwKLSAgICAgIHY0Xyh2NCksIHY1Xyh2NSksIHY2Xyh2
NiksIHY3Xyh2NyksIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwKLSAgICAgIHYxMV8odjEx
KSwgdjEyXyh2MTIpLCB2MTNfKHYxMyksIHYxNF8odjE0KSwgdjE1Xyh2MTUpLCB2MTZfKHYxNiks
Ci0gICAgICB2MTdfKHYxNyksIHYxOF8odjE4KSwgdjE5Xyh2MTkpLCB2MjBfKHYyMCksIHYyMV8o
djIxKSwgdjIyXyh2MjIpLAotICAgICAgdjIzXyh2MjMpLCB2MjRfKHYyNCksIHYyNV8odjI1KSwg
djI2Xyh2MjYpLCB2MjdfKHYyNyksIHYyOF8odjI4KSwKLSAgICAgIHYyOV8odjI5KSwgdjMwXyh2
MzApIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJh
dG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2
MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBz
dGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2NV8pLAotICAgICAgICBzdGF0aWNf
Y2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18pLCBzdGF0aWNfY2FzdDxUPih2OF8pLAot
ICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNfY2FzdDxUPih2MTBfKSwgc3RhdGlj
X2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxMl8pLCBzdGF0aWNfY2Fz
dDxUPih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4odjE0XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+
KHYxNV8pLCBzdGF0aWNfY2FzdDxUPih2MTZfKSwgc3RhdGljX2Nhc3Q8VD4odjE3XyksCi0gICAg
ICAgIHN0YXRpY19jYXN0PFQ+KHYxOF8pLCBzdGF0aWNfY2FzdDxUPih2MTlfKSwgc3RhdGljX2Nh
c3Q8VD4odjIwXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyMV8pLCBzdGF0aWNfY2FzdDxU
Pih2MjJfKSwgc3RhdGljX2Nhc3Q8VD4odjIzXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYy
NF8pLCBzdGF0aWNfY2FzdDxUPih2MjVfKSwgc3RhdGljX2Nhc3Q8VD4odjI2XyksCi0gICAgICAg
IHN0YXRpY19jYXN0PFQ+KHYyN18pLCBzdGF0aWNfY2FzdDxUPih2MjhfKSwgc3RhdGljX2Nhc3Q8
VD4odjI5XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzMF8pfTsKLSAgICByZXR1cm4gVmFs
dWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTMwKGNvbnN0IFZhbHVlQXJyYXkzMCYg
b3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVy
LnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0g
ICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2MTBf
KG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJfKSwg
djEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRfKSwKLSAgICAgIHYxNV8ob3RoZXIudjE1
XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIudjE3XyksIHYxOF8ob3RoZXIudjE4Xyks
Ci0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90aGVyLnYyMF8pLCB2MjFfKG90aGVyLnYy
MV8pLCB2MjJfKG90aGVyLnYyMl8pLAotICAgICAgdjIzXyhvdGhlci52MjNfKSwgdjI0XyhvdGhl
ci52MjRfKSwgdjI1XyhvdGhlci52MjVfKSwgdjI2XyhvdGhlci52MjZfKSwKLSAgICAgIHYyN18o
b3RoZXIudjI3XyksIHYyOF8ob3RoZXIudjI4XyksIHYyOV8ob3RoZXIudjI5XyksIHYzMF8ob3Ro
ZXIudjMwXykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdu
bWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTMw
JiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQz
IHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsK
LSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29u
c3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwotICBjb25zdCBUMTIgdjEyXzsKLSAgY29u
c3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRfOwotICBjb25zdCBUMTUgdjE1XzsKLSAgY29u
c3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQxNyB2MTdfOwotICBjb25zdCBUMTggdjE4XzsKLSAgY29u
c3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQyMCB2MjBfOwotICBjb25zdCBUMjEgdjIxXzsKLSAgY29u
c3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQyMyB2MjNfOwotICBjb25zdCBUMjQgdjI0XzsKLSAgY29u
c3QgVDI1IHYyNV87Ci0gIGNvbnN0IFQyNiB2MjZfOwotICBjb25zdCBUMjcgdjI3XzsKLSAgY29u
c3QgVDI4IHYyOF87Ci0gIGNvbnN0IFQyOSB2MjlfOwotICBjb25zdCBUMzAgdjMwXzsKLX07Ci0K
LXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFt
ZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFt
ZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVu
YW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0
eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5
cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIz
LCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1l
IFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBl
bmFtZSBUMzE+Ci1jbGFzcyBWYWx1ZUFycmF5MzEgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTMx
KFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwg
VDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0
LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIw
IHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywgVDI0IHYyNCwgVDI1IHYyNSwKLSAgICAg
IFQyNiB2MjYsIFQyNyB2MjcsIFQyOCB2MjgsIFQyOSB2MjksIFQzMCB2MzAsIFQzMSB2MzEpIDog
djFfKHYxKSwgdjJfKHYyKSwKLSAgICAgIHYzXyh2MyksIHY0Xyh2NCksIHY1Xyh2NSksIHY2Xyh2
NiksIHY3Xyh2NyksIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwKLSAgICAgIHYxMV8odjEx
KSwgdjEyXyh2MTIpLCB2MTNfKHYxMyksIHYxNF8odjE0KSwgdjE1Xyh2MTUpLCB2MTZfKHYxNiks
Ci0gICAgICB2MTdfKHYxNyksIHYxOF8odjE4KSwgdjE5Xyh2MTkpLCB2MjBfKHYyMCksIHYyMV8o
djIxKSwgdjIyXyh2MjIpLAotICAgICAgdjIzXyh2MjMpLCB2MjRfKHYyNCksIHYyNV8odjI1KSwg
djI2Xyh2MjYpLCB2MjdfKHYyNyksIHYyOF8odjI4KSwKLSAgICAgIHYyOV8odjI5KSwgdjMwXyh2
MzApLCB2MzFfKHYzMSkge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0b3Ig
UGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0YXRp
Y19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0YXRpY19jYXN0
PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1XyksCi0gICAg
ICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0YXRpY19jYXN0
PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19jYXN0PFQ+KHYx
MF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjEyXyks
IHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAgICAgICAgc3Rh
dGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNfY2FzdDxUPih2
MTdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE4XyksIHN0YXRpY19jYXN0PFQ+KHYxOV8p
LCBzdGF0aWNfY2FzdDxUPih2MjBfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjIxXyksIHN0
YXRpY19jYXN0PFQ+KHYyMl8pLCBzdGF0aWNfY2FzdDxUPih2MjNfKSwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8VD4odjI0XyksIHN0YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0aWNfY2FzdDxUPih2MjZf
KSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI3XyksIHN0YXRpY19jYXN0PFQ+KHYyOF8pLCBz
dGF0aWNfY2FzdDxUPih2MjlfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMwXyksIHN0YXRp
Y19jYXN0PFQ+KHYzMV8pfTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAg
VmFsdWVBcnJheTMxKGNvbnN0IFZhbHVlQXJyYXkzMSYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyks
IHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2
NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhf
KG90aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjEx
XyhvdGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0Xyhv
dGhlci52MTRfKSwKLSAgICAgIHYxNV8ob3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYx
N18ob3RoZXIudjE3XyksIHYxOF8ob3RoZXIudjE4XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8p
LCB2MjBfKG90aGVyLnYyMF8pLCB2MjFfKG90aGVyLnYyMV8pLCB2MjJfKG90aGVyLnYyMl8pLAot
ICAgICAgdjIzXyhvdGhlci52MjNfKSwgdjI0XyhvdGhlci52MjRfKSwgdjI1XyhvdGhlci52MjVf
KSwgdjI2XyhvdGhlci52MjZfKSwKLSAgICAgIHYyN18ob3RoZXIudjI3XyksIHYyOF8ob3RoZXIu
djI4XyksIHYyOV8ob3RoZXIudjI5XyksIHYzMF8ob3RoZXIudjMwXyksCi0gICAgICB2MzFfKG90
aGVyLnYzMV8pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2ln
bm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IFZhbHVlQXJyYXkz
MSYgb3RoZXIpOwotCi0gIGNvbnN0IFQxIHYxXzsKLSAgY29uc3QgVDIgdjJfOwotICBjb25zdCBU
MyB2M187Ci0gIGNvbnN0IFQ0IHY0XzsKLSAgY29uc3QgVDUgdjVfOwotICBjb25zdCBUNiB2Nl87
Ci0gIGNvbnN0IFQ3IHY3XzsKLSAgY29uc3QgVDggdjhfOwotICBjb25zdCBUOSB2OV87Ci0gIGNv
bnN0IFQxMCB2MTBfOwotICBjb25zdCBUMTEgdjExXzsKLSAgY29uc3QgVDEyIHYxMl87Ci0gIGNv
bnN0IFQxMyB2MTNfOwotICBjb25zdCBUMTQgdjE0XzsKLSAgY29uc3QgVDE1IHYxNV87Ci0gIGNv
bnN0IFQxNiB2MTZfOwotICBjb25zdCBUMTcgdjE3XzsKLSAgY29uc3QgVDE4IHYxOF87Ci0gIGNv
bnN0IFQxOSB2MTlfOwotICBjb25zdCBUMjAgdjIwXzsKLSAgY29uc3QgVDIxIHYyMV87Ci0gIGNv
bnN0IFQyMiB2MjJfOwotICBjb25zdCBUMjMgdjIzXzsKLSAgY29uc3QgVDI0IHYyNF87Ci0gIGNv
bnN0IFQyNSB2MjVfOwotICBjb25zdCBUMjYgdjI2XzsKLSAgY29uc3QgVDI3IHYyN187Ci0gIGNv
bnN0IFQyOCB2MjhfOwotICBjb25zdCBUMjkgdjI5XzsKLSAgY29uc3QgVDMwIHYzMF87Ci0gIGNv
bnN0IFQzMSB2MzFfOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwg
dHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwg
dHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAg
IHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwg
dHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBU
MTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5h
bWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5
cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlw
ZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyPgotY2xhc3MgVmFsdWVB
cnJheTMyIHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXkzMihUMSB2MSwgVDIgdjIsIFQzIHYzLCBU
NCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAgICAgVDEwIHYxMCwg
VDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3
IHYxNywKLSAgICAgIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIs
IFQyMyB2MjMsIFQyNCB2MjQsIFQyNSB2MjUsCi0gICAgICBUMjYgdjI2LCBUMjcgdjI3LCBUMjgg
djI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMxLCBUMzIgdjMyKSA6IHYxXyh2MSksCi0gICAg
ICB2Ml8odjIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpLCB2N18odjcpLCB2
OF8odjgpLCB2OV8odjkpLAotICAgICAgdjEwXyh2MTApLCB2MTFfKHYxMSksIHYxMl8odjEyKSwg
djEzXyh2MTMpLCB2MTRfKHYxNCksIHYxNV8odjE1KSwKLSAgICAgIHYxNl8odjE2KSwgdjE3Xyh2
MTcpLCB2MThfKHYxOCksIHYxOV8odjE5KSwgdjIwXyh2MjApLCB2MjFfKHYyMSksCi0gICAgICB2
MjJfKHYyMiksIHYyM18odjIzKSwgdjI0Xyh2MjQpLCB2MjVfKHYyNSksIHYyNl8odjI2KSwgdjI3
Xyh2MjcpLAotICAgICAgdjI4Xyh2MjgpLCB2MjlfKHYyOSksIHYzMF8odjMwKSwgdjMxXyh2MzEp
LCB2MzJfKHYzMikge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFy
YW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0YXRpY19j
YXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+
KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1XyksCi0gICAgICAg
IHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0YXRpY19jYXN0PFQ+
KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19jYXN0PFQ+KHYxMF8p
LCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjEyXyksIHN0
YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNfY2FzdDxUPih2MTdf
KSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE4XyksIHN0YXRpY19jYXN0PFQ+KHYxOV8pLCBz
dGF0aWNfY2FzdDxUPih2MjBfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjIxXyksIHN0YXRp
Y19jYXN0PFQ+KHYyMl8pLCBzdGF0aWNfY2FzdDxUPih2MjNfKSwKLSAgICAgICAgc3RhdGljX2Nh
c3Q8VD4odjI0XyksIHN0YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0aWNfY2FzdDxUPih2MjZfKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI3XyksIHN0YXRpY19jYXN0PFQ+KHYyOF8pLCBzdGF0
aWNfY2FzdDxUPih2MjlfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMwXyksIHN0YXRpY19j
YXN0PFQ+KHYzMV8pLCBzdGF0aWNfY2FzdDxUPih2MzJfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0lu
KGFycmF5KTsKLSAgfQotCi0gIFZhbHVlQXJyYXkzMihjb25zdCBWYWx1ZUFycmF5MzImIG90aGVy
KSA6IHYxXyhvdGhlci52MV8pLCB2Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52M18p
LCB2NF8ob3RoZXIudjRfKSwgdjVfKG90aGVyLnY1XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAg
djdfKG90aGVyLnY3XyksIHY4XyhvdGhlci52OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhl
ci52MTBfKSwKLSAgICAgIHYxMV8ob3RoZXIudjExXyksIHYxMl8ob3RoZXIudjEyXyksIHYxM18o
b3RoZXIudjEzXyksIHYxNF8ob3RoZXIudjE0XyksCi0gICAgICB2MTVfKG90aGVyLnYxNV8pLCB2
MTZfKG90aGVyLnYxNl8pLCB2MTdfKG90aGVyLnYxN18pLCB2MThfKG90aGVyLnYxOF8pLAotICAg
ICAgdjE5XyhvdGhlci52MTlfKSwgdjIwXyhvdGhlci52MjBfKSwgdjIxXyhvdGhlci52MjFfKSwg
djIyXyhvdGhlci52MjJfKSwKLSAgICAgIHYyM18ob3RoZXIudjIzXyksIHYyNF8ob3RoZXIudjI0
XyksIHYyNV8ob3RoZXIudjI1XyksIHYyNl8ob3RoZXIudjI2XyksCi0gICAgICB2MjdfKG90aGVy
LnYyN18pLCB2MjhfKG90aGVyLnYyOF8pLCB2MjlfKG90aGVyLnYyOV8pLCB2MzBfKG90aGVyLnYz
MF8pLAotICAgICAgdjMxXyhvdGhlci52MzFfKSwgdjMyXyhvdGhlci52MzJfKSB7fQotCi0gcHJp
dmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVk
LgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MzImIG90aGVyKTsKLQotICBjb25z
dCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNfOwotICBjb25zdCBUNCB2
NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBjb25zdCBUNyB2N187Ci0g
IGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBUMTAgdjEwXzsKLSAgY29u
c3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotICBjb25zdCBUMTMgdjEzXzsKLSAgY29u
c3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwotICBjb25zdCBUMTYgdjE2XzsKLSAgY29u
c3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwotICBjb25zdCBUMTkgdjE5XzsKLSAgY29u
c3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwotICBjb25zdCBUMjIgdjIyXzsKLSAgY29u
c3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwotICBjb25zdCBUMjUgdjI1XzsKLSAgY29u
c3QgVDI2IHYyNl87Ci0gIGNvbnN0IFQyNyB2MjdfOwotICBjb25zdCBUMjggdjI4XzsKLSAgY29u
c3QgVDI5IHYyOV87Ci0gIGNvbnN0IFQzMCB2MzBfOwotICBjb25zdCBUMzEgdjMxXzsKLSAgY29u
c3QgVDMyIHYzMl87Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0
eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0
eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAg
dHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0
eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQx
OCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFt
ZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlw
ZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBl
bmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMz4K
LWNsYXNzIFZhbHVlQXJyYXkzMyB7Ci0gcHVibGljOgotICBWYWx1ZUFycmF5MzMoVDEgdjEsIFQy
IHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwKLSAg
ICAgIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUs
IFQxNiB2MTYsIFQxNyB2MTcsCi0gICAgICBUMTggdjE4LCBUMTkgdjE5LCBUMjAgdjIwLCBUMjEg
djIxLCBUMjIgdjIyLCBUMjMgdjIzLCBUMjQgdjI0LCBUMjUgdjI1LAotICAgICAgVDI2IHYyNiwg
VDI3IHYyNywgVDI4IHYyOCwgVDI5IHYyOSwgVDMwIHYzMCwgVDMxIHYzMSwgVDMyIHYzMiwKLSAg
ICAgIFQzMyB2MzMpIDogdjFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSwgdjRfKHY0KSwgdjVfKHY1
KSwgdjZfKHY2KSwgdjdfKHY3KSwKLSAgICAgIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwg
djExXyh2MTEpLCB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQpLAotICAgICAgdjE1Xyh2
MTUpLCB2MTZfKHYxNiksIHYxN18odjE3KSwgdjE4Xyh2MTgpLCB2MTlfKHYxOSksIHYyMF8odjIw
KSwKLSAgICAgIHYyMV8odjIxKSwgdjIyXyh2MjIpLCB2MjNfKHYyMyksIHYyNF8odjI0KSwgdjI1
Xyh2MjUpLCB2MjZfKHYyNiksCi0gICAgICB2MjdfKHYyNyksIHYyOF8odjI4KSwgdjI5Xyh2Mjkp
LCB2MzBfKHYzMCksIHYzMV8odjMxKSwgdjMyXyh2MzIpLAotICAgICAgdjMzXyh2MzMpIHt9Ci0K
LSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkg
Y29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0
aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2Fz
dDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2
Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18pLCBzdGF0aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBz
dGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNfY2FzdDxUPih2MTBfKSwgc3RhdGljX2Nhc3Q8VD4o
djExXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxMl8pLCBzdGF0aWNfY2FzdDxUPih2MTNf
KSwgc3RhdGljX2Nhc3Q8VD4odjE0XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxNV8pLCBz
dGF0aWNfY2FzdDxUPih2MTZfKSwgc3RhdGljX2Nhc3Q8VD4odjE3XyksCi0gICAgICAgIHN0YXRp
Y19jYXN0PFQ+KHYxOF8pLCBzdGF0aWNfY2FzdDxUPih2MTlfKSwgc3RhdGljX2Nhc3Q8VD4odjIw
XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyMV8pLCBzdGF0aWNfY2FzdDxUPih2MjJfKSwg
c3RhdGljX2Nhc3Q8VD4odjIzXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyNF8pLCBzdGF0
aWNfY2FzdDxUPih2MjVfKSwgc3RhdGljX2Nhc3Q8VD4odjI2XyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHYyN18pLCBzdGF0aWNfY2FzdDxUPih2MjhfKSwgc3RhdGljX2Nhc3Q8VD4odjI5Xyks
Ci0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzMF8pLCBzdGF0aWNfY2FzdDxUPih2MzFfKSwgc3Rh
dGljX2Nhc3Q8VD4odjMyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzM18pfTsKLSAgICBy
ZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTMzKGNvbnN0IFZhbHVl
QXJyYXkzMyYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAg
djNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVy
LnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52
OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhl
ci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRfKSwKLSAgICAgIHYxNV8o
b3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIudjE3XyksIHYxOF8ob3Ro
ZXIudjE4XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90aGVyLnYyMF8pLCB2MjFf
KG90aGVyLnYyMV8pLCB2MjJfKG90aGVyLnYyMl8pLAotICAgICAgdjIzXyhvdGhlci52MjNfKSwg
djI0XyhvdGhlci52MjRfKSwgdjI1XyhvdGhlci52MjVfKSwgdjI2XyhvdGhlci52MjZfKSwKLSAg
ICAgIHYyN18ob3RoZXIudjI3XyksIHYyOF8ob3RoZXIudjI4XyksIHYyOV8ob3RoZXIudjI5Xyks
IHYzMF8ob3RoZXIudjMwXyksCi0gICAgICB2MzFfKG90aGVyLnYzMV8pLCB2MzJfKG90aGVyLnYz
Ml8pLCB2MzNfKG90aGVyLnYzM18pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRh
dGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0
IFZhbHVlQXJyYXkzMyYgb3RoZXIpOwotCi0gIGNvbnN0IFQxIHYxXzsKLSAgY29uc3QgVDIgdjJf
OwotICBjb25zdCBUMyB2M187Ci0gIGNvbnN0IFQ0IHY0XzsKLSAgY29uc3QgVDUgdjVfOwotICBj
b25zdCBUNiB2Nl87Ci0gIGNvbnN0IFQ3IHY3XzsKLSAgY29uc3QgVDggdjhfOwotICBjb25zdCBU
OSB2OV87Ci0gIGNvbnN0IFQxMCB2MTBfOwotICBjb25zdCBUMTEgdjExXzsKLSAgY29uc3QgVDEy
IHYxMl87Ci0gIGNvbnN0IFQxMyB2MTNfOwotICBjb25zdCBUMTQgdjE0XzsKLSAgY29uc3QgVDE1
IHYxNV87Ci0gIGNvbnN0IFQxNiB2MTZfOwotICBjb25zdCBUMTcgdjE3XzsKLSAgY29uc3QgVDE4
IHYxOF87Ci0gIGNvbnN0IFQxOSB2MTlfOwotICBjb25zdCBUMjAgdjIwXzsKLSAgY29uc3QgVDIx
IHYyMV87Ci0gIGNvbnN0IFQyMiB2MjJfOwotICBjb25zdCBUMjMgdjIzXzsKLSAgY29uc3QgVDI0
IHYyNF87Ci0gIGNvbnN0IFQyNSB2MjVfOwotICBjb25zdCBUMjYgdjI2XzsKLSAgY29uc3QgVDI3
IHYyN187Ci0gIGNvbnN0IFQyOCB2MjhfOwotICBjb25zdCBUMjkgdjI5XzsKLSAgY29uc3QgVDMw
IHYzMF87Ci0gIGNvbnN0IFQzMSB2MzFfOwotICBjb25zdCBUMzIgdjMyXzsKLSAgY29uc3QgVDMz
IHYzM187Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFt
ZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFt
ZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5h
bWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFt
ZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlw
ZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIs
IHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUg
VDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBU
MzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5h
bWUgVDM0PgotY2xhc3MgVmFsdWVBcnJheTM0IHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXkzNChU
MSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5
IHY5LAotICAgICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0IHYxNCwg
VDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywKLSAgICAgIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2
MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQyNSB2MjUsCi0gICAgICBU
MjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMxLCBUMzIg
djMyLCBUMzMgdjMzLAotICAgICAgVDM0IHYzNCkgOiB2MV8odjEpLCB2Ml8odjIpLCB2M18odjMp
LCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpLCB2N18odjcpLAotICAgICAgdjhfKHY4KSwgdjlf
KHY5KSwgdjEwXyh2MTApLCB2MTFfKHYxMSksIHYxMl8odjEyKSwgdjEzXyh2MTMpLCB2MTRfKHYx
NCksCi0gICAgICB2MTVfKHYxNSksIHYxNl8odjE2KSwgdjE3Xyh2MTcpLCB2MThfKHYxOCksIHYx
OV8odjE5KSwgdjIwXyh2MjApLAotICAgICAgdjIxXyh2MjEpLCB2MjJfKHYyMiksIHYyM18odjIz
KSwgdjI0Xyh2MjQpLCB2MjVfKHYyNSksIHYyNl8odjI2KSwKLSAgICAgIHYyN18odjI3KSwgdjI4
Xyh2MjgpLCB2MjlfKHYyOSksIHYzMF8odjMwKSwgdjMxXyh2MzEpLCB2MzJfKHYzMiksCi0gICAg
ICB2MzNfKHYzMyksIHYzNF8odjM0KSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBv
cGVyYXRvciBQYXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10g
PSB7c3RhdGljX2Nhc3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3Rh
dGljX2Nhc3Q8VD4odjNfKSwgc3RhdGljX2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVf
KSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3Rh
dGljX2Nhc3Q8VD4odjhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nh
c3Q8VD4odjEwXyksIHN0YXRpY19jYXN0PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxU
Pih2MTJfKSwgc3RhdGljX2Nhc3Q8VD4odjEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAg
ICAgICBzdGF0aWNfY2FzdDxUPih2MTVfKSwgc3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19j
YXN0PFQ+KHYxN18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8
VD4odjE5XyksIHN0YXRpY19jYXN0PFQ+KHYyMF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2
MjFfKSwgc3RhdGljX2Nhc3Q8VD4odjIyXyksIHN0YXRpY19jYXN0PFQ+KHYyM18pLAotICAgICAg
ICBzdGF0aWNfY2FzdDxUPih2MjRfKSwgc3RhdGljX2Nhc3Q8VD4odjI1XyksIHN0YXRpY19jYXN0
PFQ+KHYyNl8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjdfKSwgc3RhdGljX2Nhc3Q8VD4o
djI4XyksIHN0YXRpY19jYXN0PFQ+KHYyOV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzBf
KSwgc3RhdGljX2Nhc3Q8VD4odjMxXyksIHN0YXRpY19jYXN0PFQ+KHYzMl8pLAotICAgICAgICBz
dGF0aWNfY2FzdDxUPih2MzNfKSwgc3RhdGljX2Nhc3Q8VD4odjM0Xyl9OwotICAgIHJldHVybiBW
YWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5MzQoY29uc3QgVmFsdWVBcnJheTM0
JiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyksCi0gICAgICB2M18ob3Ro
ZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhlci52NV8pLCB2Nl8ob3RoZXIudjZfKSwK
LSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIudjhfKSwgdjlfKG90aGVyLnY5XyksIHYx
MF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFfKG90aGVyLnYxMV8pLCB2MTJfKG90aGVyLnYxMl8p
LCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90aGVyLnYxNF8pLAotICAgICAgdjE1XyhvdGhlci52
MTVfKSwgdjE2XyhvdGhlci52MTZfKSwgdjE3XyhvdGhlci52MTdfKSwgdjE4XyhvdGhlci52MThf
KSwKLSAgICAgIHYxOV8ob3RoZXIudjE5XyksIHYyMF8ob3RoZXIudjIwXyksIHYyMV8ob3RoZXIu
djIxXyksIHYyMl8ob3RoZXIudjIyXyksCi0gICAgICB2MjNfKG90aGVyLnYyM18pLCB2MjRfKG90
aGVyLnYyNF8pLCB2MjVfKG90aGVyLnYyNV8pLCB2MjZfKG90aGVyLnYyNl8pLAotICAgICAgdjI3
XyhvdGhlci52MjdfKSwgdjI4XyhvdGhlci52MjhfKSwgdjI5XyhvdGhlci52MjlfKSwgdjMwXyhv
dGhlci52MzBfKSwKLSAgICAgIHYzMV8ob3RoZXIudjMxXyksIHYzMl8ob3RoZXIudjMyXyksIHYz
M18ob3RoZXIudjMzXyksIHYzNF8ob3RoZXIudjM0Xykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5v
IGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVy
YXRvcj0oY29uc3QgVmFsdWVBcnJheTM0JiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBj
b25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBU
NSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87
Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwot
ICBjb25zdCBUMTIgdjEyXzsKLSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRfOwot
ICBjb25zdCBUMTUgdjE1XzsKLSAgY29uc3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQxNyB2MTdfOwot
ICBjb25zdCBUMTggdjE4XzsKLSAgY29uc3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQyMCB2MjBfOwot
ICBjb25zdCBUMjEgdjIxXzsKLSAgY29uc3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQyMyB2MjNfOwot
ICBjb25zdCBUMjQgdjI0XzsKLSAgY29uc3QgVDI1IHYyNV87Ci0gIGNvbnN0IFQyNiB2MjZfOwot
ICBjb25zdCBUMjcgdjI3XzsKLSAgY29uc3QgVDI4IHYyOF87Ci0gIGNvbnN0IFQyOSB2MjlfOwot
ICBjb25zdCBUMzAgdjMwXzsKLSAgY29uc3QgVDMxIHYzMV87Ci0gIGNvbnN0IFQzMiB2MzJfOwot
ICBjb25zdCBUMzMgdjMzXzsKLSAgY29uc3QgVDM0IHYzNF87Ci19OwotCi10ZW1wbGF0ZSA8dHlw
ZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1l
IFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1l
IFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVu
YW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0
eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0g
ICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0
LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1l
IFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBl
bmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzU+Ci1jbGFz
cyBWYWx1ZUFycmF5MzUgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTM1KFQxIHYxLCBUMiB2Miwg
VDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgICBU
MTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYg
djE2LCBUMTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwg
VDIyIHYyMiwgVDIzIHYyMywgVDI0IHYyNCwgVDI1IHYyNSwKLSAgICAgIFQyNiB2MjYsIFQyNyB2
MjcsIFQyOCB2MjgsIFQyOSB2MjksIFQzMCB2MzAsIFQzMSB2MzEsIFQzMiB2MzIsIFQzMyB2MzMs
Ci0gICAgICBUMzQgdjM0LCBUMzUgdjM1KSA6IHYxXyh2MSksIHYyXyh2MiksIHYzXyh2MyksIHY0
Xyh2NCksIHY1Xyh2NSksIHY2Xyh2NiksCi0gICAgICB2N18odjcpLCB2OF8odjgpLCB2OV8odjkp
LCB2MTBfKHYxMCksIHYxMV8odjExKSwgdjEyXyh2MTIpLCB2MTNfKHYxMyksCi0gICAgICB2MTRf
KHYxNCksIHYxNV8odjE1KSwgdjE2Xyh2MTYpLCB2MTdfKHYxNyksIHYxOF8odjE4KSwgdjE5Xyh2
MTkpLAotICAgICAgdjIwXyh2MjApLCB2MjFfKHYyMSksIHYyMl8odjIyKSwgdjIzXyh2MjMpLCB2
MjRfKHYyNCksIHYyNV8odjI1KSwKLSAgICAgIHYyNl8odjI2KSwgdjI3Xyh2MjcpLCB2MjhfKHYy
OCksIHYyOV8odjI5KSwgdjMwXyh2MzApLCB2MzFfKHYzMSksCi0gICAgICB2MzJfKHYzMiksIHYz
M18odjMzKSwgdjM0Xyh2MzQpLCB2MzVfKHYzNSkge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUg
VD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBh
cnJheVtdID0ge3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAg
ICAgIHN0YXRpY19jYXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0
PFQ+KHY1XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3
XyksIHN0YXRpY19jYXN0PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0
YXRpY19jYXN0PFQ+KHYxMF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8VD4odjEyXyksIHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRf
KSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBz
dGF0aWNfY2FzdDxUPih2MTdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE4XyksIHN0YXRp
Y19jYXN0PFQ+KHYxOV8pLCBzdGF0aWNfY2FzdDxUPih2MjBfKSwKLSAgICAgICAgc3RhdGljX2Nh
c3Q8VD4odjIxXyksIHN0YXRpY19jYXN0PFQ+KHYyMl8pLCBzdGF0aWNfY2FzdDxUPih2MjNfKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI0XyksIHN0YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0
aWNfY2FzdDxUPih2MjZfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI3XyksIHN0YXRpY19j
YXN0PFQ+KHYyOF8pLCBzdGF0aWNfY2FzdDxUPih2MjlfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjMwXyksIHN0YXRpY19jYXN0PFQ+KHYzMV8pLCBzdGF0aWNfY2FzdDxUPih2MzJfKSwKLSAg
ICAgICAgc3RhdGljX2Nhc3Q8VD4odjMzXyksIHN0YXRpY19jYXN0PFQ+KHYzNF8pLCBzdGF0aWNf
Y2FzdDxUPih2MzVfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5KTsKLSAgfQotCi0gIFZh
bHVlQXJyYXkzNShjb25zdCBWYWx1ZUFycmF5MzUmIG90aGVyKSA6IHYxXyhvdGhlci52MV8pLCB2
Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52M18pLCB2NF8ob3RoZXIudjRfKSwgdjVf
KG90aGVyLnY1XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAgdjdfKG90aGVyLnY3XyksIHY4Xyhv
dGhlci52OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhlci52MTBfKSwKLSAgICAgIHYxMV8o
b3RoZXIudjExXyksIHYxMl8ob3RoZXIudjEyXyksIHYxM18ob3RoZXIudjEzXyksIHYxNF8ob3Ro
ZXIudjE0XyksCi0gICAgICB2MTVfKG90aGVyLnYxNV8pLCB2MTZfKG90aGVyLnYxNl8pLCB2MTdf
KG90aGVyLnYxN18pLCB2MThfKG90aGVyLnYxOF8pLAotICAgICAgdjE5XyhvdGhlci52MTlfKSwg
djIwXyhvdGhlci52MjBfKSwgdjIxXyhvdGhlci52MjFfKSwgdjIyXyhvdGhlci52MjJfKSwKLSAg
ICAgIHYyM18ob3RoZXIudjIzXyksIHYyNF8ob3RoZXIudjI0XyksIHYyNV8ob3RoZXIudjI1Xyks
IHYyNl8ob3RoZXIudjI2XyksCi0gICAgICB2MjdfKG90aGVyLnYyN18pLCB2MjhfKG90aGVyLnYy
OF8pLCB2MjlfKG90aGVyLnYyOV8pLCB2MzBfKG90aGVyLnYzMF8pLAotICAgICAgdjMxXyhvdGhl
ci52MzFfKSwgdjMyXyhvdGhlci52MzJfKSwgdjMzXyhvdGhlci52MzNfKSwgdjM0XyhvdGhlci52
MzRfKSwKLSAgICAgIHYzNV8ob3RoZXIudjM1Xykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGlt
cGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRv
cj0oY29uc3QgVmFsdWVBcnJheTM1JiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25z
dCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBUNSB2
NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87Ci0g
IGNvbnN0IFQ5IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwotICBj
b25zdCBUMTIgdjEyXzsKLSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRfOwotICBj
b25zdCBUMTUgdjE1XzsKLSAgY29uc3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQxNyB2MTdfOwotICBj
b25zdCBUMTggdjE4XzsKLSAgY29uc3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQyMCB2MjBfOwotICBj
b25zdCBUMjEgdjIxXzsKLSAgY29uc3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQyMyB2MjNfOwotICBj
b25zdCBUMjQgdjI0XzsKLSAgY29uc3QgVDI1IHYyNV87Ci0gIGNvbnN0IFQyNiB2MjZfOwotICBj
b25zdCBUMjcgdjI3XzsKLSAgY29uc3QgVDI4IHYyOF87Ci0gIGNvbnN0IFQyOSB2MjlfOwotICBj
b25zdCBUMzAgdjMwXzsKLSAgY29uc3QgVDMxIHYzMV87Ci0gIGNvbnN0IFQzMiB2MzJfOwotICBj
b25zdCBUMzMgdjMzXzsKLSAgY29uc3QgVDM0IHYzNF87Ci0gIGNvbnN0IFQzNSB2MzVfOwotfTsK
LQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVu
YW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVu
YW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlw
ZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAg
IHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwg
dHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBU
MjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5h
bWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5
cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlw
ZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNj4KLWNsYXNzIFZhbHVlQXJyYXkzNiB7Ci0gcHVi
bGljOgotICBWYWx1ZUFycmF5MzYoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBU
NiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwKLSAgICAgIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2
MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsCi0gICAgICBU
MTggdjE4LCBUMTkgdjE5LCBUMjAgdjIwLCBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIzLCBUMjQg
djI0LCBUMjUgdjI1LAotICAgICAgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwgVDI5IHYyOSwg
VDMwIHYzMCwgVDMxIHYzMSwgVDMyIHYzMiwgVDMzIHYzMywKLSAgICAgIFQzNCB2MzQsIFQzNSB2
MzUsIFQzNiB2MzYpIDogdjFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSwgdjRfKHY0KSwgdjVfKHY1
KSwKLSAgICAgIHY2Xyh2NiksIHY3Xyh2NyksIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwg
djExXyh2MTEpLCB2MTJfKHYxMiksCi0gICAgICB2MTNfKHYxMyksIHYxNF8odjE0KSwgdjE1Xyh2
MTUpLCB2MTZfKHYxNiksIHYxN18odjE3KSwgdjE4Xyh2MTgpLAotICAgICAgdjE5Xyh2MTkpLCB2
MjBfKHYyMCksIHYyMV8odjIxKSwgdjIyXyh2MjIpLCB2MjNfKHYyMyksIHYyNF8odjI0KSwKLSAg
ICAgIHYyNV8odjI1KSwgdjI2Xyh2MjYpLCB2MjdfKHYyNyksIHYyOF8odjI4KSwgdjI5Xyh2Mjkp
LCB2MzBfKHYzMCksCi0gICAgICB2MzFfKHYzMSksIHYzMl8odjMyKSwgdjMzXyh2MzMpLCB2MzRf
KHYzNCksIHYzNV8odjM1KSwgdjM2Xyh2MzYpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+
Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJy
YXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAg
ICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxU
Pih2NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18p
LCBzdGF0aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0
aWNfY2FzdDxUPih2MTBfKSwgc3RhdGljX2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHYxMl8pLCBzdGF0aWNfY2FzdDxUPih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4odjE0Xyks
Ci0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxNV8pLCBzdGF0aWNfY2FzdDxUPih2MTZfKSwgc3Rh
dGljX2Nhc3Q8VD4odjE3XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxOF8pLCBzdGF0aWNf
Y2FzdDxUPih2MTlfKSwgc3RhdGljX2Nhc3Q8VD4odjIwXyksCi0gICAgICAgIHN0YXRpY19jYXN0
PFQ+KHYyMV8pLCBzdGF0aWNfY2FzdDxUPih2MjJfKSwgc3RhdGljX2Nhc3Q8VD4odjIzXyksCi0g
ICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyNF8pLCBzdGF0aWNfY2FzdDxUPih2MjVfKSwgc3RhdGlj
X2Nhc3Q8VD4odjI2XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyN18pLCBzdGF0aWNfY2Fz
dDxUPih2MjhfKSwgc3RhdGljX2Nhc3Q8VD4odjI5XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+
KHYzMF8pLCBzdGF0aWNfY2FzdDxUPih2MzFfKSwgc3RhdGljX2Nhc3Q8VD4odjMyXyksCi0gICAg
ICAgIHN0YXRpY19jYXN0PFQ+KHYzM18pLCBzdGF0aWNfY2FzdDxUPih2MzRfKSwgc3RhdGljX2Nh
c3Q8VD4odjM1XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzNl8pfTsKLSAgICByZXR1cm4g
VmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTM2KGNvbnN0IFZhbHVlQXJyYXkz
NiYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90
aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2Xyks
Ci0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2
MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJf
KSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRfKSwKLSAgICAgIHYxNV8ob3RoZXIu
djE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIudjE3XyksIHYxOF8ob3RoZXIudjE4
XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90aGVyLnYyMF8pLCB2MjFfKG90aGVy
LnYyMV8pLCB2MjJfKG90aGVyLnYyMl8pLAotICAgICAgdjIzXyhvdGhlci52MjNfKSwgdjI0Xyhv
dGhlci52MjRfKSwgdjI1XyhvdGhlci52MjVfKSwgdjI2XyhvdGhlci52MjZfKSwKLSAgICAgIHYy
N18ob3RoZXIudjI3XyksIHYyOF8ob3RoZXIudjI4XyksIHYyOV8ob3RoZXIudjI5XyksIHYzMF8o
b3RoZXIudjMwXyksCi0gICAgICB2MzFfKG90aGVyLnYzMV8pLCB2MzJfKG90aGVyLnYzMl8pLCB2
MzNfKG90aGVyLnYzM18pLCB2MzRfKG90aGVyLnYzNF8pLAotICAgICAgdjM1XyhvdGhlci52MzVf
KSwgdjM2XyhvdGhlci52MzZfKSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRp
b24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBW
YWx1ZUFycmF5MzYmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsK
LSAgY29uc3QgVDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29u
c3QgVDYgdjZfOwotICBjb25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkg
djlfOwotICBjb25zdCBUMTAgdjEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2
MTJfOwotICBjb25zdCBUMTMgdjEzXzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2
MTVfOwotICBjb25zdCBUMTYgdjE2XzsKLSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2
MThfOwotICBjb25zdCBUMTkgdjE5XzsKLSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2
MjFfOwotICBjb25zdCBUMjIgdjIyXzsKLSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2
MjRfOwotICBjb25zdCBUMjUgdjI1XzsKLSAgY29uc3QgVDI2IHYyNl87Ci0gIGNvbnN0IFQyNyB2
MjdfOwotICBjb25zdCBUMjggdjI4XzsKLSAgY29uc3QgVDI5IHYyOV87Ci0gIGNvbnN0IFQzMCB2
MzBfOwotICBjb25zdCBUMzEgdjMxXzsKLSAgY29uc3QgVDMyIHYzMl87Ci0gIGNvbnN0IFQzMyB2
MzNfOwotICBjb25zdCBUMzQgdjM0XzsKLSAgY29uc3QgVDM1IHYzNV87Ci0gIGNvbnN0IFQzNiB2
MzZfOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUg
VDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUg
VDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1l
IFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUg
VDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVu
YW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0
eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQy
NiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMw
LAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1l
IFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3PgotY2xh
c3MgVmFsdWVBcnJheTM3IHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXkzNyhUMSB2MSwgVDIgdjIs
IFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAgICAg
VDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2
IHYxNiwgVDE3IHYxNywKLSAgICAgIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEs
IFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQyNSB2MjUsCi0gICAgICBUMjYgdjI2LCBUMjcg
djI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMxLCBUMzIgdjMyLCBUMzMgdjMz
LAotICAgICAgVDM0IHYzNCwgVDM1IHYzNSwgVDM2IHYzNiwgVDM3IHYzNykgOiB2MV8odjEpLCB2
Ml8odjIpLCB2M18odjMpLCB2NF8odjQpLAotICAgICAgdjVfKHY1KSwgdjZfKHY2KSwgdjdfKHY3
KSwgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLCB2MTFfKHYxMSksCi0gICAgICB2MTJfKHYx
MiksIHYxM18odjEzKSwgdjE0Xyh2MTQpLCB2MTVfKHYxNSksIHYxNl8odjE2KSwgdjE3Xyh2MTcp
LAotICAgICAgdjE4Xyh2MTgpLCB2MTlfKHYxOSksIHYyMF8odjIwKSwgdjIxXyh2MjEpLCB2MjJf
KHYyMiksIHYyM18odjIzKSwKLSAgICAgIHYyNF8odjI0KSwgdjI1Xyh2MjUpLCB2MjZfKHYyNiks
IHYyN18odjI3KSwgdjI4Xyh2MjgpLCB2MjlfKHYyOSksCi0gICAgICB2MzBfKHYzMCksIHYzMV8o
djMxKSwgdjMyXyh2MzIpLCB2MzNfKHYzMyksIHYzNF8odjM0KSwgdjM1Xyh2MzUpLAotICAgICAg
djM2Xyh2MzYpLCB2MzdfKHYzNykge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3Bl
cmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0g
e3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0YXRp
Y19jYXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1Xyks
Ci0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0YXRp
Y19jYXN0PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19jYXN0
PFQ+KHYxMF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4o
djEyXyksIHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNfY2Fz
dDxUPih2MTdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE4XyksIHN0YXRpY19jYXN0PFQ+
KHYxOV8pLCBzdGF0aWNfY2FzdDxUPih2MjBfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjIx
XyksIHN0YXRpY19jYXN0PFQ+KHYyMl8pLCBzdGF0aWNfY2FzdDxUPih2MjNfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjI0XyksIHN0YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0aWNfY2FzdDxU
Pih2MjZfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI3XyksIHN0YXRpY19jYXN0PFQ+KHYy
OF8pLCBzdGF0aWNfY2FzdDxUPih2MjlfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMwXyks
IHN0YXRpY19jYXN0PFQ+KHYzMV8pLCBzdGF0aWNfY2FzdDxUPih2MzJfKSwKLSAgICAgICAgc3Rh
dGljX2Nhc3Q8VD4odjMzXyksIHN0YXRpY19jYXN0PFQ+KHYzNF8pLCBzdGF0aWNfY2FzdDxUPih2
MzVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjM2XyksIHN0YXRpY19jYXN0PFQ+KHYzN18p
fTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTM3KGNv
bnN0IFZhbHVlQXJyYXkzNyYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8p
LAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwg
djZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5
XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwg
djEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRfKSwKLSAg
ICAgIHYxNV8ob3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIudjE3Xyks
IHYxOF8ob3RoZXIudjE4XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90aGVyLnYy
MF8pLCB2MjFfKG90aGVyLnYyMV8pLCB2MjJfKG90aGVyLnYyMl8pLAotICAgICAgdjIzXyhvdGhl
ci52MjNfKSwgdjI0XyhvdGhlci52MjRfKSwgdjI1XyhvdGhlci52MjVfKSwgdjI2XyhvdGhlci52
MjZfKSwKLSAgICAgIHYyN18ob3RoZXIudjI3XyksIHYyOF8ob3RoZXIudjI4XyksIHYyOV8ob3Ro
ZXIudjI5XyksIHYzMF8ob3RoZXIudjMwXyksCi0gICAgICB2MzFfKG90aGVyLnYzMV8pLCB2MzJf
KG90aGVyLnYzMl8pLCB2MzNfKG90aGVyLnYzM18pLCB2MzRfKG90aGVyLnYzNF8pLAotICAgICAg
djM1XyhvdGhlci52MzVfKSwgdjM2XyhvdGhlci52MzZfKSwgdjM3XyhvdGhlci52MzdfKSB7fQot
Ci0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3Vw
cG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MzcmIG90aGVyKTsKLQot
ICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNfOwotICBjb25z
dCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBjb25zdCBUNyB2
N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBUMTAgdjEwXzsK
LSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotICBjb25zdCBUMTMgdjEzXzsK
LSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwotICBjb25zdCBUMTYgdjE2XzsK
LSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwotICBjb25zdCBUMTkgdjE5XzsK
LSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwotICBjb25zdCBUMjIgdjIyXzsK
LSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwotICBjb25zdCBUMjUgdjI1XzsK
LSAgY29uc3QgVDI2IHYyNl87Ci0gIGNvbnN0IFQyNyB2MjdfOwotICBjb25zdCBUMjggdjI4XzsK
LSAgY29uc3QgVDI5IHYyOV87Ci0gIGNvbnN0IFQzMCB2MzBfOwotICBjb25zdCBUMzEgdjMxXzsK
LSAgY29uc3QgVDMyIHYzMl87Ci0gIGNvbnN0IFQzMyB2MzNfOwotICBjb25zdCBUMzQgdjM0XzsK
LSAgY29uc3QgVDM1IHYzNV87Ci0gIGNvbnN0IFQzNiB2MzZfOwotICBjb25zdCBUMzcgdjM3XzsK
LX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0
eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0
eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEs
IHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwK
LSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBU
MTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5h
bWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5
cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAg
ICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlwZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQs
IHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBUMzYsIHR5cGVuYW1lIFQzNywgdHlwZW5hbWUg
VDM4PgotY2xhc3MgVmFsdWVBcnJheTM4IHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXkzOChUMSB2
MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5
LAotICAgICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0IHYxNCwgVDE1
IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywKLSAgICAgIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAs
IFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQyNSB2MjUsCi0gICAgICBUMjYg
djI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMxLCBUMzIgdjMy
LCBUMzMgdjMzLAotICAgICAgVDM0IHYzNCwgVDM1IHYzNSwgVDM2IHYzNiwgVDM3IHYzNywgVDM4
IHYzOCkgOiB2MV8odjEpLCB2Ml8odjIpLCB2M18odjMpLAotICAgICAgdjRfKHY0KSwgdjVfKHY1
KSwgdjZfKHY2KSwgdjdfKHY3KSwgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLAotICAgICAg
djExXyh2MTEpLCB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQpLCB2MTVfKHYxNSksIHYx
Nl8odjE2KSwKLSAgICAgIHYxN18odjE3KSwgdjE4Xyh2MTgpLCB2MTlfKHYxOSksIHYyMF8odjIw
KSwgdjIxXyh2MjEpLCB2MjJfKHYyMiksCi0gICAgICB2MjNfKHYyMyksIHYyNF8odjI0KSwgdjI1
Xyh2MjUpLCB2MjZfKHYyNiksIHYyN18odjI3KSwgdjI4Xyh2MjgpLAotICAgICAgdjI5Xyh2Mjkp
LCB2MzBfKHYzMCksIHYzMV8odjMxKSwgdjMyXyh2MzIpLCB2MzNfKHYzMyksIHYzNF8odjM0KSwK
LSAgICAgIHYzNV8odjM1KSwgdjM2Xyh2MzYpLCB2MzdfKHYzNyksIHYzOF8odjM4KSB7fQotCi0g
IHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjxUPigpIGNv
bnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4odjFfKSwgc3RhdGlj
X2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjNfKSwgc3RhdGljX2Nhc3Q8
VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjZf
KSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8VD4odjhfKSwKLSAgICAgICAgc3Rh
dGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4odjEwXyksIHN0YXRpY19jYXN0PFQ+KHYx
MV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTJfKSwgc3RhdGljX2Nhc3Q8VD4odjEzXyks
IHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTVfKSwgc3Rh
dGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19jYXN0PFQ+KHYxN18pLAotICAgICAgICBzdGF0aWNf
Y2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8VD4odjE5XyksIHN0YXRpY19jYXN0PFQ+KHYyMF8p
LAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjFfKSwgc3RhdGljX2Nhc3Q8VD4odjIyXyksIHN0
YXRpY19jYXN0PFQ+KHYyM18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjRfKSwgc3RhdGlj
X2Nhc3Q8VD4odjI1XyksIHN0YXRpY19jYXN0PFQ+KHYyNl8pLAotICAgICAgICBzdGF0aWNfY2Fz
dDxUPih2MjdfKSwgc3RhdGljX2Nhc3Q8VD4odjI4XyksIHN0YXRpY19jYXN0PFQ+KHYyOV8pLAot
ICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzBfKSwgc3RhdGljX2Nhc3Q8VD4odjMxXyksIHN0YXRp
Y19jYXN0PFQ+KHYzMl8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzNfKSwgc3RhdGljX2Nh
c3Q8VD4odjM0XyksIHN0YXRpY19jYXN0PFQ+KHYzNV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxU
Pih2MzZfKSwgc3RhdGljX2Nhc3Q8VD4odjM3XyksIHN0YXRpY19jYXN0PFQ+KHYzOF8pfTsKLSAg
ICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTM4KGNvbnN0IFZh
bHVlQXJyYXkzOCYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAg
ICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90
aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhl
ci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhv
dGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRfKSwKLSAgICAgIHYx
NV8ob3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIudjE3XyksIHYxOF8o
b3RoZXIudjE4XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90aGVyLnYyMF8pLCB2
MjFfKG90aGVyLnYyMV8pLCB2MjJfKG90aGVyLnYyMl8pLAotICAgICAgdjIzXyhvdGhlci52MjNf
KSwgdjI0XyhvdGhlci52MjRfKSwgdjI1XyhvdGhlci52MjVfKSwgdjI2XyhvdGhlci52MjZfKSwK
LSAgICAgIHYyN18ob3RoZXIudjI3XyksIHYyOF8ob3RoZXIudjI4XyksIHYyOV8ob3RoZXIudjI5
XyksIHYzMF8ob3RoZXIudjMwXyksCi0gICAgICB2MzFfKG90aGVyLnYzMV8pLCB2MzJfKG90aGVy
LnYzMl8pLCB2MzNfKG90aGVyLnYzM18pLCB2MzRfKG90aGVyLnYzNF8pLAotICAgICAgdjM1Xyhv
dGhlci52MzVfKSwgdjM2XyhvdGhlci52MzZfKSwgdjM3XyhvdGhlci52MzdfKSwgdjM4XyhvdGhl
ci52MzhfKSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25t
ZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5Mzgm
IG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMg
djNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwot
ICBjb25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25z
dCBUMTAgdjEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotICBjb25z
dCBUMTMgdjEzXzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwotICBjb25z
dCBUMTYgdjE2XzsKLSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwotICBjb25z
dCBUMTkgdjE5XzsKLSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwotICBjb25z
dCBUMjIgdjIyXzsKLSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwotICBjb25z
dCBUMjUgdjI1XzsKLSAgY29uc3QgVDI2IHYyNl87Ci0gIGNvbnN0IFQyNyB2MjdfOwotICBjb25z
dCBUMjggdjI4XzsKLSAgY29uc3QgVDI5IHYyOV87Ci0gIGNvbnN0IFQzMCB2MzBfOwotICBjb25z
dCBUMzEgdjMxXzsKLSAgY29uc3QgVDMyIHYzMl87Ci0gIGNvbnN0IFQzMyB2MzNfOwotICBjb25z
dCBUMzQgdjM0XzsKLSAgY29uc3QgVDM1IHYzNV87Ci0gIGNvbnN0IFQzNiB2MzZfOwotICBjb25z
dCBUMzcgdjM3XzsKLSAgY29uc3QgVDM4IHYzOF87Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUg
VDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAot
ICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0
eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQx
MywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFt
ZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlw
ZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBl
bmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwg
dHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBU
MzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5h
bWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5PgotY2xhc3Mg
VmFsdWVBcnJheTM5IHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXkzOShUMSB2MSwgVDIgdjIsIFQz
IHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAgICAgVDEw
IHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYx
NiwgVDE3IHYxNywKLSAgICAgIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQy
MiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQyNSB2MjUsCi0gICAgICBUMjYgdjI2LCBUMjcgdjI3
LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMxLCBUMzIgdjMyLCBUMzMgdjMzLAot
ICAgICAgVDM0IHYzNCwgVDM1IHYzNSwgVDM2IHYzNiwgVDM3IHYzNywgVDM4IHYzOCwgVDM5IHYz
OSkgOiB2MV8odjEpLCB2Ml8odjIpLAotICAgICAgdjNfKHYzKSwgdjRfKHY0KSwgdjVfKHY1KSwg
djZfKHY2KSwgdjdfKHY3KSwgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLAotICAgICAgdjEx
Xyh2MTEpLCB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQpLCB2MTVfKHYxNSksIHYxNl8o
djE2KSwKLSAgICAgIHYxN18odjE3KSwgdjE4Xyh2MTgpLCB2MTlfKHYxOSksIHYyMF8odjIwKSwg
djIxXyh2MjEpLCB2MjJfKHYyMiksCi0gICAgICB2MjNfKHYyMyksIHYyNF8odjI0KSwgdjI1Xyh2
MjUpLCB2MjZfKHYyNiksIHYyN18odjI3KSwgdjI4Xyh2MjgpLAotICAgICAgdjI5Xyh2MjkpLCB2
MzBfKHYzMCksIHYzMV8odjMxKSwgdjMyXyh2MzIpLCB2MzNfKHYzMyksIHYzNF8odjM0KSwKLSAg
ICAgIHYzNV8odjM1KSwgdjM2Xyh2MzYpLCB2MzdfKHYzNyksIHYzOF8odjM4KSwgdjM5Xyh2Mzkp
IHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9y
PFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8p
LCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0
aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2NV8pLAotICAgICAgICBzdGF0aWNfY2Fz
dDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18pLCBzdGF0aWNfY2FzdDxUPih2OF8pLAotICAg
ICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNfY2FzdDxUPih2MTBfKSwgc3RhdGljX2Nh
c3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxMl8pLCBzdGF0aWNfY2FzdDxU
Pih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4odjE0XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYx
NV8pLCBzdGF0aWNfY2FzdDxUPih2MTZfKSwgc3RhdGljX2Nhc3Q8VD4odjE3XyksCi0gICAgICAg
IHN0YXRpY19jYXN0PFQ+KHYxOF8pLCBzdGF0aWNfY2FzdDxUPih2MTlfKSwgc3RhdGljX2Nhc3Q8
VD4odjIwXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyMV8pLCBzdGF0aWNfY2FzdDxUPih2
MjJfKSwgc3RhdGljX2Nhc3Q8VD4odjIzXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyNF8p
LCBzdGF0aWNfY2FzdDxUPih2MjVfKSwgc3RhdGljX2Nhc3Q8VD4odjI2XyksCi0gICAgICAgIHN0
YXRpY19jYXN0PFQ+KHYyN18pLCBzdGF0aWNfY2FzdDxUPih2MjhfKSwgc3RhdGljX2Nhc3Q8VD4o
djI5XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzMF8pLCBzdGF0aWNfY2FzdDxUPih2MzFf
KSwgc3RhdGljX2Nhc3Q8VD4odjMyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzM18pLCBz
dGF0aWNfY2FzdDxUPih2MzRfKSwgc3RhdGljX2Nhc3Q8VD4odjM1XyksCi0gICAgICAgIHN0YXRp
Y19jYXN0PFQ+KHYzNl8pLCBzdGF0aWNfY2FzdDxUPih2MzdfKSwgc3RhdGljX2Nhc3Q8VD4odjM4
XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzOV8pfTsKLSAgICByZXR1cm4gVmFsdWVzSW4o
YXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTM5KGNvbnN0IFZhbHVlQXJyYXkzOSYgb3RoZXIp
IDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyks
IHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2
N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90aGVy
LnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJfKSwgdjEzXyhv
dGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRfKSwKLSAgICAgIHYxNV8ob3RoZXIudjE1XyksIHYx
Nl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIudjE3XyksIHYxOF8ob3RoZXIudjE4XyksCi0gICAg
ICB2MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90aGVyLnYyMF8pLCB2MjFfKG90aGVyLnYyMV8pLCB2
MjJfKG90aGVyLnYyMl8pLAotICAgICAgdjIzXyhvdGhlci52MjNfKSwgdjI0XyhvdGhlci52MjRf
KSwgdjI1XyhvdGhlci52MjVfKSwgdjI2XyhvdGhlci52MjZfKSwKLSAgICAgIHYyN18ob3RoZXIu
djI3XyksIHYyOF8ob3RoZXIudjI4XyksIHYyOV8ob3RoZXIudjI5XyksIHYzMF8ob3RoZXIudjMw
XyksCi0gICAgICB2MzFfKG90aGVyLnYzMV8pLCB2MzJfKG90aGVyLnYzMl8pLCB2MzNfKG90aGVy
LnYzM18pLCB2MzRfKG90aGVyLnYzNF8pLAotICAgICAgdjM1XyhvdGhlci52MzVfKSwgdjM2Xyhv
dGhlci52MzZfKSwgdjM3XyhvdGhlci52MzdfKSwgdjM4XyhvdGhlci52MzhfKSwKLSAgICAgIHYz
OV8ob3RoZXIudjM5Xykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0g
YXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVB
cnJheTM5JiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNv
bnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2
IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsK
LSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwotICBjb25zdCBUMTIgdjEyXzsK
LSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRfOwotICBjb25zdCBUMTUgdjE1XzsK
LSAgY29uc3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQxNyB2MTdfOwotICBjb25zdCBUMTggdjE4XzsK
LSAgY29uc3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQyMCB2MjBfOwotICBjb25zdCBUMjEgdjIxXzsK
LSAgY29uc3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQyMyB2MjNfOwotICBjb25zdCBUMjQgdjI0XzsK
LSAgY29uc3QgVDI1IHYyNV87Ci0gIGNvbnN0IFQyNiB2MjZfOwotICBjb25zdCBUMjcgdjI3XzsK
LSAgY29uc3QgVDI4IHYyOF87Ci0gIGNvbnN0IFQyOSB2MjlfOwotICBjb25zdCBUMzAgdjMwXzsK
LSAgY29uc3QgVDMxIHYzMV87Ci0gIGNvbnN0IFQzMiB2MzJfOwotICBjb25zdCBUMzMgdjMzXzsK
LSAgY29uc3QgVDM0IHYzNF87Ci0gIGNvbnN0IFQzNSB2MzVfOwotICBjb25zdCBUMzYgdjM2XzsK
LSAgY29uc3QgVDM3IHYzN187Ci0gIGNvbnN0IFQzOCB2MzhfOwotICBjb25zdCBUMzkgdjM5XzsK
LX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0
eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0
eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEs
IHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwK
LSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBU
MTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5h
bWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5
cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAg
ICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlwZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQs
IHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBUMzYsIHR5cGVuYW1lIFQzNywgdHlwZW5hbWUg
VDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0MD4KLWNsYXNzIFZhbHVlQXJyYXk0MCB7Ci0g
cHVibGljOgotICBWYWx1ZUFycmF5NDAoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1
LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwKLSAgICAgIFQxMCB2MTAsIFQxMSB2MTEsIFQx
MiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsCi0gICAg
ICBUMTggdjE4LCBUMTkgdjE5LCBUMjAgdjIwLCBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIzLCBU
MjQgdjI0LCBUMjUgdjI1LAotICAgICAgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwgVDI5IHYy
OSwgVDMwIHYzMCwgVDMxIHYzMSwgVDMyIHYzMiwgVDMzIHYzMywKLSAgICAgIFQzNCB2MzQsIFQz
NSB2MzUsIFQzNiB2MzYsIFQzNyB2MzcsIFQzOCB2MzgsIFQzOSB2MzksIFQ0MCB2NDApIDogdjFf
KHYxKSwKLSAgICAgIHYyXyh2MiksIHYzXyh2MyksIHY0Xyh2NCksIHY1Xyh2NSksIHY2Xyh2Niks
IHY3Xyh2NyksIHY4Xyh2OCksIHY5Xyh2OSksCi0gICAgICB2MTBfKHYxMCksIHYxMV8odjExKSwg
djEyXyh2MTIpLCB2MTNfKHYxMyksIHYxNF8odjE0KSwgdjE1Xyh2MTUpLAotICAgICAgdjE2Xyh2
MTYpLCB2MTdfKHYxNyksIHYxOF8odjE4KSwgdjE5Xyh2MTkpLCB2MjBfKHYyMCksIHYyMV8odjIx
KSwKLSAgICAgIHYyMl8odjIyKSwgdjIzXyh2MjMpLCB2MjRfKHYyNCksIHYyNV8odjI1KSwgdjI2
Xyh2MjYpLCB2MjdfKHYyNyksCi0gICAgICB2MjhfKHYyOCksIHYyOV8odjI5KSwgdjMwXyh2MzAp
LCB2MzFfKHYzMSksIHYzMl8odjMyKSwgdjMzXyh2MzMpLAotICAgICAgdjM0Xyh2MzQpLCB2MzVf
KHYzNSksIHYzNl8odjM2KSwgdjM3Xyh2MzcpLCB2MzhfKHYzOCksIHYzOV8odjM5KSwKLSAgICAg
IHY0MF8odjQwKSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJh
bUdlbmVyYXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nh
c3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4o
djNfKSwgc3RhdGljX2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8VD4o
djhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4odjEwXyks
IHN0YXRpY19jYXN0PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTJfKSwgc3Rh
dGljX2Nhc3Q8VD4odjEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAgICBzdGF0aWNf
Y2FzdDxUPih2MTVfKSwgc3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19jYXN0PFQ+KHYxN18p
LAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8VD4odjE5XyksIHN0
YXRpY19jYXN0PFQ+KHYyMF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjFfKSwgc3RhdGlj
X2Nhc3Q8VD4odjIyXyksIHN0YXRpY19jYXN0PFQ+KHYyM18pLAotICAgICAgICBzdGF0aWNfY2Fz
dDxUPih2MjRfKSwgc3RhdGljX2Nhc3Q8VD4odjI1XyksIHN0YXRpY19jYXN0PFQ+KHYyNl8pLAot
ICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjdfKSwgc3RhdGljX2Nhc3Q8VD4odjI4XyksIHN0YXRp
Y19jYXN0PFQ+KHYyOV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzBfKSwgc3RhdGljX2Nh
c3Q8VD4odjMxXyksIHN0YXRpY19jYXN0PFQ+KHYzMl8pLAotICAgICAgICBzdGF0aWNfY2FzdDxU
Pih2MzNfKSwgc3RhdGljX2Nhc3Q8VD4odjM0XyksIHN0YXRpY19jYXN0PFQ+KHYzNV8pLAotICAg
ICAgICBzdGF0aWNfY2FzdDxUPih2MzZfKSwgc3RhdGljX2Nhc3Q8VD4odjM3XyksIHN0YXRpY19j
YXN0PFQ+KHYzOF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzlfKSwgc3RhdGljX2Nhc3Q8
VD4odjQwXyl9OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFy
cmF5NDAoY29uc3QgVmFsdWVBcnJheTQwJiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90
aGVyLnYyXyksCi0gICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhl
ci52NV8pLCB2Nl8ob3RoZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIu
djhfKSwgdjlfKG90aGVyLnY5XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFfKG90aGVy
LnYxMV8pLCB2MTJfKG90aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90aGVyLnYx
NF8pLAotICAgICAgdjE1XyhvdGhlci52MTVfKSwgdjE2XyhvdGhlci52MTZfKSwgdjE3XyhvdGhl
ci52MTdfKSwgdjE4XyhvdGhlci52MThfKSwKLSAgICAgIHYxOV8ob3RoZXIudjE5XyksIHYyMF8o
b3RoZXIudjIwXyksIHYyMV8ob3RoZXIudjIxXyksIHYyMl8ob3RoZXIudjIyXyksCi0gICAgICB2
MjNfKG90aGVyLnYyM18pLCB2MjRfKG90aGVyLnYyNF8pLCB2MjVfKG90aGVyLnYyNV8pLCB2MjZf
KG90aGVyLnYyNl8pLAotICAgICAgdjI3XyhvdGhlci52MjdfKSwgdjI4XyhvdGhlci52MjhfKSwg
djI5XyhvdGhlci52MjlfKSwgdjMwXyhvdGhlci52MzBfKSwKLSAgICAgIHYzMV8ob3RoZXIudjMx
XyksIHYzMl8ob3RoZXIudjMyXyksIHYzM18ob3RoZXIudjMzXyksIHYzNF8ob3RoZXIudjM0Xyks
Ci0gICAgICB2MzVfKG90aGVyLnYzNV8pLCB2MzZfKG90aGVyLnYzNl8pLCB2MzdfKG90aGVyLnYz
N18pLCB2MzhfKG90aGVyLnYzOF8pLAotICAgICAgdjM5XyhvdGhlci52MzlfKSwgdjQwXyhvdGhl
ci52NDBfKSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25t
ZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5NDAm
IG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMg
djNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwot
ICBjb25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25z
dCBUMTAgdjEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotICBjb25z
dCBUMTMgdjEzXzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwotICBjb25z
dCBUMTYgdjE2XzsKLSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwotICBjb25z
dCBUMTkgdjE5XzsKLSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwotICBjb25z
dCBUMjIgdjIyXzsKLSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwotICBjb25z
dCBUMjUgdjI1XzsKLSAgY29uc3QgVDI2IHYyNl87Ci0gIGNvbnN0IFQyNyB2MjdfOwotICBjb25z
dCBUMjggdjI4XzsKLSAgY29uc3QgVDI5IHYyOV87Ci0gIGNvbnN0IFQzMCB2MzBfOwotICBjb25z
dCBUMzEgdjMxXzsKLSAgY29uc3QgVDMyIHYzMl87Ci0gIGNvbnN0IFQzMyB2MzNfOwotICBjb25z
dCBUMzQgdjM0XzsKLSAgY29uc3QgVDM1IHYzNV87Ci0gIGNvbnN0IFQzNiB2MzZfOwotICBjb25z
dCBUMzcgdjM3XzsKLSAgY29uc3QgVDM4IHYzOF87Ci0gIGNvbnN0IFQzOSB2MzlfOwotICBjb25z
dCBUNDAgdjQwXzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5
cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5
cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0
eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5
cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4
LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1l
IFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBl
bmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVu
YW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlwZW5hbWUgVDMzLCB0
eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBUMzYsIHR5cGVuYW1lIFQz
NywgdHlwZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0MCwKLSAgICB0eXBlbmFt
ZSBUNDE+Ci1jbGFzcyBWYWx1ZUFycmF5NDEgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTQxKFQx
IHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkg
djksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBU
MTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYy
MCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywgVDI0IHYyNCwgVDI1IHYyNSwKLSAgICAgIFQy
NiB2MjYsIFQyNyB2MjcsIFQyOCB2MjgsIFQyOSB2MjksIFQzMCB2MzAsIFQzMSB2MzEsIFQzMiB2
MzIsIFQzMyB2MzMsCi0gICAgICBUMzQgdjM0LCBUMzUgdjM1LCBUMzYgdjM2LCBUMzcgdjM3LCBU
MzggdjM4LCBUMzkgdjM5LCBUNDAgdjQwLAotICAgICAgVDQxIHY0MSkgOiB2MV8odjEpLCB2Ml8o
djIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpLCB2N18odjcpLAotICAgICAg
djhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLCB2MTFfKHYxMSksIHYxMl8odjEyKSwgdjEzXyh2
MTMpLCB2MTRfKHYxNCksCi0gICAgICB2MTVfKHYxNSksIHYxNl8odjE2KSwgdjE3Xyh2MTcpLCB2
MThfKHYxOCksIHYxOV8odjE5KSwgdjIwXyh2MjApLAotICAgICAgdjIxXyh2MjEpLCB2MjJfKHYy
MiksIHYyM18odjIzKSwgdjI0Xyh2MjQpLCB2MjVfKHYyNSksIHYyNl8odjI2KSwKLSAgICAgIHYy
N18odjI3KSwgdjI4Xyh2MjgpLCB2MjlfKHYyOSksIHYzMF8odjMwKSwgdjMxXyh2MzEpLCB2MzJf
KHYzMiksCi0gICAgICB2MzNfKHYzMyksIHYzNF8odjM0KSwgdjM1Xyh2MzUpLCB2MzZfKHYzNiks
IHYzN18odjM3KSwgdjM4Xyh2MzgpLAotICAgICAgdjM5Xyh2MzkpLCB2NDBfKHY0MCksIHY0MV8o
djQxKSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJhbUdlbmVy
YXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4o
djFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjNfKSwg
c3RhdGljX2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8VD4odjhfKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4odjEwXyksIHN0YXRp
Y19jYXN0PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTJfKSwgc3RhdGljX2Nh
c3Q8VD4odjEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxU
Pih2MTVfKSwgc3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19jYXN0PFQ+KHYxN18pLAotICAg
ICAgICBzdGF0aWNfY2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8VD4odjE5XyksIHN0YXRpY19j
YXN0PFQ+KHYyMF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjFfKSwgc3RhdGljX2Nhc3Q8
VD4odjIyXyksIHN0YXRpY19jYXN0PFQ+KHYyM18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2
MjRfKSwgc3RhdGljX2Nhc3Q8VD4odjI1XyksIHN0YXRpY19jYXN0PFQ+KHYyNl8pLAotICAgICAg
ICBzdGF0aWNfY2FzdDxUPih2MjdfKSwgc3RhdGljX2Nhc3Q8VD4odjI4XyksIHN0YXRpY19jYXN0
PFQ+KHYyOV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzBfKSwgc3RhdGljX2Nhc3Q8VD4o
djMxXyksIHN0YXRpY19jYXN0PFQ+KHYzMl8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzNf
KSwgc3RhdGljX2Nhc3Q8VD4odjM0XyksIHN0YXRpY19jYXN0PFQ+KHYzNV8pLAotICAgICAgICBz
dGF0aWNfY2FzdDxUPih2MzZfKSwgc3RhdGljX2Nhc3Q8VD4odjM3XyksIHN0YXRpY19jYXN0PFQ+
KHYzOF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzlfKSwgc3RhdGljX2Nhc3Q8VD4odjQw
XyksIHN0YXRpY19jYXN0PFQ+KHY0MV8pfTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwot
ICB9Ci0KLSAgVmFsdWVBcnJheTQxKGNvbnN0IFZhbHVlQXJyYXk0MSYgb3RoZXIpIDogdjFfKG90
aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhl
ci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIu
djdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAot
ICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNf
KSwgdjE0XyhvdGhlci52MTRfKSwKLSAgICAgIHYxNV8ob3RoZXIudjE1XyksIHYxNl8ob3RoZXIu
djE2XyksIHYxN18ob3RoZXIudjE3XyksIHYxOF8ob3RoZXIudjE4XyksCi0gICAgICB2MTlfKG90
aGVyLnYxOV8pLCB2MjBfKG90aGVyLnYyMF8pLCB2MjFfKG90aGVyLnYyMV8pLCB2MjJfKG90aGVy
LnYyMl8pLAotICAgICAgdjIzXyhvdGhlci52MjNfKSwgdjI0XyhvdGhlci52MjRfKSwgdjI1Xyhv
dGhlci52MjVfKSwgdjI2XyhvdGhlci52MjZfKSwKLSAgICAgIHYyN18ob3RoZXIudjI3XyksIHYy
OF8ob3RoZXIudjI4XyksIHYyOV8ob3RoZXIudjI5XyksIHYzMF8ob3RoZXIudjMwXyksCi0gICAg
ICB2MzFfKG90aGVyLnYzMV8pLCB2MzJfKG90aGVyLnYzMl8pLCB2MzNfKG90aGVyLnYzM18pLCB2
MzRfKG90aGVyLnYzNF8pLAotICAgICAgdjM1XyhvdGhlci52MzVfKSwgdjM2XyhvdGhlci52MzZf
KSwgdjM3XyhvdGhlci52MzdfKSwgdjM4XyhvdGhlci52MzhfKSwKLSAgICAgIHYzOV8ob3RoZXIu
djM5XyksIHY0MF8ob3RoZXIudjQwXyksIHY0MV8ob3RoZXIudjQxXykge30KLQotIHByaXZhdGU6
Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAg
dm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTQxJiBvdGhlcik7Ci0KLSAgY29uc3QgVDEg
djFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwot
ICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25z
dCBUOCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQx
MSB2MTFfOwotICBjb25zdCBUMTIgdjEyXzsKLSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQx
NCB2MTRfOwotICBjb25zdCBUMTUgdjE1XzsKLSAgY29uc3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQx
NyB2MTdfOwotICBjb25zdCBUMTggdjE4XzsKLSAgY29uc3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQy
MCB2MjBfOwotICBjb25zdCBUMjEgdjIxXzsKLSAgY29uc3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQy
MyB2MjNfOwotICBjb25zdCBUMjQgdjI0XzsKLSAgY29uc3QgVDI1IHYyNV87Ci0gIGNvbnN0IFQy
NiB2MjZfOwotICBjb25zdCBUMjcgdjI3XzsKLSAgY29uc3QgVDI4IHYyOF87Ci0gIGNvbnN0IFQy
OSB2MjlfOwotICBjb25zdCBUMzAgdjMwXzsKLSAgY29uc3QgVDMxIHYzMV87Ci0gIGNvbnN0IFQz
MiB2MzJfOwotICBjb25zdCBUMzMgdjMzXzsKLSAgY29uc3QgVDM0IHYzNF87Ci0gIGNvbnN0IFQz
NSB2MzVfOwotICBjb25zdCBUMzYgdjM2XzsKLSAgY29uc3QgVDM3IHYzN187Ci0gIGNvbnN0IFQz
OCB2MzhfOwotICBjb25zdCBUMzkgdjM5XzsKLSAgY29uc3QgVDQwIHY0MF87Ci0gIGNvbnN0IFQ0
MSB2NDFfOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5h
bWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5h
bWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVu
YW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5h
bWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5
cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIy
LCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1l
IFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUg
VDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVu
YW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0
eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0
MSwgdHlwZW5hbWUgVDQyPgotY2xhc3MgVmFsdWVBcnJheTQyIHsKLSBwdWJsaWM6Ci0gIFZhbHVl
QXJyYXk0MihUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2Nywg
VDggdjgsIFQ5IHY5LAotICAgICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywg
VDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywKLSAgICAgIFQxOCB2MTgsIFQxOSB2
MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQyNSB2MjUs
Ci0gICAgICBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEg
djMxLCBUMzIgdjMyLCBUMzMgdjMzLAotICAgICAgVDM0IHYzNCwgVDM1IHYzNSwgVDM2IHYzNiwg
VDM3IHYzNywgVDM4IHYzOCwgVDM5IHYzOSwgVDQwIHY0MCwgVDQxIHY0MSwKLSAgICAgIFQ0MiB2
NDIpIDogdjFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSwgdjRfKHY0KSwgdjVfKHY1KSwgdjZfKHY2
KSwgdjdfKHY3KSwKLSAgICAgIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwgdjExXyh2MTEp
LCB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQpLAotICAgICAgdjE1Xyh2MTUpLCB2MTZf
KHYxNiksIHYxN18odjE3KSwgdjE4Xyh2MTgpLCB2MTlfKHYxOSksIHYyMF8odjIwKSwKLSAgICAg
IHYyMV8odjIxKSwgdjIyXyh2MjIpLCB2MjNfKHYyMyksIHYyNF8odjI0KSwgdjI1Xyh2MjUpLCB2
MjZfKHYyNiksCi0gICAgICB2MjdfKHYyNyksIHYyOF8odjI4KSwgdjI5Xyh2MjkpLCB2MzBfKHYz
MCksIHYzMV8odjMxKSwgdjMyXyh2MzIpLAotICAgICAgdjMzXyh2MzMpLCB2MzRfKHYzNCksIHYz
NV8odjM1KSwgdjM2Xyh2MzYpLCB2MzdfKHYzNyksIHYzOF8odjM4KSwKLSAgICAgIHYzOV8odjM5
KSwgdjQwXyh2NDApLCB2NDFfKHY0MSksIHY0Ml8odjQyKSB7fQotCi0gIHRlbXBsYXRlIDx0eXBl
bmFtZSBUPgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25z
dCBUIGFycmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjNfKSwgc3RhdGljX2Nhc3Q8VD4odjRfKSwgc3RhdGlj
X2Nhc3Q8VD4odjVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjZfKSwgc3RhdGljX2Nhc3Q8
VD4odjdfKSwgc3RhdGljX2Nhc3Q8VD4odjhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjlf
KSwgc3RhdGljX2Nhc3Q8VD4odjEwXyksIHN0YXRpY19jYXN0PFQ+KHYxMV8pLAotICAgICAgICBz
dGF0aWNfY2FzdDxUPih2MTJfKSwgc3RhdGljX2Nhc3Q8VD4odjEzXyksIHN0YXRpY19jYXN0PFQ+
KHYxNF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTVfKSwgc3RhdGljX2Nhc3Q8VD4odjE2
XyksIHN0YXRpY19jYXN0PFQ+KHYxN18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MThfKSwg
c3RhdGljX2Nhc3Q8VD4odjE5XyksIHN0YXRpY19jYXN0PFQ+KHYyMF8pLAotICAgICAgICBzdGF0
aWNfY2FzdDxUPih2MjFfKSwgc3RhdGljX2Nhc3Q8VD4odjIyXyksIHN0YXRpY19jYXN0PFQ+KHYy
M18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjRfKSwgc3RhdGljX2Nhc3Q8VD4odjI1Xyks
IHN0YXRpY19jYXN0PFQ+KHYyNl8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjdfKSwgc3Rh
dGljX2Nhc3Q8VD4odjI4XyksIHN0YXRpY19jYXN0PFQ+KHYyOV8pLAotICAgICAgICBzdGF0aWNf
Y2FzdDxUPih2MzBfKSwgc3RhdGljX2Nhc3Q8VD4odjMxXyksIHN0YXRpY19jYXN0PFQ+KHYzMl8p
LAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzNfKSwgc3RhdGljX2Nhc3Q8VD4odjM0XyksIHN0
YXRpY19jYXN0PFQ+KHYzNV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzZfKSwgc3RhdGlj
X2Nhc3Q8VD4odjM3XyksIHN0YXRpY19jYXN0PFQ+KHYzOF8pLAotICAgICAgICBzdGF0aWNfY2Fz
dDxUPih2MzlfKSwgc3RhdGljX2Nhc3Q8VD4odjQwXyksIHN0YXRpY19jYXN0PFQ+KHY0MV8pLAot
ICAgICAgICBzdGF0aWNfY2FzdDxUPih2NDJfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5
KTsKLSAgfQotCi0gIFZhbHVlQXJyYXk0Mihjb25zdCBWYWx1ZUFycmF5NDImIG90aGVyKSA6IHYx
XyhvdGhlci52MV8pLCB2Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52M18pLCB2NF8o
b3RoZXIudjRfKSwgdjVfKG90aGVyLnY1XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAgdjdfKG90
aGVyLnY3XyksIHY4XyhvdGhlci52OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhlci52MTBf
KSwKLSAgICAgIHYxMV8ob3RoZXIudjExXyksIHYxMl8ob3RoZXIudjEyXyksIHYxM18ob3RoZXIu
djEzXyksIHYxNF8ob3RoZXIudjE0XyksCi0gICAgICB2MTVfKG90aGVyLnYxNV8pLCB2MTZfKG90
aGVyLnYxNl8pLCB2MTdfKG90aGVyLnYxN18pLCB2MThfKG90aGVyLnYxOF8pLAotICAgICAgdjE5
XyhvdGhlci52MTlfKSwgdjIwXyhvdGhlci52MjBfKSwgdjIxXyhvdGhlci52MjFfKSwgdjIyXyhv
dGhlci52MjJfKSwKLSAgICAgIHYyM18ob3RoZXIudjIzXyksIHYyNF8ob3RoZXIudjI0XyksIHYy
NV8ob3RoZXIudjI1XyksIHYyNl8ob3RoZXIudjI2XyksCi0gICAgICB2MjdfKG90aGVyLnYyN18p
LCB2MjhfKG90aGVyLnYyOF8pLCB2MjlfKG90aGVyLnYyOV8pLCB2MzBfKG90aGVyLnYzMF8pLAot
ICAgICAgdjMxXyhvdGhlci52MzFfKSwgdjMyXyhvdGhlci52MzJfKSwgdjMzXyhvdGhlci52MzNf
KSwgdjM0XyhvdGhlci52MzRfKSwKLSAgICAgIHYzNV8ob3RoZXIudjM1XyksIHYzNl8ob3RoZXIu
djM2XyksIHYzN18ob3RoZXIudjM3XyksIHYzOF8ob3RoZXIudjM4XyksCi0gICAgICB2MzlfKG90
aGVyLnYzOV8pLCB2NDBfKG90aGVyLnY0MF8pLCB2NDFfKG90aGVyLnY0MV8pLCB2NDJfKG90aGVy
LnY0Ml8pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1l
bnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IFZhbHVlQXJyYXk0MiYg
b3RoZXIpOwotCi0gIGNvbnN0IFQxIHYxXzsKLSAgY29uc3QgVDIgdjJfOwotICBjb25zdCBUMyB2
M187Ci0gIGNvbnN0IFQ0IHY0XzsKLSAgY29uc3QgVDUgdjVfOwotICBjb25zdCBUNiB2Nl87Ci0g
IGNvbnN0IFQ3IHY3XzsKLSAgY29uc3QgVDggdjhfOwotICBjb25zdCBUOSB2OV87Ci0gIGNvbnN0
IFQxMCB2MTBfOwotICBjb25zdCBUMTEgdjExXzsKLSAgY29uc3QgVDEyIHYxMl87Ci0gIGNvbnN0
IFQxMyB2MTNfOwotICBjb25zdCBUMTQgdjE0XzsKLSAgY29uc3QgVDE1IHYxNV87Ci0gIGNvbnN0
IFQxNiB2MTZfOwotICBjb25zdCBUMTcgdjE3XzsKLSAgY29uc3QgVDE4IHYxOF87Ci0gIGNvbnN0
IFQxOSB2MTlfOwotICBjb25zdCBUMjAgdjIwXzsKLSAgY29uc3QgVDIxIHYyMV87Ci0gIGNvbnN0
IFQyMiB2MjJfOwotICBjb25zdCBUMjMgdjIzXzsKLSAgY29uc3QgVDI0IHYyNF87Ci0gIGNvbnN0
IFQyNSB2MjVfOwotICBjb25zdCBUMjYgdjI2XzsKLSAgY29uc3QgVDI3IHYyN187Ci0gIGNvbnN0
IFQyOCB2MjhfOwotICBjb25zdCBUMjkgdjI5XzsKLSAgY29uc3QgVDMwIHYzMF87Ci0gIGNvbnN0
IFQzMSB2MzFfOwotICBjb25zdCBUMzIgdjMyXzsKLSAgY29uc3QgVDMzIHYzM187Ci0gIGNvbnN0
IFQzNCB2MzRfOwotICBjb25zdCBUMzUgdjM1XzsKLSAgY29uc3QgVDM2IHYzNl87Ci0gIGNvbnN0
IFQzNyB2MzdfOwotICBjb25zdCBUMzggdjM4XzsKLSAgY29uc3QgVDM5IHYzOV87Ci0gIGNvbnN0
IFQ0MCB2NDBfOwotICBjb25zdCBUNDEgdjQxXzsKLSAgY29uc3QgVDQyIHY0Ml87Ci19OwotCi10
ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUg
VDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUg
VDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFt
ZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlw
ZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBl
bmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywg
dHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBU
MjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5h
bWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFt
ZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlw
ZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAsCi0gICAgdHlwZW5hbWUgVDQxLCB0eXBlbmFtZSBUNDIs
IHR5cGVuYW1lIFQ0Mz4KLWNsYXNzIFZhbHVlQXJyYXk0MyB7Ci0gcHVibGljOgotICBWYWx1ZUFy
cmF5NDMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4
IHY4LCBUOSB2OSwKLSAgICAgIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQx
NCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsCi0gICAgICBUMTggdjE4LCBUMTkgdjE5
LCBUMjAgdjIwLCBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIzLCBUMjQgdjI0LCBUMjUgdjI1LAot
ICAgICAgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwgVDI5IHYyOSwgVDMwIHYzMCwgVDMxIHYz
MSwgVDMyIHYzMiwgVDMzIHYzMywKLSAgICAgIFQzNCB2MzQsIFQzNSB2MzUsIFQzNiB2MzYsIFQz
NyB2MzcsIFQzOCB2MzgsIFQzOSB2MzksIFQ0MCB2NDAsIFQ0MSB2NDEsCi0gICAgICBUNDIgdjQy
LCBUNDMgdjQzKSA6IHYxXyh2MSksIHYyXyh2MiksIHYzXyh2MyksIHY0Xyh2NCksIHY1Xyh2NSks
IHY2Xyh2NiksCi0gICAgICB2N18odjcpLCB2OF8odjgpLCB2OV8odjkpLCB2MTBfKHYxMCksIHYx
MV8odjExKSwgdjEyXyh2MTIpLCB2MTNfKHYxMyksCi0gICAgICB2MTRfKHYxNCksIHYxNV8odjE1
KSwgdjE2Xyh2MTYpLCB2MTdfKHYxNyksIHYxOF8odjE4KSwgdjE5Xyh2MTkpLAotICAgICAgdjIw
Xyh2MjApLCB2MjFfKHYyMSksIHYyMl8odjIyKSwgdjIzXyh2MjMpLCB2MjRfKHYyNCksIHYyNV8o
djI1KSwKLSAgICAgIHYyNl8odjI2KSwgdjI3Xyh2MjcpLCB2MjhfKHYyOCksIHYyOV8odjI5KSwg
djMwXyh2MzApLCB2MzFfKHYzMSksCi0gICAgICB2MzJfKHYzMiksIHYzM18odjMzKSwgdjM0Xyh2
MzQpLCB2MzVfKHYzNSksIHYzNl8odjM2KSwgdjM3Xyh2MzcpLAotICAgICAgdjM4Xyh2MzgpLCB2
MzlfKHYzOSksIHY0MF8odjQwKSwgdjQxXyh2NDEpLCB2NDJfKHY0MiksIHY0M18odjQzKSB7fQot
Ci0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjxUPigp
IGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4odjFfKSwgc3Rh
dGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjNfKSwgc3RhdGljX2Nh
c3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4o
djZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8VD4odjhfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4odjEwXyksIHN0YXRpY19jYXN0PFQ+
KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTJfKSwgc3RhdGljX2Nhc3Q8VD4odjEz
XyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTVfKSwg
c3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19jYXN0PFQ+KHYxN18pLAotICAgICAgICBzdGF0
aWNfY2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8VD4odjE5XyksIHN0YXRpY19jYXN0PFQ+KHYy
MF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjFfKSwgc3RhdGljX2Nhc3Q8VD4odjIyXyks
IHN0YXRpY19jYXN0PFQ+KHYyM18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjRfKSwgc3Rh
dGljX2Nhc3Q8VD4odjI1XyksIHN0YXRpY19jYXN0PFQ+KHYyNl8pLAotICAgICAgICBzdGF0aWNf
Y2FzdDxUPih2MjdfKSwgc3RhdGljX2Nhc3Q8VD4odjI4XyksIHN0YXRpY19jYXN0PFQ+KHYyOV8p
LAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzBfKSwgc3RhdGljX2Nhc3Q8VD4odjMxXyksIHN0
YXRpY19jYXN0PFQ+KHYzMl8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzNfKSwgc3RhdGlj
X2Nhc3Q8VD4odjM0XyksIHN0YXRpY19jYXN0PFQ+KHYzNV8pLAotICAgICAgICBzdGF0aWNfY2Fz
dDxUPih2MzZfKSwgc3RhdGljX2Nhc3Q8VD4odjM3XyksIHN0YXRpY19jYXN0PFQ+KHYzOF8pLAot
ICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzlfKSwgc3RhdGljX2Nhc3Q8VD4odjQwXyksIHN0YXRp
Y19jYXN0PFQ+KHY0MV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2NDJfKSwgc3RhdGljX2Nh
c3Q8VD4odjQzXyl9OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1
ZUFycmF5NDMoY29uc3QgVmFsdWVBcnJheTQzJiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJf
KG90aGVyLnYyXyksCi0gICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1Xyhv
dGhlci52NV8pLCB2Nl8ob3RoZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3Ro
ZXIudjhfKSwgdjlfKG90aGVyLnY5XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFfKG90
aGVyLnYxMV8pLCB2MTJfKG90aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90aGVy
LnYxNF8pLAotICAgICAgdjE1XyhvdGhlci52MTVfKSwgdjE2XyhvdGhlci52MTZfKSwgdjE3Xyhv
dGhlci52MTdfKSwgdjE4XyhvdGhlci52MThfKSwKLSAgICAgIHYxOV8ob3RoZXIudjE5XyksIHYy
MF8ob3RoZXIudjIwXyksIHYyMV8ob3RoZXIudjIxXyksIHYyMl8ob3RoZXIudjIyXyksCi0gICAg
ICB2MjNfKG90aGVyLnYyM18pLCB2MjRfKG90aGVyLnYyNF8pLCB2MjVfKG90aGVyLnYyNV8pLCB2
MjZfKG90aGVyLnYyNl8pLAotICAgICAgdjI3XyhvdGhlci52MjdfKSwgdjI4XyhvdGhlci52Mjhf
KSwgdjI5XyhvdGhlci52MjlfKSwgdjMwXyhvdGhlci52MzBfKSwKLSAgICAgIHYzMV8ob3RoZXIu
djMxXyksIHYzMl8ob3RoZXIudjMyXyksIHYzM18ob3RoZXIudjMzXyksIHYzNF8ob3RoZXIudjM0
XyksCi0gICAgICB2MzVfKG90aGVyLnYzNV8pLCB2MzZfKG90aGVyLnYzNl8pLCB2MzdfKG90aGVy
LnYzN18pLCB2MzhfKG90aGVyLnYzOF8pLAotICAgICAgdjM5XyhvdGhlci52MzlfKSwgdjQwXyhv
dGhlci52NDBfKSwgdjQxXyhvdGhlci52NDFfKSwgdjQyXyhvdGhlci52NDJfKSwKLSAgICAgIHY0
M18ob3RoZXIudjQzXykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0g
YXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVB
cnJheTQzJiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNv
bnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2
IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsK
LSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwotICBjb25zdCBUMTIgdjEyXzsK
LSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRfOwotICBjb25zdCBUMTUgdjE1XzsK
LSAgY29uc3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQxNyB2MTdfOwotICBjb25zdCBUMTggdjE4XzsK
LSAgY29uc3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQyMCB2MjBfOwotICBjb25zdCBUMjEgdjIxXzsK
LSAgY29uc3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQyMyB2MjNfOwotICBjb25zdCBUMjQgdjI0XzsK
LSAgY29uc3QgVDI1IHYyNV87Ci0gIGNvbnN0IFQyNiB2MjZfOwotICBjb25zdCBUMjcgdjI3XzsK
LSAgY29uc3QgVDI4IHYyOF87Ci0gIGNvbnN0IFQyOSB2MjlfOwotICBjb25zdCBUMzAgdjMwXzsK
LSAgY29uc3QgVDMxIHYzMV87Ci0gIGNvbnN0IFQzMiB2MzJfOwotICBjb25zdCBUMzMgdjMzXzsK
LSAgY29uc3QgVDM0IHYzNF87Ci0gIGNvbnN0IFQzNSB2MzVfOwotICBjb25zdCBUMzYgdjM2XzsK
LSAgY29uc3QgVDM3IHYzN187Ci0gIGNvbnN0IFQzOCB2MzhfOwotICBjb25zdCBUMzkgdjM5XzsK
LSAgY29uc3QgVDQwIHY0MF87Ci0gIGNvbnN0IFQ0MSB2NDFfOwotICBjb25zdCBUNDIgdjQyXzsK
LSAgY29uc3QgVDQzIHY0M187Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1l
IFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1l
IFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAs
Ci0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUg
VDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVu
YW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0
eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0g
ICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5
LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1l
IFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBl
bmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAsCi0gICAg
dHlwZW5hbWUgVDQxLCB0eXBlbmFtZSBUNDIsIHR5cGVuYW1lIFQ0MywgdHlwZW5hbWUgVDQ0Pgot
Y2xhc3MgVmFsdWVBcnJheTQ0IHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXk0NChUMSB2MSwgVDIg
djIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAg
ICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0IHYxNCwgVDE1IHYxNSwg
VDE2IHYxNiwgVDE3IHYxNywKLSAgICAgIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2
MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQyNSB2MjUsCi0gICAgICBUMjYgdjI2LCBU
MjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMxLCBUMzIgdjMyLCBUMzMg
djMzLAotICAgICAgVDM0IHYzNCwgVDM1IHYzNSwgVDM2IHYzNiwgVDM3IHYzNywgVDM4IHYzOCwg
VDM5IHYzOSwgVDQwIHY0MCwgVDQxIHY0MSwKLSAgICAgIFQ0MiB2NDIsIFQ0MyB2NDMsIFQ0NCB2
NDQpIDogdjFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSwgdjRfKHY0KSwgdjVfKHY1KSwKLSAgICAg
IHY2Xyh2NiksIHY3Xyh2NyksIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwgdjExXyh2MTEp
LCB2MTJfKHYxMiksCi0gICAgICB2MTNfKHYxMyksIHYxNF8odjE0KSwgdjE1Xyh2MTUpLCB2MTZf
KHYxNiksIHYxN18odjE3KSwgdjE4Xyh2MTgpLAotICAgICAgdjE5Xyh2MTkpLCB2MjBfKHYyMCks
IHYyMV8odjIxKSwgdjIyXyh2MjIpLCB2MjNfKHYyMyksIHYyNF8odjI0KSwKLSAgICAgIHYyNV8o
djI1KSwgdjI2Xyh2MjYpLCB2MjdfKHYyNyksIHYyOF8odjI4KSwgdjI5Xyh2MjkpLCB2MzBfKHYz
MCksCi0gICAgICB2MzFfKHYzMSksIHYzMl8odjMyKSwgdjMzXyh2MzMpLCB2MzRfKHYzNCksIHYz
NV8odjM1KSwgdjM2Xyh2MzYpLAotICAgICAgdjM3Xyh2MzcpLCB2MzhfKHYzOCksIHYzOV8odjM5
KSwgdjQwXyh2NDApLCB2NDFfKHY0MSksIHY0Ml8odjQyKSwKLSAgICAgIHY0M18odjQzKSwgdjQ0
Xyh2NDQpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2Vu
ZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxU
Pih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2M18p
LCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2NV8pLAotICAgICAgICBzdGF0
aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18pLCBzdGF0aWNfY2FzdDxUPih2OF8p
LAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNfY2FzdDxUPih2MTBfKSwgc3Rh
dGljX2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxMl8pLCBzdGF0aWNf
Y2FzdDxUPih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4odjE0XyksCi0gICAgICAgIHN0YXRpY19jYXN0
PFQ+KHYxNV8pLCBzdGF0aWNfY2FzdDxUPih2MTZfKSwgc3RhdGljX2Nhc3Q8VD4odjE3XyksCi0g
ICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxOF8pLCBzdGF0aWNfY2FzdDxUPih2MTlfKSwgc3RhdGlj
X2Nhc3Q8VD4odjIwXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyMV8pLCBzdGF0aWNfY2Fz
dDxUPih2MjJfKSwgc3RhdGljX2Nhc3Q8VD4odjIzXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+
KHYyNF8pLCBzdGF0aWNfY2FzdDxUPih2MjVfKSwgc3RhdGljX2Nhc3Q8VD4odjI2XyksCi0gICAg
ICAgIHN0YXRpY19jYXN0PFQ+KHYyN18pLCBzdGF0aWNfY2FzdDxUPih2MjhfKSwgc3RhdGljX2Nh
c3Q8VD4odjI5XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzMF8pLCBzdGF0aWNfY2FzdDxU
Pih2MzFfKSwgc3RhdGljX2Nhc3Q8VD4odjMyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYz
M18pLCBzdGF0aWNfY2FzdDxUPih2MzRfKSwgc3RhdGljX2Nhc3Q8VD4odjM1XyksCi0gICAgICAg
IHN0YXRpY19jYXN0PFQ+KHYzNl8pLCBzdGF0aWNfY2FzdDxUPih2MzdfKSwgc3RhdGljX2Nhc3Q8
VD4odjM4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzOV8pLCBzdGF0aWNfY2FzdDxUPih2
NDBfKSwgc3RhdGljX2Nhc3Q8VD4odjQxXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY0Ml8p
LCBzdGF0aWNfY2FzdDxUPih2NDNfKSwgc3RhdGljX2Nhc3Q8VD4odjQ0Xyl9OwotICAgIHJldHVy
biBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5NDQoY29uc3QgVmFsdWVBcnJh
eTQ0JiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyksCi0gICAgICB2M18o
b3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhlci52NV8pLCB2Nl8ob3RoZXIudjZf
KSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIudjhfKSwgdjlfKG90aGVyLnY5Xyks
IHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFfKG90aGVyLnYxMV8pLCB2MTJfKG90aGVyLnYx
Ml8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90aGVyLnYxNF8pLAotICAgICAgdjE1XyhvdGhl
ci52MTVfKSwgdjE2XyhvdGhlci52MTZfKSwgdjE3XyhvdGhlci52MTdfKSwgdjE4XyhvdGhlci52
MThfKSwKLSAgICAgIHYxOV8ob3RoZXIudjE5XyksIHYyMF8ob3RoZXIudjIwXyksIHYyMV8ob3Ro
ZXIudjIxXyksIHYyMl8ob3RoZXIudjIyXyksCi0gICAgICB2MjNfKG90aGVyLnYyM18pLCB2MjRf
KG90aGVyLnYyNF8pLCB2MjVfKG90aGVyLnYyNV8pLCB2MjZfKG90aGVyLnYyNl8pLAotICAgICAg
djI3XyhvdGhlci52MjdfKSwgdjI4XyhvdGhlci52MjhfKSwgdjI5XyhvdGhlci52MjlfKSwgdjMw
XyhvdGhlci52MzBfKSwKLSAgICAgIHYzMV8ob3RoZXIudjMxXyksIHYzMl8ob3RoZXIudjMyXyks
IHYzM18ob3RoZXIudjMzXyksIHYzNF8ob3RoZXIudjM0XyksCi0gICAgICB2MzVfKG90aGVyLnYz
NV8pLCB2MzZfKG90aGVyLnYzNl8pLCB2MzdfKG90aGVyLnYzN18pLCB2MzhfKG90aGVyLnYzOF8p
LAotICAgICAgdjM5XyhvdGhlci52MzlfKSwgdjQwXyhvdGhlci52NDBfKSwgdjQxXyhvdGhlci52
NDFfKSwgdjQyXyhvdGhlci52NDJfKSwKLSAgICAgIHY0M18ob3RoZXIudjQzXyksIHY0NF8ob3Ro
ZXIudjQ0Xykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdu
bWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTQ0
JiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQz
IHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsK
LSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29u
c3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwotICBjb25zdCBUMTIgdjEyXzsKLSAgY29u
c3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRfOwotICBjb25zdCBUMTUgdjE1XzsKLSAgY29u
c3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQxNyB2MTdfOwotICBjb25zdCBUMTggdjE4XzsKLSAgY29u
c3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQyMCB2MjBfOwotICBjb25zdCBUMjEgdjIxXzsKLSAgY29u
c3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQyMyB2MjNfOwotICBjb25zdCBUMjQgdjI0XzsKLSAgY29u
c3QgVDI1IHYyNV87Ci0gIGNvbnN0IFQyNiB2MjZfOwotICBjb25zdCBUMjcgdjI3XzsKLSAgY29u
c3QgVDI4IHYyOF87Ci0gIGNvbnN0IFQyOSB2MjlfOwotICBjb25zdCBUMzAgdjMwXzsKLSAgY29u
c3QgVDMxIHYzMV87Ci0gIGNvbnN0IFQzMiB2MzJfOwotICBjb25zdCBUMzMgdjMzXzsKLSAgY29u
c3QgVDM0IHYzNF87Ci0gIGNvbnN0IFQzNSB2MzVfOwotICBjb25zdCBUMzYgdjM2XzsKLSAgY29u
c3QgVDM3IHYzN187Ci0gIGNvbnN0IFQzOCB2MzhfOwotICBjb25zdCBUMzkgdjM5XzsKLSAgY29u
c3QgVDQwIHY0MF87Ci0gIGNvbnN0IFQ0MSB2NDFfOwotICBjb25zdCBUNDIgdjQyXzsKLSAgY29u
c3QgVDQzIHY0M187Ci0gIGNvbnN0IFQ0NCB2NDRfOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1l
IFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwK
LSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwg
dHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBU
MTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5h
bWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5
cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlw
ZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgs
IHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUg
VDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVu
YW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5h
bWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwgdHlwZW5hbWUgVDQyLCB0eXBlbmFtZSBUNDMsIHR5
cGVuYW1lIFQ0NCwgdHlwZW5hbWUgVDQ1PgotY2xhc3MgVmFsdWVBcnJheTQ1IHsKLSBwdWJsaWM6
Ci0gIFZhbHVlQXJyYXk0NShUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2
LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAgICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwg
VDEzIHYxMywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywKLSAgICAgIFQxOCB2
MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQs
IFQyNSB2MjUsCi0gICAgICBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAg
djMwLCBUMzEgdjMxLCBUMzIgdjMyLCBUMzMgdjMzLAotICAgICAgVDM0IHYzNCwgVDM1IHYzNSwg
VDM2IHYzNiwgVDM3IHYzNywgVDM4IHYzOCwgVDM5IHYzOSwgVDQwIHY0MCwgVDQxIHY0MSwKLSAg
ICAgIFQ0MiB2NDIsIFQ0MyB2NDMsIFQ0NCB2NDQsIFQ0NSB2NDUpIDogdjFfKHYxKSwgdjJfKHYy
KSwgdjNfKHYzKSwgdjRfKHY0KSwKLSAgICAgIHY1Xyh2NSksIHY2Xyh2NiksIHY3Xyh2NyksIHY4
Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwgdjExXyh2MTEpLAotICAgICAgdjEyXyh2MTIpLCB2
MTNfKHYxMyksIHYxNF8odjE0KSwgdjE1Xyh2MTUpLCB2MTZfKHYxNiksIHYxN18odjE3KSwKLSAg
ICAgIHYxOF8odjE4KSwgdjE5Xyh2MTkpLCB2MjBfKHYyMCksIHYyMV8odjIxKSwgdjIyXyh2MjIp
LCB2MjNfKHYyMyksCi0gICAgICB2MjRfKHYyNCksIHYyNV8odjI1KSwgdjI2Xyh2MjYpLCB2Mjdf
KHYyNyksIHYyOF8odjI4KSwgdjI5Xyh2MjkpLAotICAgICAgdjMwXyh2MzApLCB2MzFfKHYzMSks
IHYzMl8odjMyKSwgdjMzXyh2MzMpLCB2MzRfKHYzNCksIHYzNV8odjM1KSwKLSAgICAgIHYzNl8o
djM2KSwgdjM3Xyh2MzcpLCB2MzhfKHYzOCksIHYzOV8odjM5KSwgdjQwXyh2NDApLCB2NDFfKHY0
MSksCi0gICAgICB2NDJfKHY0MiksIHY0M18odjQzKSwgdjQ0Xyh2NDQpLCB2NDVfKHY0NSkge30K
LQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4o
KSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0
YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzXyksIHN0YXRpY19j
YXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+
KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0YXRpY19jYXN0PFQ+KHY4XyksCi0gICAgICAg
IHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19jYXN0PFQ+KHYxMF8pLCBzdGF0aWNfY2FzdDxU
Pih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjEyXyksIHN0YXRpY19jYXN0PFQ+KHYx
M18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE1Xyks
IHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNfY2FzdDxUPih2MTdfKSwKLSAgICAgICAgc3Rh
dGljX2Nhc3Q8VD4odjE4XyksIHN0YXRpY19jYXN0PFQ+KHYxOV8pLCBzdGF0aWNfY2FzdDxUPih2
MjBfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjIxXyksIHN0YXRpY19jYXN0PFQ+KHYyMl8p
LCBzdGF0aWNfY2FzdDxUPih2MjNfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI0XyksIHN0
YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0aWNfY2FzdDxUPih2MjZfKSwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8VD4odjI3XyksIHN0YXRpY19jYXN0PFQ+KHYyOF8pLCBzdGF0aWNfY2FzdDxUPih2Mjlf
KSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMwXyksIHN0YXRpY19jYXN0PFQ+KHYzMV8pLCBz
dGF0aWNfY2FzdDxUPih2MzJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMzXyksIHN0YXRp
Y19jYXN0PFQ+KHYzNF8pLCBzdGF0aWNfY2FzdDxUPih2MzVfKSwKLSAgICAgICAgc3RhdGljX2Nh
c3Q8VD4odjM2XyksIHN0YXRpY19jYXN0PFQ+KHYzN18pLCBzdGF0aWNfY2FzdDxUPih2MzhfKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjM5XyksIHN0YXRpY19jYXN0PFQ+KHY0MF8pLCBzdGF0
aWNfY2FzdDxUPih2NDFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjQyXyksIHN0YXRpY19j
YXN0PFQ+KHY0M18pLCBzdGF0aWNfY2FzdDxUPih2NDRfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjQ1Xyl9OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFy
cmF5NDUoY29uc3QgVmFsdWVBcnJheTQ1JiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90
aGVyLnYyXyksCi0gICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhl
ci52NV8pLCB2Nl8ob3RoZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIu
djhfKSwgdjlfKG90aGVyLnY5XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFfKG90aGVy
LnYxMV8pLCB2MTJfKG90aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90aGVyLnYx
NF8pLAotICAgICAgdjE1XyhvdGhlci52MTVfKSwgdjE2XyhvdGhlci52MTZfKSwgdjE3XyhvdGhl
ci52MTdfKSwgdjE4XyhvdGhlci52MThfKSwKLSAgICAgIHYxOV8ob3RoZXIudjE5XyksIHYyMF8o
b3RoZXIudjIwXyksIHYyMV8ob3RoZXIudjIxXyksIHYyMl8ob3RoZXIudjIyXyksCi0gICAgICB2
MjNfKG90aGVyLnYyM18pLCB2MjRfKG90aGVyLnYyNF8pLCB2MjVfKG90aGVyLnYyNV8pLCB2MjZf
KG90aGVyLnYyNl8pLAotICAgICAgdjI3XyhvdGhlci52MjdfKSwgdjI4XyhvdGhlci52MjhfKSwg
djI5XyhvdGhlci52MjlfKSwgdjMwXyhvdGhlci52MzBfKSwKLSAgICAgIHYzMV8ob3RoZXIudjMx
XyksIHYzMl8ob3RoZXIudjMyXyksIHYzM18ob3RoZXIudjMzXyksIHYzNF8ob3RoZXIudjM0Xyks
Ci0gICAgICB2MzVfKG90aGVyLnYzNV8pLCB2MzZfKG90aGVyLnYzNl8pLCB2MzdfKG90aGVyLnYz
N18pLCB2MzhfKG90aGVyLnYzOF8pLAotICAgICAgdjM5XyhvdGhlci52MzlfKSwgdjQwXyhvdGhl
ci52NDBfKSwgdjQxXyhvdGhlci52NDFfKSwgdjQyXyhvdGhlci52NDJfKSwKLSAgICAgIHY0M18o
b3RoZXIudjQzXyksIHY0NF8ob3RoZXIudjQ0XyksIHY0NV8ob3RoZXIudjQ1Xykge30KLQotIHBy
aXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRl
ZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTQ1JiBvdGhlcik7Ci0KLSAgY29u
c3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3QgVDQg
djRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcgdjdfOwot
ICBjb25zdCBUOCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87Ci0gIGNv
bnN0IFQxMSB2MTFfOwotICBjb25zdCBUMTIgdjEyXzsKLSAgY29uc3QgVDEzIHYxM187Ci0gIGNv
bnN0IFQxNCB2MTRfOwotICBjb25zdCBUMTUgdjE1XzsKLSAgY29uc3QgVDE2IHYxNl87Ci0gIGNv
bnN0IFQxNyB2MTdfOwotICBjb25zdCBUMTggdjE4XzsKLSAgY29uc3QgVDE5IHYxOV87Ci0gIGNv
bnN0IFQyMCB2MjBfOwotICBjb25zdCBUMjEgdjIxXzsKLSAgY29uc3QgVDIyIHYyMl87Ci0gIGNv
bnN0IFQyMyB2MjNfOwotICBjb25zdCBUMjQgdjI0XzsKLSAgY29uc3QgVDI1IHYyNV87Ci0gIGNv
bnN0IFQyNiB2MjZfOwotICBjb25zdCBUMjcgdjI3XzsKLSAgY29uc3QgVDI4IHYyOF87Ci0gIGNv
bnN0IFQyOSB2MjlfOwotICBjb25zdCBUMzAgdjMwXzsKLSAgY29uc3QgVDMxIHYzMV87Ci0gIGNv
bnN0IFQzMiB2MzJfOwotICBjb25zdCBUMzMgdjMzXzsKLSAgY29uc3QgVDM0IHYzNF87Ci0gIGNv
bnN0IFQzNSB2MzVfOwotICBjb25zdCBUMzYgdjM2XzsKLSAgY29uc3QgVDM3IHYzN187Ci0gIGNv
bnN0IFQzOCB2MzhfOwotICBjb25zdCBUMzkgdjM5XzsKLSAgY29uc3QgVDQwIHY0MF87Ci0gIGNv
bnN0IFQ0MSB2NDFfOwotICBjb25zdCBUNDIgdjQyXzsKLSAgY29uc3QgVDQzIHY0M187Ci0gIGNv
bnN0IFQ0NCB2NDRfOwotICBjb25zdCBUNDUgdjQ1XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFt
ZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUs
Ci0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDks
IHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUg
VDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVu
YW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0
eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5
cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4
LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1l
IFQzMiwgdHlwZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBl
bmFtZSBUMzYsIHR5cGVuYW1lIFQzNywgdHlwZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVu
YW1lIFQ0MCwKLSAgICB0eXBlbmFtZSBUNDEsIHR5cGVuYW1lIFQ0MiwgdHlwZW5hbWUgVDQzLCB0
eXBlbmFtZSBUNDQsIHR5cGVuYW1lIFQ0NSwKLSAgICB0eXBlbmFtZSBUNDY+Ci1jbGFzcyBWYWx1
ZUFycmF5NDYgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTQ2KFQxIHYxLCBUMiB2MiwgVDMgdjMs
IFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEw
LCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBU
MTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYy
MiwgVDIzIHYyMywgVDI0IHYyNCwgVDI1IHYyNSwKLSAgICAgIFQyNiB2MjYsIFQyNyB2MjcsIFQy
OCB2MjgsIFQyOSB2MjksIFQzMCB2MzAsIFQzMSB2MzEsIFQzMiB2MzIsIFQzMyB2MzMsCi0gICAg
ICBUMzQgdjM0LCBUMzUgdjM1LCBUMzYgdjM2LCBUMzcgdjM3LCBUMzggdjM4LCBUMzkgdjM5LCBU
NDAgdjQwLCBUNDEgdjQxLAotICAgICAgVDQyIHY0MiwgVDQzIHY0MywgVDQ0IHY0NCwgVDQ1IHY0
NSwgVDQ2IHY0NikgOiB2MV8odjEpLCB2Ml8odjIpLCB2M18odjMpLAotICAgICAgdjRfKHY0KSwg
djVfKHY1KSwgdjZfKHY2KSwgdjdfKHY3KSwgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLAot
ICAgICAgdjExXyh2MTEpLCB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQpLCB2MTVfKHYx
NSksIHYxNl8odjE2KSwKLSAgICAgIHYxN18odjE3KSwgdjE4Xyh2MTgpLCB2MTlfKHYxOSksIHYy
MF8odjIwKSwgdjIxXyh2MjEpLCB2MjJfKHYyMiksCi0gICAgICB2MjNfKHYyMyksIHYyNF8odjI0
KSwgdjI1Xyh2MjUpLCB2MjZfKHYyNiksIHYyN18odjI3KSwgdjI4Xyh2MjgpLAotICAgICAgdjI5
Xyh2MjkpLCB2MzBfKHYzMCksIHYzMV8odjMxKSwgdjMyXyh2MzIpLCB2MzNfKHYzMyksIHYzNF8o
djM0KSwKLSAgICAgIHYzNV8odjM1KSwgdjM2Xyh2MzYpLCB2MzdfKHYzNyksIHYzOF8odjM4KSwg
djM5Xyh2MzkpLCB2NDBfKHY0MCksCi0gICAgICB2NDFfKHY0MSksIHY0Ml8odjQyKSwgdjQzXyh2
NDMpLCB2NDRfKHY0NCksIHY0NV8odjQ1KSwgdjQ2Xyh2NDYpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5
cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNv
bnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8p
LAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0
aWNfY2FzdDxUPih2NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2Fz
dDxUPih2N18pLCBzdGF0aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2
OV8pLCBzdGF0aWNfY2FzdDxUPih2MTBfKSwgc3RhdGljX2Nhc3Q8VD4odjExXyksCi0gICAgICAg
IHN0YXRpY19jYXN0PFQ+KHYxMl8pLCBzdGF0aWNfY2FzdDxUPih2MTNfKSwgc3RhdGljX2Nhc3Q8
VD4odjE0XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxNV8pLCBzdGF0aWNfY2FzdDxUPih2
MTZfKSwgc3RhdGljX2Nhc3Q8VD4odjE3XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxOF8p
LCBzdGF0aWNfY2FzdDxUPih2MTlfKSwgc3RhdGljX2Nhc3Q8VD4odjIwXyksCi0gICAgICAgIHN0
YXRpY19jYXN0PFQ+KHYyMV8pLCBzdGF0aWNfY2FzdDxUPih2MjJfKSwgc3RhdGljX2Nhc3Q8VD4o
djIzXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyNF8pLCBzdGF0aWNfY2FzdDxUPih2MjVf
KSwgc3RhdGljX2Nhc3Q8VD4odjI2XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyN18pLCBz
dGF0aWNfY2FzdDxUPih2MjhfKSwgc3RhdGljX2Nhc3Q8VD4odjI5XyksCi0gICAgICAgIHN0YXRp
Y19jYXN0PFQ+KHYzMF8pLCBzdGF0aWNfY2FzdDxUPih2MzFfKSwgc3RhdGljX2Nhc3Q8VD4odjMy
XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzM18pLCBzdGF0aWNfY2FzdDxUPih2MzRfKSwg
c3RhdGljX2Nhc3Q8VD4odjM1XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzNl8pLCBzdGF0
aWNfY2FzdDxUPih2MzdfKSwgc3RhdGljX2Nhc3Q8VD4odjM4XyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHYzOV8pLCBzdGF0aWNfY2FzdDxUPih2NDBfKSwgc3RhdGljX2Nhc3Q8VD4odjQxXyks
Ci0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY0Ml8pLCBzdGF0aWNfY2FzdDxUPih2NDNfKSwgc3Rh
dGljX2Nhc3Q8VD4odjQ0XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY0NV8pLCBzdGF0aWNf
Y2FzdDxUPih2NDZfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5KTsKLSAgfQotCi0gIFZh
bHVlQXJyYXk0Nihjb25zdCBWYWx1ZUFycmF5NDYmIG90aGVyKSA6IHYxXyhvdGhlci52MV8pLCB2
Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52M18pLCB2NF8ob3RoZXIudjRfKSwgdjVf
KG90aGVyLnY1XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAgdjdfKG90aGVyLnY3XyksIHY4Xyhv
dGhlci52OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhlci52MTBfKSwKLSAgICAgIHYxMV8o
b3RoZXIudjExXyksIHYxMl8ob3RoZXIudjEyXyksIHYxM18ob3RoZXIudjEzXyksIHYxNF8ob3Ro
ZXIudjE0XyksCi0gICAgICB2MTVfKG90aGVyLnYxNV8pLCB2MTZfKG90aGVyLnYxNl8pLCB2MTdf
KG90aGVyLnYxN18pLCB2MThfKG90aGVyLnYxOF8pLAotICAgICAgdjE5XyhvdGhlci52MTlfKSwg
djIwXyhvdGhlci52MjBfKSwgdjIxXyhvdGhlci52MjFfKSwgdjIyXyhvdGhlci52MjJfKSwKLSAg
ICAgIHYyM18ob3RoZXIudjIzXyksIHYyNF8ob3RoZXIudjI0XyksIHYyNV8ob3RoZXIudjI1Xyks
IHYyNl8ob3RoZXIudjI2XyksCi0gICAgICB2MjdfKG90aGVyLnYyN18pLCB2MjhfKG90aGVyLnYy
OF8pLCB2MjlfKG90aGVyLnYyOV8pLCB2MzBfKG90aGVyLnYzMF8pLAotICAgICAgdjMxXyhvdGhl
ci52MzFfKSwgdjMyXyhvdGhlci52MzJfKSwgdjMzXyhvdGhlci52MzNfKSwgdjM0XyhvdGhlci52
MzRfKSwKLSAgICAgIHYzNV8ob3RoZXIudjM1XyksIHYzNl8ob3RoZXIudjM2XyksIHYzN18ob3Ro
ZXIudjM3XyksIHYzOF8ob3RoZXIudjM4XyksCi0gICAgICB2MzlfKG90aGVyLnYzOV8pLCB2NDBf
KG90aGVyLnY0MF8pLCB2NDFfKG90aGVyLnY0MV8pLCB2NDJfKG90aGVyLnY0Ml8pLAotICAgICAg
djQzXyhvdGhlci52NDNfKSwgdjQ0XyhvdGhlci52NDRfKSwgdjQ1XyhvdGhlci52NDVfKSwgdjQ2
XyhvdGhlci52NDZfKSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBh
c3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFy
cmF5NDYmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29u
c3QgVDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYg
djZfOwotICBjb25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwot
ICBjb25zdCBUMTAgdjEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwot
ICBjb25zdCBUMTMgdjEzXzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwot
ICBjb25zdCBUMTYgdjE2XzsKLSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwot
ICBjb25zdCBUMTkgdjE5XzsKLSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwot
ICBjb25zdCBUMjIgdjIyXzsKLSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwot
ICBjb25zdCBUMjUgdjI1XzsKLSAgY29uc3QgVDI2IHYyNl87Ci0gIGNvbnN0IFQyNyB2MjdfOwot
ICBjb25zdCBUMjggdjI4XzsKLSAgY29uc3QgVDI5IHYyOV87Ci0gIGNvbnN0IFQzMCB2MzBfOwot
ICBjb25zdCBUMzEgdjMxXzsKLSAgY29uc3QgVDMyIHYzMl87Ci0gIGNvbnN0IFQzMyB2MzNfOwot
ICBjb25zdCBUMzQgdjM0XzsKLSAgY29uc3QgVDM1IHYzNV87Ci0gIGNvbnN0IFQzNiB2MzZfOwot
ICBjb25zdCBUMzcgdjM3XzsKLSAgY29uc3QgVDM4IHYzOF87Ci0gIGNvbnN0IFQzOSB2MzlfOwot
ICBjb25zdCBUNDAgdjQwXzsKLSAgY29uc3QgVDQxIHY0MV87Ci0gIGNvbnN0IFQ0MiB2NDJfOwot
ICBjb25zdCBUNDMgdjQzXzsKLSAgY29uc3QgVDQ0IHY0NF87Ci0gIGNvbnN0IFQ0NSB2NDVfOwot
ICBjb25zdCBUNDYgdjQ2XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUg
VDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUg
VDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwK
LSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBU
MTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5h
bWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5
cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAg
ICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjks
IHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlwZW5hbWUg
VDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBUMzYsIHR5cGVu
YW1lIFQzNywgdHlwZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0MCwKLSAgICB0
eXBlbmFtZSBUNDEsIHR5cGVuYW1lIFQ0MiwgdHlwZW5hbWUgVDQzLCB0eXBlbmFtZSBUNDQsIHR5
cGVuYW1lIFQ0NSwKLSAgICB0eXBlbmFtZSBUNDYsIHR5cGVuYW1lIFQ0Nz4KLWNsYXNzIFZhbHVl
QXJyYXk0NyB7Ci0gcHVibGljOgotICBWYWx1ZUFycmF5NDcoVDEgdjEsIFQyIHYyLCBUMyB2Mywg
VDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwKLSAgICAgIFQxMCB2MTAs
IFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQx
NyB2MTcsCi0gICAgICBUMTggdjE4LCBUMTkgdjE5LCBUMjAgdjIwLCBUMjEgdjIxLCBUMjIgdjIy
LCBUMjMgdjIzLCBUMjQgdjI0LCBUMjUgdjI1LAotICAgICAgVDI2IHYyNiwgVDI3IHYyNywgVDI4
IHYyOCwgVDI5IHYyOSwgVDMwIHYzMCwgVDMxIHYzMSwgVDMyIHYzMiwgVDMzIHYzMywKLSAgICAg
IFQzNCB2MzQsIFQzNSB2MzUsIFQzNiB2MzYsIFQzNyB2MzcsIFQzOCB2MzgsIFQzOSB2MzksIFQ0
MCB2NDAsIFQ0MSB2NDEsCi0gICAgICBUNDIgdjQyLCBUNDMgdjQzLCBUNDQgdjQ0LCBUNDUgdjQ1
LCBUNDYgdjQ2LCBUNDcgdjQ3KSA6IHYxXyh2MSksIHYyXyh2MiksCi0gICAgICB2M18odjMpLCB2
NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpLCB2N18odjcpLCB2OF8odjgpLCB2OV8odjkpLCB2MTBf
KHYxMCksCi0gICAgICB2MTFfKHYxMSksIHYxMl8odjEyKSwgdjEzXyh2MTMpLCB2MTRfKHYxNCks
IHYxNV8odjE1KSwgdjE2Xyh2MTYpLAotICAgICAgdjE3Xyh2MTcpLCB2MThfKHYxOCksIHYxOV8o
djE5KSwgdjIwXyh2MjApLCB2MjFfKHYyMSksIHYyMl8odjIyKSwKLSAgICAgIHYyM18odjIzKSwg
djI0Xyh2MjQpLCB2MjVfKHYyNSksIHYyNl8odjI2KSwgdjI3Xyh2MjcpLCB2MjhfKHYyOCksCi0g
ICAgICB2MjlfKHYyOSksIHYzMF8odjMwKSwgdjMxXyh2MzEpLCB2MzJfKHYzMiksIHYzM18odjMz
KSwgdjM0Xyh2MzQpLAotICAgICAgdjM1Xyh2MzUpLCB2MzZfKHYzNiksIHYzN18odjM3KSwgdjM4
Xyh2MzgpLCB2MzlfKHYzOSksIHY0MF8odjQwKSwKLSAgICAgIHY0MV8odjQxKSwgdjQyXyh2NDIp
LCB2NDNfKHY0MyksIHY0NF8odjQ0KSwgdjQ1Xyh2NDUpLCB2NDZfKHY0NiksCi0gICAgICB2NDdf
KHY0Nykge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5l
cmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0YXRpY19jYXN0PFQ+
KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzXyks
IHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1XyksCi0gICAgICAgIHN0YXRp
Y19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0YXRpY19jYXN0PFQ+KHY4Xyks
Ci0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19jYXN0PFQ+KHYxMF8pLCBzdGF0
aWNfY2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjEyXyksIHN0YXRpY19j
YXN0PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNfY2FzdDxUPih2MTdfKSwKLSAg
ICAgICAgc3RhdGljX2Nhc3Q8VD4odjE4XyksIHN0YXRpY19jYXN0PFQ+KHYxOV8pLCBzdGF0aWNf
Y2FzdDxUPih2MjBfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjIxXyksIHN0YXRpY19jYXN0
PFQ+KHYyMl8pLCBzdGF0aWNfY2FzdDxUPih2MjNfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4o
djI0XyksIHN0YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0aWNfY2FzdDxUPih2MjZfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjI3XyksIHN0YXRpY19jYXN0PFQ+KHYyOF8pLCBzdGF0aWNfY2Fz
dDxUPih2MjlfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMwXyksIHN0YXRpY19jYXN0PFQ+
KHYzMV8pLCBzdGF0aWNfY2FzdDxUPih2MzJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMz
XyksIHN0YXRpY19jYXN0PFQ+KHYzNF8pLCBzdGF0aWNfY2FzdDxUPih2MzVfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjM2XyksIHN0YXRpY19jYXN0PFQ+KHYzN18pLCBzdGF0aWNfY2FzdDxU
Pih2MzhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjM5XyksIHN0YXRpY19jYXN0PFQ+KHY0
MF8pLCBzdGF0aWNfY2FzdDxUPih2NDFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjQyXyks
IHN0YXRpY19jYXN0PFQ+KHY0M18pLCBzdGF0aWNfY2FzdDxUPih2NDRfKSwKLSAgICAgICAgc3Rh
dGljX2Nhc3Q8VD4odjQ1XyksIHN0YXRpY19jYXN0PFQ+KHY0Nl8pLCBzdGF0aWNfY2FzdDxUPih2
NDdfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5KTsKLSAgfQotCi0gIFZhbHVlQXJyYXk0
Nyhjb25zdCBWYWx1ZUFycmF5NDcmIG90aGVyKSA6IHYxXyhvdGhlci52MV8pLCB2Ml8ob3RoZXIu
djJfKSwKLSAgICAgIHYzXyhvdGhlci52M18pLCB2NF8ob3RoZXIudjRfKSwgdjVfKG90aGVyLnY1
XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAgdjdfKG90aGVyLnY3XyksIHY4XyhvdGhlci52OF8p
LCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhlci52MTBfKSwKLSAgICAgIHYxMV8ob3RoZXIudjEx
XyksIHYxMl8ob3RoZXIudjEyXyksIHYxM18ob3RoZXIudjEzXyksIHYxNF8ob3RoZXIudjE0Xyks
Ci0gICAgICB2MTVfKG90aGVyLnYxNV8pLCB2MTZfKG90aGVyLnYxNl8pLCB2MTdfKG90aGVyLnYx
N18pLCB2MThfKG90aGVyLnYxOF8pLAotICAgICAgdjE5XyhvdGhlci52MTlfKSwgdjIwXyhvdGhl
ci52MjBfKSwgdjIxXyhvdGhlci52MjFfKSwgdjIyXyhvdGhlci52MjJfKSwKLSAgICAgIHYyM18o
b3RoZXIudjIzXyksIHYyNF8ob3RoZXIudjI0XyksIHYyNV8ob3RoZXIudjI1XyksIHYyNl8ob3Ro
ZXIudjI2XyksCi0gICAgICB2MjdfKG90aGVyLnYyN18pLCB2MjhfKG90aGVyLnYyOF8pLCB2Mjlf
KG90aGVyLnYyOV8pLCB2MzBfKG90aGVyLnYzMF8pLAotICAgICAgdjMxXyhvdGhlci52MzFfKSwg
djMyXyhvdGhlci52MzJfKSwgdjMzXyhvdGhlci52MzNfKSwgdjM0XyhvdGhlci52MzRfKSwKLSAg
ICAgIHYzNV8ob3RoZXIudjM1XyksIHYzNl8ob3RoZXIudjM2XyksIHYzN18ob3RoZXIudjM3Xyks
IHYzOF8ob3RoZXIudjM4XyksCi0gICAgICB2MzlfKG90aGVyLnYzOV8pLCB2NDBfKG90aGVyLnY0
MF8pLCB2NDFfKG90aGVyLnY0MV8pLCB2NDJfKG90aGVyLnY0Ml8pLAotICAgICAgdjQzXyhvdGhl
ci52NDNfKSwgdjQ0XyhvdGhlci52NDRfKSwgdjQ1XyhvdGhlci52NDVfKSwgdjQ2XyhvdGhlci52
NDZfKSwKLSAgICAgIHY0N18ob3RoZXIudjQ3Xykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGlt
cGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRv
cj0oY29uc3QgVmFsdWVBcnJheTQ3JiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25z
dCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBUNSB2
NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87Ci0g
IGNvbnN0IFQ5IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwotICBj
b25zdCBUMTIgdjEyXzsKLSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRfOwotICBj
b25zdCBUMTUgdjE1XzsKLSAgY29uc3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQxNyB2MTdfOwotICBj
b25zdCBUMTggdjE4XzsKLSAgY29uc3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQyMCB2MjBfOwotICBj
b25zdCBUMjEgdjIxXzsKLSAgY29uc3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQyMyB2MjNfOwotICBj
b25zdCBUMjQgdjI0XzsKLSAgY29uc3QgVDI1IHYyNV87Ci0gIGNvbnN0IFQyNiB2MjZfOwotICBj
b25zdCBUMjcgdjI3XzsKLSAgY29uc3QgVDI4IHYyOF87Ci0gIGNvbnN0IFQyOSB2MjlfOwotICBj
b25zdCBUMzAgdjMwXzsKLSAgY29uc3QgVDMxIHYzMV87Ci0gIGNvbnN0IFQzMiB2MzJfOwotICBj
b25zdCBUMzMgdjMzXzsKLSAgY29uc3QgVDM0IHYzNF87Ci0gIGNvbnN0IFQzNSB2MzVfOwotICBj
b25zdCBUMzYgdjM2XzsKLSAgY29uc3QgVDM3IHYzN187Ci0gIGNvbnN0IFQzOCB2MzhfOwotICBj
b25zdCBUMzkgdjM5XzsKLSAgY29uc3QgVDQwIHY0MF87Ci0gIGNvbnN0IFQ0MSB2NDFfOwotICBj
b25zdCBUNDIgdjQyXzsKLSAgY29uc3QgVDQzIHY0M187Ci0gIGNvbnN0IFQ0NCB2NDRfOwotICBj
b25zdCBUNDUgdjQ1XzsKLSAgY29uc3QgVDQ2IHY0Nl87Ci0gIGNvbnN0IFQ0NyB2NDdfOwotfTsK
LQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVu
YW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVu
YW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlw
ZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAg
IHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwg
dHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBU
MjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5h
bWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5
cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlw
ZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgs
IHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwgdHlwZW5hbWUg
VDQyLCB0eXBlbmFtZSBUNDMsIHR5cGVuYW1lIFQ0NCwgdHlwZW5hbWUgVDQ1LAotICAgIHR5cGVu
YW1lIFQ0NiwgdHlwZW5hbWUgVDQ3LCB0eXBlbmFtZSBUNDg+Ci1jbGFzcyBWYWx1ZUFycmF5NDgg
ewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTQ4KFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBU
NSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjEx
LCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LAot
ICAgICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYy
MywgVDI0IHYyNCwgVDI1IHYyNSwKLSAgICAgIFQyNiB2MjYsIFQyNyB2MjcsIFQyOCB2MjgsIFQy
OSB2MjksIFQzMCB2MzAsIFQzMSB2MzEsIFQzMiB2MzIsIFQzMyB2MzMsCi0gICAgICBUMzQgdjM0
LCBUMzUgdjM1LCBUMzYgdjM2LCBUMzcgdjM3LCBUMzggdjM4LCBUMzkgdjM5LCBUNDAgdjQwLCBU
NDEgdjQxLAotICAgICAgVDQyIHY0MiwgVDQzIHY0MywgVDQ0IHY0NCwgVDQ1IHY0NSwgVDQ2IHY0
NiwgVDQ3IHY0NywgVDQ4IHY0OCkgOiB2MV8odjEpLAotICAgICAgdjJfKHYyKSwgdjNfKHYzKSwg
djRfKHY0KSwgdjVfKHY1KSwgdjZfKHY2KSwgdjdfKHY3KSwgdjhfKHY4KSwgdjlfKHY5KSwKLSAg
ICAgIHYxMF8odjEwKSwgdjExXyh2MTEpLCB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQp
LCB2MTVfKHYxNSksCi0gICAgICB2MTZfKHYxNiksIHYxN18odjE3KSwgdjE4Xyh2MTgpLCB2MTlf
KHYxOSksIHYyMF8odjIwKSwgdjIxXyh2MjEpLAotICAgICAgdjIyXyh2MjIpLCB2MjNfKHYyMyks
IHYyNF8odjI0KSwgdjI1Xyh2MjUpLCB2MjZfKHYyNiksIHYyN18odjI3KSwKLSAgICAgIHYyOF8o
djI4KSwgdjI5Xyh2MjkpLCB2MzBfKHYzMCksIHYzMV8odjMxKSwgdjMyXyh2MzIpLCB2MzNfKHYz
MyksCi0gICAgICB2MzRfKHYzNCksIHYzNV8odjM1KSwgdjM2Xyh2MzYpLCB2MzdfKHYzNyksIHYz
OF8odjM4KSwgdjM5Xyh2MzkpLAotICAgICAgdjQwXyh2NDApLCB2NDFfKHY0MSksIHY0Ml8odjQy
KSwgdjQzXyh2NDMpLCB2NDRfKHY0NCksIHY0NV8odjQ1KSwKLSAgICAgIHY0Nl8odjQ2KSwgdjQ3
Xyh2NDcpLCB2NDhfKHY0OCkge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0
b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0
YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1XyksCi0g
ICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0YXRpY19j
YXN0PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19jYXN0PFQ+
KHYxMF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjEy
XyksIHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNfY2FzdDxU
Pih2MTdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE4XyksIHN0YXRpY19jYXN0PFQ+KHYx
OV8pLCBzdGF0aWNfY2FzdDxUPih2MjBfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjIxXyks
IHN0YXRpY19jYXN0PFQ+KHYyMl8pLCBzdGF0aWNfY2FzdDxUPih2MjNfKSwKLSAgICAgICAgc3Rh
dGljX2Nhc3Q8VD4odjI0XyksIHN0YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0aWNfY2FzdDxUPih2
MjZfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI3XyksIHN0YXRpY19jYXN0PFQ+KHYyOF8p
LCBzdGF0aWNfY2FzdDxUPih2MjlfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMwXyksIHN0
YXRpY19jYXN0PFQ+KHYzMV8pLCBzdGF0aWNfY2FzdDxUPih2MzJfKSwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8VD4odjMzXyksIHN0YXRpY19jYXN0PFQ+KHYzNF8pLCBzdGF0aWNfY2FzdDxUPih2MzVf
KSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjM2XyksIHN0YXRpY19jYXN0PFQ+KHYzN18pLCBz
dGF0aWNfY2FzdDxUPih2MzhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjM5XyksIHN0YXRp
Y19jYXN0PFQ+KHY0MF8pLCBzdGF0aWNfY2FzdDxUPih2NDFfKSwKLSAgICAgICAgc3RhdGljX2Nh
c3Q8VD4odjQyXyksIHN0YXRpY19jYXN0PFQ+KHY0M18pLCBzdGF0aWNfY2FzdDxUPih2NDRfKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjQ1XyksIHN0YXRpY19jYXN0PFQ+KHY0Nl8pLCBzdGF0
aWNfY2FzdDxUPih2NDdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjQ4Xyl9OwotICAgIHJl
dHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5NDgoY29uc3QgVmFsdWVB
cnJheTQ4JiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyksCi0gICAgICB2
M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhlci52NV8pLCB2Nl8ob3RoZXIu
djZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIudjhfKSwgdjlfKG90aGVyLnY5
XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFfKG90aGVyLnYxMV8pLCB2MTJfKG90aGVy
LnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90aGVyLnYxNF8pLAotICAgICAgdjE1Xyhv
dGhlci52MTVfKSwgdjE2XyhvdGhlci52MTZfKSwgdjE3XyhvdGhlci52MTdfKSwgdjE4XyhvdGhl
ci52MThfKSwKLSAgICAgIHYxOV8ob3RoZXIudjE5XyksIHYyMF8ob3RoZXIudjIwXyksIHYyMV8o
b3RoZXIudjIxXyksIHYyMl8ob3RoZXIudjIyXyksCi0gICAgICB2MjNfKG90aGVyLnYyM18pLCB2
MjRfKG90aGVyLnYyNF8pLCB2MjVfKG90aGVyLnYyNV8pLCB2MjZfKG90aGVyLnYyNl8pLAotICAg
ICAgdjI3XyhvdGhlci52MjdfKSwgdjI4XyhvdGhlci52MjhfKSwgdjI5XyhvdGhlci52MjlfKSwg
djMwXyhvdGhlci52MzBfKSwKLSAgICAgIHYzMV8ob3RoZXIudjMxXyksIHYzMl8ob3RoZXIudjMy
XyksIHYzM18ob3RoZXIudjMzXyksIHYzNF8ob3RoZXIudjM0XyksCi0gICAgICB2MzVfKG90aGVy
LnYzNV8pLCB2MzZfKG90aGVyLnYzNl8pLCB2MzdfKG90aGVyLnYzN18pLCB2MzhfKG90aGVyLnYz
OF8pLAotICAgICAgdjM5XyhvdGhlci52MzlfKSwgdjQwXyhvdGhlci52NDBfKSwgdjQxXyhvdGhl
ci52NDFfKSwgdjQyXyhvdGhlci52NDJfKSwKLSAgICAgIHY0M18ob3RoZXIudjQzXyksIHY0NF8o
b3RoZXIudjQ0XyksIHY0NV8ob3RoZXIudjQ1XyksIHY0Nl8ob3RoZXIudjQ2XyksCi0gICAgICB2
NDdfKG90aGVyLnY0N18pLCB2NDhfKG90aGVyLnY0OF8pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBO
byBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3Bl
cmF0b3I9KGNvbnN0IFZhbHVlQXJyYXk0OCYgb3RoZXIpOwotCi0gIGNvbnN0IFQxIHYxXzsKLSAg
Y29uc3QgVDIgdjJfOwotICBjb25zdCBUMyB2M187Ci0gIGNvbnN0IFQ0IHY0XzsKLSAgY29uc3Qg
VDUgdjVfOwotICBjb25zdCBUNiB2Nl87Ci0gIGNvbnN0IFQ3IHY3XzsKLSAgY29uc3QgVDggdjhf
OwotICBjb25zdCBUOSB2OV87Ci0gIGNvbnN0IFQxMCB2MTBfOwotICBjb25zdCBUMTEgdjExXzsK
LSAgY29uc3QgVDEyIHYxMl87Ci0gIGNvbnN0IFQxMyB2MTNfOwotICBjb25zdCBUMTQgdjE0XzsK
LSAgY29uc3QgVDE1IHYxNV87Ci0gIGNvbnN0IFQxNiB2MTZfOwotICBjb25zdCBUMTcgdjE3XzsK
LSAgY29uc3QgVDE4IHYxOF87Ci0gIGNvbnN0IFQxOSB2MTlfOwotICBjb25zdCBUMjAgdjIwXzsK
LSAgY29uc3QgVDIxIHYyMV87Ci0gIGNvbnN0IFQyMiB2MjJfOwotICBjb25zdCBUMjMgdjIzXzsK
LSAgY29uc3QgVDI0IHYyNF87Ci0gIGNvbnN0IFQyNSB2MjVfOwotICBjb25zdCBUMjYgdjI2XzsK
LSAgY29uc3QgVDI3IHYyN187Ci0gIGNvbnN0IFQyOCB2MjhfOwotICBjb25zdCBUMjkgdjI5XzsK
LSAgY29uc3QgVDMwIHYzMF87Ci0gIGNvbnN0IFQzMSB2MzFfOwotICBjb25zdCBUMzIgdjMyXzsK
LSAgY29uc3QgVDMzIHYzM187Ci0gIGNvbnN0IFQzNCB2MzRfOwotICBjb25zdCBUMzUgdjM1XzsK
LSAgY29uc3QgVDM2IHYzNl87Ci0gIGNvbnN0IFQzNyB2MzdfOwotICBjb25zdCBUMzggdjM4XzsK
LSAgY29uc3QgVDM5IHYzOV87Ci0gIGNvbnN0IFQ0MCB2NDBfOwotICBjb25zdCBUNDEgdjQxXzsK
LSAgY29uc3QgVDQyIHY0Ml87Ci0gIGNvbnN0IFQ0MyB2NDNfOwotICBjb25zdCBUNDQgdjQ0XzsK
LSAgY29uc3QgVDQ1IHY0NV87Ci0gIGNvbnN0IFQ0NiB2NDZfOwotICBjb25zdCBUNDcgdjQ3XzsK
LSAgY29uc3QgVDQ4IHY0OF87Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1l
IFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1l
IFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAs
Ci0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUg
VDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVu
YW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0
eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0g
ICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5
LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1l
IFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBl
bmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAsCi0gICAg
dHlwZW5hbWUgVDQxLCB0eXBlbmFtZSBUNDIsIHR5cGVuYW1lIFQ0MywgdHlwZW5hbWUgVDQ0LCB0
eXBlbmFtZSBUNDUsCi0gICAgdHlwZW5hbWUgVDQ2LCB0eXBlbmFtZSBUNDcsIHR5cGVuYW1lIFQ0
OCwgdHlwZW5hbWUgVDQ5PgotY2xhc3MgVmFsdWVBcnJheTQ5IHsKLSBwdWJsaWM6Ci0gIFZhbHVl
QXJyYXk0OShUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2Nywg
VDggdjgsIFQ5IHY5LAotICAgICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywg
VDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywKLSAgICAgIFQxOCB2MTgsIFQxOSB2
MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQyNSB2MjUs
Ci0gICAgICBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEg
djMxLCBUMzIgdjMyLCBUMzMgdjMzLAotICAgICAgVDM0IHYzNCwgVDM1IHYzNSwgVDM2IHYzNiwg
VDM3IHYzNywgVDM4IHYzOCwgVDM5IHYzOSwgVDQwIHY0MCwgVDQxIHY0MSwKLSAgICAgIFQ0MiB2
NDIsIFQ0MyB2NDMsIFQ0NCB2NDQsIFQ0NSB2NDUsIFQ0NiB2NDYsIFQ0NyB2NDcsIFQ0OCB2NDgs
Ci0gICAgICBUNDkgdjQ5KSA6IHYxXyh2MSksIHYyXyh2MiksIHYzXyh2MyksIHY0Xyh2NCksIHY1
Xyh2NSksIHY2Xyh2NiksIHY3Xyh2NyksCi0gICAgICB2OF8odjgpLCB2OV8odjkpLCB2MTBfKHYx
MCksIHYxMV8odjExKSwgdjEyXyh2MTIpLCB2MTNfKHYxMyksIHYxNF8odjE0KSwKLSAgICAgIHYx
NV8odjE1KSwgdjE2Xyh2MTYpLCB2MTdfKHYxNyksIHYxOF8odjE4KSwgdjE5Xyh2MTkpLCB2MjBf
KHYyMCksCi0gICAgICB2MjFfKHYyMSksIHYyMl8odjIyKSwgdjIzXyh2MjMpLCB2MjRfKHYyNCks
IHYyNV8odjI1KSwgdjI2Xyh2MjYpLAotICAgICAgdjI3Xyh2MjcpLCB2MjhfKHYyOCksIHYyOV8o
djI5KSwgdjMwXyh2MzApLCB2MzFfKHYzMSksIHYzMl8odjMyKSwKLSAgICAgIHYzM18odjMzKSwg
djM0Xyh2MzQpLCB2MzVfKHYzNSksIHYzNl8odjM2KSwgdjM3Xyh2MzcpLCB2MzhfKHYzOCksCi0g
ICAgICB2MzlfKHYzOSksIHY0MF8odjQwKSwgdjQxXyh2NDEpLCB2NDJfKHY0MiksIHY0M18odjQz
KSwgdjQ0Xyh2NDQpLAotICAgICAgdjQ1Xyh2NDUpLCB2NDZfKHY0NiksIHY0N18odjQ3KSwgdjQ4
Xyh2NDgpLCB2NDlfKHY0OSkge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0
b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0
YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1XyksCi0g
ICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0YXRpY19j
YXN0PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19jYXN0PFQ+
KHYxMF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjEy
XyksIHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNfY2FzdDxU
Pih2MTdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE4XyksIHN0YXRpY19jYXN0PFQ+KHYx
OV8pLCBzdGF0aWNfY2FzdDxUPih2MjBfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjIxXyks
IHN0YXRpY19jYXN0PFQ+KHYyMl8pLCBzdGF0aWNfY2FzdDxUPih2MjNfKSwKLSAgICAgICAgc3Rh
dGljX2Nhc3Q8VD4odjI0XyksIHN0YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0aWNfY2FzdDxUPih2
MjZfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI3XyksIHN0YXRpY19jYXN0PFQ+KHYyOF8p
LCBzdGF0aWNfY2FzdDxUPih2MjlfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMwXyksIHN0
YXRpY19jYXN0PFQ+KHYzMV8pLCBzdGF0aWNfY2FzdDxUPih2MzJfKSwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8VD4odjMzXyksIHN0YXRpY19jYXN0PFQ+KHYzNF8pLCBzdGF0aWNfY2FzdDxUPih2MzVf
KSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjM2XyksIHN0YXRpY19jYXN0PFQ+KHYzN18pLCBz
dGF0aWNfY2FzdDxUPih2MzhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjM5XyksIHN0YXRp
Y19jYXN0PFQ+KHY0MF8pLCBzdGF0aWNfY2FzdDxUPih2NDFfKSwKLSAgICAgICAgc3RhdGljX2Nh
c3Q8VD4odjQyXyksIHN0YXRpY19jYXN0PFQ+KHY0M18pLCBzdGF0aWNfY2FzdDxUPih2NDRfKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjQ1XyksIHN0YXRpY19jYXN0PFQ+KHY0Nl8pLCBzdGF0
aWNfY2FzdDxUPih2NDdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjQ4XyksIHN0YXRpY19j
YXN0PFQ+KHY0OV8pfTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFs
dWVBcnJheTQ5KGNvbnN0IFZhbHVlQXJyYXk0OSYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYy
XyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8o
b3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90
aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhv
dGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhl
ci52MTRfKSwKLSAgICAgIHYxNV8ob3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18o
b3RoZXIudjE3XyksIHYxOF8ob3RoZXIudjE4XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2
MjBfKG90aGVyLnYyMF8pLCB2MjFfKG90aGVyLnYyMV8pLCB2MjJfKG90aGVyLnYyMl8pLAotICAg
ICAgdjIzXyhvdGhlci52MjNfKSwgdjI0XyhvdGhlci52MjRfKSwgdjI1XyhvdGhlci52MjVfKSwg
djI2XyhvdGhlci52MjZfKSwKLSAgICAgIHYyN18ob3RoZXIudjI3XyksIHYyOF8ob3RoZXIudjI4
XyksIHYyOV8ob3RoZXIudjI5XyksIHYzMF8ob3RoZXIudjMwXyksCi0gICAgICB2MzFfKG90aGVy
LnYzMV8pLCB2MzJfKG90aGVyLnYzMl8pLCB2MzNfKG90aGVyLnYzM18pLCB2MzRfKG90aGVyLnYz
NF8pLAotICAgICAgdjM1XyhvdGhlci52MzVfKSwgdjM2XyhvdGhlci52MzZfKSwgdjM3XyhvdGhl
ci52MzdfKSwgdjM4XyhvdGhlci52MzhfKSwKLSAgICAgIHYzOV8ob3RoZXIudjM5XyksIHY0MF8o
b3RoZXIudjQwXyksIHY0MV8ob3RoZXIudjQxXyksIHY0Ml8ob3RoZXIudjQyXyksCi0gICAgICB2
NDNfKG90aGVyLnY0M18pLCB2NDRfKG90aGVyLnY0NF8pLCB2NDVfKG90aGVyLnY0NV8pLCB2NDZf
KG90aGVyLnY0Nl8pLAotICAgICAgdjQ3XyhvdGhlci52NDdfKSwgdjQ4XyhvdGhlci52NDhfKSwg
djQ5XyhvdGhlci52NDlfKSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24g
LSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1
ZUFycmF5NDkmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAg
Y29uc3QgVDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3Qg
VDYgdjZfOwotICBjb25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlf
OwotICBjb25zdCBUMTAgdjEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJf
OwotICBjb25zdCBUMTMgdjEzXzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVf
OwotICBjb25zdCBUMTYgdjE2XzsKLSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThf
OwotICBjb25zdCBUMTkgdjE5XzsKLSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFf
OwotICBjb25zdCBUMjIgdjIyXzsKLSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRf
OwotICBjb25zdCBUMjUgdjI1XzsKLSAgY29uc3QgVDI2IHYyNl87Ci0gIGNvbnN0IFQyNyB2Mjdf
OwotICBjb25zdCBUMjggdjI4XzsKLSAgY29uc3QgVDI5IHYyOV87Ci0gIGNvbnN0IFQzMCB2MzBf
OwotICBjb25zdCBUMzEgdjMxXzsKLSAgY29uc3QgVDMyIHYzMl87Ci0gIGNvbnN0IFQzMyB2MzNf
OwotICBjb25zdCBUMzQgdjM0XzsKLSAgY29uc3QgVDM1IHYzNV87Ci0gIGNvbnN0IFQzNiB2MzZf
OwotICBjb25zdCBUMzcgdjM3XzsKLSAgY29uc3QgVDM4IHYzOF87Ci0gIGNvbnN0IFQzOSB2Mzlf
OwotICBjb25zdCBUNDAgdjQwXzsKLSAgY29uc3QgVDQxIHY0MV87Ci0gIGNvbnN0IFQ0MiB2NDJf
OwotICBjb25zdCBUNDMgdjQzXzsKLSAgY29uc3QgVDQ0IHY0NF87Ci0gIGNvbnN0IFQ0NSB2NDVf
OwotICBjb25zdCBUNDYgdjQ2XzsKLSAgY29uc3QgVDQ3IHY0N187Ci0gIGNvbnN0IFQ0OCB2NDhf
OwotICBjb25zdCBUNDkgdjQ5XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5h
bWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5h
bWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQx
MCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFt
ZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlw
ZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEs
IHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwK
LSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBU
MjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlwZW5h
bWUgVDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBUMzYsIHR5
cGVuYW1lIFQzNywgdHlwZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0MCwKLSAg
ICB0eXBlbmFtZSBUNDEsIHR5cGVuYW1lIFQ0MiwgdHlwZW5hbWUgVDQzLCB0eXBlbmFtZSBUNDQs
IHR5cGVuYW1lIFQ0NSwKLSAgICB0eXBlbmFtZSBUNDYsIHR5cGVuYW1lIFQ0NywgdHlwZW5hbWUg
VDQ4LCB0eXBlbmFtZSBUNDksIHR5cGVuYW1lIFQ1MD4KLWNsYXNzIFZhbHVlQXJyYXk1MCB7Ci0g
cHVibGljOgotICBWYWx1ZUFycmF5NTAoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1
LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwKLSAgICAgIFQxMCB2MTAsIFQxMSB2MTEsIFQx
MiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsCi0gICAg
ICBUMTggdjE4LCBUMTkgdjE5LCBUMjAgdjIwLCBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIzLCBU
MjQgdjI0LCBUMjUgdjI1LAotICAgICAgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwgVDI5IHYy
OSwgVDMwIHYzMCwgVDMxIHYzMSwgVDMyIHYzMiwgVDMzIHYzMywKLSAgICAgIFQzNCB2MzQsIFQz
NSB2MzUsIFQzNiB2MzYsIFQzNyB2MzcsIFQzOCB2MzgsIFQzOSB2MzksIFQ0MCB2NDAsIFQ0MSB2
NDEsCi0gICAgICBUNDIgdjQyLCBUNDMgdjQzLCBUNDQgdjQ0LCBUNDUgdjQ1LCBUNDYgdjQ2LCBU
NDcgdjQ3LCBUNDggdjQ4LCBUNDkgdjQ5LAotICAgICAgVDUwIHY1MCkgOiB2MV8odjEpLCB2Ml8o
djIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpLCB2N18odjcpLAotICAgICAg
djhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLCB2MTFfKHYxMSksIHYxMl8odjEyKSwgdjEzXyh2
MTMpLCB2MTRfKHYxNCksCi0gICAgICB2MTVfKHYxNSksIHYxNl8odjE2KSwgdjE3Xyh2MTcpLCB2
MThfKHYxOCksIHYxOV8odjE5KSwgdjIwXyh2MjApLAotICAgICAgdjIxXyh2MjEpLCB2MjJfKHYy
MiksIHYyM18odjIzKSwgdjI0Xyh2MjQpLCB2MjVfKHYyNSksIHYyNl8odjI2KSwKLSAgICAgIHYy
N18odjI3KSwgdjI4Xyh2MjgpLCB2MjlfKHYyOSksIHYzMF8odjMwKSwgdjMxXyh2MzEpLCB2MzJf
KHYzMiksCi0gICAgICB2MzNfKHYzMyksIHYzNF8odjM0KSwgdjM1Xyh2MzUpLCB2MzZfKHYzNiks
IHYzN18odjM3KSwgdjM4Xyh2MzgpLAotICAgICAgdjM5Xyh2MzkpLCB2NDBfKHY0MCksIHY0MV8o
djQxKSwgdjQyXyh2NDIpLCB2NDNfKHY0MyksIHY0NF8odjQ0KSwKLSAgICAgIHY0NV8odjQ1KSwg
djQ2Xyh2NDYpLCB2NDdfKHY0NyksIHY0OF8odjQ4KSwgdjQ5Xyh2NDkpLCB2NTBfKHY1MCkge30K
LQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4o
KSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0
YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzXyksIHN0YXRpY19j
YXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+
KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0YXRpY19jYXN0PFQ+KHY4XyksCi0gICAgICAg
IHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19jYXN0PFQ+KHYxMF8pLCBzdGF0aWNfY2FzdDxU
Pih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjEyXyksIHN0YXRpY19jYXN0PFQ+KHYx
M18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE1Xyks
IHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNfY2FzdDxUPih2MTdfKSwKLSAgICAgICAgc3Rh
dGljX2Nhc3Q8VD4odjE4XyksIHN0YXRpY19jYXN0PFQ+KHYxOV8pLCBzdGF0aWNfY2FzdDxUPih2
MjBfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjIxXyksIHN0YXRpY19jYXN0PFQ+KHYyMl8p
LCBzdGF0aWNfY2FzdDxUPih2MjNfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI0XyksIHN0
YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0aWNfY2FzdDxUPih2MjZfKSwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8VD4odjI3XyksIHN0YXRpY19jYXN0PFQ+KHYyOF8pLCBzdGF0aWNfY2FzdDxUPih2Mjlf
KSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMwXyksIHN0YXRpY19jYXN0PFQ+KHYzMV8pLCBz
dGF0aWNfY2FzdDxUPih2MzJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMzXyksIHN0YXRp
Y19jYXN0PFQ+KHYzNF8pLCBzdGF0aWNfY2FzdDxUPih2MzVfKSwKLSAgICAgICAgc3RhdGljX2Nh
c3Q8VD4odjM2XyksIHN0YXRpY19jYXN0PFQ+KHYzN18pLCBzdGF0aWNfY2FzdDxUPih2MzhfKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjM5XyksIHN0YXRpY19jYXN0PFQ+KHY0MF8pLCBzdGF0
aWNfY2FzdDxUPih2NDFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjQyXyksIHN0YXRpY19j
YXN0PFQ+KHY0M18pLCBzdGF0aWNfY2FzdDxUPih2NDRfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjQ1XyksIHN0YXRpY19jYXN0PFQ+KHY0Nl8pLCBzdGF0aWNfY2FzdDxUPih2NDdfKSwKLSAg
ICAgICAgc3RhdGljX2Nhc3Q8VD4odjQ4XyksIHN0YXRpY19jYXN0PFQ+KHY0OV8pLCBzdGF0aWNf
Y2FzdDxUPih2NTBfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5KTsKLSAgfQotCi0gIFZh
bHVlQXJyYXk1MChjb25zdCBWYWx1ZUFycmF5NTAmIG90aGVyKSA6IHYxXyhvdGhlci52MV8pLCB2
Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52M18pLCB2NF8ob3RoZXIudjRfKSwgdjVf
KG90aGVyLnY1XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAgdjdfKG90aGVyLnY3XyksIHY4Xyhv
dGhlci52OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhlci52MTBfKSwKLSAgICAgIHYxMV8o
b3RoZXIudjExXyksIHYxMl8ob3RoZXIudjEyXyksIHYxM18ob3RoZXIudjEzXyksIHYxNF8ob3Ro
ZXIudjE0XyksCi0gICAgICB2MTVfKG90aGVyLnYxNV8pLCB2MTZfKG90aGVyLnYxNl8pLCB2MTdf
KG90aGVyLnYxN18pLCB2MThfKG90aGVyLnYxOF8pLAotICAgICAgdjE5XyhvdGhlci52MTlfKSwg
djIwXyhvdGhlci52MjBfKSwgdjIxXyhvdGhlci52MjFfKSwgdjIyXyhvdGhlci52MjJfKSwKLSAg
ICAgIHYyM18ob3RoZXIudjIzXyksIHYyNF8ob3RoZXIudjI0XyksIHYyNV8ob3RoZXIudjI1Xyks
IHYyNl8ob3RoZXIudjI2XyksCi0gICAgICB2MjdfKG90aGVyLnYyN18pLCB2MjhfKG90aGVyLnYy
OF8pLCB2MjlfKG90aGVyLnYyOV8pLCB2MzBfKG90aGVyLnYzMF8pLAotICAgICAgdjMxXyhvdGhl
ci52MzFfKSwgdjMyXyhvdGhlci52MzJfKSwgdjMzXyhvdGhlci52MzNfKSwgdjM0XyhvdGhlci52
MzRfKSwKLSAgICAgIHYzNV8ob3RoZXIudjM1XyksIHYzNl8ob3RoZXIudjM2XyksIHYzN18ob3Ro
ZXIudjM3XyksIHYzOF8ob3RoZXIudjM4XyksCi0gICAgICB2MzlfKG90aGVyLnYzOV8pLCB2NDBf
KG90aGVyLnY0MF8pLCB2NDFfKG90aGVyLnY0MV8pLCB2NDJfKG90aGVyLnY0Ml8pLAotICAgICAg
djQzXyhvdGhlci52NDNfKSwgdjQ0XyhvdGhlci52NDRfKSwgdjQ1XyhvdGhlci52NDVfKSwgdjQ2
XyhvdGhlci52NDZfKSwKLSAgICAgIHY0N18ob3RoZXIudjQ3XyksIHY0OF8ob3RoZXIudjQ4Xyks
IHY0OV8ob3RoZXIudjQ5XyksIHY1MF8ob3RoZXIudjUwXykge30KLQotIHByaXZhdGU6Ci0gIC8v
IE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBv
cGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTUwJiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwot
ICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25z
dCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2
OF87Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFf
OwotICBjb25zdCBUMTIgdjEyXzsKLSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRf
OwotICBjb25zdCBUMTUgdjE1XzsKLSAgY29uc3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQxNyB2MTdf
OwotICBjb25zdCBUMTggdjE4XzsKLSAgY29uc3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQyMCB2MjBf
OwotICBjb25zdCBUMjEgdjIxXzsKLSAgY29uc3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQyMyB2MjNf
OwotICBjb25zdCBUMjQgdjI0XzsKLSAgY29uc3QgVDI1IHYyNV87Ci0gIGNvbnN0IFQyNiB2MjZf
OwotICBjb25zdCBUMjcgdjI3XzsKLSAgY29uc3QgVDI4IHYyOF87Ci0gIGNvbnN0IFQyOSB2Mjlf
OwotICBjb25zdCBUMzAgdjMwXzsKLSAgY29uc3QgVDMxIHYzMV87Ci0gIGNvbnN0IFQzMiB2MzJf
OwotICBjb25zdCBUMzMgdjMzXzsKLSAgY29uc3QgVDM0IHYzNF87Ci0gIGNvbnN0IFQzNSB2MzVf
OwotICBjb25zdCBUMzYgdjM2XzsKLSAgY29uc3QgVDM3IHYzN187Ci0gIGNvbnN0IFQzOCB2Mzhf
OwotICBjb25zdCBUMzkgdjM5XzsKLSAgY29uc3QgVDQwIHY0MF87Ci0gIGNvbnN0IFQ0MSB2NDFf
OwotICBjb25zdCBUNDIgdjQyXzsKLSAgY29uc3QgVDQzIHY0M187Ci0gIGNvbnN0IFQ0NCB2NDRf
OwotICBjb25zdCBUNDUgdjQ1XzsKLSAgY29uc3QgVDQ2IHY0Nl87Ci0gIGNvbnN0IFQ0NyB2NDdf
OwotICBjb25zdCBUNDggdjQ4XzsKLSAgY29uc3QgVDQ5IHY0OV87Ci0gIGNvbnN0IFQ1MCB2NTBf
OwotfTsKLQotIyBpZiBHVEVTVF9IQVNfQ09NQklORQotLy8gSU5URVJOQUwgSU1QTEVNRU5UQVRJ
T04gLSBETyBOT1QgVVNFIElOIFVTRVIgQ09ERS4KLS8vCi0vLyBHZW5lcmF0ZXMgdmFsdWVzIGZy
b20gdGhlIENhcnRlc2lhbiBwcm9kdWN0IG9mIHZhbHVlcyBwcm9kdWNlZAotLy8gYnkgdGhlIGFy
Z3VtZW50IGdlbmVyYXRvcnMuCi0vLwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBU
Mj4KLWNsYXNzIENhcnRlc2lhblByb2R1Y3RHZW5lcmF0b3IyCi0gICAgOiBwdWJsaWMgUGFyYW1H
ZW5lcmF0b3JJbnRlcmZhY2U8IDo6dGVzdGluZzo6dHVwbGU8VDEsIFQyPiA+IHsKLSBwdWJsaWM6
Ci0gIHR5cGVkZWYgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDI+IFBhcmFtVHlwZTsKLQotICBDYXJ0
ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yMihjb25zdCBQYXJhbUdlbmVyYXRvcjxUMT4mIGcxLAotICAg
ICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDI+JiBnMikKLSAgICAgIDogZzFfKGcxKSwgZzJfKGcy
KSB7fQotICB2aXJ0dWFsIH5DYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yMigpIHt9Ci0KLSAgdmly
dHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIEJlZ2luKCkgY29uc3Qgewot
ICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhpcywgZzFfLCBnMV8uYmVnaW4oKSwgZzJfLCBnMl8u
YmVnaW4oKSk7Ci0gIH0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlw
ZT4qIEVuZCgpIGNvbnN0IHsKLSAgICByZXR1cm4gbmV3IEl0ZXJhdG9yKHRoaXMsIGcxXywgZzFf
LmVuZCgpLCBnMl8sIGcyXy5lbmQoKSk7Ci0gIH0KLQotIHByaXZhdGU6Ci0gIGNsYXNzIEl0ZXJh
dG9yIDogcHVibGljIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiB7Ci0gICBwdWJs
aWM6Ci0gICAgSXRlcmF0b3IoY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBl
PiogYmFzZSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQxPiYgZzEsCi0gICAgICBjb25z
dCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMT46Oml0ZXJhdG9yJiBjdXJyZW50MSwKLSAgICAg
IGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQyPiYgZzIsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJh
bUdlbmVyYXRvcjxUMj46Oml0ZXJhdG9yJiBjdXJyZW50MikKLSAgICAgICAgOiBiYXNlXyhiYXNl
KSwKLSAgICAgICAgICBiZWdpbjFfKGcxLmJlZ2luKCkpLCBlbmQxXyhnMS5lbmQoKSksIGN1cnJl
bnQxXyhjdXJyZW50MSksCi0gICAgICAgICAgYmVnaW4yXyhnMi5iZWdpbigpKSwgZW5kMl8oZzIu
ZW5kKCkpLCBjdXJyZW50Ml8oY3VycmVudDIpICAgIHsKLSAgICAgIENvbXB1dGVDdXJyZW50VmFs
dWUoKTsKLSAgICB9Ci0gICAgdmlydHVhbCB+SXRlcmF0b3IoKSB7fQotCi0gICAgdmlydHVhbCBj
b25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+KiBCYXNlR2VuZXJhdG9yKCkg
Y29uc3QgewotICAgICAgcmV0dXJuIGJhc2VfOwotICAgIH0KLSAgICAvLyBBZHZhbmNlIHNob3Vs
ZCBub3QgYmUgY2FsbGVkIG9uIGJleW9uZC1vZi1yYW5nZSBpdGVyYXRvcnMKLSAgICAvLyBzbyBu
byBjb21wb25lbnQgaXRlcmF0b3JzIG11c3QgYmUgYmV5b25kIGVuZCBvZiByYW5nZSwgZWl0aGVy
LgotICAgIHZpcnR1YWwgdm9pZCBBZHZhbmNlKCkgewotICAgICAgYXNzZXJ0KCFBdEVuZCgpKTsK
LSAgICAgICsrY3VycmVudDJfOwotICAgICAgaWYgKGN1cnJlbnQyXyA9PSBlbmQyXykgewotICAg
ICAgICBjdXJyZW50Ml8gPSBiZWdpbjJfOwotICAgICAgICArK2N1cnJlbnQxXzsKLSAgICAgIH0K
LSAgICAgIENvbXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0gICAgdmlydHVhbCBQYXJhbUl0
ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIENsb25lKCkgY29uc3QgewotICAgICAgcmV0dXJu
IG5ldyBJdGVyYXRvcigqdGhpcyk7Ci0gICAgfQotICAgIHZpcnR1YWwgY29uc3QgUGFyYW1UeXBl
KiBDdXJyZW50KCkgY29uc3QgeyByZXR1cm4gY3VycmVudF92YWx1ZV8uZ2V0KCk7IH0KLSAgICB2
aXJ0dWFsIGJvb2wgRXF1YWxzKGNvbnN0IFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBl
PiYgb3RoZXIpIGNvbnN0IHsKLSAgICAgIC8vIEhhdmluZyB0aGUgc2FtZSBiYXNlIGdlbmVyYXRv
ciBndWFyYW50ZWVzIHRoYXQgdGhlIG90aGVyCi0gICAgICAvLyBpdGVyYXRvciBpcyBvZiB0aGUg
c2FtZSB0eXBlIGFuZCB3ZSBjYW4gZG93bmNhc3QuCi0gICAgICBHVEVTVF9DSEVDS18oQmFzZUdl
bmVyYXRvcigpID09IG90aGVyLkJhc2VHZW5lcmF0b3IoKSkKLSAgICAgICAgICA8PCAiVGhlIHBy
b2dyYW0gYXR0ZW1wdGVkIHRvIGNvbXBhcmUgaXRlcmF0b3JzICIKLSAgICAgICAgICA8PCAiZnJv
bSBkaWZmZXJlbnQgZ2VuZXJhdG9ycy4iIDw8IHN0ZDo6ZW5kbDsKLSAgICAgIGNvbnN0IEl0ZXJh
dG9yKiB0eXBlZF9vdGhlciA9Ci0gICAgICAgICAgQ2hlY2tlZERvd25jYXN0VG9BY3R1YWxUeXBl
PGNvbnN0IEl0ZXJhdG9yPigmb3RoZXIpOwotICAgICAgLy8gV2UgbXVzdCByZXBvcnQgaXRlcmF0
b3JzIGVxdWFsIGlmIHRoZXkgYm90aCBwb2ludCBiZXlvbmQgdGhlaXIKLSAgICAgIC8vIHJlc3Bl
Y3RpdmUgcmFuZ2VzLiBUaGF0IGNhbiBoYXBwZW4gaW4gYSB2YXJpZXR5IG9mIGZhc2hpb25zLAot
ICAgICAgLy8gc28gd2UgaGF2ZSB0byBjb25zdWx0IEF0RW5kKCkuCi0gICAgICByZXR1cm4gKEF0
RW5kKCkgJiYgdHlwZWRfb3RoZXItPkF0RW5kKCkpIHx8Ci0gICAgICAgICAoCi0gICAgICAgICAg
Y3VycmVudDFfID09IHR5cGVkX290aGVyLT5jdXJyZW50MV8gJiYKLSAgICAgICAgICBjdXJyZW50
Ml8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQyXyk7Ci0gICAgfQotCi0gICBwcml2YXRlOgotICAg
IEl0ZXJhdG9yKGNvbnN0IEl0ZXJhdG9yJiBvdGhlcikKLSAgICAgICAgOiBiYXNlXyhvdGhlci5i
YXNlXyksCi0gICAgICAgIGJlZ2luMV8ob3RoZXIuYmVnaW4xXyksCi0gICAgICAgIGVuZDFfKG90
aGVyLmVuZDFfKSwKLSAgICAgICAgY3VycmVudDFfKG90aGVyLmN1cnJlbnQxXyksCi0gICAgICAg
IGJlZ2luMl8ob3RoZXIuYmVnaW4yXyksCi0gICAgICAgIGVuZDJfKG90aGVyLmVuZDJfKSwKLSAg
ICAgICAgY3VycmVudDJfKG90aGVyLmN1cnJlbnQyXykgewotICAgICAgQ29tcHV0ZUN1cnJlbnRW
YWx1ZSgpOwotICAgIH0KLQotICAgIHZvaWQgQ29tcHV0ZUN1cnJlbnRWYWx1ZSgpIHsKLSAgICAg
IGlmICghQXRFbmQoKSkKLSAgICAgICAgY3VycmVudF92YWx1ZV8ucmVzZXQobmV3IFBhcmFtVHlw
ZSgqY3VycmVudDFfLCAqY3VycmVudDJfKSk7Ci0gICAgfQotICAgIGJvb2wgQXRFbmQoKSBjb25z
dCB7Ci0gICAgICAvLyBXZSBtdXN0IHJlcG9ydCBpdGVyYXRvciBwYXN0IHRoZSBlbmQgb2YgdGhl
IHJhbmdlIHdoZW4gZWl0aGVyIG9mIHRoZQotICAgICAgLy8gY29tcG9uZW50IGl0ZXJhdG9ycyBo
YXMgcmVhY2hlZCB0aGUgZW5kIG9mIGl0cyByYW5nZS4KLSAgICAgIHJldHVybgotICAgICAgICAg
IGN1cnJlbnQxXyA9PSBlbmQxXyB8fAotICAgICAgICAgIGN1cnJlbnQyXyA9PSBlbmQyXzsKLSAg
ICB9Ci0KLSAgICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0
ZWQuCi0gICAgdm9pZCBvcGVyYXRvcj0oY29uc3QgSXRlcmF0b3ImIG90aGVyKTsKLQotICAgIGNv
bnN0IFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIGNvbnN0IGJhc2VfOwotICAg
IC8vIGJlZ2luW2ldXyBhbmQgZW5kW2ldXyBkZWZpbmUgdGhlIGktdGggcmFuZ2UgdGhhdCBJdGVy
YXRvciB0cmF2ZXJzZXMuCi0gICAgLy8gY3VycmVudFtpXV8gaXMgdGhlIGFjdHVhbCB0cmF2ZXJz
aW5nIGl0ZXJhdG9yLgotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQxPjo6aXRl
cmF0b3IgYmVnaW4xXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMT46Oml0
ZXJhdG9yIGVuZDFfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQxPjo6aXRlcmF0b3Ig
Y3VycmVudDFfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQyPjo6aXRlcmF0
b3IgYmVnaW4yXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMj46Oml0ZXJh
dG9yIGVuZDJfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQyPjo6aXRlcmF0b3IgY3Vy
cmVudDJfOwotICAgIGxpbmtlZF9wdHI8UGFyYW1UeXBlPiBjdXJyZW50X3ZhbHVlXzsKLSAgfTsg
IC8vIGNsYXNzIENhcnRlc2lhblByb2R1Y3RHZW5lcmF0b3IyOjpJdGVyYXRvcgotCi0gIC8vIE5v
IGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVy
YXRvcj0oY29uc3QgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjImIG90aGVyKTsKLQotICBjb25z
dCBQYXJhbUdlbmVyYXRvcjxUMT4gZzFfOwotICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUMj4gZzJf
OwotfTsgIC8vIGNsYXNzIENhcnRlc2lhblByb2R1Y3RHZW5lcmF0b3IyCi0KLQotdGVtcGxhdGUg
PHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDM+Ci1jbGFzcyBDYXJ0ZXNpYW5Q
cm9kdWN0R2VuZXJhdG9yMwotICAgIDogcHVibGljIFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPCA6
OnRlc3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDM+ID4gewotIHB1YmxpYzoKLSAgdHlwZWRlZiA6OnRl
c3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDM+IFBhcmFtVHlwZTsKLQotICBDYXJ0ZXNpYW5Qcm9kdWN0
R2VuZXJhdG9yMyhjb25zdCBQYXJhbUdlbmVyYXRvcjxUMT4mIGcxLAotICAgICAgY29uc3QgUGFy
YW1HZW5lcmF0b3I8VDI+JiBnMiwgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDM+JiBnMykKLSAgICAg
IDogZzFfKGcxKSwgZzJfKGcyKSwgZzNfKGczKSB7fQotICB2aXJ0dWFsIH5DYXJ0ZXNpYW5Qcm9k
dWN0R2VuZXJhdG9yMygpIHt9Ci0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBh
cmFtVHlwZT4qIEJlZ2luKCkgY29uc3QgewotICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhpcywg
ZzFfLCBnMV8uYmVnaW4oKSwgZzJfLCBnMl8uYmVnaW4oKSwgZzNfLAotICAgICAgICBnM18uYmVn
aW4oKSk7Ci0gIH0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4q
IEVuZCgpIGNvbnN0IHsKLSAgICByZXR1cm4gbmV3IEl0ZXJhdG9yKHRoaXMsIGcxXywgZzFfLmVu
ZCgpLCBnMl8sIGcyXy5lbmQoKSwgZzNfLCBnM18uZW5kKCkpOwotICB9Ci0KLSBwcml2YXRlOgot
ICBjbGFzcyBJdGVyYXRvciA6IHB1YmxpYyBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlw
ZT4gewotICAgcHVibGljOgotICAgIEl0ZXJhdG9yKGNvbnN0IFBhcmFtR2VuZXJhdG9ySW50ZXJm
YWNlPFBhcmFtVHlwZT4qIGJhc2UsCi0gICAgICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUMT4mIGcx
LAotICAgICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDE+OjppdGVyYXRvciYgY3Vy
cmVudDEsCi0gICAgICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUMj4mIGcyLAotICAgICAgY29uc3Qg
dHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDI+OjppdGVyYXRvciYgY3VycmVudDIsCi0gICAgICBj
b25zdCBQYXJhbUdlbmVyYXRvcjxUMz4mIGczLAotICAgICAgY29uc3QgdHlwZW5hbWUgUGFyYW1H
ZW5lcmF0b3I8VDM+OjppdGVyYXRvciYgY3VycmVudDMpCi0gICAgICAgIDogYmFzZV8oYmFzZSks
Ci0gICAgICAgICAgYmVnaW4xXyhnMS5iZWdpbigpKSwgZW5kMV8oZzEuZW5kKCkpLCBjdXJyZW50
MV8oY3VycmVudDEpLAotICAgICAgICAgIGJlZ2luMl8oZzIuYmVnaW4oKSksIGVuZDJfKGcyLmVu
ZCgpKSwgY3VycmVudDJfKGN1cnJlbnQyKSwKLSAgICAgICAgICBiZWdpbjNfKGczLmJlZ2luKCkp
LCBlbmQzXyhnMy5lbmQoKSksIGN1cnJlbnQzXyhjdXJyZW50MykgICAgewotICAgICAgQ29tcHV0
ZUN1cnJlbnRWYWx1ZSgpOwotICAgIH0KLSAgICB2aXJ0dWFsIH5JdGVyYXRvcigpIHt9Ci0KLSAg
ICB2aXJ0dWFsIGNvbnN0IFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIEJhc2VH
ZW5lcmF0b3IoKSBjb25zdCB7Ci0gICAgICByZXR1cm4gYmFzZV87Ci0gICAgfQotICAgIC8vIEFk
dmFuY2Ugc2hvdWxkIG5vdCBiZSBjYWxsZWQgb24gYmV5b25kLW9mLXJhbmdlIGl0ZXJhdG9ycwot
ICAgIC8vIHNvIG5vIGNvbXBvbmVudCBpdGVyYXRvcnMgbXVzdCBiZSBiZXlvbmQgZW5kIG9mIHJh
bmdlLCBlaXRoZXIuCi0gICAgdmlydHVhbCB2b2lkIEFkdmFuY2UoKSB7Ci0gICAgICBhc3NlcnQo
IUF0RW5kKCkpOwotICAgICAgKytjdXJyZW50M187Ci0gICAgICBpZiAoY3VycmVudDNfID09IGVu
ZDNfKSB7Ci0gICAgICAgIGN1cnJlbnQzXyA9IGJlZ2luM187Ci0gICAgICAgICsrY3VycmVudDJf
OwotICAgICAgfQotICAgICAgaWYgKGN1cnJlbnQyXyA9PSBlbmQyXykgewotICAgICAgICBjdXJy
ZW50Ml8gPSBiZWdpbjJfOwotICAgICAgICArK2N1cnJlbnQxXzsKLSAgICAgIH0KLSAgICAgIENv
bXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0gICAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50
ZXJmYWNlPFBhcmFtVHlwZT4qIENsb25lKCkgY29uc3QgewotICAgICAgcmV0dXJuIG5ldyBJdGVy
YXRvcigqdGhpcyk7Ci0gICAgfQotICAgIHZpcnR1YWwgY29uc3QgUGFyYW1UeXBlKiBDdXJyZW50
KCkgY29uc3QgeyByZXR1cm4gY3VycmVudF92YWx1ZV8uZ2V0KCk7IH0KLSAgICB2aXJ0dWFsIGJv
b2wgRXF1YWxzKGNvbnN0IFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiYgb3RoZXIp
IGNvbnN0IHsKLSAgICAgIC8vIEhhdmluZyB0aGUgc2FtZSBiYXNlIGdlbmVyYXRvciBndWFyYW50
ZWVzIHRoYXQgdGhlIG90aGVyCi0gICAgICAvLyBpdGVyYXRvciBpcyBvZiB0aGUgc2FtZSB0eXBl
IGFuZCB3ZSBjYW4gZG93bmNhc3QuCi0gICAgICBHVEVTVF9DSEVDS18oQmFzZUdlbmVyYXRvcigp
ID09IG90aGVyLkJhc2VHZW5lcmF0b3IoKSkKLSAgICAgICAgICA8PCAiVGhlIHByb2dyYW0gYXR0
ZW1wdGVkIHRvIGNvbXBhcmUgaXRlcmF0b3JzICIKLSAgICAgICAgICA8PCAiZnJvbSBkaWZmZXJl
bnQgZ2VuZXJhdG9ycy4iIDw8IHN0ZDo6ZW5kbDsKLSAgICAgIGNvbnN0IEl0ZXJhdG9yKiB0eXBl
ZF9vdGhlciA9Ci0gICAgICAgICAgQ2hlY2tlZERvd25jYXN0VG9BY3R1YWxUeXBlPGNvbnN0IEl0
ZXJhdG9yPigmb3RoZXIpOwotICAgICAgLy8gV2UgbXVzdCByZXBvcnQgaXRlcmF0b3JzIGVxdWFs
IGlmIHRoZXkgYm90aCBwb2ludCBiZXlvbmQgdGhlaXIKLSAgICAgIC8vIHJlc3BlY3RpdmUgcmFu
Z2VzLiBUaGF0IGNhbiBoYXBwZW4gaW4gYSB2YXJpZXR5IG9mIGZhc2hpb25zLAotICAgICAgLy8g
c28gd2UgaGF2ZSB0byBjb25zdWx0IEF0RW5kKCkuCi0gICAgICByZXR1cm4gKEF0RW5kKCkgJiYg
dHlwZWRfb3RoZXItPkF0RW5kKCkpIHx8Ci0gICAgICAgICAoCi0gICAgICAgICAgY3VycmVudDFf
ID09IHR5cGVkX290aGVyLT5jdXJyZW50MV8gJiYKLSAgICAgICAgICBjdXJyZW50Ml8gPT0gdHlw
ZWRfb3RoZXItPmN1cnJlbnQyXyAmJgotICAgICAgICAgIGN1cnJlbnQzXyA9PSB0eXBlZF9vdGhl
ci0+Y3VycmVudDNfKTsKLSAgICB9Ci0KLSAgIHByaXZhdGU6Ci0gICAgSXRlcmF0b3IoY29uc3Qg
SXRlcmF0b3ImIG90aGVyKQotICAgICAgICA6IGJhc2VfKG90aGVyLmJhc2VfKSwKLSAgICAgICAg
YmVnaW4xXyhvdGhlci5iZWdpbjFfKSwKLSAgICAgICAgZW5kMV8ob3RoZXIuZW5kMV8pLAotICAg
ICAgICBjdXJyZW50MV8ob3RoZXIuY3VycmVudDFfKSwKLSAgICAgICAgYmVnaW4yXyhvdGhlci5i
ZWdpbjJfKSwKLSAgICAgICAgZW5kMl8ob3RoZXIuZW5kMl8pLAotICAgICAgICBjdXJyZW50Ml8o
b3RoZXIuY3VycmVudDJfKSwKLSAgICAgICAgYmVnaW4zXyhvdGhlci5iZWdpbjNfKSwKLSAgICAg
ICAgZW5kM18ob3RoZXIuZW5kM18pLAotICAgICAgICBjdXJyZW50M18ob3RoZXIuY3VycmVudDNf
KSB7Ci0gICAgICBDb21wdXRlQ3VycmVudFZhbHVlKCk7Ci0gICAgfQotCi0gICAgdm9pZCBDb21w
dXRlQ3VycmVudFZhbHVlKCkgewotICAgICAgaWYgKCFBdEVuZCgpKQotICAgICAgICBjdXJyZW50
X3ZhbHVlXy5yZXNldChuZXcgUGFyYW1UeXBlKCpjdXJyZW50MV8sICpjdXJyZW50Ml8sICpjdXJy
ZW50M18pKTsKLSAgICB9Ci0gICAgYm9vbCBBdEVuZCgpIGNvbnN0IHsKLSAgICAgIC8vIFdlIG11
c3QgcmVwb3J0IGl0ZXJhdG9yIHBhc3QgdGhlIGVuZCBvZiB0aGUgcmFuZ2Ugd2hlbiBlaXRoZXIg
b2YgdGhlCi0gICAgICAvLyBjb21wb25lbnQgaXRlcmF0b3JzIGhhcyByZWFjaGVkIHRoZSBlbmQg
b2YgaXRzIHJhbmdlLgotICAgICAgcmV0dXJuCi0gICAgICAgICAgY3VycmVudDFfID09IGVuZDFf
IHx8Ci0gICAgICAgICAgY3VycmVudDJfID09IGVuZDJfIHx8Ci0gICAgICAgICAgY3VycmVudDNf
ID09IGVuZDNfOwotICAgIH0KLQotICAgIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVu
dCBpcyB1bnN1cHBvcnRlZC4KLSAgICB2b2lkIG9wZXJhdG9yPShjb25zdCBJdGVyYXRvciYgb3Ro
ZXIpOwotCi0gICAgY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogY29u
c3QgYmFzZV87Ci0gICAgLy8gYmVnaW5baV1fIGFuZCBlbmRbaV1fIGRlZmluZSB0aGUgaS10aCBy
YW5nZSB0aGF0IEl0ZXJhdG9yIHRyYXZlcnNlcy4KLSAgICAvLyBjdXJyZW50W2ldXyBpcyB0aGUg
YWN0dWFsIHRyYXZlcnNpbmcgaXRlcmF0b3IuCi0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5l
cmF0b3I8VDE+OjppdGVyYXRvciBiZWdpbjFfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2Vu
ZXJhdG9yPFQxPjo6aXRlcmF0b3IgZW5kMV87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8
VDE+OjppdGVyYXRvciBjdXJyZW50MV87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0
b3I8VDI+OjppdGVyYXRvciBiZWdpbjJfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJh
dG9yPFQyPjo6aXRlcmF0b3IgZW5kMl87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDI+
OjppdGVyYXRvciBjdXJyZW50Ml87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8
VDM+OjppdGVyYXRvciBiZWdpbjNfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9y
PFQzPjo6aXRlcmF0b3IgZW5kM187Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDM+Ojpp
dGVyYXRvciBjdXJyZW50M187Ci0gICAgbGlua2VkX3B0cjxQYXJhbVR5cGU+IGN1cnJlbnRfdmFs
dWVfOwotICB9OyAgLy8gY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjM6Okl0ZXJhdG9y
Ci0KLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgot
ICB2b2lkIG9wZXJhdG9yPShjb25zdCBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yMyYgb3RoZXIp
OwotCi0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQxPiBnMV87Ci0gIGNvbnN0IFBhcmFtR2VuZXJh
dG9yPFQyPiBnMl87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQzPiBnM187Ci19OyAgLy8gY2xh
c3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjMKLQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEs
IHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQ+Ci1jbGFzcyBDYXJ0ZXNpYW5Q
cm9kdWN0R2VuZXJhdG9yNAotICAgIDogcHVibGljIFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPCA6
OnRlc3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDMsIFQ0PiA+IHsKLSBwdWJsaWM6Ci0gIHR5cGVkZWYg
Ojp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUND4gUGFyYW1UeXBlOwotCi0gIENhcnRlc2lh
blByb2R1Y3RHZW5lcmF0b3I0KGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQxPiYgZzEsCi0gICAgICBj
b25zdCBQYXJhbUdlbmVyYXRvcjxUMj4mIGcyLCBjb25zdCBQYXJhbUdlbmVyYXRvcjxUMz4mIGcz
LAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDQ+JiBnNCkKLSAgICAgIDogZzFfKGcxKSwg
ZzJfKGcyKSwgZzNfKGczKSwgZzRfKGc0KSB7fQotICB2aXJ0dWFsIH5DYXJ0ZXNpYW5Qcm9kdWN0
R2VuZXJhdG9yNCgpIHt9Ci0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFt
VHlwZT4qIEJlZ2luKCkgY29uc3QgewotICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhpcywgZzFf
LCBnMV8uYmVnaW4oKSwgZzJfLCBnMl8uYmVnaW4oKSwgZzNfLAotICAgICAgICBnM18uYmVnaW4o
KSwgZzRfLCBnNF8uYmVnaW4oKSk7Ci0gIH0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJm
YWNlPFBhcmFtVHlwZT4qIEVuZCgpIGNvbnN0IHsKLSAgICByZXR1cm4gbmV3IEl0ZXJhdG9yKHRo
aXMsIGcxXywgZzFfLmVuZCgpLCBnMl8sIGcyXy5lbmQoKSwgZzNfLCBnM18uZW5kKCksCi0gICAg
ICAgIGc0XywgZzRfLmVuZCgpKTsKLSAgfQotCi0gcHJpdmF0ZToKLSAgY2xhc3MgSXRlcmF0b3Ig
OiBwdWJsaWMgUGFyYW1JdGVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+IHsKLSAgIHB1YmxpYzoK
LSAgICBJdGVyYXRvcihjb25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+KiBi
YXNlLAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDE+JiBnMSwKLSAgICAgIGNvbnN0IHR5
cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQxPjo6aXRlcmF0b3ImIGN1cnJlbnQxLAotICAgICAgY29u
c3QgUGFyYW1HZW5lcmF0b3I8VDI+JiBnMiwKLSAgICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2Vu
ZXJhdG9yPFQyPjo6aXRlcmF0b3ImIGN1cnJlbnQyLAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0
b3I8VDM+JiBnMywKLSAgICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQzPjo6aXRl
cmF0b3ImIGN1cnJlbnQzLAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDQ+JiBnNCwKLSAg
ICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ0Pjo6aXRlcmF0b3ImIGN1cnJlbnQ0
KQotICAgICAgICA6IGJhc2VfKGJhc2UpLAotICAgICAgICAgIGJlZ2luMV8oZzEuYmVnaW4oKSks
IGVuZDFfKGcxLmVuZCgpKSwgY3VycmVudDFfKGN1cnJlbnQxKSwKLSAgICAgICAgICBiZWdpbjJf
KGcyLmJlZ2luKCkpLCBlbmQyXyhnMi5lbmQoKSksIGN1cnJlbnQyXyhjdXJyZW50MiksCi0gICAg
ICAgICAgYmVnaW4zXyhnMy5iZWdpbigpKSwgZW5kM18oZzMuZW5kKCkpLCBjdXJyZW50M18oY3Vy
cmVudDMpLAotICAgICAgICAgIGJlZ2luNF8oZzQuYmVnaW4oKSksIGVuZDRfKGc0LmVuZCgpKSwg
Y3VycmVudDRfKGN1cnJlbnQ0KSAgICB7Ci0gICAgICBDb21wdXRlQ3VycmVudFZhbHVlKCk7Ci0g
ICAgfQotICAgIHZpcnR1YWwgfkl0ZXJhdG9yKCkge30KLQotICAgIHZpcnR1YWwgY29uc3QgUGFy
YW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogQmFzZUdlbmVyYXRvcigpIGNvbnN0IHsK
LSAgICAgIHJldHVybiBiYXNlXzsKLSAgICB9Ci0gICAgLy8gQWR2YW5jZSBzaG91bGQgbm90IGJl
IGNhbGxlZCBvbiBiZXlvbmQtb2YtcmFuZ2UgaXRlcmF0b3JzCi0gICAgLy8gc28gbm8gY29tcG9u
ZW50IGl0ZXJhdG9ycyBtdXN0IGJlIGJleW9uZCBlbmQgb2YgcmFuZ2UsIGVpdGhlci4KLSAgICB2
aXJ0dWFsIHZvaWQgQWR2YW5jZSgpIHsKLSAgICAgIGFzc2VydCghQXRFbmQoKSk7Ci0gICAgICAr
K2N1cnJlbnQ0XzsKLSAgICAgIGlmIChjdXJyZW50NF8gPT0gZW5kNF8pIHsKLSAgICAgICAgY3Vy
cmVudDRfID0gYmVnaW40XzsKLSAgICAgICAgKytjdXJyZW50M187Ci0gICAgICB9Ci0gICAgICBp
ZiAoY3VycmVudDNfID09IGVuZDNfKSB7Ci0gICAgICAgIGN1cnJlbnQzXyA9IGJlZ2luM187Ci0g
ICAgICAgICsrY3VycmVudDJfOwotICAgICAgfQotICAgICAgaWYgKGN1cnJlbnQyXyA9PSBlbmQy
XykgewotICAgICAgICBjdXJyZW50Ml8gPSBiZWdpbjJfOwotICAgICAgICArK2N1cnJlbnQxXzsK
LSAgICAgIH0KLSAgICAgIENvbXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0gICAgdmlydHVh
bCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIENsb25lKCkgY29uc3QgewotICAg
ICAgcmV0dXJuIG5ldyBJdGVyYXRvcigqdGhpcyk7Ci0gICAgfQotICAgIHZpcnR1YWwgY29uc3Qg
UGFyYW1UeXBlKiBDdXJyZW50KCkgY29uc3QgeyByZXR1cm4gY3VycmVudF92YWx1ZV8uZ2V0KCk7
IH0KLSAgICB2aXJ0dWFsIGJvb2wgRXF1YWxzKGNvbnN0IFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8
UGFyYW1UeXBlPiYgb3RoZXIpIGNvbnN0IHsKLSAgICAgIC8vIEhhdmluZyB0aGUgc2FtZSBiYXNl
IGdlbmVyYXRvciBndWFyYW50ZWVzIHRoYXQgdGhlIG90aGVyCi0gICAgICAvLyBpdGVyYXRvciBp
cyBvZiB0aGUgc2FtZSB0eXBlIGFuZCB3ZSBjYW4gZG93bmNhc3QuCi0gICAgICBHVEVTVF9DSEVD
S18oQmFzZUdlbmVyYXRvcigpID09IG90aGVyLkJhc2VHZW5lcmF0b3IoKSkKLSAgICAgICAgICA8
PCAiVGhlIHByb2dyYW0gYXR0ZW1wdGVkIHRvIGNvbXBhcmUgaXRlcmF0b3JzICIKLSAgICAgICAg
ICA8PCAiZnJvbSBkaWZmZXJlbnQgZ2VuZXJhdG9ycy4iIDw8IHN0ZDo6ZW5kbDsKLSAgICAgIGNv
bnN0IEl0ZXJhdG9yKiB0eXBlZF9vdGhlciA9Ci0gICAgICAgICAgQ2hlY2tlZERvd25jYXN0VG9B
Y3R1YWxUeXBlPGNvbnN0IEl0ZXJhdG9yPigmb3RoZXIpOwotICAgICAgLy8gV2UgbXVzdCByZXBv
cnQgaXRlcmF0b3JzIGVxdWFsIGlmIHRoZXkgYm90aCBwb2ludCBiZXlvbmQgdGhlaXIKLSAgICAg
IC8vIHJlc3BlY3RpdmUgcmFuZ2VzLiBUaGF0IGNhbiBoYXBwZW4gaW4gYSB2YXJpZXR5IG9mIGZh
c2hpb25zLAotICAgICAgLy8gc28gd2UgaGF2ZSB0byBjb25zdWx0IEF0RW5kKCkuCi0gICAgICBy
ZXR1cm4gKEF0RW5kKCkgJiYgdHlwZWRfb3RoZXItPkF0RW5kKCkpIHx8Ci0gICAgICAgICAoCi0g
ICAgICAgICAgY3VycmVudDFfID09IHR5cGVkX290aGVyLT5jdXJyZW50MV8gJiYKLSAgICAgICAg
ICBjdXJyZW50Ml8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQyXyAmJgotICAgICAgICAgIGN1cnJl
bnQzXyA9PSB0eXBlZF9vdGhlci0+Y3VycmVudDNfICYmCi0gICAgICAgICAgY3VycmVudDRfID09
IHR5cGVkX290aGVyLT5jdXJyZW50NF8pOwotICAgIH0KLQotICAgcHJpdmF0ZToKLSAgICBJdGVy
YXRvcihjb25zdCBJdGVyYXRvciYgb3RoZXIpCi0gICAgICAgIDogYmFzZV8ob3RoZXIuYmFzZV8p
LAotICAgICAgICBiZWdpbjFfKG90aGVyLmJlZ2luMV8pLAotICAgICAgICBlbmQxXyhvdGhlci5l
bmQxXyksCi0gICAgICAgIGN1cnJlbnQxXyhvdGhlci5jdXJyZW50MV8pLAotICAgICAgICBiZWdp
bjJfKG90aGVyLmJlZ2luMl8pLAotICAgICAgICBlbmQyXyhvdGhlci5lbmQyXyksCi0gICAgICAg
IGN1cnJlbnQyXyhvdGhlci5jdXJyZW50Ml8pLAotICAgICAgICBiZWdpbjNfKG90aGVyLmJlZ2lu
M18pLAotICAgICAgICBlbmQzXyhvdGhlci5lbmQzXyksCi0gICAgICAgIGN1cnJlbnQzXyhvdGhl
ci5jdXJyZW50M18pLAotICAgICAgICBiZWdpbjRfKG90aGVyLmJlZ2luNF8pLAotICAgICAgICBl
bmQ0XyhvdGhlci5lbmQ0XyksCi0gICAgICAgIGN1cnJlbnQ0XyhvdGhlci5jdXJyZW50NF8pIHsK
LSAgICAgIENvbXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0KLSAgICB2b2lkIENvbXB1dGVD
dXJyZW50VmFsdWUoKSB7Ci0gICAgICBpZiAoIUF0RW5kKCkpCi0gICAgICAgIGN1cnJlbnRfdmFs
dWVfLnJlc2V0KG5ldyBQYXJhbVR5cGUoKmN1cnJlbnQxXywgKmN1cnJlbnQyXywgKmN1cnJlbnQz
XywKLSAgICAgICAgICAgICpjdXJyZW50NF8pKTsKLSAgICB9Ci0gICAgYm9vbCBBdEVuZCgpIGNv
bnN0IHsKLSAgICAgIC8vIFdlIG11c3QgcmVwb3J0IGl0ZXJhdG9yIHBhc3QgdGhlIGVuZCBvZiB0
aGUgcmFuZ2Ugd2hlbiBlaXRoZXIgb2YgdGhlCi0gICAgICAvLyBjb21wb25lbnQgaXRlcmF0b3Jz
IGhhcyByZWFjaGVkIHRoZSBlbmQgb2YgaXRzIHJhbmdlLgotICAgICAgcmV0dXJuCi0gICAgICAg
ICAgY3VycmVudDFfID09IGVuZDFfIHx8Ci0gICAgICAgICAgY3VycmVudDJfID09IGVuZDJfIHx8
Ci0gICAgICAgICAgY3VycmVudDNfID09IGVuZDNfIHx8Ci0gICAgICAgICAgY3VycmVudDRfID09
IGVuZDRfOwotICAgIH0KLQotICAgIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBp
cyB1bnN1cHBvcnRlZC4KLSAgICB2b2lkIG9wZXJhdG9yPShjb25zdCBJdGVyYXRvciYgb3RoZXIp
OwotCi0gICAgY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogY29uc3Qg
YmFzZV87Ci0gICAgLy8gYmVnaW5baV1fIGFuZCBlbmRbaV1fIGRlZmluZSB0aGUgaS10aCByYW5n
ZSB0aGF0IEl0ZXJhdG9yIHRyYXZlcnNlcy4KLSAgICAvLyBjdXJyZW50W2ldXyBpcyB0aGUgYWN0
dWFsIHRyYXZlcnNpbmcgaXRlcmF0b3IuCi0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0
b3I8VDE+OjppdGVyYXRvciBiZWdpbjFfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJh
dG9yPFQxPjo6aXRlcmF0b3IgZW5kMV87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDE+
OjppdGVyYXRvciBjdXJyZW50MV87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8
VDI+OjppdGVyYXRvciBiZWdpbjJfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9y
PFQyPjo6aXRlcmF0b3IgZW5kMl87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDI+Ojpp
dGVyYXRvciBjdXJyZW50Ml87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDM+
OjppdGVyYXRvciBiZWdpbjNfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQz
Pjo6aXRlcmF0b3IgZW5kM187Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDM+OjppdGVy
YXRvciBjdXJyZW50M187Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDQ+Ojpp
dGVyYXRvciBiZWdpbjRfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ0Pjo6
aXRlcmF0b3IgZW5kNF87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDQ+OjppdGVyYXRv
ciBjdXJyZW50NF87Ci0gICAgbGlua2VkX3B0cjxQYXJhbVR5cGU+IGN1cnJlbnRfdmFsdWVfOwot
ICB9OyAgLy8gY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjQ6Okl0ZXJhdG9yCi0KLSAg
Ly8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lk
IG9wZXJhdG9yPShjb25zdCBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNCYgb3RoZXIpOwotCi0g
IGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQxPiBnMV87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQy
PiBnMl87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQzPiBnM187Ci0gIGNvbnN0IFBhcmFtR2Vu
ZXJhdG9yPFQ0PiBnNF87Ci19OyAgLy8gY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjQK
LQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlw
ZW5hbWUgVDQsIHR5cGVuYW1lIFQ1PgotY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjUK
LSAgICA6IHB1YmxpYyBQYXJhbUdlbmVyYXRvckludGVyZmFjZTwgOjp0ZXN0aW5nOjp0dXBsZTxU
MSwgVDIsIFQzLCBUNCwgVDU+ID4gewotIHB1YmxpYzoKLSAgdHlwZWRlZiA6OnRlc3Rpbmc6OnR1
cGxlPFQxLCBUMiwgVDMsIFQ0LCBUNT4gUGFyYW1UeXBlOwotCi0gIENhcnRlc2lhblByb2R1Y3RH
ZW5lcmF0b3I1KGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQxPiYgZzEsCi0gICAgICBjb25zdCBQYXJh
bUdlbmVyYXRvcjxUMj4mIGcyLCBjb25zdCBQYXJhbUdlbmVyYXRvcjxUMz4mIGczLAotICAgICAg
Y29uc3QgUGFyYW1HZW5lcmF0b3I8VDQ+JiBnNCwgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDU+JiBn
NSkKLSAgICAgIDogZzFfKGcxKSwgZzJfKGcyKSwgZzNfKGczKSwgZzRfKGc0KSwgZzVfKGc1KSB7
fQotICB2aXJ0dWFsIH5DYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNSgpIHt9Ci0KLSAgdmlydHVh
bCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIEJlZ2luKCkgY29uc3QgewotICAg
IHJldHVybiBuZXcgSXRlcmF0b3IodGhpcywgZzFfLCBnMV8uYmVnaW4oKSwgZzJfLCBnMl8uYmVn
aW4oKSwgZzNfLAotICAgICAgICBnM18uYmVnaW4oKSwgZzRfLCBnNF8uYmVnaW4oKSwgZzVfLCBn
NV8uYmVnaW4oKSk7Ci0gIH0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFt
VHlwZT4qIEVuZCgpIGNvbnN0IHsKLSAgICByZXR1cm4gbmV3IEl0ZXJhdG9yKHRoaXMsIGcxXywg
ZzFfLmVuZCgpLCBnMl8sIGcyXy5lbmQoKSwgZzNfLCBnM18uZW5kKCksCi0gICAgICAgIGc0Xywg
ZzRfLmVuZCgpLCBnNV8sIGc1Xy5lbmQoKSk7Ci0gIH0KLQotIHByaXZhdGU6Ci0gIGNsYXNzIEl0
ZXJhdG9yIDogcHVibGljIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiB7Ci0gICBw
dWJsaWM6Ci0gICAgSXRlcmF0b3IoY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1U
eXBlPiogYmFzZSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQxPiYgZzEsCi0gICAgICBj
b25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMT46Oml0ZXJhdG9yJiBjdXJyZW50MSwKLSAg
ICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQyPiYgZzIsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQ
YXJhbUdlbmVyYXRvcjxUMj46Oml0ZXJhdG9yJiBjdXJyZW50MiwKLSAgICAgIGNvbnN0IFBhcmFt
R2VuZXJhdG9yPFQzPiYgZzMsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxU
Mz46Oml0ZXJhdG9yJiBjdXJyZW50MywKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ0PiYg
ZzQsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUND46Oml0ZXJhdG9yJiBj
dXJyZW50NCwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ1PiYgZzUsCi0gICAgICBjb25z
dCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNT46Oml0ZXJhdG9yJiBjdXJyZW50NSkKLSAgICAg
ICAgOiBiYXNlXyhiYXNlKSwKLSAgICAgICAgICBiZWdpbjFfKGcxLmJlZ2luKCkpLCBlbmQxXyhn
MS5lbmQoKSksIGN1cnJlbnQxXyhjdXJyZW50MSksCi0gICAgICAgICAgYmVnaW4yXyhnMi5iZWdp
bigpKSwgZW5kMl8oZzIuZW5kKCkpLCBjdXJyZW50Ml8oY3VycmVudDIpLAotICAgICAgICAgIGJl
Z2luM18oZzMuYmVnaW4oKSksIGVuZDNfKGczLmVuZCgpKSwgY3VycmVudDNfKGN1cnJlbnQzKSwK
LSAgICAgICAgICBiZWdpbjRfKGc0LmJlZ2luKCkpLCBlbmQ0XyhnNC5lbmQoKSksIGN1cnJlbnQ0
XyhjdXJyZW50NCksCi0gICAgICAgICAgYmVnaW41XyhnNS5iZWdpbigpKSwgZW5kNV8oZzUuZW5k
KCkpLCBjdXJyZW50NV8oY3VycmVudDUpICAgIHsKLSAgICAgIENvbXB1dGVDdXJyZW50VmFsdWUo
KTsKLSAgICB9Ci0gICAgdmlydHVhbCB+SXRlcmF0b3IoKSB7fQotCi0gICAgdmlydHVhbCBjb25z
dCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+KiBCYXNlR2VuZXJhdG9yKCkgY29u
c3QgewotICAgICAgcmV0dXJuIGJhc2VfOwotICAgIH0KLSAgICAvLyBBZHZhbmNlIHNob3VsZCBu
b3QgYmUgY2FsbGVkIG9uIGJleW9uZC1vZi1yYW5nZSBpdGVyYXRvcnMKLSAgICAvLyBzbyBubyBj
b21wb25lbnQgaXRlcmF0b3JzIG11c3QgYmUgYmV5b25kIGVuZCBvZiByYW5nZSwgZWl0aGVyLgot
ICAgIHZpcnR1YWwgdm9pZCBBZHZhbmNlKCkgewotICAgICAgYXNzZXJ0KCFBdEVuZCgpKTsKLSAg
ICAgICsrY3VycmVudDVfOwotICAgICAgaWYgKGN1cnJlbnQ1XyA9PSBlbmQ1XykgewotICAgICAg
ICBjdXJyZW50NV8gPSBiZWdpbjVfOwotICAgICAgICArK2N1cnJlbnQ0XzsKLSAgICAgIH0KLSAg
ICAgIGlmIChjdXJyZW50NF8gPT0gZW5kNF8pIHsKLSAgICAgICAgY3VycmVudDRfID0gYmVnaW40
XzsKLSAgICAgICAgKytjdXJyZW50M187Ci0gICAgICB9Ci0gICAgICBpZiAoY3VycmVudDNfID09
IGVuZDNfKSB7Ci0gICAgICAgIGN1cnJlbnQzXyA9IGJlZ2luM187Ci0gICAgICAgICsrY3VycmVu
dDJfOwotICAgICAgfQotICAgICAgaWYgKGN1cnJlbnQyXyA9PSBlbmQyXykgewotICAgICAgICBj
dXJyZW50Ml8gPSBiZWdpbjJfOwotICAgICAgICArK2N1cnJlbnQxXzsKLSAgICAgIH0KLSAgICAg
IENvbXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0gICAgdmlydHVhbCBQYXJhbUl0ZXJhdG9y
SW50ZXJmYWNlPFBhcmFtVHlwZT4qIENsb25lKCkgY29uc3QgewotICAgICAgcmV0dXJuIG5ldyBJ
dGVyYXRvcigqdGhpcyk7Ci0gICAgfQotICAgIHZpcnR1YWwgY29uc3QgUGFyYW1UeXBlKiBDdXJy
ZW50KCkgY29uc3QgeyByZXR1cm4gY3VycmVudF92YWx1ZV8uZ2V0KCk7IH0KLSAgICB2aXJ0dWFs
IGJvb2wgRXF1YWxzKGNvbnN0IFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiYgb3Ro
ZXIpIGNvbnN0IHsKLSAgICAgIC8vIEhhdmluZyB0aGUgc2FtZSBiYXNlIGdlbmVyYXRvciBndWFy
YW50ZWVzIHRoYXQgdGhlIG90aGVyCi0gICAgICAvLyBpdGVyYXRvciBpcyBvZiB0aGUgc2FtZSB0
eXBlIGFuZCB3ZSBjYW4gZG93bmNhc3QuCi0gICAgICBHVEVTVF9DSEVDS18oQmFzZUdlbmVyYXRv
cigpID09IG90aGVyLkJhc2VHZW5lcmF0b3IoKSkKLSAgICAgICAgICA8PCAiVGhlIHByb2dyYW0g
YXR0ZW1wdGVkIHRvIGNvbXBhcmUgaXRlcmF0b3JzICIKLSAgICAgICAgICA8PCAiZnJvbSBkaWZm
ZXJlbnQgZ2VuZXJhdG9ycy4iIDw8IHN0ZDo6ZW5kbDsKLSAgICAgIGNvbnN0IEl0ZXJhdG9yKiB0
eXBlZF9vdGhlciA9Ci0gICAgICAgICAgQ2hlY2tlZERvd25jYXN0VG9BY3R1YWxUeXBlPGNvbnN0
IEl0ZXJhdG9yPigmb3RoZXIpOwotICAgICAgLy8gV2UgbXVzdCByZXBvcnQgaXRlcmF0b3JzIGVx
dWFsIGlmIHRoZXkgYm90aCBwb2ludCBiZXlvbmQgdGhlaXIKLSAgICAgIC8vIHJlc3BlY3RpdmUg
cmFuZ2VzLiBUaGF0IGNhbiBoYXBwZW4gaW4gYSB2YXJpZXR5IG9mIGZhc2hpb25zLAotICAgICAg
Ly8gc28gd2UgaGF2ZSB0byBjb25zdWx0IEF0RW5kKCkuCi0gICAgICByZXR1cm4gKEF0RW5kKCkg
JiYgdHlwZWRfb3RoZXItPkF0RW5kKCkpIHx8Ci0gICAgICAgICAoCi0gICAgICAgICAgY3VycmVu
dDFfID09IHR5cGVkX290aGVyLT5jdXJyZW50MV8gJiYKLSAgICAgICAgICBjdXJyZW50Ml8gPT0g
dHlwZWRfb3RoZXItPmN1cnJlbnQyXyAmJgotICAgICAgICAgIGN1cnJlbnQzXyA9PSB0eXBlZF9v
dGhlci0+Y3VycmVudDNfICYmCi0gICAgICAgICAgY3VycmVudDRfID09IHR5cGVkX290aGVyLT5j
dXJyZW50NF8gJiYKLSAgICAgICAgICBjdXJyZW50NV8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQ1
Xyk7Ci0gICAgfQotCi0gICBwcml2YXRlOgotICAgIEl0ZXJhdG9yKGNvbnN0IEl0ZXJhdG9yJiBv
dGhlcikKLSAgICAgICAgOiBiYXNlXyhvdGhlci5iYXNlXyksCi0gICAgICAgIGJlZ2luMV8ob3Ro
ZXIuYmVnaW4xXyksCi0gICAgICAgIGVuZDFfKG90aGVyLmVuZDFfKSwKLSAgICAgICAgY3VycmVu
dDFfKG90aGVyLmN1cnJlbnQxXyksCi0gICAgICAgIGJlZ2luMl8ob3RoZXIuYmVnaW4yXyksCi0g
ICAgICAgIGVuZDJfKG90aGVyLmVuZDJfKSwKLSAgICAgICAgY3VycmVudDJfKG90aGVyLmN1cnJl
bnQyXyksCi0gICAgICAgIGJlZ2luM18ob3RoZXIuYmVnaW4zXyksCi0gICAgICAgIGVuZDNfKG90
aGVyLmVuZDNfKSwKLSAgICAgICAgY3VycmVudDNfKG90aGVyLmN1cnJlbnQzXyksCi0gICAgICAg
IGJlZ2luNF8ob3RoZXIuYmVnaW40XyksCi0gICAgICAgIGVuZDRfKG90aGVyLmVuZDRfKSwKLSAg
ICAgICAgY3VycmVudDRfKG90aGVyLmN1cnJlbnQ0XyksCi0gICAgICAgIGJlZ2luNV8ob3RoZXIu
YmVnaW41XyksCi0gICAgICAgIGVuZDVfKG90aGVyLmVuZDVfKSwKLSAgICAgICAgY3VycmVudDVf
KG90aGVyLmN1cnJlbnQ1XykgewotICAgICAgQ29tcHV0ZUN1cnJlbnRWYWx1ZSgpOwotICAgIH0K
LQotICAgIHZvaWQgQ29tcHV0ZUN1cnJlbnRWYWx1ZSgpIHsKLSAgICAgIGlmICghQXRFbmQoKSkK
LSAgICAgICAgY3VycmVudF92YWx1ZV8ucmVzZXQobmV3IFBhcmFtVHlwZSgqY3VycmVudDFfLCAq
Y3VycmVudDJfLCAqY3VycmVudDNfLAotICAgICAgICAgICAgKmN1cnJlbnQ0XywgKmN1cnJlbnQ1
XykpOwotICAgIH0KLSAgICBib29sIEF0RW5kKCkgY29uc3QgewotICAgICAgLy8gV2UgbXVzdCBy
ZXBvcnQgaXRlcmF0b3IgcGFzdCB0aGUgZW5kIG9mIHRoZSByYW5nZSB3aGVuIGVpdGhlciBvZiB0
aGUKLSAgICAgIC8vIGNvbXBvbmVudCBpdGVyYXRvcnMgaGFzIHJlYWNoZWQgdGhlIGVuZCBvZiBp
dHMgcmFuZ2UuCi0gICAgICByZXR1cm4KLSAgICAgICAgICBjdXJyZW50MV8gPT0gZW5kMV8gfHwK
LSAgICAgICAgICBjdXJyZW50Ml8gPT0gZW5kMl8gfHwKLSAgICAgICAgICBjdXJyZW50M18gPT0g
ZW5kM18gfHwKLSAgICAgICAgICBjdXJyZW50NF8gPT0gZW5kNF8gfHwKLSAgICAgICAgICBjdXJy
ZW50NV8gPT0gZW5kNV87Ci0gICAgfQotCi0gICAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3Np
Z25tZW50IGlzIHVuc3VwcG9ydGVkLgotICAgIHZvaWQgb3BlcmF0b3I9KGNvbnN0IEl0ZXJhdG9y
JiBvdGhlcik7Ci0KLSAgICBjb25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+
KiBjb25zdCBiYXNlXzsKLSAgICAvLyBiZWdpbltpXV8gYW5kIGVuZFtpXV8gZGVmaW5lIHRoZSBp
LXRoIHJhbmdlIHRoYXQgSXRlcmF0b3IgdHJhdmVyc2VzLgotICAgIC8vIGN1cnJlbnRbaV1fIGlz
IHRoZSBhY3R1YWwgdHJhdmVyc2luZyBpdGVyYXRvci4KLSAgICBjb25zdCB0eXBlbmFtZSBQYXJh
bUdlbmVyYXRvcjxUMT46Oml0ZXJhdG9yIGJlZ2luMV87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFy
YW1HZW5lcmF0b3I8VDE+OjppdGVyYXRvciBlbmQxXzsKLSAgICB0eXBlbmFtZSBQYXJhbUdlbmVy
YXRvcjxUMT46Oml0ZXJhdG9yIGN1cnJlbnQxXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdl
bmVyYXRvcjxUMj46Oml0ZXJhdG9yIGJlZ2luMl87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1H
ZW5lcmF0b3I8VDI+OjppdGVyYXRvciBlbmQyXzsKLSAgICB0eXBlbmFtZSBQYXJhbUdlbmVyYXRv
cjxUMj46Oml0ZXJhdG9yIGN1cnJlbnQyXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVy
YXRvcjxUMz46Oml0ZXJhdG9yIGJlZ2luM187Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5l
cmF0b3I8VDM+OjppdGVyYXRvciBlbmQzXzsKLSAgICB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxU
Mz46Oml0ZXJhdG9yIGN1cnJlbnQzXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRv
cjxUND46Oml0ZXJhdG9yIGJlZ2luNF87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0
b3I8VDQ+OjppdGVyYXRvciBlbmQ0XzsKLSAgICB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUND46
Oml0ZXJhdG9yIGN1cnJlbnQ0XzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxU
NT46Oml0ZXJhdG9yIGJlZ2luNV87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8
VDU+OjppdGVyYXRvciBlbmQ1XzsKLSAgICB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNT46Oml0
ZXJhdG9yIGN1cnJlbnQ1XzsKLSAgICBsaW5rZWRfcHRyPFBhcmFtVHlwZT4gY3VycmVudF92YWx1
ZV87Ci0gIH07ICAvLyBjbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNTo6SXRlcmF0b3IK
LQotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0g
IHZvaWQgb3BlcmF0b3I9KGNvbnN0IENhcnRlc2lhblByb2R1Y3RHZW5lcmF0b3I1JiBvdGhlcik7
Ci0KLSAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDE+IGcxXzsKLSAgY29uc3QgUGFyYW1HZW5lcmF0
b3I8VDI+IGcyXzsKLSAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDM+IGczXzsKLSAgY29uc3QgUGFy
YW1HZW5lcmF0b3I8VDQ+IGc0XzsKLSAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDU+IGc1XzsKLX07
ICAvLyBjbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNQotCi0KLXRlbXBsYXRlIDx0eXBl
bmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUg
VDUsCi0gICAgdHlwZW5hbWUgVDY+Ci1jbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNgot
ICAgIDogcHVibGljIFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPCA6OnRlc3Rpbmc6OnR1cGxlPFQx
LCBUMiwgVDMsIFQ0LCBUNSwKLSAgICAgICAgVDY+ID4gewotIHB1YmxpYzoKLSAgdHlwZWRlZiA6
OnRlc3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDY+IFBhcmFtVHlwZTsKLQotICBD
YXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNihjb25zdCBQYXJhbUdlbmVyYXRvcjxUMT4mIGcxLAot
ICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDI+JiBnMiwgY29uc3QgUGFyYW1HZW5lcmF0b3I8
VDM+JiBnMywKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ0PiYgZzQsIGNvbnN0IFBhcmFt
R2VuZXJhdG9yPFQ1PiYgZzUsCi0gICAgICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUNj4mIGc2KQot
ICAgICAgOiBnMV8oZzEpLCBnMl8oZzIpLCBnM18oZzMpLCBnNF8oZzQpLCBnNV8oZzUpLCBnNl8o
ZzYpIHt9Ci0gIHZpcnR1YWwgfkNhcnRlc2lhblByb2R1Y3RHZW5lcmF0b3I2KCkge30KLQotICB2
aXJ0dWFsIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogQmVnaW4oKSBjb25zdCB7
Ci0gICAgcmV0dXJuIG5ldyBJdGVyYXRvcih0aGlzLCBnMV8sIGcxXy5iZWdpbigpLCBnMl8sIGcy
Xy5iZWdpbigpLCBnM18sCi0gICAgICAgIGczXy5iZWdpbigpLCBnNF8sIGc0Xy5iZWdpbigpLCBn
NV8sIGc1Xy5iZWdpbigpLCBnNl8sIGc2Xy5iZWdpbigpKTsKLSAgfQotICB2aXJ0dWFsIFBhcmFt
SXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogRW5kKCkgY29uc3QgewotICAgIHJldHVybiBu
ZXcgSXRlcmF0b3IodGhpcywgZzFfLCBnMV8uZW5kKCksIGcyXywgZzJfLmVuZCgpLCBnM18sIGcz
Xy5lbmQoKSwKLSAgICAgICAgZzRfLCBnNF8uZW5kKCksIGc1XywgZzVfLmVuZCgpLCBnNl8sIGc2
Xy5lbmQoKSk7Ci0gIH0KLQotIHByaXZhdGU6Ci0gIGNsYXNzIEl0ZXJhdG9yIDogcHVibGljIFBh
cmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiB7Ci0gICBwdWJsaWM6Ci0gICAgSXRlcmF0
b3IoY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogYmFzZSwKLSAgICAg
IGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQxPiYgZzEsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJh
bUdlbmVyYXRvcjxUMT46Oml0ZXJhdG9yJiBjdXJyZW50MSwKLSAgICAgIGNvbnN0IFBhcmFtR2Vu
ZXJhdG9yPFQyPiYgZzIsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMj46
Oml0ZXJhdG9yJiBjdXJyZW50MiwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQzPiYgZzMs
Ci0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMz46Oml0ZXJhdG9yJiBjdXJy
ZW50MywKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ0PiYgZzQsCi0gICAgICBjb25zdCB0
eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUND46Oml0ZXJhdG9yJiBjdXJyZW50NCwKLSAgICAgIGNv
bnN0IFBhcmFtR2VuZXJhdG9yPFQ1PiYgZzUsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdl
bmVyYXRvcjxUNT46Oml0ZXJhdG9yJiBjdXJyZW50NSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJh
dG9yPFQ2PiYgZzYsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNj46Oml0
ZXJhdG9yJiBjdXJyZW50NikKLSAgICAgICAgOiBiYXNlXyhiYXNlKSwKLSAgICAgICAgICBiZWdp
bjFfKGcxLmJlZ2luKCkpLCBlbmQxXyhnMS5lbmQoKSksIGN1cnJlbnQxXyhjdXJyZW50MSksCi0g
ICAgICAgICAgYmVnaW4yXyhnMi5iZWdpbigpKSwgZW5kMl8oZzIuZW5kKCkpLCBjdXJyZW50Ml8o
Y3VycmVudDIpLAotICAgICAgICAgIGJlZ2luM18oZzMuYmVnaW4oKSksIGVuZDNfKGczLmVuZCgp
KSwgY3VycmVudDNfKGN1cnJlbnQzKSwKLSAgICAgICAgICBiZWdpbjRfKGc0LmJlZ2luKCkpLCBl
bmQ0XyhnNC5lbmQoKSksIGN1cnJlbnQ0XyhjdXJyZW50NCksCi0gICAgICAgICAgYmVnaW41Xyhn
NS5iZWdpbigpKSwgZW5kNV8oZzUuZW5kKCkpLCBjdXJyZW50NV8oY3VycmVudDUpLAotICAgICAg
ICAgIGJlZ2luNl8oZzYuYmVnaW4oKSksIGVuZDZfKGc2LmVuZCgpKSwgY3VycmVudDZfKGN1cnJl
bnQ2KSAgICB7Ci0gICAgICBDb21wdXRlQ3VycmVudFZhbHVlKCk7Ci0gICAgfQotICAgIHZpcnR1
YWwgfkl0ZXJhdG9yKCkge30KLQotICAgIHZpcnR1YWwgY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRl
cmZhY2U8UGFyYW1UeXBlPiogQmFzZUdlbmVyYXRvcigpIGNvbnN0IHsKLSAgICAgIHJldHVybiBi
YXNlXzsKLSAgICB9Ci0gICAgLy8gQWR2YW5jZSBzaG91bGQgbm90IGJlIGNhbGxlZCBvbiBiZXlv
bmQtb2YtcmFuZ2UgaXRlcmF0b3JzCi0gICAgLy8gc28gbm8gY29tcG9uZW50IGl0ZXJhdG9ycyBt
dXN0IGJlIGJleW9uZCBlbmQgb2YgcmFuZ2UsIGVpdGhlci4KLSAgICB2aXJ0dWFsIHZvaWQgQWR2
YW5jZSgpIHsKLSAgICAgIGFzc2VydCghQXRFbmQoKSk7Ci0gICAgICArK2N1cnJlbnQ2XzsKLSAg
ICAgIGlmIChjdXJyZW50Nl8gPT0gZW5kNl8pIHsKLSAgICAgICAgY3VycmVudDZfID0gYmVnaW42
XzsKLSAgICAgICAgKytjdXJyZW50NV87Ci0gICAgICB9Ci0gICAgICBpZiAoY3VycmVudDVfID09
IGVuZDVfKSB7Ci0gICAgICAgIGN1cnJlbnQ1XyA9IGJlZ2luNV87Ci0gICAgICAgICsrY3VycmVu
dDRfOwotICAgICAgfQotICAgICAgaWYgKGN1cnJlbnQ0XyA9PSBlbmQ0XykgewotICAgICAgICBj
dXJyZW50NF8gPSBiZWdpbjRfOwotICAgICAgICArK2N1cnJlbnQzXzsKLSAgICAgIH0KLSAgICAg
IGlmIChjdXJyZW50M18gPT0gZW5kM18pIHsKLSAgICAgICAgY3VycmVudDNfID0gYmVnaW4zXzsK
LSAgICAgICAgKytjdXJyZW50Ml87Ci0gICAgICB9Ci0gICAgICBpZiAoY3VycmVudDJfID09IGVu
ZDJfKSB7Ci0gICAgICAgIGN1cnJlbnQyXyA9IGJlZ2luMl87Ci0gICAgICAgICsrY3VycmVudDFf
OwotICAgICAgfQotICAgICAgQ29tcHV0ZUN1cnJlbnRWYWx1ZSgpOwotICAgIH0KLSAgICB2aXJ0
dWFsIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogQ2xvbmUoKSBjb25zdCB7Ci0g
ICAgICByZXR1cm4gbmV3IEl0ZXJhdG9yKCp0aGlzKTsKLSAgICB9Ci0gICAgdmlydHVhbCBjb25z
dCBQYXJhbVR5cGUqIEN1cnJlbnQoKSBjb25zdCB7IHJldHVybiBjdXJyZW50X3ZhbHVlXy5nZXQo
KTsgfQotICAgIHZpcnR1YWwgYm9vbCBFcXVhbHMoY29uc3QgUGFyYW1JdGVyYXRvckludGVyZmFj
ZTxQYXJhbVR5cGU+JiBvdGhlcikgY29uc3QgewotICAgICAgLy8gSGF2aW5nIHRoZSBzYW1lIGJh
c2UgZ2VuZXJhdG9yIGd1YXJhbnRlZXMgdGhhdCB0aGUgb3RoZXIKLSAgICAgIC8vIGl0ZXJhdG9y
IGlzIG9mIHRoZSBzYW1lIHR5cGUgYW5kIHdlIGNhbiBkb3duY2FzdC4KLSAgICAgIEdURVNUX0NI
RUNLXyhCYXNlR2VuZXJhdG9yKCkgPT0gb3RoZXIuQmFzZUdlbmVyYXRvcigpKQotICAgICAgICAg
IDw8ICJUaGUgcHJvZ3JhbSBhdHRlbXB0ZWQgdG8gY29tcGFyZSBpdGVyYXRvcnMgIgotICAgICAg
ICAgIDw8ICJmcm9tIGRpZmZlcmVudCBnZW5lcmF0b3JzLiIgPDwgc3RkOjplbmRsOwotICAgICAg
Y29uc3QgSXRlcmF0b3IqIHR5cGVkX290aGVyID0KLSAgICAgICAgICBDaGVja2VkRG93bmNhc3RU
b0FjdHVhbFR5cGU8Y29uc3QgSXRlcmF0b3I+KCZvdGhlcik7Ci0gICAgICAvLyBXZSBtdXN0IHJl
cG9ydCBpdGVyYXRvcnMgZXF1YWwgaWYgdGhleSBib3RoIHBvaW50IGJleW9uZCB0aGVpcgotICAg
ICAgLy8gcmVzcGVjdGl2ZSByYW5nZXMuIFRoYXQgY2FuIGhhcHBlbiBpbiBhIHZhcmlldHkgb2Yg
ZmFzaGlvbnMsCi0gICAgICAvLyBzbyB3ZSBoYXZlIHRvIGNvbnN1bHQgQXRFbmQoKS4KLSAgICAg
IHJldHVybiAoQXRFbmQoKSAmJiB0eXBlZF9vdGhlci0+QXRFbmQoKSkgfHwKLSAgICAgICAgICgK
LSAgICAgICAgICBjdXJyZW50MV8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQxXyAmJgotICAgICAg
ICAgIGN1cnJlbnQyXyA9PSB0eXBlZF9vdGhlci0+Y3VycmVudDJfICYmCi0gICAgICAgICAgY3Vy
cmVudDNfID09IHR5cGVkX290aGVyLT5jdXJyZW50M18gJiYKLSAgICAgICAgICBjdXJyZW50NF8g
PT0gdHlwZWRfb3RoZXItPmN1cnJlbnQ0XyAmJgotICAgICAgICAgIGN1cnJlbnQ1XyA9PSB0eXBl
ZF9vdGhlci0+Y3VycmVudDVfICYmCi0gICAgICAgICAgY3VycmVudDZfID09IHR5cGVkX290aGVy
LT5jdXJyZW50Nl8pOwotICAgIH0KLQotICAgcHJpdmF0ZToKLSAgICBJdGVyYXRvcihjb25zdCBJ
dGVyYXRvciYgb3RoZXIpCi0gICAgICAgIDogYmFzZV8ob3RoZXIuYmFzZV8pLAotICAgICAgICBi
ZWdpbjFfKG90aGVyLmJlZ2luMV8pLAotICAgICAgICBlbmQxXyhvdGhlci5lbmQxXyksCi0gICAg
ICAgIGN1cnJlbnQxXyhvdGhlci5jdXJyZW50MV8pLAotICAgICAgICBiZWdpbjJfKG90aGVyLmJl
Z2luMl8pLAotICAgICAgICBlbmQyXyhvdGhlci5lbmQyXyksCi0gICAgICAgIGN1cnJlbnQyXyhv
dGhlci5jdXJyZW50Ml8pLAotICAgICAgICBiZWdpbjNfKG90aGVyLmJlZ2luM18pLAotICAgICAg
ICBlbmQzXyhvdGhlci5lbmQzXyksCi0gICAgICAgIGN1cnJlbnQzXyhvdGhlci5jdXJyZW50M18p
LAotICAgICAgICBiZWdpbjRfKG90aGVyLmJlZ2luNF8pLAotICAgICAgICBlbmQ0XyhvdGhlci5l
bmQ0XyksCi0gICAgICAgIGN1cnJlbnQ0XyhvdGhlci5jdXJyZW50NF8pLAotICAgICAgICBiZWdp
bjVfKG90aGVyLmJlZ2luNV8pLAotICAgICAgICBlbmQ1XyhvdGhlci5lbmQ1XyksCi0gICAgICAg
IGN1cnJlbnQ1XyhvdGhlci5jdXJyZW50NV8pLAotICAgICAgICBiZWdpbjZfKG90aGVyLmJlZ2lu
Nl8pLAotICAgICAgICBlbmQ2XyhvdGhlci5lbmQ2XyksCi0gICAgICAgIGN1cnJlbnQ2XyhvdGhl
ci5jdXJyZW50Nl8pIHsKLSAgICAgIENvbXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0KLSAg
ICB2b2lkIENvbXB1dGVDdXJyZW50VmFsdWUoKSB7Ci0gICAgICBpZiAoIUF0RW5kKCkpCi0gICAg
ICAgIGN1cnJlbnRfdmFsdWVfLnJlc2V0KG5ldyBQYXJhbVR5cGUoKmN1cnJlbnQxXywgKmN1cnJl
bnQyXywgKmN1cnJlbnQzXywKLSAgICAgICAgICAgICpjdXJyZW50NF8sICpjdXJyZW50NV8sICpj
dXJyZW50Nl8pKTsKLSAgICB9Ci0gICAgYm9vbCBBdEVuZCgpIGNvbnN0IHsKLSAgICAgIC8vIFdl
IG11c3QgcmVwb3J0IGl0ZXJhdG9yIHBhc3QgdGhlIGVuZCBvZiB0aGUgcmFuZ2Ugd2hlbiBlaXRo
ZXIgb2YgdGhlCi0gICAgICAvLyBjb21wb25lbnQgaXRlcmF0b3JzIGhhcyByZWFjaGVkIHRoZSBl
bmQgb2YgaXRzIHJhbmdlLgotICAgICAgcmV0dXJuCi0gICAgICAgICAgY3VycmVudDFfID09IGVu
ZDFfIHx8Ci0gICAgICAgICAgY3VycmVudDJfID09IGVuZDJfIHx8Ci0gICAgICAgICAgY3VycmVu
dDNfID09IGVuZDNfIHx8Ci0gICAgICAgICAgY3VycmVudDRfID09IGVuZDRfIHx8Ci0gICAgICAg
ICAgY3VycmVudDVfID09IGVuZDVfIHx8Ci0gICAgICAgICAgY3VycmVudDZfID09IGVuZDZfOwot
ICAgIH0KLQotICAgIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBv
cnRlZC4KLSAgICB2b2lkIG9wZXJhdG9yPShjb25zdCBJdGVyYXRvciYgb3RoZXIpOwotCi0gICAg
Y29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogY29uc3QgYmFzZV87Ci0g
ICAgLy8gYmVnaW5baV1fIGFuZCBlbmRbaV1fIGRlZmluZSB0aGUgaS10aCByYW5nZSB0aGF0IEl0
ZXJhdG9yIHRyYXZlcnNlcy4KLSAgICAvLyBjdXJyZW50W2ldXyBpcyB0aGUgYWN0dWFsIHRyYXZl
cnNpbmcgaXRlcmF0b3IuCi0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDE+Ojpp
dGVyYXRvciBiZWdpbjFfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQxPjo6
aXRlcmF0b3IgZW5kMV87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDE+OjppdGVyYXRv
ciBjdXJyZW50MV87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDI+OjppdGVy
YXRvciBiZWdpbjJfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQyPjo6aXRl
cmF0b3IgZW5kMl87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDI+OjppdGVyYXRvciBj
dXJyZW50Ml87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDM+OjppdGVyYXRv
ciBiZWdpbjNfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQzPjo6aXRlcmF0
b3IgZW5kM187Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDM+OjppdGVyYXRvciBjdXJy
ZW50M187Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDQ+OjppdGVyYXRvciBi
ZWdpbjRfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ0Pjo6aXRlcmF0b3Ig
ZW5kNF87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDQ+OjppdGVyYXRvciBjdXJyZW50
NF87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDU+OjppdGVyYXRvciBiZWdp
bjVfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ1Pjo6aXRlcmF0b3IgZW5k
NV87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDU+OjppdGVyYXRvciBjdXJyZW50NV87
Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDY+OjppdGVyYXRvciBiZWdpbjZf
OwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ2Pjo6aXRlcmF0b3IgZW5kNl87
Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDY+OjppdGVyYXRvciBjdXJyZW50Nl87Ci0g
ICAgbGlua2VkX3B0cjxQYXJhbVR5cGU+IGN1cnJlbnRfdmFsdWVfOwotICB9OyAgLy8gY2xhc3Mg
Q2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjY6Okl0ZXJhdG9yCi0KLSAgLy8gTm8gaW1wbGVtZW50
YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25z
dCBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNiYgb3RoZXIpOwotCi0gIGNvbnN0IFBhcmFtR2Vu
ZXJhdG9yPFQxPiBnMV87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQyPiBnMl87Ci0gIGNvbnN0
IFBhcmFtR2VuZXJhdG9yPFQzPiBnM187Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ0PiBnNF87
Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ1PiBnNV87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9y
PFQ2PiBnNl87Ci19OyAgLy8gY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjYKLQotCi10
ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUg
VDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNz4KLWNsYXNzIENh
cnRlc2lhblByb2R1Y3RHZW5lcmF0b3I3Ci0gICAgOiBwdWJsaWMgUGFyYW1HZW5lcmF0b3JJbnRl
cmZhY2U8IDo6dGVzdGluZzo6dHVwbGU8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwKLSAgICAgICAg
VDc+ID4gewotIHB1YmxpYzoKLSAgdHlwZWRlZiA6OnRlc3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDMs
IFQ0LCBUNSwgVDYsIFQ3PiBQYXJhbVR5cGU7Ci0KLSAgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRv
cjcoY29uc3QgUGFyYW1HZW5lcmF0b3I8VDE+JiBnMSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJh
dG9yPFQyPiYgZzIsIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQzPiYgZzMsCi0gICAgICBjb25zdCBQ
YXJhbUdlbmVyYXRvcjxUND4mIGc0LCBjb25zdCBQYXJhbUdlbmVyYXRvcjxUNT4mIGc1LAotICAg
ICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDY+JiBnNiwgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDc+
JiBnNykKLSAgICAgIDogZzFfKGcxKSwgZzJfKGcyKSwgZzNfKGczKSwgZzRfKGc0KSwgZzVfKGc1
KSwgZzZfKGc2KSwgZzdfKGc3KSB7fQotICB2aXJ0dWFsIH5DYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJh
dG9yNygpIHt9Ci0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4q
IEJlZ2luKCkgY29uc3QgewotICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhpcywgZzFfLCBnMV8u
YmVnaW4oKSwgZzJfLCBnMl8uYmVnaW4oKSwgZzNfLAotICAgICAgICBnM18uYmVnaW4oKSwgZzRf
LCBnNF8uYmVnaW4oKSwgZzVfLCBnNV8uYmVnaW4oKSwgZzZfLCBnNl8uYmVnaW4oKSwgZzdfLAot
ICAgICAgICBnN18uYmVnaW4oKSk7Ci0gIH0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJm
YWNlPFBhcmFtVHlwZT4qIEVuZCgpIGNvbnN0IHsKLSAgICByZXR1cm4gbmV3IEl0ZXJhdG9yKHRo
aXMsIGcxXywgZzFfLmVuZCgpLCBnMl8sIGcyXy5lbmQoKSwgZzNfLCBnM18uZW5kKCksCi0gICAg
ICAgIGc0XywgZzRfLmVuZCgpLCBnNV8sIGc1Xy5lbmQoKSwgZzZfLCBnNl8uZW5kKCksIGc3Xywg
ZzdfLmVuZCgpKTsKLSAgfQotCi0gcHJpdmF0ZToKLSAgY2xhc3MgSXRlcmF0b3IgOiBwdWJsaWMg
UGFyYW1JdGVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+IHsKLSAgIHB1YmxpYzoKLSAgICBJdGVy
YXRvcihjb25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+KiBiYXNlLAotICAg
ICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDE+JiBnMSwKLSAgICAgIGNvbnN0IHR5cGVuYW1lIFBh
cmFtR2VuZXJhdG9yPFQxPjo6aXRlcmF0b3ImIGN1cnJlbnQxLAotICAgICAgY29uc3QgUGFyYW1H
ZW5lcmF0b3I8VDI+JiBnMiwKLSAgICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQy
Pjo6aXRlcmF0b3ImIGN1cnJlbnQyLAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDM+JiBn
MywKLSAgICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQzPjo6aXRlcmF0b3ImIGN1
cnJlbnQzLAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDQ+JiBnNCwKLSAgICAgIGNvbnN0
IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ0Pjo6aXRlcmF0b3ImIGN1cnJlbnQ0LAotICAgICAg
Y29uc3QgUGFyYW1HZW5lcmF0b3I8VDU+JiBnNSwKLSAgICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFt
R2VuZXJhdG9yPFQ1Pjo6aXRlcmF0b3ImIGN1cnJlbnQ1LAotICAgICAgY29uc3QgUGFyYW1HZW5l
cmF0b3I8VDY+JiBnNiwKLSAgICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ2Pjo6
aXRlcmF0b3ImIGN1cnJlbnQ2LAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDc+JiBnNywK
LSAgICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ3Pjo6aXRlcmF0b3ImIGN1cnJl
bnQ3KQotICAgICAgICA6IGJhc2VfKGJhc2UpLAotICAgICAgICAgIGJlZ2luMV8oZzEuYmVnaW4o
KSksIGVuZDFfKGcxLmVuZCgpKSwgY3VycmVudDFfKGN1cnJlbnQxKSwKLSAgICAgICAgICBiZWdp
bjJfKGcyLmJlZ2luKCkpLCBlbmQyXyhnMi5lbmQoKSksIGN1cnJlbnQyXyhjdXJyZW50MiksCi0g
ICAgICAgICAgYmVnaW4zXyhnMy5iZWdpbigpKSwgZW5kM18oZzMuZW5kKCkpLCBjdXJyZW50M18o
Y3VycmVudDMpLAotICAgICAgICAgIGJlZ2luNF8oZzQuYmVnaW4oKSksIGVuZDRfKGc0LmVuZCgp
KSwgY3VycmVudDRfKGN1cnJlbnQ0KSwKLSAgICAgICAgICBiZWdpbjVfKGc1LmJlZ2luKCkpLCBl
bmQ1XyhnNS5lbmQoKSksIGN1cnJlbnQ1XyhjdXJyZW50NSksCi0gICAgICAgICAgYmVnaW42Xyhn
Ni5iZWdpbigpKSwgZW5kNl8oZzYuZW5kKCkpLCBjdXJyZW50Nl8oY3VycmVudDYpLAotICAgICAg
ICAgIGJlZ2luN18oZzcuYmVnaW4oKSksIGVuZDdfKGc3LmVuZCgpKSwgY3VycmVudDdfKGN1cnJl
bnQ3KSAgICB7Ci0gICAgICBDb21wdXRlQ3VycmVudFZhbHVlKCk7Ci0gICAgfQotICAgIHZpcnR1
YWwgfkl0ZXJhdG9yKCkge30KLQotICAgIHZpcnR1YWwgY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRl
cmZhY2U8UGFyYW1UeXBlPiogQmFzZUdlbmVyYXRvcigpIGNvbnN0IHsKLSAgICAgIHJldHVybiBi
YXNlXzsKLSAgICB9Ci0gICAgLy8gQWR2YW5jZSBzaG91bGQgbm90IGJlIGNhbGxlZCBvbiBiZXlv
bmQtb2YtcmFuZ2UgaXRlcmF0b3JzCi0gICAgLy8gc28gbm8gY29tcG9uZW50IGl0ZXJhdG9ycyBt
dXN0IGJlIGJleW9uZCBlbmQgb2YgcmFuZ2UsIGVpdGhlci4KLSAgICB2aXJ0dWFsIHZvaWQgQWR2
YW5jZSgpIHsKLSAgICAgIGFzc2VydCghQXRFbmQoKSk7Ci0gICAgICArK2N1cnJlbnQ3XzsKLSAg
ICAgIGlmIChjdXJyZW50N18gPT0gZW5kN18pIHsKLSAgICAgICAgY3VycmVudDdfID0gYmVnaW43
XzsKLSAgICAgICAgKytjdXJyZW50Nl87Ci0gICAgICB9Ci0gICAgICBpZiAoY3VycmVudDZfID09
IGVuZDZfKSB7Ci0gICAgICAgIGN1cnJlbnQ2XyA9IGJlZ2luNl87Ci0gICAgICAgICsrY3VycmVu
dDVfOwotICAgICAgfQotICAgICAgaWYgKGN1cnJlbnQ1XyA9PSBlbmQ1XykgewotICAgICAgICBj
dXJyZW50NV8gPSBiZWdpbjVfOwotICAgICAgICArK2N1cnJlbnQ0XzsKLSAgICAgIH0KLSAgICAg
IGlmIChjdXJyZW50NF8gPT0gZW5kNF8pIHsKLSAgICAgICAgY3VycmVudDRfID0gYmVnaW40XzsK
LSAgICAgICAgKytjdXJyZW50M187Ci0gICAgICB9Ci0gICAgICBpZiAoY3VycmVudDNfID09IGVu
ZDNfKSB7Ci0gICAgICAgIGN1cnJlbnQzXyA9IGJlZ2luM187Ci0gICAgICAgICsrY3VycmVudDJf
OwotICAgICAgfQotICAgICAgaWYgKGN1cnJlbnQyXyA9PSBlbmQyXykgewotICAgICAgICBjdXJy
ZW50Ml8gPSBiZWdpbjJfOwotICAgICAgICArK2N1cnJlbnQxXzsKLSAgICAgIH0KLSAgICAgIENv
bXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0gICAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50
ZXJmYWNlPFBhcmFtVHlwZT4qIENsb25lKCkgY29uc3QgewotICAgICAgcmV0dXJuIG5ldyBJdGVy
YXRvcigqdGhpcyk7Ci0gICAgfQotICAgIHZpcnR1YWwgY29uc3QgUGFyYW1UeXBlKiBDdXJyZW50
KCkgY29uc3QgeyByZXR1cm4gY3VycmVudF92YWx1ZV8uZ2V0KCk7IH0KLSAgICB2aXJ0dWFsIGJv
b2wgRXF1YWxzKGNvbnN0IFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiYgb3RoZXIp
IGNvbnN0IHsKLSAgICAgIC8vIEhhdmluZyB0aGUgc2FtZSBiYXNlIGdlbmVyYXRvciBndWFyYW50
ZWVzIHRoYXQgdGhlIG90aGVyCi0gICAgICAvLyBpdGVyYXRvciBpcyBvZiB0aGUgc2FtZSB0eXBl
IGFuZCB3ZSBjYW4gZG93bmNhc3QuCi0gICAgICBHVEVTVF9DSEVDS18oQmFzZUdlbmVyYXRvcigp
ID09IG90aGVyLkJhc2VHZW5lcmF0b3IoKSkKLSAgICAgICAgICA8PCAiVGhlIHByb2dyYW0gYXR0
ZW1wdGVkIHRvIGNvbXBhcmUgaXRlcmF0b3JzICIKLSAgICAgICAgICA8PCAiZnJvbSBkaWZmZXJl
bnQgZ2VuZXJhdG9ycy4iIDw8IHN0ZDo6ZW5kbDsKLSAgICAgIGNvbnN0IEl0ZXJhdG9yKiB0eXBl
ZF9vdGhlciA9Ci0gICAgICAgICAgQ2hlY2tlZERvd25jYXN0VG9BY3R1YWxUeXBlPGNvbnN0IEl0
ZXJhdG9yPigmb3RoZXIpOwotICAgICAgLy8gV2UgbXVzdCByZXBvcnQgaXRlcmF0b3JzIGVxdWFs
IGlmIHRoZXkgYm90aCBwb2ludCBiZXlvbmQgdGhlaXIKLSAgICAgIC8vIHJlc3BlY3RpdmUgcmFu
Z2VzLiBUaGF0IGNhbiBoYXBwZW4gaW4gYSB2YXJpZXR5IG9mIGZhc2hpb25zLAotICAgICAgLy8g
c28gd2UgaGF2ZSB0byBjb25zdWx0IEF0RW5kKCkuCi0gICAgICByZXR1cm4gKEF0RW5kKCkgJiYg
dHlwZWRfb3RoZXItPkF0RW5kKCkpIHx8Ci0gICAgICAgICAoCi0gICAgICAgICAgY3VycmVudDFf
ID09IHR5cGVkX290aGVyLT5jdXJyZW50MV8gJiYKLSAgICAgICAgICBjdXJyZW50Ml8gPT0gdHlw
ZWRfb3RoZXItPmN1cnJlbnQyXyAmJgotICAgICAgICAgIGN1cnJlbnQzXyA9PSB0eXBlZF9vdGhl
ci0+Y3VycmVudDNfICYmCi0gICAgICAgICAgY3VycmVudDRfID09IHR5cGVkX290aGVyLT5jdXJy
ZW50NF8gJiYKLSAgICAgICAgICBjdXJyZW50NV8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQ1XyAm
JgotICAgICAgICAgIGN1cnJlbnQ2XyA9PSB0eXBlZF9vdGhlci0+Y3VycmVudDZfICYmCi0gICAg
ICAgICAgY3VycmVudDdfID09IHR5cGVkX290aGVyLT5jdXJyZW50N18pOwotICAgIH0KLQotICAg
cHJpdmF0ZToKLSAgICBJdGVyYXRvcihjb25zdCBJdGVyYXRvciYgb3RoZXIpCi0gICAgICAgIDog
YmFzZV8ob3RoZXIuYmFzZV8pLAotICAgICAgICBiZWdpbjFfKG90aGVyLmJlZ2luMV8pLAotICAg
ICAgICBlbmQxXyhvdGhlci5lbmQxXyksCi0gICAgICAgIGN1cnJlbnQxXyhvdGhlci5jdXJyZW50
MV8pLAotICAgICAgICBiZWdpbjJfKG90aGVyLmJlZ2luMl8pLAotICAgICAgICBlbmQyXyhvdGhl
ci5lbmQyXyksCi0gICAgICAgIGN1cnJlbnQyXyhvdGhlci5jdXJyZW50Ml8pLAotICAgICAgICBi
ZWdpbjNfKG90aGVyLmJlZ2luM18pLAotICAgICAgICBlbmQzXyhvdGhlci5lbmQzXyksCi0gICAg
ICAgIGN1cnJlbnQzXyhvdGhlci5jdXJyZW50M18pLAotICAgICAgICBiZWdpbjRfKG90aGVyLmJl
Z2luNF8pLAotICAgICAgICBlbmQ0XyhvdGhlci5lbmQ0XyksCi0gICAgICAgIGN1cnJlbnQ0Xyhv
dGhlci5jdXJyZW50NF8pLAotICAgICAgICBiZWdpbjVfKG90aGVyLmJlZ2luNV8pLAotICAgICAg
ICBlbmQ1XyhvdGhlci5lbmQ1XyksCi0gICAgICAgIGN1cnJlbnQ1XyhvdGhlci5jdXJyZW50NV8p
LAotICAgICAgICBiZWdpbjZfKG90aGVyLmJlZ2luNl8pLAotICAgICAgICBlbmQ2XyhvdGhlci5l
bmQ2XyksCi0gICAgICAgIGN1cnJlbnQ2XyhvdGhlci5jdXJyZW50Nl8pLAotICAgICAgICBiZWdp
bjdfKG90aGVyLmJlZ2luN18pLAotICAgICAgICBlbmQ3XyhvdGhlci5lbmQ3XyksCi0gICAgICAg
IGN1cnJlbnQ3XyhvdGhlci5jdXJyZW50N18pIHsKLSAgICAgIENvbXB1dGVDdXJyZW50VmFsdWUo
KTsKLSAgICB9Ci0KLSAgICB2b2lkIENvbXB1dGVDdXJyZW50VmFsdWUoKSB7Ci0gICAgICBpZiAo
IUF0RW5kKCkpCi0gICAgICAgIGN1cnJlbnRfdmFsdWVfLnJlc2V0KG5ldyBQYXJhbVR5cGUoKmN1
cnJlbnQxXywgKmN1cnJlbnQyXywgKmN1cnJlbnQzXywKLSAgICAgICAgICAgICpjdXJyZW50NF8s
ICpjdXJyZW50NV8sICpjdXJyZW50Nl8sICpjdXJyZW50N18pKTsKLSAgICB9Ci0gICAgYm9vbCBB
dEVuZCgpIGNvbnN0IHsKLSAgICAgIC8vIFdlIG11c3QgcmVwb3J0IGl0ZXJhdG9yIHBhc3QgdGhl
IGVuZCBvZiB0aGUgcmFuZ2Ugd2hlbiBlaXRoZXIgb2YgdGhlCi0gICAgICAvLyBjb21wb25lbnQg
aXRlcmF0b3JzIGhhcyByZWFjaGVkIHRoZSBlbmQgb2YgaXRzIHJhbmdlLgotICAgICAgcmV0dXJu
Ci0gICAgICAgICAgY3VycmVudDFfID09IGVuZDFfIHx8Ci0gICAgICAgICAgY3VycmVudDJfID09
IGVuZDJfIHx8Ci0gICAgICAgICAgY3VycmVudDNfID09IGVuZDNfIHx8Ci0gICAgICAgICAgY3Vy
cmVudDRfID09IGVuZDRfIHx8Ci0gICAgICAgICAgY3VycmVudDVfID09IGVuZDVfIHx8Ci0gICAg
ICAgICAgY3VycmVudDZfID09IGVuZDZfIHx8Ci0gICAgICAgICAgY3VycmVudDdfID09IGVuZDdf
OwotICAgIH0KLQotICAgIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1
cHBvcnRlZC4KLSAgICB2b2lkIG9wZXJhdG9yPShjb25zdCBJdGVyYXRvciYgb3RoZXIpOwotCi0g
ICAgY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogY29uc3QgYmFzZV87
Ci0gICAgLy8gYmVnaW5baV1fIGFuZCBlbmRbaV1fIGRlZmluZSB0aGUgaS10aCByYW5nZSB0aGF0
IEl0ZXJhdG9yIHRyYXZlcnNlcy4KLSAgICAvLyBjdXJyZW50W2ldXyBpcyB0aGUgYWN0dWFsIHRy
YXZlcnNpbmcgaXRlcmF0b3IuCi0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDE+
OjppdGVyYXRvciBiZWdpbjFfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQx
Pjo6aXRlcmF0b3IgZW5kMV87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDE+OjppdGVy
YXRvciBjdXJyZW50MV87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDI+Ojpp
dGVyYXRvciBiZWdpbjJfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQyPjo6
aXRlcmF0b3IgZW5kMl87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDI+OjppdGVyYXRv
ciBjdXJyZW50Ml87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDM+OjppdGVy
YXRvciBiZWdpbjNfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQzPjo6aXRl
cmF0b3IgZW5kM187Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDM+OjppdGVyYXRvciBj
dXJyZW50M187Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDQ+OjppdGVyYXRv
ciBiZWdpbjRfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ0Pjo6aXRlcmF0
b3IgZW5kNF87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDQ+OjppdGVyYXRvciBjdXJy
ZW50NF87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDU+OjppdGVyYXRvciBi
ZWdpbjVfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ1Pjo6aXRlcmF0b3Ig
ZW5kNV87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDU+OjppdGVyYXRvciBjdXJyZW50
NV87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDY+OjppdGVyYXRvciBiZWdp
bjZfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ2Pjo6aXRlcmF0b3IgZW5k
Nl87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDY+OjppdGVyYXRvciBjdXJyZW50Nl87
Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDc+OjppdGVyYXRvciBiZWdpbjdf
OwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ3Pjo6aXRlcmF0b3IgZW5kN187
Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDc+OjppdGVyYXRvciBjdXJyZW50N187Ci0g
ICAgbGlua2VkX3B0cjxQYXJhbVR5cGU+IGN1cnJlbnRfdmFsdWVfOwotICB9OyAgLy8gY2xhc3Mg
Q2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjc6Okl0ZXJhdG9yCi0KLSAgLy8gTm8gaW1wbGVtZW50
YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25z
dCBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNyYgb3RoZXIpOwotCi0gIGNvbnN0IFBhcmFtR2Vu
ZXJhdG9yPFQxPiBnMV87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQyPiBnMl87Ci0gIGNvbnN0
IFBhcmFtR2VuZXJhdG9yPFQzPiBnM187Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ0PiBnNF87
Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ1PiBnNV87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9y
PFQ2PiBnNl87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ3PiBnN187Ci19OyAgLy8gY2xhc3Mg
Q2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjcKLQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5
cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5
cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDg+Ci1jbGFzcyBDYXJ0ZXNpYW5Qcm9k
dWN0R2VuZXJhdG9yOAotICAgIDogcHVibGljIFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPCA6OnRl
c3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsCi0gICAgICAgIFQ3LCBUOD4gPiB7
Ci0gcHVibGljOgotICB0eXBlZGVmIDo6dGVzdGluZzo6dHVwbGU8VDEsIFQyLCBUMywgVDQsIFQ1
LCBUNiwgVDcsIFQ4PiBQYXJhbVR5cGU7Ci0KLSAgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjgo
Y29uc3QgUGFyYW1HZW5lcmF0b3I8VDE+JiBnMSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9y
PFQyPiYgZzIsIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQzPiYgZzMsCi0gICAgICBjb25zdCBQYXJh
bUdlbmVyYXRvcjxUND4mIGc0LCBjb25zdCBQYXJhbUdlbmVyYXRvcjxUNT4mIGc1LAotICAgICAg
Y29uc3QgUGFyYW1HZW5lcmF0b3I8VDY+JiBnNiwgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDc+JiBn
NywKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ4PiYgZzgpCi0gICAgICA6IGcxXyhnMSks
IGcyXyhnMiksIGczXyhnMyksIGc0XyhnNCksIGc1XyhnNSksIGc2XyhnNiksIGc3XyhnNyksCi0g
ICAgICAgICAgZzhfKGc4KSB7fQotICB2aXJ0dWFsIH5DYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9y
OCgpIHt9Ci0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIEJl
Z2luKCkgY29uc3QgewotICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhpcywgZzFfLCBnMV8uYmVn
aW4oKSwgZzJfLCBnMl8uYmVnaW4oKSwgZzNfLAotICAgICAgICBnM18uYmVnaW4oKSwgZzRfLCBn
NF8uYmVnaW4oKSwgZzVfLCBnNV8uYmVnaW4oKSwgZzZfLCBnNl8uYmVnaW4oKSwgZzdfLAotICAg
ICAgICBnN18uYmVnaW4oKSwgZzhfLCBnOF8uYmVnaW4oKSk7Ci0gIH0KLSAgdmlydHVhbCBQYXJh
bUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIEVuZCgpIGNvbnN0IHsKLSAgICByZXR1cm4g
bmV3IEl0ZXJhdG9yKHRoaXMsIGcxXywgZzFfLmVuZCgpLCBnMl8sIGcyXy5lbmQoKSwgZzNfLCBn
M18uZW5kKCksCi0gICAgICAgIGc0XywgZzRfLmVuZCgpLCBnNV8sIGc1Xy5lbmQoKSwgZzZfLCBn
Nl8uZW5kKCksIGc3XywgZzdfLmVuZCgpLCBnOF8sCi0gICAgICAgIGc4Xy5lbmQoKSk7Ci0gIH0K
LQotIHByaXZhdGU6Ci0gIGNsYXNzIEl0ZXJhdG9yIDogcHVibGljIFBhcmFtSXRlcmF0b3JJbnRl
cmZhY2U8UGFyYW1UeXBlPiB7Ci0gICBwdWJsaWM6Ci0gICAgSXRlcmF0b3IoY29uc3QgUGFyYW1H
ZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogYmFzZSwKLSAgICAgIGNvbnN0IFBhcmFtR2Vu
ZXJhdG9yPFQxPiYgZzEsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMT46
Oml0ZXJhdG9yJiBjdXJyZW50MSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQyPiYgZzIs
Ci0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMj46Oml0ZXJhdG9yJiBjdXJy
ZW50MiwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQzPiYgZzMsCi0gICAgICBjb25zdCB0
eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMz46Oml0ZXJhdG9yJiBjdXJyZW50MywKLSAgICAgIGNv
bnN0IFBhcmFtR2VuZXJhdG9yPFQ0PiYgZzQsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdl
bmVyYXRvcjxUND46Oml0ZXJhdG9yJiBjdXJyZW50NCwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJh
dG9yPFQ1PiYgZzUsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNT46Oml0
ZXJhdG9yJiBjdXJyZW50NSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ2PiYgZzYsCi0g
ICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNj46Oml0ZXJhdG9yJiBjdXJyZW50
NiwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ3PiYgZzcsCi0gICAgICBjb25zdCB0eXBl
bmFtZSBQYXJhbUdlbmVyYXRvcjxUNz46Oml0ZXJhdG9yJiBjdXJyZW50NywKLSAgICAgIGNvbnN0
IFBhcmFtR2VuZXJhdG9yPFQ4PiYgZzgsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVy
YXRvcjxUOD46Oml0ZXJhdG9yJiBjdXJyZW50OCkKLSAgICAgICAgOiBiYXNlXyhiYXNlKSwKLSAg
ICAgICAgICBiZWdpbjFfKGcxLmJlZ2luKCkpLCBlbmQxXyhnMS5lbmQoKSksIGN1cnJlbnQxXyhj
dXJyZW50MSksCi0gICAgICAgICAgYmVnaW4yXyhnMi5iZWdpbigpKSwgZW5kMl8oZzIuZW5kKCkp
LCBjdXJyZW50Ml8oY3VycmVudDIpLAotICAgICAgICAgIGJlZ2luM18oZzMuYmVnaW4oKSksIGVu
ZDNfKGczLmVuZCgpKSwgY3VycmVudDNfKGN1cnJlbnQzKSwKLSAgICAgICAgICBiZWdpbjRfKGc0
LmJlZ2luKCkpLCBlbmQ0XyhnNC5lbmQoKSksIGN1cnJlbnQ0XyhjdXJyZW50NCksCi0gICAgICAg
ICAgYmVnaW41XyhnNS5iZWdpbigpKSwgZW5kNV8oZzUuZW5kKCkpLCBjdXJyZW50NV8oY3VycmVu
dDUpLAotICAgICAgICAgIGJlZ2luNl8oZzYuYmVnaW4oKSksIGVuZDZfKGc2LmVuZCgpKSwgY3Vy
cmVudDZfKGN1cnJlbnQ2KSwKLSAgICAgICAgICBiZWdpbjdfKGc3LmJlZ2luKCkpLCBlbmQ3Xyhn
Ny5lbmQoKSksIGN1cnJlbnQ3XyhjdXJyZW50NyksCi0gICAgICAgICAgYmVnaW44XyhnOC5iZWdp
bigpKSwgZW5kOF8oZzguZW5kKCkpLCBjdXJyZW50OF8oY3VycmVudDgpICAgIHsKLSAgICAgIENv
bXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0gICAgdmlydHVhbCB+SXRlcmF0b3IoKSB7fQot
Ci0gICAgdmlydHVhbCBjb25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+KiBC
YXNlR2VuZXJhdG9yKCkgY29uc3QgewotICAgICAgcmV0dXJuIGJhc2VfOwotICAgIH0KLSAgICAv
LyBBZHZhbmNlIHNob3VsZCBub3QgYmUgY2FsbGVkIG9uIGJleW9uZC1vZi1yYW5nZSBpdGVyYXRv
cnMKLSAgICAvLyBzbyBubyBjb21wb25lbnQgaXRlcmF0b3JzIG11c3QgYmUgYmV5b25kIGVuZCBv
ZiByYW5nZSwgZWl0aGVyLgotICAgIHZpcnR1YWwgdm9pZCBBZHZhbmNlKCkgewotICAgICAgYXNz
ZXJ0KCFBdEVuZCgpKTsKLSAgICAgICsrY3VycmVudDhfOwotICAgICAgaWYgKGN1cnJlbnQ4XyA9
PSBlbmQ4XykgewotICAgICAgICBjdXJyZW50OF8gPSBiZWdpbjhfOwotICAgICAgICArK2N1cnJl
bnQ3XzsKLSAgICAgIH0KLSAgICAgIGlmIChjdXJyZW50N18gPT0gZW5kN18pIHsKLSAgICAgICAg
Y3VycmVudDdfID0gYmVnaW43XzsKLSAgICAgICAgKytjdXJyZW50Nl87Ci0gICAgICB9Ci0gICAg
ICBpZiAoY3VycmVudDZfID09IGVuZDZfKSB7Ci0gICAgICAgIGN1cnJlbnQ2XyA9IGJlZ2luNl87
Ci0gICAgICAgICsrY3VycmVudDVfOwotICAgICAgfQotICAgICAgaWYgKGN1cnJlbnQ1XyA9PSBl
bmQ1XykgewotICAgICAgICBjdXJyZW50NV8gPSBiZWdpbjVfOwotICAgICAgICArK2N1cnJlbnQ0
XzsKLSAgICAgIH0KLSAgICAgIGlmIChjdXJyZW50NF8gPT0gZW5kNF8pIHsKLSAgICAgICAgY3Vy
cmVudDRfID0gYmVnaW40XzsKLSAgICAgICAgKytjdXJyZW50M187Ci0gICAgICB9Ci0gICAgICBp
ZiAoY3VycmVudDNfID09IGVuZDNfKSB7Ci0gICAgICAgIGN1cnJlbnQzXyA9IGJlZ2luM187Ci0g
ICAgICAgICsrY3VycmVudDJfOwotICAgICAgfQotICAgICAgaWYgKGN1cnJlbnQyXyA9PSBlbmQy
XykgewotICAgICAgICBjdXJyZW50Ml8gPSBiZWdpbjJfOwotICAgICAgICArK2N1cnJlbnQxXzsK
LSAgICAgIH0KLSAgICAgIENvbXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0gICAgdmlydHVh
bCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIENsb25lKCkgY29uc3QgewotICAg
ICAgcmV0dXJuIG5ldyBJdGVyYXRvcigqdGhpcyk7Ci0gICAgfQotICAgIHZpcnR1YWwgY29uc3Qg
UGFyYW1UeXBlKiBDdXJyZW50KCkgY29uc3QgeyByZXR1cm4gY3VycmVudF92YWx1ZV8uZ2V0KCk7
IH0KLSAgICB2aXJ0dWFsIGJvb2wgRXF1YWxzKGNvbnN0IFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8
UGFyYW1UeXBlPiYgb3RoZXIpIGNvbnN0IHsKLSAgICAgIC8vIEhhdmluZyB0aGUgc2FtZSBiYXNl
IGdlbmVyYXRvciBndWFyYW50ZWVzIHRoYXQgdGhlIG90aGVyCi0gICAgICAvLyBpdGVyYXRvciBp
cyBvZiB0aGUgc2FtZSB0eXBlIGFuZCB3ZSBjYW4gZG93bmNhc3QuCi0gICAgICBHVEVTVF9DSEVD
S18oQmFzZUdlbmVyYXRvcigpID09IG90aGVyLkJhc2VHZW5lcmF0b3IoKSkKLSAgICAgICAgICA8
PCAiVGhlIHByb2dyYW0gYXR0ZW1wdGVkIHRvIGNvbXBhcmUgaXRlcmF0b3JzICIKLSAgICAgICAg
ICA8PCAiZnJvbSBkaWZmZXJlbnQgZ2VuZXJhdG9ycy4iIDw8IHN0ZDo6ZW5kbDsKLSAgICAgIGNv
bnN0IEl0ZXJhdG9yKiB0eXBlZF9vdGhlciA9Ci0gICAgICAgICAgQ2hlY2tlZERvd25jYXN0VG9B
Y3R1YWxUeXBlPGNvbnN0IEl0ZXJhdG9yPigmb3RoZXIpOwotICAgICAgLy8gV2UgbXVzdCByZXBv
cnQgaXRlcmF0b3JzIGVxdWFsIGlmIHRoZXkgYm90aCBwb2ludCBiZXlvbmQgdGhlaXIKLSAgICAg
IC8vIHJlc3BlY3RpdmUgcmFuZ2VzLiBUaGF0IGNhbiBoYXBwZW4gaW4gYSB2YXJpZXR5IG9mIGZh
c2hpb25zLAotICAgICAgLy8gc28gd2UgaGF2ZSB0byBjb25zdWx0IEF0RW5kKCkuCi0gICAgICBy
ZXR1cm4gKEF0RW5kKCkgJiYgdHlwZWRfb3RoZXItPkF0RW5kKCkpIHx8Ci0gICAgICAgICAoCi0g
ICAgICAgICAgY3VycmVudDFfID09IHR5cGVkX290aGVyLT5jdXJyZW50MV8gJiYKLSAgICAgICAg
ICBjdXJyZW50Ml8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQyXyAmJgotICAgICAgICAgIGN1cnJl
bnQzXyA9PSB0eXBlZF9vdGhlci0+Y3VycmVudDNfICYmCi0gICAgICAgICAgY3VycmVudDRfID09
IHR5cGVkX290aGVyLT5jdXJyZW50NF8gJiYKLSAgICAgICAgICBjdXJyZW50NV8gPT0gdHlwZWRf
b3RoZXItPmN1cnJlbnQ1XyAmJgotICAgICAgICAgIGN1cnJlbnQ2XyA9PSB0eXBlZF9vdGhlci0+
Y3VycmVudDZfICYmCi0gICAgICAgICAgY3VycmVudDdfID09IHR5cGVkX290aGVyLT5jdXJyZW50
N18gJiYKLSAgICAgICAgICBjdXJyZW50OF8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQ4Xyk7Ci0g
ICAgfQotCi0gICBwcml2YXRlOgotICAgIEl0ZXJhdG9yKGNvbnN0IEl0ZXJhdG9yJiBvdGhlcikK
LSAgICAgICAgOiBiYXNlXyhvdGhlci5iYXNlXyksCi0gICAgICAgIGJlZ2luMV8ob3RoZXIuYmVn
aW4xXyksCi0gICAgICAgIGVuZDFfKG90aGVyLmVuZDFfKSwKLSAgICAgICAgY3VycmVudDFfKG90
aGVyLmN1cnJlbnQxXyksCi0gICAgICAgIGJlZ2luMl8ob3RoZXIuYmVnaW4yXyksCi0gICAgICAg
IGVuZDJfKG90aGVyLmVuZDJfKSwKLSAgICAgICAgY3VycmVudDJfKG90aGVyLmN1cnJlbnQyXyks
Ci0gICAgICAgIGJlZ2luM18ob3RoZXIuYmVnaW4zXyksCi0gICAgICAgIGVuZDNfKG90aGVyLmVu
ZDNfKSwKLSAgICAgICAgY3VycmVudDNfKG90aGVyLmN1cnJlbnQzXyksCi0gICAgICAgIGJlZ2lu
NF8ob3RoZXIuYmVnaW40XyksCi0gICAgICAgIGVuZDRfKG90aGVyLmVuZDRfKSwKLSAgICAgICAg
Y3VycmVudDRfKG90aGVyLmN1cnJlbnQ0XyksCi0gICAgICAgIGJlZ2luNV8ob3RoZXIuYmVnaW41
XyksCi0gICAgICAgIGVuZDVfKG90aGVyLmVuZDVfKSwKLSAgICAgICAgY3VycmVudDVfKG90aGVy
LmN1cnJlbnQ1XyksCi0gICAgICAgIGJlZ2luNl8ob3RoZXIuYmVnaW42XyksCi0gICAgICAgIGVu
ZDZfKG90aGVyLmVuZDZfKSwKLSAgICAgICAgY3VycmVudDZfKG90aGVyLmN1cnJlbnQ2XyksCi0g
ICAgICAgIGJlZ2luN18ob3RoZXIuYmVnaW43XyksCi0gICAgICAgIGVuZDdfKG90aGVyLmVuZDdf
KSwKLSAgICAgICAgY3VycmVudDdfKG90aGVyLmN1cnJlbnQ3XyksCi0gICAgICAgIGJlZ2luOF8o
b3RoZXIuYmVnaW44XyksCi0gICAgICAgIGVuZDhfKG90aGVyLmVuZDhfKSwKLSAgICAgICAgY3Vy
cmVudDhfKG90aGVyLmN1cnJlbnQ4XykgewotICAgICAgQ29tcHV0ZUN1cnJlbnRWYWx1ZSgpOwot
ICAgIH0KLQotICAgIHZvaWQgQ29tcHV0ZUN1cnJlbnRWYWx1ZSgpIHsKLSAgICAgIGlmICghQXRF
bmQoKSkKLSAgICAgICAgY3VycmVudF92YWx1ZV8ucmVzZXQobmV3IFBhcmFtVHlwZSgqY3VycmVu
dDFfLCAqY3VycmVudDJfLCAqY3VycmVudDNfLAotICAgICAgICAgICAgKmN1cnJlbnQ0XywgKmN1
cnJlbnQ1XywgKmN1cnJlbnQ2XywgKmN1cnJlbnQ3XywgKmN1cnJlbnQ4XykpOwotICAgIH0KLSAg
ICBib29sIEF0RW5kKCkgY29uc3QgewotICAgICAgLy8gV2UgbXVzdCByZXBvcnQgaXRlcmF0b3Ig
cGFzdCB0aGUgZW5kIG9mIHRoZSByYW5nZSB3aGVuIGVpdGhlciBvZiB0aGUKLSAgICAgIC8vIGNv
bXBvbmVudCBpdGVyYXRvcnMgaGFzIHJlYWNoZWQgdGhlIGVuZCBvZiBpdHMgcmFuZ2UuCi0gICAg
ICByZXR1cm4KLSAgICAgICAgICBjdXJyZW50MV8gPT0gZW5kMV8gfHwKLSAgICAgICAgICBjdXJy
ZW50Ml8gPT0gZW5kMl8gfHwKLSAgICAgICAgICBjdXJyZW50M18gPT0gZW5kM18gfHwKLSAgICAg
ICAgICBjdXJyZW50NF8gPT0gZW5kNF8gfHwKLSAgICAgICAgICBjdXJyZW50NV8gPT0gZW5kNV8g
fHwKLSAgICAgICAgICBjdXJyZW50Nl8gPT0gZW5kNl8gfHwKLSAgICAgICAgICBjdXJyZW50N18g
PT0gZW5kN18gfHwKLSAgICAgICAgICBjdXJyZW50OF8gPT0gZW5kOF87Ci0gICAgfQotCi0gICAg
Ly8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICAgIHZv
aWQgb3BlcmF0b3I9KGNvbnN0IEl0ZXJhdG9yJiBvdGhlcik7Ci0KLSAgICBjb25zdCBQYXJhbUdl
bmVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+KiBjb25zdCBiYXNlXzsKLSAgICAvLyBiZWdpbltp
XV8gYW5kIGVuZFtpXV8gZGVmaW5lIHRoZSBpLXRoIHJhbmdlIHRoYXQgSXRlcmF0b3IgdHJhdmVy
c2VzLgotICAgIC8vIGN1cnJlbnRbaV1fIGlzIHRoZSBhY3R1YWwgdHJhdmVyc2luZyBpdGVyYXRv
ci4KLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMT46Oml0ZXJhdG9yIGJlZ2lu
MV87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDE+OjppdGVyYXRvciBlbmQx
XzsKLSAgICB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMT46Oml0ZXJhdG9yIGN1cnJlbnQxXzsK
LSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMj46Oml0ZXJhdG9yIGJlZ2luMl87
Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDI+OjppdGVyYXRvciBlbmQyXzsK
LSAgICB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMj46Oml0ZXJhdG9yIGN1cnJlbnQyXzsKLSAg
ICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMz46Oml0ZXJhdG9yIGJlZ2luM187Ci0g
ICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDM+OjppdGVyYXRvciBlbmQzXzsKLSAg
ICB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMz46Oml0ZXJhdG9yIGN1cnJlbnQzXzsKLSAgICBj
b25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUND46Oml0ZXJhdG9yIGJlZ2luNF87Ci0gICAg
Y29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDQ+OjppdGVyYXRvciBlbmQ0XzsKLSAgICB0
eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUND46Oml0ZXJhdG9yIGN1cnJlbnQ0XzsKLSAgICBjb25z
dCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNT46Oml0ZXJhdG9yIGJlZ2luNV87Ci0gICAgY29u
c3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDU+OjppdGVyYXRvciBlbmQ1XzsKLSAgICB0eXBl
bmFtZSBQYXJhbUdlbmVyYXRvcjxUNT46Oml0ZXJhdG9yIGN1cnJlbnQ1XzsKLSAgICBjb25zdCB0
eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNj46Oml0ZXJhdG9yIGJlZ2luNl87Ci0gICAgY29uc3Qg
dHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDY+OjppdGVyYXRvciBlbmQ2XzsKLSAgICB0eXBlbmFt
ZSBQYXJhbUdlbmVyYXRvcjxUNj46Oml0ZXJhdG9yIGN1cnJlbnQ2XzsKLSAgICBjb25zdCB0eXBl
bmFtZSBQYXJhbUdlbmVyYXRvcjxUNz46Oml0ZXJhdG9yIGJlZ2luN187Ci0gICAgY29uc3QgdHlw
ZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDc+OjppdGVyYXRvciBlbmQ3XzsKLSAgICB0eXBlbmFtZSBQ
YXJhbUdlbmVyYXRvcjxUNz46Oml0ZXJhdG9yIGN1cnJlbnQ3XzsKLSAgICBjb25zdCB0eXBlbmFt
ZSBQYXJhbUdlbmVyYXRvcjxUOD46Oml0ZXJhdG9yIGJlZ2luOF87Ci0gICAgY29uc3QgdHlwZW5h
bWUgUGFyYW1HZW5lcmF0b3I8VDg+OjppdGVyYXRvciBlbmQ4XzsKLSAgICB0eXBlbmFtZSBQYXJh
bUdlbmVyYXRvcjxUOD46Oml0ZXJhdG9yIGN1cnJlbnQ4XzsKLSAgICBsaW5rZWRfcHRyPFBhcmFt
VHlwZT4gY3VycmVudF92YWx1ZV87Ci0gIH07ICAvLyBjbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0R2Vu
ZXJhdG9yODo6SXRlcmF0b3IKLQotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQg
aXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IENhcnRlc2lhblByb2R1Y3RH
ZW5lcmF0b3I4JiBvdGhlcik7Ci0KLSAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDE+IGcxXzsKLSAg
Y29uc3QgUGFyYW1HZW5lcmF0b3I8VDI+IGcyXzsKLSAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDM+
IGczXzsKLSAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDQ+IGc0XzsKLSAgY29uc3QgUGFyYW1HZW5l
cmF0b3I8VDU+IGc1XzsKLSAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDY+IGc2XzsKLSAgY29uc3Qg
UGFyYW1HZW5lcmF0b3I8VDc+IGc3XzsKLSAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDg+IGc4XzsK
LX07ICAvLyBjbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yOAotCi0KLXRlbXBsYXRlIDx0
eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5h
bWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5h
bWUgVDk+Ci1jbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yOQotICAgIDogcHVibGljIFBh
cmFtR2VuZXJhdG9ySW50ZXJmYWNlPCA6OnRlc3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDMsIFQ0LCBU
NSwgVDYsCi0gICAgICAgIFQ3LCBUOCwgVDk+ID4gewotIHB1YmxpYzoKLSAgdHlwZWRlZiA6OnRl
c3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDk+IFBhcmFtVHlw
ZTsKLQotICBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yOShjb25zdCBQYXJhbUdlbmVyYXRvcjxU
MT4mIGcxLAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDI+JiBnMiwgY29uc3QgUGFyYW1H
ZW5lcmF0b3I8VDM+JiBnMywKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ0PiYgZzQsIGNv
bnN0IFBhcmFtR2VuZXJhdG9yPFQ1PiYgZzUsCi0gICAgICBjb25zdCBQYXJhbUdlbmVyYXRvcjxU
Nj4mIGc2LCBjb25zdCBQYXJhbUdlbmVyYXRvcjxUNz4mIGc3LAotICAgICAgY29uc3QgUGFyYW1H
ZW5lcmF0b3I8VDg+JiBnOCwgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDk+JiBnOSkKLSAgICAgIDog
ZzFfKGcxKSwgZzJfKGcyKSwgZzNfKGczKSwgZzRfKGc0KSwgZzVfKGc1KSwgZzZfKGc2KSwgZzdf
KGc3KSwgZzhfKGc4KSwKLSAgICAgICAgICBnOV8oZzkpIHt9Ci0gIHZpcnR1YWwgfkNhcnRlc2lh
blByb2R1Y3RHZW5lcmF0b3I5KCkge30KLQotICB2aXJ0dWFsIFBhcmFtSXRlcmF0b3JJbnRlcmZh
Y2U8UGFyYW1UeXBlPiogQmVnaW4oKSBjb25zdCB7Ci0gICAgcmV0dXJuIG5ldyBJdGVyYXRvcih0
aGlzLCBnMV8sIGcxXy5iZWdpbigpLCBnMl8sIGcyXy5iZWdpbigpLCBnM18sCi0gICAgICAgIGcz
Xy5iZWdpbigpLCBnNF8sIGc0Xy5iZWdpbigpLCBnNV8sIGc1Xy5iZWdpbigpLCBnNl8sIGc2Xy5i
ZWdpbigpLCBnN18sCi0gICAgICAgIGc3Xy5iZWdpbigpLCBnOF8sIGc4Xy5iZWdpbigpLCBnOV8s
IGc5Xy5iZWdpbigpKTsKLSAgfQotICB2aXJ0dWFsIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFy
YW1UeXBlPiogRW5kKCkgY29uc3QgewotICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhpcywgZzFf
LCBnMV8uZW5kKCksIGcyXywgZzJfLmVuZCgpLCBnM18sIGczXy5lbmQoKSwKLSAgICAgICAgZzRf
LCBnNF8uZW5kKCksIGc1XywgZzVfLmVuZCgpLCBnNl8sIGc2Xy5lbmQoKSwgZzdfLCBnN18uZW5k
KCksIGc4XywKLSAgICAgICAgZzhfLmVuZCgpLCBnOV8sIGc5Xy5lbmQoKSk7Ci0gIH0KLQotIHBy
aXZhdGU6Ci0gIGNsYXNzIEl0ZXJhdG9yIDogcHVibGljIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8
UGFyYW1UeXBlPiB7Ci0gICBwdWJsaWM6Ci0gICAgSXRlcmF0b3IoY29uc3QgUGFyYW1HZW5lcmF0
b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogYmFzZSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9y
PFQxPiYgZzEsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMT46Oml0ZXJh
dG9yJiBjdXJyZW50MSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQyPiYgZzIsCi0gICAg
ICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMj46Oml0ZXJhdG9yJiBjdXJyZW50MiwK
LSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQzPiYgZzMsCi0gICAgICBjb25zdCB0eXBlbmFt
ZSBQYXJhbUdlbmVyYXRvcjxUMz46Oml0ZXJhdG9yJiBjdXJyZW50MywKLSAgICAgIGNvbnN0IFBh
cmFtR2VuZXJhdG9yPFQ0PiYgZzQsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRv
cjxUND46Oml0ZXJhdG9yJiBjdXJyZW50NCwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ1
PiYgZzUsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNT46Oml0ZXJhdG9y
JiBjdXJyZW50NSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ2PiYgZzYsCi0gICAgICBj
b25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNj46Oml0ZXJhdG9yJiBjdXJyZW50NiwKLSAg
ICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ3PiYgZzcsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQ
YXJhbUdlbmVyYXRvcjxUNz46Oml0ZXJhdG9yJiBjdXJyZW50NywKLSAgICAgIGNvbnN0IFBhcmFt
R2VuZXJhdG9yPFQ4PiYgZzgsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxU
OD46Oml0ZXJhdG9yJiBjdXJyZW50OCwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ5PiYg
ZzksCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUOT46Oml0ZXJhdG9yJiBj
dXJyZW50OSkKLSAgICAgICAgOiBiYXNlXyhiYXNlKSwKLSAgICAgICAgICBiZWdpbjFfKGcxLmJl
Z2luKCkpLCBlbmQxXyhnMS5lbmQoKSksIGN1cnJlbnQxXyhjdXJyZW50MSksCi0gICAgICAgICAg
YmVnaW4yXyhnMi5iZWdpbigpKSwgZW5kMl8oZzIuZW5kKCkpLCBjdXJyZW50Ml8oY3VycmVudDIp
LAotICAgICAgICAgIGJlZ2luM18oZzMuYmVnaW4oKSksIGVuZDNfKGczLmVuZCgpKSwgY3VycmVu
dDNfKGN1cnJlbnQzKSwKLSAgICAgICAgICBiZWdpbjRfKGc0LmJlZ2luKCkpLCBlbmQ0XyhnNC5l
bmQoKSksIGN1cnJlbnQ0XyhjdXJyZW50NCksCi0gICAgICAgICAgYmVnaW41XyhnNS5iZWdpbigp
KSwgZW5kNV8oZzUuZW5kKCkpLCBjdXJyZW50NV8oY3VycmVudDUpLAotICAgICAgICAgIGJlZ2lu
Nl8oZzYuYmVnaW4oKSksIGVuZDZfKGc2LmVuZCgpKSwgY3VycmVudDZfKGN1cnJlbnQ2KSwKLSAg
ICAgICAgICBiZWdpbjdfKGc3LmJlZ2luKCkpLCBlbmQ3XyhnNy5lbmQoKSksIGN1cnJlbnQ3Xyhj
dXJyZW50NyksCi0gICAgICAgICAgYmVnaW44XyhnOC5iZWdpbigpKSwgZW5kOF8oZzguZW5kKCkp
LCBjdXJyZW50OF8oY3VycmVudDgpLAotICAgICAgICAgIGJlZ2luOV8oZzkuYmVnaW4oKSksIGVu
ZDlfKGc5LmVuZCgpKSwgY3VycmVudDlfKGN1cnJlbnQ5KSAgICB7Ci0gICAgICBDb21wdXRlQ3Vy
cmVudFZhbHVlKCk7Ci0gICAgfQotICAgIHZpcnR1YWwgfkl0ZXJhdG9yKCkge30KLQotICAgIHZp
cnR1YWwgY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogQmFzZUdlbmVy
YXRvcigpIGNvbnN0IHsKLSAgICAgIHJldHVybiBiYXNlXzsKLSAgICB9Ci0gICAgLy8gQWR2YW5j
ZSBzaG91bGQgbm90IGJlIGNhbGxlZCBvbiBiZXlvbmQtb2YtcmFuZ2UgaXRlcmF0b3JzCi0gICAg
Ly8gc28gbm8gY29tcG9uZW50IGl0ZXJhdG9ycyBtdXN0IGJlIGJleW9uZCBlbmQgb2YgcmFuZ2Us
IGVpdGhlci4KLSAgICB2aXJ0dWFsIHZvaWQgQWR2YW5jZSgpIHsKLSAgICAgIGFzc2VydCghQXRF
bmQoKSk7Ci0gICAgICArK2N1cnJlbnQ5XzsKLSAgICAgIGlmIChjdXJyZW50OV8gPT0gZW5kOV8p
IHsKLSAgICAgICAgY3VycmVudDlfID0gYmVnaW45XzsKLSAgICAgICAgKytjdXJyZW50OF87Ci0g
ICAgICB9Ci0gICAgICBpZiAoY3VycmVudDhfID09IGVuZDhfKSB7Ci0gICAgICAgIGN1cnJlbnQ4
XyA9IGJlZ2luOF87Ci0gICAgICAgICsrY3VycmVudDdfOwotICAgICAgfQotICAgICAgaWYgKGN1
cnJlbnQ3XyA9PSBlbmQ3XykgewotICAgICAgICBjdXJyZW50N18gPSBiZWdpbjdfOwotICAgICAg
ICArK2N1cnJlbnQ2XzsKLSAgICAgIH0KLSAgICAgIGlmIChjdXJyZW50Nl8gPT0gZW5kNl8pIHsK
LSAgICAgICAgY3VycmVudDZfID0gYmVnaW42XzsKLSAgICAgICAgKytjdXJyZW50NV87Ci0gICAg
ICB9Ci0gICAgICBpZiAoY3VycmVudDVfID09IGVuZDVfKSB7Ci0gICAgICAgIGN1cnJlbnQ1XyA9
IGJlZ2luNV87Ci0gICAgICAgICsrY3VycmVudDRfOwotICAgICAgfQotICAgICAgaWYgKGN1cnJl
bnQ0XyA9PSBlbmQ0XykgewotICAgICAgICBjdXJyZW50NF8gPSBiZWdpbjRfOwotICAgICAgICAr
K2N1cnJlbnQzXzsKLSAgICAgIH0KLSAgICAgIGlmIChjdXJyZW50M18gPT0gZW5kM18pIHsKLSAg
ICAgICAgY3VycmVudDNfID0gYmVnaW4zXzsKLSAgICAgICAgKytjdXJyZW50Ml87Ci0gICAgICB9
Ci0gICAgICBpZiAoY3VycmVudDJfID09IGVuZDJfKSB7Ci0gICAgICAgIGN1cnJlbnQyXyA9IGJl
Z2luMl87Ci0gICAgICAgICsrY3VycmVudDFfOwotICAgICAgfQotICAgICAgQ29tcHV0ZUN1cnJl
bnRWYWx1ZSgpOwotICAgIH0KLSAgICB2aXJ0dWFsIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFy
YW1UeXBlPiogQ2xvbmUoKSBjb25zdCB7Ci0gICAgICByZXR1cm4gbmV3IEl0ZXJhdG9yKCp0aGlz
KTsKLSAgICB9Ci0gICAgdmlydHVhbCBjb25zdCBQYXJhbVR5cGUqIEN1cnJlbnQoKSBjb25zdCB7
IHJldHVybiBjdXJyZW50X3ZhbHVlXy5nZXQoKTsgfQotICAgIHZpcnR1YWwgYm9vbCBFcXVhbHMo
Y29uc3QgUGFyYW1JdGVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+JiBvdGhlcikgY29uc3Qgewot
ICAgICAgLy8gSGF2aW5nIHRoZSBzYW1lIGJhc2UgZ2VuZXJhdG9yIGd1YXJhbnRlZXMgdGhhdCB0
aGUgb3RoZXIKLSAgICAgIC8vIGl0ZXJhdG9yIGlzIG9mIHRoZSBzYW1lIHR5cGUgYW5kIHdlIGNh
biBkb3duY2FzdC4KLSAgICAgIEdURVNUX0NIRUNLXyhCYXNlR2VuZXJhdG9yKCkgPT0gb3RoZXIu
QmFzZUdlbmVyYXRvcigpKQotICAgICAgICAgIDw8ICJUaGUgcHJvZ3JhbSBhdHRlbXB0ZWQgdG8g
Y29tcGFyZSBpdGVyYXRvcnMgIgotICAgICAgICAgIDw8ICJmcm9tIGRpZmZlcmVudCBnZW5lcmF0
b3JzLiIgPDwgc3RkOjplbmRsOwotICAgICAgY29uc3QgSXRlcmF0b3IqIHR5cGVkX290aGVyID0K
LSAgICAgICAgICBDaGVja2VkRG93bmNhc3RUb0FjdHVhbFR5cGU8Y29uc3QgSXRlcmF0b3I+KCZv
dGhlcik7Ci0gICAgICAvLyBXZSBtdXN0IHJlcG9ydCBpdGVyYXRvcnMgZXF1YWwgaWYgdGhleSBi
b3RoIHBvaW50IGJleW9uZCB0aGVpcgotICAgICAgLy8gcmVzcGVjdGl2ZSByYW5nZXMuIFRoYXQg
Y2FuIGhhcHBlbiBpbiBhIHZhcmlldHkgb2YgZmFzaGlvbnMsCi0gICAgICAvLyBzbyB3ZSBoYXZl
IHRvIGNvbnN1bHQgQXRFbmQoKS4KLSAgICAgIHJldHVybiAoQXRFbmQoKSAmJiB0eXBlZF9vdGhl
ci0+QXRFbmQoKSkgfHwKLSAgICAgICAgICgKLSAgICAgICAgICBjdXJyZW50MV8gPT0gdHlwZWRf
b3RoZXItPmN1cnJlbnQxXyAmJgotICAgICAgICAgIGN1cnJlbnQyXyA9PSB0eXBlZF9vdGhlci0+
Y3VycmVudDJfICYmCi0gICAgICAgICAgY3VycmVudDNfID09IHR5cGVkX290aGVyLT5jdXJyZW50
M18gJiYKLSAgICAgICAgICBjdXJyZW50NF8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQ0XyAmJgot
ICAgICAgICAgIGN1cnJlbnQ1XyA9PSB0eXBlZF9vdGhlci0+Y3VycmVudDVfICYmCi0gICAgICAg
ICAgY3VycmVudDZfID09IHR5cGVkX290aGVyLT5jdXJyZW50Nl8gJiYKLSAgICAgICAgICBjdXJy
ZW50N18gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQ3XyAmJgotICAgICAgICAgIGN1cnJlbnQ4XyA9
PSB0eXBlZF9vdGhlci0+Y3VycmVudDhfICYmCi0gICAgICAgICAgY3VycmVudDlfID09IHR5cGVk
X290aGVyLT5jdXJyZW50OV8pOwotICAgIH0KLQotICAgcHJpdmF0ZToKLSAgICBJdGVyYXRvcihj
b25zdCBJdGVyYXRvciYgb3RoZXIpCi0gICAgICAgIDogYmFzZV8ob3RoZXIuYmFzZV8pLAotICAg
ICAgICBiZWdpbjFfKG90aGVyLmJlZ2luMV8pLAotICAgICAgICBlbmQxXyhvdGhlci5lbmQxXyks
Ci0gICAgICAgIGN1cnJlbnQxXyhvdGhlci5jdXJyZW50MV8pLAotICAgICAgICBiZWdpbjJfKG90
aGVyLmJlZ2luMl8pLAotICAgICAgICBlbmQyXyhvdGhlci5lbmQyXyksCi0gICAgICAgIGN1cnJl
bnQyXyhvdGhlci5jdXJyZW50Ml8pLAotICAgICAgICBiZWdpbjNfKG90aGVyLmJlZ2luM18pLAot
ICAgICAgICBlbmQzXyhvdGhlci5lbmQzXyksCi0gICAgICAgIGN1cnJlbnQzXyhvdGhlci5jdXJy
ZW50M18pLAotICAgICAgICBiZWdpbjRfKG90aGVyLmJlZ2luNF8pLAotICAgICAgICBlbmQ0Xyhv
dGhlci5lbmQ0XyksCi0gICAgICAgIGN1cnJlbnQ0XyhvdGhlci5jdXJyZW50NF8pLAotICAgICAg
ICBiZWdpbjVfKG90aGVyLmJlZ2luNV8pLAotICAgICAgICBlbmQ1XyhvdGhlci5lbmQ1XyksCi0g
ICAgICAgIGN1cnJlbnQ1XyhvdGhlci5jdXJyZW50NV8pLAotICAgICAgICBiZWdpbjZfKG90aGVy
LmJlZ2luNl8pLAotICAgICAgICBlbmQ2XyhvdGhlci5lbmQ2XyksCi0gICAgICAgIGN1cnJlbnQ2
XyhvdGhlci5jdXJyZW50Nl8pLAotICAgICAgICBiZWdpbjdfKG90aGVyLmJlZ2luN18pLAotICAg
ICAgICBlbmQ3XyhvdGhlci5lbmQ3XyksCi0gICAgICAgIGN1cnJlbnQ3XyhvdGhlci5jdXJyZW50
N18pLAotICAgICAgICBiZWdpbjhfKG90aGVyLmJlZ2luOF8pLAotICAgICAgICBlbmQ4XyhvdGhl
ci5lbmQ4XyksCi0gICAgICAgIGN1cnJlbnQ4XyhvdGhlci5jdXJyZW50OF8pLAotICAgICAgICBi
ZWdpbjlfKG90aGVyLmJlZ2luOV8pLAotICAgICAgICBlbmQ5XyhvdGhlci5lbmQ5XyksCi0gICAg
ICAgIGN1cnJlbnQ5XyhvdGhlci5jdXJyZW50OV8pIHsKLSAgICAgIENvbXB1dGVDdXJyZW50VmFs
dWUoKTsKLSAgICB9Ci0KLSAgICB2b2lkIENvbXB1dGVDdXJyZW50VmFsdWUoKSB7Ci0gICAgICBp
ZiAoIUF0RW5kKCkpCi0gICAgICAgIGN1cnJlbnRfdmFsdWVfLnJlc2V0KG5ldyBQYXJhbVR5cGUo
KmN1cnJlbnQxXywgKmN1cnJlbnQyXywgKmN1cnJlbnQzXywKLSAgICAgICAgICAgICpjdXJyZW50
NF8sICpjdXJyZW50NV8sICpjdXJyZW50Nl8sICpjdXJyZW50N18sICpjdXJyZW50OF8sCi0gICAg
ICAgICAgICAqY3VycmVudDlfKSk7Ci0gICAgfQotICAgIGJvb2wgQXRFbmQoKSBjb25zdCB7Ci0g
ICAgICAvLyBXZSBtdXN0IHJlcG9ydCBpdGVyYXRvciBwYXN0IHRoZSBlbmQgb2YgdGhlIHJhbmdl
IHdoZW4gZWl0aGVyIG9mIHRoZQotICAgICAgLy8gY29tcG9uZW50IGl0ZXJhdG9ycyBoYXMgcmVh
Y2hlZCB0aGUgZW5kIG9mIGl0cyByYW5nZS4KLSAgICAgIHJldHVybgotICAgICAgICAgIGN1cnJl
bnQxXyA9PSBlbmQxXyB8fAotICAgICAgICAgIGN1cnJlbnQyXyA9PSBlbmQyXyB8fAotICAgICAg
ICAgIGN1cnJlbnQzXyA9PSBlbmQzXyB8fAotICAgICAgICAgIGN1cnJlbnQ0XyA9PSBlbmQ0XyB8
fAotICAgICAgICAgIGN1cnJlbnQ1XyA9PSBlbmQ1XyB8fAotICAgICAgICAgIGN1cnJlbnQ2XyA9
PSBlbmQ2XyB8fAotICAgICAgICAgIGN1cnJlbnQ3XyA9PSBlbmQ3XyB8fAotICAgICAgICAgIGN1
cnJlbnQ4XyA9PSBlbmQ4XyB8fAotICAgICAgICAgIGN1cnJlbnQ5XyA9PSBlbmQ5XzsKLSAgICB9
Ci0KLSAgICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQu
Ci0gICAgdm9pZCBvcGVyYXRvcj0oY29uc3QgSXRlcmF0b3ImIG90aGVyKTsKLQotICAgIGNvbnN0
IFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIGNvbnN0IGJhc2VfOwotICAgIC8v
IGJlZ2luW2ldXyBhbmQgZW5kW2ldXyBkZWZpbmUgdGhlIGktdGggcmFuZ2UgdGhhdCBJdGVyYXRv
ciB0cmF2ZXJzZXMuCi0gICAgLy8gY3VycmVudFtpXV8gaXMgdGhlIGFjdHVhbCB0cmF2ZXJzaW5n
IGl0ZXJhdG9yLgotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQxPjo6aXRlcmF0
b3IgYmVnaW4xXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMT46Oml0ZXJh
dG9yIGVuZDFfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQxPjo6aXRlcmF0b3IgY3Vy
cmVudDFfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQyPjo6aXRlcmF0b3Ig
YmVnaW4yXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMj46Oml0ZXJhdG9y
IGVuZDJfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQyPjo6aXRlcmF0b3IgY3VycmVu
dDJfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQzPjo6aXRlcmF0b3IgYmVn
aW4zXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMz46Oml0ZXJhdG9yIGVu
ZDNfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQzPjo6aXRlcmF0b3IgY3VycmVudDNf
OwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ0Pjo6aXRlcmF0b3IgYmVnaW40
XzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUND46Oml0ZXJhdG9yIGVuZDRf
OwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ0Pjo6aXRlcmF0b3IgY3VycmVudDRfOwot
ICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ1Pjo6aXRlcmF0b3IgYmVnaW41XzsK
LSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNT46Oml0ZXJhdG9yIGVuZDVfOwot
ICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ1Pjo6aXRlcmF0b3IgY3VycmVudDVfOwotICAg
IGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ2Pjo6aXRlcmF0b3IgYmVnaW42XzsKLSAg
ICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNj46Oml0ZXJhdG9yIGVuZDZfOwotICAg
IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ2Pjo6aXRlcmF0b3IgY3VycmVudDZfOwotICAgIGNv
bnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ3Pjo6aXRlcmF0b3IgYmVnaW43XzsKLSAgICBj
b25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNz46Oml0ZXJhdG9yIGVuZDdfOwotICAgIHR5
cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ3Pjo6aXRlcmF0b3IgY3VycmVudDdfOwotICAgIGNvbnN0
IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ4Pjo6aXRlcmF0b3IgYmVnaW44XzsKLSAgICBjb25z
dCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUOD46Oml0ZXJhdG9yIGVuZDhfOwotICAgIHR5cGVu
YW1lIFBhcmFtR2VuZXJhdG9yPFQ4Pjo6aXRlcmF0b3IgY3VycmVudDhfOwotICAgIGNvbnN0IHR5
cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ5Pjo6aXRlcmF0b3IgYmVnaW45XzsKLSAgICBjb25zdCB0
eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUOT46Oml0ZXJhdG9yIGVuZDlfOwotICAgIHR5cGVuYW1l
IFBhcmFtR2VuZXJhdG9yPFQ5Pjo6aXRlcmF0b3IgY3VycmVudDlfOwotICAgIGxpbmtlZF9wdHI8
UGFyYW1UeXBlPiBjdXJyZW50X3ZhbHVlXzsKLSAgfTsgIC8vIGNsYXNzIENhcnRlc2lhblByb2R1
Y3RHZW5lcmF0b3I5OjpJdGVyYXRvcgotCi0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdu
bWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgQ2FydGVzaWFuUHJv
ZHVjdEdlbmVyYXRvcjkmIG90aGVyKTsKLQotICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUMT4gZzFf
OwotICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUMj4gZzJfOwotICBjb25zdCBQYXJhbUdlbmVyYXRv
cjxUMz4gZzNfOwotICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUND4gZzRfOwotICBjb25zdCBQYXJh
bUdlbmVyYXRvcjxUNT4gZzVfOwotICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUNj4gZzZfOwotICBj
b25zdCBQYXJhbUdlbmVyYXRvcjxUNz4gZzdfOwotICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUOD4g
ZzhfOwotICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUOT4gZzlfOwotfTsgIC8vIGNsYXNzIENhcnRl
c2lhblByb2R1Y3RHZW5lcmF0b3I5Ci0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFt
ZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFt
ZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEw
PgotY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjEwCi0gICAgOiBwdWJsaWMgUGFyYW1H
ZW5lcmF0b3JJbnRlcmZhY2U8IDo6dGVzdGluZzo6dHVwbGU8VDEsIFQyLCBUMywgVDQsIFQ1LCBU
NiwKLSAgICAgICAgVDcsIFQ4LCBUOSwgVDEwPiA+IHsKLSBwdWJsaWM6Ci0gIHR5cGVkZWYgOjp0
ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTA+IFBh
cmFtVHlwZTsKLQotICBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yMTAoY29uc3QgUGFyYW1HZW5l
cmF0b3I8VDE+JiBnMSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQyPiYgZzIsIGNvbnN0
IFBhcmFtR2VuZXJhdG9yPFQzPiYgZzMsCi0gICAgICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUND4m
IGc0LCBjb25zdCBQYXJhbUdlbmVyYXRvcjxUNT4mIGc1LAotICAgICAgY29uc3QgUGFyYW1HZW5l
cmF0b3I8VDY+JiBnNiwgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDc+JiBnNywKLSAgICAgIGNvbnN0
IFBhcmFtR2VuZXJhdG9yPFQ4PiYgZzgsIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ5PiYgZzksCi0g
ICAgICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUMTA+JiBnMTApCi0gICAgICA6IGcxXyhnMSksIGcy
XyhnMiksIGczXyhnMyksIGc0XyhnNCksIGc1XyhnNSksIGc2XyhnNiksIGc3XyhnNyksIGc4Xyhn
OCksCi0gICAgICAgICAgZzlfKGc5KSwgZzEwXyhnMTApIHt9Ci0gIHZpcnR1YWwgfkNhcnRlc2lh
blByb2R1Y3RHZW5lcmF0b3IxMCgpIHt9Ci0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJm
YWNlPFBhcmFtVHlwZT4qIEJlZ2luKCkgY29uc3QgewotICAgIHJldHVybiBuZXcgSXRlcmF0b3Io
dGhpcywgZzFfLCBnMV8uYmVnaW4oKSwgZzJfLCBnMl8uYmVnaW4oKSwgZzNfLAotICAgICAgICBn
M18uYmVnaW4oKSwgZzRfLCBnNF8uYmVnaW4oKSwgZzVfLCBnNV8uYmVnaW4oKSwgZzZfLCBnNl8u
YmVnaW4oKSwgZzdfLAotICAgICAgICBnN18uYmVnaW4oKSwgZzhfLCBnOF8uYmVnaW4oKSwgZzlf
LCBnOV8uYmVnaW4oKSwgZzEwXywgZzEwXy5iZWdpbigpKTsKLSAgfQotICB2aXJ0dWFsIFBhcmFt
SXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogRW5kKCkgY29uc3QgewotICAgIHJldHVybiBu
ZXcgSXRlcmF0b3IodGhpcywgZzFfLCBnMV8uZW5kKCksIGcyXywgZzJfLmVuZCgpLCBnM18sIGcz
Xy5lbmQoKSwKLSAgICAgICAgZzRfLCBnNF8uZW5kKCksIGc1XywgZzVfLmVuZCgpLCBnNl8sIGc2
Xy5lbmQoKSwgZzdfLCBnN18uZW5kKCksIGc4XywKLSAgICAgICAgZzhfLmVuZCgpLCBnOV8sIGc5
Xy5lbmQoKSwgZzEwXywgZzEwXy5lbmQoKSk7Ci0gIH0KLQotIHByaXZhdGU6Ci0gIGNsYXNzIEl0
ZXJhdG9yIDogcHVibGljIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiB7Ci0gICBw
dWJsaWM6Ci0gICAgSXRlcmF0b3IoY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1U
eXBlPiogYmFzZSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQxPiYgZzEsCi0gICAgICBj
b25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMT46Oml0ZXJhdG9yJiBjdXJyZW50MSwKLSAg
ICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQyPiYgZzIsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQ
YXJhbUdlbmVyYXRvcjxUMj46Oml0ZXJhdG9yJiBjdXJyZW50MiwKLSAgICAgIGNvbnN0IFBhcmFt
R2VuZXJhdG9yPFQzPiYgZzMsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxU
Mz46Oml0ZXJhdG9yJiBjdXJyZW50MywKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ0PiYg
ZzQsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUND46Oml0ZXJhdG9yJiBj
dXJyZW50NCwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ1PiYgZzUsCi0gICAgICBjb25z
dCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNT46Oml0ZXJhdG9yJiBjdXJyZW50NSwKLSAgICAg
IGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ2PiYgZzYsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJh
bUdlbmVyYXRvcjxUNj46Oml0ZXJhdG9yJiBjdXJyZW50NiwKLSAgICAgIGNvbnN0IFBhcmFtR2Vu
ZXJhdG9yPFQ3PiYgZzcsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNz46
Oml0ZXJhdG9yJiBjdXJyZW50NywKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ4PiYgZzgs
Ci0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUOD46Oml0ZXJhdG9yJiBjdXJy
ZW50OCwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ5PiYgZzksCi0gICAgICBjb25zdCB0
eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUOT46Oml0ZXJhdG9yJiBjdXJyZW50OSwKLSAgICAgIGNv
bnN0IFBhcmFtR2VuZXJhdG9yPFQxMD4mIGcxMCwKLSAgICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFt
R2VuZXJhdG9yPFQxMD46Oml0ZXJhdG9yJiBjdXJyZW50MTApCi0gICAgICAgIDogYmFzZV8oYmFz
ZSksCi0gICAgICAgICAgYmVnaW4xXyhnMS5iZWdpbigpKSwgZW5kMV8oZzEuZW5kKCkpLCBjdXJy
ZW50MV8oY3VycmVudDEpLAotICAgICAgICAgIGJlZ2luMl8oZzIuYmVnaW4oKSksIGVuZDJfKGcy
LmVuZCgpKSwgY3VycmVudDJfKGN1cnJlbnQyKSwKLSAgICAgICAgICBiZWdpbjNfKGczLmJlZ2lu
KCkpLCBlbmQzXyhnMy5lbmQoKSksIGN1cnJlbnQzXyhjdXJyZW50MyksCi0gICAgICAgICAgYmVn
aW40XyhnNC5iZWdpbigpKSwgZW5kNF8oZzQuZW5kKCkpLCBjdXJyZW50NF8oY3VycmVudDQpLAot
ICAgICAgICAgIGJlZ2luNV8oZzUuYmVnaW4oKSksIGVuZDVfKGc1LmVuZCgpKSwgY3VycmVudDVf
KGN1cnJlbnQ1KSwKLSAgICAgICAgICBiZWdpbjZfKGc2LmJlZ2luKCkpLCBlbmQ2XyhnNi5lbmQo
KSksIGN1cnJlbnQ2XyhjdXJyZW50NiksCi0gICAgICAgICAgYmVnaW43XyhnNy5iZWdpbigpKSwg
ZW5kN18oZzcuZW5kKCkpLCBjdXJyZW50N18oY3VycmVudDcpLAotICAgICAgICAgIGJlZ2luOF8o
ZzguYmVnaW4oKSksIGVuZDhfKGc4LmVuZCgpKSwgY3VycmVudDhfKGN1cnJlbnQ4KSwKLSAgICAg
ICAgICBiZWdpbjlfKGc5LmJlZ2luKCkpLCBlbmQ5XyhnOS5lbmQoKSksIGN1cnJlbnQ5XyhjdXJy
ZW50OSksCi0gICAgICAgICAgYmVnaW4xMF8oZzEwLmJlZ2luKCkpLCBlbmQxMF8oZzEwLmVuZCgp
KSwgY3VycmVudDEwXyhjdXJyZW50MTApICAgIHsKLSAgICAgIENvbXB1dGVDdXJyZW50VmFsdWUo
KTsKLSAgICB9Ci0gICAgdmlydHVhbCB+SXRlcmF0b3IoKSB7fQotCi0gICAgdmlydHVhbCBjb25z
dCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+KiBCYXNlR2VuZXJhdG9yKCkgY29u
c3QgewotICAgICAgcmV0dXJuIGJhc2VfOwotICAgIH0KLSAgICAvLyBBZHZhbmNlIHNob3VsZCBu
b3QgYmUgY2FsbGVkIG9uIGJleW9uZC1vZi1yYW5nZSBpdGVyYXRvcnMKLSAgICAvLyBzbyBubyBj
b21wb25lbnQgaXRlcmF0b3JzIG11c3QgYmUgYmV5b25kIGVuZCBvZiByYW5nZSwgZWl0aGVyLgot
ICAgIHZpcnR1YWwgdm9pZCBBZHZhbmNlKCkgewotICAgICAgYXNzZXJ0KCFBdEVuZCgpKTsKLSAg
ICAgICsrY3VycmVudDEwXzsKLSAgICAgIGlmIChjdXJyZW50MTBfID09IGVuZDEwXykgewotICAg
ICAgICBjdXJyZW50MTBfID0gYmVnaW4xMF87Ci0gICAgICAgICsrY3VycmVudDlfOwotICAgICAg
fQotICAgICAgaWYgKGN1cnJlbnQ5XyA9PSBlbmQ5XykgewotICAgICAgICBjdXJyZW50OV8gPSBi
ZWdpbjlfOwotICAgICAgICArK2N1cnJlbnQ4XzsKLSAgICAgIH0KLSAgICAgIGlmIChjdXJyZW50
OF8gPT0gZW5kOF8pIHsKLSAgICAgICAgY3VycmVudDhfID0gYmVnaW44XzsKLSAgICAgICAgKytj
dXJyZW50N187Ci0gICAgICB9Ci0gICAgICBpZiAoY3VycmVudDdfID09IGVuZDdfKSB7Ci0gICAg
ICAgIGN1cnJlbnQ3XyA9IGJlZ2luN187Ci0gICAgICAgICsrY3VycmVudDZfOwotICAgICAgfQot
ICAgICAgaWYgKGN1cnJlbnQ2XyA9PSBlbmQ2XykgewotICAgICAgICBjdXJyZW50Nl8gPSBiZWdp
bjZfOwotICAgICAgICArK2N1cnJlbnQ1XzsKLSAgICAgIH0KLSAgICAgIGlmIChjdXJyZW50NV8g
PT0gZW5kNV8pIHsKLSAgICAgICAgY3VycmVudDVfID0gYmVnaW41XzsKLSAgICAgICAgKytjdXJy
ZW50NF87Ci0gICAgICB9Ci0gICAgICBpZiAoY3VycmVudDRfID09IGVuZDRfKSB7Ci0gICAgICAg
IGN1cnJlbnQ0XyA9IGJlZ2luNF87Ci0gICAgICAgICsrY3VycmVudDNfOwotICAgICAgfQotICAg
ICAgaWYgKGN1cnJlbnQzXyA9PSBlbmQzXykgewotICAgICAgICBjdXJyZW50M18gPSBiZWdpbjNf
OwotICAgICAgICArK2N1cnJlbnQyXzsKLSAgICAgIH0KLSAgICAgIGlmIChjdXJyZW50Ml8gPT0g
ZW5kMl8pIHsKLSAgICAgICAgY3VycmVudDJfID0gYmVnaW4yXzsKLSAgICAgICAgKytjdXJyZW50
MV87Ci0gICAgICB9Ci0gICAgICBDb21wdXRlQ3VycmVudFZhbHVlKCk7Ci0gICAgfQotICAgIHZp
cnR1YWwgUGFyYW1JdGVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+KiBDbG9uZSgpIGNvbnN0IHsK
LSAgICAgIHJldHVybiBuZXcgSXRlcmF0b3IoKnRoaXMpOwotICAgIH0KLSAgICB2aXJ0dWFsIGNv
bnN0IFBhcmFtVHlwZSogQ3VycmVudCgpIGNvbnN0IHsgcmV0dXJuIGN1cnJlbnRfdmFsdWVfLmdl
dCgpOyB9Ci0gICAgdmlydHVhbCBib29sIEVxdWFscyhjb25zdCBQYXJhbUl0ZXJhdG9ySW50ZXJm
YWNlPFBhcmFtVHlwZT4mIG90aGVyKSBjb25zdCB7Ci0gICAgICAvLyBIYXZpbmcgdGhlIHNhbWUg
YmFzZSBnZW5lcmF0b3IgZ3VhcmFudGVlcyB0aGF0IHRoZSBvdGhlcgotICAgICAgLy8gaXRlcmF0
b3IgaXMgb2YgdGhlIHNhbWUgdHlwZSBhbmQgd2UgY2FuIGRvd25jYXN0LgotICAgICAgR1RFU1Rf
Q0hFQ0tfKEJhc2VHZW5lcmF0b3IoKSA9PSBvdGhlci5CYXNlR2VuZXJhdG9yKCkpCi0gICAgICAg
ICAgPDwgIlRoZSBwcm9ncmFtIGF0dGVtcHRlZCB0byBjb21wYXJlIGl0ZXJhdG9ycyAiCi0gICAg
ICAgICAgPDwgImZyb20gZGlmZmVyZW50IGdlbmVyYXRvcnMuIiA8PCBzdGQ6OmVuZGw7Ci0gICAg
ICBjb25zdCBJdGVyYXRvciogdHlwZWRfb3RoZXIgPQotICAgICAgICAgIENoZWNrZWREb3duY2Fz
dFRvQWN0dWFsVHlwZTxjb25zdCBJdGVyYXRvcj4oJm90aGVyKTsKLSAgICAgIC8vIFdlIG11c3Qg
cmVwb3J0IGl0ZXJhdG9ycyBlcXVhbCBpZiB0aGV5IGJvdGggcG9pbnQgYmV5b25kIHRoZWlyCi0g
ICAgICAvLyByZXNwZWN0aXZlIHJhbmdlcy4gVGhhdCBjYW4gaGFwcGVuIGluIGEgdmFyaWV0eSBv
ZiBmYXNoaW9ucywKLSAgICAgIC8vIHNvIHdlIGhhdmUgdG8gY29uc3VsdCBBdEVuZCgpLgotICAg
ICAgcmV0dXJuIChBdEVuZCgpICYmIHR5cGVkX290aGVyLT5BdEVuZCgpKSB8fAotICAgICAgICAg
KAotICAgICAgICAgIGN1cnJlbnQxXyA9PSB0eXBlZF9vdGhlci0+Y3VycmVudDFfICYmCi0gICAg
ICAgICAgY3VycmVudDJfID09IHR5cGVkX290aGVyLT5jdXJyZW50Ml8gJiYKLSAgICAgICAgICBj
dXJyZW50M18gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQzXyAmJgotICAgICAgICAgIGN1cnJlbnQ0
XyA9PSB0eXBlZF9vdGhlci0+Y3VycmVudDRfICYmCi0gICAgICAgICAgY3VycmVudDVfID09IHR5
cGVkX290aGVyLT5jdXJyZW50NV8gJiYKLSAgICAgICAgICBjdXJyZW50Nl8gPT0gdHlwZWRfb3Ro
ZXItPmN1cnJlbnQ2XyAmJgotICAgICAgICAgIGN1cnJlbnQ3XyA9PSB0eXBlZF9vdGhlci0+Y3Vy
cmVudDdfICYmCi0gICAgICAgICAgY3VycmVudDhfID09IHR5cGVkX290aGVyLT5jdXJyZW50OF8g
JiYKLSAgICAgICAgICBjdXJyZW50OV8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQ5XyAmJgotICAg
ICAgICAgIGN1cnJlbnQxMF8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQxMF8pOwotICAgIH0KLQot
ICAgcHJpdmF0ZToKLSAgICBJdGVyYXRvcihjb25zdCBJdGVyYXRvciYgb3RoZXIpCi0gICAgICAg
IDogYmFzZV8ob3RoZXIuYmFzZV8pLAotICAgICAgICBiZWdpbjFfKG90aGVyLmJlZ2luMV8pLAot
ICAgICAgICBlbmQxXyhvdGhlci5lbmQxXyksCi0gICAgICAgIGN1cnJlbnQxXyhvdGhlci5jdXJy
ZW50MV8pLAotICAgICAgICBiZWdpbjJfKG90aGVyLmJlZ2luMl8pLAotICAgICAgICBlbmQyXyhv
dGhlci5lbmQyXyksCi0gICAgICAgIGN1cnJlbnQyXyhvdGhlci5jdXJyZW50Ml8pLAotICAgICAg
ICBiZWdpbjNfKG90aGVyLmJlZ2luM18pLAotICAgICAgICBlbmQzXyhvdGhlci5lbmQzXyksCi0g
ICAgICAgIGN1cnJlbnQzXyhvdGhlci5jdXJyZW50M18pLAotICAgICAgICBiZWdpbjRfKG90aGVy
LmJlZ2luNF8pLAotICAgICAgICBlbmQ0XyhvdGhlci5lbmQ0XyksCi0gICAgICAgIGN1cnJlbnQ0
XyhvdGhlci5jdXJyZW50NF8pLAotICAgICAgICBiZWdpbjVfKG90aGVyLmJlZ2luNV8pLAotICAg
ICAgICBlbmQ1XyhvdGhlci5lbmQ1XyksCi0gICAgICAgIGN1cnJlbnQ1XyhvdGhlci5jdXJyZW50
NV8pLAotICAgICAgICBiZWdpbjZfKG90aGVyLmJlZ2luNl8pLAotICAgICAgICBlbmQ2XyhvdGhl
ci5lbmQ2XyksCi0gICAgICAgIGN1cnJlbnQ2XyhvdGhlci5jdXJyZW50Nl8pLAotICAgICAgICBi
ZWdpbjdfKG90aGVyLmJlZ2luN18pLAotICAgICAgICBlbmQ3XyhvdGhlci5lbmQ3XyksCi0gICAg
ICAgIGN1cnJlbnQ3XyhvdGhlci5jdXJyZW50N18pLAotICAgICAgICBiZWdpbjhfKG90aGVyLmJl
Z2luOF8pLAotICAgICAgICBlbmQ4XyhvdGhlci5lbmQ4XyksCi0gICAgICAgIGN1cnJlbnQ4Xyhv
dGhlci5jdXJyZW50OF8pLAotICAgICAgICBiZWdpbjlfKG90aGVyLmJlZ2luOV8pLAotICAgICAg
ICBlbmQ5XyhvdGhlci5lbmQ5XyksCi0gICAgICAgIGN1cnJlbnQ5XyhvdGhlci5jdXJyZW50OV8p
LAotICAgICAgICBiZWdpbjEwXyhvdGhlci5iZWdpbjEwXyksCi0gICAgICAgIGVuZDEwXyhvdGhl
ci5lbmQxMF8pLAotICAgICAgICBjdXJyZW50MTBfKG90aGVyLmN1cnJlbnQxMF8pIHsKLSAgICAg
IENvbXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0KLSAgICB2b2lkIENvbXB1dGVDdXJyZW50
VmFsdWUoKSB7Ci0gICAgICBpZiAoIUF0RW5kKCkpCi0gICAgICAgIGN1cnJlbnRfdmFsdWVfLnJl
c2V0KG5ldyBQYXJhbVR5cGUoKmN1cnJlbnQxXywgKmN1cnJlbnQyXywgKmN1cnJlbnQzXywKLSAg
ICAgICAgICAgICpjdXJyZW50NF8sICpjdXJyZW50NV8sICpjdXJyZW50Nl8sICpjdXJyZW50N18s
ICpjdXJyZW50OF8sCi0gICAgICAgICAgICAqY3VycmVudDlfLCAqY3VycmVudDEwXykpOwotICAg
IH0KLSAgICBib29sIEF0RW5kKCkgY29uc3QgewotICAgICAgLy8gV2UgbXVzdCByZXBvcnQgaXRl
cmF0b3IgcGFzdCB0aGUgZW5kIG9mIHRoZSByYW5nZSB3aGVuIGVpdGhlciBvZiB0aGUKLSAgICAg
IC8vIGNvbXBvbmVudCBpdGVyYXRvcnMgaGFzIHJlYWNoZWQgdGhlIGVuZCBvZiBpdHMgcmFuZ2Uu
Ci0gICAgICByZXR1cm4KLSAgICAgICAgICBjdXJyZW50MV8gPT0gZW5kMV8gfHwKLSAgICAgICAg
ICBjdXJyZW50Ml8gPT0gZW5kMl8gfHwKLSAgICAgICAgICBjdXJyZW50M18gPT0gZW5kM18gfHwK
LSAgICAgICAgICBjdXJyZW50NF8gPT0gZW5kNF8gfHwKLSAgICAgICAgICBjdXJyZW50NV8gPT0g
ZW5kNV8gfHwKLSAgICAgICAgICBjdXJyZW50Nl8gPT0gZW5kNl8gfHwKLSAgICAgICAgICBjdXJy
ZW50N18gPT0gZW5kN18gfHwKLSAgICAgICAgICBjdXJyZW50OF8gPT0gZW5kOF8gfHwKLSAgICAg
ICAgICBjdXJyZW50OV8gPT0gZW5kOV8gfHwKLSAgICAgICAgICBjdXJyZW50MTBfID09IGVuZDEw
XzsKLSAgICB9Ci0KLSAgICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5z
dXBwb3J0ZWQuCi0gICAgdm9pZCBvcGVyYXRvcj0oY29uc3QgSXRlcmF0b3ImIG90aGVyKTsKLQot
ICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIGNvbnN0IGJhc2Vf
OwotICAgIC8vIGJlZ2luW2ldXyBhbmQgZW5kW2ldXyBkZWZpbmUgdGhlIGktdGggcmFuZ2UgdGhh
dCBJdGVyYXRvciB0cmF2ZXJzZXMuCi0gICAgLy8gY3VycmVudFtpXV8gaXMgdGhlIGFjdHVhbCB0
cmF2ZXJzaW5nIGl0ZXJhdG9yLgotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQx
Pjo6aXRlcmF0b3IgYmVnaW4xXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxU
MT46Oml0ZXJhdG9yIGVuZDFfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQxPjo6aXRl
cmF0b3IgY3VycmVudDFfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQyPjo6
aXRlcmF0b3IgYmVnaW4yXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMj46
Oml0ZXJhdG9yIGVuZDJfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQyPjo6aXRlcmF0
b3IgY3VycmVudDJfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQzPjo6aXRl
cmF0b3IgYmVnaW4zXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMz46Oml0
ZXJhdG9yIGVuZDNfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQzPjo6aXRlcmF0b3Ig
Y3VycmVudDNfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ0Pjo6aXRlcmF0
b3IgYmVnaW40XzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUND46Oml0ZXJh
dG9yIGVuZDRfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ0Pjo6aXRlcmF0b3IgY3Vy
cmVudDRfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ1Pjo6aXRlcmF0b3Ig
YmVnaW41XzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNT46Oml0ZXJhdG9y
IGVuZDVfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ1Pjo6aXRlcmF0b3IgY3VycmVu
dDVfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ2Pjo6aXRlcmF0b3IgYmVn
aW42XzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNj46Oml0ZXJhdG9yIGVu
ZDZfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ2Pjo6aXRlcmF0b3IgY3VycmVudDZf
OwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ3Pjo6aXRlcmF0b3IgYmVnaW43
XzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNz46Oml0ZXJhdG9yIGVuZDdf
OwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ3Pjo6aXRlcmF0b3IgY3VycmVudDdfOwot
ICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ4Pjo6aXRlcmF0b3IgYmVnaW44XzsK
LSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUOD46Oml0ZXJhdG9yIGVuZDhfOwot
ICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ4Pjo6aXRlcmF0b3IgY3VycmVudDhfOwotICAg
IGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ5Pjo6aXRlcmF0b3IgYmVnaW45XzsKLSAg
ICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUOT46Oml0ZXJhdG9yIGVuZDlfOwotICAg
IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ5Pjo6aXRlcmF0b3IgY3VycmVudDlfOwotICAgIGNv
bnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQxMD46Oml0ZXJhdG9yIGJlZ2luMTBfOwotICAg
IGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQxMD46Oml0ZXJhdG9yIGVuZDEwXzsKLSAg
ICB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMTA+OjppdGVyYXRvciBjdXJyZW50MTBfOwotICAg
IGxpbmtlZF9wdHI8UGFyYW1UeXBlPiBjdXJyZW50X3ZhbHVlXzsKLSAgfTsgIC8vIGNsYXNzIENh
cnRlc2lhblByb2R1Y3RHZW5lcmF0b3IxMDo6SXRlcmF0b3IKLQotICAvLyBObyBpbXBsZW1lbnRh
dGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0
IENhcnRlc2lhblByb2R1Y3RHZW5lcmF0b3IxMCYgb3RoZXIpOwotCi0gIGNvbnN0IFBhcmFtR2Vu
ZXJhdG9yPFQxPiBnMV87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQyPiBnMl87Ci0gIGNvbnN0
IFBhcmFtR2VuZXJhdG9yPFQzPiBnM187Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ0PiBnNF87
Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ1PiBnNV87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9y
PFQ2PiBnNl87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ3PiBnN187Ci0gIGNvbnN0IFBhcmFt
R2VuZXJhdG9yPFQ4PiBnOF87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ5PiBnOV87Ci0gIGNv
bnN0IFBhcmFtR2VuZXJhdG9yPFQxMD4gZzEwXzsKLX07ICAvLyBjbGFzcyBDYXJ0ZXNpYW5Qcm9k
dWN0R2VuZXJhdG9yMTAKLQotCi0vLyBJTlRFUk5BTCBJTVBMRU1FTlRBVElPTiAtIERPIE5PVCBV
U0UgSU4gVVNFUiBDT0RFLgotLy8KLS8vIEhlbHBlciBjbGFzc2VzIHByb3ZpZGluZyBDb21iaW5l
KCkgd2l0aCBwb2x5bW9ycGhpYyBmZWF0dXJlcy4gVGhleSBhbGxvdwotLy8gY2FzdGluZyBDYXJ0
ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yTjxUPiB0byBQYXJhbUdlbmVyYXRvcjxVPiBpZiBUIGlzCi0v
LyBjb252ZXJ0aWJsZSB0byBVLgotLy8KLXRlbXBsYXRlIDxjbGFzcyBHZW5lcmF0b3IxLCBjbGFz
cyBHZW5lcmF0b3IyPgotY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEhvbGRlcjIgewotIHB1YmxpYzoK
LUNhcnRlc2lhblByb2R1Y3RIb2xkZXIyKGNvbnN0IEdlbmVyYXRvcjEmIGcxLCBjb25zdCBHZW5l
cmF0b3IyJiBnMikKLSAgICAgIDogZzFfKGcxKSwgZzJfKGcyKSB7fQotICB0ZW1wbGF0ZSA8dHlw
ZW5hbWUgVDEsIHR5cGVuYW1lIFQyPgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjwgOjp0ZXN0
aW5nOjp0dXBsZTxUMSwgVDI+ID4oKSBjb25zdCB7Ci0gICAgcmV0dXJuIFBhcmFtR2VuZXJhdG9y
PCA6OnRlc3Rpbmc6OnR1cGxlPFQxLCBUMj4gPigKLSAgICAgICAgbmV3IENhcnRlc2lhblByb2R1
Y3RHZW5lcmF0b3IyPFQxLCBUMj4oCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9y
PFQxPiA+KGcxXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQyPiA+KGcy
XykpKTsKLSAgfQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25t
ZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBDYXJ0ZXNpYW5Qcm9k
dWN0SG9sZGVyMiYgb3RoZXIpOwotCi0gIGNvbnN0IEdlbmVyYXRvcjEgZzFfOwotICBjb25zdCBH
ZW5lcmF0b3IyIGcyXzsKLX07ICAvLyBjbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyMgotCi10
ZW1wbGF0ZSA8Y2xhc3MgR2VuZXJhdG9yMSwgY2xhc3MgR2VuZXJhdG9yMiwgY2xhc3MgR2VuZXJh
dG9yMz4KLWNsYXNzIENhcnRlc2lhblByb2R1Y3RIb2xkZXIzIHsKLSBwdWJsaWM6Ci1DYXJ0ZXNp
YW5Qcm9kdWN0SG9sZGVyMyhjb25zdCBHZW5lcmF0b3IxJiBnMSwgY29uc3QgR2VuZXJhdG9yMiYg
ZzIsCi0gICAgY29uc3QgR2VuZXJhdG9yMyYgZzMpCi0gICAgICA6IGcxXyhnMSksIGcyXyhnMiks
IGczXyhnMykge30KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5h
bWUgVDM+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPCA6OnRlc3Rpbmc6OnR1cGxlPFQxLCBU
MiwgVDM+ID4oKSBjb25zdCB7Ci0gICAgcmV0dXJuIFBhcmFtR2VuZXJhdG9yPCA6OnRlc3Rpbmc6
OnR1cGxlPFQxLCBUMiwgVDM+ID4oCi0gICAgICAgIG5ldyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJh
dG9yMzxUMSwgVDIsIFQzPigKLSAgICAgICAgc3RhdGljX2Nhc3Q8UGFyYW1HZW5lcmF0b3I8VDE+
ID4oZzFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8UGFyYW1HZW5lcmF0b3I8VDI+ID4oZzJfKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8UGFyYW1HZW5lcmF0b3I8VDM+ID4oZzNfKSkpOwotICB9Ci0K
LSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBw
b3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IENhcnRlc2lhblByb2R1Y3RIb2xkZXIzJiBv
dGhlcik7Ci0KLSAgY29uc3QgR2VuZXJhdG9yMSBnMV87Ci0gIGNvbnN0IEdlbmVyYXRvcjIgZzJf
OwotICBjb25zdCBHZW5lcmF0b3IzIGczXzsKLX07ICAvLyBjbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0
SG9sZGVyMwotCi10ZW1wbGF0ZSA8Y2xhc3MgR2VuZXJhdG9yMSwgY2xhc3MgR2VuZXJhdG9yMiwg
Y2xhc3MgR2VuZXJhdG9yMywKLSAgICBjbGFzcyBHZW5lcmF0b3I0PgotY2xhc3MgQ2FydGVzaWFu
UHJvZHVjdEhvbGRlcjQgewotIHB1YmxpYzoKLUNhcnRlc2lhblByb2R1Y3RIb2xkZXI0KGNvbnN0
IEdlbmVyYXRvcjEmIGcxLCBjb25zdCBHZW5lcmF0b3IyJiBnMiwKLSAgICBjb25zdCBHZW5lcmF0
b3IzJiBnMywgY29uc3QgR2VuZXJhdG9yNCYgZzQpCi0gICAgICA6IGcxXyhnMSksIGcyXyhnMiks
IGczXyhnMyksIGc0XyhnNCkge30KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBU
MiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0PgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjwg
Ojp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUND4gPigpIGNvbnN0IHsKLSAgICByZXR1cm4g
UGFyYW1HZW5lcmF0b3I8IDo6dGVzdGluZzo6dHVwbGU8VDEsIFQyLCBUMywgVDQ+ID4oCi0gICAg
ICAgIG5ldyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNDxUMSwgVDIsIFQzLCBUND4oCi0gICAg
ICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQxPiA+KGcxXyksCi0gICAgICAgIHN0YXRp
Y19jYXN0PFBhcmFtR2VuZXJhdG9yPFQyPiA+KGcyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBh
cmFtR2VuZXJhdG9yPFQzPiA+KGczXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJh
dG9yPFQ0PiA+KGc0XykpKTsKLSAgfQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRp
b24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBD
YXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyNCYgb3RoZXIpOwotCi0gIGNvbnN0IEdlbmVyYXRvcjEgZzFf
OwotICBjb25zdCBHZW5lcmF0b3IyIGcyXzsKLSAgY29uc3QgR2VuZXJhdG9yMyBnM187Ci0gIGNv
bnN0IEdlbmVyYXRvcjQgZzRfOwotfTsgIC8vIGNsYXNzIENhcnRlc2lhblByb2R1Y3RIb2xkZXI0
Ci0KLXRlbXBsYXRlIDxjbGFzcyBHZW5lcmF0b3IxLCBjbGFzcyBHZW5lcmF0b3IyLCBjbGFzcyBH
ZW5lcmF0b3IzLAotICAgIGNsYXNzIEdlbmVyYXRvcjQsIGNsYXNzIEdlbmVyYXRvcjU+Ci1jbGFz
cyBDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyNSB7Ci0gcHVibGljOgotQ2FydGVzaWFuUHJvZHVjdEhv
bGRlcjUoY29uc3QgR2VuZXJhdG9yMSYgZzEsIGNvbnN0IEdlbmVyYXRvcjImIGcyLAotICAgIGNv
bnN0IEdlbmVyYXRvcjMmIGczLCBjb25zdCBHZW5lcmF0b3I0JiBnNCwgY29uc3QgR2VuZXJhdG9y
NSYgZzUpCi0gICAgICA6IGcxXyhnMSksIGcyXyhnMiksIGczXyhnMyksIGc0XyhnNCksIGc1Xyhn
NSkge30KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMs
IHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNT4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8IDo6
dGVzdGluZzo6dHVwbGU8VDEsIFQyLCBUMywgVDQsIFQ1PiA+KCkgY29uc3QgewotICAgIHJldHVy
biBQYXJhbUdlbmVyYXRvcjwgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUNCwgVDU+ID4o
Ci0gICAgICAgIG5ldyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNTxUMSwgVDIsIFQzLCBUNCwg
VDU+KAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUMT4gPihnMV8pLAotICAg
ICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUMj4gPihnMl8pLAotICAgICAgICBzdGF0
aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUMz4gPihnM18pLAotICAgICAgICBzdGF0aWNfY2FzdDxQ
YXJhbUdlbmVyYXRvcjxUND4gPihnNF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVy
YXRvcjxUNT4gPihnNV8pKSk7Ci0gIH0KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0
aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3Qg
Q2FydGVzaWFuUHJvZHVjdEhvbGRlcjUmIG90aGVyKTsKLQotICBjb25zdCBHZW5lcmF0b3IxIGcx
XzsKLSAgY29uc3QgR2VuZXJhdG9yMiBnMl87Ci0gIGNvbnN0IEdlbmVyYXRvcjMgZzNfOwotICBj
b25zdCBHZW5lcmF0b3I0IGc0XzsKLSAgY29uc3QgR2VuZXJhdG9yNSBnNV87Ci19OyAgLy8gY2xh
c3MgQ2FydGVzaWFuUHJvZHVjdEhvbGRlcjUKLQotdGVtcGxhdGUgPGNsYXNzIEdlbmVyYXRvcjEs
IGNsYXNzIEdlbmVyYXRvcjIsIGNsYXNzIEdlbmVyYXRvcjMsCi0gICAgY2xhc3MgR2VuZXJhdG9y
NCwgY2xhc3MgR2VuZXJhdG9yNSwgY2xhc3MgR2VuZXJhdG9yNj4KLWNsYXNzIENhcnRlc2lhblBy
b2R1Y3RIb2xkZXI2IHsKLSBwdWJsaWM6Ci1DYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyNihjb25zdCBH
ZW5lcmF0b3IxJiBnMSwgY29uc3QgR2VuZXJhdG9yMiYgZzIsCi0gICAgY29uc3QgR2VuZXJhdG9y
MyYgZzMsIGNvbnN0IEdlbmVyYXRvcjQmIGc0LCBjb25zdCBHZW5lcmF0b3I1JiBnNSwKLSAgICBj
b25zdCBHZW5lcmF0b3I2JiBnNikKLSAgICAgIDogZzFfKGcxKSwgZzJfKGcyKSwgZzNfKGczKSwg
ZzRfKGc0KSwgZzVfKGc1KSwgZzZfKGc2KSB7fQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5
cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgICAg
dHlwZW5hbWUgVDY+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPCA6OnRlc3Rpbmc6OnR1cGxl
PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDY+ID4oKSBjb25zdCB7Ci0gICAgcmV0dXJuIFBhcmFtR2Vu
ZXJhdG9yPCA6OnRlc3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDY+ID4oCi0gICAg
ICAgIG5ldyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNjxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2
PigKLSAgICAgICAgc3RhdGljX2Nhc3Q8UGFyYW1HZW5lcmF0b3I8VDE+ID4oZzFfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8UGFyYW1HZW5lcmF0b3I8VDI+ID4oZzJfKSwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8UGFyYW1HZW5lcmF0b3I8VDM+ID4oZzNfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8UGFy
YW1HZW5lcmF0b3I8VDQ+ID4oZzRfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8UGFyYW1HZW5lcmF0
b3I8VDU+ID4oZzVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8UGFyYW1HZW5lcmF0b3I8VDY+ID4o
ZzZfKSkpOwotICB9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2ln
bm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IENhcnRlc2lhblBy
b2R1Y3RIb2xkZXI2JiBvdGhlcik7Ci0KLSAgY29uc3QgR2VuZXJhdG9yMSBnMV87Ci0gIGNvbnN0
IEdlbmVyYXRvcjIgZzJfOwotICBjb25zdCBHZW5lcmF0b3IzIGczXzsKLSAgY29uc3QgR2VuZXJh
dG9yNCBnNF87Ci0gIGNvbnN0IEdlbmVyYXRvcjUgZzVfOwotICBjb25zdCBHZW5lcmF0b3I2IGc2
XzsKLX07ICAvLyBjbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyNgotCi10ZW1wbGF0ZSA8Y2xh
c3MgR2VuZXJhdG9yMSwgY2xhc3MgR2VuZXJhdG9yMiwgY2xhc3MgR2VuZXJhdG9yMywKLSAgICBj
bGFzcyBHZW5lcmF0b3I0LCBjbGFzcyBHZW5lcmF0b3I1LCBjbGFzcyBHZW5lcmF0b3I2LCBjbGFz
cyBHZW5lcmF0b3I3PgotY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEhvbGRlcjcgewotIHB1YmxpYzoK
LUNhcnRlc2lhblByb2R1Y3RIb2xkZXI3KGNvbnN0IEdlbmVyYXRvcjEmIGcxLCBjb25zdCBHZW5l
cmF0b3IyJiBnMiwKLSAgICBjb25zdCBHZW5lcmF0b3IzJiBnMywgY29uc3QgR2VuZXJhdG9yNCYg
ZzQsIGNvbnN0IEdlbmVyYXRvcjUmIGc1LAotICAgIGNvbnN0IEdlbmVyYXRvcjYmIGc2LCBjb25z
dCBHZW5lcmF0b3I3JiBnNykKLSAgICAgIDogZzFfKGcxKSwgZzJfKGcyKSwgZzNfKGczKSwgZzRf
KGc0KSwgZzVfKGc1KSwgZzZfKGc2KSwgZzdfKGc3KSB7fQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUg
VDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAot
ICAgICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3PgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRv
cjwgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LAotICAgICAgVDc+ID4o
KSBjb25zdCB7Ci0gICAgcmV0dXJuIFBhcmFtR2VuZXJhdG9yPCA6OnRlc3Rpbmc6OnR1cGxlPFQx
LCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3PiA+KAotICAgICAgICBuZXcgQ2FydGVzaWFuUHJvZHVj
dEdlbmVyYXRvcjc8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDc+KAotICAgICAgICBzdGF0aWNf
Y2FzdDxQYXJhbUdlbmVyYXRvcjxUMT4gPihnMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJh
bUdlbmVyYXRvcjxUMj4gPihnMl8pLAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRv
cjxUMz4gPihnM18pLAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUND4gPihn
NF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUNT4gPihnNV8pLAotICAg
ICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUNj4gPihnNl8pLAotICAgICAgICBzdGF0
aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUNz4gPihnN18pKSk7Ci0gIH0KLQotIHByaXZhdGU6Ci0g
IC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9p
ZCBvcGVyYXRvcj0oY29uc3QgQ2FydGVzaWFuUHJvZHVjdEhvbGRlcjcmIG90aGVyKTsKLQotICBj
b25zdCBHZW5lcmF0b3IxIGcxXzsKLSAgY29uc3QgR2VuZXJhdG9yMiBnMl87Ci0gIGNvbnN0IEdl
bmVyYXRvcjMgZzNfOwotICBjb25zdCBHZW5lcmF0b3I0IGc0XzsKLSAgY29uc3QgR2VuZXJhdG9y
NSBnNV87Ci0gIGNvbnN0IEdlbmVyYXRvcjYgZzZfOwotICBjb25zdCBHZW5lcmF0b3I3IGc3XzsK
LX07ICAvLyBjbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyNwotCi10ZW1wbGF0ZSA8Y2xhc3Mg
R2VuZXJhdG9yMSwgY2xhc3MgR2VuZXJhdG9yMiwgY2xhc3MgR2VuZXJhdG9yMywKLSAgICBjbGFz
cyBHZW5lcmF0b3I0LCBjbGFzcyBHZW5lcmF0b3I1LCBjbGFzcyBHZW5lcmF0b3I2LCBjbGFzcyBH
ZW5lcmF0b3I3LAotICAgIGNsYXNzIEdlbmVyYXRvcjg+Ci1jbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0
SG9sZGVyOCB7Ci0gcHVibGljOgotQ2FydGVzaWFuUHJvZHVjdEhvbGRlcjgoY29uc3QgR2VuZXJh
dG9yMSYgZzEsIGNvbnN0IEdlbmVyYXRvcjImIGcyLAotICAgIGNvbnN0IEdlbmVyYXRvcjMmIGcz
LCBjb25zdCBHZW5lcmF0b3I0JiBnNCwgY29uc3QgR2VuZXJhdG9yNSYgZzUsCi0gICAgY29uc3Qg
R2VuZXJhdG9yNiYgZzYsIGNvbnN0IEdlbmVyYXRvcjcmIGc3LCBjb25zdCBHZW5lcmF0b3I4JiBn
OCkKLSAgICAgIDogZzFfKGcxKSwgZzJfKGcyKSwgZzNfKGczKSwgZzRfKGc0KSwgZzVfKGc1KSwg
ZzZfKGc2KSwgZzdfKGc3KSwKLSAgICAgICAgICBnOF8oZzgpIHt9Ci0gIHRlbXBsYXRlIDx0eXBl
bmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUg
VDUsCi0gICAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4PgotICBvcGVy
YXRvciBQYXJhbUdlbmVyYXRvcjwgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUNCwgVDUs
IFQ2LCBUNywKLSAgICAgIFQ4PiA+KCkgY29uc3QgewotICAgIHJldHVybiBQYXJhbUdlbmVyYXRv
cjwgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDg+ID4oCi0g
ICAgICAgIG5ldyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yODxUMSwgVDIsIFQzLCBUNCwgVDUs
IFQ2LCBUNywgVDg+KAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUMT4gPihn
MV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUMj4gPihnMl8pLAotICAg
ICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUMz4gPihnM18pLAotICAgICAgICBzdGF0
aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUND4gPihnNF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxQ
YXJhbUdlbmVyYXRvcjxUNT4gPihnNV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVy
YXRvcjxUNj4gPihnNl8pLAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUNz4g
PihnN18pLAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUOD4gPihnOF8pKSk7
Ci0gIH0KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBp
cyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgQ2FydGVzaWFuUHJvZHVjdEhv
bGRlcjgmIG90aGVyKTsKLQotICBjb25zdCBHZW5lcmF0b3IxIGcxXzsKLSAgY29uc3QgR2VuZXJh
dG9yMiBnMl87Ci0gIGNvbnN0IEdlbmVyYXRvcjMgZzNfOwotICBjb25zdCBHZW5lcmF0b3I0IGc0
XzsKLSAgY29uc3QgR2VuZXJhdG9yNSBnNV87Ci0gIGNvbnN0IEdlbmVyYXRvcjYgZzZfOwotICBj
b25zdCBHZW5lcmF0b3I3IGc3XzsKLSAgY29uc3QgR2VuZXJhdG9yOCBnOF87Ci19OyAgLy8gY2xh
c3MgQ2FydGVzaWFuUHJvZHVjdEhvbGRlcjgKLQotdGVtcGxhdGUgPGNsYXNzIEdlbmVyYXRvcjEs
IGNsYXNzIEdlbmVyYXRvcjIsIGNsYXNzIEdlbmVyYXRvcjMsCi0gICAgY2xhc3MgR2VuZXJhdG9y
NCwgY2xhc3MgR2VuZXJhdG9yNSwgY2xhc3MgR2VuZXJhdG9yNiwgY2xhc3MgR2VuZXJhdG9yNywK
LSAgICBjbGFzcyBHZW5lcmF0b3I4LCBjbGFzcyBHZW5lcmF0b3I5PgotY2xhc3MgQ2FydGVzaWFu
UHJvZHVjdEhvbGRlcjkgewotIHB1YmxpYzoKLUNhcnRlc2lhblByb2R1Y3RIb2xkZXI5KGNvbnN0
IEdlbmVyYXRvcjEmIGcxLCBjb25zdCBHZW5lcmF0b3IyJiBnMiwKLSAgICBjb25zdCBHZW5lcmF0
b3IzJiBnMywgY29uc3QgR2VuZXJhdG9yNCYgZzQsIGNvbnN0IEdlbmVyYXRvcjUmIGc1LAotICAg
IGNvbnN0IEdlbmVyYXRvcjYmIGc2LCBjb25zdCBHZW5lcmF0b3I3JiBnNywgY29uc3QgR2VuZXJh
dG9yOCYgZzgsCi0gICAgY29uc3QgR2VuZXJhdG9yOSYgZzkpCi0gICAgICA6IGcxXyhnMSksIGcy
XyhnMiksIGczXyhnMyksIGc0XyhnNCksIGc1XyhnNSksIGc2XyhnNiksIGc3XyhnNyksIGc4Xyhn
OCksCi0gICAgICAgICAgZzlfKGc5KSB7fQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVu
YW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgICAgdHlw
ZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDk+Ci0gIG9wZXJh
dG9yIFBhcmFtR2VuZXJhdG9yPCA6OnRlc3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDMsIFQ0LCBUNSwg
VDYsIFQ3LCBUOCwKLSAgICAgIFQ5PiA+KCkgY29uc3QgewotICAgIHJldHVybiBQYXJhbUdlbmVy
YXRvcjwgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsCi0g
ICAgICAgIFQ5PiA+KAotICAgICAgICBuZXcgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjk8VDEs
IFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOT4oCi0gICAgICAgIHN0YXRpY19jYXN0PFBh
cmFtR2VuZXJhdG9yPFQxPiA+KGcxXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJh
dG9yPFQyPiA+KGcyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQzPiA+
KGczXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQ0PiA+KGc0XyksCi0g
ICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQ1PiA+KGc1XyksCi0gICAgICAgIHN0
YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQ2PiA+KGc2XyksCi0gICAgICAgIHN0YXRpY19jYXN0
PFBhcmFtR2VuZXJhdG9yPFQ3PiA+KGc3XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2Vu
ZXJhdG9yPFQ4PiA+KGc4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQ5
PiA+KGc5XykpKTsKLSAgfQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBh
c3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBDYXJ0ZXNp
YW5Qcm9kdWN0SG9sZGVyOSYgb3RoZXIpOwotCi0gIGNvbnN0IEdlbmVyYXRvcjEgZzFfOwotICBj
b25zdCBHZW5lcmF0b3IyIGcyXzsKLSAgY29uc3QgR2VuZXJhdG9yMyBnM187Ci0gIGNvbnN0IEdl
bmVyYXRvcjQgZzRfOwotICBjb25zdCBHZW5lcmF0b3I1IGc1XzsKLSAgY29uc3QgR2VuZXJhdG9y
NiBnNl87Ci0gIGNvbnN0IEdlbmVyYXRvcjcgZzdfOwotICBjb25zdCBHZW5lcmF0b3I4IGc4XzsK
LSAgY29uc3QgR2VuZXJhdG9yOSBnOV87Ci19OyAgLy8gY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEhv
bGRlcjkKLQotdGVtcGxhdGUgPGNsYXNzIEdlbmVyYXRvcjEsIGNsYXNzIEdlbmVyYXRvcjIsIGNs
YXNzIEdlbmVyYXRvcjMsCi0gICAgY2xhc3MgR2VuZXJhdG9yNCwgY2xhc3MgR2VuZXJhdG9yNSwg
Y2xhc3MgR2VuZXJhdG9yNiwgY2xhc3MgR2VuZXJhdG9yNywKLSAgICBjbGFzcyBHZW5lcmF0b3I4
LCBjbGFzcyBHZW5lcmF0b3I5LCBjbGFzcyBHZW5lcmF0b3IxMD4KLWNsYXNzIENhcnRlc2lhblBy
b2R1Y3RIb2xkZXIxMCB7Ci0gcHVibGljOgotQ2FydGVzaWFuUHJvZHVjdEhvbGRlcjEwKGNvbnN0
IEdlbmVyYXRvcjEmIGcxLCBjb25zdCBHZW5lcmF0b3IyJiBnMiwKLSAgICBjb25zdCBHZW5lcmF0
b3IzJiBnMywgY29uc3QgR2VuZXJhdG9yNCYgZzQsIGNvbnN0IEdlbmVyYXRvcjUmIGc1LAotICAg
IGNvbnN0IEdlbmVyYXRvcjYmIGc2LCBjb25zdCBHZW5lcmF0b3I3JiBnNywgY29uc3QgR2VuZXJh
dG9yOCYgZzgsCi0gICAgY29uc3QgR2VuZXJhdG9yOSYgZzksIGNvbnN0IEdlbmVyYXRvcjEwJiBn
MTApCi0gICAgICA6IGcxXyhnMSksIGcyXyhnMiksIGczXyhnMyksIGc0XyhnNCksIGc1XyhnNSks
IGc2XyhnNiksIGc3XyhnNyksIGc4XyhnOCksCi0gICAgICAgICAgZzlfKGc5KSwgZzEwXyhnMTAp
IHt9Ci0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0
eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcs
IHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwPgotICBvcGVyYXRvciBQYXJh
bUdlbmVyYXRvcjwgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDgsIFQ5LAotICAgICAgVDEwPiA+KCkgY29uc3QgewotICAgIHJldHVybiBQYXJhbUdlbmVyYXRv
cjwgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LAot
ICAgICAgICBUMTA+ID4oCi0gICAgICAgIG5ldyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yMTA8
VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwKLSAgICAgICAgICAgIFQxMD4oCi0g
ICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQxPiA+KGcxXyksCi0gICAgICAgIHN0
YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQyPiA+KGcyXyksCi0gICAgICAgIHN0YXRpY19jYXN0
PFBhcmFtR2VuZXJhdG9yPFQzPiA+KGczXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2Vu
ZXJhdG9yPFQ0PiA+KGc0XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQ1
PiA+KGc1XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQ2PiA+KGc2Xyks
Ci0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQ3PiA+KGc3XyksCi0gICAgICAg
IHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQ4PiA+KGc4XyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFBhcmFtR2VuZXJhdG9yPFQ5PiA+KGc5XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFt
R2VuZXJhdG9yPFQxMD4gPihnMTBfKSkpOwotICB9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBs
ZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9
KGNvbnN0IENhcnRlc2lhblByb2R1Y3RIb2xkZXIxMCYgb3RoZXIpOwotCi0gIGNvbnN0IEdlbmVy
YXRvcjEgZzFfOwotICBjb25zdCBHZW5lcmF0b3IyIGcyXzsKLSAgY29uc3QgR2VuZXJhdG9yMyBn
M187Ci0gIGNvbnN0IEdlbmVyYXRvcjQgZzRfOwotICBjb25zdCBHZW5lcmF0b3I1IGc1XzsKLSAg
Y29uc3QgR2VuZXJhdG9yNiBnNl87Ci0gIGNvbnN0IEdlbmVyYXRvcjcgZzdfOwotICBjb25zdCBH
ZW5lcmF0b3I4IGc4XzsKLSAgY29uc3QgR2VuZXJhdG9yOSBnOV87Ci0gIGNvbnN0IEdlbmVyYXRv
cjEwIGcxMF87Ci19OyAgLy8gY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEhvbGRlcjEwCi0KLSMgZW5k
aWYgIC8vIEdURVNUX0hBU19DT01CSU5FCi0KLX0gIC8vIG5hbWVzcGFjZSBpbnRlcm5hbAotfSAg
Ly8gbmFtZXNwYWNlIHRlc3RpbmcKLQotI2VuZGlmICAvLyBHVEVTVF9JTkNMVURFX0dURVNUX0lO
VEVSTkFMX0dURVNUX1BBUkFNX1VUSUxfR0VORVJBVEVEX0hfCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rl
c3QtcGFyYW0tdXRpbC1nZW5lcmF0ZWQuaC5wdW1wIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9n
b29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LXBhcmFtLXV0aWwtZ2Vu
ZXJhdGVkLmgucHVtcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzBkZmZlNDNjM2M2
Nzg1Njg1MjQ2ZGI1ZjMxZDE5NDdjOGEyMmMyNS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3Jj
L2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtcGFyYW0tdXRpbC1nZW5lcmF0ZWQuaC5wdW1w
CisrKyAvZGV2L251bGwKQEAgLTEsMjgyICswLDAgQEAKLSQkIC0qLSBtb2RlOiBjKys7IC0qLQot
JHZhciBuID0gNTAgICQkIE1heGltdW0gbGVuZ3RoIG9mIFZhbHVlcyBhcmd1bWVudHMgd2Ugd2Fu
dCB0byBzdXBwb3J0LgotJHZhciBtYXh0dXBsZSA9IDEwICAkJCBNYXhpbXVtIG51bWJlciBvZiBD
b21iaW5lIGFyZ3VtZW50cyB3ZSB3YW50IHRvIHN1cHBvcnQuCi0vLyBDb3B5cmlnaHQgMjAwOCBH
b29nbGUgSW5jLgotLy8gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KLS8vCi0vLyBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLS8v
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucyBhcmUKLS8vIG1ldDoKLS8vCi0vLyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotLy8gbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotLy8g
ICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQotLy8gY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgotLy8gaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotLy8gZGlzdHJpYnV0aW9uLgotLy8gICAg
ICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwot
Ly8gY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0
cyBkZXJpdmVkIGZyb20KLS8vIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3
cml0dGVuIHBlcm1pc3Npb24uCi0vLwotLy8gVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotLy8gIkFTIElTIiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLS8vIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUgotLy8gQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKLS8vIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotLy8gU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAot
Ly8gTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsCi0vLyBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLS8vIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLS8vIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRQotLy8gT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLQotCi0vLyBUeXBlIGFuZCBmdW5jdGlvbiB1dGlsaXRp
ZXMgZm9yIGltcGxlbWVudGluZyBwYXJhbWV0ZXJpemVkIHRlc3RzLgotLy8gVGhpcyBmaWxlIGlz
IGdlbmVyYXRlZCBieSBhIFNDUklQVC4gIERPIE5PVCBFRElUIEJZIEhBTkQhCi0vLwotLy8gQ3Vy
cmVudGx5IEdvb2dsZSBUZXN0IHN1cHBvcnRzIGF0IG1vc3QgJG4gYXJndW1lbnRzIGluIFZhbHVl
cywKLS8vIGFuZCBhdCBtb3N0ICRtYXh0dXBsZSBhcmd1bWVudHMgaW4gQ29tYmluZS4gUGxlYXNl
IGNvbnRhY3QKLS8vIGdvb2dsZXRlc3RmcmFtZXdvcmtAZ29vZ2xlZ3JvdXBzLmNvbSBpZiB5b3Ug
bmVlZCBtb3JlLgotLy8gUGxlYXNlIG5vdGUgdGhhdCB0aGUgbnVtYmVyIG9mIGFyZ3VtZW50cyB0
byBDb21iaW5lIGlzIGxpbWl0ZWQKLS8vIGJ5IHRoZSBtYXhpbXVtIGFyaXR5IG9mIHRoZSBpbXBs
ZW1lbnRhdGlvbiBvZiB0dXBsZSB3aGljaCBpcwotLy8gY3VycmVudGx5IHNldCBhdCAkbWF4dHVw
bGUuCi0KLS8vIEdPT0dMRVRFU1RfQ00wMDAxIERPIE5PVCBERUxFVEUKLQotI2lmbmRlZiBHVEVT
VF9JTkNMVURFX0dURVNUX0lOVEVSTkFMX0dURVNUX1BBUkFNX1VUSUxfR0VORVJBVEVEX0hfCi0j
ZGVmaW5lIEdURVNUX0lOQ0xVREVfR1RFU1RfSU5URVJOQUxfR1RFU1RfUEFSQU1fVVRJTF9HRU5F
UkFURURfSF8KLQotI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LXBhcmFtLXV0aWwuaCIK
LSNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9ndGVzdC1wb3J0LmgiCi0KLW5hbWVzcGFjZSB0ZXN0
aW5nIHsKLQotLy8gRm9yd2FyZCBkZWNsYXJhdGlvbnMgb2YgVmFsdWVzSW4oKSwgd2hpY2ggaXMg
aW1wbGVtZW50ZWQgaW4KLS8vIGluY2x1ZGUvZ3Rlc3QvZ3Rlc3QtcGFyYW0tdGVzdC5oLgotdGVt
cGxhdGUgPHR5cGVuYW1lIEZvcndhcmRJdGVyYXRvcj4KLWludGVybmFsOjpQYXJhbUdlbmVyYXRv
cjwKLSAgdHlwZW5hbWUgOjp0ZXN0aW5nOjppbnRlcm5hbDo6SXRlcmF0b3JUcmFpdHM8Rm9yd2Fy
ZEl0ZXJhdG9yPjo6dmFsdWVfdHlwZT4KLVZhbHVlc0luKEZvcndhcmRJdGVyYXRvciBiZWdpbiwg
Rm9yd2FyZEl0ZXJhdG9yIGVuZCk7Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBULCBzaXplX3QgTj4K
LWludGVybmFsOjpQYXJhbUdlbmVyYXRvcjxUPiBWYWx1ZXNJbihjb25zdCBUICgmYXJyYXkpW05d
KTsKLQotdGVtcGxhdGUgPGNsYXNzIENvbnRhaW5lcj4KLWludGVybmFsOjpQYXJhbUdlbmVyYXRv
cjx0eXBlbmFtZSBDb250YWluZXI6OnZhbHVlX3R5cGU+IFZhbHVlc0luKAotICAgIGNvbnN0IENv
bnRhaW5lciYgY29udGFpbmVyKTsKLQotbmFtZXNwYWNlIGludGVybmFsIHsKLQotLy8gVXNlZCBp
biB0aGUgVmFsdWVzKCkgZnVuY3Rpb24gdG8gcHJvdmlkZSBwb2x5bW9ycGhpYyBjYXBhYmlsaXRp
ZXMuCi0kcmFuZ2UgaSAxLi5uCi0kZm9yIGkgW1sKLSRyYW5nZSBqIDEuLmkKLQotdGVtcGxhdGUg
PCRmb3IgaiwgW1t0eXBlbmFtZSBUJGpdXT4KLWNsYXNzIFZhbHVlQXJyYXkkaSB7Ci0gcHVibGlj
OgotICAkaWYgaT09MSBbW2V4cGxpY2l0IF1dVmFsdWVBcnJheSRpKCRmb3IgaiwgW1tUJGogdiRq
XV0pIDogJGZvciBqLCBbW3YkKGopXyh2JGopXV0ge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUg
VD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBh
cnJheVtdID0geyRmb3IgaiwgW1tzdGF0aWNfY2FzdDxUPih2JChqKV8pXV19OwotICAgIHJldHVy
biBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5JGkoY29uc3QgVmFsdWVBcnJh
eSRpJiBvdGhlcikgOiAkZm9yIGosIFtbdiQoailfKG90aGVyLnYkKGopXyldXSB7fQotCi0gcHJp
dmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVk
LgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5JGkmIG90aGVyKTsKLQotJGZvciBq
IFtbCi0KLSAgY29uc3QgVCRqIHYkKGopXzsKLV1dCi0KLX07Ci0KLV1dCi0KLSMgaWYgR1RFU1Rf
SEFTX0NPTUJJTkUKLS8vIElOVEVSTkFMIElNUExFTUVOVEFUSU9OIC0gRE8gTk9UIFVTRSBJTiBV
U0VSIENPREUuCi0vLwotLy8gR2VuZXJhdGVzIHZhbHVlcyBmcm9tIHRoZSBDYXJ0ZXNpYW4gcHJv
ZHVjdCBvZiB2YWx1ZXMgcHJvZHVjZWQKLS8vIGJ5IHRoZSBhcmd1bWVudCBnZW5lcmF0b3JzLgot
Ly8KLSRyYW5nZSBpIDIuLm1heHR1cGxlCi0kZm9yIGkgW1sKLSRyYW5nZSBqIDEuLmkKLSRyYW5n
ZSBrIDIuLmkKLQotdGVtcGxhdGUgPCRmb3IgaiwgW1t0eXBlbmFtZSBUJGpdXT4KLWNsYXNzIENh
cnRlc2lhblByb2R1Y3RHZW5lcmF0b3IkaQotICAgIDogcHVibGljIFBhcmFtR2VuZXJhdG9ySW50
ZXJmYWNlPCA6OnRlc3Rpbmc6OnR1cGxlPCRmb3IgaiwgW1tUJGpdXT4gPiB7Ci0gcHVibGljOgot
ICB0eXBlZGVmIDo6dGVzdGluZzo6dHVwbGU8JGZvciBqLCBbW1Qkal1dPiBQYXJhbVR5cGU7Ci0K
LSAgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvciRpKCRmb3IgaiwgW1tjb25zdCBQYXJhbUdlbmVy
YXRvcjxUJGo+JiBnJGpdXSkKLSAgICAgIDogJGZvciBqLCBbW2ckKGopXyhnJGopXV0ge30KLSAg
dmlydHVhbCB+Q2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvciRpKCkge30KLQotICB2aXJ0dWFsIFBh
cmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogQmVnaW4oKSBjb25zdCB7Ci0gICAgcmV0
dXJuIG5ldyBJdGVyYXRvcih0aGlzLCAkZm9yIGosIFtbZyQoailfLCBnJChqKV8uYmVnaW4oKV1d
KTsKLSAgfQotICB2aXJ0dWFsIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogRW5k
KCkgY29uc3QgewotICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhpcywgJGZvciBqLCBbW2ckKGop
XywgZyQoailfLmVuZCgpXV0pOwotICB9Ci0KLSBwcml2YXRlOgotICBjbGFzcyBJdGVyYXRvciA6
IHB1YmxpYyBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4gewotICAgcHVibGljOgot
ICAgIEl0ZXJhdG9yKGNvbnN0IFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIGJh
c2UsICRmb3IgaiwgW1sKLQotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VCRqPiYgZyRqLAot
ICAgICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VCRqPjo6aXRlcmF0b3ImIGN1cnJl
bnQkKGopXV0pCi0gICAgICAgIDogYmFzZV8oYmFzZSksCi0kZm9yIGosIFtbCi0KLSAgICAgICAg
ICBiZWdpbiQoailfKGckai5iZWdpbigpKSwgZW5kJChqKV8oZyRqLmVuZCgpKSwgY3VycmVudCQo
ailfKGN1cnJlbnQkaikKLV1dICAgIHsKLSAgICAgIENvbXB1dGVDdXJyZW50VmFsdWUoKTsKLSAg
ICB9Ci0gICAgdmlydHVhbCB+SXRlcmF0b3IoKSB7fQotCi0gICAgdmlydHVhbCBjb25zdCBQYXJh
bUdlbmVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+KiBCYXNlR2VuZXJhdG9yKCkgY29uc3Qgewot
ICAgICAgcmV0dXJuIGJhc2VfOwotICAgIH0KLSAgICAvLyBBZHZhbmNlIHNob3VsZCBub3QgYmUg
Y2FsbGVkIG9uIGJleW9uZC1vZi1yYW5nZSBpdGVyYXRvcnMKLSAgICAvLyBzbyBubyBjb21wb25l
bnQgaXRlcmF0b3JzIG11c3QgYmUgYmV5b25kIGVuZCBvZiByYW5nZSwgZWl0aGVyLgotICAgIHZp
cnR1YWwgdm9pZCBBZHZhbmNlKCkgewotICAgICAgYXNzZXJ0KCFBdEVuZCgpKTsKLSAgICAgICsr
Y3VycmVudCQoaSlfOwotCi0kZm9yIGsgW1sKLSAgICAgIGlmIChjdXJyZW50JChpKzItaylfID09
IGVuZCQoaSsyLWspXykgewotICAgICAgICBjdXJyZW50JChpKzItaylfID0gYmVnaW4kKGkrMi1r
KV87Ci0gICAgICAgICsrY3VycmVudCQoaSsyLWstMSlfOwotICAgICAgfQotCi1dXQotICAgICAg
Q29tcHV0ZUN1cnJlbnRWYWx1ZSgpOwotICAgIH0KLSAgICB2aXJ0dWFsIFBhcmFtSXRlcmF0b3JJ
bnRlcmZhY2U8UGFyYW1UeXBlPiogQ2xvbmUoKSBjb25zdCB7Ci0gICAgICByZXR1cm4gbmV3IEl0
ZXJhdG9yKCp0aGlzKTsKLSAgICB9Ci0gICAgdmlydHVhbCBjb25zdCBQYXJhbVR5cGUqIEN1cnJl
bnQoKSBjb25zdCB7IHJldHVybiBjdXJyZW50X3ZhbHVlXy5nZXQoKTsgfQotICAgIHZpcnR1YWwg
Ym9vbCBFcXVhbHMoY29uc3QgUGFyYW1JdGVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+JiBvdGhl
cikgY29uc3QgewotICAgICAgLy8gSGF2aW5nIHRoZSBzYW1lIGJhc2UgZ2VuZXJhdG9yIGd1YXJh
bnRlZXMgdGhhdCB0aGUgb3RoZXIKLSAgICAgIC8vIGl0ZXJhdG9yIGlzIG9mIHRoZSBzYW1lIHR5
cGUgYW5kIHdlIGNhbiBkb3duY2FzdC4KLSAgICAgIEdURVNUX0NIRUNLXyhCYXNlR2VuZXJhdG9y
KCkgPT0gb3RoZXIuQmFzZUdlbmVyYXRvcigpKQotICAgICAgICAgIDw8ICJUaGUgcHJvZ3JhbSBh
dHRlbXB0ZWQgdG8gY29tcGFyZSBpdGVyYXRvcnMgIgotICAgICAgICAgIDw8ICJmcm9tIGRpZmZl
cmVudCBnZW5lcmF0b3JzLiIgPDwgc3RkOjplbmRsOwotICAgICAgY29uc3QgSXRlcmF0b3IqIHR5
cGVkX290aGVyID0KLSAgICAgICAgICBDaGVja2VkRG93bmNhc3RUb0FjdHVhbFR5cGU8Y29uc3Qg
SXRlcmF0b3I+KCZvdGhlcik7Ci0gICAgICAvLyBXZSBtdXN0IHJlcG9ydCBpdGVyYXRvcnMgZXF1
YWwgaWYgdGhleSBib3RoIHBvaW50IGJleW9uZCB0aGVpcgotICAgICAgLy8gcmVzcGVjdGl2ZSBy
YW5nZXMuIFRoYXQgY2FuIGhhcHBlbiBpbiBhIHZhcmlldHkgb2YgZmFzaGlvbnMsCi0gICAgICAv
LyBzbyB3ZSBoYXZlIHRvIGNvbnN1bHQgQXRFbmQoKS4KLSAgICAgIHJldHVybiAoQXRFbmQoKSAm
JiB0eXBlZF9vdGhlci0+QXRFbmQoKSkgfHwKLSAgICAgICAgICgkZm9yIGogICYmIFtbCi0KLSAg
ICAgICAgICBjdXJyZW50JChqKV8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQkKGopXwotXV0pOwot
ICAgIH0KLQotICAgcHJpdmF0ZToKLSAgICBJdGVyYXRvcihjb25zdCBJdGVyYXRvciYgb3RoZXIp
Ci0gICAgICAgIDogYmFzZV8ob3RoZXIuYmFzZV8pLCAkZm9yIGosIFtbCi0KLSAgICAgICAgYmVn
aW4kKGopXyhvdGhlci5iZWdpbiQoailfKSwKLSAgICAgICAgZW5kJChqKV8ob3RoZXIuZW5kJChq
KV8pLAotICAgICAgICBjdXJyZW50JChqKV8ob3RoZXIuY3VycmVudCQoailfKQotXV0gewotICAg
ICAgQ29tcHV0ZUN1cnJlbnRWYWx1ZSgpOwotICAgIH0KLQotICAgIHZvaWQgQ29tcHV0ZUN1cnJl
bnRWYWx1ZSgpIHsKLSAgICAgIGlmICghQXRFbmQoKSkKLSAgICAgICAgY3VycmVudF92YWx1ZV8u
cmVzZXQobmV3IFBhcmFtVHlwZSgkZm9yIGosIFtbKmN1cnJlbnQkKGopX11dKSk7Ci0gICAgfQot
ICAgIGJvb2wgQXRFbmQoKSBjb25zdCB7Ci0gICAgICAvLyBXZSBtdXN0IHJlcG9ydCBpdGVyYXRv
ciBwYXN0IHRoZSBlbmQgb2YgdGhlIHJhbmdlIHdoZW4gZWl0aGVyIG9mIHRoZQotICAgICAgLy8g
Y29tcG9uZW50IGl0ZXJhdG9ycyBoYXMgcmVhY2hlZCB0aGUgZW5kIG9mIGl0cyByYW5nZS4KLSAg
ICAgIHJldHVybgotJGZvciBqICB8fCBbWwotCi0gICAgICAgICAgY3VycmVudCQoailfID09IGVu
ZCQoailfCi1dXTsKLSAgICB9Ci0KLSAgICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1l
bnQgaXMgdW5zdXBwb3J0ZWQuCi0gICAgdm9pZCBvcGVyYXRvcj0oY29uc3QgSXRlcmF0b3ImIG90
aGVyKTsKLQotICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIGNv
bnN0IGJhc2VfOwotICAgIC8vIGJlZ2luW2ldXyBhbmQgZW5kW2ldXyBkZWZpbmUgdGhlIGktdGgg
cmFuZ2UgdGhhdCBJdGVyYXRvciB0cmF2ZXJzZXMuCi0gICAgLy8gY3VycmVudFtpXV8gaXMgdGhl
IGFjdHVhbCB0cmF2ZXJzaW5nIGl0ZXJhdG9yLgotJGZvciBqIFtbCi0KLSAgICBjb25zdCB0eXBl
bmFtZSBQYXJhbUdlbmVyYXRvcjxUJGo+OjppdGVyYXRvciBiZWdpbiQoailfOwotICAgIGNvbnN0
IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQkaj46Oml0ZXJhdG9yIGVuZCQoailfOwotICAgIHR5
cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQkaj46Oml0ZXJhdG9yIGN1cnJlbnQkKGopXzsKLV1dCi0K
LSAgICBsaW5rZWRfcHRyPFBhcmFtVHlwZT4gY3VycmVudF92YWx1ZV87Ci0gIH07ICAvLyBjbGFz
cyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yJGk6Okl0ZXJhdG9yCi0KLSAgLy8gTm8gaW1wbGVt
ZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShj
b25zdCBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yJGkmIG90aGVyKTsKLQotCi0kZm9yIGogW1sK
LSAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VCRqPiBnJChqKV87Ci0KLV1dCi19OyAgLy8gY2xhc3Mg
Q2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvciRpCi0KLQotXV0KLQotLy8gSU5URVJOQUwgSU1QTEVN
RU5UQVRJT04gLSBETyBOT1QgVVNFIElOIFVTRVIgQ09ERS4KLS8vCi0vLyBIZWxwZXIgY2xhc3Nl
cyBwcm92aWRpbmcgQ29tYmluZSgpIHdpdGggcG9seW1vcnBoaWMgZmVhdHVyZXMuIFRoZXkgYWxs
b3cKLS8vIGNhc3RpbmcgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvck48VD4gdG8gUGFyYW1HZW5l
cmF0b3I8VT4gaWYgVCBpcwotLy8gY29udmVydGlibGUgdG8gVS4KLS8vCi0kcmFuZ2UgaSAyLi5t
YXh0dXBsZQotJGZvciBpIFtbCi0kcmFuZ2UgaiAxLi5pCi0KLXRlbXBsYXRlIDwkZm9yIGosIFtb
Y2xhc3MgR2VuZXJhdG9yJGpdXT4KLWNsYXNzIENhcnRlc2lhblByb2R1Y3RIb2xkZXIkaSB7Ci0g
cHVibGljOgotQ2FydGVzaWFuUHJvZHVjdEhvbGRlciRpKCRmb3IgaiwgW1tjb25zdCBHZW5lcmF0
b3IkaiYgZyRqXV0pCi0gICAgICA6ICRmb3IgaiwgW1tnJChqKV8oZyRqKV1dIHt9Ci0gIHRlbXBs
YXRlIDwkZm9yIGosIFtbdHlwZW5hbWUgVCRqXV0+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9y
PCA6OnRlc3Rpbmc6OnR1cGxlPCRmb3IgaiwgW1tUJGpdXT4gPigpIGNvbnN0IHsKLSAgICByZXR1
cm4gUGFyYW1HZW5lcmF0b3I8IDo6dGVzdGluZzo6dHVwbGU8JGZvciBqLCBbW1Qkal1dPiA+KAot
ICAgICAgICBuZXcgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvciRpPCRmb3IgaiwgW1tUJGpdXT4o
Ci0kZm9yIGosW1sKLQotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUJGo+ID4o
ZyQoailfKQotXV0pKTsKLSAgfQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24g
LSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBDYXJ0
ZXNpYW5Qcm9kdWN0SG9sZGVyJGkmIG90aGVyKTsKLQotCi0kZm9yIGogW1sKLSAgY29uc3QgR2Vu
ZXJhdG9yJGogZyQoailfOwotCi1dXQotfTsgIC8vIGNsYXNzIENhcnRlc2lhblByb2R1Y3RIb2xk
ZXIkaQotCi1dXQotCi0jIGVuZGlmICAvLyBHVEVTVF9IQVNfQ09NQklORQotCi19ICAvLyBuYW1l
c3BhY2UgaW50ZXJuYWwKLX0gIC8vIG5hbWVzcGFjZSB0ZXN0aW5nCi0KLSNlbmRpZiAgLy8gR1RF
U1RfSU5DTFVERV9HVEVTVF9JTlRFUk5BTF9HVEVTVF9QQVJBTV9VVElMX0dFTkVSQVRFRF9IXwpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRl
L2d0ZXN0L2ludGVybmFsL2d0ZXN0LXBhcmFtLXV0aWwuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFy
dHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1wYXJhbS11dGls
LmgKaW5kZXggZDY0ZjYyMGM0YzY3NDM0NjczYzBhNjFlMjM5NjBiNjE1YzM0ZTc4NC4uN2Y3YTEz
YmY4NGI1YTBlZDVkMjI3ODRhOGRiODY0NTlhOWMxYmQxMSAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0
LXBhcmFtLXV0aWwuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3Jj
L2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtcGFyYW0tdXRpbC5oCkBAIC0zNywxOCArMzcs
MjEgQEAKIAogI2luY2x1ZGUgPGN0eXBlLmg+CiAKKyNpbmNsdWRlIDxjYXNzZXJ0PgogI2luY2x1
ZGUgPGl0ZXJhdG9yPgorI2luY2x1ZGUgPG1lbW9yeT4KICNpbmNsdWRlIDxzZXQ+CisjaW5jbHVk
ZSA8dHVwbGU+CisjaW5jbHVkZSA8dHlwZV90cmFpdHM+CiAjaW5jbHVkZSA8dXRpbGl0eT4KICNp
bmNsdWRlIDx2ZWN0b3I+CiAKICNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9ndGVzdC1pbnRlcm5h
bC5oIgotI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LWxpbmtlZF9wdHIuaCIKICNpbmNs
dWRlICJndGVzdC9pbnRlcm5hbC9ndGVzdC1wb3J0LmgiCiAjaW5jbHVkZSAiZ3Rlc3QvZ3Rlc3Qt
cHJpbnRlcnMuaCIKKyNpbmNsdWRlICJndGVzdC9ndGVzdC10ZXN0LXBhcnQuaCIKIAogbmFtZXNw
YWNlIHRlc3RpbmcgewotCiAvLyBJbnB1dCB0byBhIHBhcmFtZXRlcml6ZWQgdGVzdCBuYW1lIGdl
bmVyYXRvciwgZGVzY3JpYmluZyBhIHRlc3QgcGFyYW1ldGVyLgogLy8gQ29uc2lzdHMgb2YgdGhl
IHBhcmFtZXRlciB2YWx1ZSBhbmQgdGhlIGludGVnZXIgcGFyYW1ldGVyIGluZGV4LgogdGVtcGxh
dGUgPGNsYXNzIFBhcmFtVHlwZT4KQEAgLTcyLDEzICs3NSwxNCBAQCBzdHJ1Y3QgUHJpbnRUb1N0
cmluZ1BhcmFtTmFtZSB7CiBuYW1lc3BhY2UgaW50ZXJuYWwgewogCiAvLyBJTlRFUk5BTCBJTVBM
RU1FTlRBVElPTiAtIERPIE5PVCBVU0UgSU4gVVNFUiBDT0RFLgotLy8KKy8vIFV0aWxpdHkgRnVu
Y3Rpb25zCisKIC8vIE91dHB1dHMgYSBtZXNzYWdlIGV4cGxhaW5pbmcgaW52YWxpZCByZWdpc3Ry
YXRpb24gb2YgZGlmZmVyZW50Ci0vLyBmaXh0dXJlIGNsYXNzIGZvciB0aGUgc2FtZSB0ZXN0IGNh
c2UuIFRoaXMgbWF5IGhhcHBlbiB3aGVuCisvLyBmaXh0dXJlIGNsYXNzIGZvciB0aGUgc2FtZSB0
ZXN0IHN1aXRlLiBUaGlzIG1heSBoYXBwZW4gd2hlbgogLy8gVEVTVF9QIG1hY3JvIGlzIHVzZWQg
dG8gZGVmaW5lIHR3byB0ZXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUKIC8vIGJ1dCBpbiBkaWZmZXJl
bnQgbmFtZXNwYWNlcy4KLUdURVNUX0FQSV8gdm9pZCBSZXBvcnRJbnZhbGlkVGVzdENhc2VUeXBl
KGNvbnN0IGNoYXIqIHRlc3RfY2FzZV9uYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgQ29kZUxvY2F0aW9uIGNvZGVfbG9jYXRpb24pOworR1RFU1RfQVBJXyB2
b2lkIFJlcG9ydEludmFsaWRUZXN0U3VpdGVUeXBlKGNvbnN0IGNoYXIqIHRlc3Rfc3VpdGVfbmFt
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb2RlTG9jYXRp
b24gY29kZV9sb2NhdGlvbik7CiAKIHRlbXBsYXRlIDx0eXBlbmFtZT4gY2xhc3MgUGFyYW1HZW5l
cmF0b3JJbnRlcmZhY2U7CiB0ZW1wbGF0ZSA8dHlwZW5hbWU+IGNsYXNzIFBhcmFtR2VuZXJhdG9y
OwpAQCAtMTUzLDcgKzE1Nyw3IEBAIGNsYXNzIFBhcmFtSXRlcmF0b3IgewogIHByaXZhdGU6CiAg
IGZyaWVuZCBjbGFzcyBQYXJhbUdlbmVyYXRvcjxUPjsKICAgZXhwbGljaXQgUGFyYW1JdGVyYXRv
cihQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFQ+KiBpbXBsKSA6IGltcGxfKGltcGwpIHt9Ci0gIHNj
b3BlZF9wdHI8UGFyYW1JdGVyYXRvckludGVyZmFjZTxUPiA+IGltcGxfOworICBzdGQ6OnVuaXF1
ZV9wdHI8UGFyYW1JdGVyYXRvckludGVyZmFjZTxUPiA+IGltcGxfOwogfTsKIAogLy8gUGFyYW1H
ZW5lcmF0b3JJbnRlcmZhY2U8VD4gaXMgdGhlIGJpbmFyeSBpbnRlcmZhY2UgdG8gYWNjZXNzIGdl
bmVyYXRvcnMKQEAgLTE5Miw3ICsxOTYsNyBAQCBjbGFzcyBQYXJhbUdlbmVyYXRvciB7CiAgIGl0
ZXJhdG9yIGVuZCgpIGNvbnN0IHsgcmV0dXJuIGl0ZXJhdG9yKGltcGxfLT5FbmQoKSk7IH0KIAog
IHByaXZhdGU6Ci0gIGxpbmtlZF9wdHI8Y29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8VD4g
PiBpbXBsXzsKKyAgc3RkOjpzaGFyZWRfcHRyPGNvbnN0IFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNl
PFQ+ID4gaW1wbF87CiB9OwogCiAvLyBHZW5lcmF0ZXMgdmFsdWVzIGZyb20gYSByYW5nZSBvZiB0
d28gY29tcGFyYWJsZSB2YWx1ZXMuIENhbiBiZSB1c2VkIHRvCkBAIC0yMDUsMTIgKzIwOSwxMiBA
QCBjbGFzcyBSYW5nZUdlbmVyYXRvciA6IHB1YmxpYyBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxU
PiB7CiAgIFJhbmdlR2VuZXJhdG9yKFQgYmVnaW4sIFQgZW5kLCBJbmNyZW1lbnRUIHN0ZXApCiAg
ICAgICA6IGJlZ2luXyhiZWdpbiksIGVuZF8oZW5kKSwKICAgICAgICAgc3RlcF8oc3RlcCksIGVu
ZF9pbmRleF8oQ2FsY3VsYXRlRW5kSW5kZXgoYmVnaW4sIGVuZCwgc3RlcCkpIHt9Ci0gIHZpcnR1
YWwgflJhbmdlR2VuZXJhdG9yKCkge30KKyAgflJhbmdlR2VuZXJhdG9yKCkgb3ZlcnJpZGUge30K
IAotICB2aXJ0dWFsIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8VD4qIEJlZ2luKCkgY29uc3Qgewor
ICBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFQ+KiBCZWdpbigpIGNvbnN0IG92ZXJyaWRlIHsKICAg
ICByZXR1cm4gbmV3IEl0ZXJhdG9yKHRoaXMsIGJlZ2luXywgMCwgc3RlcF8pOwogICB9Ci0gIHZp
cnR1YWwgUGFyYW1JdGVyYXRvckludGVyZmFjZTxUPiogRW5kKCkgY29uc3QgeworICBQYXJhbUl0
ZXJhdG9ySW50ZXJmYWNlPFQ+KiBFbmQoKSBjb25zdCBvdmVycmlkZSB7CiAgICAgcmV0dXJuIG5l
dyBJdGVyYXRvcih0aGlzLCBlbmRfLCBlbmRfaW5kZXhfLCBzdGVwXyk7CiAgIH0KIApAQCAtMjIw
LDIwICsyMjQsMjAgQEAgY2xhc3MgUmFuZ2VHZW5lcmF0b3IgOiBwdWJsaWMgUGFyYW1HZW5lcmF0
b3JJbnRlcmZhY2U8VD4gewogICAgIEl0ZXJhdG9yKGNvbnN0IFBhcmFtR2VuZXJhdG9ySW50ZXJm
YWNlPFQ+KiBiYXNlLCBUIHZhbHVlLCBpbnQgaW5kZXgsCiAgICAgICAgICAgICAgSW5jcmVtZW50
VCBzdGVwKQogICAgICAgICA6IGJhc2VfKGJhc2UpLCB2YWx1ZV8odmFsdWUpLCBpbmRleF8oaW5k
ZXgpLCBzdGVwXyhzdGVwKSB7fQotICAgIHZpcnR1YWwgfkl0ZXJhdG9yKCkge30KKyAgICB+SXRl
cmF0b3IoKSBvdmVycmlkZSB7fQogCi0gICAgdmlydHVhbCBjb25zdCBQYXJhbUdlbmVyYXRvcklu
dGVyZmFjZTxUPiogQmFzZUdlbmVyYXRvcigpIGNvbnN0IHsKKyAgICBjb25zdCBQYXJhbUdlbmVy
YXRvckludGVyZmFjZTxUPiogQmFzZUdlbmVyYXRvcigpIGNvbnN0IG92ZXJyaWRlIHsKICAgICAg
IHJldHVybiBiYXNlXzsKICAgICB9Ci0gICAgdmlydHVhbCB2b2lkIEFkdmFuY2UoKSB7CisgICAg
dm9pZCBBZHZhbmNlKCkgb3ZlcnJpZGUgewogICAgICAgdmFsdWVfID0gc3RhdGljX2Nhc3Q8VD4o
dmFsdWVfICsgc3RlcF8pOwogICAgICAgaW5kZXhfKys7CiAgICAgfQotICAgIHZpcnR1YWwgUGFy
YW1JdGVyYXRvckludGVyZmFjZTxUPiogQ2xvbmUoKSBjb25zdCB7CisgICAgUGFyYW1JdGVyYXRv
ckludGVyZmFjZTxUPiogQ2xvbmUoKSBjb25zdCBvdmVycmlkZSB7CiAgICAgICByZXR1cm4gbmV3
IEl0ZXJhdG9yKCp0aGlzKTsKICAgICB9Ci0gICAgdmlydHVhbCBjb25zdCBUKiBDdXJyZW50KCkg
Y29uc3QgeyByZXR1cm4gJnZhbHVlXzsgfQotICAgIHZpcnR1YWwgYm9vbCBFcXVhbHMoY29uc3Qg
UGFyYW1JdGVyYXRvckludGVyZmFjZTxUPiYgb3RoZXIpIGNvbnN0IHsKKyAgICBjb25zdCBUKiBD
dXJyZW50KCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gJnZhbHVlXzsgfQorICAgIGJvb2wgRXF1
YWxzKGNvbnN0IFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8VD4mIG90aGVyKSBjb25zdCBvdmVycmlk
ZSB7CiAgICAgICAvLyBIYXZpbmcgdGhlIHNhbWUgYmFzZSBnZW5lcmF0b3IgZ3VhcmFudGVlcyB0
aGF0IHRoZSBvdGhlcgogICAgICAgLy8gaXRlcmF0b3IgaXMgb2YgdGhlIHNhbWUgdHlwZSBhbmQg
d2UgY2FuIGRvd25jYXN0LgogICAgICAgR1RFU1RfQ0hFQ0tfKEJhc2VHZW5lcmF0b3IoKSA9PSBv
dGhlci5CYXNlR2VuZXJhdG9yKCkpCkBAIC0yOTAsMTIgKzI5NCwxMiBAQCBjbGFzcyBWYWx1ZXNJ
bkl0ZXJhdG9yUmFuZ2VHZW5lcmF0b3IgOiBwdWJsaWMgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8
VD4gewogICB0ZW1wbGF0ZSA8dHlwZW5hbWUgRm9yd2FyZEl0ZXJhdG9yPgogICBWYWx1ZXNJbkl0
ZXJhdG9yUmFuZ2VHZW5lcmF0b3IoRm9yd2FyZEl0ZXJhdG9yIGJlZ2luLCBGb3J3YXJkSXRlcmF0
b3IgZW5kKQogICAgICAgOiBjb250YWluZXJfKGJlZ2luLCBlbmQpIHt9Ci0gIHZpcnR1YWwgflZh
bHVlc0luSXRlcmF0b3JSYW5nZUdlbmVyYXRvcigpIHt9CisgIH5WYWx1ZXNJbkl0ZXJhdG9yUmFu
Z2VHZW5lcmF0b3IoKSBvdmVycmlkZSB7fQogCi0gIHZpcnR1YWwgUGFyYW1JdGVyYXRvckludGVy
ZmFjZTxUPiogQmVnaW4oKSBjb25zdCB7CisgIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8VD4qIEJl
Z2luKCkgY29uc3Qgb3ZlcnJpZGUgewogICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhpcywgY29u
dGFpbmVyXy5iZWdpbigpKTsKICAgfQotICB2aXJ0dWFsIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8
VD4qIEVuZCgpIGNvbnN0IHsKKyAgUGFyYW1JdGVyYXRvckludGVyZmFjZTxUPiogRW5kKCkgY29u
c3Qgb3ZlcnJpZGUgewogICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhpcywgY29udGFpbmVyXy5l
bmQoKSk7CiAgIH0KIApAQCAtMzA3LDE2ICszMTEsMTYgQEAgY2xhc3MgVmFsdWVzSW5JdGVyYXRv
clJhbmdlR2VuZXJhdG9yIDogcHVibGljIFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPFQ+IHsKICAg
ICBJdGVyYXRvcihjb25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxUPiogYmFzZSwKICAgICAg
ICAgICAgICB0eXBlbmFtZSBDb250YWluZXJUeXBlOjpjb25zdF9pdGVyYXRvciBpdGVyYXRvcikK
ICAgICAgICAgOiBiYXNlXyhiYXNlKSwgaXRlcmF0b3JfKGl0ZXJhdG9yKSB7fQotICAgIHZpcnR1
YWwgfkl0ZXJhdG9yKCkge30KKyAgICB+SXRlcmF0b3IoKSBvdmVycmlkZSB7fQogCi0gICAgdmly
dHVhbCBjb25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxUPiogQmFzZUdlbmVyYXRvcigpIGNv
bnN0IHsKKyAgICBjb25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxUPiogQmFzZUdlbmVyYXRv
cigpIGNvbnN0IG92ZXJyaWRlIHsKICAgICAgIHJldHVybiBiYXNlXzsKICAgICB9Ci0gICAgdmly
dHVhbCB2b2lkIEFkdmFuY2UoKSB7CisgICAgdm9pZCBBZHZhbmNlKCkgb3ZlcnJpZGUgewogICAg
ICAgKytpdGVyYXRvcl87CiAgICAgICB2YWx1ZV8ucmVzZXQoKTsKICAgICB9Ci0gICAgdmlydHVh
bCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFQ+KiBDbG9uZSgpIGNvbnN0IHsKKyAgICBQYXJhbUl0
ZXJhdG9ySW50ZXJmYWNlPFQ+KiBDbG9uZSgpIGNvbnN0IG92ZXJyaWRlIHsKICAgICAgIHJldHVy
biBuZXcgSXRlcmF0b3IoKnRoaXMpOwogICAgIH0KICAgICAvLyBXZSBuZWVkIHRvIHVzZSBjYWNo
ZWQgdmFsdWUgcmVmZXJlbmNlZCBieSBpdGVyYXRvcl8gYmVjYXVzZSAqaXRlcmF0b3JfCkBAIC0z
MjYsMTIgKzMzMCwxMSBAQCBjbGFzcyBWYWx1ZXNJbkl0ZXJhdG9yUmFuZ2VHZW5lcmF0b3IgOiBw
dWJsaWMgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8VD4gewogICAgIC8vIGNhbiBhZHZhbmNlIGl0
ZXJhdG9yXyBiZXlvbmQgdGhlIGVuZCBvZiB0aGUgcmFuZ2UsIGFuZCB3ZSBjYW5ub3QKICAgICAv
LyBkZXRlY3QgdGhhdCBmYWN0LiBUaGUgY2xpZW50IGNvZGUsIG9uIHRoZSBvdGhlciBoYW5kLCBp
cwogICAgIC8vIHJlc3BvbnNpYmxlIGZvciBub3QgY2FsbGluZyBDdXJyZW50KCkgb24gYW4gb3V0
LW9mLXJhbmdlIGl0ZXJhdG9yLgotICAgIHZpcnR1YWwgY29uc3QgVCogQ3VycmVudCgpIGNvbnN0
IHsKLSAgICAgIGlmICh2YWx1ZV8uZ2V0KCkgPT0gTlVMTCkKLSAgICAgICAgdmFsdWVfLnJlc2V0
KG5ldyBUKCppdGVyYXRvcl8pKTsKKyAgICBjb25zdCBUKiBDdXJyZW50KCkgY29uc3Qgb3ZlcnJp
ZGUgeworICAgICAgaWYgKHZhbHVlXy5nZXQoKSA9PSBudWxscHRyKSB2YWx1ZV8ucmVzZXQobmV3
IFQoKml0ZXJhdG9yXykpOwogICAgICAgcmV0dXJuIHZhbHVlXy5nZXQoKTsKICAgICB9Ci0gICAg
dmlydHVhbCBib29sIEVxdWFscyhjb25zdCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFQ+JiBvdGhl
cikgY29uc3QgeworICAgIGJvb2wgRXF1YWxzKGNvbnN0IFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8
VD4mIG90aGVyKSBjb25zdCBvdmVycmlkZSB7CiAgICAgICAvLyBIYXZpbmcgdGhlIHNhbWUgYmFz
ZSBnZW5lcmF0b3IgZ3VhcmFudGVlcyB0aGF0IHRoZSBvdGhlcgogICAgICAgLy8gaXRlcmF0b3Ig
aXMgb2YgdGhlIHNhbWUgdHlwZSBhbmQgd2UgY2FuIGRvd25jYXN0LgogICAgICAgR1RFU1RfQ0hF
Q0tfKEJhc2VHZW5lcmF0b3IoKSA9PSBvdGhlci5CYXNlR2VuZXJhdG9yKCkpCkBAIC0zNTQsOSAr
MzU3LDkgQEAgY2xhc3MgVmFsdWVzSW5JdGVyYXRvclJhbmdlR2VuZXJhdG9yIDogcHVibGljIFBh
cmFtR2VuZXJhdG9ySW50ZXJmYWNlPFQ+IHsKICAgICAvLyBBIGNhY2hlZCB2YWx1ZSBvZiAqaXRl
cmF0b3JfLiBXZSBrZWVwIGl0IGhlcmUgdG8gYWxsb3cgYWNjZXNzIGJ5CiAgICAgLy8gcG9pbnRl
ciBpbiB0aGUgd3JhcHBpbmcgaXRlcmF0b3IncyBvcGVyYXRvci0+KCkuCiAgICAgLy8gdmFsdWVf
IG5lZWRzIHRvIGJlIG11dGFibGUgdG8gYmUgYWNjZXNzZWQgaW4gQ3VycmVudCgpLgotICAgIC8v
IFVzZSBvZiBzY29wZWRfcHRyIGhlbHBzIG1hbmFnZSBjYWNoZWQgdmFsdWUncyBsaWZldGltZSwK
KyAgICAvLyBVc2Ugb2Ygc3RkOjp1bmlxdWVfcHRyIGhlbHBzIG1hbmFnZSBjYWNoZWQgdmFsdWUn
cyBsaWZldGltZSwKICAgICAvLyB3aGljaCBpcyBib3VuZCBieSB0aGUgbGlmZXNwYW4gb2YgdGhl
IGl0ZXJhdG9yIGl0c2VsZi4KLSAgICBtdXRhYmxlIHNjb3BlZF9wdHI8Y29uc3QgVD4gdmFsdWVf
OworICAgIG11dGFibGUgc3RkOjp1bmlxdWVfcHRyPGNvbnN0IFQ+IHZhbHVlXzsKICAgfTsgIC8v
IGNsYXNzIFZhbHVlc0luSXRlcmF0b3JSYW5nZUdlbmVyYXRvcjo6SXRlcmF0b3IKIAogICAvLyBO
byBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCkBAIC0zNzYsMjUg
KzM3OSwxMiBAQCBzdGQ6OnN0cmluZyBEZWZhdWx0UGFyYW1OYW1lKGNvbnN0IFRlc3RQYXJhbUlu
Zm88UGFyYW1UeXBlPiYgaW5mbykgewogICByZXR1cm4gbmFtZV9zdHJlYW0uR2V0U3RyaW5nKCk7
CiB9CiAKLS8vIElOVEVSTkFMIElNUExFTUVOVEFUSU9OIC0gRE8gTk9UIFVTRSBJTiBVU0VSIENP
REUuCi0vLwotLy8gUGFyYW1ldGVyaXplZCB0ZXN0IG5hbWUgb3ZlcmxvYWQgaGVscGVycywgd2hp
Y2ggaGVscCB0aGUKLS8vIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QIG1hY3JvIGNob29zZSBiZXR3
ZWVuIHRoZSBkZWZhdWx0IHBhcmFtZXRlcml6ZWQKLS8vIHRlc3QgbmFtZSBnZW5lcmF0b3IgYW5k
IHVzZXIgcGFyYW0gbmFtZSBnZW5lcmF0b3IuCi10ZW1wbGF0ZSA8Y2xhc3MgUGFyYW1UeXBlLCBj
bGFzcyBQYXJhbU5hbWVHZW5GdW5jdG9yPgotUGFyYW1OYW1lR2VuRnVuY3RvciBHZXRQYXJhbU5h
bWVHZW4oUGFyYW1OYW1lR2VuRnVuY3RvciBmdW5jKSB7Ci0gIHJldHVybiBmdW5jOwotfQotCi10
ZW1wbGF0ZSA8Y2xhc3MgUGFyYW1UeXBlPgotc3RydWN0IFBhcmFtTmFtZUdlbkZ1bmMgewotICB0
eXBlZGVmIHN0ZDo6c3RyaW5nIFR5cGUoY29uc3QgVGVzdFBhcmFtSW5mbzxQYXJhbVR5cGU+Jik7
Ci19OwotCi10ZW1wbGF0ZSA8Y2xhc3MgUGFyYW1UeXBlPgotdHlwZW5hbWUgUGFyYW1OYW1lR2Vu
RnVuYzxQYXJhbVR5cGU+OjpUeXBlICpHZXRQYXJhbU5hbWVHZW4oKSB7Ci0gIHJldHVybiBEZWZh
dWx0UGFyYW1OYW1lOwordGVtcGxhdGUgPHR5cGVuYW1lIFQgPSBpbnQ+Cit2b2lkIFRlc3ROb3RF
bXB0eSgpIHsKKyAgc3RhdGljX2Fzc2VydChzaXplb2YoVCkgPT0gMCwgIkVtcHR5IGFyZ3VtZW50
cyBhcmUgbm90IGFsbG93ZWQuIik7CiB9Cit0ZW1wbGF0ZSA8dHlwZW5hbWUgVCA9IGludD4KK3Zv
aWQgVGVzdE5vdEVtcHR5KGNvbnN0IFQmKSB7fQogCiAvLyBJTlRFUk5BTCBJTVBMRU1FTlRBVElP
TiAtIERPIE5PVCBVU0UgSU4gVVNFUiBDT0RFLgogLy8KQEAgLTQwNiw3ICszOTYsNyBAQCBjbGFz
cyBQYXJhbWV0ZXJpemVkVGVzdEZhY3RvcnkgOiBwdWJsaWMgVGVzdEZhY3RvcnlCYXNlIHsKICAg
dHlwZWRlZiB0eXBlbmFtZSBUZXN0Q2xhc3M6OlBhcmFtVHlwZSBQYXJhbVR5cGU7CiAgIGV4cGxp
Y2l0IFBhcmFtZXRlcml6ZWRUZXN0RmFjdG9yeShQYXJhbVR5cGUgcGFyYW1ldGVyKSA6CiAgICAg
ICBwYXJhbWV0ZXJfKHBhcmFtZXRlcikge30KLSAgdmlydHVhbCBUZXN0KiBDcmVhdGVUZXN0KCkg
eworICBUZXN0KiBDcmVhdGVUZXN0KCkgb3ZlcnJpZGUgewogICAgIFRlc3RDbGFzczo6U2V0UGFy
YW0oJnBhcmFtZXRlcl8pOwogICAgIHJldHVybiBuZXcgVGVzdENsYXNzKCk7CiAgIH0KQEAgLTQz
NCwxOSArNDI0LDE5IEBAIGNsYXNzIFRlc3RNZXRhRmFjdG9yeUJhc2UgewogLy8gVGVzdE1ldGFG
YWN0b3J5IGNyZWF0ZXMgdGVzdCBmYWN0b3JpZXMgZm9yIHBhc3NpbmcgaW50bwogLy8gTWFrZUFu
ZFJlZ2lzdGVyVGVzdEluZm8gZnVuY3Rpb24uIFNpbmNlIE1ha2VBbmRSZWdpc3RlclRlc3RJbmZv
IHJlY2VpdmVzCiAvLyBvd25lcnNoaXAgb2YgdGVzdCBmYWN0b3J5IHBvaW50ZXIsIHNhbWUgZmFj
dG9yeSBvYmplY3QgY2Fubm90IGJlIHBhc3NlZAotLy8gaW50byB0aGF0IG1ldGhvZCB0d2ljZS4g
QnV0IFBhcmFtZXRlcml6ZWRUZXN0Q2FzZUluZm8gaXMgZ29pbmcgdG8gY2FsbAorLy8gaW50byB0
aGF0IG1ldGhvZCB0d2ljZS4gQnV0IFBhcmFtZXRlcml6ZWRUZXN0U3VpdGVJbmZvIGlzIGdvaW5n
IHRvIGNhbGwKIC8vIGl0IGZvciBlYWNoIFRlc3QvUGFyYW1ldGVyIHZhbHVlIGNvbWJpbmF0aW9u
LiBUaHVzIGl0IG5lZWRzIG1ldGEgZmFjdG9yeQogLy8gY3JlYXRvciBjbGFzcy4KLXRlbXBsYXRl
IDxjbGFzcyBUZXN0Q2FzZT4KK3RlbXBsYXRlIDxjbGFzcyBUZXN0U3VpdGU+CiBjbGFzcyBUZXN0
TWV0YUZhY3RvcnkKLSAgICA6IHB1YmxpYyBUZXN0TWV0YUZhY3RvcnlCYXNlPHR5cGVuYW1lIFRl
c3RDYXNlOjpQYXJhbVR5cGU+IHsKKyAgICA6IHB1YmxpYyBUZXN0TWV0YUZhY3RvcnlCYXNlPHR5
cGVuYW1lIFRlc3RTdWl0ZTo6UGFyYW1UeXBlPiB7CiAgcHVibGljOgotICB0eXBlZGVmIHR5cGVu
YW1lIFRlc3RDYXNlOjpQYXJhbVR5cGUgUGFyYW1UeXBlOworICB1c2luZyBQYXJhbVR5cGUgPSB0
eXBlbmFtZSBUZXN0U3VpdGU6OlBhcmFtVHlwZTsKIAogICBUZXN0TWV0YUZhY3RvcnkoKSB7fQog
Ci0gIHZpcnR1YWwgVGVzdEZhY3RvcnlCYXNlKiBDcmVhdGVUZXN0RmFjdG9yeShQYXJhbVR5cGUg
cGFyYW1ldGVyKSB7Ci0gICAgcmV0dXJuIG5ldyBQYXJhbWV0ZXJpemVkVGVzdEZhY3Rvcnk8VGVz
dENhc2U+KHBhcmFtZXRlcik7CisgIFRlc3RGYWN0b3J5QmFzZSogQ3JlYXRlVGVzdEZhY3Rvcnko
UGFyYW1UeXBlIHBhcmFtZXRlcikgb3ZlcnJpZGUgeworICAgIHJldHVybiBuZXcgUGFyYW1ldGVy
aXplZFRlc3RGYWN0b3J5PFRlc3RTdWl0ZT4ocGFyYW1ldGVyKTsKICAgfQogCiAgcHJpdmF0ZToK
QEAgLTQ1NSw5MyArNDQ1LDEwNiBAQCBjbGFzcyBUZXN0TWV0YUZhY3RvcnkKIAogLy8gSU5URVJO
QUwgSU1QTEVNRU5UQVRJT04gLSBETyBOT1QgVVNFIElOIFVTRVIgQ09ERS4KIC8vCi0vLyBQYXJh
bWV0ZXJpemVkVGVzdENhc2VJbmZvQmFzZSBpcyBhIGdlbmVyaWMgaW50ZXJmYWNlCi0vLyB0byBQ
YXJhbWV0ZXJpemVkVGVzdENhc2VJbmZvIGNsYXNzZXMuIFBhcmFtZXRlcml6ZWRUZXN0Q2FzZUlu
Zm9CYXNlCisvLyBQYXJhbWV0ZXJpemVkVGVzdFN1aXRlSW5mb0Jhc2UgaXMgYSBnZW5lcmljIGlu
dGVyZmFjZQorLy8gdG8gUGFyYW1ldGVyaXplZFRlc3RTdWl0ZUluZm8gY2xhc3Nlcy4gUGFyYW1l
dGVyaXplZFRlc3RTdWl0ZUluZm9CYXNlCiAvLyBhY2N1bXVsYXRlcyB0ZXN0IGluZm9ybWF0aW9u
IHByb3ZpZGVkIGJ5IFRFU1RfUCBtYWNybyBpbnZvY2F0aW9ucwotLy8gYW5kIGdlbmVyYXRvcnMg
cHJvdmlkZWQgYnkgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AgbWFjcm8gaW52b2NhdGlvbnMKKy8v
IGFuZCBnZW5lcmF0b3JzIHByb3ZpZGVkIGJ5IElOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCBtYWNy
byBpbnZvY2F0aW9ucwogLy8gYW5kIHVzZXMgdGhhdCBpbmZvcm1hdGlvbiB0byByZWdpc3RlciBh
bGwgcmVzdWx0aW5nIHRlc3QgaW5zdGFuY2VzCi0vLyBpbiBSZWdpc3RlclRlc3RzIG1ldGhvZC4g
VGhlIFBhcmFtZXRlcml6ZVRlc3RDYXNlUmVnaXN0cnkgY2xhc3MgaG9sZHMKLS8vIGEgY29sbGVj
dGlvbiBvZiBwb2ludGVycyB0byB0aGUgUGFyYW1ldGVyaXplZFRlc3RDYXNlSW5mbyBvYmplY3Rz
CisvLyBpbiBSZWdpc3RlclRlc3RzIG1ldGhvZC4gVGhlIFBhcmFtZXRlcml6ZVRlc3RTdWl0ZVJl
Z2lzdHJ5IGNsYXNzIGhvbGRzCisvLyBhIGNvbGxlY3Rpb24gb2YgcG9pbnRlcnMgdG8gdGhlIFBh
cmFtZXRlcml6ZWRUZXN0U3VpdGVJbmZvIG9iamVjdHMKIC8vIGFuZCBjYWxscyBSZWdpc3RlclRl
c3RzKCkgb24gZWFjaCBvZiB0aGVtIHdoZW4gYXNrZWQuCi1jbGFzcyBQYXJhbWV0ZXJpemVkVGVz
dENhc2VJbmZvQmFzZSB7CitjbGFzcyBQYXJhbWV0ZXJpemVkVGVzdFN1aXRlSW5mb0Jhc2Ugewog
IHB1YmxpYzoKLSAgdmlydHVhbCB+UGFyYW1ldGVyaXplZFRlc3RDYXNlSW5mb0Jhc2UoKSB7fQor
ICB2aXJ0dWFsIH5QYXJhbWV0ZXJpemVkVGVzdFN1aXRlSW5mb0Jhc2UoKSB7fQogCi0gIC8vIEJh
c2UgcGFydCBvZiB0ZXN0IGNhc2UgbmFtZSBmb3IgZGlzcGxheSBwdXJwb3Nlcy4KLSAgdmlydHVh
bCBjb25zdCBzdGQ6OnN0cmluZyYgR2V0VGVzdENhc2VOYW1lKCkgY29uc3QgPSAwOworICAvLyBC
YXNlIHBhcnQgb2YgdGVzdCBzdWl0ZSBuYW1lIGZvciBkaXNwbGF5IHB1cnBvc2VzLgorICB2aXJ0
dWFsIGNvbnN0IHN0ZDo6c3RyaW5nJiBHZXRUZXN0U3VpdGVOYW1lKCkgY29uc3QgPSAwOwogICAv
LyBUZXN0IGNhc2UgaWQgdG8gdmVyaWZ5IGlkZW50aXR5LgotICB2aXJ0dWFsIFR5cGVJZCBHZXRU
ZXN0Q2FzZVR5cGVJZCgpIGNvbnN0ID0gMDsKKyAgdmlydHVhbCBUeXBlSWQgR2V0VGVzdFN1aXRl
VHlwZUlkKCkgY29uc3QgPSAwOwogICAvLyBVbml0VGVzdCBjbGFzcyBpbnZva2VzIHRoaXMgbWV0
aG9kIHRvIHJlZ2lzdGVyIHRlc3RzIGluIHRoaXMKLSAgLy8gdGVzdCBjYXNlIHJpZ2h0IGJlZm9y
ZSBydW5uaW5nIHRoZW0gaW4gUlVOX0FMTF9URVNUUyBtYWNyby4KLSAgLy8gVGhpcyBtZXRob2Qg
c2hvdWxkIG5vdCBiZSBjYWxsZWQgbW9yZSB0aGVuIG9uY2Ugb24gYW55IHNpbmdsZQotICAvLyBp
bnN0YW5jZSBvZiBhIFBhcmFtZXRlcml6ZWRUZXN0Q2FzZUluZm9CYXNlIGRlcml2ZWQgY2xhc3Mu
CisgIC8vIHRlc3Qgc3VpdGUgcmlnaHQgYmVmb3JlIHJ1bm5pbmcgdGhlbSBpbiBSVU5fQUxMX1RF
U1RTIG1hY3JvLgorICAvLyBUaGlzIG1ldGhvZCBzaG91bGQgbm90IGJlIGNhbGxlZCBtb3JlIHRo
YW4gb25jZSBvbiBhbnkgc2luZ2xlCisgIC8vIGluc3RhbmNlIG9mIGEgUGFyYW1ldGVyaXplZFRl
c3RTdWl0ZUluZm9CYXNlIGRlcml2ZWQgY2xhc3MuCiAgIHZpcnR1YWwgdm9pZCBSZWdpc3RlclRl
c3RzKCkgPSAwOwogCiAgcHJvdGVjdGVkOgotICBQYXJhbWV0ZXJpemVkVGVzdENhc2VJbmZvQmFz
ZSgpIHt9CisgIFBhcmFtZXRlcml6ZWRUZXN0U3VpdGVJbmZvQmFzZSgpIHt9CiAKICBwcml2YXRl
OgotICBHVEVTVF9ESVNBTExPV19DT1BZX0FORF9BU1NJR05fKFBhcmFtZXRlcml6ZWRUZXN0Q2Fz
ZUluZm9CYXNlKTsKKyAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhQYXJhbWV0ZXJp
emVkVGVzdFN1aXRlSW5mb0Jhc2UpOwogfTsKIAogLy8gSU5URVJOQUwgSU1QTEVNRU5UQVRJT04g
LSBETyBOT1QgVVNFIElOIFVTRVIgQ09ERS4KIC8vCi0vLyBQYXJhbWV0ZXJpemVkVGVzdENhc2VJ
bmZvIGFjY3VtdWxhdGVzIHRlc3RzIG9idGFpbmVkIGZyb20gVEVTVF9QCi0vLyBtYWNybyBpbnZv
Y2F0aW9ucyBmb3IgYSBwYXJ0aWN1bGFyIHRlc3QgY2FzZSBhbmQgZ2VuZXJhdG9ycwotLy8gb2J0
YWluZWQgZnJvbSBJTlNUQU5USUFURV9URVNUX0NBU0VfUCBtYWNybyBpbnZvY2F0aW9ucyBmb3Ig
dGhhdAotLy8gdGVzdCBjYXNlLiBJdCByZWdpc3RlcnMgdGVzdHMgd2l0aCBhbGwgdmFsdWVzIGdl
bmVyYXRlZCBieSBhbGwKKy8vIFJlcG9ydCBhIHRoZSBuYW1lIG9mIGEgdGVzdF9zdWl0IGFzIHNh
ZmUgdG8gaWdub3JlCisvLyBhcyB0aGUgc2lkZSBlZmZlY3Qgb2YgY29uc3RydWN0aW9uIG9mIHRo
aXMgdHlwZS4KK3N0cnVjdCBNYXJrQXNJZ25vcmVkIHsKKyAgZXhwbGljaXQgTWFya0FzSWdub3Jl
ZChjb25zdCBjaGFyKiB0ZXN0X3N1aXRlKTsKK307CisKK0dURVNUX0FQSV8gdm9pZCBJbnNlcnRT
eW50aGV0aWNUZXN0Q2FzZShjb25zdCBzdGQ6OnN0cmluZyYgbmFtZSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBDb2RlTG9jYXRpb24gbG9jYXRpb24sIGJvb2wgaGFz
X3Rlc3RfcCk7CisKKy8vIElOVEVSTkFMIElNUExFTUVOVEFUSU9OIC0gRE8gTk9UIFVTRSBJTiBV
U0VSIENPREUuCisvLworLy8gUGFyYW1ldGVyaXplZFRlc3RTdWl0ZUluZm8gYWNjdW11bGF0ZXMg
dGVzdHMgb2J0YWluZWQgZnJvbSBURVNUX1AKKy8vIG1hY3JvIGludm9jYXRpb25zIGZvciBhIHBh
cnRpY3VsYXIgdGVzdCBzdWl0ZSBhbmQgZ2VuZXJhdG9ycworLy8gb2J0YWluZWQgZnJvbSBJTlNU
QU5USUFURV9URVNUX1NVSVRFX1AgbWFjcm8gaW52b2NhdGlvbnMgZm9yIHRoYXQKKy8vIHRlc3Qg
c3VpdGUuIEl0IHJlZ2lzdGVycyB0ZXN0cyB3aXRoIGFsbCB2YWx1ZXMgZ2VuZXJhdGVkIGJ5IGFs
bAogLy8gZ2VuZXJhdG9ycyB3aGVuIGFza2VkLgotdGVtcGxhdGUgPGNsYXNzIFRlc3RDYXNlPgot
Y2xhc3MgUGFyYW1ldGVyaXplZFRlc3RDYXNlSW5mbyA6IHB1YmxpYyBQYXJhbWV0ZXJpemVkVGVz
dENhc2VJbmZvQmFzZSB7Cit0ZW1wbGF0ZSA8Y2xhc3MgVGVzdFN1aXRlPgorY2xhc3MgUGFyYW1l
dGVyaXplZFRlc3RTdWl0ZUluZm8gOiBwdWJsaWMgUGFyYW1ldGVyaXplZFRlc3RTdWl0ZUluZm9C
YXNlIHsKICBwdWJsaWM6CiAgIC8vIFBhcmFtVHlwZSBhbmQgR2VuZXJhdG9yQ3JlYXRpb25GdW5j
IGFyZSBwcml2YXRlIHR5cGVzIGJ1dCBhcmUgcmVxdWlyZWQKICAgLy8gZm9yIGRlY2xhcmF0aW9u
cyBvZiBwdWJsaWMgbWV0aG9kcyBBZGRUZXN0UGF0dGVybigpIGFuZAotICAvLyBBZGRUZXN0Q2Fz
ZUluc3RhbnRpYXRpb24oKS4KLSAgdHlwZWRlZiB0eXBlbmFtZSBUZXN0Q2FzZTo6UGFyYW1UeXBl
IFBhcmFtVHlwZTsKKyAgLy8gQWRkVGVzdFN1aXRlSW5zdGFudGlhdGlvbigpLgorICB1c2luZyBQ
YXJhbVR5cGUgPSB0eXBlbmFtZSBUZXN0U3VpdGU6OlBhcmFtVHlwZTsKICAgLy8gQSBmdW5jdGlv
biB0aGF0IHJldHVybnMgYW4gaW5zdGFuY2Ugb2YgYXBwcm9wcmlhdGUgZ2VuZXJhdG9yIHR5cGUu
CiAgIHR5cGVkZWYgUGFyYW1HZW5lcmF0b3I8UGFyYW1UeXBlPihHZW5lcmF0b3JDcmVhdGlvbkZ1
bmMpKCk7Ci0gIHR5cGVkZWYgdHlwZW5hbWUgUGFyYW1OYW1lR2VuRnVuYzxQYXJhbVR5cGU+OjpU
eXBlIFBhcmFtTmFtZUdlbmVyYXRvckZ1bmM7CisgIHVzaW5nIFBhcmFtTmFtZUdlbmVyYXRvckZ1
bmMgPSBzdGQ6OnN0cmluZyhjb25zdCBUZXN0UGFyYW1JbmZvPFBhcmFtVHlwZT4mKTsKIAotICBl
eHBsaWNpdCBQYXJhbWV0ZXJpemVkVGVzdENhc2VJbmZvKAotICAgICAgY29uc3QgY2hhciogbmFt
ZSwgQ29kZUxvY2F0aW9uIGNvZGVfbG9jYXRpb24pCi0gICAgICA6IHRlc3RfY2FzZV9uYW1lXyhu
YW1lKSwgY29kZV9sb2NhdGlvbl8oY29kZV9sb2NhdGlvbikge30KKyAgZXhwbGljaXQgUGFyYW1l
dGVyaXplZFRlc3RTdWl0ZUluZm8oY29uc3QgY2hhciogbmFtZSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgQ29kZUxvY2F0aW9uIGNvZGVfbG9jYXRpb24pCisgICAgICA6
IHRlc3Rfc3VpdGVfbmFtZV8obmFtZSksIGNvZGVfbG9jYXRpb25fKGNvZGVfbG9jYXRpb24pIHt9
CiAKICAgLy8gVGVzdCBjYXNlIGJhc2UgbmFtZSBmb3IgZGlzcGxheSBwdXJwb3Nlcy4KLSAgdmly
dHVhbCBjb25zdCBzdGQ6OnN0cmluZyYgR2V0VGVzdENhc2VOYW1lKCkgY29uc3QgeyByZXR1cm4g
dGVzdF9jYXNlX25hbWVfOyB9CisgIGNvbnN0IHN0ZDo6c3RyaW5nJiBHZXRUZXN0U3VpdGVOYW1l
KCkgY29uc3Qgb3ZlcnJpZGUgeworICAgIHJldHVybiB0ZXN0X3N1aXRlX25hbWVfOworICB9CiAg
IC8vIFRlc3QgY2FzZSBpZCB0byB2ZXJpZnkgaWRlbnRpdHkuCi0gIHZpcnR1YWwgVHlwZUlkIEdl
dFRlc3RDYXNlVHlwZUlkKCkgY29uc3QgeyByZXR1cm4gR2V0VHlwZUlkPFRlc3RDYXNlPigpOyB9
CisgIFR5cGVJZCBHZXRUZXN0U3VpdGVUeXBlSWQoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBH
ZXRUeXBlSWQ8VGVzdFN1aXRlPigpOyB9CiAgIC8vIFRFU1RfUCBtYWNybyB1c2VzIEFkZFRlc3RQ
YXR0ZXJuKCkgdG8gcmVjb3JkIGluZm9ybWF0aW9uCiAgIC8vIGFib3V0IGEgc2luZ2xlIHRlc3Qg
aW4gYSBMb2NhbFRlc3RJbmZvIHN0cnVjdHVyZS4KLSAgLy8gdGVzdF9jYXNlX25hbWUgaXMgdGhl
IGJhc2UgbmFtZSBvZiB0aGUgdGVzdCBjYXNlICh3aXRob3V0IGludm9jYXRpb24KKyAgLy8gdGVz
dF9zdWl0ZV9uYW1lIGlzIHRoZSBiYXNlIG5hbWUgb2YgdGhlIHRlc3Qgc3VpdGUgKHdpdGhvdXQg
aW52b2NhdGlvbgogICAvLyBwcmVmaXgpLiB0ZXN0X2Jhc2VfbmFtZSBpcyB0aGUgbmFtZSBvZiBh
biBpbmRpdmlkdWFsIHRlc3Qgd2l0aG91dAogICAvLyBwYXJhbWV0ZXIgaW5kZXguIEZvciB0aGUg
dGVzdCBTZXF1ZW5jZUEvRm9vVGVzdC5Eb0Jhci8xIEZvb1Rlc3QgaXMKLSAgLy8gdGVzdCBjYXNl
IGJhc2UgbmFtZSBhbmQgRG9CYXIgaXMgdGVzdCBiYXNlIG5hbWUuCi0gIHZvaWQgQWRkVGVzdFBh
dHRlcm4oY29uc3QgY2hhciogdGVzdF9jYXNlX25hbWUsCi0gICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgY2hhciogdGVzdF9iYXNlX25hbWUsCisgIC8vIHRlc3Qgc3VpdGUgYmFzZSBuYW1lIGFu
ZCBEb0JhciBpcyB0ZXN0IGJhc2UgbmFtZS4KKyAgdm9pZCBBZGRUZXN0UGF0dGVybihjb25zdCBj
aGFyKiB0ZXN0X3N1aXRlX25hbWUsIGNvbnN0IGNoYXIqIHRlc3RfYmFzZV9uYW1lLAogICAgICAg
ICAgICAgICAgICAgICAgIFRlc3RNZXRhRmFjdG9yeUJhc2U8UGFyYW1UeXBlPiogbWV0YV9mYWN0
b3J5KSB7Ci0gICAgdGVzdHNfLnB1c2hfYmFjayhsaW5rZWRfcHRyPFRlc3RJbmZvPihuZXcgVGVz
dEluZm8odGVzdF9jYXNlX25hbWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdGVzdF9iYXNlX25hbWUsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWV0YV9mYWN0b3J5KSkpOworICAg
IHRlc3RzXy5wdXNoX2JhY2soc3RkOjpzaGFyZWRfcHRyPFRlc3RJbmZvPigKKyAgICAgICAgbmV3
IFRlc3RJbmZvKHRlc3Rfc3VpdGVfbmFtZSwgdGVzdF9iYXNlX25hbWUsIG1ldGFfZmFjdG9yeSkp
KTsKICAgfQotICAvLyBJTlNUQU5USUFURV9URVNUX0NBU0VfUCBtYWNybyB1c2VzIEFkZEdlbmVy
YXRvcigpIHRvIHJlY29yZCBpbmZvcm1hdGlvbgorICAvLyBJTlNUQU5USUFURV9URVNUX1NVSVRF
X1AgbWFjcm8gdXNlcyBBZGRHZW5lcmF0b3IoKSB0byByZWNvcmQgaW5mb3JtYXRpb24KICAgLy8g
YWJvdXQgYSBnZW5lcmF0b3IuCi0gIGludCBBZGRUZXN0Q2FzZUluc3RhbnRpYXRpb24oY29uc3Qg
c3RkOjpzdHJpbmcmIGluc3RhbnRpYXRpb25fbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBHZW5lcmF0b3JDcmVhdGlvbkZ1bmMqIGZ1bmMsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgUGFyYW1OYW1lR2VuZXJhdG9yRnVuYyogbmFtZV9mdW5jLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGZpbGUsIGludCBsaW5lKSB7CisgIGlu
dCBBZGRUZXN0U3VpdGVJbnN0YW50aWF0aW9uKGNvbnN0IHN0ZDo6c3RyaW5nJiBpbnN0YW50aWF0
aW9uX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRvckNyZWF0
aW9uRnVuYyogZnVuYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGFyYW1OYW1l
R2VuZXJhdG9yRnVuYyogbmFtZV9mdW5jLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBjaGFyKiBmaWxlLCBpbnQgbGluZSkgewogICAgIGluc3RhbnRpYXRpb25zXy5wdXNo
X2JhY2soCiAgICAgICAgIEluc3RhbnRpYXRpb25JbmZvKGluc3RhbnRpYXRpb25fbmFtZSwgZnVu
YywgbmFtZV9mdW5jLCBmaWxlLCBsaW5lKSk7CiAgICAgcmV0dXJuIDA7ICAvLyBSZXR1cm4gdmFs
dWUgdXNlZCBvbmx5IHRvIHJ1biB0aGlzIG1ldGhvZCBpbiBuYW1lc3BhY2Ugc2NvcGUuCiAgIH0K
LSAgLy8gVW5pdFRlc3QgY2xhc3MgaW52b2tlcyB0aGlzIG1ldGhvZCB0byByZWdpc3RlciB0ZXN0
cyBpbiB0aGlzIHRlc3QgY2FzZQotICAvLyB0ZXN0IGNhc2VzIHJpZ2h0IGJlZm9yZSBydW5uaW5n
IHRlc3RzIGluIFJVTl9BTExfVEVTVFMgbWFjcm8uCi0gIC8vIFRoaXMgbWV0aG9kIHNob3VsZCBu
b3QgYmUgY2FsbGVkIG1vcmUgdGhlbiBvbmNlIG9uIGFueSBzaW5nbGUKLSAgLy8gaW5zdGFuY2Ug
b2YgYSBQYXJhbWV0ZXJpemVkVGVzdENhc2VJbmZvQmFzZSBkZXJpdmVkIGNsYXNzLgotICAvLyBV
bml0VGVzdCBoYXMgYSBndWFyZCB0byBwcmV2ZW50IGZyb20gY2FsbGluZyB0aGlzIG1ldGhvZCBt
b3JlIHRoZW4gb25jZS4KLSAgdmlydHVhbCB2b2lkIFJlZ2lzdGVyVGVzdHMoKSB7CisgIC8vIFVu
aXRUZXN0IGNsYXNzIGludm9rZXMgdGhpcyBtZXRob2QgdG8gcmVnaXN0ZXIgdGVzdHMgaW4gdGhp
cyB0ZXN0IHN1aXRlCisgIC8vIHJpZ2h0IGJlZm9yZSBydW5uaW5nIHRlc3RzIGluIFJVTl9BTExf
VEVTVFMgbWFjcm8uCisgIC8vIFRoaXMgbWV0aG9kIHNob3VsZCBub3QgYmUgY2FsbGVkIG1vcmUg
dGhhbiBvbmNlIG9uIGFueSBzaW5nbGUKKyAgLy8gaW5zdGFuY2Ugb2YgYSBQYXJhbWV0ZXJpemVk
VGVzdFN1aXRlSW5mb0Jhc2UgZGVyaXZlZCBjbGFzcy4KKyAgLy8gVW5pdFRlc3QgaGFzIGEgZ3Vh
cmQgdG8gcHJldmVudCBmcm9tIGNhbGxpbmcgdGhpcyBtZXRob2QgbW9yZSB0aGFuIG9uY2UuCisg
IHZvaWQgUmVnaXN0ZXJUZXN0cygpIG92ZXJyaWRlIHsKKyAgICBib29sIGdlbmVyYXRlZF9pbnN0
YW50aWF0aW9ucyA9IGZhbHNlOworCiAgICAgZm9yICh0eXBlbmFtZSBUZXN0SW5mb0NvbnRhaW5l
cjo6aXRlcmF0b3IgdGVzdF9pdCA9IHRlc3RzXy5iZWdpbigpOwogICAgICAgICAgdGVzdF9pdCAh
PSB0ZXN0c18uZW5kKCk7ICsrdGVzdF9pdCkgewotICAgICAgbGlua2VkX3B0cjxUZXN0SW5mbz4g
dGVzdF9pbmZvID0gKnRlc3RfaXQ7CisgICAgICBzdGQ6OnNoYXJlZF9wdHI8VGVzdEluZm8+IHRl
c3RfaW5mbyA9ICp0ZXN0X2l0OwogICAgICAgZm9yICh0eXBlbmFtZSBJbnN0YW50aWF0aW9uQ29u
dGFpbmVyOjppdGVyYXRvciBnZW5faXQgPQogICAgICAgICAgICAgICAgaW5zdGFudGlhdGlvbnNf
LmJlZ2luKCk7IGdlbl9pdCAhPSBpbnN0YW50aWF0aW9uc18uZW5kKCk7CiAgICAgICAgICAgICAg
ICArK2dlbl9pdCkgewpAQCAtNTUxLDE2ICs1NTQsMTggQEAgY2xhc3MgUGFyYW1ldGVyaXplZFRl
c3RDYXNlSW5mbyA6IHB1YmxpYyBQYXJhbWV0ZXJpemVkVGVzdENhc2VJbmZvQmFzZSB7CiAgICAg
ICAgIGNvbnN0IGNoYXIqIGZpbGUgPSBnZW5faXQtPmZpbGU7CiAgICAgICAgIGludCBsaW5lID0g
Z2VuX2l0LT5saW5lOwogCi0gICAgICAgIHN0ZDo6c3RyaW5nIHRlc3RfY2FzZV9uYW1lOworICAg
ICAgICBzdGQ6OnN0cmluZyB0ZXN0X3N1aXRlX25hbWU7CiAgICAgICAgIGlmICggIWluc3RhbnRp
YXRpb25fbmFtZS5lbXB0eSgpICkKLSAgICAgICAgICB0ZXN0X2Nhc2VfbmFtZSA9IGluc3RhbnRp
YXRpb25fbmFtZSArICIvIjsKLSAgICAgICAgdGVzdF9jYXNlX25hbWUgKz0gdGVzdF9pbmZvLT50
ZXN0X2Nhc2VfYmFzZV9uYW1lOworICAgICAgICAgIHRlc3Rfc3VpdGVfbmFtZSA9IGluc3RhbnRp
YXRpb25fbmFtZSArICIvIjsKKyAgICAgICAgdGVzdF9zdWl0ZV9uYW1lICs9IHRlc3RfaW5mby0+
dGVzdF9zdWl0ZV9iYXNlX25hbWU7CiAKICAgICAgICAgc2l6ZV90IGkgPSAwOwogICAgICAgICBz
dGQ6OnNldDxzdGQ6OnN0cmluZz4gdGVzdF9wYXJhbV9uYW1lczsKICAgICAgICAgZm9yICh0eXBl
bmFtZSBQYXJhbUdlbmVyYXRvcjxQYXJhbVR5cGU+OjppdGVyYXRvciBwYXJhbV9pdCA9CiAgICAg
ICAgICAgICAgICAgIGdlbmVyYXRvci5iZWdpbigpOwogICAgICAgICAgICAgIHBhcmFtX2l0ICE9
IGdlbmVyYXRvci5lbmQoKTsgKytwYXJhbV9pdCwgKytpKSB7CisgICAgICAgICAgZ2VuZXJhdGVk
X2luc3RhbnRpYXRpb25zID0gdHJ1ZTsKKwogICAgICAgICAgIE1lc3NhZ2UgdGVzdF9uYW1lX3N0
cmVhbTsKIAogICAgICAgICAgIHN0ZDo6c3RyaW5nIHBhcmFtX25hbWUgPSBuYW1lX2Z1bmMoCkBA
IC01NzcsMzkgKzU4Miw0NSBAQCBjbGFzcyBQYXJhbWV0ZXJpemVkVGVzdENhc2VJbmZvIDogcHVi
bGljIFBhcmFtZXRlcml6ZWRUZXN0Q2FzZUluZm9CYXNlIHsKIAogICAgICAgICAgIHRlc3RfcGFy
YW1fbmFtZXMuaW5zZXJ0KHBhcmFtX25hbWUpOwogCi0gICAgICAgICAgdGVzdF9uYW1lX3N0cmVh
bSA8PCB0ZXN0X2luZm8tPnRlc3RfYmFzZV9uYW1lIDw8ICIvIiA8PCBwYXJhbV9uYW1lOworICAg
ICAgICAgIGlmICghdGVzdF9pbmZvLT50ZXN0X2Jhc2VfbmFtZS5lbXB0eSgpKSB7CisgICAgICAg
ICAgICB0ZXN0X25hbWVfc3RyZWFtIDw8IHRlc3RfaW5mby0+dGVzdF9iYXNlX25hbWUgPDwgIi8i
OworICAgICAgICAgIH0KKyAgICAgICAgICB0ZXN0X25hbWVfc3RyZWFtIDw8IHBhcmFtX25hbWU7
CiAgICAgICAgICAgTWFrZUFuZFJlZ2lzdGVyVGVzdEluZm8oCi0gICAgICAgICAgICAgIHRlc3Rf
Y2FzZV9uYW1lLmNfc3RyKCksCi0gICAgICAgICAgICAgIHRlc3RfbmFtZV9zdHJlYW0uR2V0U3Ry
aW5nKCkuY19zdHIoKSwKLSAgICAgICAgICAgICAgTlVMTCwgIC8vIE5vIHR5cGUgcGFyYW1ldGVy
LgotICAgICAgICAgICAgICBQcmludFRvU3RyaW5nKCpwYXJhbV9pdCkuY19zdHIoKSwKLSAgICAg
ICAgICAgICAgY29kZV9sb2NhdGlvbl8sCi0gICAgICAgICAgICAgIEdldFRlc3RDYXNlVHlwZUlk
KCksCi0gICAgICAgICAgICAgIFRlc3RDYXNlOjpTZXRVcFRlc3RDYXNlLAotICAgICAgICAgICAg
ICBUZXN0Q2FzZTo6VGVhckRvd25UZXN0Q2FzZSwKKyAgICAgICAgICAgICAgdGVzdF9zdWl0ZV9u
YW1lLmNfc3RyKCksIHRlc3RfbmFtZV9zdHJlYW0uR2V0U3RyaW5nKCkuY19zdHIoKSwKKyAgICAg
ICAgICAgICAgbnVsbHB0ciwgIC8vIE5vIHR5cGUgcGFyYW1ldGVyLgorICAgICAgICAgICAgICBQ
cmludFRvU3RyaW5nKCpwYXJhbV9pdCkuY19zdHIoKSwgY29kZV9sb2NhdGlvbl8sCisgICAgICAg
ICAgICAgIEdldFRlc3RTdWl0ZVR5cGVJZCgpLAorICAgICAgICAgICAgICBTdWl0ZUFwaVJlc29s
dmVyPFRlc3RTdWl0ZT46OkdldFNldFVwQ2FzZU9yU3VpdGUoZmlsZSwgbGluZSksCisgICAgICAg
ICAgICAgIFN1aXRlQXBpUmVzb2x2ZXI8VGVzdFN1aXRlPjo6R2V0VGVhckRvd25DYXNlT3JTdWl0
ZShmaWxlLCBsaW5lKSwKICAgICAgICAgICAgICAgdGVzdF9pbmZvLT50ZXN0X21ldGFfZmFjdG9y
eS0+Q3JlYXRlVGVzdEZhY3RvcnkoKnBhcmFtX2l0KSk7CiAgICAgICAgIH0gIC8vIGZvciBwYXJh
bV9pdAogICAgICAgfSAgLy8gZm9yIGdlbl9pdAogICAgIH0gIC8vIGZvciB0ZXN0X2l0Ci0gIH0g
IC8vIFJlZ2lzdGVyVGVzdHMKKworICAgIGlmICghZ2VuZXJhdGVkX2luc3RhbnRpYXRpb25zKSB7
CisgICAgICAvLyBUaGVyZSBhcmUgbm8gZ2VuZXJhb3Rycywgb3IgdGhleSBhbGwgZ2VuZXJhdGUg
bm90aGluZyAuLi4KKyAgICAgIEluc2VydFN5bnRoZXRpY1Rlc3RDYXNlKEdldFRlc3RTdWl0ZU5h
bWUoKSwgY29kZV9sb2NhdGlvbl8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhdGVz
dHNfLmVtcHR5KCkpOworICAgIH0KKyAgfSAgICAvLyBSZWdpc3RlclRlc3RzCiAKICBwcml2YXRl
OgogICAvLyBMb2NhbFRlc3RJbmZvIHN0cnVjdHVyZSBrZWVwcyBpbmZvcm1hdGlvbiBhYm91dCBh
IHNpbmdsZSB0ZXN0IHJlZ2lzdGVyZWQKICAgLy8gd2l0aCBURVNUX1AgbWFjcm8uCiAgIHN0cnVj
dCBUZXN0SW5mbyB7Ci0gICAgVGVzdEluZm8oY29uc3QgY2hhciogYV90ZXN0X2Nhc2VfYmFzZV9u
YW1lLAotICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGFfdGVzdF9iYXNlX25hbWUsCi0gICAgICAg
ICAgICAgVGVzdE1ldGFGYWN0b3J5QmFzZTxQYXJhbVR5cGU+KiBhX3Rlc3RfbWV0YV9mYWN0b3J5
KSA6Ci0gICAgICAgIHRlc3RfY2FzZV9iYXNlX25hbWUoYV90ZXN0X2Nhc2VfYmFzZV9uYW1lKSwK
LSAgICAgICAgdGVzdF9iYXNlX25hbWUoYV90ZXN0X2Jhc2VfbmFtZSksCi0gICAgICAgIHRlc3Rf
bWV0YV9mYWN0b3J5KGFfdGVzdF9tZXRhX2ZhY3RvcnkpIHt9Ci0KLSAgICBjb25zdCBzdGQ6OnN0
cmluZyB0ZXN0X2Nhc2VfYmFzZV9uYW1lOworICAgIFRlc3RJbmZvKGNvbnN0IGNoYXIqIGFfdGVz
dF9zdWl0ZV9iYXNlX25hbWUsIGNvbnN0IGNoYXIqIGFfdGVzdF9iYXNlX25hbWUsCisgICAgICAg
ICAgICAgVGVzdE1ldGFGYWN0b3J5QmFzZTxQYXJhbVR5cGU+KiBhX3Rlc3RfbWV0YV9mYWN0b3J5
KQorICAgICAgICA6IHRlc3Rfc3VpdGVfYmFzZV9uYW1lKGFfdGVzdF9zdWl0ZV9iYXNlX25hbWUp
LAorICAgICAgICAgIHRlc3RfYmFzZV9uYW1lKGFfdGVzdF9iYXNlX25hbWUpLAorICAgICAgICAg
IHRlc3RfbWV0YV9mYWN0b3J5KGFfdGVzdF9tZXRhX2ZhY3RvcnkpIHt9CisKKyAgICBjb25zdCBz
dGQ6OnN0cmluZyB0ZXN0X3N1aXRlX2Jhc2VfbmFtZTsKICAgICBjb25zdCBzdGQ6OnN0cmluZyB0
ZXN0X2Jhc2VfbmFtZTsKLSAgICBjb25zdCBzY29wZWRfcHRyPFRlc3RNZXRhRmFjdG9yeUJhc2U8
UGFyYW1UeXBlPiA+IHRlc3RfbWV0YV9mYWN0b3J5OworICAgIGNvbnN0IHN0ZDo6dW5pcXVlX3B0
cjxUZXN0TWV0YUZhY3RvcnlCYXNlPFBhcmFtVHlwZT4gPiB0ZXN0X21ldGFfZmFjdG9yeTsKICAg
fTsKLSAgdHlwZWRlZiA6OnN0ZDo6dmVjdG9yPGxpbmtlZF9wdHI8VGVzdEluZm8+ID4gVGVzdElu
Zm9Db250YWluZXI7Ci0gIC8vIFJlY29yZHMgZGF0YSByZWNlaXZlZCBmcm9tIElOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QIG1hY3JvczoKKyAgdXNpbmcgVGVzdEluZm9Db250YWluZXIgPSA6OnN0ZDo6
dmVjdG9yPHN0ZDo6c2hhcmVkX3B0cjxUZXN0SW5mbz4gPjsKKyAgLy8gUmVjb3JkcyBkYXRhIHJl
Y2VpdmVkIGZyb20gSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QIG1hY3JvczoKICAgLy8gIDxJbnN0
YW50aWF0aW9uIG5hbWUsIFNlcXVlbmNlIGdlbmVyYXRvciBjcmVhdGlvbiBmdW5jdGlvbiwKICAg
Ly8gICAgIE5hbWUgZ2VuZXJhdG9yIGZ1bmN0aW9uLCBTb3VyY2UgZmlsZSwgU291cmNlIGxpbmU+
CiAgIHN0cnVjdCBJbnN0YW50aWF0aW9uSW5mbyB7CkBAIC02NDYsNzYgKzY1NywyNzUgQEAgY2xh
c3MgUGFyYW1ldGVyaXplZFRlc3RDYXNlSW5mbyA6IHB1YmxpYyBQYXJhbWV0ZXJpemVkVGVzdENh
c2VJbmZvQmFzZSB7CiAgICAgcmV0dXJuIHRydWU7CiAgIH0KIAotICBjb25zdCBzdGQ6OnN0cmlu
ZyB0ZXN0X2Nhc2VfbmFtZV87CisgIGNvbnN0IHN0ZDo6c3RyaW5nIHRlc3Rfc3VpdGVfbmFtZV87
CiAgIENvZGVMb2NhdGlvbiBjb2RlX2xvY2F0aW9uXzsKICAgVGVzdEluZm9Db250YWluZXIgdGVz
dHNfOwogICBJbnN0YW50aWF0aW9uQ29udGFpbmVyIGluc3RhbnRpYXRpb25zXzsKIAotICBHVEVT
VF9ESVNBTExPV19DT1BZX0FORF9BU1NJR05fKFBhcmFtZXRlcml6ZWRUZXN0Q2FzZUluZm8pOwot
fTsgIC8vIGNsYXNzIFBhcmFtZXRlcml6ZWRUZXN0Q2FzZUluZm8KKyAgR1RFU1RfRElTQUxMT1df
Q09QWV9BTkRfQVNTSUdOXyhQYXJhbWV0ZXJpemVkVGVzdFN1aXRlSW5mbyk7Cit9OyAgLy8gY2xh
c3MgUGFyYW1ldGVyaXplZFRlc3RTdWl0ZUluZm8KKworLy8gIExlZ2FjeSBBUEkgaXMgZGVwcmVj
YXRlZCBidXQgc3RpbGwgYXZhaWxhYmxlCisjaWZuZGVmIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVT
VF9DQVNFQVBJXwordGVtcGxhdGUgPGNsYXNzIFRlc3RDYXNlPgordXNpbmcgUGFyYW1ldGVyaXpl
ZFRlc3RDYXNlSW5mbyA9IFBhcmFtZXRlcml6ZWRUZXN0U3VpdGVJbmZvPFRlc3RDYXNlPjsKKyNl
bmRpZiAgLy8gIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwogCiAvLyBJTlRFUk5B
TCBJTVBMRU1FTlRBVElPTiAtIERPIE5PVCBVU0UgSU4gVVNFUiBDT0RFLgogLy8KLS8vIFBhcmFt
ZXRlcml6ZWRUZXN0Q2FzZVJlZ2lzdHJ5IGNvbnRhaW5zIGEgbWFwIG9mIFBhcmFtZXRlcml6ZWRU
ZXN0Q2FzZUluZm9CYXNlCi0vLyBjbGFzc2VzIGFjY2Vzc2VkIGJ5IHRlc3QgY2FzZSBuYW1lcy4g
VEVTVF9QIGFuZCBJTlNUQU5USUFURV9URVNUX0NBU0VfUAotLy8gbWFjcm9zIHVzZSBpdCB0byBs
b2NhdGUgdGhlaXIgY29ycmVzcG9uZGluZyBQYXJhbWV0ZXJpemVkVGVzdENhc2VJbmZvCi0vLyBk
ZXNjcmlwdG9ycy4KLWNsYXNzIFBhcmFtZXRlcml6ZWRUZXN0Q2FzZVJlZ2lzdHJ5IHsKKy8vIFBh
cmFtZXRlcml6ZWRUZXN0U3VpdGVSZWdpc3RyeSBjb250YWlucyBhIG1hcCBvZgorLy8gUGFyYW1l
dGVyaXplZFRlc3RTdWl0ZUluZm9CYXNlIGNsYXNzZXMgYWNjZXNzZWQgYnkgdGVzdCBzdWl0ZSBu
YW1lcy4gVEVTVF9QCisvLyBhbmQgSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QIG1hY3JvcyB1c2Ug
aXQgdG8gbG9jYXRlIHRoZWlyIGNvcnJlc3BvbmRpbmcKKy8vIFBhcmFtZXRlcml6ZWRUZXN0U3Vp
dGVJbmZvIGRlc2NyaXB0b3JzLgorY2xhc3MgUGFyYW1ldGVyaXplZFRlc3RTdWl0ZVJlZ2lzdHJ5
IHsKICBwdWJsaWM6Ci0gIFBhcmFtZXRlcml6ZWRUZXN0Q2FzZVJlZ2lzdHJ5KCkge30KLSAgflBh
cmFtZXRlcml6ZWRUZXN0Q2FzZVJlZ2lzdHJ5KCkgewotICAgIGZvciAoVGVzdENhc2VJbmZvQ29u
dGFpbmVyOjppdGVyYXRvciBpdCA9IHRlc3RfY2FzZV9pbmZvc18uYmVnaW4oKTsKLSAgICAgICAg
IGl0ICE9IHRlc3RfY2FzZV9pbmZvc18uZW5kKCk7ICsraXQpIHsKLSAgICAgIGRlbGV0ZSAqaXQ7
CisgIFBhcmFtZXRlcml6ZWRUZXN0U3VpdGVSZWdpc3RyeSgpIHt9CisgIH5QYXJhbWV0ZXJpemVk
VGVzdFN1aXRlUmVnaXN0cnkoKSB7CisgICAgZm9yIChhdXRvJiB0ZXN0X3N1aXRlX2luZm8gOiB0
ZXN0X3N1aXRlX2luZm9zXykgeworICAgICAgZGVsZXRlIHRlc3Rfc3VpdGVfaW5mbzsKICAgICB9
CiAgIH0KIAogICAvLyBMb29rcyB1cCBvciBjcmVhdGVzIGFuZCByZXR1cm5zIGEgc3RydWN0dXJl
IGNvbnRhaW5pbmcgaW5mb3JtYXRpb24gYWJvdXQKLSAgLy8gdGVzdHMgYW5kIGluc3RhbnRpYXRp
b25zIG9mIGEgcGFydGljdWxhciB0ZXN0IGNhc2UuCi0gIHRlbXBsYXRlIDxjbGFzcyBUZXN0Q2Fz
ZT4KLSAgUGFyYW1ldGVyaXplZFRlc3RDYXNlSW5mbzxUZXN0Q2FzZT4qIEdldFRlc3RDYXNlUGF0
dGVybkhvbGRlcigKLSAgICAgIGNvbnN0IGNoYXIqIHRlc3RfY2FzZV9uYW1lLAotICAgICAgQ29k
ZUxvY2F0aW9uIGNvZGVfbG9jYXRpb24pIHsKLSAgICBQYXJhbWV0ZXJpemVkVGVzdENhc2VJbmZv
PFRlc3RDYXNlPiogdHlwZWRfdGVzdF9pbmZvID0gTlVMTDsKLSAgICBmb3IgKFRlc3RDYXNlSW5m
b0NvbnRhaW5lcjo6aXRlcmF0b3IgaXQgPSB0ZXN0X2Nhc2VfaW5mb3NfLmJlZ2luKCk7Ci0gICAg
ICAgICBpdCAhPSB0ZXN0X2Nhc2VfaW5mb3NfLmVuZCgpOyArK2l0KSB7Ci0gICAgICBpZiAoKCpp
dCktPkdldFRlc3RDYXNlTmFtZSgpID09IHRlc3RfY2FzZV9uYW1lKSB7Ci0gICAgICAgIGlmICgo
Kml0KS0+R2V0VGVzdENhc2VUeXBlSWQoKSAhPSBHZXRUeXBlSWQ8VGVzdENhc2U+KCkpIHsKKyAg
Ly8gdGVzdHMgYW5kIGluc3RhbnRpYXRpb25zIG9mIGEgcGFydGljdWxhciB0ZXN0IHN1aXRlLgor
ICB0ZW1wbGF0ZSA8Y2xhc3MgVGVzdFN1aXRlPgorICBQYXJhbWV0ZXJpemVkVGVzdFN1aXRlSW5m
bzxUZXN0U3VpdGU+KiBHZXRUZXN0U3VpdGVQYXR0ZXJuSG9sZGVyKAorICAgICAgY29uc3QgY2hh
ciogdGVzdF9zdWl0ZV9uYW1lLCBDb2RlTG9jYXRpb24gY29kZV9sb2NhdGlvbikgeworICAgIFBh
cmFtZXRlcml6ZWRUZXN0U3VpdGVJbmZvPFRlc3RTdWl0ZT4qIHR5cGVkX3Rlc3RfaW5mbyA9IG51
bGxwdHI7CisgICAgZm9yIChhdXRvJiB0ZXN0X3N1aXRlX2luZm8gOiB0ZXN0X3N1aXRlX2luZm9z
XykgeworICAgICAgaWYgKHRlc3Rfc3VpdGVfaW5mby0+R2V0VGVzdFN1aXRlTmFtZSgpID09IHRl
c3Rfc3VpdGVfbmFtZSkgeworICAgICAgICBpZiAodGVzdF9zdWl0ZV9pbmZvLT5HZXRUZXN0U3Vp
dGVUeXBlSWQoKSAhPSBHZXRUeXBlSWQ8VGVzdFN1aXRlPigpKSB7CiAgICAgICAgICAgLy8gQ29t
cGxhaW4gYWJvdXQgaW5jb3JyZWN0IHVzYWdlIG9mIEdvb2dsZSBUZXN0IGZhY2lsaXRpZXMKICAg
ICAgICAgICAvLyBhbmQgdGVybWluYXRlIHRoZSBwcm9ncmFtIHNpbmNlIHdlIGNhbm5vdCBndWFy
YW50eSBjb3JyZWN0Ci0gICAgICAgICAgLy8gdGVzdCBjYXNlIHNldHVwIGFuZCB0ZWFyLWRvd24g
aW4gdGhpcyBjYXNlLgotICAgICAgICAgIFJlcG9ydEludmFsaWRUZXN0Q2FzZVR5cGUodGVzdF9j
YXNlX25hbWUsIGNvZGVfbG9jYXRpb24pOworICAgICAgICAgIC8vIHRlc3Qgc3VpdGUgc2V0dXAg
YW5kIHRlYXItZG93biBpbiB0aGlzIGNhc2UuCisgICAgICAgICAgUmVwb3J0SW52YWxpZFRlc3RT
dWl0ZVR5cGUodGVzdF9zdWl0ZV9uYW1lLCBjb2RlX2xvY2F0aW9uKTsKICAgICAgICAgICBwb3Np
eDo6QWJvcnQoKTsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAvLyBBdCB0aGlzIHBvaW50
IHdlIGFyZSBzdXJlIHRoYXQgdGhlIG9iamVjdCB3ZSBmb3VuZCBpcyBvZiB0aGUgc2FtZQogICAg
ICAgICAgIC8vIHR5cGUgd2UgYXJlIGxvb2tpbmcgZm9yLCBzbyB3ZSBkb3duY2FzdCBpdCB0byB0
aGF0IHR5cGUKICAgICAgICAgICAvLyB3aXRob3V0IGZ1cnRoZXIgY2hlY2tzLgogICAgICAgICAg
IHR5cGVkX3Rlc3RfaW5mbyA9IENoZWNrZWREb3duY2FzdFRvQWN0dWFsVHlwZTwKLSAgICAgICAg
ICAgICAgUGFyYW1ldGVyaXplZFRlc3RDYXNlSW5mbzxUZXN0Q2FzZT4gPigqaXQpOworICAgICAg
ICAgICAgICBQYXJhbWV0ZXJpemVkVGVzdFN1aXRlSW5mbzxUZXN0U3VpdGU+ID4odGVzdF9zdWl0
ZV9pbmZvKTsKICAgICAgICAgfQogICAgICAgICBicmVhazsKICAgICAgIH0KICAgICB9Ci0gICAg
aWYgKHR5cGVkX3Rlc3RfaW5mbyA9PSBOVUxMKSB7Ci0gICAgICB0eXBlZF90ZXN0X2luZm8gPSBu
ZXcgUGFyYW1ldGVyaXplZFRlc3RDYXNlSW5mbzxUZXN0Q2FzZT4oCi0gICAgICAgICAgdGVzdF9j
YXNlX25hbWUsIGNvZGVfbG9jYXRpb24pOwotICAgICAgdGVzdF9jYXNlX2luZm9zXy5wdXNoX2Jh
Y2sodHlwZWRfdGVzdF9pbmZvKTsKKyAgICBpZiAodHlwZWRfdGVzdF9pbmZvID09IG51bGxwdHIp
IHsKKyAgICAgIHR5cGVkX3Rlc3RfaW5mbyA9IG5ldyBQYXJhbWV0ZXJpemVkVGVzdFN1aXRlSW5m
bzxUZXN0U3VpdGU+KAorICAgICAgICAgIHRlc3Rfc3VpdGVfbmFtZSwgY29kZV9sb2NhdGlvbik7
CisgICAgICB0ZXN0X3N1aXRlX2luZm9zXy5wdXNoX2JhY2sodHlwZWRfdGVzdF9pbmZvKTsKICAg
ICB9CiAgICAgcmV0dXJuIHR5cGVkX3Rlc3RfaW5mbzsKICAgfQogICB2b2lkIFJlZ2lzdGVyVGVz
dHMoKSB7Ci0gICAgZm9yIChUZXN0Q2FzZUluZm9Db250YWluZXI6Oml0ZXJhdG9yIGl0ID0gdGVz
dF9jYXNlX2luZm9zXy5iZWdpbigpOwotICAgICAgICAgaXQgIT0gdGVzdF9jYXNlX2luZm9zXy5l
bmQoKTsgKytpdCkgewotICAgICAgKCppdCktPlJlZ2lzdGVyVGVzdHMoKTsKKyAgICBmb3IgKGF1
dG8mIHRlc3Rfc3VpdGVfaW5mbyA6IHRlc3Rfc3VpdGVfaW5mb3NfKSB7CisgICAgICB0ZXN0X3N1
aXRlX2luZm8tPlJlZ2lzdGVyVGVzdHMoKTsKICAgICB9CiAgIH0KKy8vICBMZWdhY3kgQVBJIGlz
IGRlcHJlY2F0ZWQgYnV0IHN0aWxsIGF2YWlsYWJsZQorI2lmbmRlZiBHVEVTVF9SRU1PVkVfTEVH
QUNZX1RFU1RfQ0FTRUFQSV8KKyAgdGVtcGxhdGUgPGNsYXNzIFRlc3RDYXNlPgorICBQYXJhbWV0
ZXJpemVkVGVzdENhc2VJbmZvPFRlc3RDYXNlPiogR2V0VGVzdENhc2VQYXR0ZXJuSG9sZGVyKAor
ICAgICAgY29uc3QgY2hhciogdGVzdF9jYXNlX25hbWUsIENvZGVMb2NhdGlvbiBjb2RlX2xvY2F0
aW9uKSB7CisgICAgcmV0dXJuIEdldFRlc3RTdWl0ZVBhdHRlcm5Ib2xkZXI8VGVzdENhc2U+KHRl
c3RfY2FzZV9uYW1lLCBjb2RlX2xvY2F0aW9uKTsKKyAgfQorCisjZW5kaWYgIC8vICBHVEVTVF9S
RU1PVkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KKworIHByaXZhdGU6CisgIHVzaW5nIFRlc3RTdWl0
ZUluZm9Db250YWluZXIgPSA6OnN0ZDo6dmVjdG9yPFBhcmFtZXRlcml6ZWRUZXN0U3VpdGVJbmZv
QmFzZSo+OworCisgIFRlc3RTdWl0ZUluZm9Db250YWluZXIgdGVzdF9zdWl0ZV9pbmZvc187CisK
KyAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhQYXJhbWV0ZXJpemVkVGVzdFN1aXRl
UmVnaXN0cnkpOworfTsKKworLy8gS2VlcCB0cmFjayBvZiB3aGF0IHR5cGUtcGFyYW1ldGVyaXpl
ZCB0ZXN0IHN1aXRlIGFyZSBkZWZpbmVkIGFuZAorLy8gd2hlcmUgYXMgd2VsbCBhcyB3aGljaCBh
cmUgaW50YXRpYXRlZC4gVGhpcyBhbGxvd3Mgc3VzZXF1ZW50bHkKKy8vIGlkZW50aWZ5aW5nIHN1
aXRzIHRoYXQgYXJlIGRlZmluZWQgYnV0IG5ldmVyIHVzZWQuCitjbGFzcyBUeXBlUGFyYW1ldGVy
aXplZFRlc3RTdWl0ZVJlZ2lzdHJ5IHsKKyBwdWJsaWM6CisgIC8vIEFkZCBhIHN1aXRlIGRlZmlu
aXRpb24KKyAgdm9pZCBSZWdpc3RlclRlc3RTdWl0ZShjb25zdCBjaGFyKiB0ZXN0X3N1aXRlX25h
bWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgQ29kZUxvY2F0aW9uIGNvZGVfbG9jYXRpb24p
OworCisgIC8vIEFkZCBhbiBpbnN0YW50aWF0aW9uIG9mIGEgc3VpdC4KKyAgdm9pZCBSZWdpc3Rl
ckluc3RhbnRpYXRpb24oY29uc3QgY2hhciogdGVzdF9zdWl0ZV9uYW1lKTsKKworICAvLyBGb3Ig
ZWFjaCBzdWl0IHJlcG9yZWQgYXMgZGVmaW5lZCBidXQgbm90IHJlcG9ydGVkIGFzIGluc3RhbnRp
YXRpb24sCisgIC8vIGVtaXQgYSB0ZXN0IHRoYXQgcmVwb3J0cyB0aGF0IGZhY3QgKGNvbmZpZ3Vy
YWJseSwgYXMgYW4gZXJyb3IpLgorICB2b2lkIENoZWNrRm9ySW5zdGFudGlhdGlvbnMoKTsKKwor
IHByaXZhdGU6CisgIHN0cnVjdCBUeXBlUGFyYW1ldGVyaXplZFRlc3RTdWl0ZUluZm8geworICAg
IGV4cGxpY2l0IFR5cGVQYXJhbWV0ZXJpemVkVGVzdFN1aXRlSW5mbyhDb2RlTG9jYXRpb24gYykK
KyAgICAgICAgOiBjb2RlX2xvY2F0aW9uKGMpLCBpbnN0YW50aWF0ZWQoZmFsc2UpIHt9CisKKyAg
ICBDb2RlTG9jYXRpb24gY29kZV9sb2NhdGlvbjsKKyAgICBib29sIGluc3RhbnRpYXRlZDsKKyAg
fTsKKworICBzdGQ6Om1hcDxzdGQ6OnN0cmluZywgVHlwZVBhcmFtZXRlcml6ZWRUZXN0U3VpdGVJ
bmZvPiBzdWl0ZXNfOworfTsKKworfSAgLy8gbmFtZXNwYWNlIGludGVybmFsCisKKy8vIEZvcndh
cmQgZGVjbGFyYXRpb25zIG9mIFZhbHVlc0luKCksIHdoaWNoIGlzIGltcGxlbWVudGVkIGluCisv
LyBpbmNsdWRlL2d0ZXN0L2d0ZXN0LXBhcmFtLXRlc3QuaC4KK3RlbXBsYXRlIDxjbGFzcyBDb250
YWluZXI+CitpbnRlcm5hbDo6UGFyYW1HZW5lcmF0b3I8dHlwZW5hbWUgQ29udGFpbmVyOjp2YWx1
ZV90eXBlPiBWYWx1ZXNJbigKKyAgICBjb25zdCBDb250YWluZXImIGNvbnRhaW5lcik7CisKK25h
bWVzcGFjZSBpbnRlcm5hbCB7CisvLyBVc2VkIGluIHRoZSBWYWx1ZXMoKSBmdW5jdGlvbiB0byBw
cm92aWRlIHBvbHltb3JwaGljIGNhcGFiaWxpdGllcy4KKwordGVtcGxhdGUgPHR5cGVuYW1lLi4u
IFRzPgorY2xhc3MgVmFsdWVBcnJheSB7CisgcHVibGljOgorICBWYWx1ZUFycmF5KFRzLi4uIHYp
IDogdl97c3RkOjptb3ZlKHYpLi4ufSB7fQorCisgIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgorICBv
cGVyYXRvciBQYXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsgIC8vIE5PTElOVAorICAgIHJldHVy
biBWYWx1ZXNJbihNYWtlVmVjdG9yPFQ+KE1ha2VJbmRleFNlcXVlbmNlPHNpemVvZi4uLihUcyk+
KCkpKTsKKyAgfQogCiAgcHJpdmF0ZToKLSAgdHlwZWRlZiA6OnN0ZDo6dmVjdG9yPFBhcmFtZXRl
cml6ZWRUZXN0Q2FzZUluZm9CYXNlKj4gVGVzdENhc2VJbmZvQ29udGFpbmVyOworICB0ZW1wbGF0
ZSA8dHlwZW5hbWUgVCwgc2l6ZV90Li4uIEk+CisgIHN0ZDo6dmVjdG9yPFQ+IE1ha2VWZWN0b3Io
SW5kZXhTZXF1ZW5jZTxJLi4uPikgY29uc3QgeworICAgIHJldHVybiBzdGQ6OnZlY3RvcjxUPntz
dGF0aWNfY2FzdDxUPih2Xy50ZW1wbGF0ZSBHZXQ8ST4oKSkuLi59OworICB9CisKKyAgRmxhdFR1
cGxlPFRzLi4uPiB2XzsKK307CisKK3RlbXBsYXRlIDx0eXBlbmFtZS4uLiBUPgorY2xhc3MgQ2Fy
dGVzaWFuUHJvZHVjdEdlbmVyYXRvcgorICAgIDogcHVibGljIFBhcmFtR2VuZXJhdG9ySW50ZXJm
YWNlPDo6c3RkOjp0dXBsZTxULi4uPj4geworIHB1YmxpYzoKKyAgdHlwZWRlZiA6OnN0ZDo6dHVw
bGU8VC4uLj4gUGFyYW1UeXBlOworCisgIENhcnRlc2lhblByb2R1Y3RHZW5lcmF0b3IoY29uc3Qg
c3RkOjp0dXBsZTxQYXJhbUdlbmVyYXRvcjxUPi4uLj4mIGcpCisgICAgICA6IGdlbmVyYXRvcnNf
KGcpIHt9CisgIH5DYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yKCkgb3ZlcnJpZGUge30KKworICBQ
YXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIEJlZ2luKCkgY29uc3Qgb3ZlcnJpZGUg
eworICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhpcywgZ2VuZXJhdG9yc18sIGZhbHNlKTsKKyAg
fQorICBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIEVuZCgpIGNvbnN0IG92ZXJy
aWRlIHsKKyAgICByZXR1cm4gbmV3IEl0ZXJhdG9yKHRoaXMsIGdlbmVyYXRvcnNfLCB0cnVlKTsK
KyAgfQorCisgcHJpdmF0ZToKKyAgdGVtcGxhdGUgPGNsYXNzIEk+CisgIGNsYXNzIEl0ZXJhdG9y
SW1wbDsKKyAgdGVtcGxhdGUgPHNpemVfdC4uLiBJPgorICBjbGFzcyBJdGVyYXRvckltcGw8SW5k
ZXhTZXF1ZW5jZTxJLi4uPj4KKyAgICAgIDogcHVibGljIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8
UGFyYW1UeXBlPiB7CisgICBwdWJsaWM6CisgICAgSXRlcmF0b3JJbXBsKGNvbnN0IFBhcmFtR2Vu
ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIGJhc2UsCisgICAgICAgICAgICAgY29uc3Qgc3Rk
Ojp0dXBsZTxQYXJhbUdlbmVyYXRvcjxUPi4uLj4mIGdlbmVyYXRvcnMsIGJvb2wgaXNfZW5kKQor
ICAgICAgICA6IGJhc2VfKGJhc2UpLAorICAgICAgICAgIGJlZ2luXyhzdGQ6OmdldDxJPihnZW5l
cmF0b3JzKS5iZWdpbigpLi4uKSwKKyAgICAgICAgICBlbmRfKHN0ZDo6Z2V0PEk+KGdlbmVyYXRv
cnMpLmVuZCgpLi4uKSwKKyAgICAgICAgICBjdXJyZW50Xyhpc19lbmQgPyBlbmRfIDogYmVnaW5f
KSB7CisgICAgICBDb21wdXRlQ3VycmVudFZhbHVlKCk7CisgICAgfQorICAgIH5JdGVyYXRvcklt
cGwoKSBvdmVycmlkZSB7fQorCisgICAgY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFy
YW1UeXBlPiogQmFzZUdlbmVyYXRvcigpIGNvbnN0IG92ZXJyaWRlIHsKKyAgICAgIHJldHVybiBi
YXNlXzsKKyAgICB9CisgICAgLy8gQWR2YW5jZSBzaG91bGQgbm90IGJlIGNhbGxlZCBvbiBiZXlv
bmQtb2YtcmFuZ2UgaXRlcmF0b3JzCisgICAgLy8gc28gbm8gY29tcG9uZW50IGl0ZXJhdG9ycyBt
dXN0IGJlIGJleW9uZCBlbmQgb2YgcmFuZ2UsIGVpdGhlci4KKyAgICB2b2lkIEFkdmFuY2UoKSBv
dmVycmlkZSB7CisgICAgICBhc3NlcnQoIUF0RW5kKCkpOworICAgICAgLy8gQWR2YW5jZSB0aGUg
bGFzdCBpdGVyYXRvci4KKyAgICAgICsrc3RkOjpnZXQ8c2l6ZW9mLi4uKFQpIC0gMT4oY3VycmVu
dF8pOworICAgICAgLy8gaWYgdGhhdCByZWFjaGVzIGVuZCwgcHJvcGFnYXRlIHRoYXQgdXAuCisg
ICAgICBBZHZhbmNlSWZFbmQ8c2l6ZW9mLi4uKFQpIC0gMT4oKTsKKyAgICAgIENvbXB1dGVDdXJy
ZW50VmFsdWUoKTsKKyAgICB9CisgICAgUGFyYW1JdGVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+
KiBDbG9uZSgpIGNvbnN0IG92ZXJyaWRlIHsKKyAgICAgIHJldHVybiBuZXcgSXRlcmF0b3JJbXBs
KCp0aGlzKTsKKyAgICB9CiAKLSAgVGVzdENhc2VJbmZvQ29udGFpbmVyIHRlc3RfY2FzZV9pbmZv
c187CisgICAgY29uc3QgUGFyYW1UeXBlKiBDdXJyZW50KCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1
cm4gY3VycmVudF92YWx1ZV8uZ2V0KCk7IH0KIAotICBHVEVTVF9ESVNBTExPV19DT1BZX0FORF9B
U1NJR05fKFBhcmFtZXRlcml6ZWRUZXN0Q2FzZVJlZ2lzdHJ5KTsKKyAgICBib29sIEVxdWFscyhj
b25zdCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4mIG90aGVyKSBjb25zdCBvdmVy
cmlkZSB7CisgICAgICAvLyBIYXZpbmcgdGhlIHNhbWUgYmFzZSBnZW5lcmF0b3IgZ3VhcmFudGVl
cyB0aGF0IHRoZSBvdGhlcgorICAgICAgLy8gaXRlcmF0b3IgaXMgb2YgdGhlIHNhbWUgdHlwZSBh
bmQgd2UgY2FuIGRvd25jYXN0LgorICAgICAgR1RFU1RfQ0hFQ0tfKEJhc2VHZW5lcmF0b3IoKSA9
PSBvdGhlci5CYXNlR2VuZXJhdG9yKCkpCisgICAgICAgICAgPDwgIlRoZSBwcm9ncmFtIGF0dGVt
cHRlZCB0byBjb21wYXJlIGl0ZXJhdG9ycyAiCisgICAgICAgICAgPDwgImZyb20gZGlmZmVyZW50
IGdlbmVyYXRvcnMuIiA8PCBzdGQ6OmVuZGw7CisgICAgICBjb25zdCBJdGVyYXRvckltcGwqIHR5
cGVkX290aGVyID0KKyAgICAgICAgICBDaGVja2VkRG93bmNhc3RUb0FjdHVhbFR5cGU8Y29uc3Qg
SXRlcmF0b3JJbXBsPigmb3RoZXIpOworCisgICAgICAvLyBXZSBtdXN0IHJlcG9ydCBpdGVyYXRv
cnMgZXF1YWwgaWYgdGhleSBib3RoIHBvaW50IGJleW9uZCB0aGVpcgorICAgICAgLy8gcmVzcGVj
dGl2ZSByYW5nZXMuIFRoYXQgY2FuIGhhcHBlbiBpbiBhIHZhcmlldHkgb2YgZmFzaGlvbnMsCisg
ICAgICAvLyBzbyB3ZSBoYXZlIHRvIGNvbnN1bHQgQXRFbmQoKS4KKyAgICAgIGlmIChBdEVuZCgp
ICYmIHR5cGVkX290aGVyLT5BdEVuZCgpKSByZXR1cm4gdHJ1ZTsKKworICAgICAgYm9vbCBzYW1l
ID0gdHJ1ZTsKKyAgICAgIGJvb2wgZHVtbXlbXSA9IHsKKyAgICAgICAgICAoc2FtZSA9IHNhbWUg
JiYgc3RkOjpnZXQ8ST4oY3VycmVudF8pID09CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBzdGQ6OmdldDxJPih0eXBlZF9vdGhlci0+Y3VycmVudF8pKS4uLn07CisgICAgICAodm9pZClk
dW1teTsKKyAgICAgIHJldHVybiBzYW1lOworICAgIH0KKworICAgcHJpdmF0ZToKKyAgICB0ZW1w
bGF0ZSA8c2l6ZV90IFRoaXNJPgorICAgIHZvaWQgQWR2YW5jZUlmRW5kKCkgeworICAgICAgaWYg
KHN0ZDo6Z2V0PFRoaXNJPihjdXJyZW50XykgIT0gc3RkOjpnZXQ8VGhpc0k+KGVuZF8pKSByZXR1
cm47CisKKyAgICAgIGJvb2wgbGFzdCA9IFRoaXNJID09IDA7CisgICAgICBpZiAobGFzdCkgewor
ICAgICAgICAvLyBXZSBhcmUgZG9uZS4gTm90aGluZyBlbHNlIHRvIHByb3BhZ2F0ZS4KKyAgICAg
ICAgcmV0dXJuOworICAgICAgfQorCisgICAgICBjb25zdGV4cHIgc2l6ZV90IE5leHRJID0gVGhp
c0kgLSAoVGhpc0kgIT0gMCk7CisgICAgICBzdGQ6OmdldDxUaGlzST4oY3VycmVudF8pID0gc3Rk
OjpnZXQ8VGhpc0k+KGJlZ2luXyk7CisgICAgICArK3N0ZDo6Z2V0PE5leHRJPihjdXJyZW50Xyk7
CisgICAgICBBZHZhbmNlSWZFbmQ8TmV4dEk+KCk7CisgICAgfQorCisgICAgdm9pZCBDb21wdXRl
Q3VycmVudFZhbHVlKCkgeworICAgICAgaWYgKCFBdEVuZCgpKQorICAgICAgICBjdXJyZW50X3Zh
bHVlXyA9IHN0ZDo6bWFrZV9zaGFyZWQ8UGFyYW1UeXBlPigqc3RkOjpnZXQ8ST4oY3VycmVudF8p
Li4uKTsKKyAgICB9CisgICAgYm9vbCBBdEVuZCgpIGNvbnN0IHsKKyAgICAgIGJvb2wgYXRfZW5k
ID0gZmFsc2U7CisgICAgICBib29sIGR1bW15W10gPSB7CisgICAgICAgICAgKGF0X2VuZCA9IGF0
X2VuZCB8fCBzdGQ6OmdldDxJPihjdXJyZW50XykgPT0gc3RkOjpnZXQ8ST4oZW5kXykpLi4ufTsK
KyAgICAgICh2b2lkKWR1bW15OworICAgICAgcmV0dXJuIGF0X2VuZDsKKyAgICB9CisKKyAgICBj
b25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+KiBjb25zdCBiYXNlXzsKKyAg
ICBzdGQ6OnR1cGxlPHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ+OjppdGVyYXRvci4uLj4gYmVn
aW5fOworICAgIHN0ZDo6dHVwbGU8dHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VD46Oml0ZXJhdG9y
Li4uPiBlbmRfOworICAgIHN0ZDo6dHVwbGU8dHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VD46Oml0
ZXJhdG9yLi4uPiBjdXJyZW50XzsKKyAgICBzdGQ6OnNoYXJlZF9wdHI8UGFyYW1UeXBlPiBjdXJy
ZW50X3ZhbHVlXzsKKyAgfTsKKworICB1c2luZyBJdGVyYXRvciA9IEl0ZXJhdG9ySW1wbDx0eXBl
bmFtZSBNYWtlSW5kZXhTZXF1ZW5jZTxzaXplb2YuLi4oVCk+Ojp0eXBlPjsKKworICBzdGQ6OnR1
cGxlPFBhcmFtR2VuZXJhdG9yPFQ+Li4uPiBnZW5lcmF0b3JzXzsKK307CisKK3RlbXBsYXRlIDxj
bGFzcy4uLiBHZW4+CitjbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyIHsKKyBwdWJsaWM6Cisg
IENhcnRlc2lhblByb2R1Y3RIb2xkZXIoY29uc3QgR2VuJi4uLiBnKSA6IGdlbmVyYXRvcnNfKGcu
Li4pIHt9CisgIHRlbXBsYXRlIDx0eXBlbmFtZS4uLiBUPgorICBvcGVyYXRvciBQYXJhbUdlbmVy
YXRvcjw6OnN0ZDo6dHVwbGU8VC4uLj4+KCkgY29uc3QgeworICAgIHJldHVybiBQYXJhbUdlbmVy
YXRvcjw6OnN0ZDo6dHVwbGU8VC4uLj4+KAorICAgICAgICBuZXcgQ2FydGVzaWFuUHJvZHVjdEdl
bmVyYXRvcjxULi4uPihnZW5lcmF0b3JzXykpOworICB9CisKKyBwcml2YXRlOgorICBzdGQ6OnR1
cGxlPEdlbi4uLj4gZ2VuZXJhdG9yc187CiB9OwogCiB9ICAvLyBuYW1lc3BhY2UgaW50ZXJuYWwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVk
ZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1wb3J0LWFyY2guaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFy
dHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1wb3J0LWFyY2gu
aAppbmRleCBmODM3MDBlMDZkOThjMzZmNjQ4NzI5MWMzZjkzMTgwN2FmMzUzZjc0Li5kMzIzOWIy
NWJhZjliZjQ3N2ExOGNhOTJiZDczMDFiMWIzMmRmM2E5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3Qt
cG9ydC1hcmNoLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9p
bmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQtYXJjaC5oCkBAIC0zOCwxNCArMzgsMTMg
QEAKIC8vIERldGVybWluZXMgdGhlIHBsYXRmb3JtIG9uIHdoaWNoIEdvb2dsZSBUZXN0IGlzIGNv
bXBpbGVkLgogI2lmZGVmIF9fQ1lHV0lOX18KICMgZGVmaW5lIEdURVNUX09TX0NZR1dJTiAxCi0j
ZWxpZiBkZWZpbmVkIF9fU1lNQklBTjMyX18KLSMgZGVmaW5lIEdURVNUX09TX1NZTUJJQU4gMQor
IyBlbGlmIGRlZmluZWQoX19NSU5HV19fKSB8fCBkZWZpbmVkKF9fTUlOR1czMl9fKSB8fCBkZWZp
bmVkKF9fTUlOR1c2NF9fKQorIyAgZGVmaW5lIEdURVNUX09TX1dJTkRPV1NfTUlOR1cgMQorIyAg
ZGVmaW5lIEdURVNUX09TX1dJTkRPV1MgMQogI2VsaWYgZGVmaW5lZCBfV0lOMzIKICMgZGVmaW5l
IEdURVNUX09TX1dJTkRPV1MgMQogIyBpZmRlZiBfV0lOMzJfV0NFCiAjICBkZWZpbmUgR1RFU1Rf
T1NfV0lORE9XU19NT0JJTEUgMQotIyBlbGlmIGRlZmluZWQoX19NSU5HV19fKSB8fCBkZWZpbmVk
KF9fTUlOR1czMl9fKQotIyAgZGVmaW5lIEdURVNUX09TX1dJTkRPV1NfTUlOR1cgMQogIyBlbGlm
IGRlZmluZWQoV0lOQVBJX0ZBTUlMWSkKICMgIGluY2x1ZGUgPHdpbmFwaWZhbWlseS5oPgogIyAg
aWYgV0lOQVBJX0ZBTUlMWV9QQVJUSVRJT04oV0lOQVBJX1BBUlRJVElPTl9ERVNLVE9QKQpAQCAt
NjUsMTUgKzY0LDIxIEBACiAjIGVsc2UKICMgIGRlZmluZSBHVEVTVF9PU19XSU5ET1dTX0RFU0tU
T1AgMQogIyBlbmRpZiAgLy8gX1dJTjMyX1dDRQorI2VsaWYgZGVmaW5lZCBfX09TMl9fCisjIGRl
ZmluZSBHVEVTVF9PU19PUzIgMQogI2VsaWYgZGVmaW5lZCBfX0FQUExFX18KICMgZGVmaW5lIEdU
RVNUX09TX01BQyAxCiAjIGlmIFRBUkdFVF9PU19JUEhPTkUKICMgIGRlZmluZSBHVEVTVF9PU19J
T1MgMQogIyBlbmRpZgorI2VsaWYgZGVmaW5lZCBfX0RyYWdvbkZseV9fCisjIGRlZmluZSBHVEVT
VF9PU19EUkFHT05GTFkgMQogI2VsaWYgZGVmaW5lZCBfX0ZyZWVCU0RfXwogIyBkZWZpbmUgR1RF
U1RfT1NfRlJFRUJTRCAxCiAjZWxpZiBkZWZpbmVkIF9fRnVjaHNpYV9fCiAjIGRlZmluZSBHVEVT
VF9PU19GVUNIU0lBIDEKKyNlbGlmIGRlZmluZWQoX19HTElCQ19fKSAmJiBkZWZpbmVkKF9fRnJl
ZUJTRF9rZXJuZWxfXykKKyMgZGVmaW5lIEdURVNUX09TX0dOVV9LRlJFRUJTRCAxCiAjZWxpZiBk
ZWZpbmVkIF9fbGludXhfXwogIyBkZWZpbmUgR1RFU1RfT1NfTElOVVggMQogIyBpZiBkZWZpbmVk
IF9fQU5EUk9JRF9fCkBAIC05NSw2ICsxMDAsMTIgQEAKICMgZGVmaW5lIEdURVNUX09TX09QRU5C
U0QgMQogI2VsaWYgZGVmaW5lZCBfX1FOWF9fCiAjIGRlZmluZSBHVEVTVF9PU19RTlggMQorI2Vs
aWYgZGVmaW5lZChfX0hBSUtVX18pCisjZGVmaW5lIEdURVNUX09TX0hBSUtVIDEKKyNlbGlmIGRl
ZmluZWQgRVNQODI2NgorI2RlZmluZSBHVEVTVF9PU19FU1A4MjY2IDEKKyNlbGlmIGRlZmluZWQg
RVNQMzIKKyNkZWZpbmUgR1RFU1RfT1NfRVNQMzIgMQogI2VuZGlmICAvLyBfX0NZR1dJTl9fCiAK
ICNlbmRpZiAgLy8gR1RFU1RfSU5DTFVERV9HVEVTVF9JTlRFUk5BTF9HVEVTVF9QT1JUX0FSQ0hf
SF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5j
bHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1wb3J0LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5
L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtcG9ydC5oCmluZGV4
IDc4NjQ5N2Q4NTRjOTdmMWI2YWI5MzcyYTI0MWMxZmExNTVhMzBhNTQuLjYwZmY0NzE2NGYxNWM3
NTZlZGVjMWNiMjFkZWRiN2RiN2U0N2FiOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRf
cGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1wb3J0LmgK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0
L2ludGVybmFsL2d0ZXN0LXBvcnQuaApAQCAtNzIsMTAgKzcyLDYgQEAKIC8vICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaXMvaXNuJ3QgYXZhaWxhYmxlLgogLy8gICBHVEVTVF9IQVNfRVhD
RVBUSU9OUyAgICAgLSBEZWZpbmUgaXQgdG8gMS8wIHRvIGluZGljYXRlIHRoYXQgZXhjZXB0aW9u
cwogLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmUgZW5hYmxlZC4KLS8vICAgR1RF
U1RfSEFTX0dMT0JBTF9TVFJJTkcgIC0gRGVmaW5lIGl0IHRvIDEvMCB0byBpbmRpY2F0ZSB0aGF0
IDo6c3RyaW5nCi0vLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzL2lzbid0IGF2YWls
YWJsZQotLy8gICBHVEVTVF9IQVNfR0xPQkFMX1dTVFJJTkcgLSBEZWZpbmUgaXQgdG8gMS8wIHRv
IGluZGljYXRlIHRoYXQgOjp3c3RyaW5nCi0vLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGlzL2lzbid0IGF2YWlsYWJsZQogLy8gICBHVEVTVF9IQVNfUE9TSVhfUkUgICAgICAgLSBEZWZp
bmUgaXQgdG8gMS8wIHRvIGluZGljYXRlIHRoYXQgUE9TSVggcmVndWxhcgogLy8gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9ucyBhcmUvYXJlbid0IGF2YWlsYWJsZS4KIC8v
ICAgR1RFU1RfSEFTX1BUSFJFQUQgICAgICAgIC0gRGVmaW5lIGl0IHRvIDEvMCB0byBpbmRpY2F0
ZSB0aGF0IDxwdGhyZWFkLmg+CkBAIC04NSw4ICs4MSw2IEBACiAvLyAgIEdURVNUX0hBU19TVERf
V1NUUklORyAgICAtIERlZmluZSBpdCB0byAxLzAgdG8gaW5kaWNhdGUgdGhhdAogLy8gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBzdGQ6OndzdHJpbmcgZG9lcy9kb2Vzbid0IHdvcmsgKEdv
b2dsZSBUZXN0IGNhbgogLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZSB1c2VkIHdo
ZXJlIHN0ZDo6d3N0cmluZyBpcyB1bmF2YWlsYWJsZSkuCi0vLyAgIEdURVNUX0hBU19UUjFfVFVQ
TEUgICAgICAtIERlZmluZSBpdCB0byAxLzAgdG8gaW5kaWNhdGUgdHIxOjp0dXBsZQotLy8gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpcy9pc24ndCBhdmFpbGFibGUuCiAvLyAgIEdURVNU
X0hBU19TRUggICAgICAgICAgICAtIERlZmluZSBpdCB0byAxLzAgdG8gaW5kaWNhdGUgd2hldGhl
ciB0aGUKIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcGlsZXIgc3VwcG9ydHMg
TWljcm9zb2Z0J3MgIlN0cnVjdHVyZWQKIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
RXhjZXB0aW9uIEhhbmRsaW5nIi4KQEAgLTk0LDEyICs4OCw2IEBACiAvLyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAtIERlZmluZSBpdCB0byAxLzAgdG8gaW5kaWNhdGUgd2hldGhlciB0aGUK
IC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhdGZvcm0gc3VwcG9ydHMgSS9PIHN0
cmVhbSByZWRpcmVjdGlvbiB1c2luZwogLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBk
dXAoKSBhbmQgZHVwMigpLgotLy8gICBHVEVTVF9VU0VfT1dOX1RSMV9UVVBMRSAgLSBEZWZpbmUg
aXQgdG8gMS8wIHRvIGluZGljYXRlIHdoZXRoZXIgR29vZ2xlCi0vLyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFRlc3QncyBvd24gdHIxIHR1cGxlIGltcGxlbWVudGF0aW9uIHNob3VsZCBi
ZQotLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VkLiAgVW51c2VkIHdoZW4gdGhl
IHVzZXIgc2V0cwotLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHVEVTVF9IQVNfVFIx
X1RVUExFIHRvIDAuCi0vLyAgIEdURVNUX0xBTkdfQ1hYMTEgICAgICAgICAtIERlZmluZSBpdCB0
byAxLzAgdG8gaW5kaWNhdGUgdGhhdCBHb29nbGUgVGVzdAotLy8gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpcyBidWlsZGluZyBpbiBDKysxMS9DKys5OCBtb2RlLgogLy8gICBHVEVTVF9M
SU5LRURfQVNfU0hBUkVEX0xJQlJBUlkKIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0g
RGVmaW5lIHRvIDEgd2hlbiBjb21waWxpbmcgdGVzdHMgdGhhdCB1c2UKIC8vICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgR29vZ2xlIFRlc3QgYXMgYSBzaGFyZWQgbGlicmFyeSAoa25vd24g
YXMKQEAgLTEyNSw4ICsxMTMsMTEgQEAKIC8vCiAvLyAgIEdURVNUX09TX0FJWCAgICAgIC0gSUJN
IEFJWAogLy8gICBHVEVTVF9PU19DWUdXSU4gICAtIEN5Z3dpbgorLy8gICBHVEVTVF9PU19EUkFH
T05GTFkgLSBEcmFnb25GbHlCU0QKIC8vICAgR1RFU1RfT1NfRlJFRUJTRCAgLSBGcmVlQlNECiAv
LyAgIEdURVNUX09TX0ZVQ0hTSUEgIC0gRnVjaHNpYQorLy8gICBHVEVTVF9PU19HTlVfS0ZSRUVC
U0QgLSBHTlUva0ZyZWVCU0QKKy8vICAgR1RFU1RfT1NfSEFJS1UgICAgLSBIYWlrdQogLy8gICBH
VEVTVF9PU19IUFVYICAgICAtIEhQLVVYCiAvLyAgIEdURVNUX09TX0xJTlVYICAgIC0gTGludXgK
IC8vICAgICBHVEVTVF9PU19MSU5VWF9BTkRST0lEIC0gR29vZ2xlIEFuZHJvaWQKQEAgLTEzNSw5
ICsxMjYsOSBAQAogLy8gICBHVEVTVF9PU19OQUNMICAgICAtIEdvb2dsZSBOYXRpdmUgQ2xpZW50
IChOYUNsKQogLy8gICBHVEVTVF9PU19ORVRCU0QgICAtIE5ldEJTRAogLy8gICBHVEVTVF9PU19P
UEVOQlNEICAtIE9wZW5CU0QKKy8vICAgR1RFU1RfT1NfT1MyICAgICAgLSBPUy8yCiAvLyAgIEdU
RVNUX09TX1FOWCAgICAgIC0gUU5YCiAvLyAgIEdURVNUX09TX1NPTEFSSVMgIC0gU3VuIFNvbGFy
aXMKLS8vICAgR1RFU1RfT1NfU1lNQklBTiAgLSBTeW1iaWFuCiAvLyAgIEdURVNUX09TX1dJTkRP
V1MgIC0gV2luZG93cyAoRGVza3RvcCwgTWluR1csIG9yIE1vYmlsZSkKIC8vICAgICBHVEVTVF9P
U19XSU5ET1dTX0RFU0tUT1AgIC0gV2luZG93cyBEZXNrdG9wCiAvLyAgICAgR1RFU1RfT1NfV0lO
RE9XU19NSU5HVyAgICAtIE1pbkdXCkBAIC0xNDYsNyArMTM3LDcgQEAKIC8vICAgICBHVEVTVF9P
U19XSU5ET1dTX1JUICAgICAgIC0gV2luZG93cyBTdG9yZSBBcHAvV2luUlQKIC8vICAgR1RFU1Rf
T1NfWk9TICAgICAgLSB6L09TCiAvLwotLy8gQW1vbmcgdGhlIHBsYXRmb3JtcywgQ3lnd2luLCBM
aW51eCwgTWF4IE9TIFgsIGFuZCBXaW5kb3dzIGhhdmUgdGhlCisvLyBBbW9uZyB0aGUgcGxhdGZv
cm1zLCBDeWd3aW4sIExpbnV4LCBNYWMgT1MgWCwgYW5kIFdpbmRvd3MgaGF2ZSB0aGUKIC8vIG1v
c3Qgc3RhYmxlIHN1cHBvcnQuICBTaW5jZSBjb3JlIG1lbWJlcnMgb2YgdGhlIEdvb2dsZSBUZXN0
IHByb2plY3QKIC8vIGRvbid0IGhhdmUgYWNjZXNzIHRvIG90aGVyIHBsYXRmb3Jtcywgc3VwcG9y
dCBmb3IgdGhlbSBtYXkgYmUgbGVzcwogLy8gc3RhYmxlLiAgSWYgeW91IG5vdGljZSBhbnkgcHJv
YmxlbXMgb24geW91ciBwbGF0Zm9ybSwgcGxlYXNlIG5vdGlmeQpAQCAtMTcyLDggKzE2Myw2IEBA
CiAvLyAgIEVYUEVDVF9ERUFUSChEb1NvbWV0aGluZ0RlYWRseSgpKTsKIC8vICNlbmRpZgogLy8K
LS8vICAgR1RFU1RfSEFTX0NPTUJJTkUgICAgICAtIHRoZSBDb21iaW5lKCkgZnVuY3Rpb24gKGZv
ciB2YWx1ZS1wYXJhbWV0ZXJpemVkCi0vLyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0
cykKIC8vICAgR1RFU1RfSEFTX0RFQVRIX1RFU1QgICAtIGRlYXRoIHRlc3RzCiAvLyAgIEdURVNU
X0hBU19UWVBFRF9URVNUICAgLSB0eXBlZCB0ZXN0cwogLy8gICBHVEVTVF9IQVNfVFlQRURfVEVT
VF9QIC0gdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3RzCkBAIC0xODQsNyArMTczLDYgQEAKIC8vICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmluZSB0aGVtc2VsdmVzLgogLy8gICBHVEVTVF9V
U0VTX1NJTVBMRV9SRSAgIC0gb3VyIG93biBzaW1wbGUgcmVnZXggaXMgdXNlZDsKIC8vICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHRoZSBhYm92ZSBSRVxiKHMpIGFyZSBtdXR1YWxseSBleGNs
dXNpdmUuCi0vLyAgIEdURVNUX0NBTl9DT01QQVJFX05VTEwgLSBhY2NlcHRzIHVudHlwZWQgTlVM
TCBpbiBFWFBFQ1RfRVEoKS4KIAogLy8gTWlzYyBwdWJsaWMgbWFjcm9zCiAvLyAtLS0tLS0tLS0t
LS0tLS0tLS0KQEAgLTIwMiwzMSArMTkwLDIzIEBACiAvLyAgIEdURVNUX0FNQklHVU9VU19FTFNF
X0JMT0NLRVJfIC0gZm9yIGRpc2FibGluZyBhIGdjYyB3YXJuaW5nLgogLy8gICBHVEVTVF9BVFRS
SUJVVEVfVU5VU0VEXyAgLSBkZWNsYXJlcyB0aGF0IGEgY2xhc3MnIGluc3RhbmNlcyBvciBhCiAv
LyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcmlhYmxlIGRvbid0IGhhdmUgdG8gYmUg
dXNlZC4KLS8vICAgR1RFU1RfRElTQUxMT1dfQVNTSUdOXyAgIC0gZGlzYWJsZXMgb3BlcmF0b3I9
LgorLy8gICBHVEVTVF9ESVNBTExPV19BU1NJR05fICAgLSBkaXNhYmxlcyBjb3B5IG9wZXJhdG9y
PS4KIC8vICAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyAtIGRpc2FibGVzIGNvcHkg
Y3RvciBhbmQgb3BlcmF0b3I9LgorLy8gICBHVEVTVF9ESVNBTExPV19NT1ZFX0FTU0lHTl8gICAt
IGRpc2FibGVzIG1vdmUgb3BlcmF0b3I9LgorLy8gICBHVEVTVF9ESVNBTExPV19NT1ZFX0FORF9B
U1NJR05fIC0gZGlzYWJsZXMgbW92ZSBjdG9yIGFuZCBvcGVyYXRvcj0uCiAvLyAgIEdURVNUX01V
U1RfVVNFX1JFU1VMVF8gICAtIGRlY2xhcmVzIHRoYXQgYSBmdW5jdGlvbidzIHJlc3VsdCBtdXN0
IGJlIHVzZWQuCiAvLyAgIEdURVNUX0lOVEVOVElPTkFMX0NPTlNUX0NPTkRfUFVTSF8gLSBzdGFy
dCBjb2RlIHNlY3Rpb24gd2hlcmUgTVNWQyBDNDEyNyBpcwogLy8gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc3VwcHJlc3NlZCAoY29uc3RhbnQgY29uZGl0aW9uYWwpLgog
Ly8gICBHVEVTVF9JTlRFTlRJT05BTF9DT05TVF9DT05EX1BPUF8gIC0gZmluaXNoIGNvZGUgc2Vj
dGlvbiB3aGVyZSBNU1ZDIEM0MTI3CiAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpcyBzdXBwcmVzc2VkLgotLy8KLS8vIEMrKzExIGZlYXR1cmUgd3JhcHBlcnM6Ci0v
LwotLy8gICB0ZXN0aW5nOjppbnRlcm5hbDo6Zm9yd2FyZCAtIHBvcnRhYmlsaXR5IHdyYXBwZXIg
Zm9yIHN0ZDo6Zm9yd2FyZC4KLS8vICAgdGVzdGluZzo6aW50ZXJuYWw6Om1vdmUgIC0gcG9ydGFi
aWxpdHkgd3JhcHBlciBmb3Igc3RkOjptb3ZlLgorLy8gICBHVEVTVF9JTlRFUk5BTF9IQVNfU1RS
SU5HX1ZJRVcgLSBmb3IgZW5hYmxpbmcgTWF0Y2hlcjxzdGQ6OnN0cmluZ192aWV3PiBvcgorLy8g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNYXRjaGVyPGFic2w6OnN0cmluZ192
aWV3PgorLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGVjaWFsaXphdGlv
bnMuCiAvLwogLy8gU3luY2hyb25pemF0aW9uOgogLy8gICBNdXRleCwgTXV0ZXhMb2NrLCBUaHJl
YWRMb2NhbCwgR2V0VGhyZWFkQ291bnQoKQogLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAg
LSBzeW5jaHJvbml6YXRpb24gcHJpbWl0aXZlcy4KIC8vCi0vLyBUZW1wbGF0ZSBtZXRhIHByb2dy
YW1taW5nOgotLy8gICBpc19wb2ludGVyICAgICAtIGFzIGluIFRSMTsgbmVlZGVkIG9uIFN5bWJp
YW4gYW5kIElCTSBYTCBDL0MrKyBvbmx5LgotLy8gICBJdGVyYXRvclRyYWl0cyAtIHBhcnRpYWwg
aW1wbGVtZW50YXRpb24gb2Ygc3RkOjppdGVyYXRvcl90cmFpdHMsIHdoaWNoCi0vLyAgICAgICAg
ICAgICAgICAgICAgaXMgbm90IGF2YWlsYWJsZSBpbiBsaWJDc3RkIHdoZW4gY29tcGlsZWQgd2l0
aCBTdW4gQysrLgotLy8KLS8vIFNtYXJ0IHBvaW50ZXJzOgotLy8gICBzY29wZWRfcHRyICAgICAt
IGFzIGluIFRSMi4KLS8vCiAvLyBSZWd1bGFyIGV4cHJlc3Npb25zOgogLy8gICBSRSAgICAgICAg
ICAgICAtIGEgc2ltcGxlIHJlZ3VsYXIgZXhwcmVzc2lvbiBjbGFzcyB1c2luZyB0aGUgUE9TSVgK
IC8vICAgICAgICAgICAgICAgICAgICBFeHRlbmRlZCBSZWd1bGFyIEV4cHJlc3Npb24gc3ludGF4
IG9uIFVOSVgtbGlrZSBwbGF0Zm9ybXMKQEAgLTI0OCw4ICsyMjgsNyBAQAogLy8KIC8vIEludGVn
ZXIgdHlwZXM6CiAvLyAgIFR5cGVXaXRoU2l6ZSAgIC0gbWFwcyBhbiBpbnRlZ2VyIHRvIGEgaW50
IHR5cGUuCi0vLyAgIEludDMyLCBVSW50MzIsIEludDY0LCBVSW50NjQsIFRpbWVJbk1pbGxpcwot
Ly8gICAgICAgICAgICAgICAgICAtIGludGVnZXJzIG9mIGtub3duIHNpemVzLgorLy8gICBUaW1l
SW5NaWxsaXMgICAtIGludGVnZXJzIG9mIGtub3duIHNpemVzLgogLy8gICBCaWdnZXN0SW50ICAg
ICAtIHRoZSBiaWdnZXN0IHNpZ25lZCBpbnRlZ2VyIHR5cGUuCiAvLwogLy8gQ29tbWFuZC1saW5l
IHV0aWxpdGllczoKQEAgLTI2MCwxNCArMjM5LDIzIEBACiAvLyBFbnZpcm9ubWVudCB2YXJpYWJs
ZSB1dGlsaXRpZXM6CiAvLyAgIEdldEVudigpICAgICAgICAgICAgIC0gZ2V0cyB0aGUgdmFsdWUg
b2YgYW4gZW52aXJvbm1lbnQgdmFyaWFibGUuCiAvLyAgIEJvb2xGcm9tR1Rlc3RFbnYoKSAgIC0g
cGFyc2VzIGEgYm9vbCBlbnZpcm9ubWVudCB2YXJpYWJsZS4KLS8vICAgSW50MzJGcm9tR1Rlc3RF
bnYoKSAgLSBwYXJzZXMgYW4gSW50MzIgZW52aXJvbm1lbnQgdmFyaWFibGUuCisvLyAgIEludDMy
RnJvbUdUZXN0RW52KCkgIC0gcGFyc2VzIGFuIGludDMyX3QgZW52aXJvbm1lbnQgdmFyaWFibGUu
CiAvLyAgIFN0cmluZ0Zyb21HVGVzdEVudigpIC0gcGFyc2VzIGEgc3RyaW5nIGVudmlyb25tZW50
IHZhcmlhYmxlLgorLy8KKy8vIERlcHJlY2F0aW9uIHdhcm5pbmdzOgorLy8gICBHVEVTVF9JTlRF
Uk5BTF9ERVBSRUNBVEVEKG1lc3NhZ2UpIC0gYXR0cmlidXRlIG1hcmtpbmcgYSBmdW5jdGlvbiBh
cworLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVwcmVjYXRlZDsg
Y2FsbGluZyBhIG1hcmtlZCBmdW5jdGlvbgorLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgc2hvdWxkIGdlbmVyYXRlIGEgY29tcGlsZXIgd2FybmluZwogCiAjaW5jbHVk
ZSA8Y3R5cGUuaD4gICAvLyBmb3IgaXNzcGFjZSwgZXRjCiAjaW5jbHVkZSA8c3RkZGVmLmg+ICAv
LyBmb3IgcHRyZGlmZl90Ci0jaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8c3RkaW8uaD4K
KyNpbmNsdWRlIDxzdGRsaWIuaD4KICNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxjc3Rk
aW50PgorI2luY2x1ZGUgPGxpbWl0cz4KKyNpbmNsdWRlIDx0eXBlX3RyYWl0cz4KKwogI2lmbmRl
ZiBfV0lOMzJfV0NFCiAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgogIyBpbmNsdWRlIDxzeXMvc3Rh
dC5oPgpAQCAtMjc4LDE3ICsyNjYsMTQgQEAKICMgaW5jbHVkZSA8VGFyZ2V0Q29uZGl0aW9uYWxz
Lmg+CiAjZW5kaWYKIAotLy8gQnJpbmdzIGluIHRoZSBkZWZpbml0aW9uIG9mIEhBU19HTE9CQUxf
U1RSSU5HLiAgVGhpcyBtdXN0IGJlIGRvbmUKLS8vIEJFRk9SRSB3ZSB0ZXN0IEhBU19HTE9CQUxf
U1RSSU5HLgotI2luY2x1ZGUgPHN0cmluZz4gIC8vIE5PTElOVAotI2luY2x1ZGUgPGFsZ29yaXRo
bT4gIC8vIE5PTElOVAogI2luY2x1ZGUgPGlvc3RyZWFtPiAgLy8gTk9MSU5UCi0jaW5jbHVkZSA8
c3N0cmVhbT4gIC8vIE5PTElOVAotI2luY2x1ZGUgPHV0aWxpdHk+CisjaW5jbHVkZSA8bWVtb3J5
PgorI2luY2x1ZGUgPHN0cmluZz4gIC8vIE5PTElOVAorI2luY2x1ZGUgPHR1cGxlPgogI2luY2x1
ZGUgPHZlY3Rvcj4gIC8vIE5PTElOVAogCi0jaW5jbHVkZSAiZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3Qt
cG9ydC1hcmNoLmgiCiAjaW5jbHVkZSAiZ3Rlc3QvaW50ZXJuYWwvY3VzdG9tL2d0ZXN0LXBvcnQu
aCIKKyNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9ndGVzdC1wb3J0LWFyY2guaCIKIAogI2lmICFk
ZWZpbmVkKEdURVNUX0RFVl9FTUFJTF8pCiAjIGRlZmluZSBHVEVTVF9ERVZfRU1BSUxfICJnb29n
bGV0ZXN0ZnJhbWV3b3JrQEBnb29nbGVncm91cHMuY29tIgpAQCAtMzE1LDE0ICszMDAsMTQgQEAK
IC8vICAgR1RFU1RfRElTQUJMRV9NU0NfV0FSTklOR1NfUFVTSF8oNDgwMCA0Mzg1KQogLy8gICAv
KiBjb2RlIHRoYXQgdHJpZ2dlcnMgd2FybmluZ3MgQzQ4MDAgYW5kIEM0Mzg1ICovCiAvLyAgIEdU
RVNUX0RJU0FCTEVfTVNDX1dBUk5JTkdTX1BPUF8oKQotI2lmIF9NU0NfVkVSID49IDE0MDAKKyNp
ZiBkZWZpbmVkKF9NU0NfVkVSKQogIyBkZWZpbmUgR1RFU1RfRElTQUJMRV9NU0NfV0FSTklOR1Nf
UFVTSF8od2FybmluZ3MpIFwKICAgICBfX3ByYWdtYSh3YXJuaW5nKHB1c2gpKSAgICAgICAgICAg
ICAgICAgICAgICAgIFwKICAgICBfX3ByYWdtYSh3YXJuaW5nKGRpc2FibGU6IHdhcm5pbmdzKSkK
ICMgZGVmaW5lIEdURVNUX0RJU0FCTEVfTVNDX1dBUk5JTkdTX1BPUF8oKSAgICAgICAgICBcCiAg
ICAgX19wcmFnbWEod2FybmluZyhwb3ApKQogI2Vsc2UKLS8vIE9sZGVyIHZlcnNpb25zIG9mIE1T
VkMgZG9uJ3QgaGF2ZSBfX3ByYWdtYS4KKy8vIE5vdCBhbGwgY29tcGlsZXJzIGFyZSBNU1ZDCiAj
IGRlZmluZSBHVEVTVF9ESVNBQkxFX01TQ19XQVJOSU5HU19QVVNIXyh3YXJuaW5ncykKICMgZGVm
aW5lIEdURVNUX0RJU0FCTEVfTVNDX1dBUk5JTkdTX1BPUF8oKQogI2VuZGlmCkBAIC0zNDMsODAg
KzMyOCw2IEBACiAgICAgR1RFU1RfRElTQUJMRV9NU0NfV0FSTklOR1NfUE9QXygpCiAjZW5kaWYK
IAotI2lmbmRlZiBHVEVTVF9MQU5HX0NYWDExCi0vLyBnY2MgYW5kIGNsYW5nIGRlZmluZSBfX0dY
WF9FWFBFUklNRU5UQUxfQ1hYMFhfXyB3aGVuCi0vLyAtc3RkPXtjLGdudX0rK3sweCwxMX0gaXMg
cGFzc2VkLiAgVGhlIEMrKzExIHN0YW5kYXJkIHNwZWNpZmllcyBhCi0vLyB2YWx1ZSBmb3IgX19j
cGx1c3BsdXMsIGFuZCByZWNlbnQgdmVyc2lvbnMgb2YgY2xhbmcsIGdjYywgYW5kCi0vLyBwcm9i
YWJseSBvdGhlciBjb21waWxlcnMgc2V0IHRoYXQgdG9vIGluIEMrKzExIG1vZGUuCi0jIGlmIF9f
R1hYX0VYUEVSSU1FTlRBTF9DWFgwWF9fIHx8IF9fY3BsdXNwbHVzID49IDIwMTEwM0wgfHwgX01T
Q19WRVIgPj0gMTkwMAotLy8gQ29tcGlsaW5nIGluIGF0IGxlYXN0IEMrKzExIG1vZGUuCi0jICBk
ZWZpbmUgR1RFU1RfTEFOR19DWFgxMSAxCi0jIGVsc2UKLSMgIGRlZmluZSBHVEVTVF9MQU5HX0NY
WDExIDAKLSMgZW5kaWYKLSNlbmRpZgotCi0vLyBEaXN0aW5jdCBmcm9tIEMrKzExIGxhbmd1YWdl
IHN1cHBvcnQsIHNvbWUgZW52aXJvbm1lbnRzIGRvbid0IHByb3ZpZGUKLS8vIHByb3BlciBDKysx
MSBsaWJyYXJ5IHN1cHBvcnQuIE5vdGFibHksIGl0J3MgcG9zc2libGUgdG8gYnVpbGQgaW4KLS8v
IEMrKzExIG1vZGUgd2hlbiB0YXJnZXRpbmcgTWFjIE9TIFggMTAuNiwgd2hpY2ggaGFzIGFuIG9s
ZCBsaWJzdGRjKysKLS8vIHdpdGggbm8gQysrMTEgc3VwcG9ydC4KLS8vCi0vLyBsaWJzdGRjKysg
aGFzIHN1ZmZpY2llbnQgQysrMTEgc3VwcG9ydCBhcyBvZiBHQ0MgNC42LjAsIF9fR0xJQkNYWF9f
Ci0vLyAyMDExMDMyNSwgYnV0IG1haW50ZW5hbmNlIHJlbGVhc2VzIGluIHRoZSA0LjQgYW5kIDQu
NSBzZXJpZXMgZm9sbG93ZWQKLS8vIHRoaXMgZGF0ZSwgc28gY2hlY2sgZm9yIHRob3NlIHZlcnNp
b25zIGJ5IHRoZWlyIGRhdGUgc3RhbXBzLgotLy8gaHR0cHM6Ly9nY2MuZ251Lm9yZy9vbmxpbmVk
b2NzL2xpYnN0ZGMrKy9tYW51YWwvYWJpLmh0bWwjYWJpLnZlcnNpb25pbmcKLSNpZiBHVEVTVF9M
QU5HX0NYWDExICYmIFwKLSAgICAoIWRlZmluZWQoX19HTElCQ1hYX18pIHx8ICggXAotICAgICAg
ICBfX0dMSUJDWFhfXyA+PSAyMDExMDMyNXVsICYmICAvKiBHQ0MgPj0gNC42LjAgKi8gXAotICAg
ICAgICAvKiBCbGFja2xpc3Qgb2YgcGF0Y2ggcmVsZWFzZXMgb2Ygb2xkZXIgYnJhbmNoZXM6ICov
IFwKLSAgICAgICAgX19HTElCQ1hYX18gIT0gMjAxMTA0MTZ1bCAmJiAgLyogR0NDIDQuNC42ICov
IFwKLSAgICAgICAgX19HTElCQ1hYX18gIT0gMjAxMjAzMTN1bCAmJiAgLyogR0NDIDQuNC43ICov
IFwKLSAgICAgICAgX19HTElCQ1hYX18gIT0gMjAxMTA0Mjh1bCAmJiAgLyogR0NDIDQuNS4zICov
IFwKLSAgICAgICAgX19HTElCQ1hYX18gIT0gMjAxMjA3MDJ1bCkpICAgLyogR0NDIDQuNS40ICov
Ci0jIGRlZmluZSBHVEVTVF9TVERMSUJfQ1hYMTEgMQotI2VuZGlmCi0KLS8vIE9ubHkgdXNlIEMr
KzExIGxpYnJhcnkgZmVhdHVyZXMgaWYgdGhlIGxpYnJhcnkgcHJvdmlkZXMgdGhlbS4KLSNpZiBH
VEVTVF9TVERMSUJfQ1hYMTEKLSMgZGVmaW5lIEdURVNUX0hBU19TVERfQkVHSU5fQU5EX0VORF8g
MQotIyBkZWZpbmUgR1RFU1RfSEFTX1NURF9GT1JXQVJEX0xJU1RfIDEKLSMgaWYgIWRlZmluZWQo
X01TQ19WRVIpIHx8IChfTVNDX0ZVTExfVkVSID49IDE5MDAyMzgyNCkKLS8vIHdvcmtzIG9ubHkg
d2l0aCBWUzIwMTVVMiBhbmQgYmV0dGVyCi0jICAgZGVmaW5lIEdURVNUX0hBU19TVERfRlVOQ1RJ
T05fIDEKLSMgZW5kaWYKLSMgZGVmaW5lIEdURVNUX0hBU19TVERfSU5JVElBTElaRVJfTElTVF8g
MQotIyBkZWZpbmUgR1RFU1RfSEFTX1NURF9NT1ZFXyAxCi0jIGRlZmluZSBHVEVTVF9IQVNfU1RE
X1VOSVFVRV9QVFJfIDEKLSMgZGVmaW5lIEdURVNUX0hBU19TVERfU0hBUkVEX1BUUl8gMQotIyBk
ZWZpbmUgR1RFU1RfSEFTX1VOT1JERVJFRF9NQVBfIDEKLSMgZGVmaW5lIEdURVNUX0hBU19VTk9S
REVSRURfU0VUXyAxCi0jZW5kaWYKLQotLy8gQysrMTEgc3BlY2lmaWVzIHRoYXQgPHR1cGxlPiBw
cm92aWRlcyBzdGQ6OnR1cGxlLgotLy8gU29tZSBwbGF0Zm9ybXMgc3RpbGwgbWlnaHQgbm90IGhh
dmUgaXQsIGhvd2V2ZXIuCi0jaWYgR1RFU1RfTEFOR19DWFgxMQotIyBkZWZpbmUgR1RFU1RfSEFT
X1NURF9UVVBMRV8gMQotIyBpZiBkZWZpbmVkKF9fY2xhbmdfXykKLS8vIEluc3BpcmVkIGJ5Ci0v
LyBodHRwczovL2NsYW5nLmxsdm0ub3JnL2RvY3MvTGFuZ3VhZ2VFeHRlbnNpb25zLmh0bWwjaW5j
bHVkZS1maWxlLWNoZWNraW5nLW1hY3JvcwotIyAgaWYgZGVmaW5lZChfX2hhc19pbmNsdWRlKSAm
JiAhX19oYXNfaW5jbHVkZSg8dHVwbGU+KQotIyAgIHVuZGVmIEdURVNUX0hBU19TVERfVFVQTEVf
Ci0jICBlbmRpZgotIyBlbGlmIGRlZmluZWQoX01TQ19WRVIpCi0vLyBJbnNwaXJlZCBieSBib29z
dC9jb25maWcvc3RkbGliL2Rpbmt1bXdhcmUuaHBwCi0jICBpZiBkZWZpbmVkKF9DUFBMSUJfVkVS
KSAmJiBfQ1BQTElCX1ZFUiA8IDUyMAotIyAgIHVuZGVmIEdURVNUX0hBU19TVERfVFVQTEVfCi0j
ICBlbmRpZgotIyBlbGlmIGRlZmluZWQoX19HTElCQ1hYX18pCi0vLyBJbnNwaXJlZCBieSBib29z
dC9jb25maWcvc3RkbGliL2xpYnN0ZGNwcDMuaHBwLAotLy8gaHR0cDovL2djYy5nbnUub3JnL2dj
Yy00LjIvY2hhbmdlcy5odG1sIGFuZAotLy8gaHR0cHM6Ly93ZWIuYXJjaGl2ZS5vcmcvd2ViLzIw
MTQwMjI3MDQ0NDI5L2djYy5nbnUub3JnL29ubGluZWRvY3MvbGlic3RkYysrL21hbnVhbC9iazAx
cHQwMWNoMDEuaHRtbCNtYW51YWwuaW50cm8uc3RhdHVzLnN0YW5kYXJkLjIwMHgKLSMgIGlmIF9f
R05VQ19fIDwgNCB8fCAoX19HTlVDX18gPT0gNCAmJiBfX0dOVUNfTUlOT1JfXyA8IDIpCi0jICAg
dW5kZWYgR1RFU1RfSEFTX1NURF9UVVBMRV8KLSMgIGVuZGlmCi0jIGVuZGlmCi0jZW5kaWYKLQog
Ly8gQnJpbmdzIGluIGRlZmluaXRpb25zIGZvciBmdW5jdGlvbnMgdXNlZCBpbiB0aGUgdGVzdGlu
Zzo6aW50ZXJuYWw6OnBvc2l4CiAvLyBuYW1lc3BhY2UgKHJlYWQsIHdyaXRlLCBjbG9zZSwgY2hk
aXIsIGlzYXR0eSwgc3RhdCkuIFdlIGRvIG5vdCBjdXJyZW50bHkKIC8vIHVzZSB0aGVtIG9uIFdp
bmRvd3MgTW9iaWxlLgpAQCAtNDQ5LDcgKzM2MCw4IEBAIHR5cGVkZWYgc3RydWN0IF9SVExfQ1JJ
VElDQUxfU0VDVElPTiBHVEVTVF9DUklUSUNBTF9TRUNUSU9OOwogIyAgaW5jbHVkZSA8YW5kcm9p
ZC9hcGktbGV2ZWwuaD4gIC8vIE5PTElOVAogI2VuZGlmCiAKLS8vIERlZmluZXMgdGhpcyB0byB0
cnVlIGlmZiBHb29nbGUgVGVzdCBjYW4gdXNlIFBPU0lYIHJlZ3VsYXIgZXhwcmVzc2lvbnMuCisv
LyBEZWZpbmVzIHRoaXMgdG8gdHJ1ZSBpZiBhbmQgb25seSBpZiBHb29nbGUgVGVzdCBjYW4gdXNl
IFBPU0lYIHJlZ3VsYXIKKy8vIGV4cHJlc3Npb25zLgogI2lmbmRlZiBHVEVTVF9IQVNfUE9TSVhf
UkUKICMgaWYgR1RFU1RfT1NfTElOVVhfQU5EUk9JRAogLy8gT24gQW5kcm9pZCwgPHJlZ2V4Lmg+
IGlzIG9ubHkgYXZhaWxhYmxlIHN0YXJ0aW5nIHdpdGggR2luZ2VyYnJlYWQuCkBAIC00OTAsNyAr
NDAyLDcgQEAgdHlwZWRlZiBzdHJ1Y3QgX1JUTF9DUklUSUNBTF9TRUNUSU9OIEdURVNUX0NSSVRJ
Q0FMX1NFQ1RJT047CiAvLyBUaGUgdXNlciBkaWRuJ3QgdGVsbCB1cyB3aGV0aGVyIGV4Y2VwdGlv
bnMgYXJlIGVuYWJsZWQsIHNvIHdlIG5lZWQKIC8vIHRvIGZpZ3VyZSBpdCBvdXQuCiAjIGlmIGRl
ZmluZWQoX01TQ19WRVIpICYmIGRlZmluZWQoX0NQUFVOV0lORCkKLS8vIE1TVkMgZGVmaW5lcyBf
Q1BQVU5XSU5EIHRvIDEgaWZmIGV4Y2VwdGlvbnMgYXJlIGVuYWJsZWQuCisvLyBNU1ZDIGRlZmlu
ZXMgX0NQUFVOV0lORCB0byAxIGlmIGFuZCBvbmx5IGlmIGV4Y2VwdGlvbnMgYXJlIGVuYWJsZWQu
CiAjICBkZWZpbmUgR1RFU1RfSEFTX0VYQ0VQVElPTlMgMQogIyBlbGlmIGRlZmluZWQoX19CT1JM
QU5EQ19fKQogLy8gQysrQnVpbGRlcidzIGltcGxlbWVudGF0aW9uIG9mIHRoZSBTVEwgdXNlcyB0
aGUgX0hBU19FWENFUFRJT05TCkBAIC01MDEsMTYgKzQxMywxNyBAQCB0eXBlZGVmIHN0cnVjdCBf
UlRMX0NSSVRJQ0FMX1NFQ1RJT04gR1RFU1RfQ1JJVElDQUxfU0VDVElPTjsKICMgIGVuZGlmICAv
LyBfSEFTX0VYQ0VQVElPTlMKICMgIGRlZmluZSBHVEVTVF9IQVNfRVhDRVBUSU9OUyBfSEFTX0VY
Q0VQVElPTlMKICMgZWxpZiBkZWZpbmVkKF9fY2xhbmdfXykKLS8vIGNsYW5nIGRlZmluZXMgX19F
WENFUFRJT05TIGlmZiBleGNlcHRpb25zIGFyZSBlbmFibGVkIGJlZm9yZSBjbGFuZyAyMjA3MTQs
Ci0vLyBidXQgaWZmIGNsZWFudXBzIGFyZSBlbmFibGVkIGFmdGVyIHRoYXQuIEluIE9iai1DKysg
ZmlsZXMsIHRoZXJlIGNhbiBiZQotLy8gY2xlYW51cHMgZm9yIE9iakMgZXhjZXB0aW9ucyB3aGlj
aCBhbHNvIG5lZWQgY2xlYW51cHMsIGV2ZW4gaWYgQysrIGV4Y2VwdGlvbnMKLS8vIGFyZSBkaXNh
YmxlZC4gY2xhbmcgaGFzIF9faGFzX2ZlYXR1cmUoY3h4X2V4Y2VwdGlvbnMpIHdoaWNoIGNoZWNr
cyBmb3IgQysrCi0vLyBleGNlcHRpb25zIHN0YXJ0aW5nIGF0IGNsYW5nIHIyMDYzNTIsIGJ1dCB3
aGljaCBjaGVja2VkIGZvciBjbGVhbnVwcyBwcmlvciB0bwotLy8gdGhhdC4gVG8gcmVsaWFibHkg
Y2hlY2sgZm9yIEMrKyBleGNlcHRpb24gYXZhaWxhYmlsaXR5IHdpdGggY2xhbmcsIGNoZWNrIGZv
cgorLy8gY2xhbmcgZGVmaW5lcyBfX0VYQ0VQVElPTlMgaWYgYW5kIG9ubHkgaWYgZXhjZXB0aW9u
cyBhcmUgZW5hYmxlZCBiZWZvcmUgY2xhbmcKKy8vIDIyMDcxNCwgYnV0IGlmIGFuZCBvbmx5IGlm
IGNsZWFudXBzIGFyZSBlbmFibGVkIGFmdGVyIHRoYXQuIEluIE9iai1DKysgZmlsZXMsCisvLyB0
aGVyZSBjYW4gYmUgY2xlYW51cHMgZm9yIE9iakMgZXhjZXB0aW9ucyB3aGljaCBhbHNvIG5lZWQg
Y2xlYW51cHMsIGV2ZW4gaWYKKy8vIEMrKyBleGNlcHRpb25zIGFyZSBkaXNhYmxlZC4gY2xhbmcg
aGFzIF9faGFzX2ZlYXR1cmUoY3h4X2V4Y2VwdGlvbnMpIHdoaWNoCisvLyBjaGVja3MgZm9yIEMr
KyBleGNlcHRpb25zIHN0YXJ0aW5nIGF0IGNsYW5nIHIyMDYzNTIsIGJ1dCB3aGljaCBjaGVja2Vk
IGZvcgorLy8gY2xlYW51cHMgcHJpb3IgdG8gdGhhdC4gVG8gcmVsaWFibHkgY2hlY2sgZm9yIEMr
KyBleGNlcHRpb24gYXZhaWxhYmlsaXR5IHdpdGgKKy8vIGNsYW5nLCBjaGVjayBmb3IKIC8vIF9f
RVhDRVBUSU9OUyAmJiBfX2hhc19mZWF0dXJlKGN4eF9leGNlcHRpb25zKS4KICMgIGRlZmluZSBH
VEVTVF9IQVNfRVhDRVBUSU9OUyAoX19FWENFUFRJT05TICYmIF9faGFzX2ZlYXR1cmUoY3h4X2V4
Y2VwdGlvbnMpKQogIyBlbGlmIGRlZmluZWQoX19HTlVDX18pICYmIF9fRVhDRVBUSU9OUwotLy8g
Z2NjIGRlZmluZXMgX19FWENFUFRJT05TIHRvIDEgaWZmIGV4Y2VwdGlvbnMgYXJlIGVuYWJsZWQu
CisvLyBnY2MgZGVmaW5lcyBfX0VYQ0VQVElPTlMgdG8gMSBpZiBhbmQgb25seSBpZiBleGNlcHRp
b25zIGFyZSBlbmFibGVkLgogIyAgZGVmaW5lIEdURVNUX0hBU19FWENFUFRJT05TIDEKICMgZWxp
ZiBkZWZpbmVkKF9fU1VOUFJPX0NDKQogLy8gU3VuIFBybyBDQyBzdXBwb3J0cyBleGNlcHRpb25z
LiAgSG93ZXZlciwgdGhlcmUgaXMgbm8gY29tcGlsZS10aW1lIHdheSBvZgpAQCAtNTE4LDcgKzQz
MSw3IEBAIHR5cGVkZWYgc3RydWN0IF9SVExfQ1JJVElDQUxfU0VDVElPTiBHVEVTVF9DUklUSUNB
TF9TRUNUSU9OOwogLy8gdGhleSBhcmUgZW5hYmxlZCB1bmxlc3MgdGhlIHVzZXIgdGVsbHMgdXMg
b3RoZXJ3aXNlLgogIyAgZGVmaW5lIEdURVNUX0hBU19FWENFUFRJT05TIDEKICMgZWxpZiBkZWZp
bmVkKF9fSUJNQ1BQX18pICYmIF9fRVhDRVBUSU9OUwotLy8geGxDIGRlZmluZXMgX19FWENFUFRJ
T05TIHRvIDEgaWZmIGV4Y2VwdGlvbnMgYXJlIGVuYWJsZWQuCisvLyB4bEMgZGVmaW5lcyBfX0VY
Q0VQVElPTlMgdG8gMSBpZiBhbmQgb25seSBpZiBleGNlcHRpb25zIGFyZSBlbmFibGVkLgogIyAg
ZGVmaW5lIEdURVNUX0hBU19FWENFUFRJT05TIDEKICMgZWxpZiBkZWZpbmVkKF9fSFBfYUNDKQog
Ly8gRXhjZXB0aW9uIGhhbmRsaW5nIGlzIGluIGVmZmVjdCBieSBkZWZhdWx0IGluIEhQIGFDQyBj
b21waWxlci4gSXQgaGFzIHRvCkBAIC01MzEsNDAgKzQ0NCwxOCBAQCB0eXBlZGVmIHN0cnVjdCBf
UlRMX0NSSVRJQ0FMX1NFQ1RJT04gR1RFU1RfQ1JJVElDQUxfU0VDVElPTjsKICMgZW5kaWYgIC8v
IGRlZmluZWQoX01TQ19WRVIpIHx8IGRlZmluZWQoX19CT1JMQU5EQ19fKQogI2VuZGlmICAvLyBH
VEVTVF9IQVNfRVhDRVBUSU9OUwogCi0jaWYgIWRlZmluZWQoR1RFU1RfSEFTX1NURF9TVFJJTkcp
Ci0vLyBFdmVuIHRob3VnaCB3ZSBkb24ndCB1c2UgdGhpcyBtYWNybyBhbnkgbG9uZ2VyLCB3ZSBr
ZWVwIGl0IGluIGNhc2UKLS8vIHNvbWUgY2xpZW50cyBzdGlsbCBkZXBlbmQgb24gaXQuCi0jIGRl
ZmluZSBHVEVTVF9IQVNfU1REX1NUUklORyAxCi0jZWxpZiAhR1RFU1RfSEFTX1NURF9TVFJJTkcK
LS8vIFRoZSB1c2VyIHRvbGQgdXMgdGhhdCA6OnN0ZDo6c3RyaW5nIGlzbid0IGF2YWlsYWJsZS4K
LSMgZXJyb3IgIjo6c3RkOjpzdHJpbmcgaXNuJ3QgYXZhaWxhYmxlLiIKLSNlbmRpZiAgLy8gIWRl
ZmluZWQoR1RFU1RfSEFTX1NURF9TVFJJTkcpCi0KLSNpZm5kZWYgR1RFU1RfSEFTX0dMT0JBTF9T
VFJJTkcKLSMgZGVmaW5lIEdURVNUX0hBU19HTE9CQUxfU1RSSU5HIDAKLSNlbmRpZiAgLy8gR1RF
U1RfSEFTX0dMT0JBTF9TVFJJTkcKLQogI2lmbmRlZiBHVEVTVF9IQVNfU1REX1dTVFJJTkcKIC8v
IFRoZSB1c2VyIGRpZG4ndCB0ZWxsIHVzIHdoZXRoZXIgOjpzdGQ6OndzdHJpbmcgaXMgYXZhaWxh
YmxlLCBzbyB3ZSBuZWVkCiAvLyB0byBmaWd1cmUgaXQgb3V0LgotLy8gRklYTUU6IHVzZXMgYXV0
b2NvbmYgdG8gZGV0ZWN0IHdoZXRoZXIgOjpzdGQ6OndzdHJpbmcKLS8vICAgaXMgYXZhaWxhYmxl
LgotCiAvLyBDeWd3aW4gMS43IGFuZCBiZWxvdyBkb2Vzbid0IHN1cHBvcnQgOjpzdGQ6OndzdHJp
bmcuCiAvLyBTb2xhcmlzJyBsaWJjKysgZG9lc24ndCBzdXBwb3J0IGl0IGVpdGhlci4gIEFuZHJv
aWQgaGFzCiAvLyBubyBzdXBwb3J0IGZvciBpdCBhdCBsZWFzdCBhcyByZWNlbnQgYXMgRnJveW8g
KDIuMikuCi0jIGRlZmluZSBHVEVTVF9IQVNfU1REX1dTVFJJTkcgXAotICAgICghKEdURVNUX09T
X0xJTlVYX0FORFJPSUQgfHwgR1RFU1RfT1NfQ1lHV0lOIHx8IEdURVNUX09TX1NPTEFSSVMpKQor
I2RlZmluZSBHVEVTVF9IQVNfU1REX1dTVFJJTkcgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKKyAgKCEoR1RFU1RfT1NfTElOVVhfQU5EUk9JRCB8fCBHVEVTVF9PU19D
WUdXSU4gfHwgR1RFU1RfT1NfU09MQVJJUyB8fCBcCisgICAgIEdURVNUX09TX0hBSUtVIHx8IEdU
RVNUX09TX0VTUDMyIHx8IEdURVNUX09TX0VTUDgyNjYpKQogCiAjZW5kaWYgIC8vIEdURVNUX0hB
U19TVERfV1NUUklORwogCi0jaWZuZGVmIEdURVNUX0hBU19HTE9CQUxfV1NUUklORwotLy8gVGhl
IHVzZXIgZGlkbid0IHRlbGwgdXMgd2hldGhlciA6OndzdHJpbmcgaXMgYXZhaWxhYmxlLCBzbyB3
ZSBuZWVkCi0vLyB0byBmaWd1cmUgaXQgb3V0LgotIyBkZWZpbmUgR1RFU1RfSEFTX0dMT0JBTF9X
U1RSSU5HIFwKLSAgICAoR1RFU1RfSEFTX1NURF9XU1RSSU5HICYmIEdURVNUX0hBU19HTE9CQUxf
U1RSSU5HKQotI2VuZGlmICAvLyBHVEVTVF9IQVNfR0xPQkFMX1dTVFJJTkcKLQogLy8gRGV0ZXJt
aW5lcyB3aGV0aGVyIFJUVEkgaXMgYXZhaWxhYmxlLgogI2lmbmRlZiBHVEVTVF9IQVNfUlRUSQog
Ly8gVGhlIHVzZXIgZGlkbid0IHRlbGwgdXMgd2hldGhlciBSVFRJIGlzIGVuYWJsZWQsIHNvIHdl
IG5lZWQgdG8KQEAgLTU3MiwxNCArNDYzLDE1IEBAIHR5cGVkZWYgc3RydWN0IF9SVExfQ1JJVElD
QUxfU0VDVElPTiBHVEVTVF9DUklUSUNBTF9TRUNUSU9OOwogCiAjIGlmZGVmIF9NU0NfVkVSCiAK
LSMgIGlmZGVmIF9DUFBSVFRJICAvLyBNU1ZDIGRlZmluZXMgdGhpcyBtYWNybyBpZmYgUlRUSSBp
cyBlbmFibGVkLgorI2lmZGVmIF9DUFBSVFRJICAvLyBNU1ZDIGRlZmluZXMgdGhpcyBtYWNybyBp
ZiBhbmQgb25seSBpZiBSVFRJIGlzIGVuYWJsZWQuCiAjICAgZGVmaW5lIEdURVNUX0hBU19SVFRJ
IDEKICMgIGVsc2UKICMgICBkZWZpbmUgR1RFU1RfSEFTX1JUVEkgMAogIyAgZW5kaWYKIAotLy8g
U3RhcnRpbmcgd2l0aCB2ZXJzaW9uIDQuMy4yLCBnY2MgZGVmaW5lcyBfX0dYWF9SVFRJIGlmZiBS
VFRJIGlzIGVuYWJsZWQuCi0jIGVsaWYgZGVmaW5lZChfX0dOVUNfXykgJiYgKEdURVNUX0dDQ19W
RVJfID49IDQwMzAyKQorLy8gU3RhcnRpbmcgd2l0aCB2ZXJzaW9uIDQuMy4yLCBnY2MgZGVmaW5l
cyBfX0dYWF9SVFRJIGlmIGFuZCBvbmx5IGlmIFJUVEkgaXMKKy8vIGVuYWJsZWQuCisjIGVsaWYg
ZGVmaW5lZChfX0dOVUNfXykKIAogIyAgaWZkZWYgX19HWFhfUlRUSQogLy8gV2hlbiBidWlsZGlu
ZyBhZ2FpbnN0IFNUTHBvcnQgd2l0aCB0aGUgQW5kcm9pZCBOREsgYW5kIHdpdGgKQEAgLTYzNSw5
ICs1MjcsMTEgQEAgdHlwZWRlZiBzdHJ1Y3QgX1JUTF9DUklUSUNBTF9TRUNUSU9OIEdURVNUX0NS
SVRJQ0FMX1NFQ1RJT047CiAvLwogLy8gVG8gZGlzYWJsZSB0aHJlYWRpbmcgc3VwcG9ydCBpbiBH
b29nbGUgVGVzdCwgYWRkIC1ER1RFU1RfSEFTX1BUSFJFQUQ9MAogLy8gdG8geW91ciBjb21waWxl
ciBmbGFncy4KLSNkZWZpbmUgR1RFU1RfSEFTX1BUSFJFQUQgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCi0gIChHVEVTVF9PU19MSU5VWCB8fCBHVEVTVF9PU19N
QUMgfHwgR1RFU1RfT1NfSFBVWCB8fCBHVEVTVF9PU19RTlggfHwgXAotICAgR1RFU1RfT1NfRlJF
RUJTRCB8fCBHVEVTVF9PU19OQUNMIHx8IEdURVNUX09TX05FVEJTRCB8fCBHVEVTVF9PU19GVUNI
U0lBKQorI2RlZmluZSBHVEVTVF9IQVNfUFRIUkVBRCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgKEdURVNUX09TX0xJTlVYIHx8IEdURVNU
X09TX01BQyB8fCBHVEVTVF9PU19IUFVYIHx8IEdURVNUX09TX1FOWCB8fCAgICAgICAgICBcCisg
ICBHVEVTVF9PU19GUkVFQlNEIHx8IEdURVNUX09TX05BQ0wgfHwgR1RFU1RfT1NfTkVUQlNEIHx8
IEdURVNUX09TX0ZVQ0hTSUEgfHwgXAorICAgR1RFU1RfT1NfRFJBR09ORkxZIHx8IEdURVNUX09T
X0dOVV9LRlJFRUJTRCB8fCBHVEVTVF9PU19PUEVOQlNEIHx8ICAgICAgICAgIFwKKyAgIEdURVNU
X09TX0hBSUtVKQogI2VuZGlmICAvLyBHVEVTVF9IQVNfUFRIUkVBRAogCiAjaWYgR1RFU1RfSEFT
X1BUSFJFQUQKQEAgLTY0OSwxMzYgKzU0Myw2IEBAIHR5cGVkZWYgc3RydWN0IF9SVExfQ1JJVElD
QUxfU0VDVElPTiBHVEVTVF9DUklUSUNBTF9TRUNUSU9OOwogIyBpbmNsdWRlIDx0aW1lLmg+ICAv
LyBOT0xJTlQKICNlbmRpZgogCi0vLyBEZXRlcm1pbmVzIGlmIGhhc2hfbWFwL2hhc2hfc2V0IGFy
ZSBhdmFpbGFibGUuCi0vLyBPbmx5IHVzZWQgZm9yIHRlc3RpbmcgYWdhaW5zdCB0aG9zZSBjb250
YWluZXJzLgotI2lmICFkZWZpbmVkKEdURVNUX0hBU19IQVNIX01BUF8pCi0jIGlmIGRlZmluZWQo
X01TQ19WRVIpICYmIChfTVNDX1ZFUiA8IDE5MDApCi0jICBkZWZpbmUgR1RFU1RfSEFTX0hBU0hf
TUFQXyAxICAvLyBJbmRpY2F0ZXMgdGhhdCBoYXNoX21hcCBpcyBhdmFpbGFibGUuCi0jICBkZWZp
bmUgR1RFU1RfSEFTX0hBU0hfU0VUXyAxICAvLyBJbmRpY2F0ZXMgdGhhdCBoYXNoX3NldCBpcyBh
dmFpbGFibGUuCi0jIGVuZGlmICAvLyBfTVNDX1ZFUgotI2VuZGlmICAvLyAhZGVmaW5lZChHVEVT
VF9IQVNfSEFTSF9NQVBfKQotCi0vLyBEZXRlcm1pbmVzIHdoZXRoZXIgR29vZ2xlIFRlc3QgY2Fu
IHVzZSB0cjEvdHVwbGUuICBZb3UgY2FuIGRlZmluZQotLy8gdGhpcyBtYWNybyB0byAwIHRvIHBy
ZXZlbnQgR29vZ2xlIFRlc3QgZnJvbSB1c2luZyB0dXBsZSAoYW55Ci0vLyBmZWF0dXJlIGRlcGVu
ZGluZyBvbiB0dXBsZSB3aXRoIGJlIGRpc2FibGVkIGluIHRoaXMgbW9kZSkuCi0jaWZuZGVmIEdU
RVNUX0hBU19UUjFfVFVQTEUKLSMgaWYgR1RFU1RfT1NfTElOVVhfQU5EUk9JRCAmJiBkZWZpbmVk
KF9TVExQT1JUX01BSk9SKQotLy8gU1RMcG9ydCwgcHJvdmlkZWQgd2l0aCB0aGUgQW5kcm9pZCBO
REssIGhhcyBuZWl0aGVyIDx0cjEvdHVwbGU+IG9yIDx0dXBsZT4uCi0jICBkZWZpbmUgR1RFU1Rf
SEFTX1RSMV9UVVBMRSAwCi0jIGVsaWYgZGVmaW5lZChfTVNDX1ZFUikgJiYgKF9NU0NfVkVSID49
IDE5MTApCi0vLyBQcmV2ZW50IGB3YXJuaW5nIEM0OTk2OiAnc3RkOjp0cjEnOiB3YXJuaW5nIFNU
TDQwMDI6Ci0vLyBUaGUgbm9uLVN0YW5kYXJkIHN0ZDo6dHIxIG5hbWVzcGFjZSBhbmQgVFIxLW9u
bHkgbWFjaGluZXJ5Ci0vLyBhcmUgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSBSRU1PVkVELmAKLSMg
IGRlZmluZSBHVEVTVF9IQVNfVFIxX1RVUExFIDAKLSMgZWxpZiBHVEVTVF9MQU5HX0NYWDExICYm
IGRlZmluZWQoX0xJQkNQUF9WRVJTSU9OKQotLy8gbGliYysrIGRvZXNuJ3Qgc3VwcG9ydCBUUjEu
Ci0jICBkZWZpbmUgR1RFU1RfSEFTX1RSMV9UVVBMRSAwCi0jIGVsc2UKLS8vIFRoZSB1c2VyIGRp
ZG4ndCB0ZWxsIHVzIG5vdCB0byBkbyBpdCwgc28gd2UgYXNzdW1lIGl0J3MgT0suCi0jICBkZWZp
bmUgR1RFU1RfSEFTX1RSMV9UVVBMRSAxCi0jIGVuZGlmCi0jZW5kaWYgIC8vIEdURVNUX0hBU19U
UjFfVFVQTEUKLQotLy8gRGV0ZXJtaW5lcyB3aGV0aGVyIEdvb2dsZSBUZXN0J3Mgb3duIHRyMSB0
dXBsZSBpbXBsZW1lbnRhdGlvbgotLy8gc2hvdWxkIGJlIHVzZWQuCi0jaWZuZGVmIEdURVNUX1VT
RV9PV05fVFIxX1RVUExFCi0vLyBXZSB1c2Ugb3VyIG93biB0dXBsZSBpbXBsZW1lbnRhdGlvbiBv
biBTeW1iaWFuLgotIyBpZiBHVEVTVF9PU19TWU1CSUFOCi0jICBkZWZpbmUgR1RFU1RfVVNFX09X
Tl9UUjFfVFVQTEUgMQotIyBlbHNlCi0vLyBUaGUgdXNlciBkaWRuJ3QgdGVsbCB1cywgc28gd2Ug
bmVlZCB0byBmaWd1cmUgaXQgb3V0LgotCi0vLyBXZSB1c2Ugb3VyIG93biBUUjEgdHVwbGUgaWYg
d2UgYXJlbid0IHN1cmUgdGhlIHVzZXIgaGFzIGFuCi0vLyBpbXBsZW1lbnRhdGlvbiBvZiBpdCBh
bHJlYWR5LiAgQXQgdGhpcyB0aW1lLCBsaWJzdGRjKysgNC4wLjArIGFuZAotLy8gTVNWQyAyMDEw
IGFyZSB0aGUgb25seSBtYWluc3RyZWFtIHN0YW5kYXJkIGxpYnJhcmllcyB0aGF0IGNvbWUKLS8v
IHdpdGggYSBUUjEgdHVwbGUgaW1wbGVtZW50YXRpb24uICBOVklESUEncyBDVURBIE5WQ0MgY29t
cGlsZXIKLS8vIHByZXRlbmRzIHRvIGJlIEdDQyBieSBkZWZpbmluZyBfX0dOVUNfXyBhbmQgZnJp
ZW5kcywgYnV0IGNhbm5vdAotLy8gY29tcGlsZSBHQ0MncyB0dXBsZSBpbXBsZW1lbnRhdGlvbi4g
IE1TVkMgMjAwOCAoOS4wKSBwcm92aWRlcyBUUjEKLS8vIHR1cGxlIGluIGEgMzIzIE1CIEZlYXR1
cmUgUGFjayBkb3dubG9hZCwgd2hpY2ggd2UgY2Fubm90IGFzc3VtZSB0aGUKLS8vIHVzZXIgaGFz
LiAgUU5YJ3MgUUNDIGNvbXBpbGVyIGlzIGEgbW9kaWZpZWQgR0NDIGJ1dCBpdCBkb2Vzbid0Ci0v
LyBzdXBwb3J0IFRSMSB0dXBsZS4gIGxpYmMrKyBvbmx5IHByb3ZpZGVzIHN0ZDo6dHVwbGUsIGlu
IEMrKzExIG1vZGUsCi0vLyBhbmQgaXQgY2FuIGJlIHVzZWQgd2l0aCBzb21lIGNvbXBpbGVycyB0
aGF0IGRlZmluZSBfX0dOVUNfXy4KLSMgaWYgKGRlZmluZWQoX19HTlVDX18pICYmICFkZWZpbmVk
KF9fQ1VEQUNDX18pICYmIChHVEVTVF9HQ0NfVkVSXyA+PSA0MDAwMCkgXAotICAgICAgJiYgIUdU
RVNUX09TX1FOWCAmJiAhZGVmaW5lZChfTElCQ1BQX1ZFUlNJT04pKSBcCi0gICAgICB8fCAoX01T
Q19WRVIgPj0gMTYwMCAmJiBfTVNDX1ZFUiA8IDE5MDApCi0jICBkZWZpbmUgR1RFU1RfRU5WX0hB
U19UUjFfVFVQTEVfIDEKLSMgZW5kaWYKLQotLy8gQysrMTEgc3BlY2lmaWVzIHRoYXQgPHR1cGxl
PiBwcm92aWRlcyBzdGQ6OnR1cGxlLiBVc2UgdGhhdCBpZiBndGVzdCBpcyB1c2VkCi0vLyBpbiBD
KysxMSBtb2RlIGFuZCBsaWJzdGRjKysgaXNuJ3QgdmVyeSBvbGQgKGJpbmFyaWVzIHRhcmdldGlu
ZyBPUyBYIDEwLjYKLS8vIGNhbiBidWlsZCB3aXRoIGNsYW5nIGJ1dCBuZWVkIHRvIHVzZSBnY2M0
LjIncyBsaWJzdGRjKyspLgotIyBpZiBHVEVTVF9MQU5HX0NYWDExICYmICghZGVmaW5lZChfX0dM
SUJDWFhfXykgfHwgX19HTElCQ1hYX18gPiAyMDExMDMyNSkKLSMgIGRlZmluZSBHVEVTVF9FTlZf
SEFTX1NURF9UVVBMRV8gMQotIyBlbmRpZgotCi0jIGlmIEdURVNUX0VOVl9IQVNfVFIxX1RVUExF
XyB8fCBHVEVTVF9FTlZfSEFTX1NURF9UVVBMRV8KLSMgIGRlZmluZSBHVEVTVF9VU0VfT1dOX1RS
MV9UVVBMRSAwCi0jIGVsc2UKLSMgIGRlZmluZSBHVEVTVF9VU0VfT1dOX1RSMV9UVVBMRSAxCi0j
IGVuZGlmCi0jIGVuZGlmICAvLyBHVEVTVF9PU19TWU1CSUFOCi0jZW5kaWYgIC8vIEdURVNUX1VT
RV9PV05fVFIxX1RVUExFCi0KLS8vIFRvIGF2b2lkIGNvbmRpdGlvbmFsIGNvbXBpbGF0aW9uIHdl
IG1ha2UgaXQgZ3Rlc3QtcG9ydC5oJ3MgcmVzcG9uc2liaWxpdHkKLS8vIHRvICNpbmNsdWRlIHRo
ZSBoZWFkZXIgaW1wbGVtZW50aW5nIHR1cGxlLgotI2lmIEdURVNUX0hBU19TVERfVFVQTEVfCi0j
IGluY2x1ZGUgPHR1cGxlPiAgLy8gSVdZVSBwcmFnbWE6IGV4cG9ydAotIyBkZWZpbmUgR1RFU1Rf
VFVQTEVfTkFNRVNQQUNFXyA6OnN0ZAotI2VuZGlmICAvLyBHVEVTVF9IQVNfU1REX1RVUExFXwot
Ci0vLyBXZSBpbmNsdWRlIHRyMTo6dHVwbGUgZXZlbiBpZiBzdGQ6OnR1cGxlIGlzIGF2YWlsYWJs
ZSB0byBkZWZpbmUgcHJpbnRlcnMgZm9yCi0vLyB0aGVtLgotI2lmIEdURVNUX0hBU19UUjFfVFVQ
TEUKLSMgaWZuZGVmIEdURVNUX1RVUExFX05BTUVTUEFDRV8KLSMgIGRlZmluZSBHVEVTVF9UVVBM
RV9OQU1FU1BBQ0VfIDo6c3RkOjp0cjEKLSMgZW5kaWYgIC8vIEdURVNUX1RVUExFX05BTUVTUEFD
RV8KLQotIyBpZiBHVEVTVF9VU0VfT1dOX1RSMV9UVVBMRQotIyAgaW5jbHVkZSAiZ3Rlc3QvaW50
ZXJuYWwvZ3Rlc3QtdHVwbGUuaCIgIC8vIElXWVUgcHJhZ21hOiBleHBvcnQgIC8vIE5PTElOVAot
IyBlbGlmIEdURVNUX09TX1NZTUJJQU4KLQotLy8gT24gU3ltYmlhbiwgQk9PU1RfSEFTX1RSMV9U
VVBMRSBjYXVzZXMgQm9vc3QncyBUUjEgdHVwbGUgbGlicmFyeSB0bwotLy8gdXNlIFNUTHBvcnQn
cyB0dXBsZSBpbXBsZW1lbnRhdGlvbiwgd2hpY2ggdW5mb3J0dW5hdGVseSBkb2Vzbid0Ci0vLyB3
b3JrIGFzIHRoZSBjb3B5IG9mIFNUTHBvcnQgZGlzdHJpYnV0ZWQgd2l0aCBTeW1iaWFuIGlzIGlu
Y29tcGxldGUuCi0vLyBCeSBtYWtpbmcgc3VyZSBCT09TVF9IQVNfVFIxX1RVUExFIGlzIHVuZGVm
aW5lZCwgd2UgZm9yY2UgQm9vc3QgdG8KLS8vIHVzZSBpdHMgb3duIHR1cGxlIGltcGxlbWVudGF0
aW9uLgotIyAgaWZkZWYgQk9PU1RfSEFTX1RSMV9UVVBMRQotIyAgIHVuZGVmIEJPT1NUX0hBU19U
UjFfVFVQTEUKLSMgIGVuZGlmICAvLyBCT09TVF9IQVNfVFIxX1RVUExFCi0KLS8vIFRoaXMgcHJl
dmVudHMgPGJvb3N0L3RyMS9kZXRhaWwvY29uZmlnLmhwcD4sIHdoaWNoIGRlZmluZXMKLS8vIEJP
T1NUX0hBU19UUjFfVFVQTEUsIGZyb20gYmVpbmcgI2luY2x1ZGVkIGJ5IEJvb3N0J3MgPHR1cGxl
Pi4KLSMgIGRlZmluZSBCT09TVF9UUjFfREVUQUlMX0NPTkZJR19IUFBfSU5DTFVERUQKLSMgIGlu
Y2x1ZGUgPHR1cGxlPiAgLy8gSVdZVSBwcmFnbWE6IGV4cG9ydCAgLy8gTk9MSU5UCi0KLSMgZWxp
ZiBkZWZpbmVkKF9fR05VQ19fKSAmJiAoR1RFU1RfR0NDX1ZFUl8gPj0gNDAwMDApCi0vLyBHQ0Mg
NC4wKyBpbXBsZW1lbnRzIHRyMS90dXBsZSBpbiB0aGUgPHRyMS90dXBsZT4gaGVhZGVyLiAgVGhp
cyBkb2VzCi0vLyBub3QgY29uZm9ybSB0byB0aGUgVFIxIHNwZWMsIHdoaWNoIHJlcXVpcmVzIHRo
ZSBoZWFkZXIgdG8gYmUgPHR1cGxlPi4KLQotIyAgaWYgIUdURVNUX0hBU19SVFRJICYmIEdURVNU
X0dDQ19WRVJfIDwgNDAzMDIKLS8vIFVudGlsIHZlcnNpb24gNC4zLjIsIGdjYyBoYXMgYSBidWcg
dGhhdCBjYXVzZXMgPHRyMS9mdW5jdGlvbmFsPiwKLS8vIHdoaWNoIGlzICNpbmNsdWRlZCBieSA8
dHIxL3R1cGxlPiwgdG8gbm90IGNvbXBpbGUgd2hlbiBSVFRJIGlzCi0vLyBkaXNhYmxlZC4gIF9U
UjFfRlVOQ1RJT05BTCBpcyB0aGUgaGVhZGVyIGd1YXJkIGZvcgotLy8gPHRyMS9mdW5jdGlvbmFs
Pi4gIEhlbmNlIHRoZSBmb2xsb3dpbmcgI2RlZmluZSBpcyB1c2VkIHRvIHByZXZlbnQKLS8vIDx0
cjEvZnVuY3Rpb25hbD4gZnJvbSBiZWluZyBpbmNsdWRlZC4KLSMgICBkZWZpbmUgX1RSMV9GVU5D
VElPTkFMIDEKLSMgICBpbmNsdWRlIDx0cjEvdHVwbGU+Ci0jICAgdW5kZWYgX1RSMV9GVU5DVElP
TkFMICAvLyBBbGxvd3MgdGhlIHVzZXIgdG8gI2luY2x1ZGUKLSAgICAgICAgICAgICAgICAgICAg
ICAgIC8vIDx0cjEvZnVuY3Rpb25hbD4gaWYgdGhleSBjaG9vc2UgdG8uCi0jICBlbHNlCi0jICAg
aW5jbHVkZSA8dHIxL3R1cGxlPiAgLy8gTk9MSU5UCi0jICBlbmRpZiAgLy8gIUdURVNUX0hBU19S
VFRJICYmIEdURVNUX0dDQ19WRVJfIDwgNDAzMDIKLQotLy8gVlMgMjAxMCBub3cgaGFzIHRyMSBz
dXBwb3J0LgotIyBlbGlmIF9NU0NfVkVSID49IDE2MDAKLSMgIGluY2x1ZGUgPHR1cGxlPiAgLy8g
SVdZVSBwcmFnbWE6IGV4cG9ydCAgLy8gTk9MSU5UCi0KLSMgZWxzZSAgLy8gR1RFU1RfVVNFX09X
Tl9UUjFfVFVQTEUKLSMgIGluY2x1ZGUgPHRyMS90dXBsZT4gIC8vIElXWVUgcHJhZ21hOiBleHBv
cnQgIC8vIE5PTElOVAotIyBlbmRpZiAgLy8gR1RFU1RfVVNFX09XTl9UUjFfVFVQTEUKLQotI2Vu
ZGlmICAvLyBHVEVTVF9IQVNfVFIxX1RVUExFCi0KIC8vIERldGVybWluZXMgd2hldGhlciBjbG9u
ZSgyKSBpcyBzdXBwb3J0ZWQuCiAvLyBVc3VhbGx5IGl0IHdpbGwgb25seSBiZSBhdmFpbGFibGUg
b24gTGludXgsIGV4Y2x1ZGluZwogLy8gTGludXggb24gdGhlIEl0YW5pdW0gYXJjaGl0ZWN0dXJl
LgpAQCAtODEyLDI0ICs1NzYsMjIgQEAgdHlwZWRlZiBzdHJ1Y3QgX1JUTF9DUklUSUNBTF9TRUNU
SU9OIEdURVNUX0NSSVRJQ0FMX1NFQ1RJT047CiAjaWZuZGVmIEdURVNUX0hBU19TVFJFQU1fUkVE
SVJFQ1RJT04KIC8vIEJ5IGRlZmF1bHQsIHdlIGFzc3VtZSB0aGF0IHN0cmVhbSByZWRpcmVjdGlv
biBpcyBzdXBwb3J0ZWQgb24gYWxsCiAvLyBwbGF0Zm9ybXMgZXhjZXB0IGtub3duIG1vYmlsZSBv
bmVzLgotIyBpZiBHVEVTVF9PU19XSU5ET1dTX01PQklMRSB8fCBHVEVTVF9PU19TWU1CSUFOIHx8
IFwKLSAgICBHVEVTVF9PU19XSU5ET1dTX1BIT05FIHx8IEdURVNUX09TX1dJTkRPV1NfUlQKKyNp
ZiBHVEVTVF9PU19XSU5ET1dTX01PQklMRSB8fCBHVEVTVF9PU19XSU5ET1dTX1BIT05FIHx8IFwK
KyAgICBHVEVTVF9PU19XSU5ET1dTX1JUIHx8IEdURVNUX09TX0VTUDgyNjYKICMgIGRlZmluZSBH
VEVTVF9IQVNfU1RSRUFNX1JFRElSRUNUSU9OIDAKICMgZWxzZQogIyAgZGVmaW5lIEdURVNUX0hB
U19TVFJFQU1fUkVESVJFQ1RJT04gMQotIyBlbmRpZiAgLy8gIUdURVNUX09TX1dJTkRPV1NfTU9C
SUxFICYmICFHVEVTVF9PU19TWU1CSUFOCisjIGVuZGlmICAvLyAhR1RFU1RfT1NfV0lORE9XU19N
T0JJTEUKICNlbmRpZiAgLy8gR1RFU1RfSEFTX1NUUkVBTV9SRURJUkVDVElPTgogCiAvLyBEZXRl
cm1pbmVzIHdoZXRoZXIgdG8gc3VwcG9ydCBkZWF0aCB0ZXN0cy4KLS8vIEdvb2dsZSBUZXN0IGRv
ZXMgbm90IHN1cHBvcnQgZGVhdGggdGVzdHMgZm9yIFZDIDcuMSBhbmQgZWFybGllciBhcwotLy8g
YWJvcnQoKSBpbiBhIFZDIDcuMSBhcHBsaWNhdGlvbiBjb21waWxlZCBhcyBHVUkgaW4gZGVidWcg
Y29uZmlnCiAvLyBwb3BzIHVwIGEgZGlhbG9nIHdpbmRvdyB0aGF0IGNhbm5vdCBiZSBzdXBwcmVz
c2VkIHByb2dyYW1tYXRpY2FsbHkuCi0jaWYgKEdURVNUX09TX0xJTlVYIHx8IEdURVNUX09TX0NZ
R1dJTiB8fCBHVEVTVF9PU19TT0xBUklTIHx8ICAgXAotICAgICAoR1RFU1RfT1NfTUFDICYmICFH
VEVTVF9PU19JT1MpIHx8ICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgKEdURVNUX09T
X1dJTkRPV1NfREVTS1RPUCAmJiBfTVNDX1ZFUiA+PSAxNDAwKSB8fCAgICAgICAgICBcCi0gICAg
IEdURVNUX09TX1dJTkRPV1NfTUlOR1cgfHwgR1RFU1RfT1NfQUlYIHx8IEdURVNUX09TX0hQVVgg
fHwgXAotICAgICBHVEVTVF9PU19PUEVOQlNEIHx8IEdURVNUX09TX1FOWCB8fCBHVEVTVF9PU19G
UkVFQlNEIHx8IFwKLSAgICAgR1RFU1RfT1NfTkVUQlNEIHx8IEdURVNUX09TX0ZVQ0hTSUEpCisj
aWYgKEdURVNUX09TX0xJTlVYIHx8IEdURVNUX09TX0NZR1dJTiB8fCBHVEVTVF9PU19TT0xBUklT
IHx8ICAgICAgICAgICAgIFwKKyAgICAgKEdURVNUX09TX01BQyAmJiAhR1RFU1RfT1NfSU9TKSB8
fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAoR1RFU1RfT1NfV0lO
RE9XU19ERVNLVE9QICYmIF9NU0NfVkVSKSB8fCBHVEVTVF9PU19XSU5ET1dTX01JTkdXIHx8ICBc
CisgICAgIEdURVNUX09TX0FJWCB8fCBHVEVTVF9PU19IUFVYIHx8IEdURVNUX09TX09QRU5CU0Qg
fHwgR1RFU1RfT1NfUU5YIHx8IFwKKyAgICAgR1RFU1RfT1NfRlJFRUJTRCB8fCBHVEVTVF9PU19O
RVRCU0QgfHwgR1RFU1RfT1NfRlVDSFNJQSB8fCAgICAgICAgICAgXAorICAgICBHVEVTVF9PU19E
UkFHT05GTFkgfHwgR1RFU1RfT1NfR05VX0tGUkVFQlNEIHx8IEdURVNUX09TX0hBSUtVKQogIyBk
ZWZpbmUgR1RFU1RfSEFTX0RFQVRIX1RFU1QgMQogI2VuZGlmCiAKQEAgLTgzNywyNiArNTk5LDE5
IEBAIHR5cGVkZWYgc3RydWN0IF9SVExfQ1JJVElDQUxfU0VDVElPTiBHVEVTVF9DUklUSUNBTF9T
RUNUSU9OOwogCiAvLyBUeXBlZCB0ZXN0cyBuZWVkIDx0eXBlaW5mbz4gYW5kIHZhcmlhZGljIG1h
Y3Jvcywgd2hpY2ggR0NDLCBWQysrIDguMCwKIC8vIFN1biBQcm8gQ0MsIElCTSBWaXN1YWwgQWdl
LCBhbmQgSFAgYUNDIHN1cHBvcnQuCi0jaWYgZGVmaW5lZChfX0dOVUNfXykgfHwgKF9NU0NfVkVS
ID49IDE0MDApIHx8IGRlZmluZWQoX19TVU5QUk9fQ0MpIHx8IFwKKyNpZiBkZWZpbmVkKF9fR05V
Q19fKSB8fCBkZWZpbmVkKF9NU0NfVkVSKSB8fCBkZWZpbmVkKF9fU1VOUFJPX0NDKSB8fCBcCiAg
ICAgZGVmaW5lZChfX0lCTUNQUF9fKSB8fCBkZWZpbmVkKF9fSFBfYUNDKQogIyBkZWZpbmUgR1RF
U1RfSEFTX1RZUEVEX1RFU1QgMQogIyBkZWZpbmUgR1RFU1RfSEFTX1RZUEVEX1RFU1RfUCAxCiAj
ZW5kaWYKIAotLy8gRGV0ZXJtaW5lcyB3aGV0aGVyIHRvIHN1cHBvcnQgQ29tYmluZSgpLiBUaGlz
IG9ubHkgbWFrZXMgc2Vuc2Ugd2hlbgotLy8gdmFsdWUtcGFyYW1ldGVyaXplZCB0ZXN0cyBhcmUg
ZW5hYmxlZC4gIFRoZSBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0Ci0vLyB3b3JrIG9uIFN1biBTdHVk
aW8gc2luY2UgaXQgZG9lc24ndCB1bmRlcnN0YW5kIHRlbXBsYXRlZCBjb252ZXJzaW9uCi0vLyBv
cGVyYXRvcnMuCi0jaWYgKEdURVNUX0hBU19UUjFfVFVQTEUgfHwgR1RFU1RfSEFTX1NURF9UVVBM
RV8pICYmICFkZWZpbmVkKF9fU1VOUFJPX0NDKQotIyBkZWZpbmUgR1RFU1RfSEFTX0NPTUJJTkUg
MQotI2VuZGlmCi0KIC8vIERldGVybWluZXMgd2hldGhlciB0aGUgc3lzdGVtIGNvbXBpbGVyIHVz
ZXMgVVRGLTE2IGZvciBlbmNvZGluZyB3aWRlIHN0cmluZ3MuCiAjZGVmaW5lIEdURVNUX1dJREVf
U1RSSU5HX1VTRVNfVVRGMTZfIFwKLSAgICAoR1RFU1RfT1NfV0lORE9XUyB8fCBHVEVTVF9PU19D
WUdXSU4gfHwgR1RFU1RfT1NfU1lNQklBTiB8fCBHVEVTVF9PU19BSVgpCisgIChHVEVTVF9PU19X
SU5ET1dTIHx8IEdURVNUX09TX0NZR1dJTiB8fCBHVEVTVF9PU19BSVggfHwgR1RFU1RfT1NfT1My
KQogCiAvLyBEZXRlcm1pbmVzIHdoZXRoZXIgdGVzdCByZXN1bHRzIGNhbiBiZSBzdHJlYW1lZCB0
byBhIHNvY2tldC4KLSNpZiBHVEVTVF9PU19MSU5VWAorI2lmIEdURVNUX09TX0xJTlVYIHx8IEdU
RVNUX09TX0dOVV9LRlJFRUJTRCB8fCBHVEVTVF9PU19EUkFHT05GTFkgfHwgXAorICAgIEdURVNU
X09TX0ZSRUVCU0QgfHwgR1RFU1RfT1NfTkVUQlNEIHx8IEdURVNUX09TX09QRU5CU0QKICMgZGVm
aW5lIEdURVNUX0NBTl9TVFJFQU1fUkVTVUxUU18gMQogI2VuZGlmCiAKQEAgLTg5OCwxMiArNjUz
LDYgQEAgdHlwZWRlZiBzdHJ1Y3QgX1JUTF9DUklUSUNBTF9TRUNUSU9OIEdURVNUX0NSSVRJQ0FM
X1NFQ1RJT047CiAjIGRlZmluZSBHVEVTVF9BVFRSSUJVVEVfVU5VU0VEXwogI2VuZGlmCiAKLSNp
ZiBHVEVTVF9MQU5HX0NYWDExCi0jIGRlZmluZSBHVEVTVF9DWFgxMV9FUVVBTFNfREVMRVRFXyA9
IGRlbGV0ZQotI2Vsc2UgIC8vIEdURVNUX0xBTkdfQ1hYMTEKLSMgZGVmaW5lIEdURVNUX0NYWDEx
X0VRVUFMU19ERUxFVEVfCi0jZW5kaWYgIC8vIEdURVNUX0xBTkdfQ1hYMTEKLQogLy8gVXNlIHRo
aXMgYW5ub3RhdGlvbiBiZWZvcmUgYSBmdW5jdGlvbiB0aGF0IHRha2VzIGEgcHJpbnRmIGZvcm1h
dCBzdHJpbmcuCiAjaWYgKGRlZmluZWQoX19HTlVDX18pIHx8IGRlZmluZWQoX19jbGFuZ19fKSkg
JiYgIWRlZmluZWQoQ09NUElMRVJfSUNDKQogIyBpZiBkZWZpbmVkKF9fTUlOR1dfUFJJTlRGX0ZP
Uk1BVCkKQEAgLTkyMiwyNyArNjcxLDM4IEBAIHR5cGVkZWYgc3RydWN0IF9SVExfQ1JJVElDQUxf
U0VDVElPTiBHVEVTVF9DUklUSUNBTF9TRUNUSU9OOwogI2VuZGlmCiAKIAotLy8gQSBtYWNybyB0
byBkaXNhbGxvdyBvcGVyYXRvcj0KKy8vIEEgbWFjcm8gdG8gZGlzYWxsb3cgY29weSBvcGVyYXRv
cj0KIC8vIFRoaXMgc2hvdWxkIGJlIHVzZWQgaW4gdGhlIHByaXZhdGU6IGRlY2xhcmF0aW9ucyBm
b3IgYSBjbGFzcy4KICNkZWZpbmUgR1RFU1RfRElTQUxMT1dfQVNTSUdOXyh0eXBlKSBcCi0gIHZv
aWQgb3BlcmF0b3I9KHR5cGUgY29uc3QgJikgR1RFU1RfQ1hYMTFfRVFVQUxTX0RFTEVURV8KKyAg
dHlwZSYgb3BlcmF0b3I9KHR5cGUgY29uc3QgJikgPSBkZWxldGUKIAogLy8gQSBtYWNybyB0byBk
aXNhbGxvdyBjb3B5IGNvbnN0cnVjdG9yIGFuZCBvcGVyYXRvcj0KIC8vIFRoaXMgc2hvdWxkIGJl
IHVzZWQgaW4gdGhlIHByaXZhdGU6IGRlY2xhcmF0aW9ucyBmb3IgYSBjbGFzcy4KICNkZWZpbmUg
R1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyh0eXBlKSBcCi0gIHR5cGUodHlwZSBjb25z
dCAmKSBHVEVTVF9DWFgxMV9FUVVBTFNfREVMRVRFXzsgXAorICB0eXBlKHR5cGUgY29uc3QgJikg
PSBkZWxldGU7IFwKICAgR1RFU1RfRElTQUxMT1dfQVNTSUdOXyh0eXBlKQogCisvLyBBIG1hY3Jv
IHRvIGRpc2FsbG93IG1vdmUgb3BlcmF0b3I9CisvLyBUaGlzIHNob3VsZCBiZSB1c2VkIGluIHRo
ZSBwcml2YXRlOiBkZWNsYXJhdGlvbnMgZm9yIGEgY2xhc3MuCisjZGVmaW5lIEdURVNUX0RJU0FM
TE9XX01PVkVfQVNTSUdOXyh0eXBlKSBcCisgIHR5cGUmIG9wZXJhdG9yPSh0eXBlICYmKSBub2V4
Y2VwdCA9IGRlbGV0ZQorCisvLyBBIG1hY3JvIHRvIGRpc2FsbG93IG1vdmUgY29uc3RydWN0b3Ig
YW5kIG9wZXJhdG9yPQorLy8gVGhpcyBzaG91bGQgYmUgdXNlZCBpbiB0aGUgcHJpdmF0ZTogZGVj
bGFyYXRpb25zIGZvciBhIGNsYXNzLgorI2RlZmluZSBHVEVTVF9ESVNBTExPV19NT1ZFX0FORF9B
U1NJR05fKHR5cGUpIFwKKyAgdHlwZSh0eXBlICYmKSBub2V4Y2VwdCA9IGRlbGV0ZTsgXAorICBH
VEVTVF9ESVNBTExPV19NT1ZFX0FTU0lHTl8odHlwZSkKKwogLy8gVGVsbCB0aGUgY29tcGlsZXIg
dG8gd2FybiBhYm91dCB1bnVzZWQgcmV0dXJuIHZhbHVlcyBmb3IgZnVuY3Rpb25zIGRlY2xhcmVk
CiAvLyB3aXRoIHRoaXMgbWFjcm8uICBUaGUgbWFjcm8gc2hvdWxkIGJlIHVzZWQgb24gZnVuY3Rp
b24gZGVjbGFyYXRpb25zCiAvLyBmb2xsb3dpbmcgdGhlIGFyZ3VtZW50IGxpc3Q6CiAvLwogLy8g
ICBTcHJvY2tldCogQWxsb2NhdGVTcHJvY2tldCgpIEdURVNUX01VU1RfVVNFX1JFU1VMVF87Ci0j
aWYgZGVmaW5lZChfX0dOVUNfXykgJiYgKEdURVNUX0dDQ19WRVJfID49IDMwNDAwKSAmJiAhZGVm
aW5lZChDT01QSUxFUl9JQ0MpCisjaWYgZGVmaW5lZChfX0dOVUNfXykgJiYgIWRlZmluZWQoQ09N
UElMRVJfSUNDKQogIyBkZWZpbmUgR1RFU1RfTVVTVF9VU0VfUkVTVUxUXyBfX2F0dHJpYnV0ZV9f
ICgod2Fybl91bnVzZWRfcmVzdWx0KSkKICNlbHNlCiAjIGRlZmluZSBHVEVTVF9NVVNUX1VTRV9S
RVNVTFRfCi0jZW5kaWYgIC8vIF9fR05VQ19fICYmIChHVEVTVF9HQ0NfVkVSXyA+PSAzMDQwMCkg
JiYgIUNPTVBJTEVSX0lDQworI2VuZGlmICAvLyBfX0dOVUNfXyAmJiAhQ09NUElMRVJfSUNDCiAK
IC8vIE1TIEMrKyBjb21waWxlciBlbWl0cyB3YXJuaW5nIHdoZW4gYSBjb25kaXRpb25hbCBleHBy
ZXNzaW9uIGlzIGNvbXBpbGUgdGltZQogLy8gY29uc3RhbnQuIEluIHNvbWUgY29udGV4dHMgdGhp
cyB3YXJuaW5nIGlzIGZhbHNlIHBvc2l0aXZlIGFuZCBuZWVkcyB0byBiZQpAQCAtOTcxLDEzICs3
MzEsMTcgQEAgdHlwZWRlZiBzdHJ1Y3QgX1JUTF9DUklUSUNBTF9TRUNUSU9OIEdURVNUX0NSSVRJ
Q0FMX1NFQ1RJT047CiAjICBkZWZpbmUgR1RFU1RfSEFTX1NFSCAwCiAjIGVuZGlmCiAKLSNkZWZp
bmUgR1RFU1RfSVNfVEhSRUFEU0FGRSBcCi0gICAgKEdURVNUX0hBU19NVVRFWF9BTkRfVEhSRUFE
X0xPQ0FMXyBcCi0gICAgIHx8IChHVEVTVF9PU19XSU5ET1dTICYmICFHVEVTVF9PU19XSU5ET1dT
X1BIT05FICYmICFHVEVTVF9PU19XSU5ET1dTX1JUKSBcCi0gICAgIHx8IEdURVNUX0hBU19QVEhS
RUFEKQotCiAjZW5kaWYgIC8vIEdURVNUX0hBU19TRUgKIAorI2lmbmRlZiBHVEVTVF9JU19USFJF
QURTQUZFCisKKyNkZWZpbmUgR1RFU1RfSVNfVEhSRUFEU0FGRSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgIChHVEVTVF9IQVNfTVVURVhfQU5EX1RI
UkVBRF9MT0NBTF8gfHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAg
KEdURVNUX09TX1dJTkRPV1MgJiYgIUdURVNUX09TX1dJTkRPV1NfUEhPTkUgJiYgIUdURVNUX09T
X1dJTkRPV1NfUlQpIHx8IFwKKyAgIEdURVNUX0hBU19QVEhSRUFEKQorCisjZW5kaWYgIC8vIEdU
RVNUX0lTX1RIUkVBRFNBRkUKKwogLy8gR1RFU1RfQVBJXyBxdWFsaWZpZXMgYWxsIHN5bWJvbHMg
dGhhdCBtdXN0IGJlIGV4cG9ydGVkLiBUaGUgZGVmaW5pdGlvbnMgYmVsb3cKIC8vIGFyZSBndWFy
ZGVkIGJ5ICNpZm5kZWYgdG8gZ2l2ZSBlbWJlZGRlcnMgYSBjaGFuY2UgdG8gZGVmaW5lIEdURVNU
X0FQSV8gaW4KIC8vIGd0ZXN0L2ludGVybmFsL2N1c3RvbS9ndGVzdC1wb3J0LmgKQEAgLTEwNDQs
NiArODA4LDE4IEBAIHR5cGVkZWYgc3RydWN0IF9SVExfQ1JJVElDQUxfU0VDVElPTiBHVEVTVF9D
UklUSUNBTF9TRUNUSU9OOwogIyBkZWZpbmUgR1RFU1RfQVRUUklCVVRFX05PX1NBTklUSVpFX0FE
RFJFU1NfCiAjZW5kaWYgIC8vIF9fY2xhbmdfXwogCisvLyBBIGZ1bmN0aW9uIGxldmVsIGF0dHJp
YnV0ZSB0byBkaXNhYmxlIEhXQWRkcmVzc1Nhbml0aXplciBpbnN0cnVtZW50YXRpb24uCisjaWYg
ZGVmaW5lZChfX2NsYW5nX18pCisjIGlmIF9faGFzX2ZlYXR1cmUoaHdhZGRyZXNzX3Nhbml0aXpl
cikKKyMgIGRlZmluZSBHVEVTVF9BVFRSSUJVVEVfTk9fU0FOSVRJWkVfSFdBRERSRVNTXyBcCisg
ICAgICAgX19hdHRyaWJ1dGVfXygobm9fc2FuaXRpemUoImh3YWRkcmVzcyIpKSkKKyMgZWxzZQor
IyAgZGVmaW5lIEdURVNUX0FUVFJJQlVURV9OT19TQU5JVElaRV9IV0FERFJFU1NfCisjIGVuZGlm
ICAvLyBfX2hhc19mZWF0dXJlKGh3YWRkcmVzc19zYW5pdGl6ZXIpCisjZWxzZQorIyBkZWZpbmUg
R1RFU1RfQVRUUklCVVRFX05PX1NBTklUSVpFX0hXQUREUkVTU18KKyNlbmRpZiAgLy8gX19jbGFu
Z19fCisKIC8vIEEgZnVuY3Rpb24gbGV2ZWwgYXR0cmlidXRlIHRvIGRpc2FibGUgVGhyZWFkU2Fu
aXRpemVyIGluc3RydW1lbnRhdGlvbi4KICNpZiBkZWZpbmVkKF9fY2xhbmdfXykKICMgaWYgX19o
YXNfZmVhdHVyZSh0aHJlYWRfc2FuaXRpemVyKQpAQCAtMTA2MCwxNiArODM2LDEzIEBAIG5hbWVz
cGFjZSB0ZXN0aW5nIHsKIAogY2xhc3MgTWVzc2FnZTsKIAotI2lmIGRlZmluZWQoR1RFU1RfVFVQ
TEVfTkFNRVNQQUNFXykKLS8vIEltcG9ydCB0dXBsZSBhbmQgZnJpZW5kcyBpbnRvIHRoZSA6OnRl
c3RpbmcgbmFtZXNwYWNlLgotLy8gSXQgaXMgcGFydCBvZiBvdXIgaW50ZXJmYWNlLCBoYXZpbmcg
dGhlbSBpbiA6OnRlc3RpbmcgYWxsb3dzIHVzIHRvIGNoYW5nZQotLy8gdGhlaXIgdHlwZXMgYXMg
bmVlZGVkLgotdXNpbmcgR1RFU1RfVFVQTEVfTkFNRVNQQUNFXzo6Z2V0OwotdXNpbmcgR1RFU1Rf
VFVQTEVfTkFNRVNQQUNFXzo6bWFrZV90dXBsZTsKLXVzaW5nIEdURVNUX1RVUExFX05BTUVTUEFD
RV86OnR1cGxlOwotdXNpbmcgR1RFU1RfVFVQTEVfTkFNRVNQQUNFXzo6dHVwbGVfc2l6ZTsKLXVz
aW5nIEdURVNUX1RVUExFX05BTUVTUEFDRV86OnR1cGxlX2VsZW1lbnQ7Ci0jZW5kaWYgIC8vIGRl
ZmluZWQoR1RFU1RfVFVQTEVfTkFNRVNQQUNFXykKKy8vIExlZ2FjeSBpbXBvcnRzIGZvciBiYWNr
d2FyZHMgY29tcGF0aWJpbGl0eS4KKy8vIE5ldyBjb2RlIHNob3VsZCB1c2Ugc3RkOjogbmFtZXMg
ZGlyZWN0bHkuCit1c2luZyBzdGQ6OmdldDsKK3VzaW5nIHN0ZDo6bWFrZV90dXBsZTsKK3VzaW5n
IHN0ZDo6dHVwbGU7Cit1c2luZyBzdGQ6OnR1cGxlX2VsZW1lbnQ7Cit1c2luZyBzdGQ6OnR1cGxl
X3NpemU7CiAKIG5hbWVzcGFjZSBpbnRlcm5hbCB7CiAKQEAgLTEwNzgsMTU4ICs4NTEsMjEgQEAg
bmFtZXNwYWNlIGludGVybmFsIHsKIC8vIFNlY3JldCBvYmplY3QsIHdoaWNoIGlzIHdoYXQgd2Ug
d2FudC4KIGNsYXNzIFNlY3JldDsKIAotLy8gVGhlIEdURVNUX0NPTVBJTEVfQVNTRVJUXyBtYWNy
byBjYW4gYmUgdXNlZCB0byB2ZXJpZnkgdGhhdCBhIGNvbXBpbGUgdGltZQotLy8gZXhwcmVzc2lv
biBpcyB0cnVlLiBGb3IgZXhhbXBsZSwgeW91IGNvdWxkIHVzZSBpdCB0byB2ZXJpZnkgdGhlCi0v
LyBzaXplIG9mIGEgc3RhdGljIGFycmF5OgorLy8gVGhlIEdURVNUX0NPTVBJTEVfQVNTRVJUXyBp
cyBhIGxlZ2FjeSBtYWNybyB1c2VkIHRvIHZlcmlmeSB0aGF0IGEgY29tcGlsZQorLy8gdGltZSBl
eHByZXNzaW9uIGlzIHRydWUgKGluIG5ldyBjb2RlLCB1c2Ugc3RhdGljX2Fzc2VydCBpbnN0ZWFk
KS4gRm9yCisvLyBleGFtcGxlLCB5b3UgY291bGQgdXNlIGl0IHRvIHZlcmlmeSB0aGUgc2l6ZSBv
ZiBhIHN0YXRpYyBhcnJheToKIC8vCiAvLyAgIEdURVNUX0NPTVBJTEVfQVNTRVJUXyhHVEVTVF9B
UlJBWV9TSVpFXyhuYW1lcykgPT0gTlVNX05BTUVTLAogLy8gICAgICAgICAgICAgICAgICAgICAg
ICAgbmFtZXNfaW5jb3JyZWN0X3NpemUpOwogLy8KLS8vIG9yIHRvIG1ha2Ugc3VyZSBhIHN0cnVj
dCBpcyBzbWFsbGVyIHRoYW4gYSBjZXJ0YWluIHNpemU6Ci0vLwotLy8gICBHVEVTVF9DT01QSUxF
X0FTU0VSVF8oc2l6ZW9mKGZvbykgPCAxMjgsIGZvb190b29fbGFyZ2UpOwotLy8KLS8vIFRoZSBz
ZWNvbmQgYXJndW1lbnQgdG8gdGhlIG1hY3JvIGlzIHRoZSBuYW1lIG9mIHRoZSB2YXJpYWJsZS4g
SWYKLS8vIHRoZSBleHByZXNzaW9uIGlzIGZhbHNlLCBtb3N0IGNvbXBpbGVycyB3aWxsIGlzc3Vl
IGEgd2FybmluZy9lcnJvcgotLy8gY29udGFpbmluZyB0aGUgbmFtZSBvZiB0aGUgdmFyaWFibGUu
Ci0KLSNpZiBHVEVTVF9MQU5HX0NYWDExCi0jIGRlZmluZSBHVEVTVF9DT01QSUxFX0FTU0VSVF8o
ZXhwciwgbXNnKSBzdGF0aWNfYXNzZXJ0KGV4cHIsICNtc2cpCi0jZWxzZSAgLy8gIUdURVNUX0xB
TkdfQ1hYMTEKLXRlbXBsYXRlIDxib29sPgotICBzdHJ1Y3QgQ29tcGlsZUFzc2VydCB7Ci19Owot
Ci0jIGRlZmluZSBHVEVTVF9DT01QSUxFX0FTU0VSVF8oZXhwciwgbXNnKSBcCi0gIHR5cGVkZWYg
Ojp0ZXN0aW5nOjppbnRlcm5hbDo6Q29tcGlsZUFzc2VydDwoc3RhdGljX2Nhc3Q8Ym9vbD4oZXhw
cikpPiBcCi0gICAgICBtc2dbc3RhdGljX2Nhc3Q8Ym9vbD4oZXhwcikgPyAxIDogLTFdIEdURVNU
X0FUVFJJQlVURV9VTlVTRURfCi0jZW5kaWYgIC8vICFHVEVTVF9MQU5HX0NYWDExCi0KLS8vIElt
cGxlbWVudGF0aW9uIGRldGFpbHMgb2YgR1RFU1RfQ09NUElMRV9BU1NFUlRfOgotLy8KLS8vIChJ
biBDKysxMSwgd2Ugc2ltcGx5IHVzZSBzdGF0aWNfYXNzZXJ0IGluc3RlYWQgb2YgdGhlIGZvbGxv
d2luZykKLS8vCi0vLyAtIEdURVNUX0NPTVBJTEVfQVNTRVJUXyB3b3JrcyBieSBkZWZpbmluZyBh
biBhcnJheSB0eXBlIHRoYXQgaGFzIC0xCi0vLyAgIGVsZW1lbnRzIChhbmQgdGh1cyBpcyBpbnZh
bGlkKSB3aGVuIHRoZSBleHByZXNzaW9uIGlzIGZhbHNlLgotLy8KLS8vIC0gVGhlIHNpbXBsZXIg
ZGVmaW5pdGlvbgotLy8KLS8vICAgICNkZWZpbmUgR1RFU1RfQ09NUElMRV9BU1NFUlRfKGV4cHIs
IG1zZykgdHlwZWRlZiBjaGFyIG1zZ1soZXhwcikgPyAxIDogLTFdCi0vLwotLy8gICBkb2VzIG5v
dCB3b3JrLCBhcyBnY2Mgc3VwcG9ydHMgdmFyaWFibGUtbGVuZ3RoIGFycmF5cyB3aG9zZSBzaXpl
cwotLy8gICBhcmUgZGV0ZXJtaW5lZCBhdCBydW4tdGltZSAodGhpcyBpcyBnY2MncyBleHRlbnNp
b24gYW5kIG5vdCBwYXJ0Ci0vLyAgIG9mIHRoZSBDKysgc3RhbmRhcmQpLiAgQXMgYSByZXN1bHQs
IGdjYyBmYWlscyB0byByZWplY3QgdGhlCi0vLyAgIGZvbGxvd2luZyBjb2RlIHdpdGggdGhlIHNp
bXBsZSBkZWZpbml0aW9uOgotLy8KLS8vICAgICBpbnQgZm9vOwotLy8gICAgIEdURVNUX0NPTVBJ
TEVfQVNTRVJUXyhmb28sIG1zZyk7IC8vIG5vdCBzdXBwb3NlZCB0byBjb21waWxlIGFzIGZvbyBp
cwotLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIG5vdCBhIGNvbXBp
bGUtdGltZSBjb25zdGFudC4KLS8vCi0vLyAtIEJ5IHVzaW5nIHRoZSB0eXBlIENvbXBpbGVBc3Nl
cnQ8KGJvb2woZXhwcikpPiwgd2UgZW5zdXJlcyB0aGF0Ci0vLyAgIGV4cHIgaXMgYSBjb21waWxl
LXRpbWUgY29uc3RhbnQuICAoVGVtcGxhdGUgYXJndW1lbnRzIG11c3QgYmUKLS8vICAgZGV0ZXJt
aW5lZCBhdCBjb21waWxlLXRpbWUuKQotLy8KLS8vIC0gVGhlIG91dHRlciBwYXJlbnRoZXNlcyBp
biBDb21waWxlQXNzZXJ0PChib29sKGV4cHIpKT4gYXJlIG5lY2Vzc2FyeQotLy8gICB0byB3b3Jr
IGFyb3VuZCBhIGJ1ZyBpbiBnY2MgMy40LjQgYW5kIDQuMC4xLiAgSWYgd2UgaGFkIHdyaXR0ZW4K
LS8vCi0vLyAgICAgQ29tcGlsZUFzc2VydDxib29sKGV4cHIpPgotLy8KLS8vICAgaW5zdGVhZCwg
dGhlc2UgY29tcGlsZXJzIHdpbGwgcmVmdXNlIHRvIGNvbXBpbGUKLS8vCi0vLyAgICAgR1RFU1Rf
Q09NUElMRV9BU1NFUlRfKDUgPiAwLCBzb21lX21lc3NhZ2UpOwotLy8KLS8vICAgKFRoZXkgc2Vl
bSB0byB0aGluayB0aGUgIj4iIGluICI1ID4gMCIgbWFya3MgdGhlIGVuZCBvZiB0aGUKLS8vICAg
dGVtcGxhdGUgYXJndW1lbnQgbGlzdC4pCi0vLwotLy8gLSBUaGUgYXJyYXkgc2l6ZSBpcyAoYm9v
bChleHByKSA/IDEgOiAtMSksIGluc3RlYWQgb2Ygc2ltcGx5Ci0vLwotLy8gICAgICgoZXhwcikg
PyAxIDogLTEpLgotLy8KLS8vICAgVGhpcyBpcyB0byBhdm9pZCBydW5uaW5nIGludG8gYSBidWcg
aW4gTVMgVkMgNy4xLCB3aGljaAotLy8gICBjYXVzZXMgKCgwLjApID8gMSA6IC0xKSB0byBpbmNv
cnJlY3RseSBldmFsdWF0ZSB0byAxLgotCi0vLyBTdGF0aWNBc3NlcnRUeXBlRXFIZWxwZXIgaXMg
dXNlZCBieSBTdGF0aWNBc3NlcnRUeXBlRXEgZGVmaW5lZCBpbiBndGVzdC5oLgotLy8KLS8vIFRo
aXMgdGVtcGxhdGUgaXMgZGVjbGFyZWQsIGJ1dCBpbnRlbnRpb25hbGx5IHVuZGVmaW5lZC4KLXRl
bXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDI+Ci1zdHJ1Y3QgU3RhdGljQXNzZXJ0VHlw
ZUVxSGVscGVyOwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLXN0cnVjdCBTdGF0aWNBc3NlcnRU
eXBlRXFIZWxwZXI8VCwgVD4gewotICBlbnVtIHsgdmFsdWUgPSB0cnVlIH07Ci19OwotCi0vLyBT
YW1lIGFzIHN0ZDo6aXNfc2FtZTw+LgotdGVtcGxhdGUgPHR5cGVuYW1lIFQsIHR5cGVuYW1lIFU+
Ci1zdHJ1Y3QgSXNTYW1lIHsKLSAgZW51bSB7IHZhbHVlID0gZmFsc2UgfTsKLX07Ci10ZW1wbGF0
ZSA8dHlwZW5hbWUgVD4KLXN0cnVjdCBJc1NhbWU8VCwgVD4gewotICBlbnVtIHsgdmFsdWUgPSB0
cnVlIH07Ci19OwotCi0vLyBFdmFsdWF0ZXMgdG8gdGhlIG51bWJlciBvZiBlbGVtZW50cyBpbiAn
YXJyYXknLgotI2RlZmluZSBHVEVTVF9BUlJBWV9TSVpFXyhhcnJheSkgKHNpemVvZihhcnJheSkg
LyBzaXplb2YoYXJyYXlbMF0pKQotCi0jaWYgR1RFU1RfSEFTX0dMT0JBTF9TVFJJTkcKLXR5cGVk
ZWYgOjpzdHJpbmcgc3RyaW5nOwotI2Vsc2UKLXR5cGVkZWYgOjpzdGQ6OnN0cmluZyBzdHJpbmc7
Ci0jZW5kaWYgIC8vIEdURVNUX0hBU19HTE9CQUxfU1RSSU5HCi0KLSNpZiBHVEVTVF9IQVNfR0xP
QkFMX1dTVFJJTkcKLXR5cGVkZWYgOjp3c3RyaW5nIHdzdHJpbmc7Ci0jZWxpZiBHVEVTVF9IQVNf
U1REX1dTVFJJTkcKLXR5cGVkZWYgOjpzdGQ6OndzdHJpbmcgd3N0cmluZzsKLSNlbmRpZiAgLy8g
R1RFU1RfSEFTX0dMT0JBTF9XU1RSSU5HCisvLyBUaGUgc2Vjb25kIGFyZ3VtZW50IHRvIHRoZSBt
YWNybyBtdXN0IGJlIGEgdmFsaWQgQysrIGlkZW50aWZpZXIuIElmIHRoZQorLy8gZXhwcmVzc2lv
biBpcyBmYWxzZSwgY29tcGlsZXIgd2lsbCBpc3N1ZSBhbiBlcnJvciBjb250YWluaW5nIHRoaXMg
aWRlbnRpZmllci4KKyNkZWZpbmUgR1RFU1RfQ09NUElMRV9BU1NFUlRfKGV4cHIsIG1zZykgc3Rh
dGljX2Fzc2VydChleHByLCAjbXNnKQogCiAvLyBBIGhlbHBlciBmb3Igc3VwcHJlc3Npbmcgd2Fy
bmluZ3Mgb24gY29uc3RhbnQgY29uZGl0aW9uLiAgSXQganVzdAogLy8gcmV0dXJucyAnY29uZGl0
aW9uJy4KIEdURVNUX0FQSV8gYm9vbCBJc1RydWUoYm9vbCBjb25kaXRpb24pOwogCi0vLyBEZWZp
bmVzIHNjb3BlZF9wdHIuCi0KLS8vIFRoaXMgaW1wbGVtZW50YXRpb24gb2Ygc2NvcGVkX3B0ciBp
cyBQQVJUSUFMIC0gaXQgb25seSBjb250YWlucwotLy8gZW5vdWdoIHN0dWZmIHRvIHNhdGlzZnkg
R29vZ2xlIFRlc3QncyBuZWVkLgotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1jbGFzcyBzY29wZWRf
cHRyIHsKLSBwdWJsaWM6Ci0gIHR5cGVkZWYgVCBlbGVtZW50X3R5cGU7Ci0KLSAgZXhwbGljaXQg
c2NvcGVkX3B0cihUKiBwID0gTlVMTCkgOiBwdHJfKHApIHt9Ci0gIH5zY29wZWRfcHRyKCkgeyBy
ZXNldCgpOyB9Ci0KLSAgVCYgb3BlcmF0b3IqKCkgY29uc3QgeyByZXR1cm4gKnB0cl87IH0KLSAg
VCogb3BlcmF0b3ItPigpIGNvbnN0IHsgcmV0dXJuIHB0cl87IH0KLSAgVCogZ2V0KCkgY29uc3Qg
eyByZXR1cm4gcHRyXzsgfQotCi0gIFQqIHJlbGVhc2UoKSB7Ci0gICAgVCogY29uc3QgcHRyID0g
cHRyXzsKLSAgICBwdHJfID0gTlVMTDsKLSAgICByZXR1cm4gcHRyOwotICB9Ci0KLSAgdm9pZCBy
ZXNldChUKiBwID0gTlVMTCkgewotICAgIGlmIChwICE9IHB0cl8pIHsKLSAgICAgIGlmIChJc1Ry
dWUoc2l6ZW9mKFQpID4gMCkpIHsgIC8vIE1ha2VzIHN1cmUgVCBpcyBhIGNvbXBsZXRlIHR5cGUu
Ci0gICAgICAgIGRlbGV0ZSBwdHJfOwotICAgICAgfQotICAgICAgcHRyXyA9IHA7Ci0gICAgfQot
ICB9Ci0KLSAgZnJpZW5kIHZvaWQgc3dhcChzY29wZWRfcHRyJiBhLCBzY29wZWRfcHRyJiBiKSB7
Ci0gICAgdXNpbmcgc3RkOjpzd2FwOwotICAgIHN3YXAoYS5wdHJfLCBiLnB0cl8pOwotICB9Ci0K
LSBwcml2YXRlOgotICBUKiBwdHJfOwotCi0gIEdURVNUX0RJU0FMTE9XX0NPUFlfQU5EX0FTU0lH
Tl8oc2NvcGVkX3B0cik7Ci19OwotCiAvLyBEZWZpbmVzIFJFLgogCiAjaWYgR1RFU1RfVVNFU19Q
Q1JFCkBAIC0xMjQ3LDI1ICs4ODMsMTYgQEAgY2xhc3MgR1RFU1RfQVBJXyBSRSB7CiAgIC8vIENv
bnN0cnVjdHMgYW4gUkUgZnJvbSBhIHN0cmluZy4KICAgUkUoY29uc3QgOjpzdGQ6OnN0cmluZyYg
cmVnZXgpIHsgSW5pdChyZWdleC5jX3N0cigpKTsgfSAgLy8gTk9MSU5UCiAKLSMgaWYgR1RFU1Rf
SEFTX0dMT0JBTF9TVFJJTkcKLQotICBSRShjb25zdCA6OnN0cmluZyYgcmVnZXgpIHsgSW5pdChy
ZWdleC5jX3N0cigpKTsgfSAgLy8gTk9MSU5UCi0KLSMgZW5kaWYgIC8vIEdURVNUX0hBU19HTE9C
QUxfU1RSSU5HCi0KICAgUkUoY29uc3QgY2hhciogcmVnZXgpIHsgSW5pdChyZWdleCk7IH0gIC8v
IE5PTElOVAogICB+UkUoKTsKIAogICAvLyBSZXR1cm5zIHRoZSBzdHJpbmcgcmVwcmVzZW50YXRp
b24gb2YgdGhlIHJlZ2V4LgogICBjb25zdCBjaGFyKiBwYXR0ZXJuKCkgY29uc3QgeyByZXR1cm4g
cGF0dGVybl87IH0KIAotICAvLyBGdWxsTWF0Y2goc3RyLCByZSkgcmV0dXJucyB0cnVlIGlmZiBy
ZWd1bGFyIGV4cHJlc3Npb24gcmUgbWF0Y2hlcwotICAvLyB0aGUgZW50aXJlIHN0ci4KLSAgLy8g
UGFydGlhbE1hdGNoKHN0ciwgcmUpIHJldHVybnMgdHJ1ZSBpZmYgcmVndWxhciBleHByZXNzaW9u
IHJlCisgIC8vIEZ1bGxNYXRjaChzdHIsIHJlKSByZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYg
cmVndWxhciBleHByZXNzaW9uIHJlCisgIC8vIG1hdGNoZXMgdGhlIGVudGlyZSBzdHIuCisgIC8v
IFBhcnRpYWxNYXRjaChzdHIsIHJlKSByZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgcmVndWxh
ciBleHByZXNzaW9uIHJlCiAgIC8vIG1hdGNoZXMgYSBzdWJzdHJpbmcgb2Ygc3RyIChpbmNsdWRp
bmcgc3RyIGl0c2VsZikuCi0gIC8vCi0gIC8vIEZJWE1FOiBtYWtlIEZ1bGxNYXRjaCgpIGFuZCBQ
YXJ0aWFsTWF0Y2goKSB3b3JrCi0gIC8vIHdoZW4gc3RyIGNvbnRhaW5zIE5VTCBjaGFyYWN0ZXJz
LgogICBzdGF0aWMgYm9vbCBGdWxsTWF0Y2goY29uc3QgOjpzdGQ6OnN0cmluZyYgc3RyLCBjb25z
dCBSRSYgcmUpIHsKICAgICByZXR1cm4gRnVsbE1hdGNoKHN0ci5jX3N0cigpLCByZSk7CiAgIH0K
QEAgLTEyNzMsMjYgKzkwMCwxMSBAQCBjbGFzcyBHVEVTVF9BUElfIFJFIHsKICAgICByZXR1cm4g
UGFydGlhbE1hdGNoKHN0ci5jX3N0cigpLCByZSk7CiAgIH0KIAotIyBpZiBHVEVTVF9IQVNfR0xP
QkFMX1NUUklORwotCi0gIHN0YXRpYyBib29sIEZ1bGxNYXRjaChjb25zdCA6OnN0cmluZyYgc3Ry
LCBjb25zdCBSRSYgcmUpIHsKLSAgICByZXR1cm4gRnVsbE1hdGNoKHN0ci5jX3N0cigpLCByZSk7
Ci0gIH0KLSAgc3RhdGljIGJvb2wgUGFydGlhbE1hdGNoKGNvbnN0IDo6c3RyaW5nJiBzdHIsIGNv
bnN0IFJFJiByZSkgewotICAgIHJldHVybiBQYXJ0aWFsTWF0Y2goc3RyLmNfc3RyKCksIHJlKTsK
LSAgfQotCi0jIGVuZGlmICAvLyBHVEVTVF9IQVNfR0xPQkFMX1NUUklORwotCiAgIHN0YXRpYyBi
b29sIEZ1bGxNYXRjaChjb25zdCBjaGFyKiBzdHIsIGNvbnN0IFJFJiByZSk7CiAgIHN0YXRpYyBi
b29sIFBhcnRpYWxNYXRjaChjb25zdCBjaGFyKiBzdHIsIGNvbnN0IFJFJiByZSk7CiAKICBwcml2
YXRlOgogICB2b2lkIEluaXQoY29uc3QgY2hhciogcmVnZXgpOwotCi0gIC8vIFdlIHVzZSBhIGNv
bnN0IGNoYXIqIGluc3RlYWQgb2YgYW4gc3RkOjpzdHJpbmcsIGFzIEdvb2dsZSBUZXN0IHVzZWQg
dG8gYmUKLSAgLy8gdXNlZCB3aGVyZSBzdGQ6OnN0cmluZyBpcyBub3QgYXZhaWxhYmxlLiAgRklY
TUU6IGNoYW5nZSB0bwotICAvLyBzdGQ6OnN0cmluZy4KICAgY29uc3QgY2hhciogcGF0dGVybl87
CiAgIGJvb2wgaXNfdmFsaWRfOwogCkBAIC0xMzYwLDcgKzk3Miw3IEBAIGNsYXNzIEdURVNUX0FQ
SV8gR1Rlc3RMb2cgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9fRklMRV9f
LCBfX0xJTkVfXykuR2V0U3RyZWFtKCkKIAogaW5saW5lIHZvaWQgTG9nVG9TdGRlcnIoKSB7fQot
aW5saW5lIHZvaWQgRmx1c2hJbmZvTG9nKCkgeyBmZmx1c2goTlVMTCk7IH0KK2lubGluZSB2b2lk
IEZsdXNoSW5mb0xvZygpIHsgZmZsdXNoKG51bGxwdHIpOyB9CiAKICNlbmRpZiAgLy8gIWRlZmlu
ZWQoR1RFU1RfTE9HXykKIApAQCAtMTM5NywxOSArMTAwOSw2IEBAIGlubGluZSB2b2lkIEZsdXNo
SW5mb0xvZygpIHsgZmZsdXNoKE5VTEwpOyB9CiAgICAgR1RFU1RfTE9HXyhGQVRBTCkgPDwgI3Bv
c2l4X2NhbGwgPDwgImZhaWxlZCB3aXRoIGVycm9yICIgXAogICAgICAgICAgICAgICAgICAgICAg
IDw8IGd0ZXN0X2Vycm9yCiAKLS8vIEFkZHMgcmVmZXJlbmNlIHRvIGEgdHlwZSBpZiBpdCBpcyBu
b3QgYSByZWZlcmVuY2UgdHlwZSwKLS8vIG90aGVyd2lzZSBsZWF2ZXMgaXQgdW5jaGFuZ2VkLiAg
VGhpcyBpcyB0aGUgc2FtZSBhcwotLy8gdHIxOjphZGRfcmVmZXJlbmNlLCB3aGljaCBpcyBub3Qg
d2lkZWx5IGF2YWlsYWJsZSB5ZXQuCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLXN0cnVjdCBBZGRS
ZWZlcmVuY2UgeyB0eXBlZGVmIFQmIHR5cGU7IH07ICAvLyBOT0xJTlQKLXRlbXBsYXRlIDx0eXBl
bmFtZSBUPgotc3RydWN0IEFkZFJlZmVyZW5jZTxUJj4geyB0eXBlZGVmIFQmIHR5cGU7IH07ICAv
LyBOT0xJTlQKLQotLy8gQSBoYW5keSB3cmFwcGVyIGFyb3VuZCBBZGRSZWZlcmVuY2UgdGhhdCB3
b3JrcyB3aGVuIHRoZSBhcmd1bWVudCBUCi0vLyBkZXBlbmRzIG9uIHRlbXBsYXRlIHBhcmFtZXRl
cnMuCi0jZGVmaW5lIEdURVNUX0FERF9SRUZFUkVOQ0VfKFQpIFwKLSAgICB0eXBlbmFtZSA6OnRl
c3Rpbmc6OmludGVybmFsOjpBZGRSZWZlcmVuY2U8VD46OnR5cGUKLQogLy8gVHJhbnNmb3JtcyAi
VCIgaW50byAiY29uc3QgVCYiIGFjY29yZGluZyB0byBzdGFuZGFyZCByZWZlcmVuY2UgY29sbGFw
c2luZwogLy8gcnVsZXMgKHRoaXMgaXMgb25seSBuZWVkZWQgYXMgYSBiYWNrcG9ydCBmb3IgQysr
OTggY29tcGlsZXJzIHRoYXQgZG8gbm90CiAvLyBzdXBwb3J0IHJlZmVyZW5jZSBjb2xsYXBzaW5n
KS4gU3BlY2lmaWNhbGx5LCBpdCB0cmFuc2Zvcm1zOgpAQCAtMTQzMCwyOCArMTAyOSw2IEBAIHN0
cnVjdCBDb25zdFJlZjxUJj4geyB0eXBlZGVmIFQmIHR5cGU7IH07CiAjZGVmaW5lIEdURVNUX1JF
RkVSRU5DRV9UT19DT05TVF8oVCkgXAogICB0eXBlbmFtZSA6OnRlc3Rpbmc6OmludGVybmFsOjpD
b25zdFJlZjxUPjo6dHlwZQogCi0jaWYgR1RFU1RfSEFTX1NURF9NT1ZFXwotdXNpbmcgc3RkOjpm
b3J3YXJkOwotdXNpbmcgc3RkOjptb3ZlOwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLXN0cnVj
dCBSdmFsdWVSZWYgewotICB0eXBlZGVmIFQmJiB0eXBlOwotfTsKLSNlbHNlICAvLyBHVEVTVF9I
QVNfU1REX01PVkVfCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLWNvbnN0IFQmIG1vdmUoY29uc3Qg
VCYgdCkgewotICByZXR1cm4gdDsKLX0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotR1RFU1RfQURE
X1JFRkVSRU5DRV8oVCkgZm9yd2FyZChHVEVTVF9BRERfUkVGRVJFTkNFXyhUKSB0KSB7IHJldHVy
biB0OyB9Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotc3RydWN0IFJ2YWx1ZVJlZiB7Ci0gIHR5
cGVkZWYgY29uc3QgVCYgdHlwZTsKLX07Ci0jZW5kaWYgIC8vIEdURVNUX0hBU19TVERfTU9WRV8K
LQogLy8gSU5URVJOQUwgSU1QTEVNRU5UQVRJT04gLSBETyBOT1QgVVNFIElOIFVTRVIgQ09ERS4K
IC8vCiAvLyBVc2UgSW1wbGljaXRDYXN0XyBhcyBhIHNhZmUgdmVyc2lvbiBvZiBzdGF0aWNfY2Fz
dCBmb3IgdXBjYXN0aW5nIGluCkBAIC0xNTA1LDEzICsxMDgyLDEzIEBAIGlubGluZSBUbyBEb3du
Q2FzdF8oRnJvbSogZikgeyAgLy8gc28gd2Ugb25seSBhY2NlcHQgcG9pbnRlcnMKICAgR1RFU1Rf
SU5URU5USU9OQUxfQ09OU1RfQ09ORF9QVVNIXygpCiAgIGlmIChmYWxzZSkgewogICBHVEVTVF9J
TlRFTlRJT05BTF9DT05TVF9DT05EX1BPUF8oKQotICAgIGNvbnN0IFRvIHRvID0gTlVMTDsKLSAg
ICA6OnRlc3Rpbmc6OmludGVybmFsOjpJbXBsaWNpdENhc3RfPEZyb20qPih0byk7CisgIGNvbnN0
IFRvIHRvID0gbnVsbHB0cjsKKyAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6SW1wbGljaXRDYXN0XzxG
cm9tKj4odG8pOwogICB9CiAKICNpZiBHVEVTVF9IQVNfUlRUSQogICAvLyBSVFRJOiBkZWJ1ZyBt
b2RlIG9ubHkhCi0gIEdURVNUX0NIRUNLXyhmID09IE5VTEwgfHwgZHluYW1pY19jYXN0PFRvPihm
KSAhPSBOVUxMKTsKKyAgR1RFU1RfQ0hFQ0tfKGYgPT0gbnVsbHB0ciB8fCBkeW5hbWljX2Nhc3Q8
VG8+KGYpICE9IG51bGxwdHIpOwogI2VuZGlmCiAgIHJldHVybiBzdGF0aWNfY2FzdDxUbz4oZik7
CiB9CkBAIC0xNTY1LDkgKzExNDIsNiBAQCBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gR2V0SW5q
ZWN0YWJsZUFyZ3ZzKCk7CiAvLyBEZXByZWNhdGVkOiBwYXNzIHRoZSBhcmdzIHZlY3RvciBieSB2
YWx1ZSBpbnN0ZWFkLgogdm9pZCBTZXRJbmplY3RhYmxlQXJndnMoY29uc3Qgc3RkOjp2ZWN0b3I8
c3RkOjpzdHJpbmc+KiBuZXdfYXJndnMpOwogdm9pZCBTZXRJbmplY3RhYmxlQXJndnMoY29uc3Qg
c3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+JiBuZXdfYXJndnMpOwotI2lmIEdURVNUX0hBU19HTE9C
QUxfU1RSSU5HCi12b2lkIFNldEluamVjdGFibGVBcmd2cyhjb25zdCBzdGQ6OnZlY3RvcjwgOjpz
dHJpbmc+JiBuZXdfYXJndnMpOwotI2VuZGlmICAvLyBHVEVTVF9IQVNfR0xPQkFMX1NUUklORwog
dm9pZCBDbGVhckluamVjdGFibGVBcmd2cygpOwogCiAjZW5kaWYgIC8vIEdURVNUX0hBU19ERUFU
SF9URVNUCkBAIC0xNTgzLDcgKzExNTcsNyBAQCBpbmxpbmUgdm9pZCBTbGVlcE1pbGxpc2Vjb25k
cyhpbnQgbikgewogICAgIDAsICAgICAgICAgICAgICAgICAgLy8gMCBzZWNvbmRzLgogICAgIG4g
KiAxMDAwTCAqIDEwMDBMLCAgLy8gQW5kIG4gbXMuCiAgIH07Ci0gIG5hbm9zbGVlcCgmdGltZSwg
TlVMTCk7CisgIG5hbm9zbGVlcCgmdGltZSwgbnVsbHB0cik7CiB9CiAjIGVuZGlmICAvLyBHVEVT
VF9IQVNfUFRIUkVBRAogCkBAIC0xNjAxLDcgKzExNzUsNyBAQCBpbmxpbmUgdm9pZCBTbGVlcE1p
bGxpc2Vjb25kcyhpbnQgbikgewogY2xhc3MgTm90aWZpY2F0aW9uIHsKICBwdWJsaWM6CiAgIE5v
dGlmaWNhdGlvbigpIDogbm90aWZpZWRfKGZhbHNlKSB7Ci0gICAgR1RFU1RfQ0hFQ0tfUE9TSVhf
U1VDQ0VTU18ocHRocmVhZF9tdXRleF9pbml0KCZtdXRleF8sIE5VTEwpKTsKKyAgICBHVEVTVF9D
SEVDS19QT1NJWF9TVUNDRVNTXyhwdGhyZWFkX211dGV4X2luaXQoJm11dGV4XywgbnVsbHB0cikp
OwogICB9CiAgIH5Ob3RpZmljYXRpb24oKSB7CiAgICAgcHRocmVhZF9tdXRleF9kZXN0cm95KCZt
dXRleF8pOwpAQCAtMTY1OSw3ICsxMjMzLDggQEAgY2xhc3MgR1RFU1RfQVBJXyBBdXRvSGFuZGxl
IHsKICAgdm9pZCBSZXNldChIYW5kbGUgaGFuZGxlKTsKIAogIHByaXZhdGU6Ci0gIC8vIFJldHVy
bnMgdHJ1ZSBpZmYgdGhlIGhhbmRsZSBpcyBhIHZhbGlkIGhhbmRsZSBvYmplY3QgdGhhdCBjYW4g
YmUgY2xvc2VkLgorICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIGhhbmRsZSBp
cyBhIHZhbGlkIGhhbmRsZSBvYmplY3QgdGhhdCBjYW4gYmUKKyAgLy8gY2xvc2VkLgogICBib29s
IElzQ2xvc2VhYmxlKCkgY29uc3Q7CiAKICAgSGFuZGxlIGhhbmRsZV87CkBAIC0xNzEwLDcgKzEy
ODUsNyBAQCBjbGFzcyBUaHJlYWRXaXRoUGFyYW1CYXNlIHsKIC8vIHBhc3MgaW50byBwdGhyZWFk
X2NyZWF0ZSgpLgogZXh0ZXJuICJDIiBpbmxpbmUgdm9pZCogVGhyZWFkRnVuY1dpdGhDTGlua2Fn
ZSh2b2lkKiB0aHJlYWQpIHsKICAgc3RhdGljX2Nhc3Q8VGhyZWFkV2l0aFBhcmFtQmFzZSo+KHRo
cmVhZCktPlJ1bigpOwotICByZXR1cm4gTlVMTDsKKyAgcmV0dXJuIG51bGxwdHI7CiB9CiAKIC8v
IEhlbHBlciBjbGFzcyBmb3IgdGVzdGluZyBHb29nbGUgVGVzdCdzIG11bHRpLXRocmVhZGluZyBj
b25zdHJ1Y3RzLgpAQCAtMTczOSwyMCArMTMxNCwxOSBAQCBjbGFzcyBUaHJlYWRXaXRoUGFyYW0g
OiBwdWJsaWMgVGhyZWFkV2l0aFBhcmFtQmFzZSB7CiAgICAgLy8gVGhlIHRocmVhZCBjYW4gYmUg
Y3JlYXRlZCBvbmx5IGFmdGVyIGFsbCBmaWVsZHMgZXhjZXB0IHRocmVhZF8KICAgICAvLyBoYXZl
IGJlZW4gaW5pdGlhbGl6ZWQuCiAgICAgR1RFU1RfQ0hFQ0tfUE9TSVhfU1VDQ0VTU18oCi0gICAg
ICAgIHB0aHJlYWRfY3JlYXRlKCZ0aHJlYWRfLCAwLCAmVGhyZWFkRnVuY1dpdGhDTGlua2FnZSwg
YmFzZSkpOworICAgICAgICBwdGhyZWFkX2NyZWF0ZSgmdGhyZWFkXywgbnVsbHB0ciwgJlRocmVh
ZEZ1bmNXaXRoQ0xpbmthZ2UsIGJhc2UpKTsKICAgfQotICB+VGhyZWFkV2l0aFBhcmFtKCkgeyBK
b2luKCk7IH0KKyAgflRocmVhZFdpdGhQYXJhbSgpIG92ZXJyaWRlIHsgSm9pbigpOyB9CiAKICAg
dm9pZCBKb2luKCkgewogICAgIGlmICghZmluaXNoZWRfKSB7Ci0gICAgICBHVEVTVF9DSEVDS19Q
T1NJWF9TVUNDRVNTXyhwdGhyZWFkX2pvaW4odGhyZWFkXywgMCkpOworICAgICAgR1RFU1RfQ0hF
Q0tfUE9TSVhfU1VDQ0VTU18ocHRocmVhZF9qb2luKHRocmVhZF8sIG51bGxwdHIpKTsKICAgICAg
IGZpbmlzaGVkXyA9IHRydWU7CiAgICAgfQogICB9CiAKLSAgdmlydHVhbCB2b2lkIFJ1bigpIHsK
LSAgICBpZiAodGhyZWFkX2Nhbl9zdGFydF8gIT0gTlVMTCkKLSAgICAgIHRocmVhZF9jYW5fc3Rh
cnRfLT5XYWl0Rm9yTm90aWZpY2F0aW9uKCk7CisgIHZvaWQgUnVuKCkgb3ZlcnJpZGUgeworICAg
IGlmICh0aHJlYWRfY2FuX3N0YXJ0XyAhPSBudWxscHRyKSB0aHJlYWRfY2FuX3N0YXJ0Xy0+V2Fp
dEZvck5vdGlmaWNhdGlvbigpOwogICAgIGZ1bmNfKHBhcmFtXyk7CiAgIH0KIApAQCAtMTc2Miw3
ICsxMzM2LDggQEAgY2xhc3MgVGhyZWFkV2l0aFBhcmFtIDogcHVibGljIFRocmVhZFdpdGhQYXJh
bUJhc2UgewogICAvLyBXaGVuIG5vbi1OVUxMLCB1c2VkIHRvIGJsb2NrIGV4ZWN1dGlvbiB1bnRp
bCB0aGUgY29udHJvbGxlciB0aHJlYWQKICAgLy8gbm90aWZpZXMuCiAgIE5vdGlmaWNhdGlvbiog
Y29uc3QgdGhyZWFkX2Nhbl9zdGFydF87Ci0gIGJvb2wgZmluaXNoZWRfOyAgLy8gdHJ1ZSBpZmYg
d2Uga25vdyB0aGF0IHRoZSB0aHJlYWQgZnVuY3Rpb24gaGFzIGZpbmlzaGVkLgorICBib29sIGZp
bmlzaGVkXzsgIC8vIHRydWUgaWYgYW5kIG9ubHkgaWYgd2Uga25vdyB0aGF0IHRoZSB0aHJlYWQg
ZnVuY3Rpb24gaGFzCisgICAgICAgICAgICAgICAgICAgLy8gZmluaXNoZWQuCiAgIHB0aHJlYWRf
dCB0aHJlYWRfOyAgLy8gVGhlIG5hdGl2ZSB0aHJlYWQgb2JqZWN0LgogCiAgIEdURVNUX0RJU0FM
TE9XX0NPUFlfQU5EX0FTU0lHTl8oVGhyZWFkV2l0aFBhcmFtKTsKQEAgLTIwMjcsNyArMTYwMiw3
IEBAIGNsYXNzIFRocmVhZExvY2FsIDogcHVibGljIFRocmVhZExvY2FsQmFzZSB7CiAgIGNsYXNz
IERlZmF1bHRWYWx1ZUhvbGRlckZhY3RvcnkgOiBwdWJsaWMgVmFsdWVIb2xkZXJGYWN0b3J5IHsK
ICAgIHB1YmxpYzoKICAgICBEZWZhdWx0VmFsdWVIb2xkZXJGYWN0b3J5KCkge30KLSAgICB2aXJ0
dWFsIFZhbHVlSG9sZGVyKiBNYWtlTmV3SG9sZGVyKCkgY29uc3QgeyByZXR1cm4gbmV3IFZhbHVl
SG9sZGVyKCk7IH0KKyAgICBWYWx1ZUhvbGRlciogTWFrZU5ld0hvbGRlcigpIGNvbnN0IG92ZXJy
aWRlIHsgcmV0dXJuIG5ldyBWYWx1ZUhvbGRlcigpOyB9CiAKICAgIHByaXZhdGU6CiAgICAgR1RF
U1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhEZWZhdWx0VmFsdWVIb2xkZXJGYWN0b3J5KTsK
QEAgLTIwMzYsNyArMTYxMSw3IEBAIGNsYXNzIFRocmVhZExvY2FsIDogcHVibGljIFRocmVhZExv
Y2FsQmFzZSB7CiAgIGNsYXNzIEluc3RhbmNlVmFsdWVIb2xkZXJGYWN0b3J5IDogcHVibGljIFZh
bHVlSG9sZGVyRmFjdG9yeSB7CiAgICBwdWJsaWM6CiAgICAgZXhwbGljaXQgSW5zdGFuY2VWYWx1
ZUhvbGRlckZhY3RvcnkoY29uc3QgVCYgdmFsdWUpIDogdmFsdWVfKHZhbHVlKSB7fQotICAgIHZp
cnR1YWwgVmFsdWVIb2xkZXIqIE1ha2VOZXdIb2xkZXIoKSBjb25zdCB7CisgICAgVmFsdWVIb2xk
ZXIqIE1ha2VOZXdIb2xkZXIoKSBjb25zdCBvdmVycmlkZSB7CiAgICAgICByZXR1cm4gbmV3IFZh
bHVlSG9sZGVyKHZhbHVlXyk7CiAgICAgfQogCkBAIC0yMDQ2LDcgKzE2MjEsNyBAQCBjbGFzcyBU
aHJlYWRMb2NhbCA6IHB1YmxpYyBUaHJlYWRMb2NhbEJhc2UgewogICAgIEdURVNUX0RJU0FMTE9X
X0NPUFlfQU5EX0FTU0lHTl8oSW5zdGFuY2VWYWx1ZUhvbGRlckZhY3RvcnkpOwogICB9OwogCi0g
IHNjb3BlZF9wdHI8VmFsdWVIb2xkZXJGYWN0b3J5PiBkZWZhdWx0X2ZhY3RvcnlfOworICBzdGQ6
OnVuaXF1ZV9wdHI8VmFsdWVIb2xkZXJGYWN0b3J5PiBkZWZhdWx0X2ZhY3RvcnlfOwogCiAgIEdU
RVNUX0RJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTl8oVGhyZWFkTG9jYWwpOwogfTsKQEAgLTIxMTUs
NyArMTY5MCw3IEBAIGNsYXNzIE11dGV4QmFzZSB7CiBjbGFzcyBNdXRleCA6IHB1YmxpYyBNdXRl
eEJhc2UgewogIHB1YmxpYzoKICAgTXV0ZXgoKSB7Ci0gICAgR1RFU1RfQ0hFQ0tfUE9TSVhfU1VD
Q0VTU18ocHRocmVhZF9tdXRleF9pbml0KCZtdXRleF8sIE5VTEwpKTsKKyAgICBHVEVTVF9DSEVD
S19QT1NJWF9TVUNDRVNTXyhwdGhyZWFkX211dGV4X2luaXQoJm11dGV4XywgbnVsbHB0cikpOwog
ICAgIGhhc19vd25lcl8gPSBmYWxzZTsKICAgfQogICB+TXV0ZXgoKSB7CkBAIC0yMjEzLDcgKzE3
ODgsNyBAQCBjbGFzcyBHVEVTVF9BUElfIFRocmVhZExvY2FsIHsKICAgVCogR2V0T3JDcmVhdGVW
YWx1ZSgpIGNvbnN0IHsKICAgICBUaHJlYWRMb2NhbFZhbHVlSG9sZGVyQmFzZSogY29uc3QgaG9s
ZGVyID0KICAgICAgICAgc3RhdGljX2Nhc3Q8VGhyZWFkTG9jYWxWYWx1ZUhvbGRlckJhc2UqPihw
dGhyZWFkX2dldHNwZWNpZmljKGtleV8pKTsKLSAgICBpZiAoaG9sZGVyICE9IE5VTEwpIHsKKyAg
ICBpZiAoaG9sZGVyICE9IG51bGxwdHIpIHsKICAgICAgIHJldHVybiBDaGVja2VkRG93bmNhc3RU
b0FjdHVhbFR5cGU8VmFsdWVIb2xkZXI+KGhvbGRlciktPnBvaW50ZXIoKTsKICAgICB9CiAKQEAg
LTIyMzYsNyArMTgxMSw3IEBAIGNsYXNzIEdURVNUX0FQSV8gVGhyZWFkTG9jYWwgewogICBjbGFz
cyBEZWZhdWx0VmFsdWVIb2xkZXJGYWN0b3J5IDogcHVibGljIFZhbHVlSG9sZGVyRmFjdG9yeSB7
CiAgICBwdWJsaWM6CiAgICAgRGVmYXVsdFZhbHVlSG9sZGVyRmFjdG9yeSgpIHt9Ci0gICAgdmly
dHVhbCBWYWx1ZUhvbGRlciogTWFrZU5ld0hvbGRlcigpIGNvbnN0IHsgcmV0dXJuIG5ldyBWYWx1
ZUhvbGRlcigpOyB9CisgICAgVmFsdWVIb2xkZXIqIE1ha2VOZXdIb2xkZXIoKSBjb25zdCBvdmVy
cmlkZSB7IHJldHVybiBuZXcgVmFsdWVIb2xkZXIoKTsgfQogCiAgICBwcml2YXRlOgogICAgIEdU
RVNUX0RJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTl8oRGVmYXVsdFZhbHVlSG9sZGVyRmFjdG9yeSk7
CkBAIC0yMjQ1LDcgKzE4MjAsNyBAQCBjbGFzcyBHVEVTVF9BUElfIFRocmVhZExvY2FsIHsKICAg
Y2xhc3MgSW5zdGFuY2VWYWx1ZUhvbGRlckZhY3RvcnkgOiBwdWJsaWMgVmFsdWVIb2xkZXJGYWN0
b3J5IHsKICAgIHB1YmxpYzoKICAgICBleHBsaWNpdCBJbnN0YW5jZVZhbHVlSG9sZGVyRmFjdG9y
eShjb25zdCBUJiB2YWx1ZSkgOiB2YWx1ZV8odmFsdWUpIHt9Ci0gICAgdmlydHVhbCBWYWx1ZUhv
bGRlciogTWFrZU5ld0hvbGRlcigpIGNvbnN0IHsKKyAgICBWYWx1ZUhvbGRlciogTWFrZU5ld0hv
bGRlcigpIGNvbnN0IG92ZXJyaWRlIHsKICAgICAgIHJldHVybiBuZXcgVmFsdWVIb2xkZXIodmFs
dWVfKTsKICAgICB9CiAKQEAgLTIyNTcsNyArMTgzMiw3IEBAIGNsYXNzIEdURVNUX0FQSV8gVGhy
ZWFkTG9jYWwgewogCiAgIC8vIEEga2V5IHB0aHJlYWRzIHVzZXMgZm9yIGxvb2tpbmcgdXAgcGVy
LXRocmVhZCB2YWx1ZXMuCiAgIGNvbnN0IHB0aHJlYWRfa2V5X3Qga2V5XzsKLSAgc2NvcGVkX3B0
cjxWYWx1ZUhvbGRlckZhY3Rvcnk+IGRlZmF1bHRfZmFjdG9yeV87CisgIHN0ZDo6dW5pcXVlX3B0
cjxWYWx1ZUhvbGRlckZhY3Rvcnk+IGRlZmF1bHRfZmFjdG9yeV87CiAKICAgR1RFU1RfRElTQUxM
T1dfQ09QWV9BTkRfQVNTSUdOXyhUaHJlYWRMb2NhbCk7CiB9OwpAQCAtMjMxNSw3NyArMTg5MCwx
MiBAQCBjbGFzcyBHVEVTVF9BUElfIFRocmVhZExvY2FsIHsKIC8vIHdlIGNhbm5vdCBkZXRlY3Qg
aXQuCiBHVEVTVF9BUElfIHNpemVfdCBHZXRUaHJlYWRDb3VudCgpOwogCi0vLyBQYXNzaW5nIG5v
bi1QT0QgY2xhc3NlcyB0aHJvdWdoIGVsbGlwc2lzICguLi4pIGNyYXNoZXMgdGhlIEFSTQotLy8g
Y29tcGlsZXIgYW5kIGdlbmVyYXRlcyBhIHdhcm5pbmcgaW4gU3VuIFN0dWRpbyBiZWZvcmUgMTJ1
NC4gVGhlIE5va2lhIFN5bWJpYW4KLS8vIGFuZCB0aGUgSUJNIFhMIEMvQysrIGNvbXBpbGVyIHRy
eSB0byBpbnN0YW50aWF0ZSBhIGNvcHkgY29uc3RydWN0b3IKLS8vIGZvciBvYmplY3RzIHBhc3Nl
ZCB0aHJvdWdoIGVsbGlwc2lzICguLi4pLCBmYWlsaW5nIGZvciB1bmNvcHlhYmxlCi0vLyBvYmpl
Y3RzLiAgV2UgZGVmaW5lIHRoaXMgdG8gZW5zdXJlIHRoYXQgb25seSBQT0QgaXMgcGFzc2VkIHRo
cm91Z2gKLS8vIGVsbGlwc2lzIG9uIHRoZXNlIHN5c3RlbXMuCi0jaWYgZGVmaW5lZChfX1NZTUJJ
QU4zMl9fKSB8fCBkZWZpbmVkKF9fSUJNQ1BQX18pIHx8IFwKLSAgICAgKGRlZmluZWQoX19TVU5Q
Uk9fQ0MpICYmIF9fU1VOUFJPX0NDIDwgMHg1MTMwKQotLy8gV2UgbG9zZSBzdXBwb3J0IGZvciBO
VUxMIGRldGVjdGlvbiB3aGVyZSB0aGUgY29tcGlsZXIgZG9lc24ndCBsaWtlCi0vLyBwYXNzaW5n
IG5vbi1QT0QgY2xhc3NlcyB0aHJvdWdoIGVsbGlwc2lzICguLi4pLgotIyBkZWZpbmUgR1RFU1Rf
RUxMSVBTSVNfTkVFRFNfUE9EXyAxCi0jZWxzZQotIyBkZWZpbmUgR1RFU1RfQ0FOX0NPTVBBUkVf
TlVMTCAxCi0jZW5kaWYKLQotLy8gVGhlIE5va2lhIFN5bWJpYW4gYW5kIElCTSBYTCBDL0MrKyBj
b21waWxlcnMgY2Fubm90IGRlY2lkZSBiZXR3ZWVuCi0vLyBjb25zdCBUJiBhbmQgY29uc3QgVCog
aW4gYSBmdW5jdGlvbiB0ZW1wbGF0ZS4gIFRoZXNlIGNvbXBpbGVycwotLy8gX2Nhbl8gZGVjaWRl
IGJldHdlZW4gY2xhc3MgdGVtcGxhdGUgc3BlY2lhbGl6YXRpb25zIGZvciBUIGFuZCBUKiwKLS8v
IHNvIGEgdHIxOjp0eXBlX3RyYWl0cy1saWtlIGlzX3BvaW50ZXIgd29ya3MuCi0jaWYgZGVmaW5l
ZChfX1NZTUJJQU4zMl9fKSB8fCBkZWZpbmVkKF9fSUJNQ1BQX18pCi0jIGRlZmluZSBHVEVTVF9O
RUVEU19JU19QT0lOVEVSXyAxCi0jZW5kaWYKLQotdGVtcGxhdGUgPGJvb2wgYm9vbF92YWx1ZT4K
LXN0cnVjdCBib29sX2NvbnN0YW50IHsKLSAgdHlwZWRlZiBib29sX2NvbnN0YW50PGJvb2xfdmFs
dWU+IHR5cGU7Ci0gIHN0YXRpYyBjb25zdCBib29sIHZhbHVlID0gYm9vbF92YWx1ZTsKLX07Ci10
ZW1wbGF0ZSA8Ym9vbCBib29sX3ZhbHVlPiBjb25zdCBib29sIGJvb2xfY29uc3RhbnQ8Ym9vbF92
YWx1ZT46OnZhbHVlOwotCi10eXBlZGVmIGJvb2xfY29uc3RhbnQ8ZmFsc2U+IGZhbHNlX3R5cGU7
Ci10eXBlZGVmIGJvb2xfY29uc3RhbnQ8dHJ1ZT4gdHJ1ZV90eXBlOwotCi10ZW1wbGF0ZSA8dHlw
ZW5hbWUgVCwgdHlwZW5hbWUgVT4KLXN0cnVjdCBpc19zYW1lIDogcHVibGljIGZhbHNlX3R5cGUg
e307Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotc3RydWN0IGlzX3NhbWU8VCwgVD4gOiBwdWJs
aWMgdHJ1ZV90eXBlIHt9OwotCi0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotc3RydWN0IGlzX3Bv
aW50ZXIgOiBwdWJsaWMgZmFsc2VfdHlwZSB7fTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1z
dHJ1Y3QgaXNfcG9pbnRlcjxUKj4gOiBwdWJsaWMgdHJ1ZV90eXBlIHt9OwotCi10ZW1wbGF0ZSA8
dHlwZW5hbWUgSXRlcmF0b3I+Ci1zdHJ1Y3QgSXRlcmF0b3JUcmFpdHMgewotICB0eXBlZGVmIHR5
cGVuYW1lIEl0ZXJhdG9yOjp2YWx1ZV90eXBlIHZhbHVlX3R5cGU7Ci19OwotCi0KLXRlbXBsYXRl
IDx0eXBlbmFtZSBUPgotc3RydWN0IEl0ZXJhdG9yVHJhaXRzPFQqPiB7Ci0gIHR5cGVkZWYgVCB2
YWx1ZV90eXBlOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1zdHJ1Y3QgSXRlcmF0b3JU
cmFpdHM8Y29uc3QgVCo+IHsKLSAgdHlwZWRlZiBUIHZhbHVlX3R5cGU7Ci19OwotCiAjaWYgR1RF
U1RfT1NfV0lORE9XUwogIyBkZWZpbmUgR1RFU1RfUEFUSF9TRVBfICJcXCIKICMgZGVmaW5lIEdU
RVNUX0hBU19BTFRfUEFUSF9TRVBfIDEKLS8vIFRoZSBiaWdnZXN0IHNpZ25lZCBpbnRlZ2VyIHR5
cGUgdGhlIGNvbXBpbGVyIHN1cHBvcnRzLgotdHlwZWRlZiBfX2ludDY0IEJpZ2dlc3RJbnQ7CiAj
ZWxzZQogIyBkZWZpbmUgR1RFU1RfUEFUSF9TRVBfICIvIgogIyBkZWZpbmUgR1RFU1RfSEFTX0FM
VF9QQVRIX1NFUF8gMAotdHlwZWRlZiBsb25nIGxvbmcgQmlnZ2VzdEludDsgIC8vIE5PTElOVAog
I2VuZGlmICAvLyBHVEVTVF9PU19XSU5ET1dTCiAKIC8vIFV0aWxpdGllcyBmb3IgY2hhci4KQEAg
LTI0ODAsNiArMTk5MCwyMiBAQCBpbmxpbmUgYm9vbCBJc0Rpcihjb25zdCBTdGF0U3RydWN0JiBz
dCkgewogfQogIyBlbmRpZiAgLy8gR1RFU1RfT1NfV0lORE9XU19NT0JJTEUKIAorI2VsaWYgR1RF
U1RfT1NfRVNQODI2NgordHlwZWRlZiBzdHJ1Y3Qgc3RhdCBTdGF0U3RydWN0OworCitpbmxpbmUg
aW50IEZpbGVObyhGSUxFKiBmaWxlKSB7IHJldHVybiBmaWxlbm8oZmlsZSk7IH0KK2lubGluZSBp
bnQgSXNBVFRZKGludCBmZCkgeyByZXR1cm4gaXNhdHR5KGZkKTsgfQoraW5saW5lIGludCBTdGF0
KGNvbnN0IGNoYXIqIHBhdGgsIFN0YXRTdHJ1Y3QqIGJ1ZikgeworICAvLyBzdGF0IGZ1bmN0aW9u
IG5vdCBpbXBsZW1lbnRlZCBvbiBFU1A4MjY2CisgIHJldHVybiAwOworfQoraW5saW5lIGludCBT
dHJDYXNlQ21wKGNvbnN0IGNoYXIqIHMxLCBjb25zdCBjaGFyKiBzMikgeworICByZXR1cm4gc3Ry
Y2FzZWNtcChzMSwgczIpOworfQoraW5saW5lIGNoYXIqIFN0ckR1cChjb25zdCBjaGFyKiBzcmMp
IHsgcmV0dXJuIHN0cmR1cChzcmMpOyB9CitpbmxpbmUgaW50IFJtRGlyKGNvbnN0IGNoYXIqIGRp
cikgeyByZXR1cm4gcm1kaXIoZGlyKTsgfQoraW5saW5lIGJvb2wgSXNEaXIoY29uc3QgU3RhdFN0
cnVjdCYgc3QpIHsgcmV0dXJuIFNfSVNESVIoc3Quc3RfbW9kZSk7IH0KKwogI2Vsc2UKIAogdHlw
ZWRlZiBzdHJ1Y3Qgc3RhdCBTdGF0U3RydWN0OwpAQCAtMjUwMCwxMCArMjAyNiw2IEBAIGlubGlu
ZSBib29sIElzRGlyKGNvbnN0IFN0YXRTdHJ1Y3QmIHN0KSB7IHJldHVybiBTX0lTRElSKHN0LnN0
X21vZGUpOyB9CiAKIEdURVNUX0RJU0FCTEVfTVNDX0RFUFJFQ0FURURfUFVTSF8oKQogCi1pbmxp
bmUgY29uc3QgY2hhciogU3RyTkNweShjaGFyKiBkZXN0LCBjb25zdCBjaGFyKiBzcmMsIHNpemVf
dCBuKSB7Ci0gIHJldHVybiBzdHJuY3B5KGRlc3QsIHNyYywgbik7Ci19Ci0KIC8vIENoRGlyKCks
IEZSZW9wZW4oKSwgRkRPcGVuKCksIFJlYWQoKSwgV3JpdGUoKSwgQ2xvc2UoKSwgYW5kCiAvLyBT
dHJFcnJvcigpIGFyZW4ndCBuZWVkZWQgb24gV2luZG93cyBDRSBhdCB0aGlzIHRpbWUgYW5kIHRo
dXMgbm90CiAvLyBkZWZpbmVkIHRoZXJlLgpAQCAtMjUzMiwxNSArMjA1NCwxNiBAQCBpbmxpbmUg
aW50IENsb3NlKGludCBmZCkgeyByZXR1cm4gY2xvc2UoZmQpOyB9CiBpbmxpbmUgY29uc3QgY2hh
ciogU3RyRXJyb3IoaW50IGVycm51bSkgeyByZXR1cm4gc3RyZXJyb3IoZXJybnVtKTsgfQogI2Vu
ZGlmCiBpbmxpbmUgY29uc3QgY2hhciogR2V0RW52KGNvbnN0IGNoYXIqIG5hbWUpIHsKLSNpZiBH
VEVTVF9PU19XSU5ET1dTX01PQklMRSB8fCBHVEVTVF9PU19XSU5ET1dTX1BIT05FIHx8IEdURVNU
X09TX1dJTkRPV1NfUlQKLSAgLy8gV2UgYXJlIG9uIFdpbmRvd3MgQ0UsIHdoaWNoIGhhcyBubyBl
bnZpcm9ubWVudCB2YXJpYWJsZXMuCisjaWYgR1RFU1RfT1NfV0lORE9XU19NT0JJTEUgfHwgR1RF
U1RfT1NfV0lORE9XU19QSE9ORSB8fCBcCisgICAgR1RFU1RfT1NfV0lORE9XU19SVCB8fCBHVEVT
VF9PU19FU1A4MjY2CisgIC8vIFdlIGFyZSBvbiBhbiBlbWJlZGRlZCBwbGF0Zm9ybSwgd2hpY2gg
aGFzIG5vIGVudmlyb25tZW50IHZhcmlhYmxlcy4KICAgc3RhdGljX2Nhc3Q8dm9pZD4obmFtZSk7
ICAvLyBUbyBwcmV2ZW50ICd1bnVzZWQgYXJndW1lbnQnIHdhcm5pbmcuCi0gIHJldHVybiBOVUxM
OworICByZXR1cm4gbnVsbHB0cjsKICNlbGlmIGRlZmluZWQoX19CT1JMQU5EQ19fKSB8fCBkZWZp
bmVkKF9fU3VuT1NfNV84KSB8fCBkZWZpbmVkKF9fU3VuT1NfNV85KQogICAvLyBFbnZpcm9ubWVu
dCB2YXJpYWJsZXMgd2hpY2ggd2UgcHJvZ3JhbW1hdGljYWxseSBjbGVhciB3aWxsIGJlIHNldCB0
byB0aGUKICAgLy8gZW1wdHkgc3RyaW5nIHJhdGhlciB0aGFuIHVuc2V0IChOVUxMKS4gIEhhbmRs
ZSB0aGF0IGNhc2UuCiAgIGNvbnN0IGNoYXIqIGNvbnN0IGVudiA9IGdldGVudihuYW1lKTsKLSAg
cmV0dXJuIChlbnYgIT0gTlVMTCAmJiBlbnZbMF0gIT0gJ1wwJykgPyBlbnYgOiBOVUxMOworICBy
ZXR1cm4gKGVudiAhPSBudWxscHRyICYmIGVudlswXSAhPSAnXDAnKSA/IGVudiA6IG51bGxwdHI7
CiAjZWxzZQogICByZXR1cm4gZ2V0ZW52KG5hbWUpOwogI2VuZGlmCkBAIC0yNTUyLDkgKzIwNzUs
OSBAQCBHVEVTVF9ESVNBQkxFX01TQ19ERVBSRUNBVEVEX1BPUF8oKQogLy8gV2luZG93cyBDRSBo
YXMgbm8gQyBsaWJyYXJ5LiBUaGUgYWJvcnQoKSBmdW5jdGlvbiBpcyB1c2VkIGluCiAvLyBzZXZl
cmFsIHBsYWNlcyBpbiBHb29nbGUgVGVzdC4gVGhpcyBpbXBsZW1lbnRhdGlvbiBwcm92aWRlcyBh
IHJlYXNvbmFibGUKIC8vIGltaXRhdGlvbiBvZiBzdGFuZGFyZCBiZWhhdmlvdXIuCi12b2lkIEFi
b3J0KCk7CitbW25vcmV0dXJuXV0gdm9pZCBBYm9ydCgpOwogI2Vsc2UKLWlubGluZSB2b2lkIEFi
b3J0KCkgeyBhYm9ydCgpOyB9CitbW25vcmV0dXJuXV0gaW5saW5lIHZvaWQgQWJvcnQoKSB7IGFi
b3J0KCk7IH0KICNlbmRpZiAgLy8gR1RFU1RfT1NfV0lORE9XU19NT0JJTEUKIAogfSAgLy8gbmFt
ZXNwYWNlIHBvc2l4CkBAIC0yNTY0LDI3ICsyMDg3LDI0IEBAIGlubGluZSB2b2lkIEFib3J0KCkg
eyBhYm9ydCgpOyB9CiAvLyBNU1ZDLWJhc2VkIHBsYXRmb3Jtcy4gIFdlIG1hcCB0aGUgR1RFU1Rf
U05QUklOVEZfIG1hY3JvIHRvIHRoZSBhcHByb3ByaWF0ZQogLy8gZnVuY3Rpb24gaW4gb3JkZXIg
dG8gYWNoaWV2ZSB0aGF0LiAgV2UgdXNlIG1hY3JvIGRlZmluaXRpb24gaGVyZSBiZWNhdXNlCiAv
LyBzbnByaW50ZiBpcyBhIHZhcmlhZGljIGZ1bmN0aW9uLgotI2lmIF9NU0NfVkVSID49IDE0MDAg
JiYgIUdURVNUX09TX1dJTkRPV1NfTU9CSUxFCisjaWYgX01TQ19WRVIgJiYgIUdURVNUX09TX1dJ
TkRPV1NfTU9CSUxFCiAvLyBNU1ZDIDIwMDUgYW5kIGFib3ZlIHN1cHBvcnQgdmFyaWFkaWMgbWFj
cm9zLgogIyBkZWZpbmUgR1RFU1RfU05QUklOVEZfKGJ1ZmZlciwgc2l6ZSwgZm9ybWF0LCAuLi4p
IFwKICAgICAgX3NucHJpbnRmX3MoYnVmZmVyLCBzaXplLCBzaXplLCBmb3JtYXQsIF9fVkFfQVJH
U19fKQogI2VsaWYgZGVmaW5lZChfTVNDX1ZFUikKLS8vIFdpbmRvd3MgQ0UgZG9lcyBub3QgZGVm
aW5lIF9zbnByaW50Zl9zIGFuZCBNU1ZDIHByaW9yIHRvIDIwMDUgZG9lc24ndAotLy8gY29tcGxh
aW4gYWJvdXQgX3NucHJpbnRmLgorLy8gV2luZG93cyBDRSBkb2VzIG5vdCBkZWZpbmUgX3NucHJp
bnRmX3MKICMgZGVmaW5lIEdURVNUX1NOUFJJTlRGXyBfc25wcmludGYKICNlbHNlCiAjIGRlZmlu
ZSBHVEVTVF9TTlBSSU5URl8gc25wcmludGYKICNlbmRpZgogCi0vLyBUaGUgbWF4aW11bSBudW1i
ZXIgYSBCaWdnZXN0SW50IGNhbiByZXByZXNlbnQuICBUaGlzIGRlZmluaXRpb24KLS8vIHdvcmtz
IG5vIG1hdHRlciBCaWdnZXN0SW50IGlzIHJlcHJlc2VudGVkIGluIG9uZSdzIGNvbXBsZW1lbnQg
b3IKLS8vIHR3bydzIGNvbXBsZW1lbnQuCisvLyBUaGUgYmlnZ2VzdCBzaWduZWQgaW50ZWdlciB0
eXBlIHRoZSBjb21waWxlciBzdXBwb3J0cy4KIC8vCi0vLyBXZSBjYW5ub3QgcmVseSBvbiBudW1l
cmljX2xpbWl0cyBpbiBTVEwsIGFzIF9faW50NjQgYW5kIGxvbmcgbG9uZwotLy8gYXJlIG5vdCBw
YXJ0IG9mIHN0YW5kYXJkIEMrKyBhbmQgbnVtZXJpY19saW1pdHMgZG9lc24ndCBuZWVkIHRvIGJl
Ci0vLyBkZWZpbmVkIGZvciB0aGVtLgotY29uc3QgQmlnZ2VzdEludCBrTWF4QmlnZ2VzdEludCA9
Ci0gICAgfihzdGF0aWNfY2FzdDxCaWdnZXN0SW50PigxKSA8PCAoOCpzaXplb2YoQmlnZ2VzdElu
dCkgLSAxKSk7CisvLyBsb25nIGxvbmcgaXMgZ3VhcmFudGVlZCB0byBiZSBhdCBsZWFzdCA2NC1i
aXRzIGluIEMrKzExLgordXNpbmcgQmlnZ2VzdEludCA9IGxvbmcgbG9uZzsgIC8vIE5PTElOVAor
CisvLyBUaGUgbWF4aW11bSBudW1iZXIgYSBCaWdnZXN0SW50IGNhbiByZXByZXNlbnQuCitjb25z
dGV4cHIgQmlnZ2VzdEludCBrTWF4QmlnZ2VzdEludCA9IChzdGQ6Om51bWVyaWNfbGltaXRzPEJp
Z2dlc3RJbnQ+OjptYXgpKCk7CiAKIC8vIFRoaXMgdGVtcGxhdGUgY2xhc3Mgc2VydmVzIGFzIGEg
Y29tcGlsZS10aW1lIGZ1bmN0aW9uIGZyb20gc2l6ZSB0bwogLy8gdHlwZS4gIEl0IG1hcHMgYSBz
aXplIGluIGJ5dGVzIHRvIGEgcHJpbWl0aXZlIHR5cGUgd2l0aCB0aGF0CkBAIC0yNjA5LDQwICsy
MTI5LDI3IEBAIGNsYXNzIFR5cGVXaXRoU2l6ZSB7CiAgcHVibGljOgogICAvLyBUaGlzIHByZXZl
bnRzIHRoZSB1c2VyIGZyb20gdXNpbmcgVHlwZVdpdGhTaXplPE4+IHdpdGggaW5jb3JyZWN0CiAg
IC8vIHZhbHVlcyBvZiBOLgotICB0eXBlZGVmIHZvaWQgVUludDsKKyAgdXNpbmcgVUludCA9IHZv
aWQ7CiB9OwogCiAvLyBUaGUgc3BlY2lhbGl6YXRpb24gZm9yIHNpemUgNC4KIHRlbXBsYXRlIDw+
CiBjbGFzcyBUeXBlV2l0aFNpemU8ND4gewogIHB1YmxpYzoKLSAgLy8gdW5zaWduZWQgaW50IGhh
cyBzaXplIDQgaW4gYm90aCBnY2MgYW5kIE1TVkMuCi0gIC8vCi0gIC8vIEFzIGJhc2UvYmFzaWN0
eXBlcy5oIGRvZXNuJ3QgY29tcGlsZSBvbiBXaW5kb3dzLCB3ZSBjYW5ub3QgdXNlCi0gIC8vIHVp
bnQzMiwgdWludDY0LCBhbmQgZXRjIGhlcmUuCi0gIHR5cGVkZWYgaW50IEludDsKLSAgdHlwZWRl
ZiB1bnNpZ25lZCBpbnQgVUludDsKKyAgdXNpbmcgSW50ID0gc3RkOjppbnQzMl90OworICB1c2lu
ZyBVSW50ID0gc3RkOjp1aW50MzJfdDsKIH07CiAKIC8vIFRoZSBzcGVjaWFsaXphdGlvbiBmb3Ig
c2l6ZSA4LgogdGVtcGxhdGUgPD4KIGNsYXNzIFR5cGVXaXRoU2l6ZTw4PiB7CiAgcHVibGljOgot
I2lmIEdURVNUX09TX1dJTkRPV1MKLSAgdHlwZWRlZiBfX2ludDY0IEludDsKLSAgdHlwZWRlZiB1
bnNpZ25lZCBfX2ludDY0IFVJbnQ7Ci0jZWxzZQotICB0eXBlZGVmIGxvbmcgbG9uZyBJbnQ7ICAv
LyBOT0xJTlQKLSAgdHlwZWRlZiB1bnNpZ25lZCBsb25nIGxvbmcgVUludDsgIC8vIE5PTElOVAot
I2VuZGlmICAvLyBHVEVTVF9PU19XSU5ET1dTCisgIHVzaW5nIEludCA9IHN0ZDo6aW50NjRfdDsK
KyAgdXNpbmcgVUludCA9IHN0ZDo6dWludDY0X3Q7CiB9OwogCiAvLyBJbnRlZ2VyIHR5cGVzIG9m
IGtub3duIHNpemVzLgotdHlwZWRlZiBUeXBlV2l0aFNpemU8ND46OkludCBJbnQzMjsKLXR5cGVk
ZWYgVHlwZVdpdGhTaXplPDQ+OjpVSW50IFVJbnQzMjsKLXR5cGVkZWYgVHlwZVdpdGhTaXplPDg+
OjpJbnQgSW50NjQ7Ci10eXBlZGVmIFR5cGVXaXRoU2l6ZTw4Pjo6VUludCBVSW50NjQ7Ci10eXBl
ZGVmIFR5cGVXaXRoU2l6ZTw4Pjo6SW50IFRpbWVJbk1pbGxpczsgIC8vIFJlcHJlc2VudHMgdGlt
ZSBpbiBtaWxsaXNlY29uZHMuCit1c2luZyBUaW1lSW5NaWxsaXMgPSBpbnQ2NF90OyAgLy8gUmVw
cmVzZW50cyB0aW1lIGluIG1pbGxpc2Vjb25kcy4KIAogLy8gVXRpbGl0aWVzIGZvciBjb21tYW5k
IGxpbmUgZmxhZ3MgYW5kIGVudmlyb25tZW50IHZhcmlhYmxlcy4KIApAQCAtMjY2MSw3ICsyMTY4
LDcgQEAgdHlwZWRlZiBUeXBlV2l0aFNpemU8OD46OkludCBUaW1lSW5NaWxsaXM7ICAvLyBSZXBy
ZXNlbnRzIHRpbWUgaW4gbWlsbGlzZWNvbmRzLgogLy8gTWFjcm9zIGZvciBkZWNsYXJpbmcgZmxh
Z3MuCiAjIGRlZmluZSBHVEVTVF9ERUNMQVJFX2Jvb2xfKG5hbWUpIEdURVNUX0FQSV8gZXh0ZXJu
IGJvb2wgR1RFU1RfRkxBRyhuYW1lKQogIyBkZWZpbmUgR1RFU1RfREVDTEFSRV9pbnQzMl8obmFt
ZSkgXAotICAgIEdURVNUX0FQSV8gZXh0ZXJuIDo6dGVzdGluZzo6aW50ZXJuYWw6OkludDMyIEdU
RVNUX0ZMQUcobmFtZSkKKyAgICBHVEVTVF9BUElfIGV4dGVybiBzdGQ6OmludDMyX3QgR1RFU1Rf
RkxBRyhuYW1lKQogIyBkZWZpbmUgR1RFU1RfREVDTEFSRV9zdHJpbmdfKG5hbWUpIFwKICAgICBH
VEVTVF9BUElfIGV4dGVybiA6OnN0ZDo6c3RyaW5nIEdURVNUX0ZMQUcobmFtZSkKIApAQCAtMjY2
OSw3ICsyMTc2LDcgQEAgdHlwZWRlZiBUeXBlV2l0aFNpemU8OD46OkludCBUaW1lSW5NaWxsaXM7
ICAvLyBSZXByZXNlbnRzIHRpbWUgaW4gbWlsbGlzZWNvbmRzLgogIyBkZWZpbmUgR1RFU1RfREVG
SU5FX2Jvb2xfKG5hbWUsIGRlZmF1bHRfdmFsLCBkb2MpIFwKICAgICBHVEVTVF9BUElfIGJvb2wg
R1RFU1RfRkxBRyhuYW1lKSA9IChkZWZhdWx0X3ZhbCkKICMgZGVmaW5lIEdURVNUX0RFRklORV9p
bnQzMl8obmFtZSwgZGVmYXVsdF92YWwsIGRvYykgXAotICAgIEdURVNUX0FQSV8gOjp0ZXN0aW5n
OjppbnRlcm5hbDo6SW50MzIgR1RFU1RfRkxBRyhuYW1lKSA9IChkZWZhdWx0X3ZhbCkKKyAgICBH
VEVTVF9BUElfIHN0ZDo6aW50MzJfdCBHVEVTVF9GTEFHKG5hbWUpID0gKGRlZmF1bHRfdmFsKQog
IyBkZWZpbmUgR1RFU1RfREVGSU5FX3N0cmluZ18obmFtZSwgZGVmYXVsdF92YWwsIGRvYykgXAog
ICAgIEdURVNUX0FQSV8gOjpzdGQ6OnN0cmluZyBHVEVTVF9GTEFHKG5hbWUpID0gKGRlZmF1bHRf
dmFsKQogCkBAIC0yNjg0LDE5ICsyMTkxLDY0IEBAIHR5cGVkZWYgVHlwZVdpdGhTaXplPDg+OjpJ
bnQgVGltZUluTWlsbGlzOyAgLy8gUmVwcmVzZW50cyB0aW1lIGluIG1pbGxpc2Vjb25kcy4KIC8v
IFBhcnNlcyAnc3RyJyBmb3IgYSAzMi1iaXQgc2lnbmVkIGludGVnZXIuICBJZiBzdWNjZXNzZnVs
LCB3cml0ZXMgdGhlIHJlc3VsdAogLy8gdG8gKnZhbHVlIGFuZCByZXR1cm5zIHRydWU7IG90aGVy
d2lzZSBsZWF2ZXMgKnZhbHVlIHVuY2hhbmdlZCBhbmQgcmV0dXJucwogLy8gZmFsc2UuCi0vLyBG
SVhNRTogRmluZCBhIGJldHRlciB3YXkgdG8gcmVmYWN0b3IgZmxhZyBhbmQgZW52aXJvbm1lbnQg
cGFyc2luZwotLy8gb3V0IG9mIGJvdGggZ3Rlc3QtcG9ydC5jYyBhbmQgZ3Rlc3QuY2MgdG8gYXZv
aWQgZXhwb3J0aW5nIHRoaXMgdXRpbGl0eQotLy8gZnVuY3Rpb24uCi1ib29sIFBhcnNlSW50MzIo
Y29uc3QgTWVzc2FnZSYgc3JjX3RleHQsIGNvbnN0IGNoYXIqIHN0ciwgSW50MzIqIHZhbHVlKTsK
K2Jvb2wgUGFyc2VJbnQzMihjb25zdCBNZXNzYWdlJiBzcmNfdGV4dCwgY29uc3QgY2hhciogc3Ry
LCBpbnQzMl90KiB2YWx1ZSk7CiAKLS8vIFBhcnNlcyBhIGJvb2wvSW50MzIvc3RyaW5nIGZyb20g
dGhlIGVudmlyb25tZW50IHZhcmlhYmxlCisvLyBQYXJzZXMgYSBib29sL2ludDMyX3Qvc3RyaW5n
IGZyb20gdGhlIGVudmlyb25tZW50IHZhcmlhYmxlCiAvLyBjb3JyZXNwb25kaW5nIHRvIHRoZSBn
aXZlbiBHb29nbGUgVGVzdCBmbGFnLgogYm9vbCBCb29sRnJvbUdUZXN0RW52KGNvbnN0IGNoYXIq
IGZsYWcsIGJvb2wgZGVmYXVsdF92YWwpOwotR1RFU1RfQVBJXyBJbnQzMiBJbnQzMkZyb21HVGVz
dEVudihjb25zdCBjaGFyKiBmbGFnLCBJbnQzMiBkZWZhdWx0X3ZhbCk7CitHVEVTVF9BUElfIGlu
dDMyX3QgSW50MzJGcm9tR1Rlc3RFbnYoY29uc3QgY2hhciogZmxhZywgaW50MzJfdCBkZWZhdWx0
X3ZhbCk7CiBzdGQ6OnN0cmluZyBPdXRwdXRGbGFnQWxzb0NoZWNrRW52VmFyKCk7CiBjb25zdCBj
aGFyKiBTdHJpbmdGcm9tR1Rlc3RFbnYoY29uc3QgY2hhciogZmxhZywgY29uc3QgY2hhciogZGVm
YXVsdF92YWwpOwogCiB9ICAvLyBuYW1lc3BhY2UgaW50ZXJuYWwKIH0gIC8vIG5hbWVzcGFjZSB0
ZXN0aW5nCiAKKyNpZiAhZGVmaW5lZChHVEVTVF9JTlRFUk5BTF9ERVBSRUNBVEVEKQorCisvLyBJ
bnRlcm5hbCBNYWNybyB0byBtYXJrIGFuIEFQSSBkZXByZWNhdGVkLCBmb3IgZ29vZ2xldGVzdCB1
c2FnZSBvbmx5CisvLyBVc2FnZTogY2xhc3MgR1RFU1RfSU5URVJOQUxfREVQUkVDQVRFRChtZXNz
YWdlKSBNeUNsYXNzIG9yCisvLyBHVEVTVF9JTlRFUk5BTF9ERVBSRUNBVEVEKG1lc3NhZ2UpIDxy
ZXR1cm5fdHlwZT4gbXlGdW5jdGlvbigpOyBFdmVyeSB1c2FnZSBvZgorLy8gYSBkZXByZWNhdGVk
IGVudGl0eSB3aWxsIHRyaWdnZXIgYSB3YXJuaW5nIHdoZW4gY29tcGlsZWQgd2l0aAorLy8gYC1X
ZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNgIG9wdGlvbiAoY2xhbmcsIGdjYywgYW55IF9fR05VQ19f
IGNvbXBpbGVyKS4KKy8vIEZvciBtc3ZjIC9XMyBvcHRpb24gd2lsbCBuZWVkIHRvIGJlIHVzZWQK
Ky8vIE5vdGUgdGhhdCBmb3IgJ290aGVyJyBjb21waWxlcnMgdGhpcyBtYWNybyBldmFsdWF0ZXMg
dG8gbm90aGluZyB0byBwcmV2ZW50CisvLyBjb21waWxhdGlvbnMgZXJyb3JzLgorI2lmIGRlZmlu
ZWQoX01TQ19WRVIpCisjZGVmaW5lIEdURVNUX0lOVEVSTkFMX0RFUFJFQ0FURUQobWVzc2FnZSkg
X19kZWNsc3BlYyhkZXByZWNhdGVkKG1lc3NhZ2UpKQorI2VsaWYgZGVmaW5lZChfX0dOVUNfXykK
KyNkZWZpbmUgR1RFU1RfSU5URVJOQUxfREVQUkVDQVRFRChtZXNzYWdlKSBfX2F0dHJpYnV0ZV9f
KChkZXByZWNhdGVkKG1lc3NhZ2UpKSkKKyNlbHNlCisjZGVmaW5lIEdURVNUX0lOVEVSTkFMX0RF
UFJFQ0FURUQobWVzc2FnZSkKKyNlbmRpZgorCisjZW5kaWYgIC8vICFkZWZpbmVkKEdURVNUX0lO
VEVSTkFMX0RFUFJFQ0FURUQpCisKKyNpZiBHVEVTVF9IQVNfQUJTTAorLy8gQWx3YXlzIHVzZSBh
YnNsOjpzdHJpbmdfdmlldyBmb3IgTWF0Y2hlcjw+IHNwZWNpYWxpemF0aW9ucyBpZiBnb29nbGV0
ZXN0CisvLyBpcyBidWlsdCB3aXRoIGFic2wgc3VwcG9ydC4KKyMgZGVmaW5lIEdURVNUX0lOVEVS
TkFMX0hBU19TVFJJTkdfVklFVyAxCisjaW5jbHVkZSAiYWJzbC9zdHJpbmdzL3N0cmluZ192aWV3
LmgiCituYW1lc3BhY2UgdGVzdGluZyB7CituYW1lc3BhY2UgaW50ZXJuYWwgewordXNpbmcgU3Ry
aW5nVmlldyA9IDo6YWJzbDo6c3RyaW5nX3ZpZXc7Cit9ICAvLyBuYW1lc3BhY2UgaW50ZXJuYWwK
K30gIC8vIG5hbWVzcGFjZSB0ZXN0aW5nCisjZWxzZQorIyBpZmRlZiBfX2hhc19pbmNsdWRlCisj
ICAgaWYgX19oYXNfaW5jbHVkZSg8c3RyaW5nX3ZpZXc+KSAmJiBfX2NwbHVzcGx1cyA+PSAyMDE3
MDNMCisvLyBPdGhlcndpc2UgZm9yIEMrKzE3IGFuZCBoaWdoZXIgdXNlIHN0ZDo6c3RyaW5nX3Zp
ZXcgZm9yIE1hdGNoZXI8PgorLy8gc3BlY2lhbGl6YXRpb25zLgorIyAgIGRlZmluZSBHVEVTVF9J
TlRFUk5BTF9IQVNfU1RSSU5HX1ZJRVcgMQorI2luY2x1ZGUgPHN0cmluZ192aWV3PgorbmFtZXNw
YWNlIHRlc3RpbmcgeworbmFtZXNwYWNlIGludGVybmFsIHsKK3VzaW5nIFN0cmluZ1ZpZXcgPSA6
OnN0ZDo6c3RyaW5nX3ZpZXc7Cit9ICAvLyBuYW1lc3BhY2UgaW50ZXJuYWwKK30gIC8vIG5hbWVz
cGFjZSB0ZXN0aW5nCisvLyBUaGUgY2FzZSB3aGVyZSBhYnNsIGlzIGNvbmZpZ3VyZWQgTk9UIHRv
IGFsaWFzIHN0ZDo6c3RyaW5nX3ZpZXcgaXMgbm90CisvLyBzdXBwb3J0ZWQuCisjICBlbmRpZiAg
Ly8gX19oYXNfaW5jbHVkZSg8c3RyaW5nX3ZpZXc+KSAmJiBfX2NwbHVzcGx1cyA+PSAyMDE3MDNM
CisjIGVuZGlmICAvLyBfX2hhc19pbmNsdWRlCisjZW5kaWYgIC8vIEdURVNUX0hBU19BQlNMCisK
ICNlbmRpZiAgLy8gR1RFU1RfSU5DTFVERV9HVEVTVF9JTlRFUk5BTF9HVEVTVF9QT1JUX0hfCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUv
Z3Rlc3QvaW50ZXJuYWwvZ3Rlc3Qtc3RyaW5nLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dv
b2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3Qtc3RyaW5nLmgKaW5kZXgg
NGM5YjYyNjJjM2MxMDM3MjZhYTNjYWI0YzE5OTk1YmFlZjk1OGI5OC4uMGIyYTkxYTVkY2UxZTIx
YzQ2MGZiOTUwY2UxN2UxZjYxMTIwNDJlNiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9w
YXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LXN0cmluZy5o
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVz
dC9pbnRlcm5hbC9ndGVzdC1zdHJpbmcuaApAQCAtNDcsNiArNDcsNyBAQAogI2VuZGlmCiAKICNp
bmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxjc3RkaW50PgogI2luY2x1ZGUgPHN0cmluZz4K
IAogI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQuaCIKQEAgLTk0LDcgKzk1LDgg
QEAgY2xhc3MgR1RFU1RfQVBJXyBTdHJpbmcgewogICBzdGF0aWMgY29uc3QgY2hhciogVXRmMTZU
b0Fuc2koTFBDV1NUUiB1dGYxNl9zdHIpOwogI2VuZGlmCiAKLSAgLy8gQ29tcGFyZXMgdHdvIEMg
c3RyaW5ncy4gIFJldHVybnMgdHJ1ZSBpZmYgdGhleSBoYXZlIHRoZSBzYW1lIGNvbnRlbnQuCisg
IC8vIENvbXBhcmVzIHR3byBDIHN0cmluZ3MuICBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYg
dGhleSBoYXZlIHRoZSBzYW1lCisgIC8vIGNvbnRlbnQuCiAgIC8vCiAgIC8vIFVubGlrZSBzdHJj
bXAoKSwgdGhpcyBmdW5jdGlvbiBjYW4gaGFuZGxlIE5VTEwgYXJndW1lbnQocykuICBBCiAgIC8v
IE5VTEwgQyBzdHJpbmcgaXMgY29uc2lkZXJlZCBkaWZmZXJlbnQgdG8gYW55IG5vbi1OVUxMIEMg
c3RyaW5nLApAQCAtMTA3LDE2ICsxMDksMTYgQEAgY2xhc3MgR1RFU1RfQVBJXyBTdHJpbmcgewog
ICAvLyByZXR1cm5lZC4KICAgc3RhdGljIHN0ZDo6c3RyaW5nIFNob3dXaWRlQ1N0cmluZyhjb25z
dCB3Y2hhcl90KiB3aWRlX2Nfc3RyKTsKIAotICAvLyBDb21wYXJlcyB0d28gd2lkZSBDIHN0cmlu
Z3MuICBSZXR1cm5zIHRydWUgaWZmIHRoZXkgaGF2ZSB0aGUgc2FtZQotICAvLyBjb250ZW50Lgor
ICAvLyBDb21wYXJlcyB0d28gd2lkZSBDIHN0cmluZ3MuICBSZXR1cm5zIHRydWUgaWYgYW5kIG9u
bHkgaWYgdGhleSBoYXZlIHRoZQorICAvLyBzYW1lIGNvbnRlbnQuCiAgIC8vCiAgIC8vIFVubGlr
ZSB3Y3NjbXAoKSwgdGhpcyBmdW5jdGlvbiBjYW4gaGFuZGxlIE5VTEwgYXJndW1lbnQocykuICBB
CiAgIC8vIE5VTEwgQyBzdHJpbmcgaXMgY29uc2lkZXJlZCBkaWZmZXJlbnQgdG8gYW55IG5vbi1O
VUxMIEMgc3RyaW5nLAogICAvLyBpbmNsdWRpbmcgdGhlIGVtcHR5IHN0cmluZy4KICAgc3RhdGlj
IGJvb2wgV2lkZUNTdHJpbmdFcXVhbHMoY29uc3Qgd2NoYXJfdCogbGhzLCBjb25zdCB3Y2hhcl90
KiByaHMpOwogCi0gIC8vIENvbXBhcmVzIHR3byBDIHN0cmluZ3MsIGlnbm9yaW5nIGNhc2UuICBS
ZXR1cm5zIHRydWUgaWZmIHRoZXkKLSAgLy8gaGF2ZSB0aGUgc2FtZSBjb250ZW50LgorICAvLyBD
b21wYXJlcyB0d28gQyBzdHJpbmdzLCBpZ25vcmluZyBjYXNlLiAgUmV0dXJucyB0cnVlIGlmIGFu
ZCBvbmx5IGlmCisgIC8vIHRoZXkgaGF2ZSB0aGUgc2FtZSBjb250ZW50LgogICAvLwogICAvLyBV
bmxpa2Ugc3RyY2FzZWNtcCgpLCB0aGlzIGZ1bmN0aW9uIGNhbiBoYW5kbGUgTlVMTCBhcmd1bWVu
dChzKS4KICAgLy8gQSBOVUxMIEMgc3RyaW5nIGlzIGNvbnNpZGVyZWQgZGlmZmVyZW50IHRvIGFu
eSBub24tTlVMTCBDIHN0cmluZywKQEAgLTEyNCw4ICsxMjYsOCBAQCBjbGFzcyBHVEVTVF9BUElf
IFN0cmluZyB7CiAgIHN0YXRpYyBib29sIENhc2VJbnNlbnNpdGl2ZUNTdHJpbmdFcXVhbHMoY29u
c3QgY2hhciogbGhzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnN0IGNoYXIqIHJocyk7CiAKLSAgLy8gQ29tcGFyZXMgdHdvIHdpZGUgQyBzdHJpbmdzLCBp
Z25vcmluZyBjYXNlLiAgUmV0dXJucyB0cnVlIGlmZiB0aGV5Ci0gIC8vIGhhdmUgdGhlIHNhbWUg
Y29udGVudC4KKyAgLy8gQ29tcGFyZXMgdHdvIHdpZGUgQyBzdHJpbmdzLCBpZ25vcmluZyBjYXNl
LiAgUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmCisgIC8vIHRoZXkgaGF2ZSB0aGUgc2FtZSBj
b250ZW50LgogICAvLwogICAvLyBVbmxpa2Ugd2NzY2FzZWNtcCgpLCB0aGlzIGZ1bmN0aW9uIGNh
biBoYW5kbGUgTlVMTCBhcmd1bWVudChzKS4KICAgLy8gQSBOVUxMIEMgc3RyaW5nIGlzIGNvbnNp
ZGVyZWQgZGlmZmVyZW50IHRvIGFueSBub24tTlVMTCB3aWRlIEMgc3RyaW5nLApAQCAtMTM5LDgg
KzE0MSw4IEBAIGNsYXNzIEdURVNUX0FQSV8gU3RyaW5nIHsKICAgc3RhdGljIGJvb2wgQ2FzZUlu
c2Vuc2l0aXZlV2lkZUNTdHJpbmdFcXVhbHMoY29uc3Qgd2NoYXJfdCogbGhzLAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB3Y2hhcl90KiByaHMp
OwogCi0gIC8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIGdpdmVuIHN0cmluZyBlbmRzIHdpdGggdGhl
IGdpdmVuIHN1ZmZpeCwgaWdub3JpbmcKLSAgLy8gY2FzZS4gQW55IHN0cmluZyBpcyBjb25zaWRl
cmVkIHRvIGVuZCB3aXRoIGFuIGVtcHR5IHN1ZmZpeC4KKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFu
ZCBvbmx5IGlmIHRoZSBnaXZlbiBzdHJpbmcgZW5kcyB3aXRoIHRoZSBnaXZlbiBzdWZmaXgsCisg
IC8vIGlnbm9yaW5nIGNhc2UuIEFueSBzdHJpbmcgaXMgY29uc2lkZXJlZCB0byBlbmQgd2l0aCBh
biBlbXB0eSBzdWZmaXguCiAgIHN0YXRpYyBib29sIEVuZHNXaXRoQ2FzZUluc2Vuc2l0aXZlKAog
ICAgICAgY29uc3Qgc3RkOjpzdHJpbmcmIHN0ciwgY29uc3Qgc3RkOjpzdHJpbmcmIHN1ZmZpeCk7
CiAKQEAgLTE1MCw2ICsxNTIsOSBAQCBjbGFzcyBHVEVTVF9BUElfIFN0cmluZyB7CiAgIC8vIEZv
cm1hdHMgYW4gaW50IHZhbHVlIGFzICIlWCIuCiAgIHN0YXRpYyBzdGQ6OnN0cmluZyBGb3JtYXRI
ZXhJbnQoaW50IHZhbHVlKTsKIAorICAvLyBGb3JtYXRzIGFuIGludCB2YWx1ZSBhcyAiJVgiLgor
ICBzdGF0aWMgc3RkOjpzdHJpbmcgRm9ybWF0SGV4VUludDMyKHVpbnQzMl90IHZhbHVlKTsKKwog
ICAvLyBGb3JtYXRzIGEgYnl0ZSBhcyAiJTAyWCIuCiAgIHN0YXRpYyBzdGQ6OnN0cmluZyBGb3Jt
YXRCeXRlKHVuc2lnbmVkIGNoYXIgdmFsdWUpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Ro
aXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtdHVw
bGUuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVz
dC9pbnRlcm5hbC9ndGVzdC10dXBsZS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3
OGEzYTZhMDFmYWM3NTUxN2VhYjgzMTMxMjQyN2UxNWQ1ZTRlYmI3Li4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29v
Z2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC10dXBsZS5oCisrKyAvZGV2
L251bGwKQEAgLTEsMTAyMSArMCwwIEBACi0vLyBUaGlzIGZpbGUgd2FzIEdFTkVSQVRFRCBieSBj
b21tYW5kOgotLy8gICAgIHB1bXAucHkgZ3Rlc3QtdHVwbGUuaC5wdW1wCi0vLyBETyBOT1QgRURJ
VCBCWSBIQU5EISEhCi0KLS8vIENvcHlyaWdodCAyMDA5IEdvb2dsZSBJbmMuCi0vLyBBbGwgUmln
aHRzIFJlc2VydmVkLgotLy8KLS8vIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotLy8gbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQotLy8gbWV0
OgotLy8KLS8vICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0Ci0vLyBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0vLyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0vLyBjb3B5cmlnaHQgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
Ci0vLyBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlCi0vLyBkaXN0cmlidXRpb24uCi0vLyAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9m
IEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCi0vLyBjb250cmlidXRvcnMgbWF5IGJl
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQotLy8gdGhp
cyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLS8v
Ci0vLyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQgQ09OVFJJQlVUT1JTCi0vLyAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotLy8gTElNSVRFRCBUTywgVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0vLyBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVAotLy8gT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0vLyBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0vLyBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLS8vIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWQotLy8gVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotLy8gKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0vLyBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgotCi0KLS8vIEltcGxlbWVudHMgYSBzdWJzZXQgb2YgVFIxIHR1cGxlIG5lZWRlZCBieSBHb29n
bGUgVGVzdCBhbmQgR29vZ2xlIE1vY2suCi0KLS8vIEdPT0dMRVRFU1RfQ00wMDAxIERPIE5PVCBE
RUxFVEUKLQotI2lmbmRlZiBHVEVTVF9JTkNMVURFX0dURVNUX0lOVEVSTkFMX0dURVNUX1RVUExF
X0hfCi0jZGVmaW5lIEdURVNUX0lOQ0xVREVfR1RFU1RfSU5URVJOQUxfR1RFU1RfVFVQTEVfSF8K
LQotI2luY2x1ZGUgPHV0aWxpdHk+ICAvLyBGb3IgOjpzdGQ6OnBhaXIuCi0KLS8vIFRoZSBjb21w
aWxlciB1c2VkIGluIFN5bWJpYW4gaGFzIGEgYnVnIHRoYXQgcHJldmVudHMgdXMgZnJvbSBkZWNs
YXJpbmcgdGhlCi0vLyB0dXBsZSB0ZW1wbGF0ZSBhcyBhIGZyaWVuZCAoaXQgY29tcGxhaW5zIHRo
YXQgdHVwbGUgaXMgcmVkZWZpbmVkKS4gIFRoaXMKLS8vIGJ5cGFzc2VzIHRoZSBidWcgYnkgZGVj
bGFyaW5nIHRoZSBtZW1iZXJzIHRoYXQgc2hvdWxkIG90aGVyd2lzZSBiZQotLy8gcHJpdmF0ZSBh
cyBwdWJsaWMuCi0vLyBTdW4gU3R1ZGlvIHZlcnNpb25zIDwgMTIgYWxzbyBoYXZlIHRoZSBhYm92
ZSBidWcuCi0jaWYgZGVmaW5lZChfX1NZTUJJQU4zMl9fKSB8fCAoZGVmaW5lZChfX1NVTlBST19D
QykgJiYgX19TVU5QUk9fQ0MgPCAweDU5MCkKLSMgZGVmaW5lIEdURVNUX0RFQ0xBUkVfVFVQTEVf
QVNfRlJJRU5EXyBwdWJsaWM6Ci0jZWxzZQotIyBkZWZpbmUgR1RFU1RfREVDTEFSRV9UVVBMRV9B
U19GUklFTkRfIFwKLSAgICB0ZW1wbGF0ZSA8R1RFU1RfMTBfVFlQRU5BTUVTXyhVKT4gZnJpZW5k
IGNsYXNzIHR1cGxlOyBcCi0gICBwcml2YXRlOgotI2VuZGlmCi0KLS8vIFZpc3VhbCBTdHVkaW8g
MjAxMCwgMjAxMiwgYW5kIDIwMTMgZGVmaW5lIHN5bWJvbHMgaW4gc3RkOjp0cjEgdGhhdCBjb25m
bGljdAotLy8gd2l0aCBvdXIgb3duIGRlZmluaXRpb25zLiBUaGVyZWZvcmUgdXNpbmcgb3VyIG93
biB0dXBsZSBkb2VzIG5vdCB3b3JrIG9uCi0vLyB0aG9zZSBjb21waWxlcnMuCi0jaWYgZGVmaW5l
ZChfTVNDX1ZFUikgJiYgX01TQ19WRVIgPj0gMTYwMCAgLyogMTYwMCBpcyBWaXN1YWwgU3R1ZGlv
IDIwMTAgKi8KLSMgZXJyb3IgImd0ZXN0J3MgdHVwbGUgZG9lc24ndCBjb21waWxlIG9uIFZpc3Vh
bCBTdHVkaW8gMjAxMCBvciBsYXRlci4gXAotR1RFU1RfVVNFX09XTl9UUjFfVFVQTEUgbXVzdCBi
ZSBzZXQgdG8gMCBvbiB0aG9zZSBjb21waWxlcnMuIgotI2VuZGlmCi0KLS8vIEdURVNUX25fVFVQ
TEVfKFQpIGlzIHRoZSB0eXBlIG9mIGFuIG4tdHVwbGUuCi0jZGVmaW5lIEdURVNUXzBfVFVQTEVf
KFQpIHR1cGxlPD4KLSNkZWZpbmUgR1RFU1RfMV9UVVBMRV8oVCkgdHVwbGU8VCMjMCwgdm9pZCwg
dm9pZCwgdm9pZCwgdm9pZCwgdm9pZCwgdm9pZCwgXAotICAgIHZvaWQsIHZvaWQsIHZvaWQ+Ci0j
ZGVmaW5lIEdURVNUXzJfVFVQTEVfKFQpIHR1cGxlPFQjIzAsIFQjIzEsIHZvaWQsIHZvaWQsIHZv
aWQsIHZvaWQsIHZvaWQsIFwKLSAgICB2b2lkLCB2b2lkLCB2b2lkPgotI2RlZmluZSBHVEVTVF8z
X1RVUExFXyhUKSB0dXBsZTxUIyMwLCBUIyMxLCBUIyMyLCB2b2lkLCB2b2lkLCB2b2lkLCB2b2lk
LCBcCi0gICAgdm9pZCwgdm9pZCwgdm9pZD4KLSNkZWZpbmUgR1RFU1RfNF9UVVBMRV8oVCkgdHVw
bGU8VCMjMCwgVCMjMSwgVCMjMiwgVCMjMywgdm9pZCwgdm9pZCwgdm9pZCwgXAotICAgIHZvaWQs
IHZvaWQsIHZvaWQ+Ci0jZGVmaW5lIEdURVNUXzVfVFVQTEVfKFQpIHR1cGxlPFQjIzAsIFQjIzEs
IFQjIzIsIFQjIzMsIFQjIzQsIHZvaWQsIHZvaWQsIFwKLSAgICB2b2lkLCB2b2lkLCB2b2lkPgot
I2RlZmluZSBHVEVTVF82X1RVUExFXyhUKSB0dXBsZTxUIyMwLCBUIyMxLCBUIyMyLCBUIyMzLCBU
IyM0LCBUIyM1LCB2b2lkLCBcCi0gICAgdm9pZCwgdm9pZCwgdm9pZD4KLSNkZWZpbmUgR1RFU1Rf
N19UVVBMRV8oVCkgdHVwbGU8VCMjMCwgVCMjMSwgVCMjMiwgVCMjMywgVCMjNCwgVCMjNSwgVCMj
NiwgXAotICAgIHZvaWQsIHZvaWQsIHZvaWQ+Ci0jZGVmaW5lIEdURVNUXzhfVFVQTEVfKFQpIHR1
cGxlPFQjIzAsIFQjIzEsIFQjIzIsIFQjIzMsIFQjIzQsIFQjIzUsIFQjIzYsIFwKLSAgICBUIyM3
LCB2b2lkLCB2b2lkPgotI2RlZmluZSBHVEVTVF85X1RVUExFXyhUKSB0dXBsZTxUIyMwLCBUIyMx
LCBUIyMyLCBUIyMzLCBUIyM0LCBUIyM1LCBUIyM2LCBcCi0gICAgVCMjNywgVCMjOCwgdm9pZD4K
LSNkZWZpbmUgR1RFU1RfMTBfVFVQTEVfKFQpIHR1cGxlPFQjIzAsIFQjIzEsIFQjIzIsIFQjIzMs
IFQjIzQsIFQjIzUsIFQjIzYsIFwKLSAgICBUIyM3LCBUIyM4LCBUIyM5PgotCi0vLyBHVEVTVF9u
X1RZUEVOQU1FU18oVCkgZGVjbGFyZXMgYSBsaXN0IG9mIG4gdHlwZW5hbWVzLgotI2RlZmluZSBH
VEVTVF8wX1RZUEVOQU1FU18oVCkKLSNkZWZpbmUgR1RFU1RfMV9UWVBFTkFNRVNfKFQpIHR5cGVu
YW1lIFQjIzAKLSNkZWZpbmUgR1RFU1RfMl9UWVBFTkFNRVNfKFQpIHR5cGVuYW1lIFQjIzAsIHR5
cGVuYW1lIFQjIzEKLSNkZWZpbmUgR1RFU1RfM19UWVBFTkFNRVNfKFQpIHR5cGVuYW1lIFQjIzAs
IHR5cGVuYW1lIFQjIzEsIHR5cGVuYW1lIFQjIzIKLSNkZWZpbmUgR1RFU1RfNF9UWVBFTkFNRVNf
KFQpIHR5cGVuYW1lIFQjIzAsIHR5cGVuYW1lIFQjIzEsIHR5cGVuYW1lIFQjIzIsIFwKLSAgICB0
eXBlbmFtZSBUIyMzCi0jZGVmaW5lIEdURVNUXzVfVFlQRU5BTUVTXyhUKSB0eXBlbmFtZSBUIyMw
LCB0eXBlbmFtZSBUIyMxLCB0eXBlbmFtZSBUIyMyLCBcCi0gICAgdHlwZW5hbWUgVCMjMywgdHlw
ZW5hbWUgVCMjNAotI2RlZmluZSBHVEVTVF82X1RZUEVOQU1FU18oVCkgdHlwZW5hbWUgVCMjMCwg
dHlwZW5hbWUgVCMjMSwgdHlwZW5hbWUgVCMjMiwgXAotICAgIHR5cGVuYW1lIFQjIzMsIHR5cGVu
YW1lIFQjIzQsIHR5cGVuYW1lIFQjIzUKLSNkZWZpbmUgR1RFU1RfN19UWVBFTkFNRVNfKFQpIHR5
cGVuYW1lIFQjIzAsIHR5cGVuYW1lIFQjIzEsIHR5cGVuYW1lIFQjIzIsIFwKLSAgICB0eXBlbmFt
ZSBUIyMzLCB0eXBlbmFtZSBUIyM0LCB0eXBlbmFtZSBUIyM1LCB0eXBlbmFtZSBUIyM2Ci0jZGVm
aW5lIEdURVNUXzhfVFlQRU5BTUVTXyhUKSB0eXBlbmFtZSBUIyMwLCB0eXBlbmFtZSBUIyMxLCB0
eXBlbmFtZSBUIyMyLCBcCi0gICAgdHlwZW5hbWUgVCMjMywgdHlwZW5hbWUgVCMjNCwgdHlwZW5h
bWUgVCMjNSwgdHlwZW5hbWUgVCMjNiwgdHlwZW5hbWUgVCMjNwotI2RlZmluZSBHVEVTVF85X1RZ
UEVOQU1FU18oVCkgdHlwZW5hbWUgVCMjMCwgdHlwZW5hbWUgVCMjMSwgdHlwZW5hbWUgVCMjMiwg
XAotICAgIHR5cGVuYW1lIFQjIzMsIHR5cGVuYW1lIFQjIzQsIHR5cGVuYW1lIFQjIzUsIHR5cGVu
YW1lIFQjIzYsIFwKLSAgICB0eXBlbmFtZSBUIyM3LCB0eXBlbmFtZSBUIyM4Ci0jZGVmaW5lIEdU
RVNUXzEwX1RZUEVOQU1FU18oVCkgdHlwZW5hbWUgVCMjMCwgdHlwZW5hbWUgVCMjMSwgdHlwZW5h
bWUgVCMjMiwgXAotICAgIHR5cGVuYW1lIFQjIzMsIHR5cGVuYW1lIFQjIzQsIHR5cGVuYW1lIFQj
IzUsIHR5cGVuYW1lIFQjIzYsIFwKLSAgICB0eXBlbmFtZSBUIyM3LCB0eXBlbmFtZSBUIyM4LCB0
eXBlbmFtZSBUIyM5Ci0KLS8vIEluIHRoZW9yeSwgZGVmaW5pbmcgc3R1ZmYgaW4gdGhlIDo6c3Rk
IG5hbWVzcGFjZSBpcyB1bmRlZmluZWQKLS8vIGJlaGF2aW9yLiAgV2UgY2FuIGRvIHRoaXMgYXMg
d2UgYXJlIHBsYXlpbmcgdGhlIHJvbGUgb2YgYSBzdGFuZGFyZAotLy8gbGlicmFyeSB2ZW5kb3Iu
Ci1uYW1lc3BhY2Ugc3RkIHsKLW5hbWVzcGFjZSB0cjEgewotCi10ZW1wbGF0ZSA8dHlwZW5hbWUg
VDAgPSB2b2lkLCB0eXBlbmFtZSBUMSA9IHZvaWQsIHR5cGVuYW1lIFQyID0gdm9pZCwKLSAgICB0
eXBlbmFtZSBUMyA9IHZvaWQsIHR5cGVuYW1lIFQ0ID0gdm9pZCwgdHlwZW5hbWUgVDUgPSB2b2lk
LAotICAgIHR5cGVuYW1lIFQ2ID0gdm9pZCwgdHlwZW5hbWUgVDcgPSB2b2lkLCB0eXBlbmFtZSBU
OCA9IHZvaWQsCi0gICAgdHlwZW5hbWUgVDkgPSB2b2lkPgotY2xhc3MgdHVwbGU7Ci0KLS8vIEFu
eXRoaW5nIGluIG5hbWVzcGFjZSBndGVzdF9pbnRlcm5hbCBpcyBHb29nbGUgVGVzdCdzIElOVEVS
TkFMCi0vLyBJTVBMRU1FTlRBVElPTiBERVRBSUwgYW5kIE1VU1QgTk9UIEJFIFVTRUQgRElSRUNU
TFkgaW4gdXNlciBjb2RlLgotbmFtZXNwYWNlIGd0ZXN0X2ludGVybmFsIHsKLQotLy8gQnlSZWY8
VD46OnR5cGUgaXMgVCBpZiBUIGlzIGEgcmVmZXJlbmNlOyBvdGhlcndpc2UgaXQncyBjb25zdCBU
Ji4KLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotc3RydWN0IEJ5UmVmIHsgdHlwZWRlZiBjb25zdCBU
JiB0eXBlOyB9OyAgLy8gTk9MSU5UCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLXN0cnVjdCBCeVJl
ZjxUJj4geyB0eXBlZGVmIFQmIHR5cGU7IH07ICAvLyBOT0xJTlQKLQotLy8gQSBoYW5keSB3cmFw
cGVyIGZvciBCeVJlZi4KLSNkZWZpbmUgR1RFU1RfQllfUkVGXyhUKSB0eXBlbmFtZSA6OnN0ZDo6
dHIxOjpndGVzdF9pbnRlcm5hbDo6QnlSZWY8VD46OnR5cGUKLQotLy8gQWRkUmVmPFQ+Ojp0eXBl
IGlzIFQgaWYgVCBpcyBhIHJlZmVyZW5jZTsgb3RoZXJ3aXNlIGl0J3MgVCYuICBUaGlzCi0vLyBp
cyB0aGUgc2FtZSBhcyB0cjE6OmFkZF9yZWZlcmVuY2U8VD46OnR5cGUuCi10ZW1wbGF0ZSA8dHlw
ZW5hbWUgVD4KLXN0cnVjdCBBZGRSZWYgeyB0eXBlZGVmIFQmIHR5cGU7IH07ICAvLyBOT0xJTlQK
LXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotc3RydWN0IEFkZFJlZjxUJj4geyB0eXBlZGVmIFQmIHR5
cGU7IH07ICAvLyBOT0xJTlQKLQotLy8gQSBoYW5keSB3cmFwcGVyIGZvciBBZGRSZWYuCi0jZGVm
aW5lIEdURVNUX0FERF9SRUZfKFQpIHR5cGVuYW1lIDo6c3RkOjp0cjE6Omd0ZXN0X2ludGVybmFs
OjpBZGRSZWY8VD46OnR5cGUKLQotLy8gQSBoZWxwZXIgZm9yIGltcGxlbWVudGluZyBnZXQ8az4o
KS4KLXRlbXBsYXRlIDxpbnQgaz4gY2xhc3MgR2V0OwotCi0vLyBBIGhlbHBlciBmb3IgaW1wbGVt
ZW50aW5nIHR1cGxlX2VsZW1lbnQ8aywgVD4uICBrSW5kZXhWYWxpZCBpcyB0cnVlCi0vLyBpZmYg
ayA8IHRoZSBudW1iZXIgb2YgZmllbGRzIGluIHR1cGxlIHR5cGUgVC4KLXRlbXBsYXRlIDxib29s
IGtJbmRleFZhbGlkLCBpbnQga0luZGV4LCBjbGFzcyBUdXBsZT4KLXN0cnVjdCBUdXBsZUVsZW1l
bnQ7Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1cGxlRWxl
bWVudDx0cnVlLCAwLCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDAgdHlwZTsK
LX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1cGxlRWxl
bWVudDx0cnVlLCAxLCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDEgdHlwZTsK
LX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1cGxlRWxl
bWVudDx0cnVlLCAyLCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDIgdHlwZTsK
LX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1cGxlRWxl
bWVudDx0cnVlLCAzLCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDMgdHlwZTsK
LX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1cGxlRWxl
bWVudDx0cnVlLCA0LCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDQgdHlwZTsK
LX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1cGxlRWxl
bWVudDx0cnVlLCA1LCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDUgdHlwZTsK
LX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1cGxlRWxl
bWVudDx0cnVlLCA2LCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDYgdHlwZTsK
LX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1cGxlRWxl
bWVudDx0cnVlLCA3LCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDcgdHlwZTsK
LX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1cGxlRWxl
bWVudDx0cnVlLCA4LCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDggdHlwZTsK
LX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1cGxlRWxl
bWVudDx0cnVlLCA5LCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDkgdHlwZTsK
LX07Ci0KLX0gIC8vIG5hbWVzcGFjZSBndGVzdF9pbnRlcm5hbAotCi10ZW1wbGF0ZSA8PgotY2xh
c3MgdHVwbGU8PiB7Ci0gcHVibGljOgotICB0dXBsZSgpIHt9Ci0gIHR1cGxlKGNvbnN0IHR1cGxl
JiAvKiB0ICovKSAge30KLSAgdHVwbGUmIG9wZXJhdG9yPShjb25zdCB0dXBsZSYgLyogdCAqLykg
eyByZXR1cm4gKnRoaXM7IH0KLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xX1RZUEVOQU1FU18oVCk+
Ci1jbGFzcyBHVEVTVF8xX1RVUExFXyhUKSB7Ci0gcHVibGljOgotICB0ZW1wbGF0ZSA8aW50IGs+
IGZyaWVuZCBjbGFzcyBndGVzdF9pbnRlcm5hbDo6R2V0OwotCi0gIHR1cGxlKCkgOiBmMF8oKSB7
fQotCi0gIGV4cGxpY2l0IHR1cGxlKEdURVNUX0JZX1JFRl8oVDApIGYwKSA6IGYwXyhmMCkge30K
LQotICB0dXBsZShjb25zdCB0dXBsZSYgdCkgOiBmMF8odC5mMF8pIHt9Ci0KLSAgdGVtcGxhdGUg
PEdURVNUXzFfVFlQRU5BTUVTXyhVKT4KLSAgdHVwbGUoY29uc3QgR1RFU1RfMV9UVVBMRV8oVSkm
IHQpIDogZjBfKHQuZjBfKSB7fQotCi0gIHR1cGxlJiBvcGVyYXRvcj0oY29uc3QgdHVwbGUmIHQp
IHsgcmV0dXJuIENvcHlGcm9tKHQpOyB9Ci0KLSAgdGVtcGxhdGUgPEdURVNUXzFfVFlQRU5BTUVT
XyhVKT4KLSAgdHVwbGUmIG9wZXJhdG9yPShjb25zdCBHVEVTVF8xX1RVUExFXyhVKSYgdCkgewot
ICAgIHJldHVybiBDb3B5RnJvbSh0KTsKLSAgfQotCi0gIEdURVNUX0RFQ0xBUkVfVFVQTEVfQVNf
RlJJRU5EXwotCi0gIHRlbXBsYXRlIDxHVEVTVF8xX1RZUEVOQU1FU18oVSk+Ci0gIHR1cGxlJiBD
b3B5RnJvbShjb25zdCBHVEVTVF8xX1RVUExFXyhVKSYgdCkgewotICAgIGYwXyA9IHQuZjBfOwot
ICAgIHJldHVybiAqdGhpczsKLSAgfQotCi0gIFQwIGYwXzsKLX07Ci0KLXRlbXBsYXRlIDxHVEVT
VF8yX1RZUEVOQU1FU18oVCk+Ci1jbGFzcyBHVEVTVF8yX1RVUExFXyhUKSB7Ci0gcHVibGljOgot
ICB0ZW1wbGF0ZSA8aW50IGs+IGZyaWVuZCBjbGFzcyBndGVzdF9pbnRlcm5hbDo6R2V0OwotCi0g
IHR1cGxlKCkgOiBmMF8oKSwgZjFfKCkge30KLQotICBleHBsaWNpdCB0dXBsZShHVEVTVF9CWV9S
RUZfKFQwKSBmMCwgR1RFU1RfQllfUkVGXyhUMSkgZjEpIDogZjBfKGYwKSwKLSAgICAgIGYxXyhm
MSkge30KLQotICB0dXBsZShjb25zdCB0dXBsZSYgdCkgOiBmMF8odC5mMF8pLCBmMV8odC5mMV8p
IHt9Ci0KLSAgdGVtcGxhdGUgPEdURVNUXzJfVFlQRU5BTUVTXyhVKT4KLSAgdHVwbGUoY29uc3Qg
R1RFU1RfMl9UVVBMRV8oVSkmIHQpIDogZjBfKHQuZjBfKSwgZjFfKHQuZjFfKSB7fQotICB0ZW1w
bGF0ZSA8dHlwZW5hbWUgVTAsIHR5cGVuYW1lIFUxPgotICB0dXBsZShjb25zdCA6OnN0ZDo6cGFp
cjxVMCwgVTE+JiBwKSA6IGYwXyhwLmZpcnN0KSwgZjFfKHAuc2Vjb25kKSB7fQotCi0gIHR1cGxl
JiBvcGVyYXRvcj0oY29uc3QgdHVwbGUmIHQpIHsgcmV0dXJuIENvcHlGcm9tKHQpOyB9Ci0KLSAg
dGVtcGxhdGUgPEdURVNUXzJfVFlQRU5BTUVTXyhVKT4KLSAgdHVwbGUmIG9wZXJhdG9yPShjb25z
dCBHVEVTVF8yX1RVUExFXyhVKSYgdCkgewotICAgIHJldHVybiBDb3B5RnJvbSh0KTsKLSAgfQot
ICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVTAsIHR5cGVuYW1lIFUxPgotICB0dXBsZSYgb3BlcmF0b3I9
KGNvbnN0IDo6c3RkOjpwYWlyPFUwLCBVMT4mIHApIHsKLSAgICBmMF8gPSBwLmZpcnN0OwotICAg
IGYxXyA9IHAuc2Vjb25kOwotICAgIHJldHVybiAqdGhpczsKLSAgfQotCi0gIEdURVNUX0RFQ0xB
UkVfVFVQTEVfQVNfRlJJRU5EXwotCi0gIHRlbXBsYXRlIDxHVEVTVF8yX1RZUEVOQU1FU18oVSk+
Ci0gIHR1cGxlJiBDb3B5RnJvbShjb25zdCBHVEVTVF8yX1RVUExFXyhVKSYgdCkgewotICAgIGYw
XyA9IHQuZjBfOwotICAgIGYxXyA9IHQuZjFfOwotICAgIHJldHVybiAqdGhpczsKLSAgfQotCi0g
IFQwIGYwXzsKLSAgVDEgZjFfOwotfTsKLQotdGVtcGxhdGUgPEdURVNUXzNfVFlQRU5BTUVTXyhU
KT4KLWNsYXNzIEdURVNUXzNfVFVQTEVfKFQpIHsKLSBwdWJsaWM6Ci0gIHRlbXBsYXRlIDxpbnQg
az4gZnJpZW5kIGNsYXNzIGd0ZXN0X2ludGVybmFsOjpHZXQ7Ci0KLSAgdHVwbGUoKSA6IGYwXygp
LCBmMV8oKSwgZjJfKCkge30KLQotICBleHBsaWNpdCB0dXBsZShHVEVTVF9CWV9SRUZfKFQwKSBm
MCwgR1RFU1RfQllfUkVGXyhUMSkgZjEsCi0gICAgICBHVEVTVF9CWV9SRUZfKFQyKSBmMikgOiBm
MF8oZjApLCBmMV8oZjEpLCBmMl8oZjIpIHt9Ci0KLSAgdHVwbGUoY29uc3QgdHVwbGUmIHQpIDog
ZjBfKHQuZjBfKSwgZjFfKHQuZjFfKSwgZjJfKHQuZjJfKSB7fQotCi0gIHRlbXBsYXRlIDxHVEVT
VF8zX1RZUEVOQU1FU18oVSk+Ci0gIHR1cGxlKGNvbnN0IEdURVNUXzNfVFVQTEVfKFUpJiB0KSA6
IGYwXyh0LmYwXyksIGYxXyh0LmYxXyksIGYyXyh0LmYyXykge30KLQotICB0dXBsZSYgb3BlcmF0
b3I9KGNvbnN0IHR1cGxlJiB0KSB7IHJldHVybiBDb3B5RnJvbSh0KTsgfQotCi0gIHRlbXBsYXRl
IDxHVEVTVF8zX1RZUEVOQU1FU18oVSk+Ci0gIHR1cGxlJiBvcGVyYXRvcj0oY29uc3QgR1RFU1Rf
M19UVVBMRV8oVSkmIHQpIHsKLSAgICByZXR1cm4gQ29weUZyb20odCk7Ci0gIH0KLQotICBHVEVT
VF9ERUNMQVJFX1RVUExFX0FTX0ZSSUVORF8KLQotICB0ZW1wbGF0ZSA8R1RFU1RfM19UWVBFTkFN
RVNfKFUpPgotICB0dXBsZSYgQ29weUZyb20oY29uc3QgR1RFU1RfM19UVVBMRV8oVSkmIHQpIHsK
LSAgICBmMF8gPSB0LmYwXzsKLSAgICBmMV8gPSB0LmYxXzsKLSAgICBmMl8gPSB0LmYyXzsKLSAg
ICByZXR1cm4gKnRoaXM7Ci0gIH0KLQotICBUMCBmMF87Ci0gIFQxIGYxXzsKLSAgVDIgZjJfOwot
fTsKLQotdGVtcGxhdGUgPEdURVNUXzRfVFlQRU5BTUVTXyhUKT4KLWNsYXNzIEdURVNUXzRfVFVQ
TEVfKFQpIHsKLSBwdWJsaWM6Ci0gIHRlbXBsYXRlIDxpbnQgaz4gZnJpZW5kIGNsYXNzIGd0ZXN0
X2ludGVybmFsOjpHZXQ7Ci0KLSAgdHVwbGUoKSA6IGYwXygpLCBmMV8oKSwgZjJfKCksIGYzXygp
IHt9Ci0KLSAgZXhwbGljaXQgdHVwbGUoR1RFU1RfQllfUkVGXyhUMCkgZjAsIEdURVNUX0JZX1JF
Rl8oVDEpIGYxLAotICAgICAgR1RFU1RfQllfUkVGXyhUMikgZjIsIEdURVNUX0JZX1JFRl8oVDMp
IGYzKSA6IGYwXyhmMCksIGYxXyhmMSksIGYyXyhmMiksCi0gICAgICBmM18oZjMpIHt9Ci0KLSAg
dHVwbGUoY29uc3QgdHVwbGUmIHQpIDogZjBfKHQuZjBfKSwgZjFfKHQuZjFfKSwgZjJfKHQuZjJf
KSwgZjNfKHQuZjNfKSB7fQotCi0gIHRlbXBsYXRlIDxHVEVTVF80X1RZUEVOQU1FU18oVSk+Ci0g
IHR1cGxlKGNvbnN0IEdURVNUXzRfVFVQTEVfKFUpJiB0KSA6IGYwXyh0LmYwXyksIGYxXyh0LmYx
XyksIGYyXyh0LmYyXyksCi0gICAgICBmM18odC5mM18pIHt9Ci0KLSAgdHVwbGUmIG9wZXJhdG9y
PShjb25zdCB0dXBsZSYgdCkgeyByZXR1cm4gQ29weUZyb20odCk7IH0KLQotICB0ZW1wbGF0ZSA8
R1RFU1RfNF9UWVBFTkFNRVNfKFUpPgotICB0dXBsZSYgb3BlcmF0b3I9KGNvbnN0IEdURVNUXzRf
VFVQTEVfKFUpJiB0KSB7Ci0gICAgcmV0dXJuIENvcHlGcm9tKHQpOwotICB9Ci0KLSAgR1RFU1Rf
REVDTEFSRV9UVVBMRV9BU19GUklFTkRfCi0KLSAgdGVtcGxhdGUgPEdURVNUXzRfVFlQRU5BTUVT
XyhVKT4KLSAgdHVwbGUmIENvcHlGcm9tKGNvbnN0IEdURVNUXzRfVFVQTEVfKFUpJiB0KSB7Ci0g
ICAgZjBfID0gdC5mMF87Ci0gICAgZjFfID0gdC5mMV87Ci0gICAgZjJfID0gdC5mMl87Ci0gICAg
ZjNfID0gdC5mM187Ci0gICAgcmV0dXJuICp0aGlzOwotICB9Ci0KLSAgVDAgZjBfOwotICBUMSBm
MV87Ci0gIFQyIGYyXzsKLSAgVDMgZjNfOwotfTsKLQotdGVtcGxhdGUgPEdURVNUXzVfVFlQRU5B
TUVTXyhUKT4KLWNsYXNzIEdURVNUXzVfVFVQTEVfKFQpIHsKLSBwdWJsaWM6Ci0gIHRlbXBsYXRl
IDxpbnQgaz4gZnJpZW5kIGNsYXNzIGd0ZXN0X2ludGVybmFsOjpHZXQ7Ci0KLSAgdHVwbGUoKSA6
IGYwXygpLCBmMV8oKSwgZjJfKCksIGYzXygpLCBmNF8oKSB7fQotCi0gIGV4cGxpY2l0IHR1cGxl
KEdURVNUX0JZX1JFRl8oVDApIGYwLCBHVEVTVF9CWV9SRUZfKFQxKSBmMSwKLSAgICAgIEdURVNU
X0JZX1JFRl8oVDIpIGYyLCBHVEVTVF9CWV9SRUZfKFQzKSBmMywKLSAgICAgIEdURVNUX0JZX1JF
Rl8oVDQpIGY0KSA6IGYwXyhmMCksIGYxXyhmMSksIGYyXyhmMiksIGYzXyhmMyksIGY0XyhmNCkg
e30KLQotICB0dXBsZShjb25zdCB0dXBsZSYgdCkgOiBmMF8odC5mMF8pLCBmMV8odC5mMV8pLCBm
Ml8odC5mMl8pLCBmM18odC5mM18pLAotICAgICAgZjRfKHQuZjRfKSB7fQotCi0gIHRlbXBsYXRl
IDxHVEVTVF81X1RZUEVOQU1FU18oVSk+Ci0gIHR1cGxlKGNvbnN0IEdURVNUXzVfVFVQTEVfKFUp
JiB0KSA6IGYwXyh0LmYwXyksIGYxXyh0LmYxXyksIGYyXyh0LmYyXyksCi0gICAgICBmM18odC5m
M18pLCBmNF8odC5mNF8pIHt9Ci0KLSAgdHVwbGUmIG9wZXJhdG9yPShjb25zdCB0dXBsZSYgdCkg
eyByZXR1cm4gQ29weUZyb20odCk7IH0KLQotICB0ZW1wbGF0ZSA8R1RFU1RfNV9UWVBFTkFNRVNf
KFUpPgotICB0dXBsZSYgb3BlcmF0b3I9KGNvbnN0IEdURVNUXzVfVFVQTEVfKFUpJiB0KSB7Ci0g
ICAgcmV0dXJuIENvcHlGcm9tKHQpOwotICB9Ci0KLSAgR1RFU1RfREVDTEFSRV9UVVBMRV9BU19G
UklFTkRfCi0KLSAgdGVtcGxhdGUgPEdURVNUXzVfVFlQRU5BTUVTXyhVKT4KLSAgdHVwbGUmIENv
cHlGcm9tKGNvbnN0IEdURVNUXzVfVFVQTEVfKFUpJiB0KSB7Ci0gICAgZjBfID0gdC5mMF87Ci0g
ICAgZjFfID0gdC5mMV87Ci0gICAgZjJfID0gdC5mMl87Ci0gICAgZjNfID0gdC5mM187Ci0gICAg
ZjRfID0gdC5mNF87Ci0gICAgcmV0dXJuICp0aGlzOwotICB9Ci0KLSAgVDAgZjBfOwotICBUMSBm
MV87Ci0gIFQyIGYyXzsKLSAgVDMgZjNfOwotICBUNCBmNF87Ci19OwotCi10ZW1wbGF0ZSA8R1RF
U1RfNl9UWVBFTkFNRVNfKFQpPgotY2xhc3MgR1RFU1RfNl9UVVBMRV8oVCkgewotIHB1YmxpYzoK
LSAgdGVtcGxhdGUgPGludCBrPiBmcmllbmQgY2xhc3MgZ3Rlc3RfaW50ZXJuYWw6OkdldDsKLQot
ICB0dXBsZSgpIDogZjBfKCksIGYxXygpLCBmMl8oKSwgZjNfKCksIGY0XygpLCBmNV8oKSB7fQot
Ci0gIGV4cGxpY2l0IHR1cGxlKEdURVNUX0JZX1JFRl8oVDApIGYwLCBHVEVTVF9CWV9SRUZfKFQx
KSBmMSwKLSAgICAgIEdURVNUX0JZX1JFRl8oVDIpIGYyLCBHVEVTVF9CWV9SRUZfKFQzKSBmMywg
R1RFU1RfQllfUkVGXyhUNCkgZjQsCi0gICAgICBHVEVTVF9CWV9SRUZfKFQ1KSBmNSkgOiBmMF8o
ZjApLCBmMV8oZjEpLCBmMl8oZjIpLCBmM18oZjMpLCBmNF8oZjQpLAotICAgICAgZjVfKGY1KSB7
fQotCi0gIHR1cGxlKGNvbnN0IHR1cGxlJiB0KSA6IGYwXyh0LmYwXyksIGYxXyh0LmYxXyksIGYy
Xyh0LmYyXyksIGYzXyh0LmYzXyksCi0gICAgICBmNF8odC5mNF8pLCBmNV8odC5mNV8pIHt9Ci0K
LSAgdGVtcGxhdGUgPEdURVNUXzZfVFlQRU5BTUVTXyhVKT4KLSAgdHVwbGUoY29uc3QgR1RFU1Rf
Nl9UVVBMRV8oVSkmIHQpIDogZjBfKHQuZjBfKSwgZjFfKHQuZjFfKSwgZjJfKHQuZjJfKSwKLSAg
ICAgIGYzXyh0LmYzXyksIGY0Xyh0LmY0XyksIGY1Xyh0LmY1Xykge30KLQotICB0dXBsZSYgb3Bl
cmF0b3I9KGNvbnN0IHR1cGxlJiB0KSB7IHJldHVybiBDb3B5RnJvbSh0KTsgfQotCi0gIHRlbXBs
YXRlIDxHVEVTVF82X1RZUEVOQU1FU18oVSk+Ci0gIHR1cGxlJiBvcGVyYXRvcj0oY29uc3QgR1RF
U1RfNl9UVVBMRV8oVSkmIHQpIHsKLSAgICByZXR1cm4gQ29weUZyb20odCk7Ci0gIH0KLQotICBH
VEVTVF9ERUNMQVJFX1RVUExFX0FTX0ZSSUVORF8KLQotICB0ZW1wbGF0ZSA8R1RFU1RfNl9UWVBF
TkFNRVNfKFUpPgotICB0dXBsZSYgQ29weUZyb20oY29uc3QgR1RFU1RfNl9UVVBMRV8oVSkmIHQp
IHsKLSAgICBmMF8gPSB0LmYwXzsKLSAgICBmMV8gPSB0LmYxXzsKLSAgICBmMl8gPSB0LmYyXzsK
LSAgICBmM18gPSB0LmYzXzsKLSAgICBmNF8gPSB0LmY0XzsKLSAgICBmNV8gPSB0LmY1XzsKLSAg
ICByZXR1cm4gKnRoaXM7Ci0gIH0KLQotICBUMCBmMF87Ci0gIFQxIGYxXzsKLSAgVDIgZjJfOwot
ICBUMyBmM187Ci0gIFQ0IGY0XzsKLSAgVDUgZjVfOwotfTsKLQotdGVtcGxhdGUgPEdURVNUXzdf
VFlQRU5BTUVTXyhUKT4KLWNsYXNzIEdURVNUXzdfVFVQTEVfKFQpIHsKLSBwdWJsaWM6Ci0gIHRl
bXBsYXRlIDxpbnQgaz4gZnJpZW5kIGNsYXNzIGd0ZXN0X2ludGVybmFsOjpHZXQ7Ci0KLSAgdHVw
bGUoKSA6IGYwXygpLCBmMV8oKSwgZjJfKCksIGYzXygpLCBmNF8oKSwgZjVfKCksIGY2XygpIHt9
Ci0KLSAgZXhwbGljaXQgdHVwbGUoR1RFU1RfQllfUkVGXyhUMCkgZjAsIEdURVNUX0JZX1JFRl8o
VDEpIGYxLAotICAgICAgR1RFU1RfQllfUkVGXyhUMikgZjIsIEdURVNUX0JZX1JFRl8oVDMpIGYz
LCBHVEVTVF9CWV9SRUZfKFQ0KSBmNCwKLSAgICAgIEdURVNUX0JZX1JFRl8oVDUpIGY1LCBHVEVT
VF9CWV9SRUZfKFQ2KSBmNikgOiBmMF8oZjApLCBmMV8oZjEpLCBmMl8oZjIpLAotICAgICAgZjNf
KGYzKSwgZjRfKGY0KSwgZjVfKGY1KSwgZjZfKGY2KSB7fQotCi0gIHR1cGxlKGNvbnN0IHR1cGxl
JiB0KSA6IGYwXyh0LmYwXyksIGYxXyh0LmYxXyksIGYyXyh0LmYyXyksIGYzXyh0LmYzXyksCi0g
ICAgICBmNF8odC5mNF8pLCBmNV8odC5mNV8pLCBmNl8odC5mNl8pIHt9Ci0KLSAgdGVtcGxhdGUg
PEdURVNUXzdfVFlQRU5BTUVTXyhVKT4KLSAgdHVwbGUoY29uc3QgR1RFU1RfN19UVVBMRV8oVSkm
IHQpIDogZjBfKHQuZjBfKSwgZjFfKHQuZjFfKSwgZjJfKHQuZjJfKSwKLSAgICAgIGYzXyh0LmYz
XyksIGY0Xyh0LmY0XyksIGY1Xyh0LmY1XyksIGY2Xyh0LmY2Xykge30KLQotICB0dXBsZSYgb3Bl
cmF0b3I9KGNvbnN0IHR1cGxlJiB0KSB7IHJldHVybiBDb3B5RnJvbSh0KTsgfQotCi0gIHRlbXBs
YXRlIDxHVEVTVF83X1RZUEVOQU1FU18oVSk+Ci0gIHR1cGxlJiBvcGVyYXRvcj0oY29uc3QgR1RF
U1RfN19UVVBMRV8oVSkmIHQpIHsKLSAgICByZXR1cm4gQ29weUZyb20odCk7Ci0gIH0KLQotICBH
VEVTVF9ERUNMQVJFX1RVUExFX0FTX0ZSSUVORF8KLQotICB0ZW1wbGF0ZSA8R1RFU1RfN19UWVBF
TkFNRVNfKFUpPgotICB0dXBsZSYgQ29weUZyb20oY29uc3QgR1RFU1RfN19UVVBMRV8oVSkmIHQp
IHsKLSAgICBmMF8gPSB0LmYwXzsKLSAgICBmMV8gPSB0LmYxXzsKLSAgICBmMl8gPSB0LmYyXzsK
LSAgICBmM18gPSB0LmYzXzsKLSAgICBmNF8gPSB0LmY0XzsKLSAgICBmNV8gPSB0LmY1XzsKLSAg
ICBmNl8gPSB0LmY2XzsKLSAgICByZXR1cm4gKnRoaXM7Ci0gIH0KLQotICBUMCBmMF87Ci0gIFQx
IGYxXzsKLSAgVDIgZjJfOwotICBUMyBmM187Ci0gIFQ0IGY0XzsKLSAgVDUgZjVfOwotICBUNiBm
Nl87Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfOF9UWVBFTkFNRVNfKFQpPgotY2xhc3MgR1RFU1Rf
OF9UVVBMRV8oVCkgewotIHB1YmxpYzoKLSAgdGVtcGxhdGUgPGludCBrPiBmcmllbmQgY2xhc3Mg
Z3Rlc3RfaW50ZXJuYWw6OkdldDsKLQotICB0dXBsZSgpIDogZjBfKCksIGYxXygpLCBmMl8oKSwg
ZjNfKCksIGY0XygpLCBmNV8oKSwgZjZfKCksIGY3XygpIHt9Ci0KLSAgZXhwbGljaXQgdHVwbGUo
R1RFU1RfQllfUkVGXyhUMCkgZjAsIEdURVNUX0JZX1JFRl8oVDEpIGYxLAotICAgICAgR1RFU1Rf
QllfUkVGXyhUMikgZjIsIEdURVNUX0JZX1JFRl8oVDMpIGYzLCBHVEVTVF9CWV9SRUZfKFQ0KSBm
NCwKLSAgICAgIEdURVNUX0JZX1JFRl8oVDUpIGY1LCBHVEVTVF9CWV9SRUZfKFQ2KSBmNiwKLSAg
ICAgIEdURVNUX0JZX1JFRl8oVDcpIGY3KSA6IGYwXyhmMCksIGYxXyhmMSksIGYyXyhmMiksIGYz
XyhmMyksIGY0XyhmNCksCi0gICAgICBmNV8oZjUpLCBmNl8oZjYpLCBmN18oZjcpIHt9Ci0KLSAg
dHVwbGUoY29uc3QgdHVwbGUmIHQpIDogZjBfKHQuZjBfKSwgZjFfKHQuZjFfKSwgZjJfKHQuZjJf
KSwgZjNfKHQuZjNfKSwKLSAgICAgIGY0Xyh0LmY0XyksIGY1Xyh0LmY1XyksIGY2Xyh0LmY2Xyks
IGY3Xyh0LmY3Xykge30KLQotICB0ZW1wbGF0ZSA8R1RFU1RfOF9UWVBFTkFNRVNfKFUpPgotICB0
dXBsZShjb25zdCBHVEVTVF84X1RVUExFXyhVKSYgdCkgOiBmMF8odC5mMF8pLCBmMV8odC5mMV8p
LCBmMl8odC5mMl8pLAotICAgICAgZjNfKHQuZjNfKSwgZjRfKHQuZjRfKSwgZjVfKHQuZjVfKSwg
ZjZfKHQuZjZfKSwgZjdfKHQuZjdfKSB7fQotCi0gIHR1cGxlJiBvcGVyYXRvcj0oY29uc3QgdHVw
bGUmIHQpIHsgcmV0dXJuIENvcHlGcm9tKHQpOyB9Ci0KLSAgdGVtcGxhdGUgPEdURVNUXzhfVFlQ
RU5BTUVTXyhVKT4KLSAgdHVwbGUmIG9wZXJhdG9yPShjb25zdCBHVEVTVF84X1RVUExFXyhVKSYg
dCkgewotICAgIHJldHVybiBDb3B5RnJvbSh0KTsKLSAgfQotCi0gIEdURVNUX0RFQ0xBUkVfVFVQ
TEVfQVNfRlJJRU5EXwotCi0gIHRlbXBsYXRlIDxHVEVTVF84X1RZUEVOQU1FU18oVSk+Ci0gIHR1
cGxlJiBDb3B5RnJvbShjb25zdCBHVEVTVF84X1RVUExFXyhVKSYgdCkgewotICAgIGYwXyA9IHQu
ZjBfOwotICAgIGYxXyA9IHQuZjFfOwotICAgIGYyXyA9IHQuZjJfOwotICAgIGYzXyA9IHQuZjNf
OwotICAgIGY0XyA9IHQuZjRfOwotICAgIGY1XyA9IHQuZjVfOwotICAgIGY2XyA9IHQuZjZfOwot
ICAgIGY3XyA9IHQuZjdfOwotICAgIHJldHVybiAqdGhpczsKLSAgfQotCi0gIFQwIGYwXzsKLSAg
VDEgZjFfOwotICBUMiBmMl87Ci0gIFQzIGYzXzsKLSAgVDQgZjRfOwotICBUNSBmNV87Ci0gIFQ2
IGY2XzsKLSAgVDcgZjdfOwotfTsKLQotdGVtcGxhdGUgPEdURVNUXzlfVFlQRU5BTUVTXyhUKT4K
LWNsYXNzIEdURVNUXzlfVFVQTEVfKFQpIHsKLSBwdWJsaWM6Ci0gIHRlbXBsYXRlIDxpbnQgaz4g
ZnJpZW5kIGNsYXNzIGd0ZXN0X2ludGVybmFsOjpHZXQ7Ci0KLSAgdHVwbGUoKSA6IGYwXygpLCBm
MV8oKSwgZjJfKCksIGYzXygpLCBmNF8oKSwgZjVfKCksIGY2XygpLCBmN18oKSwgZjhfKCkge30K
LQotICBleHBsaWNpdCB0dXBsZShHVEVTVF9CWV9SRUZfKFQwKSBmMCwgR1RFU1RfQllfUkVGXyhU
MSkgZjEsCi0gICAgICBHVEVTVF9CWV9SRUZfKFQyKSBmMiwgR1RFU1RfQllfUkVGXyhUMykgZjMs
IEdURVNUX0JZX1JFRl8oVDQpIGY0LAotICAgICAgR1RFU1RfQllfUkVGXyhUNSkgZjUsIEdURVNU
X0JZX1JFRl8oVDYpIGY2LCBHVEVTVF9CWV9SRUZfKFQ3KSBmNywKLSAgICAgIEdURVNUX0JZX1JF
Rl8oVDgpIGY4KSA6IGYwXyhmMCksIGYxXyhmMSksIGYyXyhmMiksIGYzXyhmMyksIGY0XyhmNCks
Ci0gICAgICBmNV8oZjUpLCBmNl8oZjYpLCBmN18oZjcpLCBmOF8oZjgpIHt9Ci0KLSAgdHVwbGUo
Y29uc3QgdHVwbGUmIHQpIDogZjBfKHQuZjBfKSwgZjFfKHQuZjFfKSwgZjJfKHQuZjJfKSwgZjNf
KHQuZjNfKSwKLSAgICAgIGY0Xyh0LmY0XyksIGY1Xyh0LmY1XyksIGY2Xyh0LmY2XyksIGY3Xyh0
LmY3XyksIGY4Xyh0LmY4Xykge30KLQotICB0ZW1wbGF0ZSA8R1RFU1RfOV9UWVBFTkFNRVNfKFUp
PgotICB0dXBsZShjb25zdCBHVEVTVF85X1RVUExFXyhVKSYgdCkgOiBmMF8odC5mMF8pLCBmMV8o
dC5mMV8pLCBmMl8odC5mMl8pLAotICAgICAgZjNfKHQuZjNfKSwgZjRfKHQuZjRfKSwgZjVfKHQu
ZjVfKSwgZjZfKHQuZjZfKSwgZjdfKHQuZjdfKSwgZjhfKHQuZjhfKSB7fQotCi0gIHR1cGxlJiBv
cGVyYXRvcj0oY29uc3QgdHVwbGUmIHQpIHsgcmV0dXJuIENvcHlGcm9tKHQpOyB9Ci0KLSAgdGVt
cGxhdGUgPEdURVNUXzlfVFlQRU5BTUVTXyhVKT4KLSAgdHVwbGUmIG9wZXJhdG9yPShjb25zdCBH
VEVTVF85X1RVUExFXyhVKSYgdCkgewotICAgIHJldHVybiBDb3B5RnJvbSh0KTsKLSAgfQotCi0g
IEdURVNUX0RFQ0xBUkVfVFVQTEVfQVNfRlJJRU5EXwotCi0gIHRlbXBsYXRlIDxHVEVTVF85X1RZ
UEVOQU1FU18oVSk+Ci0gIHR1cGxlJiBDb3B5RnJvbShjb25zdCBHVEVTVF85X1RVUExFXyhVKSYg
dCkgewotICAgIGYwXyA9IHQuZjBfOwotICAgIGYxXyA9IHQuZjFfOwotICAgIGYyXyA9IHQuZjJf
OwotICAgIGYzXyA9IHQuZjNfOwotICAgIGY0XyA9IHQuZjRfOwotICAgIGY1XyA9IHQuZjVfOwot
ICAgIGY2XyA9IHQuZjZfOwotICAgIGY3XyA9IHQuZjdfOwotICAgIGY4XyA9IHQuZjhfOwotICAg
IHJldHVybiAqdGhpczsKLSAgfQotCi0gIFQwIGYwXzsKLSAgVDEgZjFfOwotICBUMiBmMl87Ci0g
IFQzIGYzXzsKLSAgVDQgZjRfOwotICBUNSBmNV87Ci0gIFQ2IGY2XzsKLSAgVDcgZjdfOwotICBU
OCBmOF87Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfMTBfVFlQRU5BTUVTXyhUKT4KLWNsYXNzIHR1
cGxlIHsKLSBwdWJsaWM6Ci0gIHRlbXBsYXRlIDxpbnQgaz4gZnJpZW5kIGNsYXNzIGd0ZXN0X2lu
dGVybmFsOjpHZXQ7Ci0KLSAgdHVwbGUoKSA6IGYwXygpLCBmMV8oKSwgZjJfKCksIGYzXygpLCBm
NF8oKSwgZjVfKCksIGY2XygpLCBmN18oKSwgZjhfKCksCi0gICAgICBmOV8oKSB7fQotCi0gIGV4
cGxpY2l0IHR1cGxlKEdURVNUX0JZX1JFRl8oVDApIGYwLCBHVEVTVF9CWV9SRUZfKFQxKSBmMSwK
LSAgICAgIEdURVNUX0JZX1JFRl8oVDIpIGYyLCBHVEVTVF9CWV9SRUZfKFQzKSBmMywgR1RFU1Rf
QllfUkVGXyhUNCkgZjQsCi0gICAgICBHVEVTVF9CWV9SRUZfKFQ1KSBmNSwgR1RFU1RfQllfUkVG
XyhUNikgZjYsIEdURVNUX0JZX1JFRl8oVDcpIGY3LAotICAgICAgR1RFU1RfQllfUkVGXyhUOCkg
ZjgsIEdURVNUX0JZX1JFRl8oVDkpIGY5KSA6IGYwXyhmMCksIGYxXyhmMSksIGYyXyhmMiksCi0g
ICAgICBmM18oZjMpLCBmNF8oZjQpLCBmNV8oZjUpLCBmNl8oZjYpLCBmN18oZjcpLCBmOF8oZjgp
LCBmOV8oZjkpIHt9Ci0KLSAgdHVwbGUoY29uc3QgdHVwbGUmIHQpIDogZjBfKHQuZjBfKSwgZjFf
KHQuZjFfKSwgZjJfKHQuZjJfKSwgZjNfKHQuZjNfKSwKLSAgICAgIGY0Xyh0LmY0XyksIGY1Xyh0
LmY1XyksIGY2Xyh0LmY2XyksIGY3Xyh0LmY3XyksIGY4Xyh0LmY4XyksIGY5Xyh0LmY5Xykge30K
LQotICB0ZW1wbGF0ZSA8R1RFU1RfMTBfVFlQRU5BTUVTXyhVKT4KLSAgdHVwbGUoY29uc3QgR1RF
U1RfMTBfVFVQTEVfKFUpJiB0KSA6IGYwXyh0LmYwXyksIGYxXyh0LmYxXyksIGYyXyh0LmYyXyks
Ci0gICAgICBmM18odC5mM18pLCBmNF8odC5mNF8pLCBmNV8odC5mNV8pLCBmNl8odC5mNl8pLCBm
N18odC5mN18pLCBmOF8odC5mOF8pLAotICAgICAgZjlfKHQuZjlfKSB7fQotCi0gIHR1cGxlJiBv
cGVyYXRvcj0oY29uc3QgdHVwbGUmIHQpIHsgcmV0dXJuIENvcHlGcm9tKHQpOyB9Ci0KLSAgdGVt
cGxhdGUgPEdURVNUXzEwX1RZUEVOQU1FU18oVSk+Ci0gIHR1cGxlJiBvcGVyYXRvcj0oY29uc3Qg
R1RFU1RfMTBfVFVQTEVfKFUpJiB0KSB7Ci0gICAgcmV0dXJuIENvcHlGcm9tKHQpOwotICB9Ci0K
LSAgR1RFU1RfREVDTEFSRV9UVVBMRV9BU19GUklFTkRfCi0KLSAgdGVtcGxhdGUgPEdURVNUXzEw
X1RZUEVOQU1FU18oVSk+Ci0gIHR1cGxlJiBDb3B5RnJvbShjb25zdCBHVEVTVF8xMF9UVVBMRV8o
VSkmIHQpIHsKLSAgICBmMF8gPSB0LmYwXzsKLSAgICBmMV8gPSB0LmYxXzsKLSAgICBmMl8gPSB0
LmYyXzsKLSAgICBmM18gPSB0LmYzXzsKLSAgICBmNF8gPSB0LmY0XzsKLSAgICBmNV8gPSB0LmY1
XzsKLSAgICBmNl8gPSB0LmY2XzsKLSAgICBmN18gPSB0LmY3XzsKLSAgICBmOF8gPSB0LmY4XzsK
LSAgICBmOV8gPSB0LmY5XzsKLSAgICByZXR1cm4gKnRoaXM7Ci0gIH0KLQotICBUMCBmMF87Ci0g
IFQxIGYxXzsKLSAgVDIgZjJfOwotICBUMyBmM187Ci0gIFQ0IGY0XzsKLSAgVDUgZjVfOwotICBU
NiBmNl87Ci0gIFQ3IGY3XzsKLSAgVDggZjhfOwotICBUOSBmOV87Ci19OwotCi0vLyA2LjEuMy4y
IFR1cGxlIGNyZWF0aW9uIGZ1bmN0aW9ucy4KLQotLy8gS25vd24gbGltaXRhdGlvbnM6IHdlIGRv
bid0IHN1cHBvcnQgcGFzc2luZyBhbgotLy8gc3RkOjp0cjE6OnJlZmVyZW5jZV93cmFwcGVyPFQ+
IHRvIG1ha2VfdHVwbGUoKS4gIEFuZCB3ZSBkb24ndAotLy8gaW1wbGVtZW50IHRpZSgpLgotCi1p
bmxpbmUgdHVwbGU8PiBtYWtlX3R1cGxlKCkgeyByZXR1cm4gdHVwbGU8PigpOyB9Ci0KLXRlbXBs
YXRlIDxHVEVTVF8xX1RZUEVOQU1FU18oVCk+Ci1pbmxpbmUgR1RFU1RfMV9UVVBMRV8oVCkgbWFr
ZV90dXBsZShjb25zdCBUMCYgZjApIHsKLSAgcmV0dXJuIEdURVNUXzFfVFVQTEVfKFQpKGYwKTsK
LX0KLQotdGVtcGxhdGUgPEdURVNUXzJfVFlQRU5BTUVTXyhUKT4KLWlubGluZSBHVEVTVF8yX1RV
UExFXyhUKSBtYWtlX3R1cGxlKGNvbnN0IFQwJiBmMCwgY29uc3QgVDEmIGYxKSB7Ci0gIHJldHVy
biBHVEVTVF8yX1RVUExFXyhUKShmMCwgZjEpOwotfQotCi10ZW1wbGF0ZSA8R1RFU1RfM19UWVBF
TkFNRVNfKFQpPgotaW5saW5lIEdURVNUXzNfVFVQTEVfKFQpIG1ha2VfdHVwbGUoY29uc3QgVDAm
IGYwLCBjb25zdCBUMSYgZjEsIGNvbnN0IFQyJiBmMikgewotICByZXR1cm4gR1RFU1RfM19UVVBM
RV8oVCkoZjAsIGYxLCBmMik7Ci19Ci0KLXRlbXBsYXRlIDxHVEVTVF80X1RZUEVOQU1FU18oVCk+
Ci1pbmxpbmUgR1RFU1RfNF9UVVBMRV8oVCkgbWFrZV90dXBsZShjb25zdCBUMCYgZjAsIGNvbnN0
IFQxJiBmMSwgY29uc3QgVDImIGYyLAotICAgIGNvbnN0IFQzJiBmMykgewotICByZXR1cm4gR1RF
U1RfNF9UVVBMRV8oVCkoZjAsIGYxLCBmMiwgZjMpOwotfQotCi10ZW1wbGF0ZSA8R1RFU1RfNV9U
WVBFTkFNRVNfKFQpPgotaW5saW5lIEdURVNUXzVfVFVQTEVfKFQpIG1ha2VfdHVwbGUoY29uc3Qg
VDAmIGYwLCBjb25zdCBUMSYgZjEsIGNvbnN0IFQyJiBmMiwKLSAgICBjb25zdCBUMyYgZjMsIGNv
bnN0IFQ0JiBmNCkgewotICByZXR1cm4gR1RFU1RfNV9UVVBMRV8oVCkoZjAsIGYxLCBmMiwgZjMs
IGY0KTsKLX0KLQotdGVtcGxhdGUgPEdURVNUXzZfVFlQRU5BTUVTXyhUKT4KLWlubGluZSBHVEVT
VF82X1RVUExFXyhUKSBtYWtlX3R1cGxlKGNvbnN0IFQwJiBmMCwgY29uc3QgVDEmIGYxLCBjb25z
dCBUMiYgZjIsCi0gICAgY29uc3QgVDMmIGYzLCBjb25zdCBUNCYgZjQsIGNvbnN0IFQ1JiBmNSkg
ewotICByZXR1cm4gR1RFU1RfNl9UVVBMRV8oVCkoZjAsIGYxLCBmMiwgZjMsIGY0LCBmNSk7Ci19
Ci0KLXRlbXBsYXRlIDxHVEVTVF83X1RZUEVOQU1FU18oVCk+Ci1pbmxpbmUgR1RFU1RfN19UVVBM
RV8oVCkgbWFrZV90dXBsZShjb25zdCBUMCYgZjAsIGNvbnN0IFQxJiBmMSwgY29uc3QgVDImIGYy
LAotICAgIGNvbnN0IFQzJiBmMywgY29uc3QgVDQmIGY0LCBjb25zdCBUNSYgZjUsIGNvbnN0IFQ2
JiBmNikgewotICByZXR1cm4gR1RFU1RfN19UVVBMRV8oVCkoZjAsIGYxLCBmMiwgZjMsIGY0LCBm
NSwgZjYpOwotfQotCi10ZW1wbGF0ZSA8R1RFU1RfOF9UWVBFTkFNRVNfKFQpPgotaW5saW5lIEdU
RVNUXzhfVFVQTEVfKFQpIG1ha2VfdHVwbGUoY29uc3QgVDAmIGYwLCBjb25zdCBUMSYgZjEsIGNv
bnN0IFQyJiBmMiwKLSAgICBjb25zdCBUMyYgZjMsIGNvbnN0IFQ0JiBmNCwgY29uc3QgVDUmIGY1
LCBjb25zdCBUNiYgZjYsIGNvbnN0IFQ3JiBmNykgewotICByZXR1cm4gR1RFU1RfOF9UVVBMRV8o
VCkoZjAsIGYxLCBmMiwgZjMsIGY0LCBmNSwgZjYsIGY3KTsKLX0KLQotdGVtcGxhdGUgPEdURVNU
XzlfVFlQRU5BTUVTXyhUKT4KLWlubGluZSBHVEVTVF85X1RVUExFXyhUKSBtYWtlX3R1cGxlKGNv
bnN0IFQwJiBmMCwgY29uc3QgVDEmIGYxLCBjb25zdCBUMiYgZjIsCi0gICAgY29uc3QgVDMmIGYz
LCBjb25zdCBUNCYgZjQsIGNvbnN0IFQ1JiBmNSwgY29uc3QgVDYmIGY2LCBjb25zdCBUNyYgZjcs
Ci0gICAgY29uc3QgVDgmIGY4KSB7Ci0gIHJldHVybiBHVEVTVF85X1RVUExFXyhUKShmMCwgZjEs
IGYyLCBmMywgZjQsIGY1LCBmNiwgZjcsIGY4KTsKLX0KLQotdGVtcGxhdGUgPEdURVNUXzEwX1RZ
UEVOQU1FU18oVCk+Ci1pbmxpbmUgR1RFU1RfMTBfVFVQTEVfKFQpIG1ha2VfdHVwbGUoY29uc3Qg
VDAmIGYwLCBjb25zdCBUMSYgZjEsIGNvbnN0IFQyJiBmMiwKLSAgICBjb25zdCBUMyYgZjMsIGNv
bnN0IFQ0JiBmNCwgY29uc3QgVDUmIGY1LCBjb25zdCBUNiYgZjYsIGNvbnN0IFQ3JiBmNywKLSAg
ICBjb25zdCBUOCYgZjgsIGNvbnN0IFQ5JiBmOSkgewotICByZXR1cm4gR1RFU1RfMTBfVFVQTEVf
KFQpKGYwLCBmMSwgZjIsIGYzLCBmNCwgZjUsIGY2LCBmNywgZjgsIGY5KTsKLX0KLQotLy8gNi4x
LjMuMyBUdXBsZSBoZWxwZXIgY2xhc3Nlcy4KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFR1cGxlPiBz
dHJ1Y3QgdHVwbGVfc2l6ZTsKLQotdGVtcGxhdGUgPEdURVNUXzBfVFlQRU5BTUVTXyhUKT4KLXN0
cnVjdCB0dXBsZV9zaXplPEdURVNUXzBfVFVQTEVfKFQpID4gewotICBzdGF0aWMgY29uc3QgaW50
IHZhbHVlID0gMDsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xX1RZUEVOQU1FU18oVCk+Ci1zdHJ1
Y3QgdHVwbGVfc2l6ZTxHVEVTVF8xX1RVUExFXyhUKSA+IHsKLSAgc3RhdGljIGNvbnN0IGludCB2
YWx1ZSA9IDE7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfMl9UWVBFTkFNRVNfKFQpPgotc3RydWN0
IHR1cGxlX3NpemU8R1RFU1RfMl9UVVBMRV8oVCkgPiB7Ci0gIHN0YXRpYyBjb25zdCBpbnQgdmFs
dWUgPSAyOwotfTsKLQotdGVtcGxhdGUgPEdURVNUXzNfVFlQRU5BTUVTXyhUKT4KLXN0cnVjdCB0
dXBsZV9zaXplPEdURVNUXzNfVFVQTEVfKFQpID4gewotICBzdGF0aWMgY29uc3QgaW50IHZhbHVl
ID0gMzsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF80X1RZUEVOQU1FU18oVCk+Ci1zdHJ1Y3QgdHVw
bGVfc2l6ZTxHVEVTVF80X1RVUExFXyhUKSA+IHsKLSAgc3RhdGljIGNvbnN0IGludCB2YWx1ZSA9
IDQ7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfNV9UWVBFTkFNRVNfKFQpPgotc3RydWN0IHR1cGxl
X3NpemU8R1RFU1RfNV9UVVBMRV8oVCkgPiB7Ci0gIHN0YXRpYyBjb25zdCBpbnQgdmFsdWUgPSA1
OwotfTsKLQotdGVtcGxhdGUgPEdURVNUXzZfVFlQRU5BTUVTXyhUKT4KLXN0cnVjdCB0dXBsZV9z
aXplPEdURVNUXzZfVFVQTEVfKFQpID4gewotICBzdGF0aWMgY29uc3QgaW50IHZhbHVlID0gNjsK
LX07Ci0KLXRlbXBsYXRlIDxHVEVTVF83X1RZUEVOQU1FU18oVCk+Ci1zdHJ1Y3QgdHVwbGVfc2l6
ZTxHVEVTVF83X1RVUExFXyhUKSA+IHsKLSAgc3RhdGljIGNvbnN0IGludCB2YWx1ZSA9IDc7Ci19
OwotCi10ZW1wbGF0ZSA8R1RFU1RfOF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IHR1cGxlX3NpemU8
R1RFU1RfOF9UVVBMRV8oVCkgPiB7Ci0gIHN0YXRpYyBjb25zdCBpbnQgdmFsdWUgPSA4OwotfTsK
LQotdGVtcGxhdGUgPEdURVNUXzlfVFlQRU5BTUVTXyhUKT4KLXN0cnVjdCB0dXBsZV9zaXplPEdU
RVNUXzlfVFVQTEVfKFQpID4gewotICBzdGF0aWMgY29uc3QgaW50IHZhbHVlID0gOTsKLX07Ci0K
LXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IHR1cGxlX3NpemU8R1RF
U1RfMTBfVFVQTEVfKFQpID4gewotICBzdGF0aWMgY29uc3QgaW50IHZhbHVlID0gMTA7Ci19Owot
Ci10ZW1wbGF0ZSA8aW50IGssIGNsYXNzIFR1cGxlPgotc3RydWN0IHR1cGxlX2VsZW1lbnQgewot
ICB0eXBlZGVmIHR5cGVuYW1lIGd0ZXN0X2ludGVybmFsOjpUdXBsZUVsZW1lbnQ8Ci0gICAgICBr
IDwgKHR1cGxlX3NpemU8VHVwbGU+Ojp2YWx1ZSksIGssIFR1cGxlPjo6dHlwZSB0eXBlOwotfTsK
LQotI2RlZmluZSBHVEVTVF9UVVBMRV9FTEVNRU5UXyhrLCBUdXBsZSkgdHlwZW5hbWUgdHVwbGVf
ZWxlbWVudDxrLCBUdXBsZSA+Ojp0eXBlCi0KLS8vIDYuMS4zLjQgRWxlbWVudCBhY2Nlc3MuCi0K
LW5hbWVzcGFjZSBndGVzdF9pbnRlcm5hbCB7Ci0KLXRlbXBsYXRlIDw+Ci1jbGFzcyBHZXQ8MD4g
ewotIHB1YmxpYzoKLSAgdGVtcGxhdGUgPGNsYXNzIFR1cGxlPgotICBzdGF0aWMgR1RFU1RfQURE
X1JFRl8oR1RFU1RfVFVQTEVfRUxFTUVOVF8oMCwgVHVwbGUpKQotICBGaWVsZChUdXBsZSYgdCkg
eyByZXR1cm4gdC5mMF87IH0gIC8vIE5PTElOVAotCi0gIHRlbXBsYXRlIDxjbGFzcyBUdXBsZT4K
LSAgc3RhdGljIEdURVNUX0JZX1JFRl8oR1RFU1RfVFVQTEVfRUxFTUVOVF8oMCwgVHVwbGUpKQot
ICBDb25zdEZpZWxkKGNvbnN0IFR1cGxlJiB0KSB7IHJldHVybiB0LmYwXzsgfQotfTsKLQotdGVt
cGxhdGUgPD4KLWNsYXNzIEdldDwxPiB7Ci0gcHVibGljOgotICB0ZW1wbGF0ZSA8Y2xhc3MgVHVw
bGU+Ci0gIHN0YXRpYyBHVEVTVF9BRERfUkVGXyhHVEVTVF9UVVBMRV9FTEVNRU5UXygxLCBUdXBs
ZSkpCi0gIEZpZWxkKFR1cGxlJiB0KSB7IHJldHVybiB0LmYxXzsgfSAgLy8gTk9MSU5UCi0KLSAg
dGVtcGxhdGUgPGNsYXNzIFR1cGxlPgotICBzdGF0aWMgR1RFU1RfQllfUkVGXyhHVEVTVF9UVVBM
RV9FTEVNRU5UXygxLCBUdXBsZSkpCi0gIENvbnN0RmllbGQoY29uc3QgVHVwbGUmIHQpIHsgcmV0
dXJuIHQuZjFfOyB9Ci19OwotCi10ZW1wbGF0ZSA8PgotY2xhc3MgR2V0PDI+IHsKLSBwdWJsaWM6
Ci0gIHRlbXBsYXRlIDxjbGFzcyBUdXBsZT4KLSAgc3RhdGljIEdURVNUX0FERF9SRUZfKEdURVNU
X1RVUExFX0VMRU1FTlRfKDIsIFR1cGxlKSkKLSAgRmllbGQoVHVwbGUmIHQpIHsgcmV0dXJuIHQu
ZjJfOyB9ICAvLyBOT0xJTlQKLQotICB0ZW1wbGF0ZSA8Y2xhc3MgVHVwbGU+Ci0gIHN0YXRpYyBH
VEVTVF9CWV9SRUZfKEdURVNUX1RVUExFX0VMRU1FTlRfKDIsIFR1cGxlKSkKLSAgQ29uc3RGaWVs
ZChjb25zdCBUdXBsZSYgdCkgeyByZXR1cm4gdC5mMl87IH0KLX07Ci0KLXRlbXBsYXRlIDw+Ci1j
bGFzcyBHZXQ8Mz4gewotIHB1YmxpYzoKLSAgdGVtcGxhdGUgPGNsYXNzIFR1cGxlPgotICBzdGF0
aWMgR1RFU1RfQUREX1JFRl8oR1RFU1RfVFVQTEVfRUxFTUVOVF8oMywgVHVwbGUpKQotICBGaWVs
ZChUdXBsZSYgdCkgeyByZXR1cm4gdC5mM187IH0gIC8vIE5PTElOVAotCi0gIHRlbXBsYXRlIDxj
bGFzcyBUdXBsZT4KLSAgc3RhdGljIEdURVNUX0JZX1JFRl8oR1RFU1RfVFVQTEVfRUxFTUVOVF8o
MywgVHVwbGUpKQotICBDb25zdEZpZWxkKGNvbnN0IFR1cGxlJiB0KSB7IHJldHVybiB0LmYzXzsg
fQotfTsKLQotdGVtcGxhdGUgPD4KLWNsYXNzIEdldDw0PiB7Ci0gcHVibGljOgotICB0ZW1wbGF0
ZSA8Y2xhc3MgVHVwbGU+Ci0gIHN0YXRpYyBHVEVTVF9BRERfUkVGXyhHVEVTVF9UVVBMRV9FTEVN
RU5UXyg0LCBUdXBsZSkpCi0gIEZpZWxkKFR1cGxlJiB0KSB7IHJldHVybiB0LmY0XzsgfSAgLy8g
Tk9MSU5UCi0KLSAgdGVtcGxhdGUgPGNsYXNzIFR1cGxlPgotICBzdGF0aWMgR1RFU1RfQllfUkVG
XyhHVEVTVF9UVVBMRV9FTEVNRU5UXyg0LCBUdXBsZSkpCi0gIENvbnN0RmllbGQoY29uc3QgVHVw
bGUmIHQpIHsgcmV0dXJuIHQuZjRfOyB9Ci19OwotCi10ZW1wbGF0ZSA8PgotY2xhc3MgR2V0PDU+
IHsKLSBwdWJsaWM6Ci0gIHRlbXBsYXRlIDxjbGFzcyBUdXBsZT4KLSAgc3RhdGljIEdURVNUX0FE
RF9SRUZfKEdURVNUX1RVUExFX0VMRU1FTlRfKDUsIFR1cGxlKSkKLSAgRmllbGQoVHVwbGUmIHQp
IHsgcmV0dXJuIHQuZjVfOyB9ICAvLyBOT0xJTlQKLQotICB0ZW1wbGF0ZSA8Y2xhc3MgVHVwbGU+
Ci0gIHN0YXRpYyBHVEVTVF9CWV9SRUZfKEdURVNUX1RVUExFX0VMRU1FTlRfKDUsIFR1cGxlKSkK
LSAgQ29uc3RGaWVsZChjb25zdCBUdXBsZSYgdCkgeyByZXR1cm4gdC5mNV87IH0KLX07Ci0KLXRl
bXBsYXRlIDw+Ci1jbGFzcyBHZXQ8Nj4gewotIHB1YmxpYzoKLSAgdGVtcGxhdGUgPGNsYXNzIFR1
cGxlPgotICBzdGF0aWMgR1RFU1RfQUREX1JFRl8oR1RFU1RfVFVQTEVfRUxFTUVOVF8oNiwgVHVw
bGUpKQotICBGaWVsZChUdXBsZSYgdCkgeyByZXR1cm4gdC5mNl87IH0gIC8vIE5PTElOVAotCi0g
IHRlbXBsYXRlIDxjbGFzcyBUdXBsZT4KLSAgc3RhdGljIEdURVNUX0JZX1JFRl8oR1RFU1RfVFVQ
TEVfRUxFTUVOVF8oNiwgVHVwbGUpKQotICBDb25zdEZpZWxkKGNvbnN0IFR1cGxlJiB0KSB7IHJl
dHVybiB0LmY2XzsgfQotfTsKLQotdGVtcGxhdGUgPD4KLWNsYXNzIEdldDw3PiB7Ci0gcHVibGlj
OgotICB0ZW1wbGF0ZSA8Y2xhc3MgVHVwbGU+Ci0gIHN0YXRpYyBHVEVTVF9BRERfUkVGXyhHVEVT
VF9UVVBMRV9FTEVNRU5UXyg3LCBUdXBsZSkpCi0gIEZpZWxkKFR1cGxlJiB0KSB7IHJldHVybiB0
LmY3XzsgfSAgLy8gTk9MSU5UCi0KLSAgdGVtcGxhdGUgPGNsYXNzIFR1cGxlPgotICBzdGF0aWMg
R1RFU1RfQllfUkVGXyhHVEVTVF9UVVBMRV9FTEVNRU5UXyg3LCBUdXBsZSkpCi0gIENvbnN0Rmll
bGQoY29uc3QgVHVwbGUmIHQpIHsgcmV0dXJuIHQuZjdfOyB9Ci19OwotCi10ZW1wbGF0ZSA8Pgot
Y2xhc3MgR2V0PDg+IHsKLSBwdWJsaWM6Ci0gIHRlbXBsYXRlIDxjbGFzcyBUdXBsZT4KLSAgc3Rh
dGljIEdURVNUX0FERF9SRUZfKEdURVNUX1RVUExFX0VMRU1FTlRfKDgsIFR1cGxlKSkKLSAgRmll
bGQoVHVwbGUmIHQpIHsgcmV0dXJuIHQuZjhfOyB9ICAvLyBOT0xJTlQKLQotICB0ZW1wbGF0ZSA8
Y2xhc3MgVHVwbGU+Ci0gIHN0YXRpYyBHVEVTVF9CWV9SRUZfKEdURVNUX1RVUExFX0VMRU1FTlRf
KDgsIFR1cGxlKSkKLSAgQ29uc3RGaWVsZChjb25zdCBUdXBsZSYgdCkgeyByZXR1cm4gdC5mOF87
IH0KLX07Ci0KLXRlbXBsYXRlIDw+Ci1jbGFzcyBHZXQ8OT4gewotIHB1YmxpYzoKLSAgdGVtcGxh
dGUgPGNsYXNzIFR1cGxlPgotICBzdGF0aWMgR1RFU1RfQUREX1JFRl8oR1RFU1RfVFVQTEVfRUxF
TUVOVF8oOSwgVHVwbGUpKQotICBGaWVsZChUdXBsZSYgdCkgeyByZXR1cm4gdC5mOV87IH0gIC8v
IE5PTElOVAotCi0gIHRlbXBsYXRlIDxjbGFzcyBUdXBsZT4KLSAgc3RhdGljIEdURVNUX0JZX1JF
Rl8oR1RFU1RfVFVQTEVfRUxFTUVOVF8oOSwgVHVwbGUpKQotICBDb25zdEZpZWxkKGNvbnN0IFR1
cGxlJiB0KSB7IHJldHVybiB0LmY5XzsgfQotfTsKLQotfSAgLy8gbmFtZXNwYWNlIGd0ZXN0X2lu
dGVybmFsCi0KLXRlbXBsYXRlIDxpbnQgaywgR1RFU1RfMTBfVFlQRU5BTUVTXyhUKT4KLUdURVNU
X0FERF9SRUZfKEdURVNUX1RVUExFX0VMRU1FTlRfKGssIEdURVNUXzEwX1RVUExFXyhUKSkpCi1n
ZXQoR1RFU1RfMTBfVFVQTEVfKFQpJiB0KSB7Ci0gIHJldHVybiBndGVzdF9pbnRlcm5hbDo6R2V0
PGs+OjpGaWVsZCh0KTsKLX0KLQotdGVtcGxhdGUgPGludCBrLCBHVEVTVF8xMF9UWVBFTkFNRVNf
KFQpPgotR1RFU1RfQllfUkVGXyhHVEVTVF9UVVBMRV9FTEVNRU5UXyhrLCAgR1RFU1RfMTBfVFVQ
TEVfKFQpKSkKLWdldChjb25zdCBHVEVTVF8xMF9UVVBMRV8oVCkmIHQpIHsKLSAgcmV0dXJuIGd0
ZXN0X2ludGVybmFsOjpHZXQ8az46OkNvbnN0RmllbGQodCk7Ci19Ci0KLS8vIDYuMS4zLjUgUmVs
YXRpb25hbCBvcGVyYXRvcnMKLQotLy8gV2Ugb25seSBpbXBsZW1lbnQgPT0gYW5kICE9LCBhcyB3
ZSBkb24ndCBoYXZlIGEgbmVlZCBmb3IgdGhlIHJlc3QgeWV0LgotCi1uYW1lc3BhY2UgZ3Rlc3Rf
aW50ZXJuYWwgewotCi0vLyBTYW1lU2l6ZVR1cGxlUHJlZml4Q29tcGFyYXRvcjxrLCBrPjo6RXEo
dDEsIHQyKSByZXR1cm5zIHRydWUgaWYgdGhlCi0vLyBmaXJzdCBrIGZpZWxkcyBvZiB0MSBlcXVh
bHMgdGhlIGZpcnN0IGsgZmllbGRzIG9mIHQyLgotLy8gU2FtZVNpemVUdXBsZVByZWZpeENvbXBh
cmF0b3IoazEsIGsyKSB3b3VsZCBiZSBhIGNvbXBpbGVyIGVycm9yIGlmCi0vLyBrMSAhPSBrMi4K
LXRlbXBsYXRlIDxpbnQga1NpemUxLCBpbnQga1NpemUyPgotc3RydWN0IFNhbWVTaXplVHVwbGVQ
cmVmaXhDb21wYXJhdG9yOwotCi10ZW1wbGF0ZSA8Pgotc3RydWN0IFNhbWVTaXplVHVwbGVQcmVm
aXhDb21wYXJhdG9yPDAsIDA+IHsKLSAgdGVtcGxhdGUgPGNsYXNzIFR1cGxlMSwgY2xhc3MgVHVw
bGUyPgotICBzdGF0aWMgYm9vbCBFcShjb25zdCBUdXBsZTEmIC8qIHQxICovLCBjb25zdCBUdXBs
ZTImIC8qIHQyICovKSB7Ci0gICAgcmV0dXJuIHRydWU7Ci0gIH0KLX07Ci0KLXRlbXBsYXRlIDxp
bnQgaz4KLXN0cnVjdCBTYW1lU2l6ZVR1cGxlUHJlZml4Q29tcGFyYXRvcjxrLCBrPiB7Ci0gIHRl
bXBsYXRlIDxjbGFzcyBUdXBsZTEsIGNsYXNzIFR1cGxlMj4KLSAgc3RhdGljIGJvb2wgRXEoY29u
c3QgVHVwbGUxJiB0MSwgY29uc3QgVHVwbGUyJiB0MikgewotICAgIHJldHVybiBTYW1lU2l6ZVR1
cGxlUHJlZml4Q29tcGFyYXRvcjxrIC0gMSwgayAtIDE+OjpFcSh0MSwgdDIpICYmCi0gICAgICAg
IDo6c3RkOjp0cjE6OmdldDxrIC0gMT4odDEpID09IDo6c3RkOjp0cjE6OmdldDxrIC0gMT4odDIp
OwotICB9Ci19OwotCi19ICAvLyBuYW1lc3BhY2UgZ3Rlc3RfaW50ZXJuYWwKLQotdGVtcGxhdGUg
PEdURVNUXzEwX1RZUEVOQU1FU18oVCksIEdURVNUXzEwX1RZUEVOQU1FU18oVSk+Ci1pbmxpbmUg
Ym9vbCBvcGVyYXRvcj09KGNvbnN0IEdURVNUXzEwX1RVUExFXyhUKSYgdCwKLSAgICAgICAgICAg
ICAgICAgICAgICAgY29uc3QgR1RFU1RfMTBfVFVQTEVfKFUpJiB1KSB7Ci0gIHJldHVybiBndGVz
dF9pbnRlcm5hbDo6U2FtZVNpemVUdXBsZVByZWZpeENvbXBhcmF0b3I8Ci0gICAgICB0dXBsZV9z
aXplPEdURVNUXzEwX1RVUExFXyhUKSA+Ojp2YWx1ZSwKLSAgICAgIHR1cGxlX3NpemU8R1RFU1Rf
MTBfVFVQTEVfKFUpID46OnZhbHVlPjo6RXEodCwgdSk7Ci19Ci0KLXRlbXBsYXRlIDxHVEVTVF8x
MF9UWVBFTkFNRVNfKFQpLCBHVEVTVF8xMF9UWVBFTkFNRVNfKFUpPgotaW5saW5lIGJvb2wgb3Bl
cmF0b3IhPShjb25zdCBHVEVTVF8xMF9UVVBMRV8oVCkmIHQsCi0gICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IEdURVNUXzEwX1RVUExFXyhVKSYgdSkgeyByZXR1cm4gISh0ID09IHUpOyB9Ci0K
LS8vIDYuMS40IFBhaXJzLgotLy8gVW5pbXBsZW1lbnRlZC4KLQotfSAgLy8gbmFtZXNwYWNlIHRy
MQotfSAgLy8gbmFtZXNwYWNlIHN0ZAotCi0jdW5kZWYgR1RFU1RfMF9UVVBMRV8KLSN1bmRlZiBH
VEVTVF8xX1RVUExFXwotI3VuZGVmIEdURVNUXzJfVFVQTEVfCi0jdW5kZWYgR1RFU1RfM19UVVBM
RV8KLSN1bmRlZiBHVEVTVF80X1RVUExFXwotI3VuZGVmIEdURVNUXzVfVFVQTEVfCi0jdW5kZWYg
R1RFU1RfNl9UVVBMRV8KLSN1bmRlZiBHVEVTVF83X1RVUExFXwotI3VuZGVmIEdURVNUXzhfVFVQ
TEVfCi0jdW5kZWYgR1RFU1RfOV9UVVBMRV8KLSN1bmRlZiBHVEVTVF8xMF9UVVBMRV8KLQotI3Vu
ZGVmIEdURVNUXzBfVFlQRU5BTUVTXwotI3VuZGVmIEdURVNUXzFfVFlQRU5BTUVTXwotI3VuZGVm
IEdURVNUXzJfVFlQRU5BTUVTXwotI3VuZGVmIEdURVNUXzNfVFlQRU5BTUVTXwotI3VuZGVmIEdU
RVNUXzRfVFlQRU5BTUVTXwotI3VuZGVmIEdURVNUXzVfVFlQRU5BTUVTXwotI3VuZGVmIEdURVNU
XzZfVFlQRU5BTUVTXwotI3VuZGVmIEdURVNUXzdfVFlQRU5BTUVTXwotI3VuZGVmIEdURVNUXzhf
VFlQRU5BTUVTXwotI3VuZGVmIEdURVNUXzlfVFlQRU5BTUVTXwotI3VuZGVmIEdURVNUXzEwX1RZ
UEVOQU1FU18KLQotI3VuZGVmIEdURVNUX0RFQ0xBUkVfVFVQTEVfQVNfRlJJRU5EXwotI3VuZGVm
IEdURVNUX0JZX1JFRl8KLSN1bmRlZiBHVEVTVF9BRERfUkVGXwotI3VuZGVmIEdURVNUX1RVUExF
X0VMRU1FTlRfCi0KLSNlbmRpZiAgLy8gR1RFU1RfSU5DTFVERV9HVEVTVF9JTlRFUk5BTF9HVEVT
VF9UVVBMRV9IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0
L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LXR1cGxlLmgucHVtcCBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVz
dC10dXBsZS5oLnB1bXAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGJiNjI2ZTA0OWYw
ODc4MGZmY2U5NmQ0ODUyY2I4ZWQ1ZDNlZjVmMTEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3Ny
Yy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LXR1cGxlLmgucHVtcAorKysgL2Rldi9udWxs
CkBAIC0xLDM0OCArMCwwIEBACi0kJCAtKi0gbW9kZTogYysrOyAtKi0KLSR2YXIgbiA9IDEwICAk
JCBNYXhpbXVtIG51bWJlciBvZiB0dXBsZSBmaWVsZHMgd2Ugd2FudCB0byBzdXBwb3J0LgotJCQg
VGhpcyBtZXRhIGNvbW1lbnQgZml4ZXMgYXV0by1pbmRlbnRhdGlvbiBpbiBFbWFjcy4gfX0KLS8v
IENvcHlyaWdodCAyMDA5IEdvb2dsZSBJbmMuCi0vLyBBbGwgUmlnaHRzIFJlc2VydmVkLgotLy8K
LS8vIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAotLy8gbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQotLy8gbWV0OgotLy8KLS8vICAgICAqIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0Ci0vLyBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCi0vLyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlCi0vLyBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCi0vLyBpbiB0aGUgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0vLyBkaXN0
cmlidXRpb24uCi0vLyAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0
aGUgbmFtZXMgb2YgaXRzCi0vLyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBv
ciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQotLy8gdGhpcyBzb2Z0d2FyZSB3aXRob3V0
IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLS8vCi0vLyBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0v
LyAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVAotLy8gTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0vLyBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAotLy8gT1dORVIgT1Ig
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsCi0vLyBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UCi0vLyBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLS8vIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotLy8gVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVAotLy8gKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0vLyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotCi0KLS8vIEltcGxlbWVu
dHMgYSBzdWJzZXQgb2YgVFIxIHR1cGxlIG5lZWRlZCBieSBHb29nbGUgVGVzdCBhbmQgR29vZ2xl
IE1vY2suCi0KLS8vIEdPT0dMRVRFU1RfQ00wMDAxIERPIE5PVCBERUxFVEUKLQotI2lmbmRlZiBH
VEVTVF9JTkNMVURFX0dURVNUX0lOVEVSTkFMX0dURVNUX1RVUExFX0hfCi0jZGVmaW5lIEdURVNU
X0lOQ0xVREVfR1RFU1RfSU5URVJOQUxfR1RFU1RfVFVQTEVfSF8KLQotI2luY2x1ZGUgPHV0aWxp
dHk+ICAvLyBGb3IgOjpzdGQ6OnBhaXIuCi0KLS8vIFRoZSBjb21waWxlciB1c2VkIGluIFN5bWJp
YW4gaGFzIGEgYnVnIHRoYXQgcHJldmVudHMgdXMgZnJvbSBkZWNsYXJpbmcgdGhlCi0vLyB0dXBs
ZSB0ZW1wbGF0ZSBhcyBhIGZyaWVuZCAoaXQgY29tcGxhaW5zIHRoYXQgdHVwbGUgaXMgcmVkZWZp
bmVkKS4gIFRoaXMKLS8vIGJ5cGFzc2VzIHRoZSBidWcgYnkgZGVjbGFyaW5nIHRoZSBtZW1iZXJz
IHRoYXQgc2hvdWxkIG90aGVyd2lzZSBiZQotLy8gcHJpdmF0ZSBhcyBwdWJsaWMuCi0vLyBTdW4g
U3R1ZGlvIHZlcnNpb25zIDwgMTIgYWxzbyBoYXZlIHRoZSBhYm92ZSBidWcuCi0jaWYgZGVmaW5l
ZChfX1NZTUJJQU4zMl9fKSB8fCAoZGVmaW5lZChfX1NVTlBST19DQykgJiYgX19TVU5QUk9fQ0Mg
PCAweDU5MCkKLSMgZGVmaW5lIEdURVNUX0RFQ0xBUkVfVFVQTEVfQVNfRlJJRU5EXyBwdWJsaWM6
Ci0jZWxzZQotIyBkZWZpbmUgR1RFU1RfREVDTEFSRV9UVVBMRV9BU19GUklFTkRfIFwKLSAgICB0
ZW1wbGF0ZSA8R1RFU1RfJChuKV9UWVBFTkFNRVNfKFUpPiBmcmllbmQgY2xhc3MgdHVwbGU7IFwK
LSAgIHByaXZhdGU6Ci0jZW5kaWYKLQotLy8gVmlzdWFsIFN0dWRpbyAyMDEwLCAyMDEyLCBhbmQg
MjAxMyBkZWZpbmUgc3ltYm9scyBpbiBzdGQ6OnRyMSB0aGF0IGNvbmZsaWN0Ci0vLyB3aXRoIG91
ciBvd24gZGVmaW5pdGlvbnMuIFRoZXJlZm9yZSB1c2luZyBvdXIgb3duIHR1cGxlIGRvZXMgbm90
IHdvcmsgb24KLS8vIHRob3NlIGNvbXBpbGVycy4KLSNpZiBkZWZpbmVkKF9NU0NfVkVSKSAmJiBf
TVNDX1ZFUiA+PSAxNjAwICAvKiAxNjAwIGlzIFZpc3VhbCBTdHVkaW8gMjAxMCAqLwotIyBlcnJv
ciAiZ3Rlc3QncyB0dXBsZSBkb2Vzbid0IGNvbXBpbGUgb24gVmlzdWFsIFN0dWRpbyAyMDEwIG9y
IGxhdGVyLiBcCi1HVEVTVF9VU0VfT1dOX1RSMV9UVVBMRSBtdXN0IGJlIHNldCB0byAwIG9uIHRo
b3NlIGNvbXBpbGVycy4iCi0jZW5kaWYKLQotCi0kcmFuZ2UgaSAwLi5uLTEKLSRyYW5nZSBqIDAu
Lm4KLSRyYW5nZSBrIDEuLm4KLS8vIEdURVNUX25fVFVQTEVfKFQpIGlzIHRoZSB0eXBlIG9mIGFu
IG4tdHVwbGUuCi0jZGVmaW5lIEdURVNUXzBfVFVQTEVfKFQpIHR1cGxlPD4KLQotJGZvciBrIFtb
Ci0kcmFuZ2UgbSAwLi5rLTEKLSRyYW5nZSBtMiBrLi5uLTEKLSNkZWZpbmUgR1RFU1RfJChrKV9U
VVBMRV8oVCkgdHVwbGU8JGZvciBtLCBbW1QjIyRtXV0kZm9yIG0yIFtbLCB2b2lkXV0+Ci0KLV1d
Ci0KLS8vIEdURVNUX25fVFlQRU5BTUVTXyhUKSBkZWNsYXJlcyBhIGxpc3Qgb2YgbiB0eXBlbmFt
ZXMuCi0KLSRmb3IgaiBbWwotJHJhbmdlIG0gMC4uai0xCi0jZGVmaW5lIEdURVNUXyQoailfVFlQ
RU5BTUVTXyhUKSAkZm9yIG0sIFtbdHlwZW5hbWUgVCMjJG1dXQotCi0KLV1dCi0KLS8vIEluIHRo
ZW9yeSwgZGVmaW5pbmcgc3R1ZmYgaW4gdGhlIDo6c3RkIG5hbWVzcGFjZSBpcyB1bmRlZmluZWQK
LS8vIGJlaGF2aW9yLiAgV2UgY2FuIGRvIHRoaXMgYXMgd2UgYXJlIHBsYXlpbmcgdGhlIHJvbGUg
b2YgYSBzdGFuZGFyZAotLy8gbGlicmFyeSB2ZW5kb3IuCi1uYW1lc3BhY2Ugc3RkIHsKLW5hbWVz
cGFjZSB0cjEgewotCi10ZW1wbGF0ZSA8JGZvciBpLCBbW3R5cGVuYW1lIFQkaSA9IHZvaWRdXT4K
LWNsYXNzIHR1cGxlOwotCi0vLyBBbnl0aGluZyBpbiBuYW1lc3BhY2UgZ3Rlc3RfaW50ZXJuYWwg
aXMgR29vZ2xlIFRlc3QncyBJTlRFUk5BTAotLy8gSU1QTEVNRU5UQVRJT04gREVUQUlMIGFuZCBN
VVNUIE5PVCBCRSBVU0VEIERJUkVDVExZIGluIHVzZXIgY29kZS4KLW5hbWVzcGFjZSBndGVzdF9p
bnRlcm5hbCB7Ci0KLS8vIEJ5UmVmPFQ+Ojp0eXBlIGlzIFQgaWYgVCBpcyBhIHJlZmVyZW5jZTsg
b3RoZXJ3aXNlIGl0J3MgY29uc3QgVCYuCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLXN0cnVjdCBC
eVJlZiB7IHR5cGVkZWYgY29uc3QgVCYgdHlwZTsgfTsgIC8vIE5PTElOVAotdGVtcGxhdGUgPHR5
cGVuYW1lIFQ+Ci1zdHJ1Y3QgQnlSZWY8VCY+IHsgdHlwZWRlZiBUJiB0eXBlOyB9OyAgLy8gTk9M
SU5UCi0KLS8vIEEgaGFuZHkgd3JhcHBlciBmb3IgQnlSZWYuCi0jZGVmaW5lIEdURVNUX0JZX1JF
Rl8oVCkgdHlwZW5hbWUgOjpzdGQ6OnRyMTo6Z3Rlc3RfaW50ZXJuYWw6OkJ5UmVmPFQ+Ojp0eXBl
Ci0KLS8vIEFkZFJlZjxUPjo6dHlwZSBpcyBUIGlmIFQgaXMgYSByZWZlcmVuY2U7IG90aGVyd2lz
ZSBpdCdzIFQmLiAgVGhpcwotLy8gaXMgdGhlIHNhbWUgYXMgdHIxOjphZGRfcmVmZXJlbmNlPFQ+
Ojp0eXBlLgotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1zdHJ1Y3QgQWRkUmVmIHsgdHlwZWRlZiBU
JiB0eXBlOyB9OyAgLy8gTk9MSU5UCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLXN0cnVjdCBBZGRS
ZWY8VCY+IHsgdHlwZWRlZiBUJiB0eXBlOyB9OyAgLy8gTk9MSU5UCi0KLS8vIEEgaGFuZHkgd3Jh
cHBlciBmb3IgQWRkUmVmLgotI2RlZmluZSBHVEVTVF9BRERfUkVGXyhUKSB0eXBlbmFtZSA6OnN0
ZDo6dHIxOjpndGVzdF9pbnRlcm5hbDo6QWRkUmVmPFQ+Ojp0eXBlCi0KLS8vIEEgaGVscGVyIGZv
ciBpbXBsZW1lbnRpbmcgZ2V0PGs+KCkuCi10ZW1wbGF0ZSA8aW50IGs+IGNsYXNzIEdldDsKLQot
Ly8gQSBoZWxwZXIgZm9yIGltcGxlbWVudGluZyB0dXBsZV9lbGVtZW50PGssIFQ+LiAga0luZGV4
VmFsaWQgaXMgdHJ1ZQotLy8gaWZmIGsgPCB0aGUgbnVtYmVyIG9mIGZpZWxkcyBpbiB0dXBsZSB0
eXBlIFQuCi10ZW1wbGF0ZSA8Ym9vbCBrSW5kZXhWYWxpZCwgaW50IGtJbmRleCwgY2xhc3MgVHVw
bGU+Ci1zdHJ1Y3QgVHVwbGVFbGVtZW50OwotCi0KLSRmb3IgaSBbWwotdGVtcGxhdGUgPEdURVNU
XyQobilfVFlQRU5BTUVTXyhUKT4KLXN0cnVjdCBUdXBsZUVsZW1lbnQ8dHJ1ZSwgJGksIEdURVNU
XyQobilfVFVQTEVfKFQpID4gewotICB0eXBlZGVmIFQkaSB0eXBlOwotfTsKLQotCi1dXQotfSAg
Ly8gbmFtZXNwYWNlIGd0ZXN0X2ludGVybmFsCi0KLXRlbXBsYXRlIDw+Ci1jbGFzcyB0dXBsZTw+
IHsKLSBwdWJsaWM6Ci0gIHR1cGxlKCkge30KLSAgdHVwbGUoY29uc3QgdHVwbGUmIC8qIHQgKi8p
ICB7fQotICB0dXBsZSYgb3BlcmF0b3I9KGNvbnN0IHR1cGxlJiAvKiB0ICovKSB7IHJldHVybiAq
dGhpczsgfQotfTsKLQotCi0kZm9yIGsgW1sKLSRyYW5nZSBtIDAuLmstMQotdGVtcGxhdGUgPEdU
RVNUXyQoaylfVFlQRU5BTUVTXyhUKT4KLWNsYXNzICRpZiBrIDwgbiBbW0dURVNUXyQoaylfVFVQ
TEVfKFQpXV0gJGVsc2UgW1t0dXBsZV1dIHsKLSBwdWJsaWM6Ci0gIHRlbXBsYXRlIDxpbnQgaz4g
ZnJpZW5kIGNsYXNzIGd0ZXN0X2ludGVybmFsOjpHZXQ7Ci0KLSAgdHVwbGUoKSA6ICRmb3IgbSwg
W1tmJChtKV8oKV1dIHt9Ci0KLSAgZXhwbGljaXQgdHVwbGUoJGZvciBtLCBbW0dURVNUX0JZX1JF
Rl8oVCRtKSBmJG1dXSkgOiBbW11dCi0kZm9yIG0sIFtbZiQobSlfKGYkbSldXSB7fQotCi0gIHR1
cGxlKGNvbnN0IHR1cGxlJiB0KSA6ICRmb3IgbSwgW1tmJChtKV8odC5mJChtKV8pXV0ge30KLQot
ICB0ZW1wbGF0ZSA8R1RFU1RfJChrKV9UWVBFTkFNRVNfKFUpPgotICB0dXBsZShjb25zdCBHVEVT
VF8kKGspX1RVUExFXyhVKSYgdCkgOiAkZm9yIG0sIFtbZiQobSlfKHQuZiQobSlfKV1dIHt9Ci0K
LSRpZiBrID09IDIgW1sKLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFUwLCB0eXBlbmFtZSBVMT4KLSAg
dHVwbGUoY29uc3QgOjpzdGQ6OnBhaXI8VTAsIFUxPiYgcCkgOiBmMF8ocC5maXJzdCksIGYxXyhw
LnNlY29uZCkge30KLQotXV0KLQotICB0dXBsZSYgb3BlcmF0b3I9KGNvbnN0IHR1cGxlJiB0KSB7
IHJldHVybiBDb3B5RnJvbSh0KTsgfQotCi0gIHRlbXBsYXRlIDxHVEVTVF8kKGspX1RZUEVOQU1F
U18oVSk+Ci0gIHR1cGxlJiBvcGVyYXRvcj0oY29uc3QgR1RFU1RfJChrKV9UVVBMRV8oVSkmIHQp
IHsKLSAgICByZXR1cm4gQ29weUZyb20odCk7Ci0gIH0KLQotJGlmIGsgPT0gMiBbWwotICB0ZW1w
bGF0ZSA8dHlwZW5hbWUgVTAsIHR5cGVuYW1lIFUxPgotICB0dXBsZSYgb3BlcmF0b3I9KGNvbnN0
IDo6c3RkOjpwYWlyPFUwLCBVMT4mIHApIHsKLSAgICBmMF8gPSBwLmZpcnN0OwotICAgIGYxXyA9
IHAuc2Vjb25kOwotICAgIHJldHVybiAqdGhpczsKLSAgfQotCi1dXQotCi0gIEdURVNUX0RFQ0xB
UkVfVFVQTEVfQVNfRlJJRU5EXwotCi0gIHRlbXBsYXRlIDxHVEVTVF8kKGspX1RZUEVOQU1FU18o
VSk+Ci0gIHR1cGxlJiBDb3B5RnJvbShjb25zdCBHVEVTVF8kKGspX1RVUExFXyhVKSYgdCkgewot
Ci0kZm9yIG0gW1sKLSAgICBmJChtKV8gPSB0LmYkKG0pXzsKLQotXV0KLSAgICByZXR1cm4gKnRo
aXM7Ci0gIH0KLQotCi0kZm9yIG0gW1sKLSAgVCRtIGYkKG0pXzsKLQotXV0KLX07Ci0KLQotXV0K
LS8vIDYuMS4zLjIgVHVwbGUgY3JlYXRpb24gZnVuY3Rpb25zLgotCi0vLyBLbm93biBsaW1pdGF0
aW9uczogd2UgZG9uJ3Qgc3VwcG9ydCBwYXNzaW5nIGFuCi0vLyBzdGQ6OnRyMTo6cmVmZXJlbmNl
X3dyYXBwZXI8VD4gdG8gbWFrZV90dXBsZSgpLiAgQW5kIHdlIGRvbid0Ci0vLyBpbXBsZW1lbnQg
dGllKCkuCi0KLWlubGluZSB0dXBsZTw+IG1ha2VfdHVwbGUoKSB7IHJldHVybiB0dXBsZTw+KCk7
IH0KLQotJGZvciBrIFtbCi0kcmFuZ2UgbSAwLi5rLTEKLQotdGVtcGxhdGUgPEdURVNUXyQoaylf
VFlQRU5BTUVTXyhUKT4KLWlubGluZSBHVEVTVF8kKGspX1RVUExFXyhUKSBtYWtlX3R1cGxlKCRm
b3IgbSwgW1tjb25zdCBUJG0mIGYkbV1dKSB7Ci0gIHJldHVybiBHVEVTVF8kKGspX1RVUExFXyhU
KSgkZm9yIG0sIFtbZiRtXV0pOwotfQotCi1dXQotCi0vLyA2LjEuMy4zIFR1cGxlIGhlbHBlciBj
bGFzc2VzLgotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVHVwbGU+IHN0cnVjdCB0dXBsZV9zaXplOwot
Ci0KLSRmb3IgaiBbWwotdGVtcGxhdGUgPEdURVNUXyQoailfVFlQRU5BTUVTXyhUKT4KLXN0cnVj
dCB0dXBsZV9zaXplPEdURVNUXyQoailfVFVQTEVfKFQpID4gewotICBzdGF0aWMgY29uc3QgaW50
IHZhbHVlID0gJGo7Ci19OwotCi0KLV1dCi10ZW1wbGF0ZSA8aW50IGssIGNsYXNzIFR1cGxlPgot
c3RydWN0IHR1cGxlX2VsZW1lbnQgewotICB0eXBlZGVmIHR5cGVuYW1lIGd0ZXN0X2ludGVybmFs
OjpUdXBsZUVsZW1lbnQ8Ci0gICAgICBrIDwgKHR1cGxlX3NpemU8VHVwbGU+Ojp2YWx1ZSksIGss
IFR1cGxlPjo6dHlwZSB0eXBlOwotfTsKLQotI2RlZmluZSBHVEVTVF9UVVBMRV9FTEVNRU5UXyhr
LCBUdXBsZSkgdHlwZW5hbWUgdHVwbGVfZWxlbWVudDxrLCBUdXBsZSA+Ojp0eXBlCi0KLS8vIDYu
MS4zLjQgRWxlbWVudCBhY2Nlc3MuCi0KLW5hbWVzcGFjZSBndGVzdF9pbnRlcm5hbCB7Ci0KLQot
JGZvciBpIFtbCi10ZW1wbGF0ZSA8PgotY2xhc3MgR2V0PCRpPiB7Ci0gcHVibGljOgotICB0ZW1w
bGF0ZSA8Y2xhc3MgVHVwbGU+Ci0gIHN0YXRpYyBHVEVTVF9BRERfUkVGXyhHVEVTVF9UVVBMRV9F
TEVNRU5UXygkaSwgVHVwbGUpKQotICBGaWVsZChUdXBsZSYgdCkgeyByZXR1cm4gdC5mJChpKV87
IH0gIC8vIE5PTElOVAotCi0gIHRlbXBsYXRlIDxjbGFzcyBUdXBsZT4KLSAgc3RhdGljIEdURVNU
X0JZX1JFRl8oR1RFU1RfVFVQTEVfRUxFTUVOVF8oJGksIFR1cGxlKSkKLSAgQ29uc3RGaWVsZChj
b25zdCBUdXBsZSYgdCkgeyByZXR1cm4gdC5mJChpKV87IH0KLX07Ci0KLQotXV0KLX0gIC8vIG5h
bWVzcGFjZSBndGVzdF9pbnRlcm5hbAotCi10ZW1wbGF0ZSA8aW50IGssIEdURVNUXyQobilfVFlQ
RU5BTUVTXyhUKT4KLUdURVNUX0FERF9SRUZfKEdURVNUX1RVUExFX0VMRU1FTlRfKGssIEdURVNU
XyQobilfVFVQTEVfKFQpKSkKLWdldChHVEVTVF8kKG4pX1RVUExFXyhUKSYgdCkgewotICByZXR1
cm4gZ3Rlc3RfaW50ZXJuYWw6OkdldDxrPjo6RmllbGQodCk7Ci19Ci0KLXRlbXBsYXRlIDxpbnQg
aywgR1RFU1RfJChuKV9UWVBFTkFNRVNfKFQpPgotR1RFU1RfQllfUkVGXyhHVEVTVF9UVVBMRV9F
TEVNRU5UXyhrLCAgR1RFU1RfJChuKV9UVVBMRV8oVCkpKQotZ2V0KGNvbnN0IEdURVNUXyQobilf
VFVQTEVfKFQpJiB0KSB7Ci0gIHJldHVybiBndGVzdF9pbnRlcm5hbDo6R2V0PGs+OjpDb25zdEZp
ZWxkKHQpOwotfQotCi0vLyA2LjEuMy41IFJlbGF0aW9uYWwgb3BlcmF0b3JzCi0KLS8vIFdlIG9u
bHkgaW1wbGVtZW50ID09IGFuZCAhPSwgYXMgd2UgZG9uJ3QgaGF2ZSBhIG5lZWQgZm9yIHRoZSBy
ZXN0IHlldC4KLQotbmFtZXNwYWNlIGd0ZXN0X2ludGVybmFsIHsKLQotLy8gU2FtZVNpemVUdXBs
ZVByZWZpeENvbXBhcmF0b3I8aywgaz46OkVxKHQxLCB0MikgcmV0dXJucyB0cnVlIGlmIHRoZQot
Ly8gZmlyc3QgayBmaWVsZHMgb2YgdDEgZXF1YWxzIHRoZSBmaXJzdCBrIGZpZWxkcyBvZiB0Mi4K
LS8vIFNhbWVTaXplVHVwbGVQcmVmaXhDb21wYXJhdG9yKGsxLCBrMikgd291bGQgYmUgYSBjb21w
aWxlciBlcnJvciBpZgotLy8gazEgIT0gazIuCi10ZW1wbGF0ZSA8aW50IGtTaXplMSwgaW50IGtT
aXplMj4KLXN0cnVjdCBTYW1lU2l6ZVR1cGxlUHJlZml4Q29tcGFyYXRvcjsKLQotdGVtcGxhdGUg
PD4KLXN0cnVjdCBTYW1lU2l6ZVR1cGxlUHJlZml4Q29tcGFyYXRvcjwwLCAwPiB7Ci0gIHRlbXBs
YXRlIDxjbGFzcyBUdXBsZTEsIGNsYXNzIFR1cGxlMj4KLSAgc3RhdGljIGJvb2wgRXEoY29uc3Qg
VHVwbGUxJiAvKiB0MSAqLywgY29uc3QgVHVwbGUyJiAvKiB0MiAqLykgewotICAgIHJldHVybiB0
cnVlOwotICB9Ci19OwotCi10ZW1wbGF0ZSA8aW50IGs+Ci1zdHJ1Y3QgU2FtZVNpemVUdXBsZVBy
ZWZpeENvbXBhcmF0b3I8aywgaz4gewotICB0ZW1wbGF0ZSA8Y2xhc3MgVHVwbGUxLCBjbGFzcyBU
dXBsZTI+Ci0gIHN0YXRpYyBib29sIEVxKGNvbnN0IFR1cGxlMSYgdDEsIGNvbnN0IFR1cGxlMiYg
dDIpIHsKLSAgICByZXR1cm4gU2FtZVNpemVUdXBsZVByZWZpeENvbXBhcmF0b3I8ayAtIDEsIGsg
LSAxPjo6RXEodDEsIHQyKSAmJgotICAgICAgICA6OnN0ZDo6dHIxOjpnZXQ8ayAtIDE+KHQxKSA9
PSA6OnN0ZDo6dHIxOjpnZXQ8ayAtIDE+KHQyKTsKLSAgfQotfTsKLQotfSAgLy8gbmFtZXNwYWNl
IGd0ZXN0X2ludGVybmFsCi0KLXRlbXBsYXRlIDxHVEVTVF8kKG4pX1RZUEVOQU1FU18oVCksIEdU
RVNUXyQobilfVFlQRU5BTUVTXyhVKT4KLWlubGluZSBib29sIG9wZXJhdG9yPT0oY29uc3QgR1RF
U1RfJChuKV9UVVBMRV8oVCkmIHQsCi0gICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEdURVNU
XyQobilfVFVQTEVfKFUpJiB1KSB7Ci0gIHJldHVybiBndGVzdF9pbnRlcm5hbDo6U2FtZVNpemVU
dXBsZVByZWZpeENvbXBhcmF0b3I8Ci0gICAgICB0dXBsZV9zaXplPEdURVNUXyQobilfVFVQTEVf
KFQpID46OnZhbHVlLAotICAgICAgdHVwbGVfc2l6ZTxHVEVTVF8kKG4pX1RVUExFXyhVKSA+Ojp2
YWx1ZT46OkVxKHQsIHUpOwotfQotCi10ZW1wbGF0ZSA8R1RFU1RfJChuKV9UWVBFTkFNRVNfKFQp
LCBHVEVTVF8kKG4pX1RZUEVOQU1FU18oVSk+Ci1pbmxpbmUgYm9vbCBvcGVyYXRvciE9KGNvbnN0
IEdURVNUXyQobilfVFVQTEVfKFQpJiB0LAotICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBH
VEVTVF8kKG4pX1RVUExFXyhVKSYgdSkgeyByZXR1cm4gISh0ID09IHUpOyB9Ci0KLS8vIDYuMS40
IFBhaXJzLgotLy8gVW5pbXBsZW1lbnRlZC4KLQotfSAgLy8gbmFtZXNwYWNlIHRyMQotfSAgLy8g
bmFtZXNwYWNlIHN0ZAotCi0KLSRmb3IgaiBbWwotI3VuZGVmIEdURVNUXyQoailfVFVQTEVfCi0K
LV1dCi0KLQotJGZvciBqIFtbCi0jdW5kZWYgR1RFU1RfJChqKV9UWVBFTkFNRVNfCi0KLV1dCi0K
LSN1bmRlZiBHVEVTVF9ERUNMQVJFX1RVUExFX0FTX0ZSSUVORF8KLSN1bmRlZiBHVEVTVF9CWV9S
RUZfCi0jdW5kZWYgR1RFU1RfQUREX1JFRl8KLSN1bmRlZiBHVEVTVF9UVVBMRV9FTEVNRU5UXwot
Ci0jZW5kaWYgIC8vIEdURVNUX0lOQ0xVREVfR1RFU1RfSU5URVJOQUxfR1RFU1RfVFVQTEVfSF8K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVk
ZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC10eXBlLXV0aWwuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFy
dHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC10eXBlLXV0aWwu
aAppbmRleCAyOGU0MTEyNDUzNjFjMDhmMjg3MDdlOTI0OGU2ZDAzMzIwZTY4NjE4Li4wODJmZGFk
MTJjMDNhZjBjNTIzZTk4MzcxYTU3Zjk5NDY2NmNiNjI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3Qt
dHlwZS11dGlsLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9p
bmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LXR5cGUtdXRpbC5oCkBAIC0xLDcgKzEsMyBAQAot
Ly8gVGhpcyBmaWxlIHdhcyBHRU5FUkFURUQgYnkgY29tbWFuZDoKLS8vICAgICBwdW1wLnB5IGd0
ZXN0LXR5cGUtdXRpbC5oLnB1bXAKLS8vIERPIE5PVCBFRElUIEJZIEhBTkQhISEKLQogLy8gQ29w
eXJpZ2h0IDIwMDggR29vZ2xlIEluYy4KIC8vIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAvLwpAQCAt
MzEsMTQgKzI3LDggQEAKIC8vIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogLy8gT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAotCiAvLyBU
eXBlIHV0aWxpdGllcyBuZWVkZWQgZm9yIGltcGxlbWVudGluZyB0eXBlZCBhbmQgdHlwZS1wYXJh
bWV0ZXJpemVkCi0vLyB0ZXN0cy4gIFRoaXMgZmlsZSBpcyBnZW5lcmF0ZWQgYnkgYSBTQ1JJUFQu
ICBETyBOT1QgRURJVCBCWSBIQU5EIQotLy8KLS8vIEN1cnJlbnRseSB3ZSBzdXBwb3J0IGF0IG1v
c3QgNTAgdHlwZXMgaW4gYSBsaXN0LCBhbmQgYXQgbW9zdCA1MAotLy8gdHlwZS1wYXJhbWV0ZXJp
emVkIHRlc3RzIGluIG9uZSB0eXBlLXBhcmFtZXRlcml6ZWQgdGVzdCBjYXNlLgotLy8gUGxlYXNl
IGNvbnRhY3QgZ29vZ2xldGVzdGZyYW1ld29ya0Bnb29nbGVncm91cHMuY29tIGlmIHlvdSBuZWVk
Ci0vLyBtb3JlLgorLy8gdGVzdHMuCiAKIC8vIEdPT0dMRVRFU1RfQ00wMDAxIERPIE5PVCBERUxF
VEUKIApAQCAtODksNyArNzksNyBAQCBzdGQ6OnN0cmluZyBHZXRUeXBlTmFtZSgpIHsKICMgICBp
ZiBHVEVTVF9IQVNfQ1hYQUJJX0hfCiAgIHVzaW5nIGFiaTo6X19jeGFfZGVtYW5nbGU7CiAjICAg
ZW5kaWYgIC8vIEdURVNUX0hBU19DWFhBQklfSF8KLSAgY2hhciogY29uc3QgcmVhZGFibGVfbmFt
ZSA9IF9fY3hhX2RlbWFuZ2xlKG5hbWUsIDAsIDAsICZzdGF0dXMpOworICBjaGFyKiBjb25zdCBy
ZWFkYWJsZV9uYW1lID0gX19jeGFfZGVtYW5nbGUobmFtZSwgbnVsbHB0ciwgbnVsbHB0ciwgJnN0
YXR1cyk7CiAgIGNvbnN0IHN0ZDo6c3RyaW5nIG5hbWVfc3RyKHN0YXR1cyA9PSAwID8gcmVhZGFi
bGVfbmFtZSA6IG5hbWUpOwogICBmcmVlKHJlYWRhYmxlX25hbWUpOwogICByZXR1cm4gQ2Fub25p
Y2FsaXplRm9yU3RkTGliVmVyc2lvbmluZyhuYW1lX3N0cik7CkBAIC0xMDYsMTUzNiArOTYsOSBA
QCBzdGQ6OnN0cmluZyBHZXRUeXBlTmFtZSgpIHsKIAogI2lmIEdURVNUX0hBU19UWVBFRF9URVNU
IHx8IEdURVNUX0hBU19UWVBFRF9URVNUX1AKIAotLy8gQXNzZXJ0eVR5cGVFcTxUMSwgVDI+Ojp0
eXBlIGlzIGRlZmluZWQgaWZmIFQxIGFuZCBUMiBhcmUgdGhlIHNhbWUKLS8vIHR5cGUuICBUaGlz
IGNhbiBiZSB1c2VkIGFzIGEgY29tcGlsZS10aW1lIGFzc2VydGlvbiB0byBlbnN1cmUgdGhhdAot
Ly8gdHdvIHR5cGVzIGFyZSBlcXVhbC4KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFt
ZSBUMj4KLXN0cnVjdCBBc3NlcnRUeXBlRXE7Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotc3Ry
dWN0IEFzc2VydFR5cGVFcTxULCBUPiB7Ci0gIHR5cGVkZWYgYm9vbCB0eXBlOwotfTsKLQotLy8g
QSB1bmlxdWUgdHlwZSB1c2VkIGFzIHRoZSBkZWZhdWx0IHZhbHVlIGZvciB0aGUgYXJndW1lbnRz
IG9mIGNsYXNzCi0vLyB0ZW1wbGF0ZSBUeXBlcy4gIFRoaXMgYWxsb3dzIHVzIHRvIHNpbXVsYXRl
IHZhcmlhZGljIHRlbXBsYXRlcwotLy8gKGUuZy4gVHlwZXM8aW50PiwgVHlwZTxpbnQsIGRvdWJs
ZT4sIGFuZCBldGMpLCB3aGljaCBDKysgZG9lc24ndAotLy8gc3VwcG9ydCBkaXJlY3RseS4KKy8v
IEEgdW5pcXVlIHR5cGUgaW5kaWNhdGluZyBhbiBlbXB0eSBub2RlCiBzdHJ1Y3QgTm9uZSB7fTsK
IAotLy8gVGhlIGZvbGxvd2luZyBmYW1pbHkgb2Ygc3RydWN0IGFuZCBzdHJ1Y3QgdGVtcGxhdGVz
IGFyZSB1c2VkIHRvCi0vLyByZXByZXNlbnQgdHlwZSBsaXN0cy4gIEluIHBhcnRpY3VsYXIsIFR5
cGVzTjxUMSwgVDIsIC4uLiwgVE4+Ci0vLyByZXByZXNlbnRzIGEgdHlwZSBsaXN0IHdpdGggTiB0
eXBlcyAoVDEsIFQyLCAuLi4sIGFuZCBUTikgaW4gaXQuCi0vLyBFeGNlcHQgZm9yIFR5cGVzMCwg
ZXZlcnkgc3RydWN0IGluIHRoZSBmYW1pbHkgaGFzIHR3byBtZW1iZXIgdHlwZXM6Ci0vLyBIZWFk
IGZvciB0aGUgZmlyc3QgdHlwZSBpbiB0aGUgbGlzdCwgYW5kIFRhaWwgZm9yIHRoZSByZXN0IG9m
IHRoZQotLy8gbGlzdC4KLQotLy8gVGhlIGVtcHR5IHR5cGUgbGlzdC4KLXN0cnVjdCBUeXBlczAg
e307Ci0KLS8vIFR5cGUgbGlzdHMgb2YgbGVuZ3RoIDEsIDIsIDMsIGFuZCBzbyBvbi4KLQotdGVt
cGxhdGUgPHR5cGVuYW1lIFQxPgotc3RydWN0IFR5cGVzMSB7Ci0gIHR5cGVkZWYgVDEgSGVhZDsK
LSAgdHlwZWRlZiBUeXBlczAgVGFpbDsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVu
YW1lIFQyPgotc3RydWN0IFR5cGVzMiB7Ci0gIHR5cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBU
eXBlczE8VDI+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQy
LCB0eXBlbmFtZSBUMz4KLXN0cnVjdCBUeXBlczMgewotICB0eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5
cGVkZWYgVHlwZXMyPFQyLCBUMz4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwg
dHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUND4KLXN0cnVjdCBUeXBlczQgewot
ICB0eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5cGVkZWYgVHlwZXMzPFQyLCBUMywgVDQ+IFRhaWw7Ci19
OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlw
ZW5hbWUgVDQsIHR5cGVuYW1lIFQ1Pgotc3RydWN0IFR5cGVzNSB7Ci0gIHR5cGVkZWYgVDEgSGVh
ZDsKLSAgdHlwZWRlZiBUeXBlczQ8VDIsIFQzLCBUNCwgVDU+IFRhaWw7Ci19OwotCi10ZW1wbGF0
ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5
cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2Pgotc3RydWN0IFR5cGVzNiB7Ci0gIHR5cGVkZWYg
VDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczU8VDIsIFQzLCBUNCwgVDUsIFQ2PiBUYWlsOwotfTsK
LQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVu
YW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDc+Ci1zdHJ1
Y3QgVHlwZXM3IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzNjxUMiwgVDMs
IFQ0LCBUNSwgVDYsIFQ3PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBl
bmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBl
bmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4Pgotc3RydWN0IFR5cGVzOCB7Ci0gIHR5
cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczc8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDg+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBl
bmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBl
bmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5Pgotc3RydWN0IFR5cGVzOSB7Ci0gIHR5
cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczg8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDgsIFQ5PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwg
dHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwg
dHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwPgotc3Ry
dWN0IFR5cGVzMTAgewotICB0eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5cGVkZWYgVHlwZXM5PFQyLCBU
MywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwPiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5
cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFt
ZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFt
ZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMT4KLXN0cnVjdCBUeXBlczExIHsK
LSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMTA8VDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTAsIFQxMT4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBU
MSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0g
ICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5
cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMj4KLXN0cnVjdCBUeXBl
czEyIHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMTE8VDIsIFQzLCBUNCwg
VDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyPiBUYWlsOwotfTsKLQotdGVtcGxhdGUg
PHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBl
bmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBl
bmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0
eXBlbmFtZSBUMTM+Ci1zdHJ1Y3QgVHlwZXMxMyB7Ci0gIHR5cGVkZWYgVDEgSGVhZDsKLSAgdHlw
ZWRlZiBUeXBlczEyPFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQx
MiwgVDEzPiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwg
dHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwg
dHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAg
IHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxND4K
LXN0cnVjdCBUeXBlczE0IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMTM8
VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxND4g
VGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1l
IFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1l
IFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFt
ZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1l
IFQxNT4KLXN0cnVjdCBUeXBlczE1IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5
cGVzMTQ8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMs
IFQxNCwKLSAgICAgIFQxNT4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlw
ZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlw
ZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1l
IFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBl
bmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTY+Ci1zdHJ1Y3QgVHlwZXMx
NiB7Ci0gIHR5cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczE1PFQyLCBUMywgVDQsIFQ1
LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICAgIFQx
Nj4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVu
YW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVu
YW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBl
bmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVu
YW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNz4KLXN0cnVjdCBUeXBlczE3
IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMTY8VDIsIFQzLCBUNCwgVDUs
IFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAgVDE2
LCBUMTc+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0
eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0
eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAg
dHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0
eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQx
OD4KLXN0cnVjdCBUeXBlczE4IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVz
MTc8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQx
NCwgVDE1LAotICAgICAgVDE2LCBUMTcsIFQxOD4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBl
bmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUg
VDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUg
VDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5h
bWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5
cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTk+Ci1zdHJ1Y3QgVHlwZXMxOSB7
Ci0gIHR5cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczE4PFQyLCBUMywgVDQsIFQ1LCBU
NiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICAgIFQxNiwg
VDE3LCBUMTgsIFQxOT4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5h
bWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5h
bWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQx
MCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFt
ZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlw
ZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMD4KLXN0cnVjdCBUeXBlczIwIHsK
LSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMTk8VDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAgVDE2LCBU
MTcsIFQxOCwgVDE5LCBUMjA+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5
cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5
cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFt
ZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlw
ZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcs
IHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUg
VDIxPgotc3RydWN0IFR5cGVzMjEgewotICB0eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5cGVkZWYgVHlw
ZXMyMDxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywg
VDE0LCBUMTUsCi0gICAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxPiBUYWlsOwotfTsK
LQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVu
YW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVu
YW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlw
ZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAg
IHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwg
dHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyPgotc3RydWN0IFR5
cGVzMjIgewotICB0eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5cGVkZWYgVHlwZXMyMTxUMiwgVDMsIFQ0
LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAg
ICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjI+IFRhaWw7Ci19OwotCi10ZW1wbGF0
ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5
cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5
cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIs
IHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUg
VDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBU
MjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMz4KLXN0cnVj
dCBUeXBlczIzIHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMjI8VDIsIFQz
LCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAot
ICAgICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjM+IFRhaWw7Ci19Owot
Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5h
bWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5h
bWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBl
bmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAg
dHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0
eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQy
MywgdHlwZW5hbWUgVDI0Pgotc3RydWN0IFR5cGVzMjQgewotICB0eXBlZGVmIFQxIEhlYWQ7Ci0g
IHR5cGVkZWYgVHlwZXMyMzxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDEx
LCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIx
LCBUMjIsIFQyMywgVDI0PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBl
bmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBl
bmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUg
VDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVu
YW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0
eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQy
MSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1
Pgotc3RydWN0IFR5cGVzMjUgewotICB0eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5cGVkZWYgVHlwZXMy
NDxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0
LCBUMTUsCi0gICAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0
LCBUMjU+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0
eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0
eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAg
dHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0
eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQx
OCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFt
ZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlw
ZW5hbWUgVDI2Pgotc3RydWN0IFR5cGVzMjYgewotICB0eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5cGVk
ZWYgVHlwZXMyNTxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIs
IFQxMywgVDE0LCBUMTUsCi0gICAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIs
IFQyMywgVDI0LCBUMjUsIFQyNj4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwg
dHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAg
dHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVu
YW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0
eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQx
NywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFt
ZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1l
IFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNz4KLXN0cnVjdCBUeXBlczI3IHsK
LSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMjY8VDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAgVDE2LCBU
MTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNz4gVGFp
bDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQz
LCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3
LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBU
MTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQx
NSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFt
ZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlw
ZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYs
IHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4Pgotc3RydWN0IFR5cGVzMjggewotICB0eXBlZGVm
IFQxIEhlYWQ7Ci0gIHR5cGVkZWYgVHlwZXMyNzxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwg
VDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgICBUMTYsIFQxNywgVDE4LCBU
MTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjg+IFRhaWw7Ci19
OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlw
ZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlw
ZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0
eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0g
ICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5
LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1l
IFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBl
bmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5Pgotc3RydWN0IFR5cGVzMjkgewot
ICB0eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5cGVkZWYgVHlwZXMyODxUMiwgVDMsIFQ0LCBUNSwgVDYs
IFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgICBUMTYsIFQx
NywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgs
Ci0gICAgICBUMjk+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1l
IFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1l
IFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAs
Ci0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUg
VDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVu
YW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0
eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0g
ICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5
LCB0eXBlbmFtZSBUMzA+Ci1zdHJ1Y3QgVHlwZXMzMCB7Ci0gIHR5cGVkZWYgVDEgSGVhZDsKLSAg
dHlwZWRlZiBUeXBlczI5PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEs
IFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICAgIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEs
IFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAotICAgICAgVDMwPiBUYWls
OwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMs
IHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcs
IHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQx
MSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1
LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1l
IFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBl
bmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwg
dHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAot
ICAgIHR5cGVuYW1lIFQzMT4KLXN0cnVjdCBUeXBlczMxIHsKLSAgdHlwZWRlZiBUMSBIZWFkOwot
ICB0eXBlZGVmIFR5cGVzMzA8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQx
MSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQy
MSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgICBUMzAsIFQz
MT4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVu
YW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVu
YW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBl
bmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVu
YW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0
eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQy
MiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFt
ZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1l
IFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMj4KLXN0cnVjdCBUeXBlczMyIHsK
LSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMzE8VDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAgVDE2LCBU
MTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4
LCBUMjksCi0gICAgICBUMzAsIFQzMSwgVDMyPiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVu
YW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBU
NSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBU
OSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFt
ZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlw
ZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAg
IHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwg
dHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBU
MjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5h
bWUgVDMyLCB0eXBlbmFtZSBUMzM+Ci1zdHJ1Y3QgVHlwZXMzMyB7Ci0gIHR5cGVkZWYgVDEgSGVh
ZDsKLSAgdHlwZWRlZiBUeXBlczMyPFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEw
LCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICAgIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIw
LCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAotICAgICAgVDMw
LCBUMzEsIFQzMiwgVDMzPiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBl
bmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBl
bmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUg
VDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVu
YW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0
eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQy
MSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1
LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1l
IFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBl
bmFtZSBUMzMsIHR5cGVuYW1lIFQzND4KLXN0cnVjdCBUeXBlczM0IHsKLSAgdHlwZWRlZiBUMSBI
ZWFkOwotICB0eXBlZGVmIFR5cGVzMzM8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBU
MTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBU
MjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgICBU
MzAsIFQzMSwgVDMyLCBUMzMsIFQzND4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBU
MSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0g
ICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5
cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEz
LCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1l
IFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBl
bmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVu
YW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0
eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQz
MiwgdHlwZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNT4KLXN0cnVjdCBUeXBl
czM1IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMzQ8VDIsIFQzLCBUNCwg
VDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAg
VDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQy
NywgVDI4LCBUMjksCi0gICAgICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1PiBUYWlsOwot
fTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5
cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5
cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwg
dHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAot
ICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQx
OSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFt
ZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlw
ZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAg
IHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwg
dHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNj4KLXN0cnVjdCBUeXBlczM2IHsKLSAgdHlw
ZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMzU8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAgVDE2LCBUMTcsIFQx
OCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjks
Ci0gICAgICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzY+IFRhaWw7Ci19OwotCi10
ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUg
VDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUg
VDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFt
ZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlw
ZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBl
bmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywg
dHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBU
MjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5h
bWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFt
ZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzc+Ci1zdHJ1Y3QgVHlwZXMzNyB7
Ci0gIHR5cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczM2PFQyLCBUMywgVDQsIFQ1LCBU
NiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICAgIFQxNiwg
VDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQy
OCwgVDI5LAotICAgICAgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzc+IFRh
aWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBU
MywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBU
NywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUg
VDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBU
MTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5h
bWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5
cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2
LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAs
Ci0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUg
VDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVu
YW1lIFQzOD4KLXN0cnVjdCBUeXBlczM4IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVm
IFR5cGVzMzc8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBU
MTMsIFQxNCwgVDE1LAotICAgICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBU
MjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgICBUMzAsIFQzMSwgVDMyLCBU
MzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVu
YW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBU
NSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBU
OSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFt
ZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlw
ZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAg
IHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwg
dHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBU
MjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5h
bWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5
cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOT4KLXN0
cnVjdCBUeXBlczM5IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMzg8VDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1
LAotICAgICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1
LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1
LCBUMzYsIFQzNywgVDM4LCBUMzk+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEs
IHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAg
IHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBl
bmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywg
dHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBU
MTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5h
bWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFt
ZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlw
ZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIs
IHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUg
VDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBU
NDA+Ci1zdHJ1Y3QgVHlwZXM0MCB7Ci0gIHR5cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBl
czM5PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBU
MTQsIFQxNSwKLSAgICAgIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBU
MjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAotICAgICAgVDMwLCBUMzEsIFQzMiwgVDMzLCBU
MzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDA+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8
dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVu
YW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVu
YW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5
cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2
LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAs
Ci0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUg
VDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVu
YW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0
eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0g
ICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5
LCB0eXBlbmFtZSBUNDAsCi0gICAgdHlwZW5hbWUgVDQxPgotc3RydWN0IFR5cGVzNDEgewotICB0
eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5cGVkZWYgVHlwZXM0MDxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3
LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgICBUMTYsIFQxNywg
VDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQy
OSwKLSAgICAgIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQz
OSwgVDQwLCBUNDE+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1l
IFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1l
IFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAs
Ci0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUg
VDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVu
YW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0
eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0g
ICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5
LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1l
IFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBl
bmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAsCi0gICAg
dHlwZW5hbWUgVDQxLCB0eXBlbmFtZSBUNDI+Ci1zdHJ1Y3QgVHlwZXM0MiB7Ci0gIHR5cGVkZWYg
VDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczQxPFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBU
OSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICAgIFQxNiwgVDE3LCBUMTgsIFQx
OSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAotICAg
ICAgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAs
IFQ0MSwgVDQyPiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBU
MiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBU
NiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAot
ICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQx
NCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFt
ZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlw
ZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAg
IHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwg
dHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBU
MzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5h
bWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5
cGVuYW1lIFQ0MSwgdHlwZW5hbWUgVDQyLCB0eXBlbmFtZSBUNDM+Ci1zdHJ1Y3QgVHlwZXM0MyB7
Ci0gIHR5cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczQyPFQyLCBUMywgVDQsIFQ1LCBU
NiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICAgIFQxNiwg
VDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQy
OCwgVDI5LAotICAgICAgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQz
OCwgVDM5LCBUNDAsIFQ0MSwgVDQyLAotICAgICAgVDQzPiBUYWlsOwotfTsKLQotdGVtcGxhdGUg
PHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBl
bmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBl
bmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0
eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQx
NiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIw
LAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1l
IFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBl
bmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwg
dHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAot
ICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQz
OSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwgdHlwZW5hbWUgVDQyLCB0eXBlbmFt
ZSBUNDMsIHR5cGVuYW1lIFQ0ND4KLXN0cnVjdCBUeXBlczQ0IHsKLSAgdHlwZWRlZiBUMSBIZWFk
OwotICB0eXBlZGVmIFR5cGVzNDM8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAs
IFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAs
IFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgICBUMzAs
IFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBU
NDIsIFQ0MywKLSAgICAgIFQ0ND4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwg
dHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAg
dHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVu
YW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0
eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQx
NywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFt
ZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1l
IFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBl
bmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwg
dHlwZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBU
MzYsIHR5cGVuYW1lIFQzNywgdHlwZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0
MCwKLSAgICB0eXBlbmFtZSBUNDEsIHR5cGVuYW1lIFQ0MiwgdHlwZW5hbWUgVDQzLCB0eXBlbmFt
ZSBUNDQsIHR5cGVuYW1lIFQ0NT4KLXN0cnVjdCBUeXBlczQ1IHsKLSAgdHlwZWRlZiBUMSBIZWFk
OwotICB0eXBlZGVmIFR5cGVzNDQ8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAs
IFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAs
IFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgICBUMzAs
IFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBU
NDIsIFQ0MywKLSAgICAgIFQ0NCwgVDQ1PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1l
IFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwK
LSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwg
dHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBU
MTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5h
bWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5
cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlw
ZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgs
IHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUg
VDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVu
YW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5h
bWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwgdHlwZW5hbWUgVDQyLCB0eXBlbmFtZSBUNDMsIHR5
cGVuYW1lIFQ0NCwgdHlwZW5hbWUgVDQ1LAotICAgIHR5cGVuYW1lIFQ0Nj4KLXN0cnVjdCBUeXBl
czQ2IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzNDU8VDIsIFQzLCBUNCwg
VDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAg
VDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQy
NywgVDI4LCBUMjksCi0gICAgICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQz
NywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsIFQ0MywKLSAgICAgIFQ0NCwgVDQ1LCBUNDY+IFRh
aWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBU
MywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBU
NywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUg
VDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBU
MTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5h
bWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5
cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2
LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAs
Ci0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUg
VDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVu
YW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAsCi0gICAgdHlwZW5hbWUgVDQxLCB0
eXBlbmFtZSBUNDIsIHR5cGVuYW1lIFQ0MywgdHlwZW5hbWUgVDQ0LCB0eXBlbmFtZSBUNDUsCi0g
ICAgdHlwZW5hbWUgVDQ2LCB0eXBlbmFtZSBUNDc+Ci1zdHJ1Y3QgVHlwZXM0NyB7Ci0gIHR5cGVk
ZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczQ2PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4
LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICAgIFQxNiwgVDE3LCBUMTgs
IFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAot
ICAgICAgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBU
NDAsIFQ0MSwgVDQyLCBUNDMsCi0gICAgICBUNDQsIFQ0NSwgVDQ2LCBUNDc+IFRhaWw7Ci19Owot
Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5h
bWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5h
bWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBl
bmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAg
dHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0
eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQy
MywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFt
ZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlw
ZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBl
bmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwg
dHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAsCi0gICAgdHlwZW5hbWUgVDQxLCB0eXBlbmFtZSBU
NDIsIHR5cGVuYW1lIFQ0MywgdHlwZW5hbWUgVDQ0LCB0eXBlbmFtZSBUNDUsCi0gICAgdHlwZW5h
bWUgVDQ2LCB0eXBlbmFtZSBUNDcsIHR5cGVuYW1lIFQ0OD4KLXN0cnVjdCBUeXBlczQ4IHsKLSAg
dHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzNDc8VDIsIFQzLCBUNCwgVDUsIFQ2LCBU
NywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAgVDE2LCBUMTcs
IFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBU
MjksCi0gICAgICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBU
MzksIFQ0MCwgVDQxLCBUNDIsIFQ0MywKLSAgICAgIFQ0NCwgVDQ1LCBUNDYsIFQ0NywgVDQ4PiBU
YWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUg
VDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUg
VDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1l
IFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUg
VDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVu
YW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0
eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQy
NiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMw
LAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1l
IFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBl
bmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwg
dHlwZW5hbWUgVDQyLCB0eXBlbmFtZSBUNDMsIHR5cGVuYW1lIFQ0NCwgdHlwZW5hbWUgVDQ1LAot
ICAgIHR5cGVuYW1lIFQ0NiwgdHlwZW5hbWUgVDQ3LCB0eXBlbmFtZSBUNDgsIHR5cGVuYW1lIFQ0
OT4KLXN0cnVjdCBUeXBlczQ5IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVz
NDg8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQx
NCwgVDE1LAotICAgICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQy
NCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQz
NCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsIFQ0MywKLSAgICAgIFQ0
NCwgVDQ1LCBUNDYsIFQ0NywgVDQ4LCBUNDk+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5h
bWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1
LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5
LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1l
IFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBl
bmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAg
dHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0
eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQy
OCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFt
ZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlw
ZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBl
bmFtZSBUNDAsCi0gICAgdHlwZW5hbWUgVDQxLCB0eXBlbmFtZSBUNDIsIHR5cGVuYW1lIFQ0Mywg
dHlwZW5hbWUgVDQ0LCB0eXBlbmFtZSBUNDUsCi0gICAgdHlwZW5hbWUgVDQ2LCB0eXBlbmFtZSBU
NDcsIHR5cGVuYW1lIFQ0OCwgdHlwZW5hbWUgVDQ5LCB0eXBlbmFtZSBUNTA+Ci1zdHJ1Y3QgVHlw
ZXM1MCB7Ci0gIHR5cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczQ5PFQyLCBUMywgVDQs
IFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICAg
IFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBU
MjcsIFQyOCwgVDI5LAotICAgICAgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBU
MzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwgVDQyLCBUNDMsCi0gICAgICBUNDQsIFQ0NSwgVDQ2LCBU
NDcsIFQ0OCwgVDQ5LCBUNTA+IFRhaWw7Ci19OwotCi0KLX0gIC8vIG5hbWVzcGFjZSBpbnRlcm5h
bAotCi0vLyBXZSBkb24ndCB3YW50IHRvIHJlcXVpcmUgdGhlIHVzZXJzIHRvIHdyaXRlIFR5cGVz
TjwuLi4+IGRpcmVjdGx5LAotLy8gYXMgdGhhdCB3b3VsZCByZXF1aXJlIHRoZW0gdG8gY291bnQg
dGhlIGxlbmd0aC4gIFR5cGVzPC4uLj4gaXMgbXVjaAotLy8gZWFzaWVyIHRvIHdyaXRlLCBidXQg
Z2VuZXJhdGVzIGhvcnJpYmxlIG1lc3NhZ2VzIHdoZW4gdGhlcmUgaXMgYQotLy8gY29tcGlsZXIg
ZXJyb3IsIGFzIGdjYyBpbnNpc3RzIG9uIHByaW50aW5nIG91dCBlYWNoIHRlbXBsYXRlCi0vLyBh
cmd1bWVudCwgZXZlbiBpZiBpdCBoYXMgdGhlIGRlZmF1bHQgdmFsdWUgKHRoaXMgbWVhbnMgVHlw
ZXM8aW50PgotLy8gd2lsbCBhcHBlYXIgYXMgVHlwZXM8aW50LCBOb25lLCBOb25lLCAuLi4sIE5v
bmU+IGluIHRoZSBjb21waWxlcgotLy8gZXJyb3JzKS4KLS8vCi0vLyBPdXIgc29sdXRpb24gaXMg
dG8gY29tYmluZSB0aGUgYmVzdCBwYXJ0IG9mIHRoZSB0d28gYXBwcm9hY2hlczogYQotLy8gdXNl
ciB3b3VsZCB3cml0ZSBUeXBlczxUMSwgLi4uLCBUTj4sIGFuZCBHb29nbGUgVGVzdCB3aWxsIHRy
YW5zbGF0ZQotLy8gdGhhdCB0byBUeXBlc048VDEsIC4uLiwgVE4+IGludGVybmFsbHkgdG8gbWFr
ZSBlcnJvciBtZXNzYWdlcwotLy8gcmVhZGFibGUuICBUaGUgdHJhbnNsYXRpb24gaXMgZG9uZSBi
eSB0aGUgJ3R5cGUnIG1lbWJlciBvZiB0aGUKLS8vIFR5cGVzIHRlbXBsYXRlLgotdGVtcGxhdGUg
PHR5cGVuYW1lIFQxID0gaW50ZXJuYWw6Ok5vbmUsIHR5cGVuYW1lIFQyID0gaW50ZXJuYWw6Ok5v
bmUsCi0gICAgdHlwZW5hbWUgVDMgPSBpbnRlcm5hbDo6Tm9uZSwgdHlwZW5hbWUgVDQgPSBpbnRl
cm5hbDo6Tm9uZSwKLSAgICB0eXBlbmFtZSBUNSA9IGludGVybmFsOjpOb25lLCB0eXBlbmFtZSBU
NiA9IGludGVybmFsOjpOb25lLAotICAgIHR5cGVuYW1lIFQ3ID0gaW50ZXJuYWw6Ok5vbmUsIHR5
cGVuYW1lIFQ4ID0gaW50ZXJuYWw6Ok5vbmUsCi0gICAgdHlwZW5hbWUgVDkgPSBpbnRlcm5hbDo6
Tm9uZSwgdHlwZW5hbWUgVDEwID0gaW50ZXJuYWw6Ok5vbmUsCi0gICAgdHlwZW5hbWUgVDExID0g
aW50ZXJuYWw6Ok5vbmUsIHR5cGVuYW1lIFQxMiA9IGludGVybmFsOjpOb25lLAotICAgIHR5cGVu
YW1lIFQxMyA9IGludGVybmFsOjpOb25lLCB0eXBlbmFtZSBUMTQgPSBpbnRlcm5hbDo6Tm9uZSwK
LSAgICB0eXBlbmFtZSBUMTUgPSBpbnRlcm5hbDo6Tm9uZSwgdHlwZW5hbWUgVDE2ID0gaW50ZXJu
YWw6Ok5vbmUsCi0gICAgdHlwZW5hbWUgVDE3ID0gaW50ZXJuYWw6Ok5vbmUsIHR5cGVuYW1lIFQx
OCA9IGludGVybmFsOjpOb25lLAotICAgIHR5cGVuYW1lIFQxOSA9IGludGVybmFsOjpOb25lLCB0
eXBlbmFtZSBUMjAgPSBpbnRlcm5hbDo6Tm9uZSwKLSAgICB0eXBlbmFtZSBUMjEgPSBpbnRlcm5h
bDo6Tm9uZSwgdHlwZW5hbWUgVDIyID0gaW50ZXJuYWw6Ok5vbmUsCi0gICAgdHlwZW5hbWUgVDIz
ID0gaW50ZXJuYWw6Ok5vbmUsIHR5cGVuYW1lIFQyNCA9IGludGVybmFsOjpOb25lLAotICAgIHR5
cGVuYW1lIFQyNSA9IGludGVybmFsOjpOb25lLCB0eXBlbmFtZSBUMjYgPSBpbnRlcm5hbDo6Tm9u
ZSwKLSAgICB0eXBlbmFtZSBUMjcgPSBpbnRlcm5hbDo6Tm9uZSwgdHlwZW5hbWUgVDI4ID0gaW50
ZXJuYWw6Ok5vbmUsCi0gICAgdHlwZW5hbWUgVDI5ID0gaW50ZXJuYWw6Ok5vbmUsIHR5cGVuYW1l
IFQzMCA9IGludGVybmFsOjpOb25lLAotICAgIHR5cGVuYW1lIFQzMSA9IGludGVybmFsOjpOb25l
LCB0eXBlbmFtZSBUMzIgPSBpbnRlcm5hbDo6Tm9uZSwKLSAgICB0eXBlbmFtZSBUMzMgPSBpbnRl
cm5hbDo6Tm9uZSwgdHlwZW5hbWUgVDM0ID0gaW50ZXJuYWw6Ok5vbmUsCi0gICAgdHlwZW5hbWUg
VDM1ID0gaW50ZXJuYWw6Ok5vbmUsIHR5cGVuYW1lIFQzNiA9IGludGVybmFsOjpOb25lLAotICAg
IHR5cGVuYW1lIFQzNyA9IGludGVybmFsOjpOb25lLCB0eXBlbmFtZSBUMzggPSBpbnRlcm5hbDo6
Tm9uZSwKLSAgICB0eXBlbmFtZSBUMzkgPSBpbnRlcm5hbDo6Tm9uZSwgdHlwZW5hbWUgVDQwID0g
aW50ZXJuYWw6Ok5vbmUsCi0gICAgdHlwZW5hbWUgVDQxID0gaW50ZXJuYWw6Ok5vbmUsIHR5cGVu
YW1lIFQ0MiA9IGludGVybmFsOjpOb25lLAotICAgIHR5cGVuYW1lIFQ0MyA9IGludGVybmFsOjpO
b25lLCB0eXBlbmFtZSBUNDQgPSBpbnRlcm5hbDo6Tm9uZSwKLSAgICB0eXBlbmFtZSBUNDUgPSBp
bnRlcm5hbDo6Tm9uZSwgdHlwZW5hbWUgVDQ2ID0gaW50ZXJuYWw6Ok5vbmUsCi0gICAgdHlwZW5h
bWUgVDQ3ID0gaW50ZXJuYWw6Ok5vbmUsIHR5cGVuYW1lIFQ0OCA9IGludGVybmFsOjpOb25lLAot
ICAgIHR5cGVuYW1lIFQ0OSA9IGludGVybmFsOjpOb25lLCB0eXBlbmFtZSBUNTAgPSBpbnRlcm5h
bDo6Tm9uZT4KLXN0cnVjdCBUeXBlcyB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzNTA8VDEs
IFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwKLSAgICAgIFQx
MywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQs
IFQyNSwgVDI2LAotICAgICAgVDI3LCBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQs
IFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsCi0gICAgICBUNDEsIFQ0MiwgVDQzLCBUNDQs
IFQ0NSwgVDQ2LCBUNDcsIFQ0OCwgVDQ5LCBUNTA+IHR5cGU7Ci19OwotCi10ZW1wbGF0ZSA8Pgot
c3RydWN0IFR5cGVzPGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAot
ICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczAgdHlwZTsKLX07
Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDE+Ci1zdHJ1Y3QgVHlwZXM8VDEsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
Ci0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5
cGVzMTxUMT4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyPgot
c3RydWN0IFR5cGVzPFQxLCBUMiwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZT4gewotICB0
eXBlZGVmIGludGVybmFsOjpUeXBlczI8VDEsIFQyPiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBl
bmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzPgotc3RydWN0IFR5cGVzPFQxLCBUMiwg
VDMsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0g
ICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
Ci0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlwZXMzPFQxLCBUMiwgVDM+IHR5
cGU7Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMs
IHR5cGVuYW1lIFQ0Pgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5h
bDo6VHlwZXM0PFQxLCBUMiwgVDMsIFQ0PiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBU
MSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDU+Ci1z
dHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0g
ICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
Ci0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczU8VDEsIFQyLCBUMywgVDQsIFQ1
PiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1l
IFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDY+Ci1zdHJ1Y3Qg
VHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAg
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAot
ICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBl
ZGVmIGludGVybmFsOjpUeXBlczY8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNj4gdHlwZTsKLX07Ci10
ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUg
VDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNz4KLXN0cnVjdCBU
eXBlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAot
ICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6
OlR5cGVzNzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNz4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8
dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVu
YW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDg+Ci1zdHJ1
Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0g
ICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlwZXM4PFQxLCBU
MiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOD4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUg
VDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAot
ICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5Pgot
c3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIGludGVybmFs
OjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAot
ICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzOTxUMSwgVDIsIFQzLCBU
NCwgVDUsIFQ2LCBUNywgVDgsIFQ5PiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwg
dHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAg
dHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVu
YW1lIFQxMD4KLXN0cnVjdCBUeXBlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5
LCBUMTAsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlwZXMxMDxUMSwgVDIsIFQzLCBU
NCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTA+IHR5cGU7Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1l
IFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwK
LSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwg
dHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMT4KLXN0cnVjdCBUeXBlczxUMSwgVDIsIFQz
LCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0g
ICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzMTE8
VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTE+IHR5cGU7Ci19Owot
dGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1l
IFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1l
IFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5h
bWUgVDEyPgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDks
IFQxMCwgVDExLCBUMTIsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAot
ICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVk
ZWYgaW50ZXJuYWw6OlR5cGVzMTI8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwg
VDEwLCBUMTEsCi0gICAgICBUMTI+IHR5cGU7Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0
eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0
eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5h
bWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTM+Ci1z
dHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEs
IFQxMiwgVDEzLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLAotICAgIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzMTM8
VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwKLSAgICAg
IFQxMz4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBl
bmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBl
bmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlw
ZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0Pgotc3Ry
dWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBU
MTIsIFQxMywgVDE0LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAg
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzMTQ8VDEsIFQyLCBUMywgVDQsIFQ1
LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwKLSAgICAgIFQxMywgVDE0PiB0eXBlOwot
fTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBl
bmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBl
bmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5
cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNT4KLXN0
cnVjdCBUeXBlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwg
VDEyLCBUMTMsIFQxNCwgVDE1LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAot
ICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmU+IHsK
LSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlwZXMxNTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDgsIFQ5LCBUMTAsIFQxMSwgVDEyLAotICAgICAgVDEzLCBUMTQsIFQxNT4gdHlwZTsKLX07Ci10
ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUg
VDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUg
VDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFt
ZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlw
ZW5hbWUgVDE2Pgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwg
VDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgVDE2LCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAg
ICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmU+
IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlwZXMxNjxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBU
NywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLAotICAgICAgVDEzLCBUMTQsIFQxNSwgVDE2PiB0eXBl
OwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0
eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0
eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEs
IHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwK
LSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNz4KLXN0cnVjdCBUeXBlczxUMSwgVDIsIFQz
LCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAot
ICAgIFQxNiwgVDE3LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwK
LSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRl
cm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczE3PFQxLCBUMiwgVDMsIFQ0
LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTMsIFQxNCwgVDE1
LCBUMTYsIFQxNz4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQy
LCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2
LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0g
ICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0
LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1l
IFQxOD4KLXN0cnVjdCBUeXBlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBU
MTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgIFQxNiwgVDE3LCBUMTgsIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0g
ICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlw
ZXMxODxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLAot
ICAgICAgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOD4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8
dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVu
YW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVu
YW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5
cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2
LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5Pgotc3RydWN0IFR5cGVz
PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywg
VDE0LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lPiB7Ci0g
IHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzMTk8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4
LCBUOSwgVDEwLCBUMTEsIFQxMiwKLSAgICAgIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgs
IFQxOT4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBl
bmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBl
bmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlw
ZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBl
bmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwg
dHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjA+Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQs
IFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICBU
MTYsIFQxNywgVDE4LCBUMTksIFQyMCwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzMjA8
VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwKLSAgICAg
IFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwPiB0eXBlOwotfTsKLXRlbXBs
YXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwg
dHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwg
dHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQx
MiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFt
ZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1l
IFQyMCwKLSAgICB0eXBlbmFtZSBUMjE+Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1
LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICBUMTYs
IFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
Ci0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczIxPFQxLCBUMiwgVDMsIFQ0
LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTMsIFQxNCwgVDE1
LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxPiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBl
bmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUg
VDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUg
VDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5h
bWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5
cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAg
ICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMj4KLXN0cnVjdCBUeXBlczxUMSwgVDIsIFQzLCBU
NCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAg
IFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczIyPFQxLCBUMiwgVDMsIFQ0LCBUNSwg
VDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTMsIFQxNCwgVDE1LCBUMTYs
IFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjI+IHR5cGU7Ci19OwotdGVtcGxhdGUgPHR5cGVu
YW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBU
NSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBU
OSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFt
ZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlw
ZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAg
IHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjM+Ci1zdHJ1Y3QgVHlwZXM8
VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBU
MTQsIFQxNSwKLSAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAg
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFs
OjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzMjM8VDEsIFQyLCBUMywgVDQsIFQ1
LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwKLSAgICAgIFQxMywgVDE0LCBUMTUsIFQx
NiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzPiB0eXBlOwotfTsKLXRlbXBsYXRl
IDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlw
ZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlw
ZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwg
dHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBU
MTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQy
MCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFt
ZSBUMjQ+Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwg
VDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQy
MCwgVDIxLCBUMjIsIFQyMywgVDI0LCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAg
ICBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczI0PFQxLCBUMiwg
VDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTMsIFQx
NCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0PiB0eXBl
OwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0
eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0
eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEs
IHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwK
LSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBU
MTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5h
bWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNT4KLXN0cnVjdCBUeXBlczxUMSwgVDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1
LAotICAgIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwg
aW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlw
ZXMyNTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLAot
ICAgICAgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBU
MjMsIFQyNCwgVDI1PiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUg
VDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUg
VDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwK
LSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBU
MTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5h
bWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5
cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAg
ICB0eXBlbmFtZSBUMjY+Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcs
IFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICBUMTYsIFQxNywgVDE4
LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgaW50ZXJuYWw6Ok5vbmUs
Ci0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZT4g
ewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczI2PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3
LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywg
VDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsCi0gICAgICBUMjY+IHR5cGU7
Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5
cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5
cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwg
dHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAot
ICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQx
OSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFt
ZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlw
ZW5hbWUgVDI3Pgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwg
VDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQxOCwgVDE5
LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgaW50ZXJuYWw6Ok5vbmUs
Ci0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50
ZXJuYWw6OlR5cGVzMjc8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBU
MTEsIFQxMiwKLSAgICAgIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBU
MjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LAotICAgICAgVDI3PiB0eXBlOwotfTsKLXRlbXBs
YXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwg
dHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwg
dHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQx
MiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFt
ZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1l
IFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBl
bmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywg
dHlwZW5hbWUgVDI4Pgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBU
OCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQxOCwg
VDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAgIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAg
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpU
eXBlczI4PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIs
Ci0gICAgICBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIs
IFQyMywgVDI0LCBUMjUsIFQyNiwKLSAgICAgIFQyNywgVDI4PiB0eXBlOwotfTsKLXRlbXBsYXRl
IDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlw
ZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlw
ZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwg
dHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBU
MTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQy
MCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFt
ZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlw
ZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjk+Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1
LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICBUMTYs
IFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBU
MjgsIFQyOSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwK
LSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpU
eXBlczI5PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIs
Ci0gICAgICBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIs
IFQyMywgVDI0LCBUMjUsIFQyNiwKLSAgICAgIFQyNywgVDI4LCBUMjk+IHR5cGU7Ci19OwotdGVt
cGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0
LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4
LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUg
VDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVu
YW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5h
bWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5
cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3
LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwPgotc3RydWN0IFR5cGVz
PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywg
VDE0LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQy
NCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwK
LSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFs
OjpUeXBlczMwPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBU
MTIsCi0gICAgICBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBU
MjIsIFQyMywgVDI0LCBUMjUsIFQyNiwKLSAgICAgIFQyNywgVDI4LCBUMjksIFQzMD4gdHlwZTsK
LX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlw
ZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlw
ZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0
eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0g
ICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5
LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1l
IFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBl
bmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAg
dHlwZW5hbWUgVDMxPgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBU
OCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQxOCwg
VDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksIFQz
MCwKLSAgICBUMzEsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAot
ICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmU+IHsKLSAg
dHlwZWRlZiBpbnRlcm5hbDo6VHlwZXMzMTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgs
IFQ5LCBUMTAsIFQxMSwgVDEyLAotICAgICAgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwg
VDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsCi0gICAgICBUMjcsIFQyOCwg
VDI5LCBUMzAsIFQzMT4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1l
IFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1l
IFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAs
Ci0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUg
VDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVu
YW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0
eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0g
ICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5
LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzI+Ci1zdHJ1Y3Qg
VHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwg
VDEzLCBUMTQsIFQxNSwKLSAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQy
MywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQyOSwgVDMwLAotICAgIFQzMSwgVDMyLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlwZXMzMjxUMSwgVDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLAotICAgICAgVDEzLCBU
MTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1
LCBUMjYsCi0gICAgICBUMjcsIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyPiB0eXBlOwotfTsKLXRl
bXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBU
NCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBU
OCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1l
IFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBl
bmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVu
YW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0
eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQy
NywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFt
ZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlwZW5hbWUgVDMzPgotc3RydWN0IFR5cGVzPFQxLCBUMiwg
VDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUs
Ci0gICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBU
MjYsIFQyNywgVDI4LCBUMjksIFQzMCwKLSAgICBUMzEsIFQzMiwgVDMzLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZT4gewotICB0
eXBlZGVmIGludGVybmFsOjpUeXBlczMzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwg
VDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBU
MTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwKLSAgICAgIFQyNywgVDI4LCBU
MjksIFQzMCwgVDMxLCBUMzIsIFQzMz4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEs
IHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAg
IHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBl
bmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywg
dHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBU
MTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5h
bWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFt
ZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlw
ZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIs
IHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0Pgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0
LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAg
VDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQy
NywgVDI4LCBUMjksIFQzMCwKLSAgICBUMzEsIFQzMiwgVDMzLCBUMzQsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
Ci0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6
VHlwZXMzNDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEy
LAotICAgICAgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIy
LCBUMjMsIFQyNCwgVDI1LCBUMjYsCi0gICAgICBUMjcsIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMy
LCBUMzMsIFQzND4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQy
LCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2
LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0g
ICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0
LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1l
IFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBl
bmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAg
dHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0
eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQz
MywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzU+Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywg
VDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAg
ICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwg
VDI3LCBUMjgsIFQyOSwgVDMwLAotICAgIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAg
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzMzU8VDEsIFQy
LCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwKLSAgICAgIFQxMywg
VDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQy
NSwgVDI2LAotICAgICAgVDI3LCBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQz
NT4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFt
ZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFt
ZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5h
bWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFt
ZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlw
ZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIs
IHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUg
VDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBU
MzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5h
bWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2Pgotc3RydWN0IFR5cGVzPFQx
LCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0
LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwg
VDI1LCBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwKLSAgICBUMzEsIFQzMiwgVDMzLCBUMzQsIFQz
NSwgVDM2LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlwZXMzNjxUMSwgVDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLAotICAgICAgVDEzLCBU
MTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1
LCBUMjYsCi0gICAgICBUMjcsIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1
LCBUMzY+IHR5cGU7Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlw
ZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlw
ZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5
cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlw
ZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgs
IHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUg
VDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVu
YW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5h
bWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5
cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3
Pgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwg
VDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQy
MSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwKLSAgICBUMzEs
IFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzMzc8
VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwKLSAgICAg
IFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBU
MjQsIFQyNSwgVDI2LAotICAgICAgVDI3LCBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBU
MzQsIFQzNSwgVDM2LCBUMzc+IHR5cGU7Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBl
bmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBl
bmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUg
VDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVu
YW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0
eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQy
MSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1
LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1l
IFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBl
bmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwg
dHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzg+Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQs
IFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICBU
MTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3
LCBUMjgsIFQyOSwgVDMwLAotICAgIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywg
VDM4LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50
ZXJuYWw6OlR5cGVzMzg8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBU
MTEsIFQxMiwKLSAgICAgIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBU
MjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LAotICAgICAgVDI3LCBUMjgsIFQyOSwgVDMwLCBU
MzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOD4gdHlwZTsKLX07Ci10ZW1wbGF0
ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5
cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5
cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIs
IHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUg
VDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBU
MjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5h
bWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5
cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMx
LCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUs
Ci0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUg
VDM5Pgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQx
MCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAs
IFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwKLSAgICBU
MzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBpbnRlcm5hbDo6Tm9u
ZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlwZXMzOTxUMSwgVDIsIFQzLCBUNCwgVDUs
IFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLAotICAgICAgVDEzLCBUMTQsIFQxNSwgVDE2
LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsCi0gICAg
ICBUMjcsIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywg
VDM4LCBUMzk+IHR5cGU7Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwg
dHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwg
dHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAg
IHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwg
dHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBU
MTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5h
bWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5
cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlw
ZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMs
IHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUg
VDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwPgotc3RydWN0IFR5
cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQx
MywgVDE0LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMs
IFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwKLSAgICBUMzEsIFQzMiwgVDMzLCBU
MzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIGludGVybmFsOjpOb25lLAotICAgIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJu
YWw6OlR5cGVzNDA8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEs
IFQxMiwKLSAgICAgIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEs
IFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LAotICAgICAgVDI3LCBUMjgsIFQyOSwgVDMwLCBUMzEs
IFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LAotICAgICAgVDQwPiB0eXBl
OwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0
eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0
eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEs
IHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwK
LSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBU
MTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5h
bWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5
cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAg
ICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlwZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQs
IHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBUMzYsIHR5cGVuYW1lIFQzNywgdHlwZW5hbWUg
VDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0MCwKLSAgICB0eXBlbmFtZSBUNDE+Ci1zdHJ1
Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQx
MiwgVDEzLCBUMTQsIFQxNSwKLSAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIs
IFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQyOSwgVDMwLAotICAgIFQzMSwgVDMyLCBU
MzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBpbnRlcm5hbDo6Tm9u
ZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczQx
PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAg
ICBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywg
VDI0LCBUMjUsIFQyNiwKLSAgICAgIFQyNywgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywg
VDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLAotICAgICAgVDQxPiB0eXBlOwotfTsK
LXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFt
ZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFt
ZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVu
YW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0
eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5
cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIz
LCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1l
IFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBl
bmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlwZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVu
YW1lIFQzNSwKLSAgICB0eXBlbmFtZSBUMzYsIHR5cGVuYW1lIFQzNywgdHlwZW5hbWUgVDM4LCB0
eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0MCwKLSAgICB0eXBlbmFtZSBUNDEsIHR5cGVuYW1lIFQ0
Mj4KLXN0cnVjdCBUeXBlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAs
IFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBU
MjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LCBUMzAsCi0gICAgVDMx
LCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEsIFQ0Miwg
aW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczQyPFQx
LCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBU
MTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0
LCBUMjUsIFQyNiwKLSAgICAgIFQyNywgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0
LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLAotICAgICAgVDQxLCBUNDI+IHR5cGU7Ci19
OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVu
YW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVu
YW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlw
ZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAg
IHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwg
dHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBU
MjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5h
bWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5
cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlw
ZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgs
IHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwgdHlwZW5hbWUg
VDQyLCB0eXBlbmFtZSBUNDM+Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwg
VDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICBUMTYsIFQxNywg
VDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQy
OSwgVDMwLAotICAgIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzks
IFQ0MCwgVDQxLCBUNDIsIFQ0MywKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVz
NDM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwKLSAg
ICAgIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIz
LCBUMjQsIFQyNSwgVDI2LAotICAgICAgVDI3LCBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMz
LCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsCi0gICAgICBUNDEsIFQ0MiwgVDQz
PiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1l
IFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1l
IFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFt
ZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1l
IFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBl
bmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwg
dHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBU
MjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQz
MCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlwZW5hbWUgVDMzLCB0eXBlbmFt
ZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBUMzYsIHR5cGVuYW1lIFQzNywgdHlw
ZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0MCwKLSAgICB0eXBlbmFtZSBUNDEs
IHR5cGVuYW1lIFQ0MiwgdHlwZW5hbWUgVDQzLCB0eXBlbmFtZSBUNDQ+Ci1zdHJ1Y3QgVHlwZXM8
VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBU
MTQsIFQxNSwKLSAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0
LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQyOSwgVDMwLAotICAgIFQzMSwgVDMyLCBUMzMsIFQzNCwg
VDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsIFQ0MywgVDQ0LAotICAgIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGlu
dGVybmFsOjpUeXBlczQ0PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwg
VDExLCBUMTIsCi0gICAgICBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwg
VDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwKLSAgICAgIFQyNywgVDI4LCBUMjksIFQzMCwg
VDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLAotICAgICAg
VDQxLCBUNDIsIFQ0MywgVDQ0PiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlw
ZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlw
ZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1l
IFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBl
bmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywg
dHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBU
MjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQy
NSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFt
ZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlw
ZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBUMzYs
IHR5cGVuYW1lIFQzNywgdHlwZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0MCwK
LSAgICB0eXBlbmFtZSBUNDEsIHR5cGVuYW1lIFQ0MiwgdHlwZW5hbWUgVDQzLCB0eXBlbmFtZSBU
NDQsIHR5cGVuYW1lIFQ0NT4KLXN0cnVjdCBUeXBlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBU
NywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgIFQxNiwgVDE3LCBU
MTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5
LCBUMzAsCi0gICAgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwg
VDQwLCBUNDEsIFQ0MiwgVDQzLCBUNDQsIFQ0NSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6
Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczQ1PFQxLCBUMiwgVDMsIFQ0LCBUNSwg
VDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTMsIFQxNCwgVDE1LCBUMTYs
IFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwKLSAgICAg
IFQyNywgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBU
MzgsIFQzOSwgVDQwLAotICAgICAgVDQxLCBUNDIsIFQ0MywgVDQ0LCBUNDU+IHR5cGU7Ci19Owot
dGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1l
IFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1l
IFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5h
bWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5
cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlw
ZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMs
IHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUg
VDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVu
YW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5h
bWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5
cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwgdHlwZW5hbWUgVDQy
LCB0eXBlbmFtZSBUNDMsIHR5cGVuYW1lIFQ0NCwgdHlwZW5hbWUgVDQ1LAotICAgIHR5cGVuYW1l
IFQ0Nj4KLXN0cnVjdCBUeXBlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBU
MTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIw
LCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LCBUMzAsCi0gICAg
VDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEsIFQ0
MiwgVDQzLCBUNDQsIFQ0NSwKLSAgICBUNDYsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6
OlR5cGVzNDY8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQx
MiwKLSAgICAgIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQy
MiwgVDIzLCBUMjQsIFQyNSwgVDI2LAotICAgICAgVDI3LCBUMjgsIFQyOSwgVDMwLCBUMzEsIFQz
MiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsCi0gICAgICBUNDEsIFQ0
MiwgVDQzLCBUNDQsIFQ0NSwgVDQ2PiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwg
dHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAg
dHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVu
YW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0
eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQx
NywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFt
ZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1l
IFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBl
bmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwg
dHlwZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBU
MzYsIHR5cGVuYW1lIFQzNywgdHlwZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0
MCwKLSAgICB0eXBlbmFtZSBUNDEsIHR5cGVuYW1lIFQ0MiwgdHlwZW5hbWUgVDQzLCB0eXBlbmFt
ZSBUNDQsIHR5cGVuYW1lIFQ0NSwKLSAgICB0eXBlbmFtZSBUNDYsIHR5cGVuYW1lIFQ0Nz4KLXN0
cnVjdCBUeXBlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwg
VDEyLCBUMTMsIFQxNCwgVDE1LAotICAgIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQy
MiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LCBUMzAsCi0gICAgVDMxLCBUMzIs
IFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEsIFQ0MiwgVDQzLCBU
NDQsIFQ0NSwKLSAgICBUNDYsIFQ0NywgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczQ3PFQxLCBUMiwgVDMs
IFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTMsIFQxNCwg
VDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQy
NiwKLSAgICAgIFQyNywgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQz
NiwgVDM3LCBUMzgsIFQzOSwgVDQwLAotICAgICAgVDQxLCBUNDIsIFQ0MywgVDQ0LCBUNDUsIFQ0
NiwgVDQ3PiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5
cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5
cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0
eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5
cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4
LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1l
IFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBl
bmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVu
YW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlwZW5hbWUgVDMzLCB0
eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBUMzYsIHR5cGVuYW1lIFQz
NywgdHlwZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0MCwKLSAgICB0eXBlbmFt
ZSBUNDEsIHR5cGVuYW1lIFQ0MiwgdHlwZW5hbWUgVDQzLCB0eXBlbmFtZSBUNDQsIHR5cGVuYW1l
IFQ0NSwKLSAgICB0eXBlbmFtZSBUNDYsIHR5cGVuYW1lIFQ0NywgdHlwZW5hbWUgVDQ4Pgotc3Ry
dWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBU
MTIsIFQxMywgVDE0LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIy
LCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwKLSAgICBUMzEsIFQzMiwg
VDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwgVDQyLCBUNDMsIFQ0
NCwgVDQ1LAotICAgIFQ0NiwgVDQ3LCBUNDgsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczQ4PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYs
IFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTMsIFQxNCwgVDE1LCBUMTYsIFQx
NywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwKLSAgICAgIFQy
NywgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgs
IFQzOSwgVDQwLAotICAgICAgVDQxLCBUNDIsIFQ0MywgVDQ0LCBUNDUsIFQ0NiwgVDQ3LCBUNDg+
IHR5cGU7Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUg
VDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUg
VDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1l
IFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUg
VDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVu
YW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0
eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQy
NiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMw
LAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1l
IFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBl
bmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwg
dHlwZW5hbWUgVDQyLCB0eXBlbmFtZSBUNDMsIHR5cGVuYW1lIFQ0NCwgdHlwZW5hbWUgVDQ1LAot
ICAgIHR5cGVuYW1lIFQ0NiwgdHlwZW5hbWUgVDQ3LCB0eXBlbmFtZSBUNDgsIHR5cGVuYW1lIFQ0
OT4KLXN0cnVjdCBUeXBlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAs
IFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBU
MjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LCBUMzAsCi0gICAgVDMx
LCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEsIFQ0Miwg
VDQzLCBUNDQsIFQ0NSwKLSAgICBUNDYsIFQ0NywgVDQ4LCBUNDksIGludGVybmFsOjpOb25lPiB7
Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzNDk8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcs
IFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwKLSAgICAgIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBU
MTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LAotICAgICAgVDI3LCBU
MjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5
LCBUNDAsCi0gICAgICBUNDEsIFQ0MiwgVDQzLCBUNDQsIFQ0NSwgVDQ2LCBUNDcsIFQ0OCwgVDQ5
PiB0eXBlOwotfTsKLQotbmFtZXNwYWNlIGludGVybmFsIHsKLQogIyBkZWZpbmUgR1RFU1RfVEVN
UExBVEVfIHRlbXBsYXRlIDx0eXBlbmFtZSBUPiBjbGFzcwogCiAvLyBUaGUgdGVtcGxhdGUgInNl
bGVjdG9yIiBzdHJ1Y3QgVGVtcGxhdGVTZWw8VG1wbD4gaXMgdXNlZCB0bwpAQCAtMTY1NywxNjky
ICsxMjAsNjQgQEAgc3RydWN0IFRlbXBsYXRlU2VsIHsKICMgZGVmaW5lIEdURVNUX0JJTkRfKFRt
cGxTZWwsIFQpIFwKICAgVG1wbFNlbDo6dGVtcGxhdGUgQmluZDxUPjo6dHlwZQogCi0vLyBBIHVu
aXF1ZSBzdHJ1Y3QgdGVtcGxhdGUgdXNlZCBhcyB0aGUgZGVmYXVsdCB2YWx1ZSBmb3IgdGhlCi0v
LyBhcmd1bWVudHMgb2YgY2xhc3MgdGVtcGxhdGUgVGVtcGxhdGVzLiAgVGhpcyBhbGxvd3MgdXMg
dG8gc2ltdWxhdGUKLS8vIHZhcmlhZGljIHRlbXBsYXRlcyAoZS5nLiBUZW1wbGF0ZXM8aW50Piwg
VGVtcGxhdGVzPGludCwgZG91YmxlPiwKLS8vIGFuZCBldGMpLCB3aGljaCBDKysgZG9lc24ndCBz
dXBwb3J0IGRpcmVjdGx5LgotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1zdHJ1Y3QgTm9uZVQge307
Ci0KLS8vIFRoZSBmb2xsb3dpbmcgZmFtaWx5IG9mIHN0cnVjdCBhbmQgc3RydWN0IHRlbXBsYXRl
cyBhcmUgdXNlZCB0bwotLy8gcmVwcmVzZW50IHRlbXBsYXRlIGxpc3RzLiAgSW4gcGFydGljdWxh
ciwgVGVtcGxhdGVzTjxUMSwgVDIsIC4uLiwKLS8vIFROPiByZXByZXNlbnRzIGEgbGlzdCBvZiBO
IHRlbXBsYXRlcyAoVDEsIFQyLCAuLi4sIGFuZCBUTikuICBFeGNlcHQKLS8vIGZvciBUZW1wbGF0
ZXMwLCBldmVyeSBzdHJ1Y3QgaW4gdGhlIGZhbWlseSBoYXMgdHdvIG1lbWJlciB0eXBlczoKLS8v
IEhlYWQgZm9yIHRoZSBzZWxlY3RvciBvZiB0aGUgZmlyc3QgdGVtcGxhdGUgaW4gdGhlIGxpc3Qs
IGFuZCBUYWlsCi0vLyBmb3IgdGhlIHJlc3Qgb2YgdGhlIGxpc3QuCi0KLS8vIFRoZSBlbXB0eSB0
ZW1wbGF0ZSBsaXN0Lgotc3RydWN0IFRlbXBsYXRlczAge307Ci0KLS8vIFRlbXBsYXRlIGxpc3Rz
IG9mIGxlbmd0aCAxLCAyLCAzLCBhbmQgc28gb24uCi0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFU
RV8gVDE+Ci1zdHJ1Y3QgVGVtcGxhdGVzMSB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhl
YWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMCBUYWlsOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1Q
TEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMj4KLXN0cnVjdCBUZW1wbGF0ZXMyIHsKLSAgdHlw
ZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMxPFQyPiBUYWls
OwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQy
LCBHVEVTVF9URU1QTEFURV8gVDM+Ci1zdHJ1Y3QgVGVtcGxhdGVzMyB7Ci0gIHR5cGVkZWYgVGVt
cGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMjxUMiwgVDM+IFRhaWw7Ci19
OwotCi10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdU
RVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQ+Ci1zdHJ1Y3QgVGVtcGxh
dGVzNCB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxh
dGVzMzxUMiwgVDMsIFQ0PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBU
MSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDU+Ci1zdHJ1Y3QgVGVtcGxhdGVzNSB7Ci0gIHR5
cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzNDxUMiwgVDMs
IFQ0LCBUNT4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNU
X1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBU
NCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDY+Ci1zdHJ1Y3QgVGVtcGxh
dGVzNiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxh
dGVzNTxUMiwgVDMsIFQ0LCBUNSwgVDY+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfVEVN
UExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBH
VEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNz4KLXN0cnVjdCBUZW1wbGF0ZXM3IHsKLSAgdHlwZWRl
ZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXM2PFQyLCBUMywgVDQs
IFQ1LCBUNiwgVDc+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBH
VEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNU
X1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4Pgotc3RydWN0IFRlbXBsYXRlczggewot
ICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczc8VDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDg+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfVEVN
UExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBH
VEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1Q
TEFURV8gVDk+Ci1zdHJ1Y3QgVGVtcGxhdGVzOSB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+
IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzODxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwg
VDk+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1Q
TEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdU
RVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRF
XyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQxMD4KLXN0cnVjdCBUZW1wbGF0ZXMxMCB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVT
ZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzOTxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3
LCBUOCwgVDksIFQxMD4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEs
IEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBM
QVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExPgotc3RydWN0IFRl
bXBsYXRlczExIHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBU
ZW1wbGF0ZXMxMDxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExPiBUYWls
OwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQy
LCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1Q
TEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdU
RVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTI+Ci1zdHJ1Y3Qg
VGVtcGxhdGVzMTIgewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVm
IFRlbXBsYXRlczExPFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQx
Mj4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBM
QVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RF
U1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUMTM+Ci1zdHJ1Y3QgVGVtcGxhdGVzMTMgewotICB0eXBlZGVm
IFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczEyPFQyLCBUMywgVDQs
IFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzPiBUYWlsOwotfTsKLQotdGVt
cGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1Q
TEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdU
RVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRF
XyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNU
X1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQxMywgR1RFU1RfVEVNUExBVEVfIFQxND4KLXN0cnVjdCBUZW1wbGF0ZXMxNCB7Ci0gIHR5cGVk
ZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMTM8VDIsIFQzLCBU
NCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgICBUMTQ+IFRh
aWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8g
VDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RF
TVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywg
R1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8g
VDE1Pgotc3RydWN0IFRlbXBsYXRlczE1IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVh
ZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMxNDxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDks
IFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgICAgVDE1PiBUYWlsOwotfTsKLQotdGVtcGxh
dGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFU
RV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNU
X1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBU
OCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RF
TVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQx
MywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDE2Pgotc3RydWN0IFRlbXBsYXRlczE2IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNl
bDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMxNTxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3
LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgICAgVDE1LCBUMTY+IFRhaWw7
Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIs
IEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBM
QVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RF
U1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTc+Ci1zdHJ1Y3Qg
VGVtcGxhdGVzMTcgewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVm
IFRlbXBsYXRlczE2PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQx
MiwgVDEzLCBUMTQsCi0gICAgICBUMTUsIFQxNiwgVDE3PiBUYWlsOwotfTsKLQotdGVtcGxhdGUg
PEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8g
VDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RF
TVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwg
R1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBM
QVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywg
R1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4Pgotc3Ry
dWN0IFRlbXBsYXRlczE4IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlw
ZWRlZiBUZW1wbGF0ZXMxNzxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDEx
LCBUMTIsIFQxMywgVDE0LAotICAgICAgVDE1LCBUMTYsIFQxNywgVDE4PiBUYWlsOwotfTsKLQot
dGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9U
RU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUs
IEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBM
QVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdU
RVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8g
VDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTk+Ci1zdHJ1Y3QgVGVtcGxhdGVzMTkgewotICB0
eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczE4PFQyLCBU
MywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAg
ICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOT4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF9U
RU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAg
IEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8g
VDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RF
TVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDEx
LCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RF
TVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQx
NiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFURV8gVDIwPgotc3RydWN0IFRlbXBsYXRlczIwIHsK
LSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMxOTxU
MiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAot
ICAgICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMD4gVGFpbDsKLX07Ci0KLXRlbXBsYXRl
IDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVf
IFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9U
RU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgs
IEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1Q
TEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMs
IEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFU
RV8gVDIxPgotc3RydWN0IFRlbXBsYXRlczIxIHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4g
SGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMyMDxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwg
VDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgICAgVDE1LCBUMTYsIFQxNywgVDE4LCBU
MTksIFQyMCwgVDIxPiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwg
R1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBM
QVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwg
R1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1Q
TEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTks
IEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQyMj4KLXN0cnVjdCBUZW1wbGF0ZXMyMiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8
VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMjE8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICAgIFQxNSwgVDE2LCBUMTcsIFQx
OCwgVDE5LCBUMjAsIFQyMSwgVDIyPiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBM
QVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExB
VEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdU
RVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExB
VEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBH
VEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMz4KLXN0cnVjdCBUZW1wbGF0
ZXMyMyB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxh
dGVzMjI8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMs
IFQxNCwKLSAgICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjM+
IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFU
RV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNU
X1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
NywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFU
RV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdU
RVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExB
VEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBH
VEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0Pgotc3RydWN0IFRlbXBsYXRl
czI0IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0
ZXMyMzxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywg
VDE0LAotICAgICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywg
VDI0PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVN
UExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBH
VEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVN
UExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3
LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RF
TVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQy
MiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDI1Pgotc3RydWN0IFRlbXBsYXRlczI1IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNl
bDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMyNDxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3
LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgICAgVDE1LCBUMTYsIFQxNywg
VDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjU+IFRhaWw7Ci19OwotCi10ZW1w
bGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBM
QVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RF
U1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVf
IFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1Rf
VEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVN
UExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIz
LCBHVEVTVF9URU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RF
TVBMQVRFXyBUMjY+Ci1zdHJ1Y3QgVGVtcGxhdGVzMjYgewotICB0eXBlZGVmIFRlbXBsYXRlU2Vs
PFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczI1PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcs
IFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgICBUMTUsIFQxNiwgVDE3LCBU
MTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2PiBUYWlsOwotfTsKLQot
dGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9U
RU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUs
IEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBM
QVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdU
RVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8g
VDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNU
X1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVf
IFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVT
VF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3Pgotc3RydWN0IFRlbXBsYXRlczI3
IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMy
NjxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0
LAotICAgICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0
LCBUMjUsIFQyNiwgVDI3PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBU
MSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RF
TVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQx
NCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9U
RU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1Q
TEFURV8gVDI3LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjg+Ci1zdHJ1Y3QgVGVtcGxhdGVzMjgg
ewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczI3
PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQs
Ci0gICAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQs
IFQyNSwgVDI2LCBUMjcsCi0gICAgICBUMjg+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1Rf
VEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVf
IFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9U
RU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQx
MSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9U
RU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1Q
TEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RFTVBMQVRFXyBUMjYs
IEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyOCwgR1RFU1RfVEVN
UExBVEVfIFQyOT4KLXN0cnVjdCBUZW1wbGF0ZXMyOSB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8
VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMjg8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICAgIFQxNSwgVDE2LCBUMTcsIFQx
OCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAg
ICAgVDI5PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1Rf
VEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0
LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBU
MTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1Rf
VEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8g
VDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNU
X1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RF
TVBMQVRFXyBUMzA+Ci1zdHJ1Y3QgVGVtcGxhdGVzMzAgewotICB0eXBlZGVmIFRlbXBsYXRlU2Vs
PFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczI5PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcs
IFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgICBUMTUsIFQxNiwgVDE3LCBU
MTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAg
ICAgIFQyOSwgVDMwPiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwg
R1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBM
QVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwg
R1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1Q
TEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTks
IEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFU
RV8gVDI3LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdU
RVNUX1RFTVBMQVRFXyBUMzAsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMT4KLXN0cnVjdCBUZW1w
bGF0ZXMzMSB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVt
cGxhdGVzMzA8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBU
MTMsIFQxNCwKLSAgICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBU
MjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAgICAgVDI5LCBUMzAsIFQzMT4gVGFpbDsK
LX07Ci0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwg
R1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExB
VEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVT
VF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBUMTUs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1RfVEVN
UExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFURV8gVDIw
LCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjIsIEdURVNUX1RF
TVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQy
NSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVfIFQyNywKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVTVF9URU1QTEFURV8gVDMwLAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBMQVRFXyBUMzI+Ci1zdHJ1Y3QgVGVt
cGxhdGVzMzIgewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRl
bXBsYXRlczMxPFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwg
VDEzLCBUMTQsCi0gICAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwg
VDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICAgIFQyOSwgVDMwLCBUMzEsIFQzMj4g
VGFpbDsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRF
XyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1Rf
VEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3
LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRF
XyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RF
U1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFU
RV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjIsIEdU
RVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVfIFQyNywKLSAgICBH
VEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVTVF9URU1QTEFURV8g
VDMwLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBMQVRFXyBUMzIsIEdURVNU
X1RFTVBMQVRFXyBUMzM+Ci1zdHJ1Y3QgVGVtcGxhdGVzMzMgewotICB0eXBlZGVmIFRlbXBsYXRl
U2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczMyPFQyLCBUMywgVDQsIFQ1LCBUNiwg
VDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgICBUMTUsIFQxNiwgVDE3
LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwK
LSAgICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzPiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdU
RVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBM
QVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RF
U1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRF
XyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RF
U1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBU
MjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1Rf
VEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8g
VDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNU
X1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRFXyBUMzAsCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQzMSwgR1RFU1RfVEVNUExBVEVfIFQzMiwgR1RFU1RfVEVNUExBVEVfIFQzMywKLSAgICBHVEVT
VF9URU1QTEFURV8gVDM0Pgotc3RydWN0IFRlbXBsYXRlczM0IHsKLSAgdHlwZWRlZiBUZW1wbGF0
ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMzMzxUMiwgVDMsIFQ0LCBUNSwgVDYs
IFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgICAgVDE1LCBUMTYsIFQx
NywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgs
Ci0gICAgICBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0PiBUYWlsOwotfTsKLQotdGVtcGxh
dGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFU
RV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNU
X1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBU
OCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RF
TVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQx
MywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBM
QVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywg
R1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1Q
TEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjgs
IEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRFXyBUMzAsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQzMSwgR1RFU1RfVEVNUExBVEVfIFQzMiwgR1RFU1RfVEVNUExBVEVfIFQzMywKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDM0LCBHVEVTVF9URU1QTEFURV8gVDM1Pgotc3RydWN0IFRlbXBs
YXRlczM1IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1w
bGF0ZXMzNDxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQx
MywgVDE0LAotICAgICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQy
MywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsCi0gICAgICBUMjksIFQzMCwgVDMxLCBUMzIsIFQz
MywgVDM0LCBUMzU+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBH
VEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNU
X1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExB
VEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBH
VEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBM
QVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwg
R1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0LAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RFTVBMQVRFXyBUMjYsIEdURVNUX1RFTVBMQVRF
XyBUMjcsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyOCwgR1RFU1RfVEVNUExBVEVfIFQyOSwgR1RF
U1RfVEVNUExBVEVfIFQzMCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDMxLCBHVEVTVF9URU1QTEFU
RV8gVDMyLCBHVEVTVF9URU1QTEFURV8gVDMzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzQsIEdU
RVNUX1RFTVBMQVRFXyBUMzUsIEdURVNUX1RFTVBMQVRFXyBUMzY+Ci1zdHJ1Y3QgVGVtcGxhdGVz
MzYgewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRl
czM1PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBU
MTQsCi0gICAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBU
MjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBU
MzQsIFQzNSwgVDM2PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwg
R1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBM
QVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwg
R1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1Q
TEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTks
IEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFU
RV8gVDI3LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdU
RVNUX1RFTVBMQVRFXyBUMzAsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMSwgR1RFU1RfVEVNUExB
VEVfIFQzMiwgR1RFU1RfVEVNUExBVEVfIFQzMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDM0LCBH
VEVTVF9URU1QTEFURV8gVDM1LCBHVEVTVF9URU1QTEFURV8gVDM2LAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMzc+Ci1zdHJ1Y3QgVGVtcGxhdGVzMzcgewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQx
PiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczM2PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4
LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgICBUMTUsIFQxNiwgVDE3LCBUMTgs
IFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICAg
IFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzc+IFRhaWw7Ci19Owot
Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNU
X1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBU
NSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVN
UExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwg
R1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRF
XyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RF
U1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFU
RV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdU
RVNUX1RFTVBMQVRFXyBUMjYsIEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQyOCwgR1RFU1RfVEVNUExBVEVfIFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDMxLCBHVEVTVF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1QTEFURV8g
VDMzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzQsIEdURVNUX1RFTVBMQVRFXyBUMzUsIEdURVNU
X1RFTVBMQVRFXyBUMzYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNywgR1RFU1RfVEVNUExBVEVf
IFQzOD4KLXN0cnVjdCBUZW1wbGF0ZXMzOCB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhl
YWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMzc8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5
LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5
LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAgICAgVDI5
LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4PiBUYWlsOwotfTsK
LQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVT
VF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8g
VDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RF
TVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAs
IEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFU
RV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdU
RVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExB
VEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBH
VEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRFXyBUMzAsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQzMSwgR1RFU1RfVEVNUExBVEVfIFQzMiwgR1RFU1RfVEVNUExBVEVf
IFQzMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDM0LCBHVEVTVF9URU1QTEFURV8gVDM1LCBHVEVT
VF9URU1QTEFURV8gVDM2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzcsIEdURVNUX1RFTVBMQVRF
XyBUMzgsIEdURVNUX1RFTVBMQVRFXyBUMzk+Ci1zdHJ1Y3QgVGVtcGxhdGVzMzkgewotICB0eXBl
ZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczM4PFQyLCBUMywg
VDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgICBU
MTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2
LCBUMjcsIFQyOCwKLSAgICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2
LCBUMzcsIFQzOCwgVDM5PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBU
MSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RF
TVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQx
NCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9U
RU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1Q
TEFURV8gVDI3LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjks
IEdURVNUX1RFTVBMQVRFXyBUMzAsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMSwgR1RFU1RfVEVN
UExBVEVfIFQzMiwgR1RFU1RfVEVNUExBVEVfIFQzMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDM0
LCBHVEVTVF9URU1QTEFURV8gVDM1LCBHVEVTVF9URU1QTEFURV8gVDM2LAotICAgIEdURVNUX1RF
TVBMQVRFXyBUMzcsIEdURVNUX1RFTVBMQVRFXyBUMzgsIEdURVNUX1RFTVBMQVRFXyBUMzksCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQ0MD4KLXN0cnVjdCBUZW1wbGF0ZXM0MCB7Ci0gIHR5cGVkZWYg
VGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMzk8VDIsIFQzLCBUNCwg
VDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICAgIFQxNSwg
VDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQy
NywgVDI4LAotICAgICAgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQz
NywgVDM4LCBUMzksIFQ0MD4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8g
VDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RF
TVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBU
OSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9U
RU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBU
MTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1Rf
VEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDE5LCBHVEVTVF9URU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMjIsIEdURVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVN
UExBVEVfIFQyNywKLSAgICBHVEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5
LCBHVEVTVF9URU1QTEFURV8gVDMwLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RF
TVBMQVRFXyBUMzIsIEdURVNUX1RFTVBMQVRFXyBUMzMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQz
NCwgR1RFU1RfVEVNUExBVEVfIFQzNSwgR1RFU1RfVEVNUExBVEVfIFQzNiwKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDM3LCBHVEVTVF9URU1QTEFURV8gVDM4LCBHVEVTVF9URU1QTEFURV8gVDM5LAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUNDAsIEdURVNUX1RFTVBMQVRFXyBUNDE+Ci1zdHJ1Y3QgVGVt
cGxhdGVzNDEgewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRl
bXBsYXRlczQwPFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwg
VDEzLCBUMTQsCi0gICAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwg
VDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwg
VDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MT4gVGFpbDsKLX07Ci0K
LXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1Rf
VEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1
LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1Q
TEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBH
VEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVf
IFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFURV8gVDIwLCBHVEVT
VF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjIsIEdURVNUX1RFTVBMQVRF
XyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyNSwgR1RF
U1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVfIFQyNywKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVTVF9URU1QTEFURV8gVDMwLAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBMQVRFXyBUMzIsIEdURVNUX1RFTVBMQVRFXyBU
MzMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNCwgR1RFU1RfVEVNUExBVEVfIFQzNSwgR1RFU1Rf
VEVNUExBVEVfIFQzNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDM3LCBHVEVTVF9URU1QTEFURV8g
VDM4LCBHVEVTVF9URU1QTEFURV8gVDM5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDAsIEdURVNU
X1RFTVBMQVRFXyBUNDEsIEdURVNUX1RFTVBMQVRFXyBUNDI+Ci1zdHJ1Y3QgVGVtcGxhdGVzNDIg
ewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczQx
PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQs
Ci0gICAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQs
IFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQs
IFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwKLSAgICAgIFQ0Mj4gVGFpbDsKLX07
Ci0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RF
U1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVf
IFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9U
RU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEw
LCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RF
TVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExB
VEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFURV8gVDIwLCBH
VEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjIsIEdURVNUX1RFTVBM
QVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyNSwg
R1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVfIFQyNywKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVTVF9URU1QTEFURV8gVDMwLAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBMQVRFXyBUMzIsIEdURVNUX1RFTVBMQVRF
XyBUMzMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNCwgR1RFU1RfVEVNUExBVEVfIFQzNSwgR1RF
U1RfVEVNUExBVEVfIFQzNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDM3LCBHVEVTVF9URU1QTEFU
RV8gVDM4LCBHVEVTVF9URU1QTEFURV8gVDM5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDAsIEdU
RVNUX1RFTVBMQVRFXyBUNDEsIEdURVNUX1RFTVBMQVRFXyBUNDIsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQ0Mz4KLXN0cnVjdCBUZW1wbGF0ZXM0MyB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+
IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzNDI8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgs
IFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwg
VDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAgICAg
VDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0
MCwgVDQxLCBUNDIsCi0gICAgICBUNDM+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfVEVN
UExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBH
VEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1Q
TEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwg
R1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1Q
TEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYs
IEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFU
RV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RFTVBMQVRFXyBUMjYsIEdU
RVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyOCwgR1RFU1RfVEVNUExB
VEVfIFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDMxLCBH
VEVTVF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1QTEFURV8gVDMzLAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMzQsIEdURVNUX1RFTVBMQVRFXyBUMzUsIEdURVNUX1RFTVBMQVRFXyBUMzYsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQzNywgR1RFU1RfVEVNUExBVEVfIFQzOCwgR1RFU1RfVEVNUExBVEVf
IFQzOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDQwLCBHVEVTVF9URU1QTEFURV8gVDQxLCBHVEVT
VF9URU1QTEFURV8gVDQyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDMsIEdURVNUX1RFTVBMQVRF
XyBUNDQ+Ci1zdHJ1Y3QgVGVtcGxhdGVzNDQgewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBI
ZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczQzPFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBU
OSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQx
OSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICAgIFQy
OSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAs
IFQ0MSwgVDQyLAotICAgICAgVDQzLCBUNDQ+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1Rf
VEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVf
IFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9U
RU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQx
MSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9U
RU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1Q
TEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RFTVBMQVRFXyBUMjYs
IEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyOCwgR1RFU1RfVEVN
UExBVEVfIFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDMx
LCBHVEVTVF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1QTEFURV8gVDMzLAotICAgIEdURVNUX1RF
TVBMQVRFXyBUMzQsIEdURVNUX1RFTVBMQVRFXyBUMzUsIEdURVNUX1RFTVBMQVRFXyBUMzYsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQzNywgR1RFU1RfVEVNUExBVEVfIFQzOCwgR1RFU1RfVEVNUExB
VEVfIFQzOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDQwLCBHVEVTVF9URU1QTEFURV8gVDQxLCBH
VEVTVF9URU1QTEFURV8gVDQyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDMsIEdURVNUX1RFTVBM
QVRFXyBUNDQsIEdURVNUX1RFTVBMQVRFXyBUNDU+Ci1zdHJ1Y3QgVGVtcGxhdGVzNDUgewotICB0
eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczQ0PFQyLCBU
MywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAg
ICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwg
VDI2LCBUMjcsIFQyOCwKLSAgICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwg
VDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwgVDQyLAotICAgICAgVDQzLCBUNDQsIFQ0NT4g
VGFpbDsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRF
XyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1Rf
VEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3
LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRF
XyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RF
U1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFU
RV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjIsIEdU
RVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVfIFQyNywKLSAgICBH
VEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVTVF9URU1QTEFURV8g
VDMwLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBMQVRFXyBUMzIsIEdURVNU
X1RFTVBMQVRFXyBUMzMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNCwgR1RFU1RfVEVNUExBVEVf
IFQzNSwgR1RFU1RfVEVNUExBVEVfIFQzNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDM3LCBHVEVT
VF9URU1QTEFURV8gVDM4LCBHVEVTVF9URU1QTEFURV8gVDM5LAotICAgIEdURVNUX1RFTVBMQVRF
XyBUNDAsIEdURVNUX1RFTVBMQVRFXyBUNDEsIEdURVNUX1RFTVBMQVRFXyBUNDIsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQ0MywgR1RFU1RfVEVNUExBVEVfIFQ0NCwgR1RFU1RfVEVNUExBVEVfIFQ0
NSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDQ2Pgotc3RydWN0IFRlbXBsYXRlczQ2IHsKLSAgdHlw
ZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXM0NTxUMiwgVDMs
IFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgICAg
VDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQy
NiwgVDI3LCBUMjgsCi0gICAgICBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQz
NiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEsIFQ0MiwKLSAgICAgIFQ0MywgVDQ0LCBUNDUsIFQ0
Nj4gVGFpbDsKK3RlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gSGVhZF8sIEdURVNUX1RFTVBMQVRF
Xy4uLiBUYWlsXz4KK3N0cnVjdCBUZW1wbGF0ZXMgeworICB1c2luZyBIZWFkID0gVGVtcGxhdGVT
ZWw8SGVhZF8+OworICB1c2luZyBUYWlsID0gVGVtcGxhdGVzPFRhaWxfLi4uPjsKIH07CiAKLXRl
bXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVN
UExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBH
VEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFU
RV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVT
VF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQx
OCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFURV8gVDIwLCBHVEVTVF9U
RU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjIsIEdURVNUX1RFTVBMQVRFXyBU
MjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyNSwgR1RFU1Rf
VEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVfIFQyNywKLSAgICBHVEVTVF9URU1QTEFURV8g
VDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVTVF9URU1QTEFURV8gVDMwLAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBMQVRFXyBUMzIsIEdURVNUX1RFTVBMQVRFXyBUMzMs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQzNCwgR1RFU1RfVEVNUExBVEVfIFQzNSwgR1RFU1RfVEVN
UExBVEVfIFQzNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDM3LCBHVEVTVF9URU1QTEFURV8gVDM4
LCBHVEVTVF9URU1QTEFURV8gVDM5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDAsIEdURVNUX1RF
TVBMQVRFXyBUNDEsIEdURVNUX1RFTVBMQVRFXyBUNDIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0
MywgR1RFU1RfVEVNUExBVEVfIFQ0NCwgR1RFU1RfVEVNUExBVEVfIFQ0NSwKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDQ2LCBHVEVTVF9URU1QTEFURV8gVDQ3Pgotc3RydWN0IFRlbXBsYXRlczQ3IHsK
LSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXM0NjxU
MiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAot
ICAgICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBU
MjUsIFQyNiwgVDI3LCBUMjgsCi0gICAgICBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBU
MzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEsIFQ0MiwKLSAgICAgIFQ0MywgVDQ0LCBU
NDUsIFQ0NiwgVDQ3PiBUYWlsOwordGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBIZWFkXz4KK3N0
cnVjdCBUZW1wbGF0ZXM8SGVhZF8+IHsKKyAgdXNpbmcgSGVhZCA9IFRlbXBsYXRlU2VsPEhlYWRf
PjsKKyAgdXNpbmcgVGFpbCA9IE5vbmU7CiB9OwogCi10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVf
IFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAg
IEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8g
VDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1Rf
VEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8g
VDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNU
X1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RFTVBMQVRFXyBUMjYsIEdURVNUX1RF
TVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyOCwgR1RFU1RfVEVNUExBVEVfIFQy
OSwgR1RFU1RfVEVNUExBVEVfIFQzMCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDMxLCBHVEVTVF9U
RU1QTEFURV8gVDMyLCBHVEVTVF9URU1QTEFURV8gVDMzLAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MzQsIEdURVNUX1RFTVBMQVRFXyBUMzUsIEdURVNUX1RFTVBMQVRFXyBUMzYsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQzNywgR1RFU1RfVEVNUExBVEVfIFQzOCwgR1RFU1RfVEVNUExBVEVfIFQzOSwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDQwLCBHVEVTVF9URU1QTEFURV8gVDQxLCBHVEVTVF9URU1Q
TEFURV8gVDQyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDMsIEdURVNUX1RFTVBMQVRFXyBUNDQs
IEdURVNUX1RFTVBMQVRFXyBUNDUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0NiwgR1RFU1RfVEVN
UExBVEVfIFQ0NywgR1RFU1RfVEVNUExBVEVfIFQ0OD4KLXN0cnVjdCBUZW1wbGF0ZXM0OCB7Ci0g
IHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzNDc8VDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAg
ICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1
LCBUMjYsIFQyNywgVDI4LAotICAgICAgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1
LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsCi0gICAgICBUNDMsIFQ0NCwgVDQ1
LCBUNDYsIFQ0NywgVDQ4PiBUYWlsOworLy8gVHVwbGUtbGlrZSB0eXBlIGxpc3RzCit0ZW1wbGF0
ZSA8dHlwZW5hbWUgSGVhZF8sIHR5cGVuYW1lLi4uIFRhaWxfPgorc3RydWN0IFR5cGVzIHsKKyAg
dXNpbmcgSGVhZCA9IEhlYWRfOworICB1c2luZyBUYWlsID0gVHlwZXM8VGFpbF8uLi4+OwogfTsK
IAotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVT
VF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8g
VDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RF
TVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAs
IEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFU
RV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdU
RVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExB
VEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBH
VEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRFXyBUMzAsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQzMSwgR1RFU1RfVEVNUExBVEVfIFQzMiwgR1RFU1RfVEVNUExBVEVf
IFQzMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDM0LCBHVEVTVF9URU1QTEFURV8gVDM1LCBHVEVT
VF9URU1QTEFURV8gVDM2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzcsIEdURVNUX1RFTVBMQVRF
XyBUMzgsIEdURVNUX1RFTVBMQVRFXyBUMzksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0MCwgR1RF
U1RfVEVNUExBVEVfIFQ0MSwgR1RFU1RfVEVNUExBVEVfIFQ0MiwKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDQzLCBHVEVTVF9URU1QTEFURV8gVDQ0LCBHVEVTVF9URU1QTEFURV8gVDQ1LAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUNDYsIEdURVNUX1RFTVBMQVRFXyBUNDcsIEdURVNUX1RFTVBMQVRFXyBU
NDgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0OT4KLXN0cnVjdCBUZW1wbGF0ZXM0OSB7Ci0gIHR5
cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzNDg8VDIsIFQz
LCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICAg
IFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBU
MjYsIFQyNywgVDI4LAotICAgICAgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBU
MzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsCi0gICAgICBUNDMsIFQ0NCwgVDQ1LCBU
NDYsIFQ0NywgVDQ4LCBUNDk+IFRhaWw7Cit0ZW1wbGF0ZSA8dHlwZW5hbWUgSGVhZF8+CitzdHJ1
Y3QgVHlwZXM8SGVhZF8+IHsKKyAgdXNpbmcgSGVhZCA9IEhlYWRfOworICB1c2luZyBUYWlsID0g
Tm9uZTsKIH07CiAKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRF
XyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1Rf
VEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3
LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRF
XyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RF
U1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFU
RV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjIsIEdU
RVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVfIFQyNywKLSAgICBH
VEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVTVF9URU1QTEFURV8g
VDMwLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBMQVRFXyBUMzIsIEdURVNU
X1RFTVBMQVRFXyBUMzMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNCwgR1RFU1RfVEVNUExBVEVf
IFQzNSwgR1RFU1RfVEVNUExBVEVfIFQzNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDM3LCBHVEVT
VF9URU1QTEFURV8gVDM4LCBHVEVTVF9URU1QTEFURV8gVDM5LAotICAgIEdURVNUX1RFTVBMQVRF
XyBUNDAsIEdURVNUX1RFTVBMQVRFXyBUNDEsIEdURVNUX1RFTVBMQVRFXyBUNDIsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQ0MywgR1RFU1RfVEVNUExBVEVfIFQ0NCwgR1RFU1RfVEVNUExBVEVfIFQ0
NSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDQ2LCBHVEVTVF9URU1QTEFURV8gVDQ3LCBHVEVTVF9U
RU1QTEFURV8gVDQ4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDksIEdURVNUX1RFTVBMQVRFXyBU
NTA+Ci1zdHJ1Y3QgVGVtcGxhdGVzNTAgewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFk
OwotICB0eXBlZGVmIFRlbXBsYXRlczQ5PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwg
VDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwg
VDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICAgIFQyOSwg
VDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0
MSwgVDQyLAotICAgICAgVDQzLCBUNDQsIFQ0NSwgVDQ2LCBUNDcsIFQ0OCwgVDQ5LCBUNTA+IFRh
aWw7CisvLyBIZWxwZXIgbWV0YWZ1bmN0aW9ucyB0byB0ZWxsIGFwYXJ0IGEgc2luZ2xlIHR5cGUg
ZnJvbSB0eXBlcworLy8gZ2VuZXJhdGVkIGJ5IDo6dGVzdGluZzo6VHlwZXMKK3RlbXBsYXRlIDx0
eXBlbmFtZS4uLiBUcz4KK3N0cnVjdCBQcm94eVR5cGVMaXN0IHsKKyAgdXNpbmcgdHlwZSA9IFR5
cGVzPFRzLi4uPjsKIH07CiAKK3RlbXBsYXRlIDx0eXBlbmFtZT4KK3N0cnVjdCBpc19wcm94eV90
eXBlX2xpc3QgOiBzdGQ6OmZhbHNlX3R5cGUge307CiAKLS8vIFdlIGRvbid0IHdhbnQgdG8gcmVx
dWlyZSB0aGUgdXNlcnMgdG8gd3JpdGUgVGVtcGxhdGVzTjwuLi4+IGRpcmVjdGx5LAotLy8gYXMg
dGhhdCB3b3VsZCByZXF1aXJlIHRoZW0gdG8gY291bnQgdGhlIGxlbmd0aC4gIFRlbXBsYXRlczwu
Li4+IGlzIG11Y2gKLS8vIGVhc2llciB0byB3cml0ZSwgYnV0IGdlbmVyYXRlcyBob3JyaWJsZSBt
ZXNzYWdlcyB3aGVuIHRoZXJlIGlzIGEKLS8vIGNvbXBpbGVyIGVycm9yLCBhcyBnY2MgaW5zaXN0
cyBvbiBwcmludGluZyBvdXQgZWFjaCB0ZW1wbGF0ZQotLy8gYXJndW1lbnQsIGV2ZW4gaWYgaXQg
aGFzIHRoZSBkZWZhdWx0IHZhbHVlICh0aGlzIG1lYW5zIFRlbXBsYXRlczxsaXN0PgotLy8gd2ls
bCBhcHBlYXIgYXMgVGVtcGxhdGVzPGxpc3QsIE5vbmVULCBOb25lVCwgLi4uLCBOb25lVD4gaW4g
dGhlIGNvbXBpbGVyCi0vLyBlcnJvcnMpLgotLy8KLS8vIE91ciBzb2x1dGlvbiBpcyB0byBjb21i
aW5lIHRoZSBiZXN0IHBhcnQgb2YgdGhlIHR3byBhcHByb2FjaGVzOiBhCi0vLyB1c2VyIHdvdWxk
IHdyaXRlIFRlbXBsYXRlczxUMSwgLi4uLCBUTj4sIGFuZCBHb29nbGUgVGVzdCB3aWxsIHRyYW5z
bGF0ZQotLy8gdGhhdCB0byBUZW1wbGF0ZXNOPFQxLCAuLi4sIFROPiBpbnRlcm5hbGx5IHRvIG1h
a2UgZXJyb3IgbWVzc2FnZXMKLS8vIHJlYWRhYmxlLiAgVGhlIHRyYW5zbGF0aW9uIGlzIGRvbmUg
YnkgdGhlICd0eXBlJyBtZW1iZXIgb2YgdGhlCi0vLyBUZW1wbGF0ZXMgdGVtcGxhdGUuCi10ZW1w
bGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxID0gTm9uZVQsIEdURVNUX1RFTVBMQVRFXyBUMiA9IE5v
bmVULAotICAgIEdURVNUX1RFTVBMQVRFXyBUMyA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDQg
PSBOb25lVCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDUgPSBOb25lVCwgR1RFU1RfVEVNUExBVEVf
IFQ2ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3ID0gTm9uZVQsIEdURVNUX1RFTVBM
QVRFXyBUOCA9IE5vbmVULAotICAgIEdURVNUX1RFTVBMQVRFXyBUOSA9IE5vbmVULCBHVEVTVF9U
RU1QTEFURV8gVDEwID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMSA9IE5vbmVULCBH
VEVTVF9URU1QTEFURV8gVDEyID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMyA9IE5v
bmVULCBHVEVTVF9URU1QTEFURV8gVDE0ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQx
NSA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDE2ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQxNyA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDE4ID0gTm9uZVQsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQxOSA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDIwID0gTm9uZVQsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQyMSA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDIyID0gTm9uZVQs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQyMyA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDI0ID0g
Tm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyNSA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8g
VDI2ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyNyA9IE5vbmVULCBHVEVTVF9URU1Q
TEFURV8gVDI4ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyOSA9IE5vbmVULCBHVEVT
VF9URU1QTEFURV8gVDMwID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMSA9IE5vbmVU
LCBHVEVTVF9URU1QTEFURV8gVDMyID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMyA9
IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDM0ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQzNSA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDM2ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQzNyA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDM4ID0gTm9uZVQsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQzOSA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDQwID0gTm9uZVQsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQ0MSA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDQyID0gTm9u
ZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0MyA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDQ0
ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0NSA9IE5vbmVULCBHVEVTVF9URU1QTEFU
RV8gVDQ2ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0NyA9IE5vbmVULCBHVEVTVF9U
RU1QTEFURV8gVDQ4ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0OSA9IE5vbmVULCBH
VEVTVF9URU1QTEFURV8gVDUwID0gTm9uZVQ+Ci1zdHJ1Y3QgVGVtcGxhdGVzIHsKLSAgdHlwZWRl
ZiBUZW1wbGF0ZXM1MDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQx
MSwgVDEyLCBUMTMsCi0gICAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQy
MSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywKLSAgICAgIFQyOCwgVDI5LCBUMzAsIFQz
MSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLAotICAg
ICAgVDQyLCBUNDMsIFQ0NCwgVDQ1LCBUNDYsIFQ0NywgVDQ4LCBUNDksIFQ1MD4gdHlwZTsKLX07
Ci0KLXRlbXBsYXRlIDw+Ci1zdHJ1Y3QgVGVtcGxhdGVzPE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
Ci0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0g
ICAgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMwIHR5cGU7Ci19OwotdGVtcGxhdGUgPEdU
RVNUX1RFTVBMQVRFXyBUMT4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwK
LSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAg
ICBOb25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRlczE8VDE+IHR5cGU7Ci19OwotdGVtcGxhdGUg
PEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyPgotc3RydWN0IFRlbXBsYXRl
czxUMSwgVDIsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAot
ICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVUPiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMjxUMSwg
VDI+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExB
VEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDM+Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQxLCBUMiwgVDMs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVUPiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMzxUMSwgVDIsIFQzPiB0eXBlOwotfTsKLXRl
bXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVN
UExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUND4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEs
IFQyLCBUMywgVDQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0g
ICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXM0PFQxLCBUMiwgVDMsIFQ0PiB0eXBl
OwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwg
R1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExB
VEVfIFQ1Pgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVD4gewotICB0eXBlZGVmIFRlbXBs
YXRlczU8VDEsIFQyLCBUMywgVDQsIFQ1PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1Q
TEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDY+
Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwK
LSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVUPiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzNjxUMSwg
VDIsIFQzLCBUNCwgVDUsIFQ2PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8g
VDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RF
TVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQ3Pgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUs
IFQ2LCBUNywgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVD4gewotICB0eXBlZGVm
IFRlbXBsYXRlczc8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDc+IHR5cGU7Ci19OwotdGVtcGxh
dGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFU
RV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNU
X1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBU
OD4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXM4PFQxLCBUMiwg
VDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOD4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExB
VEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVT
VF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFU
RV8gVDk+Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwg
VDksIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVUPiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzOTxUMSwgVDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9U
RU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAg
IEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8g
VDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RF
TVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwPgotc3RydWN0IFRlbXBsYXRlczxU
MSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIE5vbmVULCBOb25lVCwgTm9u
ZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
Ci0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQ+IHsK
LSAgdHlwZWRlZiBUZW1wbGF0ZXMxMDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5
LCBUMTA+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVN
UExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBH
VEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTE+Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQx
LCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBOb25lVCwgTm9uZVQs
Ci0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0g
ICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQ+IHsKLSAg
dHlwZWRlZiBUZW1wbGF0ZXMxMTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBU
MTAsIFQxMT4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9U
RU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQs
IEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBM
QVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQx
Mj4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwg
VDEwLCBUMTEsIFQxMiwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
Ci0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMxMjxUMSwgVDIsIFQzLCBUNCwg
VDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyPiB0eXBlOwotfTsKLXRlbXBsYXRlIDxH
VEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQz
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1Q
TEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdU
RVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFU
RV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTM+Ci1z
dHJ1Y3QgVGVtcGxhdGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwg
VDExLCBUMTIsIFQxMywgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
Ci0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRlczEzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYs
IFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTM+IHR5cGU7Ci19OwotdGVtcGxh
dGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFU
RV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNU
X1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBU
OCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RF
TVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQx
MywgR1RFU1RfVEVNUExBVEVfIFQxND4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQs
IFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRlczE0
PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywK
LSAgICAgIFQxND4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVT
VF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8g
VDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RF
TVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVf
IFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVT
VF9URU1QTEFURV8gVDE1Pgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICBUMTUsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRlczE1PFQxLCBUMiwg
VDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICAgIFQx
NCwgVDE1PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RF
TVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwg
R1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEy
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RF
TVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNj4KLXN0cnVjdCBUZW1wbGF0ZXM8
VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBU
MTQsCi0gICAgVDE1LCBUMTYsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVUPiB7Ci0gIHR5cGVkZWYg
VGVtcGxhdGVzMTY8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEs
IFQxMiwgVDEzLAotICAgICAgVDE0LCBUMTUsIFQxNj4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8R1RF
U1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywK
LSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExB
VEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVT
VF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVf
IFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVT
VF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTc+Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQxLCBUMiwgVDMs
IFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgIFQx
NSwgVDE2LCBUMTcsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMxNzxU
MSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0g
ICAgICBUMTQsIFQxNSwgVDE2LCBUMTc+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBM
QVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExB
VEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdU
RVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExB
VEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBH
VEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4Pgotc3RydWN0IFRlbXBsYXRl
czxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMs
IFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVD4gewotICB0eXBlZGVmIFRl
bXBsYXRlczE4PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBU
MTIsIFQxMywKLSAgICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4PiB0eXBlOwotfTsKLXRlbXBs
YXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExB
VEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVT
VF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8g
VDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9U
RU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDE5Pgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBU
NCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICBUMTUs
IFQxNiwgVDE3LCBUMTgsIFQxOSwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMxOTxUMSwgVDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgICBU
MTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9U
RU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAg
IEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8g
VDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RF
TVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDEx
LCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RF
TVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQx
NiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFURV8gVDIwPgotc3RydWN0IFRlbXBsYXRlczxUMSwg
VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwK
LSAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAot
ICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVUPiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMjA8
VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLAot
ICAgICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwPiB0eXBlOwotfTsKLXRlbXBs
YXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExB
VEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVT
VF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8g
VDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9U
RU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFURV8gVDIwLCBHVEVTVF9URU1Q
TEFURV8gVDIxPgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3LCBUMTgs
IFQxOSwgVDIwLCBUMjEsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRlczIxPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3
LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICAgIFQxNCwgVDE1LCBUMTYsIFQxNywg
VDE4LCBUMTksIFQyMCwgVDIxPiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8g
VDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RF
TVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBU
OSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9U
RU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBU
MTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1Rf
VEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDE5LCBHVEVTVF9URU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMjI+Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYs
IFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgIFQxNSwgVDE2LCBUMTcs
IFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVU
LCBOb25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRlczIyPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYs
IFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICAgIFQxNCwgVDE1LCBUMTYsIFQx
NywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjI+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RF
TVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBU
NiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVN
UExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEs
IEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVN
UExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2
LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RF
TVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMz4KLXN0cnVjdCBUZW1w
bGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwg
VDEzLCBUMTQsCi0gICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQy
MywgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRl
czIzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQx
MywKLSAgICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQy
Mz4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFU
RV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNU
X1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
NywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFU
RV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdU
RVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExB
VEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBH
VEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0Pgotc3RydWN0IFRlbXBsYXRl
czxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMs
IFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBU
MjQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRlczI0PFQx
LCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAg
ICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0
PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRF
XyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1Rf
VEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3
LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRF
XyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RF
U1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFU
RV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjIsIEdU
RVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQyNT4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4
LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgVDE1LCBUMTYsIFQxNywgVDE4LCBU
MTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0g
ICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVUPiB7Ci0g
IHR5cGVkZWYgVGVtcGxhdGVzMjU8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwg
VDEwLCBUMTEsIFQxMiwgVDEzLAotICAgICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwg
VDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNT4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1Rf
VEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVf
IFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9U
RU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQx
MSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9U
RU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1Q
TEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RFTVBMQVRFXyBUMjY+
Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQx
MCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAs
IFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBU
ZW1wbGF0ZXMyNjxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwg
VDEyLCBUMTMsCi0gICAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwg
VDIyLCBUMjMsIFQyNCwgVDI1LCBUMjY+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBM
QVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExB
VEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdU
RVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExB
VEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBH
VEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVf
IFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVT
VF9URU1QTEFURV8gVDI3Pgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3
LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIE5vbmVU
LAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVD4g
ewotICB0eXBlZGVmIFRlbXBsYXRlczI3PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwg
VDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBU
MTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwKLSAgICAgIFQyNz4gdHlwZTsK
LX07Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdU
RVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRF
XyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1Rf
VEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQx
MCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBM
QVRFXyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwg
R1RFU1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1Q
TEFURV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUs
IEdURVNUX1RFTVBMQVRFXyBUMjYsIEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQyOD4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcs
IFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgVDE1LCBUMTYsIFQxNywgVDE4
LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsCi0gICAg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVUPiB7Ci0gIHR5
cGVkZWYgVGVtcGxhdGVzMjg8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEw
LCBUMTEsIFQxMiwgVDEzLAotICAgICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIw
LCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsCi0gICAgICBUMjg+IHR5cGU7Ci19
OwotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVT
VF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8g
VDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RF
TVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAs
IEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFU
RV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdU
RVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExB
VEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBH
VEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjk+Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQxLCBUMiwg
VDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAg
IFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBU
MjYsIFQyNywgVDI4LCBUMjksCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0g
ICAgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMyOTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgICBUMTQsIFQxNSwgVDE2LCBU
MTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywKLSAg
ICAgIFQyOCwgVDI5PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdU
RVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRF
XyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFU
RV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdU
RVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExB
VEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBH
VEVTVF9URU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMjIsIEdURVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVf
IFQyNywKLSAgICBHVEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVT
VF9URU1QTEFURV8gVDMwPgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3
LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwg
VDI5LAotICAgIFQzMCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRl
ZiBUZW1wbGF0ZXMzMDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQx
MSwgVDEyLCBUMTMsCi0gICAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQy
MSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywKLSAgICAgIFQyOCwgVDI5LCBUMzA+IHR5
cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQy
LCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1Q
TEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdU
RVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQx
NSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9U
RU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBU
MjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1Rf
VEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRFXyBUMzAs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQzMT4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywg
VDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgVDE1
LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwg
VDI3LCBUMjgsIFQyOSwKLSAgICBUMzAsIFQzMSwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVD4gewot
ICB0eXBlZGVmIFRlbXBsYXRlczMxPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDks
IFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTks
IFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LAotICAgICAgVDI4LCBUMjks
IFQzMCwgVDMxPiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNU
X1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBU
NCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8g
VDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNU
X1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVf
IFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVT
VF9URU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMjIsIEdURVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVfIFQy
NywKLSAgICBHVEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVTVF9U
RU1QTEFURV8gVDMwLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBMQVRFXyBU
MzI+Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDks
IFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBU
MjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgVDMw
LCBUMzEsIFQzMiwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVUPiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMzI8VDEs
IFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAg
ICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQs
IFQyNSwgVDI2LCBUMjcsCi0gICAgICBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMj4gdHlwZTsKLX07
Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNU
X1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBU
NSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVN
UExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwg
R1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRF
XyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RF
U1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFU
RV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdU
RVNUX1RFTVBMQVRFXyBUMjYsIEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQyOCwgR1RFU1RfVEVNUExBVEVfIFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDMxLCBHVEVTVF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1QTEFURV8g
VDMzPgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5
LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwg
VDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAotICAgIFQz
MCwgVDMxLCBUMzIsIFQzMywgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMzMzxUMSwg
VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAg
ICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwg
VDI1LCBUMjYsIFQyNywKLSAgICAgIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzM+IHR5cGU7
Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBH
VEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFU
RV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNU
X1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1Q
TEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAs
IEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVN
UExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1
LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdURVNUX1RF
TVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRFXyBUMzAsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQzMSwgR1RFU1RfVEVNUExBVEVfIFQzMiwgR1RFU1RfVEVNUExB
VEVfIFQzMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDM0Pgotc3RydWN0IFRlbXBsYXRlczxUMSwg
VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwK
LSAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQy
NSwgVDI2LCBUMjcsIFQyOCwgVDI5LAotICAgIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVUPiB7
Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMzQ8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBU
OSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAgICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQx
OSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsCi0gICAgICBUMjgsIFQy
OSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQ+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RF
TVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBU
NiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVN
UExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEs
IEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVN
UExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2
LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RF
TVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExB
VEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBH
VEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBM
QVRFXyBUMjksIEdURVNUX1RFTVBMQVRFXyBUMzAsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMSwg
R1RFU1RfVEVNUExBVEVfIFQzMiwgR1RFU1RfVEVNUExBVEVfIFQzMywKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDM0LCBHVEVTVF9URU1QTEFURV8gVDM1Pgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAg
ICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwg
VDI2LCBUMjcsIFQyOCwgVDI5LAotICAgIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVD4gewotICB0
eXBlZGVmIFRlbXBsYXRlczM1PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQx
MCwgVDExLCBUMTIsIFQxMywKLSAgICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQy
MCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LAotICAgICAgVDI4LCBUMjksIFQz
MCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzU+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RF
TVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBU
NiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVN
UExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEs
IEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVN
UExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2
LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RF
TVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExB
VEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBH
VEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBM
QVRFXyBUMjksIEdURVNUX1RFTVBMQVRFXyBUMzAsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMSwg
R1RFU1RfVEVNUExBVEVfIFQzMiwgR1RFU1RfVEVNUExBVEVfIFQzMywKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDM0LCBHVEVTVF9URU1QTEFURV8gVDM1LCBHVEVTVF9URU1QTEFURV8gVDM2Pgotc3Ry
dWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQx
MSwgVDEyLCBUMTMsIFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEs
IFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAotICAgIFQzMCwgVDMxLCBU
MzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMzNjxUMSwgVDIsIFQzLCBUNCwgVDUs
IFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgICBUMTQsIFQxNSwgVDE2
LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywK
LSAgICAgIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzY+IHR5cGU7
Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBH
VEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFU
RV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNU
X1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1Q
TEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAs
IEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVN
UExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1
LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdURVNUX1RF
TVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRFXyBUMzAsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQzMSwgR1RFU1RfVEVNUExBVEVfIFQzMiwgR1RFU1RfVEVNUExB
VEVfIFQzMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDM0LCBHVEVTVF9URU1QTEFURV8gVDM1LCBH
VEVTVF9URU1QTEFURV8gVDM2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzc+Ci1zdHJ1Y3QgVGVt
cGxhdGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIs
IFQxMywgVDE0LAotICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBU
MjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgVDMwLCBUMzEsIFQzMiwgVDMz
LCBUMzQsIFQzNSwgVDM2LCBUMzcsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwK
LSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMzNzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQx
OCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywKLSAgICAgIFQy
OCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNz4gdHlwZTsKLX07
Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNU
X1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBU
NSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVN
UExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwg
R1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRF
XyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RF
U1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFU
RV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdU
RVNUX1RFTVBMQVRFXyBUMjYsIEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQyOCwgR1RFU1RfVEVNUExBVEVfIFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDMxLCBHVEVTVF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1QTEFURV8g
VDMzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzQsIEdURVNUX1RFTVBMQVRFXyBUMzUsIEdURVNU
X1RFTVBMQVRFXyBUMzYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNywgR1RFU1RfVEVNUExBVEVf
IFQzOD4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBU
OSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTks
IFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQyOSwKLSAgICBU
MzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMzODxUMSwgVDIsIFQzLCBU
NCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgICBUMTQsIFQx
NSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYs
IFQyNywKLSAgICAgIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYs
IFQzNywgVDM4PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNU
X1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBU
NCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8g
VDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNU
X1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVf
IFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVT
VF9URU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMjIsIEdURVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVfIFQy
NywKLSAgICBHVEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVTVF9U
RU1QTEFURV8gVDMwLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBMQVRFXyBU
MzIsIEdURVNUX1RFTVBMQVRFXyBUMzMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNCwgR1RFU1Rf
VEVNUExBVEVfIFQzNSwgR1RFU1RfVEVNUExBVEVfIFQzNiwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDM3LCBHVEVTVF9URU1QTEFURV8gVDM4LCBHVEVTVF9URU1QTEFURV8gVDM5Pgotc3RydWN0IFRl
bXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEy
LCBUMTMsIFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwg
VDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAotICAgIFQzMCwgVDMxLCBUMzIsIFQz
MywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAg
ICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQ+
IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMzOTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgs
IFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwg
VDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywKLSAgICAgIFQyOCwg
VDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzk+IHR5
cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQy
LCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1Q
TEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdU
RVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQx
NSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9U
RU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBU
MjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1Rf
VEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRFXyBUMzAs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQzMSwgR1RFU1RfVEVNUExBVEVfIFQzMiwgR1RFU1RfVEVN
UExBVEVfIFQzMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDM0LCBHVEVTVF9URU1QTEFURV8gVDM1
LCBHVEVTVF9URU1QTEFURV8gVDM2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzcsIEdURVNUX1RF
TVBMQVRFXyBUMzgsIEdURVNUX1RFTVBMQVRFXyBUMzksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0
MD4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwg
VDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQy
MCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQyOSwKLSAgICBUMzAs
IFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgTm9uZVQs
IE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRlczQwPFQxLCBUMiwgVDMsIFQ0LCBUNSwg
VDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICAgIFQxNCwgVDE1LCBUMTYs
IFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LAot
ICAgICAgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBU
MzgsIFQzOSwgVDQwPiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdU
RVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRF
XyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFU
RV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdU
RVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExB
VEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBH
VEVTVF9URU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMjIsIEdURVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVf
IFQyNywKLSAgICBHVEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVT
VF9URU1QTEFURV8gVDMwLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBMQVRF
XyBUMzIsIEdURVNUX1RFTVBMQVRFXyBUMzMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNCwgR1RF
U1RfVEVNUExBVEVfIFQzNSwgR1RFU1RfVEVNUExBVEVfIFQzNiwKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDM3LCBHVEVTVF9URU1QTEFURV8gVDM4LCBHVEVTVF9URU1QTEFURV8gVDM5LAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUNDAsIEdURVNUX1RFTVBMQVRFXyBUNDE+Ci1zdHJ1Y3QgVGVtcGxhdGVz
PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywg
VDE0LAotICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQy
NCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQs
IFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwgTm9uZVQsIE5vbmVULAotICAgIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVUPiB7Ci0gIHR5cGVk
ZWYgVGVtcGxhdGVzNDE8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBU
MTEsIFQxMiwgVDEzLAotICAgICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBU
MjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsCi0gICAgICBUMjgsIFQyOSwgVDMwLCBU
MzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsCi0gICAgICBU
NDE+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExB
VEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVT
VF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RF
TVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExB
VEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBH
VEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBM
QVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwg
R1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRF
XyBUMzAsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMSwgR1RFU1RfVEVNUExBVEVfIFQzMiwgR1RF
U1RfVEVNUExBVEVfIFQzMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDM0LCBHVEVTVF9URU1QTEFU
RV8gVDM1LCBHVEVTVF9URU1QTEFURV8gVDM2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzcsIEdU
RVNUX1RFTVBMQVRFXyBUMzgsIEdURVNUX1RFTVBMQVRFXyBUMzksCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQ0MCwgR1RFU1RfVEVNUExBVEVfIFQ0MSwgR1RFU1RfVEVNUExBVEVfIFQ0Mj4KLXN0cnVj
dCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEs
IFQxMiwgVDEzLCBUMTQsCi0gICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBU
MjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQyOSwKLSAgICBUMzAsIFQzMSwgVDMy
LCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsIE5vbmVU
LAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVUPiB7
Ci0gIHR5cGVkZWYgVGVtcGxhdGVzNDI8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBU
OSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAgICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQx
OSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsCi0gICAgICBUMjgsIFQy
OSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAs
IFQ0MSwKLSAgICAgIFQ0Mj4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQx
LCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDks
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVN
UExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0
LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RF
TVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQx
OSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0LAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RFTVBMQVRFXyBUMjYsIEdURVNUX1RFTVBM
QVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyOCwgR1RFU1RfVEVNUExBVEVfIFQyOSwg
R1RFU1RfVEVNUExBVEVfIFQzMCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDMxLCBHVEVTVF9URU1Q
TEFURV8gVDMyLCBHVEVTVF9URU1QTEFURV8gVDMzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzQs
IEdURVNUX1RFTVBMQVRFXyBUMzUsIEdURVNUX1RFTVBMQVRFXyBUMzYsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQzNywgR1RFU1RfVEVNUExBVEVfIFQzOCwgR1RFU1RfVEVNUExBVEVfIFQzOSwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDQwLCBHVEVTVF9URU1QTEFURV8gVDQxLCBHVEVTVF9URU1QTEFU
RV8gVDQyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDM+Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQxLCBU
MiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAot
ICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1
LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwg
VDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwgVDQyLCBUNDMsCi0gICAgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0
ZXM0MzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBU
MTMsCi0gICAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBU
MjMsIFQyNCwgVDI1LCBUMjYsIFQyNywKLSAgICAgIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBU
MzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLAotICAgICAgVDQyLCBU
NDM+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExB
VEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVT
VF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RF
TVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExB
VEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBH
VEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBM
QVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwg
R1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRF
XyBUMzAsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMSwgR1RFU1RfVEVNUExBVEVfIFQzMiwgR1RF
U1RfVEVNUExBVEVfIFQzMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDM0LCBHVEVTVF9URU1QTEFU
RV8gVDM1LCBHVEVTVF9URU1QTEFURV8gVDM2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzcsIEdU
RVNUX1RFTVBMQVRFXyBUMzgsIEdURVNUX1RFTVBMQVRFXyBUMzksCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQ0MCwgR1RFU1RfVEVNUExBVEVfIFQ0MSwgR1RFU1RfVEVNUExBVEVfIFQ0MiwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDQzLCBHVEVTVF9URU1QTEFURV8gVDQ0Pgotc3RydWN0IFRlbXBsYXRl
czxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMs
IFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBU
MjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAotICAgIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0
LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEsIFQ0MiwgVDQzLCBUNDQsCi0gICAg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVD4gewotICB0eXBlZGVmIFRl
bXBsYXRlczQ0PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBU
MTIsIFQxMywKLSAgICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBU
MjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LAotICAgICAgVDI4LCBUMjksIFQzMCwgVDMxLCBU
MzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEsCi0gICAgICBU
NDIsIFQ0MywgVDQ0PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdU
RVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRF
XyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFU
RV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdU
RVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExB
VEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBH
VEVTVF9URU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMjIsIEdURVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVf
IFQyNywKLSAgICBHVEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVT
VF9URU1QTEFURV8gVDMwLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBMQVRF
XyBUMzIsIEdURVNUX1RFTVBMQVRFXyBUMzMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNCwgR1RF
U1RfVEVNUExBVEVfIFQzNSwgR1RFU1RfVEVNUExBVEVfIFQzNiwKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDM3LCBHVEVTVF9URU1QTEFURV8gVDM4LCBHVEVTVF9URU1QTEFURV8gVDM5LAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUNDAsIEdURVNUX1RFTVBMQVRFXyBUNDEsIEdURVNUX1RFTVBMQVRFXyBU
NDIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0MywgR1RFU1RfVEVNUExBVEVfIFQ0NCwgR1RFU1Rf
VEVNUExBVEVfIFQ0NT4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwg
VDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgVDE1LCBUMTYsIFQxNywg
VDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQy
OSwKLSAgICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzks
IFQ0MCwgVDQxLCBUNDIsIFQ0MywgVDQ0LAotICAgIFQ0NSwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVUPiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzNDU8VDEsIFQyLCBUMywgVDQsIFQ1
LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAgICAgVDE0LCBUMTUsIFQx
NiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcs
Ci0gICAgICBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcs
IFQzOCwgVDM5LCBUNDAsIFQ0MSwKLSAgICAgIFQ0MiwgVDQzLCBUNDQsIFQ0NT4gdHlwZTsKLX07
Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNU
X1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBU
NSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVN
UExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwg
R1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRF
XyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RF
U1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFU
RV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdU
RVNUX1RFTVBMQVRFXyBUMjYsIEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQyOCwgR1RFU1RfVEVNUExBVEVfIFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDMxLCBHVEVTVF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1QTEFURV8g
VDMzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzQsIEdURVNUX1RFTVBMQVRFXyBUMzUsIEdURVNU
X1RFTVBMQVRFXyBUMzYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNywgR1RFU1RfVEVNUExBVEVf
IFQzOCwgR1RFU1RfVEVNUExBVEVfIFQzOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDQwLCBHVEVT
VF9URU1QTEFURV8gVDQxLCBHVEVTVF9URU1QTEFURV8gVDQyLAotICAgIEdURVNUX1RFTVBMQVRF
XyBUNDMsIEdURVNUX1RFTVBMQVRFXyBUNDQsIEdURVNUX1RFTVBMQVRFXyBUNDUsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQ0Nj4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBU
NiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgVDE1LCBUMTYsIFQx
NywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgs
IFQyOSwKLSAgICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBU
MzksIFQ0MCwgVDQxLCBUNDIsIFQ0MywgVDQ0LAotICAgIFQ0NSwgVDQ2LCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRlczQ2PFQxLCBUMiwgVDMsIFQ0LCBU
NSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICAgIFQxNCwgVDE1LCBU
MTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3
LAotICAgICAgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3
LCBUMzgsIFQzOSwgVDQwLCBUNDEsCi0gICAgICBUNDIsIFQ0MywgVDQ0LCBUNDUsIFQ0Nj4gdHlw
ZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIs
IEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBM
QVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RF
U1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RF
TVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQy
MCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9U
RU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MjUsIEdURVNUX1RFTVBMQVRFXyBUMjYsIEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQyOCwgR1RFU1RfVEVNUExBVEVfIFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDMxLCBHVEVTVF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1Q
TEFURV8gVDMzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzQsIEdURVNUX1RFTVBMQVRFXyBUMzUs
IEdURVNUX1RFTVBMQVRFXyBUMzYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNywgR1RFU1RfVEVN
UExBVEVfIFQzOCwgR1RFU1RfVEVNUExBVEVfIFQzOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDQw
LCBHVEVTVF9URU1QTEFURV8gVDQxLCBHVEVTVF9URU1QTEFURV8gVDQyLAotICAgIEdURVNUX1RF
TVBMQVRFXyBUNDMsIEdURVNUX1RFTVBMQVRFXyBUNDQsIEdURVNUX1RFTVBMQVRFXyBUNDUsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQ0NiwgR1RFU1RfVEVNUExBVEVfIFQ0Nz4KLXN0cnVjdCBUZW1w
bGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwg
VDEzLCBUMTQsCi0gICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQy
MywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQyOSwKLSAgICBUMzAsIFQzMSwgVDMyLCBUMzMs
IFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsIFQ0MywgVDQ0LAot
ICAgIFQ0NSwgVDQ2LCBUNDcsIE5vbmVULCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1w
bGF0ZXM0NzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEy
LCBUMTMsCi0gICAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIy
LCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywKLSAgICAgIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMy
LCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLAotICAgICAgVDQy
LCBUNDMsIFQ0NCwgVDQ1LCBUNDYsIFQ0Nz4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1RfVEVN
UExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBH
VEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1Q
TEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwg
R1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1Q
TEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYs
IEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFU
RV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RFTVBMQVRFXyBUMjYsIEdU
RVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyOCwgR1RFU1RfVEVNUExB
VEVfIFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDMxLCBH
VEVTVF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1QTEFURV8gVDMzLAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMzQsIEdURVNUX1RFTVBMQVRFXyBUMzUsIEdURVNUX1RFTVBMQVRFXyBUMzYsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQzNywgR1RFU1RfVEVNUExBVEVfIFQzOCwgR1RFU1RfVEVNUExBVEVf
IFQzOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDQwLCBHVEVTVF9URU1QTEFURV8gVDQxLCBHVEVT
VF9URU1QTEFURV8gVDQyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDMsIEdURVNUX1RFTVBMQVRF
XyBUNDQsIEdURVNUX1RFTVBMQVRFXyBUNDUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0NiwgR1RF
U1RfVEVNUExBVEVfIFQ0NywgR1RFU1RfVEVNUExBVEVfIFQ0OD4KLXN0cnVjdCBUZW1wbGF0ZXM8
VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBU
MTQsCi0gICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0
LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQyOSwKLSAgICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwg
VDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsIFQ0MywgVDQ0LAotICAgIFQ0
NSwgVDQ2LCBUNDcsIFQ0OCwgTm9uZVQsIE5vbmVUPiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzNDg8
VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLAot
ICAgICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBU
MjQsIFQyNSwgVDI2LCBUMjcsCi0gICAgICBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBU
MzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwKLSAgICAgIFQ0MiwgVDQzLCBU
NDQsIFQ0NSwgVDQ2LCBUNDcsIFQ0OD4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExB
VEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVT
VF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFU
RV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RF
U1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFU
RV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdU
RVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFURV8g
VDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RFTVBMQVRFXyBUMjYsIEdURVNU
X1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyOCwgR1RFU1RfVEVNUExBVEVf
IFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDMxLCBHVEVT
VF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1QTEFURV8gVDMzLAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMzQsIEdURVNUX1RFTVBMQVRFXyBUMzUsIEdURVNUX1RFTVBMQVRFXyBUMzYsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQzNywgR1RFU1RfVEVNUExBVEVfIFQzOCwgR1RFU1RfVEVNUExBVEVfIFQz
OSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDQwLCBHVEVTVF9URU1QTEFURV8gVDQxLCBHVEVTVF9U
RU1QTEFURV8gVDQyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDMsIEdURVNUX1RFTVBMQVRFXyBU
NDQsIEdURVNUX1RFTVBMQVRFXyBUNDUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0NiwgR1RFU1Rf
VEVNUExBVEVfIFQ0NywgR1RFU1RfVEVNUExBVEVfIFQ0OCwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDQ5Pgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5
LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwg
VDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAotICAgIFQz
MCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEs
IFQ0MiwgVDQzLCBUNDQsCi0gICAgVDQ1LCBUNDYsIFQ0NywgVDQ4LCBUNDksIE5vbmVUPiB7Ci0g
IHR5cGVkZWYgVGVtcGxhdGVzNDk8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwg
VDEwLCBUMTEsIFQxMiwgVDEzLAotICAgICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwg
VDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsCi0gICAgICBUMjgsIFQyOSwg
VDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0
MSwKLSAgICAgIFQ0MiwgVDQzLCBUNDQsIFQ0NSwgVDQ2LCBUNDcsIFQ0OCwgVDQ5PiB0eXBlOwot
fTsKLQotLy8gVGhlIFR5cGVMaXN0IHRlbXBsYXRlIG1ha2VzIGl0IHBvc3NpYmxlIHRvIHVzZSBl
aXRoZXIgYSBzaW5nbGUgdHlwZQotLy8gb3IgYSBUeXBlczwuLi4+IGxpc3QgaW4gVFlQRURfVEVT
VF9DQVNFKCkgYW5kCi0vLyBJTlNUQU5USUFURV9UWVBFRF9URVNUX0NBU0VfUCgpLgordGVtcGxh
dGUgPHR5cGVuYW1lLi4uIFRzPgorc3RydWN0IGlzX3Byb3h5X3R5cGVfbGlzdDxQcm94eVR5cGVM
aXN0PFRzLi4uPj4gOiBzdGQ6OnRydWVfdHlwZSB7fTsKIAorLy8gR2VuZXJhdG9yIHdoaWNoIGNv
bmRpdGlvbmFsbHkgY3JlYXRlcyB0eXBlIGxpc3RzLgorLy8gSXQgcmVjb2duaXplcyBpZiBhIHJl
cXVlc3RlZCB0eXBlIGxpc3Qgc2hvdWxkIGJlIGNyZWF0ZWQKKy8vIGFuZCBwcmV2ZW50cyBjcmVh
dGluZyBhIG5ldyB0eXBlIGxpc3QgbmVzdGVkIHdpdGhpbiBhbm90aGVyIG9uZS4KIHRlbXBsYXRl
IDx0eXBlbmFtZSBUPgotc3RydWN0IFR5cGVMaXN0IHsKLSAgdHlwZWRlZiBUeXBlczE8VD4gdHlw
ZTsKLX07CitzdHJ1Y3QgR2VuZXJhdGVUeXBlTGlzdCB7CisgcHJpdmF0ZToKKyAgdXNpbmcgcHJv
eHkgPSB0eXBlbmFtZSBzdGQ6OmNvbmRpdGlvbmFsPGlzX3Byb3h5X3R5cGVfbGlzdDxUPjo6dmFs
dWUsIFQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcm94eVR5
cGVMaXN0PFQ+Pjo6dHlwZTsKIAotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwg
dHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwg
dHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAg
IHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwg
dHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBU
MTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5h
bWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5
cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlw
ZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMs
IHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUg
VDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVu
YW1lIFQ0MSwgdHlwZW5hbWUgVDQyLCB0eXBlbmFtZSBUNDMsIHR5cGVuYW1lIFQ0NCwgdHlwZW5h
bWUgVDQ1LAotICAgIHR5cGVuYW1lIFQ0NiwgdHlwZW5hbWUgVDQ3LCB0eXBlbmFtZSBUNDgsIHR5
cGVuYW1lIFQ0OSwgdHlwZW5hbWUgVDUwPgotc3RydWN0IFR5cGVMaXN0PFR5cGVzPFQxLCBUMiwg
VDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQs
IFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBU
MjYsIFQyNywgVDI4LAotICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2
LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwgVDQyLCBUNDMsCi0gICAgVDQ0LCBUNDUsIFQ0Niwg
VDQ3LCBUNDgsIFQ0OSwgVDUwPiA+IHsKLSAgdHlwZWRlZiB0eXBlbmFtZSBUeXBlczxUMSwgVDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLAotICAgICAgVDEzLCBU
MTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1
LCBUMjYsCi0gICAgICBUMjcsIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1
LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwKLSAgICAgIFQ0MSwgVDQyLCBUNDMsIFQ0NCwgVDQ1
LCBUNDYsIFQ0NywgVDQ4LCBUNDksIFQ1MD46OnR5cGUgdHlwZTsKKyBwdWJsaWM6CisgIHVzaW5n
IHR5cGUgPSB0eXBlbmFtZSBwcm94eTo6dHlwZTsKIH07CiAKICNlbmRpZiAgLy8gR1RFU1RfSEFT
X1RZUEVEX1RFU1QgfHwgR1RFU1RfSEFTX1RZUEVEX1RFU1RfUAogCiB9ICAvLyBuYW1lc3BhY2Ug
aW50ZXJuYWwKKwordGVtcGxhdGUgPHR5cGVuYW1lLi4uIFRzPgordXNpbmcgVHlwZXMgPSBpbnRl
cm5hbDo6UHJveHlUeXBlTGlzdDxUcy4uLj47CisKIH0gIC8vIG5hbWVzcGFjZSB0ZXN0aW5nCiAK
ICNlbmRpZiAgLy8gR1RFU1RfSU5DTFVERV9HVEVTVF9JTlRFUk5BTF9HVEVTVF9UWVBFX1VUSUxf
SF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5j
bHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC10eXBlLXV0aWwuaC5wdW1wIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90
aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LXR5
cGUtdXRpbC5oLnB1bXAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDFhNWQzOWRm
YTZkMjRjN2M0MWExNmExNWYyZTJhNWNlOTQ5ZGIuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3Ny
Yy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LXR5cGUtdXRpbC5oLnB1bXAKKysrIC9kZXYv
bnVsbApAQCAtMSwzMTQgKzAsMCBAQAotJCQgLSotIG1vZGU6IGMrKzsgLSotCi0kdmFyIG4gPSA1
MCAgJCQgTWF4aW11bSBsZW5ndGggb2YgdHlwZSBsaXN0cyB3ZSB3YW50IHRvIHN1cHBvcnQuCi0v
LyBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLgotLy8gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KLS8v
Ci0vLyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKLS8vIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKLS8vIG1ldDoKLS8vCi0vLyAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAotLy8gbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgotLy8gICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotLy8gY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgotLy8gaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotLy8gZGlz
dHJpYnV0aW9uLgotLy8gICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3Ig
dGhlIG5hbWVzIG9mIGl0cwotLy8gY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ug
b3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KLS8vIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0vLwotLy8gVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwot
Ly8gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QKLS8vIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgotLy8gQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKLS8vIE9XTkVSIE9S
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLAotLy8gU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVAotLy8gTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCi0vLyBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLS8vIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKLS8vIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotLy8gT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLQotCi0vLyBUeXBlIHV0
aWxpdGllcyBuZWVkZWQgZm9yIGltcGxlbWVudGluZyB0eXBlZCBhbmQgdHlwZS1wYXJhbWV0ZXJp
emVkCi0vLyB0ZXN0cy4gIFRoaXMgZmlsZSBpcyBnZW5lcmF0ZWQgYnkgYSBTQ1JJUFQuICBETyBO
T1QgRURJVCBCWSBIQU5EIQotLy8KLS8vIEN1cnJlbnRseSB3ZSBzdXBwb3J0IGF0IG1vc3QgJG4g
dHlwZXMgaW4gYSBsaXN0LCBhbmQgYXQgbW9zdCAkbgotLy8gdHlwZS1wYXJhbWV0ZXJpemVkIHRl
c3RzIGluIG9uZSB0eXBlLXBhcmFtZXRlcml6ZWQgdGVzdCBjYXNlLgotLy8gUGxlYXNlIGNvbnRh
Y3QgZ29vZ2xldGVzdGZyYW1ld29ya0Bnb29nbGVncm91cHMuY29tIGlmIHlvdSBuZWVkCi0vLyBt
b3JlLgotCi0vLyBHT09HTEVURVNUX0NNMDAwMSBETyBOT1QgREVMRVRFCi0KLSNpZm5kZWYgR1RF
U1RfSU5DTFVERV9HVEVTVF9JTlRFUk5BTF9HVEVTVF9UWVBFX1VUSUxfSF8KLSNkZWZpbmUgR1RF
U1RfSU5DTFVERV9HVEVTVF9JTlRFUk5BTF9HVEVTVF9UWVBFX1VUSUxfSF8KLQotI2luY2x1ZGUg
Imd0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQuaCIKLQotLy8gI2lmZGVmIF9fR05VQ19fIGlzIHRv
byBnZW5lcmFsIGhlcmUuICBJdCBpcyBwb3NzaWJsZSB0byB1c2UgZ2NjIHdpdGhvdXQgdXNpbmcK
LS8vIGxpYnN0ZGMrKyAod2hpY2ggaXMgd2hlcmUgY3h4YWJpLmggY29tZXMgZnJvbSkuCi0jIGlm
IEdURVNUX0hBU19DWFhBQklfSF8KLSMgIGluY2x1ZGUgPGN4eGFiaS5oPgotIyBlbGlmIGRlZmlu
ZWQoX19IUF9hQ0MpCi0jICBpbmNsdWRlIDxhY3h4X2RlbWFuZ2xlLmg+Ci0jIGVuZGlmICAvLyBH
VEVTVF9IQVNIX0NYWEFCSV9IXwotCi1uYW1lc3BhY2UgdGVzdGluZyB7Ci1uYW1lc3BhY2UgaW50
ZXJuYWwgewotCi0vLyBDYW5vbmljYWxpemVzIGEgZ2l2ZW4gbmFtZSB3aXRoIHJlc3BlY3QgdG8g
dGhlIFN0YW5kYXJkIEMrKyBMaWJyYXJ5LgotLy8gVGhpcyBoYW5kbGVzIHJlbW92aW5nIHRoZSBp
bmxpbmUgbmFtZXNwYWNlIHdpdGhpbiBgc3RkYCB0aGF0IGlzCi0vLyB1c2VkIGJ5IHZhcmlvdXMg
c3RhbmRhcmQgbGlicmFyaWVzIChlLmcuLCBgc3RkOjpfXzFgKS4gIE5hbWVzIG91dHNpZGUKLS8v
IG9mIG5hbWVzcGFjZSBzdGQgYXJlIHJldHVybmVkIHVubW9kaWZpZWQuCi1pbmxpbmUgc3RkOjpz
dHJpbmcgQ2Fub25pY2FsaXplRm9yU3RkTGliVmVyc2lvbmluZyhzdGQ6OnN0cmluZyBzKSB7Ci0g
IHN0YXRpYyBjb25zdCBjaGFyIHByZWZpeFtdID0gInN0ZDo6X18iOwotICBpZiAocy5jb21wYXJl
KDAsIHN0cmxlbihwcmVmaXgpLCBwcmVmaXgpID09IDApIHsKLSAgICBzdGQ6OnN0cmluZzo6c2l6
ZV90eXBlIGVuZCA9IHMuZmluZCgiOjoiLCBzdHJsZW4ocHJlZml4KSk7Ci0gICAgaWYgKGVuZCAh
PSBzLm5wb3MpIHsKLSAgICAgIC8vIEVyYXNlIGV2ZXJ5dGhpbmcgYmV0d2VlbiB0aGUgaW5pdGlh
bCBgc3RkYCBhbmQgdGhlIHNlY29uZCBgOjpgLgotICAgICAgcy5lcmFzZShzdHJsZW4oInN0ZCIp
LCBlbmQgLSBzdHJsZW4oInN0ZCIpKTsKLSAgICB9Ci0gIH0KLSAgcmV0dXJuIHM7Ci19Ci0KLS8v
IEdldFR5cGVOYW1lPFQ+KCkgcmV0dXJucyBhIGh1bWFuLXJlYWRhYmxlIG5hbWUgb2YgdHlwZSBU
LgotLy8gTkI6IFRoaXMgZnVuY3Rpb24gaXMgYWxzbyB1c2VkIGluIEdvb2dsZSBNb2NrLCBzbyBk
b24ndCBtb3ZlIGl0IGluc2lkZSBvZgotLy8gdGhlIHR5cGVkLXRlc3Qtb25seSBzZWN0aW9uIGJl
bG93LgotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1zdGQ6OnN0cmluZyBHZXRUeXBlTmFtZSgpIHsK
LSMgaWYgR1RFU1RfSEFTX1JUVEkKLQotICBjb25zdCBjaGFyKiBjb25zdCBuYW1lID0gdHlwZWlk
KFQpLm5hbWUoKTsKLSMgIGlmIEdURVNUX0hBU19DWFhBQklfSF8gfHwgZGVmaW5lZChfX0hQX2FD
QykKLSAgaW50IHN0YXR1cyA9IDA7Ci0gIC8vIGdjYydzIGltcGxlbWVudGF0aW9uIG9mIHR5cGVp
ZChUKS5uYW1lKCkgbWFuZ2xlcyB0aGUgdHlwZSBuYW1lLAotICAvLyBzbyB3ZSBoYXZlIHRvIGRl
bWFuZ2xlIGl0LgotIyAgIGlmIEdURVNUX0hBU19DWFhBQklfSF8KLSAgdXNpbmcgYWJpOjpfX2N4
YV9kZW1hbmdsZTsKLSMgICBlbmRpZiAgLy8gR1RFU1RfSEFTX0NYWEFCSV9IXwotICBjaGFyKiBj
b25zdCByZWFkYWJsZV9uYW1lID0gX19jeGFfZGVtYW5nbGUobmFtZSwgMCwgMCwgJnN0YXR1cyk7
Ci0gIGNvbnN0IHN0ZDo6c3RyaW5nIG5hbWVfc3RyKHN0YXR1cyA9PSAwID8gcmVhZGFibGVfbmFt
ZSA6IG5hbWUpOwotICBmcmVlKHJlYWRhYmxlX25hbWUpOwotICByZXR1cm4gQ2Fub25pY2FsaXpl
Rm9yU3RkTGliVmVyc2lvbmluZyhuYW1lX3N0cik7Ci0jICBlbHNlCi0gIHJldHVybiBuYW1lOwot
IyAgZW5kaWYgIC8vIEdURVNUX0hBU19DWFhBQklfSF8gfHwgX19IUF9hQ0MKLQotIyBlbHNlCi0K
LSAgcmV0dXJuICI8dHlwZT4iOwotCi0jIGVuZGlmICAvLyBHVEVTVF9IQVNfUlRUSQotfQotCi0j
aWYgR1RFU1RfSEFTX1RZUEVEX1RFU1QgfHwgR1RFU1RfSEFTX1RZUEVEX1RFU1RfUAotCi0vLyBB
c3NlcnR5VHlwZUVxPFQxLCBUMj46OnR5cGUgaXMgZGVmaW5lZCBpZmYgVDEgYW5kIFQyIGFyZSB0
aGUgc2FtZQotLy8gdHlwZS4gIFRoaXMgY2FuIGJlIHVzZWQgYXMgYSBjb21waWxlLXRpbWUgYXNz
ZXJ0aW9uIHRvIGVuc3VyZSB0aGF0Ci0vLyB0d28gdHlwZXMgYXJlIGVxdWFsLgotCi10ZW1wbGF0
ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyPgotc3RydWN0IEFzc2VydFR5cGVFcTsKLQotdGVt
cGxhdGUgPHR5cGVuYW1lIFQ+Ci1zdHJ1Y3QgQXNzZXJ0VHlwZUVxPFQsIFQ+IHsKLSAgdHlwZWRl
ZiBib29sIHR5cGU7Ci19OwotCi0vLyBBIHVuaXF1ZSB0eXBlIHVzZWQgYXMgdGhlIGRlZmF1bHQg
dmFsdWUgZm9yIHRoZSBhcmd1bWVudHMgb2YgY2xhc3MKLS8vIHRlbXBsYXRlIFR5cGVzLiAgVGhp
cyBhbGxvd3MgdXMgdG8gc2ltdWxhdGUgdmFyaWFkaWMgdGVtcGxhdGVzCi0vLyAoZS5nLiBUeXBl
czxpbnQ+LCBUeXBlPGludCwgZG91YmxlPiwgYW5kIGV0YyksIHdoaWNoIEMrKyBkb2Vzbid0Ci0v
LyBzdXBwb3J0IGRpcmVjdGx5Lgotc3RydWN0IE5vbmUge307Ci0KLS8vIFRoZSBmb2xsb3dpbmcg
ZmFtaWx5IG9mIHN0cnVjdCBhbmQgc3RydWN0IHRlbXBsYXRlcyBhcmUgdXNlZCB0bwotLy8gcmVw
cmVzZW50IHR5cGUgbGlzdHMuICBJbiBwYXJ0aWN1bGFyLCBUeXBlc048VDEsIFQyLCAuLi4sIFRO
PgotLy8gcmVwcmVzZW50cyBhIHR5cGUgbGlzdCB3aXRoIE4gdHlwZXMgKFQxLCBUMiwgLi4uLCBh
bmQgVE4pIGluIGl0LgotLy8gRXhjZXB0IGZvciBUeXBlczAsIGV2ZXJ5IHN0cnVjdCBpbiB0aGUg
ZmFtaWx5IGhhcyB0d28gbWVtYmVyIHR5cGVzOgotLy8gSGVhZCBmb3IgdGhlIGZpcnN0IHR5cGUg
aW4gdGhlIGxpc3QsIGFuZCBUYWlsIGZvciB0aGUgcmVzdCBvZiB0aGUKLS8vIGxpc3QuCi0KLS8v
IFRoZSBlbXB0eSB0eXBlIGxpc3QuCi1zdHJ1Y3QgVHlwZXMwIHt9OwotCi0vLyBUeXBlIGxpc3Rz
IG9mIGxlbmd0aCAxLCAyLCAzLCBhbmQgc28gb24uCi0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMT4K
LXN0cnVjdCBUeXBlczEgewotICB0eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5cGVkZWYgVHlwZXMwIFRh
aWw7Ci19OwotCi0kcmFuZ2UgaSAyLi5uCi0KLSRmb3IgaSBbWwotJHJhbmdlIGogMS4uaQotJHJh
bmdlIGsgMi4uaQotdGVtcGxhdGUgPCRmb3IgaiwgW1t0eXBlbmFtZSBUJGpdXT4KLXN0cnVjdCBU
eXBlcyRpIHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzJChpLTEpPCRmb3Ig
aywgW1tUJGtdXT4gVGFpbDsKLX07Ci0KLQotXV0KLQotfSAgLy8gbmFtZXNwYWNlIGludGVybmFs
Ci0KLS8vIFdlIGRvbid0IHdhbnQgdG8gcmVxdWlyZSB0aGUgdXNlcnMgdG8gd3JpdGUgVHlwZXNO
PC4uLj4gZGlyZWN0bHksCi0vLyBhcyB0aGF0IHdvdWxkIHJlcXVpcmUgdGhlbSB0byBjb3VudCB0
aGUgbGVuZ3RoLiAgVHlwZXM8Li4uPiBpcyBtdWNoCi0vLyBlYXNpZXIgdG8gd3JpdGUsIGJ1dCBn
ZW5lcmF0ZXMgaG9ycmlibGUgbWVzc2FnZXMgd2hlbiB0aGVyZSBpcyBhCi0vLyBjb21waWxlciBl
cnJvciwgYXMgZ2NjIGluc2lzdHMgb24gcHJpbnRpbmcgb3V0IGVhY2ggdGVtcGxhdGUKLS8vIGFy
Z3VtZW50LCBldmVuIGlmIGl0IGhhcyB0aGUgZGVmYXVsdCB2YWx1ZSAodGhpcyBtZWFucyBUeXBl
czxpbnQ+Ci0vLyB3aWxsIGFwcGVhciBhcyBUeXBlczxpbnQsIE5vbmUsIE5vbmUsIC4uLiwgTm9u
ZT4gaW4gdGhlIGNvbXBpbGVyCi0vLyBlcnJvcnMpLgotLy8KLS8vIE91ciBzb2x1dGlvbiBpcyB0
byBjb21iaW5lIHRoZSBiZXN0IHBhcnQgb2YgdGhlIHR3byBhcHByb2FjaGVzOiBhCi0vLyB1c2Vy
IHdvdWxkIHdyaXRlIFR5cGVzPFQxLCAuLi4sIFROPiwgYW5kIEdvb2dsZSBUZXN0IHdpbGwgdHJh
bnNsYXRlCi0vLyB0aGF0IHRvIFR5cGVzTjxUMSwgLi4uLCBUTj4gaW50ZXJuYWxseSB0byBtYWtl
IGVycm9yIG1lc3NhZ2VzCi0vLyByZWFkYWJsZS4gIFRoZSB0cmFuc2xhdGlvbiBpcyBkb25lIGJ5
IHRoZSAndHlwZScgbWVtYmVyIG9mIHRoZQotLy8gVHlwZXMgdGVtcGxhdGUuCi0KLSRyYW5nZSBp
IDEuLm4KLXRlbXBsYXRlIDwkZm9yIGksIFtbdHlwZW5hbWUgVCRpID0gaW50ZXJuYWw6Ok5vbmVd
XT4KLXN0cnVjdCBUeXBlcyB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzJG48JGZvciBpLCBb
W1QkaV1dPiB0eXBlOwotfTsKLQotdGVtcGxhdGUgPD4KLXN0cnVjdCBUeXBlczwkZm9yIGksIFtb
aW50ZXJuYWw6Ok5vbmVdXT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczAgdHlwZTsKLX07
Ci0KLSRyYW5nZSBpIDEuLm4tMQotJGZvciBpIFtbCi0kcmFuZ2UgaiAxLi5pCi0kcmFuZ2UgayBp
KzEuLm4KLXRlbXBsYXRlIDwkZm9yIGosIFtbdHlwZW5hbWUgVCRqXV0+Ci1zdHJ1Y3QgVHlwZXM8
JGZvciBqLCBbW1Qkal1dJGZvciBrW1ssIGludGVybmFsOjpOb25lXV0+IHsKLSAgdHlwZWRlZiBp
bnRlcm5hbDo6VHlwZXMkaTwkZm9yIGosIFtbVCRqXV0+IHR5cGU7Ci19OwotCi1dXQotCi1uYW1l
c3BhY2UgaW50ZXJuYWwgewotCi0jIGRlZmluZSBHVEVTVF9URU1QTEFURV8gdGVtcGxhdGUgPHR5
cGVuYW1lIFQ+IGNsYXNzCi0KLS8vIFRoZSB0ZW1wbGF0ZSAic2VsZWN0b3IiIHN0cnVjdCBUZW1w
bGF0ZVNlbDxUbXBsPiBpcyB1c2VkIHRvCi0vLyByZXByZXNlbnQgVG1wbCwgd2hpY2ggbXVzdCBi
ZSBhIGNsYXNzIHRlbXBsYXRlIHdpdGggb25lIHR5cGUKLS8vIHBhcmFtZXRlciwgYXMgYSB0eXBl
LiAgVGVtcGxhdGVTZWw8VG1wbD46OkJpbmQ8VD46OnR5cGUgaXMgZGVmaW5lZAotLy8gYXMgdGhl
IHR5cGUgVG1wbDxUPi4gIFRoaXMgYWxsb3dzIHVzIHRvIGFjdHVhbGx5IGluc3RhbnRpYXRlIHRo
ZQotLy8gdGVtcGxhdGUgInNlbGVjdGVkIiBieSBUZW1wbGF0ZVNlbDxUbXBsPi4KLS8vCi0vLyBU
aGlzIHRyaWNrIGlzIG5lY2Vzc2FyeSBmb3Igc2ltdWxhdGluZyB0eXBlZGVmIGZvciBjbGFzcyB0
ZW1wbGF0ZXMsCi0vLyB3aGljaCBDKysgZG9lc24ndCBzdXBwb3J0IGRpcmVjdGx5LgotdGVtcGxh
dGUgPEdURVNUX1RFTVBMQVRFXyBUbXBsPgotc3RydWN0IFRlbXBsYXRlU2VsIHsKLSAgdGVtcGxh
dGUgPHR5cGVuYW1lIFQ+Ci0gIHN0cnVjdCBCaW5kIHsKLSAgICB0eXBlZGVmIFRtcGw8VD4gdHlw
ZTsKLSAgfTsKLX07Ci0KLSMgZGVmaW5lIEdURVNUX0JJTkRfKFRtcGxTZWwsIFQpIFwKLSAgVG1w
bFNlbDo6dGVtcGxhdGUgQmluZDxUPjo6dHlwZQotCi0vLyBBIHVuaXF1ZSBzdHJ1Y3QgdGVtcGxh
dGUgdXNlZCBhcyB0aGUgZGVmYXVsdCB2YWx1ZSBmb3IgdGhlCi0vLyBhcmd1bWVudHMgb2YgY2xh
c3MgdGVtcGxhdGUgVGVtcGxhdGVzLiAgVGhpcyBhbGxvd3MgdXMgdG8gc2ltdWxhdGUKLS8vIHZh
cmlhZGljIHRlbXBsYXRlcyAoZS5nLiBUZW1wbGF0ZXM8aW50PiwgVGVtcGxhdGVzPGludCwgZG91
YmxlPiwKLS8vIGFuZCBldGMpLCB3aGljaCBDKysgZG9lc24ndCBzdXBwb3J0IGRpcmVjdGx5Lgot
dGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1zdHJ1Y3QgTm9uZVQge307Ci0KLS8vIFRoZSBmb2xsb3dp
bmcgZmFtaWx5IG9mIHN0cnVjdCBhbmQgc3RydWN0IHRlbXBsYXRlcyBhcmUgdXNlZCB0bwotLy8g
cmVwcmVzZW50IHRlbXBsYXRlIGxpc3RzLiAgSW4gcGFydGljdWxhciwgVGVtcGxhdGVzTjxUMSwg
VDIsIC4uLiwKLS8vIFROPiByZXByZXNlbnRzIGEgbGlzdCBvZiBOIHRlbXBsYXRlcyAoVDEsIFQy
LCAuLi4sIGFuZCBUTikuICBFeGNlcHQKLS8vIGZvciBUZW1wbGF0ZXMwLCBldmVyeSBzdHJ1Y3Qg
aW4gdGhlIGZhbWlseSBoYXMgdHdvIG1lbWJlciB0eXBlczoKLS8vIEhlYWQgZm9yIHRoZSBzZWxl
Y3RvciBvZiB0aGUgZmlyc3QgdGVtcGxhdGUgaW4gdGhlIGxpc3QsIGFuZCBUYWlsCi0vLyBmb3Ig
dGhlIHJlc3Qgb2YgdGhlIGxpc3QuCi0KLS8vIFRoZSBlbXB0eSB0ZW1wbGF0ZSBsaXN0Lgotc3Ry
dWN0IFRlbXBsYXRlczAge307Ci0KLS8vIFRlbXBsYXRlIGxpc3RzIG9mIGxlbmd0aCAxLCAyLCAz
LCBhbmQgc28gb24uCi0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDE+Ci1zdHJ1Y3QgVGVt
cGxhdGVzMSB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVt
cGxhdGVzMCBUYWlsOwotfTsKLQotJHJhbmdlIGkgMi4ubgotCi0kZm9yIGkgW1sKLSRyYW5nZSBq
IDEuLmkKLSRyYW5nZSBrIDIuLmkKLXRlbXBsYXRlIDwkZm9yIGosIFtbR1RFU1RfVEVNUExBVEVf
IFQkal1dPgotc3RydWN0IFRlbXBsYXRlcyRpIHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4g
SGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMkKGktMSk8JGZvciBrLCBbW1Qka11dPiBUYWlsOwot
fTsKLQotCi1dXQotCi0vLyBXZSBkb24ndCB3YW50IHRvIHJlcXVpcmUgdGhlIHVzZXJzIHRvIHdy
aXRlIFRlbXBsYXRlc048Li4uPiBkaXJlY3RseSwKLS8vIGFzIHRoYXQgd291bGQgcmVxdWlyZSB0
aGVtIHRvIGNvdW50IHRoZSBsZW5ndGguICBUZW1wbGF0ZXM8Li4uPiBpcyBtdWNoCi0vLyBlYXNp
ZXIgdG8gd3JpdGUsIGJ1dCBnZW5lcmF0ZXMgaG9ycmlibGUgbWVzc2FnZXMgd2hlbiB0aGVyZSBp
cyBhCi0vLyBjb21waWxlciBlcnJvciwgYXMgZ2NjIGluc2lzdHMgb24gcHJpbnRpbmcgb3V0IGVh
Y2ggdGVtcGxhdGUKLS8vIGFyZ3VtZW50LCBldmVuIGlmIGl0IGhhcyB0aGUgZGVmYXVsdCB2YWx1
ZSAodGhpcyBtZWFucyBUZW1wbGF0ZXM8bGlzdD4KLS8vIHdpbGwgYXBwZWFyIGFzIFRlbXBsYXRl
czxsaXN0LCBOb25lVCwgTm9uZVQsIC4uLiwgTm9uZVQ+IGluIHRoZSBjb21waWxlcgotLy8gZXJy
b3JzKS4KLS8vCi0vLyBPdXIgc29sdXRpb24gaXMgdG8gY29tYmluZSB0aGUgYmVzdCBwYXJ0IG9m
IHRoZSB0d28gYXBwcm9hY2hlczogYQotLy8gdXNlciB3b3VsZCB3cml0ZSBUZW1wbGF0ZXM8VDEs
IC4uLiwgVE4+LCBhbmQgR29vZ2xlIFRlc3Qgd2lsbCB0cmFuc2xhdGUKLS8vIHRoYXQgdG8gVGVt
cGxhdGVzTjxUMSwgLi4uLCBUTj4gaW50ZXJuYWxseSB0byBtYWtlIGVycm9yIG1lc3NhZ2VzCi0v
LyByZWFkYWJsZS4gIFRoZSB0cmFuc2xhdGlvbiBpcyBkb25lIGJ5IHRoZSAndHlwZScgbWVtYmVy
IG9mIHRoZQotLy8gVGVtcGxhdGVzIHRlbXBsYXRlLgotCi0kcmFuZ2UgaSAxLi5uCi10ZW1wbGF0
ZSA8JGZvciBpLCBbW0dURVNUX1RFTVBMQVRFXyBUJGkgPSBOb25lVF1dPgotc3RydWN0IFRlbXBs
YXRlcyB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzJG48JGZvciBpLCBbW1QkaV1dPiB0eXBlOwotfTsK
LQotdGVtcGxhdGUgPD4KLXN0cnVjdCBUZW1wbGF0ZXM8JGZvciBpLCBbW05vbmVUXV0+IHsKLSAg
dHlwZWRlZiBUZW1wbGF0ZXMwIHR5cGU7Ci19OwotCi0kcmFuZ2UgaSAxLi5uLTEKLSRmb3IgaSBb
WwotJHJhbmdlIGogMS4uaQotJHJhbmdlIGsgaSsxLi5uCi10ZW1wbGF0ZSA8JGZvciBqLCBbW0dU
RVNUX1RFTVBMQVRFXyBUJGpdXT4KLXN0cnVjdCBUZW1wbGF0ZXM8JGZvciBqLCBbW1Qkal1dJGZv
ciBrW1ssIE5vbmVUXV0+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMkaTwkZm9yIGosIFtbVCRqXV0+
IHR5cGU7Ci19OwotCi1dXQotCi0vLyBUaGUgVHlwZUxpc3QgdGVtcGxhdGUgbWFrZXMgaXQgcG9z
c2libGUgdG8gdXNlIGVpdGhlciBhIHNpbmdsZSB0eXBlCi0vLyBvciBhIFR5cGVzPC4uLj4gbGlz
dCBpbiBUWVBFRF9URVNUX0NBU0UoKSBhbmQKLS8vIElOU1RBTlRJQVRFX1RZUEVEX1RFU1RfQ0FT
RV9QKCkuCi0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotc3RydWN0IFR5cGVMaXN0IHsKLSAgdHlw
ZWRlZiBUeXBlczE8VD4gdHlwZTsKLX07Ci0KLQotJHJhbmdlIGkgMS4ubgotdGVtcGxhdGUgPCRm
b3IgaSwgW1t0eXBlbmFtZSBUJGldXT4KLXN0cnVjdCBUeXBlTGlzdDxUeXBlczwkZm9yIGksIFtb
VCRpXV0+ID4gewotICB0eXBlZGVmIHR5cGVuYW1lIFR5cGVzPCRmb3IgaSwgW1tUJGldXT46OnR5
cGUgdHlwZTsKLX07Ci0KLSNlbmRpZiAgLy8gR1RFU1RfSEFTX1RZUEVEX1RFU1QgfHwgR1RFU1Rf
SEFTX1RZUEVEX1RFU1RfUAotCi19ICAvLyBuYW1lc3BhY2UgaW50ZXJuYWwKLX0gIC8vIG5hbWVz
cGFjZSB0ZXN0aW5nCi0KLSNlbmRpZiAgLy8gR1RFU1RfSU5DTFVERV9HVEVTVF9JTlRFUk5BTF9H
VEVTVF9UWVBFX1VUSUxfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29v
Z2xldGVzdC9zcmMvc3JjL2d0ZXN0LWFsbC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29v
Z2xldGVzdC9zcmMvc3JjL2d0ZXN0LWFsbC5jYwppbmRleCBiMjE3YTE4MDA2YjBjOGJkYWY0YTlm
OWI2ZDA2ZGU0ZmQ4YWQ5ZWVkLi5hZDI5MjkwNWNmMzgxZDY5ZWJhOTAwOGY1MTk2Y2Y2NDc3YTU2
YzFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL3Ny
Yy9ndGVzdC1hbGwuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3Ny
Yy9zcmMvZ3Rlc3QtYWxsLmNjCkBAIC00MSw2ICs0MSw3IEBACiAjaW5jbHVkZSAic3JjL2d0ZXN0
LmNjIgogI2luY2x1ZGUgInNyYy9ndGVzdC1kZWF0aC10ZXN0LmNjIgogI2luY2x1ZGUgInNyYy9n
dGVzdC1maWxlcGF0aC5jYyIKKyNpbmNsdWRlICJzcmMvZ3Rlc3QtbWF0Y2hlcnMuY2MiCiAjaW5j
bHVkZSAic3JjL2d0ZXN0LXBvcnQuY2MiCiAjaW5jbHVkZSAic3JjL2d0ZXN0LXByaW50ZXJzLmNj
IgogI2luY2x1ZGUgInNyYy9ndGVzdC10ZXN0LXBhcnQuY2MiCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL3NyYy9ndGVzdC1kZWF0aC10ZXN0LmNjIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3QtZGVhdGgtdGVz
dC5jYwppbmRleCAwOTA4MzU1MTYxMmUzYzNiOWIzYmQ3ZDFlZTYwNmMxOGZmYjVmNzNhLi41ZDEw
MzFiZWEyNTcwOTlkODk0YjJhNDhhNDRhOTk4ZTEzNTAwNzA5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL3NyYy9ndGVzdC1kZWF0aC10ZXN0LmNjCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0LWRlYXRo
LXRlc3QuY2MKQEAgLTMxLDYgKzMxLDkgQEAKIC8vIFRoaXMgZmlsZSBpbXBsZW1lbnRzIGRlYXRo
IHRlc3RzLgogCiAjaW5jbHVkZSAiZ3Rlc3QvZ3Rlc3QtZGVhdGgtdGVzdC5oIgorCisjaW5jbHVk
ZSA8dXRpbGl0eT4KKwogI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQuaCIKICNp
bmNsdWRlICJndGVzdC9pbnRlcm5hbC9jdXN0b20vZ3Rlc3QuaCIKIApAQCAtNjIsMTAgKzY1LDE2
IEBACiAjIGVuZGlmICAvLyBHVEVTVF9PU19RTlgKIAogIyBpZiBHVEVTVF9PU19GVUNIU0lBCisj
ICBpbmNsdWRlIDxsaWIvZmRpby9mZC5oPgogIyAgaW5jbHVkZSA8bGliL2ZkaW8vaW8uaD4KICMg
IGluY2x1ZGUgPGxpYi9mZGlvL3NwYXduLmg+CisjICBpbmNsdWRlIDxsaWIvengvY2hhbm5lbC5o
PgorIyAgaW5jbHVkZSA8bGliL3p4L3BvcnQuaD4KKyMgIGluY2x1ZGUgPGxpYi96eC9wcm9jZXNz
Lmg+CisjICBpbmNsdWRlIDxsaWIvengvc29ja2V0Lmg+CiAjICBpbmNsdWRlIDx6aXJjb24vcHJv
Y2Vzc2FyZ3MuaD4KICMgIGluY2x1ZGUgPHppcmNvbi9zeXNjYWxscy5oPgorIyAgaW5jbHVkZSA8
emlyY29uL3N5c2NhbGxzL3BvbGljeS5oPgogIyAgaW5jbHVkZSA8emlyY29uL3N5c2NhbGxzL3Bv
cnQuaD4KICMgZW5kaWYgIC8vIEdURVNUX09TX0ZVQ0hTSUEKIApAQCAtMTEzLDggKzEyMiw4IEBA
IEdURVNUX0RFRklORV9zdHJpbmdfKAogICAgICJJbmRpY2F0ZXMgdGhlIGZpbGUsIGxpbmUgbnVt
YmVyLCB0ZW1wb3JhbCBpbmRleCBvZiAiCiAgICAgInRoZSBzaW5nbGUgZGVhdGggdGVzdCB0byBy
dW4sIGFuZCBhIGZpbGUgZGVzY3JpcHRvciB0byAiCiAgICAgIndoaWNoIGEgc3VjY2VzcyBjb2Rl
IG1heSBiZSBzZW50LCBhbGwgc2VwYXJhdGVkIGJ5ICIKLSAgICAidGhlICd8JyBjaGFyYWN0ZXJz
LiAgVGhpcyBmbGFnIGlzIHNwZWNpZmllZCBpZiBhbmQgb25seSBpZiB0aGUgY3VycmVudCAiCi0g
ICAgInByb2Nlc3MgaXMgYSBzdWItcHJvY2VzcyBsYXVuY2hlZCBmb3IgcnVubmluZyBhIHRocmVh
ZC1zYWZlICIKKyAgICAidGhlICd8JyBjaGFyYWN0ZXJzLiAgVGhpcyBmbGFnIGlzIHNwZWNpZmll
ZCBpZiBhbmQgb25seSBpZiB0aGUgIgorICAgICJjdXJyZW50IHByb2Nlc3MgaXMgYSBzdWItcHJv
Y2VzcyBsYXVuY2hlZCBmb3IgcnVubmluZyBhIHRocmVhZC1zYWZlICIKICAgICAiZGVhdGggdGVz
dC4gIEZPUiBJTlRFUk5BTCBVU0UgT05MWS4iKTsKIH0gIC8vIG5hbWVzcGFjZSBpbnRlcm5hbAog
CkBAIC0yNjYsOCArMjc1LDYgQEAgc3RhdGljIGNvbnN0IGludCBrRnVjaHNpYVJlYWRQaXBlRmQg
PSAzOwogLy8gc3RhdGVtZW50LCB3aGljaCBpcyBub3QgYWxsb3dlZDsgVEhSRVcgbWVhbnMgdGhh
dCB0aGUgdGVzdCBzdGF0ZW1lbnQKIC8vIHJldHVybmVkIGNvbnRyb2wgYnkgdGhyb3dpbmcgYW4g
ZXhjZXB0aW9uLiAgSU5fUFJPR1JFU1MgbWVhbnMgdGhlIHRlc3QKIC8vIGhhcyBub3QgeWV0IGNv
bmNsdWRlZC4KLS8vIEZJWE1FOiBVbmlmeSBuYW1lcyBhbmQgcG9zc2libHkgdmFsdWVzIGZvcgot
Ly8gQWJvcnRSZWFzb24sIERlYXRoVGVzdE91dGNvbWUsIGFuZCBmbGFnIGNoYXJhY3RlcnMgYWJv
dmUuCiBlbnVtIERlYXRoVGVzdE91dGNvbWUgeyBJTl9QUk9HUkVTUywgRElFRCwgTElWRUQsIFJF
VFVSTkVELCBUSFJFVyB9OwogCiAvLyBSb3V0aW5lIGZvciBhYm9ydGluZyB0aGUgcHJvZ3JhbSB3
aGljaCBpcyBzYWZlIHRvIGNhbGwgZnJvbSBhbgpAQCAtMjgxLDcgKzI4OCw3IEBAIHN0YXRpYyB2
b2lkIERlYXRoVGVzdEFib3J0KGNvbnN0IHN0ZDo6c3RyaW5nJiBtZXNzYWdlKSB7CiAgIC8vIHRo
ZSBoZWFwIGZvciBhbnkgYWRkaXRpb25hbCBub24tbWludXNjdWxlIG1lbW9yeSByZXF1aXJlbWVu
dHMuCiAgIGNvbnN0IEludGVybmFsUnVuRGVhdGhUZXN0RmxhZyogY29uc3QgZmxhZyA9CiAgICAg
ICBHZXRVbml0VGVzdEltcGwoKS0+aW50ZXJuYWxfcnVuX2RlYXRoX3Rlc3RfZmxhZygpOwotICBp
ZiAoZmxhZyAhPSBOVUxMKSB7CisgIGlmIChmbGFnICE9IG51bGxwdHIpIHsKICAgICBGSUxFKiBw
YXJlbnQgPSBwb3NpeDo6RkRPcGVuKGZsYWctPndyaXRlX2ZkKCksICJ3Iik7CiAgICAgZnB1dGMo
a0RlYXRoVGVzdEludGVybmFsRXJyb3IsIHBhcmVudCk7CiAgICAgZnByaW50ZihwYXJlbnQsICIl
cyIsIG1lc3NhZ2UuY19zdHIoKSk7CkBAIC0zNjEsNyArMzY4LDcgQEAgc3RhdGljIHZvaWQgRmFp
bEZyb21JbnRlcm5hbEVycm9yKGludCBmZCkgewogLy8gZm9yIHRoZSBjdXJyZW50IHRlc3QuCiBE
ZWF0aFRlc3Q6OkRlYXRoVGVzdCgpIHsKICAgVGVzdEluZm8qIGNvbnN0IGluZm8gPSBHZXRVbml0
VGVzdEltcGwoKS0+Y3VycmVudF90ZXN0X2luZm8oKTsKLSAgaWYgKGluZm8gPT0gTlVMTCkgewor
ICBpZiAoaW5mbyA9PSBudWxscHRyKSB7CiAgICAgRGVhdGhUZXN0QWJvcnQoIkNhbm5vdCBydW4g
YSBkZWF0aCB0ZXN0IG91dHNpZGUgb2YgYSBURVNUIG9yICIKICAgICAgICAgICAgICAgICAgICAi
VEVTVF9GIGNvbnN0cnVjdCIpOwogICB9CkBAIC0zNjksMTAgKzM3NiwxMSBAQCBEZWF0aFRlc3Q6
OkRlYXRoVGVzdCgpIHsKIAogLy8gQ3JlYXRlcyBhbmQgcmV0dXJucyBhIGRlYXRoIHRlc3QgYnkg
ZGlzcGF0Y2hpbmcgdG8gdGhlIGN1cnJlbnQKIC8vIGRlYXRoIHRlc3QgZmFjdG9yeS4KLWJvb2wg
RGVhdGhUZXN0OjpDcmVhdGUoY29uc3QgY2hhciogc3RhdGVtZW50LCBjb25zdCBSRSogcmVnZXgs
Ci0gICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGZpbGUsIGludCBsaW5lLCBEZWF0
aFRlc3QqKiB0ZXN0KSB7Citib29sIERlYXRoVGVzdDo6Q3JlYXRlKGNvbnN0IGNoYXIqIHN0YXRl
bWVudCwKKyAgICAgICAgICAgICAgICAgICAgICAgTWF0Y2hlcjxjb25zdCBzdGQ6OnN0cmluZyY+
IG1hdGNoZXIsIGNvbnN0IGNoYXIqIGZpbGUsCisgICAgICAgICAgICAgICAgICAgICAgIGludCBs
aW5lLCBEZWF0aFRlc3QqKiB0ZXN0KSB7CiAgIHJldHVybiBHZXRVbml0VGVzdEltcGwoKS0+ZGVh
dGhfdGVzdF9mYWN0b3J5KCktPkNyZWF0ZSgKLSAgICAgIHN0YXRlbWVudCwgcmVnZXgsIGZpbGUs
IGxpbmUsIHRlc3QpOworICAgICAgc3RhdGVtZW50LCBzdGQ6Om1vdmUobWF0Y2hlciksIGZpbGUs
IGxpbmUsIHRlc3QpOwogfQogCiBjb25zdCBjaGFyKiBEZWF0aFRlc3Q6Okxhc3RNZXNzYWdlKCkg
ewpAQCAtMzg4LDkgKzM5Niw5IEBAIHN0ZDo6c3RyaW5nIERlYXRoVGVzdDo6bGFzdF9kZWF0aF90
ZXN0X21lc3NhZ2VfOwogLy8gUHJvdmlkZXMgY3Jvc3MgcGxhdGZvcm0gaW1wbGVtZW50YXRpb24g
Zm9yIHNvbWUgZGVhdGggZnVuY3Rpb25hbGl0eS4KIGNsYXNzIERlYXRoVGVzdEltcGwgOiBwdWJs
aWMgRGVhdGhUZXN0IHsKICBwcm90ZWN0ZWQ6Ci0gIERlYXRoVGVzdEltcGwoY29uc3QgY2hhciog
YV9zdGF0ZW1lbnQsIGNvbnN0IFJFKiBhX3JlZ2V4KQorICBEZWF0aFRlc3RJbXBsKGNvbnN0IGNo
YXIqIGFfc3RhdGVtZW50LCBNYXRjaGVyPGNvbnN0IHN0ZDo6c3RyaW5nJj4gbWF0Y2hlcikKICAg
ICAgIDogc3RhdGVtZW50XyhhX3N0YXRlbWVudCksCi0gICAgICAgIHJlZ2V4XyhhX3JlZ2V4KSwK
KyAgICAgICAgbWF0Y2hlcl8oc3RkOjptb3ZlKG1hdGNoZXIpKSwKICAgICAgICAgc3Bhd25lZF8o
ZmFsc2UpLAogICAgICAgICBzdGF0dXNfKC0xKSwKICAgICAgICAgb3V0Y29tZV8oSU5fUFJPR1JF
U1MpLApAQCAtMzk4LDEzICs0MDYsMTIgQEAgY2xhc3MgRGVhdGhUZXN0SW1wbCA6IHB1YmxpYyBE
ZWF0aFRlc3QgewogICAgICAgICB3cml0ZV9mZF8oLTEpIHt9CiAKICAgLy8gcmVhZF9mZF8gaXMg
ZXhwZWN0ZWQgdG8gYmUgY2xvc2VkIGFuZCBjbGVhcmVkIGJ5IGEgZGVyaXZlZCBjbGFzcy4KLSAg
fkRlYXRoVGVzdEltcGwoKSB7IEdURVNUX0RFQVRIX1RFU1RfQ0hFQ0tfKHJlYWRfZmRfID09IC0x
KTsgfQorICB+RGVhdGhUZXN0SW1wbCgpIG92ZXJyaWRlIHsgR1RFU1RfREVBVEhfVEVTVF9DSEVD
S18ocmVhZF9mZF8gPT0gLTEpOyB9CiAKLSAgdm9pZCBBYm9ydChBYm9ydFJlYXNvbiByZWFzb24p
OwotICB2aXJ0dWFsIGJvb2wgUGFzc2VkKGJvb2wgc3RhdHVzX29rKTsKKyAgdm9pZCBBYm9ydChB
Ym9ydFJlYXNvbiByZWFzb24pIG92ZXJyaWRlOworICBib29sIFBhc3NlZChib29sIHN0YXR1c19v
aykgb3ZlcnJpZGU7CiAKICAgY29uc3QgY2hhciogc3RhdGVtZW50KCkgY29uc3QgeyByZXR1cm4g
c3RhdGVtZW50XzsgfQotICBjb25zdCBSRSogcmVnZXgoKSBjb25zdCB7IHJldHVybiByZWdleF87
IH0KICAgYm9vbCBzcGF3bmVkKCkgY29uc3QgeyByZXR1cm4gc3Bhd25lZF87IH0KICAgdm9pZCBz
ZXRfc3Bhd25lZChib29sIGlzX3NwYXduZWQpIHsgc3Bhd25lZF8gPSBpc19zcGF3bmVkOyB9CiAg
IGludCBzdGF0dXMoKSBjb25zdCB7IHJldHVybiBzdGF0dXNfOyB9CkBAIC00MjIsMTMgKzQyOSwx
NSBAQCBjbGFzcyBEZWF0aFRlc3RJbXBsIDogcHVibGljIERlYXRoVGVzdCB7CiAgIC8vIGNhc2Ug
b2YgdW5leHBlY3RlZCBjb2Rlcy4KICAgdm9pZCBSZWFkQW5kSW50ZXJwcmV0U3RhdHVzQnl0ZSgp
OwogCisgIC8vIFJldHVybnMgc3RkZXJyIG91dHB1dCBmcm9tIHRoZSBjaGlsZCBwcm9jZXNzLgor
ICB2aXJ0dWFsIHN0ZDo6c3RyaW5nIEdldEVycm9yTG9ncygpOworCiAgcHJpdmF0ZToKICAgLy8g
VGhlIHRleHR1YWwgY29udGVudCBvZiB0aGUgY29kZSB0aGlzIG9iamVjdCBpcyB0ZXN0aW5nLiAg
VGhpcyBjbGFzcwogICAvLyBkb2Vzbid0IG93biB0aGlzIHN0cmluZyBhbmQgc2hvdWxkIG5vdCBh
dHRlbXB0IHRvIGRlbGV0ZSBpdC4KICAgY29uc3QgY2hhciogY29uc3Qgc3RhdGVtZW50XzsKLSAg
Ly8gVGhlIHJlZ3VsYXIgZXhwcmVzc2lvbiB3aGljaCB0ZXN0IG91dHB1dCBtdXN0IG1hdGNoLiAg
RGVhdGhUZXN0SW1wbAotICAvLyBkb2Vzbid0IG93biB0aGlzIG9iamVjdCBhbmQgc2hvdWxkIG5v
dCBhdHRlbXB0IHRvIGRlbGV0ZSBpdC4KLSAgY29uc3QgUkUqIGNvbnN0IHJlZ2V4XzsKKyAgLy8g
QSBtYXRjaGVyIHRoYXQncyBleHBlY3RlZCB0byBtYXRjaCB0aGUgc3RkZXJyIG91dHB1dCBieSB0
aGUgY2hpbGQgcHJvY2Vzcy4KKyAgTWF0Y2hlcjxjb25zdCBzdGQ6OnN0cmluZyY+IG1hdGNoZXJf
OwogICAvLyBUcnVlIGlmIHRoZSBkZWF0aCB0ZXN0IGNoaWxkIHByb2Nlc3MgaGFzIGJlZW4gc3Vj
Y2Vzc2Z1bGx5IHNwYXduZWQuCiAgIGJvb2wgc3Bhd25lZF87CiAgIC8vIFRoZSBleGl0IHN0YXR1
cyBvZiB0aGUgY2hpbGQgcHJvY2Vzcy4KQEAgLTQ5MCw2ICs0OTksMTAgQEAgdm9pZCBEZWF0aFRl
c3RJbXBsOjpSZWFkQW5kSW50ZXJwcmV0U3RhdHVzQnl0ZSgpIHsKICAgc2V0X3JlYWRfZmQoLTEp
OwogfQogCitzdGQ6OnN0cmluZyBEZWF0aFRlc3RJbXBsOjpHZXRFcnJvckxvZ3MoKSB7CisgIHJl
dHVybiBHZXRDYXB0dXJlZFN0ZGVycigpOworfQorCiAvLyBTaWduYWxzIHRoYXQgdGhlIGRlYXRo
IHRlc3QgY29kZSB3aGljaCBzaG91bGQgaGF2ZSBleGl0ZWQsIGRpZG4ndC4KIC8vIFNob3VsZCBi
ZSBjYWxsZWQgb25seSBpbiBhIGRlYXRoIHRlc3QgY2hpbGQgcHJvY2Vzcy4KIC8vIFdyaXRlcyBh
IHN0YXR1cyBieXRlIHRvIHRoZSBjaGlsZCdzIHN0YXR1cyBmaWxlIGRlc2NyaXB0b3IsIHRoZW4K
QEAgLTU0MywyMiArNTU2LDIxIEBAIHN0YXRpYyA6OnN0ZDo6c3RyaW5nIEZvcm1hdERlYXRoVGVz
dE91dHB1dChjb25zdCA6OnN0ZDo6c3RyaW5nJiBvdXRwdXQpIHsKIC8vICAgICAgICAgICAgIGlu
IHRoZSBmb3JtYXQgc3BlY2lmaWVkIGJ5IHdhaXQoMikuIE9uIFdpbmRvd3MsIHRoaXMgaXMgdGhl
CiAvLyAgICAgICAgICAgICB2YWx1ZSBzdXBwbGllZCB0byB0aGUgRXhpdFByb2Nlc3MoKSBBUEkg
b3IgYSBudW1lcmljIGNvZGUKIC8vICAgICAgICAgICAgIG9mIHRoZSBleGNlcHRpb24gdGhhdCB0
ZXJtaW5hdGVkIHRoZSBwcm9ncmFtLgotLy8gICByZWdleDogICAgQSByZWd1bGFyIGV4cHJlc3Np
b24gb2JqZWN0IHRvIGJlIGFwcGxpZWQgdG8KLS8vICAgICAgICAgICAgIHRoZSB0ZXN0J3MgY2Fw
dHVyZWQgc3RhbmRhcmQgZXJyb3Igb3V0cHV0OyB0aGUgZGVhdGggdGVzdAotLy8gICAgICAgICAg
ICAgZmFpbHMgaWYgaXQgZG9lcyBub3QgbWF0Y2guCisvLyAgIG1hdGNoZXJfOiBBIG1hdGNoZXIg
dGhhdCdzIGV4cGVjdGVkIHRvIG1hdGNoIHRoZSBzdGRlcnIgb3V0cHV0IGJ5IHRoZSBjaGlsZAor
Ly8gICAgICAgICAgICAgcHJvY2Vzcy4KIC8vCiAvLyBBcmd1bWVudDoKIC8vICAgc3RhdHVzX29r
OiB0cnVlIGlmIGV4aXRfc3RhdHVzIGlzIGFjY2VwdGFibGUgaW4gdGhlIGNvbnRleHQgb2YKIC8v
ICAgICAgICAgICAgICB0aGlzIHBhcnRpY3VsYXIgZGVhdGggdGVzdCwgd2hpY2ggZmFpbHMgaWYg
aXQgaXMgZmFsc2UKIC8vCi0vLyBSZXR1cm5zIHRydWUgaWZmIGFsbCBvZiB0aGUgYWJvdmUgY29u
ZGl0aW9ucyBhcmUgbWV0LiAgT3RoZXJ3aXNlLCB0aGUKLS8vIGZpcnN0IGZhaWxpbmcgY29uZGl0
aW9uLCBpbiB0aGUgb3JkZXIgZ2l2ZW4gYWJvdmUsIGlzIHRoZSBvbmUgdGhhdCBpcworLy8gUmV0
dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIGFsbCBvZiB0aGUgYWJvdmUgY29uZGl0aW9ucyBhcmUg
bWV0LiAgT3RoZXJ3aXNlLAorLy8gdGhlIGZpcnN0IGZhaWxpbmcgY29uZGl0aW9uLCBpbiB0aGUg
b3JkZXIgZ2l2ZW4gYWJvdmUsIGlzIHRoZSBvbmUgdGhhdCBpcwogLy8gcmVwb3J0ZWQuIEFsc28g
c2V0cyB0aGUgbGFzdCBkZWF0aCB0ZXN0IG1lc3NhZ2Ugc3RyaW5nLgogYm9vbCBEZWF0aFRlc3RJ
bXBsOjpQYXNzZWQoYm9vbCBzdGF0dXNfb2spIHsKICAgaWYgKCFzcGF3bmVkKCkpCiAgICAgcmV0
dXJuIGZhbHNlOwogCi0gIGNvbnN0IHN0ZDo6c3RyaW5nIGVycm9yX21lc3NhZ2UgPSBHZXRDYXB0
dXJlZFN0ZGVycigpOworICBjb25zdCBzdGQ6OnN0cmluZyBlcnJvcl9tZXNzYWdlID0gR2V0RXJy
b3JMb2dzKCk7CiAKICAgYm9vbCBzdWNjZXNzID0gZmFsc2U7CiAgIE1lc3NhZ2UgYnVmZmVyOwpA
QCAtNTc5LDE4ICs1OTEsMTUgQEAgYm9vbCBEZWF0aFRlc3RJbXBsOjpQYXNzZWQoYm9vbCBzdGF0
dXNfb2spIHsKICAgICAgIGJyZWFrOwogICAgIGNhc2UgRElFRDoKICAgICAgIGlmIChzdGF0dXNf
b2spIHsKLSMgaWYgR1RFU1RfVVNFU19QQ1JFCi0gICAgICAgIC8vIFBDUkUgcmVnZXhlcyBzdXBw
b3J0IGVtYmVkZGVkIE5VTHMuCi0gICAgICAgIGNvbnN0IGJvb2wgbWF0Y2hlZCA9IFJFOjpQYXJ0
aWFsTWF0Y2goZXJyb3JfbWVzc2FnZSwgKnJlZ2V4KCkpOwotIyBlbHNlCi0gICAgICAgIGNvbnN0
IGJvb2wgbWF0Y2hlZCA9IFJFOjpQYXJ0aWFsTWF0Y2goZXJyb3JfbWVzc2FnZS5jX3N0cigpLCAq
cmVnZXgoKSk7Ci0jIGVuZGlmICAvLyBHVEVTVF9VU0VTX1BDUkUKLSAgICAgICAgaWYgKG1hdGNo
ZWQpIHsKKyAgICAgICAgaWYgKG1hdGNoZXJfLk1hdGNoZXMoZXJyb3JfbWVzc2FnZSkpIHsKICAg
ICAgICAgICBzdWNjZXNzID0gdHJ1ZTsKICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICBzdGQ6
Om9zdHJpbmdzdHJlYW0gc3RyZWFtOworICAgICAgICAgIG1hdGNoZXJfLkRlc2NyaWJlVG8oJnN0
cmVhbSk7CiAgICAgICAgICAgYnVmZmVyIDw8ICIgICAgUmVzdWx0OiBkaWVkIGJ1dCBub3Qgd2l0
aCBleHBlY3RlZCBlcnJvci5cbiIKLSAgICAgICAgICAgICAgICAgPDwgIiAgRXhwZWN0ZWQ6ICIg
PDwgcmVnZXgoKS0+cGF0dGVybigpIDw8ICJcbiIKLSAgICAgICAgICAgICAgICAgPDwgIkFjdHVh
bCBtc2c6XG4iIDw8IEZvcm1hdERlYXRoVGVzdE91dHB1dChlcnJvcl9tZXNzYWdlKTsKKyAgICAg
ICAgICAgICAgICAgPDwgIiAgRXhwZWN0ZWQ6ICIgPDwgc3RyZWFtLnN0cigpIDw8ICJcbiIKKyAg
ICAgICAgICAgICAgICAgPDwgIkFjdHVhbCBtc2c6XG4iCisgICAgICAgICAgICAgICAgIDw8IEZv
cm1hdERlYXRoVGVzdE91dHB1dChlcnJvcl9tZXNzYWdlKTsKICAgICAgICAgfQogICAgICAgfSBl
bHNlIHsKICAgICAgICAgYnVmZmVyIDw8ICIgICAgUmVzdWx0OiBkaWVkIGJ1dCBub3Qgd2l0aCBl
eHBlY3RlZCBleGl0IGNvZGU6XG4iCkBAIC02MzksMTEgKzY0OCwxMSBAQCBib29sIERlYXRoVGVz
dEltcGw6OlBhc3NlZChib29sIHN0YXR1c19vaykgewogLy8KIGNsYXNzIFdpbmRvd3NEZWF0aFRl
c3QgOiBwdWJsaWMgRGVhdGhUZXN0SW1wbCB7CiAgcHVibGljOgotICBXaW5kb3dzRGVhdGhUZXN0
KGNvbnN0IGNoYXIqIGFfc3RhdGVtZW50LAotICAgICAgICAgICAgICAgICAgIGNvbnN0IFJFKiBh
X3JlZ2V4LAotICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGZpbGUsCi0gICAgICAgICAg
ICAgICAgICAgaW50IGxpbmUpCi0gICAgICA6IERlYXRoVGVzdEltcGwoYV9zdGF0ZW1lbnQsIGFf
cmVnZXgpLCBmaWxlXyhmaWxlKSwgbGluZV8obGluZSkge30KKyAgV2luZG93c0RlYXRoVGVzdChj
b25zdCBjaGFyKiBhX3N0YXRlbWVudCwgTWF0Y2hlcjxjb25zdCBzdGQ6OnN0cmluZyY+IG1hdGNo
ZXIsCisgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciogZmlsZSwgaW50IGxpbmUpCisgICAg
ICA6IERlYXRoVGVzdEltcGwoYV9zdGF0ZW1lbnQsIHN0ZDo6bW92ZShtYXRjaGVyKSksCisgICAg
ICAgIGZpbGVfKGZpbGUpLAorICAgICAgICBsaW5lXyhsaW5lKSB7fQogCiAgIC8vIEFsbCBvZiB0
aGVzZSB2aXJ0dWFsIGZ1bmN0aW9ucyBhcmUgaW5oZXJpdGVkIGZyb20gRGVhdGhUZXN0LgogICB2
aXJ0dWFsIGludCBXYWl0KCk7CkBAIC03MjAsNyArNzI5LDcgQEAgRGVhdGhUZXN0OjpUZXN0Um9s
ZSBXaW5kb3dzRGVhdGhUZXN0OjpBc3N1bWVSb2xlKCkgewogICBjb25zdCBUZXN0SW5mbyogY29u
c3QgaW5mbyA9IGltcGwtPmN1cnJlbnRfdGVzdF9pbmZvKCk7CiAgIGNvbnN0IGludCBkZWF0aF90
ZXN0X2luZGV4ID0gaW5mby0+cmVzdWx0KCktPmRlYXRoX3Rlc3RfY291bnQoKTsKIAotICBpZiAo
ZmxhZyAhPSBOVUxMKSB7CisgIGlmIChmbGFnICE9IG51bGxwdHIpIHsKICAgICAvLyBQYXJzZUlu
dGVybmFsUnVuRGVhdGhUZXN0RmxhZygpIGhhcyBwZXJmb3JtZWQgYWxsIHRoZSBuZWNlc3NhcnkK
ICAgICAvLyBwcm9jZXNzaW5nLgogICAgIHNldF93cml0ZV9mZChmbGFnLT53cml0ZV9mZCgpKTsK
QEAgLTcyOSw4ICs3MzgsOCBAQCBEZWF0aFRlc3Q6OlRlc3RSb2xlIFdpbmRvd3NEZWF0aFRlc3Q6
OkFzc3VtZVJvbGUoKSB7CiAKICAgLy8gV2luZG93c0RlYXRoVGVzdCB1c2VzIGFuIGFub255bW91
cyBwaXBlIHRvIGNvbW11bmljYXRlIHJlc3VsdHMgb2YKICAgLy8gYSBkZWF0aCB0ZXN0LgotICBT
RUNVUklUWV9BVFRSSUJVVEVTIGhhbmRsZXNfYXJlX2luaGVyaXRhYmxlID0gewotICAgIHNpemVv
ZihTRUNVUklUWV9BVFRSSUJVVEVTKSwgTlVMTCwgVFJVRSB9OworICBTRUNVUklUWV9BVFRSSUJV
VEVTIGhhbmRsZXNfYXJlX2luaGVyaXRhYmxlID0ge3NpemVvZihTRUNVUklUWV9BVFRSSUJVVEVT
KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxs
cHRyLCBUUlVFfTsKICAgSEFORExFIHJlYWRfaGFuZGxlLCB3cml0ZV9oYW5kbGU7CiAgIEdURVNU
X0RFQVRIX1RFU1RfQ0hFQ0tfKAogICAgICAgOjpDcmVhdGVQaXBlKCZyZWFkX2hhbmRsZSwgJndy
aXRlX2hhbmRsZSwgJmhhbmRsZXNfYXJlX2luaGVyaXRhYmxlLApAQCAtNzQxLDEzICs3NTAsMTMg
QEAgRGVhdGhUZXN0OjpUZXN0Um9sZSBXaW5kb3dzRGVhdGhUZXN0OjpBc3N1bWVSb2xlKCkgewog
ICB3cml0ZV9oYW5kbGVfLlJlc2V0KHdyaXRlX2hhbmRsZSk7CiAgIGV2ZW50X2hhbmRsZV8uUmVz
ZXQoOjpDcmVhdGVFdmVudCgKICAgICAgICZoYW5kbGVzX2FyZV9pbmhlcml0YWJsZSwKLSAgICAg
IFRSVUUsICAgIC8vIFRoZSBldmVudCB3aWxsIGF1dG9tYXRpY2FsbHkgcmVzZXQgdG8gbm9uLXNp
Z25hbGVkIHN0YXRlLgotICAgICAgRkFMU0UsICAgLy8gVGhlIGluaXRpYWwgc3RhdGUgaXMgbm9u
LXNpZ25hbGxlZC4KLSAgICAgIE5VTEwpKTsgIC8vIFRoZSBldmVuIGlzIHVubmFtZWQuCi0gIEdU
RVNUX0RFQVRIX1RFU1RfQ0hFQ0tfKGV2ZW50X2hhbmRsZV8uR2V0KCkgIT0gTlVMTCk7Ci0gIGNv
bnN0IHN0ZDo6c3RyaW5nIGZpbHRlcl9mbGFnID0KLSAgICAgIHN0ZDo6c3RyaW5nKCItLSIpICsg
R1RFU1RfRkxBR19QUkVGSVhfICsga0ZpbHRlckZsYWcgKyAiPSIgKwotICAgICAgaW5mby0+dGVz
dF9jYXNlX25hbWUoKSArICIuIiArIGluZm8tPm5hbWUoKTsKKyAgICAgIFRSVUUsICAgICAgIC8v
IFRoZSBldmVudCB3aWxsIGF1dG9tYXRpY2FsbHkgcmVzZXQgdG8gbm9uLXNpZ25hbGVkIHN0YXRl
LgorICAgICAgRkFMU0UsICAgICAgLy8gVGhlIGluaXRpYWwgc3RhdGUgaXMgbm9uLXNpZ25hbGxl
ZC4KKyAgICAgIG51bGxwdHIpKTsgIC8vIFRoZSBldmVuIGlzIHVubmFtZWQuCisgIEdURVNUX0RF
QVRIX1RFU1RfQ0hFQ0tfKGV2ZW50X2hhbmRsZV8uR2V0KCkgIT0gbnVsbHB0cik7CisgIGNvbnN0
IHN0ZDo6c3RyaW5nIGZpbHRlcl9mbGFnID0gc3RkOjpzdHJpbmcoIi0tIikgKyBHVEVTVF9GTEFH
X1BSRUZJWF8gKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtGaWx0ZXJGbGFn
ICsgIj0iICsgaW5mby0+dGVzdF9zdWl0ZV9uYW1lKCkgKworICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICIuIiArIGluZm8tPm5hbWUoKTsKICAgY29uc3Qgc3RkOjpzdHJpbmcgaW50
ZXJuYWxfZmxhZyA9CiAgICAgICBzdGQ6OnN0cmluZygiLS0iKSArIEdURVNUX0ZMQUdfUFJFRklY
XyArIGtJbnRlcm5hbFJ1bkRlYXRoVGVzdEZsYWcgKwogICAgICAgIj0iICsgZmlsZV8gKyAifCIg
KyBTdHJlYW1hYmxlVG9TdHJpbmcobGluZV8pICsgInwiICsKQEAgLTc2MCwxMCArNzY5LDkgQEAg
RGVhdGhUZXN0OjpUZXN0Um9sZSBXaW5kb3dzRGVhdGhUZXN0OjpBc3N1bWVSb2xlKCkgewogICAg
ICAgInwiICsgU3RyZWFtYWJsZVRvU3RyaW5nKHJlaW50ZXJwcmV0X2Nhc3Q8c2l6ZV90PihldmVu
dF9oYW5kbGVfLkdldCgpKSk7CiAKICAgY2hhciBleGVjdXRhYmxlX3BhdGhbX01BWF9QQVRIICsg
MV07ICAvLyBOT0xJTlQKLSAgR1RFU1RfREVBVEhfVEVTVF9DSEVDS18oCi0gICAgICBfTUFYX1BB
VEggKyAxICE9IDo6R2V0TW9kdWxlRmlsZU5hbWVBKE5VTEwsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGV4ZWN1dGFibGVfcGF0aCwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX01BWF9QQVRIKSk7CisgIEdURVNUX0RFQVRI
X1RFU1RfQ0hFQ0tfKF9NQVhfUEFUSCArIDEgIT0gOjpHZXRNb2R1bGVGaWxlTmFtZUEobnVsbHB0
ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBleGVjdXRhYmxlX3BhdGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX01BWF9QQVRIKSk7CiAKICAgc3Rk
OjpzdHJpbmcgY29tbWFuZF9saW5lID0KICAgICAgIHN0ZDo6c3RyaW5nKDo6R2V0Q29tbWFuZExp
bmVBKCkpICsgIiAiICsgZmlsdGVyX2ZsYWcgKyAiIFwiIiArCkBAIC03ODQsMTcgKzc5MiwxNiBA
QCBEZWF0aFRlc3Q6OlRlc3RSb2xlIFdpbmRvd3NEZWF0aFRlc3Q6OkFzc3VtZVJvbGUoKSB7CiAg
IHN0YXJ0dXBfaW5mby5oU3RkRXJyb3IgPSA6OkdldFN0ZEhhbmRsZShTVERfRVJST1JfSEFORExF
KTsKIAogICBQUk9DRVNTX0lORk9STUFUSU9OIHByb2Nlc3NfaW5mbzsKLSAgR1RFU1RfREVBVEhf
VEVTVF9DSEVDS18oOjpDcmVhdGVQcm9jZXNzQSgKLSAgICAgIGV4ZWN1dGFibGVfcGF0aCwKLSAg
ICAgIGNvbnN0X2Nhc3Q8Y2hhcio+KGNvbW1hbmRfbGluZS5jX3N0cigpKSwKLSAgICAgIE5VTEws
ICAgLy8gUmV0dW5lZCBwcm9jZXNzIGhhbmRsZSBpcyBub3QgaW5oZXJpdGFibGUuCi0gICAgICBO
VUxMLCAgIC8vIFJldHVuZWQgdGhyZWFkIGhhbmRsZSBpcyBub3QgaW5oZXJpdGFibGUuCi0gICAg
ICBUUlVFLCAgIC8vIENoaWxkIGluaGVyaXRzIGFsbCBpbmhlcml0YWJsZSBoYW5kbGVzIChmb3Ig
d3JpdGVfaGFuZGxlXykuCi0gICAgICAweDAsICAgIC8vIERlZmF1bHQgY3JlYXRpb24gZmxhZ3Mu
Ci0gICAgICBOVUxMLCAgIC8vIEluaGVyaXQgdGhlIHBhcmVudCdzIGVudmlyb25tZW50LgotICAg
ICAgVW5pdFRlc3Q6OkdldEluc3RhbmNlKCktPm9yaWdpbmFsX3dvcmtpbmdfZGlyKCksCi0gICAg
ICAmc3RhcnR1cF9pbmZvLAotICAgICAgJnByb2Nlc3NfaW5mbykgIT0gRkFMU0UpOworICBHVEVT
VF9ERUFUSF9URVNUX0NIRUNLXygKKyAgICAgIDo6Q3JlYXRlUHJvY2Vzc0EoCisgICAgICAgICAg
ZXhlY3V0YWJsZV9wYXRoLCBjb25zdF9jYXN0PGNoYXIqPihjb21tYW5kX2xpbmUuY19zdHIoKSks
CisgICAgICAgICAgbnVsbHB0ciwgIC8vIFJldHVuZWQgcHJvY2VzcyBoYW5kbGUgaXMgbm90IGlu
aGVyaXRhYmxlLgorICAgICAgICAgIG51bGxwdHIsICAvLyBSZXR1bmVkIHRocmVhZCBoYW5kbGUg
aXMgbm90IGluaGVyaXRhYmxlLgorICAgICAgICAgIFRSVUUsICAvLyBDaGlsZCBpbmhlcml0cyBh
bGwgaW5oZXJpdGFibGUgaGFuZGxlcyAoZm9yIHdyaXRlX2hhbmRsZV8pLgorICAgICAgICAgIDB4
MCwgICAvLyBEZWZhdWx0IGNyZWF0aW9uIGZsYWdzLgorICAgICAgICAgIG51bGxwdHIsICAvLyBJ
bmhlcml0IHRoZSBwYXJlbnQncyBlbnZpcm9ubWVudC4KKyAgICAgICAgICBVbml0VGVzdDo6R2V0
SW5zdGFuY2UoKS0+b3JpZ2luYWxfd29ya2luZ19kaXIoKSwgJnN0YXJ0dXBfaW5mbywKKyAgICAg
ICAgICAmcHJvY2Vzc19pbmZvKSAhPSBGQUxTRSk7CiAgIGNoaWxkX2hhbmRsZV8uUmVzZXQocHJv
Y2Vzc19pbmZvLmhQcm9jZXNzKTsKICAgOjpDbG9zZUhhbmRsZShwcm9jZXNzX2luZm8uaFRocmVh
ZCk7CiAgIHNldF9zcGF3bmVkKHRydWUpOwpAQCAtODA1LDM4ICs4MTIsMzQgQEAgRGVhdGhUZXN0
OjpUZXN0Um9sZSBXaW5kb3dzRGVhdGhUZXN0OjpBc3N1bWVSb2xlKCkgewogCiBjbGFzcyBGdWNo
c2lhRGVhdGhUZXN0IDogcHVibGljIERlYXRoVGVzdEltcGwgewogIHB1YmxpYzoKLSAgRnVjaHNp
YURlYXRoVGVzdChjb25zdCBjaGFyKiBhX3N0YXRlbWVudCwKLSAgICAgICAgICAgICAgICAgICBj
b25zdCBSRSogYV9yZWdleCwKLSAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyKiBmaWxlLAot
ICAgICAgICAgICAgICAgICAgIGludCBsaW5lKQotICAgICAgOiBEZWF0aFRlc3RJbXBsKGFfc3Rh
dGVtZW50LCBhX3JlZ2V4KSwgZmlsZV8oZmlsZSksIGxpbmVfKGxpbmUpIHt9Ci0gIHZpcnR1YWwg
fkZ1Y2hzaWFEZWF0aFRlc3QoKSB7Ci0gICAgenhfc3RhdHVzX3Qgc3RhdHVzID0genhfaGFuZGxl
X2Nsb3NlKGNoaWxkX3Byb2Nlc3NfKTsKLSAgICBHVEVTVF9ERUFUSF9URVNUX0NIRUNLXyhzdGF0
dXMgPT0gWlhfT0spOwotICAgIHN0YXR1cyA9IHp4X2hhbmRsZV9jbG9zZShwb3J0Xyk7Ci0gICAg
R1RFU1RfREVBVEhfVEVTVF9DSEVDS18oc3RhdHVzID09IFpYX09LKTsKLSAgfQorICBGdWNoc2lh
RGVhdGhUZXN0KGNvbnN0IGNoYXIqIGFfc3RhdGVtZW50LCBNYXRjaGVyPGNvbnN0IHN0ZDo6c3Ry
aW5nJj4gbWF0Y2hlciwKKyAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyKiBmaWxlLCBpbnQg
bGluZSkKKyAgICAgIDogRGVhdGhUZXN0SW1wbChhX3N0YXRlbWVudCwgc3RkOjptb3ZlKG1hdGNo
ZXIpKSwKKyAgICAgICAgZmlsZV8oZmlsZSksCisgICAgICAgIGxpbmVfKGxpbmUpIHt9CiAKICAg
Ly8gQWxsIG9mIHRoZXNlIHZpcnR1YWwgZnVuY3Rpb25zIGFyZSBpbmhlcml0ZWQgZnJvbSBEZWF0
aFRlc3QuCi0gIHZpcnR1YWwgaW50IFdhaXQoKTsKLSAgdmlydHVhbCBUZXN0Um9sZSBBc3N1bWVS
b2xlKCk7CisgIGludCBXYWl0KCkgb3ZlcnJpZGU7CisgIFRlc3RSb2xlIEFzc3VtZVJvbGUoKSBv
dmVycmlkZTsKKyAgc3RkOjpzdHJpbmcgR2V0RXJyb3JMb2dzKCkgb3ZlcnJpZGU7CiAKICBwcml2
YXRlOgogICAvLyBUaGUgbmFtZSBvZiB0aGUgZmlsZSBpbiB3aGljaCB0aGUgZGVhdGggdGVzdCBp
cyBsb2NhdGVkLgogICBjb25zdCBjaGFyKiBjb25zdCBmaWxlXzsKICAgLy8gVGhlIGxpbmUgbnVt
YmVyIG9uIHdoaWNoIHRoZSBkZWF0aCB0ZXN0IGlzIGxvY2F0ZWQuCiAgIGNvbnN0IGludCBsaW5l
XzsKKyAgLy8gVGhlIHN0ZGVyciBkYXRhIGNhcHR1cmVkIGJ5IHRoZSBjaGlsZCBwcm9jZXNzLgor
ICBzdGQ6OnN0cmluZyBjYXB0dXJlZF9zdGRlcnJfOwogCi0gIHp4X2hhbmRsZV90IGNoaWxkX3By
b2Nlc3NfID0gWlhfSEFORExFX0lOVkFMSUQ7Ci0gIHp4X2hhbmRsZV90IHBvcnRfID0gWlhfSEFO
RExFX0lOVkFMSUQ7CisgIHp4Ojpwcm9jZXNzIGNoaWxkX3Byb2Nlc3NfOworICB6eDo6Y2hhbm5l
bCBleGNlcHRpb25fY2hhbm5lbF87CisgIHp4Ojpzb2NrZXQgc3RkZXJyX3NvY2tldF87CiB9Owog
CiAvLyBVdGlsaXR5IGNsYXNzIGZvciBhY2N1bXVsYXRpbmcgY29tbWFuZC1saW5lIGFyZ3VtZW50
cy4KIGNsYXNzIEFyZ3VtZW50cyB7CiAgcHVibGljOgotICBBcmd1bWVudHMoKSB7Ci0gICAgYXJn
c18ucHVzaF9iYWNrKE5VTEwpOwotICB9CisgIEFyZ3VtZW50cygpIHsgYXJnc18ucHVzaF9iYWNr
KG51bGxwdHIpOyB9CiAKICAgfkFyZ3VtZW50cygpIHsKICAgICBmb3IgKHN0ZDo6dmVjdG9yPGNo
YXIqPjo6aXRlcmF0b3IgaSA9IGFyZ3NfLmJlZ2luKCk7IGkgIT0gYXJnc18uZW5kKCk7CkBAIC04
NzIsNTEgKzg3NSw4OCBAQCBjbGFzcyBBcmd1bWVudHMgewogLy8gc3RhdHVzLCBvciAwIGlmIG5v
IGNoaWxkIHByb2Nlc3MgZXhpc3RzLiAgQXMgYSBzaWRlIGVmZmVjdCwgc2V0cyB0aGUKIC8vIG91
dGNvbWUgZGF0YSBtZW1iZXIuCiBpbnQgRnVjaHNpYURlYXRoVGVzdDo6V2FpdCgpIHsKKyAgY29u
c3QgaW50IGtQcm9jZXNzS2V5ID0gMDsKKyAgY29uc3QgaW50IGtTb2NrZXRLZXkgPSAxOworICBj
b25zdCBpbnQga0V4Y2VwdGlvbktleSA9IDI7CisKICAgaWYgKCFzcGF3bmVkKCkpCiAgICAgcmV0
dXJuIDA7CiAKLSAgLy8gUmVnaXN0ZXIgdG8gd2FpdCBmb3IgdGhlIGNoaWxkIHByb2Nlc3MgdG8g
dGVybWluYXRlLgorICAvLyBDcmVhdGUgYSBwb3J0IHRvIHdhaXQgZm9yIHNvY2tldC90YXNrL2V4
Y2VwdGlvbiBldmVudHMuCiAgIHp4X3N0YXR1c190IHN0YXR1c196eDsKLSAgc3RhdHVzX3p4ID0g
enhfb2JqZWN0X3dhaXRfYXN5bmMoY2hpbGRfcHJvY2Vzc18sCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHBvcnRfLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAwIC8qIGtleSAqLywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWlhfUFJP
Q0VTU19URVJNSU5BVEVELAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBaWF9X
QUlUX0FTWU5DX09OQ0UpOworICB6eDo6cG9ydCBwb3J0OworICBzdGF0dXNfenggPSB6eDo6cG9y
dDo6Y3JlYXRlKDAsICZwb3J0KTsKICAgR1RFU1RfREVBVEhfVEVTVF9DSEVDS18oc3RhdHVzX3p4
ID09IFpYX09LKTsKIAotICAvLyBXYWl0IGZvciBpdCB0byB0ZXJtaW5hdGUsIG9yIGFuIGV4Y2Vw
dGlvbiB0byBiZSByZWNlaXZlZC4KLSAgenhfcG9ydF9wYWNrZXRfdCBwYWNrZXQ7Ci0gIHN0YXR1
c196eCA9IHp4X3BvcnRfd2FpdChwb3J0XywgWlhfVElNRV9JTkZJTklURSwgJnBhY2tldCk7Cisg
IC8vIFJlZ2lzdGVyIHRvIHdhaXQgZm9yIHRoZSBjaGlsZCBwcm9jZXNzIHRvIHRlcm1pbmF0ZS4K
KyAgc3RhdHVzX3p4ID0gY2hpbGRfcHJvY2Vzc18ud2FpdF9hc3luYygKKyAgICAgIHBvcnQsIGtQ
cm9jZXNzS2V5LCBaWF9QUk9DRVNTX1RFUk1JTkFURUQsIFpYX1dBSVRfQVNZTkNfT05DRSk7CiAg
IEdURVNUX0RFQVRIX1RFU1RfQ0hFQ0tfKHN0YXR1c196eCA9PSBaWF9PSyk7CiAKLSAgaWYgKFpY
X1BLVF9JU19FWENFUFRJT04ocGFja2V0LnR5cGUpKSB7Ci0gICAgLy8gUHJvY2VzcyBlbmNvdW50
ZXJlZCBhbiBleGNlcHRpb24uIEtpbGwgaXQgZGlyZWN0bHkgcmF0aGVyIHRoYW4gbGV0dGluZwot
ICAgIC8vIG90aGVyIGhhbmRsZXJzIHByb2Nlc3MgdGhlIGV2ZW50LgotICAgIHN0YXR1c196eCA9
IHp4X3Rhc2tfa2lsbChjaGlsZF9wcm9jZXNzXyk7Ci0gICAgR1RFU1RfREVBVEhfVEVTVF9DSEVD
S18oc3RhdHVzX3p4ID09IFpYX09LKTsKKyAgLy8gUmVnaXN0ZXIgdG8gd2FpdCBmb3IgdGhlIHNv
Y2tldCB0byBiZSByZWFkYWJsZSBvciBjbG9zZWQuCisgIHN0YXR1c196eCA9IHN0ZGVycl9zb2Nr
ZXRfLndhaXRfYXN5bmMoCisgICAgICBwb3J0LCBrU29ja2V0S2V5LCBaWF9TT0NLRVRfUkVBREFC
TEUgfCBaWF9TT0NLRVRfUEVFUl9DTE9TRUQsCisgICAgICBaWF9XQUlUX0FTWU5DX09OQ0UpOwor
ICBHVEVTVF9ERUFUSF9URVNUX0NIRUNLXyhzdGF0dXNfenggPT0gWlhfT0spOwogCi0gICAgLy8g
Tm93IHdhaXQgZm9yIHxjaGlsZF9wcm9jZXNzX3wgdG8gdGVybWluYXRlLgotICAgIHp4X3NpZ25h
bHNfdCBzaWduYWxzID0gMDsKLSAgICBzdGF0dXNfenggPSB6eF9vYmplY3Rfd2FpdF9vbmUoCi0g
ICAgICAgIGNoaWxkX3Byb2Nlc3NfLCBaWF9QUk9DRVNTX1RFUk1JTkFURUQsIFpYX1RJTUVfSU5G
SU5JVEUsICZzaWduYWxzKTsKKyAgLy8gUmVnaXN0ZXIgdG8gd2FpdCBmb3IgYW4gZXhjZXB0aW9u
LgorICBzdGF0dXNfenggPSBleGNlcHRpb25fY2hhbm5lbF8ud2FpdF9hc3luYygKKyAgICAgIHBv
cnQsIGtFeGNlcHRpb25LZXksIFpYX0NIQU5ORUxfUkVBREFCTEUsIFpYX1dBSVRfQVNZTkNfT05D
RSk7CisgIEdURVNUX0RFQVRIX1RFU1RfQ0hFQ0tfKHN0YXR1c196eCA9PSBaWF9PSyk7CisKKyAg
Ym9vbCBwcm9jZXNzX3Rlcm1pbmF0ZWQgPSBmYWxzZTsKKyAgYm9vbCBzb2NrZXRfY2xvc2VkID0g
ZmFsc2U7CisgIGRvIHsKKyAgICB6eF9wb3J0X3BhY2tldF90IHBhY2tldCA9IHt9OworICAgIHN0
YXR1c196eCA9IHBvcnQud2FpdCh6eDo6dGltZTo6aW5maW5pdGUoKSwgJnBhY2tldCk7CiAgICAg
R1RFU1RfREVBVEhfVEVTVF9DSEVDS18oc3RhdHVzX3p4ID09IFpYX09LKTsKLSAgICBHVEVTVF9E
RUFUSF9URVNUX0NIRUNLXyhzaWduYWxzICYgWlhfUFJPQ0VTU19URVJNSU5BVEVEKTsKLSAgfSBl
bHNlIHsKLSAgICAvLyBQcm9jZXNzIHRlcm1pbmF0ZWQuCi0gICAgR1RFU1RfREVBVEhfVEVTVF9D
SEVDS18oWlhfUEtUX0lTX1NJR05BTF9PTkUocGFja2V0LnR5cGUpKTsKLSAgICBHVEVTVF9ERUFU
SF9URVNUX0NIRUNLXyhwYWNrZXQuc2lnbmFsLm9ic2VydmVkICYgWlhfUFJPQ0VTU19URVJNSU5B
VEVEKTsKLSAgfQorCisgICAgaWYgKHBhY2tldC5rZXkgPT0ga0V4Y2VwdGlvbktleSkgeworICAg
ICAgLy8gUHJvY2VzcyBlbmNvdW50ZXJlZCBhbiBleGNlcHRpb24uIEtpbGwgaXQgZGlyZWN0bHkg
cmF0aGVyIHRoYW4KKyAgICAgIC8vIGxldHRpbmcgb3RoZXIgaGFuZGxlcnMgcHJvY2VzcyB0aGUg
ZXZlbnQuIFdlIHdpbGwgZ2V0IGEga1Byb2Nlc3NLZXkKKyAgICAgIC8vIGV2ZW50IHdoZW4gdGhl
IHByb2Nlc3MgYWN0dWFsbHkgdGVybWluYXRlcy4KKyAgICAgIHN0YXR1c196eCA9IGNoaWxkX3By
b2Nlc3NfLmtpbGwoKTsKKyAgICAgIEdURVNUX0RFQVRIX1RFU1RfQ0hFQ0tfKHN0YXR1c196eCA9
PSBaWF9PSyk7CisgICAgfSBlbHNlIGlmIChwYWNrZXQua2V5ID09IGtQcm9jZXNzS2V5KSB7Cisg
ICAgICAvLyBQcm9jZXNzIHRlcm1pbmF0ZWQuCisgICAgICBHVEVTVF9ERUFUSF9URVNUX0NIRUNL
XyhaWF9QS1RfSVNfU0lHTkFMX09ORShwYWNrZXQudHlwZSkpOworICAgICAgR1RFU1RfREVBVEhf
VEVTVF9DSEVDS18ocGFja2V0LnNpZ25hbC5vYnNlcnZlZCAmIFpYX1BST0NFU1NfVEVSTUlOQVRF
RCk7CisgICAgICBwcm9jZXNzX3Rlcm1pbmF0ZWQgPSB0cnVlOworICAgIH0gZWxzZSBpZiAocGFj
a2V0LmtleSA9PSBrU29ja2V0S2V5KSB7CisgICAgICBHVEVTVF9ERUFUSF9URVNUX0NIRUNLXyha
WF9QS1RfSVNfU0lHTkFMX09ORShwYWNrZXQudHlwZSkpOworICAgICAgaWYgKHBhY2tldC5zaWdu
YWwub2JzZXJ2ZWQgJiBaWF9TT0NLRVRfUkVBREFCTEUpIHsKKyAgICAgICAgLy8gUmVhZCBkYXRh
IGZyb20gdGhlIHNvY2tldC4KKyAgICAgICAgY29uc3RleHByIHNpemVfdCBrQnVmZmVyU2l6ZSA9
IDEwMjQ7CisgICAgICAgIGRvIHsKKyAgICAgICAgICBzaXplX3Qgb2xkX2xlbmd0aCA9IGNhcHR1
cmVkX3N0ZGVycl8ubGVuZ3RoKCk7CisgICAgICAgICAgc2l6ZV90IGJ5dGVzX3JlYWQgPSAwOwor
ICAgICAgICAgIGNhcHR1cmVkX3N0ZGVycl8ucmVzaXplKG9sZF9sZW5ndGggKyBrQnVmZmVyU2l6
ZSk7CisgICAgICAgICAgc3RhdHVzX3p4ID0gc3RkZXJyX3NvY2tldF8ucmVhZCgKKyAgICAgICAg
ICAgICAgMCwgJmNhcHR1cmVkX3N0ZGVycl8uZnJvbnQoKSArIG9sZF9sZW5ndGgsIGtCdWZmZXJT
aXplLAorICAgICAgICAgICAgICAmYnl0ZXNfcmVhZCk7CisgICAgICAgICAgY2FwdHVyZWRfc3Rk
ZXJyXy5yZXNpemUob2xkX2xlbmd0aCArIGJ5dGVzX3JlYWQpOworICAgICAgICB9IHdoaWxlIChz
dGF0dXNfenggPT0gWlhfT0spOworICAgICAgICBpZiAoc3RhdHVzX3p4ID09IFpYX0VSUl9QRUVS
X0NMT1NFRCkgeworICAgICAgICAgIHNvY2tldF9jbG9zZWQgPSB0cnVlOworICAgICAgICB9IGVs
c2UgeworICAgICAgICAgIEdURVNUX0RFQVRIX1RFU1RfQ0hFQ0tfKHN0YXR1c196eCA9PSBaWF9F
UlJfU0hPVUxEX1dBSVQpOworICAgICAgICAgIHN0YXR1c196eCA9IHN0ZGVycl9zb2NrZXRfLndh
aXRfYXN5bmMoCisgICAgICAgICAgICAgIHBvcnQsIGtTb2NrZXRLZXksIFpYX1NPQ0tFVF9SRUFE
QUJMRSB8IFpYX1NPQ0tFVF9QRUVSX0NMT1NFRCwKKyAgICAgICAgICAgICAgWlhfV0FJVF9BU1lO
Q19PTkNFKTsKKyAgICAgICAgICBHVEVTVF9ERUFUSF9URVNUX0NIRUNLXyhzdGF0dXNfenggPT0g
WlhfT0spOworICAgICAgICB9CisgICAgICB9IGVsc2UgeworICAgICAgICBHVEVTVF9ERUFUSF9U
RVNUX0NIRUNLXyhwYWNrZXQuc2lnbmFsLm9ic2VydmVkICYgWlhfU09DS0VUX1BFRVJfQ0xPU0VE
KTsKKyAgICAgICAgc29ja2V0X2Nsb3NlZCA9IHRydWU7CisgICAgICB9CisgICAgfQorICB9IHdo
aWxlICghcHJvY2Vzc190ZXJtaW5hdGVkICYmICFzb2NrZXRfY2xvc2VkKTsKIAogICBSZWFkQW5k
SW50ZXJwcmV0U3RhdHVzQnl0ZSgpOwogCiAgIHp4X2luZm9fcHJvY2Vzc190IGJ1ZmZlcjsKLSAg
c3RhdHVzX3p4ID0genhfb2JqZWN0X2dldF9pbmZvKAotICAgICAgY2hpbGRfcHJvY2Vzc18sCi0g
ICAgICBaWF9JTkZPX1BST0NFU1MsCi0gICAgICAmYnVmZmVyLAotICAgICAgc2l6ZW9mKGJ1ZmZl
ciksCi0gICAgICBudWxscHRyLAotICAgICAgbnVsbHB0cik7CisgIHN0YXR1c196eCA9IGNoaWxk
X3Byb2Nlc3NfLmdldF9pbmZvKAorICAgICAgWlhfSU5GT19QUk9DRVNTLCAmYnVmZmVyLCBzaXpl
b2YoYnVmZmVyKSwgbnVsbHB0ciwgbnVsbHB0cik7CiAgIEdURVNUX0RFQVRIX1RFU1RfQ0hFQ0tf
KHN0YXR1c196eCA9PSBaWF9PSyk7CiAKICAgR1RFU1RfREVBVEhfVEVTVF9DSEVDS18oYnVmZmVy
LmV4aXRlZCk7CkBAIC05MzYsMjEgKzk3NiwyMCBAQCBEZWF0aFRlc3Q6OlRlc3RSb2xlIEZ1Y2hz
aWFEZWF0aFRlc3Q6OkFzc3VtZVJvbGUoKSB7CiAgIGNvbnN0IFRlc3RJbmZvKiBjb25zdCBpbmZv
ID0gaW1wbC0+Y3VycmVudF90ZXN0X2luZm8oKTsKICAgY29uc3QgaW50IGRlYXRoX3Rlc3RfaW5k
ZXggPSBpbmZvLT5yZXN1bHQoKS0+ZGVhdGhfdGVzdF9jb3VudCgpOwogCi0gIGlmIChmbGFnICE9
IE5VTEwpIHsKKyAgaWYgKGZsYWcgIT0gbnVsbHB0cikgewogICAgIC8vIFBhcnNlSW50ZXJuYWxS
dW5EZWF0aFRlc3RGbGFnKCkgaGFzIHBlcmZvcm1lZCBhbGwgdGhlIG5lY2Vzc2FyeQogICAgIC8v
IHByb2Nlc3NpbmcuCiAgICAgc2V0X3dyaXRlX2ZkKGtGdWNoc2lhUmVhZFBpcGVGZCk7CiAgICAg
cmV0dXJuIEVYRUNVVEVfVEVTVDsKICAgfQogCi0gIENhcHR1cmVTdGRlcnIoKTsKICAgLy8gRmx1
c2ggdGhlIGxvZyBidWZmZXJzIHNpbmNlIHRoZSBsb2cgc3RyZWFtcyBhcmUgc2hhcmVkIHdpdGgg
dGhlIGNoaWxkLgogICBGbHVzaEluZm9Mb2coKTsKIAogICAvLyBCdWlsZCB0aGUgY2hpbGQgcHJv
Y2VzcyBjb21tYW5kIGxpbmUuCi0gIGNvbnN0IHN0ZDo6c3RyaW5nIGZpbHRlcl9mbGFnID0KLSAg
ICAgIHN0ZDo6c3RyaW5nKCItLSIpICsgR1RFU1RfRkxBR19QUkVGSVhfICsga0ZpbHRlckZsYWcg
KyAiPSIKLSAgICAgICsgaW5mby0+dGVzdF9jYXNlX25hbWUoKSArICIuIiArIGluZm8tPm5hbWUo
KTsKKyAgY29uc3Qgc3RkOjpzdHJpbmcgZmlsdGVyX2ZsYWcgPSBzdGQ6OnN0cmluZygiLS0iKSAr
IEdURVNUX0ZMQUdfUFJFRklYXyArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
a0ZpbHRlckZsYWcgKyAiPSIgKyBpbmZvLT50ZXN0X3N1aXRlX25hbWUoKSArCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIi4iICsgaW5mby0+bmFtZSgpOwogICBjb25zdCBzdGQ6
OnN0cmluZyBpbnRlcm5hbF9mbGFnID0KICAgICAgIHN0ZDo6c3RyaW5nKCItLSIpICsgR1RFU1Rf
RkxBR19QUkVGSVhfICsga0ludGVybmFsUnVuRGVhdGhUZXN0RmxhZyArICI9IgogICAgICAgKyBm
aWxlXyArICJ8IgpAQCAtOTY0LDM1ICsxMDAzLDY4IEBAIERlYXRoVGVzdDo6VGVzdFJvbGUgRnVj
aHNpYURlYXRoVGVzdDo6QXNzdW1lUm9sZSgpIHsKICAgLy8gQnVpbGQgdGhlIHBpcGUgZm9yIGNv
bW11bmljYXRpb24gd2l0aCB0aGUgY2hpbGQuCiAgIHp4X3N0YXR1c190IHN0YXR1czsKICAgenhf
aGFuZGxlX3QgY2hpbGRfcGlwZV9oYW5kbGU7Ci0gIHVpbnQzMl90IHR5cGU7Ci0gIHN0YXR1cyA9
IGZkaW9fcGlwZV9oYWxmKCZjaGlsZF9waXBlX2hhbmRsZSwgJnR5cGUpOwotICBHVEVTVF9ERUFU
SF9URVNUX0NIRUNLXyhzdGF0dXMgPj0gMCk7Ci0gIHNldF9yZWFkX2ZkKHN0YXR1cyk7CisgIGlu
dCBjaGlsZF9waXBlX2ZkOworICBzdGF0dXMgPSBmZGlvX3BpcGVfaGFsZigmY2hpbGRfcGlwZV9m
ZCwgJmNoaWxkX3BpcGVfaGFuZGxlKTsKKyAgR1RFU1RfREVBVEhfVEVTVF9DSEVDS18oc3RhdHVz
ID09IFpYX09LKTsKKyAgc2V0X3JlYWRfZmQoY2hpbGRfcGlwZV9mZCk7CiAKICAgLy8gU2V0IHRo
ZSBwaXBlIGhhbmRsZSBmb3IgdGhlIGNoaWxkLgotICBmZGlvX3NwYXduX2FjdGlvbl90IGFkZF9o
YW5kbGVfYWN0aW9uID0ge307Ci0gIGFkZF9oYW5kbGVfYWN0aW9uLmFjdGlvbiA9IEZESU9fU1BB
V05fQUNUSU9OX0FERF9IQU5ETEU7Ci0gIGFkZF9oYW5kbGVfYWN0aW9uLmguaWQgPSBQQV9ITkQo
dHlwZSwga0Z1Y2hzaWFSZWFkUGlwZUZkKTsKLSAgYWRkX2hhbmRsZV9hY3Rpb24uaC5oYW5kbGUg
PSBjaGlsZF9waXBlX2hhbmRsZTsKKyAgZmRpb19zcGF3bl9hY3Rpb25fdCBzcGF3bl9hY3Rpb25z
WzJdID0ge307CisgIGZkaW9fc3Bhd25fYWN0aW9uX3QqIGFkZF9oYW5kbGVfYWN0aW9uID0gJnNw
YXduX2FjdGlvbnNbMF07CisgIGFkZF9oYW5kbGVfYWN0aW9uLT5hY3Rpb24gPSBGRElPX1NQQVdO
X0FDVElPTl9BRERfSEFORExFOworICBhZGRfaGFuZGxlX2FjdGlvbi0+aC5pZCA9IFBBX0hORChQ
QV9GRCwga0Z1Y2hzaWFSZWFkUGlwZUZkKTsKKyAgYWRkX2hhbmRsZV9hY3Rpb24tPmguaGFuZGxl
ID0gY2hpbGRfcGlwZV9oYW5kbGU7CisKKyAgLy8gQ3JlYXRlIGEgc29ja2V0IHBhaXIgd2lsbCBi
ZSB1c2VkIHRvIHJlY2VpdmUgdGhlIGNoaWxkIHByb2Nlc3MnIHN0ZGVyci4KKyAgeng6OnNvY2tl
dCBzdGRlcnJfcHJvZHVjZXJfc29ja2V0OworICBzdGF0dXMgPQorICAgICAgeng6OnNvY2tldDo6
Y3JlYXRlKDAsICZzdGRlcnJfcHJvZHVjZXJfc29ja2V0LCAmc3RkZXJyX3NvY2tldF8pOworICBH
VEVTVF9ERUFUSF9URVNUX0NIRUNLXyhzdGF0dXMgPj0gMCk7CisgIGludCBzdGRlcnJfcHJvZHVj
ZXJfZmQgPSAtMTsKKyAgc3RhdHVzID0KKyAgICAgIGZkaW9fZmRfY3JlYXRlKHN0ZGVycl9wcm9k
dWNlcl9zb2NrZXQucmVsZWFzZSgpLCAmc3RkZXJyX3Byb2R1Y2VyX2ZkKTsKKyAgR1RFU1RfREVB
VEhfVEVTVF9DSEVDS18oc3RhdHVzID49IDApOwogCi0gIC8vIFNwYXduIHRoZSBjaGlsZCBwcm9j
ZXNzLgotICBzdGF0dXMgPSBmZGlvX3NwYXduX2V0YyhaWF9IQU5ETEVfSU5WQUxJRCwgRkRJT19T
UEFXTl9DTE9ORV9BTEwsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3MuQXJndigpWzBd
LCBhcmdzLkFyZ3YoKSwgbnVsbHB0ciwgMSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgJmFk
ZF9oYW5kbGVfYWN0aW9uLCAmY2hpbGRfcHJvY2Vzc18sIG51bGxwdHIpOworICAvLyBNYWtlIHRo
ZSBzdGRlcnIgc29ja2V0IG5vbmJsb2NraW5nLgorICBHVEVTVF9ERUFUSF9URVNUX0NIRUNLXyhm
Y250bChzdGRlcnJfcHJvZHVjZXJfZmQsIEZfU0VURkwsIDApID09IDApOworCisgIGZkaW9fc3Bh
d25fYWN0aW9uX3QqIGFkZF9zdGRlcnJfYWN0aW9uID0gJnNwYXduX2FjdGlvbnNbMV07CisgIGFk
ZF9zdGRlcnJfYWN0aW9uLT5hY3Rpb24gPSBGRElPX1NQQVdOX0FDVElPTl9DTE9ORV9GRDsKKyAg
YWRkX3N0ZGVycl9hY3Rpb24tPmZkLmxvY2FsX2ZkID0gc3RkZXJyX3Byb2R1Y2VyX2ZkOworICBh
ZGRfc3RkZXJyX2FjdGlvbi0+ZmQudGFyZ2V0X2ZkID0gU1RERVJSX0ZJTEVOTzsKKworICAvLyBD
cmVhdGUgYSBjaGlsZCBqb2IuCisgIHp4X2hhbmRsZV90IGNoaWxkX2pvYiA9IFpYX0hBTkRMRV9J
TlZBTElEOworICBzdGF0dXMgPSB6eF9qb2JfY3JlYXRlKHp4X2pvYl9kZWZhdWx0KCksIDAsICYg
Y2hpbGRfam9iKTsKKyAgR1RFU1RfREVBVEhfVEVTVF9DSEVDS18oc3RhdHVzID09IFpYX09LKTsK
KyAgenhfcG9saWN5X2Jhc2ljX3QgcG9saWN5OworICBwb2xpY3kuY29uZGl0aW9uID0gWlhfUE9M
X05FV19BTlk7CisgIHBvbGljeS5wb2xpY3kgPSBaWF9QT0xfQUNUSU9OX0FMTE9XOworICBzdGF0
dXMgPSB6eF9qb2Jfc2V0X3BvbGljeSgKKyAgICAgIGNoaWxkX2pvYiwgWlhfSk9CX1BPTF9SRUxB
VElWRSwgWlhfSk9CX1BPTF9CQVNJQywgJnBvbGljeSwgMSk7CiAgIEdURVNUX0RFQVRIX1RFU1Rf
Q0hFQ0tfKHN0YXR1cyA9PSBaWF9PSyk7CiAKLSAgLy8gQ3JlYXRlIGFuIGV4Y2VwdGlvbiBwb3J0
IGFuZCBhdHRhY2ggaXQgdG8gdGhlIHxjaGlsZF9wcm9jZXNzX3wsIHRvIGFsbG93CisgIC8vIENy
ZWF0ZSBhbiBleGNlcHRpb24gY2hhbm5lbCBhdHRhY2hlZCB0byB0aGUgfGNoaWxkX2pvYnwsIHRv
IGFsbG93CiAgIC8vIHVzIHRvIHN1cHByZXNzIHRoZSBzeXN0ZW0gZGVmYXVsdCBleGNlcHRpb24g
aGFuZGxlciBmcm9tIGZpcmluZy4KLSAgc3RhdHVzID0genhfcG9ydF9jcmVhdGUoMCwgJnBvcnRf
KTsKKyAgc3RhdHVzID0KKyAgICAgIHp4X3Rhc2tfY3JlYXRlX2V4Y2VwdGlvbl9jaGFubmVsKAor
ICAgICAgICAgIGNoaWxkX2pvYiwgMCwgZXhjZXB0aW9uX2NoYW5uZWxfLnJlc2V0X2FuZF9nZXRf
YWRkcmVzcygpKTsKICAgR1RFU1RfREVBVEhfVEVTVF9DSEVDS18oc3RhdHVzID09IFpYX09LKTsK
LSAgc3RhdHVzID0genhfdGFza19iaW5kX2V4Y2VwdGlvbl9wb3J0KAotICAgICAgY2hpbGRfcHJv
Y2Vzc18sIHBvcnRfLCAwIC8qIGtleSAqLywgMCAvKm9wdGlvbnMgKi8pOworCisgIC8vIFNwYXdu
IHRoZSBjaGlsZCBwcm9jZXNzLgorICBzdGF0dXMgPSBmZGlvX3NwYXduX2V0YygKKyAgICAgIGNo
aWxkX2pvYiwgRkRJT19TUEFXTl9DTE9ORV9BTEwsIGFyZ3MuQXJndigpWzBdLCBhcmdzLkFyZ3Yo
KSwgbnVsbHB0ciwKKyAgICAgIDIsIHNwYXduX2FjdGlvbnMsIGNoaWxkX3Byb2Nlc3NfLnJlc2V0
X2FuZF9nZXRfYWRkcmVzcygpLCBudWxscHRyKTsKICAgR1RFU1RfREVBVEhfVEVTVF9DSEVDS18o
c3RhdHVzID09IFpYX09LKTsKIAogICBzZXRfc3Bhd25lZCh0cnVlKTsKICAgcmV0dXJuIE9WRVJT
RUVfVEVTVDsKIH0KIAorc3RkOjpzdHJpbmcgRnVjaHNpYURlYXRoVGVzdDo6R2V0RXJyb3JMb2dz
KCkgeworICByZXR1cm4gY2FwdHVyZWRfc3RkZXJyXzsKK30KKwogI2Vsc2UgIC8vIFdlIGFyZSBu
ZWl0aGVyIG9uIFdpbmRvd3MsIG5vciBvbiBGdWNoc2lhLgogCiAvLyBGb3JraW5nRGVhdGhUZXN0
IHByb3ZpZGVzIGltcGxlbWVudGF0aW9ucyBmb3IgbW9zdCBvZiB0aGUgYWJzdHJhY3QKQEAgLTEw
MDAsMTAgKzEwNzIsMTAgQEAgRGVhdGhUZXN0OjpUZXN0Um9sZSBGdWNoc2lhRGVhdGhUZXN0OjpB
c3N1bWVSb2xlKCkgewogLy8gbGVmdCB1bmRlZmluZWQuCiBjbGFzcyBGb3JraW5nRGVhdGhUZXN0
IDogcHVibGljIERlYXRoVGVzdEltcGwgewogIHB1YmxpYzoKLSAgRm9ya2luZ0RlYXRoVGVzdChj
b25zdCBjaGFyKiBzdGF0ZW1lbnQsIGNvbnN0IFJFKiByZWdleCk7CisgIEZvcmtpbmdEZWF0aFRl
c3QoY29uc3QgY2hhciogc3RhdGVtZW50LCBNYXRjaGVyPGNvbnN0IHN0ZDo6c3RyaW5nJj4gbWF0
Y2hlcik7CiAKICAgLy8gQWxsIG9mIHRoZXNlIHZpcnR1YWwgZnVuY3Rpb25zIGFyZSBpbmhlcml0
ZWQgZnJvbSBEZWF0aFRlc3QuCi0gIHZpcnR1YWwgaW50IFdhaXQoKTsKKyAgaW50IFdhaXQoKSBv
dmVycmlkZTsKIAogIHByb3RlY3RlZDoKICAgdm9pZCBzZXRfY2hpbGRfcGlkKHBpZF90IGNoaWxk
X3BpZCkgeyBjaGlsZF9waWRfID0gY2hpbGRfcGlkOyB9CkBAIC0xMDE0LDkgKzEwODYsOSBAQCBj
bGFzcyBGb3JraW5nRGVhdGhUZXN0IDogcHVibGljIERlYXRoVGVzdEltcGwgewogfTsKIAogLy8g
Q29uc3RydWN0cyBhIEZvcmtpbmdEZWF0aFRlc3QuCi1Gb3JraW5nRGVhdGhUZXN0OjpGb3JraW5n
RGVhdGhUZXN0KGNvbnN0IGNoYXIqIGFfc3RhdGVtZW50LCBjb25zdCBSRSogYV9yZWdleCkKLSAg
ICA6IERlYXRoVGVzdEltcGwoYV9zdGF0ZW1lbnQsIGFfcmVnZXgpLAotICAgICAgY2hpbGRfcGlk
XygtMSkge30KK0ZvcmtpbmdEZWF0aFRlc3Q6OkZvcmtpbmdEZWF0aFRlc3QoY29uc3QgY2hhciog
YV9zdGF0ZW1lbnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1hdGNoZXI8
Y29uc3Qgc3RkOjpzdHJpbmcmPiBtYXRjaGVyKQorICAgIDogRGVhdGhUZXN0SW1wbChhX3N0YXRl
bWVudCwgc3RkOjptb3ZlKG1hdGNoZXIpKSwgY2hpbGRfcGlkXygtMSkge30KIAogLy8gV2FpdHMg
Zm9yIHRoZSBjaGlsZCBpbiBhIGRlYXRoIHRlc3QgdG8gZXhpdCwgcmV0dXJuaW5nIGl0cyBleGl0
CiAvLyBzdGF0dXMsIG9yIDAgaWYgbm8gY2hpbGQgcHJvY2VzcyBleGlzdHMuICBBcyBhIHNpZGUg
ZWZmZWN0LCBzZXRzIHRoZQpAQCAtMTAzNyw5ICsxMTA5LDkgQEAgaW50IEZvcmtpbmdEZWF0aFRl
c3Q6OldhaXQoKSB7CiAvLyBpbiB0aGUgY2hpbGQgcHJvY2Vzcy4KIGNsYXNzIE5vRXhlY0RlYXRo
VGVzdCA6IHB1YmxpYyBGb3JraW5nRGVhdGhUZXN0IHsKICBwdWJsaWM6Ci0gIE5vRXhlY0RlYXRo
VGVzdChjb25zdCBjaGFyKiBhX3N0YXRlbWVudCwgY29uc3QgUkUqIGFfcmVnZXgpIDoKLSAgICAg
IEZvcmtpbmdEZWF0aFRlc3QoYV9zdGF0ZW1lbnQsIGFfcmVnZXgpIHsgfQotICB2aXJ0dWFsIFRl
c3RSb2xlIEFzc3VtZVJvbGUoKTsKKyAgTm9FeGVjRGVhdGhUZXN0KGNvbnN0IGNoYXIqIGFfc3Rh
dGVtZW50LCBNYXRjaGVyPGNvbnN0IHN0ZDo6c3RyaW5nJj4gbWF0Y2hlcikKKyAgICAgIDogRm9y
a2luZ0RlYXRoVGVzdChhX3N0YXRlbWVudCwgc3RkOjptb3ZlKG1hdGNoZXIpKSB7fQorICBUZXN0
Um9sZSBBc3N1bWVSb2xlKCkgb3ZlcnJpZGU7CiB9OwogCiAvLyBUaGUgQXNzdW1lUm9sZSBwcm9j
ZXNzIGZvciBhIGZvcmstYW5kLXJ1biBkZWF0aCB0ZXN0LiAgSXQgaW1wbGVtZW50cyBhCkBAIC0x
MDkyLDEwICsxMTY0LDEzIEBAIERlYXRoVGVzdDo6VGVzdFJvbGUgTm9FeGVjRGVhdGhUZXN0OjpB
c3N1bWVSb2xlKCkgewogLy8gb25seSB0aGlzIHNwZWNpZmljIGRlYXRoIHRlc3QgdG8gYmUgcnVu
LgogY2xhc3MgRXhlY0RlYXRoVGVzdCA6IHB1YmxpYyBGb3JraW5nRGVhdGhUZXN0IHsKICBwdWJs
aWM6Ci0gIEV4ZWNEZWF0aFRlc3QoY29uc3QgY2hhciogYV9zdGF0ZW1lbnQsIGNvbnN0IFJFKiBh
X3JlZ2V4LAotICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGZpbGUsIGludCBsaW5lKSA6Ci0g
ICAgICBGb3JraW5nRGVhdGhUZXN0KGFfc3RhdGVtZW50LCBhX3JlZ2V4KSwgZmlsZV8oZmlsZSks
IGxpbmVfKGxpbmUpIHsgfQotICB2aXJ0dWFsIFRlc3RSb2xlIEFzc3VtZVJvbGUoKTsKKyAgRXhl
Y0RlYXRoVGVzdChjb25zdCBjaGFyKiBhX3N0YXRlbWVudCwgTWF0Y2hlcjxjb25zdCBzdGQ6OnN0
cmluZyY+IG1hdGNoZXIsCisgICAgICAgICAgICAgICAgY29uc3QgY2hhciogZmlsZSwgaW50IGxp
bmUpCisgICAgICA6IEZvcmtpbmdEZWF0aFRlc3QoYV9zdGF0ZW1lbnQsIHN0ZDo6bW92ZShtYXRj
aGVyKSksCisgICAgICAgIGZpbGVfKGZpbGUpLAorICAgICAgICBsaW5lXyhsaW5lKSB7fQorICBU
ZXN0Um9sZSBBc3N1bWVSb2xlKCkgb3ZlcnJpZGU7CisKICBwcml2YXRlOgogICBzdGF0aWMgOjpz
dGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gR2V0QXJndnNGb3JEZWF0aFRlc3RDaGlsZFByb2Nlc3Mo
KSB7CiAgICAgOjpzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gYXJncyA9IEdldEluamVjdGFibGVB
cmd2cygpOwpAQCAtMTExNSw5ICsxMTkwLDcgQEAgY2xhc3MgRXhlY0RlYXRoVGVzdCA6IHB1Ymxp
YyBGb3JraW5nRGVhdGhUZXN0IHsKIC8vIFV0aWxpdHkgY2xhc3MgZm9yIGFjY3VtdWxhdGluZyBj
b21tYW5kLWxpbmUgYXJndW1lbnRzLgogY2xhc3MgQXJndW1lbnRzIHsKICBwdWJsaWM6Ci0gIEFy
Z3VtZW50cygpIHsKLSAgICBhcmdzXy5wdXNoX2JhY2soTlVMTCk7Ci0gIH0KKyAgQXJndW1lbnRz
KCkgeyBhcmdzXy5wdXNoX2JhY2sobnVsbHB0cik7IH0KIAogICB+QXJndW1lbnRzKCkgewogICAg
IGZvciAoc3RkOjp2ZWN0b3I8Y2hhcio+OjppdGVyYXRvciBpID0gYXJnc18uYmVnaW4oKTsgaSAh
PSBhcmdzXy5lbmQoKTsKQEAgLTEyMTEsNiArMTI4NCw5IEBAIHN0YXRpYyBpbnQgRXhlY0RlYXRo
VGVzdENoaWxkTWFpbih2b2lkKiBjaGlsZF9hcmcpIHsKIC8vIGNvcnJlY3QgYW5zd2VyLgogc3Rh
dGljIHZvaWQgU3RhY2tMb3dlclRoYW5BZGRyZXNzKGNvbnN0IHZvaWQqIHB0ciwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBib29sKiByZXN1bHQpIEdURVNUX05PX0lOTElORV87
CisvLyBIV0FkZHJlc3NTYW5pdGl6ZXIgYWRkIGEgcmFuZG9tIHRhZyB0byB0aGUgTVNCIG9mIHRo
ZSBsb2NhbCB2YXJpYWJsZSBhZGRyZXNzLAorLy8gbWFraW5nIGNvbXBhcmlzb24gcmVzdWx0IHVu
cHJlZGljdGFibGUuCitHVEVTVF9BVFRSSUJVVEVfTk9fU0FOSVRJWkVfSFdBRERSRVNTXwogc3Rh
dGljIHZvaWQgU3RhY2tMb3dlclRoYW5BZGRyZXNzKGNvbnN0IHZvaWQqIHB0ciwgYm9vbCogcmVz
dWx0KSB7CiAgIGludCBkdW1teTsKICAgKnJlc3VsdCA9ICgmZHVtbXkgPCBwdHIpOwpAQCAtMTIx
OCw2ICsxMjk0LDcgQEAgc3RhdGljIHZvaWQgU3RhY2tMb3dlclRoYW5BZGRyZXNzKGNvbnN0IHZv
aWQqIHB0ciwgYm9vbCogcmVzdWx0KSB7CiAKIC8vIE1ha2Ugc3VyZSBBZGRyZXNzU2FuaXRpemVy
IGRvZXMgbm90IHRhbXBlciB3aXRoIHRoZSBzdGFjayBoZXJlLgogR1RFU1RfQVRUUklCVVRFX05P
X1NBTklUSVpFX0FERFJFU1NfCitHVEVTVF9BVFRSSUJVVEVfTk9fU0FOSVRJWkVfSFdBRERSRVNT
Xwogc3RhdGljIGJvb2wgU3RhY2tHcm93c0Rvd24oKSB7CiAgIGludCBkdW1teTsKICAgYm9vbCBy
ZXN1bHQ7CkBAIC0xMjYyLDcgKzEzMzksOCBAQCBzdGF0aWMgcGlkX3QgRXhlY0RlYXRoVGVzdFNw
YXduQ2hpbGQoY2hhciogY29uc3QqIGFyZ3YsIGludCBjbG9zZV9mZCkgewogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkX2ZsYWdzIHwgRkRfQ0xPRVhFQykpOwogICBz
dHJ1Y3QgaW5oZXJpdGFuY2UgaW5oZXJpdCA9IHswfTsKICAgLy8gc3Bhd24gaXMgYSBzeXN0ZW0g
Y2FsbC4KLSAgY2hpbGRfcGlkID0gc3Bhd24oYXJncy5hcmd2WzBdLCAwLCBOVUxMLCAmaW5oZXJp
dCwgYXJncy5hcmd2LCBHZXRFbnZpcm9uKCkpOworICBjaGlsZF9waWQgPQorICAgICAgc3Bhd24o
YXJncy5hcmd2WzBdLCAwLCBudWxscHRyLCAmaW5oZXJpdCwgYXJncy5hcmd2LCBHZXRFbnZpcm9u
KCkpOwogICAvLyBSZXN0b3JlcyB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4KICAgR1RF
U1RfREVBVEhfVEVTVF9DSEVDS18oZmNoZGlyKGN3ZF9mZCkgIT0gLTEpOwogICBHVEVTVF9ERUFU
SF9URVNUX0NIRUNLX1NZU0NBTExfKGNsb3NlKGN3ZF9mZCkpOwpAQCAtMTI4Niw5ICsxMzY0LDkg
QEAgc3RhdGljIHBpZF90IEV4ZWNEZWF0aFRlc3RTcGF3bkNoaWxkKGNoYXIqIGNvbnN0KiBhcmd2
LCBpbnQgY2xvc2VfZmQpIHsKIAogICBpZiAoIXVzZV9mb3JrKSB7CiAgICAgc3RhdGljIGNvbnN0
IGJvb2wgc3RhY2tfZ3Jvd3NfZG93biA9IFN0YWNrR3Jvd3NEb3duKCk7Ci0gICAgY29uc3Qgc2l6
ZV90IHN0YWNrX3NpemUgPSBnZXRwYWdlc2l6ZSgpOworICAgIGNvbnN0IGF1dG8gc3RhY2tfc2l6
ZSA9IHN0YXRpY19jYXN0PHNpemVfdD4oZ2V0cGFnZXNpemUoKSAqIDIpOwogICAgIC8vIE1NQVBf
QU5PTllNT1VTIGlzIG5vdCBkZWZpbmVkIG9uIE1hYywgc28gd2UgdXNlIE1BUF9BTk9OIGluc3Rl
YWQuCi0gICAgdm9pZCogY29uc3Qgc3RhY2sgPSBtbWFwKE5VTEwsIHN0YWNrX3NpemUsIFBST1Rf
UkVBRCB8IFBST1RfV1JJVEUsCisgICAgdm9pZCogY29uc3Qgc3RhY2sgPSBtbWFwKG51bGxwdHIs
IHN0YWNrX3NpemUsIFBST1RfUkVBRCB8IFBST1RfV1JJVEUsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIE1BUF9BTk9OIHwgTUFQX1BSSVZBVEUsIC0xLCAwKTsKICAgICBHVEVTVF9ERUFU
SF9URVNUX0NIRUNLXyhzdGFjayAhPSBNQVBfRkFJTEVEKTsKIApAQCAtMTMwMiw4ICsxMzgwLDkg
QEAgc3RhdGljIHBpZF90IEV4ZWNEZWF0aFRlc3RTcGF3bkNoaWxkKGNoYXIqIGNvbnN0KiBhcmd2
LCBpbnQgY2xvc2VfZmQpIHsKICAgICB2b2lkKiBjb25zdCBzdGFja190b3AgPQogICAgICAgICBz
dGF0aWNfY2FzdDxjaGFyKj4oc3RhY2spICsKICAgICAgICAgICAgIChzdGFja19ncm93c19kb3du
ID8gc3RhY2tfc2l6ZSAtIGtNYXhTdGFja0FsaWdubWVudCA6IDApOwotICAgIEdURVNUX0RFQVRI
X1RFU1RfQ0hFQ0tfKHN0YWNrX3NpemUgPiBrTWF4U3RhY2tBbGlnbm1lbnQgJiYKLSAgICAgICAg
cmVpbnRlcnByZXRfY2FzdDxpbnRwdHJfdD4oc3RhY2tfdG9wKSAlIGtNYXhTdGFja0FsaWdubWVu
dCA9PSAwKTsKKyAgICBHVEVTVF9ERUFUSF9URVNUX0NIRUNLXygKKyAgICAgICAgc3RhdGljX2Nh
c3Q8c2l6ZV90PihzdGFja19zaXplKSA+IGtNYXhTdGFja0FsaWdubWVudCAmJgorICAgICAgICBy
ZWludGVycHJldF9jYXN0PHVpbnRwdHJfdD4oc3RhY2tfdG9wKSAlIGtNYXhTdGFja0FsaWdubWVu
dCA9PSAwKTsKIAogICAgIGNoaWxkX3BpZCA9IGNsb25lKCZFeGVjRGVhdGhUZXN0Q2hpbGRNYWlu
LCBzdGFja190b3AsIFNJR0NITEQsICZhcmdzKTsKIApAQCAtMTMyMCw3ICsxMzk5LDcgQEAgc3Rh
dGljIHBpZF90IEV4ZWNEZWF0aFRlc3RTcGF3bkNoaWxkKGNoYXIqIGNvbnN0KiBhcmd2LCBpbnQg
Y2xvc2VfZmQpIHsKICMgIGVuZGlmICAvLyBHVEVTVF9PU19RTlgKICMgIGlmIEdURVNUX09TX0xJ
TlVYCiAgIEdURVNUX0RFQVRIX1RFU1RfQ0hFQ0tfU1lTQ0FMTF8oCi0gICAgICBzaWdhY3Rpb24o
U0lHUFJPRiwgJnNhdmVkX3NpZ3Byb2ZfYWN0aW9uLCBOVUxMKSk7CisgICAgICBzaWdhY3Rpb24o
U0lHUFJPRiwgJnNhdmVkX3NpZ3Byb2ZfYWN0aW9uLCBudWxscHRyKSk7CiAjICBlbmRpZiAgLy8g
R1RFU1RfT1NfTElOVVgKIAogICBHVEVTVF9ERUFUSF9URVNUX0NIRUNLXyhjaGlsZF9waWQgIT0g
LTEpOwpAQCAtMTMzOCw3ICsxNDE3LDcgQEAgRGVhdGhUZXN0OjpUZXN0Um9sZSBFeGVjRGVhdGhU
ZXN0OjpBc3N1bWVSb2xlKCkgewogICBjb25zdCBUZXN0SW5mbyogY29uc3QgaW5mbyA9IGltcGwt
PmN1cnJlbnRfdGVzdF9pbmZvKCk7CiAgIGNvbnN0IGludCBkZWF0aF90ZXN0X2luZGV4ID0gaW5m
by0+cmVzdWx0KCktPmRlYXRoX3Rlc3RfY291bnQoKTsKIAotICBpZiAoZmxhZyAhPSBOVUxMKSB7
CisgIGlmIChmbGFnICE9IG51bGxwdHIpIHsKICAgICBzZXRfd3JpdGVfZmQoZmxhZy0+d3JpdGVf
ZmQoKSk7CiAgICAgcmV0dXJuIEVYRUNVVEVfVEVTVDsKICAgfQpAQCAtMTM0OSw5ICsxNDI4LDkg
QEAgRGVhdGhUZXN0OjpUZXN0Um9sZSBFeGVjRGVhdGhUZXN0OjpBc3N1bWVSb2xlKCkgewogICAv
LyBpdCBiZSBjbG9zZWQgd2hlbiB0aGUgY2hpbGQgcHJvY2VzcyBkb2VzIGFuIGV4ZWM6CiAgIEdU
RVNUX0RFQVRIX1RFU1RfQ0hFQ0tfKGZjbnRsKHBpcGVfZmRbMV0sIEZfU0VURkQsIDApICE9IC0x
KTsKIAotICBjb25zdCBzdGQ6OnN0cmluZyBmaWx0ZXJfZmxhZyA9Ci0gICAgICBzdGQ6OnN0cmlu
ZygiLS0iKSArIEdURVNUX0ZMQUdfUFJFRklYXyArIGtGaWx0ZXJGbGFnICsgIj0iCi0gICAgICAr
IGluZm8tPnRlc3RfY2FzZV9uYW1lKCkgKyAiLiIgKyBpbmZvLT5uYW1lKCk7CisgIGNvbnN0IHN0
ZDo6c3RyaW5nIGZpbHRlcl9mbGFnID0gc3RkOjpzdHJpbmcoIi0tIikgKyBHVEVTVF9GTEFHX1BS
RUZJWF8gKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtGaWx0ZXJGbGFnICsg
Ij0iICsgaW5mby0+dGVzdF9zdWl0ZV9uYW1lKCkgKworICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICIuIiArIGluZm8tPm5hbWUoKTsKICAgY29uc3Qgc3RkOjpzdHJpbmcgaW50ZXJu
YWxfZmxhZyA9CiAgICAgICBzdGQ6OnN0cmluZygiLS0iKSArIEdURVNUX0ZMQUdfUFJFRklYXyAr
IGtJbnRlcm5hbFJ1bkRlYXRoVGVzdEZsYWcgKyAiPSIKICAgICAgICsgZmlsZV8gKyAifCIgKyBT
dHJlYW1hYmxlVG9TdHJpbmcobGluZV8pICsgInwiCkBAIC0xMzg0LDcgKzE0NjMsOCBAQCBEZWF0
aFRlc3Q6OlRlc3RSb2xlIEV4ZWNEZWF0aFRlc3Q6OkFzc3VtZVJvbGUoKSB7CiAvLyBieSB0aGUg
InRlc3QiIGFyZ3VtZW50IHRvIGl0cyBhZGRyZXNzLiAgSWYgdGhlIHRlc3Qgc2hvdWxkIGJlCiAv
LyBza2lwcGVkLCBzZXRzIHRoYXQgcG9pbnRlciB0byBOVUxMLiAgUmV0dXJucyB0cnVlLCB1bmxl
c3MgdGhlCiAvLyBmbGFnIGlzIHNldCB0byBhbiBpbnZhbGlkIHZhbHVlLgotYm9vbCBEZWZhdWx0
RGVhdGhUZXN0RmFjdG9yeTo6Q3JlYXRlKGNvbnN0IGNoYXIqIHN0YXRlbWVudCwgY29uc3QgUkUq
IHJlZ2V4LAorYm9vbCBEZWZhdWx0RGVhdGhUZXN0RmFjdG9yeTo6Q3JlYXRlKGNvbnN0IGNoYXIq
IHN0YXRlbWVudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNYXRjaGVy
PGNvbnN0IHN0ZDo6c3RyaW5nJj4gbWF0Y2hlciwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBjaGFyKiBmaWxlLCBpbnQgbGluZSwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBEZWF0aFRlc3QqKiB0ZXN0KSB7CiAgIFVuaXRUZXN0SW1wbCog
Y29uc3QgaW1wbCA9IEdldFVuaXRUZXN0SW1wbCgpOwpAQCAtMTM5Myw3ICsxNDczLDcgQEAgYm9v
bCBEZWZhdWx0RGVhdGhUZXN0RmFjdG9yeTo6Q3JlYXRlKGNvbnN0IGNoYXIqIHN0YXRlbWVudCwg
Y29uc3QgUkUqIHJlZ2V4LAogICBjb25zdCBpbnQgZGVhdGhfdGVzdF9pbmRleCA9IGltcGwtPmN1
cnJlbnRfdGVzdF9pbmZvKCkKICAgICAgIC0+aW5jcmVtZW50X2RlYXRoX3Rlc3RfY291bnQoKTsK
IAotICBpZiAoZmxhZyAhPSBOVUxMKSB7CisgIGlmIChmbGFnICE9IG51bGxwdHIpIHsKICAgICBp
ZiAoZGVhdGhfdGVzdF9pbmRleCA+IGZsYWctPmluZGV4KCkpIHsKICAgICAgIERlYXRoVGVzdDo6
c2V0X2xhc3RfZGVhdGhfdGVzdF9tZXNzYWdlKAogICAgICAgICAgICJEZWF0aCB0ZXN0IGNvdW50
ICgiICsgU3RyZWFtYWJsZVRvU3RyaW5nKGRlYXRoX3Rlc3RfaW5kZXgpCkBAIC0xNDA0LDcgKzE0
ODQsNyBAQCBib29sIERlZmF1bHREZWF0aFRlc3RGYWN0b3J5OjpDcmVhdGUoY29uc3QgY2hhciog
c3RhdGVtZW50LCBjb25zdCBSRSogcmVnZXgsCiAKICAgICBpZiAoIShmbGFnLT5maWxlKCkgPT0g
ZmlsZSAmJiBmbGFnLT5saW5lKCkgPT0gbGluZSAmJgogICAgICAgICAgIGZsYWctPmluZGV4KCkg
PT0gZGVhdGhfdGVzdF9pbmRleCkpIHsKLSAgICAgICp0ZXN0ID0gTlVMTDsKKyAgICAgICp0ZXN0
ID0gbnVsbHB0cjsKICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KICAgfQpAQCAtMTQxMywyMiAr
MTQ5MywyMiBAQCBib29sIERlZmF1bHREZWF0aFRlc3RGYWN0b3J5OjpDcmVhdGUoY29uc3QgY2hh
ciogc3RhdGVtZW50LCBjb25zdCBSRSogcmVnZXgsCiAKICAgaWYgKEdURVNUX0ZMQUcoZGVhdGhf
dGVzdF9zdHlsZSkgPT0gInRocmVhZHNhZmUiIHx8CiAgICAgICBHVEVTVF9GTEFHKGRlYXRoX3Rl
c3Rfc3R5bGUpID09ICJmYXN0IikgewotICAgICp0ZXN0ID0gbmV3IFdpbmRvd3NEZWF0aFRlc3Qo
c3RhdGVtZW50LCByZWdleCwgZmlsZSwgbGluZSk7CisgICAgKnRlc3QgPSBuZXcgV2luZG93c0Rl
YXRoVGVzdChzdGF0ZW1lbnQsIHN0ZDo6bW92ZShtYXRjaGVyKSwgZmlsZSwgbGluZSk7CiAgIH0K
IAogIyBlbGlmIEdURVNUX09TX0ZVQ0hTSUEKIAogICBpZiAoR1RFU1RfRkxBRyhkZWF0aF90ZXN0
X3N0eWxlKSA9PSAidGhyZWFkc2FmZSIgfHwKICAgICAgIEdURVNUX0ZMQUcoZGVhdGhfdGVzdF9z
dHlsZSkgPT0gImZhc3QiKSB7Ci0gICAgKnRlc3QgPSBuZXcgRnVjaHNpYURlYXRoVGVzdChzdGF0
ZW1lbnQsIHJlZ2V4LCBmaWxlLCBsaW5lKTsKKyAgICAqdGVzdCA9IG5ldyBGdWNoc2lhRGVhdGhU
ZXN0KHN0YXRlbWVudCwgc3RkOjptb3ZlKG1hdGNoZXIpLCBmaWxlLCBsaW5lKTsKICAgfQogCiAj
IGVsc2UKIAogICBpZiAoR1RFU1RfRkxBRyhkZWF0aF90ZXN0X3N0eWxlKSA9PSAidGhyZWFkc2Fm
ZSIpIHsKLSAgICAqdGVzdCA9IG5ldyBFeGVjRGVhdGhUZXN0KHN0YXRlbWVudCwgcmVnZXgsIGZp
bGUsIGxpbmUpOworICAgICp0ZXN0ID0gbmV3IEV4ZWNEZWF0aFRlc3Qoc3RhdGVtZW50LCBzdGQ6
Om1vdmUobWF0Y2hlciksIGZpbGUsIGxpbmUpOwogICB9IGVsc2UgaWYgKEdURVNUX0ZMQUcoZGVh
dGhfdGVzdF9zdHlsZSkgPT0gImZhc3QiKSB7Ci0gICAgKnRlc3QgPSBuZXcgTm9FeGVjRGVhdGhU
ZXN0KHN0YXRlbWVudCwgcmVnZXgpOworICAgICp0ZXN0ID0gbmV3IE5vRXhlY0RlYXRoVGVzdChz
dGF0ZW1lbnQsIHN0ZDo6bW92ZShtYXRjaGVyKSk7CiAgIH0KIAogIyBlbmRpZiAgLy8gR1RFU1Rf
T1NfV0lORE9XUwpAQCAtMTQ1OCw4ICsxNTM4LDYgQEAgc3RhdGljIGludCBHZXRTdGF0dXNGaWxl
RGVzY3JpcHRvcih1bnNpZ25lZCBpbnQgcGFyZW50X3Byb2Nlc3NfaWQsCiAgICAgICAgICAgICAg
ICAgICAgU3RyZWFtYWJsZVRvU3RyaW5nKHBhcmVudF9wcm9jZXNzX2lkKSk7CiAgIH0KIAotICAv
LyBGSVhNRTogUmVwbGFjZSB0aGUgZm9sbG93aW5nIGNoZWNrIHdpdGggYQotICAvLyBjb21waWxl
LXRpbWUgYXNzZXJ0aW9uIHdoZW4gYXZhaWxhYmxlLgogICBHVEVTVF9DSEVDS18oc2l6ZW9mKEhB
TkRMRSkgPD0gc2l6ZW9mKHNpemVfdCkpOwogCiAgIGNvbnN0IEhBTkRMRSB3cml0ZV9oYW5kbGUg
PQpAQCAtMTUxNSw3ICsxNTkzLDcgQEAgc3RhdGljIGludCBHZXRTdGF0dXNGaWxlRGVzY3JpcHRv
cih1bnNpZ25lZCBpbnQgcGFyZW50X3Byb2Nlc3NfaWQsCiAvLyBpbml0aWFsaXplZCBmcm9tIHRo
ZSBHVEVTVF9GTEFHKGludGVybmFsX3J1bl9kZWF0aF90ZXN0KSBmbGFnIGlmCiAvLyB0aGUgZmxh
ZyBpcyBzcGVjaWZpZWQ7IG90aGVyd2lzZSByZXR1cm5zIE5VTEwuCiBJbnRlcm5hbFJ1bkRlYXRo
VGVzdEZsYWcqIFBhcnNlSW50ZXJuYWxSdW5EZWF0aFRlc3RGbGFnKCkgewotICBpZiAoR1RFU1Rf
RkxBRyhpbnRlcm5hbF9ydW5fZGVhdGhfdGVzdCkgPT0gIiIpIHJldHVybiBOVUxMOworICBpZiAo
R1RFU1RfRkxBRyhpbnRlcm5hbF9ydW5fZGVhdGhfdGVzdCkgPT0gIiIpIHJldHVybiBudWxscHRy
OwogCiAgIC8vIEdURVNUX0hBU19ERUFUSF9URVNUIGltcGxpZXMgdGhhdCB3ZSBoYXZlIDo6c3Rk
OjpzdHJpbmcsIHNvIHdlCiAgIC8vIGNhbiB1c2UgaXQgaGVyZS4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0LWZpbGVwYXRoLmNjIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3QtZmlsZXBhdGgu
Y2MKaW5kZXggYTdlNjVjMDgyYTc1ZmM2ZmIwMzhhMDIzZDViMWQzZTA5ZTQ3OWYxMS4uOWFhZDEy
ZmJkMTExNzdlOGJhM2Q1N2ZmMjhkMTVhYjkxNjIyYzE0MSAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3QtZmlsZXBhdGguY2MKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3QtZmlsZXBhdGgu
Y2MKQEAgLTM4LDkgKzM4LDYgQEAKICNlbGlmIEdURVNUX09TX1dJTkRPV1MKICMgaW5jbHVkZSA8
ZGlyZWN0Lmg+CiAjIGluY2x1ZGUgPGlvLmg+Ci0jZWxpZiBHVEVTVF9PU19TWU1CSUFOCi0vLyBT
eW1iaWFuIE9wZW5DIGhhcyBQQVRIX01BWCBpbiBzeXMvc3lzbGltaXRzLmgKLSMgaW5jbHVkZSA8
c3lzL3N5c2xpbWl0cy5oPgogI2Vsc2UKICMgaW5jbHVkZSA8bGltaXRzLmg+CiAjIGluY2x1ZGUg
PGNsaW1pdHM+ICAvLyBTb21lIExpbnV4IGRpc3RyaWJ1dGlvbnMgZGVmaW5lIFBBVEhfTUFYIGhl
cmUuCkBAIC05NSwxMyArOTIsMTQgQEAgc3RhdGljIGJvb2wgSXNQYXRoU2VwYXJhdG9yKGNoYXIg
YykgewogCiAvLyBSZXR1cm5zIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LCBvciAiIiBp
ZiB1bnN1Y2Nlc3NmdWwuCiBGaWxlUGF0aCBGaWxlUGF0aDo6R2V0Q3VycmVudERpcigpIHsKLSNp
ZiBHVEVTVF9PU19XSU5ET1dTX01PQklMRSB8fCBHVEVTVF9PU19XSU5ET1dTX1BIT05FIHx8IEdU
RVNUX09TX1dJTkRPV1NfUlQKLSAgLy8gV2luZG93cyBDRSBkb2Vzbid0IGhhdmUgYSBjdXJyZW50
IGRpcmVjdG9yeSwgc28gd2UganVzdCByZXR1cm4KKyNpZiBHVEVTVF9PU19XSU5ET1dTX01PQklM
RSB8fCBHVEVTVF9PU19XSU5ET1dTX1BIT05FIHx8IFwKKyAgICBHVEVTVF9PU19XSU5ET1dTX1JU
IHx8IEdURVNUX09TX0VTUDgyNjYgfHwgR1RFU1RfT1NfRVNQMzIKKyAgLy8gVGhlc2UgcGxhdGZv
cm1zIGRvIG5vdCBoYXZlIGEgY3VycmVudCBkaXJlY3RvcnksIHNvIHdlIGp1c3QgcmV0dXJuCiAg
IC8vIHNvbWV0aGluZyByZWFzb25hYmxlLgogICByZXR1cm4gRmlsZVBhdGgoa0N1cnJlbnREaXJl
Y3RvcnlTdHJpbmcpOwogI2VsaWYgR1RFU1RfT1NfV0lORE9XUwogICBjaGFyIGN3ZFtHVEVTVF9Q
QVRIX01BWF8gKyAxXSA9IHsgJ1wwJyB9OwotICByZXR1cm4gRmlsZVBhdGgoX2dldGN3ZChjd2Qs
IHNpemVvZihjd2QpKSA9PSBOVUxMID8gIiIgOiBjd2QpOworICByZXR1cm4gRmlsZVBhdGgoX2dl
dGN3ZChjd2QsIHNpemVvZihjd2QpKSA9PSBudWxscHRyID8gIiIgOiBjd2QpOwogI2Vsc2UKICAg
Y2hhciBjd2RbR1RFU1RfUEFUSF9NQVhfICsgMV0gPSB7ICdcMCcgfTsKICAgY2hhciogcmVzdWx0
ID0gZ2V0Y3dkKGN3ZCwgc2l6ZW9mKGN3ZCkpOwpAQCAtMTA5LDkgKzEwNyw5IEBAIEZpbGVQYXRo
IEZpbGVQYXRoOjpHZXRDdXJyZW50RGlyKCkgewogICAvLyBnZXRjd2Qgd2lsbCBsaWtlbHkgZmFp
bCBpbiBOYUNsIGR1ZSB0byB0aGUgc2FuZGJveCwgc28gcmV0dXJuIHNvbWV0aGluZwogICAvLyBy
ZWFzb25hYmxlLiBUaGUgdXNlciBtYXkgaGF2ZSBwcm92aWRlZCBhIHNoaW0gaW1wbGVtZW50YXRp
b24gZm9yIGdldGN3ZCwKICAgLy8gaG93ZXZlciwgc28gZmFsbGJhY2sgb25seSB3aGVuIGZhaWx1
cmUgaXMgZGV0ZWN0ZWQuCi0gIHJldHVybiBGaWxlUGF0aChyZXN1bHQgPT0gTlVMTCA/IGtDdXJy
ZW50RGlyZWN0b3J5U3RyaW5nIDogY3dkKTsKKyAgcmV0dXJuIEZpbGVQYXRoKHJlc3VsdCA9PSBu
dWxscHRyID8ga0N1cnJlbnREaXJlY3RvcnlTdHJpbmcgOiBjd2QpOwogIyBlbmRpZiAgLy8gR1RF
U1RfT1NfTkFDTAotICByZXR1cm4gRmlsZVBhdGgocmVzdWx0ID09IE5VTEwgPyAiIiA6IGN3ZCk7
CisgIHJldHVybiBGaWxlUGF0aChyZXN1bHQgPT0gbnVsbHB0ciA/ICIiIDogY3dkKTsKICNlbmRp
ZiAgLy8gR1RFU1RfT1NfV0lORE9XU19NT0JJTEUKIH0KIApAQCAtMTM2LDggKzEzNCw4IEBAIGNv
bnN0IGNoYXIqIEZpbGVQYXRoOjpGaW5kTGFzdFBhdGhTZXBhcmF0b3IoKSBjb25zdCB7CiAjaWYg
R1RFU1RfSEFTX0FMVF9QQVRIX1NFUF8KICAgY29uc3QgY2hhciogY29uc3QgbGFzdF9hbHRfc2Vw
ID0gc3RycmNocihjX3N0cigpLCBrQWx0ZXJuYXRlUGF0aFNlcGFyYXRvcik7CiAgIC8vIENvbXBh
cmluZyB0d28gcG9pbnRlcnMgb2Ygd2hpY2ggb25seSBvbmUgaXMgTlVMTCBpcyB1bmRlZmluZWQu
Ci0gIGlmIChsYXN0X2FsdF9zZXAgIT0gTlVMTCAmJgotICAgICAgKGxhc3Rfc2VwID09IE5VTEwg
fHwgbGFzdF9hbHRfc2VwID4gbGFzdF9zZXApKSB7CisgIGlmIChsYXN0X2FsdF9zZXAgIT0gbnVs
bHB0ciAmJgorICAgICAgKGxhc3Rfc2VwID09IG51bGxwdHIgfHwgbGFzdF9hbHRfc2VwID4gbGFz
dF9zZXApKSB7CiAgICAgcmV0dXJuIGxhc3RfYWx0X3NlcDsKICAgfQogI2VuZGlmCkBAIC0xNjUs
NyArMTYzLDcgQEAgRmlsZVBhdGggRmlsZVBhdGg6OlJlbW92ZUZpbGVOYW1lKCkgY29uc3Qgewog
ICBjb25zdCBjaGFyKiBjb25zdCBsYXN0X3NlcCA9IEZpbmRMYXN0UGF0aFNlcGFyYXRvcigpOwog
ICBzdGQ6OnN0cmluZyBkaXI7CiAgIGlmIChsYXN0X3NlcCkgewotICAgIGRpciA9IHN0ZDo6c3Ry
aW5nKGNfc3RyKCksIGxhc3Rfc2VwICsgMSAtIGNfc3RyKCkpOworICAgIGRpciA9IHN0ZDo6c3Ry
aW5nKGNfc3RyKCksIHN0YXRpY19jYXN0PHNpemVfdD4obGFzdF9zZXAgKyAxIC0gY19zdHIoKSkp
OwogICB9IGVsc2UgewogICAgIGRpciA9IGtDdXJyZW50RGlyZWN0b3J5U3RyaW5nOwogICB9CkBA
IC0yNTAsOSArMjQ4LDYgQEAgYm9vbCBGaWxlUGF0aDo6RGlyZWN0b3J5RXhpc3RzKCkgY29uc3Qg
ewogLy8gcm9vdCBkaXJlY3RvcnkgcGVyIGRpc2sgZHJpdmUuKQogYm9vbCBGaWxlUGF0aDo6SXNS
b290RGlyZWN0b3J5KCkgY29uc3QgewogI2lmIEdURVNUX09TX1dJTkRPV1MKLSAgLy8gRklYTUU6
IG9uIFdpbmRvd3MgYSBuZXR3b3JrIHNoYXJlIGxpa2UKLSAgLy8gXFxzZXJ2ZXJcc2hhcmUgY2Fu
IGJlIGEgcm9vdCBkaXJlY3RvcnksIGFsdGhvdWdoIGl0IGNhbm5vdCBiZSB0aGUKLSAgLy8gY3Vy
cmVudCBkaXJlY3RvcnkuICBIYW5kbGUgdGhpcyBwcm9wZXJseS4KICAgcmV0dXJuIHBhdGhuYW1l
Xy5sZW5ndGgoKSA9PSAzICYmIElzQWJzb2x1dGVQYXRoKCk7CiAjZWxzZQogICByZXR1cm4gcGF0
aG5hbWVfLmxlbmd0aCgpID09IDEgJiYgSXNQYXRoU2VwYXJhdG9yKHBhdGhuYW1lXy5jX3N0cigp
WzBdKTsKQEAgLTMyNCwxMCArMzE5LDEzIEBAIGJvb2wgRmlsZVBhdGg6OkNyZWF0ZUZvbGRlcigp
IGNvbnN0IHsKICNpZiBHVEVTVF9PU19XSU5ET1dTX01PQklMRQogICBGaWxlUGF0aCByZW1vdmVk
X3NlcCh0aGlzLT5SZW1vdmVUcmFpbGluZ1BhdGhTZXBhcmF0b3IoKSk7CiAgIExQQ1dTVFIgdW5p
Y29kZSA9IFN0cmluZzo6QW5zaVRvVXRmMTYocmVtb3ZlZF9zZXAuY19zdHIoKSk7Ci0gIGludCBy
ZXN1bHQgPSBDcmVhdGVEaXJlY3RvcnkodW5pY29kZSwgTlVMTCkgPyAwIDogLTE7CisgIGludCBy
ZXN1bHQgPSBDcmVhdGVEaXJlY3RvcnkodW5pY29kZSwgbnVsbHB0cikgPyAwIDogLTE7CiAgIGRl
bGV0ZSBbXSB1bmljb2RlOwogI2VsaWYgR1RFU1RfT1NfV0lORE9XUwogICBpbnQgcmVzdWx0ID0g
X21rZGlyKHBhdGhuYW1lXy5jX3N0cigpKTsKKyNlbGlmIEdURVNUX09TX0VTUDgyNjYKKyAgLy8g
ZG8gbm90aGluZworICBpbnQgcmVzdWx0ID0gMDsKICNlbHNlCiAgIGludCByZXN1bHQgPSBta2Rp
cihwYXRobmFtZV8uY19zdHIoKSwgMDc3Nyk7CiAjZW5kaWYgIC8vIEdURVNUX09TX1dJTkRPV1Nf
TU9CSUxFCkBAIC0zNTAsOSArMzQ4LDggQEAgRmlsZVBhdGggRmlsZVBhdGg6OlJlbW92ZVRyYWls
aW5nUGF0aFNlcGFyYXRvcigpIGNvbnN0IHsKIC8vIFJlbW92ZXMgYW55IHJlZHVuZGFudCBzZXBh
cmF0b3JzIHRoYXQgbWlnaHQgYmUgaW4gdGhlIHBhdGhuYW1lLgogLy8gRm9yIGV4YW1wbGUsICJi
YXIvLy9mb28iIGJlY29tZXMgImJhci9mb28iLiBEb2VzIG5vdCBlbGltaW5hdGUgb3RoZXIKIC8v
IHJlZHVuZGFuY2llcyB0aGF0IG1pZ2h0IGJlIGluIGEgcGF0aG5hbWUgaW52b2x2aW5nICIuIiBv
ciAiLi4iLgotLy8gRklYTUU6IGhhbmRsZSBXaW5kb3dzIG5ldHdvcmsgc2hhcmVzIChlLmcuIFxc
c2VydmVyXHNoYXJlKS4KIHZvaWQgRmlsZVBhdGg6Ok5vcm1hbGl6ZSgpIHsKLSAgaWYgKHBhdGhu
YW1lXy5jX3N0cigpID09IE5VTEwpIHsKKyAgaWYgKHBhdGhuYW1lXy5jX3N0cigpID09IG51bGxw
dHIpIHsKICAgICBwYXRobmFtZV8gPSAiIjsKICAgICByZXR1cm47CiAgIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0LWludGVybmFs
LWlubC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3Qt
aW50ZXJuYWwtaW5sLmgKaW5kZXggNDc5MDA0MTQ5YjQ4YzI4NTY0ZTIwNWUwMjEwYzZjNDMxMDQx
OGI1Yi4uZTQyZmY0NzUzOTlkZGE5MDVjMTRmOWZhNmE5ZTZkYzNjN2FiMGIyNyAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3QtaW50ZXJu
YWwtaW5sLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9zcmMv
Z3Rlc3QtaW50ZXJuYWwtaW5sLmgKQEAgLTQyLDYgKzQyLDggQEAKICNpbmNsdWRlIDxzdHJpbmcu
aD4gIC8vIEZvciBtZW1tb3ZlLgogCiAjaW5jbHVkZSA8YWxnb3JpdGhtPgorI2luY2x1ZGUgPGNz
dGRpbnQ+CisjaW5jbHVkZSA8bWVtb3J5PgogI2luY2x1ZGUgPHN0cmluZz4KICNpbmNsdWRlIDx2
ZWN0b3I+CiAKQEAgLTk4LDE0ICsxMDAsMTQgQEAgY29uc3QgY2hhciBrRmxhZ2ZpbGVGbGFnW10g
PSAiZmxhZ2ZpbGUiOwogLy8gQSB2YWxpZCByYW5kb20gc2VlZCBtdXN0IGJlIGluIFsxLCBrTWF4
UmFuZG9tU2VlZF0uCiBjb25zdCBpbnQga01heFJhbmRvbVNlZWQgPSA5OTk5OTsKIAotLy8gZ19o
ZWxwX2ZsYWcgaXMgdHJ1ZSBpZmYgdGhlIC0taGVscCBmbGFnIG9yIGFuIGVxdWl2YWxlbnQgZm9y
bSBpcwotLy8gc3BlY2lmaWVkIG9uIHRoZSBjb21tYW5kIGxpbmUuCisvLyBnX2hlbHBfZmxhZyBp
cyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoZSAtLWhlbHAgZmxhZyBvciBhbiBlcXVpdmFsZW50IGZv
cm0KKy8vIGlzIHNwZWNpZmllZCBvbiB0aGUgY29tbWFuZCBsaW5lLgogR1RFU1RfQVBJXyBleHRl
cm4gYm9vbCBnX2hlbHBfZmxhZzsKIAogLy8gUmV0dXJucyB0aGUgY3VycmVudCB0aW1lIGluIG1p
bGxpc2Vjb25kcy4KIEdURVNUX0FQSV8gVGltZUluTWlsbGlzIEdldFRpbWVJbk1pbGxpcygpOwog
Ci0vLyBSZXR1cm5zIHRydWUgaWZmIEdvb2dsZSBUZXN0IHNob3VsZCB1c2UgY29sb3JzIGluIHRo
ZSBvdXRwdXQuCisvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgR29vZ2xlIFRlc3Qgc2hv
dWxkIHVzZSBjb2xvcnMgaW4gdGhlIG91dHB1dC4KIEdURVNUX0FQSV8gYm9vbCBTaG91bGRVc2VD
b2xvcihib29sIHN0ZG91dF9pc190dHkpOwogCiAvLyBGb3JtYXRzIHRoZSBnaXZlbiB0aW1lIGlu
IG1pbGxpc2Vjb25kcyBhcyBzZWNvbmRzLgpAQCAtMTIyLDExICsxMjQsMTEgQEAgR1RFU1RfQVBJ
XyBzdGQ6OnN0cmluZyBGb3JtYXRFcG9jaFRpbWVJbk1pbGxpc0FzSXNvODYwMShUaW1lSW5NaWxs
aXMgbXMpOwogLy8gT24gc3VjY2Vzcywgc3RvcmVzIHRoZSB2YWx1ZSBvZiB0aGUgZmxhZyBpbiAq
dmFsdWUsIGFuZCByZXR1cm5zCiAvLyB0cnVlLiAgT24gZmFpbHVyZSwgcmV0dXJucyBmYWxzZSB3
aXRob3V0IGNoYW5naW5nICp2YWx1ZS4KIEdURVNUX0FQSV8gYm9vbCBQYXJzZUludDMyRmxhZygK
LSAgICBjb25zdCBjaGFyKiBzdHIsIGNvbnN0IGNoYXIqIGZsYWcsIEludDMyKiB2YWx1ZSk7Cisg
ICAgY29uc3QgY2hhciogc3RyLCBjb25zdCBjaGFyKiBmbGFnLCBpbnQzMl90KiB2YWx1ZSk7CiAK
IC8vIFJldHVybnMgYSByYW5kb20gc2VlZCBpbiByYW5nZSBbMSwga01heFJhbmRvbVNlZWRdIGJh
c2VkIG9uIHRoZQogLy8gZ2l2ZW4gLS1ndGVzdF9yYW5kb21fc2VlZCBmbGFnIHZhbHVlLgotaW5s
aW5lIGludCBHZXRSYW5kb21TZWVkRnJvbUZsYWcoSW50MzIgcmFuZG9tX3NlZWRfZmxhZykgewor
aW5saW5lIGludCBHZXRSYW5kb21TZWVkRnJvbUZsYWcoaW50MzJfdCByYW5kb21fc2VlZF9mbGFn
KSB7CiAgIGNvbnN0IHVuc2lnbmVkIGludCByYXdfc2VlZCA9IChyYW5kb21fc2VlZF9mbGFnID09
IDApID8KICAgICAgIHN0YXRpY19jYXN0PHVuc2lnbmVkIGludD4oR2V0VGltZUluTWlsbGlzKCkp
IDoKICAgICAgIHN0YXRpY19jYXN0PHVuc2lnbmVkIGludD4ocmFuZG9tX3NlZWRfZmxhZyk7CkBA
IC0yMTIsMTAgKzIxNCwxMCBAQCBjbGFzcyBHVGVzdEZsYWdTYXZlciB7CiAgIHN0ZDo6c3RyaW5n
IG91dHB1dF87CiAgIGJvb2wgcHJpbnRfdGltZV87CiAgIGJvb2wgcHJpbnRfdXRmOF87Ci0gIGlu
dGVybmFsOjpJbnQzMiByYW5kb21fc2VlZF87Ci0gIGludGVybmFsOjpJbnQzMiByZXBlYXRfOwor
ICBpbnQzMl90IHJhbmRvbV9zZWVkXzsKKyAgaW50MzJfdCByZXBlYXRfOwogICBib29sIHNodWZm
bGVfOwotICBpbnRlcm5hbDo6SW50MzIgc3RhY2tfdHJhY2VfZGVwdGhfOworICBpbnQzMl90IHN0
YWNrX3RyYWNlX2RlcHRoXzsKICAgc3RkOjpzdHJpbmcgc3RyZWFtX3Jlc3VsdF90b187CiAgIGJv
b2wgdGhyb3dfb25fZmFpbHVyZV87CiB9IEdURVNUX0FUVFJJQlVURV9VTlVTRURfOwpAQCAtMjI2
LDExICsyMjgsMTEgQEAgY2xhc3MgR1Rlc3RGbGFnU2F2ZXIgewogLy8gSWYgdGhlIGNvZGVfcG9p
bnQgaXMgbm90IGEgdmFsaWQgVW5pY29kZSBjb2RlIHBvaW50CiAvLyAoaS5lLiBvdXRzaWRlIG9m
IFVuaWNvZGUgcmFuZ2UgVSswIHRvIFUrMTBGRkZGKSBpdCB3aWxsIGJlIGNvbnZlcnRlZAogLy8g
dG8gIihJbnZhbGlkIFVuaWNvZGUgMHhYWFhYWFhYWCkiLgotR1RFU1RfQVBJXyBzdGQ6OnN0cmlu
ZyBDb2RlUG9pbnRUb1V0ZjgoVUludDMyIGNvZGVfcG9pbnQpOworR1RFU1RfQVBJXyBzdGQ6OnN0
cmluZyBDb2RlUG9pbnRUb1V0ZjgodWludDMyX3QgY29kZV9wb2ludCk7CiAKIC8vIENvbnZlcnRz
IGEgd2lkZSBzdHJpbmcgdG8gYSBuYXJyb3cgc3RyaW5nIGluIFVURi04IGVuY29kaW5nLgogLy8g
VGhlIHdpZGUgc3RyaW5nIGlzIGFzc3VtZWQgdG8gaGF2ZSB0aGUgZm9sbG93aW5nIGVuY29kaW5n
OgotLy8gICBVVEYtMTYgaWYgc2l6ZW9mKHdjaGFyX3QpID09IDIgKG9uIFdpbmRvd3MsIEN5Z3dp
biwgU3ltYmlhbiBPUykKKy8vICAgVVRGLTE2IGlmIHNpemVvZih3Y2hhcl90KSA9PSAyIChvbiBX
aW5kb3dzLCBDeWd3aW4pCiAvLyAgIFVURi0zMiBpZiBzaXplb2Yod2NoYXJfdCkgPT0gNCAob24g
TGludXgpCiAvLyBQYXJhbWV0ZXIgc3RyIHBvaW50cyB0byBhIG51bGwtdGVybWluYXRlZCB3aWRl
IHN0cmluZy4KIC8vIFBhcmFtZXRlciBudW1fY2hhcnMgbWF5IGFkZGl0aW9uYWxseSBsaW1pdCB0
aGUgbnVtYmVyCkBAIC0yNTksMTQgKzI2MSwxNCBAQCBHVEVTVF9BUElfIGJvb2wgU2hvdWxkU2hh
cmQoY29uc3QgY2hhciogdG90YWxfc2hhcmRzX3N0ciwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBjaGFyKiBzaGFyZF9pbmRleF9zdHIsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgYm9vbCBpbl9zdWJwcm9jZXNzX2Zvcl9kZWF0aF90ZXN0KTsKIAotLy8gUGFyc2VzIHRo
ZSBlbnZpcm9ubWVudCB2YXJpYWJsZSB2YXIgYXMgYW4gSW50MzIuIElmIGl0IGlzIHVuc2V0LAot
Ly8gcmV0dXJucyBkZWZhdWx0X3ZhbC4gSWYgaXQgaXMgbm90IGFuIEludDMyLCBwcmludHMgYW4g
ZXJyb3IgYW5kCisvLyBQYXJzZXMgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlIHZhciBhcyBhIDMy
LWJpdCBpbnRlZ2VyLiBJZiBpdCBpcyB1bnNldCwKKy8vIHJldHVybnMgZGVmYXVsdF92YWwuIElm
IGl0IGlzIG5vdCBhIDMyLWJpdCBpbnRlZ2VyLCBwcmludHMgYW4gZXJyb3IgYW5kCiAvLyBhbmQg
YWJvcnRzLgotR1RFU1RfQVBJXyBJbnQzMiBJbnQzMkZyb21FbnZPckRpZShjb25zdCBjaGFyKiBl
bnZfdmFyLCBJbnQzMiBkZWZhdWx0X3ZhbCk7CitHVEVTVF9BUElfIGludDMyX3QgSW50MzJGcm9t
RW52T3JEaWUoY29uc3QgY2hhciogZW52X3ZhciwgaW50MzJfdCBkZWZhdWx0X3ZhbCk7CiAKIC8v
IEdpdmVuIHRoZSB0b3RhbCBudW1iZXIgb2Ygc2hhcmRzLCB0aGUgc2hhcmQgaW5kZXgsIGFuZCB0
aGUgdGVzdCBpZCwKLS8vIHJldHVybnMgdHJ1ZSBpZmYgdGhlIHRlc3Qgc2hvdWxkIGJlIHJ1biBv
biB0aGlzIHNoYXJkLiBUaGUgdGVzdCBpZCBpcwotLy8gc29tZSBhcmJpdHJhcnkgYnV0IHVuaXF1
ZSBub24tbmVnYXRpdmUgaW50ZWdlciBhc3NpZ25lZCB0byBlYWNoIHRlc3QKKy8vIHJldHVybnMg
dHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgdGVzdCBzaG91bGQgYmUgcnVuIG9uIHRoaXMgc2hhcmQu
IFRoZSB0ZXN0IGlkCisvLyBpcyBzb21lIGFyYml0cmFyeSBidXQgdW5pcXVlIG5vbi1uZWdhdGl2
ZSBpbnRlZ2VyIGFzc2lnbmVkIHRvIGVhY2ggdGVzdAogLy8gbWV0aG9kLiBBc3N1bWVzIHRoYXQg
MCA8PSBzaGFyZF9pbmRleCA8IHRvdGFsX3NoYXJkcy4KIEdURVNUX0FQSV8gYm9vbCBTaG91bGRS
dW5UZXN0T25TaGFyZCgKICAgICBpbnQgdG90YWxfc2hhcmRzLCBpbnQgc2hhcmRfaW5kZXgsIGlu
dCB0ZXN0X2lkKTsKQEAgLTI5Nyw3ICsyOTksOCBAQCB2b2lkIEZvckVhY2goY29uc3QgQ29udGFp
bmVyJiBjLCBGdW5jdG9yIGZ1bmN0b3IpIHsKIC8vIGluIHJhbmdlIFswLCB2LnNpemUoKSkuCiB0
ZW1wbGF0ZSA8dHlwZW5hbWUgRT4KIGlubGluZSBFIEdldEVsZW1lbnRPcihjb25zdCBzdGQ6OnZl
Y3RvcjxFPiYgdiwgaW50IGksIEUgZGVmYXVsdF92YWx1ZSkgewotICByZXR1cm4gKGkgPCAwIHx8
IGkgPj0gc3RhdGljX2Nhc3Q8aW50Pih2LnNpemUoKSkpID8gZGVmYXVsdF92YWx1ZSA6IHZbaV07
CisgIHJldHVybiAoaSA8IDAgfHwgaSA+PSBzdGF0aWNfY2FzdDxpbnQ+KHYuc2l6ZSgpKSkgPyBk
ZWZhdWx0X3ZhbHVlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgOiB2W3N0YXRpY19jYXN0PHNpemVfdD4oaSldOwogfQogCiAvLyBQZXJmb3JtcyBh
biBpbi1wbGFjZSBzaHVmZmxlIG9mIGEgcmFuZ2Ugb2YgdGhlIHZlY3RvcidzIGVsZW1lbnRzLgpA
QCAtMzE5LDggKzMyMiwxMSBAQCB2b2lkIFNodWZmbGVSYW5nZShpbnRlcm5hbDo6UmFuZG9tKiBy
YW5kb20sIGludCBiZWdpbiwgaW50IGVuZCwKICAgLy8gaHR0cDovL2VuLndpa2lwZWRpYS5vcmcv
d2lraS9GaXNoZXItWWF0ZXNfc2h1ZmZsZQogICBmb3IgKGludCByYW5nZV93aWR0aCA9IGVuZCAt
IGJlZ2luOyByYW5nZV93aWR0aCA+PSAyOyByYW5nZV93aWR0aC0tKSB7CiAgICAgY29uc3QgaW50
IGxhc3RfaW5fcmFuZ2UgPSBiZWdpbiArIHJhbmdlX3dpZHRoIC0gMTsKLSAgICBjb25zdCBpbnQg
c2VsZWN0ZWQgPSBiZWdpbiArIHJhbmRvbS0+R2VuZXJhdGUocmFuZ2Vfd2lkdGgpOwotICAgIHN0
ZDo6c3dhcCgoKnYpW3NlbGVjdGVkXSwgKCp2KVtsYXN0X2luX3JhbmdlXSk7CisgICAgY29uc3Qg
aW50IHNlbGVjdGVkID0KKyAgICAgICAgYmVnaW4gKworICAgICAgICBzdGF0aWNfY2FzdDxpbnQ+
KHJhbmRvbS0+R2VuZXJhdGUoc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHJhbmdlX3dpZHRoKSkpOwor
ICAgIHN0ZDo6c3dhcCgoKnYpW3N0YXRpY19jYXN0PHNpemVfdD4oc2VsZWN0ZWQpXSwKKyAgICAg
ICAgICAgICAgKCp2KVtzdGF0aWNfY2FzdDxzaXplX3Q+KGxhc3RfaW5fcmFuZ2UpXSk7CiAgIH0K
IH0KIApAQCAtMzQ3LDcgKzM1Myw3IEBAIGNsYXNzIFRlc3RQcm9wZXJ0eUtleUlzIHsKICAgLy8g
VGVzdFByb3BlcnR5S2V5SXMgaGFzIE5PIGRlZmF1bHQgY29uc3RydWN0b3IuCiAgIGV4cGxpY2l0
IFRlc3RQcm9wZXJ0eUtleUlzKGNvbnN0IHN0ZDo6c3RyaW5nJiBrZXkpIDoga2V5XyhrZXkpIHt9
CiAKLSAgLy8gUmV0dXJucyB0cnVlIGlmZiB0aGUgdGVzdCBuYW1lIG9mIHRlc3QgcHJvcGVydHkg
bWF0Y2hlcyBvbiBrZXlfLgorICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHRl
c3QgbmFtZSBvZiB0ZXN0IHByb3BlcnR5IG1hdGNoZXMgb24ga2V5Xy4KICAgYm9vbCBvcGVyYXRv
cigpKGNvbnN0IFRlc3RQcm9wZXJ0eSYgdGVzdF9wcm9wZXJ0eSkgY29uc3QgewogICAgIHJldHVy
biB0ZXN0X3Byb3BlcnR5LmtleSgpID09IGtleV87CiAgIH0KQEAgLTM4MCwxNyArMzg2LDE3IEBA
IGNsYXNzIEdURVNUX0FQSV8gVW5pdFRlc3RPcHRpb25zIHsKIAogICAvLyBGdW5jdGlvbnMgZm9y
IHByb2Nlc3NpbmcgdGhlIGd0ZXN0X2ZpbHRlciBmbGFnLgogCi0gIC8vIFJldHVybnMgdHJ1ZSBp
ZmYgdGhlIHdpbGRjYXJkIHBhdHRlcm4gbWF0Y2hlcyB0aGUgc3RyaW5nLiAgVGhlCi0gIC8vIGZp
cnN0ICc6JyBvciAnXDAnIGNoYXJhY3RlciBpbiBwYXR0ZXJuIG1hcmtzIHRoZSBlbmQgb2YgaXQu
CisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgd2lsZGNhcmQgcGF0dGVybiBt
YXRjaGVzIHRoZSBzdHJpbmcuCisgIC8vIFRoZSBmaXJzdCAnOicgb3IgJ1wwJyBjaGFyYWN0ZXIg
aW4gcGF0dGVybiBtYXJrcyB0aGUgZW5kIG9mIGl0LgogICAvLwogICAvLyBUaGlzIHJlY3Vyc2l2
ZSBhbGdvcml0aG0gaXNuJ3QgdmVyeSBlZmZpY2llbnQsIGJ1dCBpcyBjbGVhciBhbmQKICAgLy8g
d29ya3Mgd2VsbCBlbm91Z2ggZm9yIG1hdGNoaW5nIHRlc3QgbmFtZXMsIHdoaWNoIGFyZSBzaG9y
dC4KICAgc3RhdGljIGJvb2wgUGF0dGVybk1hdGNoZXNTdHJpbmcoY29uc3QgY2hhciAqcGF0dGVy
biwgY29uc3QgY2hhciAqc3RyKTsKIAotICAvLyBSZXR1cm5zIHRydWUgaWZmIHRoZSB1c2VyLXNw
ZWNpZmllZCBmaWx0ZXIgbWF0Y2hlcyB0aGUgdGVzdCBjYXNlCi0gIC8vIG5hbWUgYW5kIHRoZSB0
ZXN0IG5hbWUuCi0gIHN0YXRpYyBib29sIEZpbHRlck1hdGNoZXNUZXN0KGNvbnN0IHN0ZDo6c3Ry
aW5nICZ0ZXN0X2Nhc2VfbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u
c3Qgc3RkOjpzdHJpbmcgJnRlc3RfbmFtZSk7CisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25s
eSBpZiB0aGUgdXNlci1zcGVjaWZpZWQgZmlsdGVyIG1hdGNoZXMgdGhlIHRlc3QKKyAgLy8gc3Vp
dGUgbmFtZSBhbmQgdGhlIHRlc3QgbmFtZS4KKyAgc3RhdGljIGJvb2wgRmlsdGVyTWF0Y2hlc1Rl
c3QoY29uc3Qgc3RkOjpzdHJpbmcmIHRlc3Rfc3VpdGVfbmFtZSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgY29uc3Qgc3RkOjpzdHJpbmcmIHRlc3RfbmFtZSk7CiAKICNpZiBHVEVT
VF9PU19XSU5ET1dTCiAgIC8vIEZ1bmN0aW9uIGZvciBzdXBwb3J0aW5nIHRoZSBndGVzdF9jYXRj
aF9leGNlcHRpb24gZmxhZy4KQEAgLTQ0Miw4ICs0NDgsOCBAQCBjbGFzcyBPc1N0YWNrVHJhY2VH
ZXR0ZXIgOiBwdWJsaWMgT3NTdGFja1RyYWNlR2V0dGVySW50ZXJmYWNlIHsKICBwdWJsaWM6CiAg
IE9zU3RhY2tUcmFjZUdldHRlcigpIHt9CiAKLSAgdmlydHVhbCBzdGQ6OnN0cmluZyBDdXJyZW50
U3RhY2tUcmFjZShpbnQgbWF4X2RlcHRoLCBpbnQgc2tpcF9jb3VudCk7Ci0gIHZpcnR1YWwgdm9p
ZCBVcG9uTGVhdmluZ0dUZXN0KCk7CisgIHN0ZDo6c3RyaW5nIEN1cnJlbnRTdGFja1RyYWNlKGlu
dCBtYXhfZGVwdGgsIGludCBza2lwX2NvdW50KSBvdmVycmlkZTsKKyAgdm9pZCBVcG9uTGVhdmlu
Z0dUZXN0KCkgb3ZlcnJpZGU7CiAKICBwcml2YXRlOgogI2lmIEdURVNUX0hBU19BQlNMCkBAIC00
NzQsNyArNDgwLDcgQEAgY2xhc3MgRGVmYXVsdEdsb2JhbFRlc3RQYXJ0UmVzdWx0UmVwb3J0ZXIK
ICAgZXhwbGljaXQgRGVmYXVsdEdsb2JhbFRlc3RQYXJ0UmVzdWx0UmVwb3J0ZXIoVW5pdFRlc3RJ
bXBsKiB1bml0X3Rlc3QpOwogICAvLyBJbXBsZW1lbnRzIHRoZSBUZXN0UGFydFJlc3VsdFJlcG9y
dGVySW50ZXJmYWNlLiBSZXBvcnRzIHRoZSB0ZXN0IHBhcnQKICAgLy8gcmVzdWx0IGluIHRoZSBj
dXJyZW50IHRlc3QuCi0gIHZpcnR1YWwgdm9pZCBSZXBvcnRUZXN0UGFydFJlc3VsdChjb25zdCBU
ZXN0UGFydFJlc3VsdCYgcmVzdWx0KTsKKyAgdm9pZCBSZXBvcnRUZXN0UGFydFJlc3VsdChjb25z
dCBUZXN0UGFydFJlc3VsdCYgcmVzdWx0KSBvdmVycmlkZTsKIAogIHByaXZhdGU6CiAgIFVuaXRU
ZXN0SW1wbCogY29uc3QgdW5pdF90ZXN0XzsKQEAgLTQ5MCw3ICs0OTYsNyBAQCBjbGFzcyBEZWZh
dWx0UGVyVGhyZWFkVGVzdFBhcnRSZXN1bHRSZXBvcnRlcgogICBleHBsaWNpdCBEZWZhdWx0UGVy
VGhyZWFkVGVzdFBhcnRSZXN1bHRSZXBvcnRlcihVbml0VGVzdEltcGwqIHVuaXRfdGVzdCk7CiAg
IC8vIEltcGxlbWVudHMgdGhlIFRlc3RQYXJ0UmVzdWx0UmVwb3J0ZXJJbnRlcmZhY2UuIFRoZSBp
bXBsZW1lbnRhdGlvbiBqdXN0CiAgIC8vIGRlbGVnYXRlcyB0byB0aGUgY3VycmVudCBnbG9iYWwg
dGVzdCBwYXJ0IHJlc3VsdCByZXBvcnRlciBvZiAqdW5pdF90ZXN0Xy4KLSAgdmlydHVhbCB2b2lk
IFJlcG9ydFRlc3RQYXJ0UmVzdWx0KGNvbnN0IFRlc3RQYXJ0UmVzdWx0JiByZXN1bHQpOworICB2
b2lkIFJlcG9ydFRlc3RQYXJ0UmVzdWx0KGNvbnN0IFRlc3RQYXJ0UmVzdWx0JiByZXN1bHQpIG92
ZXJyaWRlOwogCiAgcHJpdmF0ZToKICAgVW5pdFRlc3RJbXBsKiBjb25zdCB1bml0X3Rlc3RfOwpA
QCAtNTI4LDIyICs1MzQsMjUgQEAgY2xhc3MgR1RFU1RfQVBJXyBVbml0VGVzdEltcGwgewogICB2
b2lkIFNldFRlc3RQYXJ0UmVzdWx0UmVwb3J0ZXJGb3JDdXJyZW50VGhyZWFkKAogICAgICAgVGVz
dFBhcnRSZXN1bHRSZXBvcnRlckludGVyZmFjZSogcmVwb3J0ZXIpOwogCi0gIC8vIEdldHMgdGhl
IG51bWJlciBvZiBzdWNjZXNzZnVsIHRlc3QgY2FzZXMuCi0gIGludCBzdWNjZXNzZnVsX3Rlc3Rf
Y2FzZV9jb3VudCgpIGNvbnN0OworICAvLyBHZXRzIHRoZSBudW1iZXIgb2Ygc3VjY2Vzc2Z1bCB0
ZXN0IHN1aXRlcy4KKyAgaW50IHN1Y2Nlc3NmdWxfdGVzdF9zdWl0ZV9jb3VudCgpIGNvbnN0Owog
Ci0gIC8vIEdldHMgdGhlIG51bWJlciBvZiBmYWlsZWQgdGVzdCBjYXNlcy4KLSAgaW50IGZhaWxl
ZF90ZXN0X2Nhc2VfY291bnQoKSBjb25zdDsKKyAgLy8gR2V0cyB0aGUgbnVtYmVyIG9mIGZhaWxl
ZCB0ZXN0IHN1aXRlcy4KKyAgaW50IGZhaWxlZF90ZXN0X3N1aXRlX2NvdW50KCkgY29uc3Q7CiAK
LSAgLy8gR2V0cyB0aGUgbnVtYmVyIG9mIGFsbCB0ZXN0IGNhc2VzLgotICBpbnQgdG90YWxfdGVz
dF9jYXNlX2NvdW50KCkgY29uc3Q7CisgIC8vIEdldHMgdGhlIG51bWJlciBvZiBhbGwgdGVzdCBz
dWl0ZXMuCisgIGludCB0b3RhbF90ZXN0X3N1aXRlX2NvdW50KCkgY29uc3Q7CiAKLSAgLy8gR2V0
cyB0aGUgbnVtYmVyIG9mIGFsbCB0ZXN0IGNhc2VzIHRoYXQgY29udGFpbiBhdCBsZWFzdCBvbmUg
dGVzdAorICAvLyBHZXRzIHRoZSBudW1iZXIgb2YgYWxsIHRlc3Qgc3VpdGVzIHRoYXQgY29udGFp
biBhdCBsZWFzdCBvbmUgdGVzdAogICAvLyB0aGF0IHNob3VsZCBydW4uCi0gIGludCB0ZXN0X2Nh
c2VfdG9fcnVuX2NvdW50KCkgY29uc3Q7CisgIGludCB0ZXN0X3N1aXRlX3RvX3J1bl9jb3VudCgp
IGNvbnN0OwogCiAgIC8vIEdldHMgdGhlIG51bWJlciBvZiBzdWNjZXNzZnVsIHRlc3RzLgogICBp
bnQgc3VjY2Vzc2Z1bF90ZXN0X2NvdW50KCkgY29uc3Q7CiAKKyAgLy8gR2V0cyB0aGUgbnVtYmVy
IG9mIHNraXBwZWQgdGVzdHMuCisgIGludCBza2lwcGVkX3Rlc3RfY291bnQoKSBjb25zdDsKKwog
ICAvLyBHZXRzIHRoZSBudW1iZXIgb2YgZmFpbGVkIHRlc3RzLgogICBpbnQgZmFpbGVkX3Rlc3Rf
Y291bnQoKSBjb25zdDsKIApAQCAtNTY5LDI3ICs1NzgsMzMgQEAgY2xhc3MgR1RFU1RfQVBJXyBV
bml0VGVzdEltcGwgewogICAvLyBHZXRzIHRoZSBlbGFwc2VkIHRpbWUsIGluIG1pbGxpc2Vjb25k
cy4KICAgVGltZUluTWlsbGlzIGVsYXBzZWRfdGltZSgpIGNvbnN0IHsgcmV0dXJuIGVsYXBzZWRf
dGltZV87IH0KIAotICAvLyBSZXR1cm5zIHRydWUgaWZmIHRoZSB1bml0IHRlc3QgcGFzc2VkIChp
LmUuIGFsbCB0ZXN0IGNhc2VzIHBhc3NlZCkuCisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25s
eSBpZiB0aGUgdW5pdCB0ZXN0IHBhc3NlZCAoaS5lLiBhbGwgdGVzdCBzdWl0ZXMKKyAgLy8gcGFz
c2VkKS4KICAgYm9vbCBQYXNzZWQoKSBjb25zdCB7IHJldHVybiAhRmFpbGVkKCk7IH0KIAotICAv
LyBSZXR1cm5zIHRydWUgaWZmIHRoZSB1bml0IHRlc3QgZmFpbGVkIChpLmUuIHNvbWUgdGVzdCBj
YXNlIGZhaWxlZAotICAvLyBvciBzb21ldGhpbmcgb3V0c2lkZSBvZiBhbGwgdGVzdHMgZmFpbGVk
KS4KKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoZSB1bml0IHRlc3QgZmFpbGVk
IChpLmUuIHNvbWUgdGVzdCBzdWl0ZQorICAvLyBmYWlsZWQgb3Igc29tZXRoaW5nIG91dHNpZGUg
b2YgYWxsIHRlc3RzIGZhaWxlZCkuCiAgIGJvb2wgRmFpbGVkKCkgY29uc3QgewotICAgIHJldHVy
biBmYWlsZWRfdGVzdF9jYXNlX2NvdW50KCkgPiAwIHx8IGFkX2hvY190ZXN0X3Jlc3VsdCgpLT5G
YWlsZWQoKTsKKyAgICByZXR1cm4gZmFpbGVkX3Rlc3Rfc3VpdGVfY291bnQoKSA+IDAgfHwgYWRf
aG9jX3Rlc3RfcmVzdWx0KCktPkZhaWxlZCgpOwogICB9CiAKLSAgLy8gR2V0cyB0aGUgaS10aCB0
ZXN0IGNhc2UgYW1vbmcgYWxsIHRoZSB0ZXN0IGNhc2VzLiBpIGNhbiByYW5nZSBmcm9tIDAgdG8K
LSAgLy8gdG90YWxfdGVzdF9jYXNlX2NvdW50KCkgLSAxLiBJZiBpIGlzIG5vdCBpbiB0aGF0IHJh
bmdlLCByZXR1cm5zIE5VTEwuCi0gIGNvbnN0IFRlc3RDYXNlKiBHZXRUZXN0Q2FzZShpbnQgaSkg
Y29uc3QgewotICAgIGNvbnN0IGludCBpbmRleCA9IEdldEVsZW1lbnRPcih0ZXN0X2Nhc2VfaW5k
aWNlc18sIGksIC0xKTsKLSAgICByZXR1cm4gaW5kZXggPCAwID8gTlVMTCA6IHRlc3RfY2FzZXNf
W2ldOworICAvLyBHZXRzIHRoZSBpLXRoIHRlc3Qgc3VpdGUgYW1vbmcgYWxsIHRoZSB0ZXN0IHN1
aXRlcy4gaSBjYW4gcmFuZ2UgZnJvbSAwIHRvCisgIC8vIHRvdGFsX3Rlc3Rfc3VpdGVfY291bnQo
KSAtIDEuIElmIGkgaXMgbm90IGluIHRoYXQgcmFuZ2UsIHJldHVybnMgTlVMTC4KKyAgY29uc3Qg
VGVzdFN1aXRlKiBHZXRUZXN0U3VpdGUoaW50IGkpIGNvbnN0IHsKKyAgICBjb25zdCBpbnQgaW5k
ZXggPSBHZXRFbGVtZW50T3IodGVzdF9zdWl0ZV9pbmRpY2VzXywgaSwgLTEpOworICAgIHJldHVy
biBpbmRleCA8IDAgPyBudWxscHRyIDogdGVzdF9zdWl0ZXNfW3N0YXRpY19jYXN0PHNpemVfdD4o
aSldOwogICB9CiAKLSAgLy8gR2V0cyB0aGUgaS10aCB0ZXN0IGNhc2UgYW1vbmcgYWxsIHRoZSB0
ZXN0IGNhc2VzLiBpIGNhbiByYW5nZSBmcm9tIDAgdG8KLSAgLy8gdG90YWxfdGVzdF9jYXNlX2Nv
dW50KCkgLSAxLiBJZiBpIGlzIG5vdCBpbiB0aGF0IHJhbmdlLCByZXR1cm5zIE5VTEwuCi0gIFRl
c3RDYXNlKiBHZXRNdXRhYmxlVGVzdENhc2UoaW50IGkpIHsKLSAgICBjb25zdCBpbnQgaW5kZXgg
PSBHZXRFbGVtZW50T3IodGVzdF9jYXNlX2luZGljZXNfLCBpLCAtMSk7Ci0gICAgcmV0dXJuIGlu
ZGV4IDwgMCA/IE5VTEwgOiB0ZXN0X2Nhc2VzX1tpbmRleF07CisgIC8vICBMZWdhY3kgQVBJIGlz
IGRlcHJlY2F0ZWQgYnV0IHN0aWxsIGF2YWlsYWJsZQorI2lmbmRlZiBHVEVTVF9SRU1PVkVfTEVH
QUNZX1RFU1RfQ0FTRUFQSV8KKyAgY29uc3QgVGVzdENhc2UqIEdldFRlc3RDYXNlKGludCBpKSBj
b25zdCB7IHJldHVybiBHZXRUZXN0U3VpdGUoaSk7IH0KKyNlbmRpZiAgLy8gIEdURVNUX1JFTU9W
RV9MRUdBQ1lfVEVTVF9DQVNFQVBJXworCisgIC8vIEdldHMgdGhlIGktdGggdGVzdCBzdWl0ZSBh
bW9uZyBhbGwgdGhlIHRlc3Qgc3VpdGVzLiBpIGNhbiByYW5nZSBmcm9tIDAgdG8KKyAgLy8gdG90
YWxfdGVzdF9zdWl0ZV9jb3VudCgpIC0gMS4gSWYgaSBpcyBub3QgaW4gdGhhdCByYW5nZSwgcmV0
dXJucyBOVUxMLgorICBUZXN0U3VpdGUqIEdldE11dGFibGVTdWl0ZUNhc2UoaW50IGkpIHsKKyAg
ICBjb25zdCBpbnQgaW5kZXggPSBHZXRFbGVtZW50T3IodGVzdF9zdWl0ZV9pbmRpY2VzXywgaSwg
LTEpOworICAgIHJldHVybiBpbmRleCA8IDAgPyBudWxscHRyIDogdGVzdF9zdWl0ZXNfW3N0YXRp
Y19jYXN0PHNpemVfdD4oaW5kZXgpXTsKICAgfQogCiAgIC8vIFByb3ZpZGVzIGFjY2VzcyB0byB0
aGUgZXZlbnQgbGlzdGVuZXIgbGlzdC4KQEAgLTYyNiwzMCArNjQxLDM4IEBAIGNsYXNzIEdURVNU
X0FQSV8gVW5pdFRlc3RJbXBsIHsKICAgLy8gdHJhY2UgYnV0IEJhcigpIGFuZCBDdXJyZW50T3NT
dGFja1RyYWNlRXhjZXB0VG9wKCkgd29uJ3QuCiAgIHN0ZDo6c3RyaW5nIEN1cnJlbnRPc1N0YWNr
VHJhY2VFeGNlcHRUb3AoaW50IHNraXBfY291bnQpIEdURVNUX05PX0lOTElORV87CiAKLSAgLy8g
RmluZHMgYW5kIHJldHVybnMgYSBUZXN0Q2FzZSB3aXRoIHRoZSBnaXZlbiBuYW1lLiAgSWYgb25l
IGRvZXNuJ3QKKyAgLy8gRmluZHMgYW5kIHJldHVybnMgYSBUZXN0U3VpdGUgd2l0aCB0aGUgZ2l2
ZW4gbmFtZS4gIElmIG9uZSBkb2Vzbid0CiAgIC8vIGV4aXN0LCBjcmVhdGVzIG9uZSBhbmQgcmV0
dXJucyBpdC4KICAgLy8KICAgLy8gQXJndW1lbnRzOgogICAvLwotICAvLyAgIHRlc3RfY2FzZV9u
YW1lOiBuYW1lIG9mIHRoZSB0ZXN0IGNhc2UKKyAgLy8gICB0ZXN0X3N1aXRlX25hbWU6IG5hbWUg
b2YgdGhlIHRlc3Qgc3VpdGUKICAgLy8gICB0eXBlX3BhcmFtOiAgICAgdGhlIG5hbWUgb2YgdGhl
IHRlc3QncyB0eXBlIHBhcmFtZXRlciwgb3IgTlVMTCBpZgogICAvLyAgICAgICAgICAgICAgICAg
ICB0aGlzIGlzIG5vdCBhIHR5cGVkIG9yIGEgdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3QuCi0gIC8v
ICAgc2V0X3VwX3RjOiAgICAgIHBvaW50ZXIgdG8gdGhlIGZ1bmN0aW9uIHRoYXQgc2V0cyB1cCB0
aGUgdGVzdCBjYXNlCi0gIC8vICAgdGVhcl9kb3duX3RjOiAgIHBvaW50ZXIgdG8gdGhlIGZ1bmN0
aW9uIHRoYXQgdGVhcnMgZG93biB0aGUgdGVzdCBjYXNlCi0gIFRlc3RDYXNlKiBHZXRUZXN0Q2Fz
ZShjb25zdCBjaGFyKiB0ZXN0X2Nhc2VfbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgIGNv
bnN0IGNoYXIqIHR5cGVfcGFyYW0sCi0gICAgICAgICAgICAgICAgICAgICAgICBUZXN0OjpTZXRV
cFRlc3RDYXNlRnVuYyBzZXRfdXBfdGMsCi0gICAgICAgICAgICAgICAgICAgICAgICBUZXN0OjpU
ZWFyRG93blRlc3RDYXNlRnVuYyB0ZWFyX2Rvd25fdGMpOworICAvLyAgIHNldF91cF90YzogICAg
ICBwb2ludGVyIHRvIHRoZSBmdW5jdGlvbiB0aGF0IHNldHMgdXAgdGhlIHRlc3Qgc3VpdGUKKyAg
Ly8gICB0ZWFyX2Rvd25fdGM6ICAgcG9pbnRlciB0byB0aGUgZnVuY3Rpb24gdGhhdCB0ZWFycyBk
b3duIHRoZSB0ZXN0IHN1aXRlCisgIFRlc3RTdWl0ZSogR2V0VGVzdFN1aXRlKGNvbnN0IGNoYXIq
IHRlc3Rfc3VpdGVfbmFtZSwgY29uc3QgY2hhciogdHlwZV9wYXJhbSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50ZXJuYWw6OlNldFVwVGVzdFN1aXRlRnVuYyBzZXRfdXBfdGMsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsOjpUZWFyRG93blRlc3RTdWl0ZUZ1bmMgdGVh
cl9kb3duX3RjKTsKKworLy8gIExlZ2FjeSBBUEkgaXMgZGVwcmVjYXRlZCBidXQgc3RpbGwgYXZh
aWxhYmxlCisjaWZuZGVmIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXworICBUZXN0
Q2FzZSogR2V0VGVzdENhc2UoY29uc3QgY2hhciogdGVzdF9jYXNlX25hbWUsIGNvbnN0IGNoYXIq
IHR5cGVfcGFyYW0sCisgICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbDo6U2V0VXBUZXN0
U3VpdGVGdW5jIHNldF91cF90YywKKyAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsOjpU
ZWFyRG93blRlc3RTdWl0ZUZ1bmMgdGVhcl9kb3duX3RjKSB7CisgICAgcmV0dXJuIEdldFRlc3RT
dWl0ZSh0ZXN0X2Nhc2VfbmFtZSwgdHlwZV9wYXJhbSwgc2V0X3VwX3RjLCB0ZWFyX2Rvd25fdGMp
OworICB9CisjZW5kaWYgIC8vICBHVEVTVF9SRU1PVkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KIAog
ICAvLyBBZGRzIGEgVGVzdEluZm8gdG8gdGhlIHVuaXQgdGVzdC4KICAgLy8KICAgLy8gQXJndW1l
bnRzOgogICAvLwotICAvLyAgIHNldF91cF90YzogICAgcG9pbnRlciB0byB0aGUgZnVuY3Rpb24g
dGhhdCBzZXRzIHVwIHRoZSB0ZXN0IGNhc2UKLSAgLy8gICB0ZWFyX2Rvd25fdGM6IHBvaW50ZXIg
dG8gdGhlIGZ1bmN0aW9uIHRoYXQgdGVhcnMgZG93biB0aGUgdGVzdCBjYXNlCisgIC8vICAgc2V0
X3VwX3RjOiAgICBwb2ludGVyIHRvIHRoZSBmdW5jdGlvbiB0aGF0IHNldHMgdXAgdGhlIHRlc3Qg
c3VpdGUKKyAgLy8gICB0ZWFyX2Rvd25fdGM6IHBvaW50ZXIgdG8gdGhlIGZ1bmN0aW9uIHRoYXQg
dGVhcnMgZG93biB0aGUgdGVzdCBzdWl0ZQogICAvLyAgIHRlc3RfaW5mbzogICAgdGhlIFRlc3RJ
bmZvIG9iamVjdAotICB2b2lkIEFkZFRlc3RJbmZvKFRlc3Q6OlNldFVwVGVzdENhc2VGdW5jIHNl
dF91cF90YywKLSAgICAgICAgICAgICAgICAgICBUZXN0OjpUZWFyRG93blRlc3RDYXNlRnVuYyB0
ZWFyX2Rvd25fdGMsCisgIHZvaWQgQWRkVGVzdEluZm8oaW50ZXJuYWw6OlNldFVwVGVzdFN1aXRl
RnVuYyBzZXRfdXBfdGMsCisgICAgICAgICAgICAgICAgICAgaW50ZXJuYWw6OlRlYXJEb3duVGVz
dFN1aXRlRnVuYyB0ZWFyX2Rvd25fdGMsCiAgICAgICAgICAgICAgICAgICAgVGVzdEluZm8qIHRl
c3RfaW5mbykgewogICAgIC8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhyZWFkLXNhZmUgZGVhdGgg
dGVzdHMsIHdlIG5lZWQgdG8KICAgICAvLyByZW1lbWJlciB0aGUgb3JpZ2luYWwgd29ya2luZyBk
aXJlY3Rvcnkgd2hlbiB0aGUgdGVzdCBwcm9ncmFtCkBAIC02NjQsMjEgKzY4NywzMSBAQCBjbGFz
cyBHVEVTVF9BUElfIFVuaXRUZXN0SW1wbCB7CiAgICAgICAgICAgPDwgIkZhaWxlZCB0byBnZXQg
dGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIjsKICAgICB9CiAKLSAgICBHZXRUZXN0Q2Fz
ZSh0ZXN0X2luZm8tPnRlc3RfY2FzZV9uYW1lKCksCi0gICAgICAgICAgICAgICAgdGVzdF9pbmZv
LT50eXBlX3BhcmFtKCksCi0gICAgICAgICAgICAgICAgc2V0X3VwX3RjLAotICAgICAgICAgICAg
ICAgIHRlYXJfZG93bl90YyktPkFkZFRlc3RJbmZvKHRlc3RfaW5mbyk7CisgICAgR2V0VGVzdFN1
aXRlKHRlc3RfaW5mby0+dGVzdF9zdWl0ZV9uYW1lKCksIHRlc3RfaW5mby0+dHlwZV9wYXJhbSgp
LAorICAgICAgICAgICAgICAgICBzZXRfdXBfdGMsIHRlYXJfZG93bl90YykKKyAgICAgICAgLT5B
ZGRUZXN0SW5mbyh0ZXN0X2luZm8pOwogICB9CiAKLSAgLy8gUmV0dXJucyBQYXJhbWV0ZXJpemVk
VGVzdENhc2VSZWdpc3RyeSBvYmplY3QgdXNlZCB0byBrZWVwIHRyYWNrIG9mCisgIC8vIFJldHVy
bnMgUGFyYW1ldGVyaXplZFRlc3RTdWl0ZVJlZ2lzdHJ5IG9iamVjdCB1c2VkIHRvIGtlZXAgdHJh
Y2sgb2YKICAgLy8gdmFsdWUtcGFyYW1ldGVyaXplZCB0ZXN0cyBhbmQgaW5zdGFudGlhdGUgYW5k
IHJlZ2lzdGVyIHRoZW0uCi0gIGludGVybmFsOjpQYXJhbWV0ZXJpemVkVGVzdENhc2VSZWdpc3Ry
eSYgcGFyYW1ldGVyaXplZF90ZXN0X3JlZ2lzdHJ5KCkgeworICBpbnRlcm5hbDo6UGFyYW1ldGVy
aXplZFRlc3RTdWl0ZVJlZ2lzdHJ5JiBwYXJhbWV0ZXJpemVkX3Rlc3RfcmVnaXN0cnkoKSB7CiAg
ICAgcmV0dXJuIHBhcmFtZXRlcml6ZWRfdGVzdF9yZWdpc3RyeV87CiAgIH0KIAotICAvLyBTZXRz
IHRoZSBUZXN0Q2FzZSBvYmplY3QgZm9yIHRoZSB0ZXN0IHRoYXQncyBjdXJyZW50bHkgcnVubmlu
Zy4KLSAgdm9pZCBzZXRfY3VycmVudF90ZXN0X2Nhc2UoVGVzdENhc2UqIGFfY3VycmVudF90ZXN0
X2Nhc2UpIHsKLSAgICBjdXJyZW50X3Rlc3RfY2FzZV8gPSBhX2N1cnJlbnRfdGVzdF9jYXNlOwor
ICBzdGQ6OnNldDxzdGQ6OnN0cmluZz4qIGlnbm9yZWRfcGFyYW1ldGVyaXplZF90ZXN0X3N1aXRl
cygpIHsKKyAgICByZXR1cm4gJmlnbm9yZWRfcGFyYW1ldGVyaXplZF90ZXN0X3N1aXRlc187Cisg
IH0KKworICAvLyBSZXR1cm5zIFR5cGVQYXJhbWV0ZXJpemVkVGVzdFN1aXRlUmVnaXN0cnkgb2Jq
ZWN0IHVzZWQgdG8ga2VlcCB0cmFjayBvZgorICAvLyB0eXBlLXBhcmFtZXRlcml6ZWQgdGVzdHMg
YW5kIGluc3RhbnRpYXRpb25zIG9mIHRoZW0uCisgIGludGVybmFsOjpUeXBlUGFyYW1ldGVyaXpl
ZFRlc3RTdWl0ZVJlZ2lzdHJ5JgorICB0eXBlX3BhcmFtZXRlcml6ZWRfdGVzdF9yZWdpc3RyeSgp
IHsKKyAgICByZXR1cm4gdHlwZV9wYXJhbWV0ZXJpemVkX3Rlc3RfcmVnaXN0cnlfOworICB9CisK
KyAgLy8gU2V0cyB0aGUgVGVzdFN1aXRlIG9iamVjdCBmb3IgdGhlIHRlc3QgdGhhdCdzIGN1cnJl
bnRseSBydW5uaW5nLgorICB2b2lkIHNldF9jdXJyZW50X3Rlc3Rfc3VpdGUoVGVzdFN1aXRlKiBh
X2N1cnJlbnRfdGVzdF9zdWl0ZSkgeworICAgIGN1cnJlbnRfdGVzdF9zdWl0ZV8gPSBhX2N1cnJl
bnRfdGVzdF9zdWl0ZTsKICAgfQogCiAgIC8vIFNldHMgdGhlIFRlc3RJbmZvIG9iamVjdCBmb3Ig
dGhlIHRlc3QgdGhhdCdzIGN1cnJlbnRseSBydW5uaW5nLiAgSWYKQEAgLTY4OSw3ICs3MjIsNyBA
QCBjbGFzcyBHVEVTVF9BUElfIFVuaXRUZXN0SW1wbCB7CiAgIH0KIAogICAvLyBSZWdpc3RlcnMg
YWxsIHBhcmFtZXRlcml6ZWQgdGVzdHMgZGVmaW5lZCB1c2luZyBURVNUX1AgYW5kCi0gIC8vIElO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QLCBjcmVhdGluZyByZWd1bGFyIHRlc3RzIGZvciBlYWNoIHRl
c3QvcGFyYW1ldGVyCisgIC8vIElOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCwgY3JlYXRpbmcgcmVn
dWxhciB0ZXN0cyBmb3IgZWFjaCB0ZXN0L3BhcmFtZXRlcgogICAvLyBjb21iaW5hdGlvbi4gVGhp
cyBtZXRob2QgY2FuIGJlIGNhbGxlZCBtb3JlIHRoZW4gb25jZTsgaXQgaGFzIGd1YXJkcwogICAv
LyBwcm90ZWN0aW5nIGZyb20gcmVnaXN0ZXJpbmcgdGhlIHRlc3RzIG1vcmUgdGhlbiBvbmNlLiAg
SWYKICAgLy8gdmFsdWUtcGFyYW1ldGVyaXplZCB0ZXN0cyBhcmUgZGlzYWJsZWQsIFJlZ2lzdGVy
UGFyYW1ldGVyaXplZFRlc3RzIGlzCkBAIC03MDQsNyArNzM3LDcgQEAgY2xhc3MgR1RFU1RfQVBJ
XyBVbml0VGVzdEltcGwgewogCiAgIC8vIENsZWFycyB0aGUgcmVzdWx0cyBvZiBhbGwgdGVzdHMs
IGV4Y2VwdCB0aGUgYWQgaG9jIHRlc3RzLgogICB2b2lkIENsZWFyTm9uQWRIb2NUZXN0UmVzdWx0
KCkgewotICAgIEZvckVhY2godGVzdF9jYXNlc18sIFRlc3RDYXNlOjpDbGVhclRlc3RDYXNlUmVz
dWx0KTsKKyAgICBGb3JFYWNoKHRlc3Rfc3VpdGVzXywgVGVzdFN1aXRlOjpDbGVhclRlc3RTdWl0
ZVJlc3VsdCk7CiAgIH0KIAogICAvLyBDbGVhcnMgdGhlIHJlc3VsdHMgb2YgYWQtaG9jIHRlc3Qg
YXNzZXJ0aW9ucy4KQEAgLTcxMyw3ICs3NDYsNyBAQCBjbGFzcyBHVEVTVF9BUElfIFVuaXRUZXN0
SW1wbCB7CiAgIH0KIAogICAvLyBBZGRzIGEgVGVzdFByb3BlcnR5IHRvIHRoZSBjdXJyZW50IFRl
c3RSZXN1bHQgb2JqZWN0IHdoZW4gaW52b2tlZCBpbiBhCi0gIC8vIGNvbnRleHQgb2YgYSB0ZXN0
IG9yIGEgdGVzdCBjYXNlLCBvciB0byB0aGUgZ2xvYmFsIHByb3BlcnR5IHNldC4gSWYgdGhlCisg
IC8vIGNvbnRleHQgb2YgYSB0ZXN0IG9yIGEgdGVzdCBzdWl0ZSwgb3IgdG8gdGhlIGdsb2JhbCBw
cm9wZXJ0eSBzZXQuIElmIHRoZQogICAvLyByZXN1bHQgYWxyZWFkeSBjb250YWlucyBhIHByb3Bl
cnR5IHdpdGggdGhlIHNhbWUga2V5LCB0aGUgdmFsdWUgd2lsbCBiZQogICAvLyB1cGRhdGVkLgog
ICB2b2lkIFJlY29yZFByb3BlcnR5KGNvbnN0IFRlc3RQcm9wZXJ0eSYgdGVzdF9wcm9wZXJ0eSk7
CkBAIC03MjUsNyArNzU4LDcgQEAgY2xhc3MgR1RFU1RfQVBJXyBVbml0VGVzdEltcGwgewogCiAg
IC8vIE1hdGNoZXMgdGhlIGZ1bGwgbmFtZSBvZiBlYWNoIHRlc3QgYWdhaW5zdCB0aGUgdXNlci1z
cGVjaWZpZWQKICAgLy8gZmlsdGVyIHRvIGRlY2lkZSB3aGV0aGVyIHRoZSB0ZXN0IHNob3VsZCBy
dW4sIHRoZW4gcmVjb3JkcyB0aGUKLSAgLy8gcmVzdWx0IGluIGVhY2ggVGVzdENhc2UgYW5kIFRl
c3RJbmZvIG9iamVjdC4KKyAgLy8gcmVzdWx0IGluIGVhY2ggVGVzdFN1aXRlIGFuZCBUZXN0SW5m
byBvYmplY3QuCiAgIC8vIElmIHNoYXJkX3Rlc3RzID09IEhPTk9SX1NIQVJESU5HX1BST1RPQ09M
LCBmdXJ0aGVyIGZpbHRlcnMgdGVzdHMKICAgLy8gYmFzZWQgb24gc2hhcmRpbmcgdmFyaWFibGVz
IGluIHRoZSBlbnZpcm9ubWVudC4KICAgLy8gUmV0dXJucyB0aGUgbnVtYmVyIG9mIHRlc3RzIHRo
YXQgc2hvdWxkIHJ1bi4KQEAgLTczNCw3ICs3NjcsNyBAQCBjbGFzcyBHVEVTVF9BUElfIFVuaXRU
ZXN0SW1wbCB7CiAgIC8vIFByaW50cyB0aGUgbmFtZXMgb2YgdGhlIHRlc3RzIG1hdGNoaW5nIHRo
ZSB1c2VyLXNwZWNpZmllZCBmaWx0ZXIgZmxhZy4KICAgdm9pZCBMaXN0VGVzdHNNYXRjaGluZ0Zp
bHRlcigpOwogCi0gIGNvbnN0IFRlc3RDYXNlKiBjdXJyZW50X3Rlc3RfY2FzZSgpIGNvbnN0IHsg
cmV0dXJuIGN1cnJlbnRfdGVzdF9jYXNlXzsgfQorICBjb25zdCBUZXN0U3VpdGUqIGN1cnJlbnRf
dGVzdF9zdWl0ZSgpIGNvbnN0IHsgcmV0dXJuIGN1cnJlbnRfdGVzdF9zdWl0ZV87IH0KICAgVGVz
dEluZm8qIGN1cnJlbnRfdGVzdF9pbmZvKCkgeyByZXR1cm4gY3VycmVudF90ZXN0X2luZm9fOyB9
CiAgIGNvbnN0IFRlc3RJbmZvKiBjdXJyZW50X3Rlc3RfaW5mbygpIGNvbnN0IHsgcmV0dXJuIGN1
cnJlbnRfdGVzdF9pbmZvXzsgfQogCkBAIC03OTUsMTEgKzgyOCwxMSBAQCBjbGFzcyBHVEVTVF9B
UElfIFVuaXRUZXN0SW1wbCB7CiAgIC8vIEdldHMgdGhlIHJhbmRvbSBudW1iZXIgZ2VuZXJhdG9y
LgogICBpbnRlcm5hbDo6UmFuZG9tKiByYW5kb20oKSB7IHJldHVybiAmcmFuZG9tXzsgfQogCi0g
IC8vIFNodWZmbGVzIGFsbCB0ZXN0IGNhc2VzLCBhbmQgdGhlIHRlc3RzIHdpdGhpbiBlYWNoIHRl
c3QgY2FzZSwKKyAgLy8gU2h1ZmZsZXMgYWxsIHRlc3Qgc3VpdGVzLCBhbmQgdGhlIHRlc3RzIHdp
dGhpbiBlYWNoIHRlc3Qgc3VpdGUsCiAgIC8vIG1ha2luZyBzdXJlIHRoYXQgZGVhdGggdGVzdHMg
YXJlIHN0aWxsIHJ1biBmaXJzdC4KICAgdm9pZCBTaHVmZmxlVGVzdHMoKTsKIAotICAvLyBSZXN0
b3JlcyB0aGUgdGVzdCBjYXNlcyBhbmQgdGVzdHMgdG8gdGhlaXIgb3JkZXIgYmVmb3JlIHRoZSBm
aXJzdCBzaHVmZmxlLgorICAvLyBSZXN0b3JlcyB0aGUgdGVzdCBzdWl0ZXMgYW5kIHRlc3RzIHRv
IHRoZWlyIG9yZGVyIGJlZm9yZSB0aGUgZmlyc3Qgc2h1ZmZsZS4KICAgdm9pZCBVbnNodWZmbGVU
ZXN0cygpOwogCiAgIC8vIFJldHVybnMgdGhlIHZhbHVlIG9mIEdURVNUX0ZMQUcoY2F0Y2hfZXhj
ZXB0aW9ucykgYXQgdGhlIG1vbWVudApAQCAtODM5LDMxICs4NzIsMzcgQEAgY2xhc3MgR1RFU1Rf
QVBJXyBVbml0VGVzdEltcGwgewogICAvLyBiZWZvcmUvYWZ0ZXIgdGhlIHRlc3RzIGFyZSBydW4u
CiAgIHN0ZDo6dmVjdG9yPEVudmlyb25tZW50Kj4gZW52aXJvbm1lbnRzXzsKIAotICAvLyBUaGUg
dmVjdG9yIG9mIFRlc3RDYXNlcyBpbiB0aGVpciBvcmlnaW5hbCBvcmRlci4gIEl0IG93bnMgdGhl
CisgIC8vIFRoZSB2ZWN0b3Igb2YgVGVzdFN1aXRlcyBpbiB0aGVpciBvcmlnaW5hbCBvcmRlci4g
IEl0IG93bnMgdGhlCiAgIC8vIGVsZW1lbnRzIGluIHRoZSB2ZWN0b3IuCi0gIHN0ZDo6dmVjdG9y
PFRlc3RDYXNlKj4gdGVzdF9jYXNlc187CisgIHN0ZDo6dmVjdG9yPFRlc3RTdWl0ZSo+IHRlc3Rf
c3VpdGVzXzsKIAotICAvLyBQcm92aWRlcyBhIGxldmVsIG9mIGluZGlyZWN0aW9uIGZvciB0aGUg
dGVzdCBjYXNlIGxpc3QgdG8gYWxsb3cKLSAgLy8gZWFzeSBzaHVmZmxpbmcgYW5kIHJlc3Rvcmlu
ZyB0aGUgdGVzdCBjYXNlIG9yZGVyLiAgVGhlIGktdGgKLSAgLy8gZWxlbWVudCBvZiB0aGlzIHZl
Y3RvciBpcyB0aGUgaW5kZXggb2YgdGhlIGktdGggdGVzdCBjYXNlIGluIHRoZQorICAvLyBQcm92
aWRlcyBhIGxldmVsIG9mIGluZGlyZWN0aW9uIGZvciB0aGUgdGVzdCBzdWl0ZSBsaXN0IHRvIGFs
bG93CisgIC8vIGVhc3kgc2h1ZmZsaW5nIGFuZCByZXN0b3JpbmcgdGhlIHRlc3Qgc3VpdGUgb3Jk
ZXIuICBUaGUgaS10aAorICAvLyBlbGVtZW50IG9mIHRoaXMgdmVjdG9yIGlzIHRoZSBpbmRleCBv
ZiB0aGUgaS10aCB0ZXN0IHN1aXRlIGluIHRoZQogICAvLyBzaHVmZmxlZCBvcmRlci4KLSAgc3Rk
Ojp2ZWN0b3I8aW50PiB0ZXN0X2Nhc2VfaW5kaWNlc187CisgIHN0ZDo6dmVjdG9yPGludD4gdGVz
dF9zdWl0ZV9pbmRpY2VzXzsKIAogICAvLyBQYXJhbWV0ZXJpemVkVGVzdFJlZ2lzdHJ5IG9iamVj
dCB1c2VkIHRvIHJlZ2lzdGVyIHZhbHVlLXBhcmFtZXRlcml6ZWQKICAgLy8gdGVzdHMuCi0gIGlu
dGVybmFsOjpQYXJhbWV0ZXJpemVkVGVzdENhc2VSZWdpc3RyeSBwYXJhbWV0ZXJpemVkX3Rlc3Rf
cmVnaXN0cnlfOworICBpbnRlcm5hbDo6UGFyYW1ldGVyaXplZFRlc3RTdWl0ZVJlZ2lzdHJ5IHBh
cmFtZXRlcml6ZWRfdGVzdF9yZWdpc3RyeV87CisgIGludGVybmFsOjpUeXBlUGFyYW1ldGVyaXpl
ZFRlc3RTdWl0ZVJlZ2lzdHJ5CisgICAgICB0eXBlX3BhcmFtZXRlcml6ZWRfdGVzdF9yZWdpc3Ry
eV87CisKKyAgLy8gVGhlIHNldCBob2xkaW5nIHRoZSBuYW1lIG9mIHBhcmFtZXRlcml6ZWQKKyAg
Ly8gdGVzdCBzdWl0ZXMgdGhhdCBtYXkgZ28gdW5pbnN0YW50aWF0ZWQuCisgIHN0ZDo6c2V0PHN0
ZDo6c3RyaW5nPiBpZ25vcmVkX3BhcmFtZXRlcml6ZWRfdGVzdF9zdWl0ZXNfOwogCiAgIC8vIElu
ZGljYXRlcyB3aGV0aGVyIFJlZ2lzdGVyUGFyYW1ldGVyaXplZFRlc3RzKCkgaGFzIGJlZW4gY2Fs
bGVkIGFscmVhZHkuCiAgIGJvb2wgcGFyYW1ldGVyaXplZF90ZXN0c19yZWdpc3RlcmVkXzsKIAot
ICAvLyBJbmRleCBvZiB0aGUgbGFzdCBkZWF0aCB0ZXN0IGNhc2UgcmVnaXN0ZXJlZC4gIEluaXRp
YWxseSAtMS4KLSAgaW50IGxhc3RfZGVhdGhfdGVzdF9jYXNlXzsKKyAgLy8gSW5kZXggb2YgdGhl
IGxhc3QgZGVhdGggdGVzdCBzdWl0ZSByZWdpc3RlcmVkLiAgSW5pdGlhbGx5IC0xLgorICBpbnQg
bGFzdF9kZWF0aF90ZXN0X3N1aXRlXzsKIAotICAvLyBUaGlzIHBvaW50cyB0byB0aGUgVGVzdENh
c2UgZm9yIHRoZSBjdXJyZW50bHkgcnVubmluZyB0ZXN0LiAgSXQKLSAgLy8gY2hhbmdlcyBhcyBH
b29nbGUgVGVzdCBnb2VzIHRocm91Z2ggb25lIHRlc3QgY2FzZSBhZnRlciBhbm90aGVyLgorICAv
LyBUaGlzIHBvaW50cyB0byB0aGUgVGVzdFN1aXRlIGZvciB0aGUgY3VycmVudGx5IHJ1bm5pbmcg
dGVzdC4gIEl0CisgIC8vIGNoYW5nZXMgYXMgR29vZ2xlIFRlc3QgZ29lcyB0aHJvdWdoIG9uZSB0
ZXN0IHN1aXRlIGFmdGVyIGFub3RoZXIuCiAgIC8vIFdoZW4gbm8gdGVzdCBpcyBydW5uaW5nLCB0
aGlzIGlzIHNldCB0byBOVUxMIGFuZCBHb29nbGUgVGVzdAogICAvLyBzdG9yZXMgYXNzZXJ0aW9u
IHJlc3VsdHMgaW4gYWRfaG9jX3Rlc3RfcmVzdWx0Xy4gIEluaXRpYWxseSBOVUxMLgotICBUZXN0
Q2FzZSogY3VycmVudF90ZXN0X2Nhc2VfOworICBUZXN0U3VpdGUqIGN1cnJlbnRfdGVzdF9zdWl0
ZV87CiAKICAgLy8gVGhpcyBwb2ludHMgdG8gdGhlIFRlc3RJbmZvIGZvciB0aGUgY3VycmVudGx5
IHJ1bm5pbmcgdGVzdC4gIEl0CiAgIC8vIGNoYW5nZXMgYXMgR29vZ2xlIFRlc3QgZ29lcyB0aHJv
dWdoIG9uZSB0ZXN0IGFmdGVyIGFub3RoZXIuICBXaGVuCkBAIC04OTEsNyArOTMwLDcgQEAgY2xh
c3MgR1RFU1RfQVBJXyBVbml0VGVzdEltcGwgewogICAvLyBkZXNpcmVkLgogICBPc1N0YWNrVHJh
Y2VHZXR0ZXJJbnRlcmZhY2UqIG9zX3N0YWNrX3RyYWNlX2dldHRlcl87CiAKLSAgLy8gVHJ1ZSBp
ZmYgUG9zdEZsYWdQYXJzaW5nSW5pdCgpIGhhcyBiZWVuIGNhbGxlZC4KKyAgLy8gVHJ1ZSBpZiBh
bmQgb25seSBpZiBQb3N0RmxhZ1BhcnNpbmdJbml0KCkgaGFzIGJlZW4gY2FsbGVkLgogICBib29s
IHBvc3RfZmxhZ19wYXJzZV9pbml0X3BlcmZvcm1lZF87CiAKICAgLy8gVGhlIHJhbmRvbSBudW1i
ZXIgc2VlZCB1c2VkIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIHRlc3QgcnVuLgpAQCAtOTEwLDgg
Kzk0OSw4IEBAIGNsYXNzIEdURVNUX0FQSV8gVW5pdFRlc3RJbXBsIHsKICNpZiBHVEVTVF9IQVNf
REVBVEhfVEVTVAogICAvLyBUaGUgZGVjb21wb3NlZCBjb21wb25lbnRzIG9mIHRoZSBndGVzdF9p
bnRlcm5hbF9ydW5fZGVhdGhfdGVzdCBmbGFnLAogICAvLyBwYXJzZWQgd2hlbiBSVU5fQUxMX1RF
U1RTIGlzIGNhbGxlZC4KLSAgaW50ZXJuYWw6OnNjb3BlZF9wdHI8SW50ZXJuYWxSdW5EZWF0aFRl
c3RGbGFnPiBpbnRlcm5hbF9ydW5fZGVhdGhfdGVzdF9mbGFnXzsKLSAgaW50ZXJuYWw6OnNjb3Bl
ZF9wdHI8aW50ZXJuYWw6OkRlYXRoVGVzdEZhY3Rvcnk+IGRlYXRoX3Rlc3RfZmFjdG9yeV87Cisg
IHN0ZDo6dW5pcXVlX3B0cjxJbnRlcm5hbFJ1bkRlYXRoVGVzdEZsYWc+IGludGVybmFsX3J1bl9k
ZWF0aF90ZXN0X2ZsYWdfOworICBzdGQ6OnVuaXF1ZV9wdHI8aW50ZXJuYWw6OkRlYXRoVGVzdEZh
Y3Rvcnk+IGRlYXRoX3Rlc3RfZmFjdG9yeV87CiAjZW5kaWYgIC8vIEdURVNUX0hBU19ERUFUSF9U
RVNUCiAKICAgLy8gQSBwZXItdGhyZWFkIHN0YWNrIG9mIHRyYWNlcyBjcmVhdGVkIGJ5IHRoZSBT
Q09QRURfVFJBQ0UoKSBtYWNyby4KQEAgLTk3OCwyNCArMTAxNywxMSBAQCBib29sIFBhcnNlTmF0
dXJhbE51bWJlcihjb25zdCA6OnN0ZDo6c3RyaW5nJiBzdHIsIEludGVnZXIqIG51bWJlcikgewog
ICBjaGFyKiBlbmQ7CiAgIC8vIEJpZ2dlc3RDb252ZXJ0aWJsZSBpcyB0aGUgbGFyZ2VzdCBpbnRl
Z2VyIHR5cGUgdGhhdCBzeXN0ZW0tcHJvdmlkZWQKICAgLy8gc3RyaW5nLXRvLW51bWJlciBjb252
ZXJzaW9uIHJvdXRpbmVzIGNhbiByZXR1cm4uCisgIHVzaW5nIEJpZ2dlc3RDb252ZXJ0aWJsZSA9
IHVuc2lnbmVkIGxvbmcgbG9uZzsgIC8vIE5PTElOVAogCi0jIGlmIEdURVNUX09TX1dJTkRPV1Mg
JiYgIWRlZmluZWQoX19HTlVDX18pCi0KLSAgLy8gTVNWQyBhbmQgQysrIEJ1aWxkZXIgZGVmaW5l
IF9faW50NjQgaW5zdGVhZCBvZiB0aGUgc3RhbmRhcmQgbG9uZyBsb25nLgotICB0eXBlZGVmIHVu
c2lnbmVkIF9faW50NjQgQmlnZ2VzdENvbnZlcnRpYmxlOwotICBjb25zdCBCaWdnZXN0Q29udmVy
dGlibGUgcGFyc2VkID0gX3N0cnRvdWk2NChzdHIuY19zdHIoKSwgJmVuZCwgMTApOwotCi0jIGVs
c2UKLQotICB0eXBlZGVmIHVuc2lnbmVkIGxvbmcgbG9uZyBCaWdnZXN0Q29udmVydGlibGU7ICAv
LyBOT0xJTlQKLSAgY29uc3QgQmlnZ2VzdENvbnZlcnRpYmxlIHBhcnNlZCA9IHN0cnRvdWxsKHN0
ci5jX3N0cigpLCAmZW5kLCAxMCk7Ci0KLSMgZW5kaWYgIC8vIEdURVNUX09TX1dJTkRPV1MgJiYg
IWRlZmluZWQoX19HTlVDX18pCi0KKyAgY29uc3QgQmlnZ2VzdENvbnZlcnRpYmxlIHBhcnNlZCA9
IHN0cnRvdWxsKHN0ci5jX3N0cigpLCAmZW5kLCAxMCk7ICAvLyBOT0xJTlQKICAgY29uc3QgYm9v
bCBwYXJzZV9zdWNjZXNzID0gKmVuZCA9PSAnXDAnICYmIGVycm5vID09IDA7CiAKLSAgLy8gRklY
TUU6IENvbnZlcnQgdGhpcyB0byBjb21waWxlIHRpbWUgYXNzZXJ0aW9uIHdoZW4gaXQgaXMKLSAg
Ly8gYXZhaWxhYmxlLgogICBHVEVTVF9DSEVDS18oc2l6ZW9mKEludGVnZXIpIDw9IHNpemVvZihw
YXJzZWQpKTsKIAogICBjb25zdCBJbnRlZ2VyIHJlc3VsdCA9IHN0YXRpY19jYXN0PEludGVnZXI+
KHBhcnNlZCk7CkBAIC0xMDU5LDE4ICsxMDg1LDE4IEBAIGNsYXNzIFN0cmVhbWluZ0xpc3RlbmVy
IDogcHVibGljIEVtcHR5VGVzdEV2ZW50TGlzdGVuZXIgewogICAgICAgTWFrZUNvbm5lY3Rpb24o
KTsKICAgICB9CiAKLSAgICB2aXJ0dWFsIH5Tb2NrZXRXcml0ZXIoKSB7CisgICAgflNvY2tldFdy
aXRlcigpIG92ZXJyaWRlIHsKICAgICAgIGlmIChzb2NrZmRfICE9IC0xKQogICAgICAgICBDbG9z
ZUNvbm5lY3Rpb24oKTsKICAgICB9CiAKICAgICAvLyBTZW5kcyBhIHN0cmluZyB0byB0aGUgc29j
a2V0LgotICAgIHZpcnR1YWwgdm9pZCBTZW5kKGNvbnN0IHN0ZDo6c3RyaW5nJiBtZXNzYWdlKSB7
CisgICAgdm9pZCBTZW5kKGNvbnN0IHN0ZDo6c3RyaW5nJiBtZXNzYWdlKSBvdmVycmlkZSB7CiAg
ICAgICBHVEVTVF9DSEVDS18oc29ja2ZkXyAhPSAtMSkKICAgICAgICAgICA8PCAiU2VuZCgpIGNh
biBiZSBjYWxsZWQgb25seSB3aGVuIHRoZXJlIGlzIGEgY29ubmVjdGlvbi4iOwogCi0gICAgICBj
b25zdCBpbnQgbGVuID0gc3RhdGljX2Nhc3Q8aW50PihtZXNzYWdlLmxlbmd0aCgpKTsKLSAgICAg
IGlmICh3cml0ZShzb2NrZmRfLCBtZXNzYWdlLmNfc3RyKCksIGxlbikgIT0gbGVuKSB7CisgICAg
ICBjb25zdCBhdXRvIGxlbiA9IHN0YXRpY19jYXN0PHNpemVfdD4obWVzc2FnZS5sZW5ndGgoKSk7
CisgICAgICBpZiAod3JpdGUoc29ja2ZkXywgbWVzc2FnZS5jX3N0cigpLCBsZW4pICE9IHN0YXRp
Y19jYXN0PHNzaXplX3Q+KGxlbikpIHsKICAgICAgICAgR1RFU1RfTE9HXyhXQVJOSU5HKQogICAg
ICAgICAgICAgPDwgInN0cmVhbV9yZXN1bHRfdG86IGZhaWxlZCB0byBzdHJlYW0gdG8gIgogICAg
ICAgICAgICAgPDwgaG9zdF9uYW1lXyA8PCAiOiIgPDwgcG9ydF9udW1fOwpAQCAtMTA4Miw3ICsx
MTA4LDcgQEAgY2xhc3MgU3RyZWFtaW5nTGlzdGVuZXIgOiBwdWJsaWMgRW1wdHlUZXN0RXZlbnRM
aXN0ZW5lciB7CiAgICAgdm9pZCBNYWtlQ29ubmVjdGlvbigpOwogCiAgICAgLy8gQ2xvc2VzIHRo
ZSBzb2NrZXQuCi0gICAgdm9pZCBDbG9zZUNvbm5lY3Rpb24oKSB7CisgICAgdm9pZCBDbG9zZUNv
bm5lY3Rpb24oKSBvdmVycmlkZSB7CiAgICAgICBHVEVTVF9DSEVDS18oc29ja2ZkXyAhPSAtMSkK
ICAgICAgICAgICA8PCAiQ2xvc2VDb25uZWN0aW9uKCkgY2FuIGJlIGNhbGxlZCBvbmx5IHdoZW4g
dGhlcmUgaXMgYSBjb25uZWN0aW9uLiI7CiAKQEAgLTExMDgsMTEgKzExMzQsMTEgQEAgY2xhc3Mg
U3RyZWFtaW5nTGlzdGVuZXIgOiBwdWJsaWMgRW1wdHlUZXN0RXZlbnRMaXN0ZW5lciB7CiAgIGV4
cGxpY2l0IFN0cmVhbWluZ0xpc3RlbmVyKEFic3RyYWN0U29ja2V0V3JpdGVyKiBzb2NrZXRfd3Jp
dGVyKQogICAgICAgOiBzb2NrZXRfd3JpdGVyXyhzb2NrZXRfd3JpdGVyKSB7IFN0YXJ0KCk7IH0K
IAotICB2b2lkIE9uVGVzdFByb2dyYW1TdGFydChjb25zdCBVbml0VGVzdCYgLyogdW5pdF90ZXN0
ICovKSB7CisgIHZvaWQgT25UZXN0UHJvZ3JhbVN0YXJ0KGNvbnN0IFVuaXRUZXN0JiAvKiB1bml0
X3Rlc3QgKi8pIG92ZXJyaWRlIHsKICAgICBTZW5kTG4oImV2ZW50PVRlc3RQcm9ncmFtU3RhcnQi
KTsKICAgfQogCi0gIHZvaWQgT25UZXN0UHJvZ3JhbUVuZChjb25zdCBVbml0VGVzdCYgdW5pdF90
ZXN0KSB7CisgIHZvaWQgT25UZXN0UHJvZ3JhbUVuZChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0
KSBvdmVycmlkZSB7CiAgICAgLy8gTm90ZSB0aGF0IEdvb2dsZSBUZXN0IGN1cnJlbnQgb25seSBy
ZXBvcnQgZWxhcHNlZCB0aW1lIGZvciBlYWNoCiAgICAgLy8gdGVzdCBpdGVyYXRpb24sIG5vdCBm
b3IgdGhlIGVudGlyZSB0ZXN0IHByb2dyYW0uCiAgICAgU2VuZExuKCJldmVudD1UZXN0UHJvZ3Jh
bUVuZCZwYXNzZWQ9IiArIEZvcm1hdEJvb2wodW5pdF90ZXN0LlBhc3NlZCgpKSk7CkBAIC0xMTIx
LDQyICsxMTQ3LDQ3IEBAIGNsYXNzIFN0cmVhbWluZ0xpc3RlbmVyIDogcHVibGljIEVtcHR5VGVz
dEV2ZW50TGlzdGVuZXIgewogICAgIHNvY2tldF93cml0ZXJfLT5DbG9zZUNvbm5lY3Rpb24oKTsK
ICAgfQogCi0gIHZvaWQgT25UZXN0SXRlcmF0aW9uU3RhcnQoY29uc3QgVW5pdFRlc3QmIC8qIHVu
aXRfdGVzdCAqLywgaW50IGl0ZXJhdGlvbikgeworICB2b2lkIE9uVGVzdEl0ZXJhdGlvblN0YXJ0
KGNvbnN0IFVuaXRUZXN0JiAvKiB1bml0X3Rlc3QgKi8sCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50IGl0ZXJhdGlvbikgb3ZlcnJpZGUgewogICAgIFNlbmRMbigiZXZlbnQ9VGVzdEl0
ZXJhdGlvblN0YXJ0Jml0ZXJhdGlvbj0iICsKICAgICAgICAgICAgU3RyZWFtYWJsZVRvU3RyaW5n
KGl0ZXJhdGlvbikpOwogICB9CiAKLSAgdm9pZCBPblRlc3RJdGVyYXRpb25FbmQoY29uc3QgVW5p
dFRlc3QmIHVuaXRfdGVzdCwgaW50IC8qIGl0ZXJhdGlvbiAqLykgeworICB2b2lkIE9uVGVzdEl0
ZXJhdGlvbkVuZChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbnQgLyogaXRlcmF0aW9uICovKSBvdmVycmlkZSB7CiAgICAgU2VuZExuKCJldmVu
dD1UZXN0SXRlcmF0aW9uRW5kJnBhc3NlZD0iICsKICAgICAgICAgICAgRm9ybWF0Qm9vbCh1bml0
X3Rlc3QuUGFzc2VkKCkpICsgIiZlbGFwc2VkX3RpbWU9IiArCiAgICAgICAgICAgIFN0cmVhbWFi
bGVUb1N0cmluZyh1bml0X3Rlc3QuZWxhcHNlZF90aW1lKCkpICsgIm1zIik7CiAgIH0KIAotICB2
b2lkIE9uVGVzdENhc2VTdGFydChjb25zdCBUZXN0Q2FzZSYgdGVzdF9jYXNlKSB7CisgIC8vIE5v
dGUgdGhhdCAiZXZlbnQ9VGVzdENhc2VTdGFydCIgaXMgYSB3aXJlIGZvcm1hdCBhbmQgaGFzIHRv
IHJlbWFpbgorICAvLyAiY2FzZSIgZm9yIGNvbXBhdGliaWx0eQorICB2b2lkIE9uVGVzdENhc2VT
dGFydChjb25zdCBUZXN0Q2FzZSYgdGVzdF9jYXNlKSBvdmVycmlkZSB7CiAgICAgU2VuZExuKHN0
ZDo6c3RyaW5nKCJldmVudD1UZXN0Q2FzZVN0YXJ0Jm5hbWU9IikgKyB0ZXN0X2Nhc2UubmFtZSgp
KTsKICAgfQogCi0gIHZvaWQgT25UZXN0Q2FzZUVuZChjb25zdCBUZXN0Q2FzZSYgdGVzdF9jYXNl
KSB7Ci0gICAgU2VuZExuKCJldmVudD1UZXN0Q2FzZUVuZCZwYXNzZWQ9IiArIEZvcm1hdEJvb2wo
dGVzdF9jYXNlLlBhc3NlZCgpKQotICAgICAgICAgICArICImZWxhcHNlZF90aW1lPSIgKyBTdHJl
YW1hYmxlVG9TdHJpbmcodGVzdF9jYXNlLmVsYXBzZWRfdGltZSgpKQotICAgICAgICAgICArICJt
cyIpOworICAvLyBOb3RlIHRoYXQgImV2ZW50PVRlc3RDYXNlRW5kIiBpcyBhIHdpcmUgZm9ybWF0
IGFuZCBoYXMgdG8gcmVtYWluCisgIC8vICJjYXNlIiBmb3IgY29tcGF0aWJpbHR5CisgIHZvaWQg
T25UZXN0Q2FzZUVuZChjb25zdCBUZXN0Q2FzZSYgdGVzdF9jYXNlKSBvdmVycmlkZSB7CisgICAg
U2VuZExuKCJldmVudD1UZXN0Q2FzZUVuZCZwYXNzZWQ9IiArIEZvcm1hdEJvb2wodGVzdF9jYXNl
LlBhc3NlZCgpKSArCisgICAgICAgICAgICImZWxhcHNlZF90aW1lPSIgKyBTdHJlYW1hYmxlVG9T
dHJpbmcodGVzdF9jYXNlLmVsYXBzZWRfdGltZSgpKSArCisgICAgICAgICAgICJtcyIpOwogICB9
CiAKLSAgdm9pZCBPblRlc3RTdGFydChjb25zdCBUZXN0SW5mbyYgdGVzdF9pbmZvKSB7CisgIHZv
aWQgT25UZXN0U3RhcnQoY29uc3QgVGVzdEluZm8mIHRlc3RfaW5mbykgb3ZlcnJpZGUgewogICAg
IFNlbmRMbihzdGQ6OnN0cmluZygiZXZlbnQ9VGVzdFN0YXJ0Jm5hbWU9IikgKyB0ZXN0X2luZm8u
bmFtZSgpKTsKICAgfQogCi0gIHZvaWQgT25UZXN0RW5kKGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2lu
Zm8pIHsKKyAgdm9pZCBPblRlc3RFbmQoY29uc3QgVGVzdEluZm8mIHRlc3RfaW5mbykgb3ZlcnJp
ZGUgewogICAgIFNlbmRMbigiZXZlbnQ9VGVzdEVuZCZwYXNzZWQ9IiArCiAgICAgICAgICAgIEZv
cm1hdEJvb2woKHRlc3RfaW5mby5yZXN1bHQoKSktPlBhc3NlZCgpKSArCiAgICAgICAgICAgICIm
ZWxhcHNlZF90aW1lPSIgKwogICAgICAgICAgICBTdHJlYW1hYmxlVG9TdHJpbmcoKHRlc3RfaW5m
by5yZXN1bHQoKSktPmVsYXBzZWRfdGltZSgpKSArICJtcyIpOwogICB9CiAKLSAgdm9pZCBPblRl
c3RQYXJ0UmVzdWx0KGNvbnN0IFRlc3RQYXJ0UmVzdWx0JiB0ZXN0X3BhcnRfcmVzdWx0KSB7Cisg
IHZvaWQgT25UZXN0UGFydFJlc3VsdChjb25zdCBUZXN0UGFydFJlc3VsdCYgdGVzdF9wYXJ0X3Jl
c3VsdCkgb3ZlcnJpZGUgewogICAgIGNvbnN0IGNoYXIqIGZpbGVfbmFtZSA9IHRlc3RfcGFydF9y
ZXN1bHQuZmlsZV9uYW1lKCk7Ci0gICAgaWYgKGZpbGVfbmFtZSA9PSBOVUxMKQotICAgICAgZmls
ZV9uYW1lID0gIiI7CisgICAgaWYgKGZpbGVfbmFtZSA9PSBudWxscHRyKSBmaWxlX25hbWUgPSAi
IjsKICAgICBTZW5kTG4oImV2ZW50PVRlc3RQYXJ0UmVzdWx0JmZpbGU9IiArIFVybEVuY29kZShm
aWxlX25hbWUpICsKICAgICAgICAgICAgIiZsaW5lPSIgKyBTdHJlYW1hYmxlVG9TdHJpbmcodGVz
dF9wYXJ0X3Jlc3VsdC5saW5lX251bWJlcigpKSArCiAgICAgICAgICAgICImbWVzc2FnZT0iICsg
VXJsRW5jb2RlKHRlc3RfcGFydF9yZXN1bHQubWVzc2FnZSgpKSk7CkBAIC0xMTcyLDcgKzEyMDMs
NyBAQCBjbGFzcyBTdHJlYW1pbmdMaXN0ZW5lciA6IHB1YmxpYyBFbXB0eVRlc3RFdmVudExpc3Rl
bmVyIHsKIAogICBzdGQ6OnN0cmluZyBGb3JtYXRCb29sKGJvb2wgdmFsdWUpIHsgcmV0dXJuIHZh
bHVlID8gIjEiIDogIjAiOyB9CiAKLSAgY29uc3Qgc2NvcGVkX3B0cjxBYnN0cmFjdFNvY2tldFdy
aXRlcj4gc29ja2V0X3dyaXRlcl87CisgIGNvbnN0IHN0ZDo6dW5pcXVlX3B0cjxBYnN0cmFjdFNv
Y2tldFdyaXRlcj4gc29ja2V0X3dyaXRlcl87CiAKICAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRf
QVNTSUdOXyhTdHJlYW1pbmdMaXN0ZW5lcik7CiB9OyAgLy8gY2xhc3MgU3RyZWFtaW5nTGlzdGVu
ZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvc3Jj
L2d0ZXN0LW1hdGNoZXJzLmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3Ny
Yy9zcmMvZ3Rlc3QtbWF0Y2hlcnMuY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjUxMDRlYmFiMWJhOWFmMDYzMjdm
Yzk0YzBhMDM4YjY4MDZkNDIwNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRf
cGFydHkvZ29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0LW1hdGNoZXJzLmNjCkBAIC0wLDAgKzEsOTcg
QEAKKy8vIENvcHlyaWdodCAyMDA3LCBHb29nbGUgSW5jLgorLy8gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKy8vCisvLyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKy8vIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKy8vIG1ldDoKKy8vCisvLyAg
ICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorLy8gbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorLy8gICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorLy8gY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorLy8gaW4gdGhl
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQor
Ly8gZGlzdHJpYnV0aW9uLgorLy8gICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5j
LiBub3IgdGhlIG5hbWVzIG9mIGl0cworLy8gY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVu
ZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKy8vIHRoaXMgc29mdHdhcmUg
d2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisvLworLy8gVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJV
VE9SUworLy8gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QKKy8vIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorLy8gQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKy8vIE9X
TkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLAorLy8gU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVAorLy8gTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisvLyBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
Ky8vIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQKKy8vIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorLy8gT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKworLy8gVGhl
IEdvb2dsZSBDKysgVGVzdGluZyBhbmQgTW9ja2luZyBGcmFtZXdvcmsgKEdvb2dsZSBUZXN0KQor
Ly8KKy8vIFRoaXMgZmlsZSBpbXBsZW1lbnRzIGp1c3QgZW5vdWdoIG9mIHRoZSBtYXRjaGVyIGlu
dGVyZmFjZSB0byBhbGxvdworLy8gRVhQRUNUX0RFQVRIIGFuZCBmcmllbmRzIHRvIGFjY2VwdCBh
IG1hdGNoZXIgYXJndW1lbnQuCisKKyNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9ndGVzdC1pbnRl
cm5hbC5oIgorI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQuaCIKKyNpbmNsdWRl
ICJndGVzdC9ndGVzdC1tYXRjaGVycy5oIgorCisjaW5jbHVkZSA8c3RyaW5nPgorCituYW1lc3Bh
Y2UgdGVzdGluZyB7CisKKy8vIENvbnN0cnVjdHMgYSBtYXRjaGVyIHRoYXQgbWF0Y2hlcyBhIGNv
bnN0IHN0ZDo6c3RyaW5nJiB3aG9zZSB2YWx1ZSBpcworLy8gZXF1YWwgdG8gcy4KK01hdGNoZXI8
Y29uc3Qgc3RkOjpzdHJpbmcmPjo6TWF0Y2hlcihjb25zdCBzdGQ6OnN0cmluZyYgcykgeyAqdGhp
cyA9IEVxKHMpOyB9CisKKy8vIENvbnN0cnVjdHMgYSBtYXRjaGVyIHRoYXQgbWF0Y2hlcyBhIGNv
bnN0IHN0ZDo6c3RyaW5nJiB3aG9zZSB2YWx1ZSBpcworLy8gZXF1YWwgdG8gcy4KK01hdGNoZXI8
Y29uc3Qgc3RkOjpzdHJpbmcmPjo6TWF0Y2hlcihjb25zdCBjaGFyKiBzKSB7CisgICp0aGlzID0g
RXEoc3RkOjpzdHJpbmcocykpOworfQorCisvLyBDb25zdHJ1Y3RzIGEgbWF0Y2hlciB0aGF0IG1h
dGNoZXMgYSBzdGQ6OnN0cmluZyB3aG9zZSB2YWx1ZSBpcyBlcXVhbCB0bworLy8gcy4KK01hdGNo
ZXI8c3RkOjpzdHJpbmc+OjpNYXRjaGVyKGNvbnN0IHN0ZDo6c3RyaW5nJiBzKSB7ICp0aGlzID0g
RXEocyk7IH0KKworLy8gQ29uc3RydWN0cyBhIG1hdGNoZXIgdGhhdCBtYXRjaGVzIGEgc3RkOjpz
dHJpbmcgd2hvc2UgdmFsdWUgaXMgZXF1YWwgdG8KKy8vIHMuCitNYXRjaGVyPHN0ZDo6c3RyaW5n
Pjo6TWF0Y2hlcihjb25zdCBjaGFyKiBzKSB7ICp0aGlzID0gRXEoc3RkOjpzdHJpbmcocykpOyB9
CisKKyNpZiBHVEVTVF9JTlRFUk5BTF9IQVNfU1RSSU5HX1ZJRVcKKy8vIENvbnN0cnVjdHMgYSBt
YXRjaGVyIHRoYXQgbWF0Y2hlcyBhIGNvbnN0IFN0cmluZ1ZpZXcmIHdob3NlIHZhbHVlIGlzCisv
LyBlcXVhbCB0byBzLgorTWF0Y2hlcjxjb25zdCBpbnRlcm5hbDo6U3RyaW5nVmlldyY+OjpNYXRj
aGVyKGNvbnN0IHN0ZDo6c3RyaW5nJiBzKSB7CisgICp0aGlzID0gRXEocyk7Cit9CisKKy8vIENv
bnN0cnVjdHMgYSBtYXRjaGVyIHRoYXQgbWF0Y2hlcyBhIGNvbnN0IFN0cmluZ1ZpZXcmIHdob3Nl
IHZhbHVlIGlzCisvLyBlcXVhbCB0byBzLgorTWF0Y2hlcjxjb25zdCBpbnRlcm5hbDo6U3RyaW5n
VmlldyY+OjpNYXRjaGVyKGNvbnN0IGNoYXIqIHMpIHsKKyAgKnRoaXMgPSBFcShzdGQ6OnN0cmlu
ZyhzKSk7Cit9CisKKy8vIENvbnN0cnVjdHMgYSBtYXRjaGVyIHRoYXQgbWF0Y2hlcyBhIGNvbnN0
IFN0cmluZ1ZpZXcmIHdob3NlIHZhbHVlIGlzCisvLyBlcXVhbCB0byBzLgorTWF0Y2hlcjxjb25z
dCBpbnRlcm5hbDo6U3RyaW5nVmlldyY+OjpNYXRjaGVyKGludGVybmFsOjpTdHJpbmdWaWV3IHMp
IHsKKyAgKnRoaXMgPSBFcShzdGQ6OnN0cmluZyhzKSk7Cit9CisKKy8vIENvbnN0cnVjdHMgYSBt
YXRjaGVyIHRoYXQgbWF0Y2hlcyBhIFN0cmluZ1ZpZXcgd2hvc2UgdmFsdWUgaXMgZXF1YWwgdG8K
Ky8vIHMuCitNYXRjaGVyPGludGVybmFsOjpTdHJpbmdWaWV3Pjo6TWF0Y2hlcihjb25zdCBzdGQ6
OnN0cmluZyYgcykgeyAqdGhpcyA9IEVxKHMpOyB9CisKKy8vIENvbnN0cnVjdHMgYSBtYXRjaGVy
IHRoYXQgbWF0Y2hlcyBhIFN0cmluZ1ZpZXcgd2hvc2UgdmFsdWUgaXMgZXF1YWwgdG8KKy8vIHMu
CitNYXRjaGVyPGludGVybmFsOjpTdHJpbmdWaWV3Pjo6TWF0Y2hlcihjb25zdCBjaGFyKiBzKSB7
CisgICp0aGlzID0gRXEoc3RkOjpzdHJpbmcocykpOworfQorCisvLyBDb25zdHJ1Y3RzIGEgbWF0
Y2hlciB0aGF0IG1hdGNoZXMgYSBTdHJpbmdWaWV3IHdob3NlIHZhbHVlIGlzIGVxdWFsIHRvCisv
LyBzLgorTWF0Y2hlcjxpbnRlcm5hbDo6U3RyaW5nVmlldz46Ok1hdGNoZXIoaW50ZXJuYWw6OlN0
cmluZ1ZpZXcgcykgeworICAqdGhpcyA9IEVxKHN0ZDo6c3RyaW5nKHMpKTsKK30KKyNlbmRpZiAg
Ly8gR1RFU1RfSU5URVJOQUxfSEFTX1NUUklOR19WSUVXCisKK30gIC8vIG5hbWVzcGFjZSB0ZXN0
aW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL3Ny
Yy9ndGVzdC1wb3J0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9z
cmMvZ3Rlc3QtcG9ydC5jYwppbmRleCBmZWNiNWQxMWMyMTI5NmE5MTgxYTExMjgwMjI2MDY3YjY0
M2VkZDA1Li5hMDVjNTBhMzliNjk1MzE3ZmRjNmZmNzRhMWE2OTllNGYxZjZiNmZiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL3NyYy9ndGVzdC1wb3J0
LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0
LXBvcnQuY2MKQEAgLTMxLDE2ICszMSwyMSBAQAogI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0
ZXN0LXBvcnQuaCIKIAogI2luY2x1ZGUgPGxpbWl0cy5oPgotI2luY2x1ZGUgPHN0ZGxpYi5oPgog
I2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8c3RyaW5n
Lmg+CisjaW5jbHVkZSA8Y3N0ZGludD4KICNpbmNsdWRlIDxmc3RyZWFtPgorI2luY2x1ZGUgPG1l
bW9yeT4KIAogI2lmIEdURVNUX09TX1dJTkRPV1MKICMgaW5jbHVkZSA8d2luZG93cy5oPgogIyBp
bmNsdWRlIDxpby5oPgogIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgogIyBpbmNsdWRlIDxtYXA+ICAv
LyBVc2VkIGluIFRocmVhZExvY2FsLgorIyBpZmRlZiBfTVNDX1ZFUgorIyAgaW5jbHVkZSA8Y3J0
ZGJnLmg+CisjIGVuZGlmICAvLyBfTVNDX1ZFUgogI2Vsc2UKICMgaW5jbHVkZSA8dW5pc3RkLmg+
CiAjZW5kaWYgIC8vIEdURVNUX09TX1dJTkRPV1MKQEAgLTUxLDYgKzU2LDE0IEBACiAjIGluY2x1
ZGUgPG1hY2gvdm1fbWFwLmg+CiAjZW5kaWYgIC8vIEdURVNUX09TX01BQwogCisjaWYgR1RFU1Rf
T1NfRFJBR09ORkxZIHx8IEdURVNUX09TX0ZSRUVCU0QgfHwgR1RFU1RfT1NfR05VX0tGUkVFQlNE
IHx8IFwKKyAgICBHVEVTVF9PU19ORVRCU0QgfHwgR1RFU1RfT1NfT1BFTkJTRAorIyBpbmNsdWRl
IDxzeXMvc3lzY3RsLmg+CisjIGlmIEdURVNUX09TX0RSQUdPTkZMWSB8fCBHVEVTVF9PU19GUkVF
QlNEIHx8IEdURVNUX09TX0dOVV9LRlJFRUJTRAorIyAgaW5jbHVkZSA8c3lzL3VzZXIuaD4KKyMg
ZW5kaWYKKyNlbmRpZgorCiAjaWYgR1RFU1RfT1NfUU5YCiAjIGluY2x1ZGUgPGRldmN0bC5oPgog
IyBpbmNsdWRlIDxmY250bC5oPgpAQCAtMTA1LDcgKzExOCw3IEBAIFQgUmVhZFByb2NGaWxlRmll
bGQoY29uc3Qgc3RkOjpzdHJpbmcmIGZpbGVuYW1lLCBpbnQgZmllbGQpIHsKIHNpemVfdCBHZXRU
aHJlYWRDb3VudCgpIHsKICAgY29uc3Qgc3RkOjpzdHJpbmcgZmlsZW5hbWUgPQogICAgICAgKE1l
c3NhZ2UoKSA8PCAiL3Byb2MvIiA8PCBnZXRwaWQoKSA8PCAiL3N0YXQiKS5HZXRTdHJpbmcoKTsK
LSAgcmV0dXJuIFJlYWRQcm9jRmlsZUZpZWxkPGludD4oZmlsZW5hbWUsIDE5KTsKKyAgcmV0dXJu
IFJlYWRQcm9jRmlsZUZpZWxkPHNpemVfdD4oZmlsZW5hbWUsIDE5KTsKIH0KIAogI2VsaWYgR1RF
U1RfT1NfTUFDCkBAIC0xMjcsNiArMTQwLDgxIEBAIHNpemVfdCBHZXRUaHJlYWRDb3VudCgpIHsK
ICAgfQogfQogCisjZWxpZiBHVEVTVF9PU19EUkFHT05GTFkgfHwgR1RFU1RfT1NfRlJFRUJTRCB8
fCBHVEVTVF9PU19HTlVfS0ZSRUVCU0QgfHwgXAorICAgICAgR1RFU1RfT1NfTkVUQlNECisKKyNp
ZiBHVEVTVF9PU19ORVRCU0QKKyN1bmRlZiBLRVJOX1BST0MKKyNkZWZpbmUgS0VSTl9QUk9DIEtF
Uk5fUFJPQzIKKyNkZWZpbmUga2luZm9fcHJvYyBraW5mb19wcm9jMgorI2VuZGlmCisKKyNpZiBH
VEVTVF9PU19EUkFHT05GTFkKKyNkZWZpbmUgS1BfTkxXUChrcCkgKGtwLmtwX250aHJlYWRzKQor
I2VsaWYgR1RFU1RfT1NfRlJFRUJTRCB8fCBHVEVTVF9PU19HTlVfS0ZSRUVCU0QKKyNkZWZpbmUg
S1BfTkxXUChrcCkgKGtwLmtpX251bXRocmVhZHMpCisjZWxpZiBHVEVTVF9PU19ORVRCU0QKKyNk
ZWZpbmUgS1BfTkxXUChrcCkgKGtwLnBfbmx3cHMpCisjZW5kaWYKKworLy8gUmV0dXJucyB0aGUg
bnVtYmVyIG9mIHRocmVhZHMgcnVubmluZyBpbiB0aGUgcHJvY2Vzcywgb3IgMCB0byBpbmRpY2F0
ZSB0aGF0CisvLyB3ZSBjYW5ub3QgZGV0ZWN0IGl0Lgorc2l6ZV90IEdldFRocmVhZENvdW50KCkg
eworICBpbnQgbWliW10gPSB7CisgICAgQ1RMX0tFUk4sCisgICAgS0VSTl9QUk9DLAorICAgIEtF
Uk5fUFJPQ19QSUQsCisgICAgZ2V0cGlkKCksCisjaWYgR1RFU1RfT1NfTkVUQlNECisgICAgc2l6
ZW9mKHN0cnVjdCBraW5mb19wcm9jKSwKKyAgICAxLAorI2VuZGlmCisgIH07CisgIHVfaW50IG1p
YmxlbiA9IHNpemVvZihtaWIpIC8gc2l6ZW9mKG1pYlswXSk7CisgIHN0cnVjdCBraW5mb19wcm9j
IGluZm87CisgIHNpemVfdCBzaXplID0gc2l6ZW9mKGluZm8pOworICBpZiAoc3lzY3RsKG1pYiwg
bWlibGVuLCAmaW5mbywgJnNpemUsIE5VTEwsIDApKSB7CisgICAgcmV0dXJuIDA7CisgIH0KKyAg
cmV0dXJuIHN0YXRpY19jYXN0PHNpemVfdD4oS1BfTkxXUChpbmZvKSk7Cit9CisjZWxpZiBHVEVT
VF9PU19PUEVOQlNECisKKy8vIFJldHVybnMgdGhlIG51bWJlciBvZiB0aHJlYWRzIHJ1bm5pbmcg
aW4gdGhlIHByb2Nlc3MsIG9yIDAgdG8gaW5kaWNhdGUgdGhhdAorLy8gd2UgY2Fubm90IGRldGVj
dCBpdC4KK3NpemVfdCBHZXRUaHJlYWRDb3VudCgpIHsKKyAgaW50IG1pYltdID0geworICAgIENU
TF9LRVJOLAorICAgIEtFUk5fUFJPQywKKyAgICBLRVJOX1BST0NfUElEIHwgS0VSTl9QUk9DX1NI
T1dfVEhSRUFEUywKKyAgICBnZXRwaWQoKSwKKyAgICBzaXplb2Yoc3RydWN0IGtpbmZvX3Byb2Mp
LAorICAgIDAsCisgIH07CisgIHVfaW50IG1pYmxlbiA9IHNpemVvZihtaWIpIC8gc2l6ZW9mKG1p
YlswXSk7CisKKyAgLy8gZ2V0IG51bWJlciBvZiBzdHJ1Y3RzCisgIHNpemVfdCBzaXplOworICBp
ZiAoc3lzY3RsKG1pYiwgbWlibGVuLCBOVUxMLCAmc2l6ZSwgTlVMTCwgMCkpIHsKKyAgICByZXR1
cm4gMDsKKyAgfQorICBtaWJbNV0gPSBzaXplIC8gbWliWzRdOworCisgIC8vIHBvcHVsYXRlIGFy
cmF5IG9mIHN0cnVjdHMKKyAgc3RydWN0IGtpbmZvX3Byb2MgaW5mb1ttaWJbNV1dOworICBpZiAo
c3lzY3RsKG1pYiwgbWlibGVuLCAmaW5mbywgJnNpemUsIE5VTEwsIDApKSB7CisgICAgcmV0dXJu
IDA7CisgIH0KKworICAvLyBleGNsdWRlIGVtcHR5IG1lbWJlcnMKKyAgaW50IG50aHJlYWRzID0g
MDsKKyAgZm9yIChpbnQgaSA9IDA7IGkgPCBzaXplIC8gbWliWzRdOyBpKyspIHsKKyAgICBpZiAo
aW5mb1tpXS5wX3RpZCAhPSAtMSkKKyAgICAgIG50aHJlYWRzKys7CisgIH0KKyAgcmV0dXJuIG50
aHJlYWRzOworfQorCiAjZWxpZiBHVEVTVF9PU19RTlgKIAogLy8gUmV0dXJucyB0aGUgbnVtYmVy
IG9mIHRocmVhZHMgcnVubmluZyBpbiB0aGUgcHJvY2Vzcywgb3IgMCB0byBpbmRpY2F0ZSB0aGF0
CkBAIC0xMzgsNyArMjI2LDcgQEAgc2l6ZV90IEdldFRocmVhZENvdW50KCkgewogICB9CiAgIHBy
b2Nmc19pbmZvIHByb2Nlc3NfaW5mbzsKICAgY29uc3QgaW50IHN0YXR1cyA9Ci0gICAgICBkZXZj
dGwoZmQsIERDTURfUFJPQ19JTkZPLCAmcHJvY2Vzc19pbmZvLCBzaXplb2YocHJvY2Vzc19pbmZv
KSwgTlVMTCk7CisgICAgICBkZXZjdGwoZmQsIERDTURfUFJPQ19JTkZPLCAmcHJvY2Vzc19pbmZv
LCBzaXplb2YocHJvY2Vzc19pbmZvKSwgbnVsbHB0cik7CiAgIGNsb3NlKGZkKTsKICAgaWYgKHN0
YXR1cyA9PSBFT0spIHsKICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8c2l6ZV90Pihwcm9jZXNzX2lu
Zm8ubnVtX3RocmVhZHMpOwpAQCAtMTUyLDcgKzI0MCw3IEBAIHNpemVfdCBHZXRUaHJlYWRDb3Vu
dCgpIHsKIHNpemVfdCBHZXRUaHJlYWRDb3VudCgpIHsKICAgc3RydWN0IHByb2NlbnRyeTY0IGVu
dHJ5OwogICBwaWRfdCBwaWQgPSBnZXRwaWQoKTsKLSAgaW50IHN0YXR1cyA9IGdldHByb2NzNjQo
JmVudHJ5LCBzaXplb2YoZW50cnkpLCBOVUxMLCAwLCAmcGlkLCAxKTsKKyAgaW50IHN0YXR1cyA9
IGdldHByb2NzNjQoJmVudHJ5LCBzaXplb2YoZW50cnkpLCBudWxscHRyLCAwLCAmcGlkLCAxKTsK
ICAgaWYgKHN0YXR1cyA9PSAxKSB7CiAgICAgcmV0dXJuIGVudHJ5LnBpX3RoY291bnQ7CiAgIH0g
ZWxzZSB7CkBAIC0xOTIsNyArMjgwLDcgQEAgc2l6ZV90IEdldFRocmVhZENvdW50KCkgewogI2lm
IEdURVNUX0lTX1RIUkVBRFNBRkUgJiYgR1RFU1RfT1NfV0lORE9XUwogCiB2b2lkIFNsZWVwTWls
bGlzZWNvbmRzKGludCBuKSB7Ci0gIDo6U2xlZXAobik7CisgIDo6U2xlZXAoc3RhdGljX2Nhc3Q8
RFdPUkQ+KG4pKTsKIH0KIAogQXV0b0hhbmRsZTo6QXV0b0hhbmRsZSgpCkBAIC0yMzAsMTUgKzMx
OCwxNSBAQCB2b2lkIEF1dG9IYW5kbGU6OlJlc2V0KEhBTkRMRSBoYW5kbGUpIHsKIGJvb2wgQXV0
b0hhbmRsZTo6SXNDbG9zZWFibGUoKSBjb25zdCB7CiAgIC8vIERpZmZlcmVudCBXaW5kb3dzIEFQ
SXMgbWF5IHVzZSBlaXRoZXIgb2YgdGhlc2UgdmFsdWVzIHRvIHJlcHJlc2VudCBhbgogICAvLyBp
bnZhbGlkIGhhbmRsZS4KLSAgcmV0dXJuIGhhbmRsZV8gIT0gTlVMTCAmJiBoYW5kbGVfICE9IElO
VkFMSURfSEFORExFX1ZBTFVFOworICByZXR1cm4gaGFuZGxlXyAhPSBudWxscHRyICYmIGhhbmRs
ZV8gIT0gSU5WQUxJRF9IQU5ETEVfVkFMVUU7CiB9CiAKIE5vdGlmaWNhdGlvbjo6Tm90aWZpY2F0
aW9uKCkKLSAgICA6IGV2ZW50Xyg6OkNyZWF0ZUV2ZW50KE5VTEwsICAgLy8gRGVmYXVsdCBzZWN1
cml0eSBhdHRyaWJ1dGVzLgotICAgICAgICAgICAgICAgICAgICAgICAgICAgVFJVRSwgICAvLyBE
byBub3QgcmVzZXQgYXV0b21hdGljYWxseS4KLSAgICAgICAgICAgICAgICAgICAgICAgICAgIEZB
TFNFLCAgLy8gSW5pdGlhbGx5IHVuc2V0LgotICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM
TCkpIHsgIC8vIEFub255bW91cyBldmVudC4KLSAgR1RFU1RfQ0hFQ0tfKGV2ZW50Xy5HZXQoKSAh
PSBOVUxMKTsKKyAgICA6IGV2ZW50Xyg6OkNyZWF0ZUV2ZW50KG51bGxwdHIsICAgICAvLyBEZWZh
dWx0IHNlY3VyaXR5IGF0dHJpYnV0ZXMuCisgICAgICAgICAgICAgICAgICAgICAgICAgICBUUlVF
LCAgICAgICAgLy8gRG8gbm90IHJlc2V0IGF1dG9tYXRpY2FsbHkuCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICBGQUxTRSwgICAgICAgLy8gSW5pdGlhbGx5IHVuc2V0LgorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbnVsbHB0cikpIHsgIC8vIEFub255bW91cyBldmVudC4KKyAgR1RFU1Rf
Q0hFQ0tfKGV2ZW50Xy5HZXQoKSAhPSBudWxscHRyKTsKIH0KIAogdm9pZCBOb3RpZmljYXRpb246
Ok5vdGlmeSgpIHsKQEAgLTI2MSwxMyArMzQ5LDEwIEBAIE11dGV4OjpNdXRleCgpCiBNdXRleDo6
fk11dGV4KCkgewogICAvLyBTdGF0aWMgbXV0ZXhlcyBhcmUgbGVha2VkIGludGVudGlvbmFsbHku
IEl0IGlzIG5vdCB0aHJlYWQtc2FmZSB0byB0cnkKICAgLy8gdG8gY2xlYW4gdGhlbSB1cC4KLSAg
Ly8gRklYTUU6IFN3aXRjaCB0byBTbGltIFJlYWRlci9Xcml0ZXIgKFNSVykgTG9ja3MsIHdoaWNo
IHJlcXVpcmVzCi0gIC8vIG5vdGhpbmcgdG8gY2xlYW4gaXQgdXAgYnV0IGlzIGF2YWlsYWJsZSBv
bmx5IG9uIFZpc3RhIGFuZCBsYXRlci4KLSAgLy8gaHR0cHM6Ly9kb2NzLm1pY3Jvc29mdC5jb20v
ZW4tdXMvd2luZG93cy9kZXNrdG9wL1N5bmMvc2xpbS1yZWFkZXItd3JpdGVyLS1zcnctLWxvY2tz
CiAgIGlmICh0eXBlXyA9PSBrRHluYW1pYykgewogICAgIDo6RGVsZXRlQ3JpdGljYWxTZWN0aW9u
KGNyaXRpY2FsX3NlY3Rpb25fKTsKICAgICBkZWxldGUgY3JpdGljYWxfc2VjdGlvbl87Ci0gICAg
Y3JpdGljYWxfc2VjdGlvbl8gPSBOVUxMOworICAgIGNyaXRpY2FsX3NlY3Rpb25fID0gbnVsbHB0
cjsKICAgfQogfQogCkBAIC0yOTYsNiArMzgxLDcgQEAgdm9pZCBNdXRleDo6QXNzZXJ0SGVsZCgp
IHsKIAogbmFtZXNwYWNlIHsKIAorI2lmZGVmIF9NU0NfVkVSCiAvLyBVc2UgdGhlIFJBSUkgaWRp
b20gdG8gZmxhZyBtZW0gYWxsb2NzIHRoYXQgYXJlIGludGVudGlvbmFsbHkgbmV2ZXIKIC8vIGRl
YWxsb2NhdGVkLiBUaGUgbW90aXZhdGlvbiBpcyB0byBzaWxlbmNlIHRoZSBmYWxzZSBwb3NpdGl2
ZSBtZW0gbGVha3MKIC8vIHRoYXQgYXJlIHJlcG9ydGVkIGJ5IHRoZSBkZWJ1ZyB2ZXJzaW9uIG9m
IE1TJ3MgQ1JUIHdoaWNoIGNhbiBvbmx5IGRldGVjdApAQCAtMzA4LDE5ICszOTQsMTUgQEAgY2xh
c3MgTWVtb3J5SXNOb3REZWFsbG9jYXRlZAogewogIHB1YmxpYzoKICAgTWVtb3J5SXNOb3REZWFs
bG9jYXRlZCgpIDogb2xkX2NydGRiZ19mbGFnXygwKSB7Ci0jaWZkZWYgX01TQ19WRVIKICAgICBv
bGRfY3J0ZGJnX2ZsYWdfID0gX0NydFNldERiZ0ZsYWcoX0NSVERCR19SRVBPUlRfRkxBRyk7CiAg
ICAgLy8gU2V0IGhlYXAgYWxsb2NhdGlvbiBibG9jayB0eXBlIHRvIF9JR05PUkVfQkxPQ0sgc28g
dGhhdCBNUyBkZWJ1ZyBDUlQKICAgICAvLyBkb2Vzbid0IHJlcG9ydCBtZW0gbGVhayBpZiB0aGVy
ZSdzIG5vIG1hdGNoaW5nIGRlYWxsb2NhdGlvbi4KICAgICBfQ3J0U2V0RGJnRmxhZyhvbGRfY3J0
ZGJnX2ZsYWdfICYgfl9DUlREQkdfQUxMT0NfTUVNX0RGKTsKLSNlbmRpZiAgLy8gIF9NU0NfVkVS
CiAgIH0KIAogICB+TWVtb3J5SXNOb3REZWFsbG9jYXRlZCgpIHsKLSNpZmRlZiBfTVNDX1ZFUgog
ICAgIC8vIFJlc3RvcmUgdGhlIG9yaWdpbmFsIF9DUlREQkdfQUxMT0NfTUVNX0RGIGZsYWcKICAg
ICBfQ3J0U2V0RGJnRmxhZyhvbGRfY3J0ZGJnX2ZsYWdfKTsKLSNlbmRpZiAgLy8gIF9NU0NfVkVS
CiAgIH0KIAogIHByaXZhdGU6CkBAIC0zMjgsNiArNDEwLDcgQEAgY2xhc3MgTWVtb3J5SXNOb3RE
ZWFsbG9jYXRlZAogCiAgIEdURVNUX0RJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTl8oTWVtb3J5SXNO
b3REZWFsbG9jYXRlZCk7CiB9OworI2VuZGlmICAvLyBfTVNDX1ZFUgogCiB9ICAvLyBuYW1lc3Bh
Y2UKIApAQCAtMzQzLDcgKzQyNiw5IEBAIHZvaWQgTXV0ZXg6OlRocmVhZFNhZmVMYXp5SW5pdCgp
IHsKICAgICAgICAgb3duZXJfdGhyZWFkX2lkXyA9IDA7CiAgICAgICAgIHsKICAgICAgICAgICAv
LyBVc2UgUkFJSSB0byBmbGFnIHRoYXQgZm9sbG93aW5nIG1lbSBhbGxvYyBpcyBuZXZlciBkZWFs
bG9jYXRlZC4KKyNpZmRlZiBfTVNDX1ZFUgogICAgICAgICAgIE1lbW9yeUlzTm90RGVhbGxvY2F0
ZWQgbWVtb3J5X2lzX25vdF9kZWFsbG9jYXRlZDsKKyNlbmRpZiAgLy8gX01TQ19WRVIKICAgICAg
ICAgICBjcml0aWNhbF9zZWN0aW9uXyA9IG5ldyBDUklUSUNBTF9TRUNUSU9OOwogICAgICAgICB9
CiAgICAgICAgIDo6SW5pdGlhbGl6ZUNyaXRpY2FsU2VjdGlvbihjcml0aWNhbF9zZWN0aW9uXyk7
CkBAIC0zODQsMTcgKzQ2OSwxNiBAQCBjbGFzcyBUaHJlYWRXaXRoUGFyYW1TdXBwb3J0IDogcHVi
bGljIFRocmVhZFdpdGhQYXJhbUJhc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBO
b3RpZmljYXRpb24qIHRocmVhZF9jYW5fc3RhcnQpIHsKICAgICBUaHJlYWRNYWluUGFyYW0qIHBh
cmFtID0gbmV3IFRocmVhZE1haW5QYXJhbShydW5uYWJsZSwgdGhyZWFkX2Nhbl9zdGFydCk7CiAg
ICAgRFdPUkQgdGhyZWFkX2lkOwotICAgIC8vIEZJWE1FOiBDb25zaWRlciB0byB1c2UgX2JlZ2lu
dGhyZWFkZXggaW5zdGVhZC4KICAgICBIQU5ETEUgdGhyZWFkX2hhbmRsZSA9IDo6Q3JlYXRlVGhy
ZWFkKAotICAgICAgICBOVUxMLCAgICAvLyBEZWZhdWx0IHNlY3VyaXR5LgotICAgICAgICAwLCAg
ICAgICAvLyBEZWZhdWx0IHN0YWNrIHNpemUuCisgICAgICAgIG51bGxwdHIsICAvLyBEZWZhdWx0
IHNlY3VyaXR5LgorICAgICAgICAwLCAgICAgICAgLy8gRGVmYXVsdCBzdGFjayBzaXplLgogICAg
ICAgICAmVGhyZWFkV2l0aFBhcmFtU3VwcG9ydDo6VGhyZWFkTWFpbiwKLSAgICAgICAgcGFyYW0s
ICAgLy8gUGFyYW1ldGVyIHRvIFRocmVhZE1haW5TdGF0aWMKLSAgICAgICAgMHgwLCAgICAgLy8g
RGVmYXVsdCBjcmVhdGlvbiBmbGFncy4KKyAgICAgICAgcGFyYW0sICAgICAgICAvLyBQYXJhbWV0
ZXIgdG8gVGhyZWFkTWFpblN0YXRpYworICAgICAgICAweDAsICAgICAgICAgIC8vIERlZmF1bHQg
Y3JlYXRpb24gZmxhZ3MuCiAgICAgICAgICZ0aHJlYWRfaWQpOyAgLy8gTmVlZCBhIHZhbGlkIHBv
aW50ZXIgZm9yIHRoZSBjYWxsIHRvIHdvcmsgdW5kZXIgV2luOTguCi0gICAgR1RFU1RfQ0hFQ0tf
KHRocmVhZF9oYW5kbGUgIT0gTlVMTCkgPDwgIkNyZWF0ZVRocmVhZCBmYWlsZWQgd2l0aCBlcnJv
ciAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgOjpHZXRMYXN0
RXJyb3IoKSA8PCAiLiI7Ci0gICAgaWYgKHRocmVhZF9oYW5kbGUgPT0gTlVMTCkgeworICAgIEdU
RVNUX0NIRUNLXyh0aHJlYWRfaGFuZGxlICE9IG51bGxwdHIpCisgICAgICAgIDw8ICJDcmVhdGVU
aHJlYWQgZmFpbGVkIHdpdGggZXJyb3IgIiA8PCA6OkdldExhc3RFcnJvcigpIDw8ICIuIjsKKyAg
ICBpZiAodGhyZWFkX2hhbmRsZSA9PSBudWxscHRyKSB7CiAgICAgICBkZWxldGUgcGFyYW07CiAg
ICAgfQogICAgIHJldHVybiB0aHJlYWRfaGFuZGxlOwpAQCAtNDA2LDE1ICs0OTAsMTUgQEAgY2xh
c3MgVGhyZWFkV2l0aFBhcmFtU3VwcG9ydCA6IHB1YmxpYyBUaHJlYWRXaXRoUGFyYW1CYXNlIHsK
ICAgICAgICAgOiBydW5uYWJsZV8ocnVubmFibGUpLAogICAgICAgICAgIHRocmVhZF9jYW5fc3Rh
cnRfKHRocmVhZF9jYW5fc3RhcnQpIHsKICAgICB9Ci0gICAgc2NvcGVkX3B0cjxSdW5uYWJsZT4g
cnVubmFibGVfOworICAgIHN0ZDo6dW5pcXVlX3B0cjxSdW5uYWJsZT4gcnVubmFibGVfOwogICAg
IC8vIERvZXMgbm90IG93bi4KICAgICBOb3RpZmljYXRpb24qIHRocmVhZF9jYW5fc3RhcnRfOwog
ICB9OwogCiAgIHN0YXRpYyBEV09SRCBXSU5BUEkgVGhyZWFkTWFpbih2b2lkKiBwdHIpIHsKICAg
ICAvLyBUcmFuc2ZlcnMgb3duZXJzaGlwLgotICAgIHNjb3BlZF9wdHI8VGhyZWFkTWFpblBhcmFt
PiBwYXJhbShzdGF0aWNfY2FzdDxUaHJlYWRNYWluUGFyYW0qPihwdHIpKTsKLSAgICBpZiAocGFy
YW0tPnRocmVhZF9jYW5fc3RhcnRfICE9IE5VTEwpCisgICAgc3RkOjp1bmlxdWVfcHRyPFRocmVh
ZE1haW5QYXJhbT4gcGFyYW0oc3RhdGljX2Nhc3Q8VGhyZWFkTWFpblBhcmFtKj4ocHRyKSk7Cisg
ICAgaWYgKHBhcmFtLT50aHJlYWRfY2FuX3N0YXJ0XyAhPSBudWxscHRyKQogICAgICAgcGFyYW0t
PnRocmVhZF9jYW5fc3RhcnRfLT5XYWl0Rm9yTm90aWZpY2F0aW9uKCk7CiAgICAgcGFyYW0tPnJ1
bm5hYmxlXy0+UnVuKCk7CiAgICAgcmV0dXJuIDA7CkBAIC00NTMsNiArNTM3LDkgQEAgY2xhc3Mg
VGhyZWFkTG9jYWxSZWdpc3RyeUltcGwgewogICAvLyBSZXR1cm5zIGEgdmFsdWUgdGhhdCBjYW4g
YmUgdXNlZCB0byBpZGVudGlmeSB0aGUgdGhyZWFkIGZyb20gb3RoZXIgdGhyZWFkcy4KICAgc3Rh
dGljIFRocmVhZExvY2FsVmFsdWVIb2xkZXJCYXNlKiBHZXRWYWx1ZU9uQ3VycmVudFRocmVhZCgK
ICAgICAgIGNvbnN0IFRocmVhZExvY2FsQmFzZSogdGhyZWFkX2xvY2FsX2luc3RhbmNlKSB7Cisj
aWZkZWYgX01TQ19WRVIKKyAgICBNZW1vcnlJc05vdERlYWxsb2NhdGVkIG1lbW9yeV9pc19ub3Rf
ZGVhbGxvY2F0ZWQ7CisjZW5kaWYgIC8vIF9NU0NfVkVSCiAgICAgRFdPUkQgY3VycmVudF90aHJl
YWQgPSA6OkdldEN1cnJlbnRUaHJlYWRJZCgpOwogICAgIE11dGV4TG9jayBsb2NrKCZtdXRleF8p
OwogICAgIFRocmVhZElkVG9UaHJlYWRMb2NhbHMqIGNvbnN0IHRocmVhZF90b190aHJlYWRfbG9j
YWxzID0KQEAgLTQ3Miw3ICs1NTksNyBAQCBjbGFzcyBUaHJlYWRMb2NhbFJlZ2lzdHJ5SW1wbCB7
CiAgICAgICAgICAgdGhyZWFkX2xvY2FsX3ZhbHVlcwogICAgICAgICAgICAgICAuaW5zZXJ0KHN0
ZDo6bWFrZV9wYWlyKAogICAgICAgICAgICAgICAgICAgdGhyZWFkX2xvY2FsX2luc3RhbmNlLAot
ICAgICAgICAgICAgICAgICAgbGlua2VkX3B0cjxUaHJlYWRMb2NhbFZhbHVlSG9sZGVyQmFzZT4o
CisgICAgICAgICAgICAgICAgICBzdGQ6OnNoYXJlZF9wdHI8VGhyZWFkTG9jYWxWYWx1ZUhvbGRl
ckJhc2U+KAogICAgICAgICAgICAgICAgICAgICAgIHRocmVhZF9sb2NhbF9pbnN0YW5jZS0+TmV3
VmFsdWVGb3JDdXJyZW50VGhyZWFkKCkpKSkKICAgICAgICAgICAgICAgLmZpcnN0OwogICAgIH0K
QEAgLTQ4MSw3ICs1NjgsNyBAQCBjbGFzcyBUaHJlYWRMb2NhbFJlZ2lzdHJ5SW1wbCB7CiAKICAg
c3RhdGljIHZvaWQgT25UaHJlYWRMb2NhbERlc3Ryb3llZCgKICAgICAgIGNvbnN0IFRocmVhZExv
Y2FsQmFzZSogdGhyZWFkX2xvY2FsX2luc3RhbmNlKSB7Ci0gICAgc3RkOjp2ZWN0b3I8bGlua2Vk
X3B0cjxUaHJlYWRMb2NhbFZhbHVlSG9sZGVyQmFzZT4gPiB2YWx1ZV9ob2xkZXJzOworICAgIHN0
ZDo6dmVjdG9yPHN0ZDo6c2hhcmVkX3B0cjxUaHJlYWRMb2NhbFZhbHVlSG9sZGVyQmFzZT4gPiB2
YWx1ZV9ob2xkZXJzOwogICAgIC8vIENsZWFuIHVwIHRoZSBUaHJlYWRMb2NhbFZhbHVlcyBkYXRh
IHN0cnVjdHVyZSB3aGlsZSBob2xkaW5nIHRoZSBsb2NrLCBidXQKICAgICAvLyBkZWZlciB0aGUg
ZGVzdHJ1Y3Rpb24gb2YgdGhlIFRocmVhZExvY2FsVmFsdWVIb2xkZXJCYXNlcy4KICAgICB7CkBA
IC01MDksNyArNTk2LDcgQEAgY2xhc3MgVGhyZWFkTG9jYWxSZWdpc3RyeUltcGwgewogCiAgIHN0
YXRpYyB2b2lkIE9uVGhyZWFkRXhpdChEV09SRCB0aHJlYWRfaWQpIHsKICAgICBHVEVTVF9DSEVD
S18odGhyZWFkX2lkICE9IDApIDw8IDo6R2V0TGFzdEVycm9yKCk7Ci0gICAgc3RkOjp2ZWN0b3I8
bGlua2VkX3B0cjxUaHJlYWRMb2NhbFZhbHVlSG9sZGVyQmFzZT4gPiB2YWx1ZV9ob2xkZXJzOwor
ICAgIHN0ZDo6dmVjdG9yPHN0ZDo6c2hhcmVkX3B0cjxUaHJlYWRMb2NhbFZhbHVlSG9sZGVyQmFz
ZT4gPiB2YWx1ZV9ob2xkZXJzOwogICAgIC8vIENsZWFuIHVwIHRoZSBUaHJlYWRJZFRvVGhyZWFk
TG9jYWxzIGRhdGEgc3RydWN0dXJlIHdoaWxlIGhvbGRpbmcgdGhlCiAgICAgLy8gbG9jaywgYnV0
IGRlZmVyIHRoZSBkZXN0cnVjdGlvbiBvZiB0aGUgVGhyZWFkTG9jYWxWYWx1ZUhvbGRlckJhc2Vz
LgogICAgIHsKQEAgLTUzNiw3ICs2MjMsOCBAQCBjbGFzcyBUaHJlYWRMb2NhbFJlZ2lzdHJ5SW1w
bCB7CiAgcHJpdmF0ZToKICAgLy8gSW4gYSBwYXJ0aWN1bGFyIHRocmVhZCwgbWFwcyBhIFRocmVh
ZExvY2FsIG9iamVjdCB0byBpdHMgdmFsdWUuCiAgIHR5cGVkZWYgc3RkOjptYXA8Y29uc3QgVGhy
ZWFkTG9jYWxCYXNlKiwKLSAgICAgICAgICAgICAgICAgICBsaW5rZWRfcHRyPFRocmVhZExvY2Fs
VmFsdWVIb2xkZXJCYXNlPiA+IFRocmVhZExvY2FsVmFsdWVzOworICAgICAgICAgICAgICAgICAg
IHN0ZDo6c2hhcmVkX3B0cjxUaHJlYWRMb2NhbFZhbHVlSG9sZGVyQmFzZT4gPgorICAgICAgVGhy
ZWFkTG9jYWxWYWx1ZXM7CiAgIC8vIFN0b3JlcyBhbGwgVGhyZWFkSWRUb1RocmVhZExvY2FscyBo
YXZpbmcgdmFsdWVzIGluIGEgdGhyZWFkLCBpbmRleGVkIGJ5CiAgIC8vIHRocmVhZCdzIElELgog
ICB0eXBlZGVmIHN0ZDo6bWFwPERXT1JELCBUaHJlYWRMb2NhbFZhbHVlcz4gVGhyZWFkSWRUb1Ro
cmVhZExvY2FsczsKQEAgLTU1MSwxOCArNjM5LDE3IEBAIGNsYXNzIFRocmVhZExvY2FsUmVnaXN0
cnlJbXBsIHsKICAgICBIQU5ETEUgdGhyZWFkID0gOjpPcGVuVGhyZWFkKFNZTkNIUk9OSVpFIHwg
VEhSRUFEX1FVRVJZX0lORk9STUFUSU9OLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgRkFMU0UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJlYWRfaWQpOwot
ICAgIEdURVNUX0NIRUNLXyh0aHJlYWQgIT0gTlVMTCk7CisgICAgR1RFU1RfQ0hFQ0tfKHRocmVh
ZCAhPSBudWxscHRyKTsKICAgICAvLyBXZSBuZWVkIHRvIHBhc3MgYSB2YWxpZCB0aHJlYWQgSUQg
cG9pbnRlciBpbnRvIENyZWF0ZVRocmVhZCBmb3IgaXQKICAgICAvLyB0byB3b3JrIGNvcnJlY3Rs
eSB1bmRlciBXaW45OC4KICAgICBEV09SRCB3YXRjaGVyX3RocmVhZF9pZDsKICAgICBIQU5ETEUg
d2F0Y2hlcl90aHJlYWQgPSA6OkNyZWF0ZVRocmVhZCgKLSAgICAgICAgTlVMTCwgICAvLyBEZWZh
dWx0IHNlY3VyaXR5LgotICAgICAgICAwLCAgICAgIC8vIERlZmF1bHQgc3RhY2sgc2l6ZQorICAg
ICAgICBudWxscHRyLCAgLy8gRGVmYXVsdCBzZWN1cml0eS4KKyAgICAgICAgMCwgICAgICAgIC8v
IERlZmF1bHQgc3RhY2sgc2l6ZQogICAgICAgICAmVGhyZWFkTG9jYWxSZWdpc3RyeUltcGw6Oldh
dGNoZXJUaHJlYWRGdW5jLAogICAgICAgICByZWludGVycHJldF9jYXN0PExQVk9JRD4obmV3IFRo
cmVhZElkQW5kSGFuZGxlKHRocmVhZF9pZCwgdGhyZWFkKSksCi0gICAgICAgIENSRUFURV9TVVNQ
RU5ERUQsCi0gICAgICAgICZ3YXRjaGVyX3RocmVhZF9pZCk7Ci0gICAgR1RFU1RfQ0hFQ0tfKHdh
dGNoZXJfdGhyZWFkICE9IE5VTEwpOworICAgICAgICBDUkVBVEVfU1VTUEVOREVELCAmd2F0Y2hl
cl90aHJlYWRfaWQpOworICAgIEdURVNUX0NIRUNLXyh3YXRjaGVyX3RocmVhZCAhPSBudWxscHRy
KTsKICAgICAvLyBHaXZlIHRoZSB3YXRjaGVyIHRocmVhZCB0aGUgc2FtZSBwcmlvcml0eSBhcyBv
dXJzIHRvIGF2b2lkIGJlaW5nCiAgICAgLy8gYmxvY2tlZCBieSBpdC4KICAgICA6OlNldFRocmVh
ZFByaW9yaXR5KHdhdGNoZXJfdGhyZWFkLApAQCAtNTg3LDcgKzY3NCw5IEBAIGNsYXNzIFRocmVh
ZExvY2FsUmVnaXN0cnlJbXBsIHsKICAgLy8gUmV0dXJucyBtYXAgb2YgdGhyZWFkIGxvY2FsIGlu
c3RhbmNlcy4KICAgc3RhdGljIFRocmVhZElkVG9UaHJlYWRMb2NhbHMqIEdldFRocmVhZExvY2Fs
c01hcExvY2tlZCgpIHsKICAgICBtdXRleF8uQXNzZXJ0SGVsZCgpOworI2lmZGVmIF9NU0NfVkVS
CiAgICAgTWVtb3J5SXNOb3REZWFsbG9jYXRlZCBtZW1vcnlfaXNfbm90X2RlYWxsb2NhdGVkOwor
I2VuZGlmICAvLyBfTVNDX1ZFUgogICAgIHN0YXRpYyBUaHJlYWRJZFRvVGhyZWFkTG9jYWxzKiBt
YXAgPSBuZXcgVGhyZWFkSWRUb1RocmVhZExvY2FscygpOwogICAgIHJldHVybiBtYXA7CiAgIH0K
QEAgLTYzMCw3ICs3MTksNyBAQCBSRTo6flJFKCkgewogICBmcmVlKGNvbnN0X2Nhc3Q8Y2hhcio+
KHBhdHRlcm5fKSk7CiB9CiAKLS8vIFJldHVybnMgdHJ1ZSBpZmYgcmVndWxhciBleHByZXNzaW9u
IHJlIG1hdGNoZXMgdGhlIGVudGlyZSBzdHIuCisvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkg
aWYgcmVndWxhciBleHByZXNzaW9uIHJlIG1hdGNoZXMgdGhlIGVudGlyZSBzdHIuCiBib29sIFJF
OjpGdWxsTWF0Y2goY29uc3QgY2hhciogc3RyLCBjb25zdCBSRSYgcmUpIHsKICAgaWYgKCFyZS5p
c192YWxpZF8pIHJldHVybiBmYWxzZTsKIApAQCAtNjM4LDggKzcyNyw4IEBAIGJvb2wgUkU6OkZ1
bGxNYXRjaChjb25zdCBjaGFyKiBzdHIsIGNvbnN0IFJFJiByZSkgewogICByZXR1cm4gcmVnZXhl
YygmcmUuZnVsbF9yZWdleF8sIHN0ciwgMSwgJm1hdGNoLCAwKSA9PSAwOwogfQogCi0vLyBSZXR1
cm5zIHRydWUgaWZmIHJlZ3VsYXIgZXhwcmVzc2lvbiByZSBtYXRjaGVzIGEgc3Vic3RyaW5nIG9m
IHN0cgotLy8gKGluY2x1ZGluZyBzdHIgaXRzZWxmKS4KKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQg
b25seSBpZiByZWd1bGFyIGV4cHJlc3Npb24gcmUgbWF0Y2hlcyBhIHN1YnN0cmluZyBvZgorLy8g
c3RyIChpbmNsdWRpbmcgc3RyIGl0c2VsZikuCiBib29sIFJFOjpQYXJ0aWFsTWF0Y2goY29uc3Qg
Y2hhciogc3RyLCBjb25zdCBSRSYgcmUpIHsKICAgaWYgKCFyZS5pc192YWxpZF8pIHJldHVybiBm
YWxzZTsKIApAQCAtNjc5LDE0ICs3NjgsMTQgQEAgdm9pZCBSRTo6SW5pdChjb25zdCBjaGFyKiBy
ZWdleCkgewogCiAjZWxpZiBHVEVTVF9VU0VTX1NJTVBMRV9SRQogCi0vLyBSZXR1cm5zIHRydWUg
aWZmIGNoIGFwcGVhcnMgYW55d2hlcmUgaW4gc3RyIChleGNsdWRpbmcgdGhlCisvLyBSZXR1cm5z
IHRydWUgaWYgYW5kIG9ubHkgaWYgY2ggYXBwZWFycyBhbnl3aGVyZSBpbiBzdHIgKGV4Y2x1ZGlu
ZyB0aGUKIC8vIHRlcm1pbmF0aW5nICdcMCcgY2hhcmFjdGVyKS4KIGJvb2wgSXNJblNldChjaGFy
IGNoLCBjb25zdCBjaGFyKiBzdHIpIHsKLSAgcmV0dXJuIGNoICE9ICdcMCcgJiYgc3RyY2hyKHN0
ciwgY2gpICE9IE5VTEw7CisgIHJldHVybiBjaCAhPSAnXDAnICYmIHN0cmNocihzdHIsIGNoKSAh
PSBudWxscHRyOwogfQogCi0vLyBSZXR1cm5zIHRydWUgaWZmIGNoIGJlbG9uZ3MgdG8gdGhlIGdp
dmVuIGNsYXNzaWZpY2F0aW9uLiAgVW5saWtlCi0vLyBzaW1pbGFyIGZ1bmN0aW9ucyBpbiA8Y3R5
cGUuaD4sIHRoZXNlIGFyZW4ndCBhZmZlY3RlZCBieSB0aGUKKy8vIFJldHVybnMgdHJ1ZSBpZiBh
bmQgb25seSBpZiBjaCBiZWxvbmdzIHRvIHRoZSBnaXZlbiBjbGFzc2lmaWNhdGlvbi4KKy8vIFVu
bGlrZSBzaW1pbGFyIGZ1bmN0aW9ucyBpbiA8Y3R5cGUuaD4sIHRoZXNlIGFyZW4ndCBhZmZlY3Rl
ZCBieSB0aGUKIC8vIGN1cnJlbnQgbG9jYWxlLgogYm9vbCBJc0FzY2lpRGlnaXQoY2hhciBjaCkg
eyByZXR1cm4gJzAnIDw9IGNoICYmIGNoIDw9ICc5JzsgfQogYm9vbCBJc0FzY2lpUHVuY3QoY2hh
ciBjaCkgewpAQCAtNjk5LDEzICs3ODgsMTMgQEAgYm9vbCBJc0FzY2lpV29yZENoYXIoY2hhciBj
aCkgewogICAgICAgKCcwJyA8PSBjaCAmJiBjaCA8PSAnOScpIHx8IGNoID09ICdfJzsKIH0KIAot
Ly8gUmV0dXJucyB0cnVlIGlmZiAiXFxjIiBpcyBhIHN1cHBvcnRlZCBlc2NhcGUgc2VxdWVuY2Uu
CisvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgIlxcYyIgaXMgYSBzdXBwb3J0ZWQgZXNj
YXBlIHNlcXVlbmNlLgogYm9vbCBJc1ZhbGlkRXNjYXBlKGNoYXIgYykgewogICByZXR1cm4gKElz
QXNjaWlQdW5jdChjKSB8fCBJc0luU2V0KGMsICJkRGZucnNTdHZ3VyIpKTsKIH0KIAotLy8gUmV0
dXJucyB0cnVlIGlmZiB0aGUgZ2l2ZW4gYXRvbSAoc3BlY2lmaWVkIGJ5IGVzY2FwZWQgYW5kIHBh
dHRlcm4pCi0vLyBtYXRjaGVzIGNoLiAgVGhlIHJlc3VsdCBpcyB1bmRlZmluZWQgaWYgdGhlIGF0
b20gaXMgaW52YWxpZC4KKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgZ2l2ZW4g
YXRvbSAoc3BlY2lmaWVkIGJ5IGVzY2FwZWQgYW5kCisvLyBwYXR0ZXJuKSBtYXRjaGVzIGNoLiAg
VGhlIHJlc3VsdCBpcyB1bmRlZmluZWQgaWYgdGhlIGF0b20gaXMgaW52YWxpZC4KIGJvb2wgQXRv
bU1hdGNoZXNDaGFyKGJvb2wgZXNjYXBlZCwgY2hhciBwYXR0ZXJuX2NoYXIsIGNoYXIgY2gpIHsK
ICAgaWYgKGVzY2FwZWQpIHsgIC8vICJcXHAiIHdoZXJlIHAgaXMgcGF0dGVybl9jaGFyLgogICAg
IHN3aXRjaCAocGF0dGVybl9jaGFyKSB7CkBAIC03MzYsMTcgKzgyNSwxNCBAQCBzdGF0aWMgc3Rk
OjpzdHJpbmcgRm9ybWF0UmVnZXhTeW50YXhFcnJvcihjb25zdCBjaGFyKiByZWdleCwgaW50IGlu
ZGV4KSB7CiAvLyBHZW5lcmF0ZXMgbm9uLWZhdGFsIGZhaWx1cmVzIGFuZCByZXR1cm5zIGZhbHNl
IGlmIHJlZ2V4IGlzIGludmFsaWQ7CiAvLyBvdGhlcndpc2UgcmV0dXJucyB0cnVlLgogYm9vbCBW
YWxpZGF0ZVJlZ2V4KGNvbnN0IGNoYXIqIHJlZ2V4KSB7Ci0gIGlmIChyZWdleCA9PSBOVUxMKSB7
Ci0gICAgLy8gRklYTUU6IGZpeCB0aGUgc291cmNlIGZpbGUgbG9jYXRpb24gaW4gdGhlCi0gICAg
Ly8gYXNzZXJ0aW9uIGZhaWx1cmVzIHRvIG1hdGNoIHdoZXJlIHRoZSByZWdleCBpcyB1c2VkIGlu
IHVzZXIKLSAgICAvLyBjb2RlLgorICBpZiAocmVnZXggPT0gbnVsbHB0cikgewogICAgIEFERF9G
QUlMVVJFKCkgPDwgIk5VTEwgaXMgbm90IGEgdmFsaWQgc2ltcGxlIHJlZ3VsYXIgZXhwcmVzc2lv
bi4iOwogICAgIHJldHVybiBmYWxzZTsKICAgfQogCiAgIGJvb2wgaXNfdmFsaWQgPSB0cnVlOwog
Ci0gIC8vIFRydWUgaWZmID8sICosIG9yICsgY2FuIGZvbGxvdyB0aGUgcHJldmlvdXMgYXRvbS4K
KyAgLy8gVHJ1ZSBpZiBhbmQgb25seSBpZiA/LCAqLCBvciArIGNhbiBmb2xsb3cgdGhlIHByZXZp
b3VzIGF0b20uCiAgIGJvb2wgcHJldl9yZXBlYXRhYmxlID0gZmFsc2U7CiAgIGZvciAoaW50IGkg
PSAwOyByZWdleFtpXTsgaSsrKSB7CiAgICAgaWYgKHJlZ2V4W2ldID09ICdcXCcpIHsgIC8vIEFu
IGVzY2FwZSBzZXF1ZW5jZQpAQCAtODIyLDggKzkwOCw4IEBAIGJvb2wgTWF0Y2hSZXBldGl0aW9u
QW5kUmVnZXhBdEhlYWQoCiAgIHJldHVybiBmYWxzZTsKIH0KIAotLy8gUmV0dXJucyB0cnVlIGlm
ZiByZWdleCBtYXRjaGVzIGEgcHJlZml4IG9mIHN0ci4gIHJlZ2V4IG11c3QgYmUgYQotLy8gdmFs
aWQgc2ltcGxlIHJlZ3VsYXIgZXhwcmVzc2lvbiBhbmQgbm90IHN0YXJ0IHdpdGggIl4iLCBvciB0
aGUKKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiByZWdleCBtYXRjaGVzIGEgcHJlZml4
IG9mIHN0ci4gcmVnZXggbXVzdAorLy8gYmUgYSB2YWxpZCBzaW1wbGUgcmVndWxhciBleHByZXNz
aW9uIGFuZCBub3Qgc3RhcnQgd2l0aCAiXiIsIG9yIHRoZQogLy8gcmVzdWx0IGlzIHVuZGVmaW5l
ZC4KIGJvb2wgTWF0Y2hSZWdleEF0SGVhZChjb25zdCBjaGFyKiByZWdleCwgY29uc3QgY2hhciog
c3RyKSB7CiAgIGlmICgqcmVnZXggPT0gJ1wwJykgIC8vIEFuIGVtcHR5IHJlZ2V4IG1hdGNoZXMg
YSBwcmVmaXggb2YgYW55dGhpbmcuCkBAIC04NTMsOCArOTM5LDggQEAgYm9vbCBNYXRjaFJlZ2V4
QXRIZWFkKGNvbnN0IGNoYXIqIHJlZ2V4LCBjb25zdCBjaGFyKiBzdHIpIHsKICAgfQogfQogCi0v
LyBSZXR1cm5zIHRydWUgaWZmIHJlZ2V4IG1hdGNoZXMgYW55IHN1YnN0cmluZyBvZiBzdHIuICBy
ZWdleCBtdXN0IGJlCi0vLyBhIHZhbGlkIHNpbXBsZSByZWd1bGFyIGV4cHJlc3Npb24sIG9yIHRo
ZSByZXN1bHQgaXMgdW5kZWZpbmVkLgorLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHJl
Z2V4IG1hdGNoZXMgYW55IHN1YnN0cmluZyBvZiBzdHIuICByZWdleCBtdXN0CisvLyBiZSBhIHZh
bGlkIHNpbXBsZSByZWd1bGFyIGV4cHJlc3Npb24sIG9yIHRoZSByZXN1bHQgaXMgdW5kZWZpbmVk
LgogLy8KIC8vIFRoZSBhbGdvcml0aG0gaXMgcmVjdXJzaXZlLCBidXQgdGhlIHJlY3Vyc2lvbiBk
ZXB0aCBkb2Vzbid0IGV4Y2VlZAogLy8gdGhlIHJlZ2V4IGxlbmd0aCwgc28gd2Ugd29uJ3QgbmVl
ZCB0byB3b3JyeSBhYm91dCBydW5uaW5nIG91dCBvZgpAQCAtODYyLDggKzk0OCw3IEBAIGJvb2wg
TWF0Y2hSZWdleEF0SGVhZChjb25zdCBjaGFyKiByZWdleCwgY29uc3QgY2hhciogc3RyKSB7CiAv
LyBleHBvbmVudGlhbCB3aXRoIHJlc3BlY3QgdG8gdGhlIHJlZ2V4IGxlbmd0aCArIHRoZSBzdHJp
bmcgbGVuZ3RoLAogLy8gYnV0IHVzdWFsbHkgaXQncyBtdXN0IGZhc3RlciAob2Z0ZW4gY2xvc2Ug
dG8gbGluZWFyKS4KIGJvb2wgTWF0Y2hSZWdleEFueXdoZXJlKGNvbnN0IGNoYXIqIHJlZ2V4LCBj
b25zdCBjaGFyKiBzdHIpIHsKLSAgaWYgKHJlZ2V4ID09IE5VTEwgfHwgc3RyID09IE5VTEwpCi0g
ICAgcmV0dXJuIGZhbHNlOworICBpZiAocmVnZXggPT0gbnVsbHB0ciB8fCBzdHIgPT0gbnVsbHB0
cikgcmV0dXJuIGZhbHNlOwogCiAgIGlmICgqcmVnZXggPT0gJ14nKQogICAgIHJldHVybiBNYXRj
aFJlZ2V4QXRIZWFkKHJlZ2V4ICsgMSwgc3RyKTsKQEAgLTg4MywyMSArOTY4LDIxIEBAIFJFOjp+
UkUoKSB7CiAgIGZyZWUoY29uc3RfY2FzdDxjaGFyKj4oZnVsbF9wYXR0ZXJuXykpOwogfQogCi0v
LyBSZXR1cm5zIHRydWUgaWZmIHJlZ3VsYXIgZXhwcmVzc2lvbiByZSBtYXRjaGVzIHRoZSBlbnRp
cmUgc3RyLgorLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHJlZ3VsYXIgZXhwcmVzc2lv
biByZSBtYXRjaGVzIHRoZSBlbnRpcmUgc3RyLgogYm9vbCBSRTo6RnVsbE1hdGNoKGNvbnN0IGNo
YXIqIHN0ciwgY29uc3QgUkUmIHJlKSB7CiAgIHJldHVybiByZS5pc192YWxpZF8gJiYgTWF0Y2hS
ZWdleEFueXdoZXJlKHJlLmZ1bGxfcGF0dGVybl8sIHN0cik7CiB9CiAKLS8vIFJldHVybnMgdHJ1
ZSBpZmYgcmVndWxhciBleHByZXNzaW9uIHJlIG1hdGNoZXMgYSBzdWJzdHJpbmcgb2Ygc3RyCi0v
LyAoaW5jbHVkaW5nIHN0ciBpdHNlbGYpLgorLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlm
IHJlZ3VsYXIgZXhwcmVzc2lvbiByZSBtYXRjaGVzIGEgc3Vic3RyaW5nIG9mCisvLyBzdHIgKGlu
Y2x1ZGluZyBzdHIgaXRzZWxmKS4KIGJvb2wgUkU6OlBhcnRpYWxNYXRjaChjb25zdCBjaGFyKiBz
dHIsIGNvbnN0IFJFJiByZSkgewogICByZXR1cm4gcmUuaXNfdmFsaWRfICYmIE1hdGNoUmVnZXhB
bnl3aGVyZShyZS5wYXR0ZXJuXywgc3RyKTsKIH0KIAogLy8gSW5pdGlhbGl6ZXMgYW4gUkUgZnJv
bSBpdHMgc3RyaW5nIHJlcHJlc2VudGF0aW9uLgogdm9pZCBSRTo6SW5pdChjb25zdCBjaGFyKiBy
ZWdleCkgewotICBwYXR0ZXJuXyA9IGZ1bGxfcGF0dGVybl8gPSBOVUxMOwotICBpZiAocmVnZXgg
IT0gTlVMTCkgeworICBwYXR0ZXJuXyA9IGZ1bGxfcGF0dGVybl8gPSBudWxscHRyOworICBpZiAo
cmVnZXggIT0gbnVsbHB0cikgewogICAgIHBhdHRlcm5fID0gcG9zaXg6OlN0ckR1cChyZWdleCk7
CiAgIH0KIApAQCAtOTM1LDcgKzEwMjAsNyBAQCBjb25zdCBjaGFyIGtVbmtub3duRmlsZVtdID0g
InVua25vd24gZmlsZSI7CiAvLyBGb3JtYXRzIGEgc291cmNlIGZpbGUgcGF0aCBhbmQgYSBsaW5l
IG51bWJlciBhcyB0aGV5IHdvdWxkIGFwcGVhcgogLy8gaW4gYW4gZXJyb3IgbWVzc2FnZSBmcm9t
IHRoZSBjb21waWxlciB1c2VkIHRvIGNvbXBpbGUgdGhpcyBjb2RlLgogR1RFU1RfQVBJXyA6OnN0
ZDo6c3RyaW5nIEZvcm1hdEZpbGVMb2NhdGlvbihjb25zdCBjaGFyKiBmaWxlLCBpbnQgbGluZSkg
ewotICBjb25zdCBzdGQ6OnN0cmluZyBmaWxlX25hbWUoZmlsZSA9PSBOVUxMID8ga1Vua25vd25G
aWxlIDogZmlsZSk7CisgIGNvbnN0IHN0ZDo6c3RyaW5nIGZpbGVfbmFtZShmaWxlID09IG51bGxw
dHIgPyBrVW5rbm93bkZpbGUgOiBmaWxlKTsKIAogICBpZiAobGluZSA8IDApIHsKICAgICByZXR1
cm4gZmlsZV9uYW1lICsgIjoiOwpAQCAtOTU0LDcgKzEwMzksNyBAQCBHVEVTVF9BUElfIDo6c3Rk
OjpzdHJpbmcgRm9ybWF0RmlsZUxvY2F0aW9uKGNvbnN0IGNoYXIqIGZpbGUsIGludCBsaW5lKSB7
CiAvLyB0byB0aGUgZmlsZSBsb2NhdGlvbiBpdCBwcm9kdWNlcywgdW5saWtlIEZvcm1hdEZpbGVM
b2NhdGlvbigpLgogR1RFU1RfQVBJXyA6OnN0ZDo6c3RyaW5nIEZvcm1hdENvbXBpbGVySW5kZXBl
bmRlbnRGaWxlTG9jYXRpb24oCiAgICAgY29uc3QgY2hhciogZmlsZSwgaW50IGxpbmUpIHsKLSAg
Y29uc3Qgc3RkOjpzdHJpbmcgZmlsZV9uYW1lKGZpbGUgPT0gTlVMTCA/IGtVbmtub3duRmlsZSA6
IGZpbGUpOworICBjb25zdCBzdGQ6OnN0cmluZyBmaWxlX25hbWUoZmlsZSA9PSBudWxscHRyID8g
a1Vua25vd25GaWxlIDogZmlsZSk7CiAKICAgaWYgKGxpbmUgPCAwKQogICAgIHJldHVybiBmaWxl
X25hbWU7CkBAIC0xMDIxLDIwICsxMTA2LDIyIEBAIGNsYXNzIENhcHR1cmVkU3RyZWFtIHsKICAg
ICAvLyBjb2RlIGFzIHBhcnQgb2YgYSByZWd1bGFyIHN0YW5kYWxvbmUgZXhlY3V0YWJsZSwgd2hp
Y2ggZG9lc24ndAogICAgIC8vIHJ1biBpbiBhIERhbHZpayBwcm9jZXNzIChlLmcuIHdoZW4gcnVu
bmluZyBpdCB0aHJvdWdoICdhZGIgc2hlbGwnKS4KICAgICAvLwotICAgIC8vIFRoZSBsb2NhdGlv
biAvc2RjYXJkIGlzIGRpcmVjdGx5IGFjY2Vzc2libGUgZnJvbSBuYXRpdmUgY29kZQotICAgIC8v
IGFuZCBpcyB0aGUgb25seSBsb2NhdGlvbiAodW5vZmZpY2lhbGx5KSBzdXBwb3J0ZWQgYnkgdGhl
IEFuZHJvaWQKLSAgICAvLyB0ZWFtLiBJdCdzIGdlbmVyYWxseSBhIHN5bWxpbmsgdG8gdGhlIHJl
YWwgU0QgQ2FyZCBtb3VudCBwb2ludAotICAgIC8vIHdoaWNoIGNhbiBiZSAvbW50L3NkY2FyZCwg
L21udC9zZGNhcmQwLCAvc3lzdGVtL21lZGlhL3NkY2FyZCwgb3IKLSAgICAvLyBvdGhlciBPRU0t
Y3VzdG9taXplZCBsb2NhdGlvbnMuIE5ldmVyIHJlbHkgb24gdGhlc2UsIGFuZCBhbHdheXMKLSAg
ICAvLyB1c2UgL3NkY2FyZC4KLSAgICBjaGFyIG5hbWVfdGVtcGxhdGVbXSA9ICIvc2RjYXJkL2d0
ZXN0X2NhcHR1cmVkX3N0cmVhbS5YWFhYWFgiOworICAgIC8vIFRoZSBsb2NhdGlvbiAvZGF0YS9s
b2NhbC90bXAgaXMgZGlyZWN0bHkgYWNjZXNzaWJsZSBmcm9tIG5hdGl2ZSBjb2RlLgorICAgIC8v
ICcvc2RjYXJkJyBhbmQgb3RoZXIgdmFyaWFudHMgY2Fubm90IGJlIHJlbGllZCBvbiwgYXMgdGhl
eSBhcmUgbm90CisgICAgLy8gZ3VhcmFudGVlZCB0byBiZSBtb3VudGVkLCBvciBtYXkgaGF2ZSBh
IGRlbGF5IGluIG1vdW50aW5nLgorICAgIGNoYXIgbmFtZV90ZW1wbGF0ZVtdID0gIi9kYXRhL2xv
Y2FsL3RtcC9ndGVzdF9jYXB0dXJlZF9zdHJlYW0uWFhYWFhYIjsKICMgIGVsc2UKICAgICBjaGFy
IG5hbWVfdGVtcGxhdGVbXSA9ICIvdG1wL2NhcHR1cmVkX3N0cmVhbS5YWFhYWFgiOwogIyAgZW5k
aWYgIC8vIEdURVNUX09TX0xJTlVYX0FORFJPSUQKICAgICBjb25zdCBpbnQgY2FwdHVyZWRfZmQg
PSBta3N0ZW1wKG5hbWVfdGVtcGxhdGUpOworICAgIGlmIChjYXB0dXJlZF9mZCA9PSAtMSkgewor
ICAgICAgR1RFU1RfTE9HXyhXQVJOSU5HKQorICAgICAgICAgIDw8ICJGYWlsZWQgdG8gY3JlYXRl
IHRtcCBmaWxlICIgPDwgbmFtZV90ZW1wbGF0ZQorICAgICAgICAgIDw8ICIgZm9yIHRlc3Q7IGRv
ZXMgdGhlIHRlc3QgaGF2ZSBhY2Nlc3MgdG8gdGhlIC90bXAgZGlyZWN0b3J5PyI7CisgICAgfQog
ICAgIGZpbGVuYW1lXyA9IG5hbWVfdGVtcGxhdGU7CiAjIGVuZGlmICAvLyBHVEVTVF9PU19XSU5E
T1dTCi0gICAgZmZsdXNoKE5VTEwpOworICAgIGZmbHVzaChudWxscHRyKTsKICAgICBkdXAyKGNh
cHR1cmVkX2ZkLCBmZF8pOwogICAgIGNsb3NlKGNhcHR1cmVkX2ZkKTsKICAgfQpAQCAtMTA0Niwx
MyArMTEzMywxNyBAQCBjbGFzcyBDYXB0dXJlZFN0cmVhbSB7CiAgIHN0ZDo6c3RyaW5nIEdldENh
cHR1cmVkU3RyaW5nKCkgewogICAgIGlmICh1bmNhcHR1cmVkX2ZkXyAhPSAtMSkgewogICAgICAg
Ly8gUmVzdG9yZXMgdGhlIG9yaWdpbmFsIHN0cmVhbS4KLSAgICAgIGZmbHVzaChOVUxMKTsKKyAg
ICAgIGZmbHVzaChudWxscHRyKTsKICAgICAgIGR1cDIodW5jYXB0dXJlZF9mZF8sIGZkXyk7CiAg
ICAgICBjbG9zZSh1bmNhcHR1cmVkX2ZkXyk7CiAgICAgICB1bmNhcHR1cmVkX2ZkXyA9IC0xOwog
ICAgIH0KIAogICAgIEZJTEUqIGNvbnN0IGZpbGUgPSBwb3NpeDo6Rk9wZW4oZmlsZW5hbWVfLmNf
c3RyKCksICJyIik7CisgICAgaWYgKGZpbGUgPT0gbnVsbHB0cikgeworICAgICAgR1RFU1RfTE9H
XyhGQVRBTCkgPDwgIkZhaWxlZCB0byBvcGVuIHRtcCBmaWxlICIgPDwgZmlsZW5hbWVfCisgICAg
ICAgICAgICAgICAgICAgICAgICA8PCAiIGZvciBjYXB0dXJpbmcgc3RyZWFtLiI7CisgICAgfQog
ICAgIGNvbnN0IHN0ZDo6c3RyaW5nIGNvbnRlbnQgPSBSZWFkRW50aXJlRmlsZShmaWxlKTsKICAg
ICBwb3NpeDo6RkNsb3NlKGZpbGUpOwogICAgIHJldHVybiBjb250ZW50OwpAQCAtMTA2OSwxMyAr
MTE2MCwxMyBAQCBjbGFzcyBDYXB0dXJlZFN0cmVhbSB7CiAKIEdURVNUX0RJU0FCTEVfTVNDX0RF
UFJFQ0FURURfUE9QXygpCiAKLXN0YXRpYyBDYXB0dXJlZFN0cmVhbSogZ19jYXB0dXJlZF9zdGRl
cnIgPSBOVUxMOwotc3RhdGljIENhcHR1cmVkU3RyZWFtKiBnX2NhcHR1cmVkX3N0ZG91dCA9IE5V
TEw7CitzdGF0aWMgQ2FwdHVyZWRTdHJlYW0qIGdfY2FwdHVyZWRfc3RkZXJyID0gbnVsbHB0cjsK
K3N0YXRpYyBDYXB0dXJlZFN0cmVhbSogZ19jYXB0dXJlZF9zdGRvdXQgPSBudWxscHRyOwogCiAv
LyBTdGFydHMgY2FwdHVyaW5nIGFuIG91dHB1dCBzdHJlYW0gKHN0ZG91dC9zdGRlcnIpLgogc3Rh
dGljIHZvaWQgQ2FwdHVyZVN0cmVhbShpbnQgZmQsIGNvbnN0IGNoYXIqIHN0cmVhbV9uYW1lLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICBDYXB0dXJlZFN0cmVhbSoqIHN0cmVhbSkgewotICBp
ZiAoKnN0cmVhbSAhPSBOVUxMKSB7CisgIGlmICgqc3RyZWFtICE9IG51bGxwdHIpIHsKICAgICBH
VEVTVF9MT0dfKEZBVEFMKSA8PCAiT25seSBvbmUgIiA8PCBzdHJlYW1fbmFtZQogICAgICAgICAg
ICAgICAgICAgICAgIDw8ICIgY2FwdHVyZXIgY2FuIGV4aXN0IGF0IGEgdGltZS4iOwogICB9CkBA
IC0xMDg3LDcgKzExNzgsNyBAQCBzdGF0aWMgc3RkOjpzdHJpbmcgR2V0Q2FwdHVyZWRTdHJlYW0o
Q2FwdHVyZWRTdHJlYW0qKiBjYXB0dXJlZF9zdHJlYW0pIHsKICAgY29uc3Qgc3RkOjpzdHJpbmcg
Y29udGVudCA9ICgqY2FwdHVyZWRfc3RyZWFtKS0+R2V0Q2FwdHVyZWRTdHJpbmcoKTsKIAogICBk
ZWxldGUgKmNhcHR1cmVkX3N0cmVhbTsKLSAgKmNhcHR1cmVkX3N0cmVhbSA9IE5VTEw7CisgICpj
YXB0dXJlZF9zdHJlYW0gPSBudWxscHRyOwogCiAgIHJldHVybiBjb250ZW50OwogfQpAQCAtMTE0
NiwxMCArMTIzNywxMSBAQCBzdGQ6OnN0cmluZyBSZWFkRW50aXJlRmlsZShGSUxFKiBmaWxlKSB7
CiB9CiAKICNpZiBHVEVTVF9IQVNfREVBVEhfVEVTVAotc3RhdGljIGNvbnN0IHN0ZDo6dmVjdG9y
PHN0ZDo6c3RyaW5nPiogZ19pbmplY3RlZF90ZXN0X2FyZ3ZzID0gTlVMTDsgIC8vIE93bmVkLgor
c3RhdGljIGNvbnN0IHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiogZ19pbmplY3RlZF90ZXN0X2Fy
Z3ZzID0KKyAgICBudWxscHRyOyAgLy8gT3duZWQuCiAKIHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5n
PiBHZXRJbmplY3RhYmxlQXJndnMoKSB7Ci0gIGlmIChnX2luamVjdGVkX3Rlc3RfYXJndnMgIT0g
TlVMTCkgeworICBpZiAoZ19pbmplY3RlZF90ZXN0X2FyZ3ZzICE9IG51bGxwdHIpIHsKICAgICBy
ZXR1cm4gKmdfaW5qZWN0ZWRfdGVzdF9hcmd2czsKICAgfQogICByZXR1cm4gR2V0QXJndnMoKTsK
QEAgLTExNjUsMTYgKzEyNTcsOSBAQCB2b2lkIFNldEluamVjdGFibGVBcmd2cyhjb25zdCBzdGQ6
OnZlY3RvcjxzdGQ6OnN0cmluZz4mIG5ld19hcmd2cykgewogICAgICAgbmV3IHN0ZDo6dmVjdG9y
PHN0ZDo6c3RyaW5nPihuZXdfYXJndnMuYmVnaW4oKSwgbmV3X2FyZ3ZzLmVuZCgpKSk7CiB9CiAK
LSNpZiBHVEVTVF9IQVNfR0xPQkFMX1NUUklORwotdm9pZCBTZXRJbmplY3RhYmxlQXJndnMoY29u
c3Qgc3RkOjp2ZWN0b3I8IDo6c3RyaW5nPiYgbmV3X2FyZ3ZzKSB7Ci0gIFNldEluamVjdGFibGVB
cmd2cygKLSAgICAgIG5ldyBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4obmV3X2FyZ3ZzLmJlZ2lu
KCksIG5ld19hcmd2cy5lbmQoKSkpOwotfQotI2VuZGlmICAvLyBHVEVTVF9IQVNfR0xPQkFMX1NU
UklORwotCiB2b2lkIENsZWFySW5qZWN0YWJsZUFyZ3ZzKCkgewogICBkZWxldGUgZ19pbmplY3Rl
ZF90ZXN0X2FyZ3ZzOwotICBnX2luamVjdGVkX3Rlc3RfYXJndnMgPSBOVUxMOworICBnX2luamVj
dGVkX3Rlc3RfYXJndnMgPSBudWxscHRyOwogfQogI2VuZGlmICAvLyBHVEVTVF9IQVNfREVBVEhf
VEVTVAogCkBAIC0xMjA1LDkgKzEyOTAsOSBAQCBzdGF0aWMgc3RkOjpzdHJpbmcgRmxhZ1RvRW52
VmFyKGNvbnN0IGNoYXIqIGZsYWcpIHsKIC8vIFBhcnNlcyAnc3RyJyBmb3IgYSAzMi1iaXQgc2ln
bmVkIGludGVnZXIuICBJZiBzdWNjZXNzZnVsLCB3cml0ZXMKIC8vIHRoZSByZXN1bHQgdG8gKnZh
bHVlIGFuZCByZXR1cm5zIHRydWU7IG90aGVyd2lzZSBsZWF2ZXMgKnZhbHVlCiAvLyB1bmNoYW5n
ZWQgYW5kIHJldHVybnMgZmFsc2UuCi1ib29sIFBhcnNlSW50MzIoY29uc3QgTWVzc2FnZSYgc3Jj
X3RleHQsIGNvbnN0IGNoYXIqIHN0ciwgSW50MzIqIHZhbHVlKSB7Citib29sIFBhcnNlSW50MzIo
Y29uc3QgTWVzc2FnZSYgc3JjX3RleHQsIGNvbnN0IGNoYXIqIHN0ciwgaW50MzJfdCogdmFsdWUp
IHsKICAgLy8gUGFyc2VzIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSBhcyBhIGRlY2ltYWwgaW50
ZWdlci4KLSAgY2hhciogZW5kID0gTlVMTDsKKyAgY2hhciogZW5kID0gbnVsbHB0cjsKICAgY29u
c3QgbG9uZyBsb25nX3ZhbHVlID0gc3RydG9sKHN0ciwgJmVuZCwgMTApOyAgLy8gTk9MSU5UCiAK
ICAgLy8gSGFzIHN0cnRvbCgpIGNvbnN1bWVkIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmc/
CkBAIC0xMjIyLDEzICsxMzA3LDEzIEBAIGJvb2wgUGFyc2VJbnQzMihjb25zdCBNZXNzYWdlJiBz
cmNfdGV4dCwgY29uc3QgY2hhciogc3RyLCBJbnQzMiogdmFsdWUpIHsKICAgICByZXR1cm4gZmFs
c2U7CiAgIH0KIAotICAvLyBJcyB0aGUgcGFyc2VkIHZhbHVlIGluIHRoZSByYW5nZSBvZiBhbiBJ
bnQzMj8KLSAgY29uc3QgSW50MzIgcmVzdWx0ID0gc3RhdGljX2Nhc3Q8SW50MzI+KGxvbmdfdmFs
dWUpOworICAvLyBJcyB0aGUgcGFyc2VkIHZhbHVlIGluIHRoZSByYW5nZSBvZiBhbiBpbnQzMl90
PworICBjb25zdCBhdXRvIHJlc3VsdCA9IHN0YXRpY19jYXN0PGludDMyX3Q+KGxvbmdfdmFsdWUp
OwogICBpZiAobG9uZ192YWx1ZSA9PSBMT05HX01BWCB8fCBsb25nX3ZhbHVlID09IExPTkdfTUlO
IHx8CiAgICAgICAvLyBUaGUgcGFyc2VkIHZhbHVlIG92ZXJmbG93cyBhcyBhIGxvbmcuICAoc3Ry
dG9sKCkgcmV0dXJucwogICAgICAgLy8gTE9OR19NQVggb3IgTE9OR19NSU4gd2hlbiB0aGUgaW5w
dXQgb3ZlcmZsb3dzLikKICAgICAgIHJlc3VsdCAhPSBsb25nX3ZhbHVlCi0gICAgICAvLyBUaGUg
cGFyc2VkIHZhbHVlIG92ZXJmbG93cyBhcyBhbiBJbnQzMi4KKyAgICAgIC8vIFRoZSBwYXJzZWQg
dmFsdWUgb3ZlcmZsb3dzIGFzIGFuIGludDMyX3QuCiAgICAgICApIHsKICAgICBNZXNzYWdlIG1z
ZzsKICAgICBtc2cgPDwgIldBUk5JTkc6ICIgPDwgc3JjX3RleHQKQEAgLTEyNDYsMzMgKzEzMzEs
MzMgQEAgYm9vbCBQYXJzZUludDMyKGNvbnN0IE1lc3NhZ2UmIHNyY190ZXh0LCBjb25zdCBjaGFy
KiBzdHIsIEludDMyKiB2YWx1ZSkgewogLy8gUmVhZHMgYW5kIHJldHVybnMgdGhlIEJvb2xlYW4g
ZW52aXJvbm1lbnQgdmFyaWFibGUgY29ycmVzcG9uZGluZyB0bwogLy8gdGhlIGdpdmVuIGZsYWc7
IGlmIGl0J3Mgbm90IHNldCwgcmV0dXJucyBkZWZhdWx0X3ZhbHVlLgogLy8KLS8vIFRoZSB2YWx1
ZSBpcyBjb25zaWRlcmVkIHRydWUgaWZmIGl0J3Mgbm90ICIwIi4KKy8vIFRoZSB2YWx1ZSBpcyBj
b25zaWRlcmVkIHRydWUgaWYgYW5kIG9ubHkgaWYgaXQncyBub3QgIjAiLgogYm9vbCBCb29sRnJv
bUdUZXN0RW52KGNvbnN0IGNoYXIqIGZsYWcsIGJvb2wgZGVmYXVsdF92YWx1ZSkgewogI2lmIGRl
ZmluZWQoR1RFU1RfR0VUX0JPT0xfRlJPTV9FTlZfKQogICByZXR1cm4gR1RFU1RfR0VUX0JPT0xf
RlJPTV9FTlZfKGZsYWcsIGRlZmF1bHRfdmFsdWUpOwogI2Vsc2UKICAgY29uc3Qgc3RkOjpzdHJp
bmcgZW52X3ZhciA9IEZsYWdUb0VudlZhcihmbGFnKTsKICAgY29uc3QgY2hhciogY29uc3Qgc3Ry
aW5nX3ZhbHVlID0gcG9zaXg6OkdldEVudihlbnZfdmFyLmNfc3RyKCkpOwotICByZXR1cm4gc3Ry
aW5nX3ZhbHVlID09IE5VTEwgPwotICAgICAgZGVmYXVsdF92YWx1ZSA6IHN0cmNtcChzdHJpbmdf
dmFsdWUsICIwIikgIT0gMDsKKyAgcmV0dXJuIHN0cmluZ192YWx1ZSA9PSBudWxscHRyID8gZGVm
YXVsdF92YWx1ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBzdHJjbXAoc3Ry
aW5nX3ZhbHVlLCAiMCIpICE9IDA7CiAjZW5kaWYgIC8vIGRlZmluZWQoR1RFU1RfR0VUX0JPT0xf
RlJPTV9FTlZfKQogfQogCiAvLyBSZWFkcyBhbmQgcmV0dXJucyBhIDMyLWJpdCBpbnRlZ2VyIHN0
b3JlZCBpbiB0aGUgZW52aXJvbm1lbnQKIC8vIHZhcmlhYmxlIGNvcnJlc3BvbmRpbmcgdG8gdGhl
IGdpdmVuIGZsYWc7IGlmIGl0IGlzbid0IHNldCBvcgogLy8gZG9lc24ndCByZXByZXNlbnQgYSB2
YWxpZCAzMi1iaXQgaW50ZWdlciwgcmV0dXJucyBkZWZhdWx0X3ZhbHVlLgotSW50MzIgSW50MzJG
cm9tR1Rlc3RFbnYoY29uc3QgY2hhciogZmxhZywgSW50MzIgZGVmYXVsdF92YWx1ZSkgeworaW50
MzJfdCBJbnQzMkZyb21HVGVzdEVudihjb25zdCBjaGFyKiBmbGFnLCBpbnQzMl90IGRlZmF1bHRf
dmFsdWUpIHsKICNpZiBkZWZpbmVkKEdURVNUX0dFVF9JTlQzMl9GUk9NX0VOVl8pCiAgIHJldHVy
biBHVEVTVF9HRVRfSU5UMzJfRlJPTV9FTlZfKGZsYWcsIGRlZmF1bHRfdmFsdWUpOwogI2Vsc2UK
ICAgY29uc3Qgc3RkOjpzdHJpbmcgZW52X3ZhciA9IEZsYWdUb0VudlZhcihmbGFnKTsKICAgY29u
c3QgY2hhciogY29uc3Qgc3RyaW5nX3ZhbHVlID0gcG9zaXg6OkdldEVudihlbnZfdmFyLmNfc3Ry
KCkpOwotICBpZiAoc3RyaW5nX3ZhbHVlID09IE5VTEwpIHsKKyAgaWYgKHN0cmluZ192YWx1ZSA9
PSBudWxscHRyKSB7CiAgICAgLy8gVGhlIGVudmlyb25tZW50IHZhcmlhYmxlIGlzIG5vdCBzZXQu
CiAgICAgcmV0dXJuIGRlZmF1bHRfdmFsdWU7CiAgIH0KIAotICBJbnQzMiByZXN1bHQgPSBkZWZh
dWx0X3ZhbHVlOworICBpbnQzMl90IHJlc3VsdCA9IGRlZmF1bHRfdmFsdWU7CiAgIGlmICghUGFy
c2VJbnQzMihNZXNzYWdlKCkgPDwgIkVudmlyb25tZW50IHZhcmlhYmxlICIgPDwgZW52X3ZhciwK
ICAgICAgICAgICAgICAgICAgIHN0cmluZ192YWx1ZSwgJnJlc3VsdCkpIHsKICAgICBwcmludGYo
IlRoZSBkZWZhdWx0IHZhbHVlICVzIGlzIHVzZWQuXG4iLApAQCAtMTI5Niw3ICsxMzgxLDcgQEAg
SW50MzIgSW50MzJGcm9tR1Rlc3RFbnYoY29uc3QgY2hhciogZmxhZywgSW50MzIgZGVmYXVsdF92
YWx1ZSkgewogc3RkOjpzdHJpbmcgT3V0cHV0RmxhZ0Fsc29DaGVja0VudlZhcigpewogICBzdGQ6
OnN0cmluZyBkZWZhdWx0X3ZhbHVlX2Zvcl9vdXRwdXRfZmxhZyA9ICIiOwogICBjb25zdCBjaGFy
KiB4bWxfb3V0cHV0X2ZpbGVfZW52ID0gcG9zaXg6OkdldEVudigiWE1MX09VVFBVVF9GSUxFIik7
Ci0gIGlmIChOVUxMICE9IHhtbF9vdXRwdXRfZmlsZV9lbnYpIHsKKyAgaWYgKG51bGxwdHIgIT0g
eG1sX291dHB1dF9maWxlX2VudikgewogICAgIGRlZmF1bHRfdmFsdWVfZm9yX291dHB1dF9mbGFn
ID0gc3RkOjpzdHJpbmcoInhtbDoiKSArIHhtbF9vdXRwdXRfZmlsZV9lbnY7CiAgIH0KICAgcmV0
dXJuIGRlZmF1bHRfdmFsdWVfZm9yX291dHB1dF9mbGFnOwpAQCAtMTMxMCw3ICsxMzk1LDcgQEAg
Y29uc3QgY2hhciogU3RyaW5nRnJvbUdUZXN0RW52KGNvbnN0IGNoYXIqIGZsYWcsIGNvbnN0IGNo
YXIqIGRlZmF1bHRfdmFsdWUpIHsKICNlbHNlCiAgIGNvbnN0IHN0ZDo6c3RyaW5nIGVudl92YXIg
PSBGbGFnVG9FbnZWYXIoZmxhZyk7CiAgIGNvbnN0IGNoYXIqIGNvbnN0IHZhbHVlID0gcG9zaXg6
OkdldEVudihlbnZfdmFyLmNfc3RyKCkpOwotICByZXR1cm4gdmFsdWUgPT0gTlVMTCA/IGRlZmF1
bHRfdmFsdWUgOiB2YWx1ZTsKKyAgcmV0dXJuIHZhbHVlID09IG51bGxwdHIgPyBkZWZhdWx0X3Zh
bHVlIDogdmFsdWU7CiAjZW5kaWYgIC8vIGRlZmluZWQoR1RFU1RfR0VUX1NUUklOR19GUk9NX0VO
Vl8pCiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9z
cmMvc3JjL2d0ZXN0LXByaW50ZXJzLmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0
ZXN0L3NyYy9zcmMvZ3Rlc3QtcHJpbnRlcnMuY2MKaW5kZXggYjUwMjI1NDlmOTAyOTgyMzVhMjcz
NjRlY2E3ZDQ5ZTQwNjk5MTE5NC4uMzMzN2JlMzEyZWE0MDBmZjc4Yzc4NzY2ZWM0YTViYTIyOWIw
MjA2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9z
cmMvZ3Rlc3QtcHJpbnRlcnMuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0
ZXN0L3NyYy9zcmMvZ3Rlc3QtcHJpbnRlcnMuY2MKQEAgLTU5LDYgKzU5LDcgQEAgdXNpbmcgOjpz
dGQ6Om9zdHJlYW07CiAvLyBQcmludHMgYSBzZWdtZW50IG9mIGJ5dGVzIGluIHRoZSBnaXZlbiBv
YmplY3QuCiBHVEVTVF9BVFRSSUJVVEVfTk9fU0FOSVRJWkVfTUVNT1JZXwogR1RFU1RfQVRUUklC
VVRFX05PX1NBTklUSVpFX0FERFJFU1NfCitHVEVTVF9BVFRSSUJVVEVfTk9fU0FOSVRJWkVfSFdB
RERSRVNTXwogR1RFU1RfQVRUUklCVVRFX05PX1NBTklUSVpFX1RIUkVBRF8KIHZvaWQgUHJpbnRC
eXRlU2VnbWVudEluT2JqZWN0VG8oY29uc3QgdW5zaWduZWQgY2hhciogb2JqX2J5dGVzLCBzaXpl
X3Qgc3RhcnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBjb3VudCwg
b3N0cmVhbSogb3MpIHsKQEAgLTg5LDcgKzkwLDYgQEAgdm9pZCBQcmludEJ5dGVzSW5PYmplY3RU
b0ltcGwoY29uc3QgdW5zaWduZWQgY2hhciogb2JqX2J5dGVzLCBzaXplX3QgY291bnQsCiAgIC8v
IElmIHRoZSBvYmplY3Qgc2l6ZSBpcyBiaWdnZXIgdGhhbiBrVGhyZXNob2xkLCB3ZSdsbCBoYXZl
IHRvIG9taXQKICAgLy8gc29tZSBkZXRhaWxzIGJ5IHByaW50aW5nIG9ubHkgdGhlIGZpcnN0IGFu
ZCB0aGUgbGFzdCBrQ2h1bmtTaXplCiAgIC8vIGJ5dGVzLgotICAvLyBGSVhNRTogbGV0IHRoZSB1
c2VyIGNvbnRyb2wgdGhlIHRocmVzaG9sZCB1c2luZyBhIGZsYWcuCiAgIGlmIChjb3VudCA8IGtU
aHJlc2hvbGQpIHsKICAgICBQcmludEJ5dGVTZWdtZW50SW5PYmplY3RUbyhvYmpfYnl0ZXMsIDAs
IGNvdW50LCBvcyk7CiAgIH0gZWxzZSB7CkBAIC0xNDQsNyArMTQ0LDggQEAgaW5saW5lIGJvb2wg
SXNQcmludGFibGVBc2NpaSh3Y2hhcl90IGMpIHsKIC8vIHdoaWNoIGlzIHRoZSB0eXBlIG9mIGMu
CiB0ZW1wbGF0ZSA8dHlwZW5hbWUgVW5zaWduZWRDaGFyLCB0eXBlbmFtZSBDaGFyPgogc3RhdGlj
IENoYXJGb3JtYXQgUHJpbnRBc0NoYXJMaXRlcmFsVG8oQ2hhciBjLCBvc3RyZWFtKiBvcykgewot
ICBzd2l0Y2ggKHN0YXRpY19jYXN0PHdjaGFyX3Q+KGMpKSB7CisgIHdjaGFyX3Qgd19jID0gc3Rh
dGljX2Nhc3Q8d2NoYXJfdD4oYyk7CisgIHN3aXRjaCAod19jKSB7CiAgICAgY2FzZSBMJ1wwJzoK
ICAgICAgICpvcyA8PCAiXFwwIjsKICAgICAgIGJyZWFrOwpAQCAtMTc2LDcgKzE3Nyw3IEBAIHN0
YXRpYyBDaGFyRm9ybWF0IFByaW50QXNDaGFyTGl0ZXJhbFRvKENoYXIgYywgb3N0cmVhbSogb3Mp
IHsKICAgICAgICpvcyA8PCAiXFx2IjsKICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6Ci0gICAg
ICBpZiAoSXNQcmludGFibGVBc2NpaShjKSkgeworICAgICAgaWYgKElzUHJpbnRhYmxlQXNjaWko
d19jKSkgewogICAgICAgICAqb3MgPDwgc3RhdGljX2Nhc3Q8Y2hhcj4oYyk7CiAgICAgICAgIHJl
dHVybiBrQXNJczsKICAgICAgIH0gZWxzZSB7CkBAIC0yMzYsNyArMjM3LDcgQEAgdm9pZCBQcmlu
dENoYXJBbmRDb2RlVG8oQ2hhciBjLCBvc3RyZWFtKiBvcykgewogICBpZiAoZm9ybWF0ID09IGtI
ZXhFc2NhcGUgfHwgKDEgPD0gYyAmJiBjIDw9IDkpKSB7CiAgICAgLy8gRG8gbm90aGluZy4KICAg
fSBlbHNlIHsKLSAgICAqb3MgPDwgIiwgMHgiIDw8IFN0cmluZzo6Rm9ybWF0SGV4SW50KHN0YXRp
Y19jYXN0PFVuc2lnbmVkQ2hhcj4oYykpOworICAgICpvcyA8PCAiLCAweCIgPDwgU3RyaW5nOjpG
b3JtYXRIZXhJbnQoc3RhdGljX2Nhc3Q8aW50PihjKSk7CiAgIH0KICAgKm9zIDw8ICIpIjsKIH0K
QEAgLTI2MSw2ICsyNjIsNyBAQCB2b2lkIFByaW50VG8od2NoYXJfdCB3Yywgb3N0cmVhbSogb3Mp
IHsKIHRlbXBsYXRlIDx0eXBlbmFtZSBDaGFyVHlwZT4KIEdURVNUX0FUVFJJQlVURV9OT19TQU5J
VElaRV9NRU1PUllfCiBHVEVTVF9BVFRSSUJVVEVfTk9fU0FOSVRJWkVfQUREUkVTU18KK0dURVNU
X0FUVFJJQlVURV9OT19TQU5JVElaRV9IV0FERFJFU1NfCiBHVEVTVF9BVFRSSUJVVEVfTk9fU0FO
SVRJWkVfVEhSRUFEXwogc3RhdGljIENoYXJGb3JtYXQgUHJpbnRDaGFyc0FzU3RyaW5nVG8oCiAg
ICAgY29uc3QgQ2hhclR5cGUqIGJlZ2luLCBzaXplX3QgbGVuLCBvc3RyZWFtKiBvcykgewpAQCAt
MjkxLDYgKzI5Myw3IEBAIHN0YXRpYyBDaGFyRm9ybWF0IFByaW50Q2hhcnNBc1N0cmluZ1RvKAog
dGVtcGxhdGUgPHR5cGVuYW1lIENoYXJUeXBlPgogR1RFU1RfQVRUUklCVVRFX05PX1NBTklUSVpF
X01FTU9SWV8KIEdURVNUX0FUVFJJQlVURV9OT19TQU5JVElaRV9BRERSRVNTXworR1RFU1RfQVRU
UklCVVRFX05PX1NBTklUSVpFX0hXQUREUkVTU18KIEdURVNUX0FUVFJJQlVURV9OT19TQU5JVEla
RV9USFJFQURfCiBzdGF0aWMgdm9pZCBVbml2ZXJzYWxQcmludENoYXJBcnJheSgKICAgICBjb25z
dCBDaGFyVHlwZSogYmVnaW4sIHNpemVfdCBsZW4sIG9zdHJlYW0qIG9zKSB7CkBAIC0zMjcsNyAr
MzMwLDcgQEAgdm9pZCBVbml2ZXJzYWxQcmludEFycmF5KGNvbnN0IHdjaGFyX3QqIGJlZ2luLCBz
aXplX3QgbGVuLCBvc3RyZWFtKiBvcykgewogCiAvLyBQcmludHMgdGhlIGdpdmVuIEMgc3RyaW5n
IHRvIHRoZSBvc3RyZWFtLgogdm9pZCBQcmludFRvKGNvbnN0IGNoYXIqIHMsIG9zdHJlYW0qIG9z
KSB7Ci0gIGlmIChzID09IE5VTEwpIHsKKyAgaWYgKHMgPT0gbnVsbHB0cikgewogICAgICpvcyA8
PCAiTlVMTCI7CiAgIH0gZWxzZSB7CiAgICAgKm9zIDw8IEltcGxpY2l0Q2FzdF88Y29uc3Qgdm9p
ZCo+KHMpIDw8ICIgcG9pbnRpbmcgdG8gIjsKQEAgLTM0NCw3ICszNDcsNyBAQCB2b2lkIFByaW50
VG8oY29uc3QgY2hhciogcywgb3N0cmVhbSogb3MpIHsKICNpZiAhZGVmaW5lZChfTVNDX1ZFUikg
fHwgZGVmaW5lZChfTkFUSVZFX1dDSEFSX1RfREVGSU5FRCkKIC8vIFByaW50cyB0aGUgZ2l2ZW4g
d2lkZSBDIHN0cmluZyB0byB0aGUgb3N0cmVhbS4KIHZvaWQgUHJpbnRUbyhjb25zdCB3Y2hhcl90
KiBzLCBvc3RyZWFtKiBvcykgewotICBpZiAocyA9PSBOVUxMKSB7CisgIGlmIChzID09IG51bGxw
dHIpIHsKICAgICAqb3MgPDwgIk5VTEwiOwogICB9IGVsc2UgewogICAgICpvcyA8PCBJbXBsaWNp
dENhc3RfPGNvbnN0IHZvaWQqPihzKSA8PCAiIHBvaW50aW5nIHRvICI7CkBAIC00MjAsMTcgKzQy
Myw2IEBAIHZvaWQgQ29uZGl0aW9uYWxQcmludEFzVGV4dChjb25zdCBjaGFyKiBzdHIsIHNpemVf
dCBsZW5ndGgsIG9zdHJlYW0qIG9zKSB7CiAKIH0gIC8vIGFub255bW91cyBuYW1lc3BhY2UKIAot
Ly8gUHJpbnRzIGEgOjpzdHJpbmcgb2JqZWN0LgotI2lmIEdURVNUX0hBU19HTE9CQUxfU1RSSU5H
Ci12b2lkIFByaW50U3RyaW5nVG8oY29uc3QgOjpzdHJpbmcmIHMsIG9zdHJlYW0qIG9zKSB7Ci0g
IGlmIChQcmludENoYXJzQXNTdHJpbmdUbyhzLmRhdGEoKSwgcy5zaXplKCksIG9zKSA9PSBrSGV4
RXNjYXBlKSB7Ci0gICAgaWYgKEdURVNUX0ZMQUcocHJpbnRfdXRmOCkpIHsKLSAgICAgIENvbmRp
dGlvbmFsUHJpbnRBc1RleHQocy5kYXRhKCksIHMuc2l6ZSgpLCBvcyk7Ci0gICAgfQotICB9Ci19
Ci0jZW5kaWYgIC8vIEdURVNUX0hBU19HTE9CQUxfU1RSSU5HCi0KIHZvaWQgUHJpbnRTdHJpbmdU
byhjb25zdCA6OnN0ZDo6c3RyaW5nJiBzLCBvc3RyZWFtKiBvcykgewogICBpZiAoUHJpbnRDaGFy
c0FzU3RyaW5nVG8ocy5kYXRhKCksIHMuc2l6ZSgpLCBvcykgPT0ga0hleEVzY2FwZSkgewogICAg
IGlmIChHVEVTVF9GTEFHKHByaW50X3V0ZjgpKSB7CkBAIC00MzksMTMgKzQzMSw2IEBAIHZvaWQg
UHJpbnRTdHJpbmdUbyhjb25zdCA6OnN0ZDo6c3RyaW5nJiBzLCBvc3RyZWFtKiBvcykgewogICB9
CiB9CiAKLS8vIFByaW50cyBhIDo6d3N0cmluZyBvYmplY3QuCi0jaWYgR1RFU1RfSEFTX0dMT0JB
TF9XU1RSSU5HCi12b2lkIFByaW50V2lkZVN0cmluZ1RvKGNvbnN0IDo6d3N0cmluZyYgcywgb3N0
cmVhbSogb3MpIHsKLSAgUHJpbnRDaGFyc0FzU3RyaW5nVG8ocy5kYXRhKCksIHMuc2l6ZSgpLCBv
cyk7Ci19Ci0jZW5kaWYgIC8vIEdURVNUX0hBU19HTE9CQUxfV1NUUklORwotCiAjaWYgR1RFU1Rf
SEFTX1NURF9XU1RSSU5HCiB2b2lkIFByaW50V2lkZVN0cmluZ1RvKGNvbnN0IDo6c3RkOjp3c3Ry
aW5nJiBzLCBvc3RyZWFtKiBvcykgewogICBQcmludENoYXJzQXNTdHJpbmdUbyhzLmRhdGEoKSwg
cy5zaXplKCksIG9zKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xl
dGVzdC9zcmMvc3JjL2d0ZXN0LXRlc3QtcGFydC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkv
Z29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0LXRlc3QtcGFydC5jYwppbmRleCBjODg4NjBkOTIzODU2
MTllYTY3NjQ4ODQ1ODM5ZDE0NTgzZjExMTQ2Li5hOTM4NjgzY2VkZWQyZjM0Njk3ZWZkODMwNWE2
NzM2ODA2NGQwMTk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRl
c3Qvc3JjL3NyYy9ndGVzdC10ZXN0LXBhcnQuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0
eS9nb29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3QtdGVzdC1wYXJ0LmNjCkBAIC0zMSw2ICszMSw4IEBA
CiAvLyBUaGUgR29vZ2xlIEMrKyBUZXN0aW5nIGFuZCBNb2NraW5nIEZyYW1ld29yayAoR29vZ2xl
IFRlc3QpCiAKICNpbmNsdWRlICJndGVzdC9ndGVzdC10ZXN0LXBhcnQuaCIKKworI2luY2x1ZGUg
Imd0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQuaCIKICNpbmNsdWRlICJzcmMvZ3Rlc3QtaW50ZXJu
YWwtaW5sLmgiCiAKIG5hbWVzcGFjZSB0ZXN0aW5nIHsKQEAgLTQxLDE4ICs0MywyMyBAQCB1c2lu
ZyBpbnRlcm5hbDo6R2V0VW5pdFRlc3RJbXBsOwogLy8gaW4gaXQuCiBzdGQ6OnN0cmluZyBUZXN0
UGFydFJlc3VsdDo6RXh0cmFjdFN1bW1hcnkoY29uc3QgY2hhciogbWVzc2FnZSkgewogICBjb25z
dCBjaGFyKiBjb25zdCBzdGFja190cmFjZSA9IHN0cnN0cihtZXNzYWdlLCBpbnRlcm5hbDo6a1N0
YWNrVHJhY2VNYXJrZXIpOwotICByZXR1cm4gc3RhY2tfdHJhY2UgPT0gTlVMTCA/IG1lc3NhZ2Ug
OgotICAgICAgc3RkOjpzdHJpbmcobWVzc2FnZSwgc3RhY2tfdHJhY2UpOworICByZXR1cm4gc3Rh
Y2tfdHJhY2UgPT0gbnVsbHB0ciA/IG1lc3NhZ2UgOiBzdGQ6OnN0cmluZyhtZXNzYWdlLCBzdGFj
a190cmFjZSk7CiB9CiAKIC8vIFByaW50cyBhIFRlc3RQYXJ0UmVzdWx0IG9iamVjdC4KIHN0ZDo6
b3N0cmVhbSYgb3BlcmF0b3I8PChzdGQ6Om9zdHJlYW0mIG9zLCBjb25zdCBUZXN0UGFydFJlc3Vs
dCYgcmVzdWx0KSB7Ci0gIHJldHVybiBvcwotICAgICAgPDwgcmVzdWx0LmZpbGVfbmFtZSgpIDw8
ICI6IiA8PCByZXN1bHQubGluZV9udW1iZXIoKSA8PCAiOiAiCi0gICAgICA8PCAocmVzdWx0LnR5
cGUoKSA9PSBUZXN0UGFydFJlc3VsdDo6a1N1Y2Nlc3MgPyAiU3VjY2VzcyIgOgotICAgICAgICAg
IHJlc3VsdC50eXBlKCkgPT0gVGVzdFBhcnRSZXN1bHQ6OmtGYXRhbEZhaWx1cmUgPyAiRmF0YWwg
ZmFpbHVyZSIgOgotICAgICAgICAgICJOb24tZmF0YWwgZmFpbHVyZSIpIDw8ICI6XG4iCi0gICAg
ICA8PCByZXN1bHQubWVzc2FnZSgpIDw8IHN0ZDo6ZW5kbDsKKyAgcmV0dXJuIG9zIDw8IGludGVy
bmFsOjpGb3JtYXRGaWxlTG9jYXRpb24ocmVzdWx0LmZpbGVfbmFtZSgpLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQubGluZV9udW1iZXIoKSkKKyAg
ICAgICAgICAgIDw8ICIgIgorICAgICAgICAgICAgPDwgKHJlc3VsdC50eXBlKCkgPT0gVGVzdFBh
cnRSZXN1bHQ6OmtTdWNjZXNzCisgICAgICAgICAgICAgICAgICAgID8gIlN1Y2Nlc3MiCisgICAg
ICAgICAgICAgICAgICAgIDogcmVzdWx0LnR5cGUoKSA9PSBUZXN0UGFydFJlc3VsdDo6a1NraXAK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgPyAiU2tpcHBlZCIKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgOiByZXN1bHQudHlwZSgpID09IFRlc3RQYXJ0UmVzdWx0OjprRmF0YWxGYWlsdXJl
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gIkZhdGFsIGZhaWx1cmUiCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogIk5vbi1mYXRhbCBmYWlsdXJlIikKKyAgICAg
ICAgICAgIDw8ICI6XG4iCisgICAgICAgICAgICA8PCByZXN1bHQubWVzc2FnZSgpIDw8IHN0ZDo6
ZW5kbDsKIH0KIAogLy8gQXBwZW5kcyBhIFRlc3RQYXJ0UmVzdWx0IHRvIHRoZSBhcnJheS4KQEAg
LTY3LDcgKzc0LDcgQEAgY29uc3QgVGVzdFBhcnRSZXN1bHQmIFRlc3RQYXJ0UmVzdWx0QXJyYXk6
OkdldFRlc3RQYXJ0UmVzdWx0KGludCBpbmRleCkgY29uc3QgewogICAgIGludGVybmFsOjpwb3Np
eDo6QWJvcnQoKTsKICAgfQogCi0gIHJldHVybiBhcnJheV9baW5kZXhdOworICByZXR1cm4gYXJy
YXlfW3N0YXRpY19jYXN0PHNpemVfdD4oaW5kZXgpXTsKIH0KIAogLy8gUmV0dXJucyB0aGUgbnVt
YmVyIG9mIFRlc3RQYXJ0UmVzdWx0IG9iamVjdHMgaW4gdGhlIGFycmF5LgpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3QtdHlwZWQtdGVz
dC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0LXR5
cGVkLXRlc3QuY2MKaW5kZXggMWRjMmFkMzhiYWI5OGJjMTQ2YzE2MTU4YTQ3ZGExZTM5NGJmMzg1
Zi4uMWIxY2ZiMGRjMTVhZWViMjQzZWMwMDRkM2M4NGU3ODEyZWYwOTcxMSAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3QtdHlwZWQtdGVz
dC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL3NyYy9ndGVz
dC10eXBlZC10ZXN0LmNjCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyBjb25zdCBjaGFyKiBTa2lw
U3BhY2VzKGNvbnN0IGNoYXIqIHN0cikgewogc3RhdGljIHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5n
PiBTcGxpdEludG9UZXN0TmFtZXMoY29uc3QgY2hhciogc3JjKSB7CiAgIHN0ZDo6dmVjdG9yPHN0
ZDo6c3RyaW5nPiBuYW1lX3ZlYzsKICAgc3JjID0gU2tpcFNwYWNlcyhzcmMpOwotICBmb3IgKDsg
c3JjICE9IE5VTEw7IHNyYyA9IFNraXBDb21tYShzcmMpKSB7CisgIGZvciAoOyBzcmMgIT0gbnVs
bHB0cjsgc3JjID0gU2tpcENvbW1hKHNyYykpIHsKICAgICBuYW1lX3ZlYy5wdXNoX2JhY2soU3Ry
aXBUcmFpbGluZ1NwYWNlcyhHZXRQcmVmaXhVbnRpbENvbW1hKHNyYykpKTsKICAgfQogICByZXR1
cm4gbmFtZV92ZWM7CkBAIC01Nyw4ICs1NywxMSBAQCBzdGF0aWMgc3RkOjp2ZWN0b3I8c3RkOjpz
dHJpbmc+IFNwbGl0SW50b1Rlc3ROYW1lcyhjb25zdCBjaGFyKiBzcmMpIHsKIC8vIFZlcmlmaWVz
IHRoYXQgcmVnaXN0ZXJlZF90ZXN0cyBtYXRjaCB0aGUgdGVzdCBuYW1lcyBpbgogLy8gcmVnaXN0
ZXJlZF90ZXN0c187IHJldHVybnMgcmVnaXN0ZXJlZF90ZXN0cyBpZiBzdWNjZXNzZnVsLCBvcgog
Ly8gYWJvcnRzIHRoZSBwcm9ncmFtIG90aGVyd2lzZS4KLWNvbnN0IGNoYXIqIFR5cGVkVGVzdENh
c2VQU3RhdGU6OlZlcmlmeVJlZ2lzdGVyZWRUZXN0TmFtZXMoCi0gICAgY29uc3QgY2hhciogZmls
ZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIqIHJlZ2lzdGVyZWRfdGVzdHMpIHsKK2NvbnN0IGNoYXIq
IFR5cGVkVGVzdFN1aXRlUFN0YXRlOjpWZXJpZnlSZWdpc3RlcmVkVGVzdE5hbWVzKAorICAgIGNv
bnN0IGNoYXIqIHRlc3Rfc3VpdGVfbmFtZSwgY29uc3QgY2hhciogZmlsZSwgaW50IGxpbmUsCisg
ICAgY29uc3QgY2hhciogcmVnaXN0ZXJlZF90ZXN0cykgeworICBSZWdpc3RlclR5cGVQYXJhbWV0
ZXJpemVkVGVzdFN1aXRlKHRlc3Rfc3VpdGVfbmFtZSwgQ29kZUxvY2F0aW9uKGZpbGUsIGxpbmUp
KTsKKwogICB0eXBlZGVmIFJlZ2lzdGVyZWRUZXN0c01hcDo6Y29uc3RfaXRlcmF0b3IgUmVnaXN0
ZXJlZFRlc3RJdGVyOwogICByZWdpc3RlcmVkXyA9IHRydWU7CiAKQEAgLTg5LDcgKzkyLDcgQEAg
Y29uc3QgY2hhciogVHlwZWRUZXN0Q2FzZVBTdGF0ZTo6VmVyaWZ5UmVnaXN0ZXJlZFRlc3ROYW1l
cygKICAgICAgIHRlc3RzLmluc2VydChuYW1lKTsKICAgICB9IGVsc2UgewogICAgICAgZXJyb3Jz
IDw8ICJObyB0ZXN0IG5hbWVkICIgPDwgbmFtZQotICAgICAgICAgICAgIDw8ICIgY2FuIGJlIGZv
dW5kIGluIHRoaXMgdGVzdCBjYXNlLlxuIjsKKyAgICAgICAgICAgICA8PCAiIGNhbiBiZSBmb3Vu
ZCBpbiB0aGlzIHRlc3Qgc3VpdGUuXG4iOwogICAgIH0KICAgfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL3NyYy9ndGVzdC5jYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0LmNjCmluZGV4IDk2YjA3YzY4
YWJiMDVhMmRiZTFiZTA5ZjFjMzUzNWJjZjc5ZDAwMzAuLmI4ZjZhNWMzMWNjODZhMTE2YjBiNDk4
MzQ3ZThiOTQxOTRjZWMyNjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29v
Z2xldGVzdC9zcmMvc3JjL2d0ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29v
Z2xldGVzdC9zcmMvc3JjL2d0ZXN0LmNjCkBAIC00NCw2ICs0NCw3IEBACiAjaW5jbHVkZSA8d2N0
eXBlLmg+CiAKICNpbmNsdWRlIDxhbGdvcml0aG0+CisjaW5jbHVkZSA8Y3N0ZGludD4KICNpbmNs
dWRlIDxpb21hbmlwPgogI2luY2x1ZGUgPGxpbWl0cz4KICNpbmNsdWRlIDxsaXN0PgpAQCAtNTQs
OCArNTUsNiBAQAogCiAjaWYgR1RFU1RfT1NfTElOVVgKIAotLy8gRklYTUU6IFVzZSBhdXRvY29u
ZiB0byBkZXRlY3QgYXZhaWxhYmlsaXR5IG9mCi0vLyBnZXR0aW1lb2ZkYXkoKS4KICMgZGVmaW5l
IEdURVNUX0hBU19HRVRUSU1FT0ZEQVlfIDEKIAogIyBpbmNsdWRlIDxmY250bC5oPiAgLy8gTk9M
SU5UCkBAIC02OCwxMCArNjcsNiBAQAogIyBpbmNsdWRlIDx1bmlzdGQuaD4gIC8vIE5PTElOVAog
IyBpbmNsdWRlIDxzdHJpbmc+CiAKLSNlbGlmIEdURVNUX09TX1NZTUJJQU4KLSMgZGVmaW5lIEdU
RVNUX0hBU19HRVRUSU1FT0ZEQVlfIDEKLSMgaW5jbHVkZSA8c3lzL3RpbWUuaD4gIC8vIE5PTElO
VAotCiAjZWxpZiBHVEVTVF9PU19aT1MKICMgZGVmaW5lIEdURVNUX0hBU19HRVRUSU1FT0ZEQVlf
IDEKICMgaW5jbHVkZSA8c3lzL3RpbWUuaD4gIC8vIE5PTElOVApAQCAtODYsNiArODEsMTQgQEAK
IAogI2VsaWYgR1RFU1RfT1NfV0lORE9XUyAgLy8gV2UgYXJlIG9uIFdpbmRvd3MgcHJvcGVyLgog
CisjIGluY2x1ZGUgPHdpbmRvd3MuaD4gIC8vIE5PTElOVAorIyB1bmRlZiBtaW4KKworI2lmZGVm
IF9NU0NfVkVSCisjIGluY2x1ZGUgPGNydGRiZy5oPiAgLy8gTk9MSU5UCisjIGluY2x1ZGUgPGRl
YnVnYXBpLmg+ICAvLyBOT0xJTlQKKyNlbmRpZgorCiAjIGluY2x1ZGUgPGlvLmg+ICAvLyBOT0xJ
TlQKICMgaW5jbHVkZSA8c3lzL3RpbWViLmg+ICAvLyBOT0xJTlQKICMgaW5jbHVkZSA8c3lzL3R5
cGVzLmg+ICAvLyBOT0xJTlQKQEAgLTkzLDI1ICs5NiwxMyBAQAogCiAjIGlmIEdURVNUX09TX1dJ
TkRPV1NfTUlOR1cKIC8vIE1pbkdXIGhhcyBnZXR0aW1lb2ZkYXkoKSBidXQgbm90IF9mdGltZTY0
KCkuCi0vLyBGSVhNRTogVXNlIGF1dG9jb25mIHRvIGRldGVjdCBhdmFpbGFiaWxpdHkgb2YKLS8v
ICAgZ2V0dGltZW9mZGF5KCkuCi0vLyBGSVhNRTogVGhlcmUgYXJlIG90aGVyIHdheXMgdG8gZ2V0
IHRoZSB0aW1lIG9uCi0vLyAgIFdpbmRvd3MsIGxpa2UgR2V0VGlja0NvdW50KCkgb3IgR2V0U3lz
dGVtVGltZUFzRmlsZVRpbWUoKS4gIE1pbkdXCi0vLyAgIHN1cHBvcnRzIHRoZXNlLiAgY29uc2lk
ZXIgdXNpbmcgdGhlbSBpbnN0ZWFkLgogIyAgZGVmaW5lIEdURVNUX0hBU19HRVRUSU1FT0ZEQVlf
IDEKICMgIGluY2x1ZGUgPHN5cy90aW1lLmg+ICAvLyBOT0xJTlQKICMgZW5kaWYgIC8vIEdURVNU
X09TX1dJTkRPV1NfTUlOR1cKIAotLy8gY3BwbGludCB0aGlua3MgdGhhdCB0aGUgaGVhZGVyIGlz
IGFscmVhZHkgaW5jbHVkZWQsIHNvIHdlIHdhbnQgdG8KLS8vIHNpbGVuY2UgaXQuCi0jIGluY2x1
ZGUgPHdpbmRvd3MuaD4gIC8vIE5PTElOVAotIyB1bmRlZiBtaW4KLQogI2Vsc2UKIAogLy8gQXNz
dW1lIG90aGVyIHBsYXRmb3JtcyBoYXZlIGdldHRpbWVvZmRheSgpLgotLy8gRklYTUU6IFVzZSBh
dXRvY29uZiB0byBkZXRlY3QgYXZhaWxhYmlsaXR5IG9mCi0vLyAgIGdldHRpbWVvZmRheSgpLgog
IyBkZWZpbmUgR1RFU1RfSEFTX0dFVFRJTUVPRkRBWV8gMQogCiAvLyBjcHBsaW50IHRoaW5rcyB0
aGF0IHRoZSBoZWFkZXIgaXMgYWxyZWFkeSBpbmNsdWRlZCwgc28gd2Ugd2FudCB0bwpAQCAtMTYw
LDE0ICsxNTEsMTQgQEAgdXNpbmcgaW50ZXJuYWw6OlNodWZmbGU7CiAKIC8vIENvbnN0YW50cy4K
IAotLy8gQSB0ZXN0IHdob3NlIHRlc3QgY2FzZSBuYW1lIG9yIHRlc3QgbmFtZSBtYXRjaGVzIHRo
aXMgZmlsdGVyIGlzCisvLyBBIHRlc3Qgd2hvc2UgdGVzdCBzdWl0ZSBuYW1lIG9yIHRlc3QgbmFt
ZSBtYXRjaGVzIHRoaXMgZmlsdGVyIGlzCiAvLyBkaXNhYmxlZCBhbmQgbm90IHJ1bi4KIHN0YXRp
YyBjb25zdCBjaGFyIGtEaXNhYmxlVGVzdEZpbHRlcltdID0gIkRJU0FCTEVEXyo6Ki9ESVNBQkxF
RF8qIjsKIAotLy8gQSB0ZXN0IGNhc2Ugd2hvc2UgbmFtZSBtYXRjaGVzIHRoaXMgZmlsdGVyIGlz
IGNvbnNpZGVyZWQgYSBkZWF0aAotLy8gdGVzdCBjYXNlIGFuZCB3aWxsIGJlIHJ1biBiZWZvcmUg
dGVzdCBjYXNlcyB3aG9zZSBuYW1lIGRvZXNuJ3QKKy8vIEEgdGVzdCBzdWl0ZSB3aG9zZSBuYW1l
IG1hdGNoZXMgdGhpcyBmaWx0ZXIgaXMgY29uc2lkZXJlZCBhIGRlYXRoCisvLyB0ZXN0IHN1aXRl
IGFuZCB3aWxsIGJlIHJ1biBiZWZvcmUgdGVzdCBzdWl0ZXMgd2hvc2UgbmFtZSBkb2Vzbid0CiAv
LyBtYXRjaCB0aGlzIGZpbHRlci4KLXN0YXRpYyBjb25zdCBjaGFyIGtEZWF0aFRlc3RDYXNlRmls
dGVyW10gPSAiKkRlYXRoVGVzdDoqRGVhdGhUZXN0LyoiOworc3RhdGljIGNvbnN0IGNoYXIga0Rl
YXRoVGVzdFN1aXRlRmlsdGVyW10gPSAiKkRlYXRoVGVzdDoqRGVhdGhUZXN0LyoiOwogCiAvLyBB
IHRlc3QgZmlsdGVyIHRoYXQgbWF0Y2hlcyBldmVyeXRoaW5nLgogc3RhdGljIGNvbnN0IGNoYXIg
a1VuaXZlcnNhbEZpbHRlcltdID0gIioiOwpAQCAtMTkwLDIwICsxODEsMjAgQEAgbmFtZXNwYWNl
IGludGVybmFsIHsKIC8vIHN0YWNrIHRyYWNlLgogY29uc3QgY2hhciBrU3RhY2tUcmFjZU1hcmtl
cltdID0gIlxuU3RhY2sgdHJhY2U6XG4iOwogCi0vLyBnX2hlbHBfZmxhZyBpcyB0cnVlIGlmZiB0
aGUgLS1oZWxwIGZsYWcgb3IgYW4gZXF1aXZhbGVudCBmb3JtIGlzCi0vLyBzcGVjaWZpZWQgb24g
dGhlIGNvbW1hbmQgbGluZS4KKy8vIGdfaGVscF9mbGFnIGlzIHRydWUgaWYgYW5kIG9ubHkgaWYg
dGhlIC0taGVscCBmbGFnIG9yIGFuIGVxdWl2YWxlbnQgZm9ybQorLy8gaXMgc3BlY2lmaWVkIG9u
IHRoZSBjb21tYW5kIGxpbmUuCiBib29sIGdfaGVscF9mbGFnID0gZmFsc2U7CiAKIC8vIFV0aWx0
eSBmdW5jdGlvbiB0byBPcGVuIEZpbGUgZm9yIFdyaXRpbmcKIHN0YXRpYyBGSUxFKiBPcGVuRmls
ZUZvcldyaXRpbmcoY29uc3Qgc3RkOjpzdHJpbmcmIG91dHB1dF9maWxlKSB7Ci0gIEZJTEUqIGZp
bGVvdXQgPSBOVUxMOworICBGSUxFKiBmaWxlb3V0ID0gbnVsbHB0cjsKICAgRmlsZVBhdGggb3V0
cHV0X2ZpbGVfcGF0aChvdXRwdXRfZmlsZSk7CiAgIEZpbGVQYXRoIG91dHB1dF9kaXIob3V0cHV0
X2ZpbGVfcGF0aC5SZW1vdmVGaWxlTmFtZSgpKTsKIAogICBpZiAob3V0cHV0X2Rpci5DcmVhdGVE
aXJlY3Rvcmllc1JlY3Vyc2l2ZWx5KCkpIHsKICAgICBmaWxlb3V0ID0gcG9zaXg6OkZPcGVuKG91
dHB1dF9maWxlLmNfc3RyKCksICJ3Iik7CiAgIH0KLSAgaWYgKGZpbGVvdXQgPT0gTlVMTCkgewor
ICBpZiAoZmlsZW91dCA9PSBudWxscHRyKSB7CiAgICAgR1RFU1RfTE9HXyhGQVRBTCkgPDwgIlVu
YWJsZSB0byBvcGVuIGZpbGUgXCIiIDw8IG91dHB1dF9maWxlIDw8ICJcIiI7CiAgIH0KICAgcmV0
dXJuIGZpbGVvdXQ7CkBAIC0yMTYsNyArMjA3LDcgQEAgc3RhdGljIEZJTEUqIE9wZW5GaWxlRm9y
V3JpdGluZyhjb25zdCBzdGQ6OnN0cmluZyYgb3V0cHV0X2ZpbGUpIHsKIHN0YXRpYyBjb25zdCBj
aGFyKiBHZXREZWZhdWx0RmlsdGVyKCkgewogICBjb25zdCBjaGFyKiBjb25zdCB0ZXN0YnJpZGdl
X3Rlc3Rfb25seSA9CiAgICAgICBpbnRlcm5hbDo6cG9zaXg6OkdldEVudigiVEVTVEJSSURHRV9U
RVNUX09OTFkiKTsKLSAgaWYgKHRlc3RicmlkZ2VfdGVzdF9vbmx5ICE9IE5VTEwpIHsKKyAgaWYg
KHRlc3RicmlkZ2VfdGVzdF9vbmx5ICE9IG51bGxwdHIpIHsKICAgICByZXR1cm4gdGVzdGJyaWRn
ZV90ZXN0X29ubHk7CiAgIH0KICAgcmV0dXJuIGtVbml2ZXJzYWxGaWx0ZXI7CkBAIC0yMjgsMTUg
KzIxOSwxNCBAQCBHVEVTVF9ERUZJTkVfYm9vbF8oCiAgICAgIlJ1biBkaXNhYmxlZCB0ZXN0cyB0
b28sIGluIGFkZGl0aW9uIHRvIHRoZSB0ZXN0cyBub3JtYWxseSBiZWluZyBydW4uIik7CiAKIEdU
RVNUX0RFRklORV9ib29sXygKLSAgICBicmVha19vbl9mYWlsdXJlLAotICAgIGludGVybmFsOjpC
b29sRnJvbUdUZXN0RW52KCJicmVha19vbl9mYWlsdXJlIiwgZmFsc2UpLAotICAgICJUcnVlIGlm
ZiBhIGZhaWxlZCBhc3NlcnRpb24gc2hvdWxkIGJlIGEgZGVidWdnZXIgYnJlYWstcG9pbnQuIik7
CisgICAgYnJlYWtfb25fZmFpbHVyZSwgaW50ZXJuYWw6OkJvb2xGcm9tR1Rlc3RFbnYoImJyZWFr
X29uX2ZhaWx1cmUiLCBmYWxzZSksCisgICAgIlRydWUgaWYgYW5kIG9ubHkgaWYgYSBmYWlsZWQg
YXNzZXJ0aW9uIHNob3VsZCBiZSBhIGRlYnVnZ2VyICIKKyAgICAiYnJlYWstcG9pbnQuIik7CiAK
LUdURVNUX0RFRklORV9ib29sXygKLSAgICBjYXRjaF9leGNlcHRpb25zLAotICAgIGludGVybmFs
OjpCb29sRnJvbUdUZXN0RW52KCJjYXRjaF9leGNlcHRpb25zIiwgdHJ1ZSksCi0gICAgIlRydWUg
aWZmICIgR1RFU1RfTkFNRV8KLSAgICAiIHNob3VsZCBjYXRjaCBleGNlcHRpb25zIGFuZCB0cmVh
dCB0aGVtIGFzIHRlc3QgZmFpbHVyZXMuIik7CitHVEVTVF9ERUZJTkVfYm9vbF8oY2F0Y2hfZXhj
ZXB0aW9ucywKKyAgICAgICAgICAgICAgICAgICBpbnRlcm5hbDo6Qm9vbEZyb21HVGVzdEVudigi
Y2F0Y2hfZXhjZXB0aW9ucyIsIHRydWUpLAorICAgICAgICAgICAgICAgICAgICJUcnVlIGlmIGFu
ZCBvbmx5IGlmICIgR1RFU1RfTkFNRV8KKyAgICAgICAgICAgICAgICAgICAiIHNob3VsZCBjYXRj
aCBleGNlcHRpb25zIGFuZCB0cmVhdCB0aGVtIGFzIHRlc3QgZmFpbHVyZXMuIik7CiAKIEdURVNU
X0RFRklORV9zdHJpbmdfKAogICAgIGNvbG9yLApAQCAtMjgzLDE3ICsyNzMsMTMgQEAgR1RFU1Rf
REVGSU5FX3N0cmluZ18oCiAgICAgImV4ZWN1dGFibGUncyBuYW1lIGFuZCwgaWYgbmVjZXNzYXJ5
LCBtYWRlIHVuaXF1ZSBieSBhZGRpbmcgIgogICAgICJkaWdpdHMuIik7CiAKLUdURVNUX0RFRklO
RV9ib29sXygKLSAgICBwcmludF90aW1lLAotICAgIGludGVybmFsOjpCb29sRnJvbUdUZXN0RW52
KCJwcmludF90aW1lIiwgdHJ1ZSksCi0gICAgIlRydWUgaWZmICIgR1RFU1RfTkFNRV8KLSAgICAi
IHNob3VsZCBkaXNwbGF5IGVsYXBzZWQgdGltZSBpbiB0ZXh0IG91dHB1dC4iKTsKK0dURVNUX0RF
RklORV9ib29sXyhwcmludF90aW1lLCBpbnRlcm5hbDo6Qm9vbEZyb21HVGVzdEVudigicHJpbnRf
dGltZSIsIHRydWUpLAorICAgICAgICAgICAgICAgICAgICJUcnVlIGlmIGFuZCBvbmx5IGlmICIg
R1RFU1RfTkFNRV8KKyAgICAgICAgICAgICAgICAgICAiIHNob3VsZCBkaXNwbGF5IGVsYXBzZWQg
dGltZSBpbiB0ZXh0IG91dHB1dC4iKTsKIAotR1RFU1RfREVGSU5FX2Jvb2xfKAotICAgIHByaW50
X3V0ZjgsCi0gICAgaW50ZXJuYWw6OkJvb2xGcm9tR1Rlc3RFbnYoInByaW50X3V0ZjgiLCB0cnVl
KSwKLSAgICAiVHJ1ZSBpZmYgIiBHVEVTVF9OQU1FXwotICAgICIgcHJpbnRzIFVURjggY2hhcmFj
dGVycyBhcyB0ZXh0LiIpOworR1RFU1RfREVGSU5FX2Jvb2xfKHByaW50X3V0ZjgsIGludGVybmFs
OjpCb29sRnJvbUdUZXN0RW52KCJwcmludF91dGY4IiwgdHJ1ZSksCisgICAgICAgICAgICAgICAg
ICAgIlRydWUgaWYgYW5kIG9ubHkgaWYgIiBHVEVTVF9OQU1FXworICAgICAgICAgICAgICAgICAg
ICIgcHJpbnRzIFVURjggY2hhcmFjdGVycyBhcyB0ZXh0LiIpOwogCiBHVEVTVF9ERUZJTkVfaW50
MzJfKAogICAgIHJhbmRvbV9zZWVkLApAQCAtMzA3LDE2ICsyOTMsMTQgQEAgR1RFU1RfREVGSU5F
X2ludDMyXygKICAgICAiSG93IG1hbnkgdGltZXMgdG8gcmVwZWF0IGVhY2ggdGVzdC4gIFNwZWNp
ZnkgYSBuZWdhdGl2ZSBudW1iZXIgIgogICAgICJmb3IgcmVwZWF0aW5nIGZvcmV2ZXIuICBVc2Vm
dWwgZm9yIHNoYWtpbmcgb3V0IGZsYWt5IHRlc3RzLiIpOwogCi1HVEVTVF9ERUZJTkVfYm9vbF8o
Ci0gICAgc2hvd19pbnRlcm5hbF9zdGFja19mcmFtZXMsIGZhbHNlLAotICAgICJUcnVlIGlmZiAi
IEdURVNUX05BTUVfICIgc2hvdWxkIGluY2x1ZGUgaW50ZXJuYWwgc3RhY2sgZnJhbWVzIHdoZW4g
IgotICAgICJwcmludGluZyB0ZXN0IGZhaWx1cmUgc3RhY2sgdHJhY2VzLiIpOworR1RFU1RfREVG
SU5FX2Jvb2xfKHNob3dfaW50ZXJuYWxfc3RhY2tfZnJhbWVzLCBmYWxzZSwKKyAgICAgICAgICAg
ICAgICAgICAiVHJ1ZSBpZiBhbmQgb25seSBpZiAiIEdURVNUX05BTUVfCisgICAgICAgICAgICAg
ICAgICAgIiBzaG91bGQgaW5jbHVkZSBpbnRlcm5hbCBzdGFjayBmcmFtZXMgd2hlbiAiCisgICAg
ICAgICAgICAgICAgICAgInByaW50aW5nIHRlc3QgZmFpbHVyZSBzdGFjayB0cmFjZXMuIik7CiAK
LUdURVNUX0RFRklORV9ib29sXygKLSAgICBzaHVmZmxlLAotICAgIGludGVybmFsOjpCb29sRnJv
bUdUZXN0RW52KCJzaHVmZmxlIiwgZmFsc2UpLAotICAgICJUcnVlIGlmZiAiIEdURVNUX05BTUVf
Ci0gICAgIiBzaG91bGQgcmFuZG9taXplIHRlc3RzJyBvcmRlciBvbiBldmVyeSBydW4uIik7CitH
VEVTVF9ERUZJTkVfYm9vbF8oc2h1ZmZsZSwgaW50ZXJuYWw6OkJvb2xGcm9tR1Rlc3RFbnYoInNo
dWZmbGUiLCBmYWxzZSksCisgICAgICAgICAgICAgICAgICAgIlRydWUgaWYgYW5kIG9ubHkgaWYg
IiBHVEVTVF9OQU1FXworICAgICAgICAgICAgICAgICAgICIgc2hvdWxkIHJhbmRvbWl6ZSB0ZXN0
cycgb3JkZXIgb24gZXZlcnkgcnVuLiIpOwogCiBHVEVTVF9ERUZJTkVfaW50MzJfKAogICAgIHN0
YWNrX3RyYWNlX2RlcHRoLApAQCAtMzUwLDEwICszMzQsMTAgQEAgbmFtZXNwYWNlIGludGVybmFs
IHsKIC8vIEdlbmVyYXRlcyBhIHJhbmRvbSBudW1iZXIgZnJvbSBbMCwgcmFuZ2UpLCB1c2luZyBh
IExpbmVhcgogLy8gQ29uZ3J1ZW50aWFsIEdlbmVyYXRvciAoTENHKS4gIENyYXNoZXMgaWYgJ3Jh
bmdlJyBpcyAwIG9yIGdyZWF0ZXIKIC8vIHRoYW4ga01heFJhbmdlLgotVUludDMyIFJhbmRvbTo6
R2VuZXJhdGUoVUludDMyIHJhbmdlKSB7Cit1aW50MzJfdCBSYW5kb206OkdlbmVyYXRlKHVpbnQz
Ml90IHJhbmdlKSB7CiAgIC8vIFRoZXNlIGNvbnN0YW50cyBhcmUgdGhlIHNhbWUgYXMgYXJlIHVz
ZWQgaW4gZ2xpYmMncyByYW5kKDMpLgogICAvLyBVc2Ugd2lkZXIgdHlwZXMgdGhhbiBuZWNlc3Nh
cnkgdG8gcHJldmVudCB1bnNpZ25lZCBvdmVyZmxvdyBkaWFnbm9zdGljcy4KLSAgc3RhdGVfID0g
c3RhdGljX2Nhc3Q8VUludDMyPigxMTAzNTE1MjQ1VUxMKnN0YXRlXyArIDEyMzQ1VSkgJSBrTWF4
UmFuZ2U7CisgIHN0YXRlXyA9IHN0YXRpY19jYXN0PHVpbnQzMl90PigxMTAzNTE1MjQ1VUxMKnN0
YXRlXyArIDEyMzQ1VSkgJSBrTWF4UmFuZ2U7CiAKICAgR1RFU1RfQ0hFQ0tfKHJhbmdlID4gMCkK
ICAgICAgIDw8ICJDYW5ub3QgZ2VuZXJhdGUgYSBudW1iZXIgaW4gdGhlIHJhbmdlIFswLCAwKS4i
OwpAQCAtMzY3LDE2ICszNTEsMTYgQEAgVUludDMyIFJhbmRvbTo6R2VuZXJhdGUoVUludDMyIHJh
bmdlKSB7CiAgIHJldHVybiBzdGF0ZV8gJSByYW5nZTsKIH0KIAotLy8gR1Rlc3RJc0luaXRpYWxp
emVkKCkgcmV0dXJucyB0cnVlIGlmZiB0aGUgdXNlciBoYXMgaW5pdGlhbGl6ZWQKKy8vIEdUZXN0
SXNJbml0aWFsaXplZCgpIHJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgdXNlciBoYXMg
aW5pdGlhbGl6ZWQKIC8vIEdvb2dsZSBUZXN0LiAgVXNlZnVsIGZvciBjYXRjaGluZyB0aGUgdXNl
ciBtaXN0YWtlIG9mIG5vdCBpbml0aWFsaXppbmcKIC8vIEdvb2dsZSBUZXN0IGJlZm9yZSBjYWxs
aW5nIFJVTl9BTExfVEVTVFMoKS4KIHN0YXRpYyBib29sIEdUZXN0SXNJbml0aWFsaXplZCgpIHsg
cmV0dXJuIEdldEFyZ3ZzKCkuc2l6ZSgpID4gMDsgfQogCi0vLyBJdGVyYXRlcyBvdmVyIGEgdmVj
dG9yIG9mIFRlc3RDYXNlcywga2VlcGluZyBhIHJ1bm5pbmcgc3VtIG9mIHRoZQorLy8gSXRlcmF0
ZXMgb3ZlciBhIHZlY3RvciBvZiBUZXN0U3VpdGVzLCBrZWVwaW5nIGEgcnVubmluZyBzdW0gb2Yg
dGhlCiAvLyByZXN1bHRzIG9mIGNhbGxpbmcgYSBnaXZlbiBpbnQtcmV0dXJuaW5nIG1ldGhvZCBv
biBlYWNoLgogLy8gUmV0dXJucyB0aGUgc3VtLgotc3RhdGljIGludCBTdW1PdmVyVGVzdENhc2VM
aXN0KGNvbnN0IHN0ZDo6dmVjdG9yPFRlc3RDYXNlKj4mIGNhc2VfbGlzdCwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBpbnQgKFRlc3RDYXNlOjoqbWV0aG9kKSgpIGNvbnN0KSB7Citz
dGF0aWMgaW50IFN1bU92ZXJUZXN0U3VpdGVMaXN0KGNvbnN0IHN0ZDo6dmVjdG9yPFRlc3RTdWl0
ZSo+JiBjYXNlX2xpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAoVGVz
dFN1aXRlOjoqbWV0aG9kKSgpIGNvbnN0KSB7CiAgIGludCBzdW0gPSAwOwogICBmb3IgKHNpemVf
dCBpID0gMDsgaSA8IGNhc2VfbGlzdC5zaXplKCk7IGkrKykgewogICAgIHN1bSArPSAoY2FzZV9s
aXN0W2ldLT4qbWV0aG9kKSgpOwpAQCAtMzg0LDIwICszNjgsMjAgQEAgc3RhdGljIGludCBTdW1P
dmVyVGVzdENhc2VMaXN0KGNvbnN0IHN0ZDo6dmVjdG9yPFRlc3RDYXNlKj4mIGNhc2VfbGlzdCwK
ICAgcmV0dXJuIHN1bTsKIH0KIAotLy8gUmV0dXJucyB0cnVlIGlmZiB0aGUgdGVzdCBjYXNlIHBh
c3NlZC4KLXN0YXRpYyBib29sIFRlc3RDYXNlUGFzc2VkKGNvbnN0IFRlc3RDYXNlKiB0ZXN0X2Nh
c2UpIHsKLSAgcmV0dXJuIHRlc3RfY2FzZS0+c2hvdWxkX3J1bigpICYmIHRlc3RfY2FzZS0+UGFz
c2VkKCk7CisvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHRlc3Qgc3VpdGUgcGFz
c2VkLgorc3RhdGljIGJvb2wgVGVzdFN1aXRlUGFzc2VkKGNvbnN0IFRlc3RTdWl0ZSogdGVzdF9z
dWl0ZSkgeworICByZXR1cm4gdGVzdF9zdWl0ZS0+c2hvdWxkX3J1bigpICYmIHRlc3Rfc3VpdGUt
PlBhc3NlZCgpOwogfQogCi0vLyBSZXR1cm5zIHRydWUgaWZmIHRoZSB0ZXN0IGNhc2UgZmFpbGVk
Lgotc3RhdGljIGJvb2wgVGVzdENhc2VGYWlsZWQoY29uc3QgVGVzdENhc2UqIHRlc3RfY2FzZSkg
ewotICByZXR1cm4gdGVzdF9jYXNlLT5zaG91bGRfcnVuKCkgJiYgdGVzdF9jYXNlLT5GYWlsZWQo
KTsKKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgdGVzdCBzdWl0ZSBmYWlsZWQu
CitzdGF0aWMgYm9vbCBUZXN0U3VpdGVGYWlsZWQoY29uc3QgVGVzdFN1aXRlKiB0ZXN0X3N1aXRl
KSB7CisgIHJldHVybiB0ZXN0X3N1aXRlLT5zaG91bGRfcnVuKCkgJiYgdGVzdF9zdWl0ZS0+RmFp
bGVkKCk7CiB9CiAKLS8vIFJldHVybnMgdHJ1ZSBpZmYgdGVzdF9jYXNlIGNvbnRhaW5zIGF0IGxl
YXN0IG9uZSB0ZXN0IHRoYXQgc2hvdWxkCi0vLyBydW4uCi1zdGF0aWMgYm9vbCBTaG91bGRSdW5U
ZXN0Q2FzZShjb25zdCBUZXN0Q2FzZSogdGVzdF9jYXNlKSB7Ci0gIHJldHVybiB0ZXN0X2Nhc2Ut
PnNob3VsZF9ydW4oKTsKKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0ZXN0X3N1aXRl
IGNvbnRhaW5zIGF0IGxlYXN0IG9uZSB0ZXN0IHRoYXQKKy8vIHNob3VsZCBydW4uCitzdGF0aWMg
Ym9vbCBTaG91bGRSdW5UZXN0U3VpdGUoY29uc3QgVGVzdFN1aXRlKiB0ZXN0X3N1aXRlKSB7Cisg
IHJldHVybiB0ZXN0X3N1aXRlLT5zaG91bGRfcnVuKCk7CiB9CiAKIC8vIEFzc2VydEhlbHBlciBj
b25zdHJ1Y3Rvci4KQEAgLTQyMyw4ICs0MDcsMTYxIEBAIHZvaWQgQXNzZXJ0SGVscGVyOjpvcGVy
YXRvcj0oY29uc3QgTWVzc2FnZSYgbWVzc2FnZSkgY29uc3QgewogICAgICAgICAgICAgICAgICAg
ICAgICk7ICAvLyBOT0xJTlQKIH0KIAotLy8gTXV0ZXggZm9yIGxpbmtlZCBwb2ludGVycy4KLUdU
RVNUX0FQSV8gR1RFU1RfREVGSU5FX1NUQVRJQ19NVVRFWF8oZ19saW5rZWRfcHRyX211dGV4KTsK
K25hbWVzcGFjZSB7CisKKy8vIFdoZW4gVEVTVF9QIGlzIGZvdW5kIHdpdGhvdXQgYSBtYXRjaGlu
ZyBJTlNUQU5USUFURV9URVNUX1NVSVRFX1AKKy8vIHRvIGNyZWF0ZXMgdGVzdCBjYXNlcyBmb3Ig
aXQsIGEgc3ludGV0aWMgdGVzdCBjYXNlIGlzCisvLyBpbnNlcnRlZCB0byByZXBvcnQgZXRoZXIg
YW4gZXJyb3Igb3IgYSBsb2cgbWVzc2FnZS4KKy8vCisvLyBUaGlzIGNvbmZpZ3VyYXRpb24gYml0
IHdpbGwgbGlrZWx5IGJlIHJlbW92ZWQgYXQgc29tZSBwb2ludC4KK2NvbnN0ZXhwciBib29sIGtF
cnJvck9uVW5pbnN0YW50aWF0ZWRQYXJhbWV0ZXJpemVkVGVzdCA9IHRydWU7Citjb25zdGV4cHIg
Ym9vbCBrRXJyb3JPblVuaW5zdGFudGlhdGVkVHlwZVBhcmFtZXRlcml6ZWRUZXN0ID0gdHJ1ZTsK
KworLy8gQSB0ZXN0IHRoYXQgZmFpbHMgYXQgYSBnaXZlbiBmaWxlL2xpbmUgbG9jYXRpb24gd2l0
aCBhIGdpdmVuIG1lc3NhZ2UuCitjbGFzcyBGYWlsdXJlVGVzdCA6IHB1YmxpYyBUZXN0IHsKKyBw
dWJsaWM6CisgIGV4cGxpY2l0IEZhaWx1cmVUZXN0KGNvbnN0IENvZGVMb2NhdGlvbiYgbG9jLCBz
dGQ6OnN0cmluZyBlcnJvcl9tZXNzYWdlLAorICAgICAgICAgICAgICAgICAgICAgICBib29sIGFz
X2Vycm9yKQorICAgICAgOiBsb2NfKGxvYyksCisgICAgICAgIGVycm9yX21lc3NhZ2VfKHN0ZDo6
bW92ZShlcnJvcl9tZXNzYWdlKSksCisgICAgICAgIGFzX2Vycm9yXyhhc19lcnJvcikge30KKwor
ICB2b2lkIFRlc3RCb2R5KCkgb3ZlcnJpZGUgeworICAgIGlmIChhc19lcnJvcl8pIHsKKyAgICAg
IEFzc2VydEhlbHBlcihUZXN0UGFydFJlc3VsdDo6a05vbkZhdGFsRmFpbHVyZSwgbG9jXy5maWxl
LmNfc3RyKCksCisgICAgICAgICAgICAgICAgICAgbG9jXy5saW5lLCAiIikgPSBNZXNzYWdlKCkg
PDwgZXJyb3JfbWVzc2FnZV87CisgICAgfSBlbHNlIHsKKyAgICAgIHN0ZDo6Y291dCA8PCBlcnJv
cl9tZXNzYWdlXyA8PCBzdGQ6OmVuZGw7CisgICAgfQorICB9CisKKyBwcml2YXRlOgorICBjb25z
dCBDb2RlTG9jYXRpb24gbG9jXzsKKyAgY29uc3Qgc3RkOjpzdHJpbmcgZXJyb3JfbWVzc2FnZV87
CisgIGNvbnN0IGJvb2wgYXNfZXJyb3JfOworfTsKKworCit9ICAvLyBuYW1lc3BhY2UKKworc3Rk
OjpzZXQ8c3RkOjpzdHJpbmc+KiBHZXRJZ25vcmVkUGFyYW1ldGVyaXplZFRlc3RTdWl0ZXMoKSB7
CisgIHJldHVybiBVbml0VGVzdDo6R2V0SW5zdGFuY2UoKS0+aW1wbCgpLT5pZ25vcmVkX3BhcmFt
ZXRlcml6ZWRfdGVzdF9zdWl0ZXMoKTsKK30KKworLy8gQWRkIGEgZ2l2ZW4gdGVzdF9zdWl0IHRv
IHRoZSBsaXN0IG9mIHRoZW0gYWxsb3cgdG8gZ28gdW4taW5zdGFudGlhdGVkLgorTWFya0FzSWdu
b3JlZDo6TWFya0FzSWdub3JlZChjb25zdCBjaGFyKiB0ZXN0X3N1aXRlKSB7CisgIEdldElnbm9y
ZWRQYXJhbWV0ZXJpemVkVGVzdFN1aXRlcygpLT5pbnNlcnQodGVzdF9zdWl0ZSk7Cit9CisKKy8v
IElmIHRoaXMgcGFyYW1ldGVyaXplZCB0ZXN0IHN1aXRlIGhhcyBubyBpbnN0YW50aWF0aW9ucyAo
YW5kIHRoYXQKKy8vIGhhcyBub3QgYmVlbiBtYXJrZWQgYXMgb2theSksIGVtaXQgYSB0ZXN0IGNh
c2UgcmVwb3J0aW5nIHRoYXQuCit2b2lkIEluc2VydFN5bnRoZXRpY1Rlc3RDYXNlKGNvbnN0IHN0
ZDo6c3RyaW5nJiBuYW1lLCBDb2RlTG9jYXRpb24gbG9jYXRpb24sCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGJvb2wgaGFzX3Rlc3RfcCkgeworICBjb25zdCBhdXRvJiBpZ25vcmVkID0g
KkdldElnbm9yZWRQYXJhbWV0ZXJpemVkVGVzdFN1aXRlcygpOworICBpZiAoaWdub3JlZC5maW5k
KG5hbWUpICE9IGlnbm9yZWQuZW5kKCkpIHJldHVybjsKKworICBjb25zdCBjaGFyIGtNaXNzaW5n
SW5zdGFudGlhdGlvbltdID0gIC8vCisgICAgICAiIGlzIGRlZmluZWQgdmlhIFRFU1RfUCwgYnV0
IG5ldmVyIGluc3RhbnRpYXRlZC4gTm9uZSBvZiB0aGUgdGVzdCBjYXNlcyAiCisgICAgICAid2ls
bCBydW4uIEVpdGhlciBubyBJTlNUQU5USUFURV9URVNUX1NVSVRFX1AgaXMgcHJvdmlkZWQgb3Ig
dGhlIG9ubHkgIgorICAgICAgIm9uZXMgcHJvdmlkZWQgZXhwYW5kIHRvIG5vdGhpbmcuIgorICAg
ICAgIlxuXG4iCisgICAgICAiSWRlYWxseSwgVEVTVF9QIGRlZmluaXRpb25zIHNob3VsZCBvbmx5
IGV2ZXIgYmUgaW5jbHVkZWQgYXMgcGFydCBvZiAiCisgICAgICAiYmluYXJpZXMgdGhhdCBpbnRl
bmQgdG8gdXNlIHRoZW0uIChBcyBvcHBvc2VkIHRvLCBmb3IgZXhhbXBsZSwgYmVpbmcgIgorICAg
ICAgInBsYWNlZCBpbiBhIGxpYnJhcnkgdGhhdCBtYXkgYmUgbGlua2VkIGluIHRvIGdldCBvdGhl
ciB1dGlsaXRpZXMuKSI7CisKKyAgY29uc3QgY2hhciBrTWlzc2luZ1Rlc3RDYXNlW10gPSAgLy8K
KyAgICAgICIgaXMgaW5zdGFudGlhdGVkIHZpYSBJTlNUQU5USUFURV9URVNUX1NVSVRFX1AsIGJ1
dCBubyB0ZXN0cyBhcmUgIgorICAgICAgImRlZmluZWQgdmlhIFRFU1RfUCAuIE5vIHRlc3QgY2Fz
ZXMgd2lsbCBydW4uIgorICAgICAgIlxuXG4iCisgICAgICAiSWRlYWxseSwgSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QIHNob3VsZCBvbmx5IGV2ZXIgYmUgaW52b2tlZCBmcm9tICIKKyAgICAgICJj
b2RlIHRoYXQgYWx3YXlzIGRlcGVuZCBvbiBjb2RlIHRoYXQgcHJvdmlkZXMgVEVTVF9QLiBGYWls
aW5nIHRvIGRvICIKKyAgICAgICJzbyBpcyBvZnRlbiBhbiBpbmRpY2F0aW9uIG9mIGRlYWQgY29k
ZSwgZS5nLiB0aGUgbGFzdCBURVNUX1Agd2FzICIKKyAgICAgICJyZW1vdmVkIGJ1dCB0aGUgcmVz
dCBnb3QgbGVmdCBiZWhpbmQuIjsKKworICBzdGQ6OnN0cmluZyBtZXNzYWdlID0KKyAgICAgICJQ
YXJhbWF0ZXJpemVkIHRlc3Qgc3VpdGUgIiArIG5hbWUgKworICAgICAgKGhhc190ZXN0X3AgPyBr
TWlzc2luZ0luc3RhbnRpYXRpb24gOiBrTWlzc2luZ1Rlc3RDYXNlKSArCisgICAgICAiXG5cbiIK
KyAgICAgICJUbyBzdXBwcmVzcyB0aGlzIGVycm9yIGZvciB0aGlzIHRlc3Qgc3VpdGUsIGluc2Vy
dCB0aGUgZm9sbG93aW5nIGxpbmUgIgorICAgICAgIihpbiBhIG5vbi1oZWFkZXIpIGluIHRoZSBu
YW1lc3BhY2UgaXQgaXMgZGVmaW5lZCBpbjoiCisgICAgICAiXG5cbiIKKyAgICAgICJHVEVTVF9B
TExPV19VTklOU1RBTlRJQVRFRF9QQVJBTUVURVJJWkVEX1RFU1QoIiArIG5hbWUgKyAiKTsiOwor
CisgIHN0ZDo6c3RyaW5nIGZ1bGxfbmFtZSA9ICJVbmluc3RhbnRpYXRlZFBhcmFtYXRlcml6ZWRU
ZXN0U3VpdGU8IiArIG5hbWUgKyAiPiI7CisgIFJlZ2lzdGVyVGVzdCggIC8vCisgICAgICAiR29v
Z2xlVGVzdFZlcmlmaWNhdGlvbiIsIGZ1bGxfbmFtZS5jX3N0cigpLAorICAgICAgbnVsbHB0ciwg
IC8vIE5vIHR5cGUgcGFyYW1ldGVyLgorICAgICAgbnVsbHB0ciwgIC8vIE5vIHZhbHVlIHBhcmFt
ZXRlci4KKyAgICAgIGxvY2F0aW9uLmZpbGUuY19zdHIoKSwgbG9jYXRpb24ubGluZSwgW21lc3Nh
Z2UsIGxvY2F0aW9uXSB7CisgICAgICAgIHJldHVybiBuZXcgRmFpbHVyZVRlc3QobG9jYXRpb24s
IG1lc3NhZ2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga0Vycm9yT25Vbmluc3Rh
bnRpYXRlZFBhcmFtZXRlcml6ZWRUZXN0KTsKKyAgICAgIH0pOworfQorCit2b2lkIFJlZ2lzdGVy
VHlwZVBhcmFtZXRlcml6ZWRUZXN0U3VpdGUoY29uc3QgY2hhciogdGVzdF9zdWl0ZV9uYW1lLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvZGVMb2NhdGlvbiBjb2Rl
X2xvY2F0aW9uKSB7CisgIEdldFVuaXRUZXN0SW1wbCgpLT50eXBlX3BhcmFtZXRlcml6ZWRfdGVz
dF9yZWdpc3RyeSgpLlJlZ2lzdGVyVGVzdFN1aXRlKAorICAgICAgdGVzdF9zdWl0ZV9uYW1lLCBj
b2RlX2xvY2F0aW9uKTsKK30KKwordm9pZCBSZWdpc3RlclR5cGVQYXJhbWV0ZXJpemVkVGVzdFN1
aXRlSW5zdGFudGlhdGlvbihjb25zdCBjaGFyKiBjYXNlX25hbWUpIHsKKyAgR2V0VW5pdFRlc3RJ
bXBsKCkKKyAgICAgIC0+dHlwZV9wYXJhbWV0ZXJpemVkX3Rlc3RfcmVnaXN0cnkoKQorICAgICAg
LlJlZ2lzdGVySW5zdGFudGlhdGlvbihjYXNlX25hbWUpOworfQorCit2b2lkIFR5cGVQYXJhbWV0
ZXJpemVkVGVzdFN1aXRlUmVnaXN0cnk6OlJlZ2lzdGVyVGVzdFN1aXRlKAorICAgIGNvbnN0IGNo
YXIqIHRlc3Rfc3VpdGVfbmFtZSwgQ29kZUxvY2F0aW9uIGNvZGVfbG9jYXRpb24pIHsKKyAgc3Vp
dGVzXy5lbXBsYWNlKHN0ZDo6c3RyaW5nKHRlc3Rfc3VpdGVfbmFtZSksCisgICAgICAgICAgICAg
ICAgIFR5cGVQYXJhbWV0ZXJpemVkVGVzdFN1aXRlSW5mbyhjb2RlX2xvY2F0aW9uKSk7Cit9CisK
K3ZvaWQgVHlwZVBhcmFtZXRlcml6ZWRUZXN0U3VpdGVSZWdpc3RyeTo6UmVnaXN0ZXJJbnN0YW50
aWF0aW9uKAorICAgICAgICBjb25zdCBjaGFyKiB0ZXN0X3N1aXRlX25hbWUpIHsKKyAgYXV0byBp
dCA9IHN1aXRlc18uZmluZChzdGQ6OnN0cmluZyh0ZXN0X3N1aXRlX25hbWUpKTsKKyAgaWYgKGl0
ICE9IHN1aXRlc18uZW5kKCkpIHsKKyAgICBpdC0+c2Vjb25kLmluc3RhbnRpYXRlZCA9IHRydWU7
CisgIH0gZWxzZSB7CisgICAgR1RFU1RfTE9HXyhFUlJPUikgPDwgIlVua25vd24gdHlwZSBwYXJh
bWV0ZXJpemVkIHRlc3Qgc3VpdCAnIgorICAgICAgICAgICAgICAgICAgICAgIDw8IHRlc3Rfc3Vp
dGVfbmFtZSA8PCAiJyI7CisgIH0KK30KKwordm9pZCBUeXBlUGFyYW1ldGVyaXplZFRlc3RTdWl0
ZVJlZ2lzdHJ5OjpDaGVja0Zvckluc3RhbnRpYXRpb25zKCkgeworICBjb25zdCBhdXRvJiBpZ25v
cmVkID0gKkdldElnbm9yZWRQYXJhbWV0ZXJpemVkVGVzdFN1aXRlcygpOworICBmb3IgKGNvbnN0
IGF1dG8mIHRlc3RjYXNlIDogc3VpdGVzXykgeworICAgIGlmICh0ZXN0Y2FzZS5zZWNvbmQuaW5z
dGFudGlhdGVkKSBjb250aW51ZTsKKyAgICBpZiAoaWdub3JlZC5maW5kKHRlc3RjYXNlLmZpcnN0
KSAhPSBpZ25vcmVkLmVuZCgpKSBjb250aW51ZTsKKworICAgIHN0ZDo6c3RyaW5nIG1lc3NhZ2Ug
PQorICAgICAgICAiVHlwZSBwYXJhbWF0ZXJpemVkIHRlc3Qgc3VpdGUgIiArIHRlc3RjYXNlLmZp
cnN0ICsKKyAgICAgICAgIiBpcyBkZWZpbmVkIHZpYSBSRUdJU1RFUl9UWVBFRF9URVNUX1NVSVRF
X1AsIGJ1dCBuZXZlciBpbnN0YW50aWF0ZWQgIgorICAgICAgICAidmlhIElOU1RBTlRJQVRFX1RZ
UEVEX1RFU1RfU1VJVEVfUC4gTm9uZSBvZiB0aGUgdGVzdCBjYXNlcyB3aWxsIHJ1bi4iCisgICAg
ICAgICJcblxuIgorICAgICAgICAiSWRlYWxseSwgVFlQRURfVEVTVF9QIGRlZmluaXRpb25zIHNo
b3VsZCBvbmx5IGV2ZXIgYmUgaW5jbHVkZWQgYXMgIgorICAgICAgICAicGFydCBvZiBiaW5hcmll
cyB0aGF0IGludGVuZCB0byB1c2UgdGhlbS4gKEFzIG9wcG9zZWQgdG8sIGZvciAiCisgICAgICAg
ICJleGFtcGxlLCBiZWluZyBwbGFjZWQgaW4gYSBsaWJyYXJ5IHRoYXQgbWF5IGJlIGxpbmtlZCBp
biB0byBnZXQgb3RoZXIgIgorICAgICAgICAidXRpbGl0aWVzLikiCisgICAgICAgICJcblxuIgor
ICAgICAgICAiVG8gc3VwcHJlc3MgdGhpcyBlcnJvciBmb3IgdGhpcyB0ZXN0IHN1aXRlLCBpbnNl
cnQgdGhlIGZvbGxvd2luZyBsaW5lICIKKyAgICAgICAgIihpbiBhIG5vbi1oZWFkZXIpIGluIHRo
ZSBuYW1lc3BhY2UgaXQgaXMgZGVmaW5lZGluIGluOiIKKyAgICAgICAgIlxuXG4iCisgICAgICAg
ICJHVEVTVF9BTExPV19VTklOU1RBTlRJQVRFRF9QQVJBTUVURVJJWkVEX1RFU1QoIiArCisgICAg
ICAgIHRlc3RjYXNlLmZpcnN0ICsgIik7IjsKKworICAgIHN0ZDo6c3RyaW5nIGZ1bGxfbmFtZSA9
CisgICAgICAgICJVbmluc3RhbnRpYXRlZFR5cGVQYXJhbWF0ZXJpemVkVGVzdFN1aXRlPCIgKyB0
ZXN0Y2FzZS5maXJzdCArICI+IjsKKyAgICBSZWdpc3RlclRlc3QoICAvLworICAgICAgICAiR29v
Z2xlVGVzdFZlcmlmaWNhdGlvbiIsIGZ1bGxfbmFtZS5jX3N0cigpLAorICAgICAgICBudWxscHRy
LCAgLy8gTm8gdHlwZSBwYXJhbWV0ZXIuCisgICAgICAgIG51bGxwdHIsICAvLyBObyB2YWx1ZSBw
YXJhbWV0ZXIuCisgICAgICAgIHRlc3RjYXNlLnNlY29uZC5jb2RlX2xvY2F0aW9uLmZpbGUuY19z
dHIoKSwKKyAgICAgICAgdGVzdGNhc2Uuc2Vjb25kLmNvZGVfbG9jYXRpb24ubGluZSwgW21lc3Nh
Z2UsIHRlc3RjYXNlXSB7CisgICAgICAgICAgcmV0dXJuIG5ldyBGYWlsdXJlVGVzdCh0ZXN0Y2Fz
ZS5zZWNvbmQuY29kZV9sb2NhdGlvbiwgbWVzc2FnZSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGtFcnJvck9uVW5pbnN0YW50aWF0ZWRUeXBlUGFyYW1ldGVyaXplZFRlc3QpOwor
ICAgICAgICB9KTsKKyAgfQorfQogCiAvLyBBIGNvcHkgb2YgYWxsIGNvbW1hbmQgbGluZSBhcmd1
bWVudHMuICBTZXQgYnkgSW5pdEdvb2dsZVRlc3QoKS4KIHN0YXRpYyA6OnN0ZDo6dmVjdG9yPHN0
ZDo6c3RyaW5nPiBnX2FyZ3ZzOwpAQCAtNDQ1LDcgKzU4Miw3IEBAIHN0YXRpYyA6OnN0ZDo6dmVj
dG9yPHN0ZDo6c3RyaW5nPiBnX2FyZ3ZzOwogRmlsZVBhdGggR2V0Q3VycmVudEV4ZWN1dGFibGVO
YW1lKCkgewogICBGaWxlUGF0aCByZXN1bHQ7CiAKLSNpZiBHVEVTVF9PU19XSU5ET1dTCisjaWYg
R1RFU1RfT1NfV0lORE9XUyB8fCBHVEVTVF9PU19PUzIKICAgcmVzdWx0LlNldChGaWxlUGF0aChH
ZXRBcmd2cygpWzBdKS5SZW1vdmVFeHRlbnNpb24oImV4ZSIpKTsKICNlbHNlCiAgIHJlc3VsdC5T
ZXQoRmlsZVBhdGgoR2V0QXJndnMoKVswXSkpOwpAQCAtNDYwLDkgKzU5NywxMCBAQCBGaWxlUGF0
aCBHZXRDdXJyZW50RXhlY3V0YWJsZU5hbWUoKSB7CiBzdGQ6OnN0cmluZyBVbml0VGVzdE9wdGlv
bnM6OkdldE91dHB1dEZvcm1hdCgpIHsKICAgY29uc3QgY2hhciogY29uc3QgZ3Rlc3Rfb3V0cHV0
X2ZsYWcgPSBHVEVTVF9GTEFHKG91dHB1dCkuY19zdHIoKTsKICAgY29uc3QgY2hhciogY29uc3Qg
Y29sb24gPSBzdHJjaHIoZ3Rlc3Rfb3V0cHV0X2ZsYWcsICc6Jyk7Ci0gIHJldHVybiAoY29sb24g
PT0gTlVMTCkgPwotICAgICAgc3RkOjpzdHJpbmcoZ3Rlc3Rfb3V0cHV0X2ZsYWcpIDoKLSAgICAg
IHN0ZDo6c3RyaW5nKGd0ZXN0X291dHB1dF9mbGFnLCBjb2xvbiAtIGd0ZXN0X291dHB1dF9mbGFn
KTsKKyAgcmV0dXJuIChjb2xvbiA9PSBudWxscHRyKQorICAgICAgICAgICAgID8gc3RkOjpzdHJp
bmcoZ3Rlc3Rfb3V0cHV0X2ZsYWcpCisgICAgICAgICAgICAgOiBzdGQ6OnN0cmluZyhndGVzdF9v
dXRwdXRfZmxhZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY19jYXN0PHNpemVf
dD4oY29sb24gLSBndGVzdF9vdXRwdXRfZmxhZykpOwogfQogCiAvLyBSZXR1cm5zIHRoZSBuYW1l
IG9mIHRoZSByZXF1ZXN0ZWQgb3V0cHV0IGZpbGUsIG9yIHRoZSBkZWZhdWx0IGlmIG5vbmUKQEAg
LTQ3NSw3ICs2MTMsNyBAQCBzdGQ6OnN0cmluZyBVbml0VGVzdE9wdGlvbnM6OkdldEFic29sdXRl
UGF0aFRvT3V0cHV0RmlsZSgpIHsKICAgICBmb3JtYXQgPSBzdGQ6OnN0cmluZyhrRGVmYXVsdE91
dHB1dEZvcm1hdCk7CiAKICAgY29uc3QgY2hhciogY29uc3QgY29sb24gPSBzdHJjaHIoZ3Rlc3Rf
b3V0cHV0X2ZsYWcsICc6Jyk7Ci0gIGlmIChjb2xvbiA9PSBOVUxMKQorICBpZiAoY29sb24gPT0g
bnVsbHB0cikKICAgICByZXR1cm4gaW50ZXJuYWw6OkZpbGVQYXRoOjpNYWtlRmlsZU5hbWUoCiAg
ICAgICAgIGludGVybmFsOjpGaWxlUGF0aCgKICAgICAgICAgICAgIFVuaXRUZXN0OjpHZXRJbnN0
YW5jZSgpLT5vcmlnaW5hbF93b3JraW5nX2RpcigpKSwKQEAgLTQ4NCwxMCArNjIyLDYgQEAgc3Rk
OjpzdHJpbmcgVW5pdFRlc3RPcHRpb25zOjpHZXRBYnNvbHV0ZVBhdGhUb091dHB1dEZpbGUoKSB7
CiAKICAgaW50ZXJuYWw6OkZpbGVQYXRoIG91dHB1dF9uYW1lKGNvbG9uICsgMSk7CiAgIGlmICgh
b3V0cHV0X25hbWUuSXNBYnNvbHV0ZVBhdGgoKSkKLSAgICAvLyBGSVhNRTogb24gV2luZG93cyBc
c29tZVxwYXRoIGlzIG5vdCBhbiBhYnNvbHV0ZQotICAgIC8vIHBhdGggKGFzIGl0cyBtZWFuaW5n
IGRlcGVuZHMgb24gdGhlIGN1cnJlbnQgZHJpdmUpLCB5ZXQgdGhlCi0gICAgLy8gZm9sbG93aW5n
IGxvZ2ljIGZvciB0dXJuaW5nIGl0IGludG8gYW4gYWJzb2x1dGUgcGF0aCBpcyB3cm9uZy4KLSAg
ICAvLyBGaXggaXQuCiAgICAgb3V0cHV0X25hbWUgPSBpbnRlcm5hbDo6RmlsZVBhdGg6OkNvbmNh
dFBhdGhzKAogICAgICAgICBpbnRlcm5hbDo6RmlsZVBhdGgoVW5pdFRlc3Q6OkdldEluc3RhbmNl
KCktPm9yaWdpbmFsX3dvcmtpbmdfZGlyKCkpLAogICAgICAgICBpbnRlcm5hbDo6RmlsZVBhdGgo
Y29sb24gKyAxKSk7CkBAIC01MDEsOCArNjM1LDggQEAgc3RkOjpzdHJpbmcgVW5pdFRlc3RPcHRp
b25zOjpHZXRBYnNvbHV0ZVBhdGhUb091dHB1dEZpbGUoKSB7CiAgIHJldHVybiByZXN1bHQuc3Ry
aW5nKCk7CiB9CiAKLS8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIHdpbGRjYXJkIHBhdHRlcm4gbWF0
Y2hlcyB0aGUgc3RyaW5nLiAgVGhlCi0vLyBmaXJzdCAnOicgb3IgJ1wwJyBjaGFyYWN0ZXIgaW4g
cGF0dGVybiBtYXJrcyB0aGUgZW5kIG9mIGl0LgorLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5
IGlmIHRoZSB3aWxkY2FyZCBwYXR0ZXJuIG1hdGNoZXMgdGhlIHN0cmluZy4KKy8vIFRoZSBmaXJz
dCAnOicgb3IgJ1wwJyBjaGFyYWN0ZXIgaW4gcGF0dGVybiBtYXJrcyB0aGUgZW5kIG9mIGl0Lgog
Ly8KIC8vIFRoaXMgcmVjdXJzaXZlIGFsZ29yaXRobSBpc24ndCB2ZXJ5IGVmZmljaWVudCwgYnV0
IGlzIGNsZWFyIGFuZAogLy8gd29ya3Mgd2VsbCBlbm91Z2ggZm9yIG1hdGNoaW5nIHRlc3QgbmFt
ZXMsIHdoaWNoIGFyZSBzaG9ydC4KQEAgLTUzNSw3ICs2NjksNyBAQCBib29sIFVuaXRUZXN0T3B0
aW9uczo6TWF0Y2hlc0ZpbHRlcigKICAgICBjdXJfcGF0dGVybiA9IHN0cmNocihjdXJfcGF0dGVy
biwgJzonKTsKIAogICAgIC8vIFJldHVybnMgaWYgbm8gbW9yZSBwYXR0ZXJuIGNhbiBiZSBmb3Vu
ZC4KLSAgICBpZiAoY3VyX3BhdHRlcm4gPT0gTlVMTCkgeworICAgIGlmIChjdXJfcGF0dGVybiA9
PSBudWxscHRyKSB7CiAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCkBAIC01NDQsMTEgKzY3
OCwxMSBAQCBib29sIFVuaXRUZXN0T3B0aW9uczo6TWF0Y2hlc0ZpbHRlcigKICAgfQogfQogCi0v
LyBSZXR1cm5zIHRydWUgaWZmIHRoZSB1c2VyLXNwZWNpZmllZCBmaWx0ZXIgbWF0Y2hlcyB0aGUg
dGVzdCBjYXNlCi0vLyBuYW1lIGFuZCB0aGUgdGVzdCBuYW1lLgotYm9vbCBVbml0VGVzdE9wdGlv
bnM6OkZpbHRlck1hdGNoZXNUZXN0KGNvbnN0IHN0ZDo6c3RyaW5nICZ0ZXN0X2Nhc2VfbmFtZSwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6OnN0cmlu
ZyAmdGVzdF9uYW1lKSB7Ci0gIGNvbnN0IHN0ZDo6c3RyaW5nJiBmdWxsX25hbWUgPSB0ZXN0X2Nh
c2VfbmFtZSArICIuIiArIHRlc3RfbmFtZS5jX3N0cigpOworLy8gUmV0dXJucyB0cnVlIGlmIGFu
ZCBvbmx5IGlmIHRoZSB1c2VyLXNwZWNpZmllZCBmaWx0ZXIgbWF0Y2hlcyB0aGUgdGVzdAorLy8g
c3VpdGUgbmFtZSBhbmQgdGhlIHRlc3QgbmFtZS4KK2Jvb2wgVW5pdFRlc3RPcHRpb25zOjpGaWx0
ZXJNYXRjaGVzVGVzdChjb25zdCBzdGQ6OnN0cmluZyYgdGVzdF9zdWl0ZV9uYW1lLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiB0ZXN0
X25hbWUpIHsKKyAgY29uc3Qgc3RkOjpzdHJpbmcmIGZ1bGxfbmFtZSA9IHRlc3Rfc3VpdGVfbmFt
ZSArICIuIiArIHRlc3RfbmFtZS5jX3N0cigpOwogCiAgIC8vIFNwbGl0IC0tZ3Rlc3RfZmlsdGVy
IGF0ICctJywgaWYgdGhlcmUgaXMgb25lLCB0byBzZXBhcmF0ZSBpbnRvCiAgIC8vIHBvc2l0aXZl
IGZpbHRlciBhbmQgbmVnYXRpdmUgZmlsdGVyIHBvcnRpb25zCkBAIC01NTYsNyArNjkwLDcgQEAg
Ym9vbCBVbml0VGVzdE9wdGlvbnM6OkZpbHRlck1hdGNoZXNUZXN0KGNvbnN0IHN0ZDo6c3RyaW5n
ICZ0ZXN0X2Nhc2VfbmFtZSwKICAgY29uc3QgY2hhciogY29uc3QgZGFzaCA9IHN0cmNocihwLCAn
LScpOwogICBzdGQ6OnN0cmluZyBwb3NpdGl2ZTsKICAgc3RkOjpzdHJpbmcgbmVnYXRpdmU7Ci0g
IGlmIChkYXNoID09IE5VTEwpIHsKKyAgaWYgKGRhc2ggPT0gbnVsbHB0cikgewogICAgIHBvc2l0
aXZlID0gR1RFU1RfRkxBRyhmaWx0ZXIpLmNfc3RyKCk7ICAvLyBXaG9sZSBzdHJpbmcgaXMgYSBw
b3NpdGl2ZSBmaWx0ZXIKICAgICBuZWdhdGl2ZSA9ICIiOwogICB9IGVsc2UgewpAQCAtNzAxLDcg
KzgzNSw3IEBAIHN0YXRpYyBBc3NlcnRpb25SZXN1bHQgSGFzT25lRmFpbHVyZShjb25zdCBjaGFy
KiAvKiByZXN1bHRzX2V4cHIgKi8sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PCBy
OwogICB9CiAKLSAgaWYgKHN0cnN0cihyLm1lc3NhZ2UoKSwgc3Vic3RyLmNfc3RyKCkpID09IE5V
TEwpIHsKKyAgaWYgKHN0cnN0cihyLm1lc3NhZ2UoKSwgc3Vic3RyLmNfc3RyKCkpID09IG51bGxw
dHIpIHsKICAgICByZXR1cm4gQXNzZXJ0aW9uRmFpbHVyZSgpIDw8ICJFeHBlY3RlZDogIiA8PCBl
eHBlY3RlZCA8PCAiIGNvbnRhaW5pbmcgXCIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICA8PCBzdWJzdHIgPDwgIlwiXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PCAi
ICBBY3R1YWw6XG4iCkBAIC03NzAsNjEgKzkwNCw2NiBAQCB2b2lkIFVuaXRUZXN0SW1wbDo6U2V0
VGVzdFBhcnRSZXN1bHRSZXBvcnRlckZvckN1cnJlbnRUaHJlYWQoCiAgIHBlcl90aHJlYWRfdGVz
dF9wYXJ0X3Jlc3VsdF9yZXBvcnRlcl8uc2V0KHJlcG9ydGVyKTsKIH0KIAotLy8gR2V0cyB0aGUg
bnVtYmVyIG9mIHN1Y2Nlc3NmdWwgdGVzdCBjYXNlcy4KLWludCBVbml0VGVzdEltcGw6OnN1Y2Nl
c3NmdWxfdGVzdF9jYXNlX2NvdW50KCkgY29uc3QgewotICByZXR1cm4gQ291bnRJZih0ZXN0X2Nh
c2VzXywgVGVzdENhc2VQYXNzZWQpOworLy8gR2V0cyB0aGUgbnVtYmVyIG9mIHN1Y2Nlc3NmdWwg
dGVzdCBzdWl0ZXMuCitpbnQgVW5pdFRlc3RJbXBsOjpzdWNjZXNzZnVsX3Rlc3Rfc3VpdGVfY291
bnQoKSBjb25zdCB7CisgIHJldHVybiBDb3VudElmKHRlc3Rfc3VpdGVzXywgVGVzdFN1aXRlUGFz
c2VkKTsKIH0KIAotLy8gR2V0cyB0aGUgbnVtYmVyIG9mIGZhaWxlZCB0ZXN0IGNhc2VzLgotaW50
IFVuaXRUZXN0SW1wbDo6ZmFpbGVkX3Rlc3RfY2FzZV9jb3VudCgpIGNvbnN0IHsKLSAgcmV0dXJu
IENvdW50SWYodGVzdF9jYXNlc18sIFRlc3RDYXNlRmFpbGVkKTsKKy8vIEdldHMgdGhlIG51bWJl
ciBvZiBmYWlsZWQgdGVzdCBzdWl0ZXMuCitpbnQgVW5pdFRlc3RJbXBsOjpmYWlsZWRfdGVzdF9z
dWl0ZV9jb3VudCgpIGNvbnN0IHsKKyAgcmV0dXJuIENvdW50SWYodGVzdF9zdWl0ZXNfLCBUZXN0
U3VpdGVGYWlsZWQpOwogfQogCi0vLyBHZXRzIHRoZSBudW1iZXIgb2YgYWxsIHRlc3QgY2FzZXMu
Ci1pbnQgVW5pdFRlc3RJbXBsOjp0b3RhbF90ZXN0X2Nhc2VfY291bnQoKSBjb25zdCB7Ci0gIHJl
dHVybiBzdGF0aWNfY2FzdDxpbnQ+KHRlc3RfY2FzZXNfLnNpemUoKSk7CisvLyBHZXRzIHRoZSBu
dW1iZXIgb2YgYWxsIHRlc3Qgc3VpdGVzLgoraW50IFVuaXRUZXN0SW1wbDo6dG90YWxfdGVzdF9z
dWl0ZV9jb3VudCgpIGNvbnN0IHsKKyAgcmV0dXJuIHN0YXRpY19jYXN0PGludD4odGVzdF9zdWl0
ZXNfLnNpemUoKSk7CiB9CiAKLS8vIEdldHMgdGhlIG51bWJlciBvZiBhbGwgdGVzdCBjYXNlcyB0
aGF0IGNvbnRhaW4gYXQgbGVhc3Qgb25lIHRlc3QKKy8vIEdldHMgdGhlIG51bWJlciBvZiBhbGwg
dGVzdCBzdWl0ZXMgdGhhdCBjb250YWluIGF0IGxlYXN0IG9uZSB0ZXN0CiAvLyB0aGF0IHNob3Vs
ZCBydW4uCi1pbnQgVW5pdFRlc3RJbXBsOjp0ZXN0X2Nhc2VfdG9fcnVuX2NvdW50KCkgY29uc3Qg
ewotICByZXR1cm4gQ291bnRJZih0ZXN0X2Nhc2VzXywgU2hvdWxkUnVuVGVzdENhc2UpOworaW50
IFVuaXRUZXN0SW1wbDo6dGVzdF9zdWl0ZV90b19ydW5fY291bnQoKSBjb25zdCB7CisgIHJldHVy
biBDb3VudElmKHRlc3Rfc3VpdGVzXywgU2hvdWxkUnVuVGVzdFN1aXRlKTsKIH0KIAogLy8gR2V0
cyB0aGUgbnVtYmVyIG9mIHN1Y2Nlc3NmdWwgdGVzdHMuCiBpbnQgVW5pdFRlc3RJbXBsOjpzdWNj
ZXNzZnVsX3Rlc3RfY291bnQoKSBjb25zdCB7Ci0gIHJldHVybiBTdW1PdmVyVGVzdENhc2VMaXN0
KHRlc3RfY2FzZXNfLCAmVGVzdENhc2U6OnN1Y2Nlc3NmdWxfdGVzdF9jb3VudCk7CisgIHJldHVy
biBTdW1PdmVyVGVzdFN1aXRlTGlzdCh0ZXN0X3N1aXRlc18sICZUZXN0U3VpdGU6OnN1Y2Nlc3Nm
dWxfdGVzdF9jb3VudCk7Cit9CisKKy8vIEdldHMgdGhlIG51bWJlciBvZiBza2lwcGVkIHRlc3Rz
LgoraW50IFVuaXRUZXN0SW1wbDo6c2tpcHBlZF90ZXN0X2NvdW50KCkgY29uc3QgeworICByZXR1
cm4gU3VtT3ZlclRlc3RTdWl0ZUxpc3QodGVzdF9zdWl0ZXNfLCAmVGVzdFN1aXRlOjpza2lwcGVk
X3Rlc3RfY291bnQpOwogfQogCiAvLyBHZXRzIHRoZSBudW1iZXIgb2YgZmFpbGVkIHRlc3RzLgog
aW50IFVuaXRUZXN0SW1wbDo6ZmFpbGVkX3Rlc3RfY291bnQoKSBjb25zdCB7Ci0gIHJldHVybiBT
dW1PdmVyVGVzdENhc2VMaXN0KHRlc3RfY2FzZXNfLCAmVGVzdENhc2U6OmZhaWxlZF90ZXN0X2Nv
dW50KTsKKyAgcmV0dXJuIFN1bU92ZXJUZXN0U3VpdGVMaXN0KHRlc3Rfc3VpdGVzXywgJlRlc3RT
dWl0ZTo6ZmFpbGVkX3Rlc3RfY291bnQpOwogfQogCiAvLyBHZXRzIHRoZSBudW1iZXIgb2YgZGlz
YWJsZWQgdGVzdHMgdGhhdCB3aWxsIGJlIHJlcG9ydGVkIGluIHRoZSBYTUwgcmVwb3J0LgogaW50
IFVuaXRUZXN0SW1wbDo6cmVwb3J0YWJsZV9kaXNhYmxlZF90ZXN0X2NvdW50KCkgY29uc3Qgewot
ICByZXR1cm4gU3VtT3ZlclRlc3RDYXNlTGlzdCh0ZXN0X2Nhc2VzXywKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgJlRlc3RDYXNlOjpyZXBvcnRhYmxlX2Rpc2FibGVkX3Rlc3RfY291bnQp
OworICByZXR1cm4gU3VtT3ZlclRlc3RTdWl0ZUxpc3QodGVzdF9zdWl0ZXNfLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgJlRlc3RTdWl0ZTo6cmVwb3J0YWJsZV9kaXNhYmxlZF90ZXN0
X2NvdW50KTsKIH0KIAogLy8gR2V0cyB0aGUgbnVtYmVyIG9mIGRpc2FibGVkIHRlc3RzLgogaW50
IFVuaXRUZXN0SW1wbDo6ZGlzYWJsZWRfdGVzdF9jb3VudCgpIGNvbnN0IHsKLSAgcmV0dXJuIFN1
bU92ZXJUZXN0Q2FzZUxpc3QodGVzdF9jYXNlc18sICZUZXN0Q2FzZTo6ZGlzYWJsZWRfdGVzdF9j
b3VudCk7CisgIHJldHVybiBTdW1PdmVyVGVzdFN1aXRlTGlzdCh0ZXN0X3N1aXRlc18sICZUZXN0
U3VpdGU6OmRpc2FibGVkX3Rlc3RfY291bnQpOwogfQogCiAvLyBHZXRzIHRoZSBudW1iZXIgb2Yg
dGVzdHMgdG8gYmUgcHJpbnRlZCBpbiB0aGUgWE1MIHJlcG9ydC4KIGludCBVbml0VGVzdEltcGw6
OnJlcG9ydGFibGVfdGVzdF9jb3VudCgpIGNvbnN0IHsKLSAgcmV0dXJuIFN1bU92ZXJUZXN0Q2Fz
ZUxpc3QodGVzdF9jYXNlc18sICZUZXN0Q2FzZTo6cmVwb3J0YWJsZV90ZXN0X2NvdW50KTsKKyAg
cmV0dXJuIFN1bU92ZXJUZXN0U3VpdGVMaXN0KHRlc3Rfc3VpdGVzXywgJlRlc3RTdWl0ZTo6cmVw
b3J0YWJsZV90ZXN0X2NvdW50KTsKIH0KIAogLy8gR2V0cyB0aGUgbnVtYmVyIG9mIGFsbCB0ZXN0
cy4KIGludCBVbml0VGVzdEltcGw6OnRvdGFsX3Rlc3RfY291bnQoKSBjb25zdCB7Ci0gIHJldHVy
biBTdW1PdmVyVGVzdENhc2VMaXN0KHRlc3RfY2FzZXNfLCAmVGVzdENhc2U6OnRvdGFsX3Rlc3Rf
Y291bnQpOworICByZXR1cm4gU3VtT3ZlclRlc3RTdWl0ZUxpc3QodGVzdF9zdWl0ZXNfLCAmVGVz
dFN1aXRlOjp0b3RhbF90ZXN0X2NvdW50KTsKIH0KIAogLy8gR2V0cyB0aGUgbnVtYmVyIG9mIHRl
c3RzIHRoYXQgc2hvdWxkIHJ1bi4KIGludCBVbml0VGVzdEltcGw6OnRlc3RfdG9fcnVuX2NvdW50
KCkgY29uc3QgewotICByZXR1cm4gU3VtT3ZlclRlc3RDYXNlTGlzdCh0ZXN0X2Nhc2VzXywgJlRl
c3RDYXNlOjp0ZXN0X3RvX3J1bl9jb3VudCk7CisgIHJldHVybiBTdW1PdmVyVGVzdFN1aXRlTGlz
dCh0ZXN0X3N1aXRlc18sICZUZXN0U3VpdGU6OnRlc3RfdG9fcnVuX2NvdW50KTsKIH0KIAogLy8g
UmV0dXJucyB0aGUgY3VycmVudCBPUyBzdGFjayB0cmFjZSBhcyBhbiBzdGQ6OnN0cmluZy4KQEAg
LTg1OCw4ICs5OTcsNiBAQCBUaW1lSW5NaWxsaXMgR2V0VGltZUluTWlsbGlzKCkgewogICBTWVNU
RU1USU1FIG5vd19zeXN0aW1lOwogICBGSUxFVElNRSBub3dfZmlsZXRpbWU7CiAgIFVMQVJHRV9J
TlRFR0VSIG5vd19pbnQ2NDsKLSAgLy8gRklYTUU6IFNob3VsZG4ndCB0aGlzIGp1c3QgdXNlCi0g
IC8vICAgR2V0U3lzdGVtVGltZUFzRmlsZVRpbWUoKT8KICAgR2V0U3lzdGVtVGltZSgmbm93X3N5
c3RpbWUpOwogICBpZiAoU3lzdGVtVGltZVRvRmlsZVRpbWUoJm5vd19zeXN0aW1lLCAmbm93X2Zp
bGV0aW1lKSkgewogICAgIG5vd19pbnQ2NC5Mb3dQYXJ0ID0gbm93X2ZpbGV0aW1lLmR3TG93RGF0
ZVRpbWU7CkBAIC04NzQsOCArMTAxMSw2IEBAIFRpbWVJbk1pbGxpcyBHZXRUaW1lSW5NaWxsaXMo
KSB7CiAKICAgLy8gTVNWQyA4IGRlcHJlY2F0ZXMgX2Z0aW1lNjQoKSwgc28gd2Ugd2FudCB0byBz
dXBwcmVzcyB3YXJuaW5nIDQ5OTYKICAgLy8gKGRlcHJlY2F0ZWQgZnVuY3Rpb24pIHRoZXJlLgot
ICAvLyBGSVhNRTogVXNlIEdldFRpY2tDb3VudCgpPyAgT3IgdXNlCi0gIC8vICAgU3lzdGVtVGlt
ZVRvRmlsZVRpbWUoKQogICBHVEVTVF9ESVNBQkxFX01TQ19ERVBSRUNBVEVEX1BVU0hfKCkKICAg
X2Z0aW1lNjQoJm5vdyk7CiAgIEdURVNUX0RJU0FCTEVfTVNDX0RFUFJFQ0FURURfUE9QXygpCkBA
IC04ODMsNyArMTAxOCw3IEBAIFRpbWVJbk1pbGxpcyBHZXRUaW1lSW5NaWxsaXMoKSB7CiAgIHJl
dHVybiBzdGF0aWNfY2FzdDxUaW1lSW5NaWxsaXM+KG5vdy50aW1lKSAqIDEwMDAgKyBub3cubWls
bGl0bTsKICNlbGlmIEdURVNUX0hBU19HRVRUSU1FT0ZEQVlfCiAgIHN0cnVjdCB0aW1ldmFsIG5v
dzsKLSAgZ2V0dGltZW9mZGF5KCZub3csIE5VTEwpOworICBnZXR0aW1lb2ZkYXkoJm5vdywgbnVs
bHB0cik7CiAgIHJldHVybiBzdGF0aWNfY2FzdDxUaW1lSW5NaWxsaXM+KG5vdy50dl9zZWMpICog
MTAwMCArIG5vdy50dl91c2VjIC8gMTAwMDsKICNlbHNlCiAjIGVycm9yICJEb24ndCBrbm93IGhv
dyB0byBnZXQgdGhlIGN1cnJlbnQgdGltZSBvbiB5b3VyIHN5c3RlbS4iCkBAIC05MDAsMTEgKzEw
MzUsMTAgQEAgVGltZUluTWlsbGlzIEdldFRpbWVJbk1pbGxpcygpIHsKIC8vIHZhbHVlIHVzaW5n
IGRlbGV0ZVtdLiBSZXR1cm5zIHRoZSB3aWRlIHN0cmluZywgb3IgTlVMTCBpZiB0aGUKIC8vIGlu
cHV0IGlzIE5VTEwuCiBMUENXU1RSIFN0cmluZzo6QW5zaVRvVXRmMTYoY29uc3QgY2hhciogYW5z
aSkgewotICBpZiAoIWFuc2kpIHJldHVybiBOVUxMOworICBpZiAoIWFuc2kpIHJldHVybiBudWxs
cHRyOwogICBjb25zdCBpbnQgbGVuZ3RoID0gc3RybGVuKGFuc2kpOwogICBjb25zdCBpbnQgdW5p
Y29kZV9sZW5ndGggPQotICAgICAgTXVsdGlCeXRlVG9XaWRlQ2hhcihDUF9BQ1AsIDAsIGFuc2ks
IGxlbmd0aCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgMCk7CisgICAgICBNdWx0
aUJ5dGVUb1dpZGVDaGFyKENQX0FDUCwgMCwgYW5zaSwgbGVuZ3RoLCBudWxscHRyLCAwKTsKICAg
V0NIQVIqIHVuaWNvZGUgPSBuZXcgV0NIQVJbdW5pY29kZV9sZW5ndGggKyAxXTsKICAgTXVsdGlC
eXRlVG9XaWRlQ2hhcihDUF9BQ1AsIDAsIGFuc2ksIGxlbmd0aCwKICAgICAgICAgICAgICAgICAg
ICAgICB1bmljb2RlLCB1bmljb2RlX2xlbmd0aCk7CkBAIC05MTcsMzMgKzEwNTEsMzMgQEAgTFBD
V1NUUiBTdHJpbmc6OkFuc2lUb1V0ZjE2KGNvbnN0IGNoYXIqIGFuc2kpIHsKIC8vIHZhbHVlIHVz
aW5nIGRlbGV0ZVtdLiBSZXR1cm5zIHRoZSBBTlNJIHN0cmluZywgb3IgTlVMTCBpZiB0aGUKIC8v
IGlucHV0IGlzIE5VTEwuCiBjb25zdCBjaGFyKiBTdHJpbmc6OlV0ZjE2VG9BbnNpKExQQ1dTVFIg
dXRmMTZfc3RyKSAgewotICBpZiAoIXV0ZjE2X3N0cikgcmV0dXJuIE5VTEw7Ci0gIGNvbnN0IGlu
dCBhbnNpX2xlbmd0aCA9Ci0gICAgICBXaWRlQ2hhclRvTXVsdGlCeXRlKENQX0FDUCwgMCwgdXRm
MTZfc3RyLCAtMSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgMCwgTlVMTCwgTlVM
TCk7CisgIGlmICghdXRmMTZfc3RyKSByZXR1cm4gbnVsbHB0cjsKKyAgY29uc3QgaW50IGFuc2lf
bGVuZ3RoID0gV2lkZUNoYXJUb011bHRpQnl0ZShDUF9BQ1AsIDAsIHV0ZjE2X3N0ciwgLTEsIG51
bGxwdHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwg
bnVsbHB0ciwgbnVsbHB0cik7CiAgIGNoYXIqIGFuc2kgPSBuZXcgY2hhclthbnNpX2xlbmd0aCAr
IDFdOwotICBXaWRlQ2hhclRvTXVsdGlCeXRlKENQX0FDUCwgMCwgdXRmMTZfc3RyLCAtMSwKLSAg
ICAgICAgICAgICAgICAgICAgICBhbnNpLCBhbnNpX2xlbmd0aCwgTlVMTCwgTlVMTCk7CisgIFdp
ZGVDaGFyVG9NdWx0aUJ5dGUoQ1BfQUNQLCAwLCB1dGYxNl9zdHIsIC0xLCBhbnNpLCBhbnNpX2xl
bmd0aCwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICAgICAgICBudWxscHRyKTsKICAgYW5zaVth
bnNpX2xlbmd0aF0gPSAwOwogICByZXR1cm4gYW5zaTsKIH0KIAogI2VuZGlmICAvLyBHVEVTVF9P
U19XSU5ET1dTX01PQklMRQogCi0vLyBDb21wYXJlcyB0d28gQyBzdHJpbmdzLiAgUmV0dXJucyB0
cnVlIGlmZiB0aGV5IGhhdmUgdGhlIHNhbWUgY29udGVudC4KKy8vIENvbXBhcmVzIHR3byBDIHN0
cmluZ3MuICBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhleSBoYXZlIHRoZSBzYW1lCisv
LyBjb250ZW50LgogLy8KIC8vIFVubGlrZSBzdHJjbXAoKSwgdGhpcyBmdW5jdGlvbiBjYW4gaGFu
ZGxlIE5VTEwgYXJndW1lbnQocykuICBBIE5VTEwKIC8vIEMgc3RyaW5nIGlzIGNvbnNpZGVyZWQg
ZGlmZmVyZW50IHRvIGFueSBub24tTlVMTCBDIHN0cmluZywKIC8vIGluY2x1ZGluZyB0aGUgZW1w
dHkgc3RyaW5nLgogYm9vbCBTdHJpbmc6OkNTdHJpbmdFcXVhbHMoY29uc3QgY2hhciAqIGxocywg
Y29uc3QgY2hhciAqIHJocykgewotICBpZiAoIGxocyA9PSBOVUxMICkgcmV0dXJuIHJocyA9PSBO
VUxMOworICBpZiAobGhzID09IG51bGxwdHIpIHJldHVybiByaHMgPT0gbnVsbHB0cjsKIAotICBp
ZiAoIHJocyA9PSBOVUxMICkgcmV0dXJuIGZhbHNlOworICBpZiAocmhzID09IG51bGxwdHIpIHJl
dHVybiBmYWxzZTsKIAogICByZXR1cm4gc3RyY21wKGxocywgcmhzKSA9PSAwOwogfQogCi0jaWYg
R1RFU1RfSEFTX1NURF9XU1RSSU5HIHx8IEdURVNUX0hBU19HTE9CQUxfV1NUUklORworI2lmIEdU
RVNUX0hBU19TVERfV1NUUklORwogCiAvLyBDb252ZXJ0cyBhbiBhcnJheSBvZiB3aWRlIGNoYXJz
IHRvIGEgbmFycm93IHN0cmluZyB1c2luZyB0aGUgVVRGLTgKIC8vIGVuY29kaW5nLCBhbmQgc3Ry
ZWFtcyB0aGUgcmVzdWx0IHRvIHRoZSBnaXZlbiBNZXNzYWdlIG9iamVjdC4KQEAgLTk2MSw3ICsx
MDk1LDcgQEAgc3RhdGljIHZvaWQgU3RyZWFtV2lkZUNoYXJzVG9NZXNzYWdlKGNvbnN0IHdjaGFy
X3QqIHdzdHIsIHNpemVfdCBsZW5ndGgsCiAgIH0KIH0KIAotI2VuZGlmICAvLyBHVEVTVF9IQVNf
U1REX1dTVFJJTkcgfHwgR1RFU1RfSEFTX0dMT0JBTF9XU1RSSU5HCisjZW5kaWYgIC8vIEdURVNU
X0hBU19TVERfV1NUUklORwogCiB2b2lkIFNwbGl0U3RyaW5nKGNvbnN0IDo6c3RkOjpzdHJpbmcm
IHN0ciwgY2hhciBkZWxpbWl0ZXIsCiAgICAgICAgICAgICAgICAgIDo6c3RkOjp2ZWN0b3I8IDo6
c3RkOjpzdHJpbmc+KiBkZXN0KSB7CkBAIC0xMDExLDE1ICsxMTQ1LDYgQEAgTWVzc2FnZSYgTWVz
c2FnZTo6b3BlcmF0b3IgPDwoY29uc3QgOjpzdGQ6OndzdHJpbmcmIHdzdHIpIHsKIH0KICNlbmRp
ZiAgLy8gR1RFU1RfSEFTX1NURF9XU1RSSU5HCiAKLSNpZiBHVEVTVF9IQVNfR0xPQkFMX1dTVFJJ
TkcKLS8vIENvbnZlcnRzIHRoZSBnaXZlbiB3aWRlIHN0cmluZyB0byBhIG5hcnJvdyBzdHJpbmcg
dXNpbmcgdGhlIFVURi04Ci0vLyBlbmNvZGluZywgYW5kIHN0cmVhbXMgdGhlIHJlc3VsdCB0byB0
aGlzIE1lc3NhZ2Ugb2JqZWN0LgotTWVzc2FnZSYgTWVzc2FnZTo6b3BlcmF0b3IgPDwoY29uc3Qg
Ojp3c3RyaW5nJiB3c3RyKSB7Ci0gIGludGVybmFsOjpTdHJlYW1XaWRlQ2hhcnNUb01lc3NhZ2Uo
d3N0ci5jX3N0cigpLCB3c3RyLmxlbmd0aCgpLCB0aGlzKTsKLSAgcmV0dXJuICp0aGlzOwotfQot
I2VuZGlmICAvLyBHVEVTVF9IQVNfR0xPQkFMX1dTVFJJTkcKLQogLy8gR2V0cyB0aGUgdGV4dCBz
dHJlYW1lZCB0byB0aGlzIG9iamVjdCBzbyBmYXIgYXMgYW4gc3RkOjpzdHJpbmcuCiAvLyBFYWNo
ICdcMCcgY2hhcmFjdGVyIGluIHRoZSBidWZmZXIgaXMgcmVwbGFjZWQgd2l0aCAiXFwwIi4KIHN0
ZDo6c3RyaW5nIE1lc3NhZ2U6OkdldFN0cmluZygpIGNvbnN0IHsKQEAgLTEwMzAsMTAgKzExNTUs
OSBAQCBzdGQ6OnN0cmluZyBNZXNzYWdlOjpHZXRTdHJpbmcoKSBjb25zdCB7CiAvLyBVc2VkIGlu
IEVYUEVDVF9UUlVFL0ZBTFNFKGFzc2VydGlvbl9yZXN1bHQpLgogQXNzZXJ0aW9uUmVzdWx0OjpB
c3NlcnRpb25SZXN1bHQoY29uc3QgQXNzZXJ0aW9uUmVzdWx0JiBvdGhlcikKICAgICA6IHN1Y2Nl
c3NfKG90aGVyLnN1Y2Nlc3NfKSwKLSAgICAgIG1lc3NhZ2VfKG90aGVyLm1lc3NhZ2VfLmdldCgp
ICE9IE5VTEwgPwotICAgICAgICAgICAgICAgbmV3IDo6c3RkOjpzdHJpbmcoKm90aGVyLm1lc3Nh
Z2VfKSA6Ci0gICAgICAgICAgICAgICBzdGF0aWNfY2FzdDwgOjpzdGQ6OnN0cmluZyo+KE5VTEwp
KSB7Ci19CisgICAgICBtZXNzYWdlXyhvdGhlci5tZXNzYWdlXy5nZXQoKSAhPSBudWxscHRyCisg
ICAgICAgICAgICAgICAgICAgPyBuZXcgOjpzdGQ6OnN0cmluZygqb3RoZXIubWVzc2FnZV8pCisg
ICAgICAgICAgICAgICAgICAgOiBzdGF0aWNfY2FzdDwgOjpzdGQ6OnN0cmluZyo+KG51bGxwdHIp
KSB7fQogCiAvLyBTd2FwcyB0d28gQXNzZXJ0aW9uUmVzdWx0cy4KIHZvaWQgQXNzZXJ0aW9uUmVz
dWx0Ojpzd2FwKEFzc2VydGlvblJlc3VsdCYgb3RoZXIpIHsKQEAgLTEwNDUsOCArMTE2OSw3IEBA
IHZvaWQgQXNzZXJ0aW9uUmVzdWx0Ojpzd2FwKEFzc2VydGlvblJlc3VsdCYgb3RoZXIpIHsKIC8v
IFJldHVybnMgdGhlIGFzc2VydGlvbidzIG5lZ2F0aW9uLiBVc2VkIHdpdGggRVhQRUNUL0FTU0VS
VF9GQUxTRS4KIEFzc2VydGlvblJlc3VsdCBBc3NlcnRpb25SZXN1bHQ6Om9wZXJhdG9yISgpIGNv
bnN0IHsKICAgQXNzZXJ0aW9uUmVzdWx0IG5lZ2F0aW9uKCFzdWNjZXNzXyk7Ci0gIGlmIChtZXNz
YWdlXy5nZXQoKSAhPSBOVUxMKQotICAgIG5lZ2F0aW9uIDw8ICptZXNzYWdlXzsKKyAgaWYgKG1l
c3NhZ2VfLmdldCgpICE9IG51bGxwdHIpIG5lZ2F0aW9uIDw8ICptZXNzYWdlXzsKICAgcmV0dXJu
IG5lZ2F0aW9uOwogfQogCkBAIC0xMjcyLDkgKzEzOTUsMTAgQEAgc3RkOjpzdHJpbmcgQ3JlYXRl
VW5pZmllZERpZmYoY29uc3Qgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+JiBsZWZ0LAogICAgIGZv
ciAoOyBlZGl0X2kgPCBlZGl0cy5zaXplKCk7ICsrZWRpdF9pKSB7CiAgICAgICBpZiAobl9zdWZm
aXggPj0gY29udGV4dCkgewogICAgICAgICAvLyBDb250aW51ZSBvbmx5IGlmIHRoZSBuZXh0IGh1
bmsgaXMgdmVyeSBjbG9zZS4KLSAgICAgICAgc3RkOjp2ZWN0b3I8RWRpdFR5cGU+Ojpjb25zdF9p
dGVyYXRvciBpdCA9IGVkaXRzLmJlZ2luKCkgKyBlZGl0X2k7CisgICAgICAgIGF1dG8gaXQgPSBl
ZGl0cy5iZWdpbigpICsgc3RhdGljX2Nhc3Q8aW50PihlZGl0X2kpOwogICAgICAgICB3aGlsZSAo
aXQgIT0gZWRpdHMuZW5kKCkgJiYgKml0ID09IGtNYXRjaCkgKytpdDsKLSAgICAgICAgaWYgKGl0
ID09IGVkaXRzLmVuZCgpIHx8IChpdCAtIGVkaXRzLmJlZ2luKCkpIC0gZWRpdF9pID49IGNvbnRl
eHQpIHsKKyAgICAgICAgaWYgKGl0ID09IGVkaXRzLmVuZCgpIHx8CisgICAgICAgICAgICBzdGF0
aWNfY2FzdDxzaXplX3Q+KGl0IC0gZWRpdHMuYmVnaW4oKSkgLSBlZGl0X2kgPj0gY29udGV4dCkg
ewogICAgICAgICAgIC8vIFRoZXJlIGlzIG5vIG5leHQgZWRpdCBvciBpdCBpcyB0b28gZmFyIGF3
YXkuCiAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KQEAgLTEzNTAsNyArMTQ3NCw3IEBAIHN0
ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiBTcGxpdEVzY2FwZWRTdHJpbmcoY29uc3Qgc3RkOjpzdHJp
bmcmIHN0cikgewogLy8gICBsaHNfdmFsdWU6ICAgICAgIjUiCiAvLyAgIHJoc192YWx1ZTogICAg
ICAiNiIKIC8vCi0vLyBUaGUgaWdub3JpbmdfY2FzZSBwYXJhbWV0ZXIgaXMgdHJ1ZSBpZmYgdGhl
IGFzc2VydGlvbiBpcyBhCisvLyBUaGUgaWdub3JpbmdfY2FzZSBwYXJhbWV0ZXIgaXMgdHJ1ZSBp
ZiBhbmQgb25seSBpZiB0aGUgYXNzZXJ0aW9uIGlzIGEKIC8vICpfU1RSQ0FTRUVRKi4gIFdoZW4g
aXQncyB0cnVlLCB0aGUgc3RyaW5nICJJZ25vcmluZyBjYXNlIiB3aWxsCiAvLyBiZSBpbnNlcnRl
ZCBpbnRvIHRoZSBtZXNzYWdlLgogQXNzZXJ0aW9uUmVzdWx0IEVxRmFpbHVyZShjb25zdCBjaGFy
KiBsaHNfZXhwcmVzc2lvbiwKQEAgLTE0MTMsOCArMTUzNyw2IEBAIEFzc2VydGlvblJlc3VsdCBE
b3VibGVOZWFyUHJlZEZvcm1hdChjb25zdCBjaGFyKiBleHByMSwKICAgY29uc3QgZG91YmxlIGRp
ZmYgPSBmYWJzKHZhbDEgLSB2YWwyKTsKICAgaWYgKGRpZmYgPD0gYWJzX2Vycm9yKSByZXR1cm4g
QXNzZXJ0aW9uU3VjY2VzcygpOwogCi0gIC8vIEZJWE1FOiBkbyBub3QgcHJpbnQgdGhlIHZhbHVl
IG9mIGFuIGV4cHJlc3Npb24gaWYgaXQncwotICAvLyBhbHJlYWR5IGEgbGl0ZXJhbC4KICAgcmV0
dXJuIEFzc2VydGlvbkZhaWx1cmUoKQogICAgICAgPDwgIlRoZSBkaWZmZXJlbmNlIGJldHdlZW4g
IiA8PCBleHByMSA8PCAiIGFuZCAiIDw8IGV4cHIyCiAgICAgICA8PCAiIGlzICIgPDwgZGlmZiA8
PCAiLCB3aGljaCBleGNlZWRzICIgPDwgYWJzX2Vycm9yX2V4cHIgPDwgIiwgd2hlcmVcbiIKQEAg
LTE1OTUsMjIgKzE3MTcsMjAgQEAgbmFtZXNwYWNlIHsKIAogLy8gSGVscGVyIGZ1bmN0aW9ucyBm
b3IgaW1wbGVtZW50aW5nIElzU3ViU3RyaW5nKCkgYW5kIElzTm90U3Vic3RyaW5nKCkuCiAKLS8v
IFRoaXMgZ3JvdXAgb2Ygb3ZlcmxvYWRlZCBmdW5jdGlvbnMgcmV0dXJuIHRydWUgaWZmIG5lZWRs
ZSBpcyBhCi0vLyBzdWJzdHJpbmcgb2YgaGF5c3RhY2suICBOVUxMIGlzIGNvbnNpZGVyZWQgYSBz
dWJzdHJpbmcgb2YgaXRzZWxmCi0vLyBvbmx5LgorLy8gVGhpcyBncm91cCBvZiBvdmVybG9hZGVk
IGZ1bmN0aW9ucyByZXR1cm4gdHJ1ZSBpZiBhbmQgb25seSBpZiBuZWVkbGUKKy8vIGlzIGEgc3Vi
c3RyaW5nIG9mIGhheXN0YWNrLiAgTlVMTCBpcyBjb25zaWRlcmVkIGEgc3Vic3RyaW5nIG9mCisv
LyBpdHNlbGYgb25seS4KIAogYm9vbCBJc1N1YnN0cmluZ1ByZWQoY29uc3QgY2hhciogbmVlZGxl
LCBjb25zdCBjaGFyKiBoYXlzdGFjaykgewotICBpZiAobmVlZGxlID09IE5VTEwgfHwgaGF5c3Rh
Y2sgPT0gTlVMTCkKLSAgICByZXR1cm4gbmVlZGxlID09IGhheXN0YWNrOworICBpZiAobmVlZGxl
ID09IG51bGxwdHIgfHwgaGF5c3RhY2sgPT0gbnVsbHB0cikgcmV0dXJuIG5lZWRsZSA9PSBoYXlz
dGFjazsKIAotICByZXR1cm4gc3Ryc3RyKGhheXN0YWNrLCBuZWVkbGUpICE9IE5VTEw7CisgIHJl
dHVybiBzdHJzdHIoaGF5c3RhY2ssIG5lZWRsZSkgIT0gbnVsbHB0cjsKIH0KIAogYm9vbCBJc1N1
YnN0cmluZ1ByZWQoY29uc3Qgd2NoYXJfdCogbmVlZGxlLCBjb25zdCB3Y2hhcl90KiBoYXlzdGFj
aykgewotICBpZiAobmVlZGxlID09IE5VTEwgfHwgaGF5c3RhY2sgPT0gTlVMTCkKLSAgICByZXR1
cm4gbmVlZGxlID09IGhheXN0YWNrOworICBpZiAobmVlZGxlID09IG51bGxwdHIgfHwgaGF5c3Rh
Y2sgPT0gbnVsbHB0cikgcmV0dXJuIG5lZWRsZSA9PSBoYXlzdGFjazsKIAotICByZXR1cm4gd2Nz
c3RyKGhheXN0YWNrLCBuZWVkbGUpICE9IE5VTEw7CisgIHJldHVybiB3Y3NzdHIoaGF5c3RhY2ss
IG5lZWRsZSkgIT0gbnVsbHB0cjsKIH0KIAogLy8gU3RyaW5nVHlwZSBoZXJlIGNhbiBiZSBlaXRo
ZXIgOjpzdGQ6OnN0cmluZyBvciA6OnN0ZDo6d3N0cmluZy4KQEAgLTE3MjQsMTIgKzE4NDQsMTIg
QEAgQXNzZXJ0aW9uUmVzdWx0IEhSRVNVTFRGYWlsdXJlSGVscGVyKGNvbnN0IGNoYXIqIGV4cHIs
CiAgIC8vIEdldHMgdGhlIHN5c3RlbSdzIGh1bWFuIHJlYWRhYmxlIG1lc3NhZ2Ugc3RyaW5nIGZv
ciB0aGlzIEhSRVNVTFQuCiAgIGNoYXIgZXJyb3JfdGV4dFtrQnVmU2l6ZV0gPSB7ICdcMCcgfTsK
ICAgRFdPUkQgbWVzc2FnZV9sZW5ndGggPSA6OkZvcm1hdE1lc3NhZ2VBKGtGbGFncywKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsICAvLyBubyBzb3VyY2UsIHdl
J3JlIGFza2luZyBzeXN0ZW0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGhyLCAgLy8gdGhlIGVycm9yCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAwLCAgLy8gbm8gbGluZSB3aWR0aCByZXN0cmljdGlvbnMKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsICAgLy8gbm8gc291cmNlLCB3ZSdyZSBhc2tp
bmcgc3lzdGVtCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0
aWNfY2FzdDxEV09SRD4oaHIpLCAgLy8gdGhlIGVycm9yCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAwLCAgIC8vIG5vIGxpbmUgd2lkdGggcmVzdHJpY3Rpb25zCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcl90ZXh0LCAgLy8g
b3V0cHV0IGJ1ZmZlcgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
a0J1ZlNpemUsICAvLyBidWYgc2l6ZQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgTlVMTCk7ICAvLyBubyBhcmd1bWVudHMgZm9yIGluc2VydHMKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtCdWZTaXplLCAgICAvLyBidWYgc2l6ZQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbHB0cik7ICAvLyBu
byBhcmd1bWVudHMgZm9yIGluc2VydHMKICAgLy8gVHJpbXMgdGFpbGluZyB3aGl0ZSBzcGFjZSAo
Rm9ybWF0TWVzc2FnZSBsZWF2ZXMgYSB0cmFpbGluZyBDUi1MRikKICAgZm9yICg7IG1lc3NhZ2Vf
bGVuZ3RoICYmIElzU3BhY2UoZXJyb3JfdGV4dFttZXNzYWdlX2xlbmd0aCAtIDFdKTsKICAgICAg
ICAgICAtLW1lc3NhZ2VfbGVuZ3RoKSB7CkBAIC0xNzc1LDM1ICsxODk1LDM1IEBAIEFzc2VydGlv
blJlc3VsdCBJc0hSRVNVTFRGYWlsdXJlKGNvbnN0IGNoYXIqIGV4cHIsIGxvbmcgaHIpIHsgIC8v
IE5PTElOVAogLy8gIDE3IC0gMjEgYml0cyAgICAgICAxMTExMHh4eCAxMHh4eHh4eCAxMHh4eHh4
eCAxMHh4eHh4eAogCiAvLyBUaGUgbWF4aW11bSBjb2RlLXBvaW50IGEgb25lLWJ5dGUgVVRGLTgg
c2VxdWVuY2UgY2FuIHJlcHJlc2VudC4KLWNvbnN0IFVJbnQzMiBrTWF4Q29kZVBvaW50MSA9IChz
dGF0aWNfY2FzdDxVSW50MzI+KDEpIDw8ICA3KSAtIDE7Citjb25zdGV4cHIgdWludDMyX3Qga01h
eENvZGVQb2ludDEgPSAoc3RhdGljX2Nhc3Q8dWludDMyX3Q+KDEpIDw8ICA3KSAtIDE7CiAKIC8v
IFRoZSBtYXhpbXVtIGNvZGUtcG9pbnQgYSB0d28tYnl0ZSBVVEYtOCBzZXF1ZW5jZSBjYW4gcmVw
cmVzZW50LgotY29uc3QgVUludDMyIGtNYXhDb2RlUG9pbnQyID0gKHN0YXRpY19jYXN0PFVJbnQz
Mj4oMSkgPDwgKDUgKyA2KSkgLSAxOworY29uc3RleHByIHVpbnQzMl90IGtNYXhDb2RlUG9pbnQy
ID0gKHN0YXRpY19jYXN0PHVpbnQzMl90PigxKSA8PCAoNSArIDYpKSAtIDE7CiAKIC8vIFRoZSBt
YXhpbXVtIGNvZGUtcG9pbnQgYSB0aHJlZS1ieXRlIFVURi04IHNlcXVlbmNlIGNhbiByZXByZXNl
bnQuCi1jb25zdCBVSW50MzIga01heENvZGVQb2ludDMgPSAoc3RhdGljX2Nhc3Q8VUludDMyPigx
KSA8PCAoNCArIDIqNikpIC0gMTsKK2NvbnN0ZXhwciB1aW50MzJfdCBrTWF4Q29kZVBvaW50MyA9
IChzdGF0aWNfY2FzdDx1aW50MzJfdD4oMSkgPDwgKDQgKyAyKjYpKSAtIDE7CiAKIC8vIFRoZSBt
YXhpbXVtIGNvZGUtcG9pbnQgYSBmb3VyLWJ5dGUgVVRGLTggc2VxdWVuY2UgY2FuIHJlcHJlc2Vu
dC4KLWNvbnN0IFVJbnQzMiBrTWF4Q29kZVBvaW50NCA9IChzdGF0aWNfY2FzdDxVSW50MzI+KDEp
IDw8ICgzICsgMyo2KSkgLSAxOworY29uc3RleHByIHVpbnQzMl90IGtNYXhDb2RlUG9pbnQ0ID0g
KHN0YXRpY19jYXN0PHVpbnQzMl90PigxKSA8PCAoMyArIDMqNikpIC0gMTsKIAogLy8gQ2hvcHMg
b2ZmIHRoZSBuIGxvd2VzdCBiaXRzIGZyb20gYSBiaXQgcGF0dGVybi4gIFJldHVybnMgdGhlIG4K
IC8vIGxvd2VzdCBiaXRzLiAgQXMgYSBzaWRlIGVmZmVjdCwgdGhlIG9yaWdpbmFsIGJpdCBwYXR0
ZXJuIHdpbGwgYmUKIC8vIHNoaWZ0ZWQgdG8gdGhlIHJpZ2h0IGJ5IG4gYml0cy4KLWlubGluZSBV
SW50MzIgQ2hvcExvd0JpdHMoVUludDMyKiBiaXRzLCBpbnQgbikgewotICBjb25zdCBVSW50MzIg
bG93X2JpdHMgPSAqYml0cyAmICgoc3RhdGljX2Nhc3Q8VUludDMyPigxKSA8PCBuKSAtIDEpOwor
aW5saW5lIHVpbnQzMl90IENob3BMb3dCaXRzKHVpbnQzMl90KiBiaXRzLCBpbnQgbikgeworICBj
b25zdCB1aW50MzJfdCBsb3dfYml0cyA9ICpiaXRzICYgKChzdGF0aWNfY2FzdDx1aW50MzJfdD4o
MSkgPDwgbikgLSAxKTsKICAgKmJpdHMgPj49IG47CiAgIHJldHVybiBsb3dfYml0czsKIH0KIAog
Ly8gQ29udmVydHMgYSBVbmljb2RlIGNvZGUgcG9pbnQgdG8gYSBuYXJyb3cgc3RyaW5nIGluIFVU
Ri04IGVuY29kaW5nLgotLy8gY29kZV9wb2ludCBwYXJhbWV0ZXIgaXMgb2YgdHlwZSBVSW50MzIg
YmVjYXVzZSB3Y2hhcl90IG1heSBub3QgYmUKKy8vIGNvZGVfcG9pbnQgcGFyYW1ldGVyIGlzIG9m
IHR5cGUgdWludDMyX3QgYmVjYXVzZSB3Y2hhcl90IG1heSBub3QgYmUKIC8vIHdpZGUgZW5vdWdo
IHRvIGNvbnRhaW4gYSBjb2RlIHBvaW50LgogLy8gSWYgdGhlIGNvZGVfcG9pbnQgaXMgbm90IGEg
dmFsaWQgVW5pY29kZSBjb2RlIHBvaW50CiAvLyAoaS5lLiBvdXRzaWRlIG9mIFVuaWNvZGUgcmFu
Z2UgVSswIHRvIFUrMTBGRkZGKSBpdCB3aWxsIGJlIGNvbnZlcnRlZAogLy8gdG8gIihJbnZhbGlk
IFVuaWNvZGUgMHhYWFhYWFhYWCkiLgotc3RkOjpzdHJpbmcgQ29kZVBvaW50VG9VdGY4KFVJbnQz
MiBjb2RlX3BvaW50KSB7CitzdGQ6OnN0cmluZyBDb2RlUG9pbnRUb1V0ZjgodWludDMyX3QgY29k
ZV9wb2ludCkgewogICBpZiAoY29kZV9wb2ludCA+IGtNYXhDb2RlUG9pbnQ0KSB7Ci0gICAgcmV0
dXJuICIoSW52YWxpZCBVbmljb2RlIDB4IiArIFN0cmluZzo6Rm9ybWF0SGV4SW50KGNvZGVfcG9p
bnQpICsgIikiOworICAgIHJldHVybiAiKEludmFsaWQgVW5pY29kZSAweCIgKyBTdHJpbmc6OkZv
cm1hdEhleFVJbnQzMihjb2RlX3BvaW50KSArICIpIjsKICAgfQogCiAgIGNoYXIgc3RyWzVdOyAg
Ly8gQmlnIGVub3VnaCBmb3IgdGhlIGxhcmdlc3QgdmFsaWQgY29kZSBwb2ludC4KQEAgLTE4MzEs
NyArMTk1MSw3IEBAIHN0ZDo6c3RyaW5nIENvZGVQb2ludFRvVXRmOChVSW50MzIgY29kZV9wb2lu
dCkgewogCiAvLyBUaGUgZm9sbG93aW5nIHR3byBmdW5jdGlvbnMgb25seSBtYWtlIHNlbnNlIGlm
IHRoZSBzeXN0ZW0KIC8vIHVzZXMgVVRGLTE2IGZvciB3aWRlIHN0cmluZyBlbmNvZGluZy4gQWxs
IHN1cHBvcnRlZCBzeXN0ZW1zCi0vLyB3aXRoIDE2IGJpdCB3Y2hhcl90IChXaW5kb3dzLCBDeWd3
aW4sIFN5bWJpYW4gT1MpIGRvIHVzZSBVVEYtMTYuCisvLyB3aXRoIDE2IGJpdCB3Y2hhcl90IChX
aW5kb3dzLCBDeWd3aW4pIGRvIHVzZSBVVEYtMTYuCiAKIC8vIERldGVybWluZXMgaWYgdGhlIGFy
Z3VtZW50cyBjb25zdGl0dXRlIFVURi0xNiBzdXJyb2dhdGUgcGFpcgogLy8gYW5kIHRodXMgc2hv
dWxkIGJlIGNvbWJpbmVkIGludG8gYSBzaW5nbGUgVW5pY29kZSBjb2RlIHBvaW50CkBAIC0xODQy
LDE5ICsxOTYyLDIyIEBAIGlubGluZSBib29sIElzVXRmMTZTdXJyb2dhdGVQYWlyKHdjaGFyX3Qg
Zmlyc3QsIHdjaGFyX3Qgc2Vjb25kKSB7CiB9CiAKIC8vIENyZWF0ZXMgYSBVbmljb2RlIGNvZGUg
cG9pbnQgZnJvbSBVVEYxNiBzdXJyb2dhdGUgcGFpci4KLWlubGluZSBVSW50MzIgQ3JlYXRlQ29k
ZVBvaW50RnJvbVV0ZjE2U3Vycm9nYXRlUGFpcih3Y2hhcl90IGZpcnN0LAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdjaGFyX3Qgc2Vjb25kKSB7
Ci0gIGNvbnN0IFVJbnQzMiBtYXNrID0gKDEgPDwgMTApIC0gMTsKLSAgcmV0dXJuIChzaXplb2Yo
d2NoYXJfdCkgPT0gMikgPwotICAgICAgKCgoZmlyc3QgJiBtYXNrKSA8PCAxMCkgfCAoc2Vjb25k
ICYgbWFzaykpICsgMHgxMDAwMCA6Ci0gICAgICAvLyBUaGlzIGZ1bmN0aW9uIHNob3VsZCBub3Qg
YmUgY2FsbGVkIHdoZW4gdGhlIGNvbmRpdGlvbiBpcwotICAgICAgLy8gZmFsc2UsIGJ1dCB3ZSBw
cm92aWRlIGEgc2Vuc2libGUgZGVmYXVsdCBpbiBjYXNlIGl0IGlzLgotICAgICAgc3RhdGljX2Nh
c3Q8VUludDMyPihmaXJzdCk7CitpbmxpbmUgdWludDMyX3QgQ3JlYXRlQ29kZVBvaW50RnJvbVV0
ZjE2U3Vycm9nYXRlUGFpcih3Y2hhcl90IGZpcnN0LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2NoYXJfdCBzZWNvbmQpIHsKKyAgY29uc3Qg
YXV0byBmaXJzdF91ID0gc3RhdGljX2Nhc3Q8dWludDMyX3Q+KGZpcnN0KTsKKyAgY29uc3QgYXV0
byBzZWNvbmRfdSA9IHN0YXRpY19jYXN0PHVpbnQzMl90PihzZWNvbmQpOworICBjb25zdCB1aW50
MzJfdCBtYXNrID0gKDEgPDwgMTApIC0gMTsKKyAgcmV0dXJuIChzaXplb2Yod2NoYXJfdCkgPT0g
MikKKyAgICAgICAgICAgICA/ICgoKGZpcnN0X3UgJiBtYXNrKSA8PCAxMCkgfCAoc2Vjb25kX3Ug
JiBtYXNrKSkgKyAweDEwMDAwCisgICAgICAgICAgICAgOgorICAgICAgICAgICAgIC8vIFRoaXMg
ZnVuY3Rpb24gc2hvdWxkIG5vdCBiZSBjYWxsZWQgd2hlbiB0aGUgY29uZGl0aW9uIGlzCisgICAg
ICAgICAgICAgLy8gZmFsc2UsIGJ1dCB3ZSBwcm92aWRlIGEgc2Vuc2libGUgZGVmYXVsdCBpbiBj
YXNlIGl0IGlzLgorICAgICAgICAgICAgIGZpcnN0X3U7CiB9CiAKIC8vIENvbnZlcnRzIGEgd2lk
ZSBzdHJpbmcgdG8gYSBuYXJyb3cgc3RyaW5nIGluIFVURi04IGVuY29kaW5nLgogLy8gVGhlIHdp
ZGUgc3RyaW5nIGlzIGFzc3VtZWQgdG8gaGF2ZSB0aGUgZm9sbG93aW5nIGVuY29kaW5nOgotLy8g
ICBVVEYtMTYgaWYgc2l6ZW9mKHdjaGFyX3QpID09IDIgKG9uIFdpbmRvd3MsIEN5Z3dpbiwgU3lt
YmlhbiBPUykKKy8vICAgVVRGLTE2IGlmIHNpemVvZih3Y2hhcl90KSA9PSAyIChvbiBXaW5kb3dz
LCBDeWd3aW4pCiAvLyAgIFVURi0zMiBpZiBzaXplb2Yod2NoYXJfdCkgPT0gNCAob24gTGludXgp
CiAvLyBQYXJhbWV0ZXIgc3RyIHBvaW50cyB0byBhIG51bGwtdGVybWluYXRlZCB3aWRlIHN0cmlu
Zy4KIC8vIFBhcmFtZXRlciBudW1fY2hhcnMgbWF5IGFkZGl0aW9uYWxseSBsaW1pdCB0aGUgbnVt
YmVyCkBAIC0xODcxLDcgKzE5OTQsNyBAQCBzdGQ6OnN0cmluZyBXaWRlU3RyaW5nVG9VdGY4KGNv
bnN0IHdjaGFyX3QqIHN0ciwgaW50IG51bV9jaGFycykgewogCiAgIDo6c3RkOjpzdHJpbmdzdHJl
YW0gc3RyZWFtOwogICBmb3IgKGludCBpID0gMDsgaSA8IG51bV9jaGFyczsgKytpKSB7Ci0gICAg
VUludDMyIHVuaWNvZGVfY29kZV9wb2ludDsKKyAgICB1aW50MzJfdCB1bmljb2RlX2NvZGVfcG9p
bnQ7CiAKICAgICBpZiAoc3RyW2ldID09IEwnXDAnKSB7CiAgICAgICBicmVhazsKQEAgLTE4ODAs
NyArMjAwMyw3IEBAIHN0ZDo6c3RyaW5nIFdpZGVTdHJpbmdUb1V0ZjgoY29uc3Qgd2NoYXJfdCog
c3RyLCBpbnQgbnVtX2NoYXJzKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cltpICsgMV0pOwogICAgICAgaSsrOwog
ICAgIH0gZWxzZSB7Ci0gICAgICB1bmljb2RlX2NvZGVfcG9pbnQgPSBzdGF0aWNfY2FzdDxVSW50
MzI+KHN0cltpXSk7CisgICAgICB1bmljb2RlX2NvZGVfcG9pbnQgPSBzdGF0aWNfY2FzdDx1aW50
MzJfdD4oc3RyW2ldKTsKICAgICB9CiAKICAgICBzdHJlYW0gPDwgQ29kZVBvaW50VG9VdGY4KHVu
aWNvZGVfY29kZV9wb2ludCk7CkBAIC0xODkxLDIxICsyMDE0LDIxIEBAIHN0ZDo6c3RyaW5nIFdp
ZGVTdHJpbmdUb1V0ZjgoY29uc3Qgd2NoYXJfdCogc3RyLCBpbnQgbnVtX2NoYXJzKSB7CiAvLyBD
b252ZXJ0cyBhIHdpZGUgQyBzdHJpbmcgdG8gYW4gc3RkOjpzdHJpbmcgdXNpbmcgdGhlIFVURi04
IGVuY29kaW5nLgogLy8gTlVMTCB3aWxsIGJlIGNvbnZlcnRlZCB0byAiKG51bGwpIi4KIHN0ZDo6
c3RyaW5nIFN0cmluZzo6U2hvd1dpZGVDU3RyaW5nKGNvbnN0IHdjaGFyX3QgKiB3aWRlX2Nfc3Ry
KSB7Ci0gIGlmICh3aWRlX2Nfc3RyID09IE5VTEwpICByZXR1cm4gIihudWxsKSI7CisgIGlmICh3
aWRlX2Nfc3RyID09IG51bGxwdHIpIHJldHVybiAiKG51bGwpIjsKIAogICByZXR1cm4gaW50ZXJu
YWw6OldpZGVTdHJpbmdUb1V0Zjgod2lkZV9jX3N0ciwgLTEpOwogfQogCi0vLyBDb21wYXJlcyB0
d28gd2lkZSBDIHN0cmluZ3MuICBSZXR1cm5zIHRydWUgaWZmIHRoZXkgaGF2ZSB0aGUgc2FtZQot
Ly8gY29udGVudC4KKy8vIENvbXBhcmVzIHR3byB3aWRlIEMgc3RyaW5ncy4gIFJldHVybnMgdHJ1
ZSBpZiBhbmQgb25seSBpZiB0aGV5IGhhdmUgdGhlCisvLyBzYW1lIGNvbnRlbnQuCiAvLwogLy8g
VW5saWtlIHdjc2NtcCgpLCB0aGlzIGZ1bmN0aW9uIGNhbiBoYW5kbGUgTlVMTCBhcmd1bWVudChz
KS4gIEEgTlVMTAogLy8gQyBzdHJpbmcgaXMgY29uc2lkZXJlZCBkaWZmZXJlbnQgdG8gYW55IG5v
bi1OVUxMIEMgc3RyaW5nLAogLy8gaW5jbHVkaW5nIHRoZSBlbXB0eSBzdHJpbmcuCiBib29sIFN0
cmluZzo6V2lkZUNTdHJpbmdFcXVhbHMoY29uc3Qgd2NoYXJfdCAqIGxocywgY29uc3Qgd2NoYXJf
dCAqIHJocykgewotICBpZiAobGhzID09IE5VTEwpIHJldHVybiByaHMgPT0gTlVMTDsKKyAgaWYg
KGxocyA9PSBudWxscHRyKSByZXR1cm4gcmhzID09IG51bGxwdHI7CiAKLSAgaWYgKHJocyA9PSBO
VUxMKSByZXR1cm4gZmFsc2U7CisgIGlmIChyaHMgPT0gbnVsbHB0cikgcmV0dXJuIGZhbHNlOwog
CiAgIHJldHVybiB3Y3NjbXAobGhzLCByaHMpID09IDA7CiB9CkBAIC0xOTQxLDM3ICsyMDY0LDM1
IEBAIEFzc2VydGlvblJlc3VsdCBDbXBIZWxwZXJTVFJORShjb25zdCBjaGFyKiBzMV9leHByZXNz
aW9uLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw8ICIgdnMgIiA8PCBQcmludFRvU3Ry
aW5nKHMyKTsKIH0KIAotLy8gQ29tcGFyZXMgdHdvIEMgc3RyaW5ncywgaWdub3JpbmcgY2FzZS4g
IFJldHVybnMgdHJ1ZSBpZmYgdGhleSBoYXZlCisvLyBDb21wYXJlcyB0d28gQyBzdHJpbmdzLCBp
Z25vcmluZyBjYXNlLiAgUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoZXkgaGF2ZQogLy8g
dGhlIHNhbWUgY29udGVudC4KIC8vCiAvLyBVbmxpa2Ugc3RyY2FzZWNtcCgpLCB0aGlzIGZ1bmN0
aW9uIGNhbiBoYW5kbGUgTlVMTCBhcmd1bWVudChzKS4gIEEKIC8vIE5VTEwgQyBzdHJpbmcgaXMg
Y29uc2lkZXJlZCBkaWZmZXJlbnQgdG8gYW55IG5vbi1OVUxMIEMgc3RyaW5nLAogLy8gaW5jbHVk
aW5nIHRoZSBlbXB0eSBzdHJpbmcuCiBib29sIFN0cmluZzo6Q2FzZUluc2Vuc2l0aXZlQ1N0cmlu
Z0VxdWFscyhjb25zdCBjaGFyICogbGhzLCBjb25zdCBjaGFyICogcmhzKSB7Ci0gIGlmIChsaHMg
PT0gTlVMTCkKLSAgICByZXR1cm4gcmhzID09IE5VTEw7Ci0gIGlmIChyaHMgPT0gTlVMTCkKLSAg
ICByZXR1cm4gZmFsc2U7CisgIGlmIChsaHMgPT0gbnVsbHB0cikgcmV0dXJuIHJocyA9PSBudWxs
cHRyOworICBpZiAocmhzID09IG51bGxwdHIpIHJldHVybiBmYWxzZTsKICAgcmV0dXJuIHBvc2l4
OjpTdHJDYXNlQ21wKGxocywgcmhzKSA9PSAwOwogfQogCi0gIC8vIENvbXBhcmVzIHR3byB3aWRl
IEMgc3RyaW5ncywgaWdub3JpbmcgY2FzZS4gIFJldHVybnMgdHJ1ZSBpZmYgdGhleQotICAvLyBo
YXZlIHRoZSBzYW1lIGNvbnRlbnQuCi0gIC8vCi0gIC8vIFVubGlrZSB3Y3NjYXNlY21wKCksIHRo
aXMgZnVuY3Rpb24gY2FuIGhhbmRsZSBOVUxMIGFyZ3VtZW50KHMpLgotICAvLyBBIE5VTEwgQyBz
dHJpbmcgaXMgY29uc2lkZXJlZCBkaWZmZXJlbnQgdG8gYW55IG5vbi1OVUxMIHdpZGUgQyBzdHJp
bmcsCi0gIC8vIGluY2x1ZGluZyB0aGUgZW1wdHkgc3RyaW5nLgotICAvLyBOQjogVGhlIGltcGxl
bWVudGF0aW9ucyBvbiBkaWZmZXJlbnQgcGxhdGZvcm1zIHNsaWdodGx5IGRpZmZlci4KLSAgLy8g
T24gd2luZG93cywgdGhpcyBtZXRob2QgdXNlcyBfd2NzaWNtcCB3aGljaCBjb21wYXJlcyBhY2Nv
cmRpbmcgdG8gTENfQ1RZUEUKLSAgLy8gZW52aXJvbm1lbnQgdmFyaWFibGUuIE9uIEdOVSBwbGF0
Zm9ybSB0aGlzIG1ldGhvZCB1c2VzIHdjc2Nhc2VjbXAKLSAgLy8gd2hpY2ggY29tcGFyZXMgYWNj
b3JkaW5nIHRvIExDX0NUWVBFIGNhdGVnb3J5IG9mIHRoZSBjdXJyZW50IGxvY2FsZS4KLSAgLy8g
T24gTWFjT1MgWCwgaXQgdXNlcyB0b3dsb3dlciwgd2hpY2ggYWxzbyB1c2VzIExDX0NUWVBFIGNh
dGVnb3J5IG9mIHRoZQotICAvLyBjdXJyZW50IGxvY2FsZS4KKy8vIENvbXBhcmVzIHR3byB3aWRl
IEMgc3RyaW5ncywgaWdub3JpbmcgY2FzZS4gIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0
aGV5CisvLyBoYXZlIHRoZSBzYW1lIGNvbnRlbnQuCisvLworLy8gVW5saWtlIHdjc2Nhc2VjbXAo
KSwgdGhpcyBmdW5jdGlvbiBjYW4gaGFuZGxlIE5VTEwgYXJndW1lbnQocykuCisvLyBBIE5VTEwg
QyBzdHJpbmcgaXMgY29uc2lkZXJlZCBkaWZmZXJlbnQgdG8gYW55IG5vbi1OVUxMIHdpZGUgQyBz
dHJpbmcsCisvLyBpbmNsdWRpbmcgdGhlIGVtcHR5IHN0cmluZy4KKy8vIE5COiBUaGUgaW1wbGVt
ZW50YXRpb25zIG9uIGRpZmZlcmVudCBwbGF0Zm9ybXMgc2xpZ2h0bHkgZGlmZmVyLgorLy8gT24g
d2luZG93cywgdGhpcyBtZXRob2QgdXNlcyBfd2NzaWNtcCB3aGljaCBjb21wYXJlcyBhY2NvcmRp
bmcgdG8gTENfQ1RZUEUKKy8vIGVudmlyb25tZW50IHZhcmlhYmxlLiBPbiBHTlUgcGxhdGZvcm0g
dGhpcyBtZXRob2QgdXNlcyB3Y3NjYXNlY21wCisvLyB3aGljaCBjb21wYXJlcyBhY2NvcmRpbmcg
dG8gTENfQ1RZUEUgY2F0ZWdvcnkgb2YgdGhlIGN1cnJlbnQgbG9jYWxlLgorLy8gT24gTWFjT1Mg
WCwgaXQgdXNlcyB0b3dsb3dlciwgd2hpY2ggYWxzbyB1c2VzIExDX0NUWVBFIGNhdGVnb3J5IG9m
IHRoZQorLy8gY3VycmVudCBsb2NhbGUuCiBib29sIFN0cmluZzo6Q2FzZUluc2Vuc2l0aXZlV2lk
ZUNTdHJpbmdFcXVhbHMoY29uc3Qgd2NoYXJfdCogbGhzLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHdjaGFyX3QqIHJocykgewotICBpZiAobGhz
ID09IE5VTEwpIHJldHVybiByaHMgPT0gTlVMTDsKKyAgaWYgKGxocyA9PSBudWxscHRyKSByZXR1
cm4gcmhzID09IG51bGxwdHI7CiAKLSAgaWYgKHJocyA9PSBOVUxMKSByZXR1cm4gZmFsc2U7Cisg
IGlmIChyaHMgPT0gbnVsbHB0cikgcmV0dXJuIGZhbHNlOwogCiAjaWYgR1RFU1RfT1NfV0lORE9X
UwogICByZXR1cm4gX3djc2ljbXAobGhzLCByaHMpID09IDA7CkBAIC0xOTgyLDE0ICsyMTAzLDE0
IEBAIGJvb2wgU3RyaW5nOjpDYXNlSW5zZW5zaXRpdmVXaWRlQ1N0cmluZ0VxdWFscyhjb25zdCB3
Y2hhcl90KiBsaHMsCiAgIC8vIE90aGVyIHVua25vd24gT1NlcyBtYXkgbm90IGRlZmluZSBpdCBl
aXRoZXIuCiAgIHdpbnRfdCBsZWZ0LCByaWdodDsKICAgZG8gewotICAgIGxlZnQgPSB0b3dsb3dl
cigqbGhzKyspOwotICAgIHJpZ2h0ID0gdG93bG93ZXIoKnJocysrKTsKKyAgICBsZWZ0ID0gdG93
bG93ZXIoc3RhdGljX2Nhc3Q8d2ludF90PigqbGhzKyspKTsKKyAgICByaWdodCA9IHRvd2xvd2Vy
KHN0YXRpY19jYXN0PHdpbnRfdD4oKnJocysrKSk7CiAgIH0gd2hpbGUgKGxlZnQgJiYgbGVmdCA9
PSByaWdodCk7CiAgIHJldHVybiBsZWZ0ID09IHJpZ2h0OwogI2VuZGlmICAvLyBPUyBzZWxlY3Rv
cgogfQogCi0vLyBSZXR1cm5zIHRydWUgaWZmIHN0ciBlbmRzIHdpdGggdGhlIGdpdmVuIHN1ZmZp
eCwgaWdub3JpbmcgY2FzZS4KKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiBzdHIgZW5k
cyB3aXRoIHRoZSBnaXZlbiBzdWZmaXgsIGlnbm9yaW5nIGNhc2UuCiAvLyBBbnkgc3RyaW5nIGlz
IGNvbnNpZGVyZWQgdG8gZW5kIHdpdGggYW4gZW1wdHkgc3VmZml4LgogYm9vbCBTdHJpbmc6OkVu
ZHNXaXRoQ2FzZUluc2Vuc2l0aXZlKAogICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBzdHIsIGNvbnN0
IHN0ZDo6c3RyaW5nJiBzdWZmaXgpIHsKQEAgLTIwMDgsMTIgKzIxMjksMTcgQEAgc3RkOjpzdHJp
bmcgU3RyaW5nOjpGb3JtYXRJbnRXaWR0aDIoaW50IHZhbHVlKSB7CiB9CiAKIC8vIEZvcm1hdHMg
YW4gaW50IHZhbHVlIGFzICIlWCIuCi1zdGQ6OnN0cmluZyBTdHJpbmc6OkZvcm1hdEhleEludChp
bnQgdmFsdWUpIHsKK3N0ZDo6c3RyaW5nIFN0cmluZzo6Rm9ybWF0SGV4VUludDMyKHVpbnQzMl90
IHZhbHVlKSB7CiAgIHN0ZDo6c3RyaW5nc3RyZWFtIHNzOwogICBzcyA8PCBzdGQ6OmhleCA8PCBz
dGQ6OnVwcGVyY2FzZSA8PCB2YWx1ZTsKICAgcmV0dXJuIHNzLnN0cigpOwogfQogCisvLyBGb3Jt
YXRzIGFuIGludCB2YWx1ZSBhcyAiJVgiLgorc3RkOjpzdHJpbmcgU3RyaW5nOjpGb3JtYXRIZXhJ
bnQoaW50IHZhbHVlKSB7CisgIHJldHVybiBGb3JtYXRIZXhVSW50MzIoc3RhdGljX2Nhc3Q8dWlu
dDMyX3Q+KHZhbHVlKSk7Cit9CisKIC8vIEZvcm1hdHMgYSBieXRlIGFzICIlMDJYIi4KIHN0ZDo6
c3RyaW5nIFN0cmluZzo6Rm9ybWF0Qnl0ZSh1bnNpZ25lZCBjaGFyIHZhbHVlKSB7CiAgIHN0ZDo6
c3RyaW5nc3RyZWFtIHNzOwpAQCAtMjAzMCw3ICsyMTU2LDcgQEAgc3RkOjpzdHJpbmcgU3RyaW5n
U3RyZWFtVG9TdHJpbmcoOjpzdGQ6OnN0cmluZ3N0cmVhbSogc3MpIHsKICAgY29uc3QgY2hhciog
Y29uc3QgZW5kID0gc3RhcnQgKyBzdHIubGVuZ3RoKCk7CiAKICAgc3RkOjpzdHJpbmcgcmVzdWx0
OwotICByZXN1bHQucmVzZXJ2ZSgyICogKGVuZCAtIHN0YXJ0KSk7CisgIHJlc3VsdC5yZXNlcnZl
KHN0YXRpY19jYXN0PHNpemVfdD4oMiAqIChlbmQgLSBzdGFydCkpKTsKICAgZm9yIChjb25zdCBj
aGFyKiBjaCA9IHN0YXJ0OyBjaCAhPSBlbmQ7ICsrY2gpIHsKICAgICBpZiAoKmNoID09ICdcMCcp
IHsKICAgICAgIHJlc3VsdCArPSAiXFwwIjsgIC8vIFJlcGxhY2VzIE5VTCB3aXRoICJcXDAiOwpA
QCAtMjA2MCw5ICsyMTg2LDcgQEAgc3RkOjpzdHJpbmcgQXBwZW5kVXNlck1lc3NhZ2UoY29uc3Qg
c3RkOjpzdHJpbmcmIGd0ZXN0X21zZywKIAogLy8gQ3JlYXRlcyBhbiBlbXB0eSBUZXN0UmVzdWx0
LgogVGVzdFJlc3VsdDo6VGVzdFJlc3VsdCgpCi0gICAgOiBkZWF0aF90ZXN0X2NvdW50XygwKSwK
LSAgICAgIGVsYXBzZWRfdGltZV8oMCkgewotfQorICAgIDogZGVhdGhfdGVzdF9jb3VudF8oMCks
IHN0YXJ0X3RpbWVzdGFtcF8oMCksIGVsYXBzZWRfdGltZV8oMCkge30KIAogLy8gRCd0b3IuCiBU
ZXN0UmVzdWx0Ojp+VGVzdFJlc3VsdCgpIHsKQEAgLTIwNzQsNyArMjE5OCw3IEBAIFRlc3RSZXN1
bHQ6On5UZXN0UmVzdWx0KCkgewogY29uc3QgVGVzdFBhcnRSZXN1bHQmIFRlc3RSZXN1bHQ6Okdl
dFRlc3RQYXJ0UmVzdWx0KGludCBpKSBjb25zdCB7CiAgIGlmIChpIDwgMCB8fCBpID49IHRvdGFs
X3BhcnRfY291bnQoKSkKICAgICBpbnRlcm5hbDo6cG9zaXg6OkFib3J0KCk7Ci0gIHJldHVybiB0
ZXN0X3BhcnRfcmVzdWx0c18uYXQoaSk7CisgIHJldHVybiB0ZXN0X3BhcnRfcmVzdWx0c18uYXQo
c3RhdGljX2Nhc3Q8c2l6ZV90PihpKSk7CiB9CiAKIC8vIFJldHVybnMgdGhlIGktdGggdGVzdCBw
cm9wZXJ0eS4gaSBjYW4gcmFuZ2UgZnJvbSAwIHRvCkBAIC0yMDgzLDcgKzIyMDcsNyBAQCBjb25z
dCBUZXN0UGFydFJlc3VsdCYgVGVzdFJlc3VsdDo6R2V0VGVzdFBhcnRSZXN1bHQoaW50IGkpIGNv
bnN0IHsKIGNvbnN0IFRlc3RQcm9wZXJ0eSYgVGVzdFJlc3VsdDo6R2V0VGVzdFByb3BlcnR5KGlu
dCBpKSBjb25zdCB7CiAgIGlmIChpIDwgMCB8fCBpID49IHRlc3RfcHJvcGVydHlfY291bnQoKSkK
ICAgICBpbnRlcm5hbDo6cG9zaXg6OkFib3J0KCk7Ci0gIHJldHVybiB0ZXN0X3Byb3BlcnRpZXNf
LmF0KGkpOworICByZXR1cm4gdGVzdF9wcm9wZXJ0aWVzXy5hdChzdGF0aWNfY2FzdDxzaXplX3Q+
KGkpKTsKIH0KIAogLy8gQ2xlYXJzIHRoZSB0ZXN0IHBhcnQgcmVzdWx0cy4KQEAgLTIxMzEsMTgg
KzIyNTUsMTggQEAgc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0IGtSZXNlcnZlZFRlc3RTdWl0ZXNB
dHRyaWJ1dGVzW10gPSB7CiAvLyBUaGUgbGlzdCBvZiByZXNlcnZlZCBhdHRyaWJ1dGVzIHVzZWQg
aW4gdGhlIDx0ZXN0c3VpdGU+IGVsZW1lbnQgb2YgWE1MCiAvLyBvdXRwdXQuCiBzdGF0aWMgY29u
c3QgY2hhciogY29uc3Qga1Jlc2VydmVkVGVzdFN1aXRlQXR0cmlidXRlc1tdID0gewotICAiZGlz
YWJsZWQiLAotICAiZXJyb3JzIiwKLSAgImZhaWx1cmVzIiwKLSAgIm5hbWUiLAotICAidGVzdHMi
LAotICAidGltZSIKLX07CisgICAgImRpc2FibGVkIiwgImVycm9ycyIsICJmYWlsdXJlcyIsICJu
YW1lIiwgInRlc3RzIiwgInRpbWUiLCAidGltZXN0YW1wIn07CiAKIC8vIFRoZSBsaXN0IG9mIHJl
c2VydmVkIGF0dHJpYnV0ZXMgdXNlZCBpbiB0aGUgPHRlc3RjYXNlPiBlbGVtZW50IG9mIFhNTCBv
dXRwdXQuCiBzdGF0aWMgY29uc3QgY2hhciogY29uc3Qga1Jlc2VydmVkVGVzdENhc2VBdHRyaWJ1
dGVzW10gPSB7Ci0gICAgImNsYXNzbmFtZSIsICAibmFtZSIsICAgICAgICAic3RhdHVzIiwgInRp
bWUiLAotICAgICJ0eXBlX3BhcmFtIiwgInZhbHVlX3BhcmFtIiwgImZpbGUiLCAgICJsaW5lIn07
CisgICAgImNsYXNzbmFtZSIsICAgIm5hbWUiLCAic3RhdHVzIiwgInRpbWUiLCAgInR5cGVfcGFy
YW0iLAorICAgICJ2YWx1ZV9wYXJhbSIsICJmaWxlIiwgImxpbmUifTsKKworLy8gVXNlIGEgc2xp
Z2h0bHkgZGlmZmVyZW50IHNldCBmb3IgYWxsb3dlZCBvdXRwdXQgdG8gZW5zdXJlIGV4aXN0aW5n
IHRlc3RzIGNhbgorLy8gc3RpbGwgUmVjb3JkUHJvcGVydHkoInJlc3VsdCIpIG9yICJSZWNvcmRQ
cm9wZXJ0eSh0aW1lc3RhbXAiKQorc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0IGtSZXNlcnZlZE91
dHB1dFRlc3RDYXNlQXR0cmlidXRlc1tdID0geworICAgICJjbGFzc25hbWUiLCAgICJuYW1lIiwg
InN0YXR1cyIsICJ0aW1lIiwgICAidHlwZV9wYXJhbSIsCisgICAgInZhbHVlX3BhcmFtIiwgImZp
bGUiLCAibGluZSIsICAgInJlc3VsdCIsICJ0aW1lc3RhbXAifTsKIAogdGVtcGxhdGUgPGludCBr
U2l6ZT4KIHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiBBcnJheUFzVmVjdG9yKGNvbnN0IGNoYXIq
IGNvbnN0ICgmYXJyYXkpW2tTaXplXSkgewpAQCAtMjE2NCw2ICsyMjg4LDIyIEBAIHN0YXRpYyBz
dGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gR2V0UmVzZXJ2ZWRBdHRyaWJ1dGVzRm9yRWxlbWVudCgK
ICAgcmV0dXJuIHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPigpOwogfQogCisvLyBUT0RPKGpkZXNw
cmV6KTogTWVyZ2UgdGhlIHR3byBnZXRSZXNlcnZlZCBhdHRyaWJ1dGVzIG9uY2Ugc2tpcCBpcyBp
bXByb3ZlZAorc3RhdGljIHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiBHZXRSZXNlcnZlZE91dHB1
dEF0dHJpYnV0ZXNGb3JFbGVtZW50KAorICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiB4bWxfZWxlbWVu
dCkgeworICBpZiAoeG1sX2VsZW1lbnQgPT0gInRlc3RzdWl0ZXMiKSB7CisgICAgcmV0dXJuIEFy
cmF5QXNWZWN0b3Ioa1Jlc2VydmVkVGVzdFN1aXRlc0F0dHJpYnV0ZXMpOworICB9IGVsc2UgaWYg
KHhtbF9lbGVtZW50ID09ICJ0ZXN0c3VpdGUiKSB7CisgICAgcmV0dXJuIEFycmF5QXNWZWN0b3Io
a1Jlc2VydmVkVGVzdFN1aXRlQXR0cmlidXRlcyk7CisgIH0gZWxzZSBpZiAoeG1sX2VsZW1lbnQg
PT0gInRlc3RjYXNlIikgeworICAgIHJldHVybiBBcnJheUFzVmVjdG9yKGtSZXNlcnZlZE91dHB1
dFRlc3RDYXNlQXR0cmlidXRlcyk7CisgIH0gZWxzZSB7CisgICAgR1RFU1RfQ0hFQ0tfKGZhbHNl
KSA8PCAiVW5yZWNvZ25pemVkIHhtbF9lbGVtZW50IHByb3ZpZGVkOiAiIDw8IHhtbF9lbGVtZW50
OworICB9CisgIC8vIFRoaXMgY29kZSBpcyB1bnJlYWNoYWJsZSBidXQgc29tZSBjb21waWxlcnMg
bWF5IG5vdCByZWFsaXplcyB0aGF0LgorICByZXR1cm4gc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+
KCk7Cit9CisKIHN0YXRpYyBzdGQ6OnN0cmluZyBGb3JtYXRXb3JkTGlzdChjb25zdCBzdGQ6OnZl
Y3RvcjxzdGQ6OnN0cmluZz4mIHdvcmRzKSB7CiAgIE1lc3NhZ2Ugd29yZF9saXN0OwogICBmb3Ig
KHNpemVfdCBpID0gMDsgaSA8IHdvcmRzLnNpemUoKTsgKytpKSB7CkBAIC0yMjA3LDcgKzIzNDcs
MTcgQEAgdm9pZCBUZXN0UmVzdWx0OjpDbGVhcigpIHsKICAgZWxhcHNlZF90aW1lXyA9IDA7CiB9
CiAKLS8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIHRlc3QgZmFpbGVkLgorLy8gUmV0dXJucyB0cnVl
IG9mZiB0aGUgdGVzdCBwYXJ0IHdhcyBza2lwcGVkLgorc3RhdGljIGJvb2wgVGVzdFBhcnRTa2lw
cGVkKGNvbnN0IFRlc3RQYXJ0UmVzdWx0JiByZXN1bHQpIHsKKyAgcmV0dXJuIHJlc3VsdC5za2lw
cGVkKCk7Cit9CisKKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgdGVzdCB3YXMg
c2tpcHBlZC4KK2Jvb2wgVGVzdFJlc3VsdDo6U2tpcHBlZCgpIGNvbnN0IHsKKyAgcmV0dXJuICFG
YWlsZWQoKSAmJiBDb3VudElmKHRlc3RfcGFydF9yZXN1bHRzXywgVGVzdFBhcnRTa2lwcGVkKSA+
IDA7Cit9CisKKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgdGVzdCBmYWlsZWQu
CiBib29sIFRlc3RSZXN1bHQ6OkZhaWxlZCgpIGNvbnN0IHsKICAgZm9yIChpbnQgaSA9IDA7IGkg
PCB0b3RhbF9wYXJ0X2NvdW50KCk7ICsraSkgewogICAgIGlmIChHZXRUZXN0UGFydFJlc3VsdChp
KS5mYWlsZWQoKSkKQEAgLTIyMTYsMjIgKzIzNjYsMjIgQEAgYm9vbCBUZXN0UmVzdWx0OjpGYWls
ZWQoKSBjb25zdCB7CiAgIHJldHVybiBmYWxzZTsKIH0KIAotLy8gUmV0dXJucyB0cnVlIGlmZiB0
aGUgdGVzdCBwYXJ0IGZhdGFsbHkgZmFpbGVkLgorLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5
IGlmIHRoZSB0ZXN0IHBhcnQgZmF0YWxseSBmYWlsZWQuCiBzdGF0aWMgYm9vbCBUZXN0UGFydEZh
dGFsbHlGYWlsZWQoY29uc3QgVGVzdFBhcnRSZXN1bHQmIHJlc3VsdCkgewogICByZXR1cm4gcmVz
dWx0LmZhdGFsbHlfZmFpbGVkKCk7CiB9CiAKLS8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIHRlc3Qg
ZmF0YWxseSBmYWlsZWQuCisvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHRlc3Qg
ZmF0YWxseSBmYWlsZWQuCiBib29sIFRlc3RSZXN1bHQ6Okhhc0ZhdGFsRmFpbHVyZSgpIGNvbnN0
IHsKICAgcmV0dXJuIENvdW50SWYodGVzdF9wYXJ0X3Jlc3VsdHNfLCBUZXN0UGFydEZhdGFsbHlG
YWlsZWQpID4gMDsKIH0KIAotLy8gUmV0dXJucyB0cnVlIGlmZiB0aGUgdGVzdCBwYXJ0IG5vbi1m
YXRhbGx5IGZhaWxlZC4KKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgdGVzdCBw
YXJ0IG5vbi1mYXRhbGx5IGZhaWxlZC4KIHN0YXRpYyBib29sIFRlc3RQYXJ0Tm9uZmF0YWxseUZh
aWxlZChjb25zdCBUZXN0UGFydFJlc3VsdCYgcmVzdWx0KSB7CiAgIHJldHVybiByZXN1bHQubm9u
ZmF0YWxseV9mYWlsZWQoKTsKIH0KIAotLy8gUmV0dXJucyB0cnVlIGlmZiB0aGUgdGVzdCBoYXMg
YSBub24tZmF0YWwgZmFpbHVyZS4KKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUg
dGVzdCBoYXMgYSBub24tZmF0YWwgZmFpbHVyZS4KIGJvb2wgVGVzdFJlc3VsdDo6SGFzTm9uZmF0
YWxGYWlsdXJlKCkgY29uc3QgewogICByZXR1cm4gQ291bnRJZih0ZXN0X3BhcnRfcmVzdWx0c18s
IFRlc3RQYXJ0Tm9uZmF0YWxseUZhaWxlZCkgPiAwOwogfQpAQCAtMjI5NCwyNSArMjQ0NCwyNSBA
QCB2b2lkIFJlcG9ydEZhaWx1cmVJblVua25vd25Mb2NhdGlvbihUZXN0UGFydFJlc3VsdDo6VHlw
ZSByZXN1bHRfdHlwZSwKICAgLy8gQWRkVGVzdFBhcnRSZXN1bHQuCiAgIFVuaXRUZXN0OjpHZXRJ
bnN0YW5jZSgpLT5BZGRUZXN0UGFydFJlc3VsdCgKICAgICAgIHJlc3VsdF90eXBlLAotICAgICAg
TlVMTCwgIC8vIE5vIGluZm8gYWJvdXQgdGhlIHNvdXJjZSBmaWxlIHdoZXJlIHRoZSBleGNlcHRp
b24gb2NjdXJyZWQuCi0gICAgICAtMSwgICAgLy8gV2UgaGF2ZSBubyBpbmZvIG9uIHdoaWNoIGxp
bmUgY2F1c2VkIHRoZSBleGNlcHRpb24uCisgICAgICBudWxscHRyLCAgLy8gTm8gaW5mbyBhYm91
dCB0aGUgc291cmNlIGZpbGUgd2hlcmUgdGhlIGV4Y2VwdGlvbiBvY2N1cnJlZC4KKyAgICAgIC0x
LCAgICAgICAvLyBXZSBoYXZlIG5vIGluZm8gb24gd2hpY2ggbGluZSBjYXVzZWQgdGhlIGV4Y2Vw
dGlvbi4KICAgICAgIG1lc3NhZ2UsCi0gICAgICAiIik7ICAgLy8gTm8gc3RhY2sgdHJhY2UsIGVp
dGhlci4KKyAgICAgICIiKTsgIC8vIE5vIHN0YWNrIHRyYWNlLCBlaXRoZXIuCiB9CiAKIH0gIC8v
IG5hbWVzcGFjZSBpbnRlcm5hbAogCi0vLyBHb29nbGUgVGVzdCByZXF1aXJlcyBhbGwgdGVzdHMg
aW4gdGhlIHNhbWUgdGVzdCBjYXNlIHRvIHVzZSB0aGUgc2FtZSB0ZXN0CisvLyBHb29nbGUgVGVz
dCByZXF1aXJlcyBhbGwgdGVzdHMgaW4gdGhlIHNhbWUgdGVzdCBzdWl0ZSB0byB1c2UgdGhlIHNh
bWUgdGVzdAogLy8gZml4dHVyZSBjbGFzcy4gIFRoaXMgZnVuY3Rpb24gY2hlY2tzIGlmIHRoZSBj
dXJyZW50IHRlc3QgaGFzIHRoZQotLy8gc2FtZSBmaXh0dXJlIGNsYXNzIGFzIHRoZSBmaXJzdCB0
ZXN0IGluIHRoZSBjdXJyZW50IHRlc3QgY2FzZS4gIElmCisvLyBzYW1lIGZpeHR1cmUgY2xhc3Mg
YXMgdGhlIGZpcnN0IHRlc3QgaW4gdGhlIGN1cnJlbnQgdGVzdCBzdWl0ZS4gIElmCiAvLyB5ZXMs
IGl0IHJldHVybnMgdHJ1ZTsgb3RoZXJ3aXNlIGl0IGdlbmVyYXRlcyBhIEdvb2dsZSBUZXN0IGZh
aWx1cmUgYW5kCiAvLyByZXR1cm5zIGZhbHNlLgogYm9vbCBUZXN0OjpIYXNTYW1lRml4dHVyZUNs
YXNzKCkgewogICBpbnRlcm5hbDo6VW5pdFRlc3RJbXBsKiBjb25zdCBpbXBsID0gaW50ZXJuYWw6
OkdldFVuaXRUZXN0SW1wbCgpOwotICBjb25zdCBUZXN0Q2FzZSogY29uc3QgdGVzdF9jYXNlID0g
aW1wbC0+Y3VycmVudF90ZXN0X2Nhc2UoKTsKKyAgY29uc3QgVGVzdFN1aXRlKiBjb25zdCB0ZXN0
X3N1aXRlID0gaW1wbC0+Y3VycmVudF90ZXN0X3N1aXRlKCk7CiAKLSAgLy8gSW5mbyBhYm91dCB0
aGUgZmlyc3QgdGVzdCBpbiB0aGUgY3VycmVudCB0ZXN0IGNhc2UuCi0gIGNvbnN0IFRlc3RJbmZv
KiBjb25zdCBmaXJzdF90ZXN0X2luZm8gPSB0ZXN0X2Nhc2UtPnRlc3RfaW5mb19saXN0KClbMF07
CisgIC8vIEluZm8gYWJvdXQgdGhlIGZpcnN0IHRlc3QgaW4gdGhlIGN1cnJlbnQgdGVzdCBzdWl0
ZS4KKyAgY29uc3QgVGVzdEluZm8qIGNvbnN0IGZpcnN0X3Rlc3RfaW5mbyA9IHRlc3Rfc3VpdGUt
PnRlc3RfaW5mb19saXN0KClbMF07CiAgIGNvbnN0IGludGVybmFsOjpUeXBlSWQgZmlyc3RfZml4
dHVyZV9pZCA9IGZpcnN0X3Rlc3RfaW5mby0+Zml4dHVyZV9jbGFzc19pZF87CiAgIGNvbnN0IGNo
YXIqIGNvbnN0IGZpcnN0X3Rlc3RfbmFtZSA9IGZpcnN0X3Rlc3RfaW5mby0+bmFtZSgpOwogCkBA
IC0yMzI4LDcgKzI0NzgsNyBAQCBib29sIFRlc3Q6Okhhc1NhbWVGaXh0dXJlQ2xhc3MoKSB7CiAg
ICAgY29uc3QgYm9vbCB0aGlzX2lzX1RFU1QgPSB0aGlzX2ZpeHR1cmVfaWQgPT0gaW50ZXJuYWw6
OkdldFRlc3RUeXBlSWQoKTsKIAogICAgIGlmIChmaXJzdF9pc19URVNUIHx8IHRoaXNfaXNfVEVT
VCkgewotICAgICAgLy8gQm90aCBURVNUIGFuZCBURVNUX0YgYXBwZWFyIGluIHNhbWUgdGVzdCBj
YXNlLCB3aGljaCBpcyBpbmNvcnJlY3QuCisgICAgICAvLyBCb3RoIFRFU1QgYW5kIFRFU1RfRiBh
cHBlYXIgaW4gc2FtZSB0ZXN0IHN1aXRlLCB3aGljaCBpcyBpbmNvcnJlY3QuCiAgICAgICAvLyBU
ZWxsIHRoZSB1c2VyIGhvdyB0byBmaXggdGhpcy4KIAogICAgICAgLy8gR2V0cyB0aGUgbmFtZSBv
ZiB0aGUgVEVTVCBhbmQgdGhlIG5hbWUgb2YgdGhlIFRFU1RfRi4gIE5vdGUKQEAgLTIzNDAsOSAr
MjQ5MCw5IEBAIGJvb2wgVGVzdDo6SGFzU2FtZUZpeHR1cmVDbGFzcygpIHsKICAgICAgICAgICBm
aXJzdF9pc19URVNUID8gdGhpc190ZXN0X25hbWUgOiBmaXJzdF90ZXN0X25hbWU7CiAKICAgICAg
IEFERF9GQUlMVVJFKCkKLSAgICAgICAgICA8PCAiQWxsIHRlc3RzIGluIHRoZSBzYW1lIHRlc3Qg
Y2FzZSBtdXN0IHVzZSB0aGUgc2FtZSB0ZXN0IGZpeHR1cmVcbiIKLSAgICAgICAgICA8PCAiY2xh
c3MsIHNvIG1peGluZyBURVNUX0YgYW5kIFRFU1QgaW4gdGhlIHNhbWUgdGVzdCBjYXNlIGlzXG4i
Ci0gICAgICAgICAgPDwgImlsbGVnYWwuICBJbiB0ZXN0IGNhc2UgIiA8PCB0aGlzX3Rlc3RfaW5m
by0+dGVzdF9jYXNlX25hbWUoKQorICAgICAgICAgIDw8ICJBbGwgdGVzdHMgaW4gdGhlIHNhbWUg
dGVzdCBzdWl0ZSBtdXN0IHVzZSB0aGUgc2FtZSB0ZXN0IGZpeHR1cmVcbiIKKyAgICAgICAgICA8
PCAiY2xhc3MsIHNvIG1peGluZyBURVNUX0YgYW5kIFRFU1QgaW4gdGhlIHNhbWUgdGVzdCBzdWl0
ZSBpc1xuIgorICAgICAgICAgIDw8ICJpbGxlZ2FsLiAgSW4gdGVzdCBzdWl0ZSAiIDw8IHRoaXNf
dGVzdF9pbmZvLT50ZXN0X3N1aXRlX25hbWUoKQogICAgICAgICAgIDw8ICIsXG4iCiAgICAgICAg
ICAgPDwgInRlc3QgIiA8PCBURVNUX0ZfbmFtZSA8PCAiIGlzIGRlZmluZWQgdXNpbmcgVEVTVF9G
IGJ1dFxuIgogICAgICAgICAgIDw8ICJ0ZXN0ICIgPDwgVEVTVF9uYW1lIDw8ICIgaXMgZGVmaW5l
ZCB1c2luZyBURVNULiAgWW91IHByb2JhYmx5XG4iCkBAIC0yMzUyLDE1ICsyNTAyLDE1IEBAIGJv
b2wgVGVzdDo6SGFzU2FtZUZpeHR1cmVDbGFzcygpIHsKICAgICAgIC8vIFR3byBmaXh0dXJlIGNs
YXNzZXMgd2l0aCB0aGUgc2FtZSBuYW1lIGFwcGVhciBpbiB0d28gZGlmZmVyZW50CiAgICAgICAv
LyBuYW1lc3BhY2VzLCB3aGljaCBpcyBub3QgYWxsb3dlZC4gVGVsbCB0aGUgdXNlciBob3cgdG8g
Zml4IHRoaXMuCiAgICAgICBBRERfRkFJTFVSRSgpCi0gICAgICAgICAgPDwgIkFsbCB0ZXN0cyBp
biB0aGUgc2FtZSB0ZXN0IGNhc2UgbXVzdCB1c2UgdGhlIHNhbWUgdGVzdCBmaXh0dXJlXG4iCi0g
ICAgICAgICAgPDwgImNsYXNzLiAgSG93ZXZlciwgaW4gdGVzdCBjYXNlICIKLSAgICAgICAgICA8
PCB0aGlzX3Rlc3RfaW5mby0+dGVzdF9jYXNlX25hbWUoKSA8PCAiLFxuIgotICAgICAgICAgIDw8
ICJ5b3UgZGVmaW5lZCB0ZXN0ICIgPDwgZmlyc3RfdGVzdF9uYW1lCi0gICAgICAgICAgPDwgIiBh
bmQgdGVzdCAiIDw8IHRoaXNfdGVzdF9uYW1lIDw8ICJcbiIKKyAgICAgICAgICA8PCAiQWxsIHRl
c3RzIGluIHRoZSBzYW1lIHRlc3Qgc3VpdGUgbXVzdCB1c2UgdGhlIHNhbWUgdGVzdCBmaXh0dXJl
XG4iCisgICAgICAgICAgPDwgImNsYXNzLiAgSG93ZXZlciwgaW4gdGVzdCBzdWl0ZSAiCisgICAg
ICAgICAgPDwgdGhpc190ZXN0X2luZm8tPnRlc3Rfc3VpdGVfbmFtZSgpIDw8ICIsXG4iCisgICAg
ICAgICAgPDwgInlvdSBkZWZpbmVkIHRlc3QgIiA8PCBmaXJzdF90ZXN0X25hbWUgPDwgIiBhbmQg
dGVzdCAiCisgICAgICAgICAgPDwgdGhpc190ZXN0X25hbWUgPDwgIlxuIgogICAgICAgICAgIDw8
ICJ1c2luZyB0d28gZGlmZmVyZW50IHRlc3QgZml4dHVyZSBjbGFzc2VzLiAgVGhpcyBjYW4gaGFw
cGVuIGlmXG4iCiAgICAgICAgICAgPDwgInRoZSB0d28gY2xhc3NlcyBhcmUgZnJvbSBkaWZmZXJl
bnQgbmFtZXNwYWNlcyBvciB0cmFuc2xhdGlvblxuIgogICAgICAgICAgIDw8ICJ1bml0cyBhbmQg
aGF2ZSB0aGUgc2FtZSBuYW1lLiAgWW91IHNob3VsZCBwcm9iYWJseSByZW5hbWUgb25lXG4iCi0g
ICAgICAgICAgPDwgIm9mIHRoZSBjbGFzc2VzIHRvIHB1dCB0aGUgdGVzdHMgaW50byBkaWZmZXJl
bnQgdGVzdCBjYXNlcy4iOworICAgICAgICAgIDw8ICJvZiB0aGUgY2xhc3NlcyB0byBwdXQgdGhl
IHRlc3RzIGludG8gZGlmZmVyZW50IHRlc3Qgc3VpdGVzLiI7CiAgICAgfQogICAgIHJldHVybiBm
YWxzZTsKICAgfQpAQCAtMjM5Myw3ICsyNTQzLDcgQEAgbmFtZXNwYWNlIGludGVybmFsIHsKIHN0
YXRpYyBzdGQ6OnN0cmluZyBGb3JtYXRDeHhFeGNlcHRpb25NZXNzYWdlKGNvbnN0IGNoYXIqIGRl
c2NyaXB0aW9uLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgY2hhciogbG9jYXRpb24pIHsKICAgTWVzc2FnZSBtZXNzYWdlOwotICBpZiAoZGVzY3Jp
cHRpb24gIT0gTlVMTCkgeworICBpZiAoZGVzY3JpcHRpb24gIT0gbnVsbHB0cikgewogICAgIG1l
c3NhZ2UgPDwgIkMrKyBleGNlcHRpb24gd2l0aCBkZXNjcmlwdGlvbiBcIiIgPDwgZGVzY3JpcHRp
b24gPDwgIlwiIjsKICAgfSBlbHNlIHsKICAgICBtZXNzYWdlIDw8ICJVbmtub3duIEMrKyBleGNl
cHRpb24iOwpAQCAtMjQ5MSw3ICsyNjQxLDcgQEAgUmVzdWx0IEhhbmRsZUV4Y2VwdGlvbnNJbk1l
dGhvZElmU3VwcG9ydGVkKAogICAgIH0gY2F0Y2ggKC4uLikgeyAgLy8gTk9MSU5UCiAgICAgICBp
bnRlcm5hbDo6UmVwb3J0RmFpbHVyZUluVW5rbm93bkxvY2F0aW9uKAogICAgICAgICAgIFRlc3RQ
YXJ0UmVzdWx0OjprRmF0YWxGYWlsdXJlLAotICAgICAgICAgIEZvcm1hdEN4eEV4Y2VwdGlvbk1l
c3NhZ2UoTlVMTCwgbG9jYXRpb24pKTsKKyAgICAgICAgICBGb3JtYXRDeHhFeGNlcHRpb25NZXNz
YWdlKG51bGxwdHIsIGxvY2F0aW9uKSk7CiAgICAgfQogICAgIHJldHVybiBzdGF0aWNfY2FzdDxS
ZXN1bHQ+KDApOwogI2Vsc2UKQEAgLTI1MTEsOCArMjY2MSw5IEBAIHZvaWQgVGVzdDo6UnVuKCkg
ewogICBpbnRlcm5hbDo6VW5pdFRlc3RJbXBsKiBjb25zdCBpbXBsID0gaW50ZXJuYWw6OkdldFVu
aXRUZXN0SW1wbCgpOwogICBpbXBsLT5vc19zdGFja190cmFjZV9nZXR0ZXIoKS0+VXBvbkxlYXZp
bmdHVGVzdCgpOwogICBpbnRlcm5hbDo6SGFuZGxlRXhjZXB0aW9uc0luTWV0aG9kSWZTdXBwb3J0
ZWQodGhpcywgJlRlc3Q6OlNldFVwLCAiU2V0VXAoKSIpOwotICAvLyBXZSB3aWxsIHJ1biB0aGUg
dGVzdCBvbmx5IGlmIFNldFVwKCkgd2FzIHN1Y2Nlc3NmdWwuCi0gIGlmICghSGFzRmF0YWxGYWls
dXJlKCkpIHsKKyAgLy8gV2Ugd2lsbCBydW4gdGhlIHRlc3Qgb25seSBpZiBTZXRVcCgpIHdhcyBz
dWNjZXNzZnVsIGFuZCBkaWRuJ3QgY2FsbAorICAvLyBHVEVTVF9TS0lQKCkuCisgIGlmICghSGFz
RmF0YWxGYWlsdXJlKCkgJiYgIUlzU2tpcHBlZCgpKSB7CiAgICAgaW1wbC0+b3Nfc3RhY2tfdHJh
Y2VfZ2V0dGVyKCktPlVwb25MZWF2aW5nR1Rlc3QoKTsKICAgICBpbnRlcm5hbDo6SGFuZGxlRXhj
ZXB0aW9uc0luTWV0aG9kSWZTdXBwb3J0ZWQoCiAgICAgICAgIHRoaXMsICZUZXN0OjpUZXN0Qm9k
eSwgInRoZSB0ZXN0IGJvZHkiKTsKQEAgLTI1MjYsMzIgKzI2NzcsMzYgQEAgdm9pZCBUZXN0OjpS
dW4oKSB7CiAgICAgICB0aGlzLCAmVGVzdDo6VGVhckRvd24sICJUZWFyRG93bigpIik7CiB9CiAK
LS8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIGN1cnJlbnQgdGVzdCBoYXMgYSBmYXRhbCBmYWlsdXJl
LgorLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoZSBjdXJyZW50IHRlc3QgaGFzIGEg
ZmF0YWwgZmFpbHVyZS4KIGJvb2wgVGVzdDo6SGFzRmF0YWxGYWlsdXJlKCkgewogICByZXR1cm4g
aW50ZXJuYWw6OkdldFVuaXRUZXN0SW1wbCgpLT5jdXJyZW50X3Rlc3RfcmVzdWx0KCktPkhhc0Zh
dGFsRmFpbHVyZSgpOwogfQogCi0vLyBSZXR1cm5zIHRydWUgaWZmIHRoZSBjdXJyZW50IHRlc3Qg
aGFzIGEgbm9uLWZhdGFsIGZhaWx1cmUuCisvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYg
dGhlIGN1cnJlbnQgdGVzdCBoYXMgYSBub24tZmF0YWwgZmFpbHVyZS4KIGJvb2wgVGVzdDo6SGFz
Tm9uZmF0YWxGYWlsdXJlKCkgewogICByZXR1cm4gaW50ZXJuYWw6OkdldFVuaXRUZXN0SW1wbCgp
LT5jdXJyZW50X3Rlc3RfcmVzdWx0KCktPgogICAgICAgSGFzTm9uZmF0YWxGYWlsdXJlKCk7CiB9
CiAKKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgY3VycmVudCB0ZXN0IHdhcyBz
a2lwcGVkLgorYm9vbCBUZXN0OjpJc1NraXBwZWQoKSB7CisgIHJldHVybiBpbnRlcm5hbDo6R2V0
VW5pdFRlc3RJbXBsKCktPmN1cnJlbnRfdGVzdF9yZXN1bHQoKS0+U2tpcHBlZCgpOworfQorCiAv
LyBjbGFzcyBUZXN0SW5mbwogCiAvLyBDb25zdHJ1Y3RzIGEgVGVzdEluZm8gb2JqZWN0LiBJdCBh
c3N1bWVzIG93bmVyc2hpcCBvZiB0aGUgdGVzdCBmYWN0b3J5CiAvLyBvYmplY3QuCi1UZXN0SW5m
bzo6VGVzdEluZm8oY29uc3Qgc3RkOjpzdHJpbmcmIGFfdGVzdF9jYXNlX25hbWUsCi0gICAgICAg
ICAgICAgICAgICAgY29uc3Qgc3RkOjpzdHJpbmcmIGFfbmFtZSwKLSAgICAgICAgICAgICAgICAg
ICBjb25zdCBjaGFyKiBhX3R5cGVfcGFyYW0sCitUZXN0SW5mbzo6VGVzdEluZm8oY29uc3Qgc3Rk
OjpzdHJpbmcmIGFfdGVzdF9zdWl0ZV9uYW1lLAorICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0
ZDo6c3RyaW5nJiBhX25hbWUsIGNvbnN0IGNoYXIqIGFfdHlwZV9wYXJhbSwKICAgICAgICAgICAg
ICAgICAgICBjb25zdCBjaGFyKiBhX3ZhbHVlX3BhcmFtLAogICAgICAgICAgICAgICAgICAgIGlu
dGVybmFsOjpDb2RlTG9jYXRpb24gYV9jb2RlX2xvY2F0aW9uLAogICAgICAgICAgICAgICAgICAg
IGludGVybmFsOjpUeXBlSWQgZml4dHVyZV9jbGFzc19pZCwKICAgICAgICAgICAgICAgICAgICBp
bnRlcm5hbDo6VGVzdEZhY3RvcnlCYXNlKiBmYWN0b3J5KQotICAgIDogdGVzdF9jYXNlX25hbWVf
KGFfdGVzdF9jYXNlX25hbWUpLAorICAgIDogdGVzdF9zdWl0ZV9uYW1lXyhhX3Rlc3Rfc3VpdGVf
bmFtZSksCiAgICAgICBuYW1lXyhhX25hbWUpLAotICAgICAgdHlwZV9wYXJhbV8oYV90eXBlX3Bh
cmFtID8gbmV3IHN0ZDo6c3RyaW5nKGFfdHlwZV9wYXJhbSkgOiBOVUxMKSwKLSAgICAgIHZhbHVl
X3BhcmFtXyhhX3ZhbHVlX3BhcmFtID8gbmV3IHN0ZDo6c3RyaW5nKGFfdmFsdWVfcGFyYW0pIDog
TlVMTCksCisgICAgICB0eXBlX3BhcmFtXyhhX3R5cGVfcGFyYW0gPyBuZXcgc3RkOjpzdHJpbmco
YV90eXBlX3BhcmFtKSA6IG51bGxwdHIpLAorICAgICAgdmFsdWVfcGFyYW1fKGFfdmFsdWVfcGFy
YW0gPyBuZXcgc3RkOjpzdHJpbmcoYV92YWx1ZV9wYXJhbSkgOiBudWxscHRyKSwKICAgICAgIGxv
Y2F0aW9uXyhhX2NvZGVfbG9jYXRpb24pLAogICAgICAgZml4dHVyZV9jbGFzc19pZF8oZml4dHVy
ZV9jbGFzc19pZCksCiAgICAgICBzaG91bGRfcnVuXyhmYWxzZSksCkBAIC0yNTcwLDcgKzI3MjUs
NyBAQCBuYW1lc3BhY2UgaW50ZXJuYWwgewogLy8KIC8vIEFyZ3VtZW50czoKIC8vCi0vLyAgIHRl
c3RfY2FzZV9uYW1lOiAgIG5hbWUgb2YgdGhlIHRlc3QgY2FzZQorLy8gICB0ZXN0X3N1aXRlX25h
bWU6ICAgbmFtZSBvZiB0aGUgdGVzdCBzdWl0ZQogLy8gICBuYW1lOiAgICAgICAgICAgICBuYW1l
IG9mIHRoZSB0ZXN0CiAvLyAgIHR5cGVfcGFyYW06ICAgICAgIHRoZSBuYW1lIG9mIHRoZSB0ZXN0
J3MgdHlwZSBwYXJhbWV0ZXIsIG9yIE5VTEwgaWYKIC8vICAgICAgICAgICAgICAgICAgICAgdGhp
cyBpcyBub3QgYSB0eXBlZCBvciBhIHR5cGUtcGFyYW1ldGVyaXplZCB0ZXN0LgpAQCAtMjU3OCw0
MCArMjczMywzNSBAQCBuYW1lc3BhY2UgaW50ZXJuYWwgewogLy8gICAgICAgICAgICAgICAgICAg
ICBvciBOVUxMIGlmIHRoaXMgaXMgbm90IGEgdmFsdWUtcGFyYW1ldGVyaXplZCB0ZXN0LgogLy8g
ICBjb2RlX2xvY2F0aW9uOiAgICBjb2RlIGxvY2F0aW9uIHdoZXJlIHRoZSB0ZXN0IGlzIGRlZmlu
ZWQKIC8vICAgZml4dHVyZV9jbGFzc19pZDogSUQgb2YgdGhlIHRlc3QgZml4dHVyZSBjbGFzcwot
Ly8gICBzZXRfdXBfdGM6ICAgICAgICBwb2ludGVyIHRvIHRoZSBmdW5jdGlvbiB0aGF0IHNldHMg
dXAgdGhlIHRlc3QgY2FzZQotLy8gICB0ZWFyX2Rvd25fdGM6ICAgICBwb2ludGVyIHRvIHRoZSBm
dW5jdGlvbiB0aGF0IHRlYXJzIGRvd24gdGhlIHRlc3QgY2FzZQorLy8gICBzZXRfdXBfdGM6ICAg
ICAgICBwb2ludGVyIHRvIHRoZSBmdW5jdGlvbiB0aGF0IHNldHMgdXAgdGhlIHRlc3Qgc3VpdGUK
Ky8vICAgdGVhcl9kb3duX3RjOiAgICAgcG9pbnRlciB0byB0aGUgZnVuY3Rpb24gdGhhdCB0ZWFy
cyBkb3duIHRoZSB0ZXN0IHN1aXRlCiAvLyAgIGZhY3Rvcnk6ICAgICAgICAgIHBvaW50ZXIgdG8g
dGhlIGZhY3RvcnkgdGhhdCBjcmVhdGVzIGEgdGVzdCBvYmplY3QuCiAvLyAgICAgICAgICAgICAg
ICAgICAgIFRoZSBuZXdseSBjcmVhdGVkIFRlc3RJbmZvIGluc3RhbmNlIHdpbGwgYXNzdW1lCiAv
LyAgICAgICAgICAgICAgICAgICAgIG93bmVyc2hpcCBvZiB0aGUgZmFjdG9yeSBvYmplY3QuCiBU
ZXN0SW5mbyogTWFrZUFuZFJlZ2lzdGVyVGVzdEluZm8oCi0gICAgY29uc3QgY2hhciogdGVzdF9j
YXNlX25hbWUsCi0gICAgY29uc3QgY2hhciogbmFtZSwKLSAgICBjb25zdCBjaGFyKiB0eXBlX3Bh
cmFtLAotICAgIGNvbnN0IGNoYXIqIHZhbHVlX3BhcmFtLAotICAgIENvZGVMb2NhdGlvbiBjb2Rl
X2xvY2F0aW9uLAotICAgIFR5cGVJZCBmaXh0dXJlX2NsYXNzX2lkLAotICAgIFNldFVwVGVzdENh
c2VGdW5jIHNldF91cF90YywKLSAgICBUZWFyRG93blRlc3RDYXNlRnVuYyB0ZWFyX2Rvd25fdGMs
Ci0gICAgVGVzdEZhY3RvcnlCYXNlKiBmYWN0b3J5KSB7CisgICAgY29uc3QgY2hhciogdGVzdF9z
dWl0ZV9uYW1lLCBjb25zdCBjaGFyKiBuYW1lLCBjb25zdCBjaGFyKiB0eXBlX3BhcmFtLAorICAg
IGNvbnN0IGNoYXIqIHZhbHVlX3BhcmFtLCBDb2RlTG9jYXRpb24gY29kZV9sb2NhdGlvbiwKKyAg
ICBUeXBlSWQgZml4dHVyZV9jbGFzc19pZCwgU2V0VXBUZXN0U3VpdGVGdW5jIHNldF91cF90YywK
KyAgICBUZWFyRG93blRlc3RTdWl0ZUZ1bmMgdGVhcl9kb3duX3RjLCBUZXN0RmFjdG9yeUJhc2Uq
IGZhY3RvcnkpIHsKICAgVGVzdEluZm8qIGNvbnN0IHRlc3RfaW5mbyA9Ci0gICAgICBuZXcgVGVz
dEluZm8odGVzdF9jYXNlX25hbWUsIG5hbWUsIHR5cGVfcGFyYW0sIHZhbHVlX3BhcmFtLAorICAg
ICAgbmV3IFRlc3RJbmZvKHRlc3Rfc3VpdGVfbmFtZSwgbmFtZSwgdHlwZV9wYXJhbSwgdmFsdWVf
cGFyYW0sCiAgICAgICAgICAgICAgICAgICAgY29kZV9sb2NhdGlvbiwgZml4dHVyZV9jbGFzc19p
ZCwgZmFjdG9yeSk7CiAgIEdldFVuaXRUZXN0SW1wbCgpLT5BZGRUZXN0SW5mbyhzZXRfdXBfdGMs
IHRlYXJfZG93bl90YywgdGVzdF9pbmZvKTsKICAgcmV0dXJuIHRlc3RfaW5mbzsKIH0KIAotdm9p
ZCBSZXBvcnRJbnZhbGlkVGVzdENhc2VUeXBlKGNvbnN0IGNoYXIqIHRlc3RfY2FzZV9uYW1lLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvZGVMb2NhdGlvbiBjb2RlX2xvY2F0aW9u
KSB7Cit2b2lkIFJlcG9ydEludmFsaWRUZXN0U3VpdGVUeXBlKGNvbnN0IGNoYXIqIHRlc3Rfc3Vp
dGVfbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29kZUxvY2F0aW9uIGNv
ZGVfbG9jYXRpb24pIHsKICAgTWVzc2FnZSBlcnJvcnM7CiAgIGVycm9ycwotICAgICAgPDwgIkF0
dGVtcHRlZCByZWRlZmluaXRpb24gb2YgdGVzdCBjYXNlICIgPDwgdGVzdF9jYXNlX25hbWUgPDwg
Ii5cbiIKLSAgICAgIDw8ICJBbGwgdGVzdHMgaW4gdGhlIHNhbWUgdGVzdCBjYXNlIG11c3QgdXNl
IHRoZSBzYW1lIHRlc3QgZml4dHVyZVxuIgotICAgICAgPDwgImNsYXNzLiAgSG93ZXZlciwgaW4g
dGVzdCBjYXNlICIgPDwgdGVzdF9jYXNlX25hbWUgPDwgIiwgeW91IHRyaWVkXG4iCisgICAgICA8
PCAiQXR0ZW1wdGVkIHJlZGVmaW5pdGlvbiBvZiB0ZXN0IHN1aXRlICIgPDwgdGVzdF9zdWl0ZV9u
YW1lIDw8ICIuXG4iCisgICAgICA8PCAiQWxsIHRlc3RzIGluIHRoZSBzYW1lIHRlc3Qgc3VpdGUg
bXVzdCB1c2UgdGhlIHNhbWUgdGVzdCBmaXh0dXJlXG4iCisgICAgICA8PCAiY2xhc3MuICBIb3dl
dmVyLCBpbiB0ZXN0IHN1aXRlICIgPDwgdGVzdF9zdWl0ZV9uYW1lIDw8ICIsIHlvdSB0cmllZFxu
IgogICAgICAgPDwgInRvIGRlZmluZSBhIHRlc3QgdXNpbmcgYSBmaXh0dXJlIGNsYXNzIGRpZmZl
cmVudCBmcm9tIHRoZSBvbmVcbiIKICAgICAgIDw8ICJ1c2VkIGVhcmxpZXIuIFRoaXMgY2FuIGhh
cHBlbiBpZiB0aGUgdHdvIGZpeHR1cmUgY2xhc3NlcyBhcmVcbiIKICAgICAgIDw8ICJmcm9tIGRp
ZmZlcmVudCBuYW1lc3BhY2VzIGFuZCBoYXZlIHRoZSBzYW1lIG5hbWUuIFlvdSBzaG91bGRcbiIK
ICAgICAgIDw8ICJwcm9iYWJseSByZW5hbWUgb25lIG9mIHRoZSBjbGFzc2VzIHRvIHB1dCB0aGUg
dGVzdHMgaW50byBkaWZmZXJlbnRcbiIKLSAgICAgIDw8ICJ0ZXN0IGNhc2VzLiI7CisgICAgICA8
PCAidGVzdCBzdWl0ZXMuIjsKIAogICBHVEVTVF9MT0dfKEVSUk9SKSA8PCBGb3JtYXRGaWxlTG9j
YXRpb24oY29kZV9sb2NhdGlvbi5maWxlLmNfc3RyKCksCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb2RlX2xvY2F0aW9uLmxpbmUpCkBAIC0yNjI0LDcgKzI3NzQs
NyBAQCBuYW1lc3BhY2UgewogLy8gQSBwcmVkaWNhdGUgdGhhdCBjaGVja3MgdGhlIHRlc3QgbmFt
ZSBvZiBhIFRlc3RJbmZvIGFnYWluc3QgYSBrbm93bgogLy8gdmFsdWUuCiAvLwotLy8gVGhpcyBp
cyB1c2VkIGZvciBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgVGVzdENhc2UgY2xhc3Mgb25seS4gIFdl
IHB1dAorLy8gVGhpcyBpcyB1c2VkIGZvciBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgVGVzdFN1aXRl
IGNsYXNzIG9ubHkuICBXZSBwdXQKIC8vIGl0IGluIHRoZSBhbm9ueW1vdXMgbmFtZXNwYWNlIHRv
IHByZXZlbnQgcG9sbHV0aW5nIHRoZSBvdXRlcgogLy8gbmFtZXNwYWNlLgogLy8KQEAgLTI2Mzcs
NyArMjc4Nyw3IEBAIGNsYXNzIFRlc3ROYW1lSXMgewogICBleHBsaWNpdCBUZXN0TmFtZUlzKGNv
bnN0IGNoYXIqIG5hbWUpCiAgICAgICA6IG5hbWVfKG5hbWUpIHt9CiAKLSAgLy8gUmV0dXJucyB0
cnVlIGlmZiB0aGUgdGVzdCBuYW1lIG9mIHRlc3RfaW5mbyBtYXRjaGVzIG5hbWVfLgorICAvLyBS
ZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHRlc3QgbmFtZSBvZiB0ZXN0X2luZm8gbWF0
Y2hlcyBuYW1lXy4KICAgYm9vbCBvcGVyYXRvcigpKGNvbnN0IFRlc3RJbmZvICogdGVzdF9pbmZv
KSBjb25zdCB7CiAgICAgcmV0dXJuIHRlc3RfaW5mbyAmJiB0ZXN0X2luZm8tPm5hbWUoKSA9PSBu
YW1lXzsKICAgfQpAQCAtMjY1MSwxMSArMjgwMSwxMiBAQCBjbGFzcyBUZXN0TmFtZUlzIHsKIG5h
bWVzcGFjZSBpbnRlcm5hbCB7CiAKIC8vIFRoaXMgbWV0aG9kIGV4cGFuZHMgYWxsIHBhcmFtZXRl
cml6ZWQgdGVzdHMgcmVnaXN0ZXJlZCB3aXRoIG1hY3JvcyBURVNUX1AKLS8vIGFuZCBJTlNUQU5U
SUFURV9URVNUX0NBU0VfUCBpbnRvIHJlZ3VsYXIgdGVzdHMgYW5kIHJlZ2lzdGVycyB0aG9zZS4K
Ky8vIGFuZCBJTlNUQU5USUFURV9URVNUX1NVSVRFX1AgaW50byByZWd1bGFyIHRlc3RzIGFuZCBy
ZWdpc3RlcnMgdGhvc2UuCiAvLyBUaGlzIHdpbGwgYmUgZG9uZSBqdXN0IG9uY2UgZHVyaW5nIHRo
ZSBwcm9ncmFtIHJ1bnRpbWUuCiB2b2lkIFVuaXRUZXN0SW1wbDo6UmVnaXN0ZXJQYXJhbWV0ZXJp
emVkVGVzdHMoKSB7CiAgIGlmICghcGFyYW1ldGVyaXplZF90ZXN0c19yZWdpc3RlcmVkXykgewog
ICAgIHBhcmFtZXRlcml6ZWRfdGVzdF9yZWdpc3RyeV8uUmVnaXN0ZXJUZXN0cygpOworICAgIHR5
cGVfcGFyYW1ldGVyaXplZF90ZXN0X3JlZ2lzdHJ5Xy5DaGVja0Zvckluc3RhbnRpYXRpb25zKCk7
CiAgICAgcGFyYW1ldGVyaXplZF90ZXN0c19yZWdpc3RlcmVkXyA9IHRydWU7CiAgIH0KIH0KQEAg
LTI2ODUsMTkgKzI4MzYsMjMgQEAgdm9pZCBUZXN0SW5mbzo6UnVuKCkgewogICAgICAgZmFjdG9y
eV8sICZpbnRlcm5hbDo6VGVzdEZhY3RvcnlCYXNlOjpDcmVhdGVUZXN0LAogICAgICAgInRoZSB0
ZXN0IGZpeHR1cmUncyBjb25zdHJ1Y3RvciIpOwogCi0gIC8vIFJ1bnMgdGhlIHRlc3QgaWYgdGhl
IGNvbnN0cnVjdG9yIGRpZG4ndCBnZW5lcmF0ZSBhIGZhdGFsIGZhaWx1cmUuCisgIC8vIFJ1bnMg
dGhlIHRlc3QgaWYgdGhlIGNvbnN0cnVjdG9yIGRpZG4ndCBnZW5lcmF0ZSBhIGZhdGFsIGZhaWx1
cmUgb3IgaW52b2tlCisgIC8vIEdURVNUX1NLSVAoKS4KICAgLy8gTm90ZSB0aGF0IHRoZSBvYmpl
Y3Qgd2lsbCBub3QgYmUgbnVsbAotICBpZiAoIVRlc3Q6Okhhc0ZhdGFsRmFpbHVyZSgpKSB7Cisg
IGlmICghVGVzdDo6SGFzRmF0YWxGYWlsdXJlKCkgJiYgIVRlc3Q6OklzU2tpcHBlZCgpKSB7CiAg
ICAgLy8gVGhpcyBkb2Vzbid0IHRocm93IGFzIGFsbCB1c2VyIGNvZGUgdGhhdCBjYW4gdGhyb3cg
YXJlIHdyYXBwZWQgaW50bwogICAgIC8vIGV4Y2VwdGlvbiBoYW5kbGluZyBjb2RlLgogICAgIHRl
c3QtPlJ1bigpOwogICB9CiAKKyAgaWYgKHRlc3QgIT0gbnVsbHB0cikgewogICAgIC8vIERlbGV0
ZXMgdGhlIHRlc3Qgb2JqZWN0LgogICAgIGltcGwtPm9zX3N0YWNrX3RyYWNlX2dldHRlcigpLT5V
cG9uTGVhdmluZ0dUZXN0KCk7CiAgICAgaW50ZXJuYWw6OkhhbmRsZUV4Y2VwdGlvbnNJbk1ldGhv
ZElmU3VwcG9ydGVkKAogICAgICAgICB0ZXN0LCAmVGVzdDo6RGVsZXRlU2VsZl8sICJ0aGUgdGVz
dCBmaXh0dXJlJ3MgZGVzdHJ1Y3RvciIpOworICB9CiAKKyAgcmVzdWx0Xy5zZXRfc3RhcnRfdGlt
ZXN0YW1wKHN0YXJ0KTsKICAgcmVzdWx0Xy5zZXRfZWxhcHNlZF90aW1lKGludGVybmFsOjpHZXRU
aW1lSW5NaWxsaXMoKSAtIHN0YXJ0KTsKIAogICAvLyBOb3RpZmllcyB0aGUgdW5pdCB0ZXN0IGV2
ZW50IGxpc3RlbmVyIHRoYXQgYSB0ZXN0IGhhcyBqdXN0IGZpbmlzaGVkLgpAQCAtMjcwNSwxMzQg
KzI4NjAsMTUxIEBAIHZvaWQgVGVzdEluZm86OlJ1bigpIHsKIAogICAvLyBUZWxscyBVbml0VGVz
dCB0byBzdG9wIGFzc29jaWF0aW5nIGFzc2VydGlvbiByZXN1bHRzIHRvIHRoaXMKICAgLy8gdGVz
dC4KLSAgaW1wbC0+c2V0X2N1cnJlbnRfdGVzdF9pbmZvKE5VTEwpOworICBpbXBsLT5zZXRfY3Vy
cmVudF90ZXN0X2luZm8obnVsbHB0cik7CiB9CiAKLS8vIGNsYXNzIFRlc3RDYXNlCisvLyBjbGFz
cyBUZXN0U3VpdGUKIAotLy8gR2V0cyB0aGUgbnVtYmVyIG9mIHN1Y2Nlc3NmdWwgdGVzdHMgaW4g
dGhpcyB0ZXN0IGNhc2UuCi1pbnQgVGVzdENhc2U6OnN1Y2Nlc3NmdWxfdGVzdF9jb3VudCgpIGNv
bnN0IHsKKy8vIEdldHMgdGhlIG51bWJlciBvZiBzdWNjZXNzZnVsIHRlc3RzIGluIHRoaXMgdGVz
dCBzdWl0ZS4KK2ludCBUZXN0U3VpdGU6OnN1Y2Nlc3NmdWxfdGVzdF9jb3VudCgpIGNvbnN0IHsK
ICAgcmV0dXJuIENvdW50SWYodGVzdF9pbmZvX2xpc3RfLCBUZXN0UGFzc2VkKTsKIH0KIAotLy8g
R2V0cyB0aGUgbnVtYmVyIG9mIGZhaWxlZCB0ZXN0cyBpbiB0aGlzIHRlc3QgY2FzZS4KLWludCBU
ZXN0Q2FzZTo6ZmFpbGVkX3Rlc3RfY291bnQoKSBjb25zdCB7CisvLyBHZXRzIHRoZSBudW1iZXIg
b2Ygc3VjY2Vzc2Z1bCB0ZXN0cyBpbiB0aGlzIHRlc3Qgc3VpdGUuCitpbnQgVGVzdFN1aXRlOjpz
a2lwcGVkX3Rlc3RfY291bnQoKSBjb25zdCB7CisgIHJldHVybiBDb3VudElmKHRlc3RfaW5mb19s
aXN0XywgVGVzdFNraXBwZWQpOworfQorCisvLyBHZXRzIHRoZSBudW1iZXIgb2YgZmFpbGVkIHRl
c3RzIGluIHRoaXMgdGVzdCBzdWl0ZS4KK2ludCBUZXN0U3VpdGU6OmZhaWxlZF90ZXN0X2NvdW50
KCkgY29uc3QgewogICByZXR1cm4gQ291bnRJZih0ZXN0X2luZm9fbGlzdF8sIFRlc3RGYWlsZWQp
OwogfQogCiAvLyBHZXRzIHRoZSBudW1iZXIgb2YgZGlzYWJsZWQgdGVzdHMgdGhhdCB3aWxsIGJl
IHJlcG9ydGVkIGluIHRoZSBYTUwgcmVwb3J0LgotaW50IFRlc3RDYXNlOjpyZXBvcnRhYmxlX2Rp
c2FibGVkX3Rlc3RfY291bnQoKSBjb25zdCB7CitpbnQgVGVzdFN1aXRlOjpyZXBvcnRhYmxlX2Rp
c2FibGVkX3Rlc3RfY291bnQoKSBjb25zdCB7CiAgIHJldHVybiBDb3VudElmKHRlc3RfaW5mb19s
aXN0XywgVGVzdFJlcG9ydGFibGVEaXNhYmxlZCk7CiB9CiAKLS8vIEdldHMgdGhlIG51bWJlciBv
ZiBkaXNhYmxlZCB0ZXN0cyBpbiB0aGlzIHRlc3QgY2FzZS4KLWludCBUZXN0Q2FzZTo6ZGlzYWJs
ZWRfdGVzdF9jb3VudCgpIGNvbnN0IHsKKy8vIEdldHMgdGhlIG51bWJlciBvZiBkaXNhYmxlZCB0
ZXN0cyBpbiB0aGlzIHRlc3Qgc3VpdGUuCitpbnQgVGVzdFN1aXRlOjpkaXNhYmxlZF90ZXN0X2Nv
dW50KCkgY29uc3QgewogICByZXR1cm4gQ291bnRJZih0ZXN0X2luZm9fbGlzdF8sIFRlc3REaXNh
YmxlZCk7CiB9CiAKIC8vIEdldHMgdGhlIG51bWJlciBvZiB0ZXN0cyB0byBiZSBwcmludGVkIGlu
IHRoZSBYTUwgcmVwb3J0LgotaW50IFRlc3RDYXNlOjpyZXBvcnRhYmxlX3Rlc3RfY291bnQoKSBj
b25zdCB7CitpbnQgVGVzdFN1aXRlOjpyZXBvcnRhYmxlX3Rlc3RfY291bnQoKSBjb25zdCB7CiAg
IHJldHVybiBDb3VudElmKHRlc3RfaW5mb19saXN0XywgVGVzdFJlcG9ydGFibGUpOwogfQogCi0v
LyBHZXQgdGhlIG51bWJlciBvZiB0ZXN0cyBpbiB0aGlzIHRlc3QgY2FzZSB0aGF0IHNob3VsZCBy
dW4uCi1pbnQgVGVzdENhc2U6OnRlc3RfdG9fcnVuX2NvdW50KCkgY29uc3QgeworLy8gR2V0IHRo
ZSBudW1iZXIgb2YgdGVzdHMgaW4gdGhpcyB0ZXN0IHN1aXRlIHRoYXQgc2hvdWxkIHJ1bi4KK2lu
dCBUZXN0U3VpdGU6OnRlc3RfdG9fcnVuX2NvdW50KCkgY29uc3QgewogICByZXR1cm4gQ291bnRJ
Zih0ZXN0X2luZm9fbGlzdF8sIFNob3VsZFJ1blRlc3QpOwogfQogCiAvLyBHZXRzIHRoZSBudW1i
ZXIgb2YgYWxsIHRlc3RzLgotaW50IFRlc3RDYXNlOjp0b3RhbF90ZXN0X2NvdW50KCkgY29uc3Qg
eworaW50IFRlc3RTdWl0ZTo6dG90YWxfdGVzdF9jb3VudCgpIGNvbnN0IHsKICAgcmV0dXJuIHN0
YXRpY19jYXN0PGludD4odGVzdF9pbmZvX2xpc3RfLnNpemUoKSk7CiB9CiAKLS8vIENyZWF0ZXMg
YSBUZXN0Q2FzZSB3aXRoIHRoZSBnaXZlbiBuYW1lLgorLy8gQ3JlYXRlcyBhIFRlc3RTdWl0ZSB3
aXRoIHRoZSBnaXZlbiBuYW1lLgogLy8KIC8vIEFyZ3VtZW50czoKIC8vCi0vLyAgIG5hbWU6ICAg
ICAgICAgbmFtZSBvZiB0aGUgdGVzdCBjYXNlCi0vLyAgIGFfdHlwZV9wYXJhbTogdGhlIG5hbWUg
b2YgdGhlIHRlc3QgY2FzZSdzIHR5cGUgcGFyYW1ldGVyLCBvciBOVUxMIGlmCi0vLyAgICAgICAg
ICAgICAgICAgdGhpcyBpcyBub3QgYSB0eXBlZCBvciBhIHR5cGUtcGFyYW1ldGVyaXplZCB0ZXN0
IGNhc2UuCi0vLyAgIHNldF91cF90YzogICAgcG9pbnRlciB0byB0aGUgZnVuY3Rpb24gdGhhdCBz
ZXRzIHVwIHRoZSB0ZXN0IGNhc2UKLS8vICAgdGVhcl9kb3duX3RjOiBwb2ludGVyIHRvIHRoZSBm
dW5jdGlvbiB0aGF0IHRlYXJzIGRvd24gdGhlIHRlc3QgY2FzZQotVGVzdENhc2U6OlRlc3RDYXNl
KGNvbnN0IGNoYXIqIGFfbmFtZSwgY29uc3QgY2hhciogYV90eXBlX3BhcmFtLAotICAgICAgICAg
ICAgICAgICAgIFRlc3Q6OlNldFVwVGVzdENhc2VGdW5jIHNldF91cF90YywKLSAgICAgICAgICAg
ICAgICAgICBUZXN0OjpUZWFyRG93blRlc3RDYXNlRnVuYyB0ZWFyX2Rvd25fdGMpCisvLyAgIG5h
bWU6ICAgICAgICAgbmFtZSBvZiB0aGUgdGVzdCBzdWl0ZQorLy8gICBhX3R5cGVfcGFyYW06IHRo
ZSBuYW1lIG9mIHRoZSB0ZXN0IHN1aXRlJ3MgdHlwZSBwYXJhbWV0ZXIsIG9yIE5VTEwgaWYKKy8v
ICAgICAgICAgICAgICAgICB0aGlzIGlzIG5vdCBhIHR5cGVkIG9yIGEgdHlwZS1wYXJhbWV0ZXJp
emVkIHRlc3Qgc3VpdGUuCisvLyAgIHNldF91cF90YzogICAgcG9pbnRlciB0byB0aGUgZnVuY3Rp
b24gdGhhdCBzZXRzIHVwIHRoZSB0ZXN0IHN1aXRlCisvLyAgIHRlYXJfZG93bl90YzogcG9pbnRl
ciB0byB0aGUgZnVuY3Rpb24gdGhhdCB0ZWFycyBkb3duIHRoZSB0ZXN0IHN1aXRlCitUZXN0U3Vp
dGU6OlRlc3RTdWl0ZShjb25zdCBjaGFyKiBhX25hbWUsIGNvbnN0IGNoYXIqIGFfdHlwZV9wYXJh
bSwKKyAgICAgICAgICAgICAgICAgICAgIGludGVybmFsOjpTZXRVcFRlc3RTdWl0ZUZ1bmMgc2V0
X3VwX3RjLAorICAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWw6OlRlYXJEb3duVGVzdFN1aXRl
RnVuYyB0ZWFyX2Rvd25fdGMpCiAgICAgOiBuYW1lXyhhX25hbWUpLAotICAgICAgdHlwZV9wYXJh
bV8oYV90eXBlX3BhcmFtID8gbmV3IHN0ZDo6c3RyaW5nKGFfdHlwZV9wYXJhbSkgOiBOVUxMKSwK
KyAgICAgIHR5cGVfcGFyYW1fKGFfdHlwZV9wYXJhbSA/IG5ldyBzdGQ6OnN0cmluZyhhX3R5cGVf
cGFyYW0pIDogbnVsbHB0ciksCiAgICAgICBzZXRfdXBfdGNfKHNldF91cF90YyksCiAgICAgICB0
ZWFyX2Rvd25fdGNfKHRlYXJfZG93bl90YyksCiAgICAgICBzaG91bGRfcnVuXyhmYWxzZSksCi0g
ICAgICBlbGFwc2VkX3RpbWVfKDApIHsKLX0KKyAgICAgIHN0YXJ0X3RpbWVzdGFtcF8oMCksCisg
ICAgICBlbGFwc2VkX3RpbWVfKDApIHt9CiAKLS8vIERlc3RydWN0b3Igb2YgVGVzdENhc2UuCi1U
ZXN0Q2FzZTo6flRlc3RDYXNlKCkgeworLy8gRGVzdHJ1Y3RvciBvZiBUZXN0U3VpdGUuCitUZXN0
U3VpdGU6On5UZXN0U3VpdGUoKSB7CiAgIC8vIERlbGV0ZXMgZXZlcnkgVGVzdCBpbiB0aGUgY29s
bGVjdGlvbi4KICAgRm9yRWFjaCh0ZXN0X2luZm9fbGlzdF8sIGludGVybmFsOjpEZWxldGU8VGVz
dEluZm8+KTsKIH0KIAogLy8gUmV0dXJucyB0aGUgaS10aCB0ZXN0IGFtb25nIGFsbCB0aGUgdGVz
dHMuIGkgY2FuIHJhbmdlIGZyb20gMCB0bwogLy8gdG90YWxfdGVzdF9jb3VudCgpIC0gMS4gSWYg
aSBpcyBub3QgaW4gdGhhdCByYW5nZSwgcmV0dXJucyBOVUxMLgotY29uc3QgVGVzdEluZm8qIFRl
c3RDYXNlOjpHZXRUZXN0SW5mbyhpbnQgaSkgY29uc3QgeworY29uc3QgVGVzdEluZm8qIFRlc3RT
dWl0ZTo6R2V0VGVzdEluZm8oaW50IGkpIGNvbnN0IHsKICAgY29uc3QgaW50IGluZGV4ID0gR2V0
RWxlbWVudE9yKHRlc3RfaW5kaWNlc18sIGksIC0xKTsKLSAgcmV0dXJuIGluZGV4IDwgMCA/IE5V
TEwgOiB0ZXN0X2luZm9fbGlzdF9baW5kZXhdOworICByZXR1cm4gaW5kZXggPCAwID8gbnVsbHB0
ciA6IHRlc3RfaW5mb19saXN0X1tzdGF0aWNfY2FzdDxzaXplX3Q+KGluZGV4KV07CiB9CiAKIC8v
IFJldHVybnMgdGhlIGktdGggdGVzdCBhbW9uZyBhbGwgdGhlIHRlc3RzLiBpIGNhbiByYW5nZSBm
cm9tIDAgdG8KIC8vIHRvdGFsX3Rlc3RfY291bnQoKSAtIDEuIElmIGkgaXMgbm90IGluIHRoYXQg
cmFuZ2UsIHJldHVybnMgTlVMTC4KLVRlc3RJbmZvKiBUZXN0Q2FzZTo6R2V0TXV0YWJsZVRlc3RJ
bmZvKGludCBpKSB7CitUZXN0SW5mbyogVGVzdFN1aXRlOjpHZXRNdXRhYmxlVGVzdEluZm8oaW50
IGkpIHsKICAgY29uc3QgaW50IGluZGV4ID0gR2V0RWxlbWVudE9yKHRlc3RfaW5kaWNlc18sIGks
IC0xKTsKLSAgcmV0dXJuIGluZGV4IDwgMCA/IE5VTEwgOiB0ZXN0X2luZm9fbGlzdF9baW5kZXhd
OworICByZXR1cm4gaW5kZXggPCAwID8gbnVsbHB0ciA6IHRlc3RfaW5mb19saXN0X1tzdGF0aWNf
Y2FzdDxzaXplX3Q+KGluZGV4KV07CiB9CiAKLS8vIEFkZHMgYSB0ZXN0IHRvIHRoaXMgdGVzdCBj
YXNlLiAgV2lsbCBkZWxldGUgdGhlIHRlc3QgdXBvbgotLy8gZGVzdHJ1Y3Rpb24gb2YgdGhlIFRl
c3RDYXNlIG9iamVjdC4KLXZvaWQgVGVzdENhc2U6OkFkZFRlc3RJbmZvKFRlc3RJbmZvICogdGVz
dF9pbmZvKSB7CisvLyBBZGRzIGEgdGVzdCB0byB0aGlzIHRlc3Qgc3VpdGUuICBXaWxsIGRlbGV0
ZSB0aGUgdGVzdCB1cG9uCisvLyBkZXN0cnVjdGlvbiBvZiB0aGUgVGVzdFN1aXRlIG9iamVjdC4K
K3ZvaWQgVGVzdFN1aXRlOjpBZGRUZXN0SW5mbyhUZXN0SW5mbyogdGVzdF9pbmZvKSB7CiAgIHRl
c3RfaW5mb19saXN0Xy5wdXNoX2JhY2sodGVzdF9pbmZvKTsKICAgdGVzdF9pbmRpY2VzXy5wdXNo
X2JhY2soc3RhdGljX2Nhc3Q8aW50Pih0ZXN0X2luZGljZXNfLnNpemUoKSkpOwogfQogCi0vLyBS
dW5zIGV2ZXJ5IHRlc3QgaW4gdGhpcyBUZXN0Q2FzZS4KLXZvaWQgVGVzdENhc2U6OlJ1bigpIHsK
Ky8vIFJ1bnMgZXZlcnkgdGVzdCBpbiB0aGlzIFRlc3RTdWl0ZS4KK3ZvaWQgVGVzdFN1aXRlOjpS
dW4oKSB7CiAgIGlmICghc2hvdWxkX3J1bl8pIHJldHVybjsKIAogICBpbnRlcm5hbDo6VW5pdFRl
c3RJbXBsKiBjb25zdCBpbXBsID0gaW50ZXJuYWw6OkdldFVuaXRUZXN0SW1wbCgpOwotICBpbXBs
LT5zZXRfY3VycmVudF90ZXN0X2Nhc2UodGhpcyk7CisgIGltcGwtPnNldF9jdXJyZW50X3Rlc3Rf
c3VpdGUodGhpcyk7CiAKICAgVGVzdEV2ZW50TGlzdGVuZXIqIHJlcGVhdGVyID0gVW5pdFRlc3Q6
OkdldEluc3RhbmNlKCktPmxpc3RlbmVycygpLnJlcGVhdGVyKCk7CiAKKyAgLy8gQ2FsbCBib3Ro
IGxlZ2FjeSBhbmQgdGhlIG5ldyBBUEkKKyAgcmVwZWF0ZXItPk9uVGVzdFN1aXRlU3RhcnQoKnRo
aXMpOworLy8gIExlZ2FjeSBBUEkgaXMgZGVwcmVjYXRlZCBidXQgc3RpbGwgYXZhaWxhYmxlCisj
aWZuZGVmIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJCiAgIHJlcGVhdGVyLT5PblRl
c3RDYXNlU3RhcnQoKnRoaXMpOworI2VuZGlmICAvLyAgR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNU
X0NBU0VBUEkKKwogICBpbXBsLT5vc19zdGFja190cmFjZV9nZXR0ZXIoKS0+VXBvbkxlYXZpbmdH
VGVzdCgpOwogICBpbnRlcm5hbDo6SGFuZGxlRXhjZXB0aW9uc0luTWV0aG9kSWZTdXBwb3J0ZWQo
Ci0gICAgICB0aGlzLCAmVGVzdENhc2U6OlJ1blNldFVwVGVzdENhc2UsICJTZXRVcFRlc3RDYXNl
KCkiKTsKKyAgICAgIHRoaXMsICZUZXN0U3VpdGU6OlJ1blNldFVwVGVzdFN1aXRlLCAiU2V0VXBU
ZXN0U3VpdGUoKSIpOwogCi0gIGNvbnN0IGludGVybmFsOjpUaW1lSW5NaWxsaXMgc3RhcnQgPSBp
bnRlcm5hbDo6R2V0VGltZUluTWlsbGlzKCk7CisgIHN0YXJ0X3RpbWVzdGFtcF8gPSBpbnRlcm5h
bDo6R2V0VGltZUluTWlsbGlzKCk7CiAgIGZvciAoaW50IGkgPSAwOyBpIDwgdG90YWxfdGVzdF9j
b3VudCgpOyBpKyspIHsKICAgICBHZXRNdXRhYmxlVGVzdEluZm8oaSktPlJ1bigpOwogICB9Ci0g
IGVsYXBzZWRfdGltZV8gPSBpbnRlcm5hbDo6R2V0VGltZUluTWlsbGlzKCkgLSBzdGFydDsKKyAg
ZWxhcHNlZF90aW1lXyA9IGludGVybmFsOjpHZXRUaW1lSW5NaWxsaXMoKSAtIHN0YXJ0X3RpbWVz
dGFtcF87CiAKICAgaW1wbC0+b3Nfc3RhY2tfdHJhY2VfZ2V0dGVyKCktPlVwb25MZWF2aW5nR1Rl
c3QoKTsKICAgaW50ZXJuYWw6OkhhbmRsZUV4Y2VwdGlvbnNJbk1ldGhvZElmU3VwcG9ydGVkKAot
ICAgICAgdGhpcywgJlRlc3RDYXNlOjpSdW5UZWFyRG93blRlc3RDYXNlLCAiVGVhckRvd25UZXN0
Q2FzZSgpIik7CisgICAgICB0aGlzLCAmVGVzdFN1aXRlOjpSdW5UZWFyRG93blRlc3RTdWl0ZSwg
IlRlYXJEb3duVGVzdFN1aXRlKCkiKTsKIAorICAvLyBDYWxsIGJvdGggbGVnYWN5IGFuZCB0aGUg
bmV3IEFQSQorICByZXBlYXRlci0+T25UZXN0U3VpdGVFbmQoKnRoaXMpOworLy8gIExlZ2FjeSBB
UEkgaXMgZGVwcmVjYXRlZCBidXQgc3RpbGwgYXZhaWxhYmxlCisjaWZuZGVmIEdURVNUX1JFTU9W
RV9MRUdBQ1lfVEVTVF9DQVNFQVBJCiAgIHJlcGVhdGVyLT5PblRlc3RDYXNlRW5kKCp0aGlzKTsK
LSAgaW1wbC0+c2V0X2N1cnJlbnRfdGVzdF9jYXNlKE5VTEwpOworI2VuZGlmICAvLyAgR1RFU1Rf
UkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUEkKKworICBpbXBsLT5zZXRfY3VycmVudF90ZXN0X3N1
aXRlKG51bGxwdHIpOwogfQogCi0vLyBDbGVhcnMgdGhlIHJlc3VsdHMgb2YgYWxsIHRlc3RzIGlu
IHRoaXMgdGVzdCBjYXNlLgotdm9pZCBUZXN0Q2FzZTo6Q2xlYXJSZXN1bHQoKSB7CisvLyBDbGVh
cnMgdGhlIHJlc3VsdHMgb2YgYWxsIHRlc3RzIGluIHRoaXMgdGVzdCBzdWl0ZS4KK3ZvaWQgVGVz
dFN1aXRlOjpDbGVhclJlc3VsdCgpIHsKICAgYWRfaG9jX3Rlc3RfcmVzdWx0Xy5DbGVhcigpOwog
ICBGb3JFYWNoKHRlc3RfaW5mb19saXN0XywgVGVzdEluZm86OkNsZWFyVGVzdFJlc3VsdCk7CiB9
CiAKLS8vIFNodWZmbGVzIHRoZSB0ZXN0cyBpbiB0aGlzIHRlc3QgY2FzZS4KLXZvaWQgVGVzdENh
c2U6OlNodWZmbGVUZXN0cyhpbnRlcm5hbDo6UmFuZG9tKiByYW5kb20pIHsKKy8vIFNodWZmbGVz
IHRoZSB0ZXN0cyBpbiB0aGlzIHRlc3Qgc3VpdGUuCit2b2lkIFRlc3RTdWl0ZTo6U2h1ZmZsZVRl
c3RzKGludGVybmFsOjpSYW5kb20qIHJhbmRvbSkgewogICBTaHVmZmxlKHJhbmRvbSwgJnRlc3Rf
aW5kaWNlc18pOwogfQogCiAvLyBSZXN0b3JlcyB0aGUgdGVzdCBvcmRlciB0byBiZWZvcmUgdGhl
IGZpcnN0IHNodWZmbGUuCi12b2lkIFRlc3RDYXNlOjpVbnNodWZmbGVUZXN0cygpIHsKK3ZvaWQg
VGVzdFN1aXRlOjpVbnNodWZmbGVUZXN0cygpIHsKICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCB0
ZXN0X2luZGljZXNfLnNpemUoKTsgaSsrKSB7CiAgICAgdGVzdF9pbmRpY2VzX1tpXSA9IHN0YXRp
Y19jYXN0PGludD4oaSk7CiAgIH0KQEAgLTI4NTUsOSArMzAyNyw5IEBAIHN0YXRpYyBzdGQ6OnN0
cmluZyBGb3JtYXRUZXN0Q291bnQoaW50IHRlc3RfY291bnQpIHsKICAgcmV0dXJuIEZvcm1hdENv
dW50YWJsZU5vdW4odGVzdF9jb3VudCwgInRlc3QiLCAidGVzdHMiKTsKIH0KIAotLy8gRm9ybWF0
cyB0aGUgY291bnQgb2YgdGVzdCBjYXNlcy4KLXN0YXRpYyBzdGQ6OnN0cmluZyBGb3JtYXRUZXN0
Q2FzZUNvdW50KGludCB0ZXN0X2Nhc2VfY291bnQpIHsKLSAgcmV0dXJuIEZvcm1hdENvdW50YWJs
ZU5vdW4odGVzdF9jYXNlX2NvdW50LCAidGVzdCBjYXNlIiwgInRlc3QgY2FzZXMiKTsKKy8vIEZv
cm1hdHMgdGhlIGNvdW50IG9mIHRlc3Qgc3VpdGVzLgorc3RhdGljIHN0ZDo6c3RyaW5nIEZvcm1h
dFRlc3RTdWl0ZUNvdW50KGludCB0ZXN0X3N1aXRlX2NvdW50KSB7CisgIHJldHVybiBGb3JtYXRD
b3VudGFibGVOb3VuKHRlc3Rfc3VpdGVfY291bnQsICJ0ZXN0IHN1aXRlIiwgInRlc3Qgc3VpdGVz
Iik7CiB9CiAKIC8vIENvbnZlcnRzIGEgVGVzdFBhcnRSZXN1bHQ6OlR5cGUgZW51bSB0byBodW1h
bi1mcmllbmRseSBzdHJpbmcKQEAgLTI4NjYsNiArMzAzOCw4IEBAIHN0YXRpYyBzdGQ6OnN0cmlu
ZyBGb3JtYXRUZXN0Q2FzZUNvdW50KGludCB0ZXN0X2Nhc2VfY291bnQpIHsKIC8vIGJldHdlZW4g
dGhlIHR3byB3aGVuIHZpZXdpbmcgdGhlIHRlc3QgcmVzdWx0Lgogc3RhdGljIGNvbnN0IGNoYXIg
KiBUZXN0UGFydFJlc3VsdFR5cGVUb1N0cmluZyhUZXN0UGFydFJlc3VsdDo6VHlwZSB0eXBlKSB7
CiAgIHN3aXRjaCAodHlwZSkgeworICAgIGNhc2UgVGVzdFBhcnRSZXN1bHQ6OmtTa2lwOgorICAg
ICAgcmV0dXJuICJTa2lwcGVkIjsKICAgICBjYXNlIFRlc3RQYXJ0UmVzdWx0OjprU3VjY2VzczoK
ICAgICAgIHJldHVybiAiU3VjY2VzcyI7CiAKQEAgLTI5MTMsMTQgKzMwODcsNiBAQCBzdGF0aWMg
dm9pZCBQcmludFRlc3RQYXJ0UmVzdWx0KGNvbnN0IFRlc3RQYXJ0UmVzdWx0JiB0ZXN0X3BhcnRf
cmVzdWx0KSB7CiB9CiAKIC8vIGNsYXNzIFByZXR0eVVuaXRUZXN0UmVzdWx0UHJpbnRlcgotCi1l
bnVtIEdUZXN0Q29sb3IgewotICBDT0xPUl9ERUZBVUxULAotICBDT0xPUl9SRUQsCi0gIENPTE9S
X0dSRUVOLAotICBDT0xPUl9ZRUxMT1cKLX07Ci0KICNpZiBHVEVTVF9PU19XSU5ET1dTICYmICFH
VEVTVF9PU19XSU5ET1dTX01PQklMRSAmJiBcCiAgICAgIUdURVNUX09TX1dJTkRPV1NfUEhPTkUg
JiYgIUdURVNUX09TX1dJTkRPV1NfUlQgJiYgIUdURVNUX09TX1dJTkRPV1NfTUlOR1cKIApAQCAt
Mjk3NCwxMyArMzE0MCwxNCBAQCBzdGF0aWMgY29uc3QgY2hhciogR2V0QW5zaUNvbG9yQ29kZShH
VGVzdENvbG9yIGNvbG9yKSB7CiAgICAgY2FzZSBDT0xPUl9SRUQ6ICAgICByZXR1cm4gIjEiOwog
ICAgIGNhc2UgQ09MT1JfR1JFRU46ICAgcmV0dXJuICIyIjsKICAgICBjYXNlIENPTE9SX1lFTExP
VzogIHJldHVybiAiMyI7Ci0gICAgZGVmYXVsdDogICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAg
fTsKKyAgICBkZWZhdWx0OgorICAgICAgcmV0dXJuIG51bGxwdHI7CisgIH0KIH0KIAogI2VuZGlm
ICAvLyBHVEVTVF9PU19XSU5ET1dTICYmICFHVEVTVF9PU19XSU5ET1dTX01PQklMRQogCi0vLyBS
ZXR1cm5zIHRydWUgaWZmIEdvb2dsZSBUZXN0IHNob3VsZCB1c2UgY29sb3JzIGluIHRoZSBvdXRw
dXQuCisvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgR29vZ2xlIFRlc3Qgc2hvdWxkIHVz
ZSBjb2xvcnMgaW4gdGhlIG91dHB1dC4KIGJvb2wgU2hvdWxkVXNlQ29sb3IoYm9vbCBzdGRvdXRf
aXNfdHR5KSB7CiAgIGNvbnN0IGNoYXIqIGNvbnN0IGd0ZXN0X2NvbG9yID0gR1RFU1RfRkxBRyhj
b2xvcikuY19zdHIoKTsKIApAQCAtMzAyMSwxOSArMzE4OCwxOCBAQCBib29sIFNob3VsZFVzZUNv
bG9yKGJvb2wgc3Rkb3V0X2lzX3R0eSkgewogLy8gY2Fubm90IHNpbXBseSBlbWl0IHNwZWNpYWwg
Y2hhcmFjdGVycyBhbmQgaGF2ZSB0aGUgdGVybWluYWwgY2hhbmdlIGNvbG9ycy4KIC8vIFRoaXMg
cm91dGluZSBtdXN0IGFjdHVhbGx5IGVtaXQgdGhlIGNoYXJhY3RlcnMgcmF0aGVyIHRoYW4gcmV0
dXJuIGEgc3RyaW5nCiAvLyB0aGF0IHdvdWxkIGJlIGNvbG9yZWQgd2hlbiBwcmludGVkLCBhcyBj
YW4gYmUgZG9uZSBvbiBMaW51eC4KLXN0YXRpYyB2b2lkIENvbG9yZWRQcmludGYoR1Rlc3RDb2xv
ciBjb2xvciwgY29uc3QgY2hhciogZm10LCAuLi4pIHsKK3ZvaWQgQ29sb3JlZFByaW50ZihHVGVz
dENvbG9yIGNvbG9yLCBjb25zdCBjaGFyKiBmbXQsIC4uLikgewogICB2YV9saXN0IGFyZ3M7CiAg
IHZhX3N0YXJ0KGFyZ3MsIGZtdCk7CiAKLSNpZiBHVEVTVF9PU19XSU5ET1dTX01PQklMRSB8fCBH
VEVTVF9PU19TWU1CSUFOIHx8IEdURVNUX09TX1pPUyB8fCBcCi0gICAgR1RFU1RfT1NfSU9TIHx8
IEdURVNUX09TX1dJTkRPV1NfUEhPTkUgfHwgR1RFU1RfT1NfV0lORE9XU19SVAorI2lmIEdURVNU
X09TX1dJTkRPV1NfTU9CSUxFIHx8IEdURVNUX09TX1pPUyB8fCBHVEVTVF9PU19JT1MgfHwgXAor
ICAgIEdURVNUX09TX1dJTkRPV1NfUEhPTkUgfHwgR1RFU1RfT1NfV0lORE9XU19SVCB8fCBkZWZp
bmVkKEVTUF9QTEFURk9STSkKICAgY29uc3QgYm9vbCB1c2VfY29sb3IgPSBBbHdheXNGYWxzZSgp
OwogI2Vsc2UKICAgc3RhdGljIGNvbnN0IGJvb2wgaW5fY29sb3JfbW9kZSA9CiAgICAgICBTaG91
bGRVc2VDb2xvcihwb3NpeDo6SXNBVFRZKHBvc2l4OjpGaWxlTm8oc3Rkb3V0KSkgIT0gMCk7CiAg
IGNvbnN0IGJvb2wgdXNlX2NvbG9yID0gaW5fY29sb3JfbW9kZSAmJiAoY29sb3IgIT0gQ09MT1Jf
REVGQVVMVCk7Ci0jZW5kaWYgIC8vIEdURVNUX09TX1dJTkRPV1NfTU9CSUxFIHx8IEdURVNUX09T
X1NZTUJJQU4gfHwgR1RFU1RfT1NfWk9TCi0gIC8vIFRoZSAnIT0gMCcgY29tcGFyaXNvbiBpcyBu
ZWNlc3NhcnkgdG8gc2F0aXNmeSBNU1ZDIDcuMS4KKyNlbmRpZiAgLy8gR1RFU1RfT1NfV0lORE9X
U19NT0JJTEUgfHwgR1RFU1RfT1NfWk9TCiAKICAgaWYgKCF1c2VfY29sb3IpIHsKICAgICB2cHJp
bnRmKGZtdCwgYXJncyk7CkBAIC0zMDc5LDE0ICszMjQ1LDEzIEBAIHN0YXRpYyB2b2lkIFByaW50
RnVsbFRlc3RDb21tZW50SWZQcmVzZW50KGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2luZm8pIHsKICAg
Y29uc3QgY2hhciogY29uc3QgdHlwZV9wYXJhbSA9IHRlc3RfaW5mby50eXBlX3BhcmFtKCk7CiAg
IGNvbnN0IGNoYXIqIGNvbnN0IHZhbHVlX3BhcmFtID0gdGVzdF9pbmZvLnZhbHVlX3BhcmFtKCk7
CiAKLSAgaWYgKHR5cGVfcGFyYW0gIT0gTlVMTCB8fCB2YWx1ZV9wYXJhbSAhPSBOVUxMKSB7Cisg
IGlmICh0eXBlX3BhcmFtICE9IG51bGxwdHIgfHwgdmFsdWVfcGFyYW0gIT0gbnVsbHB0cikgewog
ICAgIHByaW50ZigiLCB3aGVyZSAiKTsKLSAgICBpZiAodHlwZV9wYXJhbSAhPSBOVUxMKSB7Cisg
ICAgaWYgKHR5cGVfcGFyYW0gIT0gbnVsbHB0cikgewogICAgICAgcHJpbnRmKCIlcyA9ICVzIiwg
a1R5cGVQYXJhbUxhYmVsLCB0eXBlX3BhcmFtKTsKLSAgICAgIGlmICh2YWx1ZV9wYXJhbSAhPSBO
VUxMKQotICAgICAgICBwcmludGYoIiBhbmQgIik7CisgICAgICBpZiAodmFsdWVfcGFyYW0gIT0g
bnVsbHB0cikgcHJpbnRmKCIgYW5kICIpOwogICAgIH0KLSAgICBpZiAodmFsdWVfcGFyYW0gIT0g
TlVMTCkgeworICAgIGlmICh2YWx1ZV9wYXJhbSAhPSBudWxscHRyKSB7CiAgICAgICBwcmludGYo
IiVzID0gJXMiLCBrVmFsdWVQYXJhbUxhYmVsLCB2YWx1ZV9wYXJhbSk7CiAgICAgfQogICB9CkBA
IC0zMDk4LDI3ICszMjYzLDQwIEBAIHN0YXRpYyB2b2lkIFByaW50RnVsbFRlc3RDb21tZW50SWZQ
cmVzZW50KGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2luZm8pIHsKIGNsYXNzIFByZXR0eVVuaXRUZXN0
UmVzdWx0UHJpbnRlciA6IHB1YmxpYyBUZXN0RXZlbnRMaXN0ZW5lciB7CiAgcHVibGljOgogICBQ
cmV0dHlVbml0VGVzdFJlc3VsdFByaW50ZXIoKSB7fQotICBzdGF0aWMgdm9pZCBQcmludFRlc3RO
YW1lKGNvbnN0IGNoYXIgKiB0ZXN0X2Nhc2UsIGNvbnN0IGNoYXIgKiB0ZXN0KSB7Ci0gICAgcHJp
bnRmKCIlcy4lcyIsIHRlc3RfY2FzZSwgdGVzdCk7CisgIHN0YXRpYyB2b2lkIFByaW50VGVzdE5h
bWUoY29uc3QgY2hhciogdGVzdF9zdWl0ZSwgY29uc3QgY2hhciogdGVzdCkgeworICAgIHByaW50
ZigiJXMuJXMiLCB0ZXN0X3N1aXRlLCB0ZXN0KTsKICAgfQogCiAgIC8vIFRoZSBmb2xsb3dpbmcg
bWV0aG9kcyBvdmVycmlkZSB3aGF0J3MgaW4gdGhlIFRlc3RFdmVudExpc3RlbmVyIGNsYXNzLgot
ICB2aXJ0dWFsIHZvaWQgT25UZXN0UHJvZ3JhbVN0YXJ0KGNvbnN0IFVuaXRUZXN0JiAvKnVuaXRf
dGVzdCovKSB7fQotICB2aXJ0dWFsIHZvaWQgT25UZXN0SXRlcmF0aW9uU3RhcnQoY29uc3QgVW5p
dFRlc3QmIHVuaXRfdGVzdCwgaW50IGl0ZXJhdGlvbik7Ci0gIHZpcnR1YWwgdm9pZCBPbkVudmly
b25tZW50c1NldFVwU3RhcnQoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCk7Ci0gIHZpcnR1YWwg
dm9pZCBPbkVudmlyb25tZW50c1NldFVwRW5kKGNvbnN0IFVuaXRUZXN0JiAvKnVuaXRfdGVzdCov
KSB7fQotICB2aXJ0dWFsIHZvaWQgT25UZXN0Q2FzZVN0YXJ0KGNvbnN0IFRlc3RDYXNlJiB0ZXN0
X2Nhc2UpOwotICB2aXJ0dWFsIHZvaWQgT25UZXN0U3RhcnQoY29uc3QgVGVzdEluZm8mIHRlc3Rf
aW5mbyk7Ci0gIHZpcnR1YWwgdm9pZCBPblRlc3RQYXJ0UmVzdWx0KGNvbnN0IFRlc3RQYXJ0UmVz
dWx0JiByZXN1bHQpOwotICB2aXJ0dWFsIHZvaWQgT25UZXN0RW5kKGNvbnN0IFRlc3RJbmZvJiB0
ZXN0X2luZm8pOwotICB2aXJ0dWFsIHZvaWQgT25UZXN0Q2FzZUVuZChjb25zdCBUZXN0Q2FzZSYg
dGVzdF9jYXNlKTsKLSAgdmlydHVhbCB2b2lkIE9uRW52aXJvbm1lbnRzVGVhckRvd25TdGFydChj
b25zdCBVbml0VGVzdCYgdW5pdF90ZXN0KTsKLSAgdmlydHVhbCB2b2lkIE9uRW52aXJvbm1lbnRz
VGVhckRvd25FbmQoY29uc3QgVW5pdFRlc3QmIC8qdW5pdF90ZXN0Ki8pIHt9Ci0gIHZpcnR1YWwg
dm9pZCBPblRlc3RJdGVyYXRpb25FbmQoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCwgaW50IGl0
ZXJhdGlvbik7Ci0gIHZpcnR1YWwgdm9pZCBPblRlc3RQcm9ncmFtRW5kKGNvbnN0IFVuaXRUZXN0
JiAvKnVuaXRfdGVzdCovKSB7fQorICB2b2lkIE9uVGVzdFByb2dyYW1TdGFydChjb25zdCBVbml0
VGVzdCYgLyp1bml0X3Rlc3QqLykgb3ZlcnJpZGUge30KKyAgdm9pZCBPblRlc3RJdGVyYXRpb25T
dGFydChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0LCBpbnQgaXRlcmF0aW9uKSBvdmVycmlkZTsK
KyAgdm9pZCBPbkVudmlyb25tZW50c1NldFVwU3RhcnQoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVz
dCkgb3ZlcnJpZGU7CisgIHZvaWQgT25FbnZpcm9ubWVudHNTZXRVcEVuZChjb25zdCBVbml0VGVz
dCYgLyp1bml0X3Rlc3QqLykgb3ZlcnJpZGUge30KKyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xFR0FD
WV9URVNUX0NBU0VBUElfCisgIHZvaWQgT25UZXN0Q2FzZVN0YXJ0KGNvbnN0IFRlc3RDYXNlJiB0
ZXN0X2Nhc2UpIG92ZXJyaWRlOworI2Vsc2UKKyAgdm9pZCBPblRlc3RTdWl0ZVN0YXJ0KGNvbnN0
IFRlc3RTdWl0ZSYgdGVzdF9zdWl0ZSkgb3ZlcnJpZGU7CisjZW5kaWYgIC8vIE9uVGVzdENhc2VT
dGFydAorCisgIHZvaWQgT25UZXN0U3RhcnQoY29uc3QgVGVzdEluZm8mIHRlc3RfaW5mbykgb3Zl
cnJpZGU7CisKKyAgdm9pZCBPblRlc3RQYXJ0UmVzdWx0KGNvbnN0IFRlc3RQYXJ0UmVzdWx0JiBy
ZXN1bHQpIG92ZXJyaWRlOworICB2b2lkIE9uVGVzdEVuZChjb25zdCBUZXN0SW5mbyYgdGVzdF9p
bmZvKSBvdmVycmlkZTsKKyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUElf
CisgIHZvaWQgT25UZXN0Q2FzZUVuZChjb25zdCBUZXN0Q2FzZSYgdGVzdF9jYXNlKSBvdmVycmlk
ZTsKKyNlbHNlCisgIHZvaWQgT25UZXN0U3VpdGVFbmQoY29uc3QgVGVzdFN1aXRlJiB0ZXN0X3N1
aXRlKSBvdmVycmlkZTsKKyNlbmRpZiAgLy8gR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VB
UElfCisKKyAgdm9pZCBPbkVudmlyb25tZW50c1RlYXJEb3duU3RhcnQoY29uc3QgVW5pdFRlc3Qm
IHVuaXRfdGVzdCkgb3ZlcnJpZGU7CisgIHZvaWQgT25FbnZpcm9ubWVudHNUZWFyRG93bkVuZChj
b25zdCBVbml0VGVzdCYgLyp1bml0X3Rlc3QqLykgb3ZlcnJpZGUge30KKyAgdm9pZCBPblRlc3RJ
dGVyYXRpb25FbmQoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCwgaW50IGl0ZXJhdGlvbikgb3Zl
cnJpZGU7CisgIHZvaWQgT25UZXN0UHJvZ3JhbUVuZChjb25zdCBVbml0VGVzdCYgLyp1bml0X3Rl
c3QqLykgb3ZlcnJpZGUge30KIAogIHByaXZhdGU6CiAgIHN0YXRpYyB2b2lkIFByaW50RmFpbGVk
VGVzdHMoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCk7CisgIHN0YXRpYyB2b2lkIFByaW50RmFp
bGVkVGVzdFN1aXRlcyhjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0KTsKKyAgc3RhdGljIHZvaWQg
UHJpbnRTa2lwcGVkVGVzdHMoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCk7CiB9OwogCiAgIC8v
IEZpcmVkIGJlZm9yZSBlYWNoIGl0ZXJhdGlvbiBvZiB0ZXN0cyBzdGFydHMuCkBAIC0zMTM3LDcg
KzMzMTUsNyBAQCB2b2lkIFByZXR0eVVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6T25UZXN0SXRlcmF0
aW9uU3RhcnQoCiAgIH0KIAogICBpZiAoaW50ZXJuYWw6OlNob3VsZFNoYXJkKGtUZXN0VG90YWxT
aGFyZHMsIGtUZXN0U2hhcmRJbmRleCwgZmFsc2UpKSB7Ci0gICAgY29uc3QgSW50MzIgc2hhcmRf
aW5kZXggPSBJbnQzMkZyb21FbnZPckRpZShrVGVzdFNoYXJkSW5kZXgsIC0xKTsKKyAgICBjb25z
dCBpbnQzMl90IHNoYXJkX2luZGV4ID0gSW50MzJGcm9tRW52T3JEaWUoa1Rlc3RTaGFyZEluZGV4
LCAtMSk7CiAgICAgQ29sb3JlZFByaW50ZihDT0xPUl9ZRUxMT1csCiAgICAgICAgICAgICAgICAg
ICAiTm90ZTogVGhpcyBpcyB0ZXN0IHNoYXJkICVkIG9mICVzLlxuIiwKICAgICAgICAgICAgICAg
ICAgIHN0YXRpY19jYXN0PGludD4oc2hhcmRfaW5kZXgpICsgMSwKQEAgLTMxNTMsNyArMzMzMSw3
IEBAIHZvaWQgUHJldHR5VW5pdFRlc3RSZXN1bHRQcmludGVyOjpPblRlc3RJdGVyYXRpb25TdGFy
dCgKICAgQ29sb3JlZFByaW50ZihDT0xPUl9HUkVFTiwgICJbPT09PT09PT09PV0gIik7CiAgIHBy
aW50ZigiUnVubmluZyAlcyBmcm9tICVzLlxuIiwKICAgICAgICAgIEZvcm1hdFRlc3RDb3VudCh1
bml0X3Rlc3QudGVzdF90b19ydW5fY291bnQoKSkuY19zdHIoKSwKLSAgICAgICAgIEZvcm1hdFRl
c3RDYXNlQ291bnQodW5pdF90ZXN0LnRlc3RfY2FzZV90b19ydW5fY291bnQoKSkuY19zdHIoKSk7
CisgICAgICAgICBGb3JtYXRUZXN0U3VpdGVDb3VudCh1bml0X3Rlc3QudGVzdF9zdWl0ZV90b19y
dW5fY291bnQoKSkuY19zdHIoKSk7CiAgIGZmbHVzaChzdGRvdXQpOwogfQogCkBAIC0zMTY0LDIy
ICszMzQyLDM4IEBAIHZvaWQgUHJldHR5VW5pdFRlc3RSZXN1bHRQcmludGVyOjpPbkVudmlyb25t
ZW50c1NldFVwU3RhcnQoCiAgIGZmbHVzaChzdGRvdXQpOwogfQogCisjaWZuZGVmIEdURVNUX1JF
TU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwogdm9pZCBQcmV0dHlVbml0VGVzdFJlc3VsdFByaW50
ZXI6Ok9uVGVzdENhc2VTdGFydChjb25zdCBUZXN0Q2FzZSYgdGVzdF9jYXNlKSB7CiAgIGNvbnN0
IHN0ZDo6c3RyaW5nIGNvdW50cyA9CiAgICAgICBGb3JtYXRDb3VudGFibGVOb3VuKHRlc3RfY2Fz
ZS50ZXN0X3RvX3J1bl9jb3VudCgpLCAidGVzdCIsICJ0ZXN0cyIpOwogICBDb2xvcmVkUHJpbnRm
KENPTE9SX0dSRUVOLCAiWy0tLS0tLS0tLS1dICIpOwogICBwcmludGYoIiVzIGZyb20gJXMiLCBj
b3VudHMuY19zdHIoKSwgdGVzdF9jYXNlLm5hbWUoKSk7Ci0gIGlmICh0ZXN0X2Nhc2UudHlwZV9w
YXJhbSgpID09IE5VTEwpIHsKKyAgaWYgKHRlc3RfY2FzZS50eXBlX3BhcmFtKCkgPT0gbnVsbHB0
cikgewogICAgIHByaW50ZigiXG4iKTsKICAgfSBlbHNlIHsKICAgICBwcmludGYoIiwgd2hlcmUg
JXMgPSAlc1xuIiwga1R5cGVQYXJhbUxhYmVsLCB0ZXN0X2Nhc2UudHlwZV9wYXJhbSgpKTsKICAg
fQogICBmZmx1c2goc3Rkb3V0KTsKIH0KKyNlbHNlCit2b2lkIFByZXR0eVVuaXRUZXN0UmVzdWx0
UHJpbnRlcjo6T25UZXN0U3VpdGVTdGFydCgKKyAgICBjb25zdCBUZXN0U3VpdGUmIHRlc3Rfc3Vp
dGUpIHsKKyAgY29uc3Qgc3RkOjpzdHJpbmcgY291bnRzID0KKyAgICAgIEZvcm1hdENvdW50YWJs
ZU5vdW4odGVzdF9zdWl0ZS50ZXN0X3RvX3J1bl9jb3VudCgpLCAidGVzdCIsICJ0ZXN0cyIpOwor
ICBDb2xvcmVkUHJpbnRmKENPTE9SX0dSRUVOLCAiWy0tLS0tLS0tLS1dICIpOworICBwcmludGYo
IiVzIGZyb20gJXMiLCBjb3VudHMuY19zdHIoKSwgdGVzdF9zdWl0ZS5uYW1lKCkpOworICBpZiAo
dGVzdF9zdWl0ZS50eXBlX3BhcmFtKCkgPT0gbnVsbHB0cikgeworICAgIHByaW50ZigiXG4iKTsK
KyAgfSBlbHNlIHsKKyAgICBwcmludGYoIiwgd2hlcmUgJXMgPSAlc1xuIiwga1R5cGVQYXJhbUxh
YmVsLCB0ZXN0X3N1aXRlLnR5cGVfcGFyYW0oKSk7CisgIH0KKyAgZmZsdXNoKHN0ZG91dCk7Cit9
CisjZW5kaWYgIC8vIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwogCiB2b2lkIFBy
ZXR0eVVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6T25UZXN0U3RhcnQoY29uc3QgVGVzdEluZm8mIHRl
c3RfaW5mbykgewogICBDb2xvcmVkUHJpbnRmKENPTE9SX0dSRUVOLCAgIlsgUlVOICAgICAgXSAi
KTsKLSAgUHJpbnRUZXN0TmFtZSh0ZXN0X2luZm8udGVzdF9jYXNlX25hbWUoKSwgdGVzdF9pbmZv
Lm5hbWUoKSk7CisgIFByaW50VGVzdE5hbWUodGVzdF9pbmZvLnRlc3Rfc3VpdGVfbmFtZSgpLCB0
ZXN0X2luZm8ubmFtZSgpKTsKICAgcHJpbnRmKCJcbiIpOwogICBmZmx1c2goc3Rkb3V0KTsKIH0K
QEAgLTMxODcsMjIgKzMzODEsMjcgQEAgdm9pZCBQcmV0dHlVbml0VGVzdFJlc3VsdFByaW50ZXI6
Ok9uVGVzdFN0YXJ0KGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2luZm8pIHsKIC8vIENhbGxlZCBhZnRl
ciBhbiBhc3NlcnRpb24gZmFpbHVyZS4KIHZvaWQgUHJldHR5VW5pdFRlc3RSZXN1bHRQcmludGVy
OjpPblRlc3RQYXJ0UmVzdWx0KAogICAgIGNvbnN0IFRlc3RQYXJ0UmVzdWx0JiByZXN1bHQpIHsK
LSAgLy8gSWYgdGhlIHRlc3QgcGFydCBzdWNjZWVkZWQsIHdlIGRvbid0IG5lZWQgdG8gZG8gYW55
dGhpbmcuCi0gIGlmIChyZXN1bHQudHlwZSgpID09IFRlc3RQYXJ0UmVzdWx0OjprU3VjY2VzcykK
LSAgICByZXR1cm47Ci0KLSAgLy8gUHJpbnQgZmFpbHVyZSBtZXNzYWdlIGZyb20gdGhlIGFzc2Vy
dGlvbiAoZS5nLiBleHBlY3RlZCB0aGlzIGFuZCBnb3QgdGhhdCkuCi0gIFByaW50VGVzdFBhcnRS
ZXN1bHQocmVzdWx0KTsKLSAgZmZsdXNoKHN0ZG91dCk7CisgIHN3aXRjaCAocmVzdWx0LnR5cGUo
KSkgeworICAgIC8vIElmIHRoZSB0ZXN0IHBhcnQgc3VjY2VlZGVkLCB3ZSBkb24ndCBuZWVkIHRv
IGRvIGFueXRoaW5nLgorICAgIGNhc2UgVGVzdFBhcnRSZXN1bHQ6OmtTdWNjZXNzOgorICAgICAg
cmV0dXJuOworICAgIGRlZmF1bHQ6CisgICAgICAvLyBQcmludCBmYWlsdXJlIG1lc3NhZ2UgZnJv
bSB0aGUgYXNzZXJ0aW9uCisgICAgICAvLyAoZS5nLiBleHBlY3RlZCB0aGlzIGFuZCBnb3QgdGhh
dCkuCisgICAgICBQcmludFRlc3RQYXJ0UmVzdWx0KHJlc3VsdCk7CisgICAgICBmZmx1c2goc3Rk
b3V0KTsKKyAgfQogfQogCiB2b2lkIFByZXR0eVVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6T25UZXN0
RW5kKGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2luZm8pIHsKICAgaWYgKHRlc3RfaW5mby5yZXN1bHQo
KS0+UGFzc2VkKCkpIHsKICAgICBDb2xvcmVkUHJpbnRmKENPTE9SX0dSRUVOLCAiWyAgICAgICBP
SyBdICIpOworICB9IGVsc2UgaWYgKHRlc3RfaW5mby5yZXN1bHQoKS0+U2tpcHBlZCgpKSB7Cisg
ICAgQ29sb3JlZFByaW50ZihDT0xPUl9HUkVFTiwgIlsgIFNLSVBQRUQgXSAiKTsKICAgfSBlbHNl
IHsKICAgICBDb2xvcmVkUHJpbnRmKENPTE9SX1JFRCwgIlsgIEZBSUxFRCAgXSAiKTsKICAgfQot
ICBQcmludFRlc3ROYW1lKHRlc3RfaW5mby50ZXN0X2Nhc2VfbmFtZSgpLCB0ZXN0X2luZm8ubmFt
ZSgpKTsKKyAgUHJpbnRUZXN0TmFtZSh0ZXN0X2luZm8udGVzdF9zdWl0ZV9uYW1lKCksIHRlc3Rf
aW5mby5uYW1lKCkpOwogICBpZiAodGVzdF9pbmZvLnJlc3VsdCgpLT5GYWlsZWQoKSkKICAgICBQ
cmludEZ1bGxUZXN0Q29tbWVudElmUHJlc2VudCh0ZXN0X2luZm8pOwogCkBAIC0zMjE1LDE3ICsz
NDE0LDI5IEBAIHZvaWQgUHJldHR5VW5pdFRlc3RSZXN1bHRQcmludGVyOjpPblRlc3RFbmQoY29u
c3QgVGVzdEluZm8mIHRlc3RfaW5mbykgewogICBmZmx1c2goc3Rkb3V0KTsKIH0KIAorI2lmbmRl
ZiBHVEVTVF9SRU1PVkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KIHZvaWQgUHJldHR5VW5pdFRlc3RS
ZXN1bHRQcmludGVyOjpPblRlc3RDYXNlRW5kKGNvbnN0IFRlc3RDYXNlJiB0ZXN0X2Nhc2UpIHsK
ICAgaWYgKCFHVEVTVF9GTEFHKHByaW50X3RpbWUpKSByZXR1cm47CiAKICAgY29uc3Qgc3RkOjpz
dHJpbmcgY291bnRzID0KICAgICAgIEZvcm1hdENvdW50YWJsZU5vdW4odGVzdF9jYXNlLnRlc3Rf
dG9fcnVuX2NvdW50KCksICJ0ZXN0IiwgInRlc3RzIik7CiAgIENvbG9yZWRQcmludGYoQ09MT1Jf
R1JFRU4sICJbLS0tLS0tLS0tLV0gIik7Ci0gIHByaW50ZigiJXMgZnJvbSAlcyAoJXMgbXMgdG90
YWwpXG5cbiIsCi0gICAgICAgICBjb3VudHMuY19zdHIoKSwgdGVzdF9jYXNlLm5hbWUoKSwKKyAg
cHJpbnRmKCIlcyBmcm9tICVzICglcyBtcyB0b3RhbClcblxuIiwgY291bnRzLmNfc3RyKCksIHRl
c3RfY2FzZS5uYW1lKCksCiAgICAgICAgICBpbnRlcm5hbDo6U3RyZWFtYWJsZVRvU3RyaW5nKHRl
c3RfY2FzZS5lbGFwc2VkX3RpbWUoKSkuY19zdHIoKSk7CiAgIGZmbHVzaChzdGRvdXQpOwogfQor
I2Vsc2UKK3ZvaWQgUHJldHR5VW5pdFRlc3RSZXN1bHRQcmludGVyOjpPblRlc3RTdWl0ZUVuZChj
b25zdCBUZXN0U3VpdGUmIHRlc3Rfc3VpdGUpIHsKKyAgaWYgKCFHVEVTVF9GTEFHKHByaW50X3Rp
bWUpKSByZXR1cm47CisKKyAgY29uc3Qgc3RkOjpzdHJpbmcgY291bnRzID0KKyAgICAgIEZvcm1h
dENvdW50YWJsZU5vdW4odGVzdF9zdWl0ZS50ZXN0X3RvX3J1bl9jb3VudCgpLCAidGVzdCIsICJ0
ZXN0cyIpOworICBDb2xvcmVkUHJpbnRmKENPTE9SX0dSRUVOLCAiWy0tLS0tLS0tLS1dICIpOwor
ICBwcmludGYoIiVzIGZyb20gJXMgKCVzIG1zIHRvdGFsKVxuXG4iLCBjb3VudHMuY19zdHIoKSwg
dGVzdF9zdWl0ZS5uYW1lKCksCisgICAgICAgICBpbnRlcm5hbDo6U3RyZWFtYWJsZVRvU3RyaW5n
KHRlc3Rfc3VpdGUuZWxhcHNlZF90aW1lKCkpLmNfc3RyKCkpOworICBmZmx1c2goc3Rkb3V0KTsK
K30KKyNlbmRpZiAgLy8gR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUElfCiAKIHZvaWQg
UHJldHR5VW5pdFRlc3RSZXN1bHRQcmludGVyOjpPbkVudmlyb25tZW50c1RlYXJEb3duU3RhcnQo
CiAgICAgY29uc3QgVW5pdFRlc3QmIC8qdW5pdF90ZXN0Ki8pIHsKQEAgLTMyMzcsMjYgKzM0NDgs
NzMgQEAgdm9pZCBQcmV0dHlVbml0VGVzdFJlc3VsdFByaW50ZXI6Ok9uRW52aXJvbm1lbnRzVGVh
ckRvd25TdGFydCgKIC8vIEludGVybmFsIGhlbHBlciBmb3IgcHJpbnRpbmcgdGhlIGxpc3Qgb2Yg
ZmFpbGVkIHRlc3RzLgogdm9pZCBQcmV0dHlVbml0VGVzdFJlc3VsdFByaW50ZXI6OlByaW50RmFp
bGVkVGVzdHMoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCkgewogICBjb25zdCBpbnQgZmFpbGVk
X3Rlc3RfY291bnQgPSB1bml0X3Rlc3QuZmFpbGVkX3Rlc3RfY291bnQoKTsKLSAgaWYgKGZhaWxl
ZF90ZXN0X2NvdW50ID09IDApIHsKLSAgICByZXR1cm47Ci0gIH0KKyAgQ29sb3JlZFByaW50ZihD
T0xPUl9SRUQsICAiWyAgRkFJTEVEICBdICIpOworICBwcmludGYoIiVzLCBsaXN0ZWQgYmVsb3c6
XG4iLCBGb3JtYXRUZXN0Q291bnQoZmFpbGVkX3Rlc3RfY291bnQpLmNfc3RyKCkpOwogCi0gIGZv
ciAoaW50IGkgPSAwOyBpIDwgdW5pdF90ZXN0LnRvdGFsX3Rlc3RfY2FzZV9jb3VudCgpOyArK2kp
IHsKLSAgICBjb25zdCBUZXN0Q2FzZSYgdGVzdF9jYXNlID0gKnVuaXRfdGVzdC5HZXRUZXN0Q2Fz
ZShpKTsKLSAgICBpZiAoIXRlc3RfY2FzZS5zaG91bGRfcnVuKCkgfHwgKHRlc3RfY2FzZS5mYWls
ZWRfdGVzdF9jb3VudCgpID09IDApKSB7CisgIGZvciAoaW50IGkgPSAwOyBpIDwgdW5pdF90ZXN0
LnRvdGFsX3Rlc3Rfc3VpdGVfY291bnQoKTsgKytpKSB7CisgICAgY29uc3QgVGVzdFN1aXRlJiB0
ZXN0X3N1aXRlID0gKnVuaXRfdGVzdC5HZXRUZXN0U3VpdGUoaSk7CisgICAgaWYgKCF0ZXN0X3N1
aXRlLnNob3VsZF9ydW4oKSB8fCAodGVzdF9zdWl0ZS5mYWlsZWRfdGVzdF9jb3VudCgpID09IDAp
KSB7CiAgICAgICBjb250aW51ZTsKICAgICB9Ci0gICAgZm9yIChpbnQgaiA9IDA7IGogPCB0ZXN0
X2Nhc2UudG90YWxfdGVzdF9jb3VudCgpOyArK2opIHsKLSAgICAgIGNvbnN0IFRlc3RJbmZvJiB0
ZXN0X2luZm8gPSAqdGVzdF9jYXNlLkdldFRlc3RJbmZvKGopOwotICAgICAgaWYgKCF0ZXN0X2lu
Zm8uc2hvdWxkX3J1bigpIHx8IHRlc3RfaW5mby5yZXN1bHQoKS0+UGFzc2VkKCkpIHsKKyAgICBm
b3IgKGludCBqID0gMDsgaiA8IHRlc3Rfc3VpdGUudG90YWxfdGVzdF9jb3VudCgpOyArK2opIHsK
KyAgICAgIGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2luZm8gPSAqdGVzdF9zdWl0ZS5HZXRUZXN0SW5m
byhqKTsKKyAgICAgIGlmICghdGVzdF9pbmZvLnNob3VsZF9ydW4oKSB8fCAhdGVzdF9pbmZvLnJl
c3VsdCgpLT5GYWlsZWQoKSkgewogICAgICAgICBjb250aW51ZTsKICAgICAgIH0KICAgICAgIENv
bG9yZWRQcmludGYoQ09MT1JfUkVELCAiWyAgRkFJTEVEICBdICIpOwotICAgICAgcHJpbnRmKCIl
cy4lcyIsIHRlc3RfY2FzZS5uYW1lKCksIHRlc3RfaW5mby5uYW1lKCkpOworICAgICAgcHJpbnRm
KCIlcy4lcyIsIHRlc3Rfc3VpdGUubmFtZSgpLCB0ZXN0X2luZm8ubmFtZSgpKTsKICAgICAgIFBy
aW50RnVsbFRlc3RDb21tZW50SWZQcmVzZW50KHRlc3RfaW5mbyk7CiAgICAgICBwcmludGYoIlxu
Iik7CiAgICAgfQogICB9CisgIHByaW50ZigiXG4lMmQgRkFJTEVEICVzXG4iLCBmYWlsZWRfdGVz
dF9jb3VudCwKKyAgICAgICAgIGZhaWxlZF90ZXN0X2NvdW50ID09IDEgPyAiVEVTVCIgOiAiVEVT
VFMiKTsKK30KKworLy8gSW50ZXJuYWwgaGVscGVyIGZvciBwcmludGluZyB0aGUgbGlzdCBvZiB0
ZXN0IHN1aXRlIGZhaWx1cmVzIG5vdCBjb3ZlcmVkIGJ5CisvLyBQcmludEZhaWxlZFRlc3RzLgor
dm9pZCBQcmV0dHlVbml0VGVzdFJlc3VsdFByaW50ZXI6OlByaW50RmFpbGVkVGVzdFN1aXRlcygK
KyAgICBjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0KSB7CisgIGludCBzdWl0ZV9mYWlsdXJlX2Nv
dW50ID0gMDsKKyAgZm9yIChpbnQgaSA9IDA7IGkgPCB1bml0X3Rlc3QudG90YWxfdGVzdF9zdWl0
ZV9jb3VudCgpOyArK2kpIHsKKyAgICBjb25zdCBUZXN0U3VpdGUmIHRlc3Rfc3VpdGUgPSAqdW5p
dF90ZXN0LkdldFRlc3RTdWl0ZShpKTsKKyAgICBpZiAoIXRlc3Rfc3VpdGUuc2hvdWxkX3J1bigp
KSB7CisgICAgICBjb250aW51ZTsKKyAgICB9CisgICAgaWYgKHRlc3Rfc3VpdGUuYWRfaG9jX3Rl
c3RfcmVzdWx0KCkuRmFpbGVkKCkpIHsKKyAgICAgIENvbG9yZWRQcmludGYoQ09MT1JfUkVELCAi
WyAgRkFJTEVEICBdICIpOworICAgICAgcHJpbnRmKCIlczogU2V0VXBUZXN0U3VpdGUgb3IgVGVh
ckRvd25UZXN0U3VpdGVcbiIsIHRlc3Rfc3VpdGUubmFtZSgpKTsKKyAgICAgICsrc3VpdGVfZmFp
bHVyZV9jb3VudDsKKyAgICB9CisgIH0KKyAgaWYgKHN1aXRlX2ZhaWx1cmVfY291bnQgPiAwKSB7
CisgICAgcHJpbnRmKCJcbiUyZCBGQUlMRUQgVEVTVCAlc1xuIiwgc3VpdGVfZmFpbHVyZV9jb3Vu
dCwKKyAgICAgICAgICAgc3VpdGVfZmFpbHVyZV9jb3VudCA9PSAxID8gIlNVSVRFIiA6ICJTVUlU
RVMiKTsKKyAgfQorfQorCisvLyBJbnRlcm5hbCBoZWxwZXIgZm9yIHByaW50aW5nIHRoZSBsaXN0
IG9mIHNraXBwZWQgdGVzdHMuCit2b2lkIFByZXR0eVVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6UHJp
bnRTa2lwcGVkVGVzdHMoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCkgeworICBjb25zdCBpbnQg
c2tpcHBlZF90ZXN0X2NvdW50ID0gdW5pdF90ZXN0LnNraXBwZWRfdGVzdF9jb3VudCgpOworICBp
ZiAoc2tpcHBlZF90ZXN0X2NvdW50ID09IDApIHsKKyAgICByZXR1cm47CisgIH0KKworICBmb3Ig
KGludCBpID0gMDsgaSA8IHVuaXRfdGVzdC50b3RhbF90ZXN0X3N1aXRlX2NvdW50KCk7ICsraSkg
eworICAgIGNvbnN0IFRlc3RTdWl0ZSYgdGVzdF9zdWl0ZSA9ICp1bml0X3Rlc3QuR2V0VGVzdFN1
aXRlKGkpOworICAgIGlmICghdGVzdF9zdWl0ZS5zaG91bGRfcnVuKCkgfHwgKHRlc3Rfc3VpdGUu
c2tpcHBlZF90ZXN0X2NvdW50KCkgPT0gMCkpIHsKKyAgICAgIGNvbnRpbnVlOworICAgIH0KKyAg
ICBmb3IgKGludCBqID0gMDsgaiA8IHRlc3Rfc3VpdGUudG90YWxfdGVzdF9jb3VudCgpOyArK2op
IHsKKyAgICAgIGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2luZm8gPSAqdGVzdF9zdWl0ZS5HZXRUZXN0
SW5mbyhqKTsKKyAgICAgIGlmICghdGVzdF9pbmZvLnNob3VsZF9ydW4oKSB8fCAhdGVzdF9pbmZv
LnJlc3VsdCgpLT5Ta2lwcGVkKCkpIHsKKyAgICAgICAgY29udGludWU7CisgICAgICB9CisgICAg
ICBDb2xvcmVkUHJpbnRmKENPTE9SX0dSRUVOLCAiWyAgU0tJUFBFRCBdICIpOworICAgICAgcHJp
bnRmKCIlcy4lcyIsIHRlc3Rfc3VpdGUubmFtZSgpLCB0ZXN0X2luZm8ubmFtZSgpKTsKKyAgICAg
IHByaW50ZigiXG4iKTsKKyAgICB9CisgIH0KIH0KIAogdm9pZCBQcmV0dHlVbml0VGVzdFJlc3Vs
dFByaW50ZXI6Ok9uVGVzdEl0ZXJhdGlvbkVuZChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0LApA
QCAtMzI2NCw3ICszNTIyLDcgQEAgdm9pZCBQcmV0dHlVbml0VGVzdFJlc3VsdFByaW50ZXI6Ok9u
VGVzdEl0ZXJhdGlvbkVuZChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0LAogICBDb2xvcmVkUHJp
bnRmKENPTE9SX0dSRUVOLCAgIls9PT09PT09PT09XSAiKTsKICAgcHJpbnRmKCIlcyBmcm9tICVz
IHJhbi4iLAogICAgICAgICAgRm9ybWF0VGVzdENvdW50KHVuaXRfdGVzdC50ZXN0X3RvX3J1bl9j
b3VudCgpKS5jX3N0cigpLAotICAgICAgICAgRm9ybWF0VGVzdENhc2VDb3VudCh1bml0X3Rlc3Qu
dGVzdF9jYXNlX3RvX3J1bl9jb3VudCgpKS5jX3N0cigpKTsKKyAgICAgICAgIEZvcm1hdFRlc3RT
dWl0ZUNvdW50KHVuaXRfdGVzdC50ZXN0X3N1aXRlX3RvX3J1bl9jb3VudCgpKS5jX3N0cigpKTsK
ICAgaWYgKEdURVNUX0ZMQUcocHJpbnRfdGltZSkpIHsKICAgICBwcmludGYoIiAoJXMgbXMgdG90
YWwpIiwKICAgICAgICAgICAgaW50ZXJuYWw6OlN0cmVhbWFibGVUb1N0cmluZyh1bml0X3Rlc3Qu
ZWxhcHNlZF90aW1lKCkpLmNfc3RyKCkpOwpAQCAtMzI3MywxOSArMzUzMSwyMSBAQCB2b2lkIFBy
ZXR0eVVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6T25UZXN0SXRlcmF0aW9uRW5kKGNvbnN0IFVuaXRU
ZXN0JiB1bml0X3Rlc3QsCiAgIENvbG9yZWRQcmludGYoQ09MT1JfR1JFRU4sICAiWyAgUEFTU0VE
ICBdICIpOwogICBwcmludGYoIiVzLlxuIiwgRm9ybWF0VGVzdENvdW50KHVuaXRfdGVzdC5zdWNj
ZXNzZnVsX3Rlc3RfY291bnQoKSkuY19zdHIoKSk7CiAKLSAgaW50IG51bV9mYWlsdXJlcyA9IHVu
aXRfdGVzdC5mYWlsZWRfdGVzdF9jb3VudCgpOworICBjb25zdCBpbnQgc2tpcHBlZF90ZXN0X2Nv
dW50ID0gdW5pdF90ZXN0LnNraXBwZWRfdGVzdF9jb3VudCgpOworICBpZiAoc2tpcHBlZF90ZXN0
X2NvdW50ID4gMCkgeworICAgIENvbG9yZWRQcmludGYoQ09MT1JfR1JFRU4sICJbICBTS0lQUEVE
IF0gIik7CisgICAgcHJpbnRmKCIlcywgbGlzdGVkIGJlbG93OlxuIiwgRm9ybWF0VGVzdENvdW50
KHNraXBwZWRfdGVzdF9jb3VudCkuY19zdHIoKSk7CisgICAgUHJpbnRTa2lwcGVkVGVzdHModW5p
dF90ZXN0KTsKKyAgfQorCiAgIGlmICghdW5pdF90ZXN0LlBhc3NlZCgpKSB7Ci0gICAgY29uc3Qg
aW50IGZhaWxlZF90ZXN0X2NvdW50ID0gdW5pdF90ZXN0LmZhaWxlZF90ZXN0X2NvdW50KCk7Ci0g
ICAgQ29sb3JlZFByaW50ZihDT0xPUl9SRUQsICAiWyAgRkFJTEVEICBdICIpOwotICAgIHByaW50
ZigiJXMsIGxpc3RlZCBiZWxvdzpcbiIsIEZvcm1hdFRlc3RDb3VudChmYWlsZWRfdGVzdF9jb3Vu
dCkuY19zdHIoKSk7CiAgICAgUHJpbnRGYWlsZWRUZXN0cyh1bml0X3Rlc3QpOwotICAgIHByaW50
ZigiXG4lMmQgRkFJTEVEICVzXG4iLCBudW1fZmFpbHVyZXMsCi0gICAgICAgICAgICAgICAgICAg
ICAgICBudW1fZmFpbHVyZXMgPT0gMSA/ICJURVNUIiA6ICJURVNUUyIpOworICAgIFByaW50RmFp
bGVkVGVzdFN1aXRlcyh1bml0X3Rlc3QpOwogICB9CiAKICAgaW50IG51bV9kaXNhYmxlZCA9IHVu
aXRfdGVzdC5yZXBvcnRhYmxlX2Rpc2FibGVkX3Rlc3RfY291bnQoKTsKICAgaWYgKG51bV9kaXNh
YmxlZCAmJiAhR1RFU1RfRkxBRyhhbHNvX3J1bl9kaXNhYmxlZF90ZXN0cykpIHsKLSAgICBpZiAo
IW51bV9mYWlsdXJlcykgeworICAgIGlmICh1bml0X3Rlc3QuUGFzc2VkKCkpIHsKICAgICAgIHBy
aW50ZigiXG4iKTsgIC8vIEFkZCBhIHNwYWNlciBpZiBubyBGQUlMVVJFIGJhbm5lciBpcyBkaXNw
bGF5ZWQuCiAgICAgfQogICAgIENvbG9yZWRQcmludGYoQ09MT1JfWUVMTE9XLApAQCAtMzMwNSw3
ICszNTY1LDcgQEAgdm9pZCBQcmV0dHlVbml0VGVzdFJlc3VsdFByaW50ZXI6Ok9uVGVzdEl0ZXJh
dGlvbkVuZChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0LAogY2xhc3MgVGVzdEV2ZW50UmVwZWF0
ZXIgOiBwdWJsaWMgVGVzdEV2ZW50TGlzdGVuZXIgewogIHB1YmxpYzoKICAgVGVzdEV2ZW50UmVw
ZWF0ZXIoKSA6IGZvcndhcmRpbmdfZW5hYmxlZF8odHJ1ZSkge30KLSAgdmlydHVhbCB+VGVzdEV2
ZW50UmVwZWF0ZXIoKTsKKyAgflRlc3RFdmVudFJlcGVhdGVyKCkgb3ZlcnJpZGU7CiAgIHZvaWQg
QXBwZW5kKFRlc3RFdmVudExpc3RlbmVyICpsaXN0ZW5lcik7CiAgIFRlc3RFdmVudExpc3RlbmVy
KiBSZWxlYXNlKFRlc3RFdmVudExpc3RlbmVyKiBsaXN0ZW5lcik7CiAKQEAgLTMzMTQsMTkgKzM1
NzQsMjcgQEAgY2xhc3MgVGVzdEV2ZW50UmVwZWF0ZXIgOiBwdWJsaWMgVGVzdEV2ZW50TGlzdGVu
ZXIgewogICBib29sIGZvcndhcmRpbmdfZW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIGZvcndhcmRp
bmdfZW5hYmxlZF87IH0KICAgdm9pZCBzZXRfZm9yd2FyZGluZ19lbmFibGVkKGJvb2wgZW5hYmxl
KSB7IGZvcndhcmRpbmdfZW5hYmxlZF8gPSBlbmFibGU7IH0KIAotICB2aXJ0dWFsIHZvaWQgT25U
ZXN0UHJvZ3JhbVN0YXJ0KGNvbnN0IFVuaXRUZXN0JiB1bml0X3Rlc3QpOwotICB2aXJ0dWFsIHZv
aWQgT25UZXN0SXRlcmF0aW9uU3RhcnQoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCwgaW50IGl0
ZXJhdGlvbik7Ci0gIHZpcnR1YWwgdm9pZCBPbkVudmlyb25tZW50c1NldFVwU3RhcnQoY29uc3Qg
VW5pdFRlc3QmIHVuaXRfdGVzdCk7Ci0gIHZpcnR1YWwgdm9pZCBPbkVudmlyb25tZW50c1NldFVw
RW5kKGNvbnN0IFVuaXRUZXN0JiB1bml0X3Rlc3QpOwotICB2aXJ0dWFsIHZvaWQgT25UZXN0Q2Fz
ZVN0YXJ0KGNvbnN0IFRlc3RDYXNlJiB0ZXN0X2Nhc2UpOwotICB2aXJ0dWFsIHZvaWQgT25UZXN0
U3RhcnQoY29uc3QgVGVzdEluZm8mIHRlc3RfaW5mbyk7Ci0gIHZpcnR1YWwgdm9pZCBPblRlc3RQ
YXJ0UmVzdWx0KGNvbnN0IFRlc3RQYXJ0UmVzdWx0JiByZXN1bHQpOwotICB2aXJ0dWFsIHZvaWQg
T25UZXN0RW5kKGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2luZm8pOwotICB2aXJ0dWFsIHZvaWQgT25U
ZXN0Q2FzZUVuZChjb25zdCBUZXN0Q2FzZSYgdGVzdF9jYXNlKTsKLSAgdmlydHVhbCB2b2lkIE9u
RW52aXJvbm1lbnRzVGVhckRvd25TdGFydChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0KTsKLSAg
dmlydHVhbCB2b2lkIE9uRW52aXJvbm1lbnRzVGVhckRvd25FbmQoY29uc3QgVW5pdFRlc3QmIHVu
aXRfdGVzdCk7Ci0gIHZpcnR1YWwgdm9pZCBPblRlc3RJdGVyYXRpb25FbmQoY29uc3QgVW5pdFRl
c3QmIHVuaXRfdGVzdCwgaW50IGl0ZXJhdGlvbik7Ci0gIHZpcnR1YWwgdm9pZCBPblRlc3RQcm9n
cmFtRW5kKGNvbnN0IFVuaXRUZXN0JiB1bml0X3Rlc3QpOworICB2b2lkIE9uVGVzdFByb2dyYW1T
dGFydChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0KSBvdmVycmlkZTsKKyAgdm9pZCBPblRlc3RJ
dGVyYXRpb25TdGFydChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0LCBpbnQgaXRlcmF0aW9uKSBv
dmVycmlkZTsKKyAgdm9pZCBPbkVudmlyb25tZW50c1NldFVwU3RhcnQoY29uc3QgVW5pdFRlc3Qm
IHVuaXRfdGVzdCkgb3ZlcnJpZGU7CisgIHZvaWQgT25FbnZpcm9ubWVudHNTZXRVcEVuZChjb25z
dCBVbml0VGVzdCYgdW5pdF90ZXN0KSBvdmVycmlkZTsKKy8vICBMZWdhY3kgQVBJIGlzIGRlcHJl
Y2F0ZWQgYnV0IHN0aWxsIGF2YWlsYWJsZQorI2lmbmRlZiBHVEVTVF9SRU1PVkVfTEVHQUNZX1RF
U1RfQ0FTRUFQSV8KKyAgdm9pZCBPblRlc3RDYXNlU3RhcnQoY29uc3QgVGVzdFN1aXRlJiBwYXJh
bWV0ZXIpIG92ZXJyaWRlOworI2VuZGlmICAvLyAgR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NB
U0VBUElfCisgIHZvaWQgT25UZXN0U3VpdGVTdGFydChjb25zdCBUZXN0U3VpdGUmIHBhcmFtZXRl
cikgb3ZlcnJpZGU7CisgIHZvaWQgT25UZXN0U3RhcnQoY29uc3QgVGVzdEluZm8mIHRlc3RfaW5m
bykgb3ZlcnJpZGU7CisgIHZvaWQgT25UZXN0UGFydFJlc3VsdChjb25zdCBUZXN0UGFydFJlc3Vs
dCYgcmVzdWx0KSBvdmVycmlkZTsKKyAgdm9pZCBPblRlc3RFbmQoY29uc3QgVGVzdEluZm8mIHRl
c3RfaW5mbykgb3ZlcnJpZGU7CisvLyAgTGVnYWN5IEFQSSBpcyBkZXByZWNhdGVkIGJ1dCBzdGls
bCBhdmFpbGFibGUKKyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUElfCisg
IHZvaWQgT25UZXN0Q2FzZUVuZChjb25zdCBUZXN0Q2FzZSYgcGFyYW1ldGVyKSBvdmVycmlkZTsK
KyNlbmRpZiAgLy8gIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXworICB2b2lkIE9u
VGVzdFN1aXRlRW5kKGNvbnN0IFRlc3RTdWl0ZSYgcGFyYW1ldGVyKSBvdmVycmlkZTsKKyAgdm9p
ZCBPbkVudmlyb25tZW50c1RlYXJEb3duU3RhcnQoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCkg
b3ZlcnJpZGU7CisgIHZvaWQgT25FbnZpcm9ubWVudHNUZWFyRG93bkVuZChjb25zdCBVbml0VGVz
dCYgdW5pdF90ZXN0KSBvdmVycmlkZTsKKyAgdm9pZCBPblRlc3RJdGVyYXRpb25FbmQoY29uc3Qg
VW5pdFRlc3QmIHVuaXRfdGVzdCwgaW50IGl0ZXJhdGlvbikgb3ZlcnJpZGU7CisgIHZvaWQgT25U
ZXN0UHJvZ3JhbUVuZChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0KSBvdmVycmlkZTsKIAogIHBy
aXZhdGU6CiAgIC8vIENvbnRyb2xzIHdoZXRoZXIgZXZlbnRzIHdpbGwgYmUgZm9yd2FyZGVkIHRv
IGxpc3RlbmVyc18uIFNldCB0byBmYWxzZQpAQCAtMzM0NiwxNiArMzYxNCwxNSBAQCB2b2lkIFRl
c3RFdmVudFJlcGVhdGVyOjpBcHBlbmQoVGVzdEV2ZW50TGlzdGVuZXIgKmxpc3RlbmVyKSB7CiAg
IGxpc3RlbmVyc18ucHVzaF9iYWNrKGxpc3RlbmVyKTsKIH0KIAotLy8gRklYTUU6IEZhY3RvciB0
aGUgc2VhcmNoIGZ1bmN0aW9uYWxpdHkgaW50byBWZWN0b3I6OkZpbmQuCiBUZXN0RXZlbnRMaXN0
ZW5lciogVGVzdEV2ZW50UmVwZWF0ZXI6OlJlbGVhc2UoVGVzdEV2ZW50TGlzdGVuZXIgKmxpc3Rl
bmVyKSB7CiAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbGlzdGVuZXJzXy5zaXplKCk7ICsraSkg
ewogICAgIGlmIChsaXN0ZW5lcnNfW2ldID09IGxpc3RlbmVyKSB7Ci0gICAgICBsaXN0ZW5lcnNf
LmVyYXNlKGxpc3RlbmVyc18uYmVnaW4oKSArIGkpOworICAgICAgbGlzdGVuZXJzXy5lcmFzZShs
aXN0ZW5lcnNfLmJlZ2luKCkgKyBzdGF0aWNfY2FzdDxpbnQ+KGkpKTsKICAgICAgIHJldHVybiBs
aXN0ZW5lcjsKICAgICB9CiAgIH0KIAotICByZXR1cm4gTlVMTDsKKyAgcmV0dXJuIG51bGxwdHI7
CiB9CiAKIC8vIFNpbmNlIG1vc3QgbWV0aG9kcyBhcmUgdmVyeSBzaW1pbGFyLCB1c2UgbWFjcm9z
IHRvIHJlZHVjZSBib2lsZXJwbGF0ZS4KQEAgLTMzNzAsMjUgKzM2MzcsMzMgQEAgdm9pZCBUZXN0
RXZlbnRSZXBlYXRlcjo6TmFtZShjb25zdCBUeXBlJiBwYXJhbWV0ZXIpIHsgXAogfQogLy8gVGhp
cyBkZWZpbmVzIGEgbWVtYmVyIHRoYXQgZm9yd2FyZHMgdGhlIGNhbGwgdG8gYWxsIGxpc3RlbmVy
cyBpbiByZXZlcnNlCiAvLyBvcmRlci4KLSNkZWZpbmUgR1RFU1RfUkVWRVJTRV9SRVBFQVRFUl9N
RVRIT0RfKE5hbWUsIFR5cGUpIFwKLXZvaWQgVGVzdEV2ZW50UmVwZWF0ZXI6Ok5hbWUoY29uc3Qg
VHlwZSYgcGFyYW1ldGVyKSB7IFwKLSAgaWYgKGZvcndhcmRpbmdfZW5hYmxlZF8pIHsgXAotICAg
IGZvciAoaW50IGkgPSBzdGF0aWNfY2FzdDxpbnQ+KGxpc3RlbmVyc18uc2l6ZSgpKSAtIDE7IGkg
Pj0gMDsgaS0tKSB7IFwKLSAgICAgIGxpc3RlbmVyc19baV0tPk5hbWUocGFyYW1ldGVyKTsgXAot
ICAgIH0gXAotICB9IFwKLX0KKyNkZWZpbmUgR1RFU1RfUkVWRVJTRV9SRVBFQVRFUl9NRVRIT0Rf
KE5hbWUsIFR5cGUpICAgICAgXAorICB2b2lkIFRlc3RFdmVudFJlcGVhdGVyOjpOYW1lKGNvbnN0
IFR5cGUmIHBhcmFtZXRlcikgeyBcCisgICAgaWYgKGZvcndhcmRpbmdfZW5hYmxlZF8pIHsgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgIGZvciAoc2l6ZV90IGkgPSBsaXN0ZW5lcnNf
LnNpemUoKTsgaSAhPSAwOyBpLS0pIHsgXAorICAgICAgICBsaXN0ZW5lcnNfW2kgLSAxXS0+TmFt
ZShwYXJhbWV0ZXIpOyAgICAgICAgICAgICBcCisgICAgICB9ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB9ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICB9CiAKIEdURVNUX1JFUEVBVEVSX01F
VEhPRF8oT25UZXN0UHJvZ3JhbVN0YXJ0LCBVbml0VGVzdCkKIEdURVNUX1JFUEVBVEVSX01FVEhP
RF8oT25FbnZpcm9ubWVudHNTZXRVcFN0YXJ0LCBVbml0VGVzdCkKLUdURVNUX1JFUEVBVEVSX01F
VEhPRF8oT25UZXN0Q2FzZVN0YXJ0LCBUZXN0Q2FzZSkKKy8vICBMZWdhY3kgQVBJIGlzIGRlcHJl
Y2F0ZWQgYnV0IHN0aWxsIGF2YWlsYWJsZQorI2lmbmRlZiBHVEVTVF9SRU1PVkVfTEVHQUNZX1RF
U1RfQ0FTRUFQSV8KK0dURVNUX1JFUEVBVEVSX01FVEhPRF8oT25UZXN0Q2FzZVN0YXJ0LCBUZXN0
U3VpdGUpCisjZW5kaWYgIC8vICBHVEVTVF9SRU1PVkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KK0dU
RVNUX1JFUEVBVEVSX01FVEhPRF8oT25UZXN0U3VpdGVTdGFydCwgVGVzdFN1aXRlKQogR1RFU1Rf
UkVQRUFURVJfTUVUSE9EXyhPblRlc3RTdGFydCwgVGVzdEluZm8pCiBHVEVTVF9SRVBFQVRFUl9N
RVRIT0RfKE9uVGVzdFBhcnRSZXN1bHQsIFRlc3RQYXJ0UmVzdWx0KQogR1RFU1RfUkVQRUFURVJf
TUVUSE9EXyhPbkVudmlyb25tZW50c1RlYXJEb3duU3RhcnQsIFVuaXRUZXN0KQogR1RFU1RfUkVW
RVJTRV9SRVBFQVRFUl9NRVRIT0RfKE9uRW52aXJvbm1lbnRzU2V0VXBFbmQsIFVuaXRUZXN0KQog
R1RFU1RfUkVWRVJTRV9SRVBFQVRFUl9NRVRIT0RfKE9uRW52aXJvbm1lbnRzVGVhckRvd25FbmQs
IFVuaXRUZXN0KQogR1RFU1RfUkVWRVJTRV9SRVBFQVRFUl9NRVRIT0RfKE9uVGVzdEVuZCwgVGVz
dEluZm8pCi1HVEVTVF9SRVZFUlNFX1JFUEVBVEVSX01FVEhPRF8oT25UZXN0Q2FzZUVuZCwgVGVz
dENhc2UpCisvLyAgTGVnYWN5IEFQSSBpcyBkZXByZWNhdGVkIGJ1dCBzdGlsbCBhdmFpbGFibGUK
KyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUElfCitHVEVTVF9SRVZFUlNF
X1JFUEVBVEVSX01FVEhPRF8oT25UZXN0Q2FzZUVuZCwgVGVzdFN1aXRlKQorI2VuZGlmICAvLyAg
R1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUElfCitHVEVTVF9SRVZFUlNFX1JFUEVBVEVS
X01FVEhPRF8oT25UZXN0U3VpdGVFbmQsIFRlc3RTdWl0ZSkKIEdURVNUX1JFVkVSU0VfUkVQRUFU
RVJfTUVUSE9EXyhPblRlc3RQcm9ncmFtRW5kLCBVbml0VGVzdCkKIAogI3VuZGVmIEdURVNUX1JF
UEVBVEVSX01FVEhPRF8KQEAgLTM0MDYsOCArMzY4MSw4IEBAIHZvaWQgVGVzdEV2ZW50UmVwZWF0
ZXI6Ok9uVGVzdEl0ZXJhdGlvblN0YXJ0KGNvbnN0IFVuaXRUZXN0JiB1bml0X3Rlc3QsCiB2b2lk
IFRlc3RFdmVudFJlcGVhdGVyOjpPblRlc3RJdGVyYXRpb25FbmQoY29uc3QgVW5pdFRlc3QmIHVu
aXRfdGVzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQg
aXRlcmF0aW9uKSB7CiAgIGlmIChmb3J3YXJkaW5nX2VuYWJsZWRfKSB7Ci0gICAgZm9yIChpbnQg
aSA9IHN0YXRpY19jYXN0PGludD4obGlzdGVuZXJzXy5zaXplKCkpIC0gMTsgaSA+PSAwOyBpLS0p
IHsKLSAgICAgIGxpc3RlbmVyc19baV0tPk9uVGVzdEl0ZXJhdGlvbkVuZCh1bml0X3Rlc3QsIGl0
ZXJhdGlvbik7CisgICAgZm9yIChzaXplX3QgaSA9IGxpc3RlbmVyc18uc2l6ZSgpOyBpID4gMDsg
aS0tKSB7CisgICAgICBsaXN0ZW5lcnNfW2kgLSAxXS0+T25UZXN0SXRlcmF0aW9uRW5kKHVuaXRf
dGVzdCwgaXRlcmF0aW9uKTsKICAgICB9CiAgIH0KIH0KQEAgLTM0MTksMTIgKzM2OTQsMTIgQEAg
Y2xhc3MgWG1sVW5pdFRlc3RSZXN1bHRQcmludGVyIDogcHVibGljIEVtcHR5VGVzdEV2ZW50TGlz
dGVuZXIgewogIHB1YmxpYzoKICAgZXhwbGljaXQgWG1sVW5pdFRlc3RSZXN1bHRQcmludGVyKGNv
bnN0IGNoYXIqIG91dHB1dF9maWxlKTsKIAotICB2aXJ0dWFsIHZvaWQgT25UZXN0SXRlcmF0aW9u
RW5kKGNvbnN0IFVuaXRUZXN0JiB1bml0X3Rlc3QsIGludCBpdGVyYXRpb24pOwotICB2b2lkIExp
c3RUZXN0c01hdGNoaW5nRmlsdGVyKGNvbnN0IHN0ZDo6dmVjdG9yPFRlc3RDYXNlKj4mIHRlc3Rf
Y2FzZXMpOworICB2b2lkIE9uVGVzdEl0ZXJhdGlvbkVuZChjb25zdCBVbml0VGVzdCYgdW5pdF90
ZXN0LCBpbnQgaXRlcmF0aW9uKSBvdmVycmlkZTsKKyAgdm9pZCBMaXN0VGVzdHNNYXRjaGluZ0Zp
bHRlcihjb25zdCBzdGQ6OnZlY3RvcjxUZXN0U3VpdGUqPiYgdGVzdF9zdWl0ZXMpOwogCiAgIC8v
IFByaW50cyBhbiBYTUwgc3VtbWFyeSBvZiBhbGwgdW5pdCB0ZXN0cy4KICAgc3RhdGljIHZvaWQg
UHJpbnRYbWxUZXN0c0xpc3Qoc3RkOjpvc3RyZWFtKiBzdHJlYW0sCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IHN0ZDo6dmVjdG9yPFRlc3RDYXNlKj4mIHRlc3RfY2FzZXMp
OworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6OnZlY3RvcjxUZXN0
U3VpdGUqPiYgdGVzdF9zdWl0ZXMpOwogCiAgcHJpdmF0ZToKICAgLy8gSXMgYyBhIHdoaXRlc3Bh
Y2UgY2hhcmFjdGVyIHRoYXQgaXMgbm9ybWFsaXplZCB0byBhIHNwYWNlIGNoYXJhY3RlcgpAQCAt
MzQ2OSwxMiArMzc0NCwxMiBAQCBjbGFzcyBYbWxVbml0VGVzdFJlc3VsdFByaW50ZXIgOiBwdWJs
aWMgRW1wdHlUZXN0RXZlbnRMaXN0ZW5lciB7CiAKICAgLy8gU3RyZWFtcyBhbiBYTUwgcmVwcmVz
ZW50YXRpb24gb2YgYSBUZXN0SW5mbyBvYmplY3QuCiAgIHN0YXRpYyB2b2lkIE91dHB1dFhtbFRl
c3RJbmZvKDo6c3RkOjpvc3RyZWFtKiBzdHJlYW0sCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IGNoYXIqIHRlc3RfY2FzZV9uYW1lLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBjaGFyKiB0ZXN0X3N1aXRlX25hbWUsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2luZm8pOwogCi0gIC8vIFByaW50
cyBhbiBYTUwgcmVwcmVzZW50YXRpb24gb2YgYSBUZXN0Q2FzZSBvYmplY3QKLSAgc3RhdGljIHZv
aWQgUHJpbnRYbWxUZXN0Q2FzZSg6OnN0ZDo6b3N0cmVhbSogc3RyZWFtLAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IFRlc3RDYXNlJiB0ZXN0X2Nhc2UpOworICAvLyBQcmlu
dHMgYW4gWE1MIHJlcHJlc2VudGF0aW9uIG9mIGEgVGVzdFN1aXRlIG9iamVjdAorICBzdGF0aWMg
dm9pZCBQcmludFhtbFRlc3RTdWl0ZSg6OnN0ZDo6b3N0cmVhbSogc3RyZWFtLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBUZXN0U3VpdGUmIHRlc3Rfc3VpdGUpOwogCiAg
IC8vIFByaW50cyBhbiBYTUwgc3VtbWFyeSBvZiB1bml0X3Rlc3QgdG8gb3V0cHV0IHN0cmVhbSBv
dXQuCiAgIHN0YXRpYyB2b2lkIFByaW50WG1sVW5pdFRlc3QoOjpzdGQ6Om9zdHJlYW0qIHN0cmVh
bSwKQEAgLTM1MTYsMTAgKzM3OTEsMTAgQEAgdm9pZCBYbWxVbml0VGVzdFJlc3VsdFByaW50ZXI6
Ok9uVGVzdEl0ZXJhdGlvbkVuZChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0LAogfQogCiB2b2lk
IFhtbFVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6TGlzdFRlc3RzTWF0Y2hpbmdGaWx0ZXIoCi0gICAg
Y29uc3Qgc3RkOjp2ZWN0b3I8VGVzdENhc2UqPiYgdGVzdF9jYXNlcykgeworICAgIGNvbnN0IHN0
ZDo6dmVjdG9yPFRlc3RTdWl0ZSo+JiB0ZXN0X3N1aXRlcykgewogICBGSUxFKiB4bWxvdXQgPSBP
cGVuRmlsZUZvcldyaXRpbmcob3V0cHV0X2ZpbGVfKTsKICAgc3RkOjpzdHJpbmdzdHJlYW0gc3Ry
ZWFtOwotICBQcmludFhtbFRlc3RzTGlzdCgmc3RyZWFtLCB0ZXN0X2Nhc2VzKTsKKyAgUHJpbnRY
bWxUZXN0c0xpc3QoJnN0cmVhbSwgdGVzdF9zdWl0ZXMpOwogICBmcHJpbnRmKHhtbG91dCwgIiVz
IiwgU3RyaW5nU3RyZWFtVG9TdHJpbmcoJnN0cmVhbSkuY19zdHIoKSk7CiAgIGZjbG9zZSh4bWxv
dXQpOwogfQpAQCAtMzUzNCw4ICszODA5LDYgQEAgdm9pZCBYbWxVbml0VGVzdFJlc3VsdFByaW50
ZXI6Okxpc3RUZXN0c01hdGNoaW5nRmlsdGVyKAogLy8gbW9kdWxlIHdpbGwgY29uc2lzdCBvZiBv
cmRpbmFyeSBFbmdsaXNoIHRleHQuCiAvLyBJZiB0aGlzIG1vZHVsZSBpcyBldmVyIG1vZGlmaWVk
IHRvIHByb2R1Y2UgdmVyc2lvbiAxLjEgWE1MIG91dHB1dCwKIC8vIG1vc3QgaW52YWxpZCBjaGFy
YWN0ZXJzIGNhbiBiZSByZXRhaW5lZCB1c2luZyBjaGFyYWN0ZXIgcmVmZXJlbmNlcy4KLS8vIEZJ
WE1FOiBJdCBtaWdodCBiZSBuaWNlIHRvIGhhdmUgYSBtaW5pbWFsbHkgaW52YXNpdmUsIGh1bWFu
LXJlYWRhYmxlCi0vLyBlc2NhcGluZyBzY2hlbWUgZm9yIGludmFsaWQgY2hhcmFjdGVycywgcmF0
aGVyIHRoYW4gZHJvcHBpbmcgdGhlbS4KIHN0ZDo6c3RyaW5nIFhtbFVuaXRUZXN0UmVzdWx0UHJp
bnRlcjo6RXNjYXBlWG1sKAogICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBzdHIsIGJvb2wgaXNfYXR0
cmlidXRlKSB7CiAgIE1lc3NhZ2UgbTsKQEAgLTM2MDAsNyArMzg3Myw3IEBAIHN0ZDo6c3RyaW5n
IFhtbFVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6UmVtb3ZlSW52YWxpZFhtbENoYXJhY3RlcnMoCiAv
LyBUaGlzIGlzIGhvdyBHb29nbGUgVGVzdCBjb25jZXB0cyBtYXAgdG8gdGhlIERURDoKIC8vCiAv
LyA8dGVzdHN1aXRlcyBuYW1lPSJBbGxUZXN0cyI+ICAgICAgICA8LS0gY29ycmVzcG9uZHMgdG8g
YSBVbml0VGVzdCBvYmplY3QKLS8vICAgPHRlc3RzdWl0ZSBuYW1lPSJ0ZXN0Y2FzZS1uYW1lIj4g
IDwtLSBjb3JyZXNwb25kcyB0byBhIFRlc3RDYXNlIG9iamVjdAorLy8gICA8dGVzdHN1aXRlIG5h
bWU9InRlc3RjYXNlLW5hbWUiPiAgPC0tIGNvcnJlc3BvbmRzIHRvIGEgVGVzdFN1aXRlIG9iamVj
dAogLy8gICAgIDx0ZXN0Y2FzZSBuYW1lPSJ0ZXN0LW5hbWUiPiAgICAgPC0tIGNvcnJlc3BvbmRz
IHRvIGEgVGVzdEluZm8gb2JqZWN0CiAvLyAgICAgICA8ZmFpbHVyZSBtZXNzYWdlPSIuLi4iPi4u
LjwvZmFpbHVyZT4KIC8vICAgICAgIDxmYWlsdXJlIG1lc3NhZ2U9Ii4uLiI+Li4uPC9mYWlsdXJl
PgpAQCAtMzYyNCwxMiArMzg5NywxMSBAQCBzdGF0aWMgYm9vbCBQb3J0YWJsZUxvY2FsdGltZSh0
aW1lX3Qgc2Vjb25kcywgc3RydWN0IHRtKiBvdXQpIHsKICAgLy8gTUlOR1cgPHRpbWUuaD4gcHJv
dmlkZXMgbmVpdGhlciBsb2NhbHRpbWVfciBub3IgbG9jYWx0aW1lX3MsIGJ1dCB1c2VzCiAgIC8v
IFdpbmRvd3MnIGxvY2FsdGltZSgpLCB3aGljaCBoYXMgYSB0aHJlYWQtbG9jYWwgdG0gYnVmZmVy
LgogICBzdHJ1Y3QgdG0qIHRtX3B0ciA9IGxvY2FsdGltZSgmc2Vjb25kcyk7ICAvLyBOT0xJTlQK
LSAgaWYgKHRtX3B0ciA9PSBOVUxMKQotICAgIHJldHVybiBmYWxzZTsKKyAgaWYgKHRtX3B0ciA9
PSBudWxscHRyKSByZXR1cm4gZmFsc2U7CiAgICpvdXQgPSAqdG1fcHRyOwogICByZXR1cm4gdHJ1
ZTsKICNlbHNlCi0gIHJldHVybiBsb2NhbHRpbWVfcigmc2Vjb25kcywgb3V0KSAhPSBOVUxMOwor
ICByZXR1cm4gbG9jYWx0aW1lX3IoJnNlY29uZHMsIG91dCkgIT0gbnVsbHB0cjsKICNlbmRpZgog
fQogCkBAIC0zNjU1LDcgKzM5MjcsNyBAQCB2b2lkIFhtbFVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6
T3V0cHV0WG1sQ0RhdGFTZWN0aW9uKDo6c3RkOjpvc3RyZWFtKiBzdHJlYW0sCiAgICpzdHJlYW0g
PDwgIjwhW0NEQVRBWyI7CiAgIGZvciAoOzspIHsKICAgICBjb25zdCBjaGFyKiBjb25zdCBuZXh0
X3NlZ21lbnQgPSBzdHJzdHIoc2VnbWVudCwgIl1dPiIpOwotICAgIGlmIChuZXh0X3NlZ21lbnQg
IT0gTlVMTCkgeworICAgIGlmIChuZXh0X3NlZ21lbnQgIT0gbnVsbHB0cikgewogICAgICAgc3Ry
ZWFtLT53cml0ZSgKICAgICAgICAgICBzZWdtZW50LCBzdGF0aWNfY2FzdDxzdGQ6OnN0cmVhbXNp
emU+KG5leHRfc2VnbWVudCAtIHNlZ21lbnQpKTsKICAgICAgICpzdHJlYW0gPDwgIl1dPl1dJmd0
OzwhW0NEQVRBWyI7CkBAIC0zNjc0LDcgKzM5NDYsNyBAQCB2b2lkIFhtbFVuaXRUZXN0UmVzdWx0
UHJpbnRlcjo6T3V0cHV0WG1sQXR0cmlidXRlKAogICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBuYW1l
LAogICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiB2YWx1ZSkgewogICBjb25zdCBzdGQ6OnZlY3Rvcjxz
dGQ6OnN0cmluZz4mIGFsbG93ZWRfbmFtZXMgPQotICAgICAgR2V0UmVzZXJ2ZWRBdHRyaWJ1dGVz
Rm9yRWxlbWVudChlbGVtZW50X25hbWUpOworICAgICAgR2V0UmVzZXJ2ZWRPdXRwdXRBdHRyaWJ1
dGVzRm9yRWxlbWVudChlbGVtZW50X25hbWUpOwogCiAgIEdURVNUX0NIRUNLXyhzdGQ6OmZpbmQo
YWxsb3dlZF9uYW1lcy5iZWdpbigpLCBhbGxvd2VkX25hbWVzLmVuZCgpLCBuYW1lKSAhPQogICAg
ICAgICAgICAgICAgICAgIGFsbG93ZWRfbmFtZXMuZW5kKCkpCkBAIC0zNjg1LDQwICszOTU3LDQ3
IEBAIHZvaWQgWG1sVW5pdFRlc3RSZXN1bHRQcmludGVyOjpPdXRwdXRYbWxBdHRyaWJ1dGUoCiB9
CiAKIC8vIFByaW50cyBhbiBYTUwgcmVwcmVzZW50YXRpb24gb2YgYSBUZXN0SW5mbyBvYmplY3Qu
Ci0vLyBGSVhNRTogVGhlcmUgaXMgYWxzbyB2YWx1ZSBpbiBwcmludGluZyBwcm9wZXJ0aWVzIHdp
dGggdGhlIHBsYWluIHByaW50ZXIuCiB2b2lkIFhtbFVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6T3V0
cHV0WG1sVGVzdEluZm8oOjpzdGQ6Om9zdHJlYW0qIHN0cmVhbSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyKiB0ZXN0X2Nhc2VfbmFt
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBjaGFyKiB0ZXN0X3N1aXRlX25hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgVGVzdEluZm8mIHRlc3RfaW5mbykgewogICBjb25zdCBU
ZXN0UmVzdWx0JiByZXN1bHQgPSAqdGVzdF9pbmZvLnJlc3VsdCgpOwotICBjb25zdCBzdGQ6OnN0
cmluZyBrVGVzdGNhc2UgPSAidGVzdGNhc2UiOworICBjb25zdCBzdGQ6OnN0cmluZyBrVGVzdHN1
aXRlID0gInRlc3RjYXNlIjsKIAogICBpZiAodGVzdF9pbmZvLmlzX2luX2Fub3RoZXJfc2hhcmQo
KSkgewogICAgIHJldHVybjsKICAgfQogCiAgICpzdHJlYW0gPDwgIiAgICA8dGVzdGNhc2UiOwot
ICBPdXRwdXRYbWxBdHRyaWJ1dGUoc3RyZWFtLCBrVGVzdGNhc2UsICJuYW1lIiwgdGVzdF9pbmZv
Lm5hbWUoKSk7CisgIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0sIGtUZXN0c3VpdGUsICJuYW1l
IiwgdGVzdF9pbmZvLm5hbWUoKSk7CiAKLSAgaWYgKHRlc3RfaW5mby52YWx1ZV9wYXJhbSgpICE9
IE5VTEwpIHsKLSAgICBPdXRwdXRYbWxBdHRyaWJ1dGUoc3RyZWFtLCBrVGVzdGNhc2UsICJ2YWx1
ZV9wYXJhbSIsCisgIGlmICh0ZXN0X2luZm8udmFsdWVfcGFyYW0oKSAhPSBudWxscHRyKSB7Cisg
ICAgT3V0cHV0WG1sQXR0cmlidXRlKHN0cmVhbSwga1Rlc3RzdWl0ZSwgInZhbHVlX3BhcmFtIiwK
ICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9pbmZvLnZhbHVlX3BhcmFtKCkpOwogICB9Ci0g
IGlmICh0ZXN0X2luZm8udHlwZV9wYXJhbSgpICE9IE5VTEwpIHsKLSAgICBPdXRwdXRYbWxBdHRy
aWJ1dGUoc3RyZWFtLCBrVGVzdGNhc2UsICJ0eXBlX3BhcmFtIiwgdGVzdF9pbmZvLnR5cGVfcGFy
YW0oKSk7CisgIGlmICh0ZXN0X2luZm8udHlwZV9wYXJhbSgpICE9IG51bGxwdHIpIHsKKyAgICBP
dXRwdXRYbWxBdHRyaWJ1dGUoc3RyZWFtLCBrVGVzdHN1aXRlLCAidHlwZV9wYXJhbSIsCisgICAg
ICAgICAgICAgICAgICAgICAgIHRlc3RfaW5mby50eXBlX3BhcmFtKCkpOwogICB9CiAgIGlmIChH
VEVTVF9GTEFHKGxpc3RfdGVzdHMpKSB7Ci0gICAgT3V0cHV0WG1sQXR0cmlidXRlKHN0cmVhbSwg
a1Rlc3RjYXNlLCAiZmlsZSIsIHRlc3RfaW5mby5maWxlKCkpOwotICAgIE91dHB1dFhtbEF0dHJp
YnV0ZShzdHJlYW0sIGtUZXN0Y2FzZSwgImxpbmUiLAorICAgIE91dHB1dFhtbEF0dHJpYnV0ZShz
dHJlYW0sIGtUZXN0c3VpdGUsICJmaWxlIiwgdGVzdF9pbmZvLmZpbGUoKSk7CisgICAgT3V0cHV0
WG1sQXR0cmlidXRlKHN0cmVhbSwga1Rlc3RzdWl0ZSwgImxpbmUiLAogICAgICAgICAgICAgICAg
ICAgICAgICBTdHJlYW1hYmxlVG9TdHJpbmcodGVzdF9pbmZvLmxpbmUoKSkpOwogICAgICpzdHJl
YW0gPDwgIiAvPlxuIjsKICAgICByZXR1cm47CiAgIH0KIAotICBPdXRwdXRYbWxBdHRyaWJ1dGUo
c3RyZWFtLCBrVGVzdGNhc2UsICJzdGF0dXMiLAorICBPdXRwdXRYbWxBdHRyaWJ1dGUoc3RyZWFt
LCBrVGVzdHN1aXRlLCAic3RhdHVzIiwKICAgICAgICAgICAgICAgICAgICAgIHRlc3RfaW5mby5z
aG91bGRfcnVuKCkgPyAicnVuIiA6ICJub3RydW4iKTsKLSAgT3V0cHV0WG1sQXR0cmlidXRlKHN0
cmVhbSwga1Rlc3RjYXNlLCAidGltZSIsCisgIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0sIGtU
ZXN0c3VpdGUsICJyZXN1bHQiLAorICAgICAgICAgICAgICAgICAgICAgdGVzdF9pbmZvLnNob3Vs
ZF9ydW4oKQorICAgICAgICAgICAgICAgICAgICAgICAgID8gKHJlc3VsdC5Ta2lwcGVkKCkgPyAi
c2tpcHBlZCIgOiAiY29tcGxldGVkIikKKyAgICAgICAgICAgICAgICAgICAgICAgICA6ICJzdXBw
cmVzc2VkIik7CisgIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0sIGtUZXN0c3VpdGUsICJ0aW1l
IiwKICAgICAgICAgICAgICAgICAgICAgIEZvcm1hdFRpbWVJbk1pbGxpc0FzU2Vjb25kcyhyZXN1
bHQuZWxhcHNlZF90aW1lKCkpKTsKLSAgT3V0cHV0WG1sQXR0cmlidXRlKHN0cmVhbSwga1Rlc3Rj
YXNlLCAiY2xhc3NuYW1lIiwgdGVzdF9jYXNlX25hbWUpOworICBPdXRwdXRYbWxBdHRyaWJ1dGUo
CisgICAgICBzdHJlYW0sIGtUZXN0c3VpdGUsICJ0aW1lc3RhbXAiLAorICAgICAgRm9ybWF0RXBv
Y2hUaW1lSW5NaWxsaXNBc0lzbzg2MDEocmVzdWx0LnN0YXJ0X3RpbWVzdGFtcCgpKSk7CisgIE91
dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0sIGtUZXN0c3VpdGUsICJjbGFzc25hbWUiLCB0ZXN0X3N1
aXRlX25hbWUpOwogCiAgIGludCBmYWlsdXJlcyA9IDA7CiAgIGZvciAoaW50IGkgPSAwOyBpIDwg
cmVzdWx0LnRvdGFsX3BhcnRfY291bnQoKTsgKytpKSB7CkBAIC0zNzUxLDI5ICs0MDMwLDMyIEBA
IHZvaWQgWG1sVW5pdFRlc3RSZXN1bHRQcmludGVyOjpPdXRwdXRYbWxUZXN0SW5mbyg6OnN0ZDo6
b3N0cmVhbSogc3RyZWFtLAogICB9CiB9CiAKLS8vIFByaW50cyBhbiBYTUwgcmVwcmVzZW50YXRp
b24gb2YgYSBUZXN0Q2FzZSBvYmplY3QKLXZvaWQgWG1sVW5pdFRlc3RSZXN1bHRQcmludGVyOjpQ
cmludFhtbFRlc3RDYXNlKHN0ZDo6b3N0cmVhbSogc3RyZWFtLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVGVzdENhc2UmIHRlc3RfY2FzZSkg
eworLy8gUHJpbnRzIGFuIFhNTCByZXByZXNlbnRhdGlvbiBvZiBhIFRlc3RTdWl0ZSBvYmplY3QK
K3ZvaWQgWG1sVW5pdFRlc3RSZXN1bHRQcmludGVyOjpQcmludFhtbFRlc3RTdWl0ZShzdGQ6Om9z
dHJlYW0qIHN0cmVhbSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCBUZXN0U3VpdGUmIHRlc3Rfc3VpdGUpIHsKICAgY29uc3Qgc3RkOjpzdHJp
bmcga1Rlc3RzdWl0ZSA9ICJ0ZXN0c3VpdGUiOwogICAqc3RyZWFtIDw8ICIgIDwiIDw8IGtUZXN0
c3VpdGU7Ci0gIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0sIGtUZXN0c3VpdGUsICJuYW1lIiwg
dGVzdF9jYXNlLm5hbWUoKSk7CisgIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0sIGtUZXN0c3Vp
dGUsICJuYW1lIiwgdGVzdF9zdWl0ZS5uYW1lKCkpOwogICBPdXRwdXRYbWxBdHRyaWJ1dGUoc3Ry
ZWFtLCBrVGVzdHN1aXRlLCAidGVzdHMiLAotICAgICAgICAgICAgICAgICAgICAgU3RyZWFtYWJs
ZVRvU3RyaW5nKHRlc3RfY2FzZS5yZXBvcnRhYmxlX3Rlc3RfY291bnQoKSkpOworICAgICAgICAg
ICAgICAgICAgICAgU3RyZWFtYWJsZVRvU3RyaW5nKHRlc3Rfc3VpdGUucmVwb3J0YWJsZV90ZXN0
X2NvdW50KCkpKTsKICAgaWYgKCFHVEVTVF9GTEFHKGxpc3RfdGVzdHMpKSB7CiAgICAgT3V0cHV0
WG1sQXR0cmlidXRlKHN0cmVhbSwga1Rlc3RzdWl0ZSwgImZhaWx1cmVzIiwKLSAgICAgICAgICAg
ICAgICAgICAgICAgU3RyZWFtYWJsZVRvU3RyaW5nKHRlc3RfY2FzZS5mYWlsZWRfdGVzdF9jb3Vu
dCgpKSk7CisgICAgICAgICAgICAgICAgICAgICAgIFN0cmVhbWFibGVUb1N0cmluZyh0ZXN0X3N1
aXRlLmZhaWxlZF90ZXN0X2NvdW50KCkpKTsKICAgICBPdXRwdXRYbWxBdHRyaWJ1dGUoCiAgICAg
ICAgIHN0cmVhbSwga1Rlc3RzdWl0ZSwgImRpc2FibGVkIiwKLSAgICAgICAgU3RyZWFtYWJsZVRv
U3RyaW5nKHRlc3RfY2FzZS5yZXBvcnRhYmxlX2Rpc2FibGVkX3Rlc3RfY291bnQoKSkpOworICAg
ICAgICBTdHJlYW1hYmxlVG9TdHJpbmcodGVzdF9zdWl0ZS5yZXBvcnRhYmxlX2Rpc2FibGVkX3Rl
c3RfY291bnQoKSkpOwogICAgIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0sIGtUZXN0c3VpdGUs
ICJlcnJvcnMiLCAiMCIpOwogICAgIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0sIGtUZXN0c3Vp
dGUsICJ0aW1lIiwKLSAgICAgICAgICAgICAgICAgICAgICAgRm9ybWF0VGltZUluTWlsbGlzQXNT
ZWNvbmRzKHRlc3RfY2FzZS5lbGFwc2VkX3RpbWUoKSkpOwotICAgICpzdHJlYW0gPDwgVGVzdFBy
b3BlcnRpZXNBc1htbEF0dHJpYnV0ZXModGVzdF9jYXNlLmFkX2hvY190ZXN0X3Jlc3VsdCgpKTsK
KyAgICAgICAgICAgICAgICAgICAgICAgRm9ybWF0VGltZUluTWlsbGlzQXNTZWNvbmRzKHRlc3Rf
c3VpdGUuZWxhcHNlZF90aW1lKCkpKTsKKyAgICBPdXRwdXRYbWxBdHRyaWJ1dGUoCisgICAgICAg
IHN0cmVhbSwga1Rlc3RzdWl0ZSwgInRpbWVzdGFtcCIsCisgICAgICAgIEZvcm1hdEVwb2NoVGlt
ZUluTWlsbGlzQXNJc284NjAxKHRlc3Rfc3VpdGUuc3RhcnRfdGltZXN0YW1wKCkpKTsKKyAgICAq
c3RyZWFtIDw8IFRlc3RQcm9wZXJ0aWVzQXNYbWxBdHRyaWJ1dGVzKHRlc3Rfc3VpdGUuYWRfaG9j
X3Rlc3RfcmVzdWx0KCkpOwogICB9CiAgICpzdHJlYW0gPDwgIj5cbiI7Ci0gIGZvciAoaW50IGkg
PSAwOyBpIDwgdGVzdF9jYXNlLnRvdGFsX3Rlc3RfY291bnQoKTsgKytpKSB7Ci0gICAgaWYgKHRl
c3RfY2FzZS5HZXRUZXN0SW5mbyhpKS0+aXNfcmVwb3J0YWJsZSgpKQotICAgICAgT3V0cHV0WG1s
VGVzdEluZm8oc3RyZWFtLCB0ZXN0X2Nhc2UubmFtZSgpLCAqdGVzdF9jYXNlLkdldFRlc3RJbmZv
KGkpKTsKKyAgZm9yIChpbnQgaSA9IDA7IGkgPCB0ZXN0X3N1aXRlLnRvdGFsX3Rlc3RfY291bnQo
KTsgKytpKSB7CisgICAgaWYgKHRlc3Rfc3VpdGUuR2V0VGVzdEluZm8oaSktPmlzX3JlcG9ydGFi
bGUoKSkKKyAgICAgIE91dHB1dFhtbFRlc3RJbmZvKHN0cmVhbSwgdGVzdF9zdWl0ZS5uYW1lKCks
ICp0ZXN0X3N1aXRlLkdldFRlc3RJbmZvKGkpKTsKICAgfQogICAqc3RyZWFtIDw8ICIgIDwvIiA8
PCBrVGVzdHN1aXRlIDw8ICI+XG4iOwogfQpAQCAtMzc5NCwxMSArNDA3NiwxMSBAQCB2b2lkIFht
bFVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6UHJpbnRYbWxVbml0VGVzdChzdGQ6Om9zdHJlYW0qIHN0
cmVhbSwKICAgICAgIHN0cmVhbSwga1Rlc3RzdWl0ZXMsICJkaXNhYmxlZCIsCiAgICAgICBTdHJl
YW1hYmxlVG9TdHJpbmcodW5pdF90ZXN0LnJlcG9ydGFibGVfZGlzYWJsZWRfdGVzdF9jb3VudCgp
KSk7CiAgIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0sIGtUZXN0c3VpdGVzLCAiZXJyb3JzIiwg
IjAiKTsKKyAgT3V0cHV0WG1sQXR0cmlidXRlKHN0cmVhbSwga1Rlc3RzdWl0ZXMsICJ0aW1lIiwK
KyAgICAgICAgICAgICAgICAgICAgIEZvcm1hdFRpbWVJbk1pbGxpc0FzU2Vjb25kcyh1bml0X3Rl
c3QuZWxhcHNlZF90aW1lKCkpKTsKICAgT3V0cHV0WG1sQXR0cmlidXRlKAogICAgICAgc3RyZWFt
LCBrVGVzdHN1aXRlcywgInRpbWVzdGFtcCIsCiAgICAgICBGb3JtYXRFcG9jaFRpbWVJbk1pbGxp
c0FzSXNvODYwMSh1bml0X3Rlc3Quc3RhcnRfdGltZXN0YW1wKCkpKTsKLSAgT3V0cHV0WG1sQXR0
cmlidXRlKHN0cmVhbSwga1Rlc3RzdWl0ZXMsICJ0aW1lIiwKLSAgICAgICAgICAgICAgICAgICAg
IEZvcm1hdFRpbWVJbk1pbGxpc0FzU2Vjb25kcyh1bml0X3Rlc3QuZWxhcHNlZF90aW1lKCkpKTsK
IAogICBpZiAoR1RFU1RfRkxBRyhzaHVmZmxlKSkgewogICAgIE91dHB1dFhtbEF0dHJpYnV0ZShz
dHJlYW0sIGtUZXN0c3VpdGVzLCAicmFuZG9tX3NlZWQiLApAQCAtMzgwOSwzMSArNDA5MSwzMSBA
QCB2b2lkIFhtbFVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6UHJpbnRYbWxVbml0VGVzdChzdGQ6Om9z
dHJlYW0qIHN0cmVhbSwKICAgT3V0cHV0WG1sQXR0cmlidXRlKHN0cmVhbSwga1Rlc3RzdWl0ZXMs
ICJuYW1lIiwgIkFsbFRlc3RzIik7CiAgICpzdHJlYW0gPDwgIj5cbiI7CiAKLSAgZm9yIChpbnQg
aSA9IDA7IGkgPCB1bml0X3Rlc3QudG90YWxfdGVzdF9jYXNlX2NvdW50KCk7ICsraSkgewotICAg
IGlmICh1bml0X3Rlc3QuR2V0VGVzdENhc2UoaSktPnJlcG9ydGFibGVfdGVzdF9jb3VudCgpID4g
MCkKLSAgICAgIFByaW50WG1sVGVzdENhc2Uoc3RyZWFtLCAqdW5pdF90ZXN0LkdldFRlc3RDYXNl
KGkpKTsKKyAgZm9yIChpbnQgaSA9IDA7IGkgPCB1bml0X3Rlc3QudG90YWxfdGVzdF9zdWl0ZV9j
b3VudCgpOyArK2kpIHsKKyAgICBpZiAodW5pdF90ZXN0LkdldFRlc3RTdWl0ZShpKS0+cmVwb3J0
YWJsZV90ZXN0X2NvdW50KCkgPiAwKQorICAgICAgUHJpbnRYbWxUZXN0U3VpdGUoc3RyZWFtLCAq
dW5pdF90ZXN0LkdldFRlc3RTdWl0ZShpKSk7CiAgIH0KICAgKnN0cmVhbSA8PCAiPC8iIDw8IGtU
ZXN0c3VpdGVzIDw8ICI+XG4iOwogfQogCiB2b2lkIFhtbFVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6
UHJpbnRYbWxUZXN0c0xpc3QoCi0gICAgc3RkOjpvc3RyZWFtKiBzdHJlYW0sIGNvbnN0IHN0ZDo6
dmVjdG9yPFRlc3RDYXNlKj4mIHRlc3RfY2FzZXMpIHsKKyAgICBzdGQ6Om9zdHJlYW0qIHN0cmVh
bSwgY29uc3Qgc3RkOjp2ZWN0b3I8VGVzdFN1aXRlKj4mIHRlc3Rfc3VpdGVzKSB7CiAgIGNvbnN0
IHN0ZDo6c3RyaW5nIGtUZXN0c3VpdGVzID0gInRlc3RzdWl0ZXMiOwogCiAgICpzdHJlYW0gPDwg
Ijw/eG1sIHZlcnNpb249XCIxLjBcIiBlbmNvZGluZz1cIlVURi04XCI/PlxuIjsKICAgKnN0cmVh
bSA8PCAiPCIgPDwga1Rlc3RzdWl0ZXM7CiAKICAgaW50IHRvdGFsX3Rlc3RzID0gMDsKLSAgZm9y
IChzaXplX3QgaSA9IDA7IGkgPCB0ZXN0X2Nhc2VzLnNpemUoKTsgKytpKSB7Ci0gICAgdG90YWxf
dGVzdHMgKz0gdGVzdF9jYXNlc1tpXS0+dG90YWxfdGVzdF9jb3VudCgpOworICBmb3IgKGF1dG8g
dGVzdF9zdWl0ZSA6IHRlc3Rfc3VpdGVzKSB7CisgICAgdG90YWxfdGVzdHMgKz0gdGVzdF9zdWl0
ZS0+dG90YWxfdGVzdF9jb3VudCgpOwogICB9CiAgIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0s
IGtUZXN0c3VpdGVzLCAidGVzdHMiLAogICAgICAgICAgICAgICAgICAgICAgU3RyZWFtYWJsZVRv
U3RyaW5nKHRvdGFsX3Rlc3RzKSk7CiAgIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0sIGtUZXN0
c3VpdGVzLCAibmFtZSIsICJBbGxUZXN0cyIpOwogICAqc3RyZWFtIDw8ICI+XG4iOwogCi0gIGZv
ciAoc2l6ZV90IGkgPSAwOyBpIDwgdGVzdF9jYXNlcy5zaXplKCk7ICsraSkgewotICAgIFByaW50
WG1sVGVzdENhc2Uoc3RyZWFtLCAqdGVzdF9jYXNlc1tpXSk7CisgIGZvciAoYXV0byB0ZXN0X3N1
aXRlIDogdGVzdF9zdWl0ZXMpIHsKKyAgICBQcmludFhtbFRlc3RTdWl0ZShzdHJlYW0sICp0ZXN0
X3N1aXRlKTsKICAgfQogICAqc3RyZWFtIDw8ICI8LyIgPDwga1Rlc3RzdWl0ZXMgPDwgIj5cbiI7
CiB9CkBAIC0zODc4LDExICs0MTYwLDExIEBAIGNsYXNzIEpzb25Vbml0VGVzdFJlc3VsdFByaW50
ZXIgOiBwdWJsaWMgRW1wdHlUZXN0RXZlbnRMaXN0ZW5lciB7CiAgcHVibGljOgogICBleHBsaWNp
dCBKc29uVW5pdFRlc3RSZXN1bHRQcmludGVyKGNvbnN0IGNoYXIqIG91dHB1dF9maWxlKTsKIAot
ICB2aXJ0dWFsIHZvaWQgT25UZXN0SXRlcmF0aW9uRW5kKGNvbnN0IFVuaXRUZXN0JiB1bml0X3Rl
c3QsIGludCBpdGVyYXRpb24pOworICB2b2lkIE9uVGVzdEl0ZXJhdGlvbkVuZChjb25zdCBVbml0
VGVzdCYgdW5pdF90ZXN0LCBpbnQgaXRlcmF0aW9uKSBvdmVycmlkZTsKIAogICAvLyBQcmludHMg
YW4gSlNPTiBzdW1tYXJ5IG9mIGFsbCB1bml0IHRlc3RzLgogICBzdGF0aWMgdm9pZCBQcmludEpz
b25UZXN0TGlzdCg6OnN0ZDo6b3N0cmVhbSogc3RyZWFtLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBzdGQ6OnZlY3RvcjxUZXN0Q2FzZSo+JiB0ZXN0X2Nhc2VzKTsKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RkOjp2ZWN0b3I8VGVzdFN1aXRl
Kj4mIHRlc3Rfc3VpdGVzKTsKIAogIHByaXZhdGU6CiAgIC8vIFJldHVybnMgYW4gSlNPTi1lc2Nh
cGVkIGNvcHkgb2YgdGhlIGlucHV0IHN0cmluZyBzdHIuCkBAIC0zOTA1LDEyICs0MTg3LDEyIEBA
IGNsYXNzIEpzb25Vbml0VGVzdFJlc3VsdFByaW50ZXIgOiBwdWJsaWMgRW1wdHlUZXN0RXZlbnRM
aXN0ZW5lciB7CiAKICAgLy8gU3RyZWFtcyBhIEpTT04gcmVwcmVzZW50YXRpb24gb2YgYSBUZXN0
SW5mbyBvYmplY3QuCiAgIHN0YXRpYyB2b2lkIE91dHB1dEpzb25UZXN0SW5mbyg6OnN0ZDo6b3N0
cmVhbSogc3RyZWFtLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hh
ciogdGVzdF9jYXNlX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBjaGFyKiB0ZXN0X3N1aXRlX25hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBUZXN0SW5mbyYgdGVzdF9pbmZvKTsKIAotICAvLyBQcmludHMgYSBKU09OIHJlcHJl
c2VudGF0aW9uIG9mIGEgVGVzdENhc2Ugb2JqZWN0Ci0gIHN0YXRpYyB2b2lkIFByaW50SnNvblRl
c3RDYXNlKDo6c3RkOjpvc3RyZWFtKiBzdHJlYW0sCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IFRlc3RDYXNlJiB0ZXN0X2Nhc2UpOworICAvLyBQcmludHMgYSBKU09OIHJl
cHJlc2VudGF0aW9uIG9mIGEgVGVzdFN1aXRlIG9iamVjdAorICBzdGF0aWMgdm9pZCBQcmludEpz
b25UZXN0U3VpdGUoOjpzdGQ6Om9zdHJlYW0qIHN0cmVhbSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IFRlc3RTdWl0ZSYgdGVzdF9zdWl0ZSk7CiAKICAgLy8gUHJpbnRz
IGEgSlNPTiBzdW1tYXJ5IG9mIHVuaXRfdGVzdCB0byBvdXRwdXQgc3RyZWFtIG91dC4KICAgc3Rh
dGljIHZvaWQgUHJpbnRKc29uVW5pdFRlc3QoOjpzdGQ6Om9zdHJlYW0qIHN0cmVhbSwKQEAgLTQw
MDksNyArNDI5MSw3IEBAIHN0YXRpYyBzdGQ6OnN0cmluZyBGb3JtYXRFcG9jaFRpbWVJbk1pbGxp
c0FzUkZDMzMzOShUaW1lSW5NaWxsaXMgbXMpIHsKICAgICAgIFN0cmluZzo6Rm9ybWF0SW50V2lk
dGgyKHRpbWVfc3RydWN0LnRtX3NlYykgKyAiWiI7CiB9CiAKLXN0YXRpYyBpbmxpbmUgc3RkOjpz
dHJpbmcgSW5kZW50KGludCB3aWR0aCkgeworc3RhdGljIGlubGluZSBzdGQ6OnN0cmluZyBJbmRl
bnQoc2l6ZV90IHdpZHRoKSB7CiAgIHJldHVybiBzdGQ6OnN0cmluZyh3aWR0aCwgJyAnKTsKIH0K
IApAQCAtNDAyMSw3ICs0MzAzLDcgQEAgdm9pZCBKc29uVW5pdFRlc3RSZXN1bHRQcmludGVyOjpP
dXRwdXRKc29uS2V5KAogICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBpbmRlbnQsCiAgICAgYm9vbCBj
b21tYSkgewogICBjb25zdCBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4mIGFsbG93ZWRfbmFtZXMg
PQotICAgICAgR2V0UmVzZXJ2ZWRBdHRyaWJ1dGVzRm9yRWxlbWVudChlbGVtZW50X25hbWUpOwor
ICAgICAgR2V0UmVzZXJ2ZWRPdXRwdXRBdHRyaWJ1dGVzRm9yRWxlbWVudChlbGVtZW50X25hbWUp
OwogCiAgIEdURVNUX0NIRUNLXyhzdGQ6OmZpbmQoYWxsb3dlZF9uYW1lcy5iZWdpbigpLCBhbGxv
d2VkX25hbWVzLmVuZCgpLCBuYW1lKSAhPQogICAgICAgICAgICAgICAgICAgIGFsbG93ZWRfbmFt
ZXMuZW5kKCkpCkBAIC00MDQxLDcgKzQzMjMsNyBAQCB2b2lkIEpzb25Vbml0VGVzdFJlc3VsdFBy
aW50ZXI6Ok91dHB1dEpzb25LZXkoCiAgICAgY29uc3Qgc3RkOjpzdHJpbmcmIGluZGVudCwKICAg
ICBib29sIGNvbW1hKSB7CiAgIGNvbnN0IHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiYgYWxsb3dl
ZF9uYW1lcyA9Ci0gICAgICBHZXRSZXNlcnZlZEF0dHJpYnV0ZXNGb3JFbGVtZW50KGVsZW1lbnRf
bmFtZSk7CisgICAgICBHZXRSZXNlcnZlZE91dHB1dEF0dHJpYnV0ZXNGb3JFbGVtZW50KGVsZW1l
bnRfbmFtZSk7CiAKICAgR1RFU1RfQ0hFQ0tfKHN0ZDo6ZmluZChhbGxvd2VkX25hbWVzLmJlZ2lu
KCksIGFsbG93ZWRfbmFtZXMuZW5kKCksIG5hbWUpICE9CiAgICAgICAgICAgICAgICAgICAgYWxs
b3dlZF9uYW1lcy5lbmQoKSkKQEAgLTQwNTUsMzUgKzQzMzcsNDQgQEAgdm9pZCBKc29uVW5pdFRl
c3RSZXN1bHRQcmludGVyOjpPdXRwdXRKc29uS2V5KAogCiAvLyBQcmludHMgYSBKU09OIHJlcHJl
c2VudGF0aW9uIG9mIGEgVGVzdEluZm8gb2JqZWN0Lgogdm9pZCBKc29uVW5pdFRlc3RSZXN1bHRQ
cmludGVyOjpPdXRwdXRKc29uVGVzdEluZm8oOjpzdGQ6Om9zdHJlYW0qIHN0cmVhbSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIq
IHRlc3RfY2FzZV9uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY29uc3QgY2hhciogdGVzdF9zdWl0ZV9uYW1lLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVGVzdEluZm8mIHRlc3Rf
aW5mbykgewogICBjb25zdCBUZXN0UmVzdWx0JiByZXN1bHQgPSAqdGVzdF9pbmZvLnJlc3VsdCgp
OwotICBjb25zdCBzdGQ6OnN0cmluZyBrVGVzdGNhc2UgPSAidGVzdGNhc2UiOworICBjb25zdCBz
dGQ6OnN0cmluZyBrVGVzdHN1aXRlID0gInRlc3RjYXNlIjsKICAgY29uc3Qgc3RkOjpzdHJpbmcg
a0luZGVudCA9IEluZGVudCgxMCk7CiAKICAgKnN0cmVhbSA8PCBJbmRlbnQoOCkgPDwgIntcbiI7
Ci0gIE91dHB1dEpzb25LZXkoc3RyZWFtLCBrVGVzdGNhc2UsICJuYW1lIiwgdGVzdF9pbmZvLm5h
bWUoKSwga0luZGVudCk7CisgIE91dHB1dEpzb25LZXkoc3RyZWFtLCBrVGVzdHN1aXRlLCAibmFt
ZSIsIHRlc3RfaW5mby5uYW1lKCksIGtJbmRlbnQpOwogCi0gIGlmICh0ZXN0X2luZm8udmFsdWVf
cGFyYW0oKSAhPSBOVUxMKSB7Ci0gICAgT3V0cHV0SnNvbktleShzdHJlYW0sIGtUZXN0Y2FzZSwg
InZhbHVlX3BhcmFtIiwKLSAgICAgICAgICAgICAgICAgIHRlc3RfaW5mby52YWx1ZV9wYXJhbSgp
LCBrSW5kZW50KTsKKyAgaWYgKHRlc3RfaW5mby52YWx1ZV9wYXJhbSgpICE9IG51bGxwdHIpIHsK
KyAgICBPdXRwdXRKc29uS2V5KHN0cmVhbSwga1Rlc3RzdWl0ZSwgInZhbHVlX3BhcmFtIiwgdGVz
dF9pbmZvLnZhbHVlX3BhcmFtKCksCisgICAgICAgICAgICAgICAgICBrSW5kZW50KTsKICAgfQot
ICBpZiAodGVzdF9pbmZvLnR5cGVfcGFyYW0oKSAhPSBOVUxMKSB7Ci0gICAgT3V0cHV0SnNvbktl
eShzdHJlYW0sIGtUZXN0Y2FzZSwgInR5cGVfcGFyYW0iLCB0ZXN0X2luZm8udHlwZV9wYXJhbSgp
LAorICBpZiAodGVzdF9pbmZvLnR5cGVfcGFyYW0oKSAhPSBudWxscHRyKSB7CisgICAgT3V0cHV0
SnNvbktleShzdHJlYW0sIGtUZXN0c3VpdGUsICJ0eXBlX3BhcmFtIiwgdGVzdF9pbmZvLnR5cGVf
cGFyYW0oKSwKICAgICAgICAgICAgICAgICAgIGtJbmRlbnQpOwogICB9CiAgIGlmIChHVEVTVF9G
TEFHKGxpc3RfdGVzdHMpKSB7Ci0gICAgT3V0cHV0SnNvbktleShzdHJlYW0sIGtUZXN0Y2FzZSwg
ImZpbGUiLCB0ZXN0X2luZm8uZmlsZSgpLCBrSW5kZW50KTsKLSAgICBPdXRwdXRKc29uS2V5KHN0
cmVhbSwga1Rlc3RjYXNlLCAibGluZSIsIHRlc3RfaW5mby5saW5lKCksIGtJbmRlbnQsIGZhbHNl
KTsKKyAgICBPdXRwdXRKc29uS2V5KHN0cmVhbSwga1Rlc3RzdWl0ZSwgImZpbGUiLCB0ZXN0X2lu
Zm8uZmlsZSgpLCBrSW5kZW50KTsKKyAgICBPdXRwdXRKc29uS2V5KHN0cmVhbSwga1Rlc3RzdWl0
ZSwgImxpbmUiLCB0ZXN0X2luZm8ubGluZSgpLCBrSW5kZW50LCBmYWxzZSk7CiAgICAgKnN0cmVh
bSA8PCAiXG4iIDw8IEluZGVudCg4KSA8PCAifSI7CiAgICAgcmV0dXJuOwogICB9CiAKLSAgT3V0
cHV0SnNvbktleShzdHJlYW0sIGtUZXN0Y2FzZSwgInN0YXR1cyIsCisgIE91dHB1dEpzb25LZXko
c3RyZWFtLCBrVGVzdHN1aXRlLCAic3RhdHVzIiwKICAgICAgICAgICAgICAgICB0ZXN0X2luZm8u
c2hvdWxkX3J1bigpID8gIlJVTiIgOiAiTk9UUlVOIiwga0luZGVudCk7Ci0gIE91dHB1dEpzb25L
ZXkoc3RyZWFtLCBrVGVzdGNhc2UsICJ0aW1lIiwKKyAgT3V0cHV0SnNvbktleShzdHJlYW0sIGtU
ZXN0c3VpdGUsICJyZXN1bHQiLAorICAgICAgICAgICAgICAgIHRlc3RfaW5mby5zaG91bGRfcnVu
KCkKKyAgICAgICAgICAgICAgICAgICAgPyAocmVzdWx0LlNraXBwZWQoKSA/ICJTS0lQUEVEIiA6
ICJDT01QTEVURUQiKQorICAgICAgICAgICAgICAgICAgICA6ICJTVVBQUkVTU0VEIiwKKyAgICAg
ICAgICAgICAgICBrSW5kZW50KTsKKyAgT3V0cHV0SnNvbktleShzdHJlYW0sIGtUZXN0c3VpdGUs
ICJ0aW1lc3RhbXAiLAorICAgICAgICAgICAgICAgIEZvcm1hdEVwb2NoVGltZUluTWlsbGlzQXNS
RkMzMzM5KHJlc3VsdC5zdGFydF90aW1lc3RhbXAoKSksCisgICAgICAgICAgICAgICAga0luZGVu
dCk7CisgIE91dHB1dEpzb25LZXkoc3RyZWFtLCBrVGVzdHN1aXRlLCAidGltZSIsCiAgICAgICAg
ICAgICAgICAgRm9ybWF0VGltZUluTWlsbGlzQXNEdXJhdGlvbihyZXN1bHQuZWxhcHNlZF90aW1l
KCkpLCBrSW5kZW50KTsKLSAgT3V0cHV0SnNvbktleShzdHJlYW0sIGtUZXN0Y2FzZSwgImNsYXNz
bmFtZSIsIHRlc3RfY2FzZV9uYW1lLCBrSW5kZW50LCBmYWxzZSk7CisgIE91dHB1dEpzb25LZXko
c3RyZWFtLCBrVGVzdHN1aXRlLCAiY2xhc3NuYW1lIiwgdGVzdF9zdWl0ZV9uYW1lLCBrSW5kZW50
LAorICAgICAgICAgICAgICAgIGZhbHNlKTsKICAgKnN0cmVhbSA8PCBUZXN0UHJvcGVydGllc0Fz
SnNvbihyZXN1bHQsIGtJbmRlbnQpOwogCiAgIGludCBmYWlsdXJlcyA9IDA7CkBAIC00MTEwLDQw
ICs0NDAxLDQ0IEBAIHZvaWQgSnNvblVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6T3V0cHV0SnNvblRl
c3RJbmZvKDo6c3RkOjpvc3RyZWFtKiBzdHJlYW0sCiAgICpzdHJlYW0gPDwgIlxuIiA8PCBJbmRl
bnQoOCkgPDwgIn0iOwogfQogCi0vLyBQcmludHMgYW4gSlNPTiByZXByZXNlbnRhdGlvbiBvZiBh
IFRlc3RDYXNlIG9iamVjdAotdm9pZCBKc29uVW5pdFRlc3RSZXN1bHRQcmludGVyOjpQcmludEpz
b25UZXN0Q2FzZShzdGQ6Om9zdHJlYW0qIHN0cmVhbSwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVGVzdENhc2UmIHRlc3RfY2FzZSkgewor
Ly8gUHJpbnRzIGFuIEpTT04gcmVwcmVzZW50YXRpb24gb2YgYSBUZXN0U3VpdGUgb2JqZWN0Cit2
b2lkIEpzb25Vbml0VGVzdFJlc3VsdFByaW50ZXI6OlByaW50SnNvblRlc3RTdWl0ZSgKKyAgICBz
dGQ6Om9zdHJlYW0qIHN0cmVhbSwgY29uc3QgVGVzdFN1aXRlJiB0ZXN0X3N1aXRlKSB7CiAgIGNv
bnN0IHN0ZDo6c3RyaW5nIGtUZXN0c3VpdGUgPSAidGVzdHN1aXRlIjsKICAgY29uc3Qgc3RkOjpz
dHJpbmcga0luZGVudCA9IEluZGVudCg2KTsKIAogICAqc3RyZWFtIDw8IEluZGVudCg0KSA8PCAi
e1xuIjsKLSAgT3V0cHV0SnNvbktleShzdHJlYW0sIGtUZXN0c3VpdGUsICJuYW1lIiwgdGVzdF9j
YXNlLm5hbWUoKSwga0luZGVudCk7Ci0gIE91dHB1dEpzb25LZXkoc3RyZWFtLCBrVGVzdHN1aXRl
LCAidGVzdHMiLCB0ZXN0X2Nhc2UucmVwb3J0YWJsZV90ZXN0X2NvdW50KCksCisgIE91dHB1dEpz
b25LZXkoc3RyZWFtLCBrVGVzdHN1aXRlLCAibmFtZSIsIHRlc3Rfc3VpdGUubmFtZSgpLCBrSW5k
ZW50KTsKKyAgT3V0cHV0SnNvbktleShzdHJlYW0sIGtUZXN0c3VpdGUsICJ0ZXN0cyIsIHRlc3Rf
c3VpdGUucmVwb3J0YWJsZV90ZXN0X2NvdW50KCksCiAgICAgICAgICAgICAgICAga0luZGVudCk7
CiAgIGlmICghR1RFU1RfRkxBRyhsaXN0X3Rlc3RzKSkgewotICAgIE91dHB1dEpzb25LZXkoc3Ry
ZWFtLCBrVGVzdHN1aXRlLCAiZmFpbHVyZXMiLCB0ZXN0X2Nhc2UuZmFpbGVkX3Rlc3RfY291bnQo
KSwKLSAgICAgICAgICAgICAgICAgIGtJbmRlbnQpOworICAgIE91dHB1dEpzb25LZXkoc3RyZWFt
LCBrVGVzdHN1aXRlLCAiZmFpbHVyZXMiLAorICAgICAgICAgICAgICAgICAgdGVzdF9zdWl0ZS5m
YWlsZWRfdGVzdF9jb3VudCgpLCBrSW5kZW50KTsKICAgICBPdXRwdXRKc29uS2V5KHN0cmVhbSwg
a1Rlc3RzdWl0ZSwgImRpc2FibGVkIiwKLSAgICAgICAgICAgICAgICAgIHRlc3RfY2FzZS5yZXBv
cnRhYmxlX2Rpc2FibGVkX3Rlc3RfY291bnQoKSwga0luZGVudCk7CisgICAgICAgICAgICAgICAg
ICB0ZXN0X3N1aXRlLnJlcG9ydGFibGVfZGlzYWJsZWRfdGVzdF9jb3VudCgpLCBrSW5kZW50KTsK
ICAgICBPdXRwdXRKc29uS2V5KHN0cmVhbSwga1Rlc3RzdWl0ZSwgImVycm9ycyIsIDAsIGtJbmRl
bnQpOworICAgIE91dHB1dEpzb25LZXkoCisgICAgICAgIHN0cmVhbSwga1Rlc3RzdWl0ZSwgInRp
bWVzdGFtcCIsCisgICAgICAgIEZvcm1hdEVwb2NoVGltZUluTWlsbGlzQXNSRkMzMzM5KHRlc3Rf
c3VpdGUuc3RhcnRfdGltZXN0YW1wKCkpLAorICAgICAgICBrSW5kZW50KTsKICAgICBPdXRwdXRK
c29uS2V5KHN0cmVhbSwga1Rlc3RzdWl0ZSwgInRpbWUiLAotICAgICAgICAgICAgICAgICAgRm9y
bWF0VGltZUluTWlsbGlzQXNEdXJhdGlvbih0ZXN0X2Nhc2UuZWxhcHNlZF90aW1lKCkpLAorICAg
ICAgICAgICAgICAgICAgRm9ybWF0VGltZUluTWlsbGlzQXNEdXJhdGlvbih0ZXN0X3N1aXRlLmVs
YXBzZWRfdGltZSgpKSwKICAgICAgICAgICAgICAgICAgIGtJbmRlbnQsIGZhbHNlKTsKLSAgICAq
c3RyZWFtIDw8IFRlc3RQcm9wZXJ0aWVzQXNKc29uKHRlc3RfY2FzZS5hZF9ob2NfdGVzdF9yZXN1
bHQoKSwga0luZGVudCkKKyAgICAqc3RyZWFtIDw8IFRlc3RQcm9wZXJ0aWVzQXNKc29uKHRlc3Rf
c3VpdGUuYWRfaG9jX3Rlc3RfcmVzdWx0KCksIGtJbmRlbnQpCiAgICAgICAgICAgICA8PCAiLFxu
IjsKICAgfQogCiAgICpzdHJlYW0gPDwga0luZGVudCA8PCAiXCIiIDw8IGtUZXN0c3VpdGUgPDwg
IlwiOiBbXG4iOwogCiAgIGJvb2wgY29tbWEgPSBmYWxzZTsKLSAgZm9yIChpbnQgaSA9IDA7IGkg
PCB0ZXN0X2Nhc2UudG90YWxfdGVzdF9jb3VudCgpOyArK2kpIHsKLSAgICBpZiAodGVzdF9jYXNl
LkdldFRlc3RJbmZvKGkpLT5pc19yZXBvcnRhYmxlKCkpIHsKKyAgZm9yIChpbnQgaSA9IDA7IGkg
PCB0ZXN0X3N1aXRlLnRvdGFsX3Rlc3RfY291bnQoKTsgKytpKSB7CisgICAgaWYgKHRlc3Rfc3Vp
dGUuR2V0VGVzdEluZm8oaSktPmlzX3JlcG9ydGFibGUoKSkgewogICAgICAgaWYgKGNvbW1hKSB7
CiAgICAgICAgICpzdHJlYW0gPDwgIixcbiI7CiAgICAgICB9IGVsc2UgewogICAgICAgICBjb21t
YSA9IHRydWU7CiAgICAgICB9Ci0gICAgICBPdXRwdXRKc29uVGVzdEluZm8oc3RyZWFtLCB0ZXN0
X2Nhc2UubmFtZSgpLCAqdGVzdF9jYXNlLkdldFRlc3RJbmZvKGkpKTsKKyAgICAgIE91dHB1dEpz
b25UZXN0SW5mbyhzdHJlYW0sIHRlc3Rfc3VpdGUubmFtZSgpLCAqdGVzdF9zdWl0ZS5HZXRUZXN0
SW5mbyhpKSk7CiAgICAgfQogICB9CiAgICpzdHJlYW0gPDwgIlxuIiA8PCBrSW5kZW50IDw8ICJd
XG4iIDw8IEluZGVudCg0KSA8PCAifSI7CkBAIC00MTgxLDE0ICs0NDc2LDE0IEBAIHZvaWQgSnNv
blVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6UHJpbnRKc29uVW5pdFRlc3Qoc3RkOjpvc3RyZWFtKiBz
dHJlYW0sCiAgICpzdHJlYW0gPDwga0luZGVudCA8PCAiXCIiIDw8IGtUZXN0c3VpdGVzIDw8ICJc
IjogW1xuIjsKIAogICBib29sIGNvbW1hID0gZmFsc2U7Ci0gIGZvciAoaW50IGkgPSAwOyBpIDwg
dW5pdF90ZXN0LnRvdGFsX3Rlc3RfY2FzZV9jb3VudCgpOyArK2kpIHsKLSAgICBpZiAodW5pdF90
ZXN0LkdldFRlc3RDYXNlKGkpLT5yZXBvcnRhYmxlX3Rlc3RfY291bnQoKSA+IDApIHsKKyAgZm9y
IChpbnQgaSA9IDA7IGkgPCB1bml0X3Rlc3QudG90YWxfdGVzdF9zdWl0ZV9jb3VudCgpOyArK2kp
IHsKKyAgICBpZiAodW5pdF90ZXN0LkdldFRlc3RTdWl0ZShpKS0+cmVwb3J0YWJsZV90ZXN0X2Nv
dW50KCkgPiAwKSB7CiAgICAgICBpZiAoY29tbWEpIHsKICAgICAgICAgKnN0cmVhbSA8PCAiLFxu
IjsKICAgICAgIH0gZWxzZSB7CiAgICAgICAgIGNvbW1hID0gdHJ1ZTsKICAgICAgIH0KLSAgICAg
IFByaW50SnNvblRlc3RDYXNlKHN0cmVhbSwgKnVuaXRfdGVzdC5HZXRUZXN0Q2FzZShpKSk7Cisg
ICAgICBQcmludEpzb25UZXN0U3VpdGUoc3RyZWFtLCAqdW5pdF90ZXN0LkdldFRlc3RTdWl0ZShp
KSk7CiAgICAgfQogICB9CiAKQEAgLTQxOTYsMjQgKzQ0OTEsMjQgQEAgdm9pZCBKc29uVW5pdFRl
c3RSZXN1bHRQcmludGVyOjpQcmludEpzb25Vbml0VGVzdChzdGQ6Om9zdHJlYW0qIHN0cmVhbSwK
IH0KIAogdm9pZCBKc29uVW5pdFRlc3RSZXN1bHRQcmludGVyOjpQcmludEpzb25UZXN0TGlzdCgK
LSAgICBzdGQ6Om9zdHJlYW0qIHN0cmVhbSwgY29uc3Qgc3RkOjp2ZWN0b3I8VGVzdENhc2UqPiYg
dGVzdF9jYXNlcykgeworICAgIHN0ZDo6b3N0cmVhbSogc3RyZWFtLCBjb25zdCBzdGQ6OnZlY3Rv
cjxUZXN0U3VpdGUqPiYgdGVzdF9zdWl0ZXMpIHsKICAgY29uc3Qgc3RkOjpzdHJpbmcga1Rlc3Rz
dWl0ZXMgPSAidGVzdHN1aXRlcyI7CiAgIGNvbnN0IHN0ZDo6c3RyaW5nIGtJbmRlbnQgPSBJbmRl
bnQoMik7CiAgICpzdHJlYW0gPDwgIntcbiI7CiAgIGludCB0b3RhbF90ZXN0cyA9IDA7Ci0gIGZv
ciAoc2l6ZV90IGkgPSAwOyBpIDwgdGVzdF9jYXNlcy5zaXplKCk7ICsraSkgewotICAgIHRvdGFs
X3Rlc3RzICs9IHRlc3RfY2FzZXNbaV0tPnRvdGFsX3Rlc3RfY291bnQoKTsKKyAgZm9yIChhdXRv
IHRlc3Rfc3VpdGUgOiB0ZXN0X3N1aXRlcykgeworICAgIHRvdGFsX3Rlc3RzICs9IHRlc3Rfc3Vp
dGUtPnRvdGFsX3Rlc3RfY291bnQoKTsKICAgfQogICBPdXRwdXRKc29uS2V5KHN0cmVhbSwga1Rl
c3RzdWl0ZXMsICJ0ZXN0cyIsIHRvdGFsX3Rlc3RzLCBrSW5kZW50KTsKIAogICBPdXRwdXRKc29u
S2V5KHN0cmVhbSwga1Rlc3RzdWl0ZXMsICJuYW1lIiwgIkFsbFRlc3RzIiwga0luZGVudCk7CiAg
ICpzdHJlYW0gPDwga0luZGVudCA8PCAiXCIiIDw8IGtUZXN0c3VpdGVzIDw8ICJcIjogW1xuIjsK
IAotICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHRlc3RfY2FzZXMuc2l6ZSgpOyArK2kpIHsKKyAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCB0ZXN0X3N1aXRlcy5zaXplKCk7ICsraSkgewogICAgIGlm
IChpICE9IDApIHsKICAgICAgICpzdHJlYW0gPDwgIixcbiI7CiAgICAgfQotICAgIFByaW50SnNv
blRlc3RDYXNlKHN0cmVhbSwgKnRlc3RfY2FzZXNbaV0pOworICAgIFByaW50SnNvblRlc3RTdWl0
ZShzdHJlYW0sICp0ZXN0X3N1aXRlc1tpXSk7CiAgIH0KIAogICAqc3RyZWFtIDw8ICJcbiIKQEAg
LTQyNjksNyArNDU2NCw3IEBAIHZvaWQgU3RyZWFtaW5nTGlzdGVuZXI6OlNvY2tldFdyaXRlcjo6
TWFrZUNvbm5lY3Rpb24oKSB7CiAgIG1lbXNldCgmaGludHMsIDAsIHNpemVvZihoaW50cykpOwog
ICBoaW50cy5haV9mYW1pbHkgPSBBRl9VTlNQRUM7ICAgIC8vIFRvIGFsbG93IGJvdGggSVB2NCBh
bmQgSVB2NiBhZGRyZXNzZXMuCiAgIGhpbnRzLmFpX3NvY2t0eXBlID0gU09DS19TVFJFQU07Ci0g
IGFkZHJpbmZvKiBzZXJ2aW5mbyA9IE5VTEw7CisgIGFkZHJpbmZvKiBzZXJ2aW5mbyA9IG51bGxw
dHI7CiAKICAgLy8gVXNlIHRoZSBnZXRhZGRyaW5mbygpIHRvIGdldCBhIGxpbmtlZCBsaXN0IG9m
IElQIGFkZHJlc3NlcyBmb3IKICAgLy8gdGhlIGdpdmVuIGhvc3QgbmFtZS4KQEAgLTQyODEsNyAr
NDU3Niw3IEBAIHZvaWQgU3RyZWFtaW5nTGlzdGVuZXI6OlNvY2tldFdyaXRlcjo6TWFrZUNvbm5l
Y3Rpb24oKSB7CiAgIH0KIAogICAvLyBMb29wIHRocm91Z2ggYWxsIHRoZSByZXN1bHRzIGFuZCBj
b25uZWN0IHRvIHRoZSBmaXJzdCB3ZSBjYW4uCi0gIGZvciAoYWRkcmluZm8qIGN1cl9hZGRyID0g
c2VydmluZm87IHNvY2tmZF8gPT0gLTEgJiYgY3VyX2FkZHIgIT0gTlVMTDsKKyAgZm9yIChhZGRy
aW5mbyogY3VyX2FkZHIgPSBzZXJ2aW5mbzsgc29ja2ZkXyA9PSAtMSAmJiBjdXJfYWRkciAhPSBu
dWxscHRyOwogICAgICAgIGN1cl9hZGRyID0gY3VyX2FkZHItPmFpX25leHQpIHsKICAgICBzb2Nr
ZmRfID0gc29ja2V0KAogICAgICAgICBjdXJfYWRkci0+YWlfZmFtaWx5LCBjdXJfYWRkci0+YWlf
c29ja3R5cGUsIGN1cl9hZGRyLT5haV9wcm90b2NvbCk7CkBAIC00MzkxLDYgKzQ2ODYsNyBAQCBj
bGFzcyBTY29wZWRQcmVtYXR1cmVFeGl0RmlsZSB7CiAgIH0KIAogICB+U2NvcGVkUHJlbWF0dXJl
RXhpdEZpbGUoKSB7CisjaWYgIWRlZmluZWQgR1RFU1RfT1NfRVNQODI2NgogICAgIGlmICghcHJl
bWF0dXJlX2V4aXRfZmlsZXBhdGhfLmVtcHR5KCkpIHsKICAgICAgIGludCByZXR2YWwgPSByZW1v
dmUocHJlbWF0dXJlX2V4aXRfZmlsZXBhdGhfLmNfc3RyKCkpOwogICAgICAgaWYgKHJldHZhbCkg
ewpAQCAtNDM5OSw2ICs0Njk1LDcgQEAgY2xhc3MgU2NvcGVkUHJlbWF0dXJlRXhpdEZpbGUgewog
ICAgICAgICAgICAgICAgICAgICAgICAgICA8PCByZXR2YWw7CiAgICAgICB9CiAgICAgfQorI2Vu
ZGlmCiAgIH0KIAogIHByaXZhdGU6CkBAIC00NDEzLDkgKzQ3MTAsOCBAQCBjbGFzcyBTY29wZWRQ
cmVtYXR1cmVFeGl0RmlsZSB7CiAKIFRlc3RFdmVudExpc3RlbmVyczo6VGVzdEV2ZW50TGlzdGVu
ZXJzKCkKICAgICA6IHJlcGVhdGVyXyhuZXcgaW50ZXJuYWw6OlRlc3RFdmVudFJlcGVhdGVyKCkp
LAotICAgICAgZGVmYXVsdF9yZXN1bHRfcHJpbnRlcl8oTlVMTCksCi0gICAgICBkZWZhdWx0X3ht
bF9nZW5lcmF0b3JfKE5VTEwpIHsKLX0KKyAgICAgIGRlZmF1bHRfcmVzdWx0X3ByaW50ZXJfKG51
bGxwdHIpLAorICAgICAgZGVmYXVsdF94bWxfZ2VuZXJhdG9yXyhudWxscHRyKSB7fQogCiBUZXN0
RXZlbnRMaXN0ZW5lcnM6On5UZXN0RXZlbnRMaXN0ZW5lcnMoKSB7IGRlbGV0ZSByZXBlYXRlcl87
IH0KIApAQCAtNDQzMiw5ICs0NzI4LDkgQEAgdm9pZCBUZXN0RXZlbnRMaXN0ZW5lcnM6OkFwcGVu
ZChUZXN0RXZlbnRMaXN0ZW5lciogbGlzdGVuZXIpIHsKIC8vIE5VTEwgaWYgdGhlIGxpc3RlbmVy
IGlzIG5vdCBmb3VuZCBpbiB0aGUgbGlzdC4KIFRlc3RFdmVudExpc3RlbmVyKiBUZXN0RXZlbnRM
aXN0ZW5lcnM6OlJlbGVhc2UoVGVzdEV2ZW50TGlzdGVuZXIqIGxpc3RlbmVyKSB7CiAgIGlmIChs
aXN0ZW5lciA9PSBkZWZhdWx0X3Jlc3VsdF9wcmludGVyXykKLSAgICBkZWZhdWx0X3Jlc3VsdF9w
cmludGVyXyA9IE5VTEw7CisgICAgZGVmYXVsdF9yZXN1bHRfcHJpbnRlcl8gPSBudWxscHRyOwog
ICBlbHNlIGlmIChsaXN0ZW5lciA9PSBkZWZhdWx0X3htbF9nZW5lcmF0b3JfKQotICAgIGRlZmF1
bHRfeG1sX2dlbmVyYXRvcl8gPSBOVUxMOworICAgIGRlZmF1bHRfeG1sX2dlbmVyYXRvcl8gPSBu
dWxscHRyOwogICByZXR1cm4gcmVwZWF0ZXJfLT5SZWxlYXNlKGxpc3RlbmVyKTsKIH0KIApAQCAt
NDQ1Myw4ICs0NzQ5LDcgQEAgdm9pZCBUZXN0RXZlbnRMaXN0ZW5lcnM6OlNldERlZmF1bHRSZXN1
bHRQcmludGVyKFRlc3RFdmVudExpc3RlbmVyKiBsaXN0ZW5lcikgewogICAgIC8vIGxpc3QuCiAg
ICAgZGVsZXRlIFJlbGVhc2UoZGVmYXVsdF9yZXN1bHRfcHJpbnRlcl8pOwogICAgIGRlZmF1bHRf
cmVzdWx0X3ByaW50ZXJfID0gbGlzdGVuZXI7Ci0gICAgaWYgKGxpc3RlbmVyICE9IE5VTEwpCi0g
ICAgICBBcHBlbmQobGlzdGVuZXIpOworICAgIGlmIChsaXN0ZW5lciAhPSBudWxscHRyKSBBcHBl
bmQobGlzdGVuZXIpOwogICB9CiB9CiAKQEAgLTQ0NjksOCArNDc2NCw3IEBAIHZvaWQgVGVzdEV2
ZW50TGlzdGVuZXJzOjpTZXREZWZhdWx0WG1sR2VuZXJhdG9yKFRlc3RFdmVudExpc3RlbmVyKiBs
aXN0ZW5lcikgewogICAgIC8vIGxpc3QuCiAgICAgZGVsZXRlIFJlbGVhc2UoZGVmYXVsdF94bWxf
Z2VuZXJhdG9yXyk7CiAgICAgZGVmYXVsdF94bWxfZ2VuZXJhdG9yXyA9IGxpc3RlbmVyOwotICAg
IGlmIChsaXN0ZW5lciAhPSBOVUxMKQotICAgICAgQXBwZW5kKGxpc3RlbmVyKTsKKyAgICBpZiAo
bGlzdGVuZXIgIT0gbnVsbHB0cikgQXBwZW5kKGxpc3RlbmVyKTsKICAgfQogfQogCkBAIC00NDk0
LDUyICs0Nzg4LDY2IEBAIHZvaWQgVGVzdEV2ZW50TGlzdGVuZXJzOjpTdXBwcmVzc0V2ZW50Rm9y
d2FyZGluZygpIHsKIC8vIGNhbGwgdGhpcyBiZWZvcmUgbWFpbigpIHN0YXJ0cywgZnJvbSB3aGlj
aCBwb2ludCBvbiB0aGUgcmV0dXJuCiAvLyB2YWx1ZSB3aWxsIG5ldmVyIGNoYW5nZS4KIFVuaXRU
ZXN0KiBVbml0VGVzdDo6R2V0SW5zdGFuY2UoKSB7Ci0gIC8vIFdoZW4gY29tcGlsZWQgd2l0aCBN
U1ZDIDcuMSBpbiBvcHRpbWl6ZWQgbW9kZSwgZGVzdHJveWluZyB0aGUKLSAgLy8gVW5pdFRlc3Qg
b2JqZWN0IHVwb24gZXhpdGluZyB0aGUgcHJvZ3JhbSBtZXNzZXMgdXAgdGhlIGV4aXQgY29kZSwK
LSAgLy8gY2F1c2luZyBzdWNjZXNzZnVsIHRlc3RzIHRvIGFwcGVhciBmYWlsZWQuICBXZSBoYXZl
IHRvIHVzZSBhCi0gIC8vIGRpZmZlcmVudCBpbXBsZW1lbnRhdGlvbiBpbiB0aGlzIGNhc2UgdG8g
YnlwYXNzIHRoZSBjb21waWxlciBidWcuCi0gIC8vIFRoaXMgaW1wbGVtZW50YXRpb24gbWFrZXMg
dGhlIGNvbXBpbGVyIGhhcHB5LCBhdCB0aGUgY29zdCBvZgotICAvLyBsZWFraW5nIHRoZSBVbml0
VGVzdCBvYmplY3QuCi0KICAgLy8gQ29kZUdlYXIgQysrQnVpbGRlciBpbnNpc3RzIG9uIGEgcHVi
bGljIGRlc3RydWN0b3IgZm9yIHRoZQogICAvLyBkZWZhdWx0IGltcGxlbWVudGF0aW9uLiAgVXNl
IHRoaXMgaW1wbGVtZW50YXRpb24gdG8ga2VlcCBnb29kIE9PCiAgIC8vIGRlc2lnbiB3aXRoIHBy
aXZhdGUgZGVzdHJ1Y3Rvci4KIAotI2lmIChfTVNDX1ZFUiA9PSAxMzEwICYmICFkZWZpbmVkKF9E
RUJVRykpIHx8IGRlZmluZWQoX19CT1JMQU5EQ19fKQorI2lmIGRlZmluZWQoX19CT1JMQU5EQ19f
KQogICBzdGF0aWMgVW5pdFRlc3QqIGNvbnN0IGluc3RhbmNlID0gbmV3IFVuaXRUZXN0OwogICBy
ZXR1cm4gaW5zdGFuY2U7CiAjZWxzZQogICBzdGF0aWMgVW5pdFRlc3QgaW5zdGFuY2U7CiAgIHJl
dHVybiAmaW5zdGFuY2U7Ci0jZW5kaWYgIC8vIChfTVNDX1ZFUiA9PSAxMzEwICYmICFkZWZpbmVk
KF9ERUJVRykpIHx8IGRlZmluZWQoX19CT1JMQU5EQ19fKQorI2VuZGlmICAvLyBkZWZpbmVkKF9f
Qk9STEFORENfXykKIH0KIAotLy8gR2V0cyB0aGUgbnVtYmVyIG9mIHN1Y2Nlc3NmdWwgdGVzdCBj
YXNlcy4KLWludCBVbml0VGVzdDo6c3VjY2Vzc2Z1bF90ZXN0X2Nhc2VfY291bnQoKSBjb25zdCB7
Ci0gIHJldHVybiBpbXBsKCktPnN1Y2Nlc3NmdWxfdGVzdF9jYXNlX2NvdW50KCk7CisvLyBHZXRz
IHRoZSBudW1iZXIgb2Ygc3VjY2Vzc2Z1bCB0ZXN0IHN1aXRlcy4KK2ludCBVbml0VGVzdDo6c3Vj
Y2Vzc2Z1bF90ZXN0X3N1aXRlX2NvdW50KCkgY29uc3QgeworICByZXR1cm4gaW1wbCgpLT5zdWNj
ZXNzZnVsX3Rlc3Rfc3VpdGVfY291bnQoKTsKIH0KIAotLy8gR2V0cyB0aGUgbnVtYmVyIG9mIGZh
aWxlZCB0ZXN0IGNhc2VzLgotaW50IFVuaXRUZXN0OjpmYWlsZWRfdGVzdF9jYXNlX2NvdW50KCkg
Y29uc3QgewotICByZXR1cm4gaW1wbCgpLT5mYWlsZWRfdGVzdF9jYXNlX2NvdW50KCk7CisvLyBH
ZXRzIHRoZSBudW1iZXIgb2YgZmFpbGVkIHRlc3Qgc3VpdGVzLgoraW50IFVuaXRUZXN0OjpmYWls
ZWRfdGVzdF9zdWl0ZV9jb3VudCgpIGNvbnN0IHsKKyAgcmV0dXJuIGltcGwoKS0+ZmFpbGVkX3Rl
c3Rfc3VpdGVfY291bnQoKTsKIH0KIAotLy8gR2V0cyB0aGUgbnVtYmVyIG9mIGFsbCB0ZXN0IGNh
c2VzLgotaW50IFVuaXRUZXN0Ojp0b3RhbF90ZXN0X2Nhc2VfY291bnQoKSBjb25zdCB7Ci0gIHJl
dHVybiBpbXBsKCktPnRvdGFsX3Rlc3RfY2FzZV9jb3VudCgpOworLy8gR2V0cyB0aGUgbnVtYmVy
IG9mIGFsbCB0ZXN0IHN1aXRlcy4KK2ludCBVbml0VGVzdDo6dG90YWxfdGVzdF9zdWl0ZV9jb3Vu
dCgpIGNvbnN0IHsKKyAgcmV0dXJuIGltcGwoKS0+dG90YWxfdGVzdF9zdWl0ZV9jb3VudCgpOwog
fQogCi0vLyBHZXRzIHRoZSBudW1iZXIgb2YgYWxsIHRlc3QgY2FzZXMgdGhhdCBjb250YWluIGF0
IGxlYXN0IG9uZSB0ZXN0CisvLyBHZXRzIHRoZSBudW1iZXIgb2YgYWxsIHRlc3Qgc3VpdGVzIHRo
YXQgY29udGFpbiBhdCBsZWFzdCBvbmUgdGVzdAogLy8gdGhhdCBzaG91bGQgcnVuLgoraW50IFVu
aXRUZXN0Ojp0ZXN0X3N1aXRlX3RvX3J1bl9jb3VudCgpIGNvbnN0IHsKKyAgcmV0dXJuIGltcGwo
KS0+dGVzdF9zdWl0ZV90b19ydW5fY291bnQoKTsKK30KKworLy8gIExlZ2FjeSBBUEkgaXMgZGVw
cmVjYXRlZCBidXQgc3RpbGwgYXZhaWxhYmxlCisjaWZuZGVmIEdURVNUX1JFTU9WRV9MRUdBQ1lf
VEVTVF9DQVNFQVBJXworaW50IFVuaXRUZXN0OjpzdWNjZXNzZnVsX3Rlc3RfY2FzZV9jb3VudCgp
IGNvbnN0IHsKKyAgcmV0dXJuIGltcGwoKS0+c3VjY2Vzc2Z1bF90ZXN0X3N1aXRlX2NvdW50KCk7
Cit9CitpbnQgVW5pdFRlc3Q6OmZhaWxlZF90ZXN0X2Nhc2VfY291bnQoKSBjb25zdCB7CisgIHJl
dHVybiBpbXBsKCktPmZhaWxlZF90ZXN0X3N1aXRlX2NvdW50KCk7Cit9CitpbnQgVW5pdFRlc3Q6
OnRvdGFsX3Rlc3RfY2FzZV9jb3VudCgpIGNvbnN0IHsKKyAgcmV0dXJuIGltcGwoKS0+dG90YWxf
dGVzdF9zdWl0ZV9jb3VudCgpOworfQogaW50IFVuaXRUZXN0Ojp0ZXN0X2Nhc2VfdG9fcnVuX2Nv
dW50KCkgY29uc3QgewotICByZXR1cm4gaW1wbCgpLT50ZXN0X2Nhc2VfdG9fcnVuX2NvdW50KCk7
CisgIHJldHVybiBpbXBsKCktPnRlc3Rfc3VpdGVfdG9fcnVuX2NvdW50KCk7CiB9CisjZW5kaWYg
IC8vICBHVEVTVF9SRU1PVkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KIAogLy8gR2V0cyB0aGUgbnVt
YmVyIG9mIHN1Y2Nlc3NmdWwgdGVzdHMuCiBpbnQgVW5pdFRlc3Q6OnN1Y2Nlc3NmdWxfdGVzdF9j
b3VudCgpIGNvbnN0IHsKICAgcmV0dXJuIGltcGwoKS0+c3VjY2Vzc2Z1bF90ZXN0X2NvdW50KCk7
CiB9CiAKKy8vIEdldHMgdGhlIG51bWJlciBvZiBza2lwcGVkIHRlc3RzLgoraW50IFVuaXRUZXN0
Ojpza2lwcGVkX3Rlc3RfY291bnQoKSBjb25zdCB7CisgIHJldHVybiBpbXBsKCktPnNraXBwZWRf
dGVzdF9jb3VudCgpOworfQorCiAvLyBHZXRzIHRoZSBudW1iZXIgb2YgZmFpbGVkIHRlc3RzLgog
aW50IFVuaXRUZXN0OjpmYWlsZWRfdGVzdF9jb3VudCgpIGNvbnN0IHsgcmV0dXJuIGltcGwoKS0+
ZmFpbGVkX3Rlc3RfY291bnQoKTsgfQogCkBAIC00NTc1LDI5ICs0ODgzLDM3IEBAIGludGVybmFs
OjpUaW1lSW5NaWxsaXMgVW5pdFRlc3Q6OmVsYXBzZWRfdGltZSgpIGNvbnN0IHsKICAgcmV0dXJu
IGltcGwoKS0+ZWxhcHNlZF90aW1lKCk7CiB9CiAKLS8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIHVu
aXQgdGVzdCBwYXNzZWQgKGkuZS4gYWxsIHRlc3QgY2FzZXMgcGFzc2VkKS4KKy8vIFJldHVybnMg
dHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgdW5pdCB0ZXN0IHBhc3NlZCAoaS5lLiBhbGwgdGVzdCBz
dWl0ZXMKKy8vIHBhc3NlZCkuCiBib29sIFVuaXRUZXN0OjpQYXNzZWQoKSBjb25zdCB7IHJldHVy
biBpbXBsKCktPlBhc3NlZCgpOyB9CiAKLS8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIHVuaXQgdGVz
dCBmYWlsZWQgKGkuZS4gc29tZSB0ZXN0IGNhc2UgZmFpbGVkCi0vLyBvciBzb21ldGhpbmcgb3V0
c2lkZSBvZiBhbGwgdGVzdHMgZmFpbGVkKS4KKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBp
ZiB0aGUgdW5pdCB0ZXN0IGZhaWxlZCAoaS5lLiBzb21lIHRlc3Qgc3VpdGUKKy8vIGZhaWxlZCBv
ciBzb21ldGhpbmcgb3V0c2lkZSBvZiBhbGwgdGVzdHMgZmFpbGVkKS4KIGJvb2wgVW5pdFRlc3Q6
OkZhaWxlZCgpIGNvbnN0IHsgcmV0dXJuIGltcGwoKS0+RmFpbGVkKCk7IH0KIAotLy8gR2V0cyB0
aGUgaS10aCB0ZXN0IGNhc2UgYW1vbmcgYWxsIHRoZSB0ZXN0IGNhc2VzLiBpIGNhbiByYW5nZSBm
cm9tIDAgdG8KLS8vIHRvdGFsX3Rlc3RfY2FzZV9jb3VudCgpIC0gMS4gSWYgaSBpcyBub3QgaW4g
dGhhdCByYW5nZSwgcmV0dXJucyBOVUxMLgorLy8gR2V0cyB0aGUgaS10aCB0ZXN0IHN1aXRlIGFt
b25nIGFsbCB0aGUgdGVzdCBzdWl0ZXMuIGkgY2FuIHJhbmdlIGZyb20gMCB0bworLy8gdG90YWxf
dGVzdF9zdWl0ZV9jb3VudCgpIC0gMS4gSWYgaSBpcyBub3QgaW4gdGhhdCByYW5nZSwgcmV0dXJu
cyBOVUxMLgorY29uc3QgVGVzdFN1aXRlKiBVbml0VGVzdDo6R2V0VGVzdFN1aXRlKGludCBpKSBj
b25zdCB7CisgIHJldHVybiBpbXBsKCktPkdldFRlc3RTdWl0ZShpKTsKK30KKworLy8gIExlZ2Fj
eSBBUEkgaXMgZGVwcmVjYXRlZCBidXQgc3RpbGwgYXZhaWxhYmxlCisjaWZuZGVmIEdURVNUX1JF
TU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwogY29uc3QgVGVzdENhc2UqIFVuaXRUZXN0OjpHZXRU
ZXN0Q2FzZShpbnQgaSkgY29uc3QgewogICByZXR1cm4gaW1wbCgpLT5HZXRUZXN0Q2FzZShpKTsK
IH0KKyNlbmRpZiAgLy8gIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwogCiAvLyBS
ZXR1cm5zIHRoZSBUZXN0UmVzdWx0IGNvbnRhaW5pbmcgaW5mb3JtYXRpb24gb24gdGVzdCBmYWls
dXJlcyBhbmQKLS8vIHByb3BlcnRpZXMgbG9nZ2VkIG91dHNpZGUgb2YgaW5kaXZpZHVhbCB0ZXN0
IGNhc2VzLgorLy8gcHJvcGVydGllcyBsb2dnZWQgb3V0c2lkZSBvZiBpbmRpdmlkdWFsIHRlc3Qg
c3VpdGVzLgogY29uc3QgVGVzdFJlc3VsdCYgVW5pdFRlc3Q6OmFkX2hvY190ZXN0X3Jlc3VsdCgp
IGNvbnN0IHsKICAgcmV0dXJuICppbXBsKCktPmFkX2hvY190ZXN0X3Jlc3VsdCgpOwogfQogCi0v
LyBHZXRzIHRoZSBpLXRoIHRlc3QgY2FzZSBhbW9uZyBhbGwgdGhlIHRlc3QgY2FzZXMuIGkgY2Fu
IHJhbmdlIGZyb20gMCB0bwotLy8gdG90YWxfdGVzdF9jYXNlX2NvdW50KCkgLSAxLiBJZiBpIGlz
IG5vdCBpbiB0aGF0IHJhbmdlLCByZXR1cm5zIE5VTEwuCi1UZXN0Q2FzZSogVW5pdFRlc3Q6Okdl
dE11dGFibGVUZXN0Q2FzZShpbnQgaSkgewotICByZXR1cm4gaW1wbCgpLT5HZXRNdXRhYmxlVGVz
dENhc2UoaSk7CisvLyBHZXRzIHRoZSBpLXRoIHRlc3Qgc3VpdGUgYW1vbmcgYWxsIHRoZSB0ZXN0
IHN1aXRlcy4gaSBjYW4gcmFuZ2UgZnJvbSAwIHRvCisvLyB0b3RhbF90ZXN0X3N1aXRlX2NvdW50
KCkgLSAxLiBJZiBpIGlzIG5vdCBpbiB0aGF0IHJhbmdlLCByZXR1cm5zIE5VTEwuCitUZXN0U3Vp
dGUqIFVuaXRUZXN0OjpHZXRNdXRhYmxlVGVzdFN1aXRlKGludCBpKSB7CisgIHJldHVybiBpbXBs
KCktPkdldE11dGFibGVTdWl0ZUNhc2UoaSk7CiB9CiAKIC8vIFJldHVybnMgdGhlIGxpc3Qgb2Yg
ZXZlbnQgbGlzdGVuZXJzIHRoYXQgY2FuIGJlIHVzZWQgdG8gdHJhY2sgZXZlbnRzCkBAIC00NjE3
LDggKzQ5MzMsOCBAQCBUZXN0RXZlbnRMaXN0ZW5lcnMmIFVuaXRUZXN0OjpsaXN0ZW5lcnMoKSB7
CiAvLyBXZSBkb24ndCBwcm90ZWN0IHRoaXMgdW5kZXIgbXV0ZXhfLCBhcyB3ZSBvbmx5IHN1cHBv
cnQgY2FsbGluZyBpdAogLy8gZnJvbSB0aGUgbWFpbiB0aHJlYWQuCiBFbnZpcm9ubWVudCogVW5p
dFRlc3Q6OkFkZEVudmlyb25tZW50KEVudmlyb25tZW50KiBlbnYpIHsKLSAgaWYgKGVudiA9PSBO
VUxMKSB7Ci0gICAgcmV0dXJuIE5VTEw7CisgIGlmIChlbnYgPT0gbnVsbHB0cikgeworICAgIHJl
dHVybiBudWxscHRyOwogICB9CiAKICAgaW1wbF8tPmVudmlyb25tZW50cygpLnB1c2hfYmFjayhl
bnYpOwpAQCAtNDY0MiwyNSArNDk1OCwyNCBAQCB2b2lkIFVuaXRUZXN0OjpBZGRUZXN0UGFydFJl
c3VsdCgKICAgaWYgKGltcGxfLT5ndGVzdF90cmFjZV9zdGFjaygpLnNpemUoKSA+IDApIHsKICAg
ICBtc2cgPDwgIlxuIiA8PCBHVEVTVF9OQU1FXyA8PCAiIHRyYWNlOiI7CiAKLSAgICBmb3IgKGlu
dCBpID0gc3RhdGljX2Nhc3Q8aW50PihpbXBsXy0+Z3Rlc3RfdHJhY2Vfc3RhY2soKS5zaXplKCkp
OwotICAgICAgICAgaSA+IDA7IC0taSkgeworICAgIGZvciAoc2l6ZV90IGkgPSBpbXBsXy0+Z3Rl
c3RfdHJhY2Vfc3RhY2soKS5zaXplKCk7IGkgPiAwOyAtLWkpIHsKICAgICAgIGNvbnN0IGludGVy
bmFsOjpUcmFjZUluZm8mIHRyYWNlID0gaW1wbF8tPmd0ZXN0X3RyYWNlX3N0YWNrKClbaSAtIDFd
OwogICAgICAgbXNnIDw8ICJcbiIgPDwgaW50ZXJuYWw6OkZvcm1hdEZpbGVMb2NhdGlvbih0cmFj
ZS5maWxlLCB0cmFjZS5saW5lKQogICAgICAgICAgIDw8ICIgIiA8PCB0cmFjZS5tZXNzYWdlOwog
ICAgIH0KICAgfQogCi0gIGlmIChvc19zdGFja190cmFjZS5jX3N0cigpICE9IE5VTEwgJiYgIW9z
X3N0YWNrX3RyYWNlLmVtcHR5KCkpIHsKKyAgaWYgKG9zX3N0YWNrX3RyYWNlLmNfc3RyKCkgIT0g
bnVsbHB0ciAmJiAhb3Nfc3RhY2tfdHJhY2UuZW1wdHkoKSkgewogICAgIG1zZyA8PCBpbnRlcm5h
bDo6a1N0YWNrVHJhY2VNYXJrZXIgPDwgb3Nfc3RhY2tfdHJhY2U7CiAgIH0KIAotICBjb25zdCBU
ZXN0UGFydFJlc3VsdCByZXN1bHQgPQotICAgIFRlc3RQYXJ0UmVzdWx0KHJlc3VsdF90eXBlLCBm
aWxlX25hbWUsIGxpbmVfbnVtYmVyLAotICAgICAgICAgICAgICAgICAgIG1zZy5HZXRTdHJpbmco
KS5jX3N0cigpKTsKKyAgY29uc3QgVGVzdFBhcnRSZXN1bHQgcmVzdWx0ID0gVGVzdFBhcnRSZXN1
bHQoCisgICAgICByZXN1bHRfdHlwZSwgZmlsZV9uYW1lLCBsaW5lX251bWJlciwgbXNnLkdldFN0
cmluZygpLmNfc3RyKCkpOwogICBpbXBsXy0+R2V0VGVzdFBhcnRSZXN1bHRSZXBvcnRlckZvckN1
cnJlbnRUaHJlYWQoKS0+CiAgICAgICBSZXBvcnRUZXN0UGFydFJlc3VsdChyZXN1bHQpOwogCi0g
IGlmIChyZXN1bHRfdHlwZSAhPSBUZXN0UGFydFJlc3VsdDo6a1N1Y2Nlc3MpIHsKKyAgaWYgKHJl
c3VsdF90eXBlICE9IFRlc3RQYXJ0UmVzdWx0OjprU3VjY2VzcyAmJgorICAgICAgcmVzdWx0X3R5
cGUgIT0gVGVzdFBhcnRSZXN1bHQ6OmtTa2lwKSB7CiAgICAgLy8gZ3Rlc3RfYnJlYWtfb25fZmFp
bHVyZSB0YWtlcyBwcmVjZWRlbmNlIG92ZXIKICAgICAvLyBndGVzdF90aHJvd19vbl9mYWlsdXJl
LiAgVGhpcyBhbGxvd3MgYSB1c2VyIHRvIHNldCB0aGUgbGF0dGVyCiAgICAgLy8gaW4gdGhlIGNv
ZGUgKHBlcmhhcHMgaW4gb3JkZXIgdG8gdXNlIEdvb2dsZSBUZXN0IGFzc2VydGlvbnMKQEAgLTQ2
NzgsMTEgKzQ5OTMsMTAgQEAgdm9pZCBVbml0VGVzdDo6QWRkVGVzdFBhcnRSZXN1bHQoCiAgICAg
ICAvLyB3aXRoIGNsYW5nL2djYyB3ZSBjYW4gYWNoaWV2ZSB0aGUgc2FtZSBlZmZlY3Qgb24geDg2
IGJ5IGludm9raW5nIGludDMKICAgICAgIGFzbSgiaW50MyIpOwogI2Vsc2UKLSAgICAgIC8vIERl
cmVmZXJlbmNlIE5VTEwgdGhyb3VnaCBhIHZvbGF0aWxlIHBvaW50ZXIgdG8gcHJldmVudCB0aGUg
Y29tcGlsZXIKKyAgICAgIC8vIERlcmVmZXJlbmNlIG51bGxwdHIgdGhyb3VnaCBhIHZvbGF0aWxl
IHBvaW50ZXIgdG8gcHJldmVudCB0aGUgY29tcGlsZXIKICAgICAgIC8vIGZyb20gcmVtb3Zpbmcu
IFdlIHVzZSB0aGlzIHJhdGhlciB0aGFuIGFib3J0KCkgb3IgX19idWlsdGluX3RyYXAoKSBmb3IK
LSAgICAgIC8vIHBvcnRhYmlsaXR5OiBTeW1iaWFuIGRvZXNuJ3QgaW1wbGVtZW50IGFib3J0KCkg
d2VsbCwgYW5kIHNvbWUgZGVidWdnZXJzCi0gICAgICAvLyBkb24ndCBjb3JyZWN0bHkgdHJhcCBh
Ym9ydCgpLgotICAgICAgKnN0YXRpY19jYXN0PHZvbGF0aWxlIGludCo+KE5VTEwpID0gMTsKKyAg
ICAgIC8vIHBvcnRhYmlsaXR5OiBzb21lIGRlYnVnZ2VycyBkb24ndCBjb3JyZWN0bHkgdHJhcCBh
Ym9ydCgpLgorICAgICAgKnN0YXRpY19jYXN0PHZvbGF0aWxlIGludCo+KG51bGxwdHIpID0gMTsK
ICNlbmRpZiAgLy8gR1RFU1RfT1NfV0lORE9XUwogICAgIH0gZWxzZSBpZiAoR1RFU1RfRkxBRyh0
aHJvd19vbl9mYWlsdXJlKSkgewogI2lmIEdURVNUX0hBU19FWENFUFRJT05TCkBAIC00Njk3LDgg
KzUwMTEsOCBAQCB2b2lkIFVuaXRUZXN0OjpBZGRUZXN0UGFydFJlc3VsdCgKIH0KIAogLy8gQWRk
cyBhIFRlc3RQcm9wZXJ0eSB0byB0aGUgY3VycmVudCBUZXN0UmVzdWx0IG9iamVjdCB3aGVuIGlu
dm9rZWQgZnJvbQotLy8gaW5zaWRlIGEgdGVzdCwgdG8gY3VycmVudCBUZXN0Q2FzZSdzIGFkX2hv
Y190ZXN0X3Jlc3VsdF8gd2hlbiBpbnZva2VkCi0vLyBmcm9tIFNldFVwVGVzdENhc2Ugb3IgVGVh
ckRvd25UZXN0Q2FzZSwgb3IgdG8gdGhlIGdsb2JhbCBwcm9wZXJ0eSBzZXQKKy8vIGluc2lkZSBh
IHRlc3QsIHRvIGN1cnJlbnQgVGVzdFN1aXRlJ3MgYWRfaG9jX3Rlc3RfcmVzdWx0XyB3aGVuIGlu
dm9rZWQKKy8vIGZyb20gU2V0VXBUZXN0U3VpdGUgb3IgVGVhckRvd25UZXN0U3VpdGUsIG9yIHRv
IHRoZSBnbG9iYWwgcHJvcGVydHkgc2V0CiAvLyB3aGVuIGludm9rZWQgZWxzZXdoZXJlLiAgSWYg
dGhlIHJlc3VsdCBhbHJlYWR5IGNvbnRhaW5zIGEgcHJvcGVydHkgd2l0aAogLy8gdGhlIHNhbWUg
a2V5LCB0aGUgdmFsdWUgd2lsbCBiZSB1cGRhdGVkLgogdm9pZCBVbml0VGVzdDo6UmVjb3JkUHJv
cGVydHkoY29uc3Qgc3RkOjpzdHJpbmcmIGtleSwKQEAgLTQ3MzcsOCArNTA1MSw5IEBAIGludCBV
bml0VGVzdDo6UnVuKCkgewogICAvLyB0aGF0IHVuZGVyc3RhbmRzIHRoZSBwcmVtYXR1cmUtZXhp
dC1maWxlIHByb3RvY29sIHRvIHJlcG9ydCB0aGUKICAgLy8gdGVzdCBhcyBoYXZpbmcgZmFpbGVk
LgogICBjb25zdCBpbnRlcm5hbDo6U2NvcGVkUHJlbWF0dXJlRXhpdEZpbGUgcHJlbWF0dXJlX2V4
aXRfZmlsZSgKLSAgICAgIGluX2RlYXRoX3Rlc3RfY2hpbGRfcHJvY2VzcyA/Ci0gICAgICBOVUxM
IDogaW50ZXJuYWw6OnBvc2l4OjpHZXRFbnYoIlRFU1RfUFJFTUFUVVJFX0VYSVRfRklMRSIpKTsK
KyAgICAgIGluX2RlYXRoX3Rlc3RfY2hpbGRfcHJvY2VzcworICAgICAgICAgID8gbnVsbHB0cgor
ICAgICAgICAgIDogaW50ZXJuYWw6OnBvc2l4OjpHZXRFbnYoIlRFU1RfUFJFTUFUVVJFX0VYSVRf
RklMRSIpKTsKIAogICAvLyBDYXB0dXJlcyB0aGUgdmFsdWUgb2YgR1RFU1RfRkxBRyhjYXRjaF9l
eGNlcHRpb25zKS4gIFRoaXMgdmFsdWUgd2lsbCBiZQogICAvLyB1c2VkIGZvciB0aGUgZHVyYXRp
b24gb2YgdGhlIHByb2dyYW0uCkBAIC00NzYzLDIyICs1MDc4LDI2IEBAIGludCBVbml0VGVzdDo6
UnVuKCkgewogICAgIF9zZXRfZXJyb3JfbW9kZShfT1VUX1RPX1NUREVSUik7CiAjIGVuZGlmCiAK
LSMgaWYgX01TQ19WRVIgPj0gMTQwMCAmJiAhR1RFU1RfT1NfV0lORE9XU19NT0JJTEUKKyMgaWYg
ZGVmaW5lZChfTVNDX1ZFUikgJiYgIUdURVNUX09TX1dJTkRPV1NfTU9CSUxFCiAgICAgLy8gSW4g
dGhlIGRlYnVnIHZlcnNpb24sIFZpc3VhbCBTdHVkaW8gcG9wcyB1cCBhIHNlcGFyYXRlIGRpYWxv
ZwogICAgIC8vIG9mZmVyaW5nIGEgY2hvaWNlIHRvIGRlYnVnIHRoZSBhYm9ydGVkIHByb2dyYW0u
IFdlIG5lZWQgdG8gc3VwcHJlc3MKICAgICAvLyB0aGlzIGRpYWxvZyBvciBpdCB3aWxsIHBvcCB1
cCBmb3IgZXZlcnkgRVhQRUNUL0FTU0VSVF9ERUFUSCBzdGF0ZW1lbnQKICAgICAvLyBleGVjdXRl
ZC4gR29vZ2xlIFRlc3Qgd2lsbCBub3RpZnkgdGhlIHVzZXIgb2YgYW55IHVuZXhwZWN0ZWQKICAg
ICAvLyBmYWlsdXJlIHZpYSBzdGRlcnIuCi0gICAgLy8KLSAgICAvLyBWQysrIGRvZXNuJ3QgZGVm
aW5lIF9zZXRfYWJvcnRfYmVoYXZpb3IoKSBwcmlvciB0byB0aGUgdmVyc2lvbiA4LjAuCi0gICAg
Ly8gVXNlcnMgb2YgcHJpb3IgVkMgdmVyc2lvbnMgc2hhbGwgc3VmZmVyIHRoZSBhZ29ueSBhbmQg
cGFpbiBvZgotICAgIC8vIGNsaWNraW5nIHRocm91Z2ggdGhlIGNvdW50bGVzcyBkZWJ1ZyBkaWFs
b2dzLgotICAgIC8vIEZJWE1FOiBmaW5kIGEgd2F5IHRvIHN1cHByZXNzIHRoZSBhYm9ydCBkaWFs
b2coKSBpbiB0aGUKLSAgICAvLyBkZWJ1ZyBtb2RlIHdoZW4gY29tcGlsZWQgd2l0aCBWQyA3LjEg
b3IgbG93ZXIuCiAgICAgaWYgKCFHVEVTVF9GTEFHKGJyZWFrX29uX2ZhaWx1cmUpKQogICAgICAg
X3NldF9hYm9ydF9iZWhhdmlvcigKICAgICAgICAgICAweDAsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLy8gQ2xlYXIgdGhlIGZvbGxvd2luZyBmbGFnczoKICAgICAgICAgICBf
V1JJVEVfQUJPUlRfTVNHIHwgX0NBTExfUkVQT1JURkFVTFQpOyAgLy8gcG9wLXVwIHdpbmRvdywg
Y29yZSBkdW1wLgorCisgICAgLy8gSW4gZGVidWcgbW9kZSwgdGhlIFdpbmRvd3MgQ1JUIGNhbiBj
cmFzaCB3aXRoIGFuIGFzc2VydGlvbiBvdmVyIGludmFsaWQKKyAgICAvLyBpbnB1dCAoZS5nLiBw
YXNzaW5nIGFuIGludmFsaWQgZmlsZSBkZXNjcmlwdG9yKS4gIFRoZSBkZWZhdWx0IGhhbmRsaW5n
CisgICAgLy8gZm9yIHRoZXNlIGFzc2VydGlvbnMgaXMgdG8gcG9wIHVwIGEgZGlhbG9nIGFuZCB3
YWl0IGZvciB1c2VyIGlucHV0LgorICAgIC8vIEluc3RlYWQgYXNrIHRoZSBDUlQgdG8gZHVtcCBz
dWNoIGFzc2VydGlvbnMgdG8gc3RkZXJyIG5vbi1pbnRlcmFjdGl2ZWx5LgorICAgIGlmICghSXNE
ZWJ1Z2dlclByZXNlbnQoKSkgeworICAgICAgKHZvaWQpX0NydFNldFJlcG9ydE1vZGUoX0NSVF9B
U1NFUlQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfQ1JUREJHX01PREVfRklMRSB8
IF9DUlREQkdfTU9ERV9ERUJVRyk7CisgICAgICAodm9pZClfQ3J0U2V0UmVwb3J0RmlsZShfQ1JU
X0FTU0VSVCwgX0NSVERCR19GSUxFX1NUREVSUik7CisgICAgfQogIyBlbmRpZgogICB9CiAjZW5k
aWYgIC8vIEdURVNUX09TX1dJTkRPV1MKQEAgLTQ3OTUsMTMgKzUxMTQsMjIgQEAgY29uc3QgY2hh
ciogVW5pdFRlc3Q6Om9yaWdpbmFsX3dvcmtpbmdfZGlyKCkgY29uc3QgewogICByZXR1cm4gaW1w
bF8tPm9yaWdpbmFsX3dvcmtpbmdfZGlyXy5jX3N0cigpOwogfQogCi0vLyBSZXR1cm5zIHRoZSBU
ZXN0Q2FzZSBvYmplY3QgZm9yIHRoZSB0ZXN0IHRoYXQncyBjdXJyZW50bHkgcnVubmluZywKKy8v
IFJldHVybnMgdGhlIFRlc3RTdWl0ZSBvYmplY3QgZm9yIHRoZSB0ZXN0IHRoYXQncyBjdXJyZW50
bHkgcnVubmluZywKIC8vIG9yIE5VTEwgaWYgbm8gdGVzdCBpcyBydW5uaW5nLgorY29uc3QgVGVz
dFN1aXRlKiBVbml0VGVzdDo6Y3VycmVudF90ZXN0X3N1aXRlKCkgY29uc3QKKyAgICBHVEVTVF9M
T0NLX0VYQ0xVREVEXyhtdXRleF8pIHsKKyAgaW50ZXJuYWw6Ok11dGV4TG9jayBsb2NrKCZtdXRl
eF8pOworICByZXR1cm4gaW1wbF8tPmN1cnJlbnRfdGVzdF9zdWl0ZSgpOworfQorCisvLyBMZWdh
Y3kgQVBJIGlzIHN0aWxsIGF2YWlsYWJsZSBidXQgZGVwcmVjYXRlZAorI2lmbmRlZiBHVEVTVF9S
RU1PVkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KIGNvbnN0IFRlc3RDYXNlKiBVbml0VGVzdDo6Y3Vy
cmVudF90ZXN0X2Nhc2UoKSBjb25zdAogICAgIEdURVNUX0xPQ0tfRVhDTFVERURfKG11dGV4Xykg
ewogICBpbnRlcm5hbDo6TXV0ZXhMb2NrIGxvY2soJm11dGV4Xyk7Ci0gIHJldHVybiBpbXBsXy0+
Y3VycmVudF90ZXN0X2Nhc2UoKTsKKyAgcmV0dXJuIGltcGxfLT5jdXJyZW50X3Rlc3Rfc3VpdGUo
KTsKIH0KKyNlbmRpZgogCiAvLyBSZXR1cm5zIHRoZSBUZXN0SW5mbyBvYmplY3QgZm9yIHRoZSB0
ZXN0IHRoYXQncyBjdXJyZW50bHkgcnVubmluZywKIC8vIG9yIE5VTEwgaWYgbm8gdGVzdCBpcyBy
dW5uaW5nLgpAQCAtNDgxNCwxMSArNTE0MiwxMCBAQCBjb25zdCBUZXN0SW5mbyogVW5pdFRlc3Q6
OmN1cnJlbnRfdGVzdF9pbmZvKCkgY29uc3QKIC8vIFJldHVybnMgdGhlIHJhbmRvbSBzZWVkIHVz
ZWQgYXQgdGhlIHN0YXJ0IG9mIHRoZSBjdXJyZW50IHRlc3QgcnVuLgogaW50IFVuaXRUZXN0Ojpy
YW5kb21fc2VlZCgpIGNvbnN0IHsgcmV0dXJuIGltcGxfLT5yYW5kb21fc2VlZCgpOyB9CiAKLS8v
IFJldHVybnMgUGFyYW1ldGVyaXplZFRlc3RDYXNlUmVnaXN0cnkgb2JqZWN0IHVzZWQgdG8ga2Vl
cCB0cmFjayBvZgorLy8gUmV0dXJucyBQYXJhbWV0ZXJpemVkVGVzdFN1aXRlUmVnaXN0cnkgb2Jq
ZWN0IHVzZWQgdG8ga2VlcCB0cmFjayBvZgogLy8gdmFsdWUtcGFyYW1ldGVyaXplZCB0ZXN0cyBh
bmQgaW5zdGFudGlhdGUgYW5kIHJlZ2lzdGVyIHRoZW0uCi1pbnRlcm5hbDo6UGFyYW1ldGVyaXpl
ZFRlc3RDYXNlUmVnaXN0cnkmCi0gICAgVW5pdFRlc3Q6OnBhcmFtZXRlcml6ZWRfdGVzdF9yZWdp
c3RyeSgpCi0gICAgICAgIEdURVNUX0xPQ0tfRVhDTFVERURfKG11dGV4XykgeworaW50ZXJuYWw6
OlBhcmFtZXRlcml6ZWRUZXN0U3VpdGVSZWdpc3RyeSYKK1VuaXRUZXN0OjpwYXJhbWV0ZXJpemVk
X3Rlc3RfcmVnaXN0cnkoKSBHVEVTVF9MT0NLX0VYQ0xVREVEXyhtdXRleF8pIHsKICAgcmV0dXJu
IGltcGxfLT5wYXJhbWV0ZXJpemVkX3Rlc3RfcmVnaXN0cnkoKTsKIH0KIApAQCAtNDg1MiwyMyAr
NTE3OSwyMiBAQCBuYW1lc3BhY2UgaW50ZXJuYWwgewogVW5pdFRlc3RJbXBsOjpVbml0VGVzdElt
cGwoVW5pdFRlc3QqIHBhcmVudCkKICAgICA6IHBhcmVudF8ocGFyZW50KSwKICAgICAgIEdURVNU
X0RJU0FCTEVfTVNDX1dBUk5JTkdTX1BVU0hfKDQzNTUgLyogdXNpbmcgdGhpcyBpbiBpbml0aWFs
aXplciAqLykKLSAgICAgIGRlZmF1bHRfZ2xvYmFsX3Rlc3RfcGFydF9yZXN1bHRfcmVwb3J0ZXJf
KHRoaXMpLAorICAgICAgICAgIGRlZmF1bHRfZ2xvYmFsX3Rlc3RfcGFydF9yZXN1bHRfcmVwb3J0
ZXJfKHRoaXMpLAogICAgICAgZGVmYXVsdF9wZXJfdGhyZWFkX3Rlc3RfcGFydF9yZXN1bHRfcmVw
b3J0ZXJfKHRoaXMpLAotICAgICAgR1RFU1RfRElTQUJMRV9NU0NfV0FSTklOR1NfUE9QXygpCi0g
ICAgICBnbG9iYWxfdGVzdF9wYXJ0X3Jlc3VsdF9yZXBvdGVyXygKKyAgICAgIEdURVNUX0RJU0FC
TEVfTVNDX1dBUk5JTkdTX1BPUF8oKSBnbG9iYWxfdGVzdF9wYXJ0X3Jlc3VsdF9yZXBvdGVyXygK
ICAgICAgICAgICAmZGVmYXVsdF9nbG9iYWxfdGVzdF9wYXJ0X3Jlc3VsdF9yZXBvcnRlcl8pLAog
ICAgICAgcGVyX3RocmVhZF90ZXN0X3BhcnRfcmVzdWx0X3JlcG9ydGVyXygKICAgICAgICAgICAm
ZGVmYXVsdF9wZXJfdGhyZWFkX3Rlc3RfcGFydF9yZXN1bHRfcmVwb3J0ZXJfKSwKICAgICAgIHBh
cmFtZXRlcml6ZWRfdGVzdF9yZWdpc3RyeV8oKSwKICAgICAgIHBhcmFtZXRlcml6ZWRfdGVzdHNf
cmVnaXN0ZXJlZF8oZmFsc2UpLAotICAgICAgbGFzdF9kZWF0aF90ZXN0X2Nhc2VfKC0xKSwKLSAg
ICAgIGN1cnJlbnRfdGVzdF9jYXNlXyhOVUxMKSwKLSAgICAgIGN1cnJlbnRfdGVzdF9pbmZvXyhO
VUxMKSwKKyAgICAgIGxhc3RfZGVhdGhfdGVzdF9zdWl0ZV8oLTEpLAorICAgICAgY3VycmVudF90
ZXN0X3N1aXRlXyhudWxscHRyKSwKKyAgICAgIGN1cnJlbnRfdGVzdF9pbmZvXyhudWxscHRyKSwK
ICAgICAgIGFkX2hvY190ZXN0X3Jlc3VsdF8oKSwKLSAgICAgIG9zX3N0YWNrX3RyYWNlX2dldHRl
cl8oTlVMTCksCisgICAgICBvc19zdGFja190cmFjZV9nZXR0ZXJfKG51bGxwdHIpLAogICAgICAg
cG9zdF9mbGFnX3BhcnNlX2luaXRfcGVyZm9ybWVkXyhmYWxzZSksCiAgICAgICByYW5kb21fc2Vl
ZF8oMCksICAvLyBXaWxsIGJlIG92ZXJyaWRkZW4gYnkgdGhlIGZsYWcgYmVmb3JlIGZpcnN0IHVz
ZS4KLSAgICAgIHJhbmRvbV8oMCksICAvLyBXaWxsIGJlIHJlc2VlZGVkIGJlZm9yZSBmaXJzdCB1
c2UuCisgICAgICByYW5kb21fKDApLCAgICAgICAvLyBXaWxsIGJlIHJlc2VlZGVkIGJlZm9yZSBm
aXJzdCB1c2UuCiAgICAgICBzdGFydF90aW1lc3RhbXBfKDApLAogICAgICAgZWxhcHNlZF90aW1l
XygwKSwKICNpZiBHVEVTVF9IQVNfREVBVEhfVEVTVApAQCAtNDg4MCw4ICs1MjA2LDggQEAgVW5p
dFRlc3RJbXBsOjpVbml0VGVzdEltcGwoVW5pdFRlc3QqIHBhcmVudCkKIH0KIAogVW5pdFRlc3RJ
bXBsOjp+VW5pdFRlc3RJbXBsKCkgewotICAvLyBEZWxldGVzIGV2ZXJ5IFRlc3RDYXNlLgotICBG
b3JFYWNoKHRlc3RfY2FzZXNfLCBpbnRlcm5hbDo6RGVsZXRlPFRlc3RDYXNlPik7CisgIC8vIERl
bGV0ZXMgZXZlcnkgVGVzdFN1aXRlLgorICBGb3JFYWNoKHRlc3Rfc3VpdGVzXywgaW50ZXJuYWw6
OkRlbGV0ZTxUZXN0U3VpdGU+KTsKIAogICAvLyBEZWxldGVzIGV2ZXJ5IEVudmlyb25tZW50Lgog
ICBGb3JFYWNoKGVudmlyb25tZW50c18sIGludGVybmFsOjpEZWxldGU8RW52aXJvbm1lbnQ+KTsK
QEAgLTQ4OTAsMjAgKzUyMTYsMjAgQEAgVW5pdFRlc3RJbXBsOjp+VW5pdFRlc3RJbXBsKCkgewog
fQogCiAvLyBBZGRzIGEgVGVzdFByb3BlcnR5IHRvIHRoZSBjdXJyZW50IFRlc3RSZXN1bHQgb2Jq
ZWN0IHdoZW4gaW52b2tlZCBpbiBhCi0vLyBjb250ZXh0IG9mIGEgdGVzdCwgdG8gY3VycmVudCB0
ZXN0IGNhc2UncyBhZF9ob2NfdGVzdF9yZXN1bHQgd2hlbiBpbnZva2UKLS8vIGZyb20gU2V0VXBU
ZXN0Q2FzZS9UZWFyRG93blRlc3RDYXNlLCBvciB0byB0aGUgZ2xvYmFsIHByb3BlcnR5IHNldAor
Ly8gY29udGV4dCBvZiBhIHRlc3QsIHRvIGN1cnJlbnQgdGVzdCBzdWl0ZSdzIGFkX2hvY190ZXN0
X3Jlc3VsdCB3aGVuIGludm9rZQorLy8gZnJvbSBTZXRVcFRlc3RTdWl0ZS9UZWFyRG93blRlc3RT
dWl0ZSwgb3IgdG8gdGhlIGdsb2JhbCBwcm9wZXJ0eSBzZXQKIC8vIG90aGVyd2lzZS4gIElmIHRo
ZSByZXN1bHQgYWxyZWFkeSBjb250YWlucyBhIHByb3BlcnR5IHdpdGggdGhlIHNhbWUga2V5LAog
Ly8gdGhlIHZhbHVlIHdpbGwgYmUgdXBkYXRlZC4KIHZvaWQgVW5pdFRlc3RJbXBsOjpSZWNvcmRQ
cm9wZXJ0eShjb25zdCBUZXN0UHJvcGVydHkmIHRlc3RfcHJvcGVydHkpIHsKICAgc3RkOjpzdHJp
bmcgeG1sX2VsZW1lbnQ7CiAgIFRlc3RSZXN1bHQqIHRlc3RfcmVzdWx0OyAgLy8gVGVzdFJlc3Vs
dCBhcHByb3ByaWF0ZSBmb3IgcHJvcGVydHkgcmVjb3JkaW5nLgogCi0gIGlmIChjdXJyZW50X3Rl
c3RfaW5mb18gIT0gTlVMTCkgeworICBpZiAoY3VycmVudF90ZXN0X2luZm9fICE9IG51bGxwdHIp
IHsKICAgICB4bWxfZWxlbWVudCA9ICJ0ZXN0Y2FzZSI7CiAgICAgdGVzdF9yZXN1bHQgPSAmKGN1
cnJlbnRfdGVzdF9pbmZvXy0+cmVzdWx0Xyk7Ci0gIH0gZWxzZSBpZiAoY3VycmVudF90ZXN0X2Nh
c2VfICE9IE5VTEwpIHsKKyAgfSBlbHNlIGlmIChjdXJyZW50X3Rlc3Rfc3VpdGVfICE9IG51bGxw
dHIpIHsKICAgICB4bWxfZWxlbWVudCA9ICJ0ZXN0c3VpdGUiOwotICAgIHRlc3RfcmVzdWx0ID0g
JihjdXJyZW50X3Rlc3RfY2FzZV8tPmFkX2hvY190ZXN0X3Jlc3VsdF8pOworICAgIHRlc3RfcmVz
dWx0ID0gJihjdXJyZW50X3Rlc3Rfc3VpdGVfLT5hZF9ob2NfdGVzdF9yZXN1bHRfKTsKICAgfSBl
bHNlIHsKICAgICB4bWxfZWxlbWVudCA9ICJ0ZXN0c3VpdGVzIjsKICAgICB0ZXN0X3Jlc3VsdCA9
ICZhZF9ob2NfdGVzdF9yZXN1bHRfOwpAQCAtNDkxNSw3ICs1MjQxLDcgQEAgdm9pZCBVbml0VGVz
dEltcGw6OlJlY29yZFByb3BlcnR5KGNvbnN0IFRlc3RQcm9wZXJ0eSYgdGVzdF9wcm9wZXJ0eSkg
ewogLy8gRGlzYWJsZXMgZXZlbnQgZm9yd2FyZGluZyBpZiB0aGUgY29udHJvbCBpcyBjdXJyZW50
bHkgaW4gYSBkZWF0aCB0ZXN0CiAvLyBzdWJwcm9jZXNzLiBNdXN0IG5vdCBiZSBjYWxsZWQgYmVm
b3JlIEluaXRHb29nbGVUZXN0Lgogdm9pZCBVbml0VGVzdEltcGw6OlN1cHByZXNzVGVzdEV2ZW50
c0lmSW5TdWJwcm9jZXNzKCkgewotICBpZiAoaW50ZXJuYWxfcnVuX2RlYXRoX3Rlc3RfZmxhZ18u
Z2V0KCkgIT0gTlVMTCkKKyAgaWYgKGludGVybmFsX3J1bl9kZWF0aF90ZXN0X2ZsYWdfLmdldCgp
ICE9IG51bGxwdHIpCiAgICAgbGlzdGVuZXJzKCktPlN1cHByZXNzRXZlbnRGb3J3YXJkaW5nKCk7
CiB9CiAjZW5kaWYgIC8vIEdURVNUX0hBU19ERUFUSF9URVNUCkBAIC00OTk3LDc0ICs1MzIzLDcz
IEBAIHZvaWQgVW5pdFRlc3RJbXBsOjpQb3N0RmxhZ1BhcnNpbmdJbml0KCkgewogICB9CiB9CiAK
LS8vIEEgcHJlZGljYXRlIHRoYXQgY2hlY2tzIHRoZSBuYW1lIG9mIGEgVGVzdENhc2UgYWdhaW5z
dCBhIGtub3duCisvLyBBIHByZWRpY2F0ZSB0aGF0IGNoZWNrcyB0aGUgbmFtZSBvZiBhIFRlc3RT
dWl0ZSBhZ2FpbnN0IGEga25vd24KIC8vIHZhbHVlLgogLy8KIC8vIFRoaXMgaXMgdXNlZCBmb3Ig
aW1wbGVtZW50YXRpb24gb2YgdGhlIFVuaXRUZXN0IGNsYXNzIG9ubHkuICBXZSBwdXQKIC8vIGl0
IGluIHRoZSBhbm9ueW1vdXMgbmFtZXNwYWNlIHRvIHByZXZlbnQgcG9sbHV0aW5nIHRoZSBvdXRl
cgogLy8gbmFtZXNwYWNlLgogLy8KLS8vIFRlc3RDYXNlTmFtZUlzIGlzIGNvcHlhYmxlLgotY2xh
c3MgVGVzdENhc2VOYW1lSXMgeworLy8gVGVzdFN1aXRlTmFtZUlzIGlzIGNvcHlhYmxlLgorY2xh
c3MgVGVzdFN1aXRlTmFtZUlzIHsKICBwdWJsaWM6CiAgIC8vIENvbnN0cnVjdG9yLgotICBleHBs
aWNpdCBUZXN0Q2FzZU5hbWVJcyhjb25zdCBzdGQ6OnN0cmluZyYgbmFtZSkKLSAgICAgIDogbmFt
ZV8obmFtZSkge30KKyAgZXhwbGljaXQgVGVzdFN1aXRlTmFtZUlzKGNvbnN0IHN0ZDo6c3RyaW5n
JiBuYW1lKSA6IG5hbWVfKG5hbWUpIHt9CiAKLSAgLy8gUmV0dXJucyB0cnVlIGlmZiB0aGUgbmFt
ZSBvZiB0ZXN0X2Nhc2UgbWF0Y2hlcyBuYW1lXy4KLSAgYm9vbCBvcGVyYXRvcigpKGNvbnN0IFRl
c3RDYXNlKiB0ZXN0X2Nhc2UpIGNvbnN0IHsKLSAgICByZXR1cm4gdGVzdF9jYXNlICE9IE5VTEwg
JiYgc3RyY21wKHRlc3RfY2FzZS0+bmFtZSgpLCBuYW1lXy5jX3N0cigpKSA9PSAwOworICAvLyBS
ZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIG5hbWUgb2YgdGVzdF9zdWl0ZSBtYXRjaGVz
IG5hbWVfLgorICBib29sIG9wZXJhdG9yKCkoY29uc3QgVGVzdFN1aXRlKiB0ZXN0X3N1aXRlKSBj
b25zdCB7CisgICAgcmV0dXJuIHRlc3Rfc3VpdGUgIT0gbnVsbHB0ciAmJgorICAgICAgICAgICBz
dHJjbXAodGVzdF9zdWl0ZS0+bmFtZSgpLCBuYW1lXy5jX3N0cigpKSA9PSAwOwogICB9CiAKICBw
cml2YXRlOgogICBzdGQ6OnN0cmluZyBuYW1lXzsKIH07CiAKLS8vIEZpbmRzIGFuZCByZXR1cm5z
IGEgVGVzdENhc2Ugd2l0aCB0aGUgZ2l2ZW4gbmFtZS4gIElmIG9uZSBkb2Vzbid0CisvLyBGaW5k
cyBhbmQgcmV0dXJucyBhIFRlc3RTdWl0ZSB3aXRoIHRoZSBnaXZlbiBuYW1lLiAgSWYgb25lIGRv
ZXNuJ3QKIC8vIGV4aXN0LCBjcmVhdGVzIG9uZSBhbmQgcmV0dXJucyBpdC4gIEl0J3MgdGhlIENB
TExFUidTCiAvLyBSRVNQT05TSUJJTElUWSB0byBlbnN1cmUgdGhhdCB0aGlzIGZ1bmN0aW9uIGlz
IG9ubHkgY2FsbGVkIFdIRU4gVEhFCiAvLyBURVNUUyBBUkUgTk9UIFNIVUZGTEVELgogLy8KIC8v
IEFyZ3VtZW50czoKIC8vCi0vLyAgIHRlc3RfY2FzZV9uYW1lOiBuYW1lIG9mIHRoZSB0ZXN0IGNh
c2UKLS8vICAgdHlwZV9wYXJhbTogICAgIHRoZSBuYW1lIG9mIHRoZSB0ZXN0IGNhc2UncyB0eXBl
IHBhcmFtZXRlciwgb3IgTlVMTCBpZgotLy8gICAgICAgICAgICAgICAgICAgdGhpcyBpcyBub3Qg
YSB0eXBlZCBvciBhIHR5cGUtcGFyYW1ldGVyaXplZCB0ZXN0IGNhc2UuCi0vLyAgIHNldF91cF90
YzogICAgICBwb2ludGVyIHRvIHRoZSBmdW5jdGlvbiB0aGF0IHNldHMgdXAgdGhlIHRlc3QgY2Fz
ZQotLy8gICB0ZWFyX2Rvd25fdGM6ICAgcG9pbnRlciB0byB0aGUgZnVuY3Rpb24gdGhhdCB0ZWFy
cyBkb3duIHRoZSB0ZXN0IGNhc2UKLVRlc3RDYXNlKiBVbml0VGVzdEltcGw6OkdldFRlc3RDYXNl
KGNvbnN0IGNoYXIqIHRlc3RfY2FzZV9uYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgY29uc3QgY2hhciogdHlwZV9wYXJhbSwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFRlc3Q6OlNldFVwVGVzdENhc2VGdW5jIHNldF91cF90YywKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRlc3Q6OlRlYXJEb3duVGVzdENhc2VGdW5jIHRl
YXJfZG93bl90YykgewotICAvLyBDYW4gd2UgZmluZCBhIFRlc3RDYXNlIHdpdGggdGhlIGdpdmVu
IG5hbWU/Ci0gIGNvbnN0IHN0ZDo6dmVjdG9yPFRlc3RDYXNlKj46OmNvbnN0X3JldmVyc2VfaXRl
cmF0b3IgdGVzdF9jYXNlID0KLSAgICAgIHN0ZDo6ZmluZF9pZih0ZXN0X2Nhc2VzXy5yYmVnaW4o
KSwgdGVzdF9jYXNlc18ucmVuZCgpLAotICAgICAgICAgICAgICAgICAgIFRlc3RDYXNlTmFtZUlz
KHRlc3RfY2FzZV9uYW1lKSk7Ci0KLSAgaWYgKHRlc3RfY2FzZSAhPSB0ZXN0X2Nhc2VzXy5yZW5k
KCkpCi0gICAgcmV0dXJuICp0ZXN0X2Nhc2U7CisvLyAgIHRlc3Rfc3VpdGVfbmFtZTogbmFtZSBv
ZiB0aGUgdGVzdCBzdWl0ZQorLy8gICB0eXBlX3BhcmFtOiAgICAgdGhlIG5hbWUgb2YgdGhlIHRl
c3Qgc3VpdGUncyB0eXBlIHBhcmFtZXRlciwgb3IgTlVMTCBpZgorLy8gICAgICAgICAgICAgICAg
ICAgdGhpcyBpcyBub3QgYSB0eXBlZCBvciBhIHR5cGUtcGFyYW1ldGVyaXplZCB0ZXN0IHN1aXRl
LgorLy8gICBzZXRfdXBfdGM6ICAgICAgcG9pbnRlciB0byB0aGUgZnVuY3Rpb24gdGhhdCBzZXRz
IHVwIHRoZSB0ZXN0IHN1aXRlCisvLyAgIHRlYXJfZG93bl90YzogICBwb2ludGVyIHRvIHRoZSBm
dW5jdGlvbiB0aGF0IHRlYXJzIGRvd24gdGhlIHRlc3Qgc3VpdGUKK1Rlc3RTdWl0ZSogVW5pdFRl
c3RJbXBsOjpHZXRUZXN0U3VpdGUoCisgICAgY29uc3QgY2hhciogdGVzdF9zdWl0ZV9uYW1lLCBj
b25zdCBjaGFyKiB0eXBlX3BhcmFtLAorICAgIGludGVybmFsOjpTZXRVcFRlc3RTdWl0ZUZ1bmMg
c2V0X3VwX3RjLAorICAgIGludGVybmFsOjpUZWFyRG93blRlc3RTdWl0ZUZ1bmMgdGVhcl9kb3du
X3RjKSB7CisgIC8vIENhbiB3ZSBmaW5kIGEgVGVzdFN1aXRlIHdpdGggdGhlIGdpdmVuIG5hbWU/
CisgIGNvbnN0IGF1dG8gdGVzdF9zdWl0ZSA9CisgICAgICBzdGQ6OmZpbmRfaWYodGVzdF9zdWl0
ZXNfLnJiZWdpbigpLCB0ZXN0X3N1aXRlc18ucmVuZCgpLAorICAgICAgICAgICAgICAgICAgIFRl
c3RTdWl0ZU5hbWVJcyh0ZXN0X3N1aXRlX25hbWUpKTsKKworICBpZiAodGVzdF9zdWl0ZSAhPSB0
ZXN0X3N1aXRlc18ucmVuZCgpKSByZXR1cm4gKnRlc3Rfc3VpdGU7CiAKICAgLy8gTm8uICBMZXQn
cyBjcmVhdGUgb25lLgotICBUZXN0Q2FzZSogY29uc3QgbmV3X3Rlc3RfY2FzZSA9Ci0gICAgICBu
ZXcgVGVzdENhc2UodGVzdF9jYXNlX25hbWUsIHR5cGVfcGFyYW0sIHNldF91cF90YywgdGVhcl9k
b3duX3RjKTsKLQotICAvLyBJcyB0aGlzIGEgZGVhdGggdGVzdCBjYXNlPwotICBpZiAoaW50ZXJu
YWw6OlVuaXRUZXN0T3B0aW9uczo6TWF0Y2hlc0ZpbHRlcih0ZXN0X2Nhc2VfbmFtZSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga0RlYXRoVGVzdENhc2VG
aWx0ZXIpKSB7Ci0gICAgLy8gWWVzLiAgSW5zZXJ0cyB0aGUgdGVzdCBjYXNlIGFmdGVyIHRoZSBs
YXN0IGRlYXRoIHRlc3QgY2FzZQotICAgIC8vIGRlZmluZWQgc28gZmFyLiAgVGhpcyBvbmx5IHdv
cmtzIHdoZW4gdGhlIHRlc3QgY2FzZXMgaGF2ZW4ndAorICBhdXRvKiBjb25zdCBuZXdfdGVzdF9z
dWl0ZSA9CisgICAgICBuZXcgVGVzdFN1aXRlKHRlc3Rfc3VpdGVfbmFtZSwgdHlwZV9wYXJhbSwg
c2V0X3VwX3RjLCB0ZWFyX2Rvd25fdGMpOworCisgIC8vIElzIHRoaXMgYSBkZWF0aCB0ZXN0IHN1
aXRlPworICBpZiAoaW50ZXJuYWw6OlVuaXRUZXN0T3B0aW9uczo6TWF0Y2hlc0ZpbHRlcih0ZXN0
X3N1aXRlX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGtEZWF0aFRlc3RTdWl0ZUZpbHRlcikpIHsKKyAgICAvLyBZZXMuICBJbnNlcnRzIHRoZSB0
ZXN0IHN1aXRlIGFmdGVyIHRoZSBsYXN0IGRlYXRoIHRlc3Qgc3VpdGUKKyAgICAvLyBkZWZpbmVk
IHNvIGZhci4gIFRoaXMgb25seSB3b3JrcyB3aGVuIHRoZSB0ZXN0IHN1aXRlcyBoYXZlbid0CiAg
ICAgLy8gYmVlbiBzaHVmZmxlZC4gIE90aGVyd2lzZSB3ZSBtYXkgZW5kIHVwIHJ1bm5pbmcgYSBk
ZWF0aCB0ZXN0CiAgICAgLy8gYWZ0ZXIgYSBub24tZGVhdGggdGVzdC4KLSAgICArK2xhc3RfZGVh
dGhfdGVzdF9jYXNlXzsKLSAgICB0ZXN0X2Nhc2VzXy5pbnNlcnQodGVzdF9jYXNlc18uYmVnaW4o
KSArIGxhc3RfZGVhdGhfdGVzdF9jYXNlXywKLSAgICAgICAgICAgICAgICAgICAgICAgbmV3X3Rl
c3RfY2FzZSk7CisgICAgKytsYXN0X2RlYXRoX3Rlc3Rfc3VpdGVfOworICAgIHRlc3Rfc3VpdGVz
Xy5pbnNlcnQodGVzdF9zdWl0ZXNfLmJlZ2luKCkgKyBsYXN0X2RlYXRoX3Rlc3Rfc3VpdGVfLAor
ICAgICAgICAgICAgICAgICAgICAgICAgbmV3X3Rlc3Rfc3VpdGUpOwogICB9IGVsc2UgewogICAg
IC8vIE5vLiAgQXBwZW5kcyB0byB0aGUgZW5kIG9mIHRoZSBsaXN0LgotICAgIHRlc3RfY2FzZXNf
LnB1c2hfYmFjayhuZXdfdGVzdF9jYXNlKTsKKyAgICB0ZXN0X3N1aXRlc18ucHVzaF9iYWNrKG5l
d190ZXN0X3N1aXRlKTsKICAgfQogCi0gIHRlc3RfY2FzZV9pbmRpY2VzXy5wdXNoX2JhY2soc3Rh
dGljX2Nhc3Q8aW50Pih0ZXN0X2Nhc2VfaW5kaWNlc18uc2l6ZSgpKSk7Ci0gIHJldHVybiBuZXdf
dGVzdF9jYXNlOworICB0ZXN0X3N1aXRlX2luZGljZXNfLnB1c2hfYmFjayhzdGF0aWNfY2FzdDxp
bnQ+KHRlc3Rfc3VpdGVfaW5kaWNlc18uc2l6ZSgpKSk7CisgIHJldHVybiBuZXdfdGVzdF9zdWl0
ZTsKIH0KIAogLy8gSGVscGVycyBmb3Igc2V0dGluZyB1cCAvIHRlYXJpbmcgZG93biB0aGUgZ2l2
ZW4gZW52aXJvbm1lbnQuICBUaGV5CkBAIC01MDgyLDcgKzU0MDcsOCBAQCBzdGF0aWMgdm9pZCBU
ZWFyRG93bkVudmlyb25tZW50KEVudmlyb25tZW50KiBlbnYpIHsgZW52LT5UZWFyRG93bigpOyB9
CiAvLyBBbGwgb3RoZXIgZnVuY3Rpb25zIGNhbGxlZCBmcm9tIFJ1bkFsbFRlc3RzKCkgbWF5IHNh
ZmVseSBhc3N1bWUgdGhhdAogLy8gcGFyYW1ldGVyaXplZCB0ZXN0cyBhcmUgcmVhZHkgdG8gYmUg
Y291bnRlZCBhbmQgcnVuLgogYm9vbCBVbml0VGVzdEltcGw6OlJ1bkFsbFRlc3RzKCkgewotICAv
LyBUcnVlIGlmZiBHb29nbGUgVGVzdCBpcyBpbml0aWFsaXplZCBiZWZvcmUgUlVOX0FMTF9URVNU
UygpIGlzIGNhbGxlZC4KKyAgLy8gVHJ1ZSBpZiBhbmQgb25seSBpZiBHb29nbGUgVGVzdCBpcyBp
bml0aWFsaXplZCBiZWZvcmUgUlVOX0FMTF9URVNUUygpIGlzCisgIC8vIGNhbGxlZC4KICAgY29u
c3QgYm9vbCBndGVzdF9pc19pbml0aWFsaXplZF9iZWZvcmVfcnVuX2FsbF90ZXN0cyA9IEdUZXN0
SXNJbml0aWFsaXplZCgpOwogCiAgIC8vIERvIG5vdCBydW4gYW55IHRlc3QgaWYgdGhlIC0taGVs
cCBmbGFnIHdhcyBzcGVjaWZpZWQuCkBAIC01MDk4LDEyICs1NDI0LDEzIEBAIGJvb2wgVW5pdFRl
c3RJbXBsOjpSdW5BbGxUZXN0cygpIHsKICAgLy8gcHJvdG9jb2wuCiAgIGludGVybmFsOjpXcml0
ZVRvU2hhcmRTdGF0dXNGaWxlSWZOZWVkZWQoKTsKIAotICAvLyBUcnVlIGlmZiB3ZSBhcmUgaW4g
YSBzdWJwcm9jZXNzIGZvciBydW5uaW5nIGEgdGhyZWFkLXNhZmUtc3R5bGUKKyAgLy8gVHJ1ZSBp
ZiBhbmQgb25seSBpZiB3ZSBhcmUgaW4gYSBzdWJwcm9jZXNzIGZvciBydW5uaW5nIGEgdGhyZWFk
LXNhZmUtc3R5bGUKICAgLy8gZGVhdGggdGVzdC4KICAgYm9vbCBpbl9zdWJwcm9jZXNzX2Zvcl9k
ZWF0aF90ZXN0ID0gZmFsc2U7CiAKICNpZiBHVEVTVF9IQVNfREVBVEhfVEVTVAotICBpbl9zdWJw
cm9jZXNzX2Zvcl9kZWF0aF90ZXN0ID0gKGludGVybmFsX3J1bl9kZWF0aF90ZXN0X2ZsYWdfLmdl
dCgpICE9IE5VTEwpOworICBpbl9zdWJwcm9jZXNzX2Zvcl9kZWF0aF90ZXN0ID0KKyAgICAgIChp
bnRlcm5hbF9ydW5fZGVhdGhfdGVzdF9mbGFnXy5nZXQoKSAhPSBudWxscHRyKTsKICMgaWYgZGVm
aW5lZChHVEVTVF9FWFRSQV9ERUFUSF9URVNUX0NISUxEX1NFVFVQXykKICAgaWYgKGluX3N1YnBy
b2Nlc3NfZm9yX2RlYXRoX3Rlc3QpIHsKICAgICBHVEVTVF9FWFRSQV9ERUFUSF9URVNUX0NISUxE
X1NFVFVQXygpOwpAQCAtNTEzMCw3ICs1NDU3LDcgQEAgYm9vbCBVbml0VGVzdEltcGw6OlJ1bkFs
bFRlc3RzKCkgewogICByYW5kb21fc2VlZF8gPSBHVEVTVF9GTEFHKHNodWZmbGUpID8KICAgICAg
IEdldFJhbmRvbVNlZWRGcm9tRmxhZyhHVEVTVF9GTEFHKHJhbmRvbV9zZWVkKSkgOiAwOwogCi0g
IC8vIFRydWUgaWZmIGF0IGxlYXN0IG9uZSB0ZXN0IGhhcyBmYWlsZWQuCisgIC8vIFRydWUgaWYg
YW5kIG9ubHkgaWYgYXQgbGVhc3Qgb25lIHRlc3QgaGFzIGZhaWxlZC4KICAgYm9vbCBmYWlsZWQg
PSBmYWxzZTsKIAogICBUZXN0RXZlbnRMaXN0ZW5lciogcmVwZWF0ZXIgPSBsaXN0ZW5lcnMoKS0+
cmVwZWF0ZXIoKTsKQEAgLTUxNDIsMTcgKzU0NjksMTcgQEAgYm9vbCBVbml0VGVzdEltcGw6OlJ1
bkFsbFRlc3RzKCkgewogICAvLyB3aGVuIHdlIGFyZSBpbnNpZGUgdGhlIHN1YnByb2Nlc3Mgb2Yg
YSBkZWF0aCB0ZXN0LgogICBjb25zdCBpbnQgcmVwZWF0ID0gaW5fc3VicHJvY2Vzc19mb3JfZGVh
dGhfdGVzdCA/IDEgOiBHVEVTVF9GTEFHKHJlcGVhdCk7CiAgIC8vIFJlcGVhdHMgZm9yZXZlciBp
ZiB0aGUgcmVwZWF0IGNvdW50IGlzIG5lZ2F0aXZlLgotICBjb25zdCBib29sIGZvcmV2ZXIgPSBy
ZXBlYXQgPCAwOwotICBmb3IgKGludCBpID0gMDsgZm9yZXZlciB8fCBpICE9IHJlcGVhdDsgaSsr
KSB7CisgIGNvbnN0IGJvb2wgZ3Rlc3RfcmVwZWF0X2ZvcmV2ZXIgPSByZXBlYXQgPCAwOworICBm
b3IgKGludCBpID0gMDsgZ3Rlc3RfcmVwZWF0X2ZvcmV2ZXIgfHwgaSAhPSByZXBlYXQ7IGkrKykg
ewogICAgIC8vIFdlIHdhbnQgdG8gcHJlc2VydmUgZmFpbHVyZXMgZ2VuZXJhdGVkIGJ5IGFkLWhv
YyB0ZXN0CiAgICAgLy8gYXNzZXJ0aW9ucyBleGVjdXRlZCBiZWZvcmUgUlVOX0FMTF9URVNUUygp
LgogICAgIENsZWFyTm9uQWRIb2NUZXN0UmVzdWx0KCk7CiAKICAgICBjb25zdCBUaW1lSW5NaWxs
aXMgc3RhcnQgPSBHZXRUaW1lSW5NaWxsaXMoKTsKIAotICAgIC8vIFNodWZmbGVzIHRlc3QgY2Fz
ZXMgYW5kIHRlc3RzIGlmIHJlcXVlc3RlZC4KKyAgICAvLyBTaHVmZmxlcyB0ZXN0IHN1aXRlcyBh
bmQgdGVzdHMgaWYgcmVxdWVzdGVkLgogICAgIGlmIChoYXNfdGVzdHNfdG9fcnVuICYmIEdURVNU
X0ZMQUcoc2h1ZmZsZSkpIHsKLSAgICAgIHJhbmRvbSgpLT5SZXNlZWQocmFuZG9tX3NlZWRfKTsK
KyAgICAgIHJhbmRvbSgpLT5SZXNlZWQoc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHJhbmRvbV9zZWVk
XykpOwogICAgICAgLy8gVGhpcyBzaG91bGQgYmUgZG9uZSBiZWZvcmUgY2FsbGluZyBPblRlc3RJ
dGVyYXRpb25TdGFydCgpLAogICAgICAgLy8gc3VjaCB0aGF0IGEgdGVzdCBldmVudCBsaXN0ZW5l
ciBjYW4gc2VlIHRoZSBhY3R1YWwgdGVzdCBvcmRlcgogICAgICAgLy8gaW4gdGhlIGV2ZW50LgpA
QCAtNTE2MiwxOSArNTQ4OSwzMyBAQCBib29sIFVuaXRUZXN0SW1wbDo6UnVuQWxsVGVzdHMoKSB7
CiAgICAgLy8gVGVsbHMgdGhlIHVuaXQgdGVzdCBldmVudCBsaXN0ZW5lcnMgdGhhdCB0aGUgdGVz
dHMgYXJlIGFib3V0IHRvIHN0YXJ0LgogICAgIHJlcGVhdGVyLT5PblRlc3RJdGVyYXRpb25TdGFy
dCgqcGFyZW50XywgaSk7CiAKLSAgICAvLyBSdW5zIGVhY2ggdGVzdCBjYXNlIGlmIHRoZXJlIGlz
IGF0IGxlYXN0IG9uZSB0ZXN0IHRvIHJ1bi4KKyAgICAvLyBSdW5zIGVhY2ggdGVzdCBzdWl0ZSBp
ZiB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgdGVzdCB0byBydW4uCiAgICAgaWYgKGhhc190ZXN0c190
b19ydW4pIHsKICAgICAgIC8vIFNldHMgdXAgYWxsIGVudmlyb25tZW50cyBiZWZvcmVoYW5kLgog
ICAgICAgcmVwZWF0ZXItPk9uRW52aXJvbm1lbnRzU2V0VXBTdGFydCgqcGFyZW50Xyk7CiAgICAg
ICBGb3JFYWNoKGVudmlyb25tZW50c18sIFNldFVwRW52aXJvbm1lbnQpOwogICAgICAgcmVwZWF0
ZXItPk9uRW52aXJvbm1lbnRzU2V0VXBFbmQoKnBhcmVudF8pOwogCi0gICAgICAvLyBSdW5zIHRo
ZSB0ZXN0cyBvbmx5IGlmIHRoZXJlIHdhcyBubyBmYXRhbCBmYWlsdXJlIGR1cmluZyBnbG9iYWwK
LSAgICAgIC8vIHNldC11cC4KLSAgICAgIGlmICghVGVzdDo6SGFzRmF0YWxGYWlsdXJlKCkpIHsK
LSAgICAgICAgZm9yIChpbnQgdGVzdF9pbmRleCA9IDA7IHRlc3RfaW5kZXggPCB0b3RhbF90ZXN0
X2Nhc2VfY291bnQoKTsKKyAgICAgIC8vIFJ1bnMgdGhlIHRlc3RzIG9ubHkgaWYgdGhlcmUgd2Fz
IG5vIGZhdGFsIGZhaWx1cmUgb3Igc2tpcCB0cmlnZ2VyZWQKKyAgICAgIC8vIGR1cmluZyBnbG9i
YWwgc2V0LXVwLgorICAgICAgaWYgKFRlc3Q6OklzU2tpcHBlZCgpKSB7CisgICAgICAgIC8vIEVt
aXQgZGlhZ25vc3RpY3Mgd2hlbiBnbG9iYWwgc2V0LXVwIGNhbGxzIHNraXAsIGFzIGl0IHdpbGwg
bm90IGJlCisgICAgICAgIC8vIGVtaXR0ZWQgYnkgZGVmYXVsdC4KKyAgICAgICAgVGVzdFJlc3Vs
dCYgdGVzdF9yZXN1bHQgPQorICAgICAgICAgICAgKmludGVybmFsOjpHZXRVbml0VGVzdEltcGwo
KS0+Y3VycmVudF90ZXN0X3Jlc3VsdCgpOworICAgICAgICBmb3IgKGludCBqID0gMDsgaiA8IHRl
c3RfcmVzdWx0LnRvdGFsX3BhcnRfY291bnQoKTsgKytqKSB7CisgICAgICAgICAgY29uc3QgVGVz
dFBhcnRSZXN1bHQmIHRlc3RfcGFydF9yZXN1bHQgPQorICAgICAgICAgICAgICB0ZXN0X3Jlc3Vs
dC5HZXRUZXN0UGFydFJlc3VsdChqKTsKKyAgICAgICAgICBpZiAodGVzdF9wYXJ0X3Jlc3VsdC50
eXBlKCkgPT0gVGVzdFBhcnRSZXN1bHQ6OmtTa2lwKSB7CisgICAgICAgICAgICBjb25zdCBzdGQ6
OnN0cmluZyYgcmVzdWx0ID0gdGVzdF9wYXJ0X3Jlc3VsdC5tZXNzYWdlKCk7CisgICAgICAgICAg
ICBwcmludGYoIiVzXG4iLCByZXN1bHQuY19zdHIoKSk7CisgICAgICAgICAgfQorICAgICAgICB9
CisgICAgICAgIGZmbHVzaChzdGRvdXQpOworICAgICAgfSBlbHNlIGlmICghVGVzdDo6SGFzRmF0
YWxGYWlsdXJlKCkpIHsKKyAgICAgICAgZm9yIChpbnQgdGVzdF9pbmRleCA9IDA7IHRlc3RfaW5k
ZXggPCB0b3RhbF90ZXN0X3N1aXRlX2NvdW50KCk7CiAgICAgICAgICAgICAgdGVzdF9pbmRleCsr
KSB7Ci0gICAgICAgICAgR2V0TXV0YWJsZVRlc3RDYXNlKHRlc3RfaW5kZXgpLT5SdW4oKTsKKyAg
ICAgICAgICBHZXRNdXRhYmxlU3VpdGVDYXNlKHRlc3RfaW5kZXgpLT5SdW4oKTsKICAgICAgICAg
fQogICAgICAgfQogCkBAIC01MjM0LDkgKzU1NzUsOSBAQCBib29sIFVuaXRUZXN0SW1wbDo6UnVu
QWxsVGVzdHMoKSB7CiAvLyBiZSBjcmVhdGVkLCBwcmludHMgYW4gZXJyb3IgYW5kIGV4aXRzLgog
dm9pZCBXcml0ZVRvU2hhcmRTdGF0dXNGaWxlSWZOZWVkZWQoKSB7CiAgIGNvbnN0IGNoYXIqIGNv
bnN0IHRlc3Rfc2hhcmRfZmlsZSA9IHBvc2l4OjpHZXRFbnYoa1Rlc3RTaGFyZFN0YXR1c0ZpbGUp
OwotICBpZiAodGVzdF9zaGFyZF9maWxlICE9IE5VTEwpIHsKKyAgaWYgKHRlc3Rfc2hhcmRfZmls
ZSAhPSBudWxscHRyKSB7CiAgICAgRklMRSogY29uc3QgZmlsZSA9IHBvc2l4OjpGT3Blbih0ZXN0
X3NoYXJkX2ZpbGUsICJ3Iik7Ci0gICAgaWYgKGZpbGUgPT0gTlVMTCkgeworICAgIGlmIChmaWxl
ID09IG51bGxwdHIpIHsKICAgICAgIENvbG9yZWRQcmludGYoQ09MT1JfUkVELAogICAgICAgICAg
ICAgICAgICAgICAiQ291bGQgbm90IHdyaXRlIHRvIHRoZSB0ZXN0IHNoYXJkIHN0YXR1cyBmaWxl
IFwiJXNcIiAiCiAgICAgICAgICAgICAgICAgICAgICJzcGVjaWZpZWQgYnkgdGhlICVzIGVudmly
b25tZW50IHZhcmlhYmxlLlxuIiwKQEAgLTUyNjEsOCArNTYwMiw4IEBAIGJvb2wgU2hvdWxkU2hh
cmQoY29uc3QgY2hhciogdG90YWxfc2hhcmRzX2VudiwKICAgICByZXR1cm4gZmFsc2U7CiAgIH0K
IAotICBjb25zdCBJbnQzMiB0b3RhbF9zaGFyZHMgPSBJbnQzMkZyb21FbnZPckRpZSh0b3RhbF9z
aGFyZHNfZW52LCAtMSk7Ci0gIGNvbnN0IEludDMyIHNoYXJkX2luZGV4ID0gSW50MzJGcm9tRW52
T3JEaWUoc2hhcmRfaW5kZXhfZW52LCAtMSk7CisgIGNvbnN0IGludDMyX3QgdG90YWxfc2hhcmRz
ID0gSW50MzJGcm9tRW52T3JEaWUodG90YWxfc2hhcmRzX2VudiwgLTEpOworICBjb25zdCBpbnQz
Ml90IHNoYXJkX2luZGV4ID0gSW50MzJGcm9tRW52T3JEaWUoc2hhcmRfaW5kZXhfZW52LCAtMSk7
CiAKICAgaWYgKHRvdGFsX3NoYXJkcyA9PSAtMSAmJiBzaGFyZF9pbmRleCA9PSAtMSkgewogICAg
IHJldHVybiBmYWxzZTsKQEAgLTUyNzEsNyArNTYxMiw3IEBAIGJvb2wgU2hvdWxkU2hhcmQoY29u
c3QgY2hhciogdG90YWxfc2hhcmRzX2VudiwKICAgICAgIDw8ICJJbnZhbGlkIGVudmlyb25tZW50
IHZhcmlhYmxlczogeW91IGhhdmUgIgogICAgICAgPDwga1Rlc3RTaGFyZEluZGV4IDw8ICIgPSAi
IDw8IHNoYXJkX2luZGV4CiAgICAgICA8PCAiLCBidXQgaGF2ZSBsZWZ0ICIgPDwga1Rlc3RUb3Rh
bFNoYXJkcyA8PCAiIHVuc2V0LlxuIjsKLSAgICBDb2xvcmVkUHJpbnRmKENPTE9SX1JFRCwgbXNn
LkdldFN0cmluZygpLmNfc3RyKCkpOworICAgIENvbG9yZWRQcmludGYoQ09MT1JfUkVELCAiJXMi
LCBtc2cuR2V0U3RyaW5nKCkuY19zdHIoKSk7CiAgICAgZmZsdXNoKHN0ZG91dCk7CiAgICAgZXhp
dChFWElUX0ZBSUxVUkUpOwogICB9IGVsc2UgaWYgKHRvdGFsX3NoYXJkcyAhPSAtMSAmJiBzaGFy
ZF9pbmRleCA9PSAtMSkgewpAQCAtNTI3OSw3ICs1NjIwLDcgQEAgYm9vbCBTaG91bGRTaGFyZChj
b25zdCBjaGFyKiB0b3RhbF9zaGFyZHNfZW52LAogICAgICAgPDwgIkludmFsaWQgZW52aXJvbm1l
bnQgdmFyaWFibGVzOiB5b3UgaGF2ZSAiCiAgICAgICA8PCBrVGVzdFRvdGFsU2hhcmRzIDw8ICIg
PSAiIDw8IHRvdGFsX3NoYXJkcwogICAgICAgPDwgIiwgYnV0IGhhdmUgbGVmdCAiIDw8IGtUZXN0
U2hhcmRJbmRleCA8PCAiIHVuc2V0LlxuIjsKLSAgICBDb2xvcmVkUHJpbnRmKENPTE9SX1JFRCwg
bXNnLkdldFN0cmluZygpLmNfc3RyKCkpOworICAgIENvbG9yZWRQcmludGYoQ09MT1JfUkVELCAi
JXMiLCBtc2cuR2V0U3RyaW5nKCkuY19zdHIoKSk7CiAgICAgZmZsdXNoKHN0ZG91dCk7CiAgICAg
ZXhpdChFWElUX0ZBSUxVUkUpOwogICB9IGVsc2UgaWYgKHNoYXJkX2luZGV4IDwgMCB8fCBzaGFy
ZF9pbmRleCA+PSB0b3RhbF9zaGFyZHMpIHsKQEAgLTUyODgsNyArNTYyOSw3IEBAIGJvb2wgU2hv
dWxkU2hhcmQoY29uc3QgY2hhciogdG90YWxfc2hhcmRzX2VudiwKICAgICAgIDw8IGtUZXN0U2hh
cmRJbmRleCA8PCAiIDwgIiA8PCBrVGVzdFRvdGFsU2hhcmRzCiAgICAgICA8PCAiLCBidXQgeW91
IGhhdmUgIiA8PCBrVGVzdFNoYXJkSW5kZXggPDwgIj0iIDw8IHNoYXJkX2luZGV4CiAgICAgICA8
PCAiLCAiIDw8IGtUZXN0VG90YWxTaGFyZHMgPDwgIj0iIDw8IHRvdGFsX3NoYXJkcyA8PCAiLlxu
IjsKLSAgICBDb2xvcmVkUHJpbnRmKENPTE9SX1JFRCwgbXNnLkdldFN0cmluZygpLmNfc3RyKCkp
OworICAgIENvbG9yZWRQcmludGYoQ09MT1JfUkVELCAiJXMiLCBtc2cuR2V0U3RyaW5nKCkuY19z
dHIoKSk7CiAgICAgZmZsdXNoKHN0ZG91dCk7CiAgICAgZXhpdChFWElUX0ZBSUxVUkUpOwogICB9
CkBAIC01Mjk5LDEzICs1NjQwLDEzIEBAIGJvb2wgU2hvdWxkU2hhcmQoY29uc3QgY2hhciogdG90
YWxfc2hhcmRzX2VudiwKIC8vIFBhcnNlcyB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgdmFyIGFz
IGFuIEludDMyLiBJZiBpdCBpcyB1bnNldCwKIC8vIHJldHVybnMgZGVmYXVsdF92YWwuIElmIGl0
IGlzIG5vdCBhbiBJbnQzMiwgcHJpbnRzIGFuIGVycm9yCiAvLyBhbmQgYWJvcnRzLgotSW50MzIg
SW50MzJGcm9tRW52T3JEaWUoY29uc3QgY2hhciogdmFyLCBJbnQzMiBkZWZhdWx0X3ZhbCkgewor
aW50MzJfdCBJbnQzMkZyb21FbnZPckRpZShjb25zdCBjaGFyKiB2YXIsIGludDMyX3QgZGVmYXVs
dF92YWwpIHsKICAgY29uc3QgY2hhciogc3RyX3ZhbCA9IHBvc2l4OjpHZXRFbnYodmFyKTsKLSAg
aWYgKHN0cl92YWwgPT0gTlVMTCkgeworICBpZiAoc3RyX3ZhbCA9PSBudWxscHRyKSB7CiAgICAg
cmV0dXJuIGRlZmF1bHRfdmFsOwogICB9CiAKLSAgSW50MzIgcmVzdWx0OworICBpbnQzMl90IHJl
c3VsdDsKICAgaWYgKCFQYXJzZUludDMyKE1lc3NhZ2UoKSA8PCAiVGhlIHZhbHVlIG9mIGVudmly
b25tZW50IHZhcmlhYmxlICIgPDwgdmFyLAogICAgICAgICAgICAgICAgICAgc3RyX3ZhbCwgJnJl
c3VsdCkpIHsKICAgICBleGl0KEVYSVRfRkFJTFVSRSk7CkBAIC01MzE0LDggKzU2NTUsOCBAQCBJ
bnQzMiBJbnQzMkZyb21FbnZPckRpZShjb25zdCBjaGFyKiB2YXIsIEludDMyIGRlZmF1bHRfdmFs
KSB7CiB9CiAKIC8vIEdpdmVuIHRoZSB0b3RhbCBudW1iZXIgb2Ygc2hhcmRzLCB0aGUgc2hhcmQg
aW5kZXgsIGFuZCB0aGUgdGVzdCBpZCwKLS8vIHJldHVybnMgdHJ1ZSBpZmYgdGhlIHRlc3Qgc2hv
dWxkIGJlIHJ1biBvbiB0aGlzIHNoYXJkLiBUaGUgdGVzdCBpZCBpcwotLy8gc29tZSBhcmJpdHJh
cnkgYnV0IHVuaXF1ZSBub24tbmVnYXRpdmUgaW50ZWdlciBhc3NpZ25lZCB0byBlYWNoIHRlc3QK
Ky8vIHJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgdGVzdCBzaG91bGQgYmUgcnVuIG9u
IHRoaXMgc2hhcmQuIFRoZSB0ZXN0IGlkCisvLyBpcyBzb21lIGFyYml0cmFyeSBidXQgdW5pcXVl
IG5vbi1uZWdhdGl2ZSBpbnRlZ2VyIGFzc2lnbmVkIHRvIGVhY2ggdGVzdAogLy8gbWV0aG9kLiBB
c3N1bWVzIHRoYXQgMCA8PSBzaGFyZF9pbmRleCA8IHRvdGFsX3NoYXJkcy4KIGJvb2wgU2hvdWxk
UnVuVGVzdE9uU2hhcmQoaW50IHRvdGFsX3NoYXJkcywgaW50IHNoYXJkX2luZGV4LCBpbnQgdGVz
dF9pZCkgewogICByZXR1cm4gKHRlc3RfaWQgJSB0b3RhbF9zaGFyZHMpID09IHNoYXJkX2luZGV4
OwpAQCAtNTMyMywxNSArNTY2NCwxNSBAQCBib29sIFNob3VsZFJ1blRlc3RPblNoYXJkKGludCB0
b3RhbF9zaGFyZHMsIGludCBzaGFyZF9pbmRleCwgaW50IHRlc3RfaWQpIHsKIAogLy8gQ29tcGFy
ZXMgdGhlIG5hbWUgb2YgZWFjaCB0ZXN0IHdpdGggdGhlIHVzZXItc3BlY2lmaWVkIGZpbHRlciB0
bwogLy8gZGVjaWRlIHdoZXRoZXIgdGhlIHRlc3Qgc2hvdWxkIGJlIHJ1biwgdGhlbiByZWNvcmRz
IHRoZSByZXN1bHQgaW4KLS8vIGVhY2ggVGVzdENhc2UgYW5kIFRlc3RJbmZvIG9iamVjdC4KKy8v
IGVhY2ggVGVzdFN1aXRlIGFuZCBUZXN0SW5mbyBvYmplY3QuCiAvLyBJZiBzaGFyZF90ZXN0cyA9
PSB0cnVlLCBmdXJ0aGVyIGZpbHRlcnMgdGVzdHMgYmFzZWQgb24gc2hhcmRpbmcKIC8vIHZhcmlh
YmxlcyBpbiB0aGUgZW52aXJvbm1lbnQgLSBzZWUKIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9nb29n
bGUvZ29vZ2xldGVzdC9ibG9iL21hc3Rlci9nb29nbGV0ZXN0L2RvY3MvYWR2YW5jZWQubWQKIC8v
IC4gUmV0dXJucyB0aGUgbnVtYmVyIG9mIHRlc3RzIHRoYXQgc2hvdWxkIHJ1bi4KIGludCBVbml0
VGVzdEltcGw6OkZpbHRlclRlc3RzKFJlYWN0aW9uVG9TaGFyZGluZyBzaGFyZF90ZXN0cykgewot
ICBjb25zdCBJbnQzMiB0b3RhbF9zaGFyZHMgPSBzaGFyZF90ZXN0cyA9PSBIT05PUl9TSEFSRElO
R19QUk9UT0NPTCA/CisgIGNvbnN0IGludDMyX3QgdG90YWxfc2hhcmRzID0gc2hhcmRfdGVzdHMg
PT0gSE9OT1JfU0hBUkRJTkdfUFJPVE9DT0wgPwogICAgICAgSW50MzJGcm9tRW52T3JEaWUoa1Rl
c3RUb3RhbFNoYXJkcywgLTEpIDogLTE7Ci0gIGNvbnN0IEludDMyIHNoYXJkX2luZGV4ID0gc2hh
cmRfdGVzdHMgPT0gSE9OT1JfU0hBUkRJTkdfUFJPVE9DT0wgPworICBjb25zdCBpbnQzMl90IHNo
YXJkX2luZGV4ID0gc2hhcmRfdGVzdHMgPT0gSE9OT1JfU0hBUkRJTkdfUFJPVE9DT0wgPwogICAg
ICAgSW50MzJGcm9tRW52T3JEaWUoa1Rlc3RTaGFyZEluZGV4LCAtMSkgOiAtMTsKIAogICAvLyBu
dW1fcnVubmFibGVfdGVzdHMgYXJlIHRoZSBudW1iZXIgb2YgdGVzdHMgdGhhdCB3aWxsCkBAIC01
MzQwLDI2ICs1NjgxLDIzIEBAIGludCBVbml0VGVzdEltcGw6OkZpbHRlclRlc3RzKFJlYWN0aW9u
VG9TaGFyZGluZyBzaGFyZF90ZXN0cykgewogICAvLyB0aGlzIHNoYXJkLgogICBpbnQgbnVtX3J1
bm5hYmxlX3Rlc3RzID0gMDsKICAgaW50IG51bV9zZWxlY3RlZF90ZXN0cyA9IDA7Ci0gIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgdGVzdF9jYXNlc18uc2l6ZSgpOyBpKyspIHsKLSAgICBUZXN0Q2Fz
ZSogY29uc3QgdGVzdF9jYXNlID0gdGVzdF9jYXNlc19baV07Ci0gICAgY29uc3Qgc3RkOjpzdHJp
bmcgJnRlc3RfY2FzZV9uYW1lID0gdGVzdF9jYXNlLT5uYW1lKCk7Ci0gICAgdGVzdF9jYXNlLT5z
ZXRfc2hvdWxkX3J1bihmYWxzZSk7CisgIGZvciAoYXV0byogdGVzdF9zdWl0ZSA6IHRlc3Rfc3Vp
dGVzXykgeworICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiB0ZXN0X3N1aXRlX25hbWUgPSB0ZXN0X3N1
aXRlLT5uYW1lKCk7CisgICAgdGVzdF9zdWl0ZS0+c2V0X3Nob3VsZF9ydW4oZmFsc2UpOwogCi0g
ICAgZm9yIChzaXplX3QgaiA9IDA7IGogPCB0ZXN0X2Nhc2UtPnRlc3RfaW5mb19saXN0KCkuc2l6
ZSgpOyBqKyspIHsKLSAgICAgIFRlc3RJbmZvKiBjb25zdCB0ZXN0X2luZm8gPSB0ZXN0X2Nhc2Ut
PnRlc3RfaW5mb19saXN0KClbal07CisgICAgZm9yIChzaXplX3QgaiA9IDA7IGogPCB0ZXN0X3N1
aXRlLT50ZXN0X2luZm9fbGlzdCgpLnNpemUoKTsgaisrKSB7CisgICAgICBUZXN0SW5mbyogY29u
c3QgdGVzdF9pbmZvID0gdGVzdF9zdWl0ZS0+dGVzdF9pbmZvX2xpc3QoKVtqXTsKICAgICAgIGNv
bnN0IHN0ZDo6c3RyaW5nIHRlc3RfbmFtZSh0ZXN0X2luZm8tPm5hbWUoKSk7Ci0gICAgICAvLyBB
IHRlc3QgaXMgZGlzYWJsZWQgaWYgdGVzdCBjYXNlIG5hbWUgb3IgdGVzdCBuYW1lIG1hdGNoZXMK
KyAgICAgIC8vIEEgdGVzdCBpcyBkaXNhYmxlZCBpZiB0ZXN0IHN1aXRlIG5hbWUgb3IgdGVzdCBu
YW1lIG1hdGNoZXMKICAgICAgIC8vIGtEaXNhYmxlVGVzdEZpbHRlci4KLSAgICAgIGNvbnN0IGJv
b2wgaXNfZGlzYWJsZWQgPQotICAgICAgICAgIGludGVybmFsOjpVbml0VGVzdE9wdGlvbnM6Ok1h
dGNoZXNGaWx0ZXIodGVzdF9jYXNlX25hbWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBrRGlzYWJsZVRlc3RGaWx0ZXIpIHx8Ci0gICAgICAgICAg
aW50ZXJuYWw6OlVuaXRUZXN0T3B0aW9uczo6TWF0Y2hlc0ZpbHRlcih0ZXN0X25hbWUsCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrRGlzYWJsZVRl
c3RGaWx0ZXIpOworICAgICAgY29uc3QgYm9vbCBpc19kaXNhYmxlZCA9IGludGVybmFsOjpVbml0
VGVzdE9wdGlvbnM6Ok1hdGNoZXNGaWx0ZXIoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHRlc3Rfc3VpdGVfbmFtZSwga0Rpc2FibGVUZXN0RmlsdGVyKSB8fAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsOjpVbml0VGVzdE9wdGlvbnM6Ok1hdGNoZXNG
aWx0ZXIoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfbmFtZSwga0Rp
c2FibGVUZXN0RmlsdGVyKTsKICAgICAgIHRlc3RfaW5mby0+aXNfZGlzYWJsZWRfID0gaXNfZGlz
YWJsZWQ7CiAKLSAgICAgIGNvbnN0IGJvb2wgbWF0Y2hlc19maWx0ZXIgPQotICAgICAgICAgIGlu
dGVybmFsOjpVbml0VGVzdE9wdGlvbnM6OkZpbHRlck1hdGNoZXNUZXN0KHRlc3RfY2FzZV9uYW1l
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHRlc3RfbmFtZSk7CisgICAgICBjb25zdCBib29sIG1hdGNoZXNfZmlsdGVyID0gaW50ZXJuYWw6
OlVuaXRUZXN0T3B0aW9uczo6RmlsdGVyTWF0Y2hlc1Rlc3QoCisgICAgICAgICAgdGVzdF9zdWl0
ZV9uYW1lLCB0ZXN0X25hbWUpOwogICAgICAgdGVzdF9pbmZvLT5tYXRjaGVzX2ZpbHRlcl8gPSBt
YXRjaGVzX2ZpbHRlcjsKIAogICAgICAgY29uc3QgYm9vbCBpc19ydW5uYWJsZSA9CkBAIC01Mzc2
LDcgKzU3MTQsNyBAQCBpbnQgVW5pdFRlc3RJbXBsOjpGaWx0ZXJUZXN0cyhSZWFjdGlvblRvU2hh
cmRpbmcgc2hhcmRfdGVzdHMpIHsKICAgICAgIG51bV9zZWxlY3RlZF90ZXN0cyArPSBpc19zZWxl
Y3RlZDsKIAogICAgICAgdGVzdF9pbmZvLT5zaG91bGRfcnVuXyA9IGlzX3NlbGVjdGVkOwotICAg
ICAgdGVzdF9jYXNlLT5zZXRfc2hvdWxkX3J1bih0ZXN0X2Nhc2UtPnNob3VsZF9ydW4oKSB8fCBp
c19zZWxlY3RlZCk7CisgICAgICB0ZXN0X3N1aXRlLT5zZXRfc2hvdWxkX3J1bih0ZXN0X3N1aXRl
LT5zaG91bGRfcnVuKCkgfHwgaXNfc2VsZWN0ZWQpOwogICAgIH0KICAgfQogICByZXR1cm4gbnVt
X3NlbGVjdGVkX3Rlc3RzOwpAQCAtNTM4Nyw3ICs1NzI1LDcgQEAgaW50IFVuaXRUZXN0SW1wbDo6
RmlsdGVyVGVzdHMoUmVhY3Rpb25Ub1NoYXJkaW5nIHNoYXJkX3Rlc3RzKSB7CiAvLyBtYXhfbGVu
Z3RoIGNoYXJhY3RlcnMsIG9ubHkgcHJpbnRzIHRoZSBmaXJzdCBtYXhfbGVuZ3RoIGNoYXJhY3Rl
cnMKIC8vIGFuZCAiLi4uIi4KIHN0YXRpYyB2b2lkIFByaW50T25PbmVMaW5lKGNvbnN0IGNoYXIq
IHN0ciwgaW50IG1heF9sZW5ndGgpIHsKLSAgaWYgKHN0ciAhPSBOVUxMKSB7CisgIGlmIChzdHIg
IT0gbnVsbHB0cikgewogICAgIGZvciAoaW50IGkgPSAwOyAqc3RyICE9ICdcMCc7ICsrc3RyKSB7
CiAgICAgICBpZiAoaSA+PSBtYXhfbGVuZ3RoKSB7CiAgICAgICAgIHByaW50ZigiLi4uIik7CkBA
IC01NDA5LDI3ICs1NzQ3LDI1IEBAIHZvaWQgVW5pdFRlc3RJbXBsOjpMaXN0VGVzdHNNYXRjaGlu
Z0ZpbHRlcigpIHsKICAgLy8gUHJpbnQgYXQgbW9zdCB0aGlzIG1hbnkgY2hhcmFjdGVycyBmb3Ig
ZWFjaCB0eXBlL3ZhbHVlIHBhcmFtZXRlci4KICAgY29uc3QgaW50IGtNYXhQYXJhbUxlbmd0aCA9
IDI1MDsKIAotICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHRlc3RfY2FzZXNfLnNpemUoKTsgaSsr
KSB7Ci0gICAgY29uc3QgVGVzdENhc2UqIGNvbnN0IHRlc3RfY2FzZSA9IHRlc3RfY2FzZXNfW2ld
OwotICAgIGJvb2wgcHJpbnRlZF90ZXN0X2Nhc2VfbmFtZSA9IGZhbHNlOworICBmb3IgKGF1dG8q
IHRlc3Rfc3VpdGUgOiB0ZXN0X3N1aXRlc18pIHsKKyAgICBib29sIHByaW50ZWRfdGVzdF9zdWl0
ZV9uYW1lID0gZmFsc2U7CiAKLSAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IHRlc3RfY2FzZS0+
dGVzdF9pbmZvX2xpc3QoKS5zaXplKCk7IGorKykgewotICAgICAgY29uc3QgVGVzdEluZm8qIGNv
bnN0IHRlc3RfaW5mbyA9Ci0gICAgICAgICAgdGVzdF9jYXNlLT50ZXN0X2luZm9fbGlzdCgpW2pd
OworICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgdGVzdF9zdWl0ZS0+dGVzdF9pbmZvX2xpc3Qo
KS5zaXplKCk7IGorKykgeworICAgICAgY29uc3QgVGVzdEluZm8qIGNvbnN0IHRlc3RfaW5mbyA9
IHRlc3Rfc3VpdGUtPnRlc3RfaW5mb19saXN0KClbal07CiAgICAgICBpZiAodGVzdF9pbmZvLT5t
YXRjaGVzX2ZpbHRlcl8pIHsKLSAgICAgICAgaWYgKCFwcmludGVkX3Rlc3RfY2FzZV9uYW1lKSB7
Ci0gICAgICAgICAgcHJpbnRlZF90ZXN0X2Nhc2VfbmFtZSA9IHRydWU7Ci0gICAgICAgICAgcHJp
bnRmKCIlcy4iLCB0ZXN0X2Nhc2UtPm5hbWUoKSk7Ci0gICAgICAgICAgaWYgKHRlc3RfY2FzZS0+
dHlwZV9wYXJhbSgpICE9IE5VTEwpIHsKKyAgICAgICAgaWYgKCFwcmludGVkX3Rlc3Rfc3VpdGVf
bmFtZSkgeworICAgICAgICAgIHByaW50ZWRfdGVzdF9zdWl0ZV9uYW1lID0gdHJ1ZTsKKyAgICAg
ICAgICBwcmludGYoIiVzLiIsIHRlc3Rfc3VpdGUtPm5hbWUoKSk7CisgICAgICAgICAgaWYgKHRl
c3Rfc3VpdGUtPnR5cGVfcGFyYW0oKSAhPSBudWxscHRyKSB7CiAgICAgICAgICAgICBwcmludGYo
IiAgIyAlcyA9ICIsIGtUeXBlUGFyYW1MYWJlbCk7CiAgICAgICAgICAgICAvLyBXZSBwcmludCB0
aGUgdHlwZSBwYXJhbWV0ZXIgb24gYSBzaW5nbGUgbGluZSB0byBtYWtlCiAgICAgICAgICAgICAv
LyB0aGUgb3V0cHV0IGVhc3kgdG8gcGFyc2UgYnkgYSBwcm9ncmFtLgotICAgICAgICAgICAgUHJp
bnRPbk9uZUxpbmUodGVzdF9jYXNlLT50eXBlX3BhcmFtKCksIGtNYXhQYXJhbUxlbmd0aCk7Cisg
ICAgICAgICAgICBQcmludE9uT25lTGluZSh0ZXN0X3N1aXRlLT50eXBlX3BhcmFtKCksIGtNYXhQ
YXJhbUxlbmd0aCk7CiAgICAgICAgICAgfQogICAgICAgICAgIHByaW50ZigiXG4iKTsKICAgICAg
ICAgfQogICAgICAgICBwcmludGYoIiAgJXMiLCB0ZXN0X2luZm8tPm5hbWUoKSk7Ci0gICAgICAg
IGlmICh0ZXN0X2luZm8tPnZhbHVlX3BhcmFtKCkgIT0gTlVMTCkgeworICAgICAgICBpZiAodGVz
dF9pbmZvLT52YWx1ZV9wYXJhbSgpICE9IG51bGxwdHIpIHsKICAgICAgICAgICBwcmludGYoIiAg
IyAlcyA9ICIsIGtWYWx1ZVBhcmFtTGFiZWwpOwogICAgICAgICAgIC8vIFdlIHByaW50IHRoZSB2
YWx1ZSBwYXJhbWV0ZXIgb24gYSBzaW5nbGUgbGluZSB0byBtYWtlIHRoZQogICAgICAgICAgIC8v
IG91dHB1dCBlYXN5IHRvIHBhcnNlIGJ5IGEgcHJvZ3JhbS4KQEAgLTU0NDgsMTEgKzU3ODQsMTEg
QEAgdm9pZCBVbml0VGVzdEltcGw6Okxpc3RUZXN0c01hdGNoaW5nRmlsdGVyKCkgewogICAgIGlm
IChvdXRwdXRfZm9ybWF0ID09ICJ4bWwiKSB7CiAgICAgICBYbWxVbml0VGVzdFJlc3VsdFByaW50
ZXIoCiAgICAgICAgICAgVW5pdFRlc3RPcHRpb25zOjpHZXRBYnNvbHV0ZVBhdGhUb091dHB1dEZp
bGUoKS5jX3N0cigpKQotICAgICAgICAgIC5QcmludFhtbFRlc3RzTGlzdCgmc3RyZWFtLCB0ZXN0
X2Nhc2VzXyk7CisgICAgICAgICAgLlByaW50WG1sVGVzdHNMaXN0KCZzdHJlYW0sIHRlc3Rfc3Vp
dGVzXyk7CiAgICAgfSBlbHNlIGlmIChvdXRwdXRfZm9ybWF0ID09ICJqc29uIikgewogICAgICAg
SnNvblVuaXRUZXN0UmVzdWx0UHJpbnRlcigKICAgICAgICAgICBVbml0VGVzdE9wdGlvbnM6Okdl
dEFic29sdXRlUGF0aFRvT3V0cHV0RmlsZSgpLmNfc3RyKCkpCi0gICAgICAgICAgLlByaW50SnNv
blRlc3RMaXN0KCZzdHJlYW0sIHRlc3RfY2FzZXNfKTsKKyAgICAgICAgICAuUHJpbnRKc29uVGVz
dExpc3QoJnN0cmVhbSwgdGVzdF9zdWl0ZXNfKTsKICAgICB9CiAgICAgZnByaW50ZihmaWxlb3V0
LCAiJXMiLCBTdHJpbmdTdHJlYW1Ub1N0cmluZygmc3RyZWFtKS5jX3N0cigpKTsKICAgICBmY2xv
c2UoZmlsZW91dCk7CkBAIC01NDc2LDcgKzU4MTIsNyBAQCB2b2lkIFVuaXRUZXN0SW1wbDo6c2V0
X29zX3N0YWNrX3RyYWNlX2dldHRlcigKIC8vIG90aGVyd2lzZSwgY3JlYXRlcyBhbiBPc1N0YWNr
VHJhY2VHZXR0ZXIsIG1ha2VzIGl0IHRoZSBjdXJyZW50CiAvLyBnZXR0ZXIsIGFuZCByZXR1cm5z
IGl0LgogT3NTdGFja1RyYWNlR2V0dGVySW50ZXJmYWNlKiBVbml0VGVzdEltcGw6Om9zX3N0YWNr
X3RyYWNlX2dldHRlcigpIHsKLSAgaWYgKG9zX3N0YWNrX3RyYWNlX2dldHRlcl8gPT0gTlVMTCkg
eworICBpZiAob3Nfc3RhY2tfdHJhY2VfZ2V0dGVyXyA9PSBudWxscHRyKSB7CiAjaWZkZWYgR1RF
U1RfT1NfU1RBQ0tfVFJBQ0VfR0VUVEVSXwogICAgIG9zX3N0YWNrX3RyYWNlX2dldHRlcl8gPSBu
ZXcgR1RFU1RfT1NfU1RBQ0tfVFJBQ0VfR0VUVEVSXzsKICNlbHNlCkBAIC01NDg5LDM4ICs1ODI1
LDM4IEBAIE9zU3RhY2tUcmFjZUdldHRlckludGVyZmFjZSogVW5pdFRlc3RJbXBsOjpvc19zdGFj
a190cmFjZV9nZXR0ZXIoKSB7CiAKIC8vIFJldHVybnMgdGhlIG1vc3Qgc3BlY2lmaWMgVGVzdFJl
c3VsdCBjdXJyZW50bHkgcnVubmluZy4KIFRlc3RSZXN1bHQqIFVuaXRUZXN0SW1wbDo6Y3VycmVu
dF90ZXN0X3Jlc3VsdCgpIHsKLSAgaWYgKGN1cnJlbnRfdGVzdF9pbmZvXyAhPSBOVUxMKSB7Cisg
IGlmIChjdXJyZW50X3Rlc3RfaW5mb18gIT0gbnVsbHB0cikgewogICAgIHJldHVybiAmY3VycmVu
dF90ZXN0X2luZm9fLT5yZXN1bHRfOwogICB9Ci0gIGlmIChjdXJyZW50X3Rlc3RfY2FzZV8gIT0g
TlVMTCkgewotICAgIHJldHVybiAmY3VycmVudF90ZXN0X2Nhc2VfLT5hZF9ob2NfdGVzdF9yZXN1
bHRfOworICBpZiAoY3VycmVudF90ZXN0X3N1aXRlXyAhPSBudWxscHRyKSB7CisgICAgcmV0dXJu
ICZjdXJyZW50X3Rlc3Rfc3VpdGVfLT5hZF9ob2NfdGVzdF9yZXN1bHRfOwogICB9CiAgIHJldHVy
biAmYWRfaG9jX3Rlc3RfcmVzdWx0XzsKIH0KIAotLy8gU2h1ZmZsZXMgYWxsIHRlc3QgY2FzZXMs
IGFuZCB0aGUgdGVzdHMgd2l0aGluIGVhY2ggdGVzdCBjYXNlLAorLy8gU2h1ZmZsZXMgYWxsIHRl
c3Qgc3VpdGVzLCBhbmQgdGhlIHRlc3RzIHdpdGhpbiBlYWNoIHRlc3Qgc3VpdGUsCiAvLyBtYWtp
bmcgc3VyZSB0aGF0IGRlYXRoIHRlc3RzIGFyZSBzdGlsbCBydW4gZmlyc3QuCiB2b2lkIFVuaXRU
ZXN0SW1wbDo6U2h1ZmZsZVRlc3RzKCkgewotICAvLyBTaHVmZmxlcyB0aGUgZGVhdGggdGVzdCBj
YXNlcy4KLSAgU2h1ZmZsZVJhbmdlKHJhbmRvbSgpLCAwLCBsYXN0X2RlYXRoX3Rlc3RfY2FzZV8g
KyAxLCAmdGVzdF9jYXNlX2luZGljZXNfKTsKKyAgLy8gU2h1ZmZsZXMgdGhlIGRlYXRoIHRlc3Qg
c3VpdGVzLgorICBTaHVmZmxlUmFuZ2UocmFuZG9tKCksIDAsIGxhc3RfZGVhdGhfdGVzdF9zdWl0
ZV8gKyAxLCAmdGVzdF9zdWl0ZV9pbmRpY2VzXyk7CiAKLSAgLy8gU2h1ZmZsZXMgdGhlIG5vbi1k
ZWF0aCB0ZXN0IGNhc2VzLgotICBTaHVmZmxlUmFuZ2UocmFuZG9tKCksIGxhc3RfZGVhdGhfdGVz
dF9jYXNlXyArIDEsCi0gICAgICAgICAgICAgICBzdGF0aWNfY2FzdDxpbnQ+KHRlc3RfY2FzZXNf
LnNpemUoKSksICZ0ZXN0X2Nhc2VfaW5kaWNlc18pOworICAvLyBTaHVmZmxlcyB0aGUgbm9uLWRl
YXRoIHRlc3Qgc3VpdGVzLgorICBTaHVmZmxlUmFuZ2UocmFuZG9tKCksIGxhc3RfZGVhdGhfdGVz
dF9zdWl0ZV8gKyAxLAorICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8aW50Pih0ZXN0X3N1aXRl
c18uc2l6ZSgpKSwgJnRlc3Rfc3VpdGVfaW5kaWNlc18pOwogCi0gIC8vIFNodWZmbGVzIHRoZSB0
ZXN0cyBpbnNpZGUgZWFjaCB0ZXN0IGNhc2UuCi0gIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgdGVz
dF9jYXNlc18uc2l6ZSgpOyBpKyspIHsKLSAgICB0ZXN0X2Nhc2VzX1tpXS0+U2h1ZmZsZVRlc3Rz
KHJhbmRvbSgpKTsKKyAgLy8gU2h1ZmZsZXMgdGhlIHRlc3RzIGluc2lkZSBlYWNoIHRlc3Qgc3Vp
dGUuCisgIGZvciAoYXV0byYgdGVzdF9zdWl0ZSA6IHRlc3Rfc3VpdGVzXykgeworICAgIHRlc3Rf
c3VpdGUtPlNodWZmbGVUZXN0cyhyYW5kb20oKSk7CiAgIH0KIH0KIAotLy8gUmVzdG9yZXMgdGhl
IHRlc3QgY2FzZXMgYW5kIHRlc3RzIHRvIHRoZWlyIG9yZGVyIGJlZm9yZSB0aGUgZmlyc3Qgc2h1
ZmZsZS4KKy8vIFJlc3RvcmVzIHRoZSB0ZXN0IHN1aXRlcyBhbmQgdGVzdHMgdG8gdGhlaXIgb3Jk
ZXIgYmVmb3JlIHRoZSBmaXJzdCBzaHVmZmxlLgogdm9pZCBVbml0VGVzdEltcGw6OlVuc2h1ZmZs
ZVRlc3RzKCkgewotICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHRlc3RfY2FzZXNfLnNpemUoKTsg
aSsrKSB7Ci0gICAgLy8gVW5zaHVmZmxlcyB0aGUgdGVzdHMgaW4gZWFjaCB0ZXN0IGNhc2UuCi0g
ICAgdGVzdF9jYXNlc19baV0tPlVuc2h1ZmZsZVRlc3RzKCk7Ci0gICAgLy8gUmVzZXRzIHRoZSBp
bmRleCBvZiBlYWNoIHRlc3QgY2FzZS4KLSAgICB0ZXN0X2Nhc2VfaW5kaWNlc19baV0gPSBzdGF0
aWNfY2FzdDxpbnQ+KGkpOworICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHRlc3Rfc3VpdGVzXy5z
aXplKCk7IGkrKykgeworICAgIC8vIFVuc2h1ZmZsZXMgdGhlIHRlc3RzIGluIGVhY2ggdGVzdCBz
dWl0ZS4KKyAgICB0ZXN0X3N1aXRlc19baV0tPlVuc2h1ZmZsZVRlc3RzKCk7CisgICAgLy8gUmVz
ZXRzIHRoZSBpbmRleCBvZiBlYWNoIHRlc3Qgc3VpdGUuCisgICAgdGVzdF9zdWl0ZV9pbmRpY2Vz
X1tpXSA9IHN0YXRpY19jYXN0PGludD4oaSk7CiAgIH0KIH0KIApAQCAtNTU3OSwxMiArNTkxNSwx
MiBAQCBib29sIFNraXBQcmVmaXgoY29uc3QgY2hhciogcHJlZml4LCBjb25zdCBjaGFyKiogcHN0
cikgewogc3RhdGljIGNvbnN0IGNoYXIqIFBhcnNlRmxhZ1ZhbHVlKGNvbnN0IGNoYXIqIHN0ciwg
Y29uc3QgY2hhciogZmxhZywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29s
IGRlZl9vcHRpb25hbCkgewogICAvLyBzdHIgYW5kIGZsYWcgbXVzdCBub3QgYmUgTlVMTC4KLSAg
aWYgKHN0ciA9PSBOVUxMIHx8IGZsYWcgPT0gTlVMTCkgcmV0dXJuIE5VTEw7CisgIGlmIChzdHIg
PT0gbnVsbHB0ciB8fCBmbGFnID09IG51bGxwdHIpIHJldHVybiBudWxscHRyOwogCiAgIC8vIFRo
ZSBmbGFnIG11c3Qgc3RhcnQgd2l0aCAiLS0iIGZvbGxvd2VkIGJ5IEdURVNUX0ZMQUdfUFJFRklY
Xy4KICAgY29uc3Qgc3RkOjpzdHJpbmcgZmxhZ19zdHIgPSBzdGQ6OnN0cmluZygiLS0iKSArIEdU
RVNUX0ZMQUdfUFJFRklYXyArIGZsYWc7CiAgIGNvbnN0IHNpemVfdCBmbGFnX2xlbiA9IGZsYWdf
c3RyLmxlbmd0aCgpOwotICBpZiAoc3RybmNtcChzdHIsIGZsYWdfc3RyLmNfc3RyKCksIGZsYWdf
bGVuKSAhPSAwKSByZXR1cm4gTlVMTDsKKyAgaWYgKHN0cm5jbXAoc3RyLCBmbGFnX3N0ci5jX3N0
cigpLCBmbGFnX2xlbikgIT0gMCkgcmV0dXJuIG51bGxwdHI7CiAKICAgLy8gU2tpcHMgdGhlIGZs
YWcgbmFtZS4KICAgY29uc3QgY2hhciogZmxhZ19lbmQgPSBzdHIgKyBmbGFnX2xlbjsKQEAgLTU1
OTcsNyArNTkzMyw3IEBAIHN0YXRpYyBjb25zdCBjaGFyKiBQYXJzZUZsYWdWYWx1ZShjb25zdCBj
aGFyKiBzdHIsIGNvbnN0IGNoYXIqIGZsYWcsCiAgIC8vIElmIGRlZl9vcHRpb25hbCBpcyB0cnVl
IGFuZCB0aGVyZSBhcmUgbW9yZSBjaGFyYWN0ZXJzIGFmdGVyIHRoZQogICAvLyBmbGFnIG5hbWUs
IG9yIGlmIGRlZl9vcHRpb25hbCBpcyBmYWxzZSwgdGhlcmUgbXVzdCBiZSBhICc9JyBhZnRlcgog
ICAvLyB0aGUgZmxhZyBuYW1lLgotICBpZiAoZmxhZ19lbmRbMF0gIT0gJz0nKSByZXR1cm4gTlVM
TDsKKyAgaWYgKGZsYWdfZW5kWzBdICE9ICc9JykgcmV0dXJuIG51bGxwdHI7CiAKICAgLy8gUmV0
dXJucyB0aGUgc3RyaW5nIGFmdGVyICI9Ii4KICAgcmV0dXJuIGZsYWdfZW5kICsgMTsKQEAgLTU2
MTgsMzIgKzU5NTQsMzAgQEAgc3RhdGljIGJvb2wgUGFyc2VCb29sRmxhZyhjb25zdCBjaGFyKiBz
dHIsIGNvbnN0IGNoYXIqIGZsYWcsIGJvb2wqIHZhbHVlKSB7CiAgIGNvbnN0IGNoYXIqIGNvbnN0
IHZhbHVlX3N0ciA9IFBhcnNlRmxhZ1ZhbHVlKHN0ciwgZmxhZywgdHJ1ZSk7CiAKICAgLy8gQWJv
cnRzIGlmIHRoZSBwYXJzaW5nIGZhaWxlZC4KLSAgaWYgKHZhbHVlX3N0ciA9PSBOVUxMKSByZXR1
cm4gZmFsc2U7CisgIGlmICh2YWx1ZV9zdHIgPT0gbnVsbHB0cikgcmV0dXJuIGZhbHNlOwogCiAg
IC8vIENvbnZlcnRzIHRoZSBzdHJpbmcgdmFsdWUgdG8gYSBib29sLgogICAqdmFsdWUgPSAhKCp2
YWx1ZV9zdHIgPT0gJzAnIHx8ICp2YWx1ZV9zdHIgPT0gJ2YnIHx8ICp2YWx1ZV9zdHIgPT0gJ0Yn
KTsKICAgcmV0dXJuIHRydWU7CiB9CiAKLS8vIFBhcnNlcyBhIHN0cmluZyBmb3IgYW4gSW50MzIg
ZmxhZywgaW4gdGhlIGZvcm0gb2YKLS8vICItLWZsYWc9dmFsdWUiLgorLy8gUGFyc2VzIGEgc3Ry
aW5nIGZvciBhbiBpbnQzMl90IGZsYWcsIGluIHRoZSBmb3JtIG9mICItLWZsYWc9dmFsdWUiLgog
Ly8KIC8vIE9uIHN1Y2Nlc3MsIHN0b3JlcyB0aGUgdmFsdWUgb2YgdGhlIGZsYWcgaW4gKnZhbHVl
LCBhbmQgcmV0dXJucwogLy8gdHJ1ZS4gIE9uIGZhaWx1cmUsIHJldHVybnMgZmFsc2Ugd2l0aG91
dCBjaGFuZ2luZyAqdmFsdWUuCi1ib29sIFBhcnNlSW50MzJGbGFnKGNvbnN0IGNoYXIqIHN0ciwg
Y29uc3QgY2hhciogZmxhZywgSW50MzIqIHZhbHVlKSB7Citib29sIFBhcnNlSW50MzJGbGFnKGNv
bnN0IGNoYXIqIHN0ciwgY29uc3QgY2hhciogZmxhZywgaW50MzJfdCogdmFsdWUpIHsKICAgLy8g
R2V0cyB0aGUgdmFsdWUgb2YgdGhlIGZsYWcgYXMgYSBzdHJpbmcuCiAgIGNvbnN0IGNoYXIqIGNv
bnN0IHZhbHVlX3N0ciA9IFBhcnNlRmxhZ1ZhbHVlKHN0ciwgZmxhZywgZmFsc2UpOwogCiAgIC8v
IEFib3J0cyBpZiB0aGUgcGFyc2luZyBmYWlsZWQuCi0gIGlmICh2YWx1ZV9zdHIgPT0gTlVMTCkg
cmV0dXJuIGZhbHNlOworICBpZiAodmFsdWVfc3RyID09IG51bGxwdHIpIHJldHVybiBmYWxzZTsK
IAogICAvLyBTZXRzICp2YWx1ZSB0byB0aGUgdmFsdWUgb2YgdGhlIGZsYWcuCiAgIHJldHVybiBQ
YXJzZUludDMyKE1lc3NhZ2UoKSA8PCAiVGhlIHZhbHVlIG9mIGZsYWcgLS0iIDw8IGZsYWcsCiAg
ICAgICAgICAgICAgICAgICAgIHZhbHVlX3N0ciwgdmFsdWUpOwogfQogCi0vLyBQYXJzZXMgYSBz
dHJpbmcgZm9yIGEgc3RyaW5nIGZsYWcsIGluIHRoZSBmb3JtIG9mCi0vLyAiLS1mbGFnPXZhbHVl
Ii4KKy8vIFBhcnNlcyBhIHN0cmluZyBmb3IgYSBzdHJpbmcgZmxhZywgaW4gdGhlIGZvcm0gb2Yg
Ii0tZmxhZz12YWx1ZSIuCiAvLwogLy8gT24gc3VjY2Vzcywgc3RvcmVzIHRoZSB2YWx1ZSBvZiB0
aGUgZmxhZyBpbiAqdmFsdWUsIGFuZCByZXR1cm5zCiAvLyB0cnVlLiAgT24gZmFpbHVyZSwgcmV0
dXJucyBmYWxzZSB3aXRob3V0IGNoYW5naW5nICp2YWx1ZS4KQEAgLTU2NTMsNyArNTk4Nyw3IEBA
IHN0YXRpYyBib29sIFBhcnNlU3RyaW5nRmxhZyhjb25zdCBjaGFyKiBzdHIsIGNvbnN0IGNoYXIq
IGZsYWcsIFN0cmluZyogdmFsdWUpIHsKICAgY29uc3QgY2hhciogY29uc3QgdmFsdWVfc3RyID0g
UGFyc2VGbGFnVmFsdWUoc3RyLCBmbGFnLCBmYWxzZSk7CiAKICAgLy8gQWJvcnRzIGlmIHRoZSBw
YXJzaW5nIGZhaWxlZC4KLSAgaWYgKHZhbHVlX3N0ciA9PSBOVUxMKSByZXR1cm4gZmFsc2U7Cisg
IGlmICh2YWx1ZV9zdHIgPT0gbnVsbHB0cikgcmV0dXJuIGZhbHNlOwogCiAgIC8vIFNldHMgKnZh
bHVlIHRvIHRoZSB2YWx1ZSBvZiB0aGUgZmxhZy4KICAgKnZhbHVlID0gdmFsdWVfc3RyOwpAQCAt
NTY4NCw4ICs2MDE4LDYgQEAgc3RhdGljIGJvb2wgSGFzR29vZ2xlVGVzdEZsYWdQcmVmaXgoY29u
c3QgY2hhciogc3RyKSB7CiAvLyAgIEBZICAgIGNoYW5nZXMgdGhlIGNvbG9yIHRvIHllbGxvdy4K
IC8vICAgQEQgICAgY2hhbmdlcyB0byB0aGUgZGVmYXVsdCB0ZXJtaW5hbCB0ZXh0IGNvbG9yLgog
Ly8KLS8vIEZJWE1FOiBXcml0ZSB0ZXN0cyBmb3IgdGhpcyBvbmNlIHdlIGFkZCBzdGRvdXQKLS8v
IGNhcHR1cmluZyB0byBHb29nbGUgVGVzdC4KIHN0YXRpYyB2b2lkIFByaW50Q29sb3JFbmNvZGVk
KGNvbnN0IGNoYXIqIHN0cikgewogICBHVGVzdENvbG9yIGNvbG9yID0gQ09MT1JfREVGQVVMVDsg
IC8vIFRoZSBjdXJyZW50IGNvbG9yLgogCkBAIC01Njk1LDcgKzYwMjcsNyBAQCBzdGF0aWMgdm9p
ZCBQcmludENvbG9yRW5jb2RlZChjb25zdCBjaGFyKiBzdHIpIHsKICAgLy8gbmV4dCBzZWdtZW50
LgogICBmb3IgKDs7KSB7CiAgICAgY29uc3QgY2hhciogcCA9IHN0cmNocihzdHIsICdAJyk7Ci0g
ICAgaWYgKHAgPT0gTlVMTCkgeworICAgIGlmIChwID09IG51bGxwdHIpIHsKICAgICAgIENvbG9y
ZWRQcmludGYoY29sb3IsICIlcyIsIHN0cik7CiAgICAgICByZXR1cm47CiAgICAgfQpAQCAtNTc1
Myw3ICs2MDg1LDcgQEAgc3RhdGljIGNvbnN0IGNoYXIga0NvbG9yRW5jb2RlZEhlbHBNZXNzYWdl
W10gPQogIiAgQEctLSIgR1RFU1RfRkxBR19QUkVGSVhfICJvdXRwdXQ9QFkoQEdqc29uQFl8QEd4
bWxAWSlbQEc6QFlESVJFQ1RPUllfUEFUSEBHIgogICAgIEdURVNUX1BBVEhfU0VQXyAiQFl8QEc6
QFlGSUxFX1BBVEhdQERcbiIKICIgICAgICBHZW5lcmF0ZSBhIEpTT04gb3IgWE1MIHJlcG9ydCBp
biB0aGUgZ2l2ZW4gZGlyZWN0b3J5IG9yIHdpdGggdGhlIGdpdmVuXG4iCi0iICAgICAgZmlsZSBu
YW1lLiBAWUZJTEVfUEFUSEBEIGRlZmF1bHRzIHRvIEBHdGVzdF9kZXRhaWxzLnhtbEBELlxuIgor
IiAgICAgIGZpbGUgbmFtZS4gQFlGSUxFX1BBVEhARCBkZWZhdWx0cyB0byBAR3Rlc3RfZGV0YWls
LnhtbEBELlxuIgogIyBpZiBHVEVTVF9DQU5fU1RSRUFNX1JFU1VMVFNfCiAiICBARy0tIiBHVEVT
VF9GTEFHX1BSRUZJWF8gInN0cmVhbV9yZXN1bHRfdG89QFlIT1NUQEc6QFlQT1JUQERcbiIKICIg
ICAgICBTdHJlYW0gdGVzdCByZXN1bHRzIHRvIHRoZSBnaXZlbiBzZXJ2ZXIuXG4iCkBAIC01ODk1
LDcgKzYyMjcsNyBAQCB2b2lkIFBhcnNlR29vZ2xlVGVzdEZsYWdzT25seUltcGwoaW50KiBhcmdj
LCBDaGFyVHlwZSoqIGFyZ3YpIHsKIHZvaWQgUGFyc2VHb29nbGVUZXN0RmxhZ3NPbmx5KGludCog
YXJnYywgY2hhcioqIGFyZ3YpIHsKICAgUGFyc2VHb29nbGVUZXN0RmxhZ3NPbmx5SW1wbChhcmdj
LCBhcmd2KTsKIAotICAvLyBGaXggdGhlIHZhbHVlIG9mICpfTlNHZXRBcmdjKCkgb24gbWFjT1Ms
IGJ1dCBpZmYKKyAgLy8gRml4IHRoZSB2YWx1ZSBvZiAqX05TR2V0QXJnYygpIG9uIG1hY09TLCBi
dXQgaWYgYW5kIG9ubHkgaWYKICAgLy8gKl9OU0dldEFyZ3YoKSA9PSBhcmd2CiAgIC8vIE9ubHkg
YXBwbGljYWJsZSB0byBjaGFyKiogdmVyc2lvbiBvZiBhcmd2CiAjaWYgR1RFU1RfT1NfTUFDCkBA
IC01OTYzLDYgKzYyOTUsMjIgQEAgdm9pZCBJbml0R29vZ2xlVGVzdChpbnQqIGFyZ2MsIHdjaGFy
X3QqKiBhcmd2KSB7CiAjZW5kaWYgIC8vIGRlZmluZWQoR1RFU1RfQ1VTVE9NX0lOSVRfR09PR0xF
X1RFU1RfRlVOQ1RJT05fKQogfQogCisvLyBUaGlzIG92ZXJsb2FkZWQgdmVyc2lvbiBjYW4gYmUg
dXNlZCBvbiBBcmR1aW5vL2VtYmVkZGVkIHBsYXRmb3JtcyB3aGVyZQorLy8gdGhlcmUgaXMgbm8g
YXJnYy9hcmd2Lgordm9pZCBJbml0R29vZ2xlVGVzdCgpIHsKKyAgLy8gU2luY2UgQXJkdWlubyBk
b2Vzbid0IGhhdmUgYSBjb21tYW5kIGxpbmUsIGZha2Ugb3V0IHRoZSBhcmdjL2FyZ3YgYXJndW1l
bnRzCisgIGludCBhcmdjID0gMTsKKyAgY29uc3QgYXV0byBhcmcwID0gImR1bW15IjsKKyAgY2hh
ciogYXJndjAgPSBjb25zdF9jYXN0PGNoYXIqPihhcmcwKTsKKyAgY2hhcioqIGFyZ3YgPSAmYXJn
djA7CisKKyNpZiBkZWZpbmVkKEdURVNUX0NVU1RPTV9JTklUX0dPT0dMRV9URVNUX0ZVTkNUSU9O
XykKKyAgR1RFU1RfQ1VTVE9NX0lOSVRfR09PR0xFX1RFU1RfRlVOQ1RJT05fKCZhcmdjLCBhcmd2
KTsKKyNlbHNlICAvLyBkZWZpbmVkKEdURVNUX0NVU1RPTV9JTklUX0dPT0dMRV9URVNUX0ZVTkNU
SU9OXykKKyAgaW50ZXJuYWw6OkluaXRHb29nbGVUZXN0SW1wbCgmYXJnYywgYXJndik7CisjZW5k
aWYgIC8vIGRlZmluZWQoR1RFU1RfQ1VTVE9NX0lOSVRfR09PR0xFX1RFU1RfRlVOQ1RJT05fKQor
fQorCiBzdGQ6OnN0cmluZyBUZW1wRGlyKCkgewogI2lmIGRlZmluZWQoR1RFU1RfQ1VTVE9NX1RF
TVBESVJfRlVOQ1RJT05fKQogICByZXR1cm4gR1RFU1RfQ1VTVE9NX1RFTVBESVJfRlVOQ1RJT05f
KCk7CkBAIC01OTcyLDE0ICs2MzIwLDE4IEBAIHN0ZDo6c3RyaW5nIFRlbXBEaXIoKSB7CiAgIHJl
dHVybiAiXFx0ZW1wXFwiOwogI2VsaWYgR1RFU1RfT1NfV0lORE9XUwogICBjb25zdCBjaGFyKiB0
ZW1wX2RpciA9IGludGVybmFsOjpwb3NpeDo6R2V0RW52KCJURU1QIik7Ci0gIGlmICh0ZW1wX2Rp
ciA9PSBOVUxMIHx8IHRlbXBfZGlyWzBdID09ICdcMCcpCisgIGlmICh0ZW1wX2RpciA9PSBudWxs
cHRyIHx8IHRlbXBfZGlyWzBdID09ICdcMCcpCiAgICAgcmV0dXJuICJcXHRlbXBcXCI7CiAgIGVs
c2UgaWYgKHRlbXBfZGlyW3N0cmxlbih0ZW1wX2RpcikgLSAxXSA9PSAnXFwnKQogICAgIHJldHVy
biB0ZW1wX2RpcjsKICAgZWxzZQogICAgIHJldHVybiBzdGQ6OnN0cmluZyh0ZW1wX2RpcikgKyAi
XFwiOwogI2VsaWYgR1RFU1RfT1NfTElOVVhfQU5EUk9JRAotICByZXR1cm4gIi9zZGNhcmQvIjsK
KyAgY29uc3QgY2hhciogdGVtcF9kaXIgPSBpbnRlcm5hbDo6cG9zaXg6OkdldEVudigiVEVTVF9U
TVBESVIiKTsKKyAgaWYgKHRlbXBfZGlyID09IG51bGxwdHIgfHwgdGVtcF9kaXJbMF0gPT0gJ1ww
JykKKyAgICByZXR1cm4gIi9kYXRhL2xvY2FsL3RtcC8iOworICBlbHNlCisgICAgcmV0dXJuIHRl
bXBfZGlyOwogI2Vsc2UKICAgcmV0dXJuICIvdG1wLyI7CiAjZW5kaWYgIC8vIEdURVNUX09TX1dJ
TkRPV1NfTU9CSUxFCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRl
c3Qvc3JjL3NyYy9ndGVzdF9tYWluLmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0
ZXN0L3NyYy9zcmMvZ3Rlc3RfbWFpbi5jYwppbmRleCAyMTEzZjYyMWU2NTQzMGU1NTcwZGZiMjAx
NTg4NGEyZDRmNGNmMGIzLi40NmIyN2MzZDdkNTY1NDY2ODkwNmJmZjVmNWJhMWEyNjY4ODFmNzdi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL3NyYy9n
dGVzdF9tYWluLmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMv
c3JjL2d0ZXN0X21haW4uY2MKQEAgLTI3LDExICsyNywyOCBAQAogLy8gKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiAv
LyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgogCi0jaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxjc3RkaW8+CiAj
aW5jbHVkZSAiZ3Rlc3QvZ3Rlc3QuaCIKIAorI2lmIEdURVNUX09TX0VTUDgyNjYgfHwgR1RFU1Rf
T1NfRVNQMzIKKyNpZiBHVEVTVF9PU19FU1A4MjY2CitleHRlcm4gIkMiIHsKKyNlbmRpZgordm9p
ZCBzZXR1cCgpIHsKKyAgdGVzdGluZzo6SW5pdEdvb2dsZVRlc3QoKTsKK30KKwordm9pZCBsb29w
KCkgeyBSVU5fQUxMX1RFU1RTKCk7IH0KKworI2lmIEdURVNUX09TX0VTUDgyNjYKK30KKyNlbmRp
ZgorCisjZWxzZQorCiBHVEVTVF9BUElfIGludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikg
ewogICBwcmludGYoIlJ1bm5pbmcgbWFpbigpIGZyb20gJXNcbiIsIF9fRklMRV9fKTsKICAgdGVz
dGluZzo6SW5pdEdvb2dsZVRlc3QoJmFyZ2MsIGFyZ3YpOwogICByZXR1cm4gUlVOX0FMTF9URVNU
UygpOwogfQorI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2xpYndl
Ym0vQVVUSE9SUy5UWFQgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2xpYndlYm0vQVVUSE9SUy5U
WFQKaW5kZXggOGFiNmY3OTRjNzM0OGJhMmJlMzljZjg3Njg5MTIyODVmM2YzMWExMS4uOTY4NmFj
MTNlYjBjMDUwMDJmODhiNDJlYmE5MjNjZTc1OGNhNTYxMyAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90aGlyZF9wYXJ0eS9saWJ3ZWJtL0FVVEhPUlMuVFhUCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRf
cGFydHkvbGlid2VibS9BVVRIT1JTLlRYVApAQCAtMSw0ICsxLDQgQEAKLSMgTmFtZXMgc2hvdWxk
IGJlIGFkZGVkIHRvIHRoaXMgZmlsZSBsaWtlIHNvOg0KLSMgTmFtZSBvciBPcmdhbml6YXRpb24g
PGVtYWlsIGFkZHJlc3M+DQotDQotR29vZ2xlIEluYy4NCisjIE5hbWVzIHNob3VsZCBiZSBhZGRl
ZCB0byB0aGlzIGZpbGUgbGlrZSBzbzoKKyMgTmFtZSBvciBPcmdhbml6YXRpb24gPGVtYWlsIGFk
ZHJlc3M+CisKK0dvb2dsZSBJbmMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5
L3g4NmluYy9SRUFETUUubGlidnB4IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS94ODZpbmMvUkVB
RE1FLmxpYnZweAppbmRleCAzNjczNWZmYmIxYTQwYzMzZjdjNDBmNWYwYjRjYjMyZTUwNGI2NzZi
Li4xOTU2NTRmN2JiNzA1ZDEzNGEwODYyMzRkYWZhODliMWJlNTU5NjM1IDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3RoaXJkX3BhcnR5L3g4NmluYy9SRUFETUUubGlidnB4CisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGhpcmRfcGFydHkveDg2aW5jL1JFQURNRS5saWJ2cHgKQEAgLTEsNSArMSw1IEBACiBVUkw6
IGh0dHBzOi8vZ2l0LnZpZGVvbGFuLm9yZy9naXQveDI2NC5naXQKLVZlcnNpb246IGQyM2QxODY1
NTI0OTk0NGMxY2E4OTRiNDUxZTJjODJjN2E1ODRjNjIKK1ZlcnNpb246IDNlNWFlZDk1Y2M0NzBm
MzdlMmRiM2U2NTA2YThkZWI4OWI1Mjc3MjAKIExpY2Vuc2U6IElTQwogTGljZW5zZSBGaWxlOiBM
SUNFTlNFCiAKQEAgLTEyLDEwICsxMiw4IEBAIEdldCBjb25maWd1cmF0aW9uIGZyb20gdnB4X2Nv
bmZpZy5hc20uCiBQcmVmaXggZnVuY3Rpb25zIHdpdGggdnB4IGJ5IGRlZmF1bHQuCiBNYW5hZ2Ug
bmFtZSBtYW5nbGluZyAocHJlZml4aW5nIHdpdGggJ18nKSBtYW51YWxseSBiZWNhdXNlICdQUkVG
SVgnIGRvZXMgbm90CiAgIGV4aXN0IGluIGxpYnZweC4KLUV4cGFuZCBQSUMgZGVmYXVsdCB0byBt
YWNobzY0IGFuZCByZXNwZWN0IENPTkZJR19QSUMgZnJvbSBsaWJ2cHgKLVNldCAncHJpdmF0ZV9l
eHRlcm4nIHZpc2liaWxpdHkgZm9yIG1hY2hvIHRhcmdldHMuCiBDb3B5IFBJQyAnR0xPQkFMJyBt
YWNyb3MgZnJvbSB4ODZfYWJpX3N1cHBvcnQuYXNtCiBVc2UgLnRleHQgaW5zdGVhZCBvZiAucm9k
YXRhIG9uIG1hY2hvIHRvIGF2b2lkIGJyb2tlbiB0YWJsZXMgaW4gUElDIG1vZGUuCi1Vc2UgLnRl
eHQgd2l0aCBubyBhbGlnbm1lbnQgZm9yIGFvdXQKLU9ubHkgdXNlICdoaWRkZW4nIHZpc2liaWxp
dHkgd2l0aCBDaHJvbWl1bQorVXNlIC50ZXh0IHdpdGggbm8gYWxpZ25tZW50IGZvciBhb3V0Lgor
T25seSB1c2UgJ2hpZGRlbicgdmlzaWJpbGl0eSB3aXRoIENocm9taXVtLgogUHJlZml4IEFSQ0hf
KiB3aXRoIFZQWF8uCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L3g4NmluYy94
ODZpbmMuYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS94ODZpbmMveDg2aW5jLmFzbQppbmRl
eCAzZDcyMmZlYzA4ZjIwM2NiNmFlYzNkNjZhYTIzYzAxYWY5MjIyYmEzLi4zZDU1ZTkyMWM3NjVj
ZGUxY2NiYzYzZTMxMjZhYzRjZTcyNDQ2YWRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJk
X3BhcnR5L3g4NmluYy94ODZpbmMuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkveDg2
aW5jL3g4NmluYy5hc20KQEAgLTEsMTIgKzEsMTIgQEAKIDsqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgog
OyogeDg2aW5jLmFzbTogeDI2NGFzbSBhYnN0cmFjdGlvbiBsYXllcgogOyoqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqCi07KiBDb3B5cmlnaHQgKEMpIDIwMDUtMjAxNiB4MjY0IHByb2plY3QKKzsqIENvcHly
aWdodCAoQykgMjAwNS0yMDE5IHgyNjQgcHJvamVjdAogOyoKIDsqIEF1dGhvcnM6IExvcmVuIE1l
cnJpdHQgPGxvcmVubUB1Lndhc2hpbmd0b24uZWR1PgorOyogICAgICAgICAgSGVucmlrIEdyYW1u
ZXIgPGhlbnJpa0BncmFtbmVyLmNvbT4KIDsqICAgICAgICAgIEFudG9uIE1pdHJvZmFub3YgPEJ1
Z01hc3RlckBuYXJvZC5ydT4KIDsqICAgICAgICAgIEZpb25hIEdsYXNlciA8ZmlvbmFAeDI2NC5j
b20+Ci07KiAgICAgICAgICBIZW5yaWsgR3JhbW5lciA8aGVucmlrQGdyYW1uZXIuY29tPgogOyoK
IDsqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRo
aXMgc29mdHdhcmUgZm9yIGFueQogOyogcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhl
cmVieSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoZSBhYm92ZQpAQCAtNjcsMTkgKzY3LDE5IEBA
CiAlZW5kaWYKIAogJWRlZmluZSBGT1JNQVRfRUxGIDAKKyVkZWZpbmUgRk9STUFUX01BQ0hPIDAK
ICVpZmlkbiBfX09VVFBVVF9GT1JNQVRfXyxlbGYKICAgICAlZGVmaW5lIEZPUk1BVF9FTEYgMQog
JWVsaWZpZG4gX19PVVRQVVRfRk9STUFUX18sZWxmMzIKICAgICAlZGVmaW5lIEZPUk1BVF9FTEYg
MQogJWVsaWZpZG4gX19PVVRQVVRfRk9STUFUX18sZWxmNjQKICAgICAlZGVmaW5lIEZPUk1BVF9F
TEYgMQotJWVuZGlmCi0KLSVkZWZpbmUgRk9STUFUX01BQ0hPIDAKLSVpZmlkbiBfX09VVFBVVF9G
T1JNQVRfXyxtYWNobzMyCi0gICAgICVkZWZpbmUgRk9STUFUX01BQ0hPIDEKKyVlbGlmaWRuIF9f
T1VUUFVUX0ZPUk1BVF9fLG1hY2hvCisgICAgJWRlZmluZSBGT1JNQVRfTUFDSE8gMQorJWVsaWZp
ZG4gX19PVVRQVVRfRk9STUFUX18sbWFjaG8zMgorICAgICVkZWZpbmUgRk9STUFUX01BQ0hPIDEK
ICVlbGlmaWRuIF9fT1VUUFVUX0ZPUk1BVF9fLG1hY2hvNjQKLSAgICAgJWRlZmluZSBGT1JNQVRf
TUFDSE8gMQorICAgICVkZWZpbmUgRk9STUFUX01BQ0hPIDEKICVlbmRpZgogCiA7IFNldCBQUkVG
SVggZm9yIGxpYnZweCBidWlsZHMuCkBAIC0xMDMsNyArMTAzLDExIEBACiA7IHdvcmtzIGFyb3Vu
ZCB0aGUgaXNzdWUuIEl0IGFwcGVhcnMgdG8gYmUgc3BlY2lmaWMgdG8gdGhlIHdheSBsaWJ2cHgK
IDsgaGFuZGxlcyB0aGUgdGFibGVzLgogJW1hY3JvIFNFQ1RJT05fUk9EQVRBIDAtMSAxNgotICAg
ICVpZmlkbiBfX09VVFBVVF9GT1JNQVRfXyxtYWNobzMyCisgICAgJWlmaWRuIF9fT1VUUFVUX0ZP
Uk1BVF9fLHdpbjMyCisgICAgICAgIFNFQ1RJT04gLnJkYXRhIGFsaWduPSUxCisgICAgJWVsaWYg
V0lONjQKKyAgICAgICAgU0VDVElPTiAucmRhdGEgYWxpZ249JTEKKyAgICAlZWxpZmlkbiBfX09V
VFBVVF9GT1JNQVRfXyxtYWNobzMyCiAgICAgICAgIFNFQ1RJT04gLnRleHQgYWxpZ249JTEKICAg
ICAgICAgZmFrZWdvdDoKICAgICAlZWxpZmlkbiBfX09VVFBVVF9GT1JNQVRfXyxhb3V0CkBAIC0x
MTMsOCArMTE3LDcgQEAKICAgICAlZW5kaWYKICVlbmRtYWNybwogCi07IFBJQyBtYWNyb3MgYXJl
IGNvcGllZCBmcm9tIHZweF9wb3J0cy94ODZfYWJpX3N1cHBvcnQuYXNtLiBUaGUgImRlZmluZSBQ
SUMiCi07IGZyb20gb3JpZ2luYWwgY29kZSBpcyBhZGRlZCBpbiBmb3IgNjRiaXQuCis7IFBJQyBt
YWNyb3MgZnJvbSB2cHhfcG9ydHMveDg2X2FiaV9zdXBwb3J0LmFzbS4KICVpZmlkbiBfX09VVFBV
VF9GT1JNQVRfXyxlbGYzMgogJWRlZmluZSBBQklfSVNfMzJCSVQgMQogJWVsaWZpZG4gX19PVVRQ
VVRfRk9STUFUX18sbWFjaG8zMgpAQCAtMjAzLDEwICsyMDYsMjQgQEAKICVpZm5kZWYgR0VUX0dP
VF9ERUZJTkVECiAgICAgJWRlZmluZSBHRVRfR09UX0RFRklORUQgMAogJWVuZGlmCi07IERvbmUg
d2l0aCBQSUMgbWFjcm9zCis7IEVuZCBQSUMgbWFjcm9zIGZyb20gdnB4X3BvcnRzL3g4Nl9hYmlf
c3VwcG9ydC5hc20uCisKKzsgbGlidnB4IGV4cGxpY2l0bHkgc2V0cyB2aXNpYmlsdHkgaW4gc2hh
cmVkIG9iamVjdCBidWlsZHMuIEF2b2lkIHNldHRpbmcKKzsgdmlzaWJpbGl0eSB0byBoaWRkZW4g
YXMgaXQgbWF5IGJyZWFrIGJ1aWxkcyB0aGF0IHNwbGl0IHNvdXJjZXMgb24gZS5nLiwKKzsgZGly
ZWN0b3J5IGJvdW5kYXJpZXMuCislaWZkZWYgQ0hST01JVU0KKyAgICAlZGVmaW5lIFZJU0lCSUxJ
VFkgaGlkZGVuCisgICAgJWRlZmluZSBIQVZFX1BSSVZBVEVfRVhURVJOIDEKKyVlbHNlCisgICAg
JWRlZmluZSBWSVNJQklMSVRZCisgICAgJWRlZmluZSBIQVZFX1BSSVZBVEVfRVhURVJOIDAKKyVl
bmRpZgogCiAlaWZkZWYgX19OQVNNX1ZFUl9fCiAgICAgJXVzZSBzbWFydGFsaWduCisgICAgJWlm
IF9fTkFTTV9WRVJTSU9OX0lEX18gPCAweDAyMGUwMDAwIDsgMi4xNAorICAgICAgICAlZGVmaW5l
IEhBVkVfUFJJVkFURV9FWFRFUk4gMAorICAgICVlbmRpZgogJWVuZGlmCiAKIDsgTWFjcm9zIHRv
IGVsaW1pbmF0ZSBtb3N0IGNvZGUgZHVwbGljYXRpb24gYmV0d2VlbiB4ODZfMzIgYW5kIHg4Nl82
NDoKQEAgLTMyNCw2ICszNDEsMTggQEAgREVDTEFSRV9SRUdfVE1QX1NJWkUgMCwxLDIsMyw0LDUs
Niw3LDgsOSwxMCwxMSwxMiwxMywxNAogICAgICVkZWZpbmUgZ3Byc2l6ZSA0CiAlZW5kaWYKIAor
JW1hY3JvIExFQSAyCislaWYgVlBYX0FSQ0hfWDg2XzY0CisgICAgbGVhICUxLCBbJTJdCislZWxp
ZiBQSUMKKyAgICBjYWxsICQrNSA7IHNwZWNpYWwtY2FzZWQgdG8gbm90IGFmZmVjdCB0aGUgUlNC
IG9uIG1vc3QgQ1BVOnMKKyAgICBwb3AgJTEKKyAgICBhZGQgJTEsICglMiktJCsxCislZWxzZQor
ICAgIG1vdiAlMSwgJTIKKyVlbmRpZgorJWVuZG1hY3JvCisKICVtYWNybyBQVVNIIDEKICAgICBw
dXNoICUxCiAgICAgJWlmaWRuIHJzdGssIHJzcApAQCAtMzg1LDYgKzQxNCwxMCBAQCBERUNMQVJF
X1JFR19UTVBfU0laRSAwLDEsMiwzLDQsNSw2LDcsOCw5LDEwLDExLDEyLDEzLDE0CiAgICAgJWVu
ZGlmCiAlZW5kbWFjcm8KIAorJWlmIFZQWF9BUkNIX1g4Nl82NCA9PSAwCisgICAgJWRlZmluZSBt
b3ZzeGQgbW92aWZuaWRuCislZW5kaWYKKwogJW1hY3JvIG1vdnN4ZGlmbmlkbiAyCiAgICAgJWlm
bmlkbiAlMSwgJTIKICAgICAgICAgbW92c3hkICUxLCAlMgpAQCAtNDMzLDYgKzQ2Niw4IEBAIERF
Q0xBUkVfUkVHX1RNUF9TSVpFIDAsMSwyLDMsNCw1LDYsNyw4LDksMTAsMTEsMTIsMTMsMTQKICVl
bmRtYWNybwogCiAlZGVmaW5lIHJlcXVpcmVkX3N0YWNrX2FsaWdubWVudCAoKG1tc2l6ZSArIDE1
KSAmIH4xNSkKKyVkZWZpbmUgdnplcm91cHBlcl9yZXF1aXJlZCAobW1zaXplID4gMTYgJiYgKFZQ
WF9BUkNIX1g4Nl82NCA9PSAwIHx8IHhtbV9yZWdzX3VzZWQgPiAxNiB8fCBub3RjcHVmbGFnKGF2
eDUxMikpKQorJWRlZmluZSBoaWdoX21tX3JlZ3MgKDE2KmNwdWZsYWcoYXZ4NTEyKSkKIAogJW1h
Y3JvIEFMTE9DX1NUQUNLIDEtMiAwIDsgc3RhY2tfc2l6ZSwgbl94bW1fcmVncyAoZm9yIHdpbjY0
IG9ubHkpCiAgICAgJWlmbnVtICUxCkBAIC00ODMsMTAgKzUxOCwxOCBAQCBERUNMQVJFX1JFR19U
TVBfU0laRSAwLDEsMiwzLDQsNSw2LDcsOCw5LDEwLDExLDEyLDEzLDE0CiAgICAgJWlmbnVtICUx
CiAgICAgICAgICVpZiAlMSAhPSAwICYmIHJlcXVpcmVkX3N0YWNrX2FsaWdubWVudCA+IFNUQUNL
X0FMSUdOTUVOVAogICAgICAgICAgICAgJWlmICUxID4gMAorICAgICAgICAgICAgICAgIDsgUmVz
ZXJ2ZSBhbiBhZGRpdGlvbmFsIHJlZ2lzdGVyIGZvciBzdG9yaW5nIHRoZSBvcmlnaW5hbCBzdGFj
ayBwb2ludGVyLCBidXQgYXZvaWQgdXNpbmcKKyAgICAgICAgICAgICAgICA7IGVheC9yYXggZm9y
IHRoaXMgcHVycG9zZSBzaW5jZSBpdCBjYW4gcG90ZW50aWFsbHkgZ2V0IG92ZXJ3cml0dGVuIGFz
IGEgcmV0dXJuIHZhbHVlLgogICAgICAgICAgICAgICAgICVhc3NpZ24gcmVnc191c2VkIChyZWdz
X3VzZWQgKyAxKQorICAgICAgICAgICAgICAgICVpZiBWUFhfQVJDSF9YODZfNjQgJiYgcmVnc191
c2VkID09IDcKKyAgICAgICAgICAgICAgICAgICAgJWFzc2lnbiByZWdzX3VzZWQgOAorICAgICAg
ICAgICAgICAgICVlbGlmIFZQWF9BUkNIX1g4Nl82NCA9PSAwICYmIHJlZ3NfdXNlZCA9PSAxCisg
ICAgICAgICAgICAgICAgICAgICVhc3NpZ24gcmVnc191c2VkIDIKKyAgICAgICAgICAgICAgICAl
ZW5kaWYKICAgICAgICAgICAgICVlbmRpZgogICAgICAgICAgICAgJWlmIFZQWF9BUkNIX1g4Nl82
NCAmJiByZWdzX3VzZWQgPCA1ICsgVU5JWDY0ICogMwotICAgICAgICAgICAgICAgIDsgRW5zdXJl
IHRoYXQgd2UgZG9uJ3QgY2xvYmJlciBhbnkgcmVnaXN0ZXJzIGNvbnRhaW5pbmcgYXJndW1lbnRz
CisgICAgICAgICAgICAgICAgOyBFbnN1cmUgdGhhdCB3ZSBkb24ndCBjbG9iYmVyIGFueSByZWdp
c3RlcnMgY29udGFpbmluZyBhcmd1bWVudHMuIEZvciBVTklYNjQgd2UgYWxzbyBwcmVzZXJ2ZSBy
NiAocmF4KQorICAgICAgICAgICAgICAgIDsgc2luY2UgaXQncyB1c2VkIGFzIGEgaGlkZGVuIGFy
Z3VtZW50IGluIHZhcmFyZyBmdW5jdGlvbnMgdG8gc3BlY2lmeSB0aGUgbnVtYmVyIG9mIHZlY3Rv
ciByZWdpc3RlcnMgdXNlZC4KICAgICAgICAgICAgICAgICAlYXNzaWduIHJlZ3NfdXNlZCA1ICsg
VU5JWDY0ICogMwogICAgICAgICAgICAgJWVuZGlmCiAgICAgICAgICVlbmRpZgpAQCAtNTE2LDEw
ICs1NTksMTAgQEAgREVDTEFSRV9SRUcgNywgIHJkaSwgNjQKIERFQ0xBUkVfUkVHIDgsICByc2ks
IDcyCiBERUNMQVJFX1JFRyA5LCAgcmJ4LCA4MAogREVDTEFSRV9SRUcgMTAsIHJicCwgODgKLURF
Q0xBUkVfUkVHIDExLCBSMTIsIDk2Ci1ERUNMQVJFX1JFRyAxMiwgUjEzLCAxMDQKLURFQ0xBUkVf
UkVHIDEzLCBSMTQsIDExMgotREVDTEFSRV9SRUcgMTQsIFIxNSwgMTIwCitERUNMQVJFX1JFRyAx
MSwgUjE0LCA5NgorREVDTEFSRV9SRUcgMTIsIFIxNSwgMTA0CitERUNMQVJFX1JFRyAxMywgUjEy
LCAxMTIKK0RFQ0xBUkVfUkVHIDE0LCBSMTMsIDEyMAogCiAlbWFjcm8gUFJPTE9HVUUgMi01KyAw
IDsgI2FyZ3MsICNyZWdzLCAjeG1tX3JlZ3MsIFtzdGFja19zaXplLF0gYXJnX25hbWVzLi4uCiAg
ICAgJWFzc2lnbiBudW1fYXJncyAlMQpAQCAtNTM4LDE1ICs1ODEsMTYgQEAgREVDTEFSRV9SRUcg
MTQsIFIxNSwgMTIwCiAKICVtYWNybyBXSU42NF9QVVNIX1hNTSAwCiAgICAgOyBVc2UgdGhlIHNo
YWRvdyBzcGFjZSB0byBzdG9yZSBYTU02IGFuZCBYTU03LCB0aGUgcmVzdCBuZWVkcyBzdGFjayBz
cGFjZSBhbGxvY2F0ZWQuCi0gICAgJWlmIHhtbV9yZWdzX3VzZWQgPiA2CisgICAgJWlmIHhtbV9y
ZWdzX3VzZWQgPiA2ICsgaGlnaF9tbV9yZWdzCiAgICAgICAgIG1vdmFwcyBbcnN0ayArIHN0YWNr
X29mZnNldCArICA4XSwgeG1tNgogICAgICVlbmRpZgotICAgICVpZiB4bW1fcmVnc191c2VkID4g
NworICAgICVpZiB4bW1fcmVnc191c2VkID4gNyArIGhpZ2hfbW1fcmVncwogICAgICAgICBtb3Zh
cHMgW3JzdGsgKyBzdGFja19vZmZzZXQgKyAyNF0sIHhtbTcKICAgICAlZW5kaWYKLSAgICAlaWYg
eG1tX3JlZ3NfdXNlZCA+IDgKKyAgICAlYXNzaWduICUleG1tX3JlZ3Nfb25fc3RhY2sgeG1tX3Jl
Z3NfdXNlZCAtIGhpZ2hfbW1fcmVncyAtIDgKKyAgICAlaWYgJSV4bW1fcmVnc19vbl9zdGFjayA+
IDAKICAgICAgICAgJWFzc2lnbiAlJWkgOAotICAgICAgICAlcmVwIHhtbV9yZWdzX3VzZWQtOAor
ICAgICAgICAlcmVwICUleG1tX3JlZ3Nfb25fc3RhY2sKICAgICAgICAgICAgIG1vdmFwcyBbcnNw
ICsgKCUlaS04KSoxNiArIHN0YWNrX3NpemUgKyAzMl0sIHhtbSAlKyAlJWkKICAgICAgICAgICAg
ICVhc3NpZ24gJSVpICUlaSsxCiAgICAgICAgICVlbmRyZXAKQEAgLTU1NSw1MyArNTk5LDU2IEBA
IERFQ0xBUkVfUkVHIDE0LCBSMTUsIDEyMAogCiAlbWFjcm8gV0lONjRfU1BJTExfWE1NIDEKICAg
ICAlYXNzaWduIHhtbV9yZWdzX3VzZWQgJTEKLSAgICBBU1NFUlQgeG1tX3JlZ3NfdXNlZCA8PSAx
NgotICAgICVpZiB4bW1fcmVnc191c2VkID4gOAorICAgIEFTU0VSVCB4bW1fcmVnc191c2VkIDw9
IDE2ICsgaGlnaF9tbV9yZWdzCisgICAgJWFzc2lnbiAlJXhtbV9yZWdzX29uX3N0YWNrIHhtbV9y
ZWdzX3VzZWQgLSBoaWdoX21tX3JlZ3MgLSA4CisgICAgJWlmICUleG1tX3JlZ3Nfb25fc3RhY2sg
PiAwCiAgICAgICAgIDsgQWxsb2NhdGUgc3RhY2sgc3BhY2UgZm9yIGNhbGxlZS1zYXZlZCB4bW0g
cmVnaXN0ZXJzIHBsdXMgc2hhZG93IHNwYWNlIGFuZCBhbGlnbiB0aGUgc3RhY2suCi0gICAgICAg
ICVhc3NpZ24gJSVwYWQgKHhtbV9yZWdzX3VzZWQtOCkqMTYgKyAzMgorICAgICAgICAlYXNzaWdu
ICUlcGFkICUleG1tX3JlZ3Nfb25fc3RhY2sqMTYgKyAzMgogICAgICAgICAlYXNzaWduIHN0YWNr
X3NpemVfcGFkZGVkICUlcGFkICsgKCgtJSVwYWQtc3RhY2tfb2Zmc2V0LWdwcnNpemUpICYgKFNU
QUNLX0FMSUdOTUVOVC0xKSkKICAgICAgICAgU1VCIHJzcCwgc3RhY2tfc2l6ZV9wYWRkZWQKICAg
ICAlZW5kaWYKICAgICBXSU42NF9QVVNIX1hNTQogJWVuZG1hY3JvCiAKLSVtYWNybyBXSU42NF9S
RVNUT1JFX1hNTV9JTlRFUk5BTCAxCislbWFjcm8gV0lONjRfUkVTVE9SRV9YTU1fSU5URVJOQUwg
MAogICAgICVhc3NpZ24gJSVwYWRfc2l6ZSAwCi0gICAgJWlmIHhtbV9yZWdzX3VzZWQgPiA4Ci0g
ICAgICAgICVhc3NpZ24gJSVpIHhtbV9yZWdzX3VzZWQKLSAgICAgICAgJXJlcCB4bW1fcmVnc191
c2VkLTgKKyAgICAlYXNzaWduICUleG1tX3JlZ3Nfb25fc3RhY2sgeG1tX3JlZ3NfdXNlZCAtIGhp
Z2hfbW1fcmVncyAtIDgKKyAgICAlaWYgJSV4bW1fcmVnc19vbl9zdGFjayA+IDAKKyAgICAgICAg
JWFzc2lnbiAlJWkgeG1tX3JlZ3NfdXNlZCAtIGhpZ2hfbW1fcmVncworICAgICAgICAlcmVwICUl
eG1tX3JlZ3Nfb25fc3RhY2sKICAgICAgICAgICAgICVhc3NpZ24gJSVpICUlaS0xCi0gICAgICAg
ICAgICBtb3ZhcHMgeG1tICUrICUlaSwgWyUxICsgKCUlaS04KSoxNiArIHN0YWNrX3NpemUgKyAz
Ml0KKyAgICAgICAgICAgIG1vdmFwcyB4bW0gJSsgJSVpLCBbcnNwICsgKCUlaS04KSoxNiArIHN0
YWNrX3NpemUgKyAzMl0KICAgICAgICAgJWVuZHJlcAogICAgICVlbmRpZgogICAgICVpZiBzdGFj
a19zaXplX3BhZGRlZCA+IDAKICAgICAgICAgJWlmIHN0YWNrX3NpemUgPiAwICYmIHJlcXVpcmVk
X3N0YWNrX2FsaWdubWVudCA+IFNUQUNLX0FMSUdOTUVOVAogICAgICAgICAgICAgbW92IHJzcCwg
cnN0a20KICAgICAgICAgJWVsc2UKLSAgICAgICAgICAgIGFkZCAlMSwgc3RhY2tfc2l6ZV9wYWRk
ZWQKKyAgICAgICAgICAgIGFkZCByc3AsIHN0YWNrX3NpemVfcGFkZGVkCiAgICAgICAgICAgICAl
YXNzaWduICUlcGFkX3NpemUgc3RhY2tfc2l6ZV9wYWRkZWQKICAgICAgICAgJWVuZGlmCiAgICAg
JWVuZGlmCi0gICAgJWlmIHhtbV9yZWdzX3VzZWQgPiA3Ci0gICAgICAgIG1vdmFwcyB4bW03LCBb
JTEgKyBzdGFja19vZmZzZXQgLSAlJXBhZF9zaXplICsgMjRdCisgICAgJWlmIHhtbV9yZWdzX3Vz
ZWQgPiA3ICsgaGlnaF9tbV9yZWdzCisgICAgICAgIG1vdmFwcyB4bW03LCBbcnNwICsgc3RhY2tf
b2Zmc2V0IC0gJSVwYWRfc2l6ZSArIDI0XQogICAgICVlbmRpZgotICAgICVpZiB4bW1fcmVnc191
c2VkID4gNgotICAgICAgICBtb3ZhcHMgeG1tNiwgWyUxICsgc3RhY2tfb2Zmc2V0IC0gJSVwYWRf
c2l6ZSArICA4XQorICAgICVpZiB4bW1fcmVnc191c2VkID4gNiArIGhpZ2hfbW1fcmVncworICAg
ICAgICBtb3ZhcHMgeG1tNiwgW3JzcCArIHN0YWNrX29mZnNldCAtICUlcGFkX3NpemUgKyAgOF0K
ICAgICAlZW5kaWYKICVlbmRtYWNybwogCi0lbWFjcm8gV0lONjRfUkVTVE9SRV9YTU0gMQotICAg
IFdJTjY0X1JFU1RPUkVfWE1NX0lOVEVSTkFMICUxCislbWFjcm8gV0lONjRfUkVTVE9SRV9YTU0g
MAorICAgIFdJTjY0X1JFU1RPUkVfWE1NX0lOVEVSTkFMCiAgICAgJWFzc2lnbiBzdGFja19vZmZz
ZXQgKHN0YWNrX29mZnNldC1zdGFja19zaXplX3BhZGRlZCkKKyAgICAlYXNzaWduIHN0YWNrX3Np
emVfcGFkZGVkIDAKICAgICAlYXNzaWduIHhtbV9yZWdzX3VzZWQgMAogJWVuZG1hY3JvCiAKLSVk
ZWZpbmUgaGFzX2VwaWxvZ3VlIHJlZ3NfdXNlZCA+IDcgfHwgeG1tX3JlZ3NfdXNlZCA+IDYgfHwg
bW1zaXplID09IDMyIHx8IHN0YWNrX3NpemUgPiAwCislZGVmaW5lIGhhc19lcGlsb2d1ZSByZWdz
X3VzZWQgPiA3IHx8IHN0YWNrX3NpemUgPiAwIHx8IHZ6ZXJvdXBwZXJfcmVxdWlyZWQgfHwgeG1t
X3JlZ3NfdXNlZCA+IDYraGlnaF9tbV9yZWdzCiAKICVtYWNybyBSRVQgMAotICAgIFdJTjY0X1JF
U1RPUkVfWE1NX0lOVEVSTkFMIHJzcAorICAgIFdJTjY0X1JFU1RPUkVfWE1NX0lOVEVSTkFMCiAg
ICAgUE9QX0lGX1VTRUQgMTQsIDEzLCAxMiwgMTEsIDEwLCA5LCA4LCA3Ci0gICAgJWlmIG1tc2l6
ZSA9PSAzMgorICAgICVpZiB2emVyb3VwcGVyX3JlcXVpcmVkCiAgICAgICAgIHZ6ZXJvdXBwZXIK
ICAgICAlZW5kaWYKICAgICBBVVRPX1JFUF9SRVQKQEAgLTYyMCwxNCArNjY3LDE1IEBAIERFQ0xB
UkVfUkVHIDcsICBSMTAsIDE2CiBERUNMQVJFX1JFRyA4LCAgUjExLCAyNAogREVDTEFSRV9SRUcg
OSwgIHJieCwgMzIKIERFQ0xBUkVfUkVHIDEwLCByYnAsIDQwCi1ERUNMQVJFX1JFRyAxMSwgUjEy
LCA0OAotREVDTEFSRV9SRUcgMTIsIFIxMywgNTYKLURFQ0xBUkVfUkVHIDEzLCBSMTQsIDY0Ci1E
RUNMQVJFX1JFRyAxNCwgUjE1LCA3MgorREVDTEFSRV9SRUcgMTEsIFIxNCwgNDgKK0RFQ0xBUkVf
UkVHIDEyLCBSMTUsIDU2CitERUNMQVJFX1JFRyAxMywgUjEyLCA2NAorREVDTEFSRV9SRUcgMTQs
IFIxMywgNzIKIAotJW1hY3JvIFBST0xPR1VFIDItNSsgOyAjYXJncywgI3JlZ3MsICN4bW1fcmVn
cywgW3N0YWNrX3NpemUsXSBhcmdfbmFtZXMuLi4KKyVtYWNybyBQUk9MT0dVRSAyLTUrIDAgOyAj
YXJncywgI3JlZ3MsICN4bW1fcmVncywgW3N0YWNrX3NpemUsXSBhcmdfbmFtZXMuLi4KICAgICAl
YXNzaWduIG51bV9hcmdzICUxCiAgICAgJWFzc2lnbiByZWdzX3VzZWQgJTIKKyAgICAlYXNzaWdu
IHhtbV9yZWdzX3VzZWQgJTMKICAgICBBU1NFUlQgcmVnc191c2VkID49IG51bV9hcmdzCiAgICAg
U0VUVVBfU1RBQ0tfUE9JTlRFUiAlNAogICAgIEFTU0VSVCByZWdzX3VzZWQgPD0gMTUKQEAgLTYz
Nyw3ICs2ODUsNyBAQCBERUNMQVJFX1JFRyAxNCwgUjE1LCA3MgogICAgIERFRklORV9BUkdTX0lO
VEVSTkFMICUwLCAlNCwgJTUKICVlbmRtYWNybwogCi0lZGVmaW5lIGhhc19lcGlsb2d1ZSByZWdz
X3VzZWQgPiA5IHx8IG1tc2l6ZSA9PSAzMiB8fCBzdGFja19zaXplID4gMAorJWRlZmluZSBoYXNf
ZXBpbG9ndWUgcmVnc191c2VkID4gOSB8fCBzdGFja19zaXplID4gMCB8fCB2emVyb3VwcGVyX3Jl
cXVpcmVkCiAKICVtYWNybyBSRVQgMAogICAgICVpZiBzdGFja19zaXplX3BhZGRlZCA+IDAKQEAg
LTY0OCw3ICs2OTYsNyBAQCBERUNMQVJFX1JFRyAxNCwgUjE1LCA3MgogICAgICAgICAlZW5kaWYK
ICAgICAlZW5kaWYKICAgICBQT1BfSUZfVVNFRCAxNCwgMTMsIDEyLCAxMSwgMTAsIDkKLSAgICAl
aWYgbW1zaXplID09IDMyCisgICAgJWlmIHZ6ZXJvdXBwZXJfcmVxdWlyZWQKICAgICAgICAgdnpl
cm91cHBlcgogICAgICVlbmRpZgogICAgIEFVVE9fUkVQX1JFVApAQCAtNjkzLDcgKzc0MSw3IEBA
IERFQ0xBUkVfQVJHIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNAogICAgIERFRklORV9BUkdT
X0lOVEVSTkFMICUwLCAlNCwgJTUKICVlbmRtYWNybwogCi0lZGVmaW5lIGhhc19lcGlsb2d1ZSBy
ZWdzX3VzZWQgPiAzIHx8IG1tc2l6ZSA9PSAzMiB8fCBzdGFja19zaXplID4gMAorJWRlZmluZSBo
YXNfZXBpbG9ndWUgcmVnc191c2VkID4gMyB8fCBzdGFja19zaXplID4gMCB8fCB2emVyb3VwcGVy
X3JlcXVpcmVkCiAKICVtYWNybyBSRVQgMAogICAgICVpZiBzdGFja19zaXplX3BhZGRlZCA+IDAK
QEAgLTcwNCw3ICs3NTIsNyBAQCBERUNMQVJFX0FSRyA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywg
MTQKICAgICAgICAgJWVuZGlmCiAgICAgJWVuZGlmCiAgICAgUE9QX0lGX1VTRUQgNiwgNSwgNCwg
MwotICAgICVpZiBtbXNpemUgPT0gMzIKKyAgICAlaWYgdnplcm91cHBlcl9yZXF1aXJlZAogICAg
ICAgICB2emVyb3VwcGVyCiAgICAgJWVuZGlmCiAgICAgQVVUT19SRVBfUkVUCkBAIC03MTUsNyAr
NzYzLDcgQEAgREVDTEFSRV9BUkcgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0CiAlaWYgV0lO
NjQgPT0gMAogICAgICVtYWNybyBXSU42NF9TUElMTF9YTU0gMQogICAgICVlbmRtYWNybwotICAg
ICVtYWNybyBXSU42NF9SRVNUT1JFX1hNTSAxCisgICAgJW1hY3JvIFdJTjY0X1JFU1RPUkVfWE1N
IDAKICAgICAlZW5kbWFjcm8KICAgICAlbWFjcm8gV0lONjRfUFVTSF9YTU0gMAogICAgICVlbmRt
YWNybwpAQCAtNzI2LDcgKzc3NCw3IEBAIERFQ0xBUkVfQVJHIDcsIDgsIDksIDEwLCAxMSwgMTIs
IDEzLCAxNAogOyBXZSBjYW4gYXV0b21hdGljYWxseSBkZXRlY3QgImZvbGxvd3MgYSBicmFuY2gi
LCBidXQgbm90IGEgYnJhbmNoIHRhcmdldC4KIDsgKFNTU0UzIGlzIGEgc3VmZmljaWVudCBjb25k
aXRpb24gdG8ga25vdyB0aGF0IHlvdXIgY3B1IGRvZXNuJ3QgaGF2ZSB0aGlzIHByb2JsZW0uKQog
JW1hY3JvIFJFUF9SRVQgMAotICAgICVpZiBoYXNfZXBpbG9ndWUKKyAgICAlaWYgaGFzX2VwaWxv
Z3VlIHx8IGNwdWZsYWcoc3NzZTMpCiAgICAgICAgIFJFVAogICAgICVlbHNlCiAgICAgICAgIHJl
cCByZXQKQEAgLTc1OCw3ICs4MDYsNyBAQCBERUNMQVJFX0FSRyA3LCA4LCA5LCAxMCwgMTEsIDEy
LCAxMywgMTQKIAogQlJBTkNIX0lOU1RSIGp6LCBqZSwgam56LCBqbmUsIGpsLCBqbGUsIGpubCwg
am5sZSwgamcsIGpnZSwgam5nLCBqbmdlLCBqYSwgamFlLCBqbmEsIGpuYWUsIGpiLCBqYmUsIGpu
Yiwgam5iZSwgamMsIGpuYywganMsIGpucywgam8sIGpubywganAsIGpucAogCi0lbWFjcm8gVEFJ
TF9DQUxMIDIgOyBjYWxsZWUsIGlzX25vbmFkamFjZW50CislbWFjcm8gVEFJTF9DQUxMIDEtMiAx
IDsgY2FsbGVlLCBpc19ub25hZGphY2VudAogICAgICVpZiBoYXNfZXBpbG9ndWUKICAgICAgICAg
Y2FsbCAlMQogICAgICAgICBSRVQKQEAgLTc4OCwzNSArODM2LDI1IEBAIEJSQU5DSF9JTlNUUiBq
eiwgamUsIGpueiwgam5lLCBqbCwgamxlLCBqbmwsIGpubGUsIGpnLCBqZ2UsIGpuZywgam5nZSwg
amEsIGphZSwKICVlbmRtYWNybwogJW1hY3JvIGNnbG9iYWxfaW50ZXJuYWwgMi0zKwogICAgIGFu
bm90YXRlX2Z1bmN0aW9uX3NpemUKLSAgICAlaWYgJTEKLSAgICAgICAgJXhkZWZpbmUgJSVGVU5D
VElPTl9QUkVGSVggcHJpdmF0ZV9wcmVmaXgKLSAgICAgICAgOyBsaWJ2cHggZXhwbGljaXRseSBz
ZXRzIHZpc2liaWxpdHkgaW4gc2hhcmVkIG9iamVjdCBidWlsZHMuIEF2b2lkCi0gICAgICAgIDsg
c2V0dGluZyB2aXNpYmlsaXR5IHRvIGhpZGRlbiBhcyBpdCBtYXkgYnJlYWsgYnVpbGRzIHRoYXQg
c3BsaXQKLSAgICAgICAgOyBzb3VyY2VzIG9uIGUuZy4sIGRpcmVjdG9yeSBib3VuZGFyaWVzLgot
ICAgICAgICAlaWZkZWYgQ0hST01JVU0KLSAgICAgICAgICAgICV4ZGVmaW5lICUlVklTSUJJTElU
WSBoaWRkZW4KKyAgICAlaWZuZGVmIGNnbG9iYWxlZF8lMgorICAgICAgICAlaWYgJTEKKyAgICAg
ICAgICAgICV4ZGVmaW5lICUyIG1hbmdsZShwcml2YXRlX3ByZWZpeCAlKyBfICUrICUyKQogICAg
ICAgICAlZWxzZQotICAgICAgICAgICAgJXhkZWZpbmUgJSVWSVNJQklMSVRZCisgICAgICAgICAg
ICAleGRlZmluZSAlMiBtYW5nbGUocHVibGljX3ByZWZpeCAlKyBfICUrICUyKQogICAgICAgICAl
ZW5kaWYKLSAgICAlZWxzZQotICAgICAgICAleGRlZmluZSAlJUZVTkNUSU9OX1BSRUZJWCBwdWJs
aWNfcHJlZml4Ci0gICAgICAgICV4ZGVmaW5lICUlVklTSUJJTElUWQotICAgICVlbmRpZgotICAg
ICVpZm5kZWYgY2dsb2JhbGVkXyUyCi0gICAgICAgICV4ZGVmaW5lICUyIG1hbmdsZSglJUZVTkNU
SU9OX1BSRUZJWCAlKyBfICUrICUyKQogICAgICAgICAleGRlZmluZSAlMi5za2lwX3Byb2xvZ3Vl
ICUyICUrIC5za2lwX3Byb2xvZ3VlCiAgICAgICAgIENBVF9YREVGSU5FIGNnbG9iYWxlZF8sICUy
LCAxCiAgICAgJWVuZGlmCiAgICAgJXhkZWZpbmUgY3VycmVudF9mdW5jdGlvbiAlMgogICAgICV4
ZGVmaW5lIGN1cnJlbnRfZnVuY3Rpb25fc2VjdGlvbiBfX1NFQ1RfXwogICAgICVpZiBGT1JNQVRf
RUxGCi0gICAgICAgIGdsb2JhbCAlMjpmdW5jdGlvbiAlJVZJU0lCSUxJVFkKLSAgICAlZWxpZiBG
T1JNQVRfTUFDSE8KLSAgICAgICAgJWlmZGVmIF9fTkFTTV9WRVJfXwotICAgICAgICAgICAgZ2xv
YmFsICUyCisgICAgICAgICVpZiAlMQorICAgICAgICAgICAgZ2xvYmFsICUyOmZ1bmN0aW9uIFZJ
U0lCSUxJVFkKICAgICAgICAgJWVsc2UKLSAgICAgICAgICAgIGdsb2JhbCAlMjpwcml2YXRlX2V4
dGVybgorICAgICAgICAgICAgZ2xvYmFsICUyOmZ1bmN0aW9uCiAgICAgICAgICVlbmRpZgorICAg
ICVlbGlmIEZPUk1BVF9NQUNITyAmJiBIQVZFX1BSSVZBVEVfRVhURVJOICYmICUxCisgICAgICAg
IGdsb2JhbCAlMjpwcml2YXRlX2V4dGVybgogICAgICVlbHNlCiAgICAgICAgIGdsb2JhbCAlMgog
ICAgICVlbmRpZgpAQCAtODI3LDEyICs4NjUsMjQgQEAgQlJBTkNIX0lOU1RSIGp6LCBqZSwgam56
LCBqbmUsIGpsLCBqbGUsIGpubCwgam5sZSwgamcsIGpnZSwgam5nLCBqbmdlLCBqYSwgamFlLAog
ICAgICVhc3NpZ24gc3RhY2tfb2Zmc2V0IDAgICAgICA7IHN0YWNrIHBvaW50ZXIgb2Zmc2V0IHJl
bGF0aXZlIHRvIHRoZSByZXR1cm4gYWRkcmVzcwogICAgICVhc3NpZ24gc3RhY2tfc2l6ZSAwICAg
ICAgICA7IGFtb3VudCBvZiBzdGFjayBzcGFjZSB0aGF0IGNhbiBiZSBmcmVlbHkgdXNlZCBpbnNp
ZGUgYSBmdW5jdGlvbgogICAgICVhc3NpZ24gc3RhY2tfc2l6ZV9wYWRkZWQgMCA7IHRvdGFsIGFt
b3VudCBvZiBhbGxvY2F0ZWQgc3RhY2sgc3BhY2UsIGluY2x1ZGluZyBzcGFjZSBmb3IgY2FsbGVl
LXNhdmVkIHhtbSByZWdpc3RlcnMgb24gV0lONjQgYW5kIGFsaWdubWVudCBwYWRkaW5nCi0gICAg
JWFzc2lnbiB4bW1fcmVnc191c2VkIDAgICAgIDsgbnVtYmVyIG9mIFhNTSByZWdpc3RlcnMgcmVx
dWVzdGVkLCB1c2VkIGZvciBkZWFsaW5nIHdpdGggY2FsbGVlLXNhdmVkIHJlZ2lzdGVycyBvbiBX
SU42NAorICAgICVhc3NpZ24geG1tX3JlZ3NfdXNlZCAwICAgICA7IG51bWJlciBvZiBYTU0gcmVn
aXN0ZXJzIHJlcXVlc3RlZCwgdXNlZCBmb3IgZGVhbGluZyB3aXRoIGNhbGxlZS1zYXZlZCByZWdp
c3RlcnMgb24gV0lONjQgYW5kIHZ6ZXJvdXBwZXIKICAgICAlaWZuaWRuICUzLCAiIgogICAgICAg
ICBQUk9MT0dVRSAlMwogICAgICVlbmRpZgogJWVuZG1hY3JvCiAKKzsgQ3JlYXRlIGEgZ2xvYmFs
IHN5bWJvbCBmcm9tIGEgbG9jYWwgbGFiZWwgd2l0aCB0aGUgY29ycmVjdCBuYW1lIG1hbmdsaW5n
IGFuZCB0eXBlCislbWFjcm8gY2dsb2JhbF9sYWJlbCAxCisgICAgJWlmIEZPUk1BVF9FTEYKKyAg
ICAgICAgZ2xvYmFsIGN1cnJlbnRfZnVuY3Rpb24gJSsgJTE6ZnVuY3Rpb24gVklTSUJJTElUWQor
ICAgICVlbGlmIEZPUk1BVF9NQUNITyAmJiBIQVZFX1BSSVZBVEVfRVhURVJOCisgICAgICAgIGds
b2JhbCBjdXJyZW50X2Z1bmN0aW9uICUrICUxOnByaXZhdGVfZXh0ZXJuCisgICAgJWVsc2UKKyAg
ICAgICAgZ2xvYmFsIGN1cnJlbnRfZnVuY3Rpb24gJSsgJTEKKyAgICAlZW5kaWYKKyAgICAlMToK
KyVlbmRtYWNybworCiAlbWFjcm8gY2V4dGVybiAxCiAgICAgJXhkZWZpbmUgJTEgbWFuZ2xlKHBy
aXZhdGVfcHJlZml4ICUrIF8gJSsgJTEpCiAgICAgQ0FUX1hERUZJTkUgY2dsb2JhbGVkXywgJTEs
IDEKQEAgLTg1MSw3ICs5MDEsOSBAQCBCUkFOQ0hfSU5TVFIganosIGplLCBqbnosIGpuZSwgamws
IGpsZSwgam5sLCBqbmxlLCBqZywgamdlLCBqbmcsIGpuZ2UsIGphLCBqYWUsCiAlbWFjcm8gY29u
c3QgMS0yKwogICAgICV4ZGVmaW5lICUxIG1hbmdsZShwcml2YXRlX3ByZWZpeCAlKyBfICUrICUx
KQogICAgICVpZiBGT1JNQVRfRUxGCi0gICAgICAgIGdsb2JhbCAlMTpkYXRhIGhpZGRlbgorICAg
ICAgICBnbG9iYWwgJTE6ZGF0YSBWSVNJQklMSVRZCisgICAgJWVsaWYgRk9STUFUX01BQ0hPICYm
IEhBVkVfUFJJVkFURV9FWFRFUk4KKyAgICAgICAgZ2xvYmFsICUxOnByaXZhdGVfZXh0ZXJuCiAg
ICAgJWVsc2UKICAgICAgICAgZ2xvYmFsICUxCiAgICAgJWVuZGlmCkBAIC04OTAsMjQgKzk0Miwy
NiBAQCBCUkFOQ0hfSU5TVFIganosIGplLCBqbnosIGpuZSwgamwsIGpsZSwgam5sLCBqbmxlLCBq
ZywgamdlLCBqbmcsIGpuZ2UsIGphLCBqYWUsCiAlYXNzaWduIGNwdWZsYWdzX3NzZSAgICAgICgx
PDw0KSB8IGNwdWZsYWdzX21teDIKICVhc3NpZ24gY3B1ZmxhZ3Nfc3NlMiAgICAgKDE8PDUpIHwg
Y3B1ZmxhZ3Nfc3NlCiAlYXNzaWduIGNwdWZsYWdzX3NzZTJzbG93ICgxPDw2KSB8IGNwdWZsYWdz
X3NzZTIKLSVhc3NpZ24gY3B1ZmxhZ3Nfc3NlMyAgICAgKDE8PDcpIHwgY3B1ZmxhZ3Nfc3NlMgot
JWFzc2lnbiBjcHVmbGFnc19zc3NlMyAgICAoMTw8OCkgfCBjcHVmbGFnc19zc2UzCi0lYXNzaWdu
IGNwdWZsYWdzX3NzZTQgICAgICgxPDw5KSB8IGNwdWZsYWdzX3Nzc2UzCi0lYXNzaWduIGNwdWZs
YWdzX3NzZTQyICAgICgxPDwxMCl8IGNwdWZsYWdzX3NzZTQKLSVhc3NpZ24gY3B1ZmxhZ3NfYXZ4
ICAgICAgKDE8PDExKXwgY3B1ZmxhZ3Nfc3NlNDIKLSVhc3NpZ24gY3B1ZmxhZ3NfeG9wICAgICAg
KDE8PDEyKXwgY3B1ZmxhZ3NfYXZ4Ci0lYXNzaWduIGNwdWZsYWdzX2ZtYTQgICAgICgxPDwxMyl8
IGNwdWZsYWdzX2F2eAotJWFzc2lnbiBjcHVmbGFnc19mbWEzICAgICAoMTw8MTQpfCBjcHVmbGFn
c19hdngKLSVhc3NpZ24gY3B1ZmxhZ3NfYXZ4MiAgICAgKDE8PDE1KXwgY3B1ZmxhZ3NfZm1hMwot
Ci0lYXNzaWduIGNwdWZsYWdzX2NhY2hlMzIgICgxPDwxNikKLSVhc3NpZ24gY3B1ZmxhZ3NfY2Fj
aGU2NCAgKDE8PDE3KQotJWFzc2lnbiBjcHVmbGFnc19zbG93Y3R6ICAoMTw8MTgpCi0lYXNzaWdu
IGNwdWZsYWdzX2x6Y250ICAgICgxPDwxOSkKLSVhc3NpZ24gY3B1ZmxhZ3NfYWxpZ25lZCAgKDE8
PDIwKSA7IG5vdCBhIGNwdSBmZWF0dXJlLCBidXQgYSBmdW5jdGlvbiB2YXJpYW50Ci0lYXNzaWdu
IGNwdWZsYWdzX2F0b20gICAgICgxPDwyMSkKLSVhc3NpZ24gY3B1ZmxhZ3NfYm1pMSAgICAgKDE8
PDIyKXxjcHVmbGFnc19semNudAotJWFzc2lnbiBjcHVmbGFnc19ibWkyICAgICAoMTw8MjMpfGNw
dWZsYWdzX2JtaTEKKyVhc3NpZ24gY3B1ZmxhZ3NfbHpjbnQgICAgKDE8PDcpIHwgY3B1ZmxhZ3Nf
c3NlMgorJWFzc2lnbiBjcHVmbGFnc19zc2UzICAgICAoMTw8OCkgfCBjcHVmbGFnc19zc2UyCisl
YXNzaWduIGNwdWZsYWdzX3Nzc2UzICAgICgxPDw5KSB8IGNwdWZsYWdzX3NzZTMKKyVhc3NpZ24g
Y3B1ZmxhZ3Nfc3NlNCAgICAgKDE8PDEwKXwgY3B1ZmxhZ3Nfc3NzZTMKKyVhc3NpZ24gY3B1Zmxh
Z3Nfc3NlNDIgICAgKDE8PDExKXwgY3B1ZmxhZ3Nfc3NlNAorJWFzc2lnbiBjcHVmbGFnc19hZXNu
aSAgICAoMTw8MTIpfCBjcHVmbGFnc19zc2U0MgorJWFzc2lnbiBjcHVmbGFnc19nZm5pICAgICAo
MTw8MTMpfCBjcHVmbGFnc19zc2U0MgorJWFzc2lnbiBjcHVmbGFnc19hdnggICAgICAoMTw8MTQp
fCBjcHVmbGFnc19zc2U0MgorJWFzc2lnbiBjcHVmbGFnc194b3AgICAgICAoMTw8MTUpfCBjcHVm
bGFnc19hdngKKyVhc3NpZ24gY3B1ZmxhZ3NfZm1hNCAgICAgKDE8PDE2KXwgY3B1ZmxhZ3NfYXZ4
CislYXNzaWduIGNwdWZsYWdzX2ZtYTMgICAgICgxPDwxNyl8IGNwdWZsYWdzX2F2eAorJWFzc2ln
biBjcHVmbGFnc19ibWkxICAgICAoMTw8MTgpfCBjcHVmbGFnc19hdnh8Y3B1ZmxhZ3NfbHpjbnQK
KyVhc3NpZ24gY3B1ZmxhZ3NfYm1pMiAgICAgKDE8PDE5KXwgY3B1ZmxhZ3NfYm1pMQorJWFzc2ln
biBjcHVmbGFnc19hdngyICAgICAoMTw8MjApfCBjcHVmbGFnc19mbWEzfGNwdWZsYWdzX2JtaTIK
KyVhc3NpZ24gY3B1ZmxhZ3NfYXZ4NTEyICAgKDE8PDIxKXwgY3B1ZmxhZ3NfYXZ4MiA7IEYsIENE
LCBCVywgRFEsIFZMCisKKyVhc3NpZ24gY3B1ZmxhZ3NfY2FjaGUzMiAgKDE8PDIyKQorJWFzc2ln
biBjcHVmbGFnc19jYWNoZTY0ICAoMTw8MjMpCislYXNzaWduIGNwdWZsYWdzX2FsaWduZWQgICgx
PDwyNCkgOyBub3QgYSBjcHUgZmVhdHVyZSwgYnV0IGEgZnVuY3Rpb24gdmFyaWFudAorJWFzc2ln
biBjcHVmbGFnc19hdG9tICAgICAoMTw8MjUpCiAKIDsgUmV0dXJucyBhIGJvb2xlYW4gdmFsdWUg
ZXhwcmVzc2luZyB3aGV0aGVyIG9yIG5vdCB0aGUgc3BlY2lmaWVkIGNwdWZsYWcgaXMgZW5hYmxl
ZC4KICVkZWZpbmUgICAgY3B1ZmxhZyh4KSAoKCgoKGNwdWZsYWdzICYgKGNwdWZsYWdzXyAlKyB4
KSkgXiAoY3B1ZmxhZ3NfICUrIHgpKSAtIDEpID4+IDMxKSAmIDEpCkBAIC05NTAsNyArMTAwNCw3
IEBAIEJSQU5DSF9JTlNUUiBqeiwgamUsIGpueiwgam5lLCBqbCwgamxlLCBqbmwsIGpubGUsIGpn
LCBqZ2UsIGpuZywgam5nZSwgamEsIGphZSwKIAogICAgICVpZiBWUFhfQVJDSF9YODZfNjQgfHwg
Y3B1ZmxhZyhzc2UyKQogICAgICAgICAlaWZkZWYgX19OQVNNX1ZFUl9fCi0gICAgICAgICAgICBB
TElHTk1PREUgazgKKyAgICAgICAgICAgIEFMSUdOTU9ERSBwNgogICAgICAgICAlZWxzZQogICAg
ICAgICAgICAgQ1BVIGFtZG5vcAogICAgICAgICAlZW5kaWYKQEAgLTk2MywxMSArMTAxNywxMiBA
QCBCUkFOQ0hfSU5TVFIganosIGplLCBqbnosIGpuZSwgamwsIGpsZSwgam5sLCBqbmxlLCBqZywg
amdlLCBqbmcsIGpuZ2UsIGphLCBqYWUsCiAgICAgJWVuZGlmCiAlZW5kbWFjcm8KIAotOyBNZXJn
ZSBtbXggYW5kIHNzZSoKKzsgTWVyZ2UgbW14LCBzc2UqLCBhbmQgYXZ4KgogOyBtIyBpcyBhIHNp
bWQgcmVnaXN0ZXIgb2YgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBzaXplCiA7IHhtIyBpcyB0aGUg
Y29ycmVzcG9uZGluZyB4bW0gcmVnaXN0ZXIgaWYgbW1zaXplID49IDE2LCBvdGhlcndpc2UgdGhl
IHNhbWUgYXMgbSMKIDsgeW0jIGlzIHRoZSBjb3JyZXNwb25kaW5nIHltbSByZWdpc3RlciBpZiBt
bXNpemUgPj0gMzIsIG90aGVyd2lzZSB0aGUgc2FtZSBhcyBtIwotOyAoQWxsIDMgcmVtYWluIGlu
IHN5bmMgdGhyb3VnaCBTV0FQLikKKzsgem0jIGlzIHRoZSBjb3JyZXNwb25kaW5nIHptbSByZWdp
c3RlciBpZiBtbXNpemUgPj0gNjQsIG90aGVyd2lzZSB0aGUgc2FtZSBhcyBtIworOyAoQWxsIDQg
cmVtYWluIGluIHN5bmMgdGhyb3VnaCBTV0FQLikKIAogJW1hY3JvIENBVF9YREVGSU5FIDMKICAg
ICAleGRlZmluZSAlMSUyICUzCkBAIC05NzcsNjkgKzEwMzIsOTkgQEAgQlJBTkNIX0lOU1RSIGp6
LCBqZSwgam56LCBqbmUsIGpsLCBqbGUsIGpubCwgam5sZSwgamcsIGpnZSwgam5nLCBqbmdlLCBq
YSwgamFlLAogICAgICV1bmRlZiAlMSUyCiAlZW5kbWFjcm8KIAorJW1hY3JvIERFRklORV9NTVJF
R1MgMSA7IG1tdHlwZQorICAgICVhc3NpZ24gJSVwcmV2X21tcmVncyAwCisgICAgJWlmZGVmIG51
bV9tbXJlZ3MKKyAgICAgICAgJWFzc2lnbiAlJXByZXZfbW1yZWdzIG51bV9tbXJlZ3MKKyAgICAl
ZW5kaWYKKworICAgICVhc3NpZ24gbnVtX21tcmVncyA4CisgICAgJWlmIFZQWF9BUkNIX1g4Nl82
NCAmJiBtbXNpemUgPj0gMTYKKyAgICAgICAgJWFzc2lnbiBudW1fbW1yZWdzIDE2CisgICAgICAg
ICVpZiBjcHVmbGFnKGF2eDUxMikgfHwgbW1zaXplID09IDY0CisgICAgICAgICAgICAlYXNzaWdu
IG51bV9tbXJlZ3MgMzIKKyAgICAgICAgJWVuZGlmCisgICAgJWVuZGlmCisKKyAgICAlYXNzaWdu
ICUlaSAwCisgICAgJXJlcCBudW1fbW1yZWdzCisgICAgICAgIENBVF9YREVGSU5FIG0sICUlaSwg
JTEgJSsgJSVpCisgICAgICAgIENBVF9YREVGSU5FIG5uJTEsICUlaSwgJSVpCisgICAgICAgICVh
c3NpZ24gJSVpICUlaSsxCisgICAgJWVuZHJlcAorICAgICVpZiAlJXByZXZfbW1yZWdzID4gbnVt
X21tcmVncworICAgICAgICAlcmVwICUlcHJldl9tbXJlZ3MgLSBudW1fbW1yZWdzCisgICAgICAg
ICAgICBDQVRfVU5ERUYgbSwgJSVpCisgICAgICAgICAgICBDQVRfVU5ERUYgbm4gJSsgbW10eXBl
LCAlJWkKKyAgICAgICAgICAgICVhc3NpZ24gJSVpICUlaSsxCisgICAgICAgICVlbmRyZXAKKyAg
ICAlZW5kaWYKKyAgICAleGRlZmluZSBtbXR5cGUgJTEKKyVlbmRtYWNybworCis7IFByZWZlciBy
ZWdpc3RlcnMgMTYtMzEgb3ZlciAwLTE1IHRvIGF2b2lkIGhhdmluZyB0byB1c2Ugdnplcm91cHBl
cgorJW1hY3JvIEFWWDUxMl9NTV9QRVJNVVRBVElPTiAwLTEgMCA7IHN0YXJ0X3JlZworICAgICVp
ZiBWUFhfQVJDSF9YODZfNjQgJiYgY3B1ZmxhZyhhdng1MTIpCisgICAgICAgICVhc3NpZ24gJSVp
ICUxCisgICAgICAgICVyZXAgMTYtJTEKKyAgICAgICAgICAgICVhc3NpZ24gJSVpX2hpZ2ggJSVp
KzE2CisgICAgICAgICAgICBTV0FQICUlaSwgJSVpX2hpZ2gKKyAgICAgICAgICAgICVhc3NpZ24g
JSVpICUlaSsxCisgICAgICAgICVlbmRyZXAKKyAgICAlZW5kaWYKKyVlbmRtYWNybworCiAlbWFj
cm8gSU5JVF9NTVggMC0xKwogICAgICVhc3NpZ24gYXZ4X2VuYWJsZWQgMAogICAgICVkZWZpbmUg
UkVTRVRfTU1fUEVSTVVUQVRJT04gSU5JVF9NTVggJTEKICAgICAlZGVmaW5lIG1tc2l6ZSA4Ci0g
ICAgJWRlZmluZSBudW1fbW1yZWdzIDgKICAgICAlZGVmaW5lIG1vdmEgbW92cQogICAgICVkZWZp
bmUgbW92dSBtb3ZxCiAgICAgJWRlZmluZSBtb3ZoIG1vdmQKICAgICAlZGVmaW5lIG1vdm50YSBt
b3ZudHEKLSAgICAlYXNzaWduICUlaSAwCi0gICAgJXJlcCA4Ci0gICAgICAgIENBVF9YREVGSU5F
IG0sICUlaSwgbW0gJSsgJSVpCi0gICAgICAgIENBVF9YREVGSU5FIG5ubW0sICUlaSwgJSVpCi0g
ICAgICAgICVhc3NpZ24gJSVpICUlaSsxCi0gICAgJWVuZHJlcAotICAgICVyZXAgOAotICAgICAg
ICBDQVRfVU5ERUYgbSwgJSVpCi0gICAgICAgIENBVF9VTkRFRiBubm1tLCAlJWkKLSAgICAgICAg
JWFzc2lnbiAlJWkgJSVpKzEKLSAgICAlZW5kcmVwCiAgICAgSU5JVF9DUFVGTEFHUyAlMQorICAg
IERFRklORV9NTVJFR1MgbW0KICVlbmRtYWNybwogCiAlbWFjcm8gSU5JVF9YTU0gMC0xKwogICAg
ICVhc3NpZ24gYXZ4X2VuYWJsZWQgMAogICAgICVkZWZpbmUgUkVTRVRfTU1fUEVSTVVUQVRJT04g
SU5JVF9YTU0gJTEKICAgICAlZGVmaW5lIG1tc2l6ZSAxNgotICAgICVkZWZpbmUgbnVtX21tcmVn
cyA4Ci0gICAgJWlmIFZQWF9BUkNIX1g4Nl82NAotICAgICAgICAlZGVmaW5lIG51bV9tbXJlZ3Mg
MTYKLSAgICAlZW5kaWYKICAgICAlZGVmaW5lIG1vdmEgbW92ZHFhCiAgICAgJWRlZmluZSBtb3Z1
IG1vdmRxdQogICAgICVkZWZpbmUgbW92aCBtb3ZxCiAgICAgJWRlZmluZSBtb3ZudGEgbW92bnRk
cQotICAgICVhc3NpZ24gJSVpIDAKLSAgICAlcmVwIG51bV9tbXJlZ3MKLSAgICAgICAgQ0FUX1hE
RUZJTkUgbSwgJSVpLCB4bW0gJSsgJSVpCi0gICAgICAgIENBVF9YREVGSU5FIG5ueG1tLCAlJWks
ICUlaQotICAgICAgICAlYXNzaWduICUlaSAlJWkrMQotICAgICVlbmRyZXAKICAgICBJTklUX0NQ
VUZMQUdTICUxCisgICAgREVGSU5FX01NUkVHUyB4bW0KKyAgICAlaWYgV0lONjQKKyAgICAgICAg
QVZYNTEyX01NX1BFUk1VVEFUSU9OIDYgOyBTd2FwIGNhbGxlZS1zYXZlZCByZWdpc3RlcnMgd2l0
aCB2b2xhdGlsZSByZWdpc3RlcnMKKyAgICAlZW5kaWYKICVlbmRtYWNybwogCiAlbWFjcm8gSU5J
VF9ZTU0gMC0xKwogICAgICVhc3NpZ24gYXZ4X2VuYWJsZWQgMQogICAgICVkZWZpbmUgUkVTRVRf
TU1fUEVSTVVUQVRJT04gSU5JVF9ZTU0gJTEKICAgICAlZGVmaW5lIG1tc2l6ZSAzMgotICAgICVk
ZWZpbmUgbnVtX21tcmVncyA4Ci0gICAgJWlmIFZQWF9BUkNIX1g4Nl82NAotICAgICAgICAlZGVm
aW5lIG51bV9tbXJlZ3MgMTYKLSAgICAlZW5kaWYKICAgICAlZGVmaW5lIG1vdmEgbW92ZHFhCiAg
ICAgJWRlZmluZSBtb3Z1IG1vdmRxdQogICAgICV1bmRlZiBtb3ZoCiAgICAgJWRlZmluZSBtb3Zu
dGEgbW92bnRkcQotICAgICVhc3NpZ24gJSVpIDAKLSAgICAlcmVwIG51bV9tbXJlZ3MKLSAgICAg
ICAgQ0FUX1hERUZJTkUgbSwgJSVpLCB5bW0gJSsgJSVpCi0gICAgICAgIENBVF9YREVGSU5FIG5u
eW1tLCAlJWksICUlaQotICAgICAgICAlYXNzaWduICUlaSAlJWkrMQotICAgICVlbmRyZXAKICAg
ICBJTklUX0NQVUZMQUdTICUxCisgICAgREVGSU5FX01NUkVHUyB5bW0KKyAgICBBVlg1MTJfTU1f
UEVSTVVUQVRJT04KKyVlbmRtYWNybworCislbWFjcm8gSU5JVF9aTU0gMC0xKworICAgICVhc3Np
Z24gYXZ4X2VuYWJsZWQgMQorICAgICVkZWZpbmUgUkVTRVRfTU1fUEVSTVVUQVRJT04gSU5JVF9a
TU0gJTEKKyAgICAlZGVmaW5lIG1tc2l6ZSA2NAorICAgICVkZWZpbmUgbW92YSBtb3ZkcWEKKyAg
ICAlZGVmaW5lIG1vdnUgbW92ZHF1CisgICAgJXVuZGVmIG1vdmgKKyAgICAlZGVmaW5lIG1vdm50
YSBtb3ZudGRxCisgICAgSU5JVF9DUFVGTEFHUyAlMQorICAgIERFRklORV9NTVJFR1Mgem1tCisg
ICAgQVZYNTEyX01NX1BFUk1VVEFUSU9OCiAlZW5kbWFjcm8KIAogSU5JVF9YTU0KQEAgLTEwNDgs
MTggKzExMzMsMjYgQEAgSU5JVF9YTU0KICAgICAlZGVmaW5lICBtbW1tJTEgICBtbSUxCiAgICAg
JWRlZmluZSAgbW14bW0lMSAgbW0lMQogICAgICVkZWZpbmUgIG1teW1tJTEgIG1tJTEKKyAgICAl
ZGVmaW5lICBtbXptbSUxICBtbSUxCiAgICAgJWRlZmluZSB4bW1tbSUxICAgbW0lMQogICAgICVk
ZWZpbmUgeG1teG1tJTEgeG1tJTEKICAgICAlZGVmaW5lIHhtbXltbSUxIHhtbSUxCisgICAgJWRl
ZmluZSB4bW16bW0lMSB4bW0lMQogICAgICVkZWZpbmUgeW1tbW0lMSAgIG1tJTEKICAgICAlZGVm
aW5lIHltbXhtbSUxIHhtbSUxCiAgICAgJWRlZmluZSB5bW15bW0lMSB5bW0lMQorICAgICVkZWZp
bmUgeW1tem1tJTEgeW1tJTEKKyAgICAlZGVmaW5lIHptbW1tJTEgICBtbSUxCisgICAgJWRlZmlu
ZSB6bW14bW0lMSB4bW0lMQorICAgICVkZWZpbmUgem1teW1tJTEgeW1tJTEKKyAgICAlZGVmaW5l
IHptbXptbSUxIHptbSUxCiAgICAgJWRlZmluZSB4bSUxIHhtbSAlKyBtJTEKICAgICAlZGVmaW5l
IHltJTEgeW1tICUrIG0lMQorICAgICVkZWZpbmUgem0lMSB6bW0gJSsgbSUxCiAlZW5kbWFjcm8K
IAogJWFzc2lnbiBpIDAKLSVyZXAgMTYKKyVyZXAgMzIKICAgICBERUNMQVJFX01NQ0FTVCBpCiAg
ICAgJWFzc2lnbiBpIGkrMQogJWVuZHJlcApAQCAtMTEyOSwyNSArMTIyMiw0MiBAQCBJTklUX1hN
TQogICAgICVlbmRpZgogICAgICVhc3NpZ24gJSVpIDAKICAgICAlcmVwIG51bV9tbXJlZ3MKLSAg
ICAgICAgQ0FUX1hERUZJTkUgJSVmLCAlJWksIG0gJSsgJSVpCisgICAgICAgICV4ZGVmaW5lICUl
dG1wIG0gJSsgJSVpCisgICAgICAgIENBVF9YREVGSU5FICUlZiwgJSVpLCByZWdudW1vZiAlKyAl
JXRtcAogICAgICAgICAlYXNzaWduICUlaSAlJWkrMQogICAgICVlbmRyZXAKICVlbmRtYWNybwog
Ci0lbWFjcm8gTE9BRF9NTV9QRVJNVVRBVElPTiAxIDsgbmFtZSB0byBsb2FkIGZyb20KLSAgICAl
aWZkZWYgJTFfbTAKKyVtYWNybyBMT0FEX01NX1BFUk1VVEFUSU9OIDAtMSA7IG5hbWUgdG8gbG9h
ZCBmcm9tCisgICAgJWlmICUwCisgICAgICAgICV4ZGVmaW5lICUlZiAlMV9tCisgICAgJWVsc2UK
KyAgICAgICAgJXhkZWZpbmUgJSVmIGN1cnJlbnRfZnVuY3Rpb24gJSsgX20KKyAgICAlZW5kaWYK
KyAgICAleGRlZmluZSAlJXRtcCAlJWYgJSsgMAorICAgICVpZm51bSAlJXRtcAorICAgICAgICBS
RVNFVF9NTV9QRVJNVVRBVElPTgogICAgICAgICAlYXNzaWduICUlaSAwCiAgICAgICAgICVyZXAg
bnVtX21tcmVncwotICAgICAgICAgICAgQ0FUX1hERUZJTkUgbSwgJSVpLCAlMV9tICUrICUlaQot
ICAgICAgICAgICAgQ0FUX1hERUZJTkUgbm4sIG0gJSsgJSVpLCAlJWkKKyAgICAgICAgICAgICV4
ZGVmaW5lICUldG1wICUlZiAlKyAlJWkKKyAgICAgICAgICAgIENBVF9YREVGSU5FICUlbSwgJSVp
LCBtICUrICUldG1wCiAgICAgICAgICAgICAlYXNzaWduICUlaSAlJWkrMQogICAgICAgICAlZW5k
cmVwCisgICAgICAgICVyZXAgbnVtX21tcmVncworICAgICAgICAgICAgJWFzc2lnbiAlJWkgJSVp
LTEKKyAgICAgICAgICAgIENBVF9YREVGSU5FIG0sICUlaSwgJSVtICUrICUlaQorICAgICAgICAg
ICAgQ0FUX1hERUZJTkUgbm4sIG0gJSsgJSVpLCAlJWkKKyAgICAgICAgJWVuZHJlcAogICAgICVl
bmRpZgogJWVuZG1hY3JvCiAKIDsgQXBwZW5kIGNwdWZsYWdzIHRvIHRoZSBjYWxsZWUncyBuYW1l
IGlmZiB0aGUgYXBwZW5kZWQgbmFtZSBpcyBrbm93biBhbmQgdGhlIHBsYWluIG5hbWUgaXNuJ3QK
ICVtYWNybyBjYWxsIDEKLSAgICBjYWxsX2ludGVybmFsICUxICUrIFNVRkZJWCwgJTEKKyAgICAl
aWZpZCAlMQorICAgICAgICBjYWxsX2ludGVybmFsICUxICUrIFNVRkZJWCwgJTEKKyAgICAlZWxz
ZQorICAgICAgICBjYWxsICUxCisgICAgJWVuZGlmCiAlZW5kbWFjcm8KICVtYWNybyBjYWxsX2lu
dGVybmFsIDIKICAgICAleGRlZmluZSAlJWkgJTIKQEAgLTExOTAsMTIgKzEzMDAsMTcgQEAgSU5J
VF9YTU0KIDs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogCiAlYXNzaWduIGkgMAotJXJlcCAxNgorJXJl
cCAzMgogICAgICVpZiBpIDwgOAogICAgICAgICBDQVRfWERFRklORSBzaXplb2ZtbSwgaSwgOAor
ICAgICAgICBDQVRfWERFRklORSByZWdudW1vZm1tLCBpLCBpCiAgICAgJWVuZGlmCiAgICAgQ0FU
X1hERUZJTkUgc2l6ZW9meG1tLCBpLCAxNgogICAgIENBVF9YREVGSU5FIHNpemVvZnltbSwgaSwg
MzIKKyAgICBDQVRfWERFRklORSBzaXplb2Z6bW0sIGksIDY0CisgICAgQ0FUX1hERUZJTkUgcmVn
bnVtb2Z4bW0sIGksIGkKKyAgICBDQVRfWERFRklORSByZWdudW1vZnltbSwgaSwgaQorICAgIENB
VF9YREVGSU5FIHJlZ251bW9mem1tLCBpLCBpCiAgICAgJWFzc2lnbiBpIGkrMQogJWVuZHJlcAog
JXVuZGVmIGkKQEAgLTEyMTQsNyArMTMyOSw3IEBAIElOSVRfWE1NCiA7JTEgPT0gaW5zdHJ1Y3Rp
b24KIDslMiA9PSBtaW5pbWFsIGluc3RydWN0aW9uIHNldAogOyUzID09IDEgaWYgZmxvYXQsIDAg
aWYgaW50Ci07JTQgPT0gMSBpZiBub24tZGVzdHJ1Y3RpdmUgb3IgNC1vcGVyYW5kICh4bW0sIHht
bSwgeG1tLCBpbW0pLCAwIG90aGVyd2lzZQorOyU0ID09IDEgaWYgNC1vcGVyYW5kIGVtdWxhdGlv
biwgMCBpZiAzLW9wZXJhbmQgZW11bGF0aW9uLCAyNTUgb3RoZXJ3aXNlIChubyBlbXVsYXRpb24p
CiA7JTUgPT0gMSBpZiBjb21tdXRhdGl2ZSAoaS5lLiBkb2Vzbid0IG1hdHRlciB3aGljaCBzcmMg
YXJnIGlzIHdoaWNoKSwgMCBpZiBub3QKIDslNis6IG9wZXJhbmRzCiAlbWFjcm8gUlVOX0FWWF9J
TlNUUiA2LTkrCkBAIC0xMjM4LDggKzEzNTMsMjIgQEAgSU5JVF9YTU0KICAgICAgICAgJWlmZGVm
IGNwdW5hbWUKICAgICAgICAgICAgICVpZiBub3RjcHVmbGFnKCUyKQogICAgICAgICAgICAgICAg
ICVlcnJvciB1c2Ugb2YgYGAlMScnICUyIGluc3RydWN0aW9uIGluIGNwdW5hbWUgZnVuY3Rpb246
IGN1cnJlbnRfZnVuY3Rpb24KLSAgICAgICAgICAgICVlbGlmIGNwdWZsYWdzXyUyIDwgY3B1Zmxh
Z3Nfc3NlICYmIG5vdGNwdWZsYWcoc3NlMikgJiYgX19zaXplb2ZyZWcgPiA4CisgICAgICAgICAg
ICAlZWxpZiAlMyA9PSAwICYmIF9fc2l6ZW9mcmVnID09IDE2ICYmIG5vdGNwdWZsYWcoc3NlMikK
ICAgICAgICAgICAgICAgICAlZXJyb3IgdXNlIG9mIGBgJTEnJyBzc2UyIGluc3RydWN0aW9uIGlu
IGNwdW5hbWUgZnVuY3Rpb246IGN1cnJlbnRfZnVuY3Rpb24KKyAgICAgICAgICAgICVlbGlmICUz
ID09IDAgJiYgX19zaXplb2ZyZWcgPT0gMzIgJiYgbm90Y3B1ZmxhZyhhdngyKQorICAgICAgICAg
ICAgICAgICVlcnJvciB1c2Ugb2YgYGAlMScnIGF2eDIgaW5zdHJ1Y3Rpb24gaW4gY3B1bmFtZSBm
dW5jdGlvbjogY3VycmVudF9mdW5jdGlvbgorICAgICAgICAgICAgJWVsaWYgX19zaXplb2ZyZWcg
PT0gMTYgJiYgbm90Y3B1ZmxhZyhzc2UpCisgICAgICAgICAgICAgICAgJWVycm9yIHVzZSBvZiBg
YCUxJycgc3NlIGluc3RydWN0aW9uIGluIGNwdW5hbWUgZnVuY3Rpb246IGN1cnJlbnRfZnVuY3Rp
b24KKyAgICAgICAgICAgICVlbGlmIF9fc2l6ZW9mcmVnID09IDMyICYmIG5vdGNwdWZsYWcoYXZ4
KQorICAgICAgICAgICAgICAgICVlcnJvciB1c2Ugb2YgYGAlMScnIGF2eCBpbnN0cnVjdGlvbiBp
biBjcHVuYW1lIGZ1bmN0aW9uOiBjdXJyZW50X2Z1bmN0aW9uCisgICAgICAgICAgICAlZWxpZiBf
X3NpemVvZnJlZyA9PSA2NCAmJiBub3RjcHVmbGFnKGF2eDUxMikKKyAgICAgICAgICAgICAgICAl
ZXJyb3IgdXNlIG9mIGBgJTEnJyBhdng1MTIgaW5zdHJ1Y3Rpb24gaW4gY3B1bmFtZSBmdW5jdGlv
bjogY3VycmVudF9mdW5jdGlvbgorICAgICAgICAgICAgJWVsaWZpZG4gJTEsIHBleHRydyA7IHNw
ZWNpYWwgY2FzZSBiZWNhdXNlIHRoZSBiYXNlIGluc3RydWN0aW9uIGlzIG1teDIsCisgICAgICAg
ICAgICAgICAgJWlmbmlkICU2ICAgICAgIDsgYnV0IHNzZTQgaXMgcmVxdWlyZWQgZm9yIG1lbW9y
eSBvcGVyYW5kcworICAgICAgICAgICAgICAgICAgICAlaWYgbm90Y3B1ZmxhZyhzc2U0KQorICAg
ICAgICAgICAgICAgICAgICAgICAgJWVycm9yIHVzZSBvZiBgYCUxJycgc3NlNCBpbnN0cnVjdGlv
biBpbiBjcHVuYW1lIGZ1bmN0aW9uOiBjdXJyZW50X2Z1bmN0aW9uCisgICAgICAgICAgICAgICAg
ICAgICVlbmRpZgorICAgICAgICAgICAgICAgICVlbmRpZgogICAgICAgICAgICAgJWVuZGlmCiAg
ICAgICAgICVlbmRpZgogICAgICVlbmRpZgpAQCAtMTI0NywxNCArMTM3NiwxMiBAQCBJTklUX1hN
TQogICAgICVpZiBfX2VtdWxhdGVfYXZ4CiAgICAgICAgICV4ZGVmaW5lIF9fc3JjMSAlNwogICAg
ICAgICAleGRlZmluZSBfX3NyYzIgJTgKLSAgICAgICAgJWlmbmlkbiAlNiwgJTcKLSAgICAgICAg
ICAgICVpZiAlMCA+PSA5Ci0gICAgICAgICAgICAgICAgQ0hFQ0tfQVZYX0lOU1RSX0VNVSB7JTEg
JTYsICU3LCAlOCwgJTl9LCAlNiwgJTgsICU5Ci0gICAgICAgICAgICAlZWxzZQotICAgICAgICAg
ICAgICAgIENIRUNLX0FWWF9JTlNUUl9FTVUgeyUxICU2LCAlNywgJTh9LCAlNiwgJTgKLSAgICAg
ICAgICAgICVlbmRpZgotICAgICAgICAgICAgJWlmICU1ICYmICU0ID09IDAKLSAgICAgICAgICAg
ICAgICAlaWZuaWQgJTgKKyAgICAgICAgJWlmICU1ICYmICU0ID09IDAKKyAgICAgICAgICAgICVp
Zm5pZG4gJTYsICU3CisgICAgICAgICAgICAgICAgJWlmaWRuICU2LCAlOAorICAgICAgICAgICAg
ICAgICAgICAleGRlZmluZSBfX3NyYzEgJTgKKyAgICAgICAgICAgICAgICAgICAgJXhkZWZpbmUg
X19zcmMyICU3CisgICAgICAgICAgICAgICAgJWVsaWZubnVtIHNpemVvZiU4CiAgICAgICAgICAg
ICAgICAgICAgIDsgMy1vcGVyYW5kIEFWWCBpbnN0cnVjdGlvbnMgd2l0aCBhIG1lbW9yeSBhcmcg
Y2FuIG9ubHkgaGF2ZSBpdCBpbiBzcmMyLAogICAgICAgICAgICAgICAgICAgICA7IHdoZXJlYXMg
U1NFIGVtdWxhdGlvbiBwcmVmZXJzIHRvIGhhdmUgaXQgaW4gc3JjMSAoaS5lLiB0aGUgbW92KS4K
ICAgICAgICAgICAgICAgICAgICAgOyBTbywgaWYgdGhlIGluc3RydWN0aW9uIGlzIGNvbW11dGF0
aXZlIHdpdGggYSBtZW1vcnkgYXJnLCBzd2FwIHRoZW0uCkBAIC0xMjYyLDYgKzEzODksMTMgQEAg
SU5JVF9YTU0KICAgICAgICAgICAgICAgICAgICAgJXhkZWZpbmUgX19zcmMyICU3CiAgICAgICAg
ICAgICAgICAgJWVuZGlmCiAgICAgICAgICAgICAlZW5kaWYKKyAgICAgICAgJWVuZGlmCisgICAg
ICAgICVpZm5pZG4gJTYsIF9fc3JjMQorICAgICAgICAgICAgJWlmICUwID49IDkKKyAgICAgICAg
ICAgICAgICBDSEVDS19BVlhfSU5TVFJfRU1VIHslMSAlNiwgJTcsICU4LCAlOX0sICU2LCBfX3Ny
YzIsICU5CisgICAgICAgICAgICAlZWxzZQorICAgICAgICAgICAgICAgIENIRUNLX0FWWF9JTlNU
Ul9FTVUgeyUxICU2LCAlNywgJTh9LCAlNiwgX19zcmMyCisgICAgICAgICAgICAlZW5kaWYKICAg
ICAgICAgICAgICVpZiBfX3NpemVvZnJlZyA9PSA4CiAgICAgICAgICAgICAgICAgTU9WUSAlNiwg
X19zcmMxCiAgICAgICAgICAgICAlZWxpZiAlMwpAQCAtMTI3OCw5ICsxNDEyLDQwIEBAIElOSVRf
WE1NCiAgICAgJWVsaWYgJTAgPj0gOQogICAgICAgICBfX2luc3RyICU2LCAlNywgJTgsICU5CiAg
ICAgJWVsaWYgJTAgPT0gOAotICAgICAgICBfX2luc3RyICU2LCAlNywgJTgKKyAgICAgICAgJWlm
IGF2eF9lbmFibGVkICYmICU1CisgICAgICAgICAgICAleGRlZmluZSBfX3NyYzEgJTcKKyAgICAg
ICAgICAgICV4ZGVmaW5lIF9fc3JjMiAlOAorICAgICAgICAgICAgJWlmbnVtIHJlZ251bW9mJTcK
KyAgICAgICAgICAgICAgICAlaWZudW0gcmVnbnVtb2YlOAorICAgICAgICAgICAgICAgICAgICAl
aWYgcmVnbnVtb2YlNyA8IDggJiYgcmVnbnVtb2YlOCA+PSA4ICYmIHJlZ251bW9mJTggPCAxNiAm
JiBzaXplb2YlOCA8PSAzMgorICAgICAgICAgICAgICAgICAgICAgICAgOyBNb3N0IFZFWC1lbmNv
ZGVkIGluc3RydWN0aW9ucyByZXF1aXJlIGFuIGFkZGl0aW9uYWwgYnl0ZSB0byBlbmNvZGUgd2hl
bgorICAgICAgICAgICAgICAgICAgICAgICAgOyBzcmMyIGlzIGEgaGlnaCByZWdpc3RlciAoZS5n
LiBtOC4uMTUpLiBJZiB0aGUgaW5zdHJ1Y3Rpb24gaXMgY29tbXV0YXRpdmUKKyAgICAgICAgICAg
ICAgICAgICAgICAgIDsgd2UgY2FuIHN3YXAgc3JjMSBhbmQgc3JjMiB3aGVuIGRvaW5nIHNvIHJl
ZHVjZXMgdGhlIGluc3RydWN0aW9uIGxlbmd0aC4KKyAgICAgICAgICAgICAgICAgICAgICAgICV4
ZGVmaW5lIF9fc3JjMSAlOAorICAgICAgICAgICAgICAgICAgICAgICAgJXhkZWZpbmUgX19zcmMy
ICU3CisgICAgICAgICAgICAgICAgICAgICVlbmRpZgorICAgICAgICAgICAgICAgICVlbmRpZgor
ICAgICAgICAgICAgJWVuZGlmCisgICAgICAgICAgICBfX2luc3RyICU2LCBfX3NyYzEsIF9fc3Jj
MgorICAgICAgICAlZWxzZQorICAgICAgICAgICAgX19pbnN0ciAlNiwgJTcsICU4CisgICAgICAg
ICVlbmRpZgogICAgICVlbGlmICUwID09IDcKLSAgICAgICAgX19pbnN0ciAlNiwgJTcKKyAgICAg
ICAgJWlmIGF2eF9lbmFibGVkICYmICU1CisgICAgICAgICAgICAleGRlZmluZSBfX3NyYzEgJTYK
KyAgICAgICAgICAgICV4ZGVmaW5lIF9fc3JjMiAlNworICAgICAgICAgICAgJWlmbnVtIHJlZ251
bW9mJTYKKyAgICAgICAgICAgICAgICAlaWZudW0gcmVnbnVtb2YlNworICAgICAgICAgICAgICAg
ICAgICAlaWYgcmVnbnVtb2YlNiA8IDggJiYgcmVnbnVtb2YlNyA+PSA4ICYmIHJlZ251bW9mJTcg
PCAxNiAmJiBzaXplb2YlNyA8PSAzMgorICAgICAgICAgICAgICAgICAgICAgICAgJXhkZWZpbmUg
X19zcmMxICU3CisgICAgICAgICAgICAgICAgICAgICAgICAleGRlZmluZSBfX3NyYzIgJTYKKyAg
ICAgICAgICAgICAgICAgICAgJWVuZGlmCisgICAgICAgICAgICAgICAgJWVuZGlmCisgICAgICAg
ICAgICAlZW5kaWYKKyAgICAgICAgICAgIF9faW5zdHIgJTYsIF9fc3JjMSwgX19zcmMyCisgICAg
ICAgICVlbHNlCisgICAgICAgICAgICBfX2luc3RyICU2LCAlNworICAgICAgICAlZW5kaWYKICAg
ICAlZWxzZQogICAgICAgICBfX2luc3RyICU2CiAgICAgJWVuZGlmCkBAIC0xMjg5LDkgKzE0NTQs
OSBAQCBJTklUX1hNTQogOyUxID09IGluc3RydWN0aW9uCiA7JTIgPT0gbWluaW1hbCBpbnN0cnVj
dGlvbiBzZXQKIDslMyA9PSAxIGlmIGZsb2F0LCAwIGlmIGludAotOyU0ID09IDEgaWYgbm9uLWRl
c3RydWN0aXZlIG9yIDQtb3BlcmFuZCAoeG1tLCB4bW0sIHhtbSwgaW1tKSwgMCBvdGhlcndpc2UK
KzslNCA9PSAxIGlmIDQtb3BlcmFuZCBlbXVsYXRpb24sIDAgaWYgMy1vcGVyYW5kIGVtdWxhdGlv
biwgMjU1IG90aGVyd2lzZSAobm8gZW11bGF0aW9uKQogOyU1ID09IDEgaWYgY29tbXV0YXRpdmUg
KGkuZS4gZG9lc24ndCBtYXR0ZXIgd2hpY2ggc3JjIGFyZyBpcyB3aGljaCksIDAgaWYgbm90Ci0l
bWFjcm8gQVZYX0lOU1RSIDEtNSBmbm9yZCwgMCwgMSwgMAorJW1hY3JvIEFWWF9JTlNUUiAxLTUg
Zm5vcmQsIDAsIDI1NSwgMAogICAgICVtYWNybyAlMSAxLTEwIGZub3JkLCBmbm9yZCwgZm5vcmQs
IGZub3JkLCAlMSwgJTIsICUzLCAlNCwgJTUKICAgICAgICAgJWlmaWRuICUyLCBmbm9yZAogICAg
ICAgICAgICAgUlVOX0FWWF9JTlNUUiAlNiwgJTcsICU4LCAlOSwgJTEwLCAlMQpAQCAtMTMwNyw3
NyArMTQ3MiwxMTIgQEAgSU5JVF9YTU0KICAgICAlZW5kbWFjcm8KICVlbmRtYWNybwogCi07IElu
c3RydWN0aW9ucyB3aXRoIGJvdGggVkVYIGFuZCBub24tVkVYIGVuY29kaW5ncworOyBJbnN0cnVj
dGlvbnMgd2l0aCBib3RoIFZFWC9FVkVYIGFuZCBsZWdhY3kgZW5jb2RpbmdzCiA7IE5vbi1kZXN0
cnVjdGl2ZSBpbnN0cnVjdGlvbnMgYXJlIHdyaXR0ZW4gd2l0aG91dCBwYXJhbWV0ZXJzCiBBVlhf
SU5TVFIgYWRkcGQsIHNzZTIsIDEsIDAsIDEKIEFWWF9JTlNUUiBhZGRwcywgc3NlLCAxLCAwLCAx
Ci1BVlhfSU5TVFIgYWRkc2QsIHNzZTIsIDEsIDAsIDEKLUFWWF9JTlNUUiBhZGRzcywgc3NlLCAx
LCAwLCAxCitBVlhfSU5TVFIgYWRkc2QsIHNzZTIsIDEsIDAsIDAKK0FWWF9JTlNUUiBhZGRzcywg
c3NlLCAxLCAwLCAwCiBBVlhfSU5TVFIgYWRkc3VicGQsIHNzZTMsIDEsIDAsIDAKIEFWWF9JTlNU
UiBhZGRzdWJwcywgc3NlMywgMSwgMCwgMAotQVZYX0lOU1RSIGFlc2RlYywgZm5vcmQsIDAsIDAs
IDAKLUFWWF9JTlNUUiBhZXNkZWNsYXN0LCBmbm9yZCwgMCwgMCwgMAotQVZYX0lOU1RSIGFlc2Vu
YywgZm5vcmQsIDAsIDAsIDAKLUFWWF9JTlNUUiBhZXNlbmNsYXN0LCBmbm9yZCwgMCwgMCwgMAot
QVZYX0lOU1RSIGFlc2ltYwotQVZYX0lOU1RSIGFlc2tleWdlbmFzc2lzdAorQVZYX0lOU1RSIGFl
c2RlYywgYWVzbmksIDAsIDAsIDAKK0FWWF9JTlNUUiBhZXNkZWNsYXN0LCBhZXNuaSwgMCwgMCwg
MAorQVZYX0lOU1RSIGFlc2VuYywgYWVzbmksIDAsIDAsIDAKK0FWWF9JTlNUUiBhZXNlbmNsYXN0
LCBhZXNuaSwgMCwgMCwgMAorQVZYX0lOU1RSIGFlc2ltYywgYWVzbmkKK0FWWF9JTlNUUiBhZXNr
ZXlnZW5hc3Npc3QsIGFlc25pCiBBVlhfSU5TVFIgYW5kbnBkLCBzc2UyLCAxLCAwLCAwCiBBVlhf
SU5TVFIgYW5kbnBzLCBzc2UsIDEsIDAsIDAKIEFWWF9JTlNUUiBhbmRwZCwgc3NlMiwgMSwgMCwg
MQogQVZYX0lOU1RSIGFuZHBzLCBzc2UsIDEsIDAsIDEKLUFWWF9JTlNUUiBibGVuZHBkLCBzc2U0
LCAxLCAwLCAwCi1BVlhfSU5TVFIgYmxlbmRwcywgc3NlNCwgMSwgMCwgMAotQVZYX0lOU1RSIGJs
ZW5kdnBkLCBzc2U0LCAxLCAwLCAwCi1BVlhfSU5TVFIgYmxlbmR2cHMsIHNzZTQsIDEsIDAsIDAK
K0FWWF9JTlNUUiBibGVuZHBkLCBzc2U0LCAxLCAxLCAwCitBVlhfSU5TVFIgYmxlbmRwcywgc3Nl
NCwgMSwgMSwgMAorQVZYX0lOU1RSIGJsZW5kdnBkLCBzc2U0IDsgY2FuJ3QgYmUgZW11bGF0ZWQK
K0FWWF9JTlNUUiBibGVuZHZwcywgc3NlNCA7IGNhbid0IGJlIGVtdWxhdGVkCitBVlhfSU5TVFIg
Y21wZXFwZCwgc3NlMiwgMSwgMCwgMQorQVZYX0lOU1RSIGNtcGVxcHMsIHNzZSwgMSwgMCwgMQor
QVZYX0lOU1RSIGNtcGVxc2QsIHNzZTIsIDEsIDAsIDAKK0FWWF9JTlNUUiBjbXBlcXNzLCBzc2Us
IDEsIDAsIDAKK0FWWF9JTlNUUiBjbXBsZXBkLCBzc2UyLCAxLCAwLCAwCitBVlhfSU5TVFIgY21w
bGVwcywgc3NlLCAxLCAwLCAwCitBVlhfSU5TVFIgY21wbGVzZCwgc3NlMiwgMSwgMCwgMAorQVZY
X0lOU1RSIGNtcGxlc3MsIHNzZSwgMSwgMCwgMAorQVZYX0lOU1RSIGNtcGx0cGQsIHNzZTIsIDEs
IDAsIDAKK0FWWF9JTlNUUiBjbXBsdHBzLCBzc2UsIDEsIDAsIDAKK0FWWF9JTlNUUiBjbXBsdHNk
LCBzc2UyLCAxLCAwLCAwCitBVlhfSU5TVFIgY21wbHRzcywgc3NlLCAxLCAwLCAwCitBVlhfSU5T
VFIgY21wbmVxcGQsIHNzZTIsIDEsIDAsIDEKK0FWWF9JTlNUUiBjbXBuZXFwcywgc3NlLCAxLCAw
LCAxCitBVlhfSU5TVFIgY21wbmVxc2QsIHNzZTIsIDEsIDAsIDAKK0FWWF9JTlNUUiBjbXBuZXFz
cywgc3NlLCAxLCAwLCAwCitBVlhfSU5TVFIgY21wbmxlcGQsIHNzZTIsIDEsIDAsIDAKK0FWWF9J
TlNUUiBjbXBubGVwcywgc3NlLCAxLCAwLCAwCitBVlhfSU5TVFIgY21wbmxlc2QsIHNzZTIsIDEs
IDAsIDAKK0FWWF9JTlNUUiBjbXBubGVzcywgc3NlLCAxLCAwLCAwCitBVlhfSU5TVFIgY21wbmx0
cGQsIHNzZTIsIDEsIDAsIDAKK0FWWF9JTlNUUiBjbXBubHRwcywgc3NlLCAxLCAwLCAwCitBVlhf
SU5TVFIgY21wbmx0c2QsIHNzZTIsIDEsIDAsIDAKK0FWWF9JTlNUUiBjbXBubHRzcywgc3NlLCAx
LCAwLCAwCitBVlhfSU5TVFIgY21wb3JkcGQsIHNzZTIgMSwgMCwgMQorQVZYX0lOU1RSIGNtcG9y
ZHBzLCBzc2UgMSwgMCwgMQorQVZYX0lOU1RSIGNtcG9yZHNkLCBzc2UyIDEsIDAsIDAKK0FWWF9J
TlNUUiBjbXBvcmRzcywgc3NlIDEsIDAsIDAKIEFWWF9JTlNUUiBjbXBwZCwgc3NlMiwgMSwgMSwg
MAogQVZYX0lOU1RSIGNtcHBzLCBzc2UsIDEsIDEsIDAKIEFWWF9JTlNUUiBjbXBzZCwgc3NlMiwg
MSwgMSwgMAogQVZYX0lOU1RSIGNtcHNzLCBzc2UsIDEsIDEsIDAKLUFWWF9JTlNUUiBjb21pc2Qs
IHNzZTIKLUFWWF9JTlNUUiBjb21pc3MsIHNzZQotQVZYX0lOU1RSIGN2dGRxMnBkLCBzc2UyCi1B
VlhfSU5TVFIgY3Z0ZHEycHMsIHNzZTIKLUFWWF9JTlNUUiBjdnRwZDJkcSwgc3NlMgotQVZYX0lO
U1RSIGN2dHBkMnBzLCBzc2UyCi1BVlhfSU5TVFIgY3Z0cHMyZHEsIHNzZTIKLUFWWF9JTlNUUiBj
dnRwczJwZCwgc3NlMgotQVZYX0lOU1RSIGN2dHNkMnNpLCBzc2UyCi1BVlhfSU5TVFIgY3Z0c2Qy
c3MsIHNzZTIKLUFWWF9JTlNUUiBjdnRzaTJzZCwgc3NlMgotQVZYX0lOU1RSIGN2dHNpMnNzLCBz
c2UKLUFWWF9JTlNUUiBjdnRzczJzZCwgc3NlMgotQVZYX0lOU1RSIGN2dHNzMnNpLCBzc2UKLUFW
WF9JTlNUUiBjdnR0cGQyZHEsIHNzZTIKLUFWWF9JTlNUUiBjdnR0cHMyZHEsIHNzZTIKLUFWWF9J
TlNUUiBjdnR0c2Qyc2ksIHNzZTIKLUFWWF9JTlNUUiBjdnR0c3Myc2ksIHNzZQorQVZYX0lOU1RS
IGNtcHVub3JkcGQsIHNzZTIsIDEsIDAsIDEKK0FWWF9JTlNUUiBjbXB1bm9yZHBzLCBzc2UsIDEs
IDAsIDEKK0FWWF9JTlNUUiBjbXB1bm9yZHNkLCBzc2UyLCAxLCAwLCAwCitBVlhfSU5TVFIgY21w
dW5vcmRzcywgc3NlLCAxLCAwLCAwCitBVlhfSU5TVFIgY29taXNkLCBzc2UyLCAxCitBVlhfSU5T
VFIgY29taXNzLCBzc2UsIDEKK0FWWF9JTlNUUiBjdnRkcTJwZCwgc3NlMiwgMQorQVZYX0lOU1RS
IGN2dGRxMnBzLCBzc2UyLCAxCitBVlhfSU5TVFIgY3Z0cGQyZHEsIHNzZTIsIDEKK0FWWF9JTlNU
UiBjdnRwZDJwcywgc3NlMiwgMQorQVZYX0lOU1RSIGN2dHBzMmRxLCBzc2UyLCAxCitBVlhfSU5T
VFIgY3Z0cHMycGQsIHNzZTIsIDEKK0FWWF9JTlNUUiBjdnRzZDJzaSwgc3NlMiwgMQorQVZYX0lO
U1RSIGN2dHNkMnNzLCBzc2UyLCAxLCAwLCAwCitBVlhfSU5TVFIgY3Z0c2kyc2QsIHNzZTIsIDEs
IDAsIDAKK0FWWF9JTlNUUiBjdnRzaTJzcywgc3NlLCAxLCAwLCAwCitBVlhfSU5TVFIgY3Z0c3My
c2QsIHNzZTIsIDEsIDAsIDAKK0FWWF9JTlNUUiBjdnRzczJzaSwgc3NlLCAxCitBVlhfSU5TVFIg
Y3Z0dHBkMmRxLCBzc2UyLCAxCitBVlhfSU5TVFIgY3Z0dHBzMmRxLCBzc2UyLCAxCitBVlhfSU5T
VFIgY3Z0dHNkMnNpLCBzc2UyLCAxCitBVlhfSU5TVFIgY3Z0dHNzMnNpLCBzc2UsIDEKIEFWWF9J
TlNUUiBkaXZwZCwgc3NlMiwgMSwgMCwgMAogQVZYX0lOU1RSIGRpdnBzLCBzc2UsIDEsIDAsIDAK
IEFWWF9JTlNUUiBkaXZzZCwgc3NlMiwgMSwgMCwgMAogQVZYX0lOU1RSIGRpdnNzLCBzc2UsIDEs
IDAsIDAKIEFWWF9JTlNUUiBkcHBkLCBzc2U0LCAxLCAxLCAwCiBBVlhfSU5TVFIgZHBwcywgc3Nl
NCwgMSwgMSwgMAotQVZYX0lOU1RSIGV4dHJhY3Rwcywgc3NlNAorQVZYX0lOU1RSIGV4dHJhY3Rw
cywgc3NlNCwgMQorQVZYX0lOU1RSIGdmMnA4YWZmaW5laW52cWIsIGdmbmksIDAsIDEsIDAKK0FW
WF9JTlNUUiBnZjJwOGFmZmluZXFiLCBnZm5pLCAwLCAxLCAwCitBVlhfSU5TVFIgZ2YycDhtdWxi
LCBnZm5pLCAwLCAwLCAwCiBBVlhfSU5TVFIgaGFkZHBkLCBzc2UzLCAxLCAwLCAwCiBBVlhfSU5T
VFIgaGFkZHBzLCBzc2UzLCAxLCAwLCAwCiBBVlhfSU5TVFIgaHN1YnBkLCBzc2UzLCAxLCAwLCAw
CiBBVlhfSU5TVFIgaHN1YnBzLCBzc2UzLCAxLCAwLCAwCiBBVlhfSU5TVFIgaW5zZXJ0cHMsIHNz
ZTQsIDEsIDEsIDAKIEFWWF9JTlNUUiBsZGRxdSwgc3NlMwotQVZYX0lOU1RSIGxkbXhjc3IsIHNz
ZQorQVZYX0lOU1RSIGxkbXhjc3IsIHNzZSwgMQogQVZYX0lOU1RSIG1hc2ttb3ZkcXUsIHNzZTIK
IEFWWF9JTlNUUiBtYXhwZCwgc3NlMiwgMSwgMCwgMQogQVZYX0lOU1RSIG1heHBzLCBzc2UsIDEs
IDAsIDEKLUFWWF9JTlNUUiBtYXhzZCwgc3NlMiwgMSwgMCwgMQotQVZYX0lOU1RSIG1heHNzLCBz
c2UsIDEsIDAsIDEKK0FWWF9JTlNUUiBtYXhzZCwgc3NlMiwgMSwgMCwgMAorQVZYX0lOU1RSIG1h
eHNzLCBzc2UsIDEsIDAsIDAKIEFWWF9JTlNUUiBtaW5wZCwgc3NlMiwgMSwgMCwgMQogQVZYX0lO
U1RSIG1pbnBzLCBzc2UsIDEsIDAsIDEKLUFWWF9JTlNUUiBtaW5zZCwgc3NlMiwgMSwgMCwgMQot
QVZYX0lOU1RSIG1pbnNzLCBzc2UsIDEsIDAsIDEKLUFWWF9JTlNUUiBtb3ZhcGQsIHNzZTIKLUFW
WF9JTlNUUiBtb3ZhcHMsIHNzZQorQVZYX0lOU1RSIG1pbnNkLCBzc2UyLCAxLCAwLCAwCitBVlhf
SU5TVFIgbWluc3MsIHNzZSwgMSwgMCwgMAorQVZYX0lOU1RSIG1vdmFwZCwgc3NlMiwgMQorQVZY
X0lOU1RSIG1vdmFwcywgc3NlLCAxCiBBVlhfSU5TVFIgbW92ZCwgbW14Ci1BVlhfSU5TVFIgbW92
ZGR1cCwgc3NlMworQVZYX0lOU1RSIG1vdmRkdXAsIHNzZTMsIDEKIEFWWF9JTlNUUiBtb3ZkcWEs
IHNzZTIKIEFWWF9JTlNUUiBtb3ZkcXUsIHNzZTIKIEFWWF9JTlNUUiBtb3ZobHBzLCBzc2UsIDEs
IDAsIDAKQEAgLTEzODYsMjQgKzE1ODYsMjQgQEAgQVZYX0lOU1RSIG1vdmhwcywgc3NlLCAxLCAw
LCAwCiBBVlhfSU5TVFIgbW92bGhwcywgc3NlLCAxLCAwLCAwCiBBVlhfSU5TVFIgbW92bHBkLCBz
c2UyLCAxLCAwLCAwCiBBVlhfSU5TVFIgbW92bHBzLCBzc2UsIDEsIDAsIDAKLUFWWF9JTlNUUiBt
b3Ztc2twZCwgc3NlMgotQVZYX0lOU1RSIG1vdm1za3BzLCBzc2UKK0FWWF9JTlNUUiBtb3Ztc2tw
ZCwgc3NlMiwgMQorQVZYX0lOU1RSIG1vdm1za3BzLCBzc2UsIDEKIEFWWF9JTlNUUiBtb3ZudGRx
LCBzc2UyCiBBVlhfSU5TVFIgbW92bnRkcWEsIHNzZTQKLUFWWF9JTlNUUiBtb3ZudHBkLCBzc2Uy
Ci1BVlhfSU5TVFIgbW92bnRwcywgc3NlCitBVlhfSU5TVFIgbW92bnRwZCwgc3NlMiwgMQorQVZY
X0lOU1RSIG1vdm50cHMsIHNzZSwgMQogQVZYX0lOU1RSIG1vdnEsIG1teAogQVZYX0lOU1RSIG1v
dnNkLCBzc2UyLCAxLCAwLCAwCi1BVlhfSU5TVFIgbW92c2hkdXAsIHNzZTMKLUFWWF9JTlNUUiBt
b3ZzbGR1cCwgc3NlMworQVZYX0lOU1RSIG1vdnNoZHVwLCBzc2UzLCAxCitBVlhfSU5TVFIgbW92
c2xkdXAsIHNzZTMsIDEKIEFWWF9JTlNUUiBtb3Zzcywgc3NlLCAxLCAwLCAwCi1BVlhfSU5TVFIg
bW92dXBkLCBzc2UyCi1BVlhfSU5TVFIgbW92dXBzLCBzc2UKLUFWWF9JTlNUUiBtcHNhZGJ3LCBz
c2U0CitBVlhfSU5TVFIgbW92dXBkLCBzc2UyLCAxCitBVlhfSU5TVFIgbW92dXBzLCBzc2UsIDEK
K0FWWF9JTlNUUiBtcHNhZGJ3LCBzc2U0LCAwLCAxLCAwCiBBVlhfSU5TVFIgbXVscGQsIHNzZTIs
IDEsIDAsIDEKIEFWWF9JTlNUUiBtdWxwcywgc3NlLCAxLCAwLCAxCi1BVlhfSU5TVFIgbXVsc2Qs
IHNzZTIsIDEsIDAsIDEKLUFWWF9JTlNUUiBtdWxzcywgc3NlLCAxLCAwLCAxCitBVlhfSU5TVFIg
bXVsc2QsIHNzZTIsIDEsIDAsIDAKK0FWWF9JTlNUUiBtdWxzcywgc3NlLCAxLCAwLCAwCiBBVlhf
SU5TVFIgb3JwZCwgc3NlMiwgMSwgMCwgMQogQVZYX0lOU1RSIG9ycHMsIHNzZSwgMSwgMCwgMQog
QVZYX0lOU1RSIHBhYnNiLCBzc3NlMwpAQCAtMTQyMSwxNCArMTYyMSwxOCBAQCBBVlhfSU5TVFIg
cGFkZHNiLCBtbXgsIDAsIDAsIDEKIEFWWF9JTlNUUiBwYWRkc3csIG1teCwgMCwgMCwgMQogQVZY
X0lOU1RSIHBhZGR1c2IsIG1teCwgMCwgMCwgMQogQVZYX0lOU1RSIHBhZGR1c3csIG1teCwgMCwg
MCwgMQotQVZYX0lOU1RSIHBhbGlnbnIsIHNzc2UzCitBVlhfSU5TVFIgcGFsaWduciwgc3NzZTMs
IDAsIDEsIDAKIEFWWF9JTlNUUiBwYW5kLCBtbXgsIDAsIDAsIDEKIEFWWF9JTlNUUiBwYW5kbiwg
bW14LCAwLCAwLCAwCiBBVlhfSU5TVFIgcGF2Z2IsIG1teDIsIDAsIDAsIDEKIEFWWF9JTlNUUiBw
YXZndywgbW14MiwgMCwgMCwgMQotQVZYX0lOU1RSIHBibGVuZHZiLCBzc2U0LCAwLCAwLCAwCi1B
VlhfSU5TVFIgcGJsZW5kdywgc3NlNAotQVZYX0lOU1RSIHBjbG11bHFkcQorQVZYX0lOU1RSIHBi
bGVuZHZiLCBzc2U0IDsgY2FuJ3QgYmUgZW11bGF0ZWQKK0FWWF9JTlNUUiBwYmxlbmR3LCBzc2U0
LCAwLCAxLCAwCitBVlhfSU5TVFIgcGNsbXVscWRxLCBmbm9yZCwgMCwgMSwgMAorQVZYX0lOU1RS
IHBjbG11bGhxaHFkcSwgZm5vcmQsIDAsIDAsIDAKK0FWWF9JTlNUUiBwY2xtdWxocWxxZHEsIGZu
b3JkLCAwLCAwLCAwCitBVlhfSU5TVFIgcGNsbXVsbHFocWRxLCBmbm9yZCwgMCwgMCwgMAorQVZY
X0lOU1RSIHBjbG11bGxxbHFkcSwgZm5vcmQsIDAsIDAsIDAKIEFWWF9JTlNUUiBwY21wZXN0cmks
IHNzZTQyCiBBVlhfSU5TVFIgcGNtcGVzdHJtLCBzc2U0MgogQVZYX0lOU1RSIHBjbXBpc3RyaSwg
c3NlNDIKQEAgLTE0NTIsMTAgKzE2NTYsMTAgQEAgQVZYX0lOU1RSIHBobWlucG9zdXcsIHNzZTQK
IEFWWF9JTlNUUiBwaHN1YncsIHNzc2UzLCAwLCAwLCAwCiBBVlhfSU5TVFIgcGhzdWJkLCBzc3Nl
MywgMCwgMCwgMAogQVZYX0lOU1RSIHBoc3Vic3csIHNzc2UzLCAwLCAwLCAwCi1BVlhfSU5TVFIg
cGluc3JiLCBzc2U0Ci1BVlhfSU5TVFIgcGluc3JkLCBzc2U0Ci1BVlhfSU5TVFIgcGluc3JxLCBz
c2U0Ci1BVlhfSU5TVFIgcGluc3J3LCBtbXgyCitBVlhfSU5TVFIgcGluc3JiLCBzc2U0LCAwLCAx
LCAwCitBVlhfSU5TVFIgcGluc3JkLCBzc2U0LCAwLCAxLCAwCitBVlhfSU5TVFIgcGluc3JxLCBz
c2U0LCAwLCAxLCAwCitBVlhfSU5TVFIgcGluc3J3LCBtbXgyLCAwLCAxLCAwCiBBVlhfSU5TVFIg
cG1hZGR3ZCwgbW14LCAwLCAwLCAxCiBBVlhfSU5TVFIgcG1hZGR1YnN3LCBzc3NlMywgMCwgMCwg
MAogQVZYX0lOU1RSIHBtYXhzYiwgc3NlNCwgMCwgMCwgMQpAQCAtMTUyNywyNyArMTczMSwyNyBA
QCBBVlhfSU5TVFIgcHVucGNrbHdkLCBtbXgsIDAsIDAsIDAKIEFWWF9JTlNUUiBwdW5wY2tsZHEs
IG1teCwgMCwgMCwgMAogQVZYX0lOU1RSIHB1bnBja2xxZHEsIHNzZTIsIDAsIDAsIDAKIEFWWF9J
TlNUUiBweG9yLCBtbXgsIDAsIDAsIDEKLUFWWF9JTlNUUiByY3Bwcywgc3NlLCAxLCAwLCAwCitB
VlhfSU5TVFIgcmNwcHMsIHNzZSwgMQogQVZYX0lOU1RSIHJjcHNzLCBzc2UsIDEsIDAsIDAKLUFW
WF9JTlNUUiByb3VuZHBkLCBzc2U0Ci1BVlhfSU5TVFIgcm91bmRwcywgc3NlNAotQVZYX0lOU1RS
IHJvdW5kc2QsIHNzZTQKLUFWWF9JTlNUUiByb3VuZHNzLCBzc2U0Ci1BVlhfSU5TVFIgcnNxcnRw
cywgc3NlLCAxLCAwLCAwCitBVlhfSU5TVFIgcm91bmRwZCwgc3NlNCwgMQorQVZYX0lOU1RSIHJv
dW5kcHMsIHNzZTQsIDEKK0FWWF9JTlNUUiByb3VuZHNkLCBzc2U0LCAxLCAxLCAwCitBVlhfSU5T
VFIgcm91bmRzcywgc3NlNCwgMSwgMSwgMAorQVZYX0lOU1RSIHJzcXJ0cHMsIHNzZSwgMQogQVZY
X0lOU1RSIHJzcXJ0c3MsIHNzZSwgMSwgMCwgMAogQVZYX0lOU1RSIHNodWZwZCwgc3NlMiwgMSwg
MSwgMAogQVZYX0lOU1RSIHNodWZwcywgc3NlLCAxLCAxLCAwCi1BVlhfSU5TVFIgc3FydHBkLCBz
c2UyLCAxLCAwLCAwCi1BVlhfSU5TVFIgc3FydHBzLCBzc2UsIDEsIDAsIDAKK0FWWF9JTlNUUiBz
cXJ0cGQsIHNzZTIsIDEKK0FWWF9JTlNUUiBzcXJ0cHMsIHNzZSwgMQogQVZYX0lOU1RSIHNxcnRz
ZCwgc3NlMiwgMSwgMCwgMAogQVZYX0lOU1RSIHNxcnRzcywgc3NlLCAxLCAwLCAwCi1BVlhfSU5T
VFIgc3RteGNzciwgc3NlCitBVlhfSU5TVFIgc3RteGNzciwgc3NlLCAxCiBBVlhfSU5TVFIgc3Vi
cGQsIHNzZTIsIDEsIDAsIDAKIEFWWF9JTlNUUiBzdWJwcywgc3NlLCAxLCAwLCAwCiBBVlhfSU5T
VFIgc3Vic2QsIHNzZTIsIDEsIDAsIDAKIEFWWF9JTlNUUiBzdWJzcywgc3NlLCAxLCAwLCAwCi1B
VlhfSU5TVFIgdWNvbWlzZCwgc3NlMgotQVZYX0lOU1RSIHVjb21pc3MsIHNzZQorQVZYX0lOU1RS
IHVjb21pc2QsIHNzZTIsIDEKK0FWWF9JTlNUUiB1Y29taXNzLCBzc2UsIDEKIEFWWF9JTlNUUiB1
bnBja2hwZCwgc3NlMiwgMSwgMCwgMAogQVZYX0lOU1RSIHVucGNraHBzLCBzc2UsIDEsIDAsIDAK
IEFWWF9JTlNUUiB1bnBja2xwZCwgc3NlMiwgMSwgMCwgMApAQCAtMTU2MCw2ICsxNzY0LDM4IEBA
IEFWWF9JTlNUUiBwZmFkZCwgM2Rub3csIDEsIDAsIDEKIEFWWF9JTlNUUiBwZnN1YiwgM2Rub3cs
IDEsIDAsIDAKIEFWWF9JTlNUUiBwZm11bCwgM2Rub3csIDEsIDAsIDEKIAorOyUxID09IGluc3Ry
dWN0aW9uCis7JTIgPT0gbWluaW1hbCBpbnN0cnVjdGlvbiBzZXQKKyVtYWNybyBHUFJfSU5TVFIg
MgorICAgICVtYWNybyAlMSAyLTUgZm5vcmQsICUxLCAlMgorICAgICAgICAlaWZkZWYgY3B1bmFt
ZQorICAgICAgICAgICAgJWlmIG5vdGNwdWZsYWcoJTUpCisgICAgICAgICAgICAgICAgJWVycm9y
IHVzZSBvZiBgYCU0JycgJTUgaW5zdHJ1Y3Rpb24gaW4gY3B1bmFtZSBmdW5jdGlvbjogY3VycmVu
dF9mdW5jdGlvbgorICAgICAgICAgICAgJWVuZGlmCisgICAgICAgICVlbmRpZgorICAgICAgICAl
aWZpZG4gJTMsIGZub3JkCisgICAgICAgICAgICAlNCAlMSwgJTIKKyAgICAgICAgJWVsc2UKKyAg
ICAgICAgICAgICU0ICUxLCAlMiwgJTMKKyAgICAgICAgJWVuZGlmCisgICAgJWVuZG1hY3JvCisl
ZW5kbWFjcm8KKworR1BSX0lOU1RSIGFuZG4sIGJtaTEKK0dQUl9JTlNUUiBiZXh0ciwgYm1pMQor
R1BSX0lOU1RSIGJsc2ksIGJtaTEKK0dQUl9JTlNUUiBibHNyLCBibWkxCitHUFJfSU5TVFIgYmxz
bXNrLCBibWkxCitHUFJfSU5TVFIgYnpoaSwgYm1pMgorR1BSX0lOU1RSIG11bHgsIGJtaTIKK0dQ
Ul9JTlNUUiBwZGVwLCBibWkyCitHUFJfSU5TVFIgcGV4dCwgYm1pMgorR1BSX0lOU1RSIHBvcGNu
dCwgc3NlNDIKK0dQUl9JTlNUUiByb3J4LCBibWkyCitHUFJfSU5TVFIgc2FyeCwgYm1pMgorR1BS
X0lOU1RSIHNobHgsIGJtaTIKK0dQUl9JTlNUUiBzaHJ4LCBibWkyCisKIDsgYmFzZS00IGNvbnN0
YW50cyBmb3Igc2h1ZmZsZXMKICVhc3NpZ24gaSAwCiAlcmVwIDI1NgpAQCAtMTYxMCw3ICsxODQ2
LDcgQEAgRk1BX0lOU1RSIHBtYWRjc3dkLCBwbWFkZHdkLCBwYWRkZAogICAgICAgICAgICAgICAg
IHYlNSU2ICUxLCAlMiwgJTMsICU0CiAgICAgICAgICAgICAlZWxpZmlkbiAlMSwgJTIKICAgICAg
ICAgICAgICAgICA7IElmICUzIG9yICU0IGlzIGEgbWVtb3J5IG9wZXJhbmQgaXQgbmVlZHMgdG8g
YmUgZW5jb2RlZCBhcyB0aGUgbGFzdCBvcGVyYW5kLgotICAgICAgICAgICAgICAgICVpZmlkICUz
CisgICAgICAgICAgICAgICAgJWlmbnVtIHNpemVvZiUzCiAgICAgICAgICAgICAgICAgICAgIHYl
ezV9MjEzJTYgJTIsICUzLCAlNAogICAgICAgICAgICAgICAgICVlbHNlCiAgICAgICAgICAgICAg
ICAgICAgIHYlezV9MTMyJTYgJTIsICU0LCAlMwpAQCAtMTYzNSwxNSArMTg3MSw1MyBAQCBGTUE0
X0lOU1RSIGZtc3ViYWRkLCBwZCwgcHMKIEZNQTRfSU5TVFIgZm5tYWRkLCAgIHBkLCBwcywgc2Qs
IHNzCiBGTUE0X0lOU1RSIGZubXN1YiwgICBwZCwgcHMsIHNkLCBzcwogCi07IHdvcmthcm91bmQ6
IHZwYnJvYWRjYXN0cSBpcyBicm9rZW4gaW4geDg2XzMyIGR1ZSB0byBhIHlhc20gYnVnIChmaXhl
ZCBpbiAxLjMuMCkKLSVpZmRlZiBfX1lBU01fVkVSX18KLSAgICAlaWYgX19ZQVNNX1ZFUlNJT05f
SURfXyA8IDB4MDEwMzAwMDAgJiYgVlBYX0FSQ0hfWDg2XzY0ID09IDAKLSAgICAgICAgJW1hY3Jv
IHZwYnJvYWRjYXN0cSAyCi0gICAgICAgICAgICAlaWYgc2l6ZW9mJTEgPT0gMTYKLSAgICAgICAg
ICAgICAgICBtb3ZkZHVwICUxLCAlMgotICAgICAgICAgICAgJWVsc2UKLSAgICAgICAgICAgICAg
ICB2YnJvYWRjYXN0c2QgJTEsICUyCis7IE1hY3JvcyBmb3IgY29udmVydGluZyBWRVggaW5zdHJ1
Y3Rpb25zIHRvIGVxdWl2YWxlbnQgRVZFWCBvbmVzLgorJW1hY3JvIEVWRVhfSU5TVFIgMi0zIDAg
OyB2ZXgsIGV2ZXgsIHByZWZlcl9ldmV4CisgICAgJW1hY3JvICUxIDItNyBmbm9yZCwgZm5vcmQs
ICUxLCAlMiwgJTMKKyAgICAgICAgJWlmaWRuICUzLCBmbm9yZAorICAgICAgICAgICAgJWRlZmlu
ZSAlJWFyZ3MgJTEsICUyCisgICAgICAgICVlbGlmaWRuICU0LCBmbm9yZAorICAgICAgICAgICAg
JWRlZmluZSAlJWFyZ3MgJTEsICUyLCAlMworICAgICAgICAlZWxzZQorICAgICAgICAgICAgJWRl
ZmluZSAlJWFyZ3MgJTEsICUyLCAlMywgJTQKKyAgICAgICAgJWVuZGlmCisgICAgICAgICVhc3Np
Z24gJSVldmV4X3JlcXVpcmVkIGNwdWZsYWcoYXZ4NTEyKSAmICU3CisgICAgICAgICVpZm51bSBy
ZWdudW1vZiUxCisgICAgICAgICAgICAlaWYgcmVnbnVtb2YlMSA+PSAxNiB8fCBzaXplb2YlMSA+
IDMyCisgICAgICAgICAgICAgICAgJWFzc2lnbiAlJWV2ZXhfcmVxdWlyZWQgMQogICAgICAgICAg
ICAgJWVuZGlmCi0gICAgICAgICVlbmRtYWNybwotICAgICVlbmRpZgotJWVuZGlmCisgICAgICAg
ICVlbmRpZgorICAgICAgICAlaWZudW0gcmVnbnVtb2YlMgorICAgICAgICAgICAgJWlmIHJlZ251
bW9mJTIgPj0gMTYgfHwgc2l6ZW9mJTIgPiAzMgorICAgICAgICAgICAgICAgICVhc3NpZ24gJSVl
dmV4X3JlcXVpcmVkIDEKKyAgICAgICAgICAgICVlbmRpZgorICAgICAgICAlZW5kaWYKKyAgICAg
ICAgJWlmbnVtIHJlZ251bW9mJTMKKyAgICAgICAgICAgICVpZiByZWdudW1vZiUzID49IDE2IHx8
IHNpemVvZiUzID4gMzIKKyAgICAgICAgICAgICAgICAlYXNzaWduICUlZXZleF9yZXF1aXJlZCAx
CisgICAgICAgICAgICAlZW5kaWYKKyAgICAgICAgJWVuZGlmCisgICAgICAgICVpZiAlJWV2ZXhf
cmVxdWlyZWQKKyAgICAgICAgICAgICU2ICUlYXJncworICAgICAgICAlZWxzZQorICAgICAgICAg
ICAgJTUgJSVhcmdzIDsgUHJlZmVyIFZFWCBvdmVyIEVWRVggZHVlIHRvIHNob3J0ZXIgaW5zdHJ1
Y3Rpb24gbGVuZ3RoCisgICAgICAgICVlbmRpZgorICAgICVlbmRtYWNybworJWVuZG1hY3JvCisK
K0VWRVhfSU5TVFIgdmJyb2FkY2FzdGYxMjgsIHZicm9hZGNhc3RmMzJ4NAorRVZFWF9JTlNUUiB2
YnJvYWRjYXN0aTEyOCwgdmJyb2FkY2FzdGkzMng0CitFVkVYX0lOU1RSIHZleHRyYWN0ZjEyOCwg
ICB2ZXh0cmFjdGYzMng0CitFVkVYX0lOU1RSIHZleHRyYWN0aTEyOCwgICB2ZXh0cmFjdGkzMng0
CitFVkVYX0lOU1RSIHZpbnNlcnRmMTI4LCAgICB2aW5zZXJ0ZjMyeDQKK0VWRVhfSU5TVFIgdmlu
c2VydGkxMjgsICAgIHZpbnNlcnRpMzJ4NAorRVZFWF9JTlNUUiB2bW92ZHFhLCAgICAgICAgdm1v
dmRxYTMyCitFVkVYX0lOU1RSIHZtb3ZkcXUsICAgICAgICB2bW92ZHF1MzIKK0VWRVhfSU5TVFIg
dnBhbmQsICAgICAgICAgIHZwYW5kZAorRVZFWF9JTlNUUiB2cGFuZG4sICAgICAgICAgdnBhbmRu
ZAorRVZFWF9JTlNUUiB2cG9yLCAgICAgICAgICAgdnBvcmQKK0VWRVhfSU5TVFIgdnB4b3IsICAg
ICAgICAgIHZweG9yZAorRVZFWF9JTlNUUiB2cmNwcHMsICAgICAgICAgdnJjcDE0cHMsICAgMSA7
IEVWRVggdmVyc2lvbnMgaGF2ZSBoaWdoZXIgcHJlY2lzaW9uCitFVkVYX0lOU1RSIHZyY3Bzcywg
ICAgICAgICB2cmNwMTRzcywgICAxCitFVkVYX0lOU1RSIHZyc3FydHBzLCAgICAgICB2cnNxcnQx
NHBzLCAxCitFVkVYX0lOU1RSIHZyc3FydHNzLCAgICAgICB2cnNxcnQxNHNzLCAxCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3Rvb2xzLzNELVJlY29uc3RydWN0aW9uL01vdGlvbkVTVC9BbmFuZGFu
LnB5IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVjdGlvbi9Nb3Rpb25FU1QvQW5hbmRh
bi5weQppbmRleCBiOTZjZDlmZDA0MDJjNzhkODQwNmZiNGY1ZmEzNjY4MDllZWU1NmU1Li41ZmY5
ZTk4OTMyMTJkMTI2ZDg1OGNiNDIxZmNiYjBiN2VhMGNlNDdhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rvb2xzLzNELVJlY29uc3RydWN0aW9uL01vdGlvbkVTVC9BbmFuZGFuLnB5CisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdG9vbHMvM0QtUmVjb25zdHJ1Y3Rpb24vTW90aW9uRVNUL0FuYW5kYW4ucHkKQEAg
LTEsNCArMSwxMiBAQAotIyEvdXNyL2Jpbi9lbnYgcHl0aG9uCisjIyAgQ29weXJpZ2h0IChjKSAy
MDIwIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyMjCisj
IyAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGlj
ZW5zZQorIyMgIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJv
b3Qgb2YgdGhlIHNvdXJjZQorIyMgIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHBy
b3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyMjICBpbiB0aGUgZmlsZSBQQVRFTlRT
LiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisjIyAgYmUgZm91bmQgaW4g
dGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisjIworCiAj
IGNvZGluZzogdXRmLTgKIGltcG9ydCBudW1weSBhcyBucAogaW1wb3J0IG51bXB5LmxpbmFsZyBh
cyBMQQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVjdGlvbi9Nb3Rp
b25FU1QvRXhoYXVzdC5weSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvM0QtUmVjb25zdHJ1Y3Rpb24vTW90
aW9uRVNUL0V4aGF1c3QucHkKaW5kZXggOTdjZmM0MWRlNDBiZTlkM2ZhNDJmZGZkNjMwZTEyMjAy
NmYyMjEyNC4uMmQ2YTRkODExNDk0MDJlYTJkODYxNWZhNDUyMTkwYTFjYTkzMWIwYSAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVjdGlvbi9Nb3Rpb25FU1QvRXhoYXVz
dC5weQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rvb2xzLzNELVJlY29uc3RydWN0aW9uL01vdGlvbkVTVC9F
eGhhdXN0LnB5CkBAIC0xLDQgKzEsMTIgQEAKLSMhL3Vzci9iaW4vZW52IHB5dGhvbgorIyMgIENv
cHlyaWdodCAoYykgMjAyMCBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMuIEFsbCBSaWdodHMgUmVz
ZXJ2ZWQuCisjIworIyMgIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEg
QlNELXN0eWxlIGxpY2Vuc2UKKyMjICB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBm
aWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UKKyMjICB0cmVlLiBBbiBhZGRpdGlvbmFsIGlu
dGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQgY2FuIGJlIGZvdW5kCisjIyAgaW4gdGhl
IGZpbGUgUEFURU5UUy4gIEFsbCBjb250cmlidXRpbmcgcHJvamVjdCBhdXRob3JzIG1heQorIyMg
IGJlIGZvdW5kIGluIHRoZSBBVVRIT1JTIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZSB0
cmVlLgorIyMKKwogIyBjb2Rpbmc6IHV0Zi04CiBpbXBvcnQgbnVtcHkgYXMgbnAKIGltcG9ydCBu
dW1weS5saW5hbGcgYXMgTEEKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvM0QtUmVjb25z
dHJ1Y3Rpb24vTW90aW9uRVNUL0dyb3VuZFRydXRoLnB5IGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8zRC1S
ZWNvbnN0cnVjdGlvbi9Nb3Rpb25FU1QvR3JvdW5kVHJ1dGgucHkKaW5kZXggMjBlYjVmMWViMmE1
NWYwOWQ4YzRiMjYwN2RiNGI2Y2Q3MWQ0NTg4Ny4uMTJiYzUzZmY3MzE3NDI5YTIxNjBmMGZkNDc1
YzgyODkwNTcxNzkyZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVj
dGlvbi9Nb3Rpb25FU1QvR3JvdW5kVHJ1dGgucHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8zRC1S
ZWNvbnN0cnVjdGlvbi9Nb3Rpb25FU1QvR3JvdW5kVHJ1dGgucHkKQEAgLTEsNCArMSwxMiBAQAot
IyEvIHVzciAvIGJpbiAvIGVudiBweXRob24KKyMjICBDb3B5cmlnaHQgKGMpIDIwMjAgVGhlIFdl
Yk0gcHJvamVjdCBhdXRob3JzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorIyMKKyMjICBVc2Ugb2Yg
dGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlCisjIyAg
dGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUg
c291cmNlCisjIyAgdHJlZS4gQW4gYWRkaXRpb25hbCBpbnRlbGxlY3R1YWwgcHJvcGVydHkgcmln
aHRzIGdyYW50IGNhbiBiZSBmb3VuZAorIyMgIGluIHRoZSBmaWxlIFBBVEVOVFMuICBBbGwgY29u
dHJpYnV0aW5nIHByb2plY3QgYXV0aG9ycyBtYXkKKyMjICBiZSBmb3VuZCBpbiB0aGUgQVVUSE9S
UyBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UgdHJlZS4KKyMjCisKICNjb2RpbmcgOiB1
dGYgLSA4CiBpbXBvcnQgbnVtcHkgYXMgbnAKIGltcG9ydCBudW1weS5saW5hbGcgYXMgTEEKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvM0QtUmVjb25zdHJ1Y3Rpb24vTW90aW9uRVNUL0hv
cm5TY2h1bmNrLnB5IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVjdGlvbi9Nb3Rpb25F
U1QvSG9yblNjaHVuY2sucHkKaW5kZXggMzhmY2FlMWU3MWJkZWU4Njg4ZTMxYmM0YjkxOTQ2ZmI4
ZWIwOTYwMi4uOTc2YmQ0YTE3ODM4MzQ5YzAxYmEyYTllM2U4NGY3OWY4YTJiYzA0MSAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVjdGlvbi9Nb3Rpb25FU1QvSG9yblNj
aHVuY2sucHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVjdGlvbi9Nb3Rpb25F
U1QvSG9yblNjaHVuY2sucHkKQEAgLTEsNCArMSwxMiBAQAotIyEvdXNyL2Jpbi9lbnYgcHl0aG9u
CisjIyAgQ29weXJpZ2h0IChjKSAyMDIwIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJp
Z2h0cyBSZXNlcnZlZC4KKyMjCisjIyAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJu
ZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZQorIyMgIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBM
SUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZQorIyMgIHRyZWUuIEFuIGFkZGl0
aW9uYWwgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyMj
ICBpbiB0aGUgZmlsZSBQQVRFTlRTLiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMg
bWF5CisjIyAgYmUgZm91bmQgaW4gdGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUg
c291cmNlIHRyZWUuCisjIworCiAjIGNvZGluZzogdXRmLTgKIGltcG9ydCBudW1weSBhcyBucAog
aW1wb3J0IG51bXB5LmxpbmFsZyBhcyBMQQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8z
RC1SZWNvbnN0cnVjdGlvbi9Nb3Rpb25FU1QvTW90aW9uRVNULnB5IGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29s
cy8zRC1SZWNvbnN0cnVjdGlvbi9Nb3Rpb25FU1QvTW90aW9uRVNULnB5CmluZGV4IGE5YTRhY2Vk
YzI0YzVjZTc4YTc5OGQ1NjAxNzFhMjdmOWRjZDJkOTAuLjA5NTk1MzBmYTA2OTZkOTg4OGI3ZjI4
YzQ2NDgxZmIxMjJjMzczZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvM0QtUmVjb25z
dHJ1Y3Rpb24vTW90aW9uRVNUL01vdGlvbkVTVC5weQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rvb2xzLzNE
LVJlY29uc3RydWN0aW9uL01vdGlvbkVTVC9Nb3Rpb25FU1QucHkKQEAgLTEsNCArMSwxMiBAQAot
IyEvIHVzciAvIGJpbiAvIGVudiBweXRob24KKyMjICBDb3B5cmlnaHQgKGMpIDIwMjAgVGhlIFdl
Yk0gcHJvamVjdCBhdXRob3JzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorIyMKKyMjICBVc2Ugb2Yg
dGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlCisjIyAg
dGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUg
c291cmNlCisjIyAgdHJlZS4gQW4gYWRkaXRpb25hbCBpbnRlbGxlY3R1YWwgcHJvcGVydHkgcmln
aHRzIGdyYW50IGNhbiBiZSBmb3VuZAorIyMgIGluIHRoZSBmaWxlIFBBVEVOVFMuICBBbGwgY29u
dHJpYnV0aW5nIHByb2plY3QgYXV0aG9ycyBtYXkKKyMjICBiZSBmb3VuZCBpbiB0aGUgQVVUSE9S
UyBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UgdHJlZS4KKyMjCisKICNjb2RpbmcgOiB1
dGYgLSA4CiBpbXBvcnQgbnVtcHkgYXMgbnAKIGltcG9ydCBudW1weS5saW5hbGcgYXMgTEEKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvM0QtUmVjb25zdHJ1Y3Rpb24vTW90aW9uRVNUL1Nl
YXJjaFNtb290aC5weSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvM0QtUmVjb25zdHJ1Y3Rpb24vTW90aW9u
RVNUL1NlYXJjaFNtb290aC5weQppbmRleCBlMGI3ZmI2Mzg1NDUwNjA4ODQ1YjBmMzIyYzkzZGU2
MmRhMTdhNDliLi4yZGM2NzcxZWU1MjVjNjRiYzEyNjJlMjk5YzhlNGY2OTJmYTgyY2M3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rvb2xzLzNELVJlY29uc3RydWN0aW9uL01vdGlvbkVTVC9TZWFy
Y2hTbW9vdGgucHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVjdGlvbi9Nb3Rp
b25FU1QvU2VhcmNoU21vb3RoLnB5CkBAIC0xLDQgKzEsMTIgQEAKLSMhL3Vzci9iaW4vZW52IHB5
dGhvbgorIyMgIENvcHlyaWdodCAoYykgMjAyMCBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMuIEFs
bCBSaWdodHMgUmVzZXJ2ZWQuCisjIworIyMgIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdv
dmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UKKyMjICB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0
aGUgTElDRU5TRSBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UKKyMjICB0cmVlLiBBbiBh
ZGRpdGlvbmFsIGludGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQgY2FuIGJlIGZvdW5k
CisjIyAgaW4gdGhlIGZpbGUgUEFURU5UUy4gIEFsbCBjb250cmlidXRpbmcgcHJvamVjdCBhdXRo
b3JzIG1heQorIyMgIGJlIGZvdW5kIGluIHRoZSBBVVRIT1JTIGZpbGUgaW4gdGhlIHJvb3Qgb2Yg
dGhlIHNvdXJjZSB0cmVlLgorIyMKKwogIyBjb2Rpbmc6IHV0Zi04CiBpbXBvcnQgbnVtcHkgYXMg
bnAKIGltcG9ydCBudW1weS5saW5hbGcgYXMgTEEKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9v
bHMvM0QtUmVjb25zdHJ1Y3Rpb24vTW90aW9uRVNUL1V0aWwucHkgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rvb2xz
LzNELVJlY29uc3RydWN0aW9uL01vdGlvbkVTVC9VdGlsLnB5CmluZGV4IGE1MjY1ZjQ0ZTBhZWNl
ODczZjdjYTkyY2Y4ZWU1MjJkYTc0OTc0N2UuLjU1MTg4MWNmZDdjNzE2ZDQ0NTk3ZmM0NjgxODY1
NDMyMTk2YTY3ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvM0QtUmVjb25zdHJ1Y3Rp
b24vTW90aW9uRVNUL1V0aWwucHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVj
dGlvbi9Nb3Rpb25FU1QvVXRpbC5weQpAQCAtMSw0ICsxLDEyIEBACi0jIS91c3IvYmluL2VudiBw
eXRob24KKyMjICBDb3B5cmlnaHQgKGMpIDIwMjAgVGhlIFdlYk0gcHJvamVjdCBhdXRob3JzLiBB
bGwgUmlnaHRzIFJlc2VydmVkLgorIyMKKyMjICBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBn
b3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlCisjIyAgdGhhdCBjYW4gYmUgZm91bmQgaW4g
dGhlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlCisjIyAgdHJlZS4gQW4g
YWRkaXRpb25hbCBpbnRlbGxlY3R1YWwgcHJvcGVydHkgcmlnaHRzIGdyYW50IGNhbiBiZSBmb3Vu
ZAorIyMgIGluIHRoZSBmaWxlIFBBVEVOVFMuICBBbGwgY29udHJpYnV0aW5nIHByb2plY3QgYXV0
aG9ycyBtYXkKKyMjICBiZSBmb3VuZCBpbiB0aGUgQVVUSE9SUyBmaWxlIGluIHRoZSByb290IG9m
IHRoZSBzb3VyY2UgdHJlZS4KKyMjCisKICMgY29kaW5nOiB1dGYtOAogaW1wb3J0IG51bXB5IGFz
IG5wCiBpbXBvcnQgbnVtcHkubGluYWxnIGFzIExBCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rv
b2xzLzNELVJlY29uc3RydWN0aW9uL2dlblk0TS9nZW5ZNE0ucHkgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rvb2xz
LzNELVJlY29uc3RydWN0aW9uL2dlblk0TS9nZW5ZNE0ucHkKaW5kZXggNmVmNWM2YzhjY2UwNzky
OWI0NzliZGFhNmYyNDVhZTc3NDA5ZmRhOC4uODAyODEwMmYwYzg2MjQyNzM1NzQzODA1ZDI5NWVk
NzgzYTE2YzE5MyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVjdGlv
bi9nZW5ZNE0vZ2VuWTRNLnB5CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvM0QtUmVjb25zdHJ1Y3Rp
b24vZ2VuWTRNL2dlblk0TS5weQpAQCAtMSwzICsxLDEyIEBACisjIyAgQ29weXJpZ2h0IChjKSAy
MDIwIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyMjCisj
IyAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGlj
ZW5zZQorIyMgIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJv
b3Qgb2YgdGhlIHNvdXJjZQorIyMgIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHBy
b3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyMjICBpbiB0aGUgZmlsZSBQQVRFTlRT
LiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisjIyAgYmUgZm91bmQgaW4g
dGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisjIworCiBp
bXBvcnQgYXJncGFyc2UKIGZyb20gb3MgaW1wb3J0IGxpc3RkaXIsIHBhdGgKIGZyb20gUElMIGlt
cG9ydCBJbWFnZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy9saW50LWh1bmtzLnB5IGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90b29scy9saW50LWh1bmtzLnB5CmluZGV4IDZlMjVkOTM2MjRkZGI2ODQwYzY1
ZWU1ZjRlN2MzZDg0NWM2NTNmMjQuLjMwZDMyNDkxOTNiYzNjMWQ5MDY3MzVhMTZhZTFlYmViODJh
N2M2ZjIgMTAwNzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvbGludC1odW5rcy5weQorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3Rvb2xzL2xpbnQtaHVua3MucHkKQEAgLTEwNiw2ICsxMDYsOCBAQCBkZWYgbWFp
bihhcmd2PU5vbmUpOgogICAgICAgICBmb3IgZmlsZW5hbWUsIGFmZmVjdGVkX2xpbmVzIGluIGZp
bGVfYWZmZWN0ZWRfbGluZV9tYXAuaXRlcml0ZW1zKCk6CiAgICAgICAgICAgICBpZiBmaWxlbmFt
ZS5zcGxpdCgiLiIpWy0xXSBub3QgaW4gKCJjIiwgImgiLCAiY2MiKToKICAgICAgICAgICAgICAg
ICBjb250aW51ZQorICAgICAgICAgICAgaWYgZmlsZW5hbWUuc3RhcnRzd2l0aCgidGhpcmRfcGFy
dHkiKToKKyAgICAgICAgICAgICAgICBjb250aW51ZQogCiAgICAgICAgICAgICBpZiBhcmdzOgog
ICAgICAgICAgICAgICAgICMgRmlsZSBjb250ZW50cyBjb21lIGZyb20gZ2l0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rvb2xzL25vbl9ncmVlZHlfbXYvbm9uX2dyZWVkeV9tdi5weSBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdG9vbHMvbm9uX2dyZWVkeV9tdi9ub25fZ3JlZWR5X212LnB5CmluZGV4IDUxM2ZhYTQz
NWY5NDliMzY4YTdkY2FjZWM4YTkxYmY4YmVmYmRmMzkuLmE0NmI3ZTc2MGM0ZTFhNzhlOTlmNzA4
ZThmZGNjZTVjOTZkNGJiYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvbm9uX2dyZWVk
eV9tdi9ub25fZ3JlZWR5X212LnB5CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvbm9uX2dyZWVkeV9t
di9ub25fZ3JlZWR5X212LnB5CkBAIC0xLDMgKzEsMTIgQEAKKyMjICBDb3B5cmlnaHQgKGMpIDIw
MjAgVGhlIFdlYk0gcHJvamVjdCBhdXRob3JzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorIyMKKyMj
ICBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNl
bnNlCisjIyAgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9v
dCBvZiB0aGUgc291cmNlCisjIyAgdHJlZS4gQW4gYWRkaXRpb25hbCBpbnRlbGxlY3R1YWwgcHJv
cGVydHkgcmlnaHRzIGdyYW50IGNhbiBiZSBmb3VuZAorIyMgIGluIHRoZSBmaWxlIFBBVEVOVFMu
ICBBbGwgY29udHJpYnV0aW5nIHByb2plY3QgYXV0aG9ycyBtYXkKKyMjICBiZSBmb3VuZCBpbiB0
aGUgQVVUSE9SUyBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UgdHJlZS4KKyMjCisKIGlt
cG9ydCBzeXMKIGltcG9ydCBtYXRwbG90bGliLnB5cGxvdCBhcyBwbHQKIGZyb20gbWF0cGxvdGxp
Yi5jb2xsZWN0aW9ucyBpbXBvcnQgTGluZUNvbGxlY3Rpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdG9vbHNfY29tbW9uLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rvb2xzX2NvbW1vbi5jCmluZGV4IDU5OTc4
YjdmOTNhYjQ5MzczMmY3M2QwNDE4Zjk5ZGNiZDA4NTk2NmYuLmNiZWNmYmI0MTkzNzU3YzE3ZWM4
YWI4NzgxOTgzYjMxNjNmOGUyY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHNfY29tbW9u
LmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90b29sc19jb21tb24uYwpAQCAtOTEsMTAgKzkxLDEzIEBAIGlu
dCByZWFkX3l1dl9mcmFtZShzdHJ1Y3QgVnB4SW5wdXRDb250ZXh0ICppbnB1dF9jdHgsIHZweF9p
bWFnZV90ICp5dXZfZnJhbWUpIHsKIAogICBmb3IgKHBsYW5lID0gMDsgcGxhbmUgPCAzOyArK3Bs
YW5lKSB7CiAgICAgdWludDhfdCAqcHRyOwotICAgIGNvbnN0IGludCB3ID0gdnB4X2ltZ19wbGFu
ZV93aWR0aCh5dXZfZnJhbWUsIHBsYW5lKTsKKyAgICBpbnQgdyA9IHZweF9pbWdfcGxhbmVfd2lk
dGgoeXV2X2ZyYW1lLCBwbGFuZSk7CiAgICAgY29uc3QgaW50IGggPSB2cHhfaW1nX3BsYW5lX2hl
aWdodCh5dXZfZnJhbWUsIHBsYW5lKTsKICAgICBpbnQgcjsKLQorICAgIC8vIEFzc3VtaW5nIHRo
YXQgZm9yIG52MTIgd2UgcmVhZCBhbGwgY2hyb21hIGRhdGEgYXQgb25lIHRpbWUKKyAgICBpZiAo
eXV2X2ZyYW1lLT5mbXQgPT0gVlBYX0lNR19GTVRfTlYxMiAmJiBwbGFuZSA+IDEpIGJyZWFrOwor
ICAgIC8vIEZpeGluZyBOVjEyIGNocm9tYSB3aWR0aCBpdCBpcyBvZGQKKyAgICBpZiAoeXV2X2Zy
YW1lLT5mbXQgPT0gVlBYX0lNR19GTVRfTlYxMiAmJiBwbGFuZSA9PSAxKSB3ID0gKHcgKyAxKSAm
IH4xOwogICAgIC8qIERldGVybWluZSB0aGUgY29ycmVjdCBwbGFuZSBiYXNlZCBvbiB0aGUgaW1h
Z2UgZm9ybWF0LiBUaGUgZm9yLWxvb3AKICAgICAgKiBhbHdheXMgY291bnRzIGluIFksVSxWIG9y
ZGVyLCBidXQgdGhpcyBtYXkgbm90IG1hdGNoIHRoZSBvcmRlciBvZgogICAgICAqIHRoZSBkYXRh
IG9uIGRpc2suCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZXh0ZW5kLmMgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vZXh0ZW5kLmMKaW5kZXggZjRkYmNlMmNkNTM3NmU3YjRhNWE1
NGU2NzNiYWMwODAxMjBiOTQ2Mi4uYjUyZTlmZTkzYzdiNDA3NzUzNzQ1ZGUyNDJiNTA0N2RhOTE4
MzBjNSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2V4dGVuZC5jCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9leHRlbmQuYwpAQCAtMTEsMzAgKzExLDQwIEBACiAjaW5jbHVk
ZSAiZXh0ZW5kLmgiCiAjaW5jbHVkZSAidnB4X21lbS92cHhfbWVtLmgiCiAKLXN0YXRpYyB2b2lk
IGNvcHlfYW5kX2V4dGVuZF9wbGFuZSh1bnNpZ25lZCBjaGFyICpzLCAvKiBzb3VyY2UgKi8KLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgc3AsICAgICAgICAgICAvKiBzb3Vy
Y2UgcGl0Y2ggKi8KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBj
aGFyICpkLCAvKiBkZXN0aW5hdGlvbiAqLwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGludCBkcCwgICAgICAgICAgIC8qIGRlc3RpbmF0aW9uIHBpdGNoICovCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaW50IGgsICAgICAgICAgICAgLyogaGVpZ2h0ICovCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHcsICAgICAgICAgICAgLyogd2lk
dGggKi8KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgZXQsICAgICAgICAg
ICAvKiBleHRlbmQgdG9wIGJvcmRlciAqLwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGludCBlbCwgICAgICAgICAgIC8qIGV4dGVuZCBsZWZ0IGJvcmRlciAqLwotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGludCBlYiwgICAgICAgICAgIC8qIGV4dGVuZCBib3R0
b20gYm9yZGVyICovCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGVyKSB7
ICAgICAgICAgLyogZXh0ZW5kIHJpZ2h0IGJvcmRlciAqLwotICBpbnQgaTsKK3N0YXRpYyB2b2lk
IGNvcHlfYW5kX2V4dGVuZF9wbGFuZSgKKyAgICB1bnNpZ25lZCBjaGFyICpzLCAgICAgIC8qIHNv
dXJjZSAqLworICAgIGludCBzcCwgICAgICAgICAgICAgICAgLyogc291cmNlIHBpdGNoICovCisg
ICAgdW5zaWduZWQgY2hhciAqZCwgICAgICAvKiBkZXN0aW5hdGlvbiAqLworICAgIGludCBkcCwg
ICAgICAgICAgICAgICAgLyogZGVzdGluYXRpb24gcGl0Y2ggKi8KKyAgICBpbnQgaCwgICAgICAg
ICAgICAgICAgIC8qIGhlaWdodCAqLworICAgIGludCB3LCAgICAgICAgICAgICAgICAgLyogd2lk
dGggKi8KKyAgICBpbnQgZXQsICAgICAgICAgICAgICAgIC8qIGV4dGVuZCB0b3AgYm9yZGVyICov
CisgICAgaW50IGVsLCAgICAgICAgICAgICAgICAvKiBleHRlbmQgbGVmdCBib3JkZXIgKi8KKyAg
ICBpbnQgZWIsICAgICAgICAgICAgICAgIC8qIGV4dGVuZCBib3R0b20gYm9yZGVyICovCisgICAg
aW50IGVyLCAgICAgICAgICAgICAgICAvKiBleHRlbmQgcmlnaHQgYm9yZGVyICovCisgICAgaW50
IGludGVybGVhdmVfc3RlcCkgeyAvKiBzdGVwIGJldHdlZW4gcGl4ZWxzIG9mIHRoZSBjdXJyZW50
IHBsYW5lICovCisgIGludCBpLCBqOwogICB1bnNpZ25lZCBjaGFyICpzcmNfcHRyMSwgKnNyY19w
dHIyOwogICB1bnNpZ25lZCBjaGFyICpkZXN0X3B0cjEsICpkZXN0X3B0cjI7CiAgIGludCBsaW5l
c2l6ZTsKIAorICBpZiAoaW50ZXJsZWF2ZV9zdGVwIDwgMSkgaW50ZXJsZWF2ZV9zdGVwID0gMTsK
KwogICAvKiBjb3B5IHRoZSBsZWZ0IGFuZCByaWdodCBtb3N0IGNvbHVtbnMgb3V0ICovCiAgIHNy
Y19wdHIxID0gczsKLSAgc3JjX3B0cjIgPSBzICsgdyAtIDE7CisgIHNyY19wdHIyID0gcyArICh3
IC0gMSkgKiBpbnRlcmxlYXZlX3N0ZXA7CiAgIGRlc3RfcHRyMSA9IGQgLSBlbDsKICAgZGVzdF9w
dHIyID0gZCArIHc7CiAKICAgZm9yIChpID0gMDsgaSA8IGg7ICsraSkgewogICAgIG1lbXNldChk
ZXN0X3B0cjEsIHNyY19wdHIxWzBdLCBlbCk7Ci0gICAgbWVtY3B5KGRlc3RfcHRyMSArIGVsLCBz
cmNfcHRyMSwgdyk7CisgICAgaWYgKGludGVybGVhdmVfc3RlcCA9PSAxKSB7CisgICAgICBtZW1j
cHkoZGVzdF9wdHIxICsgZWwsIHNyY19wdHIxLCB3KTsKKyAgICB9IGVsc2UgeworICAgICAgZm9y
IChqID0gMDsgaiA8IHc7IGorKykgeworICAgICAgICBkZXN0X3B0cjFbZWwgKyBqXSA9IHNyY19w
dHIxW2ludGVybGVhdmVfc3RlcCAqIGpdOworICAgICAgfQorICAgIH0KICAgICBtZW1zZXQoZGVz
dF9wdHIyLCBzcmNfcHRyMlswXSwgZXIpOwogICAgIHNyY19wdHIxICs9IHNwOwogICAgIHNyY19w
dHIyICs9IHNwOwpAQCAtNjksOSArNzksMTIgQEAgdm9pZCB2cDhfY29weV9hbmRfZXh0ZW5kX2Zy
YW1lKFlWMTJfQlVGRkVSX0NPTkZJRyAqc3JjLAogICBpbnQgZWIgPSBkc3QtPmJvcmRlciArIGRz
dC0+eV9oZWlnaHQgLSBzcmMtPnlfaGVpZ2h0OwogICBpbnQgZXIgPSBkc3QtPmJvcmRlciArIGRz
dC0+eV93aWR0aCAtIHNyYy0+eV93aWR0aDsKIAorICAvLyBkZXRlY3QgbnYxMiBjb2xvcnNwYWNl
CisgIGludCBjaHJvbWFfc3RlcCA9IHNyYy0+dl9idWZmZXIgLSBzcmMtPnVfYnVmZmVyID09IDEg
PyAyIDogMTsKKwogICBjb3B5X2FuZF9leHRlbmRfcGxhbmUoc3JjLT55X2J1ZmZlciwgc3JjLT55
X3N0cmlkZSwgZHN0LT55X2J1ZmZlciwKICAgICAgICAgICAgICAgICAgICAgICAgIGRzdC0+eV9z
dHJpZGUsIHNyYy0+eV9oZWlnaHQsIHNyYy0+eV93aWR0aCwgZXQsIGVsLCBlYiwKLSAgICAgICAg
ICAgICAgICAgICAgICAgIGVyKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGVyLCAxKTsKIAog
ICBldCA9IGRzdC0+Ym9yZGVyID4+IDE7CiAgIGVsID0gZHN0LT5ib3JkZXIgPj4gMTsKQEAgLTgw
LDExICs5MywxMSBAQCB2b2lkIHZwOF9jb3B5X2FuZF9leHRlbmRfZnJhbWUoWVYxMl9CVUZGRVJf
Q09ORklHICpzcmMsCiAKICAgY29weV9hbmRfZXh0ZW5kX3BsYW5lKHNyYy0+dV9idWZmZXIsIHNy
Yy0+dXZfc3RyaWRlLCBkc3QtPnVfYnVmZmVyLAogICAgICAgICAgICAgICAgICAgICAgICAgZHN0
LT51dl9zdHJpZGUsIHNyYy0+dXZfaGVpZ2h0LCBzcmMtPnV2X3dpZHRoLCBldCwgZWwsCi0gICAg
ICAgICAgICAgICAgICAgICAgICBlYiwgZXIpOworICAgICAgICAgICAgICAgICAgICAgICAgZWIs
IGVyLCBjaHJvbWFfc3RlcCk7CiAKICAgY29weV9hbmRfZXh0ZW5kX3BsYW5lKHNyYy0+dl9idWZm
ZXIsIHNyYy0+dXZfc3RyaWRlLCBkc3QtPnZfYnVmZmVyLAogICAgICAgICAgICAgICAgICAgICAg
ICAgZHN0LT51dl9zdHJpZGUsIHNyYy0+dXZfaGVpZ2h0LCBzcmMtPnV2X3dpZHRoLCBldCwgZWws
Ci0gICAgICAgICAgICAgICAgICAgICAgICBlYiwgZXIpOworICAgICAgICAgICAgICAgICAgICAg
ICAgZWIsIGVyLCBjaHJvbWFfc3RlcCk7CiB9CiAKIHZvaWQgdnA4X2NvcHlfYW5kX2V4dGVuZF9m
cmFtZV93aXRoX3JlY3QoWVYxMl9CVUZGRVJfQ09ORklHICpzcmMsCkBAIC05OCw2ICsxMTEsOCBA
QCB2b2lkIHZwOF9jb3B5X2FuZF9leHRlbmRfZnJhbWVfd2l0aF9yZWN0KFlWMTJfQlVGRkVSX0NP
TkZJRyAqc3JjLAogICBpbnQgZHN0X3lfb2Zmc2V0ID0gc3JjeSAqIGRzdC0+eV9zdHJpZGUgKyBz
cmN4OwogICBpbnQgc3JjX3V2X29mZnNldCA9ICgoc3JjeSAqIHNyYy0+dXZfc3RyaWRlKSA+PiAx
KSArIChzcmN4ID4+IDEpOwogICBpbnQgZHN0X3V2X29mZnNldCA9ICgoc3JjeSAqIGRzdC0+dXZf
c3RyaWRlKSA+PiAxKSArIChzcmN4ID4+IDEpOworICAvLyBkZXRlY3QgbnYxMiBjb2xvcnNwYWNl
CisgIGludCBjaHJvbWFfc3RlcCA9IHNyYy0+dl9idWZmZXIgLSBzcmMtPnVfYnVmZmVyID09IDEg
PyAyIDogMTsKIAogICAvKiBJZiB0aGUgc2lkZSBpcyBub3QgdG91Y2hpbmcgdGhlIGJvdW5kZXIg
dGhlbiBkb24ndCBleHRlbmQuICovCiAgIGlmIChzcmN5KSBldCA9IDA7CkBAIC0xMDcsNyArMTIy
LDcgQEAgdm9pZCB2cDhfY29weV9hbmRfZXh0ZW5kX2ZyYW1lX3dpdGhfcmVjdChZVjEyX0JVRkZF
Ul9DT05GSUcgKnNyYywKIAogICBjb3B5X2FuZF9leHRlbmRfcGxhbmUoc3JjLT55X2J1ZmZlciAr
IHNyY195X29mZnNldCwgc3JjLT55X3N0cmlkZSwKICAgICAgICAgICAgICAgICAgICAgICAgIGRz
dC0+eV9idWZmZXIgKyBkc3RfeV9vZmZzZXQsIGRzdC0+eV9zdHJpZGUsIHNyY2gsIHNyY3csCi0g
ICAgICAgICAgICAgICAgICAgICAgICBldCwgZWwsIGViLCBlcik7CisgICAgICAgICAgICAgICAg
ICAgICAgICBldCwgZWwsIGViLCBlciwgMSk7CiAKICAgZXQgPSAoZXQgKyAxKSA+PiAxOwogICBl
bCA9IChlbCArIDEpID4+IDE7CkBAIC0xMTgsMTEgKzEzMywxMSBAQCB2b2lkIHZwOF9jb3B5X2Fu
ZF9leHRlbmRfZnJhbWVfd2l0aF9yZWN0KFlWMTJfQlVGRkVSX0NPTkZJRyAqc3JjLAogCiAgIGNv
cHlfYW5kX2V4dGVuZF9wbGFuZShzcmMtPnVfYnVmZmVyICsgc3JjX3V2X29mZnNldCwgc3JjLT51
dl9zdHJpZGUsCiAgICAgICAgICAgICAgICAgICAgICAgICBkc3QtPnVfYnVmZmVyICsgZHN0X3V2
X29mZnNldCwgZHN0LT51dl9zdHJpZGUsIHNyY2gsCi0gICAgICAgICAgICAgICAgICAgICAgICBz
cmN3LCBldCwgZWwsIGViLCBlcik7CisgICAgICAgICAgICAgICAgICAgICAgICBzcmN3LCBldCwg
ZWwsIGViLCBlciwgY2hyb21hX3N0ZXApOwogCiAgIGNvcHlfYW5kX2V4dGVuZF9wbGFuZShzcmMt
PnZfYnVmZmVyICsgc3JjX3V2X29mZnNldCwgc3JjLT51dl9zdHJpZGUsCiAgICAgICAgICAgICAg
ICAgICAgICAgICBkc3QtPnZfYnVmZmVyICsgZHN0X3V2X29mZnNldCwgZHN0LT51dl9zdHJpZGUs
IHNyY2gsCi0gICAgICAgICAgICAgICAgICAgICAgICBzcmN3LCBldCwgZWwsIGViLCBlcik7Cisg
ICAgICAgICAgICAgICAgICAgICAgICBzcmN3LCBldCwgZWwsIGViLCBlciwgY2hyb21hX3N0ZXAp
OwogfQogCiAvKiBub3RlIHRoZSBleHRlbnNpb24gaXMgb25seSBmb3IgdGhlIGxhc3Qgcm93LCBm
b3IgaW50cmEgcHJlZGljdGlvbiBwdXJwb3NlICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vZ2VuZXJpYy9zeXN0ZW1kZXBlbmRlbnQuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9nZW5lcmljL3N5c3RlbWRlcGVuZGVudC5jCmluZGV4IDc1Y2U3ZWYzNTk2NGYxZWEyNTg1M2I5
YjhjOWYyZDljYTdlN2RlZDEuLmNkMWIwMmM5Y2M1Yjc0MzgxYTNjMGEzMGQ5MzVlNWYxNDVlN2Iy
ZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9nZW5lcmljL3N5c3RlbWRlcGVu
ZGVudC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9nZW5lcmljL3N5c3RlbWRlcGVuZGVu
dC5jCkBAIC0xNiw2ICsxNiw4IEBACiAjaW5jbHVkZSAidnB4X3BvcnRzL3g4Ni5oIgogI2VsaWYg
VlBYX0FSQ0hfUFBDCiAjaW5jbHVkZSAidnB4X3BvcnRzL3BwYy5oIgorI2VsaWYgVlBYX0FSQ0hf
TUlQUworI2luY2x1ZGUgInZweF9wb3J0cy9taXBzLmgiCiAjZW5kaWYKICNpbmNsdWRlICJ2cDgv
Y29tbW9uL29ueXhjX2ludC5oIgogI2luY2x1ZGUgInZwOC9jb21tb24vc3lzdGVtZGVwZW5kZW50
LmgiCkBAIC05Niw2ICs5OCw4IEBAIHZvaWQgdnA4X21hY2hpbmVfc3BlY2lmaWNfY29uZmlnKFZQ
OF9DT01NT04gKmN0eCkgewogICBjdHgtPmNwdV9jYXBzID0geDg2X3NpbWRfY2FwcygpOwogI2Vs
aWYgVlBYX0FSQ0hfUFBDCiAgIGN0eC0+Y3B1X2NhcHMgPSBwcGNfc2ltZF9jYXBzKCk7CisjZWxp
ZiBWUFhfQVJDSF9NSVBTCisgIGN0eC0+Y3B1X2NhcHMgPSBtaXBzX2NwdV9jYXBzKCk7CiAjZWxz
ZQogICAvLyBnZW5lcmljLWdudSB0YXJnZXRzLgogICBjdHgtPmNwdV9jYXBzID0gMDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9taXBzL21taS9kZXF1YW50aXplX21taS5jIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL21pcHMvbW1pL2RlcXVhbnRpemVfbW1pLmMKaW5kZXggYjNm
ODA4NGFlZTY3ZjY5ODE5OGRiNGVmMzFhZTI1OTQzMDQzZjNhZS4uYjkzMzBhNjY2MzA2NjQ4YWRj
MzAwNTRmMjg0ZTFiNzU4NjEzOTlmYiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L21pcHMvbW1pL2RlcXVhbnRpemVfbW1pLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21p
cHMvbW1pL2RlcXVhbnRpemVfbW1pLmMKQEAgLTEwMCw3ICsxMDAsNyBAQCB2b2lkIHZwOF9kZXF1
YW50X2lkY3RfYWRkX21taShpbnQxNl90ICppbnB1dCwgaW50MTZfdCAqZHEsIHVuc2lnbmVkIGNo
YXIgKmRlc3QsCiAgIHZwOF9zaG9ydF9pZGN0NHg0bGxtX21taShpbnB1dCwgZGVzdCwgc3RyaWRl
LCBkZXN0LCBzdHJpZGUpOwogCiAgIF9fYXNtX18gdm9sYXRpbGUoCi0gICAgICAieG9yICAgICAg
ICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAgICAgIFxuXHQiCisgICAg
ICAicHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAgICAg
IFxuXHQiCiAgICAgICAiZ3NzZGxjMSAgICAlW2Z0bXAwXSwgICAweDA3KCVbaW5wdXRdKSAgICAg
ICAgICAgICAgICAgIFxuXHQiCiAgICAgICAiZ3NzZHJjMSAgICAlW2Z0bXAwXSwgICAweDAwKCVb
aW5wdXRdKSAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgICAic2RsICAgICAgICAkMCwgICAg
ICAgICAweDBmKCVbaW5wdXRdKSAgICAgICAgICAgICAgICAgIFxuXHQiCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vbWlwcy9tbWkvaWRjdGxsbV9tbWkuYyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9taXBzL21taS9pZGN0bGxtX21taS5jCmluZGV4IDVlNDhmNTkxNjZiZGJhM2M1
Zjc0N2JmYmQyZmFhYTAxOWRmNzFjMWYuLmEzNTY4OWRkMzBhMzU1MjIzNGMyNWVhMDkyZmI0ZjA3
YmU2ZGY4ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9taXBzL21taS9pZGN0
bGxtX21taS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9taXBzL21taS9pZGN0bGxtX21t
aS5jCkBAIC0xMywyNSArMTMsMjUgQEAKICNpbmNsdWRlICJ2cHhfcG9ydHMvYXNtZGVmc19tbWku
aCIKIAogI2RlZmluZSBUUkFOU1BPU0VfNEggXAotICAieG9yICAgICAgICAgICAlW2Z0bXAwXSwg
ICAgJVtmdG1wMF0sICAgICVbZnRtcDBdICAgICAgICAgIFxuXHQiIFwKKyAgInB4b3IgICAgICAg
ICAgJVtmdG1wMF0sICAgICVbZnRtcDBdLCAgICAlW2Z0bXAwXSAgICAgICAgICBcblx0IiBcCiAg
IE1NSV9MSSglW3RtcDBdLCAweDkzKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAogICAibXRjMSAgICAgICAgICAlW3RtcDBdLCAgICAgJVtmdG1wMTBdICAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiIFwKICAgInB1bnBja2xodyAgICAgJVtmdG1wNV0sICAgICVb
ZnRtcDFdLCAgICAlW2Z0bXAwXSAgICAgICAgICBcblx0IiBcCiAgICJwdW5wY2tsaHcgICAgICVb
ZnRtcDldLCAgICAlW2Z0bXAyXSwgICAgJVtmdG1wMF0gICAgICAgICAgXG5cdCIgXAogICAicHNo
dWZoICAgICAgICAlW2Z0bXA5XSwgICAgJVtmdG1wOV0sICAgICVbZnRtcDEwXSAgICAgICAgIFxu
XHQiIFwKLSAgIm9yICAgICAgICAgICAgJVtmdG1wNV0sICAgICVbZnRtcDVdLCAgICAlW2Z0bXA5
XSAgICAgICAgICBcblx0IiBcCisgICJwb3IgICAgICAgICAgICVbZnRtcDVdLCAgICAlW2Z0bXA1
XSwgICAgJVtmdG1wOV0gICAgICAgICAgXG5cdCIgXAogICAicHVucGNraGh3ICAgICAlW2Z0bXA2
XSwgICAgJVtmdG1wMV0sICAgICVbZnRtcDBdICAgICAgICAgIFxuXHQiIFwKICAgInB1bnBja2ho
dyAgICAgJVtmdG1wOV0sICAgICVbZnRtcDJdLCAgICAlW2Z0bXAwXSAgICAgICAgICBcblx0IiBc
CiAgICJwc2h1ZmggICAgICAgICVbZnRtcDldLCAgICAlW2Z0bXA5XSwgICAgJVtmdG1wMTBdICAg
ICAgICAgXG5cdCIgXAotICAib3IgICAgICAgICAgICAlW2Z0bXA2XSwgICAgJVtmdG1wNl0sICAg
ICVbZnRtcDldICAgICAgICAgIFxuXHQiIFwKKyAgInBvciAgICAgICAgICAgJVtmdG1wNl0sICAg
ICVbZnRtcDZdLCAgICAlW2Z0bXA5XSAgICAgICAgICBcblx0IiBcCiAgICJwdW5wY2tsaHcgICAg
ICVbZnRtcDddLCAgICAlW2Z0bXAzXSwgICAgJVtmdG1wMF0gICAgICAgICAgXG5cdCIgXAogICAi
cHVucGNrbGh3ICAgICAlW2Z0bXA5XSwgICAgJVtmdG1wNF0sICAgICVbZnRtcDBdICAgICAgICAg
IFxuXHQiIFwKICAgInBzaHVmaCAgICAgICAgJVtmdG1wOV0sICAgICVbZnRtcDldLCAgICAlW2Z0
bXAxMF0gICAgICAgICBcblx0IiBcCi0gICJvciAgICAgICAgICAgICVbZnRtcDddLCAgICAlW2Z0
bXA3XSwgICAgJVtmdG1wOV0gICAgICAgICAgXG5cdCIgXAorICAicG9yICAgICAgICAgICAlW2Z0
bXA3XSwgICAgJVtmdG1wN10sICAgICVbZnRtcDldICAgICAgICAgIFxuXHQiIFwKICAgInB1bnBj
a2hodyAgICAgJVtmdG1wOF0sICAgICVbZnRtcDNdLCAgICAlW2Z0bXAwXSAgICAgICAgICBcblx0
IiBcCiAgICJwdW5wY2toaHcgICAgICVbZnRtcDldLCAgICAlW2Z0bXA0XSwgICAgJVtmdG1wMF0g
ICAgICAgICAgXG5cdCIgXAogICAicHNodWZoICAgICAgICAlW2Z0bXA5XSwgICAgJVtmdG1wOV0s
ICAgICVbZnRtcDEwXSAgICAgICAgIFxuXHQiIFwKLSAgIm9yICAgICAgICAgICAgJVtmdG1wOF0s
ICAgICVbZnRtcDhdLCAgICAlW2Z0bXA5XSAgICAgICAgICBcblx0IiBcCisgICJwb3IgICAgICAg
ICAgICVbZnRtcDhdLCAgICAlW2Z0bXA4XSwgICAgJVtmdG1wOV0gICAgICAgICAgXG5cdCIgXAog
ICAicHVucGNrbHdkICAgICAlW2Z0bXAxXSwgICAgJVtmdG1wNV0sICAgICVbZnRtcDddICAgICAg
ICAgIFxuXHQiIFwKICAgInB1bnBja2h3ZCAgICAgJVtmdG1wMl0sICAgICVbZnRtcDVdLCAgICAl
W2Z0bXA3XSAgICAgICAgICBcblx0IiBcCiAgICJwdW5wY2tsd2QgICAgICVbZnRtcDNdLCAgICAl
W2Z0bXA2XSwgICAgJVtmdG1wOF0gICAgICAgICAgXG5cdCIgXApAQCAtNDEsMTUgKzQxLDE5IEBA
IHZvaWQgdnA4X3Nob3J0X2lkY3Q0eDRsbG1fbW1pKGludDE2X3QgKmlucHV0LCB1bnNpZ25lZCBj
aGFyICpwcmVkX3B0ciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBwcmVkX3N0
cmlkZSwgdW5zaWduZWQgY2hhciAqZHN0X3B0ciwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGludCBkc3Rfc3RyaWRlKSB7CiAgIGRvdWJsZSBmdG1wWzEyXTsKLSAgdWludDMyX3QgdG1w
WzBdOwotICBERUNMQVJFX0FMSUdORUQoOCwgY29uc3QgdWludDY0X3QsIGZmX3BoXzA0KSA9IHsg
MHgwMDA0MDAwNDAwMDQwMDA0VUxMIH07Ci0gIERFQ0xBUkVfQUxJR05FRCg4LCBjb25zdCB1aW50
NjRfdCwgZmZfcGhfNGU3YikgPSB7IDB4NGU3YjRlN2I0ZTdiNGU3YlVMTCB9OwotICBERUNMQVJF
X0FMSUdORUQoOCwgY29uc3QgdWludDY0X3QsIGZmX3BoXzIyYTMpID0geyAweDIyYTMyMmEzMjJh
MzIyYTNVTEwgfTsKKyAgdWludDY0X3QgdG1wWzFdOworICBkb3VibGUgZmZfcGhfMDQsIGZmX3Bo
XzRlN2IsIGZmX3BoXzIyYTM7CiAKICAgX19hc21fXyB2b2xhdGlsZSAoCisgICAgImRsaSAgICAg
ICAgJVt0bXAwXSwgICAgMHgwMDA0MDAwNDAwMDQwMDA0ICAgICAgICAgICAgICAgICAgXG5cdCIK
KyAgICAiZG10YzEgICAgICAlW3RtcDBdLCAgICAlW2ZmX3BoXzA0XSAgICAgICAgICAgICAgICAg
ICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4NGU3YjRlN2I0ZTdi
NGU3YiAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAg
JVtmZl9waF80ZTdiXSAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKKyAgICAiZGxpICAgICAg
ICAlW3RtcDBdLCAgICAweDIyYTMyMmEzMjJhMzIyYTMgICAgICAgICAgICAgICAgICBcblx0Igor
ICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZmZfcGhfMjJhM10gICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCiAgICAgTU1JX0xJKCVbdG1wMF0sIDB4MDIpCi0gICAgIm10YzEgICAgICAg
JVt0bXAwXSwgICAgJVtmdG1wMTFdICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKLSAg
ICAieG9yICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAgICAg
ICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRtcDExXSAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMF0sICAgJVtm
dG1wMF0sICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKIAogICAgICJnc2xkbGMxICAg
ICVbZnRtcDFdLCAgIDB4MDcoJVtpcF0pICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAg
ICAgImdzbGRyYzEgICAgJVtmdG1wMV0sICAgMHgwMCglW2lwXSkgICAgICAgICAgICAgICAgICAg
ICAgICAgXG5cdCIKQEAgLTE4Niw5ICsxOTAsMTAgQEAgdm9pZCB2cDhfc2hvcnRfaWRjdDR4NGxs
bV9tbWkoaW50MTZfdCAqaW5wdXQsIHVuc2lnbmVkIGNoYXIgKnByZWRfcHRyLAogICAgICAgW2Z0
bXA2XSI9JmYiKGZ0bXBbNl0pLCBbZnRtcDddIj0mZiIoZnRtcFs3XSksIFtmdG1wOF0iPSZmIihm
dG1wWzhdKSwKICAgICAgIFtmdG1wOV0iPSZmIihmdG1wWzldKSwgW2Z0bXAxMF0iPSZmIihmdG1w
WzEwXSksCiAgICAgICBbZnRtcDExXSI9JmYiKGZ0bXBbMTFdKSwgW3RtcDBdIj0mciIodG1wWzBd
KSwKLSAgICAgIFtwcmVkX3B0cl0iKyZyIihwcmVkX3B0ciksIFtkc3RfcHRyXSIrJnIiKGRzdF9w
dHIpCi0gICAgOiBbaXBdInIiKGlucHV0KSwgW2ZmX3BoXzIyYTNdImYiKGZmX3BoXzIyYTMpLAot
ICAgICAgW2ZmX3BoXzRlN2JdImYiKGZmX3BoXzRlN2IpLCBbZmZfcGhfMDRdImYiKGZmX3BoXzA0
KSwKKyAgICAgIFtwcmVkX3B0cl0iKyZyIihwcmVkX3B0ciksIFtkc3RfcHRyXSIrJnIiKGRzdF9w
dHIpLAorICAgICAgW2ZmX3BoXzRlN2JdIj0mZiIoZmZfcGhfNGU3YiksIFtmZl9waF8wNF0iPSZm
IihmZl9waF8wNCksCisgICAgICBbZmZfcGhfMjJhM10iPSZmIihmZl9waF8yMmEzKQorICAgIDog
W2lwXSJyIihpbnB1dCksCiAgICAgICBbcHJlZF9zdHJpZGVdInIiKChtaXBzX3JlZylwcmVkX3N0
cmlkZSksCiAgICAgICBbZHN0X3N0cmlkZV0iciIoKG1pcHNfcmVnKWRzdF9zdHJpZGUpCiAgICAg
OiAibWVtb3J5IgpAQCAtMTk4LDEyICsyMDMsMTMgQEAgdm9pZCB2cDhfc2hvcnRfaWRjdDR4NGxs
bV9tbWkoaW50MTZfdCAqaW5wdXQsIHVuc2lnbmVkIGNoYXIgKnByZWRfcHRyLAogdm9pZCB2cDhf
ZGNfb25seV9pZGN0X2FkZF9tbWkoaW50MTZfdCBpbnB1dF9kYywgdW5zaWduZWQgY2hhciAqcHJl
ZF9wdHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcHJlZF9zdHJpZGUsIHVu
c2lnbmVkIGNoYXIgKmRzdF9wdHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQg
ZHN0X3N0cmlkZSkgewotICBpbnQgYTEgPSAoKGlucHV0X2RjICsgNCkgPj4gMyk7Ci0gIGRvdWJs
ZSBmdG1wWzVdOworICBpbnQgYTAgPSAoKGlucHV0X2RjICsgNCkgPj4gMyk7CisgIGRvdWJsZSBh
MSwgZnRtcFs1XTsKICAgaW50IGxvdzMyOwogCiAgIF9fYXNtX18gdm9sYXRpbGUgKAotICAgICJ4
b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0bXAwXSAgICAgICAgXG5c
dCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0g
ICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVthMF0sICAgICAgJVthMV0gICAgICAgICAg
ICAgICAgICAgICAgICAgICBcblx0IgogICAgICJwc2h1ZmggICAgICVbYTFdLCAgICAgICVbYTFd
LCAgICAgICAgICAlW2Z0bXAwXSAgICAgICAgXG5cdCIKICAgICAidWx3ICAgICAgICAlW2xvdzMy
XSwgICAweDAwKCVbcHJlZF9wdHJdKSAgICAgICAgICAgICAgIFxuXHQiCiAgICAgIm10YzEgICAg
ICAgJVtsb3czMl0sICAgJVtmdG1wMV0gICAgICAgICAgICAgICAgICAgICAgICBcblx0IgpAQCAt
MjQ0LDkgKzI1MCw5IEBAIHZvaWQgdnA4X2RjX29ubHlfaWRjdF9hZGRfbW1pKGludDE2X3QgaW5w
dXRfZGMsIHVuc2lnbmVkIGNoYXIgKnByZWRfcHRyLAogICAgICJnc3N3cmMxICAgICVbZnRtcDFd
LCAgIDB4MDAoJVtkc3RfcHRyXSkgICAgICAgICAgICAgICAgXG5cdCIKICAgICA6IFtmdG1wMF0i
PSZmIihmdG1wWzBdKSwgW2Z0bXAxXSI9JmYiKGZ0bXBbMV0pLCBbZnRtcDJdIj0mZiIoZnRtcFsy
XSksCiAgICAgICBbZnRtcDNdIj0mZiIoZnRtcFszXSksIFtmdG1wNF0iPSZmIihmdG1wWzRdKSwg
W2xvdzMyXSI9JnIiKGxvdzMyKSwKLSAgICAgIFtkc3RfcHRyXSIrJnIiKGRzdF9wdHIpLCBbcHJl
ZF9wdHJdIismciIocHJlZF9wdHIpCisgICAgICBbZHN0X3B0cl0iKyZyIihkc3RfcHRyKSwgW3By
ZWRfcHRyXSIrJnIiKHByZWRfcHRyKSwgW2ExXSI9JmYiKGExKQogICAgIDogW2RzdF9zdHJpZGVd
InIiKChtaXBzX3JlZylkc3Rfc3RyaWRlKSwKLSAgICAgIFtwcmVkX3N0cmlkZV0iciIoKG1pcHNf
cmVnKXByZWRfc3RyaWRlKSwgW2ExXSJmIihhMSkKKyAgICAgIFtwcmVkX3N0cmlkZV0iciIoKG1p
cHNfcmVnKXByZWRfc3RyaWRlKSwgW2EwXSJyIihhMCkKICAgICA6ICJtZW1vcnkiCiAgICk7CiB9
CkBAIC0yNTQsMTQgKzI2MCwxNSBAQCB2b2lkIHZwOF9kY19vbmx5X2lkY3RfYWRkX21taShpbnQx
Nl90IGlucHV0X2RjLCB1bnNpZ25lZCBjaGFyICpwcmVkX3B0ciwKIHZvaWQgdnA4X3Nob3J0X2lu
dl93YWxzaDR4NF9tbWkoaW50MTZfdCAqaW5wdXQsIGludDE2X3QgKm1iX2RxY29lZmYpIHsKICAg
aW50IGk7CiAgIGludDE2X3Qgb3V0cHV0WzE2XTsKLSAgZG91YmxlIGZ0bXBbMTJdOwotICB1aW50
MzJfdCB0bXBbMV07Ci0gIERFQ0xBUkVfQUxJR05FRCg4LCBjb25zdCB1aW50NjRfdCwgZmZfcGhf
MDMpID0geyAweDAwMDMwMDAzMDAwMzAwMDNVTEwgfTsKKyAgZG91YmxlIGZmX3BoXzAzLCBmdG1w
WzEyXTsKKyAgdWludDY0X3QgdG1wWzFdOwogCiAgIF9fYXNtX18gdm9sYXRpbGUgKAorICAgICJk
bGkgICAgICAgICVbdG1wMF0sICAgIDB4MDAwMzAwMDMwMDAzMDAwMyAgICAgICAgICAgICAgICAg
IFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9waF8wM10gICAgICAgICAg
ICAgICAgICAgICAgICAgXG5cdCIKICAgICBNTUlfTEkoJVt0bXAwXSwgMHgwMykKLSAgICAieG9y
ICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBc
blx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDExXSAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0s
ICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKKyAgICAiZG10YzEgICAgICAlW3RtcDBd
LCAgICAlW2Z0bXAxMV0gICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJnc2xk
bGMxICAgICVbZnRtcDFdLCAgIDB4MDcoJVtpcF0pICAgICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCiAgICAgImdzbGRyYzEgICAgJVtmdG1wMV0sICAgMHgwMCglW2lwXSkgICAgICAgICAgICAg
ICAgICAgICAgICAgXG5cdCIKICAgICAiZ3NsZGxjMSAgICAlW2Z0bXAyXSwgICAweDBmKCVbaXBd
KSAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgpAQCAtMzE3LDggKzMyNCw4IEBAIHZvaWQg
dnA4X3Nob3J0X2ludl93YWxzaDR4NF9tbWkoaW50MTZfdCAqaW5wdXQsIGludDE2X3QgKm1iX2Rx
Y29lZmYpIHsKICAgICAgIFtmdG1wM10iPSZmIihmdG1wWzNdKSwgW2Z0bXA0XSI9JmYiKGZ0bXBb
NF0pLCBbZnRtcDVdIj0mZiIoZnRtcFs1XSksCiAgICAgICBbZnRtcDZdIj0mZiIoZnRtcFs2XSks
IFtmdG1wN10iPSZmIihmdG1wWzddKSwgW2Z0bXA4XSI9JmYiKGZ0bXBbOF0pLAogICAgICAgW2Z0
bXA5XSI9JmYiKGZ0bXBbOV0pLCBbZnRtcDEwXSI9JmYiKGZ0bXBbMTBdKSwKLSAgICAgIFtmdG1w
MTFdIj0mZiIoZnRtcFsxMV0pLCBbdG1wMF0iPSZyIih0bXBbMF0pCi0gICAgOiBbaXBdInIiKGlu
cHV0KSwgW29wXSJyIihvdXRwdXQpLCBbZmZfcGhfMDNdImYiKGZmX3BoXzAzKQorICAgICAgW2Z0
bXAxMV0iPSZmIihmdG1wWzExXSksIFt0bXAwXSI9JnIiKHRtcFswXSksIFtmZl9waF8wM10iPSZm
IihmZl9waF8wMykKKyAgICA6IFtpcF0iciIoaW5wdXQpLCBbb3BdInIiKG91dHB1dCkKICAgICA6
ICJtZW1vcnkiCiAgICk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9taXBz
L21taS9sb29wZmlsdGVyX2ZpbHRlcnNfbW1pLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWlw
cy9tbWkvbG9vcGZpbHRlcl9maWx0ZXJzX21taS5jCmluZGV4IGYyMTgyZjk1YzljNmU5NzM3MzQw
NDUxZDllNmQ3ZWViZmY5ZGMwYjMuLmEwN2E3ZTNiNDFkMzM2MmZiZDRmNGQwNjA4N2YzYWFlZWU0
ZDNmYjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9taXBzL21taS9sb29wZmls
dGVyX2ZpbHRlcnNfbW1pLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21pcHMvbW1pL2xv
b3BmaWx0ZXJfZmlsdGVyc19tbWkuYwpAQCAtMTMsMjggKzEzLDI1IEBACiAjaW5jbHVkZSAidnA4
L2NvbW1vbi9vbnl4Y19pbnQuaCIKICNpbmNsdWRlICJ2cHhfcG9ydHMvYXNtZGVmc19tbWkuaCIK
IAotREVDTEFSRV9BTElHTkVEKDgsIHN0YXRpYyBjb25zdCB1aW50NjRfdCwgZmZfcGhfMDEpID0g
eyAweDAwMDEwMDAxMDAwMTAwMDFVTEwgfTsKLURFQ0xBUkVfQUxJR05FRCg4LCBzdGF0aWMgY29u
c3QgdWludDY0X3QsCi0gICAgICAgICAgICAgICAgZmZfcGhfMDAzZikgPSB7IDB4MDAzZjAwM2Yw
MDNmMDAzZlVMTCB9OwotREVDTEFSRV9BTElHTkVEKDgsIHN0YXRpYyBjb25zdCB1aW50NjRfdCwK
LSAgICAgICAgICAgICAgICBmZl9waF8wOTAwKSA9IHsgMHgwOTAwMDkwMDA5MDAwOTAwVUxMIH07
Ci1ERUNMQVJFX0FMSUdORUQoOCwgc3RhdGljIGNvbnN0IHVpbnQ2NF90LAotICAgICAgICAgICAg
ICAgIGZmX3BoXzEyMDApID0geyAweDEyMDAxMjAwMTIwMDEyMDBVTEwgfTsKLURFQ0xBUkVfQUxJ
R05FRCg4LCBzdGF0aWMgY29uc3QgdWludDY0X3QsCi0gICAgICAgICAgICAgICAgZmZfcGhfMWIw
MCkgPSB7IDB4MWIwMDFiMDAxYjAwMWIwMFVMTCB9OwotREVDTEFSRV9BTElHTkVEKDgsIHN0YXRp
YyBjb25zdCB1aW50NjRfdCwgZmZfcGJfZmUpID0geyAweGZlZmVmZWZlZmVmZWZlZmVVTEwgfTsK
LURFQ0xBUkVfQUxJR05FRCg4LCBzdGF0aWMgY29uc3QgdWludDY0X3QsIGZmX3BiXzgwKSA9IHsg
MHg4MDgwODA4MDgwODA4MDgwVUxMIH07Ci1ERUNMQVJFX0FMSUdORUQoOCwgc3RhdGljIGNvbnN0
IHVpbnQ2NF90LCBmZl9wYl8wNCkgPSB7IDB4MDQwNDA0MDQwNDA0MDQwNFVMTCB9OwotREVDTEFS
RV9BTElHTkVEKDgsIHN0YXRpYyBjb25zdCB1aW50NjRfdCwgZmZfcGJfMDMpID0geyAweDAzMDMw
MzAzMDMwMzAzMDNVTEwgfTsKLURFQ0xBUkVfQUxJR05FRCg4LCBzdGF0aWMgY29uc3QgdWludDY0
X3QsIGZmX3BiXzAxKSA9IHsgMHgwMTAxMDEwMTAxMDEwMTAxVUxMIH07Ci0KIHZvaWQgdnA4X2xv
b3BfZmlsdGVyX2hvcml6b250YWxfZWRnZV9tbWkoCiAgICAgdW5zaWduZWQgY2hhciAqc3JjX3B0
ciwgaW50IHNyY19waXhlbF9zdGVwLCBjb25zdCB1bnNpZ25lZCBjaGFyICpibGltaXQsCiAgICAg
Y29uc3QgdW5zaWduZWQgY2hhciAqbGltaXQsIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnRocmVzaCwg
aW50IGNvdW50KSB7Ci0gIHVpbnQzMl90IHRtcFsxXTsKKyAgdWludDY0X3QgdG1wWzFdOwogICBt
aXBzX3JlZyBhZGRyWzJdOwogICBkb3VibGUgZnRtcFsxMl07CisgIGRvdWJsZSBmZl9waF8wMSwg
ZmZfcGJfZmUsIGZmX3BiXzgwLCBmZl9wYl8wNCwgZmZfcGJfMDM7CisgIC8qIGNsYW5nLWZvcm1h
dCBvZmYgKi8KICAgX19hc21fXyB2b2xhdGlsZSAoCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwg
ICAgMHgwMDAxMDAwMTAwMDEwMDAxICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRt
dGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9waF8wMV0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHhmZWZlZmVmZWZlZmVmZWZl
ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAg
JVtmZl9wYl9mZV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAg
ICAgICAgJVt0bXAwXSwgICAgMHg4MDgwODA4MDgwODA4MDgwICAgICAgICAgICAgICAgICAgICAg
IFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl84MF0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgw
NDA0MDQwNDA0MDQwNDA0ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAg
ICAgJVt0bXAwXSwgICAgJVtmZl9wYl8wNF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwMzAzMDMwMzAzMDMwMzAzICAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9w
Yl8wM10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgIjE6ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQi
CiAgICAgImdzbGRsYzEgICAgJVtmdG1wMTBdLCAgMHgwNyglW2xpbWl0XSkgICAgICAgICAgICAg
ICAgICAgICAgICAgIFxuXHQiCiAgICAgImdzbGRyYzEgICAgJVtmdG1wMTBdLCAgMHgwMCglW2xp
bWl0XSkgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCkBAIC01NiwxNCArNTMsMTQgQEAg
dm9pZCB2cDhfbG9vcF9maWx0ZXJfaG9yaXpvbnRhbF9lZGdlX21taSgKICAgICAiZ3NsZHJjMSAg
ICAlW2Z0bXA0XSwgICAweDAwKCVbYWRkcjFdKSAgICAgICAgICAgICAgICAgICAgICAgICAgXG5c
dCIKICAgICAicGFzdWJ1YiAgICAlW2Z0bXAxXSwgICAlW2Z0bXAzXSwgICAgICAgICAgICVbZnRt
cDRdICAgICAgICAgICAgXG5cdCIKICAgICAicHN1YnVzYiAgICAlW2Z0bXAxXSwgICAlW2Z0bXAx
XSwgICAgICAgICAgICVbZnRtcDEwXSAgICAgICAgICAgXG5cdCIKLSAgICAib3IgICAgICAgICAl
W2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDFdICAgICAgICAgICAgXG5cdCIK
KyAgICAicG9yICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDFd
ICAgICAgICAgICAgXG5cdCIKIAogICAgIE1NSV9TVUJVKCVbYWRkcjFdLCAlW3NyY19wdHJdLCAl
W3NyY19waXhlbF9zdGVwXSkKICAgICAiZ3NsZGxjMSAgICAlW2Z0bXA1XSwgICAweDA3KCVbYWRk
cjFdKSAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAiZ3NsZHJjMSAgICAlW2Z0
bXA1XSwgICAweDAwKCVbYWRkcjFdKSAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAg
ICAicGFzdWJ1YiAgICAlW2Z0bXA5XSwgICAlW2Z0bXA0XSwgICAgICAgICAgICVbZnRtcDVdICAg
ICAgICAgICAgXG5cdCIKICAgICAicHN1YnVzYiAgICAlW2Z0bXAxXSwgICAlW2Z0bXA5XSwgICAg
ICAgICAgICVbZnRtcDEwXSAgICAgICAgICAgXG5cdCIKLSAgICAib3IgICAgICAgICAlW2Z0bXAw
XSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDFdICAgICAgICAgICAgXG5cdCIKKyAgICAi
cG9yICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDFdICAgICAg
ICAgICAgXG5cdCIKIAogICAgICJnc2xkbGMxICAgICVbZnRtcDZdLCAgIDB4MDcoJVtzcmNfcHRy
XSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJnc2xkcmMxICAgICVbZnRtcDZd
LCAgIDB4MDAoJVtzcmNfcHRyXSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgpAQCAtNzIs
MzUgKzY5LDM1IEBAIHZvaWQgdnA4X2xvb3BfZmlsdGVyX2hvcml6b250YWxfZWRnZV9tbWkoCiAg
ICAgImdzbGRyYzEgICAgJVtmdG1wN10sICAgMHgwMCglW2FkZHIwXSkgICAgICAgICAgICAgICAg
ICAgICAgICAgIFxuXHQiCiAgICAgInBhc3VidWIgICAgJVtmdG1wMTFdLCAgJVtmdG1wN10sICAg
ICAgICAgICAlW2Z0bXA2XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJ1c2IgICAgJVtmdG1w
MV0sICAgJVtmdG1wMTFdLCAgICAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCi0gICAg
Im9yICAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAxXSAgICAg
ICAgICAgIFxuXHQiCisgICAgInBvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAg
ICAgICAlW2Z0bXAxXSAgICAgICAgICAgIFxuXHQiCiAKICAgICBNTUlfQUREVSglW2FkZHIxXSwg
JVtzcmNfcHRyXSwgJVtzcmNfcGl4ZWxfc3RlcF94Ml0pCiAgICAgImdzbGRsYzEgICAgJVtmdG1w
OF0sICAgMHgwNyglW2FkZHIxXSkgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAg
ImdzbGRyYzEgICAgJVtmdG1wOF0sICAgMHgwMCglW2FkZHIxXSkgICAgICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCiAgICAgInBhc3VidWIgICAgJVtmdG1wMV0sICAgJVtmdG1wOF0sICAgICAg
ICAgICAlW2Z0bXA3XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJ1c2IgICAgJVtmdG1wMV0s
ICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCi0gICAgIm9y
ICAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAxXSAgICAgICAg
ICAgIFxuXHQiCisgICAgInBvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAg
ICAlW2Z0bXAxXSAgICAgICAgICAgIFxuXHQiCiAKICAgICBNTUlfQUREVSglW2FkZHIxXSwgJVth
ZGRyMF0sICVbc3JjX3BpeGVsX3N0ZXBfeDJdKQogICAgICJnc2xkbGMxICAgICVbZnRtcDJdLCAg
IDB4MDcoJVthZGRyMV0pICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJnc2xk
cmMxICAgICVbZnRtcDJdLCAgIDB4MDAoJVthZGRyMV0pICAgICAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgogICAgICJwYXN1YnViICAgICVbZnRtcDFdLCAgICVbZnRtcDJdLCAgICAgICAgICAg
JVtmdG1wOF0gICAgICAgICAgICBcblx0IgogICAgICJwc3VidXNiICAgICVbZnRtcDFdLCAgICVb
ZnRtcDFdLCAgICAgICAgICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0IgotICAgICJvciAgICAg
ICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBc
blx0IgorICAgICJwb3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtm
dG1wMV0gICAgICAgICAgICBcblx0IgogCiAgICAgInBhc3VidWIgICAgJVtmdG1wMV0sICAgJVtm
dG1wNV0sICAgICAgICAgICAlW2Z0bXA2XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR1c2Ig
ICAgJVtmdG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAxXSAgICAgICAgICAgIFxu
XHQiCiAgICAgInBhc3VidWIgICAgJVtmdG1wMl0sICAgJVtmdG1wNF0sICAgICAgICAgICAlW2Z0
bXA3XSAgICAgICAgICAgIFxuXHQiCi0gICAgImFuZCAgICAgICAgJVtmdG1wMl0sICAgJVtmdG1w
Ml0sICAgICAgICAgICAlW2ZmX3BiX2ZlXSAgICAgICAgIFxuXHQiCi0gICAgImxpICAgICAgICAg
JVt0bXAwXSwgICAgMHgwMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQi
Ci0gICAgIm10YzEgICAgICAgJVt0bXAwXSwgICAgJVtmdG1wMTBdICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFxuXHQiCisgICAgInBhbmQgICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0s
ICAgICAgICAgICAlW2ZmX3BiX2ZlXSAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0
bXAwXSwgICAgMHgwMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisg
ICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmdG1wMTBdICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFxuXHQiCiAgICAgInBzcmxoICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAg
ICAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR1c2IgICAgJVtmdG1w
MV0sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAyXSAgICAgICAgICAgIFxuXHQiCiAgICAg
ImdzbGRsYzEgICAgJVtmdG1wMTBdLCAgMHgwNyglW2JsaW1pdF0pICAgICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCiAgICAgImdzbGRyYzEgICAgJVtmdG1wMTBdLCAgMHgwMCglW2JsaW1pdF0p
ICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJ1c2IgICAgJVtmdG1wMV0s
ICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCi0gICAgIm9y
ICAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAxXSAgICAgICAg
ICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wMTBdLCAgJVtmdG1wMTBdLCAgICAgICAg
ICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCisgICAgInBvciAgICAgICAgJVtmdG1wMF0sICAg
JVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAxXSAgICAgICAgICAgIFxuXHQiCisgICAgInB4b3Ig
ICAgICAgJVtmdG1wMTBdLCAgJVtmdG1wMTBdLCAgICAgICAgICAlW2Z0bXAxMF0gICAgICAgICAg
IFxuXHQiCiAgICAgInBjbXBlcWIgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAl
W2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCiAKICAgICAiZ3NsZGxjMSAgICAlW2Z0bXAxMF0sICAw
eDA3KCVbdGhyZXNoXSkgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKQEAgLTEwOCw3MiAr
MTA1LDcyIEBAIHZvaWQgdnA4X2xvb3BfZmlsdGVyX2hvcml6b250YWxfZWRnZV9tbWkoCiAgICAg
InBzdWJ1c2IgICAgJVtmdG1wMV0sICAgJVtmdG1wOV0sICAgICAgICAgICAlW2Z0bXAxMF0gICAg
ICAgICAgIFxuXHQiCiAgICAgInBzdWJ1c2IgICAgJVtmdG1wMl0sICAgJVtmdG1wMTFdLCAgICAg
ICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCiAgICAgInBhZGRiICAgICAgJVtmdG1wMV0s
ICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAyXSAgICAgICAgICAgIFxuXHQiCi0gICAgInhv
ciAgICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2Z0bXAyXSAgICAgICAg
ICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAg
ICAlW2Z0bXAyXSAgICAgICAgICAgIFxuXHQiCiAgICAgInBjbXBlcWIgICAgJVtmdG1wMV0sICAg
JVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAyXSAgICAgICAgICAgIFxuXHQiCiAgICAgInBjbXBl
cWIgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2Z0bXAyXSAgICAgICAgICAg
IFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAl
W2Z0bXAyXSAgICAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMV0sICAgJVtm
dG1wMV0sICAgICAgICAgICAlW2Z0bXAyXSAgICAgICAgICAgIFxuXHQiCiAKLSAgICAieG9yICAg
ICAgICAlW2Z0bXA0XSwgICAlW2Z0bXA0XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAg
XG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVb
ZmZfcGJfODBdICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA2XSwgICAlW2Z0
bXA2XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAg
ICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5c
dCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA0XSwgICAlW2Z0bXA0XSwgICAgICAgICAgICVbZmZf
cGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1
XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAl
W2Z0bXA2XSwgICAlW2Z0bXA2XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIK
KyAgICAicHhvciAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZmZfcGJf
ODBdICAgICAgICAgXG5cdCIKIAogICAgICJwc3Vic2IgICAgICVbZnRtcDJdLCAgICVbZnRtcDRd
LCAgICAgICAgICAgJVtmdG1wN10gICAgICAgICAgICBcblx0IgotICAgICJhbmQgICAgICAgICVb
ZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0Igor
ICAgICJwYW5kICAgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wMV0g
ICAgICAgICAgICBcblx0IgogICAgICJwc3Vic2IgICAgICVbZnRtcDNdLCAgICVbZnRtcDZdLCAg
ICAgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgogICAgICJwYWRkc2IgICAgICVbZnRt
cDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wM10gICAgICAgICAgICBcblx0IgogICAg
ICJwYWRkc2IgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wM10gICAg
ICAgICAgICBcblx0IgogICAgICJwYWRkc2IgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAg
ICAgICAgJVtmdG1wM10gICAgICAgICAgICBcblx0IgotICAgICJhbmQgICAgICAgICVbZnRtcDJd
LCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgorICAgICJw
YW5kICAgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wMF0gICAgICAg
ICAgICBcblx0IgogCiAgICAgInBhZGRzYiAgICAgJVtmdG1wOF0sICAgJVtmdG1wMl0sICAgICAg
ICAgICAlW2ZmX3BiXzAzXSAgICAgICAgIFxuXHQiCiAgICAgInBhZGRzYiAgICAgJVtmdG1wOV0s
ICAgJVtmdG1wMl0sICAgICAgICAgICAlW2ZmX3BiXzA0XSAgICAgICAgIFxuXHQiCiAKLSAgICAi
eG9yICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDBdICAgICAg
ICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXAxMV0sICAlW2Z0bXAxMV0sICAgICAg
ICAgICVbZnRtcDExXSAgICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAwXSwg
ICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKKyAgICAicHhv
ciAgICAgICAlW2Z0bXAxMV0sICAlW2Z0bXAxMV0sICAgICAgICAgICVbZnRtcDExXSAgICAgICAg
ICAgXG5cdCIKICAgICAicHVucGNrbGJoICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAg
ICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIKICAgICAicHVucGNraGJoICAlW2Z0bXAxMV0sICAl
W2Z0bXAxMV0sICAgICAgICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIKIAotICAgICJsaSAg
ICAgICAgICVbdG1wMF0sICAgIDB4MGIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDEwXSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4
MGIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAg
ICAgICVbdG1wMF0sICAgICVbZnRtcDEwXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
blx0IgogICAgICJwc3JhaCAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtm
dG1wMTBdICAgICAgICAgICBcblx0IgogICAgICJwc3JhaCAgICAgICVbZnRtcDExXSwgICVbZnRt
cDExXSwgICAgICAgICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0IgogICAgICJwYWNrc3NoYiAg
ICVbZnRtcDhdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0
IgotICAgICJ4b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1w
MF0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBd
LCAgICAgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgogICAgICJwdW5wY2tsYmggICVb
ZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0Igog
ICAgICJwc3JhaCAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMTBd
ICAgICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRtcDExXSwgICVbZnRtcDExXSwg
ICAgICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRt
cDExXSwgICVbZnRtcDExXSwgICAgICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0IgogICAg
ICJwdW5wY2toYmggICVbZnRtcDldLCAgICVbZnRtcDExXSwgICAgICAgICAgJVtmdG1wOV0gICAg
ICAgICAgICBcblx0IgogICAgICJwc3JhaCAgICAgICVbZnRtcDldLCAgICVbZnRtcDldLCAgICAg
ICAgICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0IgogICAgICJwYWRkc2ggICAgICVbZnRtcDEx
XSwgICVbZnRtcDBdLCAgICAgICAgICAgJVtmZl9waF8wMV0gICAgICAgICBcblx0IgogICAgICJw
YWNrc3NoYiAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wOV0gICAgICAg
ICAgICBcblx0IgogICAgICJwYWRkc2ggICAgICVbZnRtcDldLCAgICVbZnRtcDldLCAgICAgICAg
ICAgJVtmZl9waF8wMV0gICAgICAgICBcblx0IgogCi0gICAgImxpICAgICAgICAgJVt0bXAwXSwg
ICAgMHgwMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCi0gICAgIm10
YzEgICAgICAgJVt0bXAwXSwgICAgJVtmdG1wMTBdICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwMSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAg
JVtmdG1wMTBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgInBzcmFo
ICAgICAgJVtmdG1wMTFdLCAgJVtmdG1wMTFdLCAgICAgICAgICAlW2Z0bXAxMF0gICAgICAgICAg
IFxuXHQiCiAgICAgInBzcmFoICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgICAgICAgICAl
W2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCiAgICAgInBhY2tzc2hiICAgJVtmdG1wMTFdLCAgJVtm
dG1wMTFdLCAgICAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBhbmRuICAg
ICAgJVtmdG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAxMV0gICAgICAgICAgIFxu
XHQiCiAgICAgInBhZGRzYiAgICAgJVtmdG1wNV0sICAgJVtmdG1wNV0sICAgICAgICAgICAlW2Z0
bXA4XSAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wNV0sICAgJVtmdG1w
NV0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAg
JVtmdG1wNV0sICAgJVtmdG1wNV0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQi
CiAKICAgICBNTUlfU1VCVSglW2FkZHIxXSwgJVtzcmNfcHRyXSwgJVtzcmNfcGl4ZWxfc3RlcF0p
CiAgICAgImdzc2RsYzEgICAgJVtmdG1wNV0sICAgMHgwNyglW2FkZHIxXSkgICAgICAgICAgICAg
ICAgICAgICAgICAgIFxuXHQiCiAgICAgImdzc2RyYzEgICAgJVtmdG1wNV0sICAgMHgwMCglW2Fk
ZHIxXSkgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgTU1JX1NVQlUoJVthZGRy
MV0sICVbc3JjX3B0cl0sICVbc3JjX3BpeGVsX3N0ZXBfeDJdKQogICAgICJwYWRkc2IgICAgICVb
ZnRtcDRdLCAgICVbZnRtcDRdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0Igot
ICAgICJ4b3IgICAgICAgICVbZnRtcDRdLCAgICVbZnRtcDRdLCAgICAgICAgICAgJVtmZl9wYl84
MF0gICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDRdLCAgICVbZnRtcDRdLCAg
ICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgogICAgICJnc3NkbGMxICAgICVbZnRt
cDRdLCAgIDB4MDcoJVthZGRyMV0pICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAg
ICJnc3NkcmMxICAgICVbZnRtcDRdLCAgIDB4MDAoJVthZGRyMV0pICAgICAgICAgICAgICAgICAg
ICAgICAgICBcblx0IgogCiAgICAgInBzdWJzYiAgICAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAg
ICAgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1w
Nl0sICAgJVtmdG1wNl0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAg
InB4b3IgICAgICAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAg
ICAgICAgIFxuXHQiCiAgICAgImdzc2RsYzEgICAgJVtmdG1wNl0sICAgMHgwNyglW3NyY19wdHJd
KSAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImdzc2RyYzEgICAgJVtmdG1wNl0s
ICAgMHgwMCglW3NyY19wdHJdKSAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAKICAgICAi
cHN1YnNiICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZnRtcDFdICAgICAg
ICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAg
ICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA3XSwg
ICAlW2Z0bXA3XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKICAgICAiZ3Nz
ZGxjMSAgICAlW2Z0bXA3XSwgICAweDA3KCVbYWRkcjBdKSAgICAgICAgICAgICAgICAgICAgICAg
ICAgXG5cdCIKICAgICAiZ3NzZHJjMSAgICAlW2Z0bXA3XSwgICAweDAwKCVbYWRkcjBdKSAgICAg
ICAgICAgICAgICAgICAgICAgICAgXG5cdCIKIApAQCAtMTg4LDE3ICsxODUsMTggQEAgdm9pZCB2
cDhfbG9vcF9maWx0ZXJfaG9yaXpvbnRhbF9lZGdlX21taSgKICAgICAgIFtmdG1wMTBdIj0mZiIo
ZnRtcFsxMF0pLCAgICAgICAgICAgIFtmdG1wMTFdIj0mZiIoZnRtcFsxMV0pLAogICAgICAgW3Rt
cDBdIj0mciIodG1wWzBdKSwKICAgICAgIFthZGRyMF0iPSZyIihhZGRyWzBdKSwgICAgICAgICAg
ICBbYWRkcjFdIj0mciIoYWRkclsxXSksCi0gICAgICBbc3JjX3B0cl0iKyZyIihzcmNfcHRyKSwg
ICAgICAgICAgW2NvdW50XSIrJnIiKGNvdW50KQorICAgICAgW3NyY19wdHJdIismciIoc3JjX3B0
ciksICAgICAgICAgIFtjb3VudF0iKyZyIihjb3VudCksCisgICAgICBbZmZfcGhfMDFdIj0mZiIo
ZmZfcGhfMDEpLCAgICAgICAgW2ZmX3BiX2ZlXSI9JmYiKGZmX3BiX2ZlKSwKKyAgICAgIFtmZl9w
Yl84MF0iPSZmIihmZl9wYl84MCksICAgICAgICBbZmZfcGJfMDRdIj0mZiIoZmZfcGJfMDQpLAor
ICAgICAgW2ZmX3BiXzAzXSI9JmYiKGZmX3BiXzAzKQogICAgIDogW2xpbWl0XSJyIihsaW1pdCks
ICAgICAgICAgICAgICAgIFtibGltaXRdInIiKGJsaW1pdCksCiAgICAgICBbdGhyZXNoXSJyIih0
aHJlc2gpLAogICAgICAgW3NyY19waXhlbF9zdGVwXSJyIigobWlwc19yZWcpc3JjX3BpeGVsX3N0
ZXApLAogICAgICAgW3NyY19waXhlbF9zdGVwX3gyXSJyIigobWlwc19yZWcpKHNyY19waXhlbF9z
dGVwPDwxKSksCi0gICAgICBbc3JjX3BpeGVsX3N0ZXBfeDRdInIiKChtaXBzX3JlZykoc3JjX3Bp
eGVsX3N0ZXA8PDIpKSwKLSAgICAgIFtmZl9waF8wMV0iZiIoZmZfcGhfMDEpLCAgICAgICAgICBb
ZmZfcGJfZmVdImYiKGZmX3BiX2ZlKSwKLSAgICAgIFtmZl9wYl84MF0iZiIoZmZfcGJfODApLCAg
ICAgICAgICBbZmZfcGJfMDRdImYiKGZmX3BiXzA0KSwKLSAgICAgIFtmZl9wYl8wM10iZiIoZmZf
cGJfMDMpCisgICAgICBbc3JjX3BpeGVsX3N0ZXBfeDRdInIiKChtaXBzX3JlZykoc3JjX3BpeGVs
X3N0ZXA8PDIpKQogICAgIDogIm1lbW9yeSIKICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICov
CiB9CiAKIHZvaWQgdnA4X2xvb3BfZmlsdGVyX3ZlcnRpY2FsX2VkZ2VfbW1pKHVuc2lnbmVkIGNo
YXIgKnNyY19wdHIsCkBAIC0yMDYsMTEgKzIwNCwyMyBAQCB2b2lkIHZwOF9sb29wX2ZpbHRlcl92
ZXJ0aWNhbF9lZGdlX21taSh1bnNpZ25lZCBjaGFyICpzcmNfcHRyLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqYmxpbWl0LAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAq
bGltaXQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNp
Z25lZCBjaGFyICp0aHJlc2gsIGludCBjb3VudCkgewotICB1aW50MzJfdCB0bXBbMV07CisgIHVp
bnQ2NF90IHRtcFsxXTsKICAgbWlwc19yZWcgYWRkclsyXTsKICAgZG91YmxlIGZ0bXBbMTNdOwor
ICBkb3VibGUgZmZfcGJfZmUsIGZmX3BoXzAxLCBmZl9wYl8wMywgZmZfcGJfMDQsIGZmX3BiXzgw
OwogCisgIC8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KICAgX19hc21fXyB2b2xhdGlsZSAoCisgICAg
ImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHhmZWZlZmVmZWZlZmVmZWZlICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl9mZV0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwg
ICAgMHgwMDAxMDAwMTAwMDEwMDAxICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRt
dGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9waF8wMV0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwMzAzMDMwMzAzMDMwMzAz
ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAg
JVtmZl9wYl8wM10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAg
ICAgICAgJVt0bXAwXSwgICAgMHgwNDA0MDQwNDA0MDQwNDA0ICAgICAgICAgICAgICAgICAgICAg
IFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl8wNF0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHg4
MDgwODA4MDgwODA4MDgwICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAg
ICAgJVt0bXAwXSwgICAgJVtmZl9wYl84MF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCiAgICAgTU1JX1NMTCglW3RtcDBdLCAlW3NyY19waXhlbF9zdGVwXSwgMHgwMikKICAgICBN
TUlfQUREVSglW3NyY19wdHJdLCAlW3NyY19wdHJdLCAlW3RtcDBdKQogICAgIE1NSV9TVUJVKCVb
c3JjX3B0cl0sICVbc3JjX3B0cl0sIDB4MDQpCkBAIC0yODgsMjMgKzI5OCwyMyBAQCB2b2lkIHZw
OF9sb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX21taSh1bnNpZ25lZCBjaGFyICpzcmNfcHRyLAog
ICAgIC8qIGFicyAocTItcTEpICovCiAgICAgInBhc3VidWIgICAgJVtmdG1wN10sICAgJVtmdG1w
MTFdLCAgICAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJ1c2IgICAg
JVtmdG1wN10sICAgJVtmdG1wN10sICAgICAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQi
Ci0gICAgIm9yICAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA3
XSAgICAgICAgICAgIFxuXHQiCisgICAgInBvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0s
ICAgICAgICAgICAlW2Z0bXA3XSAgICAgICAgICAgIFxuXHQiCiAgICAgLyogZnRtcDM6IGFicyhx
MS1xMCkgKi8KICAgICAicGFzdWJ1YiAgICAlW2Z0bXAzXSwgICAlW2Z0bXAxMF0sICAgICAgICAg
ICVbZnRtcDldICAgICAgICAgICAgXG5cdCIKICAgICAicHN1YnVzYiAgICAlW2Z0bXA3XSwgICAl
W2Z0bXAzXSwgICAgICAgICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIKLSAgICAib3IgICAg
ICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDddICAgICAgICAgICAg
XG5cdCIKKyAgICAicG9yICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVb
ZnRtcDddICAgICAgICAgICAgXG5cdCIKICAgICAvKiBmdG1wNDogYWJzKHAxLXAwKSAqLwogICAg
ICJwYXN1YnViICAgICVbZnRtcDRdLCAgICVbZnRtcDVdLCAgICAgICAgICAgJVtmdG1wNl0gICAg
ICAgICAgICBcblx0IgogICAgICJwc3VidXNiICAgICVbZnRtcDddLCAgICVbZnRtcDRdLCAgICAg
ICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgotICAgICJvciAgICAgICAgICVbZnRtcDBd
LCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wN10gICAgICAgICAgICBcblx0IgorICAgICJw
b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wN10gICAgICAg
ICAgICBcblx0IgogICAgIC8qIGFicyAocDItcDEpICovCiAgICAgInBhc3VidWIgICAgJVtmdG1w
N10sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2Z0bXA1XSAgICAgICAgICAgIFxuXHQiCiAgICAg
InBzdWJ1c2IgICAgJVtmdG1wN10sICAgJVtmdG1wN10sICAgICAgICAgICAlW2Z0bXA4XSAgICAg
ICAgICAgIFxuXHQiCi0gICAgIm9yICAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAg
ICAgICAlW2Z0bXA3XSAgICAgICAgICAgIFxuXHQiCisgICAgInBvciAgICAgICAgJVtmdG1wMF0s
ICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA3XSAgICAgICAgICAgIFxuXHQiCiAgICAgLyog
YWJzIChwMy1wMikgKi8KICAgICAicGFzdWJ1YiAgICAlW2Z0bXA3XSwgICAlW2Z0bXAxXSwgICAg
ICAgICAgICVbZnRtcDJdICAgICAgICAgICAgXG5cdCIKICAgICAicHN1YnVzYiAgICAlW2Z0bXA3
XSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIKLSAgICAi
b3IgICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDddICAgICAg
ICAgICAgXG5cdCIKKyAgICAicG9yICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAg
ICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIKIAogICAgICJnc2xkbGMxICAgICVbZnRtcDhd
LCAgIDB4MDcoJVtibGltaXRdKSAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJn
c2xkcmMxICAgICVbZnRtcDhdLCAgIDB4MDAoJVtibGltaXRdKSAgICAgICAgICAgICAgICAgICAg
ICAgICBcblx0IgpAQCAtMzE0LDE0ICszMjQsMTQgQEAgdm9pZCB2cDhfbG9vcF9maWx0ZXJfdmVy
dGljYWxfZWRnZV9tbWkodW5zaWduZWQgY2hhciAqc3JjX3B0ciwKICAgICAicGFkZHVzYiAgICAl
W2Z0bXAxMV0sICAlW2Z0bXAxMV0sICAgICAgICAgICVbZnRtcDExXSAgICAgICAgICAgXG5cdCIK
ICAgICAvKiBhYnMgKHAxLXExKSAqLwogICAgICJwYXN1YnViICAgICVbZnRtcDEyXSwgICVbZnRt
cDEwXSwgICAgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgotICAgICJhbmQgICAgICAg
ICVbZnRtcDEyXSwgICVbZnRtcDEyXSwgICAgICAgICAgJVtmZl9wYl9mZV0gICAgICAgICBcblx0
IgotICAgICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4MDEgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDFd
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJwYW5kICAgICAgICVb
ZnRtcDEyXSwgICVbZnRtcDEyXSwgICAgICAgICAgJVtmZl9wYl9mZV0gICAgICAgICBcblx0Igor
ICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4MDEgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRtcDFdICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJwc3JsaCAgICAgICVbZnRt
cDEyXSwgICVbZnRtcDEyXSwgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgogICAg
ICJwYWRkdXNiICAgICVbZnRtcDFdLCAgICVbZnRtcDExXSwgICAgICAgICAgJVtmdG1wMTJdICAg
ICAgICAgICBcblx0IgogICAgICJwc3VidXNiICAgICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAg
ICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgotICAgICJvciAgICAgICAgICVbZnRtcDBd
LCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgotICAgICJ4
b3IgICAgICAgICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAg
ICAgICBcblx0IgorICAgICJwb3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAg
ICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDFdLCAg
ICVbZnRtcDFdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgogICAgIC8qIGZ0
bXAwOm1hc2sgKi8KICAgICAicGNtcGVxYiAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAg
ICAgICVbZnRtcDFdICAgICAgICAgICAgXG5cdCIKIApAQCAtMzMxLDQxICszNDEsNDEgQEAgdm9p
ZCB2cDhfbG9vcF9maWx0ZXJfdmVydGljYWxfZWRnZV9tbWkodW5zaWduZWQgY2hhciAqc3JjX3B0
ciwKICAgICAvKiBmdG1wMzogYWJzKHExLXEwKSAgZnRtcDQ6IGFicyhwMS1wMCkgKi8KICAgICAi
cHN1YnVzYiAgICAlW2Z0bXA0XSwgICAlW2Z0bXA0XSwgICAgICAgICAgICVbZnRtcDhdICAgICAg
ICAgICAgXG5cdCIKICAgICAicHN1YnVzYiAgICAlW2Z0bXAzXSwgICAlW2Z0bXAzXSwgICAgICAg
ICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIKLSAgICAib3IgICAgICAgICAlW2Z0bXAyXSwg
ICAlW2Z0bXA0XSwgICAgICAgICAgICVbZnRtcDNdICAgICAgICAgICAgXG5cdCIKKyAgICAicG9y
ICAgICAgICAlW2Z0bXAyXSwgICAlW2Z0bXA0XSwgICAgICAgICAgICVbZnRtcDNdICAgICAgICAg
ICAgXG5cdCIKICAgICAicGNtcGVxYiAgICAlW2Z0bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgICAg
ICVbZnRtcDFdICAgICAgICAgICAgXG5cdCIKICAgICAicGNtcGVxYiAgICAlW2Z0bXAxXSwgICAl
W2Z0bXAxXSwgICAgICAgICAgICVbZnRtcDFdICAgICAgICAgICAgXG5cdCIKICAgICAvKiBmdG1w
MTpoZXYgKi8KLSAgICAieG9yICAgICAgICAlW2Z0bXAxXSwgICAlW2Z0bXAyXSwgICAgICAgICAg
ICVbZnRtcDFdICAgICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAxXSwgICAl
W2Z0bXAyXSwgICAgICAgICAgICVbZnRtcDFdICAgICAgICAgICAgXG5cdCIKIAotICAgICJ4b3Ig
ICAgICAgICVbZnRtcDEwXSwgICVbZnRtcDEwXSwgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAg
ICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRtcDldLCAgICVbZnRtcDldLCAgICAgICAgICAg
JVtmZl9wYl84MF0gICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRtcDZdLCAgICVb
ZnRtcDZdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgotICAgICJ4b3IgICAg
ICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBc
blx0IgorICAgICJweG9yICAgICAgICVbZnRtcDEwXSwgICVbZnRtcDEwXSwgICAgICAgICAgJVtm
Zl9wYl84MF0gICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDldLCAgICVbZnRt
cDldLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgorICAgICJweG9yICAgICAg
ICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0
IgorICAgICJweG9yICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAgICAgJVtmZl9w
Yl84MF0gICAgICAgICBcblx0IgogCiAgICAgInBzdWJzYiAgICAgJVtmdG1wMl0sICAgJVtmdG1w
NV0sICAgICAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCi0gICAgImFuZCAgICAgICAg
JVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2Z0bXAxXSAgICAgICAgICAgIFxuXHQi
CisgICAgInBhbmQgICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2Z0bXAx
XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJzYiAgICAgJVtmdG1wM10sICAgJVtmdG1wOV0s
ICAgICAgICAgICAlW2Z0bXA2XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBhZGRzYiAgICAgJVtm
dG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCiAg
ICAgInBhZGRzYiAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2Z0bXAzXSAg
ICAgICAgICAgIFxuXHQiCiAgICAgInBhZGRzYiAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAg
ICAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCiAgICAgLyogZnRtcDI6ZmlsdGVyX3Zh
bHVlICovCi0gICAgImFuZCAgICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAl
W2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCisgICAgInBhbmQgICAgICAgJVtmdG1wMl0sICAgJVtm
dG1wMl0sICAgICAgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCiAKICAgICAicGFkZHNi
ICAgICAlW2Z0bXAxMV0sICAlW2Z0bXAyXSwgICAgICAgICAgICVbZmZfcGJfMDRdICAgICAgICAg
XG5cdCIKICAgICAicGFkZHNiICAgICAlW2Z0bXAxMl0sICAlW2Z0bXAyXSwgICAgICAgICAgICVb
ZmZfcGJfMDNdICAgICAgICAgXG5cdCIKIAotICAgICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4
MGIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICJtdGMxICAg
ICAgICVbdG1wMF0sICAgICVbZnRtcDddICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
blx0IgotICAgICJ4b3IgICAgICAgJVtmdG1wMF0sICAgICVbZnRtcDBdLCAgICAgICAgICAgJVtm
dG1wMF0gICAgICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgJVtmdG1wOF0sICAgICVbZnRt
cDhdLCAgICAgICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAg
ICVbdG1wMF0sICAgIDB4MGIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0
IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRtcDddICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgJVtmdG1wMF0sICAgICVbZnRtcDBd
LCAgICAgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgJVtm
dG1wOF0sICAgICVbZnRtcDhdLCAgICAgICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0Igog
ICAgICJwdW5wY2tsYmggJVtmdG1wMF0sICAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMTJd
ICAgICAgICAgICBcblx0IgogICAgICJwdW5wY2toYmggJVtmdG1wOF0sICAgICVbZnRtcDhdLCAg
ICAgICAgICAgJVtmdG1wMTJdICAgICAgICAgICBcblx0IgogICAgICJwc3JhaCAgICAgJVtmdG1w
MF0sICAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wN10gICAgICAgICAgICBcblx0IgogICAg
ICJwc3JhaCAgICAgJVtmdG1wOF0sICAgICVbZnRtcDhdLCAgICAgICAgICAgJVtmdG1wN10gICAg
ICAgICAgICBcblx0IgogICAgICJwYWNrc3NoYiAgJVtmdG1wMTJdLCAgICVbZnRtcDBdLCAgICAg
ICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgogCi0gICAgInhvciAgICAgICAlW2Z0bXAw
XSwgICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCi0gICAg
InhvciAgICAgICAlW2Z0bXA4XSwgICAgJVtmdG1wOF0sICAgICAgICAgICAlW2Z0bXA4XSAgICAg
ICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAlW2Z0bXAwXSwgICAgJVtmdG1wMF0sICAgICAg
ICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAlW2Z0bXA4XSwg
ICAgJVtmdG1wOF0sICAgICAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCiAgICAgInB1
bnBja2xiaCAlW2Z0bXAwXSwgICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAxMV0gICAgICAg
ICAgIFxuXHQiCiAgICAgInB1bnBja2hiaCAlW2Z0bXA4XSwgICAgJVtmdG1wOF0sICAgICAgICAg
ICAlW2Z0bXAxMV0gICAgICAgICAgIFxuXHQiCiAgICAgInBzcmFoICAgICAlW2Z0bXAwXSwgICAg
JVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA3XSAgICAgICAgICAgIFxuXHQiCkBAIC0zNzMsMjIg
KzM4MywyMiBAQCB2b2lkIHZwOF9sb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX21taSh1bnNpZ25l
ZCBjaGFyICpzcmNfcHRyLAogICAgICJwYWNrc3NoYiAgJVtmdG1wMTFdLCAgICVbZnRtcDBdLCAg
ICAgICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgogCiAgICAgInBzdWJzYiAgICAgJVtm
dG1wOV0sICAgJVtmdG1wOV0sICAgICAgICAgICAlW2Z0bXAxMV0gICAgICAgICAgIFxuXHQiCi0g
ICAgInhvciAgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgICAgICAgICAlW2ZmX3BiXzgw
XSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAg
ICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCiAgICAgInBhZGRzYiAgICAgJVtmdG1w
Nl0sICAgJVtmdG1wNl0sICAgICAgICAgICAlW2Z0bXAxMl0gICAgICAgICAgIFxuXHQiCi0gICAg
InhvciAgICAgICAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAg
ICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAgICAg
ICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCiAgICAgInBhZGRzaCAgICAgJVtmdG1wMF0s
ICAgJVtmdG1wMF0sICAgICAgICAgICAlW2ZmX3BoXzAxXSAgICAgICAgIFxuXHQiCiAgICAgInBh
ZGRzaCAgICAgJVtmdG1wOF0sICAgJVtmdG1wOF0sICAgICAgICAgICAlW2ZmX3BoXzAxXSAgICAg
ICAgIFxuXHQiCiAKLSAgICAibGkgICAgICAgICAlW3RtcDBdLCAgICAweDAxICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKLSAgICAibXRjMSAgICAgICAlW3RtcDBdLCAg
ICAlW2Z0bXA3XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKKyAgICAiZGxp
ICAgICAgICAlW3RtcDBdLCAgICAweDAxICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXG5cdCIKKyAgICAiZG10YzEgICAgICAlW3RtcDBdLCAgICAlW2Z0bXA3XSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAicHNyYWggICAgICAlW2Z0bXAwXSwgICAl
W2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIKICAgICAicHNyYWgg
ICAgICAlW2Z0bXA4XSwgICAlW2Z0bXA4XSwgICAgICAgICAgICVbZnRtcDddICAgICAgICAgICAg
XG5cdCIKICAgICAicGFja3NzaGIgICAlW2Z0bXAyXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVb
ZnRtcDhdICAgICAgICAgICAgXG5cdCIKICAgICAicGFuZG4gICAgICAlW2Z0bXAyXSwgICAlW2Z0
bXAxXSwgICAgICAgICAgICVbZnRtcDJdICAgICAgICAgICAgXG5cdCIKICAgICAicHN1YnNiICAg
ICAlW2Z0bXAxMF0sICAlW2Z0bXAxMF0sICAgICAgICAgICVbZnRtcDJdICAgICAgICAgICAgXG5c
dCIKLSAgICAieG9yICAgICAgICAlW2Z0bXAxMF0sICAlW2Z0bXAxMF0sICAgICAgICAgICVbZmZf
cGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAxMF0sICAlW2Z0bXAx
MF0sICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKICAgICAicGFkZHNiICAgICAl
W2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZnRtcDJdICAgICAgICAgICAgXG5cdCIK
LSAgICAieG9yICAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZmZfcGJf
ODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwg
ICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKIAogICAgIC8qIGZ0bXA1OiAqb3Ax
IDsgZnRtcDY6ICpvcDAgKi8KICAgICAicHVucGNrbGJoICAlW2Z0bXAyXSwgICAlW2Z0bXA1XSwg
ICAgICAgICAgICVbZnRtcDZdICAgICAgICAgICAgXG5cdCIKQEAgLTQwOCw3ICs0MTgsNyBAQCB2
b2lkIHZwOF9sb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX21taSh1bnNpZ25lZCBjaGFyICpzcmNf
cHRyLAogCiAgICAgImxpICAgICAgICAgJVt0bXAwXSwgICAgMHgyMCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgIm10YzEgICAgICAgJVt0bXAwXSwgICAgJVtm
dG1wOV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCi0gICAgImRzcmwgICAg
ICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxu
XHQiCisgICAgInNzcmxkICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2Z0
bXA5XSAgICAgICAgICAgIFxuXHQiCiAgICAgTU1JX1NMTCglW3RtcDBdLCAlW3NyY19waXhlbF9z
dGVwXSwgMHgwMikKICAgICBNTUlfU1VCVSglW2FkZHIxXSwgJVthZGRyMF0sICVbdG1wMF0pCiAg
ICAgImdzc3dsYzEgICAgJVtmdG1wMl0sICAgMHgwNSglW2FkZHIxXSkgICAgICAgICAgICAgICAg
ICAgICAgICAgIFxuXHQiCkBAIC00MTksMjEgKzQyOSwyMSBAQCB2b2lkIHZwOF9sb29wX2ZpbHRl
cl92ZXJ0aWNhbF9lZGdlX21taSh1bnNpZ25lZCBjaGFyICpzcmNfcHRyLAogICAgICJnc3N3bGMx
ICAgICVbZnRtcDZdLCAgIDB4MDUoJVthZGRyMV0pICAgICAgICAgICAgICAgICAgICAgICAgICBc
blx0IgogICAgICJnc3N3cmMxICAgICVbZnRtcDZdLCAgIDB4MDIoJVthZGRyMV0pICAgICAgICAg
ICAgICAgICAgICAgICAgICBcblx0IgogCi0gICAgImRzcmwgICAgICAgJVtmdG1wNl0sICAgJVtm
dG1wNl0sICAgICAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiCisgICAgInNzcmxkICAg
ICAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAgICAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxu
XHQiCiAgICAgTU1JX1NVQlUoJVthZGRyMV0sICVbc3JjX3B0cl0sICVbc3JjX3BpeGVsX3N0ZXBd
KQogICAgICJnc3N3bGMxICAgICVbZnRtcDZdLCAgIDB4MDUoJVthZGRyMV0pICAgICAgICAgICAg
ICAgICAgICAgICAgICBcblx0IgogICAgICJnc3N3cmMxICAgICVbZnRtcDZdLCAgIDB4MDIoJVth
ZGRyMV0pICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJnc3N3bGMxICAgICVb
ZnRtcDFdLCAgIDB4MDUoJVtzcmNfcHRyXSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0Igog
ICAgICJnc3N3cmMxICAgICVbZnRtcDFdLCAgIDB4MDIoJVtzcmNfcHRyXSkgICAgICAgICAgICAg
ICAgICAgICAgICBcblx0IgogCi0gICAgImRzcmwgICAgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0s
ICAgICAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiCisgICAgInNzcmxkICAgICAgJVtm
dG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiCiAg
ICAgImdzc3dsYzEgICAgJVtmdG1wMV0sICAgMHgwNSglW2FkZHIwXSkgICAgICAgICAgICAgICAg
ICAgICAgICAgIFxuXHQiCiAgICAgImdzc3dyYzEgICAgJVtmdG1wMV0sICAgMHgwMiglW2FkZHIw
XSkgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgTU1JX0FERFUoJVthZGRyMV0s
ICVbYWRkcjBdLCAlW3NyY19waXhlbF9zdGVwXSkKICAgICAiZ3Nzd2xjMSAgICAlW2Z0bXA1XSwg
ICAweDA1KCVbYWRkcjFdKSAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAiZ3Nz
d3JjMSAgICAlW2Z0bXA1XSwgICAweDAyKCVbYWRkcjFdKSAgICAgICAgICAgICAgICAgICAgICAg
ICAgXG5cdCIKIAotICAgICJkc3JsICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAg
ICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgorICAgICJzc3JsZCAgICAgICVbZnRtcDVdLCAg
ICVbZnRtcDVdLCAgICAgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgogICAgIE1NSV9B
RERVKCVbYWRkcjFdLCAlW2FkZHIwXSwgJVt0bXAwXSkKICAgICAiZ3Nzd2xjMSAgICAlW2Z0bXA1
XSwgICAweDA1KCVbYWRkcjFdKSAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAi
Z3Nzd3JjMSAgICAlW2Z0bXA1XSwgICAweDAyKCVbYWRkcjFdKSAgICAgICAgICAgICAgICAgICAg
ICAgICAgXG5cdCIKQEAgLTQ1MCwxNSArNDYwLDE2IEBAIHZvaWQgdnA4X2xvb3BfZmlsdGVyX3Zl
cnRpY2FsX2VkZ2VfbW1pKHVuc2lnbmVkIGNoYXIgKnNyY19wdHIsCiAgICAgICBbZnRtcDEwXSI9
JmYiKGZ0bXBbMTBdKSwgICAgICAgICAgICBbZnRtcDExXSI9JmYiKGZ0bXBbMTFdKSwKICAgICAg
IFtmdG1wMTJdIj0mZiIoZnRtcFsxMl0pLCAgICAgICAgICAgIFt0bXAwXSI9JnIiKHRtcFswXSks
CiAgICAgICBbYWRkcjBdIj0mciIoYWRkclswXSksICAgICAgICAgICAgW2FkZHIxXSI9JnIiKGFk
ZHJbMV0pLAotICAgICAgW3NyY19wdHJdIismciIoc3JjX3B0ciksICAgICAgICAgIFtjb3VudF0i
KyZyIihjb3VudCkKKyAgICAgIFtzcmNfcHRyXSIrJnIiKHNyY19wdHIpLCAgICAgICAgICBbY291
bnRdIismciIoY291bnQpLAorICAgICAgW2ZmX3BoXzAxXSI9JmYiKGZmX3BoXzAxKSwgICAgICAg
IFtmZl9wYl8wM10iPSZmIihmZl9wYl8wMyksCisgICAgICBbZmZfcGJfMDRdIj0mZiIoZmZfcGJf
MDQpLCAgICAgICAgW2ZmX3BiXzgwXSI9JmYiKGZmX3BiXzgwKSwKKyAgICAgIFtmZl9wYl9mZV0i
PSZmIihmZl9wYl9mZSkKICAgICA6IFtsaW1pdF0iciIobGltaXQpLCAgICAgICAgICAgICAgICBb
YmxpbWl0XSJyIihibGltaXQpLAogICAgICAgW3RocmVzaF0iciIodGhyZXNoKSwKLSAgICAgIFtz
cmNfcGl4ZWxfc3RlcF0iciIoKG1pcHNfcmVnKXNyY19waXhlbF9zdGVwKSwKLSAgICAgIFtmZl9w
aF8wMV0iZiIoZmZfcGhfMDEpLCAgICAgICAgICBbZmZfcGJfMDNdImYiKGZmX3BiXzAzKSwKLSAg
ICAgIFtmZl9wYl8wNF0iZiIoZmZfcGJfMDQpLCAgICAgICAgICBbZmZfcGJfODBdImYiKGZmX3Bi
XzgwKSwKLSAgICAgIFtmZl9wYl9mZV0iZiIoZmZfcGJfZmUpCisgICAgICBbc3JjX3BpeGVsX3N0
ZXBdInIiKChtaXBzX3JlZylzcmNfcGl4ZWxfc3RlcCkKICAgICA6ICJtZW1vcnkiCiAgICk7Cisg
IC8qIGNsYW5nLWZvcm1hdCBvbiAqLwogfQogCiAvKiBjbGFuZy1mb3JtYXQgb2ZmICovCkBAIC00
ODQsMTAgKzQ5NSwyOSBAQCB2b2lkIHZwOF9sb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX21taSh1
bnNpZ25lZCBjaGFyICpzcmNfcHRyLAogdm9pZCB2cDhfbWJsb29wX2ZpbHRlcl9ob3Jpem9udGFs
X2VkZ2VfbW1pKAogICAgIHVuc2lnbmVkIGNoYXIgKnNyY19wdHIsIGludCBzcmNfcGl4ZWxfc3Rl
cCwgY29uc3QgdW5zaWduZWQgY2hhciAqYmxpbWl0LAogICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIg
KmxpbWl0LCBjb25zdCB1bnNpZ25lZCBjaGFyICp0aHJlc2gsIGludCBjb3VudCkgewotICB1aW50
MzJfdCB0bXBbMV07CisgIHVpbnQ2NF90IHRtcFsxXTsKICAgZG91YmxlIGZ0bXBbMTNdOworICBk
b3VibGUgZmZfcGJfZmUsIGZmX3BiXzgwLCBmZl9wYl8wNCwgZmZfcGJfMDMsIGZmX3BoXzAwM2Ys
IGZmX3BoXzA5MDAsCisgICAgICBmZl9waF8xMjAwLCBmZl9waF8xYjAwOwogCisgIC8qIGNsYW5n
LWZvcm1hdCBvZmYgKi8KICAgX19hc21fXyB2b2xhdGlsZSAoCisgICAgImRsaSAgICAgICAgJVt0
bXAwXSwgICAgMHhmZWZlZmVmZWZlZmVmZWZlICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisg
ICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl9mZV0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHg4MDgwODA4MDgw
ODA4MDgwICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAw
XSwgICAgJVtmZl9wYl84MF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAg
ImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwNDA0MDQwNDA0MDQwNDA0ICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl8wNF0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwg
ICAgMHgwMzAzMDMwMzAzMDMwMzAzICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRt
dGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl8wM10gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwMDNmMDAzZjAwM2YwMDNm
ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAg
JVtmZl9waF8wMDNmXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAg
ICAgICAgJVt0bXAwXSwgICAgMHgwOTAwMDkwMDA5MDAwOTAwICAgICAgICAgICAgICAgICAgICAg
IFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9waF8wOTAwXSAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgx
MjAwMTIwMDEyMDAxMjAwICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAg
ICAgJVt0bXAwXSwgICAgJVtmZl9waF8xMjAwXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgxYjAwMWIwMDFiMDAxYjAwICAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9w
aF8xYjAwXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgTU1JX1NMTCglW3Rt
cDBdLCAlW3NyY19waXhlbF9zdGVwXSwgMHgwMikKICAgICBNTUlfU1VCVSglW3NyY19wdHJdLCAl
W3NyY19wdHJdLCAlW3RtcDBdKQogICAgICIxOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgpAQCAtNTMyLDMxICs1NjIsMzEg
QEAgdm9pZCB2cDhfbWJsb29wX2ZpbHRlcl9ob3Jpem9udGFsX2VkZ2VfbW1pKAogICAgICJwc3Vi
dXNiICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wOV0gICAgICAgICAg
ICBcblx0IgogICAgICJwYXN1YnViICAgICVbZnRtcDFdLCAgICVbZnRtcDNdLCAgICAgICAgICAg
JVtmdG1wNF0gICAgICAgICAgICBcblx0IgogICAgICJwc3VidXNiICAgICVbZnRtcDFdLCAgICVb
ZnRtcDFdLCAgICAgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgotICAgICJvciAgICAg
ICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBc
blx0IgorICAgICJwb3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtm
dG1wMV0gICAgICAgICAgICBcblx0IgogICAgICJwYXN1YnViICAgICVbZnRtcDEwXSwgICVbZnRt
cDRdLCAgICAgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgogICAgICJwc3VidXNiICAg
ICVbZnRtcDFdLCAgICVbZnRtcDEwXSwgICAgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0
IgotICAgICJvciAgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1w
MV0gICAgICAgICAgICBcblx0IgorICAgICJwb3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBd
LCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgogICAgICJwYXN1YnViICAgICVb
ZnRtcDExXSwgICVbZnRtcDddLCAgICAgICAgICAgJVtmdG1wNl0gICAgICAgICAgICBcblx0Igog
ICAgICJwc3VidXNiICAgICVbZnRtcDFdLCAgICVbZnRtcDExXSwgICAgICAgICAgJVtmdG1wOV0g
ICAgICAgICAgICBcblx0IgotICAgICJvciAgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAg
ICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgorICAgICJwb3IgICAgICAgICVbZnRt
cDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgogICAg
ICJwYXN1YnViICAgICVbZnRtcDFdLCAgICVbZnRtcDhdLCAgICAgICAgICAgJVtmdG1wN10gICAg
ICAgICAgICBcblx0IgogICAgICJwc3VidXNiICAgICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAg
ICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgotICAgICJvciAgICAgICAgICVbZnRtcDBd
LCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgorICAgICJw
b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAg
ICAgICBcblx0IgogICAgICJwYXN1YnViICAgICVbZnRtcDFdLCAgICVbZnRtcDJdLCAgICAgICAg
ICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgogICAgICJwc3VidXNiICAgICVbZnRtcDFdLCAg
ICVbZnRtcDFdLCAgICAgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgotICAgICJvciAg
ICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAg
ICBcblx0IgorICAgICJwb3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAg
JVtmdG1wMV0gICAgICAgICAgICBcblx0IgogCiAgICAgInBhc3VidWIgICAgJVtmdG1wMV0sICAg
JVtmdG1wNV0sICAgICAgICAgICAlW2Z0bXA2XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR1
c2IgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAxXSAgICAgICAgICAg
IFxuXHQiCiAgICAgInBhc3VidWIgICAgJVtmdG1wMl0sICAgJVtmdG1wNF0sICAgICAgICAgICAl
W2Z0bXA3XSAgICAgICAgICAgIFxuXHQiCi0gICAgImFuZCAgICAgICAgJVtmdG1wMl0sICAgJVtm
dG1wMl0sICAgICAgICAgICAlW2ZmX3BiX2ZlXSAgICAgICAgIFxuXHQiCi0gICAgImxpICAgICAg
ICAgJVt0bXAwXSwgICAgMHgwMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCi0gICAgIm10YzEgICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCisgICAgInBhbmQgICAgICAgJVtmdG1wMl0sICAgJVtmdG1w
Ml0sICAgICAgICAgICAlW2ZmX3BiX2ZlXSAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAg
JVt0bXAwXSwgICAgMHgwMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQi
CisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFxuXHQiCiAgICAgInBzcmxoICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0s
ICAgICAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR1c2IgICAgJVtm
dG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAyXSAgICAgICAgICAgIFxuXHQiCiAg
ICAgInBzdWJ1c2IgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAxMl0g
ICAgICAgICAgIFxuXHQiCi0gICAgIm9yICAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAg
ICAgICAgICAlW2Z0bXAxXSAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1w
OV0sICAgJVtmdG1wOV0sICAgICAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiCisgICAg
InBvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAxXSAgICAg
ICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgICAg
ICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiCiAgICAgLyogZnRtcDA6IG1hc2sgKi8KICAg
ICAicGNtcGVxYiAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDldICAg
ICAgICAgICAgXG5cdCIKIApAQCAtNTY1LDI3ICs1OTUsMjcgQEAgdm9pZCB2cDhfbWJsb29wX2Zp
bHRlcl9ob3Jpem9udGFsX2VkZ2VfbW1pKAogICAgICJwc3VidXNiICAgICVbZnRtcDFdLCAgICVb
ZnRtcDEwXSwgICAgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgogICAgICJwc3VidXNi
ICAgICVbZnRtcDJdLCAgICVbZnRtcDExXSwgICAgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBc
blx0IgogICAgICJwYWRkYiAgICAgICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAgICAgICAgJVtm
dG1wMl0gICAgICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRtcDJdLCAgICVbZnRt
cDJdLCAgICAgICAgICAgJVtmdG1wMl0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAg
ICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wMl0gICAgICAgICAgICBcblx0
IgogICAgICJwY21wZXFiICAgICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAgICAgICAgJVtmdG1w
Ml0gICAgICAgICAgICBcblx0IgogICAgICJwY21wZXFiICAgICVbZnRtcDJdLCAgICVbZnRtcDJd
LCAgICAgICAgICAgJVtmdG1wMl0gICAgICAgICAgICBcblx0IgogICAgIC8qIGZ0bXAxOiBoZXYg
Ki8KLSAgICAieG9yICAgICAgICAlW2Z0bXAxXSwgICAlW2Z0bXAxXSwgICAgICAgICAgICVbZnRt
cDJdICAgICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAxXSwgICAlW2Z0bXAx
XSwgICAgICAgICAgICVbZnRtcDJdICAgICAgICAgICAgXG5cdCIKIAotICAgICJ4b3IgICAgICAg
ICVbZnRtcDRdLCAgICVbZnRtcDRdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0
IgotICAgICJ4b3IgICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAgICAgJVtmZl9w
Yl84MF0gICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZd
LCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVb
ZnRtcDddLCAgICVbZnRtcDddLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0Igor
ICAgICJweG9yICAgICAgICVbZnRtcDRdLCAgICVbZnRtcDRdLCAgICAgICAgICAgJVtmZl9wYl84
MF0gICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAg
ICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRt
cDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgorICAg
ICJweG9yICAgICAgICVbZnRtcDddLCAgICVbZnRtcDddLCAgICAgICAgICAgJVtmZl9wYl84MF0g
ICAgICAgICBcblx0IgogICAgICJwc3Vic2IgICAgICVbZnRtcDJdLCAgICVbZnRtcDRdLCAgICAg
ICAgICAgJVtmdG1wN10gICAgICAgICAgICBcblx0IgogICAgICJwc3Vic2IgICAgICVbZnRtcDld
LCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgogICAgICJw
YWRkc2IgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wOV0gICAgICAg
ICAgICBcblx0IgogICAgICJwYWRkc2IgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAg
ICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgogICAgICJwYWRkc2IgICAgICVbZnRtcDJdLCAg
ICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgotICAgICJhbmQg
ICAgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wMF0gICAgICAgICAg
ICBcblx0IgorICAgICJwYW5kICAgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAg
JVtmdG1wMF0gICAgICAgICAgICBcblx0IgogICAgICJwYW5kbiAgICAgICVbZnRtcDEyXSwgICVb
ZnRtcDFdLCAgICAgICAgICAgJVtmdG1wMl0gICAgICAgICAgICBcblx0IgotICAgICJhbmQgICAg
ICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBc
blx0IgorICAgICJwYW5kICAgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtm
dG1wMV0gICAgICAgICAgICBcblx0IgogCi0gICAgImxpICAgICAgICAgJVt0bXAwXSwgICAgMHgw
YiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCi0gICAgIm10YzEgICAg
ICAgJVt0bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwYiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmdG1w
OV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgInBhZGRzYiAgICAg
JVtmdG1wMF0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2ZmX3BiXzAzXSAgICAgICAgIFxuXHQi
CiAgICAgVlA4X01CTE9PUF9IUFNSQUIKICAgICAicGFkZHNiICAgICAlW2Z0bXA1XSwgICAlW2Z0
bXA1XSwgICAgICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKQEAgLTU5MywxNSArNjIz
LDE1IEBAIHZvaWQgdnA4X21ibG9vcF9maWx0ZXJfaG9yaXpvbnRhbF9lZGdlX21taSgKICAgICBW
UDhfTUJMT09QX0hQU1JBQgogICAgICJwc3Vic2IgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAg
ICAgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgogCi0gICAgImxpICAgICAgICAgJVt0
bXAwXSwgICAgMHgwNyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCi0g
ICAgIm10YzEgICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAg
ICAgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAw
XSwgICAgMHgwNyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAg
ImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAg
ICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCiAKICAgICBWUDhfTUJMT09QX0hQU1JBQl9B
REQoJVtmZl9waF8xYjAwXSkKICAgICAicHN1YnNiICAgICAlW2Z0bXA2XSwgICAlW2Z0bXA2XSwg
ICAgICAgICAgICVbZnRtcDFdICAgICAgICAgICAgXG5cdCIKICAgICAicGFkZHNiICAgICAlW2Z0
bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZnRtcDFdICAgICAgICAgICAgXG5cdCIKLSAg
ICAieG9yICAgICAgICAlW2Z0bXA2XSwgICAlW2Z0bXA2XSwgICAgICAgICAgICVbZmZfcGJfODBd
ICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAg
ICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA2
XSwgICAlW2Z0bXA2XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAi
cHhvciAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZmZfcGJfODBdICAg
ICAgICAgXG5cdCIKICAgICBNTUlfU0xMKCVbdG1wMF0sICVbc3JjX3BpeGVsX3N0ZXBdLCAweDAy
KQogICAgIE1NSV9TVUJVKCVbc3JjX3B0cl0sICVbc3JjX3B0cl0sICVbdG1wMF0pCiAgICAgImdz
c2RsYzEgICAgJVtmdG1wNV0sICAgMHgwNyglW3NyY19wdHJdKSAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCkBAIC02MTMsOCArNjQzLDggQEAgdm9pZCB2cDhfbWJsb29wX2ZpbHRlcl9ob3Jp
em9udGFsX2VkZ2VfbW1pKAogICAgIFZQOF9NQkxPT1BfSFBTUkFCX0FERCglW2ZmX3BoXzEyMDBd
KQogICAgICJwYWRkc2IgICAgICVbZnRtcDRdLCAgICVbZnRtcDRdLCAgICAgICAgICAgJVtmdG1w
MV0gICAgICAgICAgICBcblx0IgogICAgICJwc3Vic2IgICAgICVbZnRtcDddLCAgICVbZnRtcDdd
LCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVb
ZnRtcDRdLCAgICVbZnRtcDRdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0Igot
ICAgICJ4b3IgICAgICAgICVbZnRtcDddLCAgICVbZnRtcDddLCAgICAgICAgICAgJVtmZl9wYl84
MF0gICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDRdLCAgICVbZnRtcDRdLCAg
ICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRt
cDddLCAgICVbZnRtcDddLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgogICAg
IE1NSV9BRERVKCVbc3JjX3B0cl0sICVbc3JjX3B0cl0sICVbc3JjX3BpeGVsX3N0ZXBdKQogICAg
ICJnc3NkbGMxICAgICVbZnRtcDddLCAgIDB4MDcoJVtzcmNfcHRyXSkgICAgICAgICAgICAgICAg
ICAgICAgICBcblx0IgogICAgICJnc3NkcmMxICAgICVbZnRtcDddLCAgIDB4MDAoJVtzcmNfcHRy
XSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgpAQCAtNjI0LDEyICs2NTQsMTIgQEAgdm9p
ZCB2cDhfbWJsb29wX2ZpbHRlcl9ob3Jpem9udGFsX2VkZ2VfbW1pKAogICAgICJnc3NkcmMxICAg
ICVbZnRtcDRdLCAgIDB4MDAoJVtzcmNfcHRyXSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0
IgogCiAgICAgVlA4X01CTE9PUF9IUFNSQUJfQUREKCVbZmZfcGhfMDkwMF0pCi0gICAgInhvciAg
ICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAg
IFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wOF0sICAgJVtmdG1wOF0sICAgICAgICAgICAl
W2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wM10sICAgJVtm
dG1wM10sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAg
ICAgJVtmdG1wOF0sICAgJVtmdG1wOF0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxu
XHQiCiAgICAgInBhZGRzYiAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2Z0
bXAxXSAgICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJzYiAgICAgJVtmdG1wOF0sICAgJVtmdG1w
OF0sICAgICAgICAgICAlW2Z0bXAxXSAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAg
JVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQi
Ci0gICAgInhvciAgICAgICAgJVtmdG1wOF0sICAgJVtmdG1wOF0sICAgICAgICAgICAlW2ZmX3Bi
XzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10s
ICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtm
dG1wOF0sICAgJVtmdG1wOF0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCiAg
ICAgTU1JX0FERFUoJVtzcmNfcHRyXSwgJVtzcmNfcHRyXSwgJVt0bXAwXSkKICAgICAiZ3NzZGxj
MSAgICAlW2Z0bXA4XSwgICAweDA3KCVbc3JjX3B0cl0pICAgICAgICAgICAgICAgICAgICAgICAg
XG5cdCIKICAgICAiZ3NzZHJjMSAgICAlW2Z0bXA4XSwgICAweDAwKCVbc3JjX3B0cl0pICAgICAg
ICAgICAgICAgICAgICAgICAgXG5cdCIKQEAgLTY0OSwyMSArNjc5LDIzIEBAIHZvaWQgdnA4X21i
bG9vcF9maWx0ZXJfaG9yaXpvbnRhbF9lZGdlX21taSgKICAgICAgIFtmdG1wOF0iPSZmIihmdG1w
WzhdKSwgICAgICAgICAgICAgIFtmdG1wOV0iPSZmIihmdG1wWzldKSwKICAgICAgIFtmdG1wMTBd
Ij0mZiIoZnRtcFsxMF0pLCAgICAgICAgICAgIFtmdG1wMTFdIj0mZiIoZnRtcFsxMV0pLAogICAg
ICAgW2Z0bXAxMl0iPSZmIihmdG1wWzEyXSksICAgICAgICAgICAgW3RtcDBdIj0mciIodG1wWzBd
KSwKLSAgICAgIFtzcmNfcHRyXSIrJnIiKHNyY19wdHIpLCAgICAgICAgICAgIFtjb3VudF0iKyZy
Iihjb3VudCkKKyAgICAgIFtzcmNfcHRyXSIrJnIiKHNyY19wdHIpLCAgICAgICAgICAgIFtjb3Vu
dF0iKyZyIihjb3VudCksCisgICAgICBbZmZfcGJfZmVdIj0mZiIoZmZfcGJfZmUpLCAgICAgICAg
ICBbZmZfcGJfODBdIj0mZiIoZmZfcGJfODApLAorICAgICAgW2ZmX3BiXzA0XSI9JmYiKGZmX3Bi
XzA0KSwgICAgICAgICAgW2ZmX3BiXzAzXSI9JmYiKGZmX3BiXzAzKSwKKyAgICAgIFtmZl9waF8w
OTAwXSI9JmYiKGZmX3BoXzA5MDApLCAgICAgIFtmZl9waF8xYjAwXSI9JmYiKGZmX3BoXzFiMDAp
LAorICAgICAgW2ZmX3BoXzEyMDBdIj0mZiIoZmZfcGhfMTIwMCksICAgICAgW2ZmX3BoXzAwM2Zd
Ij0mZiIoZmZfcGhfMDAzZikKICAgICA6IFtsaW1pdF0iciIobGltaXQpLCAgICAgICAgICAgICAg
ICAgIFtibGltaXRdInIiKGJsaW1pdCksCiAgICAgICBbdGhyZXNoXSJyIih0aHJlc2gpLAotICAg
ICAgW3NyY19waXhlbF9zdGVwXSJyIigobWlwc19yZWcpc3JjX3BpeGVsX3N0ZXApLAotICAgICAg
W2ZmX3BiX2ZlXSJmIihmZl9wYl9mZSksICAgICAgICAgICAgW2ZmX3BiXzgwXSJmIihmZl9wYl84
MCksCi0gICAgICBbZmZfcGJfMDRdImYiKGZmX3BiXzA0KSwgICAgICAgICAgICBbZmZfcGJfMDNd
ImYiKGZmX3BiXzAzKSwKLSAgICAgIFtmZl9waF8wOTAwXSJmIihmZl9waF8wOTAwKSwgICAgICAg
IFtmZl9waF8xYjAwXSJmIihmZl9waF8xYjAwKSwKLSAgICAgIFtmZl9waF8xMjAwXSJmIihmZl9w
aF8xMjAwKSwgICAgICAgIFtmZl9waF8wMDNmXSJmIihmZl9waF8wMDNmKQorICAgICAgW3NyY19w
aXhlbF9zdGVwXSJyIigobWlwc19yZWcpc3JjX3BpeGVsX3N0ZXApCiAgICAgOiAibWVtb3J5Igog
ICApOworICAvKiBjbGFuZy1mb3JtYXQgb24gKi8KIH0KIAorLyogY2xhbmctZm9ybWF0IG9mZiAq
LwogI2RlZmluZSBWUDhfTUJMT09QX1ZQU1JBQl9BRERIICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXAotICAieG9yICAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwg
ICAgICAgICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIgXAotICAieG9yICAgICAgICAlW2Z0
bXA4XSwgICAlW2Z0bXA4XSwgICAgICAgICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIgXAor
ICAicHhvciAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZnRtcDddICAg
ICAgICAgICAgXG5cdCIgXAorICAicHhvciAgICAgICAlW2Z0bXA4XSwgICAlW2Z0bXA4XSwgICAg
ICAgICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIgXAogICAicHVucGNrbGJoICAlW2Z0bXA3
XSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIgXAogICAi
cHVucGNraGJoICAlW2Z0bXA4XSwgICAlW2Z0bXA4XSwgICAgICAgICAgICVbZnRtcDBdICAgICAg
ICAgICAgXG5cdCIKIApAQCAtNjczLDE1ICs3MDUsMzAgQEAgdm9pZCB2cDhfbWJsb29wX2ZpbHRl
cl9ob3Jpem9udGFsX2VkZ2VfbW1pKAogICAicHNyYWggICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3
XSwgICAgICAgICAgICVbZnRtcDEyXSAgICAgICAgICAgXG5cdCIgXAogICAicHNyYWggICAgICAl
W2Z0bXA4XSwgICAlW2Z0bXA4XSwgICAgICAgICAgICVbZnRtcDEyXSAgICAgICAgICAgXG5cdCIg
XAogICAicGFja3NzaGIgICAlW2Z0bXAzXSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZnRtcDhd
ICAgICAgICAgICAgXG5cdCIKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCiB2b2lkIHZwOF9tYmxv
b3BfZmlsdGVyX3ZlcnRpY2FsX2VkZ2VfbW1pKAogICAgIHVuc2lnbmVkIGNoYXIgKnNyY19wdHIs
IGludCBzcmNfcGl4ZWxfc3RlcCwgY29uc3QgdW5zaWduZWQgY2hhciAqYmxpbWl0LAogICAgIGNv
bnN0IHVuc2lnbmVkIGNoYXIgKmxpbWl0LCBjb25zdCB1bnNpZ25lZCBjaGFyICp0aHJlc2gsIGlu
dCBjb3VudCkgewogICBtaXBzX3JlZyB0bXBbMV07Ci0gIERFQ0xBUkVfQUxJR05FRCg4LCBjb25z
dCB1aW50NjRfdCwgc3JjdFsxXSk7CisgIERFQ0xBUkVfQUxJR05FRCg4LCBjb25zdCB1aW50NjRf
dCwgc3JjdFsyXSk7CiAgIGRvdWJsZSBmdG1wWzE0XTsKKyAgZG91YmxlIGZmX3BoXzAwM2YsIGZm
X3BoXzA5MDAsIGZmX3BiX2ZlLCBmZl9wYl84MCwgZmZfcGJfMDQsIGZmX3BiXzAzOwogCisgIC8q
IGNsYW5nLWZvcm1hdCBvZmYgKi8KICAgX19hc21fXyB2b2xhdGlsZSAoCisgICAgImRsaSAgICAg
ICAgJVt0bXAwXSwgICAgMHgwMDNmMDAzZjAwM2YwMDNmICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9waF8wMDNmXSAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwOTAw
MDkwMDA5MDAwOTAwICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAg
JVt0bXAwXSwgICAgJVtmZl9waF8wOTAwXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQi
CisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHhmZWZlZmVmZWZlZmVmZWZlICAgICAgICAg
ICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl9m
ZV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0
bXAwXSwgICAgMHg4MDgwODA4MDgwODA4MDgwICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisg
ICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl84MF0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwNDA0MDQwNDA0
MDQwNDA0ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAw
XSwgICAgJVtmZl9wYl8wNF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAg
ImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwMzAzMDMwMzAzMDMwMzAzICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl8wM10gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgTU1JX1NVQlUoJVtzcmNfcHRyXSwg
JVtzcmNfcHRyXSwgMHgwNCkKIAogICAgICIxOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgpAQCAtNzU1LDIzICs4MDIsMjMg
QEAgdm9pZCB2cDhfbWJsb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX21taSgKICAgICAvKiBhYnMg
KHEyLXExKSAqLwogICAgICJwYXN1YnViICAgICVbZnRtcDddLCAgICVbZnRtcDExXSwgICAgICAg
ICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0IgogICAgICJwc3VidXNiICAgICVbZnRtcDddLCAg
ICVbZnRtcDddLCAgICAgICAgICAgJVtmdG1wMTNdICAgICAgICAgICBcblx0IgotICAgICJvciAg
ICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wN10gICAgICAgICAg
ICBcblx0IgorICAgICJwb3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAg
JVtmdG1wN10gICAgICAgICAgICBcblx0IgogICAgIC8qIGZ0bXAzOiBhYnMocTEtcTApICovCiAg
ICAgInBhc3VidWIgICAgJVtmdG1wM10sICAgJVtmdG1wMTBdLCAgICAgICAgICAlW2Z0bXA5XSAg
ICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJ1c2IgICAgJVtmdG1wN10sICAgJVtmdG1wM10sICAg
ICAgICAgICAlW2Z0bXAxM10gICAgICAgICAgIFxuXHQiCi0gICAgIm9yICAgICAgICAgJVtmdG1w
MF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA3XSAgICAgICAgICAgIFxuXHQiCisgICAg
InBvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA3XSAgICAg
ICAgICAgIFxuXHQiCiAgICAgLyogZnRtcDQ6IGFicyhwMS1wMCkgKi8KICAgICAicGFzdWJ1YiAg
ICAlW2Z0bXA0XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZnRtcDZdICAgICAgICAgICAgXG5c
dCIKICAgICAicHN1YnVzYiAgICAlW2Z0bXA3XSwgICAlW2Z0bXA0XSwgICAgICAgICAgICVbZnRt
cDEzXSAgICAgICAgICAgXG5cdCIKLSAgICAib3IgICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAw
XSwgICAgICAgICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIKKyAgICAicG9yICAgICAgICAl
W2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIK
ICAgICAvKiBhYnMgKHAyLXAxKSAqLwogICAgICJwYXN1YnViICAgICVbZnRtcDddLCAgICVbZnRt
cDJdLCAgICAgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgogICAgICJwc3VidXNiICAg
ICVbZnRtcDddLCAgICVbZnRtcDddLCAgICAgICAgICAgJVtmdG1wMTNdICAgICAgICAgICBcblx0
IgotICAgICJvciAgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1w
N10gICAgICAgICAgICBcblx0IgorICAgICJwb3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBd
LCAgICAgICAgICAgJVtmdG1wN10gICAgICAgICAgICBcblx0IgogICAgIC8qIGFicyAocDMtcDIp
ICovCiAgICAgInBhc3VidWIgICAgJVtmdG1wN10sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0
bXAyXSAgICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJ1c2IgICAgJVtmdG1wN10sICAgJVtmdG1w
N10sICAgICAgICAgICAlW2Z0bXAxM10gICAgICAgICAgIFxuXHQiCi0gICAgIm9yICAgICAgICAg
JVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA3XSAgICAgICAgICAgIFxuXHQi
CisgICAgInBvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA3
XSAgICAgICAgICAgIFxuXHQiCiAKICAgICAiZ3NsZGxjMSAgICAlW2Z0bXAxM10sICAweDA3KCVb
YmxpbWl0XSkgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAiZ3NsZHJjMSAgICAl
W2Z0bXAxM10sICAweDAwKCVbYmxpbWl0XSkgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIK
QEAgLTc4MiwxNCArODI5LDE0IEBAIHZvaWQgdnA4X21ibG9vcF9maWx0ZXJfdmVydGljYWxfZWRn
ZV9tbWkoCiAgICAgInBhZGR1c2IgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAl
W2Z0bXAxXSAgICAgICAgICAgIFxuXHQiCiAgICAgLyogYWJzIChwMS1xMSkgLyAyICovCiAgICAg
InBhc3VidWIgICAgJVtmdG1wMTJdLCAgJVtmdG1wMTBdLCAgICAgICAgICAlW2Z0bXA1XSAgICAg
ICAgICAgIFxuXHQiCi0gICAgImFuZCAgICAgICAgJVtmdG1wMTJdLCAgJVtmdG1wMTJdLCAgICAg
ICAgICAlW2ZmX3BiX2ZlXSAgICAgICAgIFxuXHQiCi0gICAgImxpICAgICAgICAgJVt0bXAwXSwg
ICAgMHgwMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCi0gICAgIm10
YzEgICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOF0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCisgICAgInBhbmQgICAgICAgJVtmdG1wMTJdLCAgJVtmdG1wMTJdLCAgICAgICAg
ICAlW2ZmX3BiX2ZlXSAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAg
MHgwMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMx
ICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFxuXHQiCiAgICAgInBzcmxoICAgICAgJVtmdG1wMTJdLCAgJVtmdG1wMTJdLCAgICAgICAgICAl
W2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR1c2IgICAgJVtmdG1wMTJdLCAgJVtm
dG1wMV0sICAgICAgICAgICAlW2Z0bXAxMl0gICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJ1c2Ig
ICAgJVtmdG1wMTJdLCAgJVtmdG1wMTJdLCAgICAgICAgICAlW2Z0bXAxM10gICAgICAgICAgIFxu
XHQiCi0gICAgIm9yICAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0
bXAxMl0gICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wMTJdLCAgJVtmdG1w
MTJdLCAgICAgICAgICAlW2Z0bXAxMl0gICAgICAgICAgIFxuXHQiCisgICAgInBvciAgICAgICAg
JVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAxMl0gICAgICAgICAgIFxuXHQi
CisgICAgInB4b3IgICAgICAgJVtmdG1wMTJdLCAgJVtmdG1wMTJdLCAgICAgICAgICAlW2Z0bXAx
Ml0gICAgICAgICAgIFxuXHQiCiAgICAgLyogZnRtcDA6IG1hc2sgKi8KICAgICAicGNtcGVxYiAg
ICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDEyXSAgICAgICAgICAgXG5c
dCIKIApAQCAtNzk3LDE5ICs4NDQsMTkgQEAgdm9pZCB2cDhfbWJsb29wX2ZpbHRlcl92ZXJ0aWNh
bF9lZGdlX21taSgKICAgICAicHN1YnVzYiAgICAlW2Z0bXA0XSwgICAlW2Z0bXA0XSwgICAgICAg
ICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIKICAgICAvKiBhYnMocTEtcTApIC0gdGhyZXNo
ICovCiAgICAgInBzdWJ1c2IgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2Z0
bXA3XSAgICAgICAgICAgIFxuXHQiCi0gICAgIm9yICAgICAgICAgJVtmdG1wM10sICAgJVtmdG1w
NF0sICAgICAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCisgICAgInBvciAgICAgICAg
JVtmdG1wM10sICAgJVtmdG1wNF0sICAgICAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQi
CiAgICAgInBjbXBlcWIgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2Z0bXAx
Ml0gICAgICAgICAgIFxuXHQiCiAgICAgInBjbXBlcWIgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0s
ICAgICAgICAgICAlW2Z0bXAxXSAgICAgICAgICAgIFxuXHQiCiAgICAgLyogZnRtcDE6IGhldiAq
LwotICAgICJ4b3IgICAgICAgICVbZnRtcDFdLCAgICVbZnRtcDNdLCAgICAgICAgICAgJVtmdG1w
MV0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDFdLCAgICVbZnRtcDNd
LCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgogCiAgICAgLyogZnRtcDI6cHMy
LCBmdG1wNTpwczEsIGZ0bXA2OnBzMCwgZnRtcDk6cXMwLCBmdG1wMTA6cXMxLCBmdG1wMTE6cXMy
ICovCi0gICAgInhvciAgICAgICAgJVtmdG1wMTFdLCAgJVtmdG1wMTFdLCAgICAgICAgICAlW2Zm
X3BiXzgwXSAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wMTBdLCAgJVtmdG1w
MTBdLCAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAg
JVtmdG1wOV0sICAgJVtmdG1wOV0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQi
Ci0gICAgInhvciAgICAgICAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAgICAgICAgICAlW2ZmX3Bi
XzgwXSAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wNV0sICAgJVtmdG1wNV0s
ICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtm
dG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisg
ICAgInB4b3IgICAgICAgJVtmdG1wMTFdLCAgJVtmdG1wMTFdLCAgICAgICAgICAlW2ZmX3BiXzgw
XSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMTBdLCAgJVtmdG1wMTBdLCAg
ICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1w
OV0sICAgJVtmdG1wOV0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAg
InB4b3IgICAgICAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAg
ICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wNV0sICAgJVtmdG1wNV0sICAgICAg
ICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMl0s
ICAgJVtmdG1wMl0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCiAKICAgICAi
cHN1YnNiICAgICAlW2Z0bXAzXSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZnRtcDEwXSAgICAg
ICAgICAgXG5cdCIKICAgICAicHN1YnNiICAgICAlW2Z0bXA0XSwgICAlW2Z0bXA5XSwgICAgICAg
ICAgICVbZnRtcDZdICAgICAgICAgICAgXG5cdCIKQEAgLTgxNywxNSArODY0LDE1IEBAIHZvaWQg
dnA4X21ibG9vcF9maWx0ZXJfdmVydGljYWxfZWRnZV9tbWkoCiAgICAgInBhZGRzYiAgICAgJVtm
dG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2Z0bXA0XSAgICAgICAgICAgIFxuXHQiCiAg
ICAgInBhZGRzYiAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2Z0bXA0XSAg
ICAgICAgICAgIFxuXHQiCiAgICAgLyogZmlsdGVyX3ZhbHVlICY9IG1hc2sgKi8KLSAgICAiYW5k
ICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDNdICAgICAgICAg
ICAgXG5cdCIKKyAgICAicGFuZCAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAg
ICVbZnRtcDNdICAgICAgICAgICAgXG5cdCIKICAgICAvKiBGaWx0ZXIyID0gZmlsdGVyX3ZhbHVl
ICYgaGV2ICovCi0gICAgImFuZCAgICAgICAgJVtmdG1wM10sICAgJVtmdG1wMV0sICAgICAgICAg
ICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCisgICAgInBhbmQgICAgICAgJVtmdG1wM10sICAg
JVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCiAgICAgLyogZmls
dGVyX3ZhbHVlICY9IH5oZXYgKi8KICAgICAicGFuZG4gICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAx
XSwgICAgICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKIAogICAgICJwYWRkc2IgICAg
ICVbZnRtcDRdLCAgICVbZnRtcDNdLCAgICAgICAgICAgJVtmZl9wYl8wNF0gICAgICAgICBcblx0
IgotICAgICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4MGIgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDEy
XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVb
dG1wMF0sICAgIDB4MGIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0Igor
ICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRtcDEyXSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcblx0IgogICAgICJwdW5wY2tsYmggICVbZnRtcDddLCAgICVbZnRtcDddLCAg
ICAgICAgICAgJVtmdG1wNF0gICAgICAgICAgICBcblx0IgogICAgICJwdW5wY2toYmggICVbZnRt
cDhdLCAgICVbZnRtcDhdLCAgICAgICAgICAgJVtmdG1wNF0gICAgICAgICAgICBcblx0IgogICAg
ICJwc3JhaCAgICAgICVbZnRtcDddLCAgICVbZnRtcDddLCAgICAgICAgICAgJVtmdG1wMTJdICAg
ICAgICAgICBcblx0IgpAQCAtODQyLDggKzg4OSw4IEBAIHZvaWQgdnA4X21ibG9vcF9maWx0ZXJf
dmVydGljYWxfZWRnZV9tbWkoCiAgICAgLyogZnRtcDY6IHBzMCAqLwogICAgICJwYWRkc2IgICAg
ICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmdG1wM10gICAgICAgICAgICBcblx0
IgogCi0gICAgImxpICAgICAgICAgJVt0bXAwXSwgICAgMHgwNyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCi0gICAgIm10YzEgICAgICAgJVt0bXAwXSwgICAgJVtmdG1w
MTJdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAg
JVt0bXAwXSwgICAgMHgwNyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQi
CisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmdG1wMTJdICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFxuXHQiCiAgICAgVlA4X01CTE9PUF9WUFNSQUJfQURESAogICAgICJwYWRk
aCAgICAgICVbZnRtcDFdLCAgICVbZmZfcGhfMDkwMF0sICAgICAgJVtmZl9waF8wOTAwXSAgICAg
ICBcblx0IgogICAgICJwYWRkaCAgICAgICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAgICAgICAg
JVtmZl9waF8wOTAwXSAgICAgICBcblx0IgpAQCAtODUyLDEwICs4OTksMTAgQEAgdm9pZCB2cDhf
bWJsb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX21taSgKICAgICBWUDhfTUJMT09QX1ZQU1JBQl9B
RERUCiAgICAgInBzdWJzYiAgICAgJVtmdG1wNF0sICAgJVtmdG1wOV0sICAgICAgICAgICAlW2Z0
bXAzXSAgICAgICAgICAgIFxuXHQiCiAgICAgLyogZnRtcDk6IG9xMCAqLwotICAgICJ4b3IgICAg
ICAgICVbZnRtcDldLCAgICVbZnRtcDRdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBc
blx0IgorICAgICJweG9yICAgICAgICVbZnRtcDldLCAgICVbZnRtcDRdLCAgICAgICAgICAgJVtm
Zl9wYl84MF0gICAgICAgICBcblx0IgogICAgICJwYWRkc2IgICAgICVbZnRtcDRdLCAgICVbZnRt
cDZdLCAgICAgICAgICAgJVtmdG1wM10gICAgICAgICAgICBcblx0IgogICAgIC8qIGZ0bXA2OiBv
cDAgKi8KLSAgICAieG9yICAgICAgICAlW2Z0bXA2XSwgICAlW2Z0bXA0XSwgICAgICAgICAgICVb
ZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA2XSwgICAlW2Z0
bXA0XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKIAogICAgIFZQOF9NQkxP
T1BfVlBTUkFCX0FEREgKICAgICAicGFkZGggICAgICAlW2Z0bXAxXSwgICAlW2ZmX3BoXzA5MDBd
LCAgICAgICVbZmZfcGhfMDkwMF0gICAgICAgXG5cdCIKQEAgLTg2NCwxMCArOTExLDEwIEBAIHZv
aWQgdnA4X21ibG9vcF9maWx0ZXJfdmVydGljYWxfZWRnZV9tbWkoCiAgICAgVlA4X01CTE9PUF9W
UFNSQUJfQUREVAogICAgICJwc3Vic2IgICAgICVbZnRtcDRdLCAgICVbZnRtcDEwXSwgICAgICAg
ICAgJVtmdG1wM10gICAgICAgICAgICBcblx0IgogICAgIC8qIGZ0bXAxMDogb3ExICovCi0gICAg
InhvciAgICAgICAgJVtmdG1wMTBdLCAgICVbZnRtcDRdLCAgICAgICAgICAlW2ZmX3BiXzgwXSAg
ICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMTBdLCAgICVbZnRtcDRdLCAgICAg
ICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCiAgICAgInBhZGRzYiAgICAgJVtmdG1wNF0s
ICAgJVtmdG1wNV0sICAgICAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCiAgICAgLyog
ZnRtcDU6IG9wMSAqLwotICAgICJ4b3IgICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDRdLCAgICAg
ICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDVd
LCAgICVbZnRtcDRdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgogCiAgICAg
VlA4X01CTE9PUF9WUFNSQUJfQURESAogICAgICJwbXVsaGggICAgICVbZnRtcDddLCAgICVbZnRt
cDddLCAgICAgICAgICAgJVtmZl9waF8wOTAwXSAgICAgICBcblx0IgpAQCAtODc1LDEwICs5MjIs
MTAgQEAgdm9pZCB2cDhfbWJsb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX21taSgKICAgICBWUDhf
TUJMT09QX1ZQU1JBQl9BRERUCiAgICAgInBzdWJzYiAgICAgJVtmdG1wNF0sICAgJVtmdG1wMTFd
LCAgICAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCiAgICAgLyogZnRtcDExOiBvcTIg
Ki8KLSAgICAieG9yICAgICAgICAlW2Z0bXAxMV0sICAlW2Z0bXA0XSwgICAgICAgICAgICVbZmZf
cGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAxMV0sICAlW2Z0bXA0
XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKICAgICAicGFkZHNiICAgICAl
W2Z0bXA0XSwgICAlW2Z0bXAyXSwgICAgICAgICAgICVbZnRtcDNdICAgICAgICAgICAgXG5cdCIK
ICAgICAvKiBmdG1wMjogb3AyICovCi0gICAgInhvciAgICAgICAgJVtmdG1wMl0sICAgJVtmdG1w
NF0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAg
JVtmdG1wMl0sICAgJVtmdG1wNF0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQi
CiAKICAgICAibGRjMSAgICAgICAlW2Z0bXAxMl0sICAweDAwKCVbc3JjdF0pICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXG5cdCIKICAgICAibGRjMSAgICAgICAlW2Z0bXA4XSwgICAweDA4KCVb
c3JjdF0pICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKQEAgLTk0OCw0MSArOTk1LDU4
IEBAIHZvaWQgdnA4X21ibG9vcF9maWx0ZXJfdmVydGljYWxfZWRnZV9tbWkoCiAgICAgICBbZnRt
cDEwXSI9JmYiKGZ0bXBbMTBdKSwgICAgICAgICAgICBbZnRtcDExXSI9JmYiKGZ0bXBbMTFdKSwK
ICAgICAgIFtmdG1wMTJdIj0mZiIoZnRtcFsxMl0pLCAgICAgICAgICAgIFtmdG1wMTNdIj0mZiIo
ZnRtcFsxM10pLAogICAgICAgW3RtcDBdIj0mciIodG1wWzBdKSwgICAgICAgICAgICAgICAgW3Ny
Y19wdHJdIismciIoc3JjX3B0ciksCi0gICAgICBbY291bnRdIismciIoY291bnQpCisgICAgICBb
Y291bnRdIismciIoY291bnQpLAorICAgICAgW2ZmX3BoXzAwM2ZdIj0mZiIoZmZfcGhfMDAzZiks
ICAgIFtmZl9waF8wOTAwXSI9JmYiKGZmX3BoXzA5MDApLAorICAgICAgW2ZmX3BiXzAzXSI9JmYi
KGZmX3BiXzAzKSwgICAgICAgIFtmZl9wYl8wNF0iPSZmIihmZl9wYl8wNCksCisgICAgICBbZmZf
cGJfODBdIj0mZiIoZmZfcGJfODApLCAgICAgICAgW2ZmX3BiX2ZlXSI9JmYiKGZmX3BiX2ZlKQog
ICAgIDogW2xpbWl0XSJyIihsaW1pdCksICAgICAgICAgICAgICAgIFtibGltaXRdInIiKGJsaW1p
dCksCiAgICAgICBbc3JjdF0iciIoc3JjdCksICAgICAgICAgICAgICAgICAgW3RocmVzaF0iciIo
dGhyZXNoKSwKLSAgICAgIFtzcmNfcGl4ZWxfc3RlcF0iciIoKG1pcHNfcmVnKXNyY19waXhlbF9z
dGVwKSwKLSAgICAgIFtmZl9waF8wMDNmXSJmIihmZl9waF8wMDNmKSwgICAgICBbZmZfcGhfMDkw
MF0iZiIoZmZfcGhfMDkwMCksCi0gICAgICBbZmZfcGJfMDNdImYiKGZmX3BiXzAzKSwgICAgICAg
ICAgW2ZmX3BiXzA0XSJmIihmZl9wYl8wNCksCi0gICAgICBbZmZfcGJfODBdImYiKGZmX3BiXzgw
KSwgICAgICAgICAgW2ZmX3BiX2ZlXSJmIihmZl9wYl9mZSkKKyAgICAgIFtzcmNfcGl4ZWxfc3Rl
cF0iciIoKG1pcHNfcmVnKXNyY19waXhlbF9zdGVwKQogICAgIDogIm1lbW9yeSIKICAgKTsKKyAg
LyogY2xhbmctZm9ybWF0IG9uICovCiB9CiAKKy8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KICNkZWZp
bmUgVlA4X1NJTVBMRV9IUFNSQUIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKICAgInBzbGxoICAgICAgJVtmdG1wMF0sICAgJVtmdG1wNV0sICAgICAgICAg
ICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiIFwKICAgInBzcmFoICAgICAgJVtmdG1wMF0sICAg
JVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiIFwKICAgInBzcmxo
ICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA4XSAgICAgICAgICAg
IFxuXHQiIFwKICAgInBzcmFoICAgICAgJVtmdG1wMV0sICAgJVtmdG1wNV0sICAgICAgICAgICAl
W2Z0bXAxMF0gICAgICAgICAgIFxuXHQiIFwKICAgInBzbGxoICAgICAgJVtmdG1wMV0sICAgJVtm
dG1wMV0sICAgICAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiIFwKLSAgIm9yICAgICAg
ICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAxXSAgICAgICAgICAgIFxu
XHQiCisgICJwb3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1w
MV0gICAgICAgICAgICBcblx0IgorLyogY2xhbmctZm9ybWF0IG9uICovCiAKIHZvaWQgdnA4X2xv
b3BfZmlsdGVyX3NpbXBsZV9ob3Jpem9udGFsX2VkZ2VfbW1pKHVuc2lnbmVkIGNoYXIgKnNyY19w
dHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQg
c3JjX3BpeGVsX3N0ZXAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpibGltaXQpIHsKLSAgdWludDMyX3QgdG1wWzFd
LCBjb3VudCA9IDI7CisgIHVpbnQ2NF90IHRtcFsxXSwgY291bnQgPSAyOwogICBtaXBzX3JlZyBh
ZGRyWzJdOwogICBkb3VibGUgZnRtcFsxMl07CisgIGRvdWJsZSBmZl9wYl9mZSwgZmZfcGJfODAs
IGZmX3BiXzA0LCBmZl9wYl8wMTsKIAorICAvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiAgIF9fYXNt
X18gdm9sYXRpbGUgKAotICAgICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4MDggICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0s
ICAgICVbZnRtcDhdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICJs
aSAgICAgICAgICVbdG1wMF0sICAgIDB4MDMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDldICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICJsaSAgICAgICAgICVbdG1wMF0sICAg
IDB4MGIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICJtdGMx
ICAgICAgICVbdG1wMF0sICAgICVbZnRtcDEwXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgotICAgICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4MDEgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVb
ZnRtcDExXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAg
ICAgICVbdG1wMF0sICAgIDB4MGIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
blx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRtcDEwXSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4MDEg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAg
ICVbdG1wMF0sICAgICVbZnRtcDExXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0
IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4MDggICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRtcDhd
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVb
dG1wMF0sICAgIDB4MDMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0Igor
ICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRtcDldICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4MGIgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1w
MF0sICAgICVbZnRtcDEwXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAg
ICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4MDEgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRtcDExXSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0s
ICAgIDB4ZmVmZWZlZmVmZWZlZmVmZSAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJk
bXRjMSAgICAgICVbdG1wMF0sICAgICVbZmZfcGJfZmVdICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4ODA4MDgwODA4MDgwODA4
MCAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAg
ICVbZmZfcGJfODBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkg
ICAgICAgICVbdG1wMF0sICAgIDB4MDQwNDA0MDQwNDA0MDQwNCAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZmZfcGJfMDRdICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4
MDEwMTAxMDEwMTAxMDEwMSAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAg
ICAgICVbdG1wMF0sICAgICVbZmZfcGJfMDFdICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
blx0IgogCiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImdzbGRsYzEgICAgJVtmdG1wM10sICAgMHgw
NyglW2JsaW1pdF0pICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCkBAIC05OTYsNyArMTA2
MCw3IEBAIHZvaWQgdnA4X2xvb3BfZmlsdGVyX3NpbXBsZV9ob3Jpem9udGFsX2VkZ2VfbW1pKHVu
c2lnbmVkIGNoYXIgKnNyY19wdHIsCiAgICAgImdzbGRsYzEgICAgJVtmdG1wN10sICAgMHgwNygl
W2FkZHIwXSkgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImdzbGRyYzEgICAg
JVtmdG1wN10sICAgMHgwMCglW2FkZHIwXSkgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQi
CiAgICAgInBhc3VidWIgICAgJVtmdG1wMV0sICAgJVtmdG1wN10sICAgICAgICAgICAlW2Z0bXAy
XSAgICAgICAgICAgIFxuXHQiCi0gICAgImFuZCAgICAgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0s
ICAgICAgICAgICAlW2ZmX3BiX2ZlXSAgICAgICAgIFxuXHQiCisgICAgInBhbmQgICAgICAgJVtm
dG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2ZmX3BiX2ZlXSAgICAgICAgIFxuXHQiCiAg
ICAgInBzcmxoICAgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAxMV0g
ICAgICAgICAgIFxuXHQiCiAKICAgICBNTUlfU1VCVSglW2FkZHIxXSwgJVtzcmNfcHRyXSwgJVtz
cmNfcGl4ZWxfc3RlcF0pCkBAIC0xMDA4LDMxICsxMDcyLDMxIEBAIHZvaWQgdnA4X2xvb3BfZmls
dGVyX3NpbXBsZV9ob3Jpem9udGFsX2VkZ2VfbW1pKHVuc2lnbmVkIGNoYXIgKnNyY19wdHIsCiAg
ICAgInBhZGR1c2IgICAgJVtmdG1wNV0sICAgJVtmdG1wNV0sICAgICAgICAgICAlW2Z0bXA1XSAg
ICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR1c2IgICAgJVtmdG1wNV0sICAgJVtmdG1wNV0sICAg
ICAgICAgICAlW2Z0bXAxXSAgICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJ1c2IgICAgJVtmdG1w
NV0sICAgJVtmdG1wNV0sICAgICAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCi0gICAg
InhvciAgICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2Z0bXAzXSAgICAg
ICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAg
ICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCiAgICAgInBjbXBlcWIgICAgJVtmdG1wNV0s
ICAgJVtmdG1wNV0sICAgICAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCiAKLSAgICAi
eG9yICAgICAgICAlW2Z0bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgICAgICVbZmZfcGJfODBdICAg
ICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAg
ICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAyXSwg
ICAlW2Z0bXAyXSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhv
ciAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAg
ICAgXG5cdCIKICAgICAicHN1YnNiICAgICAlW2Z0bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgICAg
ICVbZnRtcDddICAgICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA2XSwgICAl
W2Z0bXA2XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKLSAgICAieG9yICAg
ICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAg
XG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA2XSwgICAlW2Z0bXA2XSwgICAgICAgICAgICVb
ZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAzXSwgICAlW2Z0
bXAwXSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKICAgICAicHN1YnNiICAg
ICAlW2Z0bXAwXSwgICAlW2Z0bXAzXSwgICAgICAgICAgICVbZnRtcDZdICAgICAgICAgICAgXG5c
dCIKICAgICAicGFkZHNiICAgICAlW2Z0bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgICAgICVbZnRt
cDBdICAgICAgICAgICAgXG5cdCIKICAgICAicGFkZHNiICAgICAlW2Z0bXAyXSwgICAlW2Z0bXAy
XSwgICAgICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKICAgICAicGFkZHNiICAgICAl
W2Z0bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIK
LSAgICAiYW5kICAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZnRtcDJd
ICAgICAgICAgICAgXG5cdCIKKyAgICAicGFuZCAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwg
ICAgICAgICAgICVbZnRtcDJdICAgICAgICAgICAgXG5cdCIKIAogICAgICJwYWRkc2IgICAgICVb
ZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAgICAgJVtmZl9wYl8wNF0gICAgICAgICBcblx0Igog
ICAgIFZQOF9TSU1QTEVfSFBTUkFCCiAgICAgInBzdWJzYiAgICAgJVtmdG1wM10sICAgJVtmdG1w
M10sICAgICAgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAg
JVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQi
CisgICAgInB4b3IgICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2ZmX3Bi
XzgwXSAgICAgICAgIFxuXHQiCiAgICAgImdzc2RsYzEgICAgJVtmdG1wM10sICAgMHgwNyglW3Ny
Y19wdHJdKSAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImdzc2RyYzEgICAgJVtm
dG1wM10sICAgMHgwMCglW3NyY19wdHJdKSAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAK
ICAgICAicHN1YnNiICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZmZfcGJf
MDFdICAgICAgICAgXG5cdCIKICAgICBWUDhfU0lNUExFX0hQU1JBQgogICAgICJwYWRkc2IgICAg
ICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0
IgotICAgICJ4b3IgICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmZl9w
Yl84MF0gICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZd
LCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgogICAgIE1NSV9TVUJVKCVbYWRk
cjFdLCAlW3NyY19wdHJdLCAlW3NyY19waXhlbF9zdGVwXSkKICAgICAiZ3NzZGxjMSAgICAlW2Z0
bXA2XSwgICAweDA3KCVbYWRkcjFdKSAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAg
ICAiZ3NzZHJjMSAgICAlW2Z0bXA2XSwgICAweDAwKCVbYWRkcjFdKSAgICAgICAgICAgICAgICAg
ICAgICAgICAgXG5cdCIKQEAgLTEwNDgsMzAgKzExMTIsNDMgQEAgdm9pZCB2cDhfbG9vcF9maWx0
ZXJfc2ltcGxlX2hvcml6b250YWxfZWRnZV9tbWkodW5zaWduZWQgY2hhciAqc3JjX3B0ciwKICAg
ICAgIFtmdG1wMTBdIj0mZiIoZnRtcFsxMF0pLCAgICAgICAgICAgIFtmdG1wMTFdIj0mZiIoZnRt
cFsxMV0pLAogICAgICAgW3RtcDBdIj0mciIodG1wWzBdKSwKICAgICAgIFthZGRyMF0iPSZyIihh
ZGRyWzBdKSwgICAgICAgICAgICBbYWRkcjFdIj0mciIoYWRkclsxXSksCi0gICAgICBbc3JjX3B0
cl0iKyZyIihzcmNfcHRyKSwgICAgICAgICAgW2NvdW50XSIrJnIiKGNvdW50KQorICAgICAgW3Ny
Y19wdHJdIismciIoc3JjX3B0ciksICAgICAgICAgIFtjb3VudF0iKyZyIihjb3VudCksCisgICAg
ICBbZmZfcGJfZmVdIj0mZiIoZmZfcGJfZmUpLCAgICAgICAgW2ZmX3BiXzgwXSI9JmYiKGZmX3Bi
XzgwKSwKKyAgICAgIFtmZl9wYl8wNF0iPSZmIihmZl9wYl8wNCksICAgICAgICBbZmZfcGJfMDFd
Ij0mZiIoZmZfcGJfMDEpCiAgICAgOiBbYmxpbWl0XSJyIihibGltaXQpLAogICAgICAgW3NyY19w
aXhlbF9zdGVwXSJyIigobWlwc19yZWcpc3JjX3BpeGVsX3N0ZXApLAotICAgICAgW3NyY19waXhl
bF9zdGVwX3gyXSJyIigobWlwc19yZWcpKHNyY19waXhlbF9zdGVwPDwxKSksCi0gICAgICBbZmZf
cGJfZmVdImYiKGZmX3BiX2ZlKSwgICAgICAgICAgW2ZmX3BiXzgwXSJmIihmZl9wYl84MCksCi0g
ICAgICBbZmZfcGJfMDRdImYiKGZmX3BiXzA0KSwgICAgICAgICAgW2ZmX3BiXzAxXSJmIihmZl9w
Yl8wMSkKKyAgICAgIFtzcmNfcGl4ZWxfc3RlcF94Ml0iciIoKG1pcHNfcmVnKShzcmNfcGl4ZWxf
c3RlcDw8MSkpCiAgICAgOiAibWVtb3J5IgogICApOworICAvKiBjbGFuZy1mb3JtYXQgb24gKi8K
IH0KIAogdm9pZCB2cDhfbG9vcF9maWx0ZXJfc2ltcGxlX3ZlcnRpY2FsX2VkZ2VfbW1pKHVuc2ln
bmVkIGNoYXIgKnNyY19wdHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaW50IHNyY19waXhlbF9zdGVwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmJsaW1pdCkgewotICB1aW50
MzJfdCB0bXBbMV0sIGNvdW50ID0gMjsKKyAgdWludDY0X3QgdG1wWzFdLCBjb3VudCA9IDI7CiAg
IG1pcHNfcmVnIGFkZHJbMl07Ci0gIERFQ0xBUkVfQUxJR05FRCg4LCBjb25zdCB1aW50NjRfdCwg
c3JjdFsxXSk7Ci0gIGRvdWJsZSBmdG1wWzEyXTsKKyAgREVDTEFSRV9BTElHTkVEKDgsIGNvbnN0
IHVpbnQ2NF90LCBzcmN0WzJdKTsKKyAgZG91YmxlIGZ0bXBbMTJdLCBmZl9wYl9mZSwgZmZfcGJf
ODAsIGZmX3BiXzA0LCBmZl9wYl8wMTsKIAorICAvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiAgIF9f
YXNtX18gdm9sYXRpbGUgKAotICAgICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4MDggICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1w
MF0sICAgICVbZnRtcDhdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAg
ICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4MjAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDEwXSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotCisgICAgImRsaSAgICAgICAgJVt0bXAw
XSwgICAgMHgwOCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAg
ImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOF0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgyMCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwg
ICAgJVtmdG1wMTBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRs
aSAgICAgICAgJVt0bXAwXSwgICAgMHgwOCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOF0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAg
MHgyMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMx
ICAgICAgJVt0bXAwXSwgICAgJVtmdG1wMTBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHhmZWZlZmVmZWZlZmVmZWZlICAg
ICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtm
Zl9wYl9mZV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAg
ICAgJVt0bXAwXSwgICAgMHg4MDgwODA4MDgwODA4MDgwICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl84MF0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwNDA0
MDQwNDA0MDQwNDA0ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAg
JVt0bXAwXSwgICAgJVtmZl9wYl8wNF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQi
CisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwMTAxMDEwMTAxMDEwMTAxICAgICAgICAg
ICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl8w
MV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgTU1JX0FERFUoJVtzcmNf
cHRyXSwgJVtzcmNfcHRyXSwgJVtzcmNfcGl4ZWxfc3RlcF94NF0pCiAgICAgTU1JX1NVQlUoJVtz
cmNfcHRyXSwgJVtzcmNfcHRyXSwgMHgwMikKIApAQCAtMTExOCwxMCArMTE5NSwxMCBAQCB2b2lk
IHZwOF9sb29wX2ZpbHRlcl9zaW1wbGVfdmVydGljYWxfZWRnZV9tbWkodW5zaWduZWQgY2hhciAq
c3JjX3B0ciwKICAgICAicHVucGNraHdkICAlW2Z0bXAzXSwgICAlW2Z0bXAyXSwgICAgICAgICAg
ICVbZnRtcDVdICAgICAgICAgICAgXG5cdCIKICAgICAicHVucGNrbHdkICAlW2Z0bXAyXSwgICAl
W2Z0bXAyXSwgICAgICAgICAgICVbZnRtcDVdICAgICAgICAgICAgXG5cdCIKIAotICAgICJsaSAg
ICAgICAgICVbdG1wMF0sICAgIDB4MDEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDldICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4
MDEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAg
ICAgICVbdG1wMF0sICAgICVbZnRtcDldICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
blx0IgogICAgICJwYXN1YnViICAgICVbZnRtcDZdLCAgICVbZnRtcDNdLCAgICAgICAgICAgJVtm
dG1wMF0gICAgICAgICAgICBcblx0IgotICAgICJhbmQgICAgICAgICVbZnRtcDZdLCAgICVbZnRt
cDZdLCAgICAgICAgICAgJVtmZl9wYl9mZV0gICAgICAgICBcblx0IgorICAgICJwYW5kICAgICAg
ICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmZl9wYl9mZV0gICAgICAgICBcblx0
IgogICAgICJwc3JsaCAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmdG1w
OV0gICAgICAgICAgICBcblx0IgogICAgICJwYXN1YnViICAgICVbZnRtcDVdLCAgICVbZnRtcDFd
LCAgICAgICAgICAgJVtmdG1wMl0gICAgICAgICAgICBcblx0IgogICAgICJwYWRkdXNiICAgICVb
ZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgpA
QCAtMTEzMCw1MyArMTIwNyw1MyBAQCB2b2lkIHZwOF9sb29wX2ZpbHRlcl9zaW1wbGVfdmVydGlj
YWxfZWRnZV9tbWkodW5zaWduZWQgY2hhciAqc3JjX3B0ciwKICAgICAiZ3NsZGxjMSAgICAlW2Z0
bXA3XSwgICAweDA3KCVbYmxpbWl0XSkgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAg
ICAiZ3NsZHJjMSAgICAlW2Z0bXA3XSwgICAweDAwKCVbYmxpbWl0XSkgICAgICAgICAgICAgICAg
ICAgICAgICAgXG5cdCIKICAgICAicHN1YnVzYiAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAg
ICAgICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA3
XSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIKKyAgICAi
cHhvciAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZnRtcDddICAgICAg
ICAgICAgXG5cdCIKICAgICAicGNtcGVxYiAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAg
ICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIKIAogICAgICJzZGMxICAgICAgICVbZnRtcDBd
LCAgIDB4MDAoJVtzcmN0XSkgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJz
ZGMxICAgICAgICVbZnRtcDNdLCAgIDB4MDgoJVtzcmN0XSkgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcblx0IgogCi0gICAgInhvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAg
ICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wM10s
ICAgJVtmdG1wM10sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4
b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAg
ICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAg
ICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCiAgICAgInBzdWJzYiAgICAgJVtmdG1wMF0sICAg
JVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCiAKLSAgICAieG9y
ICAgICAgICAlW2Z0bXA2XSwgICAlW2Z0bXAxXSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAg
ICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAyXSwgICAgICAgICAg
ICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA2XSwgICAl
W2Z0bXAxXSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAg
ICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAyXSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAg
XG5cdCIKICAgICAicHN1YnNiICAgICAlW2Z0bXA3XSwgICAlW2Z0bXAzXSwgICAgICAgICAgICVb
ZnRtcDZdICAgICAgICAgICAgXG5cdCIKICAgICAicGFkZHNiICAgICAlW2Z0bXAwXSwgICAlW2Z0
bXAwXSwgICAgICAgICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIKICAgICAicGFkZHNiICAg
ICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDddICAgICAgICAgICAgXG5c
dCIKICAgICAicGFkZHNiICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRt
cDddICAgICAgICAgICAgXG5cdCIKLSAgICAiYW5kICAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1
XSwgICAgICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKKyAgICAicGFuZCAgICAgICAl
W2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIK
ICAgICAicGFkZHNiICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZmZfcGJf
MDRdICAgICAgICAgXG5cdCIKIAotICAgICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4MDMgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICJtdGMxICAgICAgICVb
dG1wMF0sICAgICVbZnRtcDldICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0Igor
ICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4MDMgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRtcDldICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJwc2xsaCAgICAgICVbZnRt
cDBdLCAgICVbZnRtcDVdLCAgICAgICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgogICAg
ICJwc3JhaCAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wOV0gICAg
ICAgICAgICBcblx0IgogICAgICJwc3JsaCAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAg
ICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgogCi0gICAgImxpICAgICAgICAgJVt0bXAw
XSwgICAgMHgwYiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCi0gICAg
Im10YzEgICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwYiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwg
ICAgJVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgInBz
cmFoICAgICAgJVtmdG1wN10sICAgJVtmdG1wNV0sICAgICAgICAgICAlW2Z0bXA5XSAgICAgICAg
ICAgIFxuXHQiCiAgICAgInBzbGxoICAgICAgJVtmdG1wN10sICAgJVtmdG1wN10sICAgICAgICAg
ICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCi0gICAgIm9yICAgICAgICAgJVtmdG1wMF0sICAg
JVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA3XSAgICAgICAgICAgIFxuXHQiCisgICAgInBvciAg
ICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA3XSAgICAgICAgICAg
IFxuXHQiCiAgICAgInBzdWJzYiAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAl
W2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wM10sICAgJVtm
dG1wM10sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAg
ICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxu
XHQiCiAgICAgInBzdWJzYiAgICAgJVtmdG1wNV0sICAgJVtmdG1wNV0sICAgICAgICAgICAlW2Zm
X3BiXzAxXSAgICAgICAgIFxuXHQiCiAKLSAgICAibGkgICAgICAgICAlW3RtcDBdLCAgICAweDAz
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKLSAgICAibXRjMSAgICAg
ICAlW3RtcDBdLCAgICAlW2Z0bXA5XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5c
dCIKKyAgICAiZGxpICAgICAgICAlW3RtcDBdLCAgICAweDAzICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXG5cdCIKKyAgICAiZG10YzEgICAgICAlW3RtcDBdLCAgICAlW2Z0bXA5
XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAicHNsbGggICAgICAl
W2Z0bXAwXSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIK
ICAgICAicHNyYWggICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDld
ICAgICAgICAgICAgXG5cdCIKICAgICAicHNybGggICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwg
ICAgICAgICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIKIAotICAgICJsaSAgICAgICAgICVb
dG1wMF0sICAgIDB4MGIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0Igot
ICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDldICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4MGIgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1w
MF0sICAgICVbZnRtcDldICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAg
ICJwc3JhaCAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAgICAgJVtmdG1wOV0gICAg
ICAgICAgICBcblx0IgogICAgICJwc2xsaCAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAg
ICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgotICAgICJvciAgICAgICAgICVbZnRtcDBd
LCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgorICAgICJw
b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wNV0gICAgICAg
ICAgICBcblx0IgogICAgICJwYWRkc2IgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAg
ICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRtcDZdLCAg
ICVbZnRtcDZdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgorICAgICJweG9y
ICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAg
ICBcblx0IgogCiAgICAgImxkYzEgICAgICAgJVtmdG1wMF0sICAgMHgwMCglW3NyY3RdKSAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImxkYzEgICAgICAgJVtmdG1wNF0sICAg
MHgwOCglW3NyY3RdKSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCkBAIC0xMTk1LDcg
KzEyNzIsNyBAQCB2b2lkIHZwOF9sb29wX2ZpbHRlcl9zaW1wbGVfdmVydGljYWxfZWRnZV9tbWko
dW5zaWduZWQgY2hhciAqc3JjX3B0ciwKICAgICAicHVucGNraGh3ICAlW2Z0bXA1XSwgICAlW2Z0
bXAxXSwgICAgICAgICAgICVbZnRtcDNdICAgICAgICAgICAgXG5cdCIKICAgICAicHVucGNrbGh3
ICAlW2Z0bXAxXSwgICAlW2Z0bXAxXSwgICAgICAgICAgICVbZnRtcDNdICAgICAgICAgICAgXG5c
dCIKIAotICAgICJkc3JsICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtm
dG1wMTBdICAgICAgICAgICBcblx0IgorICAgICJzc3JsZCAgICAgICVbZnRtcDBdLCAgICVbZnRt
cDBdLCAgICAgICAgICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0IgogICAgIE1NSV9TVUJVKCVb
YWRkcjFdLCAlW2FkZHIwXSwgJVtzcmNfcGl4ZWxfc3RlcF94NF0pCiAgICAgImdzc3dsYzEgICAg
JVtmdG1wMF0sICAgMHgwMyglW2FkZHIxXSkgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQi
CiAgICAgImdzc3dyYzEgICAgJVtmdG1wMF0sICAgMHgwMCglW2FkZHIxXSkgICAgICAgICAgICAg
ICAgICAgICAgICAgIFxuXHQiCkBAIC0xMjAzLDcgKzEyODAsNyBAQCB2b2lkIHZwOF9sb29wX2Zp
bHRlcl9zaW1wbGVfdmVydGljYWxfZWRnZV9tbWkodW5zaWduZWQgY2hhciAqc3JjX3B0ciwKICAg
ICAiZ3Nzd2xjMSAgICAlW2Z0bXA2XSwgICAweDAzKCVbYWRkcjFdKSAgICAgICAgICAgICAgICAg
ICAgICAgICAgXG5cdCIKICAgICAiZ3Nzd3JjMSAgICAlW2Z0bXA2XSwgICAweDAwKCVbYWRkcjFd
KSAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKIAotICAgICJkc3JsICAgICAgICVbZnRt
cDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0IgorICAg
ICJzc3JsZCAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmdG1wMTBdICAg
ICAgICAgICBcblx0IgogICAgICJnc3N3bGMxICAgICVbZnRtcDFdLCAgIDB4MDMoJVtzcmNfcHRy
XSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJnc3N3cmMxICAgICVbZnRtcDFd
LCAgIDB4MDAoJVtzcmNfcHRyXSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogCkBAIC0x
MjE1LDExICsxMjkyLDExIEBAIHZvaWQgdnA4X2xvb3BfZmlsdGVyX3NpbXBsZV92ZXJ0aWNhbF9l
ZGdlX21taSh1bnNpZ25lZCBjaGFyICpzcmNfcHRyLAogICAgICJnc3N3bGMxICAgICVbZnRtcDVd
LCAgIDB4MDMoJVthZGRyMV0pICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJn
c3N3cmMxICAgICVbZnRtcDVdLCAgIDB4MDAoJVthZGRyMV0pICAgICAgICAgICAgICAgICAgICAg
ICAgICBcblx0IgogCi0gICAgImRzcmwgICAgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0sICAgICAg
ICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCisgICAgInNzcmxkICAgICAgJVtmdG1wMV0s
ICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCiAgICAgImdz
c3dsYzEgICAgJVtmdG1wMV0sICAgMHgwMyglW2FkZHIwXSkgICAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCiAgICAgImdzc3dyYzEgICAgJVtmdG1wMV0sICAgMHgwMCglW2FkZHIwXSkgICAg
ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAKLSAgICAiZHNybCAgICAgICAlW2Z0bXA1XSwg
ICAlW2Z0bXA1XSwgICAgICAgICAgICVbZnRtcDEwXSAgICAgICAgICAgXG5cdCIKKyAgICAic3Ny
bGQgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZnRtcDEwXSAgICAgICAg
ICAgXG5cdCIKICAgICBNTUlfQUREVSglW2FkZHIxXSwgJVthZGRyMF0sICVbc3JjX3BpeGVsX3N0
ZXBfeDJdKQogICAgICJnc3N3bGMxICAgICVbZnRtcDVdLCAgIDB4MDMoJVthZGRyMV0pICAgICAg
ICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJnc3N3cmMxICAgICVbZnRtcDVdLCAgIDB4
MDAoJVthZGRyMV0pICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgpAQCAtMTIzNSwxNiAr
MTMxMiwxNyBAQCB2b2lkIHZwOF9sb29wX2ZpbHRlcl9zaW1wbGVfdmVydGljYWxfZWRnZV9tbWko
dW5zaWduZWQgY2hhciAqc3JjX3B0ciwKICAgICAgIFtmdG1wMTBdIj0mZiIoZnRtcFsxMF0pLCAg
ICAgICAgICAgIFtmdG1wMTFdIj0mZiIoZnRtcFsxMV0pLAogICAgICAgW3RtcDBdIj0mciIodG1w
WzBdKSwKICAgICAgIFthZGRyMF0iPSZyIihhZGRyWzBdKSwgICAgICAgICAgICBbYWRkcjFdIj0m
ciIoYWRkclsxXSksCi0gICAgICBbc3JjX3B0cl0iKyZyIihzcmNfcHRyKSwgICAgICAgICAgW2Nv
dW50XSIrJnIiKGNvdW50KQorICAgICAgW3NyY19wdHJdIismciIoc3JjX3B0ciksICAgICAgICAg
IFtjb3VudF0iKyZyIihjb3VudCksCisgICAgICBbZmZfcGJfZmVdIj0mZiIoZmZfcGJfZmUpLCAg
ICAgICAgW2ZmX3BiXzgwXSI9JmYiKGZmX3BiXzgwKSwKKyAgICAgIFtmZl9wYl8wNF0iPSZmIihm
Zl9wYl8wNCksICAgICAgICBbZmZfcGJfMDFdIj0mZiIoZmZfcGJfMDEpCiAgICAgOiBbYmxpbWl0
XSJyIihibGltaXQpLCAgICAgICAgICAgICAgW3NyY3RdInIiKHNyY3QpLAogICAgICAgW3NyY19w
aXhlbF9zdGVwXSJyIigobWlwc19yZWcpc3JjX3BpeGVsX3N0ZXApLAogICAgICAgW3NyY19waXhl
bF9zdGVwX3gyXSJyIigobWlwc19yZWcpKHNyY19waXhlbF9zdGVwPDwxKSksCiAgICAgICBbc3Jj
X3BpeGVsX3N0ZXBfeDRdInIiKChtaXBzX3JlZykoc3JjX3BpeGVsX3N0ZXA8PDIpKSwKLSAgICAg
IFtzcmNfcGl4ZWxfc3RlcF94OF0iciIoKG1pcHNfcmVnKShzcmNfcGl4ZWxfc3RlcDw8MykpLAot
ICAgICAgW2ZmX3BiX2ZlXSJmIihmZl9wYl9mZSksICAgICAgICAgIFtmZl9wYl84MF0iZiIoZmZf
cGJfODApLAotICAgICAgW2ZmX3BiXzA0XSJmIihmZl9wYl8wNCksICAgICAgICAgIFtmZl9wYl8w
MV0iZiIoZmZfcGJfMDEpCisgICAgICBbc3JjX3BpeGVsX3N0ZXBfeDhdInIiKChtaXBzX3JlZyko
c3JjX3BpeGVsX3N0ZXA8PDMpKQogICAgIDogIm1lbW9yeSIKICAgKTsKKyAgLyogY2xhbmctZm9y
bWF0IG9uICovCiB9CiAKIC8qIEhvcml6b250YWwgTUIgZmlsdGVyaW5nICovCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWlwcy9tbWkvc2l4dGFwX2ZpbHRlcl9tbWkuYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9taXBzL21taS9zaXh0YXBfZmlsdGVyX21taS5jCmluZGV4IDc3
ZDY2NWQ0NTYyYTA4ZmJjN2M1MjA5MzBiZjBiZDE3NTk0ZTdiN2MuLmI4NWY3M2ZkZmY4ZmYzOTY3
OGY5ZDM0MDE5OWQ5YmI2YTMxMjBmYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9taXBzL21taS9zaXh0YXBfZmlsdGVyX21taS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9taXBzL21taS9zaXh0YXBfZmlsdGVyX21taS5jCkBAIC03MCw5ICs3MCw4IEBAIHN0YXRpYyBJ
TkxJTkUgdm9pZCB2cDhfZmlsdGVyX2Jsb2NrMWRfaDZfbW1pKHVuc2lnbmVkIGNoYXIgKnNyY19w
dHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25l
ZCBpbnQgb3V0cHV0X2hlaWdodCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHVuc2lnbmVkIGludCBvdXRwdXRfd2lkdGgsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpbnQxNl90ICp2cDhfZmlsdGVyKSB7Ci0g
IHVpbnQzMl90IHRtcFsxXTsKLSAgREVDTEFSRV9BTElHTkVEKDgsIGNvbnN0IHVpbnQ2NF90LCBm
Zl9waF80MCkgPSB7IDB4MDA0MDAwNDAwMDQwMDA0MFVMTCB9OwotCisgIHVpbnQ2NF90IHRtcFsx
XTsKKyAgZG91YmxlIGZmX3BoXzQwOwogI2lmIF9NSVBTX1NJTSA9PSBfQUJJTzMyCiAgIHJlZ2lz
dGVyIGRvdWJsZSBmemVybyBhc20oIiRmMCIpOwogICByZWdpc3RlciBkb3VibGUgZnRtcDAgYXNt
KCIkZjIiKTsKQEAgLTEwMywxOCArMTAyLDIxIEBAIHN0YXRpYyBJTkxJTkUgdm9pZCB2cDhfZmls
dGVyX2Jsb2NrMWRfaDZfbW1pKHVuc2lnbmVkIGNoYXIgKnNyY19wdHIsCiAgIHJlZ2lzdGVyIGRv
dWJsZSBmdG1wMTEgYXNtKCIkZjEyIik7CiAjZW5kaWYgIC8vIF9NSVBTX1NJTSA9PSBfQUJJTzMy
CiAKKyAgLyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlICgKKyAgICAi
ZGxpICAgICAgICAlW3RtcDBdLCAgICAgICAgMHgwMDQwMDA0MDAwNDAwMDQwICAgICAgICAgICAg
ICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICAgICAlW2ZmX3BoXzQw
XSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImxkYzEgICAgICAgJVtmdG1w
MF0sICAgICAgIDB4MDAoJVt2cDhfZmlsdGVyXSkgICAgICAgICAgICAgICAgICAgXG5cdCIKICAg
ICAibGRjMSAgICAgICAlW2Z0bXAxXSwgICAgICAgMHgxMCglW3ZwOF9maWx0ZXJdKSAgICAgICAg
ICAgICAgICAgICBcblx0IgogICAgICJsZGMxICAgICAgICVbZnRtcDJdLCAgICAgICAweDIwKCVb
dnA4X2ZpbHRlcl0pICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImxkYzEgICAgICAgJVtm
dG1wM10sICAgICAgIDB4MzAoJVt2cDhfZmlsdGVyXSkgICAgICAgICAgICAgICAgICAgXG5cdCIK
ICAgICAibGRjMSAgICAgICAlW2Z0bXA0XSwgICAgICAgMHg0MCglW3ZwOF9maWx0ZXJdKSAgICAg
ICAgICAgICAgICAgICBcblx0IgogICAgICJsZGMxICAgICAgICVbZnRtcDVdLCAgICAgICAweDUw
KCVbdnA4X2ZpbHRlcl0pICAgICAgICAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAg
JVtmemVyb10sICAgICAgICVbZnplcm9dLCAgICAgICAgICAgJVtmemVyb10gICAgICAgICAgXG5c
dCIKLSAgICAibGkgICAgICAgICAlW3RtcDBdLCAgICAgICAgMHgwNyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICAgICAl
W2Z0bXA3XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCi0gICAgImxpICAgICAg
ICAgJVt0bXAwXSwgICAgICAgIDB4MDggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XG5cdCIKLSAgICAibXRjMSAgICAgICAlW3RtcDBdLCAgICAgICAgJVtmdG1wMTFdICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnplcm9dLCAgICAg
ICAlW2Z6ZXJvXSwgICAgICAgICAgICVbZnplcm9dICAgICAgICAgIFxuXHQiCisgICAgImRsaSAg
ICAgICAgJVt0bXAwXSwgICAgICAgIDB4MDcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXG5cdCIKKyAgICAiZG10YzEgICAgICAlW3RtcDBdLCAgICAgICAgJVtmdG1wN10gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAg
ICAgICAweDA4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRt
dGMxICAgICAgJVt0bXAwXSwgICAgICAgICVbZnRtcDExXSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXG5cdCIKIAogICAgICIxOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImdzbGRsYzEgICAgJVtmdG1w
OV0sICAgICAgIDB4MDUoJVtzcmNfcHRyXSkgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKQEAg
LTEzNywxMiArMTM5LDEyIEBAIHN0YXRpYyBJTkxJTkUgdm9pZCB2cDhfZmlsdGVyX2Jsb2NrMWRf
aDZfbW1pKHVuc2lnbmVkIGNoYXIgKnNyY19wdHIsCiAgICAgInBtdWxsaCAgICAgJVtmdG1wNl0s
ICAgICAgICVbZnRtcDZdLCAgICAgICAgICAlW2Z0bXA1XSAgICAgICAgICAgXG5cdCIKICAgICAi
cGFkZHNoICAgICAlW2Z0bXA4XSwgICAgICAgJVtmdG1wOF0sICAgICAgICAgICVbZnRtcDZdICAg
ICAgICAgICBcblx0IgogCi0gICAgImRzcmwgICAgICAgJVtmdG1wMTBdLCAgICAgICVbZnRtcDEw
XSwgICAgICAgICAlW2Z0bXAxMV0gICAgICAgICAgXG5cdCIKKyAgICAic3NybGQgICAgICAlW2Z0
bXAxMF0sICAgICAgJVtmdG1wMTBdLCAgICAgICAgICVbZnRtcDExXSAgICAgICAgICBcblx0Igog
ICAgICJwdW5wY2tsYmggICVbZnRtcDZdLCAgICAgICAlW2Z0bXAxMF0sICAgICAgICAgJVtmemVy
b10gICAgICAgICAgIFxuXHQiCiAgICAgInBtdWxsaCAgICAgJVtmdG1wNl0sICAgICAgICVbZnRt
cDZdLCAgICAgICAgICAlW2Z0bXAyXSAgICAgICAgICAgXG5cdCIKICAgICAicGFkZHNoICAgICAl
W2Z0bXA4XSwgICAgICAgJVtmdG1wOF0sICAgICAgICAgICVbZnRtcDZdICAgICAgICAgICBcblx0
IgogCi0gICAgImRzcmwgICAgICAgJVtmdG1wMTBdLCAgICAgICVbZnRtcDEwXSwgICAgICAgICAl
W2Z0bXAxMV0gICAgICAgICAgXG5cdCIKKyAgICAic3NybGQgICAgICAlW2Z0bXAxMF0sICAgICAg
JVtmdG1wMTBdLCAgICAgICAgICVbZnRtcDExXSAgICAgICAgICBcblx0IgogICAgICJwdW5wY2ts
YmggICVbZnRtcDZdLCAgICAgICAlW2Z0bXAxMF0sICAgICAgICAgJVtmemVyb10gICAgICAgICAg
IFxuXHQiCiAgICAgInBtdWxsaCAgICAgJVtmdG1wNl0sICAgICAgICVbZnRtcDZdLCAgICAgICAg
ICAlW2Z0bXAzXSAgICAgICAgICAgXG5cdCIKICAgICAicGFkZHNoICAgICAlW2Z0bXA4XSwgICAg
ICAgJVtmdG1wOF0sICAgICAgICAgICVbZnRtcDZdICAgICAgICAgICBcblx0IgpAQCAtMTY2LDIx
ICsxNjgsMjIgQEAgc3RhdGljIElOTElORSB2b2lkIHZwOF9maWx0ZXJfYmxvY2sxZF9oNl9tbWko
dW5zaWduZWQgY2hhciAqc3JjX3B0ciwKICAgICAgIFtmdG1wOV0iPSZmIihmdG1wOSksICAgICAg
ICAgICAgICBbZnRtcDEwXSI9JmYiKGZ0bXAxMCksCiAgICAgICBbZnRtcDExXSI9JmYiKGZ0bXAx
MSksICAgICAgICAgICAgW3RtcDBdIj0mciIodG1wWzBdKSwKICAgICAgIFtvdXRwdXRfcHRyXSIr
JnIiKG91dHB1dF9wdHIpLCAgICBbb3V0cHV0X2hlaWdodF0iKyZyIihvdXRwdXRfaGVpZ2h0KSwK
LSAgICAgIFtzcmNfcHRyXSIrJnIiKHNyY19wdHIpCisgICAgICBbc3JjX3B0cl0iKyZyIihzcmNf
cHRyKSwgICAgICAgICAgW2ZmX3BoXzQwXSI9JmYiKGZmX3BoXzQwKQogICAgIDogW3NyY19waXhl
bHNfcGVyX2xpbmVdInIiKChtaXBzX3JlZylzcmNfcGl4ZWxzX3Blcl9saW5lKSwKLSAgICAgIFt2
cDhfZmlsdGVyXSJyIih2cDhfZmlsdGVyKSwgICAgICBbb3V0cHV0X3dpZHRoXSJyIihvdXRwdXRf
d2lkdGgpLAotICAgICAgW2ZmX3BoXzQwXSJmIihmZl9waF80MCkKKyAgICAgIFt2cDhfZmlsdGVy
XSJyIih2cDhfZmlsdGVyKSwgICAgICBbb3V0cHV0X3dpZHRoXSJyIihvdXRwdXRfd2lkdGgpCiAg
ICAgOiAibWVtb3J5IgogICAgICk7CisgIC8qIGNsYW5nLWZvcm1hdCBvbiAqLwogfQogCiAvKiBI
b3Jpem9udGFsIGZpbHRlcjogIHBpeGVsX3N0ZXAgaXMgYWx3YXlzIFcgKi8KIHN0YXRpYyBJTkxJ
TkUgdm9pZCB2cDhfZmlsdGVyX2Jsb2NrMWRjX3Y2X21taSgKICAgICB1aW50MTZfdCAqc3JjX3B0
ciwgdW5zaWduZWQgY2hhciAqb3V0cHV0X3B0ciwgdW5zaWduZWQgaW50IG91dHB1dF9oZWlnaHQs
CiAgICAgaW50IG91dHB1dF9waXRjaCwgdW5zaWduZWQgaW50IHBpeGVsc19wZXJfbGluZSwgY29u
c3QgaW50MTZfdCAqdnA4X2ZpbHRlcikgewotICBERUNMQVJFX0FMSUdORUQoOCwgY29uc3QgdWlu
dDY0X3QsIGZmX3BoXzQwKSA9IHsgMHgwMDQwMDA0MDAwNDAwMDQwVUxMIH07Ci0gIHVpbnQzMl90
IHRtcFsxXTsKKyAgZG91YmxlIGZmX3BoXzQwOworICB1aW50NjRfdCB0bXBbMV07CiAgIG1pcHNf
cmVnIGFkZHJbMV07CisKICNpZiBfTUlQU19TSU0gPT0gX0FCSU8zMgogICByZWdpc3RlciBkb3Vi
bGUgZnplcm8gYXNtKCIkZjAiKTsKICAgcmVnaXN0ZXIgZG91YmxlIGZ0bXAwIGFzbSgiJGYyIik7
CkBAIC0yMTUsMTYgKzIxOCwxOSBAQCBzdGF0aWMgSU5MSU5FIHZvaWQgdnA4X2ZpbHRlcl9ibG9j
azFkY192Nl9tbWkoCiAgIHJlZ2lzdGVyIGRvdWJsZSBmdG1wMTMgYXNtKCIkZjE0Iik7CiAjZW5k
aWYgIC8vIF9NSVBTX1NJTSA9PSBfQUJJTzMyCiAKKyAgLyogY2xhbmctZm9ybWF0IG9mZiAqLwog
ICBfX2FzbV9fIHZvbGF0aWxlICgKKyAgICAiZGxpICAgICAgICAlW3RtcDBdLCAgICAgIDB4MDA0
MDAwNDAwMDQwMDA0MCAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAg
ICVbdG1wMF0sICAgICAgJVtmZl9waF80MF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCiAgICAgImxkYzEgICAgICAgJVtmdG1wMF0sICAgICAweDAwKCVbdnA4X2ZpbHRlcl0pICAg
ICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAibGRjMSAgICAgICAlW2Z0bXAxXSwgICAgIDB4
MTAoJVt2cDhfZmlsdGVyXSkgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJsZGMxICAg
ICAgICVbZnRtcDJdLCAgICAgMHgyMCglW3ZwOF9maWx0ZXJdKSAgICAgICAgICAgICAgICAgICAg
IFxuXHQiCiAgICAgImxkYzEgICAgICAgJVtmdG1wM10sICAgICAweDMwKCVbdnA4X2ZpbHRlcl0p
ICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAibGRjMSAgICAgICAlW2Z0bXA0XSwgICAg
IDB4NDAoJVt2cDhfZmlsdGVyXSkgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJsZGMx
ICAgICAgICVbZnRtcDVdLCAgICAgMHg1MCglW3ZwOF9maWx0ZXJdKSAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmemVyb10sICAgICAlW2Z6ZXJvXSwgICAgICAg
ICVbZnplcm9dICAgICAgICAgICAgICAgXG5cdCIKLSAgICAibGkgICAgICAgICAlW3RtcDBdLCAg
ICAgIDB4MDcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICJt
dGMxICAgICAgICVbdG1wMF0sICAgICAgJVtmdG1wMTNdICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmemVyb10sICAgICAlW2Z6ZXJvXSwgICAg
ICAgICVbZnplcm9dICAgICAgICAgICAgICAgXG5cdCIKKyAgICAiZGxpICAgICAgICAlW3RtcDBd
LCAgICAgIDB4MDcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAg
ICJkbXRjMSAgICAgICVbdG1wMF0sICAgICAgJVtmdG1wMTNdICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFxuXHQiCiAKICAgICAvKiBJbiBvcmRlciB0byBtYWtlIGZ1bGwgdXNlIG9mIG1l
bW9yeSBsb2FkIGRlbGF5IHNsb3QsCiAgICAgICogT3BlcmF0aW9uIG9mIG1lbW9yeSBsb2FkaW5n
IGFuZCBjYWxjdWxhdGluZyBoYXMgYmVlbiByZWFycmFuZ2VkLgpAQCAtMjg1LDE1ICsyOTEsMTYg
QEAgc3RhdGljIElOTElORSB2b2lkIHZwOF9maWx0ZXJfYmxvY2sxZGNfdjZfbW1pKAogICAgICAg
W2Z0bXAxMV0iPSZmIihmdG1wMTEpLCAgICAgICAgICAgIFtmdG1wMTJdIj0mZiIoZnRtcDEyKSwK
ICAgICAgIFtmdG1wMTNdIj0mZiIoZnRtcDEzKSwgICAgICAgICAgICBbdG1wMF0iPSZyIih0bXBb
MF0pLAogICAgICAgW2FkZHIwXSI9JnIiKGFkZHJbMF0pLCAgICAgICAgICAgIFtzcmNfcHRyXSIr
JnIiKHNyY19wdHIpLAotICAgICAgW291dHB1dF9wdHJdIismciIob3V0cHV0X3B0ciksICAgIFtv
dXRwdXRfaGVpZ2h0XSIrJnIiKG91dHB1dF9oZWlnaHQpCisgICAgICBbb3V0cHV0X3B0cl0iKyZy
IihvdXRwdXRfcHRyKSwgICAgW291dHB1dF9oZWlnaHRdIismciIob3V0cHV0X2hlaWdodCksCisg
ICAgICBbZmZfcGhfNDBdIj0mZiIoZmZfcGhfNDApCiAgICAgOiBbcGl4ZWxzX3Blcl9saW5lXSJy
IigobWlwc19yZWcpcGl4ZWxzX3Blcl9saW5lKSwKICAgICAgIFtwaXhlbHNfcGVyX2xpbmVfeDJd
InIiKChtaXBzX3JlZykocGl4ZWxzX3Blcl9saW5lPDwxKSksCiAgICAgICBbcGl4ZWxzX3Blcl9s
aW5lX3g0XSJyIigobWlwc19yZWcpKHBpeGVsc19wZXJfbGluZTw8MikpLAogICAgICAgW3ZwOF9m
aWx0ZXJdInIiKHZwOF9maWx0ZXIpLAotICAgICAgW291dHB1dF9waXRjaF0iciIoKG1pcHNfcmVn
KW91dHB1dF9waXRjaCksCi0gICAgICBbZmZfcGhfNDBdImYiKGZmX3BoXzQwKQorICAgICAgW291
dHB1dF9waXRjaF0iciIoKG1pcHNfcmVnKW91dHB1dF9waXRjaCkKICAgICA6ICJtZW1vcnkiCiAg
ICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICovCiB9CiAKIC8qIFdoZW4geG9mZnNldCA9PSAw
LCB2cDhfZmlsdGVyPSB7MCwwLDEyOCwwLDAsMH0sCkBAIC0zMTMsOCArMzIwLDkgQEAgc3RhdGlj
IElOTElORSB2b2lkIHZwOF9maWx0ZXJfYmxvY2sxZF9oNl9maWx0ZXIwX21taSgKICAgcmVnaXN0
ZXIgZG91YmxlIGZ0bXAxIGFzbSgiJGYyIik7CiAjZW5kaWYgIC8vIF9NSVBTX1NJTSA9PSBfQUJJ
TzMyCiAKKyAgLyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlICgKLSAg
ICAieG9yICAgICAgICAlW2Z6ZXJvXSwgICAgICAgJVtmemVyb10sICAgICAgICAgICAlW2Z6ZXJv
XSAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnplcm9dLCAgICAgICAlW2Z6ZXJv
XSwgICAgICAgICAgICVbZnplcm9dICAgICAgICAgIFxuXHQiCiAKICAgICAiMTogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0
IgogICAgICJnc2xkbGMxICAgICVbZnRtcDBdLCAgICAgICAweDA3KCVbc3JjX3B0cl0pICAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCkBAIC0zMzUsNiArMzQzLDcgQEAgc3RhdGljIElOTElORSB2
b2lkIHZwOF9maWx0ZXJfYmxvY2sxZF9oNl9maWx0ZXIwX21taSgKICAgICAgIFtvdXRwdXRfd2lk
dGhdInIiKG91dHB1dF93aWR0aCkKICAgICA6ICJtZW1vcnkiCiAgICAgKTsKKyAgLyogY2xhbmct
Zm9ybWF0IG9uICovCiB9CiAKIHN0YXRpYyBJTkxJTkUgdm9pZCB2cDhfZmlsdGVyX2Jsb2NrMWRj
X3Y2X2ZpbHRlcjBfbW1pKApAQCAtMzUwLDggKzM1OSw5IEBAIHN0YXRpYyBJTkxJTkUgdm9pZCB2
cDhfZmlsdGVyX2Jsb2NrMWRjX3Y2X2ZpbHRlcjBfbW1pKAogICByZWdpc3RlciBkb3VibGUgZnRt
cDEgYXNtKCIkZjIiKTsKICNlbmRpZiAgLy8gX01JUFNfU0lNID09IF9BQklPMzIKIAorICAvKiBj
bGFuZy1mb3JtYXQgb24gKi8KICAgX19hc21fXyB2b2xhdGlsZSAoCi0gICAgInhvciAgICAgICAg
JVtmemVyb10sICAgICAlW2Z6ZXJvXSwgICAgICAgICVbZnplcm9dICAgICAgICAgICAgICAgXG5c
dCIKKyAgICAicHhvciAgICAgICAlW2Z6ZXJvXSwgICAgICVbZnplcm9dLCAgICAgICAgJVtmemVy
b10gICAgICAgICAgICAgICBcblx0IgogCiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAiZ3NsZGxj
MSAgICAlW2Z0bXAwXSwgICAgIDB4MDcoJVtzcmNfcHRyXSkgICAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgpAQCAtMzcxLDYgKzM4MSw3IEBAIHN0YXRpYyBJTkxJTkUgdm9pZCB2cDhfZmlsdGVy
X2Jsb2NrMWRjX3Y2X2ZpbHRlcjBfbW1pKAogICAgICAgW291dHB1dF9waXRjaF0iciIoKG1pcHNf
cmVnKW91dHB1dF9waXRjaCkKICAgICA6ICJtZW1vcnkiCiAgICAgKTsKKyAgLyogY2xhbmctZm9y
bWF0IG9uICovCiB9CiAKICNkZWZpbmUgc2l4dGFwTnhNKG4sIG0pICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vbWlwcy9tc2EvdnA4X21hY3Jvc19tc2EuaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9taXBzL21zYS92cDhfbWFjcm9zX21zYS5oCmluZGV4IDE0ZjgzNzk5ZmZkNmVk
YThhMTNkOWZkMDNhNTk1YmUyZGU0OGZjYzkuLmRkYzg4MWE3ZmNjZDM4YWUxYzc1ZjIwNmU2YWUx
MGU5NjdjMmQ0YzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9taXBzL21zYS92
cDhfbWFjcm9zX21zYS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9taXBzL21zYS92cDhf
bWFjcm9zX21zYS5oCkBAIC0xMjIsMTAgKzEyMiwxMCBAQAogICAgIGNvbnN0IHVpbnQ4X3QgKnBz
cmNfbSA9IChjb25zdCB1aW50OF90ICopKHBzcmMpOyBcCiAgICAgdWludDMyX3QgdmFsX207ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgIGFzbSB2b2xhdGlsZSgidWx3ICAl
W3ZhbF9tXSwgICVbcHNyY19tXSAgXG5cdCIgICBcCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgICAgICAgICAgICAgOiBbdmFsX21d
ICI9ciIodmFsX20pICAgICAgICAgICAgICAgXAotICAgICAgICAgICAgICAgICA6IFtwc3JjX21d
ICJtIigqcHNyY19tKSk7ICAgICAgICAgICBcCisgICAgYXNtIHZvbGF0aWxlKCJsd3IgJVt2YWxf
bV0sIDAoJVtwc3JjX21dKSBcblx0IiAgIFwKKyAgICAgICAgICAgICAgICAgImx3bCAlW3ZhbF9t
XSwgMyglW3BzcmNfbV0pIFxuXHQiICAgXAorICAgICAgICAgICAgICAgICA6IFt2YWxfbV0gIj0m
ciIodmFsX20pICAgICAgICAgICAgICBcCisgICAgICAgICAgICAgICAgIDogW3BzcmNfbV0gInIi
KHBzcmNfbSkpOyAgICAgICAgICAgIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAogICAgIHZhbF9tOyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCiAgIH0pCkBAIC0xMzYsMTAgKzEzNiwxMCBAQAogICAgIGNv
bnN0IHVpbnQ4X3QgKnBzcmNfbSA9IChjb25zdCB1aW50OF90ICopKHBzcmMpOyBcCiAgICAgdWlu
dDY0X3QgdmFsX20gPSAwOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgIGFzbSB2
b2xhdGlsZSgidWxkICAlW3ZhbF9tXSwgICVbcHNyY19tXSAgXG5cdCIgICBcCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgICAgICAg
ICAgICAgOiBbdmFsX21dICI9ciIodmFsX20pICAgICAgICAgICAgICAgXAotICAgICAgICAgICAg
ICAgICA6IFtwc3JjX21dICJtIigqcHNyY19tKSk7ICAgICAgICAgICBcCisgICAgYXNtIHZvbGF0
aWxlKCJsZHIgJVt2YWxfbV0sIDAoJVtwc3JjX21dKSBcblx0IiAgIFwKKyAgICAgICAgICAgICAg
ICAgImxkbCAlW3ZhbF9tXSwgNyglW3BzcmNfbV0pIFxuXHQiICAgXAorICAgICAgICAgICAgICAg
ICA6IFt2YWxfbV0gIj0mciIodmFsX20pICAgICAgICAgICAgICBcCisgICAgICAgICAgICAgICAg
IDogW3BzcmNfbV0gInIiKHBzcmNfbSkpOyAgICAgICAgICAgIFwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIHZhbF9tOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgIH0pCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vdGhyZWFkaW5nLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
dGhyZWFkaW5nLmgKaW5kZXggZjkyMTM2OTM4NjRlMjkwYWZiZThjMzZjMWFlNmI2MmIyMmViMzc2
MS4uMWNmYjlmZWM1MTU0NjE0NjJhMTE2MDQ4ODI4NGE4N2UyMmVkNDliOCAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3RocmVhZGluZy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi90aHJlYWRpbmcuaApAQCAtMTcxLDE3ICsxNzEsMjAgQEAgc3RhdGljIGlubGluZSBpbnQg
c2VtX2Rlc3Ryb3koc2VtX3QgKnNlbSkgewogI2RlZmluZSBzZW1fd2FpdChzZW0pIChzZW1hcGhv
cmVfd2FpdCgqc2VtKSkKICNkZWZpbmUgc2VtX3Bvc3Qoc2VtKSBzZW1hcGhvcmVfc2lnbmFsKCpz
ZW0pCiAjZGVmaW5lIHNlbV9kZXN0cm95KHNlbSkgc2VtYXBob3JlX2Rlc3Ryb3kobWFjaF90YXNr
X3NlbGYoKSwgKnNlbSkKLSNkZWZpbmUgdGhyZWFkX3NsZWVwKG5tcykKLS8qIHsgc3RydWN0IHRp
bWVzcGVjIHRzO3RzLnR2X3NlYz0wOyB0cy50dl9uc2VjID0KLSAgIDEwMDAqbm1zO25hbm9zbGVl
cCgmdHMsIE5VTEwpO30gKi8KICNlbHNlCiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAjaW5jbHVkZSA8
c2NoZWQuaD4KLSNkZWZpbmUgdGhyZWFkX3NsZWVwKG5tcykgc2NoZWRfeWllbGQoKTsKKyNlbmRp
ZiAvKiBfX0FQUExFX18gKi8KKy8qIE5vdCBXaW5kb3dzLiBBc3N1bWUgcHRocmVhZHMgKi8KKwor
LyogdGhyZWFkX3NsZWVwIGltcGxlbWVudGF0aW9uOiB5aWVsZCB1bmxlc3MgTGludXgvVW5peC4g
Ki8KKyNpZiBkZWZpbmVkKF9fdW5peF9fKSB8fCBkZWZpbmVkKF9fQVBQTEVfXykKKyNkZWZpbmUg
dGhyZWFkX3NsZWVwKG5tcykKIC8qIHtzdHJ1Y3QgdGltZXNwZWMgdHM7dHMudHZfc2VjPTA7CiAg
ICAgdHMudHZfbnNlYyA9IDEwMDAqbm1zO25hbm9zbGVlcCgmdHMsIE5VTEwpO30gKi8KLSNlbmRp
ZgotLyogTm90IFdpbmRvd3MuIEFzc3VtZSBwdGhyZWFkcyAqLworI2Vsc2UKKyNkZWZpbmUgdGhy
ZWFkX3NsZWVwKG5tcykgc2NoZWRfeWllbGQoKTsKKyNlbmRpZiAvKiBfX3VuaXhfXyB8fCBfX0FQ
UExFX18gKi8KIAogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94
ODYvZGVxdWFudGl6ZV9tbXguYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9kZXF1YW50
aXplX21teC5hc20KaW5kZXggYmZkZDk5Nzc4MjhjZmU0MWI5ZjExY2M0NzQ5OTNiMjRkYWQ2ZjE2
Ni4uMGEyNjllMTVmNzE1OWE1NjI3ZWMzMWUyMTU1MzAzYTE0N2UxOWQ4NCAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9kZXF1YW50aXplX21teC5hc20KKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3g4Ni9kZXF1YW50aXplX21teC5hc20KQEAgLTE0LDcgKzE0LDcgQEAK
IFNFQ1RJT04gLnRleHQKIAogO3ZvaWQgdnA4X2RlcXVhbnRpemVfYl9pbXBsX21teChzaG9ydCAq
c3EsIHNob3J0ICpkcSwgc2hvcnQgKnEpCi1nbG9iYWwgc3ltKHZwOF9kZXF1YW50aXplX2JfaW1w
bF9tbXgpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfZGVxdWFudGl6ZV9iX2ltcGxfbW14KQogc3lt
KHZwOF9kZXF1YW50aXplX2JfaW1wbF9tbXgpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1v
diAgICAgICAgIHJicCwgcnNwCkBAIC01Niw3ICs1Niw3IEBAIHN5bSh2cDhfZGVxdWFudGl6ZV9i
X2ltcGxfbW14KToKIDtzaG9ydCAqZHEsICAgICAgICAgICAgICAgMQogO3Vuc2lnbmVkIGNoYXIg
KmRlc3QsICAgICAyCiA7aW50IHN0cmlkZSkgICAgICAgICAgICAgIDMKLWdsb2JhbCBzeW0odnA4
X2RlcXVhbnRfaWRjdF9hZGRfbW14KSBQUklWQVRFCitnbG9iYWxzeW0odnA4X2RlcXVhbnRfaWRj
dF9hZGRfbW14KQogc3ltKHZwOF9kZXF1YW50X2lkY3RfYWRkX21teCk6CiAgICAgcHVzaCAgICAg
ICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi94ODYvaWRjdGxsbV9tbXguYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4
Ni9pZGN0bGxtX21teC5hc20KaW5kZXggNTc3M2Q5ZDg0ZTg5MjY5MzgyY2Q0N2UyMDg4OTMzNjI0
MGUzMGE3OS4uNmNlYTg2ZmUwMzQzYTE3ZTc0NWRiODg0ZjlmNTBiMGQyOGE3OTg4YyAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9pZGN0bGxtX21teC5hc20KKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3g4Ni9pZGN0bGxtX21teC5hc20KQEAgLTM1LDcgKzM1LDcgQEAg
U0VDVElPTiAudGV4dAogCiA7dm9pZCB2cDhfc2hvcnRfaWRjdDR4NGxsbV9tbXgoc2hvcnQgKmlu
cHV0LCB1bnNpZ25lZCBjaGFyICpwcmVkLAogO2ludCBwaXRjaCwgdW5zaWduZWQgY2hhciAqZGVz
dCxpbnQgc3RyaWRlKQotZ2xvYmFsIHN5bSh2cDhfc2hvcnRfaWRjdDR4NGxsbV9tbXgpIFBSSVZB
VEUKK2dsb2JhbHN5bSh2cDhfc2hvcnRfaWRjdDR4NGxsbV9tbXgpCiBzeW0odnA4X3Nob3J0X2lk
Y3Q0eDRsbG1fbW14KToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAs
IHJzcApAQCAtMjI1LDcgKzIyNSw3IEBAIHN5bSh2cDhfc2hvcnRfaWRjdDR4NGxsbV9tbXgpOgog
O2ludCBwcmVkX3N0cmlkZSwKIDt1bnNpZ25lZCBjaGFyICpkc3RfcHRyLAogO2ludCBzdHJpZGUp
Ci1nbG9iYWwgc3ltKHZwOF9kY19vbmx5X2lkY3RfYWRkX21teCkgUFJJVkFURQorZ2xvYmFsc3lt
KHZwOF9kY19vbmx5X2lkY3RfYWRkX21teCkKIHN5bSh2cDhfZGNfb25seV9pZGN0X2FkZF9tbXgp
OgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2lkY3RsbG1fc3NlMi5hc20gYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24veDg2L2lkY3RsbG1fc3NlMi5hc20KaW5kZXggNTYwZmFiYTAwMGNmNzNl
NDY2ZThjMjExYTNiNGVmOTdiM2NkNjk4MC4uYmI3OWQyZGEzYjNmOTcwOWY1YjUxOWRlMDQ3ODIw
NDEwYmI0MmJjYSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9pZGN0bGxt
X3NzZTIuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvaWRjdGxsbV9zc2UyLmFz
bQpAQCAtMjEsNyArMjEsNyBAQAogCiBTRUNUSU9OIC50ZXh0CiAKLWdsb2JhbCBzeW0odnA4X2lk
Y3RfZGVxdWFudF8wXzJ4X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfaWRjdF9kZXF1YW50
XzBfMnhfc3NlMikKIHN5bSh2cDhfaWRjdF9kZXF1YW50XzBfMnhfc3NlMik6CiAgICAgcHVzaCAg
ICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTEwMyw3ICsxMDMsNyBAQCBz
eW0odnA4X2lkY3RfZGVxdWFudF8wXzJ4X3NzZTIpOgogOyAgIHVuc2lnbmVkIGNoYXIgKmRzdCAg
LSAyCiA7ICAgaW50IGRzdF9zdHJpZGUgICAgICAtIDMKIDsgKQotZ2xvYmFsIHN5bSh2cDhfaWRj
dF9kZXF1YW50X2Z1bGxfMnhfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZwOF9pZGN0X2RlcXVh
bnRfZnVsbF8yeF9zc2UyKQogc3ltKHZwOF9pZGN0X2RlcXVhbnRfZnVsbF8yeF9zc2UyKToKICAg
ICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMzYwLDcgKzM2
MCw3IEBAIHN5bSh2cDhfaWRjdF9kZXF1YW50X2Z1bGxfMnhfc3NlMik6CiA7ICAgaW50IGRzdF9z
dHJpZGUgICAgICAtIDMKIDsgICBzaG9ydCAqZGMgICAgICAgICAgIC0gNAogOyApCi1nbG9iYWwg
c3ltKHZwOF9pZGN0X2RlcXVhbnRfZGNfMF8yeF9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnA4
X2lkY3RfZGVxdWFudF9kY18wXzJ4X3NzZTIpCiBzeW0odnA4X2lkY3RfZGVxdWFudF9kY18wXzJ4
X3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBA
IC00MzYsNyArNDM2LDcgQEAgc3ltKHZwOF9pZGN0X2RlcXVhbnRfZGNfMF8yeF9zc2UyKToKIDsg
ICBpbnQgZHN0X3N0cmlkZSAgICAgIC0gMwogOyAgIHNob3J0ICpkYyAgICAgICAgICAgLSA0CiA7
ICkKLWdsb2JhbCBzeW0odnA4X2lkY3RfZGVxdWFudF9kY19mdWxsXzJ4X3NzZTIpIFBSSVZBVEUK
K2dsb2JhbHN5bSh2cDhfaWRjdF9kZXF1YW50X2RjX2Z1bGxfMnhfc3NlMikKIHN5bSh2cDhfaWRj
dF9kZXF1YW50X2RjX2Z1bGxfMnhfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92
ICAgICAgICAgcmJwLCByc3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYv
aXdhbHNoX3NzZTIuYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9pd2Fsc2hfc3NlMi5h
c20KaW5kZXggMDA0M2U5M2IwNjEzZjgwNTc4NzM3MjJmNjFmZGRjZmE1MjIxYjE0MC4uNTZmMzdj
M2UwZjVlZDk3MTkxOTI3ZjNkOTJiMmJlZTk0OGJiZDRmYyAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3g4Ni9pd2Fsc2hfc3NlMi5hc20KKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL3g4Ni9pd2Fsc2hfc3NlMi5hc20KQEAgLTE0LDcgKzE0LDcgQEAKIFNFQ1RJT04gLnRleHQK
IAogO3ZvaWQgdnA4X3Nob3J0X2ludl93YWxzaDR4NF9zc2UyKHNob3J0ICppbnB1dCwgc2hvcnQg
Km1iX2RxY29lZmYpCi1nbG9iYWwgc3ltKHZwOF9zaG9ydF9pbnZfd2Fsc2g0eDRfc3NlMikgUFJJ
VkFURQorZ2xvYmFsc3ltKHZwOF9zaG9ydF9pbnZfd2Fsc2g0eDRfc3NlMikKIHN5bSh2cDhfc2hv
cnRfaW52X3dhbHNoNHg0X3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAg
ICAgIHJicCwgcnNwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2xvb3Bm
aWx0ZXJfYmxvY2tfc3NlMl94ODZfNjQuYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9s
b29wZmlsdGVyX2Jsb2NrX3NzZTJfeDg2XzY0LmFzbQppbmRleCA2YTNkMDUyOTBmNDIwZGNhYjVl
ZjQ0NWVmY2U0NDQwMGRhNWUyZDdjLi44ZDEyZjUzODVkOTEzNTRlMjllN2YwMzQ5ZDE5YjI2NjRh
ZGZiMmIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2xvb3BmaWx0ZXJf
YmxvY2tfc3NlMl94ODZfNjQuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvbG9v
cGZpbHRlcl9ibG9ja19zc2UyX3g4Nl82NC5hc20KQEAgLTEzNSw3ICsxMzUsNyBAQCBTRUNUSU9O
IC50ZXh0CiA7ICAgIGNvbnN0IGNoYXIgICAgKmxpbWl0LAogOyAgICBjb25zdCBjaGFyICAgICp0
aHJlc2gKIDspCi1nbG9iYWwgc3ltKHZwOF9sb29wX2ZpbHRlcl9iaF95X3NzZTIpIFBSSVZBVEUK
K2dsb2JhbHN5bSh2cDhfbG9vcF9maWx0ZXJfYmhfeV9zc2UyKQogc3ltKHZwOF9sb29wX2ZpbHRl
cl9iaF95X3NzZTIpOgogCiAlaWYgTElCVlBYX1lBU01fV0lONjQKQEAgLTI3Nyw3ICsyNzcsNyBA
QCBMRl9GSUxURVIgeG1tMCwgeG1tMSwgeG1tMywgeG1tOCwgeG1tNCwgeG1tMgogOyAgICBjb25z
dCBjaGFyICAgICp0aHJlc2gKIDspCiAKLWdsb2JhbCBzeW0odnA4X2xvb3BfZmlsdGVyX2J2X3lf
c3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZwOF9sb29wX2ZpbHRlcl9idl95X3NzZTIpCiBzeW0o
dnA4X2xvb3BfZmlsdGVyX2J2X3lfc3NlMik6CiAKICVpZiBMSUJWUFhfWUFTTV9XSU42NApkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9sb29wZmlsdGVyX3NzZTIuYXNtIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9sb29wZmlsdGVyX3NzZTIuYXNtCmluZGV4IDJhZTAy
OGZlYWVhYmNiMDkzZjBiYmI4MjlkYTc0MzUyZmJhYzFlMzMuLmNlNWMzMTMxMzgzM2Q5NDI3NmE5
ZjI0MWRjNjkzODhmZDNhNWRlYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94
ODYvbG9vcGZpbHRlcl9zc2UyLmFzbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2xv
b3BmaWx0ZXJfc3NlMi5hc20KQEAgLTI4OCw3ICsyODgsNyBAQCBTRUNUSU9OIC50ZXh0CiA7ICAg
IGNvbnN0IGNoYXIgICAgKmxpbWl0LAogOyAgICBjb25zdCBjaGFyICAgICp0aHJlc2gsCiA7KQot
Z2xvYmFsIHN5bSh2cDhfbG9vcF9maWx0ZXJfaG9yaXpvbnRhbF9lZGdlX3NzZTIpIFBSSVZBVEUK
K2dsb2JhbHN5bSh2cDhfbG9vcF9maWx0ZXJfaG9yaXpvbnRhbF9lZGdlX3NzZTIpCiBzeW0odnA4
X2xvb3BfZmlsdGVyX2hvcml6b250YWxfZWRnZV9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAK
ICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMzM2LDcgKzMzNiw3IEBAIHN5bSh2cDhfbG9v
cF9maWx0ZXJfaG9yaXpvbnRhbF9lZGdlX3NzZTIpOgogOyAgICBjb25zdCBjaGFyICAgICp0aHJl
c2gsCiA7ICAgIGludCAgICAgICAgICAgIGNvdW50CiA7KQotZ2xvYmFsIHN5bSh2cDhfbG9vcF9m
aWx0ZXJfaG9yaXpvbnRhbF9lZGdlX3V2X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfbG9v
cF9maWx0ZXJfaG9yaXpvbnRhbF9lZGdlX3V2X3NzZTIpCiBzeW0odnA4X2xvb3BfZmlsdGVyX2hv
cml6b250YWxfZWRnZV91dl9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAg
ICAgICByYnAsIHJzcApAQCAtNTYzLDcgKzU2Myw3IEBAIHN5bSh2cDhfbG9vcF9maWx0ZXJfaG9y
aXpvbnRhbF9lZGdlX3V2X3NzZTIpOgogOyAgICBjb25zdCBjaGFyICAgICpsaW1pdCwKIDsgICAg
Y29uc3QgY2hhciAgICAqdGhyZXNoLAogOykKLWdsb2JhbCBzeW0odnA4X21ibG9vcF9maWx0ZXJf
aG9yaXpvbnRhbF9lZGdlX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfbWJsb29wX2ZpbHRl
cl9ob3Jpem9udGFsX2VkZ2Vfc3NlMikKIHN5bSh2cDhfbWJsb29wX2ZpbHRlcl9ob3Jpem9udGFs
X2VkZ2Vfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCBy
c3AKQEAgLTYwOSw3ICs2MDksNyBAQCBzeW0odnA4X21ibG9vcF9maWx0ZXJfaG9yaXpvbnRhbF9l
ZGdlX3NzZTIpOgogOyAgICBjb25zdCBjaGFyICAgICp0aHJlc2gsCiA7ICAgIHVuc2lnbmVkIGNo
YXIgKnYKIDspCi1nbG9iYWwgc3ltKHZwOF9tYmxvb3BfZmlsdGVyX2hvcml6b250YWxfZWRnZV91
dl9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnA4X21ibG9vcF9maWx0ZXJfaG9yaXpvbnRhbF9l
ZGdlX3V2X3NzZTIpCiBzeW0odnA4X21ibG9vcF9maWx0ZXJfaG9yaXpvbnRhbF9lZGdlX3V2X3Nz
ZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC05
MzAsNyArOTMwLDcgQEAgc3ltKHZwOF9tYmxvb3BfZmlsdGVyX2hvcml6b250YWxfZWRnZV91dl9z
c2UyKToKIDsgICAgY29uc3QgY2hhciAgICAqbGltaXQsCiA7ICAgIGNvbnN0IGNoYXIgICAgKnRo
cmVzaCwKIDspCi1nbG9iYWwgc3ltKHZwOF9sb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX3NzZTIp
IFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfbG9vcF9maWx0ZXJfdmVydGljYWxfZWRnZV9zc2UyKQog
c3ltKHZwOF9sb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX3NzZTIpOgogICAgIHB1c2ggICAgICAg
IHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC05OTUsNyArOTk1LDcgQEAgc3ltKHZw
OF9sb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX3NzZTIpOgogOyAgICBjb25zdCBjaGFyICAgICp0
aHJlc2gsCiA7ICAgIHVuc2lnbmVkIGNoYXIgKnYKIDspCi1nbG9iYWwgc3ltKHZwOF9sb29wX2Zp
bHRlcl92ZXJ0aWNhbF9lZGdlX3V2X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfbG9vcF9m
aWx0ZXJfdmVydGljYWxfZWRnZV91dl9zc2UyKQogc3ltKHZwOF9sb29wX2ZpbHRlcl92ZXJ0aWNh
bF9lZGdlX3V2X3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJi
cCwgcnNwCkBAIC0xMTQ0LDcgKzExNDQsNyBAQCBzeW0odnA4X2xvb3BfZmlsdGVyX3ZlcnRpY2Fs
X2VkZ2VfdXZfc3NlMik6CiA7ICAgIGNvbnN0IGNoYXIgICAgKmxpbWl0LAogOyAgICBjb25zdCBj
aGFyICAgICp0aHJlc2gsCiA7KQotZ2xvYmFsIHN5bSh2cDhfbWJsb29wX2ZpbHRlcl92ZXJ0aWNh
bF9lZGdlX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfbWJsb29wX2ZpbHRlcl92ZXJ0aWNh
bF9lZGdlX3NzZTIpCiBzeW0odnA4X21ibG9vcF9maWx0ZXJfdmVydGljYWxfZWRnZV9zc2UyKToK
ICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMTIxMSw3
ICsxMjExLDcgQEAgc3ltKHZwOF9tYmxvb3BfZmlsdGVyX3ZlcnRpY2FsX2VkZ2Vfc3NlMik6CiA7
ICAgIGNvbnN0IGNoYXIgICAgKnRocmVzaCwKIDsgICAgdW5zaWduZWQgY2hhciAqdgogOykKLWds
b2JhbCBzeW0odnA4X21ibG9vcF9maWx0ZXJfdmVydGljYWxfZWRnZV91dl9zc2UyKSBQUklWQVRF
CitnbG9iYWxzeW0odnA4X21ibG9vcF9maWx0ZXJfdmVydGljYWxfZWRnZV91dl9zc2UyKQogc3lt
KHZwOF9tYmxvb3BfZmlsdGVyX3ZlcnRpY2FsX2VkZ2VfdXZfc3NlMik6CiAgICAgcHVzaCAgICAg
ICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTEyNzEsNyArMTI3MSw3IEBAIHN5
bSh2cDhfbWJsb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX3V2X3NzZTIpOgogOyAgICBpbnQgIHNy
Y19waXhlbF9zdGVwLAogOyAgICBjb25zdCBjaGFyICpibGltaXQsCiA7KQotZ2xvYmFsIHN5bSh2
cDhfbG9vcF9maWx0ZXJfc2ltcGxlX2hvcml6b250YWxfZWRnZV9zc2UyKSBQUklWQVRFCitnbG9i
YWxzeW0odnA4X2xvb3BfZmlsdGVyX3NpbXBsZV9ob3Jpem9udGFsX2VkZ2Vfc3NlMikKIHN5bSh2
cDhfbG9vcF9maWx0ZXJfc2ltcGxlX2hvcml6b250YWxfZWRnZV9zc2UyKToKICAgICBwdXNoICAg
ICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMTM3Niw3ICsxMzc2LDcgQEAg
c3ltKHZwOF9sb29wX2ZpbHRlcl9zaW1wbGVfaG9yaXpvbnRhbF9lZGdlX3NzZTIpOgogOyAgICBp
bnQgIHNyY19waXhlbF9zdGVwLAogOyAgICBjb25zdCBjaGFyICpibGltaXQsCiA7KQotZ2xvYmFs
IHN5bSh2cDhfbG9vcF9maWx0ZXJfc2ltcGxlX3ZlcnRpY2FsX2VkZ2Vfc3NlMikgUFJJVkFURQor
Z2xvYmFsc3ltKHZwOF9sb29wX2ZpbHRlcl9zaW1wbGVfdmVydGljYWxfZWRnZV9zc2UyKQogc3lt
KHZwOF9sb29wX2ZpbHRlcl9zaW1wbGVfdmVydGljYWxfZWRnZV9zc2UyKToKICAgICBwdXNoICAg
ICAgICByYnAgICAgICAgICA7IHNhdmUgb2xkIGJhc2UgcG9pbnRlciB2YWx1ZS4KICAgICBtb3Yg
ICAgICAgICByYnAsIHJzcCAgICA7IHNldCBuZXcgYmFzZSBwb2ludGVyIHZhbHVlLgpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9tZnFlX3NzZTIuYXNtIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3g4Ni9tZnFlX3NzZTIuYXNtCmluZGV4IDNmZGU5NzNhZDJiZjYyMGIwZThm
ZDY1NjFmY2I0MzkwNDNmMTI0MGYuLjNlYzJhOTllYzIyODM1YWQ2NWFmMWE3NzhiZDU0MDU4MzMz
ZGI5MDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvbWZxZV9zc2UyLmFz
bQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L21mcWVfc3NlMi5hc20KQEAgLTIxLDcg
KzIxLDcgQEAgU0VDVElPTiAudGV4dAogOyAgICBpbnQgICAgICAgICAgICBkc3Rfc3RyaWRlLAog
OyAgICBpbnQgICAgICAgICAgICBzcmNfd2VpZ2h0CiA7KQotZ2xvYmFsIHN5bSh2cDhfZmlsdGVy
X2J5X3dlaWdodDE2eDE2X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfZmlsdGVyX2J5X3dl
aWdodDE2eDE2X3NzZTIpCiBzeW0odnA4X2ZpbHRlcl9ieV93ZWlnaHQxNngxNl9zc2UyKToKICAg
ICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtOTksNyArOTks
NyBAQCBzeW0odnA4X2ZpbHRlcl9ieV93ZWlnaHQxNngxNl9zc2UyKToKIDsgICAgaW50ICAgICAg
ICAgICAgZHN0X3N0cmlkZSwKIDsgICAgaW50ICAgICAgICAgICAgc3JjX3dlaWdodAogOykKLWds
b2JhbCBzeW0odnA4X2ZpbHRlcl9ieV93ZWlnaHQ4eDhfc3NlMikgUFJJVkFURQorZ2xvYmFsc3lt
KHZwOF9maWx0ZXJfYnlfd2VpZ2h0OHg4X3NzZTIpCiBzeW0odnA4X2ZpbHRlcl9ieV93ZWlnaHQ4
eDhfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AK
QEAgLTE2Nyw3ICsxNjcsNyBAQCBzeW0odnA4X2ZpbHRlcl9ieV93ZWlnaHQ4eDhfc3NlMik6CiA7
ICAgIHVuc2lnbmVkIGludCAgKnZhcmlhbmNlLCAgICAgIDQKIDsgICAgdW5zaWduZWQgaW50ICAq
c2FkLCAgICAgICAgICAgNQogOykKLWdsb2JhbCBzeW0odnA4X3ZhcmlhbmNlX2FuZF9zYWRfMTZ4
MTZfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZwOF92YXJpYW5jZV9hbmRfc2FkXzE2eDE2X3Nz
ZTIpCiBzeW0odnA4X3ZhcmlhbmNlX2FuZF9zYWRfMTZ4MTZfc3NlMik6CiAgICAgcHVzaCAgICAg
ICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi94ODYvcmVjb25fbW14LmFzbSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYv
cmVjb25fbW14LmFzbQppbmRleCBlNmE0OGY2YjA3ZjU0ZjA0ZjZlZjBkYWI2MjJhZTI3NmRiYjM5
ZWYwLi4wMWNmMDY2ODM3M2VkOGEyYTBjNGM2MzRlZDNkYjY3MzkxNTk2YjkxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L3JlY29uX21teC5hc20KKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3g4Ni9yZWNvbl9tbXguYXNtCkBAIC0xOSw3ICsxOSw3IEBAIFNFQ1RJT04g
LnRleHQKIDsgICAgdW5zaWduZWQgY2hhciAqZHN0LAogOyAgICBpbnQgZHN0X3N0cmlkZQogOyAg
ICApCi1nbG9iYWwgc3ltKHZwOF9jb3B5X21lbTh4OF9tbXgpIFBSSVZBVEUKK2dsb2JhbHN5bSh2
cDhfY29weV9tZW04eDhfbW14KQogc3ltKHZwOF9jb3B5X21lbTh4OF9tbXgpOgogICAgIHB1c2gg
ICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC04Miw3ICs4Miw3IEBAIHN5
bSh2cDhfY29weV9tZW04eDhfbW14KToKIDsgICAgdW5zaWduZWQgY2hhciAqZHN0LAogOyAgICBp
bnQgZHN0X3N0cmlkZQogOyAgICApCi1nbG9iYWwgc3ltKHZwOF9jb3B5X21lbTh4NF9tbXgpIFBS
SVZBVEUKK2dsb2JhbHN5bSh2cDhfY29weV9tZW04eDRfbW14KQogc3ltKHZwOF9jb3B5X21lbTh4
NF9tbXgpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L3JlY29uX3NzZTIuYXNtIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3g4Ni9yZWNvbl9zc2UyLmFzbQppbmRleCA1N2Y4ODk5Yzc3N2Y0
ZjQ1NGMyMjFhMzU2YjZlNGI1NGIzMDMxNTYyLi4xN2JhZjA5NGVmMjQyYzZlZmJiNzg2MzY2ZDk3
NGZmZDVjYjY4MDYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L3JlY29u
X3NzZTIuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvcmVjb25fc3NlMi5hc20K
QEAgLTE5LDcgKzE5LDcgQEAgU0VDVElPTiAudGV4dAogOyAgICB1bnNpZ25lZCBjaGFyICpkc3Qs
CiA7ICAgIGludCBkc3Rfc3RyaWRlCiA7ICAgICkKLWdsb2JhbCBzeW0odnA4X2NvcHlfbWVtMTZ4
MTZfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZwOF9jb3B5X21lbTE2eDE2X3NzZTIpCiBzeW0o
dnA4X2NvcHlfbWVtMTZ4MTZfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAg
ICAgICAgcmJwLCByc3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvc3Vi
cGl4ZWxfbW14LmFzbSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvc3VicGl4ZWxfbW14LmFz
bQppbmRleCA2N2JjZDBjYmQ3MTM4Yzc1YjgzNTQzYTU5ZWY4YWNhNzUxYTVjMTNiLi44ZjBmNmZj
Yzg5YmY1OTcxNjAyZjEzYmQyNzQyZTAwYjllYTBiMTZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24veDg2L3N1YnBpeGVsX21teC5hc20KKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL3g4Ni9zdWJwaXhlbF9tbXguYXNtCkBAIC0yNyw3ICsyNyw3IEBAIFNFQ1RJT04gLnRleHQK
IDsgICAgdW5zaWduZWQgaW50ICAgIG91dHB1dF93aWR0aCwKIDsgICAgc2hvcnQgICAgICAgICAg
ICogdnA4X2ZpbHRlcgogOykKLWdsb2JhbCBzeW0odnA4X2ZpbHRlcl9ibG9jazFkX2g2X21teCkg
UFJJVkFURQorZ2xvYmFsc3ltKHZwOF9maWx0ZXJfYmxvY2sxZF9oNl9tbXgpCiBzeW0odnA4X2Zp
bHRlcl9ibG9jazFkX2g2X21teCk6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAg
ICAgcmJwLCByc3AKQEAgLTEyNCw3ICsxMjQsNyBAQCBzeW0odnA4X2ZpbHRlcl9ibG9jazFkX2g2
X21teCk6CiA7ICAgdW5zaWduZWQgaW50IG91dHB1dF93aWR0aCwKIDsgICBzaG9ydCAqIHZwOF9m
aWx0ZXIKIDspCi1nbG9iYWwgc3ltKHZwOF9maWx0ZXJfYmxvY2sxZGNfdjZfbW14KSBQUklWQVRF
CitnbG9iYWxzeW0odnA4X2ZpbHRlcl9ibG9jazFkY192Nl9tbXgpCiBzeW0odnA4X2ZpbHRlcl9i
bG9jazFkY192Nl9tbXgpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJi
cCwgcnNwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L3N1YnBpeGVsX3Nz
ZTIuYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9zdWJwaXhlbF9zc2UyLmFzbQppbmRl
eCA1MWMwMTVlM2RmMDZkZDJjMTdmNmE4NTYyZmZiMTU4ZTRmYjRlMDY3Li45NGUxNGFlZDZjODRk
OTI5ZmQ2NTkwZTVhMzM5ZWQzN2MyYWQ2Mzg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24veDg2L3N1YnBpeGVsX3NzZTIuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94
ODYvc3VicGl4ZWxfc3NlMi5hc20KQEAgLTMzLDcgKzMzLDcgQEAgU0VDVElPTiAudGV4dAogOyAg
ICB1bnNpZ25lZCBpbnQgICAgb3V0cHV0X3dpZHRoLAogOyAgICBzaG9ydCAgICAgICAgICAgKnZw
OF9maWx0ZXIKIDspCi1nbG9iYWwgc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDhfaDZfc3NlMikgUFJJ
VkFURQorZ2xvYmFsc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDhfaDZfc3NlMikKIHN5bSh2cDhfZmls
dGVyX2Jsb2NrMWQ4X2g2X3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAg
ICAgIHJicCwgcnNwCkBAIC0xNTMsNyArMTUzLDcgQEAgc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDhf
aDZfc3NlMik6CiA7IGV2ZW4gbnVtYmVyLiBUaGlzIGZ1bmN0aW9uIGhhbmRsZXMgOCBwaXhlbHMg
aW4gaG9yaXpvbnRhbCBkaXJlY3Rpb24sIGNhbGN1bGF0aW5nIE9ORQogOyByb3dzIGVhY2ggaXRl
cmF0aW9uIHRvIHRha2UgYWR2YW50YWdlIG9mIHRoZSAxMjggYml0cyBvcGVyYXRpb25zLgogOyoq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKiovCi1nbG9iYWwgc3ltKHZwOF9maWx0ZXJfYmxvY2sx
ZDE2X2g2X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQxNl9oNl9z
c2UyKQogc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDE2X2g2X3NzZTIpOgogICAgIHB1c2ggICAgICAg
IHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC0zMzMsNyArMzMzLDcgQEAgc3ltKHZw
OF9maWx0ZXJfYmxvY2sxZDE2X2g2X3NzZTIpOgogOyBOb3RlczogZmlsdGVyX2Jsb2NrMWQ4X3Y2
IGFwcGxpZXMgYSA2IHRhcCBmaWx0ZXIgdmVydGljYWxseSB0byB0aGUgaW5wdXQgcGl4ZWxzLiBU
aGUKIDsgaW5wdXQgcGl4ZWwgYXJyYXkgaGFzIG91dHB1dF9oZWlnaHQgcm93cy4KIDsqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqLwotZ2xvYmFsIHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQ4X3Y2
X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQ4X3Y2X3NzZTIpCiBz
eW0odnA4X2ZpbHRlcl9ibG9jazFkOF92Nl9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAg
ICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtNDI4LDcgKzQyOCw3IEBAIHN5bSh2cDhfZmlsdGVy
X2Jsb2NrMWQ4X3Y2X3NzZTIpOgogOyBOb3RlczogZmlsdGVyX2Jsb2NrMWQxNl92NiBhcHBsaWVz
IGEgNiB0YXAgZmlsdGVyIHZlcnRpY2FsbHkgdG8gdGhlIGlucHV0IHBpeGVscy4gVGhlCiA7IGlu
cHV0IHBpeGVsIGFycmF5IGhhcyBvdXRwdXRfaGVpZ2h0IHJvd3MuCiA7KioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKi8KLWdsb2JhbCBzeW0odnA4X2ZpbHRlcl9ibG9jazFkMTZfdjZfc3NlMikg
UFJJVkFURQorZ2xvYmFsc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDE2X3Y2X3NzZTIpCiBzeW0odnA4
X2ZpbHRlcl9ibG9jazFkMTZfdjZfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92
ICAgICAgICAgcmJwLCByc3AKQEAgLTUzOCw3ICs1MzgsNyBAQCBzeW0odnA4X2ZpbHRlcl9ibG9j
azFkMTZfdjZfc3NlMik6CiA7ICAgIGNvbnN0IHNob3J0ICAgICp2cDhfZmlsdGVyCiA7KQogOyBG
aXJzdC1wYXNzIGZpbHRlciBvbmx5IHdoZW4geW9mZnNldD09MAotZ2xvYmFsIHN5bSh2cDhfZmls
dGVyX2Jsb2NrMWQ4X2g2X29ubHlfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZwOF9maWx0ZXJf
YmxvY2sxZDhfaDZfb25seV9zc2UyKQogc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDhfaDZfb25seV9z
c2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAt
NjUxLDcgKzY1MSw3IEBAIHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQ4X2g2X29ubHlfc3NlMik6CiA7
ICAgIGNvbnN0IHNob3J0ICAgICp2cDhfZmlsdGVyCiA7KQogOyBGaXJzdC1wYXNzIGZpbHRlciBv
bmx5IHdoZW4geW9mZnNldD09MAotZ2xvYmFsIHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQxNl9oNl9v
bmx5X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQxNl9oNl9vbmx5
X3NzZTIpCiBzeW0odnA4X2ZpbHRlcl9ibG9jazFkMTZfaDZfb25seV9zc2UyKToKICAgICBwdXNo
ICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtODE2LDcgKzgxNiw3IEBA
IHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQxNl9oNl9vbmx5X3NzZTIpOgogOyAgICBjb25zdCBzaG9y
dCAgICAqdnA4X2ZpbHRlcgogOykKIDsgU2Vjb25kLXBhc3MgZmlsdGVyIG9ubHkgd2hlbiB4b2Zm
c2V0PT0wCi1nbG9iYWwgc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDhfdjZfb25seV9zc2UyKSBQUklW
QVRFCitnbG9iYWxzeW0odnA4X2ZpbHRlcl9ibG9jazFkOF92Nl9vbmx5X3NzZTIpCiBzeW0odnA4
X2ZpbHRlcl9ibG9jazFkOF92Nl9vbmx5X3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAg
IG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC05MDgsNyArOTA4LDcgQEAgc3ltKHZwOF9maWx0ZXJf
YmxvY2sxZDhfdjZfb25seV9zc2UyKToKIDsgICAgdW5zaWduZWQgaW50ICAgIG91dHB1dF9oZWln
aHQsCiA7ICAgIHVuc2lnbmVkIGludCAgICBvdXRwdXRfd2lkdGgKIDspCi1nbG9iYWwgc3ltKHZw
OF91bnBhY2tfYmxvY2sxZDE2X2g2X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfdW5wYWNr
X2Jsb2NrMWQxNl9oNl9zc2UyKQogc3ltKHZwOF91bnBhY2tfYmxvY2sxZDE2X2g2X3NzZTIpOgog
ICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L3N1YnBpeGVsX3Nzc2UzLmFzbSBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi94ODYvc3VicGl4ZWxfc3NzZTMuYXNtCmluZGV4IDhkNTVjOTMyMGNlMGU5
OGM2YWEyZmY4NTQzMjk4NzBlNDlhOGNmYzcuLjE3MjQ3MjI3ZGJjOTY2YzRhNjNiZDgxODYzNTBl
ZWJhYWNhOTgyYmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvc3VicGl4
ZWxfc3NzZTMuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvc3VicGl4ZWxfc3Nz
ZTMuYXNtCkBAIC0zNSw3ICszNSw3IEBAIFNFQ1RJT04gLnRleHQKIDsgICAgdW5zaWduZWQgaW50
ICAgIG91dHB1dF9oZWlnaHQsCiA7ICAgIHVuc2lnbmVkIGludCAgICB2cDhfZmlsdGVyX2luZGV4
CiA7KQotZ2xvYmFsIHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQ4X2g2X3Nzc2UzKSBQUklWQVRFCitn
bG9iYWxzeW0odnA4X2ZpbHRlcl9ibG9jazFkOF9oNl9zc3NlMykKIHN5bSh2cDhfZmlsdGVyX2Js
b2NrMWQ4X2g2X3Nzc2UzKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICBy
YnAsIHJzcApAQCAtMTc4LDcgKzE3OCw3IEBAIHZwOF9maWx0ZXJfYmxvY2sxZDhfaDRfc3NzZTM6
CiA7ICAgIHVuc2lnbmVkIGludCAgICBvdXRwdXRfaGVpZ2h0LAogOyAgICB1bnNpZ25lZCBpbnQg
ICAgdnA4X2ZpbHRlcl9pbmRleAogOykKLWdsb2JhbCBzeW0odnA4X2ZpbHRlcl9ibG9jazFkMTZf
aDZfc3NzZTMpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQxNl9oNl9zc3Nl
MykKIHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQxNl9oNl9zc3NlMyk6CiAgICAgcHVzaCAgICAgICAg
cmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTI4NSw3ICsyODUsNyBAQCBzeW0odnA4
X2ZpbHRlcl9ibG9jazFkMTZfaDZfc3NzZTMpOgogOyAgICB1bnNpZ25lZCBpbnQgICAgb3V0cHV0
X2hlaWdodCwKIDsgICAgdW5zaWduZWQgaW50ICAgIHZwOF9maWx0ZXJfaW5kZXgKIDspCi1nbG9i
YWwgc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDRfaDZfc3NzZTMpIFBSSVZBVEUKK2dsb2JhbHN5bSh2
cDhfZmlsdGVyX2Jsb2NrMWQ0X2g2X3Nzc2UzKQogc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDRfaDZf
c3NzZTMpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBA
IC00MTUsNyArNDE1LDcgQEAgc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDRfaDZfc3NzZTMpOgogOyAg
ICB1bnNpZ25lZCBpbnQgICBvdXRwdXRfaGVpZ2h0LAogOyAgICB1bnNpZ25lZCBpbnQgICB2cDhf
ZmlsdGVyX2luZGV4CiA7KQotZ2xvYmFsIHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQxNl92Nl9zc3Nl
MykgUFJJVkFURQorZ2xvYmFsc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDE2X3Y2X3Nzc2UzKQogc3lt
KHZwOF9maWx0ZXJfYmxvY2sxZDE2X3Y2X3Nzc2UzKToKICAgICBwdXNoICAgICAgICByYnAKICAg
ICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtNjAzLDcgKzYwMyw3IEBAIHN5bSh2cDhfZmlsdGVy
X2Jsb2NrMWQxNl92Nl9zc3NlMyk6CiA7ICAgIHVuc2lnbmVkIGludCAgIG91dHB1dF9oZWlnaHQs
CiA7ICAgIHVuc2lnbmVkIGludCAgIHZwOF9maWx0ZXJfaW5kZXgKIDspCi1nbG9iYWwgc3ltKHZw
OF9maWx0ZXJfYmxvY2sxZDhfdjZfc3NzZTMpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfZmlsdGVy
X2Jsb2NrMWQ4X3Y2X3Nzc2UzKQogc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDhfdjZfc3NzZTMpOgog
ICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC03NDMsNyAr
NzQzLDcgQEAgc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDhfdjZfc3NzZTMpOgogOyAgICB1bnNpZ25l
ZCBpbnQgICBvdXRwdXRfaGVpZ2h0LAogOyAgICB1bnNpZ25lZCBpbnQgICB2cDhfZmlsdGVyX2lu
ZGV4CiA7KQotZ2xvYmFsIHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQ0X3Y2X3Nzc2UzKSBQUklWQVRF
CitnbG9iYWxzeW0odnA4X2ZpbHRlcl9ibG9jazFkNF92Nl9zc3NlMykKIHN5bSh2cDhfZmlsdGVy
X2Jsb2NrMWQ0X3Y2X3Nzc2UzKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAg
ICByYnAsIHJzcApAQCAtODgyLDcgKzg4Miw3IEBAIHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQ0X3Y2
X3Nzc2UzKToKIDsgICAgdW5zaWduZWQgY2hhciAqZHN0X3B0ciwKIDsgICAgaW50IGRzdF9waXRj
aAogOykKLWdsb2JhbCBzeW0odnA4X2JpbGluZWFyX3ByZWRpY3QxNngxNl9zc3NlMykgUFJJVkFU
RQorZ2xvYmFsc3ltKHZwOF9iaWxpbmVhcl9wcmVkaWN0MTZ4MTZfc3NzZTMpCiBzeW0odnA4X2Jp
bGluZWFyX3ByZWRpY3QxNngxNl9zc3NlMyk6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92
ICAgICAgICAgcmJwLCByc3AKQEAgLTExNDUsNyArMTE0NSw3IEBAIHN5bSh2cDhfYmlsaW5lYXJf
cHJlZGljdDE2eDE2X3Nzc2UzKToKIDsgICAgdW5zaWduZWQgY2hhciAqZHN0X3B0ciwKIDsgICAg
aW50IGRzdF9waXRjaAogOykKLWdsb2JhbCBzeW0odnA4X2JpbGluZWFyX3ByZWRpY3Q4eDhfc3Nz
ZTMpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfYmlsaW5lYXJfcHJlZGljdDh4OF9zc3NlMykKIHN5
bSh2cDhfYmlsaW5lYXJfcHJlZGljdDh4OF9zc3NlMyk6CiAgICAgcHVzaCAgICAgICAgcmJwCiAg
ICAgbW92ICAgICAgICAgcmJwLCByc3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvYml0c3RyZWFtLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2JpdHN0cmVhbS5jCmluZGV4
IDNkYWE0ZTJjMmE2NTZjZjM5MzY1NGUwZjc1YTM4NjU5YWI2Y2Q3ODAuLjgwY2JiODgyZmRjZDAy
YWM2ODNlYTlhZGU1Y2EwMzhkMjgyZWM5ZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvYml0c3RyZWFtLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0u
YwpAQCAtMjIyLDcgKzIyMiw3IEBAIHZvaWQgdnA4X3BhY2tfdG9rZW5zKHZwOF93cml0ZXIgKncs
IGNvbnN0IFRPS0VORVhUUkEgKnAsIGludCB4Y291bnQpIHsKIAogICAgICAgICAgICAgdmFsaWRh
dGVfYnVmZmVyKHctPmJ1ZmZlciArIHctPnBvcywgMSwgdy0+YnVmZmVyX2VuZCwgdy0+ZXJyb3Ip
OwogCi0gICAgICAgICAgICB3LT5idWZmZXJbdy0+cG9zKytdID0gKGxvd3ZhbHVlID4+ICgyNCAt
IG9mZnNldCkpOworICAgICAgICAgICAgdy0+YnVmZmVyW3ctPnBvcysrXSA9IChsb3d2YWx1ZSA+
PiAoMjQgLSBvZmZzZXQpKSAmIDB4ZmY7CiAgICAgICAgICAgICBsb3d2YWx1ZSA8PD0gb2Zmc2V0
OwogICAgICAgICAgICAgc2hpZnQgPSBjb3VudDsKICAgICAgICAgICAgIGxvd3ZhbHVlICY9IDB4
ZmZmZmZmOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVmcmFtZS5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVmcmFtZS5jCmluZGV4IDJiM2Q5NTY0Y2Uy
MGFiMmNlMjA5NDA1NTBiY2M5NGVjOTFmMDFjYjcuLjJmODQzODFkMjRmOTFmMmI1NjU2ZTc4ZTNi
NmIzNzZlMTkzZDZlNTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2Rl
ZnJhbWUuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWZyYW1lLmMKQEAgLTM0
Myw4ICszNDMsMTEgQEAgc3RhdGljIHZvaWQgZW5jb2RlX21iX3JvdyhWUDhfQ09NUCAqY3BpLCBW
UDhfQ09NTU9OICpjbSwgaW50IG1iX3JvdywKICAgY29uc3QgaW50IG5zeW5jID0gY3BpLT5tdF9z
eW5jX3JhbmdlOwogICB2cHhfYXRvbWljX2ludCByaWdodG1vc3RfY29sID0gVlBYX0FUT01JQ19J
TklUKGNtLT5tYl9jb2xzICsgbnN5bmMpOwogICBjb25zdCB2cHhfYXRvbWljX2ludCAqbGFzdF9y
b3dfY3VycmVudF9tYl9jb2w7Ci0gIHZweF9hdG9taWNfaW50ICpjdXJyZW50X21iX2NvbCA9ICZj
cGktPm10X2N1cnJlbnRfbWJfY29sW21iX3Jvd107CisgIHZweF9hdG9taWNfaW50ICpjdXJyZW50
X21iX2NvbCA9IE5VTEw7CiAKKyAgaWYgKHZweF9hdG9taWNfbG9hZF9hY3F1aXJlKCZjcGktPmJf
bXVsdGlfdGhyZWFkZWQpICE9IDApIHsKKyAgICBjdXJyZW50X21iX2NvbCA9ICZjcGktPm10X2N1
cnJlbnRfbWJfY29sW21iX3Jvd107CisgIH0KICAgaWYgKHZweF9hdG9taWNfbG9hZF9hY3F1aXJl
KCZjcGktPmJfbXVsdGlfdGhyZWFkZWQpICE9IDAgJiYgbWJfcm93ICE9IDApIHsKICAgICBsYXN0
X3Jvd19jdXJyZW50X21iX2NvbCA9ICZjcGktPm10X2N1cnJlbnRfbWJfY29sW21iX3JvdyAtIDFd
OwogICB9IGVsc2UgewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9taXBzL21t
aS9kY3RfbW1pLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21pcHMvbW1pL2RjdF9tbWkuYwpp
bmRleCAxZjYwYTY5MmQwNTJlNjY1MDgyZjVmNDU1YTQxNTAxN2I0ZTNlNjIyLi4wZmQyNWZjZGE1
MDcyMTJhNDRhNmYxN2E4MmEyOTk4N2ExZjA2ZDY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL21pcHMvbW1pL2RjdF9tbWkuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L21pcHMvbW1pL2RjdF9tbWkuYwpAQCAtMjQsMTkgKzI0LDE5IEBACiAgICJwdW5wY2tsaHcgICVb
ZnRtcDVdLCAgICVbZnRtcDFdLCAgICVbZnRtcDBdICAgICAgICAgXG5cdCIgXAogICAicHVucGNr
bGh3ICAlW2Z0bXA5XSwgICAlW2Z0bXAyXSwgICAlW2Z0bXAwXSAgICAgICAgIFxuXHQiIFwKICAg
InBzaHVmaCAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgJVtmdG1wMTBdICAgICAgICBcblx0
IiBcCi0gICJvciAgICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICVbZnRtcDldICAgICAg
ICAgXG5cdCIgXAorICAicG9yICAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAlW2Z0bXA5
XSAgICAgICAgIFxuXHQiIFwKICAgInB1bnBja2hodyAgJVtmdG1wNl0sICAgJVtmdG1wMV0sICAg
JVtmdG1wMF0gICAgICAgICBcblx0IiBcCiAgICJwdW5wY2toaHcgICVbZnRtcDldLCAgICVbZnRt
cDJdLCAgICVbZnRtcDBdICAgICAgICAgXG5cdCIgXAogICAicHNodWZoICAgICAlW2Z0bXA5XSwg
ICAlW2Z0bXA5XSwgICAlW2Z0bXAxMF0gICAgICAgIFxuXHQiIFwKLSAgIm9yICAgICAgICAgJVtm
dG1wNl0sICAgJVtmdG1wNl0sICAgJVtmdG1wOV0gICAgICAgICBcblx0IiBcCisgICJwb3IgICAg
ICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICVbZnRtcDldICAgICAgICAgXG5cdCIgXAogICAi
cHVucGNrbGh3ICAlW2Z0bXA3XSwgICAlW2Z0bXAzXSwgICAlW2Z0bXAwXSAgICAgICAgIFxuXHQi
IFwKICAgInB1bnBja2xodyAgJVtmdG1wOV0sICAgJVtmdG1wNF0sICAgJVtmdG1wMF0gICAgICAg
ICBcblx0IiBcCiAgICJwc2h1ZmggICAgICVbZnRtcDldLCAgICVbZnRtcDldLCAgICVbZnRtcDEw
XSAgICAgICAgXG5cdCIgXAotICAib3IgICAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAl
W2Z0bXA5XSAgICAgICAgIFxuXHQiIFwKKyAgInBvciAgICAgICAgJVtmdG1wN10sICAgJVtmdG1w
N10sICAgJVtmdG1wOV0gICAgICAgICBcblx0IiBcCiAgICJwdW5wY2toaHcgICVbZnRtcDhdLCAg
ICVbZnRtcDNdLCAgICVbZnRtcDBdICAgICAgICAgXG5cdCIgXAogICAicHVucGNraGh3ICAlW2Z0
bXA5XSwgICAlW2Z0bXA0XSwgICAlW2Z0bXAwXSAgICAgICAgIFxuXHQiIFwKICAgInBzaHVmaCAg
ICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgJVtmdG1wMTBdICAgICAgICBcblx0IiBcCi0gICJv
ciAgICAgICAgICVbZnRtcDhdLCAgICVbZnRtcDhdLCAgICVbZnRtcDldICAgICAgICAgXG5cdCIg
XAorICAicG9yICAgICAgICAlW2Z0bXA4XSwgICAlW2Z0bXA4XSwgICAlW2Z0bXA5XSAgICAgICAg
IFxuXHQiIFwKICAgInB1bnBja2x3ZCAgJVtmdG1wMV0sICAgJVtmdG1wNV0sICAgJVtmdG1wN10g
ICAgICAgICBcblx0IiBcCiAgICJwdW5wY2tod2QgICVbZnRtcDJdLCAgICVbZnRtcDVdLCAgICVb
ZnRtcDddICAgICAgICAgXG5cdCIgXAogICAicHVucGNrbHdkICAlW2Z0bXAzXSwgICAlW2Z0bXA2
XSwgICAlW2Z0bXA4XSAgICAgICAgIFxuXHQiIFwKQEAgLTQ2LDYgKzQ2LDcgQEAKIHZvaWQgdnA4
X3Nob3J0X2ZkY3Q0eDRfbW1pKGludDE2X3QgKmlucHV0LCBpbnQxNl90ICpvdXRwdXQsIGludCBw
aXRjaCkgewogICB1aW50NjRfdCB0bXBbMV07CiAgIGludDE2X3QgKmlwID0gaW5wdXQ7CisgIGRv
dWJsZSBmZl9waF9vcDEsIGZmX3BoX29wMzsKIAogI2lmIF9NSVBTX1NJTSA9PSBfQUJJTzMyCiAg
IHJlZ2lzdGVyIGRvdWJsZSBmdG1wMCBhc20oIiRmMCIpOwpAQCAtODMsMTQgKzg0LDE3IEBAIHZv
aWQgdnA4X3Nob3J0X2ZkY3Q0eDRfbW1pKGludDE2X3QgKmlucHV0LCBpbnQxNl90ICpvdXRwdXQs
IGludCBwaXRjaCkgewogICBERUNMQVJFX0FMSUdORUQoOCwgY29uc3QgdWludDY0X3QsIGZmX3B3
XzUxMDAwKSA9IHsgMHgwMDAwYzczODAwMDBjNzM4VUxMIH07CiAgIERFQ0xBUkVfQUxJR05FRCg4
LCBjb25zdCB1aW50NjRfdCwgZmZfcHdfMTQ1MDApID0geyAweDAwMDAzOGE0MDAwMDM4YTRVTEwg
fTsKICAgREVDTEFSRV9BTElHTkVEKDgsIGNvbnN0IHVpbnQ2NF90LCBmZl9wd183NTAwKSA9IHsg
MHgwMDAwMWQ0YzAwMDAxZDRjVUxMIH07Ci0gIERFQ0xBUkVfQUxJR05FRCg4LCBjb25zdCB1aW50
NjRfdCwgZmZfcGhfb3AxKSA9IHsgMHgxNGU4MDhhOTE0ZTgwOGE5VUxMIH07Ci0gIERFQ0xBUkVf
QUxJR05FRCg4LCBjb25zdCB1aW50NjRfdCwgZmZfcGhfb3AzKSA9IHsgMHhlYjE4MDhhOWViMTgw
OGE5VUxMIH07CiAgIERFQ0xBUkVfQUxJR05FRCg4LCBjb25zdCB1aW50NjRfdCwgZmZfcHdfNTM1
MikgPSB7IDB4MDAwMDE0ZTgwMDAwMTRlOFVMTCB9OwogICBERUNMQVJFX0FMSUdORUQoOCwgY29u
c3QgdWludDY0X3QsIGZmX3B3XzIyMTcpID0geyAweDAwMDAwOGE5MDAwMDA4YTlVTEwgfTsKICAg
REVDTEFSRV9BTElHTkVEKDgsIGNvbnN0IHVpbnQ2NF90LCBmZl9waF84KSA9IHsgMHgwMDA4MDAw
ODAwMDgwMDA4VUxMIH07CiAKKyAgLyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZv
bGF0aWxlICgKLSAgICAieG9yICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAlW2Z0
bXAwXSAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgxNGU4MDhh
OTE0ZTgwOGE5ICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAg
ICVbZmZfcGhfb3AxXSAgICAgICAgICAgICAgICAgICAgXG5cdCIKKyAgICAiZGxpICAgICAgICAl
W3RtcDBdLCAgICAweGViMTgwOGE5ZWIxODA4YTkgICAgICAgICAgICAgIFxuXHQiCisgICAgImRt
dGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9waF9vcDNdICAgICAgICAgICAgICAgICAgICBcblx0
IgorICAgICJweG9yICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICVbZnRtcDBdICAg
ICAgICAgXG5cdCIKICAgICAiZ3NsZGxjMSAgICAlW2Z0bXAxXSwgICAweDA3KCVbaXBdKSAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImdzbGRyYzEgICAgJVtmdG1wMV0sICAgMHgwMCgl
W2lwXSkgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgIE1NSV9BRERVKCVbaXBdLCAlW2lw
XSwgJVtwaXRjaF0pCkBAIC0xMjksNyArMTMzLDcgQEAgdm9pZCB2cDhfc2hvcnRfZmRjdDR4NF9t
bWkoaW50MTZfdCAqaW5wdXQsIGludDE2X3QgKm91dHB1dCwgaW50IHBpdGNoKSB7CiAKICAgICAv
LyBvcFsxXSA9IChjMSAqIDIyMTcgKyBkMSAqIDUzNTIgKyAxNDUwMCkgPj4gMTIKICAgICBNTUlf
TEkoJVt0bXAwXSwgMHgwYykKLSAgICAibXRjMSAgICAgICAlW3RtcDBdLCAgICAlW2Z0bXAxMV0g
ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAg
JVtmdG1wMTFdICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJsZGMxICAgICAgICVb
ZnRtcDEyXSwgICVbZmZfcHdfMTQ1MDBdICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAicHVu
cGNrbGh3ICAlW2Z0bXA5XSwgICAlW2Z0bXA3XSwgICAgICAgJVtmdG1wOF0gICAgICAgIFxuXHQi
CiAgICAgInBtYWRkaHcgICAgJVtmdG1wNV0sICAgJVtmdG1wOV0sICAgICAgICVbZmZfcGhfb3Ax
XSAgICBcblx0IgpAQCAtMTY5LDcgKzE3Myw3IEBAIHZvaWQgdnA4X3Nob3J0X2ZkY3Q0eDRfbW1p
KGludDE2X3QgKmlucHV0LCBpbnQxNl90ICpvdXRwdXQsIGludCBwaXRjaCkgewogICAgICJwYWRk
aCAgICAgICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAgICAlW2Z0bXA5XSAgICAgICAgXG5cdCIK
ICAgICAicGFkZGggICAgICAlW2Z0bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgJVtmdG1wOV0gICAg
ICAgIFxuXHQiCiAgICAgTU1JX0xJKCVbdG1wMF0sIDB4MDQpCi0gICAgIm10YzEgICAgICAgJVt0
bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRj
MSAgICAgICVbdG1wMF0sICAgICVbZnRtcDldICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIK
ICAgICAicHNyYWggICAgICAlW2Z0bXAxXSwgICAlW2Z0bXAxXSwgICAgICAgJVtmdG1wOV0gICAg
ICAgIFxuXHQiCiAgICAgInBzcmFoICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICVb
ZnRtcDldICAgICAgICBcblx0IgogCkBAIC0yMTEsMTUgKzIxNSwxNiBAQCB2b2lkIHZwOF9zaG9y
dF9mZGN0NHg0X21taShpbnQxNl90ICppbnB1dCwgaW50MTZfdCAqb3V0cHV0LCBpbnQgcGl0Y2gp
IHsKICAgICAgIFtmdG1wM10gIj0mZiIoZnRtcDMpLCBbZnRtcDRdICI9JmYiKGZ0bXA0KSwgW2Z0
bXA1XSAiPSZmIihmdG1wNSksCiAgICAgICBbZnRtcDZdICI9JmYiKGZ0bXA2KSwgW2Z0bXA3XSAi
PSZmIihmdG1wNyksIFtmdG1wOF0gIj0mZiIoZnRtcDgpLAogICAgICAgW2Z0bXA5XSAiPSZmIihm
dG1wOSksIFtmdG1wMTBdICI9JmYiKGZ0bXAxMCksIFtmdG1wMTFdICI9JmYiKGZ0bXAxMSksCi0g
ICAgICBbZnRtcDEyXSAiPSZmIihmdG1wMTIpLCBbdG1wMF0gIj0mciIodG1wWzBdKSwgW2lwXSIr
JnIiKGlwKQorICAgICAgW2Z0bXAxMl0gIj0mZiIoZnRtcDEyKSwgW3RtcDBdICI9JnIiKHRtcFsw
XSksIFtpcF0iKyZyIihpcCksCisgICAgICBbZmZfcGhfb3AxXSAiPSZmIihmZl9waF9vcDEpLCBb
ZmZfcGhfb3AzXSAiPSZmIihmZl9waF9vcDMpCiAgICAgOiBbZmZfcGhfMDFdICJtIihmZl9waF8w
MSksIFtmZl9waF8wN10gIm0iKGZmX3BoXzA3KSwKLSAgICAgIFtmZl9waF9vcDFdICJmIihmZl9w
aF9vcDEpLCBbZmZfcGhfb3AzXSAiZiIoZmZfcGhfb3AzKSwKICAgICAgIFtmZl9wd18xNDUwMF0g
Im0iKGZmX3B3XzE0NTAwKSwgW2ZmX3B3Xzc1MDBdICJtIihmZl9wd183NTAwKSwKICAgICAgIFtm
Zl9wd18xMjAwMF0gIm0iKGZmX3B3XzEyMDAwKSwgW2ZmX3B3XzUxMDAwXSAibSIoZmZfcHdfNTEw
MDApLAogICAgICAgW2ZmX3B3XzUzNTJdIm0iKGZmX3B3XzUzNTIpLCBbZmZfcHdfMjIxN10ibSIo
ZmZfcHdfMjIxNyksCiAgICAgICBbZmZfcGhfOF0ibSIoZmZfcGhfOCksIFtwaXRjaF0iciIocGl0
Y2gpLCBbb3V0cHV0XSAiciIob3V0cHV0KQogICAgIDogIm1lbW9yeSIKICAgKTsKKyAgLyogY2xh
bmctZm9ybWF0IG9uICovCiB9CiAKIHZvaWQgdnA4X3Nob3J0X2ZkY3Q4eDRfbW1pKGludDE2X3Qg
KmlucHV0LCBpbnQxNl90ICpvdXRwdXQsIGludCBwaXRjaCkgewpAQCAtMjI4LDE3ICsyMzMsMjIg
QEAgdm9pZCB2cDhfc2hvcnRfZmRjdDh4NF9tbWkoaW50MTZfdCAqaW5wdXQsIGludDE2X3QgKm91
dHB1dCwgaW50IHBpdGNoKSB7CiB9CiAKIHZvaWQgdnA4X3Nob3J0X3dhbHNoNHg0X21taShpbnQx
Nl90ICppbnB1dCwgaW50MTZfdCAqb3V0cHV0LCBpbnQgcGl0Y2gpIHsKLSAgZG91YmxlIGZ0bXBb
MTNdOwotICB1aW50MzJfdCB0bXBbMV07Ci0gIERFQ0xBUkVfQUxJR05FRCg4LCBjb25zdCB1aW50
NjRfdCwgZmZfcGhfMDEpID0geyAweDAwMDEwMDAxMDAwMTAwMDFVTEwgfTsKLSAgREVDTEFSRV9B
TElHTkVEKDgsIGNvbnN0IHVpbnQ2NF90LCBmZl9wd18wMSkgPSB7IDB4MDAwMDAwMDEwMDAwMDAw
MVVMTCB9OwotICBERUNMQVJFX0FMSUdORUQoOCwgY29uc3QgdWludDY0X3QsIGZmX3B3XzAzKSA9
IHsgMHgwMDAwMDAwMzAwMDAwMDAzVUxMIH07Ci0gIERFQ0xBUkVfQUxJR05FRCg4LCBjb25zdCB1
aW50NjRfdCwgZmZfcHdfbWFzaykgPSB7IDB4MDAwMTAwMDAwMDAxMDAwMFVMTCB9OworICBkb3Vi
bGUgZnRtcFsxM10sIGZmX3BoXzAxLCBmZl9wd18wMSwgZmZfcHdfMDMsIGZmX3B3X21hc2s7Cisg
IHVpbnQ2NF90IHRtcFsxXTsKIAorICAvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiAgIF9fYXNtX18g
dm9sYXRpbGUgKAorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4MDAwMTAwMDEwMDAxMDAw
MSAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtm
Zl9waF8wMV0gICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKKyAgICAiZGxpICAgICAgICAl
W3RtcDBdLCAgICAweDAwMDAwMDAxMDAwMDAwMDEgICAgICAgICAgICAgICAgICBcblx0IgorICAg
ICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZmZfcHdfMDFdICAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwMDAwMDAwMzAwMDAwMDAz
ICAgICAgICAgICAgICAgICAgXG5cdCIKKyAgICAiZG10YzEgICAgICAlW3RtcDBdLCAgICAlW2Zm
X3B3XzAzXSAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVb
dG1wMF0sICAgIDB4MDAwMTAwMDAwMDAxMDAwMCAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAg
ImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wd19tYXNrXSAgICAgICAgICAgICAgICAgICAg
ICAgXG5cdCIKICAgICBNTUlfTEkoJVt0bXAwXSwgMHgwMikKLSAgICAieG9yICAgICAgICAlW2Z0
bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgotICAgICJt
dGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDExXSAgICAgICAgICAgICAgICAgICAgICAgICAg
IFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICVbZnRt
cDBdICAgICAgICAgICAgXG5cdCIKKyAgICAiZG10YzEgICAgICAlW3RtcDBdLCAgICAlW2Z0bXAx
MV0gICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogCiAgICAgImdzbGRsYzEgICAgJVtm
dG1wMV0sICAgMHgwNyglW2lwXSkgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAi
Z3NsZHJjMSAgICAlW2Z0bXAxXSwgICAweDAwKCVbaXBdKSAgICAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgpAQCAtMzM3LDUyICszNDcsNTIgQEAgdm9pZCB2cDhfc2hvcnRfd2Fsc2g0eDRfbW1p
KGludDE2X3QgKmlucHV0LCBpbnQxNl90ICpvdXRwdXQsIGludCBwaXRjaCkgewogICAgICJwc3Vi
dyAgICAgICVbZnRtcDRdLCAgICVbZnRtcDldLCAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxu
XHQiCiAKICAgICBNTUlfTEkoJVt0bXAwXSwgMHgwMykKLSAgICAibXRjMSAgICAgICAlW3RtcDBd
LCAgICAlW2Z0bXAxMV0gICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRj
MSAgICAgICVbdG1wMF0sICAgICVbZnRtcDExXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCiAKICAgICAicGNtcGd0dyAgICAlW2Z0bXA5XSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1w
MV0gICAgICAgICAgICBcblx0IgotICAgICJhbmQgICAgICAgICVbZnRtcDldLCAgICVbZnRtcDld
LCAgICAgICAlW2ZmX3B3XzAxXSAgICAgICAgIFxuXHQiCisgICAgInBhbmQgICAgICAgJVtmdG1w
OV0sICAgJVtmdG1wOV0sICAgICAgICVbZmZfcHdfMDFdICAgICAgICAgXG5cdCIKICAgICAicGFk
ZHcgICAgICAlW2Z0bXAxXSwgICAlW2Z0bXAxXSwgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBc
blx0IgogICAgICJwYWRkdyAgICAgICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAgICAlW2ZmX3B3
XzAzXSAgICAgICAgIFxuXHQiCiAgICAgInBzcmF3ICAgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0s
ICAgICAgICVbZnRtcDExXSAgICAgICAgICAgXG5cdCIKIAogICAgICJwY21wZ3R3ICAgICVbZnRt
cDldLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0bXAyXSAgICAgICAgICAgIFxuXHQiCi0gICAgImFu
ZCAgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgICAgICVbZmZfcHdfMDFdICAgICAgICAg
XG5cdCIKKyAgICAicGFuZCAgICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA5XSwgICAgICAgJVtmZl9w
d18wMV0gICAgICAgICBcblx0IgogICAgICJwYWRkdyAgICAgICVbZnRtcDJdLCAgICVbZnRtcDJd
LCAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR3ICAgICAgJVtmdG1w
Ml0sICAgJVtmdG1wMl0sICAgICAgICVbZmZfcHdfMDNdICAgICAgICAgXG5cdCIKICAgICAicHNy
YXcgICAgICAlW2Z0bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgJVtmdG1wMTFdICAgICAgICAgICBc
blx0IgogCiAgICAgInBjbXBndHcgICAgJVtmdG1wOV0sICAgJVtmdG1wMF0sICAgICAgICVbZnRt
cDNdICAgICAgICAgICAgXG5cdCIKLSAgICAiYW5kICAgICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA5
XSwgICAgICAgJVtmZl9wd18wMV0gICAgICAgICBcblx0IgorICAgICJwYW5kICAgICAgICVbZnRt
cDldLCAgICVbZnRtcDldLCAgICAgICAlW2ZmX3B3XzAxXSAgICAgICAgIFxuXHQiCiAgICAgInBh
ZGR3ICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICVbZnRtcDldICAgICAgICAgICAg
XG5cdCIKICAgICAicGFkZHcgICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAzXSwgICAgICAgJVtmZl9w
d18wM10gICAgICAgICBcblx0IgogICAgICJwc3JhdyAgICAgICVbZnRtcDNdLCAgICVbZnRtcDNd
LCAgICAgICAlW2Z0bXAxMV0gICAgICAgICAgIFxuXHQiCiAKICAgICAicGNtcGd0dyAgICAlW2Z0
bXA5XSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wNF0gICAgICAgICAgICBcblx0IgotICAgICJh
bmQgICAgICAgICVbZnRtcDldLCAgICVbZnRtcDldLCAgICAgICAlW2ZmX3B3XzAxXSAgICAgICAg
IFxuXHQiCisgICAgInBhbmQgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgICAgICVbZmZf
cHdfMDFdICAgICAgICAgXG5cdCIKICAgICAicGFkZHcgICAgICAlW2Z0bXA0XSwgICAlW2Z0bXA0
XSwgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgogICAgICJwYWRkdyAgICAgICVbZnRt
cDRdLCAgICVbZnRtcDRdLCAgICAgICAlW2ZmX3B3XzAzXSAgICAgICAgIFxuXHQiCiAgICAgInBz
cmF3ICAgICAgJVtmdG1wNF0sICAgJVtmdG1wNF0sICAgICAgICVbZnRtcDExXSAgICAgICAgICAg
XG5cdCIKIAogICAgICJwY21wZ3R3ICAgICVbZnRtcDldLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0
bXA1XSAgICAgICAgICAgIFxuXHQiCi0gICAgImFuZCAgICAgICAgJVtmdG1wOV0sICAgJVtmdG1w
OV0sICAgICAgICVbZmZfcHdfMDFdICAgICAgICAgXG5cdCIKKyAgICAicGFuZCAgICAgICAlW2Z0
bXA5XSwgICAlW2Z0bXA5XSwgICAgICAgJVtmZl9wd18wMV0gICAgICAgICBcblx0IgogICAgICJw
YWRkdyAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW2Z0bXA5XSAgICAgICAgICAg
IFxuXHQiCiAgICAgInBhZGR3ICAgICAgJVtmdG1wNV0sICAgJVtmdG1wNV0sICAgICAgICVbZmZf
cHdfMDNdICAgICAgICAgXG5cdCIKICAgICAicHNyYXcgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1
XSwgICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0IgogCiAgICAgInBjbXBndHcgICAgJVtm
dG1wOV0sICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDZdICAgICAgICAgICAgXG5cdCIKLSAgICAi
YW5kICAgICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA5XSwgICAgICAgJVtmZl9wd18wMV0gICAgICAg
ICBcblx0IgorICAgICJwYW5kICAgICAgICVbZnRtcDldLCAgICVbZnRtcDldLCAgICAgICAlW2Zm
X3B3XzAxXSAgICAgICAgIFxuXHQiCiAgICAgInBhZGR3ICAgICAgJVtmdG1wNl0sICAgJVtmdG1w
Nl0sICAgICAgICVbZnRtcDldICAgICAgICAgICAgXG5cdCIKICAgICAicGFkZHcgICAgICAlW2Z0
bXA2XSwgICAlW2Z0bXA2XSwgICAgICAgJVtmZl9wd18wM10gICAgICAgICBcblx0IgogICAgICJw
c3JhdyAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAlW2Z0bXAxMV0gICAgICAgICAg
IFxuXHQiCiAKICAgICAicGNtcGd0dyAgICAlW2Z0bXA5XSwgICAlW2Z0bXAwXSwgICAgICAgJVtm
dG1wN10gICAgICAgICAgICBcblx0IgotICAgICJhbmQgICAgICAgICVbZnRtcDldLCAgICVbZnRt
cDldLCAgICAgICAlW2ZmX3B3XzAxXSAgICAgICAgIFxuXHQiCisgICAgInBhbmQgICAgICAgJVtm
dG1wOV0sICAgJVtmdG1wOV0sICAgICAgICVbZmZfcHdfMDFdICAgICAgICAgXG5cdCIKICAgICAi
cGFkZHcgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAgJVtmdG1wOV0gICAgICAgICAg
ICBcblx0IgogICAgICJwYWRkdyAgICAgICVbZnRtcDddLCAgICVbZnRtcDddLCAgICAgICAlW2Zm
X3B3XzAzXSAgICAgICAgIFxuXHQiCiAgICAgInBzcmF3ICAgICAgJVtmdG1wN10sICAgJVtmdG1w
N10sICAgICAgICVbZnRtcDExXSAgICAgICAgICAgXG5cdCIKIAogICAgICJwY21wZ3R3ICAgICVb
ZnRtcDldLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCi0gICAg
ImFuZCAgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgICAgICVbZmZfcHdfMDFdICAgICAg
ICAgXG5cdCIKKyAgICAicGFuZCAgICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA5XSwgICAgICAgJVtm
Zl9wd18wMV0gICAgICAgICBcblx0IgogICAgICJwYWRkdyAgICAgICVbZnRtcDhdLCAgICVbZnRt
cDhdLCAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR3ICAgICAgJVtm
dG1wOF0sICAgJVtmdG1wOF0sICAgICAgICVbZmZfcHdfMDNdICAgICAgICAgXG5cdCIKICAgICAi
cHNyYXcgICAgICAlW2Z0bXA4XSwgICAlW2Z0bXA4XSwgICAgICAgJVtmdG1wMTFdICAgICAgICAg
ICBcblx0IgpAQCAtMzkzLDcgKzQwMyw3IEBAIHZvaWQgdnA4X3Nob3J0X3dhbHNoNHg0X21taShp
bnQxNl90ICppbnB1dCwgaW50MTZfdCAqb3V0cHV0LCBpbnQgcGl0Y2gpIHsKICAgICAicGFja3Nz
d2ggICAlW2Z0bXA0XSwgICAlW2Z0bXA0XSwgICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0
IgogCiAgICAgTU1JX0xJKCVbdG1wMF0sIDB4NzIpCi0gICAgIm10YzEgICAgICAgJVt0bXAwXSwg
ICAgJVtmdG1wMTFdICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKKyAgICAiZG10YzEg
ICAgICAlW3RtcDBdLCAgICAlW2Z0bXAxMV0gICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0
IgogICAgICJwc2h1ZmggICAgICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAgICAlW2Z0bXAxMV0g
ICAgICAgICAgIFxuXHQiCiAgICAgInBzaHVmaCAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAg
ICAgICVbZnRtcDExXSAgICAgICAgICAgXG5cdCIKICAgICAicHNodWZoICAgICAlW2Z0bXAzXSwg
ICAlW2Z0bXAzXSwgICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0IgpAQCAtNDEzLDEzICs0
MjMsMTIgQEAgdm9pZCB2cDhfc2hvcnRfd2Fsc2g0eDRfbW1pKGludDE2X3QgKmlucHV0LCBpbnQx
Nl90ICpvdXRwdXQsIGludCBwaXRjaCkgewogICAgICAgW2Z0bXA2XSI9JmYiKGZ0bXBbNl0pLCAg
ICAgICAgICAgIFtmdG1wN10iPSZmIihmdG1wWzddKSwKICAgICAgIFtmdG1wOF0iPSZmIihmdG1w
WzhdKSwgICAgICAgICAgICBbZnRtcDldIj0mZiIoZnRtcFs5XSksCiAgICAgICBbZnRtcDEwXSI9
JmYiKGZ0bXBbMTBdKSwgICAgICAgICAgW2Z0bXAxMV0iPSZmIihmdG1wWzExXSksCi0gICAgICBb
ZnRtcDEyXSI9JmYiKGZ0bXBbMTJdKSwKLSAgICAgIFt0bXAwXSI9JnIiKHRtcFswXSksCi0gICAg
ICBbaXBdIismciIoaW5wdXQpCi0gICAgOiBbb3BdInIiKG91dHB1dCksCi0gICAgICBbZmZfcHdf
MDFdImYiKGZmX3B3XzAxKSwgICAgICAgICAgW3BpdGNoXSJyIigobWlwc19yZWcpcGl0Y2gpLAot
ICAgICAgW2ZmX3B3XzAzXSJmIihmZl9wd18wMyksICAgICAgICAgIFtmZl9wd19tYXNrXSJmIihm
Zl9wd19tYXNrKSwKLSAgICAgIFtmZl9waF8wMV0iZiIoZmZfcGhfMDEpCisgICAgICBbZnRtcDEy
XSI9JmYiKGZ0bXBbMTJdKSwgICAgICAgICAgW2ZmX3B3X21hc2tdIj0mZiIoZmZfcHdfbWFzayks
CisgICAgICBbdG1wMF0iPSZyIih0bXBbMF0pLCAgICAgICAgICAgICAgW2ZmX3B3XzAxXSI9JmYi
KGZmX3B3XzAxKSwKKyAgICAgIFtpcF0iKyZyIihpbnB1dCksICAgICAgICAgICAgICAgICBbZmZf
cHdfMDNdIj0mZiIoZmZfcHdfMDMpLAorICAgICAgW2ZmX3BoXzAxXSI9JmYiKGZmX3BoXzAxKQor
ICAgIDogW29wXSJyIihvdXRwdXQpLCAgICAgICAgICAgICAgICAgIFtwaXRjaF0iciIoKG1pcHNf
cmVnKXBpdGNoKQogICAgIDogIm1lbW9yeSIKICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICov
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21pcHMvbW1pL3ZwOF9xdWFu
dGl6ZV9tbWkuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWlwcy9tbWkvdnA4X3F1YW50aXpl
X21taS5jCmluZGV4IDNjY2IxOTZmZmI5NTU2ODQzNmNkNTg1YTJjMmU2MGM4NzM3MDYwZmUuLjE5
ODY0NDRhYTM5NjM1ZTRiZTdkYzQzZGU1YjEwNjJlZTNmZGNmN2IgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvbWlwcy9tbWkvdnA4X3F1YW50aXplX21taS5jCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvbWlwcy9tbWkvdnA4X3F1YW50aXplX21taS5jCkBAIC00MiwyNCAr
NDIsMjUgQEAgdm9pZCB2cDhfZmFzdF9xdWFudGl6ZV9iX21taShCTE9DSyAqYiwgQkxPQ0tEICpk
KSB7CiAKICAgZG91YmxlIGZ0bXBbMTNdOwogICB1aW50NjRfdCB0bXBbMV07Ci0gIERFQ0xBUkVf
QUxJR05FRCg4LCBjb25zdCB1aW50NjRfdCwgb25lcykgPSB7IDB4ZmZmZmZmZmZmZmZmZmZmZlVM
TCB9OwotICBpbnQgZW9iID0gMDsKKyAgaW50NjRfdCBlb2IgPSAwOworICBkb3VibGUgb25lczsK
IAogICBfX2FzbV9fIHZvbGF0aWxlKAogICAgICAgLy8gbG9vcCAwIH4gNwotICAgICAgInhvciAg
ICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDBdICAgICAgICBcblx0Igor
ICAgICAgInB4b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDBdICAg
ICAgICBcblx0IgorICAgICAgInBjbXBlcWggICAgJVtvbmVzXSwgICAgJVtvbmVzXSwgICAgICAg
ICVbb25lc10gICAgICAgICBcblx0IgogICAgICAgImdzbGRsYzEgICAgJVtmdG1wMV0sICAgMHgw
NyglW2NvZWZmX3B0cl0pICAgICAgICAgICAgICBcblx0IgogICAgICAgImdzbGRyYzEgICAgJVtm
dG1wMV0sICAgMHgwMCglW2NvZWZmX3B0cl0pICAgICAgICAgICAgICBcblx0IgotICAgICAgImxp
ICAgICAgICAgJVt0bXAwXSwgICAgMHgwZiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0
IgotICAgICAgIm10YzEgICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAg
ICAgICAgICBcblx0IgorICAgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwZiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAg
JVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICAgImdzbGRsYzEgICAg
JVtmdG1wMl0sICAgMHgwZiglW2NvZWZmX3B0cl0pICAgICAgICAgICAgICBcblx0IgogICAgICAg
ImdzbGRyYzEgICAgJVtmdG1wMl0sICAgMHgwOCglW2NvZWZmX3B0cl0pICAgICAgICAgICAgICBc
blx0IgogCiAgICAgICAicHNyYWggICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAxXSwgICAgICAgJVtm
dG1wOV0gICAgICAgIFxuXHQiCi0gICAgICAieG9yICAgICAgICAlW2Z0bXAxXSwgICAlW2Z0bXAz
XSwgICAgICAgJVtmdG1wMV0gICAgICAgIFxuXHQiCisgICAgICAicHhvciAgICAgICAlW2Z0bXAx
XSwgICAlW2Z0bXAzXSwgICAgICAgJVtmdG1wMV0gICAgICAgIFxuXHQiCiAgICAgICAicHN1Ymgg
ICAgICAlW2Z0bXAxXSwgICAlW2Z0bXAxXSwgICAgICAgJVtmdG1wM10gICAgICAgIFxuXHQiCiAg
ICAgICAicHNyYWggICAgICAlW2Z0bXA0XSwgICAlW2Z0bXAyXSwgICAgICAgJVtmdG1wOV0gICAg
ICAgIFxuXHQiCi0gICAgICAieG9yICAgICAgICAlW2Z0bXAyXSwgICAlW2Z0bXA0XSwgICAgICAg
JVtmdG1wMl0gICAgICAgIFxuXHQiCisgICAgICAicHhvciAgICAgICAlW2Z0bXAyXSwgICAlW2Z0
bXA0XSwgICAgICAgJVtmdG1wMl0gICAgICAgIFxuXHQiCiAgICAgICAicHN1YmggICAgICAlW2Z0
bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgJVtmdG1wNF0gICAgICAgIFxuXHQiCiAKICAgICAgICJn
c2xkbGMxICAgICVbZnRtcDVdLCAgIDB4MDcoJVtyb3VuZF9wdHJdKSAgICAgICAgICAgICAgXG5c
dCIKQEAgLTc1LDggKzc2LDggQEAgdm9pZCB2cDhfZmFzdF9xdWFudGl6ZV9iX21taShCTE9DSyAq
YiwgQkxPQ0tEICpkKSB7CiAgICAgICAicG11bGh1aCAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwg
ICAgICAgJVtmdG1wN10gICAgICAgIFxuXHQiCiAgICAgICAicG11bGh1aCAgICAlW2Z0bXA2XSwg
ICAlW2Z0bXA2XSwgICAgICAgJVtmdG1wOF0gICAgICAgIFxuXHQiCiAKLSAgICAgICJ4b3IgICAg
ICAgICVbZnRtcDddLCAgICVbZnRtcDVdLCAgICAgICAlW2Z0bXAzXSAgICAgICAgXG5cdCIKLSAg
ICAgICJ4b3IgICAgICAgICVbZnRtcDhdLCAgICVbZnRtcDZdLCAgICAgICAlW2Z0bXA0XSAgICAg
ICAgXG5cdCIKKyAgICAgICJweG9yICAgICAgICVbZnRtcDddLCAgICVbZnRtcDVdLCAgICAgICAl
W2Z0bXAzXSAgICAgICAgXG5cdCIKKyAgICAgICJweG9yICAgICAgICVbZnRtcDhdLCAgICVbZnRt
cDZdLCAgICAgICAlW2Z0bXA0XSAgICAgICAgXG5cdCIKICAgICAgICJwc3ViaCAgICAgICVbZnRt
cDddLCAgICVbZnRtcDddLCAgICAgICAlW2Z0bXAzXSAgICAgICAgXG5cdCIKICAgICAgICJwc3Vi
aCAgICAgICVbZnRtcDhdLCAgICVbZnRtcDhdLCAgICAgICAlW2Z0bXA0XSAgICAgICAgXG5cdCIK
ICAgICAgICJnc3NkbGMxICAgICVbZnRtcDddLCAgIDB4MDcoJVtxY29lZmZfcHRyXSkgICAgICAg
ICAgICAgXG5cdCIKQEAgLTkwLDEwICs5MSwxMCBAQCB2b2lkIHZwOF9mYXN0X3F1YW50aXplX2Jf
bW1pKEJMT0NLICpiLCBCTE9DS0QgKmQpIHsKICAgICAgICJnc2xkcmMxICAgICVbZnRtcDJdLCAg
IDB4MDgoJVtpbnZfemlnX3phZ10pICAgICAgICAgICAgXG5cdCIKICAgICAgICJwY21wZXFoICAg
ICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW2Z0bXAwXSAgICAgICAgXG5cdCIKICAgICAg
ICJwY21wZXFoICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAlW2Z0bXAwXSAgICAgICAg
XG5cdCIKLSAgICAgICJ4b3IgICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW29u
ZXNdICAgICAgICAgXG5cdCIKLSAgICAgICJ4b3IgICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZd
LCAgICAgICAlW29uZXNdICAgICAgICAgXG5cdCIKLSAgICAgICJhbmQgICAgICAgICVbZnRtcDVd
LCAgICVbZnRtcDVdLCAgICAgICAlW2Z0bXAxXSAgICAgICAgXG5cdCIKLSAgICAgICJhbmQgICAg
ICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAlW2Z0bXAyXSAgICAgICAgXG5cdCIKKyAg
ICAgICJweG9yICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW29uZXNdICAgICAg
ICAgXG5cdCIKKyAgICAgICJweG9yICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAl
W29uZXNdICAgICAgICAgXG5cdCIKKyAgICAgICJwYW5kICAgICAgICVbZnRtcDVdLCAgICVbZnRt
cDVdLCAgICAgICAlW2Z0bXAxXSAgICAgICAgXG5cdCIKKyAgICAgICJwYW5kICAgICAgICVbZnRt
cDZdLCAgICVbZnRtcDZdLCAgICAgICAlW2Z0bXAyXSAgICAgICAgXG5cdCIKICAgICAgICJwbWF4
c2ggICAgICVbZnRtcDEwXSwgICVbZnRtcDVdLCAgICAgICAlW2Z0bXA2XSAgICAgICAgXG5cdCIK
IAogICAgICAgImdzbGRsYzEgICAgJVtmdG1wNV0sICAgMHgwNyglW2RlcXVhbnRfcHRyXSkgICAg
ICAgICAgICBcblx0IgpAQCAtMTE0LDEwICsxMTUsMTAgQEAgdm9pZCB2cDhfZmFzdF9xdWFudGl6
ZV9iX21taShCTE9DSyAqYiwgQkxPQ0tEICpkKSB7CiAgICAgICAiZ3NsZHJjMSAgICAlW2Z0bXAy
XSwgICAweDE4KCVbY29lZmZfcHRyXSkgICAgICAgICAgICAgIFxuXHQiCiAKICAgICAgICJwc3Jh
aCAgICAgICVbZnRtcDNdLCAgICVbZnRtcDFdLCAgICAgICAlW2Z0bXA5XSAgICAgICAgXG5cdCIK
LSAgICAgICJ4b3IgICAgICAgICVbZnRtcDFdLCAgICVbZnRtcDNdLCAgICAgICAlW2Z0bXAxXSAg
ICAgICAgXG5cdCIKKyAgICAgICJweG9yICAgICAgICVbZnRtcDFdLCAgICVbZnRtcDNdLCAgICAg
ICAlW2Z0bXAxXSAgICAgICAgXG5cdCIKICAgICAgICJwc3ViaCAgICAgICVbZnRtcDFdLCAgICVb
ZnRtcDFdLCAgICAgICAlW2Z0bXAzXSAgICAgICAgXG5cdCIKICAgICAgICJwc3JhaCAgICAgICVb
ZnRtcDRdLCAgICVbZnRtcDJdLCAgICAgICAlW2Z0bXA5XSAgICAgICAgXG5cdCIKLSAgICAgICJ4
b3IgICAgICAgICVbZnRtcDJdLCAgICVbZnRtcDRdLCAgICAgICAlW2Z0bXAyXSAgICAgICAgXG5c
dCIKKyAgICAgICJweG9yICAgICAgICVbZnRtcDJdLCAgICVbZnRtcDRdLCAgICAgICAlW2Z0bXAy
XSAgICAgICAgXG5cdCIKICAgICAgICJwc3ViaCAgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAg
ICAgICAlW2Z0bXA0XSAgICAgICAgXG5cdCIKIAogICAgICAgImdzbGRsYzEgICAgJVtmdG1wNV0s
ICAgMHgxNyglW3JvdW5kX3B0cl0pICAgICAgICAgICAgICBcblx0IgpAQCAtMTMzLDggKzEzNCw4
IEBAIHZvaWQgdnA4X2Zhc3RfcXVhbnRpemVfYl9tbWkoQkxPQ0sgKmIsIEJMT0NLRCAqZCkgewog
ICAgICAgInBtdWxodWggICAgJVtmdG1wNV0sICAgJVtmdG1wNV0sICAgICAgICVbZnRtcDddICAg
ICAgICBcblx0IgogICAgICAgInBtdWxodWggICAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAgICAg
ICVbZnRtcDhdICAgICAgICBcblx0IgogCi0gICAgICAieG9yICAgICAgICAlW2Z0bXA3XSwgICAl
W2Z0bXA1XSwgICAgICAgJVtmdG1wM10gICAgICAgIFxuXHQiCi0gICAgICAieG9yICAgICAgICAl
W2Z0bXA4XSwgICAlW2Z0bXA2XSwgICAgICAgJVtmdG1wNF0gICAgICAgIFxuXHQiCisgICAgICAi
cHhvciAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA1XSwgICAgICAgJVtmdG1wM10gICAgICAgIFxu
XHQiCisgICAgICAicHhvciAgICAgICAlW2Z0bXA4XSwgICAlW2Z0bXA2XSwgICAgICAgJVtmdG1w
NF0gICAgICAgIFxuXHQiCiAgICAgICAicHN1YmggICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwg
ICAgICAgJVtmdG1wM10gICAgICAgIFxuXHQiCiAgICAgICAicHN1YmggICAgICAlW2Z0bXA4XSwg
ICAlW2Z0bXA4XSwgICAgICAgJVtmdG1wNF0gICAgICAgIFxuXHQiCiAgICAgICAiZ3NzZGxjMSAg
ICAlW2Z0bXA3XSwgICAweDE3KCVbcWNvZWZmX3B0cl0pICAgICAgICAgICAgIFxuXHQiCkBAIC0x
NDgsMTAgKzE0OSwxMCBAQCB2b2lkIHZwOF9mYXN0X3F1YW50aXplX2JfbW1pKEJMT0NLICpiLCBC
TE9DS0QgKmQpIHsKICAgICAgICJnc2xkcmMxICAgICVbZnRtcDJdLCAgIDB4MTgoJVtpbnZfemln
X3phZ10pICAgICAgICAgICAgXG5cdCIKICAgICAgICJwY21wZXFoICAgICVbZnRtcDVdLCAgICVb
ZnRtcDVdLCAgICAgICAlW2Z0bXAwXSAgICAgICAgXG5cdCIKICAgICAgICJwY21wZXFoICAgICVb
ZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAlW2Z0bXAwXSAgICAgICAgXG5cdCIKLSAgICAgICJ4
b3IgICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW29uZXNdICAgICAgICAgXG5c
dCIKLSAgICAgICJ4b3IgICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAlW29uZXNd
ICAgICAgICAgXG5cdCIKLSAgICAgICJhbmQgICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAg
ICAgICAlW2Z0bXAxXSAgICAgICAgXG5cdCIKLSAgICAgICJhbmQgICAgICAgICVbZnRtcDZdLCAg
ICVbZnRtcDZdLCAgICAgICAlW2Z0bXAyXSAgICAgICAgXG5cdCIKKyAgICAgICJweG9yICAgICAg
ICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW29uZXNdICAgICAgICAgXG5cdCIKKyAgICAg
ICJweG9yICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAlW29uZXNdICAgICAgICAg
XG5cdCIKKyAgICAgICJwYW5kICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW2Z0
bXAxXSAgICAgICAgXG5cdCIKKyAgICAgICJwYW5kICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZd
LCAgICAgICAlW2Z0bXAyXSAgICAgICAgXG5cdCIKICAgICAgICJwbWF4c2ggICAgICVbZnRtcDEx
XSwgICVbZnRtcDVdLCAgICAgICAlW2Z0bXA2XSAgICAgICAgXG5cdCIKIAogICAgICAgImdzbGRs
YzEgICAgJVtmdG1wNV0sICAgMHgxNyglW2RlcXVhbnRfcHRyXSkgICAgICAgICAgICBcblx0IgpA
QCAtMTY1LDM0ICsxNjYsMzQgQEAgdm9pZCB2cDhfZmFzdF9xdWFudGl6ZV9iX21taShCTE9DSyAq
YiwgQkxPQ0tEICpkKSB7CiAgICAgICAiZ3NzZGxjMSAgICAlW2Z0bXA2XSwgICAweDFmKCVbZHFj
b2VmZl9wdHJdKSAgICAgICAgICAgIFxuXHQiCiAgICAgICAiZ3NzZHJjMSAgICAlW2Z0bXA2XSwg
ICAweDE4KCVbZHFjb2VmZl9wdHJdKSAgICAgICAgICAgIFxuXHQiCiAKLSAgICAgICJsaSAgICAg
ICAgICVbdG1wMF0sICAgIDB4MTAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKLSAg
ICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDldICAgICAgICAgICAgICAgICAgICAg
ICAgXG5cdCIKKyAgICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4MTAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXG5cdCIKKyAgICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRt
cDldICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKIAogICAgICAgInBtYXhzaCAgICAgJVtm
dG1wMTBdLCAgJVtmdG1wMTBdLCAgICAgICAlW2Z0bXAxMV0gICAgICBcblx0IgogICAgICAgInBz
cmx3ICAgICAgJVtmdG1wMTFdLCAgJVtmdG1wMTBdLCAgICAgICAlW2Z0bXA5XSAgICAgICBcblx0
IgogICAgICAgInBtYXhzaCAgICAgJVtmdG1wMTBdLCAgJVtmdG1wMTBdLCAgICAgICAlW2Z0bXAx
MV0gICAgICBcblx0IgotICAgICAgImxpICAgICAgICAgJVt0bXAwXSwgICAgMHhhYSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICAgIm10YzEgICAgICAgJVt0bXAwXSwgICAg
JVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICAgImRsaSAgICAgICAg
JVt0bXAwXSwgICAgMHhhYSAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICAg
ImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICBc
blx0IgogICAgICAgInBzaHVmaCAgICAgJVtmdG1wMTFdLCAgJVtmdG1wMTBdLCAgICAgICAlW2Z0
bXA5XSAgICAgICBcblx0IgogICAgICAgInBtYXhzaCAgICAgJVtmdG1wMTBdLCAgJVtmdG1wMTBd
LCAgICAgICAlW2Z0bXAxMV0gICAgICBcblx0IgotICAgICAgImxpICAgICAgICAgJVt0bXAwXSwg
ICAgMHhmZmZmICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICAgIm10YzEgICAg
ICAgJVt0bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAg
ICAgImFuZCAgICAgICAgJVtmdG1wMTBdLCAgJVtmdG1wMTBdLCAgICAgICAlW2Z0bXA5XSAgICAg
ICBcblx0IgorICAgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHhmZmZmICAgICAgICAgICAg
ICAgICAgICAgICAgICBcblx0IgorICAgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmdG1w
OV0gICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICAgInBhbmQgICAgICAgJVtmdG1w
MTBdLCAgJVtmdG1wMTBdLCAgICAgICAlW2Z0bXA5XSAgICAgICBcblx0IgogICAgICAgImdzc2Rs
YzEgICAgJVtmdG1wMTBdLCAgMHgwNyglW2VvYl0pICAgICAgICAgICAgICAgICAgICBcblx0Igog
ICAgICAgImdzc2RyYzEgICAgJVtmdG1wMTBdLCAgMHgwMCglW2VvYl0pICAgICAgICAgICAgICAg
ICAgICBcblx0IgogICAgICAgOiBbZnRtcDBdICI9JmYiKGZ0bXBbMF0pLCBbZnRtcDFdICI9JmYi
KGZ0bXBbMV0pLCBbZnRtcDJdICI9JmYiKGZ0bXBbMl0pLAogICAgICAgICBbZnRtcDNdICI9JmYi
KGZ0bXBbM10pLCBbZnRtcDRdICI9JmYiKGZ0bXBbNF0pLCBbZnRtcDVdICI9JmYiKGZ0bXBbNV0p
LAogICAgICAgICBbZnRtcDZdICI9JmYiKGZ0bXBbNl0pLCBbZnRtcDddICI9JmYiKGZ0bXBbN10p
LCBbZnRtcDhdICI9JmYiKGZ0bXBbOF0pLAogICAgICAgICBbZnRtcDldICI9JmYiKGZ0bXBbOV0p
LCBbZnRtcDEwXSAiPSZmIihmdG1wWzEwXSksCi0gICAgICAgIFtmdG1wMTFdICI9JmYiKGZ0bXBb
MTFdKSwgW2Z0bXAxMl0gIj0mZiIoZnRtcFsxMl0pLCBbdG1wMF0gIj0mciIodG1wWzBdKQorICAg
ICAgICBbZnRtcDExXSAiPSZmIihmdG1wWzExXSksIFtmdG1wMTJdICI9JmYiKGZ0bXBbMTJdKSwK
KyAgICAgICAgW3RtcDBdICI9JnIiKHRtcFswXSksIFtvbmVzXSAiPSZmIihvbmVzKQogICAgICAg
OiBbY29lZmZfcHRyXSAiciIoKG1pcHNfcmVnKWNvZWZmX3B0ciksCiAgICAgICAgIFtxY29lZmZf
cHRyXSAiciIoKG1pcHNfcmVnKXFjb2VmZl9wdHIpLAogICAgICAgICBbZGVxdWFudF9wdHJdICJy
IigobWlwc19yZWcpZGVxdWFudF9wdHIpLAogICAgICAgICBbcm91bmRfcHRyXSAiciIoKG1pcHNf
cmVnKXJvdW5kX3B0ciksCiAgICAgICAgIFtxdWFudF9wdHJdICJyIigobWlwc19yZWcpcXVhbnRf
cHRyKSwKICAgICAgICAgW2RxY29lZmZfcHRyXSAiciIoKG1pcHNfcmVnKWRxY29lZmZfcHRyKSwK
LSAgICAgICAgW2ludl96aWdfemFnXSAiciIoKG1pcHNfcmVnKWludl96aWdfemFnKSwgW2VvYl0g
InIiKChtaXBzX3JlZykmZW9iKSwKLSAgICAgICAgW29uZXNdICJmIihvbmVzKQorICAgICAgICBb
aW52X3ppZ196YWddICJyIigobWlwc19yZWcpaW52X3ppZ196YWcpLCBbZW9iXSAiciIoKG1pcHNf
cmVnKSZlb2IpCiAgICAgICA6ICJtZW1vcnkiKTsKIAogICAqZC0+ZW9iID0gZW9iOwpAQCAtMjE3
LDcgKzIxOCw3IEBAIHZvaWQgdnA4X3JlZ3VsYXJfcXVhbnRpemVfYl9tbWkoQkxPQ0sgKmIsIEJM
T0NLRCAqZCkgewogICAvLyAgbWVtc2V0KGRxY29lZmZfcHRyLCAwLCAzMik7CiAgIC8qIGNsYW5n
LWZvcm1hdCBvZmYgKi8KICAgX19hc21fXyB2b2xhdGlsZSAoCi0gICAgInhvciAgICAgICAgJVtm
dG1wMF0sICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDBdICAgICAgICBcblx0IgorICAgICJweG9y
ICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0bXAwXSAgICAgICAgXG5cdCIK
ICAgICAiZ3NzZGxjMSAgICAlW2Z0bXAwXSwgICAweDA3KCVbcWNvZWZmX3B0cl0pICAgICAgICAg
ICAgIFxuXHQiCiAgICAgImdzc2RyYzEgICAgJVtmdG1wMF0sICAgMHgwMCglW3Fjb2VmZl9wdHJd
KSAgICAgICAgICAgICBcblx0IgogICAgICJnc3NkbGMxICAgICVbZnRtcDBdLCAgIDB4MGYoJVtx
Y29lZmZfcHRyXSkgICAgICAgICAgICAgXG5cdCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvb255eF9pZi5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9vbnl4X2lmLmMKaW5k
ZXggMjljOGNjNjZjY2RiMTgyMmFjYmU1NmZlZjQ5ZjNmY2U3ODFiMTM2OC4uYWVlZDcxOWQxZmIx
NWNmMGY5YWQyODQxZjI0ZmVmOWY1MjZjMjdkMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9vbnl4X2lmLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9vbnl4X2lmLmMK
QEAgLTE0MzAsNiArMTQzMCw3IEBAIHZvaWQgdnA4X2NoYW5nZV9jb25maWcoVlA4X0NPTVAgKmNw
aSwgVlA4X0NPTkZJRyAqb3hjZikgewogICBWUDhfQ09NTU9OICpjbSA9ICZjcGktPmNvbW1vbjsK
ICAgaW50IGxhc3RfdywgbGFzdF9oOwogICB1bnNpZ25lZCBpbnQgcHJldl9udW1iZXJfb2ZfbGF5
ZXJzOworICB1bnNpZ25lZCBpbnQgcmF3X3RhcmdldF9yYXRlOwogCiAgIGlmICghY3BpKSByZXR1
cm47CiAKQEAgLTE1NzAsNiArMTU3MSwxMCBAQCB2b2lkIHZwOF9jaGFuZ2VfY29uZmlnKFZQOF9D
T01QICpjcGksIFZQOF9DT05GSUcgKm94Y2YpIHsKICAgICBjcGktPm94Y2YubWF4aW11bV9idWZm
ZXJfc2l6ZV9pbl9tcyA9IDI0MDAwMDsKICAgfQogCisgIHJhd190YXJnZXRfcmF0ZSA9ICh1bnNp
Z25lZCBpbnQpKChpbnQ2NF90KWNwaS0+b3hjZi5XaWR0aCAqIGNwaS0+b3hjZi5IZWlnaHQgKgor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA4ICogMyAqIGNwaS0+ZnJhbWVyYXRl
IC8gMTAwMCk7CisgIGlmIChjcGktPm94Y2YudGFyZ2V0X2JhbmR3aWR0aCA+IHJhd190YXJnZXRf
cmF0ZSkKKyAgICBjcGktPm94Y2YudGFyZ2V0X2JhbmR3aWR0aCA9IHJhd190YXJnZXRfcmF0ZTsK
ICAgLyogQ29udmVydCB0YXJnZXQgYmFuZHdpZHRoIGZyb20gS2JpdC9zIHRvIEJpdC9zICovCiAg
IGNwaS0+b3hjZi50YXJnZXRfYmFuZHdpZHRoICo9IDEwMDA7CiAKQEAgLTM2MTUsNyArMzYyMCw3
IEBAIHN0YXRpYyB2b2lkIGVuY29kZV9mcmFtZV90b19kYXRhX3JhdGUoVlA4X0NPTVAgKmNwaSwg
c2l6ZV90ICpzaXplLAogICAgICAgICBpZiAoY3BpLT50aGlzX2tleV9mcmFtZV9mb3JjZWQpIHsK
ICAgICAgICAgICBpZiAoY3BpLT5hY3RpdmVfYmVzdF9xdWFsaXR5ID4gY3BpLT5hdmdfZnJhbWVf
cWluZGV4ICogNyAvIDgpIHsKICAgICAgICAgICAgIGNwaS0+YWN0aXZlX2Jlc3RfcXVhbGl0eSA9
IGNwaS0+YXZnX2ZyYW1lX3FpbmRleCAqIDcgLyA4OwotICAgICAgICAgIH0gZWxzZSBpZiAoY3Bp
LT5hY3RpdmVfYmVzdF9xdWFsaXR5PGNwaS0+YXZnX2ZyYW1lX3FpbmRleD4+IDIpIHsKKyAgICAg
ICAgICB9IGVsc2UgaWYgKGNwaS0+YWN0aXZlX2Jlc3RfcXVhbGl0eSA8IChjcGktPmF2Z19mcmFt
ZV9xaW5kZXggPj4gMikpIHsKICAgICAgICAgICAgIGNwaS0+YWN0aXZlX2Jlc3RfcXVhbGl0eSA9
IGNwaS0+YXZnX2ZyYW1lX3FpbmRleCA+PiAyOwogICAgICAgICAgIH0KICAgICAgICAgfQpAQCAt
NDUyMCwyMiArNDUyNSwyNCBAQCBzdGF0aWMgdm9pZCBlbmNvZGVfZnJhbWVfdG9fZGF0YV9yYXRl
KFZQOF9DT01QICpjcGksIHNpemVfdCAqc2l6ZSwKICAgLyogUm9sbGluZyBtb25pdG9ycyBvZiB3
aGV0aGVyIHdlIGFyZSBvdmVyIG9yIHVuZGVyc3BlbmRpbmcgdXNlZCB0bwogICAgKiBoZWxwIHJl
Z3VsYXRlIG1pbiBhbmQgTWF4IFEgaW4gdHdvIHBhc3MuCiAgICAqLwotICBjcGktPnJvbGxpbmdf
dGFyZ2V0X2JpdHMgPQotICAgICAgKChjcGktPnJvbGxpbmdfdGFyZ2V0X2JpdHMgKiAzKSArIGNw
aS0+dGhpc19mcmFtZV90YXJnZXQgKyAyKSAvIDQ7Ci0gIGNwaS0+cm9sbGluZ19hY3R1YWxfYml0
cyA9Ci0gICAgICAoKGNwaS0+cm9sbGluZ19hY3R1YWxfYml0cyAqIDMpICsgY3BpLT5wcm9qZWN0
ZWRfZnJhbWVfc2l6ZSArIDIpIC8gNDsKLSAgY3BpLT5sb25nX3JvbGxpbmdfdGFyZ2V0X2JpdHMg
PQotICAgICAgKChjcGktPmxvbmdfcm9sbGluZ190YXJnZXRfYml0cyAqIDMxKSArIGNwaS0+dGhp
c19mcmFtZV90YXJnZXQgKyAxNikgLyAzMjsKLSAgY3BpLT5sb25nX3JvbGxpbmdfYWN0dWFsX2Jp
dHMgPQotICAgICAgKChjcGktPmxvbmdfcm9sbGluZ19hY3R1YWxfYml0cyAqIDMxKSArIGNwaS0+
cHJvamVjdGVkX2ZyYW1lX3NpemUgKyAxNikgLwotICAgICAgMzI7CisgIGNwaS0+cm9sbGluZ190
YXJnZXRfYml0cyA9IChpbnQpUk9VTkQ2NF9QT1dFUl9PRl9UV08oCisgICAgICAoaW50NjRfdClj
cGktPnJvbGxpbmdfdGFyZ2V0X2JpdHMgKiAzICsgY3BpLT50aGlzX2ZyYW1lX3RhcmdldCwgMik7
CisgIGNwaS0+cm9sbGluZ19hY3R1YWxfYml0cyA9IChpbnQpUk9VTkQ2NF9QT1dFUl9PRl9UV08o
CisgICAgICAoaW50NjRfdCljcGktPnJvbGxpbmdfYWN0dWFsX2JpdHMgKiAzICsgY3BpLT5wcm9q
ZWN0ZWRfZnJhbWVfc2l6ZSwgMik7CisgIGNwaS0+bG9uZ19yb2xsaW5nX3RhcmdldF9iaXRzID0g
KGludClST1VORDY0X1BPV0VSX09GX1RXTygKKyAgICAgIChpbnQ2NF90KWNwaS0+bG9uZ19yb2xs
aW5nX3RhcmdldF9iaXRzICogMzEgKyBjcGktPnRoaXNfZnJhbWVfdGFyZ2V0LCA1KTsKKyAgY3Bp
LT5sb25nX3JvbGxpbmdfYWN0dWFsX2JpdHMgPSAoaW50KVJPVU5ENjRfUE9XRVJfT0ZfVFdPKAor
ICAgICAgKGludDY0X3QpY3BpLT5sb25nX3JvbGxpbmdfYWN0dWFsX2JpdHMgKiAzMSArIGNwaS0+
cHJvamVjdGVkX2ZyYW1lX3NpemUsCisgICAgICA1KTsKIAogICAvKiBBY3R1YWwgYml0cyBzcGVu
dCAqLwogICBjcGktPnRvdGFsX2FjdHVhbF9iaXRzICs9IGNwaS0+cHJvamVjdGVkX2ZyYW1lX3Np
emU7CiAKKyNpZiAwICYmIENPTkZJR19JTlRFUk5BTF9TVEFUUwogICAvKiBEZWJ1ZyBzdGF0cyAq
LwogICBjcGktPnRvdGFsX3RhcmdldF92c19hY3R1YWwgKz0KICAgICAgIChjcGktPnRoaXNfZnJh
bWVfdGFyZ2V0IC0gY3BpLT5wcm9qZWN0ZWRfZnJhbWVfc2l6ZSk7CisjZW5kaWYKIAogICBjcGkt
PmJ1ZmZlcl9sZXZlbCA9IGNwaS0+Yml0c19vZmZfdGFyZ2V0OwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL29ueXhfaW50LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL29u
eXhfaW50LmgKaW5kZXggNTBhNzUwZGEzMTAxYmM3MDg1ZmZhNTMxMDVhMWVmZjlhMjhlMTc2YS4u
Yjk2ZjliMWRjNWJjZWI1YTFjYjgwM2EzNzFhY2NlZTllYjQ1OTFhOSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9vbnl4X2ludC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvb255eF9pbnQuaApAQCAtMzM5LDcgKzMzOSw3IEBAIHR5cGVkZWYgc3RydWN0IFZQOF9DT01Q
IHsKIAogICBDT0RJTkdfQ09OVEVYVCBjb2RpbmdfY29udGV4dDsKIAotICAvKiBSYXRlIHRhcmdl
dHRpbmcgdmFyaWFibGVzICovCisgIC8qIFJhdGUgdGFyZ2V0aW5nIHZhcmlhYmxlcyAqLwogICBp
bnQ2NF90IGxhc3RfcHJlZGljdGlvbl9lcnJvcjsKICAgaW50NjRfdCBsYXN0X2ludHJhX2Vycm9y
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmMgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmMKaW5kZXggZGJkNzZlZGFkMDVlMThiMDA3MWIx
N2Y4YTM4MDVmM2Y1ZjkwOWUyZi4uYmExMjRjMzU5ZTU1ODA4ZWVjYjc0M2NlYTI4Y2M0YTRmMWJl
ZjY3YyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yYXRlY3RybC5jCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwuYwpAQCAtMzU3LDcgKzM1Nyw3IEBAIHN0
YXRpYyB2b2lkIGNhbGNfaWZyYW1lX3RhcmdldF9zaXplKFZQOF9DT01QICpjcGkpIHsKIAogICBj
cGktPnRoaXNfZnJhbWVfdGFyZ2V0ID0gKGludCl0YXJnZXQ7CiAKLSAgLyogVE9ETzogaWYgd2Ug
c2VwYXJhdGUgcmF0ZSB0YXJnZXRpbmcgZnJvbSBRIHRhcmdldHRpbmcsIG1vdmUgdGhpcy4KKyAg
LyogVE9ETzogaWYgd2Ugc2VwYXJhdGUgcmF0ZSB0YXJnZXRpbmcgZnJvbSBRIHRhcmdldGluZywg
bW92ZSB0aGlzLgogICAgKiBSZXNldCB0aGUgYWN0aXZlIHdvcnN0IHF1YWxpdHkgdG8gdGhlIGJh
c2VsaW5lIHZhbHVlIGZvciBrZXkgZnJhbWVzLgogICAgKi8KICAgaWYgKGNwaS0+cGFzcyAhPSAy
KSBjcGktPmFjdGl2ZV93b3JzdF9xdWFsaXR5ID0gY3BpLT53b3JzdF9xdWFsaXR5OwpAQCAtMTM3
NSwxNCArMTM3NSwxNyBAQCB2b2lkIHZwOF9jb21wdXRlX2ZyYW1lX3NpemVfYm91bmRzKFZQOF9D
T01QICpjcGksIGludCAqZnJhbWVfdW5kZXJfc2hvb3RfbGltaXQsCiAgICAgKmZyYW1lX3VuZGVy
X3Nob290X2xpbWl0ID0gMDsKICAgICAqZnJhbWVfb3Zlcl9zaG9vdF9saW1pdCA9IElOVF9NQVg7
CiAgIH0gZWxzZSB7CisgICAgY29uc3QgaW50NjRfdCB0aGlzX2ZyYW1lX3RhcmdldCA9IGNwaS0+
dGhpc19mcmFtZV90YXJnZXQ7CisgICAgaW50NjRfdCBvdmVyX3Nob290X2xpbWl0LCB1bmRlcl9z
aG9vdF9saW1pdDsKKwogICAgIGlmIChjcGktPmNvbW1vbi5mcmFtZV90eXBlID09IEtFWV9GUkFN
RSkgewotICAgICAgKmZyYW1lX292ZXJfc2hvb3RfbGltaXQgPSBjcGktPnRoaXNfZnJhbWVfdGFy
Z2V0ICogOSAvIDg7Ci0gICAgICAqZnJhbWVfdW5kZXJfc2hvb3RfbGltaXQgPSBjcGktPnRoaXNf
ZnJhbWVfdGFyZ2V0ICogNyAvIDg7CisgICAgICBvdmVyX3Nob290X2xpbWl0ID0gdGhpc19mcmFt
ZV90YXJnZXQgKiA5IC8gODsKKyAgICAgIHVuZGVyX3Nob290X2xpbWl0ID0gdGhpc19mcmFtZV90
YXJnZXQgKiA3IC8gODsKICAgICB9IGVsc2UgewogICAgICAgaWYgKGNwaS0+b3hjZi5udW1iZXJf
b2ZfbGF5ZXJzID4gMSB8fCBjcGktPmNvbW1vbi5yZWZyZXNoX2FsdF9yZWZfZnJhbWUgfHwKICAg
ICAgICAgICBjcGktPmNvbW1vbi5yZWZyZXNoX2dvbGRlbl9mcmFtZSkgewotICAgICAgICAqZnJh
bWVfb3Zlcl9zaG9vdF9saW1pdCA9IGNwaS0+dGhpc19mcmFtZV90YXJnZXQgKiA5IC8gODsKLSAg
ICAgICAgKmZyYW1lX3VuZGVyX3Nob290X2xpbWl0ID0gY3BpLT50aGlzX2ZyYW1lX3RhcmdldCAq
IDcgLyA4OworICAgICAgICBvdmVyX3Nob290X2xpbWl0ID0gdGhpc19mcmFtZV90YXJnZXQgKiA5
IC8gODsKKyAgICAgICAgdW5kZXJfc2hvb3RfbGltaXQgPSB0aGlzX2ZyYW1lX3RhcmdldCAqIDcg
LyA4OwogICAgICAgfSBlbHNlIHsKICAgICAgICAgLyogRm9yIENCUiB0YWtlIGJ1ZmZlciBmdWxs
bmVzcyBpbnRvIGFjY291bnQgKi8KICAgICAgICAgaWYgKGNwaS0+b3hjZi5lbmRfdXNhZ2UgPT0g
VVNBR0VfU1RSRUFNX0ZST01fU0VSVkVSKSB7CkBAIC0xMzkyLDE4ICsxMzk1LDE4IEBAIHZvaWQg
dnA4X2NvbXB1dGVfZnJhbWVfc2l6ZV9ib3VuZHMoVlA4X0NPTVAgKmNwaSwgaW50ICpmcmFtZV91
bmRlcl9zaG9vdF9saW1pdCwKICAgICAgICAgICAgIC8qIEJ1ZmZlciBpcyB0b28gZnVsbCBzbyBy
ZWxheCBvdmVyc2hvb3QgYW5kIHRpZ2h0ZW4KICAgICAgICAgICAgICAqIHVuZGVyc2hvb3QKICAg
ICAgICAgICAgICAqLwotICAgICAgICAgICAgKmZyYW1lX292ZXJfc2hvb3RfbGltaXQgPSBjcGkt
PnRoaXNfZnJhbWVfdGFyZ2V0ICogMTIgLyA4OwotICAgICAgICAgICAgKmZyYW1lX3VuZGVyX3No
b290X2xpbWl0ID0gY3BpLT50aGlzX2ZyYW1lX3RhcmdldCAqIDYgLyA4OworICAgICAgICAgICAg
b3Zlcl9zaG9vdF9saW1pdCA9IHRoaXNfZnJhbWVfdGFyZ2V0ICogMTIgLyA4OworICAgICAgICAg
ICAgdW5kZXJfc2hvb3RfbGltaXQgPSB0aGlzX2ZyYW1lX3RhcmdldCAqIDYgLyA4OwogICAgICAg
ICAgIH0gZWxzZSBpZiAoY3BpLT5idWZmZXJfbGV2ZWwgPD0KICAgICAgICAgICAgICAgICAgICAg
IChjcGktPm94Y2Yub3B0aW1hbF9idWZmZXJfbGV2ZWwgPj4gMSkpIHsKICAgICAgICAgICAgIC8q
IEJ1ZmZlciBpcyB0b28gbG93IHNvIHJlbGF4IHVuZGVyc2hvb3QgYW5kIHRpZ2h0ZW4KICAgICAg
ICAgICAgICAqIG92ZXJzaG9vdAogICAgICAgICAgICAgICovCi0gICAgICAgICAgICAqZnJhbWVf
b3Zlcl9zaG9vdF9saW1pdCA9IGNwaS0+dGhpc19mcmFtZV90YXJnZXQgKiAxMCAvIDg7Ci0gICAg
ICAgICAgICAqZnJhbWVfdW5kZXJfc2hvb3RfbGltaXQgPSBjcGktPnRoaXNfZnJhbWVfdGFyZ2V0
ICogNCAvIDg7CisgICAgICAgICAgICBvdmVyX3Nob290X2xpbWl0ID0gdGhpc19mcmFtZV90YXJn
ZXQgKiAxMCAvIDg7CisgICAgICAgICAgICB1bmRlcl9zaG9vdF9saW1pdCA9IHRoaXNfZnJhbWVf
dGFyZ2V0ICogNCAvIDg7CiAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICpmcmFtZV9v
dmVyX3Nob290X2xpbWl0ID0gY3BpLT50aGlzX2ZyYW1lX3RhcmdldCAqIDExIC8gODsKLSAgICAg
ICAgICAgICpmcmFtZV91bmRlcl9zaG9vdF9saW1pdCA9IGNwaS0+dGhpc19mcmFtZV90YXJnZXQg
KiA1IC8gODsKKyAgICAgICAgICAgIG92ZXJfc2hvb3RfbGltaXQgPSB0aGlzX2ZyYW1lX3Rhcmdl
dCAqIDExIC8gODsKKyAgICAgICAgICAgIHVuZGVyX3Nob290X2xpbWl0ID0gdGhpc19mcmFtZV90
YXJnZXQgKiA1IC8gODsKICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgICAgLyogVkJSIGFu
ZCBDUSBtb2RlICovCkBAIC0xNDEzLDExICsxNDE2LDExIEBAIHZvaWQgdnA4X2NvbXB1dGVfZnJh
bWVfc2l6ZV9ib3VuZHMoVlA4X0NPTVAgKmNwaSwgaW50ICpmcmFtZV91bmRlcl9zaG9vdF9saW1p
dCwKICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgLyogU3Ryb24gb3ZlcnNob290IGxpbWl0IGZv
ciBjb25zdHJhaW5lZCBxdWFsaXR5ICovCiAgICAgICAgICAgaWYgKGNwaS0+b3hjZi5lbmRfdXNh
Z2UgPT0gVVNBR0VfQ09OU1RSQUlORURfUVVBTElUWSkgewotICAgICAgICAgICAgKmZyYW1lX292
ZXJfc2hvb3RfbGltaXQgPSBjcGktPnRoaXNfZnJhbWVfdGFyZ2V0ICogMTEgLyA4OwotICAgICAg
ICAgICAgKmZyYW1lX3VuZGVyX3Nob290X2xpbWl0ID0gY3BpLT50aGlzX2ZyYW1lX3RhcmdldCAq
IDIgLyA4OworICAgICAgICAgICAgb3Zlcl9zaG9vdF9saW1pdCA9IHRoaXNfZnJhbWVfdGFyZ2V0
ICogMTEgLyA4OworICAgICAgICAgICAgdW5kZXJfc2hvb3RfbGltaXQgPSB0aGlzX2ZyYW1lX3Rh
cmdldCAqIDIgLyA4OwogICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAqZnJhbWVfb3Zl
cl9zaG9vdF9saW1pdCA9IGNwaS0+dGhpc19mcmFtZV90YXJnZXQgKiAxMSAvIDg7Ci0gICAgICAg
ICAgICAqZnJhbWVfdW5kZXJfc2hvb3RfbGltaXQgPSBjcGktPnRoaXNfZnJhbWVfdGFyZ2V0ICog
NSAvIDg7CisgICAgICAgICAgICBvdmVyX3Nob290X2xpbWl0ID0gdGhpc19mcmFtZV90YXJnZXQg
KiAxMSAvIDg7CisgICAgICAgICAgICB1bmRlcl9zaG9vdF9saW1pdCA9IHRoaXNfZnJhbWVfdGFy
Z2V0ICogNSAvIDg7CiAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICB9CkBAIC0xNDI3LDkg
KzE0MzAsMTMgQEAgdm9pZCB2cDhfY29tcHV0ZV9mcmFtZV9zaXplX2JvdW5kcyhWUDhfQ09NUCAq
Y3BpLCBpbnQgKmZyYW1lX3VuZGVyX3Nob290X2xpbWl0LAogICAgICAqIChlZyAqIDcvOCkgbWF5
IGJlIHRpbnkgbWFrZSBzdXJlIHRoZXJlIGlzIGF0IGxlYXN0IGEgbWluaW11bQogICAgICAqIHJh
bmdlLgogICAgICAqLwotICAgICpmcmFtZV9vdmVyX3Nob290X2xpbWl0ICs9IDIwMDsKLSAgICAq
ZnJhbWVfdW5kZXJfc2hvb3RfbGltaXQgLT0gMjAwOwotICAgIGlmICgqZnJhbWVfdW5kZXJfc2hv
b3RfbGltaXQgPCAwKSAqZnJhbWVfdW5kZXJfc2hvb3RfbGltaXQgPSAwOworICAgIG92ZXJfc2hv
b3RfbGltaXQgKz0gMjAwOworICAgIHVuZGVyX3Nob290X2xpbWl0IC09IDIwMDsKKyAgICBpZiAo
dW5kZXJfc2hvb3RfbGltaXQgPCAwKSB1bmRlcl9zaG9vdF9saW1pdCA9IDA7CisgICAgaWYgKHVu
ZGVyX3Nob290X2xpbWl0ID4gSU5UX01BWCkgdW5kZXJfc2hvb3RfbGltaXQgPSBJTlRfTUFYOwor
ICAgIGlmIChvdmVyX3Nob290X2xpbWl0ID4gSU5UX01BWCkgb3Zlcl9zaG9vdF9saW1pdCA9IElO
VF9NQVg7CisgICAgKmZyYW1lX3VuZGVyX3Nob290X2xpbWl0ID0gKGludCl1bmRlcl9zaG9vdF9s
aW1pdDsKKyAgICAqZnJhbWVfb3Zlcl9zaG9vdF9saW1pdCA9IChpbnQpb3Zlcl9zaG9vdF9saW1p
dDsKICAgfQogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0
ZXIuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdyaXRlci5oCmluZGV4IGMwMjY4M2E1
OGI3ODU1OTdkZWVlZmZmMjQzYzEyZmQwN2MxZmYxNDcuLjRlOWVkNmFmMTdjZGQ5ODUwY2UyYTc5
Y2YyNjljM2NiNTRlMzA0ZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJl
ZXdyaXRlci5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdyaXRlci5oCkBAIC0x
NCw2ICsxNCw4IEBACiAvKiBUcmVlcyBtYXAgYWxwaGFiZXRzIGludG8gaHVmZm1hbi1saWtlIGNv
ZGVzIHN1aXRhYmxlIGZvciBhbiBhcml0aG1ldGljCiAgICBiaXQgY29kZXIuICBUaW1vdGh5IFMg
TXVycGh5ICAxMSBPY3RvYmVyIDIwMDQgKi8KIAorI2luY2x1ZGUgPHN0ZGludC5oPgorCiAjaW5j
bHVkZSAiLi92cHhfY29uZmlnLmgiCiAjaW5jbHVkZSAidnA4L2NvbW1vbi90cmVlY29kZXIuaCIK
IApAQCAtNDgsNyArNTAsOSBAQCBzdGF0aWMgSU5MSU5FIHVuc2lnbmVkIGludCB2cDhfY29zdF9i
cmFuY2goY29uc3QgdW5zaWduZWQgaW50IGN0WzJdLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHZwOF9wcm9iIHApIHsKICAgLyogSW1pdGF0ZSBleGlzdGluZyBj
YWxjdWxhdGlvbiAqLwogCi0gIHJldHVybiAoKGN0WzBdICogdnA4X2Nvc3RfemVybyhwKSkgKyAo
Y3RbMV0gKiB2cDhfY29zdF9vbmUocCkpKSA+PiA4OworICByZXR1cm4gKHVuc2lnbmVkIGludCko
KCgoKHVpbnQ2NF90KWN0WzBdKSAqIHZwOF9jb3N0X3plcm8ocCkpICsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAoKCh1aW50NjRfdCljdFsxXSkgKiB2cDhfY29zdF9vbmUocCkpKSA+PgorICAg
ICAgICAgICAgICAgICAgICAgICAgOCk7CiB9CiAKIC8qIFNtYWxsIGZ1bmN0aW9ucyB0byB3cml0
ZSBleHBsaWNpdCB2YWx1ZXMgYW5kIHRva2VucywgYXMgd2VsbCBhcwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci94ODYvYmxvY2tfZXJyb3Jfc3NlMi5hc20gYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL3g4Ni9ibG9ja19lcnJvcl9zc2UyLmFzbQppbmRleCBmNmM2YWVhZTc0NGY3
ZjE0Yjk5YjIzZWM0ZTRhNGRmYTdjZjMwYTkxLi4yMDBiNGNjZmU2YmQ0ZWY3ODVmNDM0MDcwZDUz
YjQ2MGExNmQ3YjNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9ibG9j
a19lcnJvcl9zc2UyLmFzbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9ibG9ja19l
cnJvcl9zc2UyLmFzbQpAQCAtMTQsNyArMTQsNyBAQAogU0VDVElPTiAudGV4dAogCiA7aW50IHZw
OF9ibG9ja19lcnJvcl9zc2UyKHNob3J0ICpjb2VmZl9wdHIsICBzaG9ydCAqZGNvZWZfcHRyKQot
Z2xvYmFsIHN5bSh2cDhfYmxvY2tfZXJyb3Jfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZwOF9i
bG9ja19lcnJvcl9zc2UyKQogc3ltKHZwOF9ibG9ja19lcnJvcl9zc2UyKToKICAgICBwdXNoICAg
ICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtNjIsNyArNjIsNyBAQCBzeW0o
dnA4X2Jsb2NrX2Vycm9yX3NzZTIpOgogICAgIHJldAogCiA7aW50IHZwOF9tYmJsb2NrX2Vycm9y
X3NzZTJfaW1wbChzaG9ydCAqY29lZmZfcHRyLCBzaG9ydCAqZGNvZWZfcHRyLCBpbnQgZGMpOwot
Z2xvYmFsIHN5bSh2cDhfbWJibG9ja19lcnJvcl9zc2UyX2ltcGwpIFBSSVZBVEUKK2dsb2JhbHN5
bSh2cDhfbWJibG9ja19lcnJvcl9zc2UyX2ltcGwpCiBzeW0odnA4X21iYmxvY2tfZXJyb3Jfc3Nl
Ml9pbXBsKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApA
QCAtMTMyLDcgKzEzMiw3IEBAIHN5bSh2cDhfbWJibG9ja19lcnJvcl9zc2UyX2ltcGwpOgogCiAK
IDtpbnQgdnA4X21idXZlcnJvcl9zc2UyX2ltcGwoc2hvcnQgKnNfcHRyLCBzaG9ydCAqZF9wdHIp
OwotZ2xvYmFsIHN5bSh2cDhfbWJ1dmVycm9yX3NzZTJfaW1wbCkgUFJJVkFURQorZ2xvYmFsc3lt
KHZwOF9tYnV2ZXJyb3Jfc3NlMl9pbXBsKQogc3ltKHZwOF9tYnV2ZXJyb3Jfc3NlMl9pbXBsKToK
ICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci94ODYvY29weV9zc2UyLmFzbSBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIveDg2L2NvcHlfc3NlMi5hc20KaW5kZXggNDgwZmFhMjU1MDkxOTBkYzA2NmY3
MTAwZWIyOTE1ZTZhYjg3ZjBiMS4uZmU3OGRhMzk4ZWU0ZGQ0ZTA0NzUxODQxZmE4YzNiZGI5MGFl
ZTY0OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci94ODYvY29weV9zc2UyLmFz
bQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9jb3B5X3NzZTIuYXNtCkBAIC0xOSw3
ICsxOSw3IEBAIFNFQ1RJT04gLnRleHQKIDsgICAgdW5zaWduZWQgY2hhciAqZHN0X3B0ciwKIDsg
ICAgaW50ICBkc3Rfc3RyaWRlLAogOyAgICBpbnQgaGVpZ2h0KTsKLWdsb2JhbCBzeW0odnA4X2Nv
cHkzMnhuX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfY29weTMyeG5fc3NlMikKIHN5bSh2
cDhfY29weTMyeG5fc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAg
cmJwLCByc3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2L2NvcHlfc3Nl
My5hc20gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9jb3B5X3NzZTMuYXNtCmluZGV4IDMx
ZWE4OThhM2Q4YjFkNmYzOTEyZWU2NmYxOWU5ZDI0MGEzMGEyMGQuLmM0MGIyZDhiZjYxNTgyN2M2
ZTE0MWY1ZjdhZGU2NjdkNDE3Y2Q0ZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIveDg2L2NvcHlfc3NlMy5hc20KKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci94ODYvY29w
eV9zc2UzLmFzbQpAQCAtOTEsNyArOTEsNyBAQCBTRUNUSU9OIC50ZXh0CiA7ICAgIHVuc2lnbmVk
IGNoYXIgKmRzdF9wdHIsCiA7ICAgIGludCAgZHN0X3N0cmlkZSwKIDsgICAgaW50IGhlaWdodCk7
Ci1nbG9iYWwgc3ltKHZwOF9jb3B5MzJ4bl9zc2UzKSBQUklWQVRFCitnbG9iYWxzeW0odnA4X2Nv
cHkzMnhuX3NzZTMpCiBzeW0odnA4X2NvcHkzMnhuX3NzZTMpOgogCiAgICAgU1RBQ0tfRlJBTUVf
Q1JFQVRFX1gzCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9kY3Rfc3Nl
Mi5hc20gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9kY3Rfc3NlMi5hc20KaW5kZXggNGQ5
MmYwMzQxZDVmYzZkZTRkYTgwMGViMGYzOWE0NTBhOWYyN2NiYy4uM2MyOGNiOTAyZTA3ZWU2MjNk
OTQ1NWNlODBhMDBhMWE1NTQxN2U5MCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci94ODYvZGN0X3NzZTIuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2L2RjdF9z
c2UyLmFzbQpAQCAtNjMsNyArNjMsNyBAQAogU0VDVElPTiAudGV4dAogCiA7dm9pZCB2cDhfc2hv
cnRfZmRjdDR4NF9zc2UyKHNob3J0ICppbnB1dCwgc2hvcnQgKm91dHB1dCwgaW50IHBpdGNoKQot
Z2xvYmFsIHN5bSh2cDhfc2hvcnRfZmRjdDR4NF9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnA4
X3Nob3J0X2ZkY3Q0eDRfc3NlMikKIHN5bSh2cDhfc2hvcnRfZmRjdDR4NF9zc2UyKToKIAogICAg
IFNUQUNLX0ZSQU1FX0NSRUFURQpAQCAtMTY4LDcgKzE2OCw3IEBAIHN5bSh2cDhfc2hvcnRfZmRj
dDR4NF9zc2UyKToKICAgICBTVEFDS19GUkFNRV9ERVNUUk9ZCiAKIDt2b2lkIHZwOF9zaG9ydF9m
ZGN0OHg0X3NzZTIoc2hvcnQgKmlucHV0LCBzaG9ydCAqb3V0cHV0LCBpbnQgcGl0Y2gpCi1nbG9i
YWwgc3ltKHZwOF9zaG9ydF9mZGN0OHg0X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfc2hv
cnRfZmRjdDh4NF9zc2UyKQogc3ltKHZwOF9zaG9ydF9mZGN0OHg0X3NzZTIpOgogCiAgICAgU1RB
Q0tfRlJBTUVfQ1JFQVRFCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9m
d2Fsc2hfc3NlMi5hc20gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9md2Fsc2hfc3NlMi5h
c20KaW5kZXggYjVkNWRlNGE1OWE5YTUxMDc1ZTg0YWZmNzVhNjRkYWZiMDM5Y2ZlZi4uOTM4ZmMx
NzNmZmVjMTA0NGRiN2QwODcyZmI4YjAwMjZjOTkyNmUyNiAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci94ODYvZndhbHNoX3NzZTIuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIveDg2L2Z3YWxzaF9zc2UyLmFzbQpAQCAtMTQsNyArMTQsNyBAQAogU0VDVElPTiAudGV4
dAogCiA7dm9pZCB2cDhfc2hvcnRfd2Fsc2g0eDRfc3NlMihzaG9ydCAqaW5wdXQsIHNob3J0ICpv
dXRwdXQsIGludCBwaXRjaCkKLWdsb2JhbCBzeW0odnA4X3Nob3J0X3dhbHNoNHg0X3NzZTIpIFBS
SVZBVEUKK2dsb2JhbHN5bSh2cDhfc2hvcnRfd2Fsc2g0eDRfc3NlMikKIHN5bSh2cDhfc2hvcnRf
d2Fsc2g0eDRfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJw
LCByc3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2L3RlbXBvcmFsX2Zp
bHRlcl9hcHBseV9zc2UyLmFzbSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2L3RlbXBvcmFs
X2ZpbHRlcl9hcHBseV9zc2UyLmFzbQppbmRleCBkMmI0NzExYjg3OTM0MmFiNWI2N2ExNDYyYjMw
OWU0YzJiOGQwYjlmLi42NzEwMjA2NGExM2NlMWUzZDk2OTI0ZGFkOGU3NGM2Y2I1ODJiYjE5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni90ZW1wb3JhbF9maWx0ZXJfYXBw
bHlfc3NlMi5hc20KKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci94ODYvdGVtcG9yYWxfZmls
dGVyX2FwcGx5X3NzZTIuYXNtCkBAIC0yMiw3ICsyMiw3IEBAIFNFQ1RJT04gLnRleHQKIDsgICBp
bnQgICAgICAgICAgICAgZmlsdGVyX3dlaWdodCwgICAgfCAgNQogOyAgIHVuc2lnbmVkIGludCAg
ICphY2N1bXVsYXRvciwgICAgICB8ICA2CiA7ICAgdW5zaWduZWQgc2hvcnQgKmNvdW50KSAgICAg
ICAgICAgIHwgIDcKLWdsb2JhbCBzeW0odnA4X3RlbXBvcmFsX2ZpbHRlcl9hcHBseV9zc2UyKSBQ
UklWQVRFCitnbG9iYWxzeW0odnA4X3RlbXBvcmFsX2ZpbHRlcl9hcHBseV9zc2UyKQogc3ltKHZw
OF90ZW1wb3JhbF9maWx0ZXJfYXBwbHlfc3NlMik6CiAKICAgICBwdXNoICAgICAgICByYnAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3ZwOF9jeF9pZmFjZS5jIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
dnA4X2N4X2lmYWNlLmMKaW5kZXggOGY3NjE3YWJmOWMwMzMyMjNjYjcxOWQ4MTNlMDkzODIxYzNm
ZDFjNy4uMTE2MGY1MWQ2NGE4MzBhNmZhNWE1NmNkYjA2ZThiM2RmYTRlMDE0ZiAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvdnA4X2N4X2lmYWNlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvdnA4
X2N4X2lmYWNlLmMKQEAgLTI2NCw5ICsyNjQsMTIgQEAgc3RhdGljIHZweF9jb2RlY19lcnJfdCB2
YWxpZGF0ZV9pbWcodnB4X2NvZGVjX2FsZ19wcml2X3QgKmN0eCwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IHZweF9pbWFnZV90ICppbWcpIHsKICAgc3dpdGNoIChp
bWctPmZtdCkgewogICAgIGNhc2UgVlBYX0lNR19GTVRfWVYxMjoKLSAgICBjYXNlIFZQWF9JTUdf
Rk1UX0k0MjA6IGJyZWFrOworICAgIGNhc2UgVlBYX0lNR19GTVRfSTQyMDoKKyAgICBjYXNlIFZQ
WF9JTUdfRk1UX05WMTI6IGJyZWFrOwogICAgIGRlZmF1bHQ6Ci0gICAgICBFUlJPUigiSW52YWxp
ZCBpbWFnZSBmb3JtYXQuIE9ubHkgWVYxMiBhbmQgSTQyMCBpbWFnZXMgYXJlIHN1cHBvcnRlZCIp
OworICAgICAgRVJST1IoCisgICAgICAgICAgIkludmFsaWQgaW1hZ2UgZm9ybWF0LiBPbmx5IFlW
MTIsIEk0MjAgYW5kIE5WMTIgaW1hZ2VzIGFyZSAiCisgICAgICAgICAgInN1cHBvcnRlZCIpOwog
ICB9CiAKICAgaWYgKChpbWctPmRfdyAhPSBjdHgtPmNmZy5nX3cpIHx8IChpbWctPmRfaCAhPSBj
dHgtPmNmZy5nX2gpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvdnA4X2R4X2lmYWNlLmMg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC92cDhfZHhfaWZhY2UuYwppbmRleCA0MzE1NmEwNzhiNmVmNDA4NjIz
NTRiNzI5NThiY2MyNDNkYjgzMDFhLi5iYTA3MTRhYmU1YzFlOTYzNGM4ZjIwNGUwMWQ1YWUwMDk3
OTdjNTNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC92cDhfZHhfaWZhY2UuYworKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC92cDhfZHhfaWZhY2UuYwpAQCAtNjg3LDcgKzY4Nyw3IEBAIHN0YXRpYyB2
cHhfY29kZWNfZXJyX3QgdnA4X3NldF9kZWNyeXB0b3IodnB4X2NvZGVjX2FsZ19wcml2X3QgKmN0
eCwKICAgcmV0dXJuIFZQWF9DT0RFQ19PSzsKIH0KIAotdnB4X2NvZGVjX2N0cmxfZm5fbWFwX3Qg
dnA4X2N0Zl9tYXBzW10gPSB7CitzdGF0aWMgdnB4X2NvZGVjX2N0cmxfZm5fbWFwX3QgdnA4X2N0
Zl9tYXBzW10gPSB7CiAgIHsgVlA4X1NFVF9SRUZFUkVOQ0UsIHZwOF9zZXRfcmVmZXJlbmNlIH0s
CiAgIHsgVlA4X0NPUFlfUkVGRVJFTkNFLCB2cDhfZ2V0X3JlZmVyZW5jZSB9LAogICB7IFZQOF9T
RVRfUE9TVFBST0MsIHZwOF9zZXRfcG9zdHByb2MgfSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfYmxvY2tkLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Jsb2Nr
ZC5oCmluZGV4IDZlZjgxMjdhNTkyOWZkODY2ODIyZjZiNjY1NmExZWNmZDMxNDZhOTkuLmQ3ZGU0
NmNmNGYyYTg3NWFiNTkyMmNiM2I0ZmZjMzUyNzE1ZTc3ZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfYmxvY2tkLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9ibG9ja2QuaApAQCAtNjQsNiArNjQsMTIgQEAgdHlwZWRlZiBzdHJ1Y3QgewogCiB0eXBlZGVm
IGludDhfdCBNVl9SRUZFUkVOQ0VfRlJBTUU7CiAKK3N0YXRpYyBJTkxJTkUgaW50IG12X3JlZl9m
cmFtZV90b19pbnRlcl9yZWZfaWR4KAorICAgIE1WX1JFRkVSRU5DRV9GUkFNRSBtdl9yZWZfZnJh
bWUpIHsKKyAgYXNzZXJ0KG12X3JlZl9mcmFtZSA+PSBMQVNUX0ZSQU1FICYmIG12X3JlZl9mcmFt
ZSA8IE1BWF9SRUZfRlJBTUVTKTsKKyAgcmV0dXJuIG12X3JlZl9mcmFtZSAtIDE7Cit9CisKIC8v
IFRoaXMgc3RydWN0dXJlIG5vdyByZWxhdGVzIHRvIDh4OCBibG9jayByZWdpb25zLgogdHlwZWRl
ZiBzdHJ1Y3QgTU9ERV9JTkZPIHsKICAgLy8gQ29tbW9uIGZvciBib3RoIElOVEVSIGFuZCBJTlRS
QSBibG9ja3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfb255eGNfaW50
LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X29ueXhjX2ludC5oCmluZGV4IGYzOTQyYThm
MDcwZjY1MTFlYzE5MjQ3MjU0OTk2YjZiYTBkNjI3ZjMuLjFjZmMxMmY2ZmExMTUzZWUyMTI5YzE4
MTEyNWMzYmVkOGE3OTIyNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
b255eGNfaW50LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9vbnl4Y19pbnQuaApA
QCAtNjksNyArNjksMTYgQEAgdHlwZWRlZiBzdHJ1Y3QgewogICBpbnQgbWlfcm93czsKICAgaW50
IG1pX2NvbHM7CiAgIHVpbnQ4X3QgcmVsZWFzZWQ7Ci0gIGludCBmcmFtZV9pbmRleDsKKworICAv
LyBOb3RlIHRoYXQgZnJhbWVfaW5kZXgvZnJhbWVfY29kaW5nX2luZGV4IGFyZSBvbmx5IHNldCBi
eSBzZXRfZnJhbWVfaW5kZXgoKQorICAvLyBvbiB0aGUgZW5jb2RlciBzaWRlLgorCisgIC8vIFRP
RE8oYW5naWViaXJkKTogU2V0IGZyYW1lX2luZGV4L2ZyYW1lX2NvZGluZ19pbmRleCBvbiB0aGUg
ZGVjb2RlciBzaWRlCisgIC8vIHByb3Blcmx5LgorICBpbnQgZnJhbWVfaW5kZXg7ICAgICAgICAg
Ly8gRGlzcGxheSBvcmRlciBpbiB0aGUgdmlkZW8sIGl0J3MgZXF1aXZhbGVudCB0byB0aGUKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHNob3dfaWR4IGRlZmluZWQgaW4gRW5jb2RlRnJh
bWVJbmZvLgorICBpbnQgZnJhbWVfY29kaW5nX2luZGV4OyAgLy8gVGhlIGNvZGluZyBvcmRlciAo
c3RhcnRpbmcgZnJvbSB6ZXJvKSBvZiB0aGlzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAv
LyBmcmFtZS4KICAgdnB4X2NvZGVjX2ZyYW1lX2J1ZmZlcl90IHJhd19mcmFtZV9idWZmZXI7CiAg
IFlWMTJfQlVGRkVSX0NPTkZJRyBidWY7CiB9IFJlZkNudEJ1ZmZlcjsKQEAgLTIyNiw3ICsyMzUs
MTQgQEAgdHlwZWRlZiBzdHJ1Y3QgVlA5Q29tbW9uIHsKICAgdW5zaWduZWQgaW50IGZyYW1lX2Nv
bnRleHRfaWR4OyAvKiBDb250ZXh0IHRvIHVzZS91cGRhdGUgKi8KICAgRlJBTUVfQ09VTlRTIGNv
dW50czsKIAorICAvLyBUT0RPKGFuZ2llYmlyZCk6IGN1cnJlbnRfdmlkZW9fZnJhbWUvY3VycmVu
dF9mcmFtZV9jb2RpbmdfaW5kZXggaW50byBhCisgIC8vIHN0cnVjdHVyZQogICB1bnNpZ25lZCBp
bnQgY3VycmVudF92aWRlb19mcmFtZTsKKyAgLy8gRWFjaCBzaG93IG9yIG5vIHNob3cgZnJhbWUg
aXMgYXNzaWduZWQgd2l0aCBhIGNvZGluZyBpbmRleCBiYXNlZCBvbiBpdHMKKyAgLy8gY29kaW5n
IG9yZGVyIChzdGFydGluZyBmcm9tIHplcm8pLgorCisgIC8vIEN1cnJlbnQgZnJhbWUncyBjb2Rp
bmcgaW5kZXguCisgIGludCBjdXJyZW50X2ZyYW1lX2NvZGluZ19pbmRleDsKICAgQklUU1RSRUFN
X1BST0ZJTEUgcHJvZmlsZTsKIAogICAvLyBWUFhfQklUU184IGluIHByb2ZpbGUgMCBvciAxLCBW
UFhfQklUU18xMCBvciBWUFhfQklUU18xMiBpbiBwcm9maWxlIDIgb3IgMy4KQEAgLTI1NCw2ICsy
NzAsMjAgQEAgdHlwZWRlZiBzdHJ1Y3QgVlA5Q29tbW9uIHsKICAgaW50IGxmX3JvdzsKIH0gVlA5
X0NPTU1PTjsKIAorc3RhdGljIElOTElORSB2b2lkIGluaXRfZnJhbWVfaW5kZXhlcyhWUDlfQ09N
TU9OICpjbSkgeworICBjbS0+Y3VycmVudF92aWRlb19mcmFtZSA9IDA7CisgIGNtLT5jdXJyZW50
X2ZyYW1lX2NvZGluZ19pbmRleCA9IDA7Cit9CisKK3N0YXRpYyBJTkxJTkUgdm9pZCB1cGRhdGVf
ZnJhbWVfaW5kZXhlcyhWUDlfQ09NTU9OICpjbSwgaW50IHNob3dfZnJhbWUpIHsKKyAgaWYgKHNo
b3dfZnJhbWUpIHsKKyAgICAvLyBEb24ndCBpbmNyZW1lbnQgZnJhbWUgY291bnRlcnMgaWYgdGhp
cyB3YXMgYW4gYWx0cmVmIGJ1ZmZlcgorICAgIC8vIHVwZGF0ZSBub3QgYSByZWFsIGZyYW1lCisg
ICAgKytjbS0+Y3VycmVudF92aWRlb19mcmFtZTsKKyAgfQorICArK2NtLT5jdXJyZW50X2ZyYW1l
X2NvZGluZ19pbmRleDsKK30KKwogdHlwZWRlZiBzdHJ1Y3QgewogICBpbnQgZnJhbWVfd2lkdGg7
CiAgIGludCBmcmFtZV9oZWlnaHQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
eDg2L3ZwOV9tZnFlX3NzZTIuYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3g4Ni92cDlfbWZx
ZV9zc2UyLmFzbQppbmRleCBjYTA4OTdhYjlmZWJiMmU2OTlmZDk2OTZiYmY1NDVmNjViZjNhNGM1
Li5hZTdjOTRlYTNmZjU3ZTk4ODQ5YTI2ZjRkY2ZhYTZjMmJjNjNjZWVhIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24veDg2L3ZwOV9tZnFlX3NzZTIuYXNtCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi94ODYvdnA5X21mcWVfc3NlMi5hc20KQEAgLTIyLDcgKzIyLDcgQEAgU0VD
VElPTiAudGV4dAogOyAgICBpbnQgICAgICAgICAgICBkc3Rfc3RyaWRlLAogOyAgICBpbnQgICAg
ICAgICAgICBzcmNfd2VpZ2h0CiA7KQotZ2xvYmFsIHN5bSh2cDlfZmlsdGVyX2J5X3dlaWdodDE2
eDE2X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDlfZmlsdGVyX2J5X3dlaWdodDE2eDE2X3Nz
ZTIpCiBzeW0odnA5X2ZpbHRlcl9ieV93ZWlnaHQxNngxNl9zc2UyKToKICAgICBwdXNoICAgICAg
ICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMTAwLDcgKzEwMCw3IEBAIHN5bSh2
cDlfZmlsdGVyX2J5X3dlaWdodDE2eDE2X3NzZTIpOgogOyAgICBpbnQgICAgICAgICAgICBkc3Rf
c3RyaWRlLAogOyAgICBpbnQgICAgICAgICAgICBzcmNfd2VpZ2h0CiA7KQotZ2xvYmFsIHN5bSh2
cDlfZmlsdGVyX2J5X3dlaWdodDh4OF9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnA5X2ZpbHRl
cl9ieV93ZWlnaHQ4eDhfc3NlMikKIHN5bSh2cDlfZmlsdGVyX2J5X3dlaWdodDh4OF9zc2UyKToK
ICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMTY4LDcg
KzE2OCw3IEBAIHN5bSh2cDlfZmlsdGVyX2J5X3dlaWdodDh4OF9zc2UyKToKIDsgICAgdW5zaWdu
ZWQgaW50ICAqdmFyaWFuY2UsICAgICAgNAogOyAgICB1bnNpZ25lZCBpbnQgICpzYWQsICAgICAg
ICAgICA1CiA7KQotZ2xvYmFsIHN5bSh2cDlfdmFyaWFuY2VfYW5kX3NhZF8xNngxNl9zc2UyKSBQ
UklWQVRFCitnbG9iYWxzeW0odnA5X3ZhcmlhbmNlX2FuZF9zYWRfMTZ4MTZfc3NlMikKIHN5bSh2
cDlfdmFyaWFuY2VfYW5kX3NhZF8xNngxNl9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAg
ICBtb3YgICAgICAgICByYnAsIHJzcApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rl
ci92cDlfZGVjb2Rlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rlci5jCmlu
ZGV4IDBhZWQzZDcxN2M1NjMwZmEyMDcwNjM1ZTY5YTJmZGJiNTVlODU3YzIuLjdkYjhlZDcyZDUx
MTRlMjkyMjlmYWZmM2FhMmNmOGQzOTQ4MWMwYTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2RlY29kZXIvdnA5X2RlY29kZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9k
ZWNvZGVyLmMKQEAgLTE1Myw2ICsxNTMsMTEgQEAgc3RhdGljIGludCB2cDlfZGVjX2FsbG9jX21p
KFZQOV9DT01NT04gKmNtLCBpbnQgbWlfc2l6ZSkgewogfQogCiBzdGF0aWMgdm9pZCB2cDlfZGVj
X2ZyZWVfbWkoVlA5X0NPTU1PTiAqY20pIHsKKyNpZiBDT05GSUdfVlA5X1BPU1RQUk9DCisgIC8v
IE1GUUUgYWxsb2NhdGVzIGFuIGFkZGl0aW9uYWwgbWlwIGFuZCBzd2FwcyBpdCB3aXRoIGNtLT5t
aXAuCisgIHZweF9mcmVlKGNtLT5wb3N0cHJvY19zdGF0ZS5wcmV2X21pcCk7CisgIGNtLT5wb3N0
cHJvY19zdGF0ZS5wcmV2X21pcCA9IE5VTEw7CisjZW5kaWYKICAgdnB4X2ZyZWUoY20tPm1pcCk7
CiAgIGNtLT5taXAgPSBOVUxMOwogICB2cHhfZnJlZShjbS0+bWlfZ3JpZF9iYXNlKTsKQEAgLTE4
OCw3ICsxOTMsNyBAQCBWUDlEZWNvZGVyICp2cDlfZGVjb2Rlcl9jcmVhdGUoQnVmZmVyUG9vbCAq
Y29uc3QgcG9vbCkgewogICBtZW1zZXQoJmNtLT5yZWZfZnJhbWVfbWFwLCAtMSwgc2l6ZW9mKGNt
LT5yZWZfZnJhbWVfbWFwKSk7CiAgIG1lbXNldCgmY20tPm5leHRfcmVmX2ZyYW1lX21hcCwgLTEs
IHNpemVvZihjbS0+bmV4dF9yZWZfZnJhbWVfbWFwKSk7CiAKLSAgY20tPmN1cnJlbnRfdmlkZW9f
ZnJhbWUgPSAwOworICBpbml0X2ZyYW1lX2luZGV4ZXMoY20pOwogICBwYmktPnJlYWR5X2Zvcl9u
ZXdfZGF0YSA9IDE7CiAgIHBiaS0+Y29tbW9uLmJ1ZmZlcl9wb29sID0gcG9vbDsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfdmFyaWFuY2UuYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2FxX3ZhcmlhbmNlLmMKaW5kZXggMWY5Y2UyMzU0Y2UzMWNlOWM1
ZjkyN2U1NjU4NjM5NTc0NzQzZmZlMy4uOWU1ZjNiZmIyODA4YzllZDJlZTYyMTQwNTAwOGQ5Zjkx
M2E2YTUyNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfdmFyaWFu
Y2UuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9hcV92YXJpYW5jZS5jCkBAIC0x
ODYsNiArMTg2LDE3IEBAIGRvdWJsZSB2cDlfbG9nX2Jsb2NrX3ZhcihWUDlfQ09NUCAqY3BpLCBN
QUNST0JMT0NLICp4LCBCTE9DS19TSVpFIGJzKSB7CiAgIHJldHVybiBsb2codmFyICsgMS4wKTsK
IH0KIAorI2RlZmluZSBERUZBVUxUX0VfTUlEUE9JTlQgMTAuMAorc3RhdGljIGludCBzY2FsZV9i
bG9ja19lbmVyZ3koVlA5X0NPTVAgKmNwaSwgdW5zaWduZWQgaW50IGJsb2NrX3ZhcikgeworICBk
b3VibGUgZW5lcmd5OworICBkb3VibGUgZW5lcmd5X21pZHBvaW50OworICBlbmVyZ3lfbWlkcG9p
bnQgPQorICAgICAgKGNwaS0+b3hjZi5wYXNzID09IDIpID8gY3BpLT50d29wYXNzLm1iX2F2X2Vu
ZXJneSA6IERFRkFVTFRfRV9NSURQT0lOVDsKKyAgZW5lcmd5ID0gbG9nKGJsb2NrX3ZhciArIDEu
MCkgLSBlbmVyZ3lfbWlkcG9pbnQ7CisgIHJldHVybiBjbGFtcCgoaW50KXJvdW5kKGVuZXJneSks
IEVORVJHWV9NSU4sIEVORVJHWV9NQVgpOworfQorI3VuZGVmIERFRkFVTFRfRV9NSURQT0lOVAor
CiAvLyBHZXQgdGhlIHJhbmdlIG9mIHN1YiBibG9jayBlbmVyZ3kgdmFsdWVzOwogdm9pZCB2cDlf
Z2V0X3N1Yl9ibG9ja19lbmVyZ3koVlA5X0NPTVAgKmNwaSwgTUFDUk9CTE9DSyAqbWIsIGludCBt
aV9yb3csCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbWlfY29sLCBCTE9DS19T
SVpFIGJzaXplLCBpbnQgKm1pbl9lLApAQCAtMjAyLDMxICsyMTMsMzUgQEAgdm9pZCB2cDlfZ2V0
X3N1Yl9ibG9ja19lbmVyZ3koVlA5X0NPTVAgKmNwaSwgTUFDUk9CTE9DSyAqbWIsIGludCBtaV9y
b3csCiAgICAgKm1pbl9lID0gdnA5X2Jsb2NrX2VuZXJneShjcGksIG1iLCBic2l6ZSk7CiAgICAg
Km1heF9lID0gKm1pbl9lOwogICB9IGVsc2UgewotICAgIGludCBlbmVyZ3k7Ci0gICAgKm1pbl9l
ID0gRU5FUkdZX01BWDsKLSAgICAqbWF4X2UgPSBFTkVSR1lfTUlOOworICAgIHVuc2lnbmVkIGlu
dCB2YXI7CisgICAgLy8gQmVjYXVzZSBzY2FsZV9ibG9ja19lbmVyZ3kgaXMgbm9uLWRlY3JlYXNp
bmcsIHdlIGNhbiBmaW5kIHRoZSBtaW4vbWF4CisgICAgLy8gYmxvY2sgdmFyaWFuY2UgYW5kIHNj
YWxlIGFmdGVyd2FyZHMuIFRoaXMgYXZvaWRzIGEgY29zdGx5IHNjYWxpbmcgYXQKKyAgICAvLyBl
dmVyeSBpdGVyYXRpb24uCisgICAgdW5zaWduZWQgaW50IG1pbl92YXIgPSBVSU5UX01BWDsKKyAg
ICB1bnNpZ25lZCBpbnQgbWF4X3ZhciA9IDA7CiAKICAgICBmb3IgKHkgPSAwOyB5IDwgeW1pczsg
Kyt5KSB7CiAgICAgICBmb3IgKHggPSAwOyB4IDwgeG1pczsgKyt4KSB7CiAgICAgICAgIHZwOV9z
ZXR1cF9zcmNfcGxhbmVzKG1iLCBjcGktPlNvdXJjZSwgbWlfcm93ICsgeSwgbWlfY29sICsgeCk7
Ci0gICAgICAgIGVuZXJneSA9IHZwOV9ibG9ja19lbmVyZ3koY3BpLCBtYiwgQkxPQ0tfOFg4KTsK
LSAgICAgICAgKm1pbl9lID0gVlBYTUlOKCptaW5fZSwgZW5lcmd5KTsKLSAgICAgICAgKm1heF9l
ID0gVlBYTUFYKCptYXhfZSwgZW5lcmd5KTsKKyAgICAgICAgdnB4X2NsZWFyX3N5c3RlbV9zdGF0
ZSgpOworICAgICAgICB2YXIgPSBibG9ja192YXJpYW5jZShjcGksIG1iLCBCTE9DS184WDgpOwor
ICAgICAgICB2cHhfY2xlYXJfc3lzdGVtX3N0YXRlKCk7CisgICAgICAgIG1pbl92YXIgPSBWUFhN
SU4obWluX3ZhciwgdmFyKTsKKyAgICAgICAgbWF4X3ZhciA9IFZQWE1BWChtYXhfdmFyLCB2YXIp
OwogICAgICAgfQogICAgIH0KKyAgICAqbWluX2UgPSBzY2FsZV9ibG9ja19lbmVyZ3koY3BpLCBt
aW5fdmFyKTsKKyAgICAqbWF4X2UgPSBzY2FsZV9ibG9ja19lbmVyZ3koY3BpLCBtYXhfdmFyKTsK
ICAgfQogCiAgIC8vIFJlLWluc3RhdGUgc291cmNlIHBvaW50ZXJzIGJhY2sgdG8gd2hhdCB0aGV5
IHNob3VsZCBoYXZlIGJlZW4gb24gZW50cnkuCiAgIHZwOV9zZXR1cF9zcmNfcGxhbmVzKG1iLCBj
cGktPlNvdXJjZSwgbWlfcm93LCBtaV9jb2wpOwogfQogCi0jZGVmaW5lIERFRkFVTFRfRV9NSURQ
T0lOVCAxMC4wCiBpbnQgdnA5X2Jsb2NrX2VuZXJneShWUDlfQ09NUCAqY3BpLCBNQUNST0JMT0NL
ICp4LCBCTE9DS19TSVpFIGJzKSB7Ci0gIGRvdWJsZSBlbmVyZ3k7Ci0gIGRvdWJsZSBlbmVyZ3lf
bWlkcG9pbnQ7CisgIHVuc2lnbmVkIGludCB2YXI7CiAgIHZweF9jbGVhcl9zeXN0ZW1fc3RhdGUo
KTsKLSAgZW5lcmd5X21pZHBvaW50ID0KLSAgICAgIChjcGktPm94Y2YucGFzcyA9PSAyKSA/IGNw
aS0+dHdvcGFzcy5tYl9hdl9lbmVyZ3kgOiBERUZBVUxUX0VfTUlEUE9JTlQ7Ci0gIGVuZXJneSA9
IHZwOV9sb2dfYmxvY2tfdmFyKGNwaSwgeCwgYnMpIC0gZW5lcmd5X21pZHBvaW50OwotICByZXR1
cm4gY2xhbXAoKGludClyb3VuZChlbmVyZ3kpLCBFTkVSR1lfTUlOLCBFTkVSR1lfTUFYKTsKKyAg
dmFyID0gYmxvY2tfdmFyaWFuY2UoY3BpLCB4LCBicyk7CisgIHZweF9jbGVhcl9zeXN0ZW1fc3Rh
dGUoKTsKKyAgcmV0dXJuIHNjYWxlX2Jsb2NrX2VuZXJneShjcGksIHZhcik7CiB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVmcmFtZS5jIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZW5jb2RlZnJhbWUuYwppbmRleCAxM2Y5YTFmYmQyNTIyNDQ4Y2Rj
ZDljM2E3ZGU0YmU0NGU2YzdiNTExLi5kY2Q2NDc2NTgxZWYxY2M2YjFmNDYxZjI5NjBhMjA4ZGFi
ZTc0N2ExIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVmcmFt
ZS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZWZyYW1lLmMKQEAgLTM3
NjYsOSArMzc2Niw2IEBAIHN0YXRpYyBpbnQgd2llbmVyX3Zhcl9zZWdtZW50KFZQOV9DT01QICpj
cGksIEJMT0NLX1NJWkUgYnNpemUsIGludCBtaV9yb3csCiBzdGF0aWMgaW50IGdldF9yZG11bHRf
ZGVsdGEoVlA5X0NPTVAgKmNwaSwgQkxPQ0tfU0laRSBic2l6ZSwgaW50IG1pX3JvdywKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbnQgbWlfY29sLCBpbnQgb3JpZ19yZG11bHQpIHsKICAg
Y29uc3QgaW50IGdmX2dyb3VwX2luZGV4ID0gY3BpLT50d29wYXNzLmdmX2dyb3VwLmluZGV4Owot
ICBUcGxEZXBGcmFtZSAqdHBsX2ZyYW1lID0gJmNwaS0+dHBsX3N0YXRzW2dmX2dyb3VwX2luZGV4
XTsKLSAgVHBsRGVwU3RhdHMgKnRwbF9zdGF0cyA9IHRwbF9mcmFtZS0+dHBsX3N0YXRzX3B0cjsK
LSAgaW50IHRwbF9zdHJpZGUgPSB0cGxfZnJhbWUtPnN0cmlkZTsKICAgaW50NjRfdCBpbnRyYV9j
b3N0ID0gMDsKICAgaW50NjRfdCBtY19kZXBfY29zdCA9IDA7CiAgIGludCBtaV93aWRlID0gbnVt
Xzh4OF9ibG9ja3Nfd2lkZV9sb29rdXBbYnNpemVdOwpAQCAtMzc3OSwxMiArMzc3NiwxOSBAQCBz
dGF0aWMgaW50IGdldF9yZG11bHRfZGVsdGEoVlA5X0NPTVAgKmNwaSwgQkxPQ0tfU0laRSBic2l6
ZSwgaW50IG1pX3JvdywKICAgaW50IGNvdW50ID0gMDsKICAgZG91YmxlIHIwLCByaywgYmV0YTsK
IAorICBUcGxEZXBGcmFtZSAqdHBsX2ZyYW1lOworICBUcGxEZXBTdGF0cyAqdHBsX3N0YXRzOwor
ICBpbnQgdHBsX3N0cmlkZTsKKworICBpZiAoZ2ZfZ3JvdXBfaW5kZXggPj0gTUFYX0FSRl9HT1Bf
U0laRSkgcmV0dXJuIG9yaWdfcmRtdWx0OworICB0cGxfZnJhbWUgPSAmY3BpLT50cGxfc3RhdHNb
Z2ZfZ3JvdXBfaW5kZXhdOworCiAgIGlmICh0cGxfZnJhbWUtPmlzX3ZhbGlkID09IDApIHJldHVy
biBvcmlnX3JkbXVsdDsKKyAgdHBsX3N0YXRzID0gdHBsX2ZyYW1lLT50cGxfc3RhdHNfcHRyOwor
ICB0cGxfc3RyaWRlID0gdHBsX2ZyYW1lLT5zdHJpZGU7CiAKICAgaWYgKGNwaS0+dHdvcGFzcy5n
Zl9ncm91cC5sYXllcl9kZXB0aFtnZl9ncm91cF9pbmRleF0gPiAxKSByZXR1cm4gb3JpZ19yZG11
bHQ7CiAKLSAgaWYgKGdmX2dyb3VwX2luZGV4ID49IE1BWF9BUkZfR09QX1NJWkUpIHJldHVybiBv
cmlnX3JkbXVsdDsKLQogICBmb3IgKHJvdyA9IG1pX3Jvdzsgcm93IDwgbWlfcm93ICsgbWlfaGln
aDsgKytyb3cpIHsKICAgICBmb3IgKGNvbCA9IG1pX2NvbDsgY29sIDwgbWlfY29sICsgbWlfd2lk
ZTsgKytjb2wpIHsKICAgICAgIFRwbERlcFN0YXRzICp0aGlzX3N0YXRzID0gJnRwbF9zdGF0c1ty
b3cgKiB0cGxfc3RyaWRlICsgY29sXTsKQEAgLTUwODYsOCArNTA5MCw4IEBAIHN0YXRpYyB2b2lk
IG5vbnJkX3BpY2tfcGFydGl0aW9uKFZQOV9DT01QICpjcGksIFRocmVhZERhdGEgKnRkLAogCiAg
ICh2b2lkKSp0cF9vcmlnOwogCi0gIC8vIEF2b2lkIGNoZWNraW5nIGZvciByZWN0YW5ndWxhciBw
YXJ0aXRpb25zIGZvciBzcGVlZCA+PSA2LgotICBpZiAoY3BpLT5veGNmLnNwZWVkID49IDYpIGRv
X3JlY3QgPSAwOworICAvLyBBdm9pZCBjaGVja2luZyBmb3IgcmVjdGFuZ3VsYXIgcGFydGl0aW9u
cyBmb3Igc3BlZWQgPj0gNS4KKyAgaWYgKGNwaS0+b3hjZi5zcGVlZCA+PSA1KSBkb19yZWN0ID0g
MDsKIAogICBhc3NlcnQobnVtXzh4OF9ibG9ja3Nfd2lkZV9sb29rdXBbYnNpemVdID09CiAgICAg
ICAgICBudW1fOHg4X2Jsb2Nrc19oaWdoX2xvb2t1cFtic2l6ZV0pOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2Rlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfZW5jb2Rlci5jCmluZGV4IGJkNjRjZmVhYmNiYzE1YmFkMDhiY2Q4MWRjOTVjOTYxMzYw
ZGMxZjcuLjZhMjFhMWMxODMzZDM2NDhiNGY2MTE1MmExNDYwNWZlZjIyMDMxNzQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuYworKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVyLmMKQEAgLTEwMjQsNiArMTAyNCw4IEBAIHN0YXRpYyB2
b2lkIGRlYWxsb2NfY29tcHJlc3Nvcl9kYXRhKFZQOV9DT01QICpjcGkpIHsKICNpZiBDT05GSUdf
UkFURV9DVFJMCiAgIGZyZWVfcGFydGl0aW9uX2luZm8oY3BpKTsKICAgZnJlZV9tb3Rpb25fdmVj
dG9yX2luZm8oY3BpKTsKKyAgZnJlZV9mcF9tb3Rpb25fdmVjdG9yX2luZm8oY3BpKTsKKyAgZnJl
ZV90cGxfc3RhdHNfaW5mbyhjcGkpOwogI2VuZGlmCiAKICAgdnA5X2ZyZWVfcmVmX2ZyYW1lX2J1
ZmZlcnMoY20tPmJ1ZmZlcl9wb29sKTsKQEAgLTE1MjMsOCArMTUyNSwyOSBAQCBzdGF0aWMgdm9p
ZCBpbml0X2NvbmZpZyhzdHJ1Y3QgVlA5X0NPTVAgKmNwaSwgY29uc3QgVlA5RW5jb2RlckNvbmZp
ZyAqb3hjZikgewogICB2cDlfbm9pc2VfZXN0aW1hdGVfaW5pdCgmY3BpLT5ub2lzZV9lc3RpbWF0
ZSwgY20tPndpZHRoLCBjbS0+aGVpZ2h0KTsKIH0KIAotc3RhdGljIHZvaWQgc2V0X3JjX2J1ZmZl
cl9zaXplcyhSQVRFX0NPTlRST0wgKnJjLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBWUDlFbmNvZGVyQ29uZmlnICpveGNmKSB7Cit2b2lkIHZwOV9jaGVja19yZXNldF9y
Y19mbGFnKFZQOV9DT01QICpjcGkpIHsKKyAgUkFURV9DT05UUk9MICpyYyA9ICZjcGktPnJjOwor
CisgIGlmIChjcGktPmNvbW1vbi5jdXJyZW50X3ZpZGVvX2ZyYW1lID4KKyAgICAgICh1bnNpZ25l
ZCBpbnQpY3BpLT5zdmMubnVtYmVyX3NwYXRpYWxfbGF5ZXJzKSB7CisgICAgaWYgKGNwaS0+dXNl
X3N2YykgeworICAgICAgdnA5X3N2Y19jaGVja19yZXNldF9sYXllcl9yY19mbGFnKGNwaSk7Cisg
ICAgfSBlbHNlIHsKKyAgICAgIGlmIChyYy0+YXZnX2ZyYW1lX2JhbmR3aWR0aCA+ICgzICogcmMt
Pmxhc3RfYXZnX2ZyYW1lX2JhbmR3aWR0aCA+PiAxKSB8fAorICAgICAgICAgIHJjLT5hdmdfZnJh
bWVfYmFuZHdpZHRoIDwgKHJjLT5sYXN0X2F2Z19mcmFtZV9iYW5kd2lkdGggPj4gMSkpIHsKKyAg
ICAgICAgcmMtPnJjXzFfZnJhbWUgPSAwOworICAgICAgICByYy0+cmNfMl9mcmFtZSA9IDA7Cisg
ICAgICAgIHJjLT5iaXRzX29mZl90YXJnZXQgPSByYy0+b3B0aW1hbF9idWZmZXJfbGV2ZWw7Cisg
ICAgICAgIHJjLT5idWZmZXJfbGV2ZWwgPSByYy0+b3B0aW1hbF9idWZmZXJfbGV2ZWw7CisgICAg
ICB9CisgICAgfQorICB9Cit9CisKK3ZvaWQgdnA5X3NldF9yY19idWZmZXJfc2l6ZXMoVlA5X0NP
TVAgKmNwaSkgeworICBSQVRFX0NPTlRST0wgKnJjID0gJmNwaS0+cmM7CisgIGNvbnN0IFZQOUVu
Y29kZXJDb25maWcgKm94Y2YgPSAmY3BpLT5veGNmOworCiAgIGNvbnN0IGludDY0X3QgYmFuZHdp
ZHRoID0gb3hjZi0+dGFyZ2V0X2JhbmR3aWR0aDsKICAgY29uc3QgaW50NjRfdCBzdGFydGluZyA9
IG94Y2YtPnN0YXJ0aW5nX2J1ZmZlcl9sZXZlbF9tczsKICAgY29uc3QgaW50NjRfdCBvcHRpbWFs
ID0gb3hjZi0+b3B0aW1hbF9idWZmZXJfbGV2ZWxfbXM7CkBAIC0xNTM1LDYgKzE1NTgsMTEgQEAg
c3RhdGljIHZvaWQgc2V0X3JjX2J1ZmZlcl9zaXplcyhSQVRFX0NPTlRST0wgKnJjLAogICAgICAg
KG9wdGltYWwgPT0gMCkgPyBiYW5kd2lkdGggLyA4IDogb3B0aW1hbCAqIGJhbmR3aWR0aCAvIDEw
MDA7CiAgIHJjLT5tYXhpbXVtX2J1ZmZlcl9zaXplID0KICAgICAgIChtYXhpbXVtID09IDApID8g
YmFuZHdpZHRoIC8gOCA6IG1heGltdW0gKiBiYW5kd2lkdGggLyAxMDAwOworCisgIC8vIFVuZGVy
IGEgY29uZmlndXJhdGlvbiBjaGFuZ2UsIHdoZXJlIG1heGltdW1fYnVmZmVyX3NpemUgbWF5IGNo
YW5nZSwKKyAgLy8ga2VlcCBidWZmZXIgbGV2ZWwgY2xpcHBlZCB0byB0aGUgbWF4aW11bSBhbGxv
d2VkIGJ1ZmZlciBzaXplLgorICByYy0+Yml0c19vZmZfdGFyZ2V0ID0gVlBYTUlOKHJjLT5iaXRz
X29mZl90YXJnZXQsIHJjLT5tYXhpbXVtX2J1ZmZlcl9zaXplKTsKKyAgcmMtPmJ1ZmZlcl9sZXZl
bCA9IFZQWE1JTihyYy0+YnVmZmVyX2xldmVsLCByYy0+bWF4aW11bV9idWZmZXJfc2l6ZSk7CiB9
CiAKICNpZiBDT05GSUdfVlA5X0hJR0hCSVRERVBUSApAQCAtMTk5MSwxMiArMjAxOSw3IEBAIHZv
aWQgdnA5X2NoYW5nZV9jb25maWcoc3RydWN0IFZQOV9DT01QICpjcGksIGNvbnN0IFZQOUVuY29k
ZXJDb25maWcgKm94Y2YpIHsKICAgfQogICBjcGktPmVuY29kZV9icmVha291dCA9IGNwaS0+b3hj
Zi5lbmNvZGVfYnJlYWtvdXQ7CiAKLSAgc2V0X3JjX2J1ZmZlcl9zaXplcyhyYywgJmNwaS0+b3hj
Zik7Ci0KLSAgLy8gVW5kZXIgYSBjb25maWd1cmF0aW9uIGNoYW5nZSwgd2hlcmUgbWF4aW11bV9i
dWZmZXJfc2l6ZSBtYXkgY2hhbmdlLAotICAvLyBrZWVwIGJ1ZmZlciBsZXZlbCBjbGlwcGVkIHRv
IHRoZSBtYXhpbXVtIGFsbG93ZWQgYnVmZmVyIHNpemUuCi0gIHJjLT5iaXRzX29mZl90YXJnZXQg
PSBWUFhNSU4ocmMtPmJpdHNfb2ZmX3RhcmdldCwgcmMtPm1heGltdW1fYnVmZmVyX3NpemUpOwot
ICByYy0+YnVmZmVyX2xldmVsID0gVlBYTUlOKHJjLT5idWZmZXJfbGV2ZWwsIHJjLT5tYXhpbXVt
X2J1ZmZlcl9zaXplKTsKKyAgdnA5X3NldF9yY19idWZmZXJfc2l6ZXMoY3BpKTsKIAogICAvLyBT
ZXQgdXAgZnJhbWUgcmF0ZSBhbmQgcmVsYXRlZCBwYXJhbWV0ZXJzIHJhdGUgY29udHJvbCB2YWx1
ZXMuCiAgIHZwOV9uZXdfZnJhbWVyYXRlKGNwaSwgY3BpLT5mcmFtZXJhdGUpOwpAQCAtMjA1Nywy
MyArMjA4MCw3IEBAIHZvaWQgdnA5X2NoYW5nZV9jb25maWcoc3RydWN0IFZQOV9DT01QICpjcGks
IGNvbnN0IFZQOUVuY29kZXJDb25maWcgKm94Y2YpIHsKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAoaW50KWNwaS0+b3hjZi50YXJnZXRfYmFuZHdpZHRoKTsKICAg
fQogCi0gIC8vIENoZWNrIGZvciByZXNldHRpbmcgdGhlIHJjIGZsYWdzIChyY18xX2ZyYW1lLCBy
Y18yX2ZyYW1lKSBpZiB0aGUKLSAgLy8gY29uZmlndXJhdGlvbiBjaGFuZ2UgaGFzIGEgbGFyZ2Ug
Y2hhbmdlIGluIGF2Z19mcmFtZV9iYW5kd2lkdGguCi0gIC8vIEZvciBTVkMgY2hlY2sgZm9yIHJl
c2V0dGluZyBiYXNlZCBvbiBzcGF0aWFsIGxheWVyIGF2ZXJhZ2UgYmFuZHdpZHRoLgotICAvLyBB
bHNvIHJlc2V0IGJ1ZmZlciBsZXZlbCB0byBvcHRpbWFsIGxldmVsLgotICBpZiAoY20tPmN1cnJl
bnRfdmlkZW9fZnJhbWUgPiAodW5zaWduZWQgaW50KWNwaS0+c3ZjLm51bWJlcl9zcGF0aWFsX2xh
eWVycykgewotICAgIGlmIChjcGktPnVzZV9zdmMpIHsKLSAgICAgIHZwOV9zdmNfY2hlY2tfcmVz
ZXRfbGF5ZXJfcmNfZmxhZyhjcGkpOwotICAgIH0gZWxzZSB7Ci0gICAgICBpZiAocmMtPmF2Z19m
cmFtZV9iYW5kd2lkdGggPiAoMyAqIHJjLT5sYXN0X2F2Z19mcmFtZV9iYW5kd2lkdGggPj4gMSkg
fHwKLSAgICAgICAgICByYy0+YXZnX2ZyYW1lX2JhbmR3aWR0aCA8IChyYy0+bGFzdF9hdmdfZnJh
bWVfYmFuZHdpZHRoID4+IDEpKSB7Ci0gICAgICAgIHJjLT5yY18xX2ZyYW1lID0gMDsKLSAgICAg
ICAgcmMtPnJjXzJfZnJhbWUgPSAwOwotICAgICAgICByYy0+Yml0c19vZmZfdGFyZ2V0ID0gcmMt
Pm9wdGltYWxfYnVmZmVyX2xldmVsOwotICAgICAgICByYy0+YnVmZmVyX2xldmVsID0gcmMtPm9w
dGltYWxfYnVmZmVyX2xldmVsOwotICAgICAgfQotICAgIH0KLSAgfQorICB2cDlfY2hlY2tfcmVz
ZXRfcmNfZmxhZyhjcGkpOwogCiAgIGNwaS0+YWx0X3JlZl9zb3VyY2UgPSBOVUxMOwogICByYy0+
aXNfc3JjX2ZyYW1lX2FsdF9yZWYgPSAwOwpAQCAtMjMxMSw3ICsyMzE4LDcgQEAgVlA5X0NPTVAg
KnZwOV9jcmVhdGVfY29tcHJlc3Nvcihjb25zdCBWUDlFbmNvZGVyQ29uZmlnICpveGNmLAogCiAg
IHZwOV9yY19pbml0KCZjcGktPm94Y2YsIG94Y2YtPnBhc3MsICZjcGktPnJjKTsKIAotICBjbS0+
Y3VycmVudF92aWRlb19mcmFtZSA9IDA7CisgIGluaXRfZnJhbWVfaW5kZXhlcyhjbSk7CiAgIGNw
aS0+cGFydGl0aW9uX3NlYXJjaF9za2lwcGFibGVfZnJhbWUgPSAwOwogICBjcGktPnRpbGVfZGF0
YSA9IE5VTEw7CiAKQEAgLTI0NTcsNiArMjQ2NCwxMyBAQCBWUDlfQ09NUCAqdnA5X2NyZWF0ZV9j
b21wcmVzc29yKGNvbnN0IFZQOUVuY29kZXJDb25maWcgKm94Y2YsCiAKICAgY3BpLT5hbGxvd19l
bmNvZGVfYnJlYWtvdXQgPSBFTkNPREVfQlJFQUtPVVRfRU5BQkxFRDsKIAorICB7CisgICAgdnB4
X2NvZGVjX2Vycl90IGNvZGVjX3N0YXR1cyA9IHZwOV9leHRyY19pbml0KCZjcGktPmV4dF9yYXRl
Y3RybCk7CisgICAgaWYgKGNvZGVjX3N0YXR1cyAhPSBWUFhfQ09ERUNfT0spIHsKKyAgICAgIHZw
eF9pbnRlcm5hbF9lcnJvcigmY20tPmVycm9yLCBjb2RlY19zdGF0dXMsICJ2cDlfZXh0cmNfaW5p
dCgpIGZhaWxlZCIpOworICAgIH0KKyAgfQorCiAjaWYgIUNPTkZJR19SRUFMVElNRV9PTkxZCiAg
IGlmIChveGNmLT5wYXNzID09IDEpIHsKICAgICB2cDlfaW5pdF9maXJzdF9wYXNzKGNwaSk7CkBA
IC0yNjU2LDYgKzI2NzAsOCBAQCBWUDlfQ09NUCAqdnA5X2NyZWF0ZV9jb21wcmVzc29yKGNvbnN0
IFZQOUVuY29kZXJDb25maWcgKm94Y2YsCiAgIGVuY29kZV9jb21tYW5kX2luaXQoJmNwaS0+ZW5j
b2RlX2NvbW1hbmQpOwogICBwYXJ0aXRpb25faW5mb19pbml0KGNwaSk7CiAgIG1vdGlvbl92ZWN0
b3JfaW5mb19pbml0KGNwaSk7CisgIGZwX21vdGlvbl92ZWN0b3JfaW5mb19pbml0KGNwaSk7Cisg
IHRwbF9zdGF0c19pbmZvX2luaXQoY3BpKTsKICNlbmRpZgogCiAgIHJldHVybiBjcGk7CkBAIC0y
ODI3LDYgKzI4NDMsOCBAQCB2b2lkIHZwOV9yZW1vdmVfY29tcHJlc3NvcihWUDlfQ09NUCAqY3Bp
KSB7CiAgIH0KICNlbmRpZgogCisgIHZwOV9leHRyY19kZWxldGUoJmNwaS0+ZXh0X3JhdGVjdHJs
KTsKKwogICB2cDlfcmVtb3ZlX2NvbW1vbihjbSk7CiAgIHZwOV9mcmVlX3JlZl9mcmFtZV9idWZm
ZXJzKGNtLT5idWZmZXJfcG9vbCk7CiAjaWYgQ09ORklHX1ZQOV9QT1NUUFJPQwpAQCAtMzMwOSw2
ICszMzI3LDEzIEBAIHN0YXRpYyB2b2lkIGxvb3BmaWx0ZXJfZnJhbWUoVlA5X0NPTVAgKmNwaSwg
VlA5X0NPTU1PTiAqY20pIHsKICAgICByZXR1cm47CiAgIH0KIAorICBpZiAoY3BpLT5sb29wZmls
dGVyX2N0cmwgPT0gTk9fTE9PUEZJTFRFUiB8fAorICAgICAgKCFpc19yZWZlcmVuY2VfZnJhbWUg
JiYgY3BpLT5sb29wZmlsdGVyX2N0cmwgPT0gTE9PUEZJTFRFUl9SRUZFUkVOQ0UpKSB7CisgICAg
bGYtPmZpbHRlcl9sZXZlbCA9IDA7CisgICAgdnB4X2V4dGVuZF9mcmFtZV9pbm5lcl9ib3JkZXJz
KGNtLT5mcmFtZV90b19zaG93KTsKKyAgICByZXR1cm47CisgIH0KKwogICBpZiAoeGQtPmxvc3Ns
ZXNzKSB7CiAgICAgbGYtPmZpbHRlcl9sZXZlbCA9IDA7CiAgICAgbGYtPmxhc3RfZmlsdF9sZXZl
bCA9IDA7CkBAIC0zNzQyLDE1ICszNzY3LDE5IEBAIHN0YXRpYyB2b2lkIHNldF9mcmFtZV9zaXpl
KFZQOV9DT01QICpjcGkpIHsKICAgfQogI2VuZGlmICAvLyAhQ09ORklHX1JFQUxUSU1FX09OTFkK
IAotICBpZiAob3hjZi0+cGFzcyA9PSAwICYmIG94Y2YtPnJjX21vZGUgPT0gVlBYX0NCUiAmJiAh
Y3BpLT51c2Vfc3ZjICYmCisgIGlmIChveGNmLT5wYXNzID09IDAgJiYgb3hjZi0+cmNfbW9kZSA9
PSBWUFhfQ0JSICYmCiAgICAgICBveGNmLT5yZXNpemVfbW9kZSA9PSBSRVNJWkVfRFlOQU1JQyAm
JiBjcGktPnJlc2l6ZV9wZW5kaW5nICE9IDApIHsKLSAgICBveGNmLT5zY2FsZWRfZnJhbWVfd2lk
dGggPQotICAgICAgICAob3hjZi0+d2lkdGggKiBjcGktPnJlc2l6ZV9zY2FsZV9udW0pIC8gY3Bp
LT5yZXNpemVfc2NhbGVfZGVuOwotICAgIG94Y2YtPnNjYWxlZF9mcmFtZV9oZWlnaHQgPQotICAg
ICAgICAob3hjZi0+aGVpZ2h0ICogY3BpLT5yZXNpemVfc2NhbGVfbnVtKSAvIGNwaS0+cmVzaXpl
X3NjYWxlX2RlbjsKLSAgICAvLyBUaGVyZSBoYXMgYmVlbiBhIGNoYW5nZSBpbiBmcmFtZSBzaXpl
LgotICAgIHZwOV9zZXRfc2l6ZV9saXRlcmFsKGNwaSwgb3hjZi0+c2NhbGVkX2ZyYW1lX3dpZHRo
LAotICAgICAgICAgICAgICAgICAgICAgICAgIG94Y2YtPnNjYWxlZF9mcmFtZV9oZWlnaHQpOwor
ICAgIC8vIEZvciBTVkMgc2NhbGVkIHdpZHRoL2hlaWdodCB3aWxsIGhhdmUgYmVlbiBzZXQgKHN2
Yy0+cmVzaXplX3NldD0xKQorICAgIC8vIGluIGdldF9zdmNfcGFyYW1zIGJhc2VkIG9uIHRoZSBs
YXllciB3aWR0aC9oZWlnaHQuCisgICAgaWYgKCFjcGktPnVzZV9zdmMgfHwgIWNwaS0+c3ZjLnJl
c2l6ZV9zZXQpIHsKKyAgICAgIG94Y2YtPnNjYWxlZF9mcmFtZV93aWR0aCA9CisgICAgICAgICAg
KG94Y2YtPndpZHRoICogY3BpLT5yZXNpemVfc2NhbGVfbnVtKSAvIGNwaS0+cmVzaXplX3NjYWxl
X2RlbjsKKyAgICAgIG94Y2YtPnNjYWxlZF9mcmFtZV9oZWlnaHQgPQorICAgICAgICAgIChveGNm
LT5oZWlnaHQgKiBjcGktPnJlc2l6ZV9zY2FsZV9udW0pIC8gY3BpLT5yZXNpemVfc2NhbGVfZGVu
OworICAgICAgLy8gVGhlcmUgaGFzIGJlZW4gYSBjaGFuZ2UgaW4gZnJhbWUgc2l6ZS4KKyAgICAg
IHZwOV9zZXRfc2l6ZV9saXRlcmFsKGNwaSwgb3hjZi0+c2NhbGVkX2ZyYW1lX3dpZHRoLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgb3hjZi0+c2NhbGVkX2ZyYW1lX2hlaWdodCk7CisgICAg
fQogCiAgICAgLy8gVE9ETyhhZ3JhbmdlKSBTY2FsZSBjcGktPm1heF9tdl9tYWduaXR1ZGUgaWYg
ZnJhbWUtc2l6ZSBoYXMgY2hhbmdlZC4KICAgICBzZXRfbXZfc2VhcmNoX3BhcmFtcyhjcGkpOwpA
QCAtNDAzNSw4ICs0MDY0LDExIEBAIHN0YXRpYyBpbnQgZW5jb2RlX3dpdGhvdXRfcmVjb2RlX2xv
b3AoVlA5X0NPTVAgKmNwaSwgc2l6ZV90ICpzaXplLAogICAvLyBGb3IgMSBwYXNzIENCUiBTVkMs
IG9ubHkgWkVST01WIGlzIGFsbG93ZWQgZm9yIHNwYXRpYWwgcmVmZXJlbmNlIGZyYW1lCiAgIC8v
IHdoZW4gc3ZjLT5mb3JjZV96ZXJvX21vZGVfc3BhdGlhbF9yZWYgPSAxLiBVbmRlciB0aG9zZSBj
b25kaXRpb25zIHdlIGNhbgogICAvLyBhdm9pZCB0aGlzIGZyYW1lLWxldmVsIHVwc2FtcGxpbmcg
KGZvciBub24gaW50cmFfb25seSBmcmFtZXMpLgorICAvLyBGb3IgU1ZDIHNpbmdsZV9sYXllciBt
b2RlLCBkeW5hbWljIHJlc2l6ZSBpcyBhbGxvd2VkIGFuZCB3ZSBuZWVkIHRvCisgIC8vIHNjYWxl
IHJlZmVyZW5jZXMgZm9yIHRoaXMgY2FzZS4KICAgaWYgKGZyYW1lX2lzX2ludHJhX29ubHkoY20p
ID09IDAgJiYKLSAgICAgICEoaXNfb25lX3Bhc3NfY2JyX3N2YyhjcGkpICYmIHN2Yy0+Zm9yY2Vf
emVyb19tb2RlX3NwYXRpYWxfcmVmKSkgeworICAgICAgKChzdmMtPnNpbmdsZV9sYXllcl9zdmMg
JiYgY3BpLT5veGNmLnJlc2l6ZV9tb2RlID09IFJFU0laRV9EWU5BTUlDKSB8fAorICAgICAgICEo
aXNfb25lX3Bhc3NfY2JyX3N2YyhjcGkpICYmIHN2Yy0+Zm9yY2VfemVyb19tb2RlX3NwYXRpYWxf
cmVmKSkpIHsKICAgICB2cDlfc2NhbGVfcmVmZXJlbmNlcyhjcGkpOwogICB9CiAKQEAgLTQxODEs
NiArNDIxMywyNyBAQCBzdGF0aWMgaW50IGVuY29kZV93aXRob3V0X3JlY29kZV9sb29wKFZQOV9D
T01QICpjcGksIHNpemVfdCAqc2l6ZSwKICAgcmV0dXJuIDE7CiB9CiAKK3N0YXRpYyBpbnQgZ2V0
X3JlZl9mcmFtZV9mbGFncyhjb25zdCBWUDlfQ09NUCAqY3BpKSB7CisgIGNvbnN0IGludCAqY29u
c3QgbWFwID0gY3BpLT5jb21tb24ucmVmX2ZyYW1lX21hcDsKKyAgY29uc3QgaW50IGdvbGRfaXNf
bGFzdCA9IG1hcFtjcGktPmdsZF9mYl9pZHhdID09IG1hcFtjcGktPmxzdF9mYl9pZHhdOworICBj
b25zdCBpbnQgYWx0X2lzX2xhc3QgPSBtYXBbY3BpLT5hbHRfZmJfaWR4XSA9PSBtYXBbY3BpLT5s
c3RfZmJfaWR4XTsKKyAgY29uc3QgaW50IGdvbGRfaXNfYWx0ID0gbWFwW2NwaS0+Z2xkX2ZiX2lk
eF0gPT0gbWFwW2NwaS0+YWx0X2ZiX2lkeF07CisgIGludCBmbGFncyA9IFZQOV9BTFRfRkxBRyB8
IFZQOV9HT0xEX0ZMQUcgfCBWUDlfTEFTVF9GTEFHOworCisgIGlmIChnb2xkX2lzX2xhc3QpIGZs
YWdzICY9IH5WUDlfR09MRF9GTEFHOworCisgIGlmIChjcGktPnJjLmZyYW1lc190aWxsX2dmX3Vw
ZGF0ZV9kdWUgPT0gSU5UX01BWCAmJgorICAgICAgKGNwaS0+c3ZjLm51bWJlcl90ZW1wb3JhbF9s
YXllcnMgPT0gMSAmJgorICAgICAgIGNwaS0+c3ZjLm51bWJlcl9zcGF0aWFsX2xheWVycyA9PSAx
KSkKKyAgICBmbGFncyAmPSB+VlA5X0dPTERfRkxBRzsKKworICBpZiAoYWx0X2lzX2xhc3QpIGZs
YWdzICY9IH5WUDlfQUxUX0ZMQUc7CisKKyAgaWYgKGdvbGRfaXNfYWx0KSBmbGFncyAmPSB+VlA5
X0FMVF9GTEFHOworCisgIHJldHVybiBmbGFnczsKK30KKwogI2lmICFDT05GSUdfUkVBTFRJTUVf
T05MWQogI2RlZmluZSBNQVhfUVNURVBfQURKIDQKIHN0YXRpYyBpbnQgZ2V0X3FzdGVwX2Fkaihp
bnQgcmF0ZV9leGNlc3MsIGludCByYXRlX2xpbWl0KSB7CkBAIC00MTg5LDggKzQyNDIsMTQ5IEBA
IHN0YXRpYyBpbnQgZ2V0X3FzdGVwX2FkaihpbnQgcmF0ZV9leGNlc3MsIGludCByYXRlX2xpbWl0
KSB7CiAgIHJldHVybiBWUFhNSU4ocXN0ZXAsIE1BWF9RU1RFUF9BREopOwogfQogCi1zdGF0aWMg
dm9pZCBlbmNvZGVfd2l0aF9yZWNvZGVfbG9vcChWUDlfQ09NUCAqY3BpLCBzaXplX3QgKnNpemUs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50OF90ICpkZXN0KSB7Cisj
aWYgQ09ORklHX1JBVEVfQ1RSTAorc3RhdGljIHZvaWQgaW5pdF9ycV9oaXN0b3J5KFJBVEVfUUlO
REVYX0hJU1RPUlkgKnJxX2hpc3RvcnkpIHsKKyAgcnFfaGlzdG9yeS0+cmVjb2RlX2NvdW50ID0g
MDsKKyAgcnFfaGlzdG9yeS0+cV9pbmRleF9oaWdoID0gMjU1OworICBycV9oaXN0b3J5LT5xX2lu
ZGV4X2xvdyA9IDA7Cit9CisKK3N0YXRpYyB2b2lkIHVwZGF0ZV9ycV9oaXN0b3J5KFJBVEVfUUlO
REVYX0hJU1RPUlkgKnJxX2hpc3RvcnksIGludCB0YXJnZXRfYml0cywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGludCBhY3R1YWxfYml0cywgaW50IHFfaW5kZXgpIHsKKyAgcnFfaGlz
dG9yeS0+cV9pbmRleF9oaXN0b3J5W3JxX2hpc3RvcnktPnJlY29kZV9jb3VudF0gPSBxX2luZGV4
OworICBycV9oaXN0b3J5LT5yYXRlX2hpc3RvcnlbcnFfaGlzdG9yeS0+cmVjb2RlX2NvdW50XSA9
IGFjdHVhbF9iaXRzOworICBpZiAoYWN0dWFsX2JpdHMgPD0gdGFyZ2V0X2JpdHMpIHsKKyAgICBy
cV9oaXN0b3J5LT5xX2luZGV4X2hpZ2ggPSBxX2luZGV4OworICB9CisgIGlmIChhY3R1YWxfYml0
cyA+PSB0YXJnZXRfYml0cykgeworICAgIHJxX2hpc3RvcnktPnFfaW5kZXhfbG93ID0gcV9pbmRl
eDsKKyAgfQorICBycV9oaXN0b3J5LT5yZWNvZGVfY291bnQgKz0gMTsKK30KKworc3RhdGljIGlu
dCBndWVzc19xX2luZGV4X2Zyb21fbW9kZWwoY29uc3QgUkFURV9RU1RFUF9NT0RFTCAqcnFfbW9k
ZWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgdGFyZ2V0X2JpdHMp
IHsKKyAgLy8gVGhlIG1vZGVsIHByZWRpY3RzIGJpdHMgYXMgZm9sbG93cy4KKyAgLy8gdGFyZ2V0
X2JpdHMgPSBiaWFzIC0gcmF0aW8gKiBsb2cyKHFfc3RlcCkKKyAgLy8gR2l2ZW4gdGhlIHRhcmdl
dF9iaXRzLCB3ZSBjb21wdXRlIHRoZSBxX3N0ZXAgYXMgZm9sbG93cy4KKyAgZG91YmxlIHFfc3Rl
cDsKKyAgYXNzZXJ0KHJxX21vZGVsLT5yYXRpbyA+IDApOworICBxX3N0ZXAgPSBwb3coMi4wLCAo
cnFfbW9kZWwtPmJpYXMgLSB0YXJnZXRfYml0cykgLyBycV9tb2RlbC0+cmF0aW8pOworICAvLyBU
T0RPKGFuZ2llYmlyZCk6IE1ha2UgdGhpcyBmdW5jdGlvbiBzdXBwb3J0IGhpZ2hiaXRkZXB0aC4K
KyAgcmV0dXJuIHZwOV9jb252ZXJ0X3FfdG9fcWluZGV4KHFfc3RlcCwgVlBYX0JJVFNfOCk7Cit9
CisKK3N0YXRpYyBpbnQgZ3Vlc3NfcV9pbmRleF9saW5lYXIoaW50IHByZXZfcV9pbmRleCwgaW50
IHRhcmdldF9iaXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgYWN0dWFs
X2JpdHMsIGludCBnYXApIHsKKyAgaW50IHFfaW5kZXggPSBwcmV2X3FfaW5kZXg7CisgIGlmIChh
Y3R1YWxfYml0cyA8IHRhcmdldF9iaXRzKSB7CisgICAgcV9pbmRleCAtPSBnYXA7CisgICAgcV9p
bmRleCA9IFZQWE1BWChxX2luZGV4LCAwKTsKKyAgfSBlbHNlIHsKKyAgICBxX2luZGV4ICs9IGdh
cDsKKyAgICBxX2luZGV4ID0gVlBYTUlOKHFfaW5kZXgsIDI1NSk7CisgIH0KKyAgcmV0dXJuIHFf
aW5kZXg7Cit9CisKK3N0YXRpYyBkb3VibGUgZ2V0X2JpdHNfcGVyY2VudF9kaWZmKGludCB0YXJn
ZXRfYml0cywgaW50IGFjdHVhbF9iaXRzKSB7CisgIGRvdWJsZSBkaWZmOworICB0YXJnZXRfYml0
cyA9IFZQWE1BWCh0YXJnZXRfYml0cywgMSk7CisgIGRpZmYgPSBhYnModGFyZ2V0X2JpdHMgLSBh
Y3R1YWxfYml0cykgKiAxLiAvIHRhcmdldF9iaXRzOworICByZXR1cm4gZGlmZiAqIDEwMDsKK30K
Kworc3RhdGljIGludCBycV9tb2RlbF9wcmVkaWN0X3FfaW5kZXgoY29uc3QgUkFURV9RU1RFUF9N
T0RFTCAqcnFfbW9kZWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBSQVRFX1FJTkRFWF9ISVNUT1JZICpycV9oaXN0b3J5LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW50IHRhcmdldF9iaXRzKSB7CisgIGludCBxX2luZGV4ID0gMTI4Owor
ICBpZiAocnFfaGlzdG9yeS0+cmVjb2RlX2NvdW50ID4gMCkgeworICAgIGNvbnN0IGludCBhY3R1
YWxfYml0cyA9CisgICAgICAgIHJxX2hpc3RvcnktPnJhdGVfaGlzdG9yeVtycV9oaXN0b3J5LT5y
ZWNvZGVfY291bnQgLSAxXTsKKyAgICBjb25zdCBpbnQgcHJldl9xX2luZGV4ID0KKyAgICAgICAg
cnFfaGlzdG9yeS0+cV9pbmRleF9oaXN0b3J5W3JxX2hpc3RvcnktPnJlY29kZV9jb3VudCAtIDFd
OworICAgIGNvbnN0IGRvdWJsZSBwZXJjZW50X2RpZmYgPSBnZXRfYml0c19wZXJjZW50X2RpZmYo
dGFyZ2V0X2JpdHMsIGFjdHVhbF9iaXRzKTsKKyAgICBpZiAocGVyY2VudF9kaWZmID4gNTApIHsK
KyAgICAgIC8vIEJpbmFyeSBzZWFyY2guCisgICAgICAvLyBXaGVuIHRoZSBhY3R1YWxfYml0cyBh
bmQgdGFyZ2V0X2JpdHMgYXJlIGZhciBhcGFydCwgYmluYXJ5IHNlYXJjaAorICAgICAgLy8gcV9p
bmRleCBpcyBmYXN0ZXIuCisgICAgICBxX2luZGV4ID0gKHJxX2hpc3RvcnktPnFfaW5kZXhfbG93
ICsgcnFfaGlzdG9yeS0+cV9pbmRleF9oaWdoKSAvIDI7CisgICAgfSBlbHNlIHsKKyAgICAgIGlm
IChycV9tb2RlbC0+cmVhZHkpIHsKKyAgICAgICAgcV9pbmRleCA9IGd1ZXNzX3FfaW5kZXhfZnJv
bV9tb2RlbChycV9tb2RlbCwgdGFyZ2V0X2JpdHMpOworICAgICAgfSBlbHNlIHsKKyAgICAgICAg
Ly8gVE9ETyhhbmdpZWJpcmQpOiBGaW5kIGEgYmV0dGVyIHdheSB0byBzZXQgdGhlIGdhcC4KKyAg
ICAgICAgcV9pbmRleCA9CisgICAgICAgICAgICBndWVzc19xX2luZGV4X2xpbmVhcihwcmV2X3Ff
aW5kZXgsIHRhcmdldF9iaXRzLCBhY3R1YWxfYml0cywgMjApOworICAgICAgfQorICAgIH0KKyAg
fSBlbHNlIHsKKyAgICBpZiAocnFfbW9kZWwtPnJlYWR5KSB7CisgICAgICBxX2luZGV4ID0gZ3Vl
c3NfcV9pbmRleF9mcm9tX21vZGVsKHJxX21vZGVsLCB0YXJnZXRfYml0cyk7CisgICAgfQorICB9
CisKKyAgYXNzZXJ0KHJxX2hpc3RvcnktPnFfaW5kZXhfbG93IDw9IHJxX2hpc3RvcnktPnFfaW5k
ZXhfaGlnaCk7CisgIGlmIChxX2luZGV4IDw9IHJxX2hpc3RvcnktPnFfaW5kZXhfbG93KSB7Cisg
ICAgcV9pbmRleCA9IHJxX2hpc3RvcnktPnFfaW5kZXhfbG93ICsgMTsKKyAgfQorICBpZiAocV9p
bmRleCA+PSBycV9oaXN0b3J5LT5xX2luZGV4X2hpZ2gpIHsKKyAgICBxX2luZGV4ID0gcnFfaGlz
dG9yeS0+cV9pbmRleF9oaWdoIC0gMTsKKyAgfQorICByZXR1cm4gcV9pbmRleDsKK30KKworc3Rh
dGljIHZvaWQgcnFfbW9kZWxfdXBkYXRlKGNvbnN0IFJBVEVfUUlOREVYX0hJU1RPUlkgKnJxX2hp
c3RvcnksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHRhcmdldF9iaXRzLCBSQVRF
X1FTVEVQX01PREVMICpycV9tb2RlbCkgeworICBjb25zdCBpbnQgcmVjb2RlX2NvdW50ID0gcnFf
aGlzdG9yeS0+cmVjb2RlX2NvdW50OworICBjb25zdCBkb3VibGUgZGVsdGEgPSAwLjAwMDAxOwor
ICBpZiAocmVjb2RlX2NvdW50ID49IDIpIHsKKyAgICBjb25zdCBpbnQgcV9pbmRleDEgPSBycV9o
aXN0b3J5LT5xX2luZGV4X2hpc3RvcnlbcmVjb2RlX2NvdW50IC0gMl07CisgICAgY29uc3QgaW50
IHFfaW5kZXgyID0gcnFfaGlzdG9yeS0+cV9pbmRleF9oaXN0b3J5W3JlY29kZV9jb3VudCAtIDFd
OworICAgIGNvbnN0IGludCByMSA9IHJxX2hpc3RvcnktPnJhdGVfaGlzdG9yeVtyZWNvZGVfY291
bnQgLSAyXTsKKyAgICBjb25zdCBpbnQgcjIgPSBycV9oaXN0b3J5LT5yYXRlX2hpc3RvcnlbcmVj
b2RlX2NvdW50IC0gMV07CisgICAgaW50IHZhbGlkID0gMDsKKyAgICAvLyBsb3dlciBxX2luZGV4
IHNob3VsZCB5aWVsZCBoaWdoZXIgYml0IHJhdGUKKyAgICBpZiAocV9pbmRleDEgPCBxX2luZGV4
MikgeworICAgICAgdmFsaWQgPSByMSA+IHIyOworICAgIH0gZWxzZSBpZiAocV9pbmRleDEgPiBx
X2luZGV4MikgeworICAgICAgdmFsaWQgPSByMSA8IHIyOworICAgIH0KKyAgICAvLyBPbmx5IHVw
ZGF0ZSB0aGUgbW9kZWwgd2hlbiB0aGUgcV9pbmRleCBhbmQgcmF0ZSBiZWhhdmUgbm9ybWFsbHku
CisgICAgaWYgKHZhbGlkKSB7CisgICAgICAvLyBGaXQgdGhlIHJhdGlvIGFuZCBiaWFzIG9mIHJx
X21vZGVsIGJhc2VkIG9uIGxhc3QgdHdvIHJlY29kZSBoaXN0b3JpZXMuCisgICAgICBjb25zdCBk
b3VibGUgczEgPSB2cDlfY29udmVydF9xaW5kZXhfdG9fcShxX2luZGV4MSwgVlBYX0JJVFNfOCk7
CisgICAgICBjb25zdCBkb3VibGUgczIgPSB2cDlfY29udmVydF9xaW5kZXhfdG9fcShxX2luZGV4
MiwgVlBYX0JJVFNfOCk7CisgICAgICBpZiAoZmFicyhsb2cyKHMxKSAtIGxvZzIoczIpKSA+IGRl
bHRhKSB7CisgICAgICAgIHJxX21vZGVsLT5yYXRpbyA9IChyMiAtIHIxKSAvIChsb2cyKHMxKSAt
IGxvZzIoczIpKTsKKyAgICAgICAgcnFfbW9kZWwtPmJpYXMgPSByMSArIChycV9tb2RlbC0+cmF0
aW8pICogbG9nMihzMSk7CisgICAgICAgIGlmIChycV9tb2RlbC0+cmF0aW8gPiBkZWx0YSAmJiBy
cV9tb2RlbC0+YmlhcyA+IGRlbHRhKSB7CisgICAgICAgICAgcnFfbW9kZWwtPnJlYWR5ID0gMTsK
KyAgICAgICAgfQorICAgICAgfQorICAgIH0KKyAgfSBlbHNlIGlmIChyZWNvZGVfY291bnQgPT0g
MSkgeworICAgIGlmIChycV9tb2RlbC0+cmVhZHkpIHsKKyAgICAgIC8vIFVwZGF0ZSB0aGUgcmF0
aW8gb25seSB3aGVuIHRoZSBpbml0aWFsIG1vZGVsIGV4aXN0cyBhbmQgd2Ugb25seSBoYXZlCisg
ICAgICAvLyBvbmUgcmVjb2RlIGhpc3RvcnkuCisgICAgICBjb25zdCBpbnQgcHJldl9xID0gcnFf
aGlzdG9yeS0+cV9pbmRleF9oaXN0b3J5W3JlY29kZV9jb3VudCAtIDFdOworICAgICAgY29uc3Qg
ZG91YmxlIHByZXZfcV9zdGVwID0gdnA5X2NvbnZlcnRfcWluZGV4X3RvX3EocHJldl9xLCBWUFhf
QklUU184KTsKKyAgICAgIGlmIChmYWJzKGxvZzIocHJldl9xX3N0ZXApKSA+IGRlbHRhKSB7Cisg
ICAgICAgIGNvbnN0IGludCBhY3R1YWxfYml0cyA9IHJxX2hpc3RvcnktPnJhdGVfaGlzdG9yeVty
ZWNvZGVfY291bnQgLSAxXTsKKyAgICAgICAgcnFfbW9kZWwtPnJhdGlvID0KKyAgICAgICAgICAg
IHJxX21vZGVsLT5yYXRpbyArICh0YXJnZXRfYml0cyAtIGFjdHVhbF9iaXRzKSAvIGxvZzIocHJl
dl9xX3N0ZXApOworICAgICAgfQorICAgIH0KKyAgfQorfQorI2VuZGlmICAvLyBDT05GSUdfUkFU
RV9DVFJMCisKK3N0YXRpYyB2b2lkIGVuY29kZV93aXRoX3JlY29kZV9sb29wKFZQOV9DT01QICpj
cGksIHNpemVfdCAqc2l6ZSwgdWludDhfdCAqZGVzdAorI2lmIENPTkZJR19SQVRFX0NUUkwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFJBVEVfUUlOREVYX0hJU1RPUlkgKnJxX2hpc3RvcnkKKyNlbmRpZiAg
Ly8gQ09ORklHX1JBVEVfQ1RSTAorKSB7CiAgIGNvbnN0IFZQOUVuY29kZXJDb25maWcgKmNvbnN0
IG94Y2YgPSAmY3BpLT5veGNmOwogICBWUDlfQ09NTU9OICpjb25zdCBjbSA9ICZjcGktPmNvbW1v
bjsKICAgUkFURV9DT05UUk9MICpjb25zdCByYyA9ICZjcGktPnJjOwpAQCAtNDIwOCw2ICs0NDAy
LDE0IEBAIHN0YXRpYyB2b2lkIGVuY29kZV93aXRoX3JlY29kZV9sb29wKFZQOV9DT01QICpjcGks
IHNpemVfdCAqc2l6ZSwKICAgaW50IHFyYW5nZV9hZGogPSAxOwogI2VuZGlmCiAKKyNpZiBDT05G
SUdfUkFURV9DVFJMCisgIGNvbnN0IEZSQU1FX1VQREFURV9UWVBFIHVwZGF0ZV90eXBlID0KKyAg
ICAgIGNwaS0+dHdvcGFzcy5nZl9ncm91cC51cGRhdGVfdHlwZVtjcGktPnR3b3Bhc3MuZ2ZfZ3Jv
dXAuaW5kZXhdOworICBjb25zdCBFTkNPREVfRlJBTUVfVFlQRSBmcmFtZV90eXBlID0gZ2V0X2Vu
Y29kZV9mcmFtZV90eXBlKHVwZGF0ZV90eXBlKTsKKyAgUkFURV9RU1RFUF9NT0RFTCAqcnFfbW9k
ZWwgPSAmY3BpLT5ycV9tb2RlbFtmcmFtZV90eXBlXTsKKyAgaW5pdF9ycV9oaXN0b3J5KHJxX2hp
c3RvcnkpOworI2VuZGlmICAvLyBDT05GSUdfUkFURV9DVFJMCisKICAgaWYgKGNtLT5zaG93X2V4
aXN0aW5nX2ZyYW1lKSB7CiAgICAgcmMtPnRoaXNfZnJhbWVfdGFyZ2V0ID0gMDsKICAgICBpZiAo
aXNfcHNucl9jYWxjX2VuYWJsZWQoY3BpKSkgc2V0X3Jhd19zb3VyY2VfZnJhbWUoY3BpKTsKQEAg
LTQyNTQsNiArNDQ1NiwxMSBAQCBzdGF0aWMgdm9pZCBlbmNvZGVfd2l0aF9yZWNvZGVfbG9vcChW
UDlfQ09NUCAqY3BpLCBzaXplX3QgKnNpemUsCiAgICAgICBsb29wX2F0X3RoaXNfc2l6ZSA9IDA7
CiAgICAgfQogCisjaWYgQ09ORklHX1JBVEVfQ1RSTAorICAgIGlmIChjcGktPmVuY29kZV9jb21t
YW5kLnVzZV9leHRlcm5hbF90YXJnZXRfZnJhbWVfYml0cykgeworICAgICAgcSA9IHJxX21vZGVs
X3ByZWRpY3RfcV9pbmRleChycV9tb2RlbCwgcnFfaGlzdG9yeSwgcmMtPnRoaXNfZnJhbWVfdGFy
Z2V0KTsKKyAgICB9CisjZW5kaWYgIC8vIENPTkZJR19SQVRFX0NUUkwKICAgICAvLyBEZWNpZGUg
ZnJhbWUgc2l6ZSBib3VuZHMgZmlyc3QgdGltZSB0aHJvdWdoLgogICAgIGlmIChsb29wX2NvdW50
ID09IDApIHsKICAgICAgIHZwOV9yY19jb21wdXRlX2ZyYW1lX3NpemVfYm91bmRzKGNwaSwgcmMt
PnRoaXNfZnJhbWVfdGFyZ2V0LApAQCAtNDMwMCw2ICs0NTA3LDI2IEBAIHN0YXRpYyB2b2lkIGVu
Y29kZV93aXRoX3JlY29kZV9sb29wKFZQOV9DT01QICpjcGksIHNpemVfdCAqc2l6ZSwKICAgICAg
IHEgPSBjcGktPmVuY29kZV9jb21tYW5kLmV4dGVybmFsX3F1YW50aXplX2luZGV4OwogICAgIH0K
ICNlbmRpZgorICAgIGlmIChjcGktPmV4dF9yYXRlY3RybC5yZWFkeSkgeworICAgICAgdnB4X2Nv
ZGVjX2Vycl90IGNvZGVjX3N0YXR1czsKKyAgICAgIGNvbnN0IEdGX0dST1VQICpnZl9ncm91cCA9
ICZjcGktPnR3b3Bhc3MuZ2ZfZ3JvdXA7CisgICAgICB2cHhfcmNfZW5jb2RlZnJhbWVfZGVjaXNp
b25fdCBlbmNvZGVfZnJhbWVfZGVjaXNpb247CisgICAgICBGUkFNRV9VUERBVEVfVFlQRSB1cGRh
dGVfdHlwZSA9IGdmX2dyb3VwLT51cGRhdGVfdHlwZVtnZl9ncm91cC0+aW5kZXhdOworICAgICAg
Y29uc3QgaW50IHJlZl9mcmFtZV9mbGFncyA9IGdldF9yZWZfZnJhbWVfZmxhZ3MoY3BpKTsKKyAg
ICAgIFJlZkNudEJ1ZmZlciAqcmVmX2ZyYW1lX2J1ZnNbTUFYX0lOVEVSX1JFRl9GUkFNRVNdOwor
ICAgICAgY29uc3QgUmVmQ250QnVmZmVyICpjdXJyX2ZyYW1lX2J1ZiA9CisgICAgICAgICAgZ2V0
X3JlZl9jbnRfYnVmZmVyKGNtLCBjbS0+bmV3X2ZiX2lkeCk7CisgICAgICBnZXRfcmVmX2ZyYW1l
X2J1ZnMoY3BpLCByZWZfZnJhbWVfYnVmcyk7CisgICAgICBjb2RlY19zdGF0dXMgPSB2cDlfZXh0
cmNfZ2V0X2VuY29kZWZyYW1lX2RlY2lzaW9uKAorICAgICAgICAgICZjcGktPmV4dF9yYXRlY3Ry
bCwgY3Vycl9mcmFtZV9idWYtPmZyYW1lX2luZGV4LAorICAgICAgICAgIGNtLT5jdXJyZW50X2Zy
YW1lX2NvZGluZ19pbmRleCwgZ2ZfZ3JvdXAtPmluZGV4LCB1cGRhdGVfdHlwZSwKKyAgICAgICAg
ICByZWZfZnJhbWVfYnVmcywgcmVmX2ZyYW1lX2ZsYWdzLCAmZW5jb2RlX2ZyYW1lX2RlY2lzaW9u
KTsKKyAgICAgIGlmIChjb2RlY19zdGF0dXMgIT0gVlBYX0NPREVDX09LKSB7CisgICAgICAgIHZw
eF9pbnRlcm5hbF9lcnJvcigmY20tPmVycm9yLCBjb2RlY19zdGF0dXMsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAidnA5X2V4dHJjX2dldF9lbmNvZGVmcmFtZV9kZWNpc2lvbigpIGZhaWxl
ZCIpOworICAgICAgfQorICAgICAgcSA9IGVuY29kZV9mcmFtZV9kZWNpc2lvbi5xX2luZGV4Owor
ICAgIH0KIAogICAgIHZwOV9zZXRfcXVhbnRpemVyKGNwaSwgcSk7CiAKQEAgLTQzMzksNiArNDU2
Niw5IEBAIHN0YXRpYyB2b2lkIGVuY29kZV93aXRoX3JlY29kZV9sb29wKFZQOV9DT01QICpjcGks
IHNpemVfdCAqc2l6ZSwKICAgICAgIGlmIChmcmFtZV9vdmVyX3Nob290X2xpbWl0ID09IDApIGZy
YW1lX292ZXJfc2hvb3RfbGltaXQgPSAxOwogICAgIH0KIAorICAgIGlmIChjcGktPmV4dF9yYXRl
Y3RybC5yZWFkeSkgeworICAgICAgYnJlYWs7CisgICAgfQogI2lmIENPTkZJR19SQVRFX0NUUkwK
ICAgICAvLyBUaGlzIHBhcnQgbmVlZHMgdG8gYmUgYWZ0ZXIgc2F2ZV9jb2RpbmdfY29udGV4dCgp
IGJlY2F1c2UKICAgICAvLyByZXN0b3JlX2NvZGluZ19jb250ZXh0IHdpbGwgYmUgY2FsbGVkIGlu
IHRoZSBlbmQgb2YgdGhpcyBmdW5jdGlvbi4KQEAgLTQzNDcsNyArNDU3NywyOCBAQCBzdGF0aWMg
dm9pZCBlbmNvZGVfd2l0aF9yZWNvZGVfbG9vcChWUDlfQ09NUCAqY3BpLCBzaXplX3QgKnNpemUs
CiAgICAgaWYgKGNwaS0+ZW5jb2RlX2NvbW1hbmQudXNlX2V4dGVybmFsX3F1YW50aXplX2luZGV4
KSB7CiAgICAgICBicmVhazsKICAgICB9Ci0jZW5kaWYKKworICAgIGlmIChjcGktPmVuY29kZV9j
b21tYW5kLnVzZV9leHRlcm5hbF90YXJnZXRfZnJhbWVfYml0cykgeworICAgICAgY29uc3QgZG91
YmxlIHBlcmNlbnRfZGlmZiA9IGdldF9iaXRzX3BlcmNlbnRfZGlmZigKKyAgICAgICAgICByYy0+
dGhpc19mcmFtZV90YXJnZXQsIHJjLT5wcm9qZWN0ZWRfZnJhbWVfc2l6ZSk7CisgICAgICB1cGRh
dGVfcnFfaGlzdG9yeShycV9oaXN0b3J5LCByYy0+dGhpc19mcmFtZV90YXJnZXQsCisgICAgICAg
ICAgICAgICAgICAgICAgICByYy0+cHJvamVjdGVkX2ZyYW1lX3NpemUsIHEpOworICAgICAgbG9v
cF9jb3VudCArPSAxOworCisgICAgICBycV9tb2RlbF91cGRhdGUocnFfaGlzdG9yeSwgcmMtPnRo
aXNfZnJhbWVfdGFyZ2V0LCBycV9tb2RlbCk7CisKKyAgICAgIC8vIENoZWNrIGlmIHdlIGhpdCB0
aGUgdGFyZ2V0IGJpdHJhdGUuCisgICAgICBpZiAocGVyY2VudF9kaWZmIDw9IGNwaS0+ZW5jb2Rl
X2NvbW1hbmQudGFyZ2V0X2ZyYW1lX2JpdHNfZXJyb3JfcGVyY2VudCB8fAorICAgICAgICAgIHJx
X2hpc3RvcnktPnJlY29kZV9jb3VudCA+PSBSQVRFX0NUUkxfTUFYX1JFQ09ERV9OVU0gfHwKKyAg
ICAgICAgICBycV9oaXN0b3J5LT5xX2luZGV4X2xvdyA+PSBycV9oaXN0b3J5LT5xX2luZGV4X2hp
Z2gpIHsKKyAgICAgICAgYnJlYWs7CisgICAgICB9CisKKyAgICAgIGxvb3AgPSAxOworICAgICAg
cmVzdG9yZV9jb2RpbmdfY29udGV4dChjcGkpOworICAgICAgY29udGludWU7CisgICAgfQorI2Vu
ZGlmICAvLyBDT05GSUdfUkFURV9DVFJMCiAKICAgICBpZiAob3hjZi0+cmNfbW9kZSA9PSBWUFhf
USkgewogICAgICAgbG9vcCA9IDA7CkBAIC00NTYyLDI3ICs0ODEzLDYgQEAgc3RhdGljIHZvaWQg
ZW5jb2RlX3dpdGhfcmVjb2RlX2xvb3AoVlA5X0NPTVAgKmNwaSwgc2l6ZV90ICpzaXplLAogfQog
I2VuZGlmICAvLyAhQ09ORklHX1JFQUxUSU1FX09OTFkKIAotc3RhdGljIGludCBnZXRfcmVmX2Zy
YW1lX2ZsYWdzKGNvbnN0IFZQOV9DT01QICpjcGkpIHsKLSAgY29uc3QgaW50ICpjb25zdCBtYXAg
PSBjcGktPmNvbW1vbi5yZWZfZnJhbWVfbWFwOwotICBjb25zdCBpbnQgZ29sZF9pc19sYXN0ID0g
bWFwW2NwaS0+Z2xkX2ZiX2lkeF0gPT0gbWFwW2NwaS0+bHN0X2ZiX2lkeF07Ci0gIGNvbnN0IGlu
dCBhbHRfaXNfbGFzdCA9IG1hcFtjcGktPmFsdF9mYl9pZHhdID09IG1hcFtjcGktPmxzdF9mYl9p
ZHhdOwotICBjb25zdCBpbnQgZ29sZF9pc19hbHQgPSBtYXBbY3BpLT5nbGRfZmJfaWR4XSA9PSBt
YXBbY3BpLT5hbHRfZmJfaWR4XTsKLSAgaW50IGZsYWdzID0gVlA5X0FMVF9GTEFHIHwgVlA5X0dP
TERfRkxBRyB8IFZQOV9MQVNUX0ZMQUc7Ci0KLSAgaWYgKGdvbGRfaXNfbGFzdCkgZmxhZ3MgJj0g
flZQOV9HT0xEX0ZMQUc7Ci0KLSAgaWYgKGNwaS0+cmMuZnJhbWVzX3RpbGxfZ2ZfdXBkYXRlX2R1
ZSA9PSBJTlRfTUFYICYmCi0gICAgICAoY3BpLT5zdmMubnVtYmVyX3RlbXBvcmFsX2xheWVycyA9
PSAxICYmCi0gICAgICAgY3BpLT5zdmMubnVtYmVyX3NwYXRpYWxfbGF5ZXJzID09IDEpKQotICAg
IGZsYWdzICY9IH5WUDlfR09MRF9GTEFHOwotCi0gIGlmIChhbHRfaXNfbGFzdCkgZmxhZ3MgJj0g
flZQOV9BTFRfRkxBRzsKLQotICBpZiAoZ29sZF9pc19hbHQpIGZsYWdzICY9IH5WUDlfQUxUX0ZM
QUc7Ci0KLSAgcmV0dXJuIGZsYWdzOwotfQotCiBzdGF0aWMgdm9pZCBzZXRfZXh0X292ZXJyaWRl
cyhWUDlfQ09NUCAqY3BpKSB7CiAgIC8vIE92ZXJyaWRlcyB0aGUgZGVmYXVsdHMgd2l0aCB0aGUg
ZXh0ZXJuYWxseSBzdXBwbGllZCB2YWx1ZXMgd2l0aAogICAvLyB2cDlfdXBkYXRlX3JlZmVyZW5j
ZSgpIGFuZCB2cDlfdXBkYXRlX2VudHJvcHkoKSBjYWxscwpAQCAtNDg4Nyw2ICs1MTE3LDcgQEAg
c3RhdGljIHZvaWQgc2V0X2ZyYW1lX2luZGV4KFZQOV9DT01QICpjcGksIFZQOV9DT01NT04gKmNt
KSB7CiAgICAgY29uc3QgR0ZfR1JPVVAgKmNvbnN0IGdmX2dyb3VwID0gJmNwaS0+dHdvcGFzcy5n
Zl9ncm91cDsKICAgICByZWZfYnVmZmVyLT5mcmFtZV9pbmRleCA9CiAgICAgICAgIGNtLT5jdXJy
ZW50X3ZpZGVvX2ZyYW1lICsgZ2ZfZ3JvdXAtPmFyZl9zcmNfb2Zmc2V0W2dmX2dyb3VwLT5pbmRl
eF07CisgICAgcmVmX2J1ZmZlci0+ZnJhbWVfY29kaW5nX2luZGV4ID0gY20tPmN1cnJlbnRfZnJh
bWVfY29kaW5nX2luZGV4OwogICB9CiB9CiAKQEAgLTUwODAsOSArNTMxMSwyMyBAQCBzdGF0aWMg
dm9pZCBzZXRfbWJfd2llbmVyX3ZhcmlhbmNlKFZQOV9DT01QICpjcGkpIHsKICAgY3BpLT5ub3Jt
X3dpZW5lcl92YXJpYW5jZSA9IFZQWE1BWCgxLCBjcGktPm5vcm1fd2llbmVyX3ZhcmlhbmNlKTsK
IH0KIAotc3RhdGljIHZvaWQgZW5jb2RlX2ZyYW1lX3RvX2RhdGFfcmF0ZShWUDlfQ09NUCAqY3Bp
LCBzaXplX3QgKnNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVp
bnQ4X3QgKmRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2ln
bmVkIGludCAqZnJhbWVfZmxhZ3MpIHsKKyNpZiAhQ09ORklHX1JFQUxUSU1FX09OTFkKK3N0YXRp
YyB2b2lkIHVwZGF0ZV9lbmNvZGVfZnJhbWVfcmVzdWx0KAorICAgIGludCByZWZfZnJhbWVfZmxh
Z3MsIEZSQU1FX1VQREFURV9UWVBFIHVwZGF0ZV90eXBlLAorICAgIGNvbnN0IFlWMTJfQlVGRkVS
X0NPTkZJRyAqc291cmNlX2ZyYW1lLCBjb25zdCBSZWZDbnRCdWZmZXIgKmNvZGVkX2ZyYW1lX2J1
ZiwKKyAgICBSZWZDbnRCdWZmZXIgKnJlZl9mcmFtZV9idWZbTUFYX0lOVEVSX1JFRl9GUkFNRVNd
LCBpbnQgcXVhbnRpemVfaW5kZXgsCisgICAgdWludDMyX3QgYml0X2RlcHRoLCB1aW50MzJfdCBp
bnB1dF9iaXRfZGVwdGgsIGNvbnN0IEZSQU1FX0NPVU5UUyAqY291bnRzLAorI2lmIENPTkZJR19S
QVRFX0NUUkwKKyAgICBjb25zdCBQQVJUSVRJT05fSU5GTyAqcGFydGl0aW9uX2luZm8sCisgICAg
Y29uc3QgTU9USU9OX1ZFQ1RPUl9JTkZPICptb3Rpb25fdmVjdG9yX2luZm8sCisgICAgY29uc3Qg
VHBsRGVwU3RhdHMgKnRwbF9zdGF0c19pbmZvLAorI2VuZGlmICAvLyBDT05GSUdfUkFURV9DVFJM
CisgICAgRU5DT0RFX0ZSQU1FX1JFU1VMVCAqZW5jb2RlX2ZyYW1lX3Jlc3VsdCk7CisjZW5kaWYg
IC8vICFDT05GSUdfUkVBTFRJTUVfT05MWQorCitzdGF0aWMgdm9pZCBlbmNvZGVfZnJhbWVfdG9f
ZGF0YV9yYXRlKAorICAgIFZQOV9DT01QICpjcGksIHNpemVfdCAqc2l6ZSwgdWludDhfdCAqZGVz
dCwgdW5zaWduZWQgaW50ICpmcmFtZV9mbGFncywKKyAgICBFTkNPREVfRlJBTUVfUkVTVUxUICpl
bmNvZGVfZnJhbWVfcmVzdWx0KSB7CiAgIFZQOV9DT01NT04gKmNvbnN0IGNtID0gJmNwaS0+Y29t
bW9uOwogICBjb25zdCBWUDlFbmNvZGVyQ29uZmlnICpjb25zdCBveGNmID0gJmNwaS0+b3hjZjsK
ICAgc3RydWN0IHNlZ21lbnRhdGlvbiAqY29uc3Qgc2VnID0gJmNtLT5zZWc7CkBAIC01MTgxLDgg
KzU0MjYsMTIgQEAgc3RhdGljIHZvaWQgZW5jb2RlX2ZyYW1lX3RvX2RhdGFfcmF0ZShWUDlfQ09N
UCAqY3BpLCBzaXplX3QgKnNpemUsCiAgICAgaWYgKCFlbmNvZGVfd2l0aG91dF9yZWNvZGVfbG9v
cChjcGksIHNpemUsIGRlc3QpKSByZXR1cm47CiAgIH0gZWxzZSB7CiAjaWYgIUNPTkZJR19SRUFM
VElNRV9PTkxZCisjaWYgQ09ORklHX1JBVEVfQ1RSTAorICAgIGVuY29kZV93aXRoX3JlY29kZV9s
b29wKGNwaSwgc2l6ZSwgZGVzdCwgJmVuY29kZV9mcmFtZV9yZXN1bHQtPnJxX2hpc3RvcnkpOwor
I2Vsc2UgICAvLyBDT05GSUdfUkFURV9DVFJMCiAgICAgZW5jb2RlX3dpdGhfcmVjb2RlX2xvb3Ao
Y3BpLCBzaXplLCBkZXN0KTsKLSNlbmRpZgorI2VuZGlmICAvLyBDT05GSUdfUkFURV9DVFJMCisj
ZW5kaWYgIC8vICFDT05GSUdfUkVBTFRJTUVfT05MWQogICB9CiAKICAgLy8gVE9ETyhqaW5nbmlu
Zyk6IFdoZW4gdXNpbmcgc2hvdyBleGlzdGluZyBmcmFtZSBtb2RlLCB3ZSBhc3N1bWUgdGhhdCB0
aGUKQEAgLTUyNDcsNiArNTQ5Niw1NSBAQCBzdGF0aWMgdm9pZCBlbmNvZGVfZnJhbWVfdG9fZGF0
YV9yYXRlKFZQOV9DT01QICpjcGksIHNpemVfdCAqc2l6ZSwKICAgLy8gYnVpbGQgdGhlIGJpdHN0
cmVhbQogICB2cDlfcGFja19iaXRzdHJlYW0oY3BpLCBkZXN0LCBzaXplKTsKIAorICB7CisgICAg
Y29uc3QgUmVmQ250QnVmZmVyICpjb2RlZF9mcmFtZV9idWYgPQorICAgICAgICBnZXRfcmVmX2Nu
dF9idWZmZXIoY20sIGNtLT5uZXdfZmJfaWR4KTsKKyAgICB2cHhfY29kZWNfZXJyX3QgY29kZWNf
c3RhdHVzID0gdnA5X2V4dHJjX3VwZGF0ZV9lbmNvZGVmcmFtZV9yZXN1bHQoCisgICAgICAgICZj
cGktPmV4dF9yYXRlY3RybCwgKCpzaXplKSA8PCAzLCBjcGktPlNvdXJjZSwgJmNvZGVkX2ZyYW1l
X2J1Zi0+YnVmLAorICAgICAgICBjbS0+Yml0X2RlcHRoLCBjcGktPm94Y2YuaW5wdXRfYml0X2Rl
cHRoKTsKKyAgICBpZiAoY29kZWNfc3RhdHVzICE9IFZQWF9DT0RFQ19PSykgeworICAgICAgdnB4
X2ludGVybmFsX2Vycm9yKCZjbS0+ZXJyb3IsIGNvZGVjX3N0YXR1cywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAidnA5X2V4dHJjX3VwZGF0ZV9lbmNvZGVmcmFtZV9yZXN1bHQoKSBmYWlsZWQi
KTsKKyAgICB9CisgIH0KKyNpZiBDT05GSUdfUkVBTFRJTUVfT05MWQorICAodm9pZCllbmNvZGVf
ZnJhbWVfcmVzdWx0OworICBhc3NlcnQoZW5jb2RlX2ZyYW1lX3Jlc3VsdCA9PSBOVUxMKTsKKyNl
bHNlICAvLyBDT05GSUdfUkVBTFRJTUVfT05MWQorICBpZiAoZW5jb2RlX2ZyYW1lX3Jlc3VsdCAh
PSBOVUxMKSB7CisgICAgY29uc3QgaW50IHJlZl9mcmFtZV9mbGFncyA9IGdldF9yZWZfZnJhbWVf
ZmxhZ3MoY3BpKTsKKyAgICBjb25zdCBSZWZDbnRCdWZmZXIgKmNvZGVkX2ZyYW1lX2J1ZiA9Cisg
ICAgICAgIGdldF9yZWZfY250X2J1ZmZlcihjbSwgY20tPm5ld19mYl9pZHgpOworICAgIFJlZkNu
dEJ1ZmZlciAqcmVmX2ZyYW1lX2J1ZnNbTUFYX0lOVEVSX1JFRl9GUkFNRVNdOworICAgIGdldF9y
ZWZfZnJhbWVfYnVmcyhjcGksIHJlZl9mcmFtZV9idWZzKTsKKyAgICAvLyB1cGRhdGVfZW5jb2Rl
X2ZyYW1lX3Jlc3VsdCgpIGRlcGVuZHMgb24gdHdvcGFzcy5nZl9ncm91cC5pbmRleCBhbmQKKyAg
ICAvLyBjbS0+bmV3X2ZiX2lkeCwgY3BpLT5Tb3VyY2UsIGNwaS0+bHN0X2ZiX2lkeCwgY3BpLT5n
bGRfZmJfaWR4IGFuZAorICAgIC8vIGNwaS0+YWx0X2ZiX2lkeCBhcmUgdXBkYXRlZCBmb3IgY3Vy
cmVudCBmcmFtZSBhbmQgaGF2ZQorICAgIC8vIG5vdCBiZWVuIHVwZGF0ZWQgZm9yIHRoZSBuZXh0
IGZyYW1lIHlldC4KKyAgICAvLyBUaGUgdXBkYXRlIGxvY2F0aW9ucyBhcmUgYXMgZm9sbG93cy4K
KyAgICAvLyAxKSB0d29wYXNzLmdmX2dyb3VwLmluZGV4IGlzIGluaXRpYWxpemVkIGF0IGRlZmlu
ZV9nZl9ncm91cCBieSB2cDlfemVybygpCisgICAgLy8gZm9yIHRoZSBmaXJzdCBmcmFtZSBpbiB0
aGUgZ2ZfZ3JvdXAgYW5kIGlzIHVwZGF0ZWQgZm9yIHRoZSBuZXh0IGZyYW1lIGF0CisgICAgLy8g
dnA5X3R3b3Bhc3NfcG9zdGVuY29kZV91cGRhdGUoKS4KKyAgICAvLyAyKSBjcGktPlNvdXJjZSBp
cyB1cGRhdGVkIGF0IHRoZSBiZWdpbm5pbmcgb2YgdnA5X2dldF9jb21wcmVzc2VkX2RhdGEoKQor
ICAgIC8vIDMpIGNtLT5uZXdfZmJfaWR4IGlzIHVwZGF0ZWQgYXQgdGhlIGJlZ2lubmluZyBvZgor
ICAgIC8vIHZwOV9nZXRfY29tcHJlc3NlZF9kYXRhKCkgYnkgZ2V0X2ZyZWVfZmIoY20pLgorICAg
IC8vIDQpIGNwaS0+bHN0X2ZiX2lkeC9nbGRfZmJfaWR4L2FsdF9mYl9pZHggd2lsbCBiZSB1cGRh
dGVkIGZvciB0aGUgbmV4dAorICAgIC8vIGZyYW1lIGF0IHZwOV91cGRhdGVfcmVmZXJlbmNlX2Zy
YW1lcygpLgorICAgIC8vIFRoaXMgZnVuY3Rpb24gbmVlZHMgdG8gYmUgY2FsbGVkIGJlZm9yZSB2
cDlfdXBkYXRlX3JlZmVyZW5jZV9mcmFtZXMoKS4KKyAgICAvLyBUT0RPKGFuZ2llYmlyZCk6IElt
cHJvdmUgdGhlIGNvZGViYXNlIHRvIG1ha2UgdGhlIHVwZGF0ZSBvZiBmcmFtZQorICAgIC8vIGRl
cGVuZGVudCB2YXJpYWJsZXMgbW9yZSByb2J1c3QuCisgICAgdXBkYXRlX2VuY29kZV9mcmFtZV9y
ZXN1bHQoCisgICAgICAgIHJlZl9mcmFtZV9mbGFncywKKyAgICAgICAgY3BpLT50d29wYXNzLmdm
X2dyb3VwLnVwZGF0ZV90eXBlW2NwaS0+dHdvcGFzcy5nZl9ncm91cC5pbmRleF0sCisgICAgICAg
IGNwaS0+U291cmNlLCBjb2RlZF9mcmFtZV9idWYsIHJlZl9mcmFtZV9idWZzLCB2cDlfZ2V0X3F1
YW50aXplcihjcGkpLAorICAgICAgICBjbS0+Yml0X2RlcHRoLCBjcGktPm94Y2YuaW5wdXRfYml0
X2RlcHRoLCBjcGktPnRkLmNvdW50cywKKyNpZiBDT05GSUdfUkFURV9DVFJMCisgICAgICAgIGNw
aS0+cGFydGl0aW9uX2luZm8sIGNwaS0+bW90aW9uX3ZlY3Rvcl9pbmZvLCBjcGktPnRwbF9zdGF0
c19pbmZvLAorI2VuZGlmICAvLyBDT05GSUdfUkFURV9DVFJMCisgICAgICAgIGVuY29kZV9mcmFt
ZV9yZXN1bHQpOworICB9CisjZW5kaWYgIC8vIENPTkZJR19SRUFMVElNRV9PTkxZCisKICAgaWYg
KGNwaS0+cmMudXNlX3Bvc3RfZW5jb2RlX2Ryb3AgJiYgY20tPmJhc2VfcWluZGV4IDwgY3BpLT5y
Yy53b3JzdF9xdWFsaXR5ICYmCiAgICAgICBjcGktPnN2Yy5zcGF0aWFsX2xheWVyX2lkID09IDAg
JiYgcG9zdF9lbmNvZGVfZHJvcF9jYnIoY3BpLCBzaXplKSkgewogICAgIHJlc3RvcmVfY29kaW5n
X2NvbnRleHQoY3BpKTsKQEAgLTUzMDksNiArNTYwNywxNCBAQCBzdGF0aWMgdm9pZCBlbmNvZGVf
ZnJhbWVfdG9fZGF0YV9yYXRlKFZQOV9DT01QICpjcGksIHNpemVfdCAqc2l6ZSwKIAogICB2cDlf
cmNfcG9zdGVuY29kZV91cGRhdGUoY3BpLCAqc2l6ZSk7CiAKKyAgaWYgKG94Y2YtPnBhc3MgPT0g
MCAmJiAhZnJhbWVfaXNfaW50cmFfb25seShjbSkgJiYKKyAgICAgICghY3BpLT51c2Vfc3ZjIHx8
CisgICAgICAgKGNwaS0+dXNlX3N2YyAmJgorICAgICAgICAhY3BpLT5zdmMubGF5ZXJfY29udGV4
dFtjcGktPnN2Yy50ZW1wb3JhbF9sYXllcl9pZF0uaXNfa2V5X2ZyYW1lICYmCisgICAgICAgIGNw
aS0+c3ZjLnNwYXRpYWxfbGF5ZXJfaWQgPT0gY3BpLT5zdmMubnVtYmVyX3NwYXRpYWxfbGF5ZXJz
IC0gMSkpKSB7CisgICAgdnA5X2NvbXB1dGVfZnJhbWVfbG93X21vdGlvbihjcGkpOworICB9CisK
ICAgKnNpemUgPSBWUFhNQVgoMSwgKnNpemUpOwogCiAjaWYgMApAQCAtNTM0MCwxMSArNTY0Niw5
IEBAIHN0YXRpYyB2b2lkIGVuY29kZV9mcmFtZV90b19kYXRhX3JhdGUoVlA5X0NPTVAgKmNwaSwg
c2l6ZV90ICpzaXplLAogCiAgIGlmIChjbS0+c2hvd19mcmFtZSkgewogICAgIHZwOV9zd2FwX21p
X2FuZF9wcmV2X21pKGNtKTsKLSAgICAvLyBEb24ndCBpbmNyZW1lbnQgZnJhbWUgY291bnRlcnMg
aWYgdGhpcyB3YXMgYW4gYWx0cmVmIGJ1ZmZlcgotICAgIC8vIHVwZGF0ZSBub3QgYSByZWFsIGZy
YW1lCi0gICAgKytjbS0+Y3VycmVudF92aWRlb19mcmFtZTsKICAgICBpZiAoY3BpLT51c2Vfc3Zj
KSB2cDlfaW5jX2ZyYW1lX2luX2xheWVyKGNwaSk7CiAgIH0KKyAgdXBkYXRlX2ZyYW1lX2luZGV4
ZXMoY20sIGNtLT5zaG93X2ZyYW1lKTsKIAogICBpZiAoY3BpLT51c2Vfc3ZjKSB7CiAgICAgY3Bp
LT5zdmMKQEAgLTUzNzAsNyArNTY3NCw4IEBAIHN0YXRpYyB2b2lkIGVuY29kZV9mcmFtZV90b19k
YXRhX3JhdGUoVlA5X0NPTVAgKmNwaSwgc2l6ZV90ICpzaXplLAogc3RhdGljIHZvaWQgU3ZjRW5j
b2RlKFZQOV9DT01QICpjcGksIHNpemVfdCAqc2l6ZSwgdWludDhfdCAqZGVzdCwKICAgICAgICAg
ICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgKmZyYW1lX2ZsYWdzKSB7CiAgIHZwOV9yY19nZXRf
c3ZjX3BhcmFtcyhjcGkpOwotICBlbmNvZGVfZnJhbWVfdG9fZGF0YV9yYXRlKGNwaSwgc2l6ZSwg
ZGVzdCwgZnJhbWVfZmxhZ3MpOworICBlbmNvZGVfZnJhbWVfdG9fZGF0YV9yYXRlKGNwaSwgc2l6
ZSwgZGVzdCwgZnJhbWVfZmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyplbmNv
ZGVfZnJhbWVfcmVzdWx0ID0gKi8gTlVMTCk7CiB9CiAKIHN0YXRpYyB2b2lkIFBhc3MwRW5jb2Rl
KFZQOV9DT01QICpjcGksIHNpemVfdCAqc2l6ZSwgdWludDhfdCAqZGVzdCwKQEAgLTUzODAsMTcg
KzU2ODUsMjkgQEAgc3RhdGljIHZvaWQgUGFzczBFbmNvZGUoVlA5X0NPTVAgKmNwaSwgc2l6ZV90
ICpzaXplLCB1aW50OF90ICpkZXN0LAogICB9IGVsc2UgewogICAgIHZwOV9yY19nZXRfb25lX3Bh
c3NfdmJyX3BhcmFtcyhjcGkpOwogICB9Ci0gIGVuY29kZV9mcmFtZV90b19kYXRhX3JhdGUoY3Bp
LCBzaXplLCBkZXN0LCBmcmFtZV9mbGFncyk7CisgIGVuY29kZV9mcmFtZV90b19kYXRhX3JhdGUo
Y3BpLCBzaXplLCBkZXN0LCBmcmFtZV9mbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKmVuY29kZV9mcmFtZV9yZXN1bHQgPSAqLyBOVUxMKTsKIH0KIAogI2lmICFDT05GSUdfUkVB
TFRJTUVfT05MWQogc3RhdGljIHZvaWQgUGFzczJFbmNvZGUoVlA5X0NPTVAgKmNwaSwgc2l6ZV90
ICpzaXplLCB1aW50OF90ICpkZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg
aW50ICpmcmFtZV9mbGFncykgeworICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50
ICpmcmFtZV9mbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgIEVOQ09ERV9GUkFNRV9SRVNV
TFQgKmVuY29kZV9mcmFtZV9yZXN1bHQpIHsKICAgY3BpLT5hbGxvd19lbmNvZGVfYnJlYWtvdXQg
PSBFTkNPREVfQlJFQUtPVVRfRU5BQkxFRDsKKworICBpZiAoY3BpLT5jb21tb24uY3VycmVudF9m
cmFtZV9jb2RpbmdfaW5kZXggPT0gMCkgeworICAgIFZQOV9DT01NT04gKmNtID0gJmNwaS0+Y29t
bW9uOworICAgIGNvbnN0IHZweF9jb2RlY19lcnJfdCBjb2RlY19zdGF0dXMgPSB2cDlfZXh0cmNf
c2VuZF9maXJzdHBhc3Nfc3RhdHMoCisgICAgICAgICZjcGktPmV4dF9yYXRlY3RybCwgJmNwaS0+
dHdvcGFzcy5maXJzdF9wYXNzX2luZm8pOworICAgIGlmIChjb2RlY19zdGF0dXMgIT0gVlBYX0NP
REVDX09LKSB7CisgICAgICB2cHhfaW50ZXJuYWxfZXJyb3IoJmNtLT5lcnJvciwgY29kZWNfc3Rh
dHVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICJ2cDlfZXh0cmNfc2VuZF9maXJzdHBhc3Nf
c3RhdHMoKSBmYWlsZWQiKTsKKyAgICB9CisgIH0KICNpZiBDT05GSUdfTUlTTUFUQ0hfREVCVUcK
ICAgbWlzbWF0Y2hfbW92ZV9mcmFtZV9pZHhfdygpOwogI2VuZGlmCi0gIGVuY29kZV9mcmFtZV90
b19kYXRhX3JhdGUoY3BpLCBzaXplLCBkZXN0LCBmcmFtZV9mbGFncyk7CisgIGVuY29kZV9mcmFt
ZV90b19kYXRhX3JhdGUoY3BpLCBzaXplLCBkZXN0LCBmcmFtZV9mbGFncywgZW5jb2RlX2ZyYW1l
X3Jlc3VsdCk7CiB9CiAjZW5kaWYgIC8vICFDT05GSUdfUkVBTFRJTUVfT05MWQogCkBAIC03MDc4
LDYgKzczOTUsNDggQEAgc3RhdGljIHZvaWQgZnJlZV90cGxfYnVmZmVyKFZQOV9DT01QICpjcGkp
IHsKICAgfQogfQogCisjaWYgQ09ORklHX1JBVEVfQ1RSTAorc3RhdGljIHZvaWQgYWNjdW11bGF0
ZV9mcmFtZV90cGxfc3RhdHMoVlA5X0NPTVAgKmNwaSkgeworICBWUDlfQ09NTU9OICpjb25zdCBj
bSA9ICZjcGktPmNvbW1vbjsKKyAgY29uc3QgR0ZfR1JPVVAgKmdmX2dyb3VwID0gJmNwaS0+dHdv
cGFzcy5nZl9ncm91cDsKKyAgaW50IHNob3dfZnJhbWVfY291bnQgPSAwOworICBpbnQgZnJhbWVf
aWR4OworICAvLyBBY2N1bXVsYXRlIHRwbCBzdGF0cyBmb3IgZWFjaCBmcmFtZSBpbiB0aGUgY3Vy
cmVudCBncm91cCBvZiBwaWN0dXJlLgorICBmb3IgKGZyYW1lX2lkeCA9IDE7IGZyYW1lX2lkeCA8
IGdmX2dyb3VwLT5nZl9ncm91cF9zaXplOyArK2ZyYW1lX2lkeCkgeworICAgIFRwbERlcEZyYW1l
ICp0cGxfZnJhbWUgPSAmY3BpLT50cGxfc3RhdHNbZnJhbWVfaWR4XTsKKyAgICBUcGxEZXBTdGF0
cyAqdHBsX3N0YXRzID0gdHBsX2ZyYW1lLT50cGxfc3RhdHNfcHRyOworICAgIGNvbnN0IGludCB0
cGxfc3RyaWRlID0gdHBsX2ZyYW1lLT5zdHJpZGU7CisgICAgaW50NjRfdCBpbnRyYV9jb3N0X2Jh
c2UgPSAwOworICAgIGludDY0X3QgaW50ZXJfY29zdF9iYXNlID0gMDsKKyAgICBpbnQ2NF90IG1j
X2RlcF9jb3N0X2Jhc2UgPSAwOworICAgIGludDY0X3QgbWNfcmVmX2Nvc3RfYmFzZSA9IDA7Cisg
ICAgaW50NjRfdCBtY19mbG93X2Jhc2UgPSAwOworICAgIGludCByb3csIGNvbDsKKworICAgIGlm
ICghdHBsX2ZyYW1lLT5pc192YWxpZCkgY29udGludWU7CisKKyAgICBmb3IgKHJvdyA9IDA7IHJv
dyA8IGNtLT5taV9yb3dzICYmIHRwbF9mcmFtZS0+aXNfdmFsaWQ7ICsrcm93KSB7CisgICAgICBm
b3IgKGNvbCA9IDA7IGNvbCA8IGNtLT5taV9jb2xzOyArK2NvbCkgeworICAgICAgICBUcGxEZXBT
dGF0cyAqdGhpc19zdGF0cyA9ICZ0cGxfc3RhdHNbcm93ICogdHBsX3N0cmlkZSArIGNvbF07Cisg
ICAgICAgIGludHJhX2Nvc3RfYmFzZSArPSB0aGlzX3N0YXRzLT5pbnRyYV9jb3N0OworICAgICAg
ICBpbnRlcl9jb3N0X2Jhc2UgKz0gdGhpc19zdGF0cy0+aW50ZXJfY29zdDsKKyAgICAgICAgbWNf
ZGVwX2Nvc3RfYmFzZSArPSB0aGlzX3N0YXRzLT5tY19kZXBfY29zdDsKKyAgICAgICAgbWNfcmVm
X2Nvc3RfYmFzZSArPSB0aGlzX3N0YXRzLT5tY19yZWZfY29zdDsKKyAgICAgICAgbWNfZmxvd19i
YXNlICs9IHRoaXNfc3RhdHMtPm1jX2Zsb3c7CisgICAgICB9CisgICAgfQorCisgICAgY3BpLT50
cGxfc3RhdHNfaW5mb1tzaG93X2ZyYW1lX2NvdW50XS5pbnRyYV9jb3N0ID0gaW50cmFfY29zdF9i
YXNlOworICAgIGNwaS0+dHBsX3N0YXRzX2luZm9bc2hvd19mcmFtZV9jb3VudF0uaW50ZXJfY29z
dCA9IGludGVyX2Nvc3RfYmFzZTsKKyAgICBjcGktPnRwbF9zdGF0c19pbmZvW3Nob3dfZnJhbWVf
Y291bnRdLm1jX2RlcF9jb3N0ID0gbWNfZGVwX2Nvc3RfYmFzZTsKKyAgICBjcGktPnRwbF9zdGF0
c19pbmZvW3Nob3dfZnJhbWVfY291bnRdLm1jX3JlZl9jb3N0ID0gbWNfcmVmX2Nvc3RfYmFzZTsK
KyAgICBjcGktPnRwbF9zdGF0c19pbmZvW3Nob3dfZnJhbWVfY291bnRdLm1jX2Zsb3cgPSBtY19m
bG93X2Jhc2U7CisKKyAgICArK3Nob3dfZnJhbWVfY291bnQ7CisgIH0KK30KKyNlbmRpZiAgLy8g
Q09ORklHX1JBVEVfQ1RSTAorCiBzdGF0aWMgdm9pZCBzZXR1cF90cGxfc3RhdHMoVlA5X0NPTVAg
KmNwaSkgewogICBHRl9QSUNUVVJFIGdmX3BpY3R1cmVbTUFYX0FSRl9HT1BfU0laRV07CiAgIGNv
bnN0IEdGX0dST1VQICpnZl9ncm91cCA9ICZjcGktPnR3b3Bhc3MuZ2ZfZ3JvdXA7CkBAIC03MTAw
LDYgKzc0NTksMzQgQEAgc3RhdGljIHZvaWQgc2V0dXBfdHBsX3N0YXRzKFZQOV9DT01QICpjcGkp
IHsKICAgZHVtcF90cGxfc3RhdHMoY3BpLCB0cGxfZ3JvdXBfZnJhbWVzLCBnZl9ncm91cCwgZ2Zf
cGljdHVyZSwgY3BpLT50cGxfYnNpemUpOwogI2VuZGlmICAvLyBEVU1QX1RQTF9TVEFUUwogI2Vu
ZGlmICAvLyBDT05GSUdfTk9OX0dSRUVEWV9NVgorCisjaWYgQ09ORklHX1JBVEVfQ1RSTAorICBh
Y2N1bXVsYXRlX2ZyYW1lX3RwbF9zdGF0cyhjcGkpOworI2VuZGlmICAvLyBDT05GSUdfUkFURV9D
VFJMCit9CisKK3ZvaWQgdnA5X2dldF9yZWZfZnJhbWVfaW5mbyhGUkFNRV9VUERBVEVfVFlQRSB1
cGRhdGVfdHlwZSwgaW50IHJlZl9mcmFtZV9mbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBSZWZDbnRCdWZmZXIgKnJlZl9mcmFtZV9idWZzW01BWF9JTlRFUl9SRUZfRlJBTUVTXSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnJlZl9mcmFtZV9jb2RpbmdfaW5kZXhl
cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnJlZl9mcmFtZV92YWxpZF9saXN0
KSB7CisgIGlmICh1cGRhdGVfdHlwZSAhPSBLRl9VUERBVEUpIHsKKyAgICBjb25zdCBWUDlfUkVG
RlJBTUUgaW50ZXJfcmVmX2ZsYWdzW01BWF9JTlRFUl9SRUZfRlJBTUVTXSA9IHsgVlA5X0xBU1Rf
RkxBRywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgVlA5X0dPTERfRkxBRywKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVlA5X0FMVF9GTEFHIH07Cisg
ICAgaW50IGk7CisgICAgZm9yIChpID0gMDsgaSA8IE1BWF9JTlRFUl9SRUZfRlJBTUVTOyArK2kp
IHsKKyAgICAgIGFzc2VydChyZWZfZnJhbWVfYnVmc1tpXSAhPSBOVUxMKTsKKyAgICAgIHJlZl9m
cmFtZV9jb2RpbmdfaW5kZXhlc1tpXSA9IHJlZl9mcmFtZV9idWZzW2ldLT5mcmFtZV9jb2Rpbmdf
aW5kZXg7CisgICAgICByZWZfZnJhbWVfdmFsaWRfbGlzdFtpXSA9IChyZWZfZnJhbWVfZmxhZ3Mg
JiBpbnRlcl9yZWZfZmxhZ3NbaV0pICE9IDA7CisgICAgfQorICB9IGVsc2UgeworICAgIC8vIE5v
IHJlZmVyZW5jZSBmcmFtZSBpcyBhdmFpbGFibGUgd2hlbiB0aGlzIGlzIGEga2V5IGZyYW1lLgor
ICAgIGludCBpOworICAgIGZvciAoaSA9IDA7IGkgPCBNQVhfSU5URVJfUkVGX0ZSQU1FUzsgKytp
KSB7CisgICAgICByZWZfZnJhbWVfY29kaW5nX2luZGV4ZXNbaV0gPSAtMTsKKyAgICAgIHJlZl9m
cmFtZV92YWxpZF9saXN0W2ldID0gMDsKKyAgICB9CisgIH0KIH0KIAogI2lmICFDT05GSUdfUkVB
TFRJTUVfT05MWQpAQCAtNzI1MSw0MSArNzYzOCw1MiBAQCBzdGF0aWMgdm9pZCB5djEyX2J1ZmZl
cl90b19pbWFnZV9idWZmZXIoY29uc3QgWVYxMl9CVUZGRVJfQ09ORklHICp5djEyX2J1ZmZlciwK
ICNlbmRpZiAgLy8gQ09ORklHX1JBVEVfQ1RSTAogCiBzdGF0aWMgdm9pZCB1cGRhdGVfZW5jb2Rl
X2ZyYW1lX3Jlc3VsdCgKLSAgICBpbnQgc2hvd19pZHgsIEZSQU1FX1VQREFURV9UWVBFIHVwZGF0
ZV90eXBlLAotICAgIGNvbnN0IFlWMTJfQlVGRkVSX0NPTkZJRyAqc291cmNlX2ZyYW1lLAotICAg
IGNvbnN0IFlWMTJfQlVGRkVSX0NPTkZJRyAqY29kZWRfZnJhbWUsIGludCBxdWFudGl6ZV9pbmRl
eCwKKyAgICBpbnQgcmVmX2ZyYW1lX2ZsYWdzLCBGUkFNRV9VUERBVEVfVFlQRSB1cGRhdGVfdHlw
ZSwKKyAgICBjb25zdCBZVjEyX0JVRkZFUl9DT05GSUcgKnNvdXJjZV9mcmFtZSwgY29uc3QgUmVm
Q250QnVmZmVyICpjb2RlZF9mcmFtZV9idWYsCisgICAgUmVmQ250QnVmZmVyICpyZWZfZnJhbWVf
YnVmc1tNQVhfSU5URVJfUkVGX0ZSQU1FU10sIGludCBxdWFudGl6ZV9pbmRleCwKICAgICB1aW50
MzJfdCBiaXRfZGVwdGgsIHVpbnQzMl90IGlucHV0X2JpdF9kZXB0aCwgY29uc3QgRlJBTUVfQ09V
TlRTICpjb3VudHMsCiAjaWYgQ09ORklHX1JBVEVfQ1RSTAogICAgIGNvbnN0IFBBUlRJVElPTl9J
TkZPICpwYXJ0aXRpb25faW5mbywKICAgICBjb25zdCBNT1RJT05fVkVDVE9SX0lORk8gKm1vdGlv
bl92ZWN0b3JfaW5mbywKKyAgICBjb25zdCBUcGxEZXBTdGF0cyAqdHBsX3N0YXRzX2luZm8sCiAj
ZW5kaWYgIC8vIENPTkZJR19SQVRFX0NUUkwKICAgICBFTkNPREVfRlJBTUVfUkVTVUxUICplbmNv
ZGVfZnJhbWVfcmVzdWx0KSB7CiAjaWYgQ09ORklHX1JBVEVfQ1RSTAogICBQU05SX1NUQVRTIHBz
bnI7CiAjaWYgQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKLSAgdnB4X2NhbGNfaGlnaGJkX3BzbnIo
c291cmNlX2ZyYW1lLCBjb2RlZF9mcmFtZSwgJnBzbnIsIGJpdF9kZXB0aCwKKyAgdnB4X2NhbGNf
aGlnaGJkX3BzbnIoc291cmNlX2ZyYW1lLCAmY29kZWRfZnJhbWVfYnVmLT5idWYsICZwc25yLCBi
aXRfZGVwdGgsCiAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0X2JpdF9kZXB0aCk7CiAjZWxz
ZSAgIC8vIENPTkZJR19WUDlfSElHSEJJVERFUFRICiAgICh2b2lkKWJpdF9kZXB0aDsKICAgKHZv
aWQpaW5wdXRfYml0X2RlcHRoOwotICB2cHhfY2FsY19wc25yKHNvdXJjZV9mcmFtZSwgY29kZWRf
ZnJhbWUsICZwc25yKTsKKyAgdnB4X2NhbGNfcHNucihzb3VyY2VfZnJhbWUsICZjb2RlZF9mcmFt
ZV9idWYtPmJ1ZiwgJnBzbnIpOwogI2VuZGlmICAvLyBDT05GSUdfVlA5X0hJR0hCSVRERVBUSAor
ICBlbmNvZGVfZnJhbWVfcmVzdWx0LT5mcmFtZV9jb2RpbmdfaW5kZXggPSBjb2RlZF9mcmFtZV9i
dWYtPmZyYW1lX2NvZGluZ19pbmRleDsKKworICB2cDlfZ2V0X3JlZl9mcmFtZV9pbmZvKHVwZGF0
ZV90eXBlLCByZWZfZnJhbWVfZmxhZ3MsIHJlZl9mcmFtZV9idWZzLAorICAgICAgICAgICAgICAg
ICAgICAgICAgIGVuY29kZV9mcmFtZV9yZXN1bHQtPnJlZl9mcmFtZV9jb2RpbmdfaW5kZXhlcywK
KyAgICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGVfZnJhbWVfcmVzdWx0LT5yZWZfZnJhbWVf
dmFsaWRfbGlzdCk7CisKICAgZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+cHNuciA9IHBzbnIucHNuclsw
XTsKICAgZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+c3NlID0gcHNuci5zc2VbMF07CiAgIGNvcHlfZnJh
bWVfY291bnRzKGNvdW50cywgJmVuY29kZV9mcmFtZV9yZXN1bHQtPmZyYW1lX2NvdW50cyk7CiAg
IGVuY29kZV9mcmFtZV9yZXN1bHQtPnBhcnRpdGlvbl9pbmZvID0gcGFydGl0aW9uX2luZm87CiAg
IGVuY29kZV9mcmFtZV9yZXN1bHQtPm1vdGlvbl92ZWN0b3JfaW5mbyA9IG1vdGlvbl92ZWN0b3Jf
aW5mbzsKKyAgZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+dHBsX3N0YXRzX2luZm8gPSB0cGxfc3RhdHNf
aW5mbzsKICAgaWYgKGVuY29kZV9mcmFtZV9yZXN1bHQtPmNvZGVkX2ZyYW1lLmFsbG9jYXRlZCkg
ewotICAgIHl2MTJfYnVmZmVyX3RvX2ltYWdlX2J1ZmZlcihjb2RlZF9mcmFtZSwgJmVuY29kZV9m
cmFtZV9yZXN1bHQtPmNvZGVkX2ZyYW1lKTsKKyAgICB5djEyX2J1ZmZlcl90b19pbWFnZV9idWZm
ZXIoJmNvZGVkX2ZyYW1lX2J1Zi0+YnVmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAmZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+Y29kZWRfZnJhbWUpOwogICB9CiAjZWxzZSAgIC8vIENP
TkZJR19SQVRFX0NUUkwKKyAgKHZvaWQpcmVmX2ZyYW1lX2ZsYWdzOwogICAodm9pZCliaXRfZGVw
dGg7CiAgICh2b2lkKWlucHV0X2JpdF9kZXB0aDsKICAgKHZvaWQpc291cmNlX2ZyYW1lOwotICAo
dm9pZCljb2RlZF9mcmFtZTsKKyAgKHZvaWQpY29kZWRfZnJhbWVfYnVmOworICAodm9pZClyZWZf
ZnJhbWVfYnVmczsKICAgKHZvaWQpY291bnRzOwogI2VuZGlmICAvLyBDT05GSUdfUkFURV9DVFJM
Ci0gIGVuY29kZV9mcmFtZV9yZXN1bHQtPnNob3dfaWR4ID0gc2hvd19pZHg7CisgIGVuY29kZV9m
cmFtZV9yZXN1bHQtPnNob3dfaWR4ID0gY29kZWRfZnJhbWVfYnVmLT5mcmFtZV9pbmRleDsKICAg
ZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+dXBkYXRlX3R5cGUgPSB1cGRhdGVfdHlwZTsKICAgZW5jb2Rl
X2ZyYW1lX3Jlc3VsdC0+cXVhbnRpemVfaW5kZXggPSBxdWFudGl6ZV9pbmRleDsKIH0KQEAgLTcy
OTQsOCArNzY5MiwxMCBAQCBzdGF0aWMgdm9pZCB1cGRhdGVfZW5jb2RlX2ZyYW1lX3Jlc3VsdCgK
IHZvaWQgdnA5X2luaXRfZW5jb2RlX2ZyYW1lX3Jlc3VsdChFTkNPREVfRlJBTUVfUkVTVUxUICpl
bmNvZGVfZnJhbWVfcmVzdWx0KSB7CiAgIGVuY29kZV9mcmFtZV9yZXN1bHQtPnNob3dfaWR4ID0g
LTE7ICAvLyBBY3R1YWwgZW5jb2RpbmcgZG9lc24ndCBoYXBwZW4uCiAjaWYgQ09ORklHX1JBVEVf
Q1RSTAorICBlbmNvZGVfZnJhbWVfcmVzdWx0LT5mcmFtZV9jb2RpbmdfaW5kZXggPSAtMTsKICAg
dnA5X3plcm8oZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+Y29kZWRfZnJhbWUpOwogICBlbmNvZGVfZnJh
bWVfcmVzdWx0LT5jb2RlZF9mcmFtZS5hbGxvY2F0ZWQgPSAwOworICBpbml0X3JxX2hpc3Rvcnko
JmVuY29kZV9mcmFtZV9yZXN1bHQtPnJxX2hpc3RvcnkpOwogI2VuZGlmICAvLyBDT05GSUdfUkFU
RV9DVFJMCiB9CiAKQEAgLTc0ODIsOSArNzg4MiwxMiBAQCBpbnQgdnA5X2dldF9jb21wcmVzc2Vk
X2RhdGEoVlA5X0NPTVAgKmNwaSwgdW5zaWduZWQgaW50ICpmcmFtZV9mbGFncywKICAgY20tPm5l
d19mYl9pZHggPSBnZXRfZnJlZV9mYihjbSk7CiAKICAgaWYgKGNtLT5uZXdfZmJfaWR4ID09IElO
VkFMSURfSURYKSByZXR1cm4gLTE7Ci0KICAgY20tPmN1cl9mcmFtZSA9ICZwb29sLT5mcmFtZV9i
dWZzW2NtLT5uZXdfZmJfaWR4XTsKLQorICAvLyBJZiB0aGUgZnJhbWUgYnVmZmVyIGZvciBjdXJy
ZW50IGZyYW1lIGlzIHRoZSBzYW1lIGFzIHByZXZpb3VzIGZyYW1lLCBNViBpbgorICAvLyB0aGUg
YmFzZSBsYXllciBzaG91bGRuJ3QgYmUgdXNlZCBhcyBpdCdsbCBjYXVzZSBkYXRhIHJhY2UuCisg
IGlmIChjcGktPnN2Yy5zcGF0aWFsX2xheWVyX2lkID4gMCAmJiBjbS0+Y3VyX2ZyYW1lID09IGNt
LT5wcmV2X2ZyYW1lKSB7CisgICAgY3BpLT5zdmMudXNlX2Jhc2VfbXYgPSAwOworICB9CiAgIC8v
IFN0YXJ0IHdpdGggYSAwIHNpemUgZnJhbWUuCiAgICpzaXplID0gMDsKIApAQCAtNzU3NSwyOSAr
Nzk3OCw3IEBAIGludCB2cDlfZ2V0X2NvbXByZXNzZWRfZGF0YShWUDlfQ09NUCAqY3BpLCB1bnNp
Z25lZCBpbnQgKmZyYW1lX2ZsYWdzLAogICAgIGNwaS0+dGQubWIuaW52X3R4Zm1fYWRkID0gbG9z
c2xlc3MgPyB2cDlfaXdodDR4NF9hZGQgOiB2cDlfaWRjdDR4NF9hZGQ7CiAgICAgdnA5X2ZpcnN0
X3Bhc3MoY3BpLCBzb3VyY2UpOwogICB9IGVsc2UgaWYgKG94Y2YtPnBhc3MgPT0gMiAmJiAhY3Bp
LT51c2Vfc3ZjKSB7Ci0gICAgUGFzczJFbmNvZGUoY3BpLCBzaXplLCBkZXN0LCBmcmFtZV9mbGFn
cyk7Ci0gICAgLy8gdXBkYXRlX2VuY29kZV9mcmFtZV9yZXN1bHQoKSBkZXBlbmRzIG9uIHR3b3Bh
c3MuZ2ZfZ3JvdXAuaW5kZXggYW5kCi0gICAgLy8gY20tPm5ld19mYl9pZHggYW5kIGNwaS0+U291
cmNlIGFyZSB1cGRhdGVkIGZvciBjdXJyZW50IHByb3Blcmx5IGFuZCBoYXZlCi0gICAgLy8gbm90
IGJlZW4gdXBkYXRlZCBmb3IgdGhlIG5leHQgZnJhbWUgeWV0LgotICAgIC8vIFRoZSB1cGRhdGUg
bG9jYXRpb25zIGFyZSBhcyBmb2xsb3dzLgotICAgIC8vIDEpIHR3b3Bhc3MuZ2ZfZ3JvdXAuaW5k
ZXggaXMgaW5pdGlhbGl6ZWQgYXQgZGVmaW5lX2dmX2dyb3VwIGJ5IHZwOV96ZXJvKCkKLSAgICAv
LyBmb3IgdGhlIGZpcnN0IGZyYW1lIGluIHRoZSBnZl9ncm91cCBhbmQgaXMgdXBkYXRlZCBmb3Ig
dGhlIG5leHQgZnJhbWUgYXQKLSAgICAvLyB2cDlfdHdvcGFzc19wb3N0ZW5jb2RlX3VwZGF0ZSgp
LgotICAgIC8vIDIpIGNwaS0+U291cmNlIGlzIHVwZGF0ZWQgYXQgdGhlIGJlZ2lubmluZyBvZiB0
aGlzIGZ1bmN0aW9uLCBpLmUuCi0gICAgLy8gdnA5X2dldF9jb21wcmVzc2VkX2RhdGEoKQotICAg
IC8vIDMpIGNtLT5uZXdfZmJfaWR4IGlzIHVwZGF0ZWQgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGlz
IGZ1bmN0aW9uIGJ5Ci0gICAgLy8gZ2V0X2ZyZWVfZmIoY20pCi0gICAgLy8gVE9ETyhhbmdpZWJp
cmQpOiBJbXByb3ZlIHRoZSBjb2RlYmFzZSB0byBtYWtlIHRoZSB1cGRhdGUgb2YgZnJhbWUKLSAg
ICAvLyBkZXBlbmRlbnQgdmFyaWFibGVzIG1vcmUgcm9idXN0LgotICAgIHVwZGF0ZV9lbmNvZGVf
ZnJhbWVfcmVzdWx0KAotICAgICAgICBzb3VyY2UtPnNob3dfaWR4LAotICAgICAgICBjcGktPnR3
b3Bhc3MuZ2ZfZ3JvdXAudXBkYXRlX3R5cGVbY3BpLT50d29wYXNzLmdmX2dyb3VwLmluZGV4XSwK
LSAgICAgICAgY3BpLT5Tb3VyY2UsIGdldF9mcmFtZV9uZXdfYnVmZmVyKGNtKSwgdnA5X2dldF9x
dWFudGl6ZXIoY3BpKSwKLSAgICAgICAgY3BpLT5veGNmLmlucHV0X2JpdF9kZXB0aCwgY20tPmJp
dF9kZXB0aCwgY3BpLT50ZC5jb3VudHMsCi0jaWYgQ09ORklHX1JBVEVfQ1RSTAotICAgICAgICBj
cGktPnBhcnRpdGlvbl9pbmZvLCBjcGktPm1vdGlvbl92ZWN0b3JfaW5mbywKLSNlbmRpZiAgLy8g
Q09ORklHX1JBVEVfQ1RSTAotICAgICAgICBlbmNvZGVfZnJhbWVfcmVzdWx0KTsKKyAgICBQYXNz
MkVuY29kZShjcGksIHNpemUsIGRlc3QsIGZyYW1lX2ZsYWdzLCBlbmNvZGVfZnJhbWVfcmVzdWx0
KTsKICAgICB2cDlfdHdvcGFzc19wb3N0ZW5jb2RlX3VwZGF0ZShjcGkpOwogICB9IGVsc2UgaWYg
KGNwaS0+dXNlX3N2YykgewogICAgIFN2Y0VuY29kZShjcGksIHNpemUsIGRlc3QsIGZyYW1lX2Zs
YWdzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuaCBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuaAppbmRleCA4YjRjNmE1NzllYmRm
MTI1NGIzNGNiMzM5OTE0N2Y4NTNlZjQ2MTkzLi44NzYzYTVlNzg5NzRmMzM2NDI5OTA1NWU4N2Yy
Y2ZkMDQzYjA0ZmJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNv
ZGVyLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2Rlci5oCkBAIC0xNSw2
ICsxNSw3IEBACiAKICNpbmNsdWRlICIuL3ZweF9jb25maWcuaCIKICNpbmNsdWRlICJ2cHgvaW50
ZXJuYWwvdnB4X2NvZGVjX2ludGVybmFsLmgiCisjaW5jbHVkZSAidnB4L3ZweF9leHRfcmF0ZWN0
cmwuaCIKICNpbmNsdWRlICJ2cHgvdnA4Y3guaCIKICNpZiBDT05GSUdfSU5URVJOQUxfU1RBVFMK
ICNpbmNsdWRlICJ2cHhfZHNwL3NzaW0uaCIKQEAgLTM4LDYgKzM5LDcgQEAKICNpbmNsdWRlICJ2
cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmgiCiAjaW5jbHVkZSAidnA5L2VuY29kZXIvdnA5
X2VuY29kZW1iLmgiCiAjaW5jbHVkZSAidnA5L2VuY29kZXIvdnA5X2V0aHJlYWQuaCIKKyNpbmNs
dWRlICJ2cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmgiCiAjaW5jbHVkZSAidnA5L2VuY29k
ZXIvdnA5X2ZpcnN0cGFzcy5oIgogI2luY2x1ZGUgInZwOS9lbmNvZGVyL3ZwOV9qb2JfcXVldWUu
aCIKICNpbmNsdWRlICJ2cDkvZW5jb2Rlci92cDlfbG9va2FoZWFkLmgiCkBAIC0xNDcsNiArMTQ5
LDEyIEBAIHR5cGVkZWYgZW51bSB7CiAgIGtWZXJ5SGlnaFNhZCA9IDYsCiB9IENPTlRFTlRfU1RB
VEVfU0I7CiAKK3R5cGVkZWYgZW51bSB7CisgIExPT1BGSUxURVJfQUxMID0gMCwKKyAgTE9PUEZJ
TFRFUl9SRUZFUkVOQ0UgPSAxLCAgLy8gRGlzYWJsZSBsb29wZmlsdGVyIG9uIG5vbiByZWZlcmVu
Y2UgZnJhbWVzLgorICBOT19MT09QRklMVEVSID0gMiwgICAgICAgICAvLyBEaXNhYmxlIGxvb3Bm
aWx0ZXIgb24gYWxsIGZyYW1lcy4KK30gTE9PUEZJTFRFUl9DT05UUk9MOworCiB0eXBlZGVmIHN0
cnVjdCBWUDlFbmNvZGVyQ29uZmlnIHsKICAgQklUU1RSRUFNX1BST0ZJTEUgcHJvZmlsZTsKICAg
dnB4X2JpdF9kZXB0aF90IGJpdF9kZXB0aDsgICAgIC8vIENvZGVjIGJpdC1kZXB0aC4KQEAgLTUz
MiwyNCArNTQwLDgzIEBAIHR5cGVkZWYgc3RydWN0IE1PVElPTl9WRUNUT1JfSU5GTyB7CiAgIGlu
dF9tdiBtdlsyXTsKIH0gTU9USU9OX1ZFQ1RPUl9JTkZPOwogCit0eXBlZGVmIHN0cnVjdCBHT1Bf
Q09NTUFORCB7CisgIGludCB1c2U7ICAvLyB1c2UgdGhpcyBjb21tYW5kIHRvIHNldCBnb3Agb3Ig
bm90LiBJZiBub3QsIHVzZSB2cDkncyBkZWNpc2lvbi4KKyAgaW50IHNob3dfZnJhbWVfY291bnQ7
CisgIGludCB1c2VfYWx0X3JlZjsKK30gR09QX0NPTU1BTkQ7CisKK3N0YXRpYyBJTkxJTkUgdm9p
ZCBnb3BfY29tbWFuZF9vbihHT1BfQ09NTUFORCAqZ29wX2NvbW1hbmQsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaW50IHNob3dfZnJhbWVfY291bnQsIGludCB1c2VfYWx0X3Jl
ZikgeworICBnb3BfY29tbWFuZC0+dXNlID0gMTsKKyAgZ29wX2NvbW1hbmQtPnNob3dfZnJhbWVf
Y291bnQgPSBzaG93X2ZyYW1lX2NvdW50OworICBnb3BfY29tbWFuZC0+dXNlX2FsdF9yZWYgPSB1
c2VfYWx0X3JlZjsKK30KKworc3RhdGljIElOTElORSB2b2lkIGdvcF9jb21tYW5kX29mZihHT1Bf
Q09NTUFORCAqZ29wX2NvbW1hbmQpIHsKKyAgZ29wX2NvbW1hbmQtPnVzZSA9IDA7CisgIGdvcF9j
b21tYW5kLT5zaG93X2ZyYW1lX2NvdW50ID0gMDsKKyAgZ29wX2NvbW1hbmQtPnVzZV9hbHRfcmVm
ID0gMDsKK30KKworc3RhdGljIElOTElORSBpbnQgZ29wX2NvbW1hbmRfY29kaW5nX2ZyYW1lX2Nv
dW50KAorICAgIGNvbnN0IEdPUF9DT01NQU5EICpnb3BfY29tbWFuZCkgeworICBpZiAoZ29wX2Nv
bW1hbmQtPnVzZSA9PSAwKSB7CisgICAgYXNzZXJ0KDApOworICAgIHJldHVybiAtMTsKKyAgfQor
ICByZXR1cm4gZ29wX2NvbW1hbmQtPnNob3dfZnJhbWVfY291bnQgKyBnb3BfY29tbWFuZC0+dXNl
X2FsdF9yZWY7Cit9CisKKy8vIFRPRE8oYW5naWViaXJkKTogU2VlIGlmIHdlIGNhbiBtZXJnZSB0
aGlzIG9uZSB3aXRoIEZyYW1lVHlwZSBpbgorLy8gc2ltcGxlX2VuY29kZS5oCit0eXBlZGVmIGVu
dW0gRU5DT0RFX0ZSQU1FX1RZUEUgeworICBFTkNPREVfRlJBTUVfVFlQRV9LRVksCisgIEVOQ09E
RV9GUkFNRV9UWVBFX0lOVEVSLAorICBFTkNPREVfRlJBTUVfVFlQRV9BTFRSRUYsCisgIEVOQ09E
RV9GUkFNRV9UWVBFX09WRVJMQVksCisgIEVOQ09ERV9GUkFNRV9UWVBFX0dPTERFTiwKKyAgRU5D
T0RFX0ZSQU1FX1RZUEVTLAorfSBFTkNPREVfRlJBTUVfVFlQRTsKKworLy8gVE9ETyhhbmdpZWJp
cmQpOiBNZXJnZSB0aGlzIGZ1bmN0aW9uIHdpdGggZ2V0X2ZyYW1lX3R5cGVfZnJvbV91cGRhdGVf
dHlwZSgpCitzdGF0aWMgSU5MSU5FIEVOQ09ERV9GUkFNRV9UWVBFCitnZXRfZW5jb2RlX2ZyYW1l
X3R5cGUoRlJBTUVfVVBEQVRFX1RZUEUgdXBkYXRlX3R5cGUpIHsKKyAgc3dpdGNoICh1cGRhdGVf
dHlwZSkgeworICAgIGNhc2UgS0ZfVVBEQVRFOiByZXR1cm4gRU5DT0RFX0ZSQU1FX1RZUEVfS0VZ
OworICAgIGNhc2UgQVJGX1VQREFURTogcmV0dXJuIEVOQ09ERV9GUkFNRV9UWVBFX0FMVFJFRjsK
KyAgICBjYXNlIEdGX1VQREFURTogcmV0dXJuIEVOQ09ERV9GUkFNRV9UWVBFX0dPTERFTjsKKyAg
ICBjYXNlIE9WRVJMQVlfVVBEQVRFOiByZXR1cm4gRU5DT0RFX0ZSQU1FX1RZUEVfT1ZFUkxBWTsK
KyAgICBjYXNlIExGX1VQREFURTogcmV0dXJuIEVOQ09ERV9GUkFNRV9UWVBFX0lOVEVSOworICAg
IGRlZmF1bHQ6CisgICAgICBmcHJpbnRmKHN0ZGVyciwgIlVuc3VwcG9ydGVkIHVwZGF0ZV90eXBl
ICVkXG4iLCB1cGRhdGVfdHlwZSk7CisgICAgICBhYm9ydCgpOworICAgICAgcmV0dXJuIEVOQ09E
RV9GUkFNRV9UWVBFX0lOVEVSOworICB9Cit9CisKK3R5cGVkZWYgc3RydWN0IFJBVEVfUVNURVBf
TU9ERUwgeworICAvLyBUaGUgcnEgbW9kZWwgcHJlZGljdHMgdGhlIGJpdCB1c2FnZSBhcyBmb2xs
b3dzLgorICAvLyByYXRlID0gYmlhcyAtIHJhdGlvICogbG9nMihxX3N0ZXApCisgIGludCByZWFk
eTsKKyAgZG91YmxlIGJpYXM7CisgIGRvdWJsZSByYXRpbzsKK30gUkFURV9RU1RFUF9NT0RFTDsK
KwogdHlwZWRlZiBzdHJ1Y3QgRU5DT0RFX0NPTU1BTkQgewogICBpbnQgdXNlX2V4dGVybmFsX3F1
YW50aXplX2luZGV4OwogICBpbnQgZXh0ZXJuYWxfcXVhbnRpemVfaW5kZXg7Ci0gIC8vIEEgbGlz
dCBvZiBiaW5hcnkgZmxhZ3Mgc2V0IGZyb20gdGhlIGV4dGVybmFsIGNvbnRyb2xsZXIuCi0gIC8v
IEVhY2ggYmluYXJ5IGZsYWcgaW5kaWNhdGVzIHdoZXRoZXIgdGhlIGZyYW1lIGlzIGFuIGFyZiBv
ciBub3QuCi0gIGNvbnN0IGludCAqZXh0ZXJuYWxfYXJmX2luZGV4ZXM7Ci19IEVOQ09ERV9DT01N
QU5EOwogCi1zdGF0aWMgSU5MSU5FIHZvaWQgZW5jb2RlX2NvbW1hbmRfaW5pdChFTkNPREVfQ09N
TUFORCAqZW5jb2RlX2NvbW1hbmQpIHsKLSAgdnA5X3plcm8oKmVuY29kZV9jb21tYW5kKTsKLSAg
ZW5jb2RlX2NvbW1hbmQtPnVzZV9leHRlcm5hbF9xdWFudGl6ZV9pbmRleCA9IDA7Ci0gIGVuY29k
ZV9jb21tYW5kLT5leHRlcm5hbF9xdWFudGl6ZV9pbmRleCA9IC0xOwotICBlbmNvZGVfY29tbWFu
ZC0+ZXh0ZXJuYWxfYXJmX2luZGV4ZXMgPSBOVUxMOwotfQorICBpbnQgdXNlX2V4dGVybmFsX3Rh
cmdldF9mcmFtZV9iaXRzOworICBpbnQgdGFyZ2V0X2ZyYW1lX2JpdHM7CisgIGRvdWJsZSB0YXJn
ZXRfZnJhbWVfYml0c19lcnJvcl9wZXJjZW50OworCisgIEdPUF9DT01NQU5EIGdvcF9jb21tYW5k
OworfSBFTkNPREVfQ09NTUFORDsKIAotc3RhdGljIElOTElORSB2b2lkIGVuY29kZV9jb21tYW5k
X3NldF9leHRlcm5hbF9hcmZfaW5kZXhlcygKLSAgICBFTkNPREVfQ09NTUFORCAqZW5jb2RlX2Nv
bW1hbmQsIGNvbnN0IGludCAqZXh0ZXJuYWxfYXJmX2luZGV4ZXMpIHsKLSAgZW5jb2RlX2NvbW1h
bmQtPmV4dGVybmFsX2FyZl9pbmRleGVzID0gZXh0ZXJuYWxfYXJmX2luZGV4ZXM7CitzdGF0aWMg
SU5MSU5FIHZvaWQgZW5jb2RlX2NvbW1hbmRfc2V0X2dvcF9jb21tYW5kKAorICAgIEVOQ09ERV9D
T01NQU5EICplbmNvZGVfY29tbWFuZCwgR09QX0NPTU1BTkQgZ29wX2NvbW1hbmQpIHsKKyAgZW5j
b2RlX2NvbW1hbmQtPmdvcF9jb21tYW5kID0gZ29wX2NvbW1hbmQ7CiB9CiAKIHN0YXRpYyBJTkxJ
TkUgdm9pZCBlbmNvZGVfY29tbWFuZF9zZXRfZXh0ZXJuYWxfcXVhbnRpemVfaW5kZXgoCkBAIC01
NjQsOSArNjMxLDM1IEBAIHN0YXRpYyBJTkxJTkUgdm9pZCBlbmNvZGVfY29tbWFuZF9yZXNldF9l
eHRlcm5hbF9xdWFudGl6ZV9pbmRleCgKICAgZW5jb2RlX2NvbW1hbmQtPmV4dGVybmFsX3F1YW50
aXplX2luZGV4ID0gLTE7CiB9CiAKK3N0YXRpYyBJTkxJTkUgdm9pZCBlbmNvZGVfY29tbWFuZF9z
ZXRfdGFyZ2V0X2ZyYW1lX2JpdHMoCisgICAgRU5DT0RFX0NPTU1BTkQgKmVuY29kZV9jb21tYW5k
LCBpbnQgdGFyZ2V0X2ZyYW1lX2JpdHMsCisgICAgZG91YmxlIHRhcmdldF9mcmFtZV9iaXRzX2Vy
cm9yX3BlcmNlbnQpIHsKKyAgZW5jb2RlX2NvbW1hbmQtPnVzZV9leHRlcm5hbF90YXJnZXRfZnJh
bWVfYml0cyA9IDE7CisgIGVuY29kZV9jb21tYW5kLT50YXJnZXRfZnJhbWVfYml0cyA9IHRhcmdl
dF9mcmFtZV9iaXRzOworICBlbmNvZGVfY29tbWFuZC0+dGFyZ2V0X2ZyYW1lX2JpdHNfZXJyb3Jf
cGVyY2VudCA9CisgICAgICB0YXJnZXRfZnJhbWVfYml0c19lcnJvcl9wZXJjZW50OworfQorCitz
dGF0aWMgSU5MSU5FIHZvaWQgZW5jb2RlX2NvbW1hbmRfcmVzZXRfdGFyZ2V0X2ZyYW1lX2JpdHMo
CisgICAgRU5DT0RFX0NPTU1BTkQgKmVuY29kZV9jb21tYW5kKSB7CisgIGVuY29kZV9jb21tYW5k
LT51c2VfZXh0ZXJuYWxfdGFyZ2V0X2ZyYW1lX2JpdHMgPSAwOworICBlbmNvZGVfY29tbWFuZC0+
dGFyZ2V0X2ZyYW1lX2JpdHMgPSAtMTsKKyAgZW5jb2RlX2NvbW1hbmQtPnRhcmdldF9mcmFtZV9i
aXRzX2Vycm9yX3BlcmNlbnQgPSAwOworfQorCitzdGF0aWMgSU5MSU5FIHZvaWQgZW5jb2RlX2Nv
bW1hbmRfaW5pdChFTkNPREVfQ09NTUFORCAqZW5jb2RlX2NvbW1hbmQpIHsKKyAgdnA5X3plcm8o
KmVuY29kZV9jb21tYW5kKTsKKyAgZW5jb2RlX2NvbW1hbmRfcmVzZXRfZXh0ZXJuYWxfcXVhbnRp
emVfaW5kZXgoZW5jb2RlX2NvbW1hbmQpOworICBlbmNvZGVfY29tbWFuZF9yZXNldF90YXJnZXRf
ZnJhbWVfYml0cyhlbmNvZGVfY29tbWFuZCk7CisgIGdvcF9jb21tYW5kX29mZigmZW5jb2RlX2Nv
bW1hbmQtPmdvcF9jb21tYW5kKTsKK30KKwogLy8gUmV0dXJucyBudW1iZXIgb2YgdW5pdHMgaW4g
c2l6ZSBvZiA0LCBpZiBub3QgbXVsdGlwbGUgbm90IGEgbXVsdGlwbGUgb2YgNCwKIC8vIHJvdW5k
IGl0IHVwLiBGb3IgZXhhbXBsZSwgc2l6ZSBpcyA3LCByZXR1cm4gMi4KIHN0YXRpYyBJTkxJTkUg
aW50IGdldF9udW1fdW5pdF80eDQoaW50IHNpemUpIHsgcmV0dXJuIChzaXplICsgMykgPj4gMjsg
fQorLy8gUmV0dXJucyBudW1iZXIgb2YgdW5pdHMgaW4gc2l6ZSBvZiAxNiwgaWYgbm90IG11bHRp
cGxlIG5vdCBhIG11bHRpcGxlIG9mIDE2LAorLy8gcm91bmQgaXQgdXAuIEZvciBleGFtcGxlLCBz
aXplIGlzIDE3LCByZXR1cm4gMi4KK3N0YXRpYyBJTkxJTkUgaW50IGdldF9udW1fdW5pdF8xNngx
NihpbnQgc2l6ZSkgeyByZXR1cm4gKHNpemUgKyAxNSkgPj4gNDsgfQogI2VuZGlmICAvLyBDT05G
SUdfUkFURV9DVFJMCiAKIHR5cGVkZWYgc3RydWN0IFZQOV9DT01QIHsKQEAgLTg3MywxMSArOTY2
LDE4IEBAIHR5cGVkZWYgc3RydWN0IFZQOV9DT01QIHsKIAogICBpbnQgbXVsdGlfbGF5ZXJfYXJm
OwogICB2cHhfcm9pX21hcF90IHJvaTsKKworICBMT09QRklMVEVSX0NPTlRST0wgbG9vcGZpbHRl
cl9jdHJsOwogI2lmIENPTkZJR19SQVRFX0NUUkwKICAgRU5DT0RFX0NPTU1BTkQgZW5jb2RlX2Nv
bW1hbmQ7CiAgIFBBUlRJVElPTl9JTkZPICpwYXJ0aXRpb25faW5mbzsKICAgTU9USU9OX1ZFQ1RP
Ul9JTkZPICptb3Rpb25fdmVjdG9yX2luZm87CisgIE1PVElPTl9WRUNUT1JfSU5GTyAqZnBfbW90
aW9uX3ZlY3Rvcl9pbmZvOworICBUcGxEZXBTdGF0cyAqdHBsX3N0YXRzX2luZm87CisKKyAgUkFU
RV9RU1RFUF9NT0RFTCBycV9tb2RlbFtFTkNPREVfRlJBTUVfVFlQRVNdOwogI2VuZGlmCisgIEVY
VF9SQVRFQ1RSTCBleHRfcmF0ZWN0cmw7CiB9IFZQOV9DT01QOwogCiAjaWYgQ09ORklHX1JBVEVf
Q1RSTApAQCAtOTAyLDYgKzEwMDIsMTMgQEAgc3RhdGljIElOTElORSB2b2lkIGZyZWVfcGFydGl0
aW9uX2luZm8oc3RydWN0IFZQOV9DT01QICpjcGkpIHsKICAgY3BpLT5wYXJ0aXRpb25faW5mbyA9
IE5VTEw7CiB9CiAKK3N0YXRpYyBJTkxJTkUgdm9pZCByZXNldF9tdl9pbmZvKE1PVElPTl9WRUNU
T1JfSU5GTyAqbXZfaW5mbykgeworICBtdl9pbmZvLT5yZWZfZnJhbWVbMF0gPSBOT05FOworICBt
dl9pbmZvLT5yZWZfZnJhbWVbMV0gPSBOT05FOworICBtdl9pbmZvLT5tdlswXS5hc19pbnQgPSBJ
TlZBTElEX01WOworICBtdl9pbmZvLT5tdlsxXS5hc19pbnQgPSBJTlZBTElEX01WOworfQorCiAv
LyBBbGxvY2F0ZXMgbWVtb3J5IGZvciB0aGUgbW90aW9uIHZlY3RvciBpbmZvcm1hdGlvbi4KIC8v
IFRoZSB1bml0IHNpemUgaXMgZWFjaCA0eDQgYmxvY2suCiAvLyBPbmx5IGNhbGxlZCBvbmNlIGlu
IHZwOV9jcmVhdGVfY29tcHJlc3NvcigpLgpAQCAtOTIzLDYgKzEwMzAsNTMgQEAgc3RhdGljIElO
TElORSB2b2lkIGZyZWVfbW90aW9uX3ZlY3Rvcl9pbmZvKHN0cnVjdCBWUDlfQ09NUCAqY3BpKSB7
CiAgIGNwaS0+bW90aW9uX3ZlY3Rvcl9pbmZvID0gTlVMTDsKIH0KIAorLy8gQWxsb2NhdGVzIG1l
bW9yeSBmb3IgdGhlIHRwbCBzdGF0cyBpbmZvcm1hdGlvbi4KKy8vIE9ubHkgY2FsbGVkIG9uY2Ug
aW4gdnA5X2NyZWF0ZV9jb21wcmVzc29yKCkuCitzdGF0aWMgSU5MSU5FIHZvaWQgdHBsX3N0YXRz
X2luZm9faW5pdChzdHJ1Y3QgVlA5X0NPTVAgKmNwaSkgeworICBWUDlfQ09NTU9OICpjb25zdCBj
bSA9ICZjcGktPmNvbW1vbjsKKyAgQ0hFQ0tfTUVNX0VSUk9SKAorICAgICAgY20sIGNwaS0+dHBs
X3N0YXRzX2luZm8sCisgICAgICAoVHBsRGVwU3RhdHMgKil2cHhfY2FsbG9jKE1BWF9MQUdfQlVG
RkVSUywgc2l6ZW9mKFRwbERlcFN0YXRzKSkpOworICBtZW1zZXQoY3BpLT50cGxfc3RhdHNfaW5m
bywgMCwgTUFYX0xBR19CVUZGRVJTICogc2l6ZW9mKFRwbERlcFN0YXRzKSk7Cit9CisKKy8vIEZy
ZWVzIG1lbW9yeSBvZiB0aGUgdHBsIHN0YXRzIGluZm9ybWF0aW9uLgorLy8gT25seSBjYWxsZWQg
b25jZSBpbiBkZWFsbG9jX2NvbXByZXNzb3JfZGF0YSgpLgorc3RhdGljIElOTElORSB2b2lkIGZy
ZWVfdHBsX3N0YXRzX2luZm8oc3RydWN0IFZQOV9DT01QICpjcGkpIHsKKyAgdnB4X2ZyZWUoY3Bp
LT50cGxfc3RhdHNfaW5mbyk7CisgIGNwaS0+dHBsX3N0YXRzX2luZm8gPSBOVUxMOworfQorCisv
LyBBbGxvY2F0ZXMgbWVtb3J5IGZvciB0aGUgZmlyc3QgcGFzcyBtb3Rpb24gdmVjdG9yIGluZm9y
bWF0aW9uLgorLy8gVGhlIHVuaXQgc2l6ZSBpcyBlYWNoIDE2eDE2IGJsb2NrLgorLy8gT25seSBj
YWxsZWQgb25jZSBpbiB2cDlfY3JlYXRlX2NvbXByZXNzb3IoKS4KK3N0YXRpYyBJTkxJTkUgdm9p
ZCBmcF9tb3Rpb25fdmVjdG9yX2luZm9faW5pdChzdHJ1Y3QgVlA5X0NPTVAgKmNwaSkgeworICBW
UDlfQ09NTU9OICpjb25zdCBjbSA9ICZjcGktPmNvbW1vbjsKKyAgY29uc3QgaW50IHVuaXRfd2lk
dGggPSBnZXRfbnVtX3VuaXRfMTZ4MTYoY3BpLT5mcmFtZV9pbmZvLmZyYW1lX3dpZHRoKTsKKyAg
Y29uc3QgaW50IHVuaXRfaGVpZ2h0ID0gZ2V0X251bV91bml0XzE2eDE2KGNwaS0+ZnJhbWVfaW5m
by5mcmFtZV9oZWlnaHQpOworICBDSEVDS19NRU1fRVJST1IoY20sIGNwaS0+ZnBfbW90aW9uX3Zl
Y3Rvcl9pbmZvLAorICAgICAgICAgICAgICAgICAgKE1PVElPTl9WRUNUT1JfSU5GTyAqKXZweF9j
YWxsb2ModW5pdF93aWR0aCAqIHVuaXRfaGVpZ2h0LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKE1PVElPTl9WRUNUT1JfSU5GTykpKTsK
K30KKworc3RhdGljIElOTElORSB2b2lkIGZwX21vdGlvbl92ZWN0b3JfaW5mb19yZXNldCgKKyAg
ICBpbnQgZnJhbWVfd2lkdGgsIGludCBmcmFtZV9oZWlnaHQsCisgICAgTU9USU9OX1ZFQ1RPUl9J
TkZPICpmcF9tb3Rpb25fdmVjdG9yX2luZm8pIHsKKyAgY29uc3QgaW50IHVuaXRfd2lkdGggPSBn
ZXRfbnVtX3VuaXRfMTZ4MTYoZnJhbWVfd2lkdGgpOworICBjb25zdCBpbnQgdW5pdF9oZWlnaHQg
PSBnZXRfbnVtX3VuaXRfMTZ4MTYoZnJhbWVfaGVpZ2h0KTsKKyAgaW50IGk7CisgIGZvciAoaSA9
IDA7IGkgPCB1bml0X3dpZHRoICogdW5pdF9oZWlnaHQ7ICsraSkgeworICAgIHJlc2V0X212X2lu
Zm8oZnBfbW90aW9uX3ZlY3Rvcl9pbmZvICsgaSk7CisgIH0KK30KKworLy8gRnJlZXMgbWVtb3J5
IG9mIHRoZSBmaXJzdCBwYXNzIG1vdGlvbiB2ZWN0b3IgaW5mb3JtYXRpb24uCisvLyBPbmx5IGNh
bGxlZCBvbmNlIGluIGRlYWxsb2NfY29tcHJlc3Nvcl9kYXRhKCkuCitzdGF0aWMgSU5MSU5FIHZv
aWQgZnJlZV9mcF9tb3Rpb25fdmVjdG9yX2luZm8oc3RydWN0IFZQOV9DT01QICpjcGkpIHsKKyAg
dnB4X2ZyZWUoY3BpLT5mcF9tb3Rpb25fdmVjdG9yX2luZm8pOworICBjcGktPmZwX21vdGlvbl92
ZWN0b3JfaW5mbyA9IE5VTEw7Cit9CisKIC8vIFRoaXMgaXMgdGhlIGMtdmVyc2lvbiBjb3VudGVy
IHBhcnQgb2YgSW1hZ2VCdWZmZXIKIHR5cGVkZWYgc3RydWN0IElNQUdFX0JVRkZFUiB7CiAgIGlu
dCBhbGxvY2F0ZWQ7CkBAIC05MzAsMTggKzEwODQsMzQgQEAgdHlwZWRlZiBzdHJ1Y3QgSU1BR0Vf
QlVGRkVSIHsKICAgaW50IHBsYW5lX2hlaWdodFszXTsKICAgdWludDhfdCAqcGxhbmVfYnVmZmVy
WzNdOwogfSBJTUFHRV9CVUZGRVI7CisKKyNkZWZpbmUgUkFURV9DVFJMX01BWF9SRUNPREVfTlVN
IDcKKwordHlwZWRlZiBzdHJ1Y3QgUkFURV9RSU5ERVhfSElTVE9SWSB7CisgIGludCByZWNvZGVf
Y291bnQ7CisgIGludCBxX2luZGV4X2hpc3RvcnlbUkFURV9DVFJMX01BWF9SRUNPREVfTlVNXTsK
KyAgaW50IHJhdGVfaGlzdG9yeVtSQVRFX0NUUkxfTUFYX1JFQ09ERV9OVU1dOworICBpbnQgcV9p
bmRleF9oaWdoOworICBpbnQgcV9pbmRleF9sb3c7Cit9IFJBVEVfUUlOREVYX0hJU1RPUlk7CisK
ICNlbmRpZiAgLy8gQ09ORklHX1JBVEVfQ1RSTAogCiB0eXBlZGVmIHN0cnVjdCBFTkNPREVfRlJB
TUVfUkVTVUxUIHsKICAgaW50IHNob3dfaWR4OwogICBGUkFNRV9VUERBVEVfVFlQRSB1cGRhdGVf
dHlwZTsKICNpZiBDT05GSUdfUkFURV9DVFJMCisgIGludCBmcmFtZV9jb2RpbmdfaW5kZXg7Cisg
IGludCByZWZfZnJhbWVfY29kaW5nX2luZGV4ZXNbTUFYX0lOVEVSX1JFRl9GUkFNRVNdOworICBp
bnQgcmVmX2ZyYW1lX3ZhbGlkX2xpc3RbTUFYX0lOVEVSX1JFRl9GUkFNRVNdOwogICBkb3VibGUg
cHNucjsKICAgdWludDY0X3Qgc3NlOwogICBGUkFNRV9DT1VOVFMgZnJhbWVfY291bnRzOwogICBj
b25zdCBQQVJUSVRJT05fSU5GTyAqcGFydGl0aW9uX2luZm87CiAgIGNvbnN0IE1PVElPTl9WRUNU
T1JfSU5GTyAqbW90aW9uX3ZlY3Rvcl9pbmZvOworICBjb25zdCBUcGxEZXBTdGF0cyAqdHBsX3N0
YXRzX2luZm87CiAgIElNQUdFX0JVRkZFUiBjb2RlZF9mcmFtZTsKKyAgUkFURV9RSU5ERVhfSElT
VE9SWSBycV9oaXN0b3J5OwogI2VuZGlmICAvLyBDT05GSUdfUkFURV9DVFJMCiAgIGludCBxdWFu
dGl6ZV9pbmRleDsKIH0gRU5DT0RFX0ZSQU1FX1JFU1VMVDsKQEAgLTk5Nyw2ICsxMTY3LDE0IEBA
IGludCB2cDlfc2V0X3NpemVfbGl0ZXJhbChWUDlfQ09NUCAqY3BpLCB1bnNpZ25lZCBpbnQgd2lk
dGgsCiAKIHZvaWQgdnA5X3NldF9zdmMoVlA5X0NPTVAgKmNwaSwgaW50IHVzZV9zdmMpOwogCisv
LyBDaGVjayBmb3IgcmVzZXR0aW5nIHRoZSByYyBmbGFncyAocmNfMV9mcmFtZSwgcmNfMl9mcmFt
ZSkgaWYgdGhlCisvLyBjb25maWd1cmF0aW9uIGNoYW5nZSBoYXMgYSBsYXJnZSBjaGFuZ2UgaW4g
YXZnX2ZyYW1lX2JhbmR3aWR0aC4KKy8vIEZvciBTVkMgY2hlY2sgZm9yIHJlc2V0dGluZyBiYXNl
ZCBvbiBzcGF0aWFsIGxheWVyIGF2ZXJhZ2UgYmFuZHdpZHRoLgorLy8gQWxzbyByZXNldCBidWZm
ZXIgbGV2ZWwgdG8gb3B0aW1hbCBsZXZlbC4KK3ZvaWQgdnA5X2NoZWNrX3Jlc2V0X3JjX2ZsYWco
VlA5X0NPTVAgKmNwaSk7CisKK3ZvaWQgdnA5X3NldF9yY19idWZmZXJfc2l6ZXMoVlA5X0NPTVAg
KmNwaSk7CisKIHN0YXRpYyBJTkxJTkUgaW50IHN0YWNrX3BvcChpbnQgKnN0YWNrLCBpbnQgc3Rh
Y2tfc2l6ZSkgewogICBpbnQgaWR4OwogICBjb25zdCBpbnQgciA9IHN0YWNrWzBdOwpAQCAtMTA0
MywxMCArMTIyMSwyMiBAQCBzdGF0aWMgSU5MSU5FIGludCBnZXRfcmVmX2ZyYW1lX2J1Zl9pZHgo
Y29uc3QgVlA5X0NPTVAgKmNvbnN0IGNwaSwKICAgcmV0dXJuIChtYXBfaWR4ICE9IElOVkFMSURf
SURYKSA/IGNtLT5yZWZfZnJhbWVfbWFwW21hcF9pZHhdIDogSU5WQUxJRF9JRFg7CiB9CiAKLXN0
YXRpYyBJTkxJTkUgUmVmQ250QnVmZmVyICpnZXRfcmVmX2NudF9idWZmZXIoVlA5X0NPTU1PTiAq
Y20sIGludCBmYl9pZHgpIHsKK3N0YXRpYyBJTkxJTkUgUmVmQ250QnVmZmVyICpnZXRfcmVmX2Nu
dF9idWZmZXIoY29uc3QgVlA5X0NPTU1PTiAqY20sCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGludCBmYl9pZHgpIHsKICAgcmV0dXJuIGZiX2lkeCAhPSBJ
TlZBTElEX0lEWCA/ICZjbS0+YnVmZmVyX3Bvb2wtPmZyYW1lX2J1ZnNbZmJfaWR4XSA6IE5VTEw7
CiB9CiAKK3N0YXRpYyBJTkxJTkUgdm9pZCBnZXRfcmVmX2ZyYW1lX2J1ZnMoCisgICAgY29uc3Qg
VlA5X0NPTVAgKmNwaSwgUmVmQ250QnVmZmVyICpyZWZfZnJhbWVfYnVmc1tNQVhfSU5URVJfUkVG
X0ZSQU1FU10pIHsKKyAgY29uc3QgVlA5X0NPTU1PTiAqY29uc3QgY20gPSAmY3BpLT5jb21tb247
CisgIE1WX1JFRkVSRU5DRV9GUkFNRSByZWZfZnJhbWU7CisgIGZvciAocmVmX2ZyYW1lID0gTEFT
VF9GUkFNRTsgcmVmX2ZyYW1lIDwgTUFYX1JFRl9GUkFNRVM7ICsrcmVmX2ZyYW1lKSB7CisgICAg
aW50IHJlZl9mcmFtZV9idWZfaWR4ID0gZ2V0X3JlZl9mcmFtZV9idWZfaWR4KGNwaSwgcmVmX2Zy
YW1lKTsKKyAgICBpbnQgaW50ZXJfcmVmX2lkeCA9IG12X3JlZl9mcmFtZV90b19pbnRlcl9yZWZf
aWR4KHJlZl9mcmFtZSk7CisgICAgcmVmX2ZyYW1lX2J1ZnNbaW50ZXJfcmVmX2lkeF0gPSBnZXRf
cmVmX2NudF9idWZmZXIoY20sIHJlZl9mcmFtZV9idWZfaWR4KTsKKyAgfQorfQorCiBzdGF0aWMg
SU5MSU5FIFlWMTJfQlVGRkVSX0NPTkZJRyAqZ2V0X3JlZl9mcmFtZV9idWZmZXIoCiAgICAgY29u
c3QgVlA5X0NPTVAgKmNvbnN0IGNwaSwgTVZfUkVGRVJFTkNFX0ZSQU1FIHJlZl9mcmFtZSkgewog
ICBjb25zdCBWUDlfQ09NTU9OICpjb25zdCBjbSA9ICZjcGktPmNvbW1vbjsKQEAgLTEwOTcsNiAr
MTI4NywxMSBAQCB2b2lkIHZwOV9zY2FsZV9yZWZlcmVuY2VzKFZQOV9DT01QICpjcGkpOwogCiB2
b2lkIHZwOV91cGRhdGVfcmVmZXJlbmNlX2ZyYW1lcyhWUDlfQ09NUCAqY3BpKTsKIAordm9pZCB2
cDlfZ2V0X3JlZl9mcmFtZV9pbmZvKEZSQU1FX1VQREFURV9UWVBFIHVwZGF0ZV90eXBlLCBpbnQg
cmVmX2ZyYW1lX2ZsYWdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlZkNudEJ1ZmZl
ciAqcmVmX2ZyYW1lX2J1ZnNbTUFYX0lOVEVSX1JFRl9GUkFNRVNdLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGludCAqcmVmX2ZyYW1lX2NvZGluZ19pbmRleGVzLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGludCAqcmVmX2ZyYW1lX3ZhbGlkX2xpc3QpOworCiB2b2lkIHZwOV9z
ZXRfaGlnaF9wcmVjaXNpb25fbXYoVlA5X0NPTVAgKmNwaSwgaW50IGFsbG93X2hpZ2hfcHJlY2lz
aW9uX212KTsKIAogWVYxMl9CVUZGRVJfQ09ORklHICp2cDlfc3ZjX3R3b3N0YWdlX3NjYWxlKApk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmMgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRfcmF0ZWN0cmwuYwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hMjdl
YjY1M2JhMzhkYTM0MDFhMGVmYjUzYmIwYmUyNTAzMGFiZjU4Ci0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmMKQEAgLTAsMCArMSwxOTkg
QEAKKy8qCisgKiAgQ29weXJpZ2h0IChjKSAyMDIwIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4g
QWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyAqCisgKiAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMg
Z292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZQorICogIHRoYXQgY2FuIGJlIGZvdW5kIGlu
IHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZQorICogIHRyZWUuIEFu
IGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91
bmQKKyAqICBpbiB0aGUgZmlsZSBQQVRFTlRTLiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1
dGhvcnMgbWF5CisgKiAgYmUgZm91bmQgaW4gdGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBv
ZiB0aGUgc291cmNlIHRyZWUuCisgKi8KKworI2luY2x1ZGUgInZwOS9lbmNvZGVyL3ZwOV9leHRf
cmF0ZWN0cmwuaCIKKyNpbmNsdWRlICJ2cDkvZW5jb2Rlci92cDlfZW5jb2Rlci5oIgorI2luY2x1
ZGUgInZwOS9jb21tb24vdnA5X2NvbW1vbi5oIgorI2luY2x1ZGUgInZweF9kc3AvcHNuci5oIgor
Cit2cHhfY29kZWNfZXJyX3QgdnA5X2V4dHJjX2luaXQoRVhUX1JBVEVDVFJMICpleHRfcmF0ZWN0
cmwpIHsKKyAgaWYgKGV4dF9yYXRlY3RybCA9PSBOVUxMKSB7CisgICAgcmV0dXJuIFZQWF9DT0RF
Q19JTlZBTElEX1BBUkFNOworICB9CisgIHZwOV96ZXJvKCpleHRfcmF0ZWN0cmwpOworICByZXR1
cm4gVlBYX0NPREVDX09LOworfQorCit2cHhfY29kZWNfZXJyX3QgdnA5X2V4dHJjX2NyZWF0ZSh2
cHhfcmNfZnVuY3NfdCBmdW5jcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZw
eF9yY19jb25maWdfdCByYXRlY3RybF9jb25maWcsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBFWFRfUkFURUNUUkwgKmV4dF9yYXRlY3RybCkgeworICB2cHhfcmNfc3RhdHVzX3Qg
cmNfc3RhdHVzOworICB2cHhfcmNfZmlyc3RwYXNzX3N0YXRzX3QgKnJjX2ZpcnN0cGFzc19zdGF0
czsKKyAgaWYgKGV4dF9yYXRlY3RybCA9PSBOVUxMKSB7CisgICAgcmV0dXJuIFZQWF9DT0RFQ19J
TlZBTElEX1BBUkFNOworICB9CisgIHZwOV9leHRyY19kZWxldGUoZXh0X3JhdGVjdHJsKTsKKyAg
ZXh0X3JhdGVjdHJsLT5mdW5jcyA9IGZ1bmNzOworICBleHRfcmF0ZWN0cmwtPnJhdGVjdHJsX2Nv
bmZpZyA9IHJhdGVjdHJsX2NvbmZpZzsKKyAgcmNfc3RhdHVzID0gZXh0X3JhdGVjdHJsLT5mdW5j
cy5jcmVhdGVfbW9kZWwoZXh0X3JhdGVjdHJsLT5mdW5jcy5wcml2LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZXh0X3JhdGVjdHJsLT5yYXRlY3RybF9j
b25maWcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZl
eHRfcmF0ZWN0cmwtPm1vZGVsKTsKKyAgaWYgKHJjX3N0YXR1cyA9PSBWUFhfUkNfRVJST1IpIHsK
KyAgICByZXR1cm4gVlBYX0NPREVDX0VSUk9SOworICB9CisgIHJjX2ZpcnN0cGFzc19zdGF0cyA9
ICZleHRfcmF0ZWN0cmwtPnJjX2ZpcnN0cGFzc19zdGF0czsKKyAgcmNfZmlyc3RwYXNzX3N0YXRz
LT5udW1fZnJhbWVzID0gcmF0ZWN0cmxfY29uZmlnLnNob3dfZnJhbWVfY291bnQ7CisgIHJjX2Zp
cnN0cGFzc19zdGF0cy0+ZnJhbWVfc3RhdHMgPQorICAgICAgdnB4X21hbGxvYyhzaXplb2YoKnJj
X2ZpcnN0cGFzc19zdGF0cy0+ZnJhbWVfc3RhdHMpICoKKyAgICAgICAgICAgICAgICAgcmNfZmly
c3RwYXNzX3N0YXRzLT5udW1fZnJhbWVzKTsKKyAgaWYgKHJjX2ZpcnN0cGFzc19zdGF0cy0+ZnJh
bWVfc3RhdHMgPT0gTlVMTCkgeworICAgIHJldHVybiBWUFhfQ09ERUNfTUVNX0VSUk9SOworICB9
CisgIGV4dF9yYXRlY3RybC0+cmVhZHkgPSAxOworICByZXR1cm4gVlBYX0NPREVDX09LOworfQor
Cit2cHhfY29kZWNfZXJyX3QgdnA5X2V4dHJjX2RlbGV0ZShFWFRfUkFURUNUUkwgKmV4dF9yYXRl
Y3RybCkgeworICBpZiAoZXh0X3JhdGVjdHJsID09IE5VTEwpIHsKKyAgICByZXR1cm4gVlBYX0NP
REVDX0lOVkFMSURfUEFSQU07CisgIH0KKyAgaWYgKGV4dF9yYXRlY3RybC0+cmVhZHkpIHsKKyAg
ICB2cHhfcmNfc3RhdHVzX3QgcmNfc3RhdHVzID0KKyAgICAgICAgZXh0X3JhdGVjdHJsLT5mdW5j
cy5kZWxldGVfbW9kZWwoZXh0X3JhdGVjdHJsLT5tb2RlbCk7CisgICAgaWYgKHJjX3N0YXR1cyA9
PSBWUFhfUkNfRVJST1IpIHsKKyAgICAgIHJldHVybiBWUFhfQ09ERUNfRVJST1I7CisgICAgfQor
ICAgIHZweF9mcmVlKGV4dF9yYXRlY3RybC0+cmNfZmlyc3RwYXNzX3N0YXRzLmZyYW1lX3N0YXRz
KTsKKyAgfQorICByZXR1cm4gdnA5X2V4dHJjX2luaXQoZXh0X3JhdGVjdHJsKTsKK30KKworc3Rh
dGljIHZvaWQgZ2VuX3JjX2ZpcnN0cGFzc19zdGF0cyhjb25zdCBGSVJTVFBBU1NfU1RBVFMgKnN0
YXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2cHhfcmNfZnJhbWVfc3Rh
dHNfdCAqcmNfZnJhbWVfc3RhdHMpIHsKKyAgcmNfZnJhbWVfc3RhdHMtPmZyYW1lID0gc3RhdHMt
PmZyYW1lOworICByY19mcmFtZV9zdGF0cy0+d2VpZ2h0ID0gc3RhdHMtPndlaWdodDsKKyAgcmNf
ZnJhbWVfc3RhdHMtPmludHJhX2Vycm9yID0gc3RhdHMtPmludHJhX2Vycm9yOworICByY19mcmFt
ZV9zdGF0cy0+Y29kZWRfZXJyb3IgPSBzdGF0cy0+Y29kZWRfZXJyb3I7CisgIHJjX2ZyYW1lX3N0
YXRzLT5zcl9jb2RlZF9lcnJvciA9IHN0YXRzLT5zcl9jb2RlZF9lcnJvcjsKKyAgcmNfZnJhbWVf
c3RhdHMtPmZyYW1lX25vaXNlX2VuZXJneSA9IHN0YXRzLT5mcmFtZV9ub2lzZV9lbmVyZ3k7Cisg
IHJjX2ZyYW1lX3N0YXRzLT5wY250X2ludGVyID0gc3RhdHMtPnBjbnRfaW50ZXI7CisgIHJjX2Zy
YW1lX3N0YXRzLT5wY250X21vdGlvbiA9IHN0YXRzLT5wY250X21vdGlvbjsKKyAgcmNfZnJhbWVf
c3RhdHMtPnBjbnRfc2Vjb25kX3JlZiA9IHN0YXRzLT5wY250X3NlY29uZF9yZWY7CisgIHJjX2Zy
YW1lX3N0YXRzLT5wY250X25ldXRyYWwgPSBzdGF0cy0+cGNudF9uZXV0cmFsOworICByY19mcmFt
ZV9zdGF0cy0+cGNudF9pbnRyYV9sb3cgPSBzdGF0cy0+cGNudF9pbnRyYV9sb3c7CisgIHJjX2Zy
YW1lX3N0YXRzLT5wY250X2ludHJhX2hpZ2ggPSBzdGF0cy0+cGNudF9pbnRyYV9oaWdoOworICBy
Y19mcmFtZV9zdGF0cy0+aW50cmFfc2tpcF9wY3QgPSBzdGF0cy0+aW50cmFfc2tpcF9wY3Q7Cisg
IHJjX2ZyYW1lX3N0YXRzLT5pbnRyYV9zbW9vdGhfcGN0ID0gc3RhdHMtPmludHJhX3Ntb290aF9w
Y3Q7CisgIHJjX2ZyYW1lX3N0YXRzLT5pbmFjdGl2ZV96b25lX3Jvd3MgPSBzdGF0cy0+aW5hY3Rp
dmVfem9uZV9yb3dzOworICByY19mcmFtZV9zdGF0cy0+aW5hY3RpdmVfem9uZV9jb2xzID0gc3Rh
dHMtPmluYWN0aXZlX3pvbmVfY29sczsKKyAgcmNfZnJhbWVfc3RhdHMtPk1WciA9IHN0YXRzLT5N
VnI7CisgIHJjX2ZyYW1lX3N0YXRzLT5tdnJfYWJzID0gc3RhdHMtPm12cl9hYnM7CisgIHJjX2Zy
YW1lX3N0YXRzLT5NVmMgPSBzdGF0cy0+TVZjOworICByY19mcmFtZV9zdGF0cy0+bXZjX2FicyA9
IHN0YXRzLT5tdmNfYWJzOworICByY19mcmFtZV9zdGF0cy0+TVZydiA9IHN0YXRzLT5NVnJ2Owor
ICByY19mcmFtZV9zdGF0cy0+TVZjdiA9IHN0YXRzLT5NVmN2OworICByY19mcmFtZV9zdGF0cy0+
bXZfaW5fb3V0X2NvdW50ID0gc3RhdHMtPm12X2luX291dF9jb3VudDsKKyAgcmNfZnJhbWVfc3Rh
dHMtPmR1cmF0aW9uID0gc3RhdHMtPmR1cmF0aW9uOworICByY19mcmFtZV9zdGF0cy0+Y291bnQg
PSBzdGF0cy0+Y291bnQ7Cit9CisKK3ZweF9jb2RlY19lcnJfdCB2cDlfZXh0cmNfc2VuZF9maXJz
dHBhc3Nfc3RhdHMoCisgICAgRVhUX1JBVEVDVFJMICpleHRfcmF0ZWN0cmwsIGNvbnN0IEZJUlNU
X1BBU1NfSU5GTyAqZmlyc3RfcGFzc19pbmZvKSB7CisgIGlmIChleHRfcmF0ZWN0cmwgPT0gTlVM
TCkgeworICAgIHJldHVybiBWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTTsKKyAgfQorICBpZiAoZXh0
X3JhdGVjdHJsLT5yZWFkeSkgeworICAgIHZweF9yY19zdGF0dXNfdCByY19zdGF0dXM7CisgICAg
dnB4X3JjX2ZpcnN0cGFzc19zdGF0c190ICpyY19maXJzdHBhc3Nfc3RhdHMgPQorICAgICAgICAm
ZXh0X3JhdGVjdHJsLT5yY19maXJzdHBhc3Nfc3RhdHM7CisgICAgaW50IGk7CisgICAgYXNzZXJ0
KHJjX2ZpcnN0cGFzc19zdGF0cy0+bnVtX2ZyYW1lcyA9PSBmaXJzdF9wYXNzX2luZm8tPm51bV9m
cmFtZXMpOworICAgIGZvciAoaSA9IDA7IGkgPCByY19maXJzdHBhc3Nfc3RhdHMtPm51bV9mcmFt
ZXM7ICsraSkgeworICAgICAgZ2VuX3JjX2ZpcnN0cGFzc19zdGF0cygmZmlyc3RfcGFzc19pbmZv
LT5zdGF0c1tpXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnJjX2ZpcnN0cGFzc19z
dGF0cy0+ZnJhbWVfc3RhdHNbaV0pOworICAgIH0KKyAgICByY19zdGF0dXMgPSBleHRfcmF0ZWN0
cmwtPmZ1bmNzLnNlbmRfZmlyc3RwYXNzX3N0YXRzKGV4dF9yYXRlY3RybC0+bW9kZWwsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByY19m
aXJzdHBhc3Nfc3RhdHMpOworICAgIGlmIChyY19zdGF0dXMgPT0gVlBYX1JDX0VSUk9SKSB7Cisg
ICAgICByZXR1cm4gVlBYX0NPREVDX0VSUk9SOworICAgIH0KKyAgfQorICByZXR1cm4gVlBYX0NP
REVDX09LOworfQorCitzdGF0aWMgaW50IGV4dHJjX2dldF9mcmFtZV90eXBlKEZSQU1FX1VQREFU
RV9UWVBFIHVwZGF0ZV90eXBlKSB7CisgIC8vIFRPRE8oYW5naWViaXJkKTogQWRkIHVuaXQgdGVz
dCB0byBtYWtlIHN1cmUgdGhpcyBmdW5jdGlvbiBiZWhhdmVzIGxpa2UKKyAgLy8gZ2V0X2ZyYW1l
X3R5cGVfZnJvbV91cGRhdGVfdHlwZSgpCisgIC8vIFRPRE8oYW5naWViaXJkKTogTWVyZ2UgdGhp
cyBmdW5jdGlvbiB3aXRoIGdldF9mcmFtZV90eXBlX2Zyb21fdXBkYXRlX3R5cGUoKQorICBzd2l0
Y2ggKHVwZGF0ZV90eXBlKSB7CisgICAgY2FzZSBLRl9VUERBVEU6IHJldHVybiAwOyAgICAgICAv
LyBrRnJhbWVUeXBlS2V5OworICAgIGNhc2UgQVJGX1VQREFURTogcmV0dXJuIDI7ICAgICAgLy8g
a0ZyYW1lVHlwZUFsdFJlZjsKKyAgICBjYXNlIEdGX1VQREFURTogcmV0dXJuIDQ7ICAgICAgIC8v
IGtGcmFtZVR5cGVHb2xkZW47CisgICAgY2FzZSBPVkVSTEFZX1VQREFURTogcmV0dXJuIDM7ICAv
LyBrRnJhbWVUeXBlT3ZlcmxheTsKKyAgICBjYXNlIExGX1VQREFURTogcmV0dXJuIDE7ICAgICAg
IC8vIGtGcmFtZVR5cGVJbnRlcjsKKyAgICBkZWZhdWx0OgorICAgICAgZnByaW50ZihzdGRlcnIs
ICJVbnN1cHBvcnRlZCB1cGRhdGVfdHlwZSAlZFxuIiwgdXBkYXRlX3R5cGUpOworICAgICAgYWJv
cnQoKTsKKyAgICAgIHJldHVybiAxOworICB9Cit9CisKK3ZweF9jb2RlY19lcnJfdCB2cDlfZXh0
cmNfZ2V0X2VuY29kZWZyYW1lX2RlY2lzaW9uKAorICAgIEVYVF9SQVRFQ1RSTCAqZXh0X3JhdGVj
dHJsLCBpbnQgc2hvd19pbmRleCwgaW50IGNvZGluZ19pbmRleCwgaW50IGdvcF9pbmRleCwKKyAg
ICBGUkFNRV9VUERBVEVfVFlQRSB1cGRhdGVfdHlwZSwKKyAgICBSZWZDbnRCdWZmZXIgKnJlZl9m
cmFtZV9idWZzW01BWF9JTlRFUl9SRUZfRlJBTUVTXSwgaW50IHJlZl9mcmFtZV9mbGFncywKKyAg
ICB2cHhfcmNfZW5jb2RlZnJhbWVfZGVjaXNpb25fdCAqZW5jb2RlX2ZyYW1lX2RlY2lzaW9uKSB7
CisgIGlmIChleHRfcmF0ZWN0cmwgPT0gTlVMTCkgeworICAgIHJldHVybiBWUFhfQ09ERUNfSU5W
QUxJRF9QQVJBTTsKKyAgfQorICBpZiAoZXh0X3JhdGVjdHJsLT5yZWFkeSkgeworICAgIHZweF9y
Y19zdGF0dXNfdCByY19zdGF0dXM7CisgICAgdnB4X3JjX2VuY29kZWZyYW1lX2luZm9fdCBlbmNv
ZGVfZnJhbWVfaW5mbzsKKyAgICBlbmNvZGVfZnJhbWVfaW5mby5zaG93X2luZGV4ID0gc2hvd19p
bmRleDsKKyAgICBlbmNvZGVfZnJhbWVfaW5mby5jb2RpbmdfaW5kZXggPSBjb2RpbmdfaW5kZXg7
CisgICAgZW5jb2RlX2ZyYW1lX2luZm8uZ29wX2luZGV4ID0gZ29wX2luZGV4OworICAgIGVuY29k
ZV9mcmFtZV9pbmZvLmZyYW1lX3R5cGUgPSBleHRyY19nZXRfZnJhbWVfdHlwZSh1cGRhdGVfdHlw
ZSk7CisKKyAgICB2cDlfZ2V0X3JlZl9mcmFtZV9pbmZvKHVwZGF0ZV90eXBlLCByZWZfZnJhbWVf
ZmxhZ3MsIHJlZl9mcmFtZV9idWZzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2Rl
X2ZyYW1lX2luZm8ucmVmX2ZyYW1lX2NvZGluZ19pbmRleGVzLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgZW5jb2RlX2ZyYW1lX2luZm8ucmVmX2ZyYW1lX3ZhbGlkX2xpc3QpOworCisgICAg
cmNfc3RhdHVzID0gZXh0X3JhdGVjdHJsLT5mdW5jcy5nZXRfZW5jb2RlZnJhbWVfZGVjaXNpb24o
CisgICAgICAgIGV4dF9yYXRlY3RybC0+bW9kZWwsICZlbmNvZGVfZnJhbWVfaW5mbywgZW5jb2Rl
X2ZyYW1lX2RlY2lzaW9uKTsKKyAgICBpZiAocmNfc3RhdHVzID09IFZQWF9SQ19FUlJPUikgewor
ICAgICAgcmV0dXJuIFZQWF9DT0RFQ19FUlJPUjsKKyAgICB9CisgIH0KKyAgcmV0dXJuIFZQWF9D
T0RFQ19PSzsKK30KKwordnB4X2NvZGVjX2Vycl90IHZwOV9leHRyY191cGRhdGVfZW5jb2RlZnJh
bWVfcmVzdWx0KAorICAgIEVYVF9SQVRFQ1RSTCAqZXh0X3JhdGVjdHJsLCBpbnQ2NF90IGJpdF9j
b3VudCwKKyAgICBjb25zdCBZVjEyX0JVRkZFUl9DT05GSUcgKnNvdXJjZV9mcmFtZSwKKyAgICBj
b25zdCBZVjEyX0JVRkZFUl9DT05GSUcgKmNvZGVkX2ZyYW1lLCB1aW50MzJfdCBiaXRfZGVwdGgs
CisgICAgdWludDMyX3QgaW5wdXRfYml0X2RlcHRoKSB7CisgIGlmIChleHRfcmF0ZWN0cmwgPT0g
TlVMTCkgeworICAgIHJldHVybiBWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTTsKKyAgfQorICBpZiAo
ZXh0X3JhdGVjdHJsLT5yZWFkeSkgeworICAgIFBTTlJfU1RBVFMgcHNucjsKKyAgICB2cHhfcmNf
c3RhdHVzX3QgcmNfc3RhdHVzOworICAgIHZweF9yY19lbmNvZGVmcmFtZV9yZXN1bHRfdCBlbmNv
ZGVfZnJhbWVfcmVzdWx0OworICAgIGVuY29kZV9mcmFtZV9yZXN1bHQuYml0X2NvdW50ID0gYml0
X2NvdW50OworICAgIGVuY29kZV9mcmFtZV9yZXN1bHQucGl4ZWxfY291bnQgPQorICAgICAgICBz
b3VyY2VfZnJhbWUtPnlfY3JvcF93aWR0aCAqIHNvdXJjZV9mcmFtZS0+eV9jcm9wX2hlaWdodCAr
CisgICAgICAgIDIgKiBzb3VyY2VfZnJhbWUtPnV2X2Nyb3Bfd2lkdGggKiBzb3VyY2VfZnJhbWUt
PnV2X2Nyb3BfaGVpZ2h0OworI2lmIENPTkZJR19WUDlfSElHSEJJVERFUFRICisgICAgdnB4X2Nh
bGNfaGlnaGJkX3BzbnIoc291cmNlX2ZyYW1lLCBjb2RlZF9mcmFtZSwgJnBzbnIsIGJpdF9kZXB0
aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dF9iaXRfZGVwdGgpOworI2Vsc2UKKyAg
ICAodm9pZCliaXRfZGVwdGg7CisgICAgKHZvaWQpaW5wdXRfYml0X2RlcHRoOworICAgIHZweF9j
YWxjX3BzbnIoc291cmNlX2ZyYW1lLCBjb2RlZF9mcmFtZSwgJnBzbnIpOworI2VuZGlmCisgICAg
ZW5jb2RlX2ZyYW1lX3Jlc3VsdC5zc2UgPSBwc25yLnNzZVswXTsKKyAgICByY19zdGF0dXMgPSBl
eHRfcmF0ZWN0cmwtPmZ1bmNzLnVwZGF0ZV9lbmNvZGVmcmFtZV9yZXN1bHQoCisgICAgICAgIGV4
dF9yYXRlY3RybC0+bW9kZWwsICZlbmNvZGVfZnJhbWVfcmVzdWx0KTsKKyAgICBpZiAocmNfc3Rh
dHVzID09IFZQWF9SQ19FUlJPUikgeworICAgICAgcmV0dXJuIFZQWF9DT0RFQ19FUlJPUjsKKyAg
ICB9CisgIH0KKyAgcmV0dXJuIFZQWF9DT0RFQ19PSzsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2V4dF9yYXRlY3RybC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfZXh0X3JhdGVjdHJsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTFlOTEwMmE2NTA2NDU1OTE3NmFiMDY4
NTU4ZTg3MjcwMWU3Y2UwMAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2V4dF9yYXRlY3RybC5oCkBAIC0wLDAgKzEsNDggQEAKKy8qCisgKiAgQ29weXJpZ2h0
IChjKSAyMDIwIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4K
KyAqCisgKiAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5
bGUgbGljZW5zZQorICogIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4g
dGhlIHJvb3Qgb2YgdGhlIHNvdXJjZQorICogIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0
dWFsIHByb3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyAqICBpbiB0aGUgZmlsZSBQ
QVRFTlRTLiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisgKiAgYmUgZm91
bmQgaW4gdGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisg
Ki8KKworI2lmbmRlZiBWUFhfVlA5X0VOQ09ERVJfVlA5X0VYVF9SQVRFQ1RSTF9IXworI2RlZmlu
ZSBWUFhfVlA5X0VOQ09ERVJfVlA5X0VYVF9SQVRFQ1RSTF9IXworCisjaW5jbHVkZSAidnB4L3Zw
eF9leHRfcmF0ZWN0cmwuaCIKKyNpbmNsdWRlICJ2cDkvZW5jb2Rlci92cDlfZmlyc3RwYXNzLmgi
CisKK3R5cGVkZWYgc3RydWN0IEVYVF9SQVRFQ1RSTCB7CisgIGludCByZWFkeTsKKyAgdnB4X3Jj
X21vZGVsX3QgbW9kZWw7CisgIHZweF9yY19mdW5jc190IGZ1bmNzOworICB2cHhfcmNfY29uZmln
X3QgcmF0ZWN0cmxfY29uZmlnOworICB2cHhfcmNfZmlyc3RwYXNzX3N0YXRzX3QgcmNfZmlyc3Rw
YXNzX3N0YXRzOworfSBFWFRfUkFURUNUUkw7CisKK3ZweF9jb2RlY19lcnJfdCB2cDlfZXh0cmNf
aW5pdChFWFRfUkFURUNUUkwgKmV4dF9yYXRlY3RybCk7CisKK3ZweF9jb2RlY19lcnJfdCB2cDlf
ZXh0cmNfY3JlYXRlKHZweF9yY19mdW5jc190IGZ1bmNzLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdnB4X3JjX2NvbmZpZ190IHJhdGVjdHJsX2NvbmZpZywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEVYVF9SQVRFQ1RSTCAqZXh0X3JhdGVjdHJsKTsKKwordnB4
X2NvZGVjX2Vycl90IHZwOV9leHRyY19kZWxldGUoRVhUX1JBVEVDVFJMICpleHRfcmF0ZWN0cmwp
OworCit2cHhfY29kZWNfZXJyX3QgdnA5X2V4dHJjX3NlbmRfZmlyc3RwYXNzX3N0YXRzKAorICAg
IEVYVF9SQVRFQ1RSTCAqZXh0X3JhdGVjdHJsLCBjb25zdCBGSVJTVF9QQVNTX0lORk8gKmZpcnN0
X3Bhc3NfaW5mbyk7CisKK3ZweF9jb2RlY19lcnJfdCB2cDlfZXh0cmNfZ2V0X2VuY29kZWZyYW1l
X2RlY2lzaW9uKAorICAgIEVYVF9SQVRFQ1RSTCAqZXh0X3JhdGVjdHJsLCBpbnQgc2hvd19pbmRl
eCwgaW50IGNvZGluZ19pbmRleCwgaW50IGdvcF9pbmRleCwKKyAgICBGUkFNRV9VUERBVEVfVFlQ
RSB1cGRhdGVfdHlwZSwKKyAgICBSZWZDbnRCdWZmZXIgKnJlZl9mcmFtZV9idWZzW01BWF9JTlRF
Ul9SRUZfRlJBTUVTXSwgaW50IHJlZl9mcmFtZV9mbGFncywKKyAgICB2cHhfcmNfZW5jb2RlZnJh
bWVfZGVjaXNpb25fdCAqZW5jb2RlX2ZyYW1lX2RlY2lzaW9uKTsKKwordnB4X2NvZGVjX2Vycl90
IHZwOV9leHRyY191cGRhdGVfZW5jb2RlZnJhbWVfcmVzdWx0KAorICAgIEVYVF9SQVRFQ1RSTCAq
ZXh0X3JhdGVjdHJsLCBpbnQ2NF90IGJpdF9jb3VudCwKKyAgICBjb25zdCBZVjEyX0JVRkZFUl9D
T05GSUcgKnNvdXJjZV9mcmFtZSwKKyAgICBjb25zdCBZVjEyX0JVRkZFUl9DT05GSUcgKmNvZGVk
X2ZyYW1lLCB1aW50MzJfdCBiaXRfZGVwdGgsCisgICAgdWludDMyX3QgaW5wdXRfYml0X2RlcHRo
KTsKKworI2VuZGlmICAvLyBWUFhfVlA5X0VOQ09ERVJfVlA5X0VYVF9SQVRFQ1RSTF9IXwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmMgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9leHRlbmQuYwppbmRleCBmOGUyNDYxMGFlZDY1ODU1ZDcwNmNiNGUw
YjcxMDY2ZmY4MDdmNGEwLi5kY2I2MmU4NzY4YWYxMmZlZmNiMDEzNTI4MWFhMmQ5MDRjN2RmNGYw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRlbmQuYworKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRlbmQuYwpAQCAtMTgsMTggKzE4LDI2IEBACiBz
dGF0aWMgdm9pZCBjb3B5X2FuZF9leHRlbmRfcGxhbmUoY29uc3QgdWludDhfdCAqc3JjLCBpbnQg
c3JjX3BpdGNoLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3QgKmRz
dCwgaW50IGRzdF9waXRjaCwgaW50IHcsIGludCBoLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGludCBleHRlbmRfdG9wLCBpbnQgZXh0ZW5kX2xlZnQsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaW50IGV4dGVuZF9ib3R0b20sIGludCBleHRlbmRfcmlnaHQp
IHsKLSAgaW50IGksIGxpbmVzaXplOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGludCBleHRlbmRfYm90dG9tLCBpbnQgZXh0ZW5kX3JpZ2h0LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGludCBpbnRlcmxlYXZlX3N0ZXApIHsKKyAgaW50IGksIGosIGxpbmVz
aXplOworICBjb25zdCBpbnQgc3RlcCA9IGludGVybGVhdmVfc3RlcCA8IDEgPyAxIDogaW50ZXJs
ZWF2ZV9zdGVwOwogCiAgIC8vIGNvcHkgdGhlIGxlZnQgYW5kIHJpZ2h0IG1vc3QgY29sdW1ucyBv
dXQKICAgY29uc3QgdWludDhfdCAqc3JjX3B0cjEgPSBzcmM7Ci0gIGNvbnN0IHVpbnQ4X3QgKnNy
Y19wdHIyID0gc3JjICsgdyAtIDE7CisgIGNvbnN0IHVpbnQ4X3QgKnNyY19wdHIyID0gc3JjICsg
KHcgLSAxKSAqIHN0ZXA7CiAgIHVpbnQ4X3QgKmRzdF9wdHIxID0gZHN0IC0gZXh0ZW5kX2xlZnQ7
CiAgIHVpbnQ4X3QgKmRzdF9wdHIyID0gZHN0ICsgdzsKIAogICBmb3IgKGkgPSAwOyBpIDwgaDsg
aSsrKSB7CiAgICAgbWVtc2V0KGRzdF9wdHIxLCBzcmNfcHRyMVswXSwgZXh0ZW5kX2xlZnQpOwot
ICAgIG1lbWNweShkc3RfcHRyMSArIGV4dGVuZF9sZWZ0LCBzcmNfcHRyMSwgdyk7CisgICAgaWYg
KHN0ZXAgPT0gMSkgeworICAgICAgbWVtY3B5KGRzdF9wdHIxICsgZXh0ZW5kX2xlZnQsIHNyY19w
dHIxLCB3KTsKKyAgICB9IGVsc2UgeworICAgICAgZm9yIChqID0gMDsgaiA8IHc7IGorKykgewor
ICAgICAgICBkc3RfcHRyMVtleHRlbmRfbGVmdCArIGpdID0gc3JjX3B0cjFbc3RlcCAqIGpdOwor
ICAgICAgfQorICAgIH0KICAgICBtZW1zZXQoZHN0X3B0cjIsIHNyY19wdHIyWzBdLCBleHRlbmRf
cmlnaHQpOwogICAgIHNyY19wdHIxICs9IHNyY19waXRjaDsKICAgICBzcmNfcHRyMiArPSBzcmNf
cGl0Y2g7CkBAIC0xMjIsNiArMTMwLDggQEAgdm9pZCB2cDlfY29weV9hbmRfZXh0ZW5kX2ZyYW1l
KGNvbnN0IFlWMTJfQlVGRkVSX0NPTkZJRyAqc3JjLAogICBjb25zdCBpbnQgZWxfdXYgPSBlbF95
ID4+IHV2X3dpZHRoX3N1YnNhbXBsaW5nOwogICBjb25zdCBpbnQgZWJfdXYgPSBlYl95ID4+IHV2
X2hlaWdodF9zdWJzYW1wbGluZzsKICAgY29uc3QgaW50IGVyX3V2ID0gZXJfeSA+PiB1dl93aWR0
aF9zdWJzYW1wbGluZzsKKyAgLy8gZGV0ZWN0IG52MTIgY29sb3JzcGFjZQorICBjb25zdCBpbnQg
Y2hyb21hX3N0ZXAgPSBzcmMtPnZfYnVmZmVyIC0gc3JjLT51X2J1ZmZlciA9PSAxID8gMiA6IDE7
CiAKICNpZiBDT05GSUdfVlA5X0hJR0hCSVRERVBUSAogICBpZiAoc3JjLT5mbGFncyAmIFlWMTJf
RkxBR19ISUdIQklUREVQVEgpIHsKQEAgLTE0MiwxNSArMTUyLDE1IEBAIHZvaWQgdnA5X2NvcHlf
YW5kX2V4dGVuZF9mcmFtZShjb25zdCBZVjEyX0JVRkZFUl9DT05GSUcgKnNyYywKIAogICBjb3B5
X2FuZF9leHRlbmRfcGxhbmUoc3JjLT55X2J1ZmZlciwgc3JjLT55X3N0cmlkZSwgZHN0LT55X2J1
ZmZlciwKICAgICAgICAgICAgICAgICAgICAgICAgIGRzdC0+eV9zdHJpZGUsIHNyYy0+eV9jcm9w
X3dpZHRoLCBzcmMtPnlfY3JvcF9oZWlnaHQsCi0gICAgICAgICAgICAgICAgICAgICAgICBldF95
LCBlbF95LCBlYl95LCBlcl95KTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGV0X3ksIGVsX3ks
IGViX3ksIGVyX3ksIDEpOwogCiAgIGNvcHlfYW5kX2V4dGVuZF9wbGFuZShzcmMtPnVfYnVmZmVy
LCBzcmMtPnV2X3N0cmlkZSwgZHN0LT51X2J1ZmZlciwKICAgICAgICAgICAgICAgICAgICAgICAg
IGRzdC0+dXZfc3RyaWRlLCBzcmMtPnV2X2Nyb3Bfd2lkdGgsIHNyYy0+dXZfY3JvcF9oZWlnaHQs
Ci0gICAgICAgICAgICAgICAgICAgICAgICBldF91diwgZWxfdXYsIGViX3V2LCBlcl91dik7Cisg
ICAgICAgICAgICAgICAgICAgICAgICBldF91diwgZWxfdXYsIGViX3V2LCBlcl91diwgY2hyb21h
X3N0ZXApOwogCiAgIGNvcHlfYW5kX2V4dGVuZF9wbGFuZShzcmMtPnZfYnVmZmVyLCBzcmMtPnV2
X3N0cmlkZSwgZHN0LT52X2J1ZmZlciwKICAgICAgICAgICAgICAgICAgICAgICAgIGRzdC0+dXZf
c3RyaWRlLCBzcmMtPnV2X2Nyb3Bfd2lkdGgsIHNyYy0+dXZfY3JvcF9oZWlnaHQsCi0gICAgICAg
ICAgICAgICAgICAgICAgICBldF91diwgZWxfdXYsIGViX3V2LCBlcl91dik7CisgICAgICAgICAg
ICAgICAgICAgICAgICBldF91diwgZWxfdXYsIGViX3V2LCBlcl91diwgY2hyb21hX3N0ZXApOwog
fQogCiB2b2lkIHZwOV9jb3B5X2FuZF9leHRlbmRfZnJhbWVfd2l0aF9yZWN0KGNvbnN0IFlWMTJf
QlVGRkVSX0NPTkZJRyAqc3JjLApAQCAtMTc2LDE2ICsxODYsMTggQEAgdm9pZCB2cDlfY29weV9h
bmRfZXh0ZW5kX2ZyYW1lX3dpdGhfcmVjdChjb25zdCBZVjEyX0JVRkZFUl9DT05GSUcgKnNyYywK
ICAgY29uc3QgaW50IGRzdF91dl9vZmZzZXQgPSAoKHNyY3kgKiBkc3QtPnV2X3N0cmlkZSkgPj4g
MSkgKyAoc3JjeCA+PiAxKTsKICAgY29uc3QgaW50IHNyY2hfdXYgPSBST1VORF9QT1dFUl9PRl9U
V08oc3JjaCwgMSk7CiAgIGNvbnN0IGludCBzcmN3X3V2ID0gUk9VTkRfUE9XRVJfT0ZfVFdPKHNy
Y3csIDEpOworICAvLyBkZXRlY3QgbnYxMiBjb2xvcnNwYWNlCisgIGNvbnN0IGludCBjaHJvbWFf
c3RlcCA9IHNyYy0+dl9idWZmZXIgLSBzcmMtPnVfYnVmZmVyID09IDEgPyAyIDogMTsKIAogICBj
b3B5X2FuZF9leHRlbmRfcGxhbmUoc3JjLT55X2J1ZmZlciArIHNyY195X29mZnNldCwgc3JjLT55
X3N0cmlkZSwKICAgICAgICAgICAgICAgICAgICAgICAgIGRzdC0+eV9idWZmZXIgKyBkc3RfeV9v
ZmZzZXQsIGRzdC0+eV9zdHJpZGUsIHNyY3csIHNyY2gsCi0gICAgICAgICAgICAgICAgICAgICAg
ICBldF95LCBlbF95LCBlYl95LCBlcl95KTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGV0X3ks
IGVsX3ksIGViX3ksIGVyX3ksIDEpOwogCiAgIGNvcHlfYW5kX2V4dGVuZF9wbGFuZShzcmMtPnVf
YnVmZmVyICsgc3JjX3V2X29mZnNldCwgc3JjLT51dl9zdHJpZGUsCiAgICAgICAgICAgICAgICAg
ICAgICAgICBkc3QtPnVfYnVmZmVyICsgZHN0X3V2X29mZnNldCwgZHN0LT51dl9zdHJpZGUsIHNy
Y3dfdXYsCi0gICAgICAgICAgICAgICAgICAgICAgICBzcmNoX3V2LCBldF91diwgZWxfdXYsIGVi
X3V2LCBlcl91dik7CisgICAgICAgICAgICAgICAgICAgICAgICBzcmNoX3V2LCBldF91diwgZWxf
dXYsIGViX3V2LCBlcl91diwgY2hyb21hX3N0ZXApOwogCiAgIGNvcHlfYW5kX2V4dGVuZF9wbGFu
ZShzcmMtPnZfYnVmZmVyICsgc3JjX3V2X29mZnNldCwgc3JjLT51dl9zdHJpZGUsCiAgICAgICAg
ICAgICAgICAgICAgICAgICBkc3QtPnZfYnVmZmVyICsgZHN0X3V2X29mZnNldCwgZHN0LT51dl9z
dHJpZGUsIHNyY3dfdXYsCi0gICAgICAgICAgICAgICAgICAgICAgICBzcmNoX3V2LCBldF91diwg
ZWxfdXYsIGViX3V2LCBlcl91dik7CisgICAgICAgICAgICAgICAgICAgICAgICBzcmNoX3V2LCBl
dF91diwgZWxfdXYsIGViX3V2LCBlcl91diwgY2hyb21hX3N0ZXApOwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZmlyc3RwYXNzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9maXJzdHBhc3MuYwppbmRleCA3M2FjNGQ2MzkxMDM0NzhmZmRlZmFiZjUyZGVj
NzllNTYwMmEwMzU0Li4yYTljZjUyODk4ZmRjMWMyY2IzZGRlN2FkMzc1YzQ1ZGUwMjM1ZTFhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9maXJzdHBhc3MuYworKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9maXJzdHBhc3MuYwpAQCAtMzg5LDYgKzM4OSwyOSBA
QCBzdGF0aWMgaW50IGdldF9zZWFyY2hfcmFuZ2UoY29uc3QgVlA5X0NPTVAgKmNwaSkgewogICBy
ZXR1cm4gc3I7CiB9CiAKKy8vIFJlZHVjZSBsaW1pdHMgdG8ga2VlcCB0aGUgbW90aW9uIHNlYXJj
aCB3aXRoaW4gTVZfTUFYIG9mIHJlZl9tdi4gTm90IGRvaW5nCisvLyB0aGlzIGNhbiBiZSBwcm9i
bGVtYXRpYyBmb3IgYmlnIHZpZGVvcyAoOEspIGFuZCBtYXkgY2F1c2UgYXNzZXJ0IGZhaWx1cmUK
Ky8vIChvciBtZW1vcnkgdmlvbGF0aW9uKSBpbiBtdl9jb3N0LiBMaW1pdHMgYXJlIG9ubHkgbW9k
aWZpZWQgaWYgdGhleSB3b3VsZAorLy8gYmUgbm9uLWVtcHR5LiBSZXR1cm5zIDEgaWYgbGltaXRz
IGFyZSBub24tZW1wdHkuCitzdGF0aWMgaW50IGludGVyc2VjdF9saW1pdHNfd2l0aF9tdl9tYXgo
TXZMaW1pdHMgKm12X2xpbWl0cywgY29uc3QgTVYgKnJlZl9tdikgeworICBjb25zdCBpbnQgcm93
X21pbiA9CisgICAgICBWUFhNQVgobXZfbGltaXRzLT5yb3dfbWluLCAocmVmX212LT5yb3cgKyA3
IC0gTVZfTUFYKSA+PiAzKTsKKyAgY29uc3QgaW50IHJvd19tYXggPQorICAgICAgVlBYTUlOKG12
X2xpbWl0cy0+cm93X21heCwgKHJlZl9tdi0+cm93IC0gMSArIE1WX01BWCkgPj4gMyk7CisgIGNv
bnN0IGludCBjb2xfbWluID0KKyAgICAgIFZQWE1BWChtdl9saW1pdHMtPmNvbF9taW4sIChyZWZf
bXYtPmNvbCArIDcgLSBNVl9NQVgpID4+IDMpOworICBjb25zdCBpbnQgY29sX21heCA9CisgICAg
ICBWUFhNSU4obXZfbGltaXRzLT5jb2xfbWF4LCAocmVmX212LT5jb2wgLSAxICsgTVZfTUFYKSA+
PiAzKTsKKyAgaWYgKHJvd19taW4gPiByb3dfbWF4IHx8IGNvbF9taW4gPiBjb2xfbWF4KSB7Cisg
ICAgcmV0dXJuIDA7CisgIH0KKyAgbXZfbGltaXRzLT5yb3dfbWluID0gcm93X21pbjsKKyAgbXZf
bGltaXRzLT5yb3dfbWF4ID0gcm93X21heDsKKyAgbXZfbGltaXRzLT5jb2xfbWluID0gY29sX21p
bjsKKyAgbXZfbGltaXRzLT5jb2xfbWF4ID0gY29sX21heDsKKyAgcmV0dXJuIDE7Cit9CisKIHN0
YXRpYyB2b2lkIGZpcnN0X3Bhc3NfbW90aW9uX3NlYXJjaChWUDlfQ09NUCAqY3BpLCBNQUNST0JM
T0NLICp4LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IE1WICpy
ZWZfbXYsIE1WICpiZXN0X212LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGludCAqYmVzdF9tb3Rpb25fZXJyKSB7CkBAIC00MDMsOSArNDI2LDE0IEBAIHN0YXRpYyB2b2lk
IGZpcnN0X3Bhc3NfbW90aW9uX3NlYXJjaChWUDlfQ09NUCAqY3BpLCBNQUNST0JMT0NLICp4LAog
ICBpbnQgc3RlcF9wYXJhbSA9IDM7CiAgIGludCBmdXJ0aGVyX3N0ZXBzID0gKE1BWF9NVlNFQVJD
SF9TVEVQUyAtIDEpIC0gc3RlcF9wYXJhbTsKICAgY29uc3QgaW50IHNyID0gZ2V0X3NlYXJjaF9y
YW5nZShjcGkpOworICBjb25zdCBNdkxpbWl0cyB0bXBfbXZfbGltaXRzID0geC0+bXZfbGltaXRz
OwogICBzdGVwX3BhcmFtICs9IHNyOwogICBmdXJ0aGVyX3N0ZXBzIC09IHNyOwogCisgIGlmICgh
aW50ZXJzZWN0X2xpbWl0c193aXRoX212X21heCgmeC0+bXZfbGltaXRzLCByZWZfbXYpKSB7Cisg
ICAgcmV0dXJuOworICB9CisKICAgLy8gT3ZlcnJpZGUgdGhlIGRlZmF1bHQgdmFyaWFuY2UgZnVu
Y3Rpb24gdG8gdXNlIE1TRS4KICAgdl9mbl9wdHIudmYgPSBnZXRfYmxvY2tfdmFyaWFuY2VfZm4o
YnNpemUpOwogI2lmIENPTkZJR19WUDlfSElHSEJJVERFUFRICkBAIC00NTEsNiArNDc5LDcgQEAg
c3RhdGljIHZvaWQgZmlyc3RfcGFzc19tb3Rpb25fc2VhcmNoKFZQOV9DT01QICpjcGksIE1BQ1JP
QkxPQ0sgKngsCiAgICAgICB9CiAgICAgfQogICB9CisgIHgtPm12X2xpbWl0cyA9IHRtcF9tdl9s
aW1pdHM7CiB9CiAKIHN0YXRpYyBCTE9DS19TSVpFIGdldF9ic2l6ZShjb25zdCBWUDlfQ09NTU9O
ICpjbSwgaW50IG1iX3JvdywgaW50IG1iX2NvbCkgewpAQCAtODEwLDYgKzgzOSwyMiBAQCBzdGF0
aWMgdm9pZCBhY2N1bXVsYXRlX2ZwX21iX3Jvd19zdGF0KFRpbGVEYXRhRW5jICp0aGlzX3RpbGUs
CiAgICAgICAgICAgICAgICAgICAgZnBfYWNjX2RhdGEtPmltYWdlX2RhdGFfc3RhcnRfcm93KTsK
IH0KIAorI2lmIENPTkZJR19SQVRFX0NUUkwKK3N0YXRpYyB2b2lkIHN0b3JlX2ZwX21vdGlvbl92
ZWN0b3IoVlA5X0NPTVAgKmNwaSwgY29uc3QgTVYgKm12LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCBpbnQgbWJfcm93LCBjb25zdCBpbnQgbWJfY29sLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNVl9SRUZFUkVOQ0VfRlJBTUUgZnJhbWVfdHlw
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaW50IG12X2lkeCkg
eworICBWUDlfQ09NTU9OICpjb25zdCBjbSA9ICZjcGktPmNvbW1vbjsKKyAgY29uc3QgaW50IG1i
X2luZGV4ID0gbWJfcm93ICogY20tPm1iX2NvbHMgKyBtYl9jb2w7CisgIE1PVElPTl9WRUNUT1Jf
SU5GTyAqdGhpc19tb3Rpb25fdmVjdG9yX2luZm8gPQorICAgICAgJmNwaS0+ZnBfbW90aW9uX3Zl
Y3Rvcl9pbmZvW21iX2luZGV4XTsKKyAgdGhpc19tb3Rpb25fdmVjdG9yX2luZm8tPnJlZl9mcmFt
ZVttdl9pZHhdID0gZnJhbWVfdHlwZTsKKyAgaWYgKGZyYW1lX3R5cGUgIT0gSU5UUkFfRlJBTUUp
IHsKKyAgICB0aGlzX21vdGlvbl92ZWN0b3JfaW5mby0+bXZbbXZfaWR4XS5hc19tdiA9ICptdjsK
KyAgfQorfQorI2VuZGlmICAvLyBDT05GSUdfUkFURV9DVFJMCisKICNkZWZpbmUgTlpfTU9USU9O
X1BFTkFMVFkgMTI4CiAjZGVmaW5lIElOVFJBX01PREVfUEVOQUxUWSAxMDI0CiB2b2lkIHZwOV9m
aXJzdF9wYXNzX2VuY29kZV90aWxlX21iX3JvdyhWUDlfQ09NUCAqY3BpLCBUaHJlYWREYXRhICp0
ZCwKQEAgLTEwMzYsMTQgKzEwODEsMTkgQEAgdm9pZCB2cDlfZmlyc3RfcGFzc19lbmNvZGVfdGls
ZV9tYl9yb3coVlA5X0NPTVAgKmNwaSwgVGhyZWFkRGF0YSAqdGQsCiAgICAgeC0+bXZfbGltaXRz
LmNvbF9tYXggPQogICAgICAgICAoKGNtLT5tYl9jb2xzIC0gMSAtIG1iX2NvbCkgKiAxNikgKyBC
T1JERVJfTVZfUElYRUxTX0IxNjsKIAotICAgIC8vIE90aGVyIHRoYW4gZm9yIHRoZSBmaXJzdCBm
cmFtZSBkbyBhIG1vdGlvbiBzZWFyY2guCi0gICAgaWYgKGNtLT5jdXJyZW50X3ZpZGVvX2ZyYW1l
ID4gMCkgeworICAgIC8vIE90aGVyIHRoYW4gZm9yIGludHJhLW9ubHkgZnJhbWUgZG8gYSBtb3Rp
b24gc2VhcmNoLgorICAgIGlmICghZnJhbWVfaXNfaW50cmFfb25seShjbSkpIHsKICAgICAgIGlu
dCB0bXBfZXJyLCBtb3Rpb25fZXJyb3IsIHRoaXNfbW90aW9uX2Vycm9yLCByYXdfbW90aW9uX2Vy
cm9yOwogICAgICAgLy8gQXNzdW1lIDAsMCBtb3Rpb24gd2l0aCBubyBtdiBvdmVyaGVhZC4KICAg
ICAgIE1WIG12ID0geyAwLCAwIH0sIHRtcF9tdiA9IHsgMCwgMCB9OwogICAgICAgc3RydWN0IGJ1
Zl8yZCB1bnNjYWxlZF9sYXN0X3NvdXJjZV9idWZfMmQ7CiAgICAgICB2cDlfdmFyaWFuY2VfZm5f
cHRyX3Qgdl9mbl9wdHIgPSBjcGktPmZuX3B0cltic2l6ZV07CiAKKyNpZiBDT05GSUdfUkFURV9D
VFJMCisgICAgICAvLyBTdG9yZSB6ZXJvIG12IGFzIGRlZmF1bHQKKyAgICAgIHN0b3JlX2ZwX21v
dGlvbl92ZWN0b3IoY3BpLCAmbXYsIG1iX3JvdywgbWJfY29sLCBMQVNUX0ZSQU1FLCAwKTsKKyNl
bmRpZiAgLy8gQ09ORklHX1JBR0VfQ1RSTAorCiAgICAgICB4ZC0+cGxhbmVbMF0ucHJlWzBdLmJ1
ZiA9IGZpcnN0X3JlZl9idWYtPnlfYnVmZmVyICsgcmVjb25feW9mZnNldDsKICNpZiBDT05GSUdf
VlA5X0hJR0hCSVRERVBUSAogICAgICAgaWYgKHhkLT5jdXJfYnVmLT5mbGFncyAmIFlWMTJfRkxB
R19ISUdIQklUREVQVEgpIHsKQEAgLTExMDgsNiArMTE1OCw5IEBAIHZvaWQgdnA5X2ZpcnN0X3Bh
c3NfZW5jb2RlX3RpbGVfbWJfcm93KFZQOV9DT01QICpjcGksIFRocmVhZERhdGEgKnRkLAogICAg
ICAgICAgICAgICAgIHZwOV9nZXRfbXZwcmVkX3Zhcih4LCAmdG1wX212LCAmemVyb19tdiwgJnZf
Zm5fcHRyLCAwKTsKICAgICAgICAgICB9CiAgICAgICAgIH0KKyNpZiBDT05GSUdfUkFURV9DVFJM
CisgICAgICAgIHN0b3JlX2ZwX21vdGlvbl92ZWN0b3IoY3BpLCAmbXYsIG1iX3JvdywgbWJfY29s
LCBMQVNUX0ZSQU1FLCAwKTsKKyNlbmRpZiAgLy8gQ09ORklHX1JBR0VfQ1RSTAogCiAgICAgICAg
IC8vIFNlYXJjaCBpbiBhbiBvbGRlciByZWZlcmVuY2UgZnJhbWUuCiAgICAgICAgIGlmICgoY20t
PmN1cnJlbnRfdmlkZW9fZnJhbWUgPiAxKSAmJiBnbGRfeXYxMiAhPSBOVUxMKSB7CkBAIC0xMTI5
LDYgKzExODIsOSBAQCB2b2lkIHZwOV9maXJzdF9wYXNzX2VuY29kZV90aWxlX21iX3JvdyhWUDlf
Q09NUCAqY3BpLCBUaHJlYWREYXRhICp0ZCwKICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9ISUdIQklU
REVQVEgKIAogICAgICAgICAgIGZpcnN0X3Bhc3NfbW90aW9uX3NlYXJjaChjcGksIHgsICZ6ZXJv
X212LCAmdG1wX212LCAmZ2ZfbW90aW9uX2Vycm9yKTsKKyNpZiBDT05GSUdfUkFURV9DVFJMCisg
ICAgICAgICAgc3RvcmVfZnBfbW90aW9uX3ZlY3RvcihjcGksICZ0bXBfbXYsIG1iX3JvdywgbWJf
Y29sLCBHT0xERU5fRlJBTUUsIDEpOworI2VuZGlmICAvLyBDT05GSUdfUkFHRV9DVFJMCiAKICAg
ICAgICAgICBpZiAoZ2ZfbW90aW9uX2Vycm9yIDwgbW90aW9uX2Vycm9yICYmIGdmX21vdGlvbl9l
cnJvciA8IHRoaXNfZXJyb3IpCiAgICAgICAgICAgICArKyhmcF9hY2NfZGF0YS0+c2Vjb25kX3Jl
Zl9jb3VudCk7CkBAIC0xMzAyLDYgKzEzNTgsOSBAQCB2b2lkIHZwOV9maXJzdF9wYXNzX2VuY29k
ZV90aWxlX21iX3JvdyhWUDlfQ09NUCAqY3BpLCBUaHJlYWREYXRhICp0ZCwKICAgICAgIH0KICAg
ICB9IGVsc2UgewogICAgICAgZnBfYWNjX2RhdGEtPnNyX2NvZGVkX2Vycm9yICs9IChpbnQ2NF90
KXRoaXNfZXJyb3I7CisjaWYgQ09ORklHX1JBVEVfQ1RSTAorICAgICAgc3RvcmVfZnBfbW90aW9u
X3ZlY3RvcihjcGksIE5VTEwsIG1iX3JvdywgbWJfY29sLCBJTlRSQV9GUkFNRSwgMCk7CisjZW5k
aWYgIC8vIENPTkZJR19SQUdFX0NUUkwKICAgICB9CiAgICAgZnBfYWNjX2RhdGEtPmNvZGVkX2Vy
cm9yICs9IChpbnQ2NF90KXRoaXNfZXJyb3I7CiAKQEAgLTEzMjgsNiArMTM4NywxMiBAQCBzdGF0
aWMgdm9pZCBmaXJzdF9wYXNzX2VuY29kZShWUDlfQ09NUCAqY3BpLCBGSVJTVFBBU1NfREFUQSAq
ZnBfYWNjX2RhdGEpIHsKICAgLy8gVGlsaW5nIGlzIGlnbm9yZWQgaW4gdGhlIGZpcnN0IHBhc3Mu
CiAgIHZwOV90aWxlX2luaXQodGlsZSwgY20sIDAsIDApOwogCisjaWYgQ09ORklHX1JBVEVfQ1RS
TAorICBmcF9tb3Rpb25fdmVjdG9yX2luZm9fcmVzZXQoY3BpLT5mcmFtZV9pbmZvLmZyYW1lX3dp
ZHRoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3BpLT5mcmFtZV9pbmZvLmZyYW1l
X2hlaWdodCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNwaS0+ZnBfbW90aW9uX3Zl
Y3Rvcl9pbmZvKTsKKyNlbmRpZgorCiAgIGZvciAobWJfcm93ID0gMDsgbWJfcm93IDwgY20tPm1i
X3Jvd3M7ICsrbWJfcm93KSB7CiAgICAgYmVzdF9yZWZfbXYgPSB6ZXJvX212OwogICAgIHZwOV9m
aXJzdF9wYXNzX2VuY29kZV90aWxlX21iX3JvdyhjcGksICZjcGktPnRkLCBmcF9hY2NfZGF0YSwg
JnRpbGVfZGF0YSwKQEAgLTE0NzgsNyArMTU0Myw4IEBAIHZvaWQgdnA5X2ZpcnN0X3Bhc3MoVlA5
X0NPTVAgKmNwaSwgY29uc3Qgc3RydWN0IGxvb2thaGVhZF9lbnRyeSAqc291cmNlKSB7CiAgICAg
ZmNsb3NlKHJlY29uX2ZpbGUpOwogICB9CiAKLSAgKytjbS0+Y3VycmVudF92aWRlb19mcmFtZTsK
KyAgLy8gSW4gdGhlIGZpcnN0IHBhc3MsIGV2ZXJ5IGZyYW1lIGlzIGNvbnNpZGVyZWQgYXMgYSBz
aG93IGZyYW1lLgorICB1cGRhdGVfZnJhbWVfaW5kZXhlcyhjbSwgLypzaG93X2ZyYW1lPSovMSk7
CiAgIGlmIChjcGktPnVzZV9zdmMpIHZwOV9pbmNfZnJhbWVfaW5fbGF5ZXIoY3BpKTsKIH0KIApA
QCAtMjQ3OCw5ICsyNTQ0LDYgQEAgdHlwZWRlZiBzdHJ1Y3QgUkFOR0UgewogICogc3RydWN0cy4K
ICAqLwogc3RhdGljIGludCBnZXRfZ29wX2NvZGluZ19mcmFtZV9udW0oCi0jaWYgQ09ORklHX1JB
VEVfQ1RSTAotICAgIGNvbnN0IGludCAqZXh0ZXJuYWxfYXJmX2luZGV4ZXMsCi0jZW5kaWYKICAg
ICBpbnQgKnVzZV9hbHRfcmVmLCBjb25zdCBGUkFNRV9JTkZPICpmcmFtZV9pbmZvLAogICAgIGNv
bnN0IEZJUlNUX1BBU1NfSU5GTyAqZmlyc3RfcGFzc19pbmZvLCBjb25zdCBSQVRFX0NPTlRST0wg
KnJjLAogICAgIGludCBnZl9zdGFydF9zaG93X2lkeCwgY29uc3QgUkFOR0UgKmFjdGl2ZV9nZl9p
bnRlcnZhbCwKQEAgLTI0OTYsMjQgKzI1NTksNiBAQCBzdGF0aWMgaW50IGdldF9nb3BfY29kaW5n
X2ZyYW1lX251bSgKICAgICAgIChmcmFtZV9pbmZvLT5mcmFtZV9oZWlnaHQgKyBmcmFtZV9pbmZv
LT5mcmFtZV93aWR0aCkgLyA0LjA7CiAgIGRvdWJsZSB6ZXJvX21vdGlvbl9hY2N1bXVsYXRvciA9
IDEuMDsKICAgaW50IGdvcF9jb2RpbmdfZnJhbWVzOwotI2lmIENPTkZJR19SQVRFX0NUUkwKLSAg
KHZvaWQpbXZfcmF0aW9fYWNjdW11bGF0b3JfdGhyZXNoOwotICAodm9pZClhY3RpdmVfZ2ZfaW50
ZXJ2YWw7Ci0gICh2b2lkKWdvcF9pbnRyYV9mYWN0b3I7Ci0KLSAgaWYgKGV4dGVybmFsX2FyZl9p
bmRleGVzICE9IE5VTEwgJiYgcmMtPmZyYW1lc190b19rZXkgPiAxKSB7Ci0gICAgLy8gZ29wX2Nv
ZGluZ19mcmFtZXMgPSAxIGlzIG5lY2Vzc2FyeSB0byBmaWx0ZXIgb3V0IHRoZSBvdmVybGF5IGZy
YW1lLAotICAgIC8vIHNpbmNlIHRoZSBhcmYgaXMgaW4gdGhpcyBncm91cCBvZiBwaWN0dXJlIGFu
ZCBpdHMgb3ZlcmxheSBpcyBpbiB0aGUgbmV4dC4KLSAgICBnb3BfY29kaW5nX2ZyYW1lcyA9IDE7
Ci0gICAgKnVzZV9hbHRfcmVmID0gMTsKLSAgICB3aGlsZSAoZ29wX2NvZGluZ19mcmFtZXMgPCBy
Yy0+ZnJhbWVzX3RvX2tleSkgewotICAgICAgY29uc3QgaW50IGZyYW1lX2luZGV4ID0gZ2Zfc3Rh
cnRfc2hvd19pZHggKyBnb3BfY29kaW5nX2ZyYW1lczsKLSAgICAgICsrZ29wX2NvZGluZ19mcmFt
ZXM7Ci0gICAgICBpZiAoZXh0ZXJuYWxfYXJmX2luZGV4ZXNbZnJhbWVfaW5kZXhdID09IDEpIGJy
ZWFrOwotICAgIH0KLSAgICByZXR1cm4gZ29wX2NvZGluZ19mcmFtZXM7Ci0gIH0KLSNlbmRpZiAg
Ly8gQ09ORklHX1JBVEVfQ1RSTAogCiAgICp1c2VfYWx0X3JlZiA9IDE7CiAgIGdvcF9jb2Rpbmdf
ZnJhbWVzID0gMDsKQEAgLTI3NDAsMTUgKzI3ODUsMjYgQEAgc3RhdGljIHZvaWQgZGVmaW5lX2dm
X2dyb3VwKFZQOV9DT01QICpjcGksIGludCBnZl9zdGFydF9zaG93X2lkeCkgewogICAgIGdvcF9p
bnRyYV9mYWN0b3IgPSAxLjA7CiAgIH0KIAotICB7Ci0gICAgZ29wX2NvZGluZ19mcmFtZXMgPSBn
ZXRfZ29wX2NvZGluZ19mcmFtZV9udW0oCiAjaWYgQ09ORklHX1JBVEVfQ1RSTAotICAgICAgICBj
cGktPmVuY29kZV9jb21tYW5kLmV4dGVybmFsX2FyZl9pbmRleGVzLAotI2VuZGlmCi0gICAgICAg
ICZ1c2VfYWx0X3JlZiwgZnJhbWVfaW5mbywgZmlyc3RfcGFzc19pbmZvLCByYywgZ2Zfc3RhcnRf
c2hvd19pZHgsCi0gICAgICAgICZhY3RpdmVfZ2ZfaW50ZXJ2YWwsIGdvcF9pbnRyYV9mYWN0b3Is
IGNwaS0+b3hjZi5sYWdfaW5fZnJhbWVzKTsKLSAgICB1c2VfYWx0X3JlZiAmPSBhbGxvd19hbHRf
cmVmOworICB7CisgICAgY29uc3QgR09QX0NPTU1BTkQgKmdvcF9jb21tYW5kID0gJmNwaS0+ZW5j
b2RlX2NvbW1hbmQuZ29wX2NvbW1hbmQ7CisgICAgYXNzZXJ0KGFsbG93X2FsdF9yZWYgPT0gMSk7
CisgICAgaWYgKGdvcF9jb21tYW5kLT51c2UpIHsKKyAgICAgIGdvcF9jb2RpbmdfZnJhbWVzID0g
Z29wX2NvbW1hbmRfY29kaW5nX2ZyYW1lX2NvdW50KGdvcF9jb21tYW5kKTsKKyAgICAgIHVzZV9h
bHRfcmVmID0gZ29wX2NvbW1hbmQtPnVzZV9hbHRfcmVmOworICAgIH0gZWxzZSB7CisgICAgICBn
b3BfY29kaW5nX2ZyYW1lcyA9IGdldF9nb3BfY29kaW5nX2ZyYW1lX251bSgKKyAgICAgICAgICAm
dXNlX2FsdF9yZWYsIGZyYW1lX2luZm8sIGZpcnN0X3Bhc3NfaW5mbywgcmMsIGdmX3N0YXJ0X3No
b3dfaWR4LAorICAgICAgICAgICZhY3RpdmVfZ2ZfaW50ZXJ2YWwsIGdvcF9pbnRyYV9mYWN0b3Is
IGNwaS0+b3hjZi5sYWdfaW5fZnJhbWVzKTsKKyAgICAgIHVzZV9hbHRfcmVmICY9IGFsbG93X2Fs
dF9yZWY7CisgICAgfQogICB9CisjZWxzZQorICBnb3BfY29kaW5nX2ZyYW1lcyA9IGdldF9nb3Bf
Y29kaW5nX2ZyYW1lX251bSgKKyAgICAgICZ1c2VfYWx0X3JlZiwgZnJhbWVfaW5mbywgZmlyc3Rf
cGFzc19pbmZvLCByYywgZ2Zfc3RhcnRfc2hvd19pZHgsCisgICAgICAmYWN0aXZlX2dmX2ludGVy
dmFsLCBnb3BfaW50cmFfZmFjdG9yLCBjcGktPm94Y2YubGFnX2luX2ZyYW1lcyk7CisgIHVzZV9h
bHRfcmVmICY9IGFsbG93X2FsdF9yZWY7CisjZW5kaWYKIAogICAvLyBXYXMgdGhlIGdyb3VwIGxl
bmd0aCBjb25zdHJhaW5lZCBieSB0aGUgcmVxdWlyZW1lbnQgZm9yIGEgbmV3IEtGPwogICByYy0+
Y29uc3RyYWluZWRfZ2ZfZ3JvdXAgPSAoZ29wX2NvZGluZ19mcmFtZXMgPj0gcmMtPmZyYW1lc190
b19rZXkpID8gMSA6IDA7CkBAIC0zNjc0LDYgKzM3MzAsNyBAQCB2b2lkIHZwOV9nZXRfbmV4dF9n
cm91cF9vZl9waWN0dXJlKGNvbnN0IFZQOV9DT01QICpjcGksIGludCAqZmlyc3RfaXNfa2V5X2Zy
YW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnVzZV9hbHRfcmVm
LCBpbnQgKmNvZGluZ19mcmFtZV9jb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50ICpmaXJzdF9zaG93X2lkeCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50ICpsYXN0X2dvcF91c2VfYWx0X3JlZikgeworICBjb25zdCBHT1BfQ09NTUFORCAq
Z29wX2NvbW1hbmQgPSAmY3BpLT5lbmNvZGVfY29tbWFuZC5nb3BfY29tbWFuZDsKICAgLy8gV2Ug
bWFrZSBhIGNvcHkgb2YgcmMgaGVyZSBiZWNhdXNlIHdlIHdhbnQgdG8gZ2V0IGluZm9ybWF0aW9u
IGZyb20gdGhlCiAgIC8vIGVuY29kZXIgd2l0aG91dCBjaGFuZ2luZyBpdHMgc3RhdGUuCiAgIC8v
IFRPRE8oYW5naWViaXJkKTogQXZvaWQgY29weWluZyByYyBoZXJlLgpAQCAtMzY5NiwxNCArMzc1
MywxOSBAQCB2b2lkIHZwOV9nZXRfbmV4dF9ncm91cF9vZl9waWN0dXJlKGNvbnN0IFZQOV9DT01Q
ICpjcGksIGludCAqZmlyc3RfaXNfa2V5X2ZyYW1lLAogICAgICpmaXJzdF9pc19rZXlfZnJhbWUg
PSAxOwogICB9CiAKLSAgKmNvZGluZ19mcmFtZV9jb3VudCA9IHZwOV9nZXRfZ29wX2NvZGluZ19m
cmFtZV9jb3VudCgKLSAgICAgIGNwaS0+ZW5jb2RlX2NvbW1hbmQuZXh0ZXJuYWxfYXJmX2luZGV4
ZXMsICZjcGktPm94Y2YsICZjcGktPmZyYW1lX2luZm8sCi0gICAgICAmY3BpLT50d29wYXNzLmZp
cnN0X3Bhc3NfaW5mbywgJnJjLCAqZmlyc3Rfc2hvd19pZHgsIG11bHRpX2xheWVyX2FyZiwKLSAg
ICAgIGFsbG93X2FsdF9yZWYsICpmaXJzdF9pc19rZXlfZnJhbWUsICpsYXN0X2dvcF91c2VfYWx0
X3JlZiwgdXNlX2FsdF9yZWYpOworICBpZiAoZ29wX2NvbW1hbmQtPnVzZSkgeworICAgICpjb2Rp
bmdfZnJhbWVfY291bnQgPSBnb3BfY29tbWFuZF9jb2RpbmdfZnJhbWVfY291bnQoZ29wX2NvbW1h
bmQpOworICAgICp1c2VfYWx0X3JlZiA9IGdvcF9jb21tYW5kLT51c2VfYWx0X3JlZjsKKyAgICBh
c3NlcnQoKmNvZGluZ19mcmFtZV9jb3VudCA8IHJjLmZyYW1lc190b19rZXkpOworICB9IGVsc2Ug
eworICAgICpjb2RpbmdfZnJhbWVfY291bnQgPSB2cDlfZ2V0X2dvcF9jb2RpbmdfZnJhbWVfY291
bnQoCisgICAgICAgICZjcGktPm94Y2YsICZjcGktPmZyYW1lX2luZm8sICZjcGktPnR3b3Bhc3Mu
Zmlyc3RfcGFzc19pbmZvLCAmcmMsCisgICAgICAgICpmaXJzdF9zaG93X2lkeCwgbXVsdGlfbGF5
ZXJfYXJmLCBhbGxvd19hbHRfcmVmLCAqZmlyc3RfaXNfa2V5X2ZyYW1lLAorICAgICAgICAqbGFz
dF9nb3BfdXNlX2FsdF9yZWYsIHVzZV9hbHRfcmVmKTsKKyAgfQogfQogCi1pbnQgdnA5X2dldF9n
b3BfY29kaW5nX2ZyYW1lX2NvdW50KGNvbnN0IGludCAqZXh0ZXJuYWxfYXJmX2luZGV4ZXMsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFZQOUVuY29kZXJDb25maWcg
Km94Y2YsCitpbnQgdnA5X2dldF9nb3BfY29kaW5nX2ZyYW1lX2NvdW50KGNvbnN0IFZQOUVuY29k
ZXJDb25maWcgKm94Y2YsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IEZSQU1FX0lORk8gKmZyYW1lX2luZm8sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IEZJUlNUX1BBU1NfSU5GTyAqZmlyc3RfcGFzc19pbmZvLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBSQVRFX0NPTlRST0wgKnJjLCBpbnQgc2hvd19p
ZHgsCkBAIC0zNzI2LDkgKzM3ODgsNiBAQCBpbnQgdnA5X2dldF9nb3BfY29kaW5nX2ZyYW1lX2Nv
dW50KGNvbnN0IGludCAqZXh0ZXJuYWxfYXJmX2luZGV4ZXMsCiAgIH0KIAogICBmcmFtZV9jb3Vu
dCA9IGdldF9nb3BfY29kaW5nX2ZyYW1lX251bSgKLSNpZiBDT05GSUdfUkFURV9DVFJMCi0gICAg
ICBleHRlcm5hbF9hcmZfaW5kZXhlcywKLSNlbmRpZgogICAgICAgdXNlX2FsdF9yZWYsIGZyYW1l
X2luZm8sIGZpcnN0X3Bhc3NfaW5mbywgcmMsIHNob3dfaWR4LAogICAgICAgJmFjdGl2ZV9nZl9p
bnRlcnZhbCwgZ29wX2ludHJhX2ZhY3Rvciwgb3hjZi0+bGFnX2luX2ZyYW1lcyk7CiAgICp1c2Vf
YWx0X3JlZiAmPSBhbGxvd19hbHRfcmVmOwpAQCAtMzczNyw4ICszNzk2LDcgQEAgaW50IHZwOV9n
ZXRfZ29wX2NvZGluZ19mcmFtZV9jb3VudChjb25zdCBpbnQgKmV4dGVybmFsX2FyZl9pbmRleGVz
LAogCiAvLyBVbmRlciBDT05GSUdfUkFURV9DVFJMLCBvbmNlIHRoZSBmaXJzdF9wYXNzX2luZm8g
aXMgcmVhZHksIHRoZSBudW1iZXIgb2YKIC8vIGNvZGluZyBmcmFtZXMgKGluY2x1ZGluZyBzaG93
IGZyYW1lIGFuZCBhbHQgcmVmKSBjYW4gYmUgZGV0ZXJtaW5lZC4KLWludCB2cDlfZ2V0X2NvZGlu
Z19mcmFtZV9udW0oY29uc3QgaW50ICpleHRlcm5hbF9hcmZfaW5kZXhlcywKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgVlA5RW5jb2RlckNvbmZpZyAqb3hjZiwKK2ludCB2cDlf
Z2V0X2NvZGluZ19mcmFtZV9udW0oY29uc3QgVlA5RW5jb2RlckNvbmZpZyAqb3hjZiwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRlJBTUVfSU5GTyAqZnJhbWVfaW5mbywKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRklSU1RfUEFTU19JTkZPICpmaXJzdF9w
YXNzX2luZm8sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBtdWx0aV9sYXllcl9h
cmYsIGludCBhbGxvd19hbHRfcmVmKSB7CkBAIC0zNzQ4LDcgKzM4MDYsNiBAQCBpbnQgdnA5X2dl
dF9jb2RpbmdfZnJhbWVfbnVtKGNvbnN0IGludCAqZXh0ZXJuYWxfYXJmX2luZGV4ZXMsCiAgIGlu
dCBnb3Bfc2hvd19mcmFtZXM7CiAgIGludCBzaG93X2lkeCA9IDA7CiAgIGludCBsYXN0X2dvcF91
c2VfYWx0X3JlZiA9IDA7Ci0gIHJjLnN0YXRpY19zY2VuZV9tYXhfZ2ZfaW50ZXJ2YWwgPSAyNTA7
CiAgIHZwOV9yY19pbml0KG94Y2YsIDEsICZyYyk7CiAKICAgd2hpbGUgKHNob3dfaWR4IDwgZmly
c3RfcGFzc19pbmZvLT5udW1fZnJhbWVzKSB7CkBAIC0zNzYyLDkgKzM4MTksOCBAQCBpbnQgdnA5
X2dldF9jb2RpbmdfZnJhbWVfbnVtKGNvbnN0IGludCAqZXh0ZXJuYWxfYXJmX2luZGV4ZXMsCiAg
ICAgfQogCiAgICAgZ29wX2NvZGluZ19mcmFtZV9jb3VudCA9IHZwOV9nZXRfZ29wX2NvZGluZ19m
cmFtZV9jb3VudCgKLSAgICAgICAgZXh0ZXJuYWxfYXJmX2luZGV4ZXMsIG94Y2YsIGZyYW1lX2lu
Zm8sIGZpcnN0X3Bhc3NfaW5mbywgJnJjLCBzaG93X2lkeCwKLSAgICAgICAgbXVsdGlfbGF5ZXJf
YXJmLCBhbGxvd19hbHRfcmVmLCBmaXJzdF9pc19rZXlfZnJhbWUsCi0gICAgICAgIGxhc3RfZ29w
X3VzZV9hbHRfcmVmLCAmdXNlX2FsdF9yZWYpOworICAgICAgICBveGNmLCBmcmFtZV9pbmZvLCBm
aXJzdF9wYXNzX2luZm8sICZyYywgc2hvd19pZHgsIG11bHRpX2xheWVyX2FyZiwKKyAgICAgICAg
YWxsb3dfYWx0X3JlZiwgZmlyc3RfaXNfa2V5X2ZyYW1lLCBsYXN0X2dvcF91c2VfYWx0X3JlZiwg
JnVzZV9hbHRfcmVmKTsKIAogICAgIHJjLnNvdXJjZV9hbHRfcmVmX2FjdGl2ZSA9IHVzZV9hbHRf
cmVmOwogICAgIGxhc3RfZ29wX3VzZV9hbHRfcmVmID0gdXNlX2FsdF9yZWY7CkBAIC0zNzc2LDYg
KzM4MzIsMzAgQEAgaW50IHZwOV9nZXRfY29kaW5nX2ZyYW1lX251bShjb25zdCBpbnQgKmV4dGVy
bmFsX2FyZl9pbmRleGVzLAogICB9CiAgIHJldHVybiBjb2RpbmdfZnJhbWVfbnVtOwogfQorCit2
b2lkIHZwOV9nZXRfa2V5X2ZyYW1lX21hcChjb25zdCBWUDlFbmNvZGVyQ29uZmlnICpveGNmLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRlJBTUVfSU5GTyAqZnJhbWVfaW5mbywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEZJUlNUX1BBU1NfSU5GTyAqZmlyc3Rf
cGFzc19pbmZvLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICprZXlfZnJhbWVfbWFw
KSB7CisgIGludCBzaG93X2lkeCA9IDA7CisgIFJBVEVfQ09OVFJPTCByYzsKKyAgdnA5X3JjX2lu
aXQob3hjZiwgMSwgJnJjKTsKKworICAvLyBrZXlfZnJhbWVfbWFwIHBvaW50cyB0byBhbiBpbnQg
YXJyYXkgd2l0aCBzaXplIGVxdWFsIHRvCisgIC8vIGZpcnN0X3Bhc3NfaW5mby0+bnVtX2ZyYW1l
cywgd2hpY2ggaXMgYWxzbyB0aGUgbnVtYmVyIG9mIHNob3cgZnJhbWVzIGluIHRoZQorICAvLyB2
aWRlby4KKyAgbWVtc2V0KGtleV9mcmFtZV9tYXAsIDAsCisgICAgICAgICBzaXplb2YoKmtleV9m
cmFtZV9tYXApICogZmlyc3RfcGFzc19pbmZvLT5udW1fZnJhbWVzKTsKKyAgd2hpbGUgKHNob3df
aWR4IDwgZmlyc3RfcGFzc19pbmZvLT5udW1fZnJhbWVzKSB7CisgICAgaW50IGtleV9mcmFtZV9n
cm91cF9zaXplOworICAgIGtleV9mcmFtZV9tYXBbc2hvd19pZHhdID0gMTsKKyAgICBrZXlfZnJh
bWVfZ3JvdXBfc2l6ZSA9IHZwOV9nZXRfZnJhbWVzX3RvX25leHRfa2V5KAorICAgICAgICBveGNm
LCBmcmFtZV9pbmZvLCBmaXJzdF9wYXNzX2luZm8sIHNob3dfaWR4LCByYy5taW5fZ2ZfaW50ZXJ2
YWwpOworICAgIGFzc2VydChrZXlfZnJhbWVfZ3JvdXBfc2l6ZSA+IDApOworICAgIHNob3dfaWR4
ICs9IGtleV9mcmFtZV9ncm91cF9zaXplOworICB9CisgIGFzc2VydChzaG93X2lkeCA9PSBmaXJz
dF9wYXNzX2luZm8tPm51bV9mcmFtZXMpOworfQogI2VuZGlmICAvLyBDT05GSUdfUkFURV9DVFJM
CiAKIEZJUlNUUEFTU19TVEFUUyB2cDlfZ2V0X2ZyYW1lX3N0YXRzKGNvbnN0IFRXT19QQVNTICp0
d29wYXNzKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9maXJzdHBh
c3MuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZpcnN0cGFzcy5oCmluZGV4IGRjYWYy
ZWVjNjc2MDMzZjg4OGJkMmFjNmQ4MTgxOWUwMzQzYTBmODAuLmIxMDQ3ZWFiMjI2ODFiYmM4YTNl
YzM3NGZkNjRkM2JiMjU5OTY3YWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2ZpcnN0cGFzcy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZpcnN0cGFz
cy5oCkBAIC0yNjQsNyArMjY0LDYgQEAgdm9pZCB2cDlfZ2V0X25leHRfZ3JvdXBfb2ZfcGljdHVy
ZShjb25zdCBzdHJ1Y3QgVlA5X0NPTVAgKmNwaSwKIAogLyohXGJyaWVmIENhbGwgdGhpcyBmdW5j
dGlvbiBiZWZvcmUgY29kaW5nIGEgbmV3IGdyb3VwIG9mIHBpY3R1cmVzIHRvIGdldAogICogaW5m
b3JtYXRpb24gYWJvdXQgaXQuCi0gKiBccGFyYW1baW5dIGV4dGVybmFsX2FyZl9pbmRleGVzIEV4
dGVybmFsIGFyZiBpbmRleHMgcGFzc2VkIGluCiAgKiBccGFyYW1baW5dIG94Y2YgICAgICAgICAg
ICAgICAgIEVuY29kZXIgY29uZmlnCiAgKiBccGFyYW1baW5dIGZyYW1lX2luZm8gICAgICAgICAg
IEZyYW1lIGluZm8KICAqIFxwYXJhbVtpbl0gZmlyc3RfcGFzc19pbmZvICAgICAgRmlyc3QgcGFz
cyBzdGF0cwpAQCAtMjc5LDggKzI3OCw3IEBAIHZvaWQgdnA5X2dldF9uZXh0X2dyb3VwX29mX3Bp
Y3R1cmUoY29uc3Qgc3RydWN0IFZQOV9DT01QICpjcGksCiAgKgogICogXHJldHVybiBSZXR1cm5z
IGNvZGluZyBmcmFtZSBjb3VudAogICovCi1pbnQgdnA5X2dldF9nb3BfY29kaW5nX2ZyYW1lX2Nv
dW50KGNvbnN0IGludCAqZXh0ZXJuYWxfYXJmX2luZGV4ZXMsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBWUDlFbmNvZGVyQ29uZmlnICpveGNmLAoraW50
IHZwOV9nZXRfZ29wX2NvZGluZ19mcmFtZV9jb3VudChjb25zdCBzdHJ1Y3QgVlA5RW5jb2RlckNv
bmZpZyAqb3hjZiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRlJB
TUVfSU5GTyAqZnJhbWVfaW5mbywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgRklSU1RfUEFTU19JTkZPICpmaXJzdF9wYXNzX2luZm8sCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IFJBVEVfQ09OVFJPTCAqcmMsIGludCBzaG93X2lkeCwK
QEAgLTI4OCwxMSArMjg2LDIwIEBAIGludCB2cDlfZ2V0X2dvcF9jb2RpbmdfZnJhbWVfY291bnQo
Y29uc3QgaW50ICpleHRlcm5hbF9hcmZfaW5kZXhlcywKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50IGZpcnN0X2lzX2tleV9mcmFtZSwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW50IGxhc3RfZ29wX3VzZV9hbHRfcmVmLCBpbnQgKnVzZV9hbHRfcmVm
KTsKIAotaW50IHZwOV9nZXRfY29kaW5nX2ZyYW1lX251bShjb25zdCBpbnQgKmV4dGVybmFsX2Fy
Zl9pbmRleGVzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgVlA5
RW5jb2RlckNvbmZpZyAqb3hjZiwKK2ludCB2cDlfZ2V0X2NvZGluZ19mcmFtZV9udW0oY29uc3Qg
c3RydWN0IFZQOUVuY29kZXJDb25maWcgKm94Y2YsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IEZSQU1FX0lORk8gKmZyYW1lX2luZm8sCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IEZJUlNUX1BBU1NfSU5GTyAqZmlyc3RfcGFzc19pbmZvLAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBpbnQgbXVsdGlfbGF5ZXJfYXJmLCBpbnQgYWxsb3dfYWx0X3Jl
Zik7CisKKy8qIVxicmllZiBDb21wdXRlIGEga2V5IGZyYW1lIGJpbmFyeSBtYXAgaW5kaWNhdGVz
IHdoZXRoZXIga2V5IGZyYW1lcyBhcHBlYXIKKyAqIGluIHRoZSBjb3JyZXNwb25kaW5nIHBvc2l0
aW9ucy4gVGhlIHBhc3NlZCBpbiBrZXlfZnJhbWVfbWFwIG11c3QgcG9pbnQgdG8gYW4KKyAqIGlu
dGVnZXIgYXJyYXkgd2l0aCBsZW5ndGggZXF1YWwgdG8gZmlyc3RfcGFzc19pbmZvLT5udW1fZnJh
bWVzLCB3aGljaCBpcyB0aGUKKyAqIG51bWJlciBvZiBzaG93IGZyYW1lcyBpbiB0aGUgdmlkZW8u
CisgKi8KK3ZvaWQgdnA5X2dldF9rZXlfZnJhbWVfbWFwKGNvbnN0IHN0cnVjdCBWUDlFbmNvZGVy
Q29uZmlnICpveGNmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRlJBTUVfSU5G
TyAqZnJhbWVfaW5mbywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEZJUlNUX1BB
U1NfSU5GTyAqZmlyc3RfcGFzc19pbmZvLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50
ICprZXlfZnJhbWVfbWFwKTsKICNlbmRpZiAgLy8gQ09ORklHX1JBVEVfQ1RSTAogCiBGSVJTVFBB
U1NfU1RBVFMgdnA5X2dldF9mcmFtZV9zdGF0cyhjb25zdCBUV09fUEFTUyAqdHdvcGFzcyk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbW9kZS5jIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfcGlja21vZGUuYwppbmRleCAyM2M5NDNjMjFkMjQ2ZTBkZTgy
OWMyZjJkNWIwODMwOWMzNzk4ZGE1Li42OTVmZDQ4NGZjNmIzNzhiMjFlNWVmYzAzODMxMmZlMDUz
ZjY1ODJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbW9kZS5j
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2ttb2RlLmMKQEAgLTExMjcsNyAr
MTEyNyw3IEBAIHN0YXRpYyBJTkxJTkUgdm9pZCB1cGRhdGVfdGhyZXNoX2ZyZXFfZmFjdF9yb3df
bXQoCiB9CiAKIHN0YXRpYyBJTkxJTkUgdm9pZCB1cGRhdGVfdGhyZXNoX2ZyZXFfZmFjdCgKLSAg
ICBWUDlfQ09NUCAqY3BpLCBUaWxlRGF0YUVuYyAqdGlsZV9kYXRhLCBpbnQgc291cmNlX3Zhcmlh
bmNlLAorICAgIFZQOV9DT01QICpjcGksIFRpbGVEYXRhRW5jICp0aWxlX2RhdGEsIHVuc2lnbmVk
IGludCBzb3VyY2VfdmFyaWFuY2UsCiAgICAgQkxPQ0tfU0laRSBic2l6ZSwgTVZfUkVGRVJFTkNF
X0ZSQU1FIHJlZl9mcmFtZSwgVEhSX01PREVTIGJlc3RfbW9kZV9pZHgsCiAgICAgUFJFRElDVElP
Tl9NT0RFIG1vZGUpIHsKICAgVEhSX01PREVTIHRocl9tb2RlX2lkeCA9IG1vZGVfaWR4W3JlZl9m
cmFtZV1bbW9kZV9vZmZzZXQobW9kZSldOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfcmF0ZWN0cmwuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJs
LmMKaW5kZXggZWRiZWQ3MzBiOTY5MzZkNDc4MzFhMzAyZTRlNWMxMDRlMjUyNmE3Mi4uNGI4N2Zm
MmYwYzYwNjRiZTQyM2I4ODM2NDQ0YWE5YTIwMDQwNjFjYSAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfcmF0ZWN0cmwuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9yYXRlY3RybC5jCkBAIC0yNDUsMTEgKzI0NSwxMSBAQCBpbnQgdnA5X3JjX2NsYW1wX2lm
cmFtZV90YXJnZXRfc2l6ZShjb25zdCBWUDlfQ09NUCAqY29uc3QgY3BpLCBpbnQgdGFyZ2V0KSB7
CiAgIHJldHVybiB0YXJnZXQ7CiB9CiAKLS8vIFRPRE8obWFycGFuL2ppYW5qKTogYml0c19vZmZf
dGFyZ2V0IGFuZCBidWZmZXJfbGV2ZWwgYXJlIHVzZWQgaW4gdGhlIHNhYW1lCisvLyBUT0RPKG1h
cnBhbi9qaWFuaik6IGJpdHNfb2ZmX3RhcmdldCBhbmQgYnVmZmVyX2xldmVsIGFyZSB1c2VkIGlu
IHRoZSBzYW1lCiAvLyB3YXkgZm9yIENCUiBtb2RlLCBmb3IgdGhlIGJ1ZmZlcmluZyB1cGRhdGVz
IGJlbG93LiBMb29rIGludG8gcmVtb3Zpbmcgb25lCiAvLyBvZiB0aGVzZSAoaS5lLiwgYml0c19v
ZmZfdGFyZ2V0KS4KIC8vIFVwZGF0ZSB0aGUgYnVmZmVyIGxldmVsIGJlZm9yZSBlbmNvZGluZyB3
aXRoIHRoZSBwZXItZnJhbWUtYmFuZHdpZHRoLAotc3RhdGljIHZvaWQgdXBkYXRlX2J1ZmZlcl9s
ZXZlbF9wcmVlbmNvZGUoVlA5X0NPTVAgKmNwaSkgewordm9pZCB2cDlfdXBkYXRlX2J1ZmZlcl9s
ZXZlbF9wcmVlbmNvZGUoVlA5X0NPTVAgKmNwaSkgewogICBSQVRFX0NPTlRST0wgKmNvbnN0IHJj
ID0gJmNwaS0+cmM7CiAgIHJjLT5iaXRzX29mZl90YXJnZXQgKz0gcmMtPmF2Z19mcmFtZV9iYW5k
d2lkdGg7CiAgIC8vIENsaXAgdGhlIGJ1ZmZlciBsZXZlbCB0byB0aGUgbWF4aW11bSBzcGVjaWZp
ZWQgYnVmZmVyIHNpemUuCkBAIC00MDIsNiArNDAyLDcgQEAgdm9pZCB2cDlfcmNfaW5pdChjb25z
dCBWUDlFbmNvZGVyQ29uZmlnICpveGNmLCBpbnQgcGFzcywgUkFURV9DT05UUk9MICpyYykgewog
ICByYy0+ZmFjX2FjdGl2ZV93b3JzdF9nZiA9IDEwMDsKICAgcmMtPmZvcmNlX3FwbWluID0gMDsK
ICAgZm9yIChpID0gMDsgaSA8IE1BWF9MQUdfQlVGRkVSUzsgKytpKSByYy0+YXZnX3NvdXJjZV9z
YWRbaV0gPSAwOworICByYy0+ZnJhbWVzX3RvX2tleSA9IDA7CiAgIHJjLT5mcmFtZXNfc2luY2Vf
a2V5ID0gODsgIC8vIFNlbnNpYmxlIGRlZmF1bHQgZm9yIGZpcnN0IGZyYW1lLgogICByYy0+dGhp
c19rZXlfZnJhbWVfZm9yY2VkID0gMDsKICAgcmMtPm5leHRfa2V5X2ZyYW1lX2ZvcmNlZCA9IDA7
CkBAIC00MzAsMTEgKzQzMSwxNyBAQCB2b2lkIHZwOV9yY19pbml0KGNvbnN0IFZQOUVuY29kZXJD
b25maWcgKm94Y2YsIGludCBwYXNzLCBSQVRFX0NPTlRST0wgKnJjKSB7CiAgICAgcmMtPm1heF9n
Zl9pbnRlcnZhbCA9IHZwOV9yY19nZXRfZGVmYXVsdF9tYXhfZ2ZfaW50ZXJ2YWwoCiAgICAgICAg
IG94Y2YtPmluaXRfZnJhbWVyYXRlLCByYy0+bWluX2dmX2ludGVydmFsKTsKICAgcmMtPmJhc2Vs
aW5lX2dmX2ludGVydmFsID0gKHJjLT5taW5fZ2ZfaW50ZXJ2YWwgKyByYy0+bWF4X2dmX2ludGVy
dmFsKSAvIDI7CisgIGlmICgob3hjZi0+cGFzcyA9PSAwKSAmJiAob3hjZi0+cmNfbW9kZSA9PSBW
UFhfUSkpIHsKKyAgICByYy0+c3RhdGljX3NjZW5lX21heF9nZl9pbnRlcnZhbCA9IEZJWEVEX0dG
X0lOVEVSVkFMOworICB9IGVsc2UgeworICAgIHJjLT5zdGF0aWNfc2NlbmVfbWF4X2dmX2ludGVy
dmFsID0gTUFYX1NUQVRJQ19HRl9HUk9VUF9MRU5HVEg7CisgIH0KIAogICByYy0+Zm9yY2VfbWF4
X3EgPSAwOwogICByYy0+bGFzdF9wb3N0X2VuY29kZV9kcm9wcGVkX3NjZW5lX2NoYW5nZSA9IDA7
CiAgIHJjLT51c2VfcG9zdF9lbmNvZGVfZHJvcCA9IDA7CiAgIHJjLT5leHRfdXNlX3Bvc3RfZW5j
b2RlX2Ryb3AgPSAwOworICByYy0+ZGlzYWJsZV9vdmVyc2hvb3RfbWF4cV9jYnIgPSAwOwogICBy
Yy0+YXJmX2FjdGl2ZV9iZXN0X3F1YWxpdHlfYWRqdXN0bWVudF9mYWN0b3IgPSAxLjA7CiAgIHJj
LT5hcmZfaW5jcmVhc2VfYWN0aXZlX2Jlc3RfcXVhbGl0eSA9IDA7CiAgIHJjLT5wcmVzZXJ2ZV9h
cmZfYXNfZ2xkID0gMDsKQEAgLTYzNiw3ICs2NDMsNyBAQCBpbnQgdnA5X3JjX2Ryb3BfZnJhbWUo
VlA5X0NPTVAgKmNwaSkgewogICAgICAgICAvLyBJbiBwYXJ0aWN1bGFyIHRlbXBvcmFsIGxheWVy
IGNvdW50ZXIgKHdoaWNoIGlzIGluY3JlbWVudGVkIGluCiAgICAgICAgIC8vIHZwOV9pbmNfZnJh
bWVfaW5fbGF5ZXIoKSkgd29uJ3QgYmUgaW5jcmVtZW50ZWQsIHNvIG9uIGEgZHJvcHBlZAogICAg
ICAgICAvLyBmcmFtZSB3ZSB0cnkgdGhlIHNhbWUgdGVtcG9yYWxfbGF5ZXJfaWQgb24gbmV4dCBp
bmNvbWluZyBmcmFtZS4KLSAgICAgICAgLy8gVGhpcyBpcyB0byBhdm9pZCBhbiBpc3N1ZSB3aXRo
IHRlbXBvcmFsIGFsaWduZW1lbnQgd2l0aCBmdWxsCisgICAgICAgIC8vIFRoaXMgaXMgdG8gYXZv
aWQgYW4gaXNzdWUgd2l0aCB0ZW1wb3JhbCBhbGlnbm1lbnQgd2l0aCBmdWxsCiAgICAgICAgIC8v
IHN1cGVyZnJhbWUgZHJvcHBpbmcuCiAgICAgICAgIHZwOV9pbmNfZnJhbWVfaW5fbGF5ZXIoY3Bp
KTsKICAgICAgIH0KQEAgLTE2ODksOCArMTY5NiwxMCBAQCB2b2lkIHZwOV9yY19jb21wdXRlX2Zy
YW1lX3NpemVfYm91bmRzKGNvbnN0IFZQOV9DT01QICpjcGksIGludCBmcmFtZV90YXJnZXQsCiAg
IH0gZWxzZSB7CiAgICAgLy8gRm9yIHZlcnkgc21hbGwgcmF0ZSB0YXJnZXRzIHdoZXJlIHRoZSBm
cmFjdGlvbmFsIGFkanVzdG1lbnQKICAgICAvLyBtYXkgYmUgdGlueSBtYWtlIHN1cmUgdGhlcmUg
aXMgYXQgbGVhc3QgYSBtaW5pbXVtIHJhbmdlLgotICAgIGNvbnN0IGludCB0b2xfbG93ID0gKGNw
aS0+c2YucmVjb2RlX3RvbGVyYW5jZV9sb3cgKiBmcmFtZV90YXJnZXQpIC8gMTAwOwotICAgIGNv
bnN0IGludCB0b2xfaGlnaCA9IChjcGktPnNmLnJlY29kZV90b2xlcmFuY2VfaGlnaCAqIGZyYW1l
X3RhcmdldCkgLyAxMDA7CisgICAgY29uc3QgaW50IHRvbF9sb3cgPQorICAgICAgICAoaW50KSgo
KGludDY0X3QpY3BpLT5zZi5yZWNvZGVfdG9sZXJhbmNlX2xvdyAqIGZyYW1lX3RhcmdldCkgLyAx
MDApOworICAgIGNvbnN0IGludCB0b2xfaGlnaCA9CisgICAgICAgIChpbnQpKCgoaW50NjRfdClj
cGktPnNmLnJlY29kZV90b2xlcmFuY2VfaGlnaCAqIGZyYW1lX3RhcmdldCkgLyAxMDApOwogICAg
ICpmcmFtZV91bmRlcl9zaG9vdF9saW1pdCA9IFZQWE1BWChmcmFtZV90YXJnZXQgLSB0b2xfbG93
IC0gMTAwLCAwKTsKICAgICAqZnJhbWVfb3Zlcl9zaG9vdF9saW1pdCA9CiAgICAgICAgIFZQWE1J
TihmcmFtZV90YXJnZXQgKyB0b2xfaGlnaCArIDEwMCwgY3BpLT5yYy5tYXhfZnJhbWVfYmFuZHdp
ZHRoKTsKQEAgLTE3MDUsOSArMTcxNCwxNiBAQCB2b2lkIHZwOV9yY19zZXRfZnJhbWVfdGFyZ2V0
KFZQOV9DT01QICpjcGksIGludCB0YXJnZXQpIHsKIAogICAvLyBNb2RpZnkgZnJhbWUgc2l6ZSB0
YXJnZXQgd2hlbiBkb3duLXNjYWxpbmcuCiAgIGlmIChjcGktPm94Y2YucmVzaXplX21vZGUgPT0g
UkVTSVpFX0RZTkFNSUMgJiYKLSAgICAgIHJjLT5mcmFtZV9zaXplX3NlbGVjdG9yICE9IFVOU0NB
TEVEKQorICAgICAgcmMtPmZyYW1lX3NpemVfc2VsZWN0b3IgIT0gVU5TQ0FMRUQpIHsKICAgICBy
Yy0+dGhpc19mcmFtZV90YXJnZXQgPSAoaW50KShyYy0+dGhpc19mcmFtZV90YXJnZXQgKgogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhdGVfdGhyZXNoX211bHRbcmMtPmZyYW1l
X3NpemVfc2VsZWN0b3JdKTsKKyAgfQorCisjaWYgQ09ORklHX1JBVEVfQ1RSTAorICBpZiAoY3Bp
LT5lbmNvZGVfY29tbWFuZC51c2VfZXh0ZXJuYWxfdGFyZ2V0X2ZyYW1lX2JpdHMpIHsKKyAgICBy
Yy0+dGhpc19mcmFtZV90YXJnZXQgPSBjcGktPmVuY29kZV9jb21tYW5kLnRhcmdldF9mcmFtZV9i
aXRzOworICB9CisjZW5kaWYKIAogICAvLyBUYXJnZXQgcmF0ZSBwZXIgU0I2NCAoaW5jbHVkaW5n
IHBhcnRpYWwgU0I2NHMuCiAgIHJjLT5zYjY0X3RhcmdldF9yYXRlID0gKGludCkoKChpbnQ2NF90
KXJjLT50aGlzX2ZyYW1lX3RhcmdldCAqIDY0ICogNjQpIC8KQEAgLTE3ODYsOCArMTgwMiw5IEBA
IHN0YXRpYyB2b2lkIHVwZGF0ZV9hbHRyZWZfdXNhZ2UoVlA5X0NPTVAgKmNvbnN0IGNwaSkgewog
ICB9CiB9CiAKLXN0YXRpYyB2b2lkIGNvbXB1dGVfZnJhbWVfbG93X21vdGlvbihWUDlfQ09NUCAq
Y29uc3QgY3BpKSB7Cit2b2lkIHZwOV9jb21wdXRlX2ZyYW1lX2xvd19tb3Rpb24oVlA5X0NPTVAg
KmNvbnN0IGNwaSkgewogICBWUDlfQ09NTU9OICpjb25zdCBjbSA9ICZjcGktPmNvbW1vbjsKKyAg
U1ZDICpjb25zdCBzdmMgPSAmY3BpLT5zdmM7CiAgIGludCBtaV9yb3csIG1pX2NvbDsKICAgTU9E
RV9JTkZPICoqbWkgPSBjbS0+bWlfZ3JpZF92aXNpYmxlOwogICBSQVRFX0NPTlRST0wgKmNvbnN0
IHJjID0gJmNwaS0+cmM7CkBAIC0xODA0LDYgKzE4MjEsMTkgQEAgc3RhdGljIHZvaWQgY29tcHV0
ZV9mcmFtZV9sb3dfbW90aW9uKFZQOV9DT01QICpjb25zdCBjcGkpIHsKICAgfQogICBjbnRfemVy
b212ID0gMTAwICogY250X3plcm9tdiAvIChyb3dzICogY29scyk7CiAgIHJjLT5hdmdfZnJhbWVf
bG93X21vdGlvbiA9ICgzICogcmMtPmF2Z19mcmFtZV9sb3dfbW90aW9uICsgY250X3plcm9tdikg
Pj4gMjsKKworICAvLyBGb3IgU1ZDOiBzZXQgYXZnX2ZyYW1lX2xvd19tb3Rpb24gKG9ubHkgY29t
cHV0ZWQgb24gdG9wIHNwYXRpYWwgbGF5ZXIpCisgIC8vIHRvIGFsbCBsb3dlciBzcGF0aWFsIGxh
eWVycy4KKyAgaWYgKGNwaS0+dXNlX3N2YyAmJiBzdmMtPnNwYXRpYWxfbGF5ZXJfaWQgPT0gc3Zj
LT5udW1iZXJfc3BhdGlhbF9sYXllcnMgLSAxKSB7CisgICAgaW50IGk7CisgICAgZm9yIChpID0g
MDsgaSA8IHN2Yy0+bnVtYmVyX3NwYXRpYWxfbGF5ZXJzIC0gMTsgKytpKSB7CisgICAgICBjb25z
dCBpbnQgbGF5ZXIgPSBMQVlFUl9JRFNfVE9fSURYKGksIHN2Yy0+dGVtcG9yYWxfbGF5ZXJfaWQs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN2Yy0+bnVtYmVyX3Rl
bXBvcmFsX2xheWVycyk7CisgICAgICBMQVlFUl9DT05URVhUICpjb25zdCBsYyA9ICZzdmMtPmxh
eWVyX2NvbnRleHRbbGF5ZXJdOworICAgICAgUkFURV9DT05UUk9MICpjb25zdCBscmMgPSAmbGMt
PnJjOworICAgICAgbHJjLT5hdmdfZnJhbWVfbG93X21vdGlvbiA9IHJjLT5hdmdfZnJhbWVfbG93
X21vdGlvbjsKKyAgICB9CisgIH0KIH0KIAogdm9pZCB2cDlfcmNfcG9zdGVuY29kZV91cGRhdGUo
VlA5X0NPTVAgKmNwaSwgdWludDY0X3QgYnl0ZXNfdXNlZCkgewpAQCAtMTg4NSwxNCArMTkxNSwx
NSBAQCB2b2lkIHZwOV9yY19wb3N0ZW5jb2RlX3VwZGF0ZShWUDlfQ09NUCAqY3BpLCB1aW50NjRf
dCBieXRlc191c2VkKSB7CiAgIC8vIFJvbGxpbmcgbW9uaXRvcnMgb2Ygd2hldGhlciB3ZSBhcmUg
b3ZlciBvciB1bmRlcnNwZW5kaW5nIHVzZWQgdG8gaGVscAogICAvLyByZWd1bGF0ZSBtaW4gYW5k
IE1heCBRIGluIHR3byBwYXNzLgogICBpZiAoIWZyYW1lX2lzX2ludHJhX29ubHkoY20pKSB7Ci0g
ICAgcmMtPnJvbGxpbmdfdGFyZ2V0X2JpdHMgPSBST1VORF9QT1dFUl9PRl9UV08oCi0gICAgICAg
IHJjLT5yb2xsaW5nX3RhcmdldF9iaXRzICogMyArIHJjLT50aGlzX2ZyYW1lX3RhcmdldCwgMik7
Ci0gICAgcmMtPnJvbGxpbmdfYWN0dWFsX2JpdHMgPSBST1VORF9QT1dFUl9PRl9UV08oCi0gICAg
ICAgIHJjLT5yb2xsaW5nX2FjdHVhbF9iaXRzICogMyArIHJjLT5wcm9qZWN0ZWRfZnJhbWVfc2l6
ZSwgMik7Ci0gICAgcmMtPmxvbmdfcm9sbGluZ190YXJnZXRfYml0cyA9IFJPVU5EX1BPV0VSX09G
X1RXTygKLSAgICAgICAgcmMtPmxvbmdfcm9sbGluZ190YXJnZXRfYml0cyAqIDMxICsgcmMtPnRo
aXNfZnJhbWVfdGFyZ2V0LCA1KTsKLSAgICByYy0+bG9uZ19yb2xsaW5nX2FjdHVhbF9iaXRzID0g
Uk9VTkRfUE9XRVJfT0ZfVFdPKAotICAgICAgICByYy0+bG9uZ19yb2xsaW5nX2FjdHVhbF9iaXRz
ICogMzEgKyByYy0+cHJvamVjdGVkX2ZyYW1lX3NpemUsIDUpOworICAgIHJjLT5yb2xsaW5nX3Rh
cmdldF9iaXRzID0gKGludClST1VORDY0X1BPV0VSX09GX1RXTygKKyAgICAgICAgKGludDY0X3Qp
cmMtPnJvbGxpbmdfdGFyZ2V0X2JpdHMgKiAzICsgcmMtPnRoaXNfZnJhbWVfdGFyZ2V0LCAyKTsK
KyAgICByYy0+cm9sbGluZ19hY3R1YWxfYml0cyA9IChpbnQpUk9VTkQ2NF9QT1dFUl9PRl9UV08o
CisgICAgICAgIChpbnQ2NF90KXJjLT5yb2xsaW5nX2FjdHVhbF9iaXRzICogMyArIHJjLT5wcm9q
ZWN0ZWRfZnJhbWVfc2l6ZSwgMik7CisgICAgcmMtPmxvbmdfcm9sbGluZ190YXJnZXRfYml0cyA9
IChpbnQpUk9VTkQ2NF9QT1dFUl9PRl9UV08oCisgICAgICAgIChpbnQ2NF90KXJjLT5sb25nX3Jv
bGxpbmdfdGFyZ2V0X2JpdHMgKiAzMSArIHJjLT50aGlzX2ZyYW1lX3RhcmdldCwgNSk7CisgICAg
cmMtPmxvbmdfcm9sbGluZ19hY3R1YWxfYml0cyA9IChpbnQpUk9VTkQ2NF9QT1dFUl9PRl9UV08o
CisgICAgICAgIChpbnQ2NF90KXJjLT5sb25nX3JvbGxpbmdfYWN0dWFsX2JpdHMgKiAzMSArIHJj
LT5wcm9qZWN0ZWRfZnJhbWVfc2l6ZSwKKyAgICAgICAgNSk7CiAgIH0KIAogICAvLyBBY3R1YWwg
Yml0cyBzcGVudApAQCAtMTk0NiwyOSArMTk3NywxMSBAQCB2b2lkIHZwOV9yY19wb3N0ZW5jb2Rl
X3VwZGF0ZShWUDlfQ09NUCAqY3BpLCB1aW50NjRfdCBieXRlc191c2VkKSB7CiAgIH0KIAogICBp
ZiAob3hjZi0+cGFzcyA9PSAwKSB7Ci0gICAgaWYgKCFmcmFtZV9pc19pbnRyYV9vbmx5KGNtKSAm
JgotICAgICAgICAoIWNwaS0+dXNlX3N2YyB8fAotICAgICAgICAgKGNwaS0+dXNlX3N2YyAmJgot
ICAgICAgICAgICFzdmMtPmxheWVyX2NvbnRleHRbc3ZjLT50ZW1wb3JhbF9sYXllcl9pZF0uaXNf
a2V5X2ZyYW1lICYmCi0gICAgICAgICAgc3ZjLT5zcGF0aWFsX2xheWVyX2lkID09IHN2Yy0+bnVt
YmVyX3NwYXRpYWxfbGF5ZXJzIC0gMSkpKSB7Ci0gICAgICBjb21wdXRlX2ZyYW1lX2xvd19tb3Rp
b24oY3BpKTsKKyAgICBpZiAoIWZyYW1lX2lzX2ludHJhX29ubHkoY20pKQogICAgICAgaWYgKGNw
aS0+c2YudXNlX2FsdHJlZl9vbmVwYXNzKSB1cGRhdGVfYWx0cmVmX3VzYWdlKGNwaSk7Ci0gICAg
fQotICAgIC8vIEZvciBTVkM6IHNldCBhdmdfZnJhbWVfbG93X21vdGlvbiAob25seSBjb21wdXRl
ZCBvbiB0b3Agc3BhdGlhbCBsYXllcikKLSAgICAvLyB0byBhbGwgbG93ZXIgc3BhdGlhbCBsYXll
cnMuCi0gICAgaWYgKGNwaS0+dXNlX3N2YyAmJgotICAgICAgICBzdmMtPnNwYXRpYWxfbGF5ZXJf
aWQgPT0gc3ZjLT5udW1iZXJfc3BhdGlhbF9sYXllcnMgLSAxKSB7Ci0gICAgICBpbnQgaTsKLSAg
ICAgIGZvciAoaSA9IDA7IGkgPCBzdmMtPm51bWJlcl9zcGF0aWFsX2xheWVycyAtIDE7ICsraSkg
ewotICAgICAgICBjb25zdCBpbnQgbGF5ZXIgPSBMQVlFUl9JRFNfVE9fSURYKGksIHN2Yy0+dGVt
cG9yYWxfbGF5ZXJfaWQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgc3ZjLT5udW1iZXJfdGVtcG9yYWxfbGF5ZXJzKTsKLSAgICAgICAgTEFZRVJfQ09OVEVYVCAq
Y29uc3QgbGMgPSAmc3ZjLT5sYXllcl9jb250ZXh0W2xheWVyXTsKLSAgICAgICAgUkFURV9DT05U
Uk9MICpjb25zdCBscmMgPSAmbGMtPnJjOwotICAgICAgICBscmMtPmF2Z19mcmFtZV9sb3dfbW90
aW9uID0gcmMtPmF2Z19mcmFtZV9sb3dfbW90aW9uOwotICAgICAgfQotICAgIH0KICAgICBjcGkt
PnJjLmxhc3RfZnJhbWVfaXNfc3JjX2FsdHJlZiA9IGNwaS0+cmMuaXNfc3JjX2ZyYW1lX2FsdF9y
ZWY7CiAgIH0KKwogICBpZiAoIWZyYW1lX2lzX2ludHJhX29ubHkoY20pKSByYy0+cmVzZXRfaGln
aF9zb3VyY2Vfc2FkID0gMDsKIAogICByYy0+bGFzdF9hdmdfZnJhbWVfYmFuZHdpZHRoID0gcmMt
PmF2Z19mcmFtZV9iYW5kd2lkdGg7CkBAIC0xOTgzLDYgKzE5OTYsNyBAQCB2b2lkIHZwOV9yY19w
b3N0ZW5jb2RlX3VwZGF0ZV9kcm9wX2ZyYW1lKFZQOV9DT01QICpjcGkpIHsKICAgY3BpLT5yYy5y
Y18yX2ZyYW1lID0gMDsKICAgY3BpLT5yYy5yY18xX2ZyYW1lID0gMDsKICAgY3BpLT5yYy5sYXN0
X2F2Z19mcmFtZV9iYW5kd2lkdGggPSBjcGktPnJjLmF2Z19mcmFtZV9iYW5kd2lkdGg7CisgIGNw
aS0+cmMubGFzdF9xW0lOVEVSX0ZSQU1FXSA9IGNwaS0+Y29tbW9uLmJhc2VfcWluZGV4OwogICAv
LyBGb3IgU1ZDIG9uIGRyb3BwZWQgZnJhbWUgd2hlbiBmcmFtZWRyb3BfbW9kZSAhPSBMQVlFUl9E
Uk9QOgogICAvLyBpbiB0aGlzIG1vZGUgdGhlIHdob2xlIHN1cGVyZnJhbWUgbWF5IGJlIGRyb3Bw
ZWQgaWYgb25seSBhIHNpbmdsZSBsYXllcgogICAvLyBoYXMgYnVmZmVyIHVuZGVyZmxvdyAoYmVs
b3cgdGhyZXNob2xkKS4gU2luY2UgdGhpcyBjYW4gdGhlbiBsZWFkIHRvCkBAIC0xOTk4LDE0ICsy
MDEyLDE2IEBAIHZvaWQgdnA5X3JjX3Bvc3RlbmNvZGVfdXBkYXRlX2Ryb3BfZnJhbWUoVlA5X0NP
TVAgKmNwaSkgewogc3RhdGljIGludCBjYWxjX3BmcmFtZV90YXJnZXRfc2l6ZV9vbmVfcGFzc192
YnIoY29uc3QgVlA5X0NPTVAgKmNvbnN0IGNwaSkgewogICBjb25zdCBSQVRFX0NPTlRST0wgKmNv
bnN0IHJjID0gJmNwaS0+cmM7CiAgIGNvbnN0IGludCBhZl9yYXRpbyA9IHJjLT5hZl9yYXRpb19v
bmVwYXNzX3ZicjsKLSAgaW50IHRhcmdldCA9CisgIGludDY0X3QgdGFyZ2V0ID0KICAgICAgICgh
cmMtPmlzX3NyY19mcmFtZV9hbHRfcmVmICYmCiAgICAgICAgKGNwaS0+cmVmcmVzaF9nb2xkZW5f
ZnJhbWUgfHwgY3BpLT5yZWZyZXNoX2FsdF9yZWZfZnJhbWUpKQotICAgICAgICAgID8gKHJjLT5h
dmdfZnJhbWVfYmFuZHdpZHRoICogcmMtPmJhc2VsaW5lX2dmX2ludGVydmFsICogYWZfcmF0aW8p
IC8KKyAgICAgICAgICA/ICgoaW50NjRfdClyYy0+YXZnX2ZyYW1lX2JhbmR3aWR0aCAqIHJjLT5i
YXNlbGluZV9nZl9pbnRlcnZhbCAqCisgICAgICAgICAgICAgYWZfcmF0aW8pIC8KICAgICAgICAg
ICAgICAgICAocmMtPmJhc2VsaW5lX2dmX2ludGVydmFsICsgYWZfcmF0aW8gLSAxKQotICAgICAg
ICAgIDogKHJjLT5hdmdfZnJhbWVfYmFuZHdpZHRoICogcmMtPmJhc2VsaW5lX2dmX2ludGVydmFs
KSAvCisgICAgICAgICAgOiAoKGludDY0X3QpcmMtPmF2Z19mcmFtZV9iYW5kd2lkdGggKiByYy0+
YmFzZWxpbmVfZ2ZfaW50ZXJ2YWwpIC8KICAgICAgICAgICAgICAgICAocmMtPmJhc2VsaW5lX2dm
X2ludGVydmFsICsgYWZfcmF0aW8gLSAxKTsKLSAgcmV0dXJuIHZwOV9yY19jbGFtcF9wZnJhbWVf
dGFyZ2V0X3NpemUoY3BpLCB0YXJnZXQpOworICBpZiAodGFyZ2V0ID4gSU5UX01BWCkgdGFyZ2V0
ID0gSU5UX01BWDsKKyAgcmV0dXJuIHZwOV9yY19jbGFtcF9wZnJhbWVfdGFyZ2V0X3NpemUoY3Bp
LCAoaW50KXRhcmdldCk7CiB9CiAKIHN0YXRpYyBpbnQgY2FsY19pZnJhbWVfdGFyZ2V0X3NpemVf
b25lX3Bhc3NfdmJyKGNvbnN0IFZQOV9DT01QICpjb25zdCBjcGkpIHsKQEAgLTIwOTgsNyArMjEx
NCw3IEBAIHZvaWQgdnA5X3JjX2dldF9vbmVfcGFzc192YnJfcGFyYW1zKFZQOV9DT01QICpjcGkp
IHsKICAgICB2cDlfY3ljbGljX3JlZnJlc2hfdXBkYXRlX3BhcmFtZXRlcnMoY3BpKTsKIH0KIAot
c3RhdGljIGludCBjYWxjX3BmcmFtZV90YXJnZXRfc2l6ZV9vbmVfcGFzc19jYnIoY29uc3QgVlA5
X0NPTVAgKmNwaSkgeworaW50IHZwOV9jYWxjX3BmcmFtZV90YXJnZXRfc2l6ZV9vbmVfcGFzc19j
YnIoY29uc3QgVlA5X0NPTVAgKmNwaSkgewogICBjb25zdCBWUDlFbmNvZGVyQ29uZmlnICpveGNm
ID0gJmNwaS0+b3hjZjsKICAgY29uc3QgUkFURV9DT05UUk9MICpyYyA9ICZjcGktPnJjOwogICBj
b25zdCBTVkMgKmNvbnN0IHN2YyA9ICZjcGktPnN2YzsKQEAgLTIxNDcsNyArMjE2Myw3IEBAIHN0
YXRpYyBpbnQgY2FsY19wZnJhbWVfdGFyZ2V0X3NpemVfb25lX3Bhc3NfY2JyKGNvbnN0IFZQOV9D
T01QICpjcGkpIHsKICAgcmV0dXJuIFZQWE1BWChtaW5fZnJhbWVfdGFyZ2V0LCB0YXJnZXQpOwog
fQogCi1zdGF0aWMgaW50IGNhbGNfaWZyYW1lX3RhcmdldF9zaXplX29uZV9wYXNzX2Nicihjb25z
dCBWUDlfQ09NUCAqY3BpKSB7CitpbnQgdnA5X2NhbGNfaWZyYW1lX3RhcmdldF9zaXplX29uZV9w
YXNzX2Nicihjb25zdCBWUDlfQ09NUCAqY3BpKSB7CiAgIGNvbnN0IFJBVEVfQ09OVFJPTCAqcmMg
PSAmY3BpLT5yYzsKICAgY29uc3QgVlA5RW5jb2RlckNvbmZpZyAqb3hjZiA9ICZjcGktPm94Y2Y7
CiAgIGNvbnN0IFNWQyAqY29uc3Qgc3ZjID0gJmNwaS0+c3ZjOwpAQCAtMjIzNSw3ICsyMjUxLDcg
QEAgdm9pZCB2cDlfcmNfZ2V0X3N2Y19wYXJhbXMoVlA5X0NPTVAgKmNwaSkgewogICAvLyBQZXJp
b2RpYyBrZXkgZnJhbWVzIGlzIGJhc2VkIG9uIHRoZSBzdXBlci1mcmFtZSBjb3VudGVyCiAgIC8v
IChzdmMuY3VycmVudF9zdXBlcmZyYW1lKSwgYWxzbyBvbmx5IGJhc2Ugc3BhdGlhbCBsYXllciBp
cyBrZXkgZnJhbWUuCiAgIC8vIEtleSBmcmFtZSBpcyBzZXQgZm9yIGFueSBvZiB0aGUgZm9sbG93
aW5nOiB2ZXJ5IGZpcnN0IGZyYW1lLCBmcmFtZSBmbGFncwotICAvLyBpbmRpY2F0ZXMga2V5LCBz
dXBlcmZyYW1lIGNvdW50ZXIgaGl0cyBrZXkgZnJlcXVlbmNleSwgb3IgKG5vbi1pbnRyYSkgc3lu
YworICAvLyBpbmRpY2F0ZXMga2V5LCBzdXBlcmZyYW1lIGNvdW50ZXIgaGl0cyBrZXkgZnJlcXVl
bmN5LCBvciAobm9uLWludHJhKSBzeW5jCiAgIC8vIGZsYWcgaXMgc2V0IGZvciBzcGF0aWFsIGxh
eWVyIDAuCiAgIGlmICgoY20tPmN1cnJlbnRfdmlkZW9fZnJhbWUgPT0gMCAmJiAhc3ZjLT5wcmV2
aW91c19mcmFtZV9pc19pbnRyYV9vbmx5KSB8fAogICAgICAgKGNwaS0+ZnJhbWVfZmxhZ3MgJiBG
UkFNRUZMQUdTX0tFWSkgfHwKQEAgLTIyNTMsNyArMjI2OSw3IEBAIHZvaWQgdnA5X3JjX2dldF9z
dmNfcGFyYW1zKFZQOV9DT01QICpjcGkpIHsKICAgICAgIGNwaS0+cmVmX2ZyYW1lX2ZsYWdzICY9
ICh+VlA5X0xBU1RfRkxBRyAmIH5WUDlfR09MRF9GTEFHICYgflZQOV9BTFRfRkxBRyk7CiAgICAg
ICAvLyBBc3N1bXB0aW9uIGhlcmUgaXMgdGhhdCBMQVNUX0ZSQU1FIGlzIGJlaW5nIHVwZGF0ZWQg
Zm9yIGEga2V5ZnJhbWUuCiAgICAgICAvLyBUaHVzIG5vIGNoYW5nZSBpbiB1cGRhdGUgZmxhZ3Mu
Ci0gICAgICB0YXJnZXQgPSBjYWxjX2lmcmFtZV90YXJnZXRfc2l6ZV9vbmVfcGFzc19jYnIoY3Bp
KTsKKyAgICAgIHRhcmdldCA9IHZwOV9jYWxjX2lmcmFtZV90YXJnZXRfc2l6ZV9vbmVfcGFzc19j
YnIoY3BpKTsKICAgICB9CiAgIH0gZWxzZSB7CiAgICAgY20tPmZyYW1lX3R5cGUgPSBJTlRFUl9G
UkFNRTsKQEAgLTIyNjYsNyArMjI4Miw3IEBAIHZvaWQgdnA5X3JjX2dldF9zdmNfcGFyYW1zKFZQ
OV9DT01QICpjcGkpIHsKICAgICAgICAgICAoc3ZjLT5zcGF0aWFsX2xheWVyX2lkID09IDAgJiYg
Y20tPmN1cnJlbnRfdmlkZW9fZnJhbWUgPiAwKQogICAgICAgICAgICAgICA/IDAKICAgICAgICAg
ICAgICAgOiBzdmMtPmxheWVyX2NvbnRleHRbc3ZjLT50ZW1wb3JhbF9sYXllcl9pZF0uaXNfa2V5
X2ZyYW1lOwotICAgICAgdGFyZ2V0ID0gY2FsY19wZnJhbWVfdGFyZ2V0X3NpemVfb25lX3Bhc3Nf
Y2JyKGNwaSk7CisgICAgICB0YXJnZXQgPSB2cDlfY2FsY19wZnJhbWVfdGFyZ2V0X3NpemVfb25l
X3Bhc3NfY2JyKGNwaSk7CiAgICAgfQogICB9CiAKQEAgLTIyNzUsNyArMjI5MSw3IEBAIHZvaWQg
dnA5X3JjX2dldF9zdmNfcGFyYW1zKFZQOV9DT01QICpjcGkpIHsKICAgICAgICAgc3ZjLT5sYXll
cl9jb250ZXh0W2xheWVyXS5pc19rZXlfZnJhbWUgPT0gMSkgewogICAgICAgY20tPmZyYW1lX3R5
cGUgPSBLRVlfRlJBTUU7CiAgICAgICBjcGktPnJlZl9mcmFtZV9mbGFncyAmPSAoflZQOV9MQVNU
X0ZMQUcgJiB+VlA5X0dPTERfRkxBRyAmIH5WUDlfQUxUX0ZMQUcpOwotICAgICAgdGFyZ2V0ID0g
Y2FsY19pZnJhbWVfdGFyZ2V0X3NpemVfb25lX3Bhc3NfY2JyKGNwaSk7CisgICAgICB0YXJnZXQg
PSB2cDlfY2FsY19pZnJhbWVfdGFyZ2V0X3NpemVfb25lX3Bhc3NfY2JyKGNwaSk7CiAgICAgfQog
ICAgIC8vIFNldCB0aGUgYnVmZmVyIGlkeCBhbmQgcmVmcmVzaCBmbGFncyBmb3Iga2V5IGZyYW1l
cyBpbiBzaW11bGNhc3QgbW9kZS4KICAgICAvLyBOb3RlIHRoZSBidWZmZXIgc2xvdCBmb3IgbG9u
Zy10ZXJtIHJlZmVyZW5jZSBpcyBzZXQgYmVsb3cgKGxpbmUgMjI1NSksCkBAIC0yMzYwLDcgKzIz
NzYsNyBAQCB2b2lkIHZwOV9yY19nZXRfc3ZjX3BhcmFtcyhWUDlfQ09NUCAqY3BpKSB7CiAgIH0K
ICAgaWYgKHN2Yy0+c2V0X2ludHJhX29ubHlfZnJhbWUpIHsKICAgICBzZXRfaW50cmFfb25seV9m
cmFtZShjcGkpOwotICAgIHRhcmdldCA9IGNhbGNfaWZyYW1lX3RhcmdldF9zaXplX29uZV9wYXNz
X2NicihjcGkpOworICAgIHRhcmdldCA9IHZwOV9jYWxjX2lmcmFtZV90YXJnZXRfc2l6ZV9vbmVf
cGFzc19jYnIoY3BpKTsKICAgfQogICAvLyBBbnkgdXBkYXRlL2NoYW5nZSBvZiBnbG9iYWwgY3lj
bGljIHJlZnJlc2ggcGFyYW1ldGVycyAoYW1vdW50L2RlbHRhLXFwKQogICAvLyBzaG91bGQgYmUg
ZG9uZSBoZXJlLCBiZWZvcmUgdGhlIGZyYW1lIHFwIGlzIHNlbGVjdGVkLgpAQCAtMjM3MSw3ICsy
Mzg3LDggQEAgdm9pZCB2cDlfcmNfZ2V0X3N2Y19wYXJhbXMoVlA5X0NPTVAgKmNwaSkgewogICBp
ZiAoY20tPnNob3dfZnJhbWUpIHVwZGF0ZV9idWZmZXJfbGV2ZWxfc3ZjX3ByZWVuY29kZShjcGkp
OwogCiAgIGlmIChjcGktPm94Y2YucmVzaXplX21vZGUgPT0gUkVTSVpFX0RZTkFNSUMgJiYgc3Zj
LT5zaW5nbGVfbGF5ZXJfc3ZjID09IDEgJiYKLSAgICAgIHN2Yy0+c3BhdGlhbF9sYXllcl9pZCA9
PSBzdmMtPmZpcnN0X3NwYXRpYWxfbGF5ZXJfdG9fZW5jb2RlKSB7CisgICAgICBzdmMtPnNwYXRp
YWxfbGF5ZXJfaWQgPT0gc3ZjLT5maXJzdF9zcGF0aWFsX2xheWVyX3RvX2VuY29kZSAmJgorICAg
ICAgc3ZjLT50ZW1wb3JhbF9sYXllcl9pZCA9PSAwKSB7CiAgICAgTEFZRVJfQ09OVEVYVCAqbGMg
PSBOVUxMOwogICAgIGNwaS0+cmVzaXplX3BlbmRpbmcgPSB2cDlfcmVzaXplX29uZV9wYXNzX2Ni
cihjcGkpOwogICAgIGlmIChjcGktPnJlc2l6ZV9wZW5kaW5nKSB7CkBAIC0yMzg1LDYgKzI0MDIs
MTEgQEAgdm9pZCB2cDlfcmNfZ2V0X3N2Y19wYXJhbXMoVlA5X0NPTVAgKmNwaSkgewogICAgICAg
ICAgICAgY3BpLT5yZXNpemVfc2NhbGVfbnVtICogbGMtPnNjYWxpbmdfZmFjdG9yX251bTsKICAg
ICAgICAgbGMtPnNjYWxpbmdfZmFjdG9yX2Rlbl9yZXNpemUgPQogICAgICAgICAgICAgY3BpLT5y
ZXNpemVfc2NhbGVfZGVuICogbGMtPnNjYWxpbmdfZmFjdG9yX2RlbjsKKyAgICAgICAgLy8gUmVz
ZXQgcmF0ZSBjb250cm9sIGZvciBhbGwgdGVtcG9yYWwgbGF5ZXJzLgorICAgICAgICBsYy0+cmMu
YnVmZmVyX2xldmVsID0gbGMtPnJjLm9wdGltYWxfYnVmZmVyX2xldmVsOworICAgICAgICBsYy0+
cmMuYml0c19vZmZfdGFyZ2V0ID0gbGMtPnJjLm9wdGltYWxfYnVmZmVyX2xldmVsOworICAgICAg
ICBsYy0+cmMucmF0ZV9jb3JyZWN0aW9uX2ZhY3RvcnNbSU5URVJfRlJBTUVdID0KKyAgICAgICAg
ICAgIHJjLT5yYXRlX2NvcnJlY3Rpb25fZmFjdG9yc1tJTlRFUl9GUkFNRV07CiAgICAgICB9CiAg
ICAgICAvLyBTZXQgdGhlIHNpemUgZm9yIHRoaXMgY3VycmVudCB0ZW1wb3JhbCBsYXllci4KICAg
ICAgIGxjID0gJnN2Yy0+bGF5ZXJfY29udGV4dFtzdmMtPnNwYXRpYWxfbGF5ZXJfaWQgKgpAQCAt
MjM5NCw5ICsyNDE2LDExIEBAIHZvaWQgdnA5X3JjX2dldF9zdmNfcGFyYW1zKFZQOV9DT01QICpj
cGkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxjLT5zY2FsaW5nX2ZhY3Rvcl9udW1f
cmVzaXplLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbGMtPnNjYWxpbmdfZmFjdG9yX2Rl
bl9yZXNpemUsICZ3aWR0aCwgJmhlaWdodCk7CiAgICAgICB2cDlfc2V0X3NpemVfbGl0ZXJhbChj
cGksIHdpZHRoLCBoZWlnaHQpOworICAgICAgc3ZjLT5yZXNpemVfc2V0ID0gMTsKICAgICB9CiAg
IH0gZWxzZSB7CiAgICAgY3BpLT5yZXNpemVfcGVuZGluZyA9IDA7CisgICAgc3ZjLT5yZXNpemVf
c2V0ID0gMDsKICAgfQogfQogCkBAIC0yNDMzLDEzICsyNDU3LDEzIEBAIHZvaWQgdnA5X3JjX2dl
dF9vbmVfcGFzc19jYnJfcGFyYW1zKFZQOV9DT01QICpjcGkpIHsKICAgICB2cDlfY3ljbGljX3Jl
ZnJlc2hfdXBkYXRlX3BhcmFtZXRlcnMoY3BpKTsKIAogICBpZiAoZnJhbWVfaXNfaW50cmFfb25s
eShjbSkpCi0gICAgdGFyZ2V0ID0gY2FsY19pZnJhbWVfdGFyZ2V0X3NpemVfb25lX3Bhc3NfY2Jy
KGNwaSk7CisgICAgdGFyZ2V0ID0gdnA5X2NhbGNfaWZyYW1lX3RhcmdldF9zaXplX29uZV9wYXNz
X2NicihjcGkpOwogICBlbHNlCi0gICAgdGFyZ2V0ID0gY2FsY19wZnJhbWVfdGFyZ2V0X3NpemVf
b25lX3Bhc3NfY2JyKGNwaSk7CisgICAgdGFyZ2V0ID0gdnA5X2NhbGNfcGZyYW1lX3RhcmdldF9z
aXplX29uZV9wYXNzX2NicihjcGkpOwogCiAgIHZwOV9yY19zZXRfZnJhbWVfdGFyZ2V0KGNwaSwg
dGFyZ2V0KTsKIAotICBpZiAoY20tPnNob3dfZnJhbWUpIHVwZGF0ZV9idWZmZXJfbGV2ZWxfcHJl
ZW5jb2RlKGNwaSk7CisgIGlmIChjbS0+c2hvd19mcmFtZSkgdnA5X3VwZGF0ZV9idWZmZXJfbGV2
ZWxfcHJlZW5jb2RlKGNwaSk7CiAKICAgaWYgKGNwaS0+b3hjZi5yZXNpemVfbW9kZSA9PSBSRVNJ
WkVfRFlOQU1JQykKICAgICBjcGktPnJlc2l6ZV9wZW5kaW5nID0gdnA5X3Jlc2l6ZV9vbmVfcGFz
c19jYnIoY3BpKTsKQEAgLTI1NjksNyArMjU5Myw3IEBAIHZvaWQgdnA5X3JjX3VwZGF0ZV9mcmFt
ZXJhdGUoVlA5X0NPTVAgKmNwaSkgewogCiAgIC8vIEEgbWF4aW11bSBiaXRyYXRlIGZvciBhIGZy
YW1lIGlzIGRlZmluZWQuCiAgIC8vIEhvd2V2ZXIgdGhpcyBsaW1pdCBpcyBleHRlbmRlZCBpZiBh
IHZlcnkgaGlnaCByYXRlIGlzIGdpdmVuIG9uIHRoZSBjb21tYW5kCi0gIC8vIGxpbmUgb3IgdGhl
IHRoZSByYXRlIGNhbm5ub3QgYmUgYWNoZWl2ZWQgYmVjYXVzZSBvZiBhIHVzZXIgc3BlY2lmaWNl
ZCBtYXggcQorICAvLyBsaW5lIG9yIHRoZSByYXRlIGNhbiBub3QgYmUgYWNoaWV2ZWQgYmVjYXVz
ZSBvZiBhIHVzZXIgc3BlY2lmaWVkIG1heCBxCiAgIC8vIChlLmcuIHdoZW4gdGhlIHVzZXIgc3Bl
Y2lmaWVzIGxvc3NsZXNzIGVuY29kZSkuCiAgIC8vCiAgIC8vIElmIGEgbGV2ZWwgaXMgc3BlY2lm
aWVkIHRoYXQgcmVxdWlyZXMgYSBsb3dlciBtYXhpbXVtIHJhdGUgdGhlbiB0aGUgbGV2ZWwKQEAg
LTI2NTMsOSArMjY3NywxMSBAQCBpbnQgdnA5X3Jlc2l6ZV9vbmVfcGFzc19jYnIoVlA5X0NPTVAg
KmNwaSkgewogICBSRVNJWkVfQUNUSU9OIHJlc2l6ZV9hY3Rpb24gPSBOT19SRVNJWkU7CiAgIGlu
dCBhdmdfcXBfdGhyMSA9IDcwOwogICBpbnQgYXZnX3FwX3RocjIgPSA1MDsKLSAgaW50IG1pbl93
aWR0aCA9IDE4MDsKLSAgaW50IG1pbl9oZWlnaHQgPSA5MDsKKyAgLy8gRG9uJ3QgYWxsb3cgZm9y
IHJlc2l6ZWQgZnJhbWUgdG8gZ28gYmVsb3cgMzIweDE4MCwgcmVzaXplIGluIHN0ZXBzIG9mIDMv
NC4KKyAgaW50IG1pbl93aWR0aCA9ICgzMjAgKiA0KSAvIDM7CisgIGludCBtaW5faGVpZ2h0ID0g
KDE4MCAqIDQpIC8gMzsKICAgaW50IGRvd25fc2l6ZV9vbiA9IDE7CisgIGludCBmb3JjZV9kb3du
c2l6ZV9yYXRlID0gMDsKICAgY3BpLT5yZXNpemVfc2NhbGVfbnVtID0gMTsKICAgY3BpLT5yZXNp
emVfc2NhbGVfZGVuID0gMTsKICAgLy8gRG9uJ3QgcmVzaXplIG9uIGtleSBmcmFtZTsgcmVzZXQg
dGhlIGNvdW50ZXJzIG9uIGtleSBmcmFtZS4KQEAgLTI2NjUsMTkgKzI2OTEsOCBAQCBpbnQgdnA5
X3Jlc2l6ZV9vbmVfcGFzc19jYnIoVlA5X0NPTVAgKmNwaSkgewogICAgIHJldHVybiAwOwogICB9
CiAKLSAgLy8gQ2hlY2sgY3VycmVudCBmcmFtZSByZXNsdXRpb24gdG8gYXZvaWQgZ2VuZXJhdGlu
ZyBmcmFtZXMgc21hbGxlciB0aGFuCi0gIC8vIHRoZSBtaW5pbXVtIHJlc29sdXRpb24uCi0gIGlm
IChPTkVIQUxGT05MWV9SRVNJWkUpIHsKLSAgICBpZiAoKGNtLT53aWR0aCA+PiAxKSA8IG1pbl93
aWR0aCB8fCAoY20tPmhlaWdodCA+PiAxKSA8IG1pbl9oZWlnaHQpCi0gICAgICBkb3duX3NpemVf
b24gPSAwOwotICB9IGVsc2UgewotICAgIGlmIChjcGktPnJlc2l6ZV9zdGF0ZSA9PSBPUklHICYm
Ci0gICAgICAgIChjbS0+d2lkdGggKiAzIC8gNCA8IG1pbl93aWR0aCB8fCBjbS0+aGVpZ2h0ICog
MyAvIDQgPCBtaW5faGVpZ2h0KSkKLSAgICAgIHJldHVybiAwOwotICAgIGVsc2UgaWYgKGNwaS0+
cmVzaXplX3N0YXRlID09IFRIUkVFX1FVQVJURVIgJiYKLSAgICAgICAgICAgICAoY20tPndpZHRo
ICogMyAvIDQgPCBtaW5fd2lkdGggfHwgY20tPmhlaWdodCAqIDMgLyA0IDwgbWluX2hlaWdodCkp
Ci0gICAgICBkb3duX3NpemVfb24gPSAwOwotICB9CisgIC8vIE5vIHJlc2l6aW5nIGRvd24gaWYg
ZnJhbWUgc2l6ZSBpcyBiZWxvdyBzb21lIGxpbWl0LgorICBpZiAoKGNtLT53aWR0aCAqIGNtLT5o
ZWlnaHQpIDwgbWluX3dpZHRoICogbWluX2hlaWdodCkgZG93bl9zaXplX29uID0gMDsKIAogI2lm
IENPTkZJR19WUDlfVEVNUE9SQUxfREVOT0lTSU5HCiAgIC8vIElmIGRlbm9pc2VyIGlzIG9uLCBh
cHBseSBhIHNtYWxsZXIgcXAgdGhyZXNob2xkLgpAQCAtMjY4NywxMSArMjcwMiwzMiBAQCBpbnQg
dnA5X3Jlc2l6ZV9vbmVfcGFzc19jYnIoVlA5X0NPTVAgKmNwaSkgewogICB9CiAjZW5kaWYKIAor
ICAvLyBGb3JjZSBkb3duc2l6ZSBiYXNlZCBvbiBwZXItZnJhbWUtYmFuZHdpZHRoLCBmb3IgZXh0
cmVtZSBjYXNlLAorICAvLyBmb3IgSEQgaW5wdXQuCisgIGlmIChjcGktPnJlc2l6ZV9zdGF0ZSA9
PSBPUklHICYmIGNtLT53aWR0aCAqIGNtLT5oZWlnaHQgPj0gMTI4MCAqIDcyMCkgeworICAgIGlm
IChyYy0+YXZnX2ZyYW1lX2JhbmR3aWR0aCA8IDMwMDAwMCAvIDMwKSB7CisgICAgICByZXNpemVf
YWN0aW9uID0gRE9XTl9PTkVIQUxGOworICAgICAgY3BpLT5yZXNpemVfc3RhdGUgPSBPTkVfSEFM
RjsKKyAgICAgIGZvcmNlX2Rvd25zaXplX3JhdGUgPSAxOworICAgIH0gZWxzZSBpZiAocmMtPmF2
Z19mcmFtZV9iYW5kd2lkdGggPCA0MDAwMDAgLyAzMCkgeworICAgICAgcmVzaXplX2FjdGlvbiA9
IE9ORUhBTEZPTkxZX1JFU0laRSA/IERPV05fT05FSEFMRiA6IERPV05fVEhSRUVGT1VSOworICAg
ICAgY3BpLT5yZXNpemVfc3RhdGUgPSBPTkVIQUxGT05MWV9SRVNJWkUgPyBPTkVfSEFMRiA6IFRI
UkVFX1FVQVJURVI7CisgICAgICBmb3JjZV9kb3duc2l6ZV9yYXRlID0gMTsKKyAgICB9CisgIH0g
ZWxzZSBpZiAoY3BpLT5yZXNpemVfc3RhdGUgPT0gVEhSRUVfUVVBUlRFUiAmJgorICAgICAgICAg
ICAgIGNtLT53aWR0aCAqIGNtLT5oZWlnaHQgPj0gOTYwICogNTQwKSB7CisgICAgaWYgKHJjLT5h
dmdfZnJhbWVfYmFuZHdpZHRoIDwgMzAwMDAwIC8gMzApIHsKKyAgICAgIHJlc2l6ZV9hY3Rpb24g
PSBET1dOX09ORUhBTEY7CisgICAgICBjcGktPnJlc2l6ZV9zdGF0ZSA9IE9ORV9IQUxGOworICAg
ICAgZm9yY2VfZG93bnNpemVfcmF0ZSA9IDE7CisgICAgfQorICB9CisKICAgLy8gUmVzaXplIGJh
c2VkIG9uIGF2ZXJhZ2UgYnVmZmVyIHVuZGVyZmxvdyBhbmQgUVAgb3ZlciBzb21lIHdpbmRvdy4K
ICAgLy8gSWdub3JlIHNhbXBsZXMgY2xvc2UgdG8ga2V5IGZyYW1lLCBzaW5jZSBRUCBpcyB1c3Vh
bGx5IGhpZ2ggYWZ0ZXIga2V5LgotICBpZiAoY3BpLT5yYy5mcmFtZXNfc2luY2Vfa2V5ID4gMiAq
IGNwaS0+ZnJhbWVyYXRlKSB7Ci0gICAgY29uc3QgaW50IHdpbmRvdyA9IChpbnQpKDQgKiBjcGkt
PmZyYW1lcmF0ZSk7Ci0gICAgY3BpLT5yZXNpemVfYXZnX3FwICs9IGNtLT5iYXNlX3FpbmRleDsK
KyAgaWYgKCFmb3JjZV9kb3duc2l6ZV9yYXRlICYmIGNwaS0+cmMuZnJhbWVzX3NpbmNlX2tleSA+
IGNwaS0+ZnJhbWVyYXRlKSB7CisgICAgY29uc3QgaW50IHdpbmRvdyA9IFZQWE1JTigzMCwgKGlu
dCkoMiAqIGNwaS0+ZnJhbWVyYXRlKSk7CisgICAgY3BpLT5yZXNpemVfYXZnX3FwICs9IHJjLT5s
YXN0X3FbSU5URVJfRlJBTUVdOwogICAgIGlmIChjcGktPnJjLmJ1ZmZlcl9sZXZlbCA8IChpbnQp
KDMwICogcmMtPm9wdGltYWxfYnVmZmVyX2xldmVsIC8gMTAwKSkKICAgICAgICsrY3BpLT5yZXNp
emVfYnVmZmVyX3VuZGVyZmxvdzsKICAgICArK2NwaS0+cmVzaXplX2NvdW50OwpAQCAtMjcwMyw4
ICsyNzM5LDkgQEAgaW50IHZwOV9yZXNpemVfb25lX3Bhc3NfY2JyKFZQOV9DT01QICpjcGkpIHsK
ICAgICAgIC8vIFJlc2l6ZSBiYWNrIHVwIGlmIGF2ZXJhZ2UgUVAgaXMgbG93LCBhbmQgd2UgYXJl
IGN1cnJlbnRseSBpbiBhIHJlc2l6ZWQKICAgICAgIC8vIGRvd24gc3RhdGUsIGkuZS4gMS8yIG9y
IDMvNCBvZiBvcmlnaW5hbCByZXNvbHV0aW9uLgogICAgICAgLy8gQ3VycmVudGx5LCB1c2UgYSBm
bGFnIHRvIHR1cm4gMy80IHJlc2l6aW5nIGZlYXR1cmUgb24vb2ZmLgotICAgICAgaWYgKGNwaS0+
cmVzaXplX2J1ZmZlcl91bmRlcmZsb3cgPiAoY3BpLT5yZXNpemVfY291bnQgPj4gMikpIHsKLSAg
ICAgICAgaWYgKGNwaS0+cmVzaXplX3N0YXRlID09IFRIUkVFX1FVQVJURVIgJiYgZG93bl9zaXpl
X29uKSB7CisgICAgICBpZiAoY3BpLT5yZXNpemVfYnVmZmVyX3VuZGVyZmxvdyA+IChjcGktPnJl
c2l6ZV9jb3VudCA+PiAyKSAmJgorICAgICAgICAgIGRvd25fc2l6ZV9vbikgeworICAgICAgICBp
ZiAoY3BpLT5yZXNpemVfc3RhdGUgPT0gVEhSRUVfUVVBUlRFUikgewogICAgICAgICAgIHJlc2l6
ZV9hY3Rpb24gPSBET1dOX09ORUhBTEY7CiAgICAgICAgICAgY3BpLT5yZXNpemVfc3RhdGUgPSBP
TkVfSEFMRjsKICAgICAgICAgfSBlbHNlIGlmIChjcGktPnJlc2l6ZV9zdGF0ZSA9PSBPUklHKSB7
CkBAIC0yNzUxLDcgKzI3ODgsNyBAQCBpbnQgdnA5X3Jlc2l6ZV9vbmVfcGFzc19jYnIoVlA5X0NP
TVAgKmNwaSkgewogICAgIC8vIFJlc2V0IGJ1ZmZlciBsZXZlbCB0byBvcHRpbWFsLCB1cGRhdGUg
dGFyZ2V0IHNpemUuCiAgICAgcmMtPmJ1ZmZlcl9sZXZlbCA9IHJjLT5vcHRpbWFsX2J1ZmZlcl9s
ZXZlbDsKICAgICByYy0+Yml0c19vZmZfdGFyZ2V0ID0gcmMtPm9wdGltYWxfYnVmZmVyX2xldmVs
OwotICAgIHJjLT50aGlzX2ZyYW1lX3RhcmdldCA9IGNhbGNfcGZyYW1lX3RhcmdldF9zaXplX29u
ZV9wYXNzX2NicihjcGkpOworICAgIHJjLT50aGlzX2ZyYW1lX3RhcmdldCA9IHZwOV9jYWxjX3Bm
cmFtZV90YXJnZXRfc2l6ZV9vbmVfcGFzc19jYnIoY3BpKTsKICAgICAvLyBHZXQgdGhlIHByb2pl
Y3RlZCBxaW5kZXgsIGJhc2VkIG9uIHRoZSBzY2FsZWQgdGFyZ2V0IGZyYW1lIHNpemUgKHNjYWxl
ZAogICAgIC8vIHNvIHRhcmdldF9iaXRzX3Blcl9tYiBpbiB2cDlfcmNfcmVndWxhdGVfcSB3aWxs
IGJlIGNvcnJlY3QgdGFyZ2V0KS4KICAgICB0YXJnZXRfYml0c19wZXJfZnJhbWUgPSAocmVzaXpl
X2FjdGlvbiA+PSAwKQpAQCAtMjk2OSw3ICszMDA2LDcgQEAgdm9pZCB2cDlfc2NlbmVfZGV0ZWN0
aW9uX29uZXBhc3MoVlA5X0NPTVAgKmNwaSkgewogICAgIGludCBzY2VuZV9jdXRfZm9yY2Vfa2V5
X2ZyYW1lID0gMDsKICAgICBpbnQgbnVtX3plcm9fdGVtcF9zYWQgPSAwOwogICAgIHVpbnQ2NF90
IGF2Z19zYWRfY3VycmVudCA9IDA7Ci0gICAgdWludDMyX3QgbWluX3RocmVzaCA9IDEwMDAwOwor
ICAgIHVpbnQzMl90IG1pbl90aHJlc2ggPSAyMDAwMDsgIC8vIH41ICogNjQgKiA2NAogICAgIGZs
b2F0IHRocmVzaCA9IDguMGY7CiAgICAgdWludDMyX3QgdGhyZXNoX2tleSA9IDE0MDAwMDsKICAg
ICBpZiAoY3BpLT5veGNmLnNwZWVkIDw9IDUpIHRocmVzaF9rZXkgPSAyNDAwMDA7CkBAIC0zMjI2
LDcgKzMyNjMsNyBAQCBpbnQgdnA5X2VuY29kZWRmcmFtZV9vdmVyc2hvb3QoVlA5X0NPTVAgKmNw
aSwgaW50IGZyYW1lX3NpemUsIGludCAqcSkgewogICAgICAgaW50IHRsID0gMDsKICAgICAgIGlu
dCBzbCA9IDA7CiAgICAgICBTVkMgKnN2YyA9ICZjcGktPnN2YzsKLSAgICAgIGZvciAoc2wgPSAw
OyBzbCA8IHN2Yy0+Zmlyc3Rfc3BhdGlhbF9sYXllcl90b19lbmNvZGU7ICsrc2wpIHsKKyAgICAg
IGZvciAoc2wgPSAwOyBzbCA8IFZQWE1BWCgxLCBzdmMtPmZpcnN0X3NwYXRpYWxfbGF5ZXJfdG9f
ZW5jb2RlKTsgKytzbCkgewogICAgICAgICBmb3IgKHRsID0gMDsgdGwgPCBzdmMtPm51bWJlcl90
ZW1wb3JhbF9sYXllcnM7ICsrdGwpIHsKICAgICAgICAgICBjb25zdCBpbnQgbGF5ZXIgPQogICAg
ICAgICAgICAgICBMQVlFUl9JRFNfVE9fSURYKHNsLCB0bCwgc3ZjLT5udW1iZXJfdGVtcG9yYWxf
bGF5ZXJzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJs
LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5oCmluZGV4IDdkYmUxN2Rj
NTZkOWJiZDljMGU2Y2Y0ZWQ4YjZmOThlMDcwY2VmMGYuLjAxMjBmOTBhMDFkNDdkZDY3ZGNlMjdi
Mzk3NmIxMzkxYzU2NDExOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X3JhdGVjdHJsLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmF0ZWN0cmwuaApA
QCAtODMsNyArODMsNyBAQCBzdGF0aWMgY29uc3QgZG91YmxlIHJhdGVfdGhyZXNoX211bHRbRlJB
TUVfU0NBTEVfU1RFUFNdID0geyAxLjAsIDIuMCB9Owogc3RhdGljIGNvbnN0IGRvdWJsZSByY2Zf
bXVsdFtGUkFNRV9TQ0FMRV9TVEVQU10gPSB7IDEuMCwgMi4wIH07CiAKIHR5cGVkZWYgc3RydWN0
IHsKLSAgLy8gUmF0ZSB0YXJnZXR0aW5nIHZhcmlhYmxlcworICAvLyBSYXRlIHRhcmdldGluZyB2
YXJpYWJsZXMKICAgaW50IGJhc2VfZnJhbWVfdGFyZ2V0OyAgLy8gQSBiYXNlbGluZSBmcmFtZSB0
YXJnZXQgYmVmb3JlIGFkanVzdG1lbnQKICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gZm9y
IHByZXZpb3VzIHVuZGVyIG9yIG92ZXIgc2hvb3QuCiAgIGludCB0aGlzX2ZyYW1lX3RhcmdldDsg
IC8vIEFjdHVhbCBmcmFtZSB0YXJnZXQgYWZ0ZXIgcmMgYWRqdXN0bWVudC4KQEAgLTE5NSw3ICsx
OTUsOCBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgIGludCB1c2VfcG9zdF9lbmNvZGVfZHJvcDsKICAg
Ly8gRXh0ZXJuYWwgZmxhZyB0byBlbmFibGUgcG9zdCBlbmNvZGUgZnJhbWUgZHJvcHBpbmcsIGNv
bnRyb2xsZWQgYnkgdXNlci4KICAgaW50IGV4dF91c2VfcG9zdF9lbmNvZGVfZHJvcDsKLQorICAv
LyBGbGFnIHRvIGRpc2FibGUgQ0JSIGZlYXR1cmUgdG8gaW5jcmVhc2UgUSBvbiBvdmVyc2hvb3Qg
ZGV0ZWN0aW9uLgorICBpbnQgZGlzYWJsZV9vdmVyc2hvb3RfbWF4cV9jYnI7CiAgIGludCBkYW1w
ZWRfYWRqdXN0bWVudFtSQVRFX0ZBQ1RPUl9MRVZFTFNdOwogICBkb3VibGUgYXJmX2FjdGl2ZV9i
ZXN0X3F1YWxpdHlfYWRqdXN0bWVudF9mYWN0b3I7CiAgIGludCBhcmZfaW5jcmVhc2VfYWN0aXZl
X2Jlc3RfcXVhbGl0eTsKQEAgLTI1Miw2ICsyNTMsOSBAQCBpbnQgdnA5X3JjX2dldF9kZWZhdWx0
X21heF9nZl9pbnRlcnZhbChkb3VibGUgZnJhbWVyYXRlLCBpbnQgbWluX2dmX2ludGVydmFsKTsK
IC8vIGVuY29kZV9mcmFtZV90b19kYXRhX3JhdGUoKSBmdW5jdGlvbi4KIHZvaWQgdnA5X3JjX2dl
dF9vbmVfcGFzc192YnJfcGFyYW1zKHN0cnVjdCBWUDlfQ09NUCAqY3BpKTsKIHZvaWQgdnA5X3Jj
X2dldF9vbmVfcGFzc19jYnJfcGFyYW1zKHN0cnVjdCBWUDlfQ09NUCAqY3BpKTsKK2ludCB2cDlf
Y2FsY19wZnJhbWVfdGFyZ2V0X3NpemVfb25lX3Bhc3NfY2JyKGNvbnN0IHN0cnVjdCBWUDlfQ09N
UCAqY3BpKTsKK2ludCB2cDlfY2FsY19pZnJhbWVfdGFyZ2V0X3NpemVfb25lX3Bhc3NfY2JyKGNv
bnN0IHN0cnVjdCBWUDlfQ09NUCAqY3BpKTsKK3ZvaWQgdnA5X3VwZGF0ZV9idWZmZXJfbGV2ZWxf
cHJlZW5jb2RlKHN0cnVjdCBWUDlfQ09NUCAqY3BpKTsKIHZvaWQgdnA5X3JjX2dldF9zdmNfcGFy
YW1zKHN0cnVjdCBWUDlfQ09NUCAqY3BpKTsKIAogLy8gUG9zdCBlbmNvZGUgdXBkYXRlIG9mIHRo
ZSByYXRlIGNvbnRyb2wgcGFyYW1ldGVycyBiYXNlZApAQCAtMzMwLDYgKzMzNCw4IEBAIHZvaWQg
dnA5X2NvbmZpZ3VyZV9idWZmZXJfdXBkYXRlcyhzdHJ1Y3QgVlA5X0NPTVAgKmNwaSwgaW50IGdm
X2dyb3VwX2luZGV4KTsKIAogdm9pZCB2cDlfZXN0aW1hdGVfcXBfZ29wKHN0cnVjdCBWUDlfQ09N
UCAqY3BpKTsKIAordm9pZCB2cDlfY29tcHV0ZV9mcmFtZV9sb3dfbW90aW9uKHN0cnVjdCBWUDlf
Q09NUCAqY29uc3QgY3BpKTsKKwogI2lmZGVmIF9fY3BsdXNwbHVzCiB9ICAvLyBleHRlcm4gIkMi
CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jkb3B0LmMg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZG9wdC5jCmluZGV4IDM5Yjk5ZDUwYzQ0MDYw
MzJlMThjOTg0NDI4ZmI5NjE3Zjc0ZDg0NmUuLjM3ZGU0ZTQ4Mzk5NjhjNTI5ZDg1NjVmYjUwODVi
OTkwOTc1YjZmODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jkb3B0
LmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuYwpAQCAtNDQ0Myw2ICs0
NDQzLDcgQEAgdm9pZCB2cDlfcmRfcGlja19pbnRlcl9tb2RlX3N1Yjh4OChWUDlfQ09NUCAqY3Bp
LCBUaWxlRGF0YUVuYyAqdGlsZV9kYXRhLAogICAgICAgICAgICAgICB0bXBfYmVzdF9zc2UgPSB0
b3RhbF9zc2U7CiAgICAgICAgICAgICAgIHRtcF9iZXN0X3NraXBwYWJsZSA9IHNraXBwYWJsZTsK
ICAgICAgICAgICAgICAgdG1wX2Jlc3RfbWJtb2RlID0gKm1pOworICAgICAgICAgICAgICB4LT5z
dW1feV9lb2JzW1RYXzRYNF0gPSAwOwogICAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgNDsg
aSsrKSB7CiAgICAgICAgICAgICAgICAgdG1wX2Jlc3RfYm1vZGVzW2ldID0geGQtPm1pWzBdLT5i
bWlbaV07CiAgICAgICAgICAgICAgICAgeC0+emNvZWZmX2Jsa1tUWF80WDRdW2ldID0gIXgtPnBs
YW5lWzBdLmVvYnNbaV07CkBAIC00NDc2LDYgKzQ0NzcsMTEgQEAgdm9pZCB2cDlfcmRfcGlja19p
bnRlcl9tb2RlX3N1Yjh4OChWUDlfQ09NUCAqY3BpLCBUaWxlRGF0YUVuYyAqdGlsZV9kYXRhLAog
ICAgICAgICAgICAgJnJhdGUsICZyYXRlX3ksICZkaXN0b3J0aW9uLCAmc2tpcHBhYmxlLCAmdG90
YWxfc3NlLAogICAgICAgICAgICAgKGludCl0aGlzX3JkX3RocmVzaCwgc2VnX212cywgYnNpLCAw
LCBtaV9yb3csIG1pX2NvbCk7CiAgICAgICAgIGlmICh0bXBfcmQgPT0gSU5UNjRfTUFYKSBjb250
aW51ZTsKKyAgICAgICAgeC0+c3VtX3lfZW9ic1tUWF80WDRdID0gMDsKKyAgICAgICAgZm9yIChp
ID0gMDsgaSA8IDQ7IGkrKykgeworICAgICAgICAgIHgtPnpjb2VmZl9ibGtbVFhfNFg0XVtpXSA9
ICF4LT5wbGFuZVswXS5lb2JzW2ldOworICAgICAgICAgIHgtPnN1bV95X2VvYnNbVFhfNFg0XSAr
PSB4LT5wbGFuZVswXS5lb2JzW2ldOworICAgICAgICB9CiAgICAgICB9IGVsc2UgewogICAgICAg
ICB0b3RhbF9zc2UgPSB0bXBfYmVzdF9zc2U7CiAgICAgICAgIHJhdGUgPSB0bXBfYmVzdF9yYXRl
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRfZmVhdHVyZXMu
YyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmMKaW5kZXggN2Ey
NmM0MTc2ZTQzOTI0MjJjMzc1NjNkM2YwMWMxMDg5OTU1ZTc0ZS4uNTg1Yzk2MDRjNjFlMTcwNGQ5
MzczMDg5YzE0NmM0NjliZmQ3NTlmZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfc3BlZWRfZmVhdHVyZXMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9z
cGVlZF9mZWF0dXJlcy5jCkBAIC02MjEsNyArNjIxLDcgQEAgc3RhdGljIHZvaWQgc2V0X3J0X3Nw
ZWVkX2ZlYXR1cmVfZnJhbWVzaXplX2luZGVwZW5kZW50KAogICAgIC8vIGluY3JlYXNlIGluIGVu
Y29kaW5nIHRpbWUuCiAgICAgaWYgKGNwaS0+dXNlX3N2YyAmJiBzdmMtPnNwYXRpYWxfbGF5ZXJf
aWQgPiAwKSBzZi0+bm9ucmRfa2V5ZnJhbWUgPSAxOwogICAgIGlmIChjbS0+ZnJhbWVfdHlwZSAh
PSBLRVlfRlJBTUUgJiYgY3BpLT5yZXNpemVfc3RhdGUgPT0gT1JJRyAmJgotICAgICAgICBjcGkt
Pm94Y2YucmNfbW9kZSA9PSBWUFhfQ0JSKSB7CisgICAgICAgIGNwaS0+b3hjZi5yY19tb2RlID09
IFZQWF9DQlIgJiYgIWNwaS0+cmMuZGlzYWJsZV9vdmVyc2hvb3RfbWF4cV9jYnIpIHsKICAgICAg
IGlmIChjbS0+d2lkdGggKiBjbS0+aGVpZ2h0IDw9IDM1MiAqIDI4OCAmJiAhY3BpLT51c2Vfc3Zj
ICYmCiAgICAgICAgICAgY3BpLT5veGNmLmNvbnRlbnQgIT0gVlA5RV9DT05URU5UX1NDUkVFTikK
ICAgICAgICAgc2YtPm92ZXJzaG9vdF9kZXRlY3Rpb25fY2JyX3J0ID0gUkVfRU5DT0RFX01BWFE7
CkBAIC02MzQsNiArNjM0LDcgQEAgc3RhdGljIHZvaWQgc2V0X3J0X3NwZWVkX2ZlYXR1cmVfZnJh
bWVzaXplX2luZGVwZW5kZW50KAogICAgICAgc2YtPnVzZV9jb21wb3VuZF9ub25yZF9waWNrbW9k
ZSA9IDE7CiAgICAgfQogICAgIGlmIChjbS0+d2lkdGggKiBjbS0+aGVpZ2h0ID4gMTI4MCAqIDcy
MCkgc2YtPmNiX3ByZWRfZmlsdGVyX3NlYXJjaCA9IDE7CisgICAgaWYgKCFjcGktPmV4dGVybmFs
X3Jlc2l6ZSkgc2YtPnVzZV9zb3VyY2Vfc2FkID0gMTsKICAgfQogCiAgIGlmIChzcGVlZCA+PSA2
KSB7CkBAIC02NDYsOCArNjQ3LDYgQEAgc3RhdGljIHZvaWQgc2V0X3J0X3NwZWVkX2ZlYXR1cmVf
ZnJhbWVzaXplX2luZGVwZW5kZW50KAogICAgIHNmLT5tdi5yZWR1Y2VfZmlyc3Rfc3RlcF9zaXpl
ID0gMTsKICAgICBzZi0+c2tpcF9lbmNvZGVfc2IgPSAwOwogCi0gICAgaWYgKCFjcGktPmV4dGVy
bmFsX3Jlc2l6ZSkgc2YtPnVzZV9zb3VyY2Vfc2FkID0gMTsKLQogICAgIGlmIChzZi0+dXNlX3Nv
dXJjZV9zYWQpIHsKICAgICAgIHNmLT5hZGFwdF9wYXJ0aXRpb25fc291cmNlX3NhZCA9IDE7CiAg
ICAgICBzZi0+YWRhcHRfcGFydGl0aW9uX3RocmVzaCA9CkBAIC02NjksNyArNjY4LDcgQEAgc3Rh
dGljIHZvaWQgc2V0X3J0X3NwZWVkX2ZlYXR1cmVfZnJhbWVzaXplX2luZGVwZW5kZW50KAogICAg
ICAgc2YtPmJhc2VfbXZfYWdncmVzc2l2ZSA9IDE7CiAgICAgfQogICAgIGlmIChjbS0+ZnJhbWVf
dHlwZSAhPSBLRVlfRlJBTUUgJiYgY3BpLT5yZXNpemVfc3RhdGUgPT0gT1JJRyAmJgotICAgICAg
ICBjcGktPm94Y2YucmNfbW9kZSA9PSBWUFhfQ0JSKQorICAgICAgICBjcGktPm94Y2YucmNfbW9k
ZSA9PSBWUFhfQ0JSICYmICFjcGktPnJjLmRpc2FibGVfb3ZlcnNob290X21heHFfY2JyKQogICAg
ICAgc2YtPm92ZXJzaG9vdF9kZXRlY3Rpb25fY2JyX3J0ID0gRkFTVF9ERVRFQ1RJT05fTUFYUTsK
ICAgfQogCkBAIC03MjgsNyArNzI3LDEwIEBAIHN0YXRpYyB2b2lkIHNldF9ydF9zcGVlZF9mZWF0
dXJlX2ZyYW1lc2l6ZV9pbmRlcGVuZGVudCgKICAgaWYgKHNwZWVkID49IDgpIHsKICAgICBzZi0+
YWRhcHRpdmVfcmRfdGhyZXNoID0gNDsKICAgICBzZi0+c2tpcF9lbmNvZGVfc2IgPSAxOwotICAg
IHNmLT5ub25yZF9rZXlmcmFtZSA9IDE7CisgICAgaWYgKGNwaS0+c3ZjLm51bWJlcl9zcGF0aWFs
X2xheWVycyA+IDEgJiYgIWNwaS0+c3ZjLnNpbXVsY2FzdF9tb2RlKQorICAgICAgc2YtPm5vbnJk
X2tleWZyYW1lID0gMDsKKyAgICBlbHNlCisgICAgICBzZi0+bm9ucmRfa2V5ZnJhbWUgPSAxOwog
ICAgIGlmICghY3BpLT51c2Vfc3ZjKSBjcGktPm1heF9jb3BpZWRfZnJhbWUgPSA0OwogICAgIGlm
IChjcGktPnJvd19tdCAmJiBjcGktPm94Y2YubWF4X3RocmVhZHMgPiAxKQogICAgICAgc2YtPmFk
YXB0aXZlX3JkX3RocmVzaF9yb3dfbXQgPSAxOwpAQCAtNzg3LDYgKzc4OSwxNSBAQCBzdGF0aWMg
dm9pZCBzZXRfcnRfc3BlZWRfZmVhdHVyZV9mcmFtZXNpemVfaW5kZXBlbmRlbnQoCiAgICAgaWYg
KGNtLT53aWR0aCAqIGNtLT5oZWlnaHQgPj0gNjQwICogMzYwKSBzZi0+dmFyaWFuY2VfcGFydF90
aHJlc2hfbXVsdCA9IDI7CiAgIH0KIAorICAvLyBEaXNhYmxlIHNwbGl0IHRvIDh4OCBmb3IgbG93
LXJlc29sdXRpb24gYXQgdmVyeSBoaWdoIFEuCisgIC8vIEZvciB2YXJpYW5jZSBwYXJ0aXRpb24g
KHNwZWVkID49IDYpLiBJZ25vcmUgdGhlIGZpcnN0IGZldyBmcmFtZXMKKyAgLy8gYXMgYXZnX2Zy
YW1lX3FpbmRleCBzdGFydHMgYXQgbWF4X3EgKHdvcnN0X3F1YWxpdHkpLgorICBpZiAoY20tPmZy
YW1lX3R5cGUgIT0gS0VZX0ZSQU1FICYmIGNtLT53aWR0aCAqIGNtLT5oZWlnaHQgPD0gMzIwICog
MjQwICYmCisgICAgICBzZi0+cGFydGl0aW9uX3NlYXJjaF90eXBlID09IFZBUl9CQVNFRF9QQVJU
SVRJT04gJiYKKyAgICAgIGNwaS0+cmMuYXZnX2ZyYW1lX3FpbmRleFtJTlRFUl9GUkFNRV0gPiAy
MDggJiYKKyAgICAgIGNwaS0+Y29tbW9uLmN1cnJlbnRfdmlkZW9fZnJhbWUgPiA4KQorICAgIHNm
LT5kaXNhYmxlXzE2eDE2cGFydF9ub25rZXkgPSAxOworCiAgIGlmIChzZi0+bm9ucmRfdXNlX21s
X3BhcnRpdGlvbikKICAgICBzZi0+cGFydGl0aW9uX3NlYXJjaF90eXBlID0gTUxfQkFTRURfUEFS
VElUSU9OOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdmNfbGF5
ZXJjb250ZXh0LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdmNfbGF5ZXJjb250ZXh0
LmMKaW5kZXggMTQ2NmQzYTJiM2IxYTg4MmUyYmI2NmM5OGUyOGY2YTk4ZjgwYzQ0NS4uYjZjN2M3
NGUxNzRhNGI4NDdhODM5OGI4ODdiNTc4MjdjYWU1MDk3OCAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVyY29udGV4dC5jCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRleHQuYwpAQCAtNTYsNiArNTYsNyBAQCB2b2lkIHZw
OV9pbml0X2xheWVyX2NvbnRleHQoVlA5X0NPTVAgKmNvbnN0IGNwaSkgewogICBzdmMtPm51bV9l
bmNvZGVkX3RvcF9sYXllciA9IDA7CiAgIHN2Yy0+c2ltdWxjYXN0X21vZGUgPSAwOwogICBzdmMt
PnNpbmdsZV9sYXllcl9zdmMgPSAwOworICBzdmMtPnJlc2l6ZV9zZXQgPSAwOwogCiAgIGZvciAo
aSA9IDA7IGkgPCBSRUZfRlJBTUVTOyArK2kpIHsKICAgICBzdmMtPmZiX2lkeF9zcGF0aWFsX2xh
eWVyX2lkW2ldID0gMHhmZjsKQEAgLTM1Niw2ICszNTcsNyBAQCB2b2lkIHZwOV9yZXN0b3JlX2xh
eWVyX2NvbnRleHQoVlA5X0NPTVAgKmNvbnN0IGNwaSkgewogICBpZiAoaXNfb25lX3Bhc3NfY2Jy
X3N2YyhjcGkpICYmIGxjLT5zcGVlZCA+IDApIHsKICAgICBjcGktPm94Y2Yuc3BlZWQgPSBsYy0+
c3BlZWQ7CiAgIH0KKyAgY3BpLT5sb29wZmlsdGVyX2N0cmwgPSBsYy0+bG9vcGZpbHRlcl9jdHJs
OwogICAvLyBSZXNldCB0aGUgZnJhbWVzX3NpbmNlX2tleSBhbmQgZnJhbWVzX3RvX2tleSBjb3Vu
dGVycyB0byB0aGVpciB2YWx1ZXMKICAgLy8gYmVmb3JlIHRoZSBsYXllciByZXN0b3JlLiBLZWVw
IHRoZXNlIGRlZmluZWQgZm9yIHRoZSBzdHJlYW0gKG5vdCBsYXllcikuCiAgIGlmIChjcGktPnN2
Yy5udW1iZXJfdGVtcG9yYWxfbGF5ZXJzID4gMSB8fApAQCAtNzcwLDkgKzc3Miw3IEBAIGludCB2
cDlfb25lX3Bhc3NfY2JyX3N2Y19zdGFydF9sYXllcihWUDlfQ09NUCAqY29uc3QgY3BpKSB7CiAK
ICAgaWYgKHN2Yy0+ZGlzYWJsZV9pbnRlcl9sYXllcl9wcmVkID09IElOVEVSX0xBWUVSX1BSRURf
T0ZGICYmCiAgICAgICBzdmMtPm51bWJlcl9zcGF0aWFsX2xheWVycyA+IDEgJiYgc3ZjLT5udW1i
ZXJfc3BhdGlhbF9sYXllcnMgPD0gMyAmJgotICAgICAgc3ZjLT5udW1iZXJfdGVtcG9yYWxfbGF5
ZXJzIDw9IDMgJiYKLSAgICAgICEoc3ZjLT50ZW1wb3JhbF9sYXllcmluZ19tb2RlID09IFZQOUVf
VEVNUE9SQUxfTEFZRVJJTkdfTU9ERV9CWVBBU1MgJiYKLSAgICAgICAgc3ZjLT51c2Vfc2V0X3Jl
Zl9mcmFtZV9jb25maWcpKQorICAgICAgc3ZjLT5udW1iZXJfdGVtcG9yYWxfbGF5ZXJzIDw9IDMp
CiAgICAgc3ZjLT5zaW11bGNhc3RfbW9kZSA9IDE7CiAgIGVsc2UKICAgICBzdmMtPnNpbXVsY2Fz
dF9tb2RlID0gMDsKQEAgLTg2Niw4ICs4NjYsOSBAQCBpbnQgdnA5X29uZV9wYXNzX2Nicl9zdmNf
c3RhcnRfbGF5ZXIoVlA5X0NPTVAgKmNvbnN0IGNwaSkgewogICAgIH0KICAgfQogCi0gIC8vIFJl
c2V0IHRoZSBkcm9wIGZsYWdzIGZvciBhbGwgc3BhdGlhbCBsYXllcnMsIG9uIHRoZSBiYXNlIGxh
eWVyLgotICBpZiAoc3ZjLT5zcGF0aWFsX2xheWVyX2lkID09IDApIHsKKyAgLy8gUmVzZXQgdGhl
IGRyb3AgZmxhZ3MgZm9yIGFsbCBzcGF0aWFsIGxheWVycywgb24gdGhlCisgIC8vIGZpcnN0X3Nw
YXRpYWxfbGF5ZXJfdG9fZW5jb2RlLgorICBpZiAoc3ZjLT5zcGF0aWFsX2xheWVyX2lkID09IHN2
Yy0+Zmlyc3Rfc3BhdGlhbF9sYXllcl90b19lbmNvZGUpIHsKICAgICB2cDlfemVybyhzdmMtPmRy
b3Bfc3BhdGlhbF9sYXllcik7CiAgICAgLy8gVE9ETyhqaWFuai9tYXJwYW4pOiBJbnZlc3RpZ2F0
ZSB3aHkgc2V0dGluZyBzdmMtPmxzdC9nbGQvYWx0X2ZiX2lkeAogICAgIC8vIGNhdXNlcyBhbiBp
c3N1ZSB3aXRoIGZyYW1lIGRyb3BwaW5nIGFuZCB0ZW1wb3JhbCBsYXllcnMsIHdoZW4gdGhlIGZy
YW1lCkBAIC0xMjYxLDcgKzEyNjIsNyBAQCBzdGF0aWMgdm9pZCB2cDlfc3ZjX3VwZGF0ZV9yZWZf
ZnJhbWVfYnlwYXNzX21vZGUoVlA5X0NPTVAgKmNvbnN0IGNwaSkgewogICBCdWZmZXJQb29sICpj
b25zdCBwb29sID0gY20tPmJ1ZmZlcl9wb29sOwogICBpbnQgaTsKICAgZm9yIChpID0gMDsgaSA8
IFJFRl9GUkFNRVM7IGkrKykgewotICAgIGlmIChjbS0+ZnJhbWVfdHlwZSA9PSBLRVlfRlJBTUUg
fHwKKyAgICBpZiAoKGNtLT5mcmFtZV90eXBlID09IEtFWV9GUkFNRSAmJiAhc3ZjLT5zaW11bGNh
c3RfbW9kZSkgfHwKICAgICAgICAgc3ZjLT51cGRhdGVfYnVmZmVyX3Nsb3Rbc3ZjLT5zcGF0aWFs
X2xheWVyX2lkXSAmICgxIDw8IGkpKSB7CiAgICAgICByZWZfY250X2ZiKHBvb2wtPmZyYW1lX2J1
ZnMsICZjbS0+cmVmX2ZyYW1lX21hcFtpXSwgY20tPm5ld19mYl9pZHgpOwogICAgICAgc3ZjLT5m
Yl9pZHhfc3BhdGlhbF9sYXllcl9pZFtpXSA9IHN2Yy0+c3BhdGlhbF9sYXllcl9pZDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRleHQuaCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRleHQuaAppbmRleCA3ZTQ2NTAw
YjU4ZDUyZmVjNDg1MWI1NThhZTY0OTgxODhjOWM0NDNmLi5iMTJlN2UwMWE3NTllZDc5YzI0NDMz
NjEyZmJhMmQyNzAxZjk2ZGQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9zdmNfbGF5ZXJjb250ZXh0LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3Zj
X2xheWVyY29udGV4dC5oCkBAIC03MSw2ICs3MSw3IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgaW50
IGFjdHVhbF9udW1fc2VnMl9ibG9ja3M7CiAgIGludCBjb3VudGVyX2VuY29kZV9tYXhxX3NjZW5l
X2NoYW5nZTsKICAgdWludDhfdCBzcGVlZDsKKyAgaW50IGxvb3BmaWx0ZXJfY3RybDsKIH0gTEFZ
RVJfQ09OVEVYVDsKIAogdHlwZWRlZiBzdHJ1Y3QgU1ZDIHsKQEAgLTE5OCw2ICsxOTksNyBAQCB0
eXBlZGVmIHN0cnVjdCBTVkMgewogCiAgIC8vIEZsYWcgdG8gaW5kaWNhdGUgU1ZDIGlzIGR5bmFt
aWNhbGx5IHN3aXRjaGVkIHRvIGEgc2luZ2xlIGxheWVyLgogICBpbnQgc2luZ2xlX2xheWVyX3N2
YzsKKyAgaW50IHJlc2l6ZV9zZXQ7CiB9IFNWQzsKIAogc3RydWN0IFZQOV9DT01QOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdGVtcG9yYWxfZmlsdGVyLmMgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90ZW1wb3JhbF9maWx0ZXIuYwppbmRleCA2ZTRjN2VkYTRj
MjJlOTBlZjUxNDE5ZmI5ZjZiNWU3YzNhODU3N2E5Li4zYTEyNjJlYTVmMGEzZGIwMDBlMDVmNDc0
MGZlNzQ4MDdiMmQ2MzlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90
ZW1wb3JhbF9maWx0ZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90ZW1wb3Jh
bF9maWx0ZXIuYwpAQCAtOTk1LDcgKzk5NSw3IEBAIHZvaWQgdnA5X3RlbXBvcmFsX2ZpbHRlcl9p
dGVyYXRlX3Jvd19jKFZQOV9DT01QICpjcGksIFRocmVhZERhdGEgKnRkLAogICB9CiB9CiAKLSNp
ZiAhQ09ORklHX1JFQUxUSU1FX09OTFkKKyNpZiAhQ09ORklHX1JFQUxUSU1FX09OTFkgLy8gV0VC
UlRDX1dFQktJVF9CVUlMRAogc3RhdGljIHZvaWQgdGVtcG9yYWxfZmlsdGVyX2l0ZXJhdGVfdGls
ZV9jKFZQOV9DT01QICpjcGksIGludCB0aWxlX3JvdywKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBpbnQgdGlsZV9jb2wpIHsKICAgVlA5X0NPTU1PTiAqY29uc3Qg
Y20gPSAmY3BpLT5jb21tb247CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9yYXRlY3RybF9y
dGMuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9yYXRlY3RybF9ydGMuY2MKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDdmOWYz
YmEzM2VlY2VkYmNhZWE0YTE4NjczZmU5ZTE1NmY0NjdiYgotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L3JhdGVjdHJsX3J0Yy5jYwpAQCAtMCwwICsxLDE3NCBAQAorLyoKKyAqICBD
b3B5cmlnaHQgKGMpIDIwMjAgVGhlIFdlYk0gcHJvamVjdCBhdXRob3JzLiBBbGwgUmlnaHRzIFJl
c2VydmVkLgorICoKKyAqICBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBh
IEJTRC1zdHlsZSBsaWNlbnNlCisgKiAgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0Ug
ZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlCisgKiAgdHJlZS4gQW4gYWRkaXRpb25hbCBp
bnRlbGxlY3R1YWwgcHJvcGVydHkgcmlnaHRzIGdyYW50IGNhbiBiZSBmb3VuZAorICogIGluIHRo
ZSBmaWxlIFBBVEVOVFMuICBBbGwgY29udHJpYnV0aW5nIHByb2plY3QgYXV0aG9ycyBtYXkKKyAq
ICBiZSBmb3VuZCBpbiB0aGUgQVVUSE9SUyBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2Ug
dHJlZS4KKyAqLworI2luY2x1ZGUgInZwOS9yYXRlY3RybF9ydGMuaCIKKworI2luY2x1ZGUgPG5l
dz4KKworI2luY2x1ZGUgInZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVyLmgiCisjaW5jbHVkZSAidnA5
L2VuY29kZXIvdnA5X3BpY2tscGYuaCIKKyNpbmNsdWRlICJ2cHgvdnA4Y3guaCIKKyNpbmNsdWRl
ICJ2cHgvdnB4X2NvZGVjLmgiCisKK25hbWVzcGFjZSBsaWJ2cHggeworCitzdGQ6OnVuaXF1ZV9w
dHI8VlA5UmF0ZUNvbnRyb2xSVEM+IFZQOVJhdGVDb250cm9sUlRDOjpDcmVhdGUoCisgICAgY29u
c3QgVlA5UmF0ZUNvbnRyb2xSdGNDb25maWcgJmNmZykgeworICBzdGQ6OnVuaXF1ZV9wdHI8VlA5
UmF0ZUNvbnRyb2xSVEM+IHJjX2FwaShuZXcgKHN0ZDo6bm90aHJvdykKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQOVJhdGVDb250cm9sUlRDKCkpOwor
ICBpZiAoIXJjX2FwaSkgcmV0dXJuIG51bGxwdHI7CisgIHJjX2FwaS0+Y3BpXyA9IHN0YXRpY19j
YXN0PFZQOV9DT01QICo+KHZweF9tZW1hbGlnbigzMiwgc2l6ZW9mKCpjcGlfKSkpOworICBpZiAo
cmNfYXBpLT5jcGlfID09IG51bGxwdHIpIHsKKyAgICByZXR1cm4gbnVsbHB0cjsKKyAgfQorICBy
Y19hcGktPkluaXRSYXRlQ29udHJvbChjZmcpOworICByZXR1cm4gcmNfYXBpOworfQorCit2b2lk
IFZQOVJhdGVDb250cm9sUlRDOjpJbml0UmF0ZUNvbnRyb2woY29uc3QgVlA5UmF0ZUNvbnRyb2xS
dGNDb25maWcgJnJjX2NmZykgeworICBWUDlfQ09NTU9OICpjbSA9ICZjcGlfLT5jb21tb247Cisg
IFZQOUVuY29kZXJDb25maWcgKm94Y2YgPSAmY3BpXy0+b3hjZjsKKyAgUkFURV9DT05UUk9MICpj
b25zdCByYyA9ICZjcGlfLT5yYzsKKyAgY20tPnByb2ZpbGUgPSBQUk9GSUxFXzA7CisgIGNtLT5i
aXRfZGVwdGggPSBWUFhfQklUU184OworICBjbS0+c2hvd19mcmFtZSA9IDE7CisgIG94Y2YtPnJj
X21vZGUgPSBWUFhfQ0JSOworICBveGNmLT5wYXNzID0gMDsKKyAgb3hjZi0+YXFfbW9kZSA9IE5P
X0FROworICBveGNmLT5jb250ZW50ID0gVlA5RV9DT05URU5UX0RFRkFVTFQ7CisgIG94Y2YtPmRy
b3BfZnJhbWVzX3dhdGVyX21hcmsgPSAwOworCisgIFVwZGF0ZVJhdGVDb250cm9sKHJjX2NmZyk7
CisKKyAgY3BpXy0+dXNlX3N2YyA9IChjcGlfLT5zdmMubnVtYmVyX3NwYXRpYWxfbGF5ZXJzID4g
MSB8fAorICAgICAgICAgICAgICAgICAgIGNwaV8tPnN2Yy5udW1iZXJfdGVtcG9yYWxfbGF5ZXJz
ID4gMSkKKyAgICAgICAgICAgICAgICAgICAgICA/IDEKKyAgICAgICAgICAgICAgICAgICAgICA6
IDA7CisKKyAgcmMtPnJjXzFfZnJhbWUgPSAwOworICByYy0+cmNfMl9mcmFtZSA9IDA7CisgIHZw
OV9yY19pbml0X21pbnFfbHV0cygpOworICB2cDlfcmNfaW5pdChveGNmLCAwLCByYyk7CisgIGNw
aV8tPnNmLnVzZV9ub25yZF9waWNrX21vZGUgPSAxOworICBjbS0+Y3VycmVudF92aWRlb19mcmFt
ZSA9IDA7Cit9CisKK3ZvaWQgVlA5UmF0ZUNvbnRyb2xSVEM6OlVwZGF0ZVJhdGVDb250cm9sKAor
ICAgIGNvbnN0IFZQOVJhdGVDb250cm9sUnRjQ29uZmlnICZyY19jZmcpIHsKKyAgVlA5X0NPTU1P
TiAqY20gPSAmY3BpXy0+Y29tbW9uOworICBWUDlFbmNvZGVyQ29uZmlnICpveGNmID0gJmNwaV8t
Pm94Y2Y7CisgIFJBVEVfQ09OVFJPTCAqY29uc3QgcmMgPSAmY3BpXy0+cmM7CisKKyAgY20tPndp
ZHRoID0gcmNfY2ZnLndpZHRoOworICBjbS0+aGVpZ2h0ID0gcmNfY2ZnLmhlaWdodDsKKyAgb3hj
Zi0+d2lkdGggPSByY19jZmcud2lkdGg7CisgIG94Y2YtPmhlaWdodCA9IHJjX2NmZy5oZWlnaHQ7
CisgIG94Y2YtPndvcnN0X2FsbG93ZWRfcSA9IHZwOV9xdWFudGl6ZXJfdG9fcWluZGV4KHJjX2Nm
Zy5tYXhfcXVhbnRpemVyKTsKKyAgb3hjZi0+YmVzdF9hbGxvd2VkX3EgPSB2cDlfcXVhbnRpemVy
X3RvX3FpbmRleChyY19jZmcubWluX3F1YW50aXplcik7CisgIHJjLT53b3JzdF9xdWFsaXR5ID0g
b3hjZi0+d29yc3RfYWxsb3dlZF9xOworICByYy0+YmVzdF9xdWFsaXR5ID0gb3hjZi0+YmVzdF9h
bGxvd2VkX3E7CisgIG94Y2YtPnRhcmdldF9iYW5kd2lkdGggPSAxMDAwICogcmNfY2ZnLnRhcmdl
dF9iYW5kd2lkdGg7CisgIG94Y2YtPnN0YXJ0aW5nX2J1ZmZlcl9sZXZlbF9tcyA9IHJjX2NmZy5i
dWZfaW5pdGlhbF9zejsKKyAgb3hjZi0+b3B0aW1hbF9idWZmZXJfbGV2ZWxfbXMgPSByY19jZmcu
YnVmX29wdGltYWxfc3o7CisgIG94Y2YtPm1heGltdW1fYnVmZmVyX3NpemVfbXMgPSByY19jZmcu
YnVmX3N6OworICBveGNmLT51bmRlcl9zaG9vdF9wY3QgPSByY19jZmcudW5kZXJzaG9vdF9wY3Q7
CisgIG94Y2YtPm92ZXJfc2hvb3RfcGN0ID0gcmNfY2ZnLm92ZXJzaG9vdF9wY3Q7CisgIG94Y2Yt
PnNzX251bWJlcl9sYXllcnMgPSByY19jZmcuc3NfbnVtYmVyX2xheWVyczsKKyAgb3hjZi0+dHNf
bnVtYmVyX2xheWVycyA9IHJjX2NmZy50c19udW1iZXJfbGF5ZXJzOworICBveGNmLT50ZW1wb3Jh
bF9sYXllcmluZ19tb2RlID0gKFZQOUVfVEVNUE9SQUxfTEFZRVJJTkdfTU9ERSkoCisgICAgICAo
cmNfY2ZnLnRzX251bWJlcl9sYXllcnMgPiAxKSA/IHJjX2NmZy50c19udW1iZXJfbGF5ZXJzIDog
MCk7CisKKyAgY3BpXy0+b3hjZi5yY19tYXhfaW50cmFfYml0cmF0ZV9wY3QgPSByY19jZmcubWF4
X2ludHJhX2JpdHJhdGVfcGN0OworICBjcGlfLT5mcmFtZXJhdGUgPSByY19jZmcuZnJhbWVyYXRl
OworICBjcGlfLT5zdmMubnVtYmVyX3NwYXRpYWxfbGF5ZXJzID0gcmNfY2ZnLnNzX251bWJlcl9s
YXllcnM7CisgIGNwaV8tPnN2Yy5udW1iZXJfdGVtcG9yYWxfbGF5ZXJzID0gcmNfY2ZnLnRzX251
bWJlcl9sYXllcnM7CisKKyAgZm9yIChpbnQgc2wgPSAwOyBzbCA8IGNwaV8tPnN2Yy5udW1iZXJf
c3BhdGlhbF9sYXllcnM7ICsrc2wpIHsKKyAgICBmb3IgKGludCB0bCA9IDA7IHRsIDwgY3BpXy0+
c3ZjLm51bWJlcl90ZW1wb3JhbF9sYXllcnM7ICsrdGwpIHsKKyAgICAgIGNvbnN0IGludCBsYXll
ciA9CisgICAgICAgICAgTEFZRVJfSURTX1RPX0lEWChzbCwgdGwsIGNwaV8tPnN2Yy5udW1iZXJf
dGVtcG9yYWxfbGF5ZXJzKTsKKyAgICAgIExBWUVSX0NPTlRFWFQgKmxjID0gJmNwaV8tPnN2Yy5s
YXllcl9jb250ZXh0W2xheWVyXTsKKyAgICAgIFJBVEVfQ09OVFJPTCAqY29uc3QgbHJjID0gJmxj
LT5yYzsKKyAgICAgIG94Y2YtPmxheWVyX3RhcmdldF9iaXRyYXRlW2xheWVyXSA9CisgICAgICAg
ICAgMTAwMCAqIHJjX2NmZy5sYXllcl90YXJnZXRfYml0cmF0ZVtsYXllcl07CisgICAgICBscmMt
PndvcnN0X3F1YWxpdHkgPQorICAgICAgICAgIHZwOV9xdWFudGl6ZXJfdG9fcWluZGV4KHJjX2Nm
Zy5tYXhfcXVhbnRpemVyc1tsYXllcl0pOworICAgICAgbHJjLT5iZXN0X3F1YWxpdHkgPSB2cDlf
cXVhbnRpemVyX3RvX3FpbmRleChyY19jZmcubWluX3F1YW50aXplcnNbbGF5ZXJdKTsKKyAgICAg
IGxjLT5zY2FsaW5nX2ZhY3Rvcl9udW0gPSByY19jZmcuc2NhbGluZ19mYWN0b3JfbnVtW3NsXTsK
KyAgICAgIGxjLT5zY2FsaW5nX2ZhY3Rvcl9kZW4gPSByY19jZmcuc2NhbGluZ19mYWN0b3JfZGVu
W3NsXTsKKyAgICAgIG94Y2YtPnRzX3JhdGVfZGVjaW1hdG9yW3RsXSA9IHJjX2NmZy50c19yYXRl
X2RlY2ltYXRvclt0bF07CisgICAgfQorICB9CisgIHZwOV9zZXRfcmNfYnVmZmVyX3NpemVzKGNw
aV8pOworICB2cDlfbmV3X2ZyYW1lcmF0ZShjcGlfLCBjcGlfLT5mcmFtZXJhdGUpOworICBpZiAo
Y3BpXy0+c3ZjLm51bWJlcl90ZW1wb3JhbF9sYXllcnMgPiAxIHx8CisgICAgICBjcGlfLT5zdmMu
bnVtYmVyX3NwYXRpYWxfbGF5ZXJzID4gMSkgeworICAgIGlmIChjbS0+Y3VycmVudF92aWRlb19m
cmFtZSA9PSAwKSB2cDlfaW5pdF9sYXllcl9jb250ZXh0KGNwaV8pOworICAgIHZwOV91cGRhdGVf
bGF5ZXJfY29udGV4dF9jaGFuZ2VfY29uZmlnKGNwaV8sCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKGludCljcGlfLT5veGNmLnRhcmdldF9iYW5kd2lkdGgpOwor
ICB9CisgIHZwOV9jaGVja19yZXNldF9yY19mbGFnKGNwaV8pOworfQorCit2b2lkIFZQOVJhdGVD
b250cm9sUlRDOjpDb21wdXRlUVAoY29uc3QgVlA5RnJhbWVQYXJhbXNRcFJUQyAmZnJhbWVfcGFy
YW1zKSB7CisgIFZQOV9DT01NT04gKmNvbnN0IGNtID0gJmNwaV8tPmNvbW1vbjsKKyAgaW50IHdp
ZHRoLCBoZWlnaHQ7CisgIGNwaV8tPnN2Yy5zcGF0aWFsX2xheWVyX2lkID0gZnJhbWVfcGFyYW1z
LnNwYXRpYWxfbGF5ZXJfaWQ7CisgIGNwaV8tPnN2Yy50ZW1wb3JhbF9sYXllcl9pZCA9IGZyYW1l
X3BhcmFtcy50ZW1wb3JhbF9sYXllcl9pZDsKKyAgaWYgKGNwaV8tPnN2Yy5udW1iZXJfc3BhdGlh
bF9sYXllcnMgPiAxKSB7CisgICAgY29uc3QgaW50IGxheWVyID0gTEFZRVJfSURTX1RPX0lEWChj
cGlfLT5zdmMuc3BhdGlhbF9sYXllcl9pZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNwaV8tPnN2Yy50ZW1wb3JhbF9sYXllcl9pZCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNwaV8tPnN2Yy5udW1iZXJfdGVtcG9yYWxfbGF5ZXJzKTsK
KyAgICBMQVlFUl9DT05URVhUICpsYyA9ICZjcGlfLT5zdmMubGF5ZXJfY29udGV4dFtsYXllcl07
CisgICAgZ2V0X2xheWVyX3Jlc29sdXRpb24oY3BpXy0+b3hjZi53aWR0aCwgY3BpXy0+b3hjZi5o
ZWlnaHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgbGMtPnNjYWxpbmdfZmFjdG9yX251bSwg
bGMtPnNjYWxpbmdfZmFjdG9yX2RlbiwgJndpZHRoLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICZoZWlnaHQpOworICAgIGNtLT53aWR0aCA9IHdpZHRoOworICAgIGNtLT5oZWlnaHQgPSBoZWln
aHQ7CisgIH0KKyAgdnA5X3NldF9tYl9taShjbSwgY20tPndpZHRoLCBjbS0+aGVpZ2h0KTsKKyAg
Y20tPmZyYW1lX3R5cGUgPSBmcmFtZV9wYXJhbXMuZnJhbWVfdHlwZTsKKyAgY3BpXy0+cmVmcmVz
aF9nb2xkZW5fZnJhbWUgPSAoY20tPmZyYW1lX3R5cGUgPT0gS0VZX0ZSQU1FKSA/IDEgOiAwOwor
ICBjcGlfLT5zZi51c2Vfbm9ucmRfcGlja19tb2RlID0gMTsKKyAgaWYgKGNwaV8tPnN2Yy5udW1i
ZXJfc3BhdGlhbF9sYXllcnMgPT0gMSAmJgorICAgICAgY3BpXy0+c3ZjLm51bWJlcl90ZW1wb3Jh
bF9sYXllcnMgPT0gMSkgeworICAgIGludCB0YXJnZXQ7CisgICAgaWYgKGZyYW1lX2lzX2ludHJh
X29ubHkoY20pKQorICAgICAgdGFyZ2V0ID0gdnA5X2NhbGNfaWZyYW1lX3RhcmdldF9zaXplX29u
ZV9wYXNzX2NicihjcGlfKTsKKyAgICBlbHNlCisgICAgICB0YXJnZXQgPSB2cDlfY2FsY19wZnJh
bWVfdGFyZ2V0X3NpemVfb25lX3Bhc3NfY2JyKGNwaV8pOworICAgIHZwOV9yY19zZXRfZnJhbWVf
dGFyZ2V0KGNwaV8sIHRhcmdldCk7CisgICAgdnA5X3VwZGF0ZV9idWZmZXJfbGV2ZWxfcHJlZW5j
b2RlKGNwaV8pOworICB9IGVsc2UgeworICAgIHZwOV91cGRhdGVfdGVtcG9yYWxfbGF5ZXJfZnJh
bWVyYXRlKGNwaV8pOworICAgIHZwOV9yZXN0b3JlX2xheWVyX2NvbnRleHQoY3BpXyk7CisgICAg
dnA5X3JjX2dldF9zdmNfcGFyYW1zKGNwaV8pOworICB9CisgIGludCBib3R0b21faW5kZXgsIHRv
cF9pbmRleDsKKyAgY3BpXy0+Y29tbW9uLmJhc2VfcWluZGV4ID0KKyAgICAgIHZwOV9yY19waWNr
X3FfYW5kX2JvdW5kcyhjcGlfLCAmYm90dG9tX2luZGV4LCAmdG9wX2luZGV4KTsKK30KKworaW50
IFZQOVJhdGVDb250cm9sUlRDOjpHZXRRUCgpIGNvbnN0IHsgcmV0dXJuIGNwaV8tPmNvbW1vbi5i
YXNlX3FpbmRleDsgfQorCitpbnQgVlA5UmF0ZUNvbnRyb2xSVEM6OkdldExvb3BmaWx0ZXJMZXZl
bCgpIGNvbnN0IHsKKyAgc3RydWN0IGxvb3BmaWx0ZXIgKmNvbnN0IGxmID0gJmNwaV8tPmNvbW1v
bi5sZjsKKyAgdnA5X3BpY2tfZmlsdGVyX2xldmVsKG51bGxwdHIsIGNwaV8sIExQRl9QSUNLX0ZS
T01fUSk7CisgIHJldHVybiBsZi0+ZmlsdGVyX2xldmVsOworfQorCit2b2lkIFZQOVJhdGVDb250
cm9sUlRDOjpQb3N0RW5jb2RlVXBkYXRlKHVpbnQ2NF90IGVuY29kZWRfZnJhbWVfc2l6ZSkgewor
ICB2cDlfcmNfcG9zdGVuY29kZV91cGRhdGUoY3BpXywgZW5jb2RlZF9mcmFtZV9zaXplKTsKKyAg
aWYgKGNwaV8tPnN2Yy5udW1iZXJfc3BhdGlhbF9sYXllcnMgPiAxIHx8CisgICAgICBjcGlfLT5z
dmMubnVtYmVyX3RlbXBvcmFsX2xheWVycyA+IDEpCisgICAgdnA5X3NhdmVfbGF5ZXJfY29udGV4
dChjcGlfKTsKKyAgY3BpXy0+Y29tbW9uLmN1cnJlbnRfdmlkZW9fZnJhbWUrKzsKK30KKworfSAg
Ly8gbmFtZXNwYWNlIGxpYnZweApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvcmF0ZWN0cmxf
cnRjLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9yYXRlY3RybF9ydGMuaApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43MmVhNDBm
ZDY4YmMzZWIxZDhiODBkYzUxNzVkYjk0YWJhNjFjYTRiCi0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvcmF0ZWN0cmxfcnRjLmgKQEAgLTAsMCArMSwxMTYgQEAKKy8qCisgKiAgQ29w
eXJpZ2h0IChjKSAyMDIwIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNl
cnZlZC4KKyAqCisgKiAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBC
U0Qtc3R5bGUgbGljZW5zZQorICogIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZp
bGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZQorICogIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50
ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyAqICBpbiB0aGUg
ZmlsZSBQQVRFTlRTLiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisgKiAg
YmUgZm91bmQgaW4gdGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRy
ZWUuCisgKi8KKworI2lmbmRlZiBWUFhfVlA5X1JBVEVDVFJMX1JUQ19IXworI2RlZmluZSBWUFhf
VlA5X1JBVEVDVFJMX1JUQ19IXworCisjaW5jbHVkZSA8Y3N0ZGludD4KKyNpbmNsdWRlIDxtZW1v
cnk+CisKKyNpbmNsdWRlICJ2cDkvY29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5oIgorI2luY2x1ZGUg
InZwOS9jb21tb24vdnA5X2VudW1zLmgiCisjaW5jbHVkZSAidnA5L2NvbW1vbi92cDlfb255eGNf
aW50LmgiCisjaW5jbHVkZSAidnA5L3ZwOV9pZmFjZV9jb21tb24uaCIKKyNpbmNsdWRlICJ2cDkv
ZW5jb2Rlci92cDlfZW5jb2Rlci5oIgorI2luY2x1ZGUgInZwOS9lbmNvZGVyL3ZwOV9maXJzdHBh
c3MuaCIKKyNpbmNsdWRlICJ2cDkvdnA5X2N4X2lmYWNlLmgiCisjaW5jbHVkZSAidnB4X21lbS92
cHhfbWVtLmgiCisKK25hbWVzcGFjZSBsaWJ2cHggeworCitzdHJ1Y3QgVlA5UmF0ZUNvbnRyb2xS
dGNDb25maWcgeworICBpbnQgd2lkdGg7CisgIGludCBoZWlnaHQ7CisgIC8vIDAtNjMKKyAgaW50
IG1heF9xdWFudGl6ZXI7CisgIGludCBtaW5fcXVhbnRpemVyOworICBpbnQ2NF90IHRhcmdldF9i
YW5kd2lkdGg7CisgIGludDY0X3QgYnVmX2luaXRpYWxfc3o7CisgIGludDY0X3QgYnVmX29wdGlt
YWxfc3o7CisgIGludDY0X3QgYnVmX3N6OworICBpbnQgdW5kZXJzaG9vdF9wY3Q7CisgIGludCBv
dmVyc2hvb3RfcGN0OworICBpbnQgbWF4X2ludHJhX2JpdHJhdGVfcGN0OworICBkb3VibGUgZnJh
bWVyYXRlOworICAvLyBOdW1iZXIgb2Ygc3BhdGlhbCBsYXllcnMKKyAgaW50IHNzX251bWJlcl9s
YXllcnM7CisgIC8vIE51bWJlciBvZiB0ZW1wb3JhbCBsYXllcnMKKyAgaW50IHRzX251bWJlcl9s
YXllcnM7CisgIGludCBtYXhfcXVhbnRpemVyc1tWUFhfTUFYX0xBWUVSU107CisgIGludCBtaW5f
cXVhbnRpemVyc1tWUFhfTUFYX0xBWUVSU107CisgIGludCBzY2FsaW5nX2ZhY3Rvcl9udW1bVlBY
X1NTX01BWF9MQVlFUlNdOworICBpbnQgc2NhbGluZ19mYWN0b3JfZGVuW1ZQWF9TU19NQVhfTEFZ
RVJTXTsKKyAgaW50IGxheWVyX3RhcmdldF9iaXRyYXRlW1ZQWF9NQVhfTEFZRVJTXTsKKyAgaW50
IHRzX3JhdGVfZGVjaW1hdG9yW1ZQWF9UU19NQVhfTEFZRVJTXTsKK307CisKK3N0cnVjdCBWUDlG
cmFtZVBhcmFtc1FwUlRDIHsKKyAgRlJBTUVfVFlQRSBmcmFtZV90eXBlOworICBpbnQgc3BhdGlh
bF9sYXllcl9pZDsKKyAgaW50IHRlbXBvcmFsX2xheWVyX2lkOworfTsKKworLy8gVGhpcyBpbnRl
cmZhY2UgYWxsb3dzIHVzaW5nIFZQOSByZWFsLXRpbWUgcmF0ZSBjb250cm9sIHdpdGhvdXQgaW5p
dGlhbGl6aW5nCisvLyB0aGUgZW5jb2Rlci4gVG8gdXNlIHRoaXMgaW50ZXJmYWNlLCB5b3UgbmVl
ZCB0byBsaW5rIHdpdGggbGlidnA5cmMuYS4KKy8vCisvLyAjaW5jbHVkZSAidnA5L3JhdGVjdHJs
X3J0Yy5oIgorLy8gVlA5UmF0ZUNvbnRyb2xSVEMgcmNfYXBpOworLy8gVlA5UmF0ZUNvbnRyb2xS
dGNDb25maWcgY2ZnOworLy8gVlA5RnJhbWVQYXJhbXNRcFJUQyBmcmFtZV9wYXJhbXM7CisvLwor
Ly8gWW91ckZ1bmN0aW9uVG9Jbml0aWFsaXplQ29uZmlnKGNmZyk7CisvLyByY19hcGkuSW5pdFJh
dGVDb250cm9sKGNmZyk7CisvLyAvLyBzdGFydCBlbmNvZGluZworLy8gd2hpbGUgKGZyYW1lX3Rv
X2VuY29kZSkgeworLy8gICBpZiAoY29uZmlnX2NoYW5nZWQpCisvLyAgICAgcmNfYXBpLlVwZGF0
ZVJhdGVDb250cm9sKGNmZyk7CisvLyAgIFlvdXJGdW5jdGlvblRvRmlsbEZyYW1lUGFyYW1zKGZy
YW1lX3BhcmFtcyk7CisvLyAgIHJjX2FwaS5Db21wdXRlUVAoZnJhbWVfcGFyYW1zKTsKKy8vICAg
WW91ckZ1bmN0aW9uVG9Vc2VRUChyY19hcGkuR2V0UVAoKSk7CisvLyAgIFlvdXJGdW5jdGlvblRv
VXNlTG9vcGZpbHRlcihyY19hcGkuR2V0TG9vcGZpbHRlckxldmVsKCkpOworLy8gICAvLyBBZnRl
ciBlbmNvZGluZworLy8gICByY19hcGkuUG9zdEVuY29kZShlbmNvZGVkX2ZyYW1lX3NpemUpOwor
Ly8gfQorY2xhc3MgVlA5UmF0ZUNvbnRyb2xSVEMgeworIHB1YmxpYzoKKyAgc3RhdGljIHN0ZDo6
dW5pcXVlX3B0cjxWUDlSYXRlQ29udHJvbFJUQz4gQ3JlYXRlKAorICAgICAgY29uc3QgVlA5UmF0
ZUNvbnRyb2xSdGNDb25maWcgJmNmZyk7CisgIH5WUDlSYXRlQ29udHJvbFJUQygpIHsKKyAgICBp
ZiAoY3BpXykgeworICAgICAgZm9yIChpbnQgc2wgPSAwOyBzbCA8IGNwaV8tPnN2Yy5udW1iZXJf
c3BhdGlhbF9sYXllcnM7IHNsKyspIHsKKyAgICAgICAgZm9yIChpbnQgdGwgPSAwOyB0bCA8IGNw
aV8tPnN2Yy5udW1iZXJfdGVtcG9yYWxfbGF5ZXJzOyB0bCsrKSB7CisgICAgICAgICAgaW50IGxh
eWVyID0gTEFZRVJfSURTX1RPX0lEWChzbCwgdGwsIGNwaV8tPm94Y2YudHNfbnVtYmVyX2xheWVy
cyk7CisgICAgICAgICAgTEFZRVJfQ09OVEVYVCAqY29uc3QgbGMgPSAmY3BpXy0+c3ZjLmxheWVy
X2NvbnRleHRbbGF5ZXJdOworICAgICAgICAgIHZweF9mcmVlKGxjLT5tYXApOworICAgICAgICAg
IHZweF9mcmVlKGxjLT5sYXN0X2NvZGVkX3FfbWFwKTsKKyAgICAgICAgICB2cHhfZnJlZShsYy0+
Y29uc2VjX3plcm9fbXYpOworICAgICAgICB9CisgICAgICB9CisgICAgICB2cHhfZnJlZShjcGlf
KTsKKyAgICB9CisgIH0KKworICB2b2lkIFVwZGF0ZVJhdGVDb250cm9sKGNvbnN0IFZQOVJhdGVD
b250cm9sUnRjQ29uZmlnICZyY19jZmcpOworICAvLyBHZXRRUCgpIG5lZWRzIHRvIGJlIGNhbGxl
ZCBhZnRlciBDb21wdXRlUVAoKSB0byBnZXQgdGhlIGxhdGVzdCBRUAorICBpbnQgR2V0UVAoKSBj
b25zdDsKKyAgaW50IEdldExvb3BmaWx0ZXJMZXZlbCgpIGNvbnN0OworICB2b2lkIENvbXB1dGVR
UChjb25zdCBWUDlGcmFtZVBhcmFtc1FwUlRDICZmcmFtZV9wYXJhbXMpOworICAvLyBGZWVkYmFj
ayB0byByYXRlIGNvbnRyb2wgd2l0aCB0aGUgc2l6ZSBvZiBjdXJyZW50IGVuY29kZWQgZnJhbWUK
KyAgdm9pZCBQb3N0RW5jb2RlVXBkYXRlKHVpbnQ2NF90IGVuY29kZWRfZnJhbWVfc2l6ZSk7CisK
KyBwcml2YXRlOgorICBWUDlSYXRlQ29udHJvbFJUQygpIHt9CisgIHZvaWQgSW5pdFJhdGVDb250
cm9sKGNvbnN0IFZQOVJhdGVDb250cm9sUnRjQ29uZmlnICZjZmcpOworICBWUDlfQ09NUCAqY3Bp
XzsKK307CisKK30gIC8vIG5hbWVzcGFjZSBsaWJ2cHgKKworI2VuZGlmICAvLyBWUFhfVlA5X1JB
VEVDVFJMX1JUQ19IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvc2ltcGxlX2VuY29kZS5j
YyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L3NpbXBsZV9lbmNvZGUuY2MKaW5kZXggMjVkMDI1MThkNWQyODRi
M2MyODg1M2ZlOTViOTZhN2NkYzQ0N2E1Ny4uZDRlYjBjNjY5ZDcxNDI2OTMzYmM4NGJkN2JkMjRi
NjlhOWQ2ZmNlZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvc2ltcGxlX2VuY29kZS5jYwor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9zaW1wbGVfZW5jb2RlLmNjCkBAIC05MCwxMiArOTAsMjAgQEAg
c3RhdGljIGludCBpbWdfcmVhZCh2cHhfaW1hZ2VfdCAqaW1nLCBGSUxFICpmaWxlKSB7CiAgIHJl
dHVybiAxOwogfQogCisvLyBBc3N1bWUgZXZlcnkgY29uZmlnIGluIFZQOUVuY29kZXJDb25maWcg
aXMgbGVzcyB0aGFuIDEwMCBjaGFyYWN0ZXJzLgorI2RlZmluZSBFTkNPREVfQ09ORklHX0JVRl9T
SVpFIDEwMAorc3RydWN0IEVuY29kZUNvbmZpZyB7CisgIGNoYXIgbmFtZVtFTkNPREVfQ09ORklH
X0JVRl9TSVpFXTsKKyAgY2hhciB2YWx1ZVtFTkNPREVfQ09ORklHX0JVRl9TSVpFXTsKK307CisK
IGNsYXNzIFNpbXBsZUVuY29kZTo6RW5jb2RlSW1wbCB7CiAgcHVibGljOgogICBWUDlfQ09NUCAq
Y3BpOwogICB2cHhfaW1nX2ZtdF90IGltZ19mbXQ7CiAgIHZweF9pbWFnZV90IHRtcF9pbWc7CiAg
IHN0ZDo6dmVjdG9yPEZJUlNUUEFTU19TVEFUUz4gZmlyc3RfcGFzc19zdGF0czsKKyAgc3RkOjp2
ZWN0b3I8RW5jb2RlQ29uZmlnPiBlbmNvZGVfY29uZmlnX2xpc3Q7CiB9OwogCiBzdGF0aWMgVlA5
X0NPTVAgKmluaXRfZW5jb2Rlcihjb25zdCBWUDlFbmNvZGVyQ29uZmlnICpveGNmLApAQCAtMTIz
LDEzICsxMzEsNiBAQCBzdGF0aWMgSU5MSU5FIHZweF9yYXRpb25hbF90IG1ha2VfdnB4X3JhdGlv
bmFsKGludCBudW0sIGludCBkZW4pIHsKICAgcmV0dXJuIHY7CiB9CiAKLXN0YXRpYyBJTkxJTkUg
dnB4X3JhdGlvbmFsX3QgaW52ZXJ0X3ZweF9yYXRpb25hbCh2cHhfcmF0aW9uYWxfdCB2KSB7Ci0g
IHZweF9yYXRpb25hbF90IGludmVyc2VfdjsKLSAgaW52ZXJzZV92Lm51bSA9IHYuZGVuOwotICBp
bnZlcnNlX3YuZGVuID0gdi5udW07Ci0gIHJldHVybiBpbnZlcnNlX3Y7Ci19Ci0KIHN0YXRpYyBJ
TkxJTkUgRnJhbWVUeXBlCiBnZXRfZnJhbWVfdHlwZV9mcm9tX3VwZGF0ZV90eXBlKEZSQU1FX1VQ
REFURV9UWVBFIHVwZGF0ZV90eXBlKSB7CiAgIHN3aXRjaCAodXBkYXRlX3R5cGUpIHsKQEAgLTE3
NCw3ICsxNzUsOCBAQCBzdGF0aWMgUmVmRnJhbWVUeXBlIG12X3JlZl9mcmFtZV90b19yZWZfZnJh
bWVfdHlwZSgKIAogc3RhdGljIHZvaWQgdXBkYXRlX21vdGlvbl92ZWN0b3JfaW5mbygKICAgICBj
b25zdCBNT1RJT05fVkVDVE9SX0lORk8gKmlucHV0X21vdGlvbl92ZWN0b3JfaW5mbywgY29uc3Qg
aW50IG51bV9yb3dzXzR4NCwKLSAgICBjb25zdCBpbnQgbnVtX2NvbHNfNHg0LCBNb3Rpb25WZWN0
b3JJbmZvICpvdXRwdXRfbW90aW9uX3ZlY3Rvcl9pbmZvKSB7CisgICAgY29uc3QgaW50IG51bV9j
b2xzXzR4NCwgTW90aW9uVmVjdG9ySW5mbyAqb3V0cHV0X21vdGlvbl92ZWN0b3JfaW5mbywKKyAg
ICBpbnQgbW90aW9uX3ZlY3Rvcl9zY2FsZSkgewogICBjb25zdCBpbnQgbnVtX3VuaXRzXzR4NCA9
IG51bV9yb3dzXzR4NCAqIG51bV9jb2xzXzR4NDsKICAgZm9yIChpbnQgaSA9IDA7IGkgPCBudW1f
dW5pdHNfNHg0OyArK2kpIHsKICAgICBjb25zdCBNVl9SRUZFUkVOQ0VfRlJBTUUgKmluX3JlZl9m
cmFtZSA9CkBAIC0xOTIsMTYgKzE5NCwzNCBAQCBzdGF0aWMgdm9pZCB1cGRhdGVfbW90aW9uX3Zl
Y3Rvcl9pbmZvKAogICAgICAgICBtdl9yZWZfZnJhbWVfdG9fcmVmX2ZyYW1lX3R5cGUoaW5fcmVm
X2ZyYW1lWzFdKTsKICAgICBvdXRwdXRfbW90aW9uX3ZlY3Rvcl9pbmZvW2ldLm12X3Jvd1swXSA9
CiAgICAgICAgIChkb3VibGUpaW5wdXRfbW90aW9uX3ZlY3Rvcl9pbmZvW2ldLm12WzBdLmFzX212
LnJvdyAvCi0gICAgICAgIGtNb3Rpb25WZWN0b3JQcmVjaXNpb247CisgICAgICAgIG1vdGlvbl92
ZWN0b3Jfc2NhbGU7CiAgICAgb3V0cHV0X21vdGlvbl92ZWN0b3JfaW5mb1tpXS5tdl9jb2x1bW5b
MF0gPQogICAgICAgICAoZG91YmxlKWlucHV0X21vdGlvbl92ZWN0b3JfaW5mb1tpXS5tdlswXS5h
c19tdi5jb2wgLwotICAgICAgICBrTW90aW9uVmVjdG9yUHJlY2lzaW9uOworICAgICAgICBtb3Rp
b25fdmVjdG9yX3NjYWxlOwogICAgIG91dHB1dF9tb3Rpb25fdmVjdG9yX2luZm9baV0ubXZfcm93
WzFdID0KICAgICAgICAgKGRvdWJsZSlpbnB1dF9tb3Rpb25fdmVjdG9yX2luZm9baV0ubXZbMV0u
YXNfbXYucm93IC8KLSAgICAgICAga01vdGlvblZlY3RvclByZWNpc2lvbjsKKyAgICAgICAgbW90
aW9uX3ZlY3Rvcl9zY2FsZTsKICAgICBvdXRwdXRfbW90aW9uX3ZlY3Rvcl9pbmZvW2ldLm12X2Nv
bHVtblsxXSA9CiAgICAgICAgIChkb3VibGUpaW5wdXRfbW90aW9uX3ZlY3Rvcl9pbmZvW2ldLm12
WzFdLmFzX212LmNvbCAvCi0gICAgICAgIGtNb3Rpb25WZWN0b3JQcmVjaXNpb247CisgICAgICAg
IG1vdGlvbl92ZWN0b3Jfc2NhbGU7CisgIH0KK30KKworc3RhdGljIHZvaWQgdXBkYXRlX3RwbF9z
dGF0c19pbmZvKGNvbnN0IFRwbERlcFN0YXRzICppbnB1dF90cGxfc3RhdHNfaW5mbywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpbnQgc2hvd19mcmFtZV9jb3VudCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUcGxTdGF0c0luZm8gKm91dHB1dF90
cGxfc3RhdHNfaW5mbykgeworICBpbnQgZnJhbWVfaWR4OworICBmb3IgKGZyYW1lX2lkeCA9IDA7
IGZyYW1lX2lkeCA8IHNob3dfZnJhbWVfY291bnQ7ICsrZnJhbWVfaWR4KSB7CisgICAgb3V0cHV0
X3RwbF9zdGF0c19pbmZvW2ZyYW1lX2lkeF0uaW50cmFfY29zdCA9CisgICAgICAgIGlucHV0X3Rw
bF9zdGF0c19pbmZvW2ZyYW1lX2lkeF0uaW50cmFfY29zdDsKKyAgICBvdXRwdXRfdHBsX3N0YXRz
X2luZm9bZnJhbWVfaWR4XS5pbnRlcl9jb3N0ID0KKyAgICAgICAgaW5wdXRfdHBsX3N0YXRzX2lu
Zm9bZnJhbWVfaWR4XS5pbnRlcl9jb3N0OworICAgIG91dHB1dF90cGxfc3RhdHNfaW5mb1tmcmFt
ZV9pZHhdLm1jX2Zsb3cgPQorICAgICAgICBpbnB1dF90cGxfc3RhdHNfaW5mb1tmcmFtZV9pZHhd
Lm1jX2Zsb3c7CisgICAgb3V0cHV0X3RwbF9zdGF0c19pbmZvW2ZyYW1lX2lkeF0ubWNfZGVwX2Nv
c3QgPQorICAgICAgICBpbnB1dF90cGxfc3RhdHNfaW5mb1tmcmFtZV9pZHhdLm1jX2RlcF9jb3N0
OworICAgIG91dHB1dF90cGxfc3RhdHNfaW5mb1tmcmFtZV9pZHhdLm1jX3JlZl9jb3N0ID0KKyAg
ICAgICAgaW5wdXRfdHBsX3N0YXRzX2luZm9bZnJhbWVfaWR4XS5tY19yZWZfY29zdDsKICAgfQog
fQogCkBAIC00NzgsMTIgKzQ5OCwxMyBAQCBzdGF0aWMgYm9vbCBpbml0X2VuY29kZV9mcmFtZV9y
ZXN1bHQoRW5jb2RlRnJhbWVSZXN1bHQgKmVuY29kZV9mcmFtZV9yZXN1bHQsCiAgIGVuY29kZV9m
cmFtZV9yZXN1bHQtPmNvZGluZ19kYXRhLnJlc2V0KAogICAgICAgbmV3IChzdGQ6Om5vdGhyb3cp
IHVpbnQ4X3RbbWF4X2NvZGluZ19kYXRhX2J5dGVfc2l6ZV0pOwogCi0gIGVuY29kZV9mcmFtZV9y
ZXN1bHQtPm51bV9yb3dzXzR4NCA9IGdldF9udW1fdW5pdF80eDQoZnJhbWVfd2lkdGgpOwotICBl
bmNvZGVfZnJhbWVfcmVzdWx0LT5udW1fY29sc180eDQgPSBnZXRfbnVtX3VuaXRfNHg0KGZyYW1l
X2hlaWdodCk7CisgIGVuY29kZV9mcmFtZV9yZXN1bHQtPm51bV9yb3dzXzR4NCA9IGdldF9udW1f
dW5pdF80eDQoZnJhbWVfaGVpZ2h0KTsKKyAgZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+bnVtX2NvbHNf
NHg0ID0gZ2V0X251bV91bml0XzR4NChmcmFtZV93aWR0aCk7CiAgIGVuY29kZV9mcmFtZV9yZXN1
bHQtPnBhcnRpdGlvbl9pbmZvLnJlc2l6ZShlbmNvZGVfZnJhbWVfcmVzdWx0LT5udW1fcm93c180
eDQgKgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2Rl
X2ZyYW1lX3Jlc3VsdC0+bnVtX2NvbHNfNHg0KTsKICAgZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+bW90
aW9uX3ZlY3Rvcl9pbmZvLnJlc2l6ZSgKICAgICAgIGVuY29kZV9mcmFtZV9yZXN1bHQtPm51bV9y
b3dzXzR4NCAqIGVuY29kZV9mcmFtZV9yZXN1bHQtPm51bV9jb2xzXzR4NCk7CisgIGVuY29kZV9m
cmFtZV9yZXN1bHQtPnRwbF9zdGF0c19pbmZvLnJlc2l6ZShNQVhfTEFHX0JVRkZFUlMpOwogCiAg
IGlmIChlbmNvZGVfZnJhbWVfcmVzdWx0LT5jb2RpbmdfZGF0YS5nZXQoKSA9PSBudWxscHRyKSB7
CiAgICAgcmV0dXJuIGZhbHNlOwpAQCAtNDkyLDEyICs1MTMsMzIgQEAgc3RhdGljIGJvb2wgaW5p
dF9lbmNvZGVfZnJhbWVfcmVzdWx0KEVuY29kZUZyYW1lUmVzdWx0ICplbmNvZGVfZnJhbWVfcmVz
dWx0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWVfaGVpZ2h0LCBpbWdfZm10KTsK
IH0KIAorc3RhdGljIHZvaWQgZW5jb2RlX2ZyYW1lX3Jlc3VsdF91cGRhdGVfcnFfaGlzdG9yeSgK
KyAgICBjb25zdCBSQVRFX1FJTkRFWF9ISVNUT1JZICpycV9oaXN0b3J5LAorICAgIEVuY29kZUZy
YW1lUmVzdWx0ICplbmNvZGVfZnJhbWVfcmVzdWx0KSB7CisgIGVuY29kZV9mcmFtZV9yZXN1bHQt
PnJlY29kZV9jb3VudCA9IHJxX2hpc3RvcnktPnJlY29kZV9jb3VudDsKKyAgZm9yIChpbnQgaSA9
IDA7IGkgPCBlbmNvZGVfZnJhbWVfcmVzdWx0LT5yZWNvZGVfY291bnQ7ICsraSkgeworICAgIGNv
bnN0IGludCBxX2luZGV4ID0gcnFfaGlzdG9yeS0+cV9pbmRleF9oaXN0b3J5W2ldOworICAgIGNv
bnN0IGludCByYXRlID0gcnFfaGlzdG9yeS0+cmF0ZV9oaXN0b3J5W2ldOworICAgIGVuY29kZV9m
cmFtZV9yZXN1bHQtPnFfaW5kZXhfaGlzdG9yeS5wdXNoX2JhY2socV9pbmRleCk7CisgICAgZW5j
b2RlX2ZyYW1lX3Jlc3VsdC0+cmF0ZV9oaXN0b3J5LnB1c2hfYmFjayhyYXRlKTsKKyAgfQorfQor
CiBzdGF0aWMgdm9pZCB1cGRhdGVfZW5jb2RlX2ZyYW1lX3Jlc3VsdCgKLSAgICBFbmNvZGVGcmFt
ZVJlc3VsdCAqZW5jb2RlX2ZyYW1lX3Jlc3VsdCwKKyAgICBFbmNvZGVGcmFtZVJlc3VsdCAqZW5j
b2RlX2ZyYW1lX3Jlc3VsdCwgY29uc3QgaW50IHNob3dfZnJhbWVfY291bnQsCiAgICAgY29uc3Qg
RU5DT0RFX0ZSQU1FX1JFU1VMVCAqZW5jb2RlX2ZyYW1lX2luZm8pIHsKICAgZW5jb2RlX2ZyYW1l
X3Jlc3VsdC0+Y29kaW5nX2RhdGFfYml0X3NpemUgPQogICAgICAgZW5jb2RlX2ZyYW1lX3Jlc3Vs
dC0+Y29kaW5nX2RhdGFfYnl0ZV9zaXplICogODsKICAgZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+c2hv
d19pZHggPSBlbmNvZGVfZnJhbWVfaW5mby0+c2hvd19pZHg7CisgIGVuY29kZV9mcmFtZV9yZXN1
bHQtPmNvZGluZ19pZHggPSBlbmNvZGVfZnJhbWVfaW5mby0+ZnJhbWVfY29kaW5nX2luZGV4Owor
ICBhc3NlcnQoa1JlZkZyYW1lVHlwZU1heCA9PSBNQVhfSU5URVJfUkVGX0ZSQU1FUyk7CisgIGZv
ciAoaW50IGkgPSAwOyBpIDwga1JlZkZyYW1lVHlwZU1heDsgKytpKSB7CisgICAgZW5jb2RlX2Zy
YW1lX3Jlc3VsdC0+cmVmX2ZyYW1lX2luZm8uY29kaW5nX2luZGV4ZXNbaV0gPQorICAgICAgICBl
bmNvZGVfZnJhbWVfaW5mby0+cmVmX2ZyYW1lX2NvZGluZ19pbmRleGVzW2ldOworICAgIGVuY29k
ZV9mcmFtZV9yZXN1bHQtPnJlZl9mcmFtZV9pbmZvLnZhbGlkX2xpc3RbaV0gPQorICAgICAgICBl
bmNvZGVfZnJhbWVfaW5mby0+cmVmX2ZyYW1lX3ZhbGlkX2xpc3RbaV07CisgIH0KICAgZW5jb2Rl
X2ZyYW1lX3Jlc3VsdC0+ZnJhbWVfdHlwZSA9CiAgICAgICBnZXRfZnJhbWVfdHlwZV9mcm9tX3Vw
ZGF0ZV90eXBlKGVuY29kZV9mcmFtZV9pbmZvLT51cGRhdGVfdHlwZSk7CiAgIGVuY29kZV9mcmFt
ZV9yZXN1bHQtPnBzbnIgPSBlbmNvZGVfZnJhbWVfaW5mby0+cHNucjsKQEAgLTUxMCw5ICs1NTEs
MTYgQEAgc3RhdGljIHZvaWQgdXBkYXRlX2VuY29kZV9mcmFtZV9yZXN1bHQoCiAgIHVwZGF0ZV9t
b3Rpb25fdmVjdG9yX2luZm8oZW5jb2RlX2ZyYW1lX2luZm8tPm1vdGlvbl92ZWN0b3JfaW5mbywK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGVfZnJhbWVfcmVzdWx0LT5udW1fcm93
c180eDQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+
bnVtX2NvbHNfNHg0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICZlbmNvZGVfZnJhbWVf
cmVzdWx0LT5tb3Rpb25fdmVjdG9yX2luZm9bMF0pOworICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICZlbmNvZGVfZnJhbWVfcmVzdWx0LT5tb3Rpb25fdmVjdG9yX2luZm9bMF0sCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAga01vdGlvblZlY3RvclN1YlBpeGVsUHJlY2lzaW9uKTsKICAg
dXBkYXRlX2ZyYW1lX2NvdW50cygmZW5jb2RlX2ZyYW1lX2luZm8tPmZyYW1lX2NvdW50cywKICAg
ICAgICAgICAgICAgICAgICAgICAmZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+ZnJhbWVfY291bnRzKTsK
KyAgaWYgKGVuY29kZV9mcmFtZV9yZXN1bHQtPmZyYW1lX3R5cGUgPT0ga0ZyYW1lVHlwZUFsdFJl
ZikgeworICAgIHVwZGF0ZV90cGxfc3RhdHNfaW5mbyhlbmNvZGVfZnJhbWVfaW5mby0+dHBsX3N0
YXRzX2luZm8sIHNob3dfZnJhbWVfY291bnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICZl
bmNvZGVfZnJhbWVfcmVzdWx0LT50cGxfc3RhdHNfaW5mb1swXSk7CisgIH0KKyAgZW5jb2RlX2Zy
YW1lX3Jlc3VsdF91cGRhdGVfcnFfaGlzdG9yeSgmZW5jb2RlX2ZyYW1lX2luZm8tPnJxX2hpc3Rv
cnksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2RlX2ZyYW1l
X3Jlc3VsdCk7CiB9CiAKIHN0YXRpYyB2b2lkIEluY3JlYXNlR3JvdXBPZlBpY3R1cmVJbmRleChH
cm91cE9mUGljdHVyZSAqZ3JvdXBfb2ZfcGljdHVyZSkgewpAQCAtNTI0LDkgKzU3MiwxOCBAQCBz
dGF0aWMgaW50IElzR3JvdXBPZlBpY3R1cmVGaW5pc2hlZChjb25zdCBHcm91cE9mUGljdHVyZSAm
Z3JvdXBfb2ZfcGljdHVyZSkgewogICAgICAgICAgZ3JvdXBfb2ZfcGljdHVyZS5lbmNvZGVfZnJh
bWVfbGlzdC5zaXplKCk7CiB9CiAKK2Jvb2wgb3BlcmF0b3I9PShjb25zdCBSZWZGcmFtZUluZm8g
JmEsIGNvbnN0IFJlZkZyYW1lSW5mbyAmYikgeworICBib29sIG1hdGNoID0gdHJ1ZTsKKyAgZm9y
IChpbnQgaSA9IDA7IGkgPCBrUmVmRnJhbWVUeXBlTWF4OyArK2kpIHsKKyAgICBtYXRjaCAmPSBh
LmNvZGluZ19pbmRleGVzW2ldID09IGIuY29kaW5nX2luZGV4ZXNbaV07CisgICAgbWF0Y2ggJj0g
YS52YWxpZF9saXN0W2ldID09IGIudmFsaWRfbGlzdFtpXTsKKyAgfQorICByZXR1cm4gbWF0Y2g7
Cit9CisKIHN0YXRpYyB2b2lkIEluaXRSZWZGcmFtZUluZm8oUmVmRnJhbWVJbmZvICpyZWZfZnJh
bWVfaW5mbykgewogICBmb3IgKGludCBpID0gMDsgaSA8IGtSZWZGcmFtZVR5cGVNYXg7ICsraSkg
ewotICAgIHJlZl9mcmFtZV9pbmZvLT5jb2RpbmdfaW5kZXhlc1tpXSA9IDA7CisgICAgcmVmX2Zy
YW1lX2luZm8tPmNvZGluZ19pbmRleGVzW2ldID0gLTE7CiAgICAgcmVmX2ZyYW1lX2luZm8tPnZh
bGlkX2xpc3RbaV0gPSAwOwogICB9CiB9CkBAIC01NzksNyArNjM2LDcgQEAgc3RhdGljIHZvaWQg
UG9zdFVwZGF0ZVJlZkZyYW1lSW5mbyhGcmFtZVR5cGUgZnJhbWVfdHlwZSwgaW50IGZyYW1lX2Nv
ZGluZ19pbmRleCwKICAgfQogCiAgIGlmIChwYXN0X2luZGV4ID09IGxhc3RfaW5kZXgpIHsKLSAg
ICByZWZfZnJhbWVfdmFsaWRfbGlzdFtrUmVmRnJhbWVUeXBlTGFzdF0gPSAwOworICAgIHJlZl9m
cmFtZV92YWxpZF9saXN0W2tSZWZGcmFtZVR5cGVQYXN0XSA9IDA7CiAgIH0KIAogICBpZiAoZnV0
dXJlX2luZGV4ID09IGxhc3RfaW5kZXgpIHsKQEAgLTYwMiw2ICs2NTksOSBAQCBzdGF0aWMgdm9p
ZCBTZXRHcm91cE9mUGljdHVyZShpbnQgZmlyc3RfaXNfa2V5X2ZyYW1lLCBpbnQgdXNlX2FsdF9y
ZWYsCiAgIGdyb3VwX29mX3BpY3R1cmUtPnNob3dfZnJhbWVfY291bnQgPSBjb2RpbmdfZnJhbWVf
Y291bnQgLSB1c2VfYWx0X3JlZjsKICAgZ3JvdXBfb2ZfcGljdHVyZS0+c3RhcnRfc2hvd19pbmRl
eCA9IGZpcnN0X3Nob3dfaWR4OwogICBncm91cF9vZl9waWN0dXJlLT5zdGFydF9jb2RpbmdfaW5k
ZXggPSBzdGFydF9jb2RpbmdfaW5kZXg7CisgIGdyb3VwX29mX3BpY3R1cmUtPmZpcnN0X2lzX2tl
eV9mcmFtZSA9IGZpcnN0X2lzX2tleV9mcmFtZTsKKyAgZ3JvdXBfb2ZfcGljdHVyZS0+dXNlX2Fs
dF9yZWYgPSB1c2VfYWx0X3JlZjsKKyAgZ3JvdXBfb2ZfcGljdHVyZS0+bGFzdF9nb3BfdXNlX2Fs
dF9yZWYgPSBsYXN0X2dvcF91c2VfYWx0X3JlZjsKIAogICAvLyBXZSBuZWVkIHRvIG1ha2UgYSBj
b3B5IG9mIHN0YXJ0IHJlZmVyZW5jZSBmcmFtZSBpbmZvIGJlY2F1c2Ugd2UKICAgLy8gdXNlIGl0
IHRvIHNpbXVsYXRlIHRoZSByZWYgZnJhbWUgdXBkYXRlLgpAQCAtNjgyLDYgKzc0Miw2MCBAQCBz
dGF0aWMgdm9pZCBVcGRhdGVHcm91cE9mUGljdHVyZShjb25zdCBWUDlfQ09NUCAqY3BpLCBpbnQg
c3RhcnRfY29kaW5nX2luZGV4LAogICAgICAgICAgICAgICAgICAgICBzdGFydF9yZWZfZnJhbWVf
aW5mbywgZ3JvdXBfb2ZfcGljdHVyZSk7CiB9CiAKKyNkZWZpbmUgU0VUX1NUUlVDVF9WQUxVRShj
b25maWcsIHN0cnVjdHVyZSwgcmV0LCBmaWVsZCkgXAorICBpZiAoc3RyY21wKGNvbmZpZy5uYW1l
LCAjZmllbGQpID09IDApIHsgICAgICAgICAgICAgICBcCisgICAgc3RydWN0dXJlLT5maWVsZCA9
IGF0b2koY29uZmlnLnZhbHVlKTsgICAgICAgICAgICAgIFwKKyAgICByZXQgPSAxOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICB9CisKK3N0YXRpYyB2b2lk
IFVwZGF0ZUVuY29kZUNvbmZpZyhjb25zdCBFbmNvZGVDb25maWcgJmNvbmZpZywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBWUDlFbmNvZGVyQ29uZmlnICpveGNmKSB7CisgIGludCBy
ZXQgPSAwOworICBTRVRfU1RSVUNUX1ZBTFVFKGNvbmZpZywgb3hjZiwgcmV0LCBrZXlfZnJlcSk7
CisgIFNFVF9TVFJVQ1RfVkFMVUUoY29uZmlnLCBveGNmLCByZXQsIHR3b19wYXNzX3Zicm1pbl9z
ZWN0aW9uKTsKKyAgU0VUX1NUUlVDVF9WQUxVRShjb25maWcsIG94Y2YsIHJldCwgdHdvX3Bhc3Nf
dmJybWF4X3NlY3Rpb24pOworICBTRVRfU1RSVUNUX1ZBTFVFKGNvbmZpZywgb3hjZiwgcmV0LCB1
bmRlcl9zaG9vdF9wY3QpOworICBTRVRfU1RSVUNUX1ZBTFVFKGNvbmZpZywgb3hjZiwgcmV0LCBv
dmVyX3Nob290X3BjdCk7CisgIFNFVF9TVFJVQ1RfVkFMVUUoY29uZmlnLCBveGNmLCByZXQsIG1h
eF90aHJlYWRzKTsKKyAgU0VUX1NUUlVDVF9WQUxVRShjb25maWcsIG94Y2YsIHJldCwgZnJhbWVf
cGFyYWxsZWxfZGVjb2RpbmdfbW9kZSk7CisgIFNFVF9TVFJVQ1RfVkFMVUUoY29uZmlnLCBveGNm
LCByZXQsIHRpbGVfY29sdW1ucyk7CisgIFNFVF9TVFJVQ1RfVkFMVUUoY29uZmlnLCBveGNmLCBy
ZXQsIGFybnJfbWF4X2ZyYW1lcyk7CisgIFNFVF9TVFJVQ1RfVkFMVUUoY29uZmlnLCBveGNmLCBy
ZXQsIGFybnJfc3RyZW5ndGgpOworICBTRVRfU1RSVUNUX1ZBTFVFKGNvbmZpZywgb3hjZiwgcmV0
LCBsYWdfaW5fZnJhbWVzKTsKKyAgU0VUX1NUUlVDVF9WQUxVRShjb25maWcsIG94Y2YsIHJldCwg
ZW5jb2RlX2JyZWFrb3V0KTsKKyAgU0VUX1NUUlVDVF9WQUxVRShjb25maWcsIG94Y2YsIHJldCwg
ZW5hYmxlX3RwbF9tb2RlbCk7CisgIFNFVF9TVFJVQ1RfVkFMVUUoY29uZmlnLCBveGNmLCByZXQs
IGVuYWJsZV9hdXRvX2FyZik7CisgIGlmIChzdHJjbXAoY29uZmlnLm5hbWUsICJyY19tb2RlIikg
PT0gMCkgeworICAgIGludCByY19tb2RlID0gYXRvaShjb25maWcudmFsdWUpOworICAgIGlmIChy
Y19tb2RlID49IFZQWF9WQlIgJiYgcmNfbW9kZSA8PSBWUFhfUSkgeworICAgICAgb3hjZi0+cmNf
bW9kZSA9IChlbnVtIHZweF9yY19tb2RlKXJjX21vZGU7CisgICAgICByZXQgPSAxOworICAgIH0g
ZWxzZSB7CisgICAgICBmcHJpbnRmKHN0ZGVyciwgIkludmFsaWQgcmNfbW9kZSB2YWx1ZTogJWRc
biIsIHJjX21vZGUpOworICAgIH0KKyAgfQorICBTRVRfU1RSVUNUX1ZBTFVFKGNvbmZpZywgb3hj
ZiwgcmV0LCBjcV9sZXZlbCk7CisgIGlmIChyZXQgPT0gMCkgeworICAgIGZwcmludGYoc3RkZXJy
LCAiSWdub3JlZCB1bnN1cHBvcnRlZCBlbmNvZGVfY29uZmlnICVzXG4iLCBjb25maWcubmFtZSk7
CisgIH0KK30KKworc3RhdGljIFZQOUVuY29kZXJDb25maWcgR2V0RW5jb2RlQ29uZmlnKAorICAg
IGludCBmcmFtZV93aWR0aCwgaW50IGZyYW1lX2hlaWdodCwgdnB4X3JhdGlvbmFsX3QgZnJhbWVf
cmF0ZSwKKyAgICBpbnQgdGFyZ2V0X2JpdHJhdGUsIGludCBlbmNvZGVfc3BlZWQsIHZweF9lbmNf
cGFzcyBlbmNfcGFzcywKKyAgICBjb25zdCBzdGQ6OnZlY3RvcjxFbmNvZGVDb25maWc+ICZlbmNv
ZGVfY29uZmlnX2xpc3QpIHsKKyAgVlA5RW5jb2RlckNvbmZpZyBveGNmID0KKyAgICAgIHZwOV9n
ZXRfZW5jb2Rlcl9jb25maWcoZnJhbWVfd2lkdGgsIGZyYW1lX2hlaWdodCwgZnJhbWVfcmF0ZSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2JpdHJhdGUsIGVuY29kZV9zcGVl
ZCwgZW5jX3Bhc3MpOworICBmb3IgKGNvbnN0IGF1dG8gJmNvbmZpZyA6IGVuY29kZV9jb25maWdf
bGlzdCkgeworICAgIFVwZGF0ZUVuY29kZUNvbmZpZyhjb25maWcsICZveGNmKTsKKyAgfQorICBp
ZiAoZW5jX3Bhc3MgPT0gVlBYX1JDX0ZJUlNUX1BBU1MpIHsKKyAgICBveGNmLmxhZ19pbl9mcmFt
ZXMgPSAwOworICB9CisgIHJldHVybiBveGNmOworfQorCiBTaW1wbGVFbmNvZGU6OlNpbXBsZUVu
Y29kZShpbnQgZnJhbWVfd2lkdGgsIGludCBmcmFtZV9oZWlnaHQsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbnQgZnJhbWVfcmF0ZV9udW0sIGludCBmcmFtZV9yYXRlX2RlbiwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGludCB0YXJnZXRfYml0cmF0ZSwgaW50IG51bV9mcmFtZXMs
CkBAIC02OTMsNyArODA3LDE0IEBAIFNpbXBsZUVuY29kZTo6U2ltcGxlRW5jb2RlKGludCBmcmFt
ZV93aWR0aCwgaW50IGZyYW1lX2hlaWdodCwKICAgZnJhbWVfcmF0ZV9kZW5fID0gZnJhbWVfcmF0
ZV9kZW47CiAgIHRhcmdldF9iaXRyYXRlXyA9IHRhcmdldF9iaXRyYXRlOwogICBudW1fZnJhbWVz
XyA9IG51bV9mcmFtZXM7CisgIGVuY29kZV9zcGVlZF8gPSAwOworCiAgIGZyYW1lX2NvZGluZ19p
bmRleF8gPSAwOworICBzaG93X2ZyYW1lX2NvdW50XyA9IDA7CisKKyAga2V5X2ZyYW1lX2dyb3Vw
X2luZGV4XyA9IDA7CisgIGtleV9mcmFtZV9ncm91cF9zaXplXyA9IDA7CisKICAgLy8gVE9ETyhh
bmdpcmJpZCk6IFNob3VsZCB3ZSBrZWVwIGEgZmlsZSBwb2ludGVyIGhlcmUgb3Iga2VlcCB0aGUg
ZmlsZV9wYXRoPwogICBhc3NlcnQoaW5maWxlX3BhdGggIT0gbnVsbHB0cik7CiAgIGluX2ZpbGVf
ID0gZm9wZW4oaW5maWxlX3BhdGgsICJyIik7CkBAIC03MDgsMTYgKzgyOSw1NSBAQCBTaW1wbGVF
bmNvZGU6OlNpbXBsZUVuY29kZShpbnQgZnJhbWVfd2lkdGgsIGludCBmcmFtZV9oZWlnaHQsCiAg
IEluaXRSZWZGcmFtZUluZm8oJnJlZl9mcmFtZV9pbmZvXyk7CiB9CiAKK3ZvaWQgU2ltcGxlRW5j
b2RlOjpTZXRFbmNvZGVTcGVlZChpbnQgZW5jb2RlX3NwZWVkKSB7CisgIGVuY29kZV9zcGVlZF8g
PSBlbmNvZGVfc3BlZWQ7Cit9CisKK1N0YXR1c0NvZGUgU2ltcGxlRW5jb2RlOjpTZXRFbmNvZGVD
b25maWcoY29uc3QgY2hhciAqbmFtZSwgY29uc3QgY2hhciAqdmFsdWUpIHsKKyAgaWYgKG5hbWUg
PT0gbnVsbHB0ciB8fCB2YWx1ZSA9PSBudWxscHRyKSB7CisgICAgZnByaW50ZihzdGRlcnIsICJT
ZXRFbmNvZGVDb25maWc6IG51bGwgcG9pbnRlciwgbmFtZSAlcCB2YWx1ZSAlcFxuIiwgbmFtZSwK
KyAgICAgICAgICAgIHZhbHVlKTsKKyAgICByZXR1cm4gU3RhdHVzRXJyb3I7CisgIH0KKyAgRW5j
b2RlQ29uZmlnIGNvbmZpZzsKKyAgc25wcmludGYoY29uZmlnLm5hbWUsIEVOQ09ERV9DT05GSUdf
QlVGX1NJWkUsICIlcyIsIG5hbWUpOworICBzbnByaW50Zihjb25maWcudmFsdWUsIEVOQ09ERV9D
T05GSUdfQlVGX1NJWkUsICIlcyIsIHZhbHVlKTsKKyAgaW1wbF9wdHJfLT5lbmNvZGVfY29uZmln
X2xpc3QucHVzaF9iYWNrKGNvbmZpZyk7CisgIHJldHVybiBTdGF0dXNPazsKK30KKworU3RhdHVz
Q29kZSBTaW1wbGVFbmNvZGU6OkR1bXBFbmNvZGVDb25maWdzKGludCBwYXNzLCBGSUxFICpmcCkg
eworICBpZiAoZnAgPT0gbnVsbHB0cikgeworICAgIGZwcmludGYoc3RkZXJyLCAiRHVtcEVuY29k
ZUNvbmZpZ3M6IG51bGwgcG9pbnRlciwgZnAgJXBcbiIsIGZwKTsKKyAgICByZXR1cm4gU3RhdHVz
RXJyb3I7CisgIH0KKyAgdnB4X2VuY19wYXNzIGVuY19wYXNzOworICBpZiAocGFzcyA9PSAxKSB7
CisgICAgZW5jX3Bhc3MgPSBWUFhfUkNfRklSU1RfUEFTUzsKKyAgfSBlbHNlIHsKKyAgICBlbmNf
cGFzcyA9IFZQWF9SQ19MQVNUX1BBU1M7CisgIH0KKyAgY29uc3QgdnB4X3JhdGlvbmFsX3QgZnJh
bWVfcmF0ZSA9CisgICAgICBtYWtlX3ZweF9yYXRpb25hbChmcmFtZV9yYXRlX251bV8sIGZyYW1l
X3JhdGVfZGVuXyk7CisgIGNvbnN0IFZQOUVuY29kZXJDb25maWcgb3hjZiA9CisgICAgICBHZXRF
bmNvZGVDb25maWcoZnJhbWVfd2lkdGhfLCBmcmFtZV9oZWlnaHRfLCBmcmFtZV9yYXRlLCB0YXJn
ZXRfYml0cmF0ZV8sCisgICAgICAgICAgICAgICAgICAgICAgZW5jb2RlX3NwZWVkXywgZW5jX3Bh
c3MsIGltcGxfcHRyXy0+ZW5jb2RlX2NvbmZpZ19saXN0KTsKKyAgdnA5X2R1bXBfZW5jb2Rlcl9j
b25maWcoJm94Y2YsIGZwKTsKKyAgcmV0dXJuIFN0YXR1c09rOworfQorCiB2b2lkIFNpbXBsZUVu
Y29kZTo6Q29tcHV0ZUZpcnN0UGFzc1N0YXRzKCkgewogICB2cHhfcmF0aW9uYWxfdCBmcmFtZV9y
YXRlID0KICAgICAgIG1ha2VfdnB4X3JhdGlvbmFsKGZyYW1lX3JhdGVfbnVtXywgZnJhbWVfcmF0
ZV9kZW5fKTsKLSAgY29uc3QgVlA5RW5jb2RlckNvbmZpZyBveGNmID0KLSAgICAgIHZwOV9nZXRf
ZW5jb2Rlcl9jb25maWcoZnJhbWVfd2lkdGhfLCBmcmFtZV9oZWlnaHRfLCBmcmFtZV9yYXRlLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRfYml0cmF0ZV8sIFZQWF9SQ19GSVJT
VF9QQVNTKTsKKyAgY29uc3QgVlA5RW5jb2RlckNvbmZpZyBveGNmID0gR2V0RW5jb2RlQ29uZmln
KAorICAgICAgZnJhbWVfd2lkdGhfLCBmcmFtZV9oZWlnaHRfLCBmcmFtZV9yYXRlLCB0YXJnZXRf
Yml0cmF0ZV8sIGVuY29kZV9zcGVlZF8sCisgICAgICBWUFhfUkNfRklSU1RfUEFTUywgaW1wbF9w
dHJfLT5lbmNvZGVfY29uZmlnX2xpc3QpOwogICBWUDlfQ09NUCAqY3BpID0gaW5pdF9lbmNvZGVy
KCZveGNmLCBpbXBsX3B0cl8tPmltZ19mbXQpOwogICBzdHJ1Y3QgbG9va2FoZWFkX2N0eCAqbG9v
a2FoZWFkID0gY3BpLT5sb29rYWhlYWQ7CiAgIGludCBpOwogICBpbnQgdXNlX2hpZ2hiaXRkZXB0
aCA9IDA7CisgIGNvbnN0IGludCBudW1fcm93c18xNngxNiA9IGdldF9udW1fdW5pdF8xNngxNihm
cmFtZV9oZWlnaHRfKTsKKyAgY29uc3QgaW50IG51bV9jb2xzXzE2eDE2ID0gZ2V0X251bV91bml0
XzE2eDE2KGZyYW1lX3dpZHRoXyk7CiAjaWYgQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKICAgdXNl
X2hpZ2hiaXRkZXB0aCA9IGNwaS0+Y29tbW9uLnVzZV9oaWdoYml0ZGVwdGg7CiAjZW5kaWYKQEAg
LTc1MCw2ICs5MTAsMTIgQEAgdm9pZCBTaW1wbGVFbmNvZGU6OkNvbXB1dGVGaXJzdFBhc3NTdGF0
cygpIHsKICAgICAgICAgLy8gdnA5X2dldF9jb21wcmVzc2VkX2RhdGEgb25seSBnZW5lcmF0ZXMg
Zmlyc3QgcGFzcyBzdGF0cyBub3QKICAgICAgICAgLy8gY29tcHJlc3NlcyBkYXRhCiAgICAgICAg
IGFzc2VydChzaXplID09IDApOworICAgICAgICAvLyBHZXQgdnA5IGZpcnN0IHBhc3MgbW90aW9u
IHZlY3RvciBpbmZvLgorICAgICAgICBzdGQ6OnZlY3RvcjxNb3Rpb25WZWN0b3JJbmZvPiBtdl9p
bmZvKG51bV9yb3dzXzE2eDE2ICogbnVtX2NvbHNfMTZ4MTYpOworICAgICAgICB1cGRhdGVfbW90
aW9uX3ZlY3Rvcl9pbmZvKGNwaS0+ZnBfbW90aW9uX3ZlY3Rvcl9pbmZvLCBudW1fcm93c18xNngx
NiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudW1fY29sc18xNngxNiwgbXZf
aW5mby5kYXRhKCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga01vdGlvblZl
Y3RvckZ1bGxQaXhlbFByZWNpc2lvbik7CisgICAgICAgIGZwX21vdGlvbl92ZWN0b3JfaW5mb18u
cHVzaF9iYWNrKG12X2luZm8pOwogICAgICAgfQogICAgICAgaW1wbF9wdHJfLT5maXJzdF9wYXNz
X3N0YXRzLnB1c2hfYmFjayh2cDlfZ2V0X2ZyYW1lX3N0YXRzKCZjcGktPnR3b3Bhc3MpKTsKICAg
ICB9CkBAIC03NjAsNiArOTI2LDkgQEAgdm9pZCBTaW1wbGVFbmNvZGU6OkNvbXB1dGVGaXJzdFBh
c3NTdGF0cygpIHsKICAgZnJlZV9lbmNvZGVyKGNwaSk7CiAgIHJld2luZChpbl9maWxlXyk7CiAg
IHZweF9pbWdfZnJlZSgmaW1nKTsKKworICAvLyBHZW5lcmF0ZSBrZXlfZnJhbWVfbWFwIGJhc2Vk
IG9uIGltcGxfcHRyXy0+Zmlyc3RfcGFzc19zdGF0cy4KKyAga2V5X2ZyYW1lX21hcF8gPSBDb21w
dXRlS2V5RnJhbWVNYXAoKTsKIH0KIAogc3RkOjp2ZWN0b3I8c3RkOjp2ZWN0b3I8ZG91YmxlPj4g
U2ltcGxlRW5jb2RlOjpPYnNlcnZlRmlyc3RQYXNzU3RhdHMoKSB7CkBAIC03ODQsMjAgKzk1Myw5
MCBAQCBzdGQ6OnZlY3RvcjxzdGQ6OnZlY3Rvcjxkb3VibGU+PiBTaW1wbGVFbmNvZGU6Ok9ic2Vy
dmVGaXJzdFBhc3NTdGF0cygpIHsKICAgcmV0dXJuIG91dHB1dF9zdGF0czsKIH0KIAotdm9pZCBT
aW1wbGVFbmNvZGU6OlNldEV4dGVybmFsR3JvdXBPZlBpY3R1cmUoCi0gICAgc3RkOjp2ZWN0b3I8
aW50PiBleHRlcm5hbF9hcmZfaW5kZXhlcykgewotICBleHRlcm5hbF9hcmZfaW5kZXhlc18gPSBl
eHRlcm5hbF9hcmZfaW5kZXhlczsKK3N0ZDo6dmVjdG9yPHN0ZDo6dmVjdG9yPE1vdGlvblZlY3Rv
ckluZm8+PgorU2ltcGxlRW5jb2RlOjpPYnNlcnZlRmlyc3RQYXNzTW90aW9uVmVjdG9ycygpIHsK
KyAgcmV0dXJuIGZwX21vdGlvbl92ZWN0b3JfaW5mb187Cit9CisKK3ZvaWQgU2ltcGxlRW5jb2Rl
OjpTZXRFeHRlcm5hbEdyb3VwT2ZQaWN0dXJlc01hcChpbnQgKmdvcF9tYXAsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGdvcF9tYXBfc2l6ZSkg
eworICBmb3IgKGludCBpID0gMDsgaSA8IGdvcF9tYXBfc2l6ZTsgKytpKSB7CisgICAgZ29wX21h
cF8ucHVzaF9iYWNrKGdvcF9tYXBbaV0pOworICB9CisgIC8vIFRoZSBmb2xsb3dpbmcgd2lsbCBj
aGVjayBhbmQgbW9kaWZ5IGdvcF9tYXBfIHRvIG1ha2Ugc3VyZSB0aGUKKyAgLy8gZ29wX21hcF8g
c2F0aXNmaWVzIHRoZSBjb25zdHJhaW50cy4KKyAgLy8gMSkgRWFjaCBrZXkgZnJhbWUgcG9zaXRp
b24gc2hvdWxkIGJlIGF0IHRoZSBzdGFydCBvZiBhIGdvcC4KKyAgLy8gMikgVGhlIGxhc3QgZ29w
IHNob3VsZCBub3QgdXNlIGFuIGFsdCByZWYuCisgIGFzc2VydChnb3BfbWFwXy5zaXplKCkgPT0g
a2V5X2ZyYW1lX21hcF8uc2l6ZSgpKTsKKyAgaW50IGxhc3RfZ29wX3N0YXJ0ID0gMDsKKyAgZm9y
IChpbnQgaSA9IDA7IHN0YXRpY19jYXN0PHNpemVfdD4oaSkgPCBnb3BfbWFwXy5zaXplKCk7ICsr
aSkgeworICAgIGlmIChrZXlfZnJhbWVfbWFwX1tpXSA9PSAxICYmIGdvcF9tYXBfW2ldID09IDAp
IHsKKyAgICAgIGZwcmludGYoc3RkZXJyLCAiQWRkIGFuIGV4dHJhIGdvcCBzdGFydCBhdCBzaG93
X2lkeCAlZFxuIiwgaSk7CisgICAgICAvLyBJbnNlcnQgYSBnb3Agc3RhcnQgYXQga2V5IGZyYW1l
IGxvY2F0aW9uLgorICAgICAgZ29wX21hcF9baV0gfD0ga0dvcE1hcEZsYWdTdGFydDsKKyAgICAg
IGdvcF9tYXBfW2ldIHw9IGtHb3BNYXBGbGFnVXNlQWx0UmVmOworICAgIH0KKyAgICBpZiAoZ29w
X21hcF9baV0gJiBrR29wTWFwRmxhZ1N0YXJ0KSB7CisgICAgICBsYXN0X2dvcF9zdGFydCA9IGk7
CisgICAgfQorICB9CisgIGlmIChnb3BfbWFwX1tsYXN0X2dvcF9zdGFydF0gJiBrR29wTWFwRmxh
Z1VzZUFsdFJlZikgeworICAgIGZwcmludGYoc3RkZXJyLAorICAgICAgICAgICAgIkxhc3QgZ3Jv
dXAgb2YgcGljdHVyZXMgc3RhcnRpbmcgYXQgc2hvd19pZHggJWQgc2hvdWxkbid0IHVzZSBhbHQg
IgorICAgICAgICAgICAgInJlZlxuIiwKKyAgICAgICAgICAgIGxhc3RfZ29wX3N0YXJ0KTsKKyAg
ICBnb3BfbWFwX1tsYXN0X2dvcF9zdGFydF0gJj0gfmtHb3BNYXBGbGFnVXNlQWx0UmVmOworICB9
Cit9CisKK3N0ZDo6dmVjdG9yPGludD4gU2ltcGxlRW5jb2RlOjpPYnNlcnZlRXh0ZXJuYWxHcm91
cE9mUGljdHVyZXNNYXAoKSB7CisgIHJldHVybiBnb3BfbWFwXzsKK30KKwordGVtcGxhdGUgPHR5
cGVuYW1lIFQ+CitUICpHZXRWZWN0b3JEYXRhKGNvbnN0IHN0ZDo6dmVjdG9yPFQ+ICZ2KSB7Cisg
IGlmICh2LmVtcHR5KCkpIHsKKyAgICByZXR1cm4gbnVsbHB0cjsKKyAgfQorICByZXR1cm4gY29u
c3RfY2FzdDxUICo+KHYuZGF0YSgpKTsKK30KKworc3RhdGljIEdPUF9DT01NQU5EIEdldEdvcENv
bW1hbmQoY29uc3Qgc3RkOjp2ZWN0b3I8aW50PiAmZ29wX21hcCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGludCBzdGFydF9zaG93X2luZGV4KSB7CisgIEdPUF9DT01NQU5EIGdv
cF9jb21tYW5kOworICBpZiAoZ29wX21hcC5zaXplKCkgPiAwKSB7CisgICAgYXNzZXJ0KHN0YXRp
Y19jYXN0PHNpemVfdD4oc3RhcnRfc2hvd19pbmRleCkgPCBnb3BfbWFwLnNpemUoKSk7CisgICAg
YXNzZXJ0KChnb3BfbWFwW3N0YXJ0X3Nob3dfaW5kZXhdICYga0dvcE1hcEZsYWdTdGFydCkgIT0g
MCk7CisgICAgaW50IGVuZF9zaG93X2luZGV4ID0gc3RhcnRfc2hvd19pbmRleCArIDE7CisgICAg
Ly8gZ29wX21hcFtlbmRfc2hvd19pbmRleF0gJiBrR29wTWFwRmxhZ1N0YXJ0ID09IDAgbWVhbnMg
dGhpcyBpcworICAgIC8vIHRoZSBzdGFydCBvZiBhIGdvcC4KKyAgICB3aGlsZSAoc3RhdGljX2Nh
c3Q8c2l6ZV90PihlbmRfc2hvd19pbmRleCkgPCBnb3BfbWFwLnNpemUoKSAmJgorICAgICAgICAg
ICAoZ29wX21hcFtlbmRfc2hvd19pbmRleF0gJiBrR29wTWFwRmxhZ1N0YXJ0KSA9PSAwKSB7Cisg
ICAgICArK2VuZF9zaG93X2luZGV4OworICAgIH0KKyAgICBjb25zdCBpbnQgc2hvd19mcmFtZV9j
b3VudCA9IGVuZF9zaG93X2luZGV4IC0gc3RhcnRfc2hvd19pbmRleDsKKyAgICBpbnQgdXNlX2Fs
dF9yZWYgPSAoZ29wX21hcFtzdGFydF9zaG93X2luZGV4XSAmIGtHb3BNYXBGbGFnVXNlQWx0UmVm
KSAhPSAwOworICAgIGlmIChzdGF0aWNfY2FzdDxzaXplX3Q+KGVuZF9zaG93X2luZGV4KSA9PSBn
b3BfbWFwLnNpemUoKSkgeworICAgICAgLy8gVGhpcyBpcyB0aGUgbGFzdCBnb3AgZ3JvdXAsIHRo
ZXJlIG11c3QgYmUgbm8gYWx0cmVmLgorICAgICAgdXNlX2FsdF9yZWYgPSAwOworICAgIH0KKyAg
ICBnb3BfY29tbWFuZF9vbigmZ29wX2NvbW1hbmQsIHNob3dfZnJhbWVfY291bnQsIHVzZV9hbHRf
cmVmKTsKKyAgfSBlbHNlIHsKKyAgICBnb3BfY29tbWFuZF9vZmYoJmdvcF9jb21tYW5kKTsKKyAg
fQorICByZXR1cm4gZ29wX2NvbW1hbmQ7CiB9CiAKIHZvaWQgU2ltcGxlRW5jb2RlOjpTdGFydEVu
Y29kZSgpIHsKICAgYXNzZXJ0KGltcGxfcHRyXy0+Zmlyc3RfcGFzc19zdGF0cy5zaXplKCkgPiAw
KTsKICAgdnB4X3JhdGlvbmFsX3QgZnJhbWVfcmF0ZSA9CiAgICAgICBtYWtlX3ZweF9yYXRpb25h
bChmcmFtZV9yYXRlX251bV8sIGZyYW1lX3JhdGVfZGVuXyk7Ci0gIFZQOUVuY29kZXJDb25maWcg
b3hjZiA9Ci0gICAgICB2cDlfZ2V0X2VuY29kZXJfY29uZmlnKGZyYW1lX3dpZHRoXywgZnJhbWVf
aGVpZ2h0XywgZnJhbWVfcmF0ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0
X2JpdHJhdGVfLCBWUFhfUkNfTEFTVF9QQVNTKTsKKyAgVlA5RW5jb2RlckNvbmZpZyBveGNmID0g
R2V0RW5jb2RlQ29uZmlnKAorICAgICAgZnJhbWVfd2lkdGhfLCBmcmFtZV9oZWlnaHRfLCBmcmFt
ZV9yYXRlLCB0YXJnZXRfYml0cmF0ZV8sIGVuY29kZV9zcGVlZF8sCisgICAgICBWUFhfUkNfTEFT
VF9QQVNTLCBpbXBsX3B0cl8tPmVuY29kZV9jb25maWdfbGlzdCk7CisKICAgdnB4X2ZpeGVkX2J1
Zl90IHN0YXRzOwotICBzdGF0cy5idWYgPSBpbXBsX3B0cl8tPmZpcnN0X3Bhc3Nfc3RhdHMuZGF0
YSgpOworICBzdGF0cy5idWYgPSBHZXRWZWN0b3JEYXRhKGltcGxfcHRyXy0+Zmlyc3RfcGFzc19z
dGF0cyk7CiAgIHN0YXRzLnN6ID0gc2l6ZW9mKGltcGxfcHRyXy0+Zmlyc3RfcGFzc19zdGF0c1sw
XSkgKgogICAgICAgICAgICAgIGltcGxfcHRyXy0+Zmlyc3RfcGFzc19zdGF0cy5zaXplKCk7CiAK
QEAgLTgwNiwxNiArMTA0NSwyOCBAQCB2b2lkIFNpbXBsZUVuY29kZTo6U3RhcnRFbmNvZGUoKSB7
CiAgIGltcGxfcHRyXy0+Y3BpID0gaW5pdF9lbmNvZGVyKCZveGNmLCBpbXBsX3B0cl8tPmltZ19m
bXQpOwogICB2cHhfaW1nX2FsbG9jKCZpbXBsX3B0cl8tPnRtcF9pbWcsIGltcGxfcHRyXy0+aW1n
X2ZtdCwgZnJhbWVfd2lkdGhfLAogICAgICAgICAgICAgICAgIGZyYW1lX2hlaWdodF8sIDEpOwor
CiAgIGZyYW1lX2NvZGluZ19pbmRleF8gPSAwOwotICBlbmNvZGVfY29tbWFuZF9zZXRfZXh0ZXJu
YWxfYXJmX2luZGV4ZXMoJmltcGxfcHRyXy0+Y3BpLT5lbmNvZGVfY29tbWFuZCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dGVybmFsX2FyZl9pbmRleGVzXy5k
YXRhKCkpOworICBzaG93X2ZyYW1lX2NvdW50XyA9IDA7CisKKyAgVXBkYXRlS2V5RnJhbWVHcm91
cChzaG93X2ZyYW1lX2NvdW50Xyk7CisKKyAgY29uc3QgR09QX0NPTU1BTkQgZ29wX2NvbW1hbmQg
PSBHZXRHb3BDb21tYW5kKGdvcF9tYXBfLCBzaG93X2ZyYW1lX2NvdW50Xyk7CisgIGVuY29kZV9j
b21tYW5kX3NldF9nb3BfY29tbWFuZCgmaW1wbF9wdHJfLT5jcGktPmVuY29kZV9jb21tYW5kLCBn
b3BfY29tbWFuZCk7CiAgIFVwZGF0ZUdyb3VwT2ZQaWN0dXJlKGltcGxfcHRyXy0+Y3BpLCBmcmFt
ZV9jb2RpbmdfaW5kZXhfLCByZWZfZnJhbWVfaW5mb18sCiAgICAgICAgICAgICAgICAgICAgICAg
ICZncm91cF9vZl9waWN0dXJlXyk7CiAgIHJld2luZChpbl9maWxlXyk7CiAKICAgaWYgKG91dF9m
aWxlXyAhPSBudWxscHRyKSB7CiAgICAgY29uc3QgY2hhciAqZm91cmNjID0gIlZQOTAiOwotICAg
IHZweF9yYXRpb25hbF90IHRpbWVfYmFzZSA9IGludmVydF92cHhfcmF0aW9uYWwoZnJhbWVfcmF0
ZSk7CisgICAgLy8gSW4gU2ltcGxlRW5jb2RlLCB3ZSB1c2UgdGltZV9iYXNlID0gMSAvIFRJQ0tT
X1BFUl9TRUMuCisgICAgLy8gQmFzZWQgb24gdGhhdCwgdGhlIGl2Zl90aW1lc3RhbXAgZm9yIGVh
Y2ggaW1hZ2UgaXMgc2V0IHRvCisgICAgLy8gc2hvd19pZHggKiBUSUNLU19QRVJfU0VDIC8gZnJh
bWVfcmF0ZQorICAgIC8vIHN1Y2ggdGhhdCBlYWNoIGltYWdlJ3MgYWN0dWFsIHRpbWVzdGFtcCBp
biBzZWNvbmRzIGNhbiBiZSBjb21wdXRlZCBhcworICAgIC8vIGl2Zl90aW1lc3RhbXAgKiB0aW1l
X2Jhc2UgPT0gc2hvd19pZHggLyBmcmFtZV9yYXRlCisgICAgLy8gVE9ETyhhbmdpZWJpcmQpOiAx
KSBBZGQgdW5pdCB0ZXN0IGZvciBpdmYgdGltZXN0YW1wLgorICAgIC8vIDIpIFNpbXBsaWZ5IHRo
ZSBmcmFtZV9yYXRlIHNldHRpbmcgcHJvY2Vzcy4KKyAgICB2cHhfcmF0aW9uYWxfdCB0aW1lX2Jh
c2UgPSBtYWtlX3ZweF9yYXRpb25hbCgxLCBUSUNLU19QRVJfU0VDKTsKICAgICBpdmZfd3JpdGVf
ZmlsZV9oZWFkZXJfd2l0aF92aWRlb19pbmZvKG91dF9maWxlXywgKihjb25zdCB1aW50MzJfdCAq
KWZvdXJjYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bV9m
cmFtZXNfLCBmcmFtZV93aWR0aF8sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBmcmFtZV9oZWlnaHRfLCB0aW1lX2Jhc2UpOwpAQCAtODI5LDEzICsxMDgwLDI2IEBA
IHZvaWQgU2ltcGxlRW5jb2RlOjpFbmRFbmNvZGUoKSB7CiAgIHJld2luZChpbl9maWxlXyk7CiB9
CiAKLWludCBTaW1wbGVFbmNvZGU6OkdldEtleUZyYW1lR3JvdXBTaXplKGludCBrZXlfZnJhbWVf
aW5kZXgpIGNvbnN0IHsKK3ZvaWQgU2ltcGxlRW5jb2RlOjpVcGRhdGVLZXlGcmFtZUdyb3VwKGlu
dCBrZXlfZnJhbWVfc2hvd19pbmRleCkgewogICBjb25zdCBWUDlfQ09NUCAqY3BpID0gaW1wbF9w
dHJfLT5jcGk7Ci0gIHJldHVybiB2cDlfZ2V0X2ZyYW1lc190b19uZXh0X2tleSgmY3BpLT5veGNm
LCAmY3BpLT5mcmFtZV9pbmZvLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
JmNwaS0+dHdvcGFzcy5maXJzdF9wYXNzX2luZm8sCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBrZXlfZnJhbWVfaW5kZXgsIGNwaS0+cmMubWluX2dmX2ludGVydmFsKTsKKyAg
a2V5X2ZyYW1lX2dyb3VwX2luZGV4XyA9IDA7CisgIGtleV9mcmFtZV9ncm91cF9zaXplXyA9IHZw
OV9nZXRfZnJhbWVzX3RvX25leHRfa2V5KAorICAgICAgJmNwaS0+b3hjZiwgJmNwaS0+ZnJhbWVf
aW5mbywgJmNwaS0+dHdvcGFzcy5maXJzdF9wYXNzX2luZm8sCisgICAgICBrZXlfZnJhbWVfc2hv
d19pbmRleCwgY3BpLT5yYy5taW5fZ2ZfaW50ZXJ2YWwpOworICBhc3NlcnQoa2V5X2ZyYW1lX2dy
b3VwX3NpemVfID4gMCk7CisgIC8vIEluaXQgdGhlIHJlZmVyZW5jZSBmcmFtZSBpbmZvIHdoZW4g
YSBuZXcga2V5IGZyYW1lIGdyb3VwIGFwcGVhcnMuCisgIEluaXRSZWZGcmFtZUluZm8oJnJlZl9m
cmFtZV9pbmZvXyk7Cit9CisKK3ZvaWQgU2ltcGxlRW5jb2RlOjpQb3N0VXBkYXRlS2V5RnJhbWVH
cm91cEluZGV4KEZyYW1lVHlwZSBmcmFtZV90eXBlKSB7CisgIGlmIChmcmFtZV90eXBlICE9IGtG
cmFtZVR5cGVBbHRSZWYpIHsKKyAgICAvLyBrZXlfZnJhbWVfZ3JvdXBfaW5kZXhfIG9ubHkgY291
bnRzIHNob3cgZnJhbWVzCisgICAgKytrZXlfZnJhbWVfZ3JvdXBfaW5kZXhfOworICB9CiB9CiAK
K2ludCBTaW1wbGVFbmNvZGU6OkdldEtleUZyYW1lR3JvdXBTaXplKCkgY29uc3QgeyByZXR1cm4g
a2V5X2ZyYW1lX2dyb3VwX3NpemVfOyB9CisKIEdyb3VwT2ZQaWN0dXJlIFNpbXBsZUVuY29kZTo6
T2JzZXJ2ZUdyb3VwT2ZQaWN0dXJlKCkgY29uc3QgewogICByZXR1cm4gZ3JvdXBfb2ZfcGljdHVy
ZV87CiB9CkBAIC04NTIsOCArMTExNiwyMyBAQCB2b2lkIFNpbXBsZUVuY29kZTo6UG9zdFVwZGF0
ZVN0YXRlKAogICBQb3N0VXBkYXRlUmVmRnJhbWVJbmZvKGVuY29kZV9mcmFtZV9yZXN1bHQuZnJh
bWVfdHlwZSwgZnJhbWVfY29kaW5nX2luZGV4XywKICAgICAgICAgICAgICAgICAgICAgICAgICAm
cmVmX2ZyYW1lX2luZm9fKTsKICAgKytmcmFtZV9jb2RpbmdfaW5kZXhfOworICBpZiAoZW5jb2Rl
X2ZyYW1lX3Jlc3VsdC5mcmFtZV90eXBlICE9IGtGcmFtZVR5cGVBbHRSZWYpIHsKKyAgICAvLyBP
bmx5IGtGcmFtZVR5cGVBbHRSZWYgaXMgbm90IGEgc2hvdyBmcmFtZQorICAgICsrc2hvd19mcmFt
ZV9jb3VudF87CisgIH0KKworICBQb3N0VXBkYXRlS2V5RnJhbWVHcm91cEluZGV4KGVuY29kZV9m
cmFtZV9yZXN1bHQuZnJhbWVfdHlwZSk7CisgIGlmIChrZXlfZnJhbWVfZ3JvdXBfaW5kZXhfID09
IGtleV9mcmFtZV9ncm91cF9zaXplXykgeworICAgIFVwZGF0ZUtleUZyYW1lR3JvdXAoc2hvd19m
cmFtZV9jb3VudF8pOworICB9CisKICAgSW5jcmVhc2VHcm91cE9mUGljdHVyZUluZGV4KCZncm91
cF9vZl9waWN0dXJlXyk7CiAgIGlmIChJc0dyb3VwT2ZQaWN0dXJlRmluaXNoZWQoZ3JvdXBfb2Zf
cGljdHVyZV8pKSB7CisgICAgY29uc3QgR09QX0NPTU1BTkQgZ29wX2NvbW1hbmQgPSBHZXRHb3BD
b21tYW5kKGdvcF9tYXBfLCBzaG93X2ZyYW1lX2NvdW50Xyk7CisgICAgZW5jb2RlX2NvbW1hbmRf
c2V0X2dvcF9jb21tYW5kKCZpbXBsX3B0cl8tPmNwaS0+ZW5jb2RlX2NvbW1hbmQsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdvcF9jb21tYW5kKTsKKyAgICAvLyBUaGlzIGZ1
bmN0aW9uIG5lZWRzIHRvIGJlIGNhbGxlZCBhZnRlciByZWZfZnJhbWVfaW5mb18gaXMgdXBkYXRl
ZAorICAgIC8vIHByb3Blcmx5IGluIFBvc3RVcGRhdGVSZWZGcmFtZUluZm8oKSBhbmQgVXBkYXRl
S2V5RnJhbWVHcm91cCgpLgogICAgIFVwZGF0ZUdyb3VwT2ZQaWN0dXJlKGltcGxfcHRyXy0+Y3Bp
LCBmcmFtZV9jb2RpbmdfaW5kZXhfLCByZWZfZnJhbWVfaW5mb18sCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgJmdyb3VwX29mX3BpY3R1cmVfKTsKICAgfQpAQCAtOTIzLDcgKzEyMDIsMTAgQEAg
dm9pZCBTaW1wbGVFbmNvZGU6OkVuY29kZUZyYW1lKEVuY29kZUZyYW1lUmVzdWx0ICplbmNvZGVf
ZnJhbWVfcmVzdWx0KSB7CiAgICAgICBhYm9ydCgpOwogICAgIH0KIAotICAgIHVwZGF0ZV9lbmNv
ZGVfZnJhbWVfcmVzdWx0KGVuY29kZV9mcmFtZV9yZXN1bHQsICZlbmNvZGVfZnJhbWVfaW5mbyk7
CisgICAgY29uc3QgR3JvdXBPZlBpY3R1cmUgZ3JvdXBfb2ZfcGljdHVyZSA9IHRoaXMtPk9ic2Vy
dmVHcm91cE9mUGljdHVyZSgpOworICAgIGNvbnN0IGludCBzaG93X2ZyYW1lX2NvdW50ID0gZ3Jv
dXBfb2ZfcGljdHVyZS5zaG93X2ZyYW1lX2NvdW50OworICAgIHVwZGF0ZV9lbmNvZGVfZnJhbWVf
cmVzdWx0KGVuY29kZV9mcmFtZV9yZXN1bHQsIHNob3dfZnJhbWVfY291bnQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgJmVuY29kZV9mcmFtZV9pbmZvKTsKICAgICBQb3N0VXBkYXRl
U3RhdGUoKmVuY29kZV9mcmFtZV9yZXN1bHQpOwogICB9IGVsc2UgewogICAgIC8vIFRPRE8oYW5n
aWViaXJkKTogQ2xlYW4gdXAgZW5jb2RlX2ZyYW1lX3Jlc3VsdC4KQEAgLTk0MCwyNSArMTIyMiw3
MyBAQCB2b2lkIFNpbXBsZUVuY29kZTo6RW5jb2RlRnJhbWVXaXRoUXVhbnRpemVJbmRleCgKICAg
ZW5jb2RlX2NvbW1hbmRfcmVzZXRfZXh0ZXJuYWxfcXVhbnRpemVfaW5kZXgoJmltcGxfcHRyXy0+
Y3BpLT5lbmNvZGVfY29tbWFuZCk7CiB9CiAKK3ZvaWQgU2ltcGxlRW5jb2RlOjpFbmNvZGVGcmFt
ZVdpdGhUYXJnZXRGcmFtZUJpdHMoCisgICAgRW5jb2RlRnJhbWVSZXN1bHQgKmVuY29kZV9mcmFt
ZV9yZXN1bHQsIGludCB0YXJnZXRfZnJhbWVfYml0cywKKyAgICBkb3VibGUgcGVyY2VudF9kaWZm
KSB7CisgIGVuY29kZV9jb21tYW5kX3NldF90YXJnZXRfZnJhbWVfYml0cygmaW1wbF9wdHJfLT5j
cGktPmVuY29kZV9jb21tYW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdGFyZ2V0X2ZyYW1lX2JpdHMsIHBlcmNlbnRfZGlmZik7CisgIEVuY29kZUZyYW1lKGVuY29k
ZV9mcmFtZV9yZXN1bHQpOworICBlbmNvZGVfY29tbWFuZF9yZXNldF90YXJnZXRfZnJhbWVfYml0
cygmaW1wbF9wdHJfLT5jcGktPmVuY29kZV9jb21tYW5kKTsKK30KKworc3RhdGljIGludCBHZXRD
b2RpbmdGcmFtZU51bUZyb21Hb3BNYXAoY29uc3Qgc3RkOjp2ZWN0b3I8aW50PiAmZ29wX21hcCkg
eworICBpbnQgc3RhcnRfc2hvd19pbmRleCA9IDA7CisgIGludCBjb2RpbmdfZnJhbWVfY291bnQg
PSAwOworICB3aGlsZSAoc3RhdGljX2Nhc3Q8c2l6ZV90PihzdGFydF9zaG93X2luZGV4KSA8IGdv
cF9tYXAuc2l6ZSgpKSB7CisgICAgY29uc3QgR09QX0NPTU1BTkQgZ29wX2NvbW1hbmQgPSBHZXRH
b3BDb21tYW5kKGdvcF9tYXAsIHN0YXJ0X3Nob3dfaW5kZXgpOworICAgIHN0YXJ0X3Nob3dfaW5k
ZXggKz0gZ29wX2NvbW1hbmQuc2hvd19mcmFtZV9jb3VudDsKKyAgICBjb2RpbmdfZnJhbWVfY291
bnQgKz0gZ29wX2NvbW1hbmRfY29kaW5nX2ZyYW1lX2NvdW50KCZnb3BfY29tbWFuZCk7CisgIH0K
KyAgYXNzZXJ0KHN0YXJ0X3Nob3dfaW5kZXggPT0gZ29wX21hcC5zaXplKCkpOworICByZXR1cm4g
Y29kaW5nX2ZyYW1lX2NvdW50OworfQorCiBpbnQgU2ltcGxlRW5jb2RlOjpHZXRDb2RpbmdGcmFt
ZU51bSgpIGNvbnN0IHsKLSAgYXNzZXJ0KGltcGxfcHRyXy0+Zmlyc3RfcGFzc19zdGF0cy5zaXpl
KCkgLSAxID4gMCk7CisgIGFzc2VydChpbXBsX3B0cl8tPmZpcnN0X3Bhc3Nfc3RhdHMuc2l6ZSgp
ID4gMCk7CisgIGlmIChnb3BfbWFwXy5zaXplKCkgPiAwKSB7CisgICAgcmV0dXJuIEdldENvZGlu
Z0ZyYW1lTnVtRnJvbUdvcE1hcChnb3BfbWFwXyk7CisgIH0KKwogICAvLyBUaGVzZSBhcmUgdGhl
IGRlZmF1bHQgc2V0dGluZ3MgZm9yIG5vdy4KICAgY29uc3QgaW50IG11bHRpX2xheWVyX2FyZiA9
IDA7CiAgIGNvbnN0IGludCBhbGxvd19hbHRfcmVmID0gMTsKICAgdnB4X3JhdGlvbmFsX3QgZnJh
bWVfcmF0ZSA9CiAgICAgICBtYWtlX3ZweF9yYXRpb25hbChmcmFtZV9yYXRlX251bV8sIGZyYW1l
X3JhdGVfZGVuXyk7Ci0gIGNvbnN0IFZQOUVuY29kZXJDb25maWcgb3hjZiA9Ci0gICAgICB2cDlf
Z2V0X2VuY29kZXJfY29uZmlnKGZyYW1lX3dpZHRoXywgZnJhbWVfaGVpZ2h0XywgZnJhbWVfcmF0
ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2JpdHJhdGVfLCBWUFhfUkNf
TEFTVF9QQVNTKTsKKyAgY29uc3QgVlA5RW5jb2RlckNvbmZpZyBveGNmID0gR2V0RW5jb2RlQ29u
ZmlnKAorICAgICAgZnJhbWVfd2lkdGhfLCBmcmFtZV9oZWlnaHRfLCBmcmFtZV9yYXRlLCB0YXJn
ZXRfYml0cmF0ZV8sIGVuY29kZV9zcGVlZF8sCisgICAgICBWUFhfUkNfTEFTVF9QQVNTLCBpbXBs
X3B0cl8tPmVuY29kZV9jb25maWdfbGlzdCk7CiAgIEZSQU1FX0lORk8gZnJhbWVfaW5mbyA9IHZw
OV9nZXRfZnJhbWVfaW5mbygmb3hjZik7CiAgIEZJUlNUX1BBU1NfSU5GTyBmaXJzdF9wYXNzX2lu
Zm87Ci0gIGZwc19pbml0X2ZpcnN0X3Bhc3NfaW5mbygmZmlyc3RfcGFzc19pbmZvLCBpbXBsX3B0
cl8tPmZpcnN0X3Bhc3Nfc3RhdHMuZGF0YSgpLAorICBmcHNfaW5pdF9maXJzdF9wYXNzX2luZm8o
JmZpcnN0X3Bhc3NfaW5mbywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIEdldFZlY3RvckRh
dGEoaW1wbF9wdHJfLT5maXJzdF9wYXNzX3N0YXRzKSwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIG51bV9mcmFtZXNfKTsKLSAgcmV0dXJuIHZwOV9nZXRfY29kaW5nX2ZyYW1lX251bShleHRl
cm5hbF9hcmZfaW5kZXhlc18uZGF0YSgpLCAmb3hjZiwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAmZnJhbWVfaW5mbywgJmZpcnN0X3Bhc3NfaW5mbywKKyAgcmV0dXJuIHZwOV9n
ZXRfY29kaW5nX2ZyYW1lX251bSgmb3hjZiwgJmZyYW1lX2luZm8sICZmaXJzdF9wYXNzX2luZm8s
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGlfbGF5ZXJfYXJmLCBhbGxv
d19hbHRfcmVmKTsKIH0KIAorc3RkOjp2ZWN0b3I8aW50PiBTaW1wbGVFbmNvZGU6OkNvbXB1dGVL
ZXlGcmFtZU1hcCgpIGNvbnN0IHsKKyAgLy8gVGhlIGxhc3QgZW50cnkgb2YgZmlyc3RfcGFzc19z
dGF0cyBpcyB0aGUgb3ZlcmFsbCBzdGF0cy4KKyAgYXNzZXJ0KGltcGxfcHRyXy0+Zmlyc3RfcGFz
c19zdGF0cy5zaXplKCkgPT0gbnVtX2ZyYW1lc18gKyAxKTsKKyAgdnB4X3JhdGlvbmFsX3QgZnJh
bWVfcmF0ZSA9CisgICAgICBtYWtlX3ZweF9yYXRpb25hbChmcmFtZV9yYXRlX251bV8sIGZyYW1l
X3JhdGVfZGVuXyk7CisgIGNvbnN0IFZQOUVuY29kZXJDb25maWcgb3hjZiA9IEdldEVuY29kZUNv
bmZpZygKKyAgICAgIGZyYW1lX3dpZHRoXywgZnJhbWVfaGVpZ2h0XywgZnJhbWVfcmF0ZSwgdGFy
Z2V0X2JpdHJhdGVfLCBlbmNvZGVfc3BlZWRfLAorICAgICAgVlBYX1JDX0xBU1RfUEFTUywgaW1w
bF9wdHJfLT5lbmNvZGVfY29uZmlnX2xpc3QpOworICBGUkFNRV9JTkZPIGZyYW1lX2luZm8gPSB2
cDlfZ2V0X2ZyYW1lX2luZm8oJm94Y2YpOworICBGSVJTVF9QQVNTX0lORk8gZmlyc3RfcGFzc19p
bmZvOworICBmcHNfaW5pdF9maXJzdF9wYXNzX2luZm8oJmZpcnN0X3Bhc3NfaW5mbywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEdldFZlY3RvckRhdGEoaW1wbF9wdHJfLT5maXJzdF9wYXNz
X3N0YXRzKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bV9mcmFtZXNfKTsKKyAgc3Rk
Ojp2ZWN0b3I8aW50PiBrZXlfZnJhbWVfbWFwKG51bV9mcmFtZXNfLCAwKTsKKyAgdnA5X2dldF9r
ZXlfZnJhbWVfbWFwKCZveGNmLCAmZnJhbWVfaW5mbywgJmZpcnN0X3Bhc3NfaW5mbywKKyAgICAg
ICAgICAgICAgICAgICAgICAgIEdldFZlY3RvckRhdGEoa2V5X2ZyYW1lX21hcCkpOworICByZXR1
cm4ga2V5X2ZyYW1lX21hcDsKK30KKworc3RkOjp2ZWN0b3I8aW50PiBTaW1wbGVFbmNvZGU6Ok9i
c2VydmVLZXlGcmFtZU1hcCgpIGNvbnN0IHsKKyAgcmV0dXJuIGtleV9mcmFtZV9tYXBfOworfQor
CiB1aW50NjRfdCBTaW1wbGVFbmNvZGU6OkdldEZyYW1lUGl4ZWxDb3VudCgpIGNvbnN0IHsKICAg
YXNzZXJ0KGZyYW1lX3dpZHRoXyAlIDIgPT0gMCk7CiAgIGFzc2VydChmcmFtZV9oZWlnaHRfICUg
MiA9PSAwKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3NpbXBsZV9lbmNvZGUuaCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L3NpbXBsZV9lbmNvZGUuaAppbmRleCA4MjFiYjkyOGYwMjA4OTdjOWU3MDE0
MjIzNjQwMzNkZGQzNzU5YjQwLi44ZWM3MDY5ZTgzNmFlMmIxMjY1NTJjNDBlODE3Y2ViODc0NDRl
NGUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9zaW1wbGVfZW5jb2RlLmgKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvc2ltcGxlX2VuY29kZS5oCkBAIC0xOSwxMyArMTksMTggQEAKIAogbmFtZXNw
YWNlIHZwOSB7CiAKK2VudW0gU3RhdHVzQ29kZSB7CisgIFN0YXR1c09rID0gMCwKKyAgU3RhdHVz
RXJyb3IsCit9OworCiAvLyBUT0RPKGFuZ2llYmlyZCk6IEFkZCBkZXNjcmlwdGlvbiBmb3IgZWFj
aCBmcmFtZSB0eXBlLgogZW51bSBGcmFtZVR5cGUgewogICBrRnJhbWVUeXBlS2V5ID0gMCwKLSAg
a0ZyYW1lVHlwZUludGVyLAotICBrRnJhbWVUeXBlQWx0UmVmLAotICBrRnJhbWVUeXBlT3Zlcmxh
eSwKLSAga0ZyYW1lVHlwZUdvbGRlbiwKKyAga0ZyYW1lVHlwZUludGVyID0gMSwKKyAga0ZyYW1l
VHlwZUFsdFJlZiA9IDIsCisgIGtGcmFtZVR5cGVPdmVybGF5ID0gMywKKyAga0ZyYW1lVHlwZUdv
bGRlbiA9IDQsCiB9OwogCiAvLyBUT0RPKGFuZ2llYmlyZCk6IEFkZCBkZXNjcmlwdGlvbiBmb3Ig
ZWFjaCByZWZlcmVuY2UgZnJhbWUgdHlwZS4KQEAgLTM5LDYgKzQ0LDE0IEBAIGVudW0gUmVmRnJh
bWVUeXBlIHsKICAga1JlZkZyYW1lVHlwZU5vbmUgPSAtMSwKIH07CiAKK2VudW0gR29wTWFwRmxh
ZyB7CisgIGtHb3BNYXBGbGFnU3RhcnQgPQorICAgICAgMSA8PCAwLCAgLy8gSW5kaWNhdGUgdGhp
cyBsb2NhdGlvbiBpcyB0aGUgc3RhcnQgb2YgYSBncm91cCBvZiBwaWN0dXJlcy4KKyAga0dvcE1h
cEZsYWdVc2VBbHRSZWYgPQorICAgICAgMSA8PCAxLCAgLy8gSW5kaWNhdGUgdGhpcyBncm91cCBv
ZiBwaWN0dXJlcyB3aWxsIHVzZSBhbiBhbHQgcmVmLiBPbmx5IHNldAorICAgICAgICAgICAgICAg
Ly8gdGhpcyBmbGFnIHdoZW4ga0dvcE1hcEZsYWdTdGFydCBpcyBzZXQuCit9OworCiAvLyBUaGUg
ZnJhbWUgaXMgc3BsaXQgdG8gNHg0IGJsb2Nrcy4KIC8vIFRoaXMgc3RydWN0dXJlIGNvbnRhaW5z
IHRoZSBpbmZvcm1hdGlvbiBvZiBlYWNoIDR4NCBibG9jay4KIHN0cnVjdCBQYXJ0aXRpb25JbmZv
IHsKQEAgLTUwLDkgKzYzLDEyIEBAIHN0cnVjdCBQYXJ0aXRpb25JbmZvIHsKICAgaW50IGhlaWdo
dDsgICAgICAgIC8vIHByZWRpY3Rpb24gYmxvY2sgaGVpZ2h0CiB9OwogCi1jb25zdGV4cHIgaW50
IGtNb3Rpb25WZWN0b3JQcmVjaXNpb24gPSA4OworY29uc3RleHByIGludCBrTW90aW9uVmVjdG9y
U3ViUGl4ZWxQcmVjaXNpb24gPSA4OworY29uc3RleHByIGludCBrTW90aW9uVmVjdG9yRnVsbFBp
eGVsUHJlY2lzaW9uID0gMTsKIAotLy8gVGhlIGZyYW1lIGlzIHNwbGl0IHRvIDR4NCBibG9ja3Mu
CisvLyBJbiB0aGUgZmlyc3QgcGFzcy4gVGhlIGZyYW1lIGlzIHNwbGl0IHRvIDE2eDE2IGJsb2Nr
cy4KKy8vIFRoaXMgc3RydWN0dXJlIGNvbnRhaW5zIHRoZSBpbmZvcm1hdGlvbiBvZiBlYWNoIDE2
eDE2IGJsb2NrLgorLy8gSW4gdGhlIHNlY29uZCBwYXNzLiBUaGUgZnJhbWUgaXMgc3BsaXQgdG8g
NHg0IGJsb2Nrcy4KIC8vIFRoaXMgc3RydWN0dXJlIGNvbnRhaW5zIHRoZSBpbmZvcm1hdGlvbiBv
ZiBlYWNoIDR4NCBibG9jay4KIHN0cnVjdCBNb3Rpb25WZWN0b3JJbmZvIHsKICAgLy8gTnVtYmVy
IG9mIHZhbGlkIG1vdGlvbiB2ZWN0b3JzLCBhbHdheXMgMCBpZiB0aGlzIGJsb2NrIGlzIGluIHRo
ZSBrZXkgZnJhbWUuCkBAIC02MCw4ICs3Niw4IEBAIHN0cnVjdCBNb3Rpb25WZWN0b3JJbmZvIHsK
ICAgaW50IG12X2NvdW50OwogICAvLyBUaGUgcmVmZXJlbmNlIGZyYW1lIGZvciBtb3Rpb24gdmVj
dG9ycy4gSWYgdGhlIHNlY29uZCBtb3Rpb24gdmVjdG9yIGRvZXMKICAgLy8gbm90IGV4aXN0ICht
dl9jb3VudCA9IDEpLCB0aGUgcmVmZXJlbmNlIGZyYW1lIGlzIGtOb25lUmVmRnJhbWUuCi0gIC8v
IE90aGVyd2lzZSwgdGhlIHJlZmVyZW5jZSBmcmFtZSBpcyBlaXRoZXIga0xhc3RGcmFtZSwgb3Ig
a0dvbGRlbkZyYW1lLAotICAvLyBvciBrQWx0UmVmRnJhbWUuCisgIC8vIE90aGVyd2lzZSwgdGhl
IHJlZmVyZW5jZSBmcmFtZSBpcyBlaXRoZXIga1JlZkZyYW1lVHlwZUxhc3QsIG9yCisgIC8vIGtS
ZWZGcmFtZVR5cGVQYXN0LCBvciBrUmVmRnJhbWVUeXBlRnV0dXJlLgogICBSZWZGcmFtZVR5cGUg
cmVmX2ZyYW1lWzJdOwogICAvLyBUaGUgcm93IG9mZnNldCBvZiBtb3Rpb24gdmVjdG9ycyBpbiB0
aGUgdW5pdCBvZiBwaXhlbC4KICAgLy8gSWYgdGhlIHNlY29uZCBtb3Rpb24gdmVjdG9yIGRvZXMg
bm90IGV4aXN0LCB0aGUgdmFsdWUgaXMgMC4KQEAgLTcxLDYgKzg3LDI0IEBAIHN0cnVjdCBNb3Rp
b25WZWN0b3JJbmZvIHsKICAgZG91YmxlIG12X2NvbHVtblsyXTsKIH07CiAKKy8vIEFjY3VtdWxh
dGVkIHRwbCBzdGF0cyBvZiBhbGwgYmxvY2tzIGluIG9uZSBmcmFtZS4KKy8vIEZvciBlYWNoIGZy
YW1lLCB0aGUgdHBsIHN0YXRzIGFyZSBjb21wdXRlZCBwZXIgMzJ4MzIgYmxvY2suCitzdHJ1Y3Qg
VHBsU3RhdHNJbmZvIHsKKyAgLy8gSW50cmEgY29tcGxleGl0eTogdGhlIHN1bSBvZiBhYnNvbHV0
ZSB0cmFuc2Zvcm0gZGlmZmVyZW5jZSAoU0FURCkgb2YKKyAgLy8gaW50cmEgcHJlZGljdGVkIHJl
c2lkdWFscy4KKyAgaW50NjRfdCBpbnRyYV9jb3N0OworICAvLyBJbnRlciBjb21wbGV4aXR5OiB0
aGUgU0FURCBvZiBpbnRlciBwcmVkaWN0ZWQgcmVzaWR1YWxzLgorICBpbnQ2NF90IGludGVyX2Nv
c3Q7CisgIC8vIE1vdGlvbiBjb21wZW5zYXRlZCBpbmZvcm1hdGlvbiBmbG93LiBJdCBtZWFzdXJl
cyBob3cgbXVjaCBpbmZvcm1hdGlvbgorICAvLyBpcyBwcm9wYWdhdGVkIGZyb20gdGhlIGN1cnJl
bnQgZnJhbWUgdG8gb3RoZXIgZnJhbWVzLgorICBpbnQ2NF90IG1jX2Zsb3c7CisgIC8vIE1vdGlv
biBjb21wZW5zYXRlZCBkZXBlbmRlbmN5IGNvc3QuIEl0IGVxdWFscyB0byBpdHMgb3duIGludHJh
X2Nvc3QKKyAgLy8gcGx1cyB0aGUgbWNfZmxvdy4KKyAgaW50NjRfdCBtY19kZXBfY29zdDsKKyAg
Ly8gTW90aW9uIGNvbXBlbnNhdGVkIHJlZmVyZW5jZSBjb3N0LgorICBpbnQ2NF90IG1jX3JlZl9j
b3N0OworfTsKKwogc3RydWN0IFJlZkZyYW1lSW5mbyB7CiAgIGludCBjb2RpbmdfaW5kZXhlc1tr
UmVmRnJhbWVUeXBlTWF4XTsKIApAQCAtODMsOSArMTE3LDEyIEBAIHN0cnVjdCBSZWZGcmFtZUlu
Zm8gewogICAvLyBrUmVmRnJhbWVUeXBlTGFzdCA+IGtSZWZGcmFtZVR5cGVQYXN0ID4ga1JlZkZy
YW1lVHlwZUZ1dHVyZS4KICAgLy8gRm9yIGV4YW1wbGUsIGlmIGtSZWZGcmFtZVR5cGVMYXN0IGFu
ZCBrUmVmRnJhbWVUeXBlUGFzdCBib3RoIHBvaW50IHRvIHRoZQogICAvLyBzYW1lIGZyYW1lLCBr
UmVmRnJhbWVUeXBlUGFzdCB3aWxsIGJlIHNldCB0byBpbnZhbGlkLgorICAvLyAxOiB0aGUgcmVm
IGZyYW1lIHR5cGUgaXMgYXZhaWxhYmxlIDA6IHRoZSByZWYgZnJhbWUgdHlwZSBpcyBub3QgYXZh
aWxhYmxlCiAgIGludCB2YWxpZF9saXN0W2tSZWZGcmFtZVR5cGVNYXhdOwogfTsKIAorYm9vbCBv
cGVyYXRvcj09KGNvbnN0IFJlZkZyYW1lSW5mbyAmYSwgY29uc3QgUmVmRnJhbWVJbmZvICZiKTsK
Kwogc3RydWN0IEVuY29kZUZyYW1lSW5mbyB7CiAgIGludCBzaG93X2lkeDsKIApAQCAtMTk5LDYg
KzIzNiw4IEBAIHZvaWQgb3V0cHV0X2ltYWdlX2J1ZmZlcihjb25zdCBJbWFnZUJ1ZmZlciAmaW1h
Z2VfYnVmZmVyLCBzdGQ6OkZJTEUgKm91dF9maWxlKTsKIHN0cnVjdCBFbmNvZGVGcmFtZVJlc3Vs
dCB7CiAgIGludCBzaG93X2lkeDsKICAgRnJhbWVUeXBlIGZyYW1lX3R5cGU7CisgIGludCBjb2Rp
bmdfaWR4OworICBSZWZGcmFtZUluZm8gcmVmX2ZyYW1lX2luZm87CiAgIHNpemVfdCBjb2Rpbmdf
ZGF0YV9iaXRfc2l6ZTsKICAgc2l6ZV90IGNvZGluZ19kYXRhX2J5dGVfc2l6ZTsKICAgLy8gVGhl
IEVuY29kZUZyYW1lIHdpbGwgYWxsb2NhdGUgYSBidWZmZXIsIHdyaXRlIHRoZSBjb2RpbmcgZGF0
YSBpbnRvIHRoZQpAQCAtMjMyLDcgKzI3MSw3IEBAIHN0cnVjdCBFbmNvZGVGcmFtZVJlc3VsdCB7
CiAgIHN0ZDo6dmVjdG9yPFBhcnRpdGlvbkluZm8+IHBhcnRpdGlvbl9pbmZvOwogICAvLyBBIHZl
Y3RvciBvZiB0aGUgbW90aW9uIHZlY3RvciBpbmZvcm1hdGlvbiBvZiB0aGUgZnJhbWUuCiAgIC8v
IFRoZSBudW1iZXIgb2YgZWxlbWVudHMgaXMgfG51bV9yb3dzXzR4NHwgKiB8bnVtX2NvbHNfNHg0
fC4KLSAgLy8gVGhlIGZyYW1lIGlzIGRpdmlkZWQgNHg0IGJsb2NrcyBvZiB8bnVtX3Jvd3NfNHg0
fCByb3dzIGFuZAorICAvLyBUaGUgZnJhbWUgaXMgZGl2aWRlZCBpbnRvIDR4NCBibG9ja3Mgb2Yg
fG51bV9yb3dzXzR4NHwgcm93cyBhbmQKICAgLy8gfG51bV9jb2xzXzR4NHwgY29sdW1ucy4KICAg
Ly8gRWFjaCA0eDQgYmxvY2sgY29udGFpbnMgMCBtb3Rpb24gdmVjdG9yIGlmIHRoaXMgaXMgYW4g
aW50cmEgcHJlZGljdGVkCiAgIC8vIGZyYW1lIChmb3IgZXhhbXBsZSwgdGhlIGtleSBmcmFtZSku
IElmIHRoZSBmcmFtZSBpcyBpbnRlciBwcmVkaWN0ZWQsCkBAIC0yNDAsNyArMjc5LDI1IEBAIHN0
cnVjdCBFbmNvZGVGcmFtZVJlc3VsdCB7CiAgIC8vIFNpbWlsYXIgdG8gcGFydGl0aW9uIGluZm8s
IGFsbCA0eDQgYmxvY2tzIGluc2lkZSB0aGUgc2FtZSBwYXJ0aXRpb24gYmxvY2sKICAgLy8gc2hh
cmUgdGhlIHNhbWUgbW90aW9uIHZlY3RvciBpbmZvcm1hdGlvbi4KICAgc3RkOjp2ZWN0b3I8TW90
aW9uVmVjdG9ySW5mbz4gbW90aW9uX3ZlY3Rvcl9pbmZvOworICAvLyBBIHZlY3RvciBvZiB0aGUg
dHBsIHN0YXRzIGluZm9ybWF0aW9uLgorICAvLyBUaGUgdHBsIHN0YXRzIG1lYXN1cmUgdGhlIGNv
bXBsZXhpdHkgb2YgYSBmcmFtZSwgYXMgd2VsbCBhcyB0aGUKKyAgLy8gaW5mb3JtYXRpb24gcHJv
cGFnYXRlZCBhbG9uZyB0aGUgbW90aW9uIHRyYWplY3RvcnkgYmV0d2VlbiBmcmFtZXMsIGluCisg
IC8vIHRoZSByZWZlcmVuY2UgZnJhbWUgc3RydWN0dXJlLgorICAvLyBUaGUgdHBsIHN0YXRzIGNv
dWxkIGJlIHVzZWQgYXMgYSBtb3JlIGFjY3VyYXRlIHNwYXRpYWwgYW5kIHRlbXBvcmFsCisgIC8v
IGNvbXBsZXhpdHkgbWVhc3VyZSBpbiBhZGRpdGlvbiB0byB0aGUgZmlyc3QgcGFzcyBzdGF0cy4K
KyAgLy8gVGhlIHZlY3RvciBjb250YWlucyB0cGwgc3RhdHMgZm9yIGFsbCBzaG93IGZyYW1lcyBp
biBhIEdPUC4KKyAgLy8gVGhlIHRwbCBzdGF0cyBzdG9yZWQgaW4gdGhlIHZlY3RvciBpcyBhY2Nv
cmRpbmcgdG8gdGhlIGVuY29kaW5nIG9yZGVyLgorICAvLyBGb3IgZXhhbXBsZSwgc3VwcG9zZSB0
aGVyZSBhcmUgTiBzaG93IGZyYW1lcyBmb3IgdGhlIGN1cnJlbnQgR09QLgorICAvLyBUaGVuIHRw
bF9zdGF0c19pbmZvWzBdIHN0b3JlcyB0aGUgaW5mb3JtYXRpb24gb2YgdGhlIGZpcnN0IGZyYW1l
IHRvIGJlCisgIC8vIGVuY29kZWQgZm9yIHRoaXMgR09QLCBpLmUsIHRoZSBBbHRSZWYgZnJhbWUu
CisgIHN0ZDo6dmVjdG9yPFRwbFN0YXRzSW5mbz4gdHBsX3N0YXRzX2luZm87CiAgIEltYWdlQnVm
ZmVyIGNvZGVkX2ZyYW1lOworCisgIC8vIHJlY29kZV9jb3VudCwgcV9pbmRleF9oaXN0b3J5IGFu
ZCByYXRlX2hpc3RvcnkgYXJlIG9ubHkgYXZhaWxhYmxlIHdoZW4KKyAgLy8gRW5jb2RlRnJhbWVX
aXRoVGFyZ2V0RnJhbWVCaXRzKCkgaXMgdXNlZC4KKyAgaW50IHJlY29kZV9jb3VudDsKKyAgc3Rk
Ojp2ZWN0b3I8aW50PiBxX2luZGV4X2hpc3Rvcnk7CisgIHN0ZDo6dmVjdG9yPGludD4gcmF0ZV9o
aXN0b3J5OwogfTsKIAogc3RydWN0IEdyb3VwT2ZQaWN0dXJlIHsKQEAgLTI1MCw2ICszMDcsNyBA
QCBzdHJ1Y3QgR3JvdXBPZlBpY3R1cmUgewogICAvLyB0cmlnZ2VyZWQgd2hlbiB0aGUgY29kZWQg
ZnJhbWUgaXMgdGhlIGxhc3Qgb25lIGluIHRoZSBwcmV2aW91cyBncm91cCBvZgogICAvLyBwaWN0
dXJlcy4KICAgc3RkOjp2ZWN0b3I8RW5jb2RlRnJhbWVJbmZvPiBlbmNvZGVfZnJhbWVfbGlzdDsK
KwogICAvLyBJbmRpY2F0ZXMgdGhlIGluZGV4IG9mIHRoZSBuZXh0IGNvZGluZyBmcmFtZSBpbiBl
bmNvZGVfZnJhbWVfbGlzdC4KICAgLy8gSW4gb3RoZXIgd29yZHMsIEVuY29kZUZyYW1lSW5mbyBv
ZiB0aGUgbmV4dCBjb2RpbmcgZnJhbWUgY2FuIGJlCiAgIC8vIG9idGFpbmVkIHdpdGggZW5jb2Rl
X2ZyYW1lX2xpc3RbbmV4dF9lbmNvZGVfZnJhbWVfaW5kZXhdLgpAQCAtMjU4LDEzICszMTYsMjUg
QEAgc3RydWN0IEdyb3VwT2ZQaWN0dXJlIHsKICAgLy8gd2lsbCBiZSBpbmNyZWFzZWQgYWZ0ZXIg
ZWFjaCBFbmNvZGVGcmFtZSgpL0VuY29kZUZyYW1lV2l0aFF1YW50aXplSW5kZXgoKQogICAvLyBj
YWxsLgogICBpbnQgbmV4dF9lbmNvZGVfZnJhbWVfaW5kZXg7CisKICAgLy8gTnVtYmVyIG9mIHNo
b3cgZnJhbWVzIGluIHRoaXMgZ3JvdXAgb2YgcGljdHVyZXMuCiAgIGludCBzaG93X2ZyYW1lX2Nv
dW50OworCiAgIC8vIFRoZSBzaG93IGluZGV4L3RpbWVzdGFtcCBvZiB0aGUgZWFybGllc3Qgc2hv
dyBmcmFtZSBpbiB0aGUgZ3JvdXAgb2YKICAgLy8gcGljdHVyZXMuCiAgIGludCBzdGFydF9zaG93
X2luZGV4OwotICAvLyBUaGUgY29kaW5nIGluZGV4IG9mIHRoZSBmaXJzdCBjb2RpbmcgZnJhbWUg
aW4gdGhlIGdyb3VwIG9mIHBpY3R1cmUuCisKKyAgLy8gVGhlIGNvZGluZyBpbmRleCBvZiB0aGUg
Zmlyc3QgY29kaW5nIGZyYW1lIGluIHRoZSBncm91cCBvZiBwaWN0dXJlcy4KICAgaW50IHN0YXJ0
X2NvZGluZ19pbmRleDsKKworICAvLyBJbmRpY2F0ZXMgd2hldGhlciB0aGlzIGdyb3VwIG9mIHBp
Y3R1cmVzIHN0YXJ0cyB3aXRoIGEga2V5IGZyYW1lLgorICBpbnQgZmlyc3RfaXNfa2V5X2ZyYW1l
OworCisgIC8vIEluZGljYXRlcyB3aGV0aGVyIHRoaXMgZ3JvdXAgb2YgcGljdHVyZXMgdXNlcyBh
biBhbHQgcmVmLgorICBpbnQgdXNlX2FsdF9yZWY7CisKKyAgLy8gSW5kaWNhdGVzIHdoZXRoZXIg
cHJldmlvdXMgZ3JvdXAgb2YgcGljdHVyZXMgdXNlZCBhbiBhbHQgcmVmLgorICBpbnQgbGFzdF9n
b3BfdXNlX2FsdF9yZWY7CiB9OwogCiBjbGFzcyBTaW1wbGVFbmNvZGUgewpAQCAtMjc4LDggKzM0
OCw1NSBAQCBjbGFzcyBTaW1wbGVFbmNvZGUgewogICBTaW1wbGVFbmNvZGUoU2ltcGxlRW5jb2Rl
ICYpID0gZGVsZXRlOwogICBTaW1wbGVFbmNvZGUgJm9wZXJhdG9yPShjb25zdCBTaW1wbGVFbmNv
ZGUgJikgPSBkZWxldGU7CiAKLSAgLy8gTWFrZXMgZW5jb2RlciBjb21wdXRlIHRoZSBmaXJzdCBw
YXNzIHN0YXRzIGFuZCBzdG9yZSBpdCBpbnRlcm5hbGx5IGZvcgotICAvLyBmdXR1cmUgZW5jb2Rl
LgorICAvLyBBZGp1c3RzIHRoZSBlbmNvZGVyJ3MgY29kaW5nIHNwZWVkLgorICAvLyBJZiB0aGlz
IGZ1bmN0aW9uIGlzIG5vdCBjYWxsZWQsIHRoZSBlbmNvZGVyIHdpbGwgdXNlIGRlZmF1bHQgZW5j
b2RlX3NwZWVkCisgIC8vIDAuIENhbGwgdGhpcyBmdW5jdGlvbiBiZWZvcmUgQ29tcHV0ZUZpcnN0
UGFzc1N0YXRzKCkgaWYgbmVlZGVkLgorICAvLyBUaGUgZW5jb2RlX3NwZWVkIGlzIGVxdWl2YWxl
bnQgdG8gLS1jcHUtdXNlZCBvZiB0aGUgdnB4ZW5jIGNvbW1hbmQuCisgIC8vIFRoZSBlbmNvZGVf
c3BlZWQncyByYW5nZSBzaG91bGQgYmUgWzAsIDldLgorICAvLyBTZXR0aW5nIHRoZSBlbmNvZGVf
c3BlZWQgdG8gYSBoaWdoZXIgbGV2ZWwgd2lsbCB5aWVsZCBmYXN0ZXIgY29kaW5nCisgIC8vIGF0
IHRoZSBjb3N0IG9mIGxvd2VyIGNvbXByZXNzaW9uIGVmZmljaWVuY3kuCisgIHZvaWQgU2V0RW5j
b2RlU3BlZWQoaW50IGVuY29kZV9zcGVlZCk7CisKKyAgLy8gU2V0IGVuY29kZXIgY29uZmlnCisg
IC8vIFRoZSBmb2xsb3dpbmcgY29uZmlncyBpbiBWUDlFbmNvZGVyQ29uZmlnIGFyZSBhbGxvd2Vk
IHRvIGNoYW5nZSBpbiB0aGlzCisgIC8vIGZ1bmN0aW9uLiBTZWUgaHR0cHM6Ly9mZm1wZWcub3Jn
L2ZmbXBlZy1jb2RlY3MuaHRtbCNsaWJ2cHggZm9yIGVhY2gKKyAgLy8gY29uZmlnJ3MgbWVhbmlu
Zy4KKyAgLy8gQ29uZmlncyBpbiBWUDlFbmNvZGVyQ29uZmlnOiAgICAgICAgICBFcXVpdmFsZW50
IGNvbmZpZ3MgaW4gZmZtcGVnOgorICAvLyAxICBrZXlfZnJlcSAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC1nCisgIC8vIDIgIHR3b19wYXNzX3Zicm1pbl9zZWN0aW9uICAgICAgICAgICAgLW1p
bnJhdGUgKiAxMDBMTCAvIGJpdF9yYXRlCisgIC8vIDMgIHR3b19wYXNzX3Zicm1heF9zZWN0aW9u
ICAgICAgICAgICAgLW1heHJhdGUgKiAxMDBMTCAvIGJpdF9yYXRlCisgIC8vIDQgIHVuZGVyX3No
b290X3BjdCAgICAgICAgICAgICAgICAgICAgLXVuZGVyc2hvb3QtcGN0CisgIC8vIDUgIG92ZXJf
c2hvb3RfcGN0ICAgICAgICAgICAgICAgICAgICAgLW92ZXJzaG9vdC1wY3QKKyAgLy8gNiAgbWF4
X3RocmVhZHMgICAgICAgICAgICAgICAgICAgICAgICAtdGhyZWFkcworICAvLyA3ICBmcmFtZV9w
YXJhbGxlbF9kZWNvZGluZ19tb2RlICAgICAgIC1mcmFtZS1wYXJhbGxlbAorICAvLyA4ICB0aWxl
X2NvbHVtbiAgICAgICAgICAgICAgICAgICAgICAgIC10aWxlLWNvbHVtbnMKKyAgLy8gOSAgYXJu
cl9tYXhfZnJhbWVzICAgICAgICAgICAgICAgICAgICAtYXJuci1tYXhmcmFtZXMKKyAgLy8gMTAg
YXJucl9zdHJlbmd0aCAgICAgICAgICAgICAgICAgICAgICAtYXJuci1zdHJlbmd0aAorICAvLyAx
MSBsYWdfaW5fZnJhbWVzICAgICAgICAgICAgICAgICAgICAgIC1yY19sb29rYWhlYWQKKyAgLy8g
MTIgZW5jb2RlX2JyZWFrb3V0ICAgICAgICAgICAgICAgICAgICAtc3RhdGljLXRocmVzaAorICAv
LyAxMyBlbmFibGVfdHBsX21vZGVsICAgICAgICAgICAgICAgICAgIC1lbmFibGUtdHBsCisgIC8v
IDE0IGVuYWJsZV9hdXRvX2FyZiAgICAgICAgICAgICAgICAgICAgLWF1dG8tYWx0LXJlZgorICAv
LyAxNSByY19tb2RlCisgIC8vICAgIFBvc3NpYmxlIFNldHRpbmdzOgorICAvLyAgICAgIDAgLSBW
YXJpYWJsZSBCaXQgUmF0ZSAoVlBYX1ZCUikgIC1iOnYgPGJpdF9yYXRlPgorICAvLyAgICAgIDEg
LSBDb25zdGFudCBCaXQgUmF0ZSAoVlBYX0NCUikgIC1iOnYgPGJpdF9yYXRlPiAtbWlucmF0ZSA8
Yml0X3JhdGU+CisgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC1t
YXhyYXRlIDxiaXRfcmF0ZT4KKyAgLy8gICAgICAgIHR3b19wYXNzX3Zicm1pbl9zZWN0aW9uID09
IDEwMCAgIGkuZS4gYml0X3JhdGUgPT0gbWlucmF0ZSA9PSBtYXhyYXRlCisgIC8vICAgICAgICB0
d29fcGFzc192YnJtYXhfc2VjdGlvbiA9PSAxMDAKKyAgLy8gICAgICAyIC0gQ29uc3RyYWluZWQg
UXVhbGl0eSAoVlBYX0NRKSAtY3JmIDxjcV9sZXZlbD4gLWI6diBiaXRfcmF0ZQorICAvLyAgICAg
IDMgLSBDb25zdGFudCBRdWFsaXR5IChWUFhfUSkgICAgIC1jcmYgPGNxX2xldmVsPiAtYjp2IDAK
KyAgLy8gICAgU2VlIGh0dHBzOi8vdHJhYy5mZm1wZWcub3JnL3dpa2kvRW5jb2RlL1ZQOSBmb3Ig
bW9yZSBkZXRhaWxzLgorICAvLyAxNiBjcV9sZXZlbCAgICAgICAgICAgICAgICAgICAgICAgICAg
c2VlIHJjX21vZGUgZm9yIGRldGFpbHMuCisgIFN0YXR1c0NvZGUgU2V0RW5jb2RlQ29uZmlnKGNv
bnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKnZhbHVlKTsKKworICAvLyBBIGRlYnVnIGZ1bmN0
aW9uIHRoYXQgZHVtcHMgY29uZmlncyBmcm9tIFZQOUVuY29kZXJDb25maWcKKyAgLy8gcGFzcyA9
IDE6IGZpcnN0IHBhc3MsIHBhc3MgPSAyOiBzZWNvbmQgcGFzcworICAvLyBmcDogZmlsZSBwb2lu
dGVyIGZvciBkdW1waW5nIGNvbmZpZworICBTdGF0dXNDb2RlIER1bXBFbmNvZGVDb25maWdzKGlu
dCBwYXNzLCBGSUxFICpmcCk7CisKKyAgLy8gTWFrZXMgZW5jb2RlciBjb21wdXRlIHRoZSBmaXJz
dCBwYXNzIHN0YXRzIGFuZCBzdG9yZSBpdCBhdAorICAvLyBpbXBsX3B0cl8tPmZpcnN0X3Bhc3Nf
c3RhdHMuIGtleV9mcmFtZV9tYXBfIGlzIGFsc28gY29tcHV0ZWQgYmFzZWQgb24gdGhlCisgIC8v
IGZpcnN0IHBhc3Mgc3RhdHMuCiAgIHZvaWQgQ29tcHV0ZUZpcnN0UGFzc1N0YXRzKCk7CiAKICAg
Ly8gT3V0cHV0cyB0aGUgZmlyc3QgcGFzcyBzdGF0cyByZXByZXNlbnRlZCBieSBhIDItRCB2ZWN0
b3IuCkBAIC0yODgsMTMgKzQwNSwzOCBAQCBjbGFzcyBTaW1wbGVFbmNvZGUgewogICAvLyB2YWx1
ZXMuIEZvciBkZXRhaWxzLCBwbGVhc2UgY2hlY2sgRklSU1RQQVNTX1NUQVRTIGluIHZwOV9maXJz
dHBhc3MuaAogICBzdGQ6OnZlY3RvcjxzdGQ6OnZlY3Rvcjxkb3VibGU+PiBPYnNlcnZlRmlyc3RQ
YXNzU3RhdHMoKTsKIAotICAvLyBTZXRzIGFyZiBpbmRleGVzIGZvciB0aGUgdmlkZW8gZnJvbSBl
eHRlcm5hbCBpbnB1dC4KLSAgLy8gVGhlIGFyZiBpbmRleCBkZXRlcm1pbmVzIHdoZXRoZXIgYSBm
cmFtZSBpcyBhcmYgb3Igbm90LgotICAvLyBUaGVyZWZvcmUgaXQgYWxzbyBkZXRlcm1pbmVzIHRo
ZSBncm91cCBvZiBwaWN0dXJlIHNpemUuCi0gIC8vIElmIHNldCwgVlA5IHdpbGwgdXNlIHRoZSBl
eHRlcm5hbCBhcmYgaW5kZXggdG8gbWFrZSBkZWNpc2lvbi4KKyAgLy8gT3V0cHV0cyB0aGUgZmly
c3QgcGFzcyBtb3Rpb24gdmVjdG9ycyByZXByZXNlbnRlZCBieSBhIDItRCB2ZWN0b3IuCisgIC8v
IE9uZSBjYW4gdXNlIHRoZSBmcmFtZSBpbmRleCBhdCBmaXJzdCBkaW1lbnNpb24gdG8gcmV0cmll
dmUgdGhlIG12cyBmb3IKKyAgLy8gZWFjaCB2aWRlbyBmcmFtZS4gVGhlIGZyYW1lIGlzIGRpdmlk
ZWQgaW50byAxNngxNiBibG9ja3MuIFRoZSBudW1iZXIgb2YKKyAgLy8gZWxlbWVudHMgaXMgcm91
bmRfdXAofG51bV9yb3dzXzR4NHwgLyA0KSAqIHJvdW5kX3VwKHxudW1fY29sc180eDR8IC8gNCku
CisgIHN0ZDo6dmVjdG9yPHN0ZDo6dmVjdG9yPE1vdGlvblZlY3RvckluZm8+PiBPYnNlcnZlRmly
c3RQYXNzTW90aW9uVmVjdG9ycygpOworCisgIC8vIE91cHV0cyBhIGNvcHkgb2Yga2V5X2ZyYW1l
X21hcF8sIGEgYmluYXJ5IHZlY3RvciB3aXRoIHNpemUgZXF1YWwgdG8gdGhlCisgIC8vIG51bWJl
ciBvZiBzaG93IGZyYW1lcyBpbiB0aGUgdmlkZW8uIEZvciBlYWNoIGVudHJ5IGluIHRoZSB2ZWN0
b3IsIDEKKyAgLy8gaW5kaWNhdGVzIHRoZSBwb3NpdGlvbiBpcyBhIGtleSBmcmFtZSBhbmQgMCBp
bmRpY2F0ZXMgaXQncyBub3QgYSBrZXkgZnJhbWUuCisgIC8vIFRoaXMgZnVuY3Rpb24gc2hvdWxk
IGJlIGNhbGxlZCBhZnRlciBDb21wdXRlRmlyc3RQYXNzU3RhdHMoKQorICBzdGQ6OnZlY3Rvcjxp
bnQ+IE9ic2VydmVLZXlGcmFtZU1hcCgpIGNvbnN0OworCisgIC8vIFNldHMgZ3JvdXAgb2YgcGlj
dHVyZXMgbWFwIGZvciBjb2RpbmcgdGhlIGVudGlyZSB2aWRlby4KKyAgLy8gRWFjaCBlbnRyeSBp
biB0aGUgZ29wX21hcCBjb3JyZXNwb25kcyB0byBhIHNob3cgZnJhbWUgaW4gdGhlIHZpZGVvLgor
ICAvLyBUaGVyZWZvcmUsIHRoZSBzaXplIG9mIGdvcF9tYXAgc2hvdWxkIGVxdWFsIHRvIHRoZSBu
dW1iZXIgb2Ygc2hvdyBmcmFtZXMgaW4KKyAgLy8gdGhlIGVudGlyZSB2aWRlby4KKyAgLy8gSWYg
YSBnaXZlbiBlbnRyeSdzIGtHb3BNYXBGbGFnU3RhcnQgaXMgc2V0LCBpdCBtZWFucyB0aGlzIGlz
IHRoZSBzdGFydCBvZiBhCisgIC8vIGdvcC4gT25jZSBrR29wTWFwRmxhZ1N0YXJ0IGlzIHNldCwg
b25lIGNhbiBzZXQga0dvcE1hcEZsYWdVc2VBbHRSZWYgdG8KKyAgLy8gaW5kaWNhdGUgd2hldGhl
ciB0aGlzIGdvcCB1c2UgYWx0cmVmLgorICAvLyBJZiBhIGdpdmVuIGVudHJ5IGlzIHplcm8sIGl0
IG1lYW5zIGl0J3MgaW4gdGhlIG1pZGRsZSBvZiBhIGdvcC4KICAgLy8gVGhpcyBmdW5jdGlvbiBz
aG91bGQgYmUgY2FsbGVkIG9ubHkgb25jZSBhZnRlciBDb21wdXRlRmlyc3RQYXNzU3RhdHMoKSwK
LSAgLy8gYmVmb3JlIFN0YXJ0RW5jZGUoKS4KLSAgdm9pZCBTZXRFeHRlcm5hbEdyb3VwT2ZQaWN0
dXJlKHN0ZDo6dmVjdG9yPGludD4gZXh0ZXJuYWxfYXJmX2luZGV4ZXMpOworICAvLyBiZWZvcmUg
U3RhcnRFbmNvZGUoKS4KKyAgLy8gVGhpcyBBUEkgd2lsbCBjaGVjayBhbmQgbW9kaWZ5IHRoZSBn
b3BfbWFwIHRvIHNhdGlzZnkgdGhlIGZvbGxvd2luZworICAvLyBjb25zdHJhaW50cy4KKyAgLy8g
MSkgRWFjaCBrZXkgZnJhbWUgcG9zaXRpb24gc2hvdWxkIGJlIGF0IHRoZSBzdGFydCBvZiBhIGdv
cC4KKyAgLy8gMikgVGhlIGxhc3QgZ29wIHNob3VsZCBub3QgdXNlIGFuIGFsdCByZWYuCisgIHZv
aWQgU2V0RXh0ZXJuYWxHcm91cE9mUGljdHVyZXNNYXAoaW50ICpnb3BfbWFwLCBpbnQgZ29wX21h
cF9zaXplKTsKKworICAvLyBPYnNlcnZlIHRoZSBncm91cCBvZiBwaWN0dXJlcyBtYXAgc2V0IHRo
cm91Z2gKKyAgLy8gU2V0RXh0ZXJuYWxHcm91cE9mUGljdHVyZXNNYXAoKS4gVGhpcyBmdW5jdGlv
biBzaG91bGQgYmUgY2FsbGVkIGFmdGVyCisgIC8vIFNldEV4dGVybmFsR3JvdXBPZlBpY3R1cmVz
TWFwKCkuCisgIHN0ZDo6dmVjdG9yPGludD4gT2JzZXJ2ZUV4dGVybmFsR3JvdXBPZlBpY3R1cmVz
TWFwKCk7CiAKICAgLy8gSW5pdGlhbGl6ZXMgdGhlIGVuY29kZXIgZm9yIGFjdHVhbCBlbmNvZGlu
Zy4KICAgLy8gVGhpcyBmdW5jdGlvbiBzaG91bGQgYmUgY2FsbGVkIGFmdGVyIENvbXB1dGVGaXJz
dFBhc3NTdGF0cygpLgpAQCAtMzA0LDEyICs0NDYsMTEgQEAgY2xhc3MgU2ltcGxlRW5jb2RlIHsK
ICAgLy8gVGhpcyBmdW5jdGlvbiBzaG91bGQgYmUgY2FsbGVkIGFmdGVyIFN0YXJ0RW5jb2RlKCkg
b3IgRW5jb2RlRnJhbWUoKS4KICAgdm9pZCBFbmRFbmNvZGUoKTsKIAotICAvLyBHaXZlbiBhIGtl
eV9mcmFtZV9pbmRleCwgY29tcHV0ZXMgdGhpcyBrZXkgZnJhbWUgZ3JvdXAncyBzaXplLgogICAv
LyBUaGUga2V5IGZyYW1lIGdyb3VwIHNpemUgaW5jbHVkZXMgb25lIGtleSBmcmFtZSBwbHVzIHRo
ZSBudW1iZXIgb2YKICAgLy8gZm9sbG93aW5nIGludGVyIGZyYW1lcy4gTm90ZSB0aGF0IHRoZSBr
ZXkgZnJhbWUgZ3JvdXAgc2l6ZSBvbmx5IGNvdW50cyB0aGUKICAgLy8gc2hvdyBmcmFtZXMuIFRo
ZSBudW1iZXIgb2Ygbm8gc2hvdyBmcmFtZXMgbGlrZSBhbHRlcm5hdGUgcmVmZXJlY2VzIGFyZSBu
b3QKICAgLy8gY291bnRlZC4KLSAgaW50IEdldEtleUZyYW1lR3JvdXBTaXplKGludCBrZXlfZnJh
bWVfaW5kZXgpIGNvbnN0OworICBpbnQgR2V0S2V5RnJhbWVHcm91cFNpemUoKSBjb25zdDsKIAog
ICAvLyBQcm92aWRlcyB0aGUgZ3JvdXAgb2YgcGljdHVyZXMgdGhhdCB0aGUgbmV4dCBjb2Rpbmcg
ZnJhbWUgaXMgaW4uCiAgIC8vIE9ubHkgY2FsbCB0aGlzIGZ1bmN0aW9uIGJldHdlZW4gU3RhcnRF
bmNvZGUoKSBhbmQgRW5kRW5jb2RlKCkKQEAgLTMyOCw2ICs0NjksMTcgQEAgY2xhc3MgU2ltcGxl
RW5jb2RlIHsKICAgdm9pZCBFbmNvZGVGcmFtZVdpdGhRdWFudGl6ZUluZGV4KEVuY29kZUZyYW1l
UmVzdWx0ICplbmNvZGVfZnJhbWVfcmVzdWx0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaW50IHF1YW50aXplX2luZGV4KTsKIAorICAvLyBFbmNvZGUgYSBmcmFtZSB3aXRo
IHRhcmdldCBmcmFtZSBiaXRzIHVzYWdlLgorICAvLyBUaGUgZW5jb2RlciB3aWxsIGZpbmQgYSBx
dWFudGl6ZSBpbmRleCB0byBtYWtlIHRoZSBhY3R1YWwgZnJhbWUgYml0cyB1c2FnZQorICAvLyBt
YXRjaCB0aGUgdGFyZ2V0LiBFbmNvZGVGcmFtZVdpdGhUYXJnZXRGcmFtZUJpdHMoKSB3aWxsIHJl
Y29kZSB0aGUgZnJhbWUKKyAgLy8gdXAgdG8gNyB0aW1lcyB0byBmaW5kIGEgcV9pbmRleCB0byBt
YWtlIHRoZSBhY3R1YWxfZnJhbWVfYml0cyBzYXRpc2Z5IHRoZQorICAvLyBmb2xsb3dpbmcgaW5l
cXVhbGl0eS4gfGFjdHVhbF9mcmFtZV9iaXRzIC0gdGFyZ2V0X2ZyYW1lX2JpdHN8ICogMTAwIC8K
KyAgLy8gdGFyZ2V0X2ZyYW1lX2JpdHMKKyAgLy8gPD0gcGVyY2VudF9kaWZmLgorICB2b2lkIEVu
Y29kZUZyYW1lV2l0aFRhcmdldEZyYW1lQml0cyhFbmNvZGVGcmFtZVJlc3VsdCAqZW5jb2RlX2Zy
YW1lX3Jlc3VsdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHRh
cmdldF9mcmFtZV9iaXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBk
b3VibGUgcGVyY2VudF9kaWZmKTsKKwogICAvLyBHZXRzIHRoZSBudW1iZXIgb2YgY29kaW5nIGZy
YW1lcyBmb3IgdGhlIHZpZGVvLiBUaGUgY29kaW5nIGZyYW1lcyBpbmNsdWRlCiAgIC8vIHNob3cg
ZnJhbWUgYW5kIG5vIHNob3cgZnJhbWUuCiAgIC8vIFRoaXMgZnVuY3Rpb24gc2hvdWxkIGJlIGNh
bGxlZCBhZnRlciBDb21wdXRlRmlyc3RQYXNzU3RhdHMoKS4KQEAgLTMzNyw2ICs0ODksMjEgQEAg
Y2xhc3MgU2ltcGxlRW5jb2RlIHsKICAgdWludDY0X3QgR2V0RnJhbWVQaXhlbENvdW50KCkgY29u
c3Q7CiAKICBwcml2YXRlOgorICAvLyBDb21wdXRlIHRoZSBrZXkgZnJhbWUgbG9jYXRpb25zIG9m
IHRoZSB2aWRlbyBiYXNlZCBvbiBmaXJzdCBwYXNzIHN0YXRzLgorICAvLyBUaGUgcmVzdWx0cyBh
cmUgcmV0dXJuZWQgYXMgYSBiaW5hcnkgdmVjdG9yIHdpdGggMXMgaW5kaWNhdGluZyBrZXlmcmFt
ZXMKKyAgLy8gYW5kIDBzIGluZGljYXRpbmcgbm9uIGtleWZyYW1lcy4KKyAgLy8gSXQgaGFzIHRv
IGJlIGNhbGxlZCBhZnRlciBpbXBsX3B0cl8tPmZpcnN0X3Bhc3Nfc3RhdHMgaXMgY29tcHV0ZWQu
CisgIHN0ZDo6dmVjdG9yPGludD4gQ29tcHV0ZUtleUZyYW1lTWFwKCkgY29uc3Q7CisKKyAgLy8g
VXBkYXRlcyBrZXlfZnJhbWVfZ3JvdXBfc2l6ZV8sIHJlc2V0IGtleV9mcmFtZV9ncm91cF9pbmRl
eF8gYW5kIGluaXQKKyAgLy8gcmVmX2ZyYW1lX2luZm9fLgorICB2b2lkIFVwZGF0ZUtleUZyYW1l
R3JvdXAoaW50IGtleV9mcmFtZV9zaG93X2luZGV4KTsKKworICAvLyBVcGRhdGUga2V5X2ZyYW1l
X2dyb3VwX2luZGV4Xy4KKyAgdm9pZCBQb3N0VXBkYXRlS2V5RnJhbWVHcm91cEluZGV4KEZyYW1l
VHlwZSBmcmFtZV90eXBlKTsKKworICB2b2lkIFBvc3RVcGRhdGVTdGF0ZShjb25zdCBFbmNvZGVG
cmFtZVJlc3VsdCAmZW5jb2RlX2ZyYW1lX3Jlc3VsdCk7CisKICAgY2xhc3MgRW5jb2RlSW1wbDsK
IAogICBpbnQgZnJhbWVfd2lkdGhfOyAgIC8vIGZyYW1lIHdpZHRoIGluIHBpeGVscy4KQEAgLTM0
NSwyNSArNTEyLDQ4IEBAIGNsYXNzIFNpbXBsZUVuY29kZSB7CiAgIGludCBmcmFtZV9yYXRlX2Rl
bl87CiAgIGludCB0YXJnZXRfYml0cmF0ZV87CiAgIGludCBudW1fZnJhbWVzXzsKKyAgaW50IGVu
Y29kZV9zcGVlZF87CiAKICAgc3RkOjpGSUxFICppbl9maWxlXzsKICAgc3RkOjpGSUxFICpvdXRf
ZmlsZV87CiAgIHN0ZDo6dW5pcXVlX3B0cjxFbmNvZGVJbXBsPiBpbXBsX3B0cl87CiAKLSAgc3Rk
Ojp2ZWN0b3I8aW50PiBleHRlcm5hbF9hcmZfaW5kZXhlc187CisgIHN0ZDo6dmVjdG9yPGludD4g
a2V5X2ZyYW1lX21hcF87CisgIHN0ZDo6dmVjdG9yPGludD4gZ29wX21hcF87CiAgIEdyb3VwT2ZQ
aWN0dXJlIGdyb3VwX29mX3BpY3R1cmVfOwogCisgIC8vIFRoZSBrZXkgZnJhbWUgZ3JvdXAgc2l6
ZSBpbmNsdWRlcyBvbmUga2V5IGZyYW1lIHBsdXMgdGhlIG51bWJlciBvZgorICAvLyBmb2xsb3dp
bmcgaW50ZXIgZnJhbWVzLiBOb3RlIHRoYXQgdGhlIGtleSBmcmFtZSBncm91cCBzaXplIG9ubHkg
Y291bnRzIHRoZQorICAvLyBzaG93IGZyYW1lcy4gVGhlIG51bWJlciBvZiBubyBzaG93IGZyYW1l
cyBsaWtlIGFsdGVybmF0ZSByZWZlcmVuY2VzIGFyZSBub3QKKyAgLy8gY291bnRlZC4KKyAgaW50
IGtleV9mcmFtZV9ncm91cF9zaXplXzsKKworICAvLyBUaGUgaW5kZXggZm9yIHRoZSB0by1iZS1j
b2RlZCBzaG93IGZyYW1lIGluIHRoZSBrZXkgZnJhbWUgZ3JvdXAuCisgIGludCBrZXlfZnJhbWVf
Z3JvdXBfaW5kZXhfOworCiAgIC8vIEVhY2ggc2hvdyBvciBubyBzaG93IGZyYW1lIGlzIGFzc2ln
bmVkIHdpdGggYSBjb2RpbmcgaW5kZXggYmFzZWQgb24gaXRzCiAgIC8vIGNvZGluZyBvcmRlciAo
c3RhcnRpbmcgZnJvbSB6ZXJvKSBpbiB0aGUgY29kaW5nIHByb2Nlc3Mgb2YgdGhlIGVudGlyZQog
ICAvLyB2aWRlby4gVGhlIGNvZGluZyBpbmRleCBvZiB0aGUgdG8tYmUtY29kZWQgZnJhbWUuCiAg
IGludCBmcmFtZV9jb2RpbmdfaW5kZXhfOwogCisgIC8vIE51bWJlciBvZiBzaG93IGZyYW1lcyB3
ZSBoYXZlIGNvZGVkIHNvIGZhci4KKyAgaW50IHNob3dfZnJhbWVfY291bnRfOworCiAgIC8vIFRP
RE8oYW5naWViaXJkKTogRG8gd2UgbmVlZCB0byByZXNldCByZWZfZnJhbWVzX2luZm9fIHdoZW4g
dGhlIG5leHQga2V5CiAgIC8vIGZyYW1lIGFwcGVhcnM/CiAgIC8vIFJlZmVyZW5jZSBmcmFtZXMg
aW5mbyBvZiB0aGUgdG8tYmUtY29kZWQgZnJhbWUuCiAgIFJlZkZyYW1lSW5mbyByZWZfZnJhbWVf
aW5mb187CiAKLSAgdm9pZCBQb3N0VXBkYXRlU3RhdGUoY29uc3QgRW5jb2RlRnJhbWVSZXN1bHQg
JmVuY29kZV9mcmFtZV9yZXN1bHQpOworICAvLyBBIDItRCB2ZWN0b3Igb2YgbW90aW9uIHZlY3Rv
ciBpbmZvcm1hdGlvbiBvZiB0aGUgZnJhbWUgY29sbGVjdGVkCisgIC8vIGZyb20gdGhlIGZpcnN0
IHBhc3MuIFRoZSBmaXJzdCBkaW1lbnNpb24gaXMgdGhlIGZyYW1lIGluZGV4LgorICAvLyBFYWNo
IGZyYW1lIGlzIGRpdmlkZWQgaW50byAxNngxNiBibG9ja3MuIFRoZSBudW1iZXIgb2YgZWxlbWVu
dHMgaXMKKyAgLy8gcm91bmRfdXAofG51bV9yb3dzXzR4NHwgLyA0KSAqIHJvdW5kX3VwKHxudW1f
Y29sc180eDR8IC8gNCkuCisgIC8vIEVhY2ggMTZ4MTYgYmxvY2sgY29udGFpbnMgMCBtb3Rpb24g
dmVjdG9yIGlmIHRoaXMgaXMgYW4gaW50cmEgcHJlZGljdGVkCisgIC8vIGZyYW1lIChmb3IgZXhh
bXBsZSwgdGhlIGtleSBmcmFtZSkuIElmIHRoZSBmcmFtZSBpcyBpbnRlciBwcmVkaWN0ZWQsCisg
IC8vIGVhY2ggMTZ4MTYgYmxvY2sgY29udGFpbnMgZWl0aGVyIDEgb3IgMiBtb3Rpb24gdmVjdG9y
cy4KKyAgLy8gVGhlIGZpcnN0IG1vdGlvbiB2ZWN0b3IgaXMgYWx3YXlzIGZyb20gdGhlIExBU1Rf
RlJBTUUuCisgIC8vIFRoZSBzZWNvbmQgbW90aW9uIHZlY3RvciBpcyBhbHdheXMgZnJvbSB0aGUg
R09MREVOX0ZSQU1FLgorICBzdGQ6OnZlY3RvcjxzdGQ6OnZlY3RvcjxNb3Rpb25WZWN0b3JJbmZv
Pj4gZnBfbW90aW9uX3ZlY3Rvcl9pbmZvXzsKIH07CiAKIH0gIC8vIG5hbWVzcGFjZSB2cDkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5jIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
dnA5X2N4X2lmYWNlLmMKaW5kZXggMmNhMjExNGVjYThjY2YwMTI1NGZiYTljY2E3MWQ5ZmVjZjFl
YjhhNy4uZWNmYWNmYWY0MzMxZjkzZGJhZjljYWM3YTE0ZmJhZTlhOThhMzA5YSAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5
X2N4X2lmYWNlLmMKQEAgLTEzLDYgKzEzLDcgQEAKIAogI2luY2x1ZGUgIi4vdnB4X2NvbmZpZy5o
IgogI2luY2x1ZGUgInZweC92cHhfZW5jb2Rlci5oIgorI2luY2x1ZGUgInZweC92cHhfZXh0X3Jh
dGVjdHJsLmgiCiAjaW5jbHVkZSAidnB4X2RzcC9wc25yLmgiCiAjaW5jbHVkZSAidnB4X3BvcnRz
L3ZweF9vbmNlLmgiCiAjaW5jbHVkZSAidnB4X3BvcnRzL3N0YXRpY19hc3NlcnQuaCIKQEAgLTM1
NSwxMyArMzU2LDE0IEBAIHN0YXRpYyB2cHhfY29kZWNfZXJyX3QgdmFsaWRhdGVfaW1nKHZweF9j
b2RlY19hbGdfcHJpdl90ICpjdHgsCiAgIHN3aXRjaCAoaW1nLT5mbXQpIHsKICAgICBjYXNlIFZQ
WF9JTUdfRk1UX1lWMTI6CiAgICAgY2FzZSBWUFhfSU1HX0ZNVF9JNDIwOgotICAgIGNhc2UgVlBY
X0lNR19GTVRfSTQyMDE2OiBicmVhazsKKyAgICBjYXNlIFZQWF9JTUdfRk1UX0k0MjAxNjoKKyAg
ICBjYXNlIFZQWF9JTUdfRk1UX05WMTI6IGJyZWFrOwogICAgIGNhc2UgVlBYX0lNR19GTVRfSTQy
MjoKICAgICBjYXNlIFZQWF9JTUdfRk1UX0k0NDQ6CiAgICAgY2FzZSBWUFhfSU1HX0ZNVF9JNDQw
OgogICAgICAgaWYgKGN0eC0+Y2ZnLmdfcHJvZmlsZSAhPSAodW5zaWduZWQgaW50KVBST0ZJTEVf
MSkgewogICAgICAgICBFUlJPUigKLSAgICAgICAgICAgICJJbnZhbGlkIGltYWdlIGZvcm1hdC4g
STQyMiwgSTQ0NCwgSTQ0MCBpbWFnZXMgYXJlICIKKyAgICAgICAgICAgICJJbnZhbGlkIGltYWdl
IGZvcm1hdC4gSTQyMiwgSTQ0NCwgSTQ0MCwgTlYxMiBpbWFnZXMgYXJlICIKICAgICAgICAgICAg
ICJub3Qgc3VwcG9ydGVkIGluIHByb2ZpbGUuIik7CiAgICAgICB9CiAgICAgICBicmVhazsKQEAg
LTM5MSw2ICszOTMsNyBAQCBzdGF0aWMgdnB4X2NvZGVjX2Vycl90IHZhbGlkYXRlX2ltZyh2cHhf
Y29kZWNfYWxnX3ByaXZfdCAqY3R4LAogc3RhdGljIGludCBnZXRfaW1hZ2VfYnBzKGNvbnN0IHZw
eF9pbWFnZV90ICppbWcpIHsKICAgc3dpdGNoIChpbWctPmZtdCkgewogICAgIGNhc2UgVlBYX0lN
R19GTVRfWVYxMjoKKyAgICBjYXNlIFZQWF9JTUdfRk1UX05WMTI6CiAgICAgY2FzZSBWUFhfSU1H
X0ZNVF9JNDIwOiByZXR1cm4gMTI7CiAgICAgY2FzZSBWUFhfSU1HX0ZNVF9JNDIyOiByZXR1cm4g
MTY7CiAgICAgY2FzZSBWUFhfSU1HX0ZNVF9JNDQ0OiByZXR1cm4gMjQ7CkBAIC00NjgsMTAgKzQ3
MSwxMSBAQCBzdGF0aWMgdnB4X3JhdGlvbmFsNjRfdCBnZXRfZ190aW1lYmFzZV9pbl90cyh2cHhf
cmF0aW9uYWxfdCBnX3RpbWViYXNlKSB7CiB9CiAKIHN0YXRpYyB2cHhfY29kZWNfZXJyX3Qgc2V0
X2VuY29kZXJfY29uZmlnKAotICAgIFZQOUVuY29kZXJDb25maWcgKm94Y2YsIGNvbnN0IHZweF9j
b2RlY19lbmNfY2ZnX3QgKmNmZywKKyAgICBWUDlFbmNvZGVyQ29uZmlnICpveGNmLCB2cHhfY29k
ZWNfZW5jX2NmZ190ICpjZmcsCiAgICAgY29uc3Qgc3RydWN0IHZwOV9leHRyYWNmZyAqZXh0cmFf
Y2ZnKSB7CiAgIGNvbnN0IGludCBpc192YnIgPSBjZmctPnJjX2VuZF91c2FnZSA9PSBWUFhfVkJS
OwogICBpbnQgc2wsIHRsOworICB1bnNpZ25lZCBpbnQgcmF3X3RhcmdldF9yYXRlOwogICBveGNm
LT5wcm9maWxlID0gY2ZnLT5nX3Byb2ZpbGU7CiAgIG94Y2YtPm1heF90aHJlYWRzID0gKGludClj
ZmctPmdfdGhyZWFkczsKICAgb3hjZi0+d2lkdGggPSBjZmctPmdfdzsKQEAgLTQ5OCw4ICs1MDIs
MTQgQEAgc3RhdGljIHZweF9jb2RlY19lcnJfdCBzZXRfZW5jb2Rlcl9jb25maWcoCiAgICAgICBj
ZmctPmdfcGFzcyA9PSBWUFhfUkNfRklSU1RfUEFTUyA/IDAgOiBjZmctPmdfbGFnX2luX2ZyYW1l
czsKICAgb3hjZi0+cmNfbW9kZSA9IGNmZy0+cmNfZW5kX3VzYWdlOwogCisgIHJhd190YXJnZXRf
cmF0ZSA9CisgICAgICAodW5zaWduZWQgaW50KSgoaW50NjRfdClveGNmLT53aWR0aCAqIG94Y2Yt
PmhlaWdodCAqIG94Y2YtPmJpdF9kZXB0aCAqIDMgKgorICAgICAgICAgICAgICAgICAgICAgb3hj
Zi0+aW5pdF9mcmFtZXJhdGUgLyAxMDAwKTsKKyAgLy8gQ2FwIHRhcmdldCBiaXRyYXRlIHRvIHJh
dyByYXRlCisgIGNmZy0+cmNfdGFyZ2V0X2JpdHJhdGUgPSBWUFhNSU4ocmF3X3RhcmdldF9yYXRl
LCBjZmctPnJjX3RhcmdldF9iaXRyYXRlKTsKKwogICAvLyBDb252ZXJ0IHRhcmdldCBiYW5kd2lk
dGggZnJvbSBLYml0L3MgdG8gQml0L3MKLSAgb3hjZi0+dGFyZ2V0X2JhbmR3aWR0aCA9IDEwMDAg
KiBjZmctPnJjX3RhcmdldF9iaXRyYXRlOworICBveGNmLT50YXJnZXRfYmFuZHdpZHRoID0gMTAw
MCAqIChpbnQ2NF90KWNmZy0+cmNfdGFyZ2V0X2JpdHJhdGU7CiAgIG94Y2YtPnJjX21heF9pbnRy
YV9iaXRyYXRlX3BjdCA9IGV4dHJhX2NmZy0+cmNfbWF4X2ludHJhX2JpdHJhdGVfcGN0OwogICBv
eGNmLT5yY19tYXhfaW50ZXJfYml0cmF0ZV9wY3QgPSBleHRyYV9jZmctPnJjX21heF9pbnRlcl9i
aXRyYXRlX3BjdDsKICAgb3hjZi0+Z2ZfY2JyX2Jvb3N0X3BjdCA9IGV4dHJhX2NmZy0+Z2ZfY2Jy
X2Jvb3N0X3BjdDsKQEAgLTYyNCw3ICs2MzQsNyBAQCBzdGF0aWMgdnB4X2NvZGVjX2Vycl90IHNl
dF9lbmNvZGVyX2NvbmZpZygKICAgfQogCiAgIGlmIChnZXRfbGV2ZWxfaW5kZXgob3hjZi0+dGFy
Z2V0X2xldmVsKSA+PSAwKSBjb25maWdfdGFyZ2V0X2xldmVsKG94Y2YpOwotICAvLyB2cDlfZHVt
cF9lbmNvZGVyX2NvbmZpZyhveGNmKTsKKyAgLy8gdnA5X2R1bXBfZW5jb2Rlcl9jb25maWcob3hj
Ziwgc3RkZXJyKTsKICAgcmV0dXJuIFZQWF9DT0RFQ19PSzsKIH0KIApAQCAtNjk4LDYgKzcwOCwx
MCBAQCBzdGF0aWMgdnB4X2NvZGVjX2Vycl90IGN0cmxfc2V0X2NwdXVzZWQodnB4X2NvZGVjX2Fs
Z19wcml2X3QgKmN0eCwKICAgZXh0cmFfY2ZnLmNwdV91c2VkID0gQ0FTVChWUDhFX1NFVF9DUFVV
U0VELCBhcmdzKTsKICAgZXh0cmFfY2ZnLmNwdV91c2VkID0gVlBYTUlOKDksIGV4dHJhX2NmZy5j
cHVfdXNlZCk7CiAgIGV4dHJhX2NmZy5jcHVfdXNlZCA9IFZQWE1BWCgtOSwgZXh0cmFfY2ZnLmNw
dV91c2VkKTsKKyNpZiBDT05GSUdfUkVBTFRJTUVfT05MWQorICBpZiAoZXh0cmFfY2ZnLmNwdV91
c2VkID4gLTUgJiYgZXh0cmFfY2ZnLmNwdV91c2VkIDwgNSkKKyAgICBleHRyYV9jZmcuY3B1X3Vz
ZWQgPSAoZXh0cmFfY2ZnLmNwdV91c2VkID4gMCkgPyA1IDogLTU7CisjZW5kaWYKICAgcmV0dXJu
IHVwZGF0ZV9leHRyYV9jZmcoY3R4LCAmZXh0cmFfY2ZnKTsKIH0KIApAQCAtMTU1OSw2ICsxNTcz
LDcgQEAgc3RhdGljIHZweF9jb2RlY19lcnJfdCBjdHJsX3NldF9zdmNfcGFyYW1ldGVycyh2cHhf
Y29kZWNfYWxnX3ByaXZfdCAqY3R4LAogICAgICAgbGMtPnNjYWxpbmdfZmFjdG9yX251bSA9IHBh
cmFtcy0+c2NhbGluZ19mYWN0b3JfbnVtW3NsXTsKICAgICAgIGxjLT5zY2FsaW5nX2ZhY3Rvcl9k
ZW4gPSBwYXJhbXMtPnNjYWxpbmdfZmFjdG9yX2RlbltzbF07CiAgICAgICBsYy0+c3BlZWQgPSBw
YXJhbXMtPnNwZWVkX3Blcl9sYXllcltzbF07CisgICAgICBsYy0+bG9vcGZpbHRlcl9jdHJsID0g
cGFyYW1zLT5sb29wZmlsdGVyX2N0cmxbc2xdOwogICAgIH0KICAgfQogCkBAIC0xNzAzLDYgKzE3
MTgsNTIgQEAgc3RhdGljIHZweF9jb2RlY19lcnJfdCBjdHJsX3NldF9wb3N0ZW5jb2RlX2Ryb3Ao
dnB4X2NvZGVjX2FsZ19wcml2X3QgKmN0eCwKICAgcmV0dXJuIFZQWF9DT0RFQ19PSzsKIH0KIAor
c3RhdGljIHZweF9jb2RlY19lcnJfdCBjdHJsX3NldF9kaXNhYmxlX292ZXJzaG9vdF9tYXhxX2Ni
cigKKyAgICB2cHhfY29kZWNfYWxnX3ByaXZfdCAqY3R4LCB2YV9saXN0IGFyZ3MpIHsKKyAgVlA5
X0NPTVAgKmNvbnN0IGNwaSA9IGN0eC0+Y3BpOworICBjb25zdCB1bnNpZ25lZCBpbnQgZGF0YSA9
IHZhX2FyZyhhcmdzLCB1bnNpZ25lZCBpbnQpOworICBjcGktPnJjLmRpc2FibGVfb3ZlcnNob290
X21heHFfY2JyID0gZGF0YTsKKyAgcmV0dXJuIFZQWF9DT0RFQ19PSzsKK30KKworc3RhdGljIHZw
eF9jb2RlY19lcnJfdCBjdHJsX3NldF9kaXNhYmxlX2xvb3BmaWx0ZXIodnB4X2NvZGVjX2FsZ19w
cml2X3QgKmN0eCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHZhX2xpc3QgYXJncykgeworICBWUDlfQ09NUCAqY29uc3QgY3BpID0gY3R4LT5jcGk7
CisgIGNvbnN0IHVuc2lnbmVkIGludCBkYXRhID0gdmFfYXJnKGFyZ3MsIHVuc2lnbmVkIGludCk7
CisgIGNwaS0+bG9vcGZpbHRlcl9jdHJsID0gZGF0YTsKKyAgcmV0dXJuIFZQWF9DT0RFQ19PSzsK
K30KKworc3RhdGljIHZweF9jb2RlY19lcnJfdCBjdHJsX3NldF9leHRlcm5hbF9yYXRlX2NvbnRy
b2wodnB4X2NvZGVjX2FsZ19wcml2X3QgKmN0eCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhX2xpc3QgYXJncykgeworICB2cHhfcmNfZnVu
Y3NfdCBmdW5jcyA9ICpDQVNUKFZQOUVfU0VUX0VYVEVSTkFMX1JBVEVfQ09OVFJPTCwgYXJncyk7
CisgIFZQOV9DT01QICpjcGkgPSBjdHgtPmNwaTsKKyAgRVhUX1JBVEVDVFJMICpleHRfcmF0ZWN0
cmwgPSAmY3BpLT5leHRfcmF0ZWN0cmw7CisgIGNvbnN0IFZQOUVuY29kZXJDb25maWcgKm94Y2Yg
PSAmY3BpLT5veGNmOworICAvLyBUT0RPKGFuZ2llYmlyZCk6IENoZWNrIHRoZSBwb3NzaWJpbGl0
eSBvZiB0aGlzIGZsYWcgYmVpbmcgc2V0IGF0IHBhc3MgPT0gMQorICBpZiAob3hjZi0+cGFzcyA9
PSAyKSB7CisgICAgY29uc3QgRlJBTUVfSU5GTyAqZnJhbWVfaW5mbyA9ICZjcGktPmZyYW1lX2lu
Zm87CisgICAgdnB4X3JjX2NvbmZpZ190IHJhdGVjdHJsX2NvbmZpZzsKKyAgICB2cHhfY29kZWNf
ZXJyX3QgY29kZWNfc3RhdHVzOworCisgICAgcmF0ZWN0cmxfY29uZmlnLmZyYW1lX3dpZHRoID0g
ZnJhbWVfaW5mby0+ZnJhbWVfd2lkdGg7CisgICAgcmF0ZWN0cmxfY29uZmlnLmZyYW1lX2hlaWdo
dCA9IGZyYW1lX2luZm8tPmZyYW1lX2hlaWdodDsKKyAgICByYXRlY3RybF9jb25maWcuc2hvd19m
cmFtZV9jb3VudCA9IGNwaS0+dHdvcGFzcy5maXJzdF9wYXNzX2luZm8ubnVtX2ZyYW1lczsKKwor
ICAgIC8vIFRPRE8oYW5naWViaXJkKTogRG91YmxlIGNoZWNrIHdoZXRoZXIgdGhpcyBpcyB0aGUg
cHJvcGVyIHdheSB0byBzZXQgdXAKKyAgICAvLyB0YXJnZXRfYml0cmF0ZSBhbmQgZnJhbWVfcmF0
ZS4KKyAgICByYXRlY3RybF9jb25maWcudGFyZ2V0X2JpdHJhdGVfa2JwcyA9IChpbnQpKG94Y2Yt
PnRhcmdldF9iYW5kd2lkdGggLyAxMDAwKTsKKyAgICByYXRlY3RybF9jb25maWcuZnJhbWVfcmF0
ZV9udW0gPSBveGNmLT5nX3RpbWViYXNlLmRlbjsKKyAgICByYXRlY3RybF9jb25maWcuZnJhbWVf
cmF0ZV9kZW4gPSBveGNmLT5nX3RpbWViYXNlLm51bTsKKworICAgIGNvZGVjX3N0YXR1cyA9IHZw
OV9leHRyY19jcmVhdGUoZnVuY3MsIHJhdGVjdHJsX2NvbmZpZywgZXh0X3JhdGVjdHJsKTsKKyAg
ICBpZiAoY29kZWNfc3RhdHVzICE9IFZQWF9DT0RFQ19PSykgeworICAgICAgcmV0dXJuIGNvZGVj
X3N0YXR1czsKKyAgICB9CisgIH0KKyAgcmV0dXJuIFZQWF9DT0RFQ19PSzsKK30KKwogc3RhdGlj
IHZweF9jb2RlY19jdHJsX2ZuX21hcF90IGVuY29kZXJfY3RybF9tYXBzW10gPSB7CiAgIHsgVlA4
X0NPUFlfUkVGRVJFTkNFLCBjdHJsX2NvcHlfcmVmZXJlbmNlIH0sCiAKQEAgLTE3NDcsMTIgKzE4
MDgsMTUgQEAgc3RhdGljIHZweF9jb2RlY19jdHJsX2ZuX21hcF90IGVuY29kZXJfY3RybF9tYXBz
W10gPSB7CiAgIHsgVlA5RV9TRVRfVEFSR0VUX0xFVkVMLCBjdHJsX3NldF90YXJnZXRfbGV2ZWwg
fSwKICAgeyBWUDlFX1NFVF9ST1dfTVQsIGN0cmxfc2V0X3Jvd19tdCB9LAogICB7IFZQOUVfU0VU
X1BPU1RFTkNPREVfRFJPUCwgY3RybF9zZXRfcG9zdGVuY29kZV9kcm9wIH0sCisgIHsgVlA5RV9T
RVRfRElTQUJMRV9PVkVSU0hPT1RfTUFYUV9DQlIsIGN0cmxfc2V0X2Rpc2FibGVfb3ZlcnNob290
X21heHFfY2JyIH0sCiAgIHsgVlA5RV9FTkFCTEVfTU9USU9OX1ZFQ1RPUl9VTklUX1RFU1QsIGN0
cmxfZW5hYmxlX21vdGlvbl92ZWN0b3JfdW5pdF90ZXN0IH0sCiAgIHsgVlA5RV9TRVRfU1ZDX0lO
VEVSX0xBWUVSX1BSRUQsIGN0cmxfc2V0X3N2Y19pbnRlcl9sYXllcl9wcmVkIH0sCiAgIHsgVlA5
RV9TRVRfU1ZDX0ZSQU1FX0RST1BfTEFZRVIsIGN0cmxfc2V0X3N2Y19mcmFtZV9kcm9wX2xheWVy
IH0sCiAgIHsgVlA5RV9TRVRfU1ZDX0dGX1RFTVBPUkFMX1JFRiwgY3RybF9zZXRfc3ZjX2dmX3Rl
bXBvcmFsX3JlZiB9LAogICB7IFZQOUVfU0VUX1NWQ19TUEFUSUFMX0xBWUVSX1NZTkMsIGN0cmxf
c2V0X3N2Y19zcGF0aWFsX2xheWVyX3N5bmMgfSwKICAgeyBWUDlFX1NFVF9ERUxUQV9RX1VWLCBj
dHJsX3NldF9kZWx0YV9xX3V2IH0sCisgIHsgVlA5RV9TRVRfRElTQUJMRV9MT09QRklMVEVSLCBj
dHJsX3NldF9kaXNhYmxlX2xvb3BmaWx0ZXIgfSwKKyAgeyBWUDlFX1NFVF9FWFRFUk5BTF9SQVRF
X0NPTlRST0wsIGN0cmxfc2V0X2V4dGVybmFsX3JhdGVfY29udHJvbCB9LAogCiAgIC8vIEdldHRl
cnMKICAgeyBWUDhFX0dFVF9MQVNUX1FVQU5USVpFUiwgY3RybF9nZXRfcXVhbnRpemVyIH0sCkBA
IC0xODg2LDcgKzE5NTAsNyBAQCBzdGF0aWMgdnA5X2V4dHJhY2ZnIGdldF9leHRyYV9jZmcoKSB7
CiAKIFZQOUVuY29kZXJDb25maWcgdnA5X2dldF9lbmNvZGVyX2NvbmZpZyhpbnQgZnJhbWVfd2lk
dGgsIGludCBmcmFtZV9oZWlnaHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdnB4X3JhdGlvbmFsX3QgZnJhbWVfcmF0ZSwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpbnQgdGFyZ2V0X2JpdHJhdGUsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaW50IHRhcmdldF9iaXRyYXRlLCBpbnQgZW5jb2RlX3NwZWVk
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZweF9lbmNfcGFzcyBl
bmNfcGFzcykgewogICAvKiBUaGlzIGZ1bmN0aW9uIHdpbGwgZ2VuZXJhdGUgdGhlIHNhbWUgVlA5
RW5jb2RlckNvbmZpZyB1c2VkIGJ5IHRoZQogICAgKiB2cHhlbmMgY29tbWFuZCBnaXZlbiBiZWxv
dy4KQEAgLTE4OTcsNiArMTk2MSw3IEBAIFZQOUVuY29kZXJDb25maWcgdnA5X2dldF9lbmNvZGVy
X2NvbmZpZyhpbnQgZnJhbWVfd2lkdGgsIGludCBmcmFtZV9oZWlnaHQsCiAgICAqIEhFSUdIVDog
IGZyYW1lX2hlaWdodAogICAgKiBGUFM6ICAgICBmcmFtZV9yYXRlCiAgICAqIEJJVFJBVEU6IHRh
cmdldF9iaXRyYXRlCisgICAqIENQVV9VU0VEOmVuY29kZV9zcGVlZAogICAgKgogICAgKiBJTlBV
VCwgT1VUUFVULCBMSU1JVCB3aWxsIG5vdCBhZmZlY3QgVlA5RW5jb2RlckNvbmZpZwogICAgKgpA
QCAtMTkwOCw5ICsxOTczLDEwIEBAIFZQOUVuY29kZXJDb25maWcgdnA5X2dldF9lbmNvZGVyX2Nv
bmZpZyhpbnQgZnJhbWVfd2lkdGgsIGludCBmcmFtZV9oZWlnaHQsCiAgICAqIEJJVFJBVEU9NjAw
CiAgICAqIEZQUz0zMC8xCiAgICAqIExJTUlUPTE1MAorICAgKiBDUFVfVVNFRD0wCiAgICAqIC4v
dnB4ZW5jIC0tbGltaXQ9JExJTUlUIC0td2lkdGg9JFdJRFRIIC0taGVpZ2h0PSRIRUlHSFQgLS1m
cHM9JEZQUwogICAgKiAtLWxhZy1pbi1mcmFtZXM9MjUgXAotICAgKiAgLS1jb2RlYz12cDkgLS1n
b29kIC0tY3B1LXVzZWQ9MCAtLXRocmVhZHM9MCAtLXByb2ZpbGU9MCBcCisgICAqICAtLWNvZGVj
PXZwOSAtLWdvb2QgLS1jcHUtdXNlZD1DUFVfVVNFRCAtLXRocmVhZHM9MCAtLXByb2ZpbGU9MCBc
CiAgICAqICAtLW1pbi1xPTAgLS1tYXgtcT02MyAtLWF1dG8tYWx0LXJlZj0xIC0tcGFzc2VzPTIg
LS1rZi1tYXgtZGlzdD0xNTAgXAogICAgKiAgLS1rZi1taW4tZGlzdD0wIC0tZHJvcC1mcmFtZT0w
IC0tc3RhdGljLXRocmVzaD0wIC0tYmlhcy1wY3Q9NTAgXAogICAgKiAgLS1taW5zZWN0aW9uLXBj
dD0wIC0tbWF4c2VjdGlvbi1wY3Q9MTUwIC0tYXJuci1tYXhmcmFtZXM9NyAtLXBzbnIgXApAQCAt
MTkzMyw0OSArMTk5OSw1MCBAQCBWUDlFbmNvZGVyQ29uZmlnIHZwOV9nZXRfZW5jb2Rlcl9jb25m
aWcoaW50IGZyYW1lX3dpZHRoLCBpbnQgZnJhbWVfaGVpZ2h0LAogICBveGNmLnRpbGVfY29sdW1u
cyA9IDA7CiAgIG94Y2YuZnJhbWVfcGFyYWxsZWxfZGVjb2RpbmdfbW9kZSA9IDA7CiAgIG94Y2Yu
dHdvX3Bhc3NfdmJybWF4X3NlY3Rpb24gPSAxNTA7CisgIG94Y2Yuc3BlZWQgPSBhYnMoZW5jb2Rl
X3NwZWVkKTsKICAgcmV0dXJuIG94Y2Y7CiB9CiAKLSNkZWZpbmUgRFVNUF9TVFJVQ1RfVkFMVUUo
c3RydWN0LCB2YWx1ZSkgXAotICBwcmludGYoI3ZhbHVlICIgJSIgUFJJZDY0ICJcbiIsIChpbnQ2
NF90KShzdHJ1Y3QpLT52YWx1ZSkKKyNkZWZpbmUgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIHN0cnVj
dHVyZSwgdmFsdWUpIFwKKyAgZnByaW50ZihmcCwgI3ZhbHVlICIgJSIgUFJJZDY0ICJcbiIsIChp
bnQ2NF90KShzdHJ1Y3R1cmUpLT52YWx1ZSkKIAotdm9pZCB2cDlfZHVtcF9lbmNvZGVyX2NvbmZp
Zyhjb25zdCBWUDlFbmNvZGVyQ29uZmlnICpveGNmKSB7Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94
Y2YsIHByb2ZpbGUpOwotICBEVU1QX1NUUlVDVF9WQUxVRShveGNmLCBiaXRfZGVwdGgpOwotICBE
VU1QX1NUUlVDVF9WQUxVRShveGNmLCB3aWR0aCk7Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2Ys
IGhlaWdodCk7Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIGlucHV0X2JpdF9kZXB0aCk7Ci0g
IERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIGluaXRfZnJhbWVyYXRlKTsKK3ZvaWQgdnA5X2R1bXBf
ZW5jb2Rlcl9jb25maWcoY29uc3QgVlA5RW5jb2RlckNvbmZpZyAqb3hjZiwgRklMRSAqZnApIHsK
KyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIHByb2ZpbGUpOworICBEVU1QX1NUUlVDVF9W
QUxVRShmcCwgb3hjZiwgYml0X2RlcHRoKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2Ys
IHdpZHRoKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIGhlaWdodCk7CisgIERVTVBf
U1RSVUNUX1ZBTFVFKGZwLCBveGNmLCBpbnB1dF9iaXRfZGVwdGgpOworICBEVU1QX1NUUlVDVF9W
QUxVRShmcCwgb3hjZiwgaW5pdF9mcmFtZXJhdGUpOwogICAvLyBUT0RPKGFuZ2llYmlyZCk6IGR1
bXAgZ190aW1lYmFzZQogICAvLyBUT0RPKGFuZ2llYmlyZCk6IGR1bXAgZ190aW1lYmFzZV9pbl90
cwogCi0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIHRhcmdldF9iYW5kd2lkdGgpOworICBEVU1Q
X1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgdGFyZ2V0X2JhbmR3aWR0aCk7CiAKLSAgRFVNUF9TVFJV
Q1RfVkFMVUUob3hjZiwgbm9pc2Vfc2Vuc2l0aXZpdHkpOwotICBEVU1QX1NUUlVDVF9WQUxVRShv
eGNmLCBzaGFycG5lc3MpOwotICBEVU1QX1NUUlVDVF9WQUxVRShveGNmLCBzcGVlZCk7Ci0gIERV
TVBfU1RSVUNUX1ZBTFVFKG94Y2YsIHJjX21heF9pbnRyYV9iaXRyYXRlX3BjdCk7Ci0gIERVTVBf
U1RSVUNUX1ZBTFVFKG94Y2YsIHJjX21heF9pbnRlcl9iaXRyYXRlX3BjdCk7Ci0gIERVTVBfU1RS
VUNUX1ZBTFVFKG94Y2YsIGdmX2Nicl9ib29zdF9wY3QpOworICBEVU1QX1NUUlVDVF9WQUxVRShm
cCwgb3hjZiwgbm9pc2Vfc2Vuc2l0aXZpdHkpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hj
Ziwgc2hhcnBuZXNzKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIHNwZWVkKTsKKyAg
RFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIHJjX21heF9pbnRyYV9iaXRyYXRlX3BjdCk7Cisg
IERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCByY19tYXhfaW50ZXJfYml0cmF0ZV9wY3QpOwor
ICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgZ2ZfY2JyX2Jvb3N0X3BjdCk7CiAKLSAgRFVN
UF9TVFJVQ1RfVkFMVUUob3hjZiwgbW9kZSk7Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIHBh
c3MpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgbW9kZSk7CisgIERVTVBfU1RSVUNU
X1ZBTFVFKGZwLCBveGNmLCBwYXNzKTsKIAogICAvLyBLZXkgRnJhbWluZyBPcGVyYXRpb25zCi0g
IERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIGF1dG9fa2V5KTsKLSAgRFVNUF9TVFJVQ1RfVkFMVUUo
b3hjZiwga2V5X2ZyZXEpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgYXV0b19rZXkp
OworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwga2V5X2ZyZXEpOwogCi0gIERVTVBfU1RS
VUNUX1ZBTFVFKG94Y2YsIGxhZ19pbl9mcmFtZXMpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwg
b3hjZiwgbGFnX2luX2ZyYW1lcyk7CiAKICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICAvLyBEQVRBUkFURSBDT05U
Uk9MIE9QVElPTlMKIAogICAvLyB2YnIsIGNiciwgY29uc3RyYWluZWQgcXVhbGl0eSBvciBjb25z
dGFudCBxdWFsaXR5Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIHJjX21vZGUpOworICBEVU1Q
X1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgcmNfbW9kZSk7CiAKICAgLy8gYnVmZmVyIHRhcmdldGlu
ZyBhZ2dyZXNzaXZlbmVzcwotICBEVU1QX1NUUlVDVF9WQUxVRShveGNmLCB1bmRlcl9zaG9vdF9w
Y3QpOwotICBEVU1QX1NUUlVDVF9WQUxVRShveGNmLCBvdmVyX3Nob290X3BjdCk7CisgIERVTVBf
U1RSVUNUX1ZBTFVFKGZwLCBveGNmLCB1bmRlcl9zaG9vdF9wY3QpOworICBEVU1QX1NUUlVDVF9W
QUxVRShmcCwgb3hjZiwgb3Zlcl9zaG9vdF9wY3QpOwogCiAgIC8vIGJ1ZmZlcmluZyBwYXJhbWV0
ZXJzCiAgIC8vIFRPRE8oYW5naWViaXJkKTogZHVtcCB0YXJ0aW5nX2J1ZmZlcl9sZXZlbF9tcwpA
QCAtMTk4MywzNyArMjA1MCwzNyBAQCB2b2lkIHZwOV9kdW1wX2VuY29kZXJfY29uZmlnKGNvbnN0
IFZQOUVuY29kZXJDb25maWcgKm94Y2YpIHsKICAgLy8gVE9ETyhhbmdpZWJpcmQpOiBkdW1wIG1h
eGltdW1fYnVmZmVyX3NpemVfbXMKIAogICAvLyBGcmFtZSBkcm9wIHRocmVzaG9sZC4KLSAgRFVN
UF9TVFJVQ1RfVkFMVUUob3hjZiwgZHJvcF9mcmFtZXNfd2F0ZXJfbWFyayk7CisgIERVTVBfU1RS
VUNUX1ZBTFVFKGZwLCBveGNmLCBkcm9wX2ZyYW1lc193YXRlcl9tYXJrKTsKIAogICAvLyBjb250
cm9sbGluZyBxdWFsaXR5Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIGZpeGVkX3EpOwotICBE
VU1QX1NUUlVDVF9WQUxVRShveGNmLCB3b3JzdF9hbGxvd2VkX3EpOwotICBEVU1QX1NUUlVDVF9W
QUxVRShveGNmLCBiZXN0X2FsbG93ZWRfcSk7Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIGNx
X2xldmVsKTsKLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgYXFfbW9kZSk7CisgIERVTVBfU1RS
VUNUX1ZBTFVFKGZwLCBveGNmLCBmaXhlZF9xKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94
Y2YsIHdvcnN0X2FsbG93ZWRfcSk7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCBiZXN0
X2FsbG93ZWRfcSk7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCBjcV9sZXZlbCk7Cisg
IERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCBhcV9tb2RlKTsKIAogICAvLyBTcGVjaWFsIGhh
bmRsaW5nIG9mIEFkYXB0aXZlIFF1YW50aXphdGlvbiBmb3IgQWx0UmVmIGZyYW1lcwotICBEVU1Q
X1NUUlVDVF9WQUxVRShveGNmLCBhbHRfcmVmX2FxKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAs
IG94Y2YsIGFsdF9yZWZfYXEpOwogCiAgIC8vIEludGVybmFsIGZyYW1lIHNpemUgc2NhbGluZy4K
LSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgcmVzaXplX21vZGUpOwotICBEVU1QX1NUUlVDVF9W
QUxVRShveGNmLCBzY2FsZWRfZnJhbWVfd2lkdGgpOwotICBEVU1QX1NUUlVDVF9WQUxVRShveGNm
LCBzY2FsZWRfZnJhbWVfaGVpZ2h0KTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIHJl
c2l6ZV9tb2RlKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIHNjYWxlZF9mcmFtZV93
aWR0aCk7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCBzY2FsZWRfZnJhbWVfaGVpZ2h0
KTsKIAogICAvLyBFbmFibGUgZmVhdHVyZSB0byByZWR1Y2UgdGhlIGZyYW1lIHF1YW50aXphdGlv
biBldmVyeSB4IGZyYW1lcy4KLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgZnJhbWVfcGVyaW9k
aWNfYm9vc3QpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgZnJhbWVfcGVyaW9kaWNf
Ym9vc3QpOwogCiAgIC8vIHR3byBwYXNzIGRhdGFyYXRlIGNvbnRyb2wKLSAgRFVNUF9TVFJVQ1Rf
VkFMVUUob3hjZiwgdHdvX3Bhc3NfdmJyYmlhcyk7Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2Ys
IHR3b19wYXNzX3Zicm1pbl9zZWN0aW9uKTsKLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgdHdv
X3Bhc3NfdmJybWF4X3NlY3Rpb24pOwotICBEVU1QX1NUUlVDVF9WQUxVRShveGNmLCB2YnJfY29y
cHVzX2NvbXBsZXhpdHkpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgdHdvX3Bhc3Nf
dmJyYmlhcyk7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCB0d29fcGFzc192YnJtaW5f
c2VjdGlvbik7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCB0d29fcGFzc192YnJtYXhf
c2VjdGlvbik7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCB2YnJfY29ycHVzX2NvbXBs
ZXhpdHkpOwogICAvLyBFTkQgREFUQVJBVEUgQ09OVFJPTCBPUFRJT05TCiAgIC8vIC0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K
IAogICAvLyBTcGF0aWFsIGFuZCB0ZW1wb3JhbCBzY2FsYWJpbGl0eS4KLSAgRFVNUF9TVFJVQ1Rf
VkFMVUUob3hjZiwgc3NfbnVtYmVyX2xheWVycyk7Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2Ys
IHRzX251bWJlcl9sYXllcnMpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgc3NfbnVt
YmVyX2xheWVycyk7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCB0c19udW1iZXJfbGF5
ZXJzKTsKIAogICAvLyBCaXRyYXRlIGFsbG9jYXRpb24gZm9yIHNwYXRpYWwgbGF5ZXJzLgogICAv
LyBUT0RPKGFuZ2llYmlyZCk6IGR1bXAgbGF5ZXJfdGFyZ2V0X2JpdHJhdGVbVlBYX01BWF9MQVlF
UlNdCkBAIC0yMDIxLDI1ICsyMDg4LDI1IEBAIHZvaWQgdnA5X2R1bXBfZW5jb2Rlcl9jb25maWco
Y29uc3QgVlA5RW5jb2RlckNvbmZpZyAqb3hjZikgewogICAvLyBUT0RPKGFuZ2llYmlyZCk6IGR1
bXAgc3NfZW5hYmxlX2F1dG9fYXJmW1ZQWF9TU19NQVhfTEFZRVJTXQogICAvLyBUT0RPKGFuZ2ll
YmlyZCk6IGR1bXAgdHNfcmF0ZV9kZWNpbWF0b3JbVlBYX1RTX01BWF9MQVlFUlNdCiAKLSAgRFVN
UF9TVFJVQ1RfVkFMVUUob3hjZiwgZW5hYmxlX2F1dG9fYXJmKTsKLSAgRFVNUF9TVFJVQ1RfVkFM
VUUob3hjZiwgZW5jb2RlX2JyZWFrb3V0KTsKLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgZXJy
b3JfcmVzaWxpZW50X21vZGUpOwotICBEVU1QX1NUUlVDVF9WQUxVRShveGNmLCBmcmFtZV9wYXJh
bGxlbF9kZWNvZGluZ19tb2RlKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIGVuYWJs
ZV9hdXRvX2FyZik7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCBlbmNvZGVfYnJlYWtv
dXQpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgZXJyb3JfcmVzaWxpZW50X21vZGUp
OworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgZnJhbWVfcGFyYWxsZWxfZGVjb2Rpbmdf
bW9kZSk7CiAKLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgYXJucl9tYXhfZnJhbWVzKTsKLSAg
RFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgYXJucl9zdHJlbmd0aCk7CisgIERVTVBfU1RSVUNUX1ZB
TFVFKGZwLCBveGNmLCBhcm5yX21heF9mcmFtZXMpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwg
b3hjZiwgYXJucl9zdHJlbmd0aCk7CiAKLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgbWluX2dm
X2ludGVydmFsKTsKLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgbWF4X2dmX2ludGVydmFsKTsK
KyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIG1pbl9nZl9pbnRlcnZhbCk7CisgIERVTVBf
U1RSVUNUX1ZBTFVFKGZwLCBveGNmLCBtYXhfZ2ZfaW50ZXJ2YWwpOwogCi0gIERVTVBfU1RSVUNU
X1ZBTFVFKG94Y2YsIHRpbGVfY29sdW1ucyk7Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIHRp
bGVfcm93cyk7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCB0aWxlX2NvbHVtbnMpOwor
ICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgdGlsZV9yb3dzKTsKIAotICBEVU1QX1NUUlVD
VF9WQUxVRShveGNmLCBlbmFibGVfdHBsX21vZGVsKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAs
IG94Y2YsIGVuYWJsZV90cGxfbW9kZWwpOwogCi0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIG1h
eF90aHJlYWRzKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIG1heF90aHJlYWRzKTsK
IAotICBEVU1QX1NUUlVDVF9WQUxVRShveGNmLCB0YXJnZXRfbGV2ZWwpOworICBEVU1QX1NUUlVD
VF9WQUxVRShmcCwgb3hjZiwgdGFyZ2V0X2xldmVsKTsKIAogICAvLyBUT0RPKGFuZ2llYmlyZCk6
IGR1bXAgdHdvX3Bhc3Nfc3RhdHNfaW4KIApAQCAtMjA0NywxOSArMjExNCwxOSBAQCB2b2lkIHZw
OV9kdW1wX2VuY29kZXJfY29uZmlnKGNvbnN0IFZQOUVuY29kZXJDb25maWcgKm94Y2YpIHsKICAg
Ly8gVE9ETyhhbmdpZWJpcmQpOiBkdW1wIGZpcnN0cGFzc19tYl9zdGF0c19pbgogI2VuZGlmCiAK
LSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgdHVuaW5nKTsKLSAgRFVNUF9TVFJVQ1RfVkFMVUUo
b3hjZiwgY29udGVudCk7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCB0dW5pbmcpOwor
ICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgY29udGVudCk7CiAjaWYgQ09ORklHX1ZQOV9I
SUdIQklUREVQVEgKLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgdXNlX2hpZ2hiaXRkZXB0aCk7
CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCB1c2VfaGlnaGJpdGRlcHRoKTsKICNlbmRp
ZgotICBEVU1QX1NUUlVDVF9WQUxVRShveGNmLCBjb2xvcl9zcGFjZSk7Ci0gIERVTVBfU1RSVUNU
X1ZBTFVFKG94Y2YsIGNvbG9yX3JhbmdlKTsKLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgcmVu
ZGVyX3dpZHRoKTsKLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgcmVuZGVyX2hlaWdodCk7Ci0g
IERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIHRlbXBvcmFsX2xheWVyaW5nX21vZGUpOwotCi0gIERV
TVBfU1RSVUNUX1ZBTFVFKG94Y2YsIHJvd19tdCk7Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2Ys
IG1vdGlvbl92ZWN0b3JfdW5pdF90ZXN0KTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2Ys
IGNvbG9yX3NwYWNlKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIGNvbG9yX3Jhbmdl
KTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIHJlbmRlcl93aWR0aCk7CisgIERVTVBf
U1RSVUNUX1ZBTFVFKGZwLCBveGNmLCByZW5kZXJfaGVpZ2h0KTsKKyAgRFVNUF9TVFJVQ1RfVkFM
VUUoZnAsIG94Y2YsIHRlbXBvcmFsX2xheWVyaW5nX21vZGUpOworCisgIERVTVBfU1RSVUNUX1ZB
TFVFKGZwLCBveGNmLCByb3dfbXQpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgbW90
aW9uX3ZlY3Rvcl91bml0X3Rlc3QpOwogfQogCiBGUkFNRV9JTkZPIHZwOV9nZXRfZnJhbWVfaW5m
byhjb25zdCBWUDlFbmNvZGVyQ29uZmlnICpveGNmKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS92cDlfY3hfaWZhY2UuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5oCmluZGV4
IDA4NTY5ZmNjOTZjZTI0MGI3ZTA1ZjNhZTEwYTFkYzIzMTIyNmNjZGUuLjAxMzM4YWRiNGUzMTkx
MjQxMDIyYTNmZWJhYmE1N2RiNGMxNjU3MWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3Zw
OV9jeF9pZmFjZS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5oCkBAIC0xOSwx
MCArMTksMTAgQEAgZXh0ZXJuICJDIiB7CiAKIFZQOUVuY29kZXJDb25maWcgdnA5X2dldF9lbmNv
ZGVyX2NvbmZpZyhpbnQgZnJhbWVfd2lkdGgsIGludCBmcmFtZV9oZWlnaHQsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdnB4X3JhdGlvbmFsX3QgZnJhbWVfcmF0ZSwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgdGFyZ2V0X2JpdHJh
dGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHRhcmdldF9i
aXRyYXRlLCBpbnQgZW5jb2RlX3NwZWVkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHZweF9lbmNfcGFzcyBlbmNfcGFzcyk7CiAKLXZvaWQgdnA5X2R1bXBfZW5jb2Rl
cl9jb25maWcoY29uc3QgVlA5RW5jb2RlckNvbmZpZyAqb3hjZik7Cit2b2lkIHZwOV9kdW1wX2Vu
Y29kZXJfY29uZmlnKGNvbnN0IFZQOUVuY29kZXJDb25maWcgKm94Y2YsIEZJTEUgKmZwKTsKIAog
RlJBTUVfSU5GTyB2cDlfZ2V0X2ZyYW1lX2luZm8oY29uc3QgVlA5RW5jb2RlckNvbmZpZyAqb3hj
Zik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uYwppbmRleCA3NGQwOGE1ODczYTE2MTViMDEz
ODMxNDc1NDNkN2VlZDBlMjY2NjUzLi44ZDAzMTY5NGQ4ZGIwNTkwMTZhZjJjNzY3MDlmZThhMmFj
MmRkYmNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfaWZhY2VfY29tbW9uLmMKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1vbi5jCkBAIC04OCw4ICs4OCw5IEBAIHZw
eF9jb2RlY19lcnJfdCBpbWFnZTJ5dXZjb25maWcoY29uc3QgdnB4X2ltYWdlX3QgKmltZywKICAg
eXYxMi0+eV93aWR0aCA9IGltZy0+ZF93OwogICB5djEyLT55X2hlaWdodCA9IGltZy0+ZF9oOwog
Ci0gIHl2MTItPnV2X3dpZHRoID0KLSAgICAgIGltZy0+eF9jaHJvbWFfc2hpZnQgPT0gMSA/ICgx
ICsgeXYxMi0+eV93aWR0aCkgLyAyIDogeXYxMi0+eV93aWR0aDsKKyAgeXYxMi0+dXZfd2lkdGgg
PSBpbWctPnhfY2hyb21hX3NoaWZ0ID09IDEgfHwgaW1nLT5mbXQgPT0gVlBYX0lNR19GTVRfTlYx
MgorICAgICAgICAgICAgICAgICAgICAgICA/ICgxICsgeXYxMi0+eV93aWR0aCkgLyAyCisgICAg
ICAgICAgICAgICAgICAgICAgIDogeXYxMi0+eV93aWR0aDsKICAgeXYxMi0+dXZfaGVpZ2h0ID0K
ICAgICAgIGltZy0+eV9jaHJvbWFfc2hpZnQgPT0gMSA/ICgxICsgeXYxMi0+eV9oZWlnaHQpIC8g
MiA6IHl2MTItPnlfaGVpZ2h0OwogICB5djEyLT51dl9jcm9wX3dpZHRoID0geXYxMi0+dXZfd2lk
dGg7CkBAIC0xMjcsNSArMTI4LDkgQEAgdnB4X2NvZGVjX2Vycl90IGltYWdlMnl1dmNvbmZpZyhj
b25zdCB2cHhfaW1hZ2VfdCAqaW1nLAogI2VuZGlmICAvLyBDT05GSUdfVlA5X0hJR0hCSVRERVBU
SAogICB5djEyLT5zdWJzYW1wbGluZ194ID0gaW1nLT54X2Nocm9tYV9zaGlmdDsKICAgeXYxMi0+
c3Vic2FtcGxpbmdfeSA9IGltZy0+eV9jaHJvbWFfc2hpZnQ7CisgIC8vIFdoZW4gcmVhZGluZyB0
aGUgZGF0YSwgVVYgYXJlIGluIG9uZSBwbGFuZSBmb3IgTlYxMiBmb3JtYXQsIHRodXMKKyAgLy8g
eF9jaHJvbWFfc2hpZnQgaXMgMC4gQWZ0ZXIgY29udmVydGluZywgVVYgYXJlIGluIHNlcGFyYXRl
IHBsYW5lcywgYW5kCisgIC8vIHN1YnNhbXBsaW5nX3ggc2hvdWxkIGJlIHNldCB0byAxLgorICBp
ZiAoaW1nLT5mbXQgPT0gVlBYX0lNR19GTVRfTlYxMikgeXYxMi0+c3Vic2FtcGxpbmdfeCA9IDE7
CiAgIHJldHVybiBWUFhfQ09ERUNfT0s7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92
cDljeC5tayBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOWN4Lm1rCmluZGV4IGFkNzc0NTA1YzYwNzU2YjE3
ZDQ3YWNjYjczMWRlYTg1NzQwMWM2YTMuLjM4ZTk5MTY1YWY0N2Q2MDI1YzliYmMwYmJiNTg4ZDQx
ZjRkMWQxODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOWN4Lm1rCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L3ZwOWN4Lm1rCkBAIC0xOCw5ICsxOCw2IEBAIFZQOV9DWF9TUkNTX1JFTU9WRS1u
byAgKz0gJChWUDlfQ09NTU9OX1NSQ1NfUkVNT1ZFLW5vKQogVlA5X0NYX1NSQ1MteWVzICs9IHZw
OV9jeF9pZmFjZS5jCiBWUDlfQ1hfU1JDUy15ZXMgKz0gdnA5X2N4X2lmYWNlLmgKIAotVlA5X0NY
X1NSQ1MtJChDT05GSUdfUkFURV9DVFJMKSArPSBzaW1wbGVfZW5jb2RlLmNjCi1WUDlfQ1hfU1JD
Uy0kKENPTkZJR19SQVRFX0NUUkwpICs9IHNpbXBsZV9lbmNvZGUuaAotCiBWUDlfQ1hfU1JDUy15
ZXMgKz0gZW5jb2Rlci92cDlfYml0c3RyZWFtLmMKIFZQOV9DWF9TUkNTLXllcyArPSBlbmNvZGVy
L3ZwOV9jb250ZXh0X3RyZWUuYwogVlA5X0NYX1NSQ1MteWVzICs9IGVuY29kZXIvdnA5X2NvbnRl
eHRfdHJlZS5oCkBAIC05OSw2ICs5Niw4IEBAIFZQOV9DWF9TUkNTLXllcyArPSBlbmNvZGVyL3Zw
OV9za2luX2RldGVjdGlvbi5jCiBWUDlfQ1hfU1JDUy15ZXMgKz0gZW5jb2Rlci92cDlfc2tpbl9k
ZXRlY3Rpb24uaAogVlA5X0NYX1NSQ1MteWVzICs9IGVuY29kZXIvdnA5X25vaXNlX2VzdGltYXRl
LmMKIFZQOV9DWF9TUkNTLXllcyArPSBlbmNvZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5oCitWUDlf
Q1hfU1JDUy15ZXMgKz0gZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmMKK1ZQOV9DWF9TUkNTLXll
cyArPSBlbmNvZGVyL3ZwOV9leHRfcmF0ZWN0cmwuaAogaWZlcSAoJChDT05GSUdfVlA5X1BPU1RQ
Uk9DKSx5ZXMpCiBWUDlfQ1hfU1JDUy0kKENPTkZJR19JTlRFUk5BTF9TVEFUUykgKz0gY29tbW9u
L3ZwOV9wb3N0cHJvYy5oCiBWUDlfQ1hfU1JDUy0kKENPTkZJR19JTlRFUk5BTF9TVEFUUykgKz0g
Y29tbW9uL3ZwOV9wb3N0cHJvYy5jCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9pbnRlcm5h
bC92cHhfY29kZWNfaW50ZXJuYWwuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L2ludGVybmFsL3ZweF9jb2Rl
Y19pbnRlcm5hbC5oCmluZGV4IDllZWQ4NWU1ZGU3ZDFiMjcwMjI2MDg4NGFiMjVmYTU4NjBjOGMx
NWIuLjRlZjkzMDU3ZjVlYmMwYTY2ZTA0YTY2MGJkY2E1MWViMGY2Yzg4M2QgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4L2ludGVybmFsL3ZweF9jb2RlY19pbnRlcm5hbC5oCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4L2ludGVybmFsL3ZweF9jb2RlY19pbnRlcm5hbC5oCkBAIC0yNywxMyArMjcsMTUg
QEAKICAqICAgICA8L3ByZT4KICAqCiAgKiBBbiBhcHBsaWNhdGlvbiBpbnN0YW50aWF0ZXMgYSBz
cGVjaWZpYyBkZWNvZGVyIGluc3RhbmNlIGJ5IHVzaW5nCi0gKiB2cHhfY29kZWNfaW5pdCgpIGFu
ZCBhIHBvaW50ZXIgdG8gdGhlIGFsZ29yaXRobSdzIGludGVyZmFjZSBzdHJ1Y3R1cmU6CisgKiB2
cHhfY29kZWNfZGVjX2luaXQoKSBhbmQgYSBwb2ludGVyIHRvIHRoZSBhbGdvcml0aG0ncyBpbnRl
cmZhY2Ugc3RydWN0dXJlOgogICogICAgIDxwcmU+CiAgKiAgICAgbXlfYXBwLmM6CiAgKiAgICAg
ICBleHRlcm4gdnB4X2NvZGVjX2lmYWNlX3QgbXlfY29kZWM7CiAgKiAgICAgICB7CiAgKiAgICAg
ICAgICAgdnB4X2NvZGVjX2N0eF90IGFsZ287Ci0gKiAgICAgICAgICAgcmVzID0gdnB4X2NvZGVj
X2luaXQoJmFsZ28sICZteV9jb2RlYyk7CisgKiAgICAgICAgICAgaW50IHRocmVhZHMgPSA0Owor
ICogICAgICAgICAgIHZweF9jb2RlY19kZWNfY2ZnX3QgY2ZnID0geyB0aHJlYWRzLCAwLCAwIH07
CisgKiAgICAgICAgICAgcmVzID0gdnB4X2NvZGVjX2RlY19pbml0KCZhbGdvLCAmbXlfY29kZWMs
ICZjZmcsIDApOwogICogICAgICAgfQogICogICAgIDwvcHJlPgogICoKQEAgLTY2LDcgKzY4LDcg
QEAgdHlwZWRlZiBzdHJ1Y3QgdnB4X2NvZGVjX3ByaXZfZW5jX21yX2NmZyB2cHhfY29kZWNfcHJp
dl9lbmNfbXJfY2ZnX3Q7CiAvKiFcYnJpZWYgaW5pdCBmdW5jdGlvbiBwb2ludGVyIHByb3RvdHlw
ZQogICoKICAqIFBlcmZvcm1zIGFsZ29yaXRobS1zcGVjaWZpYyBpbml0aWFsaXphdGlvbiBvZiB0
aGUgZGVjb2RlciBjb250ZXh0LiBUaGlzCi0gKiBmdW5jdGlvbiBpcyBjYWxsZWQgYnkgdGhlIGdl
bmVyaWMgdnB4X2NvZGVjX2luaXQoKSB3cmFwcGVyIGZ1bmN0aW9uLCBzbworICogZnVuY3Rpb24g
aXMgY2FsbGVkIGJ5IHZweF9jb2RlY19kZWNfaW5pdCgpIGFuZCB2cHhfY29kZWNfZW5jX2luaXQo
KSwgc28KICAqIHBsdWdpbnMgaW1wbGVtZW50aW5nIHRoaXMgaW50ZXJmYWNlIG1heSB0cnVzdCB0
aGUgaW5wdXQgcGFyYW1ldGVycyB0byBiZQogICogcHJvcGVybHkgaW5pdGlhbGl6ZWQuCiAgKgpA
QCAtMTc1LDE2ICsxNzcsMTUgQEAgdHlwZWRlZiBjb25zdCBzdHJ1Y3QgdnB4X2NvZGVjX2N0cmxf
Zm5fbWFwIHsKIC8qIVxicmllZiBkZWNvZGUgZGF0YSBmdW5jdGlvbiBwb2ludGVyIHByb3RvdHlw
ZQogICoKICAqIFByb2Nlc3NlcyBhIGJ1ZmZlciBvZiBjb2RlZCBkYXRhLiBJZiB0aGUgcHJvY2Vz
c2luZyByZXN1bHRzIGluIGEgbmV3Ci0gKiBkZWNvZGVkIGZyYW1lIGJlY29taW5nIGF2YWlsYWJs
ZSwgI1ZQWF9DT0RFQ19DQl9QVVRfU0xJQ0UgYW5kCi0gKiAjVlBYX0NPREVDX0NCX1BVVF9GUkFN
RSBldmVudHMgYXJlIGdlbmVyYXRlZCBhcyBhcHByb3ByaWF0ZS4gVGhpcwotICogZnVuY3Rpb24g
aXMgY2FsbGVkIGJ5IHRoZSBnZW5lcmljIHZweF9jb2RlY19kZWNvZGUoKSB3cmFwcGVyIGZ1bmN0
aW9uLAotICogc28gcGx1Z2lucyBpbXBsZW1lbnRpbmcgdGhpcyBpbnRlcmZhY2UgbWF5IHRydXN0
IHRoZSBpbnB1dCBwYXJhbWV0ZXJzCi0gKiB0byBiZSBwcm9wZXJseSBpbml0aWFsaXplZC4KKyAq
IGRlY29kZWQgZnJhbWUgYmVjb21pbmcgYXZhaWxhYmxlLCBwdXRfc2xpY2UgYW5kIHB1dF9mcmFt
ZSBjYWxsYmFja3MKKyAqIGFyZSBpbnZva2VkIGFzIGFwcHJvcHJpYXRlLiBUaGlzIGZ1bmN0aW9u
IGlzIGNhbGxlZCBieSB0aGUgZ2VuZXJpYworICogdnB4X2NvZGVjX2RlY29kZSgpIHdyYXBwZXIg
ZnVuY3Rpb24sIHNvIHBsdWdpbnMgaW1wbGVtZW50aW5nIHRoaXMKKyAqIGludGVyZmFjZSBtYXkg
dHJ1c3QgdGhlIGlucHV0IHBhcmFtZXRlcnMgdG8gYmUgcHJvcGVybHkgaW5pdGlhbGl6ZWQuCiAg
KgogICogXHBhcmFtW2luXSBjdHggICAgICAgICAgUG9pbnRlciB0byB0aGlzIGluc3RhbmNlJ3Mg
Y29udGV4dAogICogXHBhcmFtW2luXSBkYXRhICAgICAgICAgUG9pbnRlciB0byB0aGlzIGJsb2Nr
IG9mIG5ldyBjb2RlZCBkYXRhLiBJZgotICogICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwg
YSAjVlBYX0NPREVDX0NCX1BVVF9GUkFNRSBldmVudCBpcyBwb3N0ZWQKLSAqICAgICAgICAgICAg
ICAgICAgICAgICAgIGZvciB0aGUgcHJldmlvdXNseSBkZWNvZGVkIGZyYW1lLgorICogICAgICAg
ICAgICAgICAgICAgICAgICAgTlVMTCwgdGhlIHB1dF9mcmFtZSBjYWxsYmFjayBpcyBpbnZva2Vk
IGZvcgorICogICAgICAgICAgICAgICAgICAgICAgICAgdGhlIHByZXZpb3VzbHkgZGVjb2RlZCBm
cmFtZS4KICAqIFxwYXJhbVtpbl0gZGF0YV9zeiAgICAgIFNpemUgb2YgdGhlIGNvZGVkIGRhdGEs
IGluIGJ5dGVzLgogICoKICAqIFxyZXR1cm4gUmV0dXJucyAjVlBYX0NPREVDX09LIGlmIHRoZSBj
b2RlZCBkYXRhIHdhcyBwcm9jZXNzZWQgY29tcGxldGVseQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvc3JjL3ZweF9jb2RlYy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9jb2RlYy5jCmlu
ZGV4IDEwMzMxYWEyMWIwMWY0Njc4YTEyMzU5NjIzODhmZjYxMDhiMTEyN2YuLjExNGI5NGUxOTRi
ZTY1ZTFlYjNjYmIzNDQ2ZjkzNjI3MmQ4NGViNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
L3NyYy92cHhfY29kZWMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2NvZGVjLmMKQEAg
LTk3LDcgKzk3LDcgQEAgdnB4X2NvZGVjX2Vycl90IHZweF9jb2RlY19jb250cm9sXyh2cHhfY29k
ZWNfY3R4X3QgKmN0eCwgaW50IGN0cmxfaWQsIC4uLikgewogCiAgICAgcmVzID0gVlBYX0NPREVD
X0lOQ0FQQUJMRTsKIAotICAgIGZvciAoZW50cnkgPSBjdHgtPmlmYWNlLT5jdHJsX21hcHM7IGVu
dHJ5ICYmIGVudHJ5LT5mbjsgZW50cnkrKykgeworICAgIGZvciAoZW50cnkgPSBjdHgtPmlmYWNl
LT5jdHJsX21hcHM7IGVudHJ5LT5mbjsgZW50cnkrKykgewogICAgICAgaWYgKCFlbnRyeS0+Y3Ry
bF9pZCB8fCBlbnRyeS0+Y3RybF9pZCA9PSBjdHJsX2lkKSB7CiAgICAgICAgIHZhX2xpc3QgYXA7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfZGVjb2Rlci5jIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHgvc3JjL3ZweF9kZWNvZGVyLmMKaW5kZXggZmMxYzJiY2NhZTc3ZjUwNjdjMjZiZDQ0
YWY2NmUzMTZkODkwOGZiZC4uNDI3Y2QxYmY0MzQxNjdmY2JmZDA5YTRhOWIwMTczNzVkODJmNWJj
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9kZWNvZGVyLmMKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvc3JjL3ZweF9kZWNvZGVyLmMKQEAgLTEzOCw5ICsxMzgsMTAgQEAgdnB4X2Nv
ZGVjX2Vycl90IHZweF9jb2RlY19yZWdpc3Rlcl9wdXRfZnJhbWVfY2IodnB4X2NvZGVjX2N0eF90
ICpjdHgsCiAKICAgaWYgKCFjdHggfHwgIWNiKQogICAgIHJlcyA9IFZQWF9DT0RFQ19JTlZBTElE
X1BBUkFNOwotICBlbHNlIGlmICghY3R4LT5pZmFjZSB8fCAhY3R4LT5wcml2IHx8Ci0gICAgICAg
ICAgICEoY3R4LT5pZmFjZS0+Y2FwcyAmIFZQWF9DT0RFQ19DQVBfUFVUX0ZSQU1FKSkKKyAgZWxz
ZSBpZiAoIWN0eC0+aWZhY2UgfHwgIWN0eC0+cHJpdikKICAgICByZXMgPSBWUFhfQ09ERUNfRVJS
T1I7CisgIGVsc2UgaWYgKCEoY3R4LT5pZmFjZS0+Y2FwcyAmIFZQWF9DT0RFQ19DQVBfUFVUX0ZS
QU1FKSkKKyAgICByZXMgPSBWUFhfQ09ERUNfSU5DQVBBQkxFOwogICBlbHNlIHsKICAgICBjdHgt
PnByaXYtPmRlYy5wdXRfZnJhbWVfY2IudS5wdXRfZnJhbWUgPSBjYjsKICAgICBjdHgtPnByaXYt
PmRlYy5wdXRfZnJhbWVfY2IudXNlcl9wcml2ID0gdXNlcl9wcml2OwpAQCAtMTU3LDkgKzE1OCwx
MCBAQCB2cHhfY29kZWNfZXJyX3QgdnB4X2NvZGVjX3JlZ2lzdGVyX3B1dF9zbGljZV9jYih2cHhf
Y29kZWNfY3R4X3QgKmN0eCwKIAogICBpZiAoIWN0eCB8fCAhY2IpCiAgICAgcmVzID0gVlBYX0NP
REVDX0lOVkFMSURfUEFSQU07Ci0gIGVsc2UgaWYgKCFjdHgtPmlmYWNlIHx8ICFjdHgtPnByaXYg
fHwKLSAgICAgICAgICAgIShjdHgtPmlmYWNlLT5jYXBzICYgVlBYX0NPREVDX0NBUF9QVVRfU0xJ
Q0UpKQorICBlbHNlIGlmICghY3R4LT5pZmFjZSB8fCAhY3R4LT5wcml2KQogICAgIHJlcyA9IFZQ
WF9DT0RFQ19FUlJPUjsKKyAgZWxzZSBpZiAoIShjdHgtPmlmYWNlLT5jYXBzICYgVlBYX0NPREVD
X0NBUF9QVVRfU0xJQ0UpKQorICAgIHJlcyA9IFZQWF9DT0RFQ19JTkNBUEFCTEU7CiAgIGVsc2Ug
ewogICAgIGN0eC0+cHJpdi0+ZGVjLnB1dF9zbGljZV9jYi51LnB1dF9zbGljZSA9IGNiOwogICAg
IGN0eC0+cHJpdi0+ZGVjLnB1dF9zbGljZV9jYi51c2VyX3ByaXYgPSB1c2VyX3ByaXY7CkBAIC0x
NzYsOSArMTc4LDEwIEBAIHZweF9jb2RlY19lcnJfdCB2cHhfY29kZWNfc2V0X2ZyYW1lX2J1ZmZl
cl9mdW5jdGlvbnMoCiAKICAgaWYgKCFjdHggfHwgIWNiX2dldCB8fCAhY2JfcmVsZWFzZSkgewog
ICAgIHJlcyA9IFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNOwotICB9IGVsc2UgaWYgKCFjdHgtPmlm
YWNlIHx8ICFjdHgtPnByaXYgfHwKLSAgICAgICAgICAgICAhKGN0eC0+aWZhY2UtPmNhcHMgJiBW
UFhfQ09ERUNfQ0FQX0VYVEVSTkFMX0ZSQU1FX0JVRkZFUikpIHsKKyAgfSBlbHNlIGlmICghY3R4
LT5pZmFjZSB8fCAhY3R4LT5wcml2KSB7CiAgICAgcmVzID0gVlBYX0NPREVDX0VSUk9SOworICB9
IGVsc2UgaWYgKCEoY3R4LT5pZmFjZS0+Y2FwcyAmIFZQWF9DT0RFQ19DQVBfRVhURVJOQUxfRlJB
TUVfQlVGRkVSKSkgeworICAgIHJlcyA9IFZQWF9DT0RFQ19JTkNBUEFCTEU7CiAgIH0gZWxzZSB7
CiAgICAgcmVzID0gY3R4LT5pZmFjZS0+ZGVjLnNldF9mYl9mbihnZXRfYWxnX3ByaXYoY3R4KSwg
Y2JfZ2V0LCBjYl9yZWxlYXNlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y2JfcHJpdik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2VuY29kZXIuYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfZW5jb2Rlci5jCmluZGV4IDYyNzI1MDJjZWQxNmRjNzBl
ZjZiZTdiZWNlMzJhMTQxZjI5MmJlZWEuLmY2MzZiNTRhMzM0OTJkZWZjODU5MTU5YzhjOTgwMTMz
NzZjMzBkZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfZW5jb2Rlci5jCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfZW5jb2Rlci5jCkBAIC0xNTIsMjIgKzE1MiwxNSBA
QCB2cHhfY29kZWNfZXJyX3QgdnB4X2NvZGVjX2VuY19jb25maWdfZGVmYXVsdCh2cHhfY29kZWNf
aWZhY2VfdCAqaWZhY2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB2cHhfY29kZWNfZW5jX2NmZ190ICpjZmcsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgdXNhZ2UpIHsKICAgdnB4X2NvZGVjX2Vy
cl90IHJlczsKLSAgdnB4X2NvZGVjX2VuY19jZmdfbWFwX3QgKm1hcDsKLSAgaW50IGk7CiAKICAg
aWYgKCFpZmFjZSB8fCAhY2ZnIHx8IHVzYWdlICE9IDApCiAgICAgcmVzID0gVlBYX0NPREVDX0lO
VkFMSURfUEFSQU07CiAgIGVsc2UgaWYgKCEoaWZhY2UtPmNhcHMgJiBWUFhfQ09ERUNfQ0FQX0VO
Q09ERVIpKQogICAgIHJlcyA9IFZQWF9DT0RFQ19JTkNBUEFCTEU7CiAgIGVsc2UgewotICAgIHJl
cyA9IFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNOwotCi0gICAgZm9yIChpID0gMDsgaSA8IGlmYWNl
LT5lbmMuY2ZnX21hcF9jb3VudDsgKytpKSB7Ci0gICAgICBtYXAgPSBpZmFjZS0+ZW5jLmNmZ19t
YXBzICsgaTsKLSAgICAgICpjZmcgPSBtYXAtPmNmZzsKLSAgICAgIHJlcyA9IFZQWF9DT0RFQ19P
SzsKLSAgICAgIGJyZWFrOwotICAgIH0KKyAgICBhc3NlcnQoaWZhY2UtPmVuYy5jZmdfbWFwX2Nv
dW50ID09IDEpOworICAgICpjZmcgPSBpZmFjZS0+ZW5jLmNmZ19tYXBzLT5jZmc7CisgICAgcmVz
ID0gVlBYX0NPREVDX09LOwogICB9CiAKICAgcmV0dXJuIHJlczsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4L3NyYy92cHhfaW1hZ2UuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfaW1hZ2Uu
YwppbmRleCBhN2M2ZWMwY2VhYmY3NTgxN2ZjZDE4NTg0ZjZkNTZkMWUwOTA2ZjYyLi5mZjQ5NmI1
ZDM0ZjE0MzgxMDQyOGE5YWE4N2I0YzA3MjE1M2ZmZGVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweC9zcmMvdnB4X2ltYWdlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9pbWFnZS5j
CkBAIC0zOSw3ICszOSw4IEBAIHN0YXRpYyB2cHhfaW1hZ2VfdCAqaW1nX2FsbG9jX2hlbHBlcih2
cHhfaW1hZ2VfdCAqaW1nLCB2cHhfaW1nX2ZtdF90IGZtdCwKICAgLyogR2V0IHNhbXBsZSBzaXpl
IGZvciB0aGlzIGZvcm1hdCAqLwogICBzd2l0Y2ggKGZtdCkgewogICAgIGNhc2UgVlBYX0lNR19G
TVRfSTQyMDoKLSAgICBjYXNlIFZQWF9JTUdfRk1UX1lWMTI6IGJwcyA9IDEyOyBicmVhazsKKyAg
ICBjYXNlIFZQWF9JTUdfRk1UX1lWMTI6CisgICAgY2FzZSBWUFhfSU1HX0ZNVF9OVjEyOiBicHMg
PSAxMjsgYnJlYWs7CiAgICAgY2FzZSBWUFhfSU1HX0ZNVF9JNDIyOgogICAgIGNhc2UgVlBYX0lN
R19GTVRfSTQ0MDogYnBzID0gMTY7IGJyZWFrOwogICAgIGNhc2UgVlBYX0lNR19GTVRfSTQ0NDog
YnBzID0gMjQ7IGJyZWFrOwpAQCAtNTEsNiArNTIsOCBAQCBzdGF0aWMgdnB4X2ltYWdlX3QgKmlt
Z19hbGxvY19oZWxwZXIodnB4X2ltYWdlX3QgKmltZywgdnB4X2ltZ19mbXRfdCBmbXQsCiAgIH0K
IAogICAvKiBHZXQgY2hyb21hIHNoaWZ0IHZhbHVlcyBmb3IgdGhpcyBmb3JtYXQgKi8KKyAgLy8g
Rm9yIFZQWF9JTUdfRk1UX05WMTIsIHhjcyBuZWVkcyB0byBiZSAwIHN1Y2ggdGhhdCBVViBkYXRh
IGlzIGFsbCByZWFkIGF0CisgIC8vIG9uZSB0aW1lLgogICBzd2l0Y2ggKGZtdCkgewogICAgIGNh
c2UgVlBYX0lNR19GTVRfSTQyMDoKICAgICBjYXNlIFZQWF9JTUdfRk1UX1lWMTI6CkBAIC02Miw2
ICs2NSw3IEBAIHN0YXRpYyB2cHhfaW1hZ2VfdCAqaW1nX2FsbG9jX2hlbHBlcih2cHhfaW1hZ2Vf
dCAqaW1nLCB2cHhfaW1nX2ZtdF90IGZtdCwKIAogICBzd2l0Y2ggKGZtdCkgewogICAgIGNhc2Ug
VlBYX0lNR19GTVRfSTQyMDoKKyAgICBjYXNlIFZQWF9JTUdfRk1UX05WMTI6CiAgICAgY2FzZSBW
UFhfSU1HX0ZNVF9JNDQwOgogICAgIGNhc2UgVlBYX0lNR19GTVRfWVYxMjoKICAgICBjYXNlIFZQ
WF9JTUdfRk1UX0k0MjAxNjoKQEAgLTE3Myw3ICsxNzcsMTIgQEAgaW50IHZweF9pbWdfc2V0X3Jl
Y3QodnB4X2ltYWdlX3QgKmltZywgdW5zaWduZWQgaW50IHgsIHVuc2lnbmVkIGludCB5LAogICAg
ICAgICAgIGRhdGEgKyB4ICogYnl0ZXNfcGVyX3NhbXBsZSArIHkgKiBpbWctPnN0cmlkZVtWUFhf
UExBTkVfWV07CiAgICAgICBkYXRhICs9IGltZy0+aCAqIGltZy0+c3RyaWRlW1ZQWF9QTEFORV9Z
XTsKIAotICAgICAgaWYgKCEoaW1nLT5mbXQgJiBWUFhfSU1HX0ZNVF9VVl9GTElQKSkgeworICAg
ICAgaWYgKGltZy0+Zm10ID09IFZQWF9JTUdfRk1UX05WMTIpIHsKKyAgICAgICAgaW1nLT5wbGFu
ZXNbVlBYX1BMQU5FX1VdID0KKyAgICAgICAgICAgIGRhdGEgKyAoeCA+PiBpbWctPnhfY2hyb21h
X3NoaWZ0KSArCisgICAgICAgICAgICAoeSA+PiBpbWctPnlfY2hyb21hX3NoaWZ0KSAqIGltZy0+
c3RyaWRlW1ZQWF9QTEFORV9VXTsKKyAgICAgICAgaW1nLT5wbGFuZXNbVlBYX1BMQU5FX1ZdID0g
aW1nLT5wbGFuZXNbVlBYX1BMQU5FX1VdICsgMTsKKyAgICAgIH0gZWxzZSBpZiAoIShpbWctPmZt
dCAmIFZQWF9JTUdfRk1UX1VWX0ZMSVApKSB7CiAgICAgICAgIGltZy0+cGxhbmVzW1ZQWF9QTEFO
RV9VXSA9CiAgICAgICAgICAgICBkYXRhICsgKHggPj4gaW1nLT54X2Nocm9tYV9zaGlmdCkgKiBi
eXRlc19wZXJfc2FtcGxlICsKICAgICAgICAgICAgICh5ID4+IGltZy0+eV9jaHJvbWFfc2hpZnQp
ICogaW1nLT5zdHJpZGVbVlBYX1BMQU5FX1VdOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgv
dnA4Y3guaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOGN4LmgKaW5kZXggZGNkZDcxMGMwYmExYTE2MWVm
ODIxOGJiYzZmYTU4MTJmNzBkOWVjZS4uMzdhZDA3ZDMzZDlhY2Q4NDJmZTQwZTMyMmY3ZjIyZTkw
ZmVmNmM3MyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnA4Y3guaAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC92cDhjeC5oCkBAIC0xNyw2ICsxNyw3IEBACiAgKi8KICNpbmNsdWRlICIuL3ZwOC5o
IgogI2luY2x1ZGUgIi4vdnB4X2VuY29kZXIuaCIKKyNpbmNsdWRlICIuL3ZweF9leHRfcmF0ZWN0
cmwuaCIKIAogLyohXGZpbGUKICAqIFxicmllZiBQcm92aWRlcyBkZWZpbml0aW9ucyBmb3IgdXNp
bmcgVlA4IG9yIFZQOSBlbmNvZGVyIGFsZ29yaXRobSB3aXRoaW4gdGhlCkBAIC02ODQsNiArNjg1
LDMzIEBAIGVudW0gdnA4ZV9lbmNfY29udHJvbF9pZCB7CiAgICAqIFN1cHBvcnRlZCBpbiBjb2Rl
Y3M6IFZQOQogICAgKi8KICAgVlA5RV9TRVRfREVMVEFfUV9VViwKKworICAvKiFcYnJpZWYgQ29k
ZWMgY29udHJvbCBmdW5jdGlvbiB0byBkaXNhYmxlIGluY3JlYXNlIFEgb24gb3ZlcnNob290IGlu
IENCUi4KKyAgICoKKyAgICogMDogT24gKGRlZmF1bHQpLCAxOiBEaXNhYmxlLgorICAgKgorICAg
KiBTdXBwb3J0ZWQgaW4gY29kZWNzOiBWUDkKKyAgICovCisgIFZQOUVfU0VUX0RJU0FCTEVfT1ZF
UlNIT09UX01BWFFfQ0JSLAorCisgIC8qIVxicmllZiBDb2RlYyBjb250cm9sIGZ1bmN0aW9uIHRv
IGRpc2FibGUgbG9vcGZpbHRlci4KKyAgICoKKyAgICogMDogTG9vcGZpbHRlciBvbiBhbGwgZnJh
bWVzLCAxOiBEaXNhYmxlIG9uIG5vbiByZWZlcmVuY2UgZnJhbWVzLgorICAgKiAyOiBEaXNhYmxl
IG9uIGFsbCBmcmFtZXMuCisgICAqCisgICAqIFN1cHBvcnRlZCBpbiBjb2RlY3M6IFZQOQorICAg
Ki8KKyAgVlA5RV9TRVRfRElTQUJMRV9MT09QRklMVEVSLAorCisgIC8qIVxicmllZiBDb2RlYyBj
b250cm9sIGZ1bmN0aW9uIHRvIGVuYWJsZSBleHRlcm5hbCByYXRlIGNvbnRyb2wgbGlicmFyeS4K
KyAgICoKKyAgICogYXJnc1swXTogcGF0aCBvZiB0aGUgcmF0ZSBjb250cm9sIGxpYnJhcnkKKyAg
ICoKKyAgICogYXJnc1sxXTogcHJpdmF0ZSBjb25maWcgb2YgdGhlIHJhdGUgY29udHJvbCBsaWJy
YXJ5CisgICAqCisgICAqIFN1cHBvcnRlZCBpbiBjb2RlY3M6IFZQOQorICAgKi8KKyAgVlA5RV9T
RVRfRVhURVJOQUxfUkFURV9DT05UUk9MLAogfTsKIAogLyohXGJyaWVmIHZweCAxLUQgc2NhbGlu
ZyBtb2RlCkBAIC0xMDM0LDYgKzEwNjIsMTUgQEAgVlBYX0NUUkxfVVNFX1RZUEUoVlA5RV9TRVRf
UE9TVEVOQ09ERV9EUk9QLCB1bnNpZ25lZCBpbnQpCiBWUFhfQ1RSTF9VU0VfVFlQRShWUDlFX1NF
VF9ERUxUQV9RX1VWLCBpbnQpCiAjZGVmaW5lIFZQWF9DVFJMX1ZQOUVfU0VUX0RFTFRBX1FfVVYK
IAorVlBYX0NUUkxfVVNFX1RZUEUoVlA5RV9TRVRfRElTQUJMRV9PVkVSU0hPT1RfTUFYUV9DQlIs
IGludCkKKyNkZWZpbmUgVlBYX0NUUkxfVlA5RV9TRVRfRElTQUJMRV9PVkVSU0hPT1RfTUFYUV9D
QlIKKworVlBYX0NUUkxfVVNFX1RZUEUoVlA5RV9TRVRfRElTQUJMRV9MT09QRklMVEVSLCBpbnQp
CisjZGVmaW5lIFZQWF9DVFJMX1ZQOUVfU0VUX0RJU0FCTEVfTE9PUEZJTFRFUgorCitWUFhfQ1RS
TF9VU0VfVFlQRShWUDlFX1NFVF9FWFRFUk5BTF9SQVRFX0NPTlRST0wsIHZweF9yY19mdW5jc190
ICopCisjZGVmaW5lIFZQWF9DVFJMX1ZQOUVfU0VUX0VYVEVSTkFMX1JBVEVfQ09OVFJPTAorCiAv
KiFcZW5kY29uZCAqLwogLyohIEB9IC0gZW5kIGRlZmdyb3VwIHZwOF9lbmNvZGVyICovCiAjaWZk
ZWYgX19jcGx1c3BsdXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9jb2RlYy5oIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHgvdnB4X2NvZGVjLmgKaW5kZXggNjM3MWE2Y2EyODEyNjU0NTZiY2E4ZDM0
ZmFhZjBiOTQ1NDJhNTk5NC4uYjBhOTMxZTAxOTFhMmIwZWE4MzM4ZmZmZGU0ZTM3NjExNmVlMGYw
MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2NvZGVjLmgKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvdnB4X2NvZGVjLmgKQEAgLTIyLDEzICsyMiwxNiBAQAogICogdmlkZW8gY29kZWMgYWxn
b3JpdGhtLgogICoKICAqIEFuIGFwcGxpY2F0aW9uIGluc3RhbnRpYXRlcyBhIHNwZWNpZmljIGNv
ZGVjIGluc3RhbmNlIGJ5IHVzaW5nCi0gKiB2cHhfY29kZWNfaW5pdCgpIGFuZCBhIHBvaW50ZXIg
dG8gdGhlIGFsZ29yaXRobSdzIGludGVyZmFjZSBzdHJ1Y3R1cmU6CisgKiB2cHhfY29kZWNfZGVj
X2luaXQoKSBvciB2cHhfY29kZWNfZW5jX2luaXQoKSBhbmQgYSBwb2ludGVyIHRvIHRoZQorICog
YWxnb3JpdGhtJ3MgaW50ZXJmYWNlIHN0cnVjdHVyZToKICAqICAgICA8cHJlPgogICogICAgIG15
X2FwcC5jOgogICogICAgICAgZXh0ZXJuIHZweF9jb2RlY19pZmFjZV90IG15X2NvZGVjOwogICog
ICAgICAgewogICogICAgICAgICAgIHZweF9jb2RlY19jdHhfdCBhbGdvOwotICogICAgICAgICAg
IHJlcyA9IHZweF9jb2RlY19pbml0KCZhbGdvLCAmbXlfY29kZWMpOworICogICAgICAgICAgIGlu
dCB0aHJlYWRzID0gNDsKKyAqICAgICAgICAgICB2cHhfY29kZWNfZGVjX2NmZ190IGNmZyA9IHsg
dGhyZWFkcywgMCwgMCB9OworICogICAgICAgICAgIHJlcyA9IHZweF9jb2RlY19kZWNfaW5pdCgm
YWxnbywgJm15X2NvZGVjLCAmY2ZnLCAwKTsKICAqICAgICAgIH0KICAqICAgICA8L3ByZT4KICAq
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfY29kZWMubWsgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eC92cHhfY29kZWMubWsKaW5kZXggNGVkNzdhZDZkOWRmZmNiYTBjNWU1YjM4MThkMThmMmRkMWMx
OWI5ZS4uMzUwZGMyNDdiYzRkMGIwYjA0Mjk2NTdkY2U1OGI5NzJlY2RjNmY4ZiAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHgvdnB4X2NvZGVjLm1rCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9j
b2RlYy5tawpAQCAtMjQsNiArMjQsNyBAQCBBUElfRE9DX1NSQ1MtJChDT05GSUdfVlA4X0RFQ09E
RVIpICs9IHZwOGR4LmgKIEFQSV9ET0NfU1JDUy15ZXMgKz0gdnB4X2NvZGVjLmgKIEFQSV9ET0Nf
U1JDUy15ZXMgKz0gdnB4X2RlY29kZXIuaAogQVBJX0RPQ19TUkNTLXllcyArPSB2cHhfZW5jb2Rl
ci5oCitBUElfRE9DX1NSQ1MteWVzICs9IHZweF9leHRfcmF0ZWN0cmwuaAogQVBJX0RPQ19TUkNT
LXllcyArPSB2cHhfZnJhbWVfYnVmZmVyLmgKIEFQSV9ET0NfU1JDUy15ZXMgKz0gdnB4X2ltYWdl
LmgKIApAQCAtMzksMyArNDAsNCBAQCBBUElfU1JDUy15ZXMgKz0gdnB4X2NvZGVjLm1rCiBBUElf
U1JDUy15ZXMgKz0gdnB4X2ZyYW1lX2J1ZmZlci5oCiBBUElfU1JDUy15ZXMgKz0gdnB4X2ltYWdl
LmgKIEFQSV9TUkNTLXllcyArPSB2cHhfaW50ZWdlci5oCitBUElfU1JDUy15ZXMgKz0gdnB4X2V4
dF9yYXRlY3RybC5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZGVjb2Rlci5oIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHgvdnB4X2RlY29kZXIuaAppbmRleCBmMTEzZjcxOTZiNmE3NmI1ODE0ZGE3
OWU5NzQ4MzA5MGI2NDE0ZTY4Li4zOWU1ZjU4NWY2YjliNmU2MzVkMjRlOWI1MjdjMTU4Y2UwOTQy
OGYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZGVjb2Rlci5oCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4L3ZweF9kZWNvZGVyLmgKQEAgLTU4LDYgKzU4LDEwIEBAIGV4dGVybiAiQyIgewog
I2RlZmluZSBWUFhfQ09ERUNfQ0FQX0VSUk9SX0NPTkNFQUxNRU5UIDB4ODAwMDAKIC8qIVxicmll
ZiBDYW4gcmVjZWl2ZSBlbmNvZGVkIGZyYW1lcyBvbmUgZnJhZ21lbnQgYXQgYSB0aW1lICovCiAj
ZGVmaW5lIFZQWF9DT0RFQ19DQVBfSU5QVVRfRlJBR01FTlRTIDB4MTAwMDAwCisvKiFcYnJpZWYg
Q2FuIHN1cHBvcnQgZnJhbWUtYmFzZWQgbXVsdGktdGhyZWFkaW5nICovCisjZGVmaW5lIFZQWF9D
T0RFQ19DQVBfRlJBTUVfVEhSRUFESU5HIDB4MjAwMDAwCisvKiFicmllZiBDYW4gc3VwcG9ydCBl
eHRlcm5hbCBmcmFtZSBidWZmZXJzICovCisjZGVmaW5lIFZQWF9DT0RFQ19DQVBfRVhURVJOQUxf
RlJBTUVfQlVGRkVSIDB4NDAwMDAwCiAKIC8qISBcYnJpZWYgSW5pdGlhbGl6YXRpb24tdGltZSBG
ZWF0dXJlIEVuYWJsaW5nCiAgKgpAQCAtNjYsMTEgKzcwLDYgQEAgZXh0ZXJuICJDIiB7CiAgKgog
ICogIFRoZSBhdmFpbGFibGUgZmxhZ3MgYXJlIHNwZWNpZmllZCBieSBWUFhfQ09ERUNfVVNFXyog
ZGVmaW5lcy4KICAqLwotLyohXGJyaWVmIENhbiBzdXBwb3J0IGZyYW1lLWJhc2VkIG11bHRpLXRo
cmVhZGluZyAqLwotI2RlZmluZSBWUFhfQ09ERUNfQ0FQX0ZSQU1FX1RIUkVBRElORyAweDIwMDAw
MAotLyohYnJpZWYgQ2FuIHN1cHBvcnQgZXh0ZXJuYWwgZnJhbWUgYnVmZmVycyAqLwotI2RlZmlu
ZSBWUFhfQ09ERUNfQ0FQX0VYVEVSTkFMX0ZSQU1FX0JVRkZFUiAweDQwMDAwMAotCiAjZGVmaW5l
IFZQWF9DT0RFQ19VU0VfUE9TVFBST0MgMHgxMDAwMCAvKio8IFBvc3Rwcm9jZXNzIGRlY29kZWQg
ZnJhbWUgKi8KIC8qIVxicmllZiBDb25jZWFsIGVycm9ycyBpbiBkZWNvZGVkIGZyYW1lcyAqLwog
I2RlZmluZSBWUFhfQ09ERUNfVVNFX0VSUk9SX0NPTkNFQUxNRU5UIDB4MjAwMDAKQEAgLTE4NSw4
ICsxODQsOCBAQCB2cHhfY29kZWNfZXJyX3QgdnB4X2NvZGVjX2dldF9zdHJlYW1faW5mbyh2cHhf
Y29kZWNfY3R4X3QgKmN0eCwKIC8qIVxicmllZiBEZWNvZGUgZGF0YQogICoKICAqIFByb2Nlc3Nl
cyBhIGJ1ZmZlciBvZiBjb2RlZCBkYXRhLiBJZiB0aGUgcHJvY2Vzc2luZyByZXN1bHRzIGluIGEg
bmV3Ci0gKiBkZWNvZGVkIGZyYW1lIGJlY29taW5nIGF2YWlsYWJsZSwgUFVUX1NMSUNFIGFuZCBQ
VVRfRlJBTUUgZXZlbnRzIG1heSBiZQotICogZ2VuZXJhdGVkLCBhcyBhcHByb3ByaWF0ZS4gRW5j
b2RlZCBkYXRhIFxyZWYgTVVTVCBiZSBwYXNzZWQgaW4gRFRTIChkZWNvZGUKKyAqIGRlY29kZWQg
ZnJhbWUgYmVjb21pbmcgYXZhaWxhYmxlLCBwdXRfc2xpY2UgYW5kIHB1dF9mcmFtZSBjYWxsYmFj
a3MgbWF5IGJlCisgKiBpbnZva2VkLCBhcyBhcHByb3ByaWF0ZS4gRW5jb2RlZCBkYXRhIFxyZWYg
TVVTVCBiZSBwYXNzZWQgaW4gRFRTIChkZWNvZGUKICAqIHRpbWUgc3RhbXApIG9yZGVyLiBGcmFt
ZXMgcHJvZHVjZWQgd2lsbCBhbHdheXMgYmUgaW4gUFRTIChwcmVzZW50YXRpb24KICAqIHRpbWUg
c3RhbXApIG9yZGVyLgogICogSWYgdGhlIGRlY29kZXIgaXMgY29uZmlndXJlZCB3aXRoIFZQWF9D
T0RFQ19VU0VfSU5QVVRfRlJBR01FTlRTIGVuYWJsZWQsCkBAIC0xOTksOCArMTk4LDggQEAgdnB4
X2NvZGVjX2Vycl90IHZweF9jb2RlY19nZXRfc3RyZWFtX2luZm8odnB4X2NvZGVjX2N0eF90ICpj
dHgsCiAgKgogICogXHBhcmFtW2luXSBjdHggICAgICAgICAgUG9pbnRlciB0byB0aGlzIGluc3Rh
bmNlJ3MgY29udGV4dAogICogXHBhcmFtW2luXSBkYXRhICAgICAgICAgUG9pbnRlciB0byB0aGlz
IGJsb2NrIG9mIG5ldyBjb2RlZCBkYXRhLiBJZgotICogICAgICAgICAgICAgICAgICAgICAgICAg
TlVMTCwgYSBWUFhfQ09ERUNfQ0JfUFVUX0ZSQU1FIGV2ZW50IGlzIHBvc3RlZAotICogICAgICAg
ICAgICAgICAgICAgICAgICAgZm9yIHRoZSBwcmV2aW91c2x5IGRlY29kZWQgZnJhbWUuCisgKiAg
ICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCB0aGUgcHV0X2ZyYW1lIGNhbGxiYWNrIGlzIGlu
dm9rZWQgZm9yCisgKiAgICAgICAgICAgICAgICAgICAgICAgICB0aGUgcHJldmlvdXNseSBkZWNv
ZGVkIGZyYW1lLgogICogXHBhcmFtW2luXSBkYXRhX3N6ICAgICAgU2l6ZSBvZiB0aGUgY29kZWQg
ZGF0YSwgaW4gYnl0ZXMuCiAgKiBccGFyYW1baW5dIHVzZXJfcHJpdiAgICBBcHBsaWNhdGlvbiBz
cGVjaWZpYyBkYXRhIHRvIGFzc29jaWF0ZSB3aXRoCiAgKiAgICAgICAgICAgICAgICAgICAgICAg
ICB0aGlzIGZyYW1lLgpAQCAtMjM2LDExICsyMzUsMTAgQEAgdnB4X2ltYWdlX3QgKnZweF9jb2Rl
Y19nZXRfZnJhbWUodnB4X2NvZGVjX2N0eF90ICpjdHgsIHZweF9jb2RlY19pdGVyX3QgKml0ZXIp
OwogCiAvKiFcZGVmZ3JvdXAgY2FwX3B1dF9mcmFtZSBGcmFtZS1CYXNlZCBEZWNvZGluZyBGdW5j
dGlvbnMKICAqCi0gKiBUaGUgZm9sbG93aW5nIGZ1bmN0aW9ucyBhcmUgcmVxdWlyZWQgdG8gYmUg
aW1wbGVtZW50ZWQgZm9yIGFsbCBkZWNvZGVycwotICogdGhhdCBhZHZlcnRpc2UgdGhlIFZQWF9D
T0RFQ19DQVBfUFVUX0ZSQU1FIGNhcGFiaWxpdHkuIENhbGxpbmcgdGhlc2UKLSAqIGZ1bmN0aW9u
cwotICogZm9yIGNvZGVjcyB0aGF0IGRvbid0IGFkdmVydGlzZSB0aGlzIGNhcGFiaWxpdHkgd2ls
bCByZXN1bHQgaW4gYW4gZXJyb3IKLSAqIGNvZGUgYmVpbmcgcmV0dXJuZWQsIHVzdWFsbHkgVlBY
X0NPREVDX0VSUk9SCisgKiBUaGUgZm9sbG93aW5nIGZ1bmN0aW9uIGlzIHJlcXVpcmVkIHRvIGJl
IGltcGxlbWVudGVkIGZvciBhbGwgZGVjb2RlcnMKKyAqIHRoYXQgYWR2ZXJ0aXNlIHRoZSBWUFhf
Q09ERUNfQ0FQX1BVVF9GUkFNRSBjYXBhYmlsaXR5LiBDYWxsaW5nIHRoaXMKKyAqIGZ1bmN0aW9u
IGZvciBjb2RlY3MgdGhhdCBkb24ndCBhZHZlcnRpc2UgdGhpcyBjYXBhYmlsaXR5IHdpbGwgcmVz
dWx0IGluCisgKiBhbiBlcnJvciBjb2RlIGJlaW5nIHJldHVybmVkLCB1c3VhbGx5IFZQWF9DT0RF
Q19JTkNBUEFCTEUuCiAgKiBAewogICovCiAKQEAgLTI2NCw4ICsyNjIsOSBAQCB0eXBlZGVmIHZv
aWQgKCp2cHhfY29kZWNfcHV0X2ZyYW1lX2NiX2ZuX3QpKHZvaWQgKnVzZXJfcHJpdiwKICAqIFxy
ZXR2YWwgI1ZQWF9DT0RFQ19PSwogICogICAgIENhbGxiYWNrIHN1Y2Nlc3NmdWxseSByZWdpc3Rl
cmVkLgogICogXHJldHZhbCAjVlBYX0NPREVDX0VSUk9SCi0gKiAgICAgRGVjb2RlciBjb250ZXh0
IG5vdCBpbml0aWFsaXplZCwgb3IgYWxnb3JpdGhtIG5vdCBjYXBhYmxlIG9mCi0gKiAgICAgcG9z
dGluZyBzbGljZSBjb21wbGV0aW9uLgorICogICAgIERlY29kZXIgY29udGV4dCBub3QgaW5pdGlh
bGl6ZWQuCisgKiBccmV0dmFsICNWUFhfQ09ERUNfSU5DQVBBQkxFCisgKiAgICAgQWxnb3JpdGht
IG5vdCBjYXBhYmxlIG9mIHBvc3RpbmcgZnJhbWUgY29tcGxldGlvbi4KICAqLwogdnB4X2NvZGVj
X2Vycl90IHZweF9jb2RlY19yZWdpc3Rlcl9wdXRfZnJhbWVfY2IodnB4X2NvZGVjX2N0eF90ICpj
dHgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2cHhf
Y29kZWNfcHV0X2ZyYW1lX2NiX2ZuX3QgY2IsCkBAIC0yNzUsMTggKzI3NCwxNyBAQCB2cHhfY29k
ZWNfZXJyX3QgdnB4X2NvZGVjX3JlZ2lzdGVyX3B1dF9mcmFtZV9jYih2cHhfY29kZWNfY3R4X3Qg
KmN0eCwKIAogLyohXGRlZmdyb3VwIGNhcF9wdXRfc2xpY2UgU2xpY2UtQmFzZWQgRGVjb2Rpbmcg
RnVuY3Rpb25zCiAgKgotICogVGhlIGZvbGxvd2luZyBmdW5jdGlvbnMgYXJlIHJlcXVpcmVkIHRv
IGJlIGltcGxlbWVudGVkIGZvciBhbGwgZGVjb2RlcnMKLSAqIHRoYXQgYWR2ZXJ0aXNlIHRoZSBW
UFhfQ09ERUNfQ0FQX1BVVF9TTElDRSBjYXBhYmlsaXR5LiBDYWxsaW5nIHRoZXNlCi0gKiBmdW5j
dGlvbnMKLSAqIGZvciBjb2RlY3MgdGhhdCBkb24ndCBhZHZlcnRpc2UgdGhpcyBjYXBhYmlsaXR5
IHdpbGwgcmVzdWx0IGluIGFuIGVycm9yCi0gKiBjb2RlIGJlaW5nIHJldHVybmVkLCB1c3VhbGx5
IFZQWF9DT0RFQ19FUlJPUgorICogVGhlIGZvbGxvd2luZyBmdW5jdGlvbiBpcyByZXF1aXJlZCB0
byBiZSBpbXBsZW1lbnRlZCBmb3IgYWxsIGRlY29kZXJzCisgKiB0aGF0IGFkdmVydGlzZSB0aGUg
VlBYX0NPREVDX0NBUF9QVVRfU0xJQ0UgY2FwYWJpbGl0eS4gQ2FsbGluZyB0aGlzCisgKiBmdW5j
dGlvbiBmb3IgY29kZWNzIHRoYXQgZG9uJ3QgYWR2ZXJ0aXNlIHRoaXMgY2FwYWJpbGl0eSB3aWxs
IHJlc3VsdCBpbgorICogYW4gZXJyb3IgY29kZSBiZWluZyByZXR1cm5lZCwgdXN1YWxseSBWUFhf
Q09ERUNfSU5DQVBBQkxFLgogICogQHsKICAqLwogCiAvKiFcYnJpZWYgcHV0IHNsaWNlIGNhbGxi
YWNrIHByb3RvdHlwZQogICoKICAqIFRoaXMgY2FsbGJhY2sgaXMgaW52b2tlZCBieSB0aGUgZGVj
b2RlciB0byBub3RpZnkgdGhlIGFwcGxpY2F0aW9uIG9mCi0gKiB0aGUgYXZhaWxhYmlsaXR5IG9m
IHBhcnRpYWxseSBkZWNvZGVkIGltYWdlIGRhdGEuIFRoZQorICogdGhlIGF2YWlsYWJpbGl0eSBv
ZiBwYXJ0aWFsbHkgZGVjb2RlZCBpbWFnZSBkYXRhLgogICovCiB0eXBlZGVmIHZvaWQgKCp2cHhf
Y29kZWNfcHV0X3NsaWNlX2NiX2ZuX3QpKHZvaWQgKnVzZXJfcHJpdiwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdnB4X2ltYWdlX3QgKmltZywKQEAg
LTMwNSw4ICszMDMsOSBAQCB0eXBlZGVmIHZvaWQgKCp2cHhfY29kZWNfcHV0X3NsaWNlX2NiX2Zu
X3QpKHZvaWQgKnVzZXJfcHJpdiwKICAqIFxyZXR2YWwgI1ZQWF9DT0RFQ19PSwogICogICAgIENh
bGxiYWNrIHN1Y2Nlc3NmdWxseSByZWdpc3RlcmVkLgogICogXHJldHZhbCAjVlBYX0NPREVDX0VS
Uk9SCi0gKiAgICAgRGVjb2RlciBjb250ZXh0IG5vdCBpbml0aWFsaXplZCwgb3IgYWxnb3JpdGht
IG5vdCBjYXBhYmxlIG9mCi0gKiAgICAgcG9zdGluZyBzbGljZSBjb21wbGV0aW9uLgorICogICAg
IERlY29kZXIgY29udGV4dCBub3QgaW5pdGlhbGl6ZWQuCisgKiBccmV0dmFsICNWUFhfQ09ERUNf
SU5DQVBBQkxFCisgKiAgICAgQWxnb3JpdGhtIG5vdCBjYXBhYmxlIG9mIHBvc3Rpbmcgc2xpY2Ug
Y29tcGxldGlvbi4KICAqLwogdnB4X2NvZGVjX2Vycl90IHZweF9jb2RlY19yZWdpc3Rlcl9wdXRf
c2xpY2VfY2IodnB4X2NvZGVjX2N0eF90ICpjdHgsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB2cHhfY29kZWNfcHV0X3NsaWNlX2NiX2ZuX3QgY2IsCkBA
IC0zMTYsMTAgKzMxNSwxMCBAQCB2cHhfY29kZWNfZXJyX3QgdnB4X2NvZGVjX3JlZ2lzdGVyX3B1
dF9zbGljZV9jYih2cHhfY29kZWNfY3R4X3QgKmN0eCwKIAogLyohXGRlZmdyb3VwIGNhcF9leHRl
cm5hbF9mcmFtZV9idWZmZXIgRXh0ZXJuYWwgRnJhbWUgQnVmZmVyIEZ1bmN0aW9ucwogICoKLSAq
IFRoZSBmb2xsb3dpbmcgc2VjdGlvbiBpcyByZXF1aXJlZCB0byBiZSBpbXBsZW1lbnRlZCBmb3Ig
YWxsIGRlY29kZXJzCisgKiBUaGUgZm9sbG93aW5nIGZ1bmN0aW9uIGlzIHJlcXVpcmVkIHRvIGJl
IGltcGxlbWVudGVkIGZvciBhbGwgZGVjb2RlcnMKICAqIHRoYXQgYWR2ZXJ0aXNlIHRoZSBWUFhf
Q09ERUNfQ0FQX0VYVEVSTkFMX0ZSQU1FX0JVRkZFUiBjYXBhYmlsaXR5LgogICogQ2FsbGluZyB0
aGlzIGZ1bmN0aW9uIGZvciBjb2RlY3MgdGhhdCBkb24ndCBhZHZlcnRpc2UgdGhpcyBjYXBhYmls
aXR5Ci0gKiB3aWxsIHJlc3VsdCBpbiBhbiBlcnJvciBjb2RlIGJlaW5nIHJldHVybmVkLCB1c3Vh
bGx5IFZQWF9DT0RFQ19FUlJPUi4KKyAqIHdpbGwgcmVzdWx0IGluIGFuIGVycm9yIGNvZGUgYmVp
bmcgcmV0dXJuZWQsIHVzdWFsbHkgVlBYX0NPREVDX0lOQ0FQQUJMRS4KICAqCiAgKiBcbm90ZQog
ICogQ3VycmVudGx5IHRoaXMgb25seSB3b3JrcyB3aXRoIFZQOS4KQEAgLTM0NCw4ICszNDMsOSBA
QCB2cHhfY29kZWNfZXJyX3QgdnB4X2NvZGVjX3JlZ2lzdGVyX3B1dF9zbGljZV9jYih2cHhfY29k
ZWNfY3R4X3QgKmN0eCwKICAqIFxyZXR2YWwgI1ZQWF9DT0RFQ19JTlZBTElEX1BBUkFNCiAgKiAg
ICAgT25lIG9yIG1vcmUgb2YgdGhlIGNhbGxiYWNrcyB3ZXJlIE5VTEwuCiAgKiBccmV0dmFsICNW
UFhfQ09ERUNfRVJST1IKLSAqICAgICBEZWNvZGVyIGNvbnRleHQgbm90IGluaXRpYWxpemVkLCBv
ciBhbGdvcml0aG0gbm90IGNhcGFibGUgb2YKLSAqICAgICB1c2luZyBleHRlcm5hbCBmcmFtZSBi
dWZmZXJzLgorICogICAgIERlY29kZXIgY29udGV4dCBub3QgaW5pdGlhbGl6ZWQuCisgKiBccmV0
dmFsICNWUFhfQ09ERUNfSU5DQVBBQkxFCisgKiAgICAgQWxnb3JpdGhtIG5vdCBjYXBhYmxlIG9m
IHVzaW5nIGV4dGVybmFsIGZyYW1lIGJ1ZmZlcnMuCiAgKgogICogXG5vdGUKICAqIFdoZW4gZGVj
b2RpbmcgVlA5LCB0aGUgYXBwbGljYXRpb24gbWF5IGJlIHJlcXVpcmVkIHRvIHBhc3MgaW4gYXQg
bGVhc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9lbmNvZGVyLmggYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC92cHhfZW5jb2Rlci5oCmluZGV4IGM4NGQ0MGY3ZjdmMWVmMzEyOGEzMGFhZTk4ZDM4
YWIzZWIwN2Q4MGIuLmRhMzYwOTU3NzU1ZmRlMDYxZjM5MTkyNWM2ZDg2YzMxMTIyNzc2NDIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9lbmNvZGVyLmgKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHgvdnB4X2VuY29kZXIuaApAQCAtMzAsNiArMzAsNyBAQCBleHRlcm4gIkMiIHsKICNlbmRpZgog
CiAjaW5jbHVkZSAiLi92cHhfY29kZWMuaCIKKyNpbmNsdWRlICIuL3ZweF9leHRfcmF0ZWN0cmwu
aCIKIAogLyohIFRlbXBvcmFsIFNjYWxhYmlsaXR5OiBNYXhpbXVtIGxlbmd0aCBvZiB0aGUgc2Vx
dWVuY2UgZGVmaW5pbmcgZnJhbWUKICAqIGxheWVyIG1lbWJlcnNoaXAKQEAgLTU3LDcgKzU4LDgg
QEAgZXh0ZXJuICJDIiB7CiAgKiBmaWVsZHMgdG8gc3RydWN0dXJlcwogICovCiAjZGVmaW5lIFZQ
WF9FTkNPREVSX0FCSV9WRVJTSU9OIFwKLSAgKDE0ICsgVlBYX0NPREVDX0FCSV9WRVJTSU9OKSAv
Kio8XGhpZGVpbml0aWFsaXplciovCisgICgxNCArIFZQWF9DT0RFQ19BQklfVkVSU0lPTiArIFwK
KyAgIFZQWF9FWFRfUkFURUNUUkxfQUJJX1ZFUlNJT04pIC8qKjxcaGlkZWluaXRpYWxpemVyKi8K
IAogLyohIFxicmllZiBFbmNvZGVyIGNhcGFiaWxpdGllcyBiaXRmaWVsZAogICoKQEAgLTcwNSw2
ICs3MDcsNyBAQCB0eXBlZGVmIHN0cnVjdCB2cHhfc3ZjX3BhcmFtZXRlcnMgewogICBpbnQgc2Nh
bGluZ19mYWN0b3JfZGVuW1ZQWF9NQVhfTEFZRVJTXTsgLyoqPCBTY2FsaW5nIGZhY3Rvci1kZW5v
bWluYXRvciAqLwogICBpbnQgc3BlZWRfcGVyX2xheWVyW1ZQWF9NQVhfTEFZRVJTXTsgICAgLyoq
PCBTcGVlZCBzZXR0aW5nIGZvciBlYWNoIHNsICovCiAgIGludCB0ZW1wb3JhbF9sYXllcmluZ19t
b2RlOyAgICAgICAgICAgICAvKio8IFRlbXBvcmFsIGxheWVyaW5nIG1vZGUgKi8KKyAgaW50IGxv
b3BmaWx0ZXJfY3RybFtWUFhfTUFYX0xBWUVSU107ICAgIC8qKjwgTG9vcGZpbHRlciBjdHJsIGZv
ciBlYWNoIHNsICovCiB9IHZweF9zdmNfZXh0cmFfY2ZnX3Q7CiAKIC8qIVxicmllZiBJbml0aWFs
aXplIGFuIGVuY29kZXIgaW5zdGFuY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9l
eHRfcmF0ZWN0cmwuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9leHRfcmF0ZWN0cmwuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5kYzRkODU2YThiNmY1NGIwNzQ0ZmE4MTE4MDhkZmViYjQzMWJkMTM0Ci0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2V4dF9yYXRlY3RybC5oCkBAIC0wLDAgKzEsMzUz
IEBACisvKgorICogIENvcHlyaWdodCAoYykgMjAyMCBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMu
IEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKgorICogIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlz
IGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UKKyAqICB0aGF0IGNhbiBiZSBmb3VuZCBp
biB0aGUgTElDRU5TRSBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UKKyAqICB0cmVlLiBB
biBhZGRpdGlvbmFsIGludGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQgY2FuIGJlIGZv
dW5kCisgKiAgaW4gdGhlIGZpbGUgUEFURU5UUy4gIEFsbCBjb250cmlidXRpbmcgcHJvamVjdCBh
dXRob3JzIG1heQorICogIGJlIGZvdW5kIGluIHRoZSBBVVRIT1JTIGZpbGUgaW4gdGhlIHJvb3Qg
b2YgdGhlIHNvdXJjZSB0cmVlLgorICovCisKKyNpZm5kZWYgVlBYX1ZQWF9WUFhfRVhUX1JBVEVD
VFJMX0hfCisjZGVmaW5lIFZQWF9WUFhfVlBYX0VYVF9SQVRFQ1RSTF9IXworCisjaWZkZWYgX19j
cGx1c3BsdXMKK2V4dGVybiAiQyIgeworI2VuZGlmCisKKyNpbmNsdWRlICIuL3ZweF9pbnRlZ2Vy
LmgiCisKKy8qIVxicmllZiBDdXJyZW50IEFCSSB2ZXJzaW9uIG51bWJlcgorICoKKyAqIFxpbnRl
cm5hbAorICogSWYgdGhpcyBmaWxlIGlzIGFsdGVyZWQgaW4gYW55IHdheSB0aGF0IGNoYW5nZXMg
dGhlIEFCSSwgdGhpcyB2YWx1ZQorICogbXVzdCBiZSBidW1wZWQuIEV4YW1wbGVzIGluY2x1ZGUs
IGJ1dCBhcmUgbm90IGxpbWl0ZWQgdG8sIGNoYW5naW5nCisgKiB0eXBlcywgcmVtb3Zpbmcgb3Ig
cmVhc3NpZ25pbmcgZW51bXMsIGFkZGluZy9yZW1vdmluZy9yZWFycmFuZ2luZworICogZmllbGRz
IHRvIHN0cnVjdHVyZXMuCisgKi8KKyNkZWZpbmUgVlBYX0VYVF9SQVRFQ1RSTF9BQklfVkVSU0lP
TiAoMSkKKworLyohXGJyaWVmIEFic3RyYWN0IHJhdGUgY29udHJvbCBtb2RlbCBoYW5kbGVyCisg
KgorICogVGhlIGVuY29kZXIgd2lsbCByZWNlaXZlIHRoZSBtb2RlbCBoYW5kbGVyIGZyb20gY3Jl
YXRlX21vZGVsKCkgZGVmaW5lZCBpbgorICogdnB4X3JjX2Z1bmNzX3QuCisgKi8KK3R5cGVkZWYg
dm9pZCAqdnB4X3JjX21vZGVsX3Q7CisKKy8qIVxicmllZiBFbmNvZGUgZnJhbWUgZGVjaXNpb24g
bWFkZSBieSB0aGUgZXh0ZXJuYWwgcmF0ZSBjb250cm9sIG1vZGVsCisgKgorICogVGhlIGVuY29k
ZXIgd2lsbCByZWNlaXZlIHRoZSBkZWNpc2lvbiBmcm9tIHRoZSBleHRlcm5hbCByYXRlIGNvbnRy
b2wgbW9kZWwKKyAqIHRocm91Z2ggZ2V0X2VuY29kZWZyYW1lX2RlY2lzaW9uKCkgZGVmaW5lZCBp
biB2cHhfcmNfZnVuY3NfdC4KKyAqLwordHlwZWRlZiBzdHJ1Y3QgdnB4X3JjX2VuY29kZWZyYW1l
X2RlY2lzaW9uIHsKKyAgaW50IHFfaW5kZXg7IC8qKjwgUXVhbnRpemVyIHN0ZXAgaW5kZXggWzAu
LjI1NV0qLworfSB2cHhfcmNfZW5jb2RlZnJhbWVfZGVjaXNpb25fdDsKKworLyohXGJyaWVmIElu
Zm9ybWF0aW9uIGZvciB0aGUgZnJhbWUgdG8gYmUgZW5jb2RlZC4KKyAqCisgKiBUaGUgZW5jb2Rl
ciB3aWxsIHNlbmQgdGhlIGluZm9ybWF0aW9uIHRvIGV4dGVybmFsIHJhdGUgY29udHJvbCBtb2Rl
bCB0aHJvdWdoCisgKiBnZXRfZW5jb2RlZnJhbWVfZGVjaXNpb24oKSBkZWZpbmVkIGluIHZweF9y
Y19mdW5jc190LgorICoKKyAqLwordHlwZWRlZiBzdHJ1Y3QgdnB4X3JjX2VuY29kZWZyYW1lX2lu
Zm8geworICAvKiEKKyAgICogMDogS2V5IGZyYW1lCisgICAqIDE6IEludGVyIGZyYW1lCisgICAq
IDI6IEFsdGVybmF0ZSByZWZlcmVuY2UgZnJhbWUKKyAgICogMzogT3ZlcmxheSBmcmFtZQorICAg
KiA0OiBHb2xkZW4gZnJhbWUKKyAgICovCisgIGludCBmcmFtZV90eXBlOworICBpbnQgc2hvd19p
bmRleDsgICAvKio8IGRpc3BsYXkgaW5kZXgsIHN0YXJ0cyBmcm9tIHplcm8qLworICBpbnQgY29k
aW5nX2luZGV4OyAvKio8IGNvZGluZyBpbmRleCwgc3RhcnRzIGZyb20gemVybyovCisgIC8qIQor
ICAgKiBpbmRleCBpbiBncm91cCBvZiBwaWN0dXJlLCBzdGFydHMgZnJvbSB6ZXJvLgorICAgKi8K
KyAgaW50IGdvcF9pbmRleDsKKyAgaW50IHJlZl9mcmFtZV9jb2RpbmdfaW5kZXhlc1szXTsgLyoq
PCB0aHJlZSByZWZlcmVuY2UgZnJhbWVzJyBjb2RpbmcgaW5kaWNlcyovCisgIC8qIQorICAgKiBU
aGUgdmFsaWRpdHkgb2YgdGhlIHRocmVlIHJlZmVyZW5jZSBmcmFtZXMuCisgICAqIDA6IEludmFs
aWQKKyAgICogMTogVmFsaWQKKyAgICovCisgIGludCByZWZfZnJhbWVfdmFsaWRfbGlzdFszXTsK
K30gdnB4X3JjX2VuY29kZWZyYW1lX2luZm9fdDsKKworLyohXGJyaWVmIEZyYW1lIGNvZGluZyBy
ZXN1bHQKKyAqCisgKiBUaGUgZW5jb2RlciB3aWxsIHNlbmQgdGhlIHJlc3VsdCB0byB0aGUgZXh0
ZXJuYWwgcmF0ZSBjb250cm9sIG1vZGVsIHRocm91Z2gKKyAqIHVwZGF0ZV9lbmNvZGVmcmFtZV9y
ZXN1bHQoKSBkZWZpbmVkIGluIHZweF9yY19mdW5jc190LgorICovCit0eXBlZGVmIHN0cnVjdCB2
cHhfcmNfZW5jb2RlZnJhbWVfcmVzdWx0IHsKKyAgaW50NjRfdCBzc2U7ICAgICAgICAgLyoqPCBz
dW0gb2Ygc3F1YXJlZCBlcnJvciBvZiB0aGUgcmVjb25zdHJ1Y3RlZCBmcmFtZSAqLworICBpbnQ2
NF90IGJpdF9jb3VudDsgICAvKio8IG51bWJlciBvZiBiaXRzIHNwZW50IG9uIGNvZGluZyB0aGUg
ZnJhbWUqLworICBpbnQ2NF90IHBpeGVsX2NvdW50OyAvKio8IG51bWJlciBvZiBwaXhlbHMgaW4g
WVVWIHBsYW5lcyBvZiB0aGUgZnJhbWUqLworfSB2cHhfcmNfZW5jb2RlZnJhbWVfcmVzdWx0X3Q7
CisKKy8qIVxicmllZiBTdGF0dXMgcmV0dXJuZWQgYnkgcmF0ZSBjb250cm9sIGNhbGxiYWNrIGZ1
bmN0aW9ucy4KKyAqLwordHlwZWRlZiBlbnVtIHZweF9yY19zdGF0dXMgeworICBWUFhfUkNfT0sg
PSAwLAorICBWUFhfUkNfRVJST1IgPSAxLAorfSB2cHhfcmNfc3RhdHVzX3Q7CisKKy8qIVxicmll
ZiBGaXJzdCBwYXNzIGZyYW1lIHN0YXRzCisgKiBUaGlzIGlzIGEgbWlycm9yIG9mIHZwOSdzIEZJ
UlNUUEFTU19TVEFUUyBleGNlcHQgdGhhdCBzcGF0aWFsX2xheWVyX2lkIGlzCisgKiBvbWl0dGVk
CisgKi8KK3R5cGVkZWYgc3RydWN0IHZweF9yY19mcmFtZV9zdGF0cyB7CisgIC8qIQorICAgKiBG
cmFtZSBudW1iZXIgaW4gZGlzcGxheSBvcmRlciwgaWYgc3RhdHMgYXJlIGZvciBhIHNpbmdsZSBm
cmFtZS4KKyAgICogTm8gcmVhbCBtZWFuaW5nIGZvciBhIGNvbGxlY3Rpb24gb2YgZnJhbWVzLgor
ICAgKi8KKyAgZG91YmxlIGZyYW1lOworICAvKiEKKyAgICogV2VpZ2h0IGFzc2lnbmVkIHRvIHRo
aXMgZnJhbWUgKG9yIHRvdGFsIHdlaWdodCBmb3IgdGhlIGNvbGxlY3Rpb24gb2YKKyAgICogZnJh
bWVzKSBjdXJyZW50bHkgYmFzZWQgb24gaW50cmEgZmFjdG9yIGFuZCBicmlnaHRuZXNzIGZhY3Rv
ci4gVGhpcyBpcyB1c2VkCisgICAqIHRvIGRpc3RyaWJ1dGUgYml0cyBiZXR3ZWVuIGVhc2llciBh
bmQgaGFyZGVyIGZyYW1lcy4KKyAgICovCisgIGRvdWJsZSB3ZWlnaHQ7CisgIC8qIQorICAgKiBJ
bnRyYSBwcmVkaWN0aW9uIGVycm9yLgorICAgKi8KKyAgZG91YmxlIGludHJhX2Vycm9yOworICAv
KiEKKyAgICogQmVzdCBvZiBpbnRyYSBwcmVkIGVycm9yIGFuZCBpbnRlciBwcmVkIGVycm9yIHVz
aW5nIGxhc3QgZnJhbWUgYXMgcmVmLgorICAgKi8KKyAgZG91YmxlIGNvZGVkX2Vycm9yOworICAv
KiEKKyAgICogQmVzdCBvZiBpbnRyYSBwcmVkIGVycm9yIGFuZCBpbnRlciBwcmVkIGVycm9yIHVz
aW5nIGdvbGRlbiBmcmFtZSBhcyByZWYuCisgICAqLworICBkb3VibGUgc3JfY29kZWRfZXJyb3I7
CisgIC8qIQorICAgKiBFc3RpbWF0ZSB0aGUgbm9pc2UgZW5lcmd5IG9mIHRoZSBjdXJyZW50IGZy
YW1lLgorICAgKi8KKyAgZG91YmxlIGZyYW1lX25vaXNlX2VuZXJneTsKKyAgLyohCisgICAqIFBl
cmNlbnRhZ2Ugb2YgYmxvY2tzIHdpdGggaW50ZXIgcHJlZCBlcnJvciA8IGludHJhIHByZWQgZXJy
b3IuCisgICAqLworICBkb3VibGUgcGNudF9pbnRlcjsKKyAgLyohCisgICAqIFBlcmNlbnRhZ2Ug
b2YgYmxvY2tzIHVzaW5nIChpbnRlciBwcmVkaWN0aW9uIGFuZCkgbm9uLXplcm8gbW90aW9uIHZl
Y3RvcnMuCisgICAqLworICBkb3VibGUgcGNudF9tb3Rpb247CisgIC8qIQorICAgKiBQZXJjZW50
YWdlIG9mIGJsb2NrcyB3aGVyZSBnb2xkZW4gZnJhbWUgd2FzIGJldHRlciB0aGFuIGxhc3Qgb3Ig
aW50cmE6CisgICAqIGludGVyIHByZWQgZXJyb3IgdXNpbmcgZ29sZGVuIGZyYW1lIDwgaW50ZXIg
cHJlZCBlcnJvciB1c2luZyBsYXN0IGZyYW1lIGFuZAorICAgKiBpbnRlciBwcmVkIGVycm9yIHVz
aW5nIGdvbGRlbiBmcmFtZSA8IGludHJhIHByZWQgZXJyb3IKKyAgICovCisgIGRvdWJsZSBwY250
X3NlY29uZF9yZWY7CisgIC8qIQorICAgKiBQZXJjZW50YWdlIG9mIGJsb2NrcyB3aGVyZSBpbnRy
YSBhbmQgaW50ZXIgcHJlZGljdGlvbiBlcnJvcnMgd2VyZSB2ZXJ5CisgICAqIGNsb3NlLgorICAg
Ki8KKyAgZG91YmxlIHBjbnRfbmV1dHJhbDsKKyAgLyohCisgICAqIFBlcmNlbnRhZ2Ugb2YgYmxv
Y2tzIHRoYXQgaGF2ZSBpbnRyYSBlcnJvciA8IGludGVyIGVycm9yIGFuZCBpbnRlciBlcnJvciA8
CisgICAqIExPV19JX1RIUkVTSAorICAgKiAtIGJpdF9kZXB0aCA4OiBMT1dfSV9USFJFU0ggPSAy
NDAwMAorICAgKiAtIGJpdF9kZXB0aCAxMDogTE9XX0lfVEhSRVNIID0gMjQwMDAgPDwgNAorICAg
KiAtIGJpdF9kZXB0aCAxMjogTE9XX0lfVEhSRVNIID0gMjQwMDAgPDwgOAorICAgKi8KKyAgZG91
YmxlIHBjbnRfaW50cmFfbG93OworICAvKiEKKyAgICogUGVyY2VudGFnZSBvZiBibG9ja3MgdGhh
dCBoYXZlIGludHJhIGVycm9yIDwgaW50ZXIgZXJyb3IgYW5kIGludHJhIGVycm9yIDwKKyAgICog
TE9XX0lfVEhSRVNIIGJ1dCBpbnRlciBlcnJvciA+PSBMT1dfSV9USFJFU0ggTE9XX0lfVEhSRVNI
CisgICAqIC0gYml0X2RlcHRoIDg6IExPV19JX1RIUkVTSCA9IDI0MDAwCisgICAqIC0gYml0X2Rl
cHRoIDEwOiBMT1dfSV9USFJFU0ggPSAyNDAwMCA8PCA0CisgICAqIC0gYml0X2RlcHRoIDEyOiBM
T1dfSV9USFJFU0ggPSAyNDAwMCA8PCA4CisgICAqLworICBkb3VibGUgcGNudF9pbnRyYV9oaWdo
OworICAvKiEKKyAgICogUGVyY2VudGFnZSBvZiBibG9ja3MgdGhhdCBoYXZlIGFsbW9zdCBubyBp
bnRyYSBlcnJvciByZXNpZHVhbAorICAgKiAoaS5lLiBhcmUgaW4gZWZmZWN0IGNvbXBsZXRlbHkg
ZmxhdCBhbmQgdW50ZXh0dXJlZCBpbiB0aGUgaW50cmEKKyAgICogZG9tYWluKS4gSW4gbmF0dXJh
bCB2aWRlb3MgdGhpcyBpcyB1bmNvbW1vbiwgYnV0IGl0IGlzIG11Y2ggbW9yZQorICAgKiBjb21t
b24gaW4gYW5pbWF0aW9ucywgZ3JhcGhpY3MgYW5kIHNjcmVlbiBjb250ZW50LCBzbyBtYXkgYmUg
dXNlZAorICAgKiBhcyBhIHNpZ25hbCB0byBkZXRlY3QgdGhlc2UgdHlwZXMgb2YgY29udGVudC4K
KyAgICovCisgIGRvdWJsZSBpbnRyYV9za2lwX3BjdDsKKyAgLyohCisgICAqIFBlcmNlbnRhZ2Ug
b2YgYmxvY2tzIHRoYXQgaGF2ZSBpbnRyYSBlcnJvciA8IFNNT09USF9JTlRSQV9USFJFU0gKKyAg
ICogLSBiaXRfZGVwdGggODogIFNNT09USF9JTlRSQV9USFJFU0ggPSA0MDAwCisgICAqIC0gYml0
X2RlcHRoIDEwOiBTTU9PVEhfSU5UUkFfVEhSRVNIID0gNDAwMCA8PCA0CisgICAqIC0gYml0X2Rl
cHRoIDEyOiBTTU9PVEhfSU5UUkFfVEhSRVNIID0gNDAwMCA8PCA4CisgICAqLworICBkb3VibGUg
aW50cmFfc21vb3RoX3BjdDsKKyAgLyohCisgICAqIEltYWdlIG1hc2sgcm93cyB0b3AgYW5kIGJv
dHRvbS4KKyAgICovCisgIGRvdWJsZSBpbmFjdGl2ZV96b25lX3Jvd3M7CisgIC8qIQorICAgKiBJ
bWFnZSBtYXNrIGNvbHVtbnMgYXQgbGVmdCBhbmQgcmlnaHQgZWRnZXMuCisgICAqLworICBkb3Vi
bGUgaW5hY3RpdmVfem9uZV9jb2xzOworICAvKiEKKyAgICogTWVhbiBvZiByb3cgbW90aW9uIHZl
Y3RvcnMuCisgICAqLworICBkb3VibGUgTVZyOworICAvKiEKKyAgICogTWVhbiBvZiBhYnNvbHV0
ZSB2YWx1ZSBvZiByb3cgbW90aW9uIHZlY3RvcnMuCisgICAqLworICBkb3VibGUgbXZyX2FiczsK
KyAgLyohCisgICAqIE1lYW4gb2YgY29sdW1uIG1vdGlvbiB2ZWN0b3JzLgorICAgKi8KKyAgZG91
YmxlIE1WYzsKKyAgLyohCisgICAqIE1lYW4gb2YgYWJzb2x1dGUgdmFsdWUgb2YgY29sdW1uIG1v
dGlvbiB2ZWN0b3JzLgorICAgKi8KKyAgZG91YmxlIG12Y19hYnM7CisgIC8qIQorICAgKiBWYXJp
YW5jZSBvZiByb3cgbW90aW9uIHZlY3RvcnMuCisgICAqLworICBkb3VibGUgTVZydjsKKyAgLyoh
CisgICAqIFZhcmlhbmNlIG9mIGNvbHVtbiBtb3Rpb24gdmVjdG9ycy4KKyAgICovCisgIGRvdWJs
ZSBNVmN2OworICAvKiEKKyAgICogVmFsdWUgaW4gcmFuZ2UgWy0xLDFdIGluZGljYXRpbmcgZnJh
Y3Rpb24gb2Ygcm93IGFuZCBjb2x1bW4gbW90aW9uIHZlY3RvcnMKKyAgICogdGhhdCBwb2ludCBp
bndhcmRzIChuZWdhdGl2ZSBNViB2YWx1ZSkgb3Igb3V0d2FyZHMgKHBvc2l0aXZlIE1WIHZhbHVl
KS4KKyAgICogRm9yIGV4YW1wbGUsIHZhbHVlIG9mIDEgaW5kaWNhdGVzLCBhbGwgcm93L2NvbHVt
biBNVnMgYXJlIGlud2FyZHMuCisgICAqLworICBkb3VibGUgbXZfaW5fb3V0X2NvdW50OworICAv
KiEKKyAgICogRHVyYXRpb24gb2YgdGhlIGZyYW1lIC8gY29sbGVjdGlvbiBvZiBmcmFtZXMuCisg
ICAqLworICBkb3VibGUgZHVyYXRpb247CisgIC8qIQorICAgKiAxLjAgaWYgc3RhdHMgYXJlIGZv
ciBhIHNpbmdsZSBmcmFtZSwgb3IKKyAgICogbnVtYmVyIG9mIGZyYW1lcyB3aG9zZSBzdGF0cyBh
cmUgYWNjdW11bGF0ZWQuCisgICAqLworICBkb3VibGUgY291bnQ7Cit9IHZweF9yY19mcmFtZV9z
dGF0c190OworCisvKiFcYnJpZWYgQ29sbGVjdGlvbiBvZiBmaXJzdCBwYXNzIGZyYW1lIHN0YXRz
CisgKi8KK3R5cGVkZWYgc3RydWN0IHZweF9yY19maXJzdHBhc3Nfc3RhdHMgeworICAvKiEKKyAg
ICogUG9pbnRlciB0byBmaXJzdCBwYXNzIGZyYW1lIHN0YXRzLgorICAgKiBUaGUgcG9pbnRlZCBh
cnJheSBvZiB2cHhfcmNfZnJhbWVfc3RhdHNfdCBzaG91bGQgaGF2ZSBsZW5ndGggZXF1YWwgdG8K
KyAgICogbnVtYmVyIG9mIHNob3cgZnJhbWVzIGluIHRoZSB2aWRlby4KKyAgICovCisgIHZweF9y
Y19mcmFtZV9zdGF0c190ICpmcmFtZV9zdGF0czsKKyAgLyohCisgICAqIE51bWJlciBvZiBzaG93
IGZyYW1lcyBpbiB0aGUgdmlkZW8uCisgICAqLworICBpbnQgbnVtX2ZyYW1lczsKK30gdnB4X3Jj
X2ZpcnN0cGFzc19zdGF0c190OworCisvKiFcYnJpZWYgRW5jb2RlIGNvbmZpZyBzZW50IHRvIGV4
dGVybmFsIHJhdGUgY29udHJvbCBtb2RlbAorICovCit0eXBlZGVmIHN0cnVjdCB2cHhfcmNfY29u
ZmlnIHsKKyAgaW50IGZyYW1lX3dpZHRoOyAgICAgIC8qKjwgZnJhbWUgd2lkdGggKi8KKyAgaW50
IGZyYW1lX2hlaWdodDsgICAgIC8qKjwgZnJhbWUgaGVpZ2h0ICovCisgIGludCBzaG93X2ZyYW1l
X2NvdW50OyAvKio8IG51bWJlciBvZiB2aXNpYmxlIGZyYW1lcyBpbiB0aGUgdmlkZW8gKi8KKyAg
LyohCisgICAqIFRhcmdldCBiaXRyYXRlIGluIGtpbG9ieXRlcyBwZXIgc2Vjb25kCisgICAqLwor
ICBpbnQgdGFyZ2V0X2JpdHJhdGVfa2JwczsKKyAgaW50IGZyYW1lX3JhdGVfbnVtOyAvKio8IG51
bWVyYXRvciBvZiBmcmFtZSByYXRlICovCisgIGludCBmcmFtZV9yYXRlX2RlbjsgLyoqPCBkZW5v
bWluYXRvciBvZiBmcmFtZSByYXRlICovCit9IHZweF9yY19jb25maWdfdDsKKworLyohXGJyaWVm
IENyZWF0ZSBhbiBleHRlcm5hbCByYXRlIGNvbnRyb2wgbW9kZWwgY2FsbGJhY2sgcHJvdG90eXBl
CisgKgorICogVGhpcyBjYWxsYmFjayBpcyBpbnZva2VkIGJ5IHRoZSBlbmNvZGVyIHRvIGNyZWF0
ZSBhbiBleHRlcm5hbCByYXRlIGNvbnRyb2wKKyAqIG1vZGVsLgorICoKKyAqIFxwYXJhbVtpbl0g
IHByaXYgICAgICAgICAgICAgICBDYWxsYmFjaydzIHByaXZhdGUgZGF0YQorICogXHBhcmFtW2lu
XSAgcmF0ZWN0cmxfY29uZmlnICAgIFBvaW50ZXIgdG8gdnB4X3JjX2NvbmZpZ190CisgKiBccGFy
YW1bb3V0XSByYXRlX2N0cmxfbW9kZWxfcHQgUG9pbnRlciB0byB2cHhfcmNfbW9kZWxfdAorICov
Cit0eXBlZGVmIHZweF9yY19zdGF0dXNfdCAoKnZweF9yY19jcmVhdGVfbW9kZWxfY2JfZm5fdCko
CisgICAgdm9pZCAqcHJpdiwgY29uc3QgdnB4X3JjX2NvbmZpZ190ICpyYXRlY3RybF9jb25maWcs
CisgICAgdnB4X3JjX21vZGVsX3QgKnJhdGVfY3RybF9tb2RlbF9wdCk7CisKKy8qIVxicmllZiBT
ZW5kIGZpcnN0IHBhc3Mgc3RhdHMgdG8gdGhlIGV4dGVybmFsIHJhdGUgY29udHJvbCBtb2RlbCBj
YWxsYmFjaworICogcHJvdG90eXBlCisgKgorICogVGhpcyBjYWxsYmFjayBpcyBpbnZva2VkIGJ5
IHRoZSBlbmNvZGVyIHRvIHNlbmQgZmlyc3QgcGFzcyBzdGF0cyB0byB0aGUKKyAqIGV4dGVybmFs
IHJhdGUgY29udHJvbCBtb2RlbC4KKyAqCisgKiBccGFyYW1baW5dICByYXRlX2N0cmxfbW9kZWwg
ICAgcmF0ZSBjb250cm9sIG1vZGVsCisgKiBccGFyYW1baW5dICBmaXJzdF9wYXNzX3N0YXRzICAg
Zmlyc3QgcGFzcyBzdGF0cworICovCit0eXBlZGVmIHZweF9yY19zdGF0dXNfdCAoKnZweF9yY19z
ZW5kX2ZpcnN0cGFzc19zdGF0c19jYl9mbl90KSgKKyAgICB2cHhfcmNfbW9kZWxfdCByYXRlX2N0
cmxfbW9kZWwsCisgICAgY29uc3QgdnB4X3JjX2ZpcnN0cGFzc19zdGF0c190ICpmaXJzdF9wYXNz
X3N0YXRzKTsKKworLyohXGJyaWVmIFJlY2VpdmUgZW5jb2RlIGZyYW1lIGRlY2lzaW9uIGNhbGxi
YWNrIHByb3RvdHlwZQorICoKKyAqIFRoaXMgY2FsbGJhY2sgaXMgaW52b2tlZCBieSB0aGUgZW5j
b2RlciB0byByZWNlaXZlIGVuY29kZSBmcmFtZSBkZWNpc2lvbiBmcm9tCisgKiB0aGUgZXh0ZXJu
YWwgcmF0ZSBjb250cm9sIG1vZGVsLgorICoKKyAqIFxwYXJhbVtpbl0gIHJhdGVfY3RybF9tb2Rl
bCAgICByYXRlIGNvbnRyb2wgbW9kZWwKKyAqIFxwYXJhbVtpbl0gIGVuY29kZV9mcmFtZV9pbmZv
ICBpbmZvcm1hdGlvbiBvZiB0aGUgY29kaW5nIGZyYW1lCisgKiBccGFyYW1bb3V0XSBmcmFtZV9k
ZWNpc2lvbiAgICAgZW5jb2RlIGRlY2lzaW9uIG9mIHRoZSBjb2RpbmcgZnJhbWUKKyAqLwordHlw
ZWRlZiB2cHhfcmNfc3RhdHVzX3QgKCp2cHhfcmNfZ2V0X2VuY29kZWZyYW1lX2RlY2lzaW9uX2Ni
X2ZuX3QpKAorICAgIHZweF9yY19tb2RlbF90IHJhdGVfY3RybF9tb2RlbCwKKyAgICBjb25zdCB2
cHhfcmNfZW5jb2RlZnJhbWVfaW5mb190ICplbmNvZGVfZnJhbWVfaW5mbywKKyAgICB2cHhfcmNf
ZW5jb2RlZnJhbWVfZGVjaXNpb25fdCAqZnJhbWVfZGVjaXNpb24pOworCisvKiFcYnJpZWYgVXBk
YXRlIGVuY29kZSBmcmFtZSByZXN1bHQgY2FsbGJhY2sgcHJvdG90eXBlCisgKgorICogVGhpcyBj
YWxsYmFjayBpcyBpbnZva2VkIGJ5IHRoZSBlbmNvZGVyIHRvIHVwZGF0ZSBlbmNvZGUgZnJhbWUg
cmVzdWx0IHRvIHRoZQorICogZXh0ZXJuYWwgcmF0ZSBjb250cm9sIG1vZGVsLgorICoKKyAqIFxw
YXJhbVtpbl0gIHJhdGVfY3RybF9tb2RlbCAgICAgcmF0ZSBjb250cm9sIG1vZGVsCisgKiBccGFy
YW1bb3V0XSBlbmNvZGVfZnJhbWVfcmVzdWx0IGVuY29kZSByZXN1bHQgb2YgdGhlIGNvZGluZyBm
cmFtZQorICovCit0eXBlZGVmIHZweF9yY19zdGF0dXNfdCAoKnZweF9yY191cGRhdGVfZW5jb2Rl
ZnJhbWVfcmVzdWx0X2NiX2ZuX3QpKAorICAgIHZweF9yY19tb2RlbF90IHJhdGVfY3RybF9tb2Rl
bCwKKyAgICBjb25zdCB2cHhfcmNfZW5jb2RlZnJhbWVfcmVzdWx0X3QgKmVuY29kZV9mcmFtZV9y
ZXN1bHQpOworCisvKiFcYnJpZWYgRGVsZXRlIHRoZSBleHRlcm5hbCByYXRlIGNvbnRyb2wgbW9k
ZWwgY2FsbGJhY2sgcHJvdG90eXBlCisgKgorICogVGhpcyBjYWxsYmFjayBpcyBpbnZva2VkIGJ5
IHRoZSBlbmNvZGVyIHRvIGRlbGV0ZSB0aGUgZXh0ZXJuYWwgcmF0ZSBjb250cm9sCisgKiBtb2Rl
bC4KKyAqCisgKiBccGFyYW1baW5dICByYXRlX2N0cmxfbW9kZWwgICAgIHJhdGUgY29udHJvbCBt
b2RlbAorICovCit0eXBlZGVmIHZweF9yY19zdGF0dXNfdCAoKnZweF9yY19kZWxldGVfbW9kZWxf
Y2JfZm5fdCkoCisgICAgdnB4X3JjX21vZGVsX3QgcmF0ZV9jdHJsX21vZGVsKTsKKworLyohXGJy
aWVmIENhbGxiYWNrIGZ1bmN0aW9uIHNldCBmb3IgZXh0ZXJuYWwgcmF0ZSBjb250cm9sLgorICoK
KyAqIFRoZSB1c2VyIGNhbiBlbmFibGUgZXh0ZXJuYWwgcmF0ZSBjb250cm9sIGJ5IHJlZ2lzdGVy
aW5nCisgKiBhIHNldCBvZiBjYWxsYmFjayBmdW5jdGlvbnMgd2l0aCB0aGUgY29kZWMgY29udHJv
bCBmbGFnCisgKiBWUDlFX1NFVF9FWFRFUk5BTF9SQVRFX0NPTlRST0wuCisgKi8KK3R5cGVkZWYg
c3RydWN0IHZweF9yY19mdW5jcyB7CisgIC8qIQorICAgKiBDcmVhdGUgYW4gZXh0ZXJuYWwgcmF0
ZSBjb250cm9sIG1vZGVsLgorICAgKi8KKyAgdnB4X3JjX2NyZWF0ZV9tb2RlbF9jYl9mbl90IGNy
ZWF0ZV9tb2RlbDsKKyAgLyohCisgICAqIFNlbmQgZmlyc3QgcGFzcyBzdGF0cyB0byB0aGUgZXh0
ZXJuYWwgcmF0ZSBjb250cm9sIG1vZGVsLgorICAgKi8KKyAgdnB4X3JjX3NlbmRfZmlyc3RwYXNz
X3N0YXRzX2NiX2ZuX3Qgc2VuZF9maXJzdHBhc3Nfc3RhdHM7CisgIC8qIQorICAgKiBHZXQgZW5j
b2RlZnJhbWUgZGVjaXNpb24gZnJvbSB0aGUgZXh0ZXJuYWwgcmF0ZSBjb250cm9sIG1vZGVsLgor
ICAgKi8KKyAgdnB4X3JjX2dldF9lbmNvZGVmcmFtZV9kZWNpc2lvbl9jYl9mbl90IGdldF9lbmNv
ZGVmcmFtZV9kZWNpc2lvbjsKKyAgLyohCisgICAqIFVwZGF0ZSBlbmNvZGVmcmFtZSByZXN1bHQg
dG8gdGhlIGV4dGVybmFsIHJhdGUgY29udHJvbCBtb2RlbC4KKyAgICovCisgIHZweF9yY191cGRh
dGVfZW5jb2RlZnJhbWVfcmVzdWx0X2NiX2ZuX3QgdXBkYXRlX2VuY29kZWZyYW1lX3Jlc3VsdDsK
KyAgLyohCisgICAqIERlbGV0ZSB0aGUgZXh0ZXJuYWwgcmF0ZSBjb250cm9sIG1vZGVsLgorICAg
Ki8KKyAgdnB4X3JjX2RlbGV0ZV9tb2RlbF9jYl9mbl90IGRlbGV0ZV9tb2RlbDsKKyAgLyohCisg
ICAqIFByaXZhdGUgZGF0YSBmb3IgdGhlIGV4dGVybmFsIHJhdGUgY29udHJvbCBtb2RlbC4KKyAg
ICovCisgIHZvaWQgKnByaXY7Cit9IHZweF9yY19mdW5jc190OworCisjaWZkZWYgX19jcGx1c3Bs
dXMKK30gIC8vIGV4dGVybiAiQyIKKyNlbmRpZgorCisjZW5kaWYgIC8vIFZQWF9WUFhfVlBYX0VY
VF9SQVRFQ1RSTF9IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2ltYWdlLmggYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweC92cHhfaW1hZ2UuaAppbmRleCA5OGJlNTk2NmEyNDYwYTI1OTU4YjE1ZWZj
NGY5ZjgyZjJlOWVlN2NmLi5iYzIzYmU1MGM1OGFlNjY2M2MwNzdhZmU4Zjg0YWQ2ODY1NTE2NjZi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfaW1hZ2UuaAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweC92cHhfaW1hZ2UuaApAQCAtNDMsNiArNDMsNyBAQCB0eXBlZGVmIGVudW0gdnB4X2ltZ19m
bXQgewogICBWUFhfSU1HX0ZNVF9JNDIyID0gVlBYX0lNR19GTVRfUExBTkFSIHwgNSwKICAgVlBY
X0lNR19GTVRfSTQ0NCA9IFZQWF9JTUdfRk1UX1BMQU5BUiB8IDYsCiAgIFZQWF9JTUdfRk1UX0k0
NDAgPSBWUFhfSU1HX0ZNVF9QTEFOQVIgfCA3LAorICBWUFhfSU1HX0ZNVF9OVjEyID0gVlBYX0lN
R19GTVRfUExBTkFSIHwgOSwKICAgVlBYX0lNR19GTVRfSTQyMDE2ID0gVlBYX0lNR19GTVRfSTQy
MCB8IFZQWF9JTUdfRk1UX0hJR0hCSVRERVBUSCwKICAgVlBYX0lNR19GTVRfSTQyMjE2ID0gVlBY
X0lNR19GTVRfSTQyMiB8IFZQWF9JTUdfRk1UX0hJR0hCSVRERVBUSCwKICAgVlBYX0lNR19GTVRf
STQ0NDE2ID0gVlBYX0lNR19GTVRfSTQ0NCB8IFZQWF9JTUdfRk1UX0hJR0hCSVRERVBUSCwKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2xvb3BmaWx0ZXJfbmVvbi5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdoYmRfbG9vcGZpbHRlcl9uZW9uLmMKaW5kZXgg
NTUzMGM2NDI1YjI3ZWEwNmQ4YTY4NDU2ZTkxZjQwYWEzZDRmMDczYS4uOGQ2ZThhY2M0YzVmMWRm
OTc4MTMzZGI4MjA2YjE1OWQzZDBlNThkOCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2FybS9oaWdoYmRfbG9vcGZpbHRlcl9uZW9uLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Fy
bS9oaWdoYmRfbG9vcGZpbHRlcl9uZW9uLmMKQEAgLTY2MSw2ICs2NjEsMTcgQEAgdm9pZCB2cHhf
aGlnaGJkX2xwZl92ZXJ0aWNhbF84X2R1YWxfbmVvbigKICAgdnB4X2hpZ2hiZF9scGZfdmVydGlj
YWxfOF9uZW9uKHMgKyA4ICogcCwgcCwgYmxpbWl0MSwgbGltaXQxLCB0aHJlc2gxLCBiZCk7CiB9
CiAKKy8vIFF1aWV0IHdhcm5pbmdzIG9mIHRoZSBmb3JtOiAndnB4X2RzcC9hcm0vaGlnaGJkX2xv
b3BmaWx0ZXJfbmVvbi5jfDY3NSBjb2wgNjd8CisvLyB3YXJuaW5nOiAnb3ExJyBtYXkgYmUgdXNl
ZCB1bmluaXRpYWxpemVkIGluIHRoaXMgZnVuY3Rpb24KKy8vIFstV21heWJlLXVuaW5pdGlhbGl6
ZWRdJywgZm9yIG9xMS1vcDEuIFdpdGhvdXQgcmV3b3JraW5nIHRoZSBjb2RlIG9yIGFkZGluZwor
Ly8gYW4gYWRkaXRpb25hbCBicmFuY2ggdGhpcyB3YXJuaW5nIGNhbm5vdCBiZSBzaWxlbmNlZCBv
dGhlcndpc2UuIFRoZQorLy8gbG9vcGZpbHRlciBpcyBvbmx5IGNhbGxlZCB3aGVuIG5lZWRlZCBm
b3IgYSBibG9jayBzbyB0aGVzZSBvdXRwdXQgcGl4ZWxzCisvLyB3aWxsIGJlIHNldC4KKyNpZiBk
ZWZpbmVkKF9fR05VQ19fKSAmJiBfX0dOVUNfXyA+PSA0ICYmICFkZWZpbmVkKF9fY2xhbmdfXykK
KyNwcmFnbWEgR0NDIGRpYWdub3N0aWMgcHVzaAorI3ByYWdtYSBHQ0MgZGlhZ25vc3RpYyBpZ25v
cmVkICItV21heWJlLXVuaW5pdGlhbGl6ZWQiCisjZW5kaWYKKwogc3RhdGljIHZvaWQgbHBmX2hv
cml6b250YWxfMTZfa2VybmVsKHVpbnQxNl90ICpzLCBpbnQgcCwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50MTZ4OF90IGJsaW1pdF92ZWMsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdWludDE2eDhfdCBsaW1pdF92ZWMs
CkBAIC03MjMsNiArNzM0LDEwIEBAIHN0YXRpYyB2b2lkIGxwZl92ZXJ0aWNhbF8xNl9rZXJuZWwo
dWludDE2X3QgKnMsIGludCBwLAogICB9CiB9CiAKKyNpZiBkZWZpbmVkKF9fR05VQ19fKSAmJiBf
X0dOVUNfXyA+PSA0ICYmICFkZWZpbmVkKF9fY2xhbmdfXykKKyNwcmFnbWEgR0NDIGRpYWdub3N0
aWMgcG9wCisjZW5kaWYKKwogdm9pZCB2cHhfaGlnaGJkX2xwZl9ob3Jpem9udGFsXzE2X25lb24o
dWludDE2X3QgKnMsIGludCBwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3QgdWludDhfdCAqYmxpbWl0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgY29uc3QgdWludDhfdCAqbGltaXQsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYXJtL2xvb3BmaWx0ZXJfbmVvbi5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9sb29w
ZmlsdGVyX25lb24uYwppbmRleCA3NDE5Y2VhMDIyZGU1ZGY0ZWYyMTQ4ZTM5MmJjZjVjYjc1ZmU2
YzZkLi5jNTRlNTg4MjM5NGQ3M2Q4ZGMwYWMzNTNiMzdjNWI5NDkxMTU5OTVlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2xvb3BmaWx0ZXJfbmVvbi5jCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9hcm0vbG9vcGZpbHRlcl9uZW9uLmMKQEAgLTk3NSw2ICs5NzUsMTcgQEAgRlVO
X0xQRl8xNl9LRVJORUwoXywgOCkgICAgICAgIC8vIGxwZl8xNl9rZXJuZWwKIEZVTl9MUEZfMTZf
S0VSTkVMKF9kdWFsXywgMTYpICAvLyBscGZfMTZfZHVhbF9rZXJuZWwKICN1bmRlZiBGVU5fTFBG
XzE2X0tFUk5FTAogCisvLyBRdWlldCB3YXJuaW5ncyBvZiB0aGUgZm9ybTogJ3ZweF9kc3AvYXJt
L2xvb3BmaWx0ZXJfbmVvbi5jfDk4MSBjb2wgNDJ8CisvLyB3YXJuaW5nOiAnb3ExJyBtYXkgYmUg
dXNlZCB1bmluaXRpYWxpemVkIGluIHRoaXMgZnVuY3Rpb24KKy8vIFstV21heWJlLXVuaW5pdGlh
bGl6ZWRdJywgZm9yIG9xMS1vcDEuIFdpdGhvdXQgcmV3b3JraW5nIHRoZSBjb2RlIG9yIGFkZGlu
ZworLy8gYW4gYWRkaXRpb25hbCBicmFuY2ggdGhpcyB3YXJuaW5nIGNhbm5vdCBiZSBzaWxlbmNl
ZCBvdGhlcndpc2UuIFRoZQorLy8gbG9vcGZpbHRlciBpcyBvbmx5IGNhbGxlZCB3aGVuIG5lZWRl
ZCBmb3IgYSBibG9jayBzbyB0aGVzZSBvdXRwdXQgcGl4ZWxzCisvLyB3aWxsIGJlIHNldC4KKyNp
ZiBkZWZpbmVkKF9fR05VQ19fKSAmJiBfX0dOVUNfXyA+PSA0ICYmICFkZWZpbmVkKF9fY2xhbmdf
XykKKyNwcmFnbWEgR0NDIGRpYWdub3N0aWMgcHVzaAorI3ByYWdtYSBHQ0MgZGlhZ25vc3RpYyBp
Z25vcmVkICItV21heWJlLXVuaW5pdGlhbGl6ZWQiCisjZW5kaWYKKwogdm9pZCB2cHhfbHBmX2hv
cml6b250YWxfMTZfbmVvbih1aW50OF90ICpzLCBpbnQgcCwgY29uc3QgdWludDhfdCAqYmxpbWl0
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50OF90ICpsaW1pdCwg
Y29uc3QgdWludDhfdCAqdGhyZXNoKSB7CiAgIHVpbnQ4eDhfdCBwNywgcDYsIHA1LCBwNCwgcDMs
IHAyLCBwMSwgcDAsIHEwLCBxMSwgcTIsIHEzLCBxNCwgcTUsIHE2LCBxNywgb3A2LApAQCAtMTA5
MCwzICsxMTAxLDcgQEAgdm9pZCB2cHhfbHBmX3ZlcnRpY2FsXzE2X2R1YWxfbmVvbih1aW50OF90
ICpzLCBpbnQgcCwgY29uc3QgdWludDhfdCAqYmxpbWl0LAogICAgICAgICAgICAgICB2Z2V0X2hp
Z2hfdTgob3EwKSwgdmdldF9oaWdoX3U4KG9xMSkpOwogICB9CiB9CisKKyNpZiBkZWZpbmVkKF9f
R05VQ19fKSAmJiBfX0dOVUNfXyA+PSA0ICYmICFkZWZpbmVkKF9fY2xhbmdfXykKKyNwcmFnbWEg
R0NDIGRpYWdub3N0aWMgcG9wCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9taXBzL21hY3Jvc19tc2EuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9taXBzL21hY3Jvc19tc2Eu
aAppbmRleCBhM2E1YTRkZmVlYjJkYzVhN2ZlODhjNTc1YTA4MDAxYzI5NzdiNWE4Li4zYzJmNTBj
NzkwYmY1M2Q0YjVjYjFhMmE1M2VhNGU0Yzk1NTFmODJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvbWlwcy9tYWNyb3NfbXNhLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL21pcHMv
bWFjcm9zX21zYS5oCkBAIC04OCwxMCArODgsMTAgQEAKICAgICBjb25zdCB1aW50OF90ICpwc3Jj
X2x3X20gPSAoY29uc3QgdWludDhfdCAqKShwc3JjKTsgICAgICAgICAgXAogICAgIHVpbnQzMl90
IHZhbF9sd19tOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKLSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygidWx3ICAlW3ZhbF9sd19tXSwgICVb
cHNyY19sd19tXSAgXG5cdCIgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICAgICAgICAgICAgICAgICAgICAg
OiBbdmFsX2x3X21dICI9ciIodmFsX2x3X20pICAgICAgICAgICAgIFwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICA6IFtwc3JjX2x3X21dICJtIigqcHNyY19sd19tKSk7ICAgICAgICAgXAorICAg
IF9fYXNtX18gX192b2xhdGlsZV9fKCJsd3IgJVt2YWxfbHdfbV0sIDAoJVtwc3JjX2x3X21dKSBc
blx0IiBcCisgICAgICAgICAgICAgICAgICAgICAgICAgImx3bCAlW3ZhbF9sd19tXSwgMyglW3Bz
cmNfbHdfbV0pIFxuXHQiIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6IFt2YWxfbHdfbV0g
Ij0mciIodmFsX2x3X20pICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgIDog
W3BzcmNfbHdfbV0gInIiKHBzcmNfbHdfbSkpOyAgICAgICAgICBcCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICB2
YWxfbHdfbTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAogICB9KQpAQCAtMTAyLDEwICsxMDIsMTAgQEAKICAgICBjb25zdCB1aW50OF90ICpwc3Jj
X2xkX20gPSAoY29uc3QgdWludDhfdCAqKShwc3JjKTsgICAgICAgICAgXAogICAgIHVpbnQ2NF90
IHZhbF9sZF9tID0gMDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKLSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygidWxkICAlW3ZhbF9sZF9tXSwgICVb
cHNyY19sZF9tXSAgXG5cdCIgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICAgICAgICAgICAgICAgICAgICAg
OiBbdmFsX2xkX21dICI9ciIodmFsX2xkX20pICAgICAgICAgICAgIFwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICA6IFtwc3JjX2xkX21dICJtIigqcHNyY19sZF9tKSk7ICAgICAgICAgXAorICAg
IF9fYXNtX18gX192b2xhdGlsZV9fKCJsZHIgJVt2YWxfbGRfbV0sIDAoJVtwc3JjX2xkX21dKSBc
blx0IiBcCisgICAgICAgICAgICAgICAgICAgICAgICAgImxkbCAlW3ZhbF9sZF9tXSwgNyglW3Bz
cmNfbGRfbV0pIFxuXHQiIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6IFt2YWxfbGRfbV0g
Ij0mciIodmFsX2xkX20pICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgIDog
W3BzcmNfbGRfbV0gInIiKHBzcmNfbGRfbSkpOyAgICAgICAgICBcCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICB2
YWxfbGRfbTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAogICB9KQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL21pcHMvc2FkX21taS5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL21pcHMvc2FkX21taS5jCmluZGV4IDQzNjhkYjVmZGI3NzA4
Y2Q0MTU3MGE0MDI5NDk2ZDY5MmRkMWNjNDAuLmVhY2E0NzczZjJiODZlYmEyNTQwMDU0MjlmYzU5
NjgyODExY2YzMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9taXBzL3NhZF9tbWku
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbWlwcy9zYWRfbW1pLmMKQEAgLTM2NCw4ICszNjQs
OSBAQCBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCB2cHhfc2FkNjR4KGNvbnN0IHVpbnQ4X3Qg
KnNyYywgaW50IHNyY19zdHJpZGUsCiAgIGRvdWJsZSBmdG1wMSwgZnRtcDIsIGZ0bXAzLCBmdG1w
NCwgZnRtcDU7CiAgIG1pcHNfcmVnIGxfY291bnRlciA9IGNvdW50ZXI7CiAKKyAgLyogY2xhbmct
Zm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlICgKLSAgICAieG9yICAgICAgICAlW2Z0
bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgorICAgICJw
eG9yICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW2Z0bXA1XSAgICAgICAgICAg
IFxuXHQiCiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXG5cdCIKICAgICAvLyBJbmNsdWRlIHR3byBsb29wIGJvZHksIHRvIHJl
ZHVjZSBsb29wIHRpbWUuCiAgICAgU0FEX1NSQ19SRUZfQUJTX1NVQl82NApAQCAtMzgzLDYgKzM4
NCw3IEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IHZweF9zYWQ2NHgoY29uc3QgdWludDhf
dCAqc3JjLCBpbnQgc3JjX3N0cmlkZSwKICAgICA6IFtzcmNfc3RyaWRlXSJyIigobWlwc19yZWcp
c3JjX3N0cmlkZSksCiAgICAgICBbcmVmX3N0cmlkZV0iciIoKG1pcHNfcmVnKXJlZl9zdHJpZGUp
CiAgICk7CisgIC8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCiAgIHJldHVybiBzYWQ7CiB9CkBAIC00
MDUsOSArNDA3LDExIEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IHZweF9zYWRfYXZnNjR4
KGNvbnN0IHVpbnQ4X3QgKnNyYywgaW50IHNyY19zdHJpZGUsCiAgIHVuc2lnbmVkIGludCBzYWQ7
CiAgIGRvdWJsZSBmdG1wMSwgZnRtcDIsIGZ0bXAzLCBmdG1wNCwgZnRtcDU7CiAgIG1pcHNfcmVn
IGxfY291bnRlciA9IGNvdW50ZXI7CisgIG1pcHNfcmVnIGxfc2Vjb25kX3ByZWQgPSAobWlwc19y
ZWcpc2Vjb25kX3ByZWQ7CiAKKyAgLyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZv
bGF0aWxlICgKLSAgICAieG9yICAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgJVtm
dG1wNV0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDVdLCAgICVbZnRt
cDVdLCAgICAgICAlW2Z0bXA1XSAgICAgICAgICAgIFxuXHQiCiAgICAgIjE6ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAv
LyBJbmNsdWRlIHR3byBsb29wIGJvZHksIHRvIHJlZHVjZSBsb29wIHRpbWUuCiAgICAgU0FEX1NS
Q19BVkdSRUZfQUJTX1NVQl82NApAQCAtNDI0LDExICs0MjgsMTIgQEAgc3RhdGljIGlubGluZSB1
bnNpZ25lZCBpbnQgdnB4X3NhZF9hdmc2NHgoY29uc3QgdWludDhfdCAqc3JjLCBpbnQgc3JjX3N0
cmlkZSwKICAgICA6IFtmdG1wMV0iPSZmIihmdG1wMSksIFtmdG1wMl0iPSZmIihmdG1wMiksIFtm
dG1wM10iPSZmIihmdG1wMyksCiAgICAgICBbZnRtcDRdIj0mZiIoZnRtcDQpLCBbZnRtcDVdIj0m
ZiIoZnRtcDUpLCBbY291bnRlcl0iKyZyIihsX2NvdW50ZXIpLAogICAgICAgW3NyY10iKyZyIihz
cmMpLCBbcmVmXSIrJnIiKHJlZiksCi0gICAgICBbc2Vjb25kX3ByZWRdIismciIoKG1pcHNfcmVn
KXNlY29uZF9wcmVkKSwKKyAgICAgIFtzZWNvbmRfcHJlZF0iKyZyIihsX3NlY29uZF9wcmVkKSwK
ICAgICAgIFtzYWRdIj0mciIoc2FkKQogICAgIDogW3NyY19zdHJpZGVdInIiKChtaXBzX3JlZylz
cmNfc3RyaWRlKSwKICAgICAgIFtyZWZfc3RyaWRlXSJyIigobWlwc19yZWcpcmVmX3N0cmlkZSkK
ICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICovCiAKICAgcmV0dXJuIHNhZDsKIH0KQEAgLTQ1
MCw4ICs0NTUsOSBAQCBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCB2cHhfc2FkMzJ4KGNvbnN0
IHVpbnQ4X3QgKnNyYywgaW50IHNyY19zdHJpZGUsCiAgIGRvdWJsZSBmdG1wMSwgZnRtcDIsIGZ0
bXAzLCBmdG1wNCwgZnRtcDU7CiAgIG1pcHNfcmVnIGxfY291bnRlciA9IGNvdW50ZXI7CiAKKyAg
LyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlICgKLSAgICAieG9yICAg
ICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0
IgorICAgICJweG9yICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW2Z0bXA1XSAg
ICAgICAgICAgIFxuXHQiCiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAvLyBJbmNsdWRlIHR3byBsb29wIGJv
ZHksIHRvIHJlZHVjZSBsb29wIHRpbWUuCiAgICAgU0FEX1NSQ19SRUZfQUJTX1NVQl8zMgpAQCAt
NDY5LDYgKzQ3NSw3IEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IHZweF9zYWQzMngoY29u
c3QgdWludDhfdCAqc3JjLCBpbnQgc3JjX3N0cmlkZSwKICAgICA6IFtzcmNfc3RyaWRlXSJyIigo
bWlwc19yZWcpc3JjX3N0cmlkZSksCiAgICAgICBbcmVmX3N0cmlkZV0iciIoKG1pcHNfcmVnKXJl
Zl9zdHJpZGUpCiAgICk7CisgIC8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCiAgIHJldHVybiBzYWQ7
CiB9CkBAIC00OTMsOSArNTAwLDExIEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IHZweF9z
YWRfYXZnMzJ4KGNvbnN0IHVpbnQ4X3QgKnNyYywgaW50IHNyY19zdHJpZGUsCiAgIHVuc2lnbmVk
IGludCBzYWQ7CiAgIGRvdWJsZSBmdG1wMSwgZnRtcDIsIGZ0bXAzLCBmdG1wNCwgZnRtcDU7CiAg
IG1pcHNfcmVnIGxfY291bnRlciA9IGNvdW50ZXI7CisgIG1pcHNfcmVnIGxfc2Vjb25kX3ByZWQg
PSAobWlwc19yZWcpc2Vjb25kX3ByZWQ7CiAKKyAgLyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBf
X2FzbV9fIHZvbGF0aWxlICgKLSAgICAieG9yICAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwg
ICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDVd
LCAgICVbZnRtcDVdLCAgICAgICAlW2Z0bXA1XSAgICAgICAgICAgIFxuXHQiCiAgICAgIjE6ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5c
dCIKICAgICAvLyBJbmNsdWRlIHR3byBsb29wIGJvZHksIHRvIHJlZHVjZSBsb29wIHRpbWUuCiAg
ICAgU0FEX1NSQ19BVkdSRUZfQUJTX1NVQl8zMgpAQCAtNTEyLDExICs1MjEsMTIgQEAgc3RhdGlj
IGlubGluZSB1bnNpZ25lZCBpbnQgdnB4X3NhZF9hdmczMngoY29uc3QgdWludDhfdCAqc3JjLCBp
bnQgc3JjX3N0cmlkZSwKICAgICA6IFtmdG1wMV0iPSZmIihmdG1wMSksIFtmdG1wMl0iPSZmIihm
dG1wMiksIFtmdG1wM10iPSZmIihmdG1wMyksCiAgICAgICBbZnRtcDRdIj0mZiIoZnRtcDQpLCBb
ZnRtcDVdIj0mZiIoZnRtcDUpLCBbY291bnRlcl0iKyZyIihsX2NvdW50ZXIpLAogICAgICAgW3Ny
Y10iKyZyIihzcmMpLCBbcmVmXSIrJnIiKHJlZiksCi0gICAgICBbc2Vjb25kX3ByZWRdIismciIo
KG1pcHNfcmVnKXNlY29uZF9wcmVkKSwKKyAgICAgIFtzZWNvbmRfcHJlZF0iKyZyIihsX3NlY29u
ZF9wcmVkKSwKICAgICAgIFtzYWRdIj0mciIoc2FkKQogICAgIDogW3NyY19zdHJpZGVdInIiKCht
aXBzX3JlZylzcmNfc3RyaWRlKSwKICAgICAgIFtyZWZfc3RyaWRlXSJyIigobWlwc19yZWcpcmVm
X3N0cmlkZSkKICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICovCiAKICAgcmV0dXJuIHNhZDsK
IH0KQEAgLTUzOSw4ICs1NDksOSBAQCBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCB2cHhfc2Fk
MTZ4KGNvbnN0IHVpbnQ4X3QgKnNyYywgaW50IHNyY19zdHJpZGUsCiAgIGRvdWJsZSBmdG1wMSwg
ZnRtcDIsIGZ0bXAzLCBmdG1wNCwgZnRtcDU7CiAgIG1pcHNfcmVnIGxfY291bnRlciA9IGNvdW50
ZXI7CiAKKyAgLyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlICgKLSAg
ICAieG9yICAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgJVtmdG1wNV0gICAgICAg
ICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAl
W2Z0bXA1XSAgICAgICAgICAgIFxuXHQiCiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAvLyBJbmNsdWRlIHR3
byBsb29wIGJvZHksIHRvIHJlZHVjZSBsb29wIHRpbWUuCiAgICAgU0FEX1NSQ19SRUZfQUJTX1NV
Ql8xNgpAQCAtNTU4LDYgKzU2OSw3IEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IHZweF9z
YWQxNngoY29uc3QgdWludDhfdCAqc3JjLCBpbnQgc3JjX3N0cmlkZSwKICAgICA6IFtzcmNfc3Ry
aWRlXSJyIigobWlwc19yZWcpc3JjX3N0cmlkZSksCiAgICAgICBbcmVmX3N0cmlkZV0iciIoKG1p
cHNfcmVnKXJlZl9zdHJpZGUpCiAgICk7CisgIC8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCiAgIHJl
dHVybiBzYWQ7CiB9CkBAIC01ODYsOSArNTk4LDExIEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQg
aW50IHZweF9zYWRfYXZnMTZ4KGNvbnN0IHVpbnQ4X3QgKnNyYywgaW50IHNyY19zdHJpZGUsCiAg
IHVuc2lnbmVkIGludCBzYWQ7CiAgIGRvdWJsZSBmdG1wMSwgZnRtcDIsIGZ0bXAzLCBmdG1wNCwg
ZnRtcDU7CiAgIG1pcHNfcmVnIGxfY291bnRlciA9IGNvdW50ZXI7CisgIG1pcHNfcmVnIGxfc2Vj
b25kX3ByZWQgPSAobWlwc19yZWcpc2Vjb25kX3ByZWQ7CiAKKyAgLyogY2xhbmctZm9ybWF0IG9m
ZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlICgKLSAgICAieG9yICAgICAgICAlW2Z0bXA1XSwgICAl
W2Z0bXA1XSwgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAg
ICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW2Z0bXA1XSAgICAgICAgICAgIFxuXHQiCiAg
ICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXG5cdCIKICAgICAvLyBJbmNsdWRlIHR3byBsb29wIGJvZHksIHRvIHJlZHVjZSBsb29w
IHRpbWUuCiAgICAgU0FEX1NSQ19BVkdSRUZfQUJTX1NVQl8xNgpAQCAtNjA1LDExICs2MTksMTIg
QEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgdnB4X3NhZF9hdmcxNngoY29uc3QgdWludDhf
dCAqc3JjLCBpbnQgc3JjX3N0cmlkZSwKICAgICA6IFtmdG1wMV0iPSZmIihmdG1wMSksIFtmdG1w
Ml0iPSZmIihmdG1wMiksIFtmdG1wM10iPSZmIihmdG1wMyksCiAgICAgICBbZnRtcDRdIj0mZiIo
ZnRtcDQpLCBbZnRtcDVdIj0mZiIoZnRtcDUpLCBbY291bnRlcl0iKyZyIihsX2NvdW50ZXIpLAog
ICAgICAgW3NyY10iKyZyIihzcmMpLCBbcmVmXSIrJnIiKHJlZiksCi0gICAgICBbc2Vjb25kX3By
ZWRdIismciIoKG1pcHNfcmVnKXNlY29uZF9wcmVkKSwKKyAgICAgIFtzZWNvbmRfcHJlZF0iKyZy
IihsX3NlY29uZF9wcmVkKSwKICAgICAgIFtzYWRdIj0mciIoc2FkKQogICAgIDogW3NyY19zdHJp
ZGVdInIiKChtaXBzX3JlZylzcmNfc3RyaWRlKSwKICAgICAgIFtyZWZfc3RyaWRlXSJyIigobWlw
c19yZWcpcmVmX3N0cmlkZSkKICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICovCiAKICAgcmV0
dXJuIHNhZDsKIH0KQEAgLTYzMiw4ICs2NDcsOSBAQCBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGlu
dCB2cHhfc2FkOHgoY29uc3QgdWludDhfdCAqc3JjLCBpbnQgc3JjX3N0cmlkZSwKICAgZG91Ymxl
IGZ0bXAxLCBmdG1wMiwgZnRtcDM7CiAgIG1pcHNfcmVnIGxfY291bnRlciA9IGNvdW50ZXI7CiAK
KyAgLyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlICgKLSAgICAieG9y
ICAgICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAzXSwgICAgICAgJVtmdG1wM10gICAgICAgICAgICBc
blx0IgorICAgICJweG9yICAgICAgICVbZnRtcDNdLCAgICVbZnRtcDNdLCAgICAgICAlW2Z0bXAz
XSAgICAgICAgICAgIFxuXHQiCiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAvLyBJbmNsdWRlIHR3byBsb29w
IGJvZHksIHRvIHJlZHVjZSBsb29wIHRpbWUuCiAgICAgU0FEX1NSQ19SRUZfQUJTX1NVQl84CkBA
IC02NTEsNiArNjY3LDcgQEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgdnB4X3NhZDh4KGNv
bnN0IHVpbnQ4X3QgKnNyYywgaW50IHNyY19zdHJpZGUsCiAgICAgOiBbc3JjX3N0cmlkZV0iciIo
KG1pcHNfcmVnKXNyY19zdHJpZGUpLAogICAgICAgW3JlZl9zdHJpZGVdInIiKChtaXBzX3JlZyly
ZWZfc3RyaWRlKQogICApOworICAvKiBjbGFuZy1mb3JtYXQgb24gKi8KIAogICByZXR1cm4gc2Fk
OwogfQpAQCAtNjc5LDkgKzY5NiwxMSBAQCBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCB2cHhf
c2FkX2F2Zzh4KGNvbnN0IHVpbnQ4X3QgKnNyYywgaW50IHNyY19zdHJpZGUsCiAgIHVuc2lnbmVk
IGludCBzYWQ7CiAgIGRvdWJsZSBmdG1wMSwgZnRtcDIsIGZ0bXAzOwogICBtaXBzX3JlZyBsX2Nv
dW50ZXIgPSBjb3VudGVyOworICBtaXBzX3JlZyBsX3NlY29uZF9wcmVkID0gKG1pcHNfcmVnKXNl
Y29uZF9wcmVkOwogCisgIC8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KICAgX19hc21fXyB2b2xhdGls
ZSAoCi0gICAgInhvciAgICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICVbZnRtcDNd
ICAgICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAzXSwg
ICAgICAgJVtmdG1wM10gICAgICAgICAgICBcblx0IgogICAgICIxOiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgLy8gSW5j
bHVkZSB0d28gbG9vcCBib2R5LCB0byByZWR1Y2UgbG9vcCB0aW1lLgogICAgIFNBRF9TUkNfQVZH
UkVGX0FCU19TVUJfOApAQCAtNjk3LDExICs3MTYsMTIgQEAgc3RhdGljIGlubGluZSB1bnNpZ25l
ZCBpbnQgdnB4X3NhZF9hdmc4eChjb25zdCB1aW50OF90ICpzcmMsIGludCBzcmNfc3RyaWRlLAog
ICAgICJtZmMxICAgICAgICVbc2FkXSwgICAgICVbZnRtcDNdICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCiAgICAgOiBbZnRtcDFdIj0mZiIoZnRtcDEpLCBbZnRtcDJdIj0mZiIoZnRt
cDIpLCBbZnRtcDNdIj0mZiIoZnRtcDMpLAogICAgICAgW2NvdW50ZXJdIismciIobF9jb3VudGVy
KSwgW3NyY10iKyZyIihzcmMpLCBbcmVmXSIrJnIiKHJlZiksCi0gICAgICBbc2Vjb25kX3ByZWRd
IismciIoKG1pcHNfcmVnKXNlY29uZF9wcmVkKSwKKyAgICAgIFtzZWNvbmRfcHJlZF0iKyZyIihs
X3NlY29uZF9wcmVkKSwKICAgICAgIFtzYWRdIj0mciIoc2FkKQogICAgIDogW3NyY19zdHJpZGVd
InIiKChtaXBzX3JlZylzcmNfc3RyaWRlKSwKICAgICAgIFtyZWZfc3RyaWRlXSJyIigobWlwc19y
ZWcpcmVmX3N0cmlkZSkKICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICovCiAKICAgcmV0dXJu
IHNhZDsKIH0KQEAgLTcyNCw4ICs3NDQsOSBAQCBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCB2
cHhfc2FkNHgoY29uc3QgdWludDhfdCAqc3JjLCBpbnQgc3JjX3N0cmlkZSwKICAgZG91YmxlIGZ0
bXAxLCBmdG1wMiwgZnRtcDM7CiAgIG1pcHNfcmVnIGxfY291bnRlciA9IGNvdW50ZXI7CiAKKyAg
LyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlICgKLSAgICAieG9yICAg
ICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAzXSwgICAgICAgJVtmdG1wM10gICAgICAgICAgICBcblx0
IgorICAgICJweG9yICAgICAgICVbZnRtcDNdLCAgICVbZnRtcDNdLCAgICAgICAlW2Z0bXAzXSAg
ICAgICAgICAgIFxuXHQiCiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAvLyBJbmNsdWRlIHR3byBsb29wIGJv
ZHksIHRvIHJlZHVjZSBsb29wIHRpbWUuCiAgICAgU0FEX1NSQ19SRUZfQUJTX1NVQl80CkBAIC03
NDMsNiArNzY0LDcgQEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgdnB4X3NhZDR4KGNvbnN0
IHVpbnQ4X3QgKnNyYywgaW50IHNyY19zdHJpZGUsCiAgICAgOiBbc3JjX3N0cmlkZV0iciIoKG1p
cHNfcmVnKXNyY19zdHJpZGUpLAogICAgICAgW3JlZl9zdHJpZGVdInIiKChtaXBzX3JlZylyZWZf
c3RyaWRlKQogICApOworICAvKiBjbGFuZy1mb3JtYXQgb24gKi8KIAogICByZXR1cm4gc2FkOwog
fQpAQCAtNzY3LDkgKzc4OSwxMSBAQCBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCB2cHhfc2Fk
X2F2ZzR4KGNvbnN0IHVpbnQ4X3QgKnNyYywgaW50IHNyY19zdHJpZGUsCiAgIHVuc2lnbmVkIGlu
dCBzYWQ7CiAgIGRvdWJsZSBmdG1wMSwgZnRtcDIsIGZ0bXAzOwogICBtaXBzX3JlZyBsX2NvdW50
ZXIgPSBjb3VudGVyOworICBtaXBzX3JlZyBsX3NlY29uZF9wcmVkID0gKG1pcHNfcmVnKXNlY29u
ZF9wcmVkOwogCisgIC8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KICAgX19hc21fXyB2b2xhdGlsZSAo
Ci0gICAgInhvciAgICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICVbZnRtcDNdICAg
ICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAzXSwgICAg
ICAgJVtmdG1wM10gICAgICAgICAgICBcblx0IgogICAgICIxOiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgLy8gSW5jbHVk
ZSB0d28gbG9vcCBib2R5LCB0byByZWR1Y2UgbG9vcCB0aW1lLgogICAgIFNBRF9TUkNfQVZHUkVG
X0FCU19TVUJfNApAQCAtNzg1LDExICs4MDksMTIgQEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBp
bnQgdnB4X3NhZF9hdmc0eChjb25zdCB1aW50OF90ICpzcmMsIGludCBzcmNfc3RyaWRlLAogICAg
ICJtZmMxICAgICAgICVbc2FkXSwgICAgICVbZnRtcDNdICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCiAgICAgOiBbZnRtcDFdIj0mZiIoZnRtcDEpLCBbZnRtcDJdIj0mZiIoZnRtcDIp
LCBbZnRtcDNdIj0mZiIoZnRtcDMpLAogICAgICAgW2NvdW50ZXJdIismciIobF9jb3VudGVyKSwg
W3NyY10iKyZyIihzcmMpLCBbcmVmXSIrJnIiKHJlZiksCi0gICAgICBbc2Vjb25kX3ByZWRdIism
ciIoKG1pcHNfcmVnKXNlY29uZF9wcmVkKSwKKyAgICAgIFtzZWNvbmRfcHJlZF0iKyZyIihsX3Nl
Y29uZF9wcmVkKSwKICAgICAgIFtzYWRdIj0mciIoc2FkKQogICAgIDogW3NyY19zdHJpZGVdInIi
KChtaXBzX3JlZylzcmNfc3RyaWRlKSwKICAgICAgIFtyZWZfc3RyaWRlXSJyIigobWlwc19yZWcp
cmVmX3N0cmlkZSkKICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICovCiAKICAgcmV0dXJuIHNh
ZDsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9taXBzL3N1YnRyYWN0X21taS5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL21pcHMvc3VidHJhY3RfbW1pLmMKaW5kZXggOWYzNjE3MDRh
ODFiYmIyZmZkZjE2NGI4ZWU2MjA3NGUyMjIxYjQ2NC4uOGJkN2U2OTc3Y2QwNzE5MjgyMDkyMmZi
NGZmM2ZmN2MwZmI0YmM3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL21pcHMvc3Vi
dHJhY3RfbW1pLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL21pcHMvc3VidHJhY3RfbW1pLmMK
QEAgLTI0LDcgKzI0LDcgQEAgdm9pZCB2cHhfc3VidHJhY3RfYmxvY2tfbW1pKGludCByb3dzLCBp
bnQgY29scywgaW50MTZfdCAqZGlmZiwKICAgICBzd2l0Y2ggKHJvd3MpIHsKICAgICAgIGNhc2Ug
NDoKICAgICAgICAgX19hc21fXyB2b2xhdGlsZSgKLSAgICAgICAgICAgICJ4b3IgICAgICAgICVb
ZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMF0gICAgICAgIFxuXHQiCisgICAg
ICAgICAgICAicHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRt
cDBdICAgICAgICBcblx0IgogI2lmIF9NSVBTX1NJTSA9PSBfQUJJTzMyCiAgICAgICAgICAgICAi
dWx3ICAgICAgICAlW3RtcDBdLCAgICAweDAwKCVbc3JjXSkgICAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgogICAgICAgICAgICAgIm10YzEgICAgICAgJVt0bXAwXSwgICAgJVtmdG1wMV0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKQEAgLTExOCw3ICsxMTgsNyBAQCB2b2lkIHZw
eF9zdWJ0cmFjdF9ibG9ja19tbWkoaW50IHJvd3MsIGludCBjb2xzLCBpbnQxNl90ICpkaWZmLAog
ICAgICAgICBicmVhazsKICAgICAgIGNhc2UgODoKICAgICAgICAgX19hc21fXyB2b2xhdGlsZSgK
LSAgICAgICAgICAgICJ4b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAg
JVtmdG1wMF0gICAgICAgIFxuXHQiCisgICAgICAgICAgICAicHhvciAgICAgICAlW2Z0bXAwXSwg
ICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDBdICAgICAgICBcblx0IgogICAgICAgICAgICAg
ImxpICAgICAgICAgJVt0bXAwXSwgICAgMHgwMiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXG5cdCIKICAgICAgICAgICAgICIxOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgICAgICAgICAiZ3NsZGxjMSAgICAl
W2Z0bXAxXSwgICAweDA3KCVbc3JjXSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgpAQCAt
MjA2LDcgKzIwNiw3IEBAIHZvaWQgdnB4X3N1YnRyYWN0X2Jsb2NrX21taShpbnQgcm93cywgaW50
IGNvbHMsIGludDE2X3QgKmRpZmYsCiAgICAgICAgIGJyZWFrOwogICAgICAgY2FzZSAxNjoKICAg
ICAgICAgX19hc21fXyB2b2xhdGlsZSgKLSAgICAgICAgICAgICJ4b3IgICAgICAgICVbZnRtcDBd
LCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMF0gICAgICAgIFxuXHQiCisgICAgICAgICAg
ICAicHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDBdICAg
ICAgICBcblx0IgogICAgICAgICAgICAgImxpICAgICAgICAgJVt0bXAwXSwgICAgMHgwOCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAgICAgICAgICIxOiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAg
ICAgICAgICAgICAiZ3NsZGxjMSAgICAlW2Z0bXAxXSwgICAweDA3KCVbc3JjXSkgICAgICAgICAg
ICAgICAgICAgICAgICBcblx0IgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL21pcHMv
dmFyaWFuY2VfbW1pLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbWlwcy92YXJpYW5jZV9tbWkuYwpp
bmRleCBjMTc4MGMzM2FmYTk4NTBjZGE2ZWJhZTU0MzkyMWJmOTg0NTA2NTYzLi5jMmFkY2ZhMDE4
OTQ3ZWI5N2ZkOTQ3ZDllMjdjOTkxM2ZlZDAzYmU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvbWlwcy92YXJpYW5jZV9tbWkuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbWlwcy92
YXJpYW5jZV9tbWkuYwpAQCAtMTUwLDcgKzE1MCw3IEBAIHN0YXRpYyBjb25zdCB1aW50OF90IGJp
bGluZWFyX2ZpbHRlcnNbOF1bMl0gPSB7CiAgICJwc3JsaCAgICAgICVbZnRtcDJdLCAgICVbZnRt
cDJdLCAgICAgICAlW2Z0bXA2XSAgICAgICAgICAgIFxuXHQiIFwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAv
KiBzdG9yZTogdGVtcDJbMF0gfiB0ZW1wMlszXSAqLyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCi0gICJhbmQgICAgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAlW21h
c2tdICAgICAgICAgICAgIFxuXHQiIFwKKyAgInBhbmQgICAgICAgJVtmdG1wMl0sICAgJVtmdG1w
Ml0sICAgICAgICVbbWFza10gICAgICAgICAgICAgXG5cdCIgXAogICAicGFja3VzaGIgICAlW2Z0
bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IiBcCiAgICJn
c3NkcmMxICAgICVbZnRtcDJdLCAgIDB4MDAoJVt0ZW1wMl9wdHJdKSAgICAgICAgICAgICAgICAg
IFxuXHQiCiAKQEAgLTE2Myw3ICsxNjMsNyBAQCBzdGF0aWMgY29uc3QgdWludDhfdCBiaWxpbmVh
cl9maWx0ZXJzWzhdWzJdID0gewogICAicHNybGggICAgICAlW2Z0bXA0XSwgICAlW2Z0bXA0XSwg
ICAgICAgJVtmdG1wNl0gICAgICAgICAgICBcblx0IiBcCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgLyogc3Rv
cmU6IHRlbXAyWzBdIH4gdGVtcDJbM10gKi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAotICAiYW5kICAgICAgICAlW2Z0bXA0XSwgICAlW2Z0bXA0XSwgICAgICAgJVttYXNrXSAg
ICAgICAgICAgICBcblx0IiBcCisgICJwYW5kICAgICAgICVbZnRtcDRdLCAgICVbZnRtcDRdLCAg
ICAgICAlW21hc2tdICAgICAgICAgICAgIFxuXHQiIFwKICAgInBhY2t1c2hiICAgJVtmdG1wNF0s
ICAgJVtmdG1wNF0sICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIgXAogICAiZ3NzZHJj
MSAgICAlW2Z0bXA0XSwgICAweDAwKCVbdGVtcDJfcHRyXSkgICAgICAgICAgICAgICAgICBcblx0
IgogCkBAIC0yMjUsOCArMjI1LDggQEAgc3RhdGljIGNvbnN0IHVpbnQ4X3QgYmlsaW5lYXJfZmls
dGVyc1s4XVsyXSA9IHsKICAgInBzcmxoICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAg
ICVbZnRtcDE0XSAgICAgICAgICAgXG5cdCIgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgIC8qIHN0b3JlOiB0
ZW1wMlswXSB+IHRlbXAyWzddICovICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
LSAgImFuZCAgICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICVbbWFza10gICAgICAg
ICAgICAgXG5cdCIgXAotICAiYW5kICAgICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAzXSwgICAgICAg
JVttYXNrXSAgICAgICAgICAgICBcblx0IiBcCisgICJwYW5kICAgICAgICVbZnRtcDJdLCAgICVb
ZnRtcDJdLCAgICAgICAlW21hc2tdICAgICAgICAgICAgIFxuXHQiIFwKKyAgInBhbmQgICAgICAg
JVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICVbbWFza10gICAgICAgICAgICAgXG5cdCIgXAog
ICAicGFja3VzaGIgICAlW2Z0bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgJVtmdG1wM10gICAgICAg
ICAgICBcblx0IiBcCiAgICJnc3NkbGMxICAgICVbZnRtcDJdLCAgIDB4MDcoJVt0ZW1wMl9wdHJd
KSAgICAgICAgICAgICAgICAgIFxuXHQiIFwKICAgImdzc2RyYzEgICAgJVtmdG1wMl0sICAgMHgw
MCglW3RlbXAyX3B0cl0pICAgICAgICAgICAgICAgICAgXG5cdCIKQEAgLTI0Nyw4ICsyNDcsOCBA
QCBzdGF0aWMgY29uc3QgdWludDhfdCBiaWxpbmVhcl9maWx0ZXJzWzhdWzJdID0gewogICAicHNy
bGggICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA5XSwgICAgICAgJVtmdG1wMTRdICAgICAgICAgICBc
blx0IiBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwKICAgLyogc3RvcmU6IHRlbXAyWzBdIH4gdGVtcDJbN10gKi8g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAiYW5kICAgICAgICAlW2Z0bXA4
XSwgICAlW2Z0bXA4XSwgICAgICAgJVttYXNrXSAgICAgICAgICAgICBcblx0IiBcCi0gICJhbmQg
ICAgICAgICVbZnRtcDldLCAgICVbZnRtcDldLCAgICAgICAlW21hc2tdICAgICAgICAgICAgIFxu
XHQiIFwKKyAgInBhbmQgICAgICAgJVtmdG1wOF0sICAgJVtmdG1wOF0sICAgICAgICVbbWFza10g
ICAgICAgICAgICAgXG5cdCIgXAorICAicGFuZCAgICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA5XSwg
ICAgICAgJVttYXNrXSAgICAgICAgICAgICBcblx0IiBcCiAgICJwYWNrdXNoYiAgICVbZnRtcDhd
LCAgICVbZnRtcDhdLCAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiIFwKICAgImdzc2Rs
YzEgICAgJVtmdG1wOF0sICAgMHgwNyglW3RlbXAyX3B0cl0pICAgICAgICAgICAgICAgICAgXG5c
dCIgXAogICAiZ3NzZHJjMSAgICAlW2Z0bXA4XSwgICAweDAwKCVbdGVtcDJfcHRyXSkgICAgICAg
ICAgICAgICAgICBcblx0IgpAQCAtMzE5LDggKzMxOSw4IEBAIHN0YXRpYyBjb25zdCB1aW50OF90
IGJpbGluZWFyX2ZpbHRlcnNbOF1bMl0gPSB7CiAgICJwc3JsaCAgICAgICVbZnRtcDVdLCAgICVb
ZnRtcDVdLCAgICAgICAlW2Z0bXAxNF0gICAgICAgICAgIFxuXHQiIFwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAog
ICAvKiBzdG9yZTogdGVtcDJbOF0gfiB0ZW1wMlsxNV0gKi8gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCi0gICJhbmQgICAgICAgICVbZnRtcDRdLCAgICVbZnRtcDRdLCAgICAgICAl
W21hc2tdICAgICAgICAgICAgIFxuXHQiIFwKLSAgImFuZCAgICAgICAgJVtmdG1wNV0sICAgJVtm
dG1wNV0sICAgICAgICVbbWFza10gICAgICAgICAgICAgXG5cdCIgXAorICAicGFuZCAgICAgICAl
W2Z0bXA0XSwgICAlW2Z0bXA0XSwgICAgICAgJVttYXNrXSAgICAgICAgICAgICBcblx0IiBcCisg
ICJwYW5kICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW21hc2tdICAgICAgICAg
ICAgIFxuXHQiIFwKICAgInBhY2t1c2hiICAgJVtmdG1wNF0sICAgJVtmdG1wNF0sICAgICAgICVb
ZnRtcDVdICAgICAgICAgICAgXG5cdCIgXAogICAiZ3NzZGxjMSAgICAlW2Z0bXA0XSwgICAweDBm
KCVbdGVtcDJfcHRyXSkgICAgICAgICAgICAgICAgICBcblx0IiBcCiAgICJnc3NkcmMxICAgICVb
ZnRtcDRdLCAgIDB4MDgoJVt0ZW1wMl9wdHJdKSAgICAgICAgICAgICAgICAgIFxuXHQiCkBAIC0z
NDMsOCArMzQzLDggQEAgc3RhdGljIGNvbnN0IHVpbnQ4X3QgYmlsaW5lYXJfZmlsdGVyc1s4XVsy
XSA9IHsKICAgInBzcmxoICAgICAgJVtmdG1wMTFdLCAgJVtmdG1wMTFdLCAgICAgICVbZnRtcDE0
XSAgICAgICAgICAgXG5cdCIgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgIC8qIHN0b3JlOiB0ZW1wMls4XSB+
IHRlbXAyWzE1XSAqLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgImFuZCAg
ICAgICAgJVtmdG1wMTBdLCAgJVtmdG1wMTBdLCAgICAgICVbbWFza10gICAgICAgICAgICAgXG5c
dCIgXAotICAiYW5kICAgICAgICAlW2Z0bXAxMV0sICAlW2Z0bXAxMV0sICAgICAgJVttYXNrXSAg
ICAgICAgICAgICBcblx0IiBcCisgICJwYW5kICAgICAgICVbZnRtcDEwXSwgICVbZnRtcDEwXSwg
ICAgICAlW21hc2tdICAgICAgICAgICAgIFxuXHQiIFwKKyAgInBhbmQgICAgICAgJVtmdG1wMTFd
LCAgJVtmdG1wMTFdLCAgICAgICVbbWFza10gICAgICAgICAgICAgXG5cdCIgXAogICAicGFja3Vz
aGIgICAlW2Z0bXAxMF0sICAlW2Z0bXAxMF0sICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0
IiBcCiAgICJnc3NkbGMxICAgICVbZnRtcDEwXSwgIDB4MGYoJVt0ZW1wMl9wdHJdKSAgICAgICAg
ICAgICAgICAgIFxuXHQiIFwKICAgImdzc2RyYzEgICAgJVtmdG1wMTBdLCAgMHgwOCglW3RlbXAy
X3B0cl0pICAgICAgICAgICAgICAgICAgXG5cdCIKQEAgLTQxNCwxMyArNDE0LDE0IEBAIHN0YXRp
YyBpbmxpbmUgdWludDMyX3QgdnB4X3ZhcmlhbmNlNjR4KGNvbnN0IHVpbnQ4X3QgKnNyY19wdHIs
IGludCBzcmNfc3RyaWRlLAogCiAgICpzc2UgPSAwOwogCisgIC8qIGNsYW5nLWZvcm1hdCBvZmYg
Ki8KICAgX19hc21fXyB2b2xhdGlsZSAoCiAgICAgImxpICAgICAgICAgJVt0bXAwXSwgICAgMHgy
MCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAibXRjMSAgICAgICAl
W3RtcDBdLCAgICAlW2Z0bXAxMV0gICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAg
IE1NSV9MKCVbdG1wMF0sICVbaGlnaF0sIDB4MDApCi0gICAgInhvciAgICAgICAgJVtmdG1wMF0s
ICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKLSAgICAieG9yICAg
ICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA5XSwgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0
IgotICAgICJ4b3IgICAgICAgICVbZnRtcDEwXSwgICVbZnRtcDEwXSwgICAgICAlW2Z0bXAxMF0g
ICAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAg
ICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA5XSwg
ICAlW2Z0bXA5XSwgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAg
ICAgICVbZnRtcDEwXSwgICVbZnRtcDEwXSwgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQi
CiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXG5cdCIKICAgICAiZ3NsZGxjMSAgICAlW2Z0bXAxXSwgICAweDA3KCVbc3JjX3B0
cl0pICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJnc2xkcmMxICAgICVbZnRtcDFdLCAg
IDB4MDAoJVtzcmNfcHRyXSkgICAgICAgICAgICAgICAgICAgIFxuXHQiCkBAIC00NzgsNyArNDc5
LDcgQEAgc3RhdGljIGlubGluZSB1aW50MzJfdCB2cHhfdmFyaWFuY2U2NHgoY29uc3QgdWludDhf
dCAqc3JjX3B0ciwgaW50IHNyY19zdHJpZGUsCiAgICAgIm1mYzEgICAgICAgJVt0bXAxXSwgICAg
JVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAibWZoYzEgICAg
ICAlW3RtcDJdLCAgICAlW2Z0bXA5XSAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0Igog
ICAgICJhZGR1ICAgICAgICVbc3VtXSwgICAgICVbdG1wMV0sICAgICAgICAlW3RtcDJdICAgICAg
ICAgICAgIFxuXHQiCi0gICAgImRzcmwgICAgICAgJVtmdG1wMV0sICAgJVtmdG1wMTBdLCAgICAg
ICVbZnRtcDExXSAgICAgICAgICAgXG5cdCIKKyAgICAic3NybGQgICAgICAlW2Z0bXAxXSwgICAl
W2Z0bXAxMF0sICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0IgogICAgICJwYWRkdyAgICAg
ICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCiAg
ICAgInN3YzEgICAgICAgJVtmdG1wMV0sICAgMHgwMCglW3NzZV0pICAgICAgICAgICAgICAgICAg
ICAgICAgXG5cdCIKICAgICA6IFtmdG1wMF0iPSZmIihmdG1wWzBdKSwgICAgICAgICAgICBbZnRt
cDFdIj0mZiIoZnRtcFsxXSksCkBAIC00OTYsNiArNDk3LDcgQEAgc3RhdGljIGlubGluZSB1aW50
MzJfdCB2cHhfdmFyaWFuY2U2NHgoY29uc3QgdWludDhfdCAqc3JjX3B0ciwgaW50IHNyY19zdHJp
ZGUsCiAgICAgICBbaGlnaF0iciIoJmhpZ2gpLCBbc3NlXSJyIihzc2UpCiAgICAgOiAibWVtb3J5
IgogICApOworICAvKiBjbGFuZy1mb3JtYXQgb24gKi8KIAogICByZXR1cm4gKnNzZSAtICgoKGlu
dDY0X3Qpc3VtICogc3VtKSAvICg2NCAqIGhpZ2gpKTsKIH0KQEAgLTUxOSwxMyArNTIxLDE0IEBA
IHVpbnQzMl90IHZweF92YXJpYW5jZTMyeDY0X21taShjb25zdCB1aW50OF90ICpzcmNfcHRyLCBp
bnQgc3JjX3N0cmlkZSwKIAogICAqc3NlID0gMDsKIAorICAvKiBjbGFuZy1mb3JtYXQgb2ZmICov
CiAgIF9fYXNtX18gdm9sYXRpbGUgKAogICAgICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4MjAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgIm10YzEgICAgICAgJVt0
bXAwXSwgICAgJVtmdG1wMTFdICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAi
bGkgICAgICAgICAlW3RtcDBdLCAgICAweDQwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0
bXAwXSAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wOV0sICAgJVtmdG1w
OV0sICAgICAgICVbZnRtcDldICAgICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0
bXAxMF0sICAlW2Z0bXAxMF0sICAgICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0IgorICAgICJw
eG9yICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0bXAwXSAgICAgICAgICAg
IFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgICAgICVbZnRt
cDldICAgICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAxMF0sICAlW2Z0bXAx
MF0sICAgICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0IgogICAgICIxOiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImdz
bGRsYzEgICAgJVtmdG1wMV0sICAgMHgwNyglW3NyY19wdHJdKSAgICAgICAgICAgICAgICAgICAg
XG5cdCIKICAgICAiZ3NsZHJjMSAgICAlW2Z0bXAxXSwgICAweDAwKCVbc3JjX3B0cl0pICAgICAg
ICAgICAgICAgICAgICBcblx0IgpAQCAtNTU5LDcgKzU2Miw3IEBAIHVpbnQzMl90IHZweF92YXJp
YW5jZTMyeDY0X21taShjb25zdCB1aW50OF90ICpzcmNfcHRyLCBpbnQgc3JjX3N0cmlkZSwKICAg
ICAibWZjMSAgICAgICAlW3RtcDFdLCAgICAlW2Z0bXA5XSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcblx0IgogICAgICJtZmhjMSAgICAgICVbdG1wMl0sICAgICVbZnRtcDldICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImFkZHUgICAgICAgJVtzdW1dLCAgICAgJVt0
bXAxXSwgICAgICAgICVbdG1wMl0gICAgICAgICAgICAgXG5cdCIKLSAgICAiZHNybCAgICAgICAl
W2Z0bXAxXSwgICAlW2Z0bXAxMF0sICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0IgorICAg
ICJzc3JsZCAgICAgICVbZnRtcDFdLCAgICVbZnRtcDEwXSwgICAgICAlW2Z0bXAxMV0gICAgICAg
ICAgIFxuXHQiCiAgICAgInBhZGR3ICAgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0sICAgICAgICVb
ZnRtcDEwXSAgICAgICAgICAgXG5cdCIKICAgICAic3djMSAgICAgICAlW2Z0bXAxXSwgICAweDAw
KCVbc3NlXSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgIDogW2Z0bXAwXSI9JmYi
KGZ0bXBbMF0pLCAgICAgICAgICAgIFtmdG1wMV0iPSZmIihmdG1wWzFdKSwKQEAgLTU3Nyw2ICs1
ODAsNyBAQCB1aW50MzJfdCB2cHhfdmFyaWFuY2UzMng2NF9tbWkoY29uc3QgdWludDhfdCAqc3Jj
X3B0ciwgaW50IHNyY19zdHJpZGUsCiAgICAgICBbc3NlXSJyIihzc2UpCiAgICAgOiAibWVtb3J5
IgogICApOworICAvKiBjbGFuZy1mb3JtYXQgb24gKi8KIAogICByZXR1cm4gKnNzZSAtICgoKGlu
dDY0X3Qpc3VtICogc3VtKSAvIDIwNDgpOwogfQpAQCAtNTkwLDE0ICs1OTQsMTUgQEAgc3RhdGlj
IGlubGluZSB1aW50MzJfdCB2cHhfdmFyaWFuY2UzMngoY29uc3QgdWludDhfdCAqc3JjX3B0ciwg
aW50IHNyY19zdHJpZGUsCiAKICAgKnNzZSA9IDA7CiAKKyAgLyogY2xhbmctZm9ybWF0IG9mZiAq
LwogICBfX2FzbV9fIHZvbGF0aWxlICgKICAgICAibGkgICAgICAgICAlW3RtcDBdLCAgICAweDIw
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJtdGMxICAgICAgICVb
dG1wMF0sICAgICVbZnRtcDExXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAg
TU1JX0woJVt0bXAwXSwgJVtoaWdoXSwgMHgwMCkKLSAgICAieG9yICAgICAgICAlW2Z0bXAwXSwg
ICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgotICAgICJ4b3IgICAg
ICAgICVbZnRtcDhdLCAgICVbZnRtcDhdLCAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQi
Ci0gICAgInhvciAgICAgICAgJVtmdG1wMTBdLCAgJVtmdG1wMTBdLCAgICAgICVbZnRtcDEwXSAg
ICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXAxMl0sICAlW2Z0bXAxMl0sICAg
ICAgJVtmdG1wMTJdICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDBdLCAg
ICVbZnRtcDBdLCAgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAg
ICAgJVtmdG1wOF0sICAgJVtmdG1wOF0sICAgICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIK
KyAgICAicHhvciAgICAgICAlW2Z0bXAxMF0sICAlW2Z0bXAxMF0sICAgICAgJVtmdG1wMTBdICAg
ICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDEyXSwgICVbZnRtcDEyXSwgICAg
ICAlW2Z0bXAxMl0gICAgICAgICAgIFxuXHQiCiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAiZ3NsZGxjMSAg
ICAlW2Z0bXAxXSwgICAweDA3KCVbc3JjX3B0cl0pICAgICAgICAgICAgICAgICAgICBcblx0Igog
ICAgICJnc2xkcmMxICAgICVbZnRtcDFdLCAgIDB4MDAoJVtzcmNfcHRyXSkgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCkBAIC02MjUsNyArNjMwLDcgQEAgc3RhdGljIGlubGluZSB1aW50MzJfdCB2
cHhfdmFyaWFuY2UzMngoY29uc3QgdWludDhfdCAqc3JjX3B0ciwgaW50IHNyY19zdHJpZGUsCiAg
ICAgTU1JX0FERFUoJVtyZWZfcHRyXSwgJVtyZWZfcHRyXSwgJVtyZWZfc3RyaWRlXSkKICAgICAi
Ym5leiAgICAgICAlW3RtcDBdLCAgICAxYiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgogCi0gICAgImRzcmwgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOF0sICAgICAgICVb
ZnRtcDExXSAgICAgICAgICAgXG5cdCIKKyAgICAic3NybGQgICAgICAlW2Z0bXA5XSwgICAlW2Z0
bXA4XSwgICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0IgogICAgICJwYWRkdyAgICAgICVb
ZnRtcDldLCAgICVbZnRtcDldLCAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCiAgICAg
InN3YzEgICAgICAgJVtmdG1wOV0sICAgMHgwMCglW3NzZV0pICAgICAgICAgICAgICAgICAgICAg
ICAgXG5cdCIKIApAQCAtNjM2LDcgKzY0MSw3IEBAIHN0YXRpYyBpbmxpbmUgdWludDMyX3QgdnB4
X3ZhcmlhbmNlMzJ4KGNvbnN0IHVpbnQ4X3QgKnNyY19wdHIsIGludCBzcmNfc3RyaWRlLAogICAg
ICJwYWRkdyAgICAgICVbZnRtcDNdLCAgICVbZnRtcDNdLCAgICAgICAlW2Z0bXA0XSAgICAgICAg
ICAgIFxuXHQiCiAgICAgInBzdWJ3ICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICVb
ZnRtcDVdICAgICAgICAgICAgXG5cdCIKICAgICAicHN1YncgICAgICAlW2Z0bXAzXSwgICAlW2Z0
bXAzXSwgICAgICAgJVtmdG1wNl0gICAgICAgICAgICBcblx0IgotICAgICJkc3JsICAgICAgICVb
ZnRtcDBdLCAgICVbZnRtcDNdLCAgICAgICAlW2Z0bXAxMV0gICAgICAgICAgIFxuXHQiCisgICAg
InNzcmxkICAgICAgJVtmdG1wMF0sICAgJVtmdG1wM10sICAgICAgICVbZnRtcDExXSAgICAgICAg
ICAgXG5cdCIKICAgICAicGFkZHcgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtm
dG1wM10gICAgICAgICAgICBcblx0IgogICAgICJzd2MxICAgICAgICVbZnRtcDBdLCAgIDB4MDAo
JVtzdW1dKSAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAKQEAgLTY1Myw2ICs2NTgsNyBA
QCBzdGF0aWMgaW5saW5lIHVpbnQzMl90IHZweF92YXJpYW5jZTMyeChjb25zdCB1aW50OF90ICpz
cmNfcHRyLCBpbnQgc3JjX3N0cmlkZSwKICAgICAgIFtoaWdoXSJyIigmaGlnaCksIFtzc2VdInIi
KHNzZSksIFtzdW1dInIiKCZzdW0pCiAgICAgOiAibWVtb3J5IgogICApOworICAvKiBjbGFuZy1m
b3JtYXQgb24gKi8KIAogICByZXR1cm4gKnNzZSAtICgoKGludDY0X3Qpc3VtICogc3VtKSAvICgz
MiAqIGhpZ2gpKTsKIH0KQEAgLTY3NiwxNCArNjgyLDE1IEBAIHN0YXRpYyBpbmxpbmUgdWludDMy
X3QgdnB4X3ZhcmlhbmNlMTZ4KGNvbnN0IHVpbnQ4X3QgKnNyY19wdHIsIGludCBzcmNfc3RyaWRl
LAogCiAgICpzc2UgPSAwOwogCisgIC8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KICAgX19hc21fXyB2
b2xhdGlsZSAoCiAgICAgImxpICAgICAgICAgJVt0bXAwXSwgICAgMHgyMCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAibXRjMSAgICAgICAlW3RtcDBdLCAgICAlW2Z0
bXAxMV0gICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgIE1NSV9MKCVbdG1wMF0s
ICVbaGlnaF0sIDB4MDApCi0gICAgInhvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAg
ICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA4XSwg
ICAlW2Z0bXA4XSwgICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgotICAgICJ4b3IgICAg
ICAgICVbZnRtcDEwXSwgICVbZnRtcDEwXSwgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQi
Ci0gICAgInhvciAgICAgICAgJVtmdG1wMTJdLCAgJVtmdG1wMTJdLCAgICAgICVbZnRtcDEyXSAg
ICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAg
ICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDhdLCAg
ICVbZnRtcDhdLCAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAg
ICAgJVtmdG1wMTBdLCAgJVtmdG1wMTBdLCAgICAgICVbZnRtcDEwXSAgICAgICAgICAgXG5cdCIK
KyAgICAicHhvciAgICAgICAlW2Z0bXAxMl0sICAlW2Z0bXAxMl0sICAgICAgJVtmdG1wMTJdICAg
ICAgICAgICBcblx0IgogICAgICIxOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImdzbGRsYzEgICAgJVtmdG1wMV0sICAg
MHgwNyglW3NyY19wdHJdKSAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAiZ3NsZHJjMSAg
ICAlW2Z0bXAxXSwgICAweDAwKCVbc3JjX3B0cl0pICAgICAgICAgICAgICAgICAgICBcblx0IgpA
QCAtNzAxLDcgKzcwOCw3IEBAIHN0YXRpYyBpbmxpbmUgdWludDMyX3QgdnB4X3ZhcmlhbmNlMTZ4
KGNvbnN0IHVpbnQ4X3QgKnNyY19wdHIsIGludCBzcmNfc3RyaWRlLAogICAgIE1NSV9BRERVKCVb
cmVmX3B0cl0sICVbcmVmX3B0cl0sICVbcmVmX3N0cmlkZV0pCiAgICAgImJuZXogICAgICAgJVt0
bXAwXSwgICAgMWIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKIAotICAg
ICJkc3JsICAgICAgICVbZnRtcDldLCAgICVbZnRtcDhdLCAgICAgICAlW2Z0bXAxMV0gICAgICAg
ICAgIFxuXHQiCisgICAgInNzcmxkICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOF0sICAgICAgICVb
ZnRtcDExXSAgICAgICAgICAgXG5cdCIKICAgICAicGFkZHcgICAgICAlW2Z0bXA5XSwgICAlW2Z0
bXA5XSwgICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgogICAgICJzd2MxICAgICAgICVb
ZnRtcDldLCAgIDB4MDAoJVtzc2VdKSAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAKQEAg
LTcxMiw3ICs3MTksNyBAQCBzdGF0aWMgaW5saW5lIHVpbnQzMl90IHZweF92YXJpYW5jZTE2eChj
b25zdCB1aW50OF90ICpzcmNfcHRyLCBpbnQgc3JjX3N0cmlkZSwKICAgICAicGFkZHcgICAgICAl
W2Z0bXAzXSwgICAlW2Z0bXAzXSwgICAgICAgJVtmdG1wNF0gICAgICAgICAgICBcblx0IgogICAg
ICJwc3VidyAgICAgICVbZnRtcDNdLCAgICVbZnRtcDNdLCAgICAgICAlW2Z0bXA1XSAgICAgICAg
ICAgIFxuXHQiCiAgICAgInBzdWJ3ICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICVb
ZnRtcDZdICAgICAgICAgICAgXG5cdCIKLSAgICAiZHNybCAgICAgICAlW2Z0bXAwXSwgICAlW2Z0
bXAzXSwgICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0IgorICAgICJzc3JsZCAgICAgICVb
ZnRtcDBdLCAgICVbZnRtcDNdLCAgICAgICAlW2Z0bXAxMV0gICAgICAgICAgIFxuXHQiCiAgICAg
InBhZGR3ICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDNdICAgICAgICAg
ICAgXG5cdCIKICAgICAic3djMSAgICAgICAlW2Z0bXAwXSwgICAweDAwKCVbc3VtXSkgICAgICAg
ICAgICAgICAgICAgICAgICBcblx0IgogCkBAIC03MjksNiArNzM2LDcgQEAgc3RhdGljIGlubGlu
ZSB1aW50MzJfdCB2cHhfdmFyaWFuY2UxNngoY29uc3QgdWludDhfdCAqc3JjX3B0ciwgaW50IHNy
Y19zdHJpZGUsCiAgICAgICBbaGlnaF0iciIoJmhpZ2gpLCBbc3NlXSJyIihzc2UpLCBbc3VtXSJy
Iigmc3VtKQogICAgIDogIm1lbW9yeSIKICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICovCiAK
ICAgcmV0dXJuICpzc2UgLSAoKChpbnQ2NF90KXN1bSAqIHN1bSkgLyAoMTYgKiBoaWdoKSk7CiB9
CkBAIC03NTMsMTQgKzc2MSwxNSBAQCBzdGF0aWMgaW5saW5lIHVpbnQzMl90IHZweF92YXJpYW5j
ZTh4KGNvbnN0IHVpbnQ4X3QgKnNyY19wdHIsIGludCBzcmNfc3RyaWRlLAogCiAgICpzc2UgPSAw
OwogCisgIC8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KICAgX19hc21fXyB2b2xhdGlsZSAoCiAgICAg
ImxpICAgICAgICAgJVt0bXAwXSwgICAgMHgyMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXG5cdCIKICAgICAibXRjMSAgICAgICAlW3RtcDBdLCAgICAlW2Z0bXAxMV0gICAgICAgICAg
ICAgICAgICAgICAgICAgICBcblx0IgogICAgIE1NSV9MKCVbdG1wMF0sICVbaGlnaF0sIDB4MDAp
Ci0gICAgInhvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDBdICAg
ICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA4XSwgICAlW2Z0bXA4XSwgICAg
ICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRtcDEwXSwg
ICVbZnRtcDEwXSwgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAg
ICAgJVtmdG1wMTJdLCAgJVtmdG1wMTJdLCAgICAgICVbZnRtcDEyXSAgICAgICAgICAgXG5cdCIK
KyAgICAicHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAg
ICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDhdLCAgICVbZnRtcDhdLCAgICAg
ICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMTBdLCAg
JVtmdG1wMTBdLCAgICAgICVbZnRtcDEwXSAgICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAg
ICAlW2Z0bXAxMl0sICAlW2Z0bXAxMl0sICAgICAgJVtmdG1wMTJdICAgICAgICAgICBcblx0Igog
ICAgICIxOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCiAgICAgImdzbGRsYzEgICAgJVtmdG1wMV0sICAgMHgwNyglW3NyY19wdHJd
KSAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAiZ3NsZHJjMSAgICAlW2Z0bXAxXSwgICAw
eDAwKCVbc3JjX3B0cl0pICAgICAgICAgICAgICAgICAgICBcblx0IgpAQCAtNzczLDcgKzc4Miw3
IEBAIHN0YXRpYyBpbmxpbmUgdWludDMyX3QgdnB4X3ZhcmlhbmNlOHgoY29uc3QgdWludDhfdCAq
c3JjX3B0ciwgaW50IHNyY19zdHJpZGUsCiAgICAgTU1JX0FERFUoJVtyZWZfcHRyXSwgJVtyZWZf
cHRyXSwgJVtyZWZfc3RyaWRlXSkKICAgICAiYm5leiAgICAgICAlW3RtcDBdLCAgICAxYiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogCi0gICAgImRzcmwgICAgICAgJVtm
dG1wOV0sICAgJVtmdG1wOF0sICAgICAgICVbZnRtcDExXSAgICAgICAgICAgXG5cdCIKKyAgICAi
c3NybGQgICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA4XSwgICAgICAgJVtmdG1wMTFdICAgICAgICAg
ICBcblx0IgogICAgICJwYWRkdyAgICAgICVbZnRtcDldLCAgICVbZnRtcDldLCAgICAgICAlW2Z0
bXA4XSAgICAgICAgICAgIFxuXHQiCiAgICAgInN3YzEgICAgICAgJVtmdG1wOV0sICAgMHgwMCgl
W3NzZV0pICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKIApAQCAtNzg0LDcgKzc5Myw3IEBA
IHN0YXRpYyBpbmxpbmUgdWludDMyX3QgdnB4X3ZhcmlhbmNlOHgoY29uc3QgdWludDhfdCAqc3Jj
X3B0ciwgaW50IHNyY19zdHJpZGUsCiAgICAgInBhZGR3ICAgICAgJVtmdG1wM10sICAgJVtmdG1w
M10sICAgICAgICVbZnRtcDRdICAgICAgICAgICAgXG5cdCIKICAgICAicHN1YncgICAgICAlW2Z0
bXAzXSwgICAlW2Z0bXAzXSwgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgogICAgICJw
c3VidyAgICAgICVbZnRtcDNdLCAgICVbZnRtcDNdLCAgICAgICAlW2Z0bXA2XSAgICAgICAgICAg
IFxuXHQiCi0gICAgImRzcmwgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wM10sICAgICAgICVbZnRt
cDExXSAgICAgICAgICAgXG5cdCIKKyAgICAic3NybGQgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAz
XSwgICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0IgogICAgICJwYWRkdyAgICAgICVbZnRt
cDBdLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCiAgICAgInN3
YzEgICAgICAgJVtmdG1wMF0sICAgMHgwMCglW3N1bV0pICAgICAgICAgICAgICAgICAgICAgICAg
XG5cdCIKIApAQCAtODAxLDYgKzgxMCw3IEBAIHN0YXRpYyBpbmxpbmUgdWludDMyX3QgdnB4X3Zh
cmlhbmNlOHgoY29uc3QgdWludDhfdCAqc3JjX3B0ciwgaW50IHNyY19zdHJpZGUsCiAgICAgICBb
aGlnaF0iciIoJmhpZ2gpLCBbc3NlXSJyIihzc2UpLCBbc3VtXSJyIigmc3VtKQogICAgIDogIm1l
bW9yeSIKICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICovCiAKICAgcmV0dXJuICpzc2UgLSAo
KChpbnQ2NF90KXN1bSAqIHN1bSkgLyAoOCAqIGhpZ2gpKTsKIH0KQEAgLTgyNSwxNCArODM1LDE1
IEBAIHN0YXRpYyBpbmxpbmUgdWludDMyX3QgdnB4X3ZhcmlhbmNlNHgoY29uc3QgdWludDhfdCAq
c3JjX3B0ciwgaW50IHNyY19zdHJpZGUsCiAKICAgKnNzZSA9IDA7CiAKKyAgLyogY2xhbmctZm9y
bWF0IG9mZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlICgKICAgICAibGkgICAgICAgICAlW3RtcDBd
LCAgICAweDIwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJtdGMx
ICAgICAgICVbdG1wMF0sICAgICVbZnRtcDEwXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCiAgICAgTU1JX0woJVt0bXAwXSwgJVtoaWdoXSwgMHgwMCkKLSAgICAieG9yICAgICAgICAl
W2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgotICAg
ICJ4b3IgICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAlW2Z0bXA2XSAgICAgICAg
ICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wN10sICAgJVtmdG1wN10sICAgICAgICVb
ZnRtcDddICAgICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA4XSwgICAlW2Z0
bXA4XSwgICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVb
ZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCisgICAg
InB4b3IgICAgICAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAgICAgICVbZnRtcDZdICAgICAgICAg
ICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAgJVtm
dG1wN10gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDhdLCAgICVbZnRt
cDhdLCAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCiAgICAgIjE6ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAi
Z3NsZGxjMSAgICAlW2Z0bXAxXSwgICAweDA3KCVbc3JjX3B0cl0pICAgICAgICAgICAgICAgICAg
ICBcblx0IgogICAgICJnc2xkcmMxICAgICVbZnRtcDFdLCAgIDB4MDAoJVtzcmNfcHRyXSkgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCkBAIC04NDUsNyArODU2LDcgQEAgc3RhdGljIGlubGluZSB1
aW50MzJfdCB2cHhfdmFyaWFuY2U0eChjb25zdCB1aW50OF90ICpzcmNfcHRyLCBpbnQgc3JjX3N0
cmlkZSwKICAgICBNTUlfQUREVSglW3JlZl9wdHJdLCAlW3JlZl9wdHJdLCAlW3JlZl9zdHJpZGVd
KQogICAgICJibmV6ICAgICAgICVbdG1wMF0sICAgIDFiICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFxuXHQiCiAKLSAgICAiZHNybCAgICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA2XSwg
ICAgICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0IgorICAgICJzc3JsZCAgICAgICVbZnRtcDld
LCAgICVbZnRtcDZdLCAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR3
ICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgICAgICVbZnRtcDZdICAgICAgICAgICAgXG5c
dCIKICAgICAic3djMSAgICAgICAlW2Z0bXA5XSwgICAweDAwKCVbc3NlXSkgICAgICAgICAgICAg
ICAgICAgICAgICBcblx0IgogCkBAIC04NTYsNyArODY3LDcgQEAgc3RhdGljIGlubGluZSB1aW50
MzJfdCB2cHhfdmFyaWFuY2U0eChjb25zdCB1aW50OF90ICpzcmNfcHRyLCBpbnQgc3JjX3N0cmlk
ZSwKICAgICAicGFkZHcgICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAzXSwgICAgICAgJVtmdG1wNF0g
ICAgICAgICAgICBcblx0IgogICAgICJwc3VidyAgICAgICVbZnRtcDNdLCAgICVbZnRtcDNdLCAg
ICAgICAlW2Z0bXA1XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJ3ICAgICAgJVtmdG1wM10s
ICAgJVtmdG1wM10sICAgICAgICVbZnRtcDZdICAgICAgICAgICAgXG5cdCIKLSAgICAiZHNybCAg
ICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAzXSwgICAgICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0
IgorICAgICJzc3JsZCAgICAgICVbZnRtcDBdLCAgICVbZnRtcDNdLCAgICAgICAlW2Z0bXAxMF0g
ICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR3ICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAg
ICAgICVbZnRtcDNdICAgICAgICAgICAgXG5cdCIKICAgICAic3djMSAgICAgICAlW2Z0bXAwXSwg
ICAweDAwKCVbc3VtXSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgIDogW2Z0bXAw
XSI9JmYiKGZ0bXBbMF0pLCAgICAgICAgICAgIFtmdG1wMV0iPSZmIihmdG1wWzFdKSwKQEAgLTg3
Miw2ICs4ODMsNyBAQCBzdGF0aWMgaW5saW5lIHVpbnQzMl90IHZweF92YXJpYW5jZTR4KGNvbnN0
IHVpbnQ4X3QgKnNyY19wdHIsIGludCBzcmNfc3RyaWRlLAogICAgICAgW2hpZ2hdInIiKCZoaWdo
KSwgW3NzZV0iciIoc3NlKSwgW3N1bV0iciIoJnN1bSkKICAgICA6ICJtZW1vcnkiCiAgICk7Cisg
IC8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCiAgIHJldHVybiAqc3NlIC0gKCgoaW50NjRfdClzdW0g
KiBzdW0pIC8gKDQgKiBoaWdoKSk7CiB9CkBAIC04OTQsMTIgKzkwNiwxMyBAQCBzdGF0aWMgaW5s
aW5lIHVpbnQzMl90IHZweF9tc2UxNngoY29uc3QgdWludDhfdCAqc3JjX3B0ciwgaW50IHNyY19z
dHJpZGUsCiAKICAgKnNzZSA9IDA7CiAKKyAgLyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2Fz
bV9fIHZvbGF0aWxlICgKICAgICAibGkgICAgICAgICAlW3RtcDBdLCAgICAweDIwICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJtdGMxICAgICAgICVbdG1wMF0sICAg
ICVbZnRtcDExXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgTU1JX0woJVt0
bXAwXSwgJVtoaWdoXSwgMHgwMCkKLSAgICAieG9yICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAw
XSwgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRt
cDhdLCAgICVbZnRtcDhdLCAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCisgICAgInB4
b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDBdICAgICAgICAgICAg
XG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA4XSwgICAlW2Z0bXA4XSwgICAgICAgJVtmdG1w
OF0gICAgICAgICAgICBcblx0IgogCiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICBWQVJJQU5DRV9TU0VfMTYK
QEAgLTkwOSw3ICs5MjIsNyBAQCBzdGF0aWMgaW5saW5lIHVpbnQzMl90IHZweF9tc2UxNngoY29u
c3QgdWludDhfdCAqc3JjX3B0ciwgaW50IHNyY19zdHJpZGUsCiAgICAgTU1JX0FERFUoJVtyZWZf
cHRyXSwgJVtyZWZfcHRyXSwgJVtyZWZfc3RyaWRlXSkKICAgICAiYm5leiAgICAgICAlW3RtcDBd
LCAgICAxYiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogCi0gICAgImRz
cmwgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOF0sICAgICAgICVbZnRtcDExXSAgICAgICAgICAg
XG5cdCIKKyAgICAic3NybGQgICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA4XSwgICAgICAgJVtmdG1w
MTFdICAgICAgICAgICBcblx0IgogICAgICJwYWRkdyAgICAgICVbZnRtcDldLCAgICVbZnRtcDld
LCAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCiAgICAgInN3YzEgICAgICAgJVtmdG1w
OV0sICAgMHgwMCglW3NzZV0pICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICA6IFtm
dG1wMF0iPSZmIihmdG1wWzBdKSwgICAgICAgICAgICBbZnRtcDFdIj0mZiIoZnRtcFsxXSksCkBA
IC05MjUsNiArOTM4LDcgQEAgc3RhdGljIGlubGluZSB1aW50MzJfdCB2cHhfbXNlMTZ4KGNvbnN0
IHVpbnQ4X3QgKnNyY19wdHIsIGludCBzcmNfc3RyaWRlLAogICAgICAgW2hpZ2hdInIiKCZoaWdo
KSwgW3NzZV0iciIoc3NlKQogICAgIDogIm1lbW9yeSIKICAgKTsKKyAgLyogY2xhbmctZm9ybWF0
IG9uICovCiAKICAgcmV0dXJuICpzc2U7CiB9CkBAIC05NDcsMTIgKzk2MSwxMyBAQCBzdGF0aWMg
aW5saW5lIHVpbnQzMl90IHZweF9tc2U4eChjb25zdCB1aW50OF90ICpzcmNfcHRyLCBpbnQgc3Jj
X3N0cmlkZSwKIAogICAqc3NlID0gMDsKIAorICAvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiAgIF9f
YXNtX18gdm9sYXRpbGUgKAogICAgICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4MjAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgIm10YzEgICAgICAgJVt0bXAwXSwg
ICAgJVtmdG1wMTFdICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICBNTUlfTCgl
W3RtcDBdLCAlW2hpZ2hdLCAweDAwKQotICAgICJ4b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRt
cDBdLCAgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtm
dG1wOF0sICAgJVtmdG1wOF0sICAgICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIKKyAgICAi
cHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAgICAgICAg
ICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDhdLCAgICVbZnRtcDhdLCAgICAgICAlW2Z0
bXA4XSAgICAgICAgICAgIFxuXHQiCiAKICAgICAiMTogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgIFZBUklBTkNFX1NTRV84
CkBAIC05NjIsNyArOTc3LDcgQEAgc3RhdGljIGlubGluZSB1aW50MzJfdCB2cHhfbXNlOHgoY29u
c3QgdWludDhfdCAqc3JjX3B0ciwgaW50IHNyY19zdHJpZGUsCiAgICAgTU1JX0FERFUoJVtyZWZf
cHRyXSwgJVtyZWZfcHRyXSwgJVtyZWZfc3RyaWRlXSkKICAgICAiYm5leiAgICAgICAlW3RtcDBd
LCAgICAxYiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogCi0gICAgImRz
cmwgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOF0sICAgICAgICVbZnRtcDExXSAgICAgICAgICAg
XG5cdCIKKyAgICAic3NybGQgICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA4XSwgICAgICAgJVtmdG1w
MTFdICAgICAgICAgICBcblx0IgogICAgICJwYWRkdyAgICAgICVbZnRtcDldLCAgICVbZnRtcDld
LCAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCiAgICAgInN3YzEgICAgICAgJVtmdG1w
OV0sICAgMHgwMCglW3NzZV0pICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICA6IFtm
dG1wMF0iPSZmIihmdG1wWzBdKSwgICAgICAgICAgICBbZnRtcDFdIj0mZiIoZnRtcFsxXSksCkBA
IC05NzgsNiArOTkzLDcgQEAgc3RhdGljIGlubGluZSB1aW50MzJfdCB2cHhfbXNlOHgoY29uc3Qg
dWludDhfdCAqc3JjX3B0ciwgaW50IHNyY19zdHJpZGUsCiAgICAgICBbaGlnaF0iciIoJmhpZ2gp
LCBbc3NlXSJyIihzc2UpCiAgICAgOiAibWVtb3J5IgogICApOworICAvKiBjbGFuZy1mb3JtYXQg
b24gKi8KIAogICByZXR1cm4gKnNzZTsKIH0KQEAgLTEwMjEsMjIgKzEwMzcsMzkgQEAgc3RhdGlj
IGlubGluZSB2b2lkIHZhcl9maWx0ZXJfYmxvY2syZF9iaWxfMTZ4KGNvbnN0IHVpbnQ4X3QgKnNy
Y19wdHIsCiAgIHVpbnQ4X3QgKnRlbXAyX3B0ciA9IHRlbXAyOwogICBtaXBzX3JlZyBsX2NvdW50
ZXIgPSBjb3VudGVyOwogICBkb3VibGUgZnRtcFsxNV07CisgIGRvdWJsZSBmZl9waF80MCwgbWFz
azsKKyAgZG91YmxlIGZpbHRlcl94MCwgZmlsdGVyX3gxLCBmaWx0ZXJfeTAsIGZpbHRlcl95MTsK
ICAgbWlwc19yZWcgdG1wWzJdOwotICBERUNMQVJFX0FMSUdORUQoOCwgY29uc3QgdWludDY0X3Qs
IGZmX3BoXzQwKSA9IHsgMHgwMDQwMDA0MDAwNDAwMDQwVUxMIH07Ci0gIERFQ0xBUkVfQUxJR05F
RCg4LCBjb25zdCB1aW50NjRfdCwgbWFzaykgPSB7IDB4MDBmZjAwZmYwMGZmMDBmZlVMTCB9Owor
ICB1aW50NjRfdCB4MCwgeDEsIHkwLCB5MSwgYWxsOwogCiAgIGNvbnN0IHVpbnQ4X3QgKmZpbHRl
cl94ID0gYmlsaW5lYXJfZmlsdGVyc1t4X29mZnNldF07CiAgIGNvbnN0IHVpbnQ4X3QgKmZpbHRl
cl95ID0gYmlsaW5lYXJfZmlsdGVyc1t5X29mZnNldF07CisgIHgwID0gKHVpbnQ2NF90KWZpbHRl
cl94WzBdOworICB4MSA9ICh1aW50NjRfdClmaWx0ZXJfeFsxXTsKKyAgeTAgPSAodWludDY0X3Qp
ZmlsdGVyX3lbMF07CisgIHkxID0gKHVpbnQ2NF90KWZpbHRlcl95WzFdOworICBhbGwgPSB4MCB8
IHgxIDw8IDggfCB5MCA8PCAxNiB8IHkxIDw8IDI0OwogCisgIC8qIGNsYW5nLWZvcm1hdCBvZmYg
Ki8KICAgX19hc21fXyB2b2xhdGlsZSAoCi0gICAgInhvciAgICAgICAgJVtmdG1wMF0sICAgJVtm
dG1wMF0sICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAl
W2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgorICAg
IE1NSV9NVEMxKCVbYWxsXSwgJVtmdG1wMTRdKQorICAgICJwdW5wY2tsYmggICVbZnRtcDE0XSwg
ICVbZnRtcDE0XSwgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCisgICAgInBzaHVmaCAg
ICAgJVtmaWx0ZXJfeDBdLCAlW2Z0bXAxNF0sICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIK
KyAgICBNTUlfTEkoJVt0bXAwXSwgMHgxMCkKKyAgICBNTUlfTVRDMSglW3RtcDBdLCAlW21hc2td
KQorICAgICJzc3JsZCAgICAgICVbZnRtcDE0XSwgICVbZnRtcDE0XSwgICAgICAlW21hc2tdICAg
ICAgICAgICAgIFxuXHQiCisgICAgInBzaHVmaCAgICAgJVtmaWx0ZXJfeDFdLCAlW2Z0bXAxNF0s
ICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKKyAgICAic3NybGQgICAgICAlW2Z0bXAxNF0s
ICAlW2Z0bXAxNF0sICAgICAgJVttYXNrXSAgICAgICAgICAgICBcblx0IgorICAgICJwc2h1Zmgg
ICAgICVbZmlsdGVyX3kwXSwgJVtmdG1wMTRdLCAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQi
CisgICAgInNzcmxkICAgICAgJVtmdG1wMTRdLCAgJVtmdG1wMTRdLCAgICAgICVbbWFza10gICAg
ICAgICAgICAgXG5cdCIKKyAgICAicHNodWZoICAgICAlW2ZpbHRlcl95MV0sICVbZnRtcDE0XSwg
ICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgogICAgIE1NSV9MSSglW3RtcDBdLCAweDA3KQog
ICAgIE1NSV9NVEMxKCVbdG1wMF0sICVbZnRtcDE0XSkKLSAgICAicHNodWZoICAgICAlW2ZpbHRl
cl94MF0sICVbZmlsdGVyX3gwXSwgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgotICAgICJwc2h1
ZmggICAgICVbZmlsdGVyX3gxXSwgJVtmaWx0ZXJfeDFdLCAlW2Z0bXAwXSAgICAgICAgICAgIFxu
XHQiCi0gICAgInBzaHVmaCAgICAgJVtmaWx0ZXJfeTBdLCAlW2ZpbHRlcl95MF0sICVbZnRtcDBd
ICAgICAgICAgICAgXG5cdCIKLSAgICAicHNodWZoICAgICAlW2ZpbHRlcl95MV0sICVbZmlsdGVy
X3kxXSwgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgotCisgICAgTU1JX0xJKCVbdG1wMF0sIDB4
MDA0MDAwNDAwMDQwMDA0MCkKKyAgICBNTUlfTVRDMSglW3RtcDBdLCAlW2ZmX3BoXzQwXSkKKyAg
ICBNTUlfTEkoJVt0bXAwXSwgMHgwMGZmMDBmZjAwZmYwMGZmKQorICAgIE1NSV9NVEMxKCVbdG1w
MF0sICVbbWFza10pCiAgICAgLy8gZmRhdGEzOiBmZGF0YTNbMF0gfiBmZGF0YTNbMTVdCiAgICAg
VkFSX0ZJTFRFUl9CTE9DSzJEX0JJTF9GSVJTVF9QQVNTXzE2X0EKIApAQCAtMTA3MiwxNSArMTEw
NSwxMyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgdmFyX2ZpbHRlcl9ibG9jazJkX2JpbF8xNngoY29u
c3QgdWludDhfdCAqc3JjX3B0ciwKICAgICAgIFtmdG1wMTFdICI9JmYiKGZ0bXBbMTFdKSwgW2Z0
bXAxMl0gIj0mZiIoZnRtcFsxMl0pLAogICAgICAgW2Z0bXAxM10gIj0mZiIoZnRtcFsxM10pLCBb
ZnRtcDE0XSAiPSZmIihmdG1wWzE0XSksCiAgICAgICBbdG1wMF0gIj0mciIodG1wWzBdKSwgW3Ny
Y19wdHJdICIrJnIiKHNyY19wdHIpLCBbdGVtcDJfcHRyXSAiKyZyIih0ZW1wMl9wdHIpLAotICAg
ICAgW2NvdW50ZXJdIismciIobF9jb3VudGVyKQotICAgIDogW2ZpbHRlcl94MF0gImYiKCh1aW50
NjRfdClmaWx0ZXJfeFswXSksCi0gICAgICBbZmlsdGVyX3gxXSAiZiIoKHVpbnQ2NF90KWZpbHRl
cl94WzFdKSwKLSAgICAgIFtmaWx0ZXJfeTBdICJmIigodWludDY0X3QpZmlsdGVyX3lbMF0pLAot
ICAgICAgW2ZpbHRlcl95MV0gImYiKCh1aW50NjRfdClmaWx0ZXJfeVsxXSksCi0gICAgICBbc3Jj
X3N0cmlkZV0gInIiKChtaXBzX3JlZylzcmNfc3RyaWRlKSwgW2ZmX3BoXzQwXSAiZiIoZmZfcGhf
NDApLAotICAgICAgW21hc2tdICJmIihtYXNrKQorICAgICAgW2NvdW50ZXJdIismciIobF9jb3Vu
dGVyKSwgW2ZmX3BoXzQwXSAiPSZmIihmZl9waF80MCksIFttYXNrXSAiPSZmIihtYXNrKSwKKyAg
ICAgIFtmaWx0ZXJfeDBdICI9JmYiKGZpbHRlcl94MCksIFtmaWx0ZXJfeDFdICI9JmYiKGZpbHRl
cl94MSksCisgICAgICBbZmlsdGVyX3kwXSAiPSZmIihmaWx0ZXJfeTApLCBbZmlsdGVyX3kxXSAi
PSZmIihmaWx0ZXJfeTEpCisgICAgOiBbc3JjX3N0cmlkZV0gInIiKChtaXBzX3JlZylzcmNfc3Ry
aWRlKSwgW2FsbF0gInIiKGFsbCkKICAgICA6ICJtZW1vcnkiCiAgICk7CisgIC8qIGNsYW5nLWZv
cm1hdCBvbiAqLwogfQogCiAjZGVmaW5lIFNVQlBJWF9WQVIxNlhOKEgpICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApAQCAtMTEwNSwxOSArMTEz
NiwzOCBAQCBzdGF0aWMgaW5saW5lIHZvaWQgdmFyX2ZpbHRlcl9ibG9jazJkX2JpbF84eChjb25z
dCB1aW50OF90ICpzcmNfcHRyLAogICBtaXBzX3JlZyBsX2NvdW50ZXIgPSBjb3VudGVyOwogICBk
b3VibGUgZnRtcFsxNV07CiAgIG1pcHNfcmVnIHRtcFsyXTsKLSAgREVDTEFSRV9BTElHTkVEKDgs
IGNvbnN0IHVpbnQ2NF90LCBmZl9waF80MCkgPSB7IDB4MDA0MDAwNDAwMDQwMDA0MFVMTCB9Owot
ICBERUNMQVJFX0FMSUdORUQoOCwgY29uc3QgdWludDY0X3QsIG1hc2spID0geyAweDAwZmYwMGZm
MDBmZjAwZmZVTEwgfTsKKyAgZG91YmxlIGZmX3BoXzQwLCBtYXNrOworICB1aW50NjRfdCB4MCwg
eDEsIHkwLCB5MSwgYWxsOworICBkb3VibGUgZmlsdGVyX3gwLCBmaWx0ZXJfeDEsIGZpbHRlcl95
MCwgZmlsdGVyX3kxOwogICBjb25zdCB1aW50OF90ICpmaWx0ZXJfeCA9IGJpbGluZWFyX2ZpbHRl
cnNbeF9vZmZzZXRdOwogICBjb25zdCB1aW50OF90ICpmaWx0ZXJfeSA9IGJpbGluZWFyX2ZpbHRl
cnNbeV9vZmZzZXRdOworICB4MCA9ICh1aW50NjRfdClmaWx0ZXJfeFswXTsKKyAgeDEgPSAodWlu
dDY0X3QpZmlsdGVyX3hbMV07CisgIHkwID0gKHVpbnQ2NF90KWZpbHRlcl95WzBdOworICB5MSA9
ICh1aW50NjRfdClmaWx0ZXJfeVsxXTsKKyAgYWxsID0geDAgfCB4MSA8PCA4IHwgeTAgPDwgMTYg
fCB5MSA8PCAyNDsKIAorICAvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiAgIF9fYXNtX18gdm9sYXRp
bGUgKAotICAgICJ4b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0bXAw
XSAgICAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0s
ICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKKyAgICBNTUlfTVRDMSglW2FsbF0sICVb
ZnRtcDE0XSkKKyAgICAicHVucGNrbGJoICAlW2Z0bXAxNF0sICAlW2Z0bXAxNF0sICAgICAgJVtm
dG1wMF0gICAgICAgICAgICBcblx0IgorICAgICJwc2h1ZmggICAgICVbZmlsdGVyX3gwXSwgJVtm
dG1wMTRdLCAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCisgICAgTU1JX0xJKCVbdG1wMF0s
IDB4MTApCisgICAgTU1JX01UQzEoJVt0bXAwXSwgJVttYXNrXSkKKyAgICAic3NybGQgICAgICAl
W2Z0bXAxNF0sICAlW2Z0bXAxNF0sICAgICAgJVttYXNrXSAgICAgICAgICAgICBcblx0IgorICAg
ICJwc2h1ZmggICAgICVbZmlsdGVyX3gxXSwgJVtmdG1wMTRdLCAgICAlW2Z0bXAwXSAgICAgICAg
ICAgIFxuXHQiCisgICAgInNzcmxkICAgICAgJVtmdG1wMTRdLCAgJVtmdG1wMTRdLCAgICAgICVb
bWFza10gICAgICAgICAgICAgXG5cdCIKKyAgICAicHNodWZoICAgICAlW2ZpbHRlcl95MF0sICVb
ZnRtcDE0XSwgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgorICAgICJzc3JsZCAgICAgICVb
ZnRtcDE0XSwgICVbZnRtcDE0XSwgICAgICAlW21hc2tdICAgICAgICAgICAgIFxuXHQiCisgICAg
InBzaHVmaCAgICAgJVtmaWx0ZXJfeTFdLCAlW2Z0bXAxNF0sICAgICVbZnRtcDBdICAgICAgICAg
ICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtm
dG1wMF0gICAgICAgICAgICBcblx0IgogICAgIE1NSV9MSSglW3RtcDBdLCAweDA3KQogICAgIE1N
SV9NVEMxKCVbdG1wMF0sICVbZnRtcDE0XSkKLSAgICAicHNodWZoICAgICAlW2ZpbHRlcl94MF0s
ICVbZmlsdGVyX3gwXSwgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgotICAgICJwc2h1ZmggICAg
ICVbZmlsdGVyX3gxXSwgJVtmaWx0ZXJfeDFdLCAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCi0g
ICAgInBzaHVmaCAgICAgJVtmaWx0ZXJfeTBdLCAlW2ZpbHRlcl95MF0sICVbZnRtcDBdICAgICAg
ICAgICAgXG5cdCIKLSAgICAicHNodWZoICAgICAlW2ZpbHRlcl95MV0sICVbZmlsdGVyX3kxXSwg
JVtmdG1wMF0gICAgICAgICAgICBcblx0IgorICAgIE1NSV9MSSglW3RtcDBdLCAweDAwNDAwMDQw
MDA0MDAwNDApCisgICAgTU1JX01UQzEoJVt0bXAwXSwgJVtmZl9waF80MF0pCisgICAgTU1JX0xJ
KCVbdG1wMF0sIDB4MDBmZjAwZmYwMGZmMDBmZikKKyAgICBNTUlfTVRDMSglW3RtcDBdLCAlW21h
c2tdKQogCiAgICAgLy8gZmRhdGEzOiBmZGF0YTNbMF0gfiBmZGF0YTNbN10KICAgICBWQVJfRklM
VEVSX0JMT0NLMkRfQklMX0ZJUlNUX1BBU1NfOF9BCkBAIC0xMTU0LDE1ICsxMjA0LDEzIEBAIHN0
YXRpYyBpbmxpbmUgdm9pZCB2YXJfZmlsdGVyX2Jsb2NrMmRfYmlsXzh4KGNvbnN0IHVpbnQ4X3Qg
KnNyY19wdHIsCiAgICAgICBbZnRtcDExXSAiPSZmIihmdG1wWzExXSksIFtmdG1wMTJdICI9JmYi
KGZ0bXBbMTJdKSwKICAgICAgIFtmdG1wMTNdICI9JmYiKGZ0bXBbMTNdKSwgW2Z0bXAxNF0gIj0m
ZiIoZnRtcFsxNF0pLAogICAgICAgW3RtcDBdICI9JnIiKHRtcFswXSksIFtzcmNfcHRyXSAiKyZy
IihzcmNfcHRyKSwgW3RlbXAyX3B0cl0gIismciIodGVtcDJfcHRyKSwKLSAgICAgIFtjb3VudGVy
XSIrJnIiKGxfY291bnRlcikKLSAgICA6IFtmaWx0ZXJfeDBdICJmIigodWludDY0X3QpZmlsdGVy
X3hbMF0pLAotICAgICAgW2ZpbHRlcl94MV0gImYiKCh1aW50NjRfdClmaWx0ZXJfeFsxXSksCi0g
ICAgICBbZmlsdGVyX3kwXSAiZiIoKHVpbnQ2NF90KWZpbHRlcl95WzBdKSwKLSAgICAgIFtmaWx0
ZXJfeTFdICJmIigodWludDY0X3QpZmlsdGVyX3lbMV0pLAotICAgICAgW3NyY19zdHJpZGVdICJy
IigobWlwc19yZWcpc3JjX3N0cmlkZSksIFtmZl9waF80MF0gImYiKGZmX3BoXzQwKSwKLSAgICAg
IFttYXNrXSAiZiIobWFzaykKKyAgICAgIFtjb3VudGVyXSIrJnIiKGxfY291bnRlciksIFtmZl9w
aF80MF0gIj0mZiIoZmZfcGhfNDApLCBbbWFza10gIj0mZiIobWFzayksCisgICAgICBbZmlsdGVy
X3gwXSAiPSZmIihmaWx0ZXJfeDApLCBbZmlsdGVyX3gxXSAiPSZmIihmaWx0ZXJfeDEpLAorICAg
ICAgW2ZpbHRlcl95MF0gIj0mZiIoZmlsdGVyX3kwKSwgW2ZpbHRlcl95MV0gIj0mZiIoZmlsdGVy
X3kxKQorICAgIDogW3NyY19zdHJpZGVdICJyIigobWlwc19yZWcpc3JjX3N0cmlkZSksIFthbGxd
ICJyIihhbGwpCiAgICAgOiAibWVtb3J5IgogICApOworICAvKiBjbGFuZy1mb3JtYXQgb24gKi8K
IH0KIAogI2RlZmluZSBTVUJQSVhfVkFSOFhOKEgpICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXApAQCAtMTE4OCwxOSArMTIzNiwzOCBAQCBzdGF0
aWMgaW5saW5lIHZvaWQgdmFyX2ZpbHRlcl9ibG9jazJkX2JpbF80eChjb25zdCB1aW50OF90ICpz
cmNfcHRyLAogICBtaXBzX3JlZyBsX2NvdW50ZXIgPSBjb3VudGVyOwogICBkb3VibGUgZnRtcFs3
XTsKICAgbWlwc19yZWcgdG1wWzJdOwotICBERUNMQVJFX0FMSUdORUQoOCwgY29uc3QgdWludDY0
X3QsIGZmX3BoXzQwKSA9IHsgMHgwMDQwMDA0MDAwNDAwMDQwVUxMIH07Ci0gIERFQ0xBUkVfQUxJ
R05FRCg4LCBjb25zdCB1aW50NjRfdCwgbWFzaykgPSB7IDB4MDBmZjAwZmYwMGZmMDBmZlVMTCB9
OworICBkb3VibGUgZmZfcGhfNDAsIG1hc2s7CisgIHVpbnQ2NF90IHgwLCB4MSwgeTAsIHkxLCBh
bGw7CisgIGRvdWJsZSBmaWx0ZXJfeDAsIGZpbHRlcl94MSwgZmlsdGVyX3kwLCBmaWx0ZXJfeTE7
CiAgIGNvbnN0IHVpbnQ4X3QgKmZpbHRlcl94ID0gYmlsaW5lYXJfZmlsdGVyc1t4X29mZnNldF07
CiAgIGNvbnN0IHVpbnQ4X3QgKmZpbHRlcl95ID0gYmlsaW5lYXJfZmlsdGVyc1t5X29mZnNldF07
CisgIHgwID0gKHVpbnQ2NF90KWZpbHRlcl94WzBdOworICB4MSA9ICh1aW50NjRfdClmaWx0ZXJf
eFsxXTsKKyAgeTAgPSAodWludDY0X3QpZmlsdGVyX3lbMF07CisgIHkxID0gKHVpbnQ2NF90KWZp
bHRlcl95WzFdOworICBhbGwgPSB4MCB8IHgxIDw8IDggfCB5MCA8PCAxNiB8IHkxIDw8IDI0Owog
CisgIC8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KICAgX19hc21fXyB2b2xhdGlsZSAoCi0gICAgInhv
ciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDBdICAgICAgICAgICAg
XG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1w
MF0gICAgICAgICAgICBcblx0IgorICAgIE1NSV9NVEMxKCVbYWxsXSwgJVtmdG1wNl0pCisgICAg
InB1bnBja2xiaCAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAgICAgICVbZnRtcDBdICAgICAgICAg
ICAgXG5cdCIKKyAgICAicHNodWZoICAgICAlW2ZpbHRlcl94MF0sICVbZnRtcDZdLCAgICAgJVtm
dG1wMF0gICAgICAgICAgICBcblx0IgorICAgIE1NSV9MSSglW3RtcDBdLCAweDEwKQorICAgIE1N
SV9NVEMxKCVbdG1wMF0sICVbbWFza10pCisgICAgInNzcmxkICAgICAgJVtmdG1wNl0sICAgJVtm
dG1wNl0sICAgICAgICVbbWFza10gICAgICAgICAgICAgXG5cdCIKKyAgICAicHNodWZoICAgICAl
W2ZpbHRlcl94MV0sICVbZnRtcDZdLCAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgorICAg
ICJzc3JsZCAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAlW21hc2tdICAgICAgICAg
ICAgIFxuXHQiCisgICAgInBzaHVmaCAgICAgJVtmaWx0ZXJfeTBdLCAlW2Z0bXA2XSwgICAgICVb
ZnRtcDBdICAgICAgICAgICAgXG5cdCIKKyAgICAic3NybGQgICAgICAlW2Z0bXA2XSwgICAlW2Z0
bXA2XSwgICAgICAgJVttYXNrXSAgICAgICAgICAgICBcblx0IgorICAgICJwc2h1ZmggICAgICVb
ZmlsdGVyX3kxXSwgJVtmdG1wNl0sICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCisgICAg
InB4b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDBdICAgICAgICAg
ICAgXG5cdCIKICAgICBNTUlfTEkoJVt0bXAwXSwgMHgwNykKICAgICBNTUlfTVRDMSglW3RtcDBd
LCAlW2Z0bXA2XSkKLSAgICAicHNodWZoICAgICAlW2ZpbHRlcl94MF0sICVbZmlsdGVyX3gwXSwg
JVtmdG1wMF0gICAgICAgICAgICBcblx0IgotICAgICJwc2h1ZmggICAgICVbZmlsdGVyX3gxXSwg
JVtmaWx0ZXJfeDFdLCAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCi0gICAgInBzaHVmaCAgICAg
JVtmaWx0ZXJfeTBdLCAlW2ZpbHRlcl95MF0sICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKLSAg
ICAicHNodWZoICAgICAlW2ZpbHRlcl95MV0sICVbZmlsdGVyX3kxXSwgJVtmdG1wMF0gICAgICAg
ICAgICBcblx0IgorICAgIE1NSV9MSSglW3RtcDBdLCAweDAwNDAwMDQwMDA0MDAwNDApCisgICAg
TU1JX01UQzEoJVt0bXAwXSwgJVtmZl9waF80MF0pCisgICAgTU1JX0xJKCVbdG1wMF0sIDB4MDBm
ZjAwZmYwMGZmMDBmZikKKyAgICBNTUlfTVRDMSglW3RtcDBdLCAlW21hc2tdKQogICAgIC8vIGZk
YXRhMzogZmRhdGEzWzBdIH4gZmRhdGEzWzNdCiAgICAgVkFSX0ZJTFRFUl9CTE9DSzJEX0JJTF9G
SVJTVF9QQVNTXzRfQQogCkBAIC0xMjMyLDE1ICsxMjk5LDE0IEBAIHN0YXRpYyBpbmxpbmUgdm9p
ZCB2YXJfZmlsdGVyX2Jsb2NrMmRfYmlsXzR4KGNvbnN0IHVpbnQ4X3QgKnNyY19wdHIsCiAgICAg
OiBbZnRtcDBdICI9JmYiKGZ0bXBbMF0pLCBbZnRtcDFdICI9JmYiKGZ0bXBbMV0pLCBbZnRtcDJd
ICI9JmYiKGZ0bXBbMl0pLAogICAgICAgW2Z0bXAzXSAiPSZmIihmdG1wWzNdKSwgW2Z0bXA0XSAi
PSZmIihmdG1wWzRdKSwgW2Z0bXA1XSAiPSZmIihmdG1wWzVdKSwKICAgICAgIFtmdG1wNl0gIj0m
ZiIoZnRtcFs2XSksIFt0bXAwXSAiPSZyIih0bXBbMF0pLCBbc3JjX3B0cl0gIismciIoc3JjX3B0
ciksCi0gICAgICBbdGVtcDJfcHRyXSAiKyZyIih0ZW1wMl9wdHIpLCBbY291bnRlcl0iKyZyIihs
X2NvdW50ZXIpCi0gICAgOiBbZmlsdGVyX3gwXSAiZiIoKHVpbnQ2NF90KWZpbHRlcl94WzBdKSwK
LSAgICAgIFtmaWx0ZXJfeDFdICJmIigodWludDY0X3QpZmlsdGVyX3hbMV0pLAotICAgICAgW2Zp
bHRlcl95MF0gImYiKCh1aW50NjRfdClmaWx0ZXJfeVswXSksCi0gICAgICBbZmlsdGVyX3kxXSAi
ZiIoKHVpbnQ2NF90KWZpbHRlcl95WzFdKSwKLSAgICAgIFtzcmNfc3RyaWRlXSAiciIoKG1pcHNf
cmVnKXNyY19zdHJpZGUpLCBbZmZfcGhfNDBdICJmIihmZl9waF80MCksCi0gICAgICBbbWFza10g
ImYiKG1hc2spCisgICAgICBbdGVtcDJfcHRyXSAiKyZyIih0ZW1wMl9wdHIpLCBbY291bnRlcl0i
KyZyIihsX2NvdW50ZXIpLAorICAgICAgW2ZmX3BoXzQwXSAiPSZmIihmZl9waF80MCksIFttYXNr
XSAiPSZmIihtYXNrKSwKKyAgICAgIFtmaWx0ZXJfeDBdICI9JmYiKGZpbHRlcl94MCksIFtmaWx0
ZXJfeDFdICI9JmYiKGZpbHRlcl94MSksCisgICAgICBbZmlsdGVyX3kwXSAiPSZmIihmaWx0ZXJf
eTApLCBbZmlsdGVyX3kxXSAiPSZmIihmaWx0ZXJfeTEpCisgICAgOiBbc3JjX3N0cmlkZV0gInIi
KChtaXBzX3JlZylzcmNfc3RyaWRlKSwgW2FsbF0gInIiKGFsbCkKICAgICA6ICJtZW1vcnkiCiAg
ICk7CisgIC8qIGNsYW5nLWZvcm1hdCBvbiAqLwogfQogCiAjZGVmaW5lIFNVQlBJWF9WQVI0WE4o
SCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbWlwcy92cHhfY29udm9sdmU4X21taS5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL21pcHMvdnB4X2NvbnZvbHZlOF9tbWkuYwppbmRleCBiYTlj
ZWI4NjY1OGQ2ZjU4N2U1YmMzODkzZjlmYjZjNWNmM2Q4ODcyLi5jYjdiY2E1NTg5ZGI1MjQ0Y2Y2
MGNhYmVhYjkwNmZmYTEzNzEwMjE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbWlw
cy92cHhfY29udm9sdmU4X21taS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9taXBzL3ZweF9j
b252b2x2ZThfbW1pLmMKQEAgLTEwNSw3ICsxMDUsNyBAQCBzdGF0aWMgdm9pZCBjb252b2x2ZV9o
b3Jpel9tbWkoY29uc3QgdWludDhfdCAqc3JjLCBwdHJkaWZmX3Qgc3JjX3N0cmlkZSwKICAgLyog
Y2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlKAogICAgICJtb3ZlICAgICAg
ICVbdG1wMV0sICAgICVbd2lkdGhdICAgICAgICAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAg
ICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICVbZnRtcDBdICAgICAgXG5cdCIKKyAgICAi
cHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgJVtmdG1wMF0gICAgICBcblx0Igog
ICAgICJnc2xkbGMxICAgICVbZmlsdGVyMV0sIDB4MDMoJVtmaWx0ZXJdKSAgICAgICAgICAgIFxu
XHQiCiAgICAgImdzbGRyYzEgICAgJVtmaWx0ZXIxXSwgMHgwMCglW2ZpbHRlcl0pICAgICAgICAg
ICAgXG5cdCIKICAgICAiZ3NsZGxjMSAgICAlW2ZpbHRlcjJdLCAweDBiKCVbZmlsdGVyXSkgICAg
ICAgICAgICBcblx0IgpAQCAtMTc4LDcgKzE3OCw3IEBAIHN0YXRpYyB2b2lkIGNvbnZvbHZlX3Zl
cnRfbW1pKGNvbnN0IHVpbnQ4X3QgKnNyYywgcHRyZGlmZl90IHNyY19zdHJpZGUsCiAgICh2b2lk
KXlfc3RlcF9xNDsKIAogICBfX2FzbV9fIHZvbGF0aWxlKAotICAgICJ4b3IgICAgICAgICVbZnRt
cDBdLCAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAg
JVtmdG1wMF0sICAgICVbZnRtcDBdLCAgICVbZnRtcDBdICAgICAgXG5cdCIKICAgICAiZ3NsZGxj
MSAgICAlW2Z0bXA0XSwgICAgMHgwMyglW2ZpbHRlcl0pICAgICAgICAgICBcblx0IgogICAgICJn
c2xkcmMxICAgICVbZnRtcDRdLCAgICAweDAwKCVbZmlsdGVyXSkgICAgICAgICAgIFxuXHQiCiAg
ICAgImdzbGRsYzEgICAgJVtmdG1wNV0sICAgIDB4MGIoJVtmaWx0ZXJdKSAgICAgICAgICAgXG5c
dCIKQEAgLTI3MSw3ICsyNzEsNyBAQCBzdGF0aWMgdm9pZCBjb252b2x2ZV9hdmdfaG9yaXpfbW1p
KGNvbnN0IHVpbnQ4X3QgKnNyYywgcHRyZGlmZl90IHNyY19zdHJpZGUsCiAKICAgX19hc21fXyB2
b2xhdGlsZSgKICAgICAibW92ZSAgICAgICAlW3RtcDFdLCAgICAlW3dpZHRoXSAgICAgICAgICAg
ICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAl
W2Z0bXAwXSAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0s
ICAgICVbZnRtcDBdICAgICAgXG5cdCIKICAgICAiZ3NsZGxjMSAgICAlW2ZpbHRlcjFdLCAweDAz
KCVbZmlsdGVyXSkgICAgICAgICAgICBcblx0IgogICAgICJnc2xkcmMxICAgICVbZmlsdGVyMV0s
IDB4MDAoJVtmaWx0ZXJdKSAgICAgICAgICAgIFxuXHQiCiAgICAgImdzbGRsYzEgICAgJVtmaWx0
ZXIyXSwgMHgwYiglW2ZpbHRlcl0pICAgICAgICAgICAgXG5cdCIKQEAgLTM1NCw3ICszNTQsNyBA
QCBzdGF0aWMgdm9pZCBjb252b2x2ZV9hdmdfdmVydF9tbWkoY29uc3QgdWludDhfdCAqc3JjLCBw
dHJkaWZmX3Qgc3JjX3N0cmlkZSwKICAgKHZvaWQpeV9zdGVwX3E0OwogCiAgIF9fYXNtX18gdm9s
YXRpbGUoCi0gICAgInhvciAgICAgICAgJVtmdG1wMF0sICAgICVbZnRtcDBdLCAgICVbZnRtcDBd
ICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAwXSwgICAgJVtmdG1wMF0sICAgJVtm
dG1wMF0gICAgICBcblx0IgogICAgICJnc2xkbGMxICAgICVbZnRtcDRdLCAgICAweDAzKCVbZmls
dGVyXSkgICAgICAgICAgIFxuXHQiCiAgICAgImdzbGRyYzEgICAgJVtmdG1wNF0sICAgIDB4MDAo
JVtmaWx0ZXJdKSAgICAgICAgICAgXG5cdCIKICAgICAiZ3NsZGxjMSAgICAlW2Z0bXA1XSwgICAg
MHgwYiglW2ZpbHRlcl0pICAgICAgICAgICBcblx0IgpAQCAtNDY3LDcgKzQ2Nyw3IEBAIHZvaWQg
dnB4X2NvbnZvbHZlX2F2Z19tbWkoY29uc3QgdWludDhfdCAqc3JjLCBwdHJkaWZmX3Qgc3JjX3N0
cmlkZSwKIAogICAgIF9fYXNtX18gdm9sYXRpbGUoCiAgICAgICAibW92ZSAgICAgICAlW3RtcDFd
LCAgICAlW3dpZHRoXSAgICAgICAgICAgICAgICAgIFxuXHQiCi0gICAgICAieG9yICAgICAgICAl
W2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSAgICAgIFxuXHQiCisgICAgICAicHhvciAg
ICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSAgICAgIFxuXHQiCiAgICAgICAi
bGkgICAgICAgICAlW3RtcDBdLCAgICAweDEwMDAxICAgICAgICAgICAgICAgICAgIFxuXHQiCiAg
ICAgICBNTUlfTVRDMSglW3RtcDBdLCAgICAlW2Z0bXAzXSkKICAgICAgICJwdW5wY2tsaHcgICVb
ZnRtcDNdLCAgICVbZnRtcDNdLCAgICVbZnRtcDNdICAgICAgXG5cdCIKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC94ODYvYWRkX25vaXNlX3NzZTIuYXNtIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3g4Ni9hZGRfbm9pc2Vfc3NlMi5hc20KaW5kZXggODBjY2VkNGNlZGFhNGI3MWIyMzYyZDA0
Y2FmN2JiOWVkZDI4ZDQ0Ni4uZjUxNzE4Y2Y5OTRkZTFiNzcyYmQ1MWQ5ZTE1Y2UxMjg5MDI1Zjc3
MSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9hZGRfbm9pc2Vfc3NlMi5hc20K
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9hZGRfbm9pc2Vfc3NlMi5hc20KQEAgLTE2LDcg
KzE2LDcgQEAgU0VDVElPTiAudGV4dAogO3ZvaWQgdnB4X3BsYW5lX2FkZF9ub2lzZV9zc2UyKHVp
bnQ4X3QgKnN0YXJ0LCBjb25zdCBpbnQ4X3QgKm5vaXNlLAogOyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGludCBibGFja2NsYW1wLCBpbnQgd2hpdGVjbGFtcCwKIDsgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpbnQgd2lkdGgsIGludCBoZWlnaHQsIGludCBwaXRjaCkKLWdsb2Jh
bCBzeW0odnB4X3BsYW5lX2FkZF9ub2lzZV9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X3Bs
YW5lX2FkZF9ub2lzZV9zc2UyKQogc3ltKHZweF9wbGFuZV9hZGRfbm9pc2Vfc3NlMik6CiAgICAg
cHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC94ODYvZGVibG9ja19zc2UyLmFzbSBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC94ODYvZGVibG9ja19zc2UyLmFzbQppbmRleCA5ZDhlNWUzZTA5MDcwZmNlNTI4NzhiMTZkMTc5
NTJmZjFiMTJjODI4Li5iM2FmNjc3ZDJlODY4NWViNzUyOWYyYTdkNDhmNDRjNjAxOTI3MjY2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2RlYmxvY2tfc3NlMi5hc20KKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9kZWJsb2NrX3NzZTIuYXNtCkBAIC05NSw3ICs5NSw3IEBA
IFNFQ1RJT04gLnRleHQKIDsgICAgaW50ICpmbGltaXRzLAogOyAgICBpbnQgc2l6ZQogOykKLWds
b2JhbCBzeW0odnB4X3Bvc3RfcHJvY19kb3duX2FuZF9hY3Jvc3NfbWJfcm93X3NzZTIpIFBSSVZB
VEUKK2dsb2JhbHN5bSh2cHhfcG9zdF9wcm9jX2Rvd25fYW5kX2Fjcm9zc19tYl9yb3dfc3NlMikK
IHN5bSh2cHhfcG9zdF9wcm9jX2Rvd25fYW5kX2Fjcm9zc19tYl9yb3dfc3NlMik6CiAgICAgcHVz
aCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTIzNSw3ICsyMzUsNyBA
QCBzeW0odnB4X3Bvc3RfcHJvY19kb3duX2FuZF9hY3Jvc3NfbWJfcm93X3NzZTIpOgogCiA7dm9p
ZCB2cHhfbWJwb3N0X3Byb2NfYWNyb3NzX2lwX3NzZTIodW5zaWduZWQgY2hhciAqc3JjLAogOyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBwaXRjaCwgaW50IHJvd3MsIGlu
dCBjb2xzLGludCBmbGltaXQpCi1nbG9iYWwgc3ltKHZweF9tYnBvc3RfcHJvY19hY3Jvc3NfaXBf
c3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9tYnBvc3RfcHJvY19hY3Jvc3NfaXBfc3NlMikK
IHN5bSh2cHhfbWJwb3N0X3Byb2NfYWNyb3NzX2lwX3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJi
cAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AveDg2L2hpZ2hiZF92YXJpYW5jZV9pbXBsX3NzZTIuYXNtIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3g4Ni9oaWdoYmRfdmFyaWFuY2VfaW1wbF9zc2UyLmFzbQppbmRleCBhMjU2YTU5ZWMwZTJiZWZm
MTQ5NGU3OGU0Mzk5M2RjOWZkNTMzMjAwLi41YmVlNTFmYTBjMDY0ODQ4MjZlMGIxYTI3MTQyNTRh
Y2E2NjJkNzg3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF92YXJp
YW5jZV9pbXBsX3NzZTIuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX3Zh
cmlhbmNlX2ltcGxfc3NlMi5hc20KQEAgLTIyLDcgKzIyLDcgQEAgU0VDVElPTiAudGV4dAogOyAg
ICB1bnNpZ25lZCBpbnQgICAgKiAgU1NFLAogOyAgICBpbnQgICAgICAgICAgICAgKiAgU3VtCiA7
KQotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2NhbGMxNngxNnZhcl9zc2UyKSBQUklWQVRFCitnbG9i
YWxzeW0odnB4X2hpZ2hiZF9jYWxjMTZ4MTZ2YXJfc3NlMikKIHN5bSh2cHhfaGlnaGJkX2NhbGMx
NngxNnZhcl9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAs
IHJzcApAQCAtMTc1LDcgKzE3NSw3IEBAIHN5bSh2cHhfaGlnaGJkX2NhbGMxNngxNnZhcl9zc2Uy
KToKIDsgICAgdW5zaWduZWQgaW50ICAgICogIFNTRSwKIDsgICAgaW50ICAgICAgICAgICAgICog
IFN1bQogOykKLWdsb2JhbCBzeW0odnB4X2hpZ2hiZF9jYWxjOHg4dmFyX3NzZTIpIFBSSVZBVEUK
K2dsb2JhbHN5bSh2cHhfaGlnaGJkX2NhbGM4eDh2YXJfc3NlMikKIHN5bSh2cHhfaGlnaGJkX2Nh
bGM4eDh2YXJfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJw
LCByc3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvc2FkX3NzZTMuYXNtIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zYWRfc3NlMy5hc20KaW5kZXggMTc1ZGNjMDg5NTQ3ZmZm
MWZmZWI4YTEwOTRiMzI2NDg3MDYzNTMyZC4uYWNiZDJlNGZhMTIyYTU4M2FlZmM3MmUzMjJiMjc0
ODA0OTZkNzFlZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zYWRfc3NlMy5h
c20KKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zYWRfc3NlMy5hc20KQEAgLTE3Myw3ICsx
NzMsNyBAQCBTRUNUSU9OIC50ZXh0CiA7ICAgIHVuc2lnbmVkIGNoYXIgKnJlZl9wdHIsCiA7ICAg
IGludCAgcmVmX3N0cmlkZSwKIDsgICAgaW50ICAqcmVzdWx0cykKLWdsb2JhbCBzeW0odnB4X3Nh
ZDE2eDE2eDNfc3NlMykgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9zYWQxNngxNngzX3NzZTMpCiBz
eW0odnB4X3NhZDE2eDE2eDNfc3NlMyk6CiAKICAgICBTVEFDS19GUkFNRV9DUkVBVEVfWDMKQEAg
LTIxNSw3ICsyMTUsNyBAQCBzeW0odnB4X3NhZDE2eDE2eDNfc3NlMyk6CiA7ICAgIHVuc2lnbmVk
IGNoYXIgKnJlZl9wdHIsCiA7ICAgIGludCAgcmVmX3N0cmlkZSwKIDsgICAgaW50ICAqcmVzdWx0
cykKLWdsb2JhbCBzeW0odnB4X3NhZDE2eDh4M19zc2UzKSBQUklWQVRFCitnbG9iYWxzeW0odnB4
X3NhZDE2eDh4M19zc2UzKQogc3ltKHZweF9zYWQxNng4eDNfc3NlMyk6CiAKICAgICBTVEFDS19G
UkFNRV9DUkVBVEVfWDMKQEAgLTI1Myw3ICsyNTMsNyBAQCBzeW0odnB4X3NhZDE2eDh4M19zc2Uz
KToKIDsgICAgdW5zaWduZWQgY2hhciAqcmVmX3B0ciwKIDsgICAgaW50ICByZWZfc3RyaWRlLAog
OyAgICBpbnQgICpyZXN1bHRzKQotZ2xvYmFsIHN5bSh2cHhfc2FkOHgxNngzX3NzZTMpIFBSSVZB
VEUKK2dsb2JhbHN5bSh2cHhfc2FkOHgxNngzX3NzZTMpCiBzeW0odnB4X3NhZDh4MTZ4M19zc2Uz
KToKIAogICAgIFNUQUNLX0ZSQU1FX0NSRUFURV9YMwpAQCAtMjgyLDcgKzI4Miw3IEBAIHN5bSh2
cHhfc2FkOHgxNngzX3NzZTMpOgogOyAgICB1bnNpZ25lZCBjaGFyICpyZWZfcHRyLAogOyAgICBp
bnQgIHJlZl9zdHJpZGUsCiA7ICAgIGludCAgKnJlc3VsdHMpCi1nbG9iYWwgc3ltKHZweF9zYWQ4
eDh4M19zc2UzKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X3NhZDh4OHgzX3NzZTMpCiBzeW0odnB4
X3NhZDh4OHgzX3NzZTMpOgogCiAgICAgU1RBQ0tfRlJBTUVfQ1JFQVRFX1gzCkBAIC0zMDcsNyAr
MzA3LDcgQEAgc3ltKHZweF9zYWQ4eDh4M19zc2UzKToKIDsgICAgdW5zaWduZWQgY2hhciAqcmVm
X3B0ciwKIDsgICAgaW50ICByZWZfc3RyaWRlLAogOyAgICBpbnQgICpyZXN1bHRzKQotZ2xvYmFs
IHN5bSh2cHhfc2FkNHg0eDNfc3NlMykgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9zYWQ0eDR4M19z
c2UzKQogc3ltKHZweF9zYWQ0eDR4M19zc2UzKToKIAogICAgIFNUQUNLX0ZSQU1FX0NSRUFURV9Y
MwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zYWRfc3NlNC5hc20gYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AveDg2L3NhZF9zc2U0LmFzbQppbmRleCAwMzk5OWRmY2EyNTAyZDFlYzA4
MzQ1MDhlMDgwNGVjMDlmNjUxZDA1Li4wODE4ZWQ1ZjBhY2M3ZTJiMTk1MjQxNWU5N2VmOGI3MmVi
ZjUzOGY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3NhZF9zc2U0LmFzbQor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3NhZF9zc2U0LmFzbQpAQCAtMTczLDcgKzE3Myw3
IEBAIFNFQ1RJT04gLnRleHQKIDsgICAgY29uc3QgdW5zaWduZWQgY2hhciAqcmVmX3B0ciwKIDsg
ICAgaW50ICByZWZfc3RyaWRlLAogOyAgICB1bnNpZ25lZCBzaG9ydCAqc2FkX2FycmF5KTsKLWds
b2JhbCBzeW0odnB4X3NhZDE2eDE2eDhfc3NlNF8xKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X3Nh
ZDE2eDE2eDhfc3NlNF8xKQogc3ltKHZweF9zYWQxNngxNng4X3NzZTRfMSk6CiAgICAgcHVzaCAg
ICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTIxNCw3ICsyMTQsNyBAQCBz
eW0odnB4X3NhZDE2eDE2eDhfc3NlNF8xKToKIDsgICAgaW50ICByZWZfc3RyaWRlLAogOyAgICB1
bnNpZ25lZCBzaG9ydCAqc2FkX2FycmF5CiA7KTsKLWdsb2JhbCBzeW0odnB4X3NhZDE2eDh4OF9z
c2U0XzEpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfc2FkMTZ4OHg4X3NzZTRfMSkKIHN5bSh2cHhf
c2FkMTZ4OHg4X3NzZTRfMSk6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAg
cmJwLCByc3AKQEAgLTI1MSw3ICsyNTEsNyBAQCBzeW0odnB4X3NhZDE2eDh4OF9zc2U0XzEpOgog
OyAgICBpbnQgIHJlZl9zdHJpZGUsCiA7ICAgIHVuc2lnbmVkIHNob3J0ICpzYWRfYXJyYXkKIDsp
OwotZ2xvYmFsIHN5bSh2cHhfc2FkOHg4eDhfc3NlNF8xKSBQUklWQVRFCitnbG9iYWxzeW0odnB4
X3NhZDh4OHg4X3NzZTRfMSkKIHN5bSh2cHhfc2FkOHg4eDhfc3NlNF8xKToKICAgICBwdXNoICAg
ICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMjg4LDcgKzI4OCw3IEBAIHN5
bSh2cHhfc2FkOHg4eDhfc3NlNF8xKToKIDsgICAgaW50ICByZWZfc3RyaWRlLAogOyAgICB1bnNp
Z25lZCBzaG9ydCAqc2FkX2FycmF5CiA7KTsKLWdsb2JhbCBzeW0odnB4X3NhZDh4MTZ4OF9zc2U0
XzEpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfc2FkOHgxNng4X3NzZTRfMSkKIHN5bSh2cHhfc2Fk
OHgxNng4X3NzZTRfMSk6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJw
LCByc3AKQEAgLTMyOSw3ICszMjksNyBAQCBzeW0odnB4X3NhZDh4MTZ4OF9zc2U0XzEpOgogOyAg
ICBpbnQgIHJlZl9zdHJpZGUsCiA7ICAgIHVuc2lnbmVkIHNob3J0ICpzYWRfYXJyYXkKIDspOwot
Z2xvYmFsIHN5bSh2cHhfc2FkNHg0eDhfc3NlNF8xKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X3Nh
ZDR4NHg4X3NzZTRfMSkKIHN5bSh2cHhfc2FkNHg0eDhfc3NlNF8xKToKICAgICBwdXNoICAgICAg
ICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3g4Ni9zYWRfc3NzZTMuYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zYWRfc3Nz
ZTMuYXNtCmluZGV4IDdjZjkzY2Y1MWRlZTdjYzViMzAxNmNhZDg1MWM0YmJlNjI0Zjk1ZWEuLmE1
YmM2ZDczMDZjMDhjYmFlZTYzMjY3MzdmMWViYmVhZTYzY2ZjMTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC94ODYvc2FkX3Nzc2UzLmFzbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
eDg2L3NhZF9zc3NlMy5hc20KQEAgLTE1NCw3ICsxNTQsNyBAQCBTRUNUSU9OIC50ZXh0CiA7ICAg
IHVuc2lnbmVkIGNoYXIgKnJlZl9wdHIsCiA7ICAgIGludCAgcmVmX3N0cmlkZSwKIDsgICAgaW50
ICAqcmVzdWx0cykKLWdsb2JhbCBzeW0odnB4X3NhZDE2eDE2eDNfc3NzZTMpIFBSSVZBVEUKK2ds
b2JhbHN5bSh2cHhfc2FkMTZ4MTZ4M19zc3NlMykKIHN5bSh2cHhfc2FkMTZ4MTZ4M19zc3NlMyk6
CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTI2Nyw3
ICsyNjcsNyBAQCBzeW0odnB4X3NhZDE2eDE2eDNfc3NzZTMpOgogOyAgICB1bnNpZ25lZCBjaGFy
ICpyZWZfcHRyLAogOyAgICBpbnQgIHJlZl9zdHJpZGUsCiA7ICAgIGludCAgKnJlc3VsdHMpCi1n
bG9iYWwgc3ltKHZweF9zYWQxNng4eDNfc3NzZTMpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfc2Fk
MTZ4OHgzX3Nzc2UzKQogc3ltKHZweF9zYWQxNng4eDNfc3NzZTMpOgogICAgIHB1c2ggICAgICAg
IHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AveDg2L3NzaW1fb3B0X3g4Nl82NC5hc20gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3Nz
aW1fb3B0X3g4Nl82NC5hc20KaW5kZXggMzAwZmE4YWFiY2UzYjQ0OGYwNjc2ZmQyMmQyMTM1MGM3
ZWVjZDY3MS4uNDFmZmJiMDdlNjRkMWE5MDNkNzljZTc3YzliZmE0YTgwYmM0N2UwZCAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zc2ltX29wdF94ODZfNjQuYXNtCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC94ODYvc3NpbV9vcHRfeDg2XzY0LmFzbQpAQCAtNjQsNyArNjQsNyBA
QCBTRUNUSU9OIC50ZXh0CiA7IG9yIHBhdmdiIEF0IHRoaXMgcG9pbnQgdGhpcyBpcyBqdXN0IG1l
YW50IHRvIGJlIGZpcnN0IHBhc3MgZm9yIGNhbGN1bGF0aW5nCiA7IGFsbCB0aGUgcGFybXMgbmVl
ZGVkIGZvciAxNngxNiBzc2ltIHNvIHdlIGNhbiBwbGF5IHdpdGggZHNzaW0gYXMgZGlzdG9ydGlv
bgogOyBpbiBtb2RlIHNlbGVjdGlvbiBjb2RlLgotZ2xvYmFsIHN5bSh2cHhfc3NpbV9wYXJtc18x
NngxNl9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X3NzaW1fcGFybXNfMTZ4MTZfc3NlMikK
IHN5bSh2cHhfc3NpbV9wYXJtc18xNngxNl9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAg
ICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMTU0LDcgKzE1NCw3IEBAIHN5bSh2cHhfc3NpbV9w
YXJtc18xNngxNl9zc2UyKToKIDsgb3IgcGF2Z2IgQXQgdGhpcyBwb2ludCB0aGlzIGlzIGp1c3Qg
bWVhbnQgdG8gYmUgZmlyc3QgcGFzcyBmb3IgY2FsY3VsYXRpbmcKIDsgYWxsIHRoZSBwYXJtcyBu
ZWVkZWQgZm9yIDE2eDE2IHNzaW0gc28gd2UgY2FuIHBsYXkgd2l0aCBkc3NpbSBhcyBkaXN0b3J0
aW9uCiA7IGluIG1vZGUgc2VsZWN0aW9uIGNvZGUuCi1nbG9iYWwgc3ltKHZweF9zc2ltX3Bhcm1z
Xzh4OF9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X3NzaW1fcGFybXNfOHg4X3NzZTIpCiBz
eW0odnB4X3NzaW1fcGFybXNfOHg4X3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1v
diAgICAgICAgIHJicCwgcnNwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3Ry
YW5zcG9zZV9zc2UyLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3RyYW5zcG9zZV9zc2UyLmgK
aW5kZXggNmUwNzg3MWIxODE2MTg0NTcyMGE5MGU4ZDRiNWJhMWE0NmYxZjAwZC4uYjRmMTE5MGQ3
NGEyNmIwZTEzOTA2NzhmNzAwMzVmOWQyMjU0MDFiYiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3g4Ni90cmFuc3Bvc2Vfc3NlMi5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYv
dHJhbnNwb3NlX3NzZTIuaApAQCAtMTYsNyArMTYsNyBAQAogI2luY2x1ZGUgIi4vdnB4X2NvbmZp
Zy5oIgogCiBzdGF0aWMgSU5MSU5FIF9fbTEyOGkgdHJhbnNwb3NlXzhiaXRfNHg0KGNvbnN0IF9f
bTEyOGkgKmNvbnN0IGluKSB7Ci0gIC8vIFVucGFjayAxNiBiaXQgZWxlbWVudHMuIEdvZXMgZnJv
bToKKyAgLy8gVW5wYWNrIDggYml0IGVsZW1lbnRzLiBHb2VzIGZyb206CiAgIC8vIGluWzBdOiAw
MCAwMSAwMiAwMwogICAvLyBpblsxXTogMTAgMTEgMTIgMTMKICAgLy8gaW5bMl06IDIwIDIxIDIy
IDIzCkBAIC0yNyw3ICsyNyw3IEBAIHN0YXRpYyBJTkxJTkUgX19tMTI4aSB0cmFuc3Bvc2VfOGJp
dF80eDQoY29uc3QgX19tMTI4aSAqY29uc3QgaW4pIHsKICAgY29uc3QgX19tMTI4aSBhMCA9IF9t
bV91bnBhY2tsb19lcGk4KGluWzBdLCBpblsxXSk7CiAgIGNvbnN0IF9fbTEyOGkgYTEgPSBfbW1f
dW5wYWNrbG9fZXBpOChpblsyXSwgaW5bM10pOwogCi0gIC8vIFVucGFjayAzMiBiaXQgZWxlbWVu
dHMgcmVzdWx0aW5nIGluOgorICAvLyBVbnBhY2sgMTYgYml0IGVsZW1lbnRzIHJlc3VsdGluZyBp
bjoKICAgLy8gMDAgMTAgMjAgMzAgIDAxIDExIDIxIDMxICAwMiAxMiAyMiAzMiAgMDMgMTMgMjMg
MzMKICAgcmV0dXJuIF9tbV91bnBhY2tsb19lcGkxNihhMCwgYTEpOwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92cHhfaGlnaF9zdWJwaXhlbF84dF9zc2UyLmFzbSBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X2hpZ2hfc3VicGl4ZWxfOHRfc3NlMi5hc20KaW5kZXgg
YzU3MTQ5NjU3YWIzN2YwYzdkYjQwM2MwYTg0ZjY0MjQ2NGJlZjNkNy4uZmMzMDFmYjM5ZTZmMzVj
OGIyZTJjN2VhNGUwZWU2NTZiNGI3NmExNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3g4Ni92cHhfaGlnaF9zdWJwaXhlbF84dF9zc2UyLmFzbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AveDg2L3ZweF9oaWdoX3N1YnBpeGVsXzh0X3NzZTIuYXNtCkBAIC0yMDgsNyArMjA4LDcgQEAg
U0VDVElPTiAudGV4dAogOyAgICB1bnNpZ25lZCBpbnQgICBvdXRwdXRfaGVpZ2h0LAogOyAgICBz
aG9ydCAqZmlsdGVyCiA7KQotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF92
OF9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDRfdjhf
c3NlMikKIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF92OF9zc2UyKToKICAgICBwdXNo
ICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMjc4LDcgKzI3OCw3IEBA
IHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF92OF9zc2UyKToKIDsgICAgdW5zaWduZWQg
aW50ICAgb3V0cHV0X2hlaWdodCwKIDsgICAgc2hvcnQgKmZpbHRlcgogOykKLWdsb2JhbCBzeW0o
dnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDhfdjhfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZw
eF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ4X3Y4X3NzZTIpCiBzeW0odnB4X2hpZ2hiZF9maWx0ZXJf
YmxvY2sxZDhfdjhfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAg
cmJwLCByc3AKQEAgLTMzNyw3ICszMzcsNyBAQCBzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sx
ZDhfdjhfc3NlMik6CiA7ICAgIHVuc2lnbmVkIGludCAgIG91dHB1dF9oZWlnaHQsCiA7ICAgIHNo
b3J0ICpmaWx0ZXIKIDspCi1nbG9iYWwgc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl92
OF9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDE2X3Y4
X3NzZTIpCiBzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDE2X3Y4X3NzZTIpOgogICAgIHB1
c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC0zOTEsNyArMzkxLDcg
QEAgc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl92OF9zc2UyKToKICAgICBwb3AgICAg
ICAgICByYnAKICAgICByZXQKIAotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFk
NF92OF9hdmdfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2Nr
MWQ0X3Y4X2F2Z19zc2UyKQogc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ0X3Y4X2F2Z19z
c2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAt
NDUyLDcgKzQ1Miw3IEBAIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF92OF9hdmdfc3Nl
Mik6CiAgICAgcG9wICAgICAgICAgcmJwCiAgICAgcmV0CiAKLWdsb2JhbCBzeW0odnB4X2hpZ2hi
ZF9maWx0ZXJfYmxvY2sxZDhfdjhfYXZnX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfaGln
aGJkX2ZpbHRlcl9ibG9jazFkOF92OF9hdmdfc3NlMikKIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9i
bG9jazFkOF92OF9hdmdfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAg
ICAgcmJwLCByc3AKQEAgLTUwMSw3ICs1MDEsNyBAQCBzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxv
Y2sxZDhfdjhfYXZnX3NzZTIpOgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9i
YWwgc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl92OF9hdmdfc3NlMikgUFJJVkFURQor
Z2xvYmFsc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl92OF9hdmdfc3NlMikKIHN5bSh2
cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkMTZfdjhfYXZnX3NzZTIpOgogICAgIHB1c2ggICAgICAg
IHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC01NjMsNyArNTYzLDcgQEAgc3ltKHZw
eF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl92OF9hdmdfc3NlMik6CiA7ICAgIHVuc2lnbmVkIGlu
dCAgICBvdXRwdXRfaGVpZ2h0LAogOyAgICBzaG9ydCAqZmlsdGVyCiA7KQotZ2xvYmFsIHN5bSh2
cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF9oOF9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4
X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDRfaDhfc3NlMikKIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9i
bG9jazFkNF9oOF9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICBy
YnAsIHJzcApAQCAtNjM4LDcgKzYzOCw3IEBAIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFk
NF9oOF9zc2UyKToKIDsgICAgdW5zaWduZWQgaW50ICAgIG91dHB1dF9oZWlnaHQsCiA7ICAgIHNo
b3J0ICpmaWx0ZXIKIDspCi1nbG9iYWwgc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ4X2g4
X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkOF9oOF9z
c2UyKQogc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ4X2g4X3NzZTIpOgogICAgIHB1c2gg
ICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC03MDQsNyArNzA0LDcgQEAg
c3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ4X2g4X3NzZTIpOgogOyAgICB1bnNpZ25lZCBp
bnQgICAgb3V0cHV0X2hlaWdodCwKIDsgICAgc2hvcnQgKmZpbHRlcgogOykKLWdsb2JhbCBzeW0o
dnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDE2X2g4X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2
cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkMTZfaDhfc3NlMikKIHN5bSh2cHhfaGlnaGJkX2ZpbHRl
cl9ibG9jazFkMTZfaDhfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAg
ICAgcmJwLCByc3AKQEAgLTc3Miw3ICs3NzIsNyBAQCBzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxv
Y2sxZDE2X2g4X3NzZTIpOgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9iYWwg
c3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ0X2g4X2F2Z19zc2UyKSBQUklWQVRFCitnbG9i
YWxzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDRfaDhfYXZnX3NzZTIpCiBzeW0odnB4X2hp
Z2hiZF9maWx0ZXJfYmxvY2sxZDRfaDhfYXZnX3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAog
ICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC04MzgsNyArODM4LDcgQEAgc3ltKHZweF9oaWdo
YmRfZmlsdGVyX2Jsb2NrMWQ0X2g4X2F2Z19zc2UyKToKICAgICBwb3AgICAgICAgICByYnAKICAg
ICByZXQKIAotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkOF9oOF9hdmdfc3Nl
MikgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ4X2g4X2F2Z19z
c2UyKQogc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ4X2g4X2F2Z19zc2UyKToKICAgICBw
dXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtODk1LDcgKzg5NSw3
IEBAIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkOF9oOF9hdmdfc3NlMik6CiAgICAgcG9w
ICAgICAgICAgcmJwCiAgICAgcmV0CiAKLWdsb2JhbCBzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxv
Y2sxZDE2X2g4X2F2Z19zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2hpZ2hiZF9maWx0ZXJf
YmxvY2sxZDE2X2g4X2F2Z19zc2UyKQogc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl9o
OF9hdmdfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCBy
c3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X2hpZ2hfc3VicGl4ZWxf
YmlsaW5lYXJfc3NlMi5hc20gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9oaWdoX3N1YnBp
eGVsX2JpbGluZWFyX3NzZTIuYXNtCmluZGV4IGVjMThkMzcwZTIxNWNmOTljYzYyMmRhMTUwY2Vj
OTIyODEzNmM2NTMuLmJkNTFjNzViY2I2MzlmOWRmZDViMmU2MzdjNTkzYzBiNmJhMDIzZTggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X2hpZ2hfc3VicGl4ZWxfYmlsaW5l
YXJfc3NlMi5hc20KKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92cHhfaGlnaF9zdWJwaXhl
bF9iaWxpbmVhcl9zc2UyLmFzbQpAQCAtMTczLDcgKzE3Myw3IEBACiAKIFNFQ1RJT04gLnRleHQK
IAotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF92Ml9zc2UyKSBQUklWQVRF
CitnbG9iYWxzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDRfdjJfc3NlMikKIHN5bSh2cHhf
aGlnaGJkX2ZpbHRlcl9ibG9jazFkNF92Ml9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAg
ICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMTk4LDcgKzE5OCw3IEBAIHN5bSh2cHhfaGlnaGJk
X2ZpbHRlcl9ibG9jazFkNF92Ml9zc2UyKToKICAgICByZXQKIAogJWlmIFZQWF9BUkNIX1g4Nl82
NAotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkOF92Ml9zc2UyKSBQUklWQVRF
CitnbG9iYWxzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDhfdjJfc3NlMikKIHN5bSh2cHhf
aGlnaGJkX2ZpbHRlcl9ibG9jazFkOF92Ml9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAg
ICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMjI0LDcgKzIyNCw3IEBAIHN5bSh2cHhfaGlnaGJk
X2ZpbHRlcl9ibG9jazFkOF92Ml9zc2UyKToKICAgICBwb3AgICAgICAgICByYnAKICAgICByZXQK
IAotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkMTZfdjJfc3NlMikgUFJJVkFU
RQorZ2xvYmFsc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl92Ml9zc2UyKQogc3ltKHZw
eF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl92Ml9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAK
ICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMjUzLDcgKzI1Myw3IEBAIHN5bSh2cHhfaGln
aGJkX2ZpbHRlcl9ibG9jazFkMTZfdjJfc3NlMik6CiAgICAgcmV0CiAlZW5kaWYKIAotZ2xvYmFs
IHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF92Ml9hdmdfc3NlMikgUFJJVkFURQorZ2xv
YmFsc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ0X3YyX2F2Z19zc2UyKQogc3ltKHZweF9o
aWdoYmRfZmlsdGVyX2Jsb2NrMWQ0X3YyX2F2Z19zc2UyKToKICAgICBwdXNoICAgICAgICByYnAK
ICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMjc4LDcgKzI3OCw3IEBAIHN5bSh2cHhfaGln
aGJkX2ZpbHRlcl9ibG9jazFkNF92Ml9hdmdfc3NlMik6CiAgICAgcmV0CiAKICVpZiBWUFhfQVJD
SF9YODZfNjQKLWdsb2JhbCBzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDhfdjJfYXZnX3Nz
ZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkOF92Ml9hdmdf
c3NlMikKIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkOF92Ml9hdmdfc3NlMik6CiAgICAg
cHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTMwNCw3ICszMDQs
NyBAQCBzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDhfdjJfYXZnX3NzZTIpOgogICAgIHBv
cCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9iYWwgc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Js
b2NrMWQxNl92Ml9hdmdfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9oaWdoYmRfZmlsdGVy
X2Jsb2NrMWQxNl92Ml9hdmdfc3NlMikKIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkMTZf
djJfYXZnX3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwg
cnNwCkBAIC0zMzMsNyArMzMzLDcgQEAgc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl92
Ml9hdmdfc3NlMik6CiAgICAgcmV0CiAlZW5kaWYKIAotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2Zp
bHRlcl9ibG9jazFkNF9oMl9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2hpZ2hiZF9maWx0
ZXJfYmxvY2sxZDRfaDJfc3NlMikKIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF9oMl9z
c2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAt
MzU5LDcgKzM1OSw3IEBAIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF9oMl9zc2UyKToK
ICAgICByZXQKIAogJWlmIFZQWF9BUkNIX1g4Nl82NAotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2Zp
bHRlcl9ibG9jazFkOF9oMl9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2hpZ2hiZF9maWx0
ZXJfYmxvY2sxZDhfaDJfc3NlMikKIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkOF9oMl9z
c2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAt
Mzg1LDcgKzM4NSw3IEBAIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkOF9oMl9zc2UyKToK
ICAgICBwb3AgICAgICAgICByYnAKICAgICByZXQKIAotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2Zp
bHRlcl9ibG9jazFkMTZfaDJfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9oaWdoYmRfZmls
dGVyX2Jsb2NrMWQxNl9oMl9zc2UyKQogc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl9o
Ml9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApA
QCAtNDE0LDcgKzQxNCw3IEBAIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkMTZfaDJfc3Nl
Mik6CiAgICAgcmV0CiAlZW5kaWYKIAotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9j
azFkNF9oMl9hdmdfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Js
b2NrMWQ0X2gyX2F2Z19zc2UyKQogc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ0X2gyX2F2
Z19zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApA
QCAtNDQwLDcgKzQ0MCw3IEBAIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF9oMl9hdmdf
c3NlMik6CiAgICAgcmV0CiAKICVpZiBWUFhfQVJDSF9YODZfNjQKLWdsb2JhbCBzeW0odnB4X2hp
Z2hiZF9maWx0ZXJfYmxvY2sxZDhfaDJfYXZnX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhf
aGlnaGJkX2ZpbHRlcl9ibG9jazFkOF9oMl9hdmdfc3NlMikKIHN5bSh2cHhfaGlnaGJkX2ZpbHRl
cl9ibG9jazFkOF9oMl9hdmdfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAg
ICAgICAgcmJwLCByc3AKQEAgLTQ2Niw3ICs0NjYsNyBAQCBzeW0odnB4X2hpZ2hiZF9maWx0ZXJf
YmxvY2sxZDhfaDJfYXZnX3NzZTIpOgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1n
bG9iYWwgc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl9oMl9hdmdfc3NlMikgUFJJVkFU
RQorZ2xvYmFsc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl9oMl9hdmdfc3NlMikKIHN5
bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkMTZfaDJfYXZnX3NzZTIpOgogICAgIHB1c2ggICAg
ICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AveDg2L3ZweF9zdWJwaXhlbF84dF9zc2UyLmFzbSBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC94ODYvdnB4X3N1YnBpeGVsXzh0X3NzZTIuYXNtCmluZGV4IDg0OTdlMTcyMWI5MGJiNTU2N2Iw
ZDAzNTc0YzZjYjdlZTU1NWNmNmYuLmM4NDU1ZTEzYTI1MDNlYjQxN2Q5YjdiMzkyMTdjZjkzNTJh
NTk1OGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X3N1YnBpeGVsXzh0
X3NzZTIuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X3N1YnBpeGVsXzh0X3Nz
ZTIuYXNtCkBAIC0xODcsNyArMTg3LDcgQEAgU0VDVElPTiAudGV4dAogOyAgICB1bnNpZ25lZCBp
bnQgICBvdXRwdXRfaGVpZ2h0LAogOyAgICBzaG9ydCAqZmlsdGVyCiA7KQotZ2xvYmFsIHN5bSh2
cHhfZmlsdGVyX2Jsb2NrMWQ0X3Y4X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVy
X2Jsb2NrMWQ0X3Y4X3NzZTIpCiBzeW0odnB4X2ZpbHRlcl9ibG9jazFkNF92OF9zc2UyKToKICAg
ICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMjU0LDcgKzI1
NCw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3Y4X3NzZTIpOgogOyAgICB1bnNpZ25lZCBp
bnQgICBvdXRwdXRfaGVpZ2h0LAogOyAgICBzaG9ydCAqZmlsdGVyCiA7KQotZ2xvYmFsIHN5bSh2
cHhfZmlsdGVyX2Jsb2NrMWQ4X3Y4X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVy
X2Jsb2NrMWQ4X3Y4X3NzZTIpCiBzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF92OF9zc2UyKToKICAg
ICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMzEzLDcgKzMx
Myw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4X3Y4X3NzZTIpOgogOyAgICB1bnNpZ25lZCBp
bnQgICBvdXRwdXRfaGVpZ2h0LAogOyAgICBzaG9ydCAqZmlsdGVyCiA7KQotZ2xvYmFsIHN5bSh2
cHhfZmlsdGVyX2Jsb2NrMWQxNl92OF9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2ZpbHRl
cl9ibG9jazFkMTZfdjhfc3NlMikKIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92OF9zc2UyKToK
ICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMzY3LDcg
KzM2Nyw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92OF9zc2UyKToKICAgICBwb3AgICAg
ICAgICByYnAKICAgICByZXQKIAotZ2xvYmFsIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3Y4X2F2
Z19zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkNF92OF9hdmdfc3Nl
MikKIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3Y4X2F2Z19zc2UyKToKICAgICBwdXNoICAgICAg
ICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtNDI1LDcgKzQyNSw3IEBAIHN5bSh2
cHhfZmlsdGVyX2Jsb2NrMWQ0X3Y4X2F2Z19zc2UyKToKICAgICBwb3AgICAgICAgICByYnAKICAg
ICByZXQKIAotZ2xvYmFsIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4X3Y4X2F2Z19zc2UyKSBQUklW
QVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF92OF9hdmdfc3NlMikKIHN5bSh2cHhf
ZmlsdGVyX2Jsb2NrMWQ4X3Y4X2F2Z19zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBt
b3YgICAgICAgICByYnAsIHJzcApAQCAtNDc0LDcgKzQ3NCw3IEBAIHN5bSh2cHhfZmlsdGVyX2Js
b2NrMWQ4X3Y4X2F2Z19zc2UyKToKICAgICBwb3AgICAgICAgICByYnAKICAgICByZXQKIAotZ2xv
YmFsIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92OF9hdmdfc3NlMikgUFJJVkFURQorZ2xvYmFs
c3ltKHZweF9maWx0ZXJfYmxvY2sxZDE2X3Y4X2F2Z19zc2UyKQogc3ltKHZweF9maWx0ZXJfYmxv
Y2sxZDE2X3Y4X2F2Z19zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAg
ICByYnAsIHJzcApAQCAtNTM2LDcgKzUzNiw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92
OF9hdmdfc3NlMik6CiA7ICAgIHVuc2lnbmVkIGludCAgICBvdXRwdXRfaGVpZ2h0LAogOyAgICBz
aG9ydCAqZmlsdGVyCiA7KQotZ2xvYmFsIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X2g4X3NzZTIp
IFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X2g4X3NzZTIpCiBzeW0odnB4
X2ZpbHRlcl9ibG9jazFkNF9oOF9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3Yg
ICAgICAgICByYnAsIHJzcApAQCAtNjEwLDcgKzYxMCw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2Nr
MWQ0X2g4X3NzZTIpOgogOyAgICB1bnNpZ25lZCBpbnQgICAgb3V0cHV0X2hlaWdodCwKIDsgICAg
c2hvcnQgKmZpbHRlcgogOykKLWdsb2JhbCBzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF9oOF9zc2Uy
KSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF9oOF9zc2UyKQogc3ltKHZw
eF9maWx0ZXJfYmxvY2sxZDhfaDhfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92
ICAgICAgICAgcmJwLCByc3AKQEAgLTY4NSw3ICs2ODUsNyBAQCBzeW0odnB4X2ZpbHRlcl9ibG9j
azFkOF9oOF9zc2UyKToKIDsgICAgdW5zaWduZWQgaW50ICAgIG91dHB1dF9oZWlnaHQsCiA7ICAg
IHNob3J0ICpmaWx0ZXIKIDspCi1nbG9iYWwgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDE2X2g4X3Nz
ZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl9oOF9zc2UyKQogc3lt
KHZweF9maWx0ZXJfYmxvY2sxZDE2X2g4X3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAg
IG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC03NzEsNyArNzcxLDcgQEAgc3ltKHZweF9maWx0ZXJf
YmxvY2sxZDE2X2g4X3NzZTIpOgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9i
YWwgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDRfaDhfYXZnX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5
bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X2g4X2F2Z19zc2UyKQogc3ltKHZweF9maWx0ZXJfYmxvY2sx
ZDRfaDhfYXZnX3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJi
cCwgcnNwCkBAIC04MzYsNyArODM2LDcgQEAgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDRfaDhfYXZn
X3NzZTIpOgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9iYWwgc3ltKHZweF9m
aWx0ZXJfYmxvY2sxZDhfaDhfYXZnX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVy
X2Jsb2NrMWQ4X2g4X2F2Z19zc2UyKQogc3ltKHZweF9maWx0ZXJfYmxvY2sxZDhfaDhfYXZnX3Nz
ZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC05
MDIsNyArOTAyLDcgQEAgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDhfaDhfYXZnX3NzZTIpOgogICAg
IHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9iYWwgc3ltKHZweF9maWx0ZXJfYmxvY2sx
ZDE2X2g4X2F2Z19zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkMTZf
aDhfYXZnX3NzZTIpCiBzeW0odnB4X2ZpbHRlcl9ibG9jazFkMTZfaDhfYXZnX3NzZTIpOgogICAg
IHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9zdWJwaXhlbF9iaWxpbmVhcl9zc2UyLmFzbSBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X3N1YnBpeGVsX2JpbGluZWFyX3NzZTIuYXNtCmluZGV4
IDZkNzk0OTJlNGE0NzY1Y2QxNWI1NTViOTc2NWFjMzg0ODg4NDIxMzUuLjY1NzkwYjFjMjFlMWQ2
NjczMGIxNjk1ZTBiNTdhZjE2MTczZmI4MmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC94ODYvdnB4X3N1YnBpeGVsX2JpbGluZWFyX3NzZTIuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC94ODYvdnB4X3N1YnBpeGVsX2JpbGluZWFyX3NzZTIuYXNtCkBAIC0xMzMsNyArMTMzLDcg
QEAKIAogU0VDVElPTiAudGV4dAogCi1nbG9iYWwgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDRfdjJf
c3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9maWx0ZXJfYmxvY2sxZDRfdjJfc3NlMikKIHN5
bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3YyX3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAg
IG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC0xNTcsNyArMTU3LDcgQEAgc3ltKHZweF9maWx0ZXJf
YmxvY2sxZDRfdjJfc3NlMik6CiAgICAgcG9wICAgICAgICAgcmJwCiAgICAgcmV0CiAKLWdsb2Jh
bCBzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF92Ml9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4
X2ZpbHRlcl9ibG9jazFkOF92Ml9zc2UyKQogc3ltKHZweF9maWx0ZXJfYmxvY2sxZDhfdjJfc3Nl
Mik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTE4
Myw3ICsxODMsNyBAQCBzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF92Ml9zc2UyKToKICAgICBwb3Ag
ICAgICAgICByYnAKICAgICByZXQKIAotZ2xvYmFsIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92
Ml9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkMTZfdjJfc3NlMikK
IHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92Ml9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAK
ICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMjExLDcgKzIxMSw3IEBAIHN5bSh2cHhfZmls
dGVyX2Jsb2NrMWQxNl92Ml9zc2UyKToKICAgICBwb3AgICAgICAgICByYnAKICAgICByZXQKIAot
Z2xvYmFsIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3YyX2F2Z19zc2UyKSBQUklWQVRFCitnbG9i
YWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkNF92Ml9hdmdfc3NlMikKIHN5bSh2cHhfZmlsdGVyX2Js
b2NrMWQ0X3YyX2F2Z19zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAg
ICByYnAsIHJzcApAQCAtMjM1LDcgKzIzNSw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3Yy
X2F2Z19zc2UyKToKICAgICBwb3AgICAgICAgICByYnAKICAgICByZXQKIAotZ2xvYmFsIHN5bSh2
cHhfZmlsdGVyX2Jsb2NrMWQ4X3YyX2F2Z19zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2Zp
bHRlcl9ibG9jazFkOF92Ml9hdmdfc3NlMikKIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4X3YyX2F2
Z19zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApA
QCAtMjYxLDcgKzI2MSw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4X3YyX2F2Z19zc2UyKToK
ICAgICBwb3AgICAgICAgICByYnAKICAgICByZXQKIAotZ2xvYmFsIHN5bSh2cHhfZmlsdGVyX2Js
b2NrMWQxNl92Ml9hdmdfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9maWx0ZXJfYmxvY2sx
ZDE2X3YyX2F2Z19zc2UyKQogc3ltKHZweF9maWx0ZXJfYmxvY2sxZDE2X3YyX2F2Z19zc2UyKToK
ICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMjg5LDcg
KzI4OSw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92Ml9hdmdfc3NlMik6CiAgICAgcG9w
ICAgICAgICAgcmJwCiAgICAgcmV0CiAKLWdsb2JhbCBzeW0odnB4X2ZpbHRlcl9ibG9jazFkNF9o
Ml9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkNF9oMl9zc2UyKQog
c3ltKHZweF9maWx0ZXJfYmxvY2sxZDRfaDJfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAg
ICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTMxNCw3ICszMTQsNyBAQCBzeW0odnB4X2ZpbHRl
cl9ibG9jazFkNF9oMl9zc2UyKToKICAgICBwb3AgICAgICAgICByYnAKICAgICByZXQKIAotZ2xv
YmFsIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4X2gyX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2
cHhfZmlsdGVyX2Jsb2NrMWQ4X2gyX3NzZTIpCiBzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF9oMl9z
c2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAt
MzQxLDcgKzM0MSw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4X2gyX3NzZTIpOgogICAgIHBv
cCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9iYWwgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDE2
X2gyX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl9oMl9zc2Uy
KQogc3ltKHZweF9maWx0ZXJfYmxvY2sxZDE2X2gyX3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJi
cAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC0zNjksNyArMzY5LDcgQEAgc3ltKHZweF9m
aWx0ZXJfYmxvY2sxZDE2X2gyX3NzZTIpOgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAog
Ci1nbG9iYWwgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDRfaDJfYXZnX3NzZTIpIFBSSVZBVEUKK2ds
b2JhbHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X2gyX2F2Z19zc2UyKQogc3ltKHZweF9maWx0ZXJf
YmxvY2sxZDRfaDJfYXZnX3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAg
ICAgIHJicCwgcnNwCkBAIC0zOTQsNyArMzk0LDcgQEAgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDRf
aDJfYXZnX3NzZTIpOgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9iYWwgc3lt
KHZweF9maWx0ZXJfYmxvY2sxZDhfaDJfYXZnX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhf
ZmlsdGVyX2Jsb2NrMWQ4X2gyX2F2Z19zc2UyKQogc3ltKHZweF9maWx0ZXJfYmxvY2sxZDhfaDJf
YXZnX3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNw
CkBAIC00MjEsNyArNDIxLDcgQEAgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDhfaDJfYXZnX3NzZTIp
OgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9iYWwgc3ltKHZweF9maWx0ZXJf
YmxvY2sxZDE2X2gyX2F2Z19zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9j
azFkMTZfaDJfYXZnX3NzZTIpCiBzeW0odnB4X2ZpbHRlcl9ibG9jazFkMTZfaDJfYXZnX3NzZTIp
OgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9zdWJwaXhlbF9iaWxpbmVhcl9zc3NlMy5h
c20gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9zdWJwaXhlbF9iaWxpbmVhcl9zc3NlMy5h
c20KaW5kZXggOGM5YzgxN2JlNzJkYTQ5MDEwNDBiMDQ2NmNiYzUxNjgyNGJmNjA0OC4uMzJlM2Nk
M2Q5Zjc3MDE0YmNjYzBjZTIzYjJmMzA1YjExYWE4YTFhMyAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3g4Ni92cHhfc3VicGl4ZWxfYmlsaW5lYXJfc3NzZTMuYXNtCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC94ODYvdnB4X3N1YnBpeGVsX2JpbGluZWFyX3Nzc2UzLmFzbQpAQCAtMTA3
LDcgKzEwNyw3IEBACiAKIFNFQ1RJT04gLnRleHQKIAotZ2xvYmFsIHN5bSh2cHhfZmlsdGVyX2Js
b2NrMWQ0X3YyX3Nzc2UzKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkNF92
Ml9zc3NlMykKIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3YyX3Nzc2UzKToKICAgICBwdXNoICAg
ICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMTMxLDcgKzEzMSw3IEBAIHN5
bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3YyX3Nzc2UzKToKICAgICBwb3AgICAgICAgICByYnAKICAg
ICByZXQKIAotZ2xvYmFsIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4X3YyX3Nzc2UzKSBQUklWQVRF
CitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF92Ml9zc3NlMykKIHN5bSh2cHhfZmlsdGVy
X2Jsb2NrMWQ4X3YyX3Nzc2UzKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAg
ICByYnAsIHJzcApAQCAtMTU3LDcgKzE1Nyw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4X3Yy
X3Nzc2UzKToKICAgICBwb3AgICAgICAgICByYnAKICAgICByZXQKIAotZ2xvYmFsIHN5bSh2cHhf
ZmlsdGVyX2Jsb2NrMWQxNl92Ml9zc3NlMykgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9maWx0ZXJf
YmxvY2sxZDE2X3YyX3Nzc2UzKQogc3ltKHZweF9maWx0ZXJfYmxvY2sxZDE2X3YyX3Nzc2UzKToK
ICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMTg0LDcg
KzE4NCw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92Ml9zc3NlMyk6CiAgICAgcG9wICAg
ICAgICAgcmJwCiAgICAgcmV0CiAKLWdsb2JhbCBzeW0odnB4X2ZpbHRlcl9ibG9jazFkNF92Ml9h
dmdfc3NzZTMpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3YyX2F2Z19z
c3NlMykKIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3YyX2F2Z19zc3NlMyk6CiAgICAgcHVzaCAg
ICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTIwOCw3ICsyMDgsNyBAQCBz
eW0odnB4X2ZpbHRlcl9ibG9jazFkNF92Ml9hdmdfc3NzZTMpOgogICAgIHBvcCAgICAgICAgIHJi
cAogICAgIHJldAogCi1nbG9iYWwgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDhfdjJfYXZnX3Nzc2Uz
KSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF92Ml9hdmdfc3NzZTMpCiBz
eW0odnB4X2ZpbHRlcl9ibG9jazFkOF92Ml9hdmdfc3NzZTMpOgogICAgIHB1c2ggICAgICAgIHJi
cAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC0yMzQsNyArMjM0LDcgQEAgc3ltKHZweF9m
aWx0ZXJfYmxvY2sxZDhfdjJfYXZnX3Nzc2UzKToKICAgICBwb3AgICAgICAgICByYnAKICAgICBy
ZXQKIAotZ2xvYmFsIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92Ml9hdmdfc3NzZTMpIFBSSVZB
VEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92Ml9hdmdfc3NzZTMpCiBzeW0odnB4
X2ZpbHRlcl9ibG9jazFkMTZfdjJfYXZnX3Nzc2UzKToKICAgICBwdXNoICAgICAgICByYnAKICAg
ICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMjYxLDcgKzI2MSw3IEBAIHN5bSh2cHhfZmlsdGVy
X2Jsb2NrMWQxNl92Ml9hdmdfc3NzZTMpOgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAog
Ci1nbG9iYWwgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDRfaDJfc3NzZTMpIFBSSVZBVEUKK2dsb2Jh
bHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X2gyX3Nzc2UzKQogc3ltKHZweF9maWx0ZXJfYmxvY2sx
ZDRfaDJfc3NzZTMpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwg
cnNwCkBAIC0yODYsNyArMjg2LDcgQEAgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDRfaDJfc3NzZTMp
OgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9iYWwgc3ltKHZweF9maWx0ZXJf
YmxvY2sxZDhfaDJfc3NzZTMpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4
X2gyX3Nzc2UzKQogc3ltKHZweF9maWx0ZXJfYmxvY2sxZDhfaDJfc3NzZTMpOgogICAgIHB1c2gg
ICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC0zMTMsNyArMzEzLDcgQEAg
c3ltKHZweF9maWx0ZXJfYmxvY2sxZDhfaDJfc3NzZTMpOgogICAgIHBvcCAgICAgICAgIHJicAog
ICAgIHJldAogCi1nbG9iYWwgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDE2X2gyX3Nzc2UzKSBQUklW
QVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkMTZfaDJfc3NzZTMpCiBzeW0odnB4X2Zp
bHRlcl9ibG9jazFkMTZfaDJfc3NzZTMpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAg
ICAgICAgIHJicCwgcnNwCkBAIC0zNDAsNyArMzQwLDcgQEAgc3ltKHZweF9maWx0ZXJfYmxvY2sx
ZDE2X2gyX3Nzc2UzKToKICAgICBwb3AgICAgICAgICByYnAKICAgICByZXQKIAotZ2xvYmFsIHN5
bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X2gyX2F2Z19zc3NlMykgUFJJVkFURQorZ2xvYmFsc3ltKHZw
eF9maWx0ZXJfYmxvY2sxZDRfaDJfYXZnX3Nzc2UzKQogc3ltKHZweF9maWx0ZXJfYmxvY2sxZDRf
aDJfYXZnX3Nzc2UzKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAs
IHJzcApAQCAtMzY1LDcgKzM2NSw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X2gyX2F2Z19z
c3NlMyk6CiAgICAgcG9wICAgICAgICAgcmJwCiAgICAgcmV0CiAKLWdsb2JhbCBzeW0odnB4X2Zp
bHRlcl9ibG9jazFkOF9oMl9hdmdfc3NzZTMpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVy
X2Jsb2NrMWQ4X2gyX2F2Z19zc3NlMykKIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4X2gyX2F2Z19z
c3NlMyk6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAg
LTM5Miw3ICszOTIsNyBAQCBzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF9oMl9hdmdfc3NzZTMpOgog
ICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9iYWwgc3ltKHZweF9maWx0ZXJfYmxv
Y2sxZDE2X2gyX2F2Z19zc3NlMykgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9maWx0ZXJfYmxvY2sx
ZDE2X2gyX2F2Z19zc3NlMykKIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl9oMl9hdmdfc3NzZTMp
OgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hc21kZWZzX21taS5oIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
cG9ydHMvYXNtZGVmc19tbWkuaAppbmRleCAyODM1NWJmOWZiZmJlNGFjYjhhMDM3OTgwODFlNGNj
MmEwYmY2YzVkLi40MDBhNTFjYzMyYjliMDg0MTI5NmMxM2RhOTc0M2NjNDU5NTYxMWE1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hc21kZWZzX21taS5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3BvcnRzL2FzbWRlZnNfbW1pLmgKQEAgLTM0LDcgKzM0LDcgQEAKICAgImxkICAgICAg
ICAgICIgI3JlZyAiLCAgICAgICAgIiAjYmlhcyAiKCIgI2FkZHIgIikgICAgICAgICAgICAgICBc
blx0IgogCiAjZGVmaW5lIE1NSV9TUkwocmVnMSwgcmVnMiwgc2hpZnQpIFwKLSAgImRzcmwgICAg
ICAgICIgI3JlZzEgIiwgICAgICAgIiAjcmVnMiAiLCAgICAgICAiICNzaGlmdCAiICAgICAgICBc
blx0IgorICAic3NybGQgICAgICAgIiAjcmVnMSAiLCAgICAgICAiICNyZWcyICIsICAgICAgICIg
I3NoaWZ0ICIgICAgICAgIFxuXHQiCiAKICNkZWZpbmUgTU1JX1NMTChyZWcxLCByZWcyLCBzaGlm
dCkgXAogICAiZHNsbCAgICAgICAgIiAjcmVnMSAiLCAgICAgICAiICNyZWcyICIsICAgICAgICIg
I3NoaWZ0ICIgICAgICAgIFxuXHQiCkBAIC02Myw3ICs2Myw3IEBACiAgICJsdyAgICAgICAgICAi
ICNyZWcgIiwgICAgICAgICIgI2JpYXMgIigiICNhZGRyICIpICAgICAgICAgICAgICAgXG5cdCIK
IAogI2RlZmluZSBNTUlfU1JMKHJlZzEsIHJlZzIsIHNoaWZ0KSBcCi0gICJzcmwgICAgICAgICAi
ICNyZWcxICIsICAgICAgICIgI3JlZzIgIiwgICAgICAgIiAjc2hpZnQgIiAgICAgICAgXG5cdCIK
KyAgInNzcmx3ICAgICAgICIgI3JlZzEgIiwgICAgICAgIiAjcmVnMiAiLCAgICAgICAiICNzaGlm
dCAiICAgICAgICBcblx0IgogCiAjZGVmaW5lIE1NSV9TTEwocmVnMSwgcmVnMiwgc2hpZnQpIFwK
ICAgInNsbCAgICAgICAgICIgI3JlZzEgIiwgICAgICAgIiAjcmVnMiAiLCAgICAgICAiICNzaGlm
dCAiICAgICAgICBcblx0IgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvZW1tc19t
bXguYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvZW1tc19tbXguYXNtCmluZGV4IDlmMzM1OTBh
Mjg1YTI4NjRmZmQzYzZhNTRmMzQwZjEzOTZjNmM3ZTAuLmIzMWIyNWViZGVkYTRmMTAwMTg4N2Zi
ZmY1ZGU1MTZkYzUxY2I2N2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2VtbXNf
bW14LmFzbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9lbW1zX21teC5hc20KQEAgLTEyLDcg
KzEyLDcgQEAKICVpbmNsdWRlICJ2cHhfcG9ydHMveDg2X2FiaV9zdXBwb3J0LmFzbSIKIAogc2Vj
dGlvbiAudGV4dAotZ2xvYmFsIHN5bSh2cHhfY2xlYXJfc3lzdGVtX3N0YXRlKSBQUklWQVRFCitn
bG9iYWxzeW0odnB4X2NsZWFyX3N5c3RlbV9zdGF0ZSkKIHN5bSh2cHhfY2xlYXJfc3lzdGVtX3N0
YXRlKToKICAgICBlbW1zCiAgICAgcmV0CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0
cy9mbG9hdF9jb250cm9sX3dvcmQuYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvZmxvYXRfY29u
dHJvbF93b3JkLmFzbQppbmRleCAyNTZkYWUwODQ0Nzk4OWQxOWJjY2Q3NzViNTZjNmRiNmQ4ZDNj
OGZjLi5iYjc1YjdhMzFmNTkwZDkyZjE0NDlkM2U0MzljYTdhZjMwNjk5YjNiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9wb3J0cy9mbG9hdF9jb250cm9sX3dvcmQuYXNtCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X3BvcnRzL2Zsb2F0X2NvbnRyb2xfd29yZC5hc20KQEAgLTE0LDcgKzE0LDcgQEAK
IHNlY3Rpb24gLnRleHQKIAogJWlmIExJQlZQWF9ZQVNNX1dJTjY0Ci1nbG9iYWwgc3ltKHZweF93
aW54NjRfZmxkY3cpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfd2lueDY0X2ZsZGN3KQogc3ltKHZw
eF93aW54NjRfZmxkY3cpOgogICAgIHN1YiAgIHJzcCwgOAogICAgIG1vdiAgIFtyc3BdLCByY3gg
OyB3aW4geDY0IHNwZWNpZmljCkBAIC0yMyw3ICsyMyw3IEBAIHN5bSh2cHhfd2lueDY0X2ZsZGN3
KToKICAgICByZXQKIAogCi1nbG9iYWwgc3ltKHZweF93aW54NjRfZnN0Y3cpIFBSSVZBVEUKK2ds
b2JhbHN5bSh2cHhfd2lueDY0X2ZzdGN3KQogc3ltKHZweF93aW54NjRfZnN0Y3cpOgogICAgIHN1
YiAgIHJzcCwgOAogICAgIGZzdGN3IFtyc3BdCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9w
b3J0cy9taXBzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9taXBzLmgKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmRj
NzUyNWY3YmU0Yzg4ZDU0YzY2MWU2ZGY4ZGE0Y2Q1NmQ4MzI5YQotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3BvcnRzL21pcHMuaApAQCAtMCwwICsxLDI3IEBACisvKgorICogIENv
cHlyaWdodCAoYykgMjAyMCBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMuIEFsbCBSaWdodHMgUmVz
ZXJ2ZWQuCisgKgorICogIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEg
QlNELXN0eWxlIGxpY2Vuc2UKKyAqICB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBm
aWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UKKyAqICB0cmVlLiBBbiBhZGRpdGlvbmFsIGlu
dGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQgY2FuIGJlIGZvdW5kCisgKiAgaW4gdGhl
IGZpbGUgUEFURU5UUy4gIEFsbCBjb250cmlidXRpbmcgcHJvamVjdCBhdXRob3JzIG1heQorICog
IGJlIGZvdW5kIGluIHRoZSBBVVRIT1JTIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZSB0
cmVlLgorICovCisKKyNpZm5kZWYgVlBYX1BPUlRTX01JUFNfSF8KKyNkZWZpbmUgVlBYX1BPUlRT
X01JUFNfSF8KKworI2lmZGVmIF9fY3BsdXNwbHVzCitleHRlcm4gIkMiIHsKKyNlbmRpZgorCisj
ZGVmaW5lIEhBU19NTUkgMHgwMQorI2RlZmluZSBIQVNfTVNBIDB4MDIKKworaW50IG1pcHNfY3B1
X2NhcHModm9pZCk7CisKKyNpZmRlZiBfX2NwbHVzcGx1cworfSAgLy8gZXh0ZXJuICJDIgorI2Vu
ZGlmCisKKyNlbmRpZiAgLy8gVlBYX1BPUlRTX01JUFNfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3BvcnRzL21pcHNfY3B1ZGV0ZWN0LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9taXBz
X2NwdWRldGVjdC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmUwZWNhMmQ0OGRlYjc0YjAzZTE2ODZmMDI1NWE3NTE4
ODNjZmRiYWEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9taXBzX2Nw
dWRldGVjdC5jCkBAIC0wLDAgKzEsNTcgQEAKKy8qCisgKiAgQ29weXJpZ2h0IChjKSAyMDIwIFRo
ZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyAqCisgKiAgVXNl
IG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZQor
ICogIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2Yg
dGhlIHNvdXJjZQorICogIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHByb3BlcnR5
IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyAqICBpbiB0aGUgZmlsZSBQQVRFTlRTLiAgQWxs
IGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisgKiAgYmUgZm91bmQgaW4gdGhlIEFV
VEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisgKi8KKyNpbmNsdWRl
IDxzdGRpby5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgIi4vdnB4X2NvbmZpZy5o
IgorI2luY2x1ZGUgInZweF9wb3J0cy9taXBzLmgiCisKKyNpZiBDT05GSUdfUlVOVElNRV9DUFVf
REVURUNUCisjaWYgZGVmaW5lZChfX21pcHNfXykgJiYgZGVmaW5lZChfX2xpbnV4X18pCitpbnQg
bWlwc19jcHVfY2Fwcyh2b2lkKSB7CisgIGNoYXIgY3B1aW5mb19saW5lWzUxMl07CisgIGludCBm
bGFnID0gMHgwOworICBGSUxFICpmID0gZm9wZW4oIi9wcm9jL2NwdWluZm8iLCAiciIpOworICBp
ZiAoIWYpIHsKKyAgICAvLyBBc3N1bWUgbm90aGluZyBpZiAvcHJvYy9jcHVpbmZvIGlzIHVuYXZh
aWxhYmxlLgorICAgIC8vIFRoaXMgd2lsbCBvY2N1ciBmb3IgQ2hyb21lIHNhbmRib3ggZm9yIFBl
cHBlciBvciBSZW5kZXIgcHJvY2Vzcy4KKyAgICByZXR1cm4gMDsKKyAgfQorICB3aGlsZSAoZmdl
dHMoY3B1aW5mb19saW5lLCBzaXplb2YoY3B1aW5mb19saW5lKSAtIDEsIGYpKSB7CisgICAgaWYg
KG1lbWNtcChjcHVpbmZvX2xpbmUsICJjcHUgbW9kZWwiLCA5KSA9PSAwKSB7CisgICAgICAvLyBX
b3JrYXJvdW5kIGVhcmx5IGtlcm5lbCB3aXRob3V0IG1taSBpbiBBU0VzIGxpbmUuCisgICAgICBp
ZiAoc3Ryc3RyKGNwdWluZm9fbGluZSwgIkxvb25nc29uLTMiKSkgeworICAgICAgICBmbGFnIHw9
IEhBU19NTUk7CisgICAgICB9IGVsc2UgaWYgKHN0cnN0cihjcHVpbmZvX2xpbmUsICJMb29uZ3Nv
bi0ySyIpKSB7CisgICAgICAgIGZsYWcgfD0gSEFTX01NSSB8IEhBU19NU0E7CisgICAgICB9Cisg
ICAgfQorICAgIGlmIChtZW1jbXAoY3B1aW5mb19saW5lLCAiQVNFcyBpbXBsZW1lbnRlZCIsIDE2
KSA9PSAwKSB7CisgICAgICBpZiAoc3Ryc3RyKGNwdWluZm9fbGluZSwgImxvb25nc29uLW1taSIp
ICYmCisgICAgICAgICAgc3Ryc3RyKGNwdWluZm9fbGluZSwgImxvb25nc29uLWV4dCIpKSB7Cisg
ICAgICAgIGZsYWcgfD0gSEFTX01NSTsKKyAgICAgIH0KKyAgICAgIGlmIChzdHJzdHIoY3B1aW5m
b19saW5lLCAibXNhIikpIHsKKyAgICAgICAgZmxhZyB8PSBIQVNfTVNBOworICAgICAgfQorICAg
ICAgLy8gQVNFcyBpcyB0aGUgbGFzdCBsaW5lLCBzbyB3ZSBjYW4gYnJlYWsgaGVyZS4KKyAgICAg
IGJyZWFrOworICAgIH0KKyAgfQorICBmY2xvc2UoZik7CisgIHJldHVybiBmbGFnOworfQorI2Vs
c2UgLyogZW5kIF9fbWlwc19fICYmIF9fbGludXhfXyAqLworI2Vycm9yIFwKKyAgICAiLS1lbmFi
bGUtcnVudGltZS1jcHUtZGV0ZWN0IHNlbGVjdGVkLCBidXQgbm8gQ1BVIGRldGVjdGlvbiBtZXRo
b2QgIiBcCisiYXZhaWxhYmxlIGZvciB5b3VyIHBsYXRmb3JtLiBSZWNvbmZpZ3VyZSB3aXRoIC0t
ZGlzYWJsZS1ydW50aW1lLWNwdS1kZXRlY3QuIgorI2VuZGlmCisjZWxzZSAvKiBlbmQgQ09ORklH
X1JVTlRJTUVfQ1BVX0RFVEVDVCAqLworaW50IG1pcHNfY3B1X2NhcHModm9pZCkgeyByZXR1cm4g
MDsgfQorI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfcG9ydHMu
bWsgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfcG9ydHMubWsKaW5kZXggMjMzMTc3MzY5M2Y0
YzE2N2EyZjhhM2IwODk1MjAzMDE5MTVhN2I5YS4uZTUwMDFiZTQ5Njc0ZGZjNjRhZjA2ZjJkZWFk
MGVkMjIzZjI3MjZhZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X3BvcnRz
Lm1rCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3ZweF9wb3J0cy5tawpAQCAtNDIsNiArNDIs
OSBAQCBQT1JUU19TUkNTLSQoVlBYX0FSQ0hfQVJNKSArPSBhcm0uaAogUE9SVFNfU1JDUy0kKFZQ
WF9BUkNIX1BQQykgKz0gcHBjX2NwdWRldGVjdC5jCiBQT1JUU19TUkNTLSQoVlBYX0FSQ0hfUFBD
KSArPSBwcGMuaAogCitQT1JUU19TUkNTLSQoVlBYX0FSQ0hfTUlQUykgKz0gbWlwc19jcHVkZXRl
Y3QuYworUE9SVFNfU1JDUy0kKFZQWF9BUkNIX01JUFMpICs9IG1pcHMuaAorCiBpZmVxICgkKFZQ
WF9BUkNIX01JUFMpLCB5ZXMpCiBQT1JUU19TUkNTLXllcyArPSBhc21kZWZzX21taS5oCiBlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMveDg2X2FiaV9zdXBwb3J0LmFzbSBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3BvcnRzL3g4Nl9hYmlfc3VwcG9ydC5hc20KaW5kZXggNzA4ZmExMDFj
NWRkMTYxYmU0YjUwMDliYTZjNzRhZGNmMTA3MGM4MC4uNmIyZDZiOTY4NDZlZjU4ZDY0MjVlYzRj
NmYzZTkxYzZkMThlYzI1NCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMveDg2X2Fi
aV9zdXBwb3J0LmFzbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy94ODZfYWJpX3N1cHBvcnQu
YXNtCkBAIC04OSw0OSArODksNzAgQEAKICVkZWZpbmUgTElCVlBYX1lBU01fV0lONjQgMAogJWVu
ZGlmCiAKKzsgRGVjbGFyZSBncm91cHMgb2YgcGxhdGZvcm1zCislaWZpZG4gICBfX09VVFBVVF9G
T1JNQVRfXyxlbGYzMgorICAlZGVmaW5lIExJQlZQWF9FTEYgMQorJWVsaWZpZG4gICBfX09VVFBV
VF9GT1JNQVRfXyxlbGZ4MzIKKyAgJWRlZmluZSBMSUJWUFhfRUxGIDEKKyVlbGlmaWRuICAgX19P
VVRQVVRfRk9STUFUX18sZWxmNjQKKyAgJWRlZmluZSBMSUJWUFhfRUxGIDEKKyVlbHNlCisgICVk
ZWZpbmUgTElCVlBYX0VMRiAwCislZW5kaWYKKworJWlmaWRuIF9fT1VUUFVUX0ZPUk1BVF9fLG1h
Y2hvMzIKKyAgJWRlZmluZSBMSUJWUFhfTUFDSE8gMQorJWVsaWZpZG4gX19PVVRQVVRfRk9STUFU
X18sbWFjaG82NAorICAlZGVmaW5lIExJQlZQWF9NQUNITyAxCislZWxzZQorICAlZGVmaW5lIExJ
QlZQWF9NQUNITyAwCislZW5kaWYKKwogOyBzeW0oKQogOyBSZXR1cm4gdGhlIHByb3BlciBzeW1i
b2wgbmFtZSBmb3IgdGhlIHRhcmdldCBBQkkuCiA7CiA7IENlcnRhaW4gQUJJcywgbm90YWJseSBN
UyBDT0ZGIGFuZCBEYXJ3aW4gTUFDSC1PLCByZXF1aXJlIHRoYXQgc3ltYm9scwogOyB3aXRoIEMg
bGlua2FnZSBiZSBwcmVmaXhlZCB3aXRoIGFuIHVuZGVyc2NvcmUuCiA7Ci0laWZpZG4gICBfX09V
VFBVVF9GT1JNQVRfXyxlbGYzMgotJWRlZmluZSBzeW0oeCkgeAotJWVsaWZpZG4gX19PVVRQVVRf
Rk9STUFUX18sZWxmNjQKLSVkZWZpbmUgc3ltKHgpIHgKLSVlbGlmaWRuIF9fT1VUUFVUX0ZPUk1B
VF9fLGVsZngzMgotJWRlZmluZSBzeW0oeCkgeAotJWVsaWYgTElCVlBYX1lBU01fV0lONjQKLSVk
ZWZpbmUgc3ltKHgpIHgKKyVpZiBMSUJWUFhfRUxGIHx8IExJQlZQWF9ZQVNNX1dJTjY0CisgICVk
ZWZpbmUgc3ltKHgpIHgKICVlbHNlCi0lZGVmaW5lIHN5bSh4KSBfICUrIHgKKyAgOyBNYWNoLU8g
LyBDT0ZGCisgICVkZWZpbmUgc3ltKHgpIF8gJSsgeAogJWVuZGlmCiAKLTsgIFBSSVZBVEUKLTsg
IE1hY3JvIGZvciB0aGUgYXR0cmlidXRlIHRvIGhpZGUgYSBnbG9iYWwgc3ltYm9sIGZvciB0aGUg
dGFyZ2V0IEFCSS4KLTsgIFRoaXMgaXMgb25seSBhY3RpdmUgaWYgQ0hST01JVU0gaXMgZGVmaW5l
ZC4KKzsgZ2xvYmFsc3ltKCkKKzsgUmV0dXJuIGEgZ2xvYmFsIGRlY2xhcmF0aW9uIHdpdGggdGhl
IHByb3BlciBkZWNvcmF0aW9uIGZvciB0aGUgdGFyZ2V0IEFCSS4KIDsKLTsgIENocm9taXVtIGRv
ZXNuJ3QgbGlrZSBleHBvcnRlZCBnbG9iYWwgc3ltYm9scyBkdWUgdG8gc3ltYm9sIGNsYXNoaW5n
IHdpdGgKLTsgIHBsdWdpbnMgYW1vbmcgb3RoZXIgdGhpbmdzLgorOyBXaGVuIENIUk9NSVVNIGlz
IGRlZmluZWQsIGluY2x1ZGUgYXR0cmlidXRlcyB0byBoaWRlIHRoZSBzeW1ib2wgZnJvbSB0aGUK
KzsgZ2xvYmFsIG5hbWVzcGFjZS4KIDsKLTsgIFJlcXVpcmVzIENocm9taXVtJ3MgcGF0Y2hlZCBj
b3B5IG9mIHlhc206Ci07ICAgIGh0dHA6Ly9zcmMuY2hyb21pdW0ub3JnL3ZpZXd2Yy9jaHJvbWU/
dmlldz1yZXYmcmV2aXNpb249NzM3NjEKLTsgICAgaHR0cDovL3d3dy50b3J0YWxsLm5ldC9wcm9q
ZWN0cy95YXNtL3RpY2tldC8yMzYKKzsgQ2hyb21pdW0gZG9lc24ndCBsaWtlIGV4cG9ydGVkIGds
b2JhbCBzeW1ib2xzIGR1ZSB0byBzeW1ib2wgY2xhc2hpbmcgd2l0aAorOyBwbHVnaW5zIGFtb25n
IG90aGVyIHRoaW5ncy4KKzsKKzsgUmVxdWlyZXMgQ2hyb21pdW0ncyBwYXRjaGVkIGNvcHkgb2Yg
eWFzbToKKzsgICBodHRwOi8vc3JjLmNocm9taXVtLm9yZy92aWV3dmMvY2hyb21lP3ZpZXc9cmV2
JnJldmlzaW9uPTczNzYxCis7ICAgaHR0cDovL3d3dy50b3J0YWxsLm5ldC9wcm9qZWN0cy95YXNt
L3RpY2tldC8yMzYKKzsgb3IgbmFzbSA+IDIuMTQuCiA7CiAlaWZkZWYgQ0hST01JVU0KLSAgJWlm
aWRuICAgX19PVVRQVVRfRk9STUFUX18sZWxmMzIKLSAgICAlZGVmaW5lIFBSSVZBVEUgOmhpZGRl
bgotICAlZWxpZmlkbiBfX09VVFBVVF9GT1JNQVRfXyxlbGY2NAotICAgICVkZWZpbmUgUFJJVkFU
RSA6aGlkZGVuCi0gICVlbGlmaWRuIF9fT1VUUFVUX0ZPUk1BVF9fLGVsZngzMgotICAgICVkZWZp
bmUgUFJJVkFURSA6aGlkZGVuCi0gICVlbGlmIExJQlZQWF9ZQVNNX1dJTjY0Ci0gICAgJWRlZmlu
ZSBQUklWQVRFCisgICVpZmRlZiBfX05BU01fVkVSX18KKyAgICAlaWYgX19OQVNNX1ZFUlNJT05f
SURfXyA8IDB4MDIwZTAwMDAgOyAyLjE0CisgICAgICA7IG5hc20gPCAyLjE0IGRvZXMgbm90IHN1
cHBvcnQgOnByaXZhdGVfZXh0ZXJuIGRpcmVjdGl2ZQorICAgICAgJWZhdGFsIE11c3QgdXNlIG5h
c20gMi4xNCBvciBuZXdlcgorICAgICVlbmRpZgorICAlZW5kaWYKKworICAlaWYgTElCVlBYX0VM
RgorICAgICVkZWZpbmUgZ2xvYmFsc3ltKHgpIGdsb2JhbCBzeW0oeCkgJSsgOmZ1bmN0aW9uIGhp
ZGRlbgorICAlZWxpZiBMSUJWUFhfTUFDSE8KKyAgICAlZGVmaW5lIGdsb2JhbHN5bSh4KSBnbG9i
YWwgc3ltKHgpICUrIDpwcml2YXRlX2V4dGVybgogICAlZWxzZQotICAgICVkZWZpbmUgUFJJVkFU
RSA6cHJpdmF0ZV9leHRlcm4KKyAgICA7IENPRkYgLyBQRTMyKworICAgICVkZWZpbmUgZ2xvYmFs
c3ltKHgpIGdsb2JhbCBzeW0oeCkKICAgJWVuZGlmCiAlZWxzZQotICAlZGVmaW5lIFBSSVZBVEUK
KyAgJWRlZmluZSBnbG9iYWxzeW0oeCkgZ2xvYmFsIHN5bSh4KQogJWVuZGlmCiAKIDsgYXJnKCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4ZW5jLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweGVuYy5jCmlu
ZGV4IDUwYzM2YmVkZDU0MTA1NzNlMTdkZmQ2ZmZlOTE1NDBmNWFlYjE3NDcuLjUwNDJlNjg4Yzk2
MDE3YTJhZDZkMzFlMzE3ZGZiOGY3OTNjN2FhMTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
ZW5jLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhlbmMuYwpAQCAtOTUsNiArOTUsOCBAQCBzdGF0aWMg
Y29uc3QgYXJnX2RlZl90IGRlYnVnbW9kZSA9CiAgICAgQVJHX0RFRigiRCIsICJkZWJ1ZyIsIDAs
ICJEZWJ1ZyBtb2RlIChtYWtlcyBvdXRwdXQgZGV0ZXJtaW5pc3RpYykiKTsKIHN0YXRpYyBjb25z
dCBhcmdfZGVmX3Qgb3V0cHV0ZmlsZSA9CiAgICAgQVJHX0RFRigibyIsICJvdXRwdXQiLCAxLCAi
T3V0cHV0IGZpbGVuYW1lIik7CitzdGF0aWMgY29uc3QgYXJnX2RlZl90IHVzZV9udjEyID0KKyAg
ICBBUkdfREVGKE5VTEwsICJudjEyIiwgMCwgIklucHV0IGZpbGUgaXMgTlYxMiAiKTsKIHN0YXRp
YyBjb25zdCBhcmdfZGVmX3QgdXNlX3l2MTIgPQogICAgIEFSR19ERUYoTlVMTCwgInl2MTIiLCAw
LCAiSW5wdXQgZmlsZSBpcyBZVjEyICIpOwogc3RhdGljIGNvbnN0IGFyZ19kZWZfdCB1c2VfaTQy
MCA9CkBAIC0yMjAsNyArMjIyLDggQEAgc3RhdGljIGNvbnN0IGFyZ19kZWZfdCBlcnJvcl9yZXNp
bGllbnQgPQogc3RhdGljIGNvbnN0IGFyZ19kZWZfdCBsYWdfaW5fZnJhbWVzID0KICAgICBBUkdf
REVGKE5VTEwsICJsYWctaW4tZnJhbWVzIiwgMSwgIk1heCBudW1iZXIgb2YgZnJhbWVzIHRvIGxh
ZyIpOwogCi1zdGF0aWMgY29uc3QgYXJnX2RlZl90ICpnbG9iYWxfYXJnc1tdID0geyAmdXNlX3l2
MTIsCitzdGF0aWMgY29uc3QgYXJnX2RlZl90ICpnbG9iYWxfYXJnc1tdID0geyAmdXNlX252MTIs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdXNlX3l2MTIsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdXNlX2k0MjAsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdXNlX2k0MjIsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdXNlX2k0NDQsCkBAIC00NjIsNiAr
NDY1LDEzIEBAIHN0YXRpYyBjb25zdCBhcmdfZGVmX3QgdGFyZ2V0X2xldmVsID0gQVJHX0RFRigK
IHN0YXRpYyBjb25zdCBhcmdfZGVmX3Qgcm93X210ID0KICAgICBBUkdfREVGKE5VTEwsICJyb3ct
bXQiLCAxLAogICAgICAgICAgICAgIkVuYWJsZSByb3cgYmFzZWQgbm9uLWRldGVybWluaXN0aWMg
bXVsdGktdGhyZWFkaW5nIGluIFZQOSIpOworCitzdGF0aWMgY29uc3QgYXJnX2RlZl90IGRpc2Fi
bGVfbG9vcGZpbHRlciA9CisgICAgQVJHX0RFRihOVUxMLCAiZGlzYWJsZS1sb29wZmlsdGVyIiwg
MSwKKyAgICAgICAgICAgICJDb250cm9sIExvb3BmaWx0ZXIgaW4gVlA5XG4iCisgICAgICAgICAg
ICAiMDogTG9vcGZpbHRlciBvbiBmb3IgYWxsIGZyYW1lcyAoZGVmYXVsdClcbiIKKyAgICAgICAg
ICAgICIxOiBMb29wZmlsdGVyIG9mZiBmb3Igbm9uIHJlZmVyZW5jZSBmcmFtZXNcbiIKKyAgICAg
ICAgICAgICIyOiBMb29wZmlsdGVyIG9mZiBmb3IgYWxsIGZyYW1lcyIpOwogI2VuZGlmCiAKICNp
ZiBDT05GSUdfVlA5X0VOQ09ERVIKQEAgLTQ5Miw2ICs1MDIsMTAgQEAgc3RhdGljIGNvbnN0IGFy
Z19kZWZfdCAqdnA5X2FyZ3NbXSA9IHsgJmNwdV91c2VkX3ZwOSwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICZtYXhfZ2ZfaW50ZXJ2YWwsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAmdGFyZ2V0X2xldmVsLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgJnJvd19tdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICZkaXNhYmxlX2xvb3BmaWx0ZXIsCisvLyBOT1RFOiBUaGUgZW50cmllcyBh
Ym92ZSBoYXZlIGEgY29ycmVzcG9uZGluZyBlbnRyeSBpbiB2cDlfYXJnX2N0cmxfbWFwLiBUaGUK
Ky8vIGVudHJpZXMgYmVsb3cgZG8gbm90IGhhdmUgYSBjb3JyZXNwb25kaW5nIGVudHJ5IGluIHZw
OV9hcmdfY3RybF9tYXAuIFRoZXkKKy8vIG11c3QgYmUgbGlzdGVkIGF0IHRoZSBlbmQgb2YgdnA5
X2FyZ3MuCiAjaWYgQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICZiaXRkZXB0aGFyZywKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICZpbmJpdGRlcHRoYXJnLApAQCAtNTI0LDYgKzUzOCw3IEBAIHN0YXRp
YyBjb25zdCBpbnQgdnA5X2FyZ19jdHJsX21hcFtdID0geyBWUDhFX1NFVF9DUFVVU0VELAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQOUVfU0VUX01BWF9HRl9JTlRF
UlZBTCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWUDlFX1NFVF9U
QVJHRVRfTEVWRUwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVlA5
RV9TRVRfUk9XX01ULAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQ
OUVfU0VUX0RJU0FCTEVfTE9PUEZJTFRFUiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAwIH07CiAjZW5kaWYKIApAQCAtNjk2LDYgKzcxMSw4IEBAIHN0YXRpYyB2b2lk
IHBhcnNlX2dsb2JhbF9jb25maWcoc3RydWN0IFZweEVuY29kZXJDb25maWcgKmdsb2JhbCwgY2hh
ciAqKmFyZ3YpIHsKICAgICAgIGdsb2JhbC0+ZGVhZGxpbmUgPSBWUFhfRExfUkVBTFRJTUU7CiAg
ICAgZWxzZSBpZiAoYXJnX21hdGNoKCZhcmcsICZ1c2VfeXYxMiwgYXJnaSkpCiAgICAgICBnbG9i
YWwtPmNvbG9yX3R5cGUgPSBZVjEyOworICAgIGVsc2UgaWYgKGFyZ19tYXRjaCgmYXJnLCAmdXNl
X252MTIsIGFyZ2kpKQorICAgICAgZ2xvYmFsLT5jb2xvcl90eXBlID0gTlYxMjsKICAgICBlbHNl
IGlmIChhcmdfbWF0Y2goJmFyZywgJnVzZV9pNDIwLCBhcmdpKSkKICAgICAgIGdsb2JhbC0+Y29s
b3JfdHlwZSA9IEk0MjA7CiAgICAgZWxzZSBpZiAoYXJnX21hdGNoKCZhcmcsICZ1c2VfaTQyMiwg
YXJnaSkpCkBAIC0xNjE5LDYgKzE2MzYsNyBAQCBpbnQgbWFpbihpbnQgYXJnYywgY29uc3QgY2hh
ciAqKmFyZ3ZfKSB7CiAgIGludCByZXMgPSAwOwogCiAgIG1lbXNldCgmaW5wdXQsIDAsIHNpemVv
ZihpbnB1dCkpOworICBtZW1zZXQoJnJhdywgMCwgc2l6ZW9mKHJhdykpOwogICBleGVjX25hbWUg
PSBhcmd2X1swXTsKIAogICAvKiBTZXR1cCBkZWZhdWx0IGlucHV0IHN0cmVhbSBzZXR0aW5ncyAq
LwpAQCAtMTY0Miw2ICsxNjYwLDcgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiph
cmd2XykgewogICAgIGNhc2UgSTQ0NDogaW5wdXQuZm10ID0gVlBYX0lNR19GTVRfSTQ0NDsgYnJl
YWs7CiAgICAgY2FzZSBJNDQwOiBpbnB1dC5mbXQgPSBWUFhfSU1HX0ZNVF9JNDQwOyBicmVhazsK
ICAgICBjYXNlIFlWMTI6IGlucHV0LmZtdCA9IFZQWF9JTUdfRk1UX1lWMTI7IGJyZWFrOworICAg
IGNhc2UgTlYxMjogaW5wdXQuZm10ID0gVlBYX0lNR19GTVRfTlYxMjsgYnJlYWs7CiAgIH0KIAog
ICB7CkBAIC0xNzYzLDE0ICsxNzgyLDEwIEBAIGludCBtYWluKGludCBhcmdjLCBjb25zdCBjaGFy
ICoqYXJndl8pIHsKICAgICAgIEZPUkVBQ0hfU1RSRUFNKHNob3dfc3RyZWFtX2NvbmZpZyhzdHJl
YW0sICZnbG9iYWwsICZpbnB1dCkpOwogCiAgICAgaWYgKHBhc3MgPT0gKGdsb2JhbC5wYXNzID8g
Z2xvYmFsLnBhc3MgLSAxIDogMCkpIHsKLSAgICAgIGlmIChpbnB1dC5maWxlX3R5cGUgPT0gRklM
RV9UWVBFX1k0TSkKLSAgICAgICAgLypUaGUgWTRNIHJlYWRlciBkb2VzIGl0cyBvd24gYWxsb2Nh
dGlvbi4KLSAgICAgICAgICBKdXN0IGluaXRpYWxpemUgdGhpcyBoZXJlIHRvIGF2b2lkIHByb2Js
ZW1zIGlmIHdlIG5ldmVyIHJlYWQgYW55Ci0gICAgICAgICAgIGZyYW1lcy4qLwotICAgICAgICBt
ZW1zZXQoJnJhdywgMCwgc2l6ZW9mKHJhdykpOwotICAgICAgZWxzZQorICAgICAgLy8gVGhlIFk0
TSByZWFkZXIgZG9lcyBpdHMgb3duIGFsbG9jYXRpb24uCisgICAgICBpZiAoaW5wdXQuZmlsZV90
eXBlICE9IEZJTEVfVFlQRV9ZNE0pIHsKICAgICAgICAgdnB4X2ltZ19hbGxvYygmcmF3LCBpbnB1
dC5mbXQsIGlucHV0LndpZHRoLCBpbnB1dC5oZWlnaHQsIDMyKTsKLQorICAgICAgfQogICAgICAg
Rk9SRUFDSF9TVFJFQU0oc3RyZWFtLT5yYXRlX2hpc3QgPSBpbml0X3JhdGVfaGlzdG9ncmFtKAog
ICAgICAgICAgICAgICAgICAgICAgICAgICZzdHJlYW0tPmNvbmZpZy5jZmcsICZnbG9iYWwuZnJh
bWVyYXRlKSk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhlbmMuaCBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4ZW5jLmgKaW5kZXggYjc4MGFlZGNhNjk5ZmFhN2RkYTdlZmRhY2VmMzcwNzVmMTZi
MmU0Ni4uYmU1NDg0MGY3ZGQyNjZkMDFlNDliZDFhYWI5MmEyZDUzYjcyYzcxYiAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhlbmMuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweGVuYy5oCkBAIC0yOCw2
ICsyOCw3IEBAIHR5cGVkZWYgZW51bSB7CiAgIEk0NDQsICAvLyA0OjQ6NCA4KyBiaXQtZGVwdGgK
ICAgSTQ0MCwgIC8vIDQ6NDowIDgrIGJpdC1kZXB0aAogICBZVjEyLCAgLy8gNDoyOjAgd2l0aCB1
diBmbGlwcGVkLCBvbmx5IDgtYml0IGRlcHRoCisgIE5WMTIsICAvLyA0OjI6MCB3aXRoIHV2IGlu
dGVybGVhdmVkCiB9IENvbG9ySW5wdXRUeXBlOwogCiBzdHJ1Y3QgVnB4SW50ZXJmYWNlOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC93ZWJtZGVjLmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC93ZWJtZGVjLmNjCmlu
ZGV4IGQ2MDkwNzVhOTMyNmJkYmNjMzJjZmE0ZjI3NWI4MmEyNGRkZWIxYmIuLjY4YzZmNDc4MmQ3
ZDllYzE5NTQwZDBhMmYzMDQ0NmZkOGE1MmEwOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvd2Vi
bWRlYy5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3dlYm1kZWMuY2MKQEAgLTE5LDI1ICsxOSwyNSBAQAog
bmFtZXNwYWNlIHsKIAogdm9pZCByZXNldChzdHJ1Y3QgV2VibUlucHV0Q29udGV4dCAqY29uc3Qg
d2VibV9jdHgpIHsKLSAgaWYgKHdlYm1fY3R4LT5yZWFkZXIgIT0gTlVMTCkgeworICBpZiAod2Vi
bV9jdHgtPnJlYWRlciAhPSBudWxscHRyKSB7CiAgICAgbWt2cGFyc2VyOjpNa3ZSZWFkZXIgKmNv
bnN0IHJlYWRlciA9CiAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8bWt2cGFyc2VyOjpNa3ZSZWFk
ZXIgKj4od2VibV9jdHgtPnJlYWRlcik7CiAgICAgZGVsZXRlIHJlYWRlcjsKICAgfQotICBpZiAo
d2VibV9jdHgtPnNlZ21lbnQgIT0gTlVMTCkgeworICBpZiAod2VibV9jdHgtPnNlZ21lbnQgIT0g
bnVsbHB0cikgewogICAgIG1rdnBhcnNlcjo6U2VnbWVudCAqY29uc3Qgc2VnbWVudCA9CiAgICAg
ICAgIHJlaW50ZXJwcmV0X2Nhc3Q8bWt2cGFyc2VyOjpTZWdtZW50ICo+KHdlYm1fY3R4LT5zZWdt
ZW50KTsKICAgICBkZWxldGUgc2VnbWVudDsKICAgfQotICBpZiAod2VibV9jdHgtPmJ1ZmZlciAh
PSBOVUxMKSB7CisgIGlmICh3ZWJtX2N0eC0+YnVmZmVyICE9IG51bGxwdHIpIHsKICAgICBkZWxl
dGVbXSB3ZWJtX2N0eC0+YnVmZmVyOwogICB9Ci0gIHdlYm1fY3R4LT5yZWFkZXIgPSBOVUxMOwot
ICB3ZWJtX2N0eC0+c2VnbWVudCA9IE5VTEw7Ci0gIHdlYm1fY3R4LT5idWZmZXIgPSBOVUxMOwot
ICB3ZWJtX2N0eC0+Y2x1c3RlciA9IE5VTEw7Ci0gIHdlYm1fY3R4LT5ibG9ja19lbnRyeSA9IE5V
TEw7Ci0gIHdlYm1fY3R4LT5ibG9jayA9IE5VTEw7CisgIHdlYm1fY3R4LT5yZWFkZXIgPSBudWxs
cHRyOworICB3ZWJtX2N0eC0+c2VnbWVudCA9IG51bGxwdHI7CisgIHdlYm1fY3R4LT5idWZmZXIg
PSBudWxscHRyOworICB3ZWJtX2N0eC0+Y2x1c3RlciA9IG51bGxwdHI7CisgIHdlYm1fY3R4LT5i
bG9ja19lbnRyeSA9IG51bGxwdHI7CisgIHdlYm1fY3R4LT5ibG9jayA9IG51bGxwdHI7CiAgIHdl
Ym1fY3R4LT5ibG9ja19mcmFtZV9pbmRleCA9IDA7CiAgIHdlYm1fY3R4LT52aWRlb190cmFja19p
bmRleCA9IDA7CiAgIHdlYm1fY3R4LT50aW1lc3RhbXBfbnMgPSAwOwpAQCAtODQsNyArODQsNyBA
QCBpbnQgZmlsZV9pc193ZWJtKHN0cnVjdCBXZWJtSW5wdXRDb250ZXh0ICp3ZWJtX2N0eCwKICAg
fQogCiAgIGNvbnN0IG1rdnBhcnNlcjo6VHJhY2tzICpjb25zdCB0cmFja3MgPSBzZWdtZW50LT5H
ZXRUcmFja3MoKTsKLSAgY29uc3QgbWt2cGFyc2VyOjpWaWRlb1RyYWNrICp2aWRlb190cmFjayA9
IE5VTEw7CisgIGNvbnN0IG1rdnBhcnNlcjo6VmlkZW9UcmFjayAqdmlkZW9fdHJhY2sgPSBudWxs
cHRyOwogICBmb3IgKHVuc2lnbmVkIGxvbmcgaSA9IDA7IGkgPCB0cmFja3MtPkdldFRyYWNrc0Nv
dW50KCk7ICsraSkgewogICAgIGNvbnN0IG1rdnBhcnNlcjo6VHJhY2sgKmNvbnN0IHRyYWNrID0g
dHJhY2tzLT5HZXRUcmFja0J5SW5kZXgoaSk7CiAgICAgaWYgKHRyYWNrLT5HZXRUeXBlKCkgPT0g
bWt2cGFyc2VyOjpUcmFjazo6a1ZpZGVvKSB7CkBAIC05NCw3ICs5NCw3IEBAIGludCBmaWxlX2lz
X3dlYm0oc3RydWN0IFdlYm1JbnB1dENvbnRleHQgKndlYm1fY3R4LAogICAgIH0KICAgfQogCi0g
IGlmICh2aWRlb190cmFjayA9PSBOVUxMIHx8IHZpZGVvX3RyYWNrLT5HZXRDb2RlY0lkKCkgPT0g
TlVMTCkgeworICBpZiAodmlkZW9fdHJhY2sgPT0gbnVsbHB0ciB8fCB2aWRlb190cmFjay0+R2V0
Q29kZWNJZCgpID09IG51bGxwdHIpIHsKICAgICByZXdpbmRfYW5kX3Jlc2V0KHdlYm1fY3R4LCB2
cHhfY3R4KTsKICAgICByZXR1cm4gMDsKICAgfQpAQCAtMTM3LDEyICsxMzcsMTIgQEAgaW50IHdl
Ym1fcmVhZF9mcmFtZShzdHJ1Y3QgV2VibUlucHV0Q29udGV4dCAqd2VibV9jdHgsIHVpbnQ4X3Qg
KipidWZmZXIsCiAgIGRvIHsKICAgICBsb25nIHN0YXR1cyA9IDA7CiAgICAgYm9vbCBnZXRfbmV3
X2Jsb2NrID0gZmFsc2U7Ci0gICAgaWYgKGJsb2NrX2VudHJ5ID09IE5VTEwgJiYgIWJsb2NrX2Vu
dHJ5X2VvcykgeworICAgIGlmIChibG9ja19lbnRyeSA9PSBudWxscHRyICYmICFibG9ja19lbnRy
eV9lb3MpIHsKICAgICAgIHN0YXR1cyA9IGNsdXN0ZXItPkdldEZpcnN0KGJsb2NrX2VudHJ5KTsK
ICAgICAgIGdldF9uZXdfYmxvY2sgPSB0cnVlOwogICAgIH0gZWxzZSBpZiAoYmxvY2tfZW50cnlf
ZW9zIHx8IGJsb2NrX2VudHJ5LT5FT1MoKSkgewogICAgICAgY2x1c3RlciA9IHNlZ21lbnQtPkdl
dE5leHQoY2x1c3Rlcik7Ci0gICAgICBpZiAoY2x1c3RlciA9PSBOVUxMIHx8IGNsdXN0ZXItPkVP
UygpKSB7CisgICAgICBpZiAoY2x1c3RlciA9PSBudWxscHRyIHx8IGNsdXN0ZXItPkVPUygpKSB7
CiAgICAgICAgICpidWZmZXJfc2l6ZSA9IDA7CiAgICAgICAgIHdlYm1fY3R4LT5yZWFjaGVkX2Vv
cyA9IDE7CiAgICAgICAgIHJldHVybiAxOwpAQCAtMTUwLDIyICsxNTAsMjIgQEAgaW50IHdlYm1f
cmVhZF9mcmFtZShzdHJ1Y3QgV2VibUlucHV0Q29udGV4dCAqd2VibV9jdHgsIHVpbnQ4X3QgKipi
dWZmZXIsCiAgICAgICBzdGF0dXMgPSBjbHVzdGVyLT5HZXRGaXJzdChibG9ja19lbnRyeSk7CiAg
ICAgICBibG9ja19lbnRyeV9lb3MgPSBmYWxzZTsKICAgICAgIGdldF9uZXdfYmxvY2sgPSB0cnVl
OwotICAgIH0gZWxzZSBpZiAoYmxvY2sgPT0gTlVMTCB8fAorICAgIH0gZWxzZSBpZiAoYmxvY2sg
PT0gbnVsbHB0ciB8fAogICAgICAgICAgICAgICAgd2VibV9jdHgtPmJsb2NrX2ZyYW1lX2luZGV4
ID09IGJsb2NrLT5HZXRGcmFtZUNvdW50KCkgfHwKICAgICAgICAgICAgICAgIGJsb2NrLT5HZXRU
cmFja051bWJlcigpICE9IHdlYm1fY3R4LT52aWRlb190cmFja19pbmRleCkgewogICAgICAgc3Rh
dHVzID0gY2x1c3Rlci0+R2V0TmV4dChibG9ja19lbnRyeSwgYmxvY2tfZW50cnkpOwotICAgICAg
aWYgKGJsb2NrX2VudHJ5ID09IE5VTEwgfHwgYmxvY2tfZW50cnktPkVPUygpKSB7CisgICAgICBp
ZiAoYmxvY2tfZW50cnkgPT0gbnVsbHB0ciB8fCBibG9ja19lbnRyeS0+RU9TKCkpIHsKICAgICAg
ICAgYmxvY2tfZW50cnlfZW9zID0gdHJ1ZTsKICAgICAgICAgY29udGludWU7CiAgICAgICB9CiAg
ICAgICBnZXRfbmV3X2Jsb2NrID0gdHJ1ZTsKICAgICB9Ci0gICAgaWYgKHN0YXR1cyB8fCBibG9j
a19lbnRyeSA9PSBOVUxMKSB7CisgICAgaWYgKHN0YXR1cyB8fCBibG9ja19lbnRyeSA9PSBudWxs
cHRyKSB7CiAgICAgICByZXR1cm4gLTE7CiAgICAgfQogICAgIGlmIChnZXRfbmV3X2Jsb2NrKSB7
CiAgICAgICBibG9jayA9IGJsb2NrX2VudHJ5LT5HZXRCbG9jaygpOwotICAgICAgaWYgKGJsb2Nr
ID09IE5VTEwpIHJldHVybiAtMTsKKyAgICAgIGlmIChibG9jayA9PSBudWxscHRyKSByZXR1cm4g
LTE7CiAgICAgICB3ZWJtX2N0eC0+YmxvY2tfZnJhbWVfaW5kZXggPSAwOwogICAgIH0KICAgfSB3
aGlsZSAoYmxvY2tfZW50cnlfZW9zIHx8CkBAIC0xODEsNyArMTgxLDcgQEAgaW50IHdlYm1fcmVh
ZF9mcmFtZShzdHJ1Y3QgV2VibUlucHV0Q29udGV4dCAqd2VibV9jdHgsIHVpbnQ4X3QgKipidWZm
ZXIsCiAgIGlmIChmcmFtZS5sZW4gPiBzdGF0aWNfY2FzdDxsb25nPigqYnVmZmVyX3NpemUpKSB7
CiAgICAgZGVsZXRlW10gKiBidWZmZXI7CiAgICAgKmJ1ZmZlciA9IG5ldyB1aW50OF90W2ZyYW1l
Lmxlbl07Ci0gICAgaWYgKCpidWZmZXIgPT0gTlVMTCkgeworICAgIGlmICgqYnVmZmVyID09IG51
bGxwdHIpIHsKICAgICAgIHJldHVybiAtMTsKICAgICB9CiAgICAgd2VibV9jdHgtPmJ1ZmZlciA9
ICpidWZmZXI7CkBAIC0xOTgsNyArMTk4LDcgQEAgaW50IHdlYm1fcmVhZF9mcmFtZShzdHJ1Y3Qg
V2VibUlucHV0Q29udGV4dCAqd2VibV9jdHgsIHVpbnQ4X3QgKipidWZmZXIsCiBpbnQgd2VibV9n
dWVzc19mcmFtZXJhdGUoc3RydWN0IFdlYm1JbnB1dENvbnRleHQgKndlYm1fY3R4LAogICAgICAg
ICAgICAgICAgICAgICAgICAgIHN0cnVjdCBWcHhJbnB1dENvbnRleHQgKnZweF9jdHgpIHsKICAg
dWludDMyX3QgaSA9IDA7Ci0gIHVpbnQ4X3QgKmJ1ZmZlciA9IE5VTEw7CisgIHVpbnQ4X3QgKmJ1
ZmZlciA9IG51bGxwdHI7CiAgIHNpemVfdCBidWZmZXJfc2l6ZSA9IDA7CiAgIHdoaWxlICh3ZWJt
X2N0eC0+dGltZXN0YW1wX25zIDwgMTAwMDAwMDAwMCAmJiBpIDwgNTApIHsKICAgICBpZiAod2Vi
bV9yZWFkX2ZyYW1lKHdlYm1fY3R4LCAmYnVmZmVyLCAmYnVmZmVyX3NpemUpKSB7CkBAIC0yMTIs
OCArMjEyLDggQEAgaW50IHdlYm1fZ3Vlc3NfZnJhbWVyYXRlKHN0cnVjdCBXZWJtSW5wdXRDb250
ZXh0ICp3ZWJtX2N0eCwKICAgZGVsZXRlW10gYnVmZmVyOwogCiAgIGdldF9maXJzdF9jbHVzdGVy
KHdlYm1fY3R4KTsKLSAgd2VibV9jdHgtPmJsb2NrID0gTlVMTDsKLSAgd2VibV9jdHgtPmJsb2Nr
X2VudHJ5ID0gTlVMTDsKKyAgd2VibV9jdHgtPmJsb2NrID0gbnVsbHB0cjsKKyAgd2VibV9jdHgt
PmJsb2NrX2VudHJ5ID0gbnVsbHB0cjsKICAgd2VibV9jdHgtPmJsb2NrX2ZyYW1lX2luZGV4ID0g
MDsKICAgd2VibV9jdHgtPnRpbWVzdGFtcF9ucyA9IDA7CiAgIHdlYm1fY3R4LT5yZWFjaGVkX2Vv
cyA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3dlYm1lbmMuY2MgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3dl
Ym1lbmMuY2MKaW5kZXggNjY2MDY2NzRiMDAxZDM4M2EwMGFhYWQyYjM2ODc1MTRlODU1NzIwNy4u
YzcxOGFiNWE5ZmIwNWQzMmU0Nzk5MWMwOGU4YmYzOTU4ZTFlMzMwYiAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC93ZWJtZW5jLmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvd2VibWVuYy5jYwpAQCAtOTAsNiAr
OTAsNiBAQCB2b2lkIHdyaXRlX3dlYm1fZmlsZV9mb290ZXIoc3RydWN0IFdlYm1PdXRwdXRDb250
ZXh0ICp3ZWJtX2N0eCkgewogICBzZWdtZW50LT5GaW5hbGl6ZSgpOwogICBkZWxldGUgc2VnbWVu
dDsKICAgZGVsZXRlIHdyaXRlcjsKLSAgd2VibV9jdHgtPndyaXRlciA9IE5VTEw7Ci0gIHdlYm1f
Y3R4LT5zZWdtZW50ID0gTlVMTDsKKyAgd2VibV9jdHgtPndyaXRlciA9IG51bGxwdHI7CisgIHdl
Ym1fY3R4LT5zZWdtZW50ID0gbnVsbHB0cjsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgveTRt
aW5wdXQuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgveTRtaW5wdXQuYwppbmRleCAwMDdiZDk5NzFiNGZiOWE4ODA2
ZDc2NmExYjlmNzAwMGFmMjgwNzQwLi5mOTIzZWRhMzRhZWRmZTA4ZWQyZjZkYWY3NzMyZmUyMjgy
Y2QxNzBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3k0bWlucHV0LmMKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC95NG1pbnB1dC5jCkBAIC0xMCw2ICsxMCw3IEBACiAgKiAgQmFzZWQgb24gY29kZSBmcm9tIHRo
ZSBPZ2dUaGVvcmEgc29mdHdhcmUgY29kZWMgc291cmNlIGNvZGUsCiAgKiAgQ29weXJpZ2h0IChD
KSAyMDAyLTIwMTAgVGhlIFhpcGguT3JnIEZvdW5kYXRpb24gYW5kIGNvbnRyaWJ1dG9ycy4KICAq
LworI2luY2x1ZGUgPGFzc2VydC5oPgogI2luY2x1ZGUgPGVycm5vLmg+CiAjaW5jbHVkZSA8c3Rk
bGliLmg+CiAjaW5jbHVkZSA8c3RyaW5nLmg+CkBAIC01MSwxNSArNTIsOCBAQCBzdGF0aWMgaW50
IGZpbGVfcmVhZCh2b2lkICpidWYsIHNpemVfdCBzaXplLCBGSUxFICpmaWxlKSB7CiB9CiAKIHN0
YXRpYyBpbnQgeTRtX3BhcnNlX3RhZ3MoeTRtX2lucHV0ICpfeTRtLCBjaGFyICpfdGFncykgewot
ICBpbnQgZ290X3c7Ci0gIGludCBnb3RfaDsKLSAgaW50IGdvdF9mcHM7Ci0gIGludCBnb3RfaW50
ZXJsYWNlOwotICBpbnQgZ290X3BhcjsKLSAgaW50IGdvdF9jaHJvbWE7CiAgIGNoYXIgKnA7CiAg
IGNoYXIgKnE7Ci0gIGdvdF93ID0gZ290X2ggPSBnb3RfZnBzID0gZ290X2ludGVybGFjZSA9IGdv
dF9wYXIgPSBnb3RfY2hyb21hID0gMDsKICAgZm9yIChwID0gX3RhZ3M7OyBwID0gcSkgewogICAg
IC8qU2tpcCBhbnkgbGVhZGluZyBzcGFjZXMuKi8KICAgICB3aGlsZSAoKnAgPT0gJyAnKSBwKys7
CkBAIC03Miw1MiArNjYsMTE5IEBAIHN0YXRpYyBpbnQgeTRtX3BhcnNlX3RhZ3MoeTRtX2lucHV0
ICpfeTRtLCBjaGFyICpfdGFncykgewogICAgIHN3aXRjaCAocFswXSkgewogICAgICAgY2FzZSAn
Vyc6IHsKICAgICAgICAgaWYgKHNzY2FuZihwICsgMSwgIiVkIiwgJl95NG0tPnBpY193KSAhPSAx
KSByZXR1cm4gLTE7Ci0gICAgICAgIGdvdF93ID0gMTsKICAgICAgICAgYnJlYWs7CiAgICAgICB9
CiAgICAgICBjYXNlICdIJzogewogICAgICAgICBpZiAoc3NjYW5mKHAgKyAxLCAiJWQiLCAmX3k0
bS0+cGljX2gpICE9IDEpIHJldHVybiAtMTsKLSAgICAgICAgZ290X2ggPSAxOwogICAgICAgICBi
cmVhazsKICAgICAgIH0KICAgICAgIGNhc2UgJ0YnOiB7CiAgICAgICAgIGlmIChzc2NhbmYocCAr
IDEsICIlZDolZCIsICZfeTRtLT5mcHNfbiwgJl95NG0tPmZwc19kKSAhPSAyKSB7CiAgICAgICAg
ICAgcmV0dXJuIC0xOwogICAgICAgICB9Ci0gICAgICAgIGdvdF9mcHMgPSAxOwogICAgICAgICBi
cmVhazsKICAgICAgIH0KICAgICAgIGNhc2UgJ0knOiB7CiAgICAgICAgIF95NG0tPmludGVybGFj
ZSA9IHBbMV07Ci0gICAgICAgIGdvdF9pbnRlcmxhY2UgPSAxOwogICAgICAgICBicmVhazsKICAg
ICAgIH0KICAgICAgIGNhc2UgJ0EnOiB7CiAgICAgICAgIGlmIChzc2NhbmYocCArIDEsICIlZDol
ZCIsICZfeTRtLT5wYXJfbiwgJl95NG0tPnBhcl9kKSAhPSAyKSB7CiAgICAgICAgICAgcmV0dXJu
IC0xOwogICAgICAgICB9Ci0gICAgICAgIGdvdF9wYXIgPSAxOwogICAgICAgICBicmVhazsKICAg
ICAgIH0KICAgICAgIGNhc2UgJ0MnOiB7CiAgICAgICAgIGlmIChxIC0gcCA+IDE2KSByZXR1cm4g
LTE7CiAgICAgICAgIG1lbWNweShfeTRtLT5jaHJvbWFfdHlwZSwgcCArIDEsIHEgLSBwIC0gMSk7
CiAgICAgICAgIF95NG0tPmNocm9tYV90eXBlW3EgLSBwIC0gMV0gPSAnXDAnOwotICAgICAgICBn
b3RfY2hyb21hID0gMTsKICAgICAgICAgYnJlYWs7CiAgICAgICB9CiAgICAgICAgIC8qSWdub3Jl
IHVua25vd24gdGFncy4qLwogICAgIH0KICAgfQotICBpZiAoIWdvdF93IHx8ICFnb3RfaCB8fCAh
Z290X2ZwcykgcmV0dXJuIC0xOwotICBpZiAoIWdvdF9pbnRlcmxhY2UpIF95NG0tPmludGVybGFj
ZSA9ICc/JzsKLSAgaWYgKCFnb3RfcGFyKSBfeTRtLT5wYXJfbiA9IF95NG0tPnBhcl9kID0gMDsK
LSAgLypDaHJvbWEtdHlwZSBpcyBub3Qgc3BlY2lmaWVkIGluIG9sZGVyIGZpbGVzLCBlLmcuLCB0
aG9zZSBnZW5lcmF0ZWQgYnkKLSAgICAgbXBsYXllci4qLwotICBpZiAoIWdvdF9jaHJvbWEpIHN0
cmNweShfeTRtLT5jaHJvbWFfdHlwZSwgIjQyMCIpOwogICByZXR1cm4gMDsKIH0KIAorLy8gQ29w
eSBhIHNpbmdsZSB0YWcgaW50byB0aGUgYnVmZmVyLCBhbG9uZyB3aXRoIGEgbnVsbCBjaGFyYWN0
ZXIuCisvLyBSZXR1cm5zIDAgaWYgYW55IGZpbGUgSU8gZXJyb3JzIG9jY3VyLgorc3RhdGljIGlu
dCBjb3B5X3RhZyhjaGFyICpidWYsIHNpemVfdCBidWZfbGVuLCBjaGFyICplbmRfdGFnLCBGSUxF
ICpmaWxlKSB7CisgIHNpemVfdCBpOworICBhc3NlcnQoYnVmX2xlbiA+PSAxKTsKKyAgLy8gU2tp
cCBsZWFkaW5nIHNwYWNlIGNoYXJhY3RlcnMuCisgIGRvIHsKKyAgICBpZiAoIWZpbGVfcmVhZChi
dWYsIDEsIGZpbGUpKSB7CisgICAgICByZXR1cm4gMDsKKyAgICB9CisgIH0gd2hpbGUgKGJ1Zlsw
XSA9PSAnICcpOworCisgIC8vIElmIHdlIGhpdCB0aGUgbmV3bGluZSwgdHJlYXQgdGhpcyBhcyB0
aGUgImVtcHR5IiB0YWcuCisgIGlmIChidWZbMF0gPT0gJ1xuJykgeworICAgIGJ1ZlswXSA9ICdc
MCc7CisgICAgKmVuZF90YWcgPSAnXG4nOworICAgIHJldHVybiAxOworICB9CisKKyAgLy8gQ29w
eSBvdmVyIGNoYXJhY3RlcnMgdW50aWwgYSBzcGFjZSBpcyBoaXQsIG9yIHRoZSBidWZmZXIgaXMg
ZXhoYXVzdGVkLgorICBmb3IgKGkgPSAxOyBpIDwgYnVmX2xlbjsgKytpKSB7CisgICAgaWYgKCFm
aWxlX3JlYWQoYnVmICsgaSwgMSwgZmlsZSkpIHsKKyAgICAgIHJldHVybiAwOworICAgIH0KKyAg
ICBpZiAoYnVmW2ldID09ICcgJyB8fCBidWZbaV0gPT0gJ1xuJykgeworICAgICAgYnJlYWs7Cisg
ICAgfQorICB9CisgIGlmIChpID09IGJ1Zl9sZW4pIHsKKyAgICBmcHJpbnRmKHN0ZGVyciwgIkVy
cm9yOiBZNE0gaGVhZGVyIHRhZ3MgbXVzdCBiZSBsZXNzIHRoYW4gJWx1IGNoYXJhY3RlcnNcbiIs
CisgICAgICAgICAgICAodW5zaWduZWQgbG9uZylpKTsKKyAgICByZXR1cm4gMDsKKyAgfQorICAq
ZW5kX3RhZyA9IGJ1ZltpXTsKKyAgYnVmW2ldID0gJ1wwJzsKKyAgcmV0dXJuIDE7Cit9CisKKy8q
IFJldHVybnMgMSBpZiB0YWdzIHdlcmUgcGFyc2VkIHN1Y2Nlc3NmdWxseSwgMCBvdGhlcndpc2Uu
ICovCitzdGF0aWMgaW50IHBhcnNlX3RhZ3MoeTRtX2lucHV0ICp5NG1fY3R4LCBGSUxFICpmaWxl
KSB7CisgIGNoYXIgdGFnWzI1Nl07CisgIGNoYXIgZW5kOyAvKiBDaGFyYWN0ZXIgZGVub3Rpbmcg
dGhlIGVuZCBvZiB0aGUgdGFnLCAnICcgb3IgJ1xuJy4gKi8KKyAgLyogU2V0IFk0TSB0YWdzIHRv
IGRlZmF1bHRzLCB1cGRhdGluZyB0aGVtIGFzIHByb2Nlc3Npbmcgb2NjdXJzLiBNYW5kYXRvcnkK
KyAgICAgZmllbGRzIGFyZSBtYXJrZWQgd2l0aCAtMSBhbmQgd2lsbCBiZSBjaGVja2VkIGFmdGVy
IHRoZSB0YWdzIGFyZSBwYXJzZWQuICovCisgIHk0bV9jdHgtPnBpY193ID0gLTE7CisgIHk0bV9j
dHgtPnBpY19oID0gLTE7CisgIHk0bV9jdHgtPmZwc19uID0gLTE7IC8qIEFsc28gc2VydmVzIGFz
IG1hcmtlciBmb3IgZnBzX2QgKi8KKyAgeTRtX2N0eC0+cGFyX24gPSAwOworICB5NG1fY3R4LT5w
YXJfZCA9IDA7CisgIHk0bV9jdHgtPmludGVybGFjZSA9ICc/JzsKKyAgc25wcmludGYoeTRtX2N0
eC0+Y2hyb21hX3R5cGUsIHNpemVvZih5NG1fY3R4LT5jaHJvbWFfdHlwZSksICI0MjAiKTsKKwor
ICAvKiBGaW5kIG9uZSB0YWcgYXQgYSB0aW1lLiAqLworICBkbyB7CisgICAgaWYgKCFjb3B5X3Rh
Zyh0YWcsIHNpemVvZih0YWcpLCAmZW5kLCBmaWxlKSkgeworICAgICAgcmV0dXJuIDA7CisgICAg
fQorICAgIC8qIHk0bV9wYXJzZV90YWdzIHJldHVybnMgMCBvbiBzdWNjZXNzLiAqLworICAgIGlm
ICh5NG1fcGFyc2VfdGFncyh5NG1fY3R4LCB0YWcpKSB7CisgICAgICByZXR1cm4gMDsKKyAgICB9
CisgIH0gd2hpbGUgKGVuZCAhPSAnXG4nKTsKKworICAvKiBDaGVjayB0aGUgbWFuZGF0b3J5IGZp
ZWxkcy4gKi8KKyAgaWYgKHk0bV9jdHgtPnBpY193ID09IC0xKSB7CisgICAgZnByaW50ZihzdGRl
cnIsICJXaWR0aCBmaWVsZCBtaXNzaW5nXG4iKTsKKyAgICByZXR1cm4gMDsKKyAgfQorICBpZiAo
eTRtX2N0eC0+cGljX2ggPT0gLTEpIHsKKyAgICBmcHJpbnRmKHN0ZGVyciwgIkhlaWdodCBmaWVs
ZCBtaXNzaW5nXG4iKTsKKyAgICByZXR1cm4gMDsKKyAgfQorICBpZiAoeTRtX2N0eC0+ZnBzX24g
PT0gLTEpIHsKKyAgICBmcHJpbnRmKHN0ZGVyciwgIkZQUyBmaWVsZCBtaXNzaW5nXG4iKTsKKyAg
ICByZXR1cm4gMDsKKyAgfQorICByZXR1cm4gMTsKK30KKwogLypBbGwgYW50aS1hbGlhc2luZyBm
aWx0ZXJzIGluIHRoZSBmb2xsb3dpbmcgY29udmVyc2lvbiBmdW5jdGlvbnMgYXJlIGJhc2VkIG9u
CiAgICBvbmUgb2YgdHdvIHdpbmRvdyBmdW5jdGlvbnM6CiAgIFRoZSA2LXRhcCBMYW5jem9zIHdp
bmRvdyAoZm9yIGRvd24tc2FtcGxpbmcgYW5kIHNoaWZ0cyk6CkBAIC03ODQsMjc3ICs4NDUsMjc4
IEBAIHN0YXRpYyB2b2lkIHk0bV9jb252ZXJ0X251bGwoeTRtX2lucHV0ICpfeTRtLCB1bnNpZ25l
ZCBjaGFyICpfZHN0LAogICAodm9pZClfYXV4OwogfQogCi1pbnQgeTRtX2lucHV0X29wZW4oeTRt
X2lucHV0ICpfeTRtLCBGSUxFICpfZmluLCBjaGFyICpfc2tpcCwgaW50IF9uc2tpcCwKLSAgICAg
ICAgICAgICAgICAgICBpbnQgb25seV80MjApIHsKLSAgY2hhciBidWZmZXJbODBdID0geyAwIH07
Ci0gIGludCByZXQ7Ci0gIGludCBpOwotICAvKlJlYWQgdW50aWwgbmV3bGluZSwgb3IgODAgY29s
cywgd2hpY2hldmVyIGhhcHBlbnMgZmlyc3QuKi8KLSAgZm9yIChpID0gMDsgaSA8IDc5OyBpKysp
IHsKLSAgICBpZiAoX25za2lwID4gMCkgewotICAgICAgYnVmZmVyW2ldID0gKl9za2lwKys7Ci0g
ICAgICBfbnNraXAtLTsKLSAgICB9IGVsc2UgewotICAgICAgaWYgKCFmaWxlX3JlYWQoYnVmZmVy
ICsgaSwgMSwgX2ZpbikpIHJldHVybiAtMTsKLSAgICB9Ci0gICAgaWYgKGJ1ZmZlcltpXSA9PSAn
XG4nKSBicmVhazsKK3N0YXRpYyBjb25zdCBjaGFyIFRBR1tdID0gIllVVjRNUEVHMiI7CisKK2lu
dCB5NG1faW5wdXRfb3Blbih5NG1faW5wdXQgKnk0bV9jdHgsIEZJTEUgKmZpbGUsIGNoYXIgKnNr
aXBfYnVmZmVyLAorICAgICAgICAgICAgICAgICAgIGludCBudW1fc2tpcCwgaW50IG9ubHlfNDIw
KSB7CisgIC8vIEZpbGUgbXVzdCBzdGFydCB3aXRoIHxUQUd8LgorICBjaGFyIHRhZ19idWZmZXJb
OV07ICAvLyA5ID09IHN0cmxlbihUQUcpCisgIC8vIFJlYWQgYXMgbXVjaCBhcyBwb3NzaWJsZSBm
cm9tIHxza2lwX2J1ZmZlcnwsIHdoaWNoIHdlcmUgY2hhcmFjdGVycworICAvLyB0aGF0IHdlcmUg
cHJldmlvdXNseSByZWFkIGZyb20gdGhlIGZpbGUgdG8gZG8gaW5wdXQtdHlwZSBkZXRlY3Rpb24u
CisgIGFzc2VydChudW1fc2tpcCA+PSAwICYmIG51bV9za2lwIDw9IDgpOworICBpZiAobnVtX3Nr
aXAgPiAwKSB7CisgICAgbWVtY3B5KHRhZ19idWZmZXIsIHNraXBfYnVmZmVyLCBudW1fc2tpcCk7
CiAgIH0KLSAgLypXZSBza2lwcGVkIHRvbyBtdWNoIGhlYWRlciBkYXRhLiovCi0gIGlmIChfbnNr
aXAgPiAwKSByZXR1cm4gLTE7Ci0gIGlmIChpID09IDc5KSB7Ci0gICAgZnByaW50ZihzdGRlcnIs
ICJFcnJvciBwYXJzaW5nIGhlYWRlcjsgbm90IGEgWVVWMk1QRUcyIGZpbGU/XG4iKTsKKyAgLy8g
U3RhcnQgcmVhZGluZyBmcm9tIHRoZSBmaWxlIG5vdyB0aGF0IHRoZSB8c2tpcF9idWZmZXJ8IGlz
IGRlcGxldGVkLgorICBpZiAoIWZpbGVfcmVhZCh0YWdfYnVmZmVyICsgbnVtX3NraXAsIDkgLSBu
dW1fc2tpcCwgZmlsZSkpIHsKICAgICByZXR1cm4gLTE7CiAgIH0KLSAgYnVmZmVyW2ldID0gJ1ww
JzsKLSAgaWYgKG1lbWNtcChidWZmZXIsICJZVVY0TVBFRyIsIDgpKSB7Ci0gICAgZnByaW50Zihz
dGRlcnIsICJJbmNvbXBsZXRlIG1hZ2ljIGZvciBZVVY0TVBFRyBmaWxlLlxuIik7CisgIGlmICht
ZW1jbXAoVEFHLCB0YWdfYnVmZmVyLCA5KSAhPSAwKSB7CisgICAgZnByaW50ZihzdGRlcnIsICJF
cnJvciBwYXJzaW5nIGhlYWRlcjogbXVzdCBzdGFydCB3aXRoICVzXG4iLCBUQUcpOwogICAgIHJl
dHVybiAtMTsKICAgfQotICBpZiAoYnVmZmVyWzhdICE9ICcyJykgewotICAgIGZwcmludGYoc3Rk
ZXJyLCAiSW5jb3JyZWN0IFlVViBpbnB1dCBmaWxlIHZlcnNpb247IFlVVjRNUEVHMiByZXF1aXJl
ZC5cbiIpOworICAvLyBOZXh0IGNoYXJhY3RlciBtdXN0IGJlIGEgc3BhY2UuCisgIGlmICghZmls
ZV9yZWFkKHRhZ19idWZmZXIsIDEsIGZpbGUpIHx8IHRhZ19idWZmZXJbMF0gIT0gJyAnKSB7Cisg
ICAgZnByaW50ZihzdGRlcnIsICJFcnJvciBwYXJzaW5nIGhlYWRlcjogc3BhY2UgbXVzdCBmb2xs
b3cgJXNcbiIsIFRBRyk7CisgICAgcmV0dXJuIC0xOwogICB9Ci0gIHJldCA9IHk0bV9wYXJzZV90
YWdzKF95NG0sIGJ1ZmZlciArIDUpOwotICBpZiAocmV0IDwgMCkgewotICAgIGZwcmludGYoc3Rk
ZXJyLCAiRXJyb3IgcGFyc2luZyBZVVY0TVBFRzIgaGVhZGVyLlxuIik7Ci0gICAgcmV0dXJuIHJl
dDsKKyAgaWYgKCFwYXJzZV90YWdzKHk0bV9jdHgsIGZpbGUpKSB7CisgICAgZnByaW50ZihzdGRl
cnIsICJFcnJvciBwYXJzaW5nICVzIGhlYWRlci5cbiIsIFRBRyk7CiAgIH0KLSAgaWYgKF95NG0t
PmludGVybGFjZSA9PSAnPycpIHsKKyAgaWYgKHk0bV9jdHgtPmludGVybGFjZSA9PSAnPycpIHsK
ICAgICBmcHJpbnRmKHN0ZGVyciwKICAgICAgICAgICAgICJXYXJuaW5nOiBJbnB1dCB2aWRlbyBp
bnRlcmxhY2luZyBmb3JtYXQgdW5rbm93bjsgIgogICAgICAgICAgICAgImFzc3VtaW5nIHByb2dy
ZXNzaXZlIHNjYW4uXG4iKTsKLSAgfSBlbHNlIGlmIChfeTRtLT5pbnRlcmxhY2UgIT0gJ3AnKSB7
CisgIH0gZWxzZSBpZiAoeTRtX2N0eC0+aW50ZXJsYWNlICE9ICdwJykgewogICAgIGZwcmludGYo
c3RkZXJyLAogICAgICAgICAgICAgIklucHV0IHZpZGVvIGlzIGludGVybGFjZWQ7ICIKICAgICAg
ICAgICAgICJPbmx5IHByb2dyZXNzaXZlIHNjYW4gaGFuZGxlZC5cbiIpOwogICAgIHJldHVybiAt
MTsKICAgfQotICBfeTRtLT52cHhfZm10ID0gVlBYX0lNR19GTVRfSTQyMDsKLSAgX3k0bS0+YnBz
ID0gMTI7Ci0gIF95NG0tPmJpdF9kZXB0aCA9IDg7Ci0gIGlmIChzdHJjbXAoX3k0bS0+Y2hyb21h
X3R5cGUsICI0MjAiKSA9PSAwIHx8Ci0gICAgICBzdHJjbXAoX3k0bS0+Y2hyb21hX3R5cGUsICI0
MjBqcGVnIikgPT0gMCkgewotICAgIF95NG0tPnNyY19jX2RlY19oID0gX3k0bS0+ZHN0X2NfZGVj
X2ggPSBfeTRtLT5zcmNfY19kZWNfdiA9Ci0gICAgICAgIF95NG0tPmRzdF9jX2RlY192ID0gMjsK
LSAgICBfeTRtLT5kc3RfYnVmX3JlYWRfc3ogPQotICAgICAgICBfeTRtLT5waWNfdyAqIF95NG0t
PnBpY19oICsKLSAgICAgICAgMiAqICgoX3k0bS0+cGljX3cgKyAxKSAvIDIpICogKChfeTRtLT5w
aWNfaCArIDEpIC8gMik7CisgIHk0bV9jdHgtPnZweF9mbXQgPSBWUFhfSU1HX0ZNVF9JNDIwOwor
ICB5NG1fY3R4LT5icHMgPSAxMjsKKyAgeTRtX2N0eC0+Yml0X2RlcHRoID0gODsKKyAgeTRtX2N0
eC0+YXV4X2J1ZiA9IE5VTEw7CisgIHk0bV9jdHgtPmRzdF9idWYgPSBOVUxMOworICBpZiAoc3Ry
Y21wKHk0bV9jdHgtPmNocm9tYV90eXBlLCAiNDIwIikgPT0gMCB8fAorICAgICAgc3RyY21wKHk0
bV9jdHgtPmNocm9tYV90eXBlLCAiNDIwanBlZyIpID09IDApIHsKKyAgICB5NG1fY3R4LT5zcmNf
Y19kZWNfaCA9IHk0bV9jdHgtPmRzdF9jX2RlY19oID0geTRtX2N0eC0+c3JjX2NfZGVjX3YgPQor
ICAgICAgICB5NG1fY3R4LT5kc3RfY19kZWNfdiA9IDI7CisgICAgeTRtX2N0eC0+ZHN0X2J1Zl9y
ZWFkX3N6ID0KKyAgICAgICAgeTRtX2N0eC0+cGljX3cgKiB5NG1fY3R4LT5waWNfaCArCisgICAg
ICAgIDIgKiAoKHk0bV9jdHgtPnBpY193ICsgMSkgLyAyKSAqICgoeTRtX2N0eC0+cGljX2ggKyAx
KSAvIDIpOwogICAgIC8qIE5hdGl2ZWx5IHN1cHBvcnRlZDogbm8gY29udmVyc2lvbiByZXF1aXJl
ZC4gKi8KLSAgICBfeTRtLT5hdXhfYnVmX3N6ID0gX3k0bS0+YXV4X2J1Zl9yZWFkX3N6ID0gMDsK
LSAgICBfeTRtLT5jb252ZXJ0ID0geTRtX2NvbnZlcnRfbnVsbDsKLSAgfSBlbHNlIGlmIChzdHJj
bXAoX3k0bS0+Y2hyb21hX3R5cGUsICI0MjBwMTAiKSA9PSAwKSB7Ci0gICAgX3k0bS0+c3JjX2Nf
ZGVjX2ggPSAyOwotICAgIF95NG0tPmRzdF9jX2RlY19oID0gMjsKLSAgICBfeTRtLT5zcmNfY19k
ZWNfdiA9IDI7Ci0gICAgX3k0bS0+ZHN0X2NfZGVjX3YgPSAyOwotICAgIF95NG0tPmRzdF9idWZf
cmVhZF9zeiA9Ci0gICAgICAgIDIgKiAoX3k0bS0+cGljX3cgKiBfeTRtLT5waWNfaCArCi0gICAg
ICAgICAgICAgMiAqICgoX3k0bS0+cGljX3cgKyAxKSAvIDIpICogKChfeTRtLT5waWNfaCArIDEp
IC8gMikpOworICAgIHk0bV9jdHgtPmF1eF9idWZfc3ogPSB5NG1fY3R4LT5hdXhfYnVmX3JlYWRf
c3ogPSAwOworICAgIHk0bV9jdHgtPmNvbnZlcnQgPSB5NG1fY29udmVydF9udWxsOworICB9IGVs
c2UgaWYgKHN0cmNtcCh5NG1fY3R4LT5jaHJvbWFfdHlwZSwgIjQyMHAxMCIpID09IDApIHsKKyAg
ICB5NG1fY3R4LT5zcmNfY19kZWNfaCA9IDI7CisgICAgeTRtX2N0eC0+ZHN0X2NfZGVjX2ggPSAy
OworICAgIHk0bV9jdHgtPnNyY19jX2RlY192ID0gMjsKKyAgICB5NG1fY3R4LT5kc3RfY19kZWNf
diA9IDI7CisgICAgeTRtX2N0eC0+ZHN0X2J1Zl9yZWFkX3N6ID0KKyAgICAgICAgMiAqICh5NG1f
Y3R4LT5waWNfdyAqIHk0bV9jdHgtPnBpY19oICsKKyAgICAgICAgICAgICAyICogKCh5NG1fY3R4
LT5waWNfdyArIDEpIC8gMikgKiAoKHk0bV9jdHgtPnBpY19oICsgMSkgLyAyKSk7CiAgICAgLyog
TmF0aXZlbHkgc3VwcG9ydGVkOiBubyBjb252ZXJzaW9uIHJlcXVpcmVkLiAqLwotICAgIF95NG0t
PmF1eF9idWZfc3ogPSBfeTRtLT5hdXhfYnVmX3JlYWRfc3ogPSAwOwotICAgIF95NG0tPmNvbnZl
cnQgPSB5NG1fY29udmVydF9udWxsOwotICAgIF95NG0tPmJpdF9kZXB0aCA9IDEwOwotICAgIF95
NG0tPmJwcyA9IDE1OwotICAgIF95NG0tPnZweF9mbXQgPSBWUFhfSU1HX0ZNVF9JNDIwMTY7Cisg
ICAgeTRtX2N0eC0+YXV4X2J1Zl9zeiA9IHk0bV9jdHgtPmF1eF9idWZfcmVhZF9zeiA9IDA7Cisg
ICAgeTRtX2N0eC0+Y29udmVydCA9IHk0bV9jb252ZXJ0X251bGw7CisgICAgeTRtX2N0eC0+Yml0
X2RlcHRoID0gMTA7CisgICAgeTRtX2N0eC0+YnBzID0gMTU7CisgICAgeTRtX2N0eC0+dnB4X2Zt
dCA9IFZQWF9JTUdfRk1UX0k0MjAxNjsKICAgICBpZiAob25seV80MjApIHsKICAgICAgIGZwcmlu
dGYoc3RkZXJyLCAiVW5zdXBwb3J0ZWQgY29udmVyc2lvbiBmcm9tIDQyMHAxMCB0byA0MjBqcGVn
XG4iKTsKICAgICAgIHJldHVybiAtMTsKICAgICB9Ci0gIH0gZWxzZSBpZiAoc3RyY21wKF95NG0t
PmNocm9tYV90eXBlLCAiNDIwcDEyIikgPT0gMCkgewotICAgIF95NG0tPnNyY19jX2RlY19oID0g
MjsKLSAgICBfeTRtLT5kc3RfY19kZWNfaCA9IDI7Ci0gICAgX3k0bS0+c3JjX2NfZGVjX3YgPSAy
OwotICAgIF95NG0tPmRzdF9jX2RlY192ID0gMjsKLSAgICBfeTRtLT5kc3RfYnVmX3JlYWRfc3og
PQotICAgICAgICAyICogKF95NG0tPnBpY193ICogX3k0bS0+cGljX2ggKwotICAgICAgICAgICAg
IDIgKiAoKF95NG0tPnBpY193ICsgMSkgLyAyKSAqICgoX3k0bS0+cGljX2ggKyAxKSAvIDIpKTsK
KyAgfSBlbHNlIGlmIChzdHJjbXAoeTRtX2N0eC0+Y2hyb21hX3R5cGUsICI0MjBwMTIiKSA9PSAw
KSB7CisgICAgeTRtX2N0eC0+c3JjX2NfZGVjX2ggPSAyOworICAgIHk0bV9jdHgtPmRzdF9jX2Rl
Y19oID0gMjsKKyAgICB5NG1fY3R4LT5zcmNfY19kZWNfdiA9IDI7CisgICAgeTRtX2N0eC0+ZHN0
X2NfZGVjX3YgPSAyOworICAgIHk0bV9jdHgtPmRzdF9idWZfcmVhZF9zeiA9CisgICAgICAgIDIg
KiAoeTRtX2N0eC0+cGljX3cgKiB5NG1fY3R4LT5waWNfaCArCisgICAgICAgICAgICAgMiAqICgo
eTRtX2N0eC0+cGljX3cgKyAxKSAvIDIpICogKCh5NG1fY3R4LT5waWNfaCArIDEpIC8gMikpOwog
ICAgIC8qIE5hdGl2ZWx5IHN1cHBvcnRlZDogbm8gY29udmVyc2lvbiByZXF1aXJlZC4gKi8KLSAg
ICBfeTRtLT5hdXhfYnVmX3N6ID0gX3k0bS0+YXV4X2J1Zl9yZWFkX3N6ID0gMDsKLSAgICBfeTRt
LT5jb252ZXJ0ID0geTRtX2NvbnZlcnRfbnVsbDsKLSAgICBfeTRtLT5iaXRfZGVwdGggPSAxMjsK
LSAgICBfeTRtLT5icHMgPSAxODsKLSAgICBfeTRtLT52cHhfZm10ID0gVlBYX0lNR19GTVRfSTQy
MDE2OworICAgIHk0bV9jdHgtPmF1eF9idWZfc3ogPSB5NG1fY3R4LT5hdXhfYnVmX3JlYWRfc3og
PSAwOworICAgIHk0bV9jdHgtPmNvbnZlcnQgPSB5NG1fY29udmVydF9udWxsOworICAgIHk0bV9j
dHgtPmJpdF9kZXB0aCA9IDEyOworICAgIHk0bV9jdHgtPmJwcyA9IDE4OworICAgIHk0bV9jdHgt
PnZweF9mbXQgPSBWUFhfSU1HX0ZNVF9JNDIwMTY7CiAgICAgaWYgKG9ubHlfNDIwKSB7CiAgICAg
ICBmcHJpbnRmKHN0ZGVyciwgIlVuc3VwcG9ydGVkIGNvbnZlcnNpb24gZnJvbSA0MjBwMTIgdG8g
NDIwanBlZ1xuIik7CiAgICAgICByZXR1cm4gLTE7CiAgICAgfQotICB9IGVsc2UgaWYgKHN0cmNt
cChfeTRtLT5jaHJvbWFfdHlwZSwgIjQyMG1wZWcyIikgPT0gMCkgewotICAgIF95NG0tPnNyY19j
X2RlY19oID0gX3k0bS0+ZHN0X2NfZGVjX2ggPSBfeTRtLT5zcmNfY19kZWNfdiA9Ci0gICAgICAg
IF95NG0tPmRzdF9jX2RlY192ID0gMjsKLSAgICBfeTRtLT5kc3RfYnVmX3JlYWRfc3ogPSBfeTRt
LT5waWNfdyAqIF95NG0tPnBpY19oOworICB9IGVsc2UgaWYgKHN0cmNtcCh5NG1fY3R4LT5jaHJv
bWFfdHlwZSwgIjQyMG1wZWcyIikgPT0gMCkgeworICAgIHk0bV9jdHgtPnNyY19jX2RlY19oID0g
eTRtX2N0eC0+ZHN0X2NfZGVjX2ggPSB5NG1fY3R4LT5zcmNfY19kZWNfdiA9CisgICAgICAgIHk0
bV9jdHgtPmRzdF9jX2RlY192ID0gMjsKKyAgICB5NG1fY3R4LT5kc3RfYnVmX3JlYWRfc3ogPSB5
NG1fY3R4LT5waWNfdyAqIHk0bV9jdHgtPnBpY19oOwogICAgIC8qQ2hyb21hIGZpbHRlciByZXF1
aXJlZDogcmVhZCBpbnRvIHRoZSBhdXggYnVmIGZpcnN0LiovCi0gICAgX3k0bS0+YXV4X2J1Zl9z
eiA9IF95NG0tPmF1eF9idWZfcmVhZF9zeiA9Ci0gICAgICAgIDIgKiAoKF95NG0tPnBpY193ICsg
MSkgLyAyKSAqICgoX3k0bS0+cGljX2ggKyAxKSAvIDIpOwotICAgIF95NG0tPmNvbnZlcnQgPSB5
NG1fY29udmVydF80MnhtcGVnMl80MnhqcGVnOwotICB9IGVsc2UgaWYgKHN0cmNtcChfeTRtLT5j
aHJvbWFfdHlwZSwgIjQyMHBhbGR2IikgPT0gMCkgewotICAgIF95NG0tPnNyY19jX2RlY19oID0g
X3k0bS0+ZHN0X2NfZGVjX2ggPSBfeTRtLT5zcmNfY19kZWNfdiA9Ci0gICAgICAgIF95NG0tPmRz
dF9jX2RlY192ID0gMjsKLSAgICBfeTRtLT5kc3RfYnVmX3JlYWRfc3ogPSBfeTRtLT5waWNfdyAq
IF95NG0tPnBpY19oOworICAgIHk0bV9jdHgtPmF1eF9idWZfc3ogPSB5NG1fY3R4LT5hdXhfYnVm
X3JlYWRfc3ogPQorICAgICAgICAyICogKCh5NG1fY3R4LT5waWNfdyArIDEpIC8gMikgKiAoKHk0
bV9jdHgtPnBpY19oICsgMSkgLyAyKTsKKyAgICB5NG1fY3R4LT5jb252ZXJ0ID0geTRtX2NvbnZl
cnRfNDJ4bXBlZzJfNDJ4anBlZzsKKyAgfSBlbHNlIGlmIChzdHJjbXAoeTRtX2N0eC0+Y2hyb21h
X3R5cGUsICI0MjBwYWxkdiIpID09IDApIHsKKyAgICB5NG1fY3R4LT5zcmNfY19kZWNfaCA9IHk0
bV9jdHgtPmRzdF9jX2RlY19oID0geTRtX2N0eC0+c3JjX2NfZGVjX3YgPQorICAgICAgICB5NG1f
Y3R4LT5kc3RfY19kZWNfdiA9IDI7CisgICAgeTRtX2N0eC0+ZHN0X2J1Zl9yZWFkX3N6ID0geTRt
X2N0eC0+cGljX3cgKiB5NG1fY3R4LT5waWNfaDsKICAgICAvKkNocm9tYSBmaWx0ZXIgcmVxdWly
ZWQ6IHJlYWQgaW50byB0aGUgYXV4IGJ1ZiBmaXJzdC4KICAgICAgIFdlIG5lZWQgdG8gbWFrZSB0
d28gZmlsdGVyIHBhc3Nlcywgc28gd2UgbmVlZCBzb21lIGV4dHJhIHNwYWNlIGluIHRoZQogICAg
ICAgIGF1eCBidWZmZXIuKi8KLSAgICBfeTRtLT5hdXhfYnVmX3N6ID0gMyAqICgoX3k0bS0+cGlj
X3cgKyAxKSAvIDIpICogKChfeTRtLT5waWNfaCArIDEpIC8gMik7Ci0gICAgX3k0bS0+YXV4X2J1
Zl9yZWFkX3N6ID0KLSAgICAgICAgMiAqICgoX3k0bS0+cGljX3cgKyAxKSAvIDIpICogKChfeTRt
LT5waWNfaCArIDEpIC8gMik7Ci0gICAgX3k0bS0+Y29udmVydCA9IHk0bV9jb252ZXJ0XzQyeHBh
bGR2XzQyeGpwZWc7Ci0gIH0gZWxzZSBpZiAoc3RyY21wKF95NG0tPmNocm9tYV90eXBlLCAiNDIy
anBlZyIpID09IDApIHsKLSAgICBfeTRtLT5zcmNfY19kZWNfaCA9IF95NG0tPmRzdF9jX2RlY19o
ID0gMjsKLSAgICBfeTRtLT5zcmNfY19kZWNfdiA9IDE7Ci0gICAgX3k0bS0+ZHN0X2NfZGVjX3Yg
PSAyOwotICAgIF95NG0tPmRzdF9idWZfcmVhZF9zeiA9IF95NG0tPnBpY193ICogX3k0bS0+cGlj
X2g7CisgICAgeTRtX2N0eC0+YXV4X2J1Zl9zeiA9CisgICAgICAgIDMgKiAoKHk0bV9jdHgtPnBp
Y193ICsgMSkgLyAyKSAqICgoeTRtX2N0eC0+cGljX2ggKyAxKSAvIDIpOworICAgIHk0bV9jdHgt
PmF1eF9idWZfcmVhZF9zeiA9CisgICAgICAgIDIgKiAoKHk0bV9jdHgtPnBpY193ICsgMSkgLyAy
KSAqICgoeTRtX2N0eC0+cGljX2ggKyAxKSAvIDIpOworICAgIHk0bV9jdHgtPmNvbnZlcnQgPSB5
NG1fY29udmVydF80MnhwYWxkdl80MnhqcGVnOworICB9IGVsc2UgaWYgKHN0cmNtcCh5NG1fY3R4
LT5jaHJvbWFfdHlwZSwgIjQyMmpwZWciKSA9PSAwKSB7CisgICAgeTRtX2N0eC0+c3JjX2NfZGVj
X2ggPSB5NG1fY3R4LT5kc3RfY19kZWNfaCA9IDI7CisgICAgeTRtX2N0eC0+c3JjX2NfZGVjX3Yg
PSAxOworICAgIHk0bV9jdHgtPmRzdF9jX2RlY192ID0gMjsKKyAgICB5NG1fY3R4LT5kc3RfYnVm
X3JlYWRfc3ogPSB5NG1fY3R4LT5waWNfdyAqIHk0bV9jdHgtPnBpY19oOwogICAgIC8qQ2hyb21h
IGZpbHRlciByZXF1aXJlZDogcmVhZCBpbnRvIHRoZSBhdXggYnVmIGZpcnN0LiovCi0gICAgX3k0
bS0+YXV4X2J1Zl9zeiA9IF95NG0tPmF1eF9idWZfcmVhZF9zeiA9Ci0gICAgICAgIDIgKiAoKF95
NG0tPnBpY193ICsgMSkgLyAyKSAqIF95NG0tPnBpY19oOwotICAgIF95NG0tPmNvbnZlcnQgPSB5
NG1fY29udmVydF80MjJqcGVnXzQyMGpwZWc7Ci0gIH0gZWxzZSBpZiAoc3RyY21wKF95NG0tPmNo
cm9tYV90eXBlLCAiNDIyIikgPT0gMCkgewotICAgIF95NG0tPnNyY19jX2RlY19oID0gMjsKLSAg
ICBfeTRtLT5zcmNfY19kZWNfdiA9IDE7CisgICAgeTRtX2N0eC0+YXV4X2J1Zl9zeiA9IHk0bV9j
dHgtPmF1eF9idWZfcmVhZF9zeiA9CisgICAgICAgIDIgKiAoKHk0bV9jdHgtPnBpY193ICsgMSkg
LyAyKSAqIHk0bV9jdHgtPnBpY19oOworICAgIHk0bV9jdHgtPmNvbnZlcnQgPSB5NG1fY29udmVy
dF80MjJqcGVnXzQyMGpwZWc7CisgIH0gZWxzZSBpZiAoc3RyY21wKHk0bV9jdHgtPmNocm9tYV90
eXBlLCAiNDIyIikgPT0gMCkgeworICAgIHk0bV9jdHgtPnNyY19jX2RlY19oID0gMjsKKyAgICB5
NG1fY3R4LT5zcmNfY19kZWNfdiA9IDE7CiAgICAgaWYgKG9ubHlfNDIwKSB7Ci0gICAgICBfeTRt
LT5kc3RfY19kZWNfaCA9IDI7Ci0gICAgICBfeTRtLT5kc3RfY19kZWNfdiA9IDI7Ci0gICAgICBf
eTRtLT5kc3RfYnVmX3JlYWRfc3ogPSBfeTRtLT5waWNfdyAqIF95NG0tPnBpY19oOworICAgICAg
eTRtX2N0eC0+ZHN0X2NfZGVjX2ggPSAyOworICAgICAgeTRtX2N0eC0+ZHN0X2NfZGVjX3YgPSAy
OworICAgICAgeTRtX2N0eC0+ZHN0X2J1Zl9yZWFkX3N6ID0geTRtX2N0eC0+cGljX3cgKiB5NG1f
Y3R4LT5waWNfaDsKICAgICAgIC8qQ2hyb21hIGZpbHRlciByZXF1aXJlZDogcmVhZCBpbnRvIHRo
ZSBhdXggYnVmIGZpcnN0LgogICAgICAgICBXZSBuZWVkIHRvIG1ha2UgdHdvIGZpbHRlciBwYXNz
ZXMsIHNvIHdlIG5lZWQgc29tZSBleHRyYSBzcGFjZSBpbiB0aGUKICAgICAgICAgIGF1eCBidWZm
ZXIuKi8KLSAgICAgIF95NG0tPmF1eF9idWZfcmVhZF9zeiA9IDIgKiAoKF95NG0tPnBpY193ICsg
MSkgLyAyKSAqIF95NG0tPnBpY19oOwotICAgICAgX3k0bS0+YXV4X2J1Zl9zeiA9Ci0gICAgICAg
ICAgX3k0bS0+YXV4X2J1Zl9yZWFkX3N6ICsgKChfeTRtLT5waWNfdyArIDEpIC8gMikgKiBfeTRt
LT5waWNfaDsKLSAgICAgIF95NG0tPmNvbnZlcnQgPSB5NG1fY29udmVydF80MjJfNDIwanBlZzsK
KyAgICAgIHk0bV9jdHgtPmF1eF9idWZfcmVhZF9zeiA9CisgICAgICAgICAgMiAqICgoeTRtX2N0
eC0+cGljX3cgKyAxKSAvIDIpICogeTRtX2N0eC0+cGljX2g7CisgICAgICB5NG1fY3R4LT5hdXhf
YnVmX3N6ID0geTRtX2N0eC0+YXV4X2J1Zl9yZWFkX3N6ICsKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAoKHk0bV9jdHgtPnBpY193ICsgMSkgLyAyKSAqIHk0bV9jdHgtPnBpY19oOworICAg
ICAgeTRtX2N0eC0+Y29udmVydCA9IHk0bV9jb252ZXJ0XzQyMl80MjBqcGVnOwogICAgIH0gZWxz
ZSB7Ci0gICAgICBfeTRtLT52cHhfZm10ID0gVlBYX0lNR19GTVRfSTQyMjsKLSAgICAgIF95NG0t
PmJwcyA9IDE2OwotICAgICAgX3k0bS0+ZHN0X2NfZGVjX2ggPSBfeTRtLT5zcmNfY19kZWNfaDsK
LSAgICAgIF95NG0tPmRzdF9jX2RlY192ID0gX3k0bS0+c3JjX2NfZGVjX3Y7Ci0gICAgICBfeTRt
LT5kc3RfYnVmX3JlYWRfc3ogPQotICAgICAgICAgIF95NG0tPnBpY193ICogX3k0bS0+cGljX2gg
KyAyICogKChfeTRtLT5waWNfdyArIDEpIC8gMikgKiBfeTRtLT5waWNfaDsKKyAgICAgIHk0bV9j
dHgtPnZweF9mbXQgPSBWUFhfSU1HX0ZNVF9JNDIyOworICAgICAgeTRtX2N0eC0+YnBzID0gMTY7
CisgICAgICB5NG1fY3R4LT5kc3RfY19kZWNfaCA9IHk0bV9jdHgtPnNyY19jX2RlY19oOworICAg
ICAgeTRtX2N0eC0+ZHN0X2NfZGVjX3YgPSB5NG1fY3R4LT5zcmNfY19kZWNfdjsKKyAgICAgIHk0
bV9jdHgtPmRzdF9idWZfcmVhZF9zeiA9CisgICAgICAgICAgeTRtX2N0eC0+cGljX3cgKiB5NG1f
Y3R4LT5waWNfaCArCisgICAgICAgICAgMiAqICgoeTRtX2N0eC0+cGljX3cgKyAxKSAvIDIpICog
eTRtX2N0eC0+cGljX2g7CiAgICAgICAvKk5hdGl2ZWx5IHN1cHBvcnRlZDogbm8gY29udmVyc2lv
biByZXF1aXJlZC4qLwotICAgICAgX3k0bS0+YXV4X2J1Zl9zeiA9IF95NG0tPmF1eF9idWZfcmVh
ZF9zeiA9IDA7Ci0gICAgICBfeTRtLT5jb252ZXJ0ID0geTRtX2NvbnZlcnRfbnVsbDsKKyAgICAg
IHk0bV9jdHgtPmF1eF9idWZfc3ogPSB5NG1fY3R4LT5hdXhfYnVmX3JlYWRfc3ogPSAwOworICAg
ICAgeTRtX2N0eC0+Y29udmVydCA9IHk0bV9jb252ZXJ0X251bGw7CiAgICAgfQotICB9IGVsc2Ug
aWYgKHN0cmNtcChfeTRtLT5jaHJvbWFfdHlwZSwgIjQyMnAxMCIpID09IDApIHsKLSAgICBfeTRt
LT5zcmNfY19kZWNfaCA9IDI7Ci0gICAgX3k0bS0+c3JjX2NfZGVjX3YgPSAxOwotICAgIF95NG0t
PnZweF9mbXQgPSBWUFhfSU1HX0ZNVF9JNDIyMTY7Ci0gICAgX3k0bS0+YnBzID0gMjA7Ci0gICAg
X3k0bS0+Yml0X2RlcHRoID0gMTA7Ci0gICAgX3k0bS0+ZHN0X2NfZGVjX2ggPSBfeTRtLT5zcmNf
Y19kZWNfaDsKLSAgICBfeTRtLT5kc3RfY19kZWNfdiA9IF95NG0tPnNyY19jX2RlY192OwotICAg
IF95NG0tPmRzdF9idWZfcmVhZF9zeiA9IDIgKiAoX3k0bS0+cGljX3cgKiBfeTRtLT5waWNfaCAr
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyICogKChfeTRtLT5waWNfdyArIDEp
IC8gMikgKiBfeTRtLT5waWNfaCk7Ci0gICAgX3k0bS0+YXV4X2J1Zl9zeiA9IF95NG0tPmF1eF9i
dWZfcmVhZF9zeiA9IDA7Ci0gICAgX3k0bS0+Y29udmVydCA9IHk0bV9jb252ZXJ0X251bGw7Cisg
IH0gZWxzZSBpZiAoc3RyY21wKHk0bV9jdHgtPmNocm9tYV90eXBlLCAiNDIycDEwIikgPT0gMCkg
eworICAgIHk0bV9jdHgtPnNyY19jX2RlY19oID0gMjsKKyAgICB5NG1fY3R4LT5zcmNfY19kZWNf
diA9IDE7CisgICAgeTRtX2N0eC0+dnB4X2ZtdCA9IFZQWF9JTUdfRk1UX0k0MjIxNjsKKyAgICB5
NG1fY3R4LT5icHMgPSAyMDsKKyAgICB5NG1fY3R4LT5iaXRfZGVwdGggPSAxMDsKKyAgICB5NG1f
Y3R4LT5kc3RfY19kZWNfaCA9IHk0bV9jdHgtPnNyY19jX2RlY19oOworICAgIHk0bV9jdHgtPmRz
dF9jX2RlY192ID0geTRtX2N0eC0+c3JjX2NfZGVjX3Y7CisgICAgeTRtX2N0eC0+ZHN0X2J1Zl9y
ZWFkX3N6ID0KKyAgICAgICAgMiAqICh5NG1fY3R4LT5waWNfdyAqIHk0bV9jdHgtPnBpY19oICsK
KyAgICAgICAgICAgICAyICogKCh5NG1fY3R4LT5waWNfdyArIDEpIC8gMikgKiB5NG1fY3R4LT5w
aWNfaCk7CisgICAgeTRtX2N0eC0+YXV4X2J1Zl9zeiA9IHk0bV9jdHgtPmF1eF9idWZfcmVhZF9z
eiA9IDA7CisgICAgeTRtX2N0eC0+Y29udmVydCA9IHk0bV9jb252ZXJ0X251bGw7CiAgICAgaWYg
KG9ubHlfNDIwKSB7CiAgICAgICBmcHJpbnRmKHN0ZGVyciwgIlVuc3VwcG9ydGVkIGNvbnZlcnNp
b24gZnJvbSA0MjJwMTAgdG8gNDIwanBlZ1xuIik7CiAgICAgICByZXR1cm4gLTE7CiAgICAgfQot
ICB9IGVsc2UgaWYgKHN0cmNtcChfeTRtLT5jaHJvbWFfdHlwZSwgIjQyMnAxMiIpID09IDApIHsK
LSAgICBfeTRtLT5zcmNfY19kZWNfaCA9IDI7Ci0gICAgX3k0bS0+c3JjX2NfZGVjX3YgPSAxOwot
ICAgIF95NG0tPnZweF9mbXQgPSBWUFhfSU1HX0ZNVF9JNDIyMTY7Ci0gICAgX3k0bS0+YnBzID0g
MjQ7Ci0gICAgX3k0bS0+Yml0X2RlcHRoID0gMTI7Ci0gICAgX3k0bS0+ZHN0X2NfZGVjX2ggPSBf
eTRtLT5zcmNfY19kZWNfaDsKLSAgICBfeTRtLT5kc3RfY19kZWNfdiA9IF95NG0tPnNyY19jX2Rl
Y192OwotICAgIF95NG0tPmRzdF9idWZfcmVhZF9zeiA9IDIgKiAoX3k0bS0+cGljX3cgKiBfeTRt
LT5waWNfaCArCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyICogKChfeTRtLT5w
aWNfdyArIDEpIC8gMikgKiBfeTRtLT5waWNfaCk7Ci0gICAgX3k0bS0+YXV4X2J1Zl9zeiA9IF95
NG0tPmF1eF9idWZfcmVhZF9zeiA9IDA7Ci0gICAgX3k0bS0+Y29udmVydCA9IHk0bV9jb252ZXJ0
X251bGw7CisgIH0gZWxzZSBpZiAoc3RyY21wKHk0bV9jdHgtPmNocm9tYV90eXBlLCAiNDIycDEy
IikgPT0gMCkgeworICAgIHk0bV9jdHgtPnNyY19jX2RlY19oID0gMjsKKyAgICB5NG1fY3R4LT5z
cmNfY19kZWNfdiA9IDE7CisgICAgeTRtX2N0eC0+dnB4X2ZtdCA9IFZQWF9JTUdfRk1UX0k0MjIx
NjsKKyAgICB5NG1fY3R4LT5icHMgPSAyNDsKKyAgICB5NG1fY3R4LT5iaXRfZGVwdGggPSAxMjsK
KyAgICB5NG1fY3R4LT5kc3RfY19kZWNfaCA9IHk0bV9jdHgtPnNyY19jX2RlY19oOworICAgIHk0
bV9jdHgtPmRzdF9jX2RlY192ID0geTRtX2N0eC0+c3JjX2NfZGVjX3Y7CisgICAgeTRtX2N0eC0+
ZHN0X2J1Zl9yZWFkX3N6ID0KKyAgICAgICAgMiAqICh5NG1fY3R4LT5waWNfdyAqIHk0bV9jdHgt
PnBpY19oICsKKyAgICAgICAgICAgICAyICogKCh5NG1fY3R4LT5waWNfdyArIDEpIC8gMikgKiB5
NG1fY3R4LT5waWNfaCk7CisgICAgeTRtX2N0eC0+YXV4X2J1Zl9zeiA9IHk0bV9jdHgtPmF1eF9i
dWZfcmVhZF9zeiA9IDA7CisgICAgeTRtX2N0eC0+Y29udmVydCA9IHk0bV9jb252ZXJ0X251bGw7
CiAgICAgaWYgKG9ubHlfNDIwKSB7CiAgICAgICBmcHJpbnRmKHN0ZGVyciwgIlVuc3VwcG9ydGVk
IGNvbnZlcnNpb24gZnJvbSA0MjJwMTIgdG8gNDIwanBlZ1xuIik7CiAgICAgICByZXR1cm4gLTE7
CiAgICAgfQotICB9IGVsc2UgaWYgKHN0cmNtcChfeTRtLT5jaHJvbWFfdHlwZSwgIjQxMSIpID09
IDApIHsKLSAgICBfeTRtLT5zcmNfY19kZWNfaCA9IDQ7Ci0gICAgX3k0bS0+ZHN0X2NfZGVjX2gg
PSAyOwotICAgIF95NG0tPnNyY19jX2RlY192ID0gMTsKLSAgICBfeTRtLT5kc3RfY19kZWNfdiA9
IDI7Ci0gICAgX3k0bS0+ZHN0X2J1Zl9yZWFkX3N6ID0gX3k0bS0+cGljX3cgKiBfeTRtLT5waWNf
aDsKKyAgfSBlbHNlIGlmIChzdHJjbXAoeTRtX2N0eC0+Y2hyb21hX3R5cGUsICI0MTEiKSA9PSAw
KSB7CisgICAgeTRtX2N0eC0+c3JjX2NfZGVjX2ggPSA0OworICAgIHk0bV9jdHgtPmRzdF9jX2Rl
Y19oID0gMjsKKyAgICB5NG1fY3R4LT5zcmNfY19kZWNfdiA9IDE7CisgICAgeTRtX2N0eC0+ZHN0
X2NfZGVjX3YgPSAyOworICAgIHk0bV9jdHgtPmRzdF9idWZfcmVhZF9zeiA9IHk0bV9jdHgtPnBp
Y193ICogeTRtX2N0eC0+cGljX2g7CiAgICAgLypDaHJvbWEgZmlsdGVyIHJlcXVpcmVkOiByZWFk
IGludG8gdGhlIGF1eCBidWYgZmlyc3QuCiAgICAgICBXZSBuZWVkIHRvIG1ha2UgdHdvIGZpbHRl
ciBwYXNzZXMsIHNvIHdlIG5lZWQgc29tZSBleHRyYSBzcGFjZSBpbiB0aGUKICAgICAgICBhdXgg
YnVmZmVyLiovCi0gICAgX3k0bS0+YXV4X2J1Zl9yZWFkX3N6ID0gMiAqICgoX3k0bS0+cGljX3cg
KyAzKSAvIDQpICogX3k0bS0+cGljX2g7Ci0gICAgX3k0bS0+YXV4X2J1Zl9zeiA9Ci0gICAgICAg
IF95NG0tPmF1eF9idWZfcmVhZF9zeiArICgoX3k0bS0+cGljX3cgKyAxKSAvIDIpICogX3k0bS0+
cGljX2g7Ci0gICAgX3k0bS0+Y29udmVydCA9IHk0bV9jb252ZXJ0XzQxMV80MjBqcGVnOworICAg
IHk0bV9jdHgtPmF1eF9idWZfcmVhZF9zeiA9IDIgKiAoKHk0bV9jdHgtPnBpY193ICsgMykgLyA0
KSAqIHk0bV9jdHgtPnBpY19oOworICAgIHk0bV9jdHgtPmF1eF9idWZfc3ogPQorICAgICAgICB5
NG1fY3R4LT5hdXhfYnVmX3JlYWRfc3ogKyAoKHk0bV9jdHgtPnBpY193ICsgMSkgLyAyKSAqIHk0
bV9jdHgtPnBpY19oOworICAgIHk0bV9jdHgtPmNvbnZlcnQgPSB5NG1fY29udmVydF80MTFfNDIw
anBlZzsKICAgICBmcHJpbnRmKHN0ZGVyciwgIlVuc3VwcG9ydGVkIGNvbnZlcnNpb24gZnJvbSB5
dXYgNDExXG4iKTsKICAgICByZXR1cm4gLTE7Ci0gIH0gZWxzZSBpZiAoc3RyY21wKF95NG0tPmNo
cm9tYV90eXBlLCAiNDQ0IikgPT0gMCkgewotICAgIF95NG0tPnNyY19jX2RlY19oID0gMTsKLSAg
ICBfeTRtLT5zcmNfY19kZWNfdiA9IDE7CisgIH0gZWxzZSBpZiAoc3RyY21wKHk0bV9jdHgtPmNo
cm9tYV90eXBlLCAiNDQ0IikgPT0gMCkgeworICAgIHk0bV9jdHgtPnNyY19jX2RlY19oID0gMTsK
KyAgICB5NG1fY3R4LT5zcmNfY19kZWNfdiA9IDE7CiAgICAgaWYgKG9ubHlfNDIwKSB7Ci0gICAg
ICBfeTRtLT5kc3RfY19kZWNfaCA9IDI7Ci0gICAgICBfeTRtLT5kc3RfY19kZWNfdiA9IDI7Ci0g
ICAgICBfeTRtLT5kc3RfYnVmX3JlYWRfc3ogPSBfeTRtLT5waWNfdyAqIF95NG0tPnBpY19oOwor
ICAgICAgeTRtX2N0eC0+ZHN0X2NfZGVjX2ggPSAyOworICAgICAgeTRtX2N0eC0+ZHN0X2NfZGVj
X3YgPSAyOworICAgICAgeTRtX2N0eC0+ZHN0X2J1Zl9yZWFkX3N6ID0geTRtX2N0eC0+cGljX3cg
KiB5NG1fY3R4LT5waWNfaDsKICAgICAgIC8qQ2hyb21hIGZpbHRlciByZXF1aXJlZDogcmVhZCBp
bnRvIHRoZSBhdXggYnVmIGZpcnN0LgogICAgICAgICBXZSBuZWVkIHRvIG1ha2UgdHdvIGZpbHRl
ciBwYXNzZXMsIHNvIHdlIG5lZWQgc29tZSBleHRyYSBzcGFjZSBpbiB0aGUKICAgICAgICAgIGF1
eCBidWZmZXIuKi8KLSAgICAgIF95NG0tPmF1eF9idWZfcmVhZF9zeiA9IDIgKiBfeTRtLT5waWNf
dyAqIF95NG0tPnBpY19oOwotICAgICAgX3k0bS0+YXV4X2J1Zl9zeiA9Ci0gICAgICAgICAgX3k0
bS0+YXV4X2J1Zl9yZWFkX3N6ICsgKChfeTRtLT5waWNfdyArIDEpIC8gMikgKiBfeTRtLT5waWNf
aDsKLSAgICAgIF95NG0tPmNvbnZlcnQgPSB5NG1fY29udmVydF80NDRfNDIwanBlZzsKKyAgICAg
IHk0bV9jdHgtPmF1eF9idWZfcmVhZF9zeiA9IDIgKiB5NG1fY3R4LT5waWNfdyAqIHk0bV9jdHgt
PnBpY19oOworICAgICAgeTRtX2N0eC0+YXV4X2J1Zl9zeiA9IHk0bV9jdHgtPmF1eF9idWZfcmVh
ZF9zeiArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCh5NG1fY3R4LT5waWNfdyArIDEp
IC8gMikgKiB5NG1fY3R4LT5waWNfaDsKKyAgICAgIHk0bV9jdHgtPmNvbnZlcnQgPSB5NG1fY29u
dmVydF80NDRfNDIwanBlZzsKICAgICB9IGVsc2UgewotICAgICAgX3k0bS0+dnB4X2ZtdCA9IFZQ
WF9JTUdfRk1UX0k0NDQ7Ci0gICAgICBfeTRtLT5icHMgPSAyNDsKLSAgICAgIF95NG0tPmRzdF9j
X2RlY19oID0gX3k0bS0+c3JjX2NfZGVjX2g7Ci0gICAgICBfeTRtLT5kc3RfY19kZWNfdiA9IF95
NG0tPnNyY19jX2RlY192OwotICAgICAgX3k0bS0+ZHN0X2J1Zl9yZWFkX3N6ID0gMyAqIF95NG0t
PnBpY193ICogX3k0bS0+cGljX2g7CisgICAgICB5NG1fY3R4LT52cHhfZm10ID0gVlBYX0lNR19G
TVRfSTQ0NDsKKyAgICAgIHk0bV9jdHgtPmJwcyA9IDI0OworICAgICAgeTRtX2N0eC0+ZHN0X2Nf
ZGVjX2ggPSB5NG1fY3R4LT5zcmNfY19kZWNfaDsKKyAgICAgIHk0bV9jdHgtPmRzdF9jX2RlY192
ID0geTRtX2N0eC0+c3JjX2NfZGVjX3Y7CisgICAgICB5NG1fY3R4LT5kc3RfYnVmX3JlYWRfc3og
PSAzICogeTRtX2N0eC0+cGljX3cgKiB5NG1fY3R4LT5waWNfaDsKICAgICAgIC8qTmF0aXZlbHkg
c3VwcG9ydGVkOiBubyBjb252ZXJzaW9uIHJlcXVpcmVkLiovCi0gICAgICBfeTRtLT5hdXhfYnVm
X3N6ID0gX3k0bS0+YXV4X2J1Zl9yZWFkX3N6ID0gMDsKLSAgICAgIF95NG0tPmNvbnZlcnQgPSB5
NG1fY29udmVydF9udWxsOworICAgICAgeTRtX2N0eC0+YXV4X2J1Zl9zeiA9IHk0bV9jdHgtPmF1
eF9idWZfcmVhZF9zeiA9IDA7CisgICAgICB5NG1fY3R4LT5jb252ZXJ0ID0geTRtX2NvbnZlcnRf
bnVsbDsKICAgICB9Ci0gIH0gZWxzZSBpZiAoc3RyY21wKF95NG0tPmNocm9tYV90eXBlLCAiNDQ0
cDEwIikgPT0gMCkgewotICAgIF95NG0tPnNyY19jX2RlY19oID0gMTsKLSAgICBfeTRtLT5zcmNf
Y19kZWNfdiA9IDE7Ci0gICAgX3k0bS0+dnB4X2ZtdCA9IFZQWF9JTUdfRk1UX0k0NDQxNjsKLSAg
ICBfeTRtLT5icHMgPSAzMDsKLSAgICBfeTRtLT5iaXRfZGVwdGggPSAxMDsKLSAgICBfeTRtLT5k
c3RfY19kZWNfaCA9IF95NG0tPnNyY19jX2RlY19oOwotICAgIF95NG0tPmRzdF9jX2RlY192ID0g
X3k0bS0+c3JjX2NfZGVjX3Y7Ci0gICAgX3k0bS0+ZHN0X2J1Zl9yZWFkX3N6ID0gMiAqIDMgKiBf
eTRtLT5waWNfdyAqIF95NG0tPnBpY19oOwotICAgIF95NG0tPmF1eF9idWZfc3ogPSBfeTRtLT5h
dXhfYnVmX3JlYWRfc3ogPSAwOwotICAgIF95NG0tPmNvbnZlcnQgPSB5NG1fY29udmVydF9udWxs
OworICB9IGVsc2UgaWYgKHN0cmNtcCh5NG1fY3R4LT5jaHJvbWFfdHlwZSwgIjQ0NHAxMCIpID09
IDApIHsKKyAgICB5NG1fY3R4LT5zcmNfY19kZWNfaCA9IDE7CisgICAgeTRtX2N0eC0+c3JjX2Nf
ZGVjX3YgPSAxOworICAgIHk0bV9jdHgtPnZweF9mbXQgPSBWUFhfSU1HX0ZNVF9JNDQ0MTY7Cisg
ICAgeTRtX2N0eC0+YnBzID0gMzA7CisgICAgeTRtX2N0eC0+Yml0X2RlcHRoID0gMTA7CisgICAg
eTRtX2N0eC0+ZHN0X2NfZGVjX2ggPSB5NG1fY3R4LT5zcmNfY19kZWNfaDsKKyAgICB5NG1fY3R4
LT5kc3RfY19kZWNfdiA9IHk0bV9jdHgtPnNyY19jX2RlY192OworICAgIHk0bV9jdHgtPmRzdF9i
dWZfcmVhZF9zeiA9IDIgKiAzICogeTRtX2N0eC0+cGljX3cgKiB5NG1fY3R4LT5waWNfaDsKKyAg
ICB5NG1fY3R4LT5hdXhfYnVmX3N6ID0geTRtX2N0eC0+YXV4X2J1Zl9yZWFkX3N6ID0gMDsKKyAg
ICB5NG1fY3R4LT5jb252ZXJ0ID0geTRtX2NvbnZlcnRfbnVsbDsKICAgICBpZiAob25seV80MjAp
IHsKICAgICAgIGZwcmludGYoc3RkZXJyLCAiVW5zdXBwb3J0ZWQgY29udmVyc2lvbiBmcm9tIDQ0
NHAxMCB0byA0MjBqcGVnXG4iKTsKICAgICAgIHJldHVybiAtMTsKICAgICB9Ci0gIH0gZWxzZSBp
ZiAoc3RyY21wKF95NG0tPmNocm9tYV90eXBlLCAiNDQ0cDEyIikgPT0gMCkgewotICAgIF95NG0t
PnNyY19jX2RlY19oID0gMTsKLSAgICBfeTRtLT5zcmNfY19kZWNfdiA9IDE7Ci0gICAgX3k0bS0+
dnB4X2ZtdCA9IFZQWF9JTUdfRk1UX0k0NDQxNjsKLSAgICBfeTRtLT5icHMgPSAzNjsKLSAgICBf
eTRtLT5iaXRfZGVwdGggPSAxMjsKLSAgICBfeTRtLT5kc3RfY19kZWNfaCA9IF95NG0tPnNyY19j
X2RlY19oOwotICAgIF95NG0tPmRzdF9jX2RlY192ID0gX3k0bS0+c3JjX2NfZGVjX3Y7Ci0gICAg
X3k0bS0+ZHN0X2J1Zl9yZWFkX3N6ID0gMiAqIDMgKiBfeTRtLT5waWNfdyAqIF95NG0tPnBpY19o
OwotICAgIF95NG0tPmF1eF9idWZfc3ogPSBfeTRtLT5hdXhfYnVmX3JlYWRfc3ogPSAwOwotICAg
IF95NG0tPmNvbnZlcnQgPSB5NG1fY29udmVydF9udWxsOworICB9IGVsc2UgaWYgKHN0cmNtcCh5
NG1fY3R4LT5jaHJvbWFfdHlwZSwgIjQ0NHAxMiIpID09IDApIHsKKyAgICB5NG1fY3R4LT5zcmNf
Y19kZWNfaCA9IDE7CisgICAgeTRtX2N0eC0+c3JjX2NfZGVjX3YgPSAxOworICAgIHk0bV9jdHgt
PnZweF9mbXQgPSBWUFhfSU1HX0ZNVF9JNDQ0MTY7CisgICAgeTRtX2N0eC0+YnBzID0gMzY7Cisg
ICAgeTRtX2N0eC0+Yml0X2RlcHRoID0gMTI7CisgICAgeTRtX2N0eC0+ZHN0X2NfZGVjX2ggPSB5
NG1fY3R4LT5zcmNfY19kZWNfaDsKKyAgICB5NG1fY3R4LT5kc3RfY19kZWNfdiA9IHk0bV9jdHgt
PnNyY19jX2RlY192OworICAgIHk0bV9jdHgtPmRzdF9idWZfcmVhZF9zeiA9IDIgKiAzICogeTRt
X2N0eC0+cGljX3cgKiB5NG1fY3R4LT5waWNfaDsKKyAgICB5NG1fY3R4LT5hdXhfYnVmX3N6ID0g
eTRtX2N0eC0+YXV4X2J1Zl9yZWFkX3N6ID0gMDsKKyAgICB5NG1fY3R4LT5jb252ZXJ0ID0geTRt
X2NvbnZlcnRfbnVsbDsKICAgICBpZiAob25seV80MjApIHsKICAgICAgIGZwcmludGYoc3RkZXJy
LCAiVW5zdXBwb3J0ZWQgY29udmVyc2lvbiBmcm9tIDQ0NHAxMiB0byA0MjBqcGVnXG4iKTsKICAg
ICAgIHJldHVybiAtMTsKICAgICB9Ci0gIH0gZWxzZSBpZiAoc3RyY21wKF95NG0tPmNocm9tYV90
eXBlLCAibW9ubyIpID09IDApIHsKLSAgICBfeTRtLT5zcmNfY19kZWNfaCA9IF95NG0tPnNyY19j
X2RlY192ID0gMDsKLSAgICBfeTRtLT5kc3RfY19kZWNfaCA9IF95NG0tPmRzdF9jX2RlY192ID0g
MjsKLSAgICBfeTRtLT5kc3RfYnVmX3JlYWRfc3ogPSBfeTRtLT5waWNfdyAqIF95NG0tPnBpY19o
OworICB9IGVsc2UgaWYgKHN0cmNtcCh5NG1fY3R4LT5jaHJvbWFfdHlwZSwgIm1vbm8iKSA9PSAw
KSB7CisgICAgeTRtX2N0eC0+c3JjX2NfZGVjX2ggPSB5NG1fY3R4LT5zcmNfY19kZWNfdiA9IDA7
CisgICAgeTRtX2N0eC0+ZHN0X2NfZGVjX2ggPSB5NG1fY3R4LT5kc3RfY19kZWNfdiA9IDI7Cisg
ICAgeTRtX2N0eC0+ZHN0X2J1Zl9yZWFkX3N6ID0geTRtX2N0eC0+cGljX3cgKiB5NG1fY3R4LT5w
aWNfaDsKICAgICAvKk5vIGV4dHJhIHNwYWNlIHJlcXVpcmVkLCBidXQgd2UgbmVlZCB0byBjbGVh
ciB0aGUgY2hyb21hIHBsYW5lcy4qLwotICAgIF95NG0tPmF1eF9idWZfc3ogPSBfeTRtLT5hdXhf
YnVmX3JlYWRfc3ogPSAwOwotICAgIF95NG0tPmNvbnZlcnQgPSB5NG1fY29udmVydF9tb25vXzQy
MGpwZWc7CisgICAgeTRtX2N0eC0+YXV4X2J1Zl9zeiA9IHk0bV9jdHgtPmF1eF9idWZfcmVhZF9z
eiA9IDA7CisgICAgeTRtX2N0eC0+Y29udmVydCA9IHk0bV9jb252ZXJ0X21vbm9fNDIwanBlZzsK
ICAgfSBlbHNlIHsKLSAgICBmcHJpbnRmKHN0ZGVyciwgIlVua25vd24gY2hyb21hIHNhbXBsaW5n
IHR5cGU6ICVzXG4iLCBfeTRtLT5jaHJvbWFfdHlwZSk7CisgICAgZnByaW50ZihzdGRlcnIsICJV
bmtub3duIGNocm9tYSBzYW1wbGluZyB0eXBlOiAlc1xuIiwgeTRtX2N0eC0+Y2hyb21hX3R5cGUp
OwogICAgIHJldHVybiAtMTsKICAgfQogICAvKlRoZSBzaXplIG9mIHRoZSBmaW5hbCBmcmFtZSBi
dWZmZXJzIGlzIGFsd2F5cyBjb21wdXRlZCBmcm9tIHRoZQogICAgICBkZXN0aW5hdGlvbiBjaHJv
bWEgZGVjaW1hdGlvbiB0eXBlLiovCi0gIF95NG0tPmRzdF9idWZfc3ogPQotICAgICAgX3k0bS0+
cGljX3cgKiBfeTRtLT5waWNfaCArCi0gICAgICAyICogKChfeTRtLT5waWNfdyArIF95NG0tPmRz
dF9jX2RlY19oIC0gMSkgLyBfeTRtLT5kc3RfY19kZWNfaCkgKgotICAgICAgICAgICgoX3k0bS0+
cGljX2ggKyBfeTRtLT5kc3RfY19kZWNfdiAtIDEpIC8gX3k0bS0+ZHN0X2NfZGVjX3YpOwotICBp
ZiAoX3k0bS0+Yml0X2RlcHRoID09IDgpCi0gICAgX3k0bS0+ZHN0X2J1ZiA9ICh1bnNpZ25lZCBj
aGFyICopbWFsbG9jKF95NG0tPmRzdF9idWZfc3opOworICB5NG1fY3R4LT5kc3RfYnVmX3N6ID0K
KyAgICAgIHk0bV9jdHgtPnBpY193ICogeTRtX2N0eC0+cGljX2ggKworICAgICAgMiAqICgoeTRt
X2N0eC0+cGljX3cgKyB5NG1fY3R4LT5kc3RfY19kZWNfaCAtIDEpIC8geTRtX2N0eC0+ZHN0X2Nf
ZGVjX2gpICoKKyAgICAgICAgICAoKHk0bV9jdHgtPnBpY19oICsgeTRtX2N0eC0+ZHN0X2NfZGVj
X3YgLSAxKSAvIHk0bV9jdHgtPmRzdF9jX2RlY192KTsKKyAgaWYgKHk0bV9jdHgtPmJpdF9kZXB0
aCA9PSA4KQorICAgIHk0bV9jdHgtPmRzdF9idWYgPSAodW5zaWduZWQgY2hhciAqKW1hbGxvYyh5
NG1fY3R4LT5kc3RfYnVmX3N6KTsKICAgZWxzZQotICAgIF95NG0tPmRzdF9idWYgPSAodW5zaWdu
ZWQgY2hhciAqKW1hbGxvYygyICogX3k0bS0+ZHN0X2J1Zl9zeik7CisgICAgeTRtX2N0eC0+ZHN0
X2J1ZiA9ICh1bnNpZ25lZCBjaGFyICopbWFsbG9jKDIgKiB5NG1fY3R4LT5kc3RfYnVmX3N6KTsK
IAotICBpZiAoX3k0bS0+YXV4X2J1Zl9zeiA+IDApCi0gICAgX3k0bS0+YXV4X2J1ZiA9ICh1bnNp
Z25lZCBjaGFyICopbWFsbG9jKF95NG0tPmF1eF9idWZfc3opOworICBpZiAoeTRtX2N0eC0+YXV4
X2J1Zl9zeiA+IDApCisgICAgeTRtX2N0eC0+YXV4X2J1ZiA9ICh1bnNpZ25lZCBjaGFyICopbWFs
bG9jKHk0bV9jdHgtPmF1eF9idWZfc3opOwogICByZXR1cm4gMDsKIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC95NG1pbnB1dC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC95NG1pbnB1dC5oCmluZGV4IGE0YThi
MThkYzUzZDhkNTIyZmM5NTBiOWU0OTAxNjU2YmJiNmIzOGEuLjU3Mzc1MGQ3NDk5NjAwOTkzZGZi
ZDcxZTk0Mjk2NjYzODk3ZTAxOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgveTRtaW5wdXQuaAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3k0bWlucHV0LmgKQEAgLTU2LDggKzU2LDE2IEBAIHN0cnVjdCB5NG1f
aW5wdXQgewogICB1bnNpZ25lZCBpbnQgYml0X2RlcHRoOwogfTsKIAotaW50IHk0bV9pbnB1dF9v
cGVuKHk0bV9pbnB1dCAqX3k0bSwgRklMRSAqX2ZpbiwgY2hhciAqX3NraXAsIGludCBfbnNraXAs
Ci0gICAgICAgICAgICAgICAgICAgaW50IG9ubHlfNDIwKTsKKy8qKgorICogT3BlbiB0aGUgaW5w
dXQgZmlsZSwgdHJlYXRpbmcgaXQgYXMgWTRNLiB8eTRtX2N0eHwgaXMgZmlsbGVkIGluIGFmdGVy
CisgKiByZWFkaW5nIGl0LiBUaGUgfHNraXBfYnVmZmVyfCBpbmRpY2F0ZXMgYnl0ZXMgdGhhdCB3
ZXJlIHByZXZpb3VzbHkgcmVhZAorICogZnJvbSB8ZmlsZXwsIHRvIGRvIGlucHV0LXR5cGUgZGV0
ZWN0aW9uOyB0aGlzIGJ1ZmZlciB3aWxsIGJlIHJlYWQgYmVmb3JlCisgKiB0aGUgfGZpbGV8IGlz
IHJlYWQuIEl0IGlzIG9mIHNpemUgfG51bV9za2lwfCwgd2hpY2ggKm11c3QqIGJlIDggb3IgbGVz
cy4KKyAqCisgKiBSZXR1cm5zIDAgb24gc3VjY2VzcywgLTEgb24gZmFpbHVyZS4KKyAqLworaW50
IHk0bV9pbnB1dF9vcGVuKHk0bV9pbnB1dCAqeTRtX2N0eCwgRklMRSAqZmlsZSwgY2hhciAqc2tp
cF9idWZmZXIsCisgICAgICAgICAgICAgICAgICAgaW50IG51bV9za2lwLCBpbnQgb25seV80MjAp
Owogdm9pZCB5NG1faW5wdXRfY2xvc2UoeTRtX2lucHV0ICpfeTRtKTsKIGludCB5NG1faW5wdXRf
ZmV0Y2hfZnJhbWUoeTRtX2lucHV0ICpfeTRtLCBGSUxFICpfZmluLCB2cHhfaW1hZ2VfdCAqaW1n
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL2xpYndlYnJ0Yy54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL2xp
YndlYnJ0Yy54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDI5NjQyMmRiMGQ4ZDA5NGNh
YjMyNzA2NzNhYzYyN2M0Njg5OTE5ZDEuLjVhMTM3YjZiMWU3MjFiMjhlMjE5ZTM2NWJmODQ2NTUw
Y2EzMmY1MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9saWJ3ZWJy
dGMueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvbGlid2VicnRjLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTIyMjYsNiArMjIy
Niw4IEBACiAJCTQxRDcyOTEwMjY2NTA5NDEwMDY1MUEwQiAvKiBjaXBoZXJfdHlwZXMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxRDcyOTA3MjY2NTA5
MUEwMDY1MUEwQiAvKiBjaXBoZXJfdHlwZXMuaCAqLzsgfTsKIAkJNDFENzI5MTEyNjY1MDlGQjAw
NjUxQTBCIC8qIGNpcGhlcl90eXBlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNDFENzI5MDcyNjY1MDkxQTAwNjUxQTBCIC8qIGNpcGhlcl90eXBlcy5o
ICovOyB9OwogCQk0MUQ3MjkxMjI2NjUwQTU5MDA2NTFBMEIgLyogYWVzX2djbV9vc3NsLmMgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0REOTBBQTFFNDNE
NTI5MDA2MjFFOTIgLyogYWVzX2djbV9vc3NsLmMgKi87IH07CisJCTQxRDcyOTE1MjY2NTBDQzQw
MDY1MUEwQiAvKiB2cDlfZXh0X3JhdGVjdHJsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA0MUQ3MjkxMzI2NjUwQ0MzMDA2NTFBMEIgLyogdnA5X2V4dF9y
YXRlY3RybC5oICovOyB9OworCQk0MUQ3MjkxNjI2NjUwQ0M0MDA2NTFBMEIgLyogdnA5X2V4dF9y
YXRlY3RybC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NDFENzI5MTQyNjY1MENDNDAwNjUxQTBCIC8qIHZwOV9leHRfcmF0ZWN0cmwuYyAqLzsgfTsKIAkJ
NDFEQjFBOTQyNDMyMTYxNDAwNUFCOEVBIC8qIHJ0Y3N0YXRzX29iamVjdHMuY2MgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MURCMUE5MzI0MzIxNjE0MDA1
QUI4RUEgLyogcnRjc3RhdHNfb2JqZWN0cy5jYyAqLzsgfTsKIAkJNDFEREIyNEQyMTI2NUJENzAw
Mjk2RDQ3IC8qIGZpeGVkX2FycmF5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA0MUREQjI0QjIxMjY1QkQ3MDAyOTZENDcgLyogZml4ZWRfYXJyYXkuaCAq
LzsgfTsKIAkJNDFEREIyNEUyMTI2NUJENzAwMjk2RDQ3IC8qIGlubGluZWRfdmVjdG9yLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MUREQjI0QzIxMjY1
QkQ3MDAyOTZENDcgLyogaW5saW5lZF92ZWN0b3IuaCAqLzsgfTsKQEAgLTY1NjYsNiArNjU2OCw4
IEBACiAJCTQxRDcyOTA1MjY2NTA5MUEwMDY1MUEwQiAvKiBjaXBoZXJfcHJpdi5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBjaXBoZXJfcHJpdi5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk0MUQ3MjkwNjI2NjUwOTFBMDA2NTFBMEIgLyogYWVzX2djbS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBhZXNfZ2NtLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTQxRDcyOTA3MjY2NTA5MUEwMDY1MUEwQiAvKiBjaXBoZXJfdHlwZXMuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gY2lwaGVyX3R5cGVzLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxRDcyOTEzMjY2NTBDQzMwMDY1MUEwQiAvKiB2cDlfZXh0
X3JhdGVjdHJsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IHZwOV9leHRfcmF0
ZWN0cmwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFENzI5MTQyNjY1MENDNDAw
NjUxQTBCIC8qIHZwOV9leHRfcmF0ZWN0cmwuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBw
YXRoID0gdnA5X2V4dF9yYXRlY3RybC5jOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0
MURCMUE5MzI0MzIxNjE0MDA1QUI4RUEgLyogcnRjc3RhdHNfb2JqZWN0cy5jYyAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IHJ0Y3N0YXRzX29iamVjdHMuY2M7IHBhdGggPSBz
dGF0cy9ydGNzdGF0c19vYmplY3RzLmNjOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0
MUREQjI0QjIxMjY1QkQ3MDAyOTZENDcgLyogZml4ZWRfYXJyYXkuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBuYW1lID0gZml4ZWRfYXJyYXkuaDsgcGF0aCA9IGNvbnRhaW5lci9maXhlZF9h
cnJheS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MUREQjI0QzIxMjY1QkQ3MDAy
OTZENDcgLyogaW5saW5lZF92ZWN0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1l
ID0gaW5saW5lZF92ZWN0b3IuaDsgcGF0aCA9IGNvbnRhaW5lci9pbmxpbmVkX3ZlY3Rvci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtOTQ3NSw2ICs5NDc5LDggQEAKIAkJCQk0MTQw
MzY1MDI0QUEzMEE1MDBCQ0U5QjIgLyogdnA5X2V0aHJlYWQuaCAqLywKIAkJCQk0MTQwMzY3MDI0
QUEzMEFEMDBCQ0U5QjIgLyogdnA5X2V4dGVuZC5jICovLAogCQkJCTQxNDAzNjRFMjRBQTMwQTUw
MEJDRTlCMiAvKiB2cDlfZXh0ZW5kLmggKi8sCisJCQkJNDFENzI5MTQyNjY1MENDNDAwNjUxQTBC
IC8qIHZwOV9leHRfcmF0ZWN0cmwuYyAqLywKKwkJCQk0MUQ3MjkxMzI2NjUwQ0MzMDA2NTFBMEIg
LyogdnA5X2V4dF9yYXRlY3RybC5oICovLAogCQkJCTQxNDAzNjgxMjRBQTMwQjQwMEJDRTlCMiAv
KiB2cDlfZmlyc3RwYXNzLmMgKi8sCiAJCQkJNDE0MDM2ODMyNEFBMzBCNTAwQkNFOUIyIC8qIHZw
OV9maXJzdHBhc3MuaCAqLywKIAkJCQk0MTQwMzY4ODI0QUEzMEI2MDBCQ0U5QjIgLyogdnA5X2Zy
YW1lX3NjYWxlLmMgKi8sCkBAIC0xNTQwNSw2ICsxNTQxMSw3IEBACiAJCQkJNDE0MDM3NTUyNEFB
MzBEQTAwQkNFOUIyIC8qIHZwOV9tdnJlZl9jb21tb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTQx
NDAzNkI4MjRBQTMwQjcwMEJDRTlCMiAvKiB2cDlfbm9pc2VfZXN0aW1hdGUuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTQxNDAzNkI5MjRBQTMwQjcwMEJDRTlCMiAvKiB2cDlfbm9uX2dyZWVkeV9tdi5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNDFENzI5MTUyNjY1MENDNDAwNjUxQTBCIC8qIHZwOV9leHRf
cmF0ZWN0cmwuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxNDAzNzNCMjRBQTMwREEwMEJDRTlCMiAv
KiB2cDlfb255eGNfaW50LmggaW4gSGVhZGVycyAqLywKIAkJCQk0MTQwMzZCNzI0QUEzMEI3MDBC
Q0U5QjIgLyogdnA5X3BhcnRpdGlvbl9tb2RlbHMuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxNDAz
NkJBMjRBQTMwQjcwMEJDRTlCMiAvKiB2cDlfcGlja2xwZi5oIGluIEhlYWRlcnMgKi8sCkBAIC0x
NzU0Nyw2ICsxNzU1NCw3IEBACiAJCQkJNDE0MDM2QTgyNEFBMzBCNzAwQkNFOUIyIC8qIHZwOV9h
cV8zNjAuYyBpbiBTb3VyY2VzICovLAogCQkJCTQxNDAzNjlDMjRBQTMwQjYwMEJDRTlCMiAvKiB2
cDlfYXFfY29tcGxleGl0eS5jIGluIFNvdXJjZXMgKi8sCiAJCQkJNDE0MDM2QTAyNEFBMzBCNjAw
QkNFOUIyIC8qIHZwOV9hcV9jeWNsaWNyZWZyZXNoLmMgaW4gU291cmNlcyAqLywKKwkJCQk0MUQ3
MjkxNjI2NjUwQ0M0MDA2NTFBMEIgLyogdnA5X2V4dF9yYXRlY3RybC5jIGluIFNvdXJjZXMgKi8s
CiAJCQkJNDE0MDM2QzgyNEFBMzBCNzAwQkNFOUIyIC8qIHZwOV9hcV92YXJpYW5jZS5jIGluIFNv
dXJjZXMgKi8sCiAJCQkJNDE0MDM2RDUyNEFBMzBCNzAwQkNFOUIyIC8qIHZwOV9iaXRzdHJlYW0u
YyBpbiBTb3VyY2VzICovLAogCQkJCTQxNDAzNzI4MjRBQTMwRDkwMEJDRTlCMiAvKiB2cDlfYmxv
Y2tkLmMgaW4gU291cmNlcyAqLywK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>430718</attachid>
            <date>2021-06-07 00:38:12 -0700</date>
            <delta_ts>2021-06-07 11:11:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-226488-20210607093809.patch</filename>
            <type>text/plain</type>
            <size>2777096</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc4NDUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvQ2hhbmdlTG9nIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL0NoYW5n
ZUxvZwppbmRleCAwMWQ2MzNkZDY1YzgyMzgwZDgzNGVmNDM1M2ExOTI0ZWFmMzllNTQ4Li5iNWUy
YWQ2NTY2MWEyZTMwZDg1M2YyZWVhNGM3Yzc3ZDkwM2VkMGYzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMS0wNi0wNyAgWW91ZW5uIEZh
YmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgVXBkYXRlIGxpYnZweCB0byBNOTIK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNjQ4OAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ01ha2VM
aXN0cy50eHQ6CisgICAgICAgICogU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweDogUmVzeW5jZWQu
CisgICAgICAgICogbGlid2VicnRjLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisKIDIwMjEt
MDYtMDYgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPiBhbmQgVmljdG9yIE0uIEph
cXVleiBMLiA8dmphcXVlekBpZ2FsaWEuY29tPgogCiAgICAgICAgIFVwZGF0ZSBsaWJ5dXYgdG8g
TTkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ01ha2VMaXN0cy50
eHQgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ01ha2VMaXN0cy50eHQKaW5kZXggYzA0
NWM1ZTQyMzhlM2ViZTNjNjc4NGJmZTU5MGZiNDM0NWYzOGZjMy4uMTM4OTkyYWU3MWY0NTIwNTUx
NjQxNjExNzAyODA0YjM1OTA2YTFkNSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9D
TWFrZUxpc3RzLnR4dApAQCAtMjI0Niw2ICsyMjQ2LDcgQEAgaWYgKEFQUExFKQogICAgICAgICBT
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Vu
Y29kZXIuYwogICAgICAgICBTb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2V0aHJlYWQuYwogICAgICAgICBTb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dGVuZC5jCisgICAgICAgIFNvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0X3Jh
dGVjdHJsLmMKICAgICAgICAgU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9maXJzdHBhc3MuYwogICAgICAgICBTb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZyYW1lX3NjYWxlLmMKICAgICAg
ICAgU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9sb29rYWhlYWQuYwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvQlVJTEQuZ24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9CVUlMRC5nbgppbmRleCAzMWEyNmU1YjQ0
MDQ5Y2QwNTY0ZTllNTU5ZGZhMDFlZjU4MzY5NzIyLi5hYjJmZDBiYmFiMDc4YjUyOTI3NDBjMzIw
ZWIwZWIxZDVhYzc5YzNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9CVUlMRC5nbgorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9CVUlMRC5nbgpAQCAtNCw5ICs0
LDExIEBACiAKIGltcG9ydCgiLy9idWlsZC9jb25maWcvYW5kcm9pZC9jb25maWcuZ25pIikKIGlt
cG9ydCgiLy9idWlsZC9jb25maWcvYXJtLmduaSIpCitpbXBvcnQoIi8vYnVpbGQvY29uZmlnL2No
cm9tZW9zL3VpX21vZGUuZ25pIikKK2ltcG9ydCgiLy9idWlsZC9jb25maWcvaW9zL2NvbmZpZy5n
bmkiKQogaW1wb3J0KCIvL2J1aWxkL2NvbmZpZy9zYW5pdGl6ZXJzL3Nhbml0aXplcnMuZ25pIikK
IGltcG9ydCgiLy90aGlyZF9wYXJ0eS9saWJ2cHgvbGlidnB4X3NyY3MuZ25pIikKLWltcG9ydCgi
Ly90aGlyZF9wYXJ0eS95YXNtL3lhc21fYXNzZW1ibGUuZ25pIikKK2ltcG9ydCgiLy90aGlyZF9w
YXJ0eS9uYXNtL25hc21fYXNzZW1ibGUuZ25pIikKIAogIyBTZXRzIHRoZSBhcmNoaXRlY3R1cmUg
bmFtZSBmb3IgYnVpbGRpbmcgbGlidnB4LgogaWYgKGN1cnJlbnRfY3B1ID09ICJ4ODYiKSB7CkBA
IC0xOCw3ICsyMCw3IEBAIGlmIChjdXJyZW50X2NwdSA9PSAieDg2IikgewogICAgIGNwdV9hcmNo
X2Z1bGwgPSAieDY0IgogICB9CiB9IGVsc2UgaWYgKGN1cnJlbnRfY3B1ID09ICJhcm0iKSB7Ci0g
IGlmIChpc19jaHJvbWVvcykgeworICBpZiAoaXNfY2hyb21lb3NfYXNoKSB7CiAgICAgIyBDaHJv
bWVPUyBnZXRzIGhpZ2hiZCB2cDkgYnV0IG90aGVyIGFybSB0YXJnZXRzIGRvIG5vdC4KICAgICBj
cHVfYXJjaF9mdWxsID0gImFybS1uZW9uLWhpZ2hiZCIKICAgfSBlbHNlIGlmIChhcm1fdXNlX25l
b24pIHsKQEAgLTI4LDEyICszMCwxNCBAQCBpZiAoY3VycmVudF9jcHUgPT0gIng4NiIpIHsKICAg
fSBlbHNlIHsKICAgICBjcHVfYXJjaF9mdWxsID0gImFybSIKICAgfQotfSBlbHNlIHsKLSAgaWYg
KGlzX2Nocm9tZW9zKSB7Cit9IGVsc2UgaWYgKGN1cnJlbnRfY3B1ID09ICJhcm02NCIpIHsKKyAg
aWYgKGlzX2Nocm9tZW9zX2FzaCB8fCBpc19tYWMpIHsKICAgICBjcHVfYXJjaF9mdWxsID0gImFy
bTY0LWhpZ2hiZCIKICAgfSBlbHNlIHsKICAgICBjcHVfYXJjaF9mdWxsID0gY3VycmVudF9jcHUK
ICAgfQorfSBlbHNlIHsKKyAgY3B1X2FyY2hfZnVsbCA9IGN1cnJlbnRfY3B1CiB9CiAKIGlmIChp
c19uYWNsKSB7CkBAIC0xMDEsNyArMTA1LDcgQEAgY29uZmlnKCJsaWJ2cHhfZXh0ZXJuYWxfY29u
ZmlnIikgewogfQogCiBpZiAoY3VycmVudF9jcHUgPT0gIng4NiIgfHwgKGN1cnJlbnRfY3B1ID09
ICJ4NjQiICYmICFpc19tc2FuKSkgewotICB5YXNtX2Fzc2VtYmxlKCJsaWJ2cHhfeWFzbSIpIHsK
KyAgbmFzbV9hc3NlbWJsZSgibGlidnB4X2FzbSIpIHsKICAgICBpZiAoY3VycmVudF9jcHUgPT0g
Ing4NiIpIHsKICAgICAgIHNvdXJjZXMgPSBsaWJ2cHhfc3Jjc194ODZfYXNzZW1ibHkKICAgICB9
IGVsc2UgaWYgKGN1cnJlbnRfY3B1ID09ICJ4NjQiKSB7CkBAIC0xMzQsOCArMTM4LDEwIEBAIGlm
IChjdXJyZW50X2NwdSA9PSAieDg2IiB8fCAoY3VycmVudF9jcHUgPT0gIng2NCIgJiYgIWlzX21z
YW4pKSB7CiAgICAgfQogICAgIGlmIChjdXJyZW50X2NwdSA9PSAieDg2IikgewogICAgICAgc291
cmNlcyA9IGxpYnZweF9zcmNzX3g4Nl9tbXgKKyAgICAgIGRlcHMgPSBbICI6bGlidnB4X3g4Nl9o
ZWFkZXJzIiBdCiAgICAgfSBlbHNlIGlmIChjdXJyZW50X2NwdSA9PSAieDY0IikgewogICAgICAg
c291cmNlcyA9IGxpYnZweF9zcmNzX3g4Nl82NF9tbXgKKyAgICAgIGRlcHMgPSBbICI6bGlidnB4
X3g4Nl82NF9oZWFkZXJzIiBdCiAgICAgfQogICB9CiAKQEAgLTE0OCw4ICsxNTQsMTAgQEAgaWYg
KGN1cnJlbnRfY3B1ID09ICJ4ODYiIHx8IChjdXJyZW50X2NwdSA9PSAieDY0IiAmJiAhaXNfbXNh
bikpIHsKICAgICB9CiAgICAgaWYgKGN1cnJlbnRfY3B1ID09ICJ4ODYiKSB7CiAgICAgICBzb3Vy
Y2VzID0gbGlidnB4X3NyY3NfeDg2X3NzZTIKKyAgICAgIGRlcHMgPSBbICI6bGlidnB4X3g4Nl9o
ZWFkZXJzIiBdCiAgICAgfSBlbHNlIGlmIChjdXJyZW50X2NwdSA9PSAieDY0IikgewogICAgICAg
c291cmNlcyA9IGxpYnZweF9zcmNzX3g4Nl82NF9zc2UyCisgICAgICBkZXBzID0gWyAiOmxpYnZw
eF94ODZfNjRfaGVhZGVycyIgXQogICAgIH0KICAgfQogCkBAIC0xNjIsOCArMTcwLDEwIEBAIGlm
IChjdXJyZW50X2NwdSA9PSAieDg2IiB8fCAoY3VycmVudF9jcHUgPT0gIng2NCIgJiYgIWlzX21z
YW4pKSB7CiAgICAgfQogICAgIGlmIChjdXJyZW50X2NwdSA9PSAieDg2IikgewogICAgICAgc291
cmNlcyA9IGxpYnZweF9zcmNzX3g4Nl9zc3NlMworICAgICAgZGVwcyA9IFsgIjpsaWJ2cHhfeDg2
X2hlYWRlcnMiIF0KICAgICB9IGVsc2UgaWYgKGN1cnJlbnRfY3B1ID09ICJ4NjQiKSB7CiAgICAg
ICBzb3VyY2VzID0gbGlidnB4X3NyY3NfeDg2XzY0X3Nzc2UzCisgICAgICBkZXBzID0gWyAiOmxp
YnZweF94ODZfNjRfaGVhZGVycyIgXQogICAgIH0KICAgfQogCkBAIC0xNzUsOCArMTg1LDEwIEBA
IGlmIChjdXJyZW50X2NwdSA9PSAieDg2IiB8fCAoY3VycmVudF9jcHUgPT0gIng2NCIgJiYgIWlz
X21zYW4pKSB7CiAgICAgICBjZmxhZ3MgPSBbICItbXNzZTQuMSIgXQogICAgIH0KICAgICBpZiAo
Y3VycmVudF9jcHUgPT0gIng4NiIpIHsKKyAgICAgIGRlcHMgPSBbICI6bGlidnB4X3g4Nl9oZWFk
ZXJzIiBdCiAgICAgICBzb3VyY2VzID0gbGlidnB4X3NyY3NfeDg2X3NzZTRfMQogICAgIH0gZWxz
ZSBpZiAoY3VycmVudF9jcHUgPT0gIng2NCIpIHsKKyAgICAgIGRlcHMgPSBbICI6bGlidnB4X3g4
Nl82NF9oZWFkZXJzIiBdCiAgICAgICBzb3VyY2VzID0gbGlidnB4X3NyY3NfeDg2XzY0X3NzZTRf
MQogICAgIH0KICAgfQpAQCAtMTkxLDggKzIwMywxMCBAQCBpZiAoY3VycmVudF9jcHUgPT0gIng4
NiIgfHwgKGN1cnJlbnRfY3B1ID09ICJ4NjQiICYmICFpc19tc2FuKSkgewogICAgICAgY2ZsYWdz
ID0gWyAiLW1hdngiIF0KICAgICB9CiAgICAgaWYgKGN1cnJlbnRfY3B1ID09ICJ4ODYiKSB7Cisg
ICAgICBkZXBzID0gWyAiOmxpYnZweF94ODZfaGVhZGVycyIgXQogICAgICAgc291cmNlcyA9IGxp
YnZweF9zcmNzX3g4Nl9hdngKICAgICB9IGVsc2UgaWYgKGN1cnJlbnRfY3B1ID09ICJ4NjQiKSB7
CisgICAgICBkZXBzID0gWyAiOmxpYnZweF94ODZfNjRfaGVhZGVycyIgXQogICAgICAgc291cmNl
cyA9IGxpYnZweF9zcmNzX3g4Nl82NF9hdngKICAgICB9CiAgIH0KQEAgLTIwNyw4ICsyMjEsMTAg
QEAgaWYgKGN1cnJlbnRfY3B1ID09ICJ4ODYiIHx8IChjdXJyZW50X2NwdSA9PSAieDY0IiAmJiAh
aXNfbXNhbikpIHsKICAgICAgIGNmbGFncyA9IFsgIi1tYXZ4MiIgXQogICAgIH0KICAgICBpZiAo
Y3VycmVudF9jcHUgPT0gIng4NiIpIHsKKyAgICAgIGRlcHMgPSBbICI6bGlidnB4X3g4Nl9oZWFk
ZXJzIiBdCiAgICAgICBzb3VyY2VzID0gbGlidnB4X3NyY3NfeDg2X2F2eDIKICAgICB9IGVsc2Ug
aWYgKGN1cnJlbnRfY3B1ID09ICJ4NjQiKSB7CisgICAgICBkZXBzID0gWyAiOmxpYnZweF94ODZf
NjRfaGVhZGVycyIgXQogICAgICAgc291cmNlcyA9IGxpYnZweF9zcmNzX3g4Nl82NF9hdngyCiAg
ICAgfQogICB9CkBAIC0yMzEsOCArMjQ3LDEwIEBAIGlmIChjdXJyZW50X2NwdSA9PSAieDg2IiB8
fCAoY3VycmVudF9jcHUgPT0gIng2NCIgJiYgIWlzX21zYW4pKSB7CiAgICAgICBdCiAgICAgfQog
ICAgIGlmIChjdXJyZW50X2NwdSA9PSAieDg2IikgeworICAgICAgZGVwcyA9IFsgIjpsaWJ2cHhf
eDg2X2hlYWRlcnMiIF0KICAgICAgIHNvdXJjZXMgPSBsaWJ2cHhfc3Jjc194ODZfYXZ4NTEyCiAg
ICAgfSBlbHNlIGlmIChjdXJyZW50X2NwdSA9PSAieDY0IikgeworICAgICAgZGVwcyA9IFsgIjps
aWJ2cHhfeDg2XzY0X2hlYWRlcnMiIF0KICAgICAgIHNvdXJjZXMgPSBsaWJ2cHhfc3Jjc194ODZf
NjRfYXZ4NTEyCiAgICAgfQogICB9CkBAIC0yNDQsNiArMjYyLDcgQEAgaWYgKGNwdV9hcmNoX2Z1
bGwgPT0gImFybS1uZW9uLWNwdS1kZXRlY3QiKSB7CiAgICAgY29uZmlncyArPSBbICI6bGlidnB4
X2NvbmZpZyIgXQogICAgIGNmbGFncyA9IFsgIi1tZnB1PW5lb24iIF0KICAgICBzb3VyY2VzID0g
bGlidnB4X3NyY3NfYXJtX25lb25fY3B1X2RldGVjdF9uZW9uCisgICAgZGVwcyA9IFsgIjpsaWJ2
cHhfYXJtX25lb25fY3B1X2RldGVjdF9oZWFkZXJzIiBdCiAgIH0KIH0KIApAQCAtMzAyLDM5ICsz
MjEsMTAyIEBAIGlmIChjdXJyZW50X2NwdSA9PSAiYXJtIiAmJiBhcm1fYXNzZW1ibHlfc291cmNl
cyAhPSBbXSkgewogICB9CiB9CiAKK3NvdXJjZV9zZXQoImxpYnZweF94ODZfaGVhZGVycyIpIHsK
KyAgc291cmNlcyA9IGxpYnZweF9zcmNzX3g4Nl9oZWFkZXJzCit9CisKK3NvdXJjZV9zZXQoImxp
YnZweF94ODZfNjRfaGVhZGVycyIpIHsKKyAgc291cmNlcyA9IGxpYnZweF9zcmNzX3g4Nl82NF9o
ZWFkZXJzCit9CisKK3NvdXJjZV9zZXQoImxpYnZweF9hcm1faGVhZGVycyIpIHsKKyAgc291cmNl
cyA9IGxpYnZweF9zcmNzX2FybV9oZWFkZXJzCit9CisKK3NvdXJjZV9zZXQoImxpYnZweF9hcm1f
bmVvbl9oZWFkZXJzIikgeworICBzb3VyY2VzID0gbGlidnB4X3NyY3NfYXJtX25lb25faGVhZGVy
cworfQorCitzb3VyY2Vfc2V0KCJsaWJ2cHhfYXJtX25lb25fY3B1X2RldGVjdF9oZWFkZXJzIikg
eworICBzb3VyY2VzID0gbGlidnB4X3NyY3NfYXJtX25lb25fY3B1X2RldGVjdF9oZWFkZXJzCit9
CisKK3NvdXJjZV9zZXQoImxpYnZweF9hcm02NF9oZWFkZXJzIikgeworICBzb3VyY2VzID0gbGli
dnB4X3NyY3NfYXJtNjRfaGVhZGVycworfQorCitzb3VyY2Vfc2V0KCJsaWJ2cHhfYXJtX25lb25f
aGlnaGJkX2hlYWRlcnMiKSB7CisgIHNvdXJjZXMgPSBsaWJ2cHhfc3Jjc19hcm1fbmVvbl9oaWdo
YmRfaGVhZGVycworfQorCitzb3VyY2Vfc2V0KCJsaWJ2cHhfYXJtNjRfaGlnaGJkX2hlYWRlcnMi
KSB7CisgIHNvdXJjZXMgPSBsaWJ2cHhfc3Jjc19hcm02NF9oaWdoYmRfaGVhZGVycworfQorCitz
b3VyY2Vfc2V0KCJsaWJ2cHhfbWlwc19oZWFkZXJzIikgeworICBzb3VyY2VzID0gbGlidnB4X3Ny
Y3NfbWlwc19oZWFkZXJzCit9CisKK3NvdXJjZV9zZXQoImxpYnZweF9uYWNsX2hlYWRlcnMiKSB7
CisgIHNvdXJjZXMgPSBsaWJ2cHhfc3Jjc19uYWNsX2hlYWRlcnMKK30KKworc291cmNlX3NldCgi
bGlidnB4X2dlbmVyaWNfaGVhZGVycyIpIHsKKyAgc291cmNlcyA9IGxpYnZweF9zcmNzX2dlbmVy
aWNfaGVhZGVycworfQorCiBzdGF0aWNfbGlicmFyeSgibGlidnB4IikgewotICBpZiAoIWlzX2Rl
YnVnICYmIGlzX3dpbikgeworICBpZiAoIWlzX2RlYnVnICYmIChpc193aW4gfHwgaXNfY2hyb21l
b3MpKSB7CiAgICAgY29uZmlncyAtPSBbICIvL2J1aWxkL2NvbmZpZy9jb21waWxlcjpkZWZhdWx0
X29wdGltaXphdGlvbiIgXQogICAgIGNvbmZpZ3MgKz0gWyAiLy9idWlsZC9jb25maWcvY29tcGls
ZXI6b3B0aW1pemVfbWF4IiBdCiAgIH0KIAotICBpZiAoaXNfbmFjbCkgeworICAjIEFzICJuYXNt
IiBkb2VzIG5vdCBlbWJlZCB0aGUgcmVxdWlyZWQgTENfQlVJTERfVkVSU0lPTiBzZWN0aW9uIGlu
IG9iamVjdAorICAjIGZpbGVzLCBpdCBpcyBub3QgcG9zc2libGUgdG8gYnVpbGQgb3B0aW1pc2Vk
IHZlcnNpb24gb2YgdGhlIGNvZGUgaWYgdGhlCisgICMgdGFyZ2V0IGlzIGlPUyB1bmRlciAiY2F0
YWx5c3QiIGVudmlyb25tZW50LiBUaGlzIHZlcnNpb24gaXMgbm90IHNoaXBwZWQsCisgICMgc28g
dGhlcmUgaXMgbm8gY29uY2VybiBhYm91dCBwZXJmb3JtYW5jZS4KKyAgIyBUT0RPKGNyYnVnLmNv
bS8xMTQ1MTk3KTogUmVtb3ZlIHRoaXMgZXhjZXB0aW9uIG9uY2UgIm5hc20iIGhhcyBzdXBwb3J0
CisgICMgZm9yIGVtYmVkZGluZyB0aGUgY29ycmVjdCBMRF9CVUlMRF9WRVJTSU9OIHNlY3Rpb24u
CisgIF9mb3JjZV9nZW5lcmljX3NyY3MgPSBpc19pb3MgJiYgdGFyZ2V0X2Vudmlyb25tZW50ID09
ICJjYXRhbHlzdCIKKworICBpZiAoaXNfbmFjbCB8fCBfZm9yY2VfZ2VuZXJpY19zcmNzKSB7CiAg
ICAgc291cmNlcyA9IGxpYnZweF9zcmNzX2dlbmVyaWMKKyAgICBwdWJsaWNfZGVwcyA9IFsgIjps
aWJ2cHhfZ2VuZXJpY19oZWFkZXJzIiBdCiAgIH0gZWxzZSBpZiAoY3VycmVudF9jcHUgPT0gIng4
NiIpIHsKICAgICBzb3VyY2VzID0gbGlidnB4X3NyY3NfeDg2CisgICAgcHVibGljX2RlcHMgPSBb
ICI6bGlidnB4X3g4Nl9oZWFkZXJzIiBdCiAgIH0gZWxzZSBpZiAoY3VycmVudF9jcHUgPT0gIng2
NCIpIHsKICAgICBpZiAoaXNfbXNhbikgewogICAgICAgc291cmNlcyA9IGxpYnZweF9zcmNzX2dl
bmVyaWMKKyAgICAgIHB1YmxpY19kZXBzID0gWyAiOmxpYnZweF9nZW5lcmljX2hlYWRlcnMiIF0K
ICAgICB9IGVsc2UgewogICAgICAgc291cmNlcyA9IGxpYnZweF9zcmNzX3g4Nl82NAorICAgICAg
cHVibGljX2RlcHMgPSBbICI6bGlidnB4X3g4Nl82NF9oZWFkZXJzIiBdCiAgICAgfQogICB9IGVs
c2UgaWYgKGN1cnJlbnRfY3B1ID09ICJtaXBzZWwiIHx8IGN1cnJlbnRfY3B1ID09ICJtaXBzNjRl
bCIpIHsKICAgICBzb3VyY2VzID0gbGlidnB4X3NyY3NfbWlwcworICAgIHB1YmxpY19kZXBzID0g
WyAiOmxpYnZweF9taXBzX2hlYWRlcnMiIF0KICAgfSBlbHNlIGlmIChjdXJyZW50X2NwdSA9PSAi
YXJtIikgewotICAgIGlmIChpc19jaHJvbWVvcykgeworICAgIGlmIChpc19jaHJvbWVvc19hc2gp
IHsKICAgICAgIHNvdXJjZXMgPSBsaWJ2cHhfc3Jjc19hcm1fbmVvbl9oaWdoYmQKKyAgICAgIHB1
YmxpY19kZXBzID0gWyAiOmxpYnZweF9hcm1fbmVvbl9oaWdoYmRfaGVhZGVycyIgXQogICAgIH0g
ZWxzZSBpZiAoYXJtX3VzZV9uZW9uKSB7CiAgICAgICBzb3VyY2VzID0gbGlidnB4X3NyY3NfYXJt
X25lb24KKyAgICAgIHB1YmxpY19kZXBzID0gWyAiOmxpYnZweF9hcm1fbmVvbl9oZWFkZXJzIiBd
CiAgICAgfSBlbHNlIGlmIChpc19hbmRyb2lkKSB7CiAgICAgICBzb3VyY2VzID0gbGlidnB4X3Ny
Y3NfYXJtX25lb25fY3B1X2RldGVjdAorICAgICAgcHVibGljX2RlcHMgPSBbICI6bGlidnB4X2Fy
bV9uZW9uX2NwdV9kZXRlY3RfaGVhZGVycyIgXQogICAgIH0gZWxzZSB7CiAgICAgICBzb3VyY2Vz
ID0gbGlidnB4X3NyY3NfYXJtCisgICAgICBwdWJsaWNfZGVwcyA9IFsgIjpsaWJ2cHhfYXJtX2hl
YWRlcnMiIF0KICAgICB9CiAgIH0gZWxzZSBpZiAoY3VycmVudF9jcHUgPT0gImFybTY0Iikgewot
ICAgIGlmIChpc19jaHJvbWVvcyB8fCBpc193aW4pIHsKKyAgICBpZiAoaXNfY2hyb21lb3NfYXNo
IHx8IGlzX3dpbiB8fCBpc19tYWMpIHsKICAgICAgIHNvdXJjZXMgPSBsaWJ2cHhfc3Jjc19hcm02
NF9oaWdoYmQKKyAgICAgIHB1YmxpY19kZXBzID0gWyAiOmxpYnZweF9hcm02NF9oaWdoYmRfaGVh
ZGVycyIgXQogICAgIH0gZWxzZSB7CiAgICAgICBzb3VyY2VzID0gbGlidnB4X3NyY3NfYXJtNjQK
KyAgICAgIHB1YmxpY19kZXBzID0gWyAiOmxpYnZweF9hcm02NF9oZWFkZXJzIiBdCiAgICAgfQog
ICB9CiAKQEAgLTM0MiwxNyArNDI0LDE5IEBAIHN0YXRpY19saWJyYXJ5KCJsaWJ2cHgiKSB7CiAg
IGNvbmZpZ3MgKz0gWyAiLy9idWlsZC9jb25maWcvY29tcGlsZXI6bm9fY2hyb21pdW1fY29kZSIg
XQogICBjb25maWdzICs9IFsgIjpsaWJ2cHhfY29uZmlnIiBdCiAgIGRlcHMgPSBbXQotICBpZiAo
Y3VycmVudF9jcHUgPT0gIng4NiIgfHwgKGN1cnJlbnRfY3B1ID09ICJ4NjQiICYmICFpc19tc2Fu
KSkgewotICAgIGRlcHMgKz0gWwotICAgICAgIjpsaWJ2cHhfaW50cmluc2ljc19hdngiLAotICAg
ICAgIjpsaWJ2cHhfaW50cmluc2ljc19hdngyIiwKLSAgICAgICI6bGlidnB4X2ludHJpbnNpY3Nf
YXZ4NTEyIiwKLSAgICAgICI6bGlidnB4X2ludHJpbnNpY3NfbW14IiwKLSAgICAgICI6bGlidnB4
X2ludHJpbnNpY3Nfc3NlMiIsCi0gICAgICAiOmxpYnZweF9pbnRyaW5zaWNzX3NzZTRfMSIsCi0g
ICAgICAiOmxpYnZweF9pbnRyaW5zaWNzX3Nzc2UzIiwKLSAgICAgICI6bGlidnB4X3lhc20iLAot
ICAgIF0KKyAgaWYgKCFfZm9yY2VfZ2VuZXJpY19zcmNzKSB7CisgICAgaWYgKGN1cnJlbnRfY3B1
ID09ICJ4ODYiIHx8IChjdXJyZW50X2NwdSA9PSAieDY0IiAmJiAhaXNfbXNhbikpIHsKKyAgICAg
IGRlcHMgKz0gWworICAgICAgICAiOmxpYnZweF9hc20iLAorICAgICAgICAiOmxpYnZweF9pbnRy
aW5zaWNzX2F2eCIsCisgICAgICAgICI6bGlidnB4X2ludHJpbnNpY3NfYXZ4MiIsCisgICAgICAg
ICI6bGlidnB4X2ludHJpbnNpY3NfYXZ4NTEyIiwKKyAgICAgICAgIjpsaWJ2cHhfaW50cmluc2lj
c19tbXgiLAorICAgICAgICAiOmxpYnZweF9pbnRyaW5zaWNzX3NzZTIiLAorICAgICAgICAiOmxp
YnZweF9pbnRyaW5zaWNzX3NzZTRfMSIsCisgICAgICAgICI6bGlidnB4X2ludHJpbnNpY3Nfc3Nz
ZTMiLAorICAgICAgXQorICAgIH0KICAgfQogICBpZiAoY3B1X2FyY2hfZnVsbCA9PSAiYXJtLW5l
b24tY3B1LWRldGVjdCIpIHsKICAgICBkZXBzICs9IFsgIjpsaWJ2cHhfaW50cmluc2ljc19uZW9u
IiBdCkBAIC0zNjYsMyArNDUwLDIyIEBAIHN0YXRpY19saWJyYXJ5KCJsaWJ2cHgiKSB7CiAKICAg
cHVibGljX2NvbmZpZ3MgPSBbICI6bGlidnB4X2V4dGVybmFsX2NvbmZpZyIgXQogfQorCitzdGF0
aWNfbGlicmFyeSgibGlidnA5cmMiKSB7CisgIGlmICghaXNfZGVidWcgJiYgaXNfd2luKSB7Cisg
ICAgY29uZmlncyAtPSBbICIvL2J1aWxkL2NvbmZpZy9jb21waWxlcjpkZWZhdWx0X29wdGltaXph
dGlvbiIgXQorICAgIGNvbmZpZ3MgKz0gWyAiLy9idWlsZC9jb25maWcvY29tcGlsZXI6b3B0aW1p
emVfbWF4IiBdCisgIH0KKworICBzb3VyY2VzID0gWworICAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9yYXRlY3RybF9ydGMuY2MiLAorICAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9yYXRlY3RybF9ydGMuaCIsCisgIF0KKworICBjb25m
aWdzIC09IFsgIi8vYnVpbGQvY29uZmlnL2NvbXBpbGVyOmNocm9taXVtX2NvZGUiIF0KKyAgY29u
ZmlncyArPSBbICIvL2J1aWxkL2NvbmZpZy9jb21waWxlcjpub19jaHJvbWl1bV9jb2RlIiBdCisg
IGNvbmZpZ3MgKz0gWyAiOmxpYnZweF9jb25maWciIF0KKyAgcHVibGljX2RlcHMgPSBbICI6bGli
dnB4IiBdCisKKyAgcHVibGljX2NvbmZpZ3MgPSBbICI6bGlidnB4X2V4dGVybmFsX2NvbmZpZyIg
XQorfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvRElSX01FVEFEQVRBIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvRElSX01FVEFEQVRBCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBjYzdl
NWY0YWMxOTliYWFiZDZiYTEyYjdiMWZmYWZlZmIyYmRlMGYKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9ESVJf
TUVUQURBVEEKQEAgLTAsMCArMSwzIEBACittb25vcmFpbDogeworICBjb21wb25lbnQ6ICJJbnRl
cm5hbHM+TWVkaWE+VmlkZW8iCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9PV05FUlMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9PV05FUlMKaW5kZXggOTRjMjQx
NTljYzI2NTZhNTdiYzU5N2QwNzc4NDQ0MjU0N2Y0MWMyMy4uNjUyNDY3ODYyYzc3NDY5YjUwNTlh
YzAxM2Y3YzIwMjc2OGQ5OWM2YSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvT1dORVJTCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L09XTkVSUwpAQCAtMiw0ICsy
LDMgQEAgdG9tZmluZWdhbkBjaHJvbWl1bS5vcmcKIGpvaGFubmtvZW5pZ0Bnb29nbGUuY29tCiBq
emVybkBjaHJvbWl1bS5vcmcKIGp6ZXJuQGdvb2dsZS5jb20KLSMgQ09NUE9ORU5UOiBJbnRlcm5h
bHM+TWVkaWE+VmlkZW8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L1JFQURNRS5jaHJvbWl1bSBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L1JFQURNRS5jaHJvbWl1bQpp
bmRleCBlN2U4YmQyOTI0YjRkNTRjODg0NzcyYzVlZGRlMTczMGY4ZjUwNzA5Li4zNDViZWQ2MWRh
YWRmYjNiMGUxYTNhZTViZjAxM2U4NDNmYWM5NWQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9SRUFETUUuY2hyb21pdW0K
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvUkVBRE1FLmNocm9taXVtCkBAIC02LDkgKzYsOSBAQCBMaWNlbnNlOiBCU0QKIExpY2Vuc2Ug
RmlsZTogc291cmNlL2xpYnZweC9MSUNFTlNFCiBTZWN1cml0eSBDcml0aWNhbDogeWVzCiAKLURh
dGU6IFdlZG5lc2RheSBNYXJjaCAwNCAyMDIwCitEYXRlOiBGcmlkYXkgSmFudWFyeSAyOSAyMDIx
CiBCcmFuY2g6IG1hc3RlcgotQ29tbWl0OiA1NTMyNzc1ZWZlODA4Y2IwOTQyZTdiOTliZjJmMjMy
YzZjZTk5ZmVlCitDb21taXQ6IDYxZWRlYzFlZmJlYTFjMDJkNzE4NTdlMmFmZjk0MjZkOWNkMmRm
NGUKIAogRGVzY3JpcHRpb246CiBDb250YWlucyB0aGUgc291cmNlcyB1c2VkIHRvIGNvbXBpbGUg
bGlidnB4IGJpbmFyaWVzIHVzZWQgYnkgR29vZ2xlIENocm9tZSBhbmQKQEAgLTMxLDExICszMSwy
NSBAQCBQbGVhc2UgZm9sbG93IHRoZXNlIHN0ZXBzIHRvIHVwZGF0ZSBsaWJ2cHggc291cmNlIGNv
ZGU6CiAKIDIuIEdlbmVyYXRlIC5nbmkgYW5kIGNvbmZpZyBmaWxlcy4KIAotICAgY2QgdGhpcmRf
cGFydHkvbGlidnB4Ci0gICAuL2dlbmVyYXRlX2duaS5zaAorICAgICBjZCB0aGlyZF9wYXJ0eS9s
aWJ2cHgKKyAgICAgLi9nZW5lcmF0ZV9nbmkuc2gKKworICBBbWVuZCB0aGUgY29tbWl0IGNyZWF0
ZWQgYnkgdGhlIGZpcnN0IHN0ZXA6CisKKyAgICAgZ2l0IGNvbW1pdCAtYSAtLWFtZW5kCiAKIDMu
IFVwZGF0ZSAnQnJhbmNoJyBpbiBSRUFETUUuY2hyb21pdW0gaWYgbmVjZXNzYXJ5LgogCis0LiBV
cGxvYWQgdGhlIGNoYW5nZSB0byBHZXJyaXQ6CisKKyAgICAgZ2l0IGNsIHVwbG9hZAorCisgICBS
dW4gdHJ5am9iczoKKworICAgICBnaXQgY2wgdHJ5CisKKzUuIFNlbmQgb3V0IGZvciByZXZpZXcg
d2hlbiBhbGwgdHJ5am9icyBwYXNzLiBTdWJtaXQgaXQgd2hlbiArMSBpcyBncmFudGVkLgorCiBU
b29scyBuZWVkZWQgdG8gYnVpbGQgbGlidnB4OgogCiAtIGdlbmVyYXRlX2duaS5zaApkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvZ2VuZXJhdGVfZ25pLnNoIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvZ2VuZXJhdGVfZ25pLnNoCmluZGV4IGJjZjg0YjBkMjYwMDRhMjYy
MjliN2E3OWFjNTU1N2FjMmY5ZjFiZTguLmI5MzdiOTZkYmQ0NzIxODc2NmEyOTIxYzlhMjM4ZmYw
YjM1OTMzY2MgMTAwNzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L2dlbmVyYXRlX2duaS5zaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9nZW5lcmF0ZV9nbmkuc2gKQEAg
LTExOCw2ICsxMTgsMTUgQEAgZnVuY3Rpb24gY29udmVydF9zcmNzX3RvX3Byb2plY3RfZmlsZXMg
ewogICAjIElnbm9yZSBpbmNsdWRlIGZpbGVzLgogICBzb3VyY2VfbGlzdD0kKGVjaG8gIiRzb3Vy
Y2VfbGlzdCIgfCBncmVwIC12ICd4ODZfYWJpX3N1cHBvcnRcLmFzbScpCiAKKyAgIyBUaGVzZSBo
ZWFkZXJzIGFyZSAjaW5jbHVkZWQgY29uZGl0aW9uYWxseSB3aXRoICNpZiBWUFhfQVJDSF9BUk0g
YW5kCisgICMgc2ltaWxhci4gSG93ZXZlciwgb25seSB0aGUgaGVhZGVyKHMpIHJlbGV2YW50IGZv
ciB0aGUgY3VycmVudCBhcmNoaXRlY3R1cmUKKyAgIyBhcmUgcHJlc2VudCBpbiAkMSwgaGVuY2Ug
ImduIGNoZWNrIiB3aWxsIGRldGVjdCB0aGVtIGFzIGludmFsaWQgaW5jbHVkZXMKKyAgIyB1bmxl
c3MgZXhwbGljaXRseSBhZGRlZC4KKyAgc291cmNlX2xpc3Q9JChlY2hvIC1lICIkc291cmNlX2xp
c3RcXG52cHhfcG9ydHMvYXJtLmgiKQorICBzb3VyY2VfbGlzdD0kKGVjaG8gLWUgIiRzb3VyY2Vf
bGlzdFxcbnZweF9wb3J0cy94ODYuaCIpCisgIHNvdXJjZV9saXN0PSQoZWNobyAtZSAiJHNvdXJj
ZV9saXN0XFxudnB4X3BvcnRzL21pcHMuaCIpCisgIHNvdXJjZV9saXN0PSQoZWNobyAiJHNvdXJj
ZV9saXN0IiB8IHNvcnQgLXUpCisKICAgIyBUaGUgYWN0dWFsIEFSTSBmaWxlcyBlbmQgaW4gLmFz
bS4gV2UgaGF2ZSBydWxlcyB0byB0cmFuc2xhdGUgdGhlbSB0byAuUwogICBzb3VyY2VfbGlzdD0k
KGVjaG8gIiRzb3VyY2VfbGlzdCIgfCBzZWQgcy9cLmFzbVwucyQvLmFzbS8pCiAKQEAgLTE0Miw4
ICsxNTEsOSBAQCBmdW5jdGlvbiBjb252ZXJ0X3NyY3NfdG9fcHJvamVjdF9maWxlcyB7CiAKICAg
IyBXcml0ZSBhIHNpbmdsZSAuZ25pIGZpbGUgdGhhdCBpbmNsdWRlcyBhbGwgc291cmNlIGZpbGVz
IGZvciBhbGwgYXJjaHMuCiAgIGlmIFsgMCAtbmUgJHsjeDg2X2xpc3R9IF07IHRoZW4KLSAgICBs
b2NhbCBjX3NvdXJjZXM9JChlY2hvICIkc291cmNlX2xpc3QiIHwgZWdyZXAgJy4oY3xoKSQnKQot
ICAgIGxvY2FsIGFzc2VtYmx5X3NvdXJjZXM9JChlY2hvICIkc291cmNlX2xpc3QiIHwgZWdyZXAg
Jy5hc20kJykKKyAgICBsb2NhbCBjX3NvdXJjZXM9JChlY2hvICIkc291cmNlX2xpc3QiIHwgZWdy
ZXAgJ1wuYyQnKQorICAgIGxvY2FsIGNfaGVhZGVycz0kKGVjaG8gIiRzb3VyY2VfbGlzdCIgfCBl
Z3JlcCAnXC5oJCcpCisgICAgbG9jYWwgYXNzZW1ibHlfc291cmNlcz0kKGVjaG8gIiRzb3VyY2Vf
bGlzdCIgfCBlZ3JlcCAnXC5hc20kJykKICAgICBsb2NhbCBtbXhfc291cmNlcz0kKGVjaG8gIiRp
bnRyaW5zaWNfbGlzdCIgfCBncmVwICdfbW14XC5jJCcpCiAgICAgbG9jYWwgc3NlMl9zb3VyY2Vz
PSQoZWNobyAiJGludHJpbnNpY19saXN0IiB8IGdyZXAgJ19zc2UyXC5jJCcpCiAgICAgbG9jYWwg
c3NlM19zb3VyY2VzPSQoZWNobyAiJGludHJpbnNpY19saXN0IiB8IGdyZXAgJ19zc2UzXC5jJCcp
CkBAIC0xNTQsNiArMTY0LDcgQEAgZnVuY3Rpb24gY29udmVydF9zcmNzX3RvX3Byb2plY3RfZmls
ZXMgewogICAgIGxvY2FsIGF2eDUxMl9zb3VyY2VzPSQoZWNobyAiJGludHJpbnNpY19saXN0IiB8
IGdyZXAgJ19hdng1MTJcLmMkJykKIAogICAgIHdyaXRlX2duaSBjX3NvdXJjZXMgJDIgIiRCQVNF
X0RJUi9saWJ2cHhfc3Jjcy5nbmkiCisgICAgd3JpdGVfZ25pIGNfaGVhZGVycyAkMl9oZWFkZXJz
ICIkQkFTRV9ESVIvbGlidnB4X3NyY3MuZ25pIgogICAgIHdyaXRlX2duaSBhc3NlbWJseV9zb3Vy
Y2VzICQyX2Fzc2VtYmx5ICIkQkFTRV9ESVIvbGlidnB4X3NyY3MuZ25pIgogICAgIHdyaXRlX2du
aSBtbXhfc291cmNlcyAkMl9tbXggIiRCQVNFX0RJUi9saWJ2cHhfc3Jjcy5nbmkiCiAgICAgd3Jp
dGVfZ25pIHNzZTJfc291cmNlcyAkMl9zc2UyICIkQkFTRV9ESVIvbGlidnB4X3NyY3MuZ25pIgpA
QCAtMTY0LDExICsxNzUsMTMgQEAgZnVuY3Rpb24gY29udmVydF9zcmNzX3RvX3Byb2plY3RfZmls
ZXMgewogICAgIHdyaXRlX2duaSBhdngyX3NvdXJjZXMgJDJfYXZ4MiAiJEJBU0VfRElSL2xpYnZw
eF9zcmNzLmduaSIKICAgICB3cml0ZV9nbmkgYXZ4NTEyX3NvdXJjZXMgJDJfYXZ4NTEyICIkQkFT
RV9ESVIvbGlidnB4X3NyY3MuZ25pIgogICBlbHNlCi0gICAgbG9jYWwgY19zb3VyY2VzPSQoZWNo
byAiJHNvdXJjZV9saXN0IiB8IGVncmVwICcuKGN8aCkkJykKKyAgICBsb2NhbCBjX3NvdXJjZXM9
JChlY2hvICIkc291cmNlX2xpc3QiIHwgZWdyZXAgJ1wuYyQnKQorICAgIGxvY2FsIGNfaGVhZGVy
cz0kKGVjaG8gIiRzb3VyY2VfbGlzdCIgfCBlZ3JlcCAnXC5oJCcpCiAgICAgbG9jYWwgYXNzZW1i
bHlfc291cmNlcz0kKGVjaG8gLWUgIiRzb3VyY2VfbGlzdFxuJGludHJpbnNpY19saXN0IiB8IFwK
LSAgICAgIGVncmVwICcuYXNtJCcpCisgICAgICBlZ3JlcCAnXC5hc20kJykKICAgICBsb2NhbCBu
ZW9uX3NvdXJjZXM9JChlY2hvICIkaW50cmluc2ljX2xpc3QiIHwgZ3JlcCAnX25lb25cLmMkJykK
ICAgICB3cml0ZV9nbmkgY19zb3VyY2VzICQyICIkQkFTRV9ESVIvbGlidnB4X3NyY3MuZ25pIgor
ICAgIHdyaXRlX2duaSBjX2hlYWRlcnMgJDJfaGVhZGVycyAiJEJBU0VfRElSL2xpYnZweF9zcmNz
LmduaSIKICAgICB3cml0ZV9nbmkgYXNzZW1ibHlfc291cmNlcyAkMl9hc3NlbWJseSAiJEJBU0Vf
RElSL2xpYnZweF9zcmNzLmduaSIKICAgICBpZiBbIDAgLW5lICR7I25lb25fc291cmNlc30gXTsg
dGhlbgogICAgICAgd3JpdGVfZ25pIG5lb25fc291cmNlcyAkMl9uZW9uICIkQkFTRV9ESVIvbGli
dnB4X3NyY3MuZ25pIgpAQCAtNDkwLDcgKzUwMyw3IEBAIGlmIFsgLXogJE9OTFlfQ09ORklHUyBd
OyB0aGVuCiAgIG1ha2UgbGlidnB4X3NyY3MudHh0IHRhcmdldD1saWJzICRjb25maWcgPiAvZGV2
L251bGwKICAgY29udmVydF9zcmNzX3RvX3Byb2plY3RfZmlsZXMgbGlidnB4X3NyY3MudHh0IGxp
YnZweF9zcmNzX2FybTY0X2hpZ2hiZAogCi0gIGVjaG8gIkFSTTY0IFdpbmRvd3MgdXNlcyB0aGUg
QVJNNjQgTGludXggSGlnaEJEIHNvdXJjZSBsaXN0LiBObyBuZWVkIHRvIGdlbmVyYXRlIGl0LiIK
KyAgZWNobyAiQVJNNjQgV2luZG93cyBhbmQgTWFjIHVzZSB0aGUgQVJNNjQgTGludXggSGlnaEJE
IHNvdXJjZSBsaXN0LiBObyBuZWVkIHRvIGdlbmVyYXRlIGl0LiIKIAogICBlY2hvICJHZW5lcmF0
ZSBNSVBTIHNvdXJjZSBsaXN0LiIKICAgY29uZmlnPSQocHJpbnRfY29uZmlnX2Jhc2ljIGxpbnV4
L21pcHNlbCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L2xpYnZweF9zcmNzLmduaSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L2xpYnZweF9zcmNzLmduaQppbmRleCBi
ZTc5NmNiNmExNjZkOTIzZjAxZjkzYjllM2VhMDJiYWI4ZjMwNTk1Li5iMTY1YjBmN2M5NDdjYzA1
MWNkMGZmZTA4ZWY5MzY4NzZhZDBjMzZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9saWJ2cHhfc3Jjcy5nbmkKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvbGli
dnB4X3NyY3MuZ25pCkBAIC0yLDc4NyArMiwzMjYgQEAKIAogbGlidnB4X3NyY3NfeDg2ID0gWwog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FsbG9jY29t
bW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2FsbG9jY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2Jsb2NrZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9ibG9ja2QuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vY29lZnVwZGF0ZXByb2JzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9kZWZhdWx0X2NvZWZfcHJvYnMuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZGVxdWFu
dGl6ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9lbnRyb3B5LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2VudHJvcHkuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vZW50cm9weW1vZGUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW1vZGUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW12LmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHltdi5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9leHRlbmQuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZXh0ZW5kLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbHRl
ci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9m
aWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vZmluZG5lYXJtdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9maW5kbmVhcm12LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2dlbmVyaWMvc3lzdGVtZGVwZW5kZW50LmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2hlYWRlci5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pZGN0X2Jsay5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pZGN0bGxt
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2lu
dnRyYW5zLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2xvb3BmaWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vbG9vcGZpbHRlcl9maWx0ZXJzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21icGl0Y2guYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWZxZS5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tb2RlY29udC5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tb2RlY29udC5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tdi5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9vbnl4LmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL29ueXhjX2lu
dC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9v
bnl4ZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9wb3N0cHJvYy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9wb3N0cHJvYy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9wcGZsYWdzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3F1YW50X2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9xdWFudF9jb21tb24uaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRlci5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludGVy
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Jl
Y29uaW50cmEuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vcmVjb25pbnRyYS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhNHg0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcnRjZC5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zZXR1cGludHJhcmVjb24uYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc2V0dXBp
bnRyYXJlY29uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL3N3YXB5djEyYnVmZmVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3N3YXB5djEyYnVmZmVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3N5c3RlbWRlcGVuZGVudC5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90aHJlYWRpbmcuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdHJlZWNv
ZGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L3RyZWVjb2Rlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi92cDhfZW50cm9weW1vZGVkYXRhLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9sb29wZmlsdGVyLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92cDhf
c2tpbl9kZXRlY3Rpb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24veDg2L2xvb3BmaWx0ZXJfeDg2LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni92cDhfYXNtX3N0dWJzLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kYm9vbGh1ZmYuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2Rib29s
aHVmZi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29k
ZXIvZGVjb2RlZnJhbWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9kZWNvZGVyL2RlY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVtdi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlcnRocmVhZGluZy5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGV0b2tlbml6ZS5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGV0b2tl
bml6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29k
ZXIvb255eGRfaWYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9kZWNvZGVyL29ueXhkX2ludC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2RlY29kZXIvdGhyZWFkaW5nLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZGVjb2Rlci90cmVlcmVhZGVyLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0uYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2JpdHN0cmVhbS5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYmxvY2su
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jv
b2xodWZmLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9ib29saHVmZi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvY29weV9jLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9kY3QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL2RjdF92YWx1ZV9jb3N0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3RfdmFsdWVfdG9rZW5zLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZWZhdWx0Y29l
ZmNvdW50cy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvZGVub2lzaW5nLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWZyYW1lLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVmcmFtZS5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlaW50cmEuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29k
ZWludHJhLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9lbmNvZGVtYi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvZW5jb2RlbWIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtdi5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZXRocmVhZGluZy5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZXRocmVhZGluZy5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZmlyc3Rw
YXNzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9sb29rYWhlYWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL2xvb2thaGVhZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL21jb21wLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tb2RlY29zdHMuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVjb3N0cy5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbXJfZGlzc2ltLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tcl9kaXNz
aW0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L29ueXhfaWYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL29ueXhfaW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9waWNraW50ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tpbnRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xwZi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xwZi5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcXVhbnRpemUuaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJs
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9y
YXRlY3RybC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvcmRvcHQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL3Jkb3B0LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9zZWdtZW50YXRpb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3NlZ21lbnRhdGlvbi5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdG9rZW5pemUuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Rva2VuaXplLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci90cmVld3Jp
dGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci90cmVld3JpdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci92cDhfcXVhbnRpemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC92cDhfY3hfaWZhY2UuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC92cDhfZHhfaWZhY2UuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2FsbG9jY29tbW9uLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9hbGxvY2NvbW1vbi5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
YmxvY2tkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9ibG9ja2QuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uX2RhdGEuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbl9kYXRhLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9lbnRyb3B5LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltdi5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW12
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9lbnVtcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfZmlsdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9maWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2lk
Y3QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X2lkY3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X2xvb3BmaWx0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21mcWUuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21mcWUuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X212LmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdnJlZl9j
b21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X212cmVmX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfb255eGNfaW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0cHJvYy5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcG9zdHByb2MuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3BwZmxh
Z3MuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X3ByZWRfY29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9uLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9xdWFudF9jb21tb24u
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X3JlY29uaW50ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X3JlY29uaW50ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3J0Y2QuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Nj
YWxlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9zY2FsZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfc2Nhbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGhyZWFkX2Nv
bW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfdGhyZWFkX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9jb21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RpbGVfY29tbW9uLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlZnJh
bWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVy
L3ZwOV9kZWNvZGVmcmFtZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlbXYuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVyLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rl
ci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIv
dnA5X2RldG9rZW5pemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9kZWNvZGVyL3ZwOV9kZXRva2VuaXplLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1YmV4cC5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RzdWJleHAuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9qb2JfcXVl
dWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVy
L3ZwOV9qb2JfcXVldWUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9hcV9jeWNsaWNyZWZyZXNoLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVzaC5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Jp
dHN0cmVhbS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2JpdHN0cmVhbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Jsb2NrLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVl
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfY29zdC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2Nvc3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9kY3QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Rlbm9pc2VyLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlZnJhbWUu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9lbmNvZGVmcmFtZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2VuY29kZW1iLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW12
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfZW5jb2Rlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2VuY29kZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXRocmVhZC5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dF9yYXRlY3RybC5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2V4dGVuZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2V4dGVuZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2ZpcnN0cGFzcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZyYW1lX3NjYWxlLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfam9iX3F1ZXVlLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
bG9va2FoZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfbG9va2FoZWFkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWJncmFwaC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21jb21wLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWNvbXAuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tdWx0aV90
aHJlYWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9tdWx0aV90aHJlYWQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
cGFydGl0aW9uX21vZGVscy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3BpY2tscGYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbHBmLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja21vZGUuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbW9k
ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3F1YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfcXVhbnRpemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJsLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmQuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZC5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X3Jkb3B0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfcmRvcHQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50
YXRpb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9za2luX2RldGVjdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRfZmVhdHVyZXMu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9zcGVlZF9mZWF0dXJlcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRleHQuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9z
dmNfbGF5ZXJjb250ZXh0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfdGVtcG9yYWxfZmlsdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdG9rZW5pemUuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90b2tlbml6ZS5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X3RyZWV3cml0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV90cmVld3JpdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1vbi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9pbnRlcm5hbC92cHhfY29k
ZWNfaW50ZXJuYWwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eC9zcmMvdnB4X2NvZGVjLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvc3JjL3ZweF9kZWNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvc3JjL3ZweF9lbmNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9pbWFnZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4L3ZwOGN4LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvdnA4ZHguaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC92cHhfY29kZWMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC92cHhfZGVjb2Rlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4L3ZweF9lbmNvZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvdnB4X2ZyYW1lX2J1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbWFnZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbnRlZ2VyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FkZF9ub2lzZS5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hdmcuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlci5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9i
dWZmZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
Yml0d3JpdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2JpdHdyaXRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9iaXR3cml0ZXJfYnVmZmVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlcl9idWZmZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvZGVibG9jay5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnRyYXByZWQuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbG9vcGZpbHRl
ci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wb3N0
cHJvYy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9w
cm9iLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3By
b2IuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHNu
ci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wc25y
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50
aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1
YW50aXplLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3NhZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9z
a2luX2RldGVjdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9za2luX2RldGVjdGlvbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9zdWJ0cmFjdC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9zdW1fc3F1YXJlcy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC90eGZtX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2NvbnZvbHZl
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9k
c3BfY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3ZweF9kc3BfcnRjZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC92cHhfZmlsdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL3g4Ni9iaXRkZXB0aF9jb252ZXJzaW9uX2F2eDIuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2JpdGRlcHRoX2NvbnZl
cnNpb25fc3NlMi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC94ODYvY29udm9sdmUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AveDg2L2NvbnZvbHZlX2F2eDIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2NvbnZvbHZlX3NzZTIuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2NvbnZvbHZlX3Nzc2UzLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9md2Rf
ZGN0MzJ4MzJfaW1wbF9hdngyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3g4Ni9md2RfZGN0MzJ4MzJfaW1wbF9zc2UyLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9md2RfdHhmbV9pbXBsX3NzZTIu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2Z3
ZF90eGZtX3NzZTIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AveDg2L2hpZ2hiZF9pbnZfdHhmbV9zc2UyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9oaWdoYmRfaW52X3R4Zm1fc3NlNC5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaW52X3R4Zm1f
c3NlMi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94
ODYvaW52X3R4Zm1fc3NzZTMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AveDg2L21lbV9zc2UyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9xdWFudGl6ZV9zc2UyLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9xdWFudGl6ZV9zc3NlMy5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdHJhbnNwb3Nl
X3NzZTIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
eDg2L3R4Zm1fY29tbW9uX3NzZTIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9tZW0vaW5jbHVkZS92cHhfbWVtX2ludHJubC5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS92cHhfbWVtLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVtL3ZweF9tZW0uaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9iaXRvcHMuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9jb21waWxlcl9hdHRyaWJ1
dGVzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMv
ZW1taW50cmluX2NvbXBhdC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3BvcnRzL21lbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3BvcnRzL21lbV9vcHMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9wb3J0cy9tZW1fb3BzX2FsaWduZWQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9tc3ZjLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvc3RhdGljX2Fzc2VydC5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3N5c3RlbV9zdGF0ZS5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3ZweF9vbmNl
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4
X3RpbWVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9y
dHMveDg2LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2Nh
bGUvZ2VuZXJpYy9nZW5fc2NhbGVycy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X3NjYWxlL2dlbmVyaWMvdnB4X3NjYWxlLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95djEyY29uZmlnLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95
djEyZXh0ZW5kLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
c2NhbGUvdnB4X3NjYWxlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfc2NhbGUvdnB4X3NjYWxlX3J0Y2QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9zY2FsZS95djEyY29uZmlnLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC9lbmRpYW5faW5sLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfYXRvbWljcy5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RocmVhZC5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RocmVh
ZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4
X3RpbWVzdGFtcC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X3V0aWwvdnB4X3dyaXRlX3l1dl9mcmFtZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3dyaXRlX3l1dl9mcmFtZS5oIiwKLV0KLWxpYnZweF9z
cmNzX3g4Nl9hc3NlbWJseSA9IFsKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi94ODYvZGVxdWFudGl6ZV9tbXguYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvaWRjdGxsbV9tbXguYXNtIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvaWRjdGxs
bV9zc2UyLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24veDg2L2l3YWxzaF9zc2UyLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2xvb3BmaWx0ZXJfc3NlMi5hc20iLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9tZnFlX3NzZTIuYXNt
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYv
cmVjb25fbW14LmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24veDg2L3JlY29uX3NzZTIuYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvc3VicGl4ZWxfbW14LmFzbSIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L3N1YnBpeGVsX3NzZTIu
YXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94
ODYvc3VicGl4ZWxfc3NzZTMuYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIveDg2L2Jsb2NrX2Vycm9yX3NzZTIuYXNtIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2L2NvcHlfc3NlMi5hc20i
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci94ODYv
Y29weV9zc2UzLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL3g4Ni9kY3Rfc3NlMi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci94ODYvZndhbHNoX3NzZTIuYXNtIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi94ODYvdnA5X21mcWVfc3NlMi5h
c20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci94
ODYvdnA5X2RjdF9zc2UyLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3g4Ni92cDlfZXJyb3Jfc3NlMi5hc20iLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9hZGRfbm9pc2Vfc3NlMi5hc20iLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9kZWJsb2Nr
X3NzZTIuYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC94ODYvaGlnaGJkX2ludHJhcHJlZF9zc2UyLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9zYWQ0ZF9zc2UyLmFzbSIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9zYWRf
c3NlMi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3g4Ni9oaWdoYmRfc3VicGVsX3ZhcmlhbmNlX2ltcGxfc3NlMi5hc20iLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9oaWdoYmRfdmFyaWFuY2VfaW1w
bF9zc2UyLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AveDg2L2ludHJhcHJlZF9zc2UyLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AveDg2L2ludHJhcHJlZF9zc3NlMy5hc20iLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9pbnZfd2h0X3NzZTIuYXNtIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvc2FkNGRf
c3NlMi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3g4Ni9zYWRfc3NlMi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3g4Ni9zYWRfc3NlMy5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zYWRfc3NlNC5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zYWRfc3NzZTMuYXNtIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvc3VicGVsX3ZhcmlhbmNl
X3NzZTIuYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC94ODYvc3VidHJhY3Rfc3NlMi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL3g4Ni92cHhfY29udm9sdmVfY29weV9zc2UyLmFzbSIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9oaWdoX3N1YnBp
eGVsXzh0X3NzZTIuYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC94ODYvdnB4X2hpZ2hfc3VicGl4ZWxfYmlsaW5lYXJfc3NlMi5hc20iLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92cHhfc3VicGl4ZWxf
OHRfc3NlMi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3g4Ni92cHhfc3VicGl4ZWxfOHRfc3NzZTMuYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X3N1YnBpeGVsX2JpbGluZWFyX3NzZTIu
YXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYv
dnB4X3N1YnBpeGVsX2JpbGluZWFyX3Nzc2UzLmFzbSIsCi1dCi1saWJ2cHhfc3Jjc194ODZfbW14
ID0gWwotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4
Ni9pZGN0X2Jsa19tbXguYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9wb3J0cy9lbW1zX21teC5jIiwKIF0KLWxpYnZweF9zcmNzX3g4Nl9zc2UyID0gWwotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9iaWxpbmVh
cl9maWx0ZXJfc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi94ODYvaWRjdF9ibGtfc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2L2Rlbm9pc2luZ19zc2UyLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci94ODYvdnA4X2VuY19z
dHVic19zc2UyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci94ODYvdnA4X3F1YW50aXplX3NzZTIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24veDg2L3ZwOV9pZGN0X2ludHJpbl9zc2UyLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci94ODYvdnA5
X2RjdF9pbnRyaW5fc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIveDg2L3ZwOV9kZW5vaXNlcl9zc2UyLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci94ODYvdnA5X2hpZ2hiZF9ibG9ja19l
cnJvcl9pbnRyaW5fc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIveDg2L3ZwOV9xdWFudGl6ZV9zc2UyLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9hdmdfaW50cmluX3NzZTIuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2F2Z19wcmVk
X3NzZTIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
eDg2L2Z3ZF90eGZtX3NzZTIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9pZGN0MTZ4MTZfYWRkX3NzZTIuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9pZGN0MzJ4MzJf
YWRkX3NzZTIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AveDg2L2hpZ2hiZF9pZGN0NHg0X2FkZF9zc2UyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9oaWdoYmRfaWRjdDh4OF9hZGRfc3NlMi5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJk
X2ludHJhcHJlZF9pbnRyaW5fc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX2xvb3BmaWx0ZXJfc3NlMi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX3F1YW50aXpl
X2ludHJpbl9zc2UyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3g4Ni9oaWdoYmRfdmFyaWFuY2Vfc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaW52X3R4Zm1fc3NlMi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvbG9vcGZpbHRlcl9zc2Uy
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9w
b3N0X3Byb2Nfc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC94ODYvcXVhbnRpemVfc3NlMi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvc3VtX3NxdWFyZXNfc3NlMi5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdmFyaWFuY2Vfc3NlMi5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X3N1
YnBpeGVsXzR0X2ludHJpbl9zc2UyLmMiLAotXQotbGlidnB4X3NyY3NfeDg2X3NzZTMgPSBbXQot
bGlidnB4X3NyY3NfeDg2X3Nzc2UzID0gWwotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci94ODYvdnA4X3F1YW50aXplX3Nzc2UzLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci94ODYvdnA5X2ZyYW1lX3Nj
YWxlX3Nzc2UzLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3g4Ni9oaWdoYmRfaW50cmFwcmVkX2ludHJpbl9zc3NlMy5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaW52X3R4Zm1fc3NzZTMuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3F1YW50aXpl
X3Nzc2UzLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3g4Ni92cHhfc3VicGl4ZWxfOHRfaW50cmluX3Nzc2UzLmMiLAotXQotbGlidnB4X3NyY3NfeDg2
X3NzZTRfMSA9IFsKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIveDg2L3F1YW50aXplX3NzZTQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24veDg2L3ZwOV9oaWdoYmRfaWh0MTZ4MTZfYWRkX3NzZTQuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24veDg2L3Zw
OV9oaWdoYmRfaWh0NHg0X2FkZF9zc2U0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3g4Ni92cDlfaGlnaGJkX2lodDh4OF9hZGRfc3NlNC5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJk
X2lkY3QxNngxNl9hZGRfc3NlNC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX2lkY3QzMngzMl9hZGRfc3NlNC5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX2lkY3Q0eDRf
YWRkX3NzZTQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AveDg2L2hpZ2hiZF9pZGN0OHg4X2FkZF9zc2U0LmMiLAotXQotbGlidnB4X3NyY3NfeDg2X2F2
eCA9IFsKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
eDg2L3ZwOV9kaWFtb25kX3NlYXJjaF9zYWRfYXZ4LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9xdWFudGl6ZV9hdnguYyIsCi1dCi1saWJ2cHhf
c3Jjc194ODZfYXZ4MiA9IFsKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIveDg2L3ZwOV9lcnJvcl9hdngyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci94ODYvdnA5X3F1YW50aXplX2F2eDIuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2F2Z19pbnRy
aW5fYXZ4Mi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC94ODYvZndkX3R4Zm1fYXZ4Mi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX2NvbnZvbHZlX2F2eDIuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2xvb3BmaWx0ZXJfYXZ4Mi5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvc2FkNGRf
YXZ4Mi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94
ODYvc2FkX2F2eDIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AveDg2L3ZhcmlhbmNlX2F2eDIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9zdWJwaXhlbF84dF9pbnRyaW5fYXZ4Mi5jIiwKLV0K
LWxpYnZweF9zcmNzX3g4Nl9hdng1MTIgPSBbXQotbGlidnB4X3NyY3NfeDg2XzY0ID0gWwotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FsbG9jY29tbW9u
LmMiLAorbGlidnB4X3NyY3NfeDg2X2hlYWRlcnMgPSBbCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYWxsb2Njb21tb24uaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYmxvY2tkLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Jsb2NrZC5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9jb2VmdXBkYXRlcHJv
YnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
Y29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2RlZmF1bHRfY29lZl9wcm9icy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9kZXF1YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHkuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weS5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9k
ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9l
bnRyb3B5bXYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vZW50cm9weW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2V4dGVuZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9leHRlbmQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vZmlsdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbHRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbmRuZWFybXYuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZ2VuZXJpYy9zeXN0
ZW1kZXBlbmRlbnQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vaGVhZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2lkY3RfYmxrLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2lkY3RsbG0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaW52dHJhbnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbG9vcGZpbHRlci5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29wZmlsdGVyX2ZpbHRlcnMu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWJw
aXRjaC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9tZnFlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL21vZGVjb250LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL21vZGVjb250LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL212LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL29ueXguaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vb255eGNfaW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL29ueXhkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3BwZmxhZ3MuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcXVhbnRfY29tbW9u
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1
YW50X2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9yZWNvbmludGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3JlY29uaW50ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYS5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25p
bnRyYTR4NC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9ydGNkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL3NldHVwaW50cmFyZWNvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9zZXR1cGludHJhcmVjb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZmZXIuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZm
ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
c3lzdGVtZGVwZW5kZW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3RocmVhZGluZy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi90cmVlY29kZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdHJlZWNvZGVyLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9lbnRyb3B5bW9kZWRhdGEuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X2xv
b3BmaWx0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vdnA4X3NraW5fZGV0ZWN0aW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvbG9vcGZpbHRlcl94ODYu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2
L3ZwOF9hc21fc3R1YnMuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9kZWNvZGVyL2Rib29saHVmZi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZmLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVmcmFtZS5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlbXYuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZW12Lmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNv
ZGVydGhyZWFkaW5nLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZGVjb2Rlci9kZXRva2VuaXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZGVjb2Rlci9kZXRva2VuaXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9vbnl4ZF9pZi5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvb255eGRfaW50LmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci90aHJlYWRpbmcuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL3RyZWVy
ZWFkZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL2JpdHN0cmVhbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvYml0c3RyZWFtLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9ibG9jay5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYm9vbGh1ZmYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jvb2xodWZmLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9jb3B5X2MuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RjdC5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGN0X3ZhbHVlX2Nv
c3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L2RjdF92YWx1ZV90b2tlbnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL2RlZmF1bHRjb2VmY291bnRzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rlbm9pc2luZy5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlZnJh
bWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L2VuY29kZWZyYW1lLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9lbmNvZGVpbnRyYS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlaW50cmEuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW1iLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtYi5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbXYuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29k
ZW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9ldGhyZWFkaW5nLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9ldGhyZWFkaW5nLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9maXJzdHBhc3MuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbG9va2FoZWFkLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tY29tcC5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVj
b3N0cy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvbW9kZWNvc3RzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9tcl9kaXNzaW0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL21yX2Rpc3NpbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pZi5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pbnQuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tpbnRlci5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2ludGVy
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9w
aWNrbHBmLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9waWNrbHBmLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9xdWFudGl6ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yZG9wdC5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmRvcHQuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3NlZ21lbnRhdGlvbi5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvc2VnbWVu
dGF0aW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci90b2tlbml6ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvdG9rZW5pemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3ZwOF9xdWFudGl6ZS5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3ZwOF9jeF9pZmFjZS5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3ZwOF9keF9pZmFjZS5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
YWxsb2Njb21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X2FsbG9jY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9ibG9ja2QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Jsb2NrZC5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb25f
ZGF0YS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfY29tbW9uX2RhdGEuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHkuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHkuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltb2RlLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5
bW9kZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfZW50cm9weW12LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bXYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudW1zLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9maWx0ZXIuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZpbHRlci5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZnJhbWVf
YnVmZmVycy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfZnJhbWVfYnVmZmVycy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfaWRjdC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfaWRjdC5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbG9vcGZpbHRlci5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbG9vcGZpbHRl
ci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfbWZxZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfbWZxZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfbXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X212cmVmX2NvbW1vbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbXZyZWZfY29tbW9uLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9vbnl4Y19pbnQu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X3Bvc3Rwcm9jLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9wb3N0cHJvYy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfcHBmbGFncy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcHJlZF9jb21tb24uYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3ByZWRfY29tbW9uLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9x
dWFudF9jb21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X3F1YW50X2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRlci5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRlci5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25p
bnRyYS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfcmVjb25pbnRyYS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfcnRjZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2NhbGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NjYWxlLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FuLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FuLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zZWdfY29t
bW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9zZWdfY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV90aHJlYWRfY29tbW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aHJlYWRfY29tbW9uLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aWxlX2NvbW1v
bi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfdGlsZV9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVmcmFtZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZWZyYW1lLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlbXYuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9k
ZWNvZGVtdi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Rl
Y29kZXIvdnA5X2RlY29kZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGV0b2tlbml6ZS5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RldG9rZW5pemUuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9k
c3ViZXhwLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVj
b2Rlci92cDlfZHN1YmV4cC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2RlY29kZXIvdnA5X2pvYl9xdWV1ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2pvYl9xdWV1ZS5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2FxX2N5Y2xpY3JlZnJl
c2guYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9hcV9jeWNsaWNyZWZyZXNoLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfYml0c3RyZWFtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYml0c3RyZWFtLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYmxvY2suaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9j
b250ZXh0X3RyZWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9jb250ZXh0X3RyZWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9jb3N0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29zdC5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2RjdC5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Rlbm9pc2Vy
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfZGVub2lzZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9lbmNvZGVmcmFtZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZWZyYW1lLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNv
ZGVtYi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2VuY29kZW12LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2Rlci5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V0aHJlYWQu
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9ldGhyZWFkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfZXh0ZW5kLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZmlyc3RwYXNzLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
ZnJhbWVfc2NhbGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9qb2JfcXVldWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tYmdyYXBo
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfbWNvbXAuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9tY29tcC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X211bHRpX3RocmVhZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X211bHRpX3RocmVhZC5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2Vz
dGltYXRlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfbm9pc2VfZXN0aW1hdGUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9wYXJ0aXRpb25fbW9kZWxzLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja2xwZi5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Bp
Y2tscGYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9waWNrbW9kZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3BpY2ttb2RlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcXVhbnRpemUuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9xdWFudGl6ZS5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVj
dHJsLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfcmF0ZWN0cmwuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9yZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZG9wdC5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jlc2l6ZS5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jlc2l6
ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3NlZ21lbnRhdGlvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3NlZ21lbnRhdGlvbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc2tpbl9k
ZXRlY3Rpb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9zcGVlZF9mZWF0dXJlcy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3Vi
ZXhwLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfc3ZjX2xheWVyY29udGV4dC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRleHQuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90ZW1wb3JhbF9maWx0
ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV90b2tlbml6ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3Rva2VuaXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3RyZWV3cml0ZXIuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfY3hfaWZhY2UuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfY3hfaWZhY2Uu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfZHhfaWZh
Y2UuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfZHhf
aWZhY2UuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlf
aWZhY2VfY29tbW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvdnA5X2lmYWNlX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4L2ludGVybmFsL3ZweF9jb2RlY19pbnRlcm5hbC5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfY29kZWMuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2RlY29kZXIuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2VuY29kZXIuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2ltYWdl
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnA4LmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnA4Y3guaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cDhkeC5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9jb2RlYy5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9kZWNvZGVyLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2VuY29kZXIuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZXh0X3JhdGVjdHJsLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2ZyYW1lX2J1
ZmZlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9p
bWFnZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9p
bnRlZ2VyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2FkZF9ub2lzZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9hdmcuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYml0cmVhZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2JpdHJlYWRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9idWZmZXIuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlci5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXJfYnVmZmVy
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdy
aXRlcl9idWZmZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvZGVibG9jay5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9md2RfdHhmbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9md2RfdHhmbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9pbnRyYXByZWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbG9vcGZpbHRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wb3N0cHJvYy5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wcm9iLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Byb2IuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHNuci5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wc25yLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50aXplLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50aXplLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NhZC5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2luX2RldGVjdGlvbi5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2luX2RldGVjdGlvbi5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9zdWJ0cmFj
dC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9zdW1f
c3F1YXJlcy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC90eGZtX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC92YXJpYW5jZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC92YXJpYW5jZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2NvbnZvbHZlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9kc3BfY29tbW9uLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9kc3BfcnRjZC5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfZmlsdGVyLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9iaXRk
ZXB0aF9jb252ZXJzaW9uX2F2eDIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AveDg2L2JpdGRlcHRoX2NvbnZlcnNpb25fc3NlMi5oIiwKQEAgLTgwNCw0
MSArMzQzLDM0IEBAIGxpYnZweF9zcmNzX3g4Nl82NCA9IFsKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdHJhbnNwb3NlX3NzZTIuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3R4Zm1fY29tbW9uX3Nz
ZTIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9tZW0vaW5j
bHVkZS92cHhfbWVtX2ludHJubC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X21lbS92cHhfbWVtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfbWVtL3ZweF9tZW0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9wb3J0cy9hcm0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9wb3J0cy9iaXRvcHMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9wb3J0cy9jb21waWxlcl9hdHRyaWJ1dGVzLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvZW1taW50cmluX2NvbXBhdC5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21lbS5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21lbV9v
cHMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9t
ZW1fb3BzX2FsaWduZWQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9wb3J0cy9taXBzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfcG9ydHMvbXN2Yy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3BvcnRzL3N0YXRpY19hc3NlcnQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9wb3J0cy9zeXN0ZW1fc3RhdGUuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfb25jZS5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3ZweF90aW1lci5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3g4Ni5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL2dlbmVyaWMvZ2VuX3Nj
YWxlcnMuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2Fs
ZS9nZW5lcmljL3ZweF9zY2FsZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X3NjYWxlL2dlbmVyaWMveXYxMmNvbmZpZy5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL2dlbmVyaWMveXYxMmV4dGVuZC5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL3ZweF9zY2FsZS5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL3ZweF9z
Y2FsZV9ydGNkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
c2NhbGUveXYxMmNvbmZpZy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3V0aWwvZW5kaWFuX2lubC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X3V0aWwvdnB4X2F0b21pY3MuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF90aHJlYWQuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF90aHJlYWQuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF90aW1lc3RhbXAuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF93cml0ZV95
dXZfZnJhbWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91
dGlsL3ZweF93cml0ZV95dXZfZnJhbWUuaCIsCiBdCi1saWJ2cHhfc3Jjc194ODZfNjRfYXNzZW1i
bHkgPSBbCitsaWJ2cHhfc3Jjc194ODZfYXNzZW1ibHkgPSBbCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2RlcXVhbnRpemVfbW14LmFzbSIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2lkY3Rs
bG1fbW14LmFzbSIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24veDg2L2lkY3RsbG1fc3NlMi5hc20iLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9pd2Fsc2hfc3NlMi5hc20iLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9sb29wZmlsdGVyX2Jsb2Nr
X3NzZTJfeDg2XzY0LmFzbSIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24veDg2L2xvb3BmaWx0ZXJfc3NlMi5hc20iLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9tZnFlX3NzZTIuYXNtIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvcmVjb25fbW14
LmFzbSIsCkBAIC04NTQsMTEgKzM4Niw4IEBAIGxpYnZweF9zcmNzX3g4Nl82NF9hc3NlbWJseSA9
IFsKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi94ODYv
dnA5X21mcWVfc3NlMi5hc20iLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci94ODYvdnA5X2RjdF9zc2UyLmFzbSIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3g4Ni92cDlfZXJyb3Jfc3NlMi5hc20iLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci94ODYvdnA5
X3F1YW50aXplX3Nzc2UzX3g4Nl82NC5hc20iLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9hZGRfbm9pc2Vfc3NlMi5hc20iLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9hdmdfc3NzZTNfeDg2XzY0LmFz
bSIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2Rl
YmxvY2tfc3NlMi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3g4Ni9md2RfdHhmbV9zc3NlM194ODZfNjQuYXNtIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX2ludHJhcHJlZF9zc2UyLmFz
bSIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hp
Z2hiZF9zYWQ0ZF9zc2UyLmFzbSIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9zYWRfc3NlMi5hc20iLApAQCAtODcyLDcgKzQwMSw2IEBA
IGxpYnZweF9zcmNzX3g4Nl82NF9hc3NlbWJseSA9IFsKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvc2FkX3NzZTMuYXNtIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvc2FkX3NzZTQuYXNtIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvc2FkX3Nzc2UzLmFz
bSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3Nz
aW1fb3B0X3g4Nl82NC5hc20iLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3g4Ni9zdWJwZWxfdmFyaWFuY2Vfc3NlMi5hc20iLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zdWJ0cmFjdF9zc2UyLmFzbSIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9jb252
b2x2ZV9jb3B5X3NzZTIuYXNtIiwKQEAgLTg4MiwxMiArNDEwLDEyIEBAIGxpYnZweF9zcmNzX3g4
Nl82NF9hc3NlbWJseSA9IFsKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC94ODYvdnB4X3N1YnBpeGVsXzh0X3Nzc2UzLmFzbSIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9zdWJwaXhlbF9iaWxpbmVhcl9z
c2UyLmFzbSIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
eDg2L3ZweF9zdWJwaXhlbF9iaWxpbmVhcl9zc3NlMy5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvZW1tc19tbXguYXNtIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2Zsb2F0X2NvbnRyb2xfd29yZC5h
c20iLAogXQotbGlidnB4X3NyY3NfeDg2XzY0X21teCA9Ci0gICAgWyAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9pZGN0X2Jsa19tbXguYyIgXQotbGli
dnB4X3NyY3NfeDg2XzY0X3NzZTIgPSBbCitsaWJ2cHhfc3Jjc194ODZfbW14ID0gWworICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9pZGN0X2Jsa19t
bXguYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9l
bW1zX21teC5jIiwKK10KK2xpYnZweF9zcmNzX3g4Nl9zc2UyID0gWwogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9iaWxpbmVhcl9maWx0ZXJfc3Nl
Mi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94
ODYvaWRjdF9ibGtfc3NlMi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIveDg2L2Rlbm9pc2luZ19zc2UyLmMiLApAQCAtOTE3LDggKzQ0NSw4IEBA
IGxpYnZweF9zcmNzX3g4Nl82NF9zc2UyID0gWwogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92YXJpYW5jZV9zc2UyLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92cHhfc3VicGl4ZWxfNHRfaW50cmlu
X3NzZTIuYyIsCiBdCi1saWJ2cHhfc3Jjc194ODZfNjRfc3NlMyA9IFtdCi1saWJ2cHhfc3Jjc194
ODZfNjRfc3NzZTMgPSBbCitsaWJ2cHhfc3Jjc194ODZfc3NlMyA9IFtdCitsaWJ2cHhfc3Jjc194
ODZfc3NzZTMgPSBbCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL3g4Ni92cDhfcXVhbnRpemVfc3NzZTMuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3g4Ni92cDlfZnJhbWVfc2NhbGVfc3NzZTMuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hi
ZF9pbnRyYXByZWRfaW50cmluX3Nzc2UzLmMiLApAQCAtOTI2LDcgKzQ1NCw3IEBAIGxpYnZweF9z
cmNzX3g4Nl82NF9zc3NlMyA9IFsKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC94ODYvcXVhbnRpemVfc3NzZTMuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9zdWJwaXhlbF84dF9pbnRyaW5fc3NzZTMu
YyIsCiBdCi1saWJ2cHhfc3Jjc194ODZfNjRfc3NlNF8xID0gWworbGlidnB4X3NyY3NfeDg2X3Nz
ZTRfMSA9IFsKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIveDg2L3F1YW50aXplX3NzZTQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24veDg2L3ZwOV9oaWdoYmRfaWh0MTZ4MTZfYWRkX3NzZTQuYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24veDg2L3ZwOV9o
aWdoYmRfaWh0NHg0X2FkZF9zc2U0LmMiLApAQCAtOTM2LDExICs0NjQsMTEgQEAgbGlidnB4X3Ny
Y3NfeDg2XzY0X3NzZTRfMSA9IFsKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC94ODYvaGlnaGJkX2lkY3Q0eDRfYWRkX3NzZTQuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9pZGN0OHg4X2FkZF9z
c2U0LmMiLAogXQotbGlidnB4X3NyY3NfeDg2XzY0X2F2eCA9IFsKK2xpYnZweF9zcmNzX3g4Nl9h
dnggPSBbCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3g4Ni92cDlfZGlhbW9uZF9zZWFyY2hfc2FkX2F2eC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvcXVhbnRpemVfYXZ4LmMiLAogXQotbGlidnB4
X3NyY3NfeDg2XzY0X2F2eDIgPSBbCitsaWJ2cHhfc3Jjc194ODZfYXZ4MiA9IFsKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIveDg2L3ZwOV9lcnJvcl9h
dngyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci94ODYvdnA5X3F1YW50aXplX2F2eDIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AveDg2L2F2Z19pbnRyaW5fYXZ4Mi5jIiwKQEAgLTk1Miw2NDUgKzQ4
MCwyNzA0IEBAIGxpYnZweF9zcmNzX3g4Nl82NF9hdngyID0gWwogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92YXJpYW5jZV9hdngyLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92cHhfc3VicGl4ZWxf
OHRfaW50cmluX2F2eDIuYyIsCiBdCi1saWJ2cHhfc3Jjc194ODZfNjRfYXZ4NTEyID0gW10KLWxp
YnZweF9zcmNzX2FybSA9IFsKK2xpYnZweF9zcmNzX3g4Nl9hdng1MTIgPSBbXQorbGlidnB4X3Ny
Y3NfeDg2XzY0ID0gWwogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2FsbG9jY29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL2FsbG9jY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL2Jsb2NrZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vY29lZnVwZGF0ZXByb2JzLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2NvbW1vbi5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9kZWZhdWx0
X2NvZWZfcHJvYnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vZGVxdWFudGl6ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHkuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW1vZGUuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW1vZGUuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW12LmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJv
cHltdi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9leHRlbmQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vZXh0ZW5kLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2ZpbHRlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9maWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vZmluZG5lYXJtdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2dlbmVyaWMvc3lzdGVtZGVwZW5kZW50
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2hl
YWRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9pZGN0X2Jsay5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9pZGN0bGxtLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2ludnRyYW5zLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2xvb3BmaWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbG9vcGZpbHRlcl9maWx0ZXJzLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21icGl0Y2guYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWZxZS5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tb2RlY29u
dC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9t
b2RlY29udC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9tdi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9vbnl4LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL29ueXhjX2ludC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9vbnl4ZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9wb3N0cHJvYy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9wb3N0cHJvYy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9wcGZsYWdzLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2NvbW1vbi5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9xdWFudF9jb21tb24u
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVj
b25pbnRlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9yZWNvbmludGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3JlY29uaW50cmEuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhNHg0LmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcnRjZC5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zZXR1
cGludHJhcmVjb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vc2V0dXBpbnRyYXJlY29uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3N3YXB5djEyYnVmZmVyLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3N3YXB5djEyYnVmZmVyLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3N5c3RlbWRlcGVu
ZGVudC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi90aHJlYWRpbmcuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vdHJlZWNvZGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3RyZWVjb2Rlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92cDhfZW50cm9weW1vZGVkYXRhLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9sb29wZmlsdGVyLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9z
a2luX2RldGVjdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi92cDhfc2tpbl9kZXRlY3Rpb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2xvb3BmaWx0ZXJfeDg2LmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni92cDhfYXNtX3N0
dWJzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rl
ci9kYm9vbGh1ZmYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9kZWNvZGVyL2Rib29saHVmZi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlZnJhbWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVtdi5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlcnRocmVhZGlu
Zy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIv
ZGV0b2tlbml6ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2RlY29kZXIvZGV0b2tlbml6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2RlY29kZXIvb255eGRfaWYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL29ueXhkX2ludC5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvdGhyZWFkaW5nLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci90cmVlcmVhZGVyLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJl
YW0uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L2JpdHN0cmVhbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvYmxvY2suaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL2Jvb2xodWZmLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9ib29saHVmZi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvY29weV9jLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3QuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RjdF92YWx1ZV9jb3N0LmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3RfdmFsdWVf
dG9rZW5zLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9kZWZhdWx0Y29lZmNvdW50cy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvZGVub2lzaW5nLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWZyYW1lLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVmcmFt
ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
ZW5jb2RlaW50cmEuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL2VuY29kZWludHJhLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtYi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbWIuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW12LmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtdi5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZXRocmVhZGlu
Zy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
ZXRocmVhZGluZy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvZmlyc3RwYXNzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9sb29rYWhlYWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21jb21wLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tb2RlY29zdHMuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVjb3N0
cy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
bXJfZGlzc2ltLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9tcl9kaXNzaW0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL29ueXhfaWYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL29ueXhfaW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNraW50ZXIuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tpbnRlci5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xwZi5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xw
Zi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
cXVhbnRpemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL3JhdGVjdHJsLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9yYXRlY3RybC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvcmRvcHQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Jkb3B0LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9zZWdtZW50YXRpb24uYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3NlZ21lbnRhdGlvbi5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdG9rZW5p
emUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L3Rva2VuaXplLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci90cmVld3JpdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci90cmVld3JpdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci92cDhfcXVhbnRpemUuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC92cDhfY3hfaWZhY2UuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC92cDhfZHhfaWZhY2UuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2FsbG9jY29tbW9u
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9hbGxvY2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfYmxvY2tkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9ibG9ja2QuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uX2RhdGEuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1v
bl9kYXRhLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9lbnRyb3B5LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUuaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJv
cHltdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfZW50cm9weW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9lbnVtcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZmlsdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9maWx0ZXIuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Zy
YW1lX2J1ZmZlcnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X2lkY3QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X2lkY3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21mcWUuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21m
cWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X212LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9tdnJlZl9jb21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X212cmVmX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfb255eGNfaW50LmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0cHJvYy5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
cG9zdHByb2MuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X3BwZmxhZ3MuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X3ByZWRfY29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9u
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9xdWFudF9jb21tb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X3JlY29uaW50ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50ZXIuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29u
aW50cmEuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X3J0Y2QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X3NjYWxlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9zY2FsZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2Nv
bW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfdGhyZWFkX2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfdGhyZWFkX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9jb21tb24uYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RpbGVfY29t
bW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rl
ci92cDlfZGVjb2RlZnJhbWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVmcmFtZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZW12LmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlbXYuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9k
ZWNvZGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVj
b2Rlci92cDlfZGVjb2Rlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2RlY29kZXIvdnA5X2RldG9rZW5pemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZXRva2VuaXplLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1YmV4cC5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2Rz
dWJleHAuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNv
ZGVyL3ZwOV9qb2JfcXVldWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9kZWNvZGVyL3ZwOV9qb2JfcXVldWUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9hcV9jeWNsaWNyZWZyZXNoLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3lj
bGljcmVmcmVzaC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2JpdHN0cmVhbS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2JpdHN0cmVhbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Jsb2NrLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVl
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfY29udGV4dF90cmVlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfY29zdC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Nvc3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kY3QuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Rlbm9pc2Vy
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfZW5jb2RlZnJhbWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVmcmFtZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW1iLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNv
ZGVtdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2VuY29kZW12LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZW5jb2Rlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXRocmVhZC5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2V4dF9yYXRlY3RybC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2V4dGVuZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dGVuZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZpcnN0cGFzcy5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZyYW1lX3NjYWxl
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfam9iX3F1ZXVlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfbG9va2FoZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbG9va2FoZWFkLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWJncmFwaC5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21jb21wLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
bWNvbXAuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9tdWx0aV90aHJlYWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tdWx0aV90aHJlYWQuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25v
aXNlX2VzdGltYXRlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfcGFydGl0aW9uX21vZGVscy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2tscGYuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbHBmLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlj
a21vZGUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9waWNrbW9kZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3F1YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcXVhbnRpemUuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVj
dHJsLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfcmQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9yZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3Jkb3B0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50
YXRpb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9zZWdtZW50YXRpb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9za2luX2RldGVjdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
c3BlZWRfZmVhdHVyZXMuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9zcGVlZF9mZWF0dXJlcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19s
YXllcmNvbnRleHQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9zdmNfbGF5ZXJjb250ZXh0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdGVtcG9yYWxfZmlsdGVyLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdG9rZW5p
emUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV90b2tlbml6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3RyZWV3cml0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90cmVld3JpdGVyLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1v
bi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFj
ZV9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9p
bnRlcm5hbC92cHhfY29kZWNfaW50ZXJuYWwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2NvZGVjLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9kZWNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9lbmNvZGVyLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9pbWFnZS5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOC5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOGN4LmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnA4ZHguaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfY29kZWMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZGVjb2Rlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9lbmNvZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2ZyYW1lX2J1ZmZlci5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbWFnZS5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbnRlZ2VyLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FkZF9ub2lzZS5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hdmcuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlci5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFk
ZXJfYnVmZmVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2JpdHJlYWRlcl9idWZmZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYml0d3JpdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXJfYnVmZmVyLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlcl9idWZmZXIuaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvZGVibG9jay5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhm
bS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnRy
YXByZWQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
aW52X3R4Zm0uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvaW52X3R4Zm0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvbG9vcGZpbHRlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9wb3N0cHJvYy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9wcm9iLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3Byb2IuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvcHNuci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9wc25yLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3F1YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3F1YW50aXplLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL3NhZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9za2luX2RldGVjdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2luX2RldGVjdGlvbi5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9zdWJ0cmFjdC5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9zdW1fc3F1YXJlcy5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC90eGZtX2NvbW1vbi5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5j
ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhf
Y29udm9sdmUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvdnB4X2NvbnZvbHZlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3ZweF9kc3BfY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3ZweF9kc3BfcnRjZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfZmlsdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVtL2luY2x1ZGUvdnB4X21lbV9pbnRybmwuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9tZW0vdnB4X21lbS5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS92cHhfbWVt
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYXJt
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYXJt
X2NwdWRldGVjdC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X3BvcnRzL2JpdG9wcy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X3BvcnRzL2NvbXBpbGVyX2F0dHJpYnV0ZXMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9lbW1pbnRyaW5fY29tcGF0LmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbWVtLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbWVtX29wcy5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21lbV9vcHNfYWxpZ25l
ZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21z
dmMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9z
dGF0aWNfYXNzZXJ0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfcG9ydHMvc3lzdGVtX3N0YXRlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfcG9ydHMvdnB4X29uY2UuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfdGltZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL2dlbl9zY2FsZXJzLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy92cHhf
c2NhbGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2Fs
ZS9nZW5lcmljL3l2MTJjb25maWcuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJleHRlbmQuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhfc2NhbGUuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhfc2NhbGVfcnRjZC5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL3l2MTJjb25m
aWcuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL2Vu
ZGlhbl9pbmwuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91
dGlsL3ZweF9hdG9taWNzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfdXRpbC92cHhfdGhyZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGltZXN0YW1wLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfd3JpdGVfeXV2X2ZyYW1lLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfd3JpdGVf
eXV2X2ZyYW1lLmgiLAogXQotbGlidnB4X3NyY3NfYXJtX2Fzc2VtYmx5ID0gW10KLWxpYnZweF9z
cmNzX2FybV9uZW9uID0gWwotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2FsbG9jY29tbW9uLmMiLAorbGlidnB4X3NyY3NfeDg2XzY0X2hlYWRlcnMgPSBb
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYWxsb2Nj
b21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vYXJtL2xvb3BmaWx0ZXJfYXJtLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2FybS9sb29wZmlsdGVyX2FybS5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9iaWxpbmVhcnByZWRp
Y3RfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9hcm0vbmVvbi9jb3B5bWVtX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vZGNfb25seV9pZGN0X2FkZF9uZW9uLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9u
ZW9uL2RlcXVhbnRfaWRjdF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2RlcXVhbnRpemViX25lb24uYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vaWRjdF9i
bGtfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9hcm0vbmVvbi9pd2Fsc2hfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9sb29wZmlsdGVyc2ltcGxlaG9yaXpvbnRh
bGVkZ2VfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9hcm0vbmVvbi9sb29wZmlsdGVyc2ltcGxldmVydGljYWxlZGdlX25lb24uYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24v
bWJsb29wZmlsdGVyX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vYXJtL25lb24vc2hvcnRpZGN0NHg0bGxtX25lb24uYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vc2l4dGFw
cHJlZGljdF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2FybS9uZW9uL3ZwOF9sb29wZmlsdGVyX25lb24uYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYmxvY2tkLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Jsb2NrZC5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9jb2VmdXBkYXRlcHJv
YnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
Y29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2RlZmF1bHRfY29lZl9wcm9icy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9kZXF1YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHkuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weS5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9k
ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9l
bnRyb3B5bXYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vZW50cm9weW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2V4dGVuZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9leHRlbmQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vZmlsdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbHRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbmRuZWFybXYuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZ2VuZXJpYy9zeXN0
ZW1kZXBlbmRlbnQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vaGVhZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2lkY3RfYmxrLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2lkY3RsbG0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaW52dHJhbnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbG9vcGZpbHRlci5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29wZmlsdGVyX2ZpbHRlcnMu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWJw
aXRjaC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9tZnFlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL21vZGVjb250LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL21vZGVjb250LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL212LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL29ueXguaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vb255eGNfaW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL29ueXhkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3BwZmxhZ3MuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcXVhbnRfY29tbW9u
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1
YW50X2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9yZWNvbmludGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3JlY29uaW50ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYS5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25p
bnRyYTR4NC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9ydGNkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL3NldHVwaW50cmFyZWNvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9zZXR1cGludHJhcmVjb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZmZXIuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZm
ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
c3lzdGVtZGVwZW5kZW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3RocmVhZGluZy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi90cmVlY29kZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdHJlZWNvZGVyLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9lbnRyb3B5bW9kZWRhdGEuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X2xv
b3BmaWx0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vdnA4X3NraW5fZGV0ZWN0aW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZmLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kYm9vbGh1ZmYu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2Rl
Y29kZWZyYW1lLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZGVjb2Rlci9kZWNvZGVtdi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2RlY29kZXIvZGVjb2RlbXYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZXJ0aHJlYWRpbmcuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RldG9rZW5pemUuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RldG9rZW5pemUu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL29u
eXhkX2lmLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVj
b2Rlci9vbnl4ZF9pbnQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9kZWNvZGVyL3RocmVhZGluZy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2RlY29kZXIvdHJlZXJlYWRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYXJtL25lb24vZGVub2lzaW5nX25lb24uYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2FybS9u
ZW9uL2Zhc3RxdWFudGl6ZWJfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvYXJtL25lb24vc2hvcnRmZGN0X25lb24uYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9uL3ZwOF9z
aG9ydHdhbHNoNHg0X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL2JpdHN0cmVhbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYml0c3RyZWFtLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ibG9jay5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYm9vbGh1ZmYuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jvb2xodWZmLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9jb3B5X2Mu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rj
dC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
ZGN0X3ZhbHVlX2Nvc3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL2RjdF92YWx1ZV90b2tlbnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RlZmF1bHRjb2VmY291bnRzLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rlbm9p
c2luZy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvZW5jb2RlZnJhbWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL2VuY29kZWZyYW1lLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVpbnRyYS5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlaW50cmEuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW1iLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVt
Yi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
ZW5jb2RlbXYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL2VuY29kZW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9ldGhyZWFkaW5nLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ldGhyZWFkaW5nLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9maXJzdHBhc3MuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbG9va2FoZWFk
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9t
Y29tcC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvbWNvbXAuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL21vZGVjb3N0cy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvbW9kZWNvc3RzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tcl9kaXNzaW0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21yX2Rpc3NpbS5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pZi5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pbnQuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tp
bnRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvcGlja2ludGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9waWNrbHBmLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9waWNrbHBmLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9xdWFudGl6ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yZG9wdC5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmRvcHQuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3NlZ21l
bnRhdGlvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvc2VnbWVudGF0aW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci90b2tlbml6ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdG9rZW5pemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3ZwOF9xdWFu
dGl6ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3ZwOF9j
eF9pZmFjZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfYWxsb2Njb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X2Jsb2NrZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb25fZGF0YS5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9w
eS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfZW50cm9weW1vZGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X2VudHJvcHltdi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW51bXMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZpbHRlci5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZnJhbWVfYnVmZmVycy5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
aWRjdC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfbG9vcGZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfbWZxZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X212cmVmX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfb255eGNfaW50LmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0
cHJvYy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfcHBmbGFncy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfcHJlZF9jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3F1YW50X2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRlci5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVj
b25pbnRyYS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfc2NhbGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X3NjYW4uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X3NlZ19jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RocmVhZF9jb21tb24uaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RpbGVfY29t
bW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rl
ci92cDlfZGVjb2RlZnJhbWUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVtdi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZXIuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZXRva2VuaXplLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1
YmV4cC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29k
ZXIvdnA5X2pvYl9xdWV1ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2FxX2N5Y2xpY3JlZnJlc2guaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9iaXRzdHJlYW0uaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ibG9jay5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2NvbnRleHRfdHJlZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2Nvc3QuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZWZyYW1lLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9lbmNvZGVtdi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2VuY29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
Zmlyc3RwYXNzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfam9iX3F1ZXVlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfbG9va2FoZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWJncmFwaC5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21jb21wLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbXVs
dGlfdGhyZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfbm9pc2VfZXN0aW1hdGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9wYXJ0aXRpb25fbW9kZWxzLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja2xwZi5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X3BpY2ttb2RlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfcXVhbnRpemUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JkLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9z
ZWdtZW50YXRpb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9za2luX2RldGVjdGlvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
c3ZjX2xheWVyY29udGV4dC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3RlbXBvcmFsX2ZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Rva2VuaXplLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRl
ci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9p
ZmFjZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9k
eF9pZmFjZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3Zw
OV9pZmFjZV9jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweC9pbnRlcm5hbC92cHhfY29kZWNfaW50ZXJuYWwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweC92cDguaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweC92cDhjeC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4L3ZwOGR4LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHgvdnB4X2NvZGVjLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHgvdnB4X2RlY29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweC92cHhfZW5jb2Rlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4L3ZweF9leHRfcmF0ZWN0cmwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZnJhbWVfYnVmZmVyLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2ltYWdlLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2ludGVnZXIuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9idWZmZXIuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVy
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdy
aXRlcl9idWZmZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvZndkX3R4Zm0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvaW52X3R4Zm0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvcG9zdHByb2MuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvcHJvYi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9wc25yLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3F1YW50aXplLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL3NraW5fZGV0ZWN0aW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3R4Zm1fY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZhcmlhbmNlLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9jb252b2x2ZS5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfZHNwX2NvbW1vbi5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfZmls
dGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4
Ni9iaXRkZXB0aF9jb252ZXJzaW9uX2F2eDIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2JpdGRlcHRoX2NvbnZlcnNpb25fc3NlMi5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvY29udm9sdmUu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2Nv
bnZvbHZlX2F2eDIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AveDg2L2NvbnZvbHZlX3NzZTIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AveDg2L2NvbnZvbHZlX3Nzc2UzLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9md2RfZGN0MzJ4MzJfaW1wbF9hdngy
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9m
d2RfZGN0MzJ4MzJfaW1wbF9zc2UyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL3g4Ni9md2RfdHhmbV9pbXBsX3NzZTIuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2Z3ZF90eGZtX3NzZTIuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9p
bnZfdHhmbV9zc2UyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3g4Ni9oaWdoYmRfaW52X3R4Zm1fc3NlNC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaW52X3R4Zm1fc3NlMi5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaW52X3R4Zm1fc3NzZTMu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L21l
bV9zc2UyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3g4Ni9xdWFudGl6ZV9zc2UyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3g4Ni9xdWFudGl6ZV9zc3NlMy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdHJhbnNwb3NlX3NzZTIuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3R4Zm1fY29tbW9uX3Nz
ZTIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9tZW0vaW5j
bHVkZS92cHhfbWVtX2ludHJubC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X21lbS92cHhfbWVtLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfcG9ydHMvYXJtLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfcG9ydHMvYml0b3BzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfcG9ydHMvY29tcGlsZXJfYXR0cmlidXRlcy5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2VtbWludHJpbl9jb21wYXQuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9tZW0uaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9tZW1fb3Bz
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbWVt
X29wc19hbGlnbmVkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfcG9ydHMvbWlwcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X3BvcnRzL21zdmMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9wb3J0cy9zdGF0aWNfYXNzZXJ0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfcG9ydHMvc3lzdGVtX3N0YXRlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X29uY2UuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfdGltZXIuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy94ODYuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhfc2NhbGUuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS95djEyY29uZmln
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC9lbmRp
YW5faW5sLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRp
bC92cHhfYXRvbWljcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X3V0aWwvdnB4X3RocmVhZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X3V0aWwvdnB4X3RpbWVzdGFtcC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3dyaXRlX3l1dl9mcmFtZS5oIiwKK10KK2xpYnZw
eF9zcmNzX3g4Nl82NF9hc3NlbWJseSA9IFsKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvZGVxdWFudGl6ZV9tbXguYXNtIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvaWRjdGxsbV9tbXguYXNt
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYv
aWRjdGxsbV9zc2UyLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24veDg2L2l3YWxzaF9zc2UyLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2xvb3BmaWx0ZXJfYmxvY2tfc3NlMl94ODZf
NjQuYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi94ODYvbG9vcGZpbHRlcl9zc2UyLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24veDg2L21mcWVfc3NlMi5hc20iLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9yZWNvbl9tbXguYXNtIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvcmVjb25f
c3NlMi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL3g4Ni9zdWJwaXhlbF9tbXguYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvc3VicGl4ZWxfc3NlMi5hc20iLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9zdWJwaXhlbF9zc3NlMy5h
c20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci94
ODYvYmxvY2tfZXJyb3Jfc3NlMi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci94ODYvY29weV9zc2UyLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9jb3B5X3NzZTMuYXNtIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2L2RjdF9z
c2UyLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL3g4Ni9md2Fsc2hfc3NlMi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3g4Ni92cDlfbWZxZV9zc2UyLmFzbSIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3g4Ni92cDlfZGN0X3NzZTIuYXNt
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIveDg2
L3ZwOV9lcnJvcl9zc2UyLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3g4Ni92cDlfcXVhbnRpemVfc3NzZTNfeDg2XzY0LmFzbSIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2FkZF9ub2lzZV9z
c2UyLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
eDg2L2F2Z19zc3NlM194ODZfNjQuYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC94ODYvZGVibG9ja19zc2UyLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2Z3ZF90eGZtX3Nzc2UzX3g4Nl82NC5h
c20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9o
aWdoYmRfaW50cmFwcmVkX3NzZTIuYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX3NhZDRkX3NzZTIuYXNtIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX3NhZF9zc2UyLmFz
bSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hp
Z2hiZF9zdWJwZWxfdmFyaWFuY2VfaW1wbF9zc2UyLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF92YXJpYW5jZV9pbXBsX3NzZTIu
YXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYv
aW50cmFwcmVkX3NzZTIuYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC94ODYvaW50cmFwcmVkX3Nzc2UzLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2ludl93aHRfc3NlMi5hc20iLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zYWQ0ZF9zc2UyLmFz
bSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3Nh
ZF9zc2UyLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AveDg2L3NhZF9zc2UzLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AveDg2L3NhZF9zc2U0LmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3NhZF9zc3NlMy5hc20iLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zc2ltX29wdF94ODZfNjQuYXNtIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvc3VicGVs
X3ZhcmlhbmNlX3NzZTIuYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC94ODYvc3VidHJhY3Rfc3NlMi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92cHhfY29udm9sdmVfY29weV9zc2UyLmFzbSIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9o
aWdoX3N1YnBpeGVsXzh0X3NzZTIuYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X2hpZ2hfc3VicGl4ZWxfYmlsaW5lYXJfc3NlMi5hc20i
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92cHhf
c3VicGl4ZWxfOHRfc3NlMi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3g4Ni92cHhfc3VicGl4ZWxfOHRfc3NzZTMuYXNtIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X3N1YnBpeGVsX2JpbGlu
ZWFyX3NzZTIuYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC94ODYvdnB4X3N1YnBpeGVsX2JpbGluZWFyX3Nzc2UzLmFzbSIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9lbW1zX21teC5hc20iLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvZmxvYXRfY29udHJvbF93
b3JkLmFzbSIsCitdCitsaWJ2cHhfc3Jjc194ODZfNjRfbW14ID0KKyAgICBbICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2lkY3RfYmxrX21teC5jIiBd
CitsaWJ2cHhfc3Jjc194ODZfNjRfc3NlMiA9IFsKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvYmlsaW5lYXJfZmlsdGVyX3NzZTIuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2lkY3RfYmxr
X3NzZTIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL3g4Ni9kZW5vaXNpbmdfc3NlMi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2L3ZwOF9lbmNfc3R1YnNfc3NlMi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2L3ZwOF9xdWFudGl6
ZV9zc2UyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3g4Ni92cDlfaWRjdF9pbnRyaW5fc3NlMi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIveDg2L3ZwOV9kY3RfaW50cmluX3NzZTIuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3g4Ni92cDlf
ZGVub2lzZXJfc3NlMi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIveDg2L3ZwOV9oaWdoYmRfYmxvY2tfZXJyb3JfaW50cmluX3NzZTIuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3g4Ni92cDlf
cXVhbnRpemVfc3NlMi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC94ODYvYXZnX2ludHJpbl9zc2UyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9hdmdfcHJlZF9zc2UyLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9md2RfdHhmbV9zc2UyLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9oaWdoYmRf
aWRjdDE2eDE2X2FkZF9zc2UyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3g4Ni9oaWdoYmRfaWRjdDMyeDMyX2FkZF9zc2UyLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9oaWdoYmRfaWRjdDR4NF9h
ZGRfc3NlMi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC94ODYvaGlnaGJkX2lkY3Q4eDhfYWRkX3NzZTIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9pbnRyYXByZWRfaW50cmluX3NzZTIu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hp
Z2hiZF9sb29wZmlsdGVyX3NzZTIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9xdWFudGl6ZV9pbnRyaW5fc3NlMi5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX3Zhcmlh
bmNlX3NzZTIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AveDg2L2ludl90eGZtX3NzZTIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AveDg2L2xvb3BmaWx0ZXJfc3NlMi5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvcG9zdF9wcm9jX3NzZTIuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3F1YW50aXplX3Nz
ZTIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2
L3N1bV9zcXVhcmVzX3NzZTIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AveDg2L3ZhcmlhbmNlX3NzZTIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9zdWJwaXhlbF80dF9pbnRyaW5fc3NlMi5j
IiwKK10KK2xpYnZweF9zcmNzX3g4Nl82NF9zc2UzID0gW10KK2xpYnZweF9zcmNzX3g4Nl82NF9z
c3NlMyA9IFsKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIveDg2L3ZwOF9xdWFudGl6ZV9zc3NlMy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIveDg2L3ZwOV9mcmFtZV9zY2FsZV9zc3NlMy5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX2lu
dHJhcHJlZF9pbnRyaW5fc3NzZTMuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AveDg2L2ludl90eGZtX3Nzc2UzLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9xdWFudGl6ZV9zc3NlMy5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X3N1YnBpeGVs
Xzh0X2ludHJpbl9zc3NlMy5jIiwKK10KK2xpYnZweF9zcmNzX3g4Nl82NF9zc2U0XzEgPSBbCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9xdWFu
dGl6ZV9zc2U0LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3g4Ni92cDlfaGlnaGJkX2lodDE2eDE2X2FkZF9zc2U0LmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3g4Ni92cDlfaGlnaGJkX2lodDR4
NF9hZGRfc3NlNC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi94ODYvdnA5X2hpZ2hiZF9paHQ4eDhfYWRkX3NzZTQuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9pZGN0MTZ4MTZfYWRk
X3NzZTQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
eDg2L2hpZ2hiZF9pZGN0MzJ4MzJfYWRkX3NzZTQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF9pZGN0NHg0X2FkZF9zc2U0LmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9oaWdoYmRf
aWRjdDh4OF9hZGRfc3NlNC5jIiwKK10KK2xpYnZweF9zcmNzX3g4Nl82NF9hdnggPSBbCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3g4Ni92cDlfZGlh
bW9uZF9zZWFyY2hfc2FkX2F2eC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC94ODYvcXVhbnRpemVfYXZ4LmMiLAorXQorbGlidnB4X3NyY3NfeDg2XzY0
X2F2eDIgPSBbCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3g4Ni92cDlfZXJyb3JfYXZ4Mi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIveDg2L3ZwOV9xdWFudGl6ZV9hdngyLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9hdmdfaW50cmluX2F2eDIu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2Z3
ZF90eGZtX2F2eDIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AveDg2L2hpZ2hiZF9jb252b2x2ZV9hdngyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9sb29wZmlsdGVyX2F2eDIuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3NhZDRkX2F2eDIuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3NhZF9h
dngyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4
Ni92YXJpYW5jZV9hdngyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3g4Ni92cHhfc3VicGl4ZWxfOHRfaW50cmluX2F2eDIuYyIsCitdCitsaWJ2cHhf
c3Jjc194ODZfNjRfYXZ4NTEyID0gW10KK2xpYnZweF9zcmNzX2FybSA9IFsKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hbGxvY2NvbW1vbi5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZGVxdWFu
dGl6ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9lbnRyb3B5LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2VudHJvcHltb2RlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL2VudHJvcHltdi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9leHRlbmQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZmlsdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbmRuZWFybXYuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZ2VuZXJpYy9zeXN0ZW1kZXBl
bmRlbnQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vaWRjdF9ibGsuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vaWRjdGxsbS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9sb29wZmlsdGVyX2ZpbHRlcnMuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWJwaXRjaC5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tZnFlLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21vZGVjb250LmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2Nv
bW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9yZWNvbmludGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL3JlY29uaW50cmEuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYTR4NC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ydGNkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3NldHVwaW50cmFyZWNvbi5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zd2FweXYxMmJ1ZmZl
ci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90
cmVlY29kZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vdnA4X2xvb3BmaWx0ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vdnA4X3NraW5fZGV0ZWN0aW9uLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kYm9vbGh1ZmYuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZWZyYW1lLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNv
ZGVtdi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29k
ZXIvZGV0b2tlbml6ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2RlY29kZXIvb255eGRfaWYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9kZWNvZGVyL3RocmVhZGluZy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYml0c3RyZWFtLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ib29saHVmZi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvY29weV9jLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3QuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rlbm9pc2lu
Zy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
ZW5jb2RlZnJhbWUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL2VuY29kZWludHJhLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtYi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbXYuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2V0aHJlYWRpbmcuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21v
ZGVjb3N0cy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvbXJfZGlzc2ltLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9vbnl4X2lmLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9waWNraW50ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tscGYuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yZG9wdC5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvc2VnbWVudGF0aW9u
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci90
b2tlbml6ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvdHJlZXdyaXRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvdnA4X3F1YW50aXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvdnA4X2N4X2lmYWNlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvdnA4X2R4X2lmYWNlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9hbGxvY2NvbW1vbi5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYmxvY2tkLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9j
b21tb25fZGF0YS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfZW50cm9weS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltdi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZmlsdGVyLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9mcmFt
ZV9idWZmZXJzLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9pZGN0LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9sb29wZmlsdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tZnFlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdnJlZl9jb21tb24uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Bvc3Rwcm9j
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9wcmVkX2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludGVyLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludHJhLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9ydGNk
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9zY2FsZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfc2Nhbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGhyZWFkX2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9jb21tb24uYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9k
ZWNvZGVmcmFtZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2RlY29kZXIvdnA5X2RlY29kZW12LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RldG9rZW5pemUuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kc3ViZXhwLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlf
am9iX3F1ZXVlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVzaC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2JpdHN0cmVhbS5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2NvbnRleHRfdHJlZS5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2Nvc3QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9kY3QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZWZyYW1lLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVt
di5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2VuY29kZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZnJhbWVfc2Nh
bGUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9sb29rYWhlYWQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9tY29tcC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X211bHRpX3RocmVhZC5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
cGlja2xwZi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X3BpY2ttb2RlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfcXVhbnRpemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JkLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9y
ZXNpemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9zZWdtZW50YXRpb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9za2luX2RldGVjdGlvbi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
c3ViZXhwLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfc3ZjX2xheWVyY29udGV4dC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Rva2VuaXplLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9pZmFjZS5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9j
b21tb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMv
dnB4X2NvZGVjLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgv
c3JjL3ZweF9kZWNvZGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvc3JjL3ZweF9lbmNvZGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvc3JjL3ZweF9pbWFnZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9hZGRfbm9pc2UuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXZnLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlci5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXJfYnVmZmVy
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2RlYmxv
Y2suYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvZndk
X3R4Zm0uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
aW50cmFwcmVkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2ludl90eGZtLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2xvb3BmaWx0ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvcHJvYi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9wc25yLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3F1YW50aXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3NhZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9za2luX2RldGVjdGlvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9zdWJ0cmFjdC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9zdW1fc3F1YXJlcy5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9ydGNkLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVtL3ZweF9tZW0uYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hcm1fY3B1
ZGV0ZWN0LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2Nh
bGUvZ2VuZXJpYy9nZW5fc2NhbGVycy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X3NjYWxlL2dlbmVyaWMvdnB4X3NjYWxlLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95djEyY29uZmlnLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95
djEyZXh0ZW5kLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
c2NhbGUvdnB4X3NjYWxlX3J0Y2QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF91dGlsL3ZweF90aHJlYWQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF93cml0ZV95dXZfZnJhbWUuYyIsCitdCitsaWJ2cHhf
c3Jjc19hcm1faGVhZGVycyA9IFsKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9hbGxvY2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vY29lZnVwZGF0ZXByb2JzLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2NvbW1vbi5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9kZWZhdWx0X2NvZWZf
cHJvYnMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vZW50cm9weS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9lbnRyb3B5bW9kZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZXh0ZW5kLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2hlYWRlci5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pbnZ0cmFucy5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29wZmls
dGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L21vZGVjb250LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL212LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL29ueXguaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vb255eGNfaW50LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL29ueXhkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3BwZmxhZ3MuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcXVhbnRfY29tbW9uLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50ZXIuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRy
YS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9y
ZWNvbmludHJhNHg0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL3NldHVwaW50cmFyZWNvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zd2FweXYxMmJ1ZmZlci5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zeXN0ZW1kZXBlbmRlbnQuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdGhyZWFkaW5n
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Ry
ZWVjb2Rlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi92cDhfZW50cm9weW1vZGVkYXRhLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZmLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVtdi5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVj
b2RlcnRocmVhZGluZy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2RlY29kZXIvZGV0b2tlbml6ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2RlY29kZXIvb255eGRfaW50LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci90cmVlcmVhZGVyLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0uaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jsb2NrLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ib29saHVm
Zi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
ZGN0X3ZhbHVlX2Nvc3QuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL2RjdF92YWx1ZV90b2tlbnMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RlZmF1bHRjb2VmY291bnRzLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29k
ZWZyYW1lLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9lbmNvZGVpbnRyYS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvZW5jb2RlbWIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW12LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ldGhyZWFkaW5nLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9maXJzdHBhc3MuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNv
bXAuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L21vZGVjb3N0cy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvbXJfZGlzc2ltLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9vbnl4X2ludC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2ludGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNrbHBmLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9xdWFudGl6ZS5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Jkb3B0
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9z
ZWdtZW50YXRpb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL3Rva2VuaXplLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci90cmVld3JpdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9hbGxvY2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYmxvY2tkLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb24u
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X2NvbW1vbl9kYXRhLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9lbnRyb3B5LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW12LmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnVtcy5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZmls
dGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9mcmFtZV9idWZmZXJzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9pZGN0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9sb29wZmlsdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tZnFlLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdi5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbXZyZWZfY29t
bW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9vbnl4Y19pbnQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X3Bvc3Rwcm9jLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wcGZsYWdzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29t
bW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9yZWNvbmludGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9yZWNvbmludHJhLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FsZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGhy
ZWFkX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfdGlsZV9jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVmcmFtZS5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZW12LmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rl
ci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIv
dnA5X2RldG9rZW5pemUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9kZWNvZGVyL3ZwOV9kc3ViZXhwLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfam9iX3F1ZXVlLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVzaC5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2JpdHN0cmVhbS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2Jsb2NrLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29zdC5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Rlbm9pc2VyLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5j
b2RlZnJhbWUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9lbmNvZGVtYi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW12LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2Rlci5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V0aHJlYWQuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRf
cmF0ZWN0cmwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9leHRlbmQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9maXJzdHBhc3MuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9qb2JfcXVldWUuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9t
YmdyYXBoLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfbWNvbXAuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9tdWx0aV90aHJlYWQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BhcnRpdGlv
bl9tb2RlbHMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9waWNrbHBmLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfcGlja21vZGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9xdWFudGl6ZS5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJsLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmQu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9yZG9wdC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X3Jlc2l6ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3NlZ21lbnRhdGlvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRf
ZmVhdHVyZXMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9zdWJleHAuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdmNfbGF5ZXJjb250ZXh0LmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdGVtcG9yYWxfZmlsdGVyLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
dG9rZW5pemUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV90cmVld3JpdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L2ludGVybmFsL3ZweF9jb2RlY19pbnRlcm5hbC5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOC5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOGN4LmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnA4ZHguaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfY29kZWMuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZGVjb2Rlci5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9lbmNvZGVyLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2V4dF9yYXRlY3RybC5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9mcmFtZV9idWZmZXIu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfaW1hZ2Uu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfaW50ZWdl
ci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRy
ZWFkZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
Yml0cmVhZGVyX2J1ZmZlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9iaXR3cml0ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYml0d3JpdGVyX2J1ZmZlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZfdHhmbS5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wb3N0cHJvYy5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wcm9iLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3BzbnIuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcXVhbnRpemUuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Avc2tpbl9kZXRlY3Rpb24uaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdHhmbV9jb21tb24u
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdmFyaWFu
Y2UuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4
X2NvbnZvbHZlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3ZweF9kc3BfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3ZweF9maWx0ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9tZW0vaW5jbHVkZS92cHhfbWVtX2ludHJubC5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS92cHhfbWVtLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYXJtLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYml0b3BzLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvY29tcGlsZXJfYXR0cmli
dXRlcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRz
L2VtbWludHJpbl9jb21wYXQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9wb3J0cy9tZW0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9wb3J0cy9tZW1fb3BzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfcG9ydHMvbWVtX29wc19hbGlnbmVkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbWlwcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21zdmMuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9zdGF0aWNfYXNzZXJ0LmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvc3lzdGVtX3N0YXRlLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X29u
Y2UuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92
cHhfdGltZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9w
b3J0cy94ODYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9z
Y2FsZS92cHhfc2NhbGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9zY2FsZS95djEyY29uZmlnLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfdXRpbC9lbmRpYW5faW5sLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfYXRvbWljcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RocmVhZC5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RpbWVzdGFtcC5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3dyaXRlX3l1
dl9mcmFtZS5oIiwKK10KK2xpYnZweF9zcmNzX2FybV9hc3NlbWJseSA9IFtdCitsaWJ2cHhfc3Jj
c19hcm1fbmVvbiA9IFsKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9hbGxvY2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9hcm0vbG9vcGZpbHRlcl9hcm0uYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vYmlsaW5lYXJwcmVkaWN0
X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vYXJtL25lb24vY29weW1lbV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2RjX29ubHlfaWRjdF9hZGRfbmVvbi5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVv
bi9kZXF1YW50X2lkY3RfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9kZXF1YW50aXplYl9uZW9uLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2lkY3RfYmxr
X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vYXJtL25lb24vaXdhbHNoX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vbG9vcGZpbHRlcnNpbXBsZWhvcml6b250YWxl
ZGdlX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vYXJtL25lb24vbG9vcGZpbHRlcnNpbXBsZXZlcnRpY2FsZWRnZV9uZW9uLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL21i
bG9vcGZpbHRlcl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2FybS9uZW9uL3Nob3J0aWRjdDR4NGxsbV9uZW9uLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL3NpeHRhcHBy
ZWRpY3RfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9hcm0vbmVvbi92cDhfbG9vcGZpbHRlcl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Jsb2NrZC5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9kZXF1YW50aXplLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHkuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9w
eW1vZGUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vZW50cm9weW12LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2V4dGVuZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9maWx0ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vZmluZG5lYXJtdi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9nZW5lcmljL3N5c3RlbWRlcGVuZGVudC5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pZGN0X2Jsay5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pZGN0
bGxtLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2xvb3BmaWx0ZXJfZmlsdGVycy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9tYnBpdGNoLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL21mcWUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbW9kZWNvbnQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcG9zdHByb2MuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcXVhbnRfY29tbW9uLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50ZXIu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVj
b25pbnRyYS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9yZWNvbmludHJhNHg0LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3J0Y2QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vc2V0dXBpbnRyYXJlY29uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3N3YXB5djEyYnVmZmVyLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3RyZWVjb2Rlci5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92cDhfbG9v
cGZpbHRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi92cDhfc2tpbl9kZXRlY3Rpb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9kZWNvZGVyL2Rib29saHVmZi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlZnJhbWUuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZW12LmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZXRva2VuaXpl
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9v
bnl4ZF9pZi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Rl
Y29kZXIvdGhyZWFkaW5nLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9hcm0vbmVvbi9kZW5vaXNpbmdfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYXJtL25lb24vZmFzdHF1YW50aXpl
Yl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9hcm0vbmVvbi9zaG9ydGZkY3RfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYXJtL25lb24vdnA4X3Nob3J0d2Fsc2g0eDRfbmVv
bi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
Yml0c3RyZWFtLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9ib29saHVmZi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvY29weV9jLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9kY3QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rlbm9pc2luZy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlZnJhbWUuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWludHJhLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVt
Yi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
ZW5jb2RlbXYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL2V0aHJlYWRpbmcuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVjb3N0cy5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbXJfZGlzc2ltLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9vbnl4X2lmLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNraW50
ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L3BpY2tscGYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL3JhdGVjdHJsLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9yZG9wdC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvc2VnbWVudGF0aW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci90b2tlbml6ZS5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdyaXRlci5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdnA4X3F1YW50aXpl
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvdnA4X2N4X2lm
YWNlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvdnA4X2R4
X2lmYWNlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL2FybS9uZW9uL3ZwOV9paHQxNngxNl9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0NHg0X2FkZF9u
ZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L2FybS9uZW9uL3ZwOV9paHQ4eDhfYWRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2FsbG9jY29tbW9uLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9ibG9ja2QuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1v
bl9kYXRhLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9lbnRyb3B5LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW12LmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9maWx0ZXIuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1
ZmZlcnMuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X2lkY3QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21mcWUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X212cmVmX2NvbW1vbi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcG9zdHByb2MuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3By
ZWRfY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9xdWFudF9jb21tb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3J0Y2QuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Nj
YWxlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9zY2FuLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9zZWdfY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV90aHJlYWRfY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aWxlX2NvbW1vbi5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29k
ZWZyYW1lLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVj
b2Rlci92cDlfZGVjb2RlbXYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGV0b2tlbml6ZS5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RzdWJleHAuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9qb2Jf
cXVldWUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL2FybS9uZW9uL3ZwOV9kZW5vaXNlcl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci9hcm0vbmVvbi92cDlfZXJyb3JfbmVvbi5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvYXJtL25l
b24vdnA5X2ZyYW1lX3NjYWxlX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL2FybS9uZW9uL3ZwOV9xdWFudGl6ZV9uZW9uLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3lj
bGljcmVmcmVzaC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2JpdHN0cmVhbS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2NvbnRleHRfdHJlZS5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Nvc3QuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kY3QuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5v
aXNlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2VuY29kZWZyYW1lLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhy
ZWFkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfZXh0X3JhdGVjdHJsLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZnJhbWVfc2NhbGUuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9t
Y29tcC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X211bHRpX3RocmVhZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja2xwZi5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2ttb2Rl
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfcXVhbnRpemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRp
b24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9za2luX2RldGVjdGlvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVy
Y29udGV4dC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X3Rva2VuaXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9pZmFjZS5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2NvZGVjLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9kZWNvZGVyLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9lbmNv
ZGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3Zw
eF9pbWFnZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hZGRfbm9pc2UuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYXJtL2F2Z19uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS9hdmdfcHJlZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9kZWJsb2NrX25lb24uYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2ZkY3QxNngxNl9uZW9uLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9mZGN0
MzJ4MzJfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9hcm0vZmRjdF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS9mZGN0X3BhcnRpYWxfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vZndkX3R4Zm1fbmVvbi5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGFkYW1hcmRfbmVv
bi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
aWRjdDE2eDE2XzFfYWRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYXJtL2lkY3QxNngxNl9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyXzEzNV9hZGRfbmVv
bi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
aWRjdDMyeDMyXzFfYWRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYXJtL2lkY3QzMngzMl8zNF9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyX2FkZF9uZW9u
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9p
ZGN0OHg4XzFfYWRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvYXJtL2lkY3Q4eDhfYWRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2ludHJhcHJlZF9uZW9uLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9xdWFudGl6ZV9uZW9u
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9z
YWQ0ZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9zYWRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9hcm0vc3VicGVsX3ZhcmlhbmNlX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1YnRyYWN0X25lb24uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1bV9zcXVhcmVz
X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
YXJtL3ZhcmlhbmNlX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfbmVvbl9hc20uYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZV9uZW9uLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhf
c2NhbGVkX2NvbnZvbHZlOF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2F2Zy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyX2J1ZmZlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXIuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyX2J1ZmZlci5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9kZWJsb2NrLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Z3ZF90eGZtLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2ludHJhcHJl
ZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZf
dHhmbS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9s
b29wZmlsdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3Byb2IuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvcHNuci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9xdWFudGl6ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9zYWQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3Avc2tpbl9kZXRlY3Rpb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3Avc3VidHJhY3QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3Avc3VtX3NxdWFyZXMuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvdmFyaWFuY2UuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2NvbnZvbHZlLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9kc3BfcnRjZC5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS92cHhfbWVtLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYXJtX2NwdWRldGVjdC5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL2dlbmVy
aWMvZ2VuX3NjYWxlcnMuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9zY2FsZS9nZW5lcmljL3ZweF9zY2FsZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL2dlbmVyaWMveXYxMmNvbmZpZy5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL2dlbmVyaWMveXYxMmV4dGVu
ZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL3Zw
eF9zY2FsZV9ydGNkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfdXRpbC92cHhfdGhyZWFkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfdXRpbC92cHhfd3JpdGVfeXV2X2ZyYW1lLmMiLAorXQorbGlidnB4X3NyY3NfYXJt
X25lb25faGVhZGVycyA9IFsKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9hbGxvY2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbG9vcGZpbHRlcl9hcm0uaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYmxvY2tkLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2NvZWZ1cGRhdGVwcm9icy5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9jb21t
b24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
ZGVmYXVsdF9jb2VmX3Byb2JzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL2VudHJvcHkuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW1vZGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW12LmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2V4dGVuZC5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maWx0ZXIuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZmluZG5lYXJtdi5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9oZWFk
ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
aW52dHJhbnMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vbG9vcGZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9tb2RlY29udC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9tdi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9vbnl4LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL29ueXhjX2ludC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9vbnl4ZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9wb3N0cHJvYy5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9wcGZsYWdzLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2NvbW1vbi5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNv
bmludGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL3JlY29uaW50cmEuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vcmVjb25pbnRyYTR4NC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zZXR1cGludHJhcmVjb24uaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZmZXIuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3lzdGVtZGVw
ZW5kZW50LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL3RocmVhZGluZy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi90cmVlY29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vdnA4X2VudHJvcHltb2RlZGF0YS5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92cDhfc2tpbl9kZXRlY3Rpb24uaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2Rib29s
aHVmZi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29k
ZXIvZGVjb2RlbXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9kZWNvZGVyL2RlY29kZXJ0aHJlYWRpbmcuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RldG9rZW5pemUuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL29ueXhkX2ludC5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvdHJlZXJlYWRlci5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYml0c3Ry
ZWFtLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9ibG9jay5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvYm9vbGh1ZmYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL2RjdF92YWx1ZV9jb3N0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3RfdmFsdWVfdG9rZW5zLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZWZhdWx0Y29lZmNvdW50
cy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
ZGVub2lzaW5nLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9lbmNvZGVmcmFtZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlaW50cmEuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW1iLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtdi5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZXRocmVhZGluZy5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZmlyc3Rw
YXNzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9sb29rYWhlYWQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL21jb21wLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9tb2RlY29zdHMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL21yX2Rpc3NpbS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pbnQuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tpbnRlci5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xwZi5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcXVhbnRp
emUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L3JhdGVjdHJsLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9yZG9wdC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvc2VnbWVudGF0aW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci90b2tlbml6ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdyaXRlci5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0X25l
b24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X2FsbG9jY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9ibG9ja2QuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uX2RhdGEuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHkuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Vu
dHJvcHltb2RlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9lbnRyb3B5bXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X2VudW1zLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9maWx0ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2lkY3Qu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X2xvb3BmaWx0ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X21mcWUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X212LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdnJlZl9jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X29ueXhjX2ludC5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcG9zdHByb2Mu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X3BwZmxhZ3MuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X3ByZWRfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9xdWFudF9jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50ZXIuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50
cmEuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X3NjYWxlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9zY2FuLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9zZWdfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aHJlYWRfY29tbW9uLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aWxlX2NvbW1vbi5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5
X2RlY29kZWZyYW1lLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZGVjb2Rlci92cDlfZGVjb2RlbXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGV0b2tlbml6ZS5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RzdWJleHAu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3Zw
OV9qb2JfcXVldWUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9hcV9jeWNsaWNyZWZyZXNoLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYml0c3RyZWFtLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYmxvY2suaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9jb250
ZXh0X3RyZWUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9jb3N0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZGVub2lzZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVmcmFtZS5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW1iLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5j
b2RlbXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9lbmNvZGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZXRocmVhZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dF9yYXRlY3RybC5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dGVuZC5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZpcnN0
cGFzcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2pvYl9xdWV1ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2xvb2thaGVhZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21iZ3JhcGguaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tY29tcC5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X211bHRpX3Ro
cmVhZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X25vaXNlX2VzdGltYXRlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGFydGl0aW9uX21vZGVscy5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2tscGYuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNr
bW9kZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X3F1YW50aXplLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfcmF0ZWN0cmwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jkb3B0LmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmVzaXplLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc2VnbWVu
dGF0aW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfc2tpbl9kZXRlY3Rpb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zcGVlZF9mZWF0dXJlcy5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19s
YXllcmNvbnRleHQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV90ZW1wb3JhbF9maWx0ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90b2tlbml6ZS5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3RyZWV3cml0ZXIuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfY3hfaWZhY2Uu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfZHhfaWZh
Y2UuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfaWZh
Y2VfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgv
aW50ZXJuYWwvdnB4X2NvZGVjX2ludGVybmFsLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHgvdnA4LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvdnA4Y3guaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC92cDhkeC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4L3ZweF9jb2RlYy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4L3ZweF9kZWNvZGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvdnB4X2VuY29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC92cHhfZXh0X3JhdGVjdHJsLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHgvdnB4X2ZyYW1lX2J1ZmZlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbWFnZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbnRlZ2VyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0X25lb24uaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL21lbV9uZW9uLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zdW1fbmVvbi5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdHJh
bnNwb3NlX25lb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYXJtL3ZweF9jb252b2x2ZThfbmVvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9uZW9uX2FzbS5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXIuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVy
X2J1ZmZlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9iaXR3cml0ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYml0d3JpdGVyX2J1ZmZlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZfdHhmbS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wb3N0cHJvYy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wcm9iLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3BzbnIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcXVhbnRpemUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Avc2tpbl9kZXRlY3Rpb24uaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdHhmbV9jb21tb24uaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdmFyaWFuY2UuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2NvbnZvbHZl
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9k
c3BfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3ZweF9maWx0ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9tZW0vaW5jbHVkZS92cHhfbWVtX2ludHJubC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS92cHhfbWVtLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYXJtLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYml0b3BzLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvY29tcGlsZXJfYXR0cmlidXRlcy5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2VtbWludHJp
bl9jb21wYXQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9w
b3J0cy9tZW0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9w
b3J0cy9tZW1fb3BzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfcG9ydHMvbWVtX29wc19hbGlnbmVkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfcG9ydHMvbWlwcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3BvcnRzL21zdmMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9wb3J0cy9zdGF0aWNfYXNzZXJ0LmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvc3lzdGVtX3N0YXRlLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X29uY2UuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfdGltZXIu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy94ODYu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhf
c2NhbGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2Fs
ZS95djEyY29uZmlnLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfdXRpbC9lbmRpYW5faW5sLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfdXRpbC92cHhfYXRvbWljcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RocmVhZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RpbWVzdGFtcC5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3dyaXRlX3l1dl9mcmFtZS5o
IiwKK10KK2xpYnZweF9zcmNzX2FybV9uZW9uX2Fzc2VtYmx5ID0gWworICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0NHg0XzFfYWRkX25lb24uYXNt
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRj
dDR4NF9hZGRfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FybS9pZGN0X25lb24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaW50cmFwcmVkX25lb25fYXNtLmFzbSIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2xvb3BmaWx0ZXJfMTZf
bmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2FybS9sb29wZmlsdGVyXzRfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS9sb29wZmlsdGVyXzhfbmVvbi5hc20iLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zYXZlX3JlZ19uZW9uLmFz
bSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3Zw
eF9jb252b2x2ZThfYXZnX2hvcml6X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfYXZn
X2hvcml6X2ZpbHRlcl90eXBlMl9uZW9uLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfYXZnX3ZlcnRfZmlsdGVyX3R5
cGUxX25lb24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9hdmdfdmVydF9maWx0ZXJfdHlwZTJfbmVvbi5hc20iLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29u
dm9sdmU4X2hvcml6X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfaG9yaXpfZmlsdGVy
X3R5cGUyX25lb24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF92ZXJ0X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252
b2x2ZThfdmVydF9maWx0ZXJfdHlwZTJfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmVfYXZnX25lb25fYXNtLmFz
bSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3Zw
eF9jb252b2x2ZV9jb3B5X25lb25fYXNtLmFzbSIsCitdCitsaWJ2cHhfc3Jjc19hcm1fbmVvbl9j
cHVfZGV0ZWN0ID0gWworICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2FsbG9jY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL2FybS9sb29wZmlsdGVyX2FybS5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZGVxdWFudGl6ZS5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5LmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHlt
b2RlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2VudHJvcHltdi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9leHRlbmQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vZmlsdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL2ZpbmRuZWFybXYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZ2VuZXJpYy9zeXN0ZW1kZXBlbmRlbnQuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaWRjdF9ibGsuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaWRjdGxs
bS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9s
b29wZmlsdGVyX2ZpbHRlcnMuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vbWJwaXRjaC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9tZnFlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL21vZGVjb250LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2NvbW1vbi5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludGVyLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29u
aW50cmEuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vcmVjb25pbnRyYTR4NC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9ydGNkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3NldHVwaW50cmFyZWNvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zd2FweXYxMmJ1ZmZlci5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90cmVlY29kZXIuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X2xvb3Bm
aWx0ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vdnA4X3NraW5fZGV0ZWN0aW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZGVjb2Rlci9kYm9vbGh1ZmYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZWZyYW1lLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVtdi5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGV0b2tlbml6ZS5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvb255
eGRfaWYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNv
ZGVyL3RocmVhZGluZy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvYml0c3RyZWFtLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9ib29saHVmZi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvY29weV9jLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3QuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rlbm9pc2luZy5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlZnJhbWUuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29k
ZWludHJhLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9lbmNvZGVtYi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvZW5jb2RlbXYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL2V0aHJlYWRpbmcuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVjb3N0cy5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbXJfZGlzc2lt
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9v
bnl4X2lmLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9waWNraW50ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL3BpY2tscGYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yZG9wdC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvc2VnbWVudGF0aW9uLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci90b2tlbml6ZS5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdyaXRl
ci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
dnA4X3F1YW50aXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvdnA4X2N4X2lmYWNlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvdnA4X2R4X2lmYWNlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9hbGxvY2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYmxvY2tkLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb25fZGF0YS5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50
cm9weS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfZW50cm9weW1vZGUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltdi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZmlsdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9mcmFtZV9idWZmZXJzLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9pZGN0
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9sb29wZmlsdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9tZnFlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9tdnJlZl9jb21tb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Bvc3Rwcm9jLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
cXVhbnRfY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9yZWNvbmludGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludHJhLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9ydGNkLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FsZS5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
c2VnX2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfdGhyZWFkX2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9jb21tb24uYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVmcmFtZS5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2Rl
Y29kZW12LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVj
b2Rlci92cDlfZGVjb2Rlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2RlY29kZXIvdnA5X2RldG9rZW5pemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kc3ViZXhwLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfam9iX3F1ZXVlLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFf
Y3ljbGljcmVmcmVzaC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2JpdHN0cmVhbS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2NvbnRleHRfdHJlZS5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Nvc3QuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kY3QuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9k
ZW5vaXNlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2VuY29kZWZyYW1lLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9l
dGhyZWFkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfZXh0X3JhdGVjdHJsLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZnJhbWVfc2NhbGUuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9tY29tcC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X211bHRpX3RocmVhZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja2xwZi5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2tt
b2RlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfcXVhbnRpemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50
YXRpb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9za2luX2RldGVjdGlvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ZjX2xh
eWVyY29udGV4dC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3Rva2VuaXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9pZmFjZS5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2NvZGVjLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9kZWNvZGVy
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9l
bmNvZGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3Jj
L3ZweF9pbWFnZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9hZGRfbm9pc2UuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXZnLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2JpdHJlYWRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXJfYnVmZmVyLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2RlYmxvY2suYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvZndkX3R4Zm0uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW50cmFwcmVkLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2ludl90eGZtLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2xvb3BmaWx0
ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHJv
Yi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wc25y
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50
aXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Nh
ZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2lu
X2RldGVjdGlvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9zdWJ0cmFjdC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9zdW1fc3F1YXJlcy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9ydGNkLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVtL3ZweF9tZW0uYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hcm1fY3B1ZGV0ZWN0LmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy9nZW5f
c2NhbGVycy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3Nj
YWxlL2dlbmVyaWMvdnB4X3NjYWxlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95djEyY29uZmlnLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95djEyZXh0ZW5kLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvdnB4X3NjYWxl
X3J0Y2QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGls
L3ZweF90aHJlYWQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF91dGlsL3ZweF93cml0ZV95dXZfZnJhbWUuYyIsCitdCitsaWJ2cHhfc3Jjc19hcm1fbmVvbl9j
cHVfZGV0ZWN0X2hlYWRlcnMgPSBbCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vYWxsb2Njb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL2xvb3BmaWx0ZXJfYXJtLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Jsb2NrZC5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9jb2VmdXBkYXRlcHJv
YnMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
Y29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2RlZmF1bHRfY29lZl9wcm9icy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHltb2RlLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHltdi5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9leHRlbmQuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZmlsdGVyLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbmRuZWFy
bXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
aGVhZGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2ludnRyYW5zLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2xvb3BmaWx0ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vbW9kZWNvbnQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vb255eC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9vbnl4Y19pbnQuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vb255eGQuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcG9zdHByb2MuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcHBmbGFncy5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9xdWFudF9jb21t
b24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
cmVjb25pbnRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9yZWNvbmludHJhLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc2V0dXBpbnRyYXJlY29uLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3N3YXB5djEyYnVmZmVyLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3N5c3Rl
bWRlcGVuZGVudC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi90aHJlYWRpbmcuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vdHJlZWNvZGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9lbnRyb3B5bW9kZWRhdGEuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X3NraW5fZGV0ZWN0aW9u
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9k
Ym9vbGh1ZmYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9k
ZWNvZGVyL2RlY29kZW12LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZGVjb2Rlci9kZWNvZGVydGhyZWFkaW5nLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZXRva2VuaXplLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9vbnl4ZF9pbnQuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL3RyZWVyZWFkZXIu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jp
dHN0cmVhbS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvYmxvY2suaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL2Jvb2xodWZmLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9kY3RfdmFsdWVfY29zdC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGN0X3ZhbHVlX3Rva2Vucy5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGVmYXVsdGNvZWZj
b3VudHMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL2Rlbm9pc2luZy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvZW5jb2RlZnJhbWUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWludHJhLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtYi5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbXYuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2V0aHJlYWRpbmcu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Zp
cnN0cGFzcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvbG9va2FoZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9tY29tcC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvbW9kZWNvc3RzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tcl9kaXNzaW0uaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL29ueXhfaW50LmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNraW50ZXIuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tscGYu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3F1
YW50aXplLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9yYXRlY3RybC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvcmRvcHQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL3NlZ21lbnRhdGlvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdG9rZW5pemUuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25lb24vdnA5X2lo
dF9uZW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9hbGxvY2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfYmxvY2tkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbl9kYXRhLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9lbnRyb3B5bW9kZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfZW50cm9weW12LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnVtcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZmlsdGVyLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9mcmFtZV9idWZmZXJzLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9p
ZGN0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9sb29wZmlsdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9tZnFlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbXZyZWZfY29tbW9uLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9vbnl4Y19pbnQuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Bvc3Rw
cm9jLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9wcGZsYWdzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9uLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludGVyLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNv
bmludHJhLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9zY2FsZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfc2Nhbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGhyZWFkX2NvbW1vbi5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9jb21t
b24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVy
L3ZwOV9kZWNvZGVmcmFtZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZW12LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rlci5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RldG9rZW5pemUuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kc3Vi
ZXhwLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rl
ci92cDlfam9iX3F1ZXVlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVzaC5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2JpdHN0cmVhbS5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Jsb2NrLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
Y29udGV4dF90cmVlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfY29zdC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Rlbm9pc2VyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlZnJhbWUuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtYi5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2VuY29kZW12LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfZW5jb2Rlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V0aHJlYWQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRfcmF0ZWN0cmwuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRlbmQuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9m
aXJzdHBhc3MuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9qb2JfcXVldWUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tYmdyYXBoLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWNvbXAuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tdWx0
aV90aHJlYWQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BhcnRpdGlvbl9tb2RlbHMuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbHBmLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
cGlja21vZGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9xdWFudGl6ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJsLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmQuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZG9wdC5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jlc2l6ZS5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Nl
Z21lbnRhdGlvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRfZmVhdHVyZXMuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdWJleHAuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9z
dmNfbGF5ZXJjb250ZXh0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfdGVtcG9yYWxfZmlsdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdG9rZW5pemUuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90cmVld3JpdGVy
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2N4X2lm
YWNlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2R4
X2lmYWNlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5
X2lmYWNlX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4L2ludGVybmFsL3ZweF9jb2RlY19pbnRlcm5hbC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4L3ZwOGN4LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvdnA4ZHguaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC92cHhfY29kZWMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC92cHhfZGVjb2Rlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4L3ZweF9lbmNvZGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvdnB4X2V4dF9yYXRlY3RybC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9mcmFtZV9idWZmZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfaW1hZ2UuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfaW50ZWdlci5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdF9uZW9uLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9tZW1fbmVvbi5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc3VtX25l
b24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L3RyYW5zcG9zZV9uZW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X25lb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfbmVvbl9hc20uaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVy
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJl
YWRlcl9idWZmZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYml0d3JpdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2JpdHdyaXRlcl9idWZmZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvZndkX3R4Zm0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcG9zdHByb2MuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHJvYi5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wc25yLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50aXplLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NraW5fZGV0ZWN0aW9uLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3R4Zm1fY29tbW9uLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZhcmlhbmNlLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9jb252
b2x2ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92
cHhfZHNwX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC92cHhfZmlsdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfbWVtL2luY2x1ZGUvdnB4X21lbV9pbnRybmwuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9tZW0vdnB4X21lbS5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2FybS5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2JpdG9wcy5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2NvbXBpbGVyX2F0dHJpYnV0ZXMu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9lbW1p
bnRyaW5fY29tcGF0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfcG9ydHMvbWVtLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfcG9ydHMvbWVtX29wcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3BvcnRzL21lbV9vcHNfYWxpZ25lZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21pcHMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9tc3ZjLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvc3RhdGljX2Fzc2VydC5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3N5c3RlbV9zdGF0ZS5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3ZweF9vbmNlLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X3Rp
bWVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMv
eDg2LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUv
dnB4X3NjYWxlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
c2NhbGUveXYxMmNvbmZpZy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3V0aWwvZW5kaWFuX2lubC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X3V0aWwvdnB4X2F0b21pY3MuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF90aHJlYWQuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF90aW1lc3RhbXAuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF93cml0ZV95dXZfZnJh
bWUuaCIsCitdCitsaWJ2cHhfc3Jjc19hcm1fbmVvbl9jcHVfZGV0ZWN0X2Fzc2VtYmx5ID0gWwor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0NHg0
XzFfYWRkX25lb24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9hcm0vaWRjdDR4NF9hZGRfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0X25lb24uYXNtIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaW50cmFwcmVkX25lb25fYXNt
LmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L2xvb3BmaWx0ZXJfMTZfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2FybS9sb29wZmlsdGVyXzRfbmVvbi5hc20iLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9sb29wZmlsdGVyXzhfbmVvbi5h
c20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9z
YXZlX3JlZ19uZW9uLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfYXZnX2hvcml6X2ZpbHRlcl90eXBlMV9uZW9uLmFz
bSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3Zw
eF9jb252b2x2ZThfYXZnX2hvcml6X2ZpbHRlcl90eXBlMl9uZW9uLmFzbSIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfYXZn
X3ZlcnRfZmlsdGVyX3R5cGUxX25lb24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9hdmdfdmVydF9maWx0ZXJfdHlw
ZTJfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS92cHhfY29udm9sdmU4X2hvcml6X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2
ZThfaG9yaXpfZmlsdGVyX3R5cGUyX25lb24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF92ZXJ0X2ZpbHRlcl90eXBl
MV9uZW9uLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL3ZweF9jb252b2x2ZThfdmVydF9maWx0ZXJfdHlwZTJfbmVvbi5hc20iLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmVf
YXZnX25lb25fYXNtLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZV9jb3B5X25lb25fYXNtLmFzbSIsCitdCitsaWJ2cHhf
c3Jjc19hcm1fbmVvbl9jcHVfZGV0ZWN0X25lb24gPSBbCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vYmlsaW5lYXJwcmVkaWN0X25lb24u
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJt
L25lb24vY29weW1lbV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL2FybS9uZW9uL2RjX29ubHlfaWRjdF9hZGRfbmVvbi5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9kZXF1
YW50X2lkY3RfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9hcm0vbmVvbi9kZXF1YW50aXplYl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2lkY3RfYmxrX25lb24u
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJt
L25lb24vaXdhbHNoX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vYXJtL25lb24vbG9vcGZpbHRlcnNpbXBsZWhvcml6b250YWxlZGdlX25l
b24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
YXJtL25lb24vbG9vcGZpbHRlcnNpbXBsZXZlcnRpY2FsZWRnZV9uZW9uLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL21ibG9vcGZp
bHRlcl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2FybS9uZW9uL3Nob3J0aWRjdDR4NGxsbV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL3NpeHRhcHByZWRpY3Rf
bmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9hcm0vbmVvbi92cDhfbG9vcGZpbHRlcl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9hcm0vbmVvbi9kZW5vaXNpbmdfbmVvbi5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYXJtL25l
b24vZmFzdHF1YW50aXplYl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9hcm0vbmVvbi9zaG9ydGZkY3RfbmVvbi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYXJtL25lb24vdnA4X3No
b3J0d2Fsc2g0eDRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0MTZ4MTZfYWRkX25lb24uYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25lb24vdnA5X2lo
dDR4NF9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0OHg4X2FkZF9uZW9uLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci9hcm0vbmVvbi92cDlfZGVub2lz
ZXJfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvYXJtL25lb24vdnA5X2Vycm9yX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL2FybS9uZW9uL3ZwOV9mcmFtZV9zY2FsZV9uZW9u
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci9h
cm0vbmVvbi92cDlfcXVhbnRpemVfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vYXZnX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2F2Z19wcmVkX25lb24uYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2RlYmxvY2tfbmVvbi5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vZmRj
dDE2eDE2X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYXJtL2ZkY3QzMngzMl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS9mZGN0X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2ZkY3RfcGFydGlhbF9uZW9uLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9md2RfdHhmbV9u
ZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Fy
bS9oYWRhbWFyZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FybS9pZGN0MTZ4MTZfMV9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDE2eDE2X2FkZF9uZW9uLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0MzJ4
MzJfMTM1X2FkZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FybS9pZGN0MzJ4MzJfMV9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyXzM0X2FkZF9uZW9uLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0
MzJ4MzJfYWRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXJtL2lkY3Q4eDhfMV9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDh4OF9hZGRfbmVvbi5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaW50cmFwcmVkX25l
b24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L3F1YW50aXplX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXJtL3NhZDRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvYXJtL3NhZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zdWJwZWxfdmFyaWFuY2VfbmVvbi5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc3VidHJhY3Rf
bmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9h
cm0vc3VtX3NxdWFyZXNfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9hcm0vdmFyaWFuY2VfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlX25lb24uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9zY2FsZWRf
Y29udm9sdmU4X25lb24uYyIsCitdCitsaWJ2cHhfc3Jjc19hcm02NCA9IFsKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hbGxvY2NvbW1vbi5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbG9vcGZp
bHRlcl9hcm0uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vYXJtL25lb24vYmlsaW5lYXJwcmVkaWN0X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vY29weW1lbV9uZW9uLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9u
ZW9uL2RjX29ubHlfaWRjdF9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9kZXF1YW50X2lkY3RfbmVvbi5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9k
ZXF1YW50aXplYl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2FybS9uZW9uL2lkY3RfYmxrX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vaXdhbHNoX25lb24uYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25l
b24vbG9vcGZpbHRlcnNpbXBsZWhvcml6b250YWxlZGdlX25lb24uYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vbG9vcGZpbHRlcnNp
bXBsZXZlcnRpY2FsZWRnZV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL21ibG9vcGZpbHRlcl9uZW9uLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL3Nob3J0
aWRjdDR4NGxsbV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2FybS9uZW9uL3NpeHRhcHByZWRpY3RfbmVvbi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi92cDhfbG9vcGZp
bHRlcl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2Jsb2NrZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9kZXF1YW50aXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2VudHJvcHkuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW1vZGUuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW12LmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2V4dGVuZC5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maWx0ZXIuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZmluZG5lYXJt
di5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9n
ZW5lcmljL3N5c3RlbWRlcGVuZGVudC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9pZGN0X2Jsay5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pZGN0bGxtLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2xvb3BmaWx0ZXJfZmlsdGVycy5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tYnBpdGNoLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21mcWUu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbW9k
ZWNvbnQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vcG9zdHByb2MuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vcXVhbnRfY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYS5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhNHg0LmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3J0Y2QuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc2V0dXBpbnRy
YXJlY29uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL3N3YXB5djEyYnVmZmVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3RyZWVjb2Rlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92cDhfbG9vcGZpbHRlci5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92cDhfc2tpbl9kZXRlY3Rpb24uYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2Rib29s
aHVmZi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29k
ZXIvZGVjb2RlZnJhbWUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9kZWNvZGVyL2RlY29kZW12LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZGVjb2Rlci9kZXRva2VuaXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9vbnl4ZF9pZi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvdGhyZWFkaW5nLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9hcm0vbmVvbi9kZW5v
aXNpbmdfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvYXJtL25lb24vZmFzdHF1YW50aXplYl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9hcm0vbmVvbi9zaG9ydGZkY3RfbmVv
bi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
YXJtL25lb24vdnA4X3Nob3J0d2Fsc2g0eDRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYml0c3RyZWFtLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ib29saHVmZi5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvY29weV9jLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3QuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rlbm9p
c2luZy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvZW5jb2RlZnJhbWUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL2VuY29kZWludHJhLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtYi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbXYuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2V0aHJlYWRpbmcuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNv
bXAuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L21vZGVjb3N0cy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvbXJfZGlzc2ltLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9vbnl4X2lmLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNraW50ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tscGYuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yZG9wdC5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvc2VnbWVudGF0
aW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci90b2tlbml6ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvdHJlZXdyaXRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvdnA4X3F1YW50aXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvdnA4X2N4X2lmYWNlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvdnA4X2R4X2lmYWNlLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9paHQxNngxNl9h
ZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi9hcm0vbmVvbi92cDlfaWh0NHg0X2FkZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9paHQ4eDhfYWRkX25l
b24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X2FsbG9jY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9ibG9ja2QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbl9kYXRhLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5LmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bW9k
ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfZW50cm9weW12LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9maWx0ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2lkY3QuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21m
cWUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X212cmVmX2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfcG9zdHByb2MuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3ByZWRfY29tbW9uLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9xdWFudF9jb21tb24uYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Jl
Y29uaW50ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X3JlY29uaW50cmEuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X3J0Y2QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NjYWxlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FuLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zZWdfY29tbW9uLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aHJl
YWRfY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV90aWxlX2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZWZyYW1lLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlbXYuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVy
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92
cDlfZGV0b2tlbml6ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2RlY29kZXIvdnA5X2RzdWJleHAuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9qb2JfcXVldWUuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL2FybS9uZW9uL3ZwOV9kZW5vaXNlcl9u
ZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci9hcm0vbmVvbi92cDlfZXJyb3JfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvYXJtL25lb24vdnA5X2ZyYW1lX3NjYWxlX25lb24uYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL2FybS9u
ZW9uL3ZwOV9xdWFudGl6ZV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVzaC5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2JpdHN0cmVhbS5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Nv
bnRleHRfdHJlZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2Nvc3QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9kY3QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZWZyYW1lLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2Rl
bWIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9lbmNvZGVtdi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2VuY29kZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5k
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfZnJhbWVfc2NhbGUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tY29tcC5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X211bHRpX3RocmVhZC5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNl
X2VzdGltYXRlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfcGlja2xwZi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2ttb2RlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcXVhbnRpemUuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jk
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfcmRvcHQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9yZXNpemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9za2luX2RldGVjdGlvbi5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVk
X2ZlYXR1cmVzLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfc3ViZXhwLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVyY29udGV4dC5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Rva2VuaXplLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdHJlZXdy
aXRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9j
eF9pZmFjZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3Zw
OV9keF9pZmFjZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L3ZwOV9pZmFjZV9jb21tb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC9zcmMvdnB4X2NvZGVjLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvc3JjL3ZweF9kZWNvZGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9lbmNvZGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9pbWFnZS5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hZGRfbm9pc2UuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2F2Z19uZW9uLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9hdmdfcHJlZF9u
ZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Fy
bS9kZWJsb2NrX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXJtL2ZkY3QxNngxNl9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2FybS9mZGN0MzJ4MzJfbmVvbi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vZmRjdF9uZW9uLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9mZGN0X3BhcnRp
YWxfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vZndkX3R4Zm1fbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9hcm0vaGFkYW1hcmRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDE2eDE2XzFfYWRkX25lb24uYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3QxNngx
Nl9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9hcm0vaWRjdDMyeDMyXzEzNV9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyXzFfYWRkX25lb24uYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3QzMngz
Ml8zNF9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9hcm0vaWRjdDMyeDMyX2FkZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0NHg0XzFfYWRkX25lb24uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3Q0eDRfYWRk
X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
YXJtL2lkY3Q4eDhfMV9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDh4OF9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaW50cmFwcmVkX25lb24uYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2xvb3BmaWx0
ZXJfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vcXVhbnRpemVfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9hcm0vc2FkNGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc2FkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1YnBlbF92YXJpYW5jZV9uZW9uLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zdWJ0
cmFjdF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9zdW1fc3F1YXJlc19uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS92YXJpYW5jZV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X25lb24uYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9j
b252b2x2ZV9hdmdfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlX2NvcHlfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlX25lb24uYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9z
Y2FsZWRfY29udm9sdmU4X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYXZnLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2JpdHJlYWRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlci5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXJfYnVmZmVyLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2RlYmxvY2suYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvZndkX3R4Zm0uYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW50cmFwcmVk
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2ludl90
eGZtLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2xv
b3BmaWx0ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvcHJvYi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9wc25yLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3F1YW50aXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3NhZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9za2luX2RldGVjdGlvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9zdWJ0cmFjdC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9zdW1fc3F1YXJlcy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9ydGNkLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVtL3ZweF9tZW0uYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hcm1fY3B1ZGV0ZWN0LmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJp
Yy9nZW5fc2NhbGVycy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X3NjYWxlL2dlbmVyaWMvdnB4X3NjYWxlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95djEyY29uZmlnLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95djEyZXh0ZW5k
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvdnB4
X3NjYWxlX3J0Y2QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF91dGlsL3ZweF90aHJlYWQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF91dGlsL3ZweF93cml0ZV95dXZfZnJhbWUuYyIsCitdCitsaWJ2cHhfc3Jjc19hcm02
NF9oZWFkZXJzID0gWworICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2FsbG9jY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL2FybS9sb29wZmlsdGVyX2FybS5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vY29lZnVwZGF0ZXByb2JzLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2NvbW1vbi5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9kZWZh
dWx0X2NvZWZfcHJvYnMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vZW50cm9weS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bXYuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZXh0ZW5kLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbHRlci5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2hlYWRlci5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pbnZ0
cmFucy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9sb29wZmlsdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL21vZGVjb250LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL212LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL29ueXguaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vb255eGNfaW50LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL29ueXhkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3BwZmxhZ3MuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcXVhbnRfY29tbW9uLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50
ZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
cmVjb25pbnRyYS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9yZWNvbmludHJhNHg0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3NldHVwaW50cmFyZWNvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zd2FweXYxMmJ1ZmZlci5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zeXN0ZW1kZXBlbmRl
bnQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
dGhyZWFkaW5nLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL3RyZWVjb2Rlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi92cDhfZW50cm9weW1vZGVkYXRhLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZm
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9k
ZWNvZGVtdi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Rl
Y29kZXIvZGVjb2RlcnRocmVhZGluZy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2RlY29kZXIvZGV0b2tlbml6ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvb255eGRfaW50LmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci90cmVlcmVhZGVyLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0u
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Js
b2NrLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9ib29saHVmZi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvZGN0X3ZhbHVlX2Nvc3QuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RjdF92YWx1ZV90b2tlbnMuaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RlZmF1bHRjb2VmY291bnRzLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZW5v
aXNpbmcuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL2VuY29kZWZyYW1lLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9lbmNvZGVpbnRyYS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbWIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW12LmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ldGhyZWFkaW5nLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9maXJzdHBhc3Mu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xv
b2thaGVhZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvbWNvbXAuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL21vZGVjb3N0cy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvbXJfZGlzc2ltLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9vbnl4X2ludC5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2ludGVyLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNrbHBmLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9xdWFudGl6ZS5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0
ZWN0cmwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL3Jkb3B0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9zZWdtZW50YXRpb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL3Rva2VuaXplLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci90cmVld3JpdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9paHRfbmVvbi5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
YWxsb2Njb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X2Jsb2NrZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb25fZGF0YS5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weS5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9w
eW1vZGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X2VudHJvcHltdi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfZW51bXMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZnJhbWVfYnVmZmVycy5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfaWRjdC5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbG9v
cGZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfbWZxZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfbXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X212cmVmX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfb255eGNfaW50LmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0cHJvYy5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcHBm
bGFncy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfcHJlZF9jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X3F1YW50X2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRlci5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRyYS5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
c2NhbGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X3NjYW4uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X3NlZ19jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RocmVhZF9jb21tb24uaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RpbGVfY29tbW9uLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVj
b2RlZnJhbWUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9k
ZWNvZGVyL3ZwOV9kZWNvZGVtdi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZXRva2VuaXplLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1YmV4cC5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2pv
Yl9xdWV1ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2FxX2N5Y2xpY3JlZnJlc2guaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9iaXRzdHJlYW0uaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ibG9jay5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2NvbnRleHRf
dHJlZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2Nvc3QuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZWZyYW1lLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVt
di5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2VuY29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZmlyc3RwYXNz
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfam9iX3F1ZXVlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfbG9va2FoZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWJncmFwaC5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21jb21wLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbXVsdGlfdGhyZWFk
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfbm9pc2VfZXN0aW1hdGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9wYXJ0aXRpb25fbW9kZWxzLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja2xwZi5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2ttb2Rl
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfcXVhbnRpemUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuaCIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRp
b24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9za2luX2RldGVjdGlvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVy
Y29udGV4dC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X3RlbXBvcmFsX2ZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Rva2VuaXplLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9pZmFjZS5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9j
b21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9pbnRl
cm5hbC92cHhfY29kZWNfaW50ZXJuYWwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweC92cDguaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC92cDhjeC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4L3ZwOGR4LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgv
dnB4X2NvZGVjLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgv
dnB4X2RlY29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eC92cHhfZW5jb2Rlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4L3ZweF9leHRfcmF0ZWN0cmwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweC92cHhfZnJhbWVfYnVmZmVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHgvdnB4X2ltYWdlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHgvdnB4X2ludGVnZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3RfbmVvbi5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vbWVtX25lb24uaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1bV9uZW9uLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS90cmFuc3Bv
c2VfbmVvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vdnB4X2NvbnZvbHZlOF9uZW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlci5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXJfYnVmZmVyLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Z3ZF90eGZt
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2ludl90
eGZtLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Bv
c3Rwcm9jLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3Byb2IuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
cHNuci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9x
dWFudGl6ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9za2luX2RldGVjdGlvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC90eGZtX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9jb21tb24uaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2ZpbHRlci5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS9pbmNsdWRlL3ZweF9tZW1f
aW50cm5sLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVt
L3ZweF9tZW0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9w
b3J0cy9hcm0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9w
b3J0cy9iaXRvcHMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9wb3J0cy9jb21waWxlcl9hdHRyaWJ1dGVzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfcG9ydHMvZW1taW50cmluX2NvbXBhdC5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21lbS5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21lbV9vcHMuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9tZW1fb3BzX2FsaWduZWQu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9taXBz
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbXN2
Yy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3N0
YXRpY19hc3NlcnQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9wb3J0cy9zeXN0ZW1fc3RhdGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9wb3J0cy92cHhfb25jZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3BvcnRzL3ZweF90aW1lci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3g4Ni5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL3ZweF9zY2FsZS5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL3l2MTJjb25maWcuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL2VuZGlhbl9pbmwuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF9hdG9taWNz
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhf
dGhyZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRp
bC92cHhfdGltZXN0YW1wLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfdXRpbC92cHhfd3JpdGVfeXV2X2ZyYW1lLmgiLAorXQorbGlidnB4X3NyY3NfYXJtNjRf
YXNzZW1ibHkgPSBbXQorbGlidnB4X3NyY3NfYXJtX25lb25faGlnaGJkID0gWworICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FsbG9jY29tbW9uLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9sb29w
ZmlsdGVyX2FybS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9hcm0vbmVvbi9iaWxpbmVhcnByZWRpY3RfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9jb3B5bWVtX25lb24u
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJt
L25lb24vZGNfb25seV9pZGN0X2FkZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2RlcXVhbnRfaWRjdF9uZW9uLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9u
L2RlcXVhbnRpemViX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vYXJtL25lb24vaWRjdF9ibGtfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9pd2Fsc2hfbmVvbi5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0v
bmVvbi9sb29wZmlsdGVyc2ltcGxlaG9yaXpvbnRhbGVkZ2VfbmVvbi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9sb29wZmlsdGVy
c2ltcGxldmVydGljYWxlZGdlX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vbWJsb29wZmlsdGVyX25lb24uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vc2hv
cnRpZGN0NHg0bGxtX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vYXJtL25lb24vc2l4dGFwcHJlZGljdF9uZW9uLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL3ZwOF9sb29w
ZmlsdGVyX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vYmxvY2tkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2RlcXVhbnRpemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bXYuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZXh0ZW5kLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbHRlci5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVh
cm12LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2dlbmVyaWMvc3lzdGVtZGVwZW5kZW50LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL2lkY3RfYmxrLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2lkY3RsbG0uYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbG9vcGZpbHRlcl9maWx0ZXJzLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21icGl0Y2gu
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWZx
ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9t
b2RlY29udC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9wb3N0cHJvYy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9xdWFudF9jb21tb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcnRjZC5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zZXR1cGlu
dHJhcmVjb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vc3dhcHl2MTJidWZmZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vdHJlZWNvZGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9sb29wZmlsdGVyLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGJv
b2xodWZmLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVj
b2Rlci9kZWNvZGVmcmFtZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2RlY29kZXIvZGVjb2RlbXYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RldG9rZW5pemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL29ueXhkX2lmLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci90aHJlYWRpbmcuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9uL2Rl
bm9pc2luZ19uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9hcm0vbmVvbi9mYXN0cXVhbnRpemViX25lb24uYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9uL3Nob3J0ZmRjdF9u
ZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9hcm0vbmVvbi92cDhfc2hvcnR3YWxzaDR4NF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0uYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jvb2xodWZmLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9jb3B5X2MuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RjdC5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGVu
b2lzaW5nLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9lbmNvZGVmcmFtZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvZW5jb2RlaW50cmEuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW1iLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtdi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZXRocmVhZGluZy5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbG9va2FoZWFk
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9t
Y29tcC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvbW9kZWNvc3RzLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9tcl9kaXNzaW0uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL29ueXhfaWYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tpbnRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xwZi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Jkb3B0LmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9zZWdtZW50
YXRpb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL3Rva2VuaXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci90cmVld3JpdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci92cDhfcXVhbnRpemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC92cDhfY3hfaWZhY2UuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC92cDhfZHhfaWZhY2UuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25lb24vdnA5X2hpZ2hiZF9p
aHQxNngxNl9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaGlnaGJkX2lodDR4NF9hZGRfbmVvbi5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92
cDlfaGlnaGJkX2lodDh4OF9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0MTZ4MTZfYWRkX25lb24uYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25l
b24vdnA5X2lodDR4NF9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0OHg4X2FkZF9uZW9uLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9hbGxvY2Nv
bW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfYmxvY2tkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9jb21tb25fZGF0YS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weS5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHlt
di5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfZmlsdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9mcmFtZV9idWZmZXJzLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9pZGN0LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9sb29wZmlsdGVyLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tZnFlLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdnJlZl9j
b21tb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X3Bvc3Rwcm9jLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9uLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludGVyLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9y
ZWNvbmludHJhLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9ydGNkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9zY2FsZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGhyZWFkX2NvbW1vbi5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
dGlsZV9jb21tb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9kZWNvZGVyL3ZwOV9kZWNvZGVmcmFtZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZW12LmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rlci5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RldG9rZW5p
emUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVy
L3ZwOV9kc3ViZXhwLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZGVjb2Rlci92cDlfam9iX3F1ZXVlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci9hcm0vbmVvbi92cDlfZGVub2lzZXJfbmVvbi5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvYXJtL25lb24v
dnA5X2ZyYW1lX3NjYWxlX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL2FybS9uZW9uL3ZwOV9xdWFudGl6ZV9uZW9uLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGlj
cmVmcmVzaC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2JpdHN0cmVhbS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X2NvbnRleHRfdHJlZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Nvc3QuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kY3QuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNl
ci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2VuY29kZWZyYW1lLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFk
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfZXh0X3JhdGVjdHJsLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZnJhbWVfc2NhbGUuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tY29t
cC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X211bHRpX3RocmVhZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja2xwZi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2ttb2RlLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
cXVhbnRpemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24u
YyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9za2luX2RldGVjdGlvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmMiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVyY29u
dGV4dC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X3Rva2VuaXplLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9pZmFjZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2NvZGVjLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9kZWNvZGVyLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9lbmNvZGVy
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9p
bWFnZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9h
ZGRfbm9pc2UuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL2F2Z19uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FybS9hdmdfcHJlZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2FybS9kZWJsb2NrX25lb24uYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2ZkY3QxNngxNl9uZW9uLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9mZGN0MzJ4
MzJfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vZmRjdF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FybS9mZGN0X3BhcnRpYWxfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vZndkX3R4Zm1fbmVvbi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGFkYW1hcmRfbmVvbi5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGln
aGJkX2lkY3QxNngxNl9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lkY3QzMngzMl8xMDI0X2FkZF9uZW9uLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdoYmRf
aWRjdDMyeDMyXzEzNV9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lkY3QzMngzMl8zNF9hZGRfbmVvbi5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lk
Y3QzMngzMl9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lkY3Q0eDRfYWRkX25lb24uYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF9pZGN0OHg4X2FkZF9u
ZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Fy
bS9oaWdoYmRfaW50cmFwcmVkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF9sb29wZmlsdGVyX25lb24uYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF92cHhfY29u
dm9sdmU4X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYXJtL2hpZ2hiZF92cHhfY29udm9sdmVfYXZnX25lb24uYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF92cHhfY29udm9sdmVf
Y29weV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9oaWdoYmRfdnB4X2NvbnZvbHZlX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3QxNngxNl8xX2FkZF9uZW9uLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0MTZ4
MTZfYWRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYXJtL2lkY3QzMngzMl8xMzVfYWRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3QzMngzMl8xX2FkZF9uZW9uLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0MzJ4
MzJfMzRfYWRkX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXJtL2lkY3QzMngzMl9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDh4OF8xX2FkZF9uZW9uLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0OHg4X2Fk
ZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2FybS9pbnRyYXByZWRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9hcm0vcXVhbnRpemVfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc2FkNGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc2FkX25lb24uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1YnBlbF92YXJp
YW5jZV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9zdWJ0cmFjdF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2FybS9zdW1fc3F1YXJlc19uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92YXJpYW5jZV9uZW9uLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9s
dmU4X25lb25fYXNtLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2FybS92cHhfY29udm9sdmVfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X3NjYWxlZF9jb252b2x2ZThfbmVvbi5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hdmcuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRl
cl9idWZmZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYml0d3JpdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2JpdHdyaXRlcl9idWZmZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvZGVibG9jay5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnRyYXByZWQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbG9vcGZpbHRlci5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wcm9iLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3BzbnIuYyIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcXVhbnRpemUuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Avc2FkLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NraW5fZGV0ZWN0aW9uLmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3N1YnRyYWN0LmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3N1bV9zcXVhcmVz
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Zhcmlh
bmNlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Zw
eF9jb252b2x2ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC92cHhfZHNwX3J0Y2QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9tZW0vdnB4X21lbS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X3BvcnRzL2FybV9jcHVkZXRlY3QuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL2dlbl9zY2FsZXJzLmMiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy92cHhfc2Nh
bGUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9n
ZW5lcmljL3l2MTJjb25maWcuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJleHRlbmQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhfc2NhbGVfcnRjZC5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RocmVhZC5jIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3dyaXRlX3l1
dl9mcmFtZS5jIiwKK10KK2xpYnZweF9zcmNzX2FybV9uZW9uX2hpZ2hiZF9oZWFkZXJzID0gWwor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FsbG9jY29t
bW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2FybS9sb29wZmlsdGVyX2FybS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vY29lZnVwZGF0ZXByb2JzLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9kZWZhdWx0X2NvZWZfcHJvYnMu
aCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50
cm9weS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9lbnRyb3B5bW9kZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9lbnRyb3B5bXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vZXh0ZW5kLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2hlYWRlci5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pbnZ0cmFucy5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29wZmlsdGVyLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21vZGVj
b250LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L212LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L29ueXguaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vb255eGNfaW50LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL29ueXhkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3Bvc3Rwcm9jLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3BwZmxhZ3MuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcXVhbnRfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50ZXIuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYS5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmlu
dHJhNHg0LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL3NldHVwaW50cmFyZWNvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9zd2FweXYxMmJ1ZmZlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zeXN0ZW1kZXBlbmRlbnQuaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdGhyZWFkaW5nLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3RyZWVjb2Rl
ci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92
cDhfZW50cm9weW1vZGVkYXRhLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZmLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVtdi5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlcnRo
cmVhZGluZy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Rl
Y29kZXIvZGV0b2tlbml6ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2RlY29kZXIvb255eGRfaW50LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZGVjb2Rlci90cmVlcmVhZGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0uaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jsb2NrLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ib29saHVmZi5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGN0X3Zh
bHVlX2Nvc3QuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL2RjdF92YWx1ZV90b2tlbnMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RlZmF1bHRjb2VmY291bnRzLmgiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWZyYW1l
LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9l
bmNvZGVpbnRyYS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvZW5jb2RlbWIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL2VuY29kZW12LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ldGhyZWFkaW5nLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9maXJzdHBhc3MuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVj
b3N0cy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvbXJfZGlzc2ltLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9vbnl4X2ludC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvcGlja2ludGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNrbHBmLmgiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9xdWFudGl6ZS5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Jkb3B0LmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9zZWdtZW50
YXRpb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL3Rva2VuaXplLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci90cmVld3JpdGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9paHRfbmVvbi5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYWxsb2Njb21tb24uaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Js
b2NrZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9jb21tb25fZGF0YS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weS5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHlt
di5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfZW51bXMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X2ZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfZnJhbWVfYnVmZmVycy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfaWRjdC5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbG9vcGZpbHRlci5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbWZxZS5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
bXYuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X212cmVmX2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfb255eGNfaW50LmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0cHJvYy5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcHBmbGFncy5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcHJlZF9jb21t
b24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X3F1YW50X2NvbW1vbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRyYS5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2NhbGUuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NjYW4uaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Nl
Z19jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X3RocmVhZF9jb21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RpbGVfY29tbW9uLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlZnJhbWUuaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNv
ZGVtdi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29k
ZXIvdnA5X2RlY29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9kZWNvZGVyL3ZwOV9kZXRva2VuaXplLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1YmV4cC5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2pvYl9xdWV1ZS5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2FxX2N5
Y2xpY3JlZnJlc2guaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9iaXRzdHJlYW0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ibG9jay5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2NvbnRleHRfdHJlZS5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Nvc3QuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9k
ZW5vaXNlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2VuY29kZWZyYW1lLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9l
dGhyZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfZXh0X3JhdGVjdHJsLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZmlyc3RwYXNzLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfam9iX3F1ZXVlLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
bG9va2FoZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfbWJncmFwaC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X21jb21wLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbXVsdGlfdGhyZWFkLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbm9pc2VfZXN0aW1h
dGUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9wYXJ0aXRpb25fbW9kZWxzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja2xwZi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2ttb2RlLmgiLAorICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcXVhbnRpemUuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9y
YXRlY3RybC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X3JkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfcmRvcHQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9za2luX2RldGVj
dGlvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVyY29udGV4dC5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3RlbXBv
cmFsX2ZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3Rva2VuaXplLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9pZmFjZS5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9pbnRlcm5hbC92cHhfY29kZWNf
aW50ZXJuYWwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92
cDguaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cDhjeC5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOGR4LmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2NvZGVjLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2RlY29kZXIuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZW5jb2Rlci5o
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9leHRfcmF0
ZWN0cmwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhf
ZnJhbWVfYnVmZmVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHgvdnB4X2ltYWdlLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHgvdnB4X2ludGVnZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXJtL2hpZ2hiZF9pZGN0X25lb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3RfbmVvbi5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vbWVtX25lb24uaCIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1bV9uZW9uLmgiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS90cmFuc3Bv
c2VfbmVvbi5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vdnB4X2NvbnZvbHZlOF9uZW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X25lb25fYXNtLmgiLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlci5oIiwKKyAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVm
ZmVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Jp
dHdyaXRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9iaXR3cml0ZXJfYnVmZmVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2Z3ZF90eGZtLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2ludl90eGZtLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3Bvc3Rwcm9jLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL3Byb2IuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvcHNuci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9xdWFudGl6ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2luX2RldGVjdGlvbi5oIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC90eGZtX2NvbW1vbi5oIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuaCIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9j
b21tb24uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
dnB4X2ZpbHRlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X21lbS9pbmNsdWRlL3ZweF9tZW1faW50cm5sLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfbWVtL3ZweF9tZW0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hcm0uaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9iaXRvcHMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9jb21waWxlcl9hdHRyaWJ1dGVzLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvZW1taW50cmluX2Nv
bXBhdC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRz
L21lbS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRz
L21lbV9vcHMuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9w
b3J0cy9tZW1fb3BzX2FsaWduZWQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9wb3J0cy9taXBzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfcG9ydHMvbXN2Yy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X3BvcnRzL3N0YXRpY19hc3NlcnQuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9zeXN0ZW1fc3RhdGUuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfb25jZS5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3ZweF90aW1lci5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3g4Ni5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL3ZweF9zY2Fs
ZS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL3l2
MTJjb25maWcuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91
dGlsL2VuZGlhbl9pbmwuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF91dGlsL3ZweF9hdG9taWNzLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGltZXN0YW1wLmgiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfd3JpdGVfeXV2X2ZyYW1lLmgiLAor
XQorbGlidnB4X3NyY3NfYXJtX25lb25faGlnaGJkX2Fzc2VtYmx5ID0gWworICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0NHg0XzFfYWRkX25lb24u
YXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
aWRjdDR4NF9hZGRfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS9pZGN0X25lb24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaW50cmFwcmVkX25lb25fYXNtLmFzbSIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2xvb3BmaWx0ZXJf
MTZfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9sb29wZmlsdGVyXzRfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2FybS9sb29wZmlsdGVyXzhfbmVvbi5hc20iLAorICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zYXZlX3JlZ19uZW9u
LmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L3ZweF9jb252b2x2ZThfYXZnX2hvcml6X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThf
YXZnX2hvcml6X2ZpbHRlcl90eXBlMl9uZW9uLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfYXZnX3ZlcnRfZmlsdGVy
X3R5cGUxX25lb24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9hdmdfdmVydF9maWx0ZXJfdHlwZTJfbmVvbi5hc20i
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhf
Y29udm9sdmU4X2hvcml6X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfaG9yaXpfZmls
dGVyX3R5cGUyX25lb24uYXNtIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF92ZXJ0X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9j
b252b2x2ZThfdmVydF9maWx0ZXJfdHlwZTJfbmVvbi5hc20iLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmVfYXZnX25lb25fYXNt
LmFzbSIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L3ZweF9jb252b2x2ZV9jb3B5X25lb25fYXNtLmFzbSIsCitdCitsaWJ2cHhfc3Jjc19hcm02NF9o
aWdoYmQgPSBbCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vYWxsb2Njb21tb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vYXJtL2xvb3BmaWx0ZXJfYXJtLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2JpbGluZWFycHJlZGljdF9uZW9u
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Fy
bS9uZW9uL2NvcHltZW1fbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9kY19vbmx5X2lkY3RfYWRkX25lb24uYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vZGVx
dWFudF9pZGN0X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vYXJtL25lb24vZGVxdWFudGl6ZWJfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9pZGN0X2Jsa19uZW9u
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Fy
bS9uZW9uL2l3YWxzaF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL2FybS9uZW9uL2xvb3BmaWx0ZXJzaW1wbGVob3Jpem9udGFsZWRnZV9u
ZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2FybS9uZW9uL2xvb3BmaWx0ZXJzaW1wbGV2ZXJ0aWNhbGVkZ2VfbmVvbi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9tYmxvb3Bm
aWx0ZXJfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9hcm0vbmVvbi9zaG9ydGlkY3Q0eDRsbG1fbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9zaXh0YXBwcmVkaWN0
X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vYXJtL25lb24vdnA4X2xvb3BmaWx0ZXJfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuYyIsCisgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZGVxdWFudGl6ZS5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5LmMiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHltb2Rl
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Vu
dHJvcHltdi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9leHRlbmQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vZmlsdGVyLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2ZpbmRuZWFybXYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vZ2VuZXJpYy9zeXN0ZW1kZXBlbmRlbnQuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaWRjdF9ibGsuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaWRjdGxsbS5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29w
ZmlsdGVyX2ZpbHRlcnMuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vbWJwaXRjaC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9tZnFlLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL21vZGVjb250LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmMiLAorICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2NvbW1vbi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludGVyLmMiLAor
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50
cmEuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
cmVjb25pbnRyYTR4NC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9ydGNkLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3NldHVwaW50cmFyZWNvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zd2FweXYxMmJ1ZmZlci5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90cmVlY29kZXIuYyIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X2xvb3BmaWx0
ZXIuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
dnA4X3NraW5fZGV0ZWN0aW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZGVjb2Rlci9kYm9vbGh1ZmYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZWZyYW1lLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVtdi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGV0b2tlbml6ZS5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvb255eGRf
aWYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVy
L3RocmVhZGluZy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvYXJtL25lb24vZGVub2lzaW5nX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9uL2Zhc3RxdWFudGl6ZWJfbmVv
bi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
YXJtL25lb24vc2hvcnRmZGN0X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9uL3ZwOF9zaG9ydHdhbHNoNHg0X25lb24uYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2JpdHN0
cmVhbS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvYm9vbGh1ZmYuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL2NvcHlfYy5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvZGN0LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWZyYW1lLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVpbnRyYS5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbWIuYyIs
CisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29k
ZW12LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9ldGhyZWFkaW5nLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9sb29rYWhlYWQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL21jb21wLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tb2RlY29zdHMuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21yX2Rpc3NpbS5jIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pZi5jIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2ludGVyLmMi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNr
bHBmLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9yYXRlY3RybC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvcmRvcHQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL3NlZ21lbnRhdGlvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdG9rZW5pemUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3ZwOF9xdWFudGl6ZS5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3ZwOF9jeF9pZmFjZS5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3ZwOF9keF9pZmFj
ZS5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9h
cm0vbmVvbi92cDlfaGlnaGJkX2lodDE2eDE2X2FkZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9oaWdoYmRfaWh0
NHg0X2FkZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9oaWdoYmRfaWh0OHg4X2FkZF9uZW9uLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9p
aHQxNngxNl9hZGRfbmVvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0NHg0X2FkZF9uZW9uLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9paHQ4
eDhfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vYXJtL25lb24vdnA5X2lodF9uZW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9hbGxvY2NvbW1vbi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYWxsb2Njb21tb24u
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X2Jsb2NrZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfYmxvY2tkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9jb21tb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbl9kYXRhLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb25fZGF0YS5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9w
eS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfZW50cm9weS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfZW50cm9weW1vZGUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltb2RlLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bXYuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHlt
di5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfZW51bXMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X2ZpbHRlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfZmlsdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9mcmFtZV9idWZmZXJzLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9mcmFtZV9idWZmZXJzLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9p
ZGN0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9pZGN0LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9sb29wZmlsdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9sb29wZmlsdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tZnFlLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tZnFlLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdi5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbXZyZWZf
Y29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9tdnJlZl9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X29ueXhjX2ludC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcG9zdHByb2MuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Bvc3Rwcm9jLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wcGZs
YWdzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9wcmVkX2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfcHJlZF9jb21tb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3F1YW50X2NvbW1vbi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9u
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9yZWNvbmludGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9yZWNvbmludGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludHJhLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludHJhLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9ydGNkLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9z
Y2FsZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfc2NhbGUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X3NjYW4uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X3NjYW4uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NlZ19jb21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NlZ19jb21tb24uaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RocmVhZF9j
b21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X3RocmVhZF9jb21tb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X3RpbGVfY29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aWxlX2NvbW1vbi5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZWZy
YW1lLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rl
ci92cDlfZGVjb2RlZnJhbWUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVtdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZW12LmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rlci5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29k
ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVy
L3ZwOV9kZXRva2VuaXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZGVjb2Rlci92cDlfZGV0b2tlbml6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RzdWJleHAuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kc3ViZXhwLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfam9iX3F1
ZXVlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rl
ci92cDlfam9iX3F1ZXVlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci9hcm0vbmVvbi92cDlfZGVub2lzZXJfbmVvbi5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvYXJtL25lb24vdnA5X2Vycm9y
X25lb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL2FybS9uZW9uL3ZwOV9mcmFtZV9zY2FsZV9uZW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci9hcm0vbmVvbi92cDlfcXVhbnRpemVfbmVv
bi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2FxX2N5Y2xpY3JlZnJlc2guYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9hcV9jeWNsaWNyZWZyZXNoLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYml0c3RyZWFtLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYml0
c3RyZWFtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfYmxvY2suaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9jb250ZXh0X3RyZWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9jb250ZXh0X3RyZWUuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9jb3N0LmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29z
dC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2RjdC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2Rlbm9pc2VyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfZGVub2lzZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVmcmFtZS5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZWZyYW1l
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfZW5jb2RlbWIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9lbmNvZGVtYi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbXYuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVyLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
ZW5jb2Rlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2V0aHJlYWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0
ZW5kLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfZmlyc3RwYXNzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZnJhbWVfc2NhbGUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9qb2JfcXVldWUuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9s
b29rYWhlYWQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9tYmdyYXBoLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfbWNvbXAuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tY29tcC5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X211bHRpX3RocmVhZC5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X211bHRp
X3RocmVhZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbm9pc2VfZXN0aW1hdGUuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9wYXJ0aXRpb25fbW9k
ZWxzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfcGlja2xwZi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3BpY2tscGYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbW9kZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2ttb2RlLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcXVhbnRpemUu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9xdWFudGl6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3JhdGVjdHJsLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmF0ZWN0cmwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZC5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JkLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZG9w
dC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3Jlc2l6ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3Jlc2l6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NlZ21lbnRhdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NlZ21lbnRhdGlvbi5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NraW5f
ZGV0ZWN0aW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfc2tpbl9kZXRlY3Rpb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zcGVlZF9mZWF0dXJlcy5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1
cmVzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfc3ViZXhwLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfc3ViZXhwLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVyY29udGV4dC5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRl
eHQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV90ZW1wb3JhbF9maWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90b2tlbml6ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Rva2VuaXplLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X3RyZWV3cml0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS92cDlfY3hfaWZhY2UuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS92cDlfY3hfaWZhY2UuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS92cDlfZHhfaWZhY2UuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS92cDlfZHhfaWZhY2UuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS92cDlfaWZhY2VfY29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L2ludGVybmFsL3ZweF9jb2RlY19pbnRlcm5hbC5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfY29k
ZWMuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4
X2RlY29kZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9z
cmMvdnB4X2VuY29kZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweC9zcmMvdnB4X2ltYWdlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHgvdnA4LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHgvdnA4Y3guaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92
cDhkeC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9j
b2RlYy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9k
ZWNvZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4
X2VuY29kZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92
cHhfZnJhbWVfYnVmZmVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvdnB4X2ltYWdlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvdnB4X2ludGVnZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvYWRkX25vaXNlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2FybS9hdmdfbmVvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vYXZnX3ByZWRfbmVvbi5jIiwKQEAgLTE2MDEsMjgx
MyArMzE4OCwxMzA3IEBAIGxpYnZweF9zcmNzX2FybV9uZW9uID0gWwogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9mZGN0X3BhcnRpYWxfbmVvbi5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vZndkX3R4
Zm1fbmVvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vaGFkYW1hcmRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lkY3QxNngxNl9hZGRfbmVvbi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lkY3QzMngz
Ml8xMDI0X2FkZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FybS9oaWdoYmRfaWRjdDMyeDMyXzEzNV9hZGRfbmVvbi5jIiwKKyAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lkY3QzMngz
Ml8zNF9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9hcm0vaGlnaGJkX2lkY3QzMngzMl9hZGRfbmVvbi5jIiwKKyAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lkY3Q0eDRfYWRkX25l
b24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L2hpZ2hiZF9pZGN0OHg4X2FkZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdoYmRfaW50cmFwcmVkX25lb24uYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF9sb29wZmls
dGVyX25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL2hpZ2hiZF92cHhfY29udm9sdmU4X25lb24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF92cHhfY29udm9sdmVfYXZnX25l
b24uYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L2hpZ2hiZF92cHhfY29udm9sdmVfY29weV9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdoYmRfdnB4X2NvbnZvbHZlX25lb24uYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3Qx
NngxNl8xX2FkZF9uZW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FybS9pZGN0MTZ4MTZfYWRkX25lb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3QzMngzMl8xMzVfYWRkX25lb24uYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3Qz
MngzMl8xX2FkZF9uZW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FybS9pZGN0MzJ4MzJfMzRfYWRkX25lb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3QzMngzMl9hZGRfbmVvbi5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDR4
NF8xX2FkZF9uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2FybS9pZGN0NHg0X2FkZF9uZW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0OHg4XzFfYWRkX25lb24uYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3Q4eDhfYWRkX25l
b24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L2lkY3RfbmVvbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9hcm0vaW50cmFwcmVkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvYXJtL21lbV9uZW9uLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9sb29wZmlsdGVyX25lb24uYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3F1YW50aXplX25lb24u
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3Nh
ZDRkX25lb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL3NhZF9uZW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FybS9zdWJwZWxfdmFyaWFuY2VfbmVvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc3VidHJhY3RfbmVvbi5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc3VtX25lb24uaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1bV9z
cXVhcmVzX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYXJtL3RyYW5zcG9zZV9uZW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS92YXJpYW5jZV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X25lb24uaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9j
b252b2x2ZThfbmVvbl9hc20uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfbmVvbl9hc20uaCIsCisgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfbmVvbi5j
IiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4
X2NvbnZvbHZlX2F2Z19uZW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmVfY29weV9uZW9uLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmVfbmVvbi5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4
X3NjYWxlZF9jb252b2x2ZThfbmVvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9hdmcuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYml0cmVhZGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9idWZmZXIuaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRl
ci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3
cml0ZXJfYnVmZmVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2JpdHdyaXRlcl9idWZmZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvZGVibG9jay5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnRyYXByZWQuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbG9vcGZpbHRlci5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wb3N0cHJvYy5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wcm9iLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Byb2IuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHNuci5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wc25yLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50aXplLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50aXplLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NhZC5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2luX2RldGVjdGlv
bi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2lu
X2RldGVjdGlvbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9zdWJ0cmFjdC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9zdW1fc3F1YXJlcy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC90eGZtX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2NvbnZvbHZlLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9kc3BfY29tbW9uLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9kc3Bf
cnRjZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92
cHhfZmlsdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
bWVtL2luY2x1ZGUvdnB4X21lbV9pbnRybmwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9tZW0vdnB4X21lbS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X21lbS92cHhfbWVtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYXJtLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYXJtX2NwdWRldGVjdC5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2JpdG9wcy5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2NvbXBpbGVyX2F0dHJpYnV0
ZXMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9l
bW1pbnRyaW5fY29tcGF0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfcG9ydHMvbWVtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfcG9ydHMvbWVtX29wcy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X3BvcnRzL21lbV9vcHNfYWxpZ25lZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21zdmMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9zdGF0aWNfYXNzZXJ0LmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvc3lzdGVtX3N0YXRlLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X29uY2Uu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhf
dGltZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2Fs
ZS9nZW5lcmljL2dlbl9zY2FsZXJzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy92cHhfc2NhbGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJjb25maWcuYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2
MTJleHRlbmQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9z
Y2FsZS92cHhfc2NhbGUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9zY2FsZS92cHhfc2NhbGVfcnRjZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3NjYWxlL3l2MTJjb25maWcuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL2VuZGlhbl9pbmwuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF9hdG9taWNzLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFk
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhf
dGltZXN0YW1wLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
dXRpbC92cHhfd3JpdGVfeXV2X2ZyYW1lLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfdXRpbC92cHhfd3JpdGVfeXV2X2ZyYW1lLmgiLAotXQotbGlidnB4X3Ny
Y3NfYXJtX25lb25fYXNzZW1ibHkgPSBbCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYXJtL2lkY3Q0eDRfMV9hZGRfbmVvbi5hc20iLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0NHg0X2FkZF9uZW9uLmFz
bSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lk
Y3RfbmVvbi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9pbnRyYXByZWRfbmVvbl9hc20uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vbG9vcGZpbHRlcl8xNl9uZW9uLmFzbSIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2xvb3BmaWx0ZXJf
NF9uZW9uLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL2xvb3BmaWx0ZXJfOF9uZW9uLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3NhdmVfcmVnX25lb24uYXNtIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9hdmdf
aG9yaXpfZmlsdGVyX3R5cGUxX25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9hdmdfaG9yaXpfZmlsdGVyX3R5
cGUyX25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9hdmdfdmVydF9maWx0ZXJfdHlwZTFfbmVvbi5hc20iLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29u
dm9sdmU4X2F2Z192ZXJ0X2ZpbHRlcl90eXBlMl9uZW9uLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfaG9yaXpfZmls
dGVyX3R5cGUxX25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9ob3Jpel9maWx0ZXJfdHlwZTJfbmVvbi5hc20i
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhf
Y29udm9sdmU4X3ZlcnRfZmlsdGVyX3R5cGUxX25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF92ZXJ0X2ZpbHRl
cl90eXBlMl9uZW9uLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZV9hdmdfbmVvbl9hc20uYXNtIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlX2NvcHlf
bmVvbl9hc20uYXNtIiwKLV0KLWxpYnZweF9zcmNzX2FybV9uZW9uX2NwdV9kZXRlY3QgPSBbCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYWxsb2Njb21t
b24uYyIsCitdCitsaWJ2cHhfc3Jjc19hcm02NF9oaWdoYmRfaGVhZGVycyA9IFsKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hbGxvY2NvbW1vbi5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbG9v
cGZpbHRlcl9hcm0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vYXJtL2xvb3BmaWx0ZXJfYXJtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL2Jsb2NrZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vY29lZnVwZGF0ZXByb2JzLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2NvbW1vbi5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9kZWZhdWx0
X2NvZWZfcHJvYnMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vZGVxdWFudGl6ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHkuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW1vZGUuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW1vZGUuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW12LmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJv
cHltdi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9leHRlbmQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vZXh0ZW5kLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2ZpbHRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9maWx0ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vZmluZG5lYXJtdi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2dlbmVyaWMvc3lzdGVtZGVwZW5kZW50
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2hl
YWRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9pZGN0X2Jsay5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9pZGN0bGxtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2ludnRyYW5zLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2xvb3BmaWx0ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbG9vcGZpbHRlcl9maWx0ZXJzLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21icGl0Y2guYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWZxZS5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tb2RlY29u
dC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9t
b2RlY29udC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9tdi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9vbnl4LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL29ueXhjX2ludC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9vbnl4ZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9wb3N0cHJvYy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9wb3N0cHJvYy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9wcGZsYWdzLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2NvbW1vbi5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9xdWFudF9jb21tb24u
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVj
b25pbnRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9yZWNvbmludGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3JlY29uaW50cmEuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhNHg0LmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcnRjZC5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zZXR1
cGludHJhcmVjb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vc2V0dXBpbnRyYXJlY29uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3N3YXB5djEyYnVmZmVyLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3N3YXB5djEyYnVmZmVyLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3N5c3RlbWRlcGVu
ZGVudC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi90aHJlYWRpbmcuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vdHJlZWNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3RyZWVjb2Rlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92cDhfZW50cm9weW1vZGVkYXRhLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9sb29wZmlsdGVyLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9z
a2luX2RldGVjdGlvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi92cDhfc2tpbl9kZXRlY3Rpb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2Rib29saHVmZi5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZmLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVmcmFtZS5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVj
b2RlbXYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNv
ZGVyL2RlY29kZW12LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZGVjb2Rlci9kZWNvZGVydGhyZWFkaW5nLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZXRva2VuaXplLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZXRva2VuaXplLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9vbnl4ZF9pZi5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvb255eGRf
aW50LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rl
ci90aHJlYWRpbmcuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9kZWNvZGVyL3RyZWVyZWFkZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL2JpdHN0cmVhbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYml0c3RyZWFtLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ibG9jay5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYm9vbGh1ZmYuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jvb2xodWZmLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9jb3B5
X2MuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L2RjdC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvZGN0X3ZhbHVlX2Nvc3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL2RjdF92YWx1ZV90b2tlbnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RlZmF1bHRjb2VmY291bnRzLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcu
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rl
bm9pc2luZy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvZW5jb2RlZnJhbWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL2VuY29kZWZyYW1lLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVpbnRyYS5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlaW50cmEuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW1iLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNv
ZGVtYi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvZW5jb2RlbXYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL2VuY29kZW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9ldGhyZWFkaW5nLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ldGhyZWFkaW5nLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9maXJzdHBhc3MuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbG9va2Fo
ZWFkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9tY29tcC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvbWNvbXAuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL21vZGVjb3N0cy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvbW9kZWNvc3RzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tcl9kaXNzaW0uYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21yX2Rpc3NpbS5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pZi5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pbnQu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Bp
Y2tpbnRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvcGlja2ludGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9waWNrbHBmLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9waWNrbHBmLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9xdWFudGl6ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yZG9wdC5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmRvcHQu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Nl
Z21lbnRhdGlvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvc2VnbWVudGF0aW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci90b2tlbml6ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdG9rZW5pemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3ZwOF9x
dWFudGl6ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3Zw
OF9jeF9pZmFjZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L3ZwOF9keF9pZmFjZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0X25lb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2FsbG9jY29tbW9uLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9hbGxvY2NvbW1v
bi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfYmxvY2tkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9ibG9ja2QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uX2RhdGEuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbl9kYXRhLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRy
b3B5LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9lbnRyb3B5LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltdi5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9w
eW12LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9lbnVtcy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfZmlsdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9maWx0ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X2lkY3QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X2lkY3QuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21mcWUuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21mcWUuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X212LmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdnJl
Zl9jb21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X212cmVmX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfb255eGNfaW50LmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0cHJvYy5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcG9zdHByb2MuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Bw
ZmxhZ3MuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X3ByZWRfY29tbW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9uLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9xdWFudF9jb21t
b24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X3JlY29uaW50ZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X3JlY29uaW50ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3J0Y2Qu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X3NjYWxlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9zY2FsZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfc2Nhbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGhyZWFk
X2NvbW1vbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfdGhyZWFkX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9jb21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RpbGVfY29tbW9uLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rl
ZnJhbWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNv
ZGVyL3ZwOV9kZWNvZGVmcmFtZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZW12LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlbXYuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVyLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVj
b2Rlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29k
ZXIvdnA5X2RldG9rZW5pemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZXRva2VuaXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1YmV4cC5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RzdWJleHAuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9qb2Jf
cXVldWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNv
ZGVyL3ZwOV9qb2JfcXVldWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9hcV9jeWNsaWNyZWZyZXNoLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVzaC5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2JpdHN0cmVhbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2JpdHN0cmVhbS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Jsb2NrLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90
cmVlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfY29zdC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2Nvc3QuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9kY3QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Rlbm9pc2VyLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlZnJh
bWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9lbmNvZGVmcmFtZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW1iLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29k
ZW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfZW5jb2Rlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2VuY29kZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXRocmVhZC5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dGVuZC5jIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4
dF9yYXRlY3RybC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2V4dGVuZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZpcnN0cGFzcy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZyYW1lX3NjYWxlLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfam9iX3F1ZXVl
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfbG9va2FoZWFkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfbG9va2FoZWFkLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWJncmFwaC5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21jb21wLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWNvbXAuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tdWx0
aV90aHJlYWQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9tdWx0aV90aHJlYWQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRl
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfcGFydGl0aW9uX21vZGVscy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2tscGYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbHBmLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja21vZGUuYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNr
bW9kZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X3F1YW50aXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfcXVhbnRpemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJsLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmQuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9y
ZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3Jkb3B0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfcmRvcHQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdt
ZW50YXRpb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9za2luX2RldGVjdGlvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRfZmVhdHVy
ZXMuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9zcGVlZF9mZWF0dXJlcy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRleHQu
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9zdmNfbGF5ZXJjb250ZXh0LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfdGVtcG9yYWxfZmlsdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdG9rZW5pemUuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90b2tlbml6
ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3RyZWV3cml0ZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV90cmVld3JpdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1vbi5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9pbnRlcm5hbC92cHhf
Y29kZWNfaW50ZXJuYWwuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweC9zcmMvdnB4X2NvZGVjLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHgvc3JjL3ZweF9kZWNvZGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHgvc3JjL3ZweF9lbmNvZGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9pbWFnZS5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOGN4LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHgvdnA4ZHguaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweC92cHhfY29kZWMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweC92cHhfZGVjb2Rlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4L3ZweF9lbmNvZGVyLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHgvdnB4X2V4dF9yYXRlY3RybC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9mcmFtZV9idWZmZXIuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfaW1hZ2UuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfaW50ZWdlci5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hZGRfbm9pc2UuYyIsCisgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF9pZGN0X25l
b24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L2lkY3RfbmVvbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9hcm0vbWVtX25lb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvYXJtL3N1bV9uZW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS90cmFuc3Bvc2VfbmVvbi5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9uZW9uLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhf
Y29udm9sdmU4X25lb25fYXNtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2F2Zy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9iaXRyZWFkZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYml0cmVhZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9idWZmZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyX2J1ZmZlci5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXIuYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRl
cl9idWZmZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYml0d3JpdGVyX2J1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9kZWJsb2NrLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2Z3ZF90eGZtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2Z3ZF90eGZtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2ludHJhcHJlZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZfdHhmbS5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZfdHhmbS5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9sb29wZmlsdGVyLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Bvc3Rwcm9jLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Byb2IuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHJvYi5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wc25yLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3BzbnIuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcXVhbnRpemUuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcXVhbnRpemUuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Avc2FkLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NraW5fZGV0ZWN0aW9uLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NraW5fZGV0
ZWN0aW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3N1YnRyYWN0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3N1bV9zcXVhcmVzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3R4Zm1fY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL3ZhcmlhbmNlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3ZhcmlhbmNlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9jb252b2x2ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9jb21tb24uaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9ydGNk
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9m
aWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9tZW0v
aW5jbHVkZS92cHhfbWVtX2ludHJubC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X21lbS92cHhfbWVtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfbWVtL3ZweF9tZW0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hcm0uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hcm1fY3B1ZGV0ZWN0LmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYml0b3BzLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvY29tcGlsZXJfYXR0cmlidXRlcy5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2VtbWlu
dHJpbl9jb21wYXQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9wb3J0cy9tZW0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9wb3J0cy9tZW1fb3BzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfcG9ydHMvbWVtX29wc19hbGlnbmVkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfcG9ydHMvbWlwcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21zdmMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9zdGF0aWNfYXNzZXJ0LmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvc3lzdGVtX3N0YXRlLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X29uY2UuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfdGlt
ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9n
ZW5lcmljL2dlbl9zY2FsZXJzLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfc2NhbGUvZ2VuZXJpYy92cHhfc2NhbGUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJjb25maWcuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJl
eHRlbmQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0
cy94ODYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2Fs
ZS92cHhfc2NhbGUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9zY2FsZS92cHhfc2NhbGVfcnRjZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X3NjYWxlL3l2MTJjb25maWcuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL2VuZGlhbl9pbmwuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF9hdG9taWNzLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGlt
ZXN0YW1wLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRp
bC92cHhfd3JpdGVfeXV2X2ZyYW1lLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfdXRpbC92cHhfd3JpdGVfeXV2X2ZyYW1lLmgiLAogXQotbGlidnB4X3NyY3Nf
YXJtX25lb25fY3B1X2RldGVjdF9hc3NlbWJseSA9IFsKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDR4NF8xX2FkZF9uZW9uLmFzbSIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3Q0eDRfYWRk
X25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vaWRjdF9uZW9uLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvYXJtL2ludHJhcHJlZF9uZW9uX2FzbS5hc20iLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9sb29wZmlsdGVyXzE2X25lb24uYXNt
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vbG9v
cGZpbHRlcl80X25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9hcm0vbG9vcGZpbHRlcl84X25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc2F2ZV9yZWdfbmVvbi5hc20iLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9s
dmU4X2F2Z19ob3Jpel9maWx0ZXJfdHlwZTFfbmVvbi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X2F2Z19ob3Jpel9m
aWx0ZXJfdHlwZTJfbmVvbi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X2F2Z192ZXJ0X2ZpbHRlcl90eXBlMV9uZW9u
LmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L3ZweF9jb252b2x2ZThfYXZnX3ZlcnRfZmlsdGVyX3R5cGUyX25lb24uYXNtIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9o
b3Jpel9maWx0ZXJfdHlwZTFfbmVvbi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X2hvcml6X2ZpbHRlcl90eXBlMl9u
ZW9uLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
YXJtL3ZweF9jb252b2x2ZThfdmVydF9maWx0ZXJfdHlwZTFfbmVvbi5hc20iLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X3Zl
cnRfZmlsdGVyX3R5cGUyX25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlX2F2Z19uZW9uX2FzbS5hc20iLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9s
dmVfY29weV9uZW9uX2FzbS5hc20iLAotXQotbGlidnB4X3NyY3NfYXJtX25lb25fY3B1X2RldGVj
dF9uZW9uID0gWwotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2FybS9uZW9uL2JpbGluZWFycHJlZGljdF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2NvcHltZW1fbmVvbi5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVv
bi9kY19vbmx5X2lkY3RfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vZGVxdWFudF9pZGN0X25lb24uYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vZGVx
dWFudGl6ZWJfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9hcm0vbmVvbi9pZGN0X2Jsa19uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2l3YWxzaF9uZW9uLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9u
L2xvb3BmaWx0ZXJzaW1wbGVob3Jpem9udGFsZWRnZV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2xvb3BmaWx0ZXJzaW1w
bGV2ZXJ0aWNhbGVkZ2VfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9tYmxvb3BmaWx0ZXJfbmVvbi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9zaG9ydGlk
Y3Q0eDRsbG1fbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9hcm0vbmVvbi9zaXh0YXBwcmVkaWN0X25lb24uYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vdnA4X2xvb3BmaWx0
ZXJfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvYXJtL25lb24vZGVub2lzaW5nX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9uL2Zhc3RxdWFudGl6ZWJfbmVvbi5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYXJt
L25lb24vc2hvcnRmZGN0X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9uL3ZwOF9zaG9ydHdhbHNoNHg0X25lb24uYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25lb24v
dnA5X2lodDE2eDE2X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9paHQ0eDRfYWRkX25lb24uYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25lb24vdnA5
X2lodDh4OF9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvYXJtL25lb24vdnA5X2Rlbm9pc2VyX25lb24uYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL2FybS9uZW9uL3ZwOV9lcnJv
cl9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci9hcm0vbmVvbi92cDlfZnJhbWVfc2NhbGVfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvYXJtL25lb24vdnA5X3F1YW50aXplX25l
b24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L2F2Z19uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9hdmdfcHJlZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2FybS9kZWJsb2NrX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2ZkY3QxNngxNl9uZW9uLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9mZGN0MzJ4MzJfbmVv
bi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
ZmRjdF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9mZGN0X3BhcnRpYWxfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vZndkX3R4Zm1fbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGFkYW1hcmRfbmVvbi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDE2eDE2
XzFfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYXJtL2lkY3QxNngxNl9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyXzEzNV9hZGRfbmVvbi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMy
XzFfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYXJtL2lkY3QzMngzMl8zNF9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyX2FkZF9uZW9uLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0OHg4XzFf
YWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL2lkY3Q4eDhfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvYXJtL2ludHJhcHJlZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9xdWFudGl6ZV9uZW9uLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zYWQ0ZF9uZW9u
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9z
YWRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vc3VicGVsX3ZhcmlhbmNlX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1YnRyYWN0X25lb24uYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1bV9zcXVhcmVzX25lb24uYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3Zhcmlh
bmNlX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL3ZweF9jb252b2x2ZV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfc2NhbGVkX2NvbnZvbHZlOF9uZW9uLmMiLAotXQot
bGlidnB4X3NyY3NfYXJtNjQgPSBbCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vYWxsb2Njb21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYWxsb2Njb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL2xvb3BmaWx0ZXJfYXJtLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9sb29w
ZmlsdGVyX2FybS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9hcm0vbmVvbi9iaWxpbmVhcnByZWRpY3RfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9jb3B5bWVtX25lb24u
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJt
L25lb24vZGNfb25seV9pZGN0X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2RlcXVhbnRfaWRjdF9uZW9uLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9u
L2RlcXVhbnRpemViX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vYXJtL25lb24vaWRjdF9ibGtfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9pd2Fsc2hfbmVvbi5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0v
bmVvbi9sb29wZmlsdGVyc2ltcGxlaG9yaXpvbnRhbGVkZ2VfbmVvbi5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9sb29wZmlsdGVy
c2ltcGxldmVydGljYWxlZGdlX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vbWJsb29wZmlsdGVyX25lb24uYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vc2hv
cnRpZGN0NHg0bGxtX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vYXJtL25lb24vc2l4dGFwcHJlZGljdF9uZW9uLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL3ZwOF9sb29w
ZmlsdGVyX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vYmxvY2tkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2Jsb2NrZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9jb2VmdXBkYXRlcHJvYnMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2RlZmF1bHRfY29lZl9wcm9icy5oIiwK
K2xpYnZweF9zcmNzX2FybTY0X2hpZ2hiZF9hc3NlbWJseSA9IFtdCitsaWJ2cHhfc3Jjc19taXBz
ID0gWworICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Fs
bG9jY29tbW9uLmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2Jsb2NrZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9kZXF1YW50aXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2VudHJvcHkuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bXYu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50
cm9weW12LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2V4dGVuZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9leHRlbmQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vZmlsdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL2ZpbHRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbmRuZWFybXYuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZ2VuZXJpYy9zeXN0ZW1kZXBlbmRl
bnQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
aGVhZGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2lkY3RfYmxrLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2lkY3RsbG0uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vaW52dHJhbnMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vbG9vcGZpbHRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29wZmlsdGVyX2ZpbHRlcnMuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWJwaXRjaC5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tZnFlLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21vZGVj
b250LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L21vZGVjb250LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL212LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL29ueXguaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vb255eGNfaW50LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL29ueXhkLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3BwZmxhZ3MuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcXVhbnRfY29tbW9uLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2NvbW1v
bi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9y
ZWNvbmludGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL3JlY29uaW50ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYTR4NC5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ydGNk
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Nl
dHVwaW50cmFyZWNvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9zZXR1cGludHJhcmVjb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZmZXIuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZmZXIuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3lzdGVtZGVw
ZW5kZW50LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL3RocmVhZGluZy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi90cmVlY29kZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vdHJlZWNvZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9lbnRyb3B5bW9kZWRhdGEuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X2xvb3BmaWx0ZXIu
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4
X3NraW5fZGV0ZWN0aW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZmLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kYm9vbGh1ZmYuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZWZyYW1l
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9k
ZWNvZGVtdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Rl
Y29kZXIvZGVjb2RlbXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9kZWNvZGVyL2RlY29kZXJ0aHJlYWRpbmcuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RldG9rZW5pemUuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RldG9rZW5pemUuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL29ueXhkX2lmLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9vbnl4
ZF9pbnQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNv
ZGVyL3RocmVhZGluZy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2RlY29kZXIvdHJlZXJlYWRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvYXJtL25lb24vZGVub2lzaW5nX25lb24uYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9uL2Zhc3Rx
dWFudGl6ZWJfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvYXJtL25lb24vc2hvcnRmZGN0X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2FybS9uZW9uL3ZwOF9zaG9ydHdhbHNo
NHg0X25lb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL2JpdHN0cmVhbS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvYml0c3RyZWFtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ibG9jay5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYm9vbGh1ZmYuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jvb2xodWZmLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9jb3B5X2MuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RjdC5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGN0X3ZhbHVl
X2Nvc3QuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL2RjdF92YWx1ZV90b2tlbnMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL2RlZmF1bHRjb2VmY291bnRzLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rlbm9pc2luZy5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2Rl
ZnJhbWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL2VuY29kZWZyYW1lLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9lbmNvZGVpbnRyYS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlaW50cmEuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW1iLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtYi5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbXYu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Vu
Y29kZW12LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9ldGhyZWFkaW5nLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9ldGhyZWFkaW5nLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9maXJzdHBhc3MuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbG9va2FoZWFkLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tY29tcC5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21v
ZGVjb3N0cy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvbW9kZWNvc3RzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9tcl9kaXNzaW0uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL21yX2Rpc3NpbS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pZi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvb255eF9pbnQuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tpbnRlci5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2lu
dGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9waWNrbHBmLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9waWNrbHBmLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9xdWFudGl6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yZG9wdC5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmRvcHQuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3NlZ21lbnRhdGlvbi5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvc2Vn
bWVudGF0aW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci90b2tlbml6ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvdG9rZW5pemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0ZXIuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3ZwOF9xdWFudGl6ZS5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3ZwOF9jeF9pZmFjZS5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3ZwOF9keF9pZmFj
ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9h
cm0vbmVvbi92cDlfaWh0MTZ4MTZfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25lb24vdnA5X2lodDR4NF9hZGRfbmVvbi5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0v
bmVvbi92cDlfaWh0OHg4X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9paHRfbmVvbi5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYWxsb2Njb21tb24u
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X2FsbG9jY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9ibG9ja2QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X2Jsb2NrZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb25fZGF0YS5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9u
X2RhdGEuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X2VudHJvcHkuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X2VudHJvcHkuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltb2RlLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9w
eW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9lbnRyb3B5bXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X2VudW1zLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9maWx0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZpbHRlci5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZnJhbWVfYnVmZmVycy5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZnJh
bWVfYnVmZmVycy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfaWRjdC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfaWRjdC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbG9vcGZpbHRlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbG9vcGZpbHRlci5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbWZxZS5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbWZx
ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfbXYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X212cmVmX2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfbXZyZWZfY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9vbnl4Y19pbnQuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Bvc3Rwcm9jLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9w
b3N0cHJvYy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfcHBmbGFncy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfcHJlZF9jb21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3ByZWRfY29tbW9uLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9xdWFudF9jb21tb24u
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X3F1YW50X2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfcmVjb25pbnRlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRlci5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRyYS5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25p
bnRyYS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfcnRjZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfc2NhbGUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X3NjYWxlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FuLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FuLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zZWdfY29tbW9uLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zZWdfY29t
bW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV90aHJlYWRfY29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV90aHJlYWRfY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aWxlX2NvbW1vbi5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9jb21t
b24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVy
L3ZwOV9kZWNvZGVmcmFtZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZWZyYW1lLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlbXYuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVtdi5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2Rl
Y29kZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNv
ZGVyL3ZwOV9kZWNvZGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZGVjb2Rlci92cDlfZGV0b2tlbml6ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RldG9rZW5pemUuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kc3ViZXhwLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1
YmV4cC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29k
ZXIvdnA5X2pvYl9xdWV1ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2RlY29kZXIvdnA5X2pvYl9xdWV1ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvYXJtL25lb24vdnA5X2Rlbm9pc2VyX25lb24uYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL2FybS9u
ZW9uL3ZwOV9lcnJvcl9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci9hcm0vbmVvbi92cDlfZnJhbWVfc2NhbGVfbmVvbi5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvYXJtL25lb24vdnA5
X3F1YW50aXplX25lb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9hcV9jeWNsaWNyZWZyZXNoLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVzaC5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Jp
dHN0cmVhbS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2JpdHN0cmVhbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Jsb2NrLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVl
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfY29zdC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2Nvc3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9kY3QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Rlbm9pc2VyLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlZnJhbWUu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9lbmNvZGVmcmFtZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2VuY29kZW1iLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW12
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfZW5jb2Rlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2VuY29kZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXRocmVhZC5oIiwKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dF9yYXRlY3RybC5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2V4dGVuZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2V4dGVuZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2ZpcnN0cGFzcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZyYW1lX3NjYWxlLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfam9iX3F1ZXVlLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
bG9va2FoZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfbG9va2FoZWFkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWJncmFwaC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21jb21wLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWNvbXAuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tdWx0aV90
aHJlYWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9tdWx0aV90aHJlYWQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
cGFydGl0aW9uX21vZGVscy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3BpY2tscGYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbHBmLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja21vZGUuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbW9k
ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3F1YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfcXVhbnRpemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJsLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmQuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZC5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X3Jkb3B0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfcmRvcHQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50
YXRpb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9za2luX2RldGVjdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRfZmVhdHVyZXMu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9zcGVlZF9mZWF0dXJlcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRleHQuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9z
dmNfbGF5ZXJjb250ZXh0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfdGVtcG9yYWxfZmlsdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdG9rZW5pemUuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90b2tlbml6ZS5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X3RyZWV3cml0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV90cmVld3JpdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1vbi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9pbnRlcm5hbC92cHhfY29k
ZWNfaW50ZXJuYWwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eC9zcmMvdnB4X2NvZGVjLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvc3JjL3ZweF9kZWNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvc3JjL3ZweF9lbmNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9pbWFnZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4L3ZwOGN4LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvdnA4ZHguaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC92cHhfY29kZWMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC92cHhfZGVjb2Rlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4L3ZweF9lbmNvZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvdnB4X2ZyYW1lX2J1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbWFnZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbnRlZ2VyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FkZF9ub2lzZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vYXZnX25lb24uYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2F2Z19wcmVkX25lb24uYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2RlYmxv
Y2tfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vZmRjdDE2eDE2X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYXJtL2ZkY3QzMngzMl9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9mZGN0X25lb24uYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2ZkY3RfcGFydGlhbF9uZW9u
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9m
d2RfdHhmbV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2FybS9oYWRhbWFyZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0MTZ4MTZfMV9hZGRfbmVvbi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDE2eDE2X2FkZF9u
ZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Fy
bS9pZGN0MzJ4MzJfMTM1X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0MzJ4MzJfMV9hZGRfbmVvbi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyXzM0X2Fk
ZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2FybS9pZGN0MzJ4MzJfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3Q0eDRfMV9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDR4NF9hZGRfbmVvbi5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRj
dDh4OF8xX2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FybS9pZGN0OHg4X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0X25lb24uaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2ludHJhcHJlZF9uZW9uLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9sb29wZmls
dGVyX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL21lbV9uZW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FybS9xdWFudGl6ZV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zYWQ0ZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zYWRfbmVvbi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vc3VicGVsX3ZhcmlhbmNl
X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
YXJtL3N1YnRyYWN0X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvYXJtL3N1bV9uZW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS9zdW1fc3F1YXJlc19uZW9uLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS90cmFuc3Bvc2VfbmVvbi5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdmFyaWFu
Y2VfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vdnB4X2NvbnZvbHZlOF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X25lb24uaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZV9hdmdf
bmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9h
cm0vdnB4X2NvbnZvbHZlX2NvcHlfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlX25lb24uYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9zY2FsZWRfY29udm9s
dmU4X25lb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXZnLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2JpdHJlYWRlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9iaXRyZWFkZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYml0cmVhZGVyX2J1ZmZlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlci5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXIuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyX2J1ZmZlci5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0
ZXJfYnVmZmVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2RlYmxvY2suYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvZndkX3R4Zm0uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvZndkX3R4Zm0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvaW50cmFwcmVkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2ludl90eGZtLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2ludl90eGZtLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2xvb3BmaWx0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcG9zdHByb2MuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHJvYi5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wcm9iLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3BzbnIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHNuci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9xdWFudGl6ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9xdWFudGl6ZS5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9zYWQuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Avc2tpbl9kZXRlY3Rpb24uYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Avc2tpbl9kZXRlY3Rpb24uaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Avc3VidHJhY3Qu
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Avc3VtX3Nx
dWFyZXMuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
dHhmbV9jb21tb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvdmFyaWFuY2UuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvdmFyaWFuY2UuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvdnB4X2NvbnZvbHZlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3ZweF9jb252b2x2ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfZHNwX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfZHNwX3J0Y2QuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2ZpbHRlci5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS9pbmNsdWRlL3Zw
eF9tZW1faW50cm5sLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfbWVtL3ZweF9tZW0uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9tZW0vdnB4X21lbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3BvcnRzL2FybS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3BvcnRzL2FybV9jcHVkZXRlY3QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9wb3J0cy9iaXRvcHMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9jb21waWxlcl9hdHRyaWJ1dGVzLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvZW1taW50cmluX2NvbXBh
dC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21l
bS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21l
bV9vcHMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0
cy9tZW1fb3BzX2FsaWduZWQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9wb3J0cy9tc3ZjLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfcG9ydHMvc3RhdGljX2Fzc2VydC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3N5c3RlbV9zdGF0ZS5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3ZweF9vbmNlLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X3RpbWVyLmgiLAorICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbWlwc19jcHVkZXRl
Y3QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9n
ZW5lcmljL2dlbl9zY2FsZXJzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfc2NhbGUvZ2VuZXJpYy92cHhfc2NhbGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJjb25maWcuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJl
eHRlbmQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2Fs
ZS92cHhfc2NhbGUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9zY2FsZS92cHhfc2NhbGVfcnRjZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X3NjYWxlL3l2MTJjb25maWcuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL2VuZGlhbl9pbmwuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF9hdG9taWNzLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGlt
ZXN0YW1wLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRp
bC92cHhfd3JpdGVfeXV2X2ZyYW1lLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfdXRpbC92cHhfd3JpdGVfeXV2X2ZyYW1lLmgiLAogXQotbGlidnB4X3NyY3Nf
YXJtNjRfYXNzZW1ibHkgPSBbXQotbGlidnB4X3NyY3NfYXJtX25lb25faGlnaGJkID0gWwotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FsbG9jY29tbW9u
LmMiLAorbGlidnB4X3NyY3NfbWlwc19oZWFkZXJzID0gWwogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FsbG9jY29tbW9uLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9sb29wZmlsdGVyX2FybS5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0v
bG9vcGZpbHRlcl9hcm0uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vYXJtL25lb24vYmlsaW5lYXJwcmVkaWN0X25lb24uYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vY29weW1lbV9u
ZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2FybS9uZW9uL2RjX29ubHlfaWRjdF9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9kZXF1YW50X2lkY3RfbmVvbi5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0v
bmVvbi9kZXF1YW50aXplYl9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2lkY3RfYmxrX25lb24uYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vaXdhbHNoX25l
b24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
YXJtL25lb24vbG9vcGZpbHRlcnNpbXBsZWhvcml6b250YWxlZGdlX25lb24uYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vbG9vcGZp
bHRlcnNpbXBsZXZlcnRpY2FsZWRnZV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL21ibG9vcGZpbHRlcl9uZW9uLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9u
L3Nob3J0aWRjdDR4NGxsbV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL3NpeHRhcHByZWRpY3RfbmVvbi5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi92cDhf
bG9vcGZpbHRlcl9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2Jsb2NrZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vY29lZnVwZGF0ZXByb2JzLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2NvbW1vbi5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9kZWZhdWx0X2NvZWZfcHJvYnMu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZGVx
dWFudGl6ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9lbnRyb3B5LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2VudHJvcHkuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vZW50cm9weW1vZGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW1vZGUuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW12LmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHltdi5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9leHRlbmQuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZXh0ZW5k
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Zp
bHRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9maWx0ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vZmluZG5lYXJtdi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL2dlbmVyaWMvc3lzdGVtZGVwZW5kZW50LmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2hlYWRlci5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pZGN0X2Jsay5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pZGN0
bGxtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2ludnRyYW5zLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2xvb3BmaWx0ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vbG9vcGZpbHRlcl9maWx0ZXJzLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21icGl0Y2guYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWZxZS5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tb2RlY29udC5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tb2RlY29udC5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tdi5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9vbnl4Lmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL29ueXhj
X2ludC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9vbnl4ZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9wb3N0cHJvYy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9wb3N0cHJvYy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9wcGZsYWdzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2NvbW1vbi5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9xdWFudF9jb21tb24uaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRlci5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmlu
dGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L3JlY29uaW50cmEuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vcmVjb25pbnRyYS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhNHg0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcnRjZC5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zZXR1cGludHJhcmVjb24u
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc2V0
dXBpbnRyYXJlY29uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL3N3YXB5djEyYnVmZmVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3N3YXB5djEyYnVmZmVyLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3N5c3RlbWRlcGVuZGVudC5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90aHJlYWRpbmcu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdHJl
ZWNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL3RyZWVjb2Rlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi92cDhfZW50cm9weW1vZGVkYXRhLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9sb29wZmlsdGVyLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlv
bi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi92
cDhfc2tpbl9kZXRlY3Rpb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9kZWNvZGVyL2Rib29saHVmZi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZmLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVmcmFtZS5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlbXYuYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZW12
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9k
ZWNvZGVydGhyZWFkaW5nLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZGVjb2Rlci9kZXRva2VuaXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZXRva2VuaXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9vbnl4ZF9pZi5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvb255eGRfaW50LmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci90aHJlYWRpbmcu
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL3Ry
ZWVyZWFkZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL2FybS9uZW9uL2Rlbm9pc2luZ19uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9hcm0vbmVvbi9mYXN0cXVhbnRpemViX25lb24u
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Fy
bS9uZW9uL3Nob3J0ZmRjdF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9hcm0vbmVvbi92cDhfc2hvcnR3YWxzaDR4NF9uZW9uLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJl
YW0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L2JpdHN0cmVhbS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvYmxvY2suaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL2Jvb2xodWZmLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9ib29saHVmZi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvY29weV9jLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3QuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RjdF92YWx1ZV9jb3N0LmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3RfdmFsdWVf
dG9rZW5zLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9kZWZhdWx0Y29lZmNvdW50cy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvZGVub2lzaW5nLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWZyYW1lLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVmcmFt
ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
ZW5jb2RlaW50cmEuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL2VuY29kZWludHJhLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtYi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbWIuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW12LmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtdi5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZXRocmVhZGlu
Zy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
ZXRocmVhZGluZy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvZmlyc3RwYXNzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9sb29rYWhlYWQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21jb21wLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tb2RlY29zdHMuYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVjb3N0
cy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
bXJfZGlzc2ltLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9tcl9kaXNzaW0uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL29ueXhfaWYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL29ueXhfaW50LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNraW50ZXIuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tpbnRlci5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xwZi5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xw
Zi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
cXVhbnRpemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL3JhdGVjdHJsLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9yYXRlY3RybC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvcmRvcHQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Jkb3B0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9zZWdtZW50YXRpb24uYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3NlZ21lbnRhdGlvbi5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdG9rZW5p
emUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L3Rva2VuaXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci90cmVld3JpdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci90cmVld3JpdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci92cDhfcXVhbnRpemUuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC92cDhfY3hfaWZhY2UuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC92cDhfZHhfaWZhY2UuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25lb24vdnA5X2hp
Z2hiZF9paHQxNngxNl9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaGlnaGJkX2lodDR4NF9hZGRfbmVvbi5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0v
bmVvbi92cDlfaGlnaGJkX2lodDh4OF9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0MTZ4MTZfYWRkX25l
b24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
YXJtL25lb24vdnA5X2lodDR4NF9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0OHg4X2FkZF9uZW9uLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL2FybS9u
ZW9uL3ZwOV9paHRfbmVvbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfYWxsb2Njb21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2FsbG9jY29tbW9uLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9ibG9ja2QuYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Jsb2Nr
ZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9jb21tb25fZGF0YS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uX2RhdGEuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHkuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHkuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Vu
dHJvcHltb2RlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW12LmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bXYuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudW1zLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9maWx0
ZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X2ZpbHRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfZnJhbWVfYnVmZmVycy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZnJhbWVfYnVmZmVycy5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfaWRjdC5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfaWRjdC5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbG9v
cGZpbHRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfbG9vcGZpbHRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfbWZxZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbWZxZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X212cmVmX2NvbW1vbi5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbXZyZWZf
Y29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9vbnl4Y19pbnQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X3Bvc3Rwcm9jLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0cHJvYy5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcHBmbGFncy5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcHJlZF9jb21t
b24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X3ByZWRfY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9xdWFudF9jb21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3F1YW50X2NvbW1vbi5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRlci5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
cmVjb25pbnRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfcmVjb25pbnRyYS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcmVjb25pbnRyYS5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcnRjZC5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2NhbGUuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NjYWxlLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9z
Y2FuLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9zY2FuLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9zZWdfY29tbW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9zZWdfY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aHJlYWRfY29tbW9uLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aHJlYWRf
Y29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV90aWxlX2NvbW1vbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVmcmFtZS5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZWZy
YW1lLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rl
ci92cDlfZGVjb2RlbXYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVtdi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVyLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGV0b2tlbml6
ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIv
dnA5X2RldG9rZW5pemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9kZWNvZGVyL3ZwOV9kc3ViZXhwLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1YmV4cC5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2pvYl9xdWV1ZS5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2pvYl9xdWV1
ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
YXJtL25lb24vdnA5X2Rlbm9pc2VyX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL2FybS9uZW9uL3ZwOV9mcmFtZV9zY2FsZV9uZW9uLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci9hcm0v
bmVvbi92cDlfcXVhbnRpemVfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2FxX2N5Y2xpY3JlZnJlc2guYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9hcV9jeWNsaWNyZWZy
ZXNoLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfYml0c3RyZWFtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfYml0c3RyZWFtLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYmxvY2suaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9jb250ZXh0X3RyZWUuYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9jb250
ZXh0X3RyZWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9jb3N0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfY29zdC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2RjdC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Rlbm9pc2VyLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZGVub2lzZXIuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNv
ZGVmcmFtZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2VuY29kZWZyYW1lLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtYi5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW12LmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
ZW5jb2RlbXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9lbmNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2Rlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V0aHJlYWQuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5k
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfZXh0X3JhdGVjdHJsLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZmlyc3RwYXNzLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZnJhbWVfc2NhbGUuYyIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9qb2Jf
cXVldWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9sb29rYWhlYWQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9sb29rYWhlYWQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tYmdyYXBoLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWNvbXAuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tY29tcC5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X211bHRpX3RocmVhZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X211bHRpX3RocmVhZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbm9pc2VfZXN0
aW1hdGUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9wYXJ0aXRpb25fbW9kZWxzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja2xwZi5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2tscGYuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbW9kZS5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X3BpY2ttb2RlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfcXVhbnRpemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9xdWFudGl6ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJsLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmF0ZWN0cmwuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9y
ZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3JkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfcmRvcHQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9yZG9wdC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jlc2l6ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jlc2l6ZS5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NlZ21lbnRhdGlvbi5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X3NlZ21lbnRhdGlvbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc2tpbl9kZXRlY3Rpb24uaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zcGVlZF9m
ZWF0dXJlcy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ViZXhwLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVyY29u
dGV4dC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X3N2Y19sYXllcmNvbnRleHQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90ZW1wb3JhbF9maWx0ZXIuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90b2tlbml6ZS5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Rv
a2VuaXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfdHJlZXdyaXRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3RyZWV3cml0ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfY3hfaWZhY2UuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfY3hfaWZhY2UuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfZHhfaWZhY2UuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfZHhfaWZhY2UuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfaWZhY2VfY29tbW9uLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1v
bi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L2ludGVybmFs
L3ZweF9jb2RlY19pbnRlcm5hbC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4L3NyYy92cHhfY29kZWMuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweC9zcmMvdnB4X2RlY29kZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2VuY29kZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2ltYWdlLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnA4LmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnA4Y3guaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweC92cDhkeC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4L3ZweF9jb2RlYy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4L3ZweF9kZWNvZGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHgvdnB4X2VuY29kZXIuaCIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZXh0X3JhdGVjdHJsLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2ZyYW1lX2J1ZmZlci5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbWFnZS5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbnRlZ2VyLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FkZF9ub2lzZS5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vYXZnX25lb24u
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2F2
Z19wcmVkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYXJtL2RlYmxvY2tfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9hcm0vZmRjdDE2eDE2X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2ZkY3QzMngzMl9uZW9uLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9mZGN0X25lb24u
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2Zk
Y3RfcGFydGlhbF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FybS9md2RfdHhmbV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oYWRhbWFyZF9uZW9uLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdoYmRfaWRjdDE2eDE2X2Fk
ZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2FybS9oaWdoYmRfaWRjdDMyeDMyXzEwMjRfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF9pZGN0MzJ4MzJfMTM1X2Fk
ZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2FybS9oaWdoYmRfaWRjdDMyeDMyXzM0X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdoYmRfaWRjdDMyeDMyX2FkZF9uZW9u
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9o
aWdoYmRfaWRjdDR4NF9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lkY3Q4eDhfYWRkX25lb24uYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF9pZGN0X25l
b24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L2hpZ2hiZF9pbnRyYXByZWRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2xvb3BmaWx0ZXJfbmVvbi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX3ZweF9jb252
b2x2ZThfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9hcm0vaGlnaGJkX3ZweF9jb252b2x2ZV9hdmdfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX3ZweF9jb252b2x2ZV9j
b3B5X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYXJtL2hpZ2hiZF92cHhfY29udm9sdmVfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDE2eDE2XzFfYWRkX25lb24uYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3QxNngx
Nl9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9hcm0vaWRjdDMyeDMyXzEzNV9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyXzFfYWRkX25lb24uYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3QzMngz
Ml8zNF9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9hcm0vaWRjdDMyeDMyX2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0OHg4XzFfYWRkX25lb24uYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3Q4eDhfYWRk
X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
YXJtL2lkY3RfbmVvbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9hcm0vaW50cmFwcmVkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL21lbV9uZW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9xdWFudGl6ZV9uZW9uLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zYWQ0ZF9uZW9uLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zYWRf
bmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9h
cm0vc3VicGVsX3ZhcmlhbmNlX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1YnRyYWN0X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3N1bV9uZW9uLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zdW1fc3F1YXJlc19uZW9u
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS90
cmFuc3Bvc2VfbmVvbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9hcm0vdmFyaWFuY2VfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X2NvbnZvbHZlOF9uZW9uLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X25l
b25fYXNtLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2FybS92cHhfY29udm9sdmU4X25lb25fYXNtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmVfbmVvbi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4X3NjYWxlZF9jb252
b2x2ZThfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9hdmcuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvYml0cmVhZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2JpdHJlYWRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVmZmVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9idWZmZXIuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlci5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXJfYnVmZmVy
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdy
aXRlcl9idWZmZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvZGVibG9jay5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9md2RfdHhmbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9md2RfdHhmbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9pbnRyYXByZWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbG9vcGZpbHRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wb3N0cHJvYy5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wcm9iLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Byb2IuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHNuci5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wc25yLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50aXplLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3F1YW50aXplLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NhZC5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2luX2RldGVjdGlvbi5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9za2luX2RldGVjdGlvbi5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9zdWJ0cmFj
dC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9zdW1f
c3F1YXJlcy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC90eGZtX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC92YXJpYW5jZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC92YXJpYW5jZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2NvbnZvbHZlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9kc3BfY29tbW9uLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9kc3BfcnRjZC5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfZmlsdGVyLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVtL2luY2x1ZGUv
dnB4X21lbV9pbnRybmwuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9tZW0vdnB4X21lbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X21lbS92cHhfbWVtLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfcG9ydHMvYXJtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfcG9ydHMvYXJtX2NwdWRldGVjdC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2FzbWRlZnNfbW1pLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYml0b3BzLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvY29tcGlsZXJfYXR0cmlidXRlcy5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2VtbWlu
dHJpbl9jb21wYXQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9wb3J0cy9tZW0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9wb3J0cy9tZW1fb3BzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfcG9ydHMvbWVtX29wc19hbGlnbmVkLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfcG9ydHMvbWlwcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL21zdmMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9zdGF0aWNfYXNzZXJ0LmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvc3lzdGVtX3N0YXRlLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X29uY2UuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfdGlt
ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9n
ZW5lcmljL2dlbl9zY2FsZXJzLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfc2NhbGUvZ2VuZXJpYy92cHhfc2NhbGUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJjb25maWcuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJl
eHRlbmQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2Fs
ZS92cHhfc2NhbGUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9zY2FsZS92cHhfc2NhbGVfcnRjZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X3NjYWxlL3l2MTJjb25maWcuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL2VuZGlhbl9pbmwuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF9hdG9taWNzLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGlt
ZXN0YW1wLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRp
bC92cHhfd3JpdGVfeXV2X2ZyYW1lLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfdXRpbC92cHhfd3JpdGVfeXV2X2ZyYW1lLmgiLAotXQotbGlidnB4X3NyY3Nf
YXJtX25lb25faGlnaGJkX2Fzc2VtYmx5ID0gWwotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2FybS9pZGN0NHg0XzFfYWRkX25lb24uYXNtIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDR4NF9hZGRfbmVv
bi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Fy
bS9pZGN0X25lb24uYXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9hcm0vaW50cmFwcmVkX25lb25fYXNtLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2xvb3BmaWx0ZXJfMTZfbmVvbi5hc20iLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9sb29wZmls
dGVyXzRfbmVvbi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL2FybS9sb29wZmlsdGVyXzhfbmVvbi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zYXZlX3JlZ19uZW9uLmFzbSIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThf
YXZnX2hvcml6X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfYXZnX2hvcml6X2ZpbHRl
cl90eXBlMl9uZW9uLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfYXZnX3ZlcnRfZmlsdGVyX3R5cGUxX25lb24uYXNt
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vdnB4
X2NvbnZvbHZlOF9hdmdfdmVydF9maWx0ZXJfdHlwZTJfbmVvbi5hc20iLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmU4X2hvcml6
X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfaG9yaXpfZmlsdGVyX3R5cGUyX25lb24u
YXNtIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
dnB4X2NvbnZvbHZlOF92ZXJ0X2ZpbHRlcl90eXBlMV9uZW9uLmFzbSIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfdmVydF9m
aWx0ZXJfdHlwZTJfbmVvbi5hc20iLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmVfYXZnX25lb25fYXNtLmFzbSIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZV9j
b3B5X25lb25fYXNtLmFzbSIsCi1dCi1saWJ2cHhfc3Jjc19hcm02NF9oaWdoYmQgPSBbCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYWxsb2Njb21tb24u
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYWxs
b2Njb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vYXJtL2xvb3BmaWx0ZXJfYXJtLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9sb29wZmlsdGVyX2FybS5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9iaWxpbmVhcnBy
ZWRpY3RfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9hcm0vbmVvbi9jb3B5bWVtX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vZGNfb25seV9pZGN0X2FkZF9uZW9u
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Fy
bS9uZW9uL2RlcXVhbnRfaWRjdF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL2FybS9uZW9uL2RlcXVhbnRpemViX25lb24uYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vaWRj
dF9ibGtfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9hcm0vbmVvbi9pd2Fsc2hfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hcm0vbmVvbi9sb29wZmlsdGVyc2ltcGxlaG9yaXpv
bnRhbGVkZ2VfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9hcm0vbmVvbi9sb29wZmlsdGVyc2ltcGxldmVydGljYWxlZGdlX25lb24uYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25l
b24vbWJsb29wZmlsdGVyX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vc2hvcnRpZGN0NHg0bGxtX25lb24uYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYXJtL25lb24vc2l4
dGFwcHJlZGljdF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL2FybS9uZW9uL3ZwOF9sb29wZmlsdGVyX25lb24uYyIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy94ODYuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhfc2NhbGUuaCIsCisgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS95djEyY29uZmlnLmgi
LAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC9lbmRpYW5f
aW5sLmgiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92
cHhfYXRvbWljcy5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X3V0aWwvdnB4X3RocmVhZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3V0aWwvdnB4X3RpbWVzdGFtcC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3dyaXRlX3l1dl9mcmFtZS5oIiwKK10KK2xpYnZweF9z
cmNzX21pcHNfYXNzZW1ibHkgPSBbXQorbGlidnB4X3NyY3NfbmFjbCA9IFsKKyAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hbGxvY2NvbW1vbi5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYmxvY2tk
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Nv
ZWZ1cGRhdGVwcm9icy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vZGVmYXVsdF9jb2VmX3Byb2JzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2RlcXVhbnRpemUuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weS5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5LmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHlt
b2RlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2VudHJvcHltb2RlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2VudHJvcHltdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bXYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZXh0ZW5kLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2V4dGVuZC5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maWx0ZXIuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZmlsdGVyLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbmRuZWFybXYuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZmluZG5lYXJt
di5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9n
ZW5lcmljL3N5c3RlbWRlcGVuZGVudC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9oZWFkZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaWRjdF9ibGsuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaWRjdGxsbS5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pbnZ0cmFucy5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29wZmlsdGVyLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2xvb3BmaWx0
ZXJfZmlsdGVycy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9tYnBpdGNoLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL21mcWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vbW9kZWNvbnQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vbW9kZWNvbnQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vb255eC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9vbnl4Y19pbnQuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vb255eGQuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcG9zdHByb2MuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcG9zdHByb2MuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcHBmbGFn
cy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9x
dWFudF9jb21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vcXVhbnRfY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRlci5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmEuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25p
bnRyYTR4NC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9yZWNvbmludHJhNHg0LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3J0Y2QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vc2V0dXBpbnRyYXJlY29uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3NldHVwaW50cmFyZWNvbi5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zd2FweXYxMmJ1ZmZl
ci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9z
d2FweXYxMmJ1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9zeXN0ZW1kZXBlbmRlbnQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdGhyZWFkaW5nLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3RyZWVjb2Rlci5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90cmVlY29kZXIuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X2VudHJvcHlt
b2RlZGF0YS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi92cDhfbG9vcGZpbHRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi92cDhfc2tpbl9kZXRlY3Rpb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X3NraW5fZGV0ZWN0aW9uLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kYm9vbGh1
ZmYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVy
L2Rib29saHVmZi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2RlY29kZXIvZGVjb2RlZnJhbWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVtdi5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlcnRocmVhZGluZy5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGV0b2tlbml6
ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIv
ZGV0b2tlbml6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2RlY29kZXIvb255eGRfaWYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9kZWNvZGVyL29ueXhkX2ludC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvdGhyZWFkaW5nLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci90cmVlcmVhZGVyLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9hcm0vbmVvbi9kZW5vaXNp
bmdfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvYXJtL25lb24vZmFzdHF1YW50aXplYl9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9hcm0vbmVvbi9zaG9ydGZkY3RfbmVvbi5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYXJt
L25lb24vdnA4X3Nob3J0d2Fsc2g0eDRfbmVvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYml0c3RyZWFtLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0uaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jsb2NrLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ib29saHVmZi5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYm9v
bGh1ZmYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL2NvcHlfYy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvZGN0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9kY3RfdmFsdWVfY29zdC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGN0X3ZhbHVlX3Rva2Vucy5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGVmYXVsdGNvZWZjb3VudHMu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rl
bm9pc2luZy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvZGVub2lzaW5nLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9lbmNvZGVmcmFtZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlZnJhbWUuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWludHJhLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVpbnRyYS5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5j
b2RlbWIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL2VuY29kZW1iLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9lbmNvZGVtdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbXYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2V0aHJlYWRpbmcuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2V0aHJlYWRpbmcuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2ZpcnN0cGFzcy5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbG9va2Fo
ZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9sb29rYWhlYWQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL21jb21wLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9tY29tcC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvbW9kZWNvc3RzLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tb2RlY29zdHMuaCIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21yX2Rpc3NpbS5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbXJfZGlzc2ltLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9vbnl4X2lm
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9v
bnl4X2ludC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvcGlja2ludGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci9waWNraW50ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tscGYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tscGYuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3F1YW50aXplLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yYXRlY3RybC5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Jk
b3B0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9yZG9wdC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvc2VnbWVudGF0aW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9zZWdtZW50YXRpb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Rva2VuaXplLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci90b2tlbml6ZS5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdyaXRlci5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdy
aXRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvdnA4X3F1YW50aXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvdnA4X2N4X2lmYWNlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvdnA4X2R4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9oaWdoYmRfaWh0MTZ4MTZfYWRkX25lb24u
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJt
L25lb24vdnA5X2hpZ2hiZF9paHQ0eDRfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vYXJtL25lb24vdnA5X2hpZ2hiZF9paHQ4eDhf
YWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vYXJtL25lb24vdnA5X2lodDE2eDE2X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL2FybS9uZW9uL3ZwOV9paHQ0eDRfYWRk
X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vYXJtL25lb24vdnA5X2lodDh4OF9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi9hcm0vbmVvbi92cDlfaWh0X25lb24uaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2FsbG9j
Y29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9hbGxvY2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2NvbW1vbi92cDlfYmxvY2tkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9ibG9ja2QuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbi5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uX2RhdGEu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X2NvbW1vbl9kYXRhLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9lbnRyb3B5LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X2VudHJvcHltdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfZW50cm9weW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnVtcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZmlsdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9maWx0ZXIuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZl
cnMuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X2ZyYW1lX2J1ZmZlcnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X2lkY3QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2lkY3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21m
cWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X21mcWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X212LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9tdnJlZl9jb21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X212cmVmX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfb255eGNfaW50LmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0
cHJvYy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfcG9zdHByb2MuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X3BwZmxhZ3MuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3ByZWRfY29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRf
Y29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9xdWFudF9jb21tb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50ZXIuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X3JlY29uaW50cmEuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X3J0Y2QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X3NjYWxlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FsZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
c2VnX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfdGhyZWFkX2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGhyZWFkX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9jb21tb24uYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Rp
bGVfY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZGVjb2Rlci92cDlfZGVjb2RlZnJhbWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVmcmFtZS5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZW12LmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rl
bXYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVy
L3ZwOV9kZWNvZGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZGVjb2Rlci92cDlfZGVjb2Rlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RldG9rZW5pemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZXRva2VuaXplLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1YmV4
cC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIv
dnA5X2RzdWJleHAuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9kZWNvZGVyL3ZwOV9qb2JfcXVldWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9qb2JfcXVldWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL2FybS9uZW9uL3ZwOV9kZW5vaXNlcl9u
ZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci9hcm0vbmVvbi92cDlfZnJhbWVfc2NhbGVfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvYXJtL25lb24vdnA5X3F1YW50aXplX25lb24u
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9hcV9jeWNsaWNyZWZyZXNoLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVzaC5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2JpdHN0cmVhbS5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2JpdHN0
cmVhbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2Jsb2NrLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29zdC5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Nvc3Qu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9kY3QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9kZW5vaXNlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2Rlbm9pc2VyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlZnJhbWUuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVmcmFtZS5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2VuY29kZW1iLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfZW5jb2RlbWIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW12LmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2Rlci5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Vu
Y29kZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9ldGhyZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZXRocmVhZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dF9yYXRlY3RybC5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dGVuZC5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dGVu
ZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2ZpcnN0cGFzcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2ZyYW1lX3NjYWxlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfam9iX3F1ZXVlLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbG9va2FoZWFkLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbG9v
a2FoZWFkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfbWJncmFwaC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X21jb21wLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWNvbXAuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tdWx0aV90aHJlYWQuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tdWx0aV90
aHJlYWQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGltYXRlLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGFydGl0aW9uX21vZGVs
cy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3BpY2tscGYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9waWNrbHBmLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja21vZGUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbW9kZS5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3F1YW50aXplLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
cXVhbnRpemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJsLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmQuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZC5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jkb3B0LmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9yZXNpemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9yZXNpemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9za2luX2Rl
dGVjdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRfZmVhdHVyZXMuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zcGVlZF9mZWF0dXJl
cy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X3N1YmV4cC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3N1YmV4cC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRleHQuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdmNfbGF5ZXJjb250ZXh0
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfdGVtcG9yYWxfZmlsdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfdG9rZW5pemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90b2tlbml6ZS5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3RyZWV3cml0ZXIuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90
cmVld3JpdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
dnA5X2N4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvdnA5X2N4X2lmYWNlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvdnA5X2R4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvdnA5X2R4X2lmYWNlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9pbnRlcm5hbC92cHhfY29kZWNfaW50ZXJuYWwuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2NvZGVj
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9k
ZWNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3Jj
L3ZweF9lbmNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHgvc3JjL3ZweF9pbWFnZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4L3ZwOC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
L3ZwOGN4LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnA4
ZHguaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfY29k
ZWMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZGVj
b2Rlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9l
bmNvZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4
X2ZyYW1lX2J1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4L3ZweF9pbWFnZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4L3ZweF9pbnRlZ2VyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FkZF9ub2lzZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9hcm0vYXZnX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2F2Z19wcmVkX25lb24uYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2RlYmxvY2tfbmVvbi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vZmRjdDE2eDE2
X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
YXJtL2ZkY3QzMngzMl9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS9mZGN0X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2ZkY3RfcGFydGlhbF9uZW9uLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9md2RfdHhmbV9uZW9uLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oYWRh
bWFyZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL2FybS9oaWdoYmRfaWRjdDE2eDE2X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdoYmRfaWRjdDMyeDMyXzEwMjRfYWRk
X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
YXJtL2hpZ2hiZF9pZGN0MzJ4MzJfMTM1X2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdoYmRfaWRjdDMyeDMyXzM0X2FkZF9u
ZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Fy
bS9oaWdoYmRfaWRjdDMyeDMyX2FkZF9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdoYmRfaWRjdDR4NF9hZGRfbmVvbi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2lk
Y3Q4eDhfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvYXJtL2hpZ2hiZF9pZGN0X25lb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF9pbnRyYXByZWRfbmVvbi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2xv
b3BmaWx0ZXJfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9hcm0vaGlnaGJkX3ZweF9jb252b2x2ZThfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX3ZweF9jb252b2x2ZV9h
dmdfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vaGlnaGJkX3ZweF9jb252b2x2ZV9jb3B5X25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2hpZ2hiZF92cHhfY29udm9sdmVfbmVv
bi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
aWRjdDE2eDE2XzFfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYXJtL2lkY3QxNngxNl9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyXzEzNV9hZGRfbmVv
bi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
aWRjdDMyeDMyXzFfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYXJtL2lkY3QzMngzMl8zNF9hZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDMyeDMyX2FkZF9uZW9u
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9p
ZGN0NHg0XzFfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvYXJtL2lkY3Q0eDRfYWRkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2lkY3Q4eDhfMV9hZGRfbmVvbi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaWRjdDh4OF9h
ZGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9hcm0vaWRjdF9uZW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2FybS9pbnRyYXByZWRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vbG9vcGZpbHRlcl9uZW9uLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9tZW1fbmVvbi5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vcXVhbnRpemVf
bmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9h
cm0vc2FkNGRfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9hcm0vc2FkX25lb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AvYXJtL3N1YnBlbF92YXJpYW5jZV9uZW9uLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zdWJ0cmFjdF9uZW9uLmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9zdW1fbmVv
bi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
c3VtX3NxdWFyZXNfbmVvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9hcm0vdHJhbnNwb3NlX25lb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZhcmlhbmNlX25lb24uYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZThfbmVv
bi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0v
dnB4X2NvbnZvbHZlOF9uZW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS92cHhfY29udm9sdmVfYXZnX25lb24uYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL3ZweF9jb252b2x2ZV9jb3B5X25l
b24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYXJt
L3ZweF9jb252b2x2ZV9uZW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2FybS92cHhfc2NhbGVkX2NvbnZvbHZlOF9uZW9uLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2F2Zy5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXIuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9idWZm
ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0
cmVhZGVyX2J1ZmZlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9iaXR3cml0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvYml0d3JpdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2JpdHdyaXRlcl9idWZmZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyX2J1ZmZlci5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9kZWJsb2NrLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Z3ZF90eGZtLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Z3ZF90eGZtLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2ludHJhcHJlZC5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZfdHhm
bS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZf
dHhmbS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9s
b29wZmlsdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3Bvc3Rwcm9jLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3Byb2IuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvcHJvYi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9wc25yLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3BzbnIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvcXVhbnRpemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvcXVhbnRpemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3Avc2FkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3NraW5fZGV0ZWN0aW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL3NraW5fZGV0ZWN0aW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3N1YnRyYWN0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3N1bV9zcXVhcmVzLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3R4Zm1fY29tbW9uLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZhcmlhbmNlLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZhcmlhbmNlLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9jb252b2x2
ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhf
Y29udm9sdmUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvdnB4X2RzcF9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvdnB4X2RzcF9ydGNkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3ZweF9maWx0ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9tZW0vaW5jbHVkZS92cHhfbWVtX2ludHJubC5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS92cHhfbWVtLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVtL3ZweF9tZW0uaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hcm0uaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hcm1fY3B1ZGV0
ZWN0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMv
Yml0b3BzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9y
dHMvY29tcGlsZXJfYXR0cmlidXRlcy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X3BvcnRzL2VtbWludHJpbl9jb21wYXQuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9tZW0uaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9tZW1fb3BzLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbWVtX29wc19hbGlnbmVkLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbXN2Yy5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3N0YXRpY19h
c3NlcnQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0
cy9zeXN0ZW1fc3RhdGUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9wb3J0cy92cHhfb25jZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X3BvcnRzL3ZweF90aW1lci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9ydGNkLmMiLAorICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVtL3ZweF9tZW0uYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL2dlbl9zY2FsZXJz
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2Vu
ZXJpYy92cHhfc2NhbGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJjb25maWcuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3l2MTJleHRlbmQuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhfc2NhbGUuaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS92cHhfc2NhbGVf
cnRjZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxl
L3l2MTJjb25maWcuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF91dGlsL2VuZGlhbl9pbmwuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF91dGlsL3ZweF9hdG9taWNzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGhyZWFkLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfdGltZXN0YW1wLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfd3JpdGVfeXV2X2Zy
YW1lLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92
cHhfd3JpdGVfeXV2X2ZyYW1lLmgiLAogXQotbGlidnB4X3NyY3NfYXJtNjRfaGlnaGJkX2Fzc2Vt
Ymx5ID0gW10KLWxpYnZweF9zcmNzX21pcHMgPSBbCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYWxsb2Njb21tb24uYyIsCitsaWJ2cHhfc3Jjc19uYWNs
X2hlYWRlcnMgPSBbCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vYWxsb2Njb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vYmxvY2tkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2Jsb2NrZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9jb2VmdXBkYXRlcHJvYnMuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vY29tbW9uLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2RlZmF1bHRfY29lZl9wcm9i
cy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9k
ZXF1YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL2VudHJvcHkuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vZW50cm9weS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bXYuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weW12LmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2V4dGVuZC5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9leHRl
bmQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
ZmlsdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL2ZpbHRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9maW5kbmVhcm12LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL2ZpbmRuZWFybXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZ2VuZXJpYy9zeXN0ZW1kZXBlbmRlbnQuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaGVhZGVyLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2lkY3RfYmxr
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2lk
Y3RsbG0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vaW52dHJhbnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vbG9vcGZpbHRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9sb29wZmlsdGVyX2ZpbHRlcnMuYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWJwaXRjaC5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9tZnFlLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21vZGVjb250LmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21vZGVjb250Lmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL212Lmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL29ueXgu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vb255
eGNfaW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL29ueXhkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
Y29tbW9uL3Bvc3Rwcm9jLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3Bvc3Rwcm9jLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3BwZmxhZ3MuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcXVhbnRfY29tbW9uLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3F1YW50X2NvbW1vbi5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludGVyLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29u
aW50ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vcmVjb25pbnRyYS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9yZWNvbmludHJhLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0eDQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYTR4NC5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ydGNkLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3NldHVwaW50cmFyZWNv
bi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9z
ZXR1cGludHJhcmVjb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vc3dhcHl2MTJidWZmZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZmZXIuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3lzdGVtZGVwZW5kZW50LmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3RocmVhZGlu
Zy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90
cmVlY29kZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vdHJlZWNvZGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3ZwOF9lbnRyb3B5bW9kZWRhdGEuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X2xvb3BmaWx0ZXIuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X3NraW5fZGV0ZWN0
aW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L3ZwOF9za2luX2RldGVjdGlvbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZmLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kYm9vbGh1ZmYuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZWZyYW1lLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVtdi5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2Rl
bXYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVy
L2RlY29kZXJ0aHJlYWRpbmcuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9kZWNvZGVyL2RldG9rZW5pemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RldG9rZW5pemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL29ueXhkX2lmLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9vbnl4ZF9pbnQuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL3RocmVhZGlu
Zy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIv
dHJlZXJlYWRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvYml0c3RyZWFtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jsb2NrLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9ib29saHVmZi5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYm9vbGh1ZmYuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2NvcHlfYy5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGN0LmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3RfdmFs
dWVfY29zdC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvZGN0X3ZhbHVlX3Rva2Vucy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2VuY29kZXIvZGVmYXVsdGNvZWZjb3VudHMuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Rlbm9pc2luZy5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGVub2lzaW5nLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNv
ZGVmcmFtZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvZW5jb2RlZnJhbWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL2VuY29kZWludHJhLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVpbnRyYS5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbWIuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW1iLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVt
di5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
ZW5jb2RlbXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL2V0aHJlYWRpbmcuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL2V0aHJlYWRpbmcuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2ZpcnN0cGFzcy5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbG9va2FoZWFkLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9sb29rYWhlYWQuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21jb21wLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tY29t
cC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
bW9kZWNvc3RzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9tb2RlY29zdHMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL21yX2Rpc3NpbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbXJfZGlzc2ltLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9vbnl4X2lmLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9vbnl4X2ludC5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2ludGVyLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNr
aW50ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL3BpY2tscGYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL3BpY2tscGYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL3F1YW50aXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yYXRlY3RybC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Jkb3B0LmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yZG9wdC5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvc2VnbWVudGF0aW9u
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9z
ZWdtZW50YXRpb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL3Rva2VuaXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci90b2tlbml6ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdyaXRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdyaXRlci5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdnA4X3F1YW50aXplLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvdnA4X2N4X2lmYWNl
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvdnA4X2R4X2lm
YWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9hbGxvY2NvbW1vbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfYWxsb2Njb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Jsb2NrZC5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYmxvY2tkLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb24uaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Nv
bW1vbl9kYXRhLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9jb21tb25fZGF0YS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weS5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Vu
dHJvcHltb2RlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9lbnRyb3B5bXYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltdi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW51bXMuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZpbHRlci5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZmlsdGVyLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9m
cmFtZV9idWZmZXJzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9mcmFtZV9idWZmZXJzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9pZGN0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9pZGN0LmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9sb29wZmlsdGVyLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9sb29w
ZmlsdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9tZnFlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9tZnFlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvY29tbW9uL3ZwOV9tdi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbXZyZWZfY29tbW9uLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdnJlZl9jb21tb24uaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X29ueXhj
X2ludC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfcG9zdHByb2MuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X3Bvc3Rwcm9jLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wcGZsYWdzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5jIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcHJlZF9jb21t
b24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X3F1YW50X2NvbW1vbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludGVyLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludGVyLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9y
ZWNvbmludHJhLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9yZWNvbmludHJhLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9ydGNkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9zY2FsZS5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2NhbGUuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NjYW4uYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NjYW4uaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Nl
Z19jb21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X3NlZ19jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X3RocmVhZF9jb21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RocmVhZF9jb21tb24uaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RpbGVf
Y29tbW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV90aWxlX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZWZyYW1lLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlZnJhbWUuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVt
di5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIv
dnA5X2RlY29kZW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZGVjb2Rlci92cDlfZGVjb2Rlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZXRva2VuaXplLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGV0b2tlbml6
ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIv
dnA5X2RzdWJleHAuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9kZWNvZGVyL3ZwOV9kc3ViZXhwLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZGVjb2Rlci92cDlfam9iX3F1ZXVlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfam9iX3F1ZXVlLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGlj
cmVmcmVzaC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X2FxX2N5Y2xpY3JlZnJlc2guaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9iaXRzdHJlYW0uYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9iaXRzdHJlYW0uaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ibG9j
ay5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2NvbnRleHRfdHJlZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2NvbnRleHRfdHJlZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Nvc3QuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9jb3N0LmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZGN0LmMiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZGVu
b2lzZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9kZW5vaXNlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZWZyYW1lLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlZnJhbWUuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtYi5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2VuY29kZW1iLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
ZW5jb2Rlci92cDlfZW5jb2RlbXYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVyLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXRo
cmVhZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2V0aHJlYWQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9leHRlbmQuYyIsCisgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRfcmF0ZWN0cmwuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRlbmQuaCIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9maXJzdHBh
c3MuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9mcmFtZV9zY2FsZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2pvYl9xdWV1ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2xvb2thaGVhZC5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2xvb2thaGVhZC5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21i
Z3JhcGguaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9tY29tcC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X21jb21wLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfbXVsdGlfdGhyZWFkLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbXVsdGlfdGhyZWFkLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbm9p
c2VfZXN0aW1hdGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BhcnRpdGlvbl9tb2RlbHMuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbHBm
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfcGlja2xwZi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3BpY2ttb2RlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja21vZGUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9xdWFudGl6ZS5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3F1YW50aXplLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
cmF0ZWN0cmwuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9yYXRlY3RybC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZG9wdC5jIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jkb3B0LmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmVzaXplLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
cmVzaXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfc2VnbWVudGF0aW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfc2VnbWVudGF0aW9uLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc2tpbl9kZXRlY3Rpb24uYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9z
a2luX2RldGVjdGlvbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRfZmVhdHVyZXMuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdWJleHAu
YyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9zdWJleHAuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9zdmNfbGF5ZXJjb250ZXh0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVyY29udGV4dC5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3RlbXBvcmFs
X2ZpbHRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X3Rva2VuaXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfdG9rZW5pemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90cmVld3JpdGVyLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFj
ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9p
ZmFjZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9k
eF9pZmFjZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3Zw
OV9keF9pZmFjZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L3ZwOV9pZmFjZV9jb21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS92cDlfaWZhY2VfY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHgvaW50ZXJuYWwvdnB4X2NvZGVjX2ludGVybmFsLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9jb2RlYy5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfZGVjb2Rlci5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfZW5jb2Rl
ci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhf
aW1hZ2UuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cDgu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cDhjeC5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOGR4LmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2NvZGVjLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2RlY29kZXIuaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZW5jb2Rlci5oIiwK
KyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9leHRfcmF0ZWN0
cmwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZnJh
bWVfYnVmZmVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgv
dnB4X2ltYWdlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgv
dnB4X2ludGVnZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYWRkX25vaXNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2F2Zy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9iaXRyZWFkZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvYml0cmVhZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9idWZmZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyX2J1ZmZlci5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXIuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlcl9i
dWZmZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
Yml0d3JpdGVyX2J1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9kZWJsb2NrLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL2Z3ZF90eGZtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2Z3ZF90eGZtLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL2ludHJhcHJlZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZfdHhmbS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZfdHhmbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9sb29wZmlsdGVyLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Bvc3Rwcm9jLmgiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3Byb2IuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcHJvYi5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9wc25yLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3BzbnIuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcXVhbnRpemUuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvcXVhbnRpemUuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Avc2FkLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NraW5fZGV0ZWN0aW9uLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3NraW5fZGV0ZWN0
aW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3N1
YnRyYWN0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3N1bV9zcXVhcmVzLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3R4Zm1fY29tbW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHhfZHNwL3ZhcmlhbmNlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL3ZhcmlhbmNlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3ZweF9jb252b2x2ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9jb21tb24uaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2RzcF9ydGNkLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9maWx0
ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9tZW0vaW5j
bHVkZS92cHhfbWVtX2ludHJubC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X21lbS92cHhfbWVtLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfbWVtL3ZweF9tZW0uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9wb3J0cy9hc21kZWZzX21taS5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2FybS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2JpdG9wcy5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2NvbXBpbGVyX2F0dHJpYnV0ZXMuaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9lbW1pbnRyaW5f
Y29tcGF0LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9y
dHMvbWVtLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9y
dHMvbWVtX29wcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X3BvcnRzL21lbV9vcHNfYWxpZ25lZC5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X3BvcnRzL21pcHMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9wb3J0cy9tc3ZjLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfcG9ydHMvc3RhdGljX2Fzc2VydC5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3N5c3RlbV9zdGF0ZS5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3ZweF9vbmNlLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X3RpbWVyLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJp
Yy9nZW5fc2NhbGVycy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X3NjYWxlL2dlbmVyaWMvdnB4X3NjYWxlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95djEyY29uZmlnLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvZ2VuZXJpYy95djEyZXh0ZW5k
LmMiLAorICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMveDg2
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUvdnB4
X3NjYWxlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2Nh
bGUvdnB4X3NjYWxlX3J0Y2QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9zY2FsZS95djEyY29uZmlnLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfdXRpbC9lbmRpYW5faW5sLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfdXRpbC92cHhfYXRvbWljcy5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RocmVhZC5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RocmVhZC5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X3RpbWVzdGFt
cC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4
X3dyaXRlX3l1dl9mcmFtZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3V0aWwvdnB4X3dyaXRlX3l1dl9mcmFtZS5oIiwKIF0KLWxpYnZweF9zcmNzX21pcHNf
YXNzZW1ibHkgPSBbXQotbGlidnB4X3NyY3NfbmFjbCA9IFsKK2xpYnZweF9zcmNzX25hY2xfYXNz
ZW1ibHkgPSBbXQorbGlidnB4X3NyY3NfZ2VuZXJpYyA9IFsKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hbGxvY2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9hbGxvY2NvbW1vbi5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9ibG9ja2QuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYmxvY2tk
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Nv
ZWZ1cGRhdGVwcm9icy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vZGVmYXVsdF9jb2VmX3Byb2JzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2RlcXVhbnRpemUuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weS5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5LmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHlt
b2RlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L2VudHJvcHltb2RlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2VudHJvcHltdi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bXYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZXh0ZW5kLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2V4dGVuZC5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maWx0ZXIuYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZmlsdGVyLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbmRuZWFybXYuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZmluZG5lYXJt
di5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9n
ZW5lcmljL3N5c3RlbWRlcGVuZGVudC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9oZWFkZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaWRjdF9ibGsuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaWRjdGxsbS5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9pbnZ0cmFucy5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29wZmlsdGVyLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2xvb3BmaWx0
ZXJfZmlsdGVycy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9tYnBpdGNoLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL21mcWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vbW9kZWNvbnQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vbW9kZWNvbnQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vb255eC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9vbnl4Y19pbnQuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vb255eGQuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcG9zdHByb2MuYyIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcG9zdHByb2MuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcHBmbGFn
cy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9x
dWFudF9jb21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vcXVhbnRfY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRlci5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmEuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25p
bnRyYTR4NC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9yZWNvbmludHJhNHg0LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3J0Y2QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vc2V0dXBpbnRyYXJlY29uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3NldHVwaW50cmFyZWNvbi5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zd2FweXYxMmJ1ZmZl
ci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9z
d2FweXYxMmJ1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9zeXN0ZW1kZXBlbmRlbnQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdGhyZWFkaW5nLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3RyZWVjb2Rlci5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90cmVlY29kZXIuaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X2VudHJvcHlt
b2RlZGF0YS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi92cDhfbG9vcGZpbHRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2NvbW1vbi92cDhfc2tpbl9kZXRlY3Rpb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdnA4X3NraW5fZGV0ZWN0aW9uLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kYm9vbGh1
ZmYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVy
L2Rib29saHVmZi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2RlY29kZXIvZGVjb2RlZnJhbWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kZWNvZGVtdi5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlcnRocmVhZGluZy5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGV0b2tlbml6
ZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIv
ZGV0b2tlbml6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2RlY29kZXIvb255eGRfaWYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9kZWNvZGVyL29ueXhkX2ludC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvdGhyZWFkaW5nLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci90cmVlcmVhZGVyLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0uYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2JpdHN0cmVh
bS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
YmxvY2suaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNv
ZGVyL2Jvb2xodWZmLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9ib29saHVmZi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvY29weV9jLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2RjdF92YWx1ZV9jb3N0LmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kY3RfdmFsdWVfdG9rZW5zLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9kZWZh
dWx0Y29lZmNvdW50cy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvZGVub2lzaW5nLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9kZW5vaXNpbmcuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWZyYW1lLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVmcmFtZS5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlaW50
cmEuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L2VuY29kZWludHJhLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9lbmNvZGVtYi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbWIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtdi5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZXRocmVhZGluZy5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZXRocmVhZGlu
Zy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
Zmlyc3RwYXNzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9sb29rYWhlYWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL2xvb2thaGVhZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWNvbXAuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21jb21wLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tb2RlY29zdHMuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21vZGVjb3N0cy5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbXJfZGlzc2lt
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9t
cl9kaXNzaW0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL29ueXhfaWYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL29ueXhfaW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9waWNraW50ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tpbnRlci5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xwZi5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcGlja2xwZi5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcXVhbnRpemUu
aCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Jh
dGVjdHJsLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5j
b2Rlci9yYXRlY3RybC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvcmRvcHQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9lbmNvZGVyL3Jkb3B0LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9zZWdtZW50YXRpb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3NlZ21lbnRhdGlvbi5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdG9rZW5pemUuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Rva2VuaXpl
LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci90
cmVld3JpdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci90cmVld3JpdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvZW5jb2Rlci92cDhfcXVhbnRpemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC92cDhfY3hfaWZhY2UuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC92cDhfZHhfaWZhY2UuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2FsbG9jY29tbW9uLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9hbGxvY2Nv
bW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfYmxvY2tkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9ibG9ja2QuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfY29tbW9uX2RhdGEuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbl9kYXRhLmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9l
bnRyb3B5LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9lbnRyb3B5LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9weW1vZGUuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltdi5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50
cm9weW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9lbnVtcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfZmlsdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9maWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZlcnMuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2ZyYW1lX2J1ZmZl
cnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X2lkY3QuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X2lkY3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2xvb3BmaWx0ZXIuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21mcWUuYyIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X21mcWUuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X212Lmgi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9t
dnJlZl9jb21tb24uYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X212cmVmX2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfb255eGNfaW50LmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wb3N0cHJvYy5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcG9zdHByb2Mu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X3BwZmxhZ3MuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X3ByZWRfY29tbW9uLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9wcmVkX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9uLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9xdWFudF9j
b21tb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X3JlY29uaW50ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEuYyIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3JlY29uaW50cmEuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3J0
Y2QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
dnA5X3NjYWxlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9zY2FsZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2Nhbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfc2VnX2NvbW1vbi5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGhy
ZWFkX2NvbW1vbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfdGhyZWFkX2NvbW1vbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfdGlsZV9jb21tb24uYyIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RpbGVfY29tbW9uLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVj
b2RlZnJhbWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9k
ZWNvZGVyL3ZwOV9kZWNvZGVmcmFtZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZW12LmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2RlbXYuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVyLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlf
ZGVjb2Rlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Rl
Y29kZXIvdnA5X2RldG9rZW5pemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZXRva2VuaXplLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZHN1YmV4cC5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RzdWJleHAuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9q
b2JfcXVldWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9k
ZWNvZGVyL3ZwOV9qb2JfcXVldWUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9hcV9jeWNsaWNyZWZyZXNoLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVz
aC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2JpdHN0cmVhbS5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2JpdHN0cmVhbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Jsb2NrLmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfY29udGV4
dF90cmVlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfY29zdC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2Nvc3QuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kY3QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Rlbm9pc2VyLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2Rl
ZnJhbWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9lbmNvZGVmcmFtZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW1iLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbWIuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtdi5jIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2Vu
Y29kZW12LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfZW5jb2Rlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ldGhyZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXRocmVhZC5oIiwKKyAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V4dF9yYXRl
Y3RybC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2V4dGVuZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X2V4dGVuZC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZpcnN0cGFzcy5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZyYW1lX3NjYWxlLmMiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfam9iX3F1
ZXVlLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfbG9va2FoZWFkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfbG9va2FoZWFkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWJncmFwaC5oIiwKICAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21jb21wLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbWNvbXAuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9t
dWx0aV90aHJlYWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9tdWx0aV90aHJlYWQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5jIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X25vaXNlX2VzdGlt
YXRlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfcGFydGl0aW9uX21vZGVscy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2tscGYuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbHBmLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja21vZGUuYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9w
aWNrbW9kZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X3F1YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfcXVhbnRpemUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJsLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmQu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9yZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X3Jkb3B0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfcmRvcHQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZXNpemUuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zZWdtZW50YXRpb24uYyIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9z
ZWdtZW50YXRpb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9za2luX2RldGVjdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NraW5fZGV0ZWN0aW9uLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRfZmVh
dHVyZXMuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNv
ZGVyL3ZwOV9zcGVlZF9mZWF0dXJlcy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N1YmV4cC5oIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRl
eHQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9zdmNfbGF5ZXJjb250ZXh0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfdGVtcG9yYWxfZmlsdGVyLmgiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdG9rZW5pemUuYyIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90b2tl
bml6ZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X3RyZWV3cml0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV90cmVld3JpdGVyLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmMiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2R4X2lmYWNlLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1vbi5jIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24u
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9pbnRlcm5hbC92
cHhfY29kZWNfaW50ZXJuYWwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC9zcmMvdnB4X2NvZGVjLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvc3JjL3ZweF9kZWNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9lbmNvZGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9pbWFnZS5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOGN4LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHgvdnA4ZHguaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweC92cHhfY29kZWMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweC92cHhfZGVjb2Rlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4L3ZweF9lbmNvZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHgvdnB4X2ZyYW1lX2J1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbWFnZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9pbnRlZ2VyLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FkZF9ub2lzZS5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hdmcuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlci5oIiwKICAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXJfYnVmZmVy
LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJl
YWRlcl9idWZmZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYml0d3JpdGVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL2JpdHdyaXRlci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9iaXR3cml0ZXJfYnVmZmVyLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHdyaXRlcl9idWZmZXIuaCIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvZGVibG9jay5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9md2RfdHhmbS5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnRyYXByZWQuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW52X3R4Zm0u
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvaW52X3R4
Zm0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbG9v
cGZpbHRlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9wb3N0cHJvYy5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9wcm9iLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3Byb2IuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvcHNuci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9wc25yLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3F1YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3F1YW50aXplLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3NhZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9za2luX2RldGVjdGlvbi5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC9za2luX2RldGVjdGlvbi5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9zdWJ0cmFjdC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9zdW1fc3F1YXJlcy5jIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC90eGZtX2NvbW1vbi5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92YXJpYW5jZS5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhfY29udm9sdmUu
YyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvdnB4X2Nv
bnZvbHZlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3ZweF9kc3BfY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3ZweF9kc3BfcnRjZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC92cHhfZmlsdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfbWVtL2luY2x1ZGUvdnB4X21lbV9pbnRybmwuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9tZW0vdnB4X21lbS5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS92cHhfbWVtLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvYml0b3BzLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvY29tcGlsZXJf
YXR0cmlidXRlcy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X3BvcnRzL2VtbWludHJpbl9jb21wYXQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9wb3J0cy9tZW0uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9wb3J0cy9tZW1fb3BzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfcG9ydHMvbWVtX29wc19hbGlnbmVkLmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbXN2Yy5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3N0YXRpY19hc3NlcnQuaCIsCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9zeXN0ZW1fc3Rh
dGUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92
cHhfb25jZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3Bv
cnRzL3ZweF90aW1lci5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X3NjYWxlL2dlbmVyaWMvZ2VuX3NjYWxlcnMuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3ZweF9zY2FsZS5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL2dlbmVyaWMveXYxMmNvbmZp
Zy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL2dl
bmVyaWMveXYxMmV4dGVuZC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3NjYWxlL3ZweF9zY2FsZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X3NjYWxlL3ZweF9zY2FsZV9ydGNkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUveXYxMmNvbmZpZy5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvZW5kaWFuX2lubC5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X2F0b21pY3MuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF90aHJl
YWQuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3Zw
eF90aHJlYWQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91
dGlsL3ZweF90aW1lc3RhbXAuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF91dGlsL3ZweF93cml0ZV95dXZfZnJhbWUuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF93cml0ZV95dXZfZnJhbWUuaCIsCiBdCi1s
aWJ2cHhfc3Jjc19uYWNsX2Fzc2VtYmx5ID0gW10KLWxpYnZweF9zcmNzX2dlbmVyaWMgPSBbCi0g
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYWxsb2Njb21t
b24uYyIsCitsaWJ2cHhfc3Jjc19nZW5lcmljX2hlYWRlcnMgPSBbCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYWxsb2Njb21tb24uaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vYmxvY2tkLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2Jsb2NrZC5oIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9jb2VmdXBk
YXRlcHJvYnMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vY29tbW9uLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL2RlZmF1bHRfY29lZl9wcm9icy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9kZXF1YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2VudHJvcHkuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZW50cm9weS5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRyb3B5bW9kZS5j
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9lbnRy
b3B5bW9kZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi9lbnRyb3B5bXYuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vZW50cm9weW12LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2V4dGVuZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9leHRlbmQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZmlsdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbHRlci5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9maW5kbmVhcm12LmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2ZpbmRuZWFybXYuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZ2VuZXJp
Yy9zeXN0ZW1kZXBlbmRlbnQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24vaGVhZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL2lkY3RfYmxrLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvY29tbW9uL2lkY3RsbG0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vaW52dHJhbnMuaCIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbG9vcGZpbHRlci5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9sb29wZmlsdGVyX2Zp
bHRlcnMuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21t
b24vbWJwaXRjaC5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2NvbW1vbi9tZnFlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvY29tbW9uL21vZGVjb250LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL21vZGVjb250LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL212LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL29ueXguaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vb255eGNfaW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL29ueXhkLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmMiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3Bvc3Rwcm9jLmgiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3BwZmxhZ3MuaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcXVhbnRf
Y29tbW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL3F1YW50X2NvbW1vbi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi9yZWNvbmludGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vcmVjb25pbnRyYS5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9yZWNvbmludHJhLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3JlY29uaW50cmE0
eDQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
cmVjb25pbnRyYTR4NC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9ydGNkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3NldHVwaW50cmFyZWNvbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9zZXR1cGludHJhcmVjb24uaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3dhcHl2MTJidWZmZXIuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vc3dhcHl2
MTJidWZmZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24vc3lzdGVtZGVwZW5kZW50LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3RocmVhZGluZy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi90cmVlY29kZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vdHJlZWNvZGVyLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9lbnRyb3B5bW9kZWRh
dGEuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
dnA4X2xvb3BmaWx0ZXIuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24vdnA4X3NraW5fZGV0ZWN0aW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3ZwOF9za2luX2RldGVjdGlvbi5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvZGJvb2xodWZmLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZGVjb2Rlci9kYm9v
bGh1ZmYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNv
ZGVyL2RlY29kZWZyYW1lLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZGVjb2Rlci9kZWNvZGVtdi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2RlY29kZXIvZGVjb2RlbXYuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RlY29kZXJ0aHJlYWRpbmcuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RldG9rZW5pemUuYyIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNvZGVyL2RldG9r
ZW5pemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9kZWNv
ZGVyL29ueXhkX2lmLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZGVjb2Rlci9vbnl4ZF9pbnQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9kZWNvZGVyL3RocmVhZGluZy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2RlY29kZXIvdHJlZXJlYWRlci5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvYml0c3RyZWFtLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0uaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2Jsb2Nr
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9i
b29saHVmZi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvYm9vbGh1ZmYuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL2NvcHlfYy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvZGN0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9kY3RfdmFsdWVfY29zdC5oIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGN0X3ZhbHVlX3Rva2Vucy5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZGVmYXVsdGNv
ZWZjb3VudHMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL2Rlbm9pc2luZy5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvZGVub2lzaW5nLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVmcmFtZS5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlZnJhbWUuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWludHJhLmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNv
ZGVpbnRyYS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvZW5jb2RlbWIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL2VuY29kZW1iLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVtdi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2RlbXYuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2V0aHJlYWRpbmcuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2V0aHJlYWRpbmcuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2ZpcnN0
cGFzcy5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvbG9va2FoZWFkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9sb29rYWhlYWQuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL21jb21wLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tY29tcC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbW9kZWNvc3RzLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9tb2RlY29zdHMuaCIsCi0gICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21yX2Rpc3NpbS5jIiwK
ICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbXJfZGlz
c2ltLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci9vbnl4X2lmLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9vbnl4X2ludC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvcGlja2ludGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvZW5jb2Rlci9waWNraW50ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tscGYuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3BpY2tscGYuaCIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3F1YW50aXplLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yYXRlY3Ry
bC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIv
cmF0ZWN0cmwuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9l
bmNvZGVyL3Jkb3B0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDgvZW5jb2Rlci9yZG9wdC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2VuY29kZXIvc2VnbWVudGF0aW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9zZWdtZW50YXRpb24uaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3Rva2VuaXplLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci90b2tlbml6ZS5oIiwK
LSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdy
aXRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvdHJlZXdyaXRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIvdnA4X3F1YW50aXplLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvdnA4X2N4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvdnA4X2R4X2lmYWNlLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9hbGxvY2NvbW1vbi5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfYWxsb2Njb21tb24u
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5
X2Jsb2NrZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Nv
bW1vbi92cDlfYmxvY2tkLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvY29tbW9uL3ZwOV9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2NvbW1vbl9kYXRhLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9jb21tb25fZGF0YS5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfZW50cm9w
eS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfZW50cm9weS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2NvbW1vbi92cDlfZW50cm9weW1vZGUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHltb2RlLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9lbnRyb3B5bXYuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2VudHJvcHlt
di5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92
cDlfZW51bXMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9j
b21tb24vdnA5X2ZpbHRlci5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfZmlsdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9mcmFtZV9idWZmZXJzLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9mcmFtZV9idWZmZXJzLmgi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9p
ZGN0LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9pZGN0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
Y29tbW9uL3ZwOV9sb29wZmlsdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvY29tbW9uL3ZwOV9sb29wZmlsdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tZnFlLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tZnFlLmgiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9tdi5oIiwKLSAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfbXZyZWZf
Y29tbW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29t
bW9uL3ZwOV9tdnJlZl9jb21tb24uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X29ueXhjX2ludC5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcG9zdHByb2MuYyIsCiAgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3Bvc3Rwcm9jLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9wcGZs
YWdzLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9u
L3ZwOV9wcmVkX2NvbW1vbi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfcHJlZF9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3F1YW50X2NvbW1vbi5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfcXVhbnRfY29tbW9u
LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9yZWNvbmludGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvY29tbW9uL3ZwOV9yZWNvbmludGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludHJhLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9yZWNvbmludHJhLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9ydGNkLmMi
LAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9z
Y2FsZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1v
bi92cDlfc2NhbGUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9jb21tb24vdnA5X3NjYW4uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9jb21tb24vdnA5X3NjYW4uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NlZ19jb21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3NlZ19jb21tb24uaCIsCi0gICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X3RocmVhZF9j
b21tb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21t
b24vdnA5X3RocmVhZF9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9jb21tb24vdnA5X3RpbGVfY29tbW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV90aWxlX2NvbW1vbi5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZWZy
YW1lLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rl
ci92cDlfZGVjb2RlZnJhbWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9kZWNvZGVyL3ZwOV9kZWNvZGVtdi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29kZW12LmgiLAotICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rlci5jIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RlY29k
ZXIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVy
L3ZwOV9kZXRva2VuaXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZGVjb2Rlci92cDlfZGV0b2tlbml6ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2RlY29kZXIvdnA5X2RzdWJleHAuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9kc3ViZXhwLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfam9iX3F1
ZXVlLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rl
ci92cDlfam9iX3F1ZXVlLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfYXFfY3ljbGljcmVmcmVzaC5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2FxX2N5Y2xpY3JlZnJlc2guaCIs
Ci0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9i
aXRzdHJlYW0uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9iaXRzdHJlYW0uaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ibG9jay5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2NvbnRleHRfdHJlZS5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2NvbnRleHRfdHJl
ZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2Nvc3QuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9jb3N0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZGN0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfZGVub2lzZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9kZW5vaXNlci5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZWZyYW1l
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfZW5jb2RlZnJhbWUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVtYi5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZW1iLmgiLAotICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2RlbXYuYyIsCiAgICIv
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVt
di5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2VuY29kZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OS9lbmNvZGVyL3ZwOV9lbmNvZGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXRocmVhZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2V0aHJlYWQuaCIsCi0gICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRlbmQuYyIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRf
cmF0ZWN0cmwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9leHRlbmQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9maXJzdHBhc3MuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9mcmFtZV9zY2FsZS5jIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2pvYl9xdWV1ZS5o
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X2xvb2thaGVhZC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X2xvb2thaGVhZC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21iZ3JhcGguaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9tY29tcC5jIiwKICAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X21jb21wLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfbXVsdGlf
dGhyZWFkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfbXVsdGlfdGhyZWFkLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfbm9pc2VfZXN0aW1hdGUuYyIsCiAgICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5o
IiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X3BhcnRpdGlvbl9tb2RlbHMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbHBmLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja2xwZi5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2ttb2RlLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcGlja21v
ZGUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9xdWFudGl6ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2VuY29kZXIvdnA5X3F1YW50aXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmF0ZWN0cmwuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JkLmMiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmQu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9yZG9wdC5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2Vu
Y29kZXIvdnA5X3Jkb3B0LmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfcmVzaXplLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmVzaXplLmgiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc2VnbWVudGF0aW9uLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc2VnbWVu
dGF0aW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfc2tpbl9kZXRlY3Rpb24uYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9za2luX2RldGVjdGlvbi5oIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVz
LmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92
cDlfc3BlZWRfZmVhdHVyZXMuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdWJleHAuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdWJleHAuaCIsCi0gICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdmNfbGF5ZXJjb250ZXh0LmMi
LAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlf
c3ZjX2xheWVyY29udGV4dC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X3RlbXBvcmFsX2ZpbHRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Rva2VuaXplLmMiLAogICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdG9rZW5pemUu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV90cmVld3JpdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cDkvZW5jb2Rlci92cDlfdHJlZXdyaXRlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9pZmFjZS5jIiwKICAgIi8vdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9keF9pZmFjZS5oIiwKLSAgIi8vdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfaWZhY2VfY29tbW9uLmgiLAog
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvaW50ZXJuYWwvdnB4X2Nv
ZGVjX2ludGVybmFsLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHgvc3JjL3ZweF9jb2RlYy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4L3NyYy92cHhfZGVjb2Rlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4L3NyYy92cHhfZW5jb2Rlci5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfaW1hZ2UuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweC92cDguaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweC92cDhjeC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4L3ZwOGR4LmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHgvdnB4X2NvZGVjLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHgvdnB4X2RlY29kZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweC92cHhfZW5jb2Rlci5oIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4L3ZweF9leHRfcmF0ZWN0cmwuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZnJhbWVfYnVmZmVyLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2ltYWdlLmgiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2ludGVnZXIuaCIsCi0gICIvL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYWRkX25vaXNlLmMiLAotICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2F2Zy5jIiwKLSAgIi8vdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9iaXRyZWFkZXIuYyIsCiAgICIvL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0cmVhZGVyLmgiLAotICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2JpdHJlYWRlcl9idWZm
ZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0
cmVhZGVyX2J1ZmZlci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnB4X2RzcC9iaXR3cml0ZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvYml0d3JpdGVyLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL2JpdHdyaXRlcl9idWZmZXIuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvYml0d3JpdGVyX2J1ZmZlci5oIiwKLSAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9kZWJsb2NrLmMiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Z3ZF90eGZtLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Z3ZF90eGZtLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2ludHJhcHJlZC5j
IiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZfdHhm
bS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9pbnZf
dHhmbS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9s
b29wZmlsdGVyLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3Bvc3Rwcm9jLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3Byb2IuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvcHJvYi5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC9wc25yLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3BzbnIuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvcXVhbnRpemUuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvcXVhbnRpemUuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3Avc2FkLmMiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3NraW5fZGV0ZWN0aW9uLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHhfZHNwL3NraW5fZGV0ZWN0aW9uLmgiLAotICAiLy90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3N1YnRyYWN0LmMiLAotICAiLy90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3N1bV9zcXVhcmVzLmMiLAogICAiLy90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3R4Zm1fY29tbW9uLmgiLAotICAiLy90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZhcmlhbmNlLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZhcmlhbmNlLmgiLAot
ICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3ZweF9jb252b2x2
ZS5jIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC92cHhf
Y29udm9sdmUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AvdnB4X2RzcF9jb21tb24uaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweF9kc3AvdnB4X2RzcF9ydGNkLmMiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3ZweF9maWx0ZXIuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9tZW0vaW5jbHVkZS92cHhfbWVtX2ludHJubC5oIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X21lbS92cHhfbWVtLmMiLAogICAi
Ly90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfbWVtL3ZweF9tZW0uaCIsCisg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hcm0uaCIsCiAg
ICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9iaXRvcHMuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9jb21waWxl
cl9hdHRyaWJ1dGVzLmgiLAogICAiLy90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfcG9ydHMvZW1taW50cmluX2NvbXBhdC5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3BvcnRzL21lbS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3BvcnRzL21lbV9vcHMuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9tZW1fb3BzX2FsaWduZWQuaCIsCisgICIvL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9taXBzLmgiLAogICAiLy90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvbXN2Yy5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3N0YXRpY19hc3NlcnQuaCIs
CiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9zeXN0ZW1f
c3RhdGUuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0
cy92cHhfb25jZS5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X3BvcnRzL3ZweF90aW1lci5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3NjYWxlL2dlbmVyaWMvZ2VuX3NjYWxlcnMuYyIsCi0gICIvL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9zY2FsZS9nZW5lcmljL3ZweF9zY2FsZS5jIiwKLSAgIi8v
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxlL2dlbmVyaWMveXYxMmNv
bmZpZy5jIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3NjYWxl
L2dlbmVyaWMveXYxMmV4dGVuZC5jIiwKKyAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X3BvcnRzL3g4Ni5oIiwKICAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X3NjYWxlL3ZweF9zY2FsZS5oIiwKLSAgIi8vdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3NjYWxlL3ZweF9zY2FsZV9ydGNkLmMiLAogICAiLy90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfc2NhbGUveXYxMmNvbmZpZy5oIiwKICAgIi8vdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvZW5kaWFuX2lubC5oIiwKICAg
Ii8vdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3V0aWwvdnB4X2F0b21pY3Mu
aCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF90
aHJlYWQuYyIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGls
L3ZweF90aHJlYWQuaCIsCiAgICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF91dGlsL3ZweF90aW1lc3RhbXAuaCIsCi0gICIvL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF91dGlsL3ZweF93cml0ZV95dXZfZnJhbWUuYyIsCiAgICIvL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF91dGlsL3ZweF93cml0ZV95dXZfZnJhbWUuaCIsCiBd
CiBsaWJ2cHhfc3Jjc19nZW5lcmljX2Fzc2VtYmx5ID0gW10KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3J1bl9wZXJsLnB5
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
cnVuX3BlcmwucHkKaW5kZXggYTgxODI4ZWIyYmQ5MGQ5OGFiYmE5NGZkZjUzMTFlMDg0MmRjZDU0
My4uYTIxM2IxMjBlYzE5YjY4NmY1MGY0MjMzZTFkYzE4YmFhMWM3N2RjZSAxMDA3NTUKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvcnVu
X3BlcmwucHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvcnVuX3BlcmwucHkKQEAgLTEsNCArMSw0IEBACi0jIS91c3IvYmluL3B5dGhv
bgorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uCiAjCiAjIENvcHlyaWdodCAyMDE0IFRoZSBDaHJvbWl1
bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogIyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29k
ZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvY29uZmlnL3ZweF92ZXJzaW9uLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvY29uZmlnL3ZweF92ZXJzaW9uLmgK
aW5kZXggY2M2YTgzYzlhNDRlNTExYzlkMTkxMGRiOWYyOWRhZGM3N2ViODY1NC4uZDJiZGE1YWZj
OWE5NGQ1ZjNkZGVmZjMwNTdlYWM0NGUwMjkxYzE1OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2NvbmZpZy92
cHhfdmVyc2lvbi5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9jb25maWcvdnB4X3ZlcnNpb24uaApAQCAtMSw5ICsxLDkg
QEAKIC8vIFRoaXMgZmlsZSBpcyBnZW5lcmF0ZWQuIERvIG5vdCBlZGl0LgogI2RlZmluZSBWRVJT
SU9OX01BSk9SIDEKLSNkZWZpbmUgVkVSU0lPTl9NSU5PUiA4Ci0jZGVmaW5lIFZFUlNJT05fUEFU
Q0ggMgotI2RlZmluZSBWRVJTSU9OX0VYVFJBICIxMDAtZzU1MzI3NzVlZiIKKyNkZWZpbmUgVkVS
U0lPTl9NSU5PUiA5CisjZGVmaW5lIFZFUlNJT05fUEFUQ0ggMAorI2RlZmluZSBWRVJTSU9OX0VY
VFJBICIxNDctZzYxZWRlYzFlZiIKICNkZWZpbmUgVkVSU0lPTl9QQUNLRUQgXAogICAoKFZFUlNJ
T05fTUFKT1IgPDwgMTYpIHwgKFZFUlNJT05fTUlOT1IgPDwgOCkgfCAoVkVSU0lPTl9QQVRDSCkp
Ci0jZGVmaW5lIFZFUlNJT05fU1RSSU5HX05PU1AgInYxLjguMi0xMDAtZzU1MzI3NzVlZiIKLSNk
ZWZpbmUgVkVSU0lPTl9TVFJJTkcgIiB2MS44LjItMTAwLWc1NTMyNzc1ZWYiCisjZGVmaW5lIFZF
UlNJT05fU1RSSU5HX05PU1AgInYxLjkuMC0xNDctZzYxZWRlYzFlZiIKKyNkZWZpbmUgVkVSU0lP
Tl9TVFJJTkcgIiB2MS45LjAtMTQ3LWc2MWVkZWMxZWYiCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L0FVVEhPUlMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L0FVVEhPUlMKaW5kZXggM2ViMDNlOTIzMzVkNGRjZWVhYzE2
Y2ZhNGQ2NjVkY2QxN2UyNTg5Mi4uMzUyYzkxZmVkYTBlY2VlMmQzYjAxNjA2Njk0YTI0NjgzZTg1
MTZjMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9BVVRIT1JTCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvQVVU
SE9SUwpAQCAtMjUsNiArMjUsNyBAQCBBbmdpZSBDaGlhbmcgPGFuZ2llYmlyZEBnb29nbGUuY29t
PgogQXJvbiBSb3NlbmJlcmcgPGFyb3NlbmJlcmdAbG9naXRlY2guY29tPgogQXR0aWxhIE5hZ3kg
PGF0dGlsYW5hZ3lAZ29vZ2xlLmNvbT4KIEJpcmsgTWFnbnVzc2VuIDxiaXJrLm1hZ251c3NlbkBn
b29nbGVtYWlsLmNvbT4KK0JyaWFuIEZvbGV5IDxicGZvbGV5QGdvb2dsZS5jb20+CiBCcmlvbiBW
aWJiZXIgPGJ2aWJiZXJAd2lraW1lZGlhLm9yZz4KIGNoYW5nanVuLnlhbmcgPGNoYW5nanVuLnlh
bmdAaW50ZWwuY29tPgogQ2hhcmxlcyAnQnVjaycgS3Jhc2ljIDxja3Jhc2ljQGdvb2dsZS5jb20+
CkBAIC0zMyw2ICszNCw3IEBAIENoaSBZbyBUc2FpIDxjaGl5b3RzYWlAZ29vZ2xlLmNvbT4KIGNo
bSA8Y2htQHJvY2stY2hpcHMuY29tPgogQ2hyaXMgQ3VubmluZ2hhbSA8Y2hjdW5uaW5naGFtQGNo
cm9taXVtLm9yZz4KIENocmlzdGlhbiBEdXZpdmllciA8Y2R1dml2aWVyQGdvb2dsZS5jb20+CitD
bGVtZW50IENvdXJiZXQgPGNvdXJiZXRAZ29vZ2xlLmNvbT4KIERhbmllbGUgQ2FzdGFnbmEgPGRj
YXN0YWduYUBjaHJvbWl1bS5vcmc+CiBEYW5pZWwgS2FuZyA8ZGRrYW5nQGdvb2dsZS5jb20+CiBE
YW4gWmh1IDx6eGRhbkBnb29nbGUuY29tPgpAQCAtOTEsNiArOTMsNyBAQCBKb2huIEtvbGVzemFy
IDxqa29sZXN6YXJAZ29vZ2xlLmNvbT4KIEpvaG5ueSBLbG9uYXJpcyA8Z29vZ2xlQGphd2tuZWUu
Y29tPgogSm9obiBTdGFyayA8amhuc3Rya0BnbWFpbC5jb20+CiBKb24gS3Vua2VlIDxqa3Vua2Vl
QG1pY3Jvc29mdC5jb20+CitKb3JnZSBFLiBNb3JlaXJhIDxqZW1vcmVpcmFAZ29vZ2xlLmNvbT4K
IEpvc2h1YSBCbGVlY2hlciBTbnlkZXIgPGpvc2hAdHJlZWxpbmVsYWJzLmNvbT4KIEpvc2h1YSBM
aXR0IDxqb3NodWFsaXR0QGdvb2dsZS5jb20+CiBKdWxpYSBSb2Jzb24gPGp1bGlhbXJvYnNvbkBn
bWFpbC5jb20+CkBAIC0xMjUsNiArMTI4LDcgQEAgTWlya28gQm9uYWRlaSA8bWJvbmFkZWlAZ29v
Z2xlLmNvbT4KIE1vcml5b3NoaSBLb2l6dW1pIDxtb3pvQG1vem8uanA+CiBNb3J0b24gSm9udXNj
aGF0IDx5YWJhd29ja0BnbWFpbC5jb20+CiBOYXRoYW4gRS4gRWdnZSA8bmVnZ2VAbW96aWxsYS5j
b20+CitOZWlsIEJpcmtiZWNrIDxuZWlsLmJpcmtiZWNrQGdtYWlsLmNvbT4KIE5pY28gV2ViZXIg
PHRoYWtpc0BjaHJvbWl1bS5vcmc+CiBOaXZlZGl0aGEgUmF1IDxuaXZlZGl0aGEucmF1QGdtYWls
LmNvbT4KIFBhcmFnIFNhbGFzYWthciA8aW1nLm1pcHMxQGdtYWlsLmNvbT4KQEAgLTE2NSw2ICsx
NjksNyBAQCBTaGltb24gRG9vZGtpbiA8aGVscG1lcHJvMUBnbWFpbC5jb20+CiBTaGl5b3UgWWlu
IDx5aW5zaGl5b3UtaGZAbG9vbmdzb24uY24+CiBTaHViaGFtIFRhbmRsZSA8c2h1YmhhbS50YW5k
bGVAaXR0aWFtLmNvbT4KIFNodW55YW8gTGkgPHNodW55YW9saUBnb29nbGUuY29tPgorU3JlZXJl
bmogQmFsYWNoYW5kcmFuIDxic3JlZXJlbmpAZ21haWwuY29tPgogU3RlZmFuIEhvbG1lciA8aG9s
bWVyQGdvb2dsZS5jb20+CiBTdW1hbiBTdW5rYXJhIDxzdW5rYXJhc0Bnb29nbGUuY29tPgogU3Vw
cmFkZWVwIFQgUiA8c3VwcmFkZWVwLnRyQGl0dGlhbS5jb20+CkBAIC0xODUsNiArMTkwLDcgQEAg
VmlnbmVzaCBWZW5rYXRhc3VicmFtYW5pYW4gPHZpZ25lc2h2QGdvb2dsZS5jb20+CiBWaXRhbHkg
QnVrYSA8dml0YWx5YnVrYUBjaHJvbWl1bS5vcmc+CiBWbGFkIFRzeXJrbGV2aWNoIDx2dHN5cmts
ZXZpY2hAY2hyb21pdW0ub3JnPgogV2FuLVRlaCBDaGFuZyA8d3RjQGdvb2dsZS5jb20+CitXb25r
YXAgSmFuZyA8d29ua2FwQGdvb2dsZS5jb20+CiB4aXdlaSBndSA8Z3V4aXdlaS1oZkBsb29uZ3Nv
bi5jbj4KIFlhb3d1IFh1IDx5YW93dUBnb29nbGUuY29tPgogWWkgTHVvIDxsdW95aUBnb29nbGUu
Y29tPgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9DT05UUklCVVRJTkcubWQgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L0NPTlRSSUJVVElORy5tZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41NzdjOTZhNmI1ZGY3ODMxZjFjZWY0NmQ5YWQ1
MjQ1OWE5MmRhZTlhCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9DT05UUklCVVRJTkcu
bWQKQEAgLTAsMCArMSwzMCBAQAorIyBIb3cgdG8gQ29udHJpYnV0ZQorCitXZSdkIGxvdmUgdG8g
YWNjZXB0IHlvdXIgcGF0Y2hlcyBhbmQgY29udHJpYnV0aW9ucyB0byB0aGlzIHByb2plY3QuIFRo
ZXJlIGFyZQoranVzdCBhIGZldyBzbWFsbCBndWlkZWxpbmVzIHlvdSBuZWVkIHRvIGZvbGxvdy4K
KworIyMgQ29udHJpYnV0b3IgTGljZW5zZSBBZ3JlZW1lbnQKKworQ29udHJpYnV0aW9ucyB0byB0
aGlzIHByb2plY3QgbXVzdCBiZSBhY2NvbXBhbmllZCBieSBhIENvbnRyaWJ1dG9yIExpY2Vuc2UK
K0FncmVlbWVudC4gWW91IChvciB5b3VyIGVtcGxveWVyKSByZXRhaW4gdGhlIGNvcHlyaWdodCB0
byB5b3VyIGNvbnRyaWJ1dGlvbjsKK3RoaXMgc2ltcGx5IGdpdmVzIHVzIHBlcm1pc3Npb24gdG8g
dXNlIGFuZCByZWRpc3RyaWJ1dGUgeW91ciBjb250cmlidXRpb25zIGFzCitwYXJ0IG9mIHRoZSBw
cm9qZWN0LiBIZWFkIG92ZXIgdG8gPGh0dHBzOi8vY2xhLmRldmVsb3BlcnMuZ29vZ2xlLmNvbS8+
IHRvIHNlZQoreW91ciBjdXJyZW50IGFncmVlbWVudHMgb24gZmlsZSBvciB0byBzaWduIGEgbmV3
IG9uZS4KKworWW91IGdlbmVyYWxseSBvbmx5IG5lZWQgdG8gc3VibWl0IGEgQ0xBIG9uY2UsIHNv
IGlmIHlvdSd2ZSBhbHJlYWR5IHN1Ym1pdHRlZCBvbmUKKyhldmVuIGlmIGl0IHdhcyBmb3IgYSBk
aWZmZXJlbnQgcHJvamVjdCksIHlvdSBwcm9iYWJseSBkb24ndCBuZWVkIHRvIGRvIGl0CithZ2Fp
bi4KKworIyMgQ29kZSByZXZpZXdzCisKK0FsbCBzdWJtaXNzaW9ucywgaW5jbHVkaW5nIHN1Ym1p
c3Npb25zIGJ5IHByb2plY3QgbWVtYmVycywgcmVxdWlyZSByZXZpZXcuIFdlCit1c2UgYSBbR2Vy
cml0XShodHRwczovL3d3dy5nZXJyaXRjb2RlcmV2aWV3LmNvbSkgaW5zdGFuY2UgaG9zdGVkIGF0
CitodHRwczovL2Nocm9taXVtLXJldmlldy5nb29nbGVzb3VyY2UuY29tIGZvciB0aGlzIHB1cnBv
c2UuCisKK1NlZSBodHRwczovL3d3dy53ZWJtcHJvamVjdC5vcmcvY29kZS9jb250cmlidXRlL3N1
Ym1pdHRpbmctcGF0Y2hlcyBmb3IgYW4KK2V4YW1wbGUgb2YgYSB0eXBpY2FsIGdlcnJpdCB3b3Jr
Zmxvdy4KKworIyMgQ29tbXVuaXR5IEd1aWRlbGluZXMKKworVGhpcyBwcm9qZWN0IGZvbGxvd3MK
K1tHb29nbGUncyBPcGVuIFNvdXJjZSBDb21tdW5pdHkgR3VpZGVsaW5lc10oaHR0cHM6Ly9vcGVu
c291cmNlLmdvb2dsZS5jb20vY29uZHVjdC8pLgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9SRUFE
TUUgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L1JFQURNRQppbmRleCBmZDMzMzdkYWFkMWZiYzNjMDEyM2M5MDc3ZTU4
MWQ4NzEyMWM1NWYzLi42MmZlZjM0NTkzMmVkNDU4NmU3MTY5ZWY3NjhjMWRkNjJmMDFiMDQzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L1JFQURNRQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L1JFQURNRQpAQCAt
MSw0ICsxLDQgQEAKLVJFQURNRSAtIDkgRGVjZW1iZXIgMjAxOQorUkVBRE1FIC0gMjAgSnVseSAy
MDIwCiAKIFdlbGNvbWUgdG8gdGhlIFdlYk0gVlA4L1ZQOSBDb2RlYyBTREshCiAKQEAgLTYyLDYg
KzYyLDcgQEAgQ09NUElMSU5HIFRIRSBBUFBMSUNBVElPTlMvTElCUkFSSUVTOgogCiAgICAgYXJt
NjQtYW5kcm9pZC1nY2MKICAgICBhcm02NC1kYXJ3aW4tZ2NjCisgICAgYXJtNjQtZGFyd2luMjAt
Z2NjCiAgICAgYXJtNjQtbGludXgtZ2NjCiAgICAgYXJtNjQtd2luNjQtZ2NjCiAgICAgYXJtNjQt
d2luNjQtdnMxNQpAQCAtMTEyLDYgKzExMyw4IEBAIENPTVBJTElORyBUSEUgQVBQTElDQVRJT05T
L0xJQlJBUklFUzoKICAgICB4ODZfNjQtZGFyd2luMTYtZ2NjCiAgICAgeDg2XzY0LWRhcndpbjE3
LWdjYwogICAgIHg4Nl82NC1kYXJ3aW4xOC1nY2MKKyAgICB4ODZfNjQtZGFyd2luMTktZ2NjCisg
ICAgeDg2XzY0LWRhcndpbjIwLWdjYwogICAgIHg4Nl82NC1pcGhvbmVzaW11bGF0b3ItZ2NjCiAg
ICAgeDg2XzY0LWxpbnV4LWdjYwogICAgIHg4Nl82NC1saW51eC1pY2MKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvYnVpbGQvbWFrZS9BbmRyb2lkLm1rIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL0Fu
ZHJvaWQubWsKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNmNiM2FmMDI3YjRlZWY4MjgwYjkxOGVlOTdhMWM5ZjNlNGY0
NGNhMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9BbmRyb2lkLm1r
CkBAIC0wLDAgKzEsMjExIEBACisjIworIyMgIENvcHlyaWdodCAoYykgMjAxMiBUaGUgV2ViTSBw
cm9qZWN0IGF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisjIworIyMgIFVzZSBvZiB0aGlz
IHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UKKyMjICB0aGF0
IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3Vy
Y2UKKyMjICB0cmVlLiBBbiBhZGRpdGlvbmFsIGludGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHMg
Z3JhbnQgY2FuIGJlIGZvdW5kCisjIyAgaW4gdGhlIGZpbGUgUEFURU5UUy4gIEFsbCBjb250cmli
dXRpbmcgcHJvamVjdCBhdXRob3JzIG1heQorIyMgIGJlIGZvdW5kIGluIHRoZSBBVVRIT1JTIGZp
bGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZSB0cmVlLgorIyMKKworIworIyBUaGlzIGZpbGUg
aXMgdG8gYmUgdXNlZCBmb3IgY29tcGlsaW5nIGxpYnZweCBmb3IgQW5kcm9pZCB1c2luZyB0aGUg
TkRLLgorIyBJbiBhbiBBbmRyb2lkIHByb2plY3QgcGxhY2UgYSBsaWJ2cHggY2hlY2tvdXQgaW4g
dGhlIGpuaSBkaXJlY3RvcnkuCisjIFJ1biB0aGUgY29uZmlndXJlIHNjcmlwdCBmcm9tIHRoZSBq
bmkgZGlyZWN0b3J5LiAgQmFzZSBsaWJ2cHgKKyMgZW5jb2Rlci9kZWNvZGVyIGNvbmZpZ3VyYXRp
b24gd2lsbCBsb29rIHNpbWlsYXIgdG86CisjIC4vbGlidnB4L2NvbmZpZ3VyZSAtLXRhcmdldD1h
cm12Ny1hbmRyb2lkLWdjYyAtLWRpc2FibGUtZXhhbXBsZXMgXAorIyAgICAgICAgICAgICAgICAg
ICAgLS1lbmFibGUtZXh0ZXJuYWwtYnVpbGQKKyMKKyMgV2hlbiB0YXJnZXRpbmcgQW5kcm9pZCwg
cmVhbHRpbWUtb25seSBpcyBlbmFibGVkIGJ5IGRlZmF1bHQuICBUaGlzIGNhbgorIyBiZSBvdmVy
cmlkZGVuIGJ5IGFkZGluZyB0aGUgY29tbWFuZCBsaW5lIGZsYWc6CisjICAtLWRpc2FibGUtcmVh
bHRpbWUtb25seQorIworIyBUaGlzIHdpbGwgY3JlYXRlIC5tayBmaWxlcyB0aGF0IGNvbnRhaW4g
dmFyaWFibGVzIHRoYXQgY29udGFpbiB0aGUKKyMgc291cmNlIGZpbGVzIHRvIGNvbXBpbGUuCisj
CisjIFBsYWNlIGFuIEFuZHJvaWQubWsgZmlsZSBpbiB0aGUgam5pIGRpcmVjdG9yeSB0aGF0IHJl
ZmVyZW5jZXMgdGhlCisjIEFuZHJvaWQubWsgZmlsZSBpbiB0aGUgbGlidnB4IGRpcmVjdG9yeToK
KyMgTE9DQUxfUEFUSCA6PSAkKGNhbGwgbXktZGlyKQorIyBpbmNsdWRlICQoQ0xFQVJfVkFSUykK
KyMgaW5jbHVkZSBqbmkvbGlidnB4L2J1aWxkL21ha2UvQW5kcm9pZC5taworIworIyBCeSBkZWZh
dWx0IGxpYnZweCB3aWxsIHVzZSB0aGUgJ2NwdWZlYXR1cmVzJyBtb2R1bGUgZnJvbSB0aGUgTkRL
LiBUaGlzIGFsbG93cworIyB0aGUgbGlicmFyeSB0byBiZSBidWlsdCB3aXRoIGFsbCBhdmFpbGFi
bGUgb3B0aW1pemF0aW9ucyAoU1NFMi0+QVZYNTEyIGZvcgorIyB4ODYsIE5FT04gZm9yIGFybSwg
RFNQcjIgZm9yIG1pcHMpLiBUaGlzIGNhbiBiZSBkaXNhYmxlZCB3aXRoCisjICAgLS1kaXNhYmxl
LXJ1bnRpbWUtY3B1LWRldGVjdAorIyBidXQgdGhlIHJlc3VsdGluZyBsaWJyYXJ5ICptdXN0KiBi
ZSBydW4gb24gZGV2aWNlcyBzdXBwb3J0aW5nIGFsbCBvZiB0aGUKKyMgZW5hYmxlZCBleHRlbnNp
b25zLiBUaGV5IGNhbiBiZSBkaXNhYmxlZCBpbmRpdmlkdWFsbHkgd2l0aAorIyAgIC0tZGlzYWJs
ZS17c3NlMiwgc3NlMywgc3NzZTMsIHNzZTRfMSwgYXZ4LCBhdngyLCBhdng1MTJ9CisjICAgLS1k
aXNhYmxlLW5lb25bLWFzbV0KKyMgICAtLWRpc2FibGUte2RzcHIyLCBtc2F9CisKKyMKKyMgUnVu
bmluZyBuZGstYnVpbGQgd2lsbCBidWlsZCBsaWJ2cHggYW5kIGluY2x1ZGUgaXQgaW4geW91ciBw
cm9qZWN0LgorIworCitDT05GSUdfRElSIDo9ICQoTE9DQUxfUEFUSCkvCitMSUJWUFhfUEFUSCA6
PSAkKExPQ0FMX1BBVEgpL2xpYnZweAorQVNNX0NOVl9QQVRIX0xPQ0FMIDo9ICQoVEFSR0VUX0FS
Q0hfQUJJKS9hZHMyZ2FzCitBU01fQ05WX1BBVEggOj0gJChMT0NBTF9QQVRIKS8kKEFTTV9DTlZf
UEFUSF9MT0NBTCkKK2lmbmVxICgkKFYpLDEpCisgIHFleGVjIDo9IEAKK2VuZGlmCisKKyMgVXNl
IHRoZSBtYWtlZmlsZXMgZ2VuZXJhdGVkIGJ5IHVwc3RyZWFtIGNvbmZpZ3VyZSB0byBkZXRlcm1p
bmUgd2hpY2ggZmlsZXMgdG8KKyMgYnVpbGQuIEFsc28gc2V0IGFueSBhcmNoaXRlY3R1cmUtc3Bl
Y2lmaWMgZmxhZ3MuCitpZmVxICgkKFRBUkdFVF9BUkNIX0FCSSksYXJtZWFiaS12N2EpCisgIGlu
Y2x1ZGUgJChDT05GSUdfRElSKWxpYnMtYXJtdjctYW5kcm9pZC1nY2MubWsKKyAgTE9DQUxfQVJN
X01PREUgOj0gYXJtCitlbHNlIGlmZXEgICgkKFRBUkdFVF9BUkNIX0FCSSksYXJtNjQtdjhhKQor
ICBpbmNsdWRlICQoQ09ORklHX0RJUilsaWJzLWFybTY0LWFuZHJvaWQtZ2NjLm1rCisgIExPQ0FM
X0FSTV9NT0RFIDo9IGFybQorZWxzZSBpZmVxICgkKFRBUkdFVF9BUkNIX0FCSSkseDg2KQorICBp
bmNsdWRlICQoQ09ORklHX0RJUilsaWJzLXg4Ni1hbmRyb2lkLWdjYy5taworZWxzZSBpZmVxICgk
KFRBUkdFVF9BUkNIX0FCSSkseDg2XzY0KQorICBpbmNsdWRlICQoQ09ORklHX0RJUilsaWJzLXg4
Nl82NC1hbmRyb2lkLWdjYy5taworZWxzZSBpZmVxICgkKFRBUkdFVF9BUkNIX0FCSSksbWlwcykK
KyAgaW5jbHVkZSAkKENPTkZJR19ESVIpbGlicy1taXBzLWFuZHJvaWQtZ2NjLm1rCitlbHNlCisg
ICQoZXJyb3IgTm90IGEgc3VwcG9ydGVkIFRBUkdFVF9BUkNIX0FCSTogJChUQVJHRVRfQVJDSF9B
QkkpKQorZW5kaWYKKworIyBSdWxlIHRoYXQgaXMgbm9ybWFsbHkgaW4gTWFrZWZpbGUgY3JlYXRl
ZCBieSBsaWJ2cHgKKyMgY29uZmlndXJlLiAgVXNlZCB0byBmaWx0ZXIgb3V0IHNvdXJjZSBmaWxl
cyBiYXNlZCBvbiBjb25maWd1cmF0aW9uLgorZW5hYmxlZD0kKGZpbHRlci1vdXQgJCgkKDEpLW5v
KSwkKCQoMSkteWVzKSkKKworIyBPdmVycmlkZSB0aGUgcmVsYXRpdmUgcGF0aCB0aGF0IGlzIGRl
ZmluZWQgYnkgdGhlIGxpYnZweAorIyBjb25maWd1cmUgcHJvY2VzcworU1JDX1BBVEhfQkFSRSA6
PSAkKExJQlZQWF9QQVRIKQorCisjIEluY2x1ZGUgdGhlIGxpc3Qgb2YgZmlsZXMgdG8gYmUgYnVp
bHQKK2luY2x1ZGUgJChMSUJWUFhfUEFUSCkvbGlicy5taworCisjIE9wdGltaXNlIHRoZSBjb2Rl
LiBNYXkgd2FudCB0byByZXZpc2l0IHRoaXMgc2V0dGluZyBpbiB0aGUgZnV0dXJlLgorTE9DQUxf
Q0ZMQUdTIDo9IC1PMworCisjIEZvciB4ODYsIGluY2x1ZGUgdGhlIHNvdXJjZSBjb2RlIGluIHRo
ZSBzZWFyY2ggcGF0aCBzbyBpdCB3aWxsIGZpbmQgZmlsZXMKKyMgbGlrZSB4ODZpbmMuYXNtIGFu
ZCB4ODZfYWJpX3N1cHBvcnQuYXNtCitMT0NBTF9BU01GTEFHUyA6PSAtSSQoTElCVlBYX1BBVEgp
CisKKy5QUkVDSU9VUzogJS5hc20uUworJChBU01fQ05WX1BBVEgpL2xpYnZweC8lLmFzbS5TOiAk
KExJQlZQWF9QQVRIKS8lLmFzbQorCSQocWV4ZWMpbWtkaXIgLXAgJChkaXIgJEApCisJJChxZXhl
YykkKENPTkZJR19ESVIpJChBU01fQ09OVkVSU0lPTikgPCQ8ID4gJEAKKworIyBGb3IgYnVpbGRp
bmcgKl9ydGNkLmgsIHdoaWNoIGhhdmUgcnVsZXMgaW4gbGlicy5taworVEdUX0lTQTo9JCh3b3Jk
IDEsICQoc3Vic3QgLSwgLCQoVE9PTENIQUlOKSkpCit0YXJnZXQgOj0gbGlicworCitMT0NBTF9T
UkNfRklMRVMgKz0gdnB4X2NvbmZpZy5jCisKKyMgUmVtb3ZlIGR1cGxpY2F0ZSBlbnRyaWVzCitD
T0RFQ19TUkNTX1VOSVFVRSA9ICQoc29ydCAkKENPREVDX1NSQ1MpKQorCisjIFB1bGwgb3V0IEMg
ZmlsZXMuICB2cHhfY29uZmlnLmMgaXMgaW4gdGhlIGltbWVkaWF0ZSBkaXJlY3RvcnkgYW5kCisj
IHNvIGl0IGRvZXMgbm90IG5lZWQgbGlidnB4LyBwcmVmaXhlZCBsaWtlIHRoZSByZXN0IG9mIHRo
ZSBzb3VyY2UgZmlsZXMuCisjIFRoZSBuZW9uIGZpbGVzIHdpdGggaW50cmluc2ljcyBuZWVkIHRv
IGhhdmUgLm5lb24gYXBwZW5kZWQgc28gdGhlIHByb3BlcgorIyBmbGFncyBhcmUgYXBwbGllZC4K
K0NPREVDX1NSQ1NfQyA9ICQoZmlsdGVyICUuYywgJChDT0RFQ19TUkNTX1VOSVFVRSkpCitMT0NB
TF9ORU9OX1NSQ1NfQyA9ICQoZmlsdGVyICVfbmVvbi5jLCAkKENPREVDX1NSQ1NfQykpCitMT0NB
TF9DT0RFQ19TUkNTX0MgPSAkKGZpbHRlci1vdXQgdnB4X2NvbmZpZy5jICVfbmVvbi5jLCAkKENP
REVDX1NSQ1NfQykpCisKK0xPQ0FMX1NSQ19GSUxFUyArPSAkKGZvcmVhY2ggZmlsZSwgJChMT0NB
TF9DT0RFQ19TUkNTX0MpLCBsaWJ2cHgvJChmaWxlKSkKK2lmZXEgKCQoVEFSR0VUX0FSQ0hfQUJJ
KSxhcm1lYWJpLXY3YSkKKyAgTE9DQUxfU1JDX0ZJTEVTICs9ICQoZm9yZWFjaCBmaWxlLCAkKExP
Q0FMX05FT05fU1JDU19DKSwgbGlidnB4LyQoZmlsZSkubmVvbikKK2Vsc2UgIyBJZiB0aGVyZSBh
cmUgbmVvbiBzb3VyY2VzIHRoZW4gd2UgYXJlIGJ1aWxkaW5nIGZvciBhcm02NCBhbmQgZG8gbm90
IG5lZWQgdG8gc3BlY2lmeSAubmVvbgorICBMT0NBTF9TUkNfRklMRVMgKz0gJChmb3JlYWNoIGZp
bGUsICQoTE9DQUxfTkVPTl9TUkNTX0MpLCBsaWJ2cHgvJChmaWxlKSkKK2VuZGlmCisKKyMgUHVs
bCBvdXQgYXNzZW1ibHkgZmlsZXMsIHNwbGl0dGluZyBORU9OIGZyb20gdGhlIHJlc3QuICBUaGlz
IGlzCisjIGRvbmUgdG8gc3BlY2lmeSB0aGF0IHRoZSBORU9OIGFzc2VtYmx5IGZpbGVzIHVzZSBO
RU9OIGFzc2VtYmxlciBmbGFncy4KKyMgeDg2IGFzc2VtYmx5IG1hdGNoZXMgJS5hc20sIGFybSBt
YXRjaGVzICUuYXNtLlMKKworIyB4ODY6CisKK0NPREVDX1NSQ1NfQVNNX1g4NiA9ICQoZmlsdGVy
ICUuYXNtLCAkKENPREVDX1NSQ1NfVU5JUVVFKSkKK0xPQ0FMX1NSQ19GSUxFUyArPSAkKGZvcmVh
Y2ggZmlsZSwgJChDT0RFQ19TUkNTX0FTTV9YODYpLCBsaWJ2cHgvJChmaWxlKSkKKworIyBhcm06
CitDT0RFQ19TUkNTX0FTTV9BUk1fQUxMID0gJChmaWx0ZXIgJS5hc20uUywgJChDT0RFQ19TUkNT
X1VOSVFVRSkpCitDT0RFQ19TUkNTX0FTTV9BUk0gPSAkKGZvcmVhY2ggdiwgXAorICAgICAgICAg
ICAgICAgICAgICAgJChDT0RFQ19TUkNTX0FTTV9BUk1fQUxMKSwgXAorICAgICAgICAgICAgICAg
ICAgICAgJChpZiAkKGZpbmRzdHJpbmcgbmVvbiwkKHYpKSwsJCh2KSkpCitDT0RFQ19TUkNTX0FT
TV9BRFMyR0FTID0gJChwYXRzdWJzdCAlLlMsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAk
KEFTTV9DTlZfUEFUSF9MT0NBTCkvbGlidnB4LyUuUywgXAorICAgICAgICAgICAgICAgICAgICAg
ICAgICQoQ09ERUNfU1JDU19BU01fQVJNKSkKK0xPQ0FMX1NSQ19GSUxFUyArPSAkKENPREVDX1NS
Q1NfQVNNX0FEUzJHQVMpCisKK2lmZXEgKCQoVEFSR0VUX0FSQ0hfQUJJKSxhcm1lYWJpLXY3YSkK
KyAgQVNNX0lOQ0xVREVTIDo9IHZweF9kc3AvYXJtL2lkY3RfbmVvbi5hc20uUworICBDT0RFQ19T
UkNTX0FTTV9ORU9OID0gJChmb3JlYWNoIHYsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICQo
Q09ERUNfU1JDU19BU01fQVJNX0FMTCksXAorICAgICAgICAgICAgICAgICAgICAgICAgJChpZiAk
KGZpbmRzdHJpbmcgbmVvbiwkKHYpKSwkKHYpLCkpCisgIENPREVDX1NSQ1NfQVNNX05FT04gOj0g
JChmaWx0ZXItb3V0ICQoYWRkcHJlZml4ICUsICQoQVNNX0lOQ0xVREVTKSksIFwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAkKENPREVDX1NSQ1NfQVNNX05FT04pKQorICBDT0RFQ19TUkNTX0FT
TV9ORU9OX0FEUzJHQVMgPSAkKHBhdHN1YnN0ICUuUywgXAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAkKEFTTV9DTlZfUEFUSF9MT0NBTCkvbGlidnB4LyUuUywgXAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAkKENPREVDX1NSQ1NfQVNNX05FT04pKQorICBMT0NBTF9T
UkNfRklMRVMgKz0gJChwYXRzdWJzdCAlLlMsIFwKKyAgICAgICAgICAgICAgICAgICAgICUuUy5u
ZW9uLCBcCisgICAgICAgICAgICAgICAgICAgICAkKENPREVDX1NSQ1NfQVNNX05FT05fQURTMkdB
UykpCisKKyAgTkVPTl9BU01fVEFSR0VUUyA9ICQocGF0c3Vic3QgJS5TLCBcCisgICAgICAgICAg
ICAgICAgICAgICAkKEFTTV9DTlZfUEFUSCkvbGlidnB4LyUuUywgXAorICAgICAgICAgICAgICAg
ICAgICAgJChDT0RFQ19TUkNTX0FTTV9ORU9OKSkKKyMgYWRkIGEgZGVwZW5kZW5jeSB0byB0aGUg
ZnVsbCBwYXRoIHRvIHRoZSBhZHMyZ2FzIG91dHB1dCB0byBlbnN1cmUgdGhlCisjIGluY2x1ZGVz
IGFyZSBjb252ZXJ0ZWQgZmlyc3QuCitpZm5lcSAoJChzdHJpcCAkKE5FT05fQVNNX1RBUkdFVFMp
KSwpCiskKE5FT05fQVNNX1RBUkdFVFMpOiAkKGFkZHByZWZpeCAkKEFTTV9DTlZfUEFUSCkvbGli
dnB4LywgJChBU01fSU5DTFVERVMpKQorZW5kaWYKK2VuZGlmCisKK0xPQ0FMX0NGTEFHUyArPSBc
CisgICAgLURIQVZFX0NPTkZJR19IPXZweF9jb25maWcuaCBcCisgICAgLUkkKExJQlZQWF9QQVRI
KSBcCisgICAgLUkkKEFTTV9DTlZfUEFUSCkgXAorICAgIC1JJChBU01fQ05WX1BBVEgpL2xpYnZw
eAorCitMT0NBTF9NT0RVTEUgOj0gbGlidnB4CisKK2lmZXEgKCQoQ09ORklHX1JVTlRJTUVfQ1BV
X0RFVEVDVCkseWVzKQorICBMT0NBTF9TVEFUSUNfTElCUkFSSUVTIDo9IGNwdWZlYXR1cmVzCitl
bmRpZgorCisjIEFkZCBhIGRlcGVuZGVuY3kgdG8gZm9yY2UgZ2VuZXJhdGlvbiBvZiB0aGUgUlRD
RCBmaWxlcy4KK2RlZmluZSBydGNkX2RlcF90ZW1wbGF0ZQorcnRjZF9kZXBfdGVtcGxhdGVfU1JD
UyA6PSAkKGFkZHByZWZpeCAkKExPQ0FMX1BBVEgpLywgJChMT0NBTF9TUkNfRklMRVMpKQorcnRj
ZF9kZXBfdGVtcGxhdGVfU1JDUyA6PSAkJChydGNkX2RlcF90ZW1wbGF0ZV9TUkNTOi5uZW9uPSkK
K2lmZXEgKCQoQ09ORklHX1ZQOCksIHllcykKKyQkKHJ0Y2RfZGVwX3RlbXBsYXRlX1NSQ1MpOiB2
cDhfcnRjZC5oCitlbmRpZgoraWZlcSAoJChDT05GSUdfVlA5KSwgeWVzKQorJCQocnRjZF9kZXBf
dGVtcGxhdGVfU1JDUyk6IHZwOV9ydGNkLmgKK2VuZGlmCiskJChydGNkX2RlcF90ZW1wbGF0ZV9T
UkNTKTogdnB4X3NjYWxlX3J0Y2QuaAorJCQocnRjZF9kZXBfdGVtcGxhdGVfU1JDUyk6IHZweF9k
c3BfcnRjZC5oCisKK3J0Y2RfZGVwX3RlbXBsYXRlX0NPTkZJR19BU01fQUJJUyA6PSB4ODYgeDg2
XzY0IGFybWVhYmktdjdhCitpZm5lcSAoJCQoZmluZHN0cmluZyAkKFRBUkdFVF9BUkNIX0FCSSks
JCQocnRjZF9kZXBfdGVtcGxhdGVfQ09ORklHX0FTTV9BQklTKSksKQorJCQocnRjZF9kZXBfdGVt
cGxhdGVfU1JDUyk6IHZweF9jb25maWcuYXNtCitlbmRpZgorZW5kZWYKKworJChldmFsICQoY2Fs
bCBydGNkX2RlcF90ZW1wbGF0ZSkpCisKKy5QSE9OWTogY2xlYW4KK2NsZWFuOgorCUBlY2hvICJD
bGVhbjogYWRzMmdhcyBmaWxlcyBbJChUQVJHRVRfQVJDSF9BQkkpXSIKKwkkKHFleGVjKSQoUk0p
ICQoQ09ERUNfU1JDU19BU01fQURTMkdBUykgJChDT0RFQ19TUkNTX0FTTV9ORU9OX0FEUzJHQVMp
CisJJChxZXhlYykkKFJNKSAtciAkKEFTTV9DTlZfUEFUSCkKKwkkKHFleGVjKSQoUk0pICQoQ0xF
QU4tT0JKUykKKworaWZlcSAoJChFTkFCTEVfU0hBUkVEKSwxKQorICBMT0NBTF9DRkxBR1MgKz0g
LWZQSUMKKyAgaW5jbHVkZSAkKEJVSUxEX1NIQVJFRF9MSUJSQVJZKQorZWxzZQorICBpbmNsdWRl
ICQoQlVJTERfU1RBVElDX0xJQlJBUlkpCitlbmRpZgorCitpZmVxICgkKENPTkZJR19SVU5USU1F
X0NQVV9ERVRFQ1QpLHllcykKKyQoY2FsbCBpbXBvcnQtbW9kdWxlLGFuZHJvaWQvY3B1ZmVhdHVy
ZXMpCitlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL01ha2VmaWxlIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC9idWlsZC9tYWtlL01ha2VmaWxlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjljYTk3YzhjNjQwNjI3
OTU1Njk0M2RmMmNlMjk3ZDEyYTdlYjA1ZjIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L2J1aWxkL21ha2UvTWFrZWZpbGUKQEAgLTAsMCArMSw0NjQgQEAKKyMjCisjIyAgQ29weXJpZ2h0
IChjKSAyMDEwIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4K
KyMjCisjIyAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5
bGUgbGljZW5zZQorIyMgIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4g
dGhlIHJvb3Qgb2YgdGhlIHNvdXJjZQorIyMgIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0
dWFsIHByb3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyMjICBpbiB0aGUgZmlsZSBQ
QVRFTlRTLiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisjIyAgYmUgZm91
bmQgaW4gdGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisj
IworCisKK2luY2x1ZGUgY29uZmlnLm1rCitxdWlldD89dHJ1ZQoraWZlcSAoJCh0YXJnZXQpLCkK
KyMgSWYgYSB0YXJnZXQgd2Fzbid0IHNwZWNpZmllZCwgaW52b2tlIGZvciBhbGwgZW5hYmxlZCB0
YXJnZXRzLgorLkRFRkFVTFQ6CisJQGZvciB0IGluICQoQUxMX1RBUkdFVFMpOyBkbyBcCisJICAg
ICAkKE1BS0UpIC0tbm8tcHJpbnQtZGlyZWN0b3J5IHRhcmdldD0kJHQgJChNQUtFQ01ER09BTFMp
IHx8IGV4aXQgJCQ/O1wKKyAgICAgICAgZG9uZQorYWxsOiAuREVGQVVMVAorY2xlYW46OiAuREVG
QVVMVAorZXhhbXBsZXRlc3Q6IC5ERUZBVUxUCitpbnN0YWxsOjogLkRFRkFVTFQKK3Rlc3Q6OiAu
REVGQVVMVAordGVzdC1uby1kYXRhLWNoZWNrOjogLkRFRkFVTFQKK3Rlc3RkYXRhOjogLkRFRkFV
TFQKK3V0aWx0ZXN0OiAuREVGQVVMVAorZXhhbXBsZXRlc3Qtbm8tZGF0YS1jaGVjayB1dGlsdGVz
dC1uby1kYXRhLWNoZWNrOiAuREVGQVVMVAordGVzdF8lOiAuREVGQVVMVCA7CisKKyMgTm90ZTog
bWQ1c3VtIGlzIG5vdCBpbnN0YWxsZWQgb24gT1MgWCwgYnV0IG9wZW5zc2wgaXMuIE9wZW5zc2wg
bWF5IG5vdCBiZQorIyBpbnN0YWxsZWQgb24gY3lnd2luLCBzbyB3ZSBuZWVkIHRvIGF1dG9kZXRl
Y3QgaGVyZS4KK21kNXN1bSA6PSAkKGZpcnN0d29yZCAkKHdpbGRjYXJkIFwKKyAgICAgICAgICAk
KGZvcmVhY2ggZSxtZDVzdW0gb3BlbnNzbCxcCisgICAgICAgICAgJChmb3JlYWNoIHAsJChzdWJz
dCA6LCAsJChQQVRIKSksJChwKS8kKGUpKikpXAorICAgICAgICAgICkpCittZDVzdW0gOj0gJChp
ZiAkKGZpbHRlciAlb3BlbnNzbCwkKG1kNXN1bSkpLCQobWQ1c3VtKSBkZ3N0IC1tZDUsJChtZDVz
dW0pKQorCitUR1RfQ0M6PSQod29yZCAzLCAkKHN1YnN0IC0sICwkKFRPT0xDSEFJTikpKQorZGlz
dDoKKwlAZm9yIHQgaW4gJChBTExfVEFSR0VUUyk7IGRvIFwKKwkgICAgICQoTUFLRSkgLS1uby1w
cmludC1kaXJlY3RvcnkgdGFyZ2V0PSQkdCAkKE1BS0VDTURHT0FMUykgfHwgZXhpdCAkJD87XAor
ICAgICAgICBkb25lCisgICAgICAgICMgUnVuIGNvbmZpZ3VyZSBmb3IgdGhlIHVzZXIgd2l0aCB0
aGUgY3VycmVudCB0b29sY2hhaW4uCisJQGlmIFsgLWQgIiQoRElTVF9ESVIpL3NyYyIgXTsgdGhl
biBcCisgICAgICAgICAgICBta2RpciAtcCAiJChESVNUX0RJUikvYnVpbGQiOyBcCisgICAgICAg
ICAgICBjZCAiJChESVNUX0RJUikvYnVpbGQiOyBcCisgICAgICAgICAgICBlY2hvICJSZXJ1bm5p
bmcgY29uZmlndXJlICQoQ09ORklHVVJFX0FSR1MpIjsgXAorICAgICAgICAgICAgLi4vc3JjL2Nv
bmZpZ3VyZSAkKENPTkZJR1VSRV9BUkdTKTsgXAorICAgICAgICAgICAgJChpZiAkKGZpbHRlciB2
cyUsJChUR1RfQ0MpKSxtYWtlIE5PX0xBVU5DSF9ERVZFTlY9MTspIFwKKyAgICAgICAgZmkKKwlA
aWYgWyAtZCAiJChESVNUX0RJUikiIF07IHRoZW4gXAorICAgICAgICAgICAgZWNobyAiICAgIFtN
RDVTVU1dICQoRElTVF9ESVIpIjsgXAorCSAgICBjZCAkKERJU1RfRElSKSAmJiBcCisJICAgICQo
bWQ1c3VtKSBgZmluZCAuIC1uYW1lIG1kNXN1bXMudHh0IC1wcnVuZSAtbyAtdHlwZSBmIC1wcmlu
dGAgXAorICAgICAgICAgICAgICAgIHwgc2VkIC1lICdzL01ENShcKC4qXCkpPSBcKFswLTlhLWZd
XHszMlx9XCkvXDIgIFwxLycgXAorICAgICAgICAgICAgICAgID4gbWQ1c3Vtcy50eHQ7XAorICAg
ICAgICBmaQorZW5kaWYKKworIyBTaW5jZSB3ZSBpbnZva2UgbWFrZSByZWN1cnNpdmVseSBmb3Ig
bXVsdGlwbGUgdGFyZ2V0cyB3ZSBuZWVkIHRvIGluY2x1ZGUgdGhlCisjIC5tayBmaWxlIGZvciB0
aGUgY29ycmVjdCB0YXJnZXQsIGJ1dCBvbmx5IHdoZW4gJCh0YXJnZXQpIGlzIG5vbi1lbXB0eS4K
K2lmbmVxICgkKHRhcmdldCksKQoraW5jbHVkZSAkKHRhcmdldCktJChUT09MQ0hBSU4pLm1rCitl
bmRpZgorQlVJTERfUk9PVD89LgorVlBBVEg9JChTUkNfUEFUSF9CQVJFKQorQ0ZMQUdTKz0tSSQo
QlVJTERfUEZYKSQoQlVJTERfUk9PVCkgLUkkKFNSQ19QQVRIKQorQ1hYRkxBR1MrPS1JJChCVUlM
RF9QRlgpJChCVUlMRF9ST09UKSAtSSQoU1JDX1BBVEgpCitBU0ZMQUdTKz0tSSQoQlVJTERfUEZY
KSQoQlVJTERfUk9PVCkvIC1JJChTUkNfUEFUSCkvCitESVNUX0RJUj89ZGlzdAorSE9TVENDPz1n
Y2MKK1RHVF9JU0E6PSQod29yZCAxLCAkKHN1YnN0IC0sICwkKFRPT0xDSEFJTikpKQorVEdUX09T
Oj0kKHdvcmQgMiwgJChzdWJzdCAtLCAsJChUT09MQ0hBSU4pKSkKK1RHVF9DQzo9JCh3b3JkIDMs
ICQoc3Vic3QgLSwgLCQoVE9PTENIQUlOKSkpCitxdWlldDo9JChpZiAkKG9yICQodmVyYm9zZSks
ICQoVikpLCwgeWVzKQorcWV4ZWM9JChpZiAkKHF1aWV0KSxAKQorCisjIENhbmNlbCBidWlsdC1p
biBpbXBsaWNpdCBydWxlcworJTogJS5vCislLmFzbToKKyUuYToKKyU6ICUuY2MKKworIworIyBD
b21tb24gcnVsZXMiCisjCisuUEhPTlk6IGFsbAorYWxsOgorCisuUEhPTlk6IGNsZWFuCitjbGVh
bjo6CisJcm0gLWYgJChPQkpTLXllcykgJChPQkpTLXllczoubz0uZCkgJChPQkpTLXllczouYXNt
LlMubz0uYXNtLlMpCisJcm0gLWYgJChDTEVBTi1PQkpTKQorCisuUEhPTlk6IGNsZWFuCitkaXN0
Y2xlYW46IGNsZWFuCisJaWYgWyAteiAiJCh0YXJnZXQpIiBdOyB0aGVuIFwKKyAgICAgIHJtIC1m
IE1ha2VmaWxlOyBcCisgICAgICBybSAtZiBjb25maWcubG9nIGNvbmZpZy5tazsgXAorICAgICAg
cm0gLWYgdnB4X2NvbmZpZy5baGNdIHZweF9jb25maWcuYXNtOyBcCisgICAgICBybSAtZiBhcm1f
bmVvbi5oOyBcCisgICAgZWxzZSBcCisgICAgICBybSAtZiAkKHRhcmdldCktJChUT09MQ0hBSU4p
Lm1rOyBcCisgICAgZmkKKworLlBIT05ZOiBkaXN0CitkaXN0OgorLlBIT05ZOiBleGFtcGxldGVz
dAorZXhhbXBsZXRlc3Q6CisuUEhPTlk6IGluc3RhbGwKK2luc3RhbGw6OgorLlBIT05ZOiB0ZXN0
Cit0ZXN0OjoKKy5QSE9OWTogdGVzdGRhdGEKK3Rlc3RkYXRhOjoKKy5QSE9OWTogdXRpbHRlc3QK
K3V0aWx0ZXN0OgorLlBIT05ZOiB0ZXN0LW5vLWRhdGEtY2hlY2sgZXhhbXBsZXRlc3Qtbm8tZGF0
YS1jaGVjayB1dGlsdGVzdC1uby1kYXRhLWNoZWNrCit0ZXN0LW5vLWRhdGEtY2hlY2s6OgorZXhh
bXBsZXRlc3Qtbm8tZGF0YS1jaGVjayB1dGlsdGVzdC1uby1kYXRhLWNoZWNrOgorCisjIEZvcmNl
IHRvIHJlYWxpZ24gc3RhY2sgYWx3YXlzIG9uIE9TLzIKK2lmZXEgKCQoVE9PTENIQUlOKSwgeDg2
LW9zMi1nY2MpCitDRkxBR1MgKz0gLW1zdGFja3JlYWxpZ24KK2VuZGlmCisKKyMgeDg2W182NF0K
KyQoQlVJTERfUEZYKSVfbW14LmMuZDogQ0ZMQUdTICs9IC1tbW14CiskKEJVSUxEX1BGWCklX21t
eC5jLm86IENGTEFHUyArPSAtbW1teAorJChCVUlMRF9QRlgpJV9zc2UyLmMuZDogQ0ZMQUdTICs9
IC1tc3NlMgorJChCVUlMRF9QRlgpJV9zc2UyLmMubzogQ0ZMQUdTICs9IC1tc3NlMgorJChCVUlM
RF9QRlgpJV9zc2UzLmMuZDogQ0ZMQUdTICs9IC1tc3NlMworJChCVUlMRF9QRlgpJV9zc2UzLmMu
bzogQ0ZMQUdTICs9IC1tc3NlMworJChCVUlMRF9QRlgpJV9zc3NlMy5jLmQ6IENGTEFHUyArPSAt
bXNzc2UzCiskKEJVSUxEX1BGWCklX3Nzc2UzLmMubzogQ0ZMQUdTICs9IC1tc3NzZTMKKyQoQlVJ
TERfUEZYKSVfc3NlNC5jLmQ6IENGTEFHUyArPSAtbXNzZTQuMQorJChCVUlMRF9QRlgpJV9zc2U0
LmMubzogQ0ZMQUdTICs9IC1tc3NlNC4xCiskKEJVSUxEX1BGWCklX2F2eC5jLmQ6IENGTEFHUyAr
PSAtbWF2eAorJChCVUlMRF9QRlgpJV9hdnguYy5vOiBDRkxBR1MgKz0gLW1hdngKKyQoQlVJTERf
UEZYKSVfYXZ4Mi5jLmQ6IENGTEFHUyArPSAtbWF2eDIKKyQoQlVJTERfUEZYKSVfYXZ4Mi5jLm86
IENGTEFHUyArPSAtbWF2eDIKKyQoQlVJTERfUEZYKSVfYXZ4NTEyLmMuZDogQ0ZMQUdTICs9IC1t
YXZ4NTEyZiAtbWF2eDUxMmNkIC1tYXZ4NTEyYncgLW1hdng1MTJkcSAtbWF2eDUxMnZsCiskKEJV
SUxEX1BGWCklX2F2eDUxMi5jLm86IENGTEFHUyArPSAtbWF2eDUxMmYgLW1hdng1MTJjZCAtbWF2
eDUxMmJ3IC1tYXZ4NTEyZHEgLW1hdng1MTJ2bAorCisjIFBPV0VSCiskKEJVSUxEX1BGWCklX3Zz
eC5jLmQ6IENGTEFHUyArPSAtbWFsdGl2ZWMgLW12c3gKKyQoQlVJTERfUEZYKSVfdnN4LmMubzog
Q0ZMQUdTICs9IC1tYWx0aXZlYyAtbXZzeAorCisjIE1JUFMKKyQoQlVJTERfUEZYKSVfbXNhLmMu
ZDogQ0ZMQUdTICs9IC1tbXNhCiskKEJVSUxEX1BGWCklX21zYS5jLm86IENGTEFHUyArPSAtbW1z
YQorCiskKEJVSUxEX1BGWCklLmMuZDogJS5jCisJJChpZiAkKHF1aWV0KSxAZWNobyAiICAgIFtE
RVBdICRAIikKKwkkKHFleGVjKW1rZGlyIC1wICQoZGlyICRAKQorCSQocWV4ZWMpJChDQykgJChJ
TlRFUk5BTF9DRkxBR1MpICQoQ0ZMQUdTKSAtTSAkPCB8ICQoZm10X2RlcHMpID4gJEAKKworJChC
VUlMRF9QRlgpJS5jLm86ICUuYworCSQoaWYgJChxdWlldCksQGVjaG8gIiAgICBbQ0NdICRAIikK
KwkkKHFleGVjKSQoaWYgJChDT05GSUdfREVQRU5ERU5DWV9UUkFDS0lORyksLG1rZGlyIC1wICQo
ZGlyICRAKSkKKwkkKHFleGVjKSQoQ0MpICQoSU5URVJOQUxfQ0ZMQUdTKSAkKENGTEFHUykgLWMg
LW8gJEAgJDwKKworJChCVUlMRF9QRlgpJS5jYy5kOiAlLmNjCisJJChpZiAkKHF1aWV0KSxAZWNo
byAiICAgIFtERVBdICRAIikKKwkkKHFleGVjKW1rZGlyIC1wICQoZGlyICRAKQorCSQocWV4ZWMp
JChDWFgpICQoSU5URVJOQUxfQ0ZMQUdTKSAkKENYWEZMQUdTKSAtTSAkPCB8ICQoZm10X2RlcHMp
ID4gJEAKKworJChCVUlMRF9QRlgpJS5jYy5vOiAlLmNjCisJJChpZiAkKHF1aWV0KSxAZWNobyAi
ICAgIFtDWFhdICRAIikKKwkkKHFleGVjKSQoaWYgJChDT05GSUdfREVQRU5ERU5DWV9UUkFDS0lO
RyksLG1rZGlyIC1wICQoZGlyICRAKSkKKwkkKHFleGVjKSQoQ1hYKSAkKElOVEVSTkFMX0NGTEFH
UykgJChDWFhGTEFHUykgLWMgLW8gJEAgJDwKKworJChCVUlMRF9QRlgpJS5jcHAuZDogJS5jcHAK
KwkkKGlmICQocXVpZXQpLEBlY2hvICIgICAgW0RFUF0gJEAiKQorCSQocWV4ZWMpbWtkaXIgLXAg
JChkaXIgJEApCisJJChxZXhlYykkKENYWCkgJChJTlRFUk5BTF9DRkxBR1MpICQoQ1hYRkxBR1Mp
IC1NICQ8IHwgJChmbXRfZGVwcykgPiAkQAorCiskKEJVSUxEX1BGWCklLmNwcC5vOiAlLmNwcAor
CSQoaWYgJChxdWlldCksQGVjaG8gIiAgICBbQ1hYXSAkQCIpCisJJChxZXhlYykkKGlmICQoQ09O
RklHX0RFUEVOREVOQ1lfVFJBQ0tJTkcpLCxta2RpciAtcCAkKGRpciAkQCkpCisJJChxZXhlYykk
KENYWCkgJChJTlRFUk5BTF9DRkxBR1MpICQoQ1hYRkxBR1MpIC1jIC1vICRAICQ8CisKKyQoQlVJ
TERfUEZYKSUuYXNtLmQ6ICUuYXNtCisJJChpZiAkKHF1aWV0KSxAZWNobyAiICAgIFtERVBdICRA
IikKKwkkKHFleGVjKW1rZGlyIC1wICQoZGlyICRAKQorCSQocWV4ZWMpJChTUkNfUEFUSF9CQVJF
KS9idWlsZC9tYWtlL2dlbl9hc21fZGVwcy5zaCBcCisgICAgICAgICAgICAtLWJ1aWxkLXBmeD0k
KEJVSUxEX1BGWCkgLS1kZXBmaWxlPSRAICQoQVNGTEFHUykgJDwgPiAkQAorCiskKEJVSUxEX1BG
WCklLmFzbS5vOiAlLmFzbQorCSQoaWYgJChxdWlldCksQGVjaG8gIiAgICBbQVNdICRAIikKKwkk
KHFleGVjKSQoaWYgJChDT05GSUdfREVQRU5ERU5DWV9UUkFDS0lORyksLG1rZGlyIC1wICQoZGly
ICRAKSkKKwkkKHFleGVjKSQoQVMpICQoQVNGTEFHUykgLW8gJEAgJDwKKworJChCVUlMRF9QRlgp
JS5TLmQ6ICUuUworCSQoaWYgJChxdWlldCksQGVjaG8gIiAgICBbREVQXSAkQCIpCisJJChxZXhl
Yylta2RpciAtcCAkKGRpciAkQCkKKwkkKHFleGVjKSQoU1JDX1BBVEhfQkFSRSkvYnVpbGQvbWFr
ZS9nZW5fYXNtX2RlcHMuc2ggXAorICAgICAgICAgICAgLS1idWlsZC1wZng9JChCVUlMRF9QRlgp
IC0tZGVwZmlsZT0kQCAkKEFTRkxBR1MpICQ8ID4gJEAKKworJChCVUlMRF9QRlgpJS5TLm86ICUu
UworCSQoaWYgJChxdWlldCksQGVjaG8gIiAgICBbQVNdICRAIikKKwkkKHFleGVjKSQoaWYgJChD
T05GSUdfREVQRU5ERU5DWV9UUkFDS0lORyksLG1rZGlyIC1wICQoZGlyICRAKSkKKwkkKHFleGVj
KSQoQVMpICQoQVNGTEFHUykgLW8gJEAgJDwKKworLlBSRUNJT1VTOiAlLmMuUworJS5jLlM6IENG
TEFHUyArPSAtRElOTElORV9BU00KKyQoQlVJTERfUEZYKSUuYy5TOiAlLmMKKwkkKGlmICQocXVp
ZXQpLEBlY2hvICIgICAgW0dFTl0gJEAiKQorCSQocWV4ZWMpJChpZiAkKENPTkZJR19ERVBFTkRF
TkNZX1RSQUNLSU5HKSwsbWtkaXIgLXAgJChkaXIgJEApKQorCSQocWV4ZWMpJChDQykgLVMgJChD
RkxBR1MpIC1vICRAICQ8CisKKy5QUkVDSU9VUzogJS5hc20uUworJChCVUlMRF9QRlgpJS5hc20u
UzogJS5hc20KKwkkKGlmICQocXVpZXQpLEBlY2hvICIgICAgW0FTTSBDT05WRVJTSU9OXSAkQCIp
CisJJChxZXhlYylta2RpciAtcCAkKGRpciAkQCkKKwkkKHFleGVjKSQoQVNNX0NPTlZFUlNJT04p
IDwkPCA+JEAKKworIyBJZiB3ZSdyZSBpbiBkZWJ1ZyBtb2RlLCBwcmV0ZW5kIHdlIGRvbid0IGhh
dmUgR05VIHN0cmlwLCB0byBmYWxsIGJhY2sgdG8KKyMgdGhlIGNvcHkgaW1wbGVtZW50YXRpb24K
K0hBVkVfR05VX1NUUklQIDo9ICQoaWYgJChDT05GSUdfREVCVUcpLCwkKEhBVkVfR05VX1NUUklQ
KSkKK2lmZXEgKCQoSEFWRV9HTlVfU1RSSVApLHllcykKKyMgT2xkZXIgYmludXRpbHMgc3RyaXAg
Z2xvYmFsIHN5bWJvbHMgbm90IG5lZWRlZCBmb3IgcmVsb2NhdGlvbiBwcm9jZXNzaW5nCisjIHdo
ZW4gZ2l2ZW4gLS1zdHJpcC11bm5lZWRlZC4gVXNpbmcgbm0gYW5kIGF3ayB0byBpZGVudGlmeSBn
bG9iYWxzIGFuZAorIyBrZWVwIHRoZW0gY2F1c2VkIGNvbW1hbmQgbGluZSBsZW5ndGggaXNzdWVz
IHVuZGVyIG1pbmd3IGFuZCBzZWdmYXVsdHMgaW4KKyMgdGVzdF9saWJ2cHggd2VyZSBvYnNlcnZl
ZCB1bmRlciBPUy8yOiBzaW1wbHkgdXNlIC0tc3RyaXAtZGVidWcuCislLmE6ICVfZy5hCisJJChp
ZiAkKHF1aWV0KSxAZWNobyAiICAgIFtTVFJJUF0gJEAgPCAkPCIpCisJJChxZXhlYykkKFNUUklQ
KSAtLXN0cmlwLWRlYnVnIFwKKyAgICAgICAgICAtbyAkQCAkPAorZWxzZQorJS5hOiAlX2cuYQor
CSQoaWYgJChxdWlldCksQGVjaG8gIiAgICBbQ1BdICRAIDwgJDwiKQorCSQocWV4ZWMpY3AgJDwg
JEAKK2VuZGlmCisKKyMKKyMgVXRpbGl0eSBmdW5jdGlvbnMKKyMKK3BhaXJtYXA9JChpZiAkKHN0
cmlwICQoMikpLFwKKyAgICAkKGNhbGwgJCgxKSwkKHdvcmQgMSwkKDIpKSwkKHdvcmQgMiwkKDIp
KSlcCisgICAgJChjYWxsIHBhaXJtYXAsJCgxKSwkKHdvcmRsaXN0IDMsJCh3b3JkcyAkKDIpKSwk
KDIpKSlcCispCisKK2VuYWJsZWQ9JChmaWx0ZXItb3V0ICQoJCgxKS1ubyksJCgkKDEpLXllcykp
Citjb25kX2VuYWJsZWQ9JChpZiAkKGZpbHRlciB5ZXMsJCgkKDEpKSksICQoY2FsbCBlbmFibGVk
LCQoMikpKQorCitmaW5kX2ZpbGUxPSQod29yZCAxLCQod2lsZGNhcmQgJChzdWJzdCAvLywvLCQo
YWRkc3VmZml4IC8kKDEpLCQoMikpKSkpCitmaW5kX2ZpbGU9JChmb3JlYWNoIGYsJCgxKSwkKGNh
bGwgZmluZF9maWxlMSwkKHN0cmlwICQoZikpLCQoc3RyaXAgJCgyKSkpICkKK29ial9wYXRzPS5j
PS5jLm8gJChBU19TRlgpPSQoQVNfU0ZYKS5vIC5jYz0uY2MubyAuY3BwPS5jcHAubworb2Jqcz0k
KGFkZHByZWZpeCAkKEJVSUxEX1BGWCksJChmb3JlYWNoIHAsJChvYmpfcGF0cyksJChmaWx0ZXIg
JS5vLCQoMTokKHApKSkgKSkKKworaW5zdGFsbF9tYXBfdGVtcGxhdGVzPSQoZXZhbCAkKGNhbGwg
aW5zdGFsbF9tYXBfdGVtcGxhdGUsJCgxKSwkKDIpKSkKKworbm90PSQoc3Vic3QgeWVzLG5vLCQo
MSkpCisKK2lmZXEgKCQoQ09ORklHX01TVlMpLHllcykKK2xpYl9maWxlX25hbWU9JCgxKS5saWIK
K2Vsc2UKK2xpYl9maWxlX25hbWU9bGliJCgxKS5hCitlbmRpZgorIworIyBSdWxlIFRlbXBsYXRl
cworIworZGVmaW5lIGxpbmtlcl90ZW1wbGF0ZQorJCgxKTogJChmaWx0ZXItb3V0IC0lLCQoMikp
CiskKDEpOgorCSQoaWYgJChxdWlldCksQGVjaG8gICAgIiAgICBbTERdICQkQCIpCisJJChxZXhl
YykkJChMRCkgJCQoc3RyaXAgJCQoSU5URVJOQUxfTERGTEFHUykgJCQoTERGTEFHUykgLW8gJCRA
ICQoMikgJCgzKSAkJChleHRyYWxpYnMpKQorZW5kZWYKK2RlZmluZSBsaW5rZXJ4eF90ZW1wbGF0
ZQorJCgxKTogJChmaWx0ZXItb3V0IC0lLCQoMikpCiskKDEpOgorCSQoaWYgJChxdWlldCksQGVj
aG8gICAgIiAgICBbTERdICQkQCIpCisJJChxZXhlYykkJChDWFgpICQkKHN0cmlwICQkKElOVEVS
TkFMX0xERkxBR1MpICQkKExERkxBR1MpIC1vICQkQCAkKDIpICQoMykgJCQoZXh0cmFsaWJzKSkK
K2VuZGVmCisjIG1ha2UtMy44MCBoYXMgYSBidWcgd2l0aCBleHBhbmRpbmcgbGFyZ2UgaW5wdXQg
c3RyaW5ncyB0byB0aGUgZXZhbCBmdW5jdGlvbiwKKyMgd2hpY2ggd2FzIHRyaWdnZXJlZCBpbiBz
b21lIGNhc2VzIGJ5IHRoZSBmb2xsb3dpbmcgY29tcG9uZW50IG9mCisjIGxpbmtlcl90ZW1wbGF0
ZToKKyMgICAkKDEpOiAkJChjYWxsIGZpbmRfZmlsZSwgJChwYXRzdWJzdCAtbCUsbGliJS5hLCQo
ZmlsdGVyIC1sJSwkKDIpKSksXAorIyAgICAgICAgICAgICAgICAgICAgICAgICAgICQkKHBhdHN1
YnN0IC1MJSwlLCQkKGZpbHRlciAtTCUsJCQoTERGTEFHUykgJCgyKSkpKQorIyBUaGlzIG1heSBi
ZSB1c2VmdWwgdG8gcmV2aXNpdCBpbiB0aGUgZnV0dXJlIChpdCB0cmllcyB0byBsb2NhdGUgbGli
cmFyaWVzCisjIGluIGEgc2VhcmNoIHBhdGggYW5kIGFkZCB0aGVtIGFzIHByZXJlcXVpc2l0ZXMK
KworZGVmaW5lIGluc3RhbGxfbWFwX3RlbXBsYXRlCiskKERJU1RfRElSKS8kKDEpOiAkKDIpCisJ
JChpZiAkKHF1aWV0KSxAZWNobyAiICAgIFtJTlNUQUxMXSAkJEAiKQorCSQocWV4ZWMpbWtkaXIg
LXAgJCQoZGlyICQkQCkKKwkkKHFleGVjKWNwIC1wICQkPCAkJEAKK2VuZGVmCisKK2RlZmluZSBh
cmNoaXZlX3RlbXBsYXRlCisjIE5vdCB1c2luZyBhIHBhdHRlcm4gcnVsZSBoZXJlIGJlY2F1c2Ug
d2UgZG9uJ3Qgd2FudCB0byBnZW5lcmF0ZSBlbXB0eQorIyBhcmNoaXZlcyB3aGVuIHRoZXkgYXJl
IGxpc3RlZCBhcyBhIGRlcGVuZGVuY3kgaW4gZmlsZXMgbm90IHJlc3BvbnNpYmxlCisjIGZvciBj
cmVhdGluZyB0aGVtLgorJCgxKToKKwkkKGlmICQocXVpZXQpLEBlY2hvICIgICAgW0FSXSAkJEAi
KQorCSQocWV4ZWMpJCQoQVIpICQkKEFSRkxBR1MpICQkQCAkJF4KK2VuZGVmCisKK2RlZmluZSBz
b190ZW1wbGF0ZQorIyBOb3QgdXNpbmcgYSBwYXR0ZXJuIHJ1bGUgaGVyZSBiZWNhdXNlIHdlIGRv
bid0IHdhbnQgdG8gZ2VuZXJhdGUgZW1wdHkKKyMgYXJjaGl2ZXMgd2hlbiB0aGV5IGFyZSBsaXN0
ZWQgYXMgYSBkZXBlbmRlbmN5IGluIGZpbGVzIG5vdCByZXNwb25zaWJsZQorIyBmb3IgY3JlYXRp
bmcgdGhlbS4KKyMKKyMgVGhpcyBuZWVkcyBmdXJ0aGVyIGFic3RyYWN0aW9uIGZvciBkZWFsaW5n
IHdpdGggbm9uLUdOVSBsaW5rZXJzLgorJCgxKToKKwkkKGlmICQocXVpZXQpLEBlY2hvICIgICAg
W0xEXSAkJEAiKQorCSQocWV4ZWMpJCQoTEQpIC1zaGFyZWQgJCQoTERGTEFHUykgXAorICAgICAg
ICAgICAgLVdsLC0tbm8tdW5kZWZpbmVkIC1XbCwtc29uYW1lLCQkKFNPTkFNRSkgXAorICAgICAg
ICAgICAgLVdsLC0tdmVyc2lvbi1zY3JpcHQsJCQoRVhQT1JUU19GSUxFKSAtbyAkJEAgXAorICAg
ICAgICAgICAgJCQoZmlsdGVyICUubywkJF4pICQkKGV4dHJhbGlicykKK2VuZGVmCisKK2RlZmlu
ZSBkbF90ZW1wbGF0ZQorIyBOb3QgdXNpbmcgYSBwYXR0ZXJuIHJ1bGUgaGVyZSBiZWNhdXNlIHdl
IGRvbid0IHdhbnQgdG8gZ2VuZXJhdGUgZW1wdHkKKyMgYXJjaGl2ZXMgd2hlbiB0aGV5IGFyZSBs
aXN0ZWQgYXMgYSBkZXBlbmRlbmN5IGluIGZpbGVzIG5vdCByZXNwb25zaWJsZQorIyBmb3IgY3Jl
YXRpbmcgdGhlbS4KKyQoMSk6CisJJChpZiAkKHF1aWV0KSxAZWNobyAiICAgIFtMRF0gJCRAIikK
KwkkKHFleGVjKSQkKExEKSAtZHluYW1pY2xpYiAkJChMREZMQUdTKSBcCisJICAgIC1leHBvcnRl
ZF9zeW1ib2xzX2xpc3QgJCQoRVhQT1JUU19GSUxFKSBcCisgICAgICAgIC1XbCwtaGVhZGVycGFk
X21heF9pbnN0YWxsX25hbWVzLC1jb21wYXRpYmlsaXR5X3ZlcnNpb24sMS4wLC1jdXJyZW50X3Zl
cnNpb24sJCQoVkVSU0lPTl9NQUpPUikgXAorICAgICAgICAtbyAkJEAgXAorICAgICAgICAkJChm
aWx0ZXIgJS5vLCQkXikgJCQoZXh0cmFsaWJzKQorZW5kZWYKKworZGVmaW5lIGRsbF90ZW1wbGF0
ZQorIyBOb3QgdXNpbmcgYSBwYXR0ZXJuIHJ1bGUgaGVyZSBiZWNhdXNlIHdlIGRvbid0IHdhbnQg
dG8gZ2VuZXJhdGUgZW1wdHkKKyMgYXJjaGl2ZXMgd2hlbiB0aGV5IGFyZSBsaXN0ZWQgYXMgYSBk
ZXBlbmRlbmN5IGluIGZpbGVzIG5vdCByZXNwb25zaWJsZQorIyBmb3IgY3JlYXRpbmcgdGhlbS4K
KyQoMSk6CisJJChpZiAkKHF1aWV0KSxAZWNobyAiICAgIFtMRF0gJCRAIikKKwkkKHFleGVjKSQk
KExEKSAtWmRsbCAkJChMREZMQUdTKSBcCisgICAgICAgIC1vICQkQCBcCisgICAgICAgICQkKGZp
bHRlciAlLm8sJCReKSAkJChleHRyYWxpYnMpICQkKEVYUE9SVFNfRklMRSkKK2VuZGVmCisKKwor
IworIyBHZXQgY3VycmVudCBjb25maWd1cmF0aW9uCisjCitpZm5lcSAoJCh0YXJnZXQpLCkKK2lu
Y2x1ZGUgJChTUkNfUEFUSF9CQVJFKS8kKHRhcmdldDotJChUT09MQ0hBSU4pPSkubWsKK2VuZGlm
CisKK3NraXBfZGVwcyA6PSAkKGZpbHRlciAlY2xlYW4sJChNQUtFQ01ER09BTFMpKQorc2tpcF9k
ZXBzICs9ICQoZmluZHN0cmluZyB0ZXN0ZGF0YSwkKE1BS0VDTURHT0FMUykpCitpZmVxICgkKHN0
cmlwICQoc2tpcF9kZXBzKSksKQorICBpZmVxICgkKENPTkZJR19ERVBFTkRFTkNZX1RSQUNLSU5H
KSx5ZXMpCisgICAgIyBPbGRlciB2ZXJzaW9ucyBvZiBtYWtlIGRvbid0IGxpa2UgLWluY2x1ZGUg
ZGlyZWN0aXZlcyB3aXRoIG5vIGFyZ3VtZW50cworICAgIGlmbmVxICgkKGZpbHRlciAlLmQsJChP
QkpTLXllczoubz0uZCkpLCkKKyAgICAgIC1pbmNsdWRlICQoZmlsdGVyICUuZCwkKE9CSlMteWVz
Oi5vPS5kKSkKKyAgICBlbmRpZgorICBlbmRpZgorZW5kaWYKKworIworIyBDb25maWd1cmF0aW9u
IGRlcGVuZGVudCBydWxlcworIworJChjYWxsIHBhaXJtYXAsaW5zdGFsbF9tYXBfdGVtcGxhdGVz
LCQoSU5TVEFMTF9NQVBTKSkKKworRE9DUz0kKGNhbGwgY29uZF9lbmFibGVkLENPTkZJR19JTlNU
QUxMX0RPQ1MsRE9DUykKKy5kb2NzOiAkKERPQ1MpCisJQHRvdWNoICRACisKK0lOU1RBTEwtRE9D
Uz0kKGNhbGwgY29uZF9lbmFibGVkLENPTkZJR19JTlNUQUxMX0RPQ1MsSU5TVEFMTC1ET0NTKQor
aWZlcSAoJChNQUtFQ01ER09BTFMpLGRpc3QpCitJTlNUQUxMLURPQ1MrPSQoY2FsbCBjb25kX2Vu
YWJsZWQsQ09ORklHX0lOU1RBTExfRE9DUyxESVNULURPQ1MpCitlbmRpZgorLmluc3RhbGwtZG9j
czogLmRvY3MgJChhZGRwcmVmaXggJChESVNUX0RJUikvLCQoSU5TVEFMTC1ET0NTKSkKKwlAdG91
Y2ggJEAKKworY2xlYW46OgorCXJtIC1mIC5kb2NzIC5pbnN0YWxsLWRvY3MgJChET0NTKQorCitC
SU5TPSQoY2FsbCBlbmFibGVkLEJJTlMpCisuYmluczogJChCSU5TKQorCUB0b3VjaCAkQAorCitJ
TlNUQUxMLUJJTlM9JChjYWxsIGNvbmRfZW5hYmxlZCxDT05GSUdfSU5TVEFMTF9CSU5TLElOU1RB
TEwtQklOUykKK2lmZXEgKCQoTUFLRUNNREdPQUxTKSxkaXN0KQorSU5TVEFMTC1CSU5TKz0kKGNh
bGwgY29uZF9lbmFibGVkLENPTkZJR19JTlNUQUxMX0JJTlMsRElTVC1CSU5TKQorZW5kaWYKKy5p
bnN0YWxsLWJpbnM6IC5iaW5zICQoYWRkcHJlZml4ICQoRElTVF9ESVIpLywkKElOU1RBTEwtQklO
UykpCisJQHRvdWNoICRACisKK2NsZWFuOjoKKwlybSAtZiAuYmlucyAuaW5zdGFsbC1iaW5zICQo
QklOUykKKworTElCUz0kKGNhbGwgZW5hYmxlZCxMSUJTKQorLmxpYnM6ICQoTElCUykKKwlAdG91
Y2ggJEAKKyQoZm9yZWFjaCBsaWIsJChmaWx0ZXIgJV9nLmEsJChMSUJTKSksJChldmFsICQoY2Fs
bCBhcmNoaXZlX3RlbXBsYXRlLCQobGliKSkpKQorJChmb3JlYWNoIGxpYiwkKGZpbHRlciAlc28u
JChTT19WRVJTSU9OX01BSk9SKS4kKFNPX1ZFUlNJT05fTUlOT1IpLiQoU09fVkVSU0lPTl9QQVRD
SCksJChMSUJTKSksJChldmFsICQoY2FsbCBzb190ZW1wbGF0ZSwkKGxpYikpKSkKKyQoZm9yZWFj
aCBsaWIsJChmaWx0ZXIgJSQoU09fVkVSU0lPTl9NQUpPUikuZHlsaWIsJChMSUJTKSksJChldmFs
ICQoY2FsbCBkbF90ZW1wbGF0ZSwkKGxpYikpKSkKKyQoZm9yZWFjaCBsaWIsJChmaWx0ZXIgJSQo
U09fVkVSU0lPTl9NQUpPUikuZGxsLCQoTElCUykpLCQoZXZhbCAkKGNhbGwgZGxsX3RlbXBsYXRl
LCQobGliKSkpKQorCitJTlNUQUxMLUxJQlM9JChjYWxsIGNvbmRfZW5hYmxlZCxDT05GSUdfSU5T
VEFMTF9MSUJTLElOU1RBTEwtTElCUykKK2lmZXEgKCQoTUFLRUNNREdPQUxTKSxkaXN0KQorSU5T
VEFMTC1MSUJTKz0kKGNhbGwgY29uZF9lbmFibGVkLENPTkZJR19JTlNUQUxMX0xJQlMsRElTVC1M
SUJTKQorZW5kaWYKKy5pbnN0YWxsLWxpYnM6IC5saWJzICQoYWRkcHJlZml4ICQoRElTVF9ESVIp
LywkKElOU1RBTEwtTElCUykpCisJQHRvdWNoICRACisKK2NsZWFuOjoKKwlybSAtZiAubGlicyAu
aW5zdGFsbC1saWJzICQoTElCUykKKworaWZlcSAoJChDT05GSUdfRVhURVJOQUxfQlVJTEQpLHll
cykKK1BST0pFQ1RTPSQoY2FsbCBlbmFibGVkLFBST0pFQ1RTKQorLnByb2plY3RzOiAkKFBST0pF
Q1RTKQorCUB0b3VjaCAkQAorCitJTlNUQUxMLVBST0pFQ1RTPSQoY2FsbCBjb25kX2VuYWJsZWQs
Q09ORklHX0lOU1RBTExfUFJPSkVDVFMsSU5TVEFMTC1QUk9KRUNUUykKK2lmZXEgKCQoTUFLRUNN
REdPQUxTKSxkaXN0KQorSU5TVEFMTC1QUk9KRUNUUys9JChjYWxsIGNvbmRfZW5hYmxlZCxDT05G
SUdfSU5TVEFMTF9QUk9KRUNUUyxESVNULVBST0pFQ1RTKQorZW5kaWYKKy5pbnN0YWxsLXByb2pl
Y3RzOiAucHJvamVjdHMgJChhZGRwcmVmaXggJChESVNUX0RJUikvLCQoSU5TVEFMTC1QUk9KRUNU
UykpCisJQHRvdWNoICRACisKK2NsZWFuOjoKKwlybSAtZiAucHJvamVjdHMgLmluc3RhbGwtcHJv
amVjdHMgJChQUk9KRUNUUykKK2VuZGlmCisKKyMgSWYgdGhlcmUgYXJlIGFueSBzb3VyY2UgZmls
ZXMgdG8gYmUgZGlzdHJpYnV0ZWQsIHRoZW4gaW5jbHVkZSB0aGUgYnVpbGQKKyMgc3lzdGVtIHRv
by4KK2lmbmVxICgkKGNhbGwgZW5hYmxlZCxESVNULVNSQ1MpLCkKKyAgICBESVNULVNSQ1MteWVz
ICAgICAgICAgICAgKz0gY29uZmlndXJlCisgICAgRElTVC1TUkNTLXllcyAgICAgICAgICAgICs9
IGJ1aWxkL21ha2UvY29uZmlndXJlLnNoCisgICAgRElTVC1TUkNTLXllcyAgICAgICAgICAgICs9
IGJ1aWxkL21ha2UvZ2VuX2FzbV9kZXBzLnNoCisgICAgRElTVC1TUkNTLXllcyAgICAgICAgICAg
ICs9IGJ1aWxkL21ha2UvTWFrZWZpbGUKKyAgICBESVNULVNSQ1MtJChDT05GSUdfTVNWUykgICs9
IGJ1aWxkL21ha2UvZ2VuX21zdnNfZGVmLnNoCisgICAgRElTVC1TUkNTLSQoQ09ORklHX01TVlMp
ICArPSBidWlsZC9tYWtlL2dlbl9tc3ZzX3Nsbi5zaAorICAgIERJU1QtU1JDUy0kKENPTkZJR19N
U1ZTKSAgKz0gYnVpbGQvbWFrZS9nZW5fbXN2c192Y3hwcm9qLnNoCisgICAgRElTVC1TUkNTLSQo
Q09ORklHX01TVlMpICArPSBidWlsZC9tYWtlL21zdnNfY29tbW9uLnNoCisgICAgRElTVC1TUkNT
LSQoQ09ORklHX1JWQ1QpICs9IGJ1aWxkL21ha2UvYXJtbGlua19hZGFwdGVyLnNoCisgICAgRElT
VC1TUkNTLSQoVlBYX0FSQ0hfQVJNKSArPSBidWlsZC9tYWtlL2FkczJnYXMucGwKKyAgICBESVNU
LVNSQ1MtJChWUFhfQVJDSF9BUk0pICs9IGJ1aWxkL21ha2UvYWRzMmdhc19hcHBsZS5wbAorICAg
IERJU1QtU1JDUy0kKFZQWF9BUkNIX0FSTSkgKz0gYnVpbGQvbWFrZS9hZHMyYXJtYXNtX21zLnBs
CisgICAgRElTVC1TUkNTLSQoVlBYX0FSQ0hfQVJNKSArPSBidWlsZC9tYWtlL3RodW1iLnBtCisg
ICAgRElTVC1TUkNTLXllcyAgICAgICAgICAgICs9ICQodGFyZ2V0Oi0kKFRPT0xDSEFJTik9KS5t
aworZW5kaWYKK0lOU1RBTEwtU1JDUyA6PSAkKGNhbGwgY29uZF9lbmFibGVkLENPTkZJR19JTlNU
QUxMX1NSQ1MsSU5TVEFMTC1TUkNTKQoraWZlcSAoJChNQUtFQ01ER09BTFMpLGRpc3QpCitJTlNU
QUxMLVNSQ1MgKz0gJChjYWxsIGNvbmRfZW5hYmxlZCxDT05GSUdfSU5TVEFMTF9TUkNTLERJU1Qt
U1JDUykKK2VuZGlmCisuaW5zdGFsbC1zcmNzOiAkKGFkZHByZWZpeCAkKERJU1RfRElSKS9zcmMv
LCQoSU5TVEFMTC1TUkNTKSkKKwlAdG91Y2ggJEAKKworY2xlYW46OgorCXJtIC1mIC5pbnN0YWxs
LXNyY3MKKworaWZlcSAoJChDT05GSUdfRVhURVJOQUxfQlVJTEQpLHllcykKKyAgICBCVUlMRF9U
QVJHRVRTICs9IC5wcm9qZWN0cworICAgIElOU1RBTExfVEFSR0VUUyArPSAuaW5zdGFsbC1wcm9q
ZWN0cworZW5kaWYKK0JVSUxEX1RBUkdFVFMgKz0gLmRvY3MgLmxpYnMgLmJpbnMKK0lOU1RBTExf
VEFSR0VUUyArPSAuaW5zdGFsbC1kb2NzIC5pbnN0YWxsLXNyY3MgLmluc3RhbGwtbGlicyAuaW5z
dGFsbC1iaW5zCithbGw6ICQoQlVJTERfVEFSR0VUUykKK2luc3RhbGw6OiAkKElOU1RBTExfVEFS
R0VUUykKK2Rpc3Q6ICQoSU5TVEFMTF9UQVJHRVRTKQordGVzdDo6CisKKy5TVUZGSVhFUzogICMg
RGVsZXRlIGRlZmF1bHQgc3VmZml4IHJ1bGVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2J1aWxk
L21ha2UvYWRzMmFybWFzbV9tcy5wbCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9hZHMyYXJtYXNt
X21zLnBsCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjJhMmM0NzBmZjg4YTVkMWI1NDhhMDM5MTYxNzRkYmIwOTM2Y2Zh
ZjkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2J1aWxkL21ha2UvYWRzMmFybWFzbV9t
cy5wbApAQCAtMCwwICsxLDM5IEBACisjIS91c3IvYmluL2VudiBwZXJsCisjIworIyMgIENvcHly
aWdodCAoYykgMjAxMyBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2
ZWQuCisjIworIyMgIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNE
LXN0eWxlIGxpY2Vuc2UKKyMjICB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxl
IGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UKKyMjICB0cmVlLiBBbiBhZGRpdGlvbmFsIGludGVs
bGVjdHVhbCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQgY2FuIGJlIGZvdW5kCisjIyAgaW4gdGhlIGZp
bGUgUEFURU5UUy4gIEFsbCBjb250cmlidXRpbmcgcHJvamVjdCBhdXRob3JzIG1heQorIyMgIGJl
IGZvdW5kIGluIHRoZSBBVVRIT1JTIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZSB0cmVl
LgorIyMKKwordXNlIEZpbmRCaW47Cit1c2UgbGliICRGaW5kQmluOjpCaW47Cit1c2UgdGh1bWI7
CisKK3ByaW50ICI7IFRoaXMgZmlsZSB3YXMgY3JlYXRlZCBmcm9tIGEgLmFzbSBmaWxlXG4iOwor
cHJpbnQgIjsgIHVzaW5nIHRoZSBhZHMyYXJtYXNtX21zLnBsIHNjcmlwdC5cbiI7CisKK3doaWxl
ICg8U1RESU4+KQoreworICAgIHVuZGVmICRjb21tZW50OworICAgIHVuZGVmICRsaW5lOworCisg
ICAgcy9SRVFVSVJFOC8vOworICAgIHMvUFJFU0VSVkU4Ly87CisgICAgcy9eXHMqQVJNXHMqJC8v
OworICAgIHMvQVJFQVxzK1x8XHwoLiopXHxcfC9BUkVBIHwkMXwvOworICAgIHMvcXN1YmFkZHgv
cXNheC9pOworICAgIHMvcWFkZHN1YngvcWFzeC9pOworCisgICAgdGh1bWI6OkZpeFRodW1iSW5z
dHJ1Y3Rpb25zKCRfLCAxKTsKKworICAgIHMvbGRybmViL2xkcmJuZS9pOworICAgIHMvbGRybmVo
L2xkcmhuZS9pOworICAgIHMvXihccyopRU5EUC4qLyQmXG4kMUFMSUdOIDQvOworCisgICAgcHJp
bnQ7Cit9CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9hZHMyZ2FzLnBsIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC9idWlsZC9tYWtlL2FkczJnYXMucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjZhOGY1M2VhZTIz
OGNjZTM0MjI5Mzg0NDRkOWZjYWM3MjM4Yjg2NwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvYnVpbGQvbWFrZS9hZHMyZ2FzLnBsCkBAIC0wLDAgKzEsMjM4IEBACisjIS91c3IvYmluL2Vu
diBwZXJsCisjIworIyMgIENvcHlyaWdodCAoYykgMjAxMCBUaGUgV2ViTSBwcm9qZWN0IGF1dGhv
cnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisjIworIyMgIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2Rl
IGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UKKyMjICB0aGF0IGNhbiBiZSBmb3Vu
ZCBpbiB0aGUgTElDRU5TRSBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UKKyMjICB0cmVl
LiBBbiBhZGRpdGlvbmFsIGludGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQgY2FuIGJl
IGZvdW5kCisjIyAgaW4gdGhlIGZpbGUgUEFURU5UUy4gIEFsbCBjb250cmlidXRpbmcgcHJvamVj
dCBhdXRob3JzIG1heQorIyMgIGJlIGZvdW5kIGluIHRoZSBBVVRIT1JTIGZpbGUgaW4gdGhlIHJv
b3Qgb2YgdGhlIHNvdXJjZSB0cmVlLgorIyMKKworCisjIGFkczJnYXMucGwKKyMgQXV0aG9yOiBF
cmljIEZ1bmcgKGVmdW5nIChhdCkgYWNtLm9yZykKKyMKKyMgQ29udmVydCBBUk0gRGV2ZWxvcGVy
IFN1aXRlIDEuMC4xIHN5bnRheCBhc3NlbWJseSBzb3VyY2UgdG8gR05VIGFzIGZvcm1hdAorIwor
IyBVc2FnZTogY2F0IGlucHV0ZmlsZSB8IHBlcmwgYWRzMmdhcy5wbCA+IG91dHB1dGZpbGUKKyMK
KwordXNlIEZpbmRCaW47Cit1c2UgbGliICRGaW5kQmluOjpCaW47Cit1c2UgdGh1bWI7CisKK215
ICR0aHVtYiA9IDA7CitteSAkZWxmID0gMTsKKworZm9yZWFjaCBteSAkYXJnIChAQVJHVikgewor
ICAgICR0aHVtYiA9IDEgaWYgKCRhcmcgZXEgIi10aHVtYiIpOworICAgICRlbGYgPSAwIGlmICgk
YXJnIGVxICItbm9lbGYiKTsKK30KKworcHJpbnQgIkAgVGhpcyBmaWxlIHdhcyBjcmVhdGVkIGZy
b20gYSAuYXNtIGZpbGVcbiI7CitwcmludCAiQCAgdXNpbmcgdGhlIGFkczJnYXMucGwgc2NyaXB0
LlxuIjsKK3ByaW50ICJcdC5zeW50YXggdW5pZmllZFxuIjsKK2lmICgkdGh1bWIpIHsKKyAgICBw
cmludCAiXHQudGh1bWJcbiI7Cit9CisKKyMgU3RhY2sgb2YgcHJvY2VkdXJlIG5hbWVzLgorQHBy
b2Nfc3RhY2sgPSAoKTsKKword2hpbGUgKDxTVERJTj4pCit7CisgICAgdW5kZWYgJGNvbW1lbnQ7
CisgICAgdW5kZWYgJGxpbmU7CisgICAgJGNvbW1lbnRfY2hhciA9ICI7IjsKKyAgICAkY29tbWVu
dF9zdWIgPSAiQCI7CisKKyAgICAjIEhhbmRsZSBjb21tZW50cy4KKyAgICBpZiAoLyRjb21tZW50
X2NoYXIvKQorICAgIHsKKyAgICAgICRjb21tZW50ID0gIiI7CisgICAgICAoJGxpbmUsICRjb21t
ZW50KSA9IC8oLio/KSRjb21tZW50X2NoYXIoLiopLzsKKyAgICAgICRfID0gJGxpbmU7CisgICAg
fQorCisgICAgIyBMb2FkIGFuZCBzdG9yZSBhbGlnbm1lbnQKKyAgICBzL0AvLDovZzsKKworICAg
ICMgSGV4YWRlY2ltYWwgY29uc3RhbnRzIHByZWZhY2VkIGJ5IDB4CisgICAgcy8jJi8jMHgvZzsK
KworICAgICMgQ29udmVydCA6T1I6IHRvIHwKKyAgICBzLzpPUjovIHwgL2c7CisKKyAgICAjIENv
bnZlcnQgOkFORDogdG8gJgorICAgIHMvOkFORDovICYgL2c7CisKKyAgICAjIENvbnZlcnQgOk5P
VDogdG8gfgorICAgIHMvOk5PVDovIH4gL2c7CisKKyAgICAjIENvbnZlcnQgOlNITDogdG8gPDwK
KyAgICBzLzpTSEw6LyA8PCAvZzsKKworICAgICMgQ29udmVydCA6U0hSOiB0byA+PgorICAgIHMv
OlNIUjovID4+IC9nOworCisgICAgIyBDb252ZXJ0IEVMU0UgdG8gLmVsc2UKKyAgICBzL1xiRUxT
RVxiLy5lbHNlL2c7CisKKyAgICAjIENvbnZlcnQgRU5ESUYgdG8gLmVuZGlmCisgICAgcy9cYkVO
RElGXGIvLmVuZGlmL2c7CisKKyAgICAjIENvbnZlcnQgRUxTRUlGIHRvIC5lbHNlaWYKKyAgICBz
L1xiRUxTRUlGXGIvLmVsc2VpZi9nOworCisgICAgIyBDb252ZXJ0IExUT1JHIHRvIC5sdG9yZwor
ICAgIHMvXGJMVE9SR1xiLy5sdG9yZy9nOworCisgICAgIyBDb252ZXJ0IGVuZGZ1bmMgdG8gbm90
aGluZy4KKyAgICBzL1xiZW5kZnVuY1xiLy9pZzsKKworICAgICMgQ29udmVydCBGVU5DVElPTiB0
byBub3RoaW5nLgorICAgIHMvXGJGVU5DVElPTlxiLy9nOworICAgIHMvXGJmdW5jdGlvblxiLy9n
OworCisgICAgcy9cYkVOVFJZXGIvL2c7CisgICAgcy9cYk1TQVJNQVNNXGIvMC9nOworICAgIHMv
XlxzK2VuZFxzKyQvL2c7CisKKyAgICAjIENvbnZlcnQgSUYgOkRFRjp0byAuaWYKKyAgICAjIGdj
YyBkb2Vzbid0IGhhdmUgdGhlIGFiaWxpdHkgdG8gZG8gYSBjb25kaXRpb25hbAorICAgICMgaWYg
ZGVmaW5lZCB2YXJpYWJsZSB0aGF0IGlzIHNldCBieSBJRiA6REVGOiBvbgorICAgICMgYXJtYXNt
LCBzbyBjb252ZXJ0IGl0IHRvIGEgbm9ybWFsIC5pZiBhbmQgdGhlbgorICAgICMgbWFrZSBzdXJl
IHRvIGRlZmluZSBhIHZhbHVlIGVsZXNld2hlcmUKKyAgICBpZiAocy9cYklGIDpERUY6XGIvLmlm
IC9nKQorICAgIHsKKyAgICAgICAgcy89Lz09L2c7CisgICAgfQorCisgICAgIyBDb252ZXJ0IElG
IHRvIC5pZgorICAgIGlmIChzL1xiSUZcYi8uaWYvZykKKyAgICB7CisgICAgICAgIHMvPSsvPT0v
ZzsKKyAgICB9CisKKyAgICAjIENvbnZlcnQgSU5DTFVERSB0byAuSU5DTFVERSAiZmlsZSIKKyAg
ICBzL0lOQ0xVREUoXHMqKSguKikkLy5pbmNsdWRlICQxXCIkMlwiLzsKKworICAgICMgQ29kZSBk
aXJlY3RpdmUgKEFSTSB2cyBUaHVtYikKKyAgICBzL0NPREUoWzAtOV1bMC05XSkvLmNvZGUgJDEv
OworCisgICAgIyBObyBBUkVBIHJlcXVpcmVkCisgICAgIyBCdXQgQUxJR05zIGluIEFSRUEgbXVz
dCBiZSBvYmV5ZWQKKyAgICBzL15ccypBUkVBLipBTElHTj0oWzAtOV0pJC8udGV4dFxuLnAyYWxp
Z24gJDEvOworICAgICMgSWYgbm8gQUxJR04sIHN0cmlwIHRoZSBBUkVBIGFuZCBhbGlnbiB0byA0
IGJ5dGVzCisgICAgcy9eXHMqQVJFQS4qJC8udGV4dFxuLnAyYWxpZ24gMi87CisKKyAgICAjIERD
RCB0byAud29yZAorICAgICMgVGhpcyBvbmUgaXMgZm9yIGluY29taW5nIHN5bWJvbHMKKyAgICBz
L0RDRFxzK1x8KFx3KilcfC8ubG9uZyAkMS87CisKKyAgICAjIERDVyB0byAuc2hvcnQKKyAgICBz
L0RDV1xzK1x8KFx3KilcfC8uc2hvcnQgJDEvOworICAgIHMvRENXKC4qKS8uc2hvcnQgJDEvOwor
CisgICAgIyBDb25zdGFudHMgZGVmaW5lZCBpbiBzY29wZQorICAgIHMvRENEKC4qKS8ubG9uZyAk
MS87CisgICAgcy9EQ0IoLiopLy5ieXRlICQxLzsKKworICAgICMgTWFrZSBmdW5jdGlvbiB2aXNp
YmxlIHRvIGxpbmtlciwgYW5kIG1ha2UgYWRkaXRpb25hbCBzeW1ib2wgd2l0aAorICAgICMgcHJl
cGVuZGVkIHVuZGVyc2NvcmUKKyAgICBpZiAoJGVsZikgeworICAgICAgICBzL0VYUE9SVFxzK1x8
KFtcJFx3XSopXHwvLmdsb2JhbCAkMSBcblx0LnR5cGUgJDEsIGZ1bmN0aW9uLzsKKyAgICB9IGVs
c2UgeworICAgICAgICBzL0VYUE9SVFxzK1x8KFtcJFx3XSopXHwvLmdsb2JhbCAkMS87CisgICAg
fQorICAgIHMvSU1QT1JUXHMrXHwoW1wkXHddKilcfC8uZ2xvYmFsICQxLzsKKworICAgIHMvRVhQ
T1JUXHMrKFtcJFx3XSopLy5nbG9iYWwgJDEvOworICAgIHMvZXhwb3J0XHMrKFtcJFx3XSopLy5n
bG9iYWwgJDEvOworCisgICAgIyBObyB2ZXJ0aWNhbCBiYXJzIHJlcXVpcmVkOyBtYWtlIGFkZGl0
aW9uYWwgc3ltYm9sIHdpdGggcHJlcGVuZGVkCisgICAgIyB1bmRlcnNjb3JlCisgICAgcy9eXHwo
XCQ/XHcrKVx8L18kMVxuXHQkMTovZzsKKworICAgICMgTGFiZWxzIG5lZWQgdHJhaWxpbmcgY29s
b24KKyMgICBzL14oXHcrKS8kMTovIGlmICEvRVFVLzsKKyAgICAjIHB1dCB0aGUgY29sb24gYXQg
dGhlIGVuZCBvZiB0aGUgbGluZSBpbiB0aGUgbWFjcm8KKyAgICBzL14oW2EtekEtWl8wLTlcJF0r
KS8kMTovIGlmICEvRVFVLzsKKworICAgICMgQUxJR04gZGlyZWN0aXZlCisgICAgcy9cYkFMSUdO
XGIvLmJhbGlnbi9nOworCisgICAgaWYgKCR0aHVtYikgeworICAgICAgICAjIEFSTSBjb2RlIC0g
d2UgZm9yY2UgZXZlcnl0aGluZyB0byB0aHVtYiB3aXRoIHRoZSBkZWNsYXJhdGlvbiBpbiB0aGUg
aGVhZGVyCisgICAgICAgIHMvXHNBUk0vL2c7CisgICAgfSBlbHNlIHsKKyAgICAgICAgIyBBUk0g
Y29kZQorICAgICAgICBzL1xzQVJNLy5hcm0vZzsKKyAgICB9CisKKyAgICAjIHB1c2gvcG9wCisg
ICAgcy8ocHVzaFxzKykoclxkKykvc3RtZGIgc3BcISwgXHskMlx9L2c7CisgICAgcy8ocG9wXHMr
KShyXGQrKS9sZG1pYSBzcFwhLCBceyQyXH0vZzsKKworICAgICMgTkVPTiBjb2RlCisgICAgcy8o
dmxkMS5cZCtccyspKHFcZCspLyQxXHskMlx9L2c7CisgICAgcy8odnRibC5cZCtccytbXixdKyks
KFteLF0rKS8kMSxceyQyXH0vZzsKKworICAgIGlmICgkdGh1bWIpIHsKKyAgICAgICAgdGh1bWI6
OkZpeFRodW1iSW5zdHJ1Y3Rpb25zKCRfLCAwKTsKKyAgICB9CisKKyAgICAjIGVhYmlfYXR0cmli
dXRlcyBudW1lcmljYWwgZXF1aXZhbGVudHMgY2FuIGJlIGZvdW5kIGluIHRoZQorICAgICMgIkFS
TSBJSEkgMDA0NUMiIGRvY3VtZW50LgorCisgICAgaWYgKCRlbGYpIHsKKyAgICAgICAgIyBSRVFV
SVJFOCBTdGFjayBpcyByZXF1aXJlZCB0byBiZSA4LWJ5dGUgYWxpZ25lZAorICAgICAgICBzL1xz
UkVRVUlSRTgvLmVhYmlfYXR0cmlidXRlIDI0LCAxIFxAVGFnX0FCSV9hbGlnbl9uZWVkZWQvZzsK
KworICAgICAgICAjIFBSRVNFUlZFOCBTdGFjayA4LWJ5dGUgYWxpZ24gaXMgcHJlc2VydmVkCisg
ICAgICAgIHMvXHNQUkVTRVJWRTgvLmVhYmlfYXR0cmlidXRlIDI1LCAxIFxAVGFnX0FCSV9hbGln
bl9wcmVzZXJ2ZWQvZzsKKyAgICB9IGVsc2UgeworICAgICAgICBzL1xzUkVRVUlSRTgvLzsKKyAg
ICAgICAgcy9cc1BSRVNFUlZFOC8vOworICAgIH0KKworICAgICMgVXNlIFBST0MgYW5kIEVORFAg
dG8gZ2l2ZSB0aGUgc3ltYm9scyBhIC5zaXplIGRpcmVjdGl2ZS4KKyAgICAjIFRoaXMgbWFrZXMg
dGhlbSBzaG93IHVwIHByb3Blcmx5IGluIGRlYnVnZ2luZyB0b29scyBsaWtlIGdkYiBhbmQgdmFs
Z3JpbmQuCisgICAgaWYgKC9cYlBST0NcYi8pCisgICAgeworICAgICAgICBteSAkcHJvYzsKKyAg
ICAgICAgL15fKFtcLjAtOUEtWl9hLXpdXHcrKVxiLzsKKyAgICAgICAgJHByb2MgPSAkMTsKKyAg
ICAgICAgcHVzaChAcHJvY19zdGFjaywgJHByb2MpIGlmICgkcHJvYyk7CisgICAgICAgIHMvXGJQ
Uk9DXGIvQCAkJi87CisgICAgfQorICAgIGlmICgvXGJFTkRQXGIvKQorICAgIHsKKyAgICAgICAg
bXkgJHByb2M7CisgICAgICAgIHMvXGJFTkRQXGIvQCAkJi87CisgICAgICAgICRwcm9jID0gcG9w
KEBwcm9jX3N0YWNrKTsKKyAgICAgICAgJF8gPSAiXHQuc2l6ZSAkcHJvYywgLi0kcHJvYyIuJF8g
aWYgKCRwcm9jIGFuZCAkZWxmKTsKKyAgICB9CisKKyAgICAjIEVRVSBkaXJlY3RpdmUKKyAgICBz
LyhcUytccyspRVFVKFxzK1xTKykvLmVxdSAkMSwgJDIvOworCisgICAgIyBCZWdpbiBtYWNybyBk
ZWZpbml0aW9uCisgICAgaWYgKC9cYk1BQ1JPXGIvKSB7CisgICAgICAgICRfID0gPFNURElOPjsK
KyAgICAgICAgcy9eLy5tYWNyby87CisgICAgICAgIHMvXCQvL2c7ICAgICAgICAgICAgICAgICMg
cmVtb3ZlIGZvcm1hbCBwYXJhbSByZWZlcmVuY2UKKyAgICAgICAgcy87L0AvZzsgICAgICAgICAg
ICAgICAgIyBjaGFuZ2UgY29tbWVudCBjaGFyYWN0ZXJzCisgICAgfQorCisgICAgIyBGb3IgbWFj
cm9zLCB1c2UgXCB0byByZWZlcmVuY2UgZm9ybWFsIHBhcmFtcworICAgIHMvXCQvXFwvZzsgICAg
ICAgICAgICAgICAgICAjIEVuZCBtYWNybyBkZWZpbml0aW9uCisgICAgcy9cYk1FTkRcYi8uZW5k
bS87ICAgICAgICAgICAgICAjIE5vIG5lZWQgdG8gdGVsbCBpdCB3aGVyZSB0byBzdG9wIGFzc2Vt
YmxpbmcKKyAgICBuZXh0IGlmIC9eXHMqRU5EXHMqJC87CisgICAgcHJpbnQ7CisgICAgcHJpbnQg
IiRjb21tZW50X3N1YiRjb21tZW50XG4iIGlmIGRlZmluZWQgJGNvbW1lbnQ7Cit9CisKKyMgTWFy
ayB0aGF0IHRoaXMgb2JqZWN0IGRvZXNuJ3QgbmVlZCBhbiBleGVjdXRhYmxlIHN0YWNrLgorcHJp
bnRmICgiXHQuc2VjdGlvblx0Lm5vdGUuR05VLXN0YWNrLFwiXCIsXCVcJXByb2diaXRzXG4iKSBp
ZiAkZWxmOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL2FkczJnYXNfYXBwbGUu
cGwgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L2J1aWxkL21ha2UvYWRzMmdhc19hcHBsZS5wbApuZXcgZmlsZSBtb2Rl
IDEwMDc1NQppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44
NDg4NzJmYTdkMWYwMzZhYTRkNTk4MzA3NGJmZjRjY2RlOTA2ZjI1Ci0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC9idWlsZC9tYWtlL2FkczJnYXNfYXBwbGUucGwKQEAgLTAsMCArMSwyMDIg
QEAKKyMhL3Vzci9iaW4vZW52IHBlcmwKKyMjCisjIyAgQ29weXJpZ2h0IChjKSAyMDEwIFRoZSBX
ZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyMjCisjIyAgVXNlIG9m
IHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZQorIyMg
IHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhl
IHNvdXJjZQorIyMgIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJp
Z2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyMjICBpbiB0aGUgZmlsZSBQQVRFTlRTLiAgQWxsIGNv
bnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisjIyAgYmUgZm91bmQgaW4gdGhlIEFVVEhP
UlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisjIworCisKKyMgYWRzMmdh
c19hcHBsZS5wbAorIyBBdXRob3I6IEVyaWMgRnVuZyAoZWZ1bmcgKGF0KSBhY20ub3JnKQorIwor
IyBDb252ZXJ0IEFSTSBEZXZlbG9wZXIgU3VpdGUgMS4wLjEgc3ludGF4IGFzc2VtYmx5IHNvdXJj
ZSB0byBHTlUgYXMgZm9ybWF0CisjCisjIFVzYWdlOiBjYXQgaW5wdXRmaWxlIHwgcGVybCBhZHMy
Z2FzX2FwcGxlLnBsID4gb3V0cHV0ZmlsZQorIworCitwcmludCAiQCBUaGlzIGZpbGUgd2FzIGNy
ZWF0ZWQgZnJvbSBhIC5hc20gZmlsZVxuIjsKK3ByaW50ICJAICB1c2luZyB0aGUgYWRzMmdhc19h
cHBsZS5wbCBzY3JpcHQuXG5cbiI7CitwcmludCAiXHQuc3ludGF4IHVuaWZpZWRcbiI7CisKK215
ICVyZWdpc3Rlcl9hbGlhc2VzOworbXkgJW1hY3JvX2FsaWFzZXM7CisKK215IEBtYXBwaW5nX2xp
c3QgPSAoIlwkMCIsICJcJDEiLCAiXCQyIiwgIlwkMyIsICJcJDQiLCAiXCQ1IiwgIlwkNiIsICJc
JDciLCAiXCQ4IiwgIlwkOSIpOworCitteSBAaW5jb21pbmdfYXJyYXk7CisKK215IEBpbXBvcnRl
ZF9mdW5jdGlvbnM7CisKKyMgUGVybCB0cmltIGZ1bmN0aW9uIHRvIHJlbW92ZSB3aGl0ZXNwYWNl
IGZyb20gdGhlIHN0YXJ0IGFuZCBlbmQgb2YgdGhlIHN0cmluZworc3ViIHRyaW0oJCkKK3sKKyAg
ICBteSAkc3RyaW5nID0gc2hpZnQ7CisgICAgJHN0cmluZyA9fiBzL15ccysvLzsKKyAgICAkc3Ry
aW5nID1+IHMvXHMrJC8vOworICAgIHJldHVybiAkc3RyaW5nOworfQorCit3aGlsZSAoPFNURElO
PikKK3sKKyAgICAjIExvYWQgYW5kIHN0b3JlIGFsaWdubWVudAorICAgIHMvQC8sOi9nOworCisg
ICAgIyBDb21tZW50IGNoYXJhY3RlcgorICAgIHMvOy8gQC9nOworCisgICAgIyBIZXhhZGVjaW1h
bCBjb25zdGFudHMgcHJlZmFjZWQgYnkgMHgKKyAgICBzLyMmLyMweC9nOworCisgICAgIyBDb252
ZXJ0IDpPUjogdG8gfAorICAgIHMvOk9SOi8gfCAvZzsKKworICAgICMgQ29udmVydCA6QU5EOiB0
byAmCisgICAgcy86QU5EOi8gJiAvZzsKKworICAgICMgQ29udmVydCA6Tk9UOiB0byB+CisgICAg
cy86Tk9UOi8gfiAvZzsKKworICAgICMgQ29udmVydCA6U0hMOiB0byA8PAorICAgIHMvOlNITDov
IDw8IC9nOworCisgICAgIyBDb252ZXJ0IDpTSFI6IHRvID4+CisgICAgcy86U0hSOi8gPj4gL2c7
CisKKyAgICAjIENvbnZlcnQgRUxTRSB0byAuZWxzZQorICAgIHMvXGJFTFNFXGIvLmVsc2UvZzsK
KworICAgICMgQ29udmVydCBFTkRJRiB0byAuZW5kaWYKKyAgICBzL1xiRU5ESUZcYi8uZW5kaWYv
ZzsKKworICAgICMgQ29udmVydCBFTFNFSUYgdG8gLmVsc2VpZgorICAgIHMvXGJFTFNFSUZcYi8u
ZWxzZWlmL2c7CisKKyAgICAjIENvbnZlcnQgTFRPUkcgdG8gLmx0b3JnCisgICAgcy9cYkxUT1JH
XGIvLmx0b3JnL2c7CisKKyAgICAjIENvbnZlcnQgSUYgOkRFRjp0byAuaWYKKyAgICAjIGdjYyBk
b2Vzbid0IGhhdmUgdGhlIGFiaWxpdHkgdG8gZG8gYSBjb25kaXRpb25hbAorICAgICMgaWYgZGVm
aW5lZCB2YXJpYWJsZSB0aGF0IGlzIHNldCBieSBJRiA6REVGOiBvbgorICAgICMgYXJtYXNtLCBz
byBjb252ZXJ0IGl0IHRvIGEgbm9ybWFsIC5pZiBhbmQgdGhlbgorICAgICMgbWFrZSBzdXJlIHRv
IGRlZmluZSBhIHZhbHVlIGVsZXNld2hlcmUKKyAgICBpZiAocy9cYklGIDpERUY6XGIvLmlmIC9n
KQorICAgIHsKKyAgICAgICAgcy89Lz09L2c7CisgICAgfQorCisgICAgIyBDb252ZXJ0IElGIHRv
IC5pZgorICAgIGlmIChzL1xiSUZcYi8uaWYvZykKKyAgICB7CisgICAgICAgIHMvPS89PS9nOwor
ICAgIH0KKworICAgICMgQ29udmVydCBJTkNMVURFIHRvIC5JTkNMVURFICJmaWxlIgorICAgIHMv
SU5DTFVERShccyopKC4qKSQvLmluY2x1ZGUgJDFcIiQyXCIvOworCisgICAgIyBDb2RlIGRpcmVj
dGl2ZSAoQVJNIHZzIFRodW1iKQorICAgIHMvQ09ERShbMC05XVswLTldKS8uY29kZSAkMS87CisK
KyAgICAjIE5vIEFSRUEgcmVxdWlyZWQKKyAgICAjIEJ1dCBBTElHTnMgaW4gQVJFQSBtdXN0IGJl
IG9iZXllZAorICAgIHMvXlxzKkFSRUEuKkFMSUdOPShbMC05XSkkLy50ZXh0XG4ucDJhbGlnbiAk
MS87CisgICAgIyBJZiBubyBBTElHTiwgc3RyaXAgdGhlIEFSRUEgYW5kIGFsaWduIHRvIDQgYnl0
ZXMKKyAgICBzL15ccypBUkVBLiokLy50ZXh0XG4ucDJhbGlnbiAyLzsKKworICAgICMgRENEIHRv
IC53b3JkCisgICAgIyBUaGlzIG9uZSBpcyBmb3IgaW5jb21pbmcgc3ltYm9scworICAgIHMvRENE
XHMrXHwoXHcqKVx8Ly5sb25nICQxLzsKKworICAgICMgRENXIHRvIC5zaG9ydAorICAgIHMvRENX
XHMrXHwoXHcqKVx8Ly5zaG9ydCAkMS87CisgICAgcy9EQ1coLiopLy5zaG9ydCAkMS87CisKKyAg
ICAjIENvbnN0YW50cyBkZWZpbmVkIGluIHNjb3BlCisgICAgcy9EQ0QoLiopLy5sb25nICQxLzsK
KyAgICBzL0RDQiguKikvLmJ5dGUgJDEvOworCisgICAgIyBNYWtlIGZ1bmN0aW9uIHZpc2libGUg
dG8gbGlua2VyLCBhbmQgbWFrZSBhZGRpdGlvbmFsIHN5bWJvbCB3aXRoCisgICAgIyBwcmVwZW5k
ZWQgdW5kZXJzY29yZQorICAgIHMvRVhQT1JUXHMrXHwoW1wkXHddKilcfC8uZ2xvYmwgXyQxXG5c
dC5nbG9ibCAkMS87CisKKyAgICAjIFByZXBlbmQgaW1wb3J0ZWQgZnVuY3Rpb25zIHdpdGggXwor
ICAgIGlmIChzL0lNUE9SVFxzK1x8KFtcJFx3XSopXHwvLmdsb2JsICQxLykKKyAgICB7CisgICAg
ICAgICRmdW5jdGlvbiA9IHRyaW0oJDEpOworICAgICAgICBwdXNoKEBpbXBvcnRlZF9mdW5jdGlv
bnMsICRmdW5jdGlvbik7CisgICAgfQorCisgICAgZm9yZWFjaCAkZnVuY3Rpb24gKEBpbXBvcnRl
ZF9mdW5jdGlvbnMpCisgICAgeworICAgICAgICBzLyRmdW5jdGlvbi9fJGZ1bmN0aW9uLzsKKyAg
ICB9CisKKyAgICAjIE5vIHZlcnRpY2FsIGJhcnMgcmVxdWlyZWQ7IG1ha2UgYWRkaXRpb25hbCBz
eW1ib2wgd2l0aCBwcmVwZW5kZWQKKyAgICAjIHVuZGVyc2NvcmUKKyAgICBzL15cfChcJD9cdysp
XHwvXyQxXG5cdCQxOi9nOworCisgICAgIyBMYWJlbHMgbmVlZCB0cmFpbGluZyBjb2xvbgorIyAg
IHMvXihcdyspLyQxOi8gaWYgIS9FUVUvOworICAgICMgcHV0IHRoZSBjb2xvbiBhdCB0aGUgZW5k
IG9mIHRoZSBsaW5lIGluIHRoZSBtYWNybworICAgIHMvXihbYS16QS1aXzAtOVwkXSspLyQxOi8g
aWYgIS9FUVUvOworCisgICAgIyBBTElHTiBkaXJlY3RpdmUKKyAgICBzL1xiQUxJR05cYi8uYmFs
aWduL2c7CisKKyAgICAjIFN0cmlwIEFSTQorICAgIHMvXHNBUk0vQCBBUk0vZzsKKworICAgICMg
U3RyaXAgUkVRVUlSRTgKKyAgICAjcy9cc1JFUVVJUkU4L0AgUkVRVUlSRTgvZzsKKyAgICBzL1xz
UkVRVUlSRTgvQCAvZzsKKworICAgICMgU3RyaXAgUFJFU0VSVkU4CisgICAgcy9cc1BSRVNFUlZF
OC9AIFBSRVNFUlZFOC9nOworCisgICAgIyBTdHJpcCBQUk9DIGFuZCBFTkRQUk9DCisgICAgcy9c
YlBST0NcYi9AL2c7CisgICAgcy9cYkVORFBcYi9AL2c7CisKKyAgICAjIEVRVSBkaXJlY3RpdmUK
KyAgICBzLyguKilFUVUoLiopLy5zZXQgJDEsICQyLzsKKworICAgICMgQmVnaW4gbWFjcm8gZGVm
aW5pdGlvbgorICAgIGlmICgvXGJNQUNST1xiLykKKyAgICB7CisgICAgICAgICMgUHJvY2VzcyBu
ZXh0IGxpbmUgZG93biwgd2hpY2ggd2lsbCBiZSB0aGUgbWFjcm8gZGVmaW5pdGlvbgorICAgICAg
ICAkXyA9IDxTVERJTj47CisKKyAgICAgICAgJHRyaW1tZWQgPSB0cmltKCRfKTsKKworICAgICAg
ICAjIHJlbW92ZSBjb21tYXMgdGhhdCBhcmUgc2VwYXJhdGluZyBsaXN0CisgICAgICAgICR0cmlt
bWVkID1+IHMvLC8vZzsKKworICAgICAgICAjIHN0cmluZyB0byBhcnJheQorICAgICAgICBAaW5j
b21pbmdfYXJyYXkgPSBzcGxpdCgvXHMrLywgJHRyaW1tZWQpOworCisgICAgICAgIHByaW50ICIu
bWFjcm8gQGluY29taW5nX2FycmF5WzBdXG4iOworCisgICAgICAgICMgcmVtb3ZlIHRoZSBmaXJz
dCBlbGVtZW50LCBhcyB0aGF0IGlzIHRoZSBuYW1lIG9mIHRoZSBtYWNybworICAgICAgICBzaGlm
dCAoQGluY29taW5nX2FycmF5KTsKKworICAgICAgICBAbWFjcm9fYWxpYXNlc3tAaW5jb21pbmdf
YXJyYXl9ID0gQG1hcHBpbmdfbGlzdDsKKworICAgICAgICBuZXh0OworICAgIH0KKworICAgIHdo
aWxlICgoJGtleSwgJHZhbHVlKSA9IGVhY2goJW1hY3JvX2FsaWFzZXMpKQorICAgIHsKKyAgICAg
ICAgJGtleSA9fiBzL1wkL1xcXCQvOworICAgICAgICBzLyRrZXlcYi8kdmFsdWUvZzsKKyAgICB9
CisKKyAgICAjIEZvciBtYWNyb3MsIHVzZSBcIHRvIHJlZmVyZW5jZSBmb3JtYWwgcGFyYW1zCisj
ICAgcy9cJC9cXC9nOyAgICAgICAgICAgICAgICAgICMgRW5kIG1hY3JvIGRlZmluaXRpb24KKyAg
ICBzL1xiTUVORFxiLy5lbmRtLzsgICAgICAgICAgICAgICMgTm8gbmVlZCB0byB0ZWxsIGl0IHdo
ZXJlIHRvIHN0b3AgYXNzZW1ibGluZworICAgIG5leHQgaWYgL15ccypFTkRccyokLzsKKworICAg
IHByaW50OworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL2FybWxpbmtfYWRh
cHRlci5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9hcm1saW5rX2FkYXB0ZXIuc2gKbmV3IGZp
bGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNzVjMzQyZTk3Y2UzOTIzZWZmMGVlYzg2NDdhOTA4MjNiMTZjNGQ0ZgotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9hcm1saW5rX2FkYXB0ZXIuc2gKQEAgLTAs
MCArMSw1NCBAQAorIyEvYmluL3NoCisjIworIyMgIENvcHlyaWdodCAoYykgMjAxMCBUaGUgV2Vi
TSBwcm9qZWN0IGF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisjIworIyMgIFVzZSBvZiB0
aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UKKyMjICB0
aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGluIHRoZSByb290IG9mIHRoZSBz
b3VyY2UKKyMjICB0cmVlLiBBbiBhZGRpdGlvbmFsIGludGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdo
dHMgZ3JhbnQgY2FuIGJlIGZvdW5kCisjIyAgaW4gdGhlIGZpbGUgUEFURU5UUy4gIEFsbCBjb250
cmlidXRpbmcgcHJvamVjdCBhdXRob3JzIG1heQorIyMgIGJlIGZvdW5kIGluIHRoZSBBVVRIT1JT
IGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZSB0cmVlLgorIyMKKworCit2ZXJib3NlPTAK
K3NldCAtLSAkKgorZm9yIGk7IGRvCisgICAgaWYgWyAiJGkiID0gIi1vIiBdOyB0aGVuCisgICAg
ICAgIG9uX29mPTEKKyAgICBlbGlmIFsgIiRpIiA9ICItdiIgXTsgdGhlbgorICAgICAgICB2ZXJi
b3NlPTEKKyAgICBlbGlmIFsgIiRpIiA9ICItZyIgXTsgdGhlbgorICAgICAgICBhcmdzPSIke2Fy
Z3N9IC0tZGVidWciCisgICAgZWxpZiBbICIkb25fb2YiID0gIjEiIF07IHRoZW4KKyAgICAgICAg
b3V0ZmlsZT0kaQorICAgICAgICBvbl9vZj0wCisgICAgZWxpZiBbIC1mICIkaSIgXTsgdGhlbgor
ICAgICAgICBpbmZpbGVzPSIkaW5maWxlcyAkaSIKKyAgICBlbGlmIFsgIiR7aSMtbH0iICE9ICIk
aSIgXTsgdGhlbgorICAgICAgICBsaWJzPSIkbGlicyAke2kjLWx9IgorICAgIGVsaWYgWyAiJHtp
Iy1MfSIgIT0gIiRpIiBdOyB0aGVuCisgICAgICAgIGxpYnBhdGhzPSIke2xpYnBhdGhzfSAke2kj
LUx9IgorICAgIGVsc2UKKyAgICAgICAgYXJncz0iJHthcmdzfSAke2l9IgorICAgIGZpCisgICAg
c2hpZnQKK2RvbmUKKworIyBBYnNvbHV0aXplIGxpYnJhcnkgZmlsZSBuYW1lcworZm9yIGYgaW4g
JGxpYnM7IGRvCisgICAgZm91bmQ9MAorICAgIGZvciBkIGluICRsaWJwYXRoczsgZG8KKyAgICAg
ICAgWyAtZiAiJGQvJGYiIF0gJiYgaW5maWxlcz0iJGluZmlsZXMgJGQvJGYiICYmIGZvdW5kPTEg
JiYgYnJlYWsKKyAgICAgICAgWyAtZiAiJGQvbGliJHtmfS5zbyIgXSAmJiBpbmZpbGVzPSIkaW5m
aWxlcyAkZC9saWIke2Z9LnNvIiAmJiBmb3VuZD0xICYmIGJyZWFrCisgICAgICAgIFsgLWYgIiRk
L2xpYiR7Zn0uYSIgXSAmJiBpbmZpbGVzPSIkaW5maWxlcyAkZC9saWIke2Z9LmEiICYmIGZvdW5k
PTEgJiYgYnJlYWsKKyAgICBkb25lCisgICAgWyAkZm91bmQgLWVxIDAgXSAmJiBpbmZpbGVzPSIk
aW5maWxlcyAkZiIKK2RvbmUKK2ZvciBkIGluICRsaWJwYXRoczsgZG8KKyAgICBbIC1uICIkbGli
c2VhcmNocGF0aCIgXSAmJiBsaWJzZWFyY2hwYXRoPSIke2xpYnNlYXJjaHBhdGh9LCIKKyAgICBs
aWJzZWFyY2hwYXRoPSIke2xpYnNlYXJjaHBhdGh9JGQiCitkb25lCisKK2NtZD0iYXJtbGluayAk
YXJncyAtLXVzZXJsaWJwYXRoPSRsaWJzZWFyY2hwYXRoIC0tb3V0cHV0PSRvdXRmaWxlICRpbmZp
bGVzIgorWyAkdmVyYm9zZSAtZXEgMSBdICYmIGVjaG8gJGNtZAorJGNtZApkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC9idWlsZC9tYWtlL2NvbmZpZ3VyZS5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFr
ZS9jb25maWd1cmUuc2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzRlOTM4ZmM3MjdkYzBlNjQzODJjN2NhODg3MmUx
OWQwNzRkYmExMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9jb25m
aWd1cmUuc2gKQEAgLTAsMCArMSwxNjMzIEBACisjIS9iaW4vc2gKKyMjCisjIyAgY29uZmlndXJl
LnNoCisjIworIyMgIFRoaXMgc2NyaXB0IGlzIHNvdXJjZWQgYnkgdGhlIG1haW4gY29uZmlndXJl
IHNjcmlwdCBhbmQgY29udGFpbnMKKyMjICB1dGlsaXR5IGZ1bmN0aW9ucyBhbmQgb3RoZXIgY29t
bW9uIGJpdHMgdGhhdCBhcmVuJ3Qgc3RyaWN0bHkgbGlidnB4CisjIyAgcmVsYXRlZC4KKyMjCisj
IyAgVGhpcyBidWlsZCBzeXN0ZW0gaXMgYmFzZWQgaW4gcGFydCBvbiB0aGUgRkZtcGVnIGNvbmZp
Z3VyZSBzY3JpcHQuCisjIworCisKKyMKKyMgTG9nZ2luZyAvIE91dHB1dCBGdW5jdGlvbnMKKyMK
K2RpZV91bmtub3duKCl7CisgIGVjaG8gIlVua25vd24gb3B0aW9uIFwiJDFcIi4iCisgIGVjaG8g
IlNlZSAkMCAtLWhlbHAgZm9yIGF2YWlsYWJsZSBvcHRpb25zLiIKKyAgY2xlYW5fdGVtcF9maWxl
cworICBleGl0IDEKK30KKworZGllKCkgeworICBlY2hvICIkQCIKKyAgZWNobworICBlY2hvICJD
b25maWd1cmF0aW9uIGZhaWxlZC4gVGhpcyBjb3VsZCByZWZsZWN0IGEgbWlzY29uZmlndXJhdGlv
biBvZiB5b3VyIgorICBlY2hvICJ0b29sY2hhaW5zLCBpbXByb3BlciBvcHRpb25zIHNlbGVjdGVk
LCBvciBhbm90aGVyIHByb2JsZW0uIElmIHlvdSIKKyAgZWNobyAiZG9uJ3Qgc2VlIGFueSB1c2Vm
dWwgZXJyb3IgbWVzc2FnZXMgYWJvdmUsIHRoZSBuZXh0IHN0ZXAgaXMgdG8gbG9vayIKKyAgZWNo
byAiYXQgdGhlIGNvbmZpZ3VyZSBlcnJvciBsb2cgZmlsZSAoJGxvZ2ZpbGUpIHRvIGRldGVybWlu
ZSB3aGF0IgorICBlY2hvICJjb25maWd1cmUgd2FzIHRyeWluZyB0byBkbyB3aGVuIGl0IGRpZWQu
IgorICBjbGVhbl90ZW1wX2ZpbGVzCisgIGV4aXQgMQorfQorCitsb2coKXsKKyAgZWNobyAiJEAi
ID4+JGxvZ2ZpbGUKK30KKworbG9nX2ZpbGUoKXsKKyAgbG9nIEJFR0lOICQxCisgIGNhdCAtbiAk
MSA+PiRsb2dmaWxlCisgIGxvZyBFTkQgJDEKK30KKworbG9nX2VjaG8oKSB7CisgIGVjaG8gIiRA
IgorICBsb2cgIiRAIgorfQorCitmd3JpdGUgKCkgeworICBvdXRmaWxlPSQxCisgIHNoaWZ0Cisg
IGVjaG8gIiRAIiA+PiAke291dGZpbGV9Cit9CisKK3Nob3dfaGVscF9wcmUoKXsKKyAgZm9yIG9w
dCBpbiAke0NNRExJTkVfU0VMRUNUfTsgZG8KKyAgICBvcHQyPWBlY2hvICRvcHQgfCBzZWQgLWUg
J3M7XzstO2cnYAorICAgIGlmIGVuYWJsZWQgJG9wdDsgdGhlbgorICAgICAgZXZhbCAidG9nZ2xl
XyR7b3B0fT1cIi0tZGlzYWJsZS0ke29wdDJ9XCIiCisgICAgZWxzZQorICAgICAgZXZhbCAidG9n
Z2xlXyR7b3B0fT1cIi0tZW5hYmxlLSR7b3B0Mn0gXCIiCisgICAgZmkKKyAgZG9uZQorCisgIGNh
dCA8PEVPRgorVXNhZ2U6IGNvbmZpZ3VyZSBbb3B0aW9uc10KK09wdGlvbnM6CisKK0J1aWxkIG9w
dGlvbnM6CisgIC0taGVscCAgICAgICAgICAgICAgICAgICAgICBwcmludCB0aGlzIG1lc3NhZ2UK
KyAgLS1sb2c9eWVzfG5vfEZJTEUgICAgICAgICAgIGZpbGUgY29uZmlndXJlIGxvZyBpcyB3cml0
dGVuIHRvIFtjb25maWcubG9nXQorICAtLXRhcmdldD1UQVJHRVQgICAgICAgICAgICAgdGFyZ2V0
IHBsYXRmb3JtIHR1cGxlIFtnZW5lcmljLWdudV0KKyAgLS1jcHU9Q1BVICAgICAgICAgICAgICAg
ICAgIG9wdGltaXplIGZvciBhIHNwZWNpZmljIGNwdSByYXRoZXIgdGhhbiBhIGZhbWlseQorICAt
LWV4dHJhLWNmbGFncz1FQ0ZMQUdTICAgICAgYWRkIEVDRkxBR1MgdG8gQ0ZMQUdTIFskQ0ZMQUdT
XQorICAtLWV4dHJhLWN4eGZsYWdzPUVDWFhGTEFHUyAgYWRkIEVDWFhGTEFHUyB0byBDWFhGTEFH
UyBbJENYWEZMQUdTXQorICAke3RvZ2dsZV9leHRyYV93YXJuaW5nc30gICAgZW1pdCBoYXJtbGVz
cyB3YXJuaW5ncyAoYWx3YXlzIG5vbi1mYXRhbCkKKyAgJHt0b2dnbGVfd2Vycm9yfSAgICAgICAg
ICAgIHRyZWF0IHdhcm5pbmdzIGFzIGVycm9ycywgaWYgcG9zc2libGUKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIChub3QgYXZhaWxhYmxlIHdpdGggYWxsIGNvbXBpbGVycykKKyAgJHt0
b2dnbGVfb3B0aW1pemF0aW9uc30gICAgIHR1cm4gb24vb2ZmIGNvbXBpbGVyIG9wdGltaXphdGlv
biBmbGFncworICAke3RvZ2dsZV9waWN9ICAgICAgICAgICAgICAgdHVybiBvbi9vZmYgUG9zaXRp
b24gSW5kZXBlbmRlbnQgQ29kZQorICAke3RvZ2dsZV9jY2FjaGV9ICAgICAgICAgICAgdHVybiBv
bi9vZmYgY29tcGlsZXIgY2FjaGUKKyAgJHt0b2dnbGVfZGVidWd9ICAgICAgICAgICAgIGVuYWJs
ZS9kaXNhYmxlIGRlYnVnIG1vZGUKKyAgJHt0b2dnbGVfZ3Byb2Z9ICAgICAgICAgICAgIGVuYWJs
ZS9kaXNhYmxlIGdwcm9mIHByb2ZpbGluZyBpbnN0cnVtZW50YXRpb24KKyAgJHt0b2dnbGVfZ2Nv
dn0gICAgICAgICAgICAgIGVuYWJsZS9kaXNhYmxlIGdjb3YgY292ZXJhZ2UgaW5zdHJ1bWVudGF0
aW9uCisgICR7dG9nZ2xlX3RodW1ifSAgICAgICAgICAgICBlbmFibGUvZGlzYWJsZSBidWlsZGlu
ZyBhcm0gYXNzZW1ibHkgaW4gdGh1bWIgbW9kZQorICAke3RvZ2dsZV9kZXBlbmRlbmN5X3RyYWNr
aW5nfQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzYWJsZSB0byBzcGVlZCB1cCBv
bmUtdGltZSBidWlsZAorCitJbnN0YWxsIG9wdGlvbnM6CisgICR7dG9nZ2xlX2luc3RhbGxfZG9j
c30gICAgICBjb250cm9sIHdoZXRoZXIgZG9jcyBhcmUgaW5zdGFsbGVkCisgICR7dG9nZ2xlX2lu
c3RhbGxfYmluc30gICAgICBjb250cm9sIHdoZXRoZXIgYmluYXJpZXMgYXJlIGluc3RhbGxlZAor
ICAke3RvZ2dsZV9pbnN0YWxsX2xpYnN9ICAgICAgY29udHJvbCB3aGV0aGVyIGxpYnJhcmllcyBh
cmUgaW5zdGFsbGVkCisgICR7dG9nZ2xlX2luc3RhbGxfc3Jjc30gICAgICBjb250cm9sIHdoZXRo
ZXIgc291cmNlcyBhcmUgaW5zdGFsbGVkCisKKworRU9GCit9CisKK3Nob3dfaGVscF9wb3N0KCl7
CisgIGNhdCA8PEVPRgorCisKK05PVEVTOgorICAgIE9iamVjdCBmaWxlcyBhcmUgYnVpbHQgYXQg
dGhlIHBsYWNlIHdoZXJlIGNvbmZpZ3VyZSBpcyBsYXVuY2hlZC4KKworICAgIEFsbCBib29sZWFu
IG9wdGlvbnMgY2FuIGJlIG5lZ2F0ZWQuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIHRoZSBvcHBvc2l0
ZQorICAgIG9mIHRoYXQgc2hvd24gYWJvdmUuIElmIHRoZSBvcHRpb24gLS1kaXNhYmxlLWZvbyBp
cyBsaXN0ZWQsIHRoZW4KKyAgICB0aGUgZGVmYXVsdCB2YWx1ZSBmb3IgZm9vIGlzIGVuYWJsZWQu
CisKK1N1cHBvcnRlZCB0YXJnZXRzOgorRU9GCisgIHNob3dfdGFyZ2V0cyAke2FsbF9wbGF0Zm9y
bXN9CisgIGVjaG8KKyAgZXhpdCAxCit9CisKK3Nob3dfdGFyZ2V0cygpIHsKKyAgd2hpbGUgWyAt
biAiJCoiIF07IGRvCisgICAgaWYgWyAiJHsxJSUtKn0iID0gIiR7MiUlLSp9IiBdOyB0aGVuCisg
ICAgICBpZiBbICIkezIlJS0qfSIgPSAiJHszJSUtKn0iIF07IHRoZW4KKyAgICAgICAgcHJpbnRm
ICIgICAgJS0yNHMgJS0yNHMgJS0yNHNcbiIgIiQxIiAiJDIiICIkMyIKKyAgICAgICAgc2hpZnQ7
IHNoaWZ0OyBzaGlmdAorICAgICAgZWxzZQorICAgICAgICBwcmludGYgIiAgICAlLTI0cyAlLTI0
c1xuIiAiJDEiICIkMiIKKyAgICAgICAgc2hpZnQ7IHNoaWZ0CisgICAgICBmaQorICAgIGVsc2UK
KyAgICAgIHByaW50ZiAiICAgICUtMjRzXG4iICIkMSIKKyAgICAgIHNoaWZ0CisgICAgZmkKKyAg
ZG9uZQorfQorCitzaG93X2hlbHAoKSB7CisgIHNob3dfaGVscF9wcmUKKyAgc2hvd19oZWxwX3Bv
c3QKK30KKworIworIyBMaXN0IFByb2Nlc3NpbmcgRnVuY3Rpb25zCisjCitzZXRfYWxsKCl7Cisg
IHZhbHVlPSQxCisgIHNoaWZ0CisgIGZvciB2YXIgaW4gJCo7IGRvCisgICAgZXZhbCAkdmFyPSR2
YWx1ZQorICBkb25lCit9CisKK2lzX2luKCl7CisgIHZhbHVlPSQxCisgIHNoaWZ0CisgIGZvciB2
YXIgaW4gJCo7IGRvCisgICAgWyAkdmFyID0gJHZhbHVlIF0gJiYgcmV0dXJuIDAKKyAgZG9uZQor
ICByZXR1cm4gMQorfQorCithZGRfY2ZsYWdzKCkgeworICBDRkxBR1M9IiR7Q0ZMQUdTfSAkQCIK
KyAgQ1hYRkxBR1M9IiR7Q1hYRkxBR1N9ICRAIgorfQorCithZGRfY2ZsYWdzX29ubHkoKSB7Cisg
IENGTEFHUz0iJHtDRkxBR1N9ICRAIgorfQorCithZGRfY3h4ZmxhZ3Nfb25seSgpIHsKKyAgQ1hY
RkxBR1M9IiR7Q1hYRkxBR1N9ICRAIgorfQorCithZGRfbGRmbGFncygpIHsKKyAgTERGTEFHUz0i
JHtMREZMQUdTfSAkQCIKK30KKworYWRkX2FzZmxhZ3MoKSB7CisgIEFTRkxBR1M9IiR7QVNGTEFH
U30gJEAiCit9CisKK2FkZF9leHRyYWxpYnMoKSB7CisgIGV4dHJhbGlicz0iJHtleHRyYWxpYnN9
ICRAIgorfQorCisjCisjIEJvb2xlYW4gTWFuaXB1bGF0aW9uIEZ1bmN0aW9ucworIworCitlbmFi
bGVfZmVhdHVyZSgpeworICBzZXRfYWxsIHllcyAkKgorfQorCitkaXNhYmxlX2ZlYXR1cmUoKXsK
KyAgc2V0X2FsbCBubyAkKgorfQorCitlbmFibGVkKCl7CisgIGV2YWwgdGVzdCAieFwkJDEiID0g
Inh5ZXMiCit9CisKK2Rpc2FibGVkKCl7CisgIGV2YWwgdGVzdCAieFwkJDEiID0gInhubyIKK30K
KworZW5hYmxlX2NvZGVjKCl7CisgIGVuYWJsZWQgIiR7MX0iIHx8IGVjaG8gIiAgZW5hYmxpbmcg
JHsxfSIKKyAgZW5hYmxlX2ZlYXR1cmUgIiR7MX0iCisKKyAgaXNfaW4gIiR7MX0iIHZwOCB2cDkg
JiYgZW5hYmxlX2ZlYXR1cmUgIiR7MX1fZW5jb2RlciIgIiR7MX1fZGVjb2RlciIKK30KKworZGlz
YWJsZV9jb2RlYygpeworICBkaXNhYmxlZCAiJHsxfSIgfHwgZWNobyAiICBkaXNhYmxpbmcgJHsx
fSIKKyAgZGlzYWJsZV9mZWF0dXJlICIkezF9IgorCisgIGlzX2luICIkezF9IiB2cDggdnA5ICYm
IGRpc2FibGVfZmVhdHVyZSAiJHsxfV9lbmNvZGVyIiAiJHsxfV9kZWNvZGVyIgorfQorCisjIEl0
ZXJhdGVzIHRocm91Z2ggcG9zaXRpb25hbCBwYXJhbWV0ZXJzLCBjaGVja3MgdG8gY29uZmlybSB0
aGUgcGFyYW1ldGVyIGhhcworIyBub3QgYmVlbiBleHBsaWNpdGx5IChmb3JjZSkgZGlzYWJsZWQs
IGFuZCBlbmFibGVzIHRoZSBzZXR0aW5nIGNvbnRyb2xsZWQgYnkKKyMgdGhlIHBhcmFtZXRlciB3
aGVuIHRoZSBzZXR0aW5nIGlzIG5vdCBkaXNhYmxlZC4KKyMgTm90ZTogRG9lcyBOT1QgYWx0ZXIg
UlRDRCBnZW5lcmF0aW9uIG9wdGlvbnMgKCRSVENEX09QVElPTlMpLgorc29mdF9lbmFibGUoKSB7
CisgIGZvciB2YXIgaW4gJCo7IGRvCisgICAgaWYgISBkaXNhYmxlZCAkdmFyOyB0aGVuCisgICAg
ICBlbmFibGVkICR2YXIgfHwgbG9nX2VjaG8gIiAgZW5hYmxpbmcgJHZhciIKKyAgICAgIGVuYWJs
ZV9mZWF0dXJlICR2YXIKKyAgICBmaQorICBkb25lCit9CisKKyMgSXRlcmF0ZXMgdGhyb3VnaCBw
b3NpdGlvbmFsIHBhcmFtZXRlcnMsIGNoZWNrcyB0byBjb25maXJtIHRoZSBwYXJhbWV0ZXIgaGFz
CisjIG5vdCBiZWVuIGV4cGxpY2l0bHkgKGZvcmNlKSBlbmFibGVkLCBhbmQgZGlzYWJsZXMgdGhl
IHNldHRpbmcgY29udHJvbGxlZCBieQorIyB0aGUgcGFyYW1ldGVyIHdoZW4gdGhlIHNldHRpbmcg
aXMgbm90IGVuYWJsZWQuCisjIE5vdGU6IERvZXMgTk9UIGFsdGVyIFJUQ0QgZ2VuZXJhdGlvbiBv
cHRpb25zICgkUlRDRF9PUFRJT05TKS4KK3NvZnRfZGlzYWJsZSgpIHsKKyAgZm9yIHZhciBpbiAk
KjsgZG8KKyAgICBpZiAhIGVuYWJsZWQgJHZhcjsgdGhlbgorICAgICAgZGlzYWJsZWQgJHZhciB8
fCBsb2dfZWNobyAiICBkaXNhYmxpbmcgJHZhciIKKyAgICAgIGRpc2FibGVfZmVhdHVyZSAkdmFy
CisgICAgZmkKKyAgZG9uZQorfQorCisjCisjIFRleHQgUHJvY2Vzc2luZyBGdW5jdGlvbnMKKyMK
K3RvdXBwZXIoKXsKKyAgZWNobyAiJEAiIHwgdHIgYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXog
QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVoKK30KKwordG9sb3dlcigpeworICBlY2hvICIkQCIg
fCB0ciBBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWiBhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5
egorfQorCisjCisjIFRlbXBvcmFyeSBGaWxlIEZ1bmN0aW9ucworIworc291cmNlX3BhdGg9JHsw
JS8qfQorZW5hYmxlX2ZlYXR1cmUgc291cmNlX3BhdGhfdXNlZAoraWYgWyAteiAiJHNvdXJjZV9w
YXRoIiBdIHx8IFsgIiRzb3VyY2VfcGF0aCIgPSAiLiIgXTsgdGhlbgorICBzb3VyY2VfcGF0aD0i
YHB3ZGAiCisgIGRpc2FibGVfZmVhdHVyZSBzb3VyY2VfcGF0aF91c2VkCitmaQorIyBNYWtlZmls
ZXMgZ3JlZWRpbHkgcHJvY2VzcyB0aGUgJyMnIGNoYXJhY3RlciBhcyBhIGNvbW1lbnQsIGV2ZW4g
aWYgaXQgaXMKKyMgaW5zaWRlIHF1b3Rlcy4gU28sIHRoaXMgY2hhcmFjdGVyIG11c3QgYmUgZXNj
YXBlZCBpbiBhbGwgcGF0aHMgaW4gTWFrZWZpbGVzLgorc291cmNlX3BhdGhfbWs9JChlY2hvICRz
b3VyY2VfcGF0aCB8IHNlZCAtZSAncztcIztcXFwjO2cnKQorCitpZiB0ZXN0ICEgLXogIiRUTVBE
SVIiIDsgdGhlbgorICBUTVBESVJ4PSIke1RNUERJUn0iCitlbGlmIHRlc3QgISAteiAiJFRFTVBE
SVIiIDsgdGhlbgorICBUTVBESVJ4PSIke1RFTVBESVJ9IgorZWxzZQorICBUTVBESVJ4PSIvdG1w
IgorZmkKK1JBTkQ9JChhd2sgJ0JFR0lOIHsgc3JhbmQoKTsgcHJpbnRmICIlZFxuIiwocmFuZCgp
ICogMzI3NjgpfScpCitUTVBfSD0iJHtUTVBESVJ4fS92cHgtY29uZi0kJC0ke1JBTkR9LmgiCitU
TVBfQz0iJHtUTVBESVJ4fS92cHgtY29uZi0kJC0ke1JBTkR9LmMiCitUTVBfQ0M9IiR7VE1QRElS
eH0vdnB4LWNvbmYtJCQtJHtSQU5EfS5jYyIKK1RNUF9PPSIke1RNUERJUnh9L3ZweC1jb25mLSQk
LSR7UkFORH0ubyIKK1RNUF9YPSIke1RNUERJUnh9L3ZweC1jb25mLSQkLSR7UkFORH0ueCIKK1RN
UF9BU009IiR7VE1QRElSeH0vdnB4LWNvbmYtJCQtJHtSQU5EfS5hc20iCisKK2NsZWFuX3RlbXBf
ZmlsZXMoKSB7CisgIHJtIC1mICR7VE1QX0N9ICR7VE1QX0NDfSAke1RNUF9IfSAke1RNUF9PfSAk
e1RNUF9YfSAke1RNUF9BU019CisgIGVuYWJsZWQgZ2NvdiAmJiBybSAtZiAke1RNUF9DJS5jfS5n
Y25vICR7VE1QX0NDJS5jY30uZ2NubworfQorCisjCisjIFRvb2xjaGFpbiBDaGVjayBGdW5jdGlv
bnMKKyMKK2NoZWNrX2NtZCgpIHsKKyAgZW5hYmxlZCBleHRlcm5hbF9idWlsZCAmJiByZXR1cm4K
KyAgbG9nICIkQCIKKyAgIiRAIiA+PiR7bG9nZmlsZX0gMj4mMQorfQorCitjaGVja19jYygpIHsK
KyAgbG9nIGNoZWNrX2NjICIkQCIKKyAgY2F0ID4ke1RNUF9DfQorICBsb2dfZmlsZSAke1RNUF9D
fQorICBjaGVja19jbWQgJHtDQ30gJHtDRkxBR1N9ICIkQCIgLWMgLW8gJHtUTVBfT30gJHtUTVBf
Q30KK30KKworY2hlY2tfY3h4KCkgeworICBsb2cgY2hlY2tfY3h4ICIkQCIKKyAgY2F0ID4ke1RN
UF9DQ30KKyAgbG9nX2ZpbGUgJHtUTVBfQ0N9CisgIGNoZWNrX2NtZCAke0NYWH0gJHtDWFhGTEFH
U30gIiRAIiAtYyAtbyAke1RNUF9PfSAke1RNUF9DQ30KK30KKworY2hlY2tfY3BwKCkgeworICBs
b2cgY2hlY2tfY3BwICIkQCIKKyAgY2F0ID4gJHtUTVBfQ30KKyAgbG9nX2ZpbGUgJHtUTVBfQ30K
KyAgY2hlY2tfY21kICR7Q0N9ICR7Q0ZMQUdTfSAiJEAiIC1FIC1vICR7VE1QX099ICR7VE1QX0N9
Cit9CisKK2NoZWNrX2xkKCkgeworICBsb2cgY2hlY2tfbGQgIiRAIgorICBjaGVja19jYyAkQCBc
CisgICAgJiYgY2hlY2tfY21kICR7TER9ICR7TERGTEFHU30gIiRAIiAtbyAke1RNUF9YfSAke1RN
UF9PfSAke2V4dHJhbGlic30KK30KKworY2hlY2tfbGliKCkgeworICBsb2cgY2hlY2tfbGliICIk
QCIKKyAgY2hlY2tfY2MgJEAgXAorICAgICYmIGNoZWNrX2NtZCAke0xEfSAke0xERkxBR1N9IC1v
ICR7VE1QX1h9ICR7VE1QX099ICIkQCIgJHtleHRyYWxpYnN9Cit9CisKK2NoZWNrX2hlYWRlcigp
eworICBsb2cgY2hlY2tfaGVhZGVyICIkQCIKKyAgaGVhZGVyPSQxCisgIHNoaWZ0CisgIHZhcj1g
ZWNobyAkaGVhZGVyIHwgc2VkICdzL1teQS1aYS16MC05X10vXy9nJ2AKKyAgZGlzYWJsZV9mZWF0
dXJlICR2YXIKKyAgY2hlY2tfY3BwICIkQCIgPDxFT0YgJiYgZW5hYmxlX2ZlYXR1cmUgJHZhcgor
I2luY2x1ZGUgIiRoZWFkZXIiCitpbnQgeDsKK0VPRgorfQorCitjaGVja19jZmxhZ3MoKSB7Cisg
bG9nIGNoZWNrX2NmbGFncyAiJEAiCisgY2hlY2tfY2MgLVdlcnJvciAiJEAiIDw8RU9GCitpbnQg
eDsKK0VPRgorfQorCitjaGVja19jeHhmbGFncygpIHsKKyAgbG9nIGNoZWNrX2N4eGZsYWdzICIk
QCIKKworICAjIENhdGNoIENGTEFHUyB0aGF0IHRyaWdnZXIgQ1hYIHdhcm5pbmdzCisgIGNhc2Ug
IiRDWFgiIGluCisgICAgKmMrKy1hbmFseXplcnwqY2xhbmcrK3wqZysrKikKKyAgICAgIGNoZWNr
X2N4eCAtV2Vycm9yICIkQCIgPDxFT0YKK2ludCB4OworRU9GCisgICAgICA7OworICAgICopCisg
ICAgICBjaGVja19jeHggLVdlcnJvciAiJEAiIDw8RU9GCitpbnQgeDsKK0VPRgorICAgICAgOzsK
KyAgICBlc2FjCit9CisKK2NoZWNrX2FkZF9jZmxhZ3MoKSB7CisgIGNoZWNrX2N4eGZsYWdzICIk
QCIgJiYgYWRkX2N4eGZsYWdzX29ubHkgIiRAIgorICBjaGVja19jZmxhZ3MgIiRAIiAmJiBhZGRf
Y2ZsYWdzX29ubHkgIiRAIgorfQorCitjaGVja19hZGRfY3h4ZmxhZ3MoKSB7CisgIGNoZWNrX2N4
eGZsYWdzICIkQCIgJiYgYWRkX2N4eGZsYWdzX29ubHkgIiRAIgorfQorCitjaGVja19hZGRfYXNm
bGFncygpIHsKKyAgbG9nIGFkZF9hc2ZsYWdzICIkQCIKKyAgYWRkX2FzZmxhZ3MgIiRAIgorfQor
CitjaGVja19hZGRfbGRmbGFncygpIHsKKyAgbG9nIGFkZF9sZGZsYWdzICIkQCIKKyAgYWRkX2xk
ZmxhZ3MgIiRAIgorfQorCitjaGVja19hc21fYWxpZ24oKSB7CisgIGxvZyBjaGVja19hc21fYWxp
Z24gIiRAIgorICBjYXQgPiR7VE1QX0FTTX0gPDxFT0YKK3NlY3Rpb24gLnJvZGF0YQorYWxpZ24g
MTYKK0VPRgorICBsb2dfZmlsZSAke1RNUF9BU019CisgIGNoZWNrX2NtZCAke0FTfSAke0FTRkxB
R1N9IC1vICR7VE1QX099ICR7VE1QX0FTTX0KKyAgcmVhZGVsZiAtV1MgJHtUTVBfT30gPiR7VE1Q
X1h9CisgIGxvZ19maWxlICR7VE1QX1h9CisgIGlmICEgZ3JlcCAtcSAnXC5yb2RhdGEgLiogMTYk
JyAke1RNUF9YfTsgdGhlbgorICAgIGRpZSAiJHtBU30gJHtBU0ZMQUdTfSBkb2VzIG5vdCBzdXBw
b3J0IHNlY3Rpb24gYWxpZ25tZW50IChuYXNtIDw9Mi4wOD8pIgorICBmaQorfQorCisjIHRlc3Rz
IGZvciAtbSQxIHRvZ2dsaW5nIHRoZSBmZWF0dXJlIGdpdmVuIGluICQyLiBJZiAkMiBpcyBlbXB0
eSAkMSBpcyB1c2VkLgorY2hlY2tfZ2NjX21hY2hpbmVfb3B0aW9uKCkgeworICBvcHQ9IiQxIgor
ICBmZWF0dXJlPSIkMiIKKyAgWyAtbiAiJGZlYXR1cmUiIF0gfHwgZmVhdHVyZT0iJG9wdCIKKwor
ICBpZiBlbmFibGVkIGdjYyAmJiAhIGRpc2FibGVkICIkZmVhdHVyZSIgJiYgISBjaGVja19jZmxh
Z3MgIi1tJG9wdCI7IHRoZW4KKyAgICBSVENEX09QVElPTlM9IiR7UlRDRF9PUFRJT05TfS0tZGlz
YWJsZS0kZmVhdHVyZSAiCisgIGVsc2UKKyAgICBzb2Z0X2VuYWJsZSAiJGZlYXR1cmUiCisgIGZp
Cit9CisKKyMgdGVzdHMgZm9yIC1tJDIsIC1tJDMsIC1tJDQuLi4gdG9nZ2xpbmcgdGhlIGZlYXR1
cmUgZ2l2ZW4gaW4gJDEuCitjaGVja19nY2NfbWFjaGluZV9vcHRpb25zKCkgeworICBmZWF0dXJl
PSIkMSIKKyAgc2hpZnQKKyAgZmxhZ3M9Ii1tJDEiCisgIHNoaWZ0CisgIGZvciBvcHQgaW4gJCo7
IGRvCisgICAgZmxhZ3M9IiRmbGFncyAtbSRvcHQiCisgIGRvbmUKKworICBpZiBlbmFibGVkIGdj
YyAmJiAhIGRpc2FibGVkICIkZmVhdHVyZSIgJiYgISBjaGVja19jZmxhZ3MgJGZsYWdzOyB0aGVu
CisgICAgUlRDRF9PUFRJT05TPSIke1JUQ0RfT1BUSU9OU30tLWRpc2FibGUtJGZlYXR1cmUgIgor
ICBlbHNlCisgICAgc29mdF9lbmFibGUgIiRmZWF0dXJlIgorICBmaQorfQorCitjaGVja19nY2Nf
YXZ4NTEyX2NvbXBpbGVzKCkgeworICBpZiBkaXNhYmxlZCBnY2M7IHRoZW4KKyAgICByZXR1cm4K
KyAgZmkKKworICBjaGVja19jYyAtbWF2eDUxMmYgPDxFT0YKKyNpbmNsdWRlIDxpbW1pbnRyaW4u
aD4KK3ZvaWQgZih2b2lkKSB7CisgIF9fbTUxMmkgeCA9IF9tbTUxMl9zZXQxX2VwaTE2KDApOwor
ICAodm9pZCl4OworfQorRU9GCisgIGNvbXBpbGVfcmVzdWx0PSQ/CisgIGlmIFsgJHtjb21waWxl
X3Jlc3VsdH0gLW5lIDAgXTsgdGhlbgorICAgIGxvZ19lY2hvICIgICAgZGlzYWJsaW5nIGF2eDUx
Mjogbm90IHN1cHBvcnRlZCBieSBjb21waWxlciIKKyAgICBkaXNhYmxlX2ZlYXR1cmUgYXZ4NTEy
CisgICAgUlRDRF9PUFRJT05TPSIke1JUQ0RfT1BUSU9OU30tLWRpc2FibGUtYXZ4NTEyICIKKyAg
ZmkKK30KKword3JpdGVfY29tbW9uX2NvbmZpZ19iYW5uZXIoKSB7CisgIHByaW50X3dlYm1fbGlj
ZW5zZSBjb25maWcubWsgIiMjIiAiIgorICBlY2hvICcjIFRoaXMgZmlsZSBhdXRvbWF0aWNhbGx5
IGdlbmVyYXRlZCBieSBjb25maWd1cmUuIERvIG5vdCBlZGl0IScgPj4gY29uZmlnLm1rCisgIGVj
aG8gIlRPT0xDSEFJTiA6PSAke3Rvb2xjaGFpbn0iID4+IGNvbmZpZy5taworCisgIGNhc2UgJHt0
b29sY2hhaW59IGluCisgICAgKi1saW51eC1ydmN0KQorICAgICAgZWNobyAiQUxUX0xJQkMgOj0g
JHthbHRfbGliY30iID4+IGNvbmZpZy5taworICAgICAgOzsKKyAgZXNhYworfQorCit3cml0ZV9j
b21tb25fY29uZmlnX3RhcmdldHMoKSB7CisgIGZvciB0IGluICR7YWxsX3RhcmdldHN9OyBkbwor
ICAgIGlmIGVuYWJsZWQgJHt0fTsgdGhlbgorICAgICAgaWYgZW5hYmxlZCBjaGlsZDsgdGhlbgor
ICAgICAgICBmd3JpdGUgY29uZmlnLm1rICJBTExfVEFSR0VUUyArPSAke3R9LSR7dG9vbGNoYWlu
fSIKKyAgICAgIGVsc2UKKyAgICAgICAgZndyaXRlIGNvbmZpZy5tayAiQUxMX1RBUkdFVFMgKz0g
JHt0fSIKKyAgICAgIGZpCisgICAgZmkKKyAgICB0cnVlOworICBkb25lCisgIHRydWUKK30KKwor
d3JpdGVfY29tbW9uX3RhcmdldF9jb25maWdfbWsoKSB7CisgIHNhdmVkX0NDPSIke0NDfSIKKyAg
c2F2ZWRfQ1hYPSIke0NYWH0iCisgIGVuYWJsZWQgY2NhY2hlICYmIENDPSJjY2FjaGUgJHtDQ30i
CisgIGVuYWJsZWQgY2NhY2hlICYmIENYWD0iY2NhY2hlICR7Q1hYfSIKKyAgcHJpbnRfd2VibV9s
aWNlbnNlICQxICIjIyIgIiIKKworICBjYXQgPj4gJDEgPDwgRU9GCisjIFRoaXMgZmlsZSBhdXRv
bWF0aWNhbGx5IGdlbmVyYXRlZCBieSBjb25maWd1cmUuIERvIG5vdCBlZGl0IQorU1JDX1BBVEg9
IiRzb3VyY2VfcGF0aF9tayIKK1NSQ19QQVRIX0JBUkU9JHNvdXJjZV9wYXRoX21rCitCVUlMRF9Q
Rlg9JHtCVUlMRF9QRlh9CitUT09MQ0hBSU49JHt0b29sY2hhaW59CitBU01fQ09OVkVSU0lPTj0k
e2FzbV9jb252ZXJzaW9uX2NtZDotJHtzb3VyY2VfcGF0aF9ta30vYnVpbGQvbWFrZS9hZHMyZ2Fz
LnBsfQorR0VOX1ZDUFJPSj0ke2dlbl92Y3Byb2pfY21kfQorTVNWU19BUkNIX0RJUj0ke21zdnNf
YXJjaF9kaXJ9CisKK0NDPSR7Q0N9CitDWFg9JHtDWFh9CitBUj0ke0FSfQorTEQ9JHtMRH0KK0FT
PSR7QVN9CitTVFJJUD0ke1NUUklQfQorTk09JHtOTX0KKworQ0ZMQUdTICA9ICR7Q0ZMQUdTfQor
Q1hYRkxBR1MgID0gJHtDWFhGTEFHU30KK0FSRkxBR1MgPSAtY3JzXCQoaWYgXCQocXVpZXQpLCx2
KQorTERGTEFHUyA9ICR7TERGTEFHU30KK0FTRkxBR1MgPSAke0FTRkxBR1N9CitleHRyYWxpYnMg
PSAke2V4dHJhbGlic30KK0FTX1NGWCAgICA9ICR7QVNfU0ZYOi0uYXNtfQorRVhFX1NGWCAgID0g
JHtFWEVfU0ZYfQorVkNQUk9KX1NGWCA9ICR7VkNQUk9KX1NGWH0KK1JUQ0RfT1BUSU9OUyA9ICR7
UlRDRF9PUFRJT05TfQorTElCWVVWX0NYWEZMQUdTID0gJHtMSUJZVVZfQ1hYRkxBR1N9CitFT0YK
KworICBpZiBlbmFibGVkIHJ2Y3Q7IHRoZW4gY2F0ID4+ICQxIDw8IEVPRgorZm10X2RlcHMgPSBz
ZWQgLWUgJ3M7Xl9faW1hZ2UuYXhmO1wke0A6LmQ9Lm99IFwkQDsnICNoaWRlCitFT0YKKyAgZWxz
ZSBjYXQgPj4gJDEgPDwgRU9GCitmbXRfZGVwcyA9IHNlZCAtZSAnczteXChbYS16QS1aMC05X10q
XClcLm87XCR7QDouZD0ub30gXCRAOycKK0VPRgorICBmaQorCisgIHByaW50X2NvbmZpZ19tayBW
UFhfQVJDSCAiJHsxfSIgJHtBUkNIX0xJU1R9CisgIHByaW50X2NvbmZpZ19tayBIQVZFICAgICAi
JHsxfSIgJHtIQVZFX0xJU1R9CisgIHByaW50X2NvbmZpZ19tayBDT05GSUcgICAiJHsxfSIgJHtD
T05GSUdfTElTVH0KKyAgcHJpbnRfY29uZmlnX21rIEhBVkUgICAgICIkezF9IiBnbnVfc3RyaXAK
KworICBlbmFibGVkIG1zdnMgJiYgZWNobyAiQ09ORklHX1ZTX1ZFUlNJT049JHt2c192ZXJzaW9u
fSIgPj4gIiR7MX0iCisKKyAgQ0M9IiR7c2F2ZWRfQ0N9IgorICBDWFg9IiR7c2F2ZWRfQ1hYfSIK
K30KKword3JpdGVfY29tbW9uX3RhcmdldF9jb25maWdfaCgpIHsKKyAgcHJpbnRfd2VibV9saWNl
bnNlICR7VE1QX0h9ICIvKiIgIiAqLyIKKyAgY2F0ID4+ICR7VE1QX0h9IDw8IEVPRgorLyogVGhp
cyBmaWxlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IGNvbmZpZ3VyZS4gRG8gbm90IGVkaXQh
ICovCisjaWZuZGVmIFZQWF9DT05GSUdfSAorI2RlZmluZSBWUFhfQ09ORklHX0gKKyNkZWZpbmUg
UkVTVFJJQ1QgICAgJHtSRVNUUklDVH0KKyNkZWZpbmUgSU5MSU5FICAgICAgJHtJTkxJTkV9CitF
T0YKKyAgcHJpbnRfY29uZmlnX2ggVlBYX0FSQ0ggIiR7VE1QX0h9IiAke0FSQ0hfTElTVH0KKyAg
cHJpbnRfY29uZmlnX2ggSEFWRSAgICAgIiR7VE1QX0h9IiAke0hBVkVfTElTVH0KKyAgcHJpbnRf
Y29uZmlnX2ggQ09ORklHICAgIiR7VE1QX0h9IiAke0NPTkZJR19MSVNUfQorICBwcmludF9jb25m
aWdfdmFyc19oICAgICAiJHtUTVBfSH0iICR7VkFSX0xJU1R9CisgIGVjaG8gIiNlbmRpZiAvKiBW
UFhfQ09ORklHX0ggKi8iID4+ICR7VE1QX0h9CisgIG1rZGlyIC1wIGBkaXJuYW1lICIkMSJgCisg
IGNtcCAiJDEiICR7VE1QX0h9ID4vZGV2L251bGwgMj4mMSB8fCBtdiAke1RNUF9IfSAiJDEiCit9
CisKK3dyaXRlX3dpbl9hcm02NF9uZW9uX2hfd29ya2Fyb3VuZCgpIHsKKyAgcHJpbnRfd2VibV9s
aWNlbnNlICR7VE1QX0h9ICIvKiIgIiAqLyIKKyAgY2F0ID4+ICR7VE1QX0h9IDw8IEVPRgorLyog
VGhpcyBmaWxlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IGNvbmZpZ3VyZS4gRG8gbm90IGVk
aXQhICovCisjaWZuZGVmIFZQWF9XSU5fQVJNX05FT05fSF9XT1JLQVJPVU5ECisjZGVmaW5lIFZQ
WF9XSU5fQVJNX05FT05fSF9XT1JLQVJPVU5ECisvKiBUaGUgV2luZG93cyBTREsgaGFzIGFybV9u
ZW9uLmgsIGJ1dCB1bmxpa2Ugb24gb3RoZXIgcGxhdGZvcm1zIGl0IGlzCisgKiBBUk0zMi1vbmx5
LiBBUk02NCBORU9OIHN1cHBvcnQgaXMgcHJvdmlkZWQgYnkgYXJtNjRfbmVvbi5oLCBhIHByb3Bl
cgorICogc3VwZXJzZXQgb2YgYXJtX25lb24uaC4gV29yayBhcm91bmQgdGhpcyBieSBwcm92aWRp
bmcgYSBtb3JlIGxvY2FsCisgKiBhcm1fbmVvbi5oIHRoYXQgc2ltcGx5ICNpbmNsdWRlcyBhcm02
NF9uZW9uLmguCisgKi8KKyNpbmNsdWRlIDxhcm02NF9uZW9uLmg+CisjZW5kaWYgLyogVlBYX1dJ
Tl9BUk1fTkVPTl9IX1dPUktBUk9VTkQgKi8KK0VPRgorICBta2RpciAtcCBgZGlybmFtZSAiJDEi
YAorICBjbXAgIiQxIiAke1RNUF9IfSA+L2Rldi9udWxsIDI+JjEgfHwgbXYgJHtUTVBfSH0gIiQx
IgorfQorCitwcm9jZXNzX2NvbW1vbl9jbWRsaW5lKCkgeworICBmb3Igb3B0IGluICIkQCI7IGRv
CisgICAgb3B0dmFsPSIke29wdCMqPX0iCisgICAgY2FzZSAiJG9wdCIgaW4KKyAgICAgIC0tY2hp
bGQpCisgICAgICAgIGVuYWJsZV9mZWF0dXJlIGNoaWxkCisgICAgICAgIDs7CisgICAgICAtLWxv
ZyopCisgICAgICAgIGxvZ2dpbmc9IiRvcHR2YWwiCisgICAgICAgIGlmICEgZGlzYWJsZWQgbG9n
Z2luZyA7IHRoZW4KKyAgICAgICAgICBlbmFibGVkIGxvZ2dpbmcgfHwgbG9nZmlsZT0iJGxvZ2dp
bmciCisgICAgICAgIGVsc2UKKyAgICAgICAgICBsb2dmaWxlPS9kZXYvbnVsbAorICAgICAgICBm
aQorICAgICAgICA7OworICAgICAgLS10YXJnZXQ9KikKKyAgICAgICAgdG9vbGNoYWluPSIke3Rv
b2xjaGFpbjotJHtvcHR2YWx9fSIKKyAgICAgICAgOzsKKyAgICAgIC0tZm9yY2UtdGFyZ2V0PSop
CisgICAgICAgIHRvb2xjaGFpbj0iJHt0b29sY2hhaW46LSR7b3B0dmFsfX0iCisgICAgICAgIGVu
YWJsZV9mZWF0dXJlIGZvcmNlX3Rvb2xjaGFpbgorICAgICAgICA7OworICAgICAgLS1jcHU9KikK
KyAgICAgICAgdHVuZV9jcHU9IiRvcHR2YWwiCisgICAgICAgIDs7CisgICAgICAtLWV4dHJhLWNm
bGFncz0qKQorICAgICAgICBleHRyYV9jZmxhZ3M9IiR7b3B0dmFsfSIKKyAgICAgICAgOzsKKyAg
ICAgIC0tZXh0cmEtY3h4ZmxhZ3M9KikKKyAgICAgICAgZXh0cmFfY3h4ZmxhZ3M9IiR7b3B0dmFs
fSIKKyAgICAgICAgOzsKKyAgICAgIC0tZW5hYmxlLT8qfC0tZGlzYWJsZS0/KikKKyAgICAgICAg
ZXZhbCBgZWNobyAiJG9wdCIgfCBzZWQgJ3MvLS0vYWN0aW9uPS87cy8tLyBvcHRpb249LztzLy0v
Xy9nJ2AKKyAgICAgICAgaWYgaXNfaW4gJHtvcHRpb259ICR7QVJDSF9FWFRfTElTVH07IHRoZW4K
KyAgICAgICAgICBbICRhY3Rpb24gPSAiZGlzYWJsZSIgXSAmJiBSVENEX09QVElPTlM9IiR7UlRD
RF9PUFRJT05TfS0tZGlzYWJsZS0ke29wdGlvbn0gIgorICAgICAgICBlbGlmIFsgJGFjdGlvbiA9
ICJkaXNhYmxlIiBdICYmICEgZGlzYWJsZWQgJG9wdGlvbiA7IHRoZW4KKyAgICAgICAgICBpc19p
biAke29wdGlvbn0gJHtDTURMSU5FX1NFTEVDVH0gfHwgZGllX3Vua25vd24gJG9wdAorICAgICAg
ICAgIGxvZ19lY2hvICIgIGRpc2FibGluZyAkb3B0aW9uIgorICAgICAgICBlbGlmIFsgJGFjdGlv
biA9ICJlbmFibGUiIF0gJiYgISBlbmFibGVkICRvcHRpb24gOyB0aGVuCisgICAgICAgICAgaXNf
aW4gJHtvcHRpb259ICR7Q01ETElORV9TRUxFQ1R9IHx8IGRpZV91bmtub3duICRvcHQKKyAgICAg
ICAgICBsb2dfZWNobyAiICBlbmFibGluZyAkb3B0aW9uIgorICAgICAgICBmaQorICAgICAgICAk
e2FjdGlvbn1fZmVhdHVyZSAkb3B0aW9uCisgICAgICAgIDs7CisgICAgICAtLXJlcXVpcmUtPyop
CisgICAgICAgIGV2YWwgYGVjaG8gIiRvcHQiIHwgc2VkICdzLy0tL2FjdGlvbj0vO3MvLS8gb3B0
aW9uPS87cy8tL18vZydgCisgICAgICAgIGlmIGlzX2luICR7b3B0aW9ufSAke0FSQ0hfRVhUX0xJ
U1R9OyB0aGVuCisgICAgICAgICAgICBSVENEX09QVElPTlM9IiR7UlRDRF9PUFRJT05TfSR7b3B0
fSAiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGRpZV91bmtub3duICRvcHQKKyAgICAgICAg
ZmkKKyAgICAgICAgOzsKKyAgICAgIC0tZm9yY2UtZW5hYmxlLT8qfC0tZm9yY2UtZGlzYWJsZS0/
KikKKyAgICAgICAgZXZhbCBgZWNobyAiJG9wdCIgfCBzZWQgJ3MvLS1mb3JjZS0vYWN0aW9uPS87
cy8tLyBvcHRpb249LztzLy0vXy9nJ2AKKyAgICAgICAgJHthY3Rpb259X2ZlYXR1cmUgJG9wdGlv
bgorICAgICAgICA7OworICAgICAgLS1saWJjPSopCisgICAgICAgIFsgLWQgIiR7b3B0dmFsfSIg
XSB8fCBkaWUgIk5vdCBhIGRpcmVjdG9yeTogJHtvcHR2YWx9IgorICAgICAgICBkaXNhYmxlX2Zl
YXR1cmUgYnVpbHRpbl9saWJjCisgICAgICAgIGFsdF9saWJjPSIke29wdHZhbH0iCisgICAgICAg
IDs7CisgICAgICAtLWFzPSopCisgICAgICAgIFsgIiR7b3B0dmFsfSIgPSB5YXNtIF0gfHwgWyAi
JHtvcHR2YWx9IiA9IG5hc20gXSBcCisgICAgICAgICAgfHwgWyAiJHtvcHR2YWx9IiA9IGF1dG8g
XSBcCisgICAgICAgICAgfHwgZGllICJNdXN0IGJlIHlhc20sIG5hc20gb3IgYXV0bzogJHtvcHR2
YWx9IgorICAgICAgICBhbHRfYXM9IiR7b3B0dmFsfSIKKyAgICAgICAgOzsKKyAgICAgIC0tc2l6
ZS1saW1pdD0qKQorICAgICAgICB3PSIke29wdHZhbCUleCp9IgorICAgICAgICBoPSIke29wdHZh
bCMjKnh9IgorICAgICAgICBWQVJfTElTVD0iREVDT0RFX1dJRFRIX0xJTUlUICR7d30gREVDT0RF
X0hFSUdIVF9MSU1JVCAke2h9IgorICAgICAgICBbICR7d30gLWd0IDAgXSAmJiBbICR7aH0gLWd0
IDAgXSB8fCBkaWUgIkludmFsaWQgc2l6ZS1saW1pdDogdG9vIHNtYWxsLiIKKyAgICAgICAgWyAk
e3d9IC1sdCA2NTUzNiBdICYmIFsgJHtofSAtbHQgNjU1MzYgXSBcCisgICAgICAgICAgICB8fCBk
aWUgIkludmFsaWQgc2l6ZS1saW1pdDogdG9vIGJpZy4iCisgICAgICAgIGVuYWJsZV9mZWF0dXJl
IHNpemVfbGltaXQKKyAgICAgICAgOzsKKyAgICAgIC0tcHJlZml4PSopCisgICAgICAgIHByZWZp
eD0iJHtvcHR2YWx9IgorICAgICAgICA7OworICAgICAgLS1saWJkaXI9KikKKyAgICAgICAgbGli
ZGlyPSIke29wdHZhbH0iCisgICAgICAgIDs7CisgICAgICAtLWxpYmN8LS1hc3wtLXByZWZpeHwt
LWxpYmRpcikKKyAgICAgICAgZGllICJPcHRpb24gJHtvcHR9IHJlcXVpcmVzIGFyZ3VtZW50Igor
ICAgICAgICA7OworICAgICAgLS1oZWxwfC1oKQorICAgICAgICBzaG93X2hlbHAKKyAgICAgICAg
OzsKKyAgICAgICopCisgICAgICAgIGRpZV91bmtub3duICRvcHQKKyAgICAgICAgOzsKKyAgICBl
c2FjCisgIGRvbmUKK30KKworcHJvY2Vzc19jbWRsaW5lKCkgeworICBmb3Igb3B0IGRvCisgICAg
b3B0dmFsPSIke29wdCMqPX0iCisgICAgY2FzZSAiJG9wdCIgaW4KKyAgICAgICopCisgICAgICAg
IHByb2Nlc3NfY29tbW9uX2NtZGxpbmUgJG9wdAorICAgICAgICA7OworICAgIGVzYWMKKyAgZG9u
ZQorfQorCitwb3N0X3Byb2Nlc3NfY29tbW9uX2NtZGxpbmUoKSB7CisgIHByZWZpeD0iJHtwcmVm
aXg6LS91c3IvbG9jYWx9IgorICBwcmVmaXg9IiR7cHJlZml4JS99IgorICBsaWJkaXI9IiR7bGli
ZGlyOi0ke3ByZWZpeH0vbGlifSIKKyAgbGliZGlyPSIke2xpYmRpciUvfSIKKyAgaWYgWyAiJHts
aWJkaXIjJHtwcmVmaXh9fSIgPSAiJHtsaWJkaXJ9IiBdOyB0aGVuCisgICAgZGllICJMaWJkaXIg
JHtsaWJkaXJ9IG11c3QgYmUgYSBzdWJkaXJlY3Rvcnkgb2YgJHtwcmVmaXh9IgorICBmaQorfQor
Citwb3N0X3Byb2Nlc3NfY21kbGluZSgpIHsKKyAgdHJ1ZTsKK30KKworc2V0dXBfZ251X3Rvb2xj
aGFpbigpIHsKKyAgQ0M9JHtDQzotJHtDUk9TU31nY2N9CisgIENYWD0ke0NYWDotJHtDUk9TU31n
Kyt9CisgIEFSPSR7QVI6LSR7Q1JPU1N9YXJ9CisgIExEPSR7TEQ6LSR7Q1JPU1N9JHtsaW5rX3dp
dGhfY2M6LWxkfX0KKyAgQVM9JHtBUzotJHtDUk9TU31hc30KKyAgU1RSSVA9JHtTVFJJUDotJHtD
Uk9TU31zdHJpcH0KKyAgTk09JHtOTTotJHtDUk9TU31ubX0KKyAgQVNfU0ZYPS5TCisgIEVYRV9T
Rlg9Cit9CisKKyMgUmVsaWFibHkgZmluZCB0aGUgbmV3ZXN0IGF2YWlsYWJsZSBEYXJ3aW4gU0RL
cy4gKE9sZGVyIHZlcnNpb25zIG9mCisjIHhjcnVuIGRvbid0IHN1cHBvcnQgLS1zaG93LXNkay1w
YXRoLikKK3Nob3dfZGFyd2luX3Nka19wYXRoKCkgeworICB4Y3J1biAtLXNkayAkMSAtLXNob3ct
c2RrLXBhdGggMj4vZGV2L251bGwgfHwKKyAgICB4Y29kZWJ1aWxkIC1zZGsgJDEgLXZlcnNpb24g
UGF0aCAyPi9kZXYvbnVsbAorfQorCisjIFByaW50IHRoZSBtYWpvciB2ZXJzaW9uIG51bWJlciBv
ZiB0aGUgRGFyd2luIFNESyBzcGVjaWZpZWQgYnkgJDEuCitzaG93X2Rhcndpbl9zZGtfbWFqb3Jf
dmVyc2lvbigpIHsKKyAgeGNydW4gLS1zZGsgJDEgLS1zaG93LXNkay12ZXJzaW9uIDI+L2Rldi9u
dWxsIHwgY3V0IC1kLiAtZjEKK30KKworIyBQcmludCB0aGUgWGNvZGUgdmVyc2lvbi4KK3Nob3df
eGNvZGVfdmVyc2lvbigpIHsKKyAgeGNvZGVidWlsZCAtdmVyc2lvbiB8IGhlYWQgLW4xIHwgY3V0
IC1kJyAnIC1mMgorfQorCisjIEZhaWxzIHdoZW4gWGNvZGUgdmVyc2lvbiBpcyBsZXNzIHRoYW4g
Ni4zLgorY2hlY2tfeGNvZGVfbWluaW11bV92ZXJzaW9uKCkgeworICB4Y29kZV9tYWpvcj0kKHNo
b3dfeGNvZGVfdmVyc2lvbiB8IGN1dCAtZjEgLWQuKQorICB4Y29kZV9taW5vcj0kKHNob3dfeGNv
ZGVfdmVyc2lvbiB8IGN1dCAtZjIgLWQuKQorICB4Y29kZV9taW5fbWFqb3I9NgorICB4Y29kZV9t
aW5fbWlub3I9MworICBpZiBbICR7eGNvZGVfbWFqb3J9IC1sdCAke3hjb2RlX21pbl9tYWpvcn0g
XTsgdGhlbgorICAgIHJldHVybiAxCisgIGZpCisgIGlmIFsgJHt4Y29kZV9tYWpvcn0gLWVxICR7
eGNvZGVfbWluX21ham9yfSBdIFwKKyAgICAmJiBbICR7eGNvZGVfbWlub3J9IC1sdCAke3hjb2Rl
X21pbl9taW5vcn0gXTsgdGhlbgorICAgIHJldHVybiAxCisgIGZpCit9CisKK3Byb2Nlc3NfY29t
bW9uX3Rvb2xjaGFpbigpIHsKKyAgaWYgWyAteiAiJHRvb2xjaGFpbiIgXTsgdGhlbgorICAgIGdj
Y3RhcmdldD0iJHtDSE9TVDotJChnY2MgLWR1bXBtYWNoaW5lIDI+IC9kZXYvbnVsbCl9IgorICAg
ICMgZGV0ZWN0IHRndF9pc2EKKyAgICBjYXNlICIkZ2NjdGFyZ2V0IiBpbgorICAgICAgYWFyY2g2
NCopCisgICAgICAgIHRndF9pc2E9YXJtNjQKKyAgICAgICAgOzsKKyAgICAgIGFybXY3Ki1oYXJk
ZmxvYXQqIHwgYXJtdjcqLWdudWVhYmloZiB8IGFybS0qLWdudWVhYmloZikKKyAgICAgICAgdGd0
X2lzYT1hcm12NworICAgICAgICBmbG9hdF9hYmk9aGFyZAorICAgICAgICA7OworICAgICAgYXJt
djcqKQorICAgICAgICB0Z3RfaXNhPWFybXY3CisgICAgICAgIGZsb2F0X2FiaT1zb2Z0ZnAKKyAg
ICAgICAgOzsKKyAgICAgICp4ODZfNjQqfCphbWQ2NCopCisgICAgICAgIHRndF9pc2E9eDg2XzY0
CisgICAgICAgIDs7CisgICAgICAqaVszNDU2XTg2KikKKyAgICAgICAgdGd0X2lzYT14ODYKKyAg
ICAgICAgOzsKKyAgICAgICpzcGFyYyopCisgICAgICAgIHRndF9pc2E9c3BhcmMKKyAgICAgICAg
OzsKKyAgICAgIHBvd2VyKjY0bGUqLSopCisgICAgICAgIHRndF9pc2E9cHBjNjRsZQorICAgICAg
ICA7OworICAgICAgKm1pcHM2NGVsKikKKyAgICAgICAgdGd0X2lzYT1taXBzNjQKKyAgICAgICAg
OzsKKyAgICAgICptaXBzMzJlbCopCisgICAgICAgIHRndF9pc2E9bWlwczMyCisgICAgICAgIDs7
CisgICAgZXNhYworCisgICAgIyBkZXRlY3QgdGd0X29zCisgICAgY2FzZSAiJGdjY3RhcmdldCIg
aW4KKyAgICAgICpkYXJ3aW4xWzAtOV0qKQorICAgICAgICB0Z3RfaXNhPXg4Nl82NAorICAgICAg
ICB0Z3Rfb3M9YGVjaG8gJGdjY3RhcmdldCB8IHNlZCAncy8uKlwoZGFyd2luMVswLTldXCkuKi9c
MS8nYAorICAgICAgICA7OworICAgICAgKmRhcndpbjIwKikKKyAgICAgICAgdGd0X2lzYT1gdW5h
bWUgLW1gCisgICAgICAgIHRndF9vcz1gZWNobyAkZ2NjdGFyZ2V0IHwgc2VkICdzLy4qXChkYXJ3
aW4yWzAtOV1cKS4qL1wxLydgCisgICAgICAgIDs7CisgICAgICB4ODZfNjQqbWluZ3czMiopCisg
ICAgICAgIHRndF9vcz13aW42NAorICAgICAgICA7OworICAgICAgeDg2XzY0KmN5Z3dpbiopCisg
ICAgICAgIHRndF9vcz13aW42NAorICAgICAgICA7OworICAgICAgKm1pbmd3MzIqfCpjeWd3aW4q
KQorICAgICAgICBbIC16ICIkdGd0X2lzYSIgXSAmJiB0Z3RfaXNhPXg4NgorICAgICAgICB0Z3Rf
b3M9d2luMzIKKyAgICAgICAgOzsKKyAgICAgICpsaW51eCp8KmJzZCopCisgICAgICAgIHRndF9v
cz1saW51eAorICAgICAgICA7OworICAgICAgKnNvbGFyaXMyLjEwKQorICAgICAgICB0Z3Rfb3M9
c29sYXJpcworICAgICAgICA7OworICAgICAgKm9zMiopCisgICAgICAgIHRndF9vcz1vczIKKyAg
ICAgICAgOzsKKyAgICBlc2FjCisKKyAgICBpZiBbIC1uICIkdGd0X2lzYSIgXSAmJiBbIC1uICIk
dGd0X29zIiBdOyB0aGVuCisgICAgICB0b29sY2hhaW49JHt0Z3RfaXNhfS0ke3RndF9vc30tZ2Nj
CisgICAgZmkKKyAgZmkKKworICB0b29sY2hhaW49JHt0b29sY2hhaW46LWdlbmVyaWMtZ251fQor
CisgIGlzX2luICR7dG9vbGNoYWlufSAke2FsbF9wbGF0Zm9ybXN9IHx8IGVuYWJsZWQgZm9yY2Vf
dG9vbGNoYWluIFwKKyAgICB8fCBkaWUgIlVucmVjb2duaXplZCB0b29sY2hhaW4gJyR7dG9vbGNo
YWlufSciCisKKyAgZW5hYmxlZCBjaGlsZCB8fCBsb2dfZWNobyAiQ29uZmlndXJpbmcgZm9yIHRh
cmdldCAnJHt0b29sY2hhaW59JyIKKworICAjCisgICMgU2V0IHVwIHRvb2xjaGFpbiB2YXJpYWJs
ZXMKKyAgIworICB0Z3RfaXNhPSQoZWNobyAke3Rvb2xjaGFpbn0gfCBhd2sgJ0JFR0lOe0ZTPSIt
In17cHJpbnQgJDF9JykKKyAgdGd0X29zPSQoZWNobyAke3Rvb2xjaGFpbn0gfCBhd2sgJ0JFR0lO
e0ZTPSItIn17cHJpbnQgJDJ9JykKKyAgdGd0X2NjPSQoZWNobyAke3Rvb2xjaGFpbn0gfCBhd2sg
J0JFR0lOe0ZTPSItIn17cHJpbnQgJDN9JykKKworICAjIE1hcmsgdGhlIHNwZWNpZmljIElTQSBy
ZXF1ZXN0ZWQgYXMgZW5hYmxlZAorICBzb2Z0X2VuYWJsZSAke3RndF9pc2F9CisgIGVuYWJsZV9m
ZWF0dXJlICR7dGd0X29zfQorICBlbmFibGVfZmVhdHVyZSAke3RndF9jY30KKworICAjIEVuYWJs
ZSB0aGUgYXJjaGl0ZWN0dXJlIGZhbWlseQorICBjYXNlICR7dGd0X2lzYX0gaW4KKyAgICBhcm0q
KQorICAgICAgZW5hYmxlX2ZlYXR1cmUgYXJtCisgICAgICA7OworICAgIG1pcHMqKQorICAgICAg
ZW5hYmxlX2ZlYXR1cmUgbWlwcworICAgICAgOzsKKyAgICBwcGMqKQorICAgICAgZW5hYmxlX2Zl
YXR1cmUgcHBjCisgICAgICA7OworICBlc2FjCisKKyAgIyBQSUMgaXMgcHJvYmFibHkgd2hhdCB3
ZSB3YW50IHdoZW4gYnVpbGRpbmcgc2hhcmVkIGxpYnMKKyAgZW5hYmxlZCBzaGFyZWQgJiYgc29m
dF9lbmFibGUgcGljCisKKyAgIyBNaW5pbXVtIGlPUyB2ZXJzaW9uIGZvciBhbGwgdGFyZ2V0IHBs
YXRmb3JtcyAoZGFyd2luIGFuZCBpcGhvbmVzaW11bGF0b3IpLgorICAjIFNoYXJlZCBsaWJyYXJ5
IGZyYW1ld29yayBidWlsZHMgYXJlIG9ubHkgcG9zc2libGUgb24gaU9TIDggYW5kIGxhdGVyLgor
ICBpZiBlbmFibGVkIHNoYXJlZDsgdGhlbgorICAgIElPU19WRVJTSU9OX09QVElPTlM9Ii0tZW5h
YmxlLXNoYXJlZCIKKyAgICBJT1NfVkVSU0lPTl9NSU49IjguMCIKKyAgZWxzZQorICAgIElPU19W
RVJTSU9OX09QVElPTlM9IiIKKyAgICBJT1NfVkVSU0lPTl9NSU49IjcuMCIKKyAgZmkKKworICAj
IEhhbmRsZSBkYXJ3aW4gdmFyaWFudHMuIE5ld2VyIFNES3MgYWxsb3cgdGFyZ2V0aW5nIG9sZGVy
CisgICMgcGxhdGZvcm1zLCBzbyB1c2UgdGhlIG5ld2VzdCBvbmUgYXZhaWxhYmxlLgorICBjYXNl
ICR7dG9vbGNoYWlufSBpbgorICAgIGFybSotZGFyd2luLSopCisgICAgICBhZGRfY2ZsYWdzICIt
bWlwaG9uZW9zLXZlcnNpb24tbWluPSR7SU9TX1ZFUlNJT05fTUlOfSIKKyAgICAgIGlwaG9uZW9z
X3Nka19kaXI9IiQoc2hvd19kYXJ3aW5fc2RrX3BhdGggaXBob25lb3MpIgorICAgICAgaWYgWyAt
ZCAiJHtpcGhvbmVvc19zZGtfZGlyfSIgXTsgdGhlbgorICAgICAgICBhZGRfY2ZsYWdzICAiLWlz
eXNyb290ICR7aXBob25lb3Nfc2RrX2Rpcn0iCisgICAgICAgIGFkZF9sZGZsYWdzICItaXN5c3Jv
b3QgJHtpcGhvbmVvc19zZGtfZGlyfSIKKyAgICAgIGZpCisgICAgICA7OworICAgICotZGFyd2lu
KikKKyAgICAgIG9zeF9zZGtfZGlyPSIkKHNob3dfZGFyd2luX3Nka19wYXRoIG1hY29zeCkiCisg
ICAgICBpZiBbIC1kICIke29zeF9zZGtfZGlyfSIgXTsgdGhlbgorICAgICAgICBhZGRfY2ZsYWdz
ICAiLWlzeXNyb290ICR7b3N4X3Nka19kaXJ9IgorICAgICAgICBhZGRfbGRmbGFncyAiLWlzeXNy
b290ICR7b3N4X3Nka19kaXJ9IgorICAgICAgZmkKKyAgICAgIDs7CisgIGVzYWMKKworICBjYXNl
ICR7dG9vbGNoYWlufSBpbgorICAgICotZGFyd2luOC0qKQorICAgICAgYWRkX2NmbGFncyAgIi1t
bWFjb3N4LXZlcnNpb24tbWluPTEwLjQiCisgICAgICBhZGRfbGRmbGFncyAiLW1tYWNvc3gtdmVy
c2lvbi1taW49MTAuNCIKKyAgICAgIDs7CisgICAgKi1kYXJ3aW45LSopCisgICAgICBhZGRfY2Zs
YWdzICAiLW1tYWNvc3gtdmVyc2lvbi1taW49MTAuNSIKKyAgICAgIGFkZF9sZGZsYWdzICItbW1h
Y29zeC12ZXJzaW9uLW1pbj0xMC41IgorICAgICAgOzsKKyAgICAqLWRhcndpbjEwLSopCisgICAg
ICBhZGRfY2ZsYWdzICAiLW1tYWNvc3gtdmVyc2lvbi1taW49MTAuNiIKKyAgICAgIGFkZF9sZGZs
YWdzICItbW1hY29zeC12ZXJzaW9uLW1pbj0xMC42IgorICAgICAgOzsKKyAgICAqLWRhcndpbjEx
LSopCisgICAgICBhZGRfY2ZsYWdzICAiLW1tYWNvc3gtdmVyc2lvbi1taW49MTAuNyIKKyAgICAg
IGFkZF9sZGZsYWdzICItbW1hY29zeC12ZXJzaW9uLW1pbj0xMC43IgorICAgICAgOzsKKyAgICAq
LWRhcndpbjEyLSopCisgICAgICBhZGRfY2ZsYWdzICAiLW1tYWNvc3gtdmVyc2lvbi1taW49MTAu
OCIKKyAgICAgIGFkZF9sZGZsYWdzICItbW1hY29zeC12ZXJzaW9uLW1pbj0xMC44IgorICAgICAg
OzsKKyAgICAqLWRhcndpbjEzLSopCisgICAgICBhZGRfY2ZsYWdzICAiLW1tYWNvc3gtdmVyc2lv
bi1taW49MTAuOSIKKyAgICAgIGFkZF9sZGZsYWdzICItbW1hY29zeC12ZXJzaW9uLW1pbj0xMC45
IgorICAgICAgOzsKKyAgICAqLWRhcndpbjE0LSopCisgICAgICBhZGRfY2ZsYWdzICAiLW1tYWNv
c3gtdmVyc2lvbi1taW49MTAuMTAiCisgICAgICBhZGRfbGRmbGFncyAiLW1tYWNvc3gtdmVyc2lv
bi1taW49MTAuMTAiCisgICAgICA7OworICAgICotZGFyd2luMTUtKikKKyAgICAgIGFkZF9jZmxh
Z3MgICItbW1hY29zeC12ZXJzaW9uLW1pbj0xMC4xMSIKKyAgICAgIGFkZF9sZGZsYWdzICItbW1h
Y29zeC12ZXJzaW9uLW1pbj0xMC4xMSIKKyAgICAgIDs7CisgICAgKi1kYXJ3aW4xNi0qKQorICAg
ICAgYWRkX2NmbGFncyAgIi1tbWFjb3N4LXZlcnNpb24tbWluPTEwLjEyIgorICAgICAgYWRkX2xk
ZmxhZ3MgIi1tbWFjb3N4LXZlcnNpb24tbWluPTEwLjEyIgorICAgICAgOzsKKyAgICAqLWRhcndp
bjE3LSopCisgICAgICBhZGRfY2ZsYWdzICAiLW1tYWNvc3gtdmVyc2lvbi1taW49MTAuMTMiCisg
ICAgICBhZGRfbGRmbGFncyAiLW1tYWNvc3gtdmVyc2lvbi1taW49MTAuMTMiCisgICAgICA7Owor
ICAgICotZGFyd2luMTgtKikKKyAgICAgIGFkZF9jZmxhZ3MgICItbW1hY29zeC12ZXJzaW9uLW1p
bj0xMC4xNCIKKyAgICAgIGFkZF9sZGZsYWdzICItbW1hY29zeC12ZXJzaW9uLW1pbj0xMC4xNCIK
KyAgICAgIDs7CisgICAgKi1kYXJ3aW4xOS0qKQorICAgICAgYWRkX2NmbGFncyAgIi1tbWFjb3N4
LXZlcnNpb24tbWluPTEwLjE1IgorICAgICAgYWRkX2xkZmxhZ3MgIi1tbWFjb3N4LXZlcnNpb24t
bWluPTEwLjE1IgorICAgICAgOzsKKyAgICAqLWRhcndpbjIwLSopCisgICAgICBhZGRfY2ZsYWdz
ICAiLW1tYWNvc3gtdmVyc2lvbi1taW49MTAuMTYgLWFyY2ggJHt0b29sY2hhaW4lJS0qfSIKKyAg
ICAgIGFkZF9sZGZsYWdzICItbW1hY29zeC12ZXJzaW9uLW1pbj0xMC4xNiAtYXJjaCAke3Rvb2xj
aGFpbiUlLSp9IgorICAgICAgOzsKKyAgICAqLWlwaG9uZXNpbXVsYXRvci0qKQorICAgICAgYWRk
X2NmbGFncyAgIi1taXBob25lb3MtdmVyc2lvbi1taW49JHtJT1NfVkVSU0lPTl9NSU59IgorICAg
ICAgYWRkX2xkZmxhZ3MgIi1taXBob25lb3MtdmVyc2lvbi1taW49JHtJT1NfVkVSU0lPTl9NSU59
IgorICAgICAgaW9zc2ltX3Nka19kaXI9IiQoc2hvd19kYXJ3aW5fc2RrX3BhdGggaXBob25lc2lt
dWxhdG9yKSIKKyAgICAgIGlmIFsgLWQgIiR7aW9zc2ltX3Nka19kaXJ9IiBdOyB0aGVuCisgICAg
ICAgIGFkZF9jZmxhZ3MgICItaXN5c3Jvb3QgJHtpb3NzaW1fc2RrX2Rpcn0iCisgICAgICAgIGFk
ZF9sZGZsYWdzICItaXN5c3Jvb3QgJHtpb3NzaW1fc2RrX2Rpcn0iCisgICAgICBmaQorICAgICAg
OzsKKyAgZXNhYworCisgICMgSGFuZGxlIFNvbGFyaXMgdmFyaWFudHMuIFNvbGFyaXMgMTAgbmVl
ZHMgLWxwb3NpeDQKKyAgY2FzZSAke3Rvb2xjaGFpbn0gaW4KKyAgICBzcGFyYy1zb2xhcmlzLSop
CisgICAgICBhZGRfZXh0cmFsaWJzIC1scG9zaXg0CisgICAgICA7OworICAgICotc29sYXJpcy0q
KQorICAgICAgYWRkX2V4dHJhbGlicyAtbHBvc2l4NAorICAgICAgOzsKKyAgZXNhYworCisgICMg
UHJvY2VzcyBBUk0gYXJjaGl0ZWN0dXJlIHZhcmlhbnRzCisgIGNhc2UgJHt0b29sY2hhaW59IGlu
CisgICAgYXJtKikKKyAgICAgICMgb24gYXJtLCBpc2EgdmVyc2lvbnMgYXJlIHN1cGVyc2V0cwor
ICAgICAgY2FzZSAke3RndF9pc2F9IGluCisgICAgICAgIGFybTY0fGFybXY4KQorICAgICAgICAg
IHNvZnRfZW5hYmxlIG5lb24KKyAgICAgICAgICA7OworICAgICAgICBhcm12N3xhcm12N3MpCisg
ICAgICAgICAgc29mdF9lbmFibGUgbmVvbgorICAgICAgICAgICMgT25seSBlbmFibGUgbmVvbl9h
c20gd2hlbiBuZW9uIGlzIGFsc28gZW5hYmxlZC4KKyAgICAgICAgICBlbmFibGVkIG5lb24gJiYg
c29mdF9lbmFibGUgbmVvbl9hc20KKyAgICAgICAgICAjIElmIHNvbWVvbmUgdHJpZXMgdG8gZm9y
Y2UgaXQgdGhyb3VnaCwgZGllLgorICAgICAgICAgIGlmIGRpc2FibGVkIG5lb24gJiYgZW5hYmxl
ZCBuZW9uX2FzbTsgdGhlbgorICAgICAgICAgICAgZGllICJEaXNhYmxpbmcgbmVvbiB3aGlsZSBr
ZWVwaW5nIG5lb24tYXNtIGlzIG5vdCBzdXBwb3J0ZWQiCisgICAgICAgICAgZmkKKyAgICAgICAg
ICA7OworICAgICAgZXNhYworCisgICAgICBhc21fY29udmVyc2lvbl9jbWQ9ImNhdCIKKworICAg
ICAgY2FzZSAke3RndF9jY30gaW4KKyAgICAgICAgZ2NjKQorICAgICAgICAgIGxpbmtfd2l0aF9j
Yz1nY2MKKyAgICAgICAgICBzZXR1cF9nbnVfdG9vbGNoYWluCisgICAgICAgICAgYXJjaF9pbnQ9
JHt0Z3RfaXNhIyNhcm12fQorICAgICAgICAgIGFyY2hfaW50PSR7YXJjaF9pbnQlJXRlfQorICAg
ICAgICAgIHR1bmVfY2ZsYWdzPSItbXR1bmU9IgorICAgICAgICAgIGlmIFsgJHt0Z3RfaXNhfSA9
ICJhcm12NyIgXSB8fCBbICR7dGd0X2lzYX0gPSAiYXJtdjdzIiBdOyB0aGVuCisgICAgICAgICAg
ICBpZiBbIC16ICIke2Zsb2F0X2FiaX0iIF07IHRoZW4KKyAgICAgICAgICAgICAgY2hlY2tfY3Bw
IDw8RU9GICYmIGZsb2F0X2FiaT1oYXJkIHx8IGZsb2F0X2FiaT1zb2Z0ZnAKKyNpZm5kZWYgX19B
Uk1fUENTX1ZGUAorI2Vycm9yICJub3QgaGFyZGZwIgorI2VuZGlmCitFT0YKKyAgICAgICAgICAg
IGZpCisgICAgICAgICAgICBjaGVja19hZGRfY2ZsYWdzICAtbWFyY2g9YXJtdjctYSAtbWZsb2F0
LWFiaT0ke2Zsb2F0X2FiaX0KKyAgICAgICAgICAgIGNoZWNrX2FkZF9hc2ZsYWdzIC1tYXJjaD1h
cm12Ny1hIC1tZmxvYXQtYWJpPSR7ZmxvYXRfYWJpfQorCisgICAgICAgICAgICBpZiBlbmFibGVk
IG5lb24gfHwgZW5hYmxlZCBuZW9uX2FzbTsgdGhlbgorICAgICAgICAgICAgICBjaGVja19hZGRf
Y2ZsYWdzIC1tZnB1PW5lb24gIy1mdHJlZS12ZWN0b3JpemUKKyAgICAgICAgICAgICAgY2hlY2tf
YWRkX2FzZmxhZ3MgLW1mcHU9bmVvbgorICAgICAgICAgICAgZmkKKyAgICAgICAgICBlbGlmIFsg
JHt0Z3RfaXNhfSA9ICJhcm02NCIgXSB8fCBbICR7dGd0X2lzYX0gPSAiYXJtdjgiIF07IHRoZW4K
KyAgICAgICAgICAgIGNoZWNrX2FkZF9jZmxhZ3MgLW1hcmNoPWFybXY4LWEKKyAgICAgICAgICAg
IGNoZWNrX2FkZF9hc2ZsYWdzIC1tYXJjaD1hcm12OC1hCisgICAgICAgICAgZWxzZQorICAgICAg
ICAgICAgY2hlY2tfYWRkX2NmbGFncyAtbWFyY2g9JHt0Z3RfaXNhfQorICAgICAgICAgICAgY2hl
Y2tfYWRkX2FzZmxhZ3MgLW1hcmNoPSR7dGd0X2lzYX0KKyAgICAgICAgICBmaQorCisgICAgICAg
ICAgZW5hYmxlZCBkZWJ1ZyAmJiBhZGRfYXNmbGFncyAtZworICAgICAgICAgIGFzbV9jb252ZXJz
aW9uX2NtZD0iJHtzb3VyY2VfcGF0aF9ta30vYnVpbGQvbWFrZS9hZHMyZ2FzLnBsIgorCisgICAg
ICAgICAgY2FzZSAke3RndF9vc30gaW4KKyAgICAgICAgICAgIHdpbiopCisgICAgICAgICAgICAg
IGFzbV9jb252ZXJzaW9uX2NtZD0iJGFzbV9jb252ZXJzaW9uX2NtZCAtbm9lbGYiCisgICAgICAg
ICAgICAgIEFTPSIkQ0MgLWMiCisgICAgICAgICAgICAgIEVYRV9TRlg9LmV4ZQorICAgICAgICAg
ICAgICBlbmFibGVfZmVhdHVyZSB0aHVtYgorICAgICAgICAgICAgICA7OworICAgICAgICAgIGVz
YWMKKworICAgICAgICAgIGlmIGVuYWJsZWQgdGh1bWI7IHRoZW4KKyAgICAgICAgICAgIGFzbV9j
b252ZXJzaW9uX2NtZD0iJGFzbV9jb252ZXJzaW9uX2NtZCAtdGh1bWIiCisgICAgICAgICAgICBj
aGVja19hZGRfY2ZsYWdzIC1tdGh1bWIKKyAgICAgICAgICAgIGNoZWNrX2FkZF9hc2ZsYWdzIC1t
dGh1bWIgLW1pbXBsaWNpdC1pdD1hbHdheXMKKyAgICAgICAgICBmaQorICAgICAgICAgIDs7Cisg
ICAgICAgIHZzKikKKyAgICAgICAgICAjIEEgbnVtYmVyIG9mIEFSTS1iYXNlZCBXaW5kb3dzIHBs
YXRmb3JtcyBhcmUgY29uc3RyYWluZWQgYnkgdGhlaXIKKyAgICAgICAgICAjIHJlc3BlY3RpdmUg
U0RLcycgbGltaXRhdGlvbnMuIEZvcnR1bmF0ZWx5LCB0aGVzZSBhcmUgYWxsIDMyLWJpdCBBQklz
CisgICAgICAgICAgIyBhbmQgc28gY2FuIGJlIHNlbGVjdGVkIGFzICd3aW4zMicuCisgICAgICAg
ICAgaWYgWyAke3RndF9vc30gPSAid2luMzIiIF07IHRoZW4KKyAgICAgICAgICAgIGFzbV9jb252
ZXJzaW9uX2NtZD0iJHtzb3VyY2VfcGF0aF9ta30vYnVpbGQvbWFrZS9hZHMyYXJtYXNtX21zLnBs
IgorICAgICAgICAgICAgQVNfU0ZYPS5TCisgICAgICAgICAgICBtc3ZzX2FyY2hfZGlyPWFybS1t
c3ZzCisgICAgICAgICAgICBkaXNhYmxlX2ZlYXR1cmUgbXVsdGl0aHJlYWQKKyAgICAgICAgICAg
IGRpc2FibGVfZmVhdHVyZSB1bml0X3Rlc3RzCisgICAgICAgICAgICBpZiBbICR7dGd0X2NjIyN2
c30gLWdlIDEyIF07IHRoZW4KKyAgICAgICAgICAgICAgIyBNU1ZDIDIwMTMgZG9lc24ndCBhbGxv
dyBkb2luZyBwbGFpbiAuZXhlIHByb2plY3RzIGZvciBBUk0zMiwKKyAgICAgICAgICAgICAgIyBv
bmx5ICJBcHBDb250YWluZXJBcHBsaWNhdGlvbiIgd2hpY2ggcmVxdWlyZXMgYW4gQXBweE1hbmlm
ZXN0LgorICAgICAgICAgICAgICAjIFRoZXJlZm9yZSBkaXNhYmxlIHRoZSBleGFtcGxlcywganVz
dCBidWlsZCB0aGUgbGlicmFyeS4KKyAgICAgICAgICAgICAgZGlzYWJsZV9mZWF0dXJlIGV4YW1w
bGVzCisgICAgICAgICAgICAgIGRpc2FibGVfZmVhdHVyZSB0b29scworICAgICAgICAgICAgZmkK
KyAgICAgICAgICBlbHNlCisgICAgICAgICAgICAjIFdpbmRvd3MgMTAgb24gQVJNLCBvbiB0aGUg
b3RoZXIgaGFuZCwgaGFzIGZ1bGwgV2luZG93cyBTREsgc3VwcG9ydAorICAgICAgICAgICAgIyBm
b3IgYnVpbGRpbmcgV2luMzIgQVJNNjQgYXBwbGljYXRpb25zIGluIGFkZGl0aW9uIHRvIEFSTTY0
CisgICAgICAgICAgICAjIFdpbmRvd3MgU3RvcmUgYXBwcy4gSXQgaXMgdGhlIG9ubHkgNjQtYml0
IEFSTSBBQkkgdGhhdAorICAgICAgICAgICAgIyBXaW5kb3dzIHN1cHBvcnRzLCBzbyBpdCBpcyB0
aGUgZGVmYXVsdCBkZWZpbml0aW9uIG9mICd3aW42NCcuCisgICAgICAgICAgICAjIEFSTTY0IGJ1
aWxkIHN1cHBvcnQgb2ZmaWNpYWxseSBzaGlwcGVkIGluIFZpc3VhbCBTdHVkaW8gMTUuOS4wLgor
CisgICAgICAgICAgICAjIEJlY2F1c2UgdGhlIEFSTTY0IFdpbmRvd3MgU0RLJ3MgYXJtX25lb24u
aCBpcyBBUk0zMi1zcGVjaWZpYworICAgICAgICAgICAgIyB3aGlsZSBMTFZNJ3MgaXMgbm90LCBw
cm9iZSBpdHMgdmFsaWRpdHkuCisgICAgICAgICAgICBpZiBlbmFibGVkIG5lb247IHRoZW4KKyAg
ICAgICAgICAgICAgaWYgWyAtbiAiJHtDQ30iIF07IHRoZW4KKyAgICAgICAgICAgICAgICBjaGVj
a19oZWFkZXIgYXJtX25lb24uaCB8fCBjaGVja19oZWFkZXIgYXJtNjRfbmVvbi5oICYmIFwKKyAg
ICAgICAgICAgICAgICAgICAgZW5hYmxlX2ZlYXR1cmUgd2luX2FybTY0X25lb25faF93b3JrYXJv
dW5kCisgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAjIElmIGEgcHJvYmUgaXMg
bm90IHBvc3NpYmxlLCBhc3N1bWUgdGhpcyBpcyB0aGUgcHVyZSBXaW5kb3dzCisgICAgICAgICAg
ICAgICAgIyBTREsgYW5kIHNvIHRoZSB3b3JrYXJvdW5kIGlzIG5lY2Vzc2FyeS4KKyAgICAgICAg
ICAgICAgICBlbmFibGVfZmVhdHVyZSB3aW5fYXJtNjRfbmVvbl9oX3dvcmthcm91bmQKKyAgICAg
ICAgICAgICAgZmkKKyAgICAgICAgICAgIGZpCisgICAgICAgICAgZmkKKyAgICAgICAgICA7Owor
ICAgICAgICBydmN0KQorICAgICAgICAgIENDPWFybWNjCisgICAgICAgICAgQVI9YXJtYXIKKyAg
ICAgICAgICBBUz1hcm1hc20KKyAgICAgICAgICBMRD0iJHtzb3VyY2VfcGF0aH0vYnVpbGQvbWFr
ZS9hcm1saW5rX2FkYXB0ZXIuc2giCisgICAgICAgICAgU1RSSVA9YXJtLW5vbmUtbGludXgtZ251
ZWFiaS1zdHJpcAorICAgICAgICAgIE5NPWFybS1ub25lLWxpbnV4LWdudWVhYmktbm0KKyAgICAg
ICAgICB0dW5lX2NmbGFncz0iLS1jcHU9IgorICAgICAgICAgIHR1bmVfYXNmbGFncz0iLS1jcHU9
IgorICAgICAgICAgIGlmIFsgLXogIiR7dHVuZV9jcHV9IiBdOyB0aGVuCisgICAgICAgICAgICBp
ZiBbICR7dGd0X2lzYX0gPSAiYXJtdjciIF07IHRoZW4KKyAgICAgICAgICAgICAgaWYgZW5hYmxl
ZCBuZW9uIHx8IGVuYWJsZWQgbmVvbl9hc20KKyAgICAgICAgICAgICAgdGhlbgorICAgICAgICAg
ICAgICAgIGNoZWNrX2FkZF9jZmxhZ3MgLS1mcHU9c29mdHZmcCt2ZnB2MworICAgICAgICAgICAg
ICAgIGNoZWNrX2FkZF9hc2ZsYWdzIC0tZnB1PXNvZnR2ZnArdmZwdjMKKyAgICAgICAgICAgICAg
ZmkKKyAgICAgICAgICAgICAgY2hlY2tfYWRkX2NmbGFncyAtLWNwdT1Db3J0ZXgtQTgKKyAgICAg
ICAgICAgICAgY2hlY2tfYWRkX2FzZmxhZ3MgLS1jcHU9Q29ydGV4LUE4CisgICAgICAgICAgICBl
bHNlCisgICAgICAgICAgICAgIGNoZWNrX2FkZF9jZmxhZ3MgLS1jcHU9JHt0Z3RfaXNhIyNhcm12
fQorICAgICAgICAgICAgICBjaGVja19hZGRfYXNmbGFncyAtLWNwdT0ke3RndF9pc2EjI2FybXZ9
CisgICAgICAgICAgICBmaQorICAgICAgICAgIGZpCisgICAgICAgICAgYXJjaF9pbnQ9JHt0Z3Rf
aXNhIyNhcm12fQorICAgICAgICAgIGFyY2hfaW50PSR7YXJjaF9pbnQlJXRlfQorICAgICAgICAg
IGVuYWJsZWQgZGVidWcgJiYgYWRkX2FzZmxhZ3MgLWcKKyAgICAgICAgICBhZGRfY2ZsYWdzIC0t
Z251CisgICAgICAgICAgYWRkX2NmbGFncyAtLWVudW1faXNfaW50CisgICAgICAgICAgYWRkX2Nm
bGFncyAtLXdjaGFyMzIKKyAgICAgICAgICA7OworICAgICAgZXNhYworCisgICAgICBjYXNlICR7
dGd0X29zfSBpbgorICAgICAgICBub25lKikKKyAgICAgICAgICBkaXNhYmxlX2ZlYXR1cmUgbXVs
dGl0aHJlYWQKKyAgICAgICAgICBkaXNhYmxlX2ZlYXR1cmUgb3Nfc3VwcG9ydAorICAgICAgICAg
IDs7CisKKyAgICAgICAgYW5kcm9pZCopCisgICAgICAgICAgZWNobyAiQXNzdW1pbmcgc3RhbmRh
bG9uZSBidWlsZCB3aXRoIE5ESyB0b29sY2hhaW4uIgorICAgICAgICAgIGVjaG8gIlNlZSBidWls
ZC9tYWtlL0FuZHJvaWQubWsgZm9yIGRldGFpbHMuIgorICAgICAgICAgIGNoZWNrX2FkZF9sZGZs
YWdzIC1zdGF0aWMKKyAgICAgICAgICBzb2Z0X2VuYWJsZSB1bml0X3Rlc3RzCisgICAgICAgICAg
OzsKKworICAgICAgICBkYXJ3aW4pCisgICAgICAgICAgaWYgISBlbmFibGVkIGV4dGVybmFsX2J1
aWxkOyB0aGVuCisgICAgICAgICAgICBYQ1JVTl9GSU5EPSJ4Y3J1biAtLXNkayBpcGhvbmVvcyAt
LWZpbmQiCisgICAgICAgICAgICBDWFg9IiQoJHtYQ1JVTl9GSU5EfSBjbGFuZysrKSIKKyAgICAg
ICAgICAgIENDPSIkKCR7WENSVU5fRklORH0gY2xhbmcpIgorICAgICAgICAgICAgQVI9IiQoJHtY
Q1JVTl9GSU5EfSBhcikiCisgICAgICAgICAgICBBUz0iJCgke1hDUlVOX0ZJTkR9IGFzKSIKKyAg
ICAgICAgICAgIFNUUklQPSIkKCR7WENSVU5fRklORH0gc3RyaXApIgorICAgICAgICAgICAgTk09
IiQoJHtYQ1JVTl9GSU5EfSBubSkiCisgICAgICAgICAgICBSQU5MSUI9IiQoJHtYQ1JVTl9GSU5E
fSByYW5saWIpIgorICAgICAgICAgICAgQVNfU0ZYPS5TCisgICAgICAgICAgICBMRD0iJHtDWFg6
LSQoJHtYQ1JVTl9GSU5EfSBsZCl9IgorCisgICAgICAgICAgICAjIEFTRkxBR1MgaXMgd3JpdHRl
biBoZXJlIGluc3RlYWQgb2YgdXNpbmcgY2hlY2tfYWRkX2FzZmxhZ3MKKyAgICAgICAgICAgICMg
YmVjYXVzZSB3ZSBuZWVkIHRvIG92ZXJ3cml0ZSBhbGwgb2YgQVNGTEFHUyBhbmQgcHVyZ2UgdGhl
CisgICAgICAgICAgICAjIG9wdGlvbnMgdGhhdCB3ZXJlIHB1dCBpbiBhYm92ZQorICAgICAgICAg
ICAgQVNGTEFHUz0iLWFyY2ggJHt0Z3RfaXNhfSAtZyIKKworICAgICAgICAgICAgYWRkX2NmbGFn
cyAtYXJjaCAke3RndF9pc2F9CisgICAgICAgICAgICBhZGRfbGRmbGFncyAtYXJjaCAke3RndF9p
c2F9CisKKyAgICAgICAgICAgIGFsdF9saWJjPSIkKHNob3dfZGFyd2luX3Nka19wYXRoIGlwaG9u
ZW9zKSIKKyAgICAgICAgICAgIGlmIFsgLWQgIiR7YWx0X2xpYmN9IiBdOyB0aGVuCisgICAgICAg
ICAgICAgIGFkZF9jZmxhZ3MgLWlzeXNyb290ICR7YWx0X2xpYmN9CisgICAgICAgICAgICBmaQor
CisgICAgICAgICAgICBpZiBbICIke0xEfSIgPSAiJHtDWFh9IiBdOyB0aGVuCisgICAgICAgICAg
ICAgIGFkZF9sZGZsYWdzIC1taXBob25lb3MtdmVyc2lvbi1taW49IiR7SU9TX1ZFUlNJT05fTUlO
fSIKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgYWRkX2xkZmxhZ3MgLWlvc192ZXJz
aW9uX21pbiAiJHtJT1NfVkVSU0lPTl9NSU59IgorICAgICAgICAgICAgZmkKKworICAgICAgICAg
ICAgZm9yIGQgaW4gbGliIHVzci9saWIgdXNyL2xpYi9zeXN0ZW07IGRvCisgICAgICAgICAgICAg
IHRyeV9kaXI9IiR7YWx0X2xpYmN9LyR7ZH0iCisgICAgICAgICAgICAgIFsgLWQgIiR7dHJ5X2Rp
cn0iIF0gJiYgYWRkX2xkZmxhZ3MgLUwiJHt0cnlfZGlyfSIKKyAgICAgICAgICAgIGRvbmUKKwor
ICAgICAgICAgICAgY2FzZSAke3RndF9pc2F9IGluCisgICAgICAgICAgICAgIGFybXY3fGFybXY3
c3xhcm12OHxhcm02NCkKKyAgICAgICAgICAgICAgICBpZiBlbmFibGVkIG5lb24gJiYgISBjaGVj
a194Y29kZV9taW5pbXVtX3ZlcnNpb247IHRoZW4KKyAgICAgICAgICAgICAgICAgIHNvZnRfZGlz
YWJsZSBuZW9uCisgICAgICAgICAgICAgICAgICBsb2dfZWNobyAiICBuZW9uIGRpc2FibGVkOiB1
cGdyYWRlIFhjb2RlIChuZWVkIHY2LjMrKS4iCisgICAgICAgICAgICAgICAgICBpZiBlbmFibGVk
IG5lb25fYXNtOyB0aGVuCisgICAgICAgICAgICAgICAgICAgIHNvZnRfZGlzYWJsZSBuZW9uX2Fz
bQorICAgICAgICAgICAgICAgICAgICBsb2dfZWNobyAiICBuZW9uX2FzbSBkaXNhYmxlZDogdXBn
cmFkZSBYY29kZSAobmVlZCB2Ni4zKykuIgorICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAg
ICAgICAgICBmaQorICAgICAgICAgICAgICAgIDs7CisgICAgICAgICAgICBlc2FjCisKKyAgICAg
ICAgICAgIGlmIFsgIiQoc2hvd19kYXJ3aW5fc2RrX21ham9yX3ZlcnNpb24gaXBob25lb3MpIiAt
Z3QgOCBdOyB0aGVuCisgICAgICAgICAgICAgIGNoZWNrX2FkZF9jZmxhZ3MgLWZlbWJlZC1iaXRj
b2RlCisgICAgICAgICAgICAgIGNoZWNrX2FkZF9hc2ZsYWdzIC1mZW1iZWQtYml0Y29kZQorICAg
ICAgICAgICAgICBjaGVja19hZGRfbGRmbGFncyAtZmVtYmVkLWJpdGNvZGUKKyAgICAgICAgICAg
IGZpCisgICAgICAgICAgZmkKKworICAgICAgICAgIGFzbV9jb252ZXJzaW9uX2NtZD0iJHtzb3Vy
Y2VfcGF0aF9ta30vYnVpbGQvbWFrZS9hZHMyZ2FzX2FwcGxlLnBsIgorICAgICAgICAgIDs7CisK
KyAgICAgICAgbGludXgqKQorICAgICAgICAgIGVuYWJsZV9mZWF0dXJlIGxpbnV4CisgICAgICAg
ICAgaWYgZW5hYmxlZCBydmN0OyB0aGVuCisgICAgICAgICAgICAjIENoZWNrIGlmIHdlIGhhdmUg
Q29kZVNvdXJjZXJ5IEdDQyBpbiBQQVRILiBOZWVkZWQgZm9yCisgICAgICAgICAgICAjIGxpYnJh
cmllcworICAgICAgICAgICAgd2hpY2ggYXJtLW5vbmUtbGludXgtZ251ZWFiaS1nY2MgMj4mLSB8
fCBcCisgICAgICAgICAgICAgIGRpZSAiQ291bGRuJ3QgZmluZCBDb2RlU291cmNlcnkgR0NDIGZy
b20gUEFUSCIKKworICAgICAgICAgICAgIyBVc2UgYXJtY2MgYXMgYSBsaW5rZXIgdG8gZW5hYmxl
IHRyYW5zbGF0aW9uIG9mCisgICAgICAgICAgICAjIHNvbWUgZ2NjIHNwZWNpZmljIG9wdGlvbnMg
c3VjaCBhcyAtbG0gYW5kIC1scHRocmVhZC4KKyAgICAgICAgICAgIExEPSJhcm1jYyAtLXRyYW5z
bGF0ZV9nY2MiCisKKyAgICAgICAgICAgICMgY3JlYXRlIGNvbmZpZ3VyYXRpb24gZmlsZSAodXNl
cyBwYXRoIHRvIENvZGVTb3VyY2VyeSBHQ0MpCisgICAgICAgICAgICBhcm1jYyAtLWFybV9saW51
eF9jb25maWd1cmUgLS1hcm1fbGludXhfY29uZmlnX2ZpbGU9YXJtX2xpbnV4LmNmZworCisgICAg
ICAgICAgICBhZGRfY2ZsYWdzIC0tYXJtX2xpbnV4X3BhdGhzIC0tYXJtX2xpbnV4X2NvbmZpZ19m
aWxlPWFybV9saW51eC5jZmcKKyAgICAgICAgICAgIGFkZF9hc2ZsYWdzIC0tbm9faGlkZV9hbGwg
LS1hcGNzPS9pbnRlcndvcmsKKyAgICAgICAgICAgIGFkZF9sZGZsYWdzIC0tYXJtX2xpbnV4X3Bh
dGhzIC0tYXJtX2xpbnV4X2NvbmZpZ19maWxlPWFybV9saW51eC5jZmcKKyAgICAgICAgICAgIGVu
YWJsZWQgcGljICYmIGFkZF9jZmxhZ3MgLS1hcGNzPS9mcGljCisgICAgICAgICAgICBlbmFibGVk
IHBpYyAmJiBhZGRfYXNmbGFncyAtLWFwY3M9L2ZwaWMKKyAgICAgICAgICAgIGVuYWJsZWQgc2hh
cmVkICYmIGFkZF9jZmxhZ3MgLS1zaGFyZWQKKyAgICAgICAgICBmaQorICAgICAgICAgIDs7Cisg
ICAgICBlc2FjCisgICAgICA7OworICAgIG1pcHMqKQorICAgICAgbGlua193aXRoX2NjPWdjYwor
ICAgICAgc2V0dXBfZ251X3Rvb2xjaGFpbgorICAgICAgdHVuZV9jZmxhZ3M9Ii1tdHVuZT0iCisg
ICAgICBpZiBlbmFibGVkIGRzcHIyOyB0aGVuCisgICAgICAgIGNoZWNrX2FkZF9jZmxhZ3MgLW1p
cHMzMnIyIC1tZHNwcjIKKyAgICAgIGZpCisKKyAgICAgIGlmIGVuYWJsZWQgcnVudGltZV9jcHVf
ZGV0ZWN0OyB0aGVuCisgICAgICAgIGRpc2FibGVfZmVhdHVyZSBydW50aW1lX2NwdV9kZXRlY3QK
KyAgICAgIGZpCisKKyAgICAgIGlmIFsgLW4gIiR7dHVuZV9jcHV9IiBdOyB0aGVuCisgICAgICAg
IGNhc2UgJHt0dW5lX2NwdX0gaW4KKyAgICAgICAgICBwNTYwMCkKKyAgICAgICAgICAgIGNoZWNr
X2FkZF9jZmxhZ3MgLW1pcHMzMnI1IC1tbG9hZC1zdG9yZS1wYWlycworICAgICAgICAgICAgY2hl
Y2tfYWRkX2NmbGFncyAtbXNjaGVkLXdlaWdodCAtbWhhcmQtZmxvYXQgLW1mcDY0CisgICAgICAg
ICAgICBjaGVja19hZGRfYXNmbGFncyAtbWlwczMycjUgLW1oYXJkLWZsb2F0IC1tZnA2NAorICAg
ICAgICAgICAgY2hlY2tfYWRkX2xkZmxhZ3MgLW1mcDY0CisgICAgICAgICAgICA7OworICAgICAg
ICAgIGk2NDAwfHA2NjAwKQorICAgICAgICAgICAgY2hlY2tfYWRkX2NmbGFncyAtbWlwczY0cjYg
LW1hYmk9NjQgLW1zY2hlZC13ZWlnaHQKKyAgICAgICAgICAgIGNoZWNrX2FkZF9jZmxhZ3MgIC1t
bG9hZC1zdG9yZS1wYWlycyAtbWhhcmQtZmxvYXQgLW1mcDY0CisgICAgICAgICAgICBjaGVja19h
ZGRfYXNmbGFncyAtbWlwczY0cjYgLW1hYmk9NjQgLW1oYXJkLWZsb2F0IC1tZnA2NAorICAgICAg
ICAgICAgY2hlY2tfYWRkX2xkZmxhZ3MgLW1pcHM2NHI2IC1tYWJpPTY0IC1tZnA2NAorICAgICAg
ICAgICAgOzsKKyAgICAgICAgICBsb29uZ3NvbjMqKQorICAgICAgICAgICAgY2hlY2tfY2ZsYWdz
IC1tYXJjaD1sb29uZ3NvbjNhICYmIHNvZnRfZW5hYmxlIG1taSBcCisgICAgICAgICAgICAgIHx8
IGRpc2FibGVfZmVhdHVyZSBtbWkKKyAgICAgICAgICAgIGNoZWNrX2NmbGFncyAtbW1zYSAmJiBz
b2Z0X2VuYWJsZSBtc2EgXAorICAgICAgICAgICAgICB8fCBkaXNhYmxlX2ZlYXR1cmUgbXNhCisg
ICAgICAgICAgICB0Z3RfaXNhPWxvb25nc29uM2EKKyAgICAgICAgICAgIDs7CisgICAgICAgIGVz
YWMKKworICAgICAgICBpZiBlbmFibGVkIG1taSB8fCBlbmFibGVkIG1zYTsgdGhlbgorICAgICAg
ICAgIHNvZnRfZW5hYmxlIHJ1bnRpbWVfY3B1X2RldGVjdAorICAgICAgICBmaQorCisgICAgICAg
IGlmIGVuYWJsZWQgbXNhOyB0aGVuCisgICAgICAgICAgIyBUT0RPKGxpYnl1djo3OTMpCisgICAg
ICAgICAgIyBUaGUgbmV3IG1pcHMgZnVuY3Rpb25zIGluIGxpYnl1diBkbyBub3QgYnVpbGQKKyAg
ICAgICAgICAjIHdpdGggdGhlIHRvb2xjaGFpbnMgd2UgY3VycmVudGx5IHVzZSBmb3IgdGVzdGlu
Zy4KKyAgICAgICAgICBzb2Z0X2Rpc2FibGUgbGlieXV2CisgICAgICAgIGZpCisgICAgICBmaQor
CisgICAgICBjaGVja19hZGRfY2ZsYWdzIC1tYXJjaD0ke3RndF9pc2F9CisgICAgICBjaGVja19h
ZGRfYXNmbGFncyAtbWFyY2g9JHt0Z3RfaXNhfQorICAgICAgY2hlY2tfYWRkX2FzZmxhZ3MgLUtQ
SUMKKyAgICAgIDs7CisgICAgcHBjNjRsZSopCisgICAgICBsaW5rX3dpdGhfY2M9Z2NjCisgICAg
ICBzZXR1cF9nbnVfdG9vbGNoYWluCisgICAgICAjIERvIG5vdCBlbmFibGUgdnN4IGJ5IGRlZmF1
bHQuCisgICAgICAjIGh0dHBzOi8vYnVncy5jaHJvbWl1bS5vcmcvcC93ZWJtL2lzc3Vlcy9kZXRh
aWw/aWQ9MTUyMgorICAgICAgZW5hYmxlZCB2c3ggfHwgUlRDRF9PUFRJT05TPSIke1JUQ0RfT1BU
SU9OU30tLWRpc2FibGUtdnN4ICIKKyAgICAgIGlmIFsgLW4gIiR7dHVuZV9jcHV9IiBdOyB0aGVu
CisgICAgICAgIGNhc2UgJHt0dW5lX2NwdX0gaW4KKyAgICAgICAgICBwb3dlcj8pCisgICAgICAg
ICAgICB0dW5lX2NmbGFncz0iLW1jcHU9IgorICAgICAgICAgICAgOzsKKyAgICAgICAgZXNhYwor
ICAgICAgZmkKKyAgICAgIDs7CisgICAgeDg2KikKKyAgICAgIGNhc2UgICR7dGd0X29zfSBpbgor
ICAgICAgICBhbmRyb2lkKQorICAgICAgICAgIHNvZnRfZW5hYmxlIHJlYWx0aW1lX29ubHkKKyAg
ICAgICAgICA7OworICAgICAgICB3aW4qKQorICAgICAgICAgIGVuYWJsZWQgZ2NjICYmIGFkZF9j
ZmxhZ3MgLWZuby1jb21tb24KKyAgICAgICAgICA7OworICAgICAgICBzb2xhcmlzKikKKyAgICAg
ICAgICBDQz0ke0NDOi0ke0NST1NTfWdjY30KKyAgICAgICAgICBDWFg9JHtDWFg6LSR7Q1JPU1N9
ZysrfQorICAgICAgICAgIExEPSR7TEQ6LSR7Q1JPU1N9Z2NjfQorICAgICAgICAgIENST1NTPSR7
Q1JPU1MtZ30KKyAgICAgICAgICA7OworICAgICAgICBvczIpCisgICAgICAgICAgZGlzYWJsZV9m
ZWF0dXJlIHBpYworICAgICAgICAgIEFTPSR7QVM6LW5hc219CisgICAgICAgICAgYWRkX2xkZmxh
Z3MgLVpoaWdoLW1lbQorICAgICAgICAgIDs7CisgICAgICBlc2FjCisKKyAgICAgIEFTPSIke2Fs
dF9hczotJHtBUzotYXV0b319IgorICAgICAgY2FzZSAgJHt0Z3RfY2N9IGluCisgICAgICAgIGlj
YyopCisgICAgICAgICAgQ0M9JHtDQzotaWNjfQorICAgICAgICAgIExEPSR7TEQ6LWljY30KKyAg
ICAgICAgICBzZXR1cF9nbnVfdG9vbGNoYWluCisgICAgICAgICAgYWRkX2NmbGFncyAtdXNlLW1z
YXNtICAjIHJlbW92ZSAtdXNlLW1zYXNtIHRvbz8KKyAgICAgICAgICAjIGFkZCAtbm8taW50ZWwt
ZXh0ZW5zaW9ucyB0byBzdXBwcmVzcyB3YXJuaW5nICMxMDIzNworICAgICAgICAgICMgcmVmZXIg
dG8gaHR0cDovL3NvZnR3YXJlLmludGVsLmNvbS9lbi11cy9mb3J1bXMvdG9waWMvMjgwMTk5Cisg
ICAgICAgICAgYWRkX2xkZmxhZ3MgLWktc3RhdGljIC1uby1pbnRlbC1leHRlbnNpb25zCisgICAg
ICAgICAgZW5hYmxlZCB4ODZfNjQgJiYgYWRkX2NmbGFncyAtaXBvIC1zdGF0aWMgLU8zIC1uby1w
cmVjLWRpdgorICAgICAgICAgIGVuYWJsZWQgeDg2XzY0ICYmIEFSPXhpYXIKKyAgICAgICAgICBj
YXNlICR7dHVuZV9jcHV9IGluCisgICAgICAgICAgICBhdG9tKikKKyAgICAgICAgICAgICAgdHVu
ZV9jZmxhZ3M9Ii14IgorICAgICAgICAgICAgICB0dW5lX2NwdT0iU1NFM19BVE9NIgorICAgICAg
ICAgICAgICA7OworICAgICAgICAgICAgKikKKyAgICAgICAgICAgICAgdHVuZV9jZmxhZ3M9Ii1t
YXJjaD0iCisgICAgICAgICAgICAgIDs7CisgICAgICAgICAgZXNhYworICAgICAgICAgIDs7Cisg
ICAgICAgIGdjYyopCisgICAgICAgICAgbGlua193aXRoX2NjPWdjYworICAgICAgICAgIHR1bmVf
Y2ZsYWdzPSItbWFyY2g9IgorICAgICAgICAgIHNldHVwX2dudV90b29sY2hhaW4KKyAgICAgICAg
ICAjZm9yIDMyIGJpdCB4ODYgYnVpbGRzLCAtTzMgZGlkIG5vdCB0dXJuIG9uIHRoaXMgZmxhZwor
ICAgICAgICAgIGVuYWJsZWQgb3B0aW1pemF0aW9ucyAmJiBkaXNhYmxlZCBncHJvZiAmJiBjaGVj
a19hZGRfY2ZsYWdzIC1mb21pdC1mcmFtZS1wb2ludGVyCisgICAgICAgICAgOzsKKyAgICAgICAg
dnMqKQorICAgICAgICAgICMgV2hlbiBidWlsZGluZyB3aXRoIE1pY3Jvc29mdCBWaXN1YWwgU3R1
ZGlvIHRoZSBhc3NlbWJsZXIgaXMKKyAgICAgICAgICAjIGludm9rZWQgZGlyZWN0bHkuIENoZWNr
aW5nIGF0IGNvbmZpZ3VyZSB0aW1lIGlzIHVubmVjZXNzYXJ5LgorICAgICAgICAgICMgU2tpcCB0
aGUgY2hlY2sgYnkgc2V0dGluZyBBUyBhcmJpdHJhcmlseQorICAgICAgICAgIEFTPW1zdnMKKyAg
ICAgICAgICBtc3ZzX2FyY2hfZGlyPXg4Ni1tc3ZzCisgICAgICAgICAgY2FzZSAke3RndF9jYyMj
dnN9IGluCisgICAgICAgICAgICAxNCkKKyAgICAgICAgICAgICAgZWNobyAiJHt0Z3RfY2N9IGRv
ZXMgbm90IHN1cHBvcnQgYXZ4NTEyLCBkaXNhYmxpbmcuLi4uLiIKKyAgICAgICAgICAgICAgUlRD
RF9PUFRJT05TPSIke1JUQ0RfT1BUSU9OU30tLWRpc2FibGUtYXZ4NTEyICIKKyAgICAgICAgICAg
ICAgc29mdF9kaXNhYmxlIGF2eDUxMgorICAgICAgICAgICAgICA7OworICAgICAgICAgIGVzYWMK
KyAgICAgICAgICA7OworICAgICAgZXNhYworCisgICAgICBiaXRzPTMyCisgICAgICBlbmFibGVk
IHg4Nl82NCAmJiBiaXRzPTY0CisgICAgICBjaGVja19jcHAgPDxFT0YgJiYgYml0cz14MzIKKyNp
ZiAhZGVmaW5lZChfX0lMUDMyX18pIHx8ICFkZWZpbmVkKF9feDg2XzY0X18pCisjZXJyb3IgIm5v
dCB4MzIiCisjZW5kaWYKK0VPRgorICAgICAgY2FzZSAke3RndF9jY30gaW4KKyAgICAgICAgZ2Nj
KikKKyAgICAgICAgICBhZGRfY2ZsYWdzIC1tJHtiaXRzfQorICAgICAgICAgIGFkZF9sZGZsYWdz
IC1tJHtiaXRzfQorICAgICAgICAgIDs7CisgICAgICBlc2FjCisKKyAgICAgIHNvZnRfZW5hYmxl
IHJ1bnRpbWVfY3B1X2RldGVjdAorICAgICAgIyBXZSBjYW4ndCB1c2UgJ2NoZWNrX2NmbGFncycg
dW50aWwgdGhlIGNvbXBpbGVyIGlzIGNvbmZpZ3VyZWQgYW5kIENDIGlzCisgICAgICAjIHBvcHVs
YXRlZC4KKyAgICAgIGZvciBleHQgaW4gJHtBUkNIX0VYVF9MSVNUX1g4Nn07IGRvCisgICAgICAg
ICMgZGlzYWJsZSBoaWdoZXIgb3JkZXIgZXh0ZW5zaW9ucyB0byBzaW1wbGlmeSBhc20gZGVwZW5k
ZW5jaWVzCisgICAgICAgIGlmIFsgIiRkaXNhYmxlX2V4dHMiID0gInllcyIgXTsgdGhlbgorICAg
ICAgICAgIGlmICEgZGlzYWJsZWQgJGV4dDsgdGhlbgorICAgICAgICAgICAgUlRDRF9PUFRJT05T
PSIke1JUQ0RfT1BUSU9OU30tLWRpc2FibGUtJHtleHR9ICIKKyAgICAgICAgICAgIGRpc2FibGVf
ZmVhdHVyZSAkZXh0CisgICAgICAgICAgZmkKKyAgICAgICAgZWxpZiBkaXNhYmxlZCAkZXh0OyB0
aGVuCisgICAgICAgICAgZGlzYWJsZV9leHRzPSJ5ZXMiCisgICAgICAgIGVsc2UKKyAgICAgICAg
ICBpZiBbICIkZXh0IiA9ICJhdng1MTIiIF07IHRoZW4KKyAgICAgICAgICAgIGNoZWNrX2djY19t
YWNoaW5lX29wdGlvbnMgJGV4dCBhdng1MTJmIGF2eDUxMmNkIGF2eDUxMmJ3IGF2eDUxMmRxIGF2
eDUxMnZsCisgICAgICAgICAgICBjaGVja19nY2NfYXZ4NTEyX2NvbXBpbGVzCisgICAgICAgICAg
ZWxzZQorICAgICAgICAgICAgIyB1c2UgdGhlIHNob3J0ZW5lZCB2ZXJzaW9uIGZvciB0aGUgZmxh
Zzogc3NlNF8xIC0+IHNzZTQKKyAgICAgICAgICAgIGNoZWNrX2djY19tYWNoaW5lX29wdGlvbiAk
e2V4dCVfKn0gJGV4dAorICAgICAgICAgIGZpCisgICAgICAgIGZpCisgICAgICBkb25lCisKKyAg
ICAgIGlmIGVuYWJsZWQgZXh0ZXJuYWxfYnVpbGQ7IHRoZW4KKyAgICAgICAgbG9nX2VjaG8gIiAg
c2tpcHBpbmcgYXNzZW1ibGVyIGRldGVjdGlvbiIKKyAgICAgIGVsc2UKKyAgICAgICAgY2FzZSAi
JHtBU30iIGluCisgICAgICAgICAgYXV0b3wiIikKKyAgICAgICAgICAgIHdoaWNoIG5hc20gPi9k
ZXYvbnVsbCAyPiYxICYmIEFTPW5hc20KKyAgICAgICAgICAgIHdoaWNoIHlhc20gPi9kZXYvbnVs
bCAyPiYxICYmIEFTPXlhc20KKyAgICAgICAgICAgIGlmIFsgIiR7QVN9IiA9IG5hc20gXSA7IHRo
ZW4KKyAgICAgICAgICAgICAgIyBBcHBsZSBzaGlwcyB2ZXJzaW9uIDAuOTggb2YgbmFzbSB0aHJv
dWdoIGF0IGxlYXN0IFhjb2RlIDYuIFJldmlzaXQKKyAgICAgICAgICAgICAgIyB0aGlzIGNoZWNr
IGlmIHRoZXkgc3RhcnQgc2hpcHBpbmcgYSBjb21wYXRpYmxlIHZlcnNpb24uCisgICAgICAgICAg
ICAgIGFwcGxlPWBuYXNtIC12IHwgZ3JlcCAiQXBwbGUiYAorICAgICAgICAgICAgICBbIC1uICIk
e2FwcGxlfSIgXSBcCisgICAgICAgICAgICAgICAgJiYgZWNobyAiVW5zdXBwb3J0ZWQgdmVyc2lv
biBvZiBuYXNtOiAke2FwcGxlfSIgXAorICAgICAgICAgICAgICAgICYmIEFTPSIiCisgICAgICAg
ICAgICBmaQorICAgICAgICAgICAgWyAiJHtBU30iID0gYXV0byBdIHx8IFsgLXogIiR7QVN9IiBd
IFwKKyAgICAgICAgICAgICAgJiYgZGllICJOZWl0aGVyIHlhc20gbm9yIG5hc20gaGF2ZSBiZWVu
IGZvdW5kLiIgXAorICAgICAgICAgICAgICAgICAgICAgIlNlZSB0aGUgcHJlcmVxdWlzaXRlcyBz
ZWN0aW9uIGluIHRoZSBSRUFETUUgZm9yIG1vcmUgaW5mby4iCisgICAgICAgICAgICA7OworICAg
ICAgICBlc2FjCisgICAgICAgIGxvZ19lY2hvICIgIHVzaW5nICRBUyIKKyAgICAgIGZpCisgICAg
ICBBU19TRlg9LmFzbQorICAgICAgY2FzZSAgJHt0Z3Rfb3N9IGluCisgICAgICAgIHdpbjMyKQor
ICAgICAgICAgIGFkZF9hc2ZsYWdzIC1mIHdpbjMyCisgICAgICAgICAgZW5hYmxlZCBkZWJ1ZyAm
JiBhZGRfYXNmbGFncyAtZyBjdjgKKyAgICAgICAgICBFWEVfU0ZYPS5leGUKKyAgICAgICAgICA7
OworICAgICAgICB3aW42NCkKKyAgICAgICAgICBhZGRfYXNmbGFncyAtZiB3aW42NAorICAgICAg
ICAgIGVuYWJsZWQgZGVidWcgJiYgYWRkX2FzZmxhZ3MgLWcgY3Y4CisgICAgICAgICAgRVhFX1NG
WD0uZXhlCisgICAgICAgICAgOzsKKyAgICAgICAgbGludXgqfHNvbGFyaXMqfGFuZHJvaWQqKQor
ICAgICAgICAgIGFkZF9hc2ZsYWdzIC1mIGVsZiR7Yml0c30KKyAgICAgICAgICBlbmFibGVkIGRl
YnVnICYmIFsgIiR7QVN9IiA9IHlhc20gXSAmJiBhZGRfYXNmbGFncyAtZyBkd2FyZjIKKyAgICAg
ICAgICBlbmFibGVkIGRlYnVnICYmIFsgIiR7QVN9IiA9IG5hc20gXSAmJiBhZGRfYXNmbGFncyAt
ZworICAgICAgICAgIFsgIiR7QVMjIyovfSIgPSBuYXNtIF0gJiYgY2hlY2tfYXNtX2FsaWduCisg
ICAgICAgICAgOzsKKyAgICAgICAgZGFyd2luKikKKyAgICAgICAgICBhZGRfYXNmbGFncyAtZiBt
YWNobyR7Yml0c30KKyAgICAgICAgICBlbmFibGVkIHg4NiAmJiBkYXJ3aW5fYXJjaD0iLWFyY2gg
aTM4NiIgfHwgZGFyd2luX2FyY2g9Ii1hcmNoIHg4Nl82NCIKKyAgICAgICAgICBhZGRfY2ZsYWdz
ICAke2Rhcndpbl9hcmNofQorICAgICAgICAgIGFkZF9sZGZsYWdzICR7ZGFyd2luX2FyY2h9Cisg
ICAgICAgICAgIyAtbWR5bmFtaWMtbm8tcGljIGlzIHN0aWxsIGEgYml0IG9mIHZvb2RvbyAtLSBp
dCB3YXMgcmVxdWlyZWQgYXQKKyAgICAgICAgICAjIG9uZSB0aW1lLCBidXQgZG9lcyBub3Qgc2Vl
bSB0byBiZSBub3csIGFuZCBpdCBicmVha3Mgc29tZSBvZiB0aGUKKyAgICAgICAgICAjIGNvZGUg
dGhhdCBzdGlsbCByZWxpZXMgb24gaW5saW5lIGFzc2VtYmx5LgorICAgICAgICAgICMgZW5hYmxl
ZCBpY2MgJiYgISBlbmFibGVkIHBpYyAmJiBhZGRfY2ZsYWdzIC1mbm8tcGljIC1tZHluYW1pYy1u
by1waWMKKyAgICAgICAgICBlbmFibGVkIGljYyAmJiAhIGVuYWJsZWQgcGljICYmIGFkZF9jZmxh
Z3MgLWZuby1waWMKKyAgICAgICAgICA7OworICAgICAgICBpcGhvbmVzaW11bGF0b3IpCisgICAg
ICAgICAgYWRkX2FzZmxhZ3MgLWYgbWFjaG8ke2JpdHN9CisgICAgICAgICAgZW5hYmxlZCB4ODYg
JiYgc2ltX2FyY2g9Ii1hcmNoIGkzODYiIHx8IHNpbV9hcmNoPSItYXJjaCB4ODZfNjQiCisgICAg
ICAgICAgYWRkX2NmbGFncyAgJHtzaW1fYXJjaH0KKyAgICAgICAgICBhZGRfbGRmbGFncyAke3Np
bV9hcmNofQorCisgICAgICAgICAgaWYgWyAiJChkaXNhYmxlZCBleHRlcm5hbF9idWlsZCkiIF0g
JiYKKyAgICAgICAgICAgICAgWyAiJChzaG93X2Rhcndpbl9zZGtfbWFqb3JfdmVyc2lvbiBpcGhv
bmVzaW11bGF0b3IpIiAtZ3QgOCBdOyB0aGVuCisgICAgICAgICAgICAjIHlhc20gdjEuMy4wIGRv
ZXNuJ3Qga25vdyB3aGF0IC1mZW1iZWQtYml0Y29kZSBtZWFucywgc28gdHVybmluZyBpdAorICAg
ICAgICAgICAgIyBvbiBpcyBwb2ludGxlc3MgKHVubGVzcyBidWlsZGluZyBhIEMtb25seSBsaWIp
LiBXYXJuIHRoZSB1c2VyLCBidXQKKyAgICAgICAgICAgICMgZG8gbm90aGluZyBoZXJlLgorICAg
ICAgICAgICAgbG9nICJXYXJuaW5nOiBCaXRjb2RlIGVtYmVkIGRpc2FibGVkIGZvciBzaW11bGF0
b3IgdGFyZ2V0cy4iCisgICAgICAgICAgZmkKKyAgICAgICAgICA7OworICAgICAgICBvczIpCisg
ICAgICAgICAgYWRkX2FzZmxhZ3MgLWYgYW91dAorICAgICAgICAgIGVuYWJsZWQgZGVidWcgJiYg
YWRkX2FzZmxhZ3MgLWcKKyAgICAgICAgICBFWEVfU0ZYPS5leGUKKyAgICAgICAgICA7OworICAg
ICAgICAqKQorICAgICAgICAgIGxvZyAiV2FybmluZzogVW5rbm93biBvcyAkdGd0X29zIHdoaWxl
IHNldHRpbmcgdXAgJEFTIGZsYWdzIgorICAgICAgICAgIDs7CisgICAgICBlc2FjCisgICAgICA7
OworICAgICotZ2NjfGdlbmVyaWMtZ251KQorICAgICAgbGlua193aXRoX2NjPWdjYworICAgICAg
ZW5hYmxlX2ZlYXR1cmUgZ2NjCisgICAgICBzZXR1cF9nbnVfdG9vbGNoYWluCisgICAgICA7Owor
ICBlc2FjCisKKyAgIyBUcnkgdG8gZW5hYmxlIENQVSBzcGVjaWZpYyB0dW5pbmcKKyAgaWYgWyAt
biAiJHt0dW5lX2NwdX0iIF07IHRoZW4KKyAgICBpZiBbIC1uICIke3R1bmVfY2ZsYWdzfSIgXTsg
dGhlbgorICAgICAgY2hlY2tfYWRkX2NmbGFncyAke3R1bmVfY2ZsYWdzfSR7dHVuZV9jcHV9IHx8
IFwKKyAgICAgICAgZGllICJSZXF1ZXN0ZWQgQ1BVICcke3R1bmVfY3B1fScgbm90IHN1cHBvcnRl
ZCBieSBjb21waWxlciIKKyAgICBmaQorICAgIGlmIFsgLW4gIiR7dHVuZV9hc2ZsYWdzfSIgXTsg
dGhlbgorICAgICAgY2hlY2tfYWRkX2FzZmxhZ3MgJHt0dW5lX2FzZmxhZ3N9JHt0dW5lX2NwdX0g
fHwgXAorICAgICAgICBkaWUgIlJlcXVlc3RlZCBDUFUgJyR7dHVuZV9jcHV9JyBub3Qgc3VwcG9y
dGVkIGJ5IGFzc2VtYmxlciIKKyAgICBmaQorICAgIGlmIFsgLXogIiR7dHVuZV9jZmxhZ3N9JHt0
dW5lX2FzZmxhZ3N9IiBdOyB0aGVuCisgICAgICBsb2dfZWNobyAiV2FybmluZzogQ1BVIHR1bmlu
ZyBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMgdG9vbGNoYWluIgorICAgIGZpCisgIGZpCisKKyAgaWYg
ZW5hYmxlZCBkZWJ1ZzsgdGhlbgorICAgIGNoZWNrX2FkZF9jZmxhZ3MgLWcgJiYgY2hlY2tfYWRk
X2xkZmxhZ3MgLWcKKyAgZWxzZQorICAgIGNoZWNrX2FkZF9jZmxhZ3MgLUROREVCVUcKKyAgZmkK
KworICBlbmFibGVkIGdwcm9mICYmIGNoZWNrX2FkZF9jZmxhZ3MgLXBnICYmIGNoZWNrX2FkZF9s
ZGZsYWdzIC1wZworICBlbmFibGVkIGdjb3YgJiYKKyAgICBjaGVja19hZGRfY2ZsYWdzIC1mcHJv
ZmlsZS1hcmNzIC1mdGVzdC1jb3ZlcmFnZSAmJgorICAgIGNoZWNrX2FkZF9sZGZsYWdzIC1mcHJv
ZmlsZS1hcmNzIC1mdGVzdC1jb3ZlcmFnZQorCisgIGlmIGVuYWJsZWQgb3B0aW1pemF0aW9uczsg
dGhlbgorICAgIGlmIGVuYWJsZWQgcnZjdDsgdGhlbgorICAgICAgZW5hYmxlZCBzbWFsbCAmJiBj
aGVja19hZGRfY2ZsYWdzIC1Pc3BhY2UgfHwgY2hlY2tfYWRkX2NmbGFncyAtT3RpbWUKKyAgICBl
bHNlCisgICAgICBlbmFibGVkIHNtYWxsICYmIGNoZWNrX2FkZF9jZmxhZ3MgLU8yIHx8ICBjaGVj
a19hZGRfY2ZsYWdzIC1PMworICAgIGZpCisgIGZpCisKKyAgIyBQb3NpdGlvbiBJbmRlcGVuZGVu
dCBDb2RlIChQSUMpIHN1cHBvcnQsIGZvciBidWlsZGluZyByZWxvY2F0YWJsZQorICAjIHNoYXJl
ZCBvYmplY3RzCisgIGVuYWJsZWQgZ2NjICYmIGVuYWJsZWQgcGljICYmIGNoZWNrX2FkZF9jZmxh
Z3MgLWZQSUMKKworICAjIFdvcmsgYXJvdW5kIGxvbmdqbXAgaW50ZXJjZXB0aW9uIG9uIGdsaWJj
ID49IDIuMTEsIHRvIGltcHJvdmUgYmluYXJ5CisgICMgY29tcGF0aWJpbGl0eS4gU2VlIGh0dHA6
Ly9jb2RlLmdvb2dsZS5jb20vcC93ZWJtL2lzc3Vlcy9kZXRhaWw/aWQ9MTY2CisgIGVuYWJsZWQg
bGludXggJiYgY2hlY2tfYWRkX2NmbGFncyAtVV9GT1JUSUZZX1NPVVJDRSAtRF9GT1JUSUZZX1NP
VVJDRT0wCisKKyAgIyBDaGVjayBmb3Igc3RyaXAgdXRpbGl0eSB2YXJpYW50CisgICR7U1RSSVB9
IC1WIDI+L2Rldi9udWxsIHwgZ3JlcCBHTlUgPi9kZXYvbnVsbCAmJiBlbmFibGVfZmVhdHVyZSBn
bnVfc3RyaXAKKworICAjIFRyeSB0byBkZXRlcm1pbmUgdGFyZ2V0IGVuZGlhbm5lc3MKKyAgY2hl
Y2tfY2MgPDxFT0YKK3Vuc2lnbmVkIGludCBlID0gJ08nPDwyNCB8ICcyJzw8MTYgfCAnQic8PDgg
fCAnRSc7CitFT0YKKyAgICBbIC1mICIke1RNUF9PfSIgXSAmJiBvZCAtQSBuIC10IHgxICIke1RN
UF9PfSIgfCB0ciAtZCAnXG4nIHwKKyAgICAgICAgZ3JlcCAnNGYgKjMyICo0MiAqNDUnID4vZGV2
L251bGwgMj4mMSAmJiBlbmFibGVfZmVhdHVyZSBiaWdfZW5kaWFuCisKKyAgICAjIFRyeSB0byBm
aW5kIHdoaWNoIGlubGluZSBrZXl3b3JkcyBhcmUgc3VwcG9ydGVkCisgICAgY2hlY2tfY2MgPDxF
T0YgJiYgSU5MSU5FPSJpbmxpbmUiCitzdGF0aWMgaW5saW5lIGZ1bmN0aW9uKCkge30KK0VPRgor
CisgICMgQWxtb3N0IGV2ZXJ5IHBsYXRmb3JtIHVzZXMgcHRocmVhZHMuCisgIGlmIGVuYWJsZWQg
bXVsdGl0aHJlYWQ7IHRoZW4KKyAgICBjYXNlICR7dG9vbGNoYWlufSBpbgorICAgICAgKi13aW4q
LXZzKikKKyAgICAgICAgOzsKKyAgICAgICotYW5kcm9pZC1nY2MpCisgICAgICAgICMgYmlvbmlj
IGluY2x1ZGVzIGJhc2ljIHB0aHJlYWQgZnVuY3Rpb25hbGl0eSwgb2J2aWF0aW5nIC1scHRocmVh
ZC4KKyAgICAgICAgOzsKKyAgICAgICopCisgICAgICAgIGNoZWNrX2hlYWRlciBwdGhyZWFkLmgg
JiYgY2hlY2tfbGliIC1scHRocmVhZCA8PEVPRiAmJiBhZGRfZXh0cmFsaWJzIC1scHRocmVhZCB8
fCBkaXNhYmxlX2ZlYXR1cmUgcHRocmVhZF9oCisjaW5jbHVkZSA8cHRocmVhZC5oPgorI2luY2x1
ZGUgPHN0ZGRlZi5oPgoraW50IG1haW4odm9pZCkgeyByZXR1cm4gcHRocmVhZF9jcmVhdGUoTlVM
TCwgTlVMTCwgTlVMTCwgTlVMTCk7IH0KK0VPRgorICAgICAgICA7OworICAgIGVzYWMKKyAgZmkK
KworICAjIG9ubHkgZm9yIE1JUFMgcGxhdGZvcm1zCisgIGNhc2UgJHt0b29sY2hhaW59IGluCisg
ICAgbWlwcyopCisgICAgICBpZiBlbmFibGVkIGJpZ19lbmRpYW47IHRoZW4KKyAgICAgICAgaWYg
ZW5hYmxlZCBkc3ByMjsgdGhlbgorICAgICAgICAgIGVjaG8gImRzcHIyIG9wdGltaXphdGlvbnMg
YXJlIGF2YWlsYWJsZSBvbmx5IGZvciBsaXR0bGUgZW5kaWFuIHBsYXRmb3JtcyIKKyAgICAgICAg
ICBkaXNhYmxlX2ZlYXR1cmUgZHNwcjIKKyAgICAgICAgZmkKKyAgICAgICAgaWYgZW5hYmxlZCBt
c2E7IHRoZW4KKyAgICAgICAgICBlY2hvICJtc2Egb3B0aW1pemF0aW9ucyBhcmUgYXZhaWxhYmxl
IG9ubHkgZm9yIGxpdHRsZSBlbmRpYW4gcGxhdGZvcm1zIgorICAgICAgICAgIGRpc2FibGVfZmVh
dHVyZSBtc2EKKyAgICAgICAgZmkKKyAgICAgICAgaWYgZW5hYmxlZCBtbWk7IHRoZW4KKyAgICAg
ICAgICBlY2hvICJtbWkgb3B0aW1pemF0aW9ucyBhcmUgYXZhaWxhYmxlIG9ubHkgZm9yIGxpdHRs
ZSBlbmRpYW4gcGxhdGZvcm1zIgorICAgICAgICAgIGRpc2FibGVfZmVhdHVyZSBtbWkKKyAgICAg
ICAgZmkKKyAgICAgIGZpCisgICAgICA7OworICBlc2FjCisKKyAgIyBnbGliYyBuZWVkcyB0aGVz
ZQorICBpZiBlbmFibGVkIGxpbnV4OyB0aGVuCisgICAgYWRkX2NmbGFncyAtRF9MQVJHRUZJTEVf
U09VUkNFCisgICAgYWRkX2NmbGFncyAtRF9GSUxFX09GRlNFVF9CSVRTPTY0CisgIGZpCit9CisK
K3Byb2Nlc3NfdG9vbGNoYWluKCkgeworICBwcm9jZXNzX2NvbW1vbl90b29sY2hhaW4KK30KKwor
cHJpbnRfY29uZmlnX21rKCkgeworICBzYXZlZF9wcmVmaXg9IiR7cHJlZml4fSIKKyAgcHJlZml4
PSQxCisgIG1ha2VmaWxlPSQyCisgIHNoaWZ0IDIKKyAgZm9yIGNmZzsgZG8KKyAgICBpZiBlbmFi
bGVkICRjZmc7IHRoZW4KKyAgICAgIHVwbmFtZT0iYHRvdXBwZXIgJGNmZ2AiCisgICAgICBlY2hv
ICIke3ByZWZpeH1fJHt1cG5hbWV9PXllcyIgPj4gJG1ha2VmaWxlCisgICAgZmkKKyAgZG9uZQor
ICBwcmVmaXg9IiR7c2F2ZWRfcHJlZml4fSIKK30KKworcHJpbnRfY29uZmlnX2goKSB7CisgIHNh
dmVkX3ByZWZpeD0iJHtwcmVmaXh9IgorICBwcmVmaXg9JDEKKyAgaGVhZGVyPSQyCisgIHNoaWZ0
IDIKKyAgZm9yIGNmZzsgZG8KKyAgICB1cG5hbWU9ImB0b3VwcGVyICRjZmdgIgorICAgIGlmIGVu
YWJsZWQgJGNmZzsgdGhlbgorICAgICAgZWNobyAiI2RlZmluZSAke3ByZWZpeH1fJHt1cG5hbWV9
IDEiID4+ICRoZWFkZXIKKyAgICBlbHNlCisgICAgICBlY2hvICIjZGVmaW5lICR7cHJlZml4fV8k
e3VwbmFtZX0gMCIgPj4gJGhlYWRlcgorICAgIGZpCisgIGRvbmUKKyAgcHJlZml4PSIke3NhdmVk
X3ByZWZpeH0iCit9CisKK3ByaW50X2NvbmZpZ192YXJzX2goKSB7CisgIGhlYWRlcj0kMQorICBz
aGlmdAorICB3aGlsZSBbICQjIC1ndCAwIF07IGRvCisgICAgdXBuYW1lPSJgdG91cHBlciAkMWAi
CisgICAgZWNobyAiI2RlZmluZSAke3VwbmFtZX0gJDIiID4+ICRoZWFkZXIKKyAgICBzaGlmdCAy
CisgIGRvbmUKK30KKworcHJpbnRfd2VibV9saWNlbnNlKCkgeworICBzYXZlZF9wcmVmaXg9IiR7
cHJlZml4fSIKKyAgZGVzdGluYXRpb249JDEKKyAgcHJlZml4PSIkMiIKKyAgc3VmZml4PSIkMyIK
KyAgc2hpZnQgMworICBjYXQgPDxFT0YgPiAke2Rlc3RpbmF0aW9ufQorJHtwcmVmaXh9IENvcHly
aWdodCAoYykgMjAxMSBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2
ZWQuJHtzdWZmaXh9Ciske3ByZWZpeH0gJHtzdWZmaXh9Ciske3ByZWZpeH0gVXNlIG9mIHRoaXMg
c291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSR7c3VmZml4fQor
JHtwcmVmaXh9IHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJv
b3Qgb2YgdGhlIHNvdXJjZSR7c3VmZml4fQorJHtwcmVmaXh9IHRyZWUuIEFuIGFkZGl0aW9uYWwg
aW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQke3N1ZmZpeH0K
KyR7cHJlZml4fSBpbiB0aGUgZmlsZSBQQVRFTlRTLiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0
IGF1dGhvcnMgbWF5JHtzdWZmaXh9Ciske3ByZWZpeH0gYmUgZm91bmQgaW4gdGhlIEFVVEhPUlMg
ZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuJHtzdWZmaXh9CitFT0YKKyAgcHJl
Zml4PSIke3NhdmVkX3ByZWZpeH0iCit9CisKK3Byb2Nlc3NfdGFyZ2V0cygpIHsKKyAgdHJ1ZTsK
K30KKworcHJvY2Vzc19kZXRlY3QoKSB7CisgIHRydWU7Cit9CisKK2VuYWJsZV9mZWF0dXJlIGxv
Z2dpbmcKK2xvZ2ZpbGU9ImNvbmZpZy5sb2ciCitzZWxmPSQwCitwcm9jZXNzKCkgeworICBjbWRs
aW5lX2FyZ3M9IiRAIgorICBwcm9jZXNzX2NtZGxpbmUgIiRAIgorICBpZiBlbmFibGVkIGNoaWxk
OyB0aGVuCisgICAgZWNobyAiIyAke3NlbGZ9ICRAIiA+PiAke2xvZ2ZpbGV9CisgIGVsc2UKKyAg
ICBlY2hvICIjICR7c2VsZn0gJEAiID4gJHtsb2dmaWxlfQorICBmaQorICBwb3N0X3Byb2Nlc3Nf
Y29tbW9uX2NtZGxpbmUKKyAgcG9zdF9wcm9jZXNzX2NtZGxpbmUKKyAgcHJvY2Vzc190b29sY2hh
aW4KKyAgcHJvY2Vzc19kZXRlY3QKKyAgcHJvY2Vzc190YXJnZXRzCisKKyAgT09UX0lOU1RBTExT
PSIke09PVF9JTlNUQUxMU30iCisgIGlmIGVuYWJsZWQgc291cmNlX3BhdGhfdXNlZDsgdGhlbgor
ICAjIFByZXBhcmUgdGhlIFBXRCBmb3IgYnVpbGRpbmcuCisgIGZvciBmIGluICR7T09UX0lOU1RB
TExTfTsgZG8KKyAgICBpbnN0YWxsIC1EICIke3NvdXJjZV9wYXRofS8kZiIgIiRmIgorICBkb25l
CisgIGZpCisgIGNwICIke3NvdXJjZV9wYXRofS9idWlsZC9tYWtlL01ha2VmaWxlIiAuCisKKyAg
Y2xlYW5fdGVtcF9maWxlcworICB0cnVlCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2J1aWxk
L21ha2UvZ2VuX2FzbV9kZXBzLnNoIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL2dlbl9hc21fZGVw
cy5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi42YTdiZmY5ZWJjZTRjMTFlY2NhZTcwZTc2NjE5YzgzMzJmNDM1M2I2
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL2dlbl9hc21fZGVwcy5z
aApAQCAtMCwwICsxLDY0IEBACisjIS9iaW4vc2gKKyMjCisjIyAgQ29weXJpZ2h0IChjKSAyMDEw
IFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyMjCisjIyAg
VXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5z
ZQorIyMgIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qg
b2YgdGhlIHNvdXJjZQorIyMgIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHByb3Bl
cnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyMjICBpbiB0aGUgZmlsZSBQQVRFTlRTLiAg
QWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisjIyAgYmUgZm91bmQgaW4gdGhl
IEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisjIworCisKK3Nl
bGY9JDAKK3Nob3dfaGVscCgpIHsKKyAgICBlY2hvICJ1c2FnZTogJHNlbGYgW29wdGlvbnNdIDxz
cmNmaWxlPiIKKyAgICBlY2hvCisgICAgZWNobyAiR2VuZXJhdGUgTWFrZWZpbGUgZGVwZW5kZW5j
eSBpbmZvcm1hdGlvbiBmcm9tIGFzc2VtYmx5IGNvZGUgc291cmNlIgorICAgIGVjaG8KKyAgICBl
eGl0IDEKK30KK2RpZV91bmtub3duKCl7CisgICAgZWNobyAiVW5rbm93biBvcHRpb24gXCIkMVwi
LiIKKyAgICBlY2hvICJTZWUgJDAgLS1oZWxwIGZvciBhdmFpbGFibGUgb3B0aW9ucy4iCisgICAg
ZXhpdCAxCit9Citmb3Igb3B0IGRvCisgICAgb3B0dmFsPSIke29wdCMqPX0iCisgICAgY2FzZSAi
JG9wdCIgaW4KKyAgICAtLWJ1aWxkLXBmeD0qKSBwZng9IiR7b3B0dmFsfSIKKyAgICA7OworICAg
IC0tZGVwZmlsZT0qKSBvdXQ9IiR7b3B0dmFsfSIKKyAgICA7OworICAgIC1JKikgcmF3X2luY19w
YXRocz0iJHtyYXdfaW5jX3BhdGhzfSAke29wdH0iCisgICAgICAgICBpbmNfcGF0aD0iJHtpbmNf
cGF0aH0gJHtvcHQjLUl9IgorICAgIDs7CisgICAgLWh8LS1oZWxwKSBzaG93X2hlbHAKKyAgICA7
OworICAgICopIFsgLWYgIiRvcHQiIF0gJiYgc3JjZmlsZT0iJG9wdCIKKyAgICA7OworICAgIGVz
YWMKK2RvbmUKKworWyAtbiAiJHNyY2ZpbGUiIF0gfHwgc2hvd19oZWxwCitzZng9JHtzZng6LWFz
bX0KK2luY2x1ZGVzPSQoTENfQUxMPUMgZWdyZXAgLWkgImluY2x1ZGUgK1wiP1thLXowLTlfL10r
XC4ke3NmeH0iICRzcmNmaWxlIHwKKyAgICAgICAgICAgcGVybCAtcCAtZSAiczsuKj8oW2EtejAt
OV8vXSsuJHtzZnh9KS4qO1wxOyIpCisjIiByZXN0b3JlIGVkaXRvciBzdGF0ZQorZm9yIGluYyBp
biAke2luY2x1ZGVzfTsgZG8KKyAgICBmb3VuZF9pbmNfcGF0aD0KKyAgICBmb3IgaWRpciBpbiAk
e2luY19wYXRofTsgZG8KKyAgICAgICAgWyAtZiAiJHtpZGlyfS8ke2luY30iIF0gJiYgZm91bmRf
aW5jX3BhdGg9IiR7aWRpcn0iICYmIGJyZWFrCisgICAgZG9uZQorICAgIGlmIFsgLWYgYGRpcm5h
bWUgJHNyY2ZpbGVgLyRpbmMgXTsgdGhlbgorICAgICAgICAjIEhhbmRsZSBpbmNsdWRlIGZpbGVz
IGluIHRoZSBzYW1lIGRpcmVjdG9yeSBhcyB0aGUgc291cmNlCisgICAgICAgICRzZWxmIC0tYnVp
bGQtcGZ4PSRwZnggLS1kZXBmaWxlPSRvdXQgJHtyYXdfaW5jX3BhdGhzfSBgZGlybmFtZSAkc3Jj
ZmlsZWAvJGluYworICAgIGVsaWYgWyAtbiAiJHtmb3VuZF9pbmNfcGF0aH0iIF07IHRoZW4KKyAg
ICAgICAgIyBIYW5kbGUgaW5jbHVkZSBmaWxlcyBvbiB0aGUgaW5jbHVkZSBwYXRoCisgICAgICAg
ICRzZWxmIC0tYnVpbGQtcGZ4PSRwZnggLS1kZXBmaWxlPSRvdXQgJHtyYXdfaW5jX3BhdGhzfSAi
JHtmb3VuZF9pbmNfcGF0aH0vJGluYyIKKyAgICBlbHNlCisgICAgICAgICMgSGFuZGxlIGdlbmVy
YXRlZCBpbmNsdWRlcyBpbiB0aGUgYnVpbGQgcm9vdCAod2hpY2ggbWF5IG5vdCBleGlzdCB5ZXQp
CisgICAgICAgIGVjaG8gJHtvdXR9ICR7b3V0JWR9bzogIiR7cGZ4fSR7aW5jfSIKKyAgICBmaQor
ZG9uZQorZWNobyAke291dH0gJHtvdXQlZH1vOiAkc3JjZmlsZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC9idWlsZC9tYWtlL2dlbl9tc3ZzX2RlZi5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9n
ZW5fbXN2c19kZWYuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGRlZmNjMmU3YzdlNWYyNTMzOWM1YTIzYWM5YTU3
YjRjN2FlYzM2ZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9nZW5f
bXN2c19kZWYuc2gKQEAgLTAsMCArMSw4MyBAQAorIyEvYmluL2Jhc2gKKyMjCisjIyAgQ29weXJp
Z2h0IChjKSAyMDEwIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZl
ZC4KKyMjCisjIyAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qt
c3R5bGUgbGljZW5zZQorIyMgIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUg
aW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZQorIyMgIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxs
ZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyMjICBpbiB0aGUgZmls
ZSBQQVRFTlRTLiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisjIyAgYmUg
Zm91bmQgaW4gdGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUu
CisjIworCisKK3NlbGY9JDAKK3NlbGZfYmFzZW5hbWU9JHtzZWxmIyMqL30KK0VPTD0kJ1xuJwor
CitzaG93X2hlbHAoKSB7CisgICAgY2F0IDw8RU9GCitVc2FnZTogJHtzZWxmX2Jhc2VuYW1lfSBb
b3B0aW9uc10gZmlsZTEgW2ZpbGUyIC4uLl0KKworVGhpcyBzY3JpcHQgZ2VuZXJhdGVzIGEgTVNW
QyBtb2R1bGUgZGVmaW5pdGlvbiBmaWxlIGNvbnRhaW5pbmcgYSBsaXN0IG9mIHN5bWJvbHMKK3Rv
IGV4cG9ydCBmcm9tIGEgRExMLiBTb3VyY2UgZmlsZXMgYXJlIHRlY2huaWNhbGx5IGJhc2ggc2Ny
aXB0cyAoYW5kIHRodXMgbWF5Cit1c2UgI2NvbW1lbnQgc3ludGF4KSBidXQgaW4gZ2VuZXJhbCwg
dGFrZSB0aGUgZm9ybSBvZiBhIGxpc3Qgb2Ygc3ltYm9sczoKKworICA8a2luZD4gc3ltYm9sMSBb
c3ltYm9sMiwgc3ltYm9sMywgLi4uXQorCit3aGVyZSA8a2luZD4gaXMgZWl0aGVyICd0ZXh0JyBv
ciAnZGF0YScKKworCitPcHRpb25zOgorICAgIC0taGVscCAgICAgICAgICAgICAgICAgICAgICBQ
cmludCB0aGlzIG1lc3NhZ2UKKyAgICAtLW91dD1maWxlbmFtZSAgICAgICAgICAgICAgV3JpdGUg
b3V0cHV0IHRvIGEgZmlsZSBbc3Rkb3V0XQorICAgIC0tbmFtZT1wcm9qZWN0X25hbWUgICAgICAg
ICBOYW1lIG9mIHRoZSBsaWJyYXJ5IChyZXF1aXJlZCkKK0VPRgorICAgIGV4aXQgMQorfQorCitk
aWUoKSB7CisgICAgZWNobyAiJHtzZWxmX2Jhc2VuYW1lfTogJEAiCisgICAgZXhpdCAxCit9CisK
K2RpZV91bmtub3duKCl7CisgICAgZWNobyAiVW5rbm93biBvcHRpb24gXCIkMVwiLiIKKyAgICBl
Y2hvICJTZWUgJHtzZWxmX2Jhc2VuYW1lfSAtLWhlbHAgZm9yIGF2YWlsYWJsZSBvcHRpb25zLiIK
KyAgICBleGl0IDEKK30KKwordGV4dCgpIHsKKyAgICBmb3Igc3ltIGluICIkQCI7IGRvCisgICAg
ICAgIGVjaG8gIiAgJHN5bSIgPj4gJHtvdXRmaWxlfQorICAgIGRvbmUKK30KKworZGF0YSgpIHsK
KyAgICBmb3Igc3ltIGluICIkQCI7IGRvCisgICAgICAgIHByaW50ZiAiICAlLTQwcyBEQVRBXG4i
ICIkc3ltIiA+PiAke291dGZpbGV9CisgICAgZG9uZQorfQorCisjIFByb2Nlc3MgY29tbWFuZCBs
aW5lCitmb3Igb3B0IGluICIkQCI7IGRvCisgICAgb3B0dmFsPSIke29wdCMqPX0iCisgICAgY2Fz
ZSAiJG9wdCIgaW4KKyAgICAtLWhlbHB8LWgpIHNob3dfaGVscAorICAgIDs7CisgICAgLS1vdXQ9
Kikgb3V0ZmlsZT0iJG9wdHZhbCIKKyAgICA7OworICAgIC0tbmFtZT0qKSBuYW1lPSIke29wdHZh
bH0iCisgICAgOzsKKyAgICAgLSopIGRpZV91bmtub3duICRvcHQKKyAgICA7OworICAgICopIGZp
bGVfbGlzdFskeyNmaWxlX2xpc3RbQF19XT0iJG9wdCIKKyAgICBlc2FjCitkb25lCitvdXRmaWxl
PSR7b3V0ZmlsZTotL2Rldi9zdGRvdXR9CitbIC1uICIkbmFtZSIgXSB8fCBkaWUgIkxpYnJhcnkg
bmFtZSAoLS1uYW1lKSBtdXN0IGJlIHNwZWNpZmllZCEiCisKK2VjaG8gIkxJQlJBUlkgJHtuYW1l
fSIgPiAke291dGZpbGV9CitlY2hvICJFWFBPUlRTIiA+PiAke291dGZpbGV9Citmb3IgZiBpbiAi
JHtmaWxlX2xpc3RbQF19IjsgZG8KKyAgICAuICRmCitkb25lCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L2J1aWxkL21ha2UvZ2VuX21zdnNfc2xuLnNoIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL2dl
bl9tc3ZzX3Nsbi5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kMWFkZmQ3NDljNjYzYTViMDZkNjAzZWI4MWRlMTk4
OTQ1YWZiNDE5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL2dlbl9t
c3ZzX3Nsbi5zaApAQCAtMCwwICsxLDI1NCBAQAorIyEvYmluL2Jhc2gKKyMjCisjIyAgQ29weXJp
Z2h0IChjKSAyMDEwIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZl
ZC4KKyMjCisjIyAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qt
c3R5bGUgbGljZW5zZQorIyMgIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUg
aW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZQorIyMgIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxs
ZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyMjICBpbiB0aGUgZmls
ZSBQQVRFTlRTLiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisjIyAgYmUg
Zm91bmQgaW4gdGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUu
CisjIworCisKK3NlbGY9JDAKK3NlbGZfYmFzZW5hbWU9JHtzZWxmIyMqL30KK0VPTD0kJ1xuJwor
RU9MRE9TPSQnXHInCisKK3Nob3dfaGVscCgpIHsKKyAgICBjYXQgPDxFT0YKK1VzYWdlOiAke3Nl
bGZfYmFzZW5hbWV9IFtvcHRpb25zXSBmaWxlMSBbZmlsZTIgLi4uXQorCitUaGlzIHNjcmlwdCBn
ZW5lcmF0ZXMgYSBWaXN1YWwgU3R1ZGlvIHNvbHV0aW9uIGZpbGUgZnJvbSBhIGxpc3Qgb2YgcHJv
amVjdAorZmlsZXMuCisKK09wdGlvbnM6CisgICAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAg
IFByaW50IHRoaXMgbWVzc2FnZQorICAgIC0tb3V0PW91dGZpbGUgICAgICAgICAgICAgICBSZWRp
cmVjdCBvdXRwdXQgdG8gYSBmaWxlCisgICAgLS12ZXI9dmVyc2lvbiAgICAgICAgICAgICAgIFZl
cnNpb24gKDE0LTE2KSBvZiB2aXN1YWwgc3R1ZGlvIHRvIGdlbmVyYXRlIGZvcgorICAgIC0tdGFy
Z2V0PWlzYS1vcy1jYyAgICAgICAgICBUYXJnZXQgc3BlY2lmaWVyCitFT0YKKyAgICBleGl0IDEK
K30KKworZGllKCkgeworICAgIGVjaG8gIiR7c2VsZl9iYXNlbmFtZX06ICRAIiA+JjIKKyAgICBb
IC1mICIke291dGZpbGV9IiBdICYmIHJtIC1mICR7b3V0ZmlsZX17LC5ta30KKyAgICBleGl0IDEK
K30KKworZGllX3Vua25vd24oKXsKKyAgICBlY2hvICJVbmtub3duIG9wdGlvbiBcIiQxXCIuIiA+
JjIKKyAgICBlY2hvICJTZWUgJHtzZWxmX2Jhc2VuYW1lfSAtLWhlbHAgZm9yIGF2YWlsYWJsZSBv
cHRpb25zLiIgPiYyCisgICAgWyAtZiAiJHtvdXRmaWxlfSIgXSAmJiBybSAtZiAke291dGZpbGV9
eywubWt9CisgICAgZXhpdCAxCit9CisKK2luZGVudDE9JCdcdCcKK2luZGVudD0iIgoraW5kZW50
X3B1c2goKSB7CisgICAgaW5kZW50PSIke2luZGVudH0ke2luZGVudDF9IgorfQoraW5kZW50X3Bv
cCgpIHsKKyAgICBpbmRlbnQ9IiR7aW5kZW50JSR7aW5kZW50MX19IgorfQorCitwYXJzZV9wcm9q
ZWN0KCkgeworICAgIGxvY2FsIGZpbGU9JDEKKyAgICBsb2NhbCBuYW1lPWBncmVwIFJvb3ROYW1l
c3BhY2UgIiRmaWxlIiB8IHNlZCAncywuKjwuKj5cKC4qXCk8Ly4qPi4qLFwxLCdgCisgICAgbG9j
YWwgZ3VpZD1gZ3JlcCBQcm9qZWN0R3VpZCAiJGZpbGUiIHwgc2VkICdzLC4qPC4qPlwoLipcKTwv
Lio+LiosXDEsJ2AKKworICAgICMgc2F2ZSB0aGUgcHJvamVjdCBHVUlEIHRvIGEgdmFyYWlibGUs
IG5vcm1hbGl6aW5nIHRvIHRoZSBiYXNlbmFtZSBvZiB0aGUKKyAgICAjIHZjeHByb2ogZmlsZSB3
aXRob3V0IHRoZSBleHRlbnNpb24KKyAgICBsb2NhbCB2YXIKKyAgICB2YXI9JHtmaWxlIyMqL30K
KyAgICB2YXI9JHt2YXIlJS4ke3NmeH19CisgICAgZXZhbCAiJHt2YXJ9X2ZpbGU9XCIkMVwiIgor
ICAgIGV2YWwgIiR7dmFyfV9uYW1lPSRuYW1lIgorICAgIGV2YWwgIiR7dmFyfV9ndWlkPSRndWlk
IgorCisgICAgY3VyX2NvbmZpZ19saXN0PWBncmVwIC1CMSAnTGFiZWw9IkNvbmZpZ3VyYXRpb24i
JyAkZmlsZSB8CisgICAgICAgIGdyZXAgQ29uZGl0aW9uIHwgY3V0IC1kXCcgLWY0YAorICAgIG5l
d19jb25maWdfbGlzdD0kKGZvciBpIGluICRjb25maWdfbGlzdCAkY3VyX2NvbmZpZ19saXN0OyBk
bworICAgICAgICBlY2hvICRpCisgICAgZG9uZSB8IHNvcnQgfCB1bmlxKQorICAgIGlmIFsgIiRj
b25maWdfbGlzdCIgIT0gIiIgXSAmJiBbICIkY29uZmlnX2xpc3QiICE9ICIkbmV3X2NvbmZpZ19s
aXN0IiBdOyB0aGVuCisgICAgICAgIG1peGVkX3BsYXRmb3Jtcz0xCisgICAgZmkKKyAgICBjb25m
aWdfbGlzdD0iJG5ld19jb25maWdfbGlzdCIKKyAgICBldmFsICIke3Zhcn1fY29uZmlnX2xpc3Q9
XCIkY3VyX2NvbmZpZ19saXN0XCIiCisgICAgcHJval9saXN0PSIke3Byb2pfbGlzdH0gJHt2YXJ9
IgorfQorCitwcm9jZXNzX3Byb2plY3QoKSB7CisgICAgZXZhbCAibG9jYWwgZmlsZT1cJHskMV9m
aWxlfSIKKyAgICBldmFsICJsb2NhbCBuYW1lPVwkeyQxX25hbWV9IgorICAgIGV2YWwgImxvY2Fs
IGd1aWQ9XCR7JDFfZ3VpZH0iCisKKyAgICAjIHNhdmUgdGhlIHByb2plY3QgR1VJRCB0byBhIHZh
cmFpYmxlLCBub3JtYWxpemluZyB0byB0aGUgYmFzZW5hbWUgb2YgdGhlCisgICAgIyB2Y3Byb2og
ZmlsZSB3aXRob3V0IHRoZSBleHRlbnNpb24KKyAgICBsb2NhbCB2YXIKKyAgICB2YXI9JHtmaWxl
IyMqL30KKyAgICB2YXI9JHt2YXIlJS4ke3NmeH19CisgICAgZXZhbCAiJHt2YXJ9X2d1aWQ9JGd1
aWQiCisKKyAgICBlY2hvICJQcm9qZWN0KFwiezhCQzlDRUI4LThCNEEtMTFEMC04RDExLTAwQTBD
OTFCQzk0Mn1cIikgPSBcIiRuYW1lXCIsIFwiJGZpbGVcIiwgXCIkZ3VpZFwiIgorICAgIGVjaG8g
IkVuZFByb2plY3QiCit9CisKK3Byb2Nlc3NfZ2xvYmFsKCkgeworICAgIGVjaG8gIkdsb2JhbCIK
KyAgICBpbmRlbnRfcHVzaAorCisgICAgIworICAgICMgU29sdXRpb24gQ29uZmlndXJhdGlvbiBQ
bGF0Zm9ybXMKKyAgICAjCisgICAgZWNobyAiJHtpbmRlbnR9R2xvYmFsU2VjdGlvbihTb2x1dGlv
bkNvbmZpZ3VyYXRpb25QbGF0Zm9ybXMpID0gcHJlU29sdXRpb24iCisgICAgaW5kZW50X3B1c2gK
KyAgICBJRlNfYmFrPSR7SUZTfQorICAgIElGUz0kJ1xyJyQnXG4nCisgICAgaWYgWyAiJG1peGVk
X3BsYXRmb3JtcyIgIT0gIiIgXTsgdGhlbgorICAgICAgICBjb25maWdfbGlzdD0iCitSZWxlYXNl
fE1peGVkIFBsYXRmb3JtcworRGVidWd8TWl4ZWQgUGxhdGZvcm1zIgorICAgIGZpCisgICAgZm9y
IGNvbmZpZyBpbiAke2NvbmZpZ19saXN0fTsgZG8KKyAgICAgICAgZWNobyAiJHtpbmRlbnR9JGNv
bmZpZyA9ICRjb25maWciCisgICAgZG9uZQorICAgIElGUz0ke0lGU19iYWt9CisgICAgaW5kZW50
X3BvcAorICAgIGVjaG8gIiR7aW5kZW50fUVuZEdsb2JhbFNlY3Rpb24iCisKKyAgICAjCisgICAg
IyBQcm9qZWN0IENvbmZpZ3VyYXRpb24gUGxhdGZvcm1zCisgICAgIworICAgIGVjaG8gIiR7aW5k
ZW50fUdsb2JhbFNlY3Rpb24oUHJvamVjdENvbmZpZ3VyYXRpb25QbGF0Zm9ybXMpID0gcG9zdFNv
bHV0aW9uIgorICAgIGluZGVudF9wdXNoCisgICAgZm9yIHByb2ogaW4gJHtwcm9qX2xpc3R9OyBk
bworICAgICAgICBldmFsICJsb2NhbCBwcm9qX2d1aWQ9XCR7JHtwcm9qfV9ndWlkfSIKKyAgICAg
ICAgZXZhbCAibG9jYWwgcHJval9jb25maWdfbGlzdD1cJHske3Byb2p9X2NvbmZpZ19saXN0fSIK
KyAgICAgICAgSUZTPSQnXHInJCdcbicKKyAgICAgICAgZm9yIGNvbmZpZyBpbiAke3Byb2pfY29u
ZmlnX2xpc3R9OyBkbworICAgICAgICAgICAgaWYgWyAiJG1peGVkX3BsYXRmb3JtcyIgIT0gIiIg
XTsgdGhlbgorICAgICAgICAgICAgICAgIGxvY2FsIGM9JHtjb25maWclJXwqfQorICAgICAgICAg
ICAgICAgIGVjaG8gIiR7aW5kZW50fSR7cHJval9ndWlkfS4ke2N9fE1peGVkIFBsYXRmb3Jtcy5B
Y3RpdmVDZmcgPSAke2NvbmZpZ30iCisgICAgICAgICAgICAgICAgZWNobyAiJHtpbmRlbnR9JHtw
cm9qX2d1aWR9LiR7Y318TWl4ZWQgUGxhdGZvcm1zLkJ1aWxkLjAgPSAke2NvbmZpZ30iCisgICAg
ICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgZWNobyAiJHtpbmRlbnR9JHtwcm9qX2d1aWR9
LiR7Y29uZmlnfS5BY3RpdmVDZmcgPSAke2NvbmZpZ30iCisgICAgICAgICAgICAgICAgZWNobyAi
JHtpbmRlbnR9JHtwcm9qX2d1aWR9LiR7Y29uZmlnfS5CdWlsZC4wID0gJHtjb25maWd9IgorICAg
ICAgICAgICAgZmkKKworICAgICAgICBkb25lCisgICAgICAgIElGUz0ke0lGU19iYWt9CisgICAg
ZG9uZQorICAgIGluZGVudF9wb3AKKyAgICBlY2hvICIke2luZGVudH1FbmRHbG9iYWxTZWN0aW9u
IgorCisgICAgIworICAgICMgU29sdXRpb24gUHJvcGVydGllcworICAgICMKKyAgICBlY2hvICIk
e2luZGVudH1HbG9iYWxTZWN0aW9uKFNvbHV0aW9uUHJvcGVydGllcykgPSBwcmVTb2x1dGlvbiIK
KyAgICBpbmRlbnRfcHVzaAorICAgIGVjaG8gIiR7aW5kZW50fUhpZGVTb2x1dGlvbk5vZGUgPSBG
QUxTRSIKKyAgICBpbmRlbnRfcG9wCisgICAgZWNobyAiJHtpbmRlbnR9RW5kR2xvYmFsU2VjdGlv
biIKKworICAgIGluZGVudF9wb3AKKyAgICBlY2hvICJFbmRHbG9iYWwiCit9CisKK3Byb2Nlc3Nf
bWFrZWZpbGUoKSB7CisgICAgSUZTX2Jhaz0ke0lGU30KKyAgICBJRlM9JCdccickJ1xuJworICAg
IGxvY2FsIFRBQj0kJ1x0JworICAgIGNhdCA8PEVPRgorTVNCVUlMRF9UT09MIDo9IG1zYnVpbGQu
ZXhlCitmb3VuZF9kZXZlbnYgOj0gXCQoc2hlbGwgd2hpY2ggXCQoTVNCVUlMRF9UT09MKSA+L2Rl
di9udWxsIDI+JjEgJiYgZWNobyB5ZXMpCisubm9kZXZlbnYub25jZToKKyR7VEFCfUBlY2hvICIg
ICogXCQoTVNCVUlMRF9UT09MKSBub3QgZm91bmQgaW4gcGF0aC4iCiske1RBQn1AZWNobyAiICAq
ICIKKyR7VEFCfUBlY2hvICIgICogWW91IHdpbGwgaGF2ZSB0byBidWlsZCBhbGwgY29uZmlndXJh
dGlvbnMgbWFudWFsbHkgdXNpbmcgdGhlIgorJHtUQUJ9QGVjaG8gIiAgKiBWaXN1YWwgU3R1ZGlv
IElERS4gVG8gYWxsb3cgbWFrZSB0byBidWlsZCB0aGVtIGF1dG9tYXRpY2FsbHksIgorJHtUQUJ9
QGVjaG8gIiAgKiBhZGQgdGhlIENvbW1vbjcvSURFIGRpcmVjdG9yeSBvZiB5b3VyIFZpc3VhbCBT
dHVkaW8iCiske1RBQn1AZWNobyAiICAqIGluc3RhbGxhdGlvbiB0byB5b3VyIHBhdGgsIGVnOiIK
KyR7VEFCfUBlY2hvICIgICogICBDOlxQcm9ncmFtIEZpbGVzXE1pY3Jvc29mdCBWaXN1YWwgU3R1
ZGlvIDEwLjBcQ29tbW9uN1xJREUiCiske1RBQn1AZWNobyAiICAqICIKKyR7VEFCfUB0b3VjaCBc
JEAKK0NMRUFOLU9CSlMgKz0gXCQoaWYgXCQoZm91bmRfZGV2ZW52KSwsLm5vZGV2ZW52Lm9uY2Up
CisKK0VPRgorCisgICAgZm9yIHNsbl9jb25maWcgaW4gJHtjb25maWdfbGlzdH07IGRvCisgICAg
ICAgIGxvY2FsIGNvbmZpZz0ke3Nsbl9jb25maWclJXwqfQorICAgICAgICBsb2NhbCBwbGF0Zm9y
bT0ke3Nsbl9jb25maWcjIyp8fQorICAgICAgICBsb2NhbCBub3dzX3Nsbl9jb25maWc9YGVjaG8g
JHNsbl9jb25maWcgfCBzZWQgLWUgJ3MvW15hLXpBLVowLTldL18vZydgCisgICAgICAgIGNhdCA8
PEVPRgorQlVJTERfVEFSR0VUUyArPSBcJChpZiBcJChOT19MQVVOQ0hfREVWRU5WKSwsJG5vd3Nf
c2xuX2NvbmZpZykKK2NsZWFuOjoKKyR7VEFCfXJtIC1yZiAiJHBsYXRmb3JtIi8iJGNvbmZpZyIK
Ky5QSE9OWTogJG5vd3Nfc2xuX2NvbmZpZworaWZuZXEgKFwkKGZvdW5kX2RldmVudiksKQorJG5v
d3Nfc2xuX2NvbmZpZzogJG91dGZpbGUKKyR7VEFCfVwkKE1TQlVJTERfVE9PTCkgJG91dGZpbGUg
LW0gLXQ6QnVpbGQgXFwKKyR7VEFCfSR7VEFCfS1wOkNvbmZpZ3VyYXRpb249IiRjb25maWciIC1w
OlBsYXRmb3JtPSIkcGxhdGZvcm0iCitlbHNlCiskbm93c19zbG5fY29uZmlnOiAkb3V0ZmlsZSAu
bm9kZXZlbnYub25jZQorJHtUQUJ9QGVjaG8gIiAgKiBTa2lwcGluZyBidWlsZCBvZiAkc2xuX2Nv
bmZpZyAoXCQoTVNCVUlMRF9UT09MKSBub3QgaW4gcGF0aCkuIgorJHtUQUJ9QGVjaG8gIiAgKiAi
CitlbmRpZgorCitFT0YKKyAgICBkb25lCisgICAgSUZTPSR7SUZTX2Jha30KK30KKworIyBQcm9j
ZXNzIGNvbW1hbmQgbGluZQorb3V0ZmlsZT0vZGV2L3N0ZG91dAorZm9yIG9wdCBpbiAiJEAiOyBk
bworICAgIG9wdHZhbD0iJHtvcHQjKj19IgorICAgIGNhc2UgIiRvcHQiIGluCisgICAgLS1oZWxw
fC1oKSBzaG93X2hlbHAKKyAgICA7OworICAgIC0tb3V0PSopIG91dGZpbGU9IiR7b3B0dmFsfSI7
IG1rb3V0ZmlsZT0iJHtvcHR2YWx9Ii5taworICAgIDs7CisgICAgLS1kZXA9KikgZXZhbCAiJHtv
cHR2YWwlJToqfV9kZXBzPVwiXCR7JHtvcHR2YWwlJToqfV9kZXBzfSAke29wdHZhbCMjKjp9XCIi
CisgICAgOzsKKyAgICAtLXZlcj0qKQorICAgICAgdnNfdmVyPSIkb3B0dmFsIgorICAgICAgY2Fz
ZSAkb3B0dmFsIGluCisgICAgICAgIDE0KSB2c195ZWFyPTIwMTUgOzsKKyAgICAgICAgMTUpIHZz
X3llYXI9MjAxNyA7OworICAgICAgICAxNikgdnNfeWVhcj0yMDE5IDs7CisgICAgICAgICopIGRp
ZSBVbnJlY29nbml6ZWQgVmlzdWFsIFN0dWRpbyBWZXJzaW9uIGluICRvcHQgOzsKKyAgICAgIGVz
YWMKKyAgICA7OworICAgIC0tdGFyZ2V0PSopIHRhcmdldD0iJHtvcHR2YWx9IgorICAgIDs7Cisg
ICAgLSopIGRpZV91bmtub3duICRvcHQKKyAgICA7OworICAgICopIGZpbGVfbGlzdFskeyNmaWxl
X2xpc3RbQF19XT0iJG9wdCIKKyAgICBlc2FjCitkb25lCitvdXRmaWxlPSR7b3V0ZmlsZTotL2Rl
di9zdGRvdXR9Citta291dGZpbGU9JHtta291dGZpbGU6LS9kZXYvc3Rkb3V0fQorY2FzZSAiJHt2
c192ZXJ9IiBpbgorICAgIDFbNC02XSkKKyAgICAgICMgVlMgaGFzIHVzZWQgRm9ybWF0IFZlcnNp
b24gMTIuMDAgY29udGludW91c2x5IHNpbmNlIHZzMTEuCisgICAgICBzbG5fdmVycz0iMTIuMDAi
CisgICAgICBzbG5fdmVyc19zdHI9IlZpc3VhbCBTdHVkaW8gJHt2c195ZWFyfSIKKyAgICA7Owor
ZXNhYworc2Z4PXZjeHByb2oKKworZm9yIGYgaW4gIiR7ZmlsZV9saXN0W0BdfSI7IGRvCisgICAg
cGFyc2VfcHJvamVjdCAkZgorZG9uZQorY2F0ICA+JHtvdXRmaWxlfSA8PEVPRgorTWljcm9zb2Z0
IFZpc3VhbCBTdHVkaW8gU29sdXRpb24gRmlsZSwgRm9ybWF0IFZlcnNpb24gJHNsbl92ZXJzJHtF
T0xET1N9CisjICRzbG5fdmVyc19zdHIke0VPTERPU30KK0VPRgorZm9yIHByb2ogaW4gJHtwcm9q
X2xpc3R9OyBkbworICAgIHByb2Nlc3NfcHJvamVjdCAkcHJvaiA+PiR7b3V0ZmlsZX0KK2RvbmUK
K3Byb2Nlc3NfZ2xvYmFsID4+JHtvdXRmaWxlfQorcHJvY2Vzc19tYWtlZmlsZSA+JHtta291dGZp
bGV9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2J1aWxkL21ha2UvZ2VuX21zdnNfdmN4cHJvai5z
aCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9nZW5fbXN2c192Y3hwcm9qLnNoCm5ldyBmaWxlIG1v
ZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmJiMWMzMWQyMzBkYTM4ZTYxZGY1OWI3YTQwZDdiOGRhYTc1N2M5ZmIKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L2J1aWxkL21ha2UvZ2VuX21zdnNfdmN4cHJvai5zaApAQCAtMCwwICsx
LDQ4NSBAQAorIyEvYmluL2Jhc2gKKyMjCisjIyAgQ29weXJpZ2h0IChjKSAyMDEzIFRoZSBXZWJN
IHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyMjCisjIyAgVXNlIG9mIHRo
aXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZQorIyMgIHRo
YXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNv
dXJjZQorIyMgIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0
cyBncmFudCBjYW4gYmUgZm91bmQKKyMjICBpbiB0aGUgZmlsZSBQQVRFTlRTLiAgQWxsIGNvbnRy
aWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisjIyAgYmUgZm91bmQgaW4gdGhlIEFVVEhPUlMg
ZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisjIworCitzZWxmPSQwCitzZWxm
X2Jhc2VuYW1lPSR7c2VsZiMjKi99CitzZWxmX2Rpcm5hbWU9JChkaXJuYW1lICIkMCIpCisKKy4g
IiRzZWxmX2Rpcm5hbWUvbXN2c19jb21tb24uc2gifHwgZXhpdCAxMjcKKworc2hvd19oZWxwKCkg
eworICAgIGNhdCA8PEVPRgorVXNhZ2U6ICR7c2VsZl9iYXNlbmFtZX0gLS1uYW1lPXByb2puYW1l
IFtvcHRpb25zXSBmaWxlMSBbZmlsZTIgLi4uXQorCitUaGlzIHNjcmlwdCBnZW5lcmF0ZXMgYSBW
aXN1YWwgU3R1ZGlvIHByb2plY3QgZmlsZSBmcm9tIGEgbGlzdCBvZiBzb3VyY2UKK2NvZGUgZmls
ZXMuCisKK09wdGlvbnM6CisgICAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgIFByaW50IHRo
aXMgbWVzc2FnZQorICAgIC0tZXhlICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSBhIHBy
b2plY3QgZm9yIGJ1aWxkaW5nIGFuIEFwcGxpY2F0aW9uCisgICAgLS1saWIgICAgICAgICAgICAg
ICAgICAgICAgIEdlbmVyYXRlIGEgcHJvamVjdCBmb3IgY3JlYXRpbmcgYSBzdGF0aWMgbGlicmFy
eQorICAgIC0tZGxsICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSBhIHByb2plY3QgZm9y
IGNyZWF0aW5nIGEgZGxsCisgICAgLS1zdGF0aWMtY3J0ICAgICAgICAgICAgICAgIFVzZSB0aGUg
c3RhdGljIEMgcnVudGltZSAoL01UKQorICAgIC0tZW5hYmxlLXdlcnJvciAgICAgICAgICAgICBU
cmVhdCB3YXJuaW5ncyBhcyBlcnJvcnMgKC9XWCkKKyAgICAtLXRhcmdldD1pc2Etb3MtY2MgICAg
ICAgICAgVGFyZ2V0IHNwZWNpZmllciAocmVxdWlyZWQpCisgICAgLS1vdXQ9ZmlsZW5hbWUgICAg
ICAgICAgICAgIFdyaXRlIG91dHB1dCB0byBhIGZpbGUgW3N0ZG91dF0KKyAgICAtLW5hbWU9cHJv
amVjdF9uYW1lICAgICAgICAgTmFtZSBvZiB0aGUgcHJvamVjdCAocmVxdWlyZWQpCisgICAgLS1w
cm9qLWd1aWQ9R1VJRCAgICAgICAgICAgIEdVSUQgdG8gdXNlIGZvciB0aGUgcHJvamVjdAorICAg
IC0tbW9kdWxlLWRlZj1maWxlbmFtZSAgICAgICBGaWxlIGNvbnRhaW5pbmcgZXhwb3J0IGRlZmlu
aXRpb25zIChmb3IgRExMcykKKyAgICAtLXZlcj12ZXJzaW9uICAgICAgICAgICAgICAgVmVyc2lv
biAoMTQtMTYpIG9mIHZpc3VhbCBzdHVkaW8gdG8gZ2VuZXJhdGUgZm9yCisgICAgLS1zcmMtcGF0
aC1iYXJlPWRpciAgICAgICAgIFBhdGggdG8gcm9vdCBvZiBzb3VyY2UgdHJlZQorICAgIC1JcGF0
aC90by9pbmNsdWRlICAgICAgICAgICBBZGRpdGlvbmFsIGluY2x1ZGUgZGlyZWN0b3JpZXMKKyAg
ICAtREZMQUdbPXZhbHVlXSAgICAgICAgICAgICAgUHJlcHJvY2Vzc29yIG1hY3JvcyB0byBkZWZp
bmUKKyAgICAtTHBhdGgvdG8vbGliICAgICAgICAgICAgICAgQWRkaXRpb25hbCBsaWJyYXJ5IHNl
YXJjaCBwYXRocworICAgIC1sbGlibmFtZSAgICAgICAgICAgICAgICAgICBMaWJyYXJ5IHRvIGxp
bmsgYWdhaW5zdAorRU9GCisgICAgZXhpdCAxCit9CisKK3RhZ19jb250ZW50KCkgeworICAgIGxv
Y2FsIHRhZz0kMQorICAgIGxvY2FsIGNvbnRlbnQ9JDIKKyAgICBzaGlmdAorICAgIHNoaWZ0Cisg
ICAgaWYgWyAkIyAtbmUgMCBdOyB0aGVuCisgICAgICAgIGVjaG8gIiR7aW5kZW50fTwke3RhZ30i
CisgICAgICAgIGluZGVudF9wdXNoCisgICAgICAgIHRhZ19hdHRyaWJ1dGVzICIkQCIKKyAgICAg
ICAgZWNobyAiJHtpbmRlbnR9PiR7Y29udGVudH08LyR7dGFnfT4iCisgICAgICAgIGluZGVudF9w
b3AKKyAgICBlbHNlCisgICAgICAgIGVjaG8gIiR7aW5kZW50fTwke3RhZ30+JHtjb250ZW50fTwv
JHt0YWd9PiIKKyAgICBmaQorfQorCitnZW5lcmF0ZV9maWx0ZXIoKSB7CisgICAgbG9jYWwgbmFt
ZT0kMQorICAgIGxvY2FsIHBhdHM9JDIKKyAgICBsb2NhbCBmaWxlX2xpc3Rfc3oKKyAgICBsb2Nh
bCBpCisgICAgbG9jYWwgZgorICAgIGxvY2FsIHNhdmVJRlM9IiRJRlMiCisgICAgbG9jYWwgcGFj
aworICAgIGVjaG8gImdlbmVyYXRpbmcgZmlsdGVyICckbmFtZScgZnJvbSAkeyNmaWxlX2xpc3Rb
QF19IGZpbGVzIiA+JjIKKyAgICBJRlM9KgorCisgICAgZmlsZV9saXN0X3N6PSR7I2ZpbGVfbGlz
dFtAXX0KKyAgICBmb3IgaSBpbiAkeyFmaWxlX2xpc3RbQF19OyBkbworICAgICAgICBmPSR7Zmls
ZV9saXN0W2ldfQorICAgICAgICBmb3IgcGF0IGluICR7cGF0cy8vOy8kSUZTfTsgZG8KKyAgICAg
ICAgICAgIGlmIFsgIiR7ZiMjKi59IiA9PSAiJHBhdCIgXTsgdGhlbgorICAgICAgICAgICAgICAg
IHVuc2V0IGZpbGVfbGlzdFtpXQorCisgICAgICAgICAgICAgICAgb2JqZj0kKGVjaG8gJHtmJS4q
fS5vYmogXAorICAgICAgICAgICAgICAgICAgICAgICB8IHNlZCAtZSAicywkc3JjX3BhdGhfYmFy
ZSwsIiBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC1lICdzL15bXC4vXVwrLy9nJyAt
ZSAncyxbOi8gXSxfLGcnKQorCisgICAgICAgICAgICAgICAgaWYgKFsgIiRwYXQiID09ICJhc20i
IF0gfHwgWyAiJHBhdCIgPT0gInMiIF0gfHwgWyAiJHBhdCIgPT0gIlMiIF0pICYmICR1c2VzX2Fz
bTsgdGhlbgorICAgICAgICAgICAgICAgICAgICAjIEF2b2lkIG9iamVjdCBmaWxlIG5hbWUgY29s
bGlzaW9ucywgaS5lLiB2cHhfY29uZmlnLmMgYW5kCisgICAgICAgICAgICAgICAgICAgICMgdnB4
X2NvbmZpZy5hc20gcHJvZHVjZSB0aGUgc2FtZSBvYmplY3QgZmlsZSB3aXRob3V0CisgICAgICAg
ICAgICAgICAgICAgICMgdGhpcyBhZGRpdGlvbmFsIHN1ZmZpeC4KKyAgICAgICAgICAgICAgICAg
ICAgb2JqZj0ke29iamYlLm9ian1fYXNtLm9iagorICAgICAgICAgICAgICAgICAgICBvcGVuX3Rh
ZyBDdXN0b21CdWlsZCBcCisgICAgICAgICAgICAgICAgICAgICAgICBJbmNsdWRlPSIkZiIKKyAg
ICAgICAgICAgICAgICAgICAgZm9yIHBsYXQgaW4gIiR7cGxhdGZvcm1zW0BdfSI7IGRvCisgICAg
ICAgICAgICAgICAgICAgICAgICBmb3IgY2ZnIGluIERlYnVnIFJlbGVhc2U7IGRvCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdGFnX2NvbnRlbnQgTWVzc2FnZSAiQXNzZW1ibGluZyAlKEZp
bGVuYW1lKSUoRXh0ZW5zaW9uKSIgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBD
b25kaXRpb249IidcJChDb25maWd1cmF0aW9uKXxcJChQbGF0Zm9ybSknPT0nJGNmZ3wkcGxhdCci
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFnX2NvbnRlbnQgQ29tbWFuZCAiJChldmFs
IGVjaG8gXCRhc21fJHtjZmd9X2NtZGxpbmUpIC1vIFwkKEludERpcikkb2JqZiIgXAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBDb25kaXRpb249IidcJChDb25maWd1cmF0aW9uKXxc
JChQbGF0Zm9ybSknPT0nJGNmZ3wkcGxhdCciCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dGFnX2NvbnRlbnQgT3V0cHV0cyAiXCQoSW50RGlyKSRvYmpmIiBcCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIENvbmRpdGlvbj0iJ1wkKENvbmZpZ3VyYXRpb24pfFwkKFBsYXRmb3Jt
KSc9PSckY2ZnfCRwbGF0JyIKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvbmUKKyAgICAgICAg
ICAgICAgICAgICAgZG9uZQorICAgICAgICAgICAgICAgICAgICBjbG9zZV90YWcgQ3VzdG9tQnVp
bGQKKyAgICAgICAgICAgICAgICBlbGlmIFsgIiRwYXQiID09ICJjIiBdIHx8IFwKKyAgICAgICAg
ICAgICAgICAgICAgIFsgIiRwYXQiID09ICJjYyIgXSB8fCBbICIkcGF0IiA9PSAiY3BwIiBdOyB0
aGVuCisgICAgICAgICAgICAgICAgICAgIG9wZW5fdGFnIENsQ29tcGlsZSBcCisgICAgICAgICAg
ICAgICAgICAgICAgICBJbmNsdWRlPSIkZiIKKyAgICAgICAgICAgICAgICAgICAgIyBTZXBhcmF0
ZSBmaWxlIG5hbWVzIHdpdGggQ29uZGl0aW9uPworICAgICAgICAgICAgICAgICAgICB0YWdfY29u
dGVudCBPYmplY3RGaWxlTmFtZSAiXCQoSW50RGlyKSRvYmpmIgorICAgICAgICAgICAgICAgICAg
ICAjIENoZWNrIGZvciBBVlggYW5kIHR1cm4gaXQgb24gdG8gYXZvaWQgd2FybmluZ3MuCisgICAg
ICAgICAgICAgICAgICAgIGlmIFtbICRmID1+IGF2eC4/XC5jJCBdXTsgdGhlbgorICAgICAgICAg
ICAgICAgICAgICAgICAgdGFnX2NvbnRlbnQgQWRkaXRpb25hbE9wdGlvbnMgIi9hcmNoOkFWWCIK
KyAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgY2xvc2VfdGFnIENs
Q29tcGlsZQorICAgICAgICAgICAgICAgIGVsaWYgWyAiJHBhdCIgPT0gImgiIF0gOyB0aGVuCisg
ICAgICAgICAgICAgICAgICAgIHRhZyBDbEluY2x1ZGUgXAorICAgICAgICAgICAgICAgICAgICAg
ICAgSW5jbHVkZT0iJGYiCisgICAgICAgICAgICAgICAgZWxpZiBbICIkcGF0IiA9PSAidmN4cHJv
aiIgXSA7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgb3Blbl90YWcgUHJvamVjdFJlZmVyZW5j
ZSBcCisgICAgICAgICAgICAgICAgICAgICAgICBJbmNsdWRlPSIkZiIKKyAgICAgICAgICAgICAg
ICAgICAgZGVwZ3VpZD1gZ3JlcCBQcm9qZWN0R3VpZCAiJGYiIHwgc2VkICdzLC4qPC4qPlwoLipc
KTwvLio+LiosXDEsJ2AKKyAgICAgICAgICAgICAgICAgICAgdGFnX2NvbnRlbnQgUHJvamVjdCAi
JGRlcGd1aWQiCisgICAgICAgICAgICAgICAgICAgIHRhZ19jb250ZW50IFJlZmVyZW5jZU91dHB1
dEFzc2VtYmx5IGZhbHNlCisgICAgICAgICAgICAgICAgICAgIGNsb3NlX3RhZyBQcm9qZWN0UmVm
ZXJlbmNlCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICB0YWcgTm9u
ZSBcCisgICAgICAgICAgICAgICAgICAgICAgICBJbmNsdWRlPSIkZiIKKyAgICAgICAgICAgICAg
ICBmaQorCisgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgIGZpCisgICAgICAgIGRv
bmUKKyAgICBkb25lCisKKyAgICBJRlM9IiRzYXZlSUZTIgorfQorCisjIFByb2Nlc3MgY29tbWFu
ZCBsaW5lCit1bnNldCB0YXJnZXQKK2ZvciBvcHQgaW4gIiRAIjsgZG8KKyAgICBvcHR2YWw9IiR7
b3B0Iyo9fSIKKyAgICBjYXNlICIkb3B0IiBpbgorICAgICAgICAtLWhlbHB8LWgpIHNob3dfaGVs
cAorICAgICAgICA7OworICAgICAgICAtLXRhcmdldD0qKSB0YXJnZXQ9IiR7b3B0dmFsfSIKKyAg
ICAgICAgOzsKKyAgICAgICAgLS1vdXQ9Kikgb3V0ZmlsZT0iJG9wdHZhbCIKKyAgICAgICAgOzsK
KyAgICAgICAgLS1uYW1lPSopIG5hbWU9IiR7b3B0dmFsfSIKKyAgICAgICAgOzsKKyAgICAgICAg
LS1wcm9qLWd1aWQ9KikgZ3VpZD0iJHtvcHR2YWx9IgorICAgICAgICA7OworICAgICAgICAtLW1v
ZHVsZS1kZWY9KikgbW9kdWxlX2RlZj0iJHtvcHR2YWx9IgorICAgICAgICA7OworICAgICAgICAt
LWV4ZSkgcHJval9raW5kPSJleGUiCisgICAgICAgIDs7CisgICAgICAgIC0tZGxsKSBwcm9qX2tp
bmQ9ImRsbCIKKyAgICAgICAgOzsKKyAgICAgICAgLS1saWIpIHByb2pfa2luZD0ibGliIgorICAg
ICAgICA7OworICAgICAgICAtLXNyYy1wYXRoLWJhcmU9KikKKyAgICAgICAgICAgIHNyY19wYXRo
X2JhcmU9JChmaXhfcGF0aCAiJG9wdHZhbCIpCisgICAgICAgICAgICBzcmNfcGF0aF9iYXJlPSR7
c3JjX3BhdGhfYmFyZSUvfQorICAgICAgICA7OworICAgICAgICAtLXN0YXRpYy1jcnQpIHVzZV9z
dGF0aWNfcnVudGltZT10cnVlCisgICAgICAgIDs7CisgICAgICAgIC0tZW5hYmxlLXdlcnJvcikg
d2Vycm9yPXRydWUKKyAgICAgICAgOzsKKyAgICAgICAgLS12ZXI9KikKKyAgICAgICAgICAgIHZz
X3Zlcj0iJG9wdHZhbCIKKyAgICAgICAgICAgIGNhc2UgIiRvcHR2YWwiIGluCisgICAgICAgICAg
ICAgICAgMVs0LTZdKQorICAgICAgICAgICAgICAgIDs7CisgICAgICAgICAgICAgICAgKikgZGll
IFVucmVjb2duaXplZCBWaXN1YWwgU3R1ZGlvIFZlcnNpb24gaW4gJG9wdAorICAgICAgICAgICAg
ICAgIDs7CisgICAgICAgICAgICBlc2FjCisgICAgICAgIDs7CisgICAgICAgIC1JKikKKyAgICAg
ICAgICAgIG9wdD0ke29wdCMjLUl9CisgICAgICAgICAgICBvcHQ9JChmaXhfcGF0aCAiJG9wdCIp
CisgICAgICAgICAgICBvcHQ9IiR7b3B0JS99IgorICAgICAgICAgICAgaW5jcz0iJHtpbmNzfSR7
aW5jczorO30mcXVvdDske29wdH0mcXVvdDsiCisgICAgICAgICAgICB5YXNtaW5jcz0iJHt5YXNt
aW5jc30gLUkmcXVvdDske29wdH0mcXVvdDsiCisgICAgICAgIDs7CisgICAgICAgIC1EKikgZGVm
aW5lcz0iJHtkZWZpbmVzfSR7ZGVmaW5lczorO30ke29wdCMjLUR9IgorICAgICAgICA7OworICAg
ICAgICAtTCopICMgZnVkZ2UgLiB0byAkKE91dERpcikKKyAgICAgICAgICAgIGlmIFsgIiR7b3B0
IyMtTH0iID09ICIuIiBdOyB0aGVuCisgICAgICAgICAgICAgICAgbGliZGlycz0iJHtsaWJkaXJz
fSR7bGliZGlyczorO30mcXVvdDtcJChPdXREaXIpJnF1b3Q7IgorICAgICAgICAgICAgZWxzZQor
ICAgICAgICAgICAgICAgICAjIEFsc28gdHJ5IGRpcmVjdG9yaWVzIGZvciB0aGlzIHBsYXRmb3Jt
L2NvbmZpZ3VyYXRpb24KKyAgICAgICAgICAgICAgICAgb3B0PSR7b3B0IyMtTH0KKyAgICAgICAg
ICAgICAgICAgb3B0PSQoZml4X3BhdGggIiRvcHQiKQorICAgICAgICAgICAgICAgICBsaWJkaXJz
PSIke2xpYmRpcnN9JHtsaWJkaXJzOis7fSZxdW90OyR7b3B0fSZxdW90OyIKKyAgICAgICAgICAg
ICAgICAgbGliZGlycz0iJHtsaWJkaXJzfSR7bGliZGlyczorO30mcXVvdDske29wdH0vXCQoUGxh
dGZvcm1OYW1lKS9cJChDb25maWd1cmF0aW9uKSZxdW90OyIKKyAgICAgICAgICAgICAgICAgbGli
ZGlycz0iJHtsaWJkaXJzfSR7bGliZGlyczorO30mcXVvdDske29wdH0vXCQoUGxhdGZvcm1OYW1l
KSZxdW90OyIKKyAgICAgICAgICAgIGZpCisgICAgICAgIDs7CisgICAgICAgIC1sKikgbGlicz0i
JHtsaWJzfSR7bGliczorIH0ke29wdCMjLWx9LmxpYiIKKyAgICAgICAgOzsKKyAgICAgICAgLSop
IGRpZV91bmtub3duICRvcHQKKyAgICAgICAgOzsKKyAgICAgICAgKikKKyAgICAgICAgICAgICMg
VGhlIHBhdGhzIGluIGZpbGVfbGlzdCBhcmUgZml4ZWQgb3V0c2lkZSBvZiB0aGUgbG9vcC4KKyAg
ICAgICAgICAgIGZpbGVfbGlzdFskeyNmaWxlX2xpc3RbQF19XT0iJG9wdCIKKyAgICAgICAgICAg
IGNhc2UgIiRvcHQiIGluCisgICAgICAgICAgICAgICAgICouYXNtfCouW1NzXSkgdXNlc19hc209
dHJ1ZQorICAgICAgICAgICAgICAgICA7OworICAgICAgICAgICAgZXNhYworICAgICAgICA7Owor
ICAgIGVzYWMKK2RvbmUKKworIyBNYWtlIG9uZSBjYWxsIHRvIGZpeF9wYXRoIGZvciBmaWxlX2xp
c3QgdG8gaW1wcm92ZSBwZXJmb3JtYW5jZS4KK2ZpeF9maWxlX2xpc3QgZmlsZV9saXN0CisKK291
dGZpbGU9JHtvdXRmaWxlOi0vZGV2L3N0ZG91dH0KK2d1aWQ9JHtndWlkOi1gZ2VuZXJhdGVfdXVp
ZGB9Cit1c2VzX2FzbT0ke3VzZXNfYXNtOi1mYWxzZX0KKworWyAtbiAiJG5hbWUiIF0gfHwgZGll
ICJQcm9qZWN0IG5hbWUgKC0tbmFtZSkgbXVzdCBiZSBzcGVjaWZpZWQhIgorWyAtbiAiJHRhcmdl
dCIgXSB8fCBkaWUgIlRhcmdldCAoLS10YXJnZXQpIG11c3QgYmUgc3BlY2lmaWVkISIKKworaWYg
JHt1c2Vfc3RhdGljX3J1bnRpbWU6LWZhbHNlfTsgdGhlbgorICAgIHJlbGVhc2VfcnVudGltZT1N
dWx0aVRocmVhZGVkCisgICAgZGVidWdfcnVudGltZT1NdWx0aVRocmVhZGVkRGVidWcKKyAgICBs
aWJfc2Z4PW10CitlbHNlCisgICAgcmVsZWFzZV9ydW50aW1lPU11bHRpVGhyZWFkZWRETEwKKyAg
ICBkZWJ1Z19ydW50aW1lPU11bHRpVGhyZWFkZWREZWJ1Z0RMTAorICAgIGxpYl9zZng9bWQKK2Zp
CisKKyMgQ2FsY3VsYXRlIGRlYnVnIGxpYiBuYW1lczogSWYgYSBsaWIgZW5kcyBpbiAke2xpYl9z
Znh9LmxpYiwgdGhlbiByZW5hbWUKKyMgaXQgdG8gJHtsaWJfc2Z4fWQubGliLiBUaGlzIHByZWNs
dWRlcyBsaW5raW5nIHRvIHJlbGVhc2UgbGlicyBmcm9tIGEKKyMgZGVidWcgZXhlLCBzbyB0aGlz
IG1heSBuZWVkIHRvIGJlIHJlZmFjdG9yZWQgbGF0ZXIuCitmb3IgbGliIGluICR7bGlic307IGRv
CisgICAgaWYgWyAiJGxpYiIgIT0gIiR7bGliJSR7bGliX3NmeH0ubGlifSIgXTsgdGhlbgorICAg
ICAgICBsaWI9JHtsaWIlLmxpYn1kLmxpYgorICAgIGZpCisgICAgZGVidWdfbGlicz0iJHtkZWJ1
Z19saWJzfSR7ZGVidWdfbGliczorIH0ke2xpYn0iCitkb25lCitkZWJ1Z19saWJzPSR7ZGVidWdf
bGlicy8vIC87fQorbGlicz0ke2xpYnMvLyAvO30KKworCisjIExpc3Qgb2YgYWxsIHBsYXRmb3Jt
cyBzdXBwb3J0ZWQgZm9yIHRoaXMgdGFyZ2V0CitjYXNlICIkdGFyZ2V0IiBpbgorICAgIHg4Nl82
NCopCisgICAgICAgIHBsYXRmb3Jtc1swXT0ieDY0IgorICAgICAgICBhc21fRGVidWdfY21kbGlu
ZT0ieWFzbSAtWHZjIC1nIGN2OCAtZiB3aW42NCAke3lhc21pbmNzfSAmcXVvdDslKEZ1bGxQYXRo
KSZxdW90OyIKKyAgICAgICAgYXNtX1JlbGVhc2VfY21kbGluZT0ieWFzbSAtWHZjIC1mIHdpbjY0
ICR7eWFzbWluY3N9ICZxdW90OyUoRnVsbFBhdGgpJnF1b3Q7IgorICAgIDs7CisgICAgeDg2KikK
KyAgICAgICAgcGxhdGZvcm1zWzBdPSJXaW4zMiIKKyAgICAgICAgYXNtX0RlYnVnX2NtZGxpbmU9
Inlhc20gLVh2YyAtZyBjdjggLWYgd2luMzIgJHt5YXNtaW5jc30gJnF1b3Q7JShGdWxsUGF0aCkm
cXVvdDsiCisgICAgICAgIGFzbV9SZWxlYXNlX2NtZGxpbmU9Inlhc20gLVh2YyAtZiB3aW4zMiAk
e3lhc21pbmNzfSAmcXVvdDslKEZ1bGxQYXRoKSZxdW90OyIKKyAgICA7OworICAgIGFybTY0KikK
KyAgICAgICAgcGxhdGZvcm1zWzBdPSJBUk02NCIKKyAgICAgICAgYXNtX0RlYnVnX2NtZGxpbmU9
ImFybWFzbTY0IC1ub2xvZ28gLW9sZGl0ICZxdW90OyUoRnVsbFBhdGgpJnF1b3Q7IgorICAgICAg
ICBhc21fUmVsZWFzZV9jbWRsaW5lPSJhcm1hc202NCAtbm9sb2dvIC1vbGRpdCAmcXVvdDslKEZ1
bGxQYXRoKSZxdW90OyIKKyAgICA7OworICAgIGFybSopCisgICAgICAgIHBsYXRmb3Jtc1swXT0i
QVJNIgorICAgICAgICBhc21fRGVidWdfY21kbGluZT0iYXJtYXNtIC1ub2xvZ28gLW9sZGl0ICZx
dW90OyUoRnVsbFBhdGgpJnF1b3Q7IgorICAgICAgICBhc21fUmVsZWFzZV9jbWRsaW5lPSJhcm1h
c20gLW5vbG9nbyAtb2xkaXQgJnF1b3Q7JShGdWxsUGF0aCkmcXVvdDsiCisgICAgOzsKKyAgICAq
KSBkaWUgIlVuc3VwcG9ydGVkIHRhcmdldCAkdGFyZ2V0ISIKKyAgICA7OworZXNhYworCitnZW5l
cmF0ZV92Y3hwcm9qKCkgeworICAgIGVjaG8gIjw/eG1sIHZlcnNpb249XCIxLjBcIiBlbmNvZGlu
Zz1cInV0Zi04XCI/PiIKKyAgICBvcGVuX3RhZyBQcm9qZWN0IFwKKyAgICAgICAgRGVmYXVsdFRh
cmdldHM9IkJ1aWxkIiBcCisgICAgICAgIFRvb2xzVmVyc2lvbj0iNC4wIiBcCisgICAgICAgIHht
bG5zPSJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL2RldmVsb3Blci9tc2J1aWxkLzIwMDMi
IFwKKworICAgIG9wZW5fdGFnIEl0ZW1Hcm91cCBcCisgICAgICAgIExhYmVsPSJQcm9qZWN0Q29u
ZmlndXJhdGlvbnMiCisgICAgZm9yIHBsYXQgaW4gIiR7cGxhdGZvcm1zW0BdfSI7IGRvCisgICAg
ICAgIGZvciBjb25maWcgaW4gRGVidWcgUmVsZWFzZTsgZG8KKyAgICAgICAgICAgIG9wZW5fdGFn
IFByb2plY3RDb25maWd1cmF0aW9uIFwKKyAgICAgICAgICAgICAgICBJbmNsdWRlPSIkY29uZmln
fCRwbGF0IgorICAgICAgICAgICAgdGFnX2NvbnRlbnQgQ29uZmlndXJhdGlvbiAkY29uZmlnCisg
ICAgICAgICAgICB0YWdfY29udGVudCBQbGF0Zm9ybSAkcGxhdAorICAgICAgICAgICAgY2xvc2Vf
dGFnIFByb2plY3RDb25maWd1cmF0aW9uCisgICAgICAgIGRvbmUKKyAgICBkb25lCisgICAgY2xv
c2VfdGFnIEl0ZW1Hcm91cAorCisgICAgb3Blbl90YWcgUHJvcGVydHlHcm91cCBcCisgICAgICAg
IExhYmVsPSJHbG9iYWxzIgorICAgICAgICB0YWdfY29udGVudCBQcm9qZWN0R3VpZCAieyR7Z3Vp
ZH19IgorICAgICAgICB0YWdfY29udGVudCBSb290TmFtZXNwYWNlICR7bmFtZX0KKyAgICAgICAg
dGFnX2NvbnRlbnQgS2V5d29yZCBNYW5hZ2VkQ1Byb2oKKyAgICAgICAgaWYgWyAkdnNfdmVyIC1n
ZSAxMiBdICYmIFsgIiR7cGxhdGZvcm1zWzBdfSIgPSAiQVJNIiBdOyB0aGVuCisgICAgICAgICAg
ICB0YWdfY29udGVudCBBcHBDb250YWluZXJBcHBsaWNhdGlvbiB0cnVlCisgICAgICAgICAgICAj
IFRoZSBhcHBsaWNhdGlvbiB0eXBlIGNhbiBiZSBvbmUgb2YgIldpbmRvd3MgU3RvcmUiLAorICAg
ICAgICAgICAgIyAiV2luZG93cyBQaG9uZSIgb3IgIldpbmRvd3MgUGhvbmUgU2lsdmVybGlnaHQi
LiBUaGUKKyAgICAgICAgICAgICMgYWN0dWFsIHZhbHVlIGRvZXNuJ3QgbWF0dGVyIGZyb20gdGhl
IGxpYnZweCBwb2ludCBvZiB2aWV3LAorICAgICAgICAgICAgIyBzaW5jZSBhIHN0YXRpYyBsaWJy
YXJ5IGJ1aWx0IGZvciBvbmUgd29ya3Mgb24gdGhlIG90aGVycy4KKyAgICAgICAgICAgICMgVGhl
IFBsYXRmb3JtVG9vbHNldCBmaWVsZCBuZWVkcyB0byBiZSBzZXQgaW4gc3luYyB3aXRoIHRoaXM7
CisgICAgICAgICAgICAjIGZvciBXaW5kb3dzIFN0b3JlIGFuZCBXaW5kb3dzIFBob25lIFNpbHZl
cmxpZ2h0IGl0IHNob3VsZCBiZQorICAgICAgICAgICAgIyB2MTIwIHdoaWxlIGl0IHNob3VsZCBi
ZSB2MTIwX3dwODEgaWYgdGhlIHR5cGUgaXMgV2luZG93cyBQaG9uZS4KKyAgICAgICAgICAgIHRh
Z19jb250ZW50IEFwcGxpY2F0aW9uVHlwZSAiV2luZG93cyBTdG9yZSIKKyAgICAgICAgICAgIHRh
Z19jb250ZW50IEFwcGxpY2F0aW9uVHlwZVJldmlzaW9uIDguMQorICAgICAgICBmaQorICAgICAg
ICBpZiBbICIke3BsYXRmb3Jtc1swXX0iID0gIkFSTTY0IiBdOyB0aGVuCisgICAgICAgICAgICAj
IFJlcXVpcmUgdGhlIGZpcnN0IFZpc3VhbCBTdHVkaW8gdmVyc2lvbiB0byBoYXZlIEFSTTY0IHN1
cHBvcnQuCisgICAgICAgICAgICB0YWdfY29udGVudCBNaW5pbXVtVmlzdWFsU3R1ZGlvVmVyc2lv
biAxNS45CisgICAgICAgIGZpCisgICAgICAgIGlmIFsgJHZzX3ZlciAtZXEgMTUgXSAmJiBbICIk
e3BsYXRmb3Jtc1swXX0iID0gIkFSTTY0IiBdOyB0aGVuCisgICAgICAgICAgICAjIFNpbmNlIFZT
IDE1IGRvZXMgbm90IGhhdmUgYSAndXNlIGxhdGVzdCBTREsgdmVyc2lvbicgZmFjaWxpdHksCisg
ICAgICAgICAgICAjIHNwZWNpZmljYWxseSByZXF1aXJlIHRoZSBjb250ZW1wb3JhbmVvdXMgU0RL
IHdpdGggb2ZmaWNpYWwgQVJNNjQKKyAgICAgICAgICAgICMgc3VwcG9ydC4KKyAgICAgICAgICAg
IHRhZ19jb250ZW50IFdpbmRvd3NUYXJnZXRQbGF0Zm9ybVZlcnNpb24gMTAuMC4xNzc2My4wCisg
ICAgICAgIGZpCisgICAgY2xvc2VfdGFnIFByb3BlcnR5R3JvdXAKKworICAgIHRhZyBJbXBvcnQg
XAorICAgICAgICBQcm9qZWN0PSJcJChWQ1RhcmdldHNQYXRoKVxcTWljcm9zb2Z0LkNwcC5EZWZh
dWx0LnByb3BzIgorCisgICAgZm9yIHBsYXQgaW4gIiR7cGxhdGZvcm1zW0BdfSI7IGRvCisgICAg
ICAgIGZvciBjb25maWcgaW4gUmVsZWFzZSBEZWJ1ZzsgZG8KKyAgICAgICAgICAgIG9wZW5fdGFn
IFByb3BlcnR5R3JvdXAgXAorICAgICAgICAgICAgICAgIENvbmRpdGlvbj0iJ1wkKENvbmZpZ3Vy
YXRpb24pfFwkKFBsYXRmb3JtKSc9PSckY29uZmlnfCRwbGF0JyIgXAorICAgICAgICAgICAgICAg
IExhYmVsPSJDb25maWd1cmF0aW9uIgorICAgICAgICAgICAgaWYgWyAiJHByb2pfa2luZCIgPSAi
ZXhlIiBdOyB0aGVuCisgICAgICAgICAgICAgICAgdGFnX2NvbnRlbnQgQ29uZmlndXJhdGlvblR5
cGUgQXBwbGljYXRpb24KKyAgICAgICAgICAgIGVsaWYgWyAiJHByb2pfa2luZCIgPSAiZGxsIiBd
OyB0aGVuCisgICAgICAgICAgICAgICAgdGFnX2NvbnRlbnQgQ29uZmlndXJhdGlvblR5cGUgRHlu
YW1pY0xpYnJhcnkKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICB0YWdfY29udGVu
dCBDb25maWd1cmF0aW9uVHlwZSBTdGF0aWNMaWJyYXJ5CisgICAgICAgICAgICBmaQorICAgICAg
ICAgICAgaWYgWyAiJHZzX3ZlciIgPSAiMTQiIF07IHRoZW4KKyAgICAgICAgICAgICAgICB0YWdf
Y29udGVudCBQbGF0Zm9ybVRvb2xzZXQgdjE0MAorICAgICAgICAgICAgZmkKKyAgICAgICAgICAg
IGlmIFsgIiR2c192ZXIiID0gIjE1IiBdOyB0aGVuCisgICAgICAgICAgICAgICAgdGFnX2NvbnRl
bnQgUGxhdGZvcm1Ub29sc2V0IHYxNDEKKyAgICAgICAgICAgIGZpCisgICAgICAgICAgICBpZiBb
ICIkdnNfdmVyIiA9ICIxNiIgXTsgdGhlbgorICAgICAgICAgICAgICAgIHRhZ19jb250ZW50IFBs
YXRmb3JtVG9vbHNldCB2MTQyCisgICAgICAgICAgICBmaQorICAgICAgICAgICAgdGFnX2NvbnRl
bnQgQ2hhcmFjdGVyU2V0IFVuaWNvZGUKKyAgICAgICAgICAgIGlmIFsgIiRjb25maWciID0gIlJl
bGVhc2UiIF07IHRoZW4KKyAgICAgICAgICAgICAgICB0YWdfY29udGVudCBXaG9sZVByb2dyYW1P
cHRpbWl6YXRpb24gdHJ1ZQorICAgICAgICAgICAgZmkKKyAgICAgICAgICAgIGNsb3NlX3RhZyBQ
cm9wZXJ0eUdyb3VwCisgICAgICAgIGRvbmUKKyAgICBkb25lCisKKyAgICB0YWcgSW1wb3J0IFwK
KyAgICAgICAgUHJvamVjdD0iXCQoVkNUYXJnZXRzUGF0aClcXE1pY3Jvc29mdC5DcHAucHJvcHMi
CisKKyAgICBvcGVuX3RhZyBJbXBvcnRHcm91cCBcCisgICAgICAgIExhYmVsPSJQcm9wZXJ0eVNo
ZWV0cyIKKyAgICAgICAgdGFnIEltcG9ydCBcCisgICAgICAgICAgICBQcm9qZWN0PSJcJChVc2Vy
Um9vdERpcilcXE1pY3Jvc29mdC5DcHAuXCQoUGxhdGZvcm0pLnVzZXIucHJvcHMiIFwKKyAgICAg
ICAgICAgIENvbmRpdGlvbj0iZXhpc3RzKCdcJChVc2VyUm9vdERpcilcXE1pY3Jvc29mdC5DcHAu
XCQoUGxhdGZvcm0pLnVzZXIucHJvcHMnKSIgXAorICAgICAgICAgICAgTGFiZWw9IkxvY2FsQXBw
RGF0YVBsYXRmb3JtIgorICAgIGNsb3NlX3RhZyBJbXBvcnRHcm91cAorCisgICAgdGFnIFByb3Bl
cnR5R3JvdXAgXAorICAgICAgICBMYWJlbD0iVXNlck1hY3JvcyIKKworICAgIGZvciBwbGF0IGlu
ICIke3BsYXRmb3Jtc1tAXX0iOyBkbworICAgICAgICBwbGF0X25vX3dzPWBlY2hvICRwbGF0IHwg
c2VkICdzL1teQS1aYS16MC05X10vXy9nJ2AKKyAgICAgICAgZm9yIGNvbmZpZyBpbiBEZWJ1ZyBS
ZWxlYXNlOyBkbworICAgICAgICAgICAgb3Blbl90YWcgUHJvcGVydHlHcm91cCBcCisgICAgICAg
ICAgICAgICAgQ29uZGl0aW9uPSInXCQoQ29uZmlndXJhdGlvbil8XCQoUGxhdGZvcm0pJz09JyRj
b25maWd8JHBsYXQnIgorICAgICAgICAgICAgdGFnX2NvbnRlbnQgT3V0RGlyICJcJChTb2x1dGlv
bkRpcikkcGxhdF9ub193c1xcXCQoQ29uZmlndXJhdGlvbilcXCIKKyAgICAgICAgICAgIHRhZ19j
b250ZW50IEludERpciAiJHBsYXRfbm9fd3NcXFwkKENvbmZpZ3VyYXRpb24pXFwke25hbWV9XFwi
CisgICAgICAgICAgICBpZiBbICIkcHJval9raW5kIiA9PSAibGliIiBdOyB0aGVuCisgICAgICAg
ICAgICAgIGlmIFsgIiRjb25maWciID09ICJEZWJ1ZyIgXTsgdGhlbgorICAgICAgICAgICAgICAg
IGNvbmZpZ19zdWZmaXg9ZAorICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgY29u
ZmlnX3N1ZmZpeD0iIgorICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICB0YWdfY29udGVu
dCBUYXJnZXROYW1lICIke25hbWV9JHtsaWJfc2Z4fSR7Y29uZmlnX3N1ZmZpeH0iCisgICAgICAg
ICAgICBmaQorICAgICAgICAgICAgY2xvc2VfdGFnIFByb3BlcnR5R3JvdXAKKyAgICAgICAgZG9u
ZQorICAgIGRvbmUKKworICAgIGZvciBwbGF0IGluICIke3BsYXRmb3Jtc1tAXX0iOyBkbworICAg
ICAgICBmb3IgY29uZmlnIGluIERlYnVnIFJlbGVhc2U7IGRvCisgICAgICAgICAgICBvcGVuX3Rh
ZyBJdGVtRGVmaW5pdGlvbkdyb3VwIFwKKyAgICAgICAgICAgICAgICBDb25kaXRpb249IidcJChD
b25maWd1cmF0aW9uKXxcJChQbGF0Zm9ybSknPT0nJGNvbmZpZ3wkcGxhdCciCisgICAgICAgICAg
ICBpZiBbICIkbmFtZSIgPT0gInZweCIgXTsgdGhlbgorICAgICAgICAgICAgICAgIGhvc3RwbGF0
PSRwbGF0CisgICAgICAgICAgICAgICAgaWYgWyAiJGhvc3RwbGF0IiA9PSAiQVJNIiBdOyB0aGVu
CisgICAgICAgICAgICAgICAgICAgIGhvc3RwbGF0PVdpbjMyCisgICAgICAgICAgICAgICAgZmkK
KyAgICAgICAgICAgIGZpCisgICAgICAgICAgICBvcGVuX3RhZyBDbENvbXBpbGUKKyAgICAgICAg
ICAgIGlmIFsgIiRjb25maWciID0gIkRlYnVnIiBdOyB0aGVuCisgICAgICAgICAgICAgICAgb3B0
PURpc2FibGVkCisgICAgICAgICAgICAgICAgcnVudGltZT0kZGVidWdfcnVudGltZQorICAgICAg
ICAgICAgICAgIGN1cmxpYnM9JGRlYnVnX2xpYnMKKyAgICAgICAgICAgICAgICBkZWJ1Zz1fREVC
VUcKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBvcHQ9TWF4U3BlZWQKKyAgICAg
ICAgICAgICAgICBydW50aW1lPSRyZWxlYXNlX3J1bnRpbWUKKyAgICAgICAgICAgICAgICBjdXJs
aWJzPSRsaWJzCisgICAgICAgICAgICAgICAgdGFnX2NvbnRlbnQgRmF2b3JTaXplT3JTcGVlZCBT
cGVlZAorICAgICAgICAgICAgICAgIGRlYnVnPU5ERUJVRworICAgICAgICAgICAgZmkKKyAgICAg
ICAgICAgIGV4dHJhZGVmaW5lcz0iOyRkZWZpbmVzIgorICAgICAgICAgICAgdGFnX2NvbnRlbnQg
T3B0aW1pemF0aW9uICRvcHQKKyAgICAgICAgICAgIHRhZ19jb250ZW50IEFkZGl0aW9uYWxJbmNs
dWRlRGlyZWN0b3JpZXMgIiRpbmNzOyUoQWRkaXRpb25hbEluY2x1ZGVEaXJlY3RvcmllcykiCisg
ICAgICAgICAgICB0YWdfY29udGVudCBQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyAiV0lOMzI7JGRl
YnVnO19DUlRfU0VDVVJFX05PX1dBUk5JTkdTO19DUlRfU0VDVVJFX05PX0RFUFJFQ0FURSRleHRy
YWRlZmluZXM7JShQcmVwcm9jZXNzb3JEZWZpbml0aW9ucykiCisgICAgICAgICAgICB0YWdfY29u
dGVudCBSdW50aW1lTGlicmFyeSAkcnVudGltZQorICAgICAgICAgICAgdGFnX2NvbnRlbnQgV2Fy
bmluZ0xldmVsIExldmVsMworICAgICAgICAgICAgaWYgJHt3ZXJyb3I6LWZhbHNlfTsgdGhlbgor
ICAgICAgICAgICAgICAgIHRhZ19jb250ZW50IFRyZWF0V2FybmluZ0FzRXJyb3IgdHJ1ZQorICAg
ICAgICAgICAgZmkKKyAgICAgICAgICAgIGlmIFsgJHZzX3ZlciAtZ2UgMTEgXTsgdGhlbgorICAg
ICAgICAgICAgICAgICMgV2UgbmVlZCB0byBvdmVycmlkZSB0aGUgZGVmYXVsdHMgZm9yIHRoZXNl
IHNldHRpbmdzCisgICAgICAgICAgICAgICAgIyBpZiBBcHBDb250YWluZXJBcHBsaWNhdGlvbiBp
cyBzZXQuCisgICAgICAgICAgICAgICAgdGFnX2NvbnRlbnQgQ29tcGlsZUFzV2luUlQgZmFsc2UK
KyAgICAgICAgICAgICAgICB0YWdfY29udGVudCBQcmVjb21waWxlZEhlYWRlciBOb3RVc2luZwor
ICAgICAgICAgICAgICAgIHRhZ19jb250ZW50IFNETENoZWNrIGZhbHNlCisgICAgICAgICAgICBm
aQorICAgICAgICAgICAgY2xvc2VfdGFnIENsQ29tcGlsZQorICAgICAgICAgICAgY2FzZSAiJHBy
b2pfa2luZCIgaW4KKyAgICAgICAgICAgIGV4ZSkKKyAgICAgICAgICAgICAgICBvcGVuX3RhZyBM
aW5rCisgICAgICAgICAgICAgICAgdGFnX2NvbnRlbnQgR2VuZXJhdGVEZWJ1Z0luZm9ybWF0aW9u
IHRydWUKKyAgICAgICAgICAgICAgICAjIENvbnNvbGUgaXMgdGhlIGRlZmF1bHQgbm9ybWFsbHks
IGJ1dCBpZgorICAgICAgICAgICAgICAgICMgQXBwQ29udGFpbmVyQXBwbGljYXRpb24gaXMgc2V0
LCB3ZSBuZWVkIHRvIG92ZXJyaWRlIGl0LgorICAgICAgICAgICAgICAgIHRhZ19jb250ZW50IFN1
YlN5c3RlbSBDb25zb2xlCisgICAgICAgICAgICAgICAgY2xvc2VfdGFnIExpbmsKKyAgICAgICAg
ICAgICAgICA7OworICAgICAgICAgICAgZGxsKQorICAgICAgICAgICAgICAgIG9wZW5fdGFnIExp
bmsKKyAgICAgICAgICAgICAgICB0YWdfY29udGVudCBHZW5lcmF0ZURlYnVnSW5mb3JtYXRpb24g
dHJ1ZQorICAgICAgICAgICAgICAgIHRhZ19jb250ZW50IE1vZHVsZURlZmluaXRpb25GaWxlICRt
b2R1bGVfZGVmCisgICAgICAgICAgICAgICAgY2xvc2VfdGFnIExpbmsKKyAgICAgICAgICAgICAg
ICA7OworICAgICAgICAgICAgbGliKQorICAgICAgICAgICAgICAgIDs7CisgICAgICAgICAgICBl
c2FjCisgICAgICAgICAgICBjbG9zZV90YWcgSXRlbURlZmluaXRpb25Hcm91cAorICAgICAgICBk
b25lCisKKyAgICBkb25lCisKKyAgICBvcGVuX3RhZyBJdGVtR3JvdXAKKyAgICBnZW5lcmF0ZV9m
aWx0ZXIgIlNvdXJjZSBGaWxlcyIgICAiYztjYztjcHA7ZGVmO29kbDtpZGw7aHBqO2JhdDthc207
YXNteDtzO1MiCisgICAgY2xvc2VfdGFnIEl0ZW1Hcm91cAorICAgIG9wZW5fdGFnIEl0ZW1Hcm91
cAorICAgIGdlbmVyYXRlX2ZpbHRlciAiSGVhZGVyIEZpbGVzIiAgICJoO2htO2lubDtpbmM7eHNk
IgorICAgIGNsb3NlX3RhZyBJdGVtR3JvdXAKKyAgICBvcGVuX3RhZyBJdGVtR3JvdXAKKyAgICBn
ZW5lcmF0ZV9maWx0ZXIgIkJ1aWxkIEZpbGVzIiAgICAibWsiCisgICAgY2xvc2VfdGFnIEl0ZW1H
cm91cAorICAgIG9wZW5fdGFnIEl0ZW1Hcm91cAorICAgIGdlbmVyYXRlX2ZpbHRlciAiUmVmZXJl
bmNlcyIgICAgICJ2Y3hwcm9qIgorICAgIGNsb3NlX3RhZyBJdGVtR3JvdXAKKworICAgIHRhZyBJ
bXBvcnQgXAorICAgICAgICBQcm9qZWN0PSJcJChWQ1RhcmdldHNQYXRoKVxcTWljcm9zb2Z0LkNw
cC50YXJnZXRzIgorCisgICAgb3Blbl90YWcgSW1wb3J0R3JvdXAgXAorICAgICAgICBMYWJlbD0i
RXh0ZW5zaW9uVGFyZ2V0cyIKKyAgICBjbG9zZV90YWcgSW1wb3J0R3JvdXAKKworICAgIGNsb3Nl
X3RhZyBQcm9qZWN0CisKKyAgICAjIFRoaXMgbXVzdCBiZSBkb25lIGZyb20gd2l0aGluIHRoZSB7
fSBzdWJzaGVsbAorICAgIGVjaG8gIklnbm9yZWQgZmlsZXMgbGlzdCAoJHsjZmlsZV9saXN0W0Bd
fSBpdGVtcykgaXM6IiA+JjIKKyAgICBmb3IgZiBpbiAiJHtmaWxlX2xpc3RbQF19IjsgZG8KKyAg
ICAgICAgZWNobyAiICAgICRmIiA+JjIKKyAgICBkb25lCit9CisKKyMgVGhpcyByZWdleHAgZG9l
c24ndCBjYXRjaCBtb3N0IG9mIHRoZSBzdHJpbmdzIGluIHRoZSB2Y3hwcm9qIGZvcm1hdCwKKyMg
c2luY2UgdGhleSdyZSBsaWtlIDx0YWc+cGF0aDwvdGFnPiBpbnN0ZWFkIG9mIDx0YWcgYXR0cj0i
cGF0aCIgLz4KKyMgYXMgcHJldmlvdXNseS4gSXQgc3RpbGwgc2VlbXMgdG8gd29yayBvayBkZXNw
aXRlIHRoaXMuCitnZW5lcmF0ZV92Y3hwcm9qIHwKKyAgICBzZWQgIC1lICcvIi9zO1woW14gIl1c
KS87XDFcXDtnJyB8CisgICAgc2VkICAtZSAnL3htbG5zL3M7XFw7LztnJyA+ICR7b3V0ZmlsZX0K
KworZXhpdApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL2lvcy1JbmZvLnBsaXN0
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC9idWlsZC9tYWtlL2lvcy1JbmZvLnBsaXN0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQxNTdi
MTFhMGQ1MDNiY2U5Mjg2ZjA0NTJlNjZjNTY3NTYwZWU3M2MKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L2J1aWxkL21ha2UvaW9zLUluZm8ucGxpc3QKQEAgLTAsMCArMSwzNyBAQAorPD94
bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzwhRE9DVFlQRSBwbGlzdCBQVUJM
SUMgIi0vL0FwcGxlLy9EVEQgUExJU1QgMS4wLy9FTiIgImh0dHA6Ly93d3cuYXBwbGUuY29tL0RU
RHMvUHJvcGVydHlMaXN0LTEuMC5kdGQiPgorPHBsaXN0IHZlcnNpb249IjEuMCI+Cis8ZGljdD4K
Kwk8a2V5PkNGQnVuZGxlRGV2ZWxvcG1lbnRSZWdpb248L2tleT4KKwk8c3RyaW5nPmVuPC9zdHJp
bmc+CisJPGtleT5DRkJ1bmRsZUV4ZWN1dGFibGU8L2tleT4KKwk8c3RyaW5nPlZQWDwvc3RyaW5n
PgorCTxrZXk+Q0ZCdW5kbGVJZGVudGlmaWVyPC9rZXk+CisJPHN0cmluZz5vcmcud2VibXByb2pl
Y3QuVlBYPC9zdHJpbmc+CisJPGtleT5DRkJ1bmRsZUluZm9EaWN0aW9uYXJ5VmVyc2lvbjwva2V5
PgorCTxzdHJpbmc+Ni4wPC9zdHJpbmc+CisJPGtleT5DRkJ1bmRsZU5hbWU8L2tleT4KKwk8c3Ry
aW5nPlZQWDwvc3RyaW5nPgorCTxrZXk+Q0ZCdW5kbGVQYWNrYWdlVHlwZTwva2V5PgorCTxzdHJp
bmc+Rk1XSzwvc3RyaW5nPgorCTxrZXk+Q0ZCdW5kbGVTaG9ydFZlcnNpb25TdHJpbmc8L2tleT4K
Kwk8c3RyaW5nPiR7VkVSU0lPTn08L3N0cmluZz4KKwk8a2V5PkNGQnVuZGxlU2lnbmF0dXJlPC9r
ZXk+CisJPHN0cmluZz4/Pz8/PC9zdHJpbmc+CisJPGtleT5DRkJ1bmRsZVN1cHBvcnRlZFBsYXRm
b3Jtczwva2V5PgorCTxhcnJheT4KKwkJPHN0cmluZz5pUGhvbmVPUzwvc3RyaW5nPgorCTwvYXJy
YXk+CisJPGtleT5DRkJ1bmRsZVZlcnNpb248L2tleT4KKwk8c3RyaW5nPiR7VkVSU0lPTn08L3N0
cmluZz4KKwk8a2V5Pk1pbmltdW1PU1ZlcnNpb248L2tleT4KKwk8c3RyaW5nPiR7SU9TX1ZFUlNJ
T05fTUlOfTwvc3RyaW5nPgorCTxrZXk+VUlEZXZpY2VGYW1pbHk8L2tleT4KKwk8YXJyYXk+CisJ
CTxpbnRlZ2VyPjE8L2ludGVnZXI+CisJCTxpbnRlZ2VyPjI8L2ludGVnZXI+CisJPC9hcnJheT4K
Kwk8a2V5PlZQWEZ1bGxWZXJzaW9uPC9rZXk+CisJPHN0cmluZz4ke0ZVTExWRVJTSU9OfTwvc3Ry
aW5nPgorPC9kaWN0PgorPC9wbGlzdD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFr
ZS9pb3NidWlsZC5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9pb3NidWlsZC5zaApuZXcgZmls
ZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi45NzhmZmJiYjk4ODdjOGIwZjk0YjMwNDk1YjM0YWUwMDUxYmFkNGRhCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL2lvc2J1aWxkLnNoCkBAIC0wLDAgKzEsMzg0
IEBACisjIS9iaW4vc2gKKyMjCisjIyAgQ29weXJpZ2h0IChjKSAyMDE0IFRoZSBXZWJNIHByb2pl
Y3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyMjCisjIyAgVXNlIG9mIHRoaXMgc291
cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZQorIyMgIHRoYXQgY2Fu
IGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZQor
IyMgIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBncmFu
dCBjYW4gYmUgZm91bmQKKyMjICBpbiB0aGUgZmlsZSBQQVRFTlRTLiAgQWxsIGNvbnRyaWJ1dGlu
ZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisjIyAgYmUgZm91bmQgaW4gdGhlIEFVVEhPUlMgZmlsZSBp
biB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisjIworIyMKKyMjIFRoaXMgc2NyaXB0IGdl
bmVyYXRlcyAnVlBYLmZyYW1ld29yaycuIEFuIGlPUyBhcHAgY2FuIGVuY29kZSBhbmQgZGVjb2Rl
IFZQeAorIyMgdmlkZW8gYnkgaW5jbHVkaW5nICdWUFguZnJhbWV3b3JrJy4KKyMjCisjIyBSdW4g
aW9zYnVpbGQuc2ggdG8gY3JlYXRlICdWUFguZnJhbWV3b3JrJyBpbiB0aGUgY3VycmVudCBkaXJl
Y3RvcnkuCisjIworc2V0IC1lCitkZXZudWxsPSc+IC9kZXYvbnVsbCAyPiYxJworCitCVUlMRF9S
T09UPSJfaW9zYnVpbGQiCitDT05GSUdVUkVfQVJHUz0iLS1kaXNhYmxlLWRvY3MKKyAgICAgICAg
ICAgICAgICAtLWRpc2FibGUtZXhhbXBsZXMKKyAgICAgICAgICAgICAgICAtLWRpc2FibGUtbGli
eXV2CisgICAgICAgICAgICAgICAgLS1kaXNhYmxlLXVuaXQtdGVzdHMiCitESVNUX0RJUj0iX2Rp
c3QiCitGUkFNRVdPUktfRElSPSJWUFguZnJhbWV3b3JrIgorRlJBTUVXT1JLX0xJQj0iVlBYLmZy
YW1ld29yay9WUFgiCitIRUFERVJfRElSPSIke0ZSQU1FV09SS19ESVJ9L0hlYWRlcnMvdnB4Igor
U0NSSVBUX0RJUj0kKGRpcm5hbWUgIiQwIikKK0xJQlZQWF9TT1VSQ0VfRElSPSQoY2QgJHtTQ1JJ
UFRfRElSfS8uLi8uLjsgcHdkKQorTElQTz0kKHhjcnVuIC1zZGsgaXBob25lb3Mke1NES30gLWZp
bmQgbGlwbykKK09SSUdfUFdEPSIkKHB3ZCkiCitBUk1fVEFSR0VUUz0iYXJtNjQtZGFyd2luLWdj
YworICAgICAgICAgICAgIGFybXY3LWRhcndpbi1nY2MKKyAgICAgICAgICAgICBhcm12N3MtZGFy
d2luLWdjYyIKK1NJTV9UQVJHRVRTPSJ4ODYtaXBob25lc2ltdWxhdG9yLWdjYworICAgICAgICAg
ICAgIHg4Nl82NC1pcGhvbmVzaW11bGF0b3ItZ2NjIgorT1NYX1RBUkdFVFM9Ing4Ni1kYXJ3aW4x
Ni1nY2MKKyAgICAgICAgICAgICB4ODZfNjQtZGFyd2luMTYtZ2NjIgorVEFSR0VUUz0iJHtBUk1f
VEFSR0VUU30gJHtTSU1fVEFSR0VUU30iCisKKyMgQ29uZmlndXJlcyBmb3IgdGhlIHRhcmdldCBz
cGVjaWZpZWQgYnkgJDEsIGFuZCBpbnZva2VzIG1ha2Ugd2l0aCB0aGUgZGlzdAorIyB0YXJnZXQg
dXNpbmcgJERJU1RfRElSIGFzIHRoZSBkaXN0cmlidXRpb24gb3V0cHV0IGRpcmVjdG9yeS4KK2J1
aWxkX3RhcmdldCgpIHsKKyAgbG9jYWwgdGFyZ2V0PSIkMSIKKyAgbG9jYWwgb2xkX3B3ZD0iJChw
d2QpIgorICBsb2NhbCB0YXJnZXRfc3BlY2lmaWNfZmxhZ3M9IiIKKworICB2bG9nICIqKipCdWls
ZGluZyB0YXJnZXQ6ICR7dGFyZ2V0fSoqKiIKKworICBjYXNlICIke3RhcmdldH0iIGluCisgICAg
eDg2LSopCisgICAgICB0YXJnZXRfc3BlY2lmaWNfZmxhZ3M9Ii0tZW5hYmxlLXBpYyIKKyAgICAg
IHZsb2cgIkVuYWJsZWQgUElDIGZvciAke3RhcmdldH0iCisgICAgICA7OworICBlc2FjCisKKyAg
bWtkaXIgIiR7dGFyZ2V0fSIKKyAgY2QgIiR7dGFyZ2V0fSIKKyAgZXZhbCAiJHtMSUJWUFhfU09V
UkNFX0RJUn0vY29uZmlndXJlIiAtLXRhcmdldD0iJHt0YXJnZXR9IiBcCisgICAgJHtDT05GSUdV
UkVfQVJHU30gJHtFWFRSQV9DT05GSUdVUkVfQVJHU30gJHt0YXJnZXRfc3BlY2lmaWNfZmxhZ3N9
IFwKKyAgICAke2Rldm51bGx9CisgIGV4cG9ydCBESVNUX0RJUgorICBldmFsIG1ha2UgZGlzdCAk
e2Rldm51bGx9CisgIGNkICIke29sZF9wd2R9IgorCisgIHZsb2cgIioqKkRvbmUgYnVpbGRpbmcg
dGFyZ2V0OiAke3RhcmdldH0qKioiCit9CisKKyMgUmV0dXJucyB0aGUgcHJlcHJvY2Vzc29yIHN5
bWJvbCBmb3IgdGhlIHRhcmdldCBzcGVjaWZpZWQgYnkgJDEuCit0YXJnZXRfdG9fcHJlcHJvY19z
eW1ib2woKSB7CisgIHRhcmdldD0iJDEiCisgIGNhc2UgIiR7dGFyZ2V0fSIgaW4KKyAgICBhcm02
NC0qKQorICAgICAgZWNobyAiX19hYXJjaDY0X18iCisgICAgICA7OworICAgIGFybXY3LSopCisg
ICAgICBlY2hvICJfX0FSTV9BUkNIXzdBX18iCisgICAgICA7OworICAgIGFybXY3cy0qKQorICAg
ICAgZWNobyAiX19BUk1fQVJDSF83U19fIgorICAgICAgOzsKKyAgICB4ODYtKikKKyAgICAgIGVj
aG8gIl9faTM4Nl9fIgorICAgICAgOzsKKyAgICB4ODZfNjQtKikKKyAgICAgIGVjaG8gIl9feDg2
XzY0X18iCisgICAgICA7OworICAgICopCisgICAgICBlY2hvICIjZXJyb3IgJHt0YXJnZXR9IHVu
a25vd24vdW5zdXBwb3J0ZWQiCisgICAgICByZXR1cm4gMQorICAgICAgOzsKKyAgZXNhYworfQor
CisjIENyZWF0ZSBhIHZweF9jb25maWcuaCBzaGltIHRoYXQsIGJhc2VkIG9uIHByZXByb2Nlc3Nv
ciBzZXR0aW5ncyBmb3IgdGhlCisjIGN1cnJlbnQgdGFyZ2V0IENQVSwgaW5jbHVkZXMgdGhlIHJl
YWwgdnB4X2NvbmZpZy5oIGZvciB0aGUgY3VycmVudCB0YXJnZXQuCisjICQxIGlzIHRoZSBsaXN0
IG9mIHRhcmdldHMuCitjcmVhdGVfdnB4X2ZyYW1ld29ya19jb25maWdfc2hpbSgpIHsKKyAgbG9j
YWwgdGFyZ2V0cz0iJDEiCisgIGxvY2FsIGNvbmZpZ19maWxlPSIke0hFQURFUl9ESVJ9L3ZweF9j
b25maWcuaCIKKyAgbG9jYWwgcHJlcHJvY19zeW1ib2w9IiIKKyAgbG9jYWwgdGFyZ2V0PSIiCisg
IGxvY2FsIGluY2x1ZGVfZ3VhcmQ9IlZQWF9GUkFNRVdPUktfSEVBREVSU19WUFhfVlBYX0NPTkZJ
R19IXyIKKworICBsb2NhbCBmaWxlX2hlYWRlcj0iLyoKKyAqICBDb3B5cmlnaHQgKGMpICQoZGF0
ZSArJVkpIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyAq
CisgKiAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUg
bGljZW5zZQorICogIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhl
IHJvb3Qgb2YgdGhlIHNvdXJjZQorICogIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFs
IHByb3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyAqICBpbiB0aGUgZmlsZSBQQVRF
TlRTLiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisgKiAgYmUgZm91bmQg
aW4gdGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisgKi8K
KworLyogR0VORVJBVEVEIEZJTEU6IERPIE5PVCBFRElUISAqLworCisjaWZuZGVmICR7aW5jbHVk
ZV9ndWFyZH0KKyNkZWZpbmUgJHtpbmNsdWRlX2d1YXJkfQorCisjaWYgZGVmaW5lZCIKKworICBw
cmludGYgIiVzIiAiJHtmaWxlX2hlYWRlcn0iID4gIiR7Y29uZmlnX2ZpbGV9IgorICBmb3IgdGFy
Z2V0IGluICR7dGFyZ2V0c307IGRvCisgICAgcHJlcHJvY19zeW1ib2w9JCh0YXJnZXRfdG9fcHJl
cHJvY19zeW1ib2wgIiR7dGFyZ2V0fSIpCisgICAgcHJpbnRmICIgJHtwcmVwcm9jX3N5bWJvbH1c
biIgPj4gIiR7Y29uZmlnX2ZpbGV9IgorICAgIHByaW50ZiAiI2RlZmluZSBWUFhfRlJBTUVXT1JL
X1RBUkdFVCBcIiR7dGFyZ2V0fVwiXG4iID4+ICIke2NvbmZpZ19maWxlfSIKKyAgICBwcmludGYg
IiNpbmNsdWRlIFwiVlBYL3ZweC8ke3RhcmdldH0vdnB4X2NvbmZpZy5oXCJcbiIgPj4gIiR7Y29u
ZmlnX2ZpbGV9IgorICAgIHByaW50ZiAiI2VsaWYgZGVmaW5lZCIgPj4gIiR7Y29uZmlnX2ZpbGV9
IgorICAgIG1rZGlyICIke0hFQURFUl9ESVJ9LyR7dGFyZ2V0fSIKKyAgICBjcCAtcCAiJHtCVUlM
RF9ST09UfS8ke3RhcmdldH0vdnB4X2NvbmZpZy5oIiAiJHtIRUFERVJfRElSfS8ke3RhcmdldH0i
CisgIGRvbmUKKworICAjIENvbnN1bWUgdGhlIGxhc3QgbGluZSBvZiBvdXRwdXQgZnJvbSB0aGUg
bG9vcDogV2UgZG9uJ3Qgd2FudCBpdC4KKyAgc2VkIC1pLmJhayAtZSAnJGQnICIke2NvbmZpZ19m
aWxlfSIKKyAgcm0gIiR7Y29uZmlnX2ZpbGV9LmJhayIKKworICBwcmludGYgIiNlbmRpZlxuXG4i
ID4+ICIke2NvbmZpZ19maWxlfSIKKyAgcHJpbnRmICIjZW5kaWYgIC8vICR7aW5jbHVkZV9ndWFy
ZH0iID4+ICIke2NvbmZpZ19maWxlfSIKK30KKworIyBWZXJpZmllcyB0aGF0ICRGUkFNRVdPUktf
TElCIGZhdCBsaWJyYXJ5IGNvbnRhaW5zIHJlcXVlc3RlZCBidWlsZHMuCit2ZXJpZnlfZnJhbWV3
b3JrX3RhcmdldHMoKSB7CisgIGxvY2FsIHJlcXVlc3RlZF9jcHVzPSIiCisgIGxvY2FsIGNwdT0i
IgorCisgICMgRXh0cmFjdCBDUFUgZnJvbSBmdWxsIHRhcmdldCBuYW1lLgorICBmb3IgdGFyZ2V0
OyBkbworICAgIGNwdT0iJHt0YXJnZXQlJS0qfSIKKyAgICBpZiBbICIke2NwdX0iID0gIng4NiIg
XTsgdGhlbgorICAgICAgIyBsaXBvIC1pbmZvIG91dHB1dHMgaTM4NiBmb3IgbGlidnB4IHg4NiB0
YXJnZXRzLgorICAgICAgY3B1PSJpMzg2IgorICAgIGZpCisgICAgcmVxdWVzdGVkX2NwdXM9IiR7
cmVxdWVzdGVkX2NwdXN9JHtjcHV9ICIKKyAgZG9uZQorCisgICMgR2V0IHRhcmdldCBDUFVzIHBy
ZXNlbnQgaW4gZnJhbWV3b3JrIGxpYnJhcnkuCisgIGxvY2FsIHRhcmdldHNfYnVpbHQ9JCgke0xJ
UE99IC1pbmZvICR7RlJBTUVXT1JLX0xJQn0pCisKKyAgIyAkTElQTyAtaW5mbyBvdXRwdXRzIGEg
c3RyaW5nIGxpa2UgdGhlIGZvbGxvd2luZzoKKyAgIyAgIEFyY2hpdGVjdHVyZXMgaW4gdGhlIGZh
dCBmaWxlOiAkRlJBTUVXT1JLX0xJQiA8YXJjaGl0ZWN0dXJlcz4KKyAgIyBDYXB0dXJlIG9ubHkg
dGhlIGFyY2hpdGVjdHVyZSBzdHJpbmdzLgorICB0YXJnZXRzX2J1aWx0PSR7dGFyZ2V0c19idWls
dCMjKjogfQorCisgICMgU29ydCBDUFUgc3RyaW5ncyB0byBtYWtlIHRoZSBuZXh0IHN0ZXAgYSBz
aW1wbGUgc3RyaW5nIGNvbXBhcmUuCisgIGxvY2FsIGFjdHVhbD0kKGVjaG8gJHt0YXJnZXRzX2J1
aWx0fSB8IHRyICIgIiAiXG4iIHwgc29ydCB8IHRyICJcbiIgIiAiKQorICBsb2NhbCByZXF1ZXN0
ZWQ9JChlY2hvICR7cmVxdWVzdGVkX2NwdXN9IHwgdHIgIiAiICJcbiIgfCBzb3J0IHwgdHIgIlxu
IiAiICIpCisKKyAgdmxvZyAiUmVxdWVzdGVkICR7RlJBTUVXT1JLX0xJQn0gQ1BVczogJHtyZXF1
ZXN0ZWR9IgorICB2bG9nICJBY3R1YWwgJHtGUkFNRVdPUktfTElCfSBDUFVzOiAke2FjdHVhbH0i
CisKKyAgaWYgWyAiJHtyZXF1ZXN0ZWR9IiAhPSAiJHthY3R1YWx9IiBdOyB0aGVuCisgICAgZWxv
ZyAiQWN0dWFsICR7RlJBTUVXT1JLX0xJQn0gdGFyZ2V0cyBkbyBub3QgbWF0Y2ggcmVxdWVzdGVk
IHRhcmdldCBsaXN0LiIKKyAgICBlbG9nICIgIFJlcXVlc3RlZCB0YXJnZXQgQ1BVczogJHtyZXF1
ZXN0ZWR9IgorICAgIGVsb2cgIiAgQWN0dWFsIHRhcmdldCBDUFVzOiAke2FjdHVhbH0iCisgICAg
cmV0dXJuIDEKKyAgZmkKK30KKworIyBDb25maWd1cmVzIGFuZCBidWlsZHMgZWFjaCB0YXJnZXQg
c3BlY2lmaWVkIGJ5ICQxLCBhbmQgdGhlbiBidWlsZHMKKyMgVlBYLmZyYW1ld29yay4KK2J1aWxk
X2ZyYW1ld29yaygpIHsKKyAgbG9jYWwgbGliX2xpc3Q9IiIKKyAgbG9jYWwgdGFyZ2V0cz0iJDEi
CisgIGxvY2FsIHRhcmdldD0iIgorICBsb2NhbCB0YXJnZXRfZGlzdF9kaXI9IiIKKworICAjIENs
ZWFuIHVwIGZyb20gcHJldmlvdXMgYnVpbGQocykuCisgIHJtIC1yZiAiJHtCVUlMRF9ST09UfSIg
IiR7RlJBTUVXT1JLX0RJUn0iCisKKyAgIyBDcmVhdGUgb3V0cHV0IGRpcnMuCisgIG1rZGlyIC1w
ICIke0JVSUxEX1JPT1R9IgorICBta2RpciAtcCAiJHtIRUFERVJfRElSfSIKKworICBjZCAiJHtC
VUlMRF9ST09UfSIKKworICBmb3IgdGFyZ2V0IGluICR7dGFyZ2V0c307IGRvCisgICAgYnVpbGRf
dGFyZ2V0ICIke3RhcmdldH0iCisgICAgdGFyZ2V0X2Rpc3RfZGlyPSIke0JVSUxEX1JPT1R9LyR7
dGFyZ2V0fS8ke0RJU1RfRElSfSIKKyAgICBpZiBbICIke0VOQUJMRV9TSEFSRUR9IiA9ICJ5ZXMi
IF07IHRoZW4KKyAgICAgIGxvY2FsIHN1ZmZpeD0iZHlsaWIiCisgICAgZWxzZQorICAgICAgbG9j
YWwgc3VmZml4PSJhIgorICAgIGZpCisgICAgbGliX2xpc3Q9IiR7bGliX2xpc3R9ICR7dGFyZ2V0
X2Rpc3RfZGlyfS9saWIvbGlidnB4LiR7c3VmZml4fSIKKyAgZG9uZQorCisgIGNkICIke09SSUdf
UFdEfSIKKworICAjIFRoZSBiYXNpYyBsaWJ2cHggQVBJIGluY2x1ZGVzIGFyZSBhbGwgdGhlIHNh
bWU7IGp1c3QgZ3JhYiB0aGUgbW9zdCByZWNlbnQKKyAgIyBzZXQuCisgIGNwIC1wICIke3Rhcmdl
dF9kaXN0X2Rpcn0iL2luY2x1ZGUvdnB4LyogIiR7SEVBREVSX0RJUn0iCisKKyAgIyBCdWlsZCB0
aGUgZmF0IGxpYnJhcnkuCisgICR7TElQT30gLWNyZWF0ZSAke2xpYl9saXN0fSAtb3V0cHV0ICR7
RlJBTUVXT1JLX0RJUn0vVlBYCisKKyAgIyBDcmVhdGUgdGhlIHZweF9jb25maWcuaCBzaGltIHRo
YXQgYWxsb3dzIHVzYWdlIG9mIHZweF9jb25maWcuaCBmcm9tCisgICMgd2l0aGluIFZQWC5mcmFt
ZXdvcmsuCisgIGNyZWF0ZV92cHhfZnJhbWV3b3JrX2NvbmZpZ19zaGltICIke3RhcmdldHN9Igor
CisgICMgQ29weSBpbiB2cHhfdmVyc2lvbi5oLgorICBjcCAtcCAiJHtCVUlMRF9ST09UfS8ke3Rh
cmdldH0vdnB4X3ZlcnNpb24uaCIgIiR7SEVBREVSX0RJUn0iCisKKyAgaWYgWyAiJHtFTkFCTEVf
U0hBUkVEfSIgPSAieWVzIiBdOyB0aGVuCisgICAgIyBBZGp1c3QgdGhlIGR5bGliJ3MgbmFtZSBz
byBkeW5hbWljIGxpbmtpbmcgaW4gYXBwcyB3b3JrcyBhcyBleHBlY3RlZC4KKyAgICBpbnN0YWxs
X25hbWVfdG9vbCAtaWQgJ0BycGF0aC9WUFguZnJhbWV3b3JrL1ZQWCcgJHtGUkFNRVdPUktfRElS
fS9WUFgKKworICAgICMgQ29weSBpbiBJbmZvLnBsaXN0LgorICAgIGNhdCAiJHtTQ1JJUFRfRElS
fS9pb3MtSW5mby5wbGlzdCIgXAorICAgICAgfCBzZWQgInMvXCR7RlVMTFZFUlNJT059LyR7RlVM
TFZFUlNJT059L2ciIFwKKyAgICAgIHwgc2VkICJzL1wke1ZFUlNJT059LyR7VkVSU0lPTn0vZyIg
XAorICAgICAgfCBzZWQgInMvXCR7SU9TX1ZFUlNJT05fTUlOfS8ke0lPU19WRVJTSU9OX01JTn0v
ZyIgXAorICAgICAgPiAiJHtGUkFNRVdPUktfRElSfS9JbmZvLnBsaXN0IgorICBmaQorCisgICMg
Q29uZmlybSBWUFguZnJhbWV3b3JrL1ZQWCBjb250YWlucyB0aGUgdGFyZ2V0cyByZXF1ZXN0ZWQu
CisgIHZlcmlmeV9mcmFtZXdvcmtfdGFyZ2V0cyAke3RhcmdldHN9CisKKyAgdmxvZyAiQ3JlYXRl
ZCBmYXQgbGlicmFyeSAke0ZSQU1FV09SS19MSUJ9IGNvbnRhaW5pbmc6IgorICBmb3IgbGliIGlu
ICR7bGliX2xpc3R9OyBkbworICAgIHZsb2cgIiAgJChlY2hvICR7bGlifSB8IGF3ayAtRiAvICd7
cHJpbnQgJDIsICRORn0nKSIKKyAgZG9uZQorfQorCisjIFRyYXAgZnVuY3Rpb24uIENsZWFucyB1
cCB0aGUgc3VidHJlZSB1c2VkIHRvIGJ1aWxkIGFsbCB0YXJnZXRzIGNvbnRhaW5lZCBpbgorIyAk
VEFSR0VUUy4KK2NsZWFudXAoKSB7CisgIGxvY2FsIHJlcz0kPworICBjZCAiJHtPUklHX1BXRH0i
CisKKyAgaWYgWyAkcmVzIC1uZSAwIF07IHRoZW4KKyAgICBlbG9nICJidWlsZCBleGl0ZWQgd2l0
aCBlcnJvciAoJHJlcykiCisgIGZpCisKKyAgaWYgWyAiJHtQUkVTRVJWRV9CVUlMRF9PVVRQVVR9
IiAhPSAieWVzIiBdOyB0aGVuCisgICAgcm0gLXJmICIke0JVSUxEX1JPT1R9IgorICBmaQorfQor
CitwcmludF9saXN0KCkgeworICBsb2NhbCBpbmRlbnQ9IiQxIgorICBzaGlmdAorICBsb2NhbCBs
aXN0PSIkQCIKKyAgZm9yIGVudHJ5IGluICR7bGlzdH07IGRvCisgICAgZWNobyAiJHtpbmRlbnR9
JHtlbnRyeX0iCisgIGRvbmUKK30KKworaW9zYnVpbGRfdXNhZ2UoKSB7CitjYXQgPDwgRU9GCisg
IFVzYWdlOiAkezAjIyovfSBbYXJndW1lbnRzXQorICAgIC0taGVscDogRGlzcGxheSB0aGlzIG1l
c3NhZ2UgYW5kIGV4aXQuCisgICAgLS1lbmFibGUtc2hhcmVkOiBCdWlsZCBhIGR5bmFtaWMgZnJh
bWV3b3JrIGZvciB1c2Ugb24gaU9TIDggb3IgbGF0ZXIuCisgICAgLS1leHRyYS1jb25maWd1cmUt
YXJncyA8YXJncz46IEV4dHJhIGFyZ3MgdG8gcGFzcyB3aGVuIGNvbmZpZ3VyaW5nIGxpYnZweC4K
KyAgICAtLW1hY29zeDogVXNlcyBkYXJ3aW4xNiB0YXJnZXRzIGluc3RlYWQgb2YgaXBob25lc2lt
dWxhdG9yIHRhcmdldHMgZm9yIHg4NgorICAgICAgICAgICAgICBhbmQgeDg2XzY0LiBBbGxvd3Mg
bGlua2luZyB0byBmcmFtZXdvcmsgd2hlbiBidWlsZHMgdGFyZ2V0IE1hY09TWAorICAgICAgICAg
ICAgICBpbnN0ZWFkIG9mIGlPUy4KKyAgICAtLXByZXNlcnZlLWJ1aWxkLW91dHB1dDogRG8gbm90
IGRlbGV0ZSB0aGUgYnVpbGQgZGlyZWN0b3J5LgorICAgIC0tc2hvdy1idWlsZC1vdXRwdXQ6IFNo
b3cgb3V0cHV0IGZyb20gZWFjaCBsaWJyYXJ5IGJ1aWxkLgorICAgIC0tdGFyZ2V0cyA8dGFyZ2V0
cz46IE92ZXJyaWRlIGRlZmF1bHQgdGFyZ2V0IGxpc3QuIERlZmF1bHRzOgorJChwcmludF9saXN0
ICIgICAgICAgICIgJHtUQVJHRVRTfSkKKyAgICAtLXRlc3QtbGluazogQ29uZmlybXMgYWxsIHRh
cmdldHMgY2FuIGJlIGxpbmtlZC4gRnVuY3Rpb25hbGx5IGlkZW50aWNhbCB0bworICAgICAgICAg
ICAgICAgICBwYXNzaW5nIC0tZW5hYmxlLWV4YW1wbGVzIHZpYSAtLWV4dHJhLWNvbmZpZ3VyZS1h
cmdzLgorICAgIC0tdmVyYm9zZTogT3V0cHV0IGluZm9ybWF0aW9uIGFib3V0IHRoZSBlbnZpcm9u
bWVudCBhbmQgZWFjaCBzdGFnZSBvZiB0aGUKKyAgICAgICAgICAgICAgIGJ1aWxkLgorRU9GCit9
CisKK2Vsb2coKSB7CisgIGVjaG8gIiR7MCMjKi99IGZhaWxlZCBiZWNhdXNlOiAkQCIgMT4mMgor
fQorCit2bG9nKCkgeworICBpZiBbICIke1ZFUkJPU0V9IiA9ICJ5ZXMiIF07IHRoZW4KKyAgICBl
Y2hvICIkQCIKKyAgZmkKK30KKwordHJhcCBjbGVhbnVwIEVYSVQKKworIyBQYXJzZSB0aGUgY29t
bWFuZCBsaW5lLgord2hpbGUgWyAtbiAiJDEiIF07IGRvCisgIGNhc2UgIiQxIiBpbgorICAgIC0t
ZXh0cmEtY29uZmlndXJlLWFyZ3MpCisgICAgICBFWFRSQV9DT05GSUdVUkVfQVJHUz0iJDIiCisg
ICAgICBzaGlmdAorICAgICAgOzsKKyAgICAtLWhlbHApCisgICAgICBpb3NidWlsZF91c2FnZQor
ICAgICAgZXhpdAorICAgICAgOzsKKyAgICAtLWVuYWJsZS1zaGFyZWQpCisgICAgICBFTkFCTEVf
U0hBUkVEPXllcworICAgICAgOzsKKyAgICAtLXByZXNlcnZlLWJ1aWxkLW91dHB1dCkKKyAgICAg
IFBSRVNFUlZFX0JVSUxEX09VVFBVVD15ZXMKKyAgICAgIDs7CisgICAgLS1zaG93LWJ1aWxkLW91
dHB1dCkKKyAgICAgIGRldm51bGw9CisgICAgICA7OworICAgIC0tdGVzdC1saW5rKQorICAgICAg
RVhUUkFfQ09ORklHVVJFX0FSR1M9IiR7RVhUUkFfQ09ORklHVVJFX0FSR1N9IC0tZW5hYmxlLWV4
YW1wbGVzIgorICAgICAgOzsKKyAgICAtLXRhcmdldHMpCisgICAgICBUQVJHRVRTPSIkMiIKKyAg
ICAgIHNoaWZ0CisgICAgICA7OworICAgIC0tbWFjb3N4KQorICAgICAgVEFSR0VUUz0iJHtBUk1f
VEFSR0VUU30gJHtPU1hfVEFSR0VUU30iCisgICAgICA7OworICAgIC0tdmVyYm9zZSkKKyAgICAg
IFZFUkJPU0U9eWVzCisgICAgICA7OworICAgICopCisgICAgICBpb3NidWlsZF91c2FnZQorICAg
ICAgZXhpdCAxCisgICAgICA7OworICBlc2FjCisgIHNoaWZ0Citkb25lCisKK2lmIFsgIiR7RU5B
QkxFX1NIQVJFRH0iID0gInllcyIgXTsgdGhlbgorICBDT05GSUdVUkVfQVJHUz0iLS1lbmFibGUt
c2hhcmVkICR7Q09ORklHVVJFX0FSR1N9IgorZmkKKworRlVMTFZFUlNJT049JCgiJHtTQ1JJUFRf
RElSfSIvdmVyc2lvbi5zaCAtLWJhcmUgIiR7TElCVlBYX1NPVVJDRV9ESVJ9IikKK1ZFUlNJT049
JChlY2hvICIke0ZVTExWRVJTSU9OfSIgfCBzZWQgLUUgJ3MvXnYoWzAtOV0rXC5bMC05XStcLlsw
LTldKykuKiQvXDEvJykKKworaWYgWyAiJEVOQUJMRV9TSEFSRUQiID0gInllcyIgXTsgdGhlbgor
ICBJT1NfVkVSU0lPTl9PUFRJT05TPSItLWVuYWJsZS1zaGFyZWQiCisgIElPU19WRVJTSU9OX01J
Tj0iOC4wIgorZWxzZQorICBJT1NfVkVSU0lPTl9PUFRJT05TPSIiCisgIElPU19WRVJTSU9OX01J
Tj0iNy4wIgorZmkKKworaWYgWyAiJHtWRVJCT1NFfSIgPSAieWVzIiBdOyB0aGVuCitjYXQgPDwg
RU9GCisgIEJVSUxEX1JPT1Q9JHtCVUlMRF9ST09UfQorICBESVNUX0RJUj0ke0RJU1RfRElSfQor
ICBDT05GSUdVUkVfQVJHUz0ke0NPTkZJR1VSRV9BUkdTfQorICBFWFRSQV9DT05GSUdVUkVfQVJH
Uz0ke0VYVFJBX0NPTkZJR1VSRV9BUkdTfQorICBGUkFNRVdPUktfRElSPSR7RlJBTUVXT1JLX0RJ
Un0KKyAgRlJBTUVXT1JLX0xJQj0ke0ZSQU1FV09SS19MSUJ9CisgIEhFQURFUl9ESVI9JHtIRUFE
RVJfRElSfQorICBMSUJWUFhfU09VUkNFX0RJUj0ke0xJQlZQWF9TT1VSQ0VfRElSfQorICBMSVBP
PSR7TElQT30KKyAgTUFLRUZMQUdTPSR7TUFLRUZMQUdTfQorICBPUklHX1BXRD0ke09SSUdfUFdE
fQorICBQUkVTRVJWRV9CVUlMRF9PVVRQVVQ9JHtQUkVTRVJWRV9CVUlMRF9PVVRQVVR9CisgIFRB
UkdFVFM9IiQocHJpbnRfbGlzdCAiIiAke1RBUkdFVFN9KSIKKyAgRU5BQkxFX1NIQVJFRD0ke0VO
QUJMRV9TSEFSRUR9CisgIE9TWF9UQVJHRVRTPSIke09TWF9UQVJHRVRTfSIKKyAgU0lNX1RBUkdF
VFM9IiR7U0lNX1RBUkdFVFN9IgorICBTQ1JJUFRfRElSPSIke1NDUklQVF9ESVJ9IgorICBGVUxM
VkVSU0lPTj0iJHtGVUxMVkVSU0lPTn0iCisgIFZFUlNJT049IiR7VkVSU0lPTn0iCisgIElPU19W
RVJTSU9OX01JTj0iJHtJT1NfVkVSU0lPTl9NSU59IgorRU9GCitmaQorCitidWlsZF9mcmFtZXdv
cmsgIiR7VEFSR0VUU30iCitlY2hvICJTdWNjZXNzZnVsbHkgYnVpbHQgJyR7RlJBTUVXT1JLX0RJ
Un0nIGZvcjoiCitwcmludF9saXN0ICIiICR7VEFSR0VUU30KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvYnVpbGQvbWFrZS9tc3ZzX2NvbW1vbi5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9tc3Zz
X2NvbW1vbi5zaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yN2RkZjdmZDkxZDdmMzRkODdlNGRlOGUwYjlhMTg2Mjhj
YmIyZDFiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL21zdnNfY29t
bW9uLnNoCkBAIC0wLDAgKzEsMTIzIEBACisjIS9iaW4vYmFzaAorIyMKKyMjICBDb3B5cmlnaHQg
KGMpIDIwMTQgVGhlIFdlYk0gcHJvamVjdCBhdXRob3JzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgor
IyMKKyMjICBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHls
ZSBsaWNlbnNlCisjIyAgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBpbiB0
aGUgcm9vdCBvZiB0aGUgc291cmNlCisjIyAgdHJlZS4gQW4gYWRkaXRpb25hbCBpbnRlbGxlY3R1
YWwgcHJvcGVydHkgcmlnaHRzIGdyYW50IGNhbiBiZSBmb3VuZAorIyMgIGluIHRoZSBmaWxlIFBB
VEVOVFMuICBBbGwgY29udHJpYnV0aW5nIHByb2plY3QgYXV0aG9ycyBtYXkKKyMjICBiZSBmb3Vu
ZCBpbiB0aGUgQVVUSE9SUyBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UgdHJlZS4KKyMj
CisKK2lmIFsgIiQodW5hbWUgLW8gMj4vZGV2L251bGwpIiA9ICJDeWd3aW4iIF0gXAorICAgJiYg
Y3lncGF0aCAtLWhlbHAgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCisgICAgRklYUEFUSD0nY3lncGF0
aCAtbScKK2Vsc2UKKyAgICBGSVhQQVRIPSdlY2hvX3BhdGgnCitmaQorCitkaWUoKSB7CisgICAg
ZWNobyAiJHtzZWxmX2Jhc2VuYW1lfTogJEAiID4mMgorICAgIGV4aXQgMQorfQorCitkaWVfdW5r
bm93bigpeworICAgIGVjaG8gIlVua25vd24gb3B0aW9uIFwiJDFcIi4iID4mMgorICAgIGVjaG8g
IlNlZSAke3NlbGZfYmFzZW5hbWV9IC0taGVscCBmb3IgYXZhaWxhYmxlIG9wdGlvbnMuIiA+JjIK
KyAgICBleGl0IDEKK30KKworZWNob19wYXRoKCkgeworICAgIGZvciBwYXRoOyBkbworICAgICAg
ICBlY2hvICIkcGF0aCIKKyAgICBkb25lCit9CisKKyMgT3V0cHV0IG9uZSwgcG9zc2libHkgY2hh
bmdlZCBiYXNlZCBvbiB0aGUgc3lzdGVtLCBwYXRoIHBlciBsaW5lLgorZml4X3BhdGgoKSB7Cisg
ICAgJEZJWFBBVEggIiRAIgorfQorCisjIENvcnJlY3RzIHRoZSBwYXRocyBpbiBmaWxlX2xpc3Qg
aW4gb25lIHBhc3MgZm9yIGVmZmljaWVuY3kuCisjICQxIGlzIHRoZSBuYW1lIG9mIHRoZSBhcnJh
eSB0byBiZSBtb2RpZmllZC4KK2ZpeF9maWxlX2xpc3QoKSB7CisgICAgaWYgWyAiJHtGSVhQQVRI
fSIgPSAiZWNob19wYXRoIiBdIDsgdGhlbgorICAgICAgIyBXaGVuIHVzZWQgd2l0aCBlY2hvX3Bh
dGgsIGZpeF9maWxlX2xpc3QgaXMgYSBuby1vcC4gQXZvaWQgd2FybmluZyBhYm91dAorICAgICAg
IyB1bnN1cHBvcnRlZCAnZGVjbGFyZSAtbicgd2hlbiBpdCBpcyBub3QgaW1wb3J0YW50LgorICAg
ICAgcmV0dXJuIDAKKyAgICBlbGlmIFsgIiR7QkFTSF9WRVJTSU5GT30iIC1sdCA0IF0gOyB0aGVu
CisgICAgICBlY2hvICJDeWd3aW4gcGF0aCBjb252ZXJzaW9uIGhhcyBmYWlsZWQuIFBsZWFzZSB1
c2UgYSB2ZXJzaW9uIG9mIGJhc2giCisgICAgICBlY2hvICJ3aGljaCBzdXBwb3J0cyBuYW1lcmVm
ICgtbiksIGludHJvZHVjZWQgaW4gYmFzaCA0LjMiCisgICAgICByZXR1cm4gMQorICAgIGZpCisg
ICAgZGVjbGFyZSAtbiBhcnJheV9yZWY9JDEKKyAgICBmaWxlcz0kKGZpeF9wYXRoICIke2FycmF5
X3JlZltAXX0iKQorICAgIGxvY2FsIElGUz0kJ1xuJworICAgIGFycmF5X3JlZj0oJGZpbGVzKQor
fQorCitnZW5lcmF0ZV91dWlkKCkgeworICAgIGxvY2FsIGhleD0iMDEyMzQ1Njc4OUFCQ0RFRiIK
KyAgICBsb2NhbCBpCisgICAgbG9jYWwgdXVpZD0iIgorICAgIGxvY2FsIGoKKyAgICAjOTM5OTUz
ODAtODlCRC00YjA0LTg4RUItNjI1RkJFNTJFQkZCCisgICAgZm9yICgoaT0wOyBpPDMyOyBpKysp
KTsgZG8KKyAgICAgICAgKCggaiA9ICRSQU5ET00gJSAxNiApKQorICAgICAgICB1dWlkPSIke3V1
aWR9JHtoZXg6JGo6MX0iCisgICAgZG9uZQorICAgIGVjaG8gIiR7dXVpZDowOjh9LSR7dXVpZDo4
OjR9LSR7dXVpZDoxMjo0fS0ke3V1aWQ6MTY6NH0tJHt1dWlkOjIwOjEyfSIKK30KKworaW5kZW50
MT0iICAgICIKK2luZGVudD0iIgoraW5kZW50X3B1c2goKSB7CisgICAgaW5kZW50PSIke2luZGVu
dH0ke2luZGVudDF9IgorfQoraW5kZW50X3BvcCgpIHsKKyAgICBpbmRlbnQ9IiR7aW5kZW50JSR7
aW5kZW50MX19IgorfQorCit0YWdfYXR0cmlidXRlcygpIHsKKyAgICBmb3Igb3B0IGluICIkQCI7
IGRvCisgICAgICAgIG9wdHZhbD0iJHtvcHQjKj19IgorICAgICAgICBbIC1uICIke29wdHZhbH0i
IF0gfHwKKyAgICAgICAgICAgIGRpZSAiTWlzc2luZyBhdHRyaWJ1dGUgdmFsdWUgaW4gJyRvcHQn
IHdoaWxlIGdlbmVyYXRpbmcgJHRhZyB0YWciCisgICAgICAgIGVjaG8gIiR7aW5kZW50fSR7b3B0
JSU9Kn09XCIke29wdHZhbH1cIiIKKyAgICBkb25lCit9CisKK29wZW5fdGFnKCkgeworICAgIGxv
Y2FsIHRhZz0kMQorICAgIHNoaWZ0CisgICAgaWYgWyAkIyAtbmUgMCBdOyB0aGVuCisgICAgICAg
IGVjaG8gIiR7aW5kZW50fTwke3RhZ30iCisgICAgICAgIGluZGVudF9wdXNoCisgICAgICAgIHRh
Z19hdHRyaWJ1dGVzICIkQCIKKyAgICAgICAgZWNobyAiJHtpbmRlbnR9PiIKKyAgICBlbHNlCisg
ICAgICAgIGVjaG8gIiR7aW5kZW50fTwke3RhZ30+IgorICAgICAgICBpbmRlbnRfcHVzaAorICAg
IGZpCit9CisKK2Nsb3NlX3RhZygpIHsKKyAgICBsb2NhbCB0YWc9JDEKKyAgICBpbmRlbnRfcG9w
CisgICAgZWNobyAiJHtpbmRlbnR9PC8ke3RhZ30+IgorfQorCit0YWcoKSB7CisgICAgbG9jYWwg
dGFnPSQxCisgICAgc2hpZnQKKyAgICBpZiBbICQjIC1uZSAwIF07IHRoZW4KKyAgICAgICAgZWNo
byAiJHtpbmRlbnR9PCR7dGFnfSIKKyAgICAgICAgaW5kZW50X3B1c2gKKyAgICAgICAgdGFnX2F0
dHJpYnV0ZXMgIiRAIgorICAgICAgICBpbmRlbnRfcG9wCisgICAgICAgIGVjaG8gIiR7aW5kZW50
fS8+IgorICAgIGVsc2UKKyAgICAgICAgZWNobyAiJHtpbmRlbnR9PCR7dGFnfS8+IgorICAgIGZp
Cit9CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQvbWFrZS9ydGNkLnBsIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC9idWlsZC9tYWtlL3J0Y2QucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWNiOWY2ZTQ2NjczNTM0M2FmNjZk
MjI3MWIxZGJkYjEwNzQwNDQyMwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvYnVpbGQv
bWFrZS9ydGNkLnBsCkBAIC0wLDAgKzEsNDkzIEBACisjIS91c3IvYmluL2VudiBwZXJsCisjIwor
IyMgIENvcHlyaWdodCAoYykgMjAxNyBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMuIEFsbCBSaWdo
dHMgUmVzZXJ2ZWQuCisjIworIyMgIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVk
IGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UKKyMjICB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElD
RU5TRSBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UKKyMjICB0cmVlLiBBbiBhZGRpdGlv
bmFsIGludGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQgY2FuIGJlIGZvdW5kCisjIyAg
aW4gdGhlIGZpbGUgUEFURU5UUy4gIEFsbCBjb250cmlidXRpbmcgcHJvamVjdCBhdXRob3JzIG1h
eQorIyMgIGJlIGZvdW5kIGluIHRoZSBBVVRIT1JTIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNv
dXJjZSB0cmVlLgorIyMKKworbm8gc3RyaWN0ICdyZWZzJzsKK3VzZSB3YXJuaW5nczsKK3VzZSBH
ZXRvcHQ6Okxvbmc7CitHZXRvcHQ6Okxvbmc6OkNvbmZpZ3VyZSgiYXV0b19oZWxwIikgaWYgJEdl
dG9wdDo6TG9uZzo6VkVSU0lPTiA+IDIuMzI7CisKK215ICVBTExfRlVOQ1MgPSAoKTsKK215IEBB
TExfQVJDSFM7CitteSBAQUxMX0ZPUldBUkRfREVDTFM7CitteSBAUkVRVUlSRVM7CisKK215ICVv
cHRzID0gKCk7CitteSAlZGlzYWJsZWQgPSAoKTsKK215ICVyZXF1aXJlZCA9ICgpOworCitteSBA
YXJndjsKK2ZvcmVhY2ggKEBBUkdWKSB7CisgICRkaXNhYmxlZHskMX0gPSAxLCBuZXh0IGlmIC8t
LWRpc2FibGUtKC4qKS87CisgICRyZXF1aXJlZHskMX0gPSAxLCBuZXh0IGlmIC8tLXJlcXVpcmUt
KC4qKS87CisgIHB1c2ggQGFyZ3YsICRfOworfQorCisjIE5COiB1c2UgR2V0T3B0aW9ucygpIGlu
c3RlYWQgb2YgR2V0T3B0aW9uc0Zyb21BcnJheSgpIGZvciBjb21wYXRpYmlsaXR5LgorQEFSR1Yg
PSBAYXJndjsKK0dldE9wdGlvbnMoCisgIFwlb3B0cywKKyAgJ2FyY2g9cycsCisgICdzeW09cycs
CisgICdjb25maWc9cycsCispOworCitmb3JlYWNoIG15ICRvcHQgKHF3L2FyY2ggY29uZmlnLykg
eworICBpZiAoIWRlZmluZWQoJG9wdHN7JG9wdH0pKSB7CisgICAgd2FybiAiLS0kb3B0IGlzIHJl
cXVpcmVkIVxuIjsKKyAgICBHZXRvcHQ6Okxvbmc6OkhlbHBNZXNzYWdlKCctZXhpdCcgPT4gMSk7
CisgIH0KK30KKworZm9yZWFjaCBteSAkZGVmc19maWxlIChAQVJHVikgeworICBpZiAoIS1mICRk
ZWZzX2ZpbGUpIHsKKyAgICB3YXJuICIkZGVmc19maWxlOiAkIVxuIjsKKyAgICBHZXRvcHQ6Okxv
bmc6OkhlbHBNZXNzYWdlKCctZXhpdCcgPT4gMSk7CisgIH0KK30KKworb3BlbiBDT05GSUdfRklM
RSwgJG9wdHN7Y29uZmlnfSBvcgorICBkaWUgIkVycm9yIG9wZW5pbmcgY29uZmlnIGZpbGUgJyRv
cHRze2NvbmZpZ30nOiAkIVxuIjsKKworbXkgJWNvbmZpZyA9ICgpOword2hpbGUgKDxDT05GSUdf
RklMRT4pIHsKKyAgbmV4dCBpZiAhL14oPzpDT05GSUdffEhBVkVfKS87CisgIGNob21wOworICBt
eSBAcGFpciA9IHNwbGl0IC89LzsKKyAgJGNvbmZpZ3skcGFpclswXX0gPSAkcGFpclsxXTsKK30K
K2Nsb3NlIENPTkZJR19GSUxFOworCisjCisjIFJvdXRpbmVzIGZvciB0aGUgUlRDRCBEU0wgdG8g
Y2FsbAorIworc3ViIHZweF9jb25maWcoJCkgeworICByZXR1cm4gKGRlZmluZWQgJGNvbmZpZ3sk
X1swXX0pID8gJGNvbmZpZ3skX1swXX0gOiAiIjsKK30KKworc3ViIHNwZWNpYWxpemUgeworICBt
eSAkZm49JF9bMF07CisgIHNoaWZ0OworICBmb3JlYWNoIG15ICRvcHQgKEBfKSB7CisgICAgZXZh
bCAiXCQke2ZufV8ke29wdH09JHtmbn1fJHtvcHR9IjsKKyAgfQorfQorCitzdWIgYWRkX3Byb3Rv
IHsKKyAgbXkgJGZuID0gc3BsaWNlKEBfLCAtMiwgMSk7CisgICRBTExfRlVOQ1N7JGZufSA9IFxA
XzsKKyAgc3BlY2lhbGl6ZSAkZm4sICJjIjsKK30KKworc3ViIHJlcXVpcmUgeworICBmb3JlYWNo
IG15ICRmbiAoa2V5cyAlQUxMX0ZVTkNTKSB7CisgICAgZm9yZWFjaCBteSAkb3B0IChAXykgewor
ICAgICAgbXkgJG9mbiA9IGV2YWwgIlwkJHtmbn1fJHtvcHR9IjsKKyAgICAgIG5leHQgaWYgISRv
Zm47CisKKyAgICAgICMgaWYgd2UgYWxyZWFkeSBoYXZlIGEgZGVmYXVsdCwgdGhlbiB3ZSBjYW4g
ZGlzYWJsZSBpdCwgYXMgd2Uga25vdworICAgICAgIyB3ZSBjYW4gZG8gYmV0dGVyLgorICAgICAg
bXkgJGJlc3QgPSBldmFsICJcJCR7Zm59X2RlZmF1bHQiOworICAgICAgaWYgKCRiZXN0KSB7Cisg
ICAgICAgIG15ICRiZXN0X29mbiA9IGV2YWwgIlwkJHtiZXN0fSI7CisgICAgICAgIGlmICgkYmVz
dF9vZm4gJiYgIiRiZXN0X29mbiIgbmUgIiRvZm4iKSB7CisgICAgICAgICAgZXZhbCAiXCQke2Jl
c3R9X2xpbmsgPSAnZmFsc2UnIjsKKyAgICAgICAgfQorICAgICAgfQorICAgICAgZXZhbCAiXCQk
e2ZufV9kZWZhdWx0PSR7Zm59XyR7b3B0fSI7CisgICAgICBldmFsICJcJCR7Zm59XyR7b3B0fV9s
aW5rPSd0cnVlJyI7CisgICAgfQorICB9Cit9CisKK3N1YiBmb3J3YXJkX2RlY2xzIHsKKyAgcHVz
aCBAQUxMX0ZPUldBUkRfREVDTFMsIEBfOworfQorCisjCisjIEluY2x1ZGUgdGhlIHVzZXIncyBk
aXJlY3RpdmVzCisjCitmb3JlYWNoIG15ICRmIChAQVJHVikgeworICBvcGVuIEZJTEUsICI8Iiwg
JGYgb3IgZGllICJjYW5ub3Qgb3BlbiAkZjogJCFcbiI7CisgIG15ICRjb250ZW50cyA9IGpvaW4o
JycsIDxGSUxFPik7CisgIGNsb3NlIEZJTEU7CisgIGV2YWwgJGNvbnRlbnRzIG9yIHdhcm4gImV2
YWwgZmFpbGVkOiAkQFxuIjsKK30KKworIworIyBQcm9jZXNzIHRoZSBkaXJlY3RpdmVzIGFjY29y
ZGluZyB0byB0aGUgY29tbWFuZCBsaW5lCisjCitzdWIgcHJvY2Vzc19mb3J3YXJkX2RlY2xzKCkg
eworICBmb3JlYWNoIChAQUxMX0ZPUldBUkRfREVDTFMpIHsKKyAgICAkXy0+KCk7CisgIH0KK30K
Kworc3ViIGRldGVybWluZV9pbmRpcmVjdGlvbiB7CisgIHZweF9jb25maWcoIkNPTkZJR19SVU5U
SU1FX0NQVV9ERVRFQ1QiKSBlcSAieWVzIiBvciAmcmVxdWlyZShAQUxMX0FSQ0hTKTsKKyAgZm9y
ZWFjaCBteSAkZm4gKGtleXMgJUFMTF9GVU5DUykgeworICAgIG15ICRuID0gIiI7CisgICAgbXkg
QHZhbCA9IEB7JEFMTF9GVU5DU3skZm59fTsKKyAgICBteSAkYXJncyA9IHBvcCBAdmFsOworICAg
IG15ICRydHlwID0gIkB2YWwiOworICAgIG15ICRkZm4gPSBldmFsICJcJCR7Zm59X2RlZmF1bHQi
OworICAgICRkZm4gPSBldmFsICJcJCR7ZGZufSI7CisgICAgZm9yZWFjaCBteSAkb3B0IChAXykg
eworICAgICAgbXkgJG9mbiA9IGV2YWwgIlwkJHtmbn1fJHtvcHR9IjsKKyAgICAgIG5leHQgaWYg
ISRvZm47CisgICAgICBteSAkbGluayA9IGV2YWwgIlwkJHtmbn1fJHtvcHR9X2xpbmsiOworICAg
ICAgbmV4dCBpZiAkbGluayAmJiAkbGluayBlcSAiZmFsc2UiOworICAgICAgJG4gLj0gIngiOwor
ICAgIH0KKyAgICBpZiAoJG4gZXEgIngiKSB7CisgICAgICBldmFsICJcJCR7Zm59X2luZGlyZWN0
ID0gJ2ZhbHNlJyI7CisgICAgfSBlbHNlIHsKKyAgICAgIGV2YWwgIlwkJHtmbn1faW5kaXJlY3Qg
PSAndHJ1ZSciOworICAgIH0KKyAgfQorfQorCitzdWIgZGVjbGFyZV9mdW5jdGlvbl9wb2ludGVy
cyB7CisgIGZvcmVhY2ggbXkgJGZuIChzb3J0IGtleXMgJUFMTF9GVU5DUykgeworICAgIG15IEB2
YWwgPSBAeyRBTExfRlVOQ1N7JGZufX07CisgICAgbXkgJGFyZ3MgPSBwb3AgQHZhbDsKKyAgICBt
eSAkcnR5cCA9ICJAdmFsIjsKKyAgICBteSAkZGZuID0gZXZhbCAiXCQke2ZufV9kZWZhdWx0IjsK
KyAgICAkZGZuID0gZXZhbCAiXCQke2Rmbn0iOworICAgIGZvcmVhY2ggbXkgJG9wdCAoQF8pIHsK
KyAgICAgIG15ICRvZm4gPSBldmFsICJcJCR7Zm59XyR7b3B0fSI7CisgICAgICBuZXh0IGlmICEk
b2ZuOworICAgICAgcHJpbnQgIiRydHlwICR7b2ZufSgkYXJncyk7XG4iOworICAgIH0KKyAgICBp
ZiAoZXZhbCAiXCQke2ZufV9pbmRpcmVjdCIgZXEgImZhbHNlIikgeworICAgICAgcHJpbnQgIiNk
ZWZpbmUgJHtmbn0gJHtkZm59XG4iOworICAgIH0gZWxzZSB7CisgICAgICBwcmludCAiUlRDRF9F
WFRFUk4gJHJ0eXAgKCoke2ZufSkoJGFyZ3MpO1xuIjsKKyAgICB9CisgICAgcHJpbnQgIlxuIjsK
KyAgfQorfQorCitzdWIgc2V0X2Z1bmN0aW9uX3BvaW50ZXJzIHsKKyAgZm9yZWFjaCBteSAkZm4g
KHNvcnQga2V5cyAlQUxMX0ZVTkNTKSB7CisgICAgbXkgQHZhbCA9IEB7JEFMTF9GVU5DU3skZm59
fTsKKyAgICBteSAkYXJncyA9IHBvcCBAdmFsOworICAgIG15ICRydHlwID0gIkB2YWwiOworICAg
IG15ICRkZm4gPSBldmFsICJcJCR7Zm59X2RlZmF1bHQiOworICAgICRkZm4gPSBldmFsICJcJCR7
ZGZufSI7CisgICAgaWYgKGV2YWwgIlwkJHtmbn1faW5kaXJlY3QiIGVxICJ0cnVlIikgeworICAg
ICAgcHJpbnQgIiAgICAkZm4gPSAkZGZuO1xuIjsKKyAgICAgIGZvcmVhY2ggbXkgJG9wdCAoQF8p
IHsKKyAgICAgICAgbXkgJG9mbiA9IGV2YWwgIlwkJHtmbn1fJHtvcHR9IjsKKyAgICAgICAgbmV4
dCBpZiAhJG9mbjsKKyAgICAgICAgbmV4dCBpZiAiJG9mbiIgZXEgIiRkZm4iOworICAgICAgICBt
eSAkbGluayA9IGV2YWwgIlwkJHtmbn1fJHtvcHR9X2xpbmsiOworICAgICAgICBuZXh0IGlmICRs
aW5rICYmICRsaW5rIGVxICJmYWxzZSI7CisgICAgICAgIG15ICRjb25kID0gZXZhbCAiXCRoYXZl
XyR7b3B0fSI7CisgICAgICAgIHByaW50ICIgICAgaWYgKCR7Y29uZH0pICRmbiA9ICRvZm47XG4i
CisgICAgICB9CisgICAgfQorICB9Cit9CisKK3N1YiBmaWx0ZXIgeworICBteSBAZmlsdGVyZWQ7
CisgIGZvcmVhY2ggKEBfKSB7IHB1c2ggQGZpbHRlcmVkLCAkXyB1bmxlc3MgJGRpc2FibGVkeyRf
fTsgfQorICByZXR1cm4gQGZpbHRlcmVkOworfQorCisjCisjIEhlbHBlciBmdW5jdGlvbnMgZm9y
IGdlbmVyYXRpbmcgdGhlIGFyY2ggc3BlY2lmaWMgUlRDRCBmaWxlcworIworc3ViIGNvbW1vbl90
b3AoKSB7CisgIG15ICRpbmNsdWRlX2d1YXJkID0gdWMoJG9wdHN7c3ltfSkuIl9IXyI7CisgIHBy
aW50IDw8RU9GOworLy8gVGhpcyBmaWxlIGlzIGdlbmVyYXRlZC4gRG8gbm90IGVkaXQuCisjaWZu
ZGVmICR7aW5jbHVkZV9ndWFyZH0KKyNkZWZpbmUgJHtpbmNsdWRlX2d1YXJkfQorCisjaWZkZWYg
UlRDRF9DCisjZGVmaW5lIFJUQ0RfRVhURVJOCisjZWxzZQorI2RlZmluZSBSVENEX0VYVEVSTiBl
eHRlcm4KKyNlbmRpZgorCitFT0YKKworcHJvY2Vzc19mb3J3YXJkX2RlY2xzKCk7CitwcmludCA8
PEVPRjsKKworI2lmZGVmIF9fY3BsdXNwbHVzCitleHRlcm4gIkMiIHsKKyNlbmRpZgorCitFT0YK
K2RlY2xhcmVfZnVuY3Rpb25fcG9pbnRlcnMoImMiLCBAQUxMX0FSQ0hTKTsKKworcHJpbnQgPDxF
T0Y7Cit2b2lkICRvcHRze3N5bX0odm9pZCk7CisKK0VPRgorfQorCitzdWIgY29tbW9uX2JvdHRv
bSgpIHsKKyAgcHJpbnQgPDxFT0Y7CisKKyNpZmRlZiBfX2NwbHVzcGx1cworfSAgLy8gZXh0ZXJu
ICJDIgorI2VuZGlmCisKKyNlbmRpZgorRU9GCit9CisKK3N1YiB4ODYoKSB7CisgIGRldGVybWlu
ZV9pbmRpcmVjdGlvbigiYyIsIEBBTExfQVJDSFMpOworCisgICMgQXNzaWduIHRoZSBoZWxwZXIg
dmFyaWFibGUgZm9yIGVhY2ggZW5hYmxlZCBleHRlbnNpb24KKyAgZm9yZWFjaCBteSAkb3B0IChA
QUxMX0FSQ0hTKSB7CisgICAgbXkgJG9wdF91YyA9IHVjICRvcHQ7CisgICAgZXZhbCAiXCRoYXZl
XyR7b3B0fT1cImZsYWdzICYgSEFTXyR7b3B0X3VjfVwiIjsKKyAgfQorCisgIGNvbW1vbl90b3A7
CisgIHByaW50IDw8RU9GOworI2lmZGVmIFJUQ0RfQworI2luY2x1ZGUgInZweF9wb3J0cy94ODYu
aCIKK3N0YXRpYyB2b2lkIHNldHVwX3J0Y2RfaW50ZXJuYWwodm9pZCkKK3sKKyAgICBpbnQgZmxh
Z3MgPSB4ODZfc2ltZF9jYXBzKCk7CisKKyAgICAodm9pZClmbGFnczsKKworRU9GCisKKyAgc2V0
X2Z1bmN0aW9uX3BvaW50ZXJzKCJjIiwgQEFMTF9BUkNIUyk7CisKKyAgcHJpbnQgPDxFT0Y7Cit9
CisjZW5kaWYKK0VPRgorICBjb21tb25fYm90dG9tOworfQorCitzdWIgYXJtKCkgeworICBkZXRl
cm1pbmVfaW5kaXJlY3Rpb24oImMiLCBAQUxMX0FSQ0hTKTsKKworICAjIEFzc2lnbiB0aGUgaGVs
cGVyIHZhcmlhYmxlIGZvciBlYWNoIGVuYWJsZWQgZXh0ZW5zaW9uCisgIGZvcmVhY2ggbXkgJG9w
dCAoQEFMTF9BUkNIUykgeworICAgIG15ICRvcHRfdWMgPSB1YyAkb3B0OworICAgICMgRW5hYmxl
IG5lb24gYXNzZW1ibHkgYmFzZWQgb24gSEFWRV9ORU9OIGxvZ2ljIGluc3RlYWQgb2YgYWRkaW5n
IG5ldworICAgICMgSEFWRV9ORU9OX0FTTSBsb2dpYworICAgIGlmICgkb3B0IGVxICduZW9uX2Fz
bScpIHsgJG9wdF91YyA9ICdORU9OJyB9CisgICAgZXZhbCAiXCRoYXZlXyR7b3B0fT1cImZsYWdz
ICYgSEFTXyR7b3B0X3VjfVwiIjsKKyAgfQorCisgIGNvbW1vbl90b3A7CisgIHByaW50IDw8RU9G
OworI2luY2x1ZGUgInZweF9jb25maWcuaCIKKworI2lmZGVmIFJUQ0RfQworI2luY2x1ZGUgInZw
eF9wb3J0cy9hcm0uaCIKK3N0YXRpYyB2b2lkIHNldHVwX3J0Y2RfaW50ZXJuYWwodm9pZCkKK3sK
KyAgICBpbnQgZmxhZ3MgPSBhcm1fY3B1X2NhcHMoKTsKKworICAgICh2b2lkKWZsYWdzOworCitF
T0YKKworICBzZXRfZnVuY3Rpb25fcG9pbnRlcnMoImMiLCBAQUxMX0FSQ0hTKTsKKworICBwcmlu
dCA8PEVPRjsKK30KKyNlbmRpZgorRU9GCisgIGNvbW1vbl9ib3R0b207Cit9CisKK3N1YiBtaXBz
KCkgeworICBkZXRlcm1pbmVfaW5kaXJlY3Rpb24oImMiLCBAQUxMX0FSQ0hTKTsKKworICAjIEFz
c2lnbiB0aGUgaGVscGVyIHZhcmlhYmxlIGZvciBlYWNoIGVuYWJsZWQgZXh0ZW5zaW9uCisgIGZv
cmVhY2ggbXkgJG9wdCAoQEFMTF9BUkNIUykgeworICAgIG15ICRvcHRfdWMgPSB1YyAkb3B0Owor
ICAgIGV2YWwgIlwkaGF2ZV8ke29wdH09XCJmbGFncyAmIEhBU18ke29wdF91Y31cIiI7CisgIH0K
KworICBjb21tb25fdG9wOworCisgIHByaW50IDw8RU9GOworI2luY2x1ZGUgInZweF9jb25maWcu
aCIKKworI2lmZGVmIFJUQ0RfQworI2luY2x1ZGUgInZweF9wb3J0cy9taXBzLmgiCitzdGF0aWMg
dm9pZCBzZXR1cF9ydGNkX2ludGVybmFsKHZvaWQpCit7CisgICAgaW50IGZsYWdzID0gbWlwc19j
cHVfY2FwcygpOworCisgICAgKHZvaWQpZmxhZ3M7CisKK0VPRgorCisgIHNldF9mdW5jdGlvbl9w
b2ludGVycygiYyIsIEBBTExfQVJDSFMpOworCisgIHByaW50IDw8RU9GOworI2lmIEhBVkVfRFNQ
UjIKK3ZvaWQgdnB4X2RzcHV0aWxfc3RhdGljX2luaXQoKTsKKyNpZiBDT05GSUdfVlA4Cit2b2lk
IGRzcHV0aWxfc3RhdGljX2luaXQoKTsKKyNlbmRpZgorCit2cHhfZHNwdXRpbF9zdGF0aWNfaW5p
dCgpOworI2lmIENPTkZJR19WUDgKK2RzcHV0aWxfc3RhdGljX2luaXQoKTsKKyNlbmRpZgorI2Vu
ZGlmCit9CisjZW5kaWYKK0VPRgorICBjb21tb25fYm90dG9tOworfQorCitzdWIgcHBjKCkgewor
ICBkZXRlcm1pbmVfaW5kaXJlY3Rpb24oImMiLCBAQUxMX0FSQ0hTKTsKKworICAjIEFzc2lnbiB0
aGUgaGVscGVyIHZhcmlhYmxlIGZvciBlYWNoIGVuYWJsZWQgZXh0ZW5zaW9uCisgIGZvcmVhY2gg
bXkgJG9wdCAoQEFMTF9BUkNIUykgeworICAgIG15ICRvcHRfdWMgPSB1YyAkb3B0OworICAgIGV2
YWwgIlwkaGF2ZV8ke29wdH09XCJmbGFncyAmIEhBU18ke29wdF91Y31cIiI7CisgIH0KKworICBj
b21tb25fdG9wOworICBwcmludCA8PEVPRjsKKyNpbmNsdWRlICJ2cHhfY29uZmlnLmgiCisKKyNp
ZmRlZiBSVENEX0MKKyNpbmNsdWRlICJ2cHhfcG9ydHMvcHBjLmgiCitzdGF0aWMgdm9pZCBzZXR1
cF9ydGNkX2ludGVybmFsKHZvaWQpCit7CisgICAgaW50IGZsYWdzID0gcHBjX3NpbWRfY2Fwcygp
OworICAgICh2b2lkKWZsYWdzOworRU9GCisKKyAgc2V0X2Z1bmN0aW9uX3BvaW50ZXJzKCJjIiwg
QEFMTF9BUkNIUyk7CisKKyAgcHJpbnQgPDxFT0Y7Cit9CisjZW5kaWYKK0VPRgorICBjb21tb25f
Ym90dG9tOworfQorCitzdWIgdW5vcHRpbWl6ZWQoKSB7CisgIGRldGVybWluZV9pbmRpcmVjdGlv
biAiYyI7CisgIGNvbW1vbl90b3A7CisgIHByaW50IDw8RU9GOworI2luY2x1ZGUgInZweF9jb25m
aWcuaCIKKworI2lmZGVmIFJUQ0RfQworc3RhdGljIHZvaWQgc2V0dXBfcnRjZF9pbnRlcm5hbCh2
b2lkKQoreworRU9GCisKKyAgc2V0X2Z1bmN0aW9uX3BvaW50ZXJzICJjIjsKKworICBwcmludCA8
PEVPRjsKK30KKyNlbmRpZgorRU9GCisgIGNvbW1vbl9ib3R0b207Cit9CisKKyMKKyMgTWFpbiBE
cml2ZXIKKyMKKworJnJlcXVpcmUoImMiKTsKKyZyZXF1aXJlKGtleXMgJXJlcXVpcmVkKTsKK2lm
ICgkb3B0c3thcmNofSBlcSAneDg2JykgeworICBAQUxMX0FSQ0hTID0gZmlsdGVyKHF3L21teCBz
c2Ugc3NlMiBzc2UzIHNzc2UzIHNzZTRfMSBhdnggYXZ4MiBhdng1MTIvKTsKKyAgeDg2OworfSBl
bHNpZiAoJG9wdHN7YXJjaH0gZXEgJ3g4Nl82NCcpIHsKKyAgQEFMTF9BUkNIUyA9IGZpbHRlcihx
dy9tbXggc3NlIHNzZTIgc3NlMyBzc3NlMyBzc2U0XzEgYXZ4IGF2eDIgYXZ4NTEyLyk7CisgIEBS
RVFVSVJFUyA9IGZpbHRlcihxdy9tbXggc3NlIHNzZTIvKTsKKyAgJnJlcXVpcmUoQFJFUVVJUkVT
KTsKKyAgeDg2OworfSBlbHNpZiAoJG9wdHN7YXJjaH0gZXEgJ21pcHMzMicgfHwgJG9wdHN7YXJj
aH0gZXEgJ21pcHM2NCcpIHsKKyAgbXkgJGhhdmVfZHNwcjIgPSAwOworICBteSAkaGF2ZV9tc2Eg
PSAwOworICBteSAkaGF2ZV9tbWkgPSAwOworICBAQUxMX0FSQ0hTID0gZmlsdGVyKCIkb3B0c3th
cmNofSIpOworICBvcGVuIENPTkZJR19GSUxFLCAkb3B0c3tjb25maWd9IG9yCisgICAgZGllICJF
cnJvciBvcGVuaW5nIGNvbmZpZyBmaWxlICckb3B0c3tjb25maWd9JzogJCFcbiI7CisgIHdoaWxl
ICg8Q09ORklHX0ZJTEU+KSB7CisgICAgaWYgKC9IQVZFX0RTUFIyPXllcy8pIHsKKyAgICAgICRo
YXZlX2RzcHIyID0gMTsKKyAgICB9CisgICAgaWYgKC9IQVZFX01TQT15ZXMvKSB7CisgICAgICAk
aGF2ZV9tc2EgPSAxOworICAgIH0KKyAgICBpZiAoL0hBVkVfTU1JPXllcy8pIHsKKyAgICAgICRo
YXZlX21taSA9IDE7CisgICAgfQorICB9CisgIGNsb3NlIENPTkZJR19GSUxFOworICBpZiAoJGhh
dmVfZHNwcjIgPT0gMSkgeworICAgIEBBTExfQVJDSFMgPSBmaWx0ZXIoIiRvcHRze2FyY2h9Iiwg
cXcvZHNwcjIvKTsKKyAgfSBlbHNpZiAoJGhhdmVfbXNhID09IDEgJiYgJGhhdmVfbW1pID09IDEp
IHsKKyAgICBAQUxMX0FSQ0hTID0gZmlsdGVyKCIkb3B0c3thcmNofSIsIHF3L21taSBtc2EvKTsK
KyAgfSBlbHNpZiAoJGhhdmVfbXNhID09IDEpIHsKKyAgICBAQUxMX0FSQ0hTID0gZmlsdGVyKCIk
b3B0c3thcmNofSIsIHF3L21zYS8pOworICB9IGVsc2lmICgkaGF2ZV9tbWkgPT0gMSkgeworICAg
IEBBTExfQVJDSFMgPSBmaWx0ZXIoIiRvcHRze2FyY2h9IiwgcXcvbW1pLyk7CisgIH0gZWxzZSB7
CisgICAgdW5vcHRpbWl6ZWQ7CisgIH0KKyAgbWlwczsKK30gZWxzaWYgKCRvcHRze2FyY2h9ID1+
IC9hcm12N1x3Py8pIHsKKyAgQEFMTF9BUkNIUyA9IGZpbHRlcihxdy9uZW9uX2FzbSBuZW9uLyk7
CisgIGFybTsKK30gZWxzaWYgKCRvcHRze2FyY2h9IGVxICdhcm12OCcgfHwgJG9wdHN7YXJjaH0g
ZXEgJ2FybTY0JyApIHsKKyAgQEFMTF9BUkNIUyA9IGZpbHRlcihxdy9uZW9uLyk7CisgICZyZXF1
aXJlKCJuZW9uIik7CisgIGFybTsKK30gZWxzaWYgKCRvcHRze2FyY2h9ID1+IC9ecHBjLyApIHsK
KyAgQEFMTF9BUkNIUyA9IGZpbHRlcihxdy92c3gvKTsKKyAgcHBjOworfSBlbHNlIHsKKyAgdW5v
cHRpbWl6ZWQ7Cit9CisKK19fRU5EX18KKworPWhlYWQxIE5BTUUKKworcnRjZCAtCisKKz1oZWFk
MSBTWU5PUFNJUworCitVc2FnZTogcnRjZC5wbCBbb3B0aW9uc10gRklMRQorCitTZWUgJ3Blcmxk
b2MgcnRjZC5wbCcgZm9yIG1vcmUgZGV0YWlscy4KKworPWhlYWQxIERFU0NSSVBUSU9OCisKK1Jl
YWRzIHRoZSBSdW4gVGltZSBDUFUgRGV0ZWN0aW9ucyBkZWZpbml0aW9ucyBmcm9tIEZJTEUgYW5k
IGdlbmVyYXRlcyBhCitDIGhlYWRlciBmaWxlIG9uIHN0ZG91dC4KKworPWhlYWQxIE9QVElPTlMK
KworT3B0aW9uczoKKyAgLS1hcmNoPUFSQ0ggICAgICAgQXJjaGl0ZWN0dXJlIHRvIGdlbmVyYXRl
IGRlZnMgZm9yIChyZXF1aXJlZCkKKyAgLS1kaXNhYmxlLUVYVCAgICAgRGlzYWJsZSBzdXBwb3J0
IGZvciBFWFQgZXh0ZW5zaW9ucworICAtLXJlcXVpcmUtRVhUICAgICBSZXF1aXJlIHN1cHBvcnQg
Zm9yIEVYVCBleHRlbnNpb25zCisgIC0tc3ltPVNZTUJPTCAgICAgIFVuaXF1ZSBzeW1ib2wgdG8g
dXNlIGZvciBSVENEIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uCisgIC0tY29uZmlnPUZJTEUgICAg
IEZpbGUgd2l0aCBDT05GSUdfRk9PPXllcyBsaW5lcyB0byBwYXJzZQpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC9idWlsZC9tYWtlL3RodW1iLnBtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL3RodW1i
LnBtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjljNDllMmQ4YjcyNDUyYWQyNGY3Y2VlN2VmMDlhMzY5ZGQzNzk2MGIK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2J1aWxkL21ha2UvdGh1bWIucG0KQEAgLTAs
MCArMSw2MyBAQAorIyEvdXNyL2Jpbi9lbnYgcGVybAorIyMKKyMjICBDb3B5cmlnaHQgKGMpIDIw
MTMgVGhlIFdlYk0gcHJvamVjdCBhdXRob3JzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorIyMKKyMj
ICBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNl
bnNlCisjIyAgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9v
dCBvZiB0aGUgc291cmNlCisjIyAgdHJlZS4gQW4gYWRkaXRpb25hbCBpbnRlbGxlY3R1YWwgcHJv
cGVydHkgcmlnaHRzIGdyYW50IGNhbiBiZSBmb3VuZAorIyMgIGluIHRoZSBmaWxlIFBBVEVOVFMu
ICBBbGwgY29udHJpYnV0aW5nIHByb2plY3QgYXV0aG9ycyBtYXkKKyMjICBiZSBmb3VuZCBpbiB0
aGUgQVVUSE9SUyBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UgdHJlZS4KKyMjCisKK3Bh
Y2thZ2UgdGh1bWI7CisKK3N1YiBGaXhUaHVtYkluc3RydWN0aW9ucygkJCkKK3sKKyAgICBteSAk
c2hvcnRfYnJhbmNoZXMgPSAkX1sxXTsKKyAgICBteSAkYnJhbmNoX3NoaWZ0X29mZnNldCA9ICRz
aG9ydF9icmFuY2hlcyA/IDEgOiAwOworCisgICAgIyBXcml0ZSBhZGRpdGlvbnMgd2l0aCBzaGlm
dHMsIHN1Y2ggYXMgImFkZCByMTAsIHIxMSwgbHNsICM4IiwKKyAgICAjIGluIHRocmVlIG9wZXJh
bmQgZm9ybSwgImFkZCByMTAsIHIxMCwgcjExLCBsc2wgIzgiLgorICAgIHMvKGFkZFxzKykoclxk
KyksXHMqKHJcZCspLFxzKihsc2wgI1xkKykvJDEkMiwgJDIsICQzLCAkNC9nOworCisgICAgIyBD
b252ZXJ0IGFkZGl0aW9ucyB3aXRoIGEgbm9uLWNvbnN0YW50IHNoaWZ0IGludG8gYSBzZXF1ZW5j
ZQorICAgICMgd2l0aCBsZWZ0IHNoaWZ0LCBhZGRpdGlvbiBhbmQgYSByaWdodCBzaGlmdCAodG8g
cmVzdG9yZSB0aGUKKyAgICAjIHJlZ2lzdGVyIHRvIHRoZSBvcmlnaW5hbCB2YWx1ZSkuIEN1cnJl
bnRseSB0aGUgcmlnaHQgc2hpZnQKKyAgICAjIGlzbid0IG5lY2Vzc2FyeSBpbiB0aGUgY29kZSBi
YXNlIHNpbmNlIHRoZSB2YWx1ZXMgaW4gdGhlc2UKKyAgICAjIHJlZ2lzdGVycyBhcmVuJ3QgdXNl
ZCwgYnV0IGRvaW5nIHRoZSBzaGlmdCBmb3IgY29uc2lzdGVuY3kuCisgICAgIyBUaGlzIGNvbnZl
cnRzIGluc3RydWN0aW9ucyBzdWNoIGFzICJhZGQgcjEyLCByMTIsIHI1LCBsc2wgcjQiCisgICAg
IyBpbnRvIHRoZSBzZXF1ZW5jZSAibHNsIHI1LCByNCIsICJhZGQgcjEyLCByMTIsIHI1IiwgImxz
ciByNSwgcjQiLgorICAgIHMvXihccyopKGFkZCkoXHMrKShyXGQrKSxccyooclxkKyksXHMqKHJc
ZCspLFxzKmxzbCAoclxkKykvJDFsc2wkMyQ2LCAkN1xuJDEkMiQzJDQsICQ1LCAkNlxuJDFsc3Ik
MyQ2LCAkNy9nOworCisgICAgIyBDb252ZXJ0IGxvYWRzIHdpdGggcmlnaHQgc2hpZnRzIGluIHRo
ZSBpbmRleGluZyBpbnRvIGEKKyAgICAjIHNlcXVlbmNlIG9mIGFuIGFkZCwgbG9hZCBhbmQgc3Vi
LiBUaGlzIGNvbnZlcnRzCisgICAgIyAibGRyYiByNCwgW3I5LCBsciwgYXNyICMxXSIgaW50byAi
YWRkIHI5LCByOSwgbHIsIGFzciAjMSIsCisgICAgIyAibGRyYiByOSwgW3I5XSIsICJzdWIgcjks
IHI5LCBsciwgYXNyICMxIi4KKyAgICBzL14oXHMqKShsZHJiKShccyspKHJcZCspLFxzKlxbKFx3
KyksXHMqKFx3KyksXHMqKGFzciAjXGQrKVxdLyQxYWRkICQzJDUsICQ1LCAkNiwgJDdcbiQxJDIk
MyQ0LCBbJDVdXG4kMXN1YiAkMyQ1LCAkNSwgJDYsICQ3L2c7CisKKyAgICAjIENvbnZlcnQgcmVn
aXN0ZXIgaW5kZXhpbmcgd2l0aCB3cml0ZWJhY2sgaW50byBhIHNlcGFyYXRlIGFkZAorICAgICMg
aW5zdHJ1Y3Rpb24uIFRoaXMgY29udmVydHMgImxkcmIgcjEyLCBbcjEsIHIyXSEiIGludG8KKyAg
ICAjICJsZHJiIHIxMiwgW3IxLCByMl0iLCAiYWRkIHIxLCByMSwgcjIiLgorICAgIHMvXihccyop
KGxkcmIpKFxzKykoclxkKyksXHMqXFsoXHcrKSxccyooXHcrKVxdIS8kMSQyJDMkNCwgWyQ1LCAk
Nl1cbiQxYWRkICQzJDUsICQ2L2c7CisKKyAgICAjIENvbnZlcnQgbmVnYXRpdmUgcmVnaXN0ZXIg
aW5kZXhpbmcgaW50byBzZXBhcmF0ZSBzdWIvYWRkIGluc3RydWN0aW9ucy4KKyAgICAjIFRoaXMg
Y29udmVydHMgImxkcm5lIHI0LCBbc3JjLCAtcHN0ZXAsIGxzbCAjMV0iIGludG8KKyAgICAjICJz
dWJuZSBzcmMsIHNyYywgcHN0ZXAsIGxzbCAjMSIsICJsZHJuZSByNCwgW3NyY10iLAorICAgICMg
ImFkZG5lIHNyYywgc3JjLCBwc3RlcCwgbHNsICMxIi4gSW4gYSBjb3VwbGUgb2YgY2FzZXMgd2hl
cmUKKyAgICAjIHRoaXMgaXMgdXNlZCwgaXQncyB1c2VkIGZvciB0d28gc3Vic2VxdWVudCBsb2Fk
IGluc3RydWN0aW9ucywKKyAgICAjIHdoZXJlIGEgaGFuZC13cml0dGVuIHZlcnNpb24gb2YgaXQg
Y291bGQgbWVyZ2UgdHdvIHN1YnNlcXVlbnQKKyAgICAjIGFkZCBhbmQgc3ViIGluc3RydWN0aW9u
cy4KKyAgICBzL14oXHMqKSgobGRyfHN0cnxwbGQpKG5lKT8pKFxzKykoclxkKyxccyopP1xbKFx3
KyksIC0oW15cXV0rKVxdLyQxc3ViJDQkNSQ3LCAkNywgJDhcbiQxJDIkNSQ2XFskN1xdXG4kMWFk
ZCQ0JDUkNywgJDcsICQ4L2c7CisKKyAgICAjIENvbnZlcnQgcmVnaXN0ZXIgcG9zdCBpbmRleGlu
ZyB0byBhIHNlcGFyYXRlIGFkZCBpbnN0cnVjdGlvbi4KKyAgICAjIFRoaXMgY29udmVydHMgImxk
cm5lYiByOSwgW3IwXSwgcjIiIGludG8gImxkcm5lYiByOSwgW3IwXSIsCisgICAgIyAiYWRkbmUg
cjAsIHIwLCByMiIuCisgICAgcy9eKFxzKikoKGxkcnxzdHIpKG5lKT9bYmhkXT8pKFxzKykoXHcr
KSwoXHMqXHcrLCk/XHMqXFsoXHcrKVxdLFxzKihcdyspLyQxJDIkNSQ2LCQ3IFskOF1cbiQxYWRk
JDQkNSQ4LCAkOCwgJDkvZzsKKworICAgICMgQ29udmVydCAibW92IHBjLCBsciIgaW50byAiYngg
bHIiLCBzaW5jZSB0aGUgZm9ybWVyIG9ubHkgd29ya3MKKyAgICAjIGZvciBzd2l0Y2hpbmcgZnJv
bSBhcm0gdG8gdGh1bWIgKGFuZCBvbmx5IGluIGFybXY3KSwgYnV0IG5vdAorICAgICMgZnJvbSB0
aHVtYiB0byBhcm0uCisgICAgcy9tb3YoXHMqKXBjXHMqLFxzKmxyL2J4JDFsci9nOworfQorCisx
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWlsZC9tYWtlL3ZlcnNpb24uc2ggYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L2J1aWxkL21ha2UvdmVyc2lvbi5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMzZlZGUxMGYyY2UwMjdmNzIy
OWQ1OThhNTQ2OWNhODY5ZmJjM2QxCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9idWls
ZC9tYWtlL3ZlcnNpb24uc2gKQEAgLTAsMCArMSw3OCBAQAorIyEvYmluL3NoCisjIworIyMgIENv
cHlyaWdodCAoYykgMjAxMCBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMuIEFsbCBSaWdodHMgUmVz
ZXJ2ZWQuCisjIworIyMgIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEg
QlNELXN0eWxlIGxpY2Vuc2UKKyMjICB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBm
aWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UKKyMjICB0cmVlLiBBbiBhZGRpdGlvbmFsIGlu
dGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQgY2FuIGJlIGZvdW5kCisjIyAgaW4gdGhl
IGZpbGUgUEFURU5UUy4gIEFsbCBjb250cmlidXRpbmcgcHJvamVjdCBhdXRob3JzIG1heQorIyMg
IGJlIGZvdW5kIGluIHRoZSBBVVRIT1JTIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZSB0
cmVlLgorIyMKKworCisKK2ZvciBvcHQgaW4gIiRAIjsgZG8KKyAgICBvcHR2YWw9IiR7b3B0Iyo9
fSIKKyAgICBjYXNlICIkb3B0IiBpbgorICAgIC0tYmFyZSkgYmFyZT10cnVlIDs7CisgICAgKikg
YnJlYWsgOzsKKyAgICBlc2FjCisgICAgc2hpZnQKK2RvbmUKK3NvdXJjZV9wYXRoPSR7MTotLn0K
K291dF9maWxlPSR7Mn0KK2lkPSR7MzotVkVSU0lPTl9TVFJJTkd9CisKK2dpdF92ZXJzaW9uX2lk
PSIiCitpZiBbIC1lICIke3NvdXJjZV9wYXRofS8uZ2l0IiBdOyB0aGVuCisgICAgIyBTb3VyY2Ug
UGF0aCBpcyBhIGdpdCB3b3JraW5nIGNvcHkuIENoZWNrIGZvciBsb2NhbCBtb2RpZmljYXRpb25z
LgorICAgICMgTm90ZSB0aGF0IGdpdCBzdWJtb2R1bGVzIG1heSBoYXZlIGEgZmlsZSBhcyAuZ2l0
LCBub3QgYSBkaXJlY3RvcnkuCisgICAgZXhwb3J0IEdJVF9ESVI9IiR7c291cmNlX3BhdGh9Ly5n
aXQiCisgICAgZ2l0X3ZlcnNpb25faWQ9YGdpdCBkZXNjcmliZSAtLW1hdGNoPXZbMC05XSogMj4v
ZGV2L251bGxgCitmaQorCitjaGFuZ2Vsb2dfdmVyc2lvbj0iIgorZm9yIHAgaW4gIiR7c291cmNl
X3BhdGh9IiAiJHtzb3VyY2VfcGF0aH0vLi4iOyBkbworICAgIGlmIFsgLXogIiRnaXRfdmVyc2lv
bl9pZCIgLWEgLWYgIiR7cH0vQ0hBTkdFTE9HIiBdOyB0aGVuCisgICAgICAgIGNoYW5nZWxvZ192
ZXJzaW9uPWBoZWFkIC1uMSAiJHtwfS9DSEFOR0VMT0ciIHwgYXdrICd7cHJpbnQgJDJ9J2AKKyAg
ICAgICAgY2hhbmdlbG9nX3ZlcnNpb249IiR7Y2hhbmdlbG9nX3ZlcnNpb259IgorICAgICAgICBi
cmVhaworICAgIGZpCitkb25lCit2ZXJzaW9uX3N0cj0iJHtjaGFuZ2Vsb2dfdmVyc2lvbn0ke2dp
dF92ZXJzaW9uX2lkfSIKK2JhcmVfdmVyc2lvbj0ke3ZlcnNpb25fc3RyI3Z9CittYWpvcl92ZXJz
aW9uPSR7YmFyZV92ZXJzaW9uJSUuKn0KK2JhcmVfdmVyc2lvbj0ke2JhcmVfdmVyc2lvbiMqLn0K
K21pbm9yX3ZlcnNpb249JHtiYXJlX3ZlcnNpb24lJS4qfQorYmFyZV92ZXJzaW9uPSR7YmFyZV92
ZXJzaW9uIyoufQorcGF0Y2hfdmVyc2lvbj0ke2JhcmVfdmVyc2lvbiUlLSp9CitiYXJlX3ZlcnNp
b249JHtiYXJlX3ZlcnNpb24jJHtwYXRjaF92ZXJzaW9ufX0KK2V4dHJhX3ZlcnNpb249JHtiYXJl
X3ZlcnNpb24jIy19CisKKyNzaW5jZSB0aGV5J2xsIGJlIHVzZWQgYXMgaW50ZWdlcnMgYmVsb3cg
bWFrZSBzdXJlIHRoZXkgYXJlIG9yIGZvcmNlIHRvIDAKK2ZvciB2IGluIG1ham9yX3ZlcnNpb24g
bWlub3JfdmVyc2lvbiBwYXRjaF92ZXJzaW9uOyBkbworICAgIGlmIGV2YWwgZWNobyBcJCR2IHxn
cmVwIC1FIC1xICdbXls6ZGlnaXQ6XV0nOyB0aGVuCisgICAgICAgIGV2YWwgJHY9MAorICAgIGZp
Citkb25lCisKK2lmIFsgJHtiYXJlfSBdOyB0aGVuCisgICAgZWNobyAiJHtjaGFuZ2Vsb2dfdmVy
c2lvbn0ke2dpdF92ZXJzaW9uX2lkfSIgPiAkJC50bXAKK2Vsc2UKKyAgICBjYXQ8PEVPRj4kJC50
bXAKKy8vIFRoaXMgZmlsZSBpcyBnZW5lcmF0ZWQuIERvIG5vdCBlZGl0LgorI2RlZmluZSBWRVJT
SU9OX01BSk9SICAkbWFqb3JfdmVyc2lvbgorI2RlZmluZSBWRVJTSU9OX01JTk9SICAkbWlub3Jf
dmVyc2lvbgorI2RlZmluZSBWRVJTSU9OX1BBVENIICAkcGF0Y2hfdmVyc2lvbgorI2RlZmluZSBW
RVJTSU9OX0VYVFJBICAiJGV4dHJhX3ZlcnNpb24iCisjZGVmaW5lIFZFUlNJT05fUEFDS0VEICgo
VkVSU0lPTl9NQUpPUjw8MTYpfChWRVJTSU9OX01JTk9SPDw4KXwoVkVSU0lPTl9QQVRDSCkpCisj
ZGVmaW5lICR7aWR9X05PU1AgIiR7dmVyc2lvbl9zdHJ9IgorI2RlZmluZSAke2lkfSAgICAgICIg
JHt2ZXJzaW9uX3N0cn0iCitFT0YKK2ZpCitpZiBbIC1uICIkb3V0X2ZpbGUiIF07IHRoZW4KK2Rp
ZmYgJCQudG1wICR7b3V0X2ZpbGV9ID4vZGV2L251bGwgMj4mMSB8fCBjYXQgJCQudG1wID4gJHtv
dXRfZmlsZX0KK2Vsc2UKK2NhdCAkJC50bXAKK2ZpCitybSAkJC50bXAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvY29uZmlndXJlIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9jb25maWd1cmUKaW5kZXggMTgxZTI3Yjdj
MDlmMDQ0Mzc0NjI2NDA5NzMyMDRhZDczNmU4ZDlhNy4uZjdlMTFhYWYyZDRkZmMyNTJiYjdmMWMz
MmNiMmZkMzYxNGIwNWJmNiAxMDA3NTUKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9jb25maWd1cmUKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC9jb25maWd1cmUKQEAgLTk5LDYgKzk5LDcgQEAgRU9GCiAjIGFscGhhYmV0aWNh
bGx5IGJ5IGFyY2hpdGVjdHVyZSwgZ2VuZXJpYy1nbnUgbGFzdC4KIGFsbF9wbGF0Zm9ybXM9IiR7
YWxsX3BsYXRmb3Jtc30gYXJtNjQtYW5kcm9pZC1nY2MiCiBhbGxfcGxhdGZvcm1zPSIke2FsbF9w
bGF0Zm9ybXN9IGFybTY0LWRhcndpbi1nY2MiCithbGxfcGxhdGZvcm1zPSIke2FsbF9wbGF0Zm9y
bXN9IGFybTY0LWRhcndpbjIwLWdjYyIKIGFsbF9wbGF0Zm9ybXM9IiR7YWxsX3BsYXRmb3Jtc30g
YXJtNjQtbGludXgtZ2NjIgogYWxsX3BsYXRmb3Jtcz0iJHthbGxfcGxhdGZvcm1zfSBhcm02NC13
aW42NC1nY2MiCiBhbGxfcGxhdGZvcm1zPSIke2FsbF9wbGF0Zm9ybXN9IGFybTY0LXdpbjY0LXZz
MTUiCkBAIC0xNDksNiArMTUwLDggQEAgYWxsX3BsYXRmb3Jtcz0iJHthbGxfcGxhdGZvcm1zfSB4
ODZfNjQtZGFyd2luMTUtZ2NjIgogYWxsX3BsYXRmb3Jtcz0iJHthbGxfcGxhdGZvcm1zfSB4ODZf
NjQtZGFyd2luMTYtZ2NjIgogYWxsX3BsYXRmb3Jtcz0iJHthbGxfcGxhdGZvcm1zfSB4ODZfNjQt
ZGFyd2luMTctZ2NjIgogYWxsX3BsYXRmb3Jtcz0iJHthbGxfcGxhdGZvcm1zfSB4ODZfNjQtZGFy
d2luMTgtZ2NjIgorYWxsX3BsYXRmb3Jtcz0iJHthbGxfcGxhdGZvcm1zfSB4ODZfNjQtZGFyd2lu
MTktZ2NjIgorYWxsX3BsYXRmb3Jtcz0iJHthbGxfcGxhdGZvcm1zfSB4ODZfNjQtZGFyd2luMjAt
Z2NjIgogYWxsX3BsYXRmb3Jtcz0iJHthbGxfcGxhdGZvcm1zfSB4ODZfNjQtaXBob25lc2ltdWxh
dG9yLWdjYyIKIGFsbF9wbGF0Zm9ybXM9IiR7YWxsX3BsYXRmb3Jtc30geDg2XzY0LWxpbnV4LWdj
YyIKIGFsbF9wbGF0Zm9ybXM9IiR7YWxsX3BsYXRmb3Jtc30geDg2XzY0LWxpbnV4LWljYyIKQEAg
LTYyNyw2ICs2MzAsNyBAQCBwcm9jZXNzX3Rvb2xjaGFpbigpIHsKICAgICAgICAgY2hlY2tfYWRk
X2NmbGFncyAtV21pc3NpbmctZGVjbGFyYXRpb25zCiAgICAgICAgIGNoZWNrX2FkZF9jZmxhZ3Mg
LVdtaXNzaW5nLXByb3RvdHlwZXMKICAgICAgICAgY2hlY2tfYWRkX2NmbGFncyAtV3VuaW5pdGlh
bGl6ZWQKKyAgICAgICAgY2hlY2tfYWRkX2NmbGFncyAtV3VucmVhY2hhYmxlLWNvZGUtbG9vcC1p
bmNyZW1lbnQKICAgICAgICAgY2hlY2tfYWRkX2NmbGFncyAtV3VudXNlZAogICAgICAgICBjaGVj
a19hZGRfY2ZsYWdzIC1XZXh0cmEKICAgICAgICAgIyBjaGVja19hZGRfY2ZsYWdzIGFsc28gYWRk
cyB0byBjeHhmbGFncy4gZ3Rlc3QgZG9lcyBub3QgZG8gd2VsbCB3aXRoCkBAIC03MzIsNiArNzM2
LDcgQEAgcHJvY2Vzc190b29sY2hhaW4oKSB7CiAgICAgICAgICAgICAjIEdUZXN0TG9nIG11c3Qg
YmUgbW9kaWZpZWQgdG8gdXNlIEFuZHJvaWQgbG9nZ2luZyB1dGlsaXRpZXMuCiAgICAgICAgIDs7
CiAgICAgICAgICotZGFyd2luLSopCisgICAgICAgICAgICBjaGVja19hZGRfY3h4ZmxhZ3MgLXN0
ZD1jKysxMQogICAgICAgICAgICAgIyBpT1MvQVJNIGJ1aWxkcyBkbyBub3Qgd29yayB3aXRoIGd0
ZXN0LiBUaGlzIGRvZXMgbm90IG1hdGNoCiAgICAgICAgICAgICAjIHg4NiB0YXJnZXRzLgogICAg
ICAgICA7OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy9kZWNvZGVfd2l0aF9kcm9w
cy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy9kZWNvZGVfd2l0aF9kcm9wcy5jCmluZGV4IGU2OWUy
YTlmOWIzYTExOWQ3NTQ4OTI4NWQ1YTJmMGI5MzdlMzY1MzYuLjAzYzc5YTQ1NjE2MTg1OGZhN2Fm
ZmJlMDIwM2FkZDUxY2RhMmY4YWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvZGVj
b2RlX3dpdGhfZHJvcHMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4YW1wbGVzL2RlY29kZV93aXRoX2Ry
b3BzLmMKQEAgLTEwNiw3ICsxMDYsNyBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3Yp
IHsKICAgcHJpbnRmKCJVc2luZyAlc1xuIiwgdnB4X2NvZGVjX2lmYWNlX25hbWUoZGVjb2Rlci0+
Y29kZWNfaW50ZXJmYWNlKCkpKTsKIAogICBpZiAodnB4X2NvZGVjX2RlY19pbml0KCZjb2RlYywg
ZGVjb2Rlci0+Y29kZWNfaW50ZXJmYWNlKCksIE5VTEwsIDApKQotICAgIGRpZV9jb2RlYygmY29k
ZWMsICJGYWlsZWQgdG8gaW5pdGlhbGl6ZSBkZWNvZGVyLiIpOworICAgIGRpZSgiRmFpbGVkIHRv
IGluaXRpYWxpemUgZGVjb2Rlci4iKTsKIAogICB3aGlsZSAodnB4X3ZpZGVvX3JlYWRlcl9yZWFk
X2ZyYW1lKHJlYWRlcikpIHsKICAgICB2cHhfY29kZWNfaXRlcl90IGl0ZXIgPSBOVUxMOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy9wb3N0cHJvYy5jIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFt
cGxlcy9wb3N0cHJvYy5jCmluZGV4IDE1NzEzYjk0NmE5NjhiMzMxNDExNzExZjM4YTZmZDM1NzFj
M2QzMTMuLmJlOTk5YjQyOWU3YzIwZjEyZjI3NzczZjMxY2U0ZGU3NTBiYTU5Y2IgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvcG9zdHByb2MuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4YW1w
bGVzL3Bvc3Rwcm9jLmMKQEAgLTg2LDkgKzg2LDkgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIg
Kiphcmd2KSB7CiAgIHJlcyA9IHZweF9jb2RlY19kZWNfaW5pdCgmY29kZWMsIGRlY29kZXItPmNv
ZGVjX2ludGVyZmFjZSgpLCBOVUxMLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgVlBYX0NP
REVDX1VTRV9QT1NUUFJPQyk7CiAgIGlmIChyZXMgPT0gVlBYX0NPREVDX0lOQ0FQQUJMRSkKLSAg
ICBkaWVfY29kZWMoJmNvZGVjLCAiUG9zdHByb2Mgbm90IHN1cHBvcnRlZCBieSB0aGlzIGRlY29k
ZXIuIik7CisgICAgZGllKCJQb3N0cHJvYyBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMgZGVjb2Rlci4i
KTsKIAotICBpZiAocmVzKSBkaWVfY29kZWMoJmNvZGVjLCAiRmFpbGVkIHRvIGluaXRpYWxpemUg
ZGVjb2Rlci4iKTsKKyAgaWYgKHJlcykgZGllKCJGYWlsZWQgdG8gaW5pdGlhbGl6ZSBkZWNvZGVy
LiIpOwogCiAgIHdoaWxlICh2cHhfdmlkZW9fcmVhZGVyX3JlYWRfZnJhbWUocmVhZGVyKSkgewog
ICAgIHZweF9jb2RlY19pdGVyX3QgaXRlciA9IE5VTEw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L2V4YW1wbGVzL3NldF9tYXBzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4YW1wbGVzL3NldF9tYXBzLmMKaW5k
ZXggYzBjN2QxMGU3MmE3MmNmNjMyMTkxYmY4N2VmMDJkNzA3N2RiYWYxNS4uODY3ZTQ3M2FlYTRi
YmI5ODRiNjI3YTkwMTM2YjU0M2Q4ZmUwMDVhYyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFt
cGxlcy9zZXRfbWFwcy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvc2V0X21hcHMuYwpAQCAt
MjA5LDcgKzIwOSw3IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikgewogICAgIGRp
ZSgiRmFpbGVkIHRvIG9wZW4gJXMgZm9yIHJlYWRpbmcuIiwgYXJndls0XSk7CiAKICAgaWYgKHZw
eF9jb2RlY19lbmNfaW5pdCgmY29kZWMsIGVuY29kZXItPmNvZGVjX2ludGVyZmFjZSgpLCAmY2Zn
LCAwKSkKLSAgICBkaWVfY29kZWMoJmNvZGVjLCAiRmFpbGVkIHRvIGluaXRpYWxpemUgZW5jb2Rl
ciIpOworICAgIGRpZSgiRmFpbGVkIHRvIGluaXRpYWxpemUgZW5jb2RlciIpOwogCiAgIC8vIEVu
Y29kZSBmcmFtZXMuCiAgIHdoaWxlICh2cHhfaW1nX3JlYWQoJnJhdywgaW5maWxlKSkgewpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy9zaW1wbGVfZGVjb2Rlci5jIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC9leGFtcGxlcy9zaW1wbGVfZGVjb2Rlci5jCmluZGV4IDJiYjFhMDUyNDViZDNhYmUyN2ZhMmU0
NmNjMDYxYmE4MjJiMGE3ZWIuLmQwODllODI2ZDViOGVhNGNkMjQzNDYwZDNhMGFkYWI0ZGU0ZjJm
NTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvc2ltcGxlX2RlY29kZXIuYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L2V4YW1wbGVzL3NpbXBsZV9kZWNvZGVyLmMKQEAgLTExOCw3ICsxMTgsNyBA
QCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpIHsKICAgcHJpbnRmKCJVc2luZyAlc1xu
IiwgdnB4X2NvZGVjX2lmYWNlX25hbWUoZGVjb2Rlci0+Y29kZWNfaW50ZXJmYWNlKCkpKTsKIAog
ICBpZiAodnB4X2NvZGVjX2RlY19pbml0KCZjb2RlYywgZGVjb2Rlci0+Y29kZWNfaW50ZXJmYWNl
KCksIE5VTEwsIDApKQotICAgIGRpZV9jb2RlYygmY29kZWMsICJGYWlsZWQgdG8gaW5pdGlhbGl6
ZSBkZWNvZGVyLiIpOworICAgIGRpZSgiRmFpbGVkIHRvIGluaXRpYWxpemUgZGVjb2Rlci4iKTsK
IAogICB3aGlsZSAodnB4X3ZpZGVvX3JlYWRlcl9yZWFkX2ZyYW1lKHJlYWRlcikpIHsKICAgICB2
cHhfY29kZWNfaXRlcl90IGl0ZXIgPSBOVUxMOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFt
cGxlcy9zaW1wbGVfZW5jb2Rlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy9zaW1wbGVfZW5jb2Rl
ci5jCmluZGV4IGRkZTYzNDRmOGQ2MzI0ODdiMTIxMmYyM2U0NGY5OGQ0NjBiMGY5NTYuLmRmZmRk
NmQ3ZGEzZTU1MmJkYTI4ZTQyYWViZmIxZDI2MGU2ZDg1N2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvZXhhbXBsZXMvc2ltcGxlX2VuY29kZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4YW1wbGVzL3Np
bXBsZV9lbmNvZGVyLmMKQEAgLTIxOCw3ICsyMTgsNyBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hh
ciAqKmFyZ3YpIHsKICAgICBkaWUoIkZhaWxlZCB0byBvcGVuICVzIGZvciByZWFkaW5nLiIsIGlu
ZmlsZV9hcmcpOwogCiAgIGlmICh2cHhfY29kZWNfZW5jX2luaXQoJmNvZGVjLCBlbmNvZGVyLT5j
b2RlY19pbnRlcmZhY2UoKSwgJmNmZywgMCkpCi0gICAgZGllX2NvZGVjKCZjb2RlYywgIkZhaWxl
ZCB0byBpbml0aWFsaXplIGVuY29kZXIiKTsKKyAgICBkaWUoIkZhaWxlZCB0byBpbml0aWFsaXpl
IGVuY29kZXIiKTsKIAogICAvLyBFbmNvZGUgZnJhbWVzLgogICB3aGlsZSAodnB4X2ltZ19yZWFk
KCZyYXcsIGluZmlsZSkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvdHdvcGFz
c19lbmNvZGVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4YW1wbGVzL3R3b3Bhc3NfZW5jb2Rlci5jCmluZGV4
IDRlNjNhN2E2Yzk3NDI5MTNkNmU1MTlhOTZlM2MwNTIyN2U1MTVmZTguLjNkOTUwYjJjNGI5ODE1
ZTM2OTUwNzI5ZjFhYmE2OTg1MzI1NzliZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBs
ZXMvdHdvcGFzc19lbmNvZGVyLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy90d29wYXNzX2Vu
Y29kZXIuYwpAQCAtMTI4LDcgKzEyOCw3IEBAIHN0YXRpYyB2cHhfZml4ZWRfYnVmX3QgcGFzczAo
dnB4X2ltYWdlX3QgKnJhdywgRklMRSAqaW5maWxlLAogICB2cHhfZml4ZWRfYnVmX3Qgc3RhdHMg
PSB7IE5VTEwsIDAgfTsKIAogICBpZiAodnB4X2NvZGVjX2VuY19pbml0KCZjb2RlYywgZW5jb2Rl
ci0+Y29kZWNfaW50ZXJmYWNlKCksIGNmZywgMCkpCi0gICAgZGllX2NvZGVjKCZjb2RlYywgIkZh
aWxlZCB0byBpbml0aWFsaXplIGVuY29kZXIiKTsKKyAgICBkaWUoIkZhaWxlZCB0byBpbml0aWFs
aXplIGVuY29kZXIiKTsKIAogICAvLyBDYWxjdWxhdGUgZnJhbWUgc3RhdGlzdGljcy4KICAgd2hp
bGUgKHZweF9pbWdfcmVhZChyYXcsIGluZmlsZSkpIHsKQEAgLTE2NCw3ICsxNjQsNyBAQCBzdGF0
aWMgdm9pZCBwYXNzMSh2cHhfaW1hZ2VfdCAqcmF3LCBGSUxFICppbmZpbGUsIGNvbnN0IGNoYXIg
Km91dGZpbGVfbmFtZSwKICAgaWYgKCF3cml0ZXIpIGRpZSgiRmFpbGVkIHRvIG9wZW4gJXMgZm9y
IHdyaXRpbmciLCBvdXRmaWxlX25hbWUpOwogCiAgIGlmICh2cHhfY29kZWNfZW5jX2luaXQoJmNv
ZGVjLCBlbmNvZGVyLT5jb2RlY19pbnRlcmZhY2UoKSwgY2ZnLCAwKSkKLSAgICBkaWVfY29kZWMo
JmNvZGVjLCAiRmFpbGVkIHRvIGluaXRpYWxpemUgZW5jb2RlciIpOworICAgIGRpZSgiRmFpbGVk
IHRvIGluaXRpYWxpemUgZW5jb2RlciIpOwogCiAgIC8vIEVuY29kZSBmcmFtZXMuCiAgIHdoaWxl
ICh2cHhfaW1nX3JlYWQocmF3LCBpbmZpbGUpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4
YW1wbGVzL3ZwOGN4X3NldF9yZWYuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvdnA4Y3hfc2V0X3Jl
Zi5jCmluZGV4IDg0NjQ3N2M2MWVmMmEzYzlkY2FjNTIzZmM3MWIxN2Y3ZTM3MjU3ZjcuLmNhNTI4
ZjllOTBhYzlkNWUyMTc3MzQwN2U4YTExNmMyNzU3NTgwMTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvZXhhbXBsZXMvdnA4Y3hfc2V0X3JlZi5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvdnA4
Y3hfc2V0X3JlZi5jCkBAIC0xNTUsNyArMTU1LDcgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIg
Kiphcmd2KSB7CiAgICAgZGllKCJGYWlsZWQgdG8gb3BlbiAlcyBmb3IgcmVhZGluZy4iLCBhcmd2
WzNdKTsKIAogICBpZiAodnB4X2NvZGVjX2VuY19pbml0KCZjb2RlYywgZW5jb2Rlci0+Y29kZWNf
aW50ZXJmYWNlKCksICZjZmcsIDApKQotICAgIGRpZV9jb2RlYygmY29kZWMsICJGYWlsZWQgdG8g
aW5pdGlhbGl6ZSBlbmNvZGVyIik7CisgICAgZGllKCJGYWlsZWQgdG8gaW5pdGlhbGl6ZSBlbmNv
ZGVyIik7CiAKICAgLy8gRW5jb2RlIGZyYW1lcy4KICAgd2hpbGUgKHZweF9pbWdfcmVhZCgmcmF3
LCBpbmZpbGUpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4YW1wbGVzL3ZwOV9sb3NzbGVz
c19lbmNvZGVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4YW1wbGVzL3ZwOV9sb3NzbGVzc19lbmNvZGVyLmMK
aW5kZXggY2I1Y2E2YmZlMGI3NjM0MzcyNmVkMTE5YTliZmMwMTEwMjIyNzgyOS4uYzRlYjNhOGIx
NzFmNTU3YTE0NDdlZDkwYjVjZTdhNmYzNzNhNzZlMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9l
eGFtcGxlcy92cDlfbG9zc2xlc3NfZW5jb2Rlci5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMv
dnA5X2xvc3NsZXNzX2VuY29kZXIuYwpAQCAtMTEwLDcgKzExMCw3IEBAIGludCBtYWluKGludCBh
cmdjLCBjaGFyICoqYXJndikgewogICAgIGRpZSgiRmFpbGVkIHRvIG9wZW4gJXMgZm9yIHJlYWRp
bmcuIiwgYXJndlszXSk7CiAKICAgaWYgKHZweF9jb2RlY19lbmNfaW5pdCgmY29kZWMsIGVuY29k
ZXItPmNvZGVjX2ludGVyZmFjZSgpLCAmY2ZnLCAwKSkKLSAgICBkaWVfY29kZWMoJmNvZGVjLCAi
RmFpbGVkIHRvIGluaXRpYWxpemUgZW5jb2RlciIpOworICAgIGRpZSgiRmFpbGVkIHRvIGluaXRp
YWxpemUgZW5jb2RlciIpOwogCiAgIGlmICh2cHhfY29kZWNfY29udHJvbF8oJmNvZGVjLCBWUDlF
X1NFVF9MT1NTTEVTUywgMSkpCiAgICAgZGllX2NvZGVjKCZjb2RlYywgIkZhaWxlZCB0byB1c2Ug
bG9zc2xlc3MgbW9kZSIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy92cDlfc3Bh
dGlhbF9zdmNfZW5jb2Rlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy92cDlfc3BhdGlhbF9zdmNf
ZW5jb2Rlci5jCmluZGV4IGI5ODc5ODlhODZjZjFmMTE0OWRiODdlNmRiNWYyOGQ3MDY4NGM5ZjIu
LjYzMDU1NzI5Nzk1ZWJjOTM0MDdlZmZiMWE1NmM3MWQxODU3ZjBhMTEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvZXhhbXBsZXMvdnA5X3NwYXRpYWxfc3ZjX2VuY29kZXIuYworKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L2V4YW1wbGVzL3ZwOV9zcGF0aWFsX3N2Y19lbmNvZGVyLmMKQEAgLTgyOCwxMiArODI4LDE1
IEBAIHN0YXRpYyB2b2lkIHN2Y19vdXRwdXRfcmNfc3RhdHMoCiAgIHZweF9jb2RlY19jb250cm9s
KGNvZGVjLCBWUDlFX0dFVF9TVkNfTEFZRVJfSUQsIGxheWVyX2lkKTsKICAgcGFyc2Vfc3VwZXJm
cmFtZV9pbmRleChjeF9wa3QtPmRhdGEuZnJhbWUuYnVmLCBjeF9wa3QtPmRhdGEuZnJhbWUuc3os
CiAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZXNfcGFyc2VkLCAmY291bnQpOwotICBpZiAo
ZW5jX2NmZy0+c3NfbnVtYmVyX2xheWVycyA9PSAxKSBzaXplc1swXSA9IGN4X3BrdC0+ZGF0YS5m
cmFtZS5zejsKLSAgZm9yIChzbCA9IDA7IHNsIDwgZW5jX2NmZy0+c3NfbnVtYmVyX2xheWVyczsg
KytzbCkgewotICAgIHNpemVzW3NsXSA9IDA7Ci0gICAgaWYgKGN4X3BrdC0+ZGF0YS5mcmFtZS5z
cGF0aWFsX2xheWVyX2VuY29kZWRbc2xdKSB7Ci0gICAgICBzaXplc1tzbF0gPSBzaXplc19wYXJz
ZWRbbnVtX2xheWVyc19lbmNvZGVkXTsKLSAgICAgIG51bV9sYXllcnNfZW5jb2RlZCsrOworICBp
ZiAoZW5jX2NmZy0+c3NfbnVtYmVyX2xheWVycyA9PSAxKSB7CisgICAgc2l6ZXNbMF0gPSBjeF9w
a3QtPmRhdGEuZnJhbWUuc3o7CisgIH0gZWxzZSB7CisgICAgZm9yIChzbCA9IDA7IHNsIDwgZW5j
X2NmZy0+c3NfbnVtYmVyX2xheWVyczsgKytzbCkgeworICAgICAgc2l6ZXNbc2xdID0gMDsKKyAg
ICAgIGlmIChjeF9wa3QtPmRhdGEuZnJhbWUuc3BhdGlhbF9sYXllcl9lbmNvZGVkW3NsXSkgewor
ICAgICAgICBzaXplc1tzbF0gPSBzaXplc19wYXJzZWRbbnVtX2xheWVyc19lbmNvZGVkXTsKKyAg
ICAgICAgbnVtX2xheWVyc19lbmNvZGVkKys7CisgICAgICB9CiAgICAgfQogICB9CiAgIGZvciAo
c2wgPSAwOyBzbCA8IGVuY19jZmctPnNzX251bWJlcl9sYXllcnM7ICsrc2wpIHsKQEAgLTEwNTAs
NiArMTA1Myw5IEBAIGludCBtYWluKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikgewogCiAg
IHZweF9jb2RlY19jb250cm9sKCZlbmNvZGVyLCBWUDlFX1NFVF9UVU5FX0NPTlRFTlQsIGFwcF9p
bnB1dC50dW5lX2NvbnRlbnQpOwogCisgIHZweF9jb2RlY19jb250cm9sKCZlbmNvZGVyLCBWUDlF
X1NFVF9ESVNBQkxFX09WRVJTSE9PVF9NQVhRX0NCUiwgMCk7CisgIHZweF9jb2RlY19jb250cm9s
KCZlbmNvZGVyLCBWUDlFX1NFVF9ESVNBQkxFX0xPT1BGSUxURVIsIDApOworCiAgIHN2Y19kcm9w
X2ZyYW1lLmZyYW1lZHJvcF9tb2RlID0gRlVMTF9TVVBFUkZSQU1FX0RST1A7CiAgIGZvciAoc2wg
PSAwOyBzbCA8ICh1bnNpZ25lZCBpbnQpc3ZjX2N0eC5zcGF0aWFsX2xheWVyczsgKytzbCkKICAg
ICBzdmNfZHJvcF9mcmFtZS5mcmFtZWRyb3BfdGhyZXNoW3NsXSA9IGVuY19jZmcucmNfZHJvcGZy
YW1lX3RocmVzaDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvdnA5Y3hfc2V0X3Jl
Zi5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy92cDljeF9zZXRfcmVmLmMKaW5kZXggOTExYWQzODYz
MGM2NTFkZGY0MjQ5YWE1ZDQwNzkyZTJjOWIwMmRjZi4uMWEwODIzMTUzYmQwYzkyZWRkOWQwZWU3
ODcxNmE2ZmY5ZDYzM2NmZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy92cDljeF9z
ZXRfcmVmLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxlcy92cDljeF9zZXRfcmVmLmMKQEAgLTI1
MSw3ICsyNTEsNyBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpIHsKICAgICBkaWUo
IkZhaWxlZCB0byBvcGVuICVzIGZvciByZWFkaW5nLiIsIGluZmlsZV9hcmcpOwogCiAgIGlmICh2
cHhfY29kZWNfZW5jX2luaXQoJmVjb2RlYywgZW5jb2Rlci0+Y29kZWNfaW50ZXJmYWNlKCksICZj
ZmcsIDApKQotICAgIGRpZV9jb2RlYygmZWNvZGVjLCAiRmFpbGVkIHRvIGluaXRpYWxpemUgZW5j
b2RlciIpOworICAgIGRpZSgiRmFpbGVkIHRvIGluaXRpYWxpemUgZW5jb2RlciIpOwogCiAgIC8v
IERpc2FibGUgYWx0X3JlZi4KICAgaWYgKHZweF9jb2RlY19jb250cm9sKCZlY29kZWMsIFZQOEVf
U0VUX0VOQUJMRUFVVE9BTFRSRUYsIDApKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9leGFtcGxl
cy92cHhfZGVjX2Z1enplci5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvdnB4X2RlY19mdXp6ZXIu
Y2MKaW5kZXggZDU1ZmUxNTcxYmUzNTk5OTVjYmZiNDM4YWI5ZDM4YmE0OWY4ODcxMC4uMzRjMGUx
MTIzODNiOGExYWM4MzA0YTc5MWRhOThhNzIzOThkYjVhOSAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC9leGFtcGxlcy92cHhfZGVjX2Z1enplci5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4YW1wbGVzL3Zw
eF9kZWNfZnV6emVyLmNjCkBAIC05NCw2ICs5NCwxMyBAQCBleHRlcm4gIkMiIGludCBMTFZNRnV6
emVyVGVzdE9uZUlucHV0KGNvbnN0IHVpbnQ4X3QgKmRhdGEsIHNpemVfdCBzaXplKSB7CiAgICAg
cmV0dXJuIDA7CiAgIH0KIAorICBpZiAodGhyZWFkcyA+IDEpIHsKKyAgICBjb25zdCBpbnQgZW5h
YmxlID0gKGRhdGFbSVZGX0ZJTEVfSERSX1NaXSAmIDB4YTApICE9IDA7CisgICAgY29uc3QgdnB4
X2NvZGVjX2Vycl90IGVyciA9CisgICAgICAgIHZweF9jb2RlY19jb250cm9sKCZjb2RlYywgVlA5
RF9TRVRfTE9PUF9GSUxURVJfT1BULCBlbmFibGUpOworICAgIHN0YXRpY19jYXN0PHZvaWQ+KGVy
cik7CisgIH0KKwogICBkYXRhICs9IElWRl9GSUxFX0hEUl9TWjsKICAgc2l6ZSAtPSBJVkZfRklM
RV9IRFJfU1o7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvZXhhbXBsZXMvdnB4X3RlbXBvcmFs
X3N2Y19lbmNvZGVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2V4YW1wbGVzL3ZweF90ZW1wb3JhbF9zdmNfZW5j
b2Rlci5jCmluZGV4IDkyNTA0M2QxMDY2NzI1N2Q4NDY0ZTEzMzZlZDA4OWI1NjZkMGU3MzMuLmZm
ZWFlMmFiYzRmNjhjOTM5Zjk4NDdmNTc2NzViYTQzOGJhNThhNzAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvZXhhbXBsZXMvdnB4X3RlbXBvcmFsX3N2Y19lbmNvZGVyLmMKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC9leGFtcGxlcy92cHhfdGVtcG9yYWxfc3ZjX2VuY29kZXIuYwpAQCAtODE1LDcgKzgxNSw3IEBA
IGludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikgewogI2Vsc2UKICAgaWYgKHZweF9jb2Rl
Y19lbmNfaW5pdCgmY29kZWMsIGVuY29kZXItPmNvZGVjX2ludGVyZmFjZSgpLCAmY2ZnLCAwKSkK
ICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKLSAgICBkaWVfY29kZWMoJmNvZGVj
LCAiRmFpbGVkIHRvIGluaXRpYWxpemUgZW5jb2RlciIpOworICAgIGRpZSgiRmFpbGVkIHRvIGlu
aXRpYWxpemUgZW5jb2RlciIpOwogCiAgIGlmIChzdHJuY21wKGVuY29kZXItPm5hbWUsICJ2cDgi
LCAzKSA9PSAwKSB7CiAgICAgdnB4X2NvZGVjX2NvbnRyb2woJmNvZGVjLCBWUDhFX1NFVF9DUFVV
U0VELCAtc3BlZWQpOwpAQCAtODMxLDYgKzgzMSw3IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFy
ICoqYXJndikgewogICB9IGVsc2UgaWYgKHN0cm5jbXAoZW5jb2Rlci0+bmFtZSwgInZwOSIsIDMp
ID09IDApIHsKICAgICB2cHhfc3ZjX2V4dHJhX2NmZ190IHN2Y19wYXJhbXM7CiAgICAgbWVtc2V0
KCZzdmNfcGFyYW1zLCAwLCBzaXplb2Yoc3ZjX3BhcmFtcykpOworICAgIHZweF9jb2RlY19jb250
cm9sKCZjb2RlYywgVlA5RV9TRVRfRElTQUJMRV9PVkVSU0hPT1RfTUFYUV9DQlIsIDApOwogICAg
IHZweF9jb2RlY19jb250cm9sKCZjb2RlYywgVlA4RV9TRVRfQ1BVVVNFRCwgc3BlZWQpOwogICAg
IHZweF9jb2RlY19jb250cm9sKCZjb2RlYywgVlA5RV9TRVRfQVFfTU9ERSwgMyk7CiAgICAgdnB4
X2NvZGVjX2NvbnRyb2woJmNvZGVjLCBWUDlFX1NFVF9HRl9DQlJfQk9PU1RfUENULCAwKTsKQEAg
LTg0MCw2ICs4NDEsNyBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpIHsKICAgICB2
cHhfY29kZWNfY29udHJvbCgmY29kZWMsIFZQOEVfU0VUX1NUQVRJQ19USFJFU0hPTEQsIDEpOwog
ICAgIHZweF9jb2RlY19jb250cm9sKCZjb2RlYywgVlA5RV9TRVRfVFVORV9DT05URU5ULCAwKTsK
ICAgICB2cHhfY29kZWNfY29udHJvbCgmY29kZWMsIFZQOUVfU0VUX1RJTEVfQ09MVU1OUywgZ2V0
X21zYihjZmcuZ190aHJlYWRzKSk7CisgICAgdnB4X2NvZGVjX2NvbnRyb2woJmNvZGVjLCBWUDlF
X1NFVF9ESVNBQkxFX0xPT1BGSUxURVIsIDApOwogI2lmIFJPSV9NQVAKICAgICBzZXRfcm9pX21h
cChlbmNvZGVyLT5uYW1lLCAmY2ZnLCAmcm9pKTsKICAgICBpZiAodnB4X2NvZGVjX2NvbnRyb2wo
JmNvZGVjLCBWUDlFX1NFVF9ST0lfTUFQLCAmcm9pKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
bGlicy5tayBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvbGlicy5tawppbmRleCA1NjlkYmRjNTBiY2Y4MmVlYmNlZjRj
NGE1MjUwMjA3OGM0NDJlY2E3Li5iNWJjMzU3NTVjZjE2ZGY3NjUwMmUwNGZlMDgyOTg1YzE4MGRj
ZWFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L2xpYnMubWsKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC9saWJz
Lm1rCkBAIC02Myw2ICs2Myw3IEBAIGlmZXEgKCQoQ09ORklHX1ZQOF9FTkNPREVSKSx5ZXMpCiAg
IENPREVDX1NSQ1MteWVzICs9ICQoYWRkcHJlZml4ICQoVlA4X1BSRUZJWCksJChjYWxsIGVuYWJs
ZWQsVlA4X0NYX1NSQ1MpKQogICBDT0RFQ19FWFBPUlRTLXllcyArPSAkKGFkZHByZWZpeCAkKFZQ
OF9QUkVGSVgpLCQoVlA4X0NYX0VYUE9SVFMpKQogICBJTlNUQUxMLUxJQlMteWVzICs9IGluY2x1
ZGUvdnB4L3ZwOC5oIGluY2x1ZGUvdnB4L3ZwOGN4LmgKKyAgSU5TVEFMTC1MSUJTLXllcyArPSBp
bmNsdWRlL3ZweC92cHhfZXh0X3JhdGVjdHJsLmgKICAgSU5TVEFMTF9NQVBTICs9IGluY2x1ZGUv
dnB4LyUgJChTUkNfUEFUSF9CQVJFKS8kKFZQOF9QUkVGSVgpLyUKICAgQ09ERUNfRE9DX1NFQ1RJ
T05TICs9IHZwOCB2cDhfZW5jb2RlcgogZW5kaWYKQEAgLTg3LDEwICs4OCwyMCBAQCBpZmVxICgk
KENPTkZJR19WUDlfRU5DT0RFUikseWVzKQogICBDT0RFQ19TUkNTLXllcyArPSAkKGFkZHByZWZp
eCAkKFZQOV9QUkVGSVgpLCQoY2FsbCBlbmFibGVkLFZQOV9DWF9TUkNTKSkKICAgQ09ERUNfRVhQ
T1JUUy15ZXMgKz0gJChhZGRwcmVmaXggJChWUDlfUFJFRklYKSwkKFZQOV9DWF9FWFBPUlRTKSkK
ICAgQ09ERUNfU1JDUy15ZXMgKz0gJChWUDlfUFJFRklYKXZwOWN4Lm1rIHZweC92cDguaCB2cHgv
dnA4Y3guaAorICBDT0RFQ19TUkNTLXllcyArPSB2cHgvdnB4X2V4dF9yYXRlY3RybC5oCiAgIElO
U1RBTEwtTElCUy15ZXMgKz0gaW5jbHVkZS92cHgvdnA4LmggaW5jbHVkZS92cHgvdnA4Y3guaAor
ICBJTlNUQUxMLUxJQlMteWVzICs9IGluY2x1ZGUvdnB4L3ZweF9leHRfcmF0ZWN0cmwuaAogICBJ
TlNUQUxMX01BUFMgKz0gaW5jbHVkZS92cHgvJSAkKFNSQ19QQVRIX0JBUkUpLyQoVlA5X1BSRUZJ
WCkvJQotICBDT0RFQ19ET0NfU1JDUyArPSB2cHgvdnA4LmggdnB4L3ZwOGN4LmgKKyAgQ09ERUNf
RE9DX1NSQ1MgKz0gdnB4L3ZwOC5oIHZweC92cDhjeC5oIHZweC92cHhfZXh0X3JhdGVjdHJsLmgK
ICAgQ09ERUNfRE9DX1NFQ1RJT05TICs9IHZwOSB2cDlfZW5jb2RlcgorCisgIFJDX1JUQ19TUkNT
IDo9ICQoYWRkcHJlZml4ICQoVlA5X1BSRUZJWCksJChjYWxsIGVuYWJsZWQsVlA5X0NYX1NSQ1Mp
KQorICBSQ19SVENfU1JDUyArPSAkKFZQOV9QUkVGSVgpdnA5Y3gubWsgdnB4L3ZwOC5oIHZweC92
cDhjeC5oCisgIFJDX1JUQ19TUkNTICs9IHZweC92cHhfZXh0X3JhdGVjdHJsLmgKKyAgUkNfUlRD
X1NSQ1MgKz0gJChWUDlfUFJFRklYKXJhdGVjdHJsX3J0Yy5jYworICBSQ19SVENfU1JDUyArPSAk
KFZQOV9QUkVGSVgpcmF0ZWN0cmxfcnRjLmgKKyAgSU5TVEFMTC1TUkNTLSQoQ09ORklHX0NPREVD
X1NSQ1MpICs9ICQoVlA5X1BSRUZJWClyYXRlY3RybF9ydGMuY2MKKyAgSU5TVEFMTC1TUkNTLSQo
Q09ORklHX0NPREVDX1NSQ1MpICs9ICQoVlA5X1BSRUZJWClyYXRlY3RybF9ydGMuaAogZW5kaWYK
IAogaWZlcSAoJChDT05GSUdfVlA5X0RFQ09ERVIpLHllcykKQEAgLTExNSw2ICsxMjYsNyBAQCBl
bmRpZgogaWZlcSAoJChDT05GSUdfTVNWUykseWVzKQogQ09ERUNfTElCPSQoaWYgJChDT05GSUdf
U1RBVElDX01TVkNSVCksdnB4bXQsdnB4bWQpCiBHVEVTVF9MSUI9JChpZiAkKENPTkZJR19TVEFU
SUNfTVNWQ1JUKSxndGVzdG10LGd0ZXN0bWQpCitSQ19SVENfTElCPSQoaWYgJChDT05GSUdfU1RB
VElDX01TVkNSVCksdnA5cmNtdCx2cDlyY21kKQogIyBUaGlzIHZhcmlhYmxlIHVzZXMgZGVmZXJy
ZWQgZXhwYW5zaW9uIGludGVudGlvbmFsbHksIHNpbmNlIHRoZSByZXN1bHRzIG9mCiAjICQod2ls
ZGNhcmQpIG1heSBjaGFuZ2UgZHVyaW5nIHRoZSBjb3Vyc2Ugb2YgdGhlIE1ha2UuCiBWU19QTEFU
Rk9STVMgPSAkKGZvcmVhY2ggZCwkKHdpbGRjYXJkICovUmVsZWFzZS8kKENPREVDX0xJQikubGli
KSwkKHdvcmQgMSwkKHN1YnN0IC8sICwkKGQpKSkpCkBAIC0xNjUsNyArMTc3LDE4IEBAIElOU1RB
TEwtTElCUy0kKENPTkZJR19TVEFUSUMpICs9ICQoTElCU1VCRElSKS9saWJ2cHguYQogSU5TVEFM
TC1MSUJTLSQoQ09ORklHX0RFQlVHX0xJQlMpICs9ICQoTElCU1VCRElSKS9saWJ2cHhfZy5hCiBl
bmRpZgogCitpZmVxICgkKENPTkZJR19WUDlfRU5DT0RFUikkKENPTkZJR19SQVRFX0NUUkwpLHll
c3llcykKKyAgU0lNUExFX0VOQ09ERV9TUkNTIDo9ICQoY2FsbCBlbmFibGVkLENPREVDX1NSQ1Mp
CisgIFNJTVBMRV9FTkNPREVfU1JDUyArPSAkKFZQOV9QUkVGSVgpc2ltcGxlX2VuY29kZS5jYwor
ICBTSU1QTEVfRU5DT0RFX1NSQ1MgKz0gJChWUDlfUFJFRklYKXNpbXBsZV9lbmNvZGUuaAorICBT
SU1QTEVfRU5DT0RFX1NSQ1MgKz0gaXZmZW5jLmgKKyAgU0lNUExFX0VOQ09ERV9TUkNTICs9IGl2
ZmVuYy5jCisgIElOU1RBTEwtU1JDUy0kKENPTkZJR19DT0RFQ19TUkNTKSArPSAkKFZQOV9QUkVG
SVgpc2ltcGxlX2VuY29kZS5jYworICBJTlNUQUxMLVNSQ1MtJChDT05GSUdfQ09ERUNfU1JDUykg
Kz0gJChWUDlfUFJFRklYKXNpbXBsZV9lbmNvZGUuaAorZW5kaWYKKwogQ09ERUNfU1JDUz0kKGNh
bGwgZW5hYmxlZCxDT0RFQ19TUkNTKQorCiBJTlNUQUxMLVNSQ1MtJChDT05GSUdfQ09ERUNfU1JD
UykgKz0gJChDT0RFQ19TUkNTKQogSU5TVEFMTC1TUkNTLSQoQ09ORklHX0NPREVDX1NSQ1MpICs9
ICQoY2FsbCBlbmFibGVkLENPREVDX0VYUE9SVFMpCiAKQEAgLTIyNSwxNSArMjQ4LDQ1IEBAIFBS
T0pFQ1RTLXllcyArPSB2cHguJChWQ1BST0pfU0ZYKQogdnB4LiQoVkNQUk9KX1NGWCk6IHZweF9j
b25maWcuYXNtCiB2cHguJChWQ1BST0pfU0ZYKTogJChSVENEKQogCi1lbmRpZgotZWxzZQordnA5
cmMuJChWQ1BST0pfU0ZYKTogXAorICAgIFZDUFJPSl9TUkNTPSQoZmlsdGVyLW91dCAkKGFkZHBy
ZWZpeCAlLCAkKEFTTV9JTkNMVURFUykpLCAkXikKKwordnA5cmMuJChWQ1BST0pfU0ZYKTogJChS
Q19SVENfU1JDUykKKwlAZWNobyAiICAgIFtDUkVBVEVdICRAIgorCSQocWV4ZWMpJChHRU5fVkNQ
Uk9KKSBcCisgICAgICAgICAgICAkKGlmICQoQ09ORklHX1NIQVJFRCksLS1kbGwsLS1saWIpIFwK
KyAgICAgICAgICAgIC0tdGFyZ2V0PSQoVE9PTENIQUlOKSBcCisgICAgICAgICAgICAkKGlmICQo
Q09ORklHX1NUQVRJQ19NU1ZDUlQpLC0tc3RhdGljLWNydCkgXAorICAgICAgICAgICAgLS1uYW1l
PXZwOXJjIFwKKyAgICAgICAgICAgIC0tcHJvai1ndWlkPUMyNkZGOTUyLTk0OTQtNDgzOC05QTNG
LTdGM0Q0RjYxMzM4NSBcCisgICAgICAgICAgICAtLXZlcj0kKENPTkZJR19WU19WRVJTSU9OKSBc
CisgICAgICAgICAgICAtLXNyYy1wYXRoLWJhcmU9IiQoU1JDX1BBVEhfQkFSRSkiIFwKKyAgICAg
ICAgICAgIC0tb3V0PSRAICQoQ0ZMQUdTKSBcCisgICAgICAgICAgICAkKGZpbHRlciAkKFNSQ19Q
QVRIX0JBUkUpL3ZwOS8lLmMsICQoVkNQUk9KX1NSQ1MpKSBcCisgICAgICAgICAgICAkKGZpbHRl
ciAkKFNSQ19QQVRIX0JBUkUpL3ZwOS8lLmNjLCAkKFZDUFJPSl9TUkNTKSkgXAorICAgICAgICAg
ICAgJChmaWx0ZXIgJChTUkNfUEFUSF9CQVJFKS92cDkvJS5oLCAkKFZDUFJPSl9TUkNTKSkgXAor
ICAgICAgICAgICAgJChmaWx0ZXIgJChTUkNfUEFUSF9CQVJFKS92cHgvJSwgJChWQ1BST0pfU1JD
UykpIFwKKyAgICAgICAgICAgICQoZmlsdGVyICQoU1JDX1BBVEhfQkFSRSkvdnB4X2RzcC8lLCAk
KFZDUFJPSl9TUkNTKSkgXAorICAgICAgICAgICAgJChmaWx0ZXItb3V0ICQoYWRkcHJlZml4ICQo
U1JDX1BBVEhfQkFSRSkvLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICB2cDgvJS5jIHZw
OC8lLmggdnA5LyUuYyB2cDkvJS5jYyB2cDkvJS5oIHZweC8lIFwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHZweF9kc3AvJSksIFwKKyAgICAgICAgICAgICAgJChWQ1BST0pfU1JDUykpIFwK
KyAgICAgICAgICAgIC0tc3JjLXBhdGgtYmFyZT0iJChTUkNfUEFUSF9CQVJFKSIgXAorCitQUk9K
RUNUUy15ZXMgKz0gdnA5cmMuJChWQ1BST0pfU0ZYKQorCit2cDlyYy4kKFZDUFJPSl9TRlgpOiB2
cHhfY29uZmlnLmFzbQordnA5cmMuJChWQ1BST0pfU0ZYKTogJChSVENEKQorCitlbmRpZiAjIGlm
ZXEgKCQoQ09ORklHX01TVlMpLHllcykKK2Vsc2UgIyBpZmVxICgkKENPTkZJR19FWFRFUk5BTF9C
VUlMRCkseWVzKQogTElCVlBYX09CSlM9JChjYWxsIG9ianMsICQoZmlsdGVyLW91dCAkKEFTTV9J
TkNMVURFUyksICQoQ09ERUNfU1JDUykpKQogT0JKUy15ZXMgKz0gJChMSUJWUFhfT0JKUykKIExJ
QlMtJChpZiB5ZXMsJChDT05GSUdfU1RBVElDKSkgKz0gJChCVUlMRF9QRlgpbGlidnB4LmEgJChC
VUlMRF9QRlgpbGlidnB4X2cuYQogJChCVUlMRF9QRlgpbGlidnB4X2cuYTogJChMSUJWUFhfT0JK
UykKIAogU09fVkVSU0lPTl9NQUpPUiA6PSA2Ci1TT19WRVJTSU9OX01JTk9SIDo9IDIKK1NPX1ZF
UlNJT05fTUlOT1IgOj0gMwogU09fVkVSU0lPTl9QQVRDSCA6PSAwCiBpZmVxICgkKGZpbHRlciBk
YXJ3aW4lLCQoVEdUX09TKSksJChUR1RfT1MpKQogTElCVlBYX1NPICAgICAgICAgICAgICAgOj0g
bGlidnB4LiQoU09fVkVSU0lPTl9NQUpPUikuZHlsaWIKQEAgLTMzMCw4ICszODMsMjQgQEAgZW5k
aWYKIElOU1RBTEwtTElCUy15ZXMgKz0gJChMSUJTVUJESVIpL3BrZ2NvbmZpZy92cHgucGMKIElO
U1RBTExfTUFQUyArPSAkKExJQlNVQkRJUikvcGtnY29uZmlnLyUucGMgJS5wYwogQ0xFQU4tT0JK
UyArPSB2cHgucGMKKworaWZlcSAoJChDT05GSUdfVlA5X0VOQ09ERVIpLHllcykKKyAgUkNfUlRD
X09CSlM9JChjYWxsIG9ianMsJChSQ19SVENfU1JDUykpCisgIFJDX1JUQ19PQkpTPSQoY2FsbCBv
YmpzLCQoUkNfUlRDX1NSQ1MpKQorICBPQkpTLXllcyArPSAkKFJDX1JUQ19PQkpTKQorICBMSUJT
LXllcyArPSAkKEJVSUxEX1BGWClsaWJ2cDlyYy5hICQoQlVJTERfUEZYKWxpYnZwOXJjX2cuYQor
ICAkKEJVSUxEX1BGWClsaWJ2cDlyY19nLmE6ICQoUkNfUlRDX09CSlMpCitlbmRpZgorCitpZmVx
ICgkKENPTkZJR19WUDlfRU5DT0RFUikkKENPTkZJR19SQVRFX0NUUkwpLHllc3llcykKKyAgU0lN
UExFX0VOQ09ERV9PQkpTPSQoY2FsbCBvYmpzLCQoU0lNUExFX0VOQ09ERV9TUkNTKSkKKyAgT0JK
Uy15ZXMgKz0gJChTSU1QTEVfRU5DT0RFX09CSlMpCisgIExJQlMteWVzICs9ICQoQlVJTERfUEZY
KWxpYnNpbXBsZV9lbmNvZGUuYSAkKEJVSUxEX1BGWClsaWJzaW1wbGVfZW5jb2RlX2cuYQorICAk
KEJVSUxEX1BGWClsaWJzaW1wbGVfZW5jb2RlX2cuYTogJChTSU1QTEVfRU5DT0RFX09CSlMpCiBl
bmRpZgogCitlbmRpZiAjIGlmZXEgKCQoQ09ORklHX0VYVEVSTkFMX0JVSUxEKSx5ZXMpCisKIGxp
YnZweC52ZXI6ICQoY2FsbCBlbmFibGVkLENPREVDX0VYUE9SVFMpCiAJQGVjaG8gIiAgICBbQ1JF
QVRFXSAkQCIKIAkkKHFleGVjKWVjaG8gInsgZ2xvYmFsOiIgPiAkQApAQCAtMzUxLDEzICs0MjAs
MTMgQEAgaWZlcSAoJChWUFhfQVJDSF9YODYpJChWUFhfQVJDSF9YODZfNjQpLHllcykKICMgWUFT
TQogJChCVUlMRF9QRlgpdnB4X2NvbmZpZy5hc206ICQoQlVJTERfUEZYKXZweF9jb25maWcuaAog
CUBlY2hvICIgICAgW0NSRUFURV0gJEAiCi0JQGVncmVwICIjZGVmaW5lIFtBLVowLTlfXSsgWzAx
XSIgJDwgXAorCUBMQ19BTEw9QyBlZ3JlcCAiI2RlZmluZSBbQS1aMC05X10rIFswMV0iICQ8IFwK
IAkgICAgfCBhd2sgJ3twcmludCAkJDIgIiBlcXUgIiAkJDN9JyA+ICRACiBlbHNlCiBBRFMyR0FT
PSQoaWYgJChmaWx0ZXIgeWVzLCQoQ09ORklHX0dDQykpLHwgJChBU01fQ09OVkVSU0lPTikpCiAk
KEJVSUxEX1BGWCl2cHhfY29uZmlnLmFzbTogJChCVUlMRF9QRlgpdnB4X2NvbmZpZy5oCiAJQGVj
aG8gIiAgICBbQ1JFQVRFXSAkQCIKLQlAZWdyZXAgIiNkZWZpbmUgW0EtWjAtOV9dKyBbMDFdIiAk
PCBcCisJQExDX0FMTD1DIGVncmVwICIjZGVmaW5lIFtBLVowLTlfXSsgWzAxXSIgJDwgXAogCSAg
ICB8IGF3ayAne3ByaW50ICQkMiAiIEVRVSAiICQkM30nICQoQURTMkdBUykgPiAkQAogCUBlY2hv
ICIgICAgICAgIEVORCIgJChBRFMyR0FTKSA+PiAkQAogQ0xFQU4tT0JKUyArPSAkKEJVSUxEX1BG
WCl2cHhfY29uZmlnLmFzbQpAQCAtMzg3LDMxICs0NTYsNTUgQEAgaWZlcSAoJChDT05GSUdfVU5J
VF9URVNUUykseWVzKQogTElCVlBYX1RFU1RfREFUQV9QQVRIID89IC4KIAogaW5jbHVkZSAkKFNS
Q19QQVRIX0JBUkUpL3Rlc3QvdGVzdC5tawotTElCVlBYX1RFU1RfU1JDUz0kKGFkZHByZWZpeCB0
ZXN0LywkKGNhbGwgZW5hYmxlZCxMSUJWUFhfVEVTVF9TUkNTKSkKKworIyBhZGRwcmVmaXhfY2xl
YW4gYmVoYXZlcyBsaWtlIGFkZHByZWZpeCBpZiB0aGUgdGFyZ2V0IGRvZXNuJ3Qgc3RhcnQgd2l0
aCAiLi4vIgorIyBIb3dldmVyLCBpZiB0aGUgdGFyZ2V0IHN0YXJ0cyB3aXRoICIuLi8iLCBpbnN0
ZWFkIG9mIGFkZGluZyBwcmVmaXgsCisjIGl0IHdpbGwgcmVtb3ZlICIuLi8iLgorIyBVc2luZyBh
ZGRwcmVmaXhfY2xlYW4sIHdlIGNhbiBhdm9pZCB0d28gZGlmZmVyZW50IHRhcmdldHMgYnVpbGRp
bmcgdGhlCisjIHNhbWUgZmlsZSwgaS5lLgorIyB0ZXN0Ly4uL2l2ZmVuYy5jLmQ6IGl2ZmVuYy5v
CisjIGl2ZmVuYy5jLmQ6IGl2ZmVuYy5vCisjIE5vdGUgdGhhdCB0aGUgb3RoZXIgd2F5IHRvIHNv
bHZlIHRoaXMgcHJvYmxlbSBpcyB1c2luZyAicmVhbHBhdGgiLgorIyBUaGUgInJlYWxwYXRoIiBp
cyBzdXBwb3J0ZWQgYnkgbWFrZSAzLjgxIG9yIGxhdGVyLgorYWRkcHJlZml4X2NsZWFuPSQocGF0
c3Vic3QgJCgxKS4uLyUsJSwkKGFkZHByZWZpeCAkKDEpLCAkKDIpKSkKK0xJQlZQWF9URVNUX1NS
Q1M9JChjYWxsIGFkZHByZWZpeF9jbGVhbix0ZXN0LywkKGNhbGwgZW5hYmxlZCxMSUJWUFhfVEVT
VF9TUkNTKSkKKwogTElCVlBYX1RFU1RfQklOPS4vdGVzdF9saWJ2cHgkKEVYRV9TRlgpCiBMSUJW
UFhfVEVTVF9EQVRBPSQoYWRkcHJlZml4ICQoTElCVlBYX1RFU1RfREFUQV9QQVRIKS8sXAogICAg
ICAgICAgICAgICAgICAgICAgJChjYWxsIGVuYWJsZWQsTElCVlBYX1RFU1RfREFUQSkpCiBsaWJ2
cHhfdGVzdF9kYXRhX3VybD1odHRwczovL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZG93bmxvYWRz
LndlYm1wcm9qZWN0Lm9yZy90ZXN0X2RhdGEvbGlidnB4LyQoMSkKIAogVEVTVF9JTlRSQV9QUkVE
X1NQRUVEX0JJTj0uL3Rlc3RfaW50cmFfcHJlZF9zcGVlZCQoRVhFX1NGWCkKLVRFU1RfSU5UUkFf
UFJFRF9TUEVFRF9TUkNTPSQoYWRkcHJlZml4IHRlc3QvLCQoY2FsbCBlbmFibGVkLFRFU1RfSU5U
UkFfUFJFRF9TUEVFRF9TUkNTKSkKK1RFU1RfSU5UUkFfUFJFRF9TUEVFRF9TUkNTPSQoY2FsbCBh
ZGRwcmVmaXhfY2xlYW4sdGVzdC8sXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgJChjYWxs
IGVuYWJsZWQsVEVTVF9JTlRSQV9QUkVEX1NQRUVEX1NSQ1MpKQogVEVTVF9JTlRSQV9QUkVEX1NQ
RUVEX09CSlMgOj0gJChzb3J0ICQoY2FsbCBvYmpzLCQoVEVTVF9JTlRSQV9QUkVEX1NQRUVEX1NS
Q1MpKSkKIAorUkNfSU5URVJGQUNFX1RFU1RfQklOPS4vdGVzdF9yY19pbnRlcmZhY2UkKEVYRV9T
RlgpCitSQ19JTlRFUkZBQ0VfVEVTVF9TUkNTPSQoY2FsbCBhZGRwcmVmaXhfY2xlYW4sdGVzdC8s
XAorICAgICAgICAgICAgICAgICAgICAgICAkKGNhbGwgZW5hYmxlZCxSQ19JTlRFUkZBQ0VfVEVT
VF9TUkNTKSkKK1JDX0lOVEVSRkFDRV9URVNUX09CSlMgOj0gJChzb3J0ICQoY2FsbCBvYmpzLCQo
UkNfSU5URVJGQUNFX1RFU1RfU1JDUykpKQorCitTSU1QTEVfRU5DT0RFX1RFU1RfQklOPS4vdGVz
dF9zaW1wbGVfZW5jb2RlJChFWEVfU0ZYKQorU0lNUExFX0VOQ09ERV9URVNUX1NSQ1M9JChjYWxs
IGFkZHByZWZpeF9jbGVhbix0ZXN0LyxcCisgICAgICAgICAgICAgICAgICAgICAgICAkKGNhbGwg
ZW5hYmxlZCxTSU1QTEVfRU5DT0RFX1RFU1RfU1JDUykpCitTSU1QTEVfRU5DT0RFX1RFU1RfT0JK
UyA6PSAkKHNvcnQgJChjYWxsIG9ianMsJChTSU1QTEVfRU5DT0RFX1RFU1RfU1JDUykpKQorCiBs
aWJ2cHhfdGVzdF9zcmNzLnR4dDoKIAlAZWNobyAiICAgIFtDUkVBVEVdICRAIgogCUBlY2hvICQo
TElCVlBYX1RFU1RfU1JDUykgfCB4YXJncyAtbjEgZWNobyB8IExDX0FMTD1DIHNvcnQgLXUgPiAk
QAogQ0xFQU4tT0JKUyArPSBsaWJ2cHhfdGVzdF9zcmNzLnR4dAogCisjIEF0dGVtcHQgdG8gZG93
bmxvYWQgdGhlIGZpbGUgdXNpbmcgY3VybCwgcmV0cnlpbmcgb25jZSBpZiBpdCBmYWlscyBmb3Ig
YQorIyBwYXJ0aWFsIGZpbGUgKDE4KS4KICQoTElCVlBYX1RFU1RfREFUQSk6ICQoU1JDX1BBVEhf
QkFSRSkvdGVzdC90ZXN0LWRhdGEuc2hhMQogCUBlY2hvICIgICAgW0RPV05MT0FEXSAkQCIKLQkj
IEF0dGVtcHQgdG8gZG93bmxvYWQgdGhlIGZpbGUgdXNpbmcgY3VybCwgcmV0cnlpbmcgb25jZSBp
ZiBpdCBmYWlscyBmb3IgYQotCSMgcGFydGlhbCBmaWxlICgxOCkuCiAJJChxZXhlYykoIFwKIAkg
IHRyYXAgJ3JtIC1mICRAJyBJTlQgVEVSTTsgXAotCSAgY3VybD0iY3VybCAtLXJldHJ5IDEgLUwg
LW8gJEAgJChjYWxsIGxpYnZweF90ZXN0X2RhdGFfdXJsLCQoQEYpKSI7IFwKLQkgICQkY3VybDsg
XAotCSAgY2FzZSAiJCQ/IiBpbiBcCi0JICAgIDE4KSAkJGN1cmwgLUMgLTs7IFwKKwkgIGN1cmw9
ImN1cmwgLVMgLXMgLS1yZXRyeSAxIC1MIC1vICRAICQoY2FsbCBsaWJ2cHhfdGVzdF9kYXRhX3Vy
bCwkKEBGKSkiOyBcCisJICAkJGN1cmw7IHJldD0kJD87IFwKKwkgIGNhc2UgIiQkcmV0IiBpbiBc
CisJICAgIDE4KSAkJGN1cmwgLUMgLSA7OyBcCisJICAgICopIGV4aXQgJCRyZXQgOzsgXAogCSAg
ZXNhYyBcCiAJKQogCkBAIC00ODYsNiArNTc5LDI1IEBAIHRlc3RfaW50cmFfcHJlZF9zcGVlZC4k
KFZDUFJPSl9TRlgpOiAkKFRFU1RfSU5UUkFfUFJFRF9TUEVFRF9TUkNTKSB2cHguJChWQ1BST0pf
CiAgICAgICAgICAgICAtSS4gLUkiJChTUkNfUEFUSF9CQVJFKS90aGlyZF9wYXJ0eS9nb29nbGV0
ZXN0L3NyYy9pbmNsdWRlIiBcCiAgICAgICAgICAgICAtTC4gLWwkKENPREVDX0xJQikgLWwkKEdU
RVNUX0xJQikgJF4KIGVuZGlmICAjIFRFU1RfSU5UUkFfUFJFRF9TUEVFRAorCitpZm5lcSAoJChz
dHJpcCAkKFJDX0lOVEVSRkFDRV9URVNUX09CSlMpKSwpCitQUk9KRUNUUy0kKENPTkZJR19NU1ZT
KSArPSB0ZXN0X3JjX2ludGVyZmFjZS4kKFZDUFJPSl9TRlgpCit0ZXN0X3JjX2ludGVyZmFjZS4k
KFZDUFJPSl9TRlgpOiAkKFJDX0lOVEVSRkFDRV9URVNUX1NSQ1MpIHZweC4kKFZDUFJPSl9TRlgp
IFwKKwl2cDlyYy4kKFZDUFJPSl9TRlgpIGd0ZXN0LiQoVkNQUk9KX1NGWCkKKwlAZWNobyAiICAg
IFtDUkVBVEVdICRAIgorCSQocWV4ZWMpJChHRU5fVkNQUk9KKSBcCisgICAgICAgICAgICAtLWV4
ZSBcCisgICAgICAgICAgICAtLXRhcmdldD0kKFRPT0xDSEFJTikgXAorICAgICAgICAgICAgLS1u
YW1lPXRlc3RfcmNfaW50ZXJmYWNlIFwKKyAgICAgICAgICAgIC1EX1ZBUklBRElDX01BWD0xMCBc
CisgICAgICAgICAgICAtLXByb2otZ3VpZD0zMDQ1OEY4OC0xQkM2LTQ2ODktQjQxQy01MEYzNzM3
QUFCMjcgXAorICAgICAgICAgICAgLS12ZXI9JChDT05GSUdfVlNfVkVSU0lPTikgXAorICAgICAg
ICAgICAgLS1zcmMtcGF0aC1iYXJlPSIkKFNSQ19QQVRIX0JBUkUpIiBcCisgICAgICAgICAgICAk
KGlmICQoQ09ORklHX1NUQVRJQ19NU1ZDUlQpLC0tc3RhdGljLWNydCkgXAorICAgICAgICAgICAg
LS1vdXQ9JEAgJChJTlRFUk5BTF9DRkxBR1MpICQoQ0ZMQUdTKSBcCisgICAgICAgICAgICAtSS4g
LUkiJChTUkNfUEFUSF9CQVJFKS90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlIiBc
CisgICAgICAgICAgICAtTC4gLWwkKENPREVDX0xJQikgLWwkKFJDX1JUQ19MSUIpIC1sJChHVEVT
VF9MSUIpICReCitlbmRpZiAgIyBSQ19JTlRFUkZBQ0VfVEVTVAogZW5kaWYKIGVsc2UKIApAQCAt
NTI3LDYgKzYzOSwzMCBAQCAkKGV2YWwgJChjYWxsIGxpbmtlcnh4X3RlbXBsYXRlLCQoVEVTVF9J
TlRSQV9QUkVEX1NQRUVEX0JJTiksIFwKICAgICAgICAgICAgICAgLUwuIC1sdnB4IC1sZ3Rlc3Qg
JChleHRyYWxpYnMpIC1sbSkpCiBlbmRpZiAgIyBURVNUX0lOVFJBX1BSRURfU1BFRUQKIAoraWZu
ZXEgKCQoc3RyaXAgJChSQ19JTlRFUkZBQ0VfVEVTVF9PQkpTKSksKQorJChSQ19JTlRFUkZBQ0Vf
VEVTVF9PQkpTKSAkKFJDX0lOVEVSRkFDRV9URVNUX09CSlM6Lm89LmQpOiBcCisgIENYWEZMQUdT
ICs9ICQoR1RFU1RfSU5DTFVERVMpCitPQkpTLXllcyArPSAkKFJDX0lOVEVSRkFDRV9URVNUX09C
SlMpCitCSU5TLXllcyArPSAkKFJDX0lOVEVSRkFDRV9URVNUX0JJTikKKworJChSQ19JTlRFUkZB
Q0VfVEVTVF9CSU4pOiAkKFRFU1RfTElCUykgbGlidnA5cmMuYQorJChldmFsICQoY2FsbCBsaW5r
ZXJ4eF90ZW1wbGF0ZSwkKFJDX0lOVEVSRkFDRV9URVNUX0JJTiksIFwKKyAgICAgICAgICAgICAg
JChSQ19JTlRFUkZBQ0VfVEVTVF9PQkpTKSBcCisgICAgICAgICAgICAgIC1MLiAtbHZweCAtbGd0
ZXN0IC1sdnA5cmMgJChleHRyYWxpYnMpIC1sbSkpCitlbmRpZiAgIyBSQ19JTlRFUkZBQ0VfVEVT
VAorCitpZm5lcSAoJChzdHJpcCAkKFNJTVBMRV9FTkNPREVfVEVTVF9PQkpTKSksKQorJChTSU1Q
TEVfRU5DT0RFX1RFU1RfT0JKUykgJChTSU1QTEVfRU5DT0RFX1RFU1RfT0JKUzoubz0uZCk6IFwK
KyAgQ1hYRkxBR1MgKz0gJChHVEVTVF9JTkNMVURFUykKK09CSlMteWVzICs9ICQoU0lNUExFX0VO
Q09ERV9URVNUX09CSlMpCitCSU5TLXllcyArPSAkKFNJTVBMRV9FTkNPREVfVEVTVF9CSU4pCisK
KyQoU0lNUExFX0VOQ09ERV9URVNUX0JJTik6ICQoVEVTVF9MSUJTKSBsaWJzaW1wbGVfZW5jb2Rl
LmEKKyQoZXZhbCAkKGNhbGwgbGlua2VyeHhfdGVtcGxhdGUsJChTSU1QTEVfRU5DT0RFX1RFU1Rf
QklOKSwgXAorICAgICAgICAgICAgICAkKFNJTVBMRV9FTkNPREVfVEVTVF9PQkpTKSBcCisgICAg
ICAgICAgICAgIC1MLiAtbHNpbXBsZV9lbmNvZGUgLWx2cHggLWxndGVzdCAkKGV4dHJhbGlicykg
LWxtKSkKK2VuZGlmICAjIFNJTVBMRV9FTkNPREVfVEVTVAorCiBlbmRpZiAgIyBDT05GSUdfVU5J
VF9URVNUUwogCiAjIEluc3RhbGwgdGVzdCBzb3VyY2VzIG9ubHkgaWYgY29kZWMgc291cmNlIGlz
IGluY2x1ZGVkCkBAIC01MzQsNiArNjcwLDcgQEAgSU5TVEFMTC1TUkNTLSQoQ09ORklHX0NPREVD
X1NSQ1MpICs9ICQocGF0c3Vic3QgJChTUkNfUEFUSF9CQVJFKS8lLCUsXAogICAgICQoc2hlbGwg
ZmluZCAkKFNSQ19QQVRIX0JBUkUpL3RoaXJkX3BhcnR5L2dvb2dsZXRlc3QgLXR5cGUgZikpCiBJ
TlNUQUxMLVNSQ1MtJChDT05GSUdfQ09ERUNfU1JDUykgKz0gJChMSUJWUFhfVEVTVF9TUkNTKQog
SU5TVEFMTC1TUkNTLSQoQ09ORklHX0NPREVDX1NSQ1MpICs9ICQoVEVTVF9JTlRSQV9QUkVEX1NQ
RUVEX1NSQ1MpCitJTlNUQUxMLVNSQ1MtJChDT05GSUdfQ09ERUNfU1JDUykgKz0gJChSQ19JTlRF
UkZBQ0VfVEVTVF9TUkNTKQogCiBkZWZpbmUgdGVzdF9zaGFyZF90ZW1wbGF0ZQogdGVzdDo6IHRl
c3Rfc2hhcmQuJCgxKQpAQCAtNTc0LDYgKzcxMSw3IEBAIGVuZGlmCiAKICMjIFVwZGF0ZSB0aGUg
Z2xvYmFsIHNyYyBsaXN0CiBTUkNTICs9ICQoQ09ERUNfU1JDUykgJChMSUJWUFhfVEVTVF9TUkNT
KSAkKEdURVNUX1NSQ1MpCitTUkNTICs9ICQoUkNfSU5URVJGQUNFX1RFU1RfU1JDUykKIAogIyMK
ICMjIHZweGRlYy92cHhlbmMgdGVzdHMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYWN0
aXZlX21hcF9yZWZyZXNoX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYWN0aXZlX21hcF9yZWZy
ZXNoX3Rlc3QuY2MKaW5kZXggYTk4NWVkNGYxMTkwNGI5ZTE5ZmFkZTBkOTc2OWYyZDQ4NmUxZmNk
Yi4uNjhkODg1NmVhYTZmMjlmNDVhOWQwNjk3NjlkYTAwNTdlNTk2YjcwYiAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90ZXN0L2FjdGl2ZV9tYXBfcmVmcmVzaF90ZXN0LmNjCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC9hY3RpdmVfbWFwX3JlZnJlc2hfdGVzdC5jYwpAQCAtODAsNyArODAsNyBAQCBjbGFz
cyBBY3RpdmVNYXBSZWZyZXNoVGVzdAogICAgIH0gZWxzZSBpZiAodmlkZW8tPmZyYW1lKCkgPj0g
MiAmJiB2aWRlby0+aW1nKCkpIHsKICAgICAgIHZweF9pbWFnZV90ICpjdXJyZW50ID0gdmlkZW8t
PmltZygpOwogICAgICAgdnB4X2ltYWdlX3QgKnByZXZpb3VzID0geTRtX2hvbGRlcl8tPmltZygp
OwotICAgICAgQVNTRVJUX1RSVUUocHJldmlvdXMgIT0gTlVMTCk7CisgICAgICBBU1NFUlRfTkUo
cHJldmlvdXMsIG51bGxwdHIpOwogICAgICAgdnB4X2FjdGl2ZV9tYXBfdCBtYXAgPSB2cHhfYWN0
aXZlX21hcF90KCk7CiAgICAgICBjb25zdCBpbnQgd2lkdGggPSBzdGF0aWNfY2FzdDxpbnQ+KGN1
cnJlbnQtPmRfdyk7CiAgICAgICBjb25zdCBpbnQgaGVpZ2h0ID0gc3RhdGljX2Nhc3Q8aW50Pihj
dXJyZW50LT5kX2gpOwpAQCAtMTIyLDcgKzEyMiw3IEBAIFRFU1RfUChBY3RpdmVNYXBSZWZyZXNo
VGVzdCwgVGVzdCkgewogICBBU1NFUlRfTk9fRkFUQUxfRkFJTFVSRShSdW5Mb29wKCZ2aWRlbykp
OwogfQogCi1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKEFjdGl2ZU1hcFJlZnJlc2hUZXN0LAot
ICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0
OjprUmVhbFRpbWUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdl
KDUsIDYpKTsKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKEFjdGl2ZU1hcFJlZnJlc2hUZXN0
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2cHhf
dGVzdDo6a1JlYWxUaW1lKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6
UmFuZ2UoNSwgNikpOwogfSAgLy8gbmFtZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rl
c3QvYWN0aXZlX21hcF90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2FjdGl2ZV9tYXBfdGVzdC5j
YwppbmRleCAwMzUzNmM4MWVmNDgwNGRkZWIxMjNhMGYwNmZkZjYwZjQwM2FkZDg4Li45YzU1Zjlh
OGIxNzg0NTFlNTFlOGVmYzg1OTg1MzY4MTg3OGJlMGU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3Rlc3QvYWN0aXZlX21hcF90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9hY3RpdmVfbWFw
X3Rlc3QuY2MKQEAgLTYyLDcgKzYyLDcgQEAgY2xhc3MgQWN0aXZlTWFwVGVzdAogICAgICAgdnB4
X2FjdGl2ZV9tYXBfdCBtYXAgPSB2cHhfYWN0aXZlX21hcF90KCk7CiAgICAgICBtYXAuY29scyA9
IChrV2lkdGggKyAxNSkgLyAxNjsKICAgICAgIG1hcC5yb3dzID0gKGtIZWlnaHQgKyAxNSkgLyAx
NjsKLSAgICAgIG1hcC5hY3RpdmVfbWFwID0gTlVMTDsKKyAgICAgIG1hcC5hY3RpdmVfbWFwID0g
bnVsbHB0cjsKICAgICAgIGVuY29kZXItPkNvbnRyb2woVlA4RV9TRVRfQUNUSVZFTUFQLCAmbWFw
KTsKICAgICB9CiAgIH0KQEAgLTg1LDcgKzg1LDcgQEAgVEVTVF9QKEFjdGl2ZU1hcFRlc3QsIFRl
c3QpIHsKICAgQVNTRVJUX05PX0ZBVEFMX0ZBSUxVUkUoUnVuTG9vcCgmdmlkZW8pKTsKIH0KIAot
VlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShBY3RpdmVNYXBUZXN0LAotICAgICAgICAgICAgICAg
ICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0OjprUmVhbFRpbWUpLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDAsIDkpKTsKK1ZQOV9J
TlNUQU5USUFURV9URVNUX1NVSVRFKEFjdGl2ZU1hcFRlc3QsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0OjprUmVhbFRpbWUpLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgwLCA5KSk7CiB9ICAvLyBu
YW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9hZGRfbm9pc2VfdGVzdC5jYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdGVzdC9hZGRfbm9pc2VfdGVzdC5jYwppbmRleCAwZDE4OTNjNTI0YTZjOGI3
MzM1NTA5YThhYmQxNWE5ZjA2YzlhY2Q1Li4yNWRlNDI3OWMyODQzNzc3NDVhYjdjZWFlZWJhZjc5
YzA3ZDdhZGM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYWRkX25vaXNlX3Rlc3QuY2MK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90ZXN0L2FkZF9ub2lzZV90ZXN0LmNjCkBAIC01Myw3ICs1Myw3IEBA
IFRFU1RfUChBZGROb2lzZVRlc3QsIENoZWNrTm9pc2VBZGRlZCkgewogICBjb25zdCBpbnQgY2xh
bXAgPSB2cHhfc2V0dXBfbm9pc2UoR0VUX1BBUkFNKDApLCBub2lzZSwga05vaXNlU2l6ZSk7CiAg
IHVpbnQ4X3QgKmNvbnN0IHMgPQogICAgICAgcmVpbnRlcnByZXRfY2FzdDx1aW50OF90ICo+KHZw
eF9jYWxsb2MoaW1hZ2Vfc2l6ZSwgc2l6ZW9mKCpzKSkpOwotICBBU1NFUlRfVFJVRShzICE9IE5V
TEwpOworICBBU1NFUlRfTkUocywgbnVsbHB0cik7CiAgIG1lbXNldChzLCA5OSwgaW1hZ2Vfc2l6
ZSAqIHNpemVvZigqcykpOwogCiAgIEFTTV9SRUdJU1RFUl9TVEFURV9DSEVDSygKQEAgLTEwNiw4
ICsxMDYsOCBAQCBURVNUX1AoQWRkTm9pc2VUZXN0LCBDaGVja0N2c0Fzc2VtYmx5KSB7CiAKICAg
dWludDhfdCAqY29uc3QgcyA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDhfdCAqPih2cHhfY2FsbG9j
KGltYWdlX3NpemUsIDEpKTsKICAgdWludDhfdCAqY29uc3QgZCA9IHJlaW50ZXJwcmV0X2Nhc3Q8
dWludDhfdCAqPih2cHhfY2FsbG9jKGltYWdlX3NpemUsIDEpKTsKLSAgQVNTRVJUX1RSVUUocyAh
PSBOVUxMKTsKLSAgQVNTRVJUX1RSVUUoZCAhPSBOVUxMKTsKKyAgQVNTRVJUX05FKHMsIG51bGxw
dHIpOworICBBU1NFUlRfTkUoZCwgbnVsbHB0cik7CiAKICAgbWVtc2V0KHMsIDk5LCBpbWFnZV9z
aXplKTsKICAgbWVtc2V0KGQsIDk5LCBpbWFnZV9zaXplKTsKQEAgLTEyOSwyMCArMTI5LDIwIEBA
IFRFU1RfUChBZGROb2lzZVRlc3QsIENoZWNrQ3ZzQXNzZW1ibHkpIHsKIAogdXNpbmcgc3RkOjpt
YWtlX3R1cGxlOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1Rf
U1VJVEVfUCgKICAgICBDLCBBZGROb2lzZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFr
ZV90dXBsZSgzLjI1LCB2cHhfcGxhbmVfYWRkX25vaXNlX2MpLAogICAgICAgICAgICAgICAgICAg
ICAgIG1ha2VfdHVwbGUoNC40LCB2cHhfcGxhbmVfYWRkX25vaXNlX2MpKSk7CiAKICNpZiBIQVZF
X1NTRTIKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9Q
KAogICAgIFNTRTIsIEFkZE5vaXNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1
cGxlKDMuMjUsIHZweF9wbGFuZV9hZGRfbm9pc2Vfc3NlMiksCiAgICAgICAgICAgICAgICAgICAg
ICAgbWFrZV90dXBsZSg0LjQsIHZweF9wbGFuZV9hZGRfbm9pc2Vfc3NlMikpKTsKICNlbmRpZgog
CiAjaWYgSEFWRV9NU0EKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVT
VF9TVUlURV9QKAogICAgIE1TQSwgQWRkTm9pc2VUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVz
KG1ha2VfdHVwbGUoMy4yNSwgdnB4X3BsYW5lX2FkZF9ub2lzZV9tc2EpLAogICAgICAgICAgICAg
ICAgICAgICAgIG1ha2VfdHVwbGUoNC40LCB2cHhfcGxhbmVfYWRkX25vaXNlX21zYSkpKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9hbHRfcmVmX2FxX3NlZ21lbnRfdGVzdC5jYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC9hbHRfcmVmX2FxX3NlZ21lbnRfdGVzdC5jYwppbmRleCA2ZTAzYTQ3ODUy
NWY5YWIyOTBkZTZmZjRjZTk2NzVmYmQzYjc1N2QyLi4wMGEwMGUyN2M1NTZkNDY0MWE4YTdkZGFl
MDY2YWNkZTFiNzY4ODY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYWx0X3JlZl9hcV9z
ZWdtZW50X3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2FsdF9yZWZfYXFfc2VnbWVudF90
ZXN0LmNjCkBAIC0xNTAsOCArMTUwLDggQEAgVEVTVF9QKEFsdFJlZkFxU2VnbWVudFRlc3QsIFRl
c3ROb01pc01hdGNoQWx0UmVmQVE0KSB7CiAgIEFTU0VSVF9OT19GQVRBTF9GQUlMVVJFKFJ1bkxv
b3AoJnZpZGVvKSk7CiB9CiAKLVZQOV9JTlNUQU5USUFURV9URVNUX0NBU0UoQWx0UmVmQXFTZWdt
ZW50VGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoOjps
aWJ2cHhfdGVzdDo6a09uZVBhc3NHb29kLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA6OmxpYnZweF90ZXN0OjprVHdvUGFzc0dvb2QpLAotICAgICAgICAgICAg
ICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDIsIDUpKTsKK1ZQOV9JTlNUQU5USUFURV9U
RVNUX1NVSVRFKEFsdFJlZkFxU2VnbWVudFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0OjprT25lUGFzc0dvb2QsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6OmxpYnZweF90ZXN0OjprVHdv
UGFzc0dvb2QpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgy
LCA1KSk7CiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9hbHRy
ZWZfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9hbHRyZWZfdGVzdC5jYwppbmRleCAwMTE5YmU0
ZGEwYWIxNmIwNjI0OWRkZjYwZWU5NzQ2NTJhMWRjZDRkLi42OWJjZWY3NzRlMjNlZWEzMjc5MjY5
NDIxMGNmMDhkZDlmOGQ1ZTdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYWx0cmVmX3Rl
c3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2FsdHJlZl90ZXN0LmNjCkBAIC02Myw4ICs2Myw4
IEBAIFRFU1RfUChBbHRSZWZUZXN0LCBNb25vdG9uaWNUaW1lc3RhbXBzKSB7CiAgIEVYUEVDVF9H
RShhbHRyZWZfY291bnQoKSwgMSk7CiB9CiAKLVZQOF9JTlNUQU5USUFURV9URVNUX0NBU0UoQWx0
UmVmVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZShrTG9v
a0FoZWFkTWluLCBrTG9va0FoZWFkTWF4KSk7CitWUDhfSU5TVEFOVElBVEVfVEVTVF9TVUlURShB
bHRSZWZUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZShr
TG9va0FoZWFkTWluLCBrTG9va0FoZWFkTWF4KSk7CiAKICNlbmRpZiAgLy8gQ09ORklHX1ZQOF9F
TkNPREVSCiAKQEAgLTE0MiwxMSArMTQyLDExIEBAIFRFU1RfUChBbHRSZWZGb3JjZWRLZXlUZXN0
TGFyZ2UsIEZvcmNlZEZyYW1lSXNLZXkpIHsKICAgfQogfQogCi1WUDhfSU5TVEFOVElBVEVfVEVT
VF9DQVNFKEFsdFJlZkZvcmNlZEtleVRlc3RMYXJnZSwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgOjp0ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a09uZVBhc3NHb29kKSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgwLCA5KSk7CitWUDhfSU5TVEFO
VElBVEVfVEVTVF9TVUlURShBbHRSZWZGb3JjZWRLZXlUZXN0TGFyZ2UsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0OjprT25lUGFzc0dv
b2QpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgwLCA5KSk7
CiAKLVZQOV9JTlNUQU5USUFURV9URVNUX0NBU0UoQWx0UmVmRm9yY2VkS2V5VGVzdExhcmdlLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0
OjprT25lUGFzc0dvb2QpLAotICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJh
bmdlKDAsIDkpKTsKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKEFsdFJlZkZvcmNlZEtleVRl
c3RMYXJnZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKDo6
bGlidnB4X3Rlc3Q6OmtPbmVQYXNzR29vZCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6
OnRlc3Rpbmc6OlJhbmdlKDAsIDkpKTsKIH0gIC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L2FuZHJvaWQvUkVBRE1FIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2FuZHJvaWQvUkVB
RE1FCmluZGV4IGY2N2ZlYTUwYzdiOGE4MGNkNGU1ODIyZDFhNTg2NzgwOGI2ZmM0OTguLjBjZDMw
Nzc5ZDQxZWY5ODIzODBmYTU5MzY3NzAxYjcyOGU1MGMwZDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC9hbmRyb2lkL1JFQURNRQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYW5kcm9pZC9SRUFE
TUUKQEAgLTE2LDcgKzE2LDcgQEAgTm90ZTogQm90aCBhZGIgYW5kIG5kay1idWlsZCBhcmUgYXZh
aWxhYmxlIGF0OgogCiAzKSBSdW4gZ2V0X2ZpbGVzLnB5IHRvIGRvd25sb2FkIHRoZSB0ZXN0IGZp
bGVzOgogcHl0aG9uIGdldF9maWxlcy5weSAtaSAvcGF0aC90by90ZXN0LWRhdGEuc2hhMSAtbyAv
cGF0aC90by9wdXQvZmlsZXMgXAotICAtdSBodHRwOi8vZG93bmxvYWRzLndlYm1wcm9qZWN0Lm9y
Zy90ZXN0X2RhdGEvbGlidnB4CisgIC11IGh0dHBzOi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9k
b3dubG9hZHMud2VibXByb2plY3Qub3JnL3Rlc3RfZGF0YS9saWJ2cHgKIAogNCkgVHJhbnNmZXIg
ZmlsZXMgdG8gZGV2aWNlIHVzaW5nIGFkYi4gRW5zdXJlIHlvdSBoYXZlIHByb3BlciBwZXJtaXNz
aW9ucyBmb3IKIHRoZSB0YXJnZXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9hcV9zZWdt
ZW50X3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYXFfc2VnbWVudF90ZXN0LmNjCmluZGV4IDNj
NDA1M2JlN2YzMWViZWZlMWFiMWM0Mjg1YjllOGE3MDg2YTQzZWMuLjJjYmM5OTFkMGMzMjc1Nzcw
YTY0ZDhjNGM2MDQ3NDllMmY4YWE3NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9hcV9z
ZWdtZW50X3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2FxX3NlZ21lbnRfdGVzdC5jYwpA
QCAtMTAyLDggKzEwMiw4IEBAIFRFU1RfUChBcVNlZ21lbnRUZXN0LCBUZXN0Tm9NaXNNYXRjaEFR
MykgewogICBBU1NFUlRfTk9fRkFUQUxfRkFJTFVSRShSdW5Mb29wKCZ2aWRlbykpOwogfQogCi1W
UDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKEFxU2VnbWVudFRlc3QsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKDo6bGlidnB4X3Rlc3Q6OmtSZWFsVGltZSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOjpsaWJ2cHhfdGVzdDo6
a09uZVBhc3NHb29kKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5n
ZSgzLCA5KSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURShBcVNlZ21lbnRUZXN0LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6
a1JlYWxUaW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
OjpsaWJ2cHhfdGVzdDo6a09uZVBhc3NHb29kKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
IDo6dGVzdGluZzo6UmFuZ2UoMywgOSkpOwogfSAgLy8gbmFtZXNwYWNlCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3Rlc3QvYXZnX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYXZnX3Rlc3QuY2MK
aW5kZXggNzJlMTZmNjU3ODEzYzQ0ZGU0NjZhMjI0ZTJhODBiMTk0NGJlZTU5Yi4uMTk2NTIyY2U1
ODhhOWIwOGU1MWZmYzJiODNjZTJhZGIwNGM1Zjc4OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90
ZXN0L2F2Z190ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9hdmdfdGVzdC5jYwpAQCAtMzUs
MTIgKzM1LDEyIEBAIHRlbXBsYXRlIDx0eXBlbmFtZSBQaXhlbD4KIGNsYXNzIEF2ZXJhZ2VUZXN0
QmFzZSA6IHB1YmxpYyA6OnRlc3Rpbmc6OlRlc3QgewogIHB1YmxpYzoKICAgQXZlcmFnZVRlc3RC
YXNlKGludCB3aWR0aCwgaW50IGhlaWdodCkKLSAgICAgIDogd2lkdGhfKHdpZHRoKSwgaGVpZ2h0
XyhoZWlnaHQpLCBzb3VyY2VfZGF0YV8oTlVMTCksIHNvdXJjZV9zdHJpZGVfKDApLAotICAgICAg
ICBiaXRfZGVwdGhfKDgpIHt9CisgICAgICA6IHdpZHRoXyh3aWR0aCksIGhlaWdodF8oaGVpZ2h0
KSwgc291cmNlX2RhdGFfKG51bGxwdHIpLAorICAgICAgICBzb3VyY2Vfc3RyaWRlXygwKSwgYml0
X2RlcHRoXyg4KSB7fQogCiAgIHZpcnR1YWwgdm9pZCBUZWFyRG93bigpIHsKICAgICB2cHhfZnJl
ZShzb3VyY2VfZGF0YV8pOwotICAgIHNvdXJjZV9kYXRhXyA9IE5VTEw7CisgICAgc291cmNlX2Rh
dGFfID0gbnVsbHB0cjsKICAgICBsaWJ2cHhfdGVzdDo6Q2xlYXJTeXN0ZW1TdGF0ZSgpOwogICB9
CiAKQEAgLTUyLDcgKzUyLDcgQEAgY2xhc3MgQXZlcmFnZVRlc3RCYXNlIDogcHVibGljIDo6dGVz
dGluZzo6VGVzdCB7CiAgIHZpcnR1YWwgdm9pZCBTZXRVcCgpIHsKICAgICBzb3VyY2VfZGF0YV8g
PSByZWludGVycHJldF9jYXN0PFBpeGVsICo+KAogICAgICAgICB2cHhfbWVtYWxpZ24oa0RhdGFB
bGlnbm1lbnQsIGtEYXRhQmxvY2tTaXplICogc2l6ZW9mKHNvdXJjZV9kYXRhX1swXSkpKTsKLSAg
ICBBU1NFUlRfVFJVRShzb3VyY2VfZGF0YV8gIT0gTlVMTCk7CisgICAgQVNTRVJUX05FKHNvdXJj
ZV9kYXRhXywgbnVsbHB0cik7CiAgICAgc291cmNlX3N0cmlkZV8gPSAod2lkdGhfICsgMzEpICYg
fjMxOwogICAgIGJpdF9kZXB0aF8gPSA4OwogICAgIHJuZF8uUmVzZXQoQUNNUmFuZG9tOjpEZXRl
cm1pbmlzdGljU2VlZCgpKTsKQEAgLTE1Miw2ICsxNTIsNyBAQCBjbGFzcyBBdmVyYWdlVGVzdEhC
RCA6IHB1YmxpYyBBdmVyYWdlVGVzdEJhc2U8dWludDE2X3Q+LAogfTsKICNlbmRpZiAgLy8gQ09O
RklHX1ZQOV9ISUdIQklUREVQVEgKIAorI2lmIEhBVkVfTkVPTiB8fCBIQVZFX1NTRTIgfHwgSEFW
RV9NU0EKIHR5cGVkZWYgdm9pZCAoKkludFByb1Jvd0Z1bmMpKGludDE2X3QgaGJ1ZlsxNl0sIHVp
bnQ4X3QgY29uc3QgKnJlZiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGlu
dCByZWZfc3RyaWRlLCBjb25zdCBpbnQgaGVpZ2h0KTsKIApAQCAtMTYxLDcgKzE2Miw4IEBAIGNs
YXNzIEludFByb1Jvd1Rlc3QgOiBwdWJsaWMgQXZlcmFnZVRlc3RCYXNlPHVpbnQ4X3Q+LAogICAg
ICAgICAgICAgICAgICAgICAgIHB1YmxpYyA6OnRlc3Rpbmc6OldpdGhQYXJhbUludGVyZmFjZTxJ
bnRQcm9Sb3dQYXJhbT4gewogIHB1YmxpYzoKICAgSW50UHJvUm93VGVzdCgpCi0gICAgICA6IEF2
ZXJhZ2VUZXN0QmFzZSgxNiwgR0VUX1BBUkFNKDApKSwgaGJ1Zl9hc21fKE5VTEwpLCBoYnVmX2Nf
KE5VTEwpIHsKKyAgICAgIDogQXZlcmFnZVRlc3RCYXNlKDE2LCBHRVRfUEFSQU0oMCkpLCBoYnVm
X2FzbV8obnVsbHB0ciksCisgICAgICAgIGhidWZfY18obnVsbHB0cikgewogICAgIGFzbV9mdW5j
XyA9IEdFVF9QQVJBTSgxKTsKICAgICBjX2Z1bmNfID0gR0VUX1BBUkFNKDIpOwogICB9CkBAIC0x
NzAsNyArMTcyLDcgQEAgY2xhc3MgSW50UHJvUm93VGVzdCA6IHB1YmxpYyBBdmVyYWdlVGVzdEJh
c2U8dWludDhfdD4sCiAgIHZpcnR1YWwgdm9pZCBTZXRVcCgpIHsKICAgICBzb3VyY2VfZGF0YV8g
PSByZWludGVycHJldF9jYXN0PHVpbnQ4X3QgKj4oCiAgICAgICAgIHZweF9tZW1hbGlnbihrRGF0
YUFsaWdubWVudCwga0RhdGFCbG9ja1NpemUgKiBzaXplb2Yoc291cmNlX2RhdGFfWzBdKSkpOwot
ICAgIEFTU0VSVF9UUlVFKHNvdXJjZV9kYXRhXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoc291
cmNlX2RhdGFfLCBudWxscHRyKTsKIAogICAgIGhidWZfYXNtXyA9IHJlaW50ZXJwcmV0X2Nhc3Q8
aW50MTZfdCAqPigKICAgICAgICAgdnB4X21lbWFsaWduKGtEYXRhQWxpZ25tZW50LCBzaXplb2Yo
KmhidWZfYXNtXykgKiAxNikpOwpAQCAtMTgwLDExICsxODIsMTEgQEAgY2xhc3MgSW50UHJvUm93
VGVzdCA6IHB1YmxpYyBBdmVyYWdlVGVzdEJhc2U8dWludDhfdD4sCiAKICAgdmlydHVhbCB2b2lk
IFRlYXJEb3duKCkgewogICAgIHZweF9mcmVlKHNvdXJjZV9kYXRhXyk7Ci0gICAgc291cmNlX2Rh
dGFfID0gTlVMTDsKKyAgICBzb3VyY2VfZGF0YV8gPSBudWxscHRyOwogICAgIHZweF9mcmVlKGhi
dWZfY18pOwotICAgIGhidWZfY18gPSBOVUxMOworICAgIGhidWZfY18gPSBudWxscHRyOwogICAg
IHZweF9mcmVlKGhidWZfYXNtXyk7Ci0gICAgaGJ1Zl9hc21fID0gTlVMTDsKKyAgICBoYnVmX2Fz
bV8gPSBudWxscHRyOwogICB9CiAKICAgdm9pZCBSdW5Db21wYXJpc29uKCkgewpAQCAtMjAwLDYg
KzIwMiw3IEBAIGNsYXNzIEludFByb1Jvd1Rlc3QgOiBwdWJsaWMgQXZlcmFnZVRlc3RCYXNlPHVp
bnQ4X3Q+LAogICBpbnQxNl90ICpoYnVmX2FzbV87CiAgIGludDE2X3QgKmhidWZfY187CiB9Owor
R1RFU1RfQUxMT1dfVU5JTlNUQU5USUFURURfUEFSQU1FVEVSSVpFRF9URVNUKEludFByb1Jvd1Rl
c3QpOwogCiB0eXBlZGVmIGludDE2X3QgKCpJbnRQcm9Db2xGdW5jKSh1aW50OF90IGNvbnN0ICpy
ZWYsIGNvbnN0IGludCB3aWR0aCk7CiAKQEAgLTIyNiw2ICsyMjksOCBAQCBjbGFzcyBJbnRQcm9D
b2xUZXN0IDogcHVibGljIEF2ZXJhZ2VUZXN0QmFzZTx1aW50OF90PiwKICAgaW50MTZfdCBzdW1f
YXNtXzsKICAgaW50MTZfdCBzdW1fY187CiB9OworR1RFU1RfQUxMT1dfVU5JTlNUQU5USUFURURf
UEFSQU1FVEVSSVpFRF9URVNUKEludFByb0NvbFRlc3QpOworI2VuZGlmICAvLyBIQVZFX05FT04g
fHwgSEFWRV9TU0UyIHx8IEhBVkVfTVNBCiAKIHR5cGVkZWYgaW50ICgqU2F0ZEZ1bmMpKGNvbnN0
IHRyYW5fbG93X3QgKmNvZWZmcywgaW50IGxlbmd0aCk7CiB0eXBlZGVmIHN0ZDo6dHVwbGU8aW50
LCBTYXRkRnVuYz4gU2F0ZFRlc3RQYXJhbTsKQEAgLTIzOSw3ICsyNDQsNyBAQCBjbGFzcyBTYXRk
VGVzdCA6IHB1YmxpYyA6OnRlc3Rpbmc6OlRlc3QsCiAgICAgcm5kXy5SZXNldChBQ01SYW5kb206
OkRldGVybWluaXN0aWNTZWVkKCkpOwogICAgIHNyY18gPSByZWludGVycHJldF9jYXN0PHRyYW5f
bG93X3QgKj4oCiAgICAgICAgIHZweF9tZW1hbGlnbigxNiwgc2l6ZW9mKCpzcmNfKSAqIHNhdGRf
c2l6ZV8pKTsKLSAgICBBU1NFUlRfVFJVRShzcmNfICE9IE5VTEwpOworICAgIEFTU0VSVF9ORShz
cmNfLCBudWxscHRyKTsKICAgfQogCiAgIHZpcnR1YWwgdm9pZCBUZWFyRG93bigpIHsKQEAgLTI5
NSw4ICszMDAsOCBAQCBjbGFzcyBCbG9ja0Vycm9yVGVzdEZQCiAgICAgICAgIHZweF9tZW1hbGln
bigxNiwgc2l6ZW9mKCpjb2VmZl8pICogdHhmbV9zaXplXykpOwogICAgIGRxY29lZmZfID0gcmVp
bnRlcnByZXRfY2FzdDx0cmFuX2xvd190ICo+KAogICAgICAgICB2cHhfbWVtYWxpZ24oMTYsIHNp
emVvZigqZHFjb2VmZl8pICogdHhmbV9zaXplXykpOwotICAgIEFTU0VSVF9UUlVFKGNvZWZmXyAh
PSBOVUxMKTsKLSAgICBBU1NFUlRfVFJVRShkcWNvZWZmXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRf
TkUoY29lZmZfLCBudWxscHRyKTsKKyAgICBBU1NFUlRfTkUoZHFjb2VmZl8sIG51bGxwdHIpOwog
ICB9CiAKICAgdmlydHVhbCB2b2lkIFRlYXJEb3duKCkgewpAQCAtMzc4LDYgKzM4Myw3IEBAIFRF
U1RfUChBdmVyYWdlVGVzdEhCRCwgUmFuZG9tKSB7CiB9CiAjZW5kaWYgIC8vIENPTkZJR19WUDlf
SElHSEJJVERFUFRICiAKKyNpZiBIQVZFX05FT04gfHwgSEFWRV9TU0UyIHx8IEhBVkVfTVNBCiBU
RVNUX1AoSW50UHJvUm93VGVzdCwgTWluVmFsdWUpIHsKICAgRmlsbENvbnN0YW50KDApOwogICBS
dW5Db21wYXJpc29uKCk7CkBAIC00MDcsNiArNDEzLDcgQEAgVEVTVF9QKEludFByb0NvbFRlc3Qs
IFJhbmRvbSkgewogICBGaWxsUmFuZG9tKCk7CiAgIFJ1bkNvbXBhcmlzb24oKTsKIH0KKyNlbmRp
ZgogCiBURVNUX1AoU2F0ZExvd2JkVGVzdCwgTWluVmFsdWUpIHsKICAgY29uc3QgaW50IGtNaW4g
PSAtMzI2NDA7CkBAIC01NTcsMzggKzU2NCwzOCBAQCBURVNUX1AoQmxvY2tFcnJvclRlc3RGUCwg
RElTQUJMRURfU3BlZWQpIHsKIAogdXNpbmcgc3RkOjptYWtlX3R1cGxlOwogCi1JTlNUQU5USUFU
RV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBDLCBBdmVyYWdl
VGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAxNiwgMSwgOCwgJnZw
eF9hdmdfOHg4X2MpLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMTYsIDE2LCAx
LCA0LCAmdnB4X2F2Z180eDRfYykpKTsKIAogI2lmIENPTkZJR19WUDlfSElHSEJJVERFUFRICi1J
TlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBD
LCBBdmVyYWdlVGVzdEhCRCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAx
NiwgMSwgOCwgJnZweF9oaWdoYmRfYXZnXzh4OF9jKSwKICAgICAgICAgICAgICAgICAgICAgICBt
YWtlX3R1cGxlKDE2LCAxNiwgMSwgNCwgJnZweF9oaWdoYmRfYXZnXzR4NF9jKSkpOwogCiAjaWYg
SEFWRV9TU0UyCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJ
VEVfUCgKICAgICBTU0UyLCBBdmVyYWdlVGVzdEhCRCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyht
YWtlX3R1cGxlKDE2LCAxNiwgMSwgOCwgJnZweF9oaWdoYmRfYXZnXzh4OF9zc2UyKSwKICAgICAg
ICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDE2LCAxNiwgMSwgNCwgJnZweF9oaWdoYmRfYXZn
XzR4NF9zc2UyKSkpOwogI2VuZGlmICAvLyBIQVZFX1NTRTIKIAotSU5TVEFOVElBVEVfVEVTVF9D
QVNFX1AoQywgU2F0ZEhpZ2hiZFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rp
bmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAmdnB4X3NhdGRfYyksCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4X3NhdGRfYyksCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDI1Niwg
JnZweF9zYXRkX2MpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
bWFrZV90dXBsZSgxMDI0LCAmdnB4X3NhdGRfYykpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVf
UChDLCBTYXRkSGlnaGJkVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6
OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAmdnB4X3NhdGRfYyksCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSg2NCwgJnZweF9zYXRkX2MpLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMjU2LCAm
dnB4X3NhdGRfYyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
bWFrZV90dXBsZSgxMDI0LCAmdnB4X3NhdGRfYykpKTsKICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9I
SUdIQklUREVQVEgKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoQywgU2F0ZExvd2JkVGVzdCwK
LSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoMTYs
ICZ2cHhfc2F0ZF9jKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IG1ha2VfdHVwbGUoNjQsICZ2cHhfc2F0ZF9jKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMjU2LCAmdnB4X3NhdGRfYyksCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDEwMjQsICZ2cHhfc2F0
ZF9jKSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKEMsIFNhdGRMb3diZFRlc3QsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgxNiwgJnZw
eF9zYXRkX2MpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1h
a2VfdHVwbGUoNjQsICZ2cHhfc2F0ZF9jKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBtYWtlX3R1cGxlKDI1NiwgJnZweF9zYXRkX2MpLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMTAyNCwgJnZweF9zYXRk
X2MpKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlU
RV9QKAogICAgIEMsIEJsb2NrRXJyb3JUZXN0RlAsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFr
ZV90dXBsZSgxNiwgJnZwOV9ibG9ja19lcnJvcl9mcF9jKSwKICAgICAgICAgICAgICAgICAgICAg
ICBtYWtlX3R1cGxlKDY0LCAmdnA5X2Jsb2NrX2Vycm9yX2ZwX2MpLApAQCAtNTk2LDcgKzYwMyw3
IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAgICAgICAgICAgIG1ha2Vf
dHVwbGUoMTAyNCwgJnZwOV9ibG9ja19lcnJvcl9mcF9jKSkpOwogCiAjaWYgSEFWRV9TU0UyCi1J
TlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBT
U0UyLCBBdmVyYWdlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAx
NiwgMCwgOCwgJnZweF9hdmdfOHg4X3NzZTIpLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2Vf
dHVwbGUoMTYsIDE2LCA1LCA4LCAmdnB4X2F2Z184eDhfc3NlMiksCkBAIC02MDUsMjcgKzYxMiwy
NyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgICAgICAgICAgICAgICBtYWtl
X3R1cGxlKDE2LCAxNiwgNSwgNCwgJnZweF9hdmdfNHg0X3NzZTIpLAogICAgICAgICAgICAgICAg
ICAgICAgIG1ha2VfdHVwbGUoMzIsIDMyLCAxNSwgNCwgJnZweF9hdmdfNHg0X3NzZTIpKSk7CiAK
LUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAg
IFNTRTIsIEludFByb1Jvd1Rlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgx
NiwgJnZweF9pbnRfcHJvX3Jvd19zc2UyLCAmdnB4X2ludF9wcm9fcm93X2MpLAogICAgICAgICAg
ICAgICAgICAgICAgIG1ha2VfdHVwbGUoMzIsICZ2cHhfaW50X3Byb19yb3dfc3NlMiwgJnZweF9p
bnRfcHJvX3Jvd19jKSwKICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4
X2ludF9wcm9fcm93X3NzZTIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4
X2ludF9wcm9fcm93X2MpKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElB
VEVfVEVTVF9TVUlURV9QKAogICAgIFNTRTIsIEludFByb0NvbFRlc3QsCiAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXMobWFrZV90dXBsZSgxNiwgJnZweF9pbnRfcHJvX2NvbF9zc2UyLCAmdnB4X2ludF9w
cm9fY29sX2MpLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMzIsICZ2cHhfaW50
X3Byb19jb2xfc3NlMiwgJnZweF9pbnRfcHJvX2NvbF9jKSwKICAgICAgICAgICAgICAgICAgICAg
ICBtYWtlX3R1cGxlKDY0LCAmdnB4X2ludF9wcm9fY29sX3NzZTIsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAmdnB4X2ludF9wcm9fY29sX2MpKSk7CiAKLUlOU1RBTlRJQVRFX1RF
U1RfQ0FTRV9QKFNTRTIsIFNhdGRMb3diZFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6
OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAmdnB4X3NhdGRfc3NlMiksCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4X3Nh
dGRfc3NlMiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtl
X3R1cGxlKDI1NiwgJnZweF9zYXRkX3NzZTIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbWFrZV90dXBsZSgxMDI0LCAmdnB4X3NhdGRfc3NlMikpKTsKK0lOU1RB
TlRJQVRFX1RFU1RfU1VJVEVfUChTU0UyLCBTYXRkTG93YmRUZXN0LAorICAgICAgICAgICAgICAg
ICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoMTYsICZ2cHhfc2F0ZF9zc2Uy
KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxl
KDY0LCAmdnB4X3NhdGRfc3NlMiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgbWFrZV90dXBsZSgyNTYsICZ2cHhfc2F0ZF9zc2UyKSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDEwMjQsICZ2cHhfc2F0ZF9z
c2UyKSkpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJ
VEVfUCgKICAgICBTU0UyLCBCbG9ja0Vycm9yVGVzdEZQLAogICAgIDo6dGVzdGluZzo6VmFsdWVz
KG1ha2VfdHVwbGUoMTYsICZ2cDlfYmxvY2tfZXJyb3JfZnBfc3NlMiksCiAgICAgICAgICAgICAg
ICAgICAgICAgbWFrZV90dXBsZSg2NCwgJnZwOV9ibG9ja19lcnJvcl9mcF9zc2UyKSwKQEAgLTYz
NCwxNCArNjQxLDE0IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBIQVZF
X1NTRTIKIAogI2lmIEhBVkVfQVZYMgotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoQVZYMiwgU2F0
ZExvd2JkVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKG1h
a2VfdHVwbGUoMTYsICZ2cHhfc2F0ZF9hdngyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoNjQsICZ2cHhfc2F0ZF9hdngyKSwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMjU2LCAmdnB4X3Nh
dGRfYXZ4MiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtl
X3R1cGxlKDEwMjQsICZ2cHhfc2F0ZF9hdngyKSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9Q
KEFWWDIsIFNhdGRMb3diZFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXMobWFrZV90dXBsZSgxNiwgJnZweF9zYXRkX2F2eDIpLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoNjQsICZ2cHhfc2F0ZF9hdngy
KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxl
KDI1NiwgJnZweF9zYXRkX2F2eDIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIG1ha2VfdHVwbGUoMTAyNCwgJnZweF9zYXRkX2F2eDIpKSk7CiAKICNpZiBDT05G
SUdfVlA5X0hJR0hCSVRERVBUSAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFU
RV9URVNUX1NVSVRFX1AoCiAgICAgQVZYMiwgU2F0ZEhpZ2hiZFRlc3QsCiAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXMobWFrZV90dXBsZSgxNiwgJnZweF9oaWdoYmRfc2F0ZF9hdngyKSwKICAgICAgICAg
ICAgICAgICAgICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4X2hpZ2hiZF9zYXRkX2F2eDIpLApAQCAt
NjQ5LDcgKzY1Niw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAgICAg
ICAgICAgIG1ha2VfdHVwbGUoMTAyNCwgJnZweF9oaWdoYmRfc2F0ZF9hdngyKSkpOwogI2VuZGlm
ICAvLyBDT05GSUdfVlA5X0hJR0hCSVRERVBUSAogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgK
K0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBBVlgyLCBCbG9ja0Vycm9yVGVzdEZQLAog
ICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoMTYsICZ2cDlfYmxvY2tfZXJyb3JfZnBf
YXZ4MiksCiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSg2NCwgJnZwOV9ibG9ja19l
cnJvcl9mcF9hdngyKSwKQEAgLTY1OCw3ICs2NjUsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0Vf
UCgKICNlbmRpZgogCiAjaWYgSEFWRV9ORU9OCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lO
U1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBORU9OLCBBdmVyYWdlVGVzdCwKICAgICA6OnRl
c3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAxNiwgMCwgOCwgJnZweF9hdmdfOHg4X25lb24p
LAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMTYsIDE2LCA1LCA4LCAmdnB4X2F2
Z184eDhfbmVvbiksCkBAIC02NjcsMzAgKzY3NCwzMCBAQCBJTlNUQU5USUFURV9URVNUX0NBU0Vf
UCgKICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDE2LCAxNiwgNSwgNCwgJnZweF9h
dmdfNHg0X25lb24pLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMzIsIDMyLCAx
NSwgNCwgJnZweF9hdmdfNHg0X25lb24pKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE5FT04sIEludFByb1Jvd1Rlc3QsCiAgICAg
Ojp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgxNiwgJnZweF9pbnRfcHJvX3Jvd19uZW9uLCAm
dnB4X2ludF9wcm9fcm93X2MpLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMzIs
ICZ2cHhfaW50X3Byb19yb3dfbmVvbiwgJnZweF9pbnRfcHJvX3Jvd19jKSwKICAgICAgICAgICAg
ICAgICAgICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4X2ludF9wcm9fcm93X25lb24sCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2ludF9wcm9fcm93X2MpKSk7CiAKLUlOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE5FT04s
IEludFByb0NvbFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgxNiwgJnZw
eF9pbnRfcHJvX2NvbF9uZW9uLCAmdnB4X2ludF9wcm9fY29sX2MpLAogICAgICAgICAgICAgICAg
ICAgICAgIG1ha2VfdHVwbGUoMzIsICZ2cHhfaW50X3Byb19jb2xfbmVvbiwgJnZweF9pbnRfcHJv
X2NvbF9jKSwKICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4X2ludF9w
cm9fY29sX25lb24sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2ludF9w
cm9fY29sX2MpKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE5FT04sIFNhdGRMb3diZFRl
c3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxl
KDE2LCAmdnB4X3NhdGRfbmVvbiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4X3NhdGRfbmVvbiksCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDI1NiwgJnZweF9zYXRkX25lb24p
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSgx
MDI0LCAmdnB4X3NhdGRfbmVvbikpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChORU9OLCBT
YXRkTG93YmRUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVz
KG1ha2VfdHVwbGUoMTYsICZ2cHhfc2F0ZF9uZW9uKSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4X3NhdGRfbmVvbiksCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSgyNTYsICZ2
cHhfc2F0ZF9uZW9uKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBtYWtlX3R1cGxlKDEwMjQsICZ2cHhfc2F0ZF9uZW9uKSkpOwogCiAvLyBUT0RPKGppYW5qKTog
UmVtb3ZlIHRoZSBoaWdoYml0ZGVwdGggZmxhZyBvbmNlIHRoZSBTSU1EIGZ1bmN0aW9ucyBhcmUK
IC8vIGluIHBsYWNlLgogI2lmICFDT05GSUdfVlA5X0hJR0hCSVRERVBUSAotSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTkVPTiwgQmxvY2tF
cnJvclRlc3RGUCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAmdnA5X2Js
b2NrX2Vycm9yX2ZwX25lb24pLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoNjQs
ICZ2cDlfYmxvY2tfZXJyb3JfZnBfbmVvbiksCkBAIC03MDAsNyArNzA3LDcgQEAgSU5TVEFOVElB
VEVfVEVTVF9DQVNFX1AoCiAjZW5kaWYgIC8vIEhBVkVfTkVPTgogCiAjaWYgSEFWRV9NU0EKLUlO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE1T
QSwgQXZlcmFnZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgxNiwgMTYs
IDAsIDgsICZ2cHhfYXZnXzh4OF9tc2EpLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVw
bGUoMTYsIDE2LCA1LCA4LCAmdnB4X2F2Z184eDhfbXNhKSwKQEAgLTcwOSwxNCArNzE2LDE0IEBA
IElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVw
bGUoMTYsIDE2LCA1LCA0LCAmdnB4X2F2Z180eDRfbXNhKSwKICAgICAgICAgICAgICAgICAgICAg
ICBtYWtlX3R1cGxlKDMyLCAzMiwgMTUsIDQsICZ2cHhfYXZnXzR4NF9tc2EpKSk7CiAKLUlOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE1TQSwg
SW50UHJvUm93VGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAmdnB4
X2ludF9wcm9fcm93X21zYSwgJnZweF9pbnRfcHJvX3Jvd19jKSwKICAgICAgICAgICAgICAgICAg
ICAgICBtYWtlX3R1cGxlKDMyLCAmdnB4X2ludF9wcm9fcm93X21zYSwgJnZweF9pbnRfcHJvX3Jv
d19jKSwKICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4X2ludF9wcm9f
cm93X21zYSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfaW50X3Byb19y
b3dfYykpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NV
SVRFX1AoCiAgICAgTVNBLCBJbnRQcm9Db2xUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1h
a2VfdHVwbGUoMTYsICZ2cHhfaW50X3Byb19jb2xfbXNhLCAmdnB4X2ludF9wcm9fY29sX2MpLAog
ICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMzIsICZ2cHhfaW50X3Byb19jb2xfbXNh
LCAmdnB4X2ludF9wcm9fY29sX2MpLApAQCAtNzI2LDExICs3MzMsMTEgQEAgSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoCiAvLyBUT0RPKGppbmduaW5nKTogUmVtb3ZlIHRoZSBoaWdoYml0ZGVwdGgg
ZmxhZyBvbmNlIHRoZSBTSU1EIGZ1bmN0aW9ucyBhcmUKIC8vIGluIHBsYWNlLgogI2lmICFDT05G
SUdfVlA5X0hJR0hCSVRERVBUSAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTVNBLCBTYXRkTG93
YmRUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90
dXBsZSgxNiwgJnZweF9zYXRkX21zYSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBtYWtlX3R1cGxlKDY0LCAmdnB4X3NhdGRfbXNhKSwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoMjU2LCAmdnB4X3NhdGRfbXNh
KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUo
MTAyNCwgJnZweF9zYXRkX21zYSkpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChNU0EsIFNh
dGRMb3diZFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMo
bWFrZV90dXBsZSgxNiwgJnZweF9zYXRkX21zYSksCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSg2NCwgJnZweF9zYXRkX21zYSksCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSgyNTYsICZ2cHhf
c2F0ZF9tc2EpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1h
a2VfdHVwbGUoMTAyNCwgJnZweF9zYXRkX21zYSkpKTsKICNlbmRpZiAgLy8gIUNPTkZJR19WUDlf
SElHSEJJVERFUFRICiAjZW5kaWYgIC8vIEhBVkVfTVNBCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC9ibG9ja2luZXNzX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYmxvY2tpbmVzc190
ZXN0LmNjCmluZGV4IGNlZDZlNjZjNjIwNzBkOTQzMDdjOTM2MWU5NThlNTMzMmZkZGNiNGMuLjEx
YjJhM2Y2MWZmM2M5ODY2ODRiMzZmNTI0M2RiMmI1NmFlZTlmMGMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdGVzdC9ibG9ja2luZXNzX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2Jsb2Nr
aW5lc3NfdGVzdC5jYwpAQCAtMzUsMTggKzM1LDE4IEBAIGNsYXNzIEJsb2NraW5lc3NUZXN0QmFz
ZSA6IHB1YmxpYyA6OnRlc3Rpbmc6OlRlc3QgewogIHB1YmxpYzoKICAgQmxvY2tpbmVzc1Rlc3RC
YXNlKGludCB3aWR0aCwgaW50IGhlaWdodCkgOiB3aWR0aF8od2lkdGgpLCBoZWlnaHRfKGhlaWdo
dCkge30KIAotICBzdGF0aWMgdm9pZCBTZXRVcFRlc3RDYXNlKCkgeworICBzdGF0aWMgdm9pZCBT
ZXRVcFRlc3RTdWl0ZSgpIHsKICAgICBzb3VyY2VfZGF0YV8gPSByZWludGVycHJldF9jYXN0PHVp
bnQ4X3QgKj4oCiAgICAgICAgIHZweF9tZW1hbGlnbihrRGF0YUFsaWdubWVudCwga0RhdGFCdWZm
ZXJTaXplKSk7CiAgICAgcmVmZXJlbmNlX2RhdGFfID0gcmVpbnRlcnByZXRfY2FzdDx1aW50OF90
ICo+KAogICAgICAgICB2cHhfbWVtYWxpZ24oa0RhdGFBbGlnbm1lbnQsIGtEYXRhQnVmZmVyU2l6
ZSkpOwogICB9CiAKLSAgc3RhdGljIHZvaWQgVGVhckRvd25UZXN0Q2FzZSgpIHsKKyAgc3RhdGlj
IHZvaWQgVGVhckRvd25UZXN0U3VpdGUoKSB7CiAgICAgdnB4X2ZyZWUoc291cmNlX2RhdGFfKTsK
LSAgICBzb3VyY2VfZGF0YV8gPSBOVUxMOworICAgIHNvdXJjZV9kYXRhXyA9IG51bGxwdHI7CiAg
ICAgdnB4X2ZyZWUocmVmZXJlbmNlX2RhdGFfKTsKLSAgICByZWZlcmVuY2VfZGF0YV8gPSBOVUxM
OworICAgIHJlZmVyZW5jZV9kYXRhXyA9IG51bGxwdHI7CiAgIH0KIAogICB2aXJ0dWFsIHZvaWQg
VGVhckRvd24oKSB7IGxpYnZweF90ZXN0OjpDbGVhclN5c3RlbVN0YXRlKCk7IH0KQEAgLTE1NCw4
ICsxNTQsOCBAQCBjbGFzcyBCbG9ja2luZXNzVlA5VGVzdAogfTsKICNlbmRpZiAgLy8gQ09ORklH
X1ZQOV9FTkNPREVSCiAKLXVpbnQ4X3QgKkJsb2NraW5lc3NUZXN0QmFzZTo6c291cmNlX2RhdGFf
ID0gTlVMTDsKLXVpbnQ4X3QgKkJsb2NraW5lc3NUZXN0QmFzZTo6cmVmZXJlbmNlX2RhdGFfID0g
TlVMTDsKK3VpbnQ4X3QgKkJsb2NraW5lc3NUZXN0QmFzZTo6c291cmNlX2RhdGFfID0gbnVsbHB0
cjsKK3VpbnQ4X3QgKkJsb2NraW5lc3NUZXN0QmFzZTo6cmVmZXJlbmNlX2RhdGFfID0gbnVsbHB0
cjsKIAogI2lmIENPTkZJR19WUDlfRU5DT0RFUgogVEVTVF9QKEJsb2NraW5lc3NWUDlUZXN0LCBT
b3VyY2VCbG9ja2llclRoYW5SZWZlcmVuY2UpIHsKQEAgLTIxNSw3ICsyMTUsOCBAQCB1c2luZyBz
dGQ6Om1ha2VfdHVwbGU7CiBjb25zdCBCbG9ja2luZXNzUGFyYW0gY192cDlfdGVzdHNbXSA9IHsg
bWFrZV90dXBsZSgzMjAsIDI0MCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgbWFrZV90dXBsZSgzMTgsIDI0MiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgbWFrZV90dXBsZSgzMTgsIDIzOCkgfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FT
RV9QKEMsIEJsb2NraW5lc3NWUDlUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKGNfdnA5X3Rlc3Rz
KSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoQywgQmxvY2tpbmVzc1ZQOVRlc3QsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihjX3ZwOV90ZXN0cykpOwog
I2VuZGlmCiAKIH0gIC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2Jv
cmRlcnNfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9ib3JkZXJzX3Rlc3QuY2MKaW5kZXggYjkx
YTE1YjgwMDM2YWQyYmQxZGMwZjc1MTliMzI4ZDIyOTRlMTA1Yi4uM2MxZjY5YTkyM2ZjZDBiMzgz
MTY5MWQzMDYwNzY4MGY2NjkyNzgxNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2JvcmRl
cnNfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYm9yZGVyc190ZXN0LmNjCkBAIC03OSw2
ICs3OSw2IEBAIFRFU1RfUChCb3JkZXJzVGVzdCwgVGVzdExvd0JpdHJhdGUpIHsKICAgQVNTRVJU
X05PX0ZBVEFMX0ZBSUxVUkUoUnVuTG9vcCgmdmlkZW8pKTsKIH0KIAotVlA5X0lOU1RBTlRJQVRF
X1RFU1RfQ0FTRShCb3JkZXJzVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a1R3b1Bhc3NHb29kKSk7CitWUDlfSU5TVEFOVElB
VEVfVEVTVF9TVUlURShCb3JkZXJzVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6
dGVzdGluZzo6VmFsdWVzKDo6bGlidnB4X3Rlc3Q6OmtUd29QYXNzR29vZCkpOwogfSAgLy8gbmFt
ZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvYnl0ZV9hbGlnbm1lbnRfdGVzdC5j
YyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGVzdC9ieXRlX2FsaWdubWVudF90ZXN0LmNjCmluZGV4IDBlZjZjNGM1
MTkyZjI2ZDJkODA1OGZlN2IxNzk0MDc0YjliMDBiYTkuLjFlMGZmY2ViOGQwMzhhZDBiYjBjNTVh
YmI0ZDUxMTI5ZGUzODdmNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9ieXRlX2FsaWdu
bWVudF90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9ieXRlX2FsaWdubWVudF90ZXN0LmNj
CkBAIC01NSwyMyArNTUsMjQgQEAgY29uc3QgQnl0ZUFsaWdubWVudFRlc3RQYXJhbSBrQmFUZXN0
UGFyYW1zW10gPSB7CiBjbGFzcyBCeXRlQWxpZ25tZW50VGVzdAogICAgIDogcHVibGljIDo6dGVz
dGluZzo6VGVzdFdpdGhQYXJhbTxCeXRlQWxpZ25tZW50VGVzdFBhcmFtPiB7CiAgcHJvdGVjdGVk
OgotICBCeXRlQWxpZ25tZW50VGVzdCgpIDogdmlkZW9fKE5VTEwpLCBkZWNvZGVyXyhOVUxMKSwg
bWQ1X2ZpbGVfKE5VTEwpIHt9CisgIEJ5dGVBbGlnbm1lbnRUZXN0KCkKKyAgICAgIDogdmlkZW9f
KG51bGxwdHIpLCBkZWNvZGVyXyhudWxscHRyKSwgbWQ1X2ZpbGVfKG51bGxwdHIpIHt9CiAKICAg
dmlydHVhbCB2b2lkIFNldFVwKCkgewogICAgIHZpZGVvXyA9IG5ldyBsaWJ2cHhfdGVzdDo6V2Vi
TVZpZGVvU291cmNlKGtWUDlUZXN0RmlsZSk7Ci0gICAgQVNTRVJUX1RSVUUodmlkZW9fICE9IE5V
TEwpOworICAgIEFTU0VSVF9ORSh2aWRlb18sIG51bGxwdHIpOwogICAgIHZpZGVvXy0+SW5pdCgp
OwogICAgIHZpZGVvXy0+QmVnaW4oKTsKIAogICAgIGNvbnN0IHZweF9jb2RlY19kZWNfY2ZnX3Qg
Y2ZnID0gdnB4X2NvZGVjX2RlY19jZmdfdCgpOwogICAgIGRlY29kZXJfID0gbmV3IGxpYnZweF90
ZXN0OjpWUDlEZWNvZGVyKGNmZywgMCk7Ci0gICAgQVNTRVJUX1RSVUUoZGVjb2Rlcl8gIT0gTlVM
TCk7CisgICAgQVNTRVJUX05FKGRlY29kZXJfLCBudWxscHRyKTsKIAogICAgIE9wZW5NZDVGaWxl
KGtWUDlNZDVGaWxlKTsKICAgfQogCiAgIHZpcnR1YWwgdm9pZCBUZWFyRG93bigpIHsKLSAgICBp
ZiAobWQ1X2ZpbGVfICE9IE5VTEwpIGZjbG9zZShtZDVfZmlsZV8pOworICAgIGlmIChtZDVfZmls
ZV8gIT0gbnVsbHB0cikgZmNsb3NlKG1kNV9maWxlXyk7CiAKICAgICBkZWxldGUgZGVjb2Rlcl87
CiAgICAgZGVsZXRlIHZpZGVvXzsKQEAgLTkwLDcgKzkxLDcgQEAgY2xhc3MgQnl0ZUFsaWdubWVu
dFRlc3QKICAgfQogCiAgIHZweF9jb2RlY19lcnJfdCBEZWNvZGVSZW1haW5pbmdGcmFtZXMoaW50
IGJ5dGVfYWxpZ25tZW50X3RvX2NoZWNrKSB7Ci0gICAgZm9yICg7IHZpZGVvXy0+Y3hkYXRhKCkg
IT0gTlVMTDsgdmlkZW9fLT5OZXh0KCkpIHsKKyAgICBmb3IgKDsgdmlkZW9fLT5jeGRhdGEoKSAh
PSBudWxscHRyOyB2aWRlb18tPk5leHQoKSkgewogICAgICAgY29uc3QgdnB4X2NvZGVjX2Vycl90
IHJlcyA9CiAgICAgICAgICAgZGVjb2Rlcl8tPkRlY29kZUZyYW1lKHZpZGVvXy0+Y3hkYXRhKCks
IHZpZGVvXy0+ZnJhbWVfc2l6ZSgpKTsKICAgICAgIGlmIChyZXMgIT0gVlBYX0NPREVDX09LKSBy
ZXR1cm4gcmVzOwpAQCAtMTEzLDcgKzExNCw3IEBAIGNsYXNzIEJ5dGVBbGlnbm1lbnRUZXN0CiAg
ICAgY29uc3QgdnB4X2ltYWdlX3QgKmltZzsKIAogICAgIC8vIEdldCBkZWNvbXByZXNzZWQgZGF0
YQotICAgIHdoaWxlICgoaW1nID0gZGVjX2l0ZXIuTmV4dCgpKSAhPSBOVUxMKSB7CisgICAgd2hp
bGUgKChpbWcgPSBkZWNfaXRlci5OZXh0KCkpICE9IG51bGxwdHIpIHsKICAgICAgIGlmIChieXRl
X2FsaWdubWVudF90b19jaGVjayA9PSBrTGVnYWN5Qnl0ZUFsaWdubWVudCkgewogICAgICAgICBD
aGVja0J5dGVBbGlnbm1lbnQoaW1nLT5wbGFuZXNbMF0sIGtMZWdhY3lZUGxhbmVCeXRlQWxpZ25t
ZW50KTsKICAgICAgIH0gZWxzZSB7CkBAIC0xMjgsMTIgKzEyOSwxMiBAQCBjbGFzcyBCeXRlQWxp
Z25tZW50VGVzdAogICAvLyBUT0RPKGZnYWxsaWdhbik6IE1vdmUgdGhlIE1ENSB0ZXN0aW5nIGNv
ZGUgaW50byBhbm90aGVyIGNsYXNzLgogICB2b2lkIE9wZW5NZDVGaWxlKGNvbnN0IHN0ZDo6c3Ry
aW5nICZtZDVfZmlsZV9uYW1lXykgewogICAgIG1kNV9maWxlXyA9IGxpYnZweF90ZXN0OjpPcGVu
VGVzdERhdGFGaWxlKG1kNV9maWxlX25hbWVfKTsKLSAgICBBU1NFUlRfVFJVRShtZDVfZmlsZV8g
IT0gTlVMTCkKKyAgICBBU1NFUlRfTkUobWQ1X2ZpbGVfLCBudWxscHRyKQogICAgICAgICA8PCAi
TUQ1IGZpbGUgb3BlbiBmYWlsZWQuIEZpbGVuYW1lOiAiIDw8IG1kNV9maWxlX25hbWVfOwogICB9
CiAKICAgdm9pZCBDaGVja01kNShjb25zdCB2cHhfaW1hZ2VfdCAmaW1nKSB7Ci0gICAgQVNTRVJU
X1RSVUUobWQ1X2ZpbGVfICE9IE5VTEwpOworICAgIEFTU0VSVF9ORShtZDVfZmlsZV8sIG51bGxw
dHIpOwogICAgIGNoYXIgZXhwZWN0ZWRfbWQ1WzMzXTsKICAgICBjaGFyIGp1bmtbMTI4XTsKIApA
QCAtMTc2LDggKzE3Nyw4IEBAIFRFU1RfUChCeXRlQWxpZ25tZW50VGVzdCwgVGVzdEFsaWdubWVu
dCkgewogICB9CiB9CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEFsaWdubWVudHMsIEJ5dGVB
bGlnbm1lbnRUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJ
bihrQmFUZXN0UGFyYW1zKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoQWxpZ25tZW50cywg
Qnl0ZUFsaWdubWVudFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpW
YWx1ZXNJbihrQmFUZXN0UGFyYW1zKSk7CiAKICNlbmRpZiAgLy8gQ09ORklHX1dFQk1fSU8KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2NvZGVjX2ZhY3RvcnkuaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dGVzdC9jb2RlY19mYWN0b3J5LmgKaW5kZXggMTdjOTUxMmNhOGIwNTEzNjgzMGNlYWFiZDhiMTg2
MTRkODg2MGE1YS4uNzdjZTQ5ZGU5ZjVkNGU3M2EzOWEyNDMxM2YyYjUxZmFiYWI2ZGFmNSAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2NvZGVjX2ZhY3RvcnkuaAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3Rlc3QvY29kZWNfZmFjdG9yeS5oCkBAIC0xNTcsMTUgKzE1NywxNSBAQCBjbGFzcyBWUDhDb2Rl
Y0ZhY3RvcnkgOiBwdWJsaWMgQ29kZWNGYWN0b3J5IHsKIAogY29uc3QgbGlidnB4X3Rlc3Q6OlZQ
OENvZGVjRmFjdG9yeSBrVlA4OwogCi0jZGVmaW5lIFZQOF9JTlNUQU5USUFURV9URVNUX0NBU0Uo
dGVzdCwgLi4uKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICBJTlNUQU5USUFU
RV9URVNUX0NBU0VfUCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKKyNkZWZpbmUgVlA4X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUodGVzdCwgLi4uKSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgIElOU1RBTlRJQVRFX1RFU1RfU1VJVEVf
UCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAg
ICAgVlA4LCB0ZXN0LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKICAgICAgIDo6dGVzdGluZzo6Q29tYmluZSggICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXMoc3RhdGljX2Nhc3Q8Y29uc3QgbGlidnB4X3Rlc3Q6OkNvZGVjRmFjdG9yeSAq
PiggXAogICAgICAgICAgICAgICAmbGlidnB4X3Rlc3Q6OmtWUDgpKSwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAgICAgICBfX1ZBX0FSR1NfXykpCiAjZWxz
ZQotI2RlZmluZSBWUDhfSU5TVEFOVElBVEVfVEVTVF9DQVNFKHRlc3QsIC4uLikKKyNkZWZpbmUg
VlA4X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUodGVzdCwgLi4uKQogI2VuZGlmICAvLyBDT05GSUdf
VlA4CiAKIC8qCkBAIC0yNTMsMTUgKzI1MywxNSBAQCBjbGFzcyBWUDlDb2RlY0ZhY3RvcnkgOiBw
dWJsaWMgQ29kZWNGYWN0b3J5IHsKIAogY29uc3QgbGlidnB4X3Rlc3Q6OlZQOUNvZGVjRmFjdG9y
eSBrVlA5OwogCi0jZGVmaW5lIFZQOV9JTlNUQU5USUFURV9URVNUX0NBU0UodGVzdCwgLi4uKSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICBJTlNUQU5USUFURV9URVNUX0NBU0Vf
UCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyNk
ZWZpbmUgVlA5X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUodGVzdCwgLi4uKSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCisgIElOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCggICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgVlA5LCB0ZXN0
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKICAgICAgIDo6dGVzdGluZzo6Q29tYmluZSggICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMo
c3RhdGljX2Nhc3Q8Y29uc3QgbGlidnB4X3Rlc3Q6OkNvZGVjRmFjdG9yeSAqPiggXAogICAgICAg
ICAgICAgICAmbGlidnB4X3Rlc3Q6OmtWUDkpKSwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKICAgICAgICAgICBfX1ZBX0FSR1NfXykpCiAjZWxzZQotI2RlZmluZSBW
UDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKHRlc3QsIC4uLikKKyNkZWZpbmUgVlA5X0lOU1RBTlRJ
QVRFX1RFU1RfU1VJVEUodGVzdCwgLi4uKQogI2VuZGlmICAvLyBDT05GSUdfVlA5CiAKIH0gIC8v
IG5hbWVzcGFjZSBsaWJ2cHhfdGVzdApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2NvbXBf
YXZnX3ByZWRfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9jb21wX2F2Z19wcmVkX3Rlc3QuY2MK
aW5kZXggNTZlNzAxZTA5Y2JmODJiYWZmOGU4ZjQ1YTFkYjJmMTQyOWMzMGE5NC4uYjkyMDFhMjBm
OWMzMmFhZTVmOGYwMDY0YzQ0YmYzZjJiODRmZDcxOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90
ZXN0L2NvbXBfYXZnX3ByZWRfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvY29tcF9hdmdf
cHJlZF90ZXN0LmNjCkBAIC0yOSw5ICsyOSw5IEBAIHVpbnQ4X3QgYXZnX3dpdGhfcm91bmRpbmco
dWludDhfdCBhLCB1aW50OF90IGIpIHsgcmV0dXJuIChhICsgYiArIDEpID4+IDE7IH0KIAogdm9p
ZCByZWZlcmVuY2VfcHJlZChjb25zdCBCdWZmZXI8dWludDhfdD4gJnByZWQsIGNvbnN0IEJ1ZmZl
cjx1aW50OF90PiAmcmVmLAogICAgICAgICAgICAgICAgICAgICBpbnQgd2lkdGgsIGludCBoZWln
aHQsIEJ1ZmZlcjx1aW50OF90PiAqYXZnKSB7Ci0gIEFTU0VSVF9UUlVFKGF2Zy0+VG9wTGVmdFBp
eGVsKCkgIT0gTlVMTCk7Ci0gIEFTU0VSVF9UUlVFKHByZWQuVG9wTGVmdFBpeGVsKCkgIT0gTlVM
TCk7Ci0gIEFTU0VSVF9UUlVFKHJlZi5Ub3BMZWZ0UGl4ZWwoKSAhPSBOVUxMKTsKKyAgQVNTRVJU
X05FKGF2Zy0+VG9wTGVmdFBpeGVsKCksIG51bGxwdHIpOworICBBU1NFUlRfTkUocHJlZC5Ub3BM
ZWZ0UGl4ZWwoKSwgbnVsbHB0cik7CisgIEFTU0VSVF9ORShyZWYuVG9wTGVmdFBpeGVsKCksIG51
bGxwdHIpOwogCiAgIGZvciAoaW50IHkgPSAwOyB5IDwgaGVpZ2h0OyArK3kpIHsKICAgICBmb3Ig
KGludCB4ID0gMDsgeCA8IHdpZHRoOyArK3gpIHsKQEAgLTE2NiwyMSArMTY2LDIxIEBAIFRFU1Rf
UChBdmdQcmVkVGVzdCwgRElTQUJMRURfU3BlZWQpIHsKICAgfQogfQogCi1JTlNUQU5USUFURV9U
RVNUX0NBU0VfUChDLCBBdmdQcmVkVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVz
dGluZzo6VmFsdWVzKCZ2cHhfY29tcF9hdmdfcHJlZF9jKSk7CitJTlNUQU5USUFURV9URVNUX1NV
SVRFX1AoQywgQXZnUHJlZFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXMoJnZweF9jb21wX2F2Z19wcmVkX2MpKTsKIAogI2lmIEhBVkVfU1NFMgotSU5TVEFO
VElBVEVfVEVTVF9DQVNFX1AoU1NFMiwgQXZnUHJlZFRlc3QsCi0gICAgICAgICAgICAgICAgICAg
ICAgICA6OnRlc3Rpbmc6OlZhbHVlcygmdnB4X2NvbXBfYXZnX3ByZWRfc3NlMikpOworSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QKFNTRTIsIEF2Z1ByZWRUZXN0LAorICAgICAgICAgICAgICAgICAg
ICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKCZ2cHhfY29tcF9hdmdfcHJlZF9zc2UyKSk7CiAjZW5k
aWYgIC8vIEhBVkVfU1NFMgogCiAjaWYgSEFWRV9ORU9OCi1JTlNUQU5USUFURV9URVNUX0NBU0Vf
UChORU9OLCBBdmdQcmVkVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6
VmFsdWVzKCZ2cHhfY29tcF9hdmdfcHJlZF9uZW9uKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRF
X1AoTkVPTiwgQXZnUHJlZFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXMoJnZweF9jb21wX2F2Z19wcmVkX25lb24pKTsKICNlbmRpZiAgLy8gSEFWRV9ORU9O
CiAKICNpZiBIQVZFX1ZTWAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoVlNYLCBBdmdQcmVkVGVz
dCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKCZ2cHhfY29tcF9h
dmdfcHJlZF92c3gpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChWU1gsIEF2Z1ByZWRUZXN0
LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKCZ2cHhfY29tcF9h
dmdfcHJlZF92c3gpKTsKICNlbmRpZiAgLy8gSEFWRV9WU1gKIH0gIC8vIG5hbWVzcGFjZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2NvbmZpZ190ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0
L2NvbmZpZ190ZXN0LmNjCmluZGV4IGIyZjhlYTVlZDMyNjJhY2VlODNiNWQzYzQ5NDI1NTI0YmM2
NmNhM2EuLjhmNGM2MGUxMTM3ZDExZjE2Yjg3YzNlZjE4MDEwNWIwYmFlZGE5ZmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGVzdC9jb25maWdfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qv
Y29uZmlnX3Rlc3QuY2MKQEAgLTU4LDUgKzU4LDUgQEAgVEVTVF9QKENvbmZpZ1Rlc3QsIExhZ0lz
RGlzYWJsZWQpIHsKICAgRVhQRUNUX0VRKGZyYW1lX2NvdW50X2luXywgZnJhbWVfY291bnRfb3V0
Xyk7CiB9CiAKLVZQOF9JTlNUQU5USUFURV9URVNUX0NBU0UoQ29uZmlnVGVzdCwgT05FX1BBU1Nf
VEVTVF9NT0RFUyk7CitWUDhfSU5TVEFOVElBVEVfVEVTVF9TVUlURShDb25maWdUZXN0LCBPTkVf
UEFTU19URVNUX01PREVTKTsKIH0gIC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90ZXN0L2NvbnNpc3RlbmN5X3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvY29uc2lzdGVuY3lf
dGVzdC5jYwppbmRleCA4NzViMDZmNGFhMTRmZDhhMzkxMTJiZmY3NTBiZTNjMzhjMWZlYWJkLi5m
MGUyY2IyOTdlZjhmODdhNDI4ZTkyNTBkOTU1MzU3OTliZDAwMWJlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3Rlc3QvY29uc2lzdGVuY3lfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvY29u
c2lzdGVuY3lfdGVzdC5jYwpAQCAtMzksNyArMzksNyBAQCBjbGFzcyBDb25zaXN0ZW5jeVRlc3RC
YXNlIDogcHVibGljIDo6dGVzdGluZzo6VGVzdCB7CiAgcHVibGljOgogICBDb25zaXN0ZW5jeVRl
c3RCYXNlKGludCB3aWR0aCwgaW50IGhlaWdodCkgOiB3aWR0aF8od2lkdGgpLCBoZWlnaHRfKGhl
aWdodCkge30KIAotICBzdGF0aWMgdm9pZCBTZXRVcFRlc3RDYXNlKCkgeworICBzdGF0aWMgdm9p
ZCBTZXRVcFRlc3RTdWl0ZSgpIHsKICAgICBzb3VyY2VfZGF0YV9bMF0gPSByZWludGVycHJldF9j
YXN0PHVpbnQ4X3QgKj4oCiAgICAgICAgIHZweF9tZW1hbGlnbihrRGF0YUFsaWdubWVudCwga0Rh
dGFCdWZmZXJTaXplKSk7CiAgICAgcmVmZXJlbmNlX2RhdGFfWzBdID0gcmVpbnRlcnByZXRfY2Fz
dDx1aW50OF90ICo+KApAQCAtNTIsMTUgKzUyLDE1IEBAIGNsYXNzIENvbnNpc3RlbmN5VGVzdEJh
c2UgOiBwdWJsaWMgOjp0ZXN0aW5nOjpUZXN0IHsKICAgfQogCiAgIHN0YXRpYyB2b2lkIENsZWFy
U3NpbSgpIHsgbWVtc2V0KHNzaW1fYXJyYXlfLCAwLCBrRGF0YUJ1ZmZlclNpemUgLyAxNik7IH0K
LSAgc3RhdGljIHZvaWQgVGVhckRvd25UZXN0Q2FzZSgpIHsKKyAgc3RhdGljIHZvaWQgVGVhckRv
d25UZXN0U3VpdGUoKSB7CiAgICAgdnB4X2ZyZWUoc291cmNlX2RhdGFfWzBdKTsKLSAgICBzb3Vy
Y2VfZGF0YV9bMF0gPSBOVUxMOworICAgIHNvdXJjZV9kYXRhX1swXSA9IG51bGxwdHI7CiAgICAg
dnB4X2ZyZWUocmVmZXJlbmNlX2RhdGFfWzBdKTsKLSAgICByZWZlcmVuY2VfZGF0YV9bMF0gPSBO
VUxMOworICAgIHJlZmVyZW5jZV9kYXRhX1swXSA9IG51bGxwdHI7CiAgICAgdnB4X2ZyZWUoc291
cmNlX2RhdGFfWzFdKTsKLSAgICBzb3VyY2VfZGF0YV9bMV0gPSBOVUxMOworICAgIHNvdXJjZV9k
YXRhX1sxXSA9IG51bGxwdHI7CiAgICAgdnB4X2ZyZWUocmVmZXJlbmNlX2RhdGFfWzFdKTsKLSAg
ICByZWZlcmVuY2VfZGF0YV9bMV0gPSBOVUxMOworICAgIHJlZmVyZW5jZV9kYXRhX1sxXSA9IG51
bGxwdHI7CiAKICAgICBkZWxldGVbXSBzc2ltX2FycmF5XzsKICAgfQpAQCAtMTQ1LDkgKzE0NSw5
IEBAIGNsYXNzIENvbnNpc3RlbmN5VlA5VGVzdAogfTsKICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9F
TkNPREVSCiAKLXVpbnQ4X3QgKkNvbnNpc3RlbmN5VGVzdEJhc2U6OnNvdXJjZV9kYXRhX1syXSA9
IHsgTlVMTCwgTlVMTCB9OwotdWludDhfdCAqQ29uc2lzdGVuY3lUZXN0QmFzZTo6cmVmZXJlbmNl
X2RhdGFfWzJdID0geyBOVUxMLCBOVUxMIH07Ci1Tc2ltdiAqQ29uc2lzdGVuY3lUZXN0QmFzZTo6
c3NpbV9hcnJheV8gPSBOVUxMOwordWludDhfdCAqQ29uc2lzdGVuY3lUZXN0QmFzZTo6c291cmNl
X2RhdGFfWzJdID0geyBudWxscHRyLCBudWxscHRyIH07Cit1aW50OF90ICpDb25zaXN0ZW5jeVRl
c3RCYXNlOjpyZWZlcmVuY2VfZGF0YV9bMl0gPSB7IG51bGxwdHIsIG51bGxwdHIgfTsKK1NzaW12
ICpDb25zaXN0ZW5jeVRlc3RCYXNlOjpzc2ltX2FycmF5XyA9IG51bGxwdHI7CiAKICNpZiBDT05G
SUdfVlA5X0VOQ09ERVIKIFRFU1RfUChDb25zaXN0ZW5jeVZQOVRlc3QsIENvbnNpc3RlbmN5SXNa
ZXJvKSB7CkBAIC0yMDgsOCArMjA4LDggQEAgdXNpbmcgc3RkOjptYWtlX3R1cGxlOwogY29uc3Qg
Q29uc2lzdGVuY3lQYXJhbSBjX3ZwOV90ZXN0c1tdID0geyBtYWtlX3R1cGxlKDMyMCwgMjQwKSwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSgzMTgs
IDI0MiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVw
bGUoMzE4LCAyMzgpIH07Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUChDLCBDb25zaXN0ZW5jeVZQ
OVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGNfdnA5
X3Rlc3RzKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoQywgQ29uc2lzdGVuY3lWUDlUZXN0
LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oY192cDlfdGVz
dHMpKTsKICNlbmRpZgogCiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dGVzdC9jb252b2x2ZV90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2NvbnZvbHZlX3Rlc3QuY2MK
aW5kZXggZDhkMDUzZGY1ZmQ2Y2E0M2I2NDU2ZmZiNGRiOGJjZjg2YTYyOWVmMS4uNGIyZGFkZWZh
YzBkMDMzNTA5YjUwNzA0ZjIzMzJkMDY3MjdiOTI5MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90
ZXN0L2NvbnZvbHZlX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2NvbnZvbHZlX3Rlc3Qu
Y2MKQEAgLTM0MSw3ICszNDEsNyBAQCB2b2lkIHdyYXBwZXJfZmlsdGVyX2Jsb2NrMmRfOF9jKGNv
bnN0IHVpbnQ4X3QgKnNyY19wdHIsCiAKIGNsYXNzIENvbnZvbHZlVGVzdCA6IHB1YmxpYyA6OnRl
c3Rpbmc6OlRlc3RXaXRoUGFyYW08Q29udm9sdmVQYXJhbT4gewogIHB1YmxpYzoKLSAgc3RhdGlj
IHZvaWQgU2V0VXBUZXN0Q2FzZSgpIHsKKyAgc3RhdGljIHZvaWQgU2V0VXBUZXN0U3VpdGUoKSB7
CiAgICAgLy8gRm9yY2UgaW5wdXRfIHRvIGJlIHVuYWxpZ25lZCwgb3V0cHV0IHRvIGJlIDE2IGJ5
dGUgYWxpZ25lZC4KICAgICBpbnB1dF8gPSByZWludGVycHJldF9jYXN0PHVpbnQ4X3QgKj4oCiAg
ICAgICAgICAgICAgICAgIHZweF9tZW1hbGlnbihrRGF0YUFsaWdubWVudCwga0lucHV0QnVmZmVy
U2l6ZSArIDEpKSArCkBAIC0zNjMsMjAgKzM2MywyMCBAQCBjbGFzcyBDb252b2x2ZVRlc3QgOiBw
dWJsaWMgOjp0ZXN0aW5nOjpUZXN0V2l0aFBhcmFtPENvbnZvbHZlUGFyYW0+IHsKIAogICB2aXJ0
dWFsIHZvaWQgVGVhckRvd24oKSB7IGxpYnZweF90ZXN0OjpDbGVhclN5c3RlbVN0YXRlKCk7IH0K
IAotICBzdGF0aWMgdm9pZCBUZWFyRG93blRlc3RDYXNlKCkgeworICBzdGF0aWMgdm9pZCBUZWFy
RG93blRlc3RTdWl0ZSgpIHsKICAgICB2cHhfZnJlZShpbnB1dF8gLSAxKTsKLSAgICBpbnB1dF8g
PSBOVUxMOworICAgIGlucHV0XyA9IG51bGxwdHI7CiAgICAgdnB4X2ZyZWUob3V0cHV0Xyk7Ci0g
ICAgb3V0cHV0XyA9IE5VTEw7CisgICAgb3V0cHV0XyA9IG51bGxwdHI7CiAgICAgdnB4X2ZyZWUo
b3V0cHV0X3JlZl8pOwotICAgIG91dHB1dF9yZWZfID0gTlVMTDsKKyAgICBvdXRwdXRfcmVmXyA9
IG51bGxwdHI7CiAjaWYgQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKICAgICB2cHhfZnJlZShpbnB1
dDE2XyAtIDEpOwotICAgIGlucHV0MTZfID0gTlVMTDsKKyAgICBpbnB1dDE2XyA9IG51bGxwdHI7
CiAgICAgdnB4X2ZyZWUob3V0cHV0MTZfKTsKLSAgICBvdXRwdXQxNl8gPSBOVUxMOworICAgIG91
dHB1dDE2XyA9IG51bGxwdHI7CiAgICAgdnB4X2ZyZWUob3V0cHV0MTZfcmVmXyk7Ci0gICAgb3V0
cHV0MTZfcmVmXyA9IE5VTEw7CisgICAgb3V0cHV0MTZfcmVmXyA9IG51bGxwdHI7CiAjZW5kaWYK
ICAgfQogCkBAIC01NDEsMTMgKzU0MSwxMyBAQCBjbGFzcyBDb252b2x2ZVRlc3QgOiBwdWJsaWMg
Ojp0ZXN0aW5nOjpUZXN0V2l0aFBhcmFtPENvbnZvbHZlUGFyYW0+IHsKICNlbmRpZgogfTsKIAot
dWludDhfdCAqQ29udm9sdmVUZXN0OjppbnB1dF8gPSBOVUxMOwotdWludDhfdCAqQ29udm9sdmVU
ZXN0OjpvdXRwdXRfID0gTlVMTDsKLXVpbnQ4X3QgKkNvbnZvbHZlVGVzdDo6b3V0cHV0X3JlZl8g
PSBOVUxMOwordWludDhfdCAqQ29udm9sdmVUZXN0OjppbnB1dF8gPSBudWxscHRyOwordWludDhf
dCAqQ29udm9sdmVUZXN0OjpvdXRwdXRfID0gbnVsbHB0cjsKK3VpbnQ4X3QgKkNvbnZvbHZlVGVz
dDo6b3V0cHV0X3JlZl8gPSBudWxscHRyOwogI2lmIENPTkZJR19WUDlfSElHSEJJVERFUFRICi11
aW50MTZfdCAqQ29udm9sdmVUZXN0OjppbnB1dDE2XyA9IE5VTEw7Ci11aW50MTZfdCAqQ29udm9s
dmVUZXN0OjpvdXRwdXQxNl8gPSBOVUxMOwotdWludDE2X3QgKkNvbnZvbHZlVGVzdDo6b3V0cHV0
MTZfcmVmXyA9IE5VTEw7Cit1aW50MTZfdCAqQ29udm9sdmVUZXN0OjppbnB1dDE2XyA9IG51bGxw
dHI7Cit1aW50MTZfdCAqQ29udm9sdmVUZXN0OjpvdXRwdXQxNl8gPSBudWxscHRyOwordWludDE2
X3QgKkNvbnZvbHZlVGVzdDo6b3V0cHV0MTZfcmVmXyA9IG51bGxwdHI7CiAjZW5kaWYKIAogVEVT
VF9QKENvbnZvbHZlVGVzdCwgR3VhcmRCbG9ja3MpIHsgQ2hlY2tHdWFyZEJsb2NrcygpOyB9CkBA
IC01NjIsNyArNTYyLDcgQEAgVEVTVF9QKENvbnZvbHZlVGVzdCwgRElTQUJMRURfQ29weV9TcGVl
ZCkgewogCiAgIHZweF91c2VjX3RpbWVyX3N0YXJ0KCZ0aW1lcik7CiAgIGZvciAoaW50IG4gPSAw
OyBuIDwga051bVRlc3RzOyArK24pIHsKLSAgICBVVVRfLT5jb3B5X1swXShpbiwga0lucHV0U3Ry
aWRlLCBvdXQsIGtPdXRwdXRTdHJpZGUsIE5VTEwsIDAsIDAsIDAsIDAsCisgICAgVVVUXy0+Y29w
eV9bMF0oaW4sIGtJbnB1dFN0cmlkZSwgb3V0LCBrT3V0cHV0U3RyaWRlLCBudWxscHRyLCAwLCAw
LCAwLCAwLAogICAgICAgICAgICAgICAgICAgIHdpZHRoLCBoZWlnaHQpOwogICB9CiAgIHZweF91
c2VjX3RpbWVyX21hcmsoJnRpbWVyKTsKQEAgLTU4Miw3ICs1ODIsNyBAQCBURVNUX1AoQ29udm9s
dmVUZXN0LCBESVNBQkxFRF9BdmdfU3BlZWQpIHsKIAogICB2cHhfdXNlY190aW1lcl9zdGFydCgm
dGltZXIpOwogICBmb3IgKGludCBuID0gMDsgbiA8IGtOdW1UZXN0czsgKytuKSB7Ci0gICAgVVVU
Xy0+Y29weV9bMV0oaW4sIGtJbnB1dFN0cmlkZSwgb3V0LCBrT3V0cHV0U3RyaWRlLCBOVUxMLCAw
LCAwLCAwLCAwLAorICAgIFVVVF8tPmNvcHlfWzFdKGluLCBrSW5wdXRTdHJpZGUsIG91dCwga091
dHB1dFN0cmlkZSwgbnVsbHB0ciwgMCwgMCwgMCwgMCwKICAgICAgICAgICAgICAgICAgICB3aWR0
aCwgaGVpZ2h0KTsKICAgfQogICB2cHhfdXNlY190aW1lcl9tYXJrKCZ0aW1lcik7CkBAIC03ODAs
NyArNzgwLDggQEAgVEVTVF9QKENvbnZvbHZlVGVzdCwgQ29weSkgewogICB1aW50OF90ICpjb25z
dCBvdXQgPSBvdXRwdXQoKTsKIAogICBBU01fUkVHSVNURVJfU1RBVEVfQ0hFQ0soVVVUXy0+Y29w
eV9bMF0oaW4sIGtJbnB1dFN0cmlkZSwgb3V0LCBrT3V0cHV0U3RyaWRlLAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgMCwgMCwgMCwgMCwgV2lkdGgoKSwg
SGVpZ2h0KCkpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51
bGxwdHIsIDAsIDAsIDAsIDAsIFdpZHRoKCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBIZWlnaHQoKSkpOwogCiAgIENoZWNrR3VhcmRCbG9ja3MoKTsKIApAQCAt
Nzk5LDcgKzgwMCw4IEBAIFRFU1RfUChDb252b2x2ZVRlc3QsIEF2ZykgewogICBDb3B5T3V0cHV0
VG9SZWYoKTsKIAogICBBU01fUkVHSVNURVJfU1RBVEVfQ0hFQ0soVVVUXy0+Y29weV9bMV0oaW4s
IGtJbnB1dFN0cmlkZSwgb3V0LCBrT3V0cHV0U3RyaWRlLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgMCwgMCwgMCwgMCwgV2lkdGgoKSwgSGVpZ2h0KCkp
KTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxwdHIsIDAs
IDAsIDAsIDAsIFdpZHRoKCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBIZWlnaHQoKSkpOwogCiAgIENoZWNrR3VhcmRCbG9ja3MoKTsKIApAQCAtOTU1LDkgKzk1
Nyw5IEBAIFRFU1RfUChDb252b2x2ZVRlc3QsIE1hdGNoZXNSZWZlcmVuY2VTdWJwaXhlbEZpbHRl
cikgewogICAgICAgICAgICAgICAgIFVVVF8tPmg4X1tpXShpbiwga0lucHV0U3RyaWRlLCBvdXQs
IGtPdXRwdXRTdHJpZGUsIGZpbHRlcnMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZp
bHRlcl94LCAxNiwgMCwgMTYsIFdpZHRoKCksIEhlaWdodCgpKSk7CiAgICAgICAgICAgZWxzZQot
ICAgICAgICAgICAgQVNNX1JFR0lTVEVSX1NUQVRFX0NIRUNLKFVVVF8tPmNvcHlfW2ldKGluLCBr
SW5wdXRTdHJpZGUsIG91dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBrT3V0cHV0U3RyaWRlLCBOVUxMLCAwLCAwLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIDAsIFdpZHRoKCksIEhlaWdo
dCgpKSk7CisgICAgICAgICAgICBBU01fUkVHSVNURVJfU1RBVEVfQ0hFQ0soCisgICAgICAgICAg
ICAgICAgVVVUXy0+Y29weV9baV0oaW4sIGtJbnB1dFN0cmlkZSwgb3V0LCBrT3V0cHV0U3RyaWRl
LCBudWxscHRyLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIDAsIDAsIFdp
ZHRoKCksIEhlaWdodCgpKSk7CiAKICAgICAgICAgICBDaGVja0d1YXJkQmxvY2tzKCk7CiAKQEAg
LTEwNTMsOSArMTA1NSw5IEBAIFRFU1RfUChDb252b2x2ZVRlc3QsIEZpbHRlckV4dHJlbWVzKSB7
CiAgICAgICAgICAgICAgICAgICBVVVRfLT5oOF9bMF0oaW4sIGtJbnB1dFN0cmlkZSwgb3V0LCBr
T3V0cHV0U3RyaWRlLCBmaWx0ZXJzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZp
bHRlcl94LCAxNiwgMCwgMTYsIFdpZHRoKCksIEhlaWdodCgpKSk7CiAgICAgICAgICAgICBlbHNl
Ci0gICAgICAgICAgICAgIEFTTV9SRUdJU1RFUl9TVEFURV9DSEVDSyhVVVRfLT5jb3B5X1swXShp
biwga0lucHV0U3RyaWRlLCBvdXQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBrT3V0cHV0U3RyaWRlLCBOVUxMLCAwLCAwLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgMCwgV2lkdGgo
KSwgSGVpZ2h0KCkpKTsKKyAgICAgICAgICAgICAgQVNNX1JFR0lTVEVSX1NUQVRFX0NIRUNLKAor
ICAgICAgICAgICAgICAgICAgVVVUXy0+Y29weV9bMF0oaW4sIGtJbnB1dFN0cmlkZSwgb3V0LCBr
T3V0cHV0U3RyaWRlLCBudWxscHRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
MCwgMCwgMCwgMCwgV2lkdGgoKSwgSGVpZ2h0KCkpKTsKIAogICAgICAgICAgICAgZm9yIChpbnQg
eSA9IDA7IHkgPCBIZWlnaHQoKTsgKyt5KSB7CiAgICAgICAgICAgICAgIGZvciAoaW50IHggPSAw
OyB4IDwgV2lkdGgoKTsgKyt4KQpAQCAtMTI3Niw3ICsxMjc4LDggQEAgY29uc3QgQ29udm9sdmVG
dW5jdGlvbnMgY29udm9sdmU4X2MoCiAgICAgdnB4X3NjYWxlZF8yZF9jLCB2cHhfc2NhbGVkX2F2
Z18yZF9jLCAwKTsKIGNvbnN0IENvbnZvbHZlUGFyYW0ga0FycmF5Q29udm9sdmVfY1tdID0geyBB
TExfU0laRVMoY29udm9sdmU4X2MpIH07CiAjZW5kaWYKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9Q
KEMsIENvbnZvbHZlVGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrQXJyYXlDb252b2x2ZV9jKSk7
CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoQywgQ29udm9sdmVUZXN0LAorICAgICAgICAgICAg
ICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oa0FycmF5Q29udm9sdmVfYykpOwogCiAj
aWYgSEFWRV9TU0UyICYmIFZQWF9BUkNIX1g4Nl82NAogI2lmIENPTkZJR19WUDlfSElHSEJJVERF
UFRICkBAIC0xMzE3LDggKzEzMjAsOCBAQCBjb25zdCBDb252b2x2ZUZ1bmN0aW9ucyBjb252b2x2
ZThfc3NlMigKIAogY29uc3QgQ29udm9sdmVQYXJhbSBrQXJyYXlDb252b2x2ZV9zc2UyW10gPSB7
IEFMTF9TSVpFUyhjb252b2x2ZThfc3NlMikgfTsKICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9ISUdI
QklUREVQVEgKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKFNTRTIsIENvbnZvbHZlVGVzdCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oa0FycmF5Q29udm9sdmVf
c3NlMikpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFNTRTIsIENvbnZvbHZlVGVzdCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtBcnJheUNvbnZvbHZl
X3NzZTIpKTsKICNlbmRpZgogCiAjaWYgSEFWRV9TU1NFMwpAQCAtMTMzMCw4ICsxMzMzLDggQEAg
Y29uc3QgQ29udm9sdmVGdW5jdGlvbnMgY29udm9sdmU4X3Nzc2UzKAogICAgIHZweF9zY2FsZWRf
YXZnX3ZlcnRfYywgdnB4X3NjYWxlZF8yZF9zc3NlMywgdnB4X3NjYWxlZF9hdmdfMmRfYywgMCk7
CiAKIGNvbnN0IENvbnZvbHZlUGFyYW0ga0FycmF5Q29udm9sdmU4X3Nzc2UzW10gPSB7IEFMTF9T
SVpFUyhjb252b2x2ZThfc3NzZTMpIH07Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUChTU1NFMywg
Q29udm9sdmVUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJ
bihrQXJyYXlDb252b2x2ZThfc3NzZTMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChTU1NF
MywgQ29udm9sdmVUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFs
dWVzSW4oa0FycmF5Q29udm9sdmU4X3Nzc2UzKSk7CiAjZW5kaWYKIAogI2lmIEhBVkVfQVZYMgpA
QCAtMTM2Miw4ICsxMzY1LDggQEAgY29uc3QgQ29udm9sdmVGdW5jdGlvbnMgY29udm9sdmUxMl9h
dngyKAogY29uc3QgQ29udm9sdmVQYXJhbSBrQXJyYXlDb252b2x2ZThfYXZ4MltdID0geyBBTExf
U0laRVMoY29udm9sdmU4X2F2eDIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBBTExfU0laRVMoY29udm9sdmUxMF9hdngyKSwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQUxMX1NJWkVTKGNvbnZvbHZlMTJfYXZ4
MikgfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEFWWDIsIENvbnZvbHZlVGVzdCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oa0FycmF5Q29udm9sdmU4X2F2
eDIpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChBVlgyLCBDb252b2x2ZVRlc3QsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrQXJyYXlDb252b2x2ZThf
YXZ4MikpOwogI2Vsc2UgICAvLyAhQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKIGNvbnN0IENvbnZv
bHZlRnVuY3Rpb25zIGNvbnZvbHZlOF9hdngyKAogICAgIHZweF9jb252b2x2ZV9jb3B5X2MsIHZw
eF9jb252b2x2ZV9hdmdfYywgdnB4X2NvbnZvbHZlOF9ob3Jpel9hdngyLApAQCAtMTM3Miw4ICsx
Mzc1LDggQEAgY29uc3QgQ29udm9sdmVGdW5jdGlvbnMgY29udm9sdmU4X2F2eDIoCiAgICAgdnB4
X3NjYWxlZF9ob3Jpel9jLCB2cHhfc2NhbGVkX2F2Z19ob3Jpel9jLCB2cHhfc2NhbGVkX3ZlcnRf
YywKICAgICB2cHhfc2NhbGVkX2F2Z192ZXJ0X2MsIHZweF9zY2FsZWRfMmRfYywgdnB4X3NjYWxl
ZF9hdmdfMmRfYywgMCk7CiBjb25zdCBDb252b2x2ZVBhcmFtIGtBcnJheUNvbnZvbHZlOF9hdngy
W10gPSB7IEFMTF9TSVpFUyhjb252b2x2ZThfYXZ4MikgfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FT
RV9QKEFWWDIsIENvbnZvbHZlVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGlu
Zzo6VmFsdWVzSW4oa0FycmF5Q29udm9sdmU4X2F2eDIpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJ
VEVfUChBVlgyLCBDb252b2x2ZVRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXNJbihrQXJyYXlDb252b2x2ZThfYXZ4MikpOwogI2VuZGlmICAvLyBDT05GSUdf
VlA5X0hJR0hCSVRERVBUSAogI2VuZGlmICAvLyBIQVZFX0FWWDIKIApAQCAtMTQxNiw4ICsxNDE5
LDggQEAgY29uc3QgQ29udm9sdmVGdW5jdGlvbnMgY29udm9sdmU4X25lb24oCiAKIGNvbnN0IENv
bnZvbHZlUGFyYW0ga0FycmF5Q29udm9sdmVfbmVvbltdID0geyBBTExfU0laRVMoY29udm9sdmU4
X25lb24pIH07CiAjZW5kaWYgIC8vIENPTkZJR19WUDlfSElHSEJJVERFUFRICi1JTlNUQU5USUFU
RV9URVNUX0NBU0VfUChORU9OLCBDb252b2x2ZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAg
ICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtBcnJheUNvbnZvbHZlX25lb24pKTsKK0lOU1RBTlRJQVRF
X1RFU1RfU1VJVEVfUChORU9OLCBDb252b2x2ZVRlc3QsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrQXJyYXlDb252b2x2ZV9uZW9uKSk7CiAjZW5kaWYgIC8v
IEhBVkVfTkVPTgogCiAjaWYgSEFWRV9EU1BSMgpAQCAtMTQyOSw4ICsxNDMyLDggQEAgY29uc3Qg
Q29udm9sdmVGdW5jdGlvbnMgY29udm9sdmU4X2RzcHIyKAogICAgIHZweF9zY2FsZWRfYXZnX3Zl
cnRfYywgdnB4X3NjYWxlZF8yZF9jLCB2cHhfc2NhbGVkX2F2Z18yZF9jLCAwKTsKIAogY29uc3Qg
Q29udm9sdmVQYXJhbSBrQXJyYXlDb252b2x2ZThfZHNwcjJbXSA9IHsgQUxMX1NJWkVTKGNvbnZv
bHZlOF9kc3ByMikgfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKERTUFIyLCBDb252b2x2ZVRl
c3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtBcnJheUNv
bnZvbHZlOF9kc3ByMikpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKERTUFIyLCBDb252b2x2
ZVRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrQXJy
YXlDb252b2x2ZThfZHNwcjIpKTsKICNlbmRpZiAgLy8gSEFWRV9EU1BSMgogCiAjaWYgSEFWRV9N
U0EKQEAgLTE0NDIsOCArMTQ0NSw4IEBAIGNvbnN0IENvbnZvbHZlRnVuY3Rpb25zIGNvbnZvbHZl
OF9tc2EoCiAgICAgdnB4X3NjYWxlZF9hdmdfdmVydF9jLCB2cHhfc2NhbGVkXzJkX21zYSwgdnB4
X3NjYWxlZF9hdmdfMmRfYywgMCk7CiAKIGNvbnN0IENvbnZvbHZlUGFyYW0ga0FycmF5Q29udm9s
dmU4X21zYVtdID0geyBBTExfU0laRVMoY29udm9sdmU4X21zYSkgfTsKLUlOU1RBTlRJQVRFX1RF
U1RfQ0FTRV9QKE1TQSwgQ29udm9sdmVUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXNJbihrQXJyYXlDb252b2x2ZThfbXNhKSk7CitJTlNUQU5USUFURV9URVNU
X1NVSVRFX1AoTVNBLCBDb252b2x2ZVRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXNJbihrQXJyYXlDb252b2x2ZThfbXNhKSk7CiAjZW5kaWYgIC8vIEhBVkVf
TVNBCiAKICNpZiBIQVZFX1ZTWApAQCAtMTQ1NCw4ICsxNDU3LDggQEAgY29uc3QgQ29udm9sdmVG
dW5jdGlvbnMgY29udm9sdmU4X3ZzeCgKICAgICB2cHhfc2NhbGVkX2hvcml6X2MsIHZweF9zY2Fs
ZWRfYXZnX2hvcml6X2MsIHZweF9zY2FsZWRfdmVydF9jLAogICAgIHZweF9zY2FsZWRfYXZnX3Zl
cnRfYywgdnB4X3NjYWxlZF8yZF9jLCB2cHhfc2NhbGVkX2F2Z18yZF9jLCAwKTsKIGNvbnN0IENv
bnZvbHZlUGFyYW0ga0FycmF5Q29udm9sdmVfdnN4W10gPSB7IEFMTF9TSVpFUyhjb252b2x2ZThf
dnN4KSB9OwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoVlNYLCBDb252b2x2ZVRlc3QsCi0gICAg
ICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtBcnJheUNvbnZvbHZlX3Zz
eCkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFZTWCwgQ29udm9sdmVUZXN0LAorICAgICAg
ICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oa0FycmF5Q29udm9sdmVfdnN4
KSk7CiAjZW5kaWYgIC8vIEhBVkVfVlNYCiAKICNpZiBIQVZFX01NSQpAQCAtMTQ2Niw3ICsxNDY5
LDcgQEAgY29uc3QgQ29udm9sdmVGdW5jdGlvbnMgY29udm9sdmU4X21taSgKICAgICB2cHhfc2Nh
bGVkX2hvcml6X2MsIHZweF9zY2FsZWRfYXZnX2hvcml6X2MsIHZweF9zY2FsZWRfdmVydF9jLAog
ICAgIHZweF9zY2FsZWRfYXZnX3ZlcnRfYywgdnB4X3NjYWxlZF8yZF9jLCB2cHhfc2NhbGVkX2F2
Z18yZF9jLCAwKTsKIGNvbnN0IENvbnZvbHZlUGFyYW0ga0FycmF5Q29udm9sdmVfbW1pW10gPSB7
IEFMTF9TSVpFUyhjb252b2x2ZThfbW1pKSB9OwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTU1J
LCBDb252b2x2ZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVl
c0luKGtBcnJheUNvbnZvbHZlX21taSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE1NSSwg
Q29udm9sdmVUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVz
SW4oa0FycmF5Q29udm9sdmVfbW1pKSk7CiAjZW5kaWYgIC8vIEhBVkVfTU1JCiB9ICAvLyBuYW1l
c3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9jcHVfc3BlZWRfdGVzdC5jYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC9jcHVfc3BlZWRfdGVzdC5jYwppbmRleCAyZmI1YzEwZWFlMTNkZjdhZWE3
ZWE2NmNkN2VjMzY2MzVkMzhmODE0Li5hNzYyM2YwOWFjMTU1MDViYzBlMTJjNzhmYjMyNjg1NGY2
MjI0MDc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvY3B1X3NwZWVkX3Rlc3QuY2MKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L2NwdV9zcGVlZF90ZXN0LmNjCkBAIC0xNDgsOSArMTQ4LDkgQEAg
VEVTVF9QKENwdVNwZWVkVGVzdCwgVGVzdExvd0JpdHJhdGUpIHsKICAgQVNTRVJUX05PX0ZBVEFM
X0ZBSUxVUkUoUnVuTG9vcCgmdmlkZW8pKTsKIH0KIAotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FT
RShDcHVTcGVlZFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFs
dWVzKDo6bGlidnB4X3Rlc3Q6OmtUd29QYXNzR29vZCwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgOjpsaWJ2cHhfdGVzdDo6a09uZVBhc3NHb29kLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6OmxpYnZweF90ZXN0OjprUmVh
bFRpbWUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDAsIDEw
KSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURShDcHVTcGVlZFRlc3QsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0OjprVHdvUGFz
c0dvb2QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Omxp
YnZweF90ZXN0OjprT25lUGFzc0dvb2QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA6OmxpYnZweF90ZXN0OjprUmVhbFRpbWUpLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgwLCAxMCkpOwogfSAgLy8gbmFtZXNwYWNlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvY3FfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9j
cV90ZXN0LmNjCmluZGV4IDQ3NGI5ZDBmYTJlZWVjMjUzMmVkOWFmNjk5N2UwYWEwMDBhYTQ5NjYu
LjI5MmFkYjBkMDRmNGEwMWE1MDliYzVlMGJiNWNlNmI0NTQxZjQ3M2QgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC9jcV90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9jcV90ZXN0LmNj
CkBAIC0yOSw5ICsyOSw5IEBAIGNsYXNzIENRVGVzdCA6IHB1YmxpYyA6OmxpYnZweF90ZXN0OjpF
bmNvZGVyVGVzdCwKICAgLy8gbWFwcyB0aGUgY3FsZXZlbCB0byB0aGUgYml0cmF0ZSBwcm9kdWNl
ZC4KICAgdHlwZWRlZiBzdGQ6Om1hcDxpbnQsIHVpbnQzMl90PiBCaXRyYXRlTWFwOwogCi0gIHN0
YXRpYyB2b2lkIFNldFVwVGVzdENhc2UoKSB7IGJpdHJhdGVzXy5jbGVhcigpOyB9CisgIHN0YXRp
YyB2b2lkIFNldFVwVGVzdFN1aXRlKCkgeyBiaXRyYXRlc18uY2xlYXIoKTsgfQogCi0gIHN0YXRp
YyB2b2lkIFRlYXJEb3duVGVzdENhc2UoKSB7CisgIHN0YXRpYyB2b2lkIFRlYXJEb3duVGVzdFN1
aXRlKCkgewogICAgIEFTU0VSVF9UUlVFKCFIYXNGYWlsdXJlKCkpCiAgICAgICAgIDw8ICJza2lw
cGluZyBiaXRyYXRlIHZhbGlkYXRpb24gZHVlIHRvIGVhcmxpZXIgZmFpbHVyZS4iOwogICAgIHVp
bnQzMl90IHByZXZfYWN0dWFsX2JpdHJhdGUgPSBrQ1FUYXJnZXRCaXRyYXRlOwpAQCAtMTI2LDYg
KzEyNiw2IEBAIFRFU1RfUChDUVRlc3QsIExpbmVhclBTTlJJc0hpZ2hlckZvckNRTGV2ZWwpIHsK
ICAgRVhQRUNUX0dFKGNxX3BzbnJfbGluLCB2YnJfcHNucl9saW4pOwogfQogCi1WUDhfSU5TVEFO
VElBVEVfVEVTVF9DQVNFKENRVGVzdCwgOjp0ZXN0aW5nOjpSYW5nZShrQ1FMZXZlbE1pbiwga0NR
TGV2ZWxNYXgsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBrQ1FMZXZlbFN0ZXApKTsKK1ZQOF9JTlNUQU5USUFURV9URVNUX1NVSVRFKENRVGVzdCwg
Ojp0ZXN0aW5nOjpSYW5nZShrQ1FMZXZlbE1pbiwga0NRTGV2ZWxNYXgsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga0NRTGV2ZWxTdGVwKSk7CiB9
ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9jeF9zZXRfcmVmLnNo
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L2N4X3NldF9yZWYuc2gKaW5kZXggMGE1OGRjMTg3YjU2ZTUxNzg5
ZTZhYmEzOTBkZTBkNTEzOWViYTVlOC4uMGEzZDUwY2UxZmIyYmRlNGU4ZTJjYjZmZWVlZWE5ZGE1
NTcyMDAwMCAxMDA3NTUKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2N4X3NldF9yZWYuc2gKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90ZXN0L2N4X3NldF9yZWYuc2gKQEAgLTM4LDcgKzM4LDcgQEAgdnB4X3NldF9y
ZWYoKSB7CiAKICAgZXZhbCAiJHtWUFhfVEVTVF9QUkVGSVh9IiAiJHtlbmNvZGVyfSIgIiR7WVVW
X1JBV19JTlBVVF9XSURUSH0iIFwKICAgICAgICIke1lVVl9SQVdfSU5QVVRfSEVJR0hUfSIgIiR7
WVVWX1JBV19JTlBVVH0iICIke291dHB1dF9maWxlfSIgXAotICAgICAgIiR7cmVmX2ZyYW1lX251
bX0iICR7ZGV2bnVsbH0KKyAgICAgICIke3JlZl9mcmFtZV9udW19IiAke2Rldm51bGx9IHx8IHJl
dHVybiAxCiAKICAgWyAtZSAiJHtvdXRwdXRfZmlsZX0iIF0gfHwgcmV0dXJuIDEKIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9kY3QxNngxNl90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0
L2RjdDE2eDE2X3Rlc3QuY2MKaW5kZXggOWNjZjJiODRmMTFmNDIzODI2YjIyZjYzZjkxYTQ5Yzg5
NDM4MzFkOC4uYzA0ODgwZWM5NWY0ZmQ5NzJhZjFjZjI2ZmEzZTk3NDE3YTFiMDViMCAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90ZXN0L2RjdDE2eDE2X3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90
ZXN0L2RjdDE2eDE2X3Rlc3QuY2MKQEAgLTcxNCw2ICs3MTQsNyBAQCBURVNUX1AoVHJhbnMxNngx
NkhULCBRdWFudENoZWNrKSB7CiAgIFJ1blF1YW50Q2hlY2soNDI5LCA3MjkpOwogfQogCisjaWYg
SEFWRV9TU0UyICYmIENPTkZJR19WUDlfSElHSEJJVERFUFRIICYmICFDT05GSUdfRU1VTEFURV9I
QVJEV0FSRQogY2xhc3MgSW52VHJhbnMxNngxNkRDVCA6IHB1YmxpYyBUcmFuczE2eDE2VGVzdEJh
c2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgcHVibGljIDo6dGVzdGluZzo6VGVzdFdpdGhQ
YXJhbTxJZGN0MTZ4MTZQYXJhbT4gewogIHB1YmxpYzoKQEAgLTczOSwyOSArNzQwLDMxIEBAIGNs
YXNzIEludlRyYW5zMTZ4MTZEQ1QgOiBwdWJsaWMgVHJhbnMxNngxNlRlc3RCYXNlLAogICBJZGN0
RnVuYyBpbnZfdHhmbV87CiAgIGludCB0aHJlc2hfOwogfTsKK0dURVNUX0FMTE9XX1VOSU5TVEFO
VElBVEVEX1BBUkFNRVRFUklaRURfVEVTVChJbnZUcmFuczE2eDE2RENUKTsKIAogVEVTVF9QKElu
dlRyYW5zMTZ4MTZEQ1QsIENvbXBhcmVSZWZlcmVuY2UpIHsKICAgQ29tcGFyZUludlJlZmVyZW5j
ZShyZWZfdHhmbV8sIHRocmVzaF8pOwogfQorI2VuZGlmICAvLyBIQVZFX1NTRTIgJiYgQ09ORklH
X1ZQOV9ISUdIQklUREVQVEggJiYgIUNPTkZJR19FTVVMQVRFX0hBUkRXQVJFCiAKIHVzaW5nIHN0
ZDo6bWFrZV90dXBsZTsKIAogI2lmIENPTkZJR19WUDlfSElHSEJJVERFUFRICi1JTlNUQU5USUFU
RV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBDLCBUcmFuczE2
eDE2RENULAogICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBtYWtlX3R1cGxlKCZ2cHhf
aGlnaGJkX2ZkY3QxNngxNl9jLCAmaWRjdDE2eDE2XzEwLCAwLCBWUFhfQklUU18xMCksCiAgICAg
ICAgIG1ha2VfdHVwbGUoJnZweF9oaWdoYmRfZmRjdDE2eDE2X2MsICZpZGN0MTZ4MTZfMTIsIDAs
IFZQWF9CSVRTXzEyKSwKICAgICAgICAgbWFrZV90dXBsZSgmdnB4X2ZkY3QxNngxNl9jLCAmdnB4
X2lkY3QxNngxNl8yNTZfYWRkX2MsIDAsIFZQWF9CSVRTXzgpKSk7CiAjZWxzZQotSU5TVEFOVElB
VEVfVEVTVF9DQVNFX1AoQywgVHJhbnMxNngxNkRDVCwKLSAgICAgICAgICAgICAgICAgICAgICAg
IDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZweF9mZGN0MTZ4MTZfYywKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9pZGN0MTZ4
MTZfMjU2X2FkZF9jLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAwLCBWUFhfQklUU184KSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKEMs
IFRyYW5zMTZ4MTZEQ1QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3QxNngxNl9jLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9pZGN0MTZ4MTZfMjU2X2FkZF9jLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwg
VlBYX0JJVFNfOCkpKTsKICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKIAogI2lm
IENPTkZJR19WUDlfSElHSEJJVERFUFRICi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RB
TlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBDLCBUcmFuczE2eDE2SFQsCiAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXMoCiAgICAgICAgIG1ha2VfdHVwbGUoJnZwOV9oaWdoYmRfZmh0MTZ4MTZfYywgJmlo
dDE2eDE2XzEwLCAwLCBWUFhfQklUU18xMCksCkBAIC03NzcsNyArNzgwLDcgQEAgSU5TVEFOVElB
VEVfVEVTVF9DQVNFX1AoCiAgICAgICAgIG1ha2VfdHVwbGUoJnZwOV9maHQxNngxNl9jLCAmdnA5
X2lodDE2eDE2XzI1Nl9hZGRfYywgMiwgVlBYX0JJVFNfOCksCiAgICAgICAgIG1ha2VfdHVwbGUo
JnZwOV9maHQxNngxNl9jLCAmdnA5X2lodDE2eDE2XzI1Nl9hZGRfYywgMywgVlBYX0JJVFNfOCkp
KTsKICNlbHNlCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJ
VEVfUCgKICAgICBDLCBUcmFuczE2eDE2SFQsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAg
ICAgIG1ha2VfdHVwbGUoJnZwOV9maHQxNngxNl9jLCAmdnA5X2lodDE2eDE2XzI1Nl9hZGRfYywg
MCwgVlBYX0JJVFNfOCksCkBAIC03ODcsMTggKzc5MCwxOCBAQCBJTlNUQU5USUFURV9URVNUX0NB
U0VfUCgKICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKIAogI2lmIEhBVkVfTkVP
TiAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE5FT04sIFRyYW5zMTZ4MTZEQ1QsCiAgICAg
Ojp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3QxNngxNl9uZW9uLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9pZGN0MTZ4MTZfMjU2X2FkZF9uZW9uLCAw
LCBWUFhfQklUU184KSkpOwogI2VuZGlmICAvLyBIQVZFX05FT04gJiYgIUNPTkZJR19FTVVMQVRF
X0hBUkRXQVJFCiAKICNpZiBIQVZFX1NTRTIgJiYgIUNPTkZJR19WUDlfSElHSEJJVERFUFRIICYm
ICFDT05GSUdfRU1VTEFURV9IQVJEV0FSRQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNU
QU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgU1NFMiwgVHJhbnMxNngxNkRDVCwKICAgICA6OnRl
c3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfZmRjdDE2eDE2X3NzZTIsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2lkY3QxNngxNl8yNTZfYWRkX3NzZTIsIDAsIFZQ
WF9CSVRTXzgpKSk7Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1Rf
U1VJVEVfUCgKICAgICBTU0UyLCBUcmFuczE2eDE2SFQsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMo
bWFrZV90dXBsZSgmdnA5X2ZodDE2eDE2X3NzZTIsICZ2cDlfaWh0MTZ4MTZfMjU2X2FkZF9zc2Uy
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgVlBYX0JJVFNfOCksCkBAIC04
MTEsNyArODE0LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAjZW5kaWYgIC8vIEhBVkVf
U1NFMiAmJiAhQ09ORklHX1ZQOV9ISUdIQklUREVQVEggJiYgIUNPTkZJR19FTVVMQVRFX0hBUkRX
QVJFCiAKICNpZiBIQVZFX1NTRTIgJiYgQ09ORklHX1ZQOV9ISUdIQklUREVQVEggJiYgIUNPTkZJ
R19FTVVMQVRFX0hBUkRXQVJFCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRF
X1RFU1RfU1VJVEVfUCgKICAgICBTU0UyLCBUcmFuczE2eDE2RENULAogICAgIDo6dGVzdGluZzo6
VmFsdWVzKAogICAgICAgICBtYWtlX3R1cGxlKCZ2cHhfaGlnaGJkX2ZkY3QxNngxNl9zc2UyLCAm
aWRjdDE2eDE2XzEwLCAwLCBWUFhfQklUU18xMCksCkBAIC04MjIsNyArODI1LDcgQEAgSU5TVEFO
VElBVEVfVEVTVF9DQVNFX1AoCiAgICAgICAgICAgICAgICAgICAgVlBYX0JJVFNfMTIpLAogICAg
ICAgICBtYWtlX3R1cGxlKCZ2cHhfZmRjdDE2eDE2X3NzZTIsICZ2cHhfaWRjdDE2eDE2XzI1Nl9h
ZGRfYywgMCwKICAgICAgICAgICAgICAgICAgICBWUFhfQklUU184KSkpOwotSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgU1NFMiwgVHJhbnMx
NngxNkhULAogICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBtYWtlX3R1cGxlKCZ2cDlf
Zmh0MTZ4MTZfc3NlMiwgJnZwOV9paHQxNngxNl8yNTZfYWRkX2MsIDAsIFZQWF9CSVRTXzgpLApA
QCAtODMyLDcgKzgzNSw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAg
ICAgICAgIFZQWF9CSVRTXzgpKSk7CiAvLyBPcHRpbWl6YXRpb25zIHRha2UgZWZmZWN0IGF0IGEg
dGhyZXNob2xkIG9mIDMxNTUsIHNvIHdlIHVzZSBhIHZhbHVlIGNsb3NlIHRvCiAvLyB0aGF0IHRv
IHRlc3QgYm90aCBicmFuY2hlcy4KLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElB
VEVfVEVTVF9TVUlURV9QKAogICAgIFNTRTIsIEludlRyYW5zMTZ4MTZEQ1QsCiAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmaWRjdDE2eDE2XzEwX2FkZF8xMF9jLAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgJmlkY3QxNngxNl8xMF9hZGRfMTBfc3NlMiwgMzE2Nywg
VlBYX0JJVFNfMTApLApAQCAtODQ1LDExICs4NDgsMTEgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNF
X1AoCiAjZW5kaWYgIC8vIEhBVkVfU1NFMiAmJiBDT05GSUdfVlA5X0hJR0hCSVRERVBUSCAmJiAh
Q09ORklHX0VNVUxBVEVfSEFSRFdBUkUKIAogI2lmIEhBVkVfTVNBICYmICFDT05GSUdfVlA5X0hJ
R0hCSVRERVBUSCAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKLUlOU1RBTlRJQVRFX1RFU1Rf
Q0FTRV9QKE1TQSwgVHJhbnMxNngxNkRDVCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVz
dGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZweF9mZGN0MTZ4MTZfbXNhLAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2lkY3QxNngxNl8y
NTZfYWRkX21zYSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgMCwgVlBYX0JJVFNfOCkpKTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5T
VEFOVElBVEVfVEVTVF9TVUlURV9QKAorICAgIE1TQSwgVHJhbnMxNngxNkRDVCwKKyAgICA6OnRl
c3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfZmRjdDE2eDE2X21zYSwgJnZweF9pZGN0MTZ4
MTZfMjU2X2FkZF9tc2EsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCBWUFhf
QklUU184KSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE1TQSwgVHJhbnMxNngx
NkhULAogICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBtYWtlX3R1cGxlKCZ2cDlfZmh0
MTZ4MTZfbXNhLCAmdnA5X2lodDE2eDE2XzI1Nl9hZGRfbXNhLCAwLCBWUFhfQklUU184KSwKQEAg
LTg2MCw5ICs4NjMsOSBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNlbmRpZiAgLy8gSEFW
RV9NU0EgJiYgIUNPTkZJR19WUDlfSElHSEJJVERFUFRIICYmICFDT05GSUdfRU1VTEFURV9IQVJE
V0FSRQogCiAjaWYgSEFWRV9WU1ggJiYgIUNPTkZJR19WUDlfSElHSEJJVERFUFRIICYmICFDT05G
SUdfRU1VTEFURV9IQVJEV0FSRQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoVlNYLCBUcmFuczE2
eDE2RENULAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90
dXBsZSgmdnB4X2ZkY3QxNngxNl9jLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAmdnB4X2lkY3QxNngxNl8yNTZfYWRkX3ZzeCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgVlBYX0JJVFNf
OCkpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKKyAgICBWU1gsIFRyYW5zMTZ4MTZEQ1Qs
CisgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3QxNngxNl9jLCAmdnB4
X2lkY3QxNngxNl8yNTZfYWRkX3ZzeCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDAsIFZQWF9CSVRTXzgpKSk7CiAjZW5kaWYgIC8vIEhBVkVfVlNYICYmICFDT05GSUdfVlA5X0hJ
R0hCSVRERVBUSCAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKIH0gIC8vIG5hbWVzcGFjZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2RjdDMyeDMyX3Rlc3QuY2MgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3Rlc3QvZGN0MzJ4MzJfdGVzdC5jYwppbmRleCA5NGQ2YjM3ZmE5MWFlOTliMTY0NTFlYjQ0ZTNl
ODZmNzIzMWMyMWI5Li44Mzk4ZTE3ZTgxYTQ0OTE2MzJjMWU1NGE3OTdmOWZiMDNjZjEyZjk0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZGN0MzJ4MzJfdGVzdC5jYworKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rlc3QvZGN0MzJ4MzJfdGVzdC5jYwpAQCAtMzE3LDcgKzMxNyw3IEBAIFRFU1RfUChUcmFu
czMyeDMyVGVzdCwgSW52ZXJzZUFjY3VyYWN5KSB7CiB1c2luZyBzdGQ6Om1ha2VfdHVwbGU7CiAK
ICNpZiBDT05GSUdfVlA5X0hJR0hCSVRERVBUSAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJ
TlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgQywgVHJhbnMzMngzMlRlc3QsCiAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIG1ha2VfdHVwbGUoJnZweF9oaWdoYmRfZmRjdDMyeDMy
X2MsICZpZGN0MzJ4MzJfMTAsIDAsIFZQWF9CSVRTXzEwKSwKQEAgLTMyOCw3ICszMjgsNyBAQCBJ
TlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgbWFrZV90dXBsZSgmdnB4X2ZkY3QzMngz
Ml9yZF9jLCAmdnB4X2lkY3QzMngzMl8xMDI0X2FkZF9jLCAxLAogICAgICAgICAgICAgICAgICAg
IFZQWF9CSVRTXzgpKSk7CiAjZWxzZQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5U
SUFURV9URVNUX1NVSVRFX1AoCiAgICAgQywgVHJhbnMzMngzMlRlc3QsCiAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3QzMngzMl9jLCAmdnB4X2lkY3QzMngzMl8xMDI0
X2FkZF9jLCAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVlBYX0JJVFNfOCks
CkBAIC0zMzcsNyArMzM3LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAjZW5kaWYgIC8v
IENPTkZJR19WUDlfSElHSEJJVERFUFRICiAKICNpZiBIQVZFX05FT04gJiYgIUNPTkZJR19FTVVM
QVRFX0hBUkRXQVJFCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1Rf
U1VJVEVfUCgKICAgICBORU9OLCBUcmFuczMyeDMyVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVl
cyhtYWtlX3R1cGxlKCZ2cHhfZmRjdDMyeDMyX25lb24sCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAmdnB4X2lkY3QzMngzMl8xMDI0X2FkZF9uZW9uLCAwLCBWUFhfQklUU184KSwK
QEAgLTM0Niw3ICszNDYsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNlbmRpZiAgLy8g
SEFWRV9ORU9OICYmICFDT05GSUdfRU1VTEFURV9IQVJEV0FSRQogCiAjaWYgSEFWRV9TU0UyICYm
ICFDT05GSUdfVlA5X0hJR0hCSVRERVBUSCAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKLUlO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNT
RTIsIFRyYW5zMzJ4MzJUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZw
eF9mZGN0MzJ4MzJfc3NlMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhf
aWRjdDMyeDMyXzEwMjRfYWRkX3NzZTIsIDAsIFZQWF9CSVRTXzgpLApAQCAtMzU1LDcgKzM1NSw3
IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX1NTRTIgJiYgIUNP
TkZJR19WUDlfSElHSEJJVERFUFRIICYmICFDT05GSUdfRU1VTEFURV9IQVJEV0FSRQogCiAjaWYg
SEFWRV9TU0UyICYmIENPTkZJR19WUDlfSElHSEJJVERFUFRIICYmICFDT05GSUdfRU1VTEFURV9I
QVJEV0FSRQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRF
X1AoCiAgICAgU1NFMiwgVHJhbnMzMngzMlRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAg
ICAgICAgIG1ha2VfdHVwbGUoJnZweF9oaWdoYmRfZmRjdDMyeDMyX3NzZTIsICZpZGN0MzJ4MzJf
MTAsIDAsIFZQWF9CSVRTXzEwKSwKQEAgLTM3MSw3ICszNzEsNyBAQCBJTlNUQU5USUFURV9URVNU
X0NBU0VfUCgKICNlbmRpZiAgLy8gSEFWRV9TU0UyICYmIENPTkZJR19WUDlfSElHSEJJVERFUFRI
ICYmICFDT05GSUdfRU1VTEFURV9IQVJEV0FSRQogCiAjaWYgSEFWRV9BVlgyICYmICFDT05GSUdf
VlA5X0hJR0hCSVRERVBUSCAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKLUlOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEFWWDIsIFRyYW5z
MzJ4MzJUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZweF9mZGN0MzJ4
MzJfYXZ4MiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfaWRjdDMyeDMy
XzEwMjRfYWRkX3NzZTIsIDAsIFZQWF9CSVRTXzgpLApAQCAtMzgwLDcgKzM4MCw3IEBAIElOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX0FWWDIgJiYgIUNPTkZJR19WUDlf
SElHSEJJVERFUFRIICYmICFDT05GSUdfRU1VTEFURV9IQVJEV0FSRQogCiAjaWYgSEFWRV9NU0Eg
JiYgIUNPTkZJR19WUDlfSElHSEJJVERFUFRIICYmICFDT05GSUdfRU1VTEFURV9IQVJEV0FSRQot
SU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAg
TVNBLCBUcmFuczMyeDMyVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2
cHhfZmRjdDMyeDMyX21zYSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhf
aWRjdDMyeDMyXzEwMjRfYWRkX21zYSwgMCwgVlBYX0JJVFNfOCksCkBAIC0zODksNyArMzg5LDcg
QEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAjZW5kaWYgIC8vIEhBVkVfTVNBICYmICFDT05G
SUdfVlA5X0hJR0hCSVRERVBUSCAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKIAogI2lmIEhB
VkVfVlNYICYmICFDT05GSUdfVlA5X0hJR0hCSVRERVBUSCAmJiAhQ09ORklHX0VNVUxBVEVfSEFS
RFdBUkUKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9Q
KAogICAgIFZTWCwgVHJhbnMzMngzMlRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90
dXBsZSgmdnB4X2ZkY3QzMngzMl9jLCAmdnB4X2lkY3QzMngzMl8xMDI0X2FkZF92c3gsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCBWUFhfQklUU184KSwKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdGVzdC9kY3RfcGFydGlhbF90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2Rj
dF9wYXJ0aWFsX3Rlc3QuY2MKaW5kZXggYzg4OWU5MmQ3MDlhNmIwNzA1ZjdiMzk4N2RjMWVlOTdk
MjExNmU2NS4uOGQwZTNhOTEyZTk4NDI2N2FjMmM3ODE1NDFmOWYwNDZkYTRkZDE2YyAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90ZXN0L2RjdF9wYXJ0aWFsX3Rlc3QuY2MKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90ZXN0L2RjdF9wYXJ0aWFsX3Rlc3QuY2MKQEAgLTM5LDcgKzM5LDcgQEAgdHlwZWRlZiB0dXBs
ZTxQYXJ0aWFsRmRjdEZ1bmMsIGludCAvKiBzaXplICovLCB2cHhfYml0X2RlcHRoX3Q+CiAKIHRy
YW5fbG93X3QgcGFydGlhbF9mZGN0X3JlZihjb25zdCBCdWZmZXI8aW50MTZfdD4gJmluLCBpbnQg
c2l6ZSkgewogICBpbnQ2NF90IHN1bSA9IDA7Ci0gIGlmIChpbi5Ub3BMZWZ0UGl4ZWwoKSAhPSBO
VUxMKSB7CisgIGlmIChpbi5Ub3BMZWZ0UGl4ZWwoKSAhPSBudWxscHRyKSB7CiAgICAgZm9yIChp
bnQgeSA9IDA7IHkgPCBzaXplOyArK3kpIHsKICAgICAgIGZvciAoaW50IHggPSAwOyB4IDwgc2l6
ZTsgKyt4KSB7CiAgICAgICAgIHN1bSArPSBpbi5Ub3BMZWZ0UGl4ZWwoKVt5ICogaW4uc3RyaWRl
KCkgKyB4XTsKQEAgLTgxLDcgKzgxLDcgQEAgY2xhc3MgUGFydGlhbEZkY3RUZXN0IDogcHVibGlj
IDo6dGVzdGluZzo6VGVzdFdpdGhQYXJhbTxQYXJ0aWFsRmRjdFBhcmFtPiB7CiAgICAgQnVmZmVy
PHRyYW5fbG93X3Q+IG91dHB1dF9ibG9jayA9IEJ1ZmZlcjx0cmFuX2xvd190PihzaXplXywgc2l6
ZV8sIDAsIDE2KTsKICAgICBBU1NFUlRfVFJVRShvdXRwdXRfYmxvY2suSW5pdCgpKTsKIAotICAg
IGlmIChvdXRwdXRfYmxvY2suVG9wTGVmdFBpeGVsKCkgIT0gTlVMTCkgeworICAgIGlmIChvdXRw
dXRfYmxvY2suVG9wTGVmdFBpeGVsKCkgIT0gbnVsbHB0cikgewogICAgICAgZm9yIChpbnQgaSA9
IDA7IGkgPCAxMDA7ICsraSkgewogICAgICAgICBpZiAoaSA9PSAwKSB7CiAgICAgICAgICAgaW5w
dXRfYmxvY2suU2V0KG1heHZhbHVlKTsKQEAgLTExMSw3ICsxMTEsNyBAQCBjbGFzcyBQYXJ0aWFs
RmRjdFRlc3QgOiBwdWJsaWMgOjp0ZXN0aW5nOjpUZXN0V2l0aFBhcmFtPFBhcnRpYWxGZGN0UGFy
YW0+IHsKIFRFU1RfUChQYXJ0aWFsRmRjdFRlc3QsIFBhcnRpYWxGZGN0VGVzdCkgeyBSdW5UZXN0
KCk7IH0KIAogI2lmIENPTkZJR19WUDlfSElHSEJJVERFUFRICi1JTlNUQU5USUFURV9URVNUX0NB
U0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBDLCBQYXJ0aWFsRmRjdFRlc3Qs
CiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2hpZ2hiZF9mZGN0MzJ4MzJf
MV9jLCAzMiwgVlBYX0JJVFNfMTIpLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUo
JnZweF9oaWdoYmRfZmRjdDMyeDMyXzFfYywgMzIsIFZQWF9CSVRTXzEwKSwKQEAgLTEyNCw3ICsx
MjQsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgICAgICAgICAgICAgICBt
YWtlX3R1cGxlKCZ2cHhfZmRjdDh4OF8xX2MsIDgsIFZQWF9CSVRTXzgpLAogICAgICAgICAgICAg
ICAgICAgICAgIG1ha2VfdHVwbGUoJnZweF9mZGN0NHg0XzFfYywgNCwgVlBYX0JJVFNfOCkpKTsK
ICNlbHNlCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVf
UCgKICAgICBDLCBQYXJ0aWFsRmRjdFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90
dXBsZSgmdnB4X2ZkY3QzMngzMl8xX2MsIDMyLCBWUFhfQklUU184KSwKICAgICAgICAgICAgICAg
ICAgICAgICBtYWtlX3R1cGxlKCZ2cHhfZmRjdDE2eDE2XzFfYywgMTYsIFZQWF9CSVRTXzgpLApA
QCAtMTMzLDcgKzEzMyw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBD
T05GSUdfVlA5X0hJR0hCSVRERVBUSAogCiAjaWYgSEFWRV9TU0UyCi1JTlNUQU5USUFURV9URVNU
X0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBTU0UyLCBQYXJ0aWFsRmRj
dFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3QzMngzMl8x
X3NzZTIsIDMyLCBWUFhfQklUU184KSwKICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxl
KCZ2cHhfZmRjdDE2eDE2XzFfc3NlMiwgMTYsIFZQWF9CSVRTXzgpLApAQCAtMTQzLDcgKzE0Myw3
IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogCiAjaWYgSEFWRV9ORU9OCiAjaWYgQ09ORklH
X1ZQOV9ISUdIQklUREVQVEgKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QKAogICAgIE5FT04sIFBhcnRpYWxGZGN0VGVzdCwKICAgICA6OnRlc3Rpbmc6
OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfZmRjdDMyeDMyXzFfbmVvbiwgMzIsIFZQWF9CSVRTXzgp
LAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoJnZweF9mZGN0MTZ4MTZfMV9uZW9u
LCAxNiwgVlBYX0JJVFNfOCksCkBAIC0xNTIsNyArMTUyLDcgQEAgSU5TVEFOVElBVEVfVEVTVF9D
QVNFX1AoCiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSgmdnB4X2ZkY3Q4eDhfMV9u
ZW9uLCA4LCBWUFhfQklUU184KSwKICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKCZ2
cHhfZmRjdDR4NF8xX25lb24sIDQsIFZQWF9CSVRTXzgpKSk7CiAjZWxzZQotSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTkVPTiwgUGFydGlh
bEZkY3RUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZweF9mZGN0MzJ4
MzJfMV9uZW9uLCAzMiwgVlBYX0JJVFNfOCksCiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90
dXBsZSgmdnB4X2ZkY3QxNngxNl8xX25lb24sIDE2LCBWUFhfQklUU184KSwKQEAgLTE2MywxMSAr
MTYzLDExIEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogCiAjaWYgSEFWRV9NU0EKICNpZiBD
T05GSUdfVlA5X0hJR0hCSVRERVBUSAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTVNBLCBQYXJ0
aWFsRmRjdFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyht
YWtlX3R1cGxlKCZ2cHhfZmRjdDh4OF8xX21zYSwgOCwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVlBYX0JJVFNfOCkpKTsKK0lOU1RBTlRJQVRF
X1RFU1RfU1VJVEVfUChNU0EsIFBhcnRpYWxGZGN0VGVzdCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfZmRjdDh4OF8xX21zYSwgOCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQ
WF9CSVRTXzgpKSk7CiAjZWxzZSAgIC8vICFDT05GSUdfVlA5X0hJR0hCSVRERVBUSAotSU5TVEFO
VElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTVNBLCBQ
YXJ0aWFsRmRjdFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2Zk
Y3QzMngzMl8xX21zYSwgMzIsIFZQWF9CSVRTXzgpLAogICAgICAgICAgICAgICAgICAgICAgIG1h
a2VfdHVwbGUoJnZweF9mZGN0MTZ4MTZfMV9tc2EsIDE2LCBWUFhfQklUU184KSwKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGVzdC9kY3RfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9kY3RfdGVz
dC5jYwppbmRleCBlZDEyZjc3NTY5MTcyMjBhYmU3NTFmNTFhYzg1MzRjNDA3M2ZmMTRjLi45NTQx
ODY5NTM1MTA1N2U0NDBjZmNmOWJkMDlhNzg1Nzg4YTUyNmRhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rlc3QvZGN0X3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2RjdF90ZXN0LmNjCkBA
IC0xNjAsMTcgKzE2MCwxNyBAQCBjbGFzcyBUcmFuc1Rlc3RCYXNlIDogcHVibGljIDo6dGVzdGlu
Zzo6VGVzdFdpdGhQYXJhbTxEY3RQYXJhbT4gewogCiAgICAgc3JjXyA9IHJlaW50ZXJwcmV0X2Nh
c3Q8dWludDhfdCAqPigKICAgICAgICAgdnB4X21lbWFsaWduKDE2LCBwaXhlbF9zaXplXyAqIGJs
b2NrX3NpemVfKSk7Ci0gICAgQVNTRVJUX1RSVUUoc3JjXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRf
TkUoc3JjXywgbnVsbHB0cik7CiAgICAgZHN0XyA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDhfdCAq
PigKICAgICAgICAgdnB4X21lbWFsaWduKDE2LCBwaXhlbF9zaXplXyAqIGJsb2NrX3NpemVfKSk7
Ci0gICAgQVNTRVJUX1RSVUUoZHN0XyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoZHN0XywgbnVs
bHB0cik7CiAgIH0KIAogICB2aXJ0dWFsIHZvaWQgVGVhckRvd24oKSB7CiAgICAgdnB4X2ZyZWUo
c3JjXyk7Ci0gICAgc3JjXyA9IE5VTEw7CisgICAgc3JjXyA9IG51bGxwdHI7CiAgICAgdnB4X2Zy
ZWUoZHN0Xyk7Ci0gICAgZHN0XyA9IE5VTEw7CisgICAgZHN0XyA9IG51bGxwdHI7CiAgICAgbGli
dnB4X3Rlc3Q6OkNsZWFyU3lzdGVtU3RhdGUoKTsKICAgfQogCkBAIC0yMTEsNyArMjExLDcgQEAg
Y2xhc3MgVHJhbnNUZXN0QmFzZSA6IHB1YmxpYyA6OnRlc3Rpbmc6OlRlc3RXaXRoUGFyYW08RGN0
UGFyYW0+IHsKICAgICBCdWZmZXI8aW50MTZfdD4gdGVzdF9pbnB1dF9ibG9jayA9CiAgICAgICAg
IEJ1ZmZlcjxpbnQxNl90PihzaXplXywgc2l6ZV8sIDgsIHNpemVfID09IDQgPyAwIDogMTYpOwog
ICAgIEFTU0VSVF9UUlVFKHRlc3RfaW5wdXRfYmxvY2suSW5pdCgpKTsKLSAgICBBU1NFUlRfVFJV
RSh0ZXN0X2lucHV0X2Jsb2NrLlRvcExlZnRQaXhlbCgpICE9IE5VTEwpOworICAgIEFTU0VSVF9O
RSh0ZXN0X2lucHV0X2Jsb2NrLlRvcExlZnRQaXhlbCgpLCBudWxscHRyKTsKICAgICBCdWZmZXI8
dHJhbl9sb3dfdD4gdGVzdF90ZW1wX2Jsb2NrID0KICAgICAgICAgQnVmZmVyPHRyYW5fbG93X3Q+
KHNpemVfLCBzaXplXywgMCwgMTYpOwogICAgIEFTU0VSVF9UUlVFKHRlc3RfdGVtcF9ibG9jay5J
bml0KCkpOwpAQCAtMzE2LDcgKzMxNiw3IEBAIGNsYXNzIFRyYW5zVGVzdEJhc2UgOiBwdWJsaWMg
Ojp0ZXN0aW5nOjpUZXN0V2l0aFBhcmFtPERjdFBhcmFtPiB7CiAgICAgICB9IGVsc2UgaWYgKGkg
PT0gMSkgewogICAgICAgICBpbnB1dF9leHRyZW1lX2Jsb2NrLlNldCgtbWF4X3BpeGVsX3ZhbHVl
Xyk7CiAgICAgICB9IGVsc2UgewotICAgICAgICBBU1NFUlRfVFJVRShpbnB1dF9leHRyZW1lX2Js
b2NrLlRvcExlZnRQaXhlbCgpICE9IE5VTEwpOworICAgICAgICBBU1NFUlRfTkUoaW5wdXRfZXh0
cmVtZV9ibG9jay5Ub3BMZWZ0UGl4ZWwoKSwgbnVsbHB0cik7CiAgICAgICAgIGZvciAoaW50IGgg
PSAwOyBoIDwgc2l6ZV87ICsraCkgewogICAgICAgICAgIGZvciAoaW50IHcgPSAwOyB3IDwgc2l6
ZV87ICsrdykgewogICAgICAgICAgICAgaW5wdXRfZXh0cmVtZV9ibG9jawpAQCAtMzMxLDcgKzMz
MSw3IEBAIGNsYXNzIFRyYW5zVGVzdEJhc2UgOiBwdWJsaWMgOjp0ZXN0aW5nOjpUZXN0V2l0aFBh
cmFtPERjdFBhcmFtPiB7CiAKICAgICAgIC8vIFRoZSBtaW5pbXVtIHF1YW50IHZhbHVlIGlzIDQu
CiAgICAgICBFWFBFQ1RfVFJVRShvdXRwdXRfYmxvY2suQ2hlY2tWYWx1ZXMob3V0cHV0X3JlZl9i
bG9jaykpOwotICAgICAgQVNTRVJUX1RSVUUob3V0cHV0X2Jsb2NrLlRvcExlZnRQaXhlbCgpICE9
IE5VTEwpOworICAgICAgQVNTRVJUX05FKG91dHB1dF9ibG9jay5Ub3BMZWZ0UGl4ZWwoKSwgbnVs
bHB0cik7CiAgICAgICBmb3IgKGludCBoID0gMDsgaCA8IHNpemVfOyArK2gpIHsKICAgICAgICAg
Zm9yIChpbnQgdyA9IDA7IHcgPCBzaXplXzsgKyt3KSB7CiAgICAgICAgICAgRVhQRUNUX0dFKApA
QCAtMzY5LDcgKzM2OSw3IEBAIGNsYXNzIFRyYW5zVGVzdEJhc2UgOiBwdWJsaWMgOjp0ZXN0aW5n
OjpUZXN0V2l0aFBhcmFtPERjdFBhcmFtPiB7CiAKICAgICBmb3IgKGludCBpID0gMDsgaSA8IGNv
dW50X3Rlc3RfYmxvY2s7ICsraSkgewogICAgICAgSW5pdE1lbSgpOwotICAgICAgQVNTRVJUX1RS
VUUoaW4uVG9wTGVmdFBpeGVsKCkgIT0gTlVMTCk7CisgICAgICBBU1NFUlRfTkUoaW4uVG9wTGVm
dFBpeGVsKCksIG51bGxwdHIpOwogICAgICAgLy8gSW5pdGlhbGl6ZSBhIHRlc3QgYmxvY2sgd2l0
aCBpbnB1dCByYW5nZSBbLW1heF9waXhlbF92YWx1ZV8sCiAgICAgICAvLyBtYXhfcGl4ZWxfdmFs
dWVfXS4KICAgICAgIGZvciAoaW50IGggPSAwOyBoIDwgc2l6ZV87ICsraCkgewpAQCAtNDczLDcg
KzQ3Myw3IEBAIHN0YXRpYyBjb25zdCBGdW5jSW5mbyBkY3RfY19mdW5jX2luZm9bXSA9IHsKICAg
ICAxIH0KIH07CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9T
VUlURV9QKAogICAgIEMsIFRyYW5zRENULAogICAgIDo6dGVzdGluZzo6Q29tYmluZSgKICAgICAg
ICAgOjp0ZXN0aW5nOjpSYW5nZSgwLCBzdGF0aWNfY2FzdDxpbnQ+KHNpemVvZihkY3RfY19mdW5j
X2luZm8pIC8KQEAgLTUwNSw3ICs1MDUsNyBAQCBzdGF0aWMgY29uc3QgRnVuY0luZm8gZGN0X3Nz
ZTJfZnVuY19pbmZvW10gPSB7CiAgICAgJmlkY3Rfd3JhcHBlcjx2cHhfaWRjdDMyeDMyXzEwMjRf
YWRkX3NzZTI+LCAzMiwgMSB9CiB9OwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RB
TlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBTU0UyLCBUcmFuc0RDVCwKICAgICA6OnRlc3Rpbmc6
OkNvbWJpbmUoCiAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoMCwgc3RhdGljX2Nhc3Q8aW50Pihz
aXplb2YoZGN0X3NzZTJfZnVuY19pbmZvKSAvCkBAIC01MjEsOSArNTIxLDkgQEAgc3RhdGljIGNv
bnN0IEZ1bmNJbmZvIGRjdF9zc3NlM19mdW5jX2luZm8gPSB7CiB9OwogCiAvLyBUT0RPKGpvaGFu
bmtvZW5pZyk6IGhpZ2ggYml0IGRlcHRoIGZkY3Q4eDguCi1JTlNUQU5USUFURV9URVNUX0NBU0Vf
UChTU1NFMywgVHJhbnNEQ1QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZh
bHVlcyhtYWtlX3R1cGxlKDAsICZkY3Rfc3NzZTNfZnVuY19pbmZvLCAwLAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWUFhfQklUU184KSkpOwor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFNTU0UzLCBUcmFuc0RDVCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDAsICZkY3Rfc3NzZTNfZnVu
Y19pbmZvLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgMCwgVlBYX0JJVFNfOCkpKTsKICNlbmRpZiAgLy8gSEFWRV9TU1NFMyAmJiAhQ09ORklH
X1ZQOV9ISUdIQklUREVQVEggJiYgVlBYX0FSQ0hfWDg2XzY0CiAKICNpZiBIQVZFX0FWWDIgJiYg
IUNPTkZJR19WUDlfSElHSEJJVERFUFRICkBAIC01MzMsOSArNTMzLDkgQEAgc3RhdGljIGNvbnN0
IEZ1bmNJbmZvIGRjdF9hdngyX2Z1bmNfaW5mbyA9IHsKIH07CiAKIC8vIFRPRE8oam9oYW5ua29l
bmlnKTogaGlnaCBiaXQgZGVwdGggZmRjdDMyeDMyLgotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1Ao
QVZYMiwgVHJhbnNEQ1QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVl
cyhtYWtlX3R1cGxlKDAsICZkY3RfYXZ4Ml9mdW5jX2luZm8sIDAsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQWF9CSVRTXzgpKSk7CitJTlNU
QU5USUFURV9URVNUX1NVSVRFX1AoQVZYMiwgVHJhbnNEQ1QsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgwLCAmZGN0X2F2eDJfZnVuY19pbmZv
LCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgVlBYX0JJVFNfOCkpKTsKICNlbmRpZiAgLy8gSEFWRV9BVlgyICYmICFDT05GSUdfVlA5X0hJ
R0hCSVRERVBUSAogCiAjaWYgSEFWRV9ORU9OCkBAIC01NTAsNyArNTUwLDcgQEAgc3RhdGljIGNv
bnN0IEZ1bmNJbmZvIGRjdF9uZW9uX2Z1bmNfaW5mb1s0XSA9IHsKICAgICAmaWRjdF93cmFwcGVy
PHZweF9pZGN0MzJ4MzJfMTAyNF9hZGRfbmVvbj4sIDMyLCAxIH0KIH07CiAKLUlOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE5FT04sIFRyYW5z
RENULAogICAgIDo6dGVzdGluZzo6Q29tYmluZSg6OnRlc3Rpbmc6OlJhbmdlKDAsIDQpLAogICAg
ICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhkY3RfbmVvbl9mdW5jX2luZm8p
LApAQCAtNTY5LDExICs1NjksMTEgQEAgc3RhdGljIGNvbnN0IEZ1bmNJbmZvIGRjdF9tc2FfZnVu
Y19pbmZvWzRdID0gewogICAgIDMyLCAxIH0KIH07CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9Q
KE1TQSwgVHJhbnNEQ1QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OkNvbWJp
bmUoOjp0ZXN0aW5nOjpSYW5nZSgwLCA0KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhkY3RfbXNhX2Z1bmNfaW5mbyksCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMo
MCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXMoVlBYX0JJVFNfOCkpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKKyAgICBN
U0EsIFRyYW5zRENULAorICAgIDo6dGVzdGluZzo6Q29tYmluZSg6OnRlc3Rpbmc6OlJhbmdlKDAs
IDQpLAorICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhkY3RfbXNhX2Z1
bmNfaW5mbyksCisgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKDApLCA6
OnRlc3Rpbmc6OlZhbHVlcyhWUFhfQklUU184KSkpOwogI2VuZGlmICAvLyBIQVZFX01TQSAmJiAh
Q09ORklHX1ZQOV9ISUdIQklUREVQVEgKIAogI2lmIEhBVkVfVlNYICYmICFDT05GSUdfVlA5X0hJ
R0hCSVRERVBUSApAQCAtNTgxLDkgKzU4MSw5IEBAIHN0YXRpYyBjb25zdCBGdW5jSW5mbyBkY3Rf
dnN4X2Z1bmNfaW5mbyA9IHsKICAgJmZkY3Rfd3JhcHBlcjx2cHhfZmRjdDR4NF9jPiwgJmlkY3Rf
d3JhcHBlcjx2cHhfaWRjdDR4NF8xNl9hZGRfdnN4PiwgNCwgMQogfTsKIAotSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoVlNYLCBUcmFuc0RDVCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVz
dGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoMCwgJmRjdF92c3hfZnVuY19pbmZvLCAwLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWUFhfQklUU184
KSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFZTWCwgVHJhbnNEQ1QsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgwLCAmZGN0X3ZzeF9m
dW5jX2luZm8sIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBWUFhfQklUU184KSkpOwogI2VuZGlmICAvLyBIQVZFX1ZTWCAmJiAhQ09ORklH
X1ZQOV9ISUdIQklUREVQVEggJiYKIAogI2VuZGlmICAvLyAhQ09ORklHX0VNVUxBVEVfSEFSRFdB
UkUKQEAgLTYxOSw3ICs2MTksNyBAQCBzdGF0aWMgY29uc3QgRnVuY0luZm8gaHRfY19mdW5jX2lu
Zm9bXSA9IHsKICAgeyAmdnA5X2ZodDE2eDE2X2MsICZpaHRfd3JhcHBlcjx2cDlfaWh0MTZ4MTZf
MjU2X2FkZF9jPiwgMTYsIDEgfQogfTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNU
QU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgQywgVHJhbnNIVCwKICAgICA6OnRlc3Rpbmc6OkNv
bWJpbmUoCiAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoMCwgc3RhdGljX2Nhc3Q8aW50PihzaXpl
b2YoaHRfY19mdW5jX2luZm8pIC8KQEAgLTY0NSw3ICs2NDUsNyBAQCBzdGF0aWMgY29uc3QgRnVu
Y0luZm8gaHRfbmVvbl9mdW5jX2luZm9bXSA9IHsKICAgeyAmdnA5X2ZodDE2eDE2X2MsICZpaHRf
d3JhcHBlcjx2cDlfaWh0MTZ4MTZfMjU2X2FkZF9uZW9uPiwgMTYsIDEgfQogfTsKIAotSU5TVEFO
VElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTkVPTiwg
VHJhbnNIVCwKICAgICA6OnRlc3Rpbmc6OkNvbWJpbmUoCiAgICAgICAgIDo6dGVzdGluZzo6UmFu
Z2UoMCwgc3RhdGljX2Nhc3Q8aW50PihzaXplb2YoaHRfbmVvbl9mdW5jX2luZm8pIC8KQEAgLTY2
MiwxMSArNjYyLDExIEBAIHN0YXRpYyBjb25zdCBGdW5jSW5mbyBodF9zc2UyX2Z1bmNfaW5mb1sz
XSA9IHsKICAgeyAmdnA5X2ZodDE2eDE2X3NzZTIsICZpaHRfd3JhcHBlcjx2cDlfaWh0MTZ4MTZf
MjU2X2FkZF9zc2UyPiwgMTYsIDEgfQogfTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoU1NF
MiwgVHJhbnNIVCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6Q29tYmluZSg6
OnRlc3Rpbmc6OlJhbmdlKDAsIDMpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKGh0X3NzZTJfZnVuY19pbmZvKSwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDAsIDQp
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6
VmFsdWVzKFZQWF9CSVRTXzgpKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCisgICAgU1NF
MiwgVHJhbnNIVCwKKyAgICA6OnRlc3Rpbmc6OkNvbWJpbmUoOjp0ZXN0aW5nOjpSYW5nZSgwLCAz
KSwKKyAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoaHRfc3NlMl9mdW5j
X2luZm8pLAorICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDAsIDQpLCA6
OnRlc3Rpbmc6OlZhbHVlcyhWUFhfQklUU184KSkpOwogI2VuZGlmICAvLyBIQVZFX1NTRTIKIAog
I2lmIEhBVkVfU1NFNF8xICYmIENPTkZJR19WUDlfSElHSEJJVERFUFRICkBAIC02NzksNyArNjc5
LDcgQEAgc3RhdGljIGNvbnN0IEZ1bmNJbmZvIGh0X3NzZTRfMV9mdW5jX2luZm9bM10gPSB7CiAg
ICAgJmhpZ2hiZF9paHRfd3JhcHBlcjx2cDlfaGlnaGJkX2lodDE2eDE2XzI1Nl9hZGRfc3NlNF8x
PiwgMTYsIDIgfQogfTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9U
RVNUX1NVSVRFX1AoCiAgICAgU1NFNF8xLCBUcmFuc0hULAogICAgIDo6dGVzdGluZzo6Q29tYmlu
ZSg6OnRlc3Rpbmc6OlJhbmdlKDAsIDMpLAogICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rp
bmc6OlZhbHVlcyhodF9zc2U0XzFfZnVuY19pbmZvKSwKQEAgLTY5NSwxMSArNjk1LDExIEBAIHN0
YXRpYyBjb25zdCBGdW5jSW5mbyBodF92c3hfZnVuY19pbmZvWzNdID0gewogICB7ICZ2cDlfZmh0
MTZ4MTZfYywgJmlodF93cmFwcGVyPHZwOV9paHQxNngxNl8yNTZfYWRkX3ZzeD4sIDE2LCAxIH0K
IH07CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKFZTWCwgVHJhbnNIVCwKLSAgICAgICAgICAg
ICAgICAgICAgICAgIDo6dGVzdGluZzo6Q29tYmluZSg6OnRlc3Rpbmc6OlJhbmdlKDAsIDMpLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFs
dWVzKGh0X3ZzeF9mdW5jX2luZm8pLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoMCwgNCksCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoVlBYX0JJVFNfOCkpKTsKK0lO
U1RBTlRJQVRFX1RFU1RfU1VJVEVfUChWU1gsIFRyYW5zSFQsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgOjp0ZXN0aW5nOjpDb21iaW5lKDo6dGVzdGluZzo6UmFuZ2UoMCwgMyksCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKGh0
X3ZzeF9mdW5jX2luZm8pLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA6OnRlc3Rpbmc6OlJhbmdlKDAsIDQpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhWUFhfQklUU184KSkpOwogI2VuZGlm
ICAvLyBIQVZFX1ZTWAogI2VuZGlmICAvLyAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKIApAQCAt
NzI2LDcgKzcyNiw3IEBAIHN0YXRpYyBjb25zdCBGdW5jSW5mbyB3aHRfY19mdW5jX2luZm9bXSA9
IHsKICAgeyAmZmRjdF93cmFwcGVyPHZwOV9md2h0NHg0X2M+LCAmaWRjdF93cmFwcGVyPHZweF9p
d2h0NHg0XzE2X2FkZF9jPiwgNCwgMSB9CiB9OwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgK
K0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBDLCBUcmFuc1dIVCwKICAgICA6OnRlc3Rp
bmc6OkNvbWJpbmUoCiAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoMCwgc3RhdGljX2Nhc3Q8aW50
PihzaXplb2Yod2h0X2NfZnVuY19pbmZvKSAvCkBAIC03MzksOSArNzM5LDkgQEAgc3RhdGljIGNv
bnN0IEZ1bmNJbmZvIHdodF9zc2UyX2Z1bmNfaW5mbyA9IHsKICAgJmZkY3Rfd3JhcHBlcjx2cDlf
ZndodDR4NF9zc2UyPiwgJmlkY3Rfd3JhcHBlcjx2cHhfaXdodDR4NF8xNl9hZGRfc3NlMj4sIDQs
IDEKIH07CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKFNTRTIsIFRyYW5zV0hULAotICAgICAg
ICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgwLCAmd2h0X3Nz
ZTJfZnVuY19pbmZvLCAwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBWUFhfQklUU184KSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFNT
RTIsIFRyYW5zV0hULAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVz
KG1ha2VfdHVwbGUoMCwgJndodF9zc2UyX2Z1bmNfaW5mbywgMCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQWF9CSVRTXzgpKSk7CiAjZW5k
aWYgIC8vIEhBVkVfU1NFMiAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKIAogI2lmIEhBVkVf
VlNYICYmICFDT05GSUdfRU1VTEFURV9IQVJEV0FSRSAmJiAhQ09ORklHX1ZQOV9ISUdIQklUREVQ
VEgKQEAgLTc0OSw4ICs3NDksOCBAQCBzdGF0aWMgY29uc3QgRnVuY0luZm8gd2h0X3ZzeF9mdW5j
X2luZm8gPSB7CiAgICZmZGN0X3dyYXBwZXI8dnA5X2Z3aHQ0eDRfYz4sICZpZGN0X3dyYXBwZXI8
dnB4X2l3aHQ0eDRfMTZfYWRkX3ZzeD4sIDQsIDEKIH07CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FT
RV9QKFZTWCwgVHJhbnNXSFQsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZh
bHVlcyhtYWtlX3R1cGxlKDAsICZ3aHRfdnN4X2Z1bmNfaW5mbywgMCwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVlBYX0JJVFNfOCkpKTsKK0lO
U1RBTlRJQVRFX1RFU1RfU1VJVEVfUChWU1gsIFRyYW5zV0hULAorICAgICAgICAgICAgICAgICAg
ICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoMCwgJndodF92c3hfZnVuY19pbmZv
LCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgVlBYX0JJVFNfOCkpKTsKICNlbmRpZiAgLy8gSEFWRV9WU1ggJiYgIUNPTkZJR19FTVVMQVRF
X0hBUkRXQVJFCiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9k
ZWNvZGVfYXBpX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZGVjb2RlX2FwaV90ZXN0LmNjCmlu
ZGV4IGQ0YjY3Y2NkYjhlNmJkZDNkYmRmNmQyYTJhM2Y4YTdiN2RkYTU1NzYuLjllODJhY2UxYjhi
YzJkNWE0YmQ4NTFlZTE4NzY2Mjk4ZTFhNzkzZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVz
dC9kZWNvZGVfYXBpX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2RlY29kZV9hcGlfdGVz
dC5jYwpAQCAtMzEsMjcgKzMxLDMzIEBAIFRFU1QoRGVjb2RlQVBJLCBJbnZhbGlkUGFyYW1zKSB7
CiAgIHVpbnQ4X3QgYnVmWzFdID0geyAwIH07CiAgIHZweF9jb2RlY19jdHhfdCBkZWM7CiAKLSAg
RVhQRUNUX0VRKFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNLCB2cHhfY29kZWNfZGVjX2luaXQoTlVM
TCwgTlVMTCwgTlVMTCwgMCkpOwotICBFWFBFQ1RfRVEoVlBYX0NPREVDX0lOVkFMSURfUEFSQU0s
IHZweF9jb2RlY19kZWNfaW5pdCgmZGVjLCBOVUxMLCBOVUxMLCAwKSk7Ci0gIEVYUEVDVF9FUShW
UFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwgdnB4X2NvZGVjX2RlY29kZShOVUxMLCBOVUxMLCAwLCBO
VUxMLCAwKSk7Ci0gIEVYUEVDVF9FUShWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwgdnB4X2NvZGVj
X2RlY29kZShOVUxMLCBidWYsIDAsIE5VTEwsIDApKTsKLSAgRVhQRUNUX0VRKFZQWF9DT0RFQ19J
TlZBTElEX1BBUkFNLAotICAgICAgICAgICAgdnB4X2NvZGVjX2RlY29kZShOVUxMLCBidWYsIE5F
TEVNRU5UUyhidWYpLCBOVUxMLCAwKSk7Ci0gIEVYUEVDVF9FUShWUFhfQ09ERUNfSU5WQUxJRF9Q
QVJBTSwKLSAgICAgICAgICAgIHZweF9jb2RlY19kZWNvZGUoTlVMTCwgTlVMTCwgTkVMRU1FTlRT
KGJ1ZiksIE5VTEwsIDApKTsKLSAgRVhQRUNUX0VRKFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNLCB2
cHhfY29kZWNfZGVzdHJveShOVUxMKSk7Ci0gIEVYUEVDVF9UUlVFKHZweF9jb2RlY19lcnJvcihO
VUxMKSAhPSBOVUxMKTsKKyAgRVhQRUNUX0VRKHZweF9jb2RlY19kZWNfaW5pdChudWxscHRyLCBu
dWxscHRyLCBudWxscHRyLCAwKSwKKyAgICAgICAgICAgIFZQWF9DT0RFQ19JTlZBTElEX1BBUkFN
KTsKKyAgRVhQRUNUX0VRKHZweF9jb2RlY19kZWNfaW5pdCgmZGVjLCBudWxscHRyLCBudWxscHRy
LCAwKSwKKyAgICAgICAgICAgIFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNKTsKKyAgRVhQRUNUX0VR
KHZweF9jb2RlY19kZWNvZGUobnVsbHB0ciwgbnVsbHB0ciwgMCwgbnVsbHB0ciwgMCksCisgICAg
ICAgICAgICBWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSk7CisgIEVYUEVDVF9FUSh2cHhfY29kZWNf
ZGVjb2RlKG51bGxwdHIsIGJ1ZiwgMCwgbnVsbHB0ciwgMCksCisgICAgICAgICAgICBWUFhfQ09E
RUNfSU5WQUxJRF9QQVJBTSk7CisgIEVYUEVDVF9FUSh2cHhfY29kZWNfZGVjb2RlKG51bGxwdHIs
IGJ1ZiwgTkVMRU1FTlRTKGJ1ZiksIG51bGxwdHIsIDApLAorICAgICAgICAgICAgVlBYX0NPREVD
X0lOVkFMSURfUEFSQU0pOworICBFWFBFQ1RfRVEodnB4X2NvZGVjX2RlY29kZShudWxscHRyLCBu
dWxscHRyLCBORUxFTUVOVFMoYnVmKSwgbnVsbHB0ciwgMCksCisgICAgICAgICAgICBWUFhfQ09E
RUNfSU5WQUxJRF9QQVJBTSk7CisgIEVYUEVDVF9FUSh2cHhfY29kZWNfZGVzdHJveShudWxscHRy
KSwgVlBYX0NPREVDX0lOVkFMSURfUEFSQU0pOworICBFWFBFQ1RfTkUodnB4X2NvZGVjX2Vycm9y
KG51bGxwdHIpLCBudWxscHRyKTsKKyAgRVhQRUNUX0VRKHZweF9jb2RlY19lcnJvcl9kZXRhaWwo
bnVsbHB0ciksIG51bGxwdHIpOwogCiAgIGZvciAoaW50IGkgPSAwOyBpIDwgTkVMRU1FTlRTKGtD
b2RlY3MpOyArK2kpIHsKICAgICBFWFBFQ1RfRVEoVlBYX0NPREVDX0lOVkFMSURfUEFSQU0sCi0g
ICAgICAgICAgICAgIHZweF9jb2RlY19kZWNfaW5pdChOVUxMLCBrQ29kZWNzW2ldLCBOVUxMLCAw
KSk7CisgICAgICAgICAgICAgIHZweF9jb2RlY19kZWNfaW5pdChudWxscHRyLCBrQ29kZWNzW2ld
LCBudWxscHRyLCAwKSk7CiAKLSAgICBFWFBFQ1RfRVEoVlBYX0NPREVDX09LLCB2cHhfY29kZWNf
ZGVjX2luaXQoJmRlYywga0NvZGVjc1tpXSwgTlVMTCwgMCkpOworICAgIEVYUEVDVF9FUShWUFhf
Q09ERUNfT0ssIHZweF9jb2RlY19kZWNfaW5pdCgmZGVjLCBrQ29kZWNzW2ldLCBudWxscHRyLCAw
KSk7CiAgICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19VTlNVUF9CSVRTVFJFQU0sCi0gICAgICAgICAg
ICAgIHZweF9jb2RlY19kZWNvZGUoJmRlYywgYnVmLCBORUxFTUVOVFMoYnVmKSwgTlVMTCwgMCkp
OworICAgICAgICAgICAgICB2cHhfY29kZWNfZGVjb2RlKCZkZWMsIGJ1ZiwgTkVMRU1FTlRTKGJ1
ZiksIG51bGxwdHIsIDApKTsKICAgICBFWFBFQ1RfRVEoVlBYX0NPREVDX0lOVkFMSURfUEFSQU0s
Ci0gICAgICAgICAgICAgIHZweF9jb2RlY19kZWNvZGUoJmRlYywgTlVMTCwgTkVMRU1FTlRTKGJ1
ZiksIE5VTEwsIDApKTsKLSAgICBFWFBFQ1RfRVEoVlBYX0NPREVDX0lOVkFMSURfUEFSQU0sIHZw
eF9jb2RlY19kZWNvZGUoJmRlYywgYnVmLCAwLCBOVUxMLCAwKSk7CisgICAgICAgICAgICAgIHZw
eF9jb2RlY19kZWNvZGUoJmRlYywgbnVsbHB0ciwgTkVMRU1FTlRTKGJ1ZiksIG51bGxwdHIsIDAp
KTsKKyAgICBFWFBFQ1RfRVEoVlBYX0NPREVDX0lOVkFMSURfUEFSQU0sCisgICAgICAgICAgICAg
IHZweF9jb2RlY19kZWNvZGUoJmRlYywgYnVmLCAwLCBudWxscHRyLCAwKSk7CiAKICAgICBFWFBF
Q1RfRVEoVlBYX0NPREVDX09LLCB2cHhfY29kZWNfZGVzdHJveSgmZGVjKSk7CiAgIH0KQEAgLTYy
LDExICs2OCwxMiBAQCBURVNUKERlY29kZUFQSSwgT3B0aW9uYWxQYXJhbXMpIHsKICAgdnB4X2Nv
ZGVjX2N0eF90IGRlYzsKIAogI2lmIENPTkZJR19FUlJPUl9DT05DRUFMTUVOVAotICBFWFBFQ1Rf
RVEoVlBYX0NPREVDX09LLCB2cHhfY29kZWNfZGVjX2luaXQoJmRlYywgJnZweF9jb2RlY192cDhf
ZHhfYWxnbywgTlVMTCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFZQWF9DT0RFQ19VU0VfRVJST1JfQ09OQ0VBTE1FTlQpKTsKKyAgRVhQRUNUX0VRKFZQWF9D
T0RFQ19PSywKKyAgICAgICAgICAgIHZweF9jb2RlY19kZWNfaW5pdCgmZGVjLCAmdnB4X2NvZGVj
X3ZwOF9keF9hbGdvLCBudWxscHRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQ
WF9DT0RFQ19VU0VfRVJST1JfQ09OQ0VBTE1FTlQpKTsKICNlbHNlCiAgIEVYUEVDVF9FUShWUFhf
Q09ERUNfSU5DQVBBQkxFLAotICAgICAgICAgICAgdnB4X2NvZGVjX2RlY19pbml0KCZkZWMsICZ2
cHhfY29kZWNfdnA4X2R4X2FsZ28sIE5VTEwsCisgICAgICAgICAgICB2cHhfY29kZWNfZGVjX2lu
aXQoJmRlYywgJnZweF9jb2RlY192cDhfZHhfYWxnbywgbnVsbHB0ciwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBWUFhfQ09ERUNfVVNFX0VSUk9SX0NPTkNFQUxNRU5UKSk7CiAjZW5k
aWYgIC8vIENPTkZJR19FUlJPUl9DT05DRUFMTUVOVAogfQpAQCAtOTAsMjUgKzk3LDI1IEBAIHZv
aWQgVGVzdFZwOUNvbnRyb2xzKHZweF9jb2RlY19jdHhfdCAqZGVjKSB7CiAgICAgICBkZWZhdWx0
OiBFWFBFQ1RfRVEoVlBYX0NPREVDX09LLCByZXMpIDw8IGtDb250cm9sc1tpXTsgYnJlYWs7CiAg
ICAgfQogICAgIEVYUEVDVF9FUShWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwKLSAgICAgICAgICAg
ICAgdnB4X2NvZGVjX2NvbnRyb2xfKGRlYywga0NvbnRyb2xzW2ldLCBOVUxMKSk7CisgICAgICAg
ICAgICAgIHZweF9jb2RlY19jb250cm9sXyhkZWMsIGtDb250cm9sc1tpXSwgbnVsbHB0cikpOwog
ICB9CiAKICAgdnA5X3JlZl9mcmFtZV90IHJlZjsKICAgcmVmLmlkeCA9IDA7CiAgIEVYUEVDVF9F
UShWUFhfQ09ERUNfRVJST1IsIHZweF9jb2RlY19jb250cm9sKGRlYywgVlA5X0dFVF9SRUZFUkVO
Q0UsICZyZWYpKTsKICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNLAotICAgICAg
ICAgICAgdnB4X2NvZGVjX2NvbnRyb2woZGVjLCBWUDlfR0VUX1JFRkVSRU5DRSwgTlVMTCkpOwor
ICAgICAgICAgICAgdnB4X2NvZGVjX2NvbnRyb2woZGVjLCBWUDlfR0VUX1JFRkVSRU5DRSwgbnVs
bHB0cikpOwogCiAgIHZweF9yZWZfZnJhbWVfdCByZWZfY29weTsKICAgY29uc3QgaW50IHdpZHRo
ID0gMzUyOwogICBjb25zdCBpbnQgaGVpZ2h0ID0gMjg4OwotICBBU1NFUlRfVFJVRSgKLSAgICAg
IHZweF9pbWdfYWxsb2MoJnJlZl9jb3B5LmltZywgVlBYX0lNR19GTVRfSTQyMCwgd2lkdGgsIGhl
aWdodCwgMSkgIT0gTlVMTCk7CisgIEVYUEVDVF9ORSh2cHhfaW1nX2FsbG9jKCZyZWZfY29weS5p
bWcsIFZQWF9JTUdfRk1UX0k0MjAsIHdpZHRoLCBoZWlnaHQsIDEpLAorICAgICAgICAgICAgbnVs
bHB0cik7CiAgIHJlZl9jb3B5LmZyYW1lX3R5cGUgPSBWUDhfTEFTVF9GUkFNRTsKICAgRVhQRUNU
X0VRKFZQWF9DT0RFQ19FUlJPUiwKICAgICAgICAgICAgIHZweF9jb2RlY19jb250cm9sKGRlYywg
VlA4X0NPUFlfUkVGRVJFTkNFLCAmcmVmX2NvcHkpKTsKICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19J
TlZBTElEX1BBUkFNLAotICAgICAgICAgICAgdnB4X2NvZGVjX2NvbnRyb2woZGVjLCBWUDhfQ09Q
WV9SRUZFUkVOQ0UsIE5VTEwpKTsKKyAgICAgICAgICAgIHZweF9jb2RlY19jb250cm9sKGRlYywg
VlA4X0NPUFlfUkVGRVJFTkNFLCBudWxscHRyKSk7CiAgIHZweF9pbWdfZnJlZSgmcmVmX2NvcHku
aW1nKTsKIH0KIApAQCAtMTIyLDE3ICsxMjksMTcgQEAgVEVTVChEZWNvZGVBUEksIFZwOUludmFs
aWREZWNvZGUpIHsKICAgQVNTRVJUX1RSVUUoIUhhc0ZhaWx1cmUoKSk7CiAKICAgdnB4X2NvZGVj
X2N0eF90IGRlYzsKLSAgRVhQRUNUX0VRKFZQWF9DT0RFQ19PSywgdnB4X2NvZGVjX2RlY19pbml0
KCZkZWMsIGNvZGVjLCBOVUxMLCAwKSk7CisgIEVYUEVDVF9FUShWUFhfQ09ERUNfT0ssIHZweF9j
b2RlY19kZWNfaW5pdCgmZGVjLCBjb2RlYywgbnVsbHB0ciwgMCkpOwogICBjb25zdCB1aW50MzJf
dCBmcmFtZV9zaXplID0gc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHZpZGVvLmZyYW1lX3NpemUoKSk7
CiAjaWYgQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19NRU1f
RVJST1IsCi0gICAgICAgICAgICB2cHhfY29kZWNfZGVjb2RlKCZkZWMsIHZpZGVvLmN4ZGF0YSgp
LCBmcmFtZV9zaXplLCBOVUxMLCAwKSk7CisgICAgICAgICAgICB2cHhfY29kZWNfZGVjb2RlKCZk
ZWMsIHZpZGVvLmN4ZGF0YSgpLCBmcmFtZV9zaXplLCBudWxscHRyLCAwKSk7CiAjZWxzZQogICBF
WFBFQ1RfRVEoVlBYX0NPREVDX1VOU1VQX0JJVFNUUkVBTSwKLSAgICAgICAgICAgIHZweF9jb2Rl
Y19kZWNvZGUoJmRlYywgdmlkZW8uY3hkYXRhKCksIGZyYW1lX3NpemUsIE5VTEwsIDApKTsKKyAg
ICAgICAgICAgIHZweF9jb2RlY19kZWNvZGUoJmRlYywgdmlkZW8uY3hkYXRhKCksIGZyYW1lX3Np
emUsIG51bGxwdHIsIDApKTsKICNlbmRpZgotICB2cHhfY29kZWNfaXRlcl90IGl0ZXIgPSBOVUxM
OwotICBFWFBFQ1RfRVEoTlVMTCwgdnB4X2NvZGVjX2dldF9mcmFtZSgmZGVjLCAmaXRlcikpOwor
ICB2cHhfY29kZWNfaXRlcl90IGl0ZXIgPSBudWxscHRyOworICBFWFBFQ1RfRVEobnVsbHB0ciwg
dnB4X2NvZGVjX2dldF9mcmFtZSgmZGVjLCAmaXRlcikpOwogCiAgIFRlc3RWcDlDb250cm9scygm
ZGVjKTsKICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19PSywgdnB4X2NvZGVjX2Rlc3Ryb3koJmRlYykp
OwpAQCAtMTQ1LDEyICsxNTIsMTIgQEAgdm9pZCBUZXN0UGVla0luZm8oY29uc3QgdWludDhfdCAq
Y29uc3QgZGF0YSwgdWludDMyX3QgZGF0YV9zeiwKICAgLy8gdG8gZGVjb2Rlcl9wZWVrX3NpX2lu
dGVybmFsIG9uIGZyYW1lcyBvZiBzaXplIDwgOC4KICAgaWYgKGRhdGFfc3ogPj0gOCkgewogICAg
IHZweF9jb2RlY19jdHhfdCBkZWM7Ci0gICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19PSywgdnB4X2Nv
ZGVjX2RlY19pbml0KCZkZWMsIGNvZGVjLCBOVUxMLCAwKSk7CisgICAgRVhQRUNUX0VRKFZQWF9D
T0RFQ19PSywgdnB4X2NvZGVjX2RlY19pbml0KCZkZWMsIGNvZGVjLCBudWxscHRyLCAwKSk7CiAg
ICAgRVhQRUNUX0VRKChkYXRhX3N6IDwgcGVla19zaXplKSA/IFZQWF9DT0RFQ19VTlNVUF9CSVRT
VFJFQU0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogVlBYX0NPREVDX0NP
UlJVUFRfRlJBTUUsCi0gICAgICAgICAgICAgIHZweF9jb2RlY19kZWNvZGUoJmRlYywgZGF0YSwg
ZGF0YV9zeiwgTlVMTCwgMCkpOwotICAgIHZweF9jb2RlY19pdGVyX3QgaXRlciA9IE5VTEw7Ci0g
ICAgRVhQRUNUX0VRKE5VTEwsIHZweF9jb2RlY19nZXRfZnJhbWUoJmRlYywgJml0ZXIpKTsKKyAg
ICAgICAgICAgICAgdnB4X2NvZGVjX2RlY29kZSgmZGVjLCBkYXRhLCBkYXRhX3N6LCBudWxscHRy
LCAwKSk7CisgICAgdnB4X2NvZGVjX2l0ZXJfdCBpdGVyID0gbnVsbHB0cjsKKyAgICBFWFBFQ1Rf
RVEobnVsbHB0ciwgdnB4X2NvZGVjX2dldF9mcmFtZSgmZGVjLCAmaXRlcikpOwogICAgIEVYUEVD
VF9FUShWUFhfQ09ERUNfT0ssIHZweF9jb2RlY19kZXN0cm95KCZkZWMpKTsKICAgfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZGVjb2RlX2NvcnJ1cHRlZC5jYyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dGVzdC9kZWNvZGVfY29ycnVwdGVkLmNjCmluZGV4IGIxNDk1Y2U4OWZmNWYxODgwNGE1YWQyZWJj
ODZkMTU2MzYzOWQ0NWMuLjMxZTFkYTY5Y2MwYTNmMWM4ZDY1OTNjNGJjYzY1ZDk0ZWI5YWJlNTQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9kZWNvZGVfY29ycnVwdGVkLmNjCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC9kZWNvZGVfY29ycnVwdGVkLmNjCkBAIC04NywxNCArODcsMTQgQEAgVEVT
VF9QKERlY29kZUNvcnJ1cHRlZEZyYW1lVGVzdCwgRGVjb2RlQ29ycnVwdGVkRnJhbWUpIHsKIH0K
IAogI2lmIENPTkZJR19WUDkKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QKAogICAgIFZQOSwgRGVjb2RlQ29ycnVwdGVkRnJhbWVUZXN0LAogICAgIDo6
dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBzdGF0aWNfY2FzdDxjb25zdCBsaWJ2cHhfdGVzdDo6
Q29kZWNGYWN0b3J5ICo+KCZsaWJ2cHhfdGVzdDo6a1ZQOSkpKTsKICNlbmRpZiAgLy8gQ09ORklH
X1ZQOQogCiAjaWYgQ09ORklHX1ZQOAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5U
SUFURV9URVNUX1NVSVRFX1AoCiAgICAgVlA4LCBEZWNvZGVDb3JydXB0ZWRGcmFtZVRlc3QsCiAg
ICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIHN0YXRpY19jYXN0PGNvbnN0IGxpYnZweF90
ZXN0OjpDb2RlY0ZhY3RvcnkgKj4oJmxpYnZweF90ZXN0OjprVlA4KSkpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90ZXN0L2RlY29kZV9wZXJmX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZGVj
b2RlX3BlcmZfdGVzdC5jYwppbmRleCBhZWNkZDNlOTk5MzExN2E1NjE3ZDVhY2Y0MDQwZmZiNDFj
YWJmMmJhLi5lMDdhNjY3NDQwYzA0MmM2MzJhYzBiODA3NjA5N2RiMTdlNDAwMjM5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3Rlc3QvZGVjb2RlX3BlcmZfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3Rlc3QvZGVjb2RlX3BlcmZfdGVzdC5jYwpAQCAtODcsNyArODcsNyBAQCBURVNUX1AoRGVjb2Rl
UGVyZlRlc3QsIFBlcmZUZXN0KSB7CiAgIHZweF91c2VjX3RpbWVyIHQ7CiAgIHZweF91c2VjX3Rp
bWVyX3N0YXJ0KCZ0KTsKIAotICBmb3IgKHZpZGVvLkJlZ2luKCk7IHZpZGVvLmN4ZGF0YSgpICE9
IE5VTEw7IHZpZGVvLk5leHQoKSkgeworICBmb3IgKHZpZGVvLkJlZ2luKCk7IHZpZGVvLmN4ZGF0
YSgpICE9IG51bGxwdHI7IHZpZGVvLk5leHQoKSkgewogICAgIGRlY29kZXIuRGVjb2RlRnJhbWUo
dmlkZW8uY3hkYXRhKCksIHZpZGVvLmZyYW1lX3NpemUoKSk7CiAgIH0KIApAQCAtMTA3LDggKzEw
Nyw4IEBAIFRFU1RfUChEZWNvZGVQZXJmVGVzdCwgUGVyZlRlc3QpIHsKICAgcHJpbnRmKCJ9XG4i
KTsKIH0KIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoVlA5LCBEZWNvZGVQZXJmVGVzdCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oa1ZQOURlY29kZVBlcmZW
ZWN0b3JzKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoVlA5LCBEZWNvZGVQZXJmVGVzdCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtWUDlEZWNvZGVQ
ZXJmVmVjdG9ycykpOwogCiBjbGFzcyBWUDlOZXdFbmNvZGVEZWNvZGVQZXJmVGVzdAogICAgIDog
cHVibGljIDo6bGlidnB4X3Rlc3Q6OkVuY29kZXJUZXN0LApAQCAtMTUwLDE2ICsxNTAsMTYgQEAg
Y2xhc3MgVlA5TmV3RW5jb2RlRGVjb2RlUGVyZlRlc3QKICAgICBjb25zdCBzdGQ6OnN0cmluZyBk
YXRhX3BhdGggPSBnZXRlbnYoIkxJQlZQWF9URVNUX0RBVEFfUEFUSCIpOwogICAgIGNvbnN0IHN0
ZDo6c3RyaW5nIHBhdGhfdG9fc291cmNlID0gZGF0YV9wYXRoICsgIi8iICsga05ld0VuY29kZU91
dHB1dEZpbGU7CiAgICAgb3V0ZmlsZV8gPSBmb3BlbihwYXRoX3RvX3NvdXJjZS5jX3N0cigpLCAi
d2IiKTsKLSAgICBBU1NFUlRfVFJVRShvdXRmaWxlXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUo
b3V0ZmlsZV8sIG51bGxwdHIpOwogICB9CiAKICAgdmlydHVhbCB2b2lkIEVuZFBhc3NIb29rKCkg
ewotICAgIGlmIChvdXRmaWxlXyAhPSBOVUxMKSB7CisgICAgaWYgKG91dGZpbGVfICE9IG51bGxw
dHIpIHsKICAgICAgIGlmICghZnNlZWsob3V0ZmlsZV8sIDAsIFNFRUtfU0VUKSkgewogICAgICAg
ICBpdmZfd3JpdGVfZmlsZV9oZWFkZXIob3V0ZmlsZV8sICZjZmdfLCBWUDlfRk9VUkNDLCBvdXRf
ZnJhbWVzXyk7CiAgICAgICB9CiAgICAgICBmY2xvc2Uob3V0ZmlsZV8pOwotICAgICAgb3V0Zmls
ZV8gPSBOVUxMOworICAgICAgb3V0ZmlsZV8gPSBudWxscHRyOwogICAgIH0KICAgfQogCkBAIC0y
MzYsNyArMjM2LDcgQEAgVEVTVF9QKFZQOU5ld0VuY29kZURlY29kZVBlcmZUZXN0LCBQZXJmVGVz
dCkgewogICB2cHhfdXNlY190aW1lciB0OwogICB2cHhfdXNlY190aW1lcl9zdGFydCgmdCk7CiAK
LSAgZm9yIChkZWNvZGVfdmlkZW8uQmVnaW4oKTsgZGVjb2RlX3ZpZGVvLmN4ZGF0YSgpICE9IE5V
TEw7CisgIGZvciAoZGVjb2RlX3ZpZGVvLkJlZ2luKCk7IGRlY29kZV92aWRlby5jeGRhdGEoKSAh
PSBudWxscHRyOwogICAgICAgIGRlY29kZV92aWRlby5OZXh0KCkpIHsKICAgICBkZWNvZGVyLkRl
Y29kZUZyYW1lKGRlY29kZV92aWRlby5jeGRhdGEoKSwgZGVjb2RlX3ZpZGVvLmZyYW1lX3NpemUo
KSk7CiAgIH0KQEAgLTI1OCw2ICsyNTgsNiBAQCBURVNUX1AoVlA5TmV3RW5jb2RlRGVjb2RlUGVy
ZlRlc3QsIFBlcmZUZXN0KSB7CiAgIHByaW50ZigifVxuIik7CiB9CiAKLVZQOV9JTlNUQU5USUFU
RV9URVNUX0NBU0UoVlA5TmV3RW5jb2RlRGVjb2RlUGVyZlRlc3QsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKDo6bGlidnB4X3Rlc3Q6OmtUd29QYXNzR29vZCkp
OworVlA5X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUoVlA5TmV3RW5jb2RlRGVjb2RlUGVyZlRlc3Qs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90
ZXN0OjprVHdvUGFzc0dvb2QpKTsKIH0gIC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC90ZXN0L2RlY29kZV9zdmNfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9kZWNvZGVfc3Zj
X3Rlc3QuY2MKaW5kZXggYzZmMDg3M2Y4OTczMjY2YjMxMWFlMDM4M2JjNzdmMjg2MDY5YzYxMS4u
ZWM5OTM1ZGE3OTVlYWRmODI0MGJkOTcwMTUxMjRkOGM4ZTVmOWQwOCAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L2RlY29kZV9zdmNfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZGVj
b2RlX3N2Y190ZXN0LmNjCkBAIC01Niw3ICs1Niw3IEBAIFRFU1RfUChEZWNvZGVTdmNUZXN0LCBE
ZWNvZGVTdmNUZXN0VXBUb1NwYXRpYWxMYXllcjApIHsKICAgY29uc3Qgc3RkOjpzdHJpbmcgZmls
ZW5hbWUgPSBHRVRfUEFSQU0oMSk7CiAgIHN0ZDo6dW5pcXVlX3B0cjxsaWJ2cHhfdGVzdDo6Q29t
cHJlc3NlZFZpZGVvU291cmNlPiB2aWRlbzsKICAgdmlkZW8ucmVzZXQobmV3IGxpYnZweF90ZXN0
OjpJVkZWaWRlb1NvdXJjZShmaWxlbmFtZSkpOwotICBBU1NFUlRfVFJVRSh2aWRlby5nZXQoKSAh
PSBOVUxMKTsKKyAgQVNTRVJUX05FKHZpZGVvLmdldCgpLCBudWxscHRyKTsKICAgdmlkZW8tPklu
aXQoKTsKICAgdG90YWxfZnJhbWVzXyA9IDA7CiAgIHNwYXRpYWxfbGF5ZXJfID0gMDsKQEAgLTcz
LDcgKzczLDcgQEAgVEVTVF9QKERlY29kZVN2Y1Rlc3QsIERlY29kZVN2Y1Rlc3RVcFRvU3BhdGlh
bExheWVyMSkgewogICBjb25zdCBzdGQ6OnN0cmluZyBmaWxlbmFtZSA9IEdFVF9QQVJBTSgxKTsK
ICAgc3RkOjp1bmlxdWVfcHRyPGxpYnZweF90ZXN0OjpDb21wcmVzc2VkVmlkZW9Tb3VyY2U+IHZp
ZGVvOwogICB2aWRlby5yZXNldChuZXcgbGlidnB4X3Rlc3Q6OklWRlZpZGVvU291cmNlKGZpbGVu
YW1lKSk7Ci0gIEFTU0VSVF9UUlVFKHZpZGVvLmdldCgpICE9IE5VTEwpOworICBBU1NFUlRfTkUo
dmlkZW8uZ2V0KCksIG51bGxwdHIpOwogICB2aWRlby0+SW5pdCgpOwogICB0b3RhbF9mcmFtZXNf
ID0gMDsKICAgc3BhdGlhbF9sYXllcl8gPSAxOwpAQCAtOTAsNyArOTAsNyBAQCBURVNUX1AoRGVj
b2RlU3ZjVGVzdCwgRGVjb2RlU3ZjVGVzdFVwVG9TcGF0aWFsTGF5ZXIyKSB7CiAgIGNvbnN0IHN0
ZDo6c3RyaW5nIGZpbGVuYW1lID0gR0VUX1BBUkFNKDEpOwogICBzdGQ6OnVuaXF1ZV9wdHI8bGli
dnB4X3Rlc3Q6OkNvbXByZXNzZWRWaWRlb1NvdXJjZT4gdmlkZW87CiAgIHZpZGVvLnJlc2V0KG5l
dyBsaWJ2cHhfdGVzdDo6SVZGVmlkZW9Tb3VyY2UoZmlsZW5hbWUpKTsKLSAgQVNTRVJUX1RSVUUo
dmlkZW8uZ2V0KCkgIT0gTlVMTCk7CisgIEFTU0VSVF9ORSh2aWRlby5nZXQoKSwgbnVsbHB0cik7
CiAgIHZpZGVvLT5Jbml0KCk7CiAgIHRvdGFsX2ZyYW1lc18gPSAwOwogICBzcGF0aWFsX2xheWVy
XyA9IDI7CkBAIC0xMDgsNyArMTA4LDcgQEAgVEVTVF9QKERlY29kZVN2Y1Rlc3QsIERlY29kZVN2
Y1Rlc3RVcFRvU3BhdGlhbExheWVyMTApIHsKICAgY29uc3Qgc3RkOjpzdHJpbmcgZmlsZW5hbWUg
PSBHRVRfUEFSQU0oMSk7CiAgIHN0ZDo6dW5pcXVlX3B0cjxsaWJ2cHhfdGVzdDo6Q29tcHJlc3Nl
ZFZpZGVvU291cmNlPiB2aWRlbzsKICAgdmlkZW8ucmVzZXQobmV3IGxpYnZweF90ZXN0OjpJVkZW
aWRlb1NvdXJjZShmaWxlbmFtZSkpOwotICBBU1NFUlRfVFJVRSh2aWRlby5nZXQoKSAhPSBOVUxM
KTsKKyAgQVNTRVJUX05FKHZpZGVvLmdldCgpLCBudWxscHRyKTsKICAgdmlkZW8tPkluaXQoKTsK
ICAgdG90YWxfZnJhbWVzXyA9IDA7CiAgIHNwYXRpYWxfbGF5ZXJfID0gMTA7CkBAIC0xMTgsNyAr
MTE4LDcgQEAgVEVTVF9QKERlY29kZVN2Y1Rlc3QsIERlY29kZVN2Y1Rlc3RVcFRvU3BhdGlhbExh
eWVyMTApIHsKICAgQVNTRVJUX0VRKHRvdGFsX2ZyYW1lc18sIGtOdW1GcmFtZXMpOwogfQogCi1W
UDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKAorVlA5X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUoCiAg
ICAgRGVjb2RlU3ZjVGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbihsaWJ2cHhfdGVzdDo6a1ZQOVRl
c3RWZWN0b3JzU3ZjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGli
dnB4X3Rlc3Q6OmtWUDlUZXN0VmVjdG9yc1N2YyArCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgbGlidnB4X3Rlc3Q6OmtOdW1WUDlUZXN0VmVjdG9yc1N2YykpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2RlY29kZV90ZXN0X2RyaXZlci5jYyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdGVzdC9kZWNvZGVfdGVzdF9kcml2ZXIuY2MKaW5kZXggYWUyMzU4Nzc1OWQzOGFkNzA0
MzE4YzRjYTVkYjQzZGRhNTM0YmY0ZS4uNzczZDY3M2QzN2U5ZDNhNzYxOWVkMTE2NjRhZDllNTM2
NWZjNzVmZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2RlY29kZV90ZXN0X2RyaXZlci5j
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZGVjb2RlX3Rlc3RfZHJpdmVyLmNjCkBAIC0yNiw3ICsy
Niw3IEBAIHZweF9jb2RlY19lcnJfdCBEZWNvZGVyOjpQZWVrU3RyZWFtKGNvbnN0IHVpbnQ4X3Qg
KmN4ZGF0YSwgc2l6ZV90IHNpemUsCiB9CiAKIHZweF9jb2RlY19lcnJfdCBEZWNvZGVyOjpEZWNv
ZGVGcmFtZShjb25zdCB1aW50OF90ICpjeGRhdGEsIHNpemVfdCBzaXplKSB7Ci0gIHJldHVybiBE
ZWNvZGVGcmFtZShjeGRhdGEsIHNpemUsIE5VTEwpOworICByZXR1cm4gRGVjb2RlRnJhbWUoY3hk
YXRhLCBzaXplLCBudWxscHRyKTsKIH0KIAogdnB4X2NvZGVjX2Vycl90IERlY29kZXI6OkRlY29k
ZUZyYW1lKGNvbnN0IHVpbnQ4X3QgKmN4ZGF0YSwgc2l6ZV90IHNpemUsCkBAIC02Nyw3ICs2Nyw3
IEBAIHZvaWQgRGVjb2RlclRlc3Q6OkhhbmRsZVBlZWtSZXN1bHQoRGVjb2RlciAqY29uc3QgZGVj
b2RlciwKIHZvaWQgRGVjb2RlclRlc3Q6OlJ1bkxvb3AoQ29tcHJlc3NlZFZpZGVvU291cmNlICp2
aWRlbywKICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdnB4X2NvZGVjX2RlY19jZmdf
dCAmZGVjX2NmZykgewogICBEZWNvZGVyICpjb25zdCBkZWNvZGVyID0gY29kZWNfLT5DcmVhdGVE
ZWNvZGVyKGRlY19jZmcsIGZsYWdzXyk7Ci0gIEFTU0VSVF9UUlVFKGRlY29kZXIgIT0gTlVMTCk7
CisgIEFTU0VSVF9ORShkZWNvZGVyLCBudWxscHRyKTsKICAgYm9vbCBlbmRfb2ZfZmlsZSA9IGZh
bHNlOwogCiAgIC8vIERlY29kZSBmcmFtZXMuCkBAIC03OCw3ICs3OCw3IEBAIHZvaWQgRGVjb2Rl
clRlc3Q6OlJ1bkxvb3AoQ29tcHJlc3NlZFZpZGVvU291cmNlICp2aWRlbywKICAgICB2cHhfY29k
ZWNfc3RyZWFtX2luZm9fdCBzdHJlYW1faW5mbzsKICAgICBzdHJlYW1faW5mby5zeiA9IHNpemVv
ZihzdHJlYW1faW5mbyk7CiAKLSAgICBpZiAodmlkZW8tPmN4ZGF0YSgpICE9IE5VTEwpIHsKKyAg
ICBpZiAodmlkZW8tPmN4ZGF0YSgpICE9IG51bGxwdHIpIHsKICAgICAgIGNvbnN0IHZweF9jb2Rl
Y19lcnJfdCByZXNfcGVlayA9IGRlY29kZXItPlBlZWtTdHJlYW0oCiAgICAgICAgICAgdmlkZW8t
PmN4ZGF0YSgpLCB2aWRlby0+ZnJhbWVfc2l6ZSgpLCAmc3RyZWFtX2luZm8pOwogICAgICAgSGFu
ZGxlUGVla1Jlc3VsdChkZWNvZGVyLCB2aWRlbywgcmVzX3BlZWspOwpAQCAtODksMTMgKzg5LDEz
IEBAIHZvaWQgRGVjb2RlclRlc3Q6OlJ1bkxvb3AoQ29tcHJlc3NlZFZpZGVvU291cmNlICp2aWRl
bywKICAgICAgIGlmICghSGFuZGxlRGVjb2RlUmVzdWx0KHJlc19kZWMsICp2aWRlbywgZGVjb2Rl
cikpIGJyZWFrOwogICAgIH0gZWxzZSB7CiAgICAgICAvLyBTaWduYWwgZW5kIG9mIHRoZSBmaWxl
IHRvIHRoZSBkZWNvZGVyLgotICAgICAgY29uc3QgdnB4X2NvZGVjX2Vycl90IHJlc19kZWMgPSBk
ZWNvZGVyLT5EZWNvZGVGcmFtZShOVUxMLCAwKTsKKyAgICAgIGNvbnN0IHZweF9jb2RlY19lcnJf
dCByZXNfZGVjID0gZGVjb2Rlci0+RGVjb2RlRnJhbWUobnVsbHB0ciwgMCk7CiAgICAgICBBU1NF
UlRfRVEoVlBYX0NPREVDX09LLCByZXNfZGVjKSA8PCBkZWNvZGVyLT5EZWNvZGVFcnJvcigpOwog
ICAgICAgZW5kX29mX2ZpbGUgPSB0cnVlOwogICAgIH0KIAogICAgIER4RGF0YUl0ZXJhdG9yIGRl
Y19pdGVyID0gZGVjb2Rlci0+R2V0RHhEYXRhKCk7Ci0gICAgY29uc3QgdnB4X2ltYWdlX3QgKmlt
ZyA9IE5VTEw7CisgICAgY29uc3QgdnB4X2ltYWdlX3QgKmltZyA9IG51bGxwdHI7CiAKICAgICAv
LyBHZXQgZGVjb21wcmVzc2VkIGRhdGEKICAgICB3aGlsZSAoITo6dGVzdGluZzo6VGVzdDo6SGFz
RmFpbHVyZSgpICYmIChpbWcgPSBkZWNfaXRlci5OZXh0KCkpKSB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3Rlc3QvZGVjb2RlX3RvX21kNS5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9kZWNvZGVfdG9f
bWQ1LnNoCmluZGV4IDg1NGI3NGY4NGYxODFlZWE0YjA5ZDIxMDY5OGU1YTRhMjZlNmU3YmUuLjE1
ZWVlMzlmYWNiNWVkOTE2Njc3NDliNjU0Y2JjZGMzNDhiN2M4ZmUgMTAwNzU1Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdGVzdC9kZWNvZGVfdG9fbWQ1LnNoCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9kZWNvZGVf
dG9fbWQ1LnNoCkBAIC00MCw3ICs0MCw3IEBAIGRlY29kZV90b19tZDUoKSB7CiAgIGZpCiAKICAg
ZXZhbCAiJHtWUFhfVEVTVF9QUkVGSVh9IiAiJHtkZWNvZGVyfSIgIiR7aW5wdXRfZmlsZX0iICIk
e291dHB1dF9maWxlfSIgXAotICAgICAgJHtkZXZudWxsfQorICAgICAgJHtkZXZudWxsfSB8fCBy
ZXR1cm4gMQogCiAgIFsgLWUgIiR7b3V0cHV0X2ZpbGV9IiBdIHx8IHJldHVybiAxCiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9kZWNvZGVfd2l0aF9kcm9wcy5zaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dGVzdC9kZWNvZGVfd2l0aF9kcm9wcy5zaAppbmRleCA5YjJlZGI2NDI5MjE2M2IxY2I4ZDdjMjY3
NDAwYTc2NzE5YzAzODFhLi4yYzgyNjA0NWIzMzJmNmM0YzUzNTc4YTIwYzYyNGQzNmEyNTg4ZDFk
IDEwMDc1NQotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZGVjb2RlX3dpdGhfZHJvcHMuc2gKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90ZXN0L2RlY29kZV93aXRoX2Ryb3BzLnNoCkBAIC00MCw3ICs0MCw3IEBAIGRl
Y29kZV93aXRoX2Ryb3BzKCkgewogICBmaQogCiAgIGV2YWwgIiR7VlBYX1RFU1RfUFJFRklYfSIg
IiR7ZGVjb2Rlcn0iICIke2lucHV0X2ZpbGV9IiAiJHtvdXRwdXRfZmlsZX0iIFwKLSAgICAgICIk
e2Ryb3BfbW9kZX0iICR7ZGV2bnVsbH0KKyAgICAgICIke2Ryb3BfbW9kZX0iICR7ZGV2bnVsbH0g
fHwgcmV0dXJuIDEKIAogICBbIC1lICIke291dHB1dF9maWxlfSIgXSB8fCByZXR1cm4gMQogfQpA
QCAtNTIsMTAgKzUyLDEwIEBAIGRlY29kZV93aXRoX2Ryb3BzKCkgewogZGVjb2RlX3dpdGhfZHJv
cHNfdnA4KCkgewogICBpZiBbICIkKHZwOF9kZWNvZGVfYXZhaWxhYmxlKSIgPSAieWVzIiBdOyB0
aGVuCiAgICAgIyBUZXN0IHNlcXVlbmNlIG1vZGU6IERyb3AgZnJhbWVzIDItMjguCi0gICAgZGVj
b2RlX3dpdGhfZHJvcHMgIiR7VlA4X0lWRl9GSUxFfSIgInZwOCIgIjItMjgiCisgICAgZGVjb2Rl
X3dpdGhfZHJvcHMgIiR7VlA4X0lWRl9GSUxFfSIgInZwOCIgIjItMjgiIHx8IHJldHVybiAxCiAK
ICAgICAjIFRlc3QgcGF0dGVybiBtb2RlOiBEcm9wIDMgb2YgZXZlcnkgNCBmcmFtZXMuCi0gICAg
ZGVjb2RlX3dpdGhfZHJvcHMgIiR7VlA4X0lWRl9GSUxFfSIgInZwOCIgIjMvNCIKKyAgICBkZWNv
ZGVfd2l0aF9kcm9wcyAiJHtWUDhfSVZGX0ZJTEV9IiAidnA4IiAiMy80IiB8fCByZXR1cm4gMQog
ICBmaQogfQogCkBAIC02NiwxMCArNjYsMTAgQEAgZGVjb2RlX3dpdGhfZHJvcHNfdnA4KCkgewog
ZGVjb2RlX3dpdGhfZHJvcHNfdnA5KCkgewogICBpZiBbICIkKHZwOV9kZWNvZGVfYXZhaWxhYmxl
KSIgPSAieWVzIiBdOyB0aGVuCiAgICAgIyBUZXN0IHNlcXVlbmNlIG1vZGU6IERyb3AgZnJhbWVz
IDItMjguCi0gICAgZGVjb2RlX3dpdGhfZHJvcHMgIiR7VlA5X0lWRl9GSUxFfSIgInZwOSIgIjIt
MTkiCisgICAgZGVjb2RlX3dpdGhfZHJvcHMgIiR7VlA5X0lWRl9GSUxFfSIgInZwOSIgIjItMTki
IHx8IHJldHVybiAxCiAKICAgICAjIFRlc3QgcGF0dGVybiBtb2RlOiBEcm9wIDMgb2YgZXZlcnkg
NCBmcmFtZXMuCi0gICAgZGVjb2RlX3dpdGhfZHJvcHMgIiR7VlA5X0lWRl9GSUxFfSIgInZwOSIg
IjMvNCIKKyAgICBkZWNvZGVfd2l0aF9kcm9wcyAiJHtWUDlfSVZGX0ZJTEV9IiAidnA5IiAiMy80
IiB8fCByZXR1cm4gMQogICBmaQogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZW5j
b2RlX2FwaV90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2VuY29kZV9hcGlfdGVzdC5jYwppbmRl
eCA4N2UyOWI2MWRiMTJkOGU1MWFmODU5ZmQwM2Q0NmEyZDcwYmE4YjQxLi42YmQ3ZTU5M2RhY2M2
ZTJkMjBmYTFkMTc2NDEzNDhkY2U2OTgwYzIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qv
ZW5jb2RlX2FwaV90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9lbmNvZGVfYXBpX3Rlc3Qu
Y2MKQEAgLTM0LDI5ICszNCwzMyBAQCBURVNUKEVuY29kZUFQSSwgSW52YWxpZFBhcmFtcykgewog
CiAgIEVYUEVDVF9FUSgmaW1nLCB2cHhfaW1nX3dyYXAoJmltZywgVlBYX0lNR19GTVRfSTQyMCwg
MSwgMSwgMSwgYnVmKSk7CiAKLSAgRVhQRUNUX0VRKFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNLCB2
cHhfY29kZWNfZW5jX2luaXQoTlVMTCwgTlVMTCwgTlVMTCwgMCkpOwotICBFWFBFQ1RfRVEoVlBY
X0NPREVDX0lOVkFMSURfUEFSQU0sIHZweF9jb2RlY19lbmNfaW5pdCgmZW5jLCBOVUxMLCBOVUxM
LCAwKSk7Ci0gIEVYUEVDVF9FUShWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwgdnB4X2NvZGVjX2Vu
Y29kZShOVUxMLCBOVUxMLCAwLCAwLCAwLCAwKSk7Ci0gIEVYUEVDVF9FUShWUFhfQ09ERUNfSU5W
QUxJRF9QQVJBTSwgdnB4X2NvZGVjX2VuY29kZShOVUxMLCAmaW1nLCAwLCAwLCAwLCAwKSk7Ci0g
IEVYUEVDVF9FUShWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwgdnB4X2NvZGVjX2Rlc3Ryb3koTlVM
TCkpOwogICBFWFBFQ1RfRVEoVlBYX0NPREVDX0lOVkFMSURfUEFSQU0sCi0gICAgICAgICAgICB2
cHhfY29kZWNfZW5jX2NvbmZpZ19kZWZhdWx0KE5VTEwsIE5VTEwsIDApKTsKKyAgICAgICAgICAg
IHZweF9jb2RlY19lbmNfaW5pdChudWxscHRyLCBudWxscHRyLCBudWxscHRyLCAwKSk7CiAgIEVY
UEVDVF9FUShWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwKLSAgICAgICAgICAgIHZweF9jb2RlY19l
bmNfY29uZmlnX2RlZmF1bHQoTlVMTCwgJmNmZywgMCkpOwotICBFWFBFQ1RfVFJVRSh2cHhfY29k
ZWNfZXJyb3IoTlVMTCkgIT0gTlVMTCk7CisgICAgICAgICAgICB2cHhfY29kZWNfZW5jX2luaXQo
JmVuYywgbnVsbHB0ciwgbnVsbHB0ciwgMCkpOworICBFWFBFQ1RfRVEoVlBYX0NPREVDX0lOVkFM
SURfUEFSQU0sCisgICAgICAgICAgICB2cHhfY29kZWNfZW5jb2RlKG51bGxwdHIsIG51bGxwdHIs
IDAsIDAsIDAsIDApKTsKKyAgRVhQRUNUX0VRKFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNLAorICAg
ICAgICAgICAgdnB4X2NvZGVjX2VuY29kZShudWxscHRyLCAmaW1nLCAwLCAwLCAwLCAwKSk7Cisg
IEVYUEVDVF9FUShWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwgdnB4X2NvZGVjX2Rlc3Ryb3kobnVs
bHB0cikpOworICBFWFBFQ1RfRVEoVlBYX0NPREVDX0lOVkFMSURfUEFSQU0sCisgICAgICAgICAg
ICB2cHhfY29kZWNfZW5jX2NvbmZpZ19kZWZhdWx0KG51bGxwdHIsIG51bGxwdHIsIDApKTsKKyAg
RVhQRUNUX0VRKFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNLAorICAgICAgICAgICAgdnB4X2NvZGVj
X2VuY19jb25maWdfZGVmYXVsdChudWxscHRyLCAmY2ZnLCAwKSk7CisgIEVYUEVDVF9ORSh2cHhf
Y29kZWNfZXJyb3IobnVsbHB0ciksIG51bGxwdHIpOwogCiAgIGZvciAoaW50IGkgPSAwOyBpIDwg
TkVMRU1FTlRTKGtDb2RlY3MpOyArK2kpIHsKICAgICBTQ09QRURfVFJBQ0UodnB4X2NvZGVjX2lm
YWNlX25hbWUoa0NvZGVjc1tpXSkpOwogICAgIEVYUEVDVF9FUShWUFhfQ09ERUNfSU5WQUxJRF9Q
QVJBTSwKLSAgICAgICAgICAgICAgdnB4X2NvZGVjX2VuY19pbml0KE5VTEwsIGtDb2RlY3NbaV0s
IE5VTEwsIDApKTsKKyAgICAgICAgICAgICAgdnB4X2NvZGVjX2VuY19pbml0KG51bGxwdHIsIGtD
b2RlY3NbaV0sIG51bGxwdHIsIDApKTsKICAgICBFWFBFQ1RfRVEoVlBYX0NPREVDX0lOVkFMSURf
UEFSQU0sCi0gICAgICAgICAgICAgIHZweF9jb2RlY19lbmNfaW5pdCgmZW5jLCBrQ29kZWNzW2ld
LCBOVUxMLCAwKSk7CisgICAgICAgICAgICAgIHZweF9jb2RlY19lbmNfaW5pdCgmZW5jLCBrQ29k
ZWNzW2ldLCBudWxscHRyLCAwKSk7CiAgICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19JTlZBTElEX1BB
UkFNLAogICAgICAgICAgICAgICB2cHhfY29kZWNfZW5jX2NvbmZpZ19kZWZhdWx0KGtDb2RlY3Nb
aV0sICZjZmcsIDEpKTsKIAogICAgIEVYUEVDVF9FUShWUFhfQ09ERUNfT0ssIHZweF9jb2RlY19l
bmNfY29uZmlnX2RlZmF1bHQoa0NvZGVjc1tpXSwgJmNmZywgMCkpOwogICAgIEVYUEVDVF9FUShW
UFhfQ09ERUNfT0ssIHZweF9jb2RlY19lbmNfaW5pdCgmZW5jLCBrQ29kZWNzW2ldLCAmY2ZnLCAw
KSk7Ci0gICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19PSywgdnB4X2NvZGVjX2VuY29kZSgmZW5jLCBO
VUxMLCAwLCAwLCAwLCAwKSk7CisgICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19PSywgdnB4X2NvZGVj
X2VuY29kZSgmZW5jLCBudWxscHRyLCAwLCAwLCAwLCAwKSk7CiAKICAgICBFWFBFQ1RfRVEoVlBY
X0NPREVDX09LLCB2cHhfY29kZWNfZGVzdHJveSgmZW5jKSk7CiAgIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC9lbmNvZGVfcGVyZl90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2VuY29k
ZV9wZXJmX3Rlc3QuY2MKaW5kZXggMTQyZDllMmRhOGVmNTc3MjdhOTQyNjA0OWM2YzU1YzVmNzkz
ZjVmNi4uMTQyYTU1OTUyYjdlNjE4MDMwNmQ4NTE5NGE3ZmJkMWZlNWYyMGRjYyAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L2VuY29kZV9wZXJmX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90
ZXN0L2VuY29kZV9wZXJmX3Rlc3QuY2MKQEAgLTE4Myw2ICsxODMsNiBAQCBURVNUX1AoVlA5RW5j
b2RlUGVyZlRlc3QsIFBlcmZUZXN0KSB7CiAgIH0KIH0KIAotVlA5X0lOU1RBTlRJQVRFX1RFU1Rf
Q0FTRShWUDlFbmNvZGVQZXJmVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a1JlYWxUaW1lKSk7CitWUDlfSU5TVEFOVElBVEVf
VEVTVF9TVUlURShWUDlFbmNvZGVQZXJmVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
IDo6dGVzdGluZzo6VmFsdWVzKDo6bGlidnB4X3Rlc3Q6OmtSZWFsVGltZSkpOwogfSAgLy8gbmFt
ZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZW5jb2RlX3Rlc3RfZHJpdmVyLmNj
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L2VuY29kZV90ZXN0X2RyaXZlci5jYwppbmRleCA4ZmRiZGI2MmFl
N2RjMDQ2OTlhYzAzNWU2OWM0ZTc0YTQwODRiMzlkLi4xY2UzOWVhZWZmYjQ3OTE2ZmNjMDM1MjYw
YzAxMGM0MGVmYzU3YWJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZW5jb2RlX3Rlc3Rf
ZHJpdmVyLmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9lbmNvZGVfdGVzdF9kcml2ZXIuY2MKQEAg
LTkxLDcgKzkxLDcgQEAgdm9pZCBFbmNvZGVyOjpFbmNvZGVGcmFtZUludGVybmFsKGNvbnN0IFZp
ZGVvU291cmNlICZ2aWRlbywKIAogdm9pZCBFbmNvZGVyOjpGbHVzaCgpIHsKICAgY29uc3QgdnB4
X2NvZGVjX2Vycl90IHJlcyA9Ci0gICAgICB2cHhfY29kZWNfZW5jb2RlKCZlbmNvZGVyXywgTlVM
TCwgMCwgMCwgMCwgZGVhZGxpbmVfKTsKKyAgICAgIHZweF9jb2RlY19lbmNvZGUoJmVuY29kZXJf
LCBudWxscHRyLCAwLCAwLCAwLCBkZWFkbGluZV8pOwogICBpZiAoIWVuY29kZXJfLnByaXYpCiAg
ICAgQVNTRVJUX0VRKFZQWF9DT0RFQ19FUlJPUiwgcmVzKSA8PCBFbmNvZGVyRXJyb3IoKTsKICAg
ZWxzZQpAQCAtMTgyLDcgKzE4Miw3IEBAIHZvaWQgRW5jb2RlclRlc3Q6OlJ1bkxvb3AoVmlkZW9T
b3VyY2UgKnZpZGVvKSB7CiAgICAgQmVnaW5QYXNzSG9vayhwYXNzKTsKICAgICBzdGQ6OnVuaXF1
ZV9wdHI8RW5jb2Rlcj4gZW5jb2RlcigKICAgICAgICAgY29kZWNfLT5DcmVhdGVFbmNvZGVyKGNm
Z18sIGRlYWRsaW5lXywgaW5pdF9mbGFnc18sICZzdGF0c18pKTsKLSAgICBBU1NFUlRfVFJVRShl
bmNvZGVyLmdldCgpICE9IE5VTEwpOworICAgIEFTU0VSVF9ORShlbmNvZGVyLmdldCgpLCBudWxs
cHRyKTsKIAogICAgIEFTU0VSVF9OT19GQVRBTF9GQUlMVVJFKHZpZGVvLT5CZWdpbigpKTsKICAg
ICBlbmNvZGVyLT5Jbml0RW5jb2Rlcih2aWRlbyk7CkBAIC0xOTgsNyArMTk4LDcgQEAgdm9pZCBF
bmNvZGVyVGVzdDo6UnVuTG9vcChWaWRlb1NvdXJjZSAqdmlkZW8pIHsKICAgICAgICAgY29kZWNf
LT5DcmVhdGVEZWNvZGVyKGRlY19jZmcsIGRlY19pbml0X2ZsYWdzKSk7CiAgICAgYm9vbCBhZ2Fp
bjsKICAgICBmb3IgKGFnYWluID0gdHJ1ZTsgYWdhaW47IHZpZGVvLT5OZXh0KCkpIHsKLSAgICAg
IGFnYWluID0gKHZpZGVvLT5pbWcoKSAhPSBOVUxMKTsKKyAgICAgIGFnYWluID0gKHZpZGVvLT5p
bWcoKSAhPSBudWxscHRyKTsKIAogICAgICAgUHJlRW5jb2RlRnJhbWVIb29rKHZpZGVvKTsKICAg
ICAgIFByZUVuY29kZUZyYW1lSG9vayh2aWRlbywgZW5jb2Rlci5nZXQoKSk7CkBAIC0yMTYsNyAr
MjE2LDcgQEAgdm9pZCBFbmNvZGVyVGVzdDo6UnVuTG9vcChWaWRlb1NvdXJjZSAqdmlkZW8pIHsK
ICAgICAgICAgc3dpdGNoIChwa3QtPmtpbmQpIHsKICAgICAgICAgICBjYXNlIFZQWF9DT0RFQ19D
WF9GUkFNRV9QS1Q6CiAgICAgICAgICAgICBoYXNfY3hkYXRhID0gdHJ1ZTsKLSAgICAgICAgICAg
IGlmIChkZWNvZGVyLmdldCgpICE9IE5VTEwgJiYgRG9EZWNvZGUoKSkgeworICAgICAgICAgICAg
aWYgKGRlY29kZXIgIT0gbnVsbHB0ciAmJiBEb0RlY29kZSgpKSB7CiAgICAgICAgICAgICAgIFBy
ZURlY29kZUZyYW1lSG9vayh2aWRlbywgZGVjb2Rlci5nZXQoKSk7CiAgICAgICAgICAgICAgIHZw
eF9jb2RlY19lcnJfdCByZXNfZGVjID0gZGVjb2Rlci0+RGVjb2RlRnJhbWUoCiAgICAgICAgICAg
ICAgICAgICAoY29uc3QgdWludDhfdCAqKXBrdC0+ZGF0YS5mcmFtZS5idWYsIHBrdC0+ZGF0YS5m
cmFtZS5zeik7CkBAIC0yNDAsNyArMjQwLDcgQEAgdm9pZCBFbmNvZGVyVGVzdDo6UnVuTG9vcChW
aWRlb1NvdXJjZSAqdmlkZW8pIHsKIAogICAgICAgLy8gRmx1c2ggdGhlIGRlY29kZXIgd2hlbiB0
aGVyZSBhcmUgbm8gbW9yZSBmcmFnbWVudHMuCiAgICAgICBpZiAoKGluaXRfZmxhZ3NfICYgVlBY
X0NPREVDX1VTRV9PVVRQVVRfUEFSVElUSU9OKSAmJiBoYXNfZHhkYXRhKSB7Ci0gICAgICAgIGNv
bnN0IHZweF9jb2RlY19lcnJfdCByZXNfZGVjID0gZGVjb2Rlci0+RGVjb2RlRnJhbWUoTlVMTCwg
MCk7CisgICAgICAgIGNvbnN0IHZweF9jb2RlY19lcnJfdCByZXNfZGVjID0gZGVjb2Rlci0+RGVj
b2RlRnJhbWUobnVsbHB0ciwgMCk7CiAgICAgICAgIGlmICghSGFuZGxlRGVjb2RlUmVzdWx0KHJl
c19kZWMsICp2aWRlbywgZGVjb2Rlci5nZXQoKSkpIGJyZWFrOwogICAgICAgfQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3Rlc3QvZW5jb2RlX3Rlc3RfZHJpdmVyLmggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rl
c3QvZW5jb2RlX3Rlc3RfZHJpdmVyLmgKaW5kZXggM2VkYmE0YjkyNmE1NTYzMzkxNWNlY2Q4YTUw
ZDdjZTg0NDIwM2YyOC4uMzhjNjE5NTJlYjg3OTcxODViNTE5MDQ4M2ZhNjVkOWFkYmE3NjI3ZSAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2VuY29kZV90ZXN0X2RyaXZlci5oCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC9lbmNvZGVfdGVzdF9kcml2ZXIuaApAQCAtMTQ4LDYgKzE0OCwxMyBAQCBj
bGFzcyBFbmNvZGVyIHsKICAgICBBU1NFUlRfRVEoVlBYX0NPREVDX09LLCByZXMpIDw8IEVuY29k
ZXJFcnJvcigpOwogICB9CiAKKyNpZiBDT05GSUdfVlA5X0VOQ09ERVIKKyAgdm9pZCBDb250cm9s
KGludCBjdHJsX2lkLCB2cHhfcmNfZnVuY3NfdCAqYXJnKSB7CisgICAgY29uc3QgdnB4X2NvZGVj
X2Vycl90IHJlcyA9IHZweF9jb2RlY19jb250cm9sXygmZW5jb2Rlcl8sIGN0cmxfaWQsIGFyZyk7
CisgICAgQVNTRVJUX0VRKFZQWF9DT0RFQ19PSywgcmVzKSA8PCBFbmNvZGVyRXJyb3IoKTsKKyAg
fQorI2VuZGlmICAvLyBDT05GSUdfVlA5X0VOQ09ERVIKKwogI2lmIENPTkZJR19WUDhfRU5DT0RF
UiB8fCBDT05GSUdfVlA5X0VOQ09ERVIKICAgdm9pZCBDb250cm9sKGludCBjdHJsX2lkLCB2cHhf
YWN0aXZlX21hcF90ICphcmcpIHsKICAgICBjb25zdCB2cHhfY29kZWNfZXJyX3QgcmVzID0gdnB4
X2NvZGVjX2NvbnRyb2xfKCZlbmNvZGVyXywgY3RybF9pZCwgYXJnKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC9lcnJvcl9yZXNpbGllbmNlX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qv
ZXJyb3JfcmVzaWxpZW5jZV90ZXN0LmNjCmluZGV4IDAzMGI2N2M1NzI5MzhhY2ZiZWU4MTczOGVl
OWM4ZDBmNTgzNjg4YjAuLjQ1YTMyN2VjMmZkOTRlOWQ3MTk5N2Y5M2YyYzc3MTY2MTU2MjA0YjUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9lcnJvcl9yZXNpbGllbmNlX3Rlc3QuY2MKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L2Vycm9yX3Jlc2lsaWVuY2VfdGVzdC5jYwpAQCAtNTczLDEwICs1
NzMsMTAgQEAgVEVTVF9QKEVycm9yUmVzaWxpZW5jZVRlc3RMYXJnZUNvZGVjQ29udHJvbHMsIENv
ZGVjQ29udHJvbDNUZW1wb3JhbExheWVycykgewogICB9CiB9CiAKLVZQOF9JTlNUQU5USUFURV9U
RVNUX0NBU0UoRXJyb3JSZXNpbGllbmNlVGVzdExhcmdlLCBPTkVfUEFTU19URVNUX01PREVTLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh0cnVlKSk7Ci1WUDhf
SU5TVEFOVElBVEVfVEVTVF9DQVNFKEVycm9yUmVzaWxpZW5jZVRlc3RMYXJnZUNvZGVjQ29udHJv
bHMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIE9ORV9QQVNTX1RFU1RfTU9ERVMpOwotVlA5
X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShFcnJvclJlc2lsaWVuY2VUZXN0TGFyZ2UsIE9ORV9QQVNT
X1RFU1RfTU9ERVMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVz
KHRydWUpKTsKK1ZQOF9JTlNUQU5USUFURV9URVNUX1NVSVRFKEVycm9yUmVzaWxpZW5jZVRlc3RM
YXJnZSwgT05FX1BBU1NfVEVTVF9NT0RFUywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6
dGVzdGluZzo6VmFsdWVzKHRydWUpKTsKK1ZQOF9JTlNUQU5USUFURV9URVNUX1NVSVRFKEVycm9y
UmVzaWxpZW5jZVRlc3RMYXJnZUNvZGVjQ29udHJvbHMsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICBPTkVfUEFTU19URVNUX01PREVTKTsKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKEVy
cm9yUmVzaWxpZW5jZVRlc3RMYXJnZSwgT05FX1BBU1NfVEVTVF9NT0RFUywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHRydWUpKTsKIH0gIC8vIG5hbWVzcGFj
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2V4dGVybmFsX2ZyYW1lX2J1ZmZlcl90ZXN0
LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90ZXN0L2V4dGVybmFsX2ZyYW1lX2J1ZmZlcl90ZXN0LmNjCmluZGV4
IDQzOGVlYjNlY2RmNWUyMWJiY2Y2MmJiMjRiZDAyZWNiZDIxOGViNGQuLjNiZDRhMWM0NzMzY2Ew
MzBlZmMyZTlhODk2OGEyMmRjZTQwZGI5MDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9l
eHRlcm5hbF9mcmFtZV9idWZmZXJfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZXh0ZXJu
YWxfZnJhbWVfYnVmZmVyX3Rlc3QuY2MKQEAgLTM2LDcgKzM2LDcgQEAgc3RydWN0IEV4dGVybmFs
RnJhbWVCdWZmZXIgewogY2xhc3MgRXh0ZXJuYWxGcmFtZUJ1ZmZlckxpc3QgewogIHB1YmxpYzoK
ICAgRXh0ZXJuYWxGcmFtZUJ1ZmZlckxpc3QoKQotICAgICAgOiBudW1fYnVmZmVyc18oMCksIG51
bV91c2VkX2J1ZmZlcnNfKDApLCBleHRfZmJfbGlzdF8oTlVMTCkge30KKyAgICAgIDogbnVtX2J1
ZmZlcnNfKDApLCBudW1fdXNlZF9idWZmZXJzXygwKSwgZXh0X2ZiX2xpc3RfKG51bGxwdHIpIHt9
CiAKICAgdmlydHVhbCB+RXh0ZXJuYWxGcmFtZUJ1ZmZlckxpc3QoKSB7CiAgICAgZm9yIChpbnQg
aSA9IDA7IGkgPCBudW1fYnVmZmVyc187ICsraSkgewpAQCAtNTEsNyArNTEsNyBAQCBjbGFzcyBF
eHRlcm5hbEZyYW1lQnVmZmVyTGlzdCB7CiAKICAgICBudW1fYnVmZmVyc18gPSBudW1fYnVmZmVy
czsKICAgICBleHRfZmJfbGlzdF8gPSBuZXcgRXh0ZXJuYWxGcmFtZUJ1ZmZlcltudW1fYnVmZmVy
c19dOwotICAgIEVYUEVDVF9UUlVFKGV4dF9mYl9saXN0XyAhPSBOVUxMKTsKKyAgICBFWFBFQ1Rf
TkUoZXh0X2ZiX2xpc3RfLCBudWxscHRyKTsKICAgICBtZW1zZXQoZXh0X2ZiX2xpc3RfLCAwLCBz
aXplb2YoZXh0X2ZiX2xpc3RfWzBdKSAqIG51bV9idWZmZXJzXyk7CiAgICAgcmV0dXJuIHRydWU7
CiAgIH0KQEAgLTYxLDcgKzYxLDcgQEAgY2xhc3MgRXh0ZXJuYWxGcmFtZUJ1ZmZlckxpc3Qgewog
ICAvLyBmcmFtZSBidWZmZXIgaXMgaW4gdXNlIGJ5IGxpYnZweC4gRmluYWxseSBzZXRzIHxmYnwg
dG8gcG9pbnQgdG8gdGhlCiAgIC8vIGV4dGVybmFsIGZyYW1lIGJ1ZmZlci4gUmV0dXJucyA8IDAg
b24gYW4gZXJyb3IuCiAgIGludCBHZXRGcmVlRnJhbWVCdWZmZXIoc2l6ZV90IG1pbl9zaXplLCB2
cHhfY29kZWNfZnJhbWVfYnVmZmVyX3QgKmZiKSB7Ci0gICAgRVhQRUNUX1RSVUUoZmIgIT0gTlVM
TCk7CisgICAgRVhQRUNUX05FKGZiLCBudWxscHRyKTsKICAgICBjb25zdCBpbnQgaWR4ID0gRmlu
ZEZyZWVCdWZmZXJJbmRleCgpOwogICAgIGlmIChpZHggPT0gbnVtX2J1ZmZlcnNfKSByZXR1cm4g
LTE7CiAKQEAgLTgxLDEzICs4MSwxMyBAQCBjbGFzcyBFeHRlcm5hbEZyYW1lQnVmZmVyTGlzdCB7
CiAgIC8vIFRlc3QgZnVuY3Rpb24gdGhhdCB3aWxsIG5vdCBhbGxvY2F0ZSBhbnkgZGF0YSBmb3Ig
dGhlIGZyYW1lIGJ1ZmZlci4KICAgLy8gUmV0dXJucyA8IDAgb24gYW4gZXJyb3IuCiAgIGludCBH
ZXRaZXJvRnJhbWVCdWZmZXIoc2l6ZV90IG1pbl9zaXplLCB2cHhfY29kZWNfZnJhbWVfYnVmZmVy
X3QgKmZiKSB7Ci0gICAgRVhQRUNUX1RSVUUoZmIgIT0gTlVMTCk7CisgICAgRVhQRUNUX05FKGZi
LCBudWxscHRyKTsKICAgICBjb25zdCBpbnQgaWR4ID0gRmluZEZyZWVCdWZmZXJJbmRleCgpOwog
ICAgIGlmIChpZHggPT0gbnVtX2J1ZmZlcnNfKSByZXR1cm4gLTE7CiAKICAgICBpZiAoZXh0X2Zi
X2xpc3RfW2lkeF0uc2l6ZSA8IG1pbl9zaXplKSB7CiAgICAgICBkZWxldGVbXSBleHRfZmJfbGlz
dF9baWR4XS5kYXRhOwotICAgICAgZXh0X2ZiX2xpc3RfW2lkeF0uZGF0YSA9IE5VTEw7CisgICAg
ICBleHRfZmJfbGlzdF9baWR4XS5kYXRhID0gbnVsbHB0cjsKICAgICAgIGV4dF9mYl9saXN0X1tp
ZHhdLnNpemUgPSBtaW5fc2l6ZTsKICAgICB9CiAKQEAgLTk4LDE0ICs5OCwxNCBAQCBjbGFzcyBF
eHRlcm5hbEZyYW1lQnVmZmVyTGlzdCB7CiAgIC8vIE1hcmtzIHRoZSBleHRlcm5hbCBmcmFtZSBi
dWZmZXIgdGhhdCB8ZmJ8IGlzIHBvaW50aW5nIHRvIGFzIGZyZWUuCiAgIC8vIFJldHVybnMgPCAw
IG9uIGFuIGVycm9yLgogICBpbnQgUmV0dXJuRnJhbWVCdWZmZXIodnB4X2NvZGVjX2ZyYW1lX2J1
ZmZlcl90ICpmYikgewotICAgIGlmIChmYiA9PSBOVUxMKSB7Ci0gICAgICBFWFBFQ1RfVFJVRShm
YiAhPSBOVUxMKTsKKyAgICBpZiAoZmIgPT0gbnVsbHB0cikgeworICAgICAgRVhQRUNUX05FKGZi
LCBudWxscHRyKTsKICAgICAgIHJldHVybiAtMTsKICAgICB9CiAgICAgRXh0ZXJuYWxGcmFtZUJ1
ZmZlciAqY29uc3QgZXh0X2ZiID0KICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxFeHRlcm5hbEZy
YW1lQnVmZmVyICo+KGZiLT5wcml2KTsKLSAgICBpZiAoZXh0X2ZiID09IE5VTEwpIHsKLSAgICAg
IEVYUEVDVF9UUlVFKGV4dF9mYiAhPSBOVUxMKTsKKyAgICBpZiAoZXh0X2ZiID09IG51bGxwdHIp
IHsKKyAgICAgIEVYUEVDVF9ORShleHRfZmIsIG51bGxwdHIpOwogICAgICAgcmV0dXJuIC0xOwog
ICAgIH0KICAgICBFWFBFQ1RfRVEoMSwgZXh0X2ZiLT5pbl91c2UpOwpAQCAtMTE3LDcgKzExNyw3
IEBAIGNsYXNzIEV4dGVybmFsRnJhbWVCdWZmZXJMaXN0IHsKICAgLy8gQ2hlY2tzIHRoYXQgdGhl
IHZweF9pbWFnZV90IGRhdGEgaXMgY29udGFpbmVkIHdpdGhpbiB0aGUgZXh0ZXJuYWwgZnJhbWUK
ICAgLy8gYnVmZmVyIHByaXZhdGUgZGF0YSBwYXNzZWQgYmFjayBpbiB0aGUgdnB4X2ltYWdlX3Qu
CiAgIHZvaWQgQ2hlY2tJbWFnZUZyYW1lQnVmZmVyKGNvbnN0IHZweF9pbWFnZV90ICppbWcpIHsK
LSAgICBpZiAoaW1nLT5mYl9wcml2ICE9IE5VTEwpIHsKKyAgICBpZiAoaW1nLT5mYl9wcml2ICE9
IG51bGxwdHIpIHsKICAgICAgIGNvbnN0IHN0cnVjdCBFeHRlcm5hbEZyYW1lQnVmZmVyICpjb25z
dCBleHRfZmIgPQogICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8RXh0ZXJuYWxGcmFtZUJ1ZmZl
ciAqPihpbWctPmZiX3ByaXYpOwogCkBAIC0xNDMsNyArMTQzLDcgQEAgY2xhc3MgRXh0ZXJuYWxG
cmFtZUJ1ZmZlckxpc3QgewogICAvLyBTZXRzIHxmYnwgdG8gYW4gZXh0ZXJuYWwgZnJhbWUgYnVm
ZmVyLiBpZHggaXMgdGhlIGluZGV4IGludG8gdGhlIGZyYW1lCiAgIC8vIGJ1ZmZlciBsaXN0Lgog
ICB2b2lkIFNldEZyYW1lQnVmZmVyKGludCBpZHgsIHZweF9jb2RlY19mcmFtZV9idWZmZXJfdCAq
ZmIpIHsKLSAgICBBU1NFUlRfVFJVRShmYiAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoZmIsIG51
bGxwdHIpOwogICAgIGZiLT5kYXRhID0gZXh0X2ZiX2xpc3RfW2lkeF0uZGF0YTsKICAgICBmYi0+
c2l6ZSA9IGV4dF9mYl9saXN0X1tpZHhdLnNpemU7CiAgICAgQVNTRVJUX0VRKDAsIGV4dF9mYl9s
aXN0X1tpZHhdLmluX3VzZSk7CkBAIC0yMDgsMTAgKzIwOCwxMCBAQCBjbGFzcyBFeHRlcm5hbEZy
YW1lQnVmZmVyTUQ1VGVzdAogIHByb3RlY3RlZDoKICAgRXh0ZXJuYWxGcmFtZUJ1ZmZlck1ENVRl
c3QoKQogICAgICAgOiBEZWNvZGVyVGVzdChHRVRfUEFSQU0oOjpsaWJ2cHhfdGVzdDo6a0NvZGVj
RmFjdG9yeVBhcmFtKSksCi0gICAgICAgIG1kNV9maWxlXyhOVUxMKSwgbnVtX2J1ZmZlcnNfKDAp
IHt9CisgICAgICAgIG1kNV9maWxlXyhudWxscHRyKSwgbnVtX2J1ZmZlcnNfKDApIHt9CiAKICAg
dmlydHVhbCB+RXh0ZXJuYWxGcmFtZUJ1ZmZlck1ENVRlc3QoKSB7Ci0gICAgaWYgKG1kNV9maWxl
XyAhPSBOVUxMKSBmY2xvc2UobWQ1X2ZpbGVfKTsKKyAgICBpZiAobWQ1X2ZpbGVfICE9IG51bGxw
dHIpIGZjbG9zZShtZDVfZmlsZV8pOwogICB9CiAKICAgdmlydHVhbCB2b2lkIFByZURlY29kZUZy
YW1lSG9vaygKQEAgLTIyOCwxMyArMjI4LDEzIEBAIGNsYXNzIEV4dGVybmFsRnJhbWVCdWZmZXJN
RDVUZXN0CiAKICAgdm9pZCBPcGVuTUQ1RmlsZShjb25zdCBzdGQ6OnN0cmluZyAmbWQ1X2ZpbGVf
bmFtZV8pIHsKICAgICBtZDVfZmlsZV8gPSBsaWJ2cHhfdGVzdDo6T3BlblRlc3REYXRhRmlsZSht
ZDVfZmlsZV9uYW1lXyk7Ci0gICAgQVNTRVJUX1RSVUUobWQ1X2ZpbGVfICE9IE5VTEwpCisgICAg
QVNTRVJUX05FKG1kNV9maWxlXywgbnVsbHB0cikKICAgICAgICAgPDwgIk1kNSBmaWxlIG9wZW4g
ZmFpbGVkLiBGaWxlbmFtZTogIiA8PCBtZDVfZmlsZV9uYW1lXzsKICAgfQogCiAgIHZpcnR1YWwg
dm9pZCBEZWNvbXByZXNzZWRGcmFtZUhvb2soY29uc3QgdnB4X2ltYWdlX3QgJmltZywKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBpbnQgZnJhbWVf
bnVtYmVyKSB7Ci0gICAgQVNTRVJUX1RSVUUobWQ1X2ZpbGVfICE9IE5VTEwpOworICAgIEFTU0VS
VF9ORShtZDVfZmlsZV8sIG51bGxwdHIpOwogICAgIGNoYXIgZXhwZWN0ZWRfbWQ1WzMzXTsKICAg
ICBjaGFyIGp1bmtbMTI4XTsKIApAQCAtMjg2LDI0ICsyODYsMjUgQEAgY29uc3QgY2hhciBrVlA5
Tm9uUmVmVGVzdEZpbGVbXSA9ICJ2cDkwLTItMjItc3ZjXzEyODB4NzIwXzEud2VibSI7CiAvLyBD
bGFzcyBmb3IgdGVzdGluZyBwYXNzaW5nIGluIGV4dGVybmFsIGZyYW1lIGJ1ZmZlcnMgdG8gbGli
dnB4LgogY2xhc3MgRXh0ZXJuYWxGcmFtZUJ1ZmZlclRlc3QgOiBwdWJsaWMgOjp0ZXN0aW5nOjpU
ZXN0IHsKICBwcm90ZWN0ZWQ6Ci0gIEV4dGVybmFsRnJhbWVCdWZmZXJUZXN0KCkgOiB2aWRlb18o
TlVMTCksIGRlY29kZXJfKE5VTEwpLCBudW1fYnVmZmVyc18oMCkge30KKyAgRXh0ZXJuYWxGcmFt
ZUJ1ZmZlclRlc3QoKQorICAgICAgOiB2aWRlb18obnVsbHB0ciksIGRlY29kZXJfKG51bGxwdHIp
LCBudW1fYnVmZmVyc18oMCkge30KIAogICB2aXJ0dWFsIHZvaWQgU2V0VXAoKSB7CiAgICAgdmlk
ZW9fID0gbmV3IGxpYnZweF90ZXN0OjpXZWJNVmlkZW9Tb3VyY2Uoa1ZQOVRlc3RGaWxlKTsKLSAg
ICBBU1NFUlRfVFJVRSh2aWRlb18gIT0gTlVMTCk7CisgICAgQVNTRVJUX05FKHZpZGVvXywgbnVs
bHB0cik7CiAgICAgdmlkZW9fLT5Jbml0KCk7CiAgICAgdmlkZW9fLT5CZWdpbigpOwogCiAgICAg
dnB4X2NvZGVjX2RlY19jZmdfdCBjZmcgPSB2cHhfY29kZWNfZGVjX2NmZ190KCk7CiAgICAgZGVj
b2Rlcl8gPSBuZXcgbGlidnB4X3Rlc3Q6OlZQOURlY29kZXIoY2ZnLCAwKTsKLSAgICBBU1NFUlRf
VFJVRShkZWNvZGVyXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoZGVjb2Rlcl8sIG51bGxwdHIp
OwogICB9CiAKICAgdmlydHVhbCB2b2lkIFRlYXJEb3duKCkgewogICAgIGRlbGV0ZSBkZWNvZGVy
XzsKLSAgICBkZWNvZGVyXyA9IE5VTEw7CisgICAgZGVjb2Rlcl8gPSBudWxscHRyOwogICAgIGRl
bGV0ZSB2aWRlb187Ci0gICAgdmlkZW9fID0gTlVMTDsKKyAgICB2aWRlb18gPSBudWxscHRyOwog
ICB9CiAKICAgLy8gUGFzc2VzIHRoZSBleHRlcm5hbCBmcmFtZSBidWZmZXIgaW5mb3JtYXRpb24g
dG8gbGlidnB4LgpAQCAtMzI3LDcgKzMyOCw3IEBAIGNsYXNzIEV4dGVybmFsRnJhbWVCdWZmZXJU
ZXN0IDogcHVibGljIDo6dGVzdGluZzo6VGVzdCB7CiAgIH0KIAogICB2cHhfY29kZWNfZXJyX3Qg
RGVjb2RlUmVtYWluaW5nRnJhbWVzKCkgewotICAgIGZvciAoOyB2aWRlb18tPmN4ZGF0YSgpICE9
IE5VTEw7IHZpZGVvXy0+TmV4dCgpKSB7CisgICAgZm9yICg7IHZpZGVvXy0+Y3hkYXRhKCkgIT0g
bnVsbHB0cjsgdmlkZW9fLT5OZXh0KCkpIHsKICAgICAgIGNvbnN0IHZweF9jb2RlY19lcnJfdCBy
ZXMgPQogICAgICAgICAgIGRlY29kZXJfLT5EZWNvZGVGcmFtZSh2aWRlb18tPmN4ZGF0YSgpLCB2
aWRlb18tPmZyYW1lX3NpemUoKSk7CiAgICAgICBpZiAocmVzICE9IFZQWF9DT0RFQ19PSykgcmV0
dXJuIHJlczsKQEAgLTMzOCwxMCArMzM5LDEwIEBAIGNsYXNzIEV4dGVybmFsRnJhbWVCdWZmZXJU
ZXN0IDogcHVibGljIDo6dGVzdGluZzo6VGVzdCB7CiAKICAgdm9pZCBDaGVja0RlY29kZWRGcmFt
ZXMoKSB7CiAgICAgbGlidnB4X3Rlc3Q6OkR4RGF0YUl0ZXJhdG9yIGRlY19pdGVyID0gZGVjb2Rl
cl8tPkdldER4RGF0YSgpOwotICAgIGNvbnN0IHZweF9pbWFnZV90ICppbWcgPSBOVUxMOworICAg
IGNvbnN0IHZweF9pbWFnZV90ICppbWcgPSBudWxscHRyOwogCiAgICAgLy8gR2V0IGRlY29tcHJl
c3NlZCBkYXRhCi0gICAgd2hpbGUgKChpbWcgPSBkZWNfaXRlci5OZXh0KCkpICE9IE5VTEwpIHsK
KyAgICB3aGlsZSAoKGltZyA9IGRlY19pdGVyLk5leHQoKSkgIT0gbnVsbHB0cikgewogICAgICAg
ZmJfbGlzdF8uQ2hlY2tJbWFnZUZyYW1lQnVmZmVyKGltZyk7CiAgICAgfQogICB9CkBAIC0zNTYs
MTMgKzM1NywxMyBAQCBjbGFzcyBFeHRlcm5hbEZyYW1lQnVmZmVyTm9uUmVmVGVzdCA6IHB1Ymxp
YyBFeHRlcm5hbEZyYW1lQnVmZmVyVGVzdCB7CiAgcHJvdGVjdGVkOgogICB2aXJ0dWFsIHZvaWQg
U2V0VXAoKSB7CiAgICAgdmlkZW9fID0gbmV3IGxpYnZweF90ZXN0OjpXZWJNVmlkZW9Tb3VyY2Uo
a1ZQOU5vblJlZlRlc3RGaWxlKTsKLSAgICBBU1NFUlRfVFJVRSh2aWRlb18gIT0gTlVMTCk7Cisg
ICAgQVNTRVJUX05FKHZpZGVvXywgbnVsbHB0cik7CiAgICAgdmlkZW9fLT5Jbml0KCk7CiAgICAg
dmlkZW9fLT5CZWdpbigpOwogCiAgICAgdnB4X2NvZGVjX2RlY19jZmdfdCBjZmcgPSB2cHhfY29k
ZWNfZGVjX2NmZ190KCk7CiAgICAgZGVjb2Rlcl8gPSBuZXcgbGlidnB4X3Rlc3Q6OlZQOURlY29k
ZXIoY2ZnLCAwKTsKLSAgICBBU1NFUlRfVFJVRShkZWNvZGVyXyAhPSBOVUxMKTsKKyAgICBBU1NF
UlRfTkUoZGVjb2Rlcl8sIG51bGxwdHIpOwogICB9CiAKICAgdmlydHVhbCB2b2lkIENoZWNrRnJh
bWVCdWZmZXJSZWxlYXNlKCkgewpAQCAtNDA1LDcgKzQwNiw3IEBAIFRFU1RfUChFeHRlcm5hbEZy
YW1lQnVmZmVyTUQ1VGVzdCwgRXh0RkJNRDVNYXRjaCkgewogICAgIHJldHVybjsKICNlbmRpZgog
ICB9Ci0gIEFTU0VSVF9UUlVFKHZpZGVvLmdldCgpICE9IE5VTEwpOworICBBU1NFUlRfTkUodmlk
ZW8uZ2V0KCksIG51bGxwdHIpOwogICB2aWRlby0+SW5pdCgpOwogCiAgIC8vIENvbnN0cnVjdCBt
ZDUgZmlsZSBuYW1lLgpAQCAtNDgyLDEzICs0ODMsMTQgQEAgVEVTVF9GKEV4dGVybmFsRnJhbWVC
dWZmZXJUZXN0LCBOdWxsR2V0RnVuY3Rpb24pIHsKICAgY29uc3QgaW50IG51bV9idWZmZXJzID0g
VlA5X01BWElNVU1fUkVGX0JVRkZFUlMgKyBWUFhfTUFYSU1VTV9XT1JLX0JVRkZFUlM7CiAgIEFT
U0VSVF9FUSgKICAgICAgIFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNLAotICAgICAgU2V0RnJhbWVC
dWZmZXJGdW5jdGlvbnMobnVtX2J1ZmZlcnMsIE5VTEwsIHJlbGVhc2VfdnA5X2ZyYW1lX2J1ZmZl
cikpOworICAgICAgU2V0RnJhbWVCdWZmZXJGdW5jdGlvbnMobnVtX2J1ZmZlcnMsIG51bGxwdHIs
IHJlbGVhc2VfdnA5X2ZyYW1lX2J1ZmZlcikpOwogfQogCiBURVNUX0YoRXh0ZXJuYWxGcmFtZUJ1
ZmZlclRlc3QsIE51bGxSZWxlYXNlRnVuY3Rpb24pIHsKICAgY29uc3QgaW50IG51bV9idWZmZXJz
ID0gVlA5X01BWElNVU1fUkVGX0JVRkZFUlMgKyBWUFhfTUFYSU1VTV9XT1JLX0JVRkZFUlM7Ci0g
IEFTU0VSVF9FUShWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwKLSAgICAgICAgICAgIFNldEZyYW1l
QnVmZmVyRnVuY3Rpb25zKG51bV9idWZmZXJzLCBnZXRfdnA5X2ZyYW1lX2J1ZmZlciwgTlVMTCkp
OworICBBU1NFUlRfRVEoCisgICAgICBWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTSwKKyAgICAgIFNl
dEZyYW1lQnVmZmVyRnVuY3Rpb25zKG51bV9idWZmZXJzLCBnZXRfdnA5X2ZyYW1lX2J1ZmZlciwg
bnVsbHB0cikpOwogfQogCiBURVNUX0YoRXh0ZXJuYWxGcmFtZUJ1ZmZlclRlc3QsIFNldEFmdGVy
RGVjb2RlKSB7CkBAIC01MDksNyArNTExLDcgQEAgVEVTVF9GKEV4dGVybmFsRnJhbWVCdWZmZXJO
b25SZWZUZXN0LCBSZWxlYXNlTm9uUmVmRnJhbWVCdWZmZXIpIHsKIH0KICNlbmRpZiAgLy8gQ09O
RklHX1dFQk1fSU8KIAotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRSgKK1ZQOV9JTlNUQU5USUFU
RV9URVNUX1NVSVRFKAogICAgIEV4dGVybmFsRnJhbWVCdWZmZXJNRDVUZXN0LAogICAgIDo6dGVz
dGluZzo6VmFsdWVzSW4obGlidnB4X3Rlc3Q6OmtWUDlUZXN0VmVjdG9ycywKICAgICAgICAgICAg
ICAgICAgICAgICAgIGxpYnZweF90ZXN0OjprVlA5VGVzdFZlY3RvcnMgKwpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90ZXN0L2ZkY3Q4eDhfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9mZGN0OHg4
X3Rlc3QuY2MKaW5kZXggMWQ0ZjMxODcxZjBjYmVmYjMxOWY1NmM1NzQ0NzcyZDhiOGMzNDYyNi4u
MDgyMjY2NmU3MDZkZmI3NDM4NmZlN2EyOGVkNDEwZmE4YWNkMjBmYyAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L2ZkY3Q4eDhfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvZmRjdDh4
OF90ZXN0LmNjCkBAIC01OTgsNiArNTk4LDcgQEAgVEVTVF9QKEZ3ZFRyYW5zOHg4SFQsIFJvdW5k
VHJpcEVycm9yQ2hlY2spIHsgUnVuUm91bmRUcmlwRXJyb3JDaGVjaygpOyB9CiAKIFRFU1RfUChG
d2RUcmFuczh4OEhULCBFeHRyZW1hbENoZWNrKSB7IFJ1bkV4dHJlbWFsQ2hlY2soKTsgfQogCisj
aWYgSEFWRV9TU0UyICYmIENPTkZJR19WUDlfSElHSEJJVERFUFRIICYmICFDT05GSUdfRU1VTEFU
RV9IQVJEV0FSRQogY2xhc3MgSW52VHJhbnM4eDhEQ1QgOiBwdWJsaWMgRndkVHJhbnM4eDhUZXN0
QmFzZSwKICAgICAgICAgICAgICAgICAgICAgICAgcHVibGljIDo6dGVzdGluZzo6VGVzdFdpdGhQ
YXJhbTxJZGN0OHg4UGFyYW0+IHsKICBwdWJsaWM6CkBAIC02MjQsMjkgKzYyNSwzMSBAQCBjbGFz
cyBJbnZUcmFuczh4OERDVCA6IHB1YmxpYyBGd2RUcmFuczh4OFRlc3RCYXNlLAogICBJZGN0RnVu
YyBpbnZfdHhmbV87CiAgIGludCB0aHJlc2hfOwogfTsKK0dURVNUX0FMTE9XX1VOSU5TVEFOVElB
VEVEX1BBUkFNRVRFUklaRURfVEVTVChJbnZUcmFuczh4OERDVCk7CiAKIFRFU1RfUChJbnZUcmFu
czh4OERDVCwgQ29tcGFyZVJlZmVyZW5jZSkgewogICBDb21wYXJlSW52UmVmZXJlbmNlKHJlZl90
eGZtXywgdGhyZXNoXyk7CiB9CisjZW5kaWYgIC8vIEhBVkVfU1NFMiAmJiBDT05GSUdfVlA5X0hJ
R0hCSVRERVBUSCAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKIAogdXNpbmcgc3RkOjptYWtl
X3R1cGxlOwogCiAjaWYgQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKLUlOU1RBTlRJQVRFX1RFU1Rf
Q0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEMsIEZ3ZFRyYW5zOHg4RENU
LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBtYWtlX3R1cGxlKCZ2cHhfZmRjdDh4
OF9jLCAmdnB4X2lkY3Q4eDhfNjRfYWRkX2MsIDAsIFZQWF9CSVRTXzgpLAogICAgICAgICBtYWtl
X3R1cGxlKCZ2cHhfaGlnaGJkX2ZkY3Q4eDhfYywgJmlkY3Q4eDhfMTAsIDAsIFZQWF9CSVRTXzEw
KSwKICAgICAgICAgbWFrZV90dXBsZSgmdnB4X2hpZ2hiZF9mZGN0OHg4X2MsICZpZGN0OHg4XzEy
LCAwLCBWUFhfQklUU18xMikpKTsKICNlbHNlCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChDLCBG
d2RUcmFuczh4OERDVCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVz
KG1ha2VfdHVwbGUoJnZweF9mZGN0OHg4X2MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfaWRjdDh4OF82NF9hZGRfYywgMCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVlBYX0JJVFNf
OCkpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDLCBGd2RUcmFuczh4OERDVCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfZmRj
dDh4OF9jLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgJnZweF9pZGN0OHg4XzY0X2FkZF9jLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVlBYX0JJVFNfOCkpKTsKICNlbmRpZiAgLy8g
Q09ORklHX1ZQOV9ISUdIQklUREVQVEgKIAogI2lmIENPTkZJR19WUDlfSElHSEJJVERFUFRICi1J
TlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBD
LCBGd2RUcmFuczh4OEhULAogICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBtYWtlX3R1
cGxlKCZ2cDlfZmh0OHg4X2MsICZ2cDlfaWh0OHg4XzY0X2FkZF9jLCAwLCBWUFhfQklUU184KSwK
QEAgLTY2Miw3ICs2NjUsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgbWFr
ZV90dXBsZSgmdnA5X2ZodDh4OF9jLCAmdnA5X2lodDh4OF82NF9hZGRfYywgMiwgVlBYX0JJVFNf
OCksCiAgICAgICAgIG1ha2VfdHVwbGUoJnZwOV9maHQ4eDhfYywgJnZwOV9paHQ4eDhfNjRfYWRk
X2MsIDMsIFZQWF9CSVRTXzgpKSk7CiAjZWxzZQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJ
TlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgQywgRndkVHJhbnM4eDhIVCwKICAgICA6OnRl
c3Rpbmc6OlZhbHVlcygKICAgICAgICAgbWFrZV90dXBsZSgmdnA5X2ZodDh4OF9jLCAmdnA5X2lo
dDh4OF82NF9hZGRfYywgMCwgVlBYX0JJVFNfOCksCkBAIC02NzIsMTMgKzY3NSwxMyBAQCBJTlNU
QU5USUFURV9URVNUX0NBU0VfUCgKICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9ISUdIQklUREVQVEgK
IAogI2lmIEhBVkVfTkVPTiAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdBUkUKLUlOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKE5FT04sIEZ3ZFRyYW5zOHg4RENULAotICAgICAgICAgICAgICAgICAgICAg
ICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3Q4eDhfbmVvbiwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9pZGN0
OHg4XzY0X2FkZF9uZW9uLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAwLCBWUFhfQklUU184KSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9Q
KE5FT04sIEZ3ZFRyYW5zOHg4RENULAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGlu
Zzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZweF9mZGN0OHg4X25lb24sCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2lkY3Q4eDhfNjRfYWRk
X25lb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAwLCBWUFhfQklUU184KSkpOwogCiAjaWYgIUNPTkZJR19WUDlfSElHSEJJVERFUFRICi1J
TlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBO
RU9OLCBGd2RUcmFuczh4OEhULAogICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBtYWtl
X3R1cGxlKCZ2cDlfZmh0OHg4X2MsICZ2cDlfaWh0OHg4XzY0X2FkZF9uZW9uLCAwLCBWUFhfQklU
U184KSwKQEAgLTY4OSwxMSArNjkyLDExIEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2Vu
ZGlmICAvLyBIQVZFX05FT04gJiYgIUNPTkZJR19FTVVMQVRFX0hBUkRXQVJFCiAKICNpZiBIQVZF
X1NTRTIgJiYgIUNPTkZJR19WUDlfSElHSEJJVERFUFRIICYmICFDT05GSUdfRU1VTEFURV9IQVJE
V0FSRQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoU1NFMiwgRndkVHJhbnM4eDhEQ1QsCi0gICAg
ICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfZmRj
dDh4OF9zc2UyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAmdnB4X2lkY3Q4eDhfNjRfYWRkX3NzZTIsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIFZQWF9CSVRTXzgpKSk7Ci1JTlNUQU5U
SUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChTU0UyLCBGd2RUcmFu
czh4OERDVCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtl
X3R1cGxlKCZ2cHhfZmRjdDh4OF9zc2UyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9pZGN0OHg4XzY0X2FkZF9zc2UyLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgVlBYX0JJ
VFNfOCkpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBTU0UyLCBGd2RUcmFuczh4
OEhULAogICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBtYWtlX3R1cGxlKCZ2cDlfZmh0
OHg4X3NzZTIsICZ2cDlfaWh0OHg4XzY0X2FkZF9zc2UyLCAwLCBWUFhfQklUU184KSwKQEAgLTcw
Myw3ICs3MDYsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNlbmRpZiAgLy8gSEFWRV9T
U0UyICYmICFDT05GSUdfVlA5X0hJR0hCSVRERVBUSCAmJiAhQ09ORklHX0VNVUxBVEVfSEFSRFdB
UkUKIAogI2lmIEhBVkVfU1NFMiAmJiBDT05GSUdfVlA5X0hJR0hCSVRERVBUSCAmJiAhQ09ORklH
X0VNVUxBVEVfSEFSRFdBUkUKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QKAogICAgIFNTRTIsIEZ3ZFRyYW5zOHg4RENULAogICAgIDo6dGVzdGluZzo6
VmFsdWVzKG1ha2VfdHVwbGUoJnZweF9mZGN0OHg4X3NzZTIsICZ2cHhfaWRjdDh4OF82NF9hZGRf
YywgMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQWF9CSVRTXzgpLApAQCAt
NzE2LDcgKzcxOSw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAgICAg
ICAgICAgIG1ha2VfdHVwbGUoJnZweF9oaWdoYmRfZmRjdDh4OF9zc2UyLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgJmlkY3Q4eDhfNjRfYWRkXzEyX3NzZTIsIDEyLCBWUFhfQklU
U18xMikpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NV
SVRFX1AoCiAgICAgU1NFMiwgRndkVHJhbnM4eDhIVCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcygK
ICAgICAgICAgbWFrZV90dXBsZSgmdnA5X2ZodDh4OF9zc2UyLCAmdnA5X2lodDh4OF82NF9hZGRf
YywgMCwgVlBYX0JJVFNfOCksCkBAIC03MjYsNyArNzI5LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9D
QVNFX1AoCiAKIC8vIE9wdGltaXphdGlvbnMgdGFrZSBlZmZlY3QgYXQgYSB0aHJlc2hvbGQgb2Yg
NjIwMSwgc28gd2UgdXNlIGEgdmFsdWUgY2xvc2UgdG8KIC8vIHRoYXQgdG8gdGVzdCBib3RoIGJy
YW5jaGVzLgotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRF
X1AoCiAgICAgU1NFMiwgSW52VHJhbnM4eDhEQ1QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAg
ICAgICAgIG1ha2VfdHVwbGUoJmlkY3Q4eDhfMTJfYWRkXzEwX2MsICZpZGN0OHg4XzEyX2FkZF8x
MF9zc2UyLCA2MjI1LApAQCAtNzM5LDE4ICs3NDIsMTggQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNF
X1AoCiAKICNpZiBIQVZFX1NTU0UzICYmIFZQWF9BUkNIX1g4Nl82NCAmJiAhQ09ORklHX1ZQOV9I
SUdIQklUREVQVEggJiYgXAogICAgICFDT05GSUdfRU1VTEFURV9IQVJEV0FSRQotSU5TVEFOVElB
VEVfVEVTVF9DQVNFX1AoU1NTRTMsIEZ3ZFRyYW5zOHg4RENULAotICAgICAgICAgICAgICAgICAg
ICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3Q4eDhfc3NzZTMsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhf
aWRjdDh4OF82NF9hZGRfc3NlMiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgMCwgVlBYX0JJVFNfOCkpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJ
VEVfUChTU1NFMywgRndkVHJhbnM4eDhEQ1QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3Q4eDhfc3NzZTMsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2lkY3Q4eDhf
NjRfYWRkX3NzZTIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAwLCBWUFhfQklUU184KSkpOwogI2VuZGlmCiAKICNpZiBIQVZFX01TQSAmJiAh
Q09ORklHX1ZQOV9ISUdIQklUREVQVEggJiYgIUNPTkZJR19FTVVMQVRFX0hBUkRXQVJFCi1JTlNU
QU5USUFURV9URVNUX0NBU0VfUChNU0EsIEZ3ZFRyYW5zOHg4RENULAotICAgICAgICAgICAgICAg
ICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3Q4eDhfbXNhLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4
X2lkY3Q4eDhfNjRfYWRkX21zYSwgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgVlBYX0JJVFNfOCkpKTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FT
RV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE1TQSwgRndkVHJhbnM4eDhEQ1QsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2Zk
Y3Q4eDhfbXNhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgJnZweF9pZGN0OHg4XzY0X2FkZF9tc2EsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCBWUFhfQklUU184KSkpOworSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QKAogICAgIE1TQSwgRndkVHJhbnM4eDhIVCwKICAgICA6OnRlc3Rp
bmc6OlZhbHVlcygKICAgICAgICAgbWFrZV90dXBsZSgmdnA5X2ZodDh4OF9tc2EsICZ2cDlfaWh0
OHg4XzY0X2FkZF9tc2EsIDAsIFZQWF9CSVRTXzgpLApAQCAtNzYwLDkgKzc2Myw5IEBAIElOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX01TQSAmJiAhQ09ORklHX1ZQOV9I
SUdIQklUREVQVEggJiYgIUNPTkZJR19FTVVMQVRFX0hBUkRXQVJFCiAKICNpZiBIQVZFX1ZTWCAm
JiAhQ09ORklHX1ZQOV9ISUdIQklUREVQVEggJiYgIUNPTkZJR19FTVVMQVRFX0hBUkRXQVJFCi1J
TlNUQU5USUFURV9URVNUX0NBU0VfUChWU1gsIEZ3ZFRyYW5zOHg4RENULAotICAgICAgICAgICAg
ICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2ZkY3Q4eDhfYywK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZw
eF9pZGN0OHg4XzY0X2FkZF92c3gsIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFZQWF9CSVRTXzgpKSk7CitJTlNUQU5USUFURV9URVNUX1NV
SVRFX1AoVlNYLCBGd2RUcmFuczh4OERDVCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRl
c3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfZmRjdDh4OF9jLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9pZGN0OHg4XzY0X2Fk
ZF92c3gsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAwLCBWUFhfQklUU184KSkpOwogI2VuZGlmICAvLyBIQVZFX1ZTWCAmJiAhQ09ORklHX1ZQ
OV9ISUdIQklUREVQVEggJiYgIUNPTkZJR19FTVVMQVRFX0hBUkRXQVJFCiB9ICAvLyBuYW1lc3Bh
Y2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9mcmFtZV9zaXplX3Rlc3RzLmNjIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L2ZyYW1lX3NpemVfdGVzdHMuY2MKaW5kZXggOTM5N2FmMmIyZGMyZDlhOTlh
MzUzOGUyMmE4MDNlNjg2ZmQ3ODgwYy4uZDg1YzE5M2UwYjZlMzJiN2FmYjBiZTc2NGNmMmU3ZGQ4
ZDExNTIyNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2ZyYW1lX3NpemVfdGVzdHMuY2MK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90ZXN0L2ZyYW1lX3NpemVfdGVzdHMuY2MKQEAgLTY5LDcgKzY5LDcg
QEAgY2xhc3MgRW5jb2RlcldpdGhFeHBlY3RlZEVycm9yIDogcHVibGljIDo6bGlidnB4X3Rlc3Q6
OkVuY29kZXIgewogI2lmIENPTkZJR19WUDlfRU5DT0RFUgogICAgIHJldHVybiAmdnB4X2NvZGVj
X3ZwOV9jeF9hbGdvOwogI2Vsc2UKLSAgICByZXR1cm4gTlVMTDsKKyAgICByZXR1cm4gbnVsbHB0
cjsKICNlbmRpZgogICB9CiB9OwpAQCAtMTMwLDcgKzEzMCw3IEBAIGNsYXNzIFZQOUZyYW1lU2l6
ZVRlc3RzTGFyZ2UgOiBwdWJsaWMgOjpsaWJ2cHhfdGVzdDo6RW5jb2RlclRlc3QsCiAgICAgICBl
bmNvZGVyLT5Jbml0RW5jb2Rlcih2aWRlbyk7CiAgICAgICBBU1NFUlRfRkFMU0UoOjp0ZXN0aW5n
OjpUZXN0OjpIYXNGYXRhbEZhaWx1cmUoKSk7CiAgICAgICBmb3IgKGJvb2wgYWdhaW4gPSB0cnVl
OyBhZ2FpbjsgdmlkZW8tPk5leHQoKSkgewotICAgICAgICBhZ2FpbiA9ICh2aWRlby0+aW1nKCkg
IT0gTlVMTCk7CisgICAgICAgIGFnYWluID0gKHZpZGVvLT5pbWcoKSAhPSBudWxscHRyKTsKIAog
ICAgICAgICBQcmVFbmNvZGVGcmFtZUhvb2sodmlkZW8sIGVuY29kZXIuZ2V0KCkpOwogICAgICAg
ICBlbmNvZGVyLT5FbmNvZGVGcmFtZSh2aWRlbywgZnJhbWVfZmxhZ3NfLCBleHBlY3RlZF9lcnIp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2hhZGFtYXJkX3Rlc3QuY2MgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rlc3QvaGFkYW1hcmRfdGVzdC5jYwppbmRleCA2YjdhYWUzZDUwZTkzMmQzOTJjMWMzMTAx
YTYyNDhjZDQ2ZTVjZWJhLi5kYWI5NDVhNTYxZmE2OWM3ZGE5ODhlMjMyNmMzNjllYjQ2NTQxZTgx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvaGFkYW1hcmRfdGVzdC5jYworKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3Rlc3QvaGFkYW1hcmRfdGVzdC5jYwpAQCAtMjMzLDE0ICsyMzMsMTQgQEAgVEVTVF9Q
KEhhZGFtYXJkTG93YmRUZXN0LCBESVNBQkxFRF9TcGVlZCkgewogICBTcGVlZFRlc3QoMTAwMDAw
MDApOwogfQogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJ
VEVfUCgKICAgICBDLCBIYWRhbWFyZExvd2JkVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhI
YWRhbWFyZEZ1bmNXaXRoU2l6ZSgmdnB4X2hhZGFtYXJkXzh4OF9jLCA4KSwKICAgICAgICAgICAg
ICAgICAgICAgICBIYWRhbWFyZEZ1bmNXaXRoU2l6ZSgmdnB4X2hhZGFtYXJkXzE2eDE2X2MsIDE2
KSwKICAgICAgICAgICAgICAgICAgICAgICBIYWRhbWFyZEZ1bmNXaXRoU2l6ZSgmdnB4X2hhZGFt
YXJkXzMyeDMyX2MsIDMyKSkpOwogCiAjaWYgSEFWRV9TU0UyCi1JTlNUQU5USUFURV9URVNUX0NB
U0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBTU0UyLCBIYWRhbWFyZExvd2Jk
VGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhIYWRhbWFyZEZ1bmNXaXRoU2l6ZSgmdnB4X2hh
ZGFtYXJkXzh4OF9zc2UyLCA4KSwKICAgICAgICAgICAgICAgICAgICAgICBIYWRhbWFyZEZ1bmNX
aXRoU2l6ZSgmdnB4X2hhZGFtYXJkXzE2eDE2X3NzZTIsIDE2KSwKQEAgLTI0OCwyMCArMjQ4LDIw
IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX1NTRTIKIAogI2lm
IEhBVkVfQVZYMgotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NV
SVRFX1AoCiAgICAgQVZYMiwgSGFkYW1hcmRMb3diZFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXMoSGFkYW1hcmRGdW5jV2l0aFNpemUoJnZweF9oYWRhbWFyZF8xNngxNl9hdngyLCAxNiksCiAg
ICAgICAgICAgICAgICAgICAgICAgSGFkYW1hcmRGdW5jV2l0aFNpemUoJnZweF9oYWRhbWFyZF8z
MngzMl9hdngyLCAzMikpKTsKICNlbmRpZiAgLy8gSEFWRV9BVlgyCiAKICNpZiBIQVZFX1NTU0Uz
ICYmIFZQWF9BUkNIX1g4Nl82NAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFU
RV9URVNUX1NVSVRFX1AoCiAgICAgU1NTRTMsIEhhZGFtYXJkTG93YmRUZXN0LAogICAgIDo6dGVz
dGluZzo6VmFsdWVzKEhhZGFtYXJkRnVuY1dpdGhTaXplKCZ2cHhfaGFkYW1hcmRfOHg4X3Nzc2Uz
LCA4KSkpOwogI2VuZGlmICAvLyBIQVZFX1NTU0UzICYmIFZQWF9BUkNIX1g4Nl82NAogCiAjaWYg
SEFWRV9ORU9OCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJ
VEVfUCgKICAgICBORU9OLCBIYWRhbWFyZExvd2JkVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVl
cyhIYWRhbWFyZEZ1bmNXaXRoU2l6ZSgmdnB4X2hhZGFtYXJkXzh4OF9uZW9uLCA4KSwKICAgICAg
ICAgICAgICAgICAgICAgICBIYWRhbWFyZEZ1bmNXaXRoU2l6ZSgmdnB4X2hhZGFtYXJkXzE2eDE2
X25lb24sIDE2KSkpOwpAQCAtMjcxLDcgKzI3MSw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9Q
KAogLy8gaW4gcGxhY2UgYW5kIHR1cm4gb24gdGhlIHVuaXQgdGVzdC4KICNpZiAhQ09ORklHX1ZQ
OV9ISUdIQklUREVQVEgKICNpZiBIQVZFX01TQQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJ
TlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTVNBLCBIYWRhbWFyZExvd2JkVGVzdCwKICAg
ICA6OnRlc3Rpbmc6OlZhbHVlcyhIYWRhbWFyZEZ1bmNXaXRoU2l6ZSgmdnB4X2hhZGFtYXJkXzh4
OF9tc2EsIDgpLAogICAgICAgICAgICAgICAgICAgICAgIEhhZGFtYXJkRnVuY1dpdGhTaXplKCZ2
cHhfaGFkYW1hcmRfMTZ4MTZfbXNhLCAxNikpKTsKQEAgLTI3OSw3ICsyNzksNyBAQCBJTlNUQU5U
SUFURV9URVNUX0NBU0VfUCgKICNlbmRpZiAgLy8gIUNPTkZJR19WUDlfSElHSEJJVERFUFRICiAK
ICNpZiBIQVZFX1ZTWAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNU
X1NVSVRFX1AoCiAgICAgVlNYLCBIYWRhbWFyZExvd2JkVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZh
bHVlcyhIYWRhbWFyZEZ1bmNXaXRoU2l6ZSgmdnB4X2hhZGFtYXJkXzh4OF92c3gsIDgpLAogICAg
ICAgICAgICAgICAgICAgICAgIEhhZGFtYXJkRnVuY1dpdGhTaXplKCZ2cHhfaGFkYW1hcmRfMTZ4
MTZfdnN4LCAxNikpKTsKQEAgLTMwMSwxNCArMzAxLDE0IEBAIFRFU1RfUChIYWRhbWFyZEhpZ2hi
ZFRlc3QsIERJU0FCTEVEX1NwZWVkKSB7CiAgIFNwZWVkVGVzdCgxMDAwMDAwMCk7CiB9CiAKLUlO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEMs
IEhhZGFtYXJkSGlnaGJkVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhIYWRhbWFyZEZ1bmNX
aXRoU2l6ZSgmdnB4X2hpZ2hiZF9oYWRhbWFyZF84eDhfYywgOCksCiAgICAgICAgICAgICAgICAg
ICAgICAgSGFkYW1hcmRGdW5jV2l0aFNpemUoJnZweF9oaWdoYmRfaGFkYW1hcmRfMTZ4MTZfYywg
MTYpLAogICAgICAgICAgICAgICAgICAgICAgIEhhZGFtYXJkRnVuY1dpdGhTaXplKCZ2cHhfaGln
aGJkX2hhZGFtYXJkXzMyeDMyX2MsIDMyKSkpOwogCiAjaWYgSEFWRV9BVlgyCi1JTlNUQU5USUFU
RV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBBVlgyLCBIYWRh
bWFyZEhpZ2hiZFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoSGFkYW1hcmRGdW5jV2l0aFNp
emUoJnZweF9oaWdoYmRfaGFkYW1hcmRfOHg4X2F2eDIsIDgpLAogICAgICAgICAgICAgICAgICAg
ICAgIEhhZGFtYXJkRnVuY1dpdGhTaXplKCZ2cHhfaGlnaGJkX2hhZGFtYXJkXzE2eDE2X2F2eDIs
IDE2KSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9pZGN0X3Rlc3QuY2MgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rlc3QvaWRjdF90ZXN0LmNjCmluZGV4IDM1NjRjMGJkNWQxZGRlZTliNjQ4MjUwZjU1NTUy
MGE3NDJhNjQzNjkuLjFiOTUzMmUxYzE0N2U5MjM0ZjE2OTdkZjA1NzEzMzMzZDdiMmVhMWUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9pZGN0X3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90
ZXN0L2lkY3RfdGVzdC5jYwpAQCAtMzEsMTMgKzMxLDEzIEBAIGNsYXNzIElEQ1RUZXN0IDogcHVi
bGljIDo6dGVzdGluZzo6VGVzdFdpdGhQYXJhbTxJZGN0RnVuYz4gewogICAgIFVVVCA9IEdldFBh
cmFtKCk7CiAKICAgICBpbnB1dCA9IG5ldyBCdWZmZXI8aW50MTZfdD4oNCwgNCwgMCk7Ci0gICAg
QVNTRVJUX1RSVUUoaW5wdXQgIT0gTlVMTCk7CisgICAgQVNTRVJUX05FKGlucHV0LCBudWxscHRy
KTsKICAgICBBU1NFUlRfVFJVRShpbnB1dC0+SW5pdCgpKTsKICAgICBwcmVkaWN0ID0gbmV3IEJ1
ZmZlcjx1aW50OF90Pig0LCA0LCAzKTsKLSAgICBBU1NFUlRfVFJVRShwcmVkaWN0ICE9IE5VTEwp
OworICAgIEFTU0VSVF9ORShwcmVkaWN0LCBudWxscHRyKTsKICAgICBBU1NFUlRfVFJVRShwcmVk
aWN0LT5Jbml0KCkpOwogICAgIG91dHB1dCA9IG5ldyBCdWZmZXI8dWludDhfdD4oNCwgNCwgMyk7
Ci0gICAgQVNTRVJUX1RSVUUob3V0cHV0ICE9IE5VTEwpOworICAgIEFTU0VSVF9ORShvdXRwdXQs
IG51bGxwdHIpOwogICAgIEFTU0VSVF9UUlVFKG91dHB1dC0+SW5pdCgpKTsKICAgfQogCkBAIC03
Miw3ICs3Miw3IEBAIFRFU1RfUChJRENUVGVzdCwgVGVzdEFsbFplcm9zKSB7CiAKIFRFU1RfUChJ
RENUVGVzdCwgVGVzdEFsbE9uZXMpIHsKICAgaW5wdXQtPlNldCgwKTsKLSAgQVNTRVJUX1RSVUUo
aW5wdXQtPlRvcExlZnRQaXhlbCgpICE9IE5VTEwpOworICBBU1NFUlRfTkUoaW5wdXQtPlRvcExl
ZnRQaXhlbCgpLCBudWxscHRyKTsKICAgLy8gV2hlbiB0aGUgZmlyc3QgZWxlbWVudCBpcyAnNCcg
aXQgd2lsbCBmaWxsIHRoZSBvdXRwdXQgYnVmZmVyIHdpdGggJzEnLgogICBpbnB1dC0+VG9wTGVm
dFBpeGVsKClbMF0gPSA0OwogICBwcmVkaWN0LT5TZXQoMCk7CkBAIC05MCw3ICs5MCw3IEBAIFRF
U1RfUChJRENUVGVzdCwgVGVzdEFkZE9uZSkgewogICAvLyBTZXQgdGhlIHRyYW5zZm9ybSBvdXRw
dXQgdG8gJzEnIGFuZCBtYWtlIHN1cmUgaXQgZ2V0cyBhZGRlZCB0byB0aGUKICAgLy8gcHJlZGlj
dGlvbiBidWZmZXIuCiAgIGlucHV0LT5TZXQoMCk7Ci0gIEFTU0VSVF9UUlVFKGlucHV0LT5Ub3BM
ZWZ0UGl4ZWwoKSAhPSBOVUxMKTsKKyAgQVNTRVJUX05FKGlucHV0LT5Ub3BMZWZ0UGl4ZWwoKSwg
bnVsbHB0cik7CiAgIGlucHV0LT5Ub3BMZWZ0UGl4ZWwoKVswXSA9IDQ7CiAgIG91dHB1dC0+U2V0
KDApOwogCkBAIC0xNTUsMjUgKzE1NSwyNiBAQCBURVNUX1AoSURDVFRlc3QsIFRlc3RXaXRoRGF0
YSkgewogICBBU1NFUlRfVFJVRShvdXRwdXQtPkNoZWNrUGFkZGluZygpKTsKIH0KIAotSU5TVEFO
VElBVEVfVEVTVF9DQVNFX1AoQywgSURDVFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzKHZwOF9zaG9y
dF9pZGN0NHg0bGxtX2MpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDLCBJRENUVGVzdCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cDhfc2hvcnRfaWRj
dDR4NGxsbV9jKSk7CiAKICNpZiBIQVZFX05FT04KLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE5F
T04sIElEQ1RUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMo
dnA4X3Nob3J0X2lkY3Q0eDRsbG1fbmVvbikpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE5F
T04sIElEQ1RUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVz
KHZwOF9zaG9ydF9pZGN0NHg0bGxtX25lb24pKTsKICNlbmRpZiAgLy8gSEFWRV9ORU9OCiAKICNp
ZiBIQVZFX01NWAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTU1YLCBJRENUVGVzdCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZwOF9zaG9ydF9pZGN0NHg0bGxt
X21teCkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE1NWCwgSURDVFRlc3QsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnA4X3Nob3J0X2lkY3Q0eDRsbG1f
bW14KSk7CiAjZW5kaWYgIC8vIEhBVkVfTU1YCiAKICNpZiBIQVZFX01TQQotSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoTVNBLCBJRENUVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVz
dGluZzo6VmFsdWVzKHZwOF9zaG9ydF9pZGN0NHg0bGxtX21zYSkpOworSU5TVEFOVElBVEVfVEVT
VF9TVUlURV9QKE1TQSwgSURDVFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXModnA4X3Nob3J0X2lkY3Q0eDRsbG1fbXNhKSk7CiAjZW5kaWYgIC8vIEhBVkVf
TVNBCiAKICNpZiBIQVZFX01NSQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTU1JLCBJRENUVGVz
dCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZwOF9zaG9ydF9p
ZGN0NHg0bGxtX21taSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE1NSSwgSURDVFRlc3Qs
CisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnA4X3Nob3J0X2lk
Y3Q0eDRsbG1fbW1pKSk7CiAjZW5kaWYgIC8vIEhBVkVfTU1JCiB9ICAvLyBuYW1lc3BhY2UKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9pbnZhbGlkX2ZpbGVfdGVzdC5jYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC9pbnZhbGlkX2ZpbGVfdGVzdC5jYwppbmRleCA4YjFiYzU2YzliYjkxMzdhNDIyYzkz
MTc4YTM1ODlmNDUxMzI2MTk3Li43NjJkNTg1ZjU5OWYzZThhOWUxODFiNDA3ODFjMGEzYjE3MDNj
MTZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvaW52YWxpZF9maWxlX3Rlc3QuY2MKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L2ludmFsaWRfZmlsZV90ZXN0LmNjCkBAIC0zOCwxNSArMzgsMTUg
QEAgc3RkOjpvc3RyZWFtICZvcGVyYXRvcjw8KHN0ZDo6b3N0cmVhbSAmb3MsIGNvbnN0IERlY29k
ZVBhcmFtICZkcCkgewogY2xhc3MgSW52YWxpZEZpbGVUZXN0IDogcHVibGljIDo6bGlidnB4X3Rl
c3Q6OkRlY29kZXJUZXN0LAogICAgICAgICAgICAgICAgICAgICAgICAgcHVibGljIDo6bGlidnB4
X3Rlc3Q6OkNvZGVjVGVzdFdpdGhQYXJhbTxEZWNvZGVQYXJhbT4gewogIHByb3RlY3RlZDoKLSAg
SW52YWxpZEZpbGVUZXN0KCkgOiBEZWNvZGVyVGVzdChHRVRfUEFSQU0oMCkpLCByZXNfZmlsZV8o
TlVMTCkge30KKyAgSW52YWxpZEZpbGVUZXN0KCkgOiBEZWNvZGVyVGVzdChHRVRfUEFSQU0oMCkp
LCByZXNfZmlsZV8obnVsbHB0cikge30KIAogICB2aXJ0dWFsIH5JbnZhbGlkRmlsZVRlc3QoKSB7
Ci0gICAgaWYgKHJlc19maWxlXyAhPSBOVUxMKSBmY2xvc2UocmVzX2ZpbGVfKTsKKyAgICBpZiAo
cmVzX2ZpbGVfICE9IG51bGxwdHIpIGZjbG9zZShyZXNfZmlsZV8pOwogICB9CiAKICAgdm9pZCBP
cGVuUmVzRmlsZShjb25zdCBzdGQ6OnN0cmluZyAmcmVzX2ZpbGVfbmFtZV8pIHsKICAgICByZXNf
ZmlsZV8gPSBsaWJ2cHhfdGVzdDo6T3BlblRlc3REYXRhRmlsZShyZXNfZmlsZV9uYW1lXyk7Ci0g
ICAgQVNTRVJUX1RSVUUocmVzX2ZpbGVfICE9IE5VTEwpCisgICAgQVNTRVJUX05FKHJlc19maWxl
XywgbnVsbHB0cikKICAgICAgICAgPDwgIlJlc3VsdCBmaWxlIG9wZW4gZmFpbGVkLiBGaWxlbmFt
ZTogIiA8PCByZXNfZmlsZV9uYW1lXzsKICAgfQogCkBAIC01NCw3ICs1NCw3IEBAIGNsYXNzIElu
dmFsaWRGaWxlVGVzdCA6IHB1YmxpYyA6OmxpYnZweF90ZXN0OjpEZWNvZGVyVGVzdCwKICAgICAg
IGNvbnN0IHZweF9jb2RlY19lcnJfdCByZXNfZGVjLAogICAgICAgY29uc3QgbGlidnB4X3Rlc3Q6
OkNvbXByZXNzZWRWaWRlb1NvdXJjZSAmdmlkZW8sCiAgICAgICBsaWJ2cHhfdGVzdDo6RGVjb2Rl
ciAqZGVjb2RlcikgewotICAgIEVYUEVDVF9UUlVFKHJlc19maWxlXyAhPSBOVUxMKTsKKyAgICBF
WFBFQ1RfTkUocmVzX2ZpbGVfLCBudWxscHRyKTsKICAgICBpbnQgZXhwZWN0ZWRfcmVzX2RlYzsK
IAogICAgIC8vIFJlYWQgaW50ZWdlciByZXN1bHQuCkBAIC0xMDIsNyArMTAyLDcgQEAgY2xhc3Mg
SW52YWxpZEZpbGVUZXN0IDogcHVibGljIDo6bGlidnB4X3Rlc3Q6OkRlY29kZXJUZXN0LAogICAg
ICAgcmV0dXJuOwogI2VuZGlmCiAgICAgfQotICAgIEFTU0VSVF9UUlVFKHZpZGVvLmdldCgpICE9
IE5VTEwpOworICAgIEFTU0VSVF9ORSh2aWRlby5nZXQoKSwgbnVsbHB0cik7CiAgICAgdmlkZW8t
PkluaXQoKTsKIAogICAgIC8vIENvbnN0cnVjdCByZXN1bHQgZmlsZSBuYW1lLiBUaGUgZmlsZSBo
b2xkcyBhIGxpc3Qgb2YgZXhwZWN0ZWQgaW50ZWdlcgpAQCAtMTI5LDggKzEyOSw4IEBAIGNvbnN0
IERlY29kZVBhcmFtIGtWUDhJbnZhbGlkRmlsZVRlc3RzW10gPSB7CiAgIHsgMSwgImludmFsaWQt
dnA4MC0wMC1jb21wcmVoZW5zaXZlLXMxNzY2MV9yMDEtMDVfYjYtLml2ZiIgfSwKIH07CiAKLVZQ
OF9JTlNUQU5USUFURV9URVNUX0NBU0UoSW52YWxpZEZpbGVUZXN0LAotICAgICAgICAgICAgICAg
ICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtWUDhJbnZhbGlkRmlsZVRlc3RzKSk7CitW
UDhfSU5TVEFOVElBVEVfVEVTVF9TVUlURShJbnZhbGlkRmlsZVRlc3QsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtWUDhJbnZhbGlkRmlsZVRlc3RzKSk7
CiAjZW5kaWYgIC8vIENPTkZJR19WUDhfREVDT0RFUgogCiAjaWYgQ09ORklHX1ZQOV9ERUNPREVS
CkBAIC0xNjMsOCArMTYzLDggQEAgY29uc3QgRGVjb2RlUGFyYW0ga1ZQOUludmFsaWRGaWxlVGVz
dHNbXSA9IHsKICAgeyAxLCAiaW52YWxpZC1jcmJ1Zy02NjcwNDQud2VibSIgfSwKIH07CiAKLVZQ
OV9JTlNUQU5USUFURV9URVNUX0NBU0UoSW52YWxpZEZpbGVUZXN0LAotICAgICAgICAgICAgICAg
ICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtWUDlJbnZhbGlkRmlsZVRlc3RzKSk7CitW
UDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURShJbnZhbGlkRmlsZVRlc3QsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtWUDlJbnZhbGlkRmlsZVRlc3RzKSk7
CiAjZW5kaWYgIC8vIENPTkZJR19WUDlfREVDT0RFUgogCiAvLyBUaGlzIGNsYXNzIHdpbGwgaW5j
bHVkZSB0ZXN0IHZlY3RvcnMgdGhhdCBhcmUgZXhwZWN0ZWQgdG8gZmFpbApAQCAtMTg0LDggKzE4
NCw4IEBAIGNvbnN0IERlY29kZVBhcmFtIGtWUDhJbnZhbGlkUGVla1Rlc3RzW10gPSB7CiAgIHsg
MSwgImludmFsaWQtdnA4MC0wMC1jb21wcmVoZW5zaXZlLTAxOC5pdmYuMmtmXzB4Ni5pdmYiIH0s
CiB9OwogCi1WUDhfSU5TVEFOVElBVEVfVEVTVF9DQVNFKEludmFsaWRGaWxlSW52YWxpZFBlZWtU
ZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtWUDhJ
bnZhbGlkUGVla1Rlc3RzKSk7CitWUDhfSU5TVEFOVElBVEVfVEVTVF9TVUlURShJbnZhbGlkRmls
ZUludmFsaWRQZWVrVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6
VmFsdWVzSW4oa1ZQOEludmFsaWRQZWVrVGVzdHMpKTsKICNlbmRpZiAgLy8gQ09ORklHX1ZQOF9E
RUNPREVSCiAKICNpZiBDT05GSUdfVlA5X0RFQ09ERVIKQEAgLTE5Myw4ICsxOTMsOSBAQCBjb25z
dCBEZWNvZGVQYXJhbSBrVlA5SW52YWxpZEZpbGVJbnZhbGlkUGVla1Rlc3RzW10gPSB7CiAgIHsg
MSwgImludmFsaWQtdnA5MC0wMS12My53ZWJtIiB9LAogfTsKIAotVlA5X0lOU1RBTlRJQVRFX1RF
U1RfQ0FTRShJbnZhbGlkRmlsZUludmFsaWRQZWVrVGVzdCwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrVlA5SW52YWxpZEZpbGVJbnZhbGlkUGVla1Rlc3Rz
KSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURSgKKyAgICBJbnZhbGlkRmlsZUludmFsaWRQ
ZWVrVGVzdCwKKyAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtWUDlJbnZhbGlkRmlsZUludmFsaWRQ
ZWVrVGVzdHMpKTsKIAogY29uc3QgRGVjb2RlUGFyYW0ga011bHRpVGhyZWFkZWRWUDlJbnZhbGlk
RmlsZVRlc3RzW10gPSB7CiAgIHsgNCwgImludmFsaWQtdnA5MC0yLTA4LXRpbGVfMXg0X2ZyYW1l
X3BhcmFsbGVsX2FsbF9rZXkud2VibSIgfSwKQEAgLTIxMCw3ICsyMTEsNyBAQCBjb25zdCBEZWNv
ZGVQYXJhbSBrTXVsdGlUaHJlYWRlZFZQOUludmFsaWRGaWxlVGVzdHNbXSA9IHsKICAgeyA0LCAi
aW52YWxpZC1jcmJ1Zy0xNTYyLml2ZiIgfSwKIH07CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9Q
KAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFZQOU11bHRpVGhyZWFkZWQsIEludmFs
aWRGaWxlVGVzdCwKICAgICA6OnRlc3Rpbmc6OkNvbWJpbmUoCiAgICAgICAgIDo6dGVzdGluZzo6
VmFsdWVzKApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2tleWZyYW1lX3Rlc3QuY2MgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3Rlc3Qva2V5ZnJhbWVfdGVzdC5jYwppbmRleCA1ODJkNDQ4MTY4ZDFkYmRiNWJi
MGUxOTMxYTcyMGEyMmUxYjAyZDg4Li5hMTNkZWM5Y2UyZGM3ZDEwYjQ2ZjgxNzg0YWVjMzMwMWZj
OGE3ZmRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qva2V5ZnJhbWVfdGVzdC5jYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rlc3Qva2V5ZnJhbWVfdGVzdC5jYwpAQCAtMTQ1LDUgKzE0NSw1IEBAIFRF
U1RfUChLZXlmcmFtZVRlc3QsIFRlc3RBdXRvS2V5ZnJhbWUpIHsKICAgfQogfQogCi1WUDhfSU5T
VEFOVElBVEVfVEVTVF9DQVNFKEtleWZyYW1lVGVzdCwgQUxMX1RFU1RfTU9ERVMpOworVlA4X0lO
U1RBTlRJQVRFX1RFU1RfU1VJVEUoS2V5ZnJhbWVUZXN0LCBBTExfVEVTVF9NT0RFUyk7CiB9ICAv
LyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9sZXZlbF90ZXN0LmNjIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90ZXN0L2xldmVsX3Rlc3QuY2MKaW5kZXggMjY5MzVhODFiMDI0Y2M5YTg2OWRl
M2FiNTdkMWZhNmEyNTM5MWEyMy4uMDM4ZDc1ZjQ0ZjhhNGJhOWNhMTMyYzg2MmY4ZmY0MWRhODZm
YjEyYiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2xldmVsX3Rlc3QuY2MKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L2xldmVsX3Rlc3QuY2MKQEAgLTE0MCw4ICsxNDAsOCBAQCBURVNUX1AoTGV2
ZWxUZXN0LCBUZXN0VGFyZ2V0TGV2ZWxBcGkpIHsKICAgRVhQRUNUX0VRKFZQWF9DT0RFQ19PSywg
dnB4X2NvZGVjX2Rlc3Ryb3koJmVuYykpOwogfQogCi1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNF
KExldmVsVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMo
OjpsaWJ2cHhfdGVzdDo6a1R3b1Bhc3NHb29kLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA6OmxpYnZweF90ZXN0OjprT25lUGFzc0dvb2QpLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDAsIDkpKTsKK1ZQOV9JTlNUQU5USUFU
RV9URVNUX1NVSVRFKExldmVsVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVz
dGluZzo6VmFsdWVzKDo6bGlidnB4X3Rlc3Q6OmtUd29QYXNzR29vZCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6bGlidnB4X3Rlc3Q6OmtPbmVQYXNzR29v
ZCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDAsIDkpKTsK
IH0gIC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L2xwZl90ZXN0LmNj
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L2xwZl90ZXN0LmNjCmluZGV4IDlkYjExODFjNmM2MTBjY2ZhMjRm
YWQ0ZDIxOTc4M2MwYjc0YmQ5NTguLjYyYzZmMzBhMDcwMzlmZmMxNzdkNDAzZmVjZGQ3NDVjZDJj
MDkzMjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9scGZfdGVzdC5jYworKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3Rlc3QvbHBmX3Rlc3QuY2MKQEAgLTE0NSw3ICsxNDUsMTAgQEAgY2xhc3MgTG9vcDhU
ZXN0NlBhcmFtIDogcHVibGljIDo6dGVzdGluZzo6VGVzdFdpdGhQYXJhbTxsb29wOF9wYXJhbV90
PiB7CiAgIGxvb3Bfb3BfdCBsb29wZmlsdGVyX29wXzsKICAgbG9vcF9vcF90IHJlZl9sb29wZmls
dGVyX29wXzsKIH07CitHVEVTVF9BTExPV19VTklOU1RBTlRJQVRFRF9QQVJBTUVURVJJWkVEX1RF
U1QoTG9vcDhUZXN0NlBhcmFtKTsKIAorI2lmIEhBVkVfTkVPTiB8fCBIQVZFX1NTRTIgfHwgXAor
ICAgIChIQVZFX0RTUFIyIHx8IEhBVkVfTVNBICYmICFDT05GSUdfVlA5X0hJR0hCSVRERVBUSCkK
IGNsYXNzIExvb3A4VGVzdDlQYXJhbSA6IHB1YmxpYyA6OnRlc3Rpbmc6OlRlc3RXaXRoUGFyYW08
ZHVhbGxvb3A4X3BhcmFtX3Q+IHsKICBwdWJsaWM6CiAgIHZpcnR1YWwgfkxvb3A4VGVzdDlQYXJh
bSgpIHt9CkBAIC0xNjQsNiArMTY3LDkgQEAgY2xhc3MgTG9vcDhUZXN0OVBhcmFtIDogcHVibGlj
IDo6dGVzdGluZzo6VGVzdFdpdGhQYXJhbTxkdWFsbG9vcDhfcGFyYW1fdD4gewogICBkdWFsX2xv
b3Bfb3BfdCBsb29wZmlsdGVyX29wXzsKICAgZHVhbF9sb29wX29wX3QgcmVmX2xvb3BmaWx0ZXJf
b3BfOwogfTsKK0dURVNUX0FMTE9XX1VOSU5TVEFOVElBVEVEX1BBUkFNRVRFUklaRURfVEVTVChM
b29wOFRlc3Q5UGFyYW0pOworI2VuZGlmICAvLyBIQVZFX05FT04gfHwgSEFWRV9TU0UyIHx8IChI
QVZFX0RTUFIyIHx8IEhBVkVfTVNBICYmCisgICAgICAgIC8vICghQ09ORklHX1ZQOV9ISUdIQklU
REVQVEgpKQogCiBURVNUX1AoTG9vcDhUZXN0NlBhcmFtLCBPcGVyYXRpb25DaGVjaykgewogICBB
Q01SYW5kb20gcm5kKEFDTVJhbmRvbTo6RGV0ZXJtaW5pc3RpY1NlZWQoKSk7CkBAIC0yNzUsNiAr
MjgxLDggQEAgVEVTVF9QKExvb3A4VGVzdDZQYXJhbSwgVmFsdWVDaGVjaykgewogICAgICAgPDwg
IkZpcnN0IGZhaWxlZCBhdCB0ZXN0IGNhc2UgIiA8PCBmaXJzdF9mYWlsdXJlOwogfQogCisjaWYg
SEFWRV9ORU9OIHx8IEhBVkVfU1NFMiB8fCBcCisgICAgKEhBVkVfRFNQUjIgfHwgSEFWRV9NU0Eg
JiYgKCFDT05GSUdfVlA5X0hJR0hCSVRERVBUSCkpCiBURVNUX1AoTG9vcDhUZXN0OVBhcmFtLCBP
cGVyYXRpb25DaGVjaykgewogICBBQ01SYW5kb20gcm5kKEFDTVJhbmRvbTo6RGV0ZXJtaW5pc3Rp
Y1NlZWQoKSk7CiAgIGNvbnN0IGludCBjb3VudF90ZXN0X2Jsb2NrID0gbnVtYmVyX29mX2l0ZXJh
dGlvbnM7CkBAIC00MDIsMTIgKzQxMCwxNCBAQCBURVNUX1AoTG9vcDhUZXN0OVBhcmFtLCBWYWx1
ZUNoZWNrKSB7CiAgICAgICAgICAibG9vcGZpbHRlciBvdXRwdXQuICIKICAgICAgIDw8ICJGaXJz
dCBmYWlsZWQgYXQgdGVzdCBjYXNlICIgPDwgZmlyc3RfZmFpbHVyZTsKIH0KKyNlbmRpZiAgLy8g
SEFWRV9ORU9OIHx8IEhBVkVfU1NFMiB8fCAoSEFWRV9EU1BSMiB8fCBIQVZFX01TQSAmJgorICAg
ICAgICAvLyAoIUNPTkZJR19WUDlfSElHSEJJVERFUFRIKSkKIAogdXNpbmcgc3RkOjptYWtlX3R1
cGxlOwogCiAjaWYgSEFWRV9TU0UyCiAjaWYgQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKLUlOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTRTIs
IExvb3A4VGVzdDZQYXJhbSwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhf
aGlnaGJkX2xwZl9ob3Jpem9udGFsXzRfc3NlMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICZ2cHhfaGlnaGJkX2xwZl9ob3Jpem9udGFsXzRfYywgOCksCkBAIC00NTgsNyArNDY4
LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAgICAgICAgICAgICAgICAgICAgICAgbWFr
ZV90dXBsZSgmdnB4X2hpZ2hiZF9scGZfdmVydGljYWxfMTZfZHVhbF9zc2UyLAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9oaWdoYmRfbHBmX3ZlcnRpY2FsXzE2X2R1YWxf
YywgMTIpKSk7CiAjZWxzZQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9U
RVNUX1NVSVRFX1AoCiAgICAgU1NFMiwgTG9vcDhUZXN0NlBhcmFtLAogICAgIDo6dGVzdGluZzo6
VmFsdWVzKAogICAgICAgICBtYWtlX3R1cGxlKCZ2cHhfbHBmX2hvcml6b250YWxfNF9zc2UyLCAm
dnB4X2xwZl9ob3Jpem9udGFsXzRfYywgOCksCkBAIC00NzUsNyArNDg1LDcgQEAgSU5TVEFOVElB
VEVfVEVTVF9DQVNFX1AoCiAjZW5kaWYKIAogI2lmIEhBVkVfQVZYMiAmJiAoIUNPTkZJR19WUDlf
SElHSEJJVERFUFRIKQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNU
X1NVSVRFX1AoCiAgICAgQVZYMiwgTG9vcDhUZXN0NlBhcmFtLAogICAgIDo6dGVzdGluZzo6VmFs
dWVzKG1ha2VfdHVwbGUoJnZweF9scGZfaG9yaXpvbnRhbF8xNl9hdngyLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgJnZweF9scGZfaG9yaXpvbnRhbF8xNl9jLCA4KSwKQEAgLTQ4
NSw3ICs0OTUsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKIAogI2lmIEhBVkVfU1NFMgog
I2lmIENPTkZJR19WUDlfSElHSEJJVERFUFRICi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lO
U1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBTU0UyLCBMb29wOFRlc3Q5UGFyYW0sCiAgICAg
Ojp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X2hpZ2hiZF9scGZfaG9yaXpvbnRhbF80
X2R1YWxfc3NlMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfaGlnaGJk
X2xwZl9ob3Jpem9udGFsXzRfZHVhbF9jLCA4KSwKQEAgLTUxMiw3ICs1MjIsNyBAQCBJTlNUQU5U
SUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKCZ2cHhf
aGlnaGJkX2xwZl92ZXJ0aWNhbF84X2R1YWxfc3NlMiwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICZ2cHhfaGlnaGJkX2xwZl92ZXJ0aWNhbF84X2R1YWxfYywgMTIpKSk7CiAjZWxz
ZQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAg
ICAgU1NFMiwgTG9vcDhUZXN0OVBhcmFtLAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVw
bGUoJnZweF9scGZfaG9yaXpvbnRhbF80X2R1YWxfc3NlMiwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICZ2cHhfbHBmX2hvcml6b250YWxfNF9kdWFsX2MsIDgpLApAQCAtNTI3LDcg
KzUzNyw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogCiAjaWYgSEFWRV9ORU9OCiAjaWYg
Q09ORklHX1ZQOV9ISUdIQklUREVQVEgKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QKAogICAgIE5FT04sIExvb3A4VGVzdDZQYXJhbSwKICAgICA6OnRl
c3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfaGlnaGJkX2xwZl9ob3Jpem9udGFsXzRfbmVv
biwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfaGlnaGJkX2xwZl9ob3Jp
em9udGFsXzRfYywgOCksCkBAIC01NzcsNyArNTg3LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNF
X1AoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2hpZ2hiZF9scGZfdmVy
dGljYWxfMTZfZHVhbF9jLCAxMCksCiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSgm
dnB4X2hpZ2hiZF9scGZfdmVydGljYWxfMTZfZHVhbF9uZW9uLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgJnZweF9oaWdoYmRfbHBmX3ZlcnRpY2FsXzE2X2R1YWxfYywgMTIpKSk7
Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAg
ICBORU9OLCBMb29wOFRlc3Q5UGFyYW0sCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBs
ZSgmdnB4X2hpZ2hiZF9scGZfaG9yaXpvbnRhbF80X2R1YWxfbmVvbiwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICZ2cHhfaGlnaGJkX2xwZl9ob3Jpem9udGFsXzRfZHVhbF9jLCA4
KSwKQEAgLTYwNCw3ICs2MTQsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAg
ICAgICAgICAgICAgICBtYWtlX3R1cGxlKCZ2cHhfaGlnaGJkX2xwZl92ZXJ0aWNhbF84X2R1YWxf
bmVvbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfaGlnaGJkX2xwZl92
ZXJ0aWNhbF84X2R1YWxfYywgMTIpKSk7CiAjZWxzZQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1Ao
CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTkVPTiwgTG9vcDhUZXN0NlBhcmFtLAog
ICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBtYWtlX3R1cGxlKCZ2cHhfbHBmX2hvcml6
b250YWxfMTZfbmVvbiwgJnZweF9scGZfaG9yaXpvbnRhbF8xNl9jLCA4KSwKQEAgLTYxNyw3ICs2
MjcsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgbWFrZV90dXBsZSgmdnB4
X2xwZl92ZXJ0aWNhbF84X25lb24sICZ2cHhfbHBmX3ZlcnRpY2FsXzhfYywgOCksCiAgICAgICAg
IG1ha2VfdHVwbGUoJnZweF9scGZfaG9yaXpvbnRhbF80X25lb24sICZ2cHhfbHBmX2hvcml6b250
YWxfNF9jLCA4KSwKICAgICAgICAgbWFrZV90dXBsZSgmdnB4X2xwZl92ZXJ0aWNhbF80X25lb24s
ICZ2cHhfbHBmX3ZlcnRpY2FsXzRfYywgOCkpKTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE5FT04sIExvb3A4VGVzdDlQYXJhbSwKICAg
ICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfbHBmX2hvcml6b250YWxfOF9kdWFs
X25lb24sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2xwZl9ob3Jpem9u
dGFsXzhfZHVhbF9jLCA4KSwKQEAgLTYzMSw3ICs2NDEsNyBAQCBJTlNUQU5USUFURV9URVNUX0NB
U0VfUCgKICNlbmRpZiAgLy8gSEFWRV9ORU9OCiAKICNpZiBIQVZFX0RTUFIyICYmICFDT05GSUdf
VlA5X0hJR0hCSVRERVBUSAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9U
RVNUX1NVSVRFX1AoCiAgICAgRFNQUjIsIExvb3A4VGVzdDZQYXJhbSwKICAgICA6OnRlc3Rpbmc6
OlZhbHVlcygKICAgICAgICAgbWFrZV90dXBsZSgmdnB4X2xwZl9ob3Jpem9udGFsXzRfZHNwcjIs
ICZ2cHhfbHBmX2hvcml6b250YWxfNF9jLCA4KSwKQEAgLTY0NSw3ICs2NTUsNyBAQCBJTlNUQU5U
SUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgbWFrZV90dXBsZSgmdnB4X2xwZl92ZXJ0aWNhbF8x
Nl9kdWFsX2RzcHIyLCAmdnB4X2xwZl92ZXJ0aWNhbF8xNl9kdWFsX2MsCiAgICAgICAgICAgICAg
ICAgICAgOCkpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNU
X1NVSVRFX1AoCiAgICAgRFNQUjIsIExvb3A4VGVzdDlQYXJhbSwKICAgICA6OnRlc3Rpbmc6OlZh
bHVlcyhtYWtlX3R1cGxlKCZ2cHhfbHBmX2hvcml6b250YWxfNF9kdWFsX2RzcHIyLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9scGZfaG9yaXpvbnRhbF80X2R1YWxfYywg
OCksCkBAIC02NTgsNyArNjY4LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAjZW5kaWYg
IC8vIEhBVkVfRFNQUjIgJiYgIUNPTkZJR19WUDlfSElHSEJJVERFUFRICiAKICNpZiBIQVZFX01T
QSAmJiAoIUNPTkZJR19WUDlfSElHSEJJVERFUFRIKQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1Ao
CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTVNBLCBMb29wOFRlc3Q2UGFyYW0sCiAg
ICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIG1ha2VfdHVwbGUoJnZweF9scGZfaG9yaXpv
bnRhbF80X21zYSwgJnZweF9scGZfaG9yaXpvbnRhbF80X2MsIDgpLApAQCAtNjcwLDcgKzY4MCw3
IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICBtYWtlX3R1cGxlKCZ2cHhfbHBm
X3ZlcnRpY2FsXzhfbXNhLCAmdnB4X2xwZl92ZXJ0aWNhbF84X2MsIDgpLAogICAgICAgICBtYWtl
X3R1cGxlKCZ2cHhfbHBmX3ZlcnRpY2FsXzE2X21zYSwgJnZweF9scGZfdmVydGljYWxfMTZfYywg
OCkpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRF
X1AoCiAgICAgTVNBLCBMb29wOFRlc3Q5UGFyYW0sCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFr
ZV90dXBsZSgmdnB4X2xwZl9ob3Jpem9udGFsXzRfZHVhbF9tc2EsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAmdnB4X2xwZl9ob3Jpem9udGFsXzRfZHVhbF9jLCA4KSwKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9taW5tYXhfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9t
aW5tYXhfdGVzdC5jYwppbmRleCA5YzExOTExNmE4ZTJiMTg2NDJiNjkyZThhMjJmOTI5OGFhMDBi
NzNkLi4xMjMyN2JjMTg4YWYzY2FkODU1YmM2MzY1OWVlMGZhYTQ1NDI5MmRiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rlc3QvbWlubWF4X3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L21p
bm1heF90ZXN0LmNjCkBAIC0xMTUsMjEgKzExNSwyMSBAQCBURVNUX1AoTWluTWF4VGVzdCwgQ29t
cGFyZVJlZmVyZW5jZUFuZFZhcnlTdHJpZGUpIHsKICAgfQogfQogCi1JTlNUQU5USUFURV9URVNU
X0NBU0VfUChDLCBNaW5NYXhUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlcygmdnB4X21pbm1heF84eDhf
YykpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKEMsIE1pbk1heFRlc3QsIDo6dGVzdGluZzo6
VmFsdWVzKCZ2cHhfbWlubWF4Xzh4OF9jKSk7CiAKICNpZiBIQVZFX1NTRTIKLUlOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKFNTRTIsIE1pbk1heFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6
OnRlc3Rpbmc6OlZhbHVlcygmdnB4X21pbm1heF84eDhfc3NlMikpOworSU5TVEFOVElBVEVfVEVT
VF9TVUlURV9QKFNTRTIsIE1pbk1heFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXMoJnZweF9taW5tYXhfOHg4X3NzZTIpKTsKICNlbmRpZgogCiAjaWYgSEFW
RV9ORU9OCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChORU9OLCBNaW5NYXhUZXN0LAotICAgICAg
ICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoJnZweF9taW5tYXhfOHg4X25lb24p
KTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChORU9OLCBNaW5NYXhUZXN0LAorICAgICAgICAg
ICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKCZ2cHhfbWlubWF4Xzh4OF9uZW9uKSk7
CiAjZW5kaWYKIAogI2lmIEhBVkVfTVNBCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChNU0EsIE1p
bk1heFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcygmdnB4
X21pbm1heF84eDhfbXNhKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoTVNBLCBNaW5NYXhU
ZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKCZ2cHhfbWlu
bWF4Xzh4OF9tc2EpKTsKICNlbmRpZgogCiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC9ub25fZ3JlZWR5X212X3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvbm9u
X2dyZWVkeV9tdl90ZXN0LmNjCmluZGV4IGM3ODMzMWIyODUyMTY1Y2JkYTY0ZTFmZjQxOGUwNWZh
MzliZGFmYzAuLjkyNzAyOWRlNDVjYmNkNmU3Mjg3YTBkODRjZDdjOWJiZTZkOTljNjUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9ub25fZ3JlZWR5X212X3Rlc3QuY2MKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC90ZXN0L25vbl9ncmVlZHlfbXZfdGVzdC5jYwpAQCAtMTI5LDExICsxMjksMTEgQEAgVEVT
VChub25fZ3JlZWR5X212LCBzbW9vdGhfbWYpIHsKICAgY29uc3QgY2hhciAqZ3JvdW5kX3RydXRo
X2ZpbGUgPQogICAgICAgIm5vbl9ncmVlZHlfbXZfdGVzdF9maWxlcy9ncm91bmRfdHJ1dGhfMTZ4
MTYudHh0IjsKICAgQkxPQ0tfU0laRSBic2l6ZSA9IEJMT0NLXzMyWDMyOwotICBNViAqc2VhcmNo
X21mID0gTlVMTDsKLSAgTVYgKnNtb290aF9tZiA9IE5VTEw7Ci0gIE1WICplc3RpbWF0aW9uID0g
TlVMTDsKLSAgTVYgKmdyb3VuZF90cnV0aCA9IE5VTEw7Ci0gIGludCgqbG9jYWxfdmFyKVtNRl9M
T0NBTF9TVFJVQ1RVUkVfU0laRV0gPSBOVUxMOworICBNViAqc2VhcmNoX21mID0gbnVsbHB0cjsK
KyAgTVYgKnNtb290aF9tZiA9IG51bGxwdHI7CisgIE1WICplc3RpbWF0aW9uID0gbnVsbHB0cjsK
KyAgTVYgKmdyb3VuZF90cnV0aCA9IG51bGxwdHI7CisgIGludCgqbG9jYWxfdmFyKVtNRl9MT0NB
TF9TVFJVQ1RVUkVfU0laRV0gPSBudWxscHRyOwogICBpbnQgcm93cyA9IDAsIGNvbHMgPSAwOwog
CiAgIGludCBhbHBoYSA9IDEwMCwgbWF4X2l0ZXIgPSAxMDA7CkBAIC0xNjksOCArMTY5LDggQEAg
VEVTVChub25fZ3JlZWR5X212LCBsb2NhbF92YXIpIHsKICAgY29uc3QgY2hhciAqZ3RfbG9jYWxf
dmFyX2ZpbGUgPSAibm9uX2dyZWVkeV9tdl90ZXN0X2ZpbGVzL2xvY2FsVmFyXzE2eDE2LnR4dCI7
CiAgIGNvbnN0IGNoYXIgKnNlYXJjaF9tZl9maWxlID0gIm5vbl9ncmVlZHlfbXZfdGVzdF9maWxl
cy9leGhhdXN0XzE2eDE2LnR4dCI7CiAgIEJMT0NLX1NJWkUgYnNpemUgPSBCTE9DS18xNlgxNjsK
LSAgaW50KCpndF9sb2NhbF92YXIpW01GX0xPQ0FMX1NUUlVDVFVSRV9TSVpFXSA9IE5VTEw7Ci0g
IGludCgqZXN0X2xvY2FsX3ZhcilbTUZfTE9DQUxfU1RSVUNUVVJFX1NJWkVdID0gTlVMTDsKKyAg
aW50KCpndF9sb2NhbF92YXIpW01GX0xPQ0FMX1NUUlVDVFVSRV9TSVpFXSA9IG51bGxwdHI7Cisg
IGludCgqZXN0X2xvY2FsX3ZhcilbTUZfTE9DQUxfU1RSVUNUVVJFX1NJWkVdID0gbnVsbHB0cjsK
ICAgWVYxMl9CVUZGRVJfQ09ORklHIHJlZl9mcmFtZSwgY3VyX2ZyYW1lOwogICBpbnQgcm93cywg
Y29sczsKICAgTVYgKnNlYXJjaF9tZjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9wYXJ0
aWFsX2lkY3RfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9wYXJ0aWFsX2lkY3RfdGVzdC5jYwpp
bmRleCBlNjZhNjk1ZWIwZDU0NzkzZTg0NzNhOTU1YjkwNjYwYjQwMGMxODAwLi5hMTYwMTIwZGUx
ZjlmYTJjZTU0YTAyN2RjODRkZjU2ZmMyZGMxMDA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rl
c3QvcGFydGlhbF9pZGN0X3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3BhcnRpYWxfaWRj
dF90ZXN0LmNjCkBAIC0xMDIsMTEgKzEwMiwxMSBAQCBjbGFzcyBQYXJ0aWFsSURjdFRlc3QgOiBw
dWJsaWMgOjp0ZXN0aW5nOjpUZXN0V2l0aFBhcmFtPFBhcnRpYWxJbnZUeGZtUGFyYW0+IHsKIAog
ICB2aXJ0dWFsIHZvaWQgVGVhckRvd24oKSB7CiAgICAgdnB4X2ZyZWUoaW5wdXRfYmxvY2tfKTsK
LSAgICBpbnB1dF9ibG9ja18gPSBOVUxMOworICAgIGlucHV0X2Jsb2NrXyA9IG51bGxwdHI7CiAg
ICAgdnB4X2ZyZWUob3V0cHV0X2Jsb2NrXyk7Ci0gICAgb3V0cHV0X2Jsb2NrXyA9IE5VTEw7Cisg
ICAgb3V0cHV0X2Jsb2NrXyA9IG51bGxwdHI7CiAgICAgdnB4X2ZyZWUob3V0cHV0X2Jsb2NrX3Jl
Zl8pOwotICAgIG91dHB1dF9ibG9ja19yZWZfID0gTlVMTDsKKyAgICBvdXRwdXRfYmxvY2tfcmVm
XyA9IG51bGxwdHI7CiAgICAgbGlidnB4X3Rlc3Q6OkNsZWFyU3lzdGVtU3RhdGUoKTsKICAgfQog
CkBAIC00NzQsOCArNDc0LDggQEAgY29uc3QgUGFydGlhbEludlR4Zm1QYXJhbSBjX3BhcnRpYWxf
aWRjdF90ZXN0c1tdID0gewogICAgICAgICAgICAgICZ3cmFwcGVyPHZweF9pZGN0NHg0XzFfYWRk
X2M+LCBUWF80WDQsIDEsIDgsIDEpCiB9OwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChDLCBQ
YXJ0aWFsSURjdFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVl
c0luKGNfcGFydGlhbF9pZGN0X3Rlc3RzKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoQywg
UGFydGlhbElEY3RUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFs
dWVzSW4oY19wYXJ0aWFsX2lkY3RfdGVzdHMpKTsKIAogI2lmICFDT05GSUdfRU1VTEFURV9IQVJE
V0FSRQogCkBAIC02MjUsOCArNjI1LDggQEAgY29uc3QgUGFydGlhbEludlR4Zm1QYXJhbSBuZW9u
X3BhcnRpYWxfaWRjdF90ZXN0c1tdID0gewogICAgICAgICAgICAgICZ3cmFwcGVyPHZweF9pZGN0
NHg0XzFfYWRkX25lb24+LCBUWF80WDQsIDEsIDgsIDEpCiB9OwogCi1JTlNUQU5USUFURV9URVNU
X0NBU0VfUChORU9OLCBQYXJ0aWFsSURjdFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6
OnRlc3Rpbmc6OlZhbHVlc0luKG5lb25fcGFydGlhbF9pZGN0X3Rlc3RzKSk7CitJTlNUQU5USUFU
RV9URVNUX1NVSVRFX1AoTkVPTiwgUGFydGlhbElEY3RUZXN0LAorICAgICAgICAgICAgICAgICAg
ICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4obmVvbl9wYXJ0aWFsX2lkY3RfdGVzdHMpKTsKICNl
bmRpZiAgLy8gSEFWRV9ORU9OCiAKICNpZiBIQVZFX1NTRTIKQEAgLTc3Niw4ICs3NzYsOCBAQCBj
b25zdCBQYXJ0aWFsSW52VHhmbVBhcmFtIHNzZTJfcGFydGlhbF9pZGN0X3Rlc3RzW10gPSB7CiAg
ICAgICAgICAgICAgJndyYXBwZXI8dnB4X2lkY3Q0eDRfMV9hZGRfc3NlMj4sIFRYXzRYNCwgMSwg
OCwgMSkKIH07CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKFNTRTIsIFBhcnRpYWxJRGN0VGVz
dCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oc3NlMl9wYXJ0
aWFsX2lkY3RfdGVzdHMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChTU0UyLCBQYXJ0aWFs
SURjdFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihz
c2UyX3BhcnRpYWxfaWRjdF90ZXN0cykpOwogCiAjZW5kaWYgIC8vIEhBVkVfU1NFMgogCkBAIC03
OTEsOCArNzkxLDggQEAgY29uc3QgUGFydGlhbEludlR4Zm1QYXJhbSBzc3NlM19wYXJ0aWFsX2lk
Y3RfdGVzdHNbXSA9IHsKICAgICAgICAgICAgICAmd3JhcHBlcjx2cHhfaWRjdDh4OF8xMl9hZGRf
c3NzZTM+LCBUWF84WDgsIDEyLCA4LCAxKQogfTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1Ao
U1NTRTMsIFBhcnRpYWxJRGN0VGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGlu
Zzo6VmFsdWVzSW4oc3NzZTNfcGFydGlhbF9pZGN0X3Rlc3RzKSk7CitJTlNUQU5USUFURV9URVNU
X1NVSVRFX1AoU1NTRTMsIFBhcnRpYWxJRGN0VGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICA6OnRlc3Rpbmc6OlZhbHVlc0luKHNzc2UzX3BhcnRpYWxfaWRjdF90ZXN0cykpOwogI2VuZGlm
ICAvLyBIQVZFX1NTU0UzCiAKICNpZiBIQVZFX1NTRTRfMSAmJiBDT05GSUdfVlA5X0hJR0hCSVRE
RVBUSApAQCAtODg5LDggKzg4OSw4IEBAIGNvbnN0IFBhcnRpYWxJbnZUeGZtUGFyYW0gc3NlNF8x
X3BhcnRpYWxfaWRjdF90ZXN0c1tdID0gewogICAgICAgJmhpZ2hiZF93cmFwcGVyPHZweF9oaWdo
YmRfaWRjdDR4NF8xNl9hZGRfc3NlNF8xPiwgVFhfNFg0LCAxNiwgMTIsIDIpCiB9OwogCi1JTlNU
QU5USUFURV9URVNUX0NBU0VfUChTU0U0XzEsIFBhcnRpYWxJRGN0VGVzdCwKLSAgICAgICAgICAg
ICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oc3NlNF8xX3BhcnRpYWxfaWRjdF90ZXN0
cykpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFNTRTRfMSwgUGFydGlhbElEY3RUZXN0LAor
ICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oc3NlNF8xX3BhcnRp
YWxfaWRjdF90ZXN0cykpOwogI2VuZGlmICAvLyBIQVZFX1NTRTRfMSAmJiBDT05GSUdfVlA5X0hJ
R0hCSVRERVBUSAogCiAjaWYgSEFWRV9EU1BSMiAmJiAhQ09ORklHX1ZQOV9ISUdIQklUREVQVEgK
QEAgLTkxOSw4ICs5MTksOCBAQCBjb25zdCBQYXJ0aWFsSW52VHhmbVBhcmFtIGRzcHIyX3BhcnRp
YWxfaWRjdF90ZXN0c1tdID0gewogICAgICAgICAgICAgICZ3cmFwcGVyPHZweF9pZGN0NHg0XzFf
YWRkX2RzcHIyPiwgVFhfNFg0LCAxLCA4LCAxKQogfTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNF
X1AoRFNQUjIsIFBhcnRpYWxJRGN0VGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVz
dGluZzo6VmFsdWVzSW4oZHNwcjJfcGFydGlhbF9pZGN0X3Rlc3RzKSk7CitJTlNUQU5USUFURV9U
RVNUX1NVSVRFX1AoRFNQUjIsIFBhcnRpYWxJRGN0VGVzdCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGRzcHIyX3BhcnRpYWxfaWRjdF90ZXN0cykpOwogI2Vu
ZGlmICAvLyBIQVZFX0RTUFIyICYmICFDT05GSUdfVlA5X0hJR0hCSVRERVBUSAogCiAjaWYgSEFW
RV9NU0EgJiYgIUNPTkZJR19WUDlfSElHSEJJVERFUFRICkBAIC05NTAsOCArOTUwLDggQEAgY29u
c3QgUGFydGlhbEludlR4Zm1QYXJhbSBtc2FfcGFydGlhbF9pZGN0X3Rlc3RzW10gPSB7CiAgICAg
ICAgICAgICAgJndyYXBwZXI8dnB4X2lkY3Q0eDRfMV9hZGRfbXNhPiwgVFhfNFg0LCAxLCA4LCAx
KQogfTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTVNBLCBQYXJ0aWFsSURjdFRlc3QsCi0g
ICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKG1zYV9wYXJ0aWFsX2lk
Y3RfdGVzdHMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChNU0EsIFBhcnRpYWxJRGN0VGVz
dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKG1zYV9wYXJ0
aWFsX2lkY3RfdGVzdHMpKTsKICNlbmRpZiAgLy8gSEFWRV9NU0EgJiYgIUNPTkZJR19WUDlfSElH
SEJJVERFUFRICiAKICNlbmRpZiAgLy8gIUNPTkZJR19FTVVMQVRFX0hBUkRXQVJFCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3Rlc3QvcG9zdHByb2Muc2ggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvcG9zdHBy
b2Muc2gKaW5kZXggOTM5YTNlNzYyMGEzNjM5N2VjZDg5MzdhNTdiZTBlNzg4MTM4NWVjOC4uOTFj
YTliMjZmZWE5MGI5YTJhZmYxMzQ0OWM4YzQ1YWM2YjNiOWU2ZSAxMDA3NTUKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC90ZXN0L3Bvc3Rwcm9jLnNoCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9wb3N0cHJvYy5zaApA
QCAtMzgsNyArMzgsNyBAQCBwb3N0cHJvYygpIHsKICAgZmkKIAogICBldmFsICIke1ZQWF9URVNU
X1BSRUZJWH0iICIke2RlY29kZXJ9IiAiJHtpbnB1dF9maWxlfSIgIiR7b3V0cHV0X2ZpbGV9IiBc
Ci0gICAgICAke2Rldm51bGx9CisgICAgICAke2Rldm51bGx9IHx8IHJldHVybiAxCiAKICAgWyAt
ZSAiJHtvdXRwdXRfZmlsZX0iIF0gfHwgcmV0dXJuIDEKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC9wcF9maWx0ZXJfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9wcF9maWx0ZXJfdGVz
dC5jYwppbmRleCAxZWQyNjFiZjliNjllYWQ2OGFjMmVmMzA4NTQ3YmQ2YzM4MDdlMmEzLi5hNTEx
ZmZiZTk4ZDA1ZGIxZDE2Zjc4ODg4OGUzNjdiNGVhYjBhODk4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rlc3QvcHBfZmlsdGVyX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3BwX2ZpbHRl
cl90ZXN0LmNjCkBAIC00NTksNyArNDU5LDcgQEAgVEVTVF9QKFZweE1iUG9zdFByb2NEb3duVGVz
dCwgQ2hlY2tMb3dGaWx0ZXJPdXRwdXQpIHsKICAgU2V0Um93cyhzcmNfY18uVG9wTGVmdFBpeGVs
KCksIHJvd3NfLCBjb2xzXywgc3JjX2NfLnN0cmlkZSgpKTsKIAogICB1bnNpZ25lZCBjaGFyICpl
eHBlY3RlZF9vdXRwdXQgPSBuZXcgdW5zaWduZWQgY2hhcltyb3dzXyAqIGNvbHNfXTsKLSAgQVNT
RVJUX1RSVUUoZXhwZWN0ZWRfb3V0cHV0ICE9IE5VTEwpOworICBBU1NFUlRfTkUoZXhwZWN0ZWRf
b3V0cHV0LCBudWxscHRyKTsKICAgU2V0Um93cyhleHBlY3RlZF9vdXRwdXQsIHJvd3NfLCBjb2xz
XywgY29sc18pOwogCiAgIFJ1bkZpbHRlckxldmVsKHNyY19jXy5Ub3BMZWZ0UGl4ZWwoKSwgcm93
c18sIGNvbHNfLCBzcmNfY18uc3RyaWRlKCksIHEybWJsKDApLApAQCAtNTExLDYyICs1MTEsNjIg
QEAgVEVTVF9QKFZweE1iUG9zdFByb2NEb3duVGVzdCwgRElTQUJMRURfU3BlZWQpIHsKICAgUHJp
bnRNZWRpYW4oIjE2eDE2Iik7CiB9CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QKAogICAgIEMsIFZweFBvc3RQcm9jRG93bkFuZEFjcm9zc01iUm93
VGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfcG9zdF9wcm9jX2Rvd25fYW5kX2Fjcm9z
c19tYl9yb3dfYykpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChDLCBWcHhNYlBvc3RQcm9j
QWNyb3NzSXBUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMo
dnB4X21icG9zdF9wcm9jX2Fjcm9zc19pcF9jKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1Ao
QywgVnB4TWJQb3N0UHJvY0Fjcm9zc0lwVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6
OnRlc3Rpbmc6OlZhbHVlcyh2cHhfbWJwb3N0X3Byb2NfYWNyb3NzX2lwX2MpKTsKIAotSU5TVEFO
VElBVEVfVEVTVF9DQVNFX1AoQywgVnB4TWJQb3N0UHJvY0Rvd25UZXN0LAotICAgICAgICAgICAg
ICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X21icG9zdF9wcm9jX2Rvd25fYykpOwor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKEMsIFZweE1iUG9zdFByb2NEb3duVGVzdCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfbWJwb3N0X3Byb2NfZG93
bl9jKSk7CiAKICNpZiBIQVZFX1NTRTIKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTRTIsIFZweFBvc3RQcm9jRG93bkFuZEFjcm9zc01i
Um93VGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfcG9zdF9wcm9jX2Rvd25fYW5kX2Fj
cm9zc19tYl9yb3dfc3NlMikpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChTU0UyLCBWcHhN
YlBvc3RQcm9jQWNyb3NzSXBUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXModnB4X21icG9zdF9wcm9jX2Fjcm9zc19pcF9zc2UyKSk7CitJTlNUQU5USUFURV9U
RVNUX1NVSVRFX1AoU1NFMiwgVnB4TWJQb3N0UHJvY0Fjcm9zc0lwVGVzdCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfbWJwb3N0X3Byb2NfYWNyb3NzX2lw
X3NzZTIpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoU1NFMiwgVnB4TWJQb3N0UHJvY0Rv
d25UZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X21i
cG9zdF9wcm9jX2Rvd25fc3NlMikpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFNTRTIsIFZw
eE1iUG9zdFByb2NEb3duVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6
OlZhbHVlcyh2cHhfbWJwb3N0X3Byb2NfZG93bl9zc2UyKSk7CiAjZW5kaWYgIC8vIEhBVkVfU1NF
MgogCiAjaWYgSEFWRV9ORU9OCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRF
X1RFU1RfU1VJVEVfUCgKICAgICBORU9OLCBWcHhQb3N0UHJvY0Rvd25BbmRBY3Jvc3NNYlJvd1Rl
c3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X3Bvc3RfcHJvY19kb3duX2FuZF9hY3Jvc3Nf
bWJfcm93X25lb24pKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTkVPTiwgVnB4TWJQb3N0
UHJvY0Fjcm9zc0lwVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFs
dWVzKHZweF9tYnBvc3RfcHJvY19hY3Jvc3NfaXBfbmVvbikpOworSU5TVEFOVElBVEVfVEVTVF9T
VUlURV9QKE5FT04sIFZweE1iUG9zdFByb2NBY3Jvc3NJcFRlc3QsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X21icG9zdF9wcm9jX2Fjcm9zc19pcF9uZW9u
KSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE5FT04sIFZweE1iUG9zdFByb2NEb3duVGVz
dCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZweF9tYnBvc3Rf
cHJvY19kb3duX25lb24pKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChORU9OLCBWcHhNYlBv
c3RQcm9jRG93blRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXModnB4X21icG9zdF9wcm9jX2Rvd25fbmVvbikpOwogI2VuZGlmICAvLyBIQVZFX05FT04KIAog
I2lmIEhBVkVfTVNBCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1Rf
U1VJVEVfUCgKICAgICBNU0EsIFZweFBvc3RQcm9jRG93bkFuZEFjcm9zc01iUm93VGVzdCwKICAg
ICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfcG9zdF9wcm9jX2Rvd25fYW5kX2Fjcm9zc19tYl9yb3df
bXNhKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE1TQSwgVnB4TWJQb3N0UHJvY0Fjcm9z
c0lwVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZweF9t
YnBvc3RfcHJvY19hY3Jvc3NfaXBfbXNhKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoTVNB
LCBWcHhNYlBvc3RQcm9jQWNyb3NzSXBUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6
dGVzdGluZzo6VmFsdWVzKHZweF9tYnBvc3RfcHJvY19hY3Jvc3NfaXBfbXNhKSk7CiAKLUlOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKE1TQSwgVnB4TWJQb3N0UHJvY0Rvd25UZXN0LAotICAgICAgICAg
ICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X21icG9zdF9wcm9jX2Rvd25fbXNh
KSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoTVNBLCBWcHhNYlBvc3RQcm9jRG93blRlc3Qs
CisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X21icG9zdF9w
cm9jX2Rvd25fbXNhKSk7CiAjZW5kaWYgIC8vIEhBVkVfTVNBCiAKICNpZiBIQVZFX1ZTWAotSU5T
VEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgVlNY
LCBWcHhQb3N0UHJvY0Rvd25BbmRBY3Jvc3NNYlJvd1Rlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXModnB4X3Bvc3RfcHJvY19kb3duX2FuZF9hY3Jvc3NfbWJfcm93X3ZzeCkpOwogCi1JTlNUQU5U
SUFURV9URVNUX0NBU0VfUChWU1gsIFZweE1iUG9zdFByb2NBY3Jvc3NJcFRlc3QsCi0gICAgICAg
ICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfbWJwb3N0X3Byb2NfYWNyb3Nz
X2lwX3ZzeCkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFZTWCwgVnB4TWJQb3N0UHJvY0Fj
cm9zc0lwVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2
cHhfbWJwb3N0X3Byb2NfYWNyb3NzX2lwX3ZzeCkpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0Vf
UChWU1gsIFZweE1iUG9zdFByb2NEb3duVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6
dGVzdGluZzo6VmFsdWVzKHZweF9tYnBvc3RfcHJvY19kb3duX3ZzeCkpOworSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QKFZTWCwgVnB4TWJQb3N0UHJvY0Rvd25UZXN0LAorICAgICAgICAgICAgICAg
ICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZweF9tYnBvc3RfcHJvY19kb3duX3ZzeCkpOwog
I2VuZGlmICAvLyBIQVZFX1ZTWAogCiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdGVzdC9wcmVkaWN0X3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvcHJlZGljdF90ZXN0
LmNjCmluZGV4IGQ0MGQ5Yzc1NWU2N2UwYTIxYmUwZmI3MGViYTkxNWM5ZGQ5MTQwY2YuLjc0NzI5
NzA1NzYxYmRmNTBmNGFhOGNmMTE4NTIwMGJjMjIxMzIyNGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC9wcmVkaWN0X3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ByZWRpY3RfdGVz
dC5jYwpAQCAtNDEsMTEgKzQxLDExIEBAIGNsYXNzIFByZWRpY3RUZXN0QmFzZSA6IHB1YmxpYyBB
YnN0cmFjdEJlbmNoLAogIHB1YmxpYzoKICAgUHJlZGljdFRlc3RCYXNlKCkKICAgICAgIDogd2lk
dGhfKEdFVF9QQVJBTSgwKSksIGhlaWdodF8oR0VUX1BBUkFNKDEpKSwgcHJlZGljdF8oR0VUX1BB
UkFNKDIpKSwKLSAgICAgICAgc3JjXyhOVUxMKSwgcGFkZGVkX2RzdF8oTlVMTCksIGRzdF8oTlVM
TCksIGRzdF9jXyhOVUxMKSB7fQorICAgICAgICBzcmNfKG51bGxwdHIpLCBwYWRkZWRfZHN0Xyhu
dWxscHRyKSwgZHN0XyhudWxscHRyKSwgZHN0X2NfKG51bGxwdHIpIHt9CiAKICAgdmlydHVhbCB2
b2lkIFNldFVwKCkgewogICAgIHNyY18gPSBuZXcgdWludDhfdFtrU3JjU2l6ZV07Ci0gICAgQVNT
RVJUX1RSVUUoc3JjXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoc3JjXywgbnVsbHB0cik7CiAK
ICAgICAvLyBwYWRkZWRfZHN0XyBwcm92aWRlcyBhIGJ1ZmZlciBvZiBrQm9yZGVyU2l6ZSBhcm91
bmQgdGhlIGRlc3RpbmF0aW9uCiAgICAgLy8gbWVtb3J5IHRvIGZhY2lsaXRhdGUgZGV0ZWN0aW5n
IG91dCBvZiBib3VuZHMgd3JpdGVzLgpAQCAtNTMsMTEgKzUzLDExIEBAIGNsYXNzIFByZWRpY3RU
ZXN0QmFzZSA6IHB1YmxpYyBBYnN0cmFjdEJlbmNoLAogICAgIHBhZGRlZF9kc3Rfc2l6ZV8gPSBk
c3Rfc3RyaWRlXyAqIChrQm9yZGVyU2l6ZSArIGhlaWdodF8gKyBrQm9yZGVyU2l6ZSk7CiAgICAg
cGFkZGVkX2RzdF8gPQogICAgICAgICByZWludGVycHJldF9jYXN0PHVpbnQ4X3QgKj4odnB4X21l
bWFsaWduKDE2LCBwYWRkZWRfZHN0X3NpemVfKSk7Ci0gICAgQVNTRVJUX1RSVUUocGFkZGVkX2Rz
dF8gIT0gTlVMTCk7CisgICAgQVNTRVJUX05FKHBhZGRlZF9kc3RfLCBudWxscHRyKTsKICAgICBk
c3RfID0gcGFkZGVkX2RzdF8gKyAoa0JvcmRlclNpemUgKiBkc3Rfc3RyaWRlXykgKyBrQm9yZGVy
U2l6ZTsKIAogICAgIGRzdF9jXyA9IG5ldyB1aW50OF90WzE2ICogMTZdOwotICAgIEFTU0VSVF9U
UlVFKGRzdF9jXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoZHN0X2NfLCBudWxscHRyKTsKIAog
ICAgIG1lbXNldChzcmNfLCAwLCBrU3JjU2l6ZSk7CiAgICAgbWVtc2V0KHBhZGRlZF9kc3RfLCAx
MjgsIHBhZGRlZF9kc3Rfc2l6ZV8pOwpAQCAtNjYsMTIgKzY2LDEyIEBAIGNsYXNzIFByZWRpY3RU
ZXN0QmFzZSA6IHB1YmxpYyBBYnN0cmFjdEJlbmNoLAogCiAgIHZpcnR1YWwgdm9pZCBUZWFyRG93
bigpIHsKICAgICBkZWxldGVbXSBzcmNfOwotICAgIHNyY18gPSBOVUxMOworICAgIHNyY18gPSBu
dWxscHRyOwogICAgIHZweF9mcmVlKHBhZGRlZF9kc3RfKTsKLSAgICBwYWRkZWRfZHN0XyA9IE5V
TEw7Ci0gICAgZHN0XyA9IE5VTEw7CisgICAgcGFkZGVkX2RzdF8gPSBudWxscHRyOworICAgIGRz
dF8gPSBudWxscHRyOwogICAgIGRlbGV0ZVtdIGRzdF9jXzsKLSAgICBkc3RfY18gPSBOVUxMOwor
ICAgIGRzdF9jXyA9IG51bGxwdHI7CiAgICAgbGlidnB4X3Rlc3Q6OkNsZWFyU3lzdGVtU3RhdGUo
KTsKICAgfQogCkBAIC0yOTgsMTQgKzI5OCwxNCBAQCBURVNUX1AoU2l4dGFwUHJlZGljdFRlc3Qs
IFRlc3RXaXRoUHJlc2V0RGF0YSkgewogICAgICAgQ29tcGFyZUJ1ZmZlcnMoa0V4cGVjdGVkRHN0
LCBrRXhwZWN0ZWREc3RTdHJpZGUsIGRzdF8sIGRzdF9zdHJpZGVfKSk7CiB9CiAKLUlOU1RBTlRJ
QVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEMsIFNpeHRh
cFByZWRpY3RUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoMTYsIDE2LCAm
dnA4X3NpeHRhcF9wcmVkaWN0MTZ4MTZfYyksCiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90
dXBsZSg4LCA4LCAmdnA4X3NpeHRhcF9wcmVkaWN0OHg4X2MpLAogICAgICAgICAgICAgICAgICAg
ICAgIG1ha2VfdHVwbGUoOCwgNCwgJnZwOF9zaXh0YXBfcHJlZGljdDh4NF9jKSwKICAgICAgICAg
ICAgICAgICAgICAgICBtYWtlX3R1cGxlKDQsIDQsICZ2cDhfc2l4dGFwX3ByZWRpY3Q0eDRfYykp
KTsKICNpZiBIQVZFX05FT04KLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QKAogICAgIE5FT04sIFNpeHRhcFByZWRpY3RUZXN0LAogICAgIDo6dGVzdGlu
Zzo6VmFsdWVzKG1ha2VfdHVwbGUoMTYsIDE2LCAmdnA4X3NpeHRhcF9wcmVkaWN0MTZ4MTZfbmVv
biksCiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSg4LCA4LCAmdnA4X3NpeHRhcF9w
cmVkaWN0OHg4X25lb24pLApAQCAtMzEzLDE5ICszMTMsMTkgQEAgSU5TVEFOVElBVEVfVEVTVF9D
QVNFX1AoCiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSg0LCA0LCAmdnA4X3NpeHRh
cF9wcmVkaWN0NHg0X25lb24pKSk7CiAjZW5kaWYKICNpZiBIQVZFX01NWAotSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTU1YLCBTaXh0YXBQ
cmVkaWN0VGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDQsIDQsICZ2cDhf
c2l4dGFwX3ByZWRpY3Q0eDRfbW14KSkpOwogI2VuZGlmCiAjaWYgSEFWRV9TU0UyCi1JTlNUQU5U
SUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBTU0UyLCBT
aXh0YXBQcmVkaWN0VGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAx
NiwgJnZwOF9zaXh0YXBfcHJlZGljdDE2eDE2X3NzZTIpLAogICAgICAgICAgICAgICAgICAgICAg
IG1ha2VfdHVwbGUoOCwgOCwgJnZwOF9zaXh0YXBfcHJlZGljdDh4OF9zc2UyKSwKICAgICAgICAg
ICAgICAgICAgICAgICBtYWtlX3R1cGxlKDgsIDQsICZ2cDhfc2l4dGFwX3ByZWRpY3Q4eDRfc3Nl
MikpKTsKICNlbmRpZgogI2lmIEhBVkVfU1NTRTMKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTU0UzLCBTaXh0YXBQcmVkaWN0VGVzdCwK
ICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAxNiwgJnZwOF9zaXh0YXBfcHJl
ZGljdDE2eDE2X3Nzc2UzKSwKICAgICAgICAgICAgICAgICAgICAgICBtYWtlX3R1cGxlKDgsIDgs
ICZ2cDhfc2l4dGFwX3ByZWRpY3Q4eDhfc3NzZTMpLApAQCAtMzMzLDcgKzMzMyw3IEBAIElOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoNCwg
NCwgJnZwOF9zaXh0YXBfcHJlZGljdDR4NF9zc3NlMykpKTsKICNlbmRpZgogI2lmIEhBVkVfTVNB
Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAg
ICBNU0EsIFNpeHRhcFByZWRpY3RUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVw
bGUoMTYsIDE2LCAmdnA4X3NpeHRhcF9wcmVkaWN0MTZ4MTZfbXNhKSwKICAgICAgICAgICAgICAg
ICAgICAgICBtYWtlX3R1cGxlKDgsIDgsICZ2cDhfc2l4dGFwX3ByZWRpY3Q4eDhfbXNhKSwKQEAg
LTM0Miw3ICszNDIsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNlbmRpZgogCiAjaWYg
SEFWRV9NTUkKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlU
RV9QKAogICAgIE1NSSwgU2l4dGFwUHJlZGljdFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMo
bWFrZV90dXBsZSgxNiwgMTYsICZ2cDhfc2l4dGFwX3ByZWRpY3QxNngxNl9tbWkpLAogICAgICAg
ICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoOCwgOCwgJnZwOF9zaXh0YXBfcHJlZGljdDh4OF9t
bWkpLApAQCAtMzY3LDE0ICszNjcsMTQgQEAgVEVTVF9QKEJpbGluZWFyUHJlZGljdFRlc3QsIERJ
U0FCTEVEX1NwZWVkKSB7CiAgIFByaW50TWVkaWFuKHRpdGxlKTsKIH0KIAotSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgQywgQmlsaW5lYXJQ
cmVkaWN0VGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKDE2LCAxNiwgJnZw
OF9iaWxpbmVhcl9wcmVkaWN0MTZ4MTZfYyksCiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90
dXBsZSg4LCA4LCAmdnA4X2JpbGluZWFyX3ByZWRpY3Q4eDhfYyksCiAgICAgICAgICAgICAgICAg
ICAgICAgbWFrZV90dXBsZSg4LCA0LCAmdnA4X2JpbGluZWFyX3ByZWRpY3Q4eDRfYyksCiAgICAg
ICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSg0LCA0LCAmdnA4X2JpbGluZWFyX3ByZWRpY3Q0
eDRfYykpKTsKICNpZiBIQVZFX05FT04KLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QKAogICAgIE5FT04sIEJpbGluZWFyUHJlZGljdFRlc3QsCiAgICAg
Ojp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgxNiwgMTYsICZ2cDhfYmlsaW5lYXJfcHJlZGlj
dDE2eDE2X25lb24pLAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoOCwgOCwgJnZw
OF9iaWxpbmVhcl9wcmVkaWN0OHg4X25lb24pLApAQCAtMzgyLDcgKzM4Miw3IEBAIElOU1RBTlRJ
QVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoNCwgNCwg
JnZwOF9iaWxpbmVhcl9wcmVkaWN0NHg0X25lb24pKSk7CiAjZW5kaWYKICNpZiBIQVZFX1NTRTIK
LUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAg
IFNTRTIsIEJpbGluZWFyUHJlZGljdFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90
dXBsZSgxNiwgMTYsICZ2cDhfYmlsaW5lYXJfcHJlZGljdDE2eDE2X3NzZTIpLAogICAgICAgICAg
ICAgICAgICAgICAgIG1ha2VfdHVwbGUoOCwgOCwgJnZwOF9iaWxpbmVhcl9wcmVkaWN0OHg4X3Nz
ZTIpLApAQCAtMzkwLDEzICszOTAsMTMgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAgICAg
ICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSg0LCA0LCAmdnA4X2JpbGluZWFyX3ByZWRpY3Q0
eDRfc3NlMikpKTsKICNlbmRpZgogI2lmIEhBVkVfU1NTRTMKLUlOU1RBTlRJQVRFX1RFU1RfQ0FT
RV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTU0UzLCBCaWxpbmVhclByZWRp
Y3RUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoMTYsIDE2LCAmdnA4X2Jp
bGluZWFyX3ByZWRpY3QxNngxNl9zc3NlMyksCiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90
dXBsZSg4LCA4LCAmdnA4X2JpbGluZWFyX3ByZWRpY3Q4eDhfc3NzZTMpKSk7CiAjZW5kaWYKICNp
ZiBIQVZFX01TQQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NV
SVRFX1AoCiAgICAgTVNBLCBCaWxpbmVhclByZWRpY3RUZXN0LAogICAgIDo6dGVzdGluZzo6VmFs
dWVzKG1ha2VfdHVwbGUoMTYsIDE2LCAmdnA4X2JpbGluZWFyX3ByZWRpY3QxNngxNl9tc2EpLAog
ICAgICAgICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoOCwgOCwgJnZwOF9iaWxpbmVhcl9wcmVk
aWN0OHg4X21zYSksCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvcXVhbnRpemVfdGVzdC5j
YyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGVzdC9xdWFudGl6ZV90ZXN0LmNjCmluZGV4IGE3NDk3NzQyY2ViYTFi
MThiOWVhNjMzZDFkYTIwMzc5YWM0OTlmMzcuLjc5MmIyMTQzMmViNzZmNzAwODhhNmE1ZWI1OGVm
MWMyMGU4OTA2OWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9xdWFudGl6ZV90ZXN0LmNj
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9xdWFudGl6ZV90ZXN0LmNjCkBAIC00Niw5ICs0Niw5IEBA
IGNsYXNzIFF1YW50aXplVGVzdEJhc2UgewogIHB1YmxpYzoKICAgdmlydHVhbCB+UXVhbnRpemVU
ZXN0QmFzZSgpIHsKICAgICB2cDhfcmVtb3ZlX2NvbXByZXNzb3IoJnZwOF9jb21wXyk7Ci0gICAg
dnA4X2NvbXBfID0gTlVMTDsKKyAgICB2cDhfY29tcF8gPSBudWxscHRyOwogICAgIHZweF9mcmVl
KG1hY3JvYmxvY2tkX2RzdF8pOwotICAgIG1hY3JvYmxvY2tkX2RzdF8gPSBOVUxMOworICAgIG1h
Y3JvYmxvY2tkX2RzdF8gPSBudWxscHRyOwogICAgIGxpYnZweF90ZXN0OjpDbGVhclN5c3RlbVN0
YXRlKCk7CiAgIH0KIApAQCAtMTQ2LDYgKzE0Niw3IEBAIGNsYXNzIFF1YW50aXplVGVzdCA6IHB1
YmxpYyBRdWFudGl6ZVRlc3RCYXNlLAogICBWUDhRdWFudGl6ZSBhc21fcXVhbnRfOwogICBWUDhR
dWFudGl6ZSBjX3F1YW50XzsKIH07CitHVEVTVF9BTExPV19VTklOU1RBTlRJQVRFRF9QQVJBTUVU
RVJJWkVEX1RFU1QoUXVhbnRpemVUZXN0KTsKIAogVEVTVF9QKFF1YW50aXplVGVzdCwgVGVzdFpl
cm9JbnB1dCkgewogICBGaWxsQ29lZmZDb25zdGFudCgwKTsKQEAgLTE4MSw3ICsxODIsNyBAQCBU
RVNUX1AoUXVhbnRpemVUZXN0LCBESVNBQkxFRF9TcGVlZCkgewogfQogCiAjaWYgSEFWRV9TU0Uy
Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAg
ICBTU0UyLCBRdWFudGl6ZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIG1h
a2VfdHVwbGUoJnZwOF9mYXN0X3F1YW50aXplX2Jfc3NlMiwgJnZwOF9mYXN0X3F1YW50aXplX2Jf
YyksCkBAIC0xODksMjYgKzE5MCwyNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNlbmRp
ZiAgLy8gSEFWRV9TU0UyCiAKICNpZiBIQVZFX1NTU0UzCi1JTlNUQU5USUFURV9URVNUX0NBU0Vf
UChTU1NFMywgUXVhbnRpemVUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXMobWFrZV90dXBsZSgmdnA4X2Zhc3RfcXVhbnRpemVfYl9zc3NlMywKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZwOF9mYXN0X3F1
YW50aXplX2JfYykpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKKyAgICBTU1NFMywgUXVh
bnRpemVUZXN0LAorICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZwOF9mYXN0X3F1
YW50aXplX2Jfc3NzZTMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnA4X2Zh
c3RfcXVhbnRpemVfYl9jKSkpOwogI2VuZGlmICAvLyBIQVZFX1NTU0UzCiAKICNpZiBIQVZFX1NT
RTRfMQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1Ao
CiAgICAgU1NFNF8xLCBRdWFudGl6ZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90
dXBsZSgmdnA4X3JlZ3VsYXJfcXVhbnRpemVfYl9zc2U0XzEsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAmdnA4X3JlZ3VsYXJfcXVhbnRpemVfYl9jKSkpOwogI2VuZGlmICAvLyBI
QVZFX1NTRTRfMQogCiAjaWYgSEFWRV9ORU9OCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChORU9O
LCBRdWFudGl6ZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVl
cyhtYWtlX3R1cGxlKCZ2cDhfZmFzdF9xdWFudGl6ZV9iX25lb24sCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cDhfZmFzdF9xdWFudGl6ZV9i
X2MpKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoTkVPTiwgUXVhbnRpemVUZXN0LAorICAg
ICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZwOF9m
YXN0X3F1YW50aXplX2JfbmVvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICZ2cDhfZmFzdF9xdWFudGl6ZV9iX2MpKSk7CiAjZW5kaWYgIC8v
IEhBVkVfTkVPTgogCiAjaWYgSEFWRV9NU0EKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5T
VEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE1TQSwgUXVhbnRpemVUZXN0LAogICAgIDo6dGVz
dGluZzo6VmFsdWVzKAogICAgICAgICBtYWtlX3R1cGxlKCZ2cDhfZmFzdF9xdWFudGl6ZV9iX21z
YSwgJnZwOF9mYXN0X3F1YW50aXplX2JfYyksCkBAIC0yMTYsNyArMjE4LDcgQEAgSU5TVEFOVElB
VEVfVEVTVF9DQVNFX1AoCiAjZW5kaWYgIC8vIEhBVkVfTVNBCiAKICNpZiBIQVZFX01NSQotSU5T
VEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTU1J
LCBRdWFudGl6ZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIG1ha2VfdHVw
bGUoJnZwOF9mYXN0X3F1YW50aXplX2JfbW1pLCAmdnA4X2Zhc3RfcXVhbnRpemVfYl9jKSwKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9yYXRlY3RybF9ydGNfdGVzdC5jYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC9yYXRlY3RybF9ydGNfdGVzdC5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zYTFjODQ2OWVlNzVjY2Yy
ZDg2MTI1MzY5NTEwNmRjZjIxYTMwMTA1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90
ZXN0L3JhdGVjdHJsX3J0Y190ZXN0LmNjCkBAIC0wLDAgKzEsMjI5IEBACisvKgorICogIENvcHly
aWdodCAoYykgMjAyMCBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2
ZWQuCisgKgorICogIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNE
LXN0eWxlIGxpY2Vuc2UKKyAqICB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxl
IGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UKKyAqICB0cmVlLiBBbiBhZGRpdGlvbmFsIGludGVs
bGVjdHVhbCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQgY2FuIGJlIGZvdW5kCisgKiAgaW4gdGhlIGZp
bGUgUEFURU5UUy4gIEFsbCBjb250cmlidXRpbmcgcHJvamVjdCBhdXRob3JzIG1heQorICogIGJl
IGZvdW5kIGluIHRoZSBBVVRIT1JTIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZSB0cmVl
LgorICovCisjaW5jbHVkZSAidnA5L3JhdGVjdHJsX3J0Yy5oIgorCisjaW5jbHVkZSA8ZnN0cmVh
bT4gIC8vIE5PTElOVAorI2luY2x1ZGUgPHN0cmluZz4KKworI2luY2x1ZGUgIi4vdnB4X2NvbmZp
Zy5oIgorI2luY2x1ZGUgInRoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3Qv
Z3Rlc3QuaCIKKyNpbmNsdWRlICJ0ZXN0L2NvZGVjX2ZhY3RvcnkuaCIKKyNpbmNsdWRlICJ0ZXN0
L2VuY29kZV90ZXN0X2RyaXZlci5oIgorI2luY2x1ZGUgInRlc3QvdXRpbC5oIgorI2luY2x1ZGUg
InRlc3QvdmlkZW9fc291cmNlLmgiCisjaW5jbHVkZSAidnB4L3ZweF9jb2RlYy5oIgorI2luY2x1
ZGUgInZweF9wb3J0cy9iaXRvcHMuaCIKKworbmFtZXNwYWNlIHsKKworY29uc3Qgc2l6ZV90IGtO
dW1GcmFtZSA9IDg1MDsKKworc3RydWN0IEZyYW1lSW5mbyB7CisgIGZyaWVuZCBzdGQ6OmlzdHJl
YW0gJm9wZXJhdG9yPj4oc3RkOjppc3RyZWFtICZpcywgRnJhbWVJbmZvICZpbmZvKSB7CisgICAg
aXMgPj4gaW5mby5mcmFtZV9pZCA+PiBpbmZvLnNwYXRpYWxfaWQgPj4gaW5mby50ZW1wb3JhbF9p
ZCA+PiBpbmZvLmJhc2VfcSA+PgorICAgICAgICBpbmZvLnRhcmdldF9iYW5kd2lkdGggPj4gaW5m
by5idWZmZXJfbGV2ZWwgPj4gaW5mby5maWx0ZXJfbGV2ZWxfID4+CisgICAgICAgIGluZm8uYnl0
ZXNfdXNlZDsKKyAgICByZXR1cm4gaXM7CisgIH0KKyAgaW50IGZyYW1lX2lkOworICBpbnQgc3Bh
dGlhbF9pZDsKKyAgaW50IHRlbXBvcmFsX2lkOworICAvLyBCYXNlIFFQCisgIGludCBiYXNlX3E7
CisgIHNpemVfdCB0YXJnZXRfYmFuZHdpZHRoOworICBzaXplX3QgYnVmZmVyX2xldmVsOworICAv
LyBMb29wZmlsdGVyIGxldmVsCisgIGludCBmaWx0ZXJfbGV2ZWxfOworICAvLyBGcmFtZSBzaXpl
IGZvciBjdXJyZW50IGZyYW1lLCB1c2VkIGZvciBwb3NlIGVuY29kZSB1cGRhdGUKKyAgc2l6ZV90
IGJ5dGVzX3VzZWQ7Cit9OworCisvLyBUaGlzIHRlc3QgcnVucyB0aGUgcmF0ZSBjb250cm9sIGlu
dGVyZmFjZSBhbmQgY29tcGFyZSBhZ2FpbnN0IGdyb3VuZCB0cnV0aAorLy8gZ2VuZXJhdGVkIGJ5
IGVuY29kZXJzLgorLy8gU2V0dGluZ3MgZm9yIHRoZSBlbmNvZGVyOgorLy8gRm9yIDEgbGF5ZXI6
CisvLworLy8gZXhhbXBsZXMvdnB4X3RlbXBvcmFsX3N2Y19lbmNvZGVyIGdpcHNyZWNfbW90aW9u
MS4xMjgwXzcyMC55dXYgb3V0IHZwOQorLy8gICAgMTI4MCA3MjAgMSAzMCA3IDAgMCAxIDAgMTAw
MAorLy8KKy8vIEZvciBTVkMgKDMgdGVtcG9yYWwgbGF5ZXJzLCAzIHNwYXRpYWwgbGF5ZXJzKToK
Ky8vCisvLyBleGFtcGxlcy92cDlfc3BhdGlhbF9zdmNfZW5jb2RlciAtZiAxMDAwMCAtdyAxMjgw
IC1oIDcyMCAtdCAxLzMwIC1zbCAzCisvLyAtayAxMDAwMCAtYmwgMTAwLDE0MCwyMDAsMjUwLDM1
MCw1MDAsNDUwLDYzMCw5MDAgLWIgMTYwMCAtLXJjLWVuZC11c2FnZT0xCisvLyAtLWxhZy1pbi1m
cmFtZXM9MCAtLXBhc3Nlcz0xIC0tc3BlZWQ9NyAtLXRocmVhZHM9MQorLy8gLS10ZW1wb3JhbC1s
YXllcmluZy1tb2RlPTMgLWFxIDEgLXJjc3RhdCAxCisvLyBnaXBzcmVjX21vdGlvbjEuMTI4MF83
MjAueXV2IC1vIG91dC53ZWJtCisvLworLy8gLSBBUV9Nb2RlIDAKKy8vIC0gRGlzYWJsZSBnb2xk
ZW4gcmVmcmVzaAorLy8gLSBCaXRyYXRlIHggMiBhdCBmcmFtZS9zdXBlcmZyYW1lIDIwMAorLy8g
LSBCaXRyYXRlIC8gNCBhdCBmcmFtZS9zdXBlcmZyYW1lIDQwMAorLy8KKy8vIFRoZSBnZW5lcmF0
ZWQgZmlsZSBpbmNsdWRlczoKKy8vIGZyYW1lIG51bWJlciwgc3BhdGlhbCBsYXllciBJRCwgdGVt
cG9yYWwgbGF5ZXIgSUQsIGJhc2UgUVAsIHRhcmdldAorLy8gYmFuZHdpZHRoLCBidWZmZXIgbGV2
ZWwsIGxvb3BmaWx0ZXIgbGV2ZWwsIGVuY29kZWQgZnJhbWUgc2l6ZQorLy8gVE9ETyhqaWFuaik6
IFJlbW92ZSBnb2xkZW4gZmlsZXMsIGFuZCBydW4gYWN0dWFsIGVuY29kaW5nIGluIHRoaXMgdGVz
dC4KK2NsYXNzIFJjSW50ZXJmYWNlVGVzdCA6IHB1YmxpYyA6OnRlc3Rpbmc6OlRlc3QgeworIHB1
YmxpYzoKKyAgZXhwbGljaXQgUmNJbnRlcmZhY2VUZXN0KCkge30KKworICB2aXJ0dWFsIH5SY0lu
dGVyZmFjZVRlc3QoKSB7fQorCisgcHJvdGVjdGVkOgorICB2b2lkIFJ1bk9uZUxheWVyKCkgewor
ICAgIFNldENvbmZpZ09uZUxheWVyKCk7CisgICAgcmNfYXBpXyA9IGxpYnZweDo6VlA5UmF0ZUNv
bnRyb2xSVEM6OkNyZWF0ZShyY19jZmdfKTsKKyAgICBGcmFtZUluZm8gZnJhbWVfaW5mbzsKKyAg
ICBsaWJ2cHg6OlZQOUZyYW1lUGFyYW1zUXBSVEMgZnJhbWVfcGFyYW1zOworICAgIGZyYW1lX3Bh
cmFtcy5mcmFtZV90eXBlID0gS0VZX0ZSQU1FOworICAgIGZyYW1lX3BhcmFtcy5zcGF0aWFsX2xh
eWVyX2lkID0gMDsKKyAgICBmcmFtZV9wYXJhbXMudGVtcG9yYWxfbGF5ZXJfaWQgPSAwOworICAg
IHN0ZDo6aWZzdHJlYW0gb25lX2xheWVyX2ZpbGU7CisgICAgb25lX2xheWVyX2ZpbGUub3Blbihs
aWJ2cHhfdGVzdDo6R2V0RGF0YVBhdGgoKSArCisgICAgICAgICAgICAgICAgICAgICAgICAiL3Jj
X2ludGVyZmFjZV90ZXN0X29uZV9sYXllciIpOworICAgIEFTU0VSVF9UUlVFKG9uZV9sYXllcl9m
aWxlLmdvb2QoKSk7CisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBrTnVtRnJhbWU7IGkrKykg
eworICAgICAgb25lX2xheWVyX2ZpbGUgPj4gZnJhbWVfaW5mbzsKKyAgICAgIGlmIChmcmFtZV9p
bmZvLmZyYW1lX2lkID4gMCkgZnJhbWVfcGFyYW1zLmZyYW1lX3R5cGUgPSBJTlRFUl9GUkFNRTsK
KyAgICAgIGlmIChmcmFtZV9pbmZvLmZyYW1lX2lkID09IDIwMCkgeworICAgICAgICByY19jZmdf
LnRhcmdldF9iYW5kd2lkdGggPSByY19jZmdfLnRhcmdldF9iYW5kd2lkdGggKiAyOworICAgICAg
ICByY19hcGlfLT5VcGRhdGVSYXRlQ29udHJvbChyY19jZmdfKTsKKyAgICAgIH0gZWxzZSBpZiAo
ZnJhbWVfaW5mby5mcmFtZV9pZCA9PSA0MDApIHsKKyAgICAgICAgcmNfY2ZnXy50YXJnZXRfYmFu
ZHdpZHRoID0gcmNfY2ZnXy50YXJnZXRfYmFuZHdpZHRoIC8gNDsKKyAgICAgICAgcmNfYXBpXy0+
VXBkYXRlUmF0ZUNvbnRyb2wocmNfY2ZnXyk7CisgICAgICB9CisgICAgICBBU1NFUlRfRVEoZnJh
bWVfaW5mby5zcGF0aWFsX2lkLCAwKTsKKyAgICAgIEFTU0VSVF9FUShmcmFtZV9pbmZvLnRlbXBv
cmFsX2lkLCAwKTsKKyAgICAgIHJjX2FwaV8tPkNvbXB1dGVRUChmcmFtZV9wYXJhbXMpOworICAg
ICAgQVNTRVJUX0VRKHJjX2FwaV8tPkdldFFQKCksIGZyYW1lX2luZm8uYmFzZV9xKTsKKyAgICAg
IEFTU0VSVF9FUShyY19hcGlfLT5HZXRMb29wZmlsdGVyTGV2ZWwoKSwgZnJhbWVfaW5mby5maWx0
ZXJfbGV2ZWxfKTsKKyAgICAgIHJjX2FwaV8tPlBvc3RFbmNvZGVVcGRhdGUoZnJhbWVfaW5mby5i
eXRlc191c2VkKTsKKyAgICB9CisgIH0KKworICB2b2lkIFJ1blNWQygpIHsKKyAgICBTZXRDb25m
aWdTVkMoKTsKKyAgICByY19hcGlfID0gbGlidnB4OjpWUDlSYXRlQ29udHJvbFJUQzo6Q3JlYXRl
KHJjX2NmZ18pOworICAgIEZyYW1lSW5mbyBmcmFtZV9pbmZvOworICAgIGxpYnZweDo6VlA5RnJh
bWVQYXJhbXNRcFJUQyBmcmFtZV9wYXJhbXM7CisgICAgZnJhbWVfcGFyYW1zLmZyYW1lX3R5cGUg
PSBLRVlfRlJBTUU7CisgICAgc3RkOjppZnN0cmVhbSBzdmNfZmlsZTsKKyAgICBzdmNfZmlsZS5v
cGVuKHN0ZDo6c3RyaW5nKHN0ZDo6Z2V0ZW52KCJMSUJWUFhfVEVTVF9EQVRBX1BBVEgiKSkgKwor
ICAgICAgICAgICAgICAgICAgIi9yY19pbnRlcmZhY2VfdGVzdF9zdmMiKTsKKyAgICBBU1NFUlRf
VFJVRShzdmNfZmlsZS5nb29kKCkpOworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwga051bUZy
YW1lICogcmNfY2ZnXy5zc19udW1iZXJfbGF5ZXJzOyBpKyspIHsKKyAgICAgIHN2Y19maWxlID4+
IGZyYW1lX2luZm87CisgICAgICBpZiAoZnJhbWVfaW5mby5mcmFtZV9pZCA+IDApIGZyYW1lX3Bh
cmFtcy5mcmFtZV90eXBlID0gSU5URVJfRlJBTUU7CisgICAgICBpZiAoZnJhbWVfaW5mby5mcmFt
ZV9pZCA9PSAyMDAgKiByY19jZmdfLnNzX251bWJlcl9sYXllcnMpIHsKKyAgICAgICAgZm9yIChp
bnQgbGF5ZXIgPSAwOworICAgICAgICAgICAgIGxheWVyIDwgcmNfY2ZnXy5zc19udW1iZXJfbGF5
ZXJzICogcmNfY2ZnXy50c19udW1iZXJfbGF5ZXJzOworICAgICAgICAgICAgIGxheWVyKyspCisg
ICAgICAgICAgcmNfY2ZnXy5sYXllcl90YXJnZXRfYml0cmF0ZVtsYXllcl0gKj0gMjsKKyAgICAg
ICAgcmNfY2ZnXy50YXJnZXRfYmFuZHdpZHRoICo9IDI7CisgICAgICAgIHJjX2FwaV8tPlVwZGF0
ZVJhdGVDb250cm9sKHJjX2NmZ18pOworICAgICAgfSBlbHNlIGlmIChmcmFtZV9pbmZvLmZyYW1l
X2lkID09IDQwMCAqIHJjX2NmZ18uc3NfbnVtYmVyX2xheWVycykgeworICAgICAgICBmb3IgKGlu
dCBsYXllciA9IDA7CisgICAgICAgICAgICAgbGF5ZXIgPCByY19jZmdfLnNzX251bWJlcl9sYXll
cnMgKiByY19jZmdfLnRzX251bWJlcl9sYXllcnM7CisgICAgICAgICAgICAgbGF5ZXIrKykKKyAg
ICAgICAgICByY19jZmdfLmxheWVyX3RhcmdldF9iaXRyYXRlW2xheWVyXSAvPSA0OworICAgICAg
ICByY19jZmdfLnRhcmdldF9iYW5kd2lkdGggLz0gNDsKKyAgICAgICAgcmNfYXBpXy0+VXBkYXRl
UmF0ZUNvbnRyb2wocmNfY2ZnXyk7CisgICAgICB9CisgICAgICBmcmFtZV9wYXJhbXMuc3BhdGlh
bF9sYXllcl9pZCA9IGZyYW1lX2luZm8uc3BhdGlhbF9pZDsKKyAgICAgIGZyYW1lX3BhcmFtcy50
ZW1wb3JhbF9sYXllcl9pZCA9IGZyYW1lX2luZm8udGVtcG9yYWxfaWQ7CisgICAgICByY19hcGlf
LT5Db21wdXRlUVAoZnJhbWVfcGFyYW1zKTsKKyAgICAgIEFTU0VSVF9FUShyY19hcGlfLT5HZXRR
UCgpLCBmcmFtZV9pbmZvLmJhc2VfcSk7CisgICAgICBBU1NFUlRfRVEocmNfYXBpXy0+R2V0TG9v
cGZpbHRlckxldmVsKCksIGZyYW1lX2luZm8uZmlsdGVyX2xldmVsXyk7CisgICAgICByY19hcGlf
LT5Qb3N0RW5jb2RlVXBkYXRlKGZyYW1lX2luZm8uYnl0ZXNfdXNlZCk7CisgICAgfQorICB9CisK
KyBwcml2YXRlOgorICB2b2lkIFNldENvbmZpZ09uZUxheWVyKCkgeworICAgIHJjX2NmZ18ud2lk
dGggPSAxMjgwOworICAgIHJjX2NmZ18uaGVpZ2h0ID0gNzIwOworICAgIHJjX2NmZ18ubWF4X3F1
YW50aXplciA9IDUyOworICAgIHJjX2NmZ18ubWluX3F1YW50aXplciA9IDI7CisgICAgcmNfY2Zn
Xy50YXJnZXRfYmFuZHdpZHRoID0gMTAwMDsKKyAgICByY19jZmdfLmJ1Zl9pbml0aWFsX3N6ID0g
NjAwOworICAgIHJjX2NmZ18uYnVmX29wdGltYWxfc3ogPSA2MDA7CisgICAgcmNfY2ZnXy5idWZf
c3ogPSAxMDAwOworICAgIHJjX2NmZ18udW5kZXJzaG9vdF9wY3QgPSA1MDsKKyAgICByY19jZmdf
Lm92ZXJzaG9vdF9wY3QgPSA1MDsKKyAgICByY19jZmdfLm1heF9pbnRyYV9iaXRyYXRlX3BjdCA9
IDEwMDA7CisgICAgcmNfY2ZnXy5mcmFtZXJhdGUgPSAzMC4wOworICAgIHJjX2NmZ18uc3NfbnVt
YmVyX2xheWVycyA9IDE7CisgICAgcmNfY2ZnXy50c19udW1iZXJfbGF5ZXJzID0gMTsKKyAgICBy
Y19jZmdfLnNjYWxpbmdfZmFjdG9yX251bVswXSA9IDE7CisgICAgcmNfY2ZnXy5zY2FsaW5nX2Zh
Y3Rvcl9kZW5bMF0gPSAxOworICAgIHJjX2NmZ18ubGF5ZXJfdGFyZ2V0X2JpdHJhdGVbMF0gPSAx
MDAwOworICAgIHJjX2NmZ18ubWF4X3F1YW50aXplcnNbMF0gPSA1MjsKKyAgICByY19jZmdfLm1p
bl9xdWFudGl6ZXJzWzBdID0gMjsKKyAgfQorCisgIHZvaWQgU2V0Q29uZmlnU1ZDKCkgeworICAg
IHJjX2NmZ18ud2lkdGggPSAxMjgwOworICAgIHJjX2NmZ18uaGVpZ2h0ID0gNzIwOworICAgIHJj
X2NmZ18ubWF4X3F1YW50aXplciA9IDU2OworICAgIHJjX2NmZ18ubWluX3F1YW50aXplciA9IDI7
CisgICAgcmNfY2ZnXy50YXJnZXRfYmFuZHdpZHRoID0gMTYwMDsKKyAgICByY19jZmdfLmJ1Zl9p
bml0aWFsX3N6ID0gNTAwOworICAgIHJjX2NmZ18uYnVmX29wdGltYWxfc3ogPSA2MDA7CisgICAg
cmNfY2ZnXy5idWZfc3ogPSAxMDAwOworICAgIHJjX2NmZ18udW5kZXJzaG9vdF9wY3QgPSA1MDsK
KyAgICByY19jZmdfLm92ZXJzaG9vdF9wY3QgPSA1MDsKKyAgICByY19jZmdfLm1heF9pbnRyYV9i
aXRyYXRlX3BjdCA9IDkwMDsKKyAgICByY19jZmdfLmZyYW1lcmF0ZSA9IDMwLjA7CisgICAgcmNf
Y2ZnXy5zc19udW1iZXJfbGF5ZXJzID0gMzsKKyAgICByY19jZmdfLnRzX251bWJlcl9sYXllcnMg
PSAzOworCisgICAgcmNfY2ZnXy5zY2FsaW5nX2ZhY3Rvcl9udW1bMF0gPSAxOworICAgIHJjX2Nm
Z18uc2NhbGluZ19mYWN0b3JfZGVuWzBdID0gNDsKKyAgICByY19jZmdfLnNjYWxpbmdfZmFjdG9y
X251bVsxXSA9IDI7CisgICAgcmNfY2ZnXy5zY2FsaW5nX2ZhY3Rvcl9kZW5bMV0gPSA0OworICAg
IHJjX2NmZ18uc2NhbGluZ19mYWN0b3JfbnVtWzJdID0gNDsKKyAgICByY19jZmdfLnNjYWxpbmdf
ZmFjdG9yX2RlblsyXSA9IDQ7CisKKyAgICByY19jZmdfLnRzX3JhdGVfZGVjaW1hdG9yWzBdID0g
NDsKKyAgICByY19jZmdfLnRzX3JhdGVfZGVjaW1hdG9yWzFdID0gMjsKKyAgICByY19jZmdfLnRz
X3JhdGVfZGVjaW1hdG9yWzJdID0gMTsKKworICAgIHJjX2NmZ18ubGF5ZXJfdGFyZ2V0X2JpdHJh
dGVbMF0gPSAxMDA7CisgICAgcmNfY2ZnXy5sYXllcl90YXJnZXRfYml0cmF0ZVsxXSA9IDE0MDsK
KyAgICByY19jZmdfLmxheWVyX3RhcmdldF9iaXRyYXRlWzJdID0gMjAwOworICAgIHJjX2NmZ18u
bGF5ZXJfdGFyZ2V0X2JpdHJhdGVbM10gPSAyNTA7CisgICAgcmNfY2ZnXy5sYXllcl90YXJnZXRf
Yml0cmF0ZVs0XSA9IDM1MDsKKyAgICByY19jZmdfLmxheWVyX3RhcmdldF9iaXRyYXRlWzVdID0g
NTAwOworICAgIHJjX2NmZ18ubGF5ZXJfdGFyZ2V0X2JpdHJhdGVbNl0gPSA0NTA7CisgICAgcmNf
Y2ZnXy5sYXllcl90YXJnZXRfYml0cmF0ZVs3XSA9IDYzMDsKKyAgICByY19jZmdfLmxheWVyX3Rh
cmdldF9iaXRyYXRlWzhdID0gOTAwOworCisgICAgZm9yIChpbnQgc2wgPSAwOyBzbCA8IHJjX2Nm
Z18uc3NfbnVtYmVyX2xheWVyczsgKytzbCkgeworICAgICAgZm9yIChpbnQgdGwgPSAwOyB0bCA8
IHJjX2NmZ18udHNfbnVtYmVyX2xheWVyczsgKyt0bCkgeworICAgICAgICBjb25zdCBpbnQgaSA9
IHNsICogcmNfY2ZnXy50c19udW1iZXJfbGF5ZXJzICsgdGw7CisgICAgICAgIHJjX2NmZ18ubWF4
X3F1YW50aXplcnNbaV0gPSA1NjsKKyAgICAgICAgcmNfY2ZnXy5taW5fcXVhbnRpemVyc1tpXSA9
IDI7CisgICAgICB9CisgICAgfQorICB9CisKKyAgc3RkOjp1bmlxdWVfcHRyPGxpYnZweDo6VlA5
UmF0ZUNvbnRyb2xSVEM+IHJjX2FwaV87CisgIGxpYnZweDo6VlA5UmF0ZUNvbnRyb2xSdGNDb25m
aWcgcmNfY2ZnXzsKK307CisKK1RFU1RfRihSY0ludGVyZmFjZVRlc3QsIE9uZUxheWVyKSB7IFJ1
bk9uZUxheWVyKCk7IH0KKworVEVTVF9GKFJjSW50ZXJmYWNlVGVzdCwgU1ZDKSB7IFJ1blNWQygp
OyB9Cit9ICAvLyBuYW1lc3BhY2UKKworaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KSB7
CisgIDo6dGVzdGluZzo6SW5pdEdvb2dsZVRlc3QoJmFyZ2MsIGFyZ3YpOworICByZXR1cm4gUlVO
X0FMTF9URVNUUygpOworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3JlYWx0aW1lX3Rl
c3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvcmVhbHRpbWVfdGVzdC5jYwppbmRleCA2M2YxYWMzYzI5
NTdkMGNkMGU2ZGQzYTU2ZTZmMGQ1NGNkYTQzZmNiLi42M2E1MzQ3ZDk5MTBjYzAzODNiZTlkMGYx
N2EwMGFkY2JlNDBjZTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvcmVhbHRpbWVfdGVz
dC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvcmVhbHRpbWVfdGVzdC5jYwpAQCAtMjQsMTUgKzI0
LDE1IEBAIGNsYXNzIFJlYWx0aW1lVGVzdAogICAgICAgcHVibGljIDo6bGlidnB4X3Rlc3Q6OkNv
ZGVjVGVzdFdpdGhQYXJhbTxsaWJ2cHhfdGVzdDo6VGVzdE1vZGU+IHsKICBwcm90ZWN0ZWQ6CiAg
IFJlYWx0aW1lVGVzdCgpIDogRW5jb2RlclRlc3QoR0VUX1BBUkFNKDApKSwgZnJhbWVfcGFja2V0
c18oMCkge30KLSAgdmlydHVhbCB+UmVhbHRpbWVUZXN0KCkge30KKyAgflJlYWx0aW1lVGVzdCgp
IG92ZXJyaWRlIHt9CiAKLSAgdmlydHVhbCB2b2lkIFNldFVwKCkgeworICB2b2lkIFNldFVwKCkg
b3ZlcnJpZGUgewogICAgIEluaXRpYWxpemVDb25maWcoKTsKICAgICBjZmdfLmdfbGFnX2luX2Zy
YW1lcyA9IDA7CiAgICAgU2V0TW9kZSg6OmxpYnZweF90ZXN0OjprUmVhbFRpbWUpOwogICB9CiAK
LSAgdmlydHVhbCB2b2lkIEJlZ2luUGFzc0hvb2sodW5zaWduZWQgaW50IC8qcGFzcyovKSB7Cisg
IHZvaWQgQmVnaW5QYXNzSG9vayh1bnNpZ25lZCBpbnQgLypwYXNzKi8pIG92ZXJyaWRlIHsKICAg
ICAvLyBUT0RPKHRvbWZpbmVnYW4pOiBXZSdyZSBjaGFuZ2luZyB0aGUgcGFzcyB2YWx1ZSBoZXJl
IHRvIG1ha2Ugc3VyZQogICAgIC8vIHdlIGdldCBmcmFtZXMgd2hlbiByZWFsIHRpbWUgbW9kZSBp
cyBjb21iaW5lZCB3aXRoIHxnX3Bhc3N8IHNldCB0bwogICAgIC8vIFZQWF9SQ19GSVJTVF9QQVNT
LiBUaGlzIGlzIG5lY2Vzc2FyeSBiZWNhdXNlIEVuY29kZXJUZXN0OjpSdW5Mb29wKCkgc2V0cwpA
QCAtNDAsNyArNDAsMTUgQEAgY2xhc3MgUmVhbHRpbWVUZXN0CiAgICAgLy8gd2hpY2ggb3ZlcnJp
ZGVzIHRoZSBvbmUgc3BlY2lmaWVkIGluIFNldFVwKCkgYWJvdmUuCiAgICAgY2ZnXy5nX3Bhc3Mg
PSBWUFhfUkNfRklSU1RfUEFTUzsKICAgfQotICB2aXJ0dWFsIHZvaWQgRnJhbWVQa3RIb29rKGNv
bnN0IHZweF9jb2RlY19jeF9wa3RfdCAqIC8qcGt0Ki8pIHsKKworICB2b2lkIFByZUVuY29kZUZy
YW1lSG9vayg6OmxpYnZweF90ZXN0OjpWaWRlb1NvdXJjZSAqdmlkZW8sCisgICAgICAgICAgICAg
ICAgICAgICAgICAgIDo6bGlidnB4X3Rlc3Q6OkVuY29kZXIgKmVuY29kZXIpIG92ZXJyaWRlIHsK
KyAgICBpZiAodmlkZW8tPmZyYW1lKCkgPT0gMCkgeworICAgICAgZW5jb2Rlci0+Q29udHJvbChW
UDhFX1NFVF9DUFVVU0VELCA4KTsKKyAgICB9CisgIH0KKworICB2b2lkIEZyYW1lUGt0SG9vayhj
b25zdCB2cHhfY29kZWNfY3hfcGt0X3QgKiAvKnBrdCovKSBvdmVycmlkZSB7CiAgICAgZnJhbWVf
cGFja2V0c18rKzsKICAgfQogCkBAIC01NSw5ICs2MywxNyBAQCBURVNUX1AoUmVhbHRpbWVUZXN0
LCBSZWFsdGltZUZpcnN0UGFzc1Byb2R1Y2VzRnJhbWVzKSB7CiAgIEVYUEVDVF9FUShrRnJhbWVz
VG9FbmNvZGUsIGZyYW1lX3BhY2tldHNfKTsKIH0KIAotVlA4X0lOU1RBTlRJQVRFX1RFU1RfQ0FT
RShSZWFsdGltZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFs
dWVzKDo6bGlidnB4X3Rlc3Q6OmtSZWFsVGltZSkpOwotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FT
RShSZWFsdGltZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFs
dWVzKDo6bGlidnB4X3Rlc3Q6OmtSZWFsVGltZSkpOworVEVTVF9QKFJlYWx0aW1lVGVzdCwgSW50
ZWdlck92ZXJmbG93KSB7CisgIDo6bGlidnB4X3Rlc3Q6OlJhbmRvbVZpZGVvU291cmNlIHZpZGVv
OworICB2aWRlby5TZXRTaXplKDgwMCwgNDgwKTsKKyAgdmlkZW8uc2V0X2xpbWl0KDIwKTsKKyAg
Y2ZnXy5yY190YXJnZXRfYml0cmF0ZSA9IDE0MDAwMDAwMDsKKyAgQVNTRVJUX05PX0ZBVEFMX0ZB
SUxVUkUoUnVuTG9vcCgmdmlkZW8pKTsKK30KKworVlA4X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUo
UmVhbHRpbWVUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXMoOjpsaWJ2cHhfdGVzdDo6a1JlYWxUaW1lKSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9TVUlU
RShSZWFsdGltZVRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZh
bHVlcyg6OmxpYnZweF90ZXN0OjprUmVhbFRpbWUpKTsKIAogfSAgLy8gbmFtZXNwYWNlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvcmVzaXplX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qv
cmVzaXplX3Rlc3QuY2MKaW5kZXggNWYzMjNkYjVhYmIzYzQxYjIxMjY2ZTc4ZTkzYWY2NWI2YWI5
OTcwOS4uYzU3MTcwZmY5Yjc4Yjc3MmNiMWFlNGJiZDg4YjNkOGVlMWJmMGI5NyAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L3Jlc2l6ZV90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9y
ZXNpemVfdGVzdC5jYwpAQCAtMjcxLDggKzI3MSw4IEBAIGNsYXNzIFJlc2l6aW5nVmlkZW9Tb3Vy
Y2UgOiBwdWJsaWMgOjpsaWJ2cHhfdGVzdDo6RHVtbXlWaWRlb1NvdXJjZSB7CiAgcHJvdGVjdGVk
OgogICB2aXJ0dWFsIHZvaWQgTmV4dCgpIHsKICAgICArK2ZyYW1lXzsKLSAgICB1bnNpZ25lZCBp
bnQgd2lkdGg7Ci0gICAgdW5zaWduZWQgaW50IGhlaWdodDsKKyAgICB1bnNpZ25lZCBpbnQgd2lk
dGggPSAwOworICAgIHVuc2lnbmVkIGludCBoZWlnaHQgPSAwOwogICAgIFNjYWxlRm9yRnJhbWVO
dW1iZXIoZnJhbWVfLCBrSW5pdGlhbFdpZHRoLCBrSW5pdGlhbEhlaWdodCwgJndpZHRoLCAmaGVp
Z2h0LAogICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ19jb2RlY18sIHNtYWxsZXJfd2lkdGhf
bGFyZ2VyX3NpemVfKTsKICAgICBTZXRTaXplKHdpZHRoLCBoZWlnaHQpOwpAQCAtMzUwLDcgKzM1
MCw3IEBAIGNsYXNzIFJlc2l6ZUludGVybmFsVGVzdCA6IHB1YmxpYyBSZXNpemVUZXN0IHsKICBw
cm90ZWN0ZWQ6CiAjaWYgV1JJVEVfQ09NUFJFU1NFRF9TVFJFQU0KICAgUmVzaXplSW50ZXJuYWxU
ZXN0KCkKLSAgICAgIDogUmVzaXplVGVzdCgpLCBmcmFtZTBfcHNucl8oMC4wKSwgb3V0ZmlsZV8o
TlVMTCksIG91dF9mcmFtZXNfKDApIHt9CisgICAgICA6IFJlc2l6ZVRlc3QoKSwgZnJhbWUwX3Bz
bnJfKDAuMCksIG91dGZpbGVfKG51bGxwdHIpLCBvdXRfZnJhbWVzXygwKSB7fQogI2Vsc2UKICAg
UmVzaXplSW50ZXJuYWxUZXN0KCkgOiBSZXNpemVUZXN0KCksIGZyYW1lMF9wc25yXygwLjApIHt9
CiAjZW5kaWYKQEAgLTM2OSw3ICszNjksNyBAQCBjbGFzcyBSZXNpemVJbnRlcm5hbFRlc3QgOiBw
dWJsaWMgUmVzaXplVGVzdCB7CiAgICAgICBpZiAoIWZzZWVrKG91dGZpbGVfLCAwLCBTRUVLX1NF
VCkpCiAgICAgICAgIHdyaXRlX2l2Zl9maWxlX2hlYWRlcigmY2ZnXywgb3V0X2ZyYW1lc18sIG91
dGZpbGVfKTsKICAgICAgIGZjbG9zZShvdXRmaWxlXyk7Ci0gICAgICBvdXRmaWxlXyA9IE5VTEw7
CisgICAgICBvdXRmaWxlXyA9IG51bGxwdHI7CiAgICAgfQogI2VuZGlmCiAgIH0KQEAgLTYxMCwx
MSArNjEwLDExIEBAIFRFU1RfUChSZXNpemVSZWFsdGltZVRlc3QsIERJU0FCTEVEX1Rlc3RFeHRl
cm5hbFJlc2l6ZVNtYWxsZXJXaWR0aEJpZ2dlclNpemUpIHsKIC8vIFJ1biBhdCBsb3cgYml0cmF0
ZSwgd2l0aCByZXNpemVfYWxsb3dlZCA9IDEsIGFuZCB2ZXJpZnkgdGhhdCB3ZSBnZXQKIC8vIG9u
ZSByZXNpemUgZG93biBldmVudC4KIFRFU1RfUChSZXNpemVSZWFsdGltZVRlc3QsIFRlc3RJbnRl
cm5hbFJlc2l6ZURvd24pIHsKLSAgOjpsaWJ2cHhfdGVzdDo6STQyMFZpZGVvU291cmNlIHZpZGVv
KCJoYW50cm9fY29sbGFnZV93MzUyaDI4OC55dXYiLCAzNTIsIDI4OCwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDMwLCAxLCAwLCAyOTkpOworICA6OmxpYnZweF90ZXN0
OjpJNDIwVmlkZW9Tb3VyY2UgdmlkZW8oIm5pa2xhc182NDBfNDgwXzMwLnl1diIsIDY0MCwgNDgw
LCAzMCwgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIDI5OSk7
CiAgIERlZmF1bHRDb25maWcoKTsKLSAgY2ZnXy5nX3cgPSAzNTI7Ci0gIGNmZ18uZ19oID0gMjg4
OworICBjZmdfLmdfdyA9IDY0MDsKKyAgY2ZnXy5nX2ggPSA0ODA7CiAgIGNoYW5nZV9iaXRyYXRl
XyA9IGZhbHNlOwogICBtaXNtYXRjaF9wc25yXyA9IDAuMDsKICAgbWlzbWF0Y2hfbmZyYW1lc18g
PSAwOwpAQCAtNjQ4LDExICs2NDgsMTEgQEAgVEVTVF9QKFJlc2l6ZVJlYWx0aW1lVGVzdCwgVGVz
dEludGVybmFsUmVzaXplRG93bikgewogLy8gU3RhcnQgYXQgbG93IHRhcmdldCBiaXRyYXRlLCBy
YWlzZSB0aGUgYml0cmF0ZSBpbiB0aGUgbWlkZGxlIG9mIHRoZSBjbGlwLAogLy8gc2NhbGluZy11
cCBzaG91bGQgb2NjdXIgYWZ0ZXIgYml0cmF0ZSBjaGFuZ2VkLgogVEVTVF9QKFJlc2l6ZVJlYWx0
aW1lVGVzdCwgVGVzdEludGVybmFsUmVzaXplRG93blVwQ2hhbmdlQml0UmF0ZSkgewotICA6Omxp
YnZweF90ZXN0OjpJNDIwVmlkZW9Tb3VyY2UgdmlkZW8oImhhbnRyb19jb2xsYWdlX3czNTJoMjg4
Lnl1diIsIDM1MiwgMjg4LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
MzAsIDEsIDAsIDM1OSk7CisgIDo6bGlidnB4X3Rlc3Q6Okk0MjBWaWRlb1NvdXJjZSB2aWRlbygi
bmlrbGFzXzY0MF80ODBfMzAueXV2IiwgNjQwLCA0ODAsIDMwLCAxLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgMCwgNDAwKTsKICAgRGVmYXVsdENvbmZpZygpOwotICBj
ZmdfLmdfdyA9IDM1MjsKLSAgY2ZnXy5nX2ggPSAyODg7CisgIGNmZ18uZ193ID0gNjQwOworICBj
ZmdfLmdfaCA9IDQ4MDsKICAgY2hhbmdlX2JpdHJhdGVfID0gdHJ1ZTsKICAgbWlzbWF0Y2hfcHNu
cl8gPSAwLjA7CiAgIG1pc21hdGNoX25mcmFtZXNfID0gMDsKQEAgLTY3MiwxMSArNjcyLDExIEBA
IFRFU1RfUChSZXNpemVSZWFsdGltZVRlc3QsIFRlc3RJbnRlcm5hbFJlc2l6ZURvd25VcENoYW5n
ZUJpdFJhdGUpIHsKICAgICBBU1NFUlRfRVEoaW5mby0+aCwgR2V0RnJhbWVIZWlnaHQoaWR4KSk7
CiAgICAgaWYgKGluZm8tPncgIT0gbGFzdF93IHx8IGluZm8tPmggIT0gbGFzdF9oKSB7CiAgICAg
ICByZXNpemVfY291bnQrKzsKLSAgICAgIGlmIChyZXNpemVfY291bnQgPT0gMSkgeworICAgICAg
aWYgKHJlc2l6ZV9jb3VudCA8PSAyKSB7CiAgICAgICAgIC8vIFZlcmlmeSB0aGF0IHJlc2l6ZSBk
b3duIG9jY3Vycy4KICAgICAgICAgQVNTRVJUX0xUKGluZm8tPncsIGxhc3Rfdyk7CiAgICAgICAg
IEFTU0VSVF9MVChpbmZvLT5oLCBsYXN0X2gpOwotICAgICAgfSBlbHNlIGlmIChyZXNpemVfY291
bnQgPT0gMikgeworICAgICAgfSBlbHNlIGlmIChyZXNpemVfY291bnQgPiAyKSB7CiAgICAgICAg
IC8vIFZlcmlmeSB0aGF0IHJlc2l6ZSB1cCBvY2N1cnMuCiAgICAgICAgIEFTU0VSVF9HVChpbmZv
LT53LCBsYXN0X3cpOwogICAgICAgICBBU1NFUlRfR1QoaW5mby0+aCwgbGFzdF9oKTsKQEAgLTY4
Nyw4ICs2ODcsOCBAQCBURVNUX1AoUmVzaXplUmVhbHRpbWVUZXN0LCBUZXN0SW50ZXJuYWxSZXNp
emVEb3duVXBDaGFuZ2VCaXRSYXRlKSB7CiAgIH0KIAogI2lmIENPTkZJR19WUDlfREVDT0RFUgot
ICAvLyBWZXJpZnkgdGhhdCB3ZSBnZXQgMiByZXNpemUgZXZlbnRzIGluIHRoaXMgdGVzdC4KLSAg
QVNTRVJUX0VRKHJlc2l6ZV9jb3VudCwgMikgPDwgIlJlc2l6aW5nIHNob3VsZCBvY2N1ciB0d2lj
ZS4iOworICAvLyBWZXJpZnkgdGhhdCB3ZSBnZXQgNCByZXNpemUgZXZlbnRzIGluIHRoaXMgdGVz
dC4KKyAgQVNTRVJUX0VRKHJlc2l6ZV9jb3VudCwgNCkgPDwgIlJlc2l6aW5nIHNob3VsZCBvY2N1
ciB0d2ljZS4iOwogICBFWFBFQ1RfRVEoc3RhdGljX2Nhc3Q8dW5zaWduZWQgaW50PigwKSwgR2V0
TWlzbWF0Y2hGcmFtZXMoKSk7CiAjZWxzZQogICBwcmludGYoIldhcm5pbmc6IFZQOSBkZWNvZGVy
IHVuYXZhaWxhYmxlLCB1bmFibGUgdG8gY2hlY2sgcmVzaXplIGNvdW50IVxuIik7CkBAIC03MDUs
NyArNzA1LDcgQEAgY2xhc3MgUmVzaXplQ3NwVGVzdCA6IHB1YmxpYyBSZXNpemVUZXN0IHsKICBw
cm90ZWN0ZWQ6CiAjaWYgV1JJVEVfQ09NUFJFU1NFRF9TVFJFQU0KICAgUmVzaXplQ3NwVGVzdCgp
Ci0gICAgICA6IFJlc2l6ZVRlc3QoKSwgZnJhbWUwX3BzbnJfKDAuMCksIG91dGZpbGVfKE5VTEwp
LCBvdXRfZnJhbWVzXygwKSB7fQorICAgICAgOiBSZXNpemVUZXN0KCksIGZyYW1lMF9wc25yXygw
LjApLCBvdXRmaWxlXyhudWxscHRyKSwgb3V0X2ZyYW1lc18oMCkge30KICNlbHNlCiAgIFJlc2l6
ZUNzcFRlc3QoKSA6IFJlc2l6ZVRlc3QoKSwgZnJhbWUwX3BzbnJfKDAuMCkge30KICNlbmRpZgpA
QCAtNzI0LDcgKzcyNCw3IEBAIGNsYXNzIFJlc2l6ZUNzcFRlc3QgOiBwdWJsaWMgUmVzaXplVGVz
dCB7CiAgICAgICBpZiAoIWZzZWVrKG91dGZpbGVfLCAwLCBTRUVLX1NFVCkpCiAgICAgICAgIHdy
aXRlX2l2Zl9maWxlX2hlYWRlcigmY2ZnXywgb3V0X2ZyYW1lc18sIG91dGZpbGVfKTsKICAgICAg
IGZjbG9zZShvdXRmaWxlXyk7Ci0gICAgICBvdXRmaWxlXyA9IE5VTEw7CisgICAgICBvdXRmaWxl
XyA9IG51bGxwdHI7CiAgICAgfQogI2VuZGlmCiAgIH0KQEAgLTc5MywxNCArNzkzLDE0IEBAIFRF
U1RfUChSZXNpemVDc3BUZXN0LCBUZXN0UmVzaXplQ3NwV29ya3MpIHsKICAgQVNTRVJUX05PX0ZB
VEFMX0ZBSUxVUkUoUnVuTG9vcCgmdmlkZW8pKTsKIH0KIAotVlA4X0lOU1RBTlRJQVRFX1RFU1Rf
Q0FTRShSZXNpemVUZXN0LCBPTkVfUEFTU19URVNUX01PREVTKTsKLVZQOV9JTlNUQU5USUFURV9U
RVNUX0NBU0UoUmVzaXplVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a1JlYWxUaW1lKSk7Ci1WUDlfSU5TVEFOVElBVEVfVEVT
VF9DQVNFKFJlc2l6ZUludGVybmFsVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a09uZVBhc3NCZXN0KSk7Ci1WUDlfSU5TVEFO
VElBVEVfVEVTVF9DQVNFKFJlc2l6ZVJlYWx0aW1lVGVzdCwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a1JlYWxUaW1lKSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSg1LCA5KSk7Ci1WUDlfSU5TVEFO
VElBVEVfVEVTVF9DQVNFKFJlc2l6ZUNzcFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
IDo6dGVzdGluZzo6VmFsdWVzKDo6bGlidnB4X3Rlc3Q6OmtSZWFsVGltZSkpOworVlA4X0lOU1RB
TlRJQVRFX1RFU1RfU1VJVEUoUmVzaXplVGVzdCwgT05FX1BBU1NfVEVTVF9NT0RFUyk7CitWUDlf
SU5TVEFOVElBVEVfVEVTVF9TVUlURShSZXNpemVUZXN0LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a1JlYWxUaW1lKSk7CitWUDlf
SU5TVEFOVElBVEVfVEVTVF9TVUlURShSZXNpemVJbnRlcm5hbFRlc3QsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0OjprT25lUGFzc0Jl
c3QpKTsKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKFJlc2l6ZVJlYWx0aW1lVGVzdCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKDo6bGlidnB4X3Rlc3Q6
OmtSZWFsVGltZSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdl
KDUsIDkpKTsKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKFJlc2l6ZUNzcFRlc3QsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZweF90ZXN0Ojpr
UmVhbFRpbWUpKTsKIH0gIC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0
L3Jlc2l6ZV91dGlsLnNoIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3Jlc2l6ZV91dGlsLnNoCmluZGV4IDVl
NDcyNzE2ZGEzNTg5OGRhNzQ0MWRhNGNjYmYxMTRhZjVlMzg4MjIuLmE5YjBmODFlMmI4YzdmZDg1
ZGEyMzczMTc2ODFjZmI3ZjQ4ZDViZjYgMTAwNzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9yZXNp
emVfdXRpbC5zaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvcmVzaXplX3V0aWwuc2gKQEAgLTQxLDcg
KzQxLDcgQEAgcmVzaXplX3V0aWwoKSB7CiAgICAgZXZhbCAiJHtWUFhfVEVTVF9QUkVGSVh9IiAi
JHtyZXNpemVyfSIgIiR7WVVWX1JBV19JTlBVVH0iIFwKICAgICAgICAgIiR7WVVWX1JBV19JTlBV
VF9XSURUSH14JHtZVVZfUkFXX0lOUFVUX0hFSUdIVH0iIFwKICAgICAgICAgIiR7dGFyZ2V0X2Rp
bWVuc2lvbnN9IiAiJHtvdXRwdXRfZmlsZX0iICR7ZnJhbWVzX3RvX3Jlc2l6ZX0gXAotICAgICAg
ICAke2Rldm51bGx9CisgICAgICAgICR7ZGV2bnVsbH0gfHwgcmV0dXJuIDEKIAogICAgIFsgLWUg
IiR7b3V0cHV0X2ZpbGV9IiBdIHx8IHJldHVybiAxCiAgIGZpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rlc3Qvc2FkX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvc2FkX3Rlc3QuY2MKaW5kZXgg
ZTM5Nzc1Y2M0NjI4YWY1NDkyNzNlNjdlMjhjYmI3NjRkN2Y2ZjJlNy4uZWUxMGE0NjM4OTE0OWIy
MzU0NjEyMTE0YWZlMWU0M2ZjNTQwZjEzOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3Nh
ZF90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zYWRfdGVzdC5jYwpAQCAtMjYsNiArMjYs
MTAgQEAKICNpbmNsdWRlICJ2cHhfcG9ydHMvbXN2Yy5oIgogI2luY2x1ZGUgInZweF9wb3J0cy92
cHhfdGltZXIuaCIKIAorLy8gY29uc3RbZXhwcl0gc2hvdWxkIGJlIHN1ZmZpY2llbnQgZm9yIERF
Q0xBUkVfQUxJR05FRCBidXQgZWFybHkKKy8vIGltcGxlbWVudGF0aW9ucyBvZiBjKysxMSBhcHBl
YXIgdG8gaGF2ZSBzb21lIGlzc3VlcyB3aXRoIGl0LgorI2RlZmluZSBrRGF0YUFsaWdubWVudCAz
MgorCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgRnVuY3Rpb24+CiBzdHJ1Y3QgVGVzdFBhcmFtcyB7CiAg
IFRlc3RQYXJhbXMoaW50IHcsIGludCBoLCBGdW5jdGlvbiBmLCBpbnQgYmQgPSAtMSkKQEAgLTk5
LDE3ICsxMDMsMTcgQEAgY2xhc3MgU0FEVGVzdEJhc2UgOiBwdWJsaWMgOjp0ZXN0aW5nOjpUZXN0
V2l0aFBhcmFtPFBhcmFtVHlwZT4gewogCiAgIHZpcnR1YWwgdm9pZCBUZWFyRG93bigpIHsKICAg
ICB2cHhfZnJlZShzb3VyY2VfZGF0YThfKTsKLSAgICBzb3VyY2VfZGF0YThfID0gTlVMTDsKKyAg
ICBzb3VyY2VfZGF0YThfID0gbnVsbHB0cjsKICAgICB2cHhfZnJlZShyZWZlcmVuY2VfZGF0YThf
KTsKLSAgICByZWZlcmVuY2VfZGF0YThfID0gTlVMTDsKKyAgICByZWZlcmVuY2VfZGF0YThfID0g
bnVsbHB0cjsKICAgICB2cHhfZnJlZShzZWNvbmRfcHJlZDhfKTsKLSAgICBzZWNvbmRfcHJlZDhf
ID0gTlVMTDsKKyAgICBzZWNvbmRfcHJlZDhfID0gbnVsbHB0cjsKICAgICB2cHhfZnJlZShzb3Vy
Y2VfZGF0YTE2Xyk7Ci0gICAgc291cmNlX2RhdGExNl8gPSBOVUxMOworICAgIHNvdXJjZV9kYXRh
MTZfID0gbnVsbHB0cjsKICAgICB2cHhfZnJlZShyZWZlcmVuY2VfZGF0YTE2Xyk7Ci0gICAgcmVm
ZXJlbmNlX2RhdGExNl8gPSBOVUxMOworICAgIHJlZmVyZW5jZV9kYXRhMTZfID0gbnVsbHB0cjsK
ICAgICB2cHhfZnJlZShzZWNvbmRfcHJlZDE2Xyk7Ci0gICAgc2Vjb25kX3ByZWQxNl8gPSBOVUxM
OworICAgIHNlY29uZF9wcmVkMTZfID0gbnVsbHB0cjsKIAogICAgIGxpYnZweF90ZXN0OjpDbGVh
clN5c3RlbVN0YXRlKCk7CiAgIH0KQEAgLTExNyw5ICsxMjEsNiBAQCBjbGFzcyBTQURUZXN0QmFz
ZSA6IHB1YmxpYyA6OnRlc3Rpbmc6OlRlc3RXaXRoUGFyYW08UGFyYW1UeXBlPiB7CiAgcHJvdGVj
dGVkOgogICAvLyBIYW5kbGUgYmxvY2tzIHVwIHRvIDQgYmxvY2tzIDY0eDY0IHdpdGggc3RyaWRl
IHVwIHRvIDEyOAogICAvLyBjcmJ1Zy5jb20vd2VibS8xNjYwCi0gIC8vIGNvbnN0W2V4cHJdIHNo
b3VsZCBiZSBzdWZmaWNpZW50IGZvciBERUNMQVJFX0FMSUdORUQgYnV0IGVhcmx5Ci0gIC8vIGlt
cGxlbWVudGF0aW9ucyBvZiBjKysxMSBhcHBlYXIgdG8gaGF2ZSBzb21lIGlzc3VlcyB3aXRoIGl0
LgotICBlbnVtIHsga0RhdGFBbGlnbm1lbnQgPSAzMiB9OwogICBzdGF0aWMgY29uc3QgaW50IGtE
YXRhQmxvY2tTaXplID0gNjQgKiAxMjg7CiAgIHN0YXRpYyBjb25zdCBpbnQga0RhdGFCdWZmZXJT
aXplID0gNCAqIGtEYXRhQmxvY2tTaXplOwogCkBAIC02MjgsNyArNjI5LDcgQEAgY29uc3QgU2Fk
TXhOUGFyYW0gY190ZXN0c1tdID0gewogICBTYWRNeE5QYXJhbSg0LCA0LCAmdnB4X2hpZ2hiZF9z
YWQ0eDRfYywgMTIpLAogI2VuZGlmICAvLyBDT05GSUdfVlA5X0hJR0hCSVRERVBUSAogfTsKLUlO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEMsIFNBRFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oY190
ZXN0cykpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKEMsIFNBRFRlc3QsIDo6dGVzdGluZzo6
VmFsdWVzSW4oY190ZXN0cykpOwogCiBjb25zdCBTYWRNeE5BdmdQYXJhbSBhdmdfY190ZXN0c1td
ID0gewogICBTYWRNeE5BdmdQYXJhbSg2NCwgNjQsICZ2cHhfc2FkNjR4NjRfYXZnX2MpLApAQCAt
Njg2LDcgKzY4Nyw3IEBAIGNvbnN0IFNhZE14TkF2Z1BhcmFtIGF2Z19jX3Rlc3RzW10gPSB7CiAg
IFNhZE14TkF2Z1BhcmFtKDQsIDQsICZ2cHhfaGlnaGJkX3NhZDR4NF9hdmdfYywgMTIpLAogI2Vu
ZGlmICAvLyBDT05GSUdfVlA5X0hJR0hCSVRERVBUSAogfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FT
RV9QKEMsIFNBRGF2Z1Rlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oYXZnX2NfdGVzdHMpKTsKK0lO
U1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDLCBTQURhdmdUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0lu
KGF2Z19jX3Rlc3RzKSk7CiAKIGNvbnN0IFNhZE14Tng0UGFyYW0geDRkX2NfdGVzdHNbXSA9IHsK
ICAgU2FkTXhOeDRQYXJhbSg2NCwgNjQsICZ2cHhfc2FkNjR4NjR4NGRfYyksCkBAIC03NDQsNyAr
NzQ1LDcgQEAgY29uc3QgU2FkTXhOeDRQYXJhbSB4NGRfY190ZXN0c1tdID0gewogICBTYWRNeE54
NFBhcmFtKDQsIDQsICZ2cHhfaGlnaGJkX3NhZDR4NHg0ZF9jLCAxMiksCiAjZW5kaWYgIC8vIENP
TkZJR19WUDlfSElHSEJJVERFUFRICiB9OwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoQywgU0FE
eDRUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKHg0ZF9jX3Rlc3RzKSk7CitJTlNUQU5USUFURV9U
RVNUX1NVSVRFX1AoQywgU0FEeDRUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKHg0ZF9jX3Rlc3Rz
KSk7CiAKIC8vIFRPRE8oYW5naWViaXJkKTogaW1wbGVtZW50IHRoZSBtYXJrZWQtZG93biBzYWQg
ZnVuY3Rpb25zCiBjb25zdCBTYWRNeE54OFBhcmFtIHg4X2NfdGVzdHNbXSA9IHsKQEAgLTc2Miw3
ICs3NjMsNyBAQCBjb25zdCBTYWRNeE54OFBhcmFtIHg4X2NfdGVzdHNbXSA9IHsKICAgLy8gU2Fk
TXhOeDhQYXJhbSg0LCA4LCAmdnB4X3NhZDR4OHg4X2MpLAogICBTYWRNeE54OFBhcmFtKDQsIDQs
ICZ2cHhfc2FkNHg0eDhfYyksCiB9OwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoQywgU0FEeDhU
ZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKHg4X2NfdGVzdHMpKTsKK0lOU1RBTlRJQVRFX1RFU1Rf
U1VJVEVfUChDLCBTQUR4OFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oeDhfY190ZXN0cykpOwog
CiAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogLy8gQVJNIGZ1bmN0aW9ucwpAQCAtNzgwLDcgKzc4
MSw3IEBAIGNvbnN0IFNhZE14TlBhcmFtIG5lb25fdGVzdHNbXSA9IHsKICAgU2FkTXhOUGFyYW0o
NCwgOCwgJnZweF9zYWQ0eDhfbmVvbiksCiAgIFNhZE14TlBhcmFtKDQsIDQsICZ2cHhfc2FkNHg0
X25lb24pLAogfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE5FT04sIFNBRFRlc3QsIDo6dGVz
dGluZzo6VmFsdWVzSW4obmVvbl90ZXN0cykpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE5F
T04sIFNBRFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4obmVvbl90ZXN0cykpOwogCiBjb25zdCBT
YWRNeE5BdmdQYXJhbSBhdmdfbmVvbl90ZXN0c1tdID0gewogICBTYWRNeE5BdmdQYXJhbSg2NCwg
NjQsICZ2cHhfc2FkNjR4NjRfYXZnX25lb24pLApAQCAtNzk3LDcgKzc5OCw3IEBAIGNvbnN0IFNh
ZE14TkF2Z1BhcmFtIGF2Z19uZW9uX3Rlc3RzW10gPSB7CiAgIFNhZE14TkF2Z1BhcmFtKDQsIDgs
ICZ2cHhfc2FkNHg4X2F2Z19uZW9uKSwKICAgU2FkTXhOQXZnUGFyYW0oNCwgNCwgJnZweF9zYWQ0
eDRfYXZnX25lb24pLAogfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE5FT04sIFNBRGF2Z1Rl
c3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oYXZnX25lb25fdGVzdHMpKTsKK0lOU1RBTlRJQVRFX1RF
U1RfU1VJVEVfUChORU9OLCBTQURhdmdUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKGF2Z19uZW9u
X3Rlc3RzKSk7CiAKIGNvbnN0IFNhZE14Tng0UGFyYW0geDRkX25lb25fdGVzdHNbXSA9IHsKICAg
U2FkTXhOeDRQYXJhbSg2NCwgNjQsICZ2cHhfc2FkNjR4NjR4NGRfbmVvbiksCkBAIC04MTQsNyAr
ODE1LDcgQEAgY29uc3QgU2FkTXhOeDRQYXJhbSB4NGRfbmVvbl90ZXN0c1tdID0gewogICBTYWRN
eE54NFBhcmFtKDQsIDgsICZ2cHhfc2FkNHg4eDRkX25lb24pLAogICBTYWRNeE54NFBhcmFtKDQs
IDQsICZ2cHhfc2FkNHg0eDRkX25lb24pLAogfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE5F
T04sIFNBRHg0VGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbih4NGRfbmVvbl90ZXN0cykpOworSU5T
VEFOVElBVEVfVEVTVF9TVUlURV9QKE5FT04sIFNBRHg0VGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJ
bih4NGRfbmVvbl90ZXN0cykpOwogI2VuZGlmICAvLyBIQVZFX05FT04KIAogLy8tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0KQEAgLTg3MCw3ICs4NzEsNyBAQCBjb25zdCBTYWRNeE5QYXJhbSBzc2UyX3Rl
c3RzW10gPSB7CiAgIFNhZE14TlBhcmFtKDgsIDQsICZ2cHhfaGlnaGJkX3NhZDh4NF9zc2UyLCAx
MiksCiAjZW5kaWYgIC8vIENPTkZJR19WUDlfSElHSEJJVERFUFRICiB9OwotSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoU1NFMiwgU0FEVGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbihzc2UyX3Rlc3Rz
KSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoU1NFMiwgU0FEVGVzdCwgOjp0ZXN0aW5nOjpW
YWx1ZXNJbihzc2UyX3Rlc3RzKSk7CiAKIGNvbnN0IFNhZE14TkF2Z1BhcmFtIGF2Z19zc2UyX3Rl
c3RzW10gPSB7CiAgIFNhZE14TkF2Z1BhcmFtKDY0LCA2NCwgJnZweF9zYWQ2NHg2NF9hdmdfc3Nl
MiksCkBAIC05MjIsNyArOTIzLDcgQEAgY29uc3QgU2FkTXhOQXZnUGFyYW0gYXZnX3NzZTJfdGVz
dHNbXSA9IHsKICAgU2FkTXhOQXZnUGFyYW0oOCwgNCwgJnZweF9oaWdoYmRfc2FkOHg0X2F2Z19z
c2UyLCAxMiksCiAjZW5kaWYgIC8vIENPTkZJR19WUDlfSElHSEJJVERFUFRICiB9OwotSU5TVEFO
VElBVEVfVEVTVF9DQVNFX1AoU1NFMiwgU0FEYXZnVGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbihh
dmdfc3NlMl90ZXN0cykpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFNTRTIsIFNBRGF2Z1Rl
c3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oYXZnX3NzZTJfdGVzdHMpKTsKIAogY29uc3QgU2FkTXhO
eDRQYXJhbSB4NGRfc3NlMl90ZXN0c1tdID0gewogICBTYWRNeE54NFBhcmFtKDY0LCA2NCwgJnZw
eF9zYWQ2NHg2NHg0ZF9zc2UyKSwKQEAgLTk4MCw3ICs5ODEsNyBAQCBjb25zdCBTYWRNeE54NFBh
cmFtIHg0ZF9zc2UyX3Rlc3RzW10gPSB7CiAgIFNhZE14Tng0UGFyYW0oNCwgNCwgJnZweF9oaWdo
YmRfc2FkNHg0eDRkX3NzZTIsIDEyKSwKICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9ISUdIQklUREVQ
VEgKIH07Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUChTU0UyLCBTQUR4NFRlc3QsIDo6dGVzdGlu
Zzo6VmFsdWVzSW4oeDRkX3NzZTJfdGVzdHMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChT
U0UyLCBTQUR4NFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oeDRkX3NzZTJfdGVzdHMpKTsKICNl
bmRpZiAgLy8gSEFWRV9TU0UyCiAKICNpZiBIQVZFX1NTRTMKQEAgLTk5OSw4ICsxMDAwLDggQEAg
Y29uc3QgU2FkTXhOeDhQYXJhbSB4OF9zc2U0XzFfdGVzdHNbXSA9IHsKICAgU2FkTXhOeDhQYXJh
bSg4LCA4LCAmdnB4X3NhZDh4OHg4X3NzZTRfMSksCiAgIFNhZE14Tng4UGFyYW0oNCwgNCwgJnZw
eF9zYWQ0eDR4OF9zc2U0XzEpLAogfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKFNTRTRfMSwg
U0FEeDhUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbih4
OF9zc2U0XzFfdGVzdHMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChTU0U0XzEsIFNBRHg4
VGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKHg4X3Nz
ZTRfMV90ZXN0cykpOwogI2VuZGlmICAvLyBIQVZFX1NTRTRfMQogCiAjaWYgSEFWRV9BVlgyCkBA
IC0xMDExLDcgKzEwMTIsNyBAQCBjb25zdCBTYWRNeE5QYXJhbSBhdngyX3Rlc3RzW10gPSB7CiAg
IFNhZE14TlBhcmFtKDMyLCAzMiwgJnZweF9zYWQzMngzMl9hdngyKSwKICAgU2FkTXhOUGFyYW0o
MzIsIDE2LCAmdnB4X3NhZDMyeDE2X2F2eDIpLAogfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9Q
KEFWWDIsIFNBRFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oYXZ4Ml90ZXN0cykpOworSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QKEFWWDIsIFNBRFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oYXZ4
Ml90ZXN0cykpOwogCiBjb25zdCBTYWRNeE5BdmdQYXJhbSBhdmdfYXZ4Ml90ZXN0c1tdID0gewog
ICBTYWRNeE5BdmdQYXJhbSg2NCwgNjQsICZ2cHhfc2FkNjR4NjRfYXZnX2F2eDIpLApAQCAtMTAy
MCwyNyArMTAyMSwyNyBAQCBjb25zdCBTYWRNeE5BdmdQYXJhbSBhdmdfYXZ4Ml90ZXN0c1tdID0g
ewogICBTYWRNeE5BdmdQYXJhbSgzMiwgMzIsICZ2cHhfc2FkMzJ4MzJfYXZnX2F2eDIpLAogICBT
YWRNeE5BdmdQYXJhbSgzMiwgMTYsICZ2cHhfc2FkMzJ4MTZfYXZnX2F2eDIpLAogfTsKLUlOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKEFWWDIsIFNBRGF2Z1Rlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4o
YXZnX2F2eDJfdGVzdHMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChBVlgyLCBTQURhdmdU
ZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKGF2Z19hdngyX3Rlc3RzKSk7CiAKIGNvbnN0IFNhZE14
Tng0UGFyYW0geDRkX2F2eDJfdGVzdHNbXSA9IHsKICAgU2FkTXhOeDRQYXJhbSg2NCwgNjQsICZ2
cHhfc2FkNjR4NjR4NGRfYXZ4MiksCiAgIFNhZE14Tng0UGFyYW0oMzIsIDMyLCAmdnB4X3NhZDMy
eDMyeDRkX2F2eDIpLAogfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEFWWDIsIFNBRHg0VGVz
dCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbih4NGRfYXZ4Ml90ZXN0cykpOworSU5TVEFOVElBVEVfVEVT
VF9TVUlURV9QKEFWWDIsIFNBRHg0VGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbih4NGRfYXZ4Ml90
ZXN0cykpOwogCiBjb25zdCBTYWRNeE54OFBhcmFtIHg4X2F2eDJfdGVzdHNbXSA9IHsKICAgLy8g
U2FkTXhOeDhQYXJhbSg2NCwgNjQsICZ2cHhfc2FkNjR4NjR4OF9jKSwKICAgU2FkTXhOeDhQYXJh
bSgzMiwgMzIsICZ2cHhfc2FkMzJ4MzJ4OF9hdngyKSwKIH07Ci1JTlNUQU5USUFURV9URVNUX0NB
U0VfUChBVlgyLCBTQUR4OFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oeDhfYXZ4Ml90ZXN0cykp
OworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKEFWWDIsIFNBRHg4VGVzdCwgOjp0ZXN0aW5nOjpW
YWx1ZXNJbih4OF9hdngyX3Rlc3RzKSk7CiAjZW5kaWYgIC8vIEhBVkVfQVZYMgogCiAjaWYgSEFW
RV9BVlg1MTIKIGNvbnN0IFNhZE14Tng0UGFyYW0geDRkX2F2eDUxMl90ZXN0c1tdID0gewogICBT
YWRNeE54NFBhcmFtKDY0LCA2NCwgJnZweF9zYWQ2NHg2NHg0ZF9hdng1MTIpLAogfTsKLUlOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKEFWWDUxMiwgU0FEeDRUZXN0LAotICAgICAgICAgICAgICAgICAg
ICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbih4NGRfYXZ4NTEyX3Rlc3RzKSk7CitJTlNUQU5USUFU
RV9URVNUX1NVSVRFX1AoQVZYNTEyLCBTQUR4NFRlc3QsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbih4NGRfYXZ4NTEyX3Rlc3RzKSk7CiAjZW5kaWYgIC8vIEhB
VkVfQVZYNTEyCiAKIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkBAIC0xMDYxLDcgKzEwNjIsNyBA
QCBjb25zdCBTYWRNeE5QYXJhbSBtc2FfdGVzdHNbXSA9IHsKICAgU2FkTXhOUGFyYW0oNCwgOCwg
JnZweF9zYWQ0eDhfbXNhKSwKICAgU2FkTXhOUGFyYW0oNCwgNCwgJnZweF9zYWQ0eDRfbXNhKSwK
IH07Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUChNU0EsIFNBRFRlc3QsIDo6dGVzdGluZzo6VmFs
dWVzSW4obXNhX3Rlc3RzKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoTVNBLCBTQURUZXN0
LCA6OnRlc3Rpbmc6OlZhbHVlc0luKG1zYV90ZXN0cykpOwogCiBjb25zdCBTYWRNeE5BdmdQYXJh
bSBhdmdfbXNhX3Rlc3RzW10gPSB7CiAgIFNhZE14TkF2Z1BhcmFtKDY0LCA2NCwgJnZweF9zYWQ2
NHg2NF9hdmdfbXNhKSwKQEAgLTEwNzgsNyArMTA3OSw3IEBAIGNvbnN0IFNhZE14TkF2Z1BhcmFt
IGF2Z19tc2FfdGVzdHNbXSA9IHsKICAgU2FkTXhOQXZnUGFyYW0oNCwgOCwgJnZweF9zYWQ0eDhf
YXZnX21zYSksCiAgIFNhZE14TkF2Z1BhcmFtKDQsIDQsICZ2cHhfc2FkNHg0X2F2Z19tc2EpLAog
fTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE1TQSwgU0FEYXZnVGVzdCwgOjp0ZXN0aW5nOjpW
YWx1ZXNJbihhdmdfbXNhX3Rlc3RzKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoTVNBLCBT
QURhdmdUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKGF2Z19tc2FfdGVzdHMpKTsKIAogY29uc3Qg
U2FkTXhOeDRQYXJhbSB4NGRfbXNhX3Rlc3RzW10gPSB7CiAgIFNhZE14Tng0UGFyYW0oNjQsIDY0
LCAmdnB4X3NhZDY0eDY0eDRkX21zYSksCkBAIC0xMDk1LDcgKzEwOTYsNyBAQCBjb25zdCBTYWRN
eE54NFBhcmFtIHg0ZF9tc2FfdGVzdHNbXSA9IHsKICAgU2FkTXhOeDRQYXJhbSg0LCA4LCAmdnB4
X3NhZDR4OHg0ZF9tc2EpLAogICBTYWRNeE54NFBhcmFtKDQsIDQsICZ2cHhfc2FkNHg0eDRkX21z
YSksCiB9OwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTVNBLCBTQUR4NFRlc3QsIDo6dGVzdGlu
Zzo6VmFsdWVzSW4oeDRkX21zYV90ZXN0cykpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE1T
QSwgU0FEeDRUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKHg0ZF9tc2FfdGVzdHMpKTsKICNlbmRp
ZiAgLy8gSEFWRV9NU0EKIAogLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQEAgLTExMTQsNyArMTEx
NSw3IEBAIGNvbnN0IFNhZE14TlBhcmFtIHZzeF90ZXN0c1tdID0gewogICBTYWRNeE5QYXJhbSg4
LCA4LCAmdnB4X3NhZDh4OF92c3gpLAogICBTYWRNeE5QYXJhbSg4LCA0LCAmdnB4X3NhZDh4NF92
c3gpLAogfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKFZTWCwgU0FEVGVzdCwgOjp0ZXN0aW5n
OjpWYWx1ZXNJbih2c3hfdGVzdHMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChWU1gsIFNB
RFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4odnN4X3Rlc3RzKSk7CiAKIGNvbnN0IFNhZE14TkF2
Z1BhcmFtIGF2Z192c3hfdGVzdHNbXSA9IHsKICAgU2FkTXhOQXZnUGFyYW0oNjQsIDY0LCAmdnB4
X3NhZDY0eDY0X2F2Z192c3gpLApAQCAtMTEyNiw3ICsxMTI3LDcgQEAgY29uc3QgU2FkTXhOQXZn
UGFyYW0gYXZnX3ZzeF90ZXN0c1tdID0gewogICBTYWRNeE5BdmdQYXJhbSgxNiwgMTYsICZ2cHhf
c2FkMTZ4MTZfYXZnX3ZzeCksCiAgIFNhZE14TkF2Z1BhcmFtKDE2LCA4LCAmdnB4X3NhZDE2eDhf
YXZnX3ZzeCksCiB9OwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoVlNYLCBTQURhdmdUZXN0LCA6
OnRlc3Rpbmc6OlZhbHVlc0luKGF2Z192c3hfdGVzdHMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJ
VEVfUChWU1gsIFNBRGF2Z1Rlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oYXZnX3ZzeF90ZXN0cykp
OwogCiBjb25zdCBTYWRNeE54NFBhcmFtIHg0ZF92c3hfdGVzdHNbXSA9IHsKICAgU2FkTXhOeDRQ
YXJhbSg2NCwgNjQsICZ2cHhfc2FkNjR4NjR4NGRfdnN4KSwKQEAgLTExMzgsNyArMTEzOSw3IEBA
IGNvbnN0IFNhZE14Tng0UGFyYW0geDRkX3ZzeF90ZXN0c1tdID0gewogICBTYWRNeE54NFBhcmFt
KDE2LCAxNiwgJnZweF9zYWQxNngxNng0ZF92c3gpLAogICBTYWRNeE54NFBhcmFtKDE2LCA4LCAm
dnB4X3NhZDE2eDh4NGRfdnN4KSwKIH07Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUChWU1gsIFNB
RHg0VGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbih4NGRfdnN4X3Rlc3RzKSk7CitJTlNUQU5USUFU
RV9URVNUX1NVSVRFX1AoVlNYLCBTQUR4NFRlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oeDRkX3Zz
eF90ZXN0cykpOwogI2VuZGlmICAvLyBIQVZFX1ZTWAogCiAvLy0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LQpAQCAtMTE1OSw3ICsxMTYwLDcgQEAgY29uc3QgU2FkTXhOUGFyYW0gbW1pX3Rlc3RzW10gPSB7
CiAgIFNhZE14TlBhcmFtKDQsIDgsICZ2cHhfc2FkNHg4X21taSksCiAgIFNhZE14TlBhcmFtKDQs
IDQsICZ2cHhfc2FkNHg0X21taSksCiB9OwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTU1JLCBT
QURUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKG1taV90ZXN0cykpOworSU5TVEFOVElBVEVfVEVT
VF9TVUlURV9QKE1NSSwgU0FEVGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbihtbWlfdGVzdHMpKTsK
IAogY29uc3QgU2FkTXhOQXZnUGFyYW0gYXZnX21taV90ZXN0c1tdID0gewogICBTYWRNeE5BdmdQ
YXJhbSg2NCwgNjQsICZ2cHhfc2FkNjR4NjRfYXZnX21taSksCkBAIC0xMTc2LDcgKzExNzcsNyBA
QCBjb25zdCBTYWRNeE5BdmdQYXJhbSBhdmdfbW1pX3Rlc3RzW10gPSB7CiAgIFNhZE14TkF2Z1Bh
cmFtKDQsIDgsICZ2cHhfc2FkNHg4X2F2Z19tbWkpLAogICBTYWRNeE5BdmdQYXJhbSg0LCA0LCAm
dnB4X3NhZDR4NF9hdmdfbW1pKSwKIH07Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUChNTUksIFNB
RGF2Z1Rlc3QsIDo6dGVzdGluZzo6VmFsdWVzSW4oYXZnX21taV90ZXN0cykpOworSU5TVEFOVElB
VEVfVEVTVF9TVUlURV9QKE1NSSwgU0FEYXZnVGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbihhdmdf
bW1pX3Rlc3RzKSk7CiAKIGNvbnN0IFNhZE14Tng0UGFyYW0geDRkX21taV90ZXN0c1tdID0gewog
ICBTYWRNeE54NFBhcmFtKDY0LCA2NCwgJnZweF9zYWQ2NHg2NHg0ZF9tbWkpLApAQCAtMTE5Myw2
ICsxMTk0LDYgQEAgY29uc3QgU2FkTXhOeDRQYXJhbSB4NGRfbW1pX3Rlc3RzW10gPSB7CiAgIFNh
ZE14Tng0UGFyYW0oNCwgOCwgJnZweF9zYWQ0eDh4NGRfbW1pKSwKICAgU2FkTXhOeDRQYXJhbSg0
LCA0LCAmdnB4X3NhZDR4NHg0ZF9tbWkpLAogfTsKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE1N
SSwgU0FEeDRUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKHg0ZF9tbWlfdGVzdHMpKTsKK0lOU1RB
TlRJQVRFX1RFU1RfU1VJVEVfUChNTUksIFNBRHg0VGVzdCwgOjp0ZXN0aW5nOjpWYWx1ZXNJbih4
NGRfbW1pX3Rlc3RzKSk7CiAjZW5kaWYgIC8vIEhBVkVfTU1JCiB9ICAvLyBuYW1lc3BhY2UKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zZXRfbWFwcy5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9z
ZXRfbWFwcy5zaAppbmRleCBlN2M4ZDQzZmE4ODVjYzNjYWJmMTFhNjE0ODA3ZmEzYjI4NmY3YTI2
Li5mNDVkYzUxZjQ5MTdlZjdkMWZhZmI2YzIwMjNiZDI0M2ViY2Y4NTZmIDEwMDc1NQotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3Rlc3Qvc2V0X21hcHMuc2gKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3NldF9tYXBz
LnNoCkBAIC0zNiw3ICszNiw3IEBAIHNldF9tYXBzKCkgewogCiAgIGV2YWwgIiR7VlBYX1RFU1Rf
UFJFRklYfSIgIiR7ZW5jb2Rlcn0iICIke2NvZGVjfSIgIiR7WVVWX1JBV19JTlBVVF9XSURUSH0i
IFwKICAgICAgICIke1lVVl9SQVdfSU5QVVRfSEVJR0hUfSIgIiR7WVVWX1JBV19JTlBVVH0iICIk
e291dHB1dF9maWxlfSIgXAotICAgICAgJHtkZXZudWxsfQorICAgICAgJHtkZXZudWxsfSB8fCBy
ZXR1cm4gMQogCiAgIFsgLWUgIiR7b3V0cHV0X2ZpbGV9IiBdIHx8IHJldHVybiAxCiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvc2ltcGxlX2RlY29kZXIuc2ggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rl
c3Qvc2ltcGxlX2RlY29kZXIuc2gKaW5kZXggN2VlYWY3MWIxYzY2OGI5NWExMWMxOTZhY2U4YWU0
MWVkMTRiMDFjNi4uNjVmYzQ4MjhlZDhhYTMyMTQ4YjgzZWQ1NmZjYmVlMmEyODczMWVkNCAxMDA3
NTUKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3NpbXBsZV9kZWNvZGVyLnNoCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC9zaW1wbGVfZGVjb2Rlci5zaApAQCAtMzgsNyArMzgsNyBAQCBzaW1wbGVfZGVjb2Rl
cigpIHsKICAgZmkKIAogICBldmFsICIke1ZQWF9URVNUX1BSRUZJWH0iICIke2RlY29kZXJ9IiAi
JHtpbnB1dF9maWxlfSIgIiR7b3V0cHV0X2ZpbGV9IiBcCi0gICAgICAke2Rldm51bGx9CisgICAg
ICAke2Rldm51bGx9IHx8IHJldHVybiAxCiAKICAgWyAtZSAiJHtvdXRwdXRfZmlsZX0iIF0gfHwg
cmV0dXJuIDEKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zaW1wbGVfZW5jb2RlX3Rl
c3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvc2ltcGxlX2VuY29kZV90ZXN0LmNjCmluZGV4IGVkYWY1
YmZiNGExNGZmMGIzYmU3ODU5OTRhMjI0YzkxY2FiMWI4YWMuLmFiODkzMDQ1ZDgwM2M4NjcxZTk1
MGVhNDcyZjcyN2RhYTQ3MGY5MjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zaW1wbGVf
ZW5jb2RlX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3NpbXBsZV9lbmNvZGVfdGVzdC5j
YwpAQCAtMTAsNiArMTAsNyBAQAogCiAjaW5jbHVkZSA8bWF0aC5oPgogI2luY2x1ZGUgPG1lbW9y
eT4KKyNpbmNsdWRlIDxzdHJpbmc+CiAjaW5jbHVkZSA8dmVjdG9yPgogI2luY2x1ZGUgInRoaXJk
X3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QuaCIKICNpbmNsdWRlICJ2
cDkvc2ltcGxlX2VuY29kZS5oIgpAQCAtMTcsMTUgKzE4LDYgQEAKIG5hbWVzcGFjZSB2cDkgewog
bmFtZXNwYWNlIHsKIAotLy8gVE9ETyhhbmdpcmJpZCk6IEZpbmQgYSBiZXR0ZXIgd2F5IHRvIGNv
bnN0cnVjdCBlbmNvZGUgaW5mbwotY29uc3QgaW50IHcgPSAzNTI7Ci1jb25zdCBpbnQgaCA9IDI4
ODsKLWNvbnN0IGludCBmcmFtZV9yYXRlX251bSA9IDMwOwotY29uc3QgaW50IGZyYW1lX3JhdGVf
ZGVuID0gMTsKLWNvbnN0IGludCB0YXJnZXRfYml0cmF0ZSA9IDEwMDA7Ci1jb25zdCBpbnQgbnVt
X2ZyYW1lcyA9IDE3OwotY29uc3QgY2hhciBpbmZpbGVfcGF0aFtdID0gImJ1c18zNTJ4Mjg4XzQy
MF9mMjBfYjgueXV2IjsKLQogZG91YmxlIEdldEJpdHJhdGVJbkticHMoc2l6ZV90IGJpdF9zaXpl
LCBpbnQgbnVtX2ZyYW1lcywgaW50IGZyYW1lX3JhdGVfbnVtLAogICAgICAgICAgICAgICAgICAg
ICAgICAgaW50IGZyYW1lX3JhdGVfZGVuKSB7CiAgIHJldHVybiBzdGF0aWNfY2FzdDxkb3VibGU+
KGJpdF9zaXplKSAvIG51bV9mcmFtZXMgKiBmcmFtZV9yYXRlX251bSAvCkBAIC0zNiwxNCArMjgs
MjYgQEAgZG91YmxlIEdldEJpdHJhdGVJbkticHMoc2l6ZV90IGJpdF9zaXplLCBpbnQgbnVtX2Zy
YW1lcywgaW50IGZyYW1lX3JhdGVfbnVtLAogLy8gRm9yIGV4YW1wbGUsIGlmIHNpemUgaXMgNywg
cmV0dXJuIDIuCiBpbnQgR2V0TnVtVW5pdDR4NChpbnQgc2l6ZSkgeyByZXR1cm4gKHNpemUgKyAz
KSA+PiAyOyB9CiAKLVRFU1QoU2ltcGxlRW5jb2RlLCBDb21wdXRlRmlyc3RQYXNzU3RhdHMpIHsK
LSAgU2ltcGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUodywgaCwgZnJhbWVfcmF0ZV9udW0sIGZyYW1l
X3JhdGVfZGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRfYml0cmF0ZSwg
bnVtX2ZyYW1lcywgaW5maWxlX3BhdGgpOworY2xhc3MgU2ltcGxlRW5jb2RlVGVzdCA6IHB1Ymxp
YyA6OnRlc3Rpbmc6OlRlc3QgeworIHByb3RlY3RlZDoKKyAgY29uc3QgaW50IHdpZHRoXyA9IDM1
MjsKKyAgY29uc3QgaW50IGhlaWdodF8gPSAyODg7CisgIGNvbnN0IGludCBmcmFtZV9yYXRlX251
bV8gPSAzMDsKKyAgY29uc3QgaW50IGZyYW1lX3JhdGVfZGVuXyA9IDE7CisgIGNvbnN0IGludCB0
YXJnZXRfYml0cmF0ZV8gPSAxMDAwOworICBjb25zdCBpbnQgbnVtX2ZyYW1lc18gPSAxNzsKKyAg
Y29uc3Qgc3RkOjpzdHJpbmcgaW5fZmlsZV9wYXRoX3N0cl8gPSAiYnVzXzM1MngyODhfNDIwX2Yy
MF9iOC55dXYiOworfTsKKworVEVTVF9GKFNpbXBsZUVuY29kZVRlc3QsIENvbXB1dGVGaXJzdFBh
c3NTdGF0cykgeworICBTaW1wbGVFbmNvZGUgc2ltcGxlX2VuY29kZSh3aWR0aF8sIGhlaWdodF8s
IGZyYW1lX3JhdGVfbnVtXywgZnJhbWVfcmF0ZV9kZW5fLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB0YXJnZXRfYml0cmF0ZV8sIG51bV9mcmFtZXNfLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbl9maWxlX3BhdGhfc3RyXy5jX3N0cigpKTsKICAgc2ltcGxlX2VuY29kZS5D
b21wdXRlRmlyc3RQYXNzU3RhdHMoKTsKICAgc3RkOjp2ZWN0b3I8c3RkOjp2ZWN0b3I8ZG91Ymxl
Pj4gZnJhbWVfc3RhdHMgPQogICAgICAgc2ltcGxlX2VuY29kZS5PYnNlcnZlRmlyc3RQYXNzU3Rh
dHMoKTsKLSAgRVhQRUNUX0VRKGZyYW1lX3N0YXRzLnNpemUoKSwgc3RhdGljX2Nhc3Q8c2l6ZV90
PihudW1fZnJhbWVzKSk7Ci0gIHNpemVfdCBkYXRhX251bSA9IGZyYW1lX3N0YXRzWzBdLnNpemUo
KTsKKyAgRVhQRUNUX0VRKGZyYW1lX3N0YXRzLnNpemUoKSwgc3RhdGljX2Nhc3Q8c2l6ZV90Pihu
dW1fZnJhbWVzXykpOworICBjb25zdCBzaXplX3QgZGF0YV9udW0gPSBmcmFtZV9zdGF0c1swXS5z
aXplKCk7CiAgIC8vIFJlYWQgT2JzZXJ2ZUZpcnN0UGFzc1N0YXRzIGJlZm9yZSBjaGFuZ2luZyBG
SVJTVFBBU1NfU1RBVFMuCiAgIEVYUEVDVF9FUShkYXRhX251bSwgc3RhdGljX2Nhc3Q8c2l6ZV90
PigyNSkpOwogICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGZyYW1lX3N0YXRzLnNpemUoKTsgKytp
KSB7CkBAIC01NiwyNSArNjAsNDkgQEAgVEVTVChTaW1wbGVFbmNvZGUsIENvbXB1dGVGaXJzdFBh
c3NTdGF0cykgewogICB9CiB9CiAKLVRFU1QoU2ltcGxlRW5jb2RlLCBHZXRDb2RpbmdGcmFtZU51
bSkgewotICBTaW1wbGVFbmNvZGUgc2ltcGxlX2VuY29kZSh3LCBoLCBmcmFtZV9yYXRlX251bSwg
ZnJhbWVfcmF0ZV9kZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldF9iaXRy
YXRlLCBudW1fZnJhbWVzLCBpbmZpbGVfcGF0aCk7CitURVNUX0YoU2ltcGxlRW5jb2RlVGVzdCwg
T2JzZXJ2ZUZpcnN0UGFzc01vdGlvblZlY3RvcnMpIHsKKyAgU2ltcGxlRW5jb2RlIHNpbXBsZV9l
bmNvZGUod2lkdGhfLCBoZWlnaHRfLCBmcmFtZV9yYXRlX251bV8sIGZyYW1lX3JhdGVfZGVuXywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2JpdHJhdGVfLCBudW1fZnJhbWVz
XywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5fZmlsZV9wYXRoX3N0cl8uY19zdHIo
KSk7CiAgIHNpbXBsZV9lbmNvZGUuQ29tcHV0ZUZpcnN0UGFzc1N0YXRzKCk7Ci0gIGludCBudW1f
Y29kaW5nX2ZyYW1lcyA9IHNpbXBsZV9lbmNvZGUuR2V0Q29kaW5nRnJhbWVOdW0oKTsKKyAgc3Rk
Ojp2ZWN0b3I8c3RkOjp2ZWN0b3I8TW90aW9uVmVjdG9ySW5mbz4+IGZwc19tb3Rpb25fdmVjdG9y
cyA9CisgICAgICBzaW1wbGVfZW5jb2RlLk9ic2VydmVGaXJzdFBhc3NNb3Rpb25WZWN0b3JzKCk7
CisgIEVYUEVDVF9FUShmcHNfbW90aW9uX3ZlY3RvcnMuc2l6ZSgpLCBzdGF0aWNfY2FzdDxzaXpl
X3Q+KG51bV9mcmFtZXNfKSk7CisgIGNvbnN0IHNpemVfdCBudW1fYmxvY2tzID0gKCh3aWR0aF8g
KyAxNSkgPj4gNCkgKiAoKGhlaWdodF8gKyAxNSkgPj4gNCk7CisgIEVYUEVDVF9FUShudW1fYmxv
Y2tzLCBmcHNfbW90aW9uX3ZlY3RvcnNbMF0uc2l6ZSgpKTsKKyAgZm9yIChzaXplX3QgaSA9IDA7
IGkgPCBmcHNfbW90aW9uX3ZlY3RvcnMuc2l6ZSgpOyArK2kpIHsKKyAgICBFWFBFQ1RfRVEobnVt
X2Jsb2NrcywgZnBzX21vdGlvbl92ZWN0b3JzW2ldLnNpemUoKSk7CisgICAgZm9yIChzaXplX3Qg
aiA9IDA7IGogPCBudW1fYmxvY2tzOyArK2opIHsKKyAgICAgIGNvbnN0IGludCBtdl9jb3VudCA9
IGZwc19tb3Rpb25fdmVjdG9yc1tpXVtqXS5tdl9jb3VudDsKKyAgICAgIGNvbnN0IGludCByZWZf
Y291bnQgPQorICAgICAgICAgIChmcHNfbW90aW9uX3ZlY3RvcnNbaV1bal0ucmVmX2ZyYW1lWzBd
ICE9IGtSZWZGcmFtZVR5cGVOb25lKSArCisgICAgICAgICAgKGZwc19tb3Rpb25fdmVjdG9yc1tp
XVtqXS5yZWZfZnJhbWVbMV0gIT0ga1JlZkZyYW1lVHlwZU5vbmUpOworICAgICAgRVhQRUNUX0VR
KG12X2NvdW50LCByZWZfY291bnQpOworICAgIH0KKyAgfQorfQorCitURVNUX0YoU2ltcGxlRW5j
b2RlVGVzdCwgR2V0Q29kaW5nRnJhbWVOdW0pIHsKKyAgU2ltcGxlRW5jb2RlIHNpbXBsZV9lbmNv
ZGUod2lkdGhfLCBoZWlnaHRfLCBmcmFtZV9yYXRlX251bV8sIGZyYW1lX3JhdGVfZGVuXywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2JpdHJhdGVfLCBudW1fZnJhbWVzXywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5fZmlsZV9wYXRoX3N0cl8uY19zdHIoKSk7
CisgIHNpbXBsZV9lbmNvZGUuQ29tcHV0ZUZpcnN0UGFzc1N0YXRzKCk7CisgIGNvbnN0IGludCBu
dW1fY29kaW5nX2ZyYW1lcyA9IHNpbXBsZV9lbmNvZGUuR2V0Q29kaW5nRnJhbWVOdW0oKTsKICAg
RVhQRUNUX0VRKG51bV9jb2RpbmdfZnJhbWVzLCAxOSk7CiB9CiAKLVRFU1QoU2ltcGxlRW5jb2Rl
LCBFbmNvZGVGcmFtZSkgewotICBTaW1wbGVFbmNvZGUgc2ltcGxlX2VuY29kZSh3LCBoLCBmcmFt
ZV9yYXRlX251bSwgZnJhbWVfcmF0ZV9kZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHRhcmdldF9iaXRyYXRlLCBudW1fZnJhbWVzLCBpbmZpbGVfcGF0aCk7CitURVNUX0YoU2ltcGxl
RW5jb2RlVGVzdCwgRW5jb2RlRnJhbWUpIHsKKyAgU2ltcGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUo
d2lkdGhfLCBoZWlnaHRfLCBmcmFtZV9yYXRlX251bV8sIGZyYW1lX3JhdGVfZGVuXywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2JpdHJhdGVfLCBudW1fZnJhbWVzXywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5fZmlsZV9wYXRoX3N0cl8uY19zdHIoKSk7CiAg
IHNpbXBsZV9lbmNvZGUuQ29tcHV0ZUZpcnN0UGFzc1N0YXRzKCk7CiAgIGludCBudW1fY29kaW5n
X2ZyYW1lcyA9IHNpbXBsZV9lbmNvZGUuR2V0Q29kaW5nRnJhbWVOdW0oKTsKLSAgRVhQRUNUX0dF
KG51bV9jb2RpbmdfZnJhbWVzLCBudW1fZnJhbWVzKTsKKyAgRVhQRUNUX0dFKG51bV9jb2Rpbmdf
ZnJhbWVzLCBudW1fZnJhbWVzXyk7CiAgIHNpbXBsZV9lbmNvZGUuU3RhcnRFbmNvZGUoKTsKICAg
c2l6ZV90IHRvdGFsX2RhdGFfYml0X3NpemUgPSAwOwogICBpbnQgY29kZWRfc2hvd19mcmFtZV9j
b3VudCA9IDA7CiAgIGludCBmcmFtZV9jb2RpbmdfaW5kZXggPSAwOwotICB3aGlsZSAoY29kZWRf
c2hvd19mcmFtZV9jb3VudCA8IG51bV9mcmFtZXMpIHsKKyAgd2hpbGUgKGNvZGVkX3Nob3dfZnJh
bWVfY291bnQgPCBudW1fZnJhbWVzXykgewogICAgIGNvbnN0IEdyb3VwT2ZQaWN0dXJlIGdyb3Vw
X29mX3BpY3R1cmUgPQogICAgICAgICBzaW1wbGVfZW5jb2RlLk9ic2VydmVHcm91cE9mUGljdHVy
ZSgpOwogICAgIGNvbnN0IHN0ZDo6dmVjdG9yPEVuY29kZUZyYW1lSW5mbz4gJmVuY29kZV9mcmFt
ZV9saXN0ID0KQEAgLTkyLDIzICsxMjAsOTMgQEAgVEVTVChTaW1wbGVFbmNvZGUsIEVuY29kZUZy
YW1lKSB7CiAgICAgICBFWFBFQ1RfR0UoZW5jb2RlX2ZyYW1lX3Jlc3VsdC5wc25yLCAzNCkKICAg
ICAgICAgICA8PCAiVGhlIHBzbnIgaXMgc3VwcG9zZWQgdG8gYmUgZ3JlYXRlciB0aGFuIDM0IGdp
dmVuIHRoZSAiCiAgICAgICAgICAgICAgInRhcmdldF9iaXRyYXRlIDEwMDAga2JwcyI7CisgICAg
ICBFWFBFQ1RfRVEoZW5jb2RlX2ZyYW1lX3Jlc3VsdC5yZWZfZnJhbWVfaW5mbywKKyAgICAgICAg
ICAgICAgICBlbmNvZGVfZnJhbWVfbGlzdFtncm91cF9pbmRleF0ucmVmX2ZyYW1lX2luZm8pOwog
ICAgICAgdG90YWxfZGF0YV9iaXRfc2l6ZSArPSBlbmNvZGVfZnJhbWVfcmVzdWx0LmNvZGluZ19k
YXRhX2JpdF9zaXplOwogICAgICAgKytmcmFtZV9jb2RpbmdfaW5kZXg7CiAgICAgfQogICAgIGNv
ZGVkX3Nob3dfZnJhbWVfY291bnQgKz0gZ3JvdXBfb2ZfcGljdHVyZS5zaG93X2ZyYW1lX2NvdW50
OwogICB9Ci0gIGNvbnN0IGRvdWJsZSBiaXRyYXRlID0gR2V0Qml0cmF0ZUluS2Jwcyh0b3RhbF9k
YXRhX2JpdF9zaXplLCBudW1fZnJhbWVzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZnJhbWVfcmF0ZV9udW0sIGZyYW1lX3JhdGVfZGVuKTsKKyAgY29uc3QgZG91
YmxlIGJpdHJhdGUgPSBHZXRCaXRyYXRlSW5LYnBzKHRvdGFsX2RhdGFfYml0X3NpemUsIG51bV9m
cmFtZXNfLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWVf
cmF0ZV9udW1fLCBmcmFtZV9yYXRlX2Rlbl8pOwogICBjb25zdCBkb3VibGUgb2ZmX3RhcmdldF90
aHJlc2hvbGQgPSAxNTA7Ci0gIEVYUEVDVF9MRShmYWJzKHRhcmdldF9iaXRyYXRlIC0gYml0cmF0
ZSksIG9mZl90YXJnZXRfdGhyZXNob2xkKTsKKyAgRVhQRUNUX0xFKGZhYnModGFyZ2V0X2JpdHJh
dGVfIC0gYml0cmF0ZSksIG9mZl90YXJnZXRfdGhyZXNob2xkKTsKICAgc2ltcGxlX2VuY29kZS5F
bmRFbmNvZGUoKTsKIH0KIAotVEVTVChTaW1wbGVFbmNvZGUsIEVuY29kZUZyYW1lV2l0aFF1YW50
aXplSW5kZXgpIHsKLSAgU2ltcGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUodywgaCwgZnJhbWVfcmF0
ZV9udW0sIGZyYW1lX3JhdGVfZGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJn
ZXRfYml0cmF0ZSwgbnVtX2ZyYW1lcywgaW5maWxlX3BhdGgpOworVEVTVF9GKFNpbXBsZUVuY29k
ZVRlc3QsIE9ic2VydmVLZXlGcmFtZU1hcCkgeworICBTaW1wbGVFbmNvZGUgc2ltcGxlX2VuY29k
ZSh3aWR0aF8sIGhlaWdodF8sIGZyYW1lX3JhdGVfbnVtXywgZnJhbWVfcmF0ZV9kZW5fLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRfYml0cmF0ZV8sIG51bV9mcmFtZXNfLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbl9maWxlX3BhdGhfc3RyXy5jX3N0cigpKTsK
ICAgc2ltcGxlX2VuY29kZS5Db21wdXRlRmlyc3RQYXNzU3RhdHMoKTsKLSAgaW50IG51bV9jb2Rp
bmdfZnJhbWVzID0gc2ltcGxlX2VuY29kZS5HZXRDb2RpbmdGcmFtZU51bSgpOworICBzdGQ6OnZl
Y3RvcjxpbnQ+IGtleV9mcmFtZV9tYXAgPSBzaW1wbGVfZW5jb2RlLk9ic2VydmVLZXlGcmFtZU1h
cCgpOworICBFWFBFQ1RfRVEoa2V5X2ZyYW1lX21hcC5zaXplKCksIHN0YXRpY19jYXN0PHNpemVf
dD4obnVtX2ZyYW1lc18pKTsKKyAgc2ltcGxlX2VuY29kZS5TdGFydEVuY29kZSgpOworICBpbnQg
Y29kZWRfc2hvd19mcmFtZV9jb3VudCA9IDA7CisgIHdoaWxlIChjb2RlZF9zaG93X2ZyYW1lX2Nv
dW50IDwgbnVtX2ZyYW1lc18pIHsKKyAgICBjb25zdCBHcm91cE9mUGljdHVyZSBncm91cF9vZl9w
aWN0dXJlID0KKyAgICAgICAgc2ltcGxlX2VuY29kZS5PYnNlcnZlR3JvdXBPZlBpY3R1cmUoKTsK
KyAgICBjb25zdCBzdGQ6OnZlY3RvcjxFbmNvZGVGcmFtZUluZm8+ICZlbmNvZGVfZnJhbWVfbGlz
dCA9CisgICAgICAgIGdyb3VwX29mX3BpY3R1cmUuZW5jb2RlX2ZyYW1lX2xpc3Q7CisgICAgZm9y
IChzaXplX3QgZ3JvdXBfaW5kZXggPSAwOyBncm91cF9pbmRleCA8IGVuY29kZV9mcmFtZV9saXN0
LnNpemUoKTsKKyAgICAgICAgICsrZ3JvdXBfaW5kZXgpIHsKKyAgICAgIEVuY29kZUZyYW1lUmVz
dWx0IGVuY29kZV9mcmFtZV9yZXN1bHQ7CisgICAgICBzaW1wbGVfZW5jb2RlLkVuY29kZUZyYW1l
KCZlbmNvZGVfZnJhbWVfcmVzdWx0KTsKKyAgICAgIGlmIChlbmNvZGVfZnJhbWVfcmVzdWx0LmZy
YW1lX3R5cGUgPT0ga0ZyYW1lVHlwZUtleSkgeworICAgICAgICBFWFBFQ1RfRVEoa2V5X2ZyYW1l
X21hcFtlbmNvZGVfZnJhbWVfcmVzdWx0LnNob3dfaWR4XSwgMSk7CisgICAgICB9IGVsc2Ugewor
ICAgICAgICBFWFBFQ1RfRVEoa2V5X2ZyYW1lX21hcFtlbmNvZGVfZnJhbWVfcmVzdWx0LnNob3df
aWR4XSwgMCk7CisgICAgICB9CisgICAgfQorICAgIGNvZGVkX3Nob3dfZnJhbWVfY291bnQgKz0g
Z3JvdXBfb2ZfcGljdHVyZS5zaG93X2ZyYW1lX2NvdW50OworICB9CisgIHNpbXBsZV9lbmNvZGUu
RW5kRW5jb2RlKCk7Cit9CisKK1RFU1RfRihTaW1wbGVFbmNvZGVUZXN0LCBFbmNvZGVGcmFtZVdp
dGhUYXJnZXRGcmFtZUJpdHMpIHsKKyAgU2ltcGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUod2lkdGhf
LCBoZWlnaHRfLCBmcmFtZV9yYXRlX251bV8sIGZyYW1lX3JhdGVfZGVuXywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdGFyZ2V0X2JpdHJhdGVfLCBudW1fZnJhbWVzXywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaW5fZmlsZV9wYXRoX3N0cl8uY19zdHIoKSk7CisgIHNpbXBs
ZV9lbmNvZGUuQ29tcHV0ZUZpcnN0UGFzc1N0YXRzKCk7CisgIGNvbnN0IGludCBudW1fY29kaW5n
X2ZyYW1lcyA9IHNpbXBsZV9lbmNvZGUuR2V0Q29kaW5nRnJhbWVOdW0oKTsKKyAgc2ltcGxlX2Vu
Y29kZS5TdGFydEVuY29kZSgpOworICBmb3IgKGludCBpID0gMDsgaSA8IG51bV9jb2RpbmdfZnJh
bWVzOyArK2kpIHsKKyAgICBFbmNvZGVGcmFtZUluZm8gZW5jb2RlX2ZyYW1lX2luZm8gPSBzaW1w
bGVfZW5jb2RlLkdldE5leHRFbmNvZGVGcmFtZUluZm8oKTsKKyAgICBpbnQgdGFyZ2V0X2ZyYW1l
X2JpdHM7CisgICAgc3dpdGNoIChlbmNvZGVfZnJhbWVfaW5mby5mcmFtZV90eXBlKSB7CisgICAg
ICBjYXNlIGtGcmFtZVR5cGVJbnRlcjogdGFyZ2V0X2ZyYW1lX2JpdHMgPSAyMDAwMDsgYnJlYWs7
CisgICAgICBjYXNlIGtGcmFtZVR5cGVLZXk6CisgICAgICBjYXNlIGtGcmFtZVR5cGVBbHRSZWY6
CisgICAgICBjYXNlIGtGcmFtZVR5cGVHb2xkZW46IHRhcmdldF9mcmFtZV9iaXRzID0gMTAwMDAw
OyBicmVhazsKKyAgICAgIGNhc2Uga0ZyYW1lVHlwZU92ZXJsYXk6IHRhcmdldF9mcmFtZV9iaXRz
ID0gMjAwMDsgYnJlYWs7CisgICAgICBkZWZhdWx0OiB0YXJnZXRfZnJhbWVfYml0cyA9IDIwMDAw
OworICAgIH0KKworICAgIGRvdWJsZSBwZXJjZW50X2RpZmYgPSAxNTsKKyAgICBpZiAoZW5jb2Rl
X2ZyYW1lX2luZm8uZnJhbWVfdHlwZSA9PSBrRnJhbWVUeXBlT3ZlcmxheSkgeworICAgICAgcGVy
Y2VudF9kaWZmID0gMTAwOworICAgIH0KKyAgICBFbmNvZGVGcmFtZVJlc3VsdCBlbmNvZGVfZnJh
bWVfcmVzdWx0OworICAgIHNpbXBsZV9lbmNvZGUuRW5jb2RlRnJhbWVXaXRoVGFyZ2V0RnJhbWVC
aXRzKAorICAgICAgICAmZW5jb2RlX2ZyYW1lX3Jlc3VsdCwgdGFyZ2V0X2ZyYW1lX2JpdHMsIHBl
cmNlbnRfZGlmZik7CisgICAgY29uc3QgaW50IHJlY29kZV9jb3VudCA9IGVuY29kZV9mcmFtZV9y
ZXN1bHQucmVjb2RlX2NvdW50OworICAgIC8vIFRPRE8oYW5naWViaXJkKTogUmVwbGFjZSA3IGJ5
IFJBVEVfQ1RSTF9NQVhfUkVDT0RFX05VTQorICAgIEVYUEVDVF9MRShyZWNvZGVfY291bnQsIDcp
OworICAgIEVYUEVDVF9HRShyZWNvZGVfY291bnQsIDEpOworCisgICAgY29uc3QgZG91YmxlIGRp
ZmYgPSBmYWJzKChkb3VibGUpZW5jb2RlX2ZyYW1lX3Jlc3VsdC5jb2RpbmdfZGF0YV9iaXRfc2l6
ZSAtCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldF9mcmFtZV9iaXRzKTsKKyAg
ICBFWFBFQ1RfTEUoZGlmZiAqIDEwMCAvIHRhcmdldF9mcmFtZV9iaXRzLCBwZXJjZW50X2RpZmYp
OworICB9CisgIHNpbXBsZV9lbmNvZGUuRW5kRW5jb2RlKCk7Cit9CisKK1RFU1RfRihTaW1wbGVF
bmNvZGVUZXN0LCBFbmNvZGVGcmFtZVdpdGhRdWFudGl6ZUluZGV4KSB7CisgIFNpbXBsZUVuY29k
ZSBzaW1wbGVfZW5jb2RlKHdpZHRoXywgaGVpZ2h0XywgZnJhbWVfcmF0ZV9udW1fLCBmcmFtZV9y
YXRlX2Rlbl8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldF9iaXRyYXRlXywg
bnVtX2ZyYW1lc18sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluX2ZpbGVfcGF0aF9z
dHJfLmNfc3RyKCkpOworICBzaW1wbGVfZW5jb2RlLkNvbXB1dGVGaXJzdFBhc3NTdGF0cygpOwor
ICBjb25zdCBpbnQgbnVtX2NvZGluZ19mcmFtZXMgPSBzaW1wbGVfZW5jb2RlLkdldENvZGluZ0Zy
YW1lTnVtKCk7CiAgIHNpbXBsZV9lbmNvZGUuU3RhcnRFbmNvZGUoKTsKICAgZm9yIChpbnQgaSA9
IDA7IGkgPCBudW1fY29kaW5nX2ZyYW1lczsgKytpKSB7CiAgICAgY29uc3QgaW50IGFzc2lnbmVk
X3F1YW50aXplX2luZGV4ID0gMTAwICsgaTsKQEAgLTEyMCwxNSArMjE4LDI0IEBAIFRFU1QoU2lt
cGxlRW5jb2RlLCBFbmNvZGVGcmFtZVdpdGhRdWFudGl6ZUluZGV4KSB7CiAgIHNpbXBsZV9lbmNv
ZGUuRW5kRW5jb2RlKCk7CiB9CiAKLVRFU1QoU2ltcGxlRW5jb2RlLCBFbmNvZGVDb25zaXN0ZW5j
eVRlc3QpIHsKKy8vIFRoaXMgdGVzdCBlbmNvZGVzIHRoZSB2aWRlbyB1c2luZyBFbmNvZGVGcmFt
ZSgpLCB3aGVyZSBxdWFudGl6ZSBpbmRleGVzCisvLyBhcmUgc2VsZWN0ZWQgYnkgdnA5IHJhdGUg
Y29udHJvbC4KKy8vIEVuY29kZSBzdGF0cyBhbmQgdGhlIHF1YW50aXplX2luZGV4ZXMgYXJlIGNv
bGxlY3RlZC4KKy8vIFRoZW4gdGhlIHRlc3QgZW5jb2RlcyB0aGUgdmlkZW8gYWdhaW4gdXNpbmcg
RW5jb2RlRnJhbWVXaXRoUXVhbnRpemVJbmRleCgpCisvLyB1c2luZyB0aGUgcXVhbnRpemUgaW5k
ZXhlcyBjb2xsZWN0ZWQgZnJvbSB0aGUgZmlyc3QgcnVuLgorLy8gVGhlbiB0ZXN0IHdoZXRoZXIg
dGhlIGVuY29kZSBzdGF0cyBvZiB0aGUgdHdvIGVuY29kaW5nIHJ1bnMgbWF0Y2guCitURVNUX0Yo
U2ltcGxlRW5jb2RlVGVzdCwgRW5jb2RlQ29uc2lzdGVuY3lUZXN0KSB7CiAgIHN0ZDo6dmVjdG9y
PGludD4gcXVhbnRpemVfaW5kZXhfbGlzdDsKICAgc3RkOjp2ZWN0b3I8dWludDY0X3Q+IHJlZl9z
c2VfbGlzdDsKICAgc3RkOjp2ZWN0b3I8ZG91YmxlPiByZWZfcHNucl9saXN0OwogICBzdGQ6OnZl
Y3RvcjxzaXplX3Q+IHJlZl9iaXRfc2l6ZV9saXN0OworICBzdGQ6OnZlY3RvcjxGcmFtZVR5cGU+
IHJlZl9mcmFtZV90eXBlX2xpc3Q7CisgIHN0ZDo6dmVjdG9yPGludD4gcmVmX3Nob3dfaWR4X2xp
c3Q7CiAgIHsKICAgICAvLyBUaGUgZmlyc3QgZW5jb2RlLgotICAgIFNpbXBsZUVuY29kZSBzaW1w
bGVfZW5jb2RlKHcsIGgsIGZyYW1lX3JhdGVfbnVtLCBmcmFtZV9yYXRlX2RlbiwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRfYml0cmF0ZSwgbnVtX2ZyYW1lcywgaW5maWxl
X3BhdGgpOworICAgIFNpbXBsZUVuY29kZSBzaW1wbGVfZW5jb2RlKHdpZHRoXywgaGVpZ2h0Xywg
ZnJhbWVfcmF0ZV9udW1fLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyYW1lX3Jh
dGVfZGVuXywgdGFyZ2V0X2JpdHJhdGVfLCBudW1fZnJhbWVzXywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpbl9maWxlX3BhdGhfc3RyXy5jX3N0cigpKTsKICAgICBzaW1wbGVfZW5j
b2RlLkNvbXB1dGVGaXJzdFBhc3NTdGF0cygpOwogICAgIGNvbnN0IGludCBudW1fY29kaW5nX2Zy
YW1lcyA9IHNpbXBsZV9lbmNvZGUuR2V0Q29kaW5nRnJhbWVOdW0oKTsKICAgICBzaW1wbGVfZW5j
b2RlLlN0YXJ0RW5jb2RlKCk7CkBAIC0xMzksMTMgKzI0NiwxNiBAQCBURVNUKFNpbXBsZUVuY29k
ZSwgRW5jb2RlQ29uc2lzdGVuY3lUZXN0KSB7CiAgICAgICByZWZfc3NlX2xpc3QucHVzaF9iYWNr
KGVuY29kZV9mcmFtZV9yZXN1bHQuc3NlKTsKICAgICAgIHJlZl9wc25yX2xpc3QucHVzaF9iYWNr
KGVuY29kZV9mcmFtZV9yZXN1bHQucHNucik7CiAgICAgICByZWZfYml0X3NpemVfbGlzdC5wdXNo
X2JhY2soZW5jb2RlX2ZyYW1lX3Jlc3VsdC5jb2RpbmdfZGF0YV9iaXRfc2l6ZSk7CisgICAgICBy
ZWZfZnJhbWVfdHlwZV9saXN0LnB1c2hfYmFjayhlbmNvZGVfZnJhbWVfcmVzdWx0LmZyYW1lX3R5
cGUpOworICAgICAgcmVmX3Nob3dfaWR4X2xpc3QucHVzaF9iYWNrKGVuY29kZV9mcmFtZV9yZXN1
bHQuc2hvd19pZHgpOwogICAgIH0KICAgICBzaW1wbGVfZW5jb2RlLkVuZEVuY29kZSgpOwogICB9
CiAgIHsKICAgICAvLyBUaGUgc2Vjb25kIGVuY29kZSB3aXRoIHF1YW50aXplIGluZGV4IGdvdCBm
cm9tIHRoZSBmaXJzdCBlbmNvZGUuCi0gICAgU2ltcGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUodywg
aCwgZnJhbWVfcmF0ZV9udW0sIGZyYW1lX3JhdGVfZGVuLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHRhcmdldF9iaXRyYXRlLCBudW1fZnJhbWVzLCBpbmZpbGVfcGF0aCk7CisgICAg
U2ltcGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUod2lkdGhfLCBoZWlnaHRfLCBmcmFtZV9yYXRlX251
bV8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWVfcmF0ZV9kZW5fLCB0YXJn
ZXRfYml0cmF0ZV8sIG51bV9mcmFtZXNfLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGluX2ZpbGVfcGF0aF9zdHJfLmNfc3RyKCkpOwogICAgIHNpbXBsZV9lbmNvZGUuQ29tcHV0ZUZp
cnN0UGFzc1N0YXRzKCk7CiAgICAgY29uc3QgaW50IG51bV9jb2RpbmdfZnJhbWVzID0gc2ltcGxl
X2VuY29kZS5HZXRDb2RpbmdGcmFtZU51bSgpOwogICAgIEVYUEVDVF9FUShzdGF0aWNfY2FzdDxz
aXplX3Q+KG51bV9jb2RpbmdfZnJhbWVzKSwKQEAgLTE1OSw2ICsyNjksOCBAQCBURVNUKFNpbXBs
ZUVuY29kZSwgRW5jb2RlQ29uc2lzdGVuY3lUZXN0KSB7CiAgICAgICBFWFBFQ1RfRVEoZW5jb2Rl
X2ZyYW1lX3Jlc3VsdC5zc2UsIHJlZl9zc2VfbGlzdFtpXSk7CiAgICAgICBFWFBFQ1RfRE9VQkxF
X0VRKGVuY29kZV9mcmFtZV9yZXN1bHQucHNuciwgcmVmX3BzbnJfbGlzdFtpXSk7CiAgICAgICBF
WFBFQ1RfRVEoZW5jb2RlX2ZyYW1lX3Jlc3VsdC5jb2RpbmdfZGF0YV9iaXRfc2l6ZSwgcmVmX2Jp
dF9zaXplX2xpc3RbaV0pOworICAgICAgRVhQRUNUX0VRKGVuY29kZV9mcmFtZV9yZXN1bHQuZnJh
bWVfdHlwZSwgcmVmX2ZyYW1lX3R5cGVfbGlzdFtpXSk7CisgICAgICBFWFBFQ1RfRVEoZW5jb2Rl
X2ZyYW1lX3Jlc3VsdC5zaG93X2lkeCwgcmVmX3Nob3dfaWR4X2xpc3RbaV0pOwogICAgIH0KICAg
ICBzaW1wbGVfZW5jb2RlLkVuZEVuY29kZSgpOwogICB9CkBAIC0xNjYsMTMgKzI3OCwxNCBAQCBU
RVNUKFNpbXBsZUVuY29kZSwgRW5jb2RlQ29uc2lzdGVuY3lUZXN0KSB7CiAKIC8vIFRlc3QgdGhl
IGluZm9ybWF0aW9uIChwYXJ0aXRpb24gaW5mbyBhbmQgbW90aW9uIHZlY3RvciBpbmZvKSBzdG9y
ZWQgaW4KIC8vIGVuY29kZXIgaXMgdGhlIHNhbWUgYmV0d2VlbiB0d28gZW5jb2RlIHJ1bnMuCi1U
RVNUKFNpbXBsZUVuY29kZSwgRW5jb2RlQ29uc2lzdGVuY3lUZXN0MikgewotICBjb25zdCBpbnQg
bnVtX3Jvd3NfNHg0ID0gR2V0TnVtVW5pdDR4NCh3KTsKLSAgY29uc3QgaW50IG51bV9jb2xzXzR4
NCA9IEdldE51bVVuaXQ0eDQoaCk7CitURVNUX0YoU2ltcGxlRW5jb2RlVGVzdCwgRW5jb2RlQ29u
c2lzdGVuY3lUZXN0MikgeworICBjb25zdCBpbnQgbnVtX3Jvd3NfNHg0ID0gR2V0TnVtVW5pdDR4
NCh3aWR0aF8pOworICBjb25zdCBpbnQgbnVtX2NvbHNfNHg0ID0gR2V0TnVtVW5pdDR4NChoZWln
aHRfKTsKICAgY29uc3QgaW50IG51bV91bml0c180eDQgPSBudW1fcm93c180eDQgKiBudW1fY29s
c180eDQ7CiAgIC8vIFRoZSBmaXJzdCBlbmNvZGUuCi0gIFNpbXBsZUVuY29kZSBzaW1wbGVfZW5j
b2RlKHcsIGgsIGZyYW1lX3JhdGVfbnVtLCBmcmFtZV9yYXRlX2RlbiwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdGFyZ2V0X2JpdHJhdGUsIG51bV9mcmFtZXMsIGluZmlsZV9wYXRoKTsK
KyAgU2ltcGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUod2lkdGhfLCBoZWlnaHRfLCBmcmFtZV9yYXRl
X251bV8sIGZyYW1lX3JhdGVfZGVuXywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFy
Z2V0X2JpdHJhdGVfLCBudW1fZnJhbWVzXywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
aW5fZmlsZV9wYXRoX3N0cl8uY19zdHIoKSk7CiAgIHNpbXBsZV9lbmNvZGUuQ29tcHV0ZUZpcnN0
UGFzc1N0YXRzKCk7CiAgIGNvbnN0IGludCBudW1fY29kaW5nX2ZyYW1lcyA9IHNpbXBsZV9lbmNv
ZGUuR2V0Q29kaW5nRnJhbWVOdW0oKTsKICAgc3RkOjp2ZWN0b3I8UGFydGl0aW9uSW5mbz4gcGFy
dGl0aW9uX2luZm9fbGlzdChudW1fdW5pdHNfNHg0ICoKQEAgLTE5Miw4ICszMDUsOSBAQCBURVNU
KFNpbXBsZUVuY29kZSwgRW5jb2RlQ29uc2lzdGVuY3lUZXN0MikgewogICB9CiAgIHNpbXBsZV9l
bmNvZGUuRW5kRW5jb2RlKCk7CiAgIC8vIFRoZSBzZWNvbmQgZW5jb2RlLgotICBTaW1wbGVFbmNv
ZGUgc2ltcGxlX2VuY29kZV8yKHcsIGgsIGZyYW1lX3JhdGVfbnVtLCBmcmFtZV9yYXRlX2RlbiwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRfYml0cmF0ZSwgbnVtX2ZyYW1l
cywgaW5maWxlX3BhdGgpOworICBTaW1wbGVFbmNvZGUgc2ltcGxlX2VuY29kZV8yKHdpZHRoXywg
aGVpZ2h0XywgZnJhbWVfcmF0ZV9udW1fLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGZyYW1lX3JhdGVfZGVuXywgdGFyZ2V0X2JpdHJhdGVfLCBudW1fZnJhbWVzXywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbl9maWxlX3BhdGhfc3RyXy5jX3N0cigpKTsKICAgc2lt
cGxlX2VuY29kZV8yLkNvbXB1dGVGaXJzdFBhc3NTdGF0cygpOwogICBjb25zdCBpbnQgbnVtX2Nv
ZGluZ19mcmFtZXNfMiA9IHNpbXBsZV9lbmNvZGVfMi5HZXRDb2RpbmdGcmFtZU51bSgpOwogICBz
aW1wbGVfZW5jb2RlXzIuU3RhcnRFbmNvZGUoKTsKQEAgLTIzNCwxNCArMzQ4LDE1IEBAIFRFU1Qo
U2ltcGxlRW5jb2RlLCBFbmNvZGVDb25zaXN0ZW5jeVRlc3QyKSB7CiB9CiAKIC8vIFRlc3QgdGhl
IGluZm9ybWF0aW9uIHN0b3JlZCBpbiBlbmNvZGVyIGlzIHRoZSBzYW1lIGJldHdlZW4gdHdvIGVu
Y29kZSBydW5zLgotVEVTVChTaW1wbGVFbmNvZGUsIEVuY29kZUNvbnNpc3RlbmN5VGVzdDMpIHsK
K1RFU1RfRihTaW1wbGVFbmNvZGVUZXN0LCBFbmNvZGVDb25zaXN0ZW5jeVRlc3QzKSB7CiAgIHN0
ZDo6dmVjdG9yPGludD4gcXVhbnRpemVfaW5kZXhfbGlzdDsKLSAgY29uc3QgaW50IG51bV9yb3dz
XzR4NCA9IEdldE51bVVuaXQ0eDQodyk7Ci0gIGNvbnN0IGludCBudW1fY29sc180eDQgPSBHZXRO
dW1Vbml0NHg0KGgpOworICBjb25zdCBpbnQgbnVtX3Jvd3NfNHg0ID0gR2V0TnVtVW5pdDR4NCh3
aWR0aF8pOworICBjb25zdCBpbnQgbnVtX2NvbHNfNHg0ID0gR2V0TnVtVW5pdDR4NChoZWlnaHRf
KTsKICAgY29uc3QgaW50IG51bV91bml0c180eDQgPSBudW1fcm93c180eDQgKiBudW1fY29sc180
eDQ7CiAgIC8vIFRoZSBmaXJzdCBlbmNvZGUuCi0gIFNpbXBsZUVuY29kZSBzaW1wbGVfZW5jb2Rl
KHcsIGgsIGZyYW1lX3JhdGVfbnVtLCBmcmFtZV9yYXRlX2RlbiwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdGFyZ2V0X2JpdHJhdGUsIG51bV9mcmFtZXMsIGluZmlsZV9wYXRoKTsKKyAg
U2ltcGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUod2lkdGhfLCBoZWlnaHRfLCBmcmFtZV9yYXRlX251
bV8sIGZyYW1lX3JhdGVfZGVuXywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0
X2JpdHJhdGVfLCBudW1fZnJhbWVzXywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5f
ZmlsZV9wYXRoX3N0cl8uY19zdHIoKSk7CiAgIHNpbXBsZV9lbmNvZGUuQ29tcHV0ZUZpcnN0UGFz
c1N0YXRzKCk7CiAgIGNvbnN0IGludCBudW1fY29kaW5nX2ZyYW1lcyA9IHNpbXBsZV9lbmNvZGUu
R2V0Q29kaW5nRnJhbWVOdW0oKTsKICAgc3RkOjp2ZWN0b3I8UGFydGl0aW9uSW5mbz4gcGFydGl0
aW9uX2luZm9fbGlzdChudW1fdW5pdHNfNHg0ICoKQEAgLTI1OCw4ICszNzMsOSBAQCBURVNUKFNp
bXBsZUVuY29kZSwgRW5jb2RlQ29uc2lzdGVuY3lUZXN0MykgewogICB9CiAgIHNpbXBsZV9lbmNv
ZGUuRW5kRW5jb2RlKCk7CiAgIC8vIFRoZSBzZWNvbmQgZW5jb2RlLgotICBTaW1wbGVFbmNvZGUg
c2ltcGxlX2VuY29kZV8yKHcsIGgsIGZyYW1lX3JhdGVfbnVtLCBmcmFtZV9yYXRlX2RlbiwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRfYml0cmF0ZSwgbnVtX2ZyYW1lcywg
aW5maWxlX3BhdGgpOworICBTaW1wbGVFbmNvZGUgc2ltcGxlX2VuY29kZV8yKHdpZHRoXywgaGVp
Z2h0XywgZnJhbWVfcmF0ZV9udW1fLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZy
YW1lX3JhdGVfZGVuXywgdGFyZ2V0X2JpdHJhdGVfLCBudW1fZnJhbWVzXywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBpbl9maWxlX3BhdGhfc3RyXy5jX3N0cigpKTsKICAgc2ltcGxl
X2VuY29kZV8yLkNvbXB1dGVGaXJzdFBhc3NTdGF0cygpOwogICBjb25zdCBpbnQgbnVtX2NvZGlu
Z19mcmFtZXNfMiA9IHNpbXBsZV9lbmNvZGVfMi5HZXRDb2RpbmdGcmFtZU51bSgpOwogICBzaW1w
bGVfZW5jb2RlXzIuU3RhcnRFbmNvZGUoKTsKQEAgLTI4OSw0NSArNDA1LDUxIEBAIFRFU1QoU2lt
cGxlRW5jb2RlLCBFbmNvZGVDb25zaXN0ZW5jeVRlc3QzKSB7CiAvLyBHZXQgUVBzIGFuZCBhcmYg
bG9jYXRpb25zIGZyb20gdGhlIGZpcnN0IGVuY29kZS4KIC8vIFNldCBleHRlcm5hbCBhcmZzIGFu
ZCBRUHMgZm9yIHRoZSBzZWNvbmQgZW5jb2RlLgogLy8gRXhwZWN0IHRvIGdldCBtYXRjaGVkIHJl
c3VsdHMuCi1URVNUKFNpbXBsZUVuY29kZSwgRW5jb2RlQ29uc2lzdGVuY3lUZXN0VXNlRXh0ZXJu
YWxBcmZzKSB7CitURVNUX0YoU2ltcGxlRW5jb2RlVGVzdCwgRW5jb2RlQ29uc2lzdGVuY3lTZXRF
eHRlcm5hbEdyb3VwT2ZQaWN0dXJlc01hcCkgewogICBzdGQ6OnZlY3RvcjxpbnQ+IHF1YW50aXpl
X2luZGV4X2xpc3Q7CiAgIHN0ZDo6dmVjdG9yPHVpbnQ2NF90PiByZWZfc3NlX2xpc3Q7CiAgIHN0
ZDo6dmVjdG9yPGRvdWJsZT4gcmVmX3BzbnJfbGlzdDsKICAgc3RkOjp2ZWN0b3I8c2l6ZV90PiBy
ZWZfYml0X3NpemVfbGlzdDsKLSAgc3RkOjp2ZWN0b3I8aW50PiBleHRlcm5hbF9hcmZfaW5kZXhl
cyhudW1fZnJhbWVzLCAwKTsKKyAgc3RkOjp2ZWN0b3I8aW50PiBnb3BfbWFwKG51bV9mcmFtZXNf
LCAwKTsKICAgewogICAgIC8vIFRoZSBmaXJzdCBlbmNvZGUuCi0gICAgU2ltcGxlRW5jb2RlIHNp
bXBsZV9lbmNvZGUodywgaCwgZnJhbWVfcmF0ZV9udW0sIGZyYW1lX3JhdGVfZGVuLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldF9iaXRyYXRlLCBudW1fZnJhbWVzLCBpbmZp
bGVfcGF0aCk7CisgICAgU2ltcGxlRW5jb2RlIHNpbXBsZV9lbmNvZGUod2lkdGhfLCBoZWlnaHRf
LCBmcmFtZV9yYXRlX251bV8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWVf
cmF0ZV9kZW5fLCB0YXJnZXRfYml0cmF0ZV8sIG51bV9mcmFtZXNfLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGluX2ZpbGVfcGF0aF9zdHJfLmNfc3RyKCkpOwogICAgIHNpbXBsZV9l
bmNvZGUuQ29tcHV0ZUZpcnN0UGFzc1N0YXRzKCk7Ci0gICAgY29uc3QgaW50IG51bV9jb2Rpbmdf
ZnJhbWVzID0gc2ltcGxlX2VuY29kZS5HZXRDb2RpbmdGcmFtZU51bSgpOwogICAgIHNpbXBsZV9l
bmNvZGUuU3RhcnRFbmNvZGUoKTsKLSAgICBmb3IgKGludCBpID0gMDsgaSA8IG51bV9jb2Rpbmdf
ZnJhbWVzOyArK2kpIHsKLSAgICAgIEVuY29kZUZyYW1lUmVzdWx0IGVuY29kZV9mcmFtZV9yZXN1
bHQ7Ci0gICAgICBzaW1wbGVfZW5jb2RlLkVuY29kZUZyYW1lKCZlbmNvZGVfZnJhbWVfcmVzdWx0
KTsKLSAgICAgIHF1YW50aXplX2luZGV4X2xpc3QucHVzaF9iYWNrKGVuY29kZV9mcmFtZV9yZXN1
bHQucXVhbnRpemVfaW5kZXgpOwotICAgICAgcmVmX3NzZV9saXN0LnB1c2hfYmFjayhlbmNvZGVf
ZnJhbWVfcmVzdWx0LnNzZSk7Ci0gICAgICByZWZfcHNucl9saXN0LnB1c2hfYmFjayhlbmNvZGVf
ZnJhbWVfcmVzdWx0LnBzbnIpOwotICAgICAgcmVmX2JpdF9zaXplX2xpc3QucHVzaF9iYWNrKGVu
Y29kZV9mcmFtZV9yZXN1bHQuY29kaW5nX2RhdGFfYml0X3NpemUpOwotICAgICAgaWYgKGVuY29k
ZV9mcmFtZV9yZXN1bHQuZnJhbWVfdHlwZSA9PSBrRnJhbWVUeXBlS2V5KSB7Ci0gICAgICAgIGV4
dGVybmFsX2FyZl9pbmRleGVzW2VuY29kZV9mcmFtZV9yZXN1bHQuc2hvd19pZHhdID0gMDsKLSAg
ICAgIH0gZWxzZSBpZiAoZW5jb2RlX2ZyYW1lX3Jlc3VsdC5mcmFtZV90eXBlID09IGtGcmFtZVR5
cGVBbHRSZWYpIHsKLSAgICAgICAgZXh0ZXJuYWxfYXJmX2luZGV4ZXNbZW5jb2RlX2ZyYW1lX3Jl
c3VsdC5zaG93X2lkeF0gPSAxOwotICAgICAgfSBlbHNlIHsKLSAgICAgICAgLy8gVGhpcyBoYXMg
dG8gYmUgfD0gYmVjYXVzZSB3ZSBjYW4ndCBsZXQgb3ZlcmxheSBvdmVyd3JpdGVzIHRoZQotICAg
ICAgICAvLyBhcmYgdHlwZSBmb3IgdGhlIHNhbWUgZnJhbWUuCi0gICAgICAgIGV4dGVybmFsX2Fy
Zl9pbmRleGVzW2VuY29kZV9mcmFtZV9yZXN1bHQuc2hvd19pZHhdIHw9IDA7CisKKyAgICBpbnQg
Y29kZWRfc2hvd19mcmFtZV9jb3VudCA9IDA7CisgICAgd2hpbGUgKGNvZGVkX3Nob3dfZnJhbWVf
Y291bnQgPCBudW1fZnJhbWVzXykgeworICAgICAgY29uc3QgR3JvdXBPZlBpY3R1cmUgZ3JvdXBf
b2ZfcGljdHVyZSA9CisgICAgICAgICAgc2ltcGxlX2VuY29kZS5PYnNlcnZlR3JvdXBPZlBpY3R1
cmUoKTsKKyAgICAgIGdvcF9tYXBbY29kZWRfc2hvd19mcmFtZV9jb3VudF0gfD0ga0dvcE1hcEZs
YWdTdGFydDsKKyAgICAgIGlmIChncm91cF9vZl9waWN0dXJlLnVzZV9hbHRfcmVmKSB7CisgICAg
ICAgIGdvcF9tYXBbY29kZWRfc2hvd19mcmFtZV9jb3VudF0gfD0ga0dvcE1hcEZsYWdVc2VBbHRS
ZWY7CiAgICAgICB9CisgICAgICBjb25zdCBzdGQ6OnZlY3RvcjxFbmNvZGVGcmFtZUluZm8+ICZl
bmNvZGVfZnJhbWVfbGlzdCA9CisgICAgICAgICAgZ3JvdXBfb2ZfcGljdHVyZS5lbmNvZGVfZnJh
bWVfbGlzdDsKKyAgICAgIGZvciAoc2l6ZV90IGdyb3VwX2luZGV4ID0gMDsgZ3JvdXBfaW5kZXgg
PCBlbmNvZGVfZnJhbWVfbGlzdC5zaXplKCk7CisgICAgICAgICAgICsrZ3JvdXBfaW5kZXgpIHsK
KyAgICAgICAgRW5jb2RlRnJhbWVSZXN1bHQgZW5jb2RlX2ZyYW1lX3Jlc3VsdDsKKyAgICAgICAg
c2ltcGxlX2VuY29kZS5FbmNvZGVGcmFtZSgmZW5jb2RlX2ZyYW1lX3Jlc3VsdCk7CisgICAgICAg
IHF1YW50aXplX2luZGV4X2xpc3QucHVzaF9iYWNrKGVuY29kZV9mcmFtZV9yZXN1bHQucXVhbnRp
emVfaW5kZXgpOworICAgICAgICByZWZfc3NlX2xpc3QucHVzaF9iYWNrKGVuY29kZV9mcmFtZV9y
ZXN1bHQuc3NlKTsKKyAgICAgICAgcmVmX3BzbnJfbGlzdC5wdXNoX2JhY2soZW5jb2RlX2ZyYW1l
X3Jlc3VsdC5wc25yKTsKKyAgICAgICAgcmVmX2JpdF9zaXplX2xpc3QucHVzaF9iYWNrKGVuY29k
ZV9mcmFtZV9yZXN1bHQuY29kaW5nX2RhdGFfYml0X3NpemUpOworICAgICAgfQorICAgICAgY29k
ZWRfc2hvd19mcmFtZV9jb3VudCArPSBncm91cF9vZl9waWN0dXJlLnNob3dfZnJhbWVfY291bnQ7
CiAgICAgfQogICAgIHNpbXBsZV9lbmNvZGUuRW5kRW5jb2RlKCk7CiAgIH0KICAgewogICAgIC8v
IFRoZSBzZWNvbmQgZW5jb2RlIHdpdGggcXVhbnRpemUgaW5kZXggZ290IGZyb20gdGhlIGZpcnN0
IGVuY29kZS4KICAgICAvLyBUaGUgZXh0ZXJuYWwgYXJmcyBhcmUgdGhlIHNhbWUgYXMgdGhlIGZp
cnN0IGVuY29kZS4KLSAgICBTaW1wbGVFbmNvZGUgc2ltcGxlX2VuY29kZSh3LCBoLCBmcmFtZV9y
YXRlX251bSwgZnJhbWVfcmF0ZV9kZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dGFyZ2V0X2JpdHJhdGUsIG51bV9mcmFtZXMsIGluZmlsZV9wYXRoKTsKKyAgICBTaW1wbGVFbmNv
ZGUgc2ltcGxlX2VuY29kZSh3aWR0aF8sIGhlaWdodF8sIGZyYW1lX3JhdGVfbnVtXywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBmcmFtZV9yYXRlX2Rlbl8sIHRhcmdldF9iaXRyYXRl
XywgbnVtX2ZyYW1lc18sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5fZmlsZV9w
YXRoX3N0cl8uY19zdHIoKSk7CiAgICAgc2ltcGxlX2VuY29kZS5Db21wdXRlRmlyc3RQYXNzU3Rh
dHMoKTsKLSAgICBzaW1wbGVfZW5jb2RlLlNldEV4dGVybmFsR3JvdXBPZlBpY3R1cmUoZXh0ZXJu
YWxfYXJmX2luZGV4ZXMpOworICAgIHNpbXBsZV9lbmNvZGUuU2V0RXh0ZXJuYWxHcm91cE9mUGlj
dHVyZXNNYXAoZ29wX21hcC5kYXRhKCksIGdvcF9tYXAuc2l6ZSgpKTsKICAgICBjb25zdCBpbnQg
bnVtX2NvZGluZ19mcmFtZXMgPSBzaW1wbGVfZW5jb2RlLkdldENvZGluZ0ZyYW1lTnVtKCk7CiAg
ICAgRVhQRUNUX0VRKHN0YXRpY19jYXN0PHNpemVfdD4obnVtX2NvZGluZ19mcmFtZXMpLAogICAg
ICAgICAgICAgICBxdWFudGl6ZV9pbmRleF9saXN0LnNpemUoKSk7CkBAIC0zNDUsMTEgKzQ2Nyw4
MCBAQCBURVNUKFNpbXBsZUVuY29kZSwgRW5jb2RlQ29uc2lzdGVuY3lUZXN0VXNlRXh0ZXJuYWxB
cmZzKSB7CiAgIH0KIH0KIAotVEVTVChTaW1wbGVFbmNvZGUsIEdldEVuY29kZUZyYW1lSW5mbykg
eworVEVTVF9GKFNpbXBsZUVuY29kZVRlc3QsIFNldEV4dGVybmFsR3JvdXBPZlBpY3R1cmVzTWFw
KSB7CisgIFNpbXBsZUVuY29kZSBzaW1wbGVfZW5jb2RlKHdpZHRoXywgaGVpZ2h0XywgZnJhbWVf
cmF0ZV9udW1fLCBmcmFtZV9yYXRlX2Rlbl8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHRhcmdldF9iaXRyYXRlXywgbnVtX2ZyYW1lc18sCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGluX2ZpbGVfcGF0aF9zdHJfLmNfc3RyKCkpOworICBzaW1wbGVfZW5jb2RlLkNvbXB1dGVG
aXJzdFBhc3NTdGF0cygpOworCisgIHN0ZDo6dmVjdG9yPGludD4gZ29wX21hcChudW1fZnJhbWVz
XywgMCk7CisKKyAgLy8gU2hvdWxkIGJlIHRoZSBmaXJzdCBnb3AgZ3JvdXAuCisgIGdvcF9tYXBb
MF0gPSAwOworCisgIC8vIFNlY29uZCBnb3AgZ3JvdXAgd2l0aCBhbiBhbHQgcmVmLgorICBnb3Bf
bWFwWzVdIHw9IGtHb3BNYXBGbGFnU3RhcnQgfCBrR29wTWFwRmxhZ1VzZUFsdFJlZjsKKworICAv
LyBUaGlyZCBnb3AgZ3JvdXAgd2l0aG91dCBhbiBhbHQgcmVmLgorICBnb3BfbWFwWzEwXSB8PSBr
R29wTWFwRmxhZ1N0YXJ0OworCisgIC8vIExhc3QgZ29wIGdyb3VwLgorICBnb3BfbWFwWzE0XSB8
PSBrR29wTWFwRmxhZ1N0YXJ0IHwga0dvcE1hcEZsYWdVc2VBbHRSZWY7CisKKyAgc2ltcGxlX2Vu
Y29kZS5TZXRFeHRlcm5hbEdyb3VwT2ZQaWN0dXJlc01hcChnb3BfbWFwLmRhdGEoKSwgZ29wX21h
cC5zaXplKCkpOworCisgIHN0ZDo6dmVjdG9yPGludD4gb2JzZXJ2ZWRfZ29wX21hcCA9CisgICAg
ICBzaW1wbGVfZW5jb2RlLk9ic2VydmVFeHRlcm5hbEdyb3VwT2ZQaWN0dXJlc01hcCgpOworCisg
IC8vIEZpcnN0IGdvcCBncm91cC4KKyAgLy8gVGhlcmUgaXMgYWx3YXlzIGEga2V5IGZyYW1lIGF0
IHNob3dfaWR4IDAgYW5kIGtleSBmcmFtZSBzaG91bGQgYWx3YXlzIGJlCisgIC8vIHRoZSBzdGFy
dCBvZiBhIGdvcC4gV2UgZXhwZWN0IE9ic2VydmVFeHRlcm5hbEdyb3VwT2ZQaWN0dXJlc01hcCgp
IHdpbGwKKyAgLy8gaW5zZXJ0IGFuIGV4dHJhIGdvcCBzdGFydCBoZXJlLgorICBFWFBFQ1RfRVEo
b2JzZXJ2ZWRfZ29wX21hcFswXSwga0dvcE1hcEZsYWdTdGFydCB8IGtHb3BNYXBGbGFnVXNlQWx0
UmVmKTsKKworICAvLyBTZWNvbmQgZ29wIGdyb3VwIHdpdGggYW4gYWx0IHJlZi4KKyAgRVhQRUNU
X0VRKG9ic2VydmVkX2dvcF9tYXBbNV0sIGtHb3BNYXBGbGFnU3RhcnQgfCBrR29wTWFwRmxhZ1Vz
ZUFsdFJlZik7CisKKyAgLy8gVGhpcmQgZ29wIGdyb3VwIHdpdGhvdXQgYW4gYWx0IHJlZi4KKyAg
RVhQRUNUX0VRKG9ic2VydmVkX2dvcF9tYXBbMTBdLCBrR29wTWFwRmxhZ1N0YXJ0KTsKKworICAv
LyBMYXN0IGdvcCBncm91cC4gVGhlIGxhc3QgZ29wIGlzIG5vdCBzdXBwb3NlZCB0byB1c2UgYW4g
YWx0IHJlZi4gV2UgZXhwZWN0CisgIC8vIE9ic2VydmVFeHRlcm5hbEdyb3VwT2ZQaWN0dXJlc01h
cCgpIHdpbGwgcmVtb3ZlIHRoZSBhbHQgcmVmIGZsYWcgaGVyZS4KKyAgRVhQRUNUX0VRKG9ic2Vy
dmVkX2dvcF9tYXBbMTRdLCBrR29wTWFwRmxhZ1N0YXJ0KTsKKworICBpbnQgcmVmX2dvcF9zaG93
X2ZyYW1lX2NvdW50X2xpc3RbNF0gPSB7IDUsIDUsIDQsIDMgfTsKKyAgc2l6ZV90IHJlZl9nb3Bf
Y29kZWRfZnJhbWVfY291bnRfbGlzdFs0XSA9IHsgNiwgNiwgNCwgMyB9OworICBpbnQgZ29wX2Nv
dW50ID0gMDsKKworICBzaW1wbGVfZW5jb2RlLlN0YXJ0RW5jb2RlKCk7CisgIGludCBjb2RlZF9z
aG93X2ZyYW1lX2NvdW50ID0gMDsKKyAgd2hpbGUgKGNvZGVkX3Nob3dfZnJhbWVfY291bnQgPCBu
dW1fZnJhbWVzXykgeworICAgIGNvbnN0IEdyb3VwT2ZQaWN0dXJlIGdyb3VwX29mX3BpY3R1cmUg
PQorICAgICAgICBzaW1wbGVfZW5jb2RlLk9ic2VydmVHcm91cE9mUGljdHVyZSgpOworICAgIGNv
bnN0IHN0ZDo6dmVjdG9yPEVuY29kZUZyYW1lSW5mbz4gJmVuY29kZV9mcmFtZV9saXN0ID0KKyAg
ICAgICAgZ3JvdXBfb2ZfcGljdHVyZS5lbmNvZGVfZnJhbWVfbGlzdDsKKyAgICBFWFBFQ1RfRVEo
ZW5jb2RlX2ZyYW1lX2xpc3Quc2l6ZSgpLAorICAgICAgICAgICAgICByZWZfZ29wX2NvZGVkX2Zy
YW1lX2NvdW50X2xpc3RbZ29wX2NvdW50XSk7CisgICAgRVhQRUNUX0VRKGdyb3VwX29mX3BpY3R1
cmUuc2hvd19mcmFtZV9jb3VudCwKKyAgICAgICAgICAgICAgcmVmX2dvcF9zaG93X2ZyYW1lX2Nv
dW50X2xpc3RbZ29wX2NvdW50XSk7CisgICAgZm9yIChzaXplX3QgZ3JvdXBfaW5kZXggPSAwOyBn
cm91cF9pbmRleCA8IGVuY29kZV9mcmFtZV9saXN0LnNpemUoKTsKKyAgICAgICAgICsrZ3JvdXBf
aW5kZXgpIHsKKyAgICAgIEVuY29kZUZyYW1lUmVzdWx0IGVuY29kZV9mcmFtZV9yZXN1bHQ7Cisg
ICAgICBzaW1wbGVfZW5jb2RlLkVuY29kZUZyYW1lKCZlbmNvZGVfZnJhbWVfcmVzdWx0KTsKKyAg
ICB9CisgICAgY29kZWRfc2hvd19mcmFtZV9jb3VudCArPSBncm91cF9vZl9waWN0dXJlLnNob3df
ZnJhbWVfY291bnQ7CisgICAgKytnb3BfY291bnQ7CisgIH0KKyAgRVhQRUNUX0VRKGdvcF9jb3Vu
dCwgNCk7CisgIHNpbXBsZV9lbmNvZGUuRW5kRW5jb2RlKCk7Cit9CisKK1RFU1RfRihTaW1wbGVF
bmNvZGVUZXN0LCBHZXRFbmNvZGVGcmFtZUluZm8pIHsKICAgLy8gTWFrZXMgc3VyZSB0aGF0IHRo
ZSBlbmNvZGVfZnJhbWVfaW5mbyBvYnRhaW5lZCBmcm9tIEdldEVuY29kZUZyYW1lSW5mbygpCiAg
IC8vIG1hdGNoZXMgdGhlIGNvdW50ZXJwYXJ0IGluIGVuY29kZV9mcmFtZV9yZXN1bHQgb2J0YWlu
ZWQgZnJvbSBFbmNvZGVGcmFtZSgpCi0gIFNpbXBsZUVuY29kZSBzaW1wbGVfZW5jb2RlKHcsIGgs
IGZyYW1lX3JhdGVfbnVtLCBmcmFtZV9yYXRlX2RlbiwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdGFyZ2V0X2JpdHJhdGUsIG51bV9mcmFtZXMsIGluZmlsZV9wYXRoKTsKKyAgU2ltcGxl
RW5jb2RlIHNpbXBsZV9lbmNvZGUod2lkdGhfLCBoZWlnaHRfLCBmcmFtZV9yYXRlX251bV8sIGZy
YW1lX3JhdGVfZGVuXywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2JpdHJh
dGVfLCBudW1fZnJhbWVzXywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5fZmlsZV9w
YXRoX3N0cl8uY19zdHIoKSk7CiAgIHNpbXBsZV9lbmNvZGUuQ29tcHV0ZUZpcnN0UGFzc1N0YXRz
KCk7CiAgIGNvbnN0IGludCBudW1fY29kaW5nX2ZyYW1lcyA9IHNpbXBsZV9lbmNvZGUuR2V0Q29k
aW5nRnJhbWVOdW0oKTsKICAgc2ltcGxlX2VuY29kZS5TdGFydEVuY29kZSgpOwpAQCAtMzYzLDEy
ICs1NTQsMTggQEAgVEVTVChTaW1wbGVFbmNvZGUsIEdldEVuY29kZUZyYW1lSW5mbykgewogICBz
aW1wbGVfZW5jb2RlLkVuZEVuY29kZSgpOwogfQogCi1URVNUKFNpbXBsZUVuY29kZSwgR2V0RnJh
bWVQaXhlbENvdW50KSB7Ci0gIFNpbXBsZUVuY29kZSBzaW1wbGVfZW5jb2RlKHcsIGgsIGZyYW1l
X3JhdGVfbnVtLCBmcmFtZV9yYXRlX2RlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dGFyZ2V0X2JpdHJhdGUsIG51bV9mcmFtZXMsIGluZmlsZV9wYXRoKTsKK1RFU1RfRihTaW1wbGVF
bmNvZGVUZXN0LCBHZXRGcmFtZVBpeGVsQ291bnQpIHsKKyAgU2ltcGxlRW5jb2RlIHNpbXBsZV9l
bmNvZGUod2lkdGhfLCBoZWlnaHRfLCBmcmFtZV9yYXRlX251bV8sIGZyYW1lX3JhdGVfZGVuXywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2JpdHJhdGVfLCBudW1fZnJhbWVz
XywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5fZmlsZV9wYXRoX3N0cl8uY19zdHIo
KSk7CiAgIEVYUEVDVF9FUShzaW1wbGVfZW5jb2RlLkdldEZyYW1lUGl4ZWxDb3VudCgpLAotICAg
ICAgICAgICAgc3RhdGljX2Nhc3Q8dWludDY0X3Q+KHcgKiBoICogMyAvIDIpKTsKKyAgICAgICAg
ICAgIHN0YXRpY19jYXN0PHVpbnQ2NF90Pih3aWR0aF8gKiBoZWlnaHRfICogMyAvIDIpKTsKIH0K
IAogfSAgLy8gbmFtZXNwYWNlCiB9ICAvLyBuYW1lc3BhY2UgdnA5CisKK2ludCBtYWluKGludCBh
cmdjLCBjaGFyICoqYXJndikgeworICA6OnRlc3Rpbmc6OkluaXRHb29nbGVUZXN0KCZhcmdjLCBh
cmd2KTsKKyAgcmV0dXJuIFJVTl9BTExfVEVTVFMoKTsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC9zaW1wbGVfZW5jb2Rlci5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zaW1wbGVfZW5jb2Rl
ci5zaAppbmRleCBlZTYzM2FlOTllODA2Mzc2ODI0YWVmYjNkZTA1ZWU0OTc2MDYyYWRmLi5kYzdm
NDZmZjM4YzRkMTg4ZGMzZmJhNGU5MTVkMmMxMjQ0OTFmMDFmIDEwMDc1NQotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rlc3Qvc2ltcGxlX2VuY29kZXIuc2gKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3NpbXBsZV9l
bmNvZGVyLnNoCkBAIC0zNiw3ICszNiw3IEBAIHNpbXBsZV9lbmNvZGVyKCkgewogCiAgIGV2YWwg
IiR7VlBYX1RFU1RfUFJFRklYfSIgIiR7ZW5jb2Rlcn0iICIke2NvZGVjfSIgIiR7WVVWX1JBV19J
TlBVVF9XSURUSH0iIFwKICAgICAgICIke1lVVl9SQVdfSU5QVVRfSEVJR0hUfSIgIiR7WVVWX1JB
V19JTlBVVH0iICIke291dHB1dF9maWxlfSIgOTk5OSAwIDEwMCBcCi0gICAgICAke2Rldm51bGx9
CisgICAgICAke2Rldm51bGx9IHx8IHJldHVybiAxCiAKICAgWyAtZSAiJHtvdXRwdXRfZmlsZX0i
IF0gfHwgcmV0dXJuIDEKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zdHJlc3Muc2gg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rlc3Qvc3RyZXNzLnNoCmluZGV4IGZkZWM3NjRjN2FlZmM3NDk3NDE4Mjk0
NjRjMGE5ZDBiMzk2ODVjMjQuLmJhNzlhNTJhYzNjZjU4ZGI4MjU5YzQ2Yjk1ZjQwNjQ0YzFhY2M5
MDIgMTAwNzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zdHJlc3Muc2gKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90ZXN0L3N0cmVzcy5zaApAQCAtMTgsNyArMTgsNyBAQAogWVVWPSIke0xJQlZQWF9URVNUX0RB
VEFfUEFUSH0vbmlrbGFzXzEyODBfNzIwXzMwLnl1diIKIFZQOD0iJHtMSUJWUFhfVEVTVF9EQVRB
X1BBVEh9L3Rvc192cDgud2VibSIKIFZQOT0iJHtMSUJWUFhfVEVTVF9EQVRBX1BBVEh9L3ZwOTAt
Mi1zaW50ZWxfMTkyMHg4MThfdGlsZV8xeDRfZnBtXzIyNzlrYnBzLndlYm0iCi1EQVRBX1VSTD0i
aHR0cDovL2Rvd25sb2Fkcy53ZWJtcHJvamVjdC5vcmcvdGVzdF9kYXRhL2xpYnZweC8iCitEQVRB
X1VSTD0iaHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2Rvd25sb2Fkcy53ZWJtcHJvamVj
dC5vcmcvdGVzdF9kYXRhL2xpYnZweC8iCiBTSEExX0ZJTEU9IiQoZGlybmFtZSAkMCkvdGVzdC1k
YXRhLnNoYTEiCiAKICMgU2V0IHNoYTFzdW0gdG8gcHJvcGVyIHNoYSBwcm9ncmFtIChzaGExc3Vt
LCBzaGFzdW0sIHNoYTEpLiBUaGlzIGNvZGUgaXMKQEAgLTUyLDcgKzUyLDcgQEAgc3RyZXNzX3Zl
cmlmeV9lbnZpcm9ubWVudCgpIHsKICAgZmkKICAgZm9yIGZpbGUgaW4gIiR7WVVWfSIgIiR7VlA4
fSIgIiR7VlA5fSI7IGRvCiAgICAgaWYgWyAhIC1lICIke2ZpbGV9IiBdIDsgdGhlbgotICAgICAg
ZG93bmxvYWRfYW5kX2NoZWNrX2ZpbGUgIiR7ZmlsZX0iCisgICAgICBkb3dubG9hZF9hbmRfY2hl
Y2tfZmlsZSAiJHtmaWxlfSIgfHwgcmV0dXJuIDEKICAgICBmaQogICBkb25lCiAgIGlmIFsgISAt
ZSAiJHtZVVZ9IiBdIHx8IFsgISAtZSAiJHtWUDh9IiBdIHx8IFsgISAtZSAiJHtWUDl9IiBdIDsg
dGhlbgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3N1bV9zcXVhcmVzX3Rlc3QuY2MgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3Rlc3Qvc3VtX3NxdWFyZXNfdGVzdC5jYwppbmRleCBkMmM3MGY0ZDRiNGQzZjkx
ZmY3ODgyZmNhMThhNDNkYzUyNzY5YWRhLi5kZjZkYTg0MDM3NmNjZTU3OWVhNWZjMDVkZjQ2ZTIw
YTJlMTk3YmU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvc3VtX3NxdWFyZXNfdGVzdC5j
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvc3VtX3NxdWFyZXNfdGVzdC5jYwpAQCAtNDUsNiArNDUs
NyBAQCBjbGFzcyBTdW1TcXVhcmVzVGVzdCA6IHB1YmxpYyA6OnRlc3Rpbmc6OlRlc3RXaXRoUGFy
YW08U3VtU3F1YXJlc1BhcmFtPiB7CiAgIFNTSTE2RnVuYyByZWZfZnVuY187CiAgIFNTSTE2RnVu
YyB0c3RfZnVuY187CiB9OworR1RFU1RfQUxMT1dfVU5JTlNUQU5USUFURURfUEFSQU1FVEVSSVpF
RF9URVNUKFN1bVNxdWFyZXNUZXN0KTsKIAogVEVTVF9QKFN1bVNxdWFyZXNUZXN0LCBPcGVyYXRp
b25DaGVjaykgewogICBBQ01SYW5kb20gcm5kKEFDTVJhbmRvbTo6RGV0ZXJtaW5pc3RpY1NlZWQo
KSk7CkBAIC0xMDYsMjEgKzEwNywyMSBAQCBURVNUX1AoU3VtU3F1YXJlc1Rlc3QsIEV4dHJlbWVW
YWx1ZXMpIHsKIHVzaW5nIHN0ZDo6bWFrZV90dXBsZTsKIAogI2lmIEhBVkVfTkVPTgotSU5TVEFO
VElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTkVPTiwg
U3VtU3F1YXJlc1Rlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X3N1
bV9zcXVhcmVzXzJkX2kxNl9jLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZw
eF9zdW1fc3F1YXJlc18yZF9pMTZfbmVvbikpKTsKICNlbmRpZiAgLy8gSEFWRV9ORU9OCiAKICNp
ZiBIQVZFX1NTRTIKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9T
VUlURV9QKAogICAgIFNTRTIsIFN1bVNxdWFyZXNUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVz
KG1ha2VfdHVwbGUoJnZweF9zdW1fc3F1YXJlc18yZF9pMTZfYywKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICZ2cHhfc3VtX3NxdWFyZXNfMmRfaTE2X3NzZTIpKSk7CiAjZW5kaWYg
IC8vIEhBVkVfU1NFMgogCiAjaWYgSEFWRV9NU0EKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE1TQSwgU3VtU3F1YXJlc1Rlc3QsCiAgICAg
Ojp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X3N1bV9zcXVhcmVzXzJkX2kxNl9jLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9zdW1fc3F1YXJlc18yZF9pMTZf
bXNhKSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3N1cGVyZnJhbWVfdGVzdC5jYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdGVzdC9zdXBlcmZyYW1lX3Rlc3QuY2MKaW5kZXggOGM4ZDFhZTI5MDRmZTM5
NGQ3MTEwMzBjYjkwNTFhODY3OTQ2MzI0ZS4uYTVjOTJlOTE0N2JjNzc4OTRjOTkzNGEzZGZkNTNh
NWQxZmY2ZDVhOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3N1cGVyZnJhbWVfdGVzdC5j
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvc3VwZXJmcmFtZV90ZXN0LmNjCkBAIC0yNyw3ICsyNyw3
IEBAIGNsYXNzIFN1cGVyZnJhbWVUZXN0CiAgICAgICBwdWJsaWMgOjpsaWJ2cHhfdGVzdDo6Q29k
ZWNUZXN0V2l0aFBhcmFtPFN1cGVyZnJhbWVUZXN0UGFyYW0+IHsKICBwcm90ZWN0ZWQ6CiAgIFN1
cGVyZnJhbWVUZXN0KCkKLSAgICAgIDogRW5jb2RlclRlc3QoR0VUX1BBUkFNKDApKSwgbW9kaWZp
ZWRfYnVmXyhOVUxMKSwgbGFzdF9zZl9wdHNfKDApIHt9CisgICAgICA6IEVuY29kZXJUZXN0KEdF
VF9QQVJBTSgwKSksIG1vZGlmaWVkX2J1Zl8obnVsbHB0ciksIGxhc3Rfc2ZfcHRzXygwKSB7fQog
ICB2aXJ0dWFsIH5TdXBlcmZyYW1lVGVzdCgpIHt9CiAKICAgdmlydHVhbCB2b2lkIFNldFVwKCkg
ewpAQCAtOTUsNyArOTUsNyBAQCBURVNUX1AoU3VwZXJmcmFtZVRlc3QsIFRlc3RTdXBlcmZyYW1l
SW5kZXhJc09wdGlvbmFsKSB7CiAgIEVYUEVDVF9FUShzZl9jb3VudF8sIDEpOwogfQogCi1WUDlf
SU5TVEFOVElBVEVfVEVTVF9DQVNFKAorVlA5X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUoCiAgICAg
U3VwZXJmcmFtZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpDb21iaW5lKDo6dGVzdGluZzo6VmFsdWVz
KDo6bGlidnB4X3Rlc3Q6OmtUd29QYXNzR29vZCksCiAgICAgICAgICAgICAgICAgICAgICAgIDo6
dGVzdGluZzo6VmFsdWVzKDApKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvc3ZjX2Rh
dGFyYXRlX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvc3ZjX2RhdGFyYXRlX3Rlc3QuY2MKaW5k
ZXggZjk5NWU0YzA4YWQ2NDczZmFmMmQxMWI3NzIxOTRjMDYwNGY4MmM0YS4uMGE3ZDAwMzJjMTQy
YmEwMjQxYWE3YWIwZDY0MzU5MWY5NmY3OWM3OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0
L3N2Y19kYXRhcmF0ZV90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zdmNfZGF0YXJhdGVf
dGVzdC5jYwpAQCAtMzM3LDcgKzMzNyw3IEBAIGNsYXNzIERhdGFyYXRlT25lUGFzc0NiclN2YyA6
IHB1YmxpYyBPbmVQYXNzQ2JyU3ZjIHsKICAgICB9IGVsc2UgaWYgKGR5bmFtaWNfZHJvcF9sYXll
cl8gJiYgc2luZ2xlX2xheWVyX3Jlc2l6ZV8pIHsKICAgICAgIC8vIENoYW5nZSBsYXllciBiaXRy
YXRlcyB0byBzZXQgdG9wIGxheWVycyB0byAwLiBUaGlzIHdpbGwgdHJpZ2dlciBza2lwCiAgICAg
ICAvLyBlbmNvZGluZy9kcm9wcGluZyBvZiB0b3Agc3BhdGlhbCBsYXllcnMuCi0gICAgICBpZiAo
dmlkZW8tPmZyYW1lKCkgPT0gMTApIHsKKyAgICAgIGlmICh2aWRlby0+ZnJhbWUoKSA9PSAyKSB7
CiAgICAgICAgIGNmZ18ucmNfdGFyZ2V0X2JpdHJhdGUgLT0KICAgICAgICAgICAgIChjZmdfLmxh
eWVyX3RhcmdldF9iaXRyYXRlWzFdICsgY2ZnXy5sYXllcl90YXJnZXRfYml0cmF0ZVsyXSk7CiAg
ICAgICAgIG1pZGRsZV9iaXRyYXRlXyA9IGNmZ18ubGF5ZXJfdGFyZ2V0X2JpdHJhdGVbMV07CkBA
IC0zNDgsMTIgKzM0OCwyNiBAQCBjbGFzcyBEYXRhcmF0ZU9uZVBhc3NDYnJTdmMgOiBwdWJsaWMg
T25lUGFzc0NiclN2YyB7CiAgICAgICAgIGNmZ18ubGF5ZXJfdGFyZ2V0X2JpdHJhdGVbMF0gPSAz
MDsKICAgICAgICAgY2ZnXy5yY190YXJnZXRfYml0cmF0ZSA9IGNmZ18ubGF5ZXJfdGFyZ2V0X2Jp
dHJhdGVbMF07CiAgICAgICAgIGVuY29kZXItPkNvbmZpZygmY2ZnXyk7Ci0gICAgICB9IGVsc2Ug
aWYgKHZpZGVvLT5mcmFtZSgpID09IDMwMCkgeworICAgICAgfSBlbHNlIGlmICh2aWRlby0+ZnJh
bWUoKSA9PSAxMDApIHsKICAgICAgICAgLy8gU2V0IGJhc2Ugc3BhdGlhbCBsYXllciB0byB2ZXJ5
IGhpZ2ggdG8gZ28gYmFjayB1cCB0byBvcmlnaW5hbCBzaXplLgotICAgICAgICBjZmdfLmxheWVy
X3RhcmdldF9iaXRyYXRlWzBdID0gMzAwOworICAgICAgICBjZmdfLmxheWVyX3RhcmdldF9iaXRy
YXRlWzBdID0gNDAwOwogICAgICAgICBjZmdfLnJjX3RhcmdldF9iaXRyYXRlID0gY2ZnXy5sYXll
cl90YXJnZXRfYml0cmF0ZVswXTsKICAgICAgICAgZW5jb2Rlci0+Q29uZmlnKCZjZmdfKTsKICAg
ICAgIH0KKyAgICB9IGVsc2UgaWYgKCFkeW5hbWljX2Ryb3BfbGF5ZXJfICYmIHNpbmdsZV9sYXll
cl9yZXNpemVfKSB7CisgICAgICBpZiAodmlkZW8tPmZyYW1lKCkgPT0gMikgeworICAgICAgICBj
ZmdfLmxheWVyX3RhcmdldF9iaXRyYXRlWzBdID0gMzA7CisgICAgICAgIGNmZ18ubGF5ZXJfdGFy
Z2V0X2JpdHJhdGVbMV0gPSA1MDsKKyAgICAgICAgY2ZnXy5yY190YXJnZXRfYml0cmF0ZSA9Cisg
ICAgICAgICAgICAoY2ZnXy5sYXllcl90YXJnZXRfYml0cmF0ZVswXSArIGNmZ18ubGF5ZXJfdGFy
Z2V0X2JpdHJhdGVbMV0pOworICAgICAgICBlbmNvZGVyLT5Db25maWcoJmNmZ18pOworICAgICAg
fSBlbHNlIGlmICh2aWRlby0+ZnJhbWUoKSA9PSAxNjApIHsKKyAgICAgICAgY2ZnXy5sYXllcl90
YXJnZXRfYml0cmF0ZVswXSA9IDE1MDA7CisgICAgICAgIGNmZ18ubGF5ZXJfdGFyZ2V0X2JpdHJh
dGVbMV0gPSAyMDAwOworICAgICAgICBjZmdfLnJjX3RhcmdldF9iaXRyYXRlID0KKyAgICAgICAg
ICAgIChjZmdfLmxheWVyX3RhcmdldF9iaXRyYXRlWzBdICsgY2ZnXy5sYXllcl90YXJnZXRfYml0
cmF0ZVsxXSk7CisgICAgICAgIGVuY29kZXItPkNvbmZpZygmY2ZnXyk7CisgICAgICB9CiAgICAg
fQogICAgIGlmIChmb3JjZV9rZXlfdGVzdF8gJiYgZm9yY2Vfa2V5XykgZnJhbWVfZmxhZ3NfID0g
VlBYX0VGTEFHX0ZPUkNFX0tGOwogCkBAIC00NTIsMTAgKzQ2NiwxMiBAQCBjbGFzcyBEYXRhcmF0
ZU9uZVBhc3NDYnJTdmMgOiBwdWJsaWMgT25lUGFzc0NiclN2YyB7CiAgICAgcGFyc2Vfc3VwZXJm
cmFtZV9pbmRleChzdGF0aWNfY2FzdDxjb25zdCB1aW50OF90ICo+KHBrdC0+ZGF0YS5mcmFtZS5i
dWYpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgcGt0LT5kYXRhLmZyYW1lLnN6LCBzaXpl
c19wYXJzZWQsICZjb3VudCk7CiAgICAgLy8gQ291bnQgbWF5IGJlIGxlc3MgdGhhbiBudW1iZXIg
b2Ygc3BhdGlhbCBsYXllcnMgYmVjYXVzZSBvZiBmcmFtZSBkcm9wcy4KLSAgICBmb3IgKGludCBz
bCA9IDA7IHNsIDwgbnVtYmVyX3NwYXRpYWxfbGF5ZXJzXzsgKytzbCkgewotICAgICAgaWYgKHBr
dC0+ZGF0YS5mcmFtZS5zcGF0aWFsX2xheWVyX2VuY29kZWRbc2xdKSB7Ci0gICAgICAgIHNpemVz
W3NsXSA9IHNpemVzX3BhcnNlZFtudW1fbGF5ZXJzX2VuY29kZWRdOwotICAgICAgICBudW1fbGF5
ZXJzX2VuY29kZWQrKzsKKyAgICBpZiAobnVtYmVyX3NwYXRpYWxfbGF5ZXJzXyA+IDEpIHsKKyAg
ICAgIGZvciAoaW50IHNsID0gMDsgc2wgPCBudW1iZXJfc3BhdGlhbF9sYXllcnNfOyArK3NsKSB7
CisgICAgICAgIGlmIChwa3QtPmRhdGEuZnJhbWUuc3BhdGlhbF9sYXllcl9lbmNvZGVkW3NsXSkg
eworICAgICAgICAgIHNpemVzW3NsXSA9IHNpemVzX3BhcnNlZFtudW1fbGF5ZXJzX2VuY29kZWRd
OworICAgICAgICAgIG51bV9sYXllcnNfZW5jb2RlZCsrOworICAgICAgICB9CiAgICAgICB9CiAg
ICAgfQogICAgIC8vIEZvciBzdXBlcmZyYW1lIHdpdGggSW50cmEtb25seSBjb3VudCB3aWxsIGJl
ICsxIGxhcmdlcgpAQCAtODM4LDcgKzg1NCw3IEBAIFRFU1RfUChEYXRhcmF0ZU9uZVBhc3NDYnJT
dmNTaW5nbGVCUiwgT25lUGFzc0NiclN2YzNTTF9EaXNhYmxlRW5hYmxlTGF5ZXJzKSB7CiAvLyB0
aGUgZmx5IHN3aXRjaGluZyB0byAxIHNwYXRpYWwgbGF5ZXIgd2l0aCBkeW5hbWljIHJlc2l6ZSBl
bmFibGVkLgogLy8gVGhlIHJlc2l6ZXIgd2lsbCByZXNpemUgdGhlIHNpbmdsZSBsYXllciBkb3du
IGFuZCBiYWNrIHVwIGFnYWluLCBhcyB0aGUKIC8vIGJpdHJhdGUgZ29lcyBiYWNrIHVwLgotVEVT
VF9QKERhdGFyYXRlT25lUGFzc0NiclN2Y1NpbmdsZUJSLCBPbmVQYXNzQ2JyU3ZjM1NMX1Npbmds
ZUxheWVyUmVzaXplKSB7CitURVNUX1AoRGF0YXJhdGVPbmVQYXNzQ2JyU3ZjU2luZ2xlQlIsIE9u
ZVBhc3NDYnJTdmMyU0xfU2luZ2xlTGF5ZXJSZXNpemUpIHsKICAgU2V0U3ZjQ29uZmlnKDIsIDEp
OwogICBjZmdfLnJjX2J1Zl9pbml0aWFsX3N6ID0gNTAwOwogICBjZmdfLnJjX2J1Zl9vcHRpbWFs
X3N6ID0gNTAwOwpAQCAtODUwLDEwICs4NjYsMTAgQEAgVEVTVF9QKERhdGFyYXRlT25lUGFzc0Ni
clN2Y1NpbmdsZUJSLCBPbmVQYXNzQ2JyU3ZjM1NMX1NpbmdsZUxheWVyUmVzaXplKSB7CiAgIGNm
Z18ucmNfZHJvcGZyYW1lX3RocmVzaCA9IDMwOwogICBjZmdfLmtmX21heF9kaXN0ID0gOTk5OTsK
ICAgY2ZnXy5yY19yZXNpemVfYWxsb3dlZCA9IDE7Ci0gIDo6bGlidnB4X3Rlc3Q6Okk0MjBWaWRl
b1NvdXJjZSB2aWRlbygibmlrbGFzXzY0MF80ODBfMzAueXV2IiwgNjQwLCA0ODAsIDMwLCAxLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgNDAwKTsKLSAgdG9wX3Ns
X3dpZHRoXyA9IDY0MDsKLSAgdG9wX3NsX2hlaWdodF8gPSA0ODA7CisgIDo6bGlidnB4X3Rlc3Q6
Okk0MjBWaWRlb1NvdXJjZSB2aWRlbygiZGVza3RvcF9vZmZpY2UxLjEyODBfNzIwLTAyMC55dXYi
LCAxMjgwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNzIwLCAxNSwg
MSwgMCwgMzAwKTsKKyAgdG9wX3NsX3dpZHRoXyA9IDEyODA7CisgIHRvcF9zbF9oZWlnaHRfID0g
NzIwOwogICBjZmdfLnJjX3RhcmdldF9iaXRyYXRlID0gODAwOwogICBSZXNldE1vZGVsKCk7CiAg
IGR5bmFtaWNfZHJvcF9sYXllcl8gPSB0cnVlOwpAQCAtODc1LDYgKzg5MSwzOCBAQCBURVNUX1Ao
RGF0YXJhdGVPbmVQYXNzQ2JyU3ZjU2luZ2xlQlIsIE9uZVBhc3NDYnJTdmMzU0xfU2luZ2xlTGF5
ZXJSZXNpemUpIHsKICNlbmRpZgogfQogCisvLyBGb3IgIHBhc3MgQ0JSIFNWQyB3aXRoIDEgc3Bh
dGlhbCBhbmQgMiB0ZW1wb3JhbCBsYXllcnMgd2l0aCBkeW5hbWljIHJlc2l6ZQorLy8gYW5kIGRl
bm9pc2VyIGVuYWJsZWQuIFRoZSByZXNpemVyIHdpbGwgcmVzaXplIHRoZSBzaW5nbGUgbGF5ZXIg
ZG93biBhbmQgYmFjaworLy8gdXAgYWdhaW4sIGFzIHRoZSBiaXRyYXRlIGdvZXMgYmFjayB1cC4K
K1RFU1RfUChEYXRhcmF0ZU9uZVBhc3NDYnJTdmNTaW5nbGVCUiwgT25lUGFzc0NiclN2YzFTTDJU
TF9EZW5vaXNlUmVzaXplKSB7CisgIFNldFN2Y0NvbmZpZygxLCAyKTsKKyAgY2ZnXy5yY19idWZf
aW5pdGlhbF9zeiA9IDUwMDsKKyAgY2ZnXy5yY19idWZfb3B0aW1hbF9zeiA9IDUwMDsKKyAgY2Zn
Xy5yY19idWZfc3ogPSAxMDAwOworICBjZmdfLnJjX21pbl9xdWFudGl6ZXIgPSAwOworICBjZmdf
LnJjX21heF9xdWFudGl6ZXIgPSA2MzsKKyAgY2ZnXy5nX3RocmVhZHMgPSAxOworICBjZmdfLnRl
bXBvcmFsX2xheWVyaW5nX21vZGUgPSAyOworICBjZmdfLnJjX2Ryb3BmcmFtZV90aHJlc2ggPSAz
MDsKKyAgY2ZnXy5rZl9tYXhfZGlzdCA9IDk5OTk7CisgIGNmZ18ucmNfcmVzaXplX2FsbG93ZWQg
PSAxOworICA6OmxpYnZweF90ZXN0OjpJNDIwVmlkZW9Tb3VyY2UgdmlkZW8oImRlc2t0b3Bfb2Zm
aWNlMS4xMjgwXzcyMC0wMjAueXV2IiwgMTI4MCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDcyMCwgMTIsIDEsIDAsIDMwMCk7CisgIHRvcF9zbF93aWR0aF8gPSAxMjgw
OworICB0b3Bfc2xfaGVpZ2h0XyA9IDcyMDsKKyAgY2ZnXy5yY190YXJnZXRfYml0cmF0ZSA9IDgw
MDsKKyAgUmVzZXRNb2RlbCgpOworICBkeW5hbWljX2Ryb3BfbGF5ZXJfID0gZmFsc2U7CisgIHNp
bmdsZV9sYXllcl9yZXNpemVfID0gdHJ1ZTsKKyAgZGVub2lzZXJfb25fID0gMTsKKyAgYmFzZV9z
cGVlZF9zZXR0aW5nXyA9IHNwZWVkX3NldHRpbmdfOworICBBc3NpZ25MYXllckJpdHJhdGVzKCk7
CisgIEFTU0VSVF9OT19GQVRBTF9GQUlMVVJFKFJ1bkxvb3AoJnZpZGVvKSk7CisgIC8vIEV4cGVj
dCBhdCBsZWFzdCBvbmUgcmVzaXplIGRvd24gYW5kIGF0IGxlYXN0IG9uZSByZXNpemUgYmFjayB1
cC4KKyAgRVhQRUNUX0dFKG51bV9yZXNpemVfZG93bl8sIDEpOworICBFWFBFQ1RfR0UobnVtX3Jl
c2l6ZV91cF8sIDEpOworfQorCiAvLyBSdW4gU1ZDIGVuY29kZXIgZm9yIDEgdGVtcG9yYWwgbGF5
ZXIsIDIgc3BhdGlhbCBsYXllcnMsIHdpdGggc3BhdGlhbAogLy8gZG93bnNjYWxlIDV4NS4KIFRF
U1RfUChEYXRhcmF0ZU9uZVBhc3NDYnJTdmNTaW5nbGVCUiwgT25lUGFzc0NiclN2YzJTTDFUTDV4
NU11bHRpcGxlUnVucykgewpAQCAtMTQ4MSwyOSArMTUyOSwyOSBAQCBURVNUX1AoRGF0YXJhdGVP
bmVQYXNzQ2JyU3ZjUG9zdGVuY29kZURyb3AsIE9uZVBhc3NDYnJTdmMyUUwxVExTY3JlZW4pIHsK
ICNlbmRpZgogfQogCi1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKERhdGFyYXRlT25lUGFzc0Ni
clN2Y1NpbmdsZUJSLAotICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdl
KDUsIDEwKSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURShEYXRhcmF0ZU9uZVBhc3NDYnJT
dmNTaW5nbGVCUiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2Uo
NSwgMTApKTsKIAotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShEYXRhcmF0ZU9uZVBhc3NDYnJT
dmNQb3N0ZW5jb2RlRHJvcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpS
YW5nZSg1LCA2KSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURShEYXRhcmF0ZU9uZVBhc3ND
YnJTdmNQb3N0ZW5jb2RlRHJvcCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGlu
Zzo6UmFuZ2UoNSwgNikpOwogCi1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKERhdGFyYXRlT25l
UGFzc0NiclN2Y0ludGVyTGF5ZXJQcmVkU2luZ2xlQlIsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgIDo6dGVzdGluZzo6UmFuZ2UoNSwgMTApLCA6OnRlc3Rpbmc6OlJhbmdlKDAsIDMpKTsKK1ZQ
OV9JTlNUQU5USUFURV9URVNUX1NVSVRFKERhdGFyYXRlT25lUGFzc0NiclN2Y0ludGVyTGF5ZXJQ
cmVkU2luZ2xlQlIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdl
KDUsIDEwKSwgOjp0ZXN0aW5nOjpSYW5nZSgwLCAzKSk7CiAKLVZQOV9JTlNUQU5USUFURV9URVNU
X0NBU0UoRGF0YXJhdGVPbmVQYXNzQ2JyU3ZjTXVsdGlCUiwgOjp0ZXN0aW5nOjpSYW5nZSg1LCAx
MCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoMCwgMykpOwor
VlA5X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUoRGF0YXJhdGVPbmVQYXNzQ2JyU3ZjTXVsdGlCUiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoNSwgMTApLCA6OnRl
c3Rpbmc6OlJhbmdlKDAsIDMpKTsKIAotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShEYXRhcmF0
ZU9uZVBhc3NDYnJTdmNGcmFtZURyb3BNdWx0aUJSLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICA6OnRlc3Rpbmc6OlJhbmdlKDUsIDEwKSwgOjp0ZXN0aW5nOjpSYW5nZSgwLCAyKSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgwLCAzKSk7CitWUDlfSU5TVEFO
VElBVEVfVEVTVF9TVUlURShEYXRhcmF0ZU9uZVBhc3NDYnJTdmNGcmFtZURyb3BNdWx0aUJSLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSg1LCAxMCksIDo6dGVz
dGluZzo6UmFuZ2UoMCwgMiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6
OlJhbmdlKDAsIDMpKTsKIAogI2lmIENPTkZJR19WUDlfVEVNUE9SQUxfREVOT0lTSU5HCi1WUDlf
SU5TVEFOVElBVEVfVEVTVF9DQVNFKERhdGFyYXRlT25lUGFzc0NiclN2Y0Rlbm9pc2VyLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDUsIDEwKSwgOjp0ZXN0aW5n
OjpSYW5nZSgxLCAzKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5n
ZSgwLCAzKSwgOjp0ZXN0aW5nOjpSYW5nZSgwLCA0KSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9T
VUlURShEYXRhcmF0ZU9uZVBhc3NDYnJTdmNEZW5vaXNlciwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoNSwgMTApLCA6OnRlc3Rpbmc6OlJhbmdlKDEsIDMpLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgwLCAzKSwgOjp0ZXN0
aW5nOjpSYW5nZSgwLCA0KSk7CiAjZW5kaWYKIAotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShE
YXRhcmF0ZU9uZVBhc3NDYnJTdmNTbWFsbEtGLCA6OnRlc3Rpbmc6OlJhbmdlKDUsIDEwKSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgzMiwgMzYpKTsKK1ZQOV9J
TlNUQU5USUFURV9URVNUX1NVSVRFKERhdGFyYXRlT25lUGFzc0NiclN2Y1NtYWxsS0YsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDUsIDEwKSwgOjp0ZXN0aW5n
OjpSYW5nZSgzMiwgMzYpKTsKIH0gIC8vIG5hbWVzcGFjZQogfSAgLy8gbmFtZXNwYWNlIHN2Y190
ZXN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvc3ZjX2VuZF90b19lbmRfdGVzdC5jYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdGVzdC9zdmNfZW5kX3RvX2VuZF90ZXN0LmNjCmluZGV4IDgyMjU5YWMzMGNh
Y2JmYzQ2ZGNmMzE3MDZjZThkMDAxZDQ4YmU3NDguLjUxODgyNGQwM2ZjMTYzNDdhYzAzMjgxNWYx
NDkyZTRjZWU5YWJjZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zdmNfZW5kX3RvX2Vu
ZF90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zdmNfZW5kX3RvX2VuZF90ZXN0LmNjCkBA
IC0xMjEsNyArMTIxLDggQEAgY2xhc3MgU3luY0ZyYW1lT25lUGFzc0NiclN2YyA6IHB1YmxpYyBP
bmVQYXNzQ2JyU3ZjLAogICAgICAgICBmcmFtZV90b19zdGFydF9kZWNvZGVfKDApLCBmcmFtZV90
b19zeW5jXygwKSwKICAgICAgICAgaW50ZXJfbGF5ZXJfcHJlZF9tb2RlXyhHRVRfUEFSQU0oMSkp
LCBkZWNvZGVfdG9fbGF5ZXJfYmVmb3JlX3N5bmNfKC0xKSwKICAgICAgICAgZGVjb2RlX3RvX2xh
eWVyX2FmdGVyX3N5bmNfKC0xKSwgZGVub2lzZXJfb25fKDApLAotICAgICAgICBpbnRyYV9vbmx5
X3Rlc3RfKGZhbHNlKSwgbWlzbWF0Y2hfbmZyYW1lc18oMCksIG51bV9ub25yZWZfZnJhbWVzXygw
KSB7CisgICAgICAgIGludHJhX29ubHlfdGVzdF8oZmFsc2UpLCBsb29wZmlsdGVyX29mZl8oMCks
IG1pc21hdGNoX25mcmFtZXNfKDApLAorICAgICAgICBudW1fbm9ucmVmX2ZyYW1lc18oMCkgewog
ICAgIFNldE1vZGUoOjpsaWJ2cHhfdGVzdDo6a1JlYWxUaW1lKTsKICAgICBtZW1zZXQoJnN2Y19s
YXllcl9zeW5jXywgMCwgc2l6ZW9mKHN2Y19sYXllcl9zeW5jXykpOwogICB9CkBAIC0xNTQsNiAr
MTU1LDggQEAgY2xhc3MgU3luY0ZyYW1lT25lUGFzc0NiclN2YyA6IHB1YmxpYyBPbmVQYXNzQ2Jy
U3ZjLAogICAgICAgICAvLyBTbyBzZXQgaXQgaGVyZSBpbiB0aGVzZSB0ZXNzIHRvIGF2b2lkIGVu
Y29kZXItZGVjb2RlcgogICAgICAgICAvLyBtaXNtYXRjaCBjaGVjayBvbiBjb2xvciBzcGFjZSBz
ZXR0aW5nLgogICAgICAgICBlbmNvZGVyLT5Db250cm9sKFZQOUVfU0VUX0NPTE9SX1NQQUNFLCBW
UFhfQ1NfQlRfNjAxKTsKKworICAgICAgZW5jb2Rlci0+Q29udHJvbChWUDlFX1NFVF9ESVNBQkxF
X0xPT1BGSUxURVIsIGxvb3BmaWx0ZXJfb2ZmXyk7CiAgICAgfQogICAgIGlmICh2aWRlby0+ZnJh
bWUoKSA9PSBmcmFtZV90b19zeW5jXykgewogICAgICAgZW5jb2Rlci0+Q29udHJvbChWUDlFX1NF
VF9TVkNfU1BBVElBTF9MQVlFUl9TWU5DLCAmc3ZjX2xheWVyX3N5bmNfKTsKQEAgLTIxNCw3ICsy
MTcsMTAgQEAgY2xhc3MgU3luY0ZyYW1lT25lUGFzc0NiclN2YyA6IHB1YmxpYyBPbmVQYXNzQ2Jy
U3ZjLAogICBpbnQgZGVjb2RlX3RvX2xheWVyX2FmdGVyX3N5bmNfOwogICBpbnQgZGVub2lzZXJf
b25fOwogICBib29sIGludHJhX29ubHlfdGVzdF87CisgIGludCBsb29wZmlsdGVyX29mZl87CiAg
IHZweF9zdmNfc3BhdGlhbF9sYXllcl9zeW5jX3Qgc3ZjX2xheWVyX3N5bmNfOworICB1bnNpZ25l
ZCBpbnQgbWlzbWF0Y2hfbmZyYW1lc187CisgIHVuc2lnbmVkIGludCBudW1fbm9ucmVmX2ZyYW1l
c187CiAKICBwcml2YXRlOgogICB2aXJ0dWFsIHZvaWQgU2V0Q29uZmlnKGNvbnN0IGludCBudW1f
dGVtcG9yYWxfbGF5ZXIpIHsKQEAgLTI0Myw5ICsyNDksNiBAQCBjbGFzcyBTeW5jRnJhbWVPbmVQ
YXNzQ2JyU3ZjIDogcHVibGljIE9uZVBhc3NDYnJTdmMsCiAgICAgICBjZmdfLnRlbXBvcmFsX2xh
eWVyaW5nX21vZGUgPSAxOwogICAgIH0KICAgfQotCi0gIHVuc2lnbmVkIGludCBtaXNtYXRjaF9u
ZnJhbWVzXzsKLSAgdW5zaWduZWQgaW50IG51bV9ub25yZWZfZnJhbWVzXzsKIH07CiAKIC8vIFRl
c3QgZm9yIHN5bmMgbGF5ZXIgZm9yIDEgcGFzcyBDQlIgU1ZDOiAzIHNwYXRpYWwgbGF5ZXJzIGFu
ZApAQCAtNDcwLDkgKzQ3MywxNzcgQEAgVEVTVF9QKFN5bmNGcmFtZU9uZVBhc3NDYnJTdmMsIE9u
ZVBhc3NDYnJTdmMxU0wzVExTeW5jRnJhbWVJbnRyYU9ubHlRVkdBKSB7CiAjZW5kaWYKIH0KIAot
VlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShTeW5jRnJhbWVPbmVQYXNzQ2JyU3ZjLCA6OnRlc3Rp
bmc6OlJhbmdlKDAsIDMpKTsKKy8vIFBhcmFtczogTG9vcGZpbHRlciBtb2Rlcy4KK2NsYXNzIExv
b3BmaWx0ZXJPbmVQYXNzQ2JyU3ZjIDogcHVibGljIE9uZVBhc3NDYnJTdmMsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHB1YmxpYyA6OmxpYnZweF90ZXN0OjpDb2RlY1Rlc3RXaXRo
UGFyYW08aW50PiB7CisgcHVibGljOgorICBMb29wZmlsdGVyT25lUGFzc0NiclN2YygpCisgICAg
ICA6IE9uZVBhc3NDYnJTdmMoR0VUX1BBUkFNKDApKSwgbG9vcGZpbHRlcl9vZmZfKEdFVF9QQVJB
TSgxKSksCisgICAgICAgIG1pc21hdGNoX25mcmFtZXNfKDApLCBudW1fbm9ucmVmX2ZyYW1lc18o
MCkgeworICAgIFNldE1vZGUoOjpsaWJ2cHhfdGVzdDo6a1JlYWxUaW1lKTsKKyAgfQorCisgcHJv
dGVjdGVkOgorICB2aXJ0dWFsIH5Mb29wZmlsdGVyT25lUGFzc0NiclN2YygpIHt9CisKKyAgdmly
dHVhbCB2b2lkIFNldFVwKCkgeworICAgIEluaXRpYWxpemVDb25maWcoKTsKKyAgICBzcGVlZF9z
ZXR0aW5nXyA9IDc7CisgIH0KKworICB2aXJ0dWFsIHZvaWQgUHJlRW5jb2RlRnJhbWVIb29rKDo6
bGlidnB4X3Rlc3Q6OlZpZGVvU291cmNlICp2aWRlbywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA6OmxpYnZweF90ZXN0OjpFbmNvZGVyICplbmNvZGVyKSB7CisgICAgUHJlRW5j
b2RlRnJhbWVIb29rU2V0dXAodmlkZW8sIGVuY29kZXIpOworICAgIGlmIChudW1iZXJfdGVtcG9y
YWxfbGF5ZXJzXyA+IDEgfHwgbnVtYmVyX3NwYXRpYWxfbGF5ZXJzXyA+IDEpIHsKKyAgICAgIC8v
IENvbnNpZGVyIDMgY2FzZXM6CisgICAgICBpZiAobG9vcGZpbHRlcl9vZmZfID09IDApIHsKKyAg
ICAgICAgLy8gbG9vcGZpbHRlciBpcyBvbiBmb3IgYWxsIHNwYXRpYWwgbGF5ZXJzIG9uIGV2ZXJ5
IHN1cGVycmZyYW1lLgorICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IFZQWF9TU19NQVhfTEFZ
RVJTOyArK2kpIHsKKyAgICAgICAgICBzdmNfcGFyYW1zXy5sb29wZmlsdGVyX2N0cmxbaV0gPSAw
OworICAgICAgICB9CisgICAgICB9IGVsc2UgaWYgKGxvb3BmaWx0ZXJfb2ZmXyA9PSAxKSB7Cisg
ICAgICAgIC8vIGxvb3BmaWx0ZXIgaXMgb2ZmIGZvciBub24tcmVmZXJlbmNlIGZyYW1lcyBmb3Ig
YWxsIHNwYXRpYWwgbGF5ZXJzLgorICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IFZQWF9TU19N
QVhfTEFZRVJTOyArK2kpIHsKKyAgICAgICAgICBzdmNfcGFyYW1zXy5sb29wZmlsdGVyX2N0cmxb
aV0gPSAxOworICAgICAgICB9CisgICAgICB9IGVsc2UgeworICAgICAgICAvLyBsb29wZmlsdGVy
IGlzIG9mZiBmb3IgYWxsIFNMMCBmcmFtZXMsIGFuZCBvZmYgb25seSBmb3Igbm9uLXJlZmVyZW5j
ZQorICAgICAgICAvLyBmcmFtZXMgZm9yIFNMID4gMC4KKyAgICAgICAgc3ZjX3BhcmFtc18ubG9v
cGZpbHRlcl9jdHJsWzBdID0gMjsKKyAgICAgICAgZm9yIChpbnQgaSA9IDE7IGkgPCBWUFhfU1Nf
TUFYX0xBWUVSUzsgKytpKSB7CisgICAgICAgICAgc3ZjX3BhcmFtc18ubG9vcGZpbHRlcl9jdHJs
W2ldID0gMTsKKyAgICAgICAgfQorICAgICAgfQorICAgICAgZW5jb2Rlci0+Q29udHJvbChWUDlF
X1NFVF9TVkNfUEFSQU1FVEVSUywgJnN2Y19wYXJhbXNfKTsKKyAgICB9IGVsc2UgaWYgKG51bWJl
cl90ZW1wb3JhbF9sYXllcnNfID09IDEgJiYgbnVtYmVyX3NwYXRpYWxfbGF5ZXJzXyA9PSAxKSB7
CisgICAgICAvLyBGb3Igbm9uLVNWQyBtb2RlIHVzZSB0aGUgc2luZ2xlIGxheWVyIGNvbnRyb2wu
CisgICAgICBlbmNvZGVyLT5Db250cm9sKFZQOUVfU0VUX0RJU0FCTEVfTE9PUEZJTFRFUiwgbG9v
cGZpbHRlcl9vZmZfKTsKKyAgICB9CisgIH0KKworICB2aXJ0dWFsIHZvaWQgRnJhbWVQa3RIb29r
KGNvbnN0IHZweF9jb2RlY19jeF9wa3RfdCAqcGt0KSB7CisgICAgLy8gS2VlcCB0cmFjayBvZiBu
dW1iZXIgb2Ygbm9uLXJlZmVyZW5jZSBmcmFtZXMsIG5lZWRlZCBmb3IgbWlzbWF0Y2ggY2hlY2su
CisgICAgLy8gTm9uLXJlZmVyZW5jZSBmcmFtZXMgYXJlIHRvcCBzcGF0aWFsIGFuZCB0ZW1wb3Jh
bCBsYXllciBmcmFtZXMsCisgICAgLy8gZm9yIFRMID4gMC4KKyAgICBpZiAodGVtcG9yYWxfbGF5
ZXJfaWRfID09IG51bWJlcl90ZW1wb3JhbF9sYXllcnNfIC0gMSAmJgorICAgICAgICB0ZW1wb3Jh
bF9sYXllcl9pZF8gPiAwICYmCisgICAgICAgIHBrdC0+ZGF0YS5mcmFtZS5zcGF0aWFsX2xheWVy
X2VuY29kZWRbbnVtYmVyX3NwYXRpYWxfbGF5ZXJzXyAtIDFdKQorICAgICAgbnVtX25vbnJlZl9m
cmFtZXNfKys7CisgIH0KKworICB2aXJ0dWFsIHZvaWQgTWlzbWF0Y2hIb29rKGNvbnN0IHZweF9p
bWFnZV90ICogLyppbWcxKi8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdnB4
X2ltYWdlX3QgKiAvKmltZzIqLykgeworICAgICsrbWlzbWF0Y2hfbmZyYW1lc187CisgIH0KKwor
ICB2aXJ0dWFsIHZvaWQgU2V0Q29uZmlnKGNvbnN0IGludCAvKm51bV90ZW1wb3JhbF9sYXllciov
KSB7fQorCisgIGludCBHZXRNaXNtYXRjaEZyYW1lcygpIGNvbnN0IHsgcmV0dXJuIG1pc21hdGNo
X25mcmFtZXNfOyB9CisgIGludCBHZXROb25SZWZGcmFtZXMoKSBjb25zdCB7IHJldHVybiBudW1f
bm9ucmVmX2ZyYW1lc187IH0KKworICBpbnQgbG9vcGZpbHRlcl9vZmZfOworCisgcHJpdmF0ZToK
KyAgaW50IG1pc21hdGNoX25mcmFtZXNfOworICBpbnQgbnVtX25vbnJlZl9mcmFtZXNfOworfTsK
KworVEVTVF9QKExvb3BmaWx0ZXJPbmVQYXNzQ2JyU3ZjLCBPbmVQYXNzQ2JyU3ZjMVNMMVRMTG9v
cGZpbHRlck9mZikgeworICBTZXRTdmNDb25maWcoMSwgMSk7CisgIGNmZ18ucmNfYnVmX2luaXRp
YWxfc3ogPSA1MDA7CisgIGNmZ18ucmNfYnVmX29wdGltYWxfc3ogPSA1MDA7CisgIGNmZ18ucmNf
YnVmX3N6ID0gMTAwMDsKKyAgY2ZnXy5yY19taW5fcXVhbnRpemVyID0gMDsKKyAgY2ZnXy5yY19t
YXhfcXVhbnRpemVyID0gNjM7CisgIGNmZ18uZ190aHJlYWRzID0gMTsKKyAgY2ZnXy5yY19kcm9w
ZnJhbWVfdGhyZXNoID0gMDsKKyAgY2ZnXy5yY190YXJnZXRfYml0cmF0ZSA9IDgwMDsKKyAgY2Zn
Xy5rZl9tYXhfZGlzdCA9IDk5OTk7CisgIGNmZ18ucmNfZW5kX3VzYWdlID0gVlBYX0NCUjsKKyAg
Y2ZnXy5nX2xhZ19pbl9mcmFtZXMgPSAwOworICBjZmdfLmdfZXJyb3JfcmVzaWxpZW50ID0gMTsK
KyAgY2ZnXy50c19yYXRlX2RlY2ltYXRvclswXSA9IDE7CisgIGNmZ18udGVtcG9yYWxfbGF5ZXJp
bmdfbW9kZSA9IDA7CisgIDo6bGlidnB4X3Rlc3Q6Okk0MjBWaWRlb1NvdXJjZSB2aWRlbygibmlr
bGFzXzY0MF80ODBfMzAueXV2IiwgNjQwLCA0ODAsIDMwLCAxLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgMCwgNDAwKTsKKyAgY2ZnXy5yY190YXJnZXRfYml0cmF0ZSA9
IDYwMDsKKyAgQXNzaWduTGF5ZXJCaXRyYXRlcygpOworICBBU1NFUlRfTk9fRkFUQUxfRkFJTFVS
RShSdW5Mb29wKCZ2aWRlbykpOworI2lmIENPTkZJR19WUDlfREVDT0RFUgorICBpZiAobG9vcGZp
bHRlcl9vZmZfID09IDApCisgICAgRVhQRUNUX0VRKEdldE5vblJlZkZyYW1lcygpLCBHZXRNaXNt
YXRjaEZyYW1lcygpKTsKKyAgZWxzZQorICAgIEVYUEVDVF9FUShHZXRNaXNtYXRjaEZyYW1lcygp
LCAwKTsKKyNlbmRpZgorfQorCitURVNUX1AoTG9vcGZpbHRlck9uZVBhc3NDYnJTdmMsIE9uZVBh
c3NDYnJTdmMxU0wzVExMb29wZmlsdGVyT2ZmKSB7CisgIFNldFN2Y0NvbmZpZygxLCAzKTsKKyAg
Y2ZnXy5yY19idWZfaW5pdGlhbF9zeiA9IDUwMDsKKyAgY2ZnXy5yY19idWZfb3B0aW1hbF9zeiA9
IDUwMDsKKyAgY2ZnXy5yY19idWZfc3ogPSAxMDAwOworICBjZmdfLnJjX21pbl9xdWFudGl6ZXIg
PSAwOworICBjZmdfLnJjX21heF9xdWFudGl6ZXIgPSA2MzsKKyAgY2ZnXy5nX3RocmVhZHMgPSAx
OworICBjZmdfLnJjX2Ryb3BmcmFtZV90aHJlc2ggPSAwOworICBjZmdfLnJjX3RhcmdldF9iaXRy
YXRlID0gODAwOworICBjZmdfLmtmX21heF9kaXN0ID0gOTk5OTsKKyAgY2ZnXy5yY19lbmRfdXNh
Z2UgPSBWUFhfQ0JSOworICBjZmdfLmdfbGFnX2luX2ZyYW1lcyA9IDA7CisgIGNmZ18uZ19lcnJv
cl9yZXNpbGllbnQgPSAxOworICBjZmdfLnRzX3JhdGVfZGVjaW1hdG9yWzBdID0gNDsKKyAgY2Zn
Xy50c19yYXRlX2RlY2ltYXRvclsxXSA9IDI7CisgIGNmZ18udHNfcmF0ZV9kZWNpbWF0b3JbMl0g
PSAxOworICBjZmdfLnRlbXBvcmFsX2xheWVyaW5nX21vZGUgPSAzOworICA6OmxpYnZweF90ZXN0
OjpJNDIwVmlkZW9Tb3VyY2UgdmlkZW8oIm5pa2xhc182NDBfNDgwXzMwLnl1diIsIDY0MCwgNDgw
LCAzMCwgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIDQwMCk7
CisgIGNmZ18ucmNfdGFyZ2V0X2JpdHJhdGUgPSA2MDA7CisgIEFzc2lnbkxheWVyQml0cmF0ZXMo
KTsKKyAgQVNTRVJUX05PX0ZBVEFMX0ZBSUxVUkUoUnVuTG9vcCgmdmlkZW8pKTsKKyNpZiBDT05G
SUdfVlA5X0RFQ09ERVIKKyAgaWYgKGxvb3BmaWx0ZXJfb2ZmXyA9PSAwKQorICAgIEVYUEVDVF9F
UShHZXROb25SZWZGcmFtZXMoKSwgR2V0TWlzbWF0Y2hGcmFtZXMoKSk7CisgIGVsc2UKKyAgICBF
WFBFQ1RfRVEoR2V0TWlzbWF0Y2hGcmFtZXMoKSwgMCk7CisjZW5kaWYKK30KKworVEVTVF9QKExv
b3BmaWx0ZXJPbmVQYXNzQ2JyU3ZjLCBPbmVQYXNzQ2JyU3ZjM1NMM1RMTG9vcGZpbHRlck9mZikg
eworICBTZXRTdmNDb25maWcoMywgMyk7CisgIGNmZ18ucmNfYnVmX2luaXRpYWxfc3ogPSA1MDA7
CisgIGNmZ18ucmNfYnVmX29wdGltYWxfc3ogPSA1MDA7CisgIGNmZ18ucmNfYnVmX3N6ID0gMTAw
MDsKKyAgY2ZnXy5yY19taW5fcXVhbnRpemVyID0gMDsKKyAgY2ZnXy5yY19tYXhfcXVhbnRpemVy
ID0gNjM7CisgIGNmZ18uZ190aHJlYWRzID0gMTsKKyAgY2ZnXy5yY19kcm9wZnJhbWVfdGhyZXNo
ID0gMDsKKyAgY2ZnXy5yY190YXJnZXRfYml0cmF0ZSA9IDgwMDsKKyAgY2ZnXy5rZl9tYXhfZGlz
dCA9IDk5OTk7CisgIGNmZ18ucmNfZW5kX3VzYWdlID0gVlBYX0NCUjsKKyAgY2ZnXy5nX2xhZ19p
bl9mcmFtZXMgPSAwOworICBjZmdfLmdfZXJyb3JfcmVzaWxpZW50ID0gMTsKKyAgY2ZnXy50c19y
YXRlX2RlY2ltYXRvclswXSA9IDQ7CisgIGNmZ18udHNfcmF0ZV9kZWNpbWF0b3JbMV0gPSAyOwor
ICBjZmdfLnRzX3JhdGVfZGVjaW1hdG9yWzJdID0gMTsKKyAgY2ZnXy50ZW1wb3JhbF9sYXllcmlu
Z19tb2RlID0gMzsKKyAgOjpsaWJ2cHhfdGVzdDo6STQyMFZpZGVvU291cmNlIHZpZGVvKCJuaWts
YXNfNjQwXzQ4MF8zMC55dXYiLCA2NDAsIDQ4MCwgMzAsIDEsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAwLCA0MDApOworICBjZmdfLnJjX3RhcmdldF9iaXRyYXRlID0g
NjAwOworICBBc3NpZ25MYXllckJpdHJhdGVzKCk7CisgIEFTU0VSVF9OT19GQVRBTF9GQUlMVVJF
KFJ1bkxvb3AoJnZpZGVvKSk7CisjaWYgQ09ORklHX1ZQOV9ERUNPREVSCisgIGlmIChsb29wZmls
dGVyX29mZl8gPT0gMCkKKyAgICBFWFBFQ1RfRVEoR2V0Tm9uUmVmRnJhbWVzKCksIEdldE1pc21h
dGNoRnJhbWVzKCkpOworICBlbHNlCisgICAgRVhQRUNUX0VRKEdldE1pc21hdGNoRnJhbWVzKCks
IDApOworI2VuZGlmCit9CisKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKFN5bmNGcmFtZU9u
ZVBhc3NDYnJTdmMsIDo6dGVzdGluZzo6UmFuZ2UoMCwgMykpOworCitWUDlfSU5TVEFOVElBVEVf
VEVTVF9TVUlURShMb29wZmlsdGVyT25lUGFzc0NiclN2YywgOjp0ZXN0aW5nOjpSYW5nZSgwLCAz
KSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9Q
KAogICAgIFZQOSwgU2NhbGVQYXJ0aXRpb25PbmVQYXNzQ2JyU3ZjLAogICAgIDo6dGVzdGluZzo6
VmFsdWVzKAogICAgICAgICBzdGF0aWNfY2FzdDxjb25zdCBsaWJ2cHhfdGVzdDo6Q29kZWNGYWN0
b3J5ICo+KCZsaWJ2cHhfdGVzdDo6a1ZQOSkpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVz
dC9zdmNfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC9zdmNfdGVzdC5jYwppbmRleCA0Nzk4Yzc3
MTgzMjMxMjhjNTU0MDlkNDI5NGQwNDQ1MTFkMjAwZjY0Li5jYmMwYWJlMDMyZGEzNjc1ZTc0NDc4
ZjdhOTMzZDdlYzNhYjgwNTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qvc3ZjX3Rlc3Qu
Y2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3N2Y190ZXN0LmNjCkBAIC00MywxMyArNDMsMTQgQEAg
dm9pZCBPbmVQYXNzQ2JyU3ZjOjpQcmVFbmNvZGVGcmFtZUhvb2tTZXR1cCg6OmxpYnZweF90ZXN0
OjpWaWRlb1NvdXJjZSAqdmlkZW8sCiAgICAgICBzdmNfcGFyYW1zXy5tYXhfcXVhbnRpemVyc1tp
XSA9IDYzOwogICAgICAgc3ZjX3BhcmFtc18ubWluX3F1YW50aXplcnNbaV0gPSAwOwogICAgIH0K
LSAgICBzdmNfcGFyYW1zXy5zcGVlZF9wZXJfbGF5ZXJbMF0gPSBiYXNlX3NwZWVkX3NldHRpbmdf
OwotICAgIGZvciAoaW50IGkgPSAxOyBpIDwgVlBYX1NTX01BWF9MQVlFUlM7ICsraSkgewotICAg
ICAgc3ZjX3BhcmFtc18uc3BlZWRfcGVyX2xheWVyW2ldID0gc3BlZWRfc2V0dGluZ187CisgICAg
aWYgKG51bWJlcl90ZW1wb3JhbF9sYXllcnNfID4gMSB8fCBudW1iZXJfc3BhdGlhbF9sYXllcnNf
ID4gMSkgeworICAgICAgc3ZjX3BhcmFtc18uc3BlZWRfcGVyX2xheWVyWzBdID0gYmFzZV9zcGVl
ZF9zZXR0aW5nXzsKKyAgICAgIGZvciAoaW50IGkgPSAxOyBpIDwgVlBYX1NTX01BWF9MQVlFUlM7
ICsraSkgeworICAgICAgICBzdmNfcGFyYW1zXy5zcGVlZF9wZXJfbGF5ZXJbaV0gPSBzcGVlZF9z
ZXR0aW5nXzsKKyAgICAgIH0KKyAgICAgIGVuY29kZXItPkNvbnRyb2woVlA5RV9TRVRfU1ZDLCAx
KTsKKyAgICAgIGVuY29kZXItPkNvbnRyb2woVlA5RV9TRVRfU1ZDX1BBUkFNRVRFUlMsICZzdmNf
cGFyYW1zXyk7CiAgICAgfQotCi0gICAgZW5jb2Rlci0+Q29udHJvbChWUDlFX1NFVF9TVkMsIDEp
OwotICAgIGVuY29kZXItPkNvbnRyb2woVlA5RV9TRVRfU1ZDX1BBUkFNRVRFUlMsICZzdmNfcGFy
YW1zXyk7CiAgICAgZW5jb2Rlci0+Q29udHJvbChWUDhFX1NFVF9DUFVVU0VELCBzcGVlZF9zZXR0
aW5nXyk7CiAgICAgZW5jb2Rlci0+Q29udHJvbChWUDlFX1NFVF9BUV9NT0RFLCAzKTsKICAgICBl
bmNvZGVyLT5Db250cm9sKFZQOEVfU0VUX01BWF9JTlRSQV9CSVRSQVRFX1BDVCwgMzAwKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC90ZXN0LWRhdGEubWsgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qv
dGVzdC1kYXRhLm1rCmluZGV4IDgxZjAzNWQ4M2ExZTVjNThiMWJhMmFjYjk5OGFhM2JhZTgzYmI4
NWYuLjc0NDkwMWIxMTU4MzViYjI5MjMxYzBiOWI0NWY5MjZhYmU5YTI1YTIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdGVzdC90ZXN0LWRhdGEubWsKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3Rlc3Qt
ZGF0YS5tawpAQCAtMiw2ICsyLDcgQEAgTElCVlBYX1RFU1RfU1JDUy15ZXMgKz0gdGVzdC1kYXRh
Lm1rCiAKICMgRW5jb2RlciB0ZXN0IHNvdXJjZQogTElCVlBYX1RFU1RfREFUQS0kKENPTkZJR19F
TkNPREVSUykgKz0gaGFudHJvX2NvbGxhZ2VfdzM1MmgyODgueXV2CitMSUJWUFhfVEVTVF9EQVRB
LSQoQ09ORklHX0VOQ09ERVJTKSArPSBoYW50cm9fY29sbGFnZV93MzUyaDI4OF9udjEyLnl1dgog
TElCVlBYX1RFU1RfREFUQS0kKENPTkZJR19FTkNPREVSUykgKz0gaGFudHJvX29kZC55dXYKIExJ
QlZQWF9URVNUX0RBVEEtJChDT05GSUdfRU5DT0RFUlMpICs9IGRlc2t0b3Bfb2ZmaWNlMS4xMjgw
XzcyMC0wMjAueXV2CiBMSUJWUFhfVEVTVF9EQVRBLSQoQ09ORklHX0VOQ09ERVJTKSArPSBzbGlk
ZXNfY29kZV90ZXJtX3dlYl9wbG90LjE5MjBfMTA4MC55dXYKQEAgLTI2LDcgKzI3LDkgQEAgTElC
VlBYX1RFU1RfREFUQS0kKENPTkZJR19WUDlfRU5DT0RFUikgKz0gbm9pc3lfY2xpcF82NDBfMzYw
Lnk0bQogTElCVlBYX1RFU1RfREFUQS0kKENPTkZJR19WUDlfRU5DT0RFUikgKz0gcnVzaF9ob3Vy
XzQ0NC55NG0KIExJQlZQWF9URVNUX0RBVEEtJChDT05GSUdfVlA5X0VOQ09ERVIpICs9IHNjcmVl
bmRhdGEueTRtCiBMSUJWUFhfVEVTVF9EQVRBLSQoQ09ORklHX1ZQOV9FTkNPREVSKSArPSBuaWts
YXNfNjQwXzQ4MF8zMC55dXYKLUxJQlZQWF9URVNUX0RBVEEtJChDT05GSUdfUkFURV9DVFJMKSAr
PSBidXNfMzUyeDI4OF80MjBfZjIwX2I4Lnl1dgorTElCVlBYX1RFU1RfREFUQS0kKENPTkZJR19W
UDlfRU5DT0RFUikgKz0gcmNfaW50ZXJmYWNlX3Rlc3Rfb25lX2xheWVyCitMSUJWUFhfVEVTVF9E
QVRBLSQoQ09ORklHX1ZQOV9FTkNPREVSKSArPSByY19pbnRlcmZhY2VfdGVzdF9zdmMKK0xJQlZQ
WF9URVNUX0RBVEEtJChDT05GSUdfVlA5X0VOQ09ERVIpICs9IGJ1c18zNTJ4Mjg4XzQyMF9mMjBf
YjgueXV2CiAKICMgVGVzdCB2ZWN0b3JzCiBMSUJWUFhfVEVTVF9EQVRBLSQoQ09ORklHX1ZQOF9E
RUNPREVSKSArPSB2cDgwLTAwLWNvbXByZWhlbnNpdmUtMDAxLml2ZgpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L3Rlc3QtZGF0YS5zaGExIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3Rlc3QtZGF0YS5z
aGExCmluZGV4IGRjYWVhMjg2Njc1MzA2Y2FhYzM2ZmE2MzBkNDgzNzkxZTQxN2Q0NjMuLjZmOTAy
MTU1NGQ5NWNhNDFhOWViOGFjMWIwNGMwODVhYzZhYTcxYjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGVzdC90ZXN0LWRhdGEuc2hhMQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdGVzdC1kYXRhLnNo
YTEKQEAgLTg2OCwzICs4NjgsNiBAQCBiYWM0NTU5MDYzNjBiNDUzMzhhMTZkZDYyNmFjNWYxOWJj
MzZhMzA3ICpkZXNrdG9wX29mZmljZTEuMTI4MF83MjAtMDIwLnl1dgogMDk0YmU0YjgwZmEzMGJk
MjI3MTQ5ZWExNmFiNjQ3NmQ1NDllYTA5MiAqc2xpZGVzX2NvZGVfdGVybV93ZWJfcGxvdC4xOTIw
XzEwODAueXV2CiA1MThhMGJlOTk4YWZlY2U3NmQzZGY3NjA0N2Q1MWUyNTZjNTkxZmYyICppbnZh
bGlkLWJ1Zy0xNDgyNzExMDkuaXZmCiBkMzk2NGY5ZGFkOWY2MDM2M2M4MWI2ODgzMjRkOTViNGVj
N2M4MDM4ICppbnZhbGlkLWJ1Zy0xNDgyNzExMDkuaXZmLnJlcworYWQxOGNhMTZmMGEyNDlmYjNi
N2MzOGRlMGQ5YjMyN2ZlZDI3M2Y5NiAqaGFudHJvX2NvbGxhZ2VfdzM1MmgyODhfbnYxMi55dXYK
KzAzZjgyN2MwZTM2ZmY5YTZlMjNjNWNjMTE5MzY5MjRlNGYxODI3YWIgKnJjX2ludGVyZmFjZV90
ZXN0X29uZV9sYXllcgorOTllNGY0YzI5NjFkNDZkYzI4NmRiMjMwMDkwYTM5ZDc4NDYwYjI1ZCAq
cmNfaW50ZXJmYWNlX3Rlc3Rfc3ZjCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdGVzdC5t
ayBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGVzdC90ZXN0Lm1rCmluZGV4IGI0YTVlYTBjYjM2NWM0MmE5ZjViODI3
NjZmNjQ1NGM2NWZkMGRiNWMuLjA0OTAyMzgyZGJlZDVlMTYzMmZmODQzYzJlYjNjZjZiZTE2Y2Qx
OTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC90ZXN0Lm1rCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dGVzdC90ZXN0Lm1rCkBAIC01OCw3ICs1OCw3IEBAIExJQlZQWF9URVNUX1NSQ1MtJChDT05GSUdf
VlA5X0VOQ09ERVIpICs9IHN2Y190ZXN0LmNjCiBMSUJWUFhfVEVTVF9TUkNTLSQoQ09ORklHX1ZQ
OV9FTkNPREVSKSArPSBzdmNfdGVzdC5oCiBMSUJWUFhfVEVTVF9TUkNTLSQoQ09ORklHX1ZQOV9F
TkNPREVSKSArPSBzdmNfZW5kX3RvX2VuZF90ZXN0LmNjCiBMSUJWUFhfVEVTVF9TUkNTLSQoQ09O
RklHX1ZQOV9FTkNPREVSKSArPSB0aW1lc3RhbXBfdGVzdC5jYwotTElCVlBYX1RFU1RfU1JDUy0k
KENPTkZJR19SQVRFX0NUUkwpICAgKz0gc2ltcGxlX2VuY29kZV90ZXN0LmNjCitMSUJWUFhfVEVT
VF9TUkNTLSQoQ09ORklHX1ZQOV9FTkNPREVSKSArPSB2cDlfZXh0X3JhdGVjdHJsX3Rlc3QuY2MK
IAogTElCVlBYX1RFU1RfU1JDUy15ZXMgICAgICAgICAgICAgICAgICAgKz0gZGVjb2RlX3Rlc3Rf
ZHJpdmVyLmNjCiBMSUJWUFhfVEVTVF9TUkNTLXllcyAgICAgICAgICAgICAgICAgICArPSBkZWNv
ZGVfdGVzdF9kcml2ZXIuaApAQCAtMTIyLDExICsxMjIsMTMgQEAgaWZlcSAoJChDT05GSUdfVlA4
X0VOQ09ERVIpJChDT05GSUdfVlA4X0RFQ09ERVIpLHllc3llcykKIExJQlZQWF9URVNUX1NSQ1Mt
eWVzICAgICAgICAgICAgICAgICAgICs9IHZwOF9ib29sY29kZXJfdGVzdC5jYwogTElCVlBYX1RF
U1RfU1JDUy15ZXMgICAgICAgICAgICAgICAgICAgKz0gdnA4X2ZyYWdtZW50c190ZXN0LmNjCiBl
bmRpZgotCiBMSUJWUFhfVEVTVF9TUkNTLSQoQ09ORklHX1BPU1RQUk9DKSAgICArPSBhZGRfbm9p
c2VfdGVzdC5jYwogTElCVlBYX1RFU1RfU1JDUy0kKENPTkZJR19QT1NUUFJPQykgICAgKz0gcHBf
ZmlsdGVyX3Rlc3QuY2MKIExJQlZQWF9URVNUX1NSQ1MtJChDT05GSUdfVlA4X0RFQ09ERVIpICs9
IHZwOF9kZWNyeXB0X3Rlc3QuY2MKK2lmbmVxICgsICQoZmlsdGVyIHllcywgJChIQVZFX1NTRTIp
ICQoSEFWRV9TU1NFMykgJChIQVZFX1NTRTRfMSkgJChIQVZFX05FT04pIFwKKyAgICAgICAgICAg
ICAgICAgICAgICAgJChIQVZFX01TQSkgJChIQVZFX01NSSkpKQogTElCVlBYX1RFU1RfU1JDUy0k
KENPTkZJR19WUDhfRU5DT0RFUikgKz0gcXVhbnRpemVfdGVzdC5jYworZW5kaWYKIExJQlZQWF9U
RVNUX1NSQ1MtJChDT05GSUdfVlA4X0VOQ09ERVIpICs9IHNldF9yb2kuY2MKIExJQlZQWF9URVNU
X1NSQ1MtJChDT05GSUdfVlA4X0VOQ09ERVIpICs9IHZhcmlhbmNlX3Rlc3QuY2MKIExJQlZQWF9U
RVNUX1NSQ1MtJChDT05GSUdfVlA4X0VOQ09ERVIpICs9IHZwOF9mZGN0NHg0X3Rlc3QuY2MKQEAg
LTE3NSw3ICsxNzcsOSBAQCBpZm5lcSAoJChDT05GSUdfUkVBTFRJTUVfT05MWSkseWVzKQogTElC
VlBYX1RFU1RfU1JDUy0kKENPTkZJR19WUDlfRU5DT0RFUikgKz0geXV2X3RlbXBvcmFsX2ZpbHRl
cl90ZXN0LmNjCiBlbmRpZgogTElCVlBYX1RFU1RfU1JDUy0kKENPTkZJR19WUDlfRU5DT0RFUikg
Kz0gdmFyaWFuY2VfdGVzdC5jYworaWZuZXEgKCwgJChmaWx0ZXIgeWVzLCAkKEhBVkVfU1NFMikg
JChIQVZFX0FWWDIpKSkKIExJQlZQWF9URVNUX1NSQ1MtJChDT05GSUdfVlA5X0VOQ09ERVIpICs9
IHZwOV9ibG9ja19lcnJvcl90ZXN0LmNjCitlbmRpZgogTElCVlBYX1RFU1RfU1JDUy0kKENPTkZJ
R19WUDlfRU5DT0RFUikgKz0gdnA5X3F1YW50aXplX3Rlc3QuY2MKIExJQlZQWF9URVNUX1NSQ1Mt
JChDT05GSUdfVlA5X0VOQ09ERVIpICs9IHZwOV9zdWJ0cmFjdF90ZXN0LmNjCiAKQEAgLTE4OSwy
MCArMTkzLDMwIEBAIExJQlZQWF9URVNUX1NSQ1MtJChDT05GSUdfTk9OX0dSRUVEWV9NVikgKz0g
bm9uX2dyZWVkeV9tdl90ZXN0LmNjCiBlbmRpZgogCiBpZmVxICgkKENPTkZJR19WUDlfRU5DT0RF
UikkKENPTkZJR19WUDlfVEVNUE9SQUxfREVOT0lTSU5HKSx5ZXN5ZXMpCitpZm5lcSAoLCAkKGZp
bHRlciB5ZXMsICQoSEFWRV9TU0UyKSAkKEhBVkVfQVZYMikpKQogTElCVlBYX1RFU1RfU1JDUy15
ZXMgKz0gdnA5X2Rlbm9pc2VyX3Rlc3QuY2MKIGVuZGlmCitlbmRpZgogTElCVlBYX1RFU1RfU1JD
Uy0kKENPTkZJR19WUDlfRU5DT0RFUikgKz0gdnA5X2FyZl9mcmVxX3Rlc3QuY2MKIAoraWZlcSAo
JChDT05GSUdfVlA5X0VOQ09ERVIpLHllcykKK1NJTVBMRV9FTkNPREVfVEVTVF9TUkNTLSQoQ09O
RklHX1JBVEVfQ1RSTCkgOj0gc2ltcGxlX2VuY29kZV90ZXN0LmNjCitlbmRpZgorCiBlbmRpZiAj
IFZQOQogCiAjIyBNdWx0aS1jb2RlYyAvIHVuY29uZGl0aW9uYWwgd2hpdGVib3ggdGVzdHMuCiAK
IExJQlZQWF9URVNUX1NSQ1MtJChDT05GSUdfRU5DT0RFUlMpICs9IHNhZF90ZXN0LmNjCitpZm5l
cSAoLCAkKGZpbHRlciB5ZXMsICQoSEFWRV9ORU9OKSAkKEhBVkVfU1NFMikgJChIQVZFX01TQSkp
KQogTElCVlBYX1RFU1RfU1JDUy0kKENPTkZJR19FTkNPREVSUykgKz0gc3VtX3NxdWFyZXNfdGVz
dC5jYworZW5kaWYKIAogVEVTVF9JTlRSQV9QUkVEX1NQRUVEX1NSQ1MteWVzIDo9IHRlc3RfaW50
cmFfcHJlZF9zcGVlZC5jYwogVEVTVF9JTlRSQV9QUkVEX1NQRUVEX1NSQ1MteWVzICs9IC4uL21k
NV91dGlscy5oIC4uL21kNV91dGlscy5jCiAKK1JDX0lOVEVSRkFDRV9URVNUX1NSQ1MtJChDT05G
SUdfVlA5X0VOQ09ERVIpIDo9IHJhdGVjdHJsX3J0Y190ZXN0LmNjCisKIGVuZGlmICMgQ09ORklH
X1NIQVJFRAogCiBpbmNsdWRlICQoU1JDX1BBVEhfQkFSRSkvdGVzdC90ZXN0LWRhdGEubWsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC90ZXN0X2ludHJhX3ByZWRfc3BlZWQuY2MgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3Rlc3QvdGVzdF9pbnRyYV9wcmVkX3NwZWVkLmNjCmluZGV4IDBiZTlmZWVmZDk5ZWUy
YzcwNzRjZTBlNjExODk2MjZkMTM0OGVjYTkuLjA4MTAwYTE0NmUyNTVkMDM4MDhhNjE0NjRkMmM4
MGQ0YjEwNWQ2MjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC90ZXN0X2ludHJhX3ByZWRf
c3BlZWQuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3Rlc3RfaW50cmFfcHJlZF9zcGVlZC5jYwpA
QCAtODUsNyArODUsNyBAQCB2b2lkIFRlc3RJbnRyYVByZWQoY29uc3QgY2hhciBuYW1lW10sIFZw
eFByZWRGdW5jIGNvbnN0ICpwcmVkX2Z1bmNzLAogICBpbnRyYV9wcmVkX3Rlc3RfbWVtLkluaXQo
YmxvY2tfc2l6ZSwgOCk7CiAKICAgZm9yIChpbnQgayA9IDA7IGsgPCBrTnVtVnA5SW50cmFQcmVk
RnVuY3M7ICsraykgewotICAgIGlmIChwcmVkX2Z1bmNzW2tdID09IE5VTEwpIGNvbnRpbnVlOwor
ICAgIGlmIChwcmVkX2Z1bmNzW2tdID09IG51bGxwdHIpIGNvbnRpbnVlOwogICAgIG1lbWNweShp
bnRyYV9wcmVkX3Rlc3RfbWVtLnNyYywgaW50cmFfcHJlZF90ZXN0X21lbS5yZWZfc3JjLAogICAg
ICAgICAgICBzaXplb2YoaW50cmFfcHJlZF90ZXN0X21lbS5zcmMpKTsKICAgICB2cHhfdXNlY190
aW1lciB0aW1lcjsKQEAgLTIwNiw1OCArMjA2LDY0IEBAIElOVFJBX1BSRURfVEVTVChDLCBUZXN0
SW50cmFQcmVkMzIsIHZweF9kY19wcmVkaWN0b3JfMzJ4MzJfYywKIElOVFJBX1BSRURfVEVTVChT
U0UyLCBUZXN0SW50cmFQcmVkNCwgdnB4X2RjX3ByZWRpY3Rvcl80eDRfc3NlMiwKICAgICAgICAg
ICAgICAgICB2cHhfZGNfbGVmdF9wcmVkaWN0b3JfNHg0X3NzZTIsIHZweF9kY190b3BfcHJlZGlj
dG9yXzR4NF9zc2UyLAogICAgICAgICAgICAgICAgIHZweF9kY18xMjhfcHJlZGljdG9yXzR4NF9z
c2UyLCB2cHhfdl9wcmVkaWN0b3JfNHg0X3NzZTIsCi0gICAgICAgICAgICAgICAgdnB4X2hfcHJl
ZGljdG9yXzR4NF9zc2UyLCB2cHhfZDQ1X3ByZWRpY3Rvcl80eDRfc3NlMiwgTlVMTCwKLSAgICAg
ICAgICAgICAgICBOVUxMLCBOVUxMLCB2cHhfZDIwN19wcmVkaWN0b3JfNHg0X3NzZTIsIE5VTEws
CisgICAgICAgICAgICAgICAgdnB4X2hfcHJlZGljdG9yXzR4NF9zc2UyLCB2cHhfZDQ1X3ByZWRp
Y3Rvcl80eDRfc3NlMiwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICBudWxscHRyLCBudWxscHRy
LCB2cHhfZDIwN19wcmVkaWN0b3JfNHg0X3NzZTIsIG51bGxwdHIsCiAgICAgICAgICAgICAgICAg
dnB4X3RtX3ByZWRpY3Rvcl80eDRfc3NlMikKIAogSU5UUkFfUFJFRF9URVNUKFNTRTIsIFRlc3RJ
bnRyYVByZWQ4LCB2cHhfZGNfcHJlZGljdG9yXzh4OF9zc2UyLAogICAgICAgICAgICAgICAgIHZw
eF9kY19sZWZ0X3ByZWRpY3Rvcl84eDhfc3NlMiwgdnB4X2RjX3RvcF9wcmVkaWN0b3JfOHg4X3Nz
ZTIsCiAgICAgICAgICAgICAgICAgdnB4X2RjXzEyOF9wcmVkaWN0b3JfOHg4X3NzZTIsIHZweF92
X3ByZWRpY3Rvcl84eDhfc3NlMiwKLSAgICAgICAgICAgICAgICB2cHhfaF9wcmVkaWN0b3JfOHg4
X3NzZTIsIHZweF9kNDVfcHJlZGljdG9yXzh4OF9zc2UyLCBOVUxMLAotICAgICAgICAgICAgICAg
IE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsIHZweF90bV9wcmVkaWN0b3JfOHg4X3NzZTIpCisgICAg
ICAgICAgICAgICAgdnB4X2hfcHJlZGljdG9yXzh4OF9zc2UyLCB2cHhfZDQ1X3ByZWRpY3Rvcl84
eDhfc3NlMiwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBudWxscHRyLCB2cHhfdG1fcHJlZGljdG9yXzh4OF9zc2UyKQogCiBJTlRSQV9QUkVEX1RF
U1QoU1NFMiwgVGVzdEludHJhUHJlZDE2LCB2cHhfZGNfcHJlZGljdG9yXzE2eDE2X3NzZTIsCiAg
ICAgICAgICAgICAgICAgdnB4X2RjX2xlZnRfcHJlZGljdG9yXzE2eDE2X3NzZTIsCiAgICAgICAg
ICAgICAgICAgdnB4X2RjX3RvcF9wcmVkaWN0b3JfMTZ4MTZfc3NlMiwKICAgICAgICAgICAgICAg
ICB2cHhfZGNfMTI4X3ByZWRpY3Rvcl8xNngxNl9zc2UyLCB2cHhfdl9wcmVkaWN0b3JfMTZ4MTZf
c3NlMiwKLSAgICAgICAgICAgICAgICB2cHhfaF9wcmVkaWN0b3JfMTZ4MTZfc3NlMiwgTlVMTCwg
TlVMTCwgTlVMTCwgTlVMTCwgTlVMTCwgTlVMTCwKLSAgICAgICAgICAgICAgICB2cHhfdG1fcHJl
ZGljdG9yXzE2eDE2X3NzZTIpCisgICAgICAgICAgICAgICAgdnB4X2hfcHJlZGljdG9yXzE2eDE2
X3NzZTIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsCisgICAgICAgICAgICAg
ICAgbnVsbHB0ciwgbnVsbHB0ciwgdnB4X3RtX3ByZWRpY3Rvcl8xNngxNl9zc2UyKQogCiBJTlRS
QV9QUkVEX1RFU1QoU1NFMiwgVGVzdEludHJhUHJlZDMyLCB2cHhfZGNfcHJlZGljdG9yXzMyeDMy
X3NzZTIsCiAgICAgICAgICAgICAgICAgdnB4X2RjX2xlZnRfcHJlZGljdG9yXzMyeDMyX3NzZTIs
CiAgICAgICAgICAgICAgICAgdnB4X2RjX3RvcF9wcmVkaWN0b3JfMzJ4MzJfc3NlMiwKICAgICAg
ICAgICAgICAgICB2cHhfZGNfMTI4X3ByZWRpY3Rvcl8zMngzMl9zc2UyLCB2cHhfdl9wcmVkaWN0
b3JfMzJ4MzJfc3NlMiwKLSAgICAgICAgICAgICAgICB2cHhfaF9wcmVkaWN0b3JfMzJ4MzJfc3Nl
MiwgTlVMTCwgTlVMTCwgTlVMTCwgTlVMTCwgTlVMTCwgTlVMTCwKLSAgICAgICAgICAgICAgICB2
cHhfdG1fcHJlZGljdG9yXzMyeDMyX3NzZTIpCisgICAgICAgICAgICAgICAgdnB4X2hfcHJlZGlj
dG9yXzMyeDMyX3NzZTIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsCisgICAg
ICAgICAgICAgICAgbnVsbHB0ciwgbnVsbHB0ciwgdnB4X3RtX3ByZWRpY3Rvcl8zMngzMl9zc2Uy
KQogI2VuZGlmICAvLyBIQVZFX1NTRTIKIAogI2lmIEhBVkVfU1NTRTMKLUlOVFJBX1BSRURfVEVT
VChTU1NFMywgVGVzdEludHJhUHJlZDQsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsIE5V
TEwsIE5VTEwsCi0gICAgICAgICAgICAgICAgTlVMTCwgTlVMTCwgdnB4X2QxNTNfcHJlZGljdG9y
XzR4NF9zc3NlMywgTlVMTCwKLSAgICAgICAgICAgICAgICB2cHhfZDYzX3ByZWRpY3Rvcl80eDRf
c3NzZTMsIE5VTEwpCi1JTlRSQV9QUkVEX1RFU1QoU1NTRTMsIFRlc3RJbnRyYVByZWQ4LCBOVUxM
LCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLAotICAgICAgICAgICAgICAgIE5V
TEwsIE5VTEwsIHZweF9kMTUzX3ByZWRpY3Rvcl84eDhfc3NzZTMsCi0gICAgICAgICAgICAgICAg
dnB4X2QyMDdfcHJlZGljdG9yXzh4OF9zc3NlMywgdnB4X2Q2M19wcmVkaWN0b3JfOHg4X3Nzc2Uz
LCBOVUxMKQotSU5UUkFfUFJFRF9URVNUKFNTU0UzLCBUZXN0SW50cmFQcmVkMTYsIE5VTEwsIE5V
TEwsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsCi0gICAgICAgICAgICAgICAgdnB4X2Q0NV9wcmVk
aWN0b3JfMTZ4MTZfc3NzZTMsIE5VTEwsIE5VTEwsCi0gICAgICAgICAgICAgICAgdnB4X2QxNTNf
cHJlZGljdG9yXzE2eDE2X3Nzc2UzLCB2cHhfZDIwN19wcmVkaWN0b3JfMTZ4MTZfc3NzZTMsCi0g
ICAgICAgICAgICAgICAgdnB4X2Q2M19wcmVkaWN0b3JfMTZ4MTZfc3NzZTMsIE5VTEwpCi1JTlRS
QV9QUkVEX1RFU1QoU1NTRTMsIFRlc3RJbnRyYVByZWQzMiwgTlVMTCwgTlVMTCwgTlVMTCwgTlVM
TCwgTlVMTCwgTlVMTCwKLSAgICAgICAgICAgICAgICB2cHhfZDQ1X3ByZWRpY3Rvcl8zMngzMl9z
c3NlMywgTlVMTCwgTlVMTCwKLSAgICAgICAgICAgICAgICB2cHhfZDE1M19wcmVkaWN0b3JfMzJ4
MzJfc3NzZTMsIHZweF9kMjA3X3ByZWRpY3Rvcl8zMngzMl9zc3NlMywKLSAgICAgICAgICAgICAg
ICB2cHhfZDYzX3ByZWRpY3Rvcl8zMngzMl9zc3NlMywgTlVMTCkKK0lOVFJBX1BSRURfVEVTVChT
U1NFMywgVGVzdEludHJhUHJlZDQsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIs
CisgICAgICAgICAgICAgICAgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgbnVs
bHB0ciwKKyAgICAgICAgICAgICAgICB2cHhfZDE1M19wcmVkaWN0b3JfNHg0X3Nzc2UzLCBudWxs
cHRyLAorICAgICAgICAgICAgICAgIHZweF9kNjNfcHJlZGljdG9yXzR4NF9zc3NlMywgbnVsbHB0
cikKK0lOVFJBX1BSRURfVEVTVChTU1NFMywgVGVzdEludHJhUHJlZDgsIG51bGxwdHIsIG51bGxw
dHIsIG51bGxwdHIsIG51bGxwdHIsCisgICAgICAgICAgICAgICAgbnVsbHB0ciwgbnVsbHB0ciwg
bnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICB2cHhfZDE1M19wcmVk
aWN0b3JfOHg4X3Nzc2UzLCB2cHhfZDIwN19wcmVkaWN0b3JfOHg4X3Nzc2UzLAorICAgICAgICAg
ICAgICAgIHZweF9kNjNfcHJlZGljdG9yXzh4OF9zc3NlMywgbnVsbHB0cikKK0lOVFJBX1BSRURf
VEVTVChTU1NFMywgVGVzdEludHJhUHJlZDE2LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBu
dWxscHRyLAorICAgICAgICAgICAgICAgIG51bGxwdHIsIG51bGxwdHIsIHZweF9kNDVfcHJlZGlj
dG9yXzE2eDE2X3Nzc2UzLCBudWxscHRyLAorICAgICAgICAgICAgICAgIG51bGxwdHIsIHZweF9k
MTUzX3ByZWRpY3Rvcl8xNngxNl9zc3NlMywKKyAgICAgICAgICAgICAgICB2cHhfZDIwN19wcmVk
aWN0b3JfMTZ4MTZfc3NzZTMsIHZweF9kNjNfcHJlZGljdG9yXzE2eDE2X3Nzc2UzLAorICAgICAg
ICAgICAgICAgIG51bGxwdHIpCitJTlRSQV9QUkVEX1RFU1QoU1NTRTMsIFRlc3RJbnRyYVByZWQz
MiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICBu
dWxscHRyLCBudWxscHRyLCB2cHhfZDQ1X3ByZWRpY3Rvcl8zMngzMl9zc3NlMywgbnVsbHB0ciwK
KyAgICAgICAgICAgICAgICBudWxscHRyLCB2cHhfZDE1M19wcmVkaWN0b3JfMzJ4MzJfc3NzZTMs
CisgICAgICAgICAgICAgICAgdnB4X2QyMDdfcHJlZGljdG9yXzMyeDMyX3Nzc2UzLCB2cHhfZDYz
X3ByZWRpY3Rvcl8zMngzMl9zc3NlMywKKyAgICAgICAgICAgICAgICBudWxscHRyKQogI2VuZGlm
ICAvLyBIQVZFX1NTU0UzCiAKICNpZiBIQVZFX0RTUFIyCi1JTlRSQV9QUkVEX1RFU1QoRFNQUjIs
IFRlc3RJbnRyYVByZWQ0LCB2cHhfZGNfcHJlZGljdG9yXzR4NF9kc3ByMiwgTlVMTCwgTlVMTCwK
LSAgICAgICAgICAgICAgICBOVUxMLCBOVUxMLCB2cHhfaF9wcmVkaWN0b3JfNHg0X2RzcHIyLCBO
VUxMLCBOVUxMLCBOVUxMLCBOVUxMLAotICAgICAgICAgICAgICAgIE5VTEwsIE5VTEwsIHZweF90
bV9wcmVkaWN0b3JfNHg0X2RzcHIyKQotSU5UUkFfUFJFRF9URVNUKERTUFIyLCBUZXN0SW50cmFQ
cmVkOCwgdnB4X2RjX3ByZWRpY3Rvcl84eDhfZHNwcjIsIE5VTEwsIE5VTEwsCi0gICAgICAgICAg
ICAgICAgTlVMTCwgTlVMTCwgdnB4X2hfcHJlZGljdG9yXzh4OF9kc3ByMiwgTlVMTCwgTlVMTCwg
TlVMTCwgTlVMTCwKLSAgICAgICAgICAgICAgICBOVUxMLCBOVUxMLCB2cHhfdG1fcHJlZGljdG9y
Xzh4OF9jKQotSU5UUkFfUFJFRF9URVNUKERTUFIyLCBUZXN0SW50cmFQcmVkMTYsIHZweF9kY19w
cmVkaWN0b3JfMTZ4MTZfZHNwcjIsIE5VTEwsCi0gICAgICAgICAgICAgICAgTlVMTCwgTlVMTCwg
TlVMTCwgdnB4X2hfcHJlZGljdG9yXzE2eDE2X2RzcHIyLCBOVUxMLCBOVUxMLCBOVUxMLAotICAg
ICAgICAgICAgICAgIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwpCitJTlRSQV9QUkVEX1RFU1QoRFNQ
UjIsIFRlc3RJbnRyYVByZWQ0LCB2cHhfZGNfcHJlZGljdG9yXzR4NF9kc3ByMiwgbnVsbHB0ciwK
KyAgICAgICAgICAgICAgICBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCB2cHhfaF9wcmVkaWN0
b3JfNHg0X2RzcHIyLCBudWxscHRyLAorICAgICAgICAgICAgICAgIG51bGxwdHIsIG51bGxwdHIs
IG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsCisgICAgICAgICAgICAgICAgdnB4X3RtX3ByZWRp
Y3Rvcl80eDRfZHNwcjIpCitJTlRSQV9QUkVEX1RFU1QoRFNQUjIsIFRlc3RJbnRyYVByZWQ4LCB2
cHhfZGNfcHJlZGljdG9yXzh4OF9kc3ByMiwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICBudWxs
cHRyLCBudWxscHRyLCBudWxscHRyLCB2cHhfaF9wcmVkaWN0b3JfOHg4X2RzcHIyLCBudWxscHRy
LAorICAgICAgICAgICAgICAgIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsCisgICAgICAgICAgICAgICAgdnB4X3RtX3ByZWRpY3Rvcl84eDhfYykKK0lOVFJBX1BS
RURfVEVTVChEU1BSMiwgVGVzdEludHJhUHJlZDE2LCB2cHhfZGNfcHJlZGljdG9yXzE2eDE2X2Rz
cHIyLCBudWxscHRyLAorICAgICAgICAgICAgICAgIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIs
IHZweF9oX3ByZWRpY3Rvcl8xNngxNl9kc3ByMiwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICBu
dWxscHRyLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyKQogI2Vu
ZGlmICAvLyBIQVZFX0RTUFIyCiAKICNpZiBIQVZFX05FT04KQEAgLTI2NSw3OCArMjcxLDc4IEBA
IElOVFJBX1BSRURfVEVTVChORU9OLCBUZXN0SW50cmFQcmVkNCwgdnB4X2RjX3ByZWRpY3Rvcl80
eDRfbmVvbiwKICAgICAgICAgICAgICAgICB2cHhfZGNfbGVmdF9wcmVkaWN0b3JfNHg0X25lb24s
IHZweF9kY190b3BfcHJlZGljdG9yXzR4NF9uZW9uLAogICAgICAgICAgICAgICAgIHZweF9kY18x
MjhfcHJlZGljdG9yXzR4NF9uZW9uLCB2cHhfdl9wcmVkaWN0b3JfNHg0X25lb24sCiAgICAgICAg
ICAgICAgICAgdnB4X2hfcHJlZGljdG9yXzR4NF9uZW9uLCB2cHhfZDQ1X3ByZWRpY3Rvcl80eDRf
bmVvbiwKLSAgICAgICAgICAgICAgICB2cHhfZDEzNV9wcmVkaWN0b3JfNHg0X25lb24sIE5VTEws
IE5VTEwsIE5VTEwsIE5VTEwsCisgICAgICAgICAgICAgICAgdnB4X2QxMzVfcHJlZGljdG9yXzR4
NF9uZW9uLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLAogICAgICAgICAgICAg
ICAgIHZweF90bV9wcmVkaWN0b3JfNHg0X25lb24pCiBJTlRSQV9QUkVEX1RFU1QoTkVPTiwgVGVz
dEludHJhUHJlZDgsIHZweF9kY19wcmVkaWN0b3JfOHg4X25lb24sCiAgICAgICAgICAgICAgICAg
dnB4X2RjX2xlZnRfcHJlZGljdG9yXzh4OF9uZW9uLCB2cHhfZGNfdG9wX3ByZWRpY3Rvcl84eDhf
bmVvbiwKICAgICAgICAgICAgICAgICB2cHhfZGNfMTI4X3ByZWRpY3Rvcl84eDhfbmVvbiwgdnB4
X3ZfcHJlZGljdG9yXzh4OF9uZW9uLAogICAgICAgICAgICAgICAgIHZweF9oX3ByZWRpY3Rvcl84
eDhfbmVvbiwgdnB4X2Q0NV9wcmVkaWN0b3JfOHg4X25lb24sCi0gICAgICAgICAgICAgICAgdnB4
X2QxMzVfcHJlZGljdG9yXzh4OF9uZW9uLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLAorICAgICAg
ICAgICAgICAgIHZweF9kMTM1X3ByZWRpY3Rvcl84eDhfbmVvbiwgbnVsbHB0ciwgbnVsbHB0ciwg
bnVsbHB0ciwgbnVsbHB0ciwKICAgICAgICAgICAgICAgICB2cHhfdG1fcHJlZGljdG9yXzh4OF9u
ZW9uKQogSU5UUkFfUFJFRF9URVNUKE5FT04sIFRlc3RJbnRyYVByZWQxNiwgdnB4X2RjX3ByZWRp
Y3Rvcl8xNngxNl9uZW9uLAogICAgICAgICAgICAgICAgIHZweF9kY19sZWZ0X3ByZWRpY3Rvcl8x
NngxNl9uZW9uLAogICAgICAgICAgICAgICAgIHZweF9kY190b3BfcHJlZGljdG9yXzE2eDE2X25l
b24sCiAgICAgICAgICAgICAgICAgdnB4X2RjXzEyOF9wcmVkaWN0b3JfMTZ4MTZfbmVvbiwgdnB4
X3ZfcHJlZGljdG9yXzE2eDE2X25lb24sCiAgICAgICAgICAgICAgICAgdnB4X2hfcHJlZGljdG9y
XzE2eDE2X25lb24sIHZweF9kNDVfcHJlZGljdG9yXzE2eDE2X25lb24sCi0gICAgICAgICAgICAg
ICAgdnB4X2QxMzVfcHJlZGljdG9yXzE2eDE2X25lb24sIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEws
Ci0gICAgICAgICAgICAgICAgdnB4X3RtX3ByZWRpY3Rvcl8xNngxNl9uZW9uKQorICAgICAgICAg
ICAgICAgIHZweF9kMTM1X3ByZWRpY3Rvcl8xNngxNl9uZW9uLCBudWxscHRyLCBudWxscHRyLCBu
dWxscHRyLAorICAgICAgICAgICAgICAgIG51bGxwdHIsIHZweF90bV9wcmVkaWN0b3JfMTZ4MTZf
bmVvbikKIElOVFJBX1BSRURfVEVTVChORU9OLCBUZXN0SW50cmFQcmVkMzIsIHZweF9kY19wcmVk
aWN0b3JfMzJ4MzJfbmVvbiwKICAgICAgICAgICAgICAgICB2cHhfZGNfbGVmdF9wcmVkaWN0b3Jf
MzJ4MzJfbmVvbiwKICAgICAgICAgICAgICAgICB2cHhfZGNfdG9wX3ByZWRpY3Rvcl8zMngzMl9u
ZW9uLAogICAgICAgICAgICAgICAgIHZweF9kY18xMjhfcHJlZGljdG9yXzMyeDMyX25lb24sIHZw
eF92X3ByZWRpY3Rvcl8zMngzMl9uZW9uLAogICAgICAgICAgICAgICAgIHZweF9oX3ByZWRpY3Rv
cl8zMngzMl9uZW9uLCB2cHhfZDQ1X3ByZWRpY3Rvcl8zMngzMl9uZW9uLAotICAgICAgICAgICAg
ICAgIHZweF9kMTM1X3ByZWRpY3Rvcl8zMngzMl9uZW9uLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxM
LAotICAgICAgICAgICAgICAgIHZweF90bV9wcmVkaWN0b3JfMzJ4MzJfbmVvbikKKyAgICAgICAg
ICAgICAgICB2cHhfZDEzNV9wcmVkaWN0b3JfMzJ4MzJfbmVvbiwgbnVsbHB0ciwgbnVsbHB0ciwg
bnVsbHB0ciwKKyAgICAgICAgICAgICAgICBudWxscHRyLCB2cHhfdG1fcHJlZGljdG9yXzMyeDMy
X25lb24pCiAjZW5kaWYgIC8vIEhBVkVfTkVPTgogCiAjaWYgSEFWRV9NU0EKIElOVFJBX1BSRURf
VEVTVChNU0EsIFRlc3RJbnRyYVByZWQ0LCB2cHhfZGNfcHJlZGljdG9yXzR4NF9tc2EsCiAgICAg
ICAgICAgICAgICAgdnB4X2RjX2xlZnRfcHJlZGljdG9yXzR4NF9tc2EsIHZweF9kY190b3BfcHJl
ZGljdG9yXzR4NF9tc2EsCiAgICAgICAgICAgICAgICAgdnB4X2RjXzEyOF9wcmVkaWN0b3JfNHg0
X21zYSwgdnB4X3ZfcHJlZGljdG9yXzR4NF9tc2EsCi0gICAgICAgICAgICAgICAgdnB4X2hfcHJl
ZGljdG9yXzR4NF9tc2EsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsCi0gICAg
ICAgICAgICAgICAgdnB4X3RtX3ByZWRpY3Rvcl80eDRfbXNhKQorICAgICAgICAgICAgICAgIHZw
eF9oX3ByZWRpY3Rvcl80eDRfbXNhLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBudWxscHRy
LAorICAgICAgICAgICAgICAgIG51bGxwdHIsIG51bGxwdHIsIHZweF90bV9wcmVkaWN0b3JfNHg0
X21zYSkKIElOVFJBX1BSRURfVEVTVChNU0EsIFRlc3RJbnRyYVByZWQ4LCB2cHhfZGNfcHJlZGlj
dG9yXzh4OF9tc2EsCiAgICAgICAgICAgICAgICAgdnB4X2RjX2xlZnRfcHJlZGljdG9yXzh4OF9t
c2EsIHZweF9kY190b3BfcHJlZGljdG9yXzh4OF9tc2EsCiAgICAgICAgICAgICAgICAgdnB4X2Rj
XzEyOF9wcmVkaWN0b3JfOHg4X21zYSwgdnB4X3ZfcHJlZGljdG9yXzh4OF9tc2EsCi0gICAgICAg
ICAgICAgICAgdnB4X2hfcHJlZGljdG9yXzh4OF9tc2EsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEws
IE5VTEwsIE5VTEwsCi0gICAgICAgICAgICAgICAgdnB4X3RtX3ByZWRpY3Rvcl84eDhfbXNhKQor
ICAgICAgICAgICAgICAgIHZweF9oX3ByZWRpY3Rvcl84eDhfbXNhLCBudWxscHRyLCBudWxscHRy
LCBudWxscHRyLCBudWxscHRyLAorICAgICAgICAgICAgICAgIG51bGxwdHIsIG51bGxwdHIsIHZw
eF90bV9wcmVkaWN0b3JfOHg4X21zYSkKIElOVFJBX1BSRURfVEVTVChNU0EsIFRlc3RJbnRyYVBy
ZWQxNiwgdnB4X2RjX3ByZWRpY3Rvcl8xNngxNl9tc2EsCiAgICAgICAgICAgICAgICAgdnB4X2Rj
X2xlZnRfcHJlZGljdG9yXzE2eDE2X21zYSwgdnB4X2RjX3RvcF9wcmVkaWN0b3JfMTZ4MTZfbXNh
LAogICAgICAgICAgICAgICAgIHZweF9kY18xMjhfcHJlZGljdG9yXzE2eDE2X21zYSwgdnB4X3Zf
cHJlZGljdG9yXzE2eDE2X21zYSwKLSAgICAgICAgICAgICAgICB2cHhfaF9wcmVkaWN0b3JfMTZ4
MTZfbXNhLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLAotICAgICAgICAgICAg
ICAgIHZweF90bV9wcmVkaWN0b3JfMTZ4MTZfbXNhKQorICAgICAgICAgICAgICAgIHZweF9oX3By
ZWRpY3Rvcl8xNngxNl9tc2EsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsCisg
ICAgICAgICAgICAgICAgbnVsbHB0ciwgbnVsbHB0ciwgdnB4X3RtX3ByZWRpY3Rvcl8xNngxNl9t
c2EpCiBJTlRSQV9QUkVEX1RFU1QoTVNBLCBUZXN0SW50cmFQcmVkMzIsIHZweF9kY19wcmVkaWN0
b3JfMzJ4MzJfbXNhLAogICAgICAgICAgICAgICAgIHZweF9kY19sZWZ0X3ByZWRpY3Rvcl8zMngz
Ml9tc2EsIHZweF9kY190b3BfcHJlZGljdG9yXzMyeDMyX21zYSwKICAgICAgICAgICAgICAgICB2
cHhfZGNfMTI4X3ByZWRpY3Rvcl8zMngzMl9tc2EsIHZweF92X3ByZWRpY3Rvcl8zMngzMl9tc2Es
Ci0gICAgICAgICAgICAgICAgdnB4X2hfcHJlZGljdG9yXzMyeDMyX21zYSwgTlVMTCwgTlVMTCwg
TlVMTCwgTlVMTCwgTlVMTCwgTlVMTCwKLSAgICAgICAgICAgICAgICB2cHhfdG1fcHJlZGljdG9y
XzMyeDMyX21zYSkKKyAgICAgICAgICAgICAgICB2cHhfaF9wcmVkaWN0b3JfMzJ4MzJfbXNhLCBu
dWxscHRyLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLAorICAgICAgICAgICAgICAgIG51bGxw
dHIsIG51bGxwdHIsIHZweF90bV9wcmVkaWN0b3JfMzJ4MzJfbXNhKQogI2VuZGlmICAvLyBIQVZF
X01TQQogCiAjaWYgSEFWRV9WU1gKIC8vIFRPRE8oY3JidWcuY29tL3dlYm0vMTUyMik6IEZpeCB0
ZXN0IGZhaWx1cmVzLgogI2lmIDAKLUlOVFJBX1BSRURfVEVTVChWU1gsIFRlc3RJbnRyYVByZWQ0
LCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLAotICAgICAgICAgICAgICAgIHZweF9oX3By
ZWRpY3Rvcl80eDRfdnN4LCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLAotICAg
ICAgICAgICAgICAgIHZweF90bV9wcmVkaWN0b3JfNHg0X3ZzeCkKLQotSU5UUkFfUFJFRF9URVNU
KFZTWCwgVGVzdEludHJhUHJlZDgsIHZweF9kY19wcmVkaWN0b3JfOHg4X3ZzeCwgTlVMTCwgTlVM
TCwgTlVMTCwKLSAgICAgICAgICAgICAgICBOVUxMLCB2cHhfaF9wcmVkaWN0b3JfOHg4X3ZzeCwg
dnB4X2Q0NV9wcmVkaWN0b3JfOHg4X3ZzeCwgTlVMTCwKLSAgICAgICAgICAgICAgICBOVUxMLCBO
VUxMLCBOVUxMLCB2cHhfZDYzX3ByZWRpY3Rvcl84eDhfdnN4LAotICAgICAgICAgICAgICAgIHZw
eF90bV9wcmVkaWN0b3JfOHg4X3ZzeCkKK0lOVFJBX1BSRURfVEVTVChWU1gsIFRlc3RJbnRyYVBy
ZWQ0LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLAorICAgICAgICAgICAgICAg
IG51bGxwdHIsIHZweF9oX3ByZWRpY3Rvcl80eDRfdnN4LCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLAorICAgICAgICAgICAgICAgIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIHZweF90bV9w
cmVkaWN0b3JfNHg0X3ZzeCkKKworSU5UUkFfUFJFRF9URVNUKFZTWCwgVGVzdEludHJhUHJlZDgs
IHZweF9kY19wcmVkaWN0b3JfOHg4X3ZzeCwgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAgICAgICAg
ICAgICBudWxscHRyLCBudWxscHRyLCB2cHhfaF9wcmVkaWN0b3JfOHg4X3ZzeCwKKyAgICAgICAg
ICAgICAgICB2cHhfZDQ1X3ByZWRpY3Rvcl84eDhfdnN4LCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBudWxscHRyLAorICAgICAgICAgICAgICAgIHZweF9kNjNfcHJlZGljdG9yXzh4OF92c3gs
IHZweF90bV9wcmVkaWN0b3JfOHg4X3ZzeCkKICNlbmRpZgogCiBJTlRSQV9QUkVEX1RFU1QoVlNY
LCBUZXN0SW50cmFQcmVkMTYsIHZweF9kY19wcmVkaWN0b3JfMTZ4MTZfdnN4LAogICAgICAgICAg
ICAgICAgIHZweF9kY19sZWZ0X3ByZWRpY3Rvcl8xNngxNl92c3gsIHZweF9kY190b3BfcHJlZGlj
dG9yXzE2eDE2X3ZzeCwKICAgICAgICAgICAgICAgICB2cHhfZGNfMTI4X3ByZWRpY3Rvcl8xNngx
Nl92c3gsIHZweF92X3ByZWRpY3Rvcl8xNngxNl92c3gsCi0gICAgICAgICAgICAgICAgdnB4X2hf
cHJlZGljdG9yXzE2eDE2X3ZzeCwgdnB4X2Q0NV9wcmVkaWN0b3JfMTZ4MTZfdnN4LCBOVUxMLAot
ICAgICAgICAgICAgICAgIE5VTEwsIE5VTEwsIE5VTEwsIHZweF9kNjNfcHJlZGljdG9yXzE2eDE2
X3ZzeCwKKyAgICAgICAgICAgICAgICB2cHhfaF9wcmVkaWN0b3JfMTZ4MTZfdnN4LCB2cHhfZDQ1
X3ByZWRpY3Rvcl8xNngxNl92c3gsIG51bGxwdHIsCisgICAgICAgICAgICAgICAgbnVsbHB0ciwg
bnVsbHB0ciwgbnVsbHB0ciwgdnB4X2Q2M19wcmVkaWN0b3JfMTZ4MTZfdnN4LAogICAgICAgICAg
ICAgICAgIHZweF90bV9wcmVkaWN0b3JfMTZ4MTZfdnN4KQogCiBJTlRSQV9QUkVEX1RFU1QoVlNY
LCBUZXN0SW50cmFQcmVkMzIsIHZweF9kY19wcmVkaWN0b3JfMzJ4MzJfdnN4LAogICAgICAgICAg
ICAgICAgIHZweF9kY19sZWZ0X3ByZWRpY3Rvcl8zMngzMl92c3gsIHZweF9kY190b3BfcHJlZGlj
dG9yXzMyeDMyX3ZzeCwKICAgICAgICAgICAgICAgICB2cHhfZGNfMTI4X3ByZWRpY3Rvcl8zMngz
Ml92c3gsIHZweF92X3ByZWRpY3Rvcl8zMngzMl92c3gsCi0gICAgICAgICAgICAgICAgdnB4X2hf
cHJlZGljdG9yXzMyeDMyX3ZzeCwgdnB4X2Q0NV9wcmVkaWN0b3JfMzJ4MzJfdnN4LCBOVUxMLAot
ICAgICAgICAgICAgICAgIE5VTEwsIE5VTEwsIE5VTEwsIHZweF9kNjNfcHJlZGljdG9yXzMyeDMy
X3ZzeCwKKyAgICAgICAgICAgICAgICB2cHhfaF9wcmVkaWN0b3JfMzJ4MzJfdnN4LCB2cHhfZDQ1
X3ByZWRpY3Rvcl8zMngzMl92c3gsIG51bGxwdHIsCisgICAgICAgICAgICAgICAgbnVsbHB0ciwg
bnVsbHB0ciwgbnVsbHB0ciwgdnB4X2Q2M19wcmVkaWN0b3JfMzJ4MzJfdnN4LAogICAgICAgICAg
ICAgICAgIHZweF90bV9wcmVkaWN0b3JfMzJ4MzJfdnN4KQogI2VuZGlmICAvLyBIQVZFX1ZTWAog
CkBAIC0zNjEsNyArMzY3LDcgQEAgdm9pZCBUZXN0SGlnaGJkSW50cmFQcmVkKGNvbnN0IGNoYXIg
bmFtZVtdLCBWcHhIaWdoYmRQcmVkRnVuYyBjb25zdCAqcHJlZF9mdW5jcywKICAgaW50cmFfcHJl
ZF90ZXN0X21lbS5Jbml0KGJsb2NrX3NpemUsIDEyKTsKIAogICBmb3IgKGludCBrID0gMDsgayA8
IGtOdW1WcDlJbnRyYVByZWRGdW5jczsgKytrKSB7Ci0gICAgaWYgKHByZWRfZnVuY3Nba10gPT0g
TlVMTCkgY29udGludWU7CisgICAgaWYgKHByZWRfZnVuY3Nba10gPT0gbnVsbHB0cikgY29udGlu
dWU7CiAgICAgbWVtY3B5KGludHJhX3ByZWRfdGVzdF9tZW0uc3JjLCBpbnRyYV9wcmVkX3Rlc3Rf
bWVtLnJlZl9zcmMsCiAgICAgICAgICAgIHNpemVvZihpbnRyYV9wcmVkX3Rlc3RfbWVtLnNyYykp
OwogICAgIHZweF91c2VjX3RpbWVyIHRpbWVyOwpAQCAtNDg3LDE5ICs0OTMsMTcgQEAgSElHSEJE
X0lOVFJBX1BSRURfVEVTVCgKICAgICBTU0UyLCBUZXN0SGlnaGJkSW50cmFQcmVkNCwgdnB4X2hp
Z2hiZF9kY19wcmVkaWN0b3JfNHg0X3NzZTIsCiAgICAgdnB4X2hpZ2hiZF9kY19sZWZ0X3ByZWRp
Y3Rvcl80eDRfc3NlMiwgdnB4X2hpZ2hiZF9kY190b3BfcHJlZGljdG9yXzR4NF9zc2UyLAogICAg
IHZweF9oaWdoYmRfZGNfMTI4X3ByZWRpY3Rvcl80eDRfc3NlMiwgdnB4X2hpZ2hiZF92X3ByZWRp
Y3Rvcl80eDRfc3NlMiwKLSAgICB2cHhfaGlnaGJkX2hfcHJlZGljdG9yXzR4NF9zc2UyLCBOVUxM
LCB2cHhfaGlnaGJkX2QxMzVfcHJlZGljdG9yXzR4NF9zc2UyLAotICAgIHZweF9oaWdoYmRfZDEx
N19wcmVkaWN0b3JfNHg0X3NzZTIsIHZweF9oaWdoYmRfZDE1M19wcmVkaWN0b3JfNHg0X3NzZTIs
Ci0gICAgdnB4X2hpZ2hiZF9kMjA3X3ByZWRpY3Rvcl80eDRfc3NlMiwgdnB4X2hpZ2hiZF9kNjNf
cHJlZGljdG9yXzR4NF9zc2UyLAotICAgIHZweF9oaWdoYmRfdG1fcHJlZGljdG9yXzR4NF9jKQot
Ci1ISUdIQkRfSU5UUkFfUFJFRF9URVNUKFNTRTIsIFRlc3RIaWdoYmRJbnRyYVByZWQ4LAotICAg
ICAgICAgICAgICAgICAgICAgICB2cHhfaGlnaGJkX2RjX3ByZWRpY3Rvcl84eDhfc3NlMiwKLSAg
ICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9kY19sZWZ0X3ByZWRpY3Rvcl84eDhfc3Nl
MiwKLSAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9kY190b3BfcHJlZGljdG9yXzh4
OF9zc2UyLAotICAgICAgICAgICAgICAgICAgICAgICB2cHhfaGlnaGJkX2RjXzEyOF9wcmVkaWN0
b3JfOHg4X3NzZTIsCi0gICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfdl9wcmVkaWN0
b3JfOHg4X3NzZTIsCi0gICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfaF9wcmVkaWN0
b3JfOHg4X3NzZTIsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsCi0gICAgICAgICAgICAgICAgICAg
ICAgIE5VTEwsIE5VTEwsIHZweF9oaWdoYmRfdG1fcHJlZGljdG9yXzh4OF9zc2UyKQorICAgIHZw
eF9oaWdoYmRfaF9wcmVkaWN0b3JfNHg0X3NzZTIsIG51bGxwdHIsCisgICAgdnB4X2hpZ2hiZF9k
MTM1X3ByZWRpY3Rvcl80eDRfc3NlMiwgdnB4X2hpZ2hiZF9kMTE3X3ByZWRpY3Rvcl80eDRfc3Nl
MiwKKyAgICB2cHhfaGlnaGJkX2QxNTNfcHJlZGljdG9yXzR4NF9zc2UyLCB2cHhfaGlnaGJkX2Qy
MDdfcHJlZGljdG9yXzR4NF9zc2UyLAorICAgIHZweF9oaWdoYmRfZDYzX3ByZWRpY3Rvcl80eDRf
c3NlMiwgdnB4X2hpZ2hiZF90bV9wcmVkaWN0b3JfNHg0X2MpCisKK0hJR0hCRF9JTlRSQV9QUkVE
X1RFU1QoCisgICAgU1NFMiwgVGVzdEhpZ2hiZEludHJhUHJlZDgsIHZweF9oaWdoYmRfZGNfcHJl
ZGljdG9yXzh4OF9zc2UyLAorICAgIHZweF9oaWdoYmRfZGNfbGVmdF9wcmVkaWN0b3JfOHg4X3Nz
ZTIsIHZweF9oaWdoYmRfZGNfdG9wX3ByZWRpY3Rvcl84eDhfc3NlMiwKKyAgICB2cHhfaGlnaGJk
X2RjXzEyOF9wcmVkaWN0b3JfOHg4X3NzZTIsIHZweF9oaWdoYmRfdl9wcmVkaWN0b3JfOHg4X3Nz
ZTIsCisgICAgdnB4X2hpZ2hiZF9oX3ByZWRpY3Rvcl84eDhfc3NlMiwgbnVsbHB0ciwgbnVsbHB0
ciwgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICBudWxscHRyLCBudWxscHRyLCB2cHhfaGlnaGJkX3Rt
X3ByZWRpY3Rvcl84eDhfc3NlMikKIAogSElHSEJEX0lOVFJBX1BSRURfVEVTVChTU0UyLCBUZXN0
SGlnaGJkSW50cmFQcmVkMTYsCiAgICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfZGNf
cHJlZGljdG9yXzE2eDE2X3NzZTIsCkBAIC01MDcsOCArNTExLDkgQEAgSElHSEJEX0lOVFJBX1BS
RURfVEVTVChTU0UyLCBUZXN0SGlnaGJkSW50cmFQcmVkMTYsCiAgICAgICAgICAgICAgICAgICAg
ICAgIHZweF9oaWdoYmRfZGNfdG9wX3ByZWRpY3Rvcl8xNngxNl9zc2UyLAogICAgICAgICAgICAg
ICAgICAgICAgICB2cHhfaGlnaGJkX2RjXzEyOF9wcmVkaWN0b3JfMTZ4MTZfc3NlMiwKICAgICAg
ICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF92X3ByZWRpY3Rvcl8xNngxNl9zc2UyLAotICAg
ICAgICAgICAgICAgICAgICAgICB2cHhfaGlnaGJkX2hfcHJlZGljdG9yXzE2eDE2X3NzZTIsIE5V
TEwsIE5VTEwsIE5VTEwsCi0gICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE5VTEwsIE5VTEws
IHZweF9oaWdoYmRfdG1fcHJlZGljdG9yXzE2eDE2X3NzZTIpCisgICAgICAgICAgICAgICAgICAg
ICAgIHZweF9oaWdoYmRfaF9wcmVkaWN0b3JfMTZ4MTZfc3NlMiwgbnVsbHB0ciwgbnVsbHB0ciwK
KyAgICAgICAgICAgICAgICAgICAgICAgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0
ciwKKyAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF90bV9wcmVkaWN0b3JfMTZ4MTZf
c3NlMikKIAogSElHSEJEX0lOVFJBX1BSRURfVEVTVChTU0UyLCBUZXN0SGlnaGJkSW50cmFQcmVk
MzIsCiAgICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfZGNfcHJlZGljdG9yXzMyeDMy
X3NzZTIsCkBAIC01MTYsMzUgKzUyMSw0MCBAQCBISUdIQkRfSU5UUkFfUFJFRF9URVNUKFNTRTIs
IFRlc3RIaWdoYmRJbnRyYVByZWQzMiwKICAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hi
ZF9kY190b3BfcHJlZGljdG9yXzMyeDMyX3NzZTIsCiAgICAgICAgICAgICAgICAgICAgICAgIHZw
eF9oaWdoYmRfZGNfMTI4X3ByZWRpY3Rvcl8zMngzMl9zc2UyLAogICAgICAgICAgICAgICAgICAg
ICAgICB2cHhfaGlnaGJkX3ZfcHJlZGljdG9yXzMyeDMyX3NzZTIsCi0gICAgICAgICAgICAgICAg
ICAgICAgIHZweF9oaWdoYmRfaF9wcmVkaWN0b3JfMzJ4MzJfc3NlMiwgTlVMTCwgTlVMTCwgTlVM
TCwKLSAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgTlVMTCwgTlVMTCwgdnB4X2hpZ2hiZF90
bV9wcmVkaWN0b3JfMzJ4MzJfc3NlMikKKyAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hi
ZF9oX3ByZWRpY3Rvcl8zMngzMl9zc2UyLCBudWxscHRyLCBudWxscHRyLAorICAgICAgICAgICAg
ICAgICAgICAgICBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLAorICAgICAgICAg
ICAgICAgICAgICAgICB2cHhfaGlnaGJkX3RtX3ByZWRpY3Rvcl8zMngzMl9zc2UyKQogI2VuZGlm
ICAvLyBIQVZFX1NTRTIKIAogI2lmIEhBVkVfU1NTRTMKLUhJR0hCRF9JTlRSQV9QUkVEX1RFU1Qo
U1NTRTMsIFRlc3RIaWdoYmRJbnRyYVByZWQ0LCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLAotICAg
ICAgICAgICAgICAgICAgICAgICBOVUxMLCBOVUxMLCB2cHhfaGlnaGJkX2Q0NV9wcmVkaWN0b3Jf
NHg0X3Nzc2UzLCBOVUxMLAotICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCBOVUxMLCBOVUxM
LCBOVUxMLCBOVUxMKQotSElHSEJEX0lOVFJBX1BSRURfVEVTVChTU1NFMywgVGVzdEhpZ2hiZElu
dHJhUHJlZDgsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsCi0gICAgICAgICAgICAgICAgICAgICAg
IE5VTEwsIE5VTEwsIHZweF9oaWdoYmRfZDQ1X3ByZWRpY3Rvcl84eDhfc3NzZTMsCitISUdIQkRf
SU5UUkFfUFJFRF9URVNUKFNTU0UzLCBUZXN0SGlnaGJkSW50cmFQcmVkNCwgbnVsbHB0ciwgbnVs
bHB0ciwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICAgICAgICAgbnVsbHB0ciwgbnVsbHB0ciwg
bnVsbHB0ciwKKyAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9kNDVfcHJlZGljdG9y
XzR4NF9zc3NlMywgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICAgICAgICAgbnVs
bHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0cikKK0hJR0hCRF9JTlRSQV9QUkVEX1RFU1Qo
U1NTRTMsIFRlc3RIaWdoYmRJbnRyYVByZWQ4LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLAor
ICAgICAgICAgICAgICAgICAgICAgICBudWxscHRyLCBudWxscHRyLCBudWxscHRyLAorICAgICAg
ICAgICAgICAgICAgICAgICB2cHhfaGlnaGJkX2Q0NV9wcmVkaWN0b3JfOHg4X3Nzc2UzLAogICAg
ICAgICAgICAgICAgICAgICAgICB2cHhfaGlnaGJkX2QxMzVfcHJlZGljdG9yXzh4OF9zc3NlMywK
ICAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9kMTE3X3ByZWRpY3Rvcl84eDhfc3Nz
ZTMsCiAgICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfZDE1M19wcmVkaWN0b3JfOHg4
X3Nzc2UzLAogICAgICAgICAgICAgICAgICAgICAgICB2cHhfaGlnaGJkX2QyMDdfcHJlZGljdG9y
Xzh4OF9zc3NlMywKLSAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9kNjNfcHJlZGlj
dG9yXzh4OF9zc3NlMywgTlVMTCkKLUhJR0hCRF9JTlRSQV9QUkVEX1RFU1QoU1NTRTMsIFRlc3RI
aWdoYmRJbnRyYVByZWQxNiwgTlVMTCwgTlVMTCwgTlVMTCwgTlVMTCwKLSAgICAgICAgICAgICAg
ICAgICAgICAgTlVMTCwgTlVMTCwgdnB4X2hpZ2hiZF9kNDVfcHJlZGljdG9yXzE2eDE2X3Nzc2Uz
LAorICAgICAgICAgICAgICAgICAgICAgICB2cHhfaGlnaGJkX2Q2M19wcmVkaWN0b3JfOHg4X3Nz
c2UzLCBudWxscHRyKQorSElHSEJEX0lOVFJBX1BSRURfVEVTVChTU1NFMywgVGVzdEhpZ2hiZElu
dHJhUHJlZDE2LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLAorICAgICAgICAgICAgICAgICAg
ICAgICBudWxscHRyLCBudWxscHRyLCBudWxscHRyLAorICAgICAgICAgICAgICAgICAgICAgICB2
cHhfaGlnaGJkX2Q0NV9wcmVkaWN0b3JfMTZ4MTZfc3NzZTMsCiAgICAgICAgICAgICAgICAgICAg
ICAgIHZweF9oaWdoYmRfZDEzNV9wcmVkaWN0b3JfMTZ4MTZfc3NzZTMsCiAgICAgICAgICAgICAg
ICAgICAgICAgIHZweF9oaWdoYmRfZDExN19wcmVkaWN0b3JfMTZ4MTZfc3NzZTMsCiAgICAgICAg
ICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfZDE1M19wcmVkaWN0b3JfMTZ4MTZfc3NzZTMsCiAg
ICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfZDIwN19wcmVkaWN0b3JfMTZ4MTZfc3Nz
ZTMsCi0gICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfZDYzX3ByZWRpY3Rvcl8xNngx
Nl9zc3NlMywgTlVMTCkKLUhJR0hCRF9JTlRSQV9QUkVEX1RFU1QoU1NTRTMsIFRlc3RIaWdoYmRJ
bnRyYVByZWQzMiwgTlVMTCwgTlVMTCwgTlVMTCwgTlVMTCwKLSAgICAgICAgICAgICAgICAgICAg
ICAgTlVMTCwgTlVMTCwgdnB4X2hpZ2hiZF9kNDVfcHJlZGljdG9yXzMyeDMyX3Nzc2UzLAorICAg
ICAgICAgICAgICAgICAgICAgICB2cHhfaGlnaGJkX2Q2M19wcmVkaWN0b3JfMTZ4MTZfc3NzZTMs
IG51bGxwdHIpCitISUdIQkRfSU5UUkFfUFJFRF9URVNUKFNTU0UzLCBUZXN0SGlnaGJkSW50cmFQ
cmVkMzIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsCisgICAgICAgICAgICAgICAgICAgICAg
IG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsCisgICAgICAgICAgICAgICAgICAgICAgIHZweF9o
aWdoYmRfZDQ1X3ByZWRpY3Rvcl8zMngzMl9zc3NlMywKICAgICAgICAgICAgICAgICAgICAgICAg
dnB4X2hpZ2hiZF9kMTM1X3ByZWRpY3Rvcl8zMngzMl9zc3NlMywKICAgICAgICAgICAgICAgICAg
ICAgICAgdnB4X2hpZ2hiZF9kMTE3X3ByZWRpY3Rvcl8zMngzMl9zc3NlMywKICAgICAgICAgICAg
ICAgICAgICAgICAgdnB4X2hpZ2hiZF9kMTUzX3ByZWRpY3Rvcl8zMngzMl9zc3NlMywKICAgICAg
ICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9kMjA3X3ByZWRpY3Rvcl8zMngzMl9zc3NlMywK
LSAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9kNjNfcHJlZGljdG9yXzMyeDMyX3Nz
c2UzLCBOVUxMKQorICAgICAgICAgICAgICAgICAgICAgICB2cHhfaGlnaGJkX2Q2M19wcmVkaWN0
b3JfMzJ4MzJfc3NzZTMsIG51bGxwdHIpCiAjZW5kaWYgIC8vIEhBVkVfU1NTRTMKIAogI2lmIEhB
VkVfTkVPTgpAQCAtNTUzLDE0ICs1NjMsMTQgQEAgSElHSEJEX0lOVFJBX1BSRURfVEVTVCgKICAg
ICB2cHhfaGlnaGJkX2RjX2xlZnRfcHJlZGljdG9yXzR4NF9uZW9uLCB2cHhfaGlnaGJkX2RjX3Rv
cF9wcmVkaWN0b3JfNHg0X25lb24sCiAgICAgdnB4X2hpZ2hiZF9kY18xMjhfcHJlZGljdG9yXzR4
NF9uZW9uLCB2cHhfaGlnaGJkX3ZfcHJlZGljdG9yXzR4NF9uZW9uLAogICAgIHZweF9oaWdoYmRf
aF9wcmVkaWN0b3JfNHg0X25lb24sIHZweF9oaWdoYmRfZDQ1X3ByZWRpY3Rvcl80eDRfbmVvbiwK
LSAgICB2cHhfaGlnaGJkX2QxMzVfcHJlZGljdG9yXzR4NF9uZW9uLCBOVUxMLCBOVUxMLCBOVUxM
LCBOVUxMLAorICAgIHZweF9oaWdoYmRfZDEzNV9wcmVkaWN0b3JfNHg0X25lb24sIG51bGxwdHIs
IG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsCiAgICAgdnB4X2hpZ2hiZF90bV9wcmVkaWN0b3Jf
NHg0X25lb24pCiBISUdIQkRfSU5UUkFfUFJFRF9URVNUKAogICAgIE5FT04sIFRlc3RIaWdoYmRJ
bnRyYVByZWQ4LCB2cHhfaGlnaGJkX2RjX3ByZWRpY3Rvcl84eDhfbmVvbiwKICAgICB2cHhfaGln
aGJkX2RjX2xlZnRfcHJlZGljdG9yXzh4OF9uZW9uLCB2cHhfaGlnaGJkX2RjX3RvcF9wcmVkaWN0
b3JfOHg4X25lb24sCiAgICAgdnB4X2hpZ2hiZF9kY18xMjhfcHJlZGljdG9yXzh4OF9uZW9uLCB2
cHhfaGlnaGJkX3ZfcHJlZGljdG9yXzh4OF9uZW9uLAogICAgIHZweF9oaWdoYmRfaF9wcmVkaWN0
b3JfOHg4X25lb24sIHZweF9oaWdoYmRfZDQ1X3ByZWRpY3Rvcl84eDhfbmVvbiwKLSAgICB2cHhf
aGlnaGJkX2QxMzVfcHJlZGljdG9yXzh4OF9uZW9uLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLAor
ICAgIHZweF9oaWdoYmRfZDEzNV9wcmVkaWN0b3JfOHg4X25lb24sIG51bGxwdHIsIG51bGxwdHIs
IG51bGxwdHIsIG51bGxwdHIsCiAgICAgdnB4X2hpZ2hiZF90bV9wcmVkaWN0b3JfOHg4X25lb24p
CiBISUdIQkRfSU5UUkFfUFJFRF9URVNUKE5FT04sIFRlc3RIaWdoYmRJbnRyYVByZWQxNiwKICAg
ICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9kY19wcmVkaWN0b3JfMTZ4MTZfbmVvbiwK
QEAgLTU3MCw4ICs1ODAsOCBAQCBISUdIQkRfSU5UUkFfUFJFRF9URVNUKE5FT04sIFRlc3RIaWdo
YmRJbnRyYVByZWQxNiwKICAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF92X3ByZWRp
Y3Rvcl8xNngxNl9uZW9uLAogICAgICAgICAgICAgICAgICAgICAgICB2cHhfaGlnaGJkX2hfcHJl
ZGljdG9yXzE2eDE2X25lb24sCiAgICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfZDQ1
X3ByZWRpY3Rvcl8xNngxNl9uZW9uLAotICAgICAgICAgICAgICAgICAgICAgICB2cHhfaGlnaGJk
X2QxMzVfcHJlZGljdG9yXzE2eDE2X25lb24sIE5VTEwsIE5VTEwsIE5VTEwsCi0gICAgICAgICAg
ICAgICAgICAgICAgIE5VTEwsIHZweF9oaWdoYmRfdG1fcHJlZGljdG9yXzE2eDE2X25lb24pCisg
ICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfZDEzNV9wcmVkaWN0b3JfMTZ4MTZfbmVv
biwgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICAgICAgICAgbnVsbHB0ciwgbnVs
bHB0ciwgdnB4X2hpZ2hiZF90bV9wcmVkaWN0b3JfMTZ4MTZfbmVvbikKIEhJR0hCRF9JTlRSQV9Q
UkVEX1RFU1QoTkVPTiwgVGVzdEhpZ2hiZEludHJhUHJlZDMyLAogICAgICAgICAgICAgICAgICAg
ICAgICB2cHhfaGlnaGJkX2RjX3ByZWRpY3Rvcl8zMngzMl9uZW9uLAogICAgICAgICAgICAgICAg
ICAgICAgICB2cHhfaGlnaGJkX2RjX2xlZnRfcHJlZGljdG9yXzMyeDMyX25lb24sCkBAIC01ODAs
OCArNTkwLDggQEAgSElHSEJEX0lOVFJBX1BSRURfVEVTVChORU9OLCBUZXN0SGlnaGJkSW50cmFQ
cmVkMzIsCiAgICAgICAgICAgICAgICAgICAgICAgIHZweF9oaWdoYmRfdl9wcmVkaWN0b3JfMzJ4
MzJfbmVvbiwKICAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9oX3ByZWRpY3Rvcl8z
MngzMl9uZW9uLAogICAgICAgICAgICAgICAgICAgICAgICB2cHhfaGlnaGJkX2Q0NV9wcmVkaWN0
b3JfMzJ4MzJfbmVvbiwKLSAgICAgICAgICAgICAgICAgICAgICAgdnB4X2hpZ2hiZF9kMTM1X3By
ZWRpY3Rvcl8zMngzMl9uZW9uLCBOVUxMLCBOVUxMLCBOVUxMLAotICAgICAgICAgICAgICAgICAg
ICAgICBOVUxMLCB2cHhfaGlnaGJkX3RtX3ByZWRpY3Rvcl8zMngzMl9uZW9uKQorICAgICAgICAg
ICAgICAgICAgICAgICB2cHhfaGlnaGJkX2QxMzVfcHJlZGljdG9yXzMyeDMyX25lb24sIG51bGxw
dHIsIG51bGxwdHIsCisgICAgICAgICAgICAgICAgICAgICAgIG51bGxwdHIsIG51bGxwdHIsIHZw
eF9oaWdoYmRfdG1fcHJlZGljdG9yXzMyeDMyX25lb24pCiAjZW5kaWYgIC8vIEhBVkVfTkVPTgog
CiAjZW5kaWYgIC8vIENPTkZJR19WUDlfSElHSEJJVERFUFRICmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rlc3QvdGVzdF92ZWN0b3JfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC90ZXN0X3ZlY3Rv
cl90ZXN0LmNjCmluZGV4IDVhOTczNzEyMmY2ZjY1ZTZlNWRhMDRkY2ExZGRiOGU0N2MwM2YxOTYu
LmNhOTkwZjRkZDRlMDc1NzBmNzQ1NjFkNGVmOWEwMWY4ODFkYmQ4NDQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC90ZXN0X3ZlY3Rvcl90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC90
ZXN0X3ZlY3Rvcl90ZXN0LmNjCkBAIC00MCw3ICs0MCw3IEBAIHR5cGVkZWYgc3RkOjp0dXBsZTxp
bnQsIGludCwgY29uc3QgY2hhciAqPiBEZWNvZGVQYXJhbTsKIGNsYXNzIFRlc3RWZWN0b3JUZXN0
IDogcHVibGljIDo6bGlidnB4X3Rlc3Q6OkRlY29kZXJUZXN0LAogICAgICAgICAgICAgICAgICAg
ICAgICBwdWJsaWMgOjpsaWJ2cHhfdGVzdDo6Q29kZWNUZXN0V2l0aFBhcmFtPERlY29kZVBhcmFt
PiB7CiAgcHJvdGVjdGVkOgotICBUZXN0VmVjdG9yVGVzdCgpIDogRGVjb2RlclRlc3QoR0VUX1BB
UkFNKDApKSwgbWQ1X2ZpbGVfKE5VTEwpIHsKKyAgVGVzdFZlY3RvclRlc3QoKSA6IERlY29kZXJU
ZXN0KEdFVF9QQVJBTSgwKSksIG1kNV9maWxlXyhudWxscHRyKSB7CiAjaWYgQ09ORklHX1ZQOV9E
RUNPREVSCiAgICAgcmVzaXplX2NsaXBzXy5pbnNlcnQoOjpsaWJ2cHhfdGVzdDo6a1ZQOVRlc3RW
ZWN0b3JzUmVzaXplLAogICAgICAgICAgICAgICAgICAgICAgICAgIDo6bGlidnB4X3Rlc3Q6OmtW
UDlUZXN0VmVjdG9yc1Jlc2l6ZSArCkBAIC01NCw3ICs1NCw3IEBAIGNsYXNzIFRlc3RWZWN0b3JU
ZXN0IDogcHVibGljIDo6bGlidnB4X3Rlc3Q6OkRlY29kZXJUZXN0LAogCiAgIHZvaWQgT3Blbk1E
NUZpbGUoY29uc3Qgc3RkOjpzdHJpbmcgJm1kNV9maWxlX25hbWVfKSB7CiAgICAgbWQ1X2ZpbGVf
ID0gbGlidnB4X3Rlc3Q6Ok9wZW5UZXN0RGF0YUZpbGUobWQ1X2ZpbGVfbmFtZV8pOwotICAgIEFT
U0VSVF9UUlVFKG1kNV9maWxlXyAhPSBOVUxMKQorICAgIEFTU0VSVF9ORShtZDVfZmlsZV8sIG51
bGxwdHIpCiAgICAgICAgIDw8ICJNZDUgZmlsZSBvcGVuIGZhaWxlZC4gRmlsZW5hbWU6ICIgPDwg
bWQ1X2ZpbGVfbmFtZV87CiAgIH0KIApAQCAtNzksNyArNzksNyBAQCBjbGFzcyBUZXN0VmVjdG9y
VGVzdCA6IHB1YmxpYyA6OmxpYnZweF90ZXN0OjpEZWNvZGVyVGVzdCwKIAogICB2aXJ0dWFsIHZv
aWQgRGVjb21wcmVzc2VkRnJhbWVIb29rKGNvbnN0IHZweF9pbWFnZV90ICZpbWcsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgaW50IGZyYW1lX251
bWJlcikgewotICAgIEFTU0VSVF9UUlVFKG1kNV9maWxlXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRf
TkUobWQ1X2ZpbGVfLCBudWxscHRyKTsKICAgICBjaGFyIGV4cGVjdGVkX21kNVszM107CiAgICAg
Y2hhciBqdW5rWzEyOF07CiAKQEAgLTEzNyw3ICsxMzcsNyBAQCBURVNUX1AoVGVzdFZlY3RvclRl
c3QsIE1ENU1hdGNoKSB7CiAgICAgcmV0dXJuOwogI2VuZGlmCiAgIH0KLSAgQVNTRVJUX1RSVUUo
dmlkZW8uZ2V0KCkgIT0gTlVMTCk7CisgIEFTU0VSVF9ORSh2aWRlby5nZXQoKSwgbnVsbHB0cik7
CiAgIHZpZGVvLT5Jbml0KCk7CiAKICAgLy8gQ29uc3RydWN0IG1kNSBmaWxlIG5hbWUuCkBAIC0x
NTMsNyArMTUzLDcgQEAgVEVTVF9QKFRlc3RWZWN0b3JUZXN0LCBNRDVNYXRjaCkgewogfQogCiAj
aWYgQ09ORklHX1ZQOF9ERUNPREVSCi1WUDhfSU5TVEFOVElBVEVfVEVTVF9DQVNFKAorVlA4X0lO
U1RBTlRJQVRFX1RFU1RfU1VJVEUoCiAgICAgVGVzdFZlY3RvclRlc3QsCiAgICAgOjp0ZXN0aW5n
OjpDb21iaW5lKAogICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcygxKSwgICAvLyBTaW5nbGUgdGhy
ZWFkLgpAQCAtMTYzLDcgKzE2Myw3IEBAIFZQOF9JTlNUQU5USUFURV9URVNUX0NBU0UoCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnZweF90ZXN0OjprTnVtVlA4VGVzdFZlY3Rv
cnMpKSk7CiAKIC8vIFRlc3QgVlA4IGRlY29kZSBpbiB3aXRoIGRpZmZlcmVudCBudW1iZXJzIG9m
IHRocmVhZHMuCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJ
VEVfUCgKICAgICBWUDhNdWx0aVRocmVhZGVkLCBUZXN0VmVjdG9yVGVzdCwKICAgICA6OnRlc3Rp
bmc6OkNvbWJpbmUoCiAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKApAQCAtMTc4LDcgKzE3OCw3
IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBDT05GSUdfVlA4X0RFQ09E
RVIKIAogI2lmIENPTkZJR19WUDlfREVDT0RFUgotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRSgK
K1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKAogICAgIFRlc3RWZWN0b3JUZXN0LAogICAgIDo6
dGVzdGluZzo6Q29tYmluZSgKICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoMSksICAgLy8gU2lu
Z2xlIHRocmVhZC4KQEAgLTE4Nyw3ICsxODcsNyBAQCBWUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNF
KAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnZweF90ZXN0OjprVlA5VGVzdFZlY3Rv
cnMgKwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ2cHhfdGVzdDo6a051bVZQ
OVRlc3RWZWN0b3JzKSkpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRF
X1RFU1RfU1VJVEVfUCgKICAgICBWUDlNdWx0aVRocmVhZGVkLCBUZXN0VmVjdG9yVGVzdCwKICAg
ICA6OnRlc3Rpbmc6OkNvbWJpbmUoCiAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKApkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90ZXN0L3RpbGVfaW5kZXBlbmRlbmNlX3Rlc3QuY2MgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rlc3QvdGlsZV9pbmRlcGVuZGVuY2VfdGVzdC5jYwppbmRleCAxZDEwMjBhOWQzZTFiNWE5
Mjc1MDlmMmU2MDI2ZTgwMTEyYTZkYjQ3Li5kOTJjMTNmODhlZGNlNWE2N2MyYjU3Y2I3YjI5Y2I4
ZmJhZmRjZjU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdGlsZV9pbmRlcGVuZGVuY2Vf
dGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdGlsZV9pbmRlcGVuZGVuY2VfdGVzdC5jYwpA
QCAtMTAwLDUgKzEwMCw1IEBAIFRFU1RfUChUaWxlSW5kZXBlbmRlbmNlVGVzdCwgTUQ1TWF0Y2gp
IHsKICAgQVNTRVJUX1NUUkVRKG1kNV9md19zdHIsIG1kNV9pbnZfc3RyKTsKIH0KIAotVlA5X0lO
U1RBTlRJQVRFX1RFU1RfQ0FTRShUaWxlSW5kZXBlbmRlbmNlVGVzdCwgOjp0ZXN0aW5nOjpSYW5n
ZSgwLCAyLCAxKSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURShUaWxlSW5kZXBlbmRlbmNl
VGVzdCwgOjp0ZXN0aW5nOjpSYW5nZSgwLCAyLCAxKSk7CiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGVzdC90aW1lc3RhbXBfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVz
dC90aW1lc3RhbXBfdGVzdC5jYwppbmRleCA0MWMxOTI4ODc1ZmNjY2Q0MmFkN2QwN2Y3NmM4Mjg1
Y2MxYWNjMDQ3Li42NDVhOWYyZmY4YTlmNmYxYThlOWQxMjNkYjliM2U2ZmI2NGFlNDk1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdGltZXN0YW1wX3Rlc3QuY2MKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90ZXN0L3RpbWVzdGFtcF90ZXN0LmNjCkBAIC05NCw4ICs5NCw4IEBAIFRFU1RfUChUaW1lc3Rh
bXBUZXN0LCBUZXN0VnB4Um9sbG92ZXIpIHsKICAgQVNTRVJUX05PX0ZBVEFMX0ZBSUxVUkUoUnVu
TG9vcCgmdmlkZW8pKTsKIH0KIAotVlA4X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShUaW1lc3RhbXBU
ZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZw
eF90ZXN0OjprVHdvUGFzc0dvb2QpKTsKLVZQOV9JTlNUQU5USUFURV9URVNUX0NBU0UoVGltZXN0
YW1wVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoOjps
aWJ2cHhfdGVzdDo6a1R3b1Bhc3NHb29kKSk7CitWUDhfSU5TVEFOVElBVEVfVEVTVF9TVUlURShU
aW1lc3RhbXBUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXMoOjpsaWJ2cHhfdGVzdDo6a1R3b1Bhc3NHb29kKSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9T
VUlURShUaW1lc3RhbXBUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a1R3b1Bhc3NHb29kKSk7CiB9ICAvLyBuYW1lc3BhY2UK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC90d29wYXNzX2VuY29kZXIuc2ggYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rlc3QvdHdvcGFzc19lbmNvZGVyLnNoCmluZGV4IGVhZWFhYmRmZDBjMDc0NjU4NDdkZTkx
Yjg3NTdlNmQ2NDg4ZTI0YzQuLjY5ZWNiYWNkMGM0Nzk5NTkyODEyODc0ZDIyNDkwMDFhNjBlMDQ5
MmQgMTAwNzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC90d29wYXNzX2VuY29kZXIuc2gKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90ZXN0L3R3b3Bhc3NfZW5jb2Rlci5zaApAQCAtMzcsNyArMzcsNyBAQCB0d29w
YXNzX2VuY29kZXIoKSB7CiAKICAgZXZhbCAiJHtWUFhfVEVTVF9QUkVGSVh9IiAiJHtlbmNvZGVy
fSIgIiR7Y29kZWN9IiAiJHtZVVZfUkFXX0lOUFVUX1dJRFRIfSIgXAogICAgICAgIiR7WVVWX1JB
V19JTlBVVF9IRUlHSFR9IiAiJHtZVVZfUkFXX0lOUFVUfSIgIiR7b3V0cHV0X2ZpbGV9IiAxMDAg
XAotICAgICAgJHtkZXZudWxsfQorICAgICAgJHtkZXZudWxsfSB8fCByZXR1cm4gMQogCiAgIFsg
LWUgIiR7b3V0cHV0X2ZpbGV9IiBdIHx8IHJldHVybiAxCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rlc3QvdXNlcl9wcml2X3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdXNlcl9wcml2X3Rl
c3QuY2MKaW5kZXggN2JlYTc2YjBhOTRlN2JkZTVmNjQ5MDZkMmY5MTNiMzA5YzdkZTkyMi4uMjA3
NDFmODI2OGVhMGE5OTVhYjdiZDZlMmFkM2ExODg0ZTUwZjRjZiAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC90ZXN0L3VzZXJfcHJpdl90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC91c2VyX3By
aXZfdGVzdC5jYwpAQCAtNTcsMTggKzU3LDE4IEBAIHN0cmluZyBEZWNvZGVGaWxlKGNvbnN0IHN0
cmluZyAmZmlsZW5hbWUpIHsKICAgICB2b2lkICp1c2VyX3ByaXYgPSByZWludGVycHJldF9jYXN0
PHZvaWQgKj4oJmZyYW1lX251bSk7CiAgICAgY29uc3QgdnB4X2NvZGVjX2Vycl90IHJlcyA9CiAg
ICAgICAgIGRlY29kZXIuRGVjb2RlRnJhbWUodmlkZW8uY3hkYXRhKCksIHZpZGVvLmZyYW1lX3Np
emUoKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnJhbWVfbnVtID09IDApID8gTlVM
TCA6IHVzZXJfcHJpdik7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGZyYW1lX251bSA9
PSAwKSA/IG51bGxwdHIgOiB1c2VyX3ByaXYpOwogICAgIGlmIChyZXMgIT0gVlBYX0NPREVDX09L
KSB7CiAgICAgICBFWFBFQ1RfRVEoVlBYX0NPREVDX09LLCByZXMpIDw8IGRlY29kZXIuRGVjb2Rl
RXJyb3IoKTsKICAgICAgIGJyZWFrOwogICAgIH0KICAgICBsaWJ2cHhfdGVzdDo6RHhEYXRhSXRl
cmF0b3IgZGVjX2l0ZXIgPSBkZWNvZGVyLkdldER4RGF0YSgpOwotICAgIGNvbnN0IHZweF9pbWFn
ZV90ICppbWcgPSBOVUxMOworICAgIGNvbnN0IHZweF9pbWFnZV90ICppbWcgPSBudWxscHRyOwog
CiAgICAgLy8gR2V0IGRlY29tcHJlc3NlZCBkYXRhLgogICAgIHdoaWxlICgoaW1nID0gZGVjX2l0
ZXIuTmV4dCgpKSkgewogICAgICAgaWYgKGZyYW1lX251bSA9PSAwKSB7Ci0gICAgICAgIENoZWNr
VXNlclByaXZhdGVEYXRhKGltZy0+dXNlcl9wcml2LCBOVUxMKTsKKyAgICAgICAgQ2hlY2tVc2Vy
UHJpdmF0ZURhdGEoaW1nLT51c2VyX3ByaXYsIG51bGxwdHIpOwogICAgICAgfSBlbHNlIHsKICAg
ICAgICAgQ2hlY2tVc2VyUHJpdmF0ZURhdGEoaW1nLT51c2VyX3ByaXYsICZmcmFtZV9udW0pOwog
CkBAIC03OCw3ICs3OCw3IEBAIHN0cmluZyBEZWNvZGVGaWxlKGNvbnN0IHN0cmluZyAmZmlsZW5h
bWUpIHsKICAgICAgICAgcmVmLmlkeCA9IHJuZC5SYW5kOCgpICUgMzsKICAgICAgICAgZGVjb2Rl
ci5Db250cm9sKFZQOV9HRVRfUkVGRVJFTkNFLCAmcmVmKTsKIAotICAgICAgICBDaGVja1VzZXJQ
cml2YXRlRGF0YShyZWYuaW1nLnVzZXJfcHJpdiwgTlVMTCk7CisgICAgICAgIENoZWNrVXNlclBy
aXZhdGVEYXRhKHJlZi5pbWcudXNlcl9wcml2LCBudWxscHRyKTsKICAgICAgIH0KICAgICAgIG1k
NS5BZGQoaW1nKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdmFyaWFuY2Vf
dGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92YXJpYW5jZV90ZXN0LmNjCmluZGV4IGU5ZmEwM2M2
ODBhMmYwNzc1YTdhNzdjOGQ3NGVjYzNmOWYxY2M5NTMuLjFiNzZiMjA0MTkyNTU5ZjBiZDEwNGU3
ZDg3Mjc5NDhlMWQ5NmUyZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92YXJpYW5jZV90
ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92YXJpYW5jZV90ZXN0LmNjCkBAIC0yNTMsNyAr
MjUzLDcgQEAgdm9pZCBTdW1PZlNxdWFyZXNUZXN0OjpSZWZUZXN0KCkgewogCiB0ZW1wbGF0ZSA8
dHlwZW5hbWUgRnVuYz4KIHN0cnVjdCBUZXN0UGFyYW1zIHsKLSAgVGVzdFBhcmFtcyhpbnQgbG9n
MncgPSAwLCBpbnQgbG9nMmggPSAwLCBGdW5jIGZ1bmN0aW9uID0gTlVMTCwKKyAgVGVzdFBhcmFt
cyhpbnQgbG9nMncgPSAwLCBpbnQgbG9nMmggPSAwLCBGdW5jIGZ1bmN0aW9uID0gbnVsbHB0ciwK
ICAgICAgICAgICAgICBpbnQgYml0X2RlcHRoX3ZhbHVlID0gMCkKICAgICAgIDogbG9nMndpZHRo
KGxvZzJ3KSwgbG9nMmhlaWdodChsb2cyaCksIGZ1bmMoZnVuY3Rpb24pIHsKICAgICB1c2VfaGln
aF9iaXRfZGVwdGggPSAoYml0X2RlcHRoX3ZhbHVlID4gMCk7CkBAIC0yOTcsOCArMjk3LDggQEAg
Y2xhc3MgTWFpblRlc3RDbGFzcwogICAgICAgICB1c2VfaGlnaF9iaXRfZGVwdGgoKSA/IHNpemVv
Zih1aW50MTZfdCkgOiBzaXplb2YodWludDhfdCk7CiAgICAgc3JjXyA9IHJlaW50ZXJwcmV0X2Nh
c3Q8dWludDhfdCAqPih2cHhfbWVtYWxpZ24oMTYsIGJsb2NrX3NpemUoKSAqIHVuaXQpKTsKICAg
ICByZWZfID0gbmV3IHVpbnQ4X3RbYmxvY2tfc2l6ZSgpICogdW5pdF07Ci0gICAgQVNTRVJUX1RS
VUUoc3JjXyAhPSBOVUxMKTsKLSAgICBBU1NFUlRfVFJVRShyZWZfICE9IE5VTEwpOworICAgIEFT
U0VSVF9ORShzcmNfLCBudWxscHRyKTsKKyAgICBBU1NFUlRfTkUocmVmXywgbnVsbHB0cik7CiAj
aWYgQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKICAgICBpZiAodXNlX2hpZ2hfYml0X2RlcHRoKCkp
IHsKICAgICAgIC8vIFRPRE8oc2thbCk6IHJlbW92ZSEKQEAgLTMxOSw4ICszMTksOCBAQCBjbGFz
cyBNYWluVGVzdENsYXNzCiAKICAgICB2cHhfZnJlZShzcmNfKTsKICAgICBkZWxldGVbXSByZWZf
OwotICAgIHNyY18gPSBOVUxMOwotICAgIHJlZl8gPSBOVUxMOworICAgIHNyY18gPSBudWxscHRy
OworICAgIHJlZl8gPSBudWxscHRyOwogICAgIGxpYnZweF90ZXN0OjpDbGVhclN5c3RlbVN0YXRl
KCk7CiAgIH0KIApAQCAtNTczLDkgKzU3Myw5IEBAIGNsYXNzIFN1YnBlbFZhcmlhbmNlVGVzdAog
ICAgICAgICAgIChibG9ja19zaXplKCkgKyB3aWR0aCgpICsgaGVpZ2h0KCkgKyAxKSAqIHNpemVv
Zih1aW50MTZfdCkpKSk7CiAjZW5kaWYgIC8vIENPTkZJR19WUDlfSElHSEJJVERFUFRICiAgICAg
fQotICAgIEFTU0VSVF9UUlVFKHNyY18gIT0gTlVMTCk7Ci0gICAgQVNTRVJUX1RSVUUoc2VjXyAh
PSBOVUxMKTsKLSAgICBBU1NFUlRfVFJVRShyZWZfICE9IE5VTEwpOworICAgIEFTU0VSVF9ORShz
cmNfLCBudWxscHRyKTsKKyAgICBBU1NFUlRfTkUoc2VjXywgbnVsbHB0cik7CisgICAgQVNTRVJU
X05FKHJlZl8sIG51bGxwdHIpOwogICB9CiAKICAgdmlydHVhbCB2b2lkIFRlYXJEb3duKCkgewpA
QCAtNzM4LDIzICs3MzgsMjMgQEAgVEVTVF9QKFZweFN1YnBlbFZhcmlhbmNlVGVzdCwgUmVmKSB7
IFJlZlRlc3QoKTsgfQogVEVTVF9QKFZweFN1YnBlbFZhcmlhbmNlVGVzdCwgRXh0cmVtZVJlZikg
eyBFeHRyZW1lUmVmVGVzdCgpOyB9CiBURVNUX1AoVnB4U3VicGVsQXZnVmFyaWFuY2VUZXN0LCBS
ZWYpIHsgUmVmVGVzdCgpOyB9CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEMsIFN1bU9mU3F1
YXJlc1Rlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhf
Z2V0X21iX3NzX2MpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDLCBTdW1PZlNxdWFyZXNU
ZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZweF9nZXRf
bWJfc3NfYykpOwogCiB0eXBlZGVmIFRlc3RQYXJhbXM8R2V0NHg0U3NlRnVuYz4gU3NlUGFyYW1z
OwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoQywgVnB4U3NlVGVzdCwKLSAgICAgICAgICAgICAg
ICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKFNzZVBhcmFtcygyLCAyLAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfZ2V0NHg0c3NlX2Nz
X2MpKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoQywgVnB4U3NlVGVzdCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhTc2VQYXJhbXMoMiwgMiwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9nZXQ0
eDRzc2VfY3NfYykpKTsKIAogdHlwZWRlZiBUZXN0UGFyYW1zPHZweF92YXJpYW5jZV9mbl90PiBN
c2VQYXJhbXM7Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUChDLCBWcHhNc2VUZXN0LAotICAgICAg
ICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoTXNlUGFyYW1zKDQsIDQsICZ2cHhf
bXNlMTZ4MTZfYyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBN
c2VQYXJhbXMoNCwgMywgJnZweF9tc2UxNng4X2MpLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgTXNlUGFyYW1zKDMsIDQsICZ2cHhfbXNlOHgxNl9jKSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1zZVBhcmFtcygzLCAzLCAmdnB4
X21zZTh4OF9jKSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKEMsIFZweE1zZVRlc3QsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoTXNlUGFyYW1zKDQsIDQs
ICZ2cHhfbXNlMTZ4MTZfYyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgTXNlUGFyYW1zKDQsIDMsICZ2cHhfbXNlMTZ4OF9jKSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBNc2VQYXJhbXMoMywgNCwgJnZweF9tc2U4eDE2X2Mp
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1zZVBhcmFtcygz
LCAzLCAmdnB4X21zZTh4OF9jKSkpOwogCiB0eXBlZGVmIFRlc3RQYXJhbXM8dnB4X3ZhcmlhbmNl
X2ZuX3Q+IFZhcmlhbmNlUGFyYW1zOwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5U
SUFURV9URVNUX1NVSVRFX1AoCiAgICAgQywgVnB4VmFyaWFuY2VUZXN0LAogICAgIDo6dGVzdGlu
Zzo6VmFsdWVzKFZhcmlhbmNlUGFyYW1zKDYsIDYsICZ2cHhfdmFyaWFuY2U2NHg2NF9jKSwKICAg
ICAgICAgICAgICAgICAgICAgICBWYXJpYW5jZVBhcmFtcyg2LCA1LCAmdnB4X3ZhcmlhbmNlNjR4
MzJfYyksCkBAIC03NzEsNyArNzcxLDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAgICAg
ICAgICAgICAgICAgICAgICAgVmFyaWFuY2VQYXJhbXMoMiwgMiwgJnZweF92YXJpYW5jZTR4NF9j
KSkpOwogCiB0eXBlZGVmIFRlc3RQYXJhbXM8dnB4X3N1YnBpeHZhcmlhbmNlX2ZuX3Q+IFN1YnBl
bFZhcmlhbmNlUGFyYW1zOwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9U
RVNUX1NVSVRFX1AoCiAgICAgQywgVnB4U3VicGVsVmFyaWFuY2VUZXN0LAogICAgIDo6dGVzdGlu
Zzo6VmFsdWVzKAogICAgICAgICBTdWJwZWxWYXJpYW5jZVBhcmFtcyg2LCA2LCAmdnB4X3N1Yl9w
aXhlbF92YXJpYW5jZTY0eDY0X2MsIDApLApAQCAtNzg5LDcgKzc4OSw3IEBAIElOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKAogICAgICAgICBTdWJwZWxWYXJpYW5jZVBhcmFtcygyLCAyLCAmdnB4X3N1
Yl9waXhlbF92YXJpYW5jZTR4NF9jLCAwKSkpOwogCiB0eXBlZGVmIFRlc3RQYXJhbXM8dnB4X3N1
YnBfYXZnX3ZhcmlhbmNlX2ZuX3Q+IFN1YnBlbEF2Z1ZhcmlhbmNlUGFyYW1zOwotSU5TVEFOVElB
VEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgQywgVnB4U3Vi
cGVsQXZnVmFyaWFuY2VUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBTdWJw
ZWxBdmdWYXJpYW5jZVBhcmFtcyg2LCA2LCAmdnB4X3N1Yl9waXhlbF9hdmdfdmFyaWFuY2U2NHg2
NF9jLCAwKSwKQEAgLTgwNywxNCArODA3LDExIEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAog
ICAgICAgICBTdWJwZWxBdmdWYXJpYW5jZVBhcmFtcygyLCAyLCAmdnB4X3N1Yl9waXhlbF9hdmdf
dmFyaWFuY2U0eDRfYywgMCkpKTsKIAogI2lmIENPTkZJR19WUDlfSElHSEJJVERFUFRICi10eXBl
ZGVmIE1haW5UZXN0Q2xhc3M8dnB4X3ZhcmlhbmNlX2ZuX3Q+IFZweEhCRE1zZVRlc3Q7CiB0eXBl
ZGVmIE1haW5UZXN0Q2xhc3M8dnB4X3ZhcmlhbmNlX2ZuX3Q+IFZweEhCRFZhcmlhbmNlVGVzdDsK
IHR5cGVkZWYgU3VicGVsVmFyaWFuY2VUZXN0PHZweF9zdWJwaXh2YXJpYW5jZV9mbl90PiBWcHhI
QkRTdWJwZWxWYXJpYW5jZVRlc3Q7CiB0eXBlZGVmIFN1YnBlbFZhcmlhbmNlVGVzdDx2cHhfc3Vi
cF9hdmdfdmFyaWFuY2VfZm5fdD4KICAgICBWcHhIQkRTdWJwZWxBdmdWYXJpYW5jZVRlc3Q7CiAK
LVRFU1RfUChWcHhIQkRNc2VUZXN0LCBSZWZNc2UpIHsgUmVmVGVzdE1zZSgpOyB9Ci1URVNUX1Ao
VnB4SEJETXNlVGVzdCwgTWF4TXNlKSB7IE1heFRlc3RNc2UoKTsgfQogVEVTVF9QKFZweEhCRFZh
cmlhbmNlVGVzdCwgWmVybykgeyBaZXJvVGVzdCgpOyB9CiBURVNUX1AoVnB4SEJEVmFyaWFuY2VU
ZXN0LCBSZWYpIHsgUmVmVGVzdCgpOyB9CiBURVNUX1AoVnB4SEJEVmFyaWFuY2VUZXN0LCBSZWZT
dHJpZGUpIHsgUmVmU3RyaWRlVGVzdCgpOyB9CkBAIC04MjUsNyArODIyLDEwIEBAIFRFU1RfUChW
cHhIQkRTdWJwZWxWYXJpYW5jZVRlc3QsIEV4dHJlbWVSZWYpIHsgRXh0cmVtZVJlZlRlc3QoKTsg
fQogVEVTVF9QKFZweEhCRFN1YnBlbEF2Z1ZhcmlhbmNlVGVzdCwgUmVmKSB7IFJlZlRlc3QoKTsg
fQogCiAvKiBUT0RPKGRlYmFyZ2hhKTogVGhpcyB0ZXN0IGRvZXMgbm90IHN1cHBvcnQgdGhlIGhp
Z2hiZCB2ZXJzaW9uCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK3R5cGVkZWYgTWFpblRlc3RD
bGFzczx2cHhfdmFyaWFuY2VfZm5fdD4gVnB4SEJETXNlVGVzdDsKK1RFU1RfUChWcHhIQkRNc2VU
ZXN0LCBSZWZNc2UpIHsgUmVmVGVzdE1zZSgpOyB9CitURVNUX1AoVnB4SEJETXNlVGVzdCwgTWF4
TXNlKSB7IE1heFRlc3RNc2UoKTsgfQorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEMs
IFZweEhCRE1zZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoTXNlUGFyYW1zKDQsIDQsICZ2
cHhfaGlnaGJkXzEyX21zZTE2eDE2X2MpLAogICAgICAgICAgICAgICAgICAgICAgIE1zZVBhcmFt
cyg0LCA0LCAmdnB4X2hpZ2hiZF8xMl9tc2UxNng4X2MpLApAQCAtODQwLDggKzg0MCw5IEBAIElO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAgICAgICAgICAgIE1zZVBhcmFtcyg0
LCA0LCAmdnB4X2hpZ2hiZF84X21zZTh4MTZfYyksCiAgICAgICAgICAgICAgICAgICAgICAgTXNl
UGFyYW1zKDQsIDQsICZ2cHhfaGlnaGJkXzhfbXNlOHg4X2MpKSk7CiAqLworR1RFU1RfQUxMT1df
VU5JTlNUQU5USUFURURfUEFSQU1FVEVSSVpFRF9URVNUKFZweEhCRE1zZVRlc3QpOwogCi1JTlNU
QU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBDLCBW
cHhIQkRWYXJpYW5jZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoVmFyaWFuY2VQYXJhbXMo
NiwgNiwgJnZweF9oaWdoYmRfMTJfdmFyaWFuY2U2NHg2NF9jLCAxMiksCiAgICAgICAgICAgICAg
ICAgICAgICAgVmFyaWFuY2VQYXJhbXMoNiwgNSwgJnZweF9oaWdoYmRfMTJfdmFyaWFuY2U2NHgz
Ml9jLCAxMiksCkBAIC04ODMsNyArODg0LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAg
ICAgICAgICAgICAgICAgICAgICAgVmFyaWFuY2VQYXJhbXMoMiwgMywgJnZweF9oaWdoYmRfOF92
YXJpYW5jZTR4OF9jLCA4KSwKICAgICAgICAgICAgICAgICAgICAgICBWYXJpYW5jZVBhcmFtcygy
LCAyLCAmdnB4X2hpZ2hiZF84X3ZhcmlhbmNlNHg0X2MsIDgpKSk7CiAKLUlOU1RBTlRJQVRFX1RF
U1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEMsIFZweEhCRFN1YnBl
bFZhcmlhbmNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcygKICAgICAgICAgU3VicGVsVmFy
aWFuY2VQYXJhbXMoNiwgNiwgJnZweF9oaWdoYmRfOF9zdWJfcGl4ZWxfdmFyaWFuY2U2NHg2NF9j
LCA4KSwKQEAgLTk0MSw3ICs5NDIsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAg
ICAgU3VicGVsVmFyaWFuY2VQYXJhbXMoMiwgMiwgJnZweF9oaWdoYmRfMTJfc3ViX3BpeGVsX3Zh
cmlhbmNlNHg0X2MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEyKSkpOwogCi1JTlNU
QU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBDLCBW
cHhIQkRTdWJwZWxBdmdWYXJpYW5jZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAg
ICAgIFN1YnBlbEF2Z1ZhcmlhbmNlUGFyYW1zKDYsIDYsCkBAIC0xMDQ0LDE2ICsxMDQ1LDE2IEBA
IElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBDT05GSUdfVlA5X0hJR0hCSVRE
RVBUSAogCiAjaWYgSEFWRV9TU0UyCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChTU0UyLCBTdW1P
ZlNxdWFyZXNUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMo
dnB4X2dldF9tYl9zc19zc2UyKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoU1NFMiwgU3Vt
T2ZTcXVhcmVzVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVl
cyh2cHhfZ2V0X21iX3NzX3NzZTIpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoU1NFMiwg
VnB4TXNlVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKE1z
ZVBhcmFtcyg0LCA0LCAmdnB4X21zZTE2eDE2X3NzZTIpLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgTXNlUGFyYW1zKDQsIDMsICZ2cHhfbXNlMTZ4OF9zc2UyKSwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1zZVBhcmFtcygzLCA0
LCAmdnB4X21zZTh4MTZfc3NlMiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBNc2VQYXJhbXMoMywgMywgJnZweF9tc2U4eDhfc3NlMikpKTsKK0lOU1RBTlRJQVRF
X1RFU1RfU1VJVEVfUChTU0UyLCBWcHhNc2VUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAg
IDo6dGVzdGluZzo6VmFsdWVzKE1zZVBhcmFtcyg0LCA0LCAmdnB4X21zZTE2eDE2X3NzZTIpLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1zZVBhcmFtcyg0LCAz
LCAmdnB4X21zZTE2eDhfc3NlMiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgTXNlUGFyYW1zKDMsIDQsICZ2cHhfbXNlOHgxNl9zc2UyKSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNc2VQYXJhbXMoMywgMywgJnZweF9tc2U4
eDhfc3NlMikpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNU
X1NVSVRFX1AoCiAgICAgU1NFMiwgVnB4VmFyaWFuY2VUZXN0LAogICAgIDo6dGVzdGluZzo6VmFs
dWVzKFZhcmlhbmNlUGFyYW1zKDYsIDYsICZ2cHhfdmFyaWFuY2U2NHg2NF9zc2UyKSwKICAgICAg
ICAgICAgICAgICAgICAgICBWYXJpYW5jZVBhcmFtcyg2LCA1LCAmdnB4X3ZhcmlhbmNlNjR4MzJf
c3NlMiksCkBAIC0xMDY5LDcgKzEwNzAsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAg
ICAgICAgICAgICAgICAgICAgICBWYXJpYW5jZVBhcmFtcygyLCAzLCAmdnB4X3ZhcmlhbmNlNHg4
X3NzZTIpLAogICAgICAgICAgICAgICAgICAgICAgIFZhcmlhbmNlUGFyYW1zKDIsIDIsICZ2cHhf
dmFyaWFuY2U0eDRfc3NlMikpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5U
SUFURV9URVNUX1NVSVRFX1AoCiAgICAgU1NFMiwgVnB4U3VicGVsVmFyaWFuY2VUZXN0LAogICAg
IDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBTdWJwZWxWYXJpYW5jZVBhcmFtcyg2LCA2LCAm
dnB4X3N1Yl9waXhlbF92YXJpYW5jZTY0eDY0X3NzZTIsIDApLApAQCAtMTA4Niw3ICsxMDg3LDcg
QEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAgICAgICAgIFN1YnBlbFZhcmlhbmNlUGFyYW1z
KDIsIDMsICZ2cHhfc3ViX3BpeGVsX3ZhcmlhbmNlNHg4X3NzZTIsIDApLAogICAgICAgICBTdWJw
ZWxWYXJpYW5jZVBhcmFtcygyLCAyLCAmdnB4X3N1Yl9waXhlbF92YXJpYW5jZTR4NF9zc2UyLCAw
KSkpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVf
UCgKICAgICBTU0UyLCBWcHhTdWJwZWxBdmdWYXJpYW5jZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpW
YWx1ZXMoCiAgICAgICAgIFN1YnBlbEF2Z1ZhcmlhbmNlUGFyYW1zKDYsIDYsICZ2cHhfc3ViX3Bp
eGVsX2F2Z192YXJpYW5jZTY0eDY0X3NzZTIsIDApLApAQCAtMTEwNSw3ICsxMTA2LDcgQEAgSU5T
VEFOVElBVEVfVEVTVF9DQVNFX1AoCiAKICNpZiBDT05GSUdfVlA5X0hJR0hCSVRERVBUSAogLyog
VE9ETyhkZWJhcmdoYSk6IFRoaXMgdGVzdCBkb2VzIG5vdCBzdXBwb3J0IHRoZSBoaWdoYmQgdmVy
c2lvbgotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1Ao
CiAgICAgU1NFMiwgVnB4SEJETXNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhNc2VQYXJh
bXMoNCwgNCwgJnZweF9oaWdoYmRfMTJfbXNlMTZ4MTZfc3NlMiksCiAgICAgICAgICAgICAgICAg
ICAgICAgTXNlUGFyYW1zKDQsIDMsICZ2cHhfaGlnaGJkXzEyX21zZTE2eDhfc3NlMiksCkBAIC0x
MTIxLDcgKzExMjIsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgICAgICAg
ICAgICAgICBNc2VQYXJhbXMoMywgMywgJnZweF9oaWdoYmRfOF9tc2U4eDhfc3NlMikpKTsKICov
CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAog
ICAgIFNTRTIsIFZweEhCRFZhcmlhbmNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcygKICAg
ICAgICAgVmFyaWFuY2VQYXJhbXMoNiwgNiwgJnZweF9oaWdoYmRfMTJfdmFyaWFuY2U2NHg2NF9z
c2UyLCAxMiksCkBAIC0xMTU1LDcgKzExNTYsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgK
ICAgICAgICAgVmFyaWFuY2VQYXJhbXMoMywgNCwgJnZweF9oaWdoYmRfOF92YXJpYW5jZTh4MTZf
c3NlMiwgOCksCiAgICAgICAgIFZhcmlhbmNlUGFyYW1zKDMsIDMsICZ2cHhfaGlnaGJkXzhfdmFy
aWFuY2U4eDhfc3NlMiwgOCkpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5U
SUFURV9URVNUX1NVSVRFX1AoCiAgICAgU1NFMiwgVnB4SEJEU3VicGVsVmFyaWFuY2VUZXN0LAog
ICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBTdWJwZWxWYXJpYW5jZVBhcmFtcyg2LCA2
LCAmdnB4X2hpZ2hiZF8xMl9zdWJfcGl4ZWxfdmFyaWFuY2U2NHg2NF9zc2UyLApAQCAtMTIyNCw3
ICsxMjI1LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAgICAgICAgIFN1YnBlbFZhcmlh
bmNlUGFyYW1zKDMsIDIsICZ2cHhfaGlnaGJkXzhfc3ViX3BpeGVsX3ZhcmlhbmNlOHg0X3NzZTIs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDgpKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1Rf
Q0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTRTIsIFZweEhCRFN1YnBl
bEF2Z1ZhcmlhbmNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcygKICAgICAgICAgU3VicGVs
QXZnVmFyaWFuY2VQYXJhbXMoNiwgNiwKQEAgLTEzMzAsNyArMTMzMSw3IEBAIElOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX1NTRTIKIAogI2lmIEhBVkVfU1NTRTMKLUlO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNT
U0UzLCBWcHhTdWJwZWxWYXJpYW5jZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAg
ICAgIFN1YnBlbFZhcmlhbmNlUGFyYW1zKDYsIDYsICZ2cHhfc3ViX3BpeGVsX3ZhcmlhbmNlNjR4
NjRfc3NzZTMsIDApLApAQCAtMTM0Nyw3ICsxMzQ4LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNF
X1AoCiAgICAgICAgIFN1YnBlbFZhcmlhbmNlUGFyYW1zKDIsIDMsICZ2cHhfc3ViX3BpeGVsX3Zh
cmlhbmNlNHg4X3Nzc2UzLCAwKSwKICAgICAgICAgU3VicGVsVmFyaWFuY2VQYXJhbXMoMiwgMiwg
JnZweF9zdWJfcGl4ZWxfdmFyaWFuY2U0eDRfc3NzZTMsIDApKSk7CiAKLUlOU1RBTlRJQVRFX1RF
U1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTU0UzLCBWcHhTdWJw
ZWxBdmdWYXJpYW5jZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIFN1YnBl
bEF2Z1ZhcmlhbmNlUGFyYW1zKDYsIDYsICZ2cHhfc3ViX3BpeGVsX2F2Z192YXJpYW5jZTY0eDY0
X3Nzc2UzLApAQCAtMTM3NCwxMSArMTM3NSwxMSBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgK
ICNlbmRpZiAgLy8gSEFWRV9TU1NFMwogCiAjaWYgSEFWRV9BVlgyCi1JTlNUQU5USUFURV9URVNU
X0NBU0VfUChBVlgyLCBWcHhNc2VUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXMoTXNlUGFyYW1zKDQsIDQsICZ2cHhfbXNlMTZ4MTZfYXZ4MiksCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNc2VQYXJhbXMoNCwgMywgJnZweF9t
c2UxNng4X2F2eDIpKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoQVZYMiwgVnB4TXNlVGVz
dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhNc2VQYXJhbXMo
NCwgNCwgJnZweF9tc2UxNngxNl9hdngyKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBNc2VQYXJhbXMoNCwgMywgJnZweF9tc2UxNng4X2F2eDIpKSk7CiAKLUlO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEFW
WDIsIFZweFZhcmlhbmNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhWYXJpYW5jZVBhcmFt
cyg2LCA2LCAmdnB4X3ZhcmlhbmNlNjR4NjRfYXZ4MiksCiAgICAgICAgICAgICAgICAgICAgICAg
VmFyaWFuY2VQYXJhbXMoNiwgNSwgJnZweF92YXJpYW5jZTY0eDMyX2F2eDIpLApAQCAtMTM4OSwx
MyArMTM5MCwxMyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgICAgICAgICAg
ICAgICBWYXJpYW5jZVBhcmFtcyg0LCA0LCAmdnB4X3ZhcmlhbmNlMTZ4MTZfYXZ4MiksCiAgICAg
ICAgICAgICAgICAgICAgICAgVmFyaWFuY2VQYXJhbXMoNCwgMywgJnZweF92YXJpYW5jZTE2eDhf
YXZ4MikpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NV
SVRFX1AoCiAgICAgQVZYMiwgVnB4U3VicGVsVmFyaWFuY2VUZXN0LAogICAgIDo6dGVzdGluZzo6
VmFsdWVzKAogICAgICAgICBTdWJwZWxWYXJpYW5jZVBhcmFtcyg2LCA2LCAmdnB4X3N1Yl9waXhl
bF92YXJpYW5jZTY0eDY0X2F2eDIsIDApLAogICAgICAgICBTdWJwZWxWYXJpYW5jZVBhcmFtcyg1
LCA1LCAmdnB4X3N1Yl9waXhlbF92YXJpYW5jZTMyeDMyX2F2eDIsIDApKSk7CiAKLUlOU1RBTlRJ
QVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEFWWDIsIFZw
eFN1YnBlbEF2Z1ZhcmlhbmNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcygKICAgICAgICAg
U3VicGVsQXZnVmFyaWFuY2VQYXJhbXMoNiwgNiwgJnZweF9zdWJfcGl4ZWxfYXZnX3ZhcmlhbmNl
NjR4NjRfYXZ4MiwgMCksCkBAIC0xNDA0LDE0ICsxNDA1LDE1IEBAIElOU1RBTlRJQVRFX1RFU1Rf
Q0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX0FWWDIKIAogI2lmIEhBVkVfTkVPTgotSU5TVEFOVElB
VEVfVEVTVF9DQVNFX1AoTkVPTiwgVnB4U3NlVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAg
IDo6dGVzdGluZzo6VmFsdWVzKFNzZVBhcmFtcygyLCAyLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhfZ2V0NHg0c3NlX2NzX25lb24pKSk7
CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoTkVPTiwgVnB4U3NlVGVzdCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhTc2VQYXJhbXMoMiwgMiwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9nZXQ0eDRz
c2VfY3NfbmVvbikpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTkVPTiwgVnB4TXNlVGVz
dCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKE1zZVBhcmFtcyg0
LCA0LCAmdnB4X21zZTE2eDE2X25lb24pKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoTkVP
TiwgVnB4TXNlVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVl
cyhNc2VQYXJhbXMoNCwgNCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgJnZweF9tc2UxNngxNl9uZW9uKSkpOwogCi1JTlNUQU5USUFURV9URVNU
X0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBORU9OLCBWcHhWYXJpYW5j
ZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoVmFyaWFuY2VQYXJhbXMoNiwgNiwgJnZweF92
YXJpYW5jZTY0eDY0X25lb24pLAogICAgICAgICAgICAgICAgICAgICAgIFZhcmlhbmNlUGFyYW1z
KDYsIDUsICZ2cHhfdmFyaWFuY2U2NHgzMl9uZW9uKSwKQEAgLTE0MjcsNyArMTQyOSw3IEBAIElO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAgICAgICAgICAgIFZhcmlhbmNlUGFy
YW1zKDIsIDMsICZ2cHhfdmFyaWFuY2U0eDhfbmVvbiksCiAgICAgICAgICAgICAgICAgICAgICAg
VmFyaWFuY2VQYXJhbXMoMiwgMiwgJnZweF92YXJpYW5jZTR4NF9uZW9uKSkpOwogCi1JTlNUQU5U
SUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBORU9OLCBW
cHhTdWJwZWxWYXJpYW5jZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIFN1
YnBlbFZhcmlhbmNlUGFyYW1zKDYsIDYsICZ2cHhfc3ViX3BpeGVsX3ZhcmlhbmNlNjR4NjRfbmVv
biwgMCksCkBAIC0xNDQ0LDcgKzE0NDYsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAg
ICAgICAgU3VicGVsVmFyaWFuY2VQYXJhbXMoMiwgMywgJnZweF9zdWJfcGl4ZWxfdmFyaWFuY2U0
eDhfbmVvbiwgMCksCiAgICAgICAgIFN1YnBlbFZhcmlhbmNlUGFyYW1zKDIsIDIsICZ2cHhfc3Vi
X3BpeGVsX3ZhcmlhbmNlNHg0X25lb24sIDApKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9Q
KAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE5FT04sIFZweFN1YnBlbEF2Z1Zhcmlh
bmNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcygKICAgICAgICAgU3VicGVsQXZnVmFyaWFu
Y2VQYXJhbXMoNiwgNiwgJnZweF9zdWJfcGl4ZWxfYXZnX3ZhcmlhbmNlNjR4NjRfbmVvbiwgMCks
CkBAIC0xNDYzLDIwICsxNDY1LDIwIEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlm
ICAvLyBIQVZFX05FT04KIAogI2lmIEhBVkVfTVNBCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChN
U0EsIFN1bU9mU3F1YXJlc1Rlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6
OlZhbHVlcyh2cHhfZ2V0X21iX3NzX21zYSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE1T
QSwgU3VtT2ZTcXVhcmVzVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6
OlZhbHVlcyh2cHhfZ2V0X21iX3NzX21zYSkpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChN
U0EsIFZweFNzZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVl
cyhTc2VQYXJhbXMoMiwgMiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAmdnB4X2dldDR4NHNzZV9jc19tc2EpKSk7CitJTlNUQU5USUFURV9URVNU
X1NVSVRFX1AoTVNBLCBWcHhTc2VUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVz
dGluZzo6VmFsdWVzKFNzZVBhcmFtcygyLCAyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2dldDR4NHNzZV9jc19tc2EpKSk7CiAKLUlO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE1TQSwgVnB4TXNlVGVzdCwKLSAgICAgICAgICAgICAgICAg
ICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKE1zZVBhcmFtcyg0LCA0LCAmdnB4X21zZTE2eDE2X21z
YSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNc2VQYXJhbXMo
NCwgMywgJnZweF9tc2UxNng4X21zYSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBNc2VQYXJhbXMoMywgNCwgJnZweF9tc2U4eDE2X21zYSksCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNc2VQYXJhbXMoMywgMywgJnZweF9tc2U4
eDhfbXNhKSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE1TQSwgVnB4TXNlVGVzdCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhNc2VQYXJhbXMoNCwgNCwg
JnZweF9tc2UxNngxNl9tc2EpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIE1zZVBhcmFtcyg0LCAzLCAmdnB4X21zZTE2eDhfbXNhKSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNc2VQYXJhbXMoMywgNCwgJnZweF9tc2U4eDE2
X21zYSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTXNlUGFy
YW1zKDMsIDMsICZ2cHhfbXNlOHg4X21zYSkpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1Ao
CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTVNBLCBWcHhWYXJpYW5jZVRlc3QsCiAg
ICAgOjp0ZXN0aW5nOjpWYWx1ZXMoVmFyaWFuY2VQYXJhbXMoNiwgNiwgJnZweF92YXJpYW5jZTY0
eDY0X21zYSksCiAgICAgICAgICAgICAgICAgICAgICAgVmFyaWFuY2VQYXJhbXMoNiwgNSwgJnZw
eF92YXJpYW5jZTY0eDMyX21zYSksCkBAIC0xNDkyLDcgKzE0OTQsNyBAQCBJTlNUQU5USUFURV9U
RVNUX0NBU0VfUCgKICAgICAgICAgICAgICAgICAgICAgICBWYXJpYW5jZVBhcmFtcygyLCAzLCAm
dnB4X3ZhcmlhbmNlNHg4X21zYSksCiAgICAgICAgICAgICAgICAgICAgICAgVmFyaWFuY2VQYXJh
bXMoMiwgMiwgJnZweF92YXJpYW5jZTR4NF9tc2EpKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FT
RV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE1TQSwgVnB4U3VicGVsVmFyaWFu
Y2VUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBTdWJwZWxWYXJpYW5jZVBh
cmFtcygyLCAyLCAmdnB4X3N1Yl9waXhlbF92YXJpYW5jZTR4NF9tc2EsIDApLApAQCAtMTUwOSw3
ICsxNTExLDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAgICAgICAgIFN1YnBlbFZhcmlh
bmNlUGFyYW1zKDYsIDUsICZ2cHhfc3ViX3BpeGVsX3ZhcmlhbmNlNjR4MzJfbXNhLCAwKSwKICAg
ICAgICAgU3VicGVsVmFyaWFuY2VQYXJhbXMoNiwgNiwgJnZweF9zdWJfcGl4ZWxfdmFyaWFuY2U2
NHg2NF9tc2EsIDApKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QKAogICAgIE1TQSwgVnB4U3VicGVsQXZnVmFyaWFuY2VUZXN0LAogICAgIDo6
dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBTdWJwZWxBdmdWYXJpYW5jZVBhcmFtcyg2LCA2LCAm
dnB4X3N1Yl9waXhlbF9hdmdfdmFyaWFuY2U2NHg2NF9tc2EsIDApLApAQCAtMTUyOCwxOSArMTUz
MCwxOSBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNlbmRpZiAgLy8gSEFWRV9NU0EKIAog
I2lmIEhBVkVfVlNYCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChWU1gsIFN1bU9mU3F1YXJlc1Rl
c3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfZ2V0X21i
X3NzX3ZzeCkpOwotCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChWU1gsIFZweFNzZVRlc3QsCi0g
ICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhTc2VQYXJhbXMoMiwgMiwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4
X2dldDR4NHNzZV9jc192c3gpKSk7Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUChWU1gsIFZweE1z
ZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhNc2VQYXJh
bXMoNCwgNCwgJnZweF9tc2UxNngxNl92c3gpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgTXNlUGFyYW1zKDQsIDMsICZ2cHhfbXNlMTZ4OF92c3gpLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTXNlUGFyYW1zKDMsIDQsICZ2cHhf
bXNlOHgxNl92c3gpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
TXNlUGFyYW1zKDMsIDMsICZ2cHhfbXNlOHg4X3ZzeCkpKTsKLQotSU5TVEFOVElBVEVfVEVTVF9D
QVNFX1AoCitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoVlNYLCBTdW1PZlNxdWFyZXNUZXN0LAor
ICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZweF9nZXRfbWJfc3Nf
dnN4KSk7CisKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChWU1gsIFZweFNzZVRlc3QsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoU3NlUGFyYW1zKDIsIDIsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2cHhf
Z2V0NHg0c3NlX2NzX3ZzeCkpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChWU1gsIFZweE1z
ZVRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoTXNlUGFy
YW1zKDQsIDQsICZ2cHhfbXNlMTZ4MTZfdnN4KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBNc2VQYXJhbXMoNCwgMywgJnZweF9tc2UxNng4X3ZzeCksCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTXNlUGFyYW1zKDMsIDQsICZ2
cHhfbXNlOHgxNl92c3gpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIE1zZVBhcmFtcygzLCAzLCAmdnB4X21zZTh4OF92c3gpKSk7CisKK0lOU1RBTlRJQVRFX1RF
U1RfU1VJVEVfUCgKICAgICBWU1gsIFZweFZhcmlhbmNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZh
bHVlcyhWYXJpYW5jZVBhcmFtcyg2LCA2LCAmdnB4X3ZhcmlhbmNlNjR4NjRfdnN4KSwKICAgICAg
ICAgICAgICAgICAgICAgICBWYXJpYW5jZVBhcmFtcyg2LCA1LCAmdnB4X3ZhcmlhbmNlNjR4MzJf
dnN4KSwKQEAgLTE1NTgsMTMgKzE1NjAsMTMgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAj
ZW5kaWYgIC8vIEhBVkVfVlNYCiAKICNpZiBIQVZFX01NSQotSU5TVEFOVElBVEVfVEVTVF9DQVNF
X1AoTU1JLCBWcHhNc2VUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpW
YWx1ZXMoTXNlUGFyYW1zKDQsIDQsICZ2cHhfbXNlMTZ4MTZfbW1pKSwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1zZVBhcmFtcyg0LCAzLCAmdnB4X21zZTE2eDhf
bW1pKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1zZVBhcmFt
cygzLCA0LCAmdnB4X21zZTh4MTZfbW1pKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIE1zZVBhcmFtcygzLCAzLCAmdnB4X21zZTh4OF9tbWkpKSk7CitJTlNUQU5U
SUFURV9URVNUX1NVSVRFX1AoTU1JLCBWcHhNc2VUZXN0LAorICAgICAgICAgICAgICAgICAgICAg
ICAgIDo6dGVzdGluZzo6VmFsdWVzKE1zZVBhcmFtcyg0LCA0LCAmdnB4X21zZTE2eDE2X21taSks
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTXNlUGFyYW1zKDQs
IDMsICZ2cHhfbXNlMTZ4OF9tbWkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIE1zZVBhcmFtcygzLCA0LCAmdnB4X21zZTh4MTZfbW1pKSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNc2VQYXJhbXMoMywgMywgJnZweF9tc2U4
eDhfbW1pKSkpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1Rf
U1VJVEVfUCgKICAgICBNTUksIFZweFZhcmlhbmNlVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVl
cyhWYXJpYW5jZVBhcmFtcyg2LCA2LCAmdnB4X3ZhcmlhbmNlNjR4NjRfbW1pKSwKICAgICAgICAg
ICAgICAgICAgICAgICBWYXJpYW5jZVBhcmFtcyg2LCA1LCAmdnB4X3ZhcmlhbmNlNjR4MzJfbW1p
KSwKQEAgLTE1ODAsNyArMTU4Miw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAg
ICAgICAgICAgICAgICAgIFZhcmlhbmNlUGFyYW1zKDIsIDMsICZ2cHhfdmFyaWFuY2U0eDhfbW1p
KSwKICAgICAgICAgICAgICAgICAgICAgICBWYXJpYW5jZVBhcmFtcygyLCAyLCAmdnB4X3Zhcmlh
bmNlNHg0X21taSkpKTsKIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNUQU5USUFURV9U
RVNUX1NVSVRFX1AoCiAgICAgTU1JLCBWcHhTdWJwZWxWYXJpYW5jZVRlc3QsCiAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXMoCiAgICAgICAgIFN1YnBlbFZhcmlhbmNlUGFyYW1zKDYsIDYsICZ2cHhfc3Vi
X3BpeGVsX3ZhcmlhbmNlNjR4NjRfbW1pLCAwKSwKQEAgLTE1OTcsNyArMTU5OSw3IEBAIElOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICBTdWJwZWxWYXJpYW5jZVBhcmFtcygyLCAzLCAm
dnB4X3N1Yl9waXhlbF92YXJpYW5jZTR4OF9tbWksIDApLAogICAgICAgICBTdWJwZWxWYXJpYW5j
ZVBhcmFtcygyLCAyLCAmdnB4X3N1Yl9waXhlbF92YXJpYW5jZTR4NF9tbWksIDApKSk7CiAKLUlO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE1N
SSwgVnB4U3VicGVsQXZnVmFyaWFuY2VUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAg
ICAgICBTdWJwZWxBdmdWYXJpYW5jZVBhcmFtcyg2LCA2LCAmdnB4X3N1Yl9waXhlbF9hdmdfdmFy
aWFuY2U2NHg2NF9tbWksIDApLApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOF9kYXRh
cmF0ZV90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOF9kYXRhcmF0ZV90ZXN0LmNjCmluZGV4
IDk1YTExNTdmNmMyYjAzNWIwZTg5YTRjZjVlYmE0YTYzZTQ5NmYwZTQuLmRjZDY4YTJkNGM3ZjI1
OTM0N2RmYmMwYzBlODFjNjJjYmM0Y2E3YTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92
cDhfZGF0YXJhdGVfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA4X2RhdGFyYXRlX3Rl
c3QuY2MKQEAgLTQwOCw5ICs0MDgsMzEgQEAgVEVTVF9QKERhdGFyYXRlVGVzdFJlYWxUaW1lLCBH
RkJvb3N0KSB7CiAgICAgICA8PCAiIFRoZSBkYXRhcmF0ZSBmb3IgdGhlIGZpbGUgbWlzc2VkIHRo
ZSB0YXJnZXQhIjsKIH0KIAotVlA4X0lOU1RBTlRJQVRFX1RFU1RfQ0FTRShEYXRhcmF0ZVRlc3RM
YXJnZSwgQUxMX1RFU1RfTU9ERVMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGlu
Zzo6VmFsdWVzKDApKTsKLVZQOF9JTlNUQU5USUFURV9URVNUX0NBU0UoRGF0YXJhdGVUZXN0UmVh
bFRpbWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKDo6bGli
dnB4X3Rlc3Q6OmtSZWFsVGltZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGlu
Zzo6VmFsdWVzKC02LCAtMTIpKTsKK1RFU1RfUChEYXRhcmF0ZVRlc3RSZWFsVGltZSwgTlYxMikg
eworICBkZW5vaXNlcl9vbl8gPSAwOworICBjZmdfLnJjX2J1Zl9pbml0aWFsX3N6ID0gNTAwOwor
ICBjZmdfLnJjX2Ryb3BmcmFtZV90aHJlc2ggPSAwOworICBjZmdfLnJjX21heF9xdWFudGl6ZXIg
PSA1NjsKKyAgY2ZnXy5yY19lbmRfdXNhZ2UgPSBWUFhfQ0JSOworICBjZmdfLmdfZXJyb3JfcmVz
aWxpZW50ID0gMDsKKyAgOjpsaWJ2cHhfdGVzdDo6WVVWVmlkZW9Tb3VyY2UgdmlkZW8oImhhbnRy
b19jb2xsYWdlX3czNTJoMjg4X252MTIueXV2IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgVlBYX0lNR19GTVRfTlYxMiwgMzUyLCAyODgsIDMwLCAxLCAwLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMDApOworCisgIGNmZ18ucmNfdGFyZ2V0
X2JpdHJhdGUgPSAyMDA7CisgIFJlc2V0TW9kZWwoKTsKKworICBBU1NFUlRfTk9fRkFUQUxfRkFJ
TFVSRShSdW5Mb29wKCZ2aWRlbykpOworICBBU1NFUlRfR0UoY2ZnXy5yY190YXJnZXRfYml0cmF0
ZSwgZWZmZWN0aXZlX2RhdGFyYXRlXyAqIDAuOTUpCisgICAgICA8PCAiIFRoZSBkYXRhcmF0ZSBm
b3IgdGhlIGZpbGUgZXhjZWVkcyB0aGUgdGFyZ2V0ISI7CisKKyAgQVNTRVJUX0xFKGNmZ18ucmNf
dGFyZ2V0X2JpdHJhdGUsIGZpbGVfZGF0YXJhdGVfICogMS40KQorICAgICAgPDwgIiBUaGUgZGF0
YXJhdGUgZm9yIHRoZSBmaWxlIG1pc3NlZCB0aGUgdGFyZ2V0ISI7Cit9CisKK1ZQOF9JTlNUQU5U
SUFURV9URVNUX1NVSVRFKERhdGFyYXRlVGVzdExhcmdlLCBBTExfVEVTVF9NT0RFUywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKDApKTsKK1ZQOF9JTlNUQU5U
SUFURV9URVNUX1NVSVRFKERhdGFyYXRlVGVzdFJlYWxUaW1lLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a1JlYWxUaW1lKSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKC02LCAtMTIpKTsKIH0g
IC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOF9kZW5vaXNlcl9z
c2UyX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA4X2Rlbm9pc2VyX3NzZTJfdGVzdC5jYwpp
bmRleCAyY2JjZjA0MTQ5ODcwOGJkOWU2MzU3YTU2MWU3YjNhMTdjN2NlOGI0Li4wMTk3ZjE0M2Yz
ZTExZWRkMWE1ZGJjMDgxZWEyOWI2NTZlMjE0NGQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rl
c3QvdnA4X2Rlbm9pc2VyX3NzZTJfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA4X2Rl
bm9pc2VyX3NzZTJfdGVzdC5jYwpAQCAtMTEwLDUgKzExMCw1IEBAIFRFU1RfUChWUDhEZW5vaXNl
clRlc3QsIEJpdGV4YWN0Q2hlY2spIHsKIH0KIAogLy8gVGVzdCBmb3IgYWxsIGJsb2NrIHNpemUu
Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUChTU0UyLCBWUDhEZW5vaXNlclRlc3QsIDo6dGVzdGlu
Zzo6VmFsdWVzKDAsIDEpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChTU0UyLCBWUDhEZW5v
aXNlclRlc3QsIDo6dGVzdGluZzo6VmFsdWVzKDAsIDEpKTsKIH0gIC8vIG5hbWVzcGFjZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOF9mZGN0NHg0X3Rlc3QuY2MgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3Rlc3QvdnA4X2ZkY3Q0eDRfdGVzdC5jYwppbmRleCBiNzY5N2Q4NTk2ZjU0NzY1NjY1YTg1MGQy
OGRlY2RkZTA1N2VlMGM1Li5kNWFjMjUzMDAzZmNmMmQ5MzJhNjhlOTQ5MmM5Mzk5ZjgxNjQwMTAx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA4X2ZkY3Q0eDRfdGVzdC5jYworKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3Rlc3QvdnA4X2ZkY3Q0eDRfdGVzdC5jYwpAQCAtMTgzLDI0ICsxODMsMjQgQEAg
VEVTVF9QKEZkY3RUZXN0LCBSb3VuZFRyaXBFcnJvckNoZWNrKSB7CiAgICAgICA8PCAiRXJyb3I6
IEZEQ1QvSURDVCBoYXMgYXZlcmFnZSByb3VuZHRyaXAgZXJyb3IgPiAxIHBlciBibG9jayI7CiB9
OwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChDLCBGZGN0VGVzdCwgOjp0ZXN0aW5nOjpWYWx1
ZXModnA4X3Nob3J0X2ZkY3Q0eDRfYykpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKEMsIEZk
Y3RUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlcyh2cDhfc2hvcnRfZmRjdDR4NF9jKSk7CiAKICNpZiBI
QVZFX05FT04KLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE5FT04sIEZkY3RUZXN0LAotICAgICAg
ICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnA4X3Nob3J0X2ZkY3Q0eDRfbmVv
bikpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE5FT04sIEZkY3RUZXN0LAorICAgICAgICAg
ICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZwOF9zaG9ydF9mZGN0NHg0X25lb24p
KTsKICNlbmRpZiAgLy8gSEFWRV9ORU9OCiAKICNpZiBIQVZFX1NTRTIKLUlOU1RBTlRJQVRFX1RF
U1RfQ0FTRV9QKFNTRTIsIEZkY3RUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXModnA4X3Nob3J0X2ZkY3Q0eDRfc3NlMikpOworSU5TVEFOVElBVEVfVEVTVF9T
VUlURV9QKFNTRTIsIEZkY3RUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGlu
Zzo6VmFsdWVzKHZwOF9zaG9ydF9mZGN0NHg0X3NzZTIpKTsKICNlbmRpZiAgLy8gSEFWRV9TU0Uy
CiAKICNpZiBIQVZFX01TQQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoTVNBLCBGZGN0VGVzdCwK
LSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZwOF9zaG9ydF9mZGN0
NHg0X21zYSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE1TQSwgRmRjdFRlc3QsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnA4X3Nob3J0X2ZkY3Q0eDRf
bXNhKSk7CiAjZW5kaWYgIC8vIEhBVkVfTVNBCiAjaWYgSEFWRV9NTUkKLUlOU1RBTlRJQVRFX1RF
U1RfQ0FTRV9QKE1NSSwgRmRjdFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rp
bmc6OlZhbHVlcyh2cDhfc2hvcnRfZmRjdDR4NF9tbWkpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJ
VEVfUChNTUksIEZkY3RUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6
VmFsdWVzKHZwOF9zaG9ydF9mZGN0NHg0X21taSkpOwogI2VuZGlmICAvLyBIQVZFX01NSQogfSAg
Ly8gbmFtZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA4X211bHRpX3Jlc29s
dXRpb25fZW5jb2Rlci5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDhfbXVsdGlfcmVzb2x1dGlvbl9l
bmNvZGVyLnNoCmluZGV4IGJkNDViNTM4MWY2ZDc4NWY1NzM1YzNmODk2YzgzNjNiZGIzZDRmZDQu
LjFlOTZmOTRjYzdlNWUxODRmOWFjOGUwMmY0MDVlMzRjODI2NjllOWUgMTAwNzU1Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC92cDhfbXVsdGlfcmVzb2x1dGlvbl9lbmNvZGVyLnNoCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdGVzdC92cDhfbXVsdGlfcmVzb2x1dGlvbl9lbmNvZGVyLnNoCkBAIC03MSw3ICs3MSw3
IEBAIHZwOF9tdWx0aV9yZXNvbHV0aW9uX2VuY29kZXJfdGhyZWVfZm9ybWF0cygpIHsKICAgICAg
ICAgJHtsYXllcl9iaXRyYXRlc30gXAogICAgICAgICAke3RlbXBvcmFsX2xheWVyc30gXAogICAg
ICAgICAiJHtrZXlmcmFtZV9pbnNlcnR9IiBcCi0gICAgICAgIDAKKyAgICAgICAgMCB8fCByZXR1
cm4gMQogCiAgICAgICBmb3Igb3V0cHV0X2ZpbGUgaW4gJHtvdXRwdXRfZmlsZXN9OyBkbwogICAg
ICAgICBpZiBbICEgLWUgIiR7b3V0cHV0X2ZpbGV9IiBdOyB0aGVuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3Rlc3QvdnA5X2FyZl9mcmVxX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X2Fy
Zl9mcmVxX3Rlc3QuY2MKaW5kZXggOWEzNDU1YjRhYTE1OTBjYzdiYWNmOTYyMzc2ZTE2ODdlNTVl
OWRhOS4uYzdlNmYxYWYwMjU4MWRhY2E4ZTQyOGRlNjc2ZjU0NWM5YzQzN2M3MiAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L3ZwOV9hcmZfZnJlcV90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dGVzdC92cDlfYXJmX2ZyZXFfdGVzdC5jYwpAQCAtMjEzLDcgKzIxMyw3IEBAIFRFU1RfUChBcmZG
cmVxVGVzdCwgTWluQXJmRnJlcVRlc3QpIHsKICAgfQogfQogCi1WUDlfSU5TVEFOVElBVEVfVEVT
VF9DQVNFKEFyZkZyZXFUZXN0LCA6OnRlc3Rpbmc6OlZhbHVlc0luKGtUZXN0VmVjdG9ycyksCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oa0VuY29kZVZlY3Rv
cnMpLAotICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtNaW5B
cmZWZWN0b3JzKSk7CitWUDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURShBcmZGcmVxVGVzdCwgOjp0
ZXN0aW5nOjpWYWx1ZXNJbihrVGVzdFZlY3RvcnMpLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrRW5jb2RlVmVjdG9ycyksCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtNaW5BcmZWZWN0b3JzKSk7CiB9ICAvLyBu
YW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfYmxvY2tfZXJyb3JfdGVz
dC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfYmxvY2tfZXJyb3JfdGVzdC5jYwppbmRleCA3MWEw
Njg2ZDdhNTUxZTZmNDIzNzMwYjUwYjlmMWNjYWY0NzI0MDM0Li5iOTNiMDE0ZTY1MmEwNTFkOGUy
MzAxMjQyYTVjYTcyMGRjNDQ1OGIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X2Js
b2NrX2Vycm9yX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9ibG9ja19lcnJvcl90
ZXN0LmNjCkBAIC02Nyw2ICs2Nyw3IEBAIGNsYXNzIEJsb2NrRXJyb3JUZXN0IDogcHVibGljIDo6
dGVzdGluZzo6VGVzdFdpdGhQYXJhbTxCbG9ja0Vycm9yUGFyYW0+IHsKICAgSEJEQmxvY2tFcnJv
ckZ1bmMgZXJyb3JfYmxvY2tfb3BfOwogICBIQkRCbG9ja0Vycm9yRnVuYyByZWZfZXJyb3JfYmxv
Y2tfb3BfOwogfTsKK0dURVNUX0FMTE9XX1VOSU5TVEFOVElBVEVEX1BBUkFNRVRFUklaRURfVEVT
VChCbG9ja0Vycm9yVGVzdCk7CiAKIFRFU1RfUChCbG9ja0Vycm9yVGVzdCwgT3BlcmF0aW9uQ2hl
Y2spIHsKICAgQUNNUmFuZG9tIHJuZChBQ01SYW5kb206OkRldGVybWluaXN0aWNTZWVkKCkpOwpA
QCAtMTg1LDEyICsxODYsMTIgQEAgY29uc3QgQmxvY2tFcnJvclBhcmFtIHNzZTJfYmxvY2tfZXJy
b3JfdGVzdHNbXSA9IHsKICAgICAgICAgICAgICAmQmxvY2tFcnJvcjhCaXRXcmFwcGVyPHZwOV9i
bG9ja19lcnJvcl9jPiwgVlBYX0JJVFNfOCkKIH07CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9Q
KFNTRTIsIEJsb2NrRXJyb3JUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXNJbihzc2UyX2Jsb2NrX2Vycm9yX3Rlc3RzKSk7CitJTlNUQU5USUFURV9URVNUX1NV
SVRFX1AoU1NFMiwgQmxvY2tFcnJvclRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXNJbihzc2UyX2Jsb2NrX2Vycm9yX3Rlc3RzKSk7CiAjZW5kaWYgIC8vIEhB
VkVfU1NFMgogCiAjaWYgSEFWRV9BVlgyCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RB
TlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBBVlgyLCBCbG9ja0Vycm9yVGVzdCwKICAgICA6OnRl
c3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZCbG9ja0Vycm9yOEJpdFdyYXBwZXI8dnA5X2Jsb2Nr
X2Vycm9yX2F2eDI+LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJkJsb2NrRXJy
b3I4Qml0V3JhcHBlcjx2cDlfYmxvY2tfZXJyb3JfYz4sCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3Rlc3QvdnA5X2Jvb2xjb2Rlcl90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9ib29sY29k
ZXJfdGVzdC5jYwppbmRleCAwY2FmYTY3MzBlMjUxYTA3YWQ2ODJhYTkzZDdiMTQ0YzQ5YmMwNWMz
Li42YmExNzFhMDAwODBhM2MwYTIyMWIwZDNlNzE1ZjMwMTdlM2Y1YzNiIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3Rlc3QvdnA5X2Jvb2xjb2Rlcl90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVz
dC92cDlfYm9vbGNvZGVyX3Rlc3QuY2MKQEAgLTc0LDcgKzc0LDcgQEAgVEVTVChWUDksIFRlc3RC
aXRJTykgewogICAgICAgICBHVEVTVF9BU1NFUlRfRVEoYndfYnVmZmVyWzBdICYgMHg4MCwgMCk7
CiAKICAgICAgICAgdnB4X3JlYWRlciBicjsKLSAgICAgICAgdnB4X3JlYWRlcl9pbml0KCZiciwg
YndfYnVmZmVyLCBrQnVmZmVyU2l6ZSwgTlVMTCwgTlVMTCk7CisgICAgICAgIHZweF9yZWFkZXJf
aW5pdCgmYnIsIGJ3X2J1ZmZlciwga0J1ZmZlclNpemUsIG51bGxwdHIsIG51bGxwdHIpOwogICAg
ICAgICBiaXRfcm5kLlJlc2V0KHJhbmRvbV9zZWVkKTsKICAgICAgICAgZm9yIChpbnQgaSA9IDA7
IGkgPCBrQml0c1RvVGVzdDsgKytpKSB7CiAgICAgICAgICAgaWYgKGJpdF9tZXRob2QgPT0gMikg
ewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9kYXRhcmF0ZV90ZXN0LmNjIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L3ZwOV9kYXRhcmF0ZV90ZXN0LmNjCmluZGV4IGY5ZjJhYWFmZmFmMWZhNTg2
NmVhY2M1NGIwMGQxYTkxZTFlMjBkNzMuLjk5MzBjNzU0YzdhNGZlYjNiNjEzYzQzMzRmYTgyZjJi
NjRmMGI1OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfZGF0YXJhdGVfdGVzdC5j
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X2RhdGFyYXRlX3Rlc3QuY2MKQEAgLTcwMSw3ICs3
MDEsNyBAQCBURVNUX1AoRGF0YXJhdGVUZXN0VlA5UmVhbFRpbWUsIFJlZ2lvbk9mSW50ZXJlc3Qp
IHsKICAgLy8gVXNlIDIgc3RhdGVzOiAxIGlzIGNlbnRlciBzcXVhcmUsIDAgaXMgdGhlIHJlc3Qu
CiAgIHJvaV8ucm9pX21hcCA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDhfdCAqPigKICAgICAgIGNh
bGxvYyhyb2lfLnJvd3MgKiByb2lfLmNvbHMsIHNpemVvZigqcm9pXy5yb2lfbWFwKSkpOwotICBB
U1NFUlRfVFJVRShyb2lfLnJvaV9tYXAgIT0gTlVMTCk7CisgIEFTU0VSVF9ORShyb2lfLnJvaV9t
YXAsIG51bGxwdHIpOwogCiAgIGZvciAodW5zaWduZWQgaW50IGkgPSAwOyBpIDwgcm9pXy5yb3dz
OyArK2kpIHsKICAgICBmb3IgKHVuc2lnbmVkIGludCBqID0gMDsgaiA8IHJvaV8uY29sczsgKytq
KSB7CkBAIC05MzUsMjMgKzkzNSwyMyBAQCBURVNUX1AoRGF0YXJhdGVUZXN0VlA5UmVhbFRpbWVE
ZW5vaXNlciwgRGVub2lzZXJPZmZPbikgewogfQogI2VuZGlmICAvLyBDT05GSUdfVlA5X1RFTVBP
UkFMX0RFTk9JU0lORwogCi1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKERhdGFyYXRlVGVzdFZQ
OVJlYWxUaW1lTXVsdGlCUiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpS
YW5nZSg1LCAxMCksIDo6dGVzdGluZzo6UmFuZ2UoMCwgNCkpOworVlA5X0lOU1RBTlRJQVRFX1RF
U1RfU1VJVEUoRGF0YXJhdGVUZXN0VlA5UmVhbFRpbWVNdWx0aUJSLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSg1LCAxMCksIDo6dGVzdGluZzo6UmFuZ2UoMCwg
NCkpOwogCi1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKERhdGFyYXRlVGVzdFZQOUxhcmdlVkJS
LCA6OnRlc3Rpbmc6OlJhbmdlKDUsIDkpLAotICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRl
c3Rpbmc6OlJhbmdlKDAsIDIpKTsKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKERhdGFyYXRl
VGVzdFZQOUxhcmdlVkJSLCA6OnRlc3Rpbmc6OlJhbmdlKDUsIDkpLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgOjp0ZXN0aW5nOjpSYW5nZSgwLCAyKSk7CiAKLVZQOV9JTlNUQU5USUFURV9U
RVNUX0NBU0UoRGF0YXJhdGVUZXN0VlA5UmVhbFRpbWUsIDo6dGVzdGluZzo6UmFuZ2UoNSwgMTAp
KTsKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKERhdGFyYXRlVGVzdFZQOVJlYWxUaW1lLCA6
OnRlc3Rpbmc6OlJhbmdlKDUsIDEwKSk7CiAKLVZQOV9JTlNUQU5USUFURV9URVNUX0NBU0UoRGF0
YXJhdGVUZXN0VlA5UmVhbFRpbWVEZWx0YVFVViwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
Ojp0ZXN0aW5nOjpSYW5nZSg1LCAxMCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVz
dGluZzo6VmFsdWVzKC01LCAtMTAsIC0xNSkpOworVlA5X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUo
RGF0YXJhdGVUZXN0VlA5UmVhbFRpbWVEZWx0YVFVViwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDo6dGVzdGluZzo6UmFuZ2UoNSwgMTApLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ojp0ZXN0aW5nOjpWYWx1ZXMoLTUsIC0xMCwgLTE1KSk7CiAKLVZQOV9JTlNUQU5USUFURV9URVNU
X0NBU0UoRGF0YXJhdGVUZXN0VlA5UG9zdEVuY29kZURyb3AsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoNSwgNikpOworVlA5X0lOU1RBTlRJQVRFX1RFU1RfU1VJ
VEUoRGF0YXJhdGVUZXN0VlA5UG9zdEVuY29kZURyb3AsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICA6OnRlc3Rpbmc6OlJhbmdlKDUsIDYpKTsKIAogI2lmIENPTkZJR19WUDlfVEVNUE9SQUxf
REVOT0lTSU5HCi1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKERhdGFyYXRlVGVzdFZQOVJlYWxU
aW1lRGVub2lzZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2Uo
NSwgMTApKTsKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKERhdGFyYXRlVGVzdFZQOVJlYWxU
aW1lRGVub2lzZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlJhbmdl
KDUsIDEwKSk7CiAjZW5kaWYKIH0gIC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90ZXN0L3ZwOV9kZW5vaXNlcl90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9kZW5vaXNl
cl90ZXN0LmNjCmluZGV4IDQ3ZmE1ODdmY2E3MzA4N2EzNzk1ZGQ3YTlmZWZkNjZlMDg2MTFiYWUu
LmQ4ODRiN2ViOTI1ODNiYTUzNmQ5OWI1MGUxZjI4MmJjYmQwMzc1MzUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGVzdC92cDlfZGVub2lzZXJfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qv
dnA5X2Rlbm9pc2VyX3Rlc3QuY2MKQEAgLTUxLDYgKzUxLDcgQEAgY2xhc3MgVlA5RGVub2lzZXJU
ZXN0CiAgcHJvdGVjdGVkOgogICBCTE9DS19TSVpFIGJzXzsKIH07CitHVEVTVF9BTExPV19VTklO
U1RBTlRJQVRFRF9QQVJBTUVURVJJWkVEX1RFU1QoVlA5RGVub2lzZXJUZXN0KTsKIAogVEVTVF9Q
KFZQOURlbm9pc2VyVGVzdCwgQml0ZXhhY3RDaGVjaykgewogICBBQ01SYW5kb20gcm5kKEFDTVJh
bmRvbTo6RGV0ZXJtaW5pc3RpY1NlZWQoKSk7CkBAIC0xMDQsNyArMTA1LDcgQEAgdXNpbmcgc3Rk
OjptYWtlX3R1cGxlOwogCiAvLyBUZXN0IGZvciBhbGwgYmxvY2sgc2l6ZS4KICNpZiBIQVZFX1NT
RTIKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAog
ICAgIFNTRTIsIFZQOURlbm9pc2VyVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1
cGxlKCZ2cDlfZGVub2lzZXJfZmlsdGVyX3NzZTIsIEJMT0NLXzhYOCksCiAgICAgICAgICAgICAg
ICAgICAgICAgbWFrZV90dXBsZSgmdnA5X2Rlbm9pc2VyX2ZpbHRlcl9zc2UyLCBCTE9DS184WDE2
KSwKQEAgLTExOSw3ICsxMjAsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNlbmRpZiAg
Ly8gSEFWRV9TU0UyCiAKICNpZiBIQVZFX05FT04KLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE5FT04sIFZQOURlbm9pc2VyVGVzdCwKICAg
ICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cDlfZGVub2lzZXJfZmlsdGVyX25lb24s
IEJMT0NLXzhYOCksCiAgICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSgmdnA5X2Rlbm9p
c2VyX2ZpbHRlcl9uZW9uLCBCTE9DS184WDE2KSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVz
dC92cDlfZW5jb2Rlcl9wYXJtc19nZXRfdG9fZGVjb2Rlci5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92
cDlfZW5jb2Rlcl9wYXJtc19nZXRfdG9fZGVjb2Rlci5jYwppbmRleCBmYWRlMDhiYmQ0NzUxZWQ4
MTQ1ZjQwYTllYjhkNWNiYmYwYjg2M2M4Li5jZTIxOThjNTkyMTgxN2VhODFjYTAyMWVjODcyYjEz
YWE0MTJmOWY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X2VuY29kZXJfcGFybXNf
Z2V0X3RvX2RlY29kZXIuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9lbmNvZGVyX3Bhcm1z
X2dldF90b19kZWNvZGVyLmNjCkBAIC0xNDIsMTIgKzE0MiwxMiBAQCBURVNUX1AoVnB4RW5jb2Rl
clBhcm1zR2V0VG9EZWNvZGVyLCBCaXRzdHJlYW1QYXJtcykgewogCiAgIHN0ZDo6dW5pcXVlX3B0
cjxsaWJ2cHhfdGVzdDo6VmlkZW9Tb3VyY2U+IHZpZGVvKAogICAgICAgbmV3IGxpYnZweF90ZXN0
OjpZNG1WaWRlb1NvdXJjZSh0ZXN0X3ZpZGVvXy5uYW1lLCAwLCB0ZXN0X3ZpZGVvXy5mcmFtZXMp
KTsKLSAgQVNTRVJUX1RSVUUodmlkZW8uZ2V0KCkgIT0gTlVMTCk7CisgIEFTU0VSVF9ORSh2aWRl
by5nZXQoKSwgbnVsbHB0cik7CiAKICAgQVNTRVJUX05PX0ZBVEFMX0ZBSUxVUkUoUnVuTG9vcCh2
aWRlby5nZXQoKSkpOwogfQogCi1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKFZweEVuY29kZXJQ
YXJtc0dldFRvRGVjb2RlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpW
YWx1ZXNJbihrVlA5RW5jb2RlUGFyYW1ldGVyU2V0KSwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrVlA5RW5jb2RlUGVyZlRlc3RWZWN0b3JzKSk7CitWUDlf
SU5TVEFOVElBVEVfVEVTVF9TVUlURShWcHhFbmNvZGVyUGFybXNHZXRUb0RlY29kZXIsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtWUDlFbmNvZGVQYXJh
bWV0ZXJTZXQpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJ
bihrVlA5RW5jb2RlUGVyZlRlc3RWZWN0b3JzKSk7CiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfZW5kX3RvX2VuZF90ZXN0LmNjIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90
ZXN0L3ZwOV9lbmRfdG9fZW5kX3Rlc3QuY2MKaW5kZXggN2NiNzE2ZjIyNjI0YzE5YzllZjZkNmY0
YmIzMzQxNGFmMzcwYmQzMS4uN2NjMTI2ZWE1ODAwZjgzMzFlMGYzOTQ0YmU5Mjg3Yzg1ZjYyMjJl
OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9lbmRfdG9fZW5kX3Rlc3QuY2MKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L3ZwOV9lbmRfdG9fZW5kX3Rlc3QuY2MKQEAgLTU5LDYgKzU5LDEw
IEBAIGNvbnN0IFRlc3RWaWRlb1BhcmFtIGtUZXN0VmVjdG9yc1tdID0gewogI2VuZGlmICAvLyBD
T05GSUdfVlA5X0hJR0hCSVRERVBUSAogfTsKIAorY29uc3QgVGVzdFZpZGVvUGFyYW0ga1Rlc3RW
ZWN0b3JzTnYxMltdID0geworICB7ICJoYW50cm9fY29sbGFnZV93MzUyaDI4OF9udjEyLnl1diIs
IDgsIFZQWF9JTUdfRk1UX05WMTIsIFZQWF9CSVRTXzgsIDAgfSwKK307CisKIC8vIEVuY29kaW5n
IG1vZGVzIHRlc3RlZAogY29uc3QgbGlidnB4X3Rlc3Q6OlRlc3RNb2RlIGtFbmNvZGluZ01vZGVW
ZWN0b3JzW10gPSB7CiAgIDo6bGlidnB4X3Rlc3Q6OmtUd29QYXNzR29vZCwgOjpsaWJ2cHhfdGVz
dDo6a09uZVBhc3NHb29kLApAQCAtMjM3LDYgKzI0MSwyNyBAQCBjbGFzcyBFbmRUb0VuZFRlc3RM
b29wRmlsdGVyVGhyZWFkaW5nCiB9OwogI2VuZGlmICAvLyBDT05GSUdfVlA5X0RFQ09ERVIKIAor
Y2xhc3MgRW5kVG9FbmROVjEyIDogcHVibGljIEVuZFRvRW5kVGVzdExhcmdlIHt9OworCitURVNU
X1AoRW5kVG9FbmROVjEyLCBFbmR0b0VuZE5WMTJUZXN0KSB7CisgIGNmZ18ucmNfdGFyZ2V0X2Jp
dHJhdGUgPSBrQml0cmF0ZTsKKyAgY2ZnXy5nX2Vycm9yX3Jlc2lsaWVudCA9IDA7CisgIGNmZ18u
Z19wcm9maWxlID0gdGVzdF92aWRlb19wYXJhbV8ucHJvZmlsZTsKKyAgY2ZnXy5nX2lucHV0X2Jp
dF9kZXB0aCA9IHRlc3RfdmlkZW9fcGFyYW1fLmlucHV0X2JpdF9kZXB0aDsKKyAgY2ZnXy5nX2Jp
dF9kZXB0aCA9IHRlc3RfdmlkZW9fcGFyYW1fLmJpdF9kZXB0aDsKKyAgaW5pdF9mbGFnc18gPSBW
UFhfQ09ERUNfVVNFX1BTTlI7CisgIGlmIChjZmdfLmdfYml0X2RlcHRoID4gOCkgaW5pdF9mbGFn
c18gfD0gVlBYX0NPREVDX1VTRV9ISUdIQklUREVQVEg7CisKKyAgc3RkOjp1bmlxdWVfcHRyPGxp
YnZweF90ZXN0OjpWaWRlb1NvdXJjZT4gdmlkZW87CisKKyAgdmlkZW8ucmVzZXQobmV3IGxpYnZw
eF90ZXN0OjpZVVZWaWRlb1NvdXJjZSh0ZXN0X3ZpZGVvX3BhcmFtXy5maWxlbmFtZSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3ZpZGVvX3BhcmFt
Xy5mbXQsIDM1MiwgMjg4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDMwLCAxLCAwLCAxMDApKTsKKyAgQVNTRVJUX05FKHZpZGVvLmdldCgpLCBudWxscHRy
KTsKKworICBBU1NFUlRfTk9fRkFUQUxfRkFJTFVSRShSdW5Mb29wKHZpZGVvLmdldCgpKSk7Cit9
CisKIFRFU1RfUChFbmRUb0VuZFRlc3RMYXJnZSwgRW5kdG9FbmRQU05SVGVzdCkgewogICBjZmdf
LnJjX3RhcmdldF9iaXRyYXRlID0ga0JpdHJhdGU7CiAgIGNmZ18uZ19lcnJvcl9yZXNpbGllbnQg
PSAwOwpAQCAtMjU1LDcgKzI4MCw3IEBAIFRFU1RfUChFbmRUb0VuZFRlc3RMYXJnZSwgRW5kdG9F
bmRQU05SVGVzdCkgewogICAgICAgICB0ZXN0X3ZpZGVvX3BhcmFtXy5maWxlbmFtZSwgdGVzdF92
aWRlb19wYXJhbV8uZm10LCBrV2lkdGgsIGtIZWlnaHQsCiAgICAgICAgIGtGcmFtZXJhdGUsIDEs
IDAsIGtGcmFtZXMpKTsKICAgfQotICBBU1NFUlRfVFJVRSh2aWRlby5nZXQoKSAhPSBOVUxMKTsK
KyAgQVNTRVJUX05FKHZpZGVvLmdldCgpLCBudWxscHRyKTsKIAogICBBU1NFUlRfTk9fRkFUQUxf
RkFJTFVSRShSdW5Mb29wKHZpZGVvLmdldCgpKSk7CiAgIGNvbnN0IGRvdWJsZSBwc25yID0gR2V0
QXZlcmFnZVBzbnIoKTsKQEAgLTI4Miw3ICszMDcsNyBAQCBURVNUX1AoRW5kVG9FbmRUZXN0TGFy
Z2UsIEVuZHRvRW5kUFNOUkRlbm9pc2VyQVFUZXN0KSB7CiAgICAgICAgIHRlc3RfdmlkZW9fcGFy
YW1fLmZpbGVuYW1lLCB0ZXN0X3ZpZGVvX3BhcmFtXy5mbXQsIGtXaWR0aCwga0hlaWdodCwKICAg
ICAgICAga0ZyYW1lcmF0ZSwgMSwgMCwga0ZyYW1lcykpOwogICB9Ci0gIEFTU0VSVF9UUlVFKHZp
ZGVvLmdldCgpICE9IE5VTEwpOworICBBU1NFUlRfTkUodmlkZW8uZ2V0KCksIG51bGxwdHIpOwog
CiAgIEFTU0VSVF9OT19GQVRBTF9GQUlMVVJFKFJ1bkxvb3AodmlkZW8uZ2V0KCkpKTsKICAgY29u
c3QgZG91YmxlIHBzbnIgPSBHZXRBdmVyYWdlUHNucigpOwpAQCAtMzA5LDE2ICszMzQsMjEgQEAg
VEVTVF9QKEVuZFRvRW5kVGVzdExvb3BGaWx0ZXJUaHJlYWRpbmcsIFRpbGVDb3VudENoYW5nZSkg
ewogfQogI2VuZGlmICAvLyBDT05GSUdfVlA5X0RFQ09ERVIKIAotVlA5X0lOU1RBTlRJQVRFX1RF
U1RfQ0FTRShFbmRUb0VuZFRlc3RMYXJnZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXNJbihrRW5jb2RpbmdNb2RlVmVjdG9ycyksCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oa1Rlc3RWZWN0b3JzKSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrQ3B1VXNlZFZlY3RvcnMpKTsKK1ZQ
OV9JTlNUQU5USUFURV9URVNUX1NVSVRFKEVuZFRvRW5kVGVzdExhcmdlLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrRW5jb2RpbmdNb2RlVmVjdG9ycyks
CisgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtUZXN0VmVj
dG9ycyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtD
cHVVc2VkVmVjdG9ycykpOworCitWUDlfSU5TVEFOVElBVEVfVEVTVF9TVUlURShFbmRUb0VuZE5W
MTIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyg6OmxpYnZw
eF90ZXN0OjprUmVhbFRpbWUpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXNJbihrVGVzdFZlY3RvcnNOdjEyKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
IDo6dGVzdGluZzo6VmFsdWVzKDYsIDcsIDgpKTsKIAotVlA5X0lOU1RBTlRJQVRFX1RFU1RfQ0FT
RShFbmRUb0VuZFRlc3RBZGFwdGl2ZVJEVGhyZXNoLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICA6OnRlc3Rpbmc6OlZhbHVlcyg1LCA2LCA3KSwgOjp0ZXN0aW5nOjpWYWx1ZXMoOCwgOSkpOwor
VlA5X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUoRW5kVG9FbmRUZXN0QWRhcHRpdmVSRFRocmVzaCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKDUsIDYsIDcpLCA6
OnRlc3Rpbmc6OlZhbHVlcyg4LCA5KSk7CiAKICNpZiBDT05GSUdfVlA5X0RFQ09ERVIKLVZQOV9J
TlNUQU5USUFURV9URVNUX0NBU0UoRW5kVG9FbmRUZXN0TG9vcEZpbHRlclRocmVhZGluZywgOjp0
ZXN0aW5nOjpCb29sKCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6UmFu
Z2UoMiwgNikpOworVlA5X0lOU1RBTlRJQVRFX1RFU1RfU1VJVEUoRW5kVG9FbmRUZXN0TG9vcEZp
bHRlclRocmVhZGluZywgOjp0ZXN0aW5nOjpCb29sKCksCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICA6OnRlc3Rpbmc6OlJhbmdlKDIsIDYpKTsKICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9ERUNP
REVSCiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfZXRo
cmVhZF90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9ldGhyZWFkX3Rlc3QuY2MKaW5kZXgg
NmRlNzZlOWU1NTU0OTRiYTJmMzA3N2Q4MGM0ZjEyNGU5OWRlZWI4ZC4uMjFjYWY3OTE4YzJiOTU3
MTU4YzUyOTU0NGI0YzZiZjc0YWNiN2MyOCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3Zw
OV9ldGhyZWFkX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9ldGhyZWFkX3Rlc3Qu
Y2MKQEAgLTQxLDcgKzQxLDcgQEAgY2xhc3MgVlB4Rmlyc3RQYXNzRW5jb2RlclRocmVhZFRlc3QK
IAogICAgIHJvd19tdF9tb2RlXyA9IDE7CiAgICAgZmlyc3RfcGFzc19vbmx5XyA9IHRydWU7Ci0g
ICAgZmlyc3RwYXNzX3N0YXRzXy5idWYgPSBOVUxMOworICAgIGZpcnN0cGFzc19zdGF0c18uYnVm
ID0gbnVsbHB0cjsKICAgICBmaXJzdHBhc3Nfc3RhdHNfLnN6ID0gMDsKICAgfQogICB2aXJ0dWFs
IH5WUHhGaXJzdFBhc3NFbmNvZGVyVGhyZWFkVGVzdCgpIHsgZnJlZShmaXJzdHBhc3Nfc3RhdHNf
LmJ1Zik7IH0KQEAgLTM5MCw3ICszOTAsNyBAQCBURVNUX1AoVlB4RW5jb2RlclRocmVhZFRlc3Qs
IEVuY29kZXJSZXN1bHRUZXN0KSB7CiAgIEVYUEVDVF9ORUFSKHNpbmdsZV90aHJfcHNuciwgbXVs
dGlfdGhyX3BzbnIsIDAuMik7CiB9CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QKAogICAgIFZQOSwgVlB4Rmlyc3RQYXNzRW5jb2RlclRocmVhZFRl
c3QsCiAgICAgOjp0ZXN0aW5nOjpDb21iaW5lKAogICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcygK
QEAgLTQwMSw3ICs0MDEsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKIC8vIFNwbGl0IHRo
aXMgaW50byB0d28gaW5zdGFudGlhdGlvbnMgc28gdGhhdCB3ZSBjYW4gZGlzdGluZ3Vpc2gKIC8v
IGJldHdlZW4gdmVyeSBzbG93IHJ1bnMgKCBpZSBjcHVfc3BlZWQgMCApIHZzIG9uZXMgdGhhdCBj
YW4gYmUKIC8vIHJ1biBuaWdodGx5IGJ5IGFkZGluZyBMYXJnZSB0byB0aGUgdGl0bGUuCi1JTlNU
QU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBWUDks
IFZQeEVuY29kZXJUaHJlYWRUZXN0LAogICAgIDo6dGVzdGluZzo6Q29tYmluZSgKICAgICAgICAg
Ojp0ZXN0aW5nOjpWYWx1ZXMoCkBAIC00MTMsNyArNDEzLDcgQEAgSU5TVEFOVElBVEVfVEVTVF9D
QVNFX1AoCiAgICAgICAgIDo6dGVzdGluZzo6UmFuZ2UoMCwgMyksICAgIC8vIHRpbGVfY29sdW1u
cwogICAgICAgICA6OnRlc3Rpbmc6OlJhbmdlKDIsIDUpKSk7ICAvLyB0aHJlYWRzCiAKLUlOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFZQOUxh
cmdlLCBWUHhFbmNvZGVyVGhyZWFkVGVzdCwKICAgICA6OnRlc3Rpbmc6OkNvbWJpbmUoCiAgICAg
ICAgIDo6dGVzdGluZzo6VmFsdWVzKApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9l
eHRfcmF0ZWN0cmxfdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfZXh0X3JhdGVjdHJsX3Rl
c3QuY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNGIzNjkzYTM0NzBkNjg1NTRkZTMwNmYzNzE4YTAwNDEzYWVkNjUy
YgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfZXh0X3JhdGVjdHJsX3Rl
c3QuY2MKQEAgLTAsMCArMSwxOTUgQEAKKy8qCisgKiAgQ29weXJpZ2h0IChjKSAyMDIwIFRoZSBX
ZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyAqCisgKiAgVXNlIG9m
IHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZQorICog
IHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhl
IHNvdXJjZQorICogIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJp
Z2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyAqICBpbiB0aGUgZmlsZSBQQVRFTlRTLiAgQWxsIGNv
bnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisgKiAgYmUgZm91bmQgaW4gdGhlIEFVVEhP
UlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisgKi8KKworI2luY2x1ZGUg
PG5ldz4KKworI2luY2x1ZGUgInRlc3QvY29kZWNfZmFjdG9yeS5oIgorI2luY2x1ZGUgInRlc3Qv
ZW5jb2RlX3Rlc3RfZHJpdmVyLmgiCisjaW5jbHVkZSAidGVzdC91dGlsLmgiCisjaW5jbHVkZSAi
dGVzdC95dXZfdmlkZW9fc291cmNlLmgiCisjaW5jbHVkZSAidGhpcmRfcGFydHkvZ29vZ2xldGVz
dC9zcmMvaW5jbHVkZS9ndGVzdC9ndGVzdC5oIgorI2luY2x1ZGUgInZweC92cHhfZXh0X3JhdGVj
dHJsLmgiCisKK25hbWVzcGFjZSB7CisKK2NvbnN0ZXhwciBpbnQga01vZGVsTWFnaWNOdW1iZXIg
PSA1MTM5NjsKK2NvbnN0ZXhwciB1bnNpZ25lZCBpbnQgUHJpdk1hZ2ljTnVtYmVyID0gNTU2NjsK
K2NvbnN0ZXhwciBpbnQga0ZyYW1lTnVtID0gNTsKK2NvbnN0ZXhwciBpbnQga0xvc3NsZXNzQ29k
aW5nSW5kZXggPSAyOworCitzdHJ1Y3QgVG95UmF0ZUN0cmwgeworICBpbnQgbWFnaWNfbnVtYmVy
OworICBpbnQgY29kaW5nX2luZGV4OworfTsKKwordnB4X3JjX3N0YXR1c190IHJjX2NyZWF0ZV9t
b2RlbCh2b2lkICpwcml2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2
cHhfcmNfY29uZmlnX3QgKnJhdGVjdHJsX2NvbmZpZywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdnB4X3JjX21vZGVsX3QgKnJhdGVfY3RybF9tb2RlbF9wdCkgeworICBUb3lSYXRl
Q3RybCAqdG95X3JhdGVfY3RybCA9IG5ldyAoc3RkOjpub3Rocm93KSBUb3lSYXRlQ3RybDsKKyAg
RVhQRUNUX05FKHRveV9yYXRlX2N0cmwsIG51bGxwdHIpOworICB0b3lfcmF0ZV9jdHJsLT5tYWdp
Y19udW1iZXIgPSBrTW9kZWxNYWdpY051bWJlcjsKKyAgdG95X3JhdGVfY3RybC0+Y29kaW5nX2lu
ZGV4ID0gLTE7CisgICpyYXRlX2N0cmxfbW9kZWxfcHQgPSB0b3lfcmF0ZV9jdHJsOworICBFWFBF
Q1RfRVEocHJpdiwgcmVpbnRlcnByZXRfY2FzdDx2b2lkICo+KFByaXZNYWdpY051bWJlcikpOwor
ICBFWFBFQ1RfRVEocmF0ZWN0cmxfY29uZmlnLT5mcmFtZV93aWR0aCwgMzUyKTsKKyAgRVhQRUNU
X0VRKHJhdGVjdHJsX2NvbmZpZy0+ZnJhbWVfaGVpZ2h0LCAyODgpOworICBFWFBFQ1RfRVEocmF0
ZWN0cmxfY29uZmlnLT5zaG93X2ZyYW1lX2NvdW50LCBrRnJhbWVOdW0pOworICBFWFBFQ1RfRVEo
cmF0ZWN0cmxfY29uZmlnLT50YXJnZXRfYml0cmF0ZV9rYnBzLCAyNDAwMCk7CisgIEVYUEVDVF9F
UShyYXRlY3RybF9jb25maWctPmZyYW1lX3JhdGVfbnVtLCAzMCk7CisgIEVYUEVDVF9FUShyYXRl
Y3RybF9jb25maWctPmZyYW1lX3JhdGVfZGVuLCAxKTsKKyAgcmV0dXJuIFZQWF9SQ19PSzsKK30K
KwordnB4X3JjX3N0YXR1c190IHJjX3NlbmRfZmlyc3RwYXNzX3N0YXRzKAorICAgIHZweF9yY19t
b2RlbF90IHJhdGVfY3RybF9tb2RlbCwKKyAgICBjb25zdCB2cHhfcmNfZmlyc3RwYXNzX3N0YXRz
X3QgKmZpcnN0X3Bhc3Nfc3RhdHMpIHsKKyAgY29uc3QgVG95UmF0ZUN0cmwgKnRveV9yYXRlX2N0
cmwgPQorICAgICAgc3RhdGljX2Nhc3Q8VG95UmF0ZUN0cmwgKj4ocmF0ZV9jdHJsX21vZGVsKTsK
KyAgRVhQRUNUX0VRKHRveV9yYXRlX2N0cmwtPm1hZ2ljX251bWJlciwga01vZGVsTWFnaWNOdW1i
ZXIpOworICBFWFBFQ1RfRVEoZmlyc3RfcGFzc19zdGF0cy0+bnVtX2ZyYW1lcywga0ZyYW1lTnVt
KTsKKyAgZm9yIChpbnQgaSA9IDA7IGkgPCBmaXJzdF9wYXNzX3N0YXRzLT5udW1fZnJhbWVzOyAr
K2kpIHsKKyAgICBFWFBFQ1RfRE9VQkxFX0VRKGZpcnN0X3Bhc3Nfc3RhdHMtPmZyYW1lX3N0YXRz
W2ldLmZyYW1lLCBpKTsKKyAgfQorICByZXR1cm4gVlBYX1JDX09LOworfQorCit2cHhfcmNfc3Rh
dHVzX3QgcmNfZ2V0X2VuY29kZWZyYW1lX2RlY2lzaW9uKAorICAgIHZweF9yY19tb2RlbF90IHJh
dGVfY3RybF9tb2RlbCwKKyAgICBjb25zdCB2cHhfcmNfZW5jb2RlZnJhbWVfaW5mb190ICplbmNv
ZGVfZnJhbWVfaW5mbywKKyAgICB2cHhfcmNfZW5jb2RlZnJhbWVfZGVjaXNpb25fdCAqZnJhbWVf
ZGVjaXNpb24pIHsKKyAgVG95UmF0ZUN0cmwgKnRveV9yYXRlX2N0cmwgPSBzdGF0aWNfY2FzdDxU
b3lSYXRlQ3RybCAqPihyYXRlX2N0cmxfbW9kZWwpOworICB0b3lfcmF0ZV9jdHJsLT5jb2Rpbmdf
aW5kZXggKz0gMTsKKworICBFWFBFQ1RfRVEodG95X3JhdGVfY3RybC0+bWFnaWNfbnVtYmVyLCBr
TW9kZWxNYWdpY051bWJlcik7CisKKyAgRVhQRUNUX0xUKGVuY29kZV9mcmFtZV9pbmZvLT5zaG93
X2luZGV4LCBrRnJhbWVOdW0pOworICBFWFBFQ1RfRVEoZW5jb2RlX2ZyYW1lX2luZm8tPmNvZGlu
Z19pbmRleCwgdG95X3JhdGVfY3RybC0+Y29kaW5nX2luZGV4KTsKKworICBpZiAoZW5jb2RlX2Zy
YW1lX2luZm8tPmNvZGluZ19pbmRleCA9PSAwKSB7CisgICAgRVhQRUNUX0VRKGVuY29kZV9mcmFt
ZV9pbmZvLT5zaG93X2luZGV4LCAwKTsKKyAgICBFWFBFQ1RfRVEoZW5jb2RlX2ZyYW1lX2luZm8t
PmdvcF9pbmRleCwgMCk7CisgICAgRVhQRUNUX0VRKGVuY29kZV9mcmFtZV9pbmZvLT5mcmFtZV90
eXBlLCAwIC8qa0ZyYW1lVHlwZUtleSovKTsKKyAgICBFWFBFQ1RfRVEoZW5jb2RlX2ZyYW1lX2lu
Zm8tPnJlZl9mcmFtZV92YWxpZF9saXN0WzBdLAorICAgICAgICAgICAgICAwKTsgIC8vIGtSZWZG
cmFtZVR5cGVMYXN0CisgICAgRVhQRUNUX0VRKGVuY29kZV9mcmFtZV9pbmZvLT5yZWZfZnJhbWVf
dmFsaWRfbGlzdFsxXSwKKyAgICAgICAgICAgICAgMCk7ICAvLyBrUmVmRnJhbWVUeXBlUGFzdAor
ICAgIEVYUEVDVF9FUShlbmNvZGVfZnJhbWVfaW5mby0+cmVmX2ZyYW1lX3ZhbGlkX2xpc3RbMl0s
CisgICAgICAgICAgICAgIDApOyAgLy8ga1JlZkZyYW1lVHlwZUZ1dHVyZQorICB9CisKKyAgaWYg
KGVuY29kZV9mcmFtZV9pbmZvLT5jb2RpbmdfaW5kZXggPT0gMSkgeworICAgIEVYUEVDVF9FUShl
bmNvZGVfZnJhbWVfaW5mby0+c2hvd19pbmRleCwgNCk7CisgICAgRVhQRUNUX0VRKGVuY29kZV9m
cmFtZV9pbmZvLT5nb3BfaW5kZXgsIDEpOworICAgIEVYUEVDVF9FUShlbmNvZGVfZnJhbWVfaW5m
by0+ZnJhbWVfdHlwZSwgMiAvKmtGcmFtZVR5cGVBbHRSZWYqLyk7CisgICAgRVhQRUNUX0VRKGVu
Y29kZV9mcmFtZV9pbmZvLT5yZWZfZnJhbWVfdmFsaWRfbGlzdFswXSwKKyAgICAgICAgICAgICAg
MSk7ICAvLyBrUmVmRnJhbWVUeXBlTGFzdAorICAgIEVYUEVDVF9FUShlbmNvZGVfZnJhbWVfaW5m
by0+cmVmX2ZyYW1lX3ZhbGlkX2xpc3RbMV0sCisgICAgICAgICAgICAgIDApOyAgLy8ga1JlZkZy
YW1lVHlwZVBhc3QKKyAgICBFWFBFQ1RfRVEoZW5jb2RlX2ZyYW1lX2luZm8tPnJlZl9mcmFtZV92
YWxpZF9saXN0WzJdLAorICAgICAgICAgICAgICAwKTsgIC8vIGtSZWZGcmFtZVR5cGVGdXR1cmUK
KyAgICBFWFBFQ1RfRVEoZW5jb2RlX2ZyYW1lX2luZm8tPnJlZl9mcmFtZV9jb2RpbmdfaW5kZXhl
c1swXSwKKyAgICAgICAgICAgICAgMCk7ICAvLyBrUmVmRnJhbWVUeXBlTGFzdAorICB9CisKKyAg
aWYgKGVuY29kZV9mcmFtZV9pbmZvLT5jb2RpbmdfaW5kZXggPj0gMiAmJgorICAgICAgZW5jb2Rl
X2ZyYW1lX2luZm8tPmNvZGluZ19pbmRleCA8IDUpIHsKKyAgICAvLyBJbiB0aGUgZmlyc3QgZ3Jv
dXAgb2YgcGljdHVyZXMsIGNvZGluZ19pbmRleCBhbmQgZ29wX2luZGV4IGFyZSBlcXVhbC4KKyAg
ICBFWFBFQ1RfRVEoZW5jb2RlX2ZyYW1lX2luZm8tPmdvcF9pbmRleCwgZW5jb2RlX2ZyYW1lX2lu
Zm8tPmNvZGluZ19pbmRleCk7CisgICAgRVhQRUNUX0VRKGVuY29kZV9mcmFtZV9pbmZvLT5mcmFt
ZV90eXBlLCAxIC8qa0ZyYW1lVHlwZUludGVyKi8pOworICB9CisKKyAgaWYgKGVuY29kZV9mcmFt
ZV9pbmZvLT5jb2RpbmdfaW5kZXggPT0gNSkgeworICAgIEVYUEVDVF9FUShlbmNvZGVfZnJhbWVf
aW5mby0+c2hvd19pbmRleCwgNCk7CisgICAgRVhQRUNUX0VRKGVuY29kZV9mcmFtZV9pbmZvLT5n
b3BfaW5kZXgsIDApOworICAgIEVYUEVDVF9FUShlbmNvZGVfZnJhbWVfaW5mby0+ZnJhbWVfdHlw
ZSwgMyAvKmtGcmFtZVR5cGVPdmVybGF5Ki8pOworICAgIEVYUEVDVF9FUShlbmNvZGVfZnJhbWVf
aW5mby0+cmVmX2ZyYW1lX3ZhbGlkX2xpc3RbMF0sCisgICAgICAgICAgICAgIDEpOyAgLy8ga1Jl
ZkZyYW1lVHlwZUxhc3QKKyAgICBFWFBFQ1RfRVEoZW5jb2RlX2ZyYW1lX2luZm8tPnJlZl9mcmFt
ZV92YWxpZF9saXN0WzFdLAorICAgICAgICAgICAgICAxKTsgIC8vIGtSZWZGcmFtZVR5cGVQYXN0
CisgICAgRVhQRUNUX0VRKGVuY29kZV9mcmFtZV9pbmZvLT5yZWZfZnJhbWVfdmFsaWRfbGlzdFsy
XSwKKyAgICAgICAgICAgICAgMSk7ICAvLyBrUmVmRnJhbWVUeXBlRnV0dXJlCisgICAgRVhQRUNU
X0VRKGVuY29kZV9mcmFtZV9pbmZvLT5yZWZfZnJhbWVfY29kaW5nX2luZGV4ZXNbMF0sCisgICAg
ICAgICAgICAgIDQpOyAgLy8ga1JlZkZyYW1lVHlwZUxhc3QKKyAgICBFWFBFQ1RfRVEoZW5jb2Rl
X2ZyYW1lX2luZm8tPnJlZl9mcmFtZV9jb2RpbmdfaW5kZXhlc1sxXSwKKyAgICAgICAgICAgICAg
MCk7ICAvLyBrUmVmRnJhbWVUeXBlUGFzdAorICAgIEVYUEVDVF9FUShlbmNvZGVfZnJhbWVfaW5m
by0+cmVmX2ZyYW1lX2NvZGluZ19pbmRleGVzWzJdLAorICAgICAgICAgICAgICAxKTsgIC8vIGtS
ZWZGcmFtZVR5cGVGdXR1cmUKKyAgfQorICBpZiAoZW5jb2RlX2ZyYW1lX2luZm8tPmNvZGluZ19p
bmRleCA9PSBrTG9zc2xlc3NDb2RpbmdJbmRleCkgeworICAgIC8vIFdlIHNob3VsZCBnZXQgc3Nl
ID09IDAgYXQgcmNfdXBkYXRlX2VuY29kZWZyYW1lX3Jlc3VsdCgpCisgICAgZnJhbWVfZGVjaXNp
b24tPnFfaW5kZXggPSAwOworICB9IGVsc2UgeworICAgIGZyYW1lX2RlY2lzaW9uLT5xX2luZGV4
ID0gMTAwOworICB9CisgIHJldHVybiBWUFhfUkNfT0s7Cit9CisKK3ZweF9yY19zdGF0dXNfdCBy
Y191cGRhdGVfZW5jb2RlZnJhbWVfcmVzdWx0KAorICAgIHZweF9yY19tb2RlbF90IHJhdGVfY3Ry
bF9tb2RlbCwKKyAgICBjb25zdCB2cHhfcmNfZW5jb2RlZnJhbWVfcmVzdWx0X3QgKmVuY29kZV9m
cmFtZV9yZXN1bHQpIHsKKyAgY29uc3QgVG95UmF0ZUN0cmwgKnRveV9yYXRlX2N0cmwgPQorICAg
ICAgc3RhdGljX2Nhc3Q8VG95UmF0ZUN0cmwgKj4ocmF0ZV9jdHJsX21vZGVsKTsKKyAgRVhQRUNU
X0VRKHRveV9yYXRlX2N0cmwtPm1hZ2ljX251bWJlciwga01vZGVsTWFnaWNOdW1iZXIpOworCisg
IGNvbnN0IGludDY0X3QgcmVmX3BpeGVsX2NvdW50ID0gMzUyICogMjg4ICogMyAvIDI7CisgIEVY
UEVDVF9FUShlbmNvZGVfZnJhbWVfcmVzdWx0LT5waXhlbF9jb3VudCwgcmVmX3BpeGVsX2NvdW50
KTsKKyAgaWYgKHRveV9yYXRlX2N0cmwtPmNvZGluZ19pbmRleCA9PSBrTG9zc2xlc3NDb2RpbmdJ
bmRleCkgeworICAgIEVYUEVDVF9FUShlbmNvZGVfZnJhbWVfcmVzdWx0LT5zc2UsIDApOworICB9
CisgIHJldHVybiBWUFhfUkNfT0s7Cit9CisKK3ZweF9yY19zdGF0dXNfdCByY19kZWxldGVfbW9k
ZWwodnB4X3JjX21vZGVsX3QgcmF0ZV9jdHJsX21vZGVsKSB7CisgIFRveVJhdGVDdHJsICp0b3lf
cmF0ZV9jdHJsID0gc3RhdGljX2Nhc3Q8VG95UmF0ZUN0cmwgKj4ocmF0ZV9jdHJsX21vZGVsKTsK
KyAgRVhQRUNUX0VRKHRveV9yYXRlX2N0cmwtPm1hZ2ljX251bWJlciwga01vZGVsTWFnaWNOdW1i
ZXIpOworICBkZWxldGUgdG95X3JhdGVfY3RybDsKKyAgcmV0dXJuIFZQWF9SQ19PSzsKK30KKwor
Y2xhc3MgRXh0UmF0ZUN0cmxUZXN0IDogcHVibGljIDo6bGlidnB4X3Rlc3Q6OkVuY29kZXJUZXN0
LAorICAgICAgICAgICAgICAgICAgICAgICAgcHVibGljIDo6dGVzdGluZzo6VGVzdCB7CisgcHJv
dGVjdGVkOgorICBFeHRSYXRlQ3RybFRlc3QoKSA6IEVuY29kZXJUZXN0KCY6OmxpYnZweF90ZXN0
OjprVlA5KSB7fQorCisgIH5FeHRSYXRlQ3RybFRlc3QoKSBvdmVycmlkZSA9IGRlZmF1bHQ7CisK
KyAgdm9pZCBTZXRVcCgpIG92ZXJyaWRlIHsKKyAgICBJbml0aWFsaXplQ29uZmlnKCk7CisgICAg
U2V0TW9kZSg6OmxpYnZweF90ZXN0OjprVHdvUGFzc0dvb2QpOworICB9CisKKyAgdm9pZCBQcmVF
bmNvZGVGcmFtZUhvb2soOjpsaWJ2cHhfdGVzdDo6VmlkZW9Tb3VyY2UgKnZpZGVvLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICA6OmxpYnZweF90ZXN0OjpFbmNvZGVyICplbmNvZGVyKSBvdmVy
cmlkZSB7CisgICAgaWYgKHZpZGVvLT5mcmFtZSgpID09IDApIHsKKyAgICAgIHZweF9yY19mdW5j
c190IHJjX2Z1bmNzOworICAgICAgcmNfZnVuY3MuY3JlYXRlX21vZGVsID0gcmNfY3JlYXRlX21v
ZGVsOworICAgICAgcmNfZnVuY3Muc2VuZF9maXJzdHBhc3Nfc3RhdHMgPSByY19zZW5kX2ZpcnN0
cGFzc19zdGF0czsKKyAgICAgIHJjX2Z1bmNzLmdldF9lbmNvZGVmcmFtZV9kZWNpc2lvbiA9IHJj
X2dldF9lbmNvZGVmcmFtZV9kZWNpc2lvbjsKKyAgICAgIHJjX2Z1bmNzLnVwZGF0ZV9lbmNvZGVm
cmFtZV9yZXN1bHQgPSByY191cGRhdGVfZW5jb2RlZnJhbWVfcmVzdWx0OworICAgICAgcmNfZnVu
Y3MuZGVsZXRlX21vZGVsID0gcmNfZGVsZXRlX21vZGVsOworICAgICAgcmNfZnVuY3MucHJpdiA9
IHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCAqPihQcml2TWFnaWNOdW1iZXIpOworICAgICAgZW5jb2Rl
ci0+Q29udHJvbChWUDlFX1NFVF9FWFRFUk5BTF9SQVRFX0NPTlRST0wsICZyY19mdW5jcyk7Cisg
ICAgfQorICB9Cit9OworCitURVNUX0YoRXh0UmF0ZUN0cmxUZXN0LCBFbmNvZGVUZXN0KSB7Cisg
IGNmZ18ucmNfdGFyZ2V0X2JpdHJhdGUgPSAyNDAwMDsKKworICBzdGQ6OnVuaXF1ZV9wdHI8bGli
dnB4X3Rlc3Q6OlZpZGVvU291cmNlPiB2aWRlbzsKKyAgdmlkZW8ucmVzZXQobmV3IChzdGQ6Om5v
dGhyb3cpIGxpYnZweF90ZXN0OjpZVVZWaWRlb1NvdXJjZSgKKyAgICAgICJidXNfMzUyeDI4OF80
MjBfZjIwX2I4Lnl1diIsIFZQWF9JTUdfRk1UX0k0MjAsIDM1MiwgMjg4LCAzMCwgMSwgMCwKKyAg
ICAgIGtGcmFtZU51bSkpOworCisgIEFTU0VSVF9ORSh2aWRlby5nZXQoKSwgbnVsbHB0cik7Cisg
IEFTU0VSVF9OT19GQVRBTF9GQUlMVVJFKFJ1bkxvb3AodmlkZW8uZ2V0KCkpKTsKK30KKworfSAg
Ly8gbmFtZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X2ludHJhcHJlZF90
ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9pbnRyYXByZWRfdGVzdC5jYwppbmRleCA1ODA5
MWY4NzViMWFmZWFmYjgxOTgxZGVmZTE3MDNmYmNmMWVlNzcxLi5jY2FjZTcxOWVhN2RiZmEwOWFk
YjUxNzY2YzgxNTYzMjQ3OTJlOTIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X2lu
dHJhcHJlZF90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfaW50cmFwcmVkX3Rlc3Qu
Y2MKQEAgLTMyLDcgKzMyLDcgQEAgdHlwZWRlZiB2b2lkICgqSW50cmFQcmVkRnVuYykodWludDhf
dCAqZHN0LCBwdHJkaWZmX3Qgc3RyaWRlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgdWludDhfdCAqYWJvdmUsIGNvbnN0IHVpbnQ4X3QgKmxlZnQpOwogCiBzdHJ1Y3QgSW50
cmFQcmVkUGFyYW0gewotICBJbnRyYVByZWRQYXJhbShJbnRyYVByZWRGdW5jIHByZWQgPSBOVUxM
LCBJbnRyYVByZWRGdW5jIHJlZiA9IE5VTEwsCisgIEludHJhUHJlZFBhcmFtKEludHJhUHJlZEZ1
bmMgcHJlZCA9IG51bGxwdHIsIEludHJhUHJlZEZ1bmMgcmVmID0gbnVsbHB0ciwKICAgICAgICAg
ICAgICAgICAgaW50IGJsb2NrX3NpemVfdmFsdWUgPSAwLCBpbnQgYml0X2RlcHRoX3ZhbHVlID0g
MCkKICAgICAgIDogcHJlZF9mbihwcmVkKSwgcmVmX2ZuKHJlZiksIGJsb2NrX3NpemUoYmxvY2tf
c2l6ZV92YWx1ZSksCiAgICAgICAgIGJpdF9kZXB0aChiaXRfZGVwdGhfdmFsdWUpIHt9CkBAIC0x
MzIsMTIgKzEzMiwxMiBAQCBURVNUX1AoVlA5SW50cmFQcmVkVGVzdCwgSW50cmFQcmVkVGVzdHMp
IHsKIAogLy8gSW5zdGFudGlhdGUgYSB0b2tlbiB0ZXN0IHRvIGF2b2lkIC1XdW5pbml0aWFsaXpl
ZCB3YXJuaW5ncyB3aGVuIG5vbmUgb2YgdGhlCiAvLyBvdGhlciB0ZXN0cyBhcmUgZW5hYmxlZC4K
LUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAg
IEMsIFZQOUludHJhUHJlZFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoSW50cmFQcmVkUGFy
YW0oJnZweF9kNDVfcHJlZGljdG9yXzR4NF9jLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICZ2cHhfZDQ1X3ByZWRpY3Rvcl80eDRfYywgNCwgOCkpKTsKICNpZiBIQVZFX1NT
RTIKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAog
ICAgIFNTRTIsIFZQOUludHJhUHJlZFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAg
ICAgIEludHJhUHJlZFBhcmFtKCZ2cHhfZDQ1X3ByZWRpY3Rvcl80eDRfc3NlMiwgJnZweF9kNDVf
cHJlZGljdG9yXzR4NF9jLCA0LApAQCAtMjAxLDcgKzIwMSw3IEBAIElOU1RBTlRJQVRFX1RFU1Rf
Q0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX1NTRTIKIAogI2lmIEhBVkVfU1NTRTMKLUlOU1RBTlRJ
QVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTU0UzLCBW
UDlJbnRyYVByZWRUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKEludHJhUHJlZFBhcmFtKCZ2
cHhfZDQ1X3ByZWRpY3Rvcl8xNngxNl9zc3NlMywKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAmdnB4X2Q0NV9wcmVkaWN0b3JfMTZ4MTZfYywgMTYsIDgpLApAQCAtMjMyLDcg
KzIzMiw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX1NTU0Uz
CiAKICNpZiBIQVZFX05FT04KLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QKAogICAgIE5FT04sIFZQOUludHJhUHJlZFRlc3QsCiAgICAgOjp0ZXN0aW5n
OjpWYWx1ZXMoCiAgICAgICAgIEludHJhUHJlZFBhcmFtKCZ2cHhfZDQ1X3ByZWRpY3Rvcl80eDRf
bmVvbiwgJnZweF9kNDVfcHJlZGljdG9yXzR4NF9jLCA0LApAQCAtMzA2LDcgKzMwNiw3IEBAIElO
U1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX05FT04KIAogI2lmIEhBVkVf
RFNQUjIKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9Q
KAogICAgIERTUFIyLCBWUDlJbnRyYVByZWRUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKElu
dHJhUHJlZFBhcmFtKCZ2cHhfZGNfcHJlZGljdG9yXzR4NF9kc3ByMiwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAmdnB4X2RjX3ByZWRpY3Rvcl80eDRfYywgNCwgOCksCkBA
IC0zMjcsNyArMzI3LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAjZW5kaWYgIC8vIEhB
VkVfRFNQUjIKIAogI2lmIEhBVkVfTVNBCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RB
TlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBNU0EsIFZQOUludHJhUHJlZFRlc3QsCiAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIEludHJhUHJlZFBhcmFtKCZ2cHhfZGNfMTI4X3ByZWRp
Y3Rvcl80eDRfbXNhLApAQCAtNDAxLDcgKzQwMSw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9Q
KAogI2VuZGlmCiAKICNpZiBIQVZFX1ZTWAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNU
QU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgVlNYLCBWUDlJbnRyYVByZWRUZXN0LAogICAgIDo6
dGVzdGluZzo6VmFsdWVzKEludHJhUHJlZFBhcmFtKCZ2cHhfZDQ1X3ByZWRpY3Rvcl8xNngxNl92
c3gsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9kNDVfcHJlZGlj
dG9yXzE2eDE2X2MsIDE2LCA4KSwKQEAgLTQ0Niw4ICs0NDYsOSBAQCB0eXBlZGVmIHZvaWQgKCpI
aWdoYmRJbnRyYVByZWQpKHVpbnQxNl90ICpkc3QsIHB0cmRpZmZfdCBzdHJpZGUsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQxNl90ICphYm92ZSwgY29uc3QgdWlu
dDE2X3QgKmxlZnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBicHMpOwog
c3RydWN0IEhpZ2hiZEludHJhUHJlZFBhcmFtIHsKLSAgSGlnaGJkSW50cmFQcmVkUGFyYW0oSGln
aGJkSW50cmFQcmVkIHByZWQgPSBOVUxMLCBIaWdoYmRJbnRyYVByZWQgcmVmID0gTlVMTCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgaW50IGJsb2NrX3NpemVfdmFsdWUgPSAwLCBpbnQgYml0X2Rl
cHRoX3ZhbHVlID0gMCkKKyAgSGlnaGJkSW50cmFQcmVkUGFyYW0oSGlnaGJkSW50cmFQcmVkIHBy
ZWQgPSBudWxscHRyLAorICAgICAgICAgICAgICAgICAgICAgICBIaWdoYmRJbnRyYVByZWQgcmVm
ID0gbnVsbHB0ciwgaW50IGJsb2NrX3NpemVfdmFsdWUgPSAwLAorICAgICAgICAgICAgICAgICAg
ICAgICBpbnQgYml0X2RlcHRoX3ZhbHVlID0gMCkKICAgICAgIDogcHJlZF9mbihwcmVkKSwgcmVm
X2ZuKHJlZiksIGJsb2NrX3NpemUoYmxvY2tfc2l6ZV92YWx1ZSksCiAgICAgICAgIGJpdF9kZXB0
aChiaXRfZGVwdGhfdmFsdWUpIHt9CiAKQEAgLTQ1Nyw2ICs0NTgsNyBAQCBzdHJ1Y3QgSGlnaGJk
SW50cmFQcmVkUGFyYW0gewogICBpbnQgYml0X2RlcHRoOwogfTsKIAorI2lmIEhBVkVfU1NTRTMg
fHwgSEFWRV9ORU9OIHx8IEhBVkVfU1NFMgogdGVtcGxhdGUgPD4KIHZvaWQgSW50cmFQcmVkVGVz
dDx1aW50MTZfdCwgSGlnaGJkSW50cmFQcmVkUGFyYW0+OjpQcmVkaWN0KCkgewogICBjb25zdCBp
bnQgYml0X2RlcHRoID0gcGFyYW1zXy5iaXRfZGVwdGg7CkBAIC00NjYsNiArNDY4LDcgQEAgdm9p
ZCBJbnRyYVByZWRUZXN0PHVpbnQxNl90LCBIaWdoYmRJbnRyYVByZWRQYXJhbT46OlByZWRpY3Qo
KSB7CiB9CiAKIHR5cGVkZWYgSW50cmFQcmVkVGVzdDx1aW50MTZfdCwgSGlnaGJkSW50cmFQcmVk
UGFyYW0+IFZQOUhpZ2hiZEludHJhUHJlZFRlc3Q7CitHVEVTVF9BTExPV19VTklOU1RBTlRJQVRF
RF9QQVJBTUVURVJJWkVEX1RFU1QoVlA5SGlnaGJkSW50cmFQcmVkVGVzdCk7CiAKIFRFU1RfUChW
UDlIaWdoYmRJbnRyYVByZWRUZXN0LCBIaWdoYmRJbnRyYVByZWRUZXN0cykgewogICAvLyBtYXgg
YmxvY2sgc2l6ZSBpcyAzMgpAQCAtNDc1LDkgKzQ3OCwxMCBAQCBURVNUX1AoVlA5SGlnaGJkSW50
cmFQcmVkVGVzdCwgSGlnaGJkSW50cmFQcmVkVGVzdHMpIHsKICAgREVDTEFSRV9BTElHTkVEKDE2
LCB1aW50MTZfdCwgcmVmX2RzdFszICogMzIgKiAzMl0pOwogICBSdW5UZXN0KGxlZnRfY29sLCBh
Ym92ZV9kYXRhLCBkc3QsIHJlZl9kc3QpOwogfQorI2VuZGlmCiAKICNpZiBIQVZFX1NTU0UzCi1J
TlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBT
U1NFM19UT19DXzgsIFZQOUhpZ2hiZEludHJhUHJlZFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1
ZXMoCiAgICAgICAgIEhpZ2hiZEludHJhUHJlZFBhcmFtKCZ2cHhfaGlnaGJkX2Q0NV9wcmVkaWN0
b3JfNHg0X3Nzc2UzLApAQCAtNTE5LDcgKzUyMyw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9Q
KAogICAgICAgICBIaWdoYmRJbnRyYVByZWRQYXJhbSgmdnB4X2hpZ2hiZF9kMjA3X3ByZWRpY3Rv
cl8zMngzMl9zc3NlMywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9oaWdoYmRf
ZDIwN19wcmVkaWN0b3JfMzJ4MzJfYywgMzIsIDgpKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FT
RV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTU0UzX1RPX0NfMTAsIFZQOUhp
Z2hiZEludHJhUHJlZFRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIEhpZ2hi
ZEludHJhUHJlZFBhcmFtKCZ2cHhfaGlnaGJkX2Q0NV9wcmVkaWN0b3JfNHg0X3Nzc2UzLApAQCAt
NTYxLDcgKzU2NSw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICBIaWdoYmRJ
bnRyYVByZWRQYXJhbSgmdnB4X2hpZ2hiZF9kMjA3X3ByZWRpY3Rvcl8zMngzMl9zc3NlMywKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9oaWdoYmRfZDIwN19wcmVkaWN0b3JfMzJ4
MzJfYywgMzIsIDEwKSkpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRF
X1RFU1RfU1VJVEVfUCgKICAgICBTU1NFM19UT19DXzEyLCBWUDlIaWdoYmRJbnRyYVByZWRUZXN0
LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKAogICAgICAgICBIaWdoYmRJbnRyYVByZWRQYXJhbSgm
dnB4X2hpZ2hiZF9kNDVfcHJlZGljdG9yXzR4NF9zc3NlMywKQEAgLTYwNSw3ICs2MDksNyBAQCBJ
TlNUQU5USUFURV9URVNUX0NBU0VfUCgKICNlbmRpZiAgLy8gSEFWRV9TU1NFMwogCiAjaWYgSEFW
RV9TU0UyCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVf
UCgKICAgICBTU0UyX1RPX0NfOCwgVlA5SGlnaGJkSW50cmFQcmVkVGVzdCwKICAgICA6OnRlc3Rp
bmc6OlZhbHVlcygKICAgICAgICAgSGlnaGJkSW50cmFQcmVkUGFyYW0oJnZweF9oaWdoYmRfZGNf
MTI4X3ByZWRpY3Rvcl80eDRfc3NlMiwKQEAgLTY3NSw3ICs2NzksNyBAQCBJTlNUQU5USUFURV9U
RVNUX0NBU0VfUCgKICAgICAgICAgSGlnaGJkSW50cmFQcmVkUGFyYW0oJnZweF9oaWdoYmRfdl9w
cmVkaWN0b3JfMzJ4MzJfc3NlMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9o
aWdoYmRfdl9wcmVkaWN0b3JfMzJ4MzJfYywgMzIsIDgpKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1Rf
Q0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTRTJfVE9fQ18xMCwgVlA5
SGlnaGJkSW50cmFQcmVkVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcygKICAgICAgICAgSGln
aGJkSW50cmFQcmVkUGFyYW0oJnZweF9oaWdoYmRfZGNfMTI4X3ByZWRpY3Rvcl80eDRfc3NlMiwK
QEAgLTc0NSw3ICs3NDksNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgSGln
aGJkSW50cmFQcmVkUGFyYW0oJnZweF9oaWdoYmRfdl9wcmVkaWN0b3JfMzJ4MzJfc3NlMiwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9oaWdoYmRfdl9wcmVkaWN0b3JfMzJ4MzJf
YywgMzIsIDEwKSkpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RF
U1RfU1VJVEVfUCgKICAgICBTU0UyX1RPX0NfMTIsIFZQOUhpZ2hiZEludHJhUHJlZFRlc3QsCiAg
ICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAgICAgIEhpZ2hiZEludHJhUHJlZFBhcmFtKCZ2cHhf
aGlnaGJkX2RjXzEyOF9wcmVkaWN0b3JfNHg0X3NzZTIsCkBAIC04MTcsNyArODIxLDcgQEAgSU5T
VEFOVElBVEVfVEVTVF9DQVNFX1AoCiAjZW5kaWYgIC8vIEhBVkVfU1NFMgogCiAjaWYgSEFWRV9O
RU9OCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgK
ICAgICBORU9OX1RPX0NfOCwgVlA5SGlnaGJkSW50cmFQcmVkVGVzdCwKICAgICA6OnRlc3Rpbmc6
OlZhbHVlcygKICAgICAgICAgSGlnaGJkSW50cmFQcmVkUGFyYW0oJnZweF9oaWdoYmRfZDQ1X3By
ZWRpY3Rvcl80eDRfbmVvbiwKQEAgLTg5Myw3ICs4OTcsNyBAQCBJTlNUQU5USUFURV9URVNUX0NB
U0VfUCgKICAgICAgICAgSGlnaGJkSW50cmFQcmVkUGFyYW0oJnZweF9oaWdoYmRfdl9wcmVkaWN0
b3JfMzJ4MzJfbmVvbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9oaWdoYmRf
dl9wcmVkaWN0b3JfMzJ4MzJfYywgMzIsIDgpKSk7CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9Q
KAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIE5FT05fVE9fQ18xMCwgVlA5SGlnaGJk
SW50cmFQcmVkVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcygKICAgICAgICAgSGlnaGJkSW50
cmFQcmVkUGFyYW0oJnZweF9oaWdoYmRfZDQ1X3ByZWRpY3Rvcl80eDRfbmVvbiwKQEAgLTk2OSw3
ICs5NzMsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgKICAgICAgICAgSGlnaGJkSW50cmFQ
cmVkUGFyYW0oJnZweF9oaWdoYmRfdl9wcmVkaWN0b3JfMzJ4MzJfbmVvbiwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgJnZweF9oaWdoYmRfdl9wcmVkaWN0b3JfMzJ4MzJfYywgMzIsIDEw
KSkpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVf
UCgKICAgICBORU9OX1RPX0NfMTIsIFZQOUhpZ2hiZEludHJhUHJlZFRlc3QsCiAgICAgOjp0ZXN0
aW5nOjpWYWx1ZXMoCiAgICAgICAgIEhpZ2hiZEludHJhUHJlZFBhcmFtKCZ2cHhfaGlnaGJkX2Q0
NV9wcmVkaWN0b3JfNHg0X25lb24sCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X2xv
c3NsZXNzX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X2xvc3NsZXNzX3Rlc3QuY2MKaW5k
ZXggNWNmMGE0MWRhNGQxZDc3YTU0MzM3NGM2NzBkZmJmYmVmNzg5MzJlYS4uOTMxYWMzMGEzNjc4
MDZlZWIzMjUzMjY2YTJjZjgxNmJiYzI2ZTdlYSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0
L3ZwOV9sb3NzbGVzc190ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfbG9zc2xlc3Nf
dGVzdC5jYwpAQCAtMTE4LDggKzExOCw4IEBAIFRFU1RfUChMb3NzbGVzc1Rlc3QsIFRlc3RMb3Nz
TGVzc0VuY29kaW5nQ3RybCkgewogICBFWFBFQ1RfR0UocHNucl9sb3NzbGVzcywga01heFBzbnIp
OwogfQogCi1WUDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKExvc3NsZXNzVGVzdCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a1JlYWxU
aW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6OmxpYnZw
eF90ZXN0OjprT25lUGFzc0dvb2QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDo6bGlidnB4X3Rlc3Q6OmtUd29QYXNzR29vZCkpOworVlA5X0lOU1RBTlRJQVRF
X1RFU1RfU1VJVEUoTG9zc2xlc3NUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXMoOjpsaWJ2cHhfdGVzdDo6a1JlYWxUaW1lLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOjpsaWJ2cHhfdGVzdDo6a09uZVBhc3NHb29k
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOjpsaWJ2cHhf
dGVzdDo6a1R3b1Bhc3NHb29kKSk7CiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdGVzdC92cDlfbW90aW9uX3ZlY3Rvcl90ZXN0LmNjIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3Zw
OV9tb3Rpb25fdmVjdG9yX3Rlc3QuY2MKaW5kZXggYjU1NmExYzM3ODQ2MGJkOTA5NTdkMmVmOGFl
Y2IxMTI4Y2YwNWU4MC4uNmIxMDgyYTEwNmY5OTdiNTY3NGZiOGQzYmRhYTcxN2I1OWYxODU1ZiAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9tb3Rpb25fdmVjdG9yX3Rlc3QuY2MKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L3ZwOV9tb3Rpb25fdmVjdG9yX3Rlc3QuY2MKQEAgLTg4LDEyICs4
OCwxMiBAQCBURVNUX1AoTW90aW9uVmVjdG9yVGVzdExhcmdlLCBPdmVyYWxsVGVzdCkgewogICAg
ICAgIm5pa2xhc182NDBfNDgwXzMwLnl1diIsIFZQWF9JTUdfRk1UX0k0MjAsIDM4NDAsIDIxNjAs
ICAvLyAyMDQ4LCAxMDgwLAogICAgICAgMzAsIDEsIDAsIDUpKTsKIAotICBBU1NFUlRfVFJVRSh2
aWRlby5nZXQoKSAhPSBOVUxMKTsKKyAgQVNTRVJUX05FKHZpZGVvLmdldCgpLCBudWxscHRyKTsK
ICAgQVNTRVJUX05PX0ZBVEFMX0ZBSUxVUkUoUnVuTG9vcCh2aWRlby5nZXQoKSkpOwogfQogCi1W
UDlfSU5TVEFOVElBVEVfVEVTVF9DQVNFKE1vdGlvblZlY3RvclRlc3RMYXJnZSwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrRW5jb2RpbmdNb2RlVmVjdG9y
cyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzSW4oa0NwdVVz
ZWRWZWN0b3JzKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJ
bihrTVZUZXN0TW9kZXMpKTsKK1ZQOV9JTlNUQU5USUFURV9URVNUX1NVSVRFKE1vdGlvblZlY3Rv
clRlc3RMYXJnZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVz
SW4oa0VuY29kaW5nTW9kZVZlY3RvcnMpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXNJbihrQ3B1VXNlZFZlY3RvcnMpLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrTVZUZXN0TW9kZXMpKTsKIH0gIC8vIG5hbWVzcGFj
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9xdWFudGl6ZV90ZXN0LmNjIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L3ZwOV9xdWFudGl6ZV90ZXN0LmNjCmluZGV4IDY5YzJjNWEwYjllODQ3MzMw
MWI1YjcyNTcyZjQ3MWRmYzRjODdiNDkuLmNiNDQ4MWIxMDMxZTZiZmNhNzgxMDNjMjU1YzU0YzQ3
YjM3YTY5MjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfcXVhbnRpemVfdGVzdC5j
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X3F1YW50aXplX3Rlc3QuY2MKQEAgLTExMCwxMyAr
MTEwLDEzIEBAIGNsYXNzIFZQOVF1YW50aXplQmFzZSA6IHB1YmxpYyBBYnN0cmFjdEJlbmNoIHsK
ICAgICB2cHhfZnJlZShxdWFudF9wdHJfKTsKICAgICB2cHhfZnJlZShxdWFudF9zaGlmdF9wdHJf
KTsKICAgICB2cHhfZnJlZShkZXF1YW50X3B0cl8pOwotICAgIHpiaW5fcHRyXyA9IE5VTEw7Ci0g
ICAgcm91bmRfZnBfcHRyXyA9IE5VTEw7Ci0gICAgcXVhbnRfZnBfcHRyXyA9IE5VTEw7Ci0gICAg
cm91bmRfcHRyXyA9IE5VTEw7Ci0gICAgcXVhbnRfcHRyXyA9IE5VTEw7Ci0gICAgcXVhbnRfc2hp
ZnRfcHRyXyA9IE5VTEw7Ci0gICAgZGVxdWFudF9wdHJfID0gTlVMTDsKKyAgICB6YmluX3B0cl8g
PSBudWxscHRyOworICAgIHJvdW5kX2ZwX3B0cl8gPSBudWxscHRyOworICAgIHF1YW50X2ZwX3B0
cl8gPSBudWxscHRyOworICAgIHJvdW5kX3B0cl8gPSBudWxscHRyOworICAgIHF1YW50X3B0cl8g
PSBudWxscHRyOworICAgIHF1YW50X3NoaWZ0X3B0cl8gPSBudWxscHRyOworICAgIGRlcXVhbnRf
cHRyXyA9IG51bGxwdHI7CiAgICAgbGlidnB4X3Rlc3Q6OkNsZWFyU3lzdGVtU3RhdGUoKTsKICAg
fQogCkBAIC00NzUsNyArNDc1LDcgQEAgdXNpbmcgc3RkOjptYWtlX3R1cGxlOwogCiAjaWYgSEFW
RV9TU0UyCiAjaWYgQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKLUlOU1RBTlRJQVRFX1RFU1RfQ0FT
RV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIFNTRTIsIFZQOVF1YW50aXplVGVz
dCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcygKICAgICAgICAgbWFrZV90dXBsZSgmdnB4X3F1YW50
aXplX2Jfc3NlMiwgJnZweF9xdWFudGl6ZV9iX2MsIFZQWF9CSVRTXzgsIDE2LApAQCAtNDk0LDcg
KzQ5NCw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogICAgICAgICAgICAgICAgICAgICZ2
cHhfaGlnaGJkX3F1YW50aXplX2JfMzJ4MzJfYywgVlBYX0JJVFNfMTIsIDMyLCBmYWxzZSkpKTsK
IAogI2Vsc2UKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlU
RV9QKAogICAgIFNTRTIsIFZQOVF1YW50aXplVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyht
YWtlX3R1cGxlKCZ2cHhfcXVhbnRpemVfYl9zc2UyLCAmdnB4X3F1YW50aXplX2JfYywKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQWF9CSVRTXzgsIDE2LCBmYWxzZSksCkBAIC01
MDYsNyArNTA2LDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAKICNpZiBIQVZFX1NTU0Uz
CiAjaWYgVlBYX0FSQ0hfWDg2XzY0Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJ
QVRFX1RFU1RfU1VJVEVfUCgKICAgICBTU1NFMywgVlA5UXVhbnRpemVUZXN0LAogICAgIDo6dGVz
dGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZweF9xdWFudGl6ZV9iX3Nzc2UzLCAmdnB4X3F1YW50
aXplX2JfYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQWF9CSVRTXzgsIDE2
LCBmYWxzZSksCkBAIC01MjAsNyArNTIwLDcgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmUXVhbnRGUFdyYXBwZXI8cXVhbnRpemVf
ZnBfMzJ4MzJfbnpfYz4sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWUFhfQklU
U184LCAzMiwgdHJ1ZSkpKTsKICNlbHNlCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RB
TlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBTU1NFMywgVlA5UXVhbnRpemVUZXN0LAogICAgIDo6
dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZweF9xdWFudGl6ZV9iX3Nzc2UzLCAmdnB4X3F1
YW50aXplX2JfYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQWF9CSVRTXzgs
IDE2LCBmYWxzZSksCkBAIC01MzIsMTcgKzUzMiwxNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0Vf
UCgKICNlbmRpZiAgLy8gSEFWRV9TU1NFMwogCiAjaWYgSEFWRV9BVlgKLUlOU1RBTlRJQVRFX1RF
U1RfQ0FTRV9QKEFWWCwgVlA5UXVhbnRpemVUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAg
Ojp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmdnB4X3F1YW50aXplX2JfYXZ4LAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X3F1YW50
aXplX2JfYywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgVlBYX0JJVFNfOCwgMTYsIGZhbHNlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIG1ha2VfdHVwbGUoJnZweF9xdWFudGl6ZV9iXzMyeDMyX2F2eCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZweF9x
dWFudGl6ZV9iXzMyeDMyX2MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFZQWF9CSVRTXzgsIDMyLCBmYWxzZSkpKTsKK0lOU1RBTlRJQVRFX1RF
U1RfU1VJVEVfUChBVlgsIFZQOVF1YW50aXplVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICA6OnRlc3Rpbmc6OlZhbHVlcyhtYWtlX3R1cGxlKCZ2cHhfcXVhbnRpemVfYl9hdngsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnB4X3F1
YW50aXplX2JfYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFZQWF9CSVRTXzgsIDE2LCBmYWxzZSksCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgbWFrZV90dXBsZSgmdnB4X3F1YW50aXplX2JfMzJ4MzJfYXZ4
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
JnZweF9xdWFudGl6ZV9iXzMyeDMyX2MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBWUFhfQklUU184LCAzMiwgZmFsc2UpKSk7CiAjZW5kaWYg
IC8vIEhBVkVfQVZYCiAKICNpZiBWUFhfQVJDSF9YODZfNjQgJiYgSEFWRV9BVlgyCi1JTlNUQU5U
SUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAgICBBVlgyLCBW
UDlRdWFudGl6ZVRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMobWFrZV90dXBsZSgmUXVhbnRG
UFdyYXBwZXI8dnA5X3F1YW50aXplX2ZwX2F2eDI+LAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgJlF1YW50RlBXcmFwcGVyPHF1YW50aXplX2ZwX256X2M+LCBWUFhfQklUU184LApA
QCAtNTUwLDcgKzU1MCw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBI
QVZFX0FWWDIKIAogI2lmIEhBVkVfTkVPTgotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCitJTlNU
QU5USUFURV9URVNUX1NVSVRFX1AoCiAgICAgTkVPTiwgVlA5UXVhbnRpemVUZXN0LAogICAgIDo6
dGVzdGluZzo6VmFsdWVzKG1ha2VfdHVwbGUoJnZweF9xdWFudGl6ZV9iX25lb24sICZ2cHhfcXVh
bnRpemVfYl9jLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVlBYX0JJVFNfOCwg
MTYsIGZhbHNlKSwKQEAgLTU2Niw3ICs1NjYsNyBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUCgK
ICNlbmRpZiAgLy8gSEFWRV9ORU9OCiAKICNpZiBIQVZFX1ZTWCAmJiAhQ09ORklHX1ZQOV9ISUdI
QklUREVQVEgKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlU
RV9QKAogICAgIFZTWCwgVlA5UXVhbnRpemVUZXN0LAogICAgIDo6dGVzdGluZzo6VmFsdWVzKG1h
a2VfdHVwbGUoJnZweF9xdWFudGl6ZV9iX3ZzeCwgJnZweF9xdWFudGl6ZV9iX2MsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBWUFhfQklUU184LCAxNiwgZmFsc2UpLApAQCAtNTgy
LDcgKzU4Miw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAogI2VuZGlmICAvLyBIQVZFX1ZT
WCAmJiAhQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKIAogLy8gT25seSB1c2VmdWwgdG8gY29tcGFy
ZSAiU3BlZWQiIHRlc3QgcmVzdWx0cy4KLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKAorSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QKAogICAgIERJU0FCTEVEX0MsIFZQOVF1YW50aXplVGVzdCwKICAg
ICA6OnRlc3Rpbmc6OlZhbHVlcygKICAgICAgICAgbWFrZV90dXBsZSgmdnB4X3F1YW50aXplX2Jf
YywgJnZweF9xdWFudGl6ZV9iX2MsIFZQWF9CSVRTXzgsIDE2LCBmYWxzZSksCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rlc3QvdnA5X3NjYWxlX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5
X3NjYWxlX3Rlc3QuY2MKaW5kZXggZjNlN2YwYTBlMmI4M2EyY2IzOTk4ZGRhY2RmNjhhNDVhM2Rm
YTllMy4uMmQxMjAzZmI4OWVhMzgzMDM1ZmE4ZmFkN2Q1NjFjNTliNGEzZDI5OSAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L3ZwOV9zY2FsZV90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVz
dC92cDlfc2NhbGVfdGVzdC5jYwpAQCAtMTk5LDE3ICsxOTksMTcgQEAgVEVTVF9QKFNjYWxlVGVz
dCwgRElTQUJMRURfU3BlZWQpIHsKICAgfQogfQogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChD
LCBTY2FsZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2
cDlfc2NhbGVfYW5kX2V4dGVuZF9mcmFtZV9jKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1Ao
QywgU2NhbGVUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVz
KHZwOV9zY2FsZV9hbmRfZXh0ZW5kX2ZyYW1lX2MpKTsKIAogI2lmIEhBVkVfU1NTRTMKLUlOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QKFNTU0UzLCBTY2FsZVRlc3QsCi0gICAgICAgICAgICAgICAgICAg
ICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cDlfc2NhbGVfYW5kX2V4dGVuZF9mcmFtZV9zc3NlMykp
OworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFNTU0UzLCBTY2FsZVRlc3QsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnA5X3NjYWxlX2FuZF9leHRlbmRfZnJh
bWVfc3NzZTMpKTsKICNlbmRpZiAgLy8gSEFWRV9TU1NFMwogCiAjaWYgSEFWRV9ORU9OCi1JTlNU
QU5USUFURV9URVNUX0NBU0VfUChORU9OLCBTY2FsZVRlc3QsCi0gICAgICAgICAgICAgICAgICAg
ICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cDlfc2NhbGVfYW5kX2V4dGVuZF9mcmFtZV9uZW9uKSk7
CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoTkVPTiwgU2NhbGVUZXN0LAorICAgICAgICAgICAg
ICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZwOV9zY2FsZV9hbmRfZXh0ZW5kX2ZyYW1l
X25lb24pKTsKICNlbmRpZiAgLy8gSEFWRV9ORU9OCiAKIH0gIC8vIG5hbWVzcGFjZSBsaWJ2cHhf
dGVzdApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZwOV9za2lwX2xvb3BmaWx0ZXJfdGVz
dC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfc2tpcF9sb29wZmlsdGVyX3Rlc3QuY2MKaW5kZXgg
ZDQxYTc4NGEyMmM1M2ZhMjViZTFhZTgxNDE5MzEzMjM5NGFkYzk4OC4uYzA4MGEyY2FhZTgyZDlk
YzMwZjc4ZDA1NTY0MmViMjQwOTVmOTdkZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3Zw
OV9za2lwX2xvb3BmaWx0ZXJfdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X3NraXBf
bG9vcGZpbHRlcl90ZXN0LmNjCkBAIC0yNCwzMyArMjQsNDIgQEAgY29uc3QgY2hhciBrVnA5TWQ1
RmlsZVtdID0gInZwOTAtMi0wOC10aWxlXzF4OF9mcmFtZV9wYXJhbGxlbC53ZWJtLm1kNSI7CiAv
LyBDbGFzcyBmb3IgdGVzdGluZyBzaHV0dGluZyBvZmYgdGhlIGxvb3AgZmlsdGVyLgogY2xhc3Mg
U2tpcExvb3BGaWx0ZXJUZXN0IHsKICBwdWJsaWM6Ci0gIFNraXBMb29wRmlsdGVyVGVzdCgpIDog
dmlkZW9fKE5VTEwpLCBkZWNvZGVyXyhOVUxMKSwgbWQ1X2ZpbGVfKE5VTEwpIHt9CisgIFNraXBM
b29wRmlsdGVyVGVzdCgpCisgICAgICA6IHZpZGVvXyhudWxscHRyKSwgZGVjb2Rlcl8obnVsbHB0
ciksIG1kNV9maWxlXyhudWxscHRyKSB7fQogCiAgIH5Ta2lwTG9vcEZpbHRlclRlc3QoKSB7Ci0g
ICAgaWYgKG1kNV9maWxlXyAhPSBOVUxMKSBmY2xvc2UobWQ1X2ZpbGVfKTsKKyAgICBpZiAobWQ1
X2ZpbGVfICE9IG51bGxwdHIpIGZjbG9zZShtZDVfZmlsZV8pOwogICAgIGRlbGV0ZSBkZWNvZGVy
XzsKICAgICBkZWxldGUgdmlkZW9fOwogICB9CiAKICAgLy8gSWYgfHRocmVhZHN8ID4gMCB0aGVu
IHNldCB0aGUgZGVjb2RlciB3aXRoIHRoYXQgbnVtYmVyIG9mIHRocmVhZHMuCi0gIHZvaWQgSW5p
dChpbnQgbnVtX3RocmVhZHMpIHsKKyAgYm9vbCBJbml0KGludCBudW1fdGhyZWFkcykgewogICAg
IGV4cGVjdGVkX21kNV9bMF0gPSAnXDAnOwogICAgIGp1bmtfWzBdID0gJ1wwJzsKICAgICB2aWRl
b18gPSBuZXcgbGlidnB4X3Rlc3Q6OldlYk1WaWRlb1NvdXJjZShrVnA5VGVzdEZpbGUpOwotICAg
IEFTU0VSVF9UUlVFKHZpZGVvXyAhPSBOVUxMKTsKKyAgICBpZiAodmlkZW9fID09IG51bGxwdHIp
IHsKKyAgICAgIEVYUEVDVF9ORSh2aWRlb18sIG51bGxwdHIpOworICAgICAgcmV0dXJuIGZhbHNl
OworICAgIH0KICAgICB2aWRlb18tPkluaXQoKTsKICAgICB2aWRlb18tPkJlZ2luKCk7CiAKICAg
ICB2cHhfY29kZWNfZGVjX2NmZ190IGNmZyA9IHZweF9jb2RlY19kZWNfY2ZnX3QoKTsKICAgICBp
ZiAobnVtX3RocmVhZHMgPiAwKSBjZmcudGhyZWFkcyA9IG51bV90aHJlYWRzOwogICAgIGRlY29k
ZXJfID0gbmV3IGxpYnZweF90ZXN0OjpWUDlEZWNvZGVyKGNmZywgMCk7Ci0gICAgQVNTRVJUX1RS
VUUoZGVjb2Rlcl8gIT0gTlVMTCk7CisgICAgaWYgKGRlY29kZXJfID09IG51bGxwdHIpIHsKKyAg
ICAgIEVYUEVDVF9ORShkZWNvZGVyXywgbnVsbHB0cik7CisgICAgICByZXR1cm4gZmFsc2U7Cisg
ICAgfQogCiAgICAgT3Blbk1kNUZpbGUoa1ZwOU1kNUZpbGUpOworICAgIHJldHVybiAhOjp0ZXN0
aW5nOjpUZXN0OjpIYXNGYWlsdXJlKCk7CiAgIH0KIAogICAvLyBTZXQgdGhlIFZQOSBza2lwTG9v
cEZpbHRlciBjb250cm9sIHZhbHVlLgogICB2b2lkIFNldFNraXBMb29wRmlsdGVyKGludCB2YWx1
ZSwgdnB4X2NvZGVjX2Vycl90IGV4cGVjdGVkX3ZhbHVlKSB7CisgICAgQVNTRVJUX05FKGRlY29k
ZXJfLCBudWxscHRyKTsKICAgICBkZWNvZGVyXy0+Q29udHJvbChWUDlfU0VUX1NLSVBfTE9PUF9G
SUxURVIsIHZhbHVlLCBleHBlY3RlZF92YWx1ZSk7CiAgIH0KIApAQCAtNjUsNyArNzQsNyBAQCBj
bGFzcyBTa2lwTG9vcEZpbHRlclRlc3QgewogICB9CiAKICAgdnB4X2NvZGVjX2Vycl90IERlY29k
ZVJlbWFpbmluZ0ZyYW1lcygpIHsKLSAgICBmb3IgKDsgdmlkZW9fLT5jeGRhdGEoKSAhPSBOVUxM
OyB2aWRlb18tPk5leHQoKSkgeworICAgIGZvciAoOyB2aWRlb18tPmN4ZGF0YSgpICE9IG51bGxw
dHI7IHZpZGVvXy0+TmV4dCgpKSB7CiAgICAgICBjb25zdCB2cHhfY29kZWNfZXJyX3QgcmVzID0K
ICAgICAgICAgICBkZWNvZGVyXy0+RGVjb2RlRnJhbWUodmlkZW9fLT5jeGRhdGEoKSwgdmlkZW9f
LT5mcmFtZV9zaXplKCkpOwogICAgICAgaWYgKHJlcyAhPSBWUFhfQ09ERUNfT0spIHJldHVybiBy
ZXM7CkBAIC04NSwxMyArOTQsMTMgQEAgY2xhc3MgU2tpcExvb3BGaWx0ZXJUZXN0IHsKICAgLy8g
VE9ETyhmZ2FsbGlnYW4pOiBNb3ZlIHRoZSBNRDUgdGVzdGluZyBjb2RlIGludG8gYW5vdGhlciBj
bGFzcy4KICAgdm9pZCBPcGVuTWQ1RmlsZShjb25zdCBzdGQ6OnN0cmluZyAmbWQ1X2ZpbGVfbmFt
ZSkgewogICAgIG1kNV9maWxlXyA9IGxpYnZweF90ZXN0OjpPcGVuVGVzdERhdGFGaWxlKG1kNV9m
aWxlX25hbWUpOwotICAgIEFTU0VSVF9UUlVFKG1kNV9maWxlXyAhPSBOVUxMKQorICAgIEFTU0VS
VF9ORShtZDVfZmlsZV8sIG51bGxwdHIpCiAgICAgICAgIDw8ICJNRDUgZmlsZSBvcGVuIGZhaWxl
ZC4gRmlsZW5hbWU6ICIgPDwgbWQ1X2ZpbGVfbmFtZTsKICAgfQogCiAgIC8vIFJlYWRzIHRoZSBu
ZXh0IGxpbmUgb2YgdGhlIE1ENSBmaWxlLgogICB2b2lkIFJlYWRNZDUoKSB7Ci0gICAgQVNTRVJU
X1RSVUUobWQ1X2ZpbGVfICE9IE5VTEwpOworICAgIEFTU0VSVF9ORShtZDVfZmlsZV8sIG51bGxw
dHIpOwogICAgIGNvbnN0IGludCByZXMgPSBmc2NhbmYobWQ1X2ZpbGVfLCAiJXMgICVzIiwgZXhw
ZWN0ZWRfbWQ1XywganVua18pOwogICAgIEFTU0VSVF9ORShFT0YsIHJlcykgPDwgIlJlYWQgbWQ1
IGRhdGEgZmFpbGVkIjsKICAgICBleHBlY3RlZF9tZDVfWzMyXSA9ICdcMCc7CkBAIC0xMjEsNyAr
MTMwLDcgQEAgVEVTVChTa2lwTG9vcEZpbHRlclRlc3QsIFNodXRPZmZMb29wRmlsdGVyKSB7CiAg
IGNvbnN0IGludCBub25femVyb192YWx1ZSA9IDE7CiAgIGNvbnN0IGludCBudW1fdGhyZWFkcyA9
IDA7CiAgIFNraXBMb29wRmlsdGVyVGVzdCBza2lwX2xvb3BfZmlsdGVyOwotICBza2lwX2xvb3Bf
ZmlsdGVyLkluaXQobnVtX3RocmVhZHMpOworICBBU1NFUlRfVFJVRShza2lwX2xvb3BfZmlsdGVy
LkluaXQobnVtX3RocmVhZHMpKTsKICAgc2tpcF9sb29wX2ZpbHRlci5TZXRTa2lwTG9vcEZpbHRl
cihub25femVyb192YWx1ZSwgVlBYX0NPREVDX09LKTsKICAgQVNTRVJUX0VRKFZQWF9DT0RFQ19P
Sywgc2tpcF9sb29wX2ZpbHRlci5EZWNvZGVSZW1haW5pbmdGcmFtZXMoKSk7CiAgIHNraXBfbG9v
cF9maWx0ZXIuQ2hlY2tNZDUoZmFsc2UpOwpAQCAtMTMxLDcgKzE0MCw3IEBAIFRFU1QoU2tpcExv
b3BGaWx0ZXJUZXN0LCBTaHV0T2ZmTG9vcEZpbHRlclNpbmdsZVRocmVhZCkgewogICBjb25zdCBp
bnQgbm9uX3plcm9fdmFsdWUgPSAxOwogICBjb25zdCBpbnQgbnVtX3RocmVhZHMgPSAxOwogICBT
a2lwTG9vcEZpbHRlclRlc3Qgc2tpcF9sb29wX2ZpbHRlcjsKLSAgc2tpcF9sb29wX2ZpbHRlci5J
bml0KG51bV90aHJlYWRzKTsKKyAgQVNTRVJUX1RSVUUoc2tpcF9sb29wX2ZpbHRlci5Jbml0KG51
bV90aHJlYWRzKSk7CiAgIHNraXBfbG9vcF9maWx0ZXIuU2V0U2tpcExvb3BGaWx0ZXIobm9uX3pl
cm9fdmFsdWUsIFZQWF9DT0RFQ19PSyk7CiAgIEFTU0VSVF9FUShWUFhfQ09ERUNfT0ssIHNraXBf
bG9vcF9maWx0ZXIuRGVjb2RlUmVtYWluaW5nRnJhbWVzKCkpOwogICBza2lwX2xvb3BfZmlsdGVy
LkNoZWNrTWQ1KGZhbHNlKTsKQEAgLTE0MSw3ICsxNTAsNyBAQCBURVNUKFNraXBMb29wRmlsdGVy
VGVzdCwgU2h1dE9mZkxvb3BGaWx0ZXI4VGhyZWFkcykgewogICBjb25zdCBpbnQgbm9uX3plcm9f
dmFsdWUgPSAxOwogICBjb25zdCBpbnQgbnVtX3RocmVhZHMgPSA4OwogICBTa2lwTG9vcEZpbHRl
clRlc3Qgc2tpcF9sb29wX2ZpbHRlcjsKLSAgc2tpcF9sb29wX2ZpbHRlci5Jbml0KG51bV90aHJl
YWRzKTsKKyAgQVNTRVJUX1RSVUUoc2tpcF9sb29wX2ZpbHRlci5Jbml0KG51bV90aHJlYWRzKSk7
CiAgIHNraXBfbG9vcF9maWx0ZXIuU2V0U2tpcExvb3BGaWx0ZXIobm9uX3plcm9fdmFsdWUsIFZQ
WF9DT0RFQ19PSyk7CiAgIEFTU0VSVF9FUShWUFhfQ09ERUNfT0ssIHNraXBfbG9vcF9maWx0ZXIu
RGVjb2RlUmVtYWluaW5nRnJhbWVzKCkpOwogICBza2lwX2xvb3BfZmlsdGVyLkNoZWNrTWQ1KGZh
bHNlKTsKQEAgLTE1MSw3ICsxNjAsNyBAQCBURVNUKFNraXBMb29wRmlsdGVyVGVzdCwgV2l0aExv
b3BGaWx0ZXIpIHsKICAgY29uc3QgaW50IG5vbl96ZXJvX3ZhbHVlID0gMTsKICAgY29uc3QgaW50
IG51bV90aHJlYWRzID0gMDsKICAgU2tpcExvb3BGaWx0ZXJUZXN0IHNraXBfbG9vcF9maWx0ZXI7
Ci0gIHNraXBfbG9vcF9maWx0ZXIuSW5pdChudW1fdGhyZWFkcyk7CisgIEFTU0VSVF9UUlVFKHNr
aXBfbG9vcF9maWx0ZXIuSW5pdChudW1fdGhyZWFkcykpOwogICBza2lwX2xvb3BfZmlsdGVyLlNl
dFNraXBMb29wRmlsdGVyKG5vbl96ZXJvX3ZhbHVlLCBWUFhfQ09ERUNfT0spOwogICBza2lwX2xv
b3BfZmlsdGVyLlNldFNraXBMb29wRmlsdGVyKDAsIFZQWF9DT0RFQ19PSyk7CiAgIEFTU0VSVF9F
UShWUFhfQ09ERUNfT0ssIHNraXBfbG9vcF9maWx0ZXIuRGVjb2RlUmVtYWluaW5nRnJhbWVzKCkp
OwpAQCAtMTYxLDcgKzE3MCw3IEBAIFRFU1QoU2tpcExvb3BGaWx0ZXJUZXN0LCBXaXRoTG9vcEZp
bHRlcikgewogVEVTVChTa2lwTG9vcEZpbHRlclRlc3QsIFRvZ2dsZUxvb3BGaWx0ZXIpIHsKICAg
Y29uc3QgaW50IG51bV90aHJlYWRzID0gMDsKICAgU2tpcExvb3BGaWx0ZXJUZXN0IHNraXBfbG9v
cF9maWx0ZXI7Ci0gIHNraXBfbG9vcF9maWx0ZXIuSW5pdChudW1fdGhyZWFkcyk7CisgIEFTU0VS
VF9UUlVFKHNraXBfbG9vcF9maWx0ZXIuSW5pdChudW1fdGhyZWFkcykpOwogCiAgIGZvciAoaW50
IGkgPSAwOyBpIDwgMTA7ICsraSkgewogICAgIHNraXBfbG9vcF9maWx0ZXIuU2V0U2tpcExvb3BG
aWx0ZXIoaSAlIDIsIFZQWF9DT0RFQ19PSyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3Qv
dnA5X3N1YnRyYWN0X3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5X3N1YnRyYWN0X3Rlc3Qu
Y2MKaW5kZXggNjdlOGRlNmM3NGJlZDU0YjViNzAwMjI4MDM3ZDk0MTEyODA5ZGIwNS4uZWY4Y2My
MDdkNjhmYzk1YmI2ODMxYWVkNWE2NjFjMzA2YzAwOTc4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90ZXN0L3ZwOV9zdWJ0cmFjdF90ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfc3Vi
dHJhY3RfdGVzdC5jYwpAQCAtMTI2LDMwICsxMjYsMzAgQEAgVEVTVF9QKFZQOVN1YnRyYWN0Qmxv
Y2tUZXN0LCBTaW1wbGVTdWJ0cmFjdCkgewogICB9CiB9CiAKLUlOU1RBTlRJQVRFX1RFU1RfQ0FT
RV9QKEMsIFZQOVN1YnRyYWN0QmxvY2tUZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0
ZXN0aW5nOjpWYWx1ZXModnB4X3N1YnRyYWN0X2Jsb2NrX2MpKTsKK0lOU1RBTlRJQVRFX1RFU1Rf
U1VJVEVfUChDLCBWUDlTdWJ0cmFjdEJsb2NrVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfc3VidHJhY3RfYmxvY2tfYykpOwogCiAjaWYgSEFWRV9T
U0UyCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChTU0UyLCBWUDlTdWJ0cmFjdEJsb2NrVGVzdCwK
LSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZweF9zdWJ0cmFjdF9i
bG9ja19zc2UyKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoU1NFMiwgVlA5U3VidHJhY3RC
bG9ja1Rlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4
X3N1YnRyYWN0X2Jsb2NrX3NzZTIpKTsKICNlbmRpZgogI2lmIEhBVkVfTkVPTgotSU5TVEFOVElB
VEVfVEVTVF9DQVNFX1AoTkVPTiwgVlA5U3VidHJhY3RCbG9ja1Rlc3QsCi0gICAgICAgICAgICAg
ICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhfc3VidHJhY3RfYmxvY2tfbmVvbikpOwor
SU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKE5FT04sIFZQOVN1YnRyYWN0QmxvY2tUZXN0LAorICAg
ICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZweF9zdWJ0cmFjdF9ibG9j
a19uZW9uKSk7CiAjZW5kaWYKICNpZiBIQVZFX01TQQotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1Ao
TVNBLCBWUDlTdWJ0cmFjdEJsb2NrVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVz
dGluZzo6VmFsdWVzKHZweF9zdWJ0cmFjdF9ibG9ja19tc2EpKTsKK0lOU1RBTlRJQVRFX1RFU1Rf
U1VJVEVfUChNU0EsIFZQOVN1YnRyYWN0QmxvY2tUZXN0LAorICAgICAgICAgICAgICAgICAgICAg
ICAgIDo6dGVzdGluZzo6VmFsdWVzKHZweF9zdWJ0cmFjdF9ibG9ja19tc2EpKTsKICNlbmRpZgog
CiAjaWYgSEFWRV9NTUkKLUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKE1NSSwgVlA5U3VidHJhY3RC
bG9ja1Rlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZhbHVlcyh2cHhf
c3VidHJhY3RfYmxvY2tfbW1pKSk7CitJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoTU1JLCBWUDlT
dWJ0cmFjdEJsb2NrVGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlZh
bHVlcyh2cHhfc3VidHJhY3RfYmxvY2tfbW1pKSk7CiAjZW5kaWYKIAogI2lmIEhBVkVfVlNYCi1J
TlNUQU5USUFURV9URVNUX0NBU0VfUChWU1gsIFZQOVN1YnRyYWN0QmxvY2tUZXN0LAotICAgICAg
ICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X3N1YnRyYWN0X2Jsb2NrX3Zz
eCkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFZTWCwgVlA5U3VidHJhY3RCbG9ja1Rlc3Qs
CisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXModnB4X3N1YnRyYWN0
X2Jsb2NrX3ZzeCkpOwogI2VuZGlmCiAKIH0gIC8vIG5hbWVzcGFjZSB2cDkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdGVzdC92cDlfdGhyZWFkX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnA5
X3RocmVhZF90ZXN0LmNjCmluZGV4IDMxYjZmZTU3YjRhYTE5ZGNlZWRlY2U4OTk2YmU5NTQwZjE1
NTNiMGEuLjM1MmFkNzFlY2EzYjE4YjllODA0ODYyY2M0ODUyN2JjMDBhOWI1MDMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGVzdC92cDlfdGhyZWFkX3Rlc3QuY2MKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90
ZXN0L3ZwOV90aHJlYWRfdGVzdC5jYwpAQCAtMTI4LDE4ICsxMjgsMTggQEAgVEVTVF9QKFZQeFdv
cmtlclRocmVhZFRlc3QsIEVuZFdpdGhvdXRTeW5jKSB7CiB9CiAKIFRFU1QoVlB4V29ya2VyVGhy
ZWFkVGVzdCwgVGVzdEludGVyZmFjZUFQSSkgewotICBFWFBFQ1RfRVEoMCwgdnB4X3NldF93b3Jr
ZXJfaW50ZXJmYWNlKE5VTEwpKTsKLSAgRVhQRUNUX1RSVUUodnB4X2dldF93b3JrZXJfaW50ZXJm
YWNlKCkgIT0gTlVMTCk7CisgIEVYUEVDVF9FUSgwLCB2cHhfc2V0X3dvcmtlcl9pbnRlcmZhY2Uo
bnVsbHB0cikpOworICBFWFBFQ1RfTkUodnB4X2dldF93b3JrZXJfaW50ZXJmYWNlKCksIG51bGxw
dHIpOwogICBmb3IgKGludCBpID0gMDsgaSA8IDY7ICsraSkgewogICAgIFZQeFdvcmtlckludGVy
ZmFjZSB3aW50ZXJmYWNlID0gKnZweF9nZXRfd29ya2VyX2ludGVyZmFjZSgpOwogICAgIHN3aXRj
aCAoaSkgewogICAgICAgZGVmYXVsdDoKLSAgICAgIGNhc2UgMDogd2ludGVyZmFjZS5pbml0ID0g
TlVMTDsgYnJlYWs7Ci0gICAgICBjYXNlIDE6IHdpbnRlcmZhY2UucmVzZXQgPSBOVUxMOyBicmVh
azsKLSAgICAgIGNhc2UgMjogd2ludGVyZmFjZS5zeW5jID0gTlVMTDsgYnJlYWs7Ci0gICAgICBj
YXNlIDM6IHdpbnRlcmZhY2UubGF1bmNoID0gTlVMTDsgYnJlYWs7Ci0gICAgICBjYXNlIDQ6IHdp
bnRlcmZhY2UuZXhlY3V0ZSA9IE5VTEw7IGJyZWFrOwotICAgICAgY2FzZSA1OiB3aW50ZXJmYWNl
LmVuZCA9IE5VTEw7IGJyZWFrOworICAgICAgY2FzZSAwOiB3aW50ZXJmYWNlLmluaXQgPSBudWxs
cHRyOyBicmVhazsKKyAgICAgIGNhc2UgMTogd2ludGVyZmFjZS5yZXNldCA9IG51bGxwdHI7IGJy
ZWFrOworICAgICAgY2FzZSAyOiB3aW50ZXJmYWNlLnN5bmMgPSBudWxscHRyOyBicmVhazsKKyAg
ICAgIGNhc2UgMzogd2ludGVyZmFjZS5sYXVuY2ggPSBudWxscHRyOyBicmVhazsKKyAgICAgIGNh
c2UgNDogd2ludGVyZmFjZS5leGVjdXRlID0gbnVsbHB0cjsgYnJlYWs7CisgICAgICBjYXNlIDU6
IHdpbnRlcmZhY2UuZW5kID0gbnVsbHB0cjsgYnJlYWs7CiAgICAgfQogICAgIEVYUEVDVF9FUSgw
LCB2cHhfc2V0X3dvcmtlcl9pbnRlcmZhY2UoJndpbnRlcmZhY2UpKTsKICAgfQpAQCAtMTcyLDcg
KzE3Miw3IEBAIHN0cmluZyBEZWNvZGVGaWxlKGNvbnN0IHN0cmluZyAmZmlsZW5hbWUsIGludCBu
dW1fdGhyZWFkcykgewogICAgIH0KIAogICAgIGxpYnZweF90ZXN0OjpEeERhdGFJdGVyYXRvciBk
ZWNfaXRlciA9IGRlY29kZXIuR2V0RHhEYXRhKCk7Ci0gICAgY29uc3QgdnB4X2ltYWdlX3QgKmlt
ZyA9IE5VTEw7CisgICAgY29uc3QgdnB4X2ltYWdlX3QgKmltZyA9IG51bGxwdHI7CiAKICAgICAv
LyBHZXQgZGVjb21wcmVzc2VkIGRhdGEKICAgICB3aGlsZSAoKGltZyA9IGRlY19pdGVyLk5leHQo
KSkpIHsKQEAgLTE4Myw3ICsxODMsNyBAQCBzdHJpbmcgRGVjb2RlRmlsZShjb25zdCBzdHJpbmcg
JmZpbGVuYW1lLCBpbnQgbnVtX3RocmVhZHMpIHsKIH0KIAogdm9pZCBEZWNvZGVGaWxlcyhjb25z
dCBGaWxlTGlzdCBmaWxlc1tdKSB7Ci0gIGZvciAoY29uc3QgRmlsZUxpc3QgKml0ZXIgPSBmaWxl
czsgaXRlci0+bmFtZSAhPSBOVUxMOyArK2l0ZXIpIHsKKyAgZm9yIChjb25zdCBGaWxlTGlzdCAq
aXRlciA9IGZpbGVzOyBpdGVyLT5uYW1lICE9IG51bGxwdHI7ICsraXRlcikgewogICAgIFNDT1BF
RF9UUkFDRShpdGVyLT5uYW1lKTsKICAgICBmb3IgKGludCB0ID0gMTsgdCA8PSA4OyArK3QpIHsK
ICAgICAgIEVYUEVDVF9FUShpdGVyLT5leHBlY3RlZF9tZDUsIERlY29kZUZpbGUoaXRlci0+bmFt
ZSwgdCkpCkBAIC0yNDUsNyArMjQ1LDcgQEAgVEVTVChWUDlEZWNvZGVNdWx0aVRocmVhZGVkVGVz
dCwgRnJhbWVQYXJhbGxlbCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAiMzY4ZWJjNmViZjNhNWU0NzhkODViMmMzMTQ5YjI4NDgiIH0sCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB7ICJ2cDkwLTItMDgtdGlsZV8xeDhfZnJhbWVfcGFyYWxsZWwu
d2VibSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIxN2U0MzlkYTIz
ODhhZmYzYTBmNjljYjIyNTc5YzZjMSIgfSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHsgTlVMTCwgTlVMTCB9IH07CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB7IG51bGxwdHIsIG51bGxwdHIgfSB9OwogCiAgIERlY29kZUZpbGVzKGZpbGVzKTsKIH0K
QEAgLTI5Niw3ICsyOTYsNyBAQCBURVNUKFZQOURlY29kZU11bHRpVGhyZWFkZWRUZXN0LCBGcmFt
ZVBhcmFsbGVsUmVzaXplKSB7CiAgICAgICAiYWU5NmYyMWYyMWI2MzcwY2MwMTI1NjIxYjQ0MWZj
NTIiIH0sCiAgICAgeyAidnA5MC0yLTE0LXJlc2l6ZS1mcC10aWxlcy04LTQud2VibSIsCiAgICAg
ICAiM2ViNGYyNGYxMDY0MGQ0MjIxOGY3ZmQ3YjlmZDMwZDQiIH0sCi0gICAgeyBOVUxMLCBOVUxM
IH0KKyAgICB7IG51bGxwdHIsIG51bGxwdHIgfQogICB9OwogCiAgIERlY29kZUZpbGVzKGZpbGVz
KTsKQEAgLTMwOSwxMyArMzA5LDEzIEBAIFRFU1QoVlA5RGVjb2RlTXVsdGlUaHJlYWRlZFRlc3Qs
IE5vbkZyYW1lUGFyYWxsZWwpIHsKICAgICB7ICJ2cDkwLTItMDgtdGlsZV8xeDgud2VibSIsICIw
OTQxOTAyYTUyZTkwOTJjYjAxMDkwNWVhYjE2MzY0YyIgfSwKICAgICB7ICJ2cDkwLTItMDgtdGls
ZS00eDEud2VibSIsICIwNjUwNWFhZGU2NjQ3YzU4M2M4ZTAwYTJmNTgyMjY2ZiIgfSwKICAgICB7
ICJ2cDkwLTItMDgtdGlsZS00eDQud2VibSIsICI4NWMyMjk5ODkyNDYwZDc2ZTJjNjAwNTAyZDUy
YmZlMiIgfSwKLSAgICB7IE5VTEwsIE5VTEwgfQorICAgIHsgbnVsbHB0ciwgbnVsbHB0ciB9CiAg
IH07CiAKICAgRGVjb2RlRmlsZXMoZmlsZXMpOwogfQogI2VuZGlmICAvLyBDT05GSUdfV0VCTV9J
TwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChTeW5jaHJvbm91cywgVlB4V29ya2VyVGhyZWFk
VGVzdCwgOjp0ZXN0aW5nOjpCb29sKCkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFN5bmNo
cm9ub3VzLCBWUHhXb3JrZXJUaHJlYWRUZXN0LCA6OnRlc3Rpbmc6OkJvb2woKSk7CiAKIH0gIC8v
IG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZweF9zY2FsZV90ZXN0LmNj
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L3ZweF9zY2FsZV90ZXN0LmNjCmluZGV4IDA1N2EyYTI5NWY0NGZh
YTI0Y2JkY2YzMjMyNzg3M2ExNTI3YmE5MjkuLjdlZWE0MzdmYzgyNTk0ODJjNjEwMGVmYzAzY2Y0
OTlhY2VhZjJjOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cHhfc2NhbGVfdGVzdC5j
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnB4X3NjYWxlX3Rlc3QuY2MKQEAgLTYyLDggKzYyLDgg
QEAgY2xhc3MgRXh0ZW5kQm9yZGVyVGVzdAogCiBURVNUX1AoRXh0ZW5kQm9yZGVyVGVzdCwgRXh0
ZW5kQm9yZGVyKSB7IEFTU0VSVF9OT19GQVRBTF9GQUlMVVJFKFJ1blRlc3QoKSk7IH0KIAotSU5T
VEFOVElBVEVfVEVTVF9DQVNFX1AoQywgRXh0ZW5kQm9yZGVyVGVzdCwKLSAgICAgICAgICAgICAg
ICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZwOF95djEyX2V4dGVuZF9mcmFtZV9ib3JkZXJz
X2MpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDLCBFeHRlbmRCb3JkZXJUZXN0LAorICAg
ICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6VmFsdWVzKHZwOF95djEyX2V4dGVuZF9m
cmFtZV9ib3JkZXJzX2MpKTsKIAogY2xhc3MgQ29weUZyYW1lVGVzdCA6IHB1YmxpYyBWcHhTY2Fs
ZUJhc2UsCiAgICAgICAgICAgICAgICAgICAgICAgcHVibGljIDo6dGVzdGluZzo6VGVzdFdpdGhQ
YXJhbTxDb3B5RnJhbWVGdW5jPiB7CkBAIC05NCw4ICs5NCw4IEBAIGNsYXNzIENvcHlGcmFtZVRl
c3QgOiBwdWJsaWMgVnB4U2NhbGVCYXNlLAogCiBURVNUX1AoQ29weUZyYW1lVGVzdCwgQ29weUZy
YW1lKSB7IEFTU0VSVF9OT19GQVRBTF9GQUlMVVJFKFJ1blRlc3QoKSk7IH0KIAotSU5TVEFOVElB
VEVfVEVTVF9DQVNFX1AoQywgQ29weUZyYW1lVGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAg
IDo6dGVzdGluZzo6VmFsdWVzKHZwOF95djEyX2NvcHlfZnJhbWVfYykpOworSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QKEMsIENvcHlGcmFtZVRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAg
Ojp0ZXN0aW5nOjpWYWx1ZXModnA4X3l2MTJfY29weV9mcmFtZV9jKSk7CiAKIH0gIC8vIG5hbWVz
cGFjZQogfSAgLy8gbmFtZXNwYWNlIGxpYnZweF90ZXN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3Rlc3QvdnB4X3RlbXBvcmFsX3N2Y19lbmNvZGVyLnNoIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZweF90
ZW1wb3JhbF9zdmNfZW5jb2Rlci5zaAppbmRleCA1ZTViYWM4ZmE2YWM3OTBjZmExYjNhMWIwMjE3
YzY5Mzk0NmYyNTM2Li42OWM3MzRkYWY4NGIwYTQ2ZTRlOGE5Y2YyNDZjNTQyYTI0YTc1M2YxIDEw
MDc1NQotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnB4X3RlbXBvcmFsX3N2Y19lbmNvZGVyLnNoCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGVzdC92cHhfdGVtcG9yYWxfc3ZjX2VuY29kZXIuc2gKQEAgLTU4LDE5
ICs1OCwxOSBAQCB2cHhfdHN2Y19lbmNvZGVyKCkgewogICAgICAgICAiJHtvdXRwdXRfZmlsZX0i
ICIke2NvZGVjfSIgIiR7WVVWX1JBV19JTlBVVF9XSURUSH0iIFwKICAgICAgICAgIiR7WVVWX1JB
V19JTlBVVF9IRUlHSFR9IiAiJHt0aW1lYmFzZV9udW19IiAiJHt0aW1lYmFzZV9kZW59IiBcCiAg
ICAgICAgICIke3NwZWVkfSIgIiR7ZnJhbWVfZHJvcF90aHJlc2h9IiAiJHtlcnJvcl9yZXNpbGll
bnR9IiAiJHt0aHJlYWRzfSIgXAotICAgICAgICAiJEAiICR7ZGV2bnVsbH0KKyAgICAgICAgIiRA
IiAke2Rldm51bGx9IHx8IHJldHVybiAxCiAgICAgICAjIFRlc3QgZm9yIHk0bSBpbnB1dC4KICAg
ICAgIGV2YWwgIiR7VlBYX1RFU1RfUFJFRklYfSIgIiR7ZW5jb2Rlcn0iICIke1k0TV83MjBQX0lO
UFVUfSIgXAogICAgICAgICAiJHtvdXRwdXRfZmlsZX0iICIke2NvZGVjfSIgIiR7WTRNXzcyMFBf
SU5QVVRfV0lEVEh9IiBcCiAgICAgICAgICIke1k0TV83MjBQX0lOUFVUX0hFSUdIVH0iICIke3Rp
bWViYXNlX251bX0iICIke3RpbWViYXNlX2Rlbl95NG19IiBcCiAgICAgICAgICIke3NwZWVkfSIg
IiR7ZnJhbWVfZHJvcF90aHJlc2h9IiAiJHtlcnJvcl9yZXNpbGllbnR9IiAiJHt0aHJlYWRzfSIg
XAotICAgICAgICAiJEAiICR7ZGV2bnVsbH0KKyAgICAgICAgIiRAIiAke2Rldm51bGx9IHx8IHJl
dHVybiAxCiAgICAgZWxzZQogICAgICAgZXZhbCAiJHtWUFhfVEVTVF9QUkVGSVh9IiAiJHtlbmNv
ZGVyfSIgIiR7WVVWX1JBV19JTlBVVH0iIFwKICAgICAgICAgIiR7b3V0cHV0X2ZpbGV9IiAiJHtj
b2RlY30iICIke1lVVl9SQVdfSU5QVVRfV0lEVEh9IiBcCiAgICAgICAgICIke1lVVl9SQVdfSU5Q
VVRfSEVJR0hUfSIgIiR7dGltZWJhc2VfbnVtfSIgIiR7dGltZWJhc2VfZGVufSIgXAogICAgICAg
ICAiJHtzcGVlZH0iICIke2ZyYW1lX2Ryb3BfdGhyZXNofSIgIiR7ZXJyb3JfcmVzaWxpZW50fSIg
IiR7dGhyZWFkc30iIFwKLSAgICAgICAgIiRAIiAiOCIgJHtkZXZudWxsfQorICAgICAgICAiJEAi
ICI4IiAke2Rldm51bGx9IHx8IHJldHVybiAxCiAgICAgZmkKICAgZG9uZQogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90ZXN0L3ZweGRlYy5zaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC92cHhkZWMuc2gK
aW5kZXggMDQ0YWE3ZTE2ZDBjODgwNmExY2MzOTUyMmFkMDk0NTk5YTMwMGFkNy4uMTk5ZmVhZTVm
M2YyYTc2NWVjMGM4ZDJhMGUzMDcwN2QyZWQ0YjU1NCAxMDA3NTUKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90
ZXN0L3ZweGRlYy5zaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnB4ZGVjLnNoCkBAIC04Niw3ICs4
Niw3IEBAIHZweGRlY192cDlfd2VibV9mcmFtZV9wYXJhbGxlbCgpIHsKICAgICAgWyAiJCh3ZWJt
X2lvX2F2YWlsYWJsZSkiID0gInllcyIgXTsgdGhlbgogICAgIGZvciB0aHJlYWRzIGluIDIgMyA0
IDUgNiA3IDg7IGRvCiAgICAgICB2cHhkZWMgIiR7VlA5X0ZQTV9XRUJNX0ZJTEV9IiAtLXN1bW1h
cnkgLS1ub2JsaXQgLS10aHJlYWRzPSR0aHJlYWRzIFwKLSAgICAgICAgLS1mcmFtZS1wYXJhbGxl
bAorICAgICAgICAtLWZyYW1lLXBhcmFsbGVsIHx8IHJldHVybiAxCiAgICAgZG9uZQogICBmaQog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3ZweGVuYy5zaCBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVz
dC92cHhlbmMuc2gKaW5kZXggZjk0ZTJlMDk0YTM3NzE1MTdjZjQ1OWUwNGY5MmQ0ZTQ4MDhiOTE1
Yi4uMTcyMzQ5YTJiMzI5NDY4NTdlMjhmYWY1NThhMzk4YWMwYjNjZjRkZCAxMDA3NTUKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90ZXN0L3ZweGVuYy5zaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QvdnB4ZW5jLnNo
CkBAIC0xMzEsNyArMTMxLDcgQEAgdnB4ZW5jX3ZwOF9pdmYoKSB7CiAgICAgICAtLWNvZGVjPXZw
OCBcCiAgICAgICAtLWxpbWl0PSIke1RFU1RfRlJBTUVTfSIgXAogICAgICAgLS1pdmYgXAotICAg
ICAgLS1vdXRwdXQ9IiR7b3V0cHV0fSIKKyAgICAgIC0tb3V0cHV0PSIke291dHB1dH0iIHx8IHJl
dHVybiAxCiAKICAgICBpZiBbICEgLWUgIiR7b3V0cHV0fSIgXTsgdGhlbgogICAgICAgZWxvZyAi
T3V0cHV0IGZpbGUgZG9lcyBub3QgZXhpc3QuIgpAQCAtMTQ3LDcgKzE0Nyw3IEBAIHZweGVuY192
cDhfd2VibSgpIHsKICAgICB2cHhlbmMgJCh5dXZfaW5wdXRfaGFudHJvX2NvbGxhZ2UpIFwKICAg
ICAgIC0tY29kZWM9dnA4IFwKICAgICAgIC0tbGltaXQ9IiR7VEVTVF9GUkFNRVN9IiBcCi0gICAg
ICAtLW91dHB1dD0iJHtvdXRwdXR9IgorICAgICAgLS1vdXRwdXQ9IiR7b3V0cHV0fSIgfHwgcmV0
dXJuIDEKIAogICAgIGlmIFsgISAtZSAiJHtvdXRwdXR9IiBdOyB0aGVuCiAgICAgICBlbG9nICJP
dXRwdXQgZmlsZSBkb2VzIG5vdCBleGlzdC4iCkBAIC0xNjIsNyArMTYyLDggQEAgdnB4ZW5jX3Zw
OF93ZWJtX3J0KCkgewogICAgIGxvY2FsIG91dHB1dD0iJHtWUFhfVEVTVF9PVVRQVVRfRElSfS92
cDhfcnQud2VibSIKICAgICB2cHhlbmMgJCh5dXZfaW5wdXRfaGFudHJvX2NvbGxhZ2UpIFwKICAg
ICAgICQodnB4ZW5jX3J0X3BhcmFtcyB2cDgpIFwKLSAgICAgIC0tb3V0cHV0PSIke291dHB1dH0i
CisgICAgICAtLW91dHB1dD0iJHtvdXRwdXR9IiB8fCByZXR1cm4gMQorCiAgICAgaWYgWyAhIC1l
ICIke291dHB1dH0iIF07IHRoZW4KICAgICAgIGVsb2cgIk91dHB1dCBmaWxlIGRvZXMgbm90IGV4
aXN0LiIKICAgICAgIHJldHVybiAxCkBAIC0xNzgsNyArMTc5LDcgQEAgdnB4ZW5jX3ZwOF93ZWJt
XzJwYXNzKCkgewogICAgICAgLS1jb2RlYz12cDggXAogICAgICAgLS1saW1pdD0iJHtURVNUX0ZS
QU1FU30iIFwKICAgICAgIC0tb3V0cHV0PSIke291dHB1dH0iIFwKLSAgICAgIC0tcGFzc2VzPTIK
KyAgICAgIC0tcGFzc2VzPTIgfHwgcmV0dXJuIDEKIAogICAgIGlmIFsgISAtZSAiJHtvdXRwdXR9
IiBdOyB0aGVuCiAgICAgICBlbG9nICJPdXRwdXQgZmlsZSBkb2VzIG5vdCBleGlzdC4iCkBAIC0x
OTksNyArMjAwLDcgQEAgdnB4ZW5jX3ZwOF93ZWJtX2xhZzEwX2ZyYW1lczIwKCkgewogICAgICAg
LS1sYWctaW4tZnJhbWVzPSIke2xhZ19mcmFtZXN9IiBcCiAgICAgICAtLW91dHB1dD0iJHtvdXRw
dXR9IiBcCiAgICAgICAtLWF1dG8tYWx0LXJlZj0xIFwKLSAgICAgIC0tcGFzc2VzPTIKKyAgICAg
IC0tcGFzc2VzPTIgfHwgcmV0dXJuIDEKIAogICAgIGlmIFsgISAtZSAiJHtvdXRwdXR9IiBdOyB0
aGVuCiAgICAgICBlbG9nICJPdXRwdXQgZmlsZSBkb2VzIG5vdCBleGlzdC4iCkBAIC0yMTUsNyAr
MjE2LDcgQEAgdnB4ZW5jX3ZwOF9pdmZfcGlwZWRfaW5wdXQoKSB7CiAgICAgICAtLWNvZGVjPXZw
OCBcCiAgICAgICAtLWxpbWl0PSIke1RFU1RfRlJBTUVTfSIgXAogICAgICAgLS1pdmYgXAotICAg
ICAgLS1vdXRwdXQ9IiR7b3V0cHV0fSIKKyAgICAgIC0tb3V0cHV0PSIke291dHB1dH0iIHx8IHJl
dHVybiAxCiAKICAgICBpZiBbICEgLWUgIiR7b3V0cHV0fSIgXTsgdGhlbgogICAgICAgZWxvZyAi
T3V0cHV0IGZpbGUgZG9lcyBub3QgZXhpc3QuIgpAQCAtMjMzLDcgKzIzNCw3IEBAIHZweGVuY192
cDlfaXZmKCkgewogICAgICAgLS1saW1pdD0iJHtURVNUX0ZSQU1FU30iIFwKICAgICAgICIke3Bh
c3Nlc30iIFwKICAgICAgIC0taXZmIFwKLSAgICAgIC0tb3V0cHV0PSIke291dHB1dH0iCisgICAg
ICAtLW91dHB1dD0iJHtvdXRwdXR9IiB8fCByZXR1cm4gMQogCiAgICAgaWYgWyAhIC1lICIke291
dHB1dH0iIF07IHRoZW4KICAgICAgIGVsb2cgIk91dHB1dCBmaWxlIGRvZXMgbm90IGV4aXN0LiIK
QEAgLTI1MSw3ICsyNTIsNyBAQCB2cHhlbmNfdnA5X3dlYm0oKSB7CiAgICAgICAtLWNvZGVjPXZw
OSBcCiAgICAgICAtLWxpbWl0PSIke1RFU1RfRlJBTUVTfSIgXAogICAgICAgIiR7cGFzc2VzfSIg
XAotICAgICAgLS1vdXRwdXQ9IiR7b3V0cHV0fSIKKyAgICAgIC0tb3V0cHV0PSIke291dHB1dH0i
IHx8IHJldHVybiAxCiAKICAgICBpZiBbICEgLWUgIiR7b3V0cHV0fSIgXTsgdGhlbgogICAgICAg
ZWxvZyAiT3V0cHV0IGZpbGUgZG9lcyBub3QgZXhpc3QuIgpAQCAtMjY2LDcgKzI2Nyw3IEBAIHZw
eGVuY192cDlfd2VibV9ydCgpIHsKICAgICBsb2NhbCBvdXRwdXQ9IiR7VlBYX1RFU1RfT1VUUFVU
X0RJUn0vdnA5X3J0LndlYm0iCiAgICAgdnB4ZW5jICQoeXV2X2lucHV0X2hhbnRyb19jb2xsYWdl
KSBcCiAgICAgICAkKHZweGVuY19ydF9wYXJhbXMgdnA5KSBcCi0gICAgICAtLW91dHB1dD0iJHtv
dXRwdXR9IgorICAgICAgLS1vdXRwdXQ9IiR7b3V0cHV0fSIgfHwgcmV0dXJuIDEKIAogICAgIGlm
IFsgISAtZSAiJHtvdXRwdXR9IiBdOyB0aGVuCiAgICAgICBlbG9nICJPdXRwdXQgZmlsZSBkb2Vz
IG5vdCBleGlzdC4iCkBAIC0yOTAsNyArMjkxLDcgQEAgdnB4ZW5jX3ZwOV93ZWJtX3J0X211bHRp
dGhyZWFkX3RpbGVkKCkgewogICAgICAgICAgICQodnB4ZW5jX3J0X3BhcmFtcyB2cDkpIFwKICAg
ICAgICAgICAtLXRocmVhZHM9JHt0aHJlYWRzfSBcCiAgICAgICAgICAgLS10aWxlLWNvbHVtbnM9
JHt0aWxlX2NvbHN9IFwKLSAgICAgICAgICAtLW91dHB1dD0iJHtvdXRwdXR9IgorICAgICAgICAg
IC0tb3V0cHV0PSIke291dHB1dH0iIHx8IHJldHVybiAxCiAKICAgICAgICAgaWYgWyAhIC1lICIk
e291dHB1dH0iIF07IHRoZW4KICAgICAgICAgICBlbG9nICJPdXRwdXQgZmlsZSBkb2VzIG5vdCBl
eGlzdC4iCkBAIC0zMTgsNyArMzE5LDggQEAgdnB4ZW5jX3ZwOV93ZWJtX3J0X211bHRpdGhyZWFk
X3RpbGVkX2ZyYW1lcGFyYWxsZWwoKSB7CiAgICAgICAgICAgLS10aHJlYWRzPSR7dGhyZWFkc30g
XAogICAgICAgICAgIC0tdGlsZS1jb2x1bW5zPSR7dGlsZV9jb2xzfSBcCiAgICAgICAgICAgLS1m
cmFtZS1wYXJhbGxlbD0xIFwKLSAgICAgICAgICAtLW91dHB1dD0iJHtvdXRwdXR9IgorICAgICAg
ICAgIC0tb3V0cHV0PSIke291dHB1dH0iIHx8IHJldHVybiAxCisKICAgICAgICAgaWYgWyAhIC1l
ICIke291dHB1dH0iIF07IHRoZW4KICAgICAgICAgICBlbG9nICJPdXRwdXQgZmlsZSBkb2VzIG5v
dCBleGlzdC4iCiAgICAgICAgICAgcmV0dXJuIDEKQEAgLTMzNyw3ICszMzksNyBAQCB2cHhlbmNf
dnA5X3dlYm1fMnBhc3MoKSB7CiAgICAgICAtLWNvZGVjPXZwOSBcCiAgICAgICAtLWxpbWl0PSIk
e1RFU1RfRlJBTUVTfSIgXAogICAgICAgLS1vdXRwdXQ9IiR7b3V0cHV0fSIgXAotICAgICAgLS1w
YXNzZXM9MgorICAgICAgLS1wYXNzZXM9MiB8fCByZXR1cm4gMQogCiAgICAgaWYgWyAhIC1lICIk
e291dHB1dH0iIF07IHRoZW4KICAgICAgIGVsb2cgIk91dHB1dCBmaWxlIGRvZXMgbm90IGV4aXN0
LiIKQEAgLTM1Niw3ICszNTgsNyBAQCB2cHhlbmNfdnA5X2l2Zl9sb3NzbGVzcygpIHsKICAgICAg
IC0taXZmIFwKICAgICAgIC0tb3V0cHV0PSIke291dHB1dH0iIFwKICAgICAgICIke3Bhc3Nlc30i
IFwKLSAgICAgIC0tbG9zc2xlc3M9MQorICAgICAgLS1sb3NzbGVzcz0xIHx8IHJldHVybiAxCiAK
ICAgICBpZiBbICEgLWUgIiR7b3V0cHV0fSIgXTsgdGhlbgogICAgICAgZWxvZyAiT3V0cHV0IGZp
bGUgZG9lcyBub3QgZXhpc3QuIgpAQCAtMzc2LDcgKzM3OCw3IEBAIHZweGVuY192cDlfaXZmX21p
bnEwX21heHEwKCkgewogICAgICAgLS1vdXRwdXQ9IiR7b3V0cHV0fSIgXAogICAgICAgIiR7cGFz
c2VzfSIgXAogICAgICAgLS1taW4tcT0wIFwKLSAgICAgIC0tbWF4LXE9MAorICAgICAgLS1tYXgt
cT0wIHx8IHJldHVybiAxCiAKICAgICBpZiBbICEgLWUgIiR7b3V0cHV0fSIgXTsgdGhlbgogICAg
ICAgZWxvZyAiT3V0cHV0IGZpbGUgZG9lcyBub3QgZXhpc3QuIgpAQCAtMzk4LDcgKzQwMCw3IEBA
IHZweGVuY192cDlfd2VibV9sYWcxMF9mcmFtZXMyMCgpIHsKICAgICAgIC0tbGFnLWluLWZyYW1l
cz0iJHtsYWdfZnJhbWVzfSIgXAogICAgICAgLS1vdXRwdXQ9IiR7b3V0cHV0fSIgXAogICAgICAg
IiR7cGFzc2VzfSIgXAotICAgICAgLS1hdXRvLWFsdC1yZWY9MQorICAgICAgLS1hdXRvLWFsdC1y
ZWY9MSB8fCByZXR1cm4gMQogCiAgICAgaWYgWyAhIC1lICIke291dHB1dH0iIF07IHRoZW4KICAg
ICAgIGVsb2cgIk91dHB1dCBmaWxlIGRvZXMgbm90IGV4aXN0LiIKQEAgLTQxNyw3ICs0MTksNyBA
QCB2cHhlbmNfdnA5X3dlYm1fbm9uX3NxdWFyZV9wYXIoKSB7CiAgICAgICAtLWNvZGVjPXZwOSBc
CiAgICAgICAtLWxpbWl0PSIke1RFU1RfRlJBTUVTfSIgXAogICAgICAgIiR7cGFzc2VzfSIgXAot
ICAgICAgLS1vdXRwdXQ9IiR7b3V0cHV0fSIKKyAgICAgIC0tb3V0cHV0PSIke291dHB1dH0iIHx8
IHJldHVybiAxCiAKICAgICBpZiBbICEgLWUgIiR7b3V0cHV0fSIgXTsgdGhlbgogICAgICAgZWxv
ZyAiT3V0cHV0IGZpbGUgZG9lcyBub3QgZXhpc3QuIgpAQCAtNDQzLDcgKzQ0NSw3IEBAIHZweGVu
Y192cDlfd2VibV9zaGFycG5lc3MoKSB7CiAgICAgICAgIC0tZW5kLXVzYWdlPXEgXAogICAgICAg
ICAtLWNxLWxldmVsPTQwIFwKICAgICAgICAgLS1vdXRwdXQ9IiR7b3V0cHV0fSIgXAotICAgICAg
ICAiJHtwYXNzZXN9IgorICAgICAgICAiJHtwYXNzZXN9IiB8fCByZXR1cm4gMQogCiAgICAgICBp
ZiBbICEgLWUgIiR7b3V0cHV0fSIgXTsgdGhlbgogICAgICAgICBlbG9nICJPdXRwdXQgZmlsZSBk
b2VzIG5vdCBleGlzdC4iCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QveTRtX3Rlc3QuY2Mg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rlc3QveTRtX3Rlc3QuY2MKaW5kZXggNzZkMDMzZDUyYTcxMjBkOWI2MGE2
MWU0YmNmNzhlOGNjMmY4OGU2ZS4uODI3MjI2M2Y2NmE4ODhmM2U0Zjg4YTRkMDM1MjRjZGYzMzA1
MTRiNCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90ZXN0L3k0bV90ZXN0LmNjCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdGVzdC95NG1fdGVzdC5jYwpAQCAtOTAsNyArOTAsNyBAQCBjbGFzcyBZNG1WaWRlb1Nv
dXJjZVRlc3QgOiBwdWJsaWMgOjp0ZXN0aW5nOjpUZXN0V2l0aFBhcmFtPFk0bVRlc3RQYXJhbT4s
CiAKICAgLy8gQ2hlY2tzIHk0bSBoZWFkZXIgaW5mb3JtYXRpb24KICAgdm9pZCBIZWFkZXJDaGVj
a3ModW5zaWduZWQgaW50IGJpdF9kZXB0aCwgdnB4X2ltZ19mbXRfdCBmbXQpIHsKLSAgICBBU1NF
UlRfVFJVRShpbnB1dF9maWxlXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoaW5wdXRfZmlsZV8s
IG51bGxwdHIpOwogICAgIEFTU0VSVF9FUSh5NG1fLnBpY193LCAoaW50KWtXaWR0aCk7CiAgICAg
QVNTRVJUX0VRKHk0bV8ucGljX2gsIChpbnQpa0hlaWdodCk7CiAgICAgQVNTRVJUX0VRKGltZygp
LT5kX3csIGtXaWR0aCk7CkBAIC0xMTYsNyArMTE2LDcgQEAgY2xhc3MgWTRtVmlkZW9Tb3VyY2VU
ZXN0IDogcHVibGljIDo6dGVzdGluZzo6VGVzdFdpdGhQYXJhbTxZNG1UZXN0UGFyYW0+LAogCiAg
IC8vIENoZWNrcyBNRDUgb2YgdGhlIHJhdyBmcmFtZSBkYXRhCiAgIHZvaWQgTWQ1Q2hlY2soY29u
c3Qgc3RyaW5nICZleHBlY3RlZF9tZDUpIHsKLSAgICBBU1NFUlRfVFJVRShpbnB1dF9maWxlXyAh
PSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoaW5wdXRfZmlsZV8sIG51bGxwdHIpOwogICAgIGxpYnZw
eF90ZXN0OjpNRDUgbWQ1OwogICAgIGZvciAodW5zaWduZWQgaW50IGkgPSBzdGFydF87IGkgPCBs
aW1pdF87IGkrKykgewogICAgICAgbWQ1LkFkZChpbWcoKSk7CkBAIC0xMzMsMTYgKzEzMywxNiBA
QCBURVNUX1AoWTRtVmlkZW9Tb3VyY2VUZXN0LCBTb3VyY2VUZXN0KSB7CiAgIE1kNUNoZWNrKHQu
bWQ1cmF3KTsKIH0KIAotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoQywgWTRtVmlkZW9Tb3VyY2VU
ZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrWTRtVGVz
dFZlY3RvcnMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDLCBZNG1WaWRlb1NvdXJjZVRl
c3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXNJbihrWTRtVGVz
dFZlY3RvcnMpKTsKIAogY2xhc3MgWTRtVmlkZW9Xcml0ZVRlc3QgOiBwdWJsaWMgWTRtVmlkZW9T
b3VyY2VUZXN0IHsKICBwcm90ZWN0ZWQ6Ci0gIFk0bVZpZGVvV3JpdGVUZXN0KCkgOiB0bXBmaWxl
XyhOVUxMKSB7fQorICBZNG1WaWRlb1dyaXRlVGVzdCgpIDogdG1wZmlsZV8obnVsbHB0cikge30K
IAogICB2aXJ0dWFsIH5ZNG1WaWRlb1dyaXRlVGVzdCgpIHsKICAgICBkZWxldGUgdG1wZmlsZV87
Ci0gICAgaW5wdXRfZmlsZV8gPSBOVUxMOworICAgIGlucHV0X2ZpbGVfID0gbnVsbHB0cjsKICAg
fQogCiAgIHZvaWQgUmVwbGFjZUlucHV0RmlsZShGSUxFICppbnB1dF9maWxlKSB7CkBAIC0xNTUs
MTEgKzE1NSwxMSBAQCBjbGFzcyBZNG1WaWRlb1dyaXRlVGVzdCA6IHB1YmxpYyBZNG1WaWRlb1Nv
dXJjZVRlc3QgewogCiAgIC8vIFdyaXRlcyBvdXQgYSB5NG0gZmlsZSBhbmQgdGhlbiByZWFkcyBp
dCBiYWNrCiAgIHZvaWQgV3JpdGVZNG1BbmRSZWFkQmFjaygpIHsKLSAgICBBU1NFUlRfVFJVRShp
bnB1dF9maWxlXyAhPSBOVUxMKTsKKyAgICBBU1NFUlRfTkUoaW5wdXRfZmlsZV8sIG51bGxwdHIp
OwogICAgIGNoYXIgYnVmW1k0TV9CVUZGRVJfU0laRV0gPSB7IDAgfTsKICAgICBjb25zdCBzdHJ1
Y3QgVnB4UmF0aW9uYWwgZnJhbWVyYXRlID0geyB5NG1fLmZwc19uLCB5NG1fLmZwc19kIH07CiAg
ICAgdG1wZmlsZV8gPSBuZXcgbGlidnB4X3Rlc3Q6OlRlbXBPdXRGaWxlOwotICAgIEFTU0VSVF9U
UlVFKHRtcGZpbGVfLT5maWxlKCkgIT0gTlVMTCk7CisgICAgQVNTRVJUX05FKHRtcGZpbGVfLT5m
aWxlKCksIG51bGxwdHIpOwogICAgIHk0bV93cml0ZV9maWxlX2hlYWRlcihidWYsIHNpemVvZihi
dWYpLCBrV2lkdGgsIGtIZWlnaHQsICZmcmFtZXJhdGUsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHk0bV8udnB4X2ZtdCwgeTRtXy5iaXRfZGVwdGgpOwogICAgIGZwdXRzKGJ1ZiwgdG1wZmls
ZV8tPmZpbGUoKSk7CkBAIC0xODYsNiArMTg2LDU3IEBAIFRFU1RfUChZNG1WaWRlb1dyaXRlVGVz
dCwgV3JpdGVUZXN0KSB7CiAgIE1kNUNoZWNrKHQubWQ1cmF3KTsKIH0KIAotSU5TVEFOVElBVEVf
VEVTVF9DQVNFX1AoQywgWTRtVmlkZW9Xcml0ZVRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAg
ICA6OnRlc3Rpbmc6OlZhbHVlc0luKGtZNG1UZXN0VmVjdG9ycykpOworSU5TVEFOVElBVEVfVEVT
VF9TVUlURV9QKEMsIFk0bVZpZGVvV3JpdGVUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAg
IDo6dGVzdGluZzo6VmFsdWVzSW4oa1k0bVRlc3RWZWN0b3JzKSk7CisKK3N0YXRpYyBjb25zdCBj
aGFyIGtZNE1SZWd1bGFySGVhZGVyW10gPQorICAgICJZVVY0TVBFRzIgVzQgSDQgRjMwOjEgSXAg
QTA6MCBDNDIwanBlZyBYWVNDU1M9NDIwSlBFR1xuIgorICAgICJGUkFNRVxuIgorICAgICIwMTIz
NDU2Nzg5MTIzNDU2MDEyMzAxMjMiOworCitURVNUKFk0TUhlYWRlclRlc3QsIFJlZ3VsYXJIZWFk
ZXIpIHsKKyAgbGlidnB4X3Rlc3Q6OlRlbXBPdXRGaWxlIGY7CisgIGZ3cml0ZShrWTRNUmVndWxh
ckhlYWRlciwgMSwgc2l6ZW9mKGtZNE1SZWd1bGFySGVhZGVyKSwgZi5maWxlKCkpOworICBmZmx1
c2goZi5maWxlKCkpOworICBFWFBFQ1RfRVEoMCwgZnNlZWsoZi5maWxlKCksIDAsIDApKTsKKwor
ICB5NG1faW5wdXQgeTRtOworICBFWFBFQ1RfRVEoeTRtX2lucHV0X29wZW4oJnk0bSwgZi5maWxl
KCksIC8qc2tpcF9idWZmZXI9Ki9OVUxMLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgLypu
dW1fc2tpcD0qLzAsIC8qb25seV80MjA9Ki8wKSwKKyAgICAgICAgICAgIDApOworICBFWFBFQ1Rf
RVEoeTRtLnBpY193LCA0KTsKKyAgRVhQRUNUX0VRKHk0bS5waWNfaCwgNCk7CisgIEVYUEVDVF9F
USh5NG0uZnBzX24sIDMwKTsKKyAgRVhQRUNUX0VRKHk0bS5mcHNfZCwgMSk7CisgIEVYUEVDVF9F
USh5NG0uaW50ZXJsYWNlLCAncCcpOworICBFWFBFQ1RfRVEoc3RyY21wKCI0MjBqcGVnIiwgeTRt
LmNocm9tYV90eXBlKSwgMCk7CisgIHk0bV9pbnB1dF9jbG9zZSgmeTRtKTsKK30KKworLy8gVGVz
dGluZyB0aGF0IGhlYWRlcnMgb3ZlciAxMDAgY2hhcmFjdGVycyBjYW4gYmUgcGFyc2VkLgorc3Rh
dGljIGNvbnN0IGNoYXIga1k0TUxvbmdIZWFkZXJbXSA9CisgICAgIllVVjRNUEVHMiBXNCBINCBG
MzA6MSBJcCBBMDowIEM0MjBqcGVnIFhZU0NTUz00MjBKUEVHICIKKyAgICAiWENPTE9SUkFOR0U9
TElNSVRFRCBYU09NRV9VTktOT1dOX01FVEFEQVRBIFhPVEhFUl9VTktOT1dOX01FVEFEQVRBXG4i
CisgICAgIkZSQU1FXG4iCisgICAgIjAxMjM0NTY3ODkxMjM0NTYwMTIzMDEyMyI7CisKK1RFU1Qo
WTRNSGVhZGVyVGVzdCwgTG9uZ0hlYWRlcikgeworICBsaWJ2cHhfdGVzdDo6VGVtcE91dEZpbGUg
ZjsKKyAgZndyaXRlKGtZNE1Mb25nSGVhZGVyLCAxLCBzaXplb2Yoa1k0TUxvbmdIZWFkZXIpLCBm
LmZpbGUoKSk7CisgIGZmbHVzaChmLmZpbGUoKSk7CisgIEVYUEVDVF9FUShmc2VlayhmLmZpbGUo
KSwgMCwgMCksIDApOworCisgIHk0bV9pbnB1dCB5NG07CisgIEVYUEVDVF9FUSh5NG1faW5wdXRf
b3BlbigmeTRtLCBmLmZpbGUoKSwgLypza2lwX2J1ZmZlcj0qL05VTEwsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKm51bV9za2lwPSovMCwgLypvbmx5XzQyMD0qLzApLAorICAgICAgICAg
ICAgMCk7CisgIEVYUEVDVF9FUSh5NG0ucGljX3csIDQpOworICBFWFBFQ1RfRVEoeTRtLnBpY19o
LCA0KTsKKyAgRVhQRUNUX0VRKHk0bS5mcHNfbiwgMzApOworICBFWFBFQ1RfRVEoeTRtLmZwc19k
LCAxKTsKKyAgRVhQRUNUX0VRKHk0bS5pbnRlcmxhY2UsICdwJyk7CisgIEVYUEVDVF9FUShzdHJj
bXAoIjQyMGpwZWciLCB5NG0uY2hyb21hX3R5cGUpLCAwKTsKKyAgeTRtX2lucHV0X2Nsb3NlKCZ5
NG0pOworfQorCiB9ICAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC95
dXZfdGVtcG9yYWxfZmlsdGVyX3Rlc3QuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rlc3QveXV2X3RlbXBvcmFs
X2ZpbHRlcl90ZXN0LmNjCmluZGV4IDhmM2M1OGIwMzgzNGMzZDAzMzYzNzcxNWFlYzE1YjBhNWVi
M2YwOWUuLmNmZGM4OGQ4OTZmOGMyZDBjYzU1NWMwNzdmNzcyN2VjMmQ1Y2QzNTAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGVzdC95dXZfdGVtcG9yYWxfZmlsdGVyX3Rlc3QuY2MKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90ZXN0L3l1dl90ZW1wb3JhbF9maWx0ZXJfdGVzdC5jYwpAQCAtNjc3LDcgKzY3Nyw3
IEBAIFRFU1RfUChZVVZUZW1wb3JhbEZpbHRlclRlc3QsIERJU0FCTEVEX1NwZWVkKSB7CiBXUkFQ
X0hJR0hCRF9GVU5DKHZwOV9oaWdoYmRfYXBwbHlfdGVtcG9yYWxfZmlsdGVyX2MsIDEwKTsKIFdS
QVBfSElHSEJEX0ZVTkModnA5X2hpZ2hiZF9hcHBseV90ZW1wb3JhbF9maWx0ZXJfYywgMTIpOwog
Ci1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCgKICAg
ICBDLCBZVVZUZW1wb3JhbEZpbHRlclRlc3QsCiAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoCiAgICAg
ICAgIFRlbXBvcmFsRmlsdGVyV2l0aEJkKCZ3cmFwX3ZwOV9oaWdoYmRfYXBwbHlfdGVtcG9yYWxf
ZmlsdGVyX2NfMTAsIDEwKSwKQEAgLTY4Niw3ICs2ODYsNyBAQCBJTlNUQU5USUFURV9URVNUX0NB
U0VfUCgKIFdSQVBfSElHSEJEX0ZVTkModnA5X2hpZ2hiZF9hcHBseV90ZW1wb3JhbF9maWx0ZXJf
c3NlNF8xLCAxMCk7CiBXUkFQX0hJR0hCRF9GVU5DKHZwOV9oaWdoYmRfYXBwbHlfdGVtcG9yYWxf
ZmlsdGVyX3NzZTRfMSwgMTIpOwogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUCgKK0lOU1RBTlRJ
QVRFX1RFU1RfU1VJVEVfUCgKICAgICBTU0U0XzEsIFlVVlRlbXBvcmFsRmlsdGVyVGVzdCwKICAg
ICA6OnRlc3Rpbmc6OlZhbHVlcygKICAgICAgICAgVGVtcG9yYWxGaWx0ZXJXaXRoQmQoJndyYXBf
dnA5X2hpZ2hiZF9hcHBseV90ZW1wb3JhbF9maWx0ZXJfc3NlNF8xXzEwLApAQCAtNjk1LDE0ICs2
OTUsMTQgQEAgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDEyKSkpOwogI2VuZGlmICAvLyBIQVZFX1NTRTRfMQogI2Vsc2UKLUlOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QKAorSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKAogICAgIEMsIFlVVlRlbXBv
cmFsRmlsdGVyVGVzdCwKICAgICA6OnRlc3Rpbmc6OlZhbHVlcyhUZW1wb3JhbEZpbHRlcldpdGhC
ZCgmdnA5X2FwcGx5X3RlbXBvcmFsX2ZpbHRlcl9jLCA4KSkpOwogCiAjaWYgSEFWRV9TU0U0XzEK
LUlOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKFNTRTRfMSwgWVVWVGVtcG9yYWxGaWx0ZXJUZXN0LAot
ICAgICAgICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjpWYWx1ZXMoVGVtcG9yYWxGaWx0ZXJX
aXRoQmQoCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZwOV9hcHBseV90ZW1wb3JhbF9m
aWx0ZXJfc3NlNF8xLCA4KSkpOworSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QKFNTRTRfMSwgWVVW
VGVtcG9yYWxGaWx0ZXJUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6
VmFsdWVzKFRlbXBvcmFsRmlsdGVyV2l0aEJkKAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAmdnA5X2FwcGx5X3RlbXBvcmFsX2ZpbHRlcl9zc2U0XzEsIDgpKSk7CiAjZW5kaWYgIC8vIEhB
VkVfU1NFNF8xCiAjZW5kaWYgIC8vIENPTkZJR19WUDlfSElHSEJJVERFUFRICiB9ICAvLyBuYW1l
c3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC95dXZfdmlkZW9fc291cmNlLmggYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3Rlc3QveXV2X3ZpZGVvX3NvdXJjZS5oCmluZGV4IDAyMGNlODAxZDkzODhjNjUx
MjI4ZTgyNDFkMDM2ZTQ1ZjMxZTQxOTcuLjM4M2FiOGYxYjFkZDg2ZjVhZDI5NDM2YTM1OWM5ZDQ1
Zjg3ZGQzOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGVzdC95dXZfdmlkZW9fc291cmNlLmgK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90ZXN0L3l1dl92aWRlb19zb3VyY2UuaApAQCAtODQsNiArODQsNyBA
QCBjbGFzcyBZVVZWaWRlb1NvdXJjZSA6IHB1YmxpYyBWaWRlb1NvdXJjZSB7CiAgICAgICBoZWln
aHRfID0gaGVpZ2h0OwogICAgICAgZm9ybWF0XyA9IGZvcm1hdDsKICAgICAgIHN3aXRjaCAoZm9y
bWF0KSB7CisgICAgICAgIGNhc2UgVlBYX0lNR19GTVRfTlYxMjoKICAgICAgICAgY2FzZSBWUFhf
SU1HX0ZNVF9JNDIwOiByYXdfc2l6ZV8gPSB3aWR0aCAqIGhlaWdodCAqIDMgLyAyOyBicmVhazsK
ICAgICAgICAgY2FzZSBWUFhfSU1HX0ZNVF9JNDIyOiByYXdfc2l6ZV8gPSB3aWR0aCAqIGhlaWdo
dCAqIDI7IGJyZWFrOwogICAgICAgICBjYXNlIFZQWF9JTUdfRk1UX0k0NDA6IHJhd19zaXplXyA9
IHdpZHRoICogaGVpZ2h0ICogMjsgYnJlYWs7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJk
X3BhcnR5L2dvb2dsZXRlc3QvUkVBRE1FLmxpYnZweCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkv
Z29vZ2xldGVzdC9SRUFETUUubGlidnB4CmluZGV4IDQ5MDA1ZGRhYzk4ZWFjZDM2ZWM3ZDdjN2Y1
OGZkNjdiNDZiOGM4ZmMuLmVkNTVmYjA5ZjkzYjNlYmZiZGEyNjRlNmM2M2E2MjZhMzNhMTIwOWUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9SRUFETUUubGli
dnB4CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9SRUFETUUubGlidnB4
CkBAIC0xLDUgKzEsNSBAQAogVVJMOiBodHRwczovL2dpdGh1Yi5jb20vZ29vZ2xlL2dvb2dsZXRl
c3QuZ2l0Ci1WZXJzaW9uOiByZWxlYXNlLTEuOC4xCitWZXJzaW9uOiByZWxlYXNlLTEuMTAuMC0y
MjQtZzIzYjJhM2IxCiBMaWNlbnNlOiBCU0QKIExpY2Vuc2UgRmlsZTogTElDRU5TRQogCkBAIC0x
MywxNiArMTMsMTEgQEAgZ2VuZXJhdGlvbi4KIAogTG9jYWwgTW9kaWZpY2F0aW9uczoKIC0gUmVt
b3ZlIGV2ZXJ5dGhpbmcgYnV0OgotICBnb29nbGV0ZXN0LXJlbGVhc2UtMS44LjEvZ29vZ2xldGVz
dC8KLSAgIENIQU5HRVMKKyAgZ29vZ2xldGVzdC8KICAgIENPTlRSSUJVVE9SUwogICAgaW5jbHVk
ZQogICAgTElDRU5TRQogICAgUkVBRE1FLm1kCiAgICBzcmMKLQotLSBNYWtlIFdpdGhQYXJhbUlu
dGVyZmFjZTxUPjo6R2V0UGFyYW0gc3RhdGljIGluIG9yZGVyIHRvIGF2b2lkCi0gIGluaXRpYWxp
emF0aW9uIGlzc3VlcwotICBodHRwczovL2dpdGh1Yi5jb20vZ29vZ2xlL2dvb2dsZXRlc3QvcHVs
bC8xODMwCi0tIFVzZSB3Y3NsZW4oKSBpbnN0ZWFkIG9mIHN0ZDo6d2NzbGVuKCkKLSAgaHR0cHM6
Ly9naXRodWIuY29tL2dvb2dsZS9nb29nbGV0ZXN0L3B1bGwvMTg5OQorLSBFbmFibGUga0Vycm9y
T25Vbmluc3RhbnRpYXRlZFBhcmFtZXRlcml6ZWRUZXN0IGFuZAorICBrRXJyb3JPblVuaW5zdGFu
dGlhdGVkVHlwZVBhcmFtZXRlcml6ZWRUZXN0IGluIGd0ZXN0LmNjCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL0NIQU5HRVMgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Ro
aXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL0NIQU5HRVMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDA1NTIxMzI0MjEyYzkxMjg3ZDkyNDRkNDRiYWIzMDZkYjY2NGJhZGIuLjAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9w
YXJ0eS9nb29nbGV0ZXN0L3NyYy9DSEFOR0VTCisrKyAvZGV2L251bGwKQEAgLTEsMTU3ICswLDAg
QEAKLUNoYW5nZXMgZm9yIDEuNy4wOgotCi0qIE5ldyBmZWF0dXJlOiBkZWF0aCB0ZXN0cyBhcmUg
c3VwcG9ydGVkIG9uIE9wZW5CU0QgYW5kIGluIGlPUwotICBzaW11bGF0b3Igbm93LgotKiBOZXcg
ZmVhdHVyZTogR29vZ2xlIFRlc3Qgbm93IGltcGxlbWVudHMgYSBwcm90b2NvbCB0byBhbGxvdwot
ICBhIHRlc3QgcnVubmVyIHRvIGRldGVjdCB0aGF0IGEgdGVzdCBwcm9ncmFtIGhhcyBleGl0ZWQK
LSAgcHJlbWF0dXJlbHkgYW5kIHJlcG9ydCBpdCBhcyBhIGZhaWx1cmUgKGJlZm9yZSBpdCB3b3Vs
ZCBiZQotICBmYWxzZWx5IHJlcG9ydGVkIGFzIGEgc3VjY2VzcyBpZiB0aGUgZXhpdCBjb2RlIGlz
IDApLgotKiBOZXcgZmVhdHVyZTogVGVzdDo6UmVjb3JkUHJvcGVydHkoKSBjYW4gbm93IGJlIHVz
ZWQgb3V0c2lkZSBvZiB0aGUKLSAgbGlmZXNwYW4gb2YgYSB0ZXN0IG1ldGhvZCwgaW4gd2hpY2gg
Y2FzZSBpdCB3aWxsIGJlIGF0dHJpYnV0ZWQgdG8KLSAgdGhlIGN1cnJlbnQgdGVzdCBjYXNlIG9y
IHRoZSB0ZXN0IHByb2dyYW0gaW4gdGhlIFhNTCByZXBvcnQuCi0qIE5ldyBmZWF0dXJlIChwb3Rl
bnRpYWxseSBicmVha2luZyk6IC0tZ3Rlc3RfbGlzdF90ZXN0cyBub3cgcHJpbnRzCi0gIHRoZSB0
eXBlIHBhcmFtZXRlcnMgYW5kIHZhbHVlIHBhcmFtZXRlcnMgZm9yIGVhY2ggdGVzdC4KLSogSW1w
cm92ZW1lbnQ6IGNoYXIgcG9pbnRlcnMgYW5kIGNoYXIgYXJyYXlzIGFyZSBub3cgZXNjYXBlZCBw
cm9wZXJseQotICBpbiBmYWlsdXJlIG1lc3NhZ2VzLgotKiBJbXByb3ZlbWVudDogZmFpbHVyZSBz
dW1tYXJ5IGluIFhNTCByZXBvcnRzIG5vdyBpbmNsdWRlcyBmaWxlIGFuZAotICBsaW5lIGluZm9y
bWF0aW9uLgotKiBJbXByb3ZlbWVudDogdGhlIDx0ZXN0c3VpdGVzPiBYTUwgZWxlbWVudCBub3cg
aGFzIGEgdGltZXN0YW1wIGF0dHJpYnV0ZS4KLSogSW1wcm92ZW1lbnQ6IFdoZW4gLS1ndGVzdF9m
aWx0ZXIgaXMgc3BlY2lmaWVkLCBYTUwgcmVwb3J0IG5vdyBkb2Vzbid0Ci0gIGNvbnRhaW4gaW5m
b3JtYXRpb24gYWJvdXQgdGVzdHMgdGhhdCBhcmUgZmlsdGVyZWQgb3V0LgotKiBGaXhlZCB0aGUg
YnVnIHdoZXJlIGxvbmcgLS1ndGVzdF9maWx0ZXIgZmxhZyB2YWx1ZXMgYXJlIHRydW5jYXRlZCBp
bgotICBkZWF0aCB0ZXN0cy4KLSogUG90ZW50aWFsbHkgYnJlYWtpbmcgY2hhbmdlOiBSVU5fQUxM
X1RFU1RTKCkgaXMgbm93IGltcGxlbWVudGVkIGFzIGEKLSAgZnVuY3Rpb24gaW5zdGVhZCBvZiBh
IG1hY3JvIGluIG9yZGVyIHRvIHdvcmsgYmV0dGVyIHdpdGggQ2xhbmcuCi0qIENvbXBhdGliaWxp
dHkgZml4ZXMgd2l0aCBDKysgMTEgYW5kIHZhcmlvdXMgcGxhdGZvcm1zLgotKiBCdWcvd2Fybmlu
ZyBmaXhlcy4KLQotQ2hhbmdlcyBmb3IgMS42LjA6Ci0KLSogTmV3IGZlYXR1cmU6IEFERF9GQUlM
VVJFX0FUKCkgZm9yIHJlcG9ydGluZyBhIHRlc3QgZmFpbHVyZSBhdCB0aGUKLSAgZ2l2ZW4gc291
cmNlIGxvY2F0aW9uIC0tIHVzZWZ1bCBmb3Igd3JpdGluZyB0ZXN0aW5nIHV0aWxpdGllcy4KLSog
TmV3IGZlYXR1cmU6IHRoZSB1bml2ZXJzYWwgdmFsdWUgcHJpbnRlciBpcyBtb3ZlZCBmcm9tIEdv
b2dsZSBNb2NrCi0gIHRvIEdvb2dsZSBUZXN0LgotKiBOZXcgZmVhdHVyZTogdHlwZSBwYXJhbWV0
ZXJzIGFuZCB2YWx1ZSBwYXJhbWV0ZXJzIGFyZSByZXBvcnRlZCBpbgotICB0aGUgWE1MIHJlcG9y
dCBub3cuCi0qIEEgZ3Rlc3RfZGlzYWJsZV9wdGhyZWFkcyBDTWFrZSBvcHRpb24uCi0qIENvbG9y
ZWQgb3V0cHV0IHdvcmtzIGluIEdOVSBTY3JlZW4gc2Vzc2lvbnMgbm93LgotKiBQYXJhbWV0ZXJz
IG9mIHZhbHVlLXBhcmFtZXRlcml6ZWQgdGVzdHMgYXJlIG5vdyBwcmludGVkIGluIHRoZQotICB0
ZXh0dWFsIG91dHB1dC4KLSogRmFpbHVyZXMgZnJvbSBhZCBob2MgdGVzdCBhc3NlcnRpb25zIHJ1
biBiZWZvcmUgUlVOX0FMTF9URVNUUygpIGFyZQotICBub3cgY29ycmVjdGx5IHJlcG9ydGVkLgot
KiBBcmd1bWVudHMgb2YgQVNTRVJUX1hZIGFuZCBFWFBFQ1RfWFkgbm8gbG9uZ2VyIG5lZWQgdG8g
c3VwcG9ydCA8PCB0bwotICBvc3RyZWFtLgotKiBNb3JlIGNvbXBsZXRlIGhhbmRsaW5nIG9mIGV4
Y2VwdGlvbnMuCi0qIEdURVNUX0FTU0VSVF9YWSBjYW4gYmUgdXNlZCBpbnN0ZWFkIG9mIEFTU0VS
VF9YWSBpbiBjYXNlIHRoZSBsYXR0ZXIKLSAgbmFtZSBpcyBhbHJlYWR5IHVzZWQgYnkgYW5vdGhl
ciBsaWJyYXJ5LgotKiAtLWd0ZXN0X2NhdGNoX2V4Y2VwdGlvbnMgaXMgbm93IHRydWUgYnkgZGVm
YXVsdCwgYWxsb3dpbmcgYSB0ZXN0Ci0gIHByb2dyYW0gdG8gY29udGludWUgYWZ0ZXIgYW4gZXhj
ZXB0aW9uIGlzIHRocm93bi4KLSogVmFsdWUtcGFyYW1ldGVyaXplZCB0ZXN0IGZpeHR1cmVzIGNh
biBub3cgZGVyaXZlIGZyb20gVGVzdCBhbmQKLSAgV2l0aFBhcmFtSW50ZXJmYWNlPFQ+IHNlcGFy
YXRlbHksIGVhc2luZyBjb252ZXJzaW9uIG9mIGxlZ2FjeSB0ZXN0cy4KLSogRGVhdGggdGVzdCBt
ZXNzYWdlcyBhcmUgY2xlYXJseSBtYXJrZWQgdG8gbWFrZSB0aGVtIG1vcmUKLSAgZGlzdGluZ3Vp
c2hhYmxlIGZyb20gb3RoZXIgbWVzc2FnZXMuCi0qIENvbXBhdGliaWxpdHkgZml4ZXMgZm9yIEFu
ZHJvaWQsIEdvb2dsZSBOYXRpdmUgQ2xpZW50LCBNaW5HVywgSFAgVVgsCi0gIFBvd2VyUEMsIEx1
Y2lkIGF1dG90b29scywgbGliQ1N0ZCwgU3VuIEMrKywgQm9ybGFuZCBDKysgQnVpbGRlciAoQ29k
ZSBHZWFyKSwKLSAgSUJNIFhMIEMrKyAoVmlzdWFsIEFnZSBDKyspLCBhbmQgQysrMHguCi0qIEJ1
ZyBmaXhlcyBhbmQgaW1wbGVtZW50YXRpb24gY2xlYW4tdXBzLgotKiBQb3RlbnRpYWxseSBpbmNv
bXBhdGlibGUgY2hhbmdlczogZGlzYWJsZXMgdGhlIGhhcm1mdWwgJ21ha2UgaW5zdGFsbCcKLSAg
Y29tbWFuZCBpbiBhdXRvdG9vbHMuCi0KLUNoYW5nZXMgZm9yIDEuNS4wOgotCi0gKiBOZXcgZmVh
dHVyZTogYXNzZXJ0aW9ucyBjYW4gYmUgc2FmZWx5IGNhbGxlZCBpbiBtdWx0aXBsZSB0aHJlYWRz
Ci0gICB3aGVyZSB0aGUgcHRocmVhZHMgbGlicmFyeSBpcyBhdmFpbGFibGUuCi0gKiBOZXcgZmVh
dHVyZTogcHJlZGljYXRlcyB1c2VkIGluc2lkZSBFWFBFQ1RfVFJVRSgpIGFuZCBmcmllbmRzCi0g
ICBjYW4gbm93IGdlbmVyYXRlIGN1c3RvbSBmYWlsdXJlIG1lc3NhZ2VzLgotICogTmV3IGZlYXR1
cmU6IEdvb2dsZSBUZXN0IGNhbiBub3cgYmUgY29tcGlsZWQgYXMgYSBETEwuCi0gKiBOZXcgZmVh
dHVyZTogZnVzZWQgc291cmNlIGZpbGVzIGFyZSBpbmNsdWRlZC4KLSAqIE5ldyBmZWF0dXJlOiBw
cmludHMgaGVscCB3aGVuIGVuY291bnRlcmluZyB1bnJlY29nbml6ZWQgR29vZ2xlIFRlc3QgZmxh
Z3MuCi0gKiBFeHBlcmltZW50YWwgZmVhdHVyZTogQ01ha2UgYnVpbGQgc2NyaXB0IChyZXF1aXJl
cyBDTWFrZSAyLjYuNCspLgotICogRXhwZXJpbWVudGFsIGZlYXR1cmU6IHRoZSBQdW1wIHNjcmlw
dCBmb3IgbWV0YSBwcm9ncmFtbWluZy4KLSAqIGRvdWJsZSB2YWx1ZXMgc3RyZWFtZWQgdG8gYW4g
YXNzZXJ0aW9uIGFyZSBwcmludGVkIHdpdGggZW5vdWdoIHByZWNpc2lvbgotICAgdG8gZGlmZmVy
ZW50aWF0ZSBhbnkgdHdvIGRpZmZlcmVudCB2YWx1ZXMuCi0gKiBHb29nbGUgVGVzdCBub3cgd29y
a3Mgb24gU29sYXJpcyBhbmQgQUlYLgotICogQnVpbGQgYW5kIHRlc3Qgc2NyaXB0IGltcHJvdmVt
ZW50cy4KLSAqIEJ1ZyBmaXhlcyBhbmQgaW1wbGVtZW50YXRpb24gY2xlYW4tdXBzLgotCi0gUG90
ZW50aWFsbHkgYnJlYWtpbmcgY2hhbmdlczoKLQotICogU3RvcHBlZCBzdXBwb3J0aW5nIFZDKysg
Ny4xIHdpdGggZXhjZXB0aW9ucyBkaXNhYmxlZC4KLSAqIERyb3BwZWQgc3VwcG9ydCBmb3IgJ21h
a2UgaW5zdGFsbCcuCi0KLUNoYW5nZXMgZm9yIDEuNC4wOgotCi0gKiBOZXcgZmVhdHVyZTogdGhl
IGV2ZW50IGxpc3RlbmVyIEFQSQotICogTmV3IGZlYXR1cmU6IHRlc3Qgc2h1ZmZsaW5nCi0gKiBO
ZXcgZmVhdHVyZTogdGhlIFhNTCByZXBvcnQgZm9ybWF0IGlzIGNsb3NlciB0byBqdW5pdHJlcG9y
dCBhbmQgY2FuCi0gICBiZSBwYXJzZWQgYnkgSHVkc29uIG5vdy4KLSAqIE5ldyBmZWF0dXJlOiB3
aGVuIGEgdGVzdCBydW5zIHVuZGVyIFZpc3VhbCBTdHVkaW8sIGl0cyBmYWlsdXJlcyBhcmUKLSAg
IGludGVncmF0ZWQgaW4gdGhlIElERS4KLSAqIE5ldyBmZWF0dXJlOiAvTUQoZCkgdmVyc2lvbnMg
b2YgVkMrKyBwcm9qZWN0cy4KLSAqIE5ldyBmZWF0dXJlOiBlbGFwc2VkIHRpbWUgZm9yIHRoZSB0
ZXN0cyBpcyBwcmludGVkIGJ5IGRlZmF1bHQuCi0gKiBOZXcgZmVhdHVyZTogY29tZXMgd2l0aCBh
IFRSMSB0dXBsZSBpbXBsZW1lbnRhdGlvbiBzdWNoIHRoYXQgQm9vc3QKLSAgIGlzIG5vIGxvbmdl
ciBuZWVkZWQgZm9yIENvbWJpbmUoKS4KLSAqIE5ldyBmZWF0dXJlOiBFWFBFQ1RfREVBVEhfSUZf
U1VQUE9SVEVEIG1hY3JvIGFuZCBmcmllbmRzLgotICogTmV3IGZlYXR1cmU6IHRoZSBYY29kZSBw
cm9qZWN0IGNhbiBub3cgcHJvZHVjZSBzdGF0aWMgZ3Rlc3QKLSAgIGxpYnJhcmllcyBpbiBhZGRp
dGlvbiB0byBhIGZyYW1ld29yay4KLSAqIENvbXBhdGliaWxpdHkgZml4ZXMgZm9yIFNvbGFyaXMs
IEN5Z3dpbiwgbWluR1csIFdpbmRvd3MgTW9iaWxlLAotICAgU3ltYmlhbiwgZ2NjLCBhbmQgQysr
QnVpbGRlci4KLSAqIEJ1ZyBmaXhlcyBhbmQgaW1wbGVtZW50YXRpb24gY2xlYW4tdXBzLgotCi1D
aGFuZ2VzIGZvciAxLjMuMDoKLQotICogTmV3IGZlYXR1cmU6IGRlYXRoIHRlc3RzIG9uIFdpbmRv
d3MsIEN5Z3dpbiwgYW5kIE1hYy4KLSAqIE5ldyBmZWF0dXJlOiBhYmlsaXR5IHRvIHVzZSBHb29n
bGUgVGVzdCBhc3NlcnRpb25zIGluIG90aGVyIHRlc3RpbmcKLSAgIGZyYW1ld29ya3MuCi0gKiBO
ZXcgZmVhdHVyZTogYWJpbGl0eSB0byBydW4gZGlzYWJsZWQgdGVzdCB2aWEKLSAgIC0tZ3Rlc3Rf
YWxzb19ydW5fZGlzYWJsZWRfdGVzdHMuCi0gKiBOZXcgZmVhdHVyZTogdGhlIC0taGVscCBmbGFn
IGZvciBwcmludGluZyB0aGUgdXNhZ2UuCi0gKiBOZXcgZmVhdHVyZTogYWNjZXNzIHRvIEdvb2ds
ZSBUZXN0IGZsYWcgdmFsdWVzIGluIHVzZXIgY29kZS4KLSAqIE5ldyBmZWF0dXJlOiBhIHNjcmlw
dCB0aGF0IHBhY2tzIEdvb2dsZSBUZXN0IGludG8gb25lIC5oIGFuZCBvbmUKLSAgIC5jYyBmaWxl
IGZvciBlYXN5IGRlcGxveW1lbnQuCi0gKiBOZXcgZmVhdHVyZTogc3VwcG9ydCBmb3IgZGlzdHJp
YnV0aW5nIHRlc3QgZnVuY3Rpb25zIHRvIG11bHRpcGxlCi0gICBtYWNoaW5lcyAocmVxdWlyZXMg
c3VwcG9ydCBmcm9tIHRoZSB0ZXN0IHJ1bm5lcikuCi0gKiBCdWcgZml4ZXMgYW5kIGltcGxlbWVu
dGF0aW9uIGNsZWFuLXVwcy4KLQotQ2hhbmdlcyBmb3IgMS4yLjE6Ci0KLSAqIENvbXBhdGliaWxp
dHkgZml4ZXMgZm9yIExpbnV4IElBLTY0IGFuZCBJQk0gei9PUy4KLSAqIEFkZGVkIHN1cHBvcnQg
Zm9yIHVzaW5nIEJvb3N0IGFuZCBvdGhlciBUUjEgaW1wbGVtZW50YXRpb25zLgotICogQ2hhbmdl
cyB0byB0aGUgYnVpbGQgc2NyaXB0cyB0byBzdXBwb3J0IHVwY29taW5nIHJlbGVhc2Ugb2YgR29v
Z2xlIEMrKwotICAgTW9ja2luZyBGcmFtZXdvcmsuCi0gKiBBZGRlZCBNYWtlZmlsZSB0byB0aGUg
ZGlzdHJpYnV0aW9uIHBhY2thZ2UuCi0gKiBJbXByb3ZlZCBidWlsZCBpbnN0cnVjdGlvbnMgaW4g
UkVBRE1FLgotCi1DaGFuZ2VzIGZvciAxLjIuMDoKLQotICogTmV3IGZlYXR1cmU6IHZhbHVlLXBh
cmFtZXRlcml6ZWQgdGVzdHMuCi0gKiBOZXcgZmVhdHVyZTogdGhlIEFTU0VSVC9FWFBFQ1RfKE5P
TilGQVRBTF9GQUlMVVJFKF9PTl9BTExfVEhSRUFEUykKLSAgIG1hY3Jvcy4KLSAqIENoYW5nZWQg
dGhlIFhNTCByZXBvcnQgZm9ybWF0IHRvIG1hdGNoIEpVbml0L0FudCdzLgotICogQWRkZWQgdGVz
dHMgdG8gdGhlIFhjb2RlIHByb2plY3QuCi0gKiBBZGRlZCBzY29ucy9TQ29uc2NyaXB0IGZvciBi
dWlsZGluZyB3aXRoIFNDb25zLgotICogQWRkZWQgc3JjL2d0ZXN0LWFsbC5jYyBmb3IgYnVpbGRp
bmcgR29vZ2xlIFRlc3QgZnJvbSBhIHNpbmdsZSBmaWxlLgotICogRml4ZWQgY29tcGF0aWJpbGl0
eSB3aXRoIFNvbGFyaXMgYW5kIHovT1MuCi0gKiBFbmFibGVkIHJ1bm5pbmcgUHl0aG9uIHRlc3Rz
IG9uIHN5c3RlbXMgd2l0aCBweXRob24gMi4zIGluc3RhbGxlZCwKLSAgIGUuZy4gTWFjIE9TIFgg
MTAuNC4KLSAqIEJ1ZyBmaXhlcy4KLQotQ2hhbmdlcyBmb3IgMS4xLjA6Ci0KLSAqIE5ldyBmZWF0
dXJlOiB0eXBlLXBhcmFtZXRlcml6ZWQgdGVzdHMuCi0gKiBOZXcgZmVhdHVyZTogZXhjZXB0aW9u
IGFzc2VydGlvbnMuCi0gKiBOZXcgZmVhdHVyZTogcHJpbnRpbmcgZWxhcHNlZCB0aW1lIG9mIHRl
c3RzLgotICogSW1wcm92ZWQgdGhlIHJvYnVzdG5lc3Mgb2YgZGVhdGggdGVzdHMuCi0gKiBBZGRl
ZCBhbiBYY29kZSBwcm9qZWN0IGFuZCBzYW1wbGVzLgotICogQWRqdXN0ZWQgdGhlIG91dHB1dCBm
b3JtYXQgb24gV2luZG93cyB0byBiZSB1bmRlcnN0YW5kYWJsZSBieSBWaXN1YWwgU3R1ZGlvLgot
ICogTWlub3IgYnVnIGZpeGVzLgotCi1DaGFuZ2VzIGZvciAxLjAuMToKLQotICogQWRkZWQgcHJv
amVjdCBmaWxlcyBmb3IgVmlzdWFsIFN0dWRpbyA3LjEuCi0gKiBGaXhlZCBpc3N1ZXMgd2l0aCBj
b21waWxpbmcgb24gTWFjIE9TIFguCi0gKiBGaXhlZCBpc3N1ZXMgd2l0aCBjb21waWxpbmcgb24g
Q3lnd2luLgotCi1DaGFuZ2VzIGZvciAxLjAuMDoKLQotICogSW5pdGlhbCBPcGVuIFNvdXJjZSBy
ZWxlYXNlIG9mIEdvb2dsZSBUZXN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5
L2dvb2dsZXRlc3Qvc3JjL0NPTlRSSUJVVE9SUyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29v
Z2xldGVzdC9zcmMvQ09OVFJJQlVUT1JTCmluZGV4IGZlYWUyZmMwNDQxMGRjMzA4ZTQ2NGFhMjU2
ZmUxZjJkMzFlZGM5ODguLjFlNGFmZTIxODI1YjViOTNjYmE1Nzc4OWI5MTEyMjYyNjVhOTkwOTQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvQ09OVFJJ
QlVUT1JTCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvQ09OVFJJ
QlVUT1JTCkBAIC0xNyw2ICsxNyw3IEBAIErDs2kgU2lndXLDsHNzb24gPGpvaUBnb29nbGUuY29t
PgogS2VpciBNaWVybGUgPG1pZXJsZUBnbWFpbC5jb20+CiBLZWl0aCBSYXkgPGtlaXRoLnJheUBn
bWFpbC5jb20+CiBLZW50b24gVmFyZGEgPGtlbnRvbkBnb29nbGUuY29tPgorS3J5c3RpYW4gS3V6
bmlhcmVrIDxrcnlzdGlhbi5rdXpuaWFyZWtAZ21haWwuY29tPgogTWFudWVsIEtsaW1layA8a2xp
bWVrQGdvb2dsZS5jb20+CiBNYXJrdXMgSGV1bGUgPG1hcmt1cy5oZXVsZUBnbWFpbC5jb20+CiBN
aWthIFJhZW50byA8bWlraWVAaWtpLmZpPgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9w
YXJ0eS9nb29nbGV0ZXN0L3NyYy9SRUFETUUubWQgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dv
b2dsZXRlc3Qvc3JjL1JFQURNRS5tZAppbmRleCBlMzBmZTgwNDcxMjdiZWUxNmQyYzcxZjE0YjUw
OWYzNzU3MWFkZDQxLi45MDQwNDhmNDg0MDAzMWQ2ZDEzMTUzZmU0YjAyNTIzNTVlYmI2MjMzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL1JFQURNRS5t
ZAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL1JFQURNRS5tZApA
QCAtNiw1MSArNiwxMCBAQCBUbyBidWlsZCBHb29nbGUgVGVzdCBhbmQgeW91ciB0ZXN0cyB0aGF0
IHVzZSBpdCwgeW91IG5lZWQgdG8gdGVsbCB5b3VyIGJ1aWxkCiBzeXN0ZW0gd2hlcmUgdG8gZmlu
ZCBpdHMgaGVhZGVycyBhbmQgc291cmNlIGZpbGVzLiBUaGUgZXhhY3Qgd2F5IHRvIGRvIGl0CiBk
ZXBlbmRzIG9uIHdoaWNoIGJ1aWxkIHN5c3RlbSB5b3UgdXNlLCBhbmQgaXMgdXN1YWxseSBzdHJh
aWdodGZvcndhcmQuCiAKLSMjIyMgQnVpbGQKKyMjIyBCdWlsZCB3aXRoIENNYWtlCiAKLVN1cHBv
c2UgeW91IHB1dCBHb29nbGUgVGVzdCBpbiBkaXJlY3RvcnkgYCR7R1RFU1RfRElSfWAuIFRvIGJ1
aWxkIGl0LCBjcmVhdGUgYQotbGlicmFyeSBidWlsZCB0YXJnZXQgKG9yIGEgcHJvamVjdCBhcyBj
YWxsZWQgYnkgVmlzdWFsIFN0dWRpbyBhbmQgWGNvZGUpIHRvCi1jb21waWxlCi0KLSAgICAke0dU
RVNUX0RJUn0vc3JjL2d0ZXN0LWFsbC5jYwotCi13aXRoIGAke0dURVNUX0RJUn0vaW5jbHVkZWAg
aW4gdGhlIHN5c3RlbSBoZWFkZXIgc2VhcmNoIHBhdGggYW5kIGAke0dURVNUX0RJUn1gCi1pbiB0
aGUgbm9ybWFsIGhlYWRlciBzZWFyY2ggcGF0aC4gQXNzdW1pbmcgYSBMaW51eC1saWtlIHN5c3Rl
bSBhbmQgZ2NjLAotc29tZXRoaW5nIGxpa2UgdGhlIGZvbGxvd2luZyB3aWxsIGRvOgotCi0gICAg
ZysrIC1pc3lzdGVtICR7R1RFU1RfRElSfS9pbmNsdWRlIC1JJHtHVEVTVF9ESVJ9IFwKLSAgICAg
ICAgLXB0aHJlYWQgLWMgJHtHVEVTVF9ESVJ9L3NyYy9ndGVzdC1hbGwuY2MKLSAgICBhciAtcnYg
bGliZ3Rlc3QuYSBndGVzdC1hbGwubwotCi0oV2UgbmVlZCBgLXB0aHJlYWRgIGFzIEdvb2dsZSBU
ZXN0IHVzZXMgdGhyZWFkcy4pCi0KLU5leHQsIHlvdSBzaG91bGQgY29tcGlsZSB5b3VyIHRlc3Qg
c291cmNlIGZpbGUgd2l0aCBgJHtHVEVTVF9ESVJ9L2luY2x1ZGVgIGluCi10aGUgc3lzdGVtIGhl
YWRlciBzZWFyY2ggcGF0aCwgYW5kIGxpbmsgaXQgd2l0aCBndGVzdCBhbmQgYW55IG90aGVyIG5l
Y2Vzc2FyeQotbGlicmFyaWVzOgotCi0gICAgZysrIC1pc3lzdGVtICR7R1RFU1RfRElSfS9pbmNs
dWRlIC1wdGhyZWFkIHBhdGgvdG8veW91cl90ZXN0LmNjIGxpYmd0ZXN0LmEgXAotICAgICAgICAt
byB5b3VyX3Rlc3QKLQotQXMgYW4gZXhhbXBsZSwgdGhlIG1ha2UvIGRpcmVjdG9yeSBjb250YWlu
cyBhIE1ha2VmaWxlIHRoYXQgeW91IGNhbiB1c2UgdG8gYnVpbGQKLUdvb2dsZSBUZXN0IG9uIHN5
c3RlbXMgd2hlcmUgR05VIG1ha2UgaXMgYXZhaWxhYmxlIChlLmcuIExpbnV4LCBNYWMgT1MgWCwg
YW5kCi1DeWd3aW4pLiBJdCBkb2Vzbid0IHRyeSB0byBidWlsZCBHb29nbGUgVGVzdCdzIG93biB0
ZXN0cy4gSW5zdGVhZCwgaXQganVzdAotYnVpbGRzIHRoZSBHb29nbGUgVGVzdCBsaWJyYXJ5IGFu
ZCBhIHNhbXBsZSB0ZXN0LiBZb3UgY2FuIHVzZSBpdCBhcyBhIHN0YXJ0aW5nCi1wb2ludCBmb3Ig
eW91ciBvd24gYnVpbGQgc2NyaXB0LgotCi1JZiB0aGUgZGVmYXVsdCBzZXR0aW5ncyBhcmUgY29y
cmVjdCBmb3IgeW91ciBlbnZpcm9ubWVudCwgdGhlIGZvbGxvd2luZyBjb21tYW5kcwotc2hvdWxk
IHN1Y2NlZWQ6Ci0KLSAgICBjZCAke0dURVNUX0RJUn0vbWFrZQotICAgIG1ha2UKLSAgICAuL3Nh
bXBsZTFfdW5pdHRlc3QKLQotSWYgeW91IHNlZSBlcnJvcnMsIHRyeSB0byB0d2VhayB0aGUgY29u
dGVudHMgb2YgYG1ha2UvTWFrZWZpbGVgIHRvIG1ha2UgdGhlbSBnbwotYXdheS4gVGhlcmUgYXJl
IGluc3RydWN0aW9ucyBpbiBgbWFrZS9NYWtlZmlsZWAgb24gaG93IHRvIGRvIGl0LgotCi0jIyMg
VXNpbmcgQ01ha2UKLQotR29vZ2xlIFRlc3QgY29tZXMgd2l0aCBhIENNYWtlIGJ1aWxkIHNjcmlw
dCAoCi1bQ01ha2VMaXN0cy50eHRdKGh0dHBzOi8vZ2l0aHViLmNvbS9nb29nbGUvZ29vZ2xldGVz
dC9ibG9iL21hc3Rlci9DTWFrZUxpc3RzLnR4dCkpCitHb29nbGUgVGVzdCBjb21lcyB3aXRoIGEg
Q01ha2UgYnVpbGQgc2NyaXB0CisoW0NNYWtlTGlzdHMudHh0XShodHRwczovL2dpdGh1Yi5jb20v
Z29vZ2xlL2dvb2dsZXRlc3QvYmxvYi9tYXN0ZXIvQ01ha2VMaXN0cy50eHQpKQogdGhhdCBjYW4g
YmUgdXNlZCBvbiBhIHdpZGUgcmFuZ2Ugb2YgcGxhdGZvcm1zICgiQyIgc3RhbmRzIGZvciBjcm9z
cy1wbGF0Zm9ybS4pLgogSWYgeW91IGRvbid0IGhhdmUgQ01ha2UgaW5zdGFsbGVkIGFscmVhZHks
IHlvdSBjYW4gZG93bmxvYWQgaXQgZm9yIGZyZWUgZnJvbQogPGh0dHA6Ly93d3cuY21ha2Uub3Jn
Lz4uCkBAIC0xMTUsNjAgKzc0LDY0IEBAIHB1bGxlZCBpbnRvIHRoZSBtYWluIGJ1aWxkIHdpdGgg
YGFkZF9zdWJkaXJlY3RvcnkoKWAuIEZvciBleGFtcGxlOgogCiBOZXcgZmlsZSBgQ01ha2VMaXN0
cy50eHQuaW5gOgogCi0gICAgY21ha2VfbWluaW11bV9yZXF1aXJlZChWRVJTSU9OIDIuOC4yKQor
YGBgY21ha2UKK2NtYWtlX21pbmltdW1fcmVxdWlyZWQoVkVSU0lPTiAyLjguMikKIAotICAgIHBy
b2plY3QoZ29vZ2xldGVzdC1kb3dubG9hZCBOT05FKQorcHJvamVjdChnb29nbGV0ZXN0LWRvd25s
b2FkIE5PTkUpCiAKLSAgICBpbmNsdWRlKEV4dGVybmFsUHJvamVjdCkKLSAgICBFeHRlcm5hbFBy
b2plY3RfQWRkKGdvb2dsZXRlc3QKLSAgICAgIEdJVF9SRVBPU0lUT1JZICAgIGh0dHBzOi8vZ2l0
aHViLmNvbS9nb29nbGUvZ29vZ2xldGVzdC5naXQKLSAgICAgIEdJVF9UQUcgICAgICAgICAgIG1h
c3RlcgotICAgICAgU09VUkNFX0RJUiAgICAgICAgIiR7Q01BS0VfQklOQVJZX0RJUn0vZ29vZ2xl
dGVzdC1zcmMiCi0gICAgICBCSU5BUllfRElSICAgICAgICAiJHtDTUFLRV9CSU5BUllfRElSfS9n
b29nbGV0ZXN0LWJ1aWxkIgotICAgICAgQ09ORklHVVJFX0NPTU1BTkQgIiIKLSAgICAgIEJVSUxE
X0NPTU1BTkQgICAgICIiCi0gICAgICBJTlNUQUxMX0NPTU1BTkQgICAiIgotICAgICAgVEVTVF9D
T01NQU5EICAgICAgIiIKLSAgICApCitpbmNsdWRlKEV4dGVybmFsUHJvamVjdCkKK0V4dGVybmFs
UHJvamVjdF9BZGQoZ29vZ2xldGVzdAorICBHSVRfUkVQT1NJVE9SWSAgICBodHRwczovL2dpdGh1
Yi5jb20vZ29vZ2xlL2dvb2dsZXRlc3QuZ2l0CisgIEdJVF9UQUcgICAgICAgICAgIG1hc3Rlcgor
ICBTT1VSQ0VfRElSICAgICAgICAiJHtDTUFLRV9DVVJSRU5UX0JJTkFSWV9ESVJ9L2dvb2dsZXRl
c3Qtc3JjIgorICBCSU5BUllfRElSICAgICAgICAiJHtDTUFLRV9DVVJSRU5UX0JJTkFSWV9ESVJ9
L2dvb2dsZXRlc3QtYnVpbGQiCisgIENPTkZJR1VSRV9DT01NQU5EICIiCisgIEJVSUxEX0NPTU1B
TkQgICAgICIiCisgIElOU1RBTExfQ09NTUFORCAgICIiCisgIFRFU1RfQ09NTUFORCAgICAgICIi
CispCitgYGAKIAogRXhpc3RpbmcgYnVpbGQncyBgQ01ha2VMaXN0cy50eHRgOgogCi0gICAgIyBE
b3dubG9hZCBhbmQgdW5wYWNrIGdvb2dsZXRlc3QgYXQgY29uZmlndXJlIHRpbWUKLSAgICBjb25m
aWd1cmVfZmlsZShDTWFrZUxpc3RzLnR4dC5pbiBnb29nbGV0ZXN0LWRvd25sb2FkL0NNYWtlTGlz
dHMudHh0KQotICAgIGV4ZWN1dGVfcHJvY2VzcyhDT01NQU5EICR7Q01BS0VfQ09NTUFORH0gLUcg
IiR7Q01BS0VfR0VORVJBVE9SfSIgLgotICAgICAgUkVTVUxUX1ZBUklBQkxFIHJlc3VsdAotICAg
ICAgV09SS0lOR19ESVJFQ1RPUlkgJHtDTUFLRV9CSU5BUllfRElSfS9nb29nbGV0ZXN0LWRvd25s
b2FkICkKLSAgICBpZihyZXN1bHQpCi0gICAgICBtZXNzYWdlKEZBVEFMX0VSUk9SICJDTWFrZSBz
dGVwIGZvciBnb29nbGV0ZXN0IGZhaWxlZDogJHtyZXN1bHR9IikKLSAgICBlbmRpZigpCi0gICAg
ZXhlY3V0ZV9wcm9jZXNzKENPTU1BTkQgJHtDTUFLRV9DT01NQU5EfSAtLWJ1aWxkIC4KLSAgICAg
IFJFU1VMVF9WQVJJQUJMRSByZXN1bHQKLSAgICAgIFdPUktJTkdfRElSRUNUT1JZICR7Q01BS0Vf
QklOQVJZX0RJUn0vZ29vZ2xldGVzdC1kb3dubG9hZCApCi0gICAgaWYocmVzdWx0KQotICAgICAg
bWVzc2FnZShGQVRBTF9FUlJPUiAiQnVpbGQgc3RlcCBmb3IgZ29vZ2xldGVzdCBmYWlsZWQ6ICR7
cmVzdWx0fSIpCi0gICAgZW5kaWYoKQotCi0gICAgIyBQcmV2ZW50IG92ZXJyaWRpbmcgdGhlIHBh
cmVudCBwcm9qZWN0J3MgY29tcGlsZXIvbGlua2VyCi0gICAgIyBzZXR0aW5ncyBvbiBXaW5kb3dz
Ci0gICAgc2V0KGd0ZXN0X2ZvcmNlX3NoYXJlZF9jcnQgT04gQ0FDSEUgQk9PTCAiIiBGT1JDRSkK
LQotICAgICMgQWRkIGdvb2dsZXRlc3QgZGlyZWN0bHkgdG8gb3VyIGJ1aWxkLiBUaGlzIGRlZmlu
ZXMKLSAgICAjIHRoZSBndGVzdCBhbmQgZ3Rlc3RfbWFpbiB0YXJnZXRzLgotICAgIGFkZF9zdWJk
aXJlY3RvcnkoJHtDTUFLRV9CSU5BUllfRElSfS9nb29nbGV0ZXN0LXNyYwotICAgICAgICAgICAg
ICAgICAgICAgJHtDTUFLRV9CSU5BUllfRElSfS9nb29nbGV0ZXN0LWJ1aWxkCi0gICAgICAgICAg
ICAgICAgICAgICBFWENMVURFX0ZST01fQUxMKQotCi0gICAgIyBUaGUgZ3Rlc3QvZ3Rlc3RfbWFp
biB0YXJnZXRzIGNhcnJ5IGhlYWRlciBzZWFyY2ggcGF0aAotICAgICMgZGVwZW5kZW5jaWVzIGF1
dG9tYXRpY2FsbHkgd2hlbiB1c2luZyBDTWFrZSAyLjguMTEgb3IKLSAgICAjIGxhdGVyLiBPdGhl
cndpc2Ugd2UgaGF2ZSB0byBhZGQgdGhlbSBoZXJlIG91cnNlbHZlcy4KLSAgICBpZiAoQ01BS0Vf
VkVSU0lPTiBWRVJTSU9OX0xFU1MgMi44LjExKQotICAgICAgaW5jbHVkZV9kaXJlY3Rvcmllcygi
JHtndGVzdF9TT1VSQ0VfRElSfS9pbmNsdWRlIikKLSAgICBlbmRpZigpCi0KLSAgICAjIE5vdyBz
aW1wbHkgbGluayBhZ2FpbnN0IGd0ZXN0IG9yIGd0ZXN0X21haW4gYXMgbmVlZGVkLiBFZwotICAg
IGFkZF9leGVjdXRhYmxlKGV4YW1wbGUgZXhhbXBsZS5jcHApCi0gICAgdGFyZ2V0X2xpbmtfbGli
cmFyaWVzKGV4YW1wbGUgZ3Rlc3RfbWFpbikKLSAgICBhZGRfdGVzdChOQU1FIGV4YW1wbGVfdGVz
dCBDT01NQU5EIGV4YW1wbGUpCitgYGBjbWFrZQorIyBEb3dubG9hZCBhbmQgdW5wYWNrIGdvb2ds
ZXRlc3QgYXQgY29uZmlndXJlIHRpbWUKK2NvbmZpZ3VyZV9maWxlKENNYWtlTGlzdHMudHh0Lmlu
IGdvb2dsZXRlc3QtZG93bmxvYWQvQ01ha2VMaXN0cy50eHQpCitleGVjdXRlX3Byb2Nlc3MoQ09N
TUFORCAke0NNQUtFX0NPTU1BTkR9IC1HICIke0NNQUtFX0dFTkVSQVRPUn0iIC4KKyAgUkVTVUxU
X1ZBUklBQkxFIHJlc3VsdAorICBXT1JLSU5HX0RJUkVDVE9SWSAke0NNQUtFX0NVUlJFTlRfQklO
QVJZX0RJUn0vZ29vZ2xldGVzdC1kb3dubG9hZCApCitpZihyZXN1bHQpCisgIG1lc3NhZ2UoRkFU
QUxfRVJST1IgIkNNYWtlIHN0ZXAgZm9yIGdvb2dsZXRlc3QgZmFpbGVkOiAke3Jlc3VsdH0iKQor
ZW5kaWYoKQorZXhlY3V0ZV9wcm9jZXNzKENPTU1BTkQgJHtDTUFLRV9DT01NQU5EfSAtLWJ1aWxk
IC4KKyAgUkVTVUxUX1ZBUklBQkxFIHJlc3VsdAorICBXT1JLSU5HX0RJUkVDVE9SWSAke0NNQUtF
X0NVUlJFTlRfQklOQVJZX0RJUn0vZ29vZ2xldGVzdC1kb3dubG9hZCApCitpZihyZXN1bHQpCisg
IG1lc3NhZ2UoRkFUQUxfRVJST1IgIkJ1aWxkIHN0ZXAgZm9yIGdvb2dsZXRlc3QgZmFpbGVkOiAk
e3Jlc3VsdH0iKQorZW5kaWYoKQorCisjIFByZXZlbnQgb3ZlcnJpZGluZyB0aGUgcGFyZW50IHBy
b2plY3QncyBjb21waWxlci9saW5rZXIKKyMgc2V0dGluZ3Mgb24gV2luZG93cworc2V0KGd0ZXN0
X2ZvcmNlX3NoYXJlZF9jcnQgT04gQ0FDSEUgQk9PTCAiIiBGT1JDRSkKKworIyBBZGQgZ29vZ2xl
dGVzdCBkaXJlY3RseSB0byBvdXIgYnVpbGQuIFRoaXMgZGVmaW5lcworIyB0aGUgZ3Rlc3QgYW5k
IGd0ZXN0X21haW4gdGFyZ2V0cy4KK2FkZF9zdWJkaXJlY3RvcnkoJHtDTUFLRV9DVVJSRU5UX0JJ
TkFSWV9ESVJ9L2dvb2dsZXRlc3Qtc3JjCisgICAgICAgICAgICAgICAgICR7Q01BS0VfQ1VSUkVO
VF9CSU5BUllfRElSfS9nb29nbGV0ZXN0LWJ1aWxkCisgICAgICAgICAgICAgICAgIEVYQ0xVREVf
RlJPTV9BTEwpCisKKyMgVGhlIGd0ZXN0L2d0ZXN0X21haW4gdGFyZ2V0cyBjYXJyeSBoZWFkZXIg
c2VhcmNoIHBhdGgKKyMgZGVwZW5kZW5jaWVzIGF1dG9tYXRpY2FsbHkgd2hlbiB1c2luZyBDTWFr
ZSAyLjguMTEgb3IKKyMgbGF0ZXIuIE90aGVyd2lzZSB3ZSBoYXZlIHRvIGFkZCB0aGVtIGhlcmUg
b3Vyc2VsdmVzLgoraWYgKENNQUtFX1ZFUlNJT04gVkVSU0lPTl9MRVNTIDIuOC4xMSkKKyAgaW5j
bHVkZV9kaXJlY3RvcmllcygiJHtndGVzdF9TT1VSQ0VfRElSfS9pbmNsdWRlIikKK2VuZGlmKCkK
KworIyBOb3cgc2ltcGx5IGxpbmsgYWdhaW5zdCBndGVzdCBvciBndGVzdF9tYWluIGFzIG5lZWRl
ZC4gRWcKK2FkZF9leGVjdXRhYmxlKGV4YW1wbGUgZXhhbXBsZS5jcHApCit0YXJnZXRfbGlua19s
aWJyYXJpZXMoZXhhbXBsZSBndGVzdF9tYWluKQorYWRkX3Rlc3QoTkFNRSBleGFtcGxlX3Rlc3Qg
Q09NTUFORCBleGFtcGxlKQorYGBgCiAKIE5vdGUgdGhhdCB0aGlzIGFwcHJvYWNoIHJlcXVpcmVz
IENNYWtlIDIuOC4yIG9yIGxhdGVyIGR1ZSB0byBpdHMgdXNlIG9mIHRoZQogYEV4dGVybmFsUHJv
amVjdF9BZGQoKWAgY29tbWFuZC4gVGhlIGFib3ZlIHRlY2huaXF1ZSBpcyBkaXNjdXNzZWQgaW4g
bW9yZSBkZXRhaWwKQEAgLTE4OCw0NyArMTUxLDE0IEBAIEdvb2dsZSBUZXN0IGFscmVhZHkgaGFz
IGEgQ01ha2Ugb3B0aW9uIGZvciB0aGlzOiBgZ3Rlc3RfZm9yY2Vfc2hhcmVkX2NydGAKIEVuYWJs
aW5nIHRoaXMgb3B0aW9uIHdpbGwgbWFrZSBndGVzdCBsaW5rIHRoZSBydW50aW1lcyBkeW5hbWlj
YWxseSB0b28sIGFuZAogbWF0Y2ggdGhlIHByb2plY3QgaW4gd2hpY2ggaXQgaXMgaW5jbHVkZWQu
CiAKLSMjIyBMZWdhY3kgQnVpbGQgU2NyaXB0cwotCi1CZWZvcmUgc2V0dGxpbmcgb24gQ01ha2Us
IHdlIGhhdmUgYmVlbiBwcm92aWRpbmcgaGFuZC1tYWludGFpbmVkIGJ1aWxkCi1wcm9qZWN0cy9z
Y3JpcHRzIGZvciBWaXN1YWwgU3R1ZGlvLCBYY29kZSwgYW5kIEF1dG90b29scy4gV2hpbGUgd2Ug
Y29udGludWUgdG8KLXByb3ZpZGUgdGhlbSBmb3IgY29udmVuaWVuY2UsIHRoZXkgYXJlIG5vdCBh
Y3RpdmVseSBtYWludGFpbmVkIGFueSBtb3JlLiBXZQotaGlnaGx5IHJlY29tbWVuZCB0aGF0IHlv
dSBmb2xsb3cgdGhlIGluc3RydWN0aW9ucyBpbiB0aGUgYWJvdmUgc2VjdGlvbnMgdG8KLWludGVn
cmF0ZSBHb29nbGUgVGVzdCB3aXRoIHlvdXIgZXhpc3RpbmcgYnVpbGQgc3lzdGVtLgotCi1JZiB5
b3Ugc3RpbGwgbmVlZCB0byB1c2UgdGhlIGxlZ2FjeSBidWlsZCBzY3JpcHRzLCBoZXJlJ3MgaG93
OgotCi1UaGUgbXN2Y1wgZm9sZGVyIGNvbnRhaW5zIHR3byBzb2x1dGlvbnMgd2l0aCBWaXN1YWwg
QysrIHByb2plY3RzLiBPcGVuIHRoZQotYGd0ZXN0LnNsbmAgb3IgYGd0ZXN0LW1kLnNsbmAgZmls
ZSB1c2luZyBWaXN1YWwgU3R1ZGlvLCBhbmQgeW91IGFyZSByZWFkeSB0bwotYnVpbGQgR29vZ2xl
IFRlc3QgdGhlIHNhbWUgd2F5IHlvdSBidWlsZCBhbnkgVmlzdWFsIFN0dWRpbyBwcm9qZWN0LiBG
aWxlcyB0aGF0Ci1oYXZlIG5hbWVzIGVuZGluZyB3aXRoIC1tZCB1c2UgRExMIHZlcnNpb25zIG9m
IE1pY3Jvc29mdCBydW50aW1lIGxpYnJhcmllcyAodGhlCi0vTUQgb3IgdGhlIC9NRGQgY29tcGls
ZXIgb3B0aW9uKS4gRmlsZXMgd2l0aG91dCB0aGF0IHN1ZmZpeCB1c2Ugc3RhdGljIHZlcnNpb25z
Ci1vZiB0aGUgcnVudGltZSBsaWJyYXJpZXMgKHRoZSAvTVQgb3IgdGhlIC9NVGQgb3B0aW9uKS4g
UGxlYXNlIG5vdGUgdGhhdCBvbmUgbXVzdAotdXNlIHRoZSBzYW1lIG9wdGlvbiB0byBjb21waWxl
IGJvdGggZ3Rlc3QgYW5kIHRoZSB0ZXN0IGNvZGUuIElmIHlvdSB1c2UgVmlzdWFsCi1TdHVkaW8g
MjAwNSBvciBhYm92ZSwgd2UgcmVjb21tZW5kIHRoZSAtbWQgdmVyc2lvbiBhcyAvTUQgaXMgdGhl
IGRlZmF1bHQgZm9yIG5ldwotcHJvamVjdHMgaW4gdGhlc2UgdmVyc2lvbnMgb2YgVmlzdWFsIFN0
dWRpby4KKyMjIyMgQysrIFN0YW5kYXJkIFZlcnNpb24KIAotT24gTWFjIE9TIFgsIG9wZW4gdGhl
IGBndGVzdC54Y29kZXByb2pgIGluIHRoZSBgeGNvZGUvYCBmb2xkZXIgdXNpbmcgWGNvZGUuCi1C
dWlsZCB0aGUgImd0ZXN0IiB0YXJnZXQuIFRoZSB1bml2ZXJzYWwgYmluYXJ5IGZyYW1ld29yayB3
aWxsIGVuZCB1cCBpbiB5b3VyCi1zZWxlY3RlZCBidWlsZCBkaXJlY3RvcnkgKHNlbGVjdGVkIGlu
IHRoZSBYY29kZSAiUHJlZmVyZW5jZXMuLi4iIC0+ICJCdWlsZGluZyIKLXBhbmUgYW5kIGRlZmF1
bHRzIHRvIHhjb2RlL2J1aWxkKS4gQWx0ZXJuYXRpdmVseSwgYXQgdGhlIGNvbW1hbmQgbGluZSwg
ZW50ZXI6Ci0KLSAgICB4Y29kZWJ1aWxkCi0KLVRoaXMgd2lsbCBidWlsZCB0aGUgIlJlbGVhc2Ui
IGNvbmZpZ3VyYXRpb24gb2YgZ3Rlc3QuZnJhbWV3b3JrIGluIHlvdXIgZGVmYXVsdAotYnVpbGQg
bG9jYXRpb24uIFNlZSB0aGUgInhjb2RlYnVpbGQiIG1hbiBwYWdlIGZvciBtb3JlIGluZm9ybWF0
aW9uIGFib3V0Ci1idWlsZGluZyBkaWZmZXJlbnQgY29uZmlndXJhdGlvbnMgYW5kIGJ1aWxkaW5n
IGluIGRpZmZlcmVudCBsb2NhdGlvbnMuCi0KLUlmIHlvdSB3aXNoIHRvIHVzZSB0aGUgR29vZ2xl
IFRlc3QgWGNvZGUgcHJvamVjdCB3aXRoIFhjb2RlIDQueCBhbmQgYWJvdmUsIHlvdQotbmVlZCB0
byBlaXRoZXI6Ci0KLSogICB1cGRhdGUgdGhlIFNESyBjb25maWd1cmF0aW9uIG9wdGlvbnMgaW4g
eGNvZGUvQ29uZmlnL0dlbmVyYWwueGNvbmZpZy4KLSAgICBDb21tZW50IG9wdGlvbnMgYFNES1JP
T1RgLCBgTUFDT1NfREVQTE9ZTUVOVF9UQVJHRVRgLCBhbmQgYEdDQ19WRVJTSU9OYC4gSWYKLSAg
ICB5b3UgY2hvb3NlIHRoaXMgcm91dGUgeW91IGxvc2UgdGhlIGFiaWxpdHkgdG8gdGFyZ2V0IGVh
cmxpZXIgdmVyc2lvbnMgb2YKLSAgICBNYWNPUyBYLgotKiAgIEluc3RhbGwgYW4gU0RLIGZvciBh
biBlYXJsaWVyIHZlcnNpb24uIFRoaXMgZG9lc24ndCBhcHBlYXIgdG8gYmUgc3VwcG9ydGVkCi0g
ICAgYnkgQXBwbGUsIGJ1dCBoYXMgYmVlbiByZXBvcnRlZCB0byB3b3JrCi0gICAgKGh0dHA6Ly9z
dGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvNTM3ODUxOCkuCitBbiBlbnZpcm9ubWVudCB0aGF0
IHN1cHBvcnRzIEMrKzExIGlzIHJlcXVpcmVkIGluIG9yZGVyIHRvIHN1Y2Nlc3NmdWxseSBidWls
ZAorR29vZ2xlIFRlc3QuIE9uZSB3YXkgdG8gZW5zdXJlIHRoaXMgaXMgdG8gc3BlY2lmeSB0aGUg
c3RhbmRhcmQgaW4gdGhlIHRvcC1sZXZlbAorcHJvamVjdCwgZm9yIGV4YW1wbGUgYnkgdXNpbmcg
dGhlIGBzZXQoQ01BS0VfQ1hYX1NUQU5EQVJEIDExKWAgY29tbWFuZC4gSWYgdGhpcworaXMgbm90
IGZlYXNpYmxlLCBmb3IgZXhhbXBsZSBpbiBhIEMgcHJvamVjdCB1c2luZyBHb29nbGUgVGVzdCBm
b3IgdmFsaWRhdGlvbiwKK3RoZW4gaXQgY2FuIGJlIHNwZWNpZmllZCBieSBhZGRpbmcgaXQgdG8g
dGhlIG9wdGlvbnMgZm9yIGNtYWtlIHZpYSB0aGUKK2BEQ01BS0VfQ1hYX0ZMQUdTYCBvcHRpb24u
CiAKICMjIyBUd2Vha2luZyBHb29nbGUgVGVzdAogCkBAIC0yMzksNDEgKzE2OSwxNCBAQCBjb21t
YW5kIGxpbmUuIEdlbmVyYWxseSwgdGhlc2UgbWFjcm9zIGFyZSBuYW1lZCBsaWtlIGBHVEVTVF9Y
WVpgIGFuZCB5b3UgZGVmaW5lCiB0aGVtIHRvIGVpdGhlciAxIG9yIDAgdG8gZW5hYmxlIG9yIGRp
c2FibGUgYSBjZXJ0YWluIGZlYXR1cmUuCiAKIFdlIGxpc3QgdGhlIG1vc3QgZnJlcXVlbnRseSB1
c2VkIG1hY3JvcyBiZWxvdy4gRm9yIGEgY29tcGxldGUgbGlzdCwgc2VlIGZpbGUKLVtpbmNsdWRl
L2d0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQuaF0oaHR0cHM6Ly9naXRodWIuY29tL2dvb2dsZS9n
b29nbGV0ZXN0L2Jsb2IvbWFzdGVyL2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtcG9ydC5o
KS4KLQotIyMjIENob29zaW5nIGEgVFIxIFR1cGxlIExpYnJhcnkKLQotU29tZSBHb29nbGUgVGVz
dCBmZWF0dXJlcyByZXF1aXJlIHRoZSBDKysgVGVjaG5pY2FsIFJlcG9ydCAxIChUUjEpIHR1cGxl
Ci1saWJyYXJ5LCB3aGljaCBpcyBub3QgeWV0IGF2YWlsYWJsZSB3aXRoIGFsbCBjb21waWxlcnMu
IFRoZSBnb29kIG5ld3MgaXMgdGhhdAotR29vZ2xlIFRlc3QgaW1wbGVtZW50cyBhIHN1YnNldCBv
ZiBUUjEgdHVwbGUgdGhhdCdzIGVub3VnaCBmb3IgaXRzIG93biBuZWVkLCBhbmQKLXdpbGwgYXV0
b21hdGljYWxseSB1c2UgdGhpcyB3aGVuIHRoZSBjb21waWxlciBkb2Vzbid0IHByb3ZpZGUgVFIx
IHR1cGxlLgotCi1Vc3VhbGx5IHlvdSBkb24ndCBuZWVkIHRvIGNhcmUgYWJvdXQgd2hpY2ggdHVw
bGUgbGlicmFyeSBHb29nbGUgVGVzdCB1c2VzLgotSG93ZXZlciwgaWYgeW91ciBwcm9qZWN0IGFs
cmVhZHkgdXNlcyBUUjEgdHVwbGUsIHlvdSBuZWVkIHRvIHRlbGwgR29vZ2xlIFRlc3QgdG8KLXVz
ZSB0aGUgc2FtZSBUUjEgdHVwbGUgbGlicmFyeSB0aGUgcmVzdCBvZiB5b3VyIHByb2plY3QgdXNl
cywgb3IgdGhlIHR3byB0dXBsZQotaW1wbGVtZW50YXRpb25zIHdpbGwgY2xhc2guIFRvIGRvIHRo
YXQsIGFkZAotCi0gICAgLURHVEVTVF9VU0VfT1dOX1RSMV9UVVBMRT0wCi0KLXRvIHRoZSBjb21w
aWxlciBmbGFncyB3aGlsZSBjb21waWxpbmcgR29vZ2xlIFRlc3QgYW5kIHlvdXIgdGVzdHMuIElm
IHlvdSB3YW50IHRvCi1mb3JjZSBHb29nbGUgVGVzdCB0byB1c2UgaXRzIG93biB0dXBsZSBsaWJy
YXJ5LCBqdXN0IGFkZAotCi0gICAgLURHVEVTVF9VU0VfT1dOX1RSMV9UVVBMRT0xCi0KLXRvIHRo
ZSBjb21waWxlciBmbGFncyBpbnN0ZWFkLgotCi1JZiB5b3UgZG9uJ3Qgd2FudCBHb29nbGUgVGVz
dCB0byB1c2UgdHVwbGUgYXQgYWxsLCBhZGQKLQotICAgIC1ER1RFU1RfSEFTX1RSMV9UVVBMRT0w
Ci0KLWFuZCBhbGwgZmVhdHVyZXMgdXNpbmcgdHVwbGUgd2lsbCBiZSBkaXNhYmxlZC4KK1tpbmNs
dWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQuaF0oaHR0cHM6Ly9naXRodWIuY29tL2dvb2ds
ZS9nb29nbGV0ZXN0L2Jsb2IvbWFzdGVyL2dvb2dsZXRlc3QvaW5jbHVkZS9ndGVzdC9pbnRlcm5h
bC9ndGVzdC1wb3J0LmgpLgogCiAjIyMgTXVsdGktdGhyZWFkZWQgVGVzdHMKIAogR29vZ2xlIFRl
c3QgaXMgdGhyZWFkLXNhZmUgd2hlcmUgdGhlIHB0aHJlYWQgbGlicmFyeSBpcyBhdmFpbGFibGUu
IEFmdGVyCi1gI2luY2x1ZGUgImd0ZXN0L2d0ZXN0LmgiYCwgeW91IGNhbiBjaGVjayB0aGUgYEdU
RVNUX0lTX1RIUkVBRFNBRkVgIG1hY3JvIHRvIHNlZQotd2hldGhlciB0aGlzIGlzIHRoZSBjYXNl
ICh5ZXMgaWYgdGhlIG1hY3JvIGlzIGAjZGVmaW5lZGAgdG8gMSwgbm8gaWYgaXQncwotdW5kZWZp
bmVkLikuCitgI2luY2x1ZGUgImd0ZXN0L2d0ZXN0LmgiYCwgeW91IGNhbiBjaGVjayB0aGUKK2BH
VEVTVF9JU19USFJFQURTQUZFYCBtYWNybyB0byBzZWUgd2hldGhlciB0aGlzIGlzIHRoZSBjYXNl
ICh5ZXMgaWYgdGhlIG1hY3JvIGlzCitgI2RlZmluZWRgIHRvIDEsIG5vIGlmIGl0J3MgdW5kZWZp
bmVkLikuCiAKIElmIEdvb2dsZSBUZXN0IGRvZXNuJ3QgY29ycmVjdGx5IGRldGVjdCB3aGV0aGVy
IHB0aHJlYWQgaXMgYXZhaWxhYmxlIGluIHlvdXIKIGVudmlyb25tZW50LCB5b3UgY2FuIGZvcmNl
IGl0IHdpdGgKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9z
cmMvaW5jbHVkZS9ndGVzdC9ndGVzdC1kZWF0aC10ZXN0LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3Bh
cnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QtZGVhdGgtdGVzdC5oCmluZGV4
IDIwYzU0ZDg2OTUxOWY2OTMwZTdlYmZkMmMwODA1YmFjYTQyMjE2YmEuLmRjODc4ZmZiYjNhZTU2
YTJiOTFiOTMwYjcxYTdjYmI1MDMyMjJhNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRf
cGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9ndGVzdC1kZWF0aC10ZXN0LmgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2d0
ZXN0LWRlYXRoLXRlc3QuaApAQCAtMTYxLDcgKzE2MSw2IEBAIEdURVNUX0FQSV8gYm9vbCBJbkRl
YXRoVGVzdENoaWxkKCk7CiAvLyAgIGlzIHJhcmVseSBhIHByb2JsZW0gYXMgcGVvcGxlIHVzdWFs
bHkgZG9uJ3QgcHV0IHRoZSB0ZXN0IGJpbmFyeQogLy8gICBkaXJlY3RvcnkgaW4gUEFUSC4KIC8v
Ci0vLyBGSVhNRTogbWFrZSB0aHJlYWQtc2FmZSBkZWF0aCB0ZXN0cyBzZWFyY2ggdGhlIFBBVEgu
CiAKIC8vIEFzc2VydHMgdGhhdCBhIGdpdmVuIHN0YXRlbWVudCBjYXVzZXMgdGhlIHByb2dyYW0g
dG8gZXhpdCwgd2l0aCBhbgogLy8gaW50ZWdlciBleGl0IHN0YXR1cyB0aGF0IHNhdGlzZmllcyBw
cmVkaWNhdGUsIGFuZCBlbWl0dGluZyBlcnJvciBvdXRwdXQKQEAgLTE3MCw3ICsxNjksNyBAQCBH
VEVTVF9BUElfIGJvb2wgSW5EZWF0aFRlc3RDaGlsZCgpOwogICAgIEdURVNUX0RFQVRIX1RFU1Rf
KHN0YXRlbWVudCwgcHJlZGljYXRlLCByZWdleCwgR1RFU1RfRkFUQUxfRkFJTFVSRV8pCiAKIC8v
IExpa2UgQVNTRVJUX0VYSVQsIGJ1dCBjb250aW51ZXMgb24gdG8gc3VjY2Vzc2l2ZSB0ZXN0cyBp
biB0aGUKLS8vIHRlc3QgY2FzZSwgaWYgYW55OgorLy8gdGVzdCBzdWl0ZSwgaWYgYW55OgogIyBk
ZWZpbmUgRVhQRUNUX0VYSVQoc3RhdGVtZW50LCBwcmVkaWNhdGUsIHJlZ2V4KSBcCiAgICAgR1RF
U1RfREVBVEhfVEVTVF8oc3RhdGVtZW50LCBwcmVkaWNhdGUsIHJlZ2V4LCBHVEVTVF9OT05GQVRB
TF9GQUlMVVJFXykKIApAQCAtMTgxLDcgKzE4MCw3IEBAIEdURVNUX0FQSV8gYm9vbCBJbkRlYXRo
VGVzdENoaWxkKCk7CiAgICAgQVNTRVJUX0VYSVQoc3RhdGVtZW50LCA6OnRlc3Rpbmc6OmludGVy
bmFsOjpFeGl0ZWRVbnN1Y2Nlc3NmdWxseSwgcmVnZXgpCiAKIC8vIExpa2UgQVNTRVJUX0RFQVRI
LCBidXQgY29udGludWVzIG9uIHRvIHN1Y2Nlc3NpdmUgdGVzdHMgaW4gdGhlCi0vLyB0ZXN0IGNh
c2UsIGlmIGFueToKKy8vIHRlc3Qgc3VpdGUsIGlmIGFueToKICMgZGVmaW5lIEVYUEVDVF9ERUFU
SChzdGF0ZW1lbnQsIHJlZ2V4KSBcCiAgICAgRVhQRUNUX0VYSVQoc3RhdGVtZW50LCA6OnRlc3Rp
bmc6OmludGVybmFsOjpFeGl0ZWRVbnN1Y2Nlc3NmdWxseSwgcmVnZXgpCiAKQEAgLTIyOCw3ICsy
MjcsNyBAQCBjbGFzcyBHVEVTVF9BUElfIEtpbGxlZEJ5U2lnbmFsIHsKIC8vICAgcmV0dXJuIDEy
OwogLy8gfQogLy8KLS8vIFRFU1QoVGVzdENhc2UsIFRlc3REaWVPcjEyV29ya3NJbkRnYkFuZE9w
dCkgeworLy8gVEVTVChUZXN0U3VpdGUsIFRlc3REaWVPcjEyV29ya3NJbkRnYkFuZE9wdCkgewog
Ly8gICBpbnQgc2lkZWVmZmVjdCA9IDA7CiAvLyAgIC8vIE9ubHkgYXNzZXJ0cyBpbiBkYmcuCiAv
LyAgIEVYUEVDVF9ERUJVR19ERUFUSChEaWVJbkRlYnVnT3IxMigmc2lkZWVmZmVjdCksICJkZWF0
aCIpOwpAQCAtMjc3LDIwICsyNzYsMjAgQEAgY2xhc3MgR1RFU1RfQVBJXyBLaWxsZWRCeVNpZ25h
bCB7CiAvLyBUaGlzIG1hY3JvIGlzIHVzZWQgZm9yIGltcGxlbWVudGluZyBtYWNyb3Mgc3VjaCBh
cwogLy8gRVhQRUNUX0RFQVRIX0lGX1NVUFBPUlRFRCBhbmQgQVNTRVJUX0RFQVRIX0lGX1NVUFBP
UlRFRCBvbiBzeXN0ZW1zIHdoZXJlCiAvLyBkZWF0aCB0ZXN0cyBhcmUgbm90IHN1cHBvcnRlZC4g
VGhvc2UgbWFjcm9zIG11c3QgY29tcGlsZSBvbiBzdWNoIHN5c3RlbXMKLS8vIGlmZiBFWFBFQ1Rf
REVBVEggYW5kIEFTU0VSVF9ERUFUSCBjb21waWxlIHdpdGggdGhlIHNhbWUgcGFyYW1ldGVycyBv
bgotLy8gc3lzdGVtcyB0aGF0IHN1cHBvcnQgZGVhdGggdGVzdHMuIFRoaXMgYWxsb3dzIG9uZSB0
byB3cml0ZSBzdWNoIGEgbWFjcm8KLS8vIG9uIGEgc3lzdGVtIHRoYXQgZG9lcyBub3Qgc3VwcG9y
dCBkZWF0aCB0ZXN0cyBhbmQgYmUgc3VyZSB0aGF0IGl0IHdpbGwKLS8vIGNvbXBpbGUgb24gYSBk
ZWF0aC10ZXN0IHN1cHBvcnRpbmcgc3lzdGVtLiBJdCBpcyBleHBvc2VkIHB1YmxpY2x5IHNvIHRo
YXQKLS8vIHN5c3RlbXMgdGhhdCBoYXZlIGRlYXRoLXRlc3RzIHdpdGggc3RyaWN0ZXIgcmVxdWly
ZW1lbnRzIHRoYW4KLS8vIEdURVNUX0hBU19ERUFUSF9URVNUIGNhbiB3cml0ZSB0aGVpciBvd24g
ZXF1aXZhbGVudCBvZgotLy8gRVhQRUNUX0RFQVRIX0lGX1NVUFBPUlRFRCBhbmQgQVNTRVJUX0RF
QVRIX0lGX1NVUFBPUlRFRC4KKy8vIGlmIGFuZCBvbmx5IGlmIEVYUEVDVF9ERUFUSCBhbmQgQVNT
RVJUX0RFQVRIIGNvbXBpbGUgd2l0aCB0aGUgc2FtZSBwYXJhbWV0ZXJzCisvLyBvbiBzeXN0ZW1z
IHRoYXQgc3VwcG9ydCBkZWF0aCB0ZXN0cy4gVGhpcyBhbGxvd3Mgb25lIHRvIHdyaXRlIHN1Y2gg
YSBtYWNybyBvbgorLy8gYSBzeXN0ZW0gdGhhdCBkb2VzIG5vdCBzdXBwb3J0IGRlYXRoIHRlc3Rz
IGFuZCBiZSBzdXJlIHRoYXQgaXQgd2lsbCBjb21waWxlCisvLyBvbiBhIGRlYXRoLXRlc3Qgc3Vw
cG9ydGluZyBzeXN0ZW0uIEl0IGlzIGV4cG9zZWQgcHVibGljbHkgc28gdGhhdCBzeXN0ZW1zCisv
LyB0aGF0IGhhdmUgZGVhdGgtdGVzdHMgd2l0aCBzdHJpY3RlciByZXF1aXJlbWVudHMgdGhhbiBH
VEVTVF9IQVNfREVBVEhfVEVTVAorLy8gY2FuIHdyaXRlIHRoZWlyIG93biBlcXVpdmFsZW50IG9m
IEVYUEVDVF9ERUFUSF9JRl9TVVBQT1JURUQgYW5kCisvLyBBU1NFUlRfREVBVEhfSUZfU1VQUE9S
VEVELgogLy8KIC8vIFBhcmFtZXRlcnM6CiAvLyAgIHN0YXRlbWVudCAtICBBIHN0YXRlbWVudCB0
aGF0IGEgbWFjcm8gc3VjaCBhcyBFWFBFQ1RfREVBVEggd291bGQgdGVzdAogLy8gICAgICAgICAg
ICAgICAgZm9yIHByb2dyYW0gdGVybWluYXRpb24uIFRoaXMgbWFjcm8gaGFzIHRvIG1ha2Ugc3Vy
ZSB0aGlzCiAvLyAgICAgICAgICAgICAgICBzdGF0ZW1lbnQgaXMgY29tcGlsZWQgYnV0IG5vdCBl
eGVjdXRlZCwgdG8gZW5zdXJlIHRoYXQKIC8vICAgICAgICAgICAgICAgIEVYUEVDVF9ERUFUSF9J
Rl9TVVBQT1JURUQgY29tcGlsZXMgd2l0aCBhIGNlcnRhaW4KLS8vICAgICAgICAgICAgICAgIHBh
cmFtZXRlciBpZmYgRVhQRUNUX0RFQVRIIGNvbXBpbGVzIHdpdGggaXQuCisvLyAgICAgICAgICAg
ICAgICBwYXJhbWV0ZXIgaWYgYW5kIG9ubHkgaWYgRVhQRUNUX0RFQVRIIGNvbXBpbGVzIHdpdGgg
aXQuCiAvLyAgIHJlZ2V4ICAgICAtICBBIHJlZ2V4IHRoYXQgYSBtYWNybyBzdWNoIGFzIEVYUEVD
VF9ERUFUSCB3b3VsZCB1c2UgdG8gdGVzdAogLy8gICAgICAgICAgICAgICAgdGhlIG91dHB1dCBv
ZiBzdGF0ZW1lbnQuICBUaGlzIHBhcmFtZXRlciBoYXMgdG8gYmUKIC8vICAgICAgICAgICAgICAg
IGNvbXBpbGVkIGJ1dCBub3QgZXZhbHVhdGVkIGJ5IHRoaXMgbWFjcm8sIHRvIGVuc3VyZSB0aGF0
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1
ZGUvZ3Rlc3QvZ3Rlc3QtbWF0Y2hlcnMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xl
dGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9ndGVzdC1tYXRjaGVycy5oCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE2MWNl
ZjQwOTNjYzAwYzUzMmY1NmFiMGYzNTVlM2Q1ZWU5MWY2YzgKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3Qt
bWF0Y2hlcnMuaApAQCAtMCwwICsxLDc1MCBAQAorLy8gQ29weXJpZ2h0IDIwMDcsIEdvb2dsZSBJ
bmMuCisvLyBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8KKy8vIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorLy8gbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zIGFyZQorLy8gbWV0OgorLy8KKy8vICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisvLyBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisvLyAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisv
LyBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyCisvLyBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisvLyBkaXN0cmlidXRpb24uCisvLyAgICAgKiBOZWl0
aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisvLyBjb250
cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQgZnJvbQorLy8gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4g
cGVybWlzc2lvbi4KKy8vCisvLyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisvLyAiQVMgSVMiIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorLy8gTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SCisvLyBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVAorLy8gT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisvLyBTUEVDSUFMLCBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisvLyBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwKKy8vIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorLy8gVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorLy8gKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
CisvLyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorCisvLyBUaGUgR29vZ2xlIEMrKyBUZXN0aW5nIGFuZCBNb2NraW5n
IEZyYW1ld29yayAoR29vZ2xlIFRlc3QpCisvLworLy8gVGhpcyBmaWxlIGltcGxlbWVudHMganVz
dCBlbm91Z2ggb2YgdGhlIG1hdGNoZXIgaW50ZXJmYWNlIHRvIGFsbG93CisvLyBFWFBFQ1RfREVB
VEggYW5kIGZyaWVuZHMgdG8gYWNjZXB0IGEgbWF0Y2hlciBhcmd1bWVudC4KKworLy8gSVdZVSBw
cmFnbWE6IHByaXZhdGUsIGluY2x1ZGUgInRlc3RpbmcvYmFzZS9wdWJsaWMvZ3VuaXQuaCIKKy8v
IElXWVUgcHJhZ21hOiBmcmllbmQgdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9nb29nbGVtb2NrLy4q
CisvLyBJV1lVIHByYWdtYTogZnJpZW5kIHRoaXJkX3BhcnR5L2dvb2dsZXRlc3QvZ29vZ2xldGVz
dC8uKgorCisjaWZuZGVmIEdURVNUX0lOQ0xVREVfR1RFU1RfR1RFU1RfTUFUQ0hFUlNfSF8KKyNk
ZWZpbmUgR1RFU1RfSU5DTFVERV9HVEVTVF9HVEVTVF9NQVRDSEVSU19IXworCisjaW5jbHVkZSA8
bWVtb3J5PgorI2luY2x1ZGUgPG9zdHJlYW0+CisjaW5jbHVkZSA8c3RyaW5nPgorI2luY2x1ZGUg
PHR5cGVfdHJhaXRzPgorCisjaW5jbHVkZSAiZ3Rlc3QvZ3Rlc3QtcHJpbnRlcnMuaCIKKyNpbmNs
dWRlICJndGVzdC9pbnRlcm5hbC9ndGVzdC1pbnRlcm5hbC5oIgorI2luY2x1ZGUgImd0ZXN0L2lu
dGVybmFsL2d0ZXN0LXBvcnQuaCIKKworLy8gTVNWQyB3YXJuaW5nIEM1MDQ2IGlzIG5ldyBhcyBv
ZiBWUzIwMTcgdmVyc2lvbiAxNS44LgorI2lmIGRlZmluZWQoX01TQ19WRVIpICYmIF9NU0NfVkVS
ID49IDE5MTUKKyNkZWZpbmUgR1RFU1RfTUFZQkVfNTA0Nl8gNTA0NgorI2Vsc2UKKyNkZWZpbmUg
R1RFU1RfTUFZQkVfNTA0Nl8KKyNlbmRpZgorCitHVEVTVF9ESVNBQkxFX01TQ19XQVJOSU5HU19Q
VVNIXygKKyAgICA0MjUxIEdURVNUX01BWUJFXzUwNDZfIC8qIGNsYXNzIEEgbmVlZHMgdG8gaGF2
ZSBkbGwtaW50ZXJmYWNlIHRvIGJlIHVzZWQgYnkKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNsaWVudHMgb2YgY2xhc3MgQiAqLworICAgIC8qIFN5bWJvbCBpbnZvbHZpbmcgdHlwZSB3
aXRoIGludGVybmFsIGxpbmthZ2Ugbm90IGRlZmluZWQgKi8pCisKK25hbWVzcGFjZSB0ZXN0aW5n
IHsKKworLy8gVG8gaW1wbGVtZW50IGEgbWF0Y2hlciBGb28gZm9yIHR5cGUgVCwgZGVmaW5lOgor
Ly8gICAxLiBhIGNsYXNzIEZvb01hdGNoZXJJbXBsIHRoYXQgaW1wbGVtZW50cyB0aGUKKy8vICAg
ICAgTWF0Y2hlckludGVyZmFjZTxUPiBpbnRlcmZhY2UsIGFuZAorLy8gICAyLiBhIGZhY3Rvcnkg
ZnVuY3Rpb24gdGhhdCBjcmVhdGVzIGEgTWF0Y2hlcjxUPiBvYmplY3QgZnJvbSBhCisvLyAgICAg
IEZvb01hdGNoZXJJbXBsKi4KKy8vCisvLyBUaGUgdHdvLWxldmVsIGRlbGVnYXRpb24gZGVzaWdu
IG1ha2VzIGl0IHBvc3NpYmxlIHRvIGFsbG93IGEgdXNlcgorLy8gdG8gd3JpdGUgInYiIGluc3Rl
YWQgb2YgIkVxKHYpIiB3aGVyZSBhIE1hdGNoZXIgaXMgZXhwZWN0ZWQsIHdoaWNoCisvLyBpcyBp
bXBvc3NpYmxlIGlmIHdlIHBhc3MgbWF0Y2hlcnMgYnkgcG9pbnRlcnMuICBJdCBhbHNvIGVhc2Vz
CisvLyBvd25lcnNoaXAgbWFuYWdlbWVudCBhcyBNYXRjaGVyIG9iamVjdHMgY2FuIG5vdyBiZSBj
b3BpZWQgbGlrZQorLy8gcGxhaW4gdmFsdWVzLgorCisvLyBNYXRjaFJlc3VsdExpc3RlbmVyIGlz
IGFuIGFic3RyYWN0IGNsYXNzLiAgSXRzIDw8IG9wZXJhdG9yIGNhbiBiZQorLy8gdXNlZCBieSBh
IG1hdGNoZXIgdG8gZXhwbGFpbiB3aHkgYSB2YWx1ZSBtYXRjaGVzIG9yIGRvZXNuJ3QgbWF0Y2gu
CisvLworY2xhc3MgTWF0Y2hSZXN1bHRMaXN0ZW5lciB7CisgcHVibGljOgorICAvLyBDcmVhdGVz
IGEgbGlzdGVuZXIgb2JqZWN0IHdpdGggdGhlIGdpdmVuIHVuZGVybHlpbmcgb3N0cmVhbS4gIFRo
ZQorICAvLyBsaXN0ZW5lciBkb2VzIG5vdCBvd24gdGhlIG9zdHJlYW0sIGFuZCBkb2VzIG5vdCBk
ZXJlZmVyZW5jZSBpdAorICAvLyBpbiB0aGUgY29uc3RydWN0b3Igb3IgZGVzdHJ1Y3Rvci4KKyAg
ZXhwbGljaXQgTWF0Y2hSZXN1bHRMaXN0ZW5lcig6OnN0ZDo6b3N0cmVhbSogb3MpIDogc3RyZWFt
Xyhvcykge30KKyAgdmlydHVhbCB+TWF0Y2hSZXN1bHRMaXN0ZW5lcigpID0gMDsgIC8vIE1ha2Vz
IHRoaXMgY2xhc3MgYWJzdHJhY3QuCisKKyAgLy8gU3RyZWFtcyB4IHRvIHRoZSB1bmRlcmx5aW5n
IG9zdHJlYW07IGRvZXMgbm90aGluZyBpZiB0aGUgb3N0cmVhbQorICAvLyBpcyBOVUxMLgorICB0
ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KKyAgTWF0Y2hSZXN1bHRMaXN0ZW5lciYgb3BlcmF0b3I8PChj
b25zdCBUJiB4KSB7CisgICAgaWYgKHN0cmVhbV8gIT0gbnVsbHB0cikgKnN0cmVhbV8gPDwgeDsK
KyAgICByZXR1cm4gKnRoaXM7CisgIH0KKworICAvLyBSZXR1cm5zIHRoZSB1bmRlcmx5aW5nIG9z
dHJlYW0uCisgIDo6c3RkOjpvc3RyZWFtKiBzdHJlYW0oKSB7IHJldHVybiBzdHJlYW1fOyB9CisK
KyAgLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoZSBsaXN0ZW5lciBpcyBpbnRlcmVz
dGVkIGluIGFuIGV4cGxhbmF0aW9uCisgIC8vIG9mIHRoZSBtYXRjaCByZXN1bHQuICBBIG1hdGNo
ZXIncyBNYXRjaEFuZEV4cGxhaW4oKSBtZXRob2QgY2FuIHVzZQorICAvLyB0aGlzIGluZm9ybWF0
aW9uIHRvIGF2b2lkIGdlbmVyYXRpbmcgdGhlIGV4cGxhbmF0aW9uIHdoZW4gbm8gb25lCisgIC8v
IGludGVuZHMgdG8gaGVhciBpdC4KKyAgYm9vbCBJc0ludGVyZXN0ZWQoKSBjb25zdCB7IHJldHVy
biBzdHJlYW1fICE9IG51bGxwdHI7IH0KKworIHByaXZhdGU6CisgIDo6c3RkOjpvc3RyZWFtKiBj
b25zdCBzdHJlYW1fOworCisgIEdURVNUX0RJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTl8oTWF0Y2hS
ZXN1bHRMaXN0ZW5lcik7Cit9OworCitpbmxpbmUgTWF0Y2hSZXN1bHRMaXN0ZW5lcjo6fk1hdGNo
UmVzdWx0TGlzdGVuZXIoKSB7Cit9CisKKy8vIEFuIGluc3RhbmNlIG9mIGEgc3ViY2xhc3Mgb2Yg
dGhpcyBrbm93cyBob3cgdG8gZGVzY3JpYmUgaXRzZWxmIGFzIGEKKy8vIG1hdGNoZXIuCitjbGFz
cyBNYXRjaGVyRGVzY3JpYmVySW50ZXJmYWNlIHsKKyBwdWJsaWM6CisgIHZpcnR1YWwgfk1hdGNo
ZXJEZXNjcmliZXJJbnRlcmZhY2UoKSB7fQorCisgIC8vIERlc2NyaWJlcyB0aGlzIG1hdGNoZXIg
dG8gYW4gb3N0cmVhbS4gIFRoZSBmdW5jdGlvbiBzaG91bGQgcHJpbnQKKyAgLy8gYSB2ZXJiIHBo
cmFzZSB0aGF0IGRlc2NyaWJlcyB0aGUgcHJvcGVydHkgYSB2YWx1ZSBtYXRjaGluZyB0aGlzCisg
IC8vIG1hdGNoZXIgc2hvdWxkIGhhdmUuICBUaGUgc3ViamVjdCBvZiB0aGUgdmVyYiBwaHJhc2Ug
aXMgdGhlIHZhbHVlCisgIC8vIGJlaW5nIG1hdGNoZWQuICBGb3IgZXhhbXBsZSwgdGhlIERlc2Ny
aWJlVG8oKSBtZXRob2Qgb2YgdGhlIEd0KDcpCisgIC8vIG1hdGNoZXIgcHJpbnRzICJpcyBncmVh
dGVyIHRoYW4gNyIuCisgIHZpcnR1YWwgdm9pZCBEZXNjcmliZVRvKDo6c3RkOjpvc3RyZWFtKiBv
cykgY29uc3QgPSAwOworCisgIC8vIERlc2NyaWJlcyB0aGUgbmVnYXRpb24gb2YgdGhpcyBtYXRj
aGVyIHRvIGFuIG9zdHJlYW0uICBGb3IKKyAgLy8gZXhhbXBsZSwgaWYgdGhlIGRlc2NyaXB0aW9u
IG9mIHRoaXMgbWF0Y2hlciBpcyAiaXMgZ3JlYXRlciB0aGFuCisgIC8vIDciLCB0aGUgbmVnYXRl
ZCBkZXNjcmlwdGlvbiBjb3VsZCBiZSAiaXMgbm90IGdyZWF0ZXIgdGhhbiA3Ii4KKyAgLy8gWW91
IGFyZSBub3QgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgdGhpcyB3aGVuIGltcGxlbWVudGluZworICAv
LyBNYXRjaGVySW50ZXJmYWNlLCBidXQgaXQgaXMgaGlnaGx5IGFkdmlzZWQgc28gdGhhdCB5b3Vy
IG1hdGNoZXIKKyAgLy8gY2FuIHByb2R1Y2UgZ29vZCBlcnJvciBtZXNzYWdlcy4KKyAgdmlydHVh
bCB2b2lkIERlc2NyaWJlTmVnYXRpb25Ubyg6OnN0ZDo6b3N0cmVhbSogb3MpIGNvbnN0IHsKKyAg
ICAqb3MgPDwgIm5vdCAoIjsKKyAgICBEZXNjcmliZVRvKG9zKTsKKyAgICAqb3MgPDwgIikiOwor
ICB9Cit9OworCisvLyBUaGUgaW1wbGVtZW50YXRpb24gb2YgYSBtYXRjaGVyLgordGVtcGxhdGUg
PHR5cGVuYW1lIFQ+CitjbGFzcyBNYXRjaGVySW50ZXJmYWNlIDogcHVibGljIE1hdGNoZXJEZXNj
cmliZXJJbnRlcmZhY2UgeworIHB1YmxpYzoKKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5
IGlmIHRoZSBtYXRjaGVyIG1hdGNoZXMgeDsgYWxzbyBleHBsYWlucyB0aGUKKyAgLy8gbWF0Y2gg
cmVzdWx0IHRvICdsaXN0ZW5lcicgaWYgbmVjZXNzYXJ5IChzZWUgdGhlIG5leHQgcGFyYWdyYXBo
KSwgaW4KKyAgLy8gdGhlIGZvcm0gb2YgYSBub24tcmVzdHJpY3RpdmUgcmVsYXRpdmUgY2xhdXNl
ICgid2hpY2ggLi4uIiwKKyAgLy8gIndob3NlIC4uLiIsIGV0YykgdGhhdCBkZXNjcmliZXMgeC4g
IEZvciBleGFtcGxlLCB0aGUKKyAgLy8gTWF0Y2hBbmRFeHBsYWluKCkgbWV0aG9kIG9mIHRoZSBQ
b2ludGVlKC4uLikgbWF0Y2hlciBzaG91bGQKKyAgLy8gZ2VuZXJhdGUgYW4gZXhwbGFuYXRpb24g
bGlrZSAid2hpY2ggcG9pbnRzIHRvIC4uLiIuCisgIC8vCisgIC8vIEltcGxlbWVudGF0aW9ucyBv
ZiBNYXRjaEFuZEV4cGxhaW4oKSBzaG91bGQgYWRkIGFuIGV4cGxhbmF0aW9uIG9mCisgIC8vIHRo
ZSBtYXRjaCByZXN1bHQgKmlmIGFuZCBvbmx5IGlmKiB0aGV5IGNhbiBwcm92aWRlIGFkZGl0aW9u
YWwKKyAgLy8gaW5mb3JtYXRpb24gdGhhdCdzIG5vdCBhbHJlYWR5IHByZXNlbnQgKG9yIG5vdCBv
YnZpb3VzKSBpbiB0aGUKKyAgLy8gcHJpbnQtb3V0IG9mIHggYW5kIHRoZSBtYXRjaGVyJ3MgZGVz
Y3JpcHRpb24uICBXaGV0aGVyIHRoZSBtYXRjaAorICAvLyBzdWNjZWVkcyBpcyBub3QgYSBmYWN0
b3IgaW4gZGVjaWRpbmcgd2hldGhlciBhbiBleHBsYW5hdGlvbiBpcworICAvLyBuZWVkZWQsIGFz
IHNvbWV0aW1lcyB0aGUgY2FsbGVyIG5lZWRzIHRvIHByaW50IGEgZmFpbHVyZSBtZXNzYWdlCisg
IC8vIHdoZW4gdGhlIG1hdGNoIHN1Y2NlZWRzIChlLmcuIHdoZW4gdGhlIG1hdGNoZXIgaXMgdXNl
ZCBpbnNpZGUKKyAgLy8gTm90KCkpLgorICAvLworICAvLyBGb3IgZXhhbXBsZSwgYSAiaGFzIGF0
IGxlYXN0IDEwIGVsZW1lbnRzIiBtYXRjaGVyIHNob3VsZCBleHBsYWluCisgIC8vIHdoYXQgdGhl
IGFjdHVhbCBlbGVtZW50IGNvdW50IGlzLCByZWdhcmRsZXNzIG9mIHRoZSBtYXRjaCByZXN1bHQs
CisgIC8vIGFzIGl0IGlzIHVzZWZ1bCBpbmZvcm1hdGlvbiB0byB0aGUgcmVhZGVyOyBvbiB0aGUg
b3RoZXIgaGFuZCwgYW4KKyAgLy8gImlzIGVtcHR5IiBtYXRjaGVyIHByb2JhYmx5IG9ubHkgbmVl
ZHMgdG8gZXhwbGFpbiB3aGF0IHRoZSBhY3R1YWwKKyAgLy8gc2l6ZSBpcyB3aGVuIHRoZSBtYXRj
aCBmYWlscywgYXMgaXQncyByZWR1bmRhbnQgdG8gc2F5IHRoYXQgdGhlCisgIC8vIHNpemUgaXMg
MCB3aGVuIHRoZSB2YWx1ZSBpcyBhbHJlYWR5IGtub3duIHRvIGJlIGVtcHR5LgorICAvLworICAv
LyBZb3Ugc2hvdWxkIG92ZXJyaWRlIHRoaXMgbWV0aG9kIHdoZW4gZGVmaW5pbmcgYSBuZXcgbWF0
Y2hlci4KKyAgLy8KKyAgLy8gSXQncyB0aGUgcmVzcG9uc2liaWxpdHkgb2YgdGhlIGNhbGxlciAo
R29vZ2xlIFRlc3QpIHRvIGd1YXJhbnRlZQorICAvLyB0aGF0ICdsaXN0ZW5lcicgaXMgbm90IE5V
TEwuICBUaGlzIGhlbHBzIHRvIHNpbXBsaWZ5IGEgbWF0Y2hlcidzCisgIC8vIGltcGxlbWVudGF0
aW9uIHdoZW4gaXQgZG9lc24ndCBjYXJlIGFib3V0IHRoZSBwZXJmb3JtYW5jZSwgYXMgaXQKKyAg
Ly8gY2FuIHRhbGsgdG8gJ2xpc3RlbmVyJyB3aXRob3V0IGNoZWNraW5nIGl0cyB2YWxpZGl0eSBm
aXJzdC4KKyAgLy8gSG93ZXZlciwgaW4gb3JkZXIgdG8gaW1wbGVtZW50IGR1bW15IGxpc3RlbmVy
cyBlZmZpY2llbnRseSwKKyAgLy8gbGlzdGVuZXItPnN0cmVhbSgpIG1heSBiZSBOVUxMLgorICB2
aXJ0dWFsIGJvb2wgTWF0Y2hBbmRFeHBsYWluKFQgeCwgTWF0Y2hSZXN1bHRMaXN0ZW5lciogbGlz
dGVuZXIpIGNvbnN0ID0gMDsKKworICAvLyBJbmhlcml0cyB0aGVzZSBtZXRob2RzIGZyb20gTWF0
Y2hlckRlc2NyaWJlckludGVyZmFjZToKKyAgLy8gICB2aXJ0dWFsIHZvaWQgRGVzY3JpYmVUbyg6
OnN0ZDo6b3N0cmVhbSogb3MpIGNvbnN0ID0gMDsKKyAgLy8gICB2aXJ0dWFsIHZvaWQgRGVzY3Jp
YmVOZWdhdGlvblRvKDo6c3RkOjpvc3RyZWFtKiBvcykgY29uc3Q7Cit9OworCituYW1lc3BhY2Ug
aW50ZXJuYWwgeworCisvLyBDb252ZXJ0cyBhIE1hdGNoZXJJbnRlcmZhY2U8VD4gdG8gYSBNYXRj
aGVySW50ZXJmYWNlPGNvbnN0IFQmPi4KK3RlbXBsYXRlIDx0eXBlbmFtZSBUPgorY2xhc3MgTWF0
Y2hlckludGVyZmFjZUFkYXB0ZXIgOiBwdWJsaWMgTWF0Y2hlckludGVyZmFjZTxjb25zdCBUJj4g
eworIHB1YmxpYzoKKyAgZXhwbGljaXQgTWF0Y2hlckludGVyZmFjZUFkYXB0ZXIoY29uc3QgTWF0
Y2hlckludGVyZmFjZTxUPiogaW1wbCkKKyAgICAgIDogaW1wbF8oaW1wbCkge30KKyAgfk1hdGNo
ZXJJbnRlcmZhY2VBZGFwdGVyKCkgb3ZlcnJpZGUgeyBkZWxldGUgaW1wbF87IH0KKworICB2b2lk
IERlc2NyaWJlVG8oOjpzdGQ6Om9zdHJlYW0qIG9zKSBjb25zdCBvdmVycmlkZSB7IGltcGxfLT5E
ZXNjcmliZVRvKG9zKTsgfQorCisgIHZvaWQgRGVzY3JpYmVOZWdhdGlvblRvKDo6c3RkOjpvc3Ry
ZWFtKiBvcykgY29uc3Qgb3ZlcnJpZGUgeworICAgIGltcGxfLT5EZXNjcmliZU5lZ2F0aW9uVG8o
b3MpOworICB9CisKKyAgYm9vbCBNYXRjaEFuZEV4cGxhaW4oY29uc3QgVCYgeCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgTWF0Y2hSZXN1bHRMaXN0ZW5lciogbGlzdGVuZXIpIGNvbnN0IG92ZXJy
aWRlIHsKKyAgICByZXR1cm4gaW1wbF8tPk1hdGNoQW5kRXhwbGFpbih4LCBsaXN0ZW5lcik7Cisg
IH0KKworIHByaXZhdGU6CisgIGNvbnN0IE1hdGNoZXJJbnRlcmZhY2U8VD4qIGNvbnN0IGltcGxf
OworCisgIEdURVNUX0RJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTl8oTWF0Y2hlckludGVyZmFjZUFk
YXB0ZXIpOworfTsKKworc3RydWN0IEFueUVxIHsKKyAgdGVtcGxhdGUgPHR5cGVuYW1lIEEsIHR5
cGVuYW1lIEI+CisgIGJvb2wgb3BlcmF0b3IoKShjb25zdCBBJiBhLCBjb25zdCBCJiBiKSBjb25z
dCB7IHJldHVybiBhID09IGI7IH0KK307CitzdHJ1Y3QgQW55TmUgeworICB0ZW1wbGF0ZSA8dHlw
ZW5hbWUgQSwgdHlwZW5hbWUgQj4KKyAgYm9vbCBvcGVyYXRvcigpKGNvbnN0IEEmIGEsIGNvbnN0
IEImIGIpIGNvbnN0IHsgcmV0dXJuIGEgIT0gYjsgfQorfTsKK3N0cnVjdCBBbnlMdCB7CisgIHRl
bXBsYXRlIDx0eXBlbmFtZSBBLCB0eXBlbmFtZSBCPgorICBib29sIG9wZXJhdG9yKCkoY29uc3Qg
QSYgYSwgY29uc3QgQiYgYikgY29uc3QgeyByZXR1cm4gYSA8IGI7IH0KK307CitzdHJ1Y3QgQW55
R3QgeworICB0ZW1wbGF0ZSA8dHlwZW5hbWUgQSwgdHlwZW5hbWUgQj4KKyAgYm9vbCBvcGVyYXRv
cigpKGNvbnN0IEEmIGEsIGNvbnN0IEImIGIpIGNvbnN0IHsgcmV0dXJuIGEgPiBiOyB9Cit9Owor
c3RydWN0IEFueUxlIHsKKyAgdGVtcGxhdGUgPHR5cGVuYW1lIEEsIHR5cGVuYW1lIEI+CisgIGJv
b2wgb3BlcmF0b3IoKShjb25zdCBBJiBhLCBjb25zdCBCJiBiKSBjb25zdCB7IHJldHVybiBhIDw9
IGI7IH0KK307CitzdHJ1Y3QgQW55R2UgeworICB0ZW1wbGF0ZSA8dHlwZW5hbWUgQSwgdHlwZW5h
bWUgQj4KKyAgYm9vbCBvcGVyYXRvcigpKGNvbnN0IEEmIGEsIGNvbnN0IEImIGIpIGNvbnN0IHsg
cmV0dXJuIGEgPj0gYjsgfQorfTsKKworLy8gQSBtYXRjaCByZXN1bHQgbGlzdGVuZXIgdGhhdCBp
Z25vcmVzIHRoZSBleHBsYW5hdGlvbi4KK2NsYXNzIER1bW15TWF0Y2hSZXN1bHRMaXN0ZW5lciA6
IHB1YmxpYyBNYXRjaFJlc3VsdExpc3RlbmVyIHsKKyBwdWJsaWM6CisgIER1bW15TWF0Y2hSZXN1
bHRMaXN0ZW5lcigpIDogTWF0Y2hSZXN1bHRMaXN0ZW5lcihudWxscHRyKSB7fQorCisgcHJpdmF0
ZToKKyAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhEdW1teU1hdGNoUmVzdWx0TGlz
dGVuZXIpOworfTsKKworLy8gQSBtYXRjaCByZXN1bHQgbGlzdGVuZXIgdGhhdCBmb3J3YXJkcyB0
aGUgZXhwbGFuYXRpb24gdG8gYSBnaXZlbgorLy8gb3N0cmVhbS4gIFRoZSBkaWZmZXJlbmNlIGJl
dHdlZW4gdGhpcyBhbmQgTWF0Y2hSZXN1bHRMaXN0ZW5lciBpcworLy8gdGhhdCB0aGUgZm9ybWVy
IGlzIGNvbmNyZXRlLgorY2xhc3MgU3RyZWFtTWF0Y2hSZXN1bHRMaXN0ZW5lciA6IHB1YmxpYyBN
YXRjaFJlc3VsdExpc3RlbmVyIHsKKyBwdWJsaWM6CisgIGV4cGxpY2l0IFN0cmVhbU1hdGNoUmVz
dWx0TGlzdGVuZXIoOjpzdGQ6Om9zdHJlYW0qIG9zKQorICAgICAgOiBNYXRjaFJlc3VsdExpc3Rl
bmVyKG9zKSB7fQorCisgcHJpdmF0ZToKKyAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdO
XyhTdHJlYW1NYXRjaFJlc3VsdExpc3RlbmVyKTsKK307CisKKy8vIEFuIGludGVybmFsIGNsYXNz
IGZvciBpbXBsZW1lbnRpbmcgTWF0Y2hlcjxUPiwgd2hpY2ggd2lsbCBkZXJpdmUKKy8vIGZyb20g
aXQuICBXZSBwdXQgZnVuY3Rpb25hbGl0aWVzIGNvbW1vbiB0byBhbGwgTWF0Y2hlcjxUPgorLy8g
c3BlY2lhbGl6YXRpb25zIGhlcmUgdG8gYXZvaWQgY29kZSBkdXBsaWNhdGlvbi4KK3RlbXBsYXRl
IDx0eXBlbmFtZSBUPgorY2xhc3MgTWF0Y2hlckJhc2UgeworIHB1YmxpYzoKKyAgLy8gUmV0dXJu
cyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoZSBtYXRjaGVyIG1hdGNoZXMgeDsgYWxzbyBleHBsYWlu
cyB0aGUKKyAgLy8gbWF0Y2ggcmVzdWx0IHRvICdsaXN0ZW5lcicuCisgIGJvb2wgTWF0Y2hBbmRF
eHBsYWluKGNvbnN0IFQmIHgsIE1hdGNoUmVzdWx0TGlzdGVuZXIqIGxpc3RlbmVyKSBjb25zdCB7
CisgICAgcmV0dXJuIGltcGxfLT5NYXRjaEFuZEV4cGxhaW4oeCwgbGlzdGVuZXIpOworICB9CisK
KyAgLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoaXMgbWF0Y2hlciBtYXRjaGVzIHgu
CisgIGJvb2wgTWF0Y2hlcyhjb25zdCBUJiB4KSBjb25zdCB7CisgICAgRHVtbXlNYXRjaFJlc3Vs
dExpc3RlbmVyIGR1bW15OworICAgIHJldHVybiBNYXRjaEFuZEV4cGxhaW4oeCwgJmR1bW15KTsK
KyAgfQorCisgIC8vIERlc2NyaWJlcyB0aGlzIG1hdGNoZXIgdG8gYW4gb3N0cmVhbS4KKyAgdm9p
ZCBEZXNjcmliZVRvKDo6c3RkOjpvc3RyZWFtKiBvcykgY29uc3QgeyBpbXBsXy0+RGVzY3JpYmVU
byhvcyk7IH0KKworICAvLyBEZXNjcmliZXMgdGhlIG5lZ2F0aW9uIG9mIHRoaXMgbWF0Y2hlciB0
byBhbiBvc3RyZWFtLgorICB2b2lkIERlc2NyaWJlTmVnYXRpb25Ubyg6OnN0ZDo6b3N0cmVhbSog
b3MpIGNvbnN0IHsKKyAgICBpbXBsXy0+RGVzY3JpYmVOZWdhdGlvblRvKG9zKTsKKyAgfQorCisg
IC8vIEV4cGxhaW5zIHdoeSB4IG1hdGNoZXMsIG9yIGRvZXNuJ3QgbWF0Y2gsIHRoZSBtYXRjaGVy
LgorICB2b2lkIEV4cGxhaW5NYXRjaFJlc3VsdFRvKGNvbnN0IFQmIHgsIDo6c3RkOjpvc3RyZWFt
KiBvcykgY29uc3QgeworICAgIFN0cmVhbU1hdGNoUmVzdWx0TGlzdGVuZXIgbGlzdGVuZXIob3Mp
OworICAgIE1hdGNoQW5kRXhwbGFpbih4LCAmbGlzdGVuZXIpOworICB9CisKKyAgLy8gUmV0dXJu
cyB0aGUgZGVzY3JpYmVyIGZvciB0aGlzIG1hdGNoZXIgb2JqZWN0OyByZXRhaW5zIG93bmVyc2hp
cAorICAvLyBvZiB0aGUgZGVzY3JpYmVyLCB3aGljaCBpcyBvbmx5IGd1YXJhbnRlZWQgdG8gYmUg
YWxpdmUgd2hlbgorICAvLyB0aGlzIG1hdGNoZXIgb2JqZWN0IGlzIGFsaXZlLgorICBjb25zdCBN
YXRjaGVyRGVzY3JpYmVySW50ZXJmYWNlKiBHZXREZXNjcmliZXIoKSBjb25zdCB7CisgICAgcmV0
dXJuIGltcGxfLmdldCgpOworICB9CisKKyBwcm90ZWN0ZWQ6CisgIE1hdGNoZXJCYXNlKCkge30K
KworICAvLyBDb25zdHJ1Y3RzIGEgbWF0Y2hlciBmcm9tIGl0cyBpbXBsZW1lbnRhdGlvbi4KKyAg
ZXhwbGljaXQgTWF0Y2hlckJhc2UoY29uc3QgTWF0Y2hlckludGVyZmFjZTxjb25zdCBUJj4qIGlt
cGwpIDogaW1wbF8oaW1wbCkge30KKworICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVT4KKyAgZXhwbGlj
aXQgTWF0Y2hlckJhc2UoCisgICAgICBjb25zdCBNYXRjaGVySW50ZXJmYWNlPFU+KiBpbXBsLAor
ICAgICAgdHlwZW5hbWUgc3RkOjplbmFibGVfaWY8IXN0ZDo6aXNfc2FtZTxVLCBjb25zdCBVJj46
OnZhbHVlPjo6dHlwZSogPQorICAgICAgICAgIG51bGxwdHIpCisgICAgICA6IGltcGxfKG5ldyBp
bnRlcm5hbDo6TWF0Y2hlckludGVyZmFjZUFkYXB0ZXI8VT4oaW1wbCkpIHt9CisKKyAgTWF0Y2hl
ckJhc2UoY29uc3QgTWF0Y2hlckJhc2UmKSA9IGRlZmF1bHQ7CisgIE1hdGNoZXJCYXNlJiBvcGVy
YXRvcj0oY29uc3QgTWF0Y2hlckJhc2UmKSA9IGRlZmF1bHQ7CisgIE1hdGNoZXJCYXNlKE1hdGNo
ZXJCYXNlJiYpID0gZGVmYXVsdDsKKyAgTWF0Y2hlckJhc2UmIG9wZXJhdG9yPShNYXRjaGVyQmFz
ZSYmKSA9IGRlZmF1bHQ7CisKKyAgdmlydHVhbCB+TWF0Y2hlckJhc2UoKSB7fQorCisgcHJpdmF0
ZToKKyAgc3RkOjpzaGFyZWRfcHRyPGNvbnN0IE1hdGNoZXJJbnRlcmZhY2U8Y29uc3QgVCY+PiBp
bXBsXzsKK307CisKK30gIC8vIG5hbWVzcGFjZSBpbnRlcm5hbAorCisvLyBBIE1hdGNoZXI8VD4g
aXMgYSBjb3B5YWJsZSBhbmQgSU1NVVRBQkxFIChleGNlcHQgYnkgYXNzaWdubWVudCkKKy8vIG9i
amVjdCB0aGF0IGNhbiBjaGVjayB3aGV0aGVyIGEgdmFsdWUgb2YgdHlwZSBUIG1hdGNoZXMuICBU
aGUKKy8vIGltcGxlbWVudGF0aW9uIG9mIE1hdGNoZXI8VD4gaXMganVzdCBhIHN0ZDo6c2hhcmVk
X3B0ciB0byBjb25zdAorLy8gTWF0Y2hlckludGVyZmFjZTxUPi4gIERvbid0IGluaGVyaXQgZnJv
bSBNYXRjaGVyIQordGVtcGxhdGUgPHR5cGVuYW1lIFQ+CitjbGFzcyBNYXRjaGVyIDogcHVibGlj
IGludGVybmFsOjpNYXRjaGVyQmFzZTxUPiB7CisgcHVibGljOgorICAvLyBDb25zdHJ1Y3RzIGEg
bnVsbCBtYXRjaGVyLiAgTmVlZGVkIGZvciBzdG9yaW5nIE1hdGNoZXIgb2JqZWN0cyBpbiBTVEwK
KyAgLy8gY29udGFpbmVycy4gIEEgZGVmYXVsdC1jb25zdHJ1Y3RlZCBtYXRjaGVyIGlzIG5vdCB5
ZXQgaW5pdGlhbGl6ZWQuICBZb3UKKyAgLy8gY2Fubm90IHVzZSBpdCB1bnRpbCBhIHZhbGlkIHZh
bHVlIGhhcyBiZWVuIGFzc2lnbmVkIHRvIGl0LgorICBleHBsaWNpdCBNYXRjaGVyKCkge30gIC8v
IE5PTElOVAorCisgIC8vIENvbnN0cnVjdHMgYSBtYXRjaGVyIGZyb20gaXRzIGltcGxlbWVudGF0
aW9uLgorICBleHBsaWNpdCBNYXRjaGVyKGNvbnN0IE1hdGNoZXJJbnRlcmZhY2U8Y29uc3QgVCY+
KiBpbXBsKQorICAgICAgOiBpbnRlcm5hbDo6TWF0Y2hlckJhc2U8VD4oaW1wbCkge30KKworICB0
ZW1wbGF0ZSA8dHlwZW5hbWUgVT4KKyAgZXhwbGljaXQgTWF0Y2hlcigKKyAgICAgIGNvbnN0IE1h
dGNoZXJJbnRlcmZhY2U8VT4qIGltcGwsCisgICAgICB0eXBlbmFtZSBzdGQ6OmVuYWJsZV9pZjwh
c3RkOjppc19zYW1lPFUsIGNvbnN0IFUmPjo6dmFsdWU+Ojp0eXBlKiA9CisgICAgICAgICAgbnVs
bHB0cikKKyAgICAgIDogaW50ZXJuYWw6Ok1hdGNoZXJCYXNlPFQ+KGltcGwpIHt9CisKKyAgLy8g
SW1wbGljaXQgY29uc3RydWN0b3IgaGVyZSBhbGxvd3MgcGVvcGxlIHRvIHdyaXRlCisgIC8vIEVY
UEVDVF9DQUxMKGZvbywgQmFyKDUpKSBpbnN0ZWFkIG9mIEVYUEVDVF9DQUxMKGZvbywgQmFyKEVx
KDUpKSkgc29tZXRpbWVzCisgIE1hdGNoZXIoVCB2YWx1ZSk7ICAvLyBOT0xJTlQKK307CisKKy8v
IFRoZSBmb2xsb3dpbmcgdHdvIHNwZWNpYWxpemF0aW9ucyBhbGxvdyB0aGUgdXNlciB0byB3cml0
ZSBzdHIKKy8vIGluc3RlYWQgb2YgRXEoc3RyKSBhbmQgImZvbyIgaW5zdGVhZCBvZiBFcSgiZm9v
Iikgd2hlbiBhIHN0ZDo6c3RyaW5nCisvLyBtYXRjaGVyIGlzIGV4cGVjdGVkLgordGVtcGxhdGUg
PD4KK2NsYXNzIEdURVNUX0FQSV8gTWF0Y2hlcjxjb25zdCBzdGQ6OnN0cmluZyY+CisgICAgOiBw
dWJsaWMgaW50ZXJuYWw6Ok1hdGNoZXJCYXNlPGNvbnN0IHN0ZDo6c3RyaW5nJj4geworIHB1Ymxp
YzoKKyAgTWF0Y2hlcigpIHt9CisKKyAgZXhwbGljaXQgTWF0Y2hlcihjb25zdCBNYXRjaGVySW50
ZXJmYWNlPGNvbnN0IHN0ZDo6c3RyaW5nJj4qIGltcGwpCisgICAgICA6IGludGVybmFsOjpNYXRj
aGVyQmFzZTxjb25zdCBzdGQ6OnN0cmluZyY+KGltcGwpIHt9CisKKyAgLy8gQWxsb3dzIHRoZSB1
c2VyIHRvIHdyaXRlIHN0ciBpbnN0ZWFkIG9mIEVxKHN0cikgc29tZXRpbWVzLCB3aGVyZQorICAv
LyBzdHIgaXMgYSBzdGQ6OnN0cmluZyBvYmplY3QuCisgIE1hdGNoZXIoY29uc3Qgc3RkOjpzdHJp
bmcmIHMpOyAgLy8gTk9MSU5UCisKKyAgLy8gQWxsb3dzIHRoZSB1c2VyIHRvIHdyaXRlICJmb28i
IGluc3RlYWQgb2YgRXEoImZvbyIpIHNvbWV0aW1lcy4KKyAgTWF0Y2hlcihjb25zdCBjaGFyKiBz
KTsgIC8vIE5PTElOVAorfTsKKwordGVtcGxhdGUgPD4KK2NsYXNzIEdURVNUX0FQSV8gTWF0Y2hl
cjxzdGQ6OnN0cmluZz4KKyAgICA6IHB1YmxpYyBpbnRlcm5hbDo6TWF0Y2hlckJhc2U8c3RkOjpz
dHJpbmc+IHsKKyBwdWJsaWM6CisgIE1hdGNoZXIoKSB7fQorCisgIGV4cGxpY2l0IE1hdGNoZXIo
Y29uc3QgTWF0Y2hlckludGVyZmFjZTxjb25zdCBzdGQ6OnN0cmluZyY+KiBpbXBsKQorICAgICAg
OiBpbnRlcm5hbDo6TWF0Y2hlckJhc2U8c3RkOjpzdHJpbmc+KGltcGwpIHt9CisgIGV4cGxpY2l0
IE1hdGNoZXIoY29uc3QgTWF0Y2hlckludGVyZmFjZTxzdGQ6OnN0cmluZz4qIGltcGwpCisgICAg
ICA6IGludGVybmFsOjpNYXRjaGVyQmFzZTxzdGQ6OnN0cmluZz4oaW1wbCkge30KKworICAvLyBB
bGxvd3MgdGhlIHVzZXIgdG8gd3JpdGUgc3RyIGluc3RlYWQgb2YgRXEoc3RyKSBzb21ldGltZXMs
IHdoZXJlCisgIC8vIHN0ciBpcyBhIHN0cmluZyBvYmplY3QuCisgIE1hdGNoZXIoY29uc3Qgc3Rk
OjpzdHJpbmcmIHMpOyAgLy8gTk9MSU5UCisKKyAgLy8gQWxsb3dzIHRoZSB1c2VyIHRvIHdyaXRl
ICJmb28iIGluc3RlYWQgb2YgRXEoImZvbyIpIHNvbWV0aW1lcy4KKyAgTWF0Y2hlcihjb25zdCBj
aGFyKiBzKTsgIC8vIE5PTElOVAorfTsKKworI2lmIEdURVNUX0lOVEVSTkFMX0hBU19TVFJJTkdf
VklFVworLy8gVGhlIGZvbGxvd2luZyB0d28gc3BlY2lhbGl6YXRpb25zIGFsbG93IHRoZSB1c2Vy
IHRvIHdyaXRlIHN0cgorLy8gaW5zdGVhZCBvZiBFcShzdHIpIGFuZCAiZm9vIiBpbnN0ZWFkIG9m
IEVxKCJmb28iKSB3aGVuIGEgYWJzbDo6c3RyaW5nX3ZpZXcKKy8vIG1hdGNoZXIgaXMgZXhwZWN0
ZWQuCit0ZW1wbGF0ZSA8PgorY2xhc3MgR1RFU1RfQVBJXyBNYXRjaGVyPGNvbnN0IGludGVybmFs
OjpTdHJpbmdWaWV3Jj4KKyAgICA6IHB1YmxpYyBpbnRlcm5hbDo6TWF0Y2hlckJhc2U8Y29uc3Qg
aW50ZXJuYWw6OlN0cmluZ1ZpZXcmPiB7CisgcHVibGljOgorICBNYXRjaGVyKCkge30KKworICBl
eHBsaWNpdCBNYXRjaGVyKGNvbnN0IE1hdGNoZXJJbnRlcmZhY2U8Y29uc3QgaW50ZXJuYWw6OlN0
cmluZ1ZpZXcmPiogaW1wbCkKKyAgICAgIDogaW50ZXJuYWw6Ok1hdGNoZXJCYXNlPGNvbnN0IGlu
dGVybmFsOjpTdHJpbmdWaWV3Jj4oaW1wbCkge30KKworICAvLyBBbGxvd3MgdGhlIHVzZXIgdG8g
d3JpdGUgc3RyIGluc3RlYWQgb2YgRXEoc3RyKSBzb21ldGltZXMsIHdoZXJlCisgIC8vIHN0ciBp
cyBhIHN0ZDo6c3RyaW5nIG9iamVjdC4KKyAgTWF0Y2hlcihjb25zdCBzdGQ6OnN0cmluZyYgcyk7
ICAvLyBOT0xJTlQKKworICAvLyBBbGxvd3MgdGhlIHVzZXIgdG8gd3JpdGUgImZvbyIgaW5zdGVh
ZCBvZiBFcSgiZm9vIikgc29tZXRpbWVzLgorICBNYXRjaGVyKGNvbnN0IGNoYXIqIHMpOyAgLy8g
Tk9MSU5UCisKKyAgLy8gQWxsb3dzIHRoZSB1c2VyIHRvIHBhc3MgYWJzbDo6c3RyaW5nX3ZpZXdz
IG9yIHN0ZDo6c3RyaW5nX3ZpZXdzIGRpcmVjdGx5LgorICBNYXRjaGVyKGludGVybmFsOjpTdHJp
bmdWaWV3IHMpOyAgLy8gTk9MSU5UCit9OworCit0ZW1wbGF0ZSA8PgorY2xhc3MgR1RFU1RfQVBJ
XyBNYXRjaGVyPGludGVybmFsOjpTdHJpbmdWaWV3PgorICAgIDogcHVibGljIGludGVybmFsOjpN
YXRjaGVyQmFzZTxpbnRlcm5hbDo6U3RyaW5nVmlldz4geworIHB1YmxpYzoKKyAgTWF0Y2hlcigp
IHt9CisKKyAgZXhwbGljaXQgTWF0Y2hlcihjb25zdCBNYXRjaGVySW50ZXJmYWNlPGNvbnN0IGlu
dGVybmFsOjpTdHJpbmdWaWV3Jj4qIGltcGwpCisgICAgICA6IGludGVybmFsOjpNYXRjaGVyQmFz
ZTxpbnRlcm5hbDo6U3RyaW5nVmlldz4oaW1wbCkge30KKyAgZXhwbGljaXQgTWF0Y2hlcihjb25z
dCBNYXRjaGVySW50ZXJmYWNlPGludGVybmFsOjpTdHJpbmdWaWV3PiogaW1wbCkKKyAgICAgIDog
aW50ZXJuYWw6Ok1hdGNoZXJCYXNlPGludGVybmFsOjpTdHJpbmdWaWV3PihpbXBsKSB7fQorCisg
IC8vIEFsbG93cyB0aGUgdXNlciB0byB3cml0ZSBzdHIgaW5zdGVhZCBvZiBFcShzdHIpIHNvbWV0
aW1lcywgd2hlcmUKKyAgLy8gc3RyIGlzIGEgc3RkOjpzdHJpbmcgb2JqZWN0LgorICBNYXRjaGVy
KGNvbnN0IHN0ZDo6c3RyaW5nJiBzKTsgIC8vIE5PTElOVAorCisgIC8vIEFsbG93cyB0aGUgdXNl
ciB0byB3cml0ZSAiZm9vIiBpbnN0ZWFkIG9mIEVxKCJmb28iKSBzb21ldGltZXMuCisgIE1hdGNo
ZXIoY29uc3QgY2hhciogcyk7ICAvLyBOT0xJTlQKKworICAvLyBBbGxvd3MgdGhlIHVzZXIgdG8g
cGFzcyBhYnNsOjpzdHJpbmdfdmlld3Mgb3Igc3RkOjpzdHJpbmdfdmlld3MgZGlyZWN0bHkuCisg
IE1hdGNoZXIoaW50ZXJuYWw6OlN0cmluZ1ZpZXcgcyk7ICAvLyBOT0xJTlQKK307CisjZW5kaWYg
IC8vIEdURVNUX0lOVEVSTkFMX0hBU19TVFJJTkdfVklFVworCisvLyBQcmludHMgYSBtYXRjaGVy
IGluIGEgaHVtYW4tcmVhZGFibGUgZm9ybWF0LgordGVtcGxhdGUgPHR5cGVuYW1lIFQ+CitzdGQ6
Om9zdHJlYW0mIG9wZXJhdG9yPDwoc3RkOjpvc3RyZWFtJiBvcywgY29uc3QgTWF0Y2hlcjxUPiYg
bWF0Y2hlcikgeworICBtYXRjaGVyLkRlc2NyaWJlVG8oJm9zKTsKKyAgcmV0dXJuIG9zOworfQor
CisvLyBUaGUgUG9seW1vcnBoaWNNYXRjaGVyIGNsYXNzIHRlbXBsYXRlIG1ha2VzIGl0IGVhc3kg
dG8gaW1wbGVtZW50IGEKKy8vIHBvbHltb3JwaGljIG1hdGNoZXIgKGkuZS4gYSBtYXRjaGVyIHRo
YXQgY2FuIG1hdGNoIHZhbHVlcyBvZiBtb3JlCisvLyB0aGFuIG9uZSB0eXBlLCBlLmcuIEVxKG4p
IGFuZCBOb3ROdWxsKCkpLgorLy8KKy8vIFRvIGRlZmluZSBhIHBvbHltb3JwaGljIG1hdGNoZXIs
IGEgdXNlciBzaG91bGQgcHJvdmlkZSBhbiBJbXBsCisvLyBjbGFzcyB0aGF0IGhhcyBhIERlc2Ny
aWJlVG8oKSBtZXRob2QgYW5kIGEgRGVzY3JpYmVOZWdhdGlvblRvKCkKKy8vIG1ldGhvZCwgYW5k
IGRlZmluZSBhIG1lbWJlciBmdW5jdGlvbiAob3IgbWVtYmVyIGZ1bmN0aW9uIHRlbXBsYXRlKQor
Ly8KKy8vICAgYm9vbCBNYXRjaEFuZEV4cGxhaW4oY29uc3QgVmFsdWUmIHZhbHVlLAorLy8gICAg
ICAgICAgICAgICAgICAgICAgICBNYXRjaFJlc3VsdExpc3RlbmVyKiBsaXN0ZW5lcikgY29uc3Q7
CisvLworLy8gU2VlIHRoZSBkZWZpbml0aW9uIG9mIE5vdE51bGwoKSBmb3IgYSBjb21wbGV0ZSBl
eGFtcGxlLgordGVtcGxhdGUgPGNsYXNzIEltcGw+CitjbGFzcyBQb2x5bW9ycGhpY01hdGNoZXIg
eworIHB1YmxpYzoKKyAgZXhwbGljaXQgUG9seW1vcnBoaWNNYXRjaGVyKGNvbnN0IEltcGwmIGFu
X2ltcGwpIDogaW1wbF8oYW5faW1wbCkge30KKworICAvLyBSZXR1cm5zIGEgbXV0YWJsZSByZWZl
cmVuY2UgdG8gdGhlIHVuZGVybHlpbmcgbWF0Y2hlcgorICAvLyBpbXBsZW1lbnRhdGlvbiBvYmpl
Y3QuCisgIEltcGwmIG11dGFibGVfaW1wbCgpIHsgcmV0dXJuIGltcGxfOyB9CisKKyAgLy8gUmV0
dXJucyBhbiBpbW11dGFibGUgcmVmZXJlbmNlIHRvIHRoZSB1bmRlcmx5aW5nIG1hdGNoZXIKKyAg
Ly8gaW1wbGVtZW50YXRpb24gb2JqZWN0LgorICBjb25zdCBJbXBsJiBpbXBsKCkgY29uc3QgeyBy
ZXR1cm4gaW1wbF87IH0KKworICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KKyAgb3BlcmF0b3IgTWF0
Y2hlcjxUPigpIGNvbnN0IHsKKyAgICByZXR1cm4gTWF0Y2hlcjxUPihuZXcgTW9ub21vcnBoaWNJ
bXBsPGNvbnN0IFQmPihpbXBsXykpOworICB9CisKKyBwcml2YXRlOgorICB0ZW1wbGF0ZSA8dHlw
ZW5hbWUgVD4KKyAgY2xhc3MgTW9ub21vcnBoaWNJbXBsIDogcHVibGljIE1hdGNoZXJJbnRlcmZh
Y2U8VD4geworICAgcHVibGljOgorICAgIGV4cGxpY2l0IE1vbm9tb3JwaGljSW1wbChjb25zdCBJ
bXBsJiBpbXBsKSA6IGltcGxfKGltcGwpIHt9CisKKyAgICB2b2lkIERlc2NyaWJlVG8oOjpzdGQ6
Om9zdHJlYW0qIG9zKSBjb25zdCBvdmVycmlkZSB7IGltcGxfLkRlc2NyaWJlVG8ob3MpOyB9CisK
KyAgICB2b2lkIERlc2NyaWJlTmVnYXRpb25Ubyg6OnN0ZDo6b3N0cmVhbSogb3MpIGNvbnN0IG92
ZXJyaWRlIHsKKyAgICAgIGltcGxfLkRlc2NyaWJlTmVnYXRpb25Ubyhvcyk7CisgICAgfQorCisg
ICAgYm9vbCBNYXRjaEFuZEV4cGxhaW4oVCB4LCBNYXRjaFJlc3VsdExpc3RlbmVyKiBsaXN0ZW5l
cikgY29uc3Qgb3ZlcnJpZGUgeworICAgICAgcmV0dXJuIGltcGxfLk1hdGNoQW5kRXhwbGFpbih4
LCBsaXN0ZW5lcik7CisgICAgfQorCisgICBwcml2YXRlOgorICAgIGNvbnN0IEltcGwgaW1wbF87
CisgIH07CisKKyAgSW1wbCBpbXBsXzsKK307CisKKy8vIENyZWF0ZXMgYSBtYXRjaGVyIGZyb20g
aXRzIGltcGxlbWVudGF0aW9uLgorLy8gREVQUkVDQVRFRDogRXNwZWNpYWxseSBpbiB0aGUgZ2Vu
ZXJpYyBjb2RlLCBwcmVmZXI6CisvLyAgIE1hdGNoZXI8VD4obmV3IE15TWF0Y2hlckltcGw8Y29u
c3QgVCY+KC4uLikpOworLy8KKy8vIE1ha2VNYXRjaGVyIG1heSBjcmVhdGUgYSBNYXRjaGVyIHRo
YXQgYWNjZXB0cyBpdHMgYXJndW1lbnQgYnkgdmFsdWUsIHdoaWNoCisvLyBsZWFkcyB0byB1bm5l
Y2Vzc2FyeSBjb3BpZXMgJiBsYWNrIG9mIHN1cHBvcnQgZm9yIG5vbi1jb3B5YWJsZSB0eXBlcy4K
K3RlbXBsYXRlIDx0eXBlbmFtZSBUPgoraW5saW5lIE1hdGNoZXI8VD4gTWFrZU1hdGNoZXIoY29u
c3QgTWF0Y2hlckludGVyZmFjZTxUPiogaW1wbCkgeworICByZXR1cm4gTWF0Y2hlcjxUPihpbXBs
KTsKK30KKworLy8gQ3JlYXRlcyBhIHBvbHltb3JwaGljIG1hdGNoZXIgZnJvbSBpdHMgaW1wbGVt
ZW50YXRpb24uICBUaGlzIGlzCisvLyBlYXNpZXIgdG8gdXNlIHRoYW4gdGhlIFBvbHltb3JwaGlj
TWF0Y2hlcjxJbXBsPiBjb25zdHJ1Y3RvciBhcyBpdAorLy8gZG9lc24ndCByZXF1aXJlIHlvdSB0
byBleHBsaWNpdGx5IHdyaXRlIHRoZSB0ZW1wbGF0ZSBhcmd1bWVudCwgZS5nLgorLy8KKy8vICAg
TWFrZVBvbHltb3JwaGljTWF0Y2hlcihmb28pOworLy8gdnMKKy8vICAgUG9seW1vcnBoaWNNYXRj
aGVyPFR5cGVPZkZvbz4oZm9vKTsKK3RlbXBsYXRlIDxjbGFzcyBJbXBsPgoraW5saW5lIFBvbHlt
b3JwaGljTWF0Y2hlcjxJbXBsPiBNYWtlUG9seW1vcnBoaWNNYXRjaGVyKGNvbnN0IEltcGwmIGlt
cGwpIHsKKyAgcmV0dXJuIFBvbHltb3JwaGljTWF0Y2hlcjxJbXBsPihpbXBsKTsKK30KKworbmFt
ZXNwYWNlIGludGVybmFsIHsKKy8vIEltcGxlbWVudHMgYSBtYXRjaGVyIHRoYXQgY29tcGFyZXMg
YSBnaXZlbiB2YWx1ZSB3aXRoIGEKKy8vIHByZS1zdXBwbGllZCB2YWx1ZSB1c2luZyBvbmUgb2Yg
dGhlID09LCA8PSwgPCwgZXRjLCBvcGVyYXRvcnMuICBUaGUKKy8vIHR3byB2YWx1ZXMgYmVpbmcg
Y29tcGFyZWQgZG9uJ3QgaGF2ZSB0byBoYXZlIHRoZSBzYW1lIHR5cGUuCisvLworLy8gVGhlIG1h
dGNoZXIgZGVmaW5lZCBoZXJlIGlzIHBvbHltb3JwaGljIChmb3IgZXhhbXBsZSwgRXEoNSkgY2Fu
IGJlCisvLyB1c2VkIHRvIG1hdGNoIGFuIGludCwgYSBzaG9ydCwgYSBkb3VibGUsIGV0YykuICBU
aGVyZWZvcmUgd2UgdXNlCisvLyBhIHRlbXBsYXRlIHR5cGUgY29udmVyc2lvbiBvcGVyYXRvciBp
biB0aGUgaW1wbGVtZW50YXRpb24uCisvLworLy8gVGhlIGZvbGxvd2luZyB0ZW1wbGF0ZSBkZWZp
bml0aW9uIGFzc3VtZXMgdGhhdCB0aGUgUmhzIHBhcmFtZXRlciBpcworLy8gYSAiYmFyZSIgdHlw
ZSAoaS5lLiBuZWl0aGVyICdjb25zdCBUJyBub3IgJ1QmJykuCit0ZW1wbGF0ZSA8dHlwZW5hbWUg
RCwgdHlwZW5hbWUgUmhzLCB0eXBlbmFtZSBPcD4KK2NsYXNzIENvbXBhcmlzb25CYXNlIHsKKyBw
dWJsaWM6CisgIGV4cGxpY2l0IENvbXBhcmlzb25CYXNlKGNvbnN0IFJocyYgcmhzKSA6IHJoc18o
cmhzKSB7fQorICB0ZW1wbGF0ZSA8dHlwZW5hbWUgTGhzPgorICBvcGVyYXRvciBNYXRjaGVyPExo
cz4oKSBjb25zdCB7CisgICAgcmV0dXJuIE1hdGNoZXI8TGhzPihuZXcgSW1wbDxjb25zdCBMaHMm
PihyaHNfKSk7CisgIH0KKworIHByaXZhdGU6CisgIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgorICBz
dGF0aWMgY29uc3QgVCYgVW53cmFwKGNvbnN0IFQmIHYpIHsgcmV0dXJuIHY7IH0KKyAgdGVtcGxh
dGUgPHR5cGVuYW1lIFQ+CisgIHN0YXRpYyBjb25zdCBUJiBVbndyYXAoc3RkOjpyZWZlcmVuY2Vf
d3JhcHBlcjxUPiB2KSB7IHJldHVybiB2OyB9CisKKyAgdGVtcGxhdGUgPHR5cGVuYW1lIExocywg
dHlwZW5hbWUgPSBSaHM+CisgIGNsYXNzIEltcGwgOiBwdWJsaWMgTWF0Y2hlckludGVyZmFjZTxM
aHM+IHsKKyAgIHB1YmxpYzoKKyAgICBleHBsaWNpdCBJbXBsKGNvbnN0IFJocyYgcmhzKSA6IHJo
c18ocmhzKSB7fQorICAgIGJvb2wgTWF0Y2hBbmRFeHBsYWluKExocyBsaHMsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgTWF0Y2hSZXN1bHRMaXN0ZW5lciogLyogbGlzdGVuZXIgKi8pIGNvbnN0
IG92ZXJyaWRlIHsKKyAgICAgIHJldHVybiBPcCgpKGxocywgVW53cmFwKHJoc18pKTsKKyAgICB9
CisgICAgdm9pZCBEZXNjcmliZVRvKDo6c3RkOjpvc3RyZWFtKiBvcykgY29uc3Qgb3ZlcnJpZGUg
eworICAgICAgKm9zIDw8IEQ6OkRlc2MoKSA8PCAiICI7CisgICAgICBVbml2ZXJzYWxQcmludChV
bndyYXAocmhzXyksIG9zKTsKKyAgICB9CisgICAgdm9pZCBEZXNjcmliZU5lZ2F0aW9uVG8oOjpz
dGQ6Om9zdHJlYW0qIG9zKSBjb25zdCBvdmVycmlkZSB7CisgICAgICAqb3MgPDwgRDo6TmVnYXRl
ZERlc2MoKSA8PCAgIiAiOworICAgICAgVW5pdmVyc2FsUHJpbnQoVW53cmFwKHJoc18pLCBvcyk7
CisgICAgfQorCisgICBwcml2YXRlOgorICAgIFJocyByaHNfOworICB9OworICBSaHMgcmhzXzsK
K307CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBSaHM+CitjbGFzcyBFcU1hdGNoZXIgOiBwdWJsaWMg
Q29tcGFyaXNvbkJhc2U8RXFNYXRjaGVyPFJocz4sIFJocywgQW55RXE+IHsKKyBwdWJsaWM6Cisg
IGV4cGxpY2l0IEVxTWF0Y2hlcihjb25zdCBSaHMmIHJocykKKyAgICAgIDogQ29tcGFyaXNvbkJh
c2U8RXFNYXRjaGVyPFJocz4sIFJocywgQW55RXE+KHJocykgeyB9CisgIHN0YXRpYyBjb25zdCBj
aGFyKiBEZXNjKCkgeyByZXR1cm4gImlzIGVxdWFsIHRvIjsgfQorICBzdGF0aWMgY29uc3QgY2hh
ciogTmVnYXRlZERlc2MoKSB7IHJldHVybiAiaXNuJ3QgZXF1YWwgdG8iOyB9Cit9OwordGVtcGxh
dGUgPHR5cGVuYW1lIFJocz4KK2NsYXNzIE5lTWF0Y2hlciA6IHB1YmxpYyBDb21wYXJpc29uQmFz
ZTxOZU1hdGNoZXI8UmhzPiwgUmhzLCBBbnlOZT4geworIHB1YmxpYzoKKyAgZXhwbGljaXQgTmVN
YXRjaGVyKGNvbnN0IFJocyYgcmhzKQorICAgICAgOiBDb21wYXJpc29uQmFzZTxOZU1hdGNoZXI8
UmhzPiwgUmhzLCBBbnlOZT4ocmhzKSB7IH0KKyAgc3RhdGljIGNvbnN0IGNoYXIqIERlc2MoKSB7
IHJldHVybiAiaXNuJ3QgZXF1YWwgdG8iOyB9CisgIHN0YXRpYyBjb25zdCBjaGFyKiBOZWdhdGVk
RGVzYygpIHsgcmV0dXJuICJpcyBlcXVhbCB0byI7IH0KK307Cit0ZW1wbGF0ZSA8dHlwZW5hbWUg
UmhzPgorY2xhc3MgTHRNYXRjaGVyIDogcHVibGljIENvbXBhcmlzb25CYXNlPEx0TWF0Y2hlcjxS
aHM+LCBSaHMsIEFueUx0PiB7CisgcHVibGljOgorICBleHBsaWNpdCBMdE1hdGNoZXIoY29uc3Qg
UmhzJiByaHMpCisgICAgICA6IENvbXBhcmlzb25CYXNlPEx0TWF0Y2hlcjxSaHM+LCBSaHMsIEFu
eUx0PihyaHMpIHsgfQorICBzdGF0aWMgY29uc3QgY2hhciogRGVzYygpIHsgcmV0dXJuICJpcyA8
IjsgfQorICBzdGF0aWMgY29uc3QgY2hhciogTmVnYXRlZERlc2MoKSB7IHJldHVybiAiaXNuJ3Qg
PCI7IH0KK307Cit0ZW1wbGF0ZSA8dHlwZW5hbWUgUmhzPgorY2xhc3MgR3RNYXRjaGVyIDogcHVi
bGljIENvbXBhcmlzb25CYXNlPEd0TWF0Y2hlcjxSaHM+LCBSaHMsIEFueUd0PiB7CisgcHVibGlj
OgorICBleHBsaWNpdCBHdE1hdGNoZXIoY29uc3QgUmhzJiByaHMpCisgICAgICA6IENvbXBhcmlz
b25CYXNlPEd0TWF0Y2hlcjxSaHM+LCBSaHMsIEFueUd0PihyaHMpIHsgfQorICBzdGF0aWMgY29u
c3QgY2hhciogRGVzYygpIHsgcmV0dXJuICJpcyA+IjsgfQorICBzdGF0aWMgY29uc3QgY2hhciog
TmVnYXRlZERlc2MoKSB7IHJldHVybiAiaXNuJ3QgPiI7IH0KK307Cit0ZW1wbGF0ZSA8dHlwZW5h
bWUgUmhzPgorY2xhc3MgTGVNYXRjaGVyIDogcHVibGljIENvbXBhcmlzb25CYXNlPExlTWF0Y2hl
cjxSaHM+LCBSaHMsIEFueUxlPiB7CisgcHVibGljOgorICBleHBsaWNpdCBMZU1hdGNoZXIoY29u
c3QgUmhzJiByaHMpCisgICAgICA6IENvbXBhcmlzb25CYXNlPExlTWF0Y2hlcjxSaHM+LCBSaHMs
IEFueUxlPihyaHMpIHsgfQorICBzdGF0aWMgY29uc3QgY2hhciogRGVzYygpIHsgcmV0dXJuICJp
cyA8PSI7IH0KKyAgc3RhdGljIGNvbnN0IGNoYXIqIE5lZ2F0ZWREZXNjKCkgeyByZXR1cm4gImlz
bid0IDw9IjsgfQorfTsKK3RlbXBsYXRlIDx0eXBlbmFtZSBSaHM+CitjbGFzcyBHZU1hdGNoZXIg
OiBwdWJsaWMgQ29tcGFyaXNvbkJhc2U8R2VNYXRjaGVyPFJocz4sIFJocywgQW55R2U+IHsKKyBw
dWJsaWM6CisgIGV4cGxpY2l0IEdlTWF0Y2hlcihjb25zdCBSaHMmIHJocykKKyAgICAgIDogQ29t
cGFyaXNvbkJhc2U8R2VNYXRjaGVyPFJocz4sIFJocywgQW55R2U+KHJocykgeyB9CisgIHN0YXRp
YyBjb25zdCBjaGFyKiBEZXNjKCkgeyByZXR1cm4gImlzID49IjsgfQorICBzdGF0aWMgY29uc3Qg
Y2hhciogTmVnYXRlZERlc2MoKSB7IHJldHVybiAiaXNuJ3QgPj0iOyB9Cit9OworCisvLyBJbXBs
ZW1lbnRzIHBvbHltb3JwaGljIG1hdGNoZXJzIE1hdGNoZXNSZWdleChyZWdleCkgYW5kCisvLyBD
b250YWluc1JlZ2V4KHJlZ2V4KSwgd2hpY2ggY2FuIGJlIHVzZWQgYXMgYSBNYXRjaGVyPFQ+IGFz
IGxvbmcgYXMKKy8vIFQgY2FuIGJlIGNvbnZlcnRlZCB0byBhIHN0cmluZy4KK2NsYXNzIE1hdGNo
ZXNSZWdleE1hdGNoZXIgeworIHB1YmxpYzoKKyAgTWF0Y2hlc1JlZ2V4TWF0Y2hlcihjb25zdCBS
RSogcmVnZXgsIGJvb2wgZnVsbF9tYXRjaCkKKyAgICAgIDogcmVnZXhfKHJlZ2V4KSwgZnVsbF9t
YXRjaF8oZnVsbF9tYXRjaCkge30KKworI2lmIEdURVNUX0lOVEVSTkFMX0hBU19TVFJJTkdfVklF
VworICBib29sIE1hdGNoQW5kRXhwbGFpbihjb25zdCBpbnRlcm5hbDo6U3RyaW5nVmlldyYgcywK
KyAgICAgICAgICAgICAgICAgICAgICAgTWF0Y2hSZXN1bHRMaXN0ZW5lciogbGlzdGVuZXIpIGNv
bnN0IHsKKyAgICByZXR1cm4gTWF0Y2hBbmRFeHBsYWluKHN0ZDo6c3RyaW5nKHMpLCBsaXN0ZW5l
cik7CisgIH0KKyNlbmRpZiAgLy8gR1RFU1RfSU5URVJOQUxfSEFTX1NUUklOR19WSUVXCisKKyAg
Ly8gQWNjZXB0cyBwb2ludGVyIHR5cGVzLCBwYXJ0aWN1bGFybHk6CisgIC8vICAgY29uc3QgY2hh
cioKKyAgLy8gICBjaGFyKgorICAvLyAgIGNvbnN0IHdjaGFyX3QqCisgIC8vICAgd2NoYXJfdCoK
KyAgdGVtcGxhdGUgPHR5cGVuYW1lIENoYXJUeXBlPgorICBib29sIE1hdGNoQW5kRXhwbGFpbihD
aGFyVHlwZSogcywgTWF0Y2hSZXN1bHRMaXN0ZW5lciogbGlzdGVuZXIpIGNvbnN0IHsKKyAgICBy
ZXR1cm4gcyAhPSBudWxscHRyICYmIE1hdGNoQW5kRXhwbGFpbihzdGQ6OnN0cmluZyhzKSwgbGlz
dGVuZXIpOworICB9CisKKyAgLy8gTWF0Y2hlcyBhbnl0aGluZyB0aGF0IGNhbiBjb252ZXJ0IHRv
IHN0ZDo6c3RyaW5nLgorICAvLworICAvLyBUaGlzIGlzIGEgdGVtcGxhdGUsIG5vdCBqdXN0IGEg
cGxhaW4gZnVuY3Rpb24gd2l0aCBjb25zdCBzdGQ6OnN0cmluZyYsCisgIC8vIGJlY2F1c2UgYWJz
bDo6c3RyaW5nX3ZpZXcgaGFzIHNvbWUgaW50ZXJmZXJpbmcgbm9uLWV4cGxpY2l0IGNvbnN0cnVj
dG9ycy4KKyAgdGVtcGxhdGUgPGNsYXNzIE1hdGNoZWVTdHJpbmdUeXBlPgorICBib29sIE1hdGNo
QW5kRXhwbGFpbihjb25zdCBNYXRjaGVlU3RyaW5nVHlwZSYgcywKKyAgICAgICAgICAgICAgICAg
ICAgICAgTWF0Y2hSZXN1bHRMaXN0ZW5lciogLyogbGlzdGVuZXIgKi8pIGNvbnN0IHsKKyAgICBj
b25zdCBzdGQ6OnN0cmluZyYgczIocyk7CisgICAgcmV0dXJuIGZ1bGxfbWF0Y2hfID8gUkU6OkZ1
bGxNYXRjaChzMiwgKnJlZ2V4XykKKyAgICAgICAgICAgICAgICAgICAgICAgOiBSRTo6UGFydGlh
bE1hdGNoKHMyLCAqcmVnZXhfKTsKKyAgfQorCisgIHZvaWQgRGVzY3JpYmVUbyg6OnN0ZDo6b3N0
cmVhbSogb3MpIGNvbnN0IHsKKyAgICAqb3MgPDwgKGZ1bGxfbWF0Y2hfID8gIm1hdGNoZXMiIDog
ImNvbnRhaW5zIikgPDwgIiByZWd1bGFyIGV4cHJlc3Npb24gIjsKKyAgICBVbml2ZXJzYWxQcmlu
dGVyPHN0ZDo6c3RyaW5nPjo6UHJpbnQocmVnZXhfLT5wYXR0ZXJuKCksIG9zKTsKKyAgfQorCisg
IHZvaWQgRGVzY3JpYmVOZWdhdGlvblRvKDo6c3RkOjpvc3RyZWFtKiBvcykgY29uc3QgeworICAg
ICpvcyA8PCAiZG9lc24ndCAiIDw8IChmdWxsX21hdGNoXyA/ICJtYXRjaCIgOiAiY29udGFpbiIp
CisgICAgICAgIDw8ICIgcmVndWxhciBleHByZXNzaW9uICI7CisgICAgVW5pdmVyc2FsUHJpbnRl
cjxzdGQ6OnN0cmluZz46OlByaW50KHJlZ2V4Xy0+cGF0dGVybigpLCBvcyk7CisgIH0KKworIHBy
aXZhdGU6CisgIGNvbnN0IHN0ZDo6c2hhcmVkX3B0cjxjb25zdCBSRT4gcmVnZXhfOworICBjb25z
dCBib29sIGZ1bGxfbWF0Y2hfOworfTsKK30gIC8vIG5hbWVzcGFjZSBpbnRlcm5hbAorCisvLyBN
YXRjaGVzIGEgc3RyaW5nIHRoYXQgZnVsbHkgbWF0Y2hlcyByZWd1bGFyIGV4cHJlc3Npb24gJ3Jl
Z2V4Jy4KKy8vIFRoZSBtYXRjaGVyIHRha2VzIG93bmVyc2hpcCBvZiAncmVnZXgnLgoraW5saW5l
IFBvbHltb3JwaGljTWF0Y2hlcjxpbnRlcm5hbDo6TWF0Y2hlc1JlZ2V4TWF0Y2hlcj4gTWF0Y2hl
c1JlZ2V4KAorICAgIGNvbnN0IGludGVybmFsOjpSRSogcmVnZXgpIHsKKyAgcmV0dXJuIE1ha2VQ
b2x5bW9ycGhpY01hdGNoZXIoaW50ZXJuYWw6Ok1hdGNoZXNSZWdleE1hdGNoZXIocmVnZXgsIHRy
dWUpKTsKK30KK2lubGluZSBQb2x5bW9ycGhpY01hdGNoZXI8aW50ZXJuYWw6Ok1hdGNoZXNSZWdl
eE1hdGNoZXI+IE1hdGNoZXNSZWdleCgKKyAgICBjb25zdCBzdGQ6OnN0cmluZyYgcmVnZXgpIHsK
KyAgcmV0dXJuIE1hdGNoZXNSZWdleChuZXcgaW50ZXJuYWw6OlJFKHJlZ2V4KSk7Cit9CisKKy8v
IE1hdGNoZXMgYSBzdHJpbmcgdGhhdCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gJ3JlZ2V4
Jy4KKy8vIFRoZSBtYXRjaGVyIHRha2VzIG93bmVyc2hpcCBvZiAncmVnZXgnLgoraW5saW5lIFBv
bHltb3JwaGljTWF0Y2hlcjxpbnRlcm5hbDo6TWF0Y2hlc1JlZ2V4TWF0Y2hlcj4gQ29udGFpbnNS
ZWdleCgKKyAgICBjb25zdCBpbnRlcm5hbDo6UkUqIHJlZ2V4KSB7CisgIHJldHVybiBNYWtlUG9s
eW1vcnBoaWNNYXRjaGVyKGludGVybmFsOjpNYXRjaGVzUmVnZXhNYXRjaGVyKHJlZ2V4LCBmYWxz
ZSkpOworfQoraW5saW5lIFBvbHltb3JwaGljTWF0Y2hlcjxpbnRlcm5hbDo6TWF0Y2hlc1JlZ2V4
TWF0Y2hlcj4gQ29udGFpbnNSZWdleCgKKyAgICBjb25zdCBzdGQ6OnN0cmluZyYgcmVnZXgpIHsK
KyAgcmV0dXJuIENvbnRhaW5zUmVnZXgobmV3IGludGVybmFsOjpSRShyZWdleCkpOworfQorCisv
LyBDcmVhdGVzIGEgcG9seW1vcnBoaWMgbWF0Y2hlciB0aGF0IG1hdGNoZXMgYW55dGhpbmcgZXF1
YWwgdG8geC4KKy8vIE5vdGU6IGlmIHRoZSBwYXJhbWV0ZXIgb2YgRXEoKSB3ZXJlIGRlY2xhcmVk
IGFzIGNvbnN0IFQmLCBFcSgiZm9vIikKKy8vIHdvdWxkbid0IGNvbXBpbGUuCit0ZW1wbGF0ZSA8
dHlwZW5hbWUgVD4KK2lubGluZSBpbnRlcm5hbDo6RXFNYXRjaGVyPFQ+IEVxKFQgeCkgeyByZXR1
cm4gaW50ZXJuYWw6OkVxTWF0Y2hlcjxUPih4KTsgfQorCisvLyBDb25zdHJ1Y3RzIGEgTWF0Y2hl
cjxUPiBmcm9tIGEgJ3ZhbHVlJyBvZiB0eXBlIFQuICBUaGUgY29uc3RydWN0ZWQKKy8vIG1hdGNo
ZXIgbWF0Y2hlcyBhbnkgdmFsdWUgdGhhdCdzIGVxdWFsIHRvICd2YWx1ZScuCit0ZW1wbGF0ZSA8
dHlwZW5hbWUgVD4KK01hdGNoZXI8VD46Ok1hdGNoZXIoVCB2YWx1ZSkgeyAqdGhpcyA9IEVxKHZh
bHVlKTsgfQorCisvLyBDcmVhdGVzIGEgbW9ub21vcnBoaWMgbWF0Y2hlciB0aGF0IG1hdGNoZXMg
YW55dGhpbmcgd2l0aCB0eXBlIExocworLy8gYW5kIGVxdWFsIHRvIHJocy4gIEEgdXNlciBtYXkg
bmVlZCB0byB1c2UgdGhpcyBpbnN0ZWFkIG9mIEVxKC4uLikKKy8vIGluIG9yZGVyIHRvIHJlc29s
dmUgYW4gb3ZlcmxvYWRpbmcgYW1iaWd1aXR5LgorLy8KKy8vIFR5cGVkRXE8VD4oeCkgaXMganVz
dCBhIGNvbnZlbmllbnQgc2hvcnQtaGFuZCBmb3IgTWF0Y2hlcjxUPihFcSh4KSkKKy8vIG9yIE1h
dGNoZXI8VD4oeCksIGJ1dCBtb3JlIHJlYWRhYmxlIHRoYW4gdGhlIGxhdHRlci4KKy8vCisvLyBX
ZSBjb3VsZCBkZWZpbmUgc2ltaWxhciBtb25vbW9ycGhpYyBtYXRjaGVycyBmb3Igb3RoZXIgY29t
cGFyaXNvbgorLy8gb3BlcmF0aW9ucyAoZS5nLiBUeXBlZEx0LCBUeXBlZEdlLCBhbmQgZXRjKSwg
YnV0IGRlY2lkZWQgbm90IHRvIGRvCisvLyBpdCB5ZXQgYXMgdGhvc2UgYXJlIHVzZWQgbXVjaCBs
ZXNzIHRoYW4gRXEoKSBpbiBwcmFjdGljZS4gIEEgdXNlcgorLy8gY2FuIGFsd2F5cyB3cml0ZSBN
YXRjaGVyPFQ+KEx0KDUpKSB0byBiZSBleHBsaWNpdCBhYm91dCB0aGUgdHlwZSwKKy8vIGZvciBl
eGFtcGxlLgordGVtcGxhdGUgPHR5cGVuYW1lIExocywgdHlwZW5hbWUgUmhzPgoraW5saW5lIE1h
dGNoZXI8TGhzPiBUeXBlZEVxKGNvbnN0IFJocyYgcmhzKSB7IHJldHVybiBFcShyaHMpOyB9CisK
Ky8vIENyZWF0ZXMgYSBwb2x5bW9ycGhpYyBtYXRjaGVyIHRoYXQgbWF0Y2hlcyBhbnl0aGluZyA+
PSB4LgordGVtcGxhdGUgPHR5cGVuYW1lIFJocz4KK2lubGluZSBpbnRlcm5hbDo6R2VNYXRjaGVy
PFJocz4gR2UoUmhzIHgpIHsKKyAgcmV0dXJuIGludGVybmFsOjpHZU1hdGNoZXI8UmhzPih4KTsK
K30KKworLy8gQ3JlYXRlcyBhIHBvbHltb3JwaGljIG1hdGNoZXIgdGhhdCBtYXRjaGVzIGFueXRo
aW5nID4geC4KK3RlbXBsYXRlIDx0eXBlbmFtZSBSaHM+CitpbmxpbmUgaW50ZXJuYWw6Okd0TWF0
Y2hlcjxSaHM+IEd0KFJocyB4KSB7CisgIHJldHVybiBpbnRlcm5hbDo6R3RNYXRjaGVyPFJocz4o
eCk7Cit9CisKKy8vIENyZWF0ZXMgYSBwb2x5bW9ycGhpYyBtYXRjaGVyIHRoYXQgbWF0Y2hlcyBh
bnl0aGluZyA8PSB4LgordGVtcGxhdGUgPHR5cGVuYW1lIFJocz4KK2lubGluZSBpbnRlcm5hbDo6
TGVNYXRjaGVyPFJocz4gTGUoUmhzIHgpIHsKKyAgcmV0dXJuIGludGVybmFsOjpMZU1hdGNoZXI8
UmhzPih4KTsKK30KKworLy8gQ3JlYXRlcyBhIHBvbHltb3JwaGljIG1hdGNoZXIgdGhhdCBtYXRj
aGVzIGFueXRoaW5nIDwgeC4KK3RlbXBsYXRlIDx0eXBlbmFtZSBSaHM+CitpbmxpbmUgaW50ZXJu
YWw6Okx0TWF0Y2hlcjxSaHM+IEx0KFJocyB4KSB7CisgIHJldHVybiBpbnRlcm5hbDo6THRNYXRj
aGVyPFJocz4oeCk7Cit9CisKKy8vIENyZWF0ZXMgYSBwb2x5bW9ycGhpYyBtYXRjaGVyIHRoYXQg
bWF0Y2hlcyBhbnl0aGluZyAhPSB4LgordGVtcGxhdGUgPHR5cGVuYW1lIFJocz4KK2lubGluZSBp
bnRlcm5hbDo6TmVNYXRjaGVyPFJocz4gTmUoUmhzIHgpIHsKKyAgcmV0dXJuIGludGVybmFsOjpO
ZU1hdGNoZXI8UmhzPih4KTsKK30KK30gIC8vIG5hbWVzcGFjZSB0ZXN0aW5nCisKK0dURVNUX0RJ
U0FCTEVfTVNDX1dBUk5JTkdTX1BPUF8oKSAgLy8gIDQyNTEgNTA0NgorCisjZW5kaWYgIC8vIEdU
RVNUX0lOQ0xVREVfR1RFU1RfR1RFU1RfTUFUQ0hFUlNfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9ndGVzdC1tZXNzYWdl
LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3Qv
Z3Rlc3QtbWVzc2FnZS5oCmluZGV4IDVjYTA0MTYxNGNiMzU1OTIyZjM1NWI4OTNmOWM4NGEzYjdm
NTJjNmYuLjIxODk5MjMyYTI1ZGI4YmVhNjkyMDY4OWRmNmU1ZjAxZjVmMjljODEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9n
dGVzdC1tZXNzYWdlLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3Ny
Yy9pbmNsdWRlL2d0ZXN0L2d0ZXN0LW1lc3NhZ2UuaApAQCAtNDgsNiArNDgsOCBAQAogI2RlZmlu
ZSBHVEVTVF9JTkNMVURFX0dURVNUX0dURVNUX01FU1NBR0VfSF8KIAogI2luY2x1ZGUgPGxpbWl0
cz4KKyNpbmNsdWRlIDxtZW1vcnk+CisjaW5jbHVkZSA8c3N0cmVhbT4KIAogI2luY2x1ZGUgImd0
ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQuaCIKIApAQCAtMTA2LDE0ICsxMDgsNiBAQCBjbGFzcyBH
VEVTVF9BUElfIE1lc3NhZ2UgewogICAgICpzc18gPDwgc3RyOwogICB9CiAKLSNpZiBHVEVTVF9P
U19TWU1CSUFOCi0gIC8vIFN0cmVhbXMgYSB2YWx1ZSAoZWl0aGVyIGEgcG9pbnRlciBvciBub3Qp
IHRvIHRoaXMgb2JqZWN0LgotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgaW5saW5lIE1lc3Nh
Z2UmIG9wZXJhdG9yIDw8KGNvbnN0IFQmIHZhbHVlKSB7Ci0gICAgU3RyZWFtSGVscGVyKHR5cGVu
YW1lIGludGVybmFsOjppc19wb2ludGVyPFQ+Ojp0eXBlKCksIHZhbHVlKTsKLSAgICByZXR1cm4g
KnRoaXM7Ci0gIH0KLSNlbHNlCiAgIC8vIFN0cmVhbXMgYSBub24tcG9pbnRlciB2YWx1ZSB0byB0
aGlzIG9iamVjdC4KICAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+CiAgIGlubGluZSBNZXNzYWdlJiBv
cGVyYXRvciA8PChjb25zdCBUJiB2YWwpIHsKQEAgLTE1MSwxNCArMTQ1LDEzIEBAIGNsYXNzIEdU
RVNUX0FQSV8gTWVzc2FnZSB7CiAgIC8vIGFzICIobnVsbCkiLgogICB0ZW1wbGF0ZSA8dHlwZW5h
bWUgVD4KICAgaW5saW5lIE1lc3NhZ2UmIG9wZXJhdG9yIDw8KFQqIGNvbnN0JiBwb2ludGVyKSB7
ICAvLyBOT0xJTlQKLSAgICBpZiAocG9pbnRlciA9PSBOVUxMKSB7CisgICAgaWYgKHBvaW50ZXIg
PT0gbnVsbHB0cikgewogICAgICAgKnNzXyA8PCAiKG51bGwpIjsKICAgICB9IGVsc2UgewogICAg
ICAgKnNzXyA8PCBwb2ludGVyOwogICAgIH0KICAgICByZXR1cm4gKnRoaXM7CiAgIH0KLSNlbmRp
ZiAgLy8gR1RFU1RfT1NfU1lNQklBTgogCiAgIC8vIFNpbmNlIHRoZSBiYXNpYyBJTyBtYW5pcHVs
YXRvcnMgYXJlIG92ZXJsb2FkZWQgZm9yIGJvdGggbmFycm93CiAgIC8vIGFuZCB3aWRlIHN0cmVh
bXMsIHdlIGhhdmUgdG8gcHJvdmlkZSB0aGlzIHNwZWNpYWxpemVkIGRlZmluaXRpb24KQEAgLTE4
NywxMiArMTgwLDYgQEAgY2xhc3MgR1RFU1RfQVBJXyBNZXNzYWdlIHsKICAgTWVzc2FnZSYgb3Bl
cmF0b3IgPDwoY29uc3QgOjpzdGQ6OndzdHJpbmcmIHdzdHIpOwogI2VuZGlmICAvLyBHVEVTVF9I
QVNfU1REX1dTVFJJTkcKIAotI2lmIEdURVNUX0hBU19HTE9CQUxfV1NUUklORwotICAvLyBDb252
ZXJ0cyB0aGUgZ2l2ZW4gd2lkZSBzdHJpbmcgdG8gYSBuYXJyb3cgc3RyaW5nIHVzaW5nIHRoZSBV
VEYtOAotICAvLyBlbmNvZGluZywgYW5kIHN0cmVhbXMgdGhlIHJlc3VsdCB0byB0aGlzIE1lc3Nh
Z2Ugb2JqZWN0LgotICBNZXNzYWdlJiBvcGVyYXRvciA8PChjb25zdCA6OndzdHJpbmcmIHdzdHIp
OwotI2VuZGlmICAvLyBHVEVTVF9IQVNfR0xPQkFMX1dTVFJJTkcKLQogICAvLyBHZXRzIHRoZSB0
ZXh0IHN0cmVhbWVkIHRvIHRoaXMgb2JqZWN0IHNvIGZhciBhcyBhbiBzdGQ6OnN0cmluZy4KICAg
Ly8gRWFjaCAnXDAnIGNoYXJhY3RlciBpbiB0aGUgYnVmZmVyIGlzIHJlcGxhY2VkIHdpdGggIlxc
MCIuCiAgIC8vCkBAIC0yMDAsMzEgKzE4Nyw4IEBAIGNsYXNzIEdURVNUX0FQSV8gTWVzc2FnZSB7
CiAgIHN0ZDo6c3RyaW5nIEdldFN0cmluZygpIGNvbnN0OwogCiAgcHJpdmF0ZToKLSNpZiBHVEVT
VF9PU19TWU1CSUFOCi0gIC8vIFRoZXNlIGFyZSBuZWVkZWQgYXMgdGhlIE5va2lhIFN5bWJpYW4g
Q29tcGlsZXIgY2Fubm90IGRlY2lkZSBiZXR3ZWVuCi0gIC8vIGNvbnN0IFQmIGFuZCBjb25zdCBU
KiBpbiBhIGZ1bmN0aW9uIHRlbXBsYXRlLiBUaGUgTm9raWEgY29tcGlsZXIgX2Nhbl8KLSAgLy8g
ZGVjaWRlIGJldHdlZW4gY2xhc3MgdGVtcGxhdGUgc3BlY2lhbGl6YXRpb25zIGZvciBUIGFuZCBU
Kiwgc28gYQotICAvLyB0cjE6OnR5cGVfdHJhaXRzLWxpa2UgaXNfcG9pbnRlciB3b3JrcywgYW5k
IHdlIGNhbiBvdmVybG9hZCBvbiB0aGF0LgotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgaW5s
aW5lIHZvaWQgU3RyZWFtSGVscGVyKGludGVybmFsOjp0cnVlX3R5cGUgLyppc19wb2ludGVyKi8s
IFQqIHBvaW50ZXIpIHsKLSAgICBpZiAocG9pbnRlciA9PSBOVUxMKSB7Ci0gICAgICAqc3NfIDw8
ICIobnVsbCkiOwotICAgIH0gZWxzZSB7Ci0gICAgICAqc3NfIDw8IHBvaW50ZXI7Ci0gICAgfQot
ICB9Ci0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBpbmxpbmUgdm9pZCBTdHJlYW1IZWxwZXIo
aW50ZXJuYWw6OmZhbHNlX3R5cGUgLyppc19wb2ludGVyKi8sCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCBUJiB2YWx1ZSkgewotICAgIC8vIFNlZSB0aGUgY29tbWVudHMgaW4gTWVz
c2FnZSYgb3BlcmF0b3IgPDwoY29uc3QgVCYpIGFib3ZlIGZvciB3aHkKLSAgICAvLyB3ZSBuZWVk
IHRoaXMgdXNpbmcgc3RhdGVtZW50LgotICAgIHVzaW5nIDo6b3BlcmF0b3IgPDw7Ci0gICAgKnNz
XyA8PCB2YWx1ZTsKLSAgfQotI2VuZGlmICAvLyBHVEVTVF9PU19TWU1CSUFOCi0KICAgLy8gV2Un
bGwgaG9sZCB0aGUgdGV4dCBzdHJlYW1lZCB0byB0aGlzIG9iamVjdCBoZXJlLgotICBjb25zdCBp
bnRlcm5hbDo6c2NvcGVkX3B0cjwgOjpzdGQ6OnN0cmluZ3N0cmVhbT4gc3NfOworICBjb25zdCBz
dGQ6OnVuaXF1ZV9wdHI8IDo6c3RkOjpzdHJpbmdzdHJlYW0+IHNzXzsKIAogICAvLyBXZSBkZWNs
YXJlIChidXQgZG9uJ3QgaW1wbGVtZW50KSB0aGlzIHRvIHByZXZlbnQgdGhlIGNvbXBpbGVyCiAg
IC8vIGZyb20gaW1wbGVtZW50aW5nIHRoZSBhc3NpZ25tZW50IG9wZXJhdG9yLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2d0
ZXN0LXBhcmFtLXRlc3QuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMv
aW5jbHVkZS9ndGVzdC9ndGVzdC1wYXJhbS10ZXN0LmgKaW5kZXggM2U5NWU0MzkwZTAwZTExNjMx
MGE0MjM4M2QyZTMwYjU4ZWRhNWYwZC4uNWIwMzlkZjlmNmUxY2JiMGQwNGQ5OWEzNWY0ZGFkY2Nl
YmY1ZTUzOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3Ny
Yy9pbmNsdWRlL2d0ZXN0L2d0ZXN0LXBhcmFtLXRlc3QuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJk
X3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QtcGFyYW0tdGVzdC5oCkBA
IC0xLDcgKzEsMyBAQAotLy8gVGhpcyBmaWxlIHdhcyBHRU5FUkFURUQgYnkgY29tbWFuZDoKLS8v
ICAgICBwdW1wLnB5IGd0ZXN0LXBhcmFtLXRlc3QuaC5wdW1wCi0vLyBETyBOT1QgRURJVCBCWSBI
QU5EISEhCi0KIC8vIENvcHlyaWdodCAyMDA4LCBHb29nbGUgSW5jLgogLy8gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KIC8vCkBAIC03NSw3ICs3MSw3IEBAIFRFU1RfUChGb29UZXN0LCBIYXNCbGFoQmxh
aCkgewogICAuLi4KIH0KIAotLy8gRmluYWxseSwgeW91IGNhbiB1c2UgSU5TVEFOVElBVEVfVEVT
VF9DQVNFX1AgdG8gaW5zdGFudGlhdGUgdGhlIHRlc3QKKy8vIEZpbmFsbHksIHlvdSBjYW4gdXNl
IElOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCB0byBpbnN0YW50aWF0ZSB0aGUgdGVzdAogLy8gY2Fz
ZSB3aXRoIGFueSBzZXQgb2YgcGFyYW1ldGVycyB5b3Ugd2FudC4gR29vZ2xlIFRlc3QgZGVmaW5l
cyBhIG51bWJlcgogLy8gb2YgZnVuY3Rpb25zIGZvciBnZW5lcmF0aW5nIHRlc3QgcGFyYW1ldGVy
cy4gVGhleSByZXR1cm4gd2hhdCB3ZSBjYWxsCiAvLyAoc3VycHJpc2UhKSBwYXJhbWV0ZXIgZ2Vu
ZXJhdG9ycy4gSGVyZSBpcyBhIHN1bW1hcnkgb2YgdGhlbSwgd2hpY2gKQEAgLTk2LDE3ICs5Miwx
NyBAQCBURVNUX1AoRm9vVGVzdCwgSGFzQmxhaEJsYWgpIHsKIC8vIEZvciBtb3JlIGRldGFpbHMs
IHNlZSBjb21tZW50cyBhdCB0aGUgZGVmaW5pdGlvbnMgb2YgdGhlc2UgZnVuY3Rpb25zIGJlbG93
CiAvLyBpbiB0aGlzIGZpbGUuCiAvLwotLy8gVGhlIGZvbGxvd2luZyBzdGF0ZW1lbnQgd2lsbCBp
bnN0YW50aWF0ZSB0ZXN0cyBmcm9tIHRoZSBGb29UZXN0IHRlc3QgY2FzZQorLy8gVGhlIGZvbGxv
d2luZyBzdGF0ZW1lbnQgd2lsbCBpbnN0YW50aWF0ZSB0ZXN0cyBmcm9tIHRoZSBGb29UZXN0IHRl
c3Qgc3VpdGUKIC8vIGVhY2ggd2l0aCBwYXJhbWV0ZXIgdmFsdWVzICJtZWVueSIsICJtaW55Iiwg
YW5kICJtb2UiLgogCi1JTlNUQU5USUFURV9URVNUX0NBU0VfUChJbnN0YW50aWF0aW9uTmFtZSwK
LSAgICAgICAgICAgICAgICAgICAgICAgIEZvb1Rlc3QsCi0gICAgICAgICAgICAgICAgICAgICAg
ICBWYWx1ZXMoIm1lZW55IiwgIm1pbnkiLCAibW9lIikpOworSU5TVEFOVElBVEVfVEVTVF9TVUlU
RV9QKEluc3RhbnRpYXRpb25OYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgIEZvb1Rlc3Qs
CisgICAgICAgICAgICAgICAgICAgICAgICAgVmFsdWVzKCJtZWVueSIsICJtaW55IiwgIm1vZSIp
KTsKIAogLy8gVG8gZGlzdGluZ3Vpc2ggZGlmZmVyZW50IGluc3RhbmNlcyBvZiB0aGUgcGF0dGVy
biwgKHllcywgeW91Ci0vLyBjYW4gaW5zdGFudGlhdGUgaXQgbW9yZSB0aGVuIG9uY2UpIHRoZSBm
aXJzdCBhcmd1bWVudCB0byB0aGUKLS8vIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QIG1hY3JvIGlz
IGEgcHJlZml4IHRoYXQgd2lsbCBiZSBhZGRlZCB0byB0aGUKLS8vIGFjdHVhbCB0ZXN0IGNhc2Ug
bmFtZS4gUmVtZW1iZXIgdG8gcGljayB1bmlxdWUgcHJlZml4ZXMgZm9yIGRpZmZlcmVudAorLy8g
Y2FuIGluc3RhbnRpYXRlIGl0IG1vcmUgdGhhbiBvbmNlKSB0aGUgZmlyc3QgYXJndW1lbnQgdG8g
dGhlCisvLyBJTlNUQU5USUFURV9URVNUX1NVSVRFX1AgbWFjcm8gaXMgYSBwcmVmaXggdGhhdCB3
aWxsIGJlIGFkZGVkIHRvIHRoZQorLy8gYWN0dWFsIHRlc3Qgc3VpdGUgbmFtZS4gUmVtZW1iZXIg
dG8gcGljayB1bmlxdWUgcHJlZml4ZXMgZm9yIGRpZmZlcmVudAogLy8gaW5zdGFudGlhdGlvbnMu
IFRoZSB0ZXN0cyBmcm9tIHRoZSBpbnN0YW50aWF0aW9uIGFib3ZlIHdpbGwgaGF2ZQogLy8gdGhl
c2UgbmFtZXM6CiAvLwpAQCAtMTIzLDcgKzExOSw3IEBAIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9Q
KEluc3RhbnRpYXRpb25OYW1lLAogLy8gd2l0aCBwYXJhbWV0ZXIgdmFsdWVzICJjYXQiIGFuZCAi
ZG9nIjoKIAogY29uc3QgY2hhciogcGV0c1tdID0geyJjYXQiLCAiZG9nIn07Ci1JTlNUQU5USUFU
RV9URVNUX0NBU0VfUChBbm90aGVySW5zdGFudGlhdGlvbk5hbWUsIEZvb1Rlc3QsIFZhbHVlc0lu
KHBldHMpKTsKK0lOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChBbm90aGVySW5zdGFudGlhdGlvbk5h
bWUsIEZvb1Rlc3QsIFZhbHVlc0luKHBldHMpKTsKIAogLy8gVGhlIHRlc3RzIGZyb20gdGhlIGlu
c3RhbnRpYXRpb24gYWJvdmUgd2lsbCBoYXZlIHRoZXNlIG5hbWVzOgogLy8KQEAgLTEzMiw5ICsx
MjgsOSBAQCBJTlNUQU5USUFURV9URVNUX0NBU0VfUChBbm90aGVySW5zdGFudGlhdGlvbk5hbWUs
IEZvb1Rlc3QsIFZhbHVlc0luKHBldHMpKTsKIC8vICAgICogQW5vdGhlckluc3RhbnRpYXRpb25O
YW1lL0Zvb1Rlc3QuSGFzQmxhaEJsYWgvMCBmb3IgImNhdCIKIC8vICAgICogQW5vdGhlckluc3Rh
bnRpYXRpb25OYW1lL0Zvb1Rlc3QuSGFzQmxhaEJsYWgvMSBmb3IgImRvZyIKIC8vCi0vLyBQbGVh
c2Ugbm90ZSB0aGF0IElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QIHdpbGwgaW5zdGFudGlhdGUgYWxs
IHRlc3RzCi0vLyBpbiB0aGUgZ2l2ZW4gdGVzdCBjYXNlLCB3aGV0aGVyIHRoZWlyIGRlZmluaXRp
b25zIGNvbWUgYmVmb3JlIG9yCi0vLyBBRlRFUiB0aGUgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1Ag
c3RhdGVtZW50LgorLy8gUGxlYXNlIG5vdGUgdGhhdCBJTlNUQU5USUFURV9URVNUX1NVSVRFX1Ag
d2lsbCBpbnN0YW50aWF0ZSBhbGwgdGVzdHMKKy8vIGluIHRoZSBnaXZlbiB0ZXN0IHN1aXRlLCB3
aGV0aGVyIHRoZWlyIGRlZmluaXRpb25zIGNvbWUgYmVmb3JlIG9yCisvLyBBRlRFUiB0aGUgSU5T
VEFOVElBVEVfVEVTVF9TVUlURV9QIHN0YXRlbWVudC4KIC8vCiAvLyBQbGVhc2UgYWxzbyBub3Rl
IHRoYXQgZ2VuZXJhdG9yIGV4cHJlc3Npb25zIChpbmNsdWRpbmcgcGFyYW1ldGVycyB0byB0aGUK
IC8vIGdlbmVyYXRvcnMpIGFyZSBldmFsdWF0ZWQgaW4gSW5pdEdvb2dsZVRlc3QoKSwgYWZ0ZXIg
bWFpbigpIGhhcyBzdGFydGVkLgpAQCAtMTc4LDI2ICsxNzQsMjMgQEAgVEVTVF9QKERlcml2ZWRU
ZXN0LCBEb2VzQmxhaCkgewogCiAjZW5kaWYgIC8vIDAKIAotI2luY2x1ZGUgImd0ZXN0L2ludGVy
bmFsL2d0ZXN0LXBvcnQuaCIKLQotI2lmICFHVEVTVF9PU19TWU1CSUFOCi0jIGluY2x1ZGUgPHV0
aWxpdHk+Ci0jZW5kaWYKKyNpbmNsdWRlIDxpdGVyYXRvcj4KKyNpbmNsdWRlIDx1dGlsaXR5Pgog
CiAjaW5jbHVkZSAiZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtaW50ZXJuYWwuaCIKICNpbmNsdWRlICJn
dGVzdC9pbnRlcm5hbC9ndGVzdC1wYXJhbS11dGlsLmgiCi0jaW5jbHVkZSAiZ3Rlc3QvaW50ZXJu
YWwvZ3Rlc3QtcGFyYW0tdXRpbC1nZW5lcmF0ZWQuaCIKKyNpbmNsdWRlICJndGVzdC9pbnRlcm5h
bC9ndGVzdC1wb3J0LmgiCiAKIG5hbWVzcGFjZSB0ZXN0aW5nIHsKIAogLy8gRnVuY3Rpb25zIHBy
b2R1Y2luZyBwYXJhbWV0ZXIgZ2VuZXJhdG9ycy4KIC8vCiAvLyBHb29nbGUgVGVzdCB1c2VzIHRo
ZXNlIGdlbmVyYXRvcnMgdG8gcHJvZHVjZSBwYXJhbWV0ZXJzIGZvciB2YWx1ZS0KLS8vIHBhcmFt
ZXRlcml6ZWQgdGVzdHMuIFdoZW4gYSBwYXJhbWV0ZXJpemVkIHRlc3QgY2FzZSBpcyBpbnN0YW50
aWF0ZWQKKy8vIHBhcmFtZXRlcml6ZWQgdGVzdHMuIFdoZW4gYSBwYXJhbWV0ZXJpemVkIHRlc3Qg
c3VpdGUgaXMgaW5zdGFudGlhdGVkCiAvLyB3aXRoIGEgcGFydGljdWxhciBnZW5lcmF0b3IsIEdv
b2dsZSBUZXN0IGNyZWF0ZXMgYW5kIHJ1bnMgdGVzdHMKIC8vIGZvciBlYWNoIGVsZW1lbnQgaW4g
dGhlIHNlcXVlbmNlIHByb2R1Y2VkIGJ5IHRoZSBnZW5lcmF0b3IuCiAvLwotLy8gSW4gdGhlIGZv
bGxvd2luZyBzYW1wbGUsIHRlc3RzIGZyb20gdGVzdCBjYXNlIEZvb1Rlc3QgYXJlIGluc3RhbnRp
YXRlZAorLy8gSW4gdGhlIGZvbGxvd2luZyBzYW1wbGUsIHRlc3RzIGZyb20gdGVzdCBzdWl0ZSBG
b29UZXN0IGFyZSBpbnN0YW50aWF0ZWQKIC8vIGVhY2ggdGhyZWUgdGltZXMgd2l0aCBwYXJhbWV0
ZXIgdmFsdWVzIDMsIDUsIGFuZCA4OgogLy8KIC8vIGNsYXNzIEZvb1Rlc3QgOiBwdWJsaWMgVGVz
dFdpdGhQYXJhbTxpbnQ+IHsgLi4uIH07CkBAIC0yMDYsNyArMTk5LDcgQEAgbmFtZXNwYWNlIHRl
c3RpbmcgewogLy8gfQogLy8gVEVTVF9QKEZvb1Rlc3QsIFRlc3RUaGF0KSB7CiAvLyB9Ci0vLyBJ
TlNUQU5USUFURV9URVNUX0NBU0VfUChUZXN0U2VxdWVuY2UsIEZvb1Rlc3QsIFZhbHVlcygzLCA1
LCA4KSk7CisvLyBJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoVGVzdFNlcXVlbmNlLCBGb29UZXN0
LCBWYWx1ZXMoMywgNSwgOCkpOwogLy8KIAogLy8gUmFuZ2UoKSByZXR1cm5zIGdlbmVyYXRvcnMg
cHJvdmlkaW5nIHNlcXVlbmNlcyBvZiB2YWx1ZXMgaW4gYSByYW5nZS4KQEAgLTI2MywxMyArMjU2
LDEzIEBAIGludGVybmFsOjpQYXJhbUdlbmVyYXRvcjxUPiBSYW5nZShUIHN0YXJ0LCBUIGVuZCkg
ewogLy8KIC8vIEV4YW1wbGVzOgogLy8KLS8vIFRoaXMgaW5zdGFudGlhdGVzIHRlc3RzIGZyb20g
dGVzdCBjYXNlIFN0cmluZ1Rlc3QKKy8vIFRoaXMgaW5zdGFudGlhdGVzIHRlc3RzIGZyb20gdGVz
dCBzdWl0ZSBTdHJpbmdUZXN0CiAvLyBlYWNoIHdpdGggQy1zdHJpbmcgdmFsdWVzIG9mICJmb28i
LCAiYmFyIiwgYW5kICJiYXoiOgogLy8KIC8vIGNvbnN0IGNoYXIqIHN0cmluZ3NbXSA9IHsiZm9v
IiwgImJhciIsICJiYXoifTsKLS8vIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKFN0cmluZ1NlcXVl
bmNlLCBTdHJpbmdUZXN0LCBWYWx1ZXNJbihzdHJpbmdzKSk7CisvLyBJTlNUQU5USUFURV9URVNU
X1NVSVRFX1AoU3RyaW5nU2VxdWVuY2UsIFN0cmluZ1Rlc3QsIFZhbHVlc0luKHN0cmluZ3MpKTsK
IC8vCi0vLyBUaGlzIGluc3RhbnRpYXRlcyB0ZXN0cyBmcm9tIHRlc3QgY2FzZSBTdGxTdHJpbmdU
ZXN0CisvLyBUaGlzIGluc3RhbnRpYXRlcyB0ZXN0cyBmcm9tIHRlc3Qgc3VpdGUgU3RsU3RyaW5n
VGVzdAogLy8gZWFjaCB3aXRoIFNUTCBzdHJpbmdzIHdpdGggdmFsdWVzICJhIiBhbmQgImIiOgog
Ly8KIC8vIDo6c3RkOjp2ZWN0b3I8IDo6c3RkOjpzdHJpbmc+IEdldFBhcmFtZXRlclN0cmluZ3Mo
KSB7CkBAIC0yNzksOSArMjcyLDkgQEAgaW50ZXJuYWw6OlBhcmFtR2VuZXJhdG9yPFQ+IFJhbmdl
KFQgc3RhcnQsIFQgZW5kKSB7CiAvLyAgIHJldHVybiB2OwogLy8gfQogLy8KLS8vIElOU1RBTlRJ
QVRFX1RFU1RfQ0FTRV9QKENoYXJTZXF1ZW5jZSwKLS8vICAgICAgICAgICAgICAgICAgICAgICAg
IFN0bFN0cmluZ1Rlc3QsCi0vLyAgICAgICAgICAgICAgICAgICAgICAgICBWYWx1ZXNJbihHZXRQ
YXJhbWV0ZXJTdHJpbmdzKCkpKTsKKy8vIElOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDaGFyU2Vx
dWVuY2UsCisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgU3RsU3RyaW5nVGVzdCwKKy8vICAg
ICAgICAgICAgICAgICAgICAgICAgICBWYWx1ZXNJbihHZXRQYXJhbWV0ZXJTdHJpbmdzKCkpKTsK
IC8vCiAvLwogLy8gVGhpcyB3aWxsIGFsc28gaW5zdGFudGlhdGUgdGVzdHMgZnJvbSBDaGFyVGVz
dApAQCAtMjk0LDE2ICsyODcsMTUgQEAgaW50ZXJuYWw6OlBhcmFtR2VuZXJhdG9yPFQ+IFJhbmdl
KFQgc3RhcnQsIFQgZW5kKSB7CiAvLyAgIHJldHVybiBsaXN0OwogLy8gfQogLy8gOjpzdGQ6Omxp
c3Q8Y2hhcj4gbCA9IEdldFBhcmFtZXRlckNoYXJzKCk7Ci0vLyBJTlNUQU5USUFURV9URVNUX0NB
U0VfUChDaGFyU2VxdWVuY2UyLAotLy8gICAgICAgICAgICAgICAgICAgICAgICAgQ2hhclRlc3Qs
Ci0vLyAgICAgICAgICAgICAgICAgICAgICAgICBWYWx1ZXNJbihsLmJlZ2luKCksIGwuZW5kKCkp
KTsKKy8vIElOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChDaGFyU2VxdWVuY2UyLAorLy8gICAgICAg
ICAgICAgICAgICAgICAgICAgIENoYXJUZXN0LAorLy8gICAgICAgICAgICAgICAgICAgICAgICAg
IFZhbHVlc0luKGwuYmVnaW4oKSwgbC5lbmQoKSkpOwogLy8KIHRlbXBsYXRlIDx0eXBlbmFtZSBG
b3J3YXJkSXRlcmF0b3I+CiBpbnRlcm5hbDo6UGFyYW1HZW5lcmF0b3I8Ci0gIHR5cGVuYW1lIDo6
dGVzdGluZzo6aW50ZXJuYWw6Okl0ZXJhdG9yVHJhaXRzPEZvcndhcmRJdGVyYXRvcj46OnZhbHVl
X3R5cGU+CisgICAgdHlwZW5hbWUgc3RkOjppdGVyYXRvcl90cmFpdHM8Rm9yd2FyZEl0ZXJhdG9y
Pjo6dmFsdWVfdHlwZT4KIFZhbHVlc0luKEZvcndhcmRJdGVyYXRvciBiZWdpbiwgRm9yd2FyZEl0
ZXJhdG9yIGVuZCkgewotICB0eXBlZGVmIHR5cGVuYW1lIDo6dGVzdGluZzo6aW50ZXJuYWw6Okl0
ZXJhdG9yVHJhaXRzPEZvcndhcmRJdGVyYXRvcj4KLSAgICAgIDo6dmFsdWVfdHlwZSBQYXJhbVR5
cGU7CisgIHR5cGVkZWYgdHlwZW5hbWUgc3RkOjppdGVyYXRvcl90cmFpdHM8Rm9yd2FyZEl0ZXJh
dG9yPjo6dmFsdWVfdHlwZSBQYXJhbVR5cGU7CiAgIHJldHVybiBpbnRlcm5hbDo6UGFyYW1HZW5l
cmF0b3I8UGFyYW1UeXBlPigKICAgICAgIG5ldyBpbnRlcm5hbDo6VmFsdWVzSW5JdGVyYXRvclJh
bmdlR2VuZXJhdG9yPFBhcmFtVHlwZT4oYmVnaW4sIGVuZCkpOwogfQpAQCAtMzI2LDg2OSArMzE4
LDIyIEBAIGludGVybmFsOjpQYXJhbUdlbmVyYXRvcjx0eXBlbmFtZSBDb250YWluZXI6OnZhbHVl
X3R5cGU+IFZhbHVlc0luKAogLy8gVmFsdWVzKFQgdjEsIFQgdjIsIC4uLiwgVCB2TikKIC8vICAg
LSByZXR1cm5zIGEgZ2VuZXJhdG9yIHByb2R1Y2luZyBzZXF1ZW5jZXMgd2l0aCBlbGVtZW50cyB2
MSwgdjIsIC4uLiwgdk4uCiAvLwotLy8gRm9yIGV4YW1wbGUsIHRoaXMgaW5zdGFudGlhdGVzIHRl
c3RzIGZyb20gdGVzdCBjYXNlIEJhclRlc3QgZWFjaAorLy8gRm9yIGV4YW1wbGUsIHRoaXMgaW5z
dGFudGlhdGVzIHRlc3RzIGZyb20gdGVzdCBzdWl0ZSBCYXJUZXN0IGVhY2gKIC8vIHdpdGggdmFs
dWVzICJvbmUiLCAidHdvIiwgYW5kICJ0aHJlZSI6CiAvLwotLy8gSU5TVEFOVElBVEVfVEVTVF9D
QVNFX1AoTnVtU2VxdWVuY2UsIEJhclRlc3QsIFZhbHVlcygib25lIiwgInR3byIsICJ0aHJlZSIp
KTsKKy8vIElOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChOdW1TZXF1ZW5jZSwKKy8vICAgICAgICAg
ICAgICAgICAgICAgICAgICBCYXJUZXN0LAorLy8gICAgICAgICAgICAgICAgICAgICAgICAgIFZh
bHVlcygib25lIiwgInR3byIsICJ0aHJlZSIpKTsKIC8vCi0vLyBUaGlzIGluc3RhbnRpYXRlcyB0
ZXN0cyBmcm9tIHRlc3QgY2FzZSBCYXpUZXN0IGVhY2ggd2l0aCB2YWx1ZXMgMSwgMiwgMy41Lgor
Ly8gVGhpcyBpbnN0YW50aWF0ZXMgdGVzdHMgZnJvbSB0ZXN0IHN1aXRlIEJhelRlc3QgZWFjaCB3
aXRoIHZhbHVlcyAxLCAyLCAzLjUuCiAvLyBUaGUgZXhhY3QgdHlwZSBvZiB2YWx1ZXMgd2lsbCBk
ZXBlbmQgb24gdGhlIHR5cGUgb2YgcGFyYW1ldGVyIGluIEJhelRlc3QuCiAvLwotLy8gSU5TVEFO
VElBVEVfVEVTVF9DQVNFX1AoRmxvYXRpbmdOdW1iZXJzLCBCYXpUZXN0LCBWYWx1ZXMoMSwgMiwg
My41KSk7CisvLyBJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoRmxvYXRpbmdOdW1iZXJzLCBCYXpU
ZXN0LCBWYWx1ZXMoMSwgMiwgMy41KSk7CiAvLwotLy8gQ3VycmVudGx5LCBWYWx1ZXMoKSBzdXBw
b3J0cyBmcm9tIDEgdG8gNTAgcGFyYW1ldGVycy4KIC8vCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDE+
Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTE8VDE+IFZhbHVlcyhUMSB2MSkgewotICByZXR1cm4gaW50
ZXJuYWw6OlZhbHVlQXJyYXkxPFQxPih2MSk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwg
dHlwZW5hbWUgVDI+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTI8VDEsIFQyPiBWYWx1ZXMoVDEgdjEs
IFQyIHYyKSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJheTI8VDEsIFQyPih2MSwgdjIp
OwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMz4K
LWludGVybmFsOjpWYWx1ZUFycmF5MzxUMSwgVDIsIFQzPiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBU
MyB2MykgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkzPFQxLCBUMiwgVDM+KHYxLCB2
MiwgdjMpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFt
ZSBUMywgdHlwZW5hbWUgVDQ+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTQ8VDEsIFQyLCBUMywgVDQ+
IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCkgewotICByZXR1cm4gaW50ZXJuYWw6
OlZhbHVlQXJyYXk0PFQxLCBUMiwgVDMsIFQ0Pih2MSwgdjIsIHYzLCB2NCk7Ci19Ci0KLXRlbXBs
YXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwg
dHlwZW5hbWUgVDU+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTU8VDEsIFQyLCBUMywgVDQsIFQ1PiBW
YWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsCi0gICAgVDUgdjUpIHsKLSAgcmV0dXJu
IGludGVybmFsOjpWYWx1ZUFycmF5NTxUMSwgVDIsIFQzLCBUNCwgVDU+KHYxLCB2MiwgdjMsIHY0
LCB2NSk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1l
IFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDY+Ci1pbnRlcm5h
bDo6VmFsdWVBcnJheTY8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNj4gVmFsdWVzKFQxIHYxLCBUMiB2
MiwgVDMgdjMsCi0gICAgVDQgdjQsIFQ1IHY1LCBUNiB2NikgewotICByZXR1cm4gaW50ZXJuYWw6
OlZhbHVlQXJyYXk2PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDY+KHYxLCB2MiwgdjMsIHY0LCB2NSwg
djYpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBU
MywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBU
Nz4KLWludGVybmFsOjpWYWx1ZUFycmF5NzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNz4gVmFs
dWVzKFQxIHYxLCBUMiB2MiwgVDMgdjMsCi0gICAgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcp
IHsKLSAgcmV0dXJuIGludGVybmFsOjpWYWx1ZUFycmF5NzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNz4odjEsIHYyLCB2MywgdjQsIHY1LAotICAgICAgdjYsIHY3KTsKLX0KLQotdGVtcGxhdGUg
PHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBl
bmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4PgotaW50
ZXJuYWw6OlZhbHVlQXJyYXk4PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOD4gVmFsdWVz
KFQxIHYxLCBUMiB2MiwKLSAgICBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4
IHY4KSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJheTg8VDEsIFQyLCBUMywgVDQsIFQ1
LCBUNiwgVDcsIFQ4Pih2MSwgdjIsIHYzLCB2NCwKLSAgICAgIHY1LCB2NiwgdjcsIHY4KTsKLX0K
LQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVu
YW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVu
YW1lIFQ4LCB0eXBlbmFtZSBUOT4KLWludGVybmFsOjpWYWx1ZUFycmF5OTxUMSwgVDIsIFQzLCBU
NCwgVDUsIFQ2LCBUNywgVDgsIFQ5PiBWYWx1ZXMoVDEgdjEsIFQyIHYyLAotICAgIFQzIHYzLCBU
NCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5KSB7Ci0gIHJldHVybiBpbnRl
cm5hbDo6VmFsdWVBcnJheTk8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOT4odjEs
IHYyLCB2MywKLSAgICAgIHY0LCB2NSwgdjYsIHY3LCB2OCwgdjkpOwotfQotCi10ZW1wbGF0ZSA8
dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVu
YW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVu
YW1lIFQ5LCB0eXBlbmFtZSBUMTA+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTEwPFQxLCBUMiwgVDMs
IFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMD4gVmFsdWVzKFQxIHYxLAotICAgIFQyIHYyLCBU
MyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwgVDEwIHYxMCkg
ewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkxMDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTA+KHYxLAotICAgICAgdjIsIHYzLCB2NCwgdjUsIHY2LCB2Nywgdjgs
IHY5LCB2MTApOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBl
bmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBl
bmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlw
ZW5hbWUgVDExPgotaW50ZXJuYWw6OlZhbHVlQXJyYXkxMTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTAsCi0gICAgVDExPiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2Mywg
VDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwKLSAgICBUMTAgdjEwLCBU
MTEgdjExKSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJheTExPFQxLCBUMiwgVDMsIFQ0
LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwKLSAgICAgIFQxMT4odjEsIHYyLCB2MywgdjQsIHY1
LCB2NiwgdjcsIHY4LCB2OSwgdjEwLCB2MTEpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEs
IHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAg
IHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBl
bmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTI+Ci1pbnRlcm5hbDo6VmFs
dWVBcnJheTEyPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAot
ICAgIFQxMj4gVmFsdWVzKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYs
IFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMikgewot
ICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkxMjxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBU
NywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMj4odjEsIHYyLCB2MywgdjQsIHY1LCB2Niwg
djcsIHY4LCB2OSwgdjEwLCB2MTEsIHYxMik7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwg
dHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAg
dHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVu
YW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzPgot
aW50ZXJuYWw6OlZhbHVlQXJyYXkxMzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5
LCBUMTAsIFQxMSwgVDEyLAotICAgIFQxMz4gVmFsdWVzKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0
IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgVDEwIHYxMCwgVDEx
IHYxMSwgVDEyIHYxMiwgVDEzIHYxMykgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkx
MzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQx
MiwgVDEzPih2MSwgdjIsIHYzLCB2NCwgdjUsIHY2LCB2NywgdjgsIHY5LCB2MTAsIHYxMSwgdjEy
LCB2MTMpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFt
ZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFt
ZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5h
bWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0PgotaW50ZXJu
YWw6OlZhbHVlQXJyYXkxNDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAs
IFQxMSwgVDEyLCBUMTMsCi0gICAgVDE0PiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQg
djQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwKLSAgICBUMTAgdjEwLCBUMTEg
djExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0KSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFs
dWVBcnJheTE0PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAot
ICAgICAgVDEyLCBUMTMsIFQxND4odjEsIHYyLCB2MywgdjQsIHY1LCB2NiwgdjcsIHY4LCB2OSwg
djEwLCB2MTEsIHYxMiwgdjEzLAotICAgICAgdjE0KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1l
IFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwK
LSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwg
dHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBU
MTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1PgotaW50ZXJuYWw6OlZhbHVlQXJyYXkxNTxU
MSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0g
ICAgVDE0LCBUMTU+IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2
IHY2LCBUNyB2NywgVDggdjgsCi0gICAgVDkgdjksIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIs
IFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUpIHsKLSAgcmV0dXJuIGludGVybmFsOjpWYWx1ZUFy
cmF5MTU8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsCi0gICAg
ICBUMTIsIFQxMywgVDE0LCBUMTU+KHYxLCB2MiwgdjMsIHY0LCB2NSwgdjYsIHY3LCB2OCwgdjks
IHYxMCwgdjExLCB2MTIsCi0gICAgICB2MTMsIHYxNCwgdjE1KTsKLX0KLQotdGVtcGxhdGUgPHR5
cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFt
ZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFt
ZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBl
bmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNj4K
LWludGVybmFsOjpWYWx1ZUFycmF5MTY8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBU
OSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAgIFQxNCwgVDE1LCBUMTY+IFZhbHVlcyhUMSB2MSwg
VDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywKLSAgICBUOCB2OCwgVDkg
djksIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUs
Ci0gICAgVDE2IHYxNikgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkxNjxUMSwgVDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBU
MTQsIFQxNSwgVDE2Pih2MSwgdjIsIHYzLCB2NCwgdjUsIHY2LCB2NywgdjgsIHY5LCB2MTAsIHYx
MSwKLSAgICAgIHYxMiwgdjEzLCB2MTQsIHYxNSwgdjE2KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVu
YW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBU
NSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBU
OSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFt
ZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlw
ZW5hbWUgVDE3PgotaW50ZXJuYWw6OlZhbHVlQXJyYXkxNzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgVDE0LCBUMTUsIFQxNiwgVDE3
PiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcs
Ci0gICAgVDggdjgsIFQ5IHY5LCBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBU
MTQgdjE0LCBUMTUgdjE1LAotICAgIFQxNiB2MTYsIFQxNyB2MTcpIHsKLSAgcmV0dXJuIGludGVy
bmFsOjpWYWx1ZUFycmF5MTc8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEw
LCBUMTEsCi0gICAgICBUMTIsIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3Pih2MSwgdjIsIHYzLCB2
NCwgdjUsIHY2LCB2NywgdjgsIHY5LCB2MTAsCi0gICAgICB2MTEsIHYxMiwgdjEzLCB2MTQsIHYx
NSwgdjE2LCB2MTcpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0
eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0
eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAg
dHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0
eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQx
OD4KLWludGVybmFsOjpWYWx1ZUFycmF5MTg8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4
LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4PiBW
YWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwKLSAgICBUNyB2
NywgVDggdjgsIFQ5IHY5LCBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQg
djE0LCBUMTUgdjE1LAotICAgIFQxNiB2MTYsIFQxNyB2MTcsIFQxOCB2MTgpIHsKLSAgcmV0dXJu
IGludGVybmFsOjpWYWx1ZUFycmF5MTg8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBU
OSwgVDEwLCBUMTEsCi0gICAgICBUMTIsIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTg+KHYx
LCB2MiwgdjMsIHY0LCB2NSwgdjYsIHY3LCB2OCwgdjksCi0gICAgICB2MTAsIHYxMSwgdjEyLCB2
MTMsIHYxNCwgdjE1LCB2MTYsIHYxNywgdjE4KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQx
LCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAg
ICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlw
ZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMs
IHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUg
VDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOT4KLWludGVybmFsOjpWYWx1ZUFycmF5MTk8
VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLAot
ICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTk+IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQz
IHYzLCBUNCB2NCwgVDUgdjUsCi0gICAgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksIFQxMCB2
MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsCi0gICAgVDE1IHYxNSwgVDE2
IHYxNiwgVDE3IHYxNywgVDE4IHYxOCwgVDE5IHYxOSkgewotICByZXR1cm4gaW50ZXJuYWw6OlZh
bHVlQXJyYXkxOTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwK
LSAgICAgIFQxMiwgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5Pih2MSwgdjIsIHYz
LCB2NCwgdjUsIHY2LCB2NywgdjgsCi0gICAgICB2OSwgdjEwLCB2MTEsIHYxMiwgdjEzLCB2MTQs
IHYxNSwgdjE2LCB2MTcsIHYxOCwgdjE5KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0
eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0
eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5h
bWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5
cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3
LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwPgotaW50ZXJuYWw6OlZh
bHVlQXJyYXkyMDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwg
VDEyLCBUMTMsCi0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwPiBWYWx1ZXMo
VDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsCi0gICAgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDgg
djgsIFQ5IHY5LCBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLAotICAgIFQxNCB2
MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAp
IHsKLSAgcmV0dXJuIGludGVybmFsOjpWYWx1ZUFycmF5MjA8VDEsIFQyLCBUMywgVDQsIFQ1LCBU
NiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsCi0gICAgICBUMTIsIFQxMywgVDE0LCBUMTUsIFQxNiwg
VDE3LCBUMTgsIFQxOSwgVDIwPih2MSwgdjIsIHYzLCB2NCwgdjUsIHY2LCB2NywKLSAgICAgIHY4
LCB2OSwgdjEwLCB2MTEsIHYxMiwgdjEzLCB2MTQsIHYxNSwgdjE2LCB2MTcsIHYxOCwgdjE5LCB2
MjApOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBU
MywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBU
NywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUg
VDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBU
MTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5h
bWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxPgotaW50ZXJuYWw6OlZhbHVl
QXJyYXkyMTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEy
LCBUMTMsCi0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjE+IFZhbHVl
cyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwKLSAgICBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBU
OCB2OCwgVDkgdjksIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsCi0gICAgVDE0
IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYy
MCwgVDIxIHYyMSkgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkyMTxUMSwgVDIsIFQz
LCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBUMTQs
IFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMT4odjEsIHYyLCB2MywgdjQsIHY1LCB2
NiwKLSAgICAgIHY3LCB2OCwgdjksIHYxMCwgdjExLCB2MTIsIHYxMywgdjE0LCB2MTUsIHYxNiwg
djE3LCB2MTgsIHYxOSwgdjIwLCB2MjEpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5
cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5
cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFt
ZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlw
ZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcs
IHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUg
VDIxLCB0eXBlbmFtZSBUMjI+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTIyPFQxLCBUMiwgVDMsIFQ0
LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwg
VDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyPiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBU
MyB2MywKLSAgICBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LCBUMTAg
djEwLCBUMTEgdjExLCBUMTIgdjEyLAotICAgIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQx
NiB2MTYsIFQxNyB2MTcsIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsCi0gICAgVDIxIHYyMSwg
VDIyIHYyMikgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkyMjxUMSwgVDIsIFQzLCBU
NCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBUMTQsIFQx
NSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyPih2MSwgdjIsIHYzLCB2NCwKLSAg
ICAgIHY1LCB2NiwgdjcsIHY4LCB2OSwgdjEwLCB2MTEsIHYxMiwgdjEzLCB2MTQsIHYxNSwgdjE2
LCB2MTcsIHYxOCwgdjE5LAotICAgICAgdjIwLCB2MjEsIHYyMik7Ci19Ci0KLXRlbXBsYXRlIDx0
eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5h
bWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5h
bWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlw
ZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYs
IHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwK
LSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzPgotaW50ZXJuYWw6
OlZhbHVlQXJyYXkyMzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQx
MSwgVDEyLCBUMTMsCi0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEs
IFQyMiwgVDIzPiBWYWx1ZXMoVDEgdjEsIFQyIHYyLAotICAgIFQzIHYzLCBUNCB2NCwgVDUgdjUs
IFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LCBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLAot
ICAgIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsIFQxOCB2MTgs
IFQxOSB2MTksIFQyMCB2MjAsCi0gICAgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMykgewotICBy
ZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkyMzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQx
OCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjM+KHYxLCB2MiwgdjMsCi0gICAgICB2NCwgdjUsIHY2
LCB2NywgdjgsIHY5LCB2MTAsIHYxMSwgdjEyLCB2MTMsIHYxNCwgdjE1LCB2MTYsIHYxNywgdjE4
LCB2MTksCi0gICAgICB2MjAsIHYyMSwgdjIyLCB2MjMpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5h
bWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1
LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5
LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1l
IFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBl
bmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAg
dHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0Pgot
aW50ZXJuYWw6OlZhbHVlQXJyYXkyNDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5
LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwg
VDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQ+IFZhbHVlcyhUMSB2MSwgVDIgdjIsCi0gICAgVDMgdjMs
IFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksIFQxMCB2MTAsIFQxMSB2
MTEsIFQxMiB2MTIsCi0gICAgVDEzIHYxMywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3
IHYxNywgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwKLSAgICBUMjEgdjIxLCBUMjIgdjIyLCBU
MjMgdjIzLCBUMjQgdjI0KSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJheTI0PFQxLCBU
MiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAotICAgICAgVDEyLCBUMTMs
IFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0Pih2
MSwgdjIsCi0gICAgICB2MywgdjQsIHY1LCB2NiwgdjcsIHY4LCB2OSwgdjEwLCB2MTEsIHYxMiwg
djEzLCB2MTQsIHYxNSwgdjE2LCB2MTcsIHYxOCwKLSAgICAgIHYxOSwgdjIwLCB2MjEsIHYyMiwg
djIzLCB2MjQpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBl
bmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBl
bmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlw
ZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBl
bmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwg
dHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBU
MjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjU+Ci1pbnRlcm5hbDo6
VmFsdWVBcnJheTI1PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDEx
LCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwg
VDIyLCBUMjMsIFQyNCwgVDI1PiBWYWx1ZXMoVDEgdjEsCi0gICAgVDIgdjIsIFQzIHYzLCBUNCB2
NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LCBUMTAgdjEwLCBUMTEgdjExLAot
ICAgIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcs
IFQxOCB2MTgsIFQxOSB2MTksCi0gICAgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYy
MywgVDI0IHYyNCwgVDI1IHYyNSkgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkyNTxU
MSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwg
VDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQy
NCwgVDI1Pih2MSwKLSAgICAgIHYyLCB2MywgdjQsIHY1LCB2NiwgdjcsIHY4LCB2OSwgdjEwLCB2
MTEsIHYxMiwgdjEzLCB2MTQsIHYxNSwgdjE2LCB2MTcsCi0gICAgICB2MTgsIHYxOSwgdjIwLCB2
MjEsIHYyMiwgdjIzLCB2MjQsIHYyNSk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlw
ZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlw
ZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1l
IFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBl
bmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywg
dHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBU
MjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQy
NSwKLSAgICB0eXBlbmFtZSBUMjY+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTI2PFQxLCBUMiwgVDMs
IFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQx
NSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LAotICAg
IFQyNj4gVmFsdWVzKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3
IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYx
MywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywKLSAgICBUMTggdjE4LCBUMTkg
djE5LCBUMjAgdjIwLCBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIzLCBUMjQgdjI0LCBUMjUgdjI1
LAotICAgIFQyNiB2MjYpIHsKLSAgcmV0dXJuIGludGVybmFsOjpWYWx1ZUFycmF5MjY8VDEsIFQy
LCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsCi0gICAgICBUMTIsIFQxMywg
VDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQy
NSwKLSAgICAgIFQyNj4odjEsIHYyLCB2MywgdjQsIHY1LCB2NiwgdjcsIHY4LCB2OSwgdjEwLCB2
MTEsIHYxMiwgdjEzLCB2MTQsIHYxNSwKLSAgICAgIHYxNiwgdjE3LCB2MTgsIHYxOSwgdjIwLCB2
MjEsIHYyMiwgdjIzLCB2MjQsIHYyNSwgdjI2KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQx
LCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAg
ICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlw
ZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMs
IHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUg
VDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVu
YW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5h
bWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3PgotaW50ZXJuYWw6OlZhbHVl
QXJyYXkyNzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEy
LCBUMTMsCi0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwg
VDIzLCBUMjQsIFQyNSwgVDI2LAotICAgIFQyNz4gVmFsdWVzKFQxIHYxLCBUMiB2MiwgVDMgdjMs
IFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgVDEwIHYxMCwg
VDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3
IHYxNywKLSAgICBUMTggdjE4LCBUMTkgdjE5LCBUMjAgdjIwLCBUMjEgdjIxLCBUMjIgdjIyLCBU
MjMgdjIzLCBUMjQgdjI0LCBUMjUgdjI1LAotICAgIFQyNiB2MjYsIFQyNyB2MjcpIHsKLSAgcmV0
dXJuIGludGVybmFsOjpWYWx1ZUFycmF5Mjc8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4
LCBUOSwgVDEwLCBUMTEsCi0gICAgICBUMTIsIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgs
IFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwKLSAgICAgIFQyNiwgVDI3Pih2MSwg
djIsIHYzLCB2NCwgdjUsIHY2LCB2NywgdjgsIHY5LCB2MTAsIHYxMSwgdjEyLCB2MTMsIHYxNCwK
LSAgICAgIHYxNSwgdjE2LCB2MTcsIHYxOCwgdjE5LCB2MjAsIHYyMSwgdjIyLCB2MjMsIHYyNCwg
djI1LCB2MjYsIHYyNyk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIs
IHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYs
IHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAg
ICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQs
IHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUg
VDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVu
YW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0
eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4PgotaW50ZXJuYWw6OlZhbHVl
QXJyYXkyODxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEy
LCBUMTMsCi0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwg
VDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsCi0gICAgVDI4PiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBU
MyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwKLSAgICBUMTAg
djEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2
LCBUMTcgdjE3LAotICAgIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2
MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQyNSB2MjUsCi0gICAgVDI2IHYyNiwgVDI3IHYyNywgVDI4
IHYyOCkgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkyODxUMSwgVDIsIFQzLCBUNCwg
VDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBUMTQsIFQxNSwg
VDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LAotICAgICAg
VDI2LCBUMjcsIFQyOD4odjEsIHYyLCB2MywgdjQsIHY1LCB2NiwgdjcsIHY4LCB2OSwgdjEwLCB2
MTEsIHYxMiwgdjEzLAotICAgICAgdjE0LCB2MTUsIHYxNiwgdjE3LCB2MTgsIHYxOSwgdjIwLCB2
MjEsIHYyMiwgdjIzLCB2MjQsIHYyNSwgdjI2LCB2MjcsCi0gICAgICB2MjgpOwotfQotCi10ZW1w
bGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQs
IHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgs
IHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBU
MTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5h
bWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFt
ZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlw
ZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcs
IHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5PgotaW50ZXJuYWw6OlZhbHVlQXJyYXkyOTxUMSwg
VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAg
VDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQy
NSwgVDI2LCBUMjcsIFQyOCwKLSAgICBUMjk+IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBU
NCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAgIFQxMCB2MTAsIFQx
MSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2
MTcsCi0gICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIz
IHYyMywgVDI0IHYyNCwgVDI1IHYyNSwKLSAgICBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBU
MjkgdjI5KSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJheTI5PFQxLCBUMiwgVDMsIFQ0
LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAotICAgICAgVDEyLCBUMTMsIFQxNCwgVDE1
LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsCi0gICAg
ICBUMjYsIFQyNywgVDI4LCBUMjk+KHYxLCB2MiwgdjMsIHY0LCB2NSwgdjYsIHY3LCB2OCwgdjks
IHYxMCwgdjExLCB2MTIsCi0gICAgICB2MTMsIHYxNCwgdjE1LCB2MTYsIHYxNywgdjE4LCB2MTks
IHYyMCwgdjIxLCB2MjIsIHYyMywgdjI0LCB2MjUsIHYyNiwKLSAgICAgIHYyNywgdjI4LCB2Mjkp
OwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywg
dHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywg
dHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDEx
LCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUs
Ci0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUg
VDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVu
YW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0
eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzA+Ci1p
bnRlcm5hbDo6VmFsdWVBcnJheTMwPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDks
IFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBU
MjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAgIFQyOSwgVDMw
PiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcs
IFQ4IHY4LAotICAgIFQ5IHY5LCBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBU
MTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LAotICAgIFQxNyB2MTcsIFQxOCB2MTgsIFQxOSB2MTks
IFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsCi0gICAgVDI1IHYy
NSwgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwgVDI5IHYyOSwgVDMwIHYzMCkgewotICByZXR1
cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkzMDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgs
IFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwg
VDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LAotICAgICAgVDI2LCBUMjcsIFQyOCwg
VDI5LCBUMzA+KHYxLCB2MiwgdjMsIHY0LCB2NSwgdjYsIHY3LCB2OCwgdjksIHYxMCwgdjExLAot
ICAgICAgdjEyLCB2MTMsIHYxNCwgdjE1LCB2MTYsIHYxNywgdjE4LCB2MTksIHYyMCwgdjIxLCB2
MjIsIHYyMywgdjI0LCB2MjUsCi0gICAgICB2MjYsIHYyNywgdjI4LCB2MjksIHYzMCk7Ci19Ci0K
LXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFt
ZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFt
ZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVu
YW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0
eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5
cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIz
LCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1l
IFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBl
bmFtZSBUMzE+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTMxPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYs
IFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwgVDE2LCBUMTcs
IFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAot
ICAgIFQyOSwgVDMwLCBUMzE+IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUg
djUsIFQ2IHY2LCBUNyB2NywKLSAgICBUOCB2OCwgVDkgdjksIFQxMCB2MTAsIFQxMSB2MTEsIFQx
MiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsCi0gICAgVDE2IHYxNiwgVDE3IHYxNywg
VDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywKLSAg
ICBUMjQgdjI0LCBUMjUgdjI1LCBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBU
MzAgdjMwLCBUMzEgdjMxKSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJheTMxPFQxLCBU
MiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAotICAgICAgVDEyLCBUMTMs
IFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBU
MjUsCi0gICAgICBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwgVDMxPih2MSwgdjIsIHYzLCB2NCwg
djUsIHY2LCB2NywgdjgsIHY5LCB2MTAsCi0gICAgICB2MTEsIHYxMiwgdjEzLCB2MTQsIHYxNSwg
djE2LCB2MTcsIHYxOCwgdjE5LCB2MjAsIHYyMSwgdjIyLCB2MjMsIHYyNCwKLSAgICAgIHYyNSwg
djI2LCB2MjcsIHYyOCwgdjI5LCB2MzAsIHYzMSk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBU
MSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0g
ICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5
cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEz
LCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1l
IFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBl
bmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVu
YW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0
eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQz
Mj4KLWludGVybmFsOjpWYWx1ZUFycmF5MzI8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4
LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBU
MTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsCi0gICAgVDI5
LCBUMzAsIFQzMSwgVDMyPiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1
LCBUNiB2NiwgVDcgdjcsCi0gICAgVDggdjgsIFQ5IHY5LCBUMTAgdjEwLCBUMTEgdjExLCBUMTIg
djEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LAotICAgIFQxNiB2MTYsIFQxNyB2MTcsIFQx
OCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsCi0gICAg
VDI0IHYyNCwgVDI1IHYyNSwgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwgVDI5IHYyOSwgVDMw
IHYzMCwgVDMxIHYzMSwKLSAgICBUMzIgdjMyKSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVB
cnJheTMyPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAotICAg
ICAgVDEyLCBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIs
IFQyMywgVDI0LCBUMjUsCi0gICAgICBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzI+
KHYxLCB2MiwgdjMsIHY0LCB2NSwgdjYsIHY3LCB2OCwgdjksCi0gICAgICB2MTAsIHYxMSwgdjEy
LCB2MTMsIHYxNCwgdjE1LCB2MTYsIHYxNywgdjE4LCB2MTksIHYyMCwgdjIxLCB2MjIsIHYyMywK
LSAgICAgIHYyNCwgdjI1LCB2MjYsIHYyNywgdjI4LCB2MjksIHYzMCwgdjMxLCB2MzIpOwotfQot
Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5h
bWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5h
bWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBl
bmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAg
dHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0
eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQy
MywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFt
ZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlw
ZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMz4KLWludGVybmFsOjpWYWx1ZUFy
cmF5MzM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwg
VDEzLAotICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQy
MywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsCi0gICAgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzM+
IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LAotICAgIFQ3
IHY3LCBUOCB2OCwgVDkgdjksIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQx
NCB2MTQsIFQxNSB2MTUsCi0gICAgVDE2IHYxNiwgVDE3IHYxNywgVDE4IHYxOCwgVDE5IHYxOSwg
VDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywKLSAgICBUMjQgdjI0LCBUMjUgdjI1
LCBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMxLAot
ICAgIFQzMiB2MzIsIFQzMyB2MzMpIHsKLSAgcmV0dXJuIGludGVybmFsOjpWYWx1ZUFycmF5MzM8
VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsCi0gICAgICBUMTIs
IFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBU
MjQsIFQyNSwKLSAgICAgIFQyNiwgVDI3LCBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzPih2
MSwgdjIsIHYzLCB2NCwgdjUsIHY2LCB2NywgdjgsCi0gICAgICB2OSwgdjEwLCB2MTEsIHYxMiwg
djEzLCB2MTQsIHYxNSwgdjE2LCB2MTcsIHYxOCwgdjE5LCB2MjAsIHYyMSwgdjIyLCB2MjMsCi0g
ICAgICB2MjQsIHYyNSwgdjI2LCB2MjcsIHYyOCwgdjI5LCB2MzAsIHYzMSwgdjMyLCB2MzMpOwot
fQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlw
ZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlw
ZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0
eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0g
ICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5
LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1l
IFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBl
bmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAg
dHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0Pgot
aW50ZXJuYWw6OlZhbHVlQXJyYXkzNDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5
LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwg
VDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICBUMjksIFQz
MCwgVDMxLCBUMzIsIFQzMywgVDM0PiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQs
IFQ1IHY1LAotICAgIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LCBUMTAgdjEwLCBUMTEgdjEx
LCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LAotICAgIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2
MTcsIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsCi0gICAgVDIz
IHYyMywgVDI0IHYyNCwgVDI1IHYyNSwgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwgVDI5IHYy
OSwgVDMwIHYzMCwKLSAgICBUMzEgdjMxLCBUMzIgdjMyLCBUMzMgdjMzLCBUMzQgdjM0KSB7Ci0g
IHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJheTM0PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3
LCBUOCwgVDksIFQxMCwgVDExLAotICAgICAgVDEyLCBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywg
VDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsCi0gICAgICBUMjYsIFQyNywg
VDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0Pih2MSwgdjIsIHYzLCB2NCwgdjUsIHY2
LCB2NywKLSAgICAgIHY4LCB2OSwgdjEwLCB2MTEsIHYxMiwgdjEzLCB2MTQsIHYxNSwgdjE2LCB2
MTcsIHYxOCwgdjE5LCB2MjAsIHYyMSwgdjIyLAotICAgICAgdjIzLCB2MjQsIHYyNSwgdjI2LCB2
MjcsIHYyOCwgdjI5LCB2MzAsIHYzMSwgdjMyLCB2MzMsIHYzNCk7Ci19Ci0KLXRlbXBsYXRlIDx0
eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5h
bWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5h
bWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlw
ZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYs
IHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwK
LSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBU
MjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5h
bWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5
cGVuYW1lIFQzMiwgdHlwZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNT4KLWlu
dGVybmFsOjpWYWx1ZUFycmF5MzU8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwg
VDEwLCBUMTEsIFQxMiwgVDEzLAotICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQy
MCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsCi0gICAgVDI5LCBUMzAs
IFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1PiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQg
djQsCi0gICAgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LCBUMTAgdjEwLCBUMTEg
djExLCBUMTIgdjEyLCBUMTMgdjEzLAotICAgIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQx
NyB2MTcsIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsCi0gICAgVDIyIHYyMiwg
VDIzIHYyMywgVDI0IHYyNCwgVDI1IHYyNSwgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwgVDI5
IHYyOSwKLSAgICBUMzAgdjMwLCBUMzEgdjMxLCBUMzIgdjMyLCBUMzMgdjMzLCBUMzQgdjM0LCBU
MzUgdjM1KSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJheTM1PFQxLCBUMiwgVDMsIFQ0
LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAotICAgICAgVDEyLCBUMTMsIFQxNCwgVDE1
LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsCi0gICAg
ICBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzU+KHYxLCB2
MiwgdjMsIHY0LCB2NSwgdjYsCi0gICAgICB2NywgdjgsIHY5LCB2MTAsIHYxMSwgdjEyLCB2MTMs
IHYxNCwgdjE1LCB2MTYsIHYxNywgdjE4LCB2MTksIHYyMCwgdjIxLAotICAgICAgdjIyLCB2MjMs
IHYyNCwgdjI1LCB2MjYsIHYyNywgdjI4LCB2MjksIHYzMCwgdjMxLCB2MzIsIHYzMywgdjM0LCB2
MzUpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBU
MywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBU
NywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUg
VDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBU
MTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5h
bWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5
cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2
LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAs
Ci0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUg
VDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2PgotaW50ZXJuYWw6OlZhbHVlQXJy
YXkzNjxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBU
MTMsCi0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIz
LCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywg
VDM0LCBUMzUsIFQzNj4gVmFsdWVzKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LAotICAgIFQ1
IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYx
MiwgVDEzIHYxMywKLSAgICBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LCBUMTgg
djE4LCBUMTkgdjE5LCBUMjAgdjIwLCBUMjEgdjIxLAotICAgIFQyMiB2MjIsIFQyMyB2MjMsIFQy
NCB2MjQsIFQyNSB2MjUsIFQyNiB2MjYsIFQyNyB2MjcsIFQyOCB2MjgsIFQyOSB2MjksCi0gICAg
VDMwIHYzMCwgVDMxIHYzMSwgVDMyIHYzMiwgVDMzIHYzMywgVDM0IHYzNCwgVDM1IHYzNSwgVDM2
IHYzNikgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkzNjxUMSwgVDIsIFQzLCBUNCwg
VDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBUMTQsIFQxNSwg
VDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LAotICAgICAg
VDI2LCBUMjcsIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzY+KHYx
LCB2MiwgdjMsIHY0LAotICAgICAgdjUsIHY2LCB2NywgdjgsIHY5LCB2MTAsIHYxMSwgdjEyLCB2
MTMsIHYxNCwgdjE1LCB2MTYsIHYxNywgdjE4LCB2MTksCi0gICAgICB2MjAsIHYyMSwgdjIyLCB2
MjMsIHYyNCwgdjI1LCB2MjYsIHYyNywgdjI4LCB2MjksIHYzMCwgdjMxLCB2MzIsIHYzMywKLSAg
ICAgIHYzNCwgdjM1LCB2MzYpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1l
IFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1l
IFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAs
Ci0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUg
VDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVu
YW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0
eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0g
ICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5
LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1l
IFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBl
bmFtZSBUMzc+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTM3PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYs
IFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwgVDE2LCBUMTcs
IFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAot
ICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzc+IFZhbHVlcyhU
MSB2MSwgVDIgdjIsIFQzIHYzLAotICAgIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2
OCwgVDkgdjksIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsCi0gICAgVDEzIHYxMywgVDE0IHYx
NCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwK
LSAgICBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIzLCBUMjQgdjI0LCBUMjUgdjI1LCBUMjYgdjI2
LCBUMjcgdjI3LCBUMjggdjI4LAotICAgIFQyOSB2MjksIFQzMCB2MzAsIFQzMSB2MzEsIFQzMiB2
MzIsIFQzMyB2MzMsIFQzNCB2MzQsIFQzNSB2MzUsIFQzNiB2MzYsCi0gICAgVDM3IHYzNykgewot
ICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXkzNzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBU
NywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcs
IFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LAotICAgICAgVDI2LCBUMjcs
IFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNz4odjEsIHYy
LCB2MywKLSAgICAgIHY0LCB2NSwgdjYsIHY3LCB2OCwgdjksIHYxMCwgdjExLCB2MTIsIHYxMywg
djE0LCB2MTUsIHYxNiwgdjE3LCB2MTgsIHYxOSwKLSAgICAgIHYyMCwgdjIxLCB2MjIsIHYyMywg
djI0LCB2MjUsIHYyNiwgdjI3LCB2MjgsIHYyOSwgdjMwLCB2MzEsIHYzMiwgdjMzLAotICAgICAg
djM0LCB2MzUsIHYzNiwgdjM3KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFt
ZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFt
ZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEw
LAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1l
IFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBl
bmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwg
dHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAot
ICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQy
OSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFt
ZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlw
ZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzg+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTM4PFQxLCBUMiwg
VDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQs
IFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBU
MjYsIFQyNywgVDI4LAotICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2
LCBUMzcsIFQzOD4gVmFsdWVzKFQxIHYxLCBUMiB2MiwKLSAgICBUMyB2MywgVDQgdjQsIFQ1IHY1
LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwK
LSAgICBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LCBUMTggdjE4
LCBUMTkgdjE5LCBUMjAgdjIwLAotICAgIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2
MjQsIFQyNSB2MjUsIFQyNiB2MjYsIFQyNyB2MjcsIFQyOCB2MjgsCi0gICAgVDI5IHYyOSwgVDMw
IHYzMCwgVDMxIHYzMSwgVDMyIHYzMiwgVDMzIHYzMywgVDM0IHYzNCwgVDM1IHYzNSwgVDM2IHYz
NiwKLSAgICBUMzcgdjM3LCBUMzggdjM4KSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJh
eTM4PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAotICAgICAg
VDEyLCBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQy
MywgVDI0LCBUMjUsCi0gICAgICBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQz
MywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzg+KHYxLCB2MiwKLSAgICAgIHYzLCB2NCwgdjUsIHY2
LCB2NywgdjgsIHY5LCB2MTAsIHYxMSwgdjEyLCB2MTMsIHYxNCwgdjE1LCB2MTYsIHYxNywgdjE4
LAotICAgICAgdjE5LCB2MjAsIHYyMSwgdjIyLCB2MjMsIHYyNCwgdjI1LCB2MjYsIHYyNywgdjI4
LCB2MjksIHYzMCwgdjMxLCB2MzIsCi0gICAgICB2MzMsIHYzNCwgdjM1LCB2MzYsIHYzNywgdjM4
KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMs
IHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcs
IHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQx
MSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1
LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1l
IFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBl
bmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwg
dHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAot
ICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQz
NCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFt
ZSBUMzgsIHR5cGVuYW1lIFQzOT4KLWludGVybmFsOjpWYWx1ZUFycmF5Mzk8VDEsIFQyLCBUMywg
VDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAgIFQxNCwgVDE1
LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwg
VDI3LCBUMjgsCi0gICAgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQz
NywgVDM4LCBUMzk+IFZhbHVlcyhUMSB2MSwgVDIgdjIsCi0gICAgVDMgdjMsIFQ0IHY0LCBUNSB2
NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIs
Ci0gICAgVDEzIHYxMywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywgVDE4IHYx
OCwgVDE5IHYxOSwgVDIwIHYyMCwKLSAgICBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIzLCBUMjQg
djI0LCBUMjUgdjI1LCBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LAotICAgIFQyOSB2MjksIFQz
MCB2MzAsIFQzMSB2MzEsIFQzMiB2MzIsIFQzMyB2MzMsIFQzNCB2MzQsIFQzNSB2MzUsIFQzNiB2
MzYsCi0gICAgVDM3IHYzNywgVDM4IHYzOCwgVDM5IHYzOSkgewotICByZXR1cm4gaW50ZXJuYWw6
OlZhbHVlQXJyYXkzOTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQx
MSwKLSAgICAgIFQxMiwgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQy
MSwgVDIyLCBUMjMsIFQyNCwgVDI1LAotICAgICAgVDI2LCBUMjcsIFQyOCwgVDI5LCBUMzAsIFQz
MSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzk+KHYxLAotICAgICAgdjIs
IHYzLCB2NCwgdjUsIHY2LCB2NywgdjgsIHY5LCB2MTAsIHYxMSwgdjEyLCB2MTMsIHYxNCwgdjE1
LCB2MTYsIHYxNywKLSAgICAgIHYxOCwgdjE5LCB2MjAsIHYyMSwgdjIyLCB2MjMsIHYyNCwgdjI1
LCB2MjYsIHYyNywgdjI4LCB2MjksIHYzMCwgdjMxLAotICAgICAgdjMyLCB2MzMsIHYzNCwgdjM1
LCB2MzYsIHYzNywgdjM4LCB2MzkpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVu
YW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVu
YW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBU
MTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5h
bWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5
cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIx
LCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUs
Ci0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUg
VDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVu
YW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0
eXBlbmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDA+Ci1p
bnRlcm5hbDo6VmFsdWVBcnJheTQwPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDks
IFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBU
MjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAgIFQyOSwgVDMw
LCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDA+IFZhbHVl
cyhUMSB2MSwKLSAgICBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBU
OCB2OCwgVDkgdjksIFQxMCB2MTAsIFQxMSB2MTEsCi0gICAgVDEyIHYxMiwgVDEzIHYxMywgVDE0
IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywgVDE4IHYxOCwgVDE5IHYxOSwKLSAgICBU
MjAgdjIwLCBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIzLCBUMjQgdjI0LCBUMjUgdjI1LCBUMjYg
djI2LCBUMjcgdjI3LAotICAgIFQyOCB2MjgsIFQyOSB2MjksIFQzMCB2MzAsIFQzMSB2MzEsIFQz
MiB2MzIsIFQzMyB2MzMsIFQzNCB2MzQsIFQzNSB2MzUsCi0gICAgVDM2IHYzNiwgVDM3IHYzNywg
VDM4IHYzOCwgVDM5IHYzOSwgVDQwIHY0MCkgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJy
YXk0MDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAg
IFQxMiwgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBU
MjMsIFQyNCwgVDI1LAotICAgICAgVDI2LCBUMjcsIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBU
MzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksCi0gICAgICBUNDA+KHYxLCB2MiwgdjMs
IHY0LCB2NSwgdjYsIHY3LCB2OCwgdjksIHYxMCwgdjExLCB2MTIsIHYxMywgdjE0LCB2MTUsCi0g
ICAgICB2MTYsIHYxNywgdjE4LCB2MTksIHYyMCwgdjIxLCB2MjIsIHYyMywgdjI0LCB2MjUsIHYy
NiwgdjI3LCB2MjgsIHYyOSwKLSAgICAgIHYzMCwgdjMxLCB2MzIsIHYzMywgdjM0LCB2MzUsIHYz
NiwgdjM3LCB2MzgsIHYzOSwgdjQwKTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBl
bmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBl
bmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUg
VDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVu
YW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0
eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQy
MSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1
LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1l
IFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBl
bmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwg
dHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAot
ICAgIHR5cGVuYW1lIFQ0MT4KLWludGVybmFsOjpWYWx1ZUFycmF5NDE8VDEsIFQyLCBUMywgVDQs
IFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAgIFQxNCwgVDE1LCBU
MTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3
LCBUMjgsCi0gICAgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywg
VDM4LCBUMzksIFQ0MCwKLSAgICBUNDE+IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2
NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAgIFQxMCB2MTAsIFQxMSB2
MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcs
Ci0gICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYy
MywgVDI0IHYyNCwgVDI1IHYyNSwKLSAgICBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkg
djI5LCBUMzAgdjMwLCBUMzEgdjMxLCBUMzIgdjMyLCBUMzMgdjMzLAotICAgIFQzNCB2MzQsIFQz
NSB2MzUsIFQzNiB2MzYsIFQzNyB2MzcsIFQzOCB2MzgsIFQzOSB2MzksIFQ0MCB2NDAsIFQ0MSB2
NDEpIHsKLSAgcmV0dXJuIGludGVybmFsOjpWYWx1ZUFycmF5NDE8VDEsIFQyLCBUMywgVDQsIFQ1
LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsCi0gICAgICBUMTIsIFQxMywgVDE0LCBUMTUsIFQx
NiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwKLSAgICAgIFQy
NiwgVDI3LCBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcs
IFQzOCwgVDM5LAotICAgICAgVDQwLCBUNDE+KHYxLCB2MiwgdjMsIHY0LCB2NSwgdjYsIHY3LCB2
OCwgdjksIHYxMCwgdjExLCB2MTIsIHYxMywgdjE0LAotICAgICAgdjE1LCB2MTYsIHYxNywgdjE4
LCB2MTksIHYyMCwgdjIxLCB2MjIsIHYyMywgdjI0LCB2MjUsIHYyNiwgdjI3LCB2MjgsCi0gICAg
ICB2MjksIHYzMCwgdjMxLCB2MzIsIHYzMywgdjM0LCB2MzUsIHYzNiwgdjM3LCB2MzgsIHYzOSwg
djQwLCB2NDEpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBl
bmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBl
bmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlw
ZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBl
bmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwg
dHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBU
MjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5h
bWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFt
ZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlw
ZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcs
IHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAsCi0gICAgdHlwZW5hbWUg
VDQxLCB0eXBlbmFtZSBUNDI+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTQyPFQxLCBUMiwgVDMsIFQ0
LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwg
VDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQy
NywgVDI4LAotICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcs
IFQzOCwgVDM5LCBUNDAsIFQ0MSwKLSAgICBUNDI+IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQzIHYz
LCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAgIFQxMCB2MTAs
IFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQx
NyB2MTcsCi0gICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwg
VDIzIHYyMywgVDI0IHYyNCwgVDI1IHYyNSwKLSAgICBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4
LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMxLCBUMzIgdjMyLCBUMzMgdjMzLAotICAgIFQzNCB2
MzQsIFQzNSB2MzUsIFQzNiB2MzYsIFQzNyB2MzcsIFQzOCB2MzgsIFQzOSB2MzksIFQ0MCB2NDAs
IFQ0MSB2NDEsCi0gICAgVDQyIHY0MikgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXk0
MjxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQx
MiwgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMs
IFQyNCwgVDI1LAotICAgICAgVDI2LCBUMjcsIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMs
IFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksCi0gICAgICBUNDAsIFQ0MSwgVDQyPih2MSwg
djIsIHYzLCB2NCwgdjUsIHY2LCB2NywgdjgsIHY5LCB2MTAsIHYxMSwgdjEyLCB2MTMsCi0gICAg
ICB2MTQsIHYxNSwgdjE2LCB2MTcsIHYxOCwgdjE5LCB2MjAsIHYyMSwgdjIyLCB2MjMsIHYyNCwg
djI1LCB2MjYsIHYyNywKLSAgICAgIHYyOCwgdjI5LCB2MzAsIHYzMSwgdjMyLCB2MzMsIHYzNCwg
djM1LCB2MzYsIHYzNywgdjM4LCB2MzksIHY0MCwgdjQxLAotICAgICAgdjQyKTsKLX0KLQotdGVt
cGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0
LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4
LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUg
VDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVu
YW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5h
bWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5
cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3
LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1l
IFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUg
VDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVu
YW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwgdHlwZW5hbWUgVDQyLCB0
eXBlbmFtZSBUNDM+Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTQzPFQxLCBUMiwgVDMsIFQ0LCBUNSwg
VDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwgVDE2LCBU
MTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4
LAotICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwg
VDM5LCBUNDAsIFQ0MSwgVDQyLAotICAgIFQ0Mz4gVmFsdWVzKFQxIHYxLCBUMiB2MiwgVDMgdjMs
IFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgVDEwIHYxMCwg
VDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3
IHYxNywKLSAgICBUMTggdjE4LCBUMTkgdjE5LCBUMjAgdjIwLCBUMjEgdjIxLCBUMjIgdjIyLCBU
MjMgdjIzLCBUMjQgdjI0LCBUMjUgdjI1LAotICAgIFQyNiB2MjYsIFQyNyB2MjcsIFQyOCB2Mjgs
IFQyOSB2MjksIFQzMCB2MzAsIFQzMSB2MzEsIFQzMiB2MzIsIFQzMyB2MzMsCi0gICAgVDM0IHYz
NCwgVDM1IHYzNSwgVDM2IHYzNiwgVDM3IHYzNywgVDM4IHYzOCwgVDM5IHYzOSwgVDQwIHY0MCwg
VDQxIHY0MSwKLSAgICBUNDIgdjQyLCBUNDMgdjQzKSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6VmFs
dWVBcnJheTQzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLAot
ICAgICAgVDEyLCBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBU
MjIsIFQyMywgVDI0LCBUMjUsCi0gICAgICBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwgVDMxLCBU
MzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwKLSAgICAgIFQ0MCwgVDQxLCBU
NDIsIFQ0Mz4odjEsIHYyLCB2MywgdjQsIHY1LCB2NiwgdjcsIHY4LCB2OSwgdjEwLCB2MTEsIHYx
MiwKLSAgICAgIHYxMywgdjE0LCB2MTUsIHYxNiwgdjE3LCB2MTgsIHYxOSwgdjIwLCB2MjEsIHYy
MiwgdjIzLCB2MjQsIHYyNSwgdjI2LAotICAgICAgdjI3LCB2MjgsIHYyOSwgdjMwLCB2MzEsIHYz
MiwgdjMzLCB2MzQsIHYzNSwgdjM2LCB2MzcsIHYzOCwgdjM5LCB2NDAsCi0gICAgICB2NDEsIHY0
MiwgdjQzKTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5h
bWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5h
bWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVu
YW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5h
bWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5
cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIy
LCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1l
IFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUg
VDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVu
YW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0
eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0
MSwgdHlwZW5hbWUgVDQyLCB0eXBlbmFtZSBUNDMsIHR5cGVuYW1lIFQ0ND4KLWludGVybmFsOjpW
YWx1ZUFycmF5NDQ8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEs
IFQxMiwgVDEzLAotICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBU
MjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsCi0gICAgVDI5LCBUMzAsIFQzMSwgVDMy
LCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsIFQ0MywK
LSAgICBUNDQ+IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2
LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAgIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQx
MyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsCi0gICAgVDE4IHYxOCwg
VDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywgVDI0IHYyNCwgVDI1
IHYyNSwKLSAgICBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLCBU
MzEgdjMxLCBUMzIgdjMyLCBUMzMgdjMzLAotICAgIFQzNCB2MzQsIFQzNSB2MzUsIFQzNiB2MzYs
IFQzNyB2MzcsIFQzOCB2MzgsIFQzOSB2MzksIFQ0MCB2NDAsIFQ0MSB2NDEsCi0gICAgVDQyIHY0
MiwgVDQzIHY0MywgVDQ0IHY0NCkgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXk0NDxU
MSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwg
VDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQy
NCwgVDI1LAotICAgICAgVDI2LCBUMjcsIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQz
NCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksCi0gICAgICBUNDAsIFQ0MSwgVDQyLCBUNDMsIFQ0
ND4odjEsIHYyLCB2MywgdjQsIHY1LCB2NiwgdjcsIHY4LCB2OSwgdjEwLCB2MTEsCi0gICAgICB2
MTIsIHYxMywgdjE0LCB2MTUsIHYxNiwgdjE3LCB2MTgsIHYxOSwgdjIwLCB2MjEsIHYyMiwgdjIz
LCB2MjQsIHYyNSwKLSAgICAgIHYyNiwgdjI3LCB2MjgsIHYyOSwgdjMwLCB2MzEsIHYzMiwgdjMz
LCB2MzQsIHYzNSwgdjM2LCB2MzcsIHYzOCwgdjM5LAotICAgICAgdjQwLCB2NDEsIHY0MiwgdjQz
LCB2NDQpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFt
ZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFt
ZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5h
bWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFt
ZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlw
ZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIs
IHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUg
VDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBU
MzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5h
bWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5
cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAsCi0gICAgdHlwZW5hbWUgVDQx
LCB0eXBlbmFtZSBUNDIsIHR5cGVuYW1lIFQ0MywgdHlwZW5hbWUgVDQ0LCB0eXBlbmFtZSBUNDU+
Ci1pbnRlcm5hbDo6VmFsdWVBcnJheTQ1PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwg
VDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5
LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAgIFQyOSwg
VDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0
MSwgVDQyLCBUNDMsCi0gICAgVDQ0LCBUNDU+IFZhbHVlcyhUMSB2MSwgVDIgdjIsIFQzIHYzLCBU
NCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsCi0gICAgVDkgdjksIFQxMCB2MTAsIFQx
MSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsCi0gICAg
VDE3IHYxNywgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIz
IHYyMywgVDI0IHYyNCwKLSAgICBUMjUgdjI1LCBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBU
MjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMxLCBUMzIgdjMyLAotICAgIFQzMyB2MzMsIFQzNCB2MzQs
IFQzNSB2MzUsIFQzNiB2MzYsIFQzNyB2MzcsIFQzOCB2MzgsIFQzOSB2MzksIFQ0MCB2NDAsCi0g
ICAgVDQxIHY0MSwgVDQyIHY0MiwgVDQzIHY0MywgVDQ0IHY0NCwgVDQ1IHY0NSkgewotICByZXR1
cm4gaW50ZXJuYWw6OlZhbHVlQXJyYXk0NTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgs
IFQ5LCBUMTAsIFQxMSwKLSAgICAgIFQxMiwgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwg
VDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LAotICAgICAgVDI2LCBUMjcsIFQyOCwg
VDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksCi0g
ICAgICBUNDAsIFQ0MSwgVDQyLCBUNDMsIFQ0NCwgVDQ1Pih2MSwgdjIsIHYzLCB2NCwgdjUsIHY2
LCB2NywgdjgsIHY5LCB2MTAsCi0gICAgICB2MTEsIHYxMiwgdjEzLCB2MTQsIHYxNSwgdjE2LCB2
MTcsIHYxOCwgdjE5LCB2MjAsIHYyMSwgdjIyLCB2MjMsIHYyNCwKLSAgICAgIHYyNSwgdjI2LCB2
MjcsIHYyOCwgdjI5LCB2MzAsIHYzMSwgdjMyLCB2MzMsIHYzNCwgdjM1LCB2MzYsIHYzNywgdjM4
LAotICAgICAgdjM5LCB2NDAsIHY0MSwgdjQyLCB2NDMsIHY0NCwgdjQ1KTsKLX0KLQotdGVtcGxh
dGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0
eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0
eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEy
LCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1l
IFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUg
VDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVu
YW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0
eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQz
MSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1
LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1l
IFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwgdHlwZW5hbWUgVDQyLCB0eXBl
bmFtZSBUNDMsIHR5cGVuYW1lIFQ0NCwgdHlwZW5hbWUgVDQ1LAotICAgIHR5cGVuYW1lIFQ0Nj4K
LWludGVybmFsOjpWYWx1ZUFycmF5NDY8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBU
OSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTks
IFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsCi0gICAgVDI5LCBU
MzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQx
LCBUNDIsIFQ0MywKLSAgICBUNDQsIFQ0NSwgVDQ2PiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2
MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsCi0gICAgVDggdjgsIFQ5IHY5LCBUMTAgdjEw
LCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LAotICAgIFQxNiB2
MTYsIFQxNyB2MTcsIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIs
IFQyMyB2MjMsCi0gICAgVDI0IHYyNCwgVDI1IHYyNSwgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYy
OCwgVDI5IHYyOSwgVDMwIHYzMCwgVDMxIHYzMSwKLSAgICBUMzIgdjMyLCBUMzMgdjMzLCBUMzQg
djM0LCBUMzUgdjM1LCBUMzYgdjM2LCBUMzcgdjM3LCBUMzggdjM4LCBUMzkgdjM5LAotICAgIFQ0
MCB2NDAsIFQ0MSB2NDEsIFQ0MiB2NDIsIFQ0MyB2NDMsIFQ0NCB2NDQsIFQ0NSB2NDUsIFQ0NiB2
NDYpIHsKLSAgcmV0dXJuIGludGVybmFsOjpWYWx1ZUFycmF5NDY8VDEsIFQyLCBUMywgVDQsIFQ1
LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsCi0gICAgICBUMTIsIFQxMywgVDE0LCBUMTUsIFQx
NiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwKLSAgICAgIFQy
NiwgVDI3LCBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcs
IFQzOCwgVDM5LAotICAgICAgVDQwLCBUNDEsIFQ0MiwgVDQzLCBUNDQsIFQ0NSwgVDQ2Pih2MSwg
djIsIHYzLCB2NCwgdjUsIHY2LCB2NywgdjgsIHY5LAotICAgICAgdjEwLCB2MTEsIHYxMiwgdjEz
LCB2MTQsIHYxNSwgdjE2LCB2MTcsIHYxOCwgdjE5LCB2MjAsIHYyMSwgdjIyLCB2MjMsCi0gICAg
ICB2MjQsIHYyNSwgdjI2LCB2MjcsIHYyOCwgdjI5LCB2MzAsIHYzMSwgdjMyLCB2MzMsIHYzNCwg
djM1LCB2MzYsIHYzNywKLSAgICAgIHYzOCwgdjM5LCB2NDAsIHY0MSwgdjQyLCB2NDMsIHY0NCwg
djQ1LCB2NDYpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBl
bmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBl
bmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlw
ZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBl
bmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwg
dHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBU
MjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5h
bWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFt
ZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlw
ZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcs
IHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAsCi0gICAgdHlwZW5hbWUg
VDQxLCB0eXBlbmFtZSBUNDIsIHR5cGVuYW1lIFQ0MywgdHlwZW5hbWUgVDQ0LCB0eXBlbmFtZSBU
NDUsCi0gICAgdHlwZW5hbWUgVDQ2LCB0eXBlbmFtZSBUNDc+Ci1pbnRlcm5hbDo6VmFsdWVBcnJh
eTQ3PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQx
MywKLSAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMs
IFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBU
MzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwgVDQyLCBUNDMsCi0gICAgVDQ0
LCBUNDUsIFQ0NiwgVDQ3PiBWYWx1ZXMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1
LCBUNiB2NiwgVDcgdjcsCi0gICAgVDggdjgsIFQ5IHY5LCBUMTAgdjEwLCBUMTEgdjExLCBUMTIg
djEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LAotICAgIFQxNiB2MTYsIFQxNyB2MTcsIFQx
OCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsCi0gICAg
VDI0IHYyNCwgVDI1IHYyNSwgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwgVDI5IHYyOSwgVDMw
IHYzMCwgVDMxIHYzMSwKLSAgICBUMzIgdjMyLCBUMzMgdjMzLCBUMzQgdjM0LCBUMzUgdjM1LCBU
MzYgdjM2LCBUMzcgdjM3LCBUMzggdjM4LCBUMzkgdjM5LAotICAgIFQ0MCB2NDAsIFQ0MSB2NDEs
IFQ0MiB2NDIsIFQ0MyB2NDMsIFQ0NCB2NDQsIFQ0NSB2NDUsIFQ0NiB2NDYsIFQ0NyB2NDcpIHsK
LSAgcmV0dXJuIGludGVybmFsOjpWYWx1ZUFycmF5NDc8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwg
VDcsIFQ4LCBUOSwgVDEwLCBUMTEsCi0gICAgICBUMTIsIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3
LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwKLSAgICAgIFQyNiwgVDI3
LCBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwg
VDM5LAotICAgICAgVDQwLCBUNDEsIFQ0MiwgVDQzLCBUNDQsIFQ0NSwgVDQ2LCBUNDc+KHYxLCB2
MiwgdjMsIHY0LCB2NSwgdjYsIHY3LCB2OCwKLSAgICAgIHY5LCB2MTAsIHYxMSwgdjEyLCB2MTMs
IHYxNCwgdjE1LCB2MTYsIHYxNywgdjE4LCB2MTksIHYyMCwgdjIxLCB2MjIsIHYyMywKLSAgICAg
IHYyNCwgdjI1LCB2MjYsIHYyNywgdjI4LCB2MjksIHYzMCwgdjMxLCB2MzIsIHYzMywgdjM0LCB2
MzUsIHYzNiwgdjM3LAotICAgICAgdjM4LCB2MzksIHY0MCwgdjQxLCB2NDIsIHY0MywgdjQ0LCB2
NDUsIHY0NiwgdjQ3KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwg
dHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwg
dHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAg
IHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwg
dHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBU
MTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5h
bWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5
cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlw
ZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMs
IHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUg
VDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVu
YW1lIFQ0MSwgdHlwZW5hbWUgVDQyLCB0eXBlbmFtZSBUNDMsIHR5cGVuYW1lIFQ0NCwgdHlwZW5h
bWUgVDQ1LAotICAgIHR5cGVuYW1lIFQ0NiwgdHlwZW5hbWUgVDQ3LCB0eXBlbmFtZSBUNDg+Ci1p
bnRlcm5hbDo6VmFsdWVBcnJheTQ4PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDks
IFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBU
MjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAgIFQyOSwgVDMw
LCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwg
VDQyLCBUNDMsCi0gICAgVDQ0LCBUNDUsIFQ0NiwgVDQ3LCBUNDg+IFZhbHVlcyhUMSB2MSwgVDIg
djIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LAotICAgIFQ3IHY3LCBUOCB2OCwgVDkgdjks
IFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsCi0g
ICAgVDE2IHYxNiwgVDE3IHYxNywgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwg
VDIyIHYyMiwgVDIzIHYyMywKLSAgICBUMjQgdjI0LCBUMjUgdjI1LCBUMjYgdjI2LCBUMjcgdjI3
LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMxLAotICAgIFQzMiB2MzIsIFQzMyB2
MzMsIFQzNCB2MzQsIFQzNSB2MzUsIFQzNiB2MzYsIFQzNyB2MzcsIFQzOCB2MzgsIFQzOSB2Mzks
Ci0gICAgVDQwIHY0MCwgVDQxIHY0MSwgVDQyIHY0MiwgVDQzIHY0MywgVDQ0IHY0NCwgVDQ1IHY0
NSwgVDQ2IHY0NiwgVDQ3IHY0NywKLSAgICBUNDggdjQ4KSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6
VmFsdWVBcnJheTQ4PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDEx
LAotICAgICAgVDEyLCBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIx
LCBUMjIsIFQyMywgVDI0LCBUMjUsCi0gICAgICBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwgVDMx
LCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwKLSAgICAgIFQ0MCwgVDQx
LCBUNDIsIFQ0MywgVDQ0LCBUNDUsIFQ0NiwgVDQ3LCBUNDg+KHYxLCB2MiwgdjMsIHY0LCB2NSwg
djYsIHY3LAotICAgICAgdjgsIHY5LCB2MTAsIHYxMSwgdjEyLCB2MTMsIHYxNCwgdjE1LCB2MTYs
IHYxNywgdjE4LCB2MTksIHYyMCwgdjIxLCB2MjIsCi0gICAgICB2MjMsIHYyNCwgdjI1LCB2MjYs
IHYyNywgdjI4LCB2MjksIHYzMCwgdjMxLCB2MzIsIHYzMywgdjM0LCB2MzUsIHYzNiwKLSAgICAg
IHYzNywgdjM4LCB2MzksIHY0MCwgdjQxLCB2NDIsIHY0MywgdjQ0LCB2NDUsIHY0NiwgdjQ3LCB2
NDgpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBU
MywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBU
NywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUg
VDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBU
MTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5h
bWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5
cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2
LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAs
Ci0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUg
VDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVu
YW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAsCi0gICAgdHlwZW5hbWUgVDQxLCB0
eXBlbmFtZSBUNDIsIHR5cGVuYW1lIFQ0MywgdHlwZW5hbWUgVDQ0LCB0eXBlbmFtZSBUNDUsCi0g
ICAgdHlwZW5hbWUgVDQ2LCB0eXBlbmFtZSBUNDcsIHR5cGVuYW1lIFQ0OCwgdHlwZW5hbWUgVDQ5
PgotaW50ZXJuYWw6OlZhbHVlQXJyYXk0OTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgs
IFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQx
OSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICBUMjks
IFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBU
NDEsIFQ0MiwgVDQzLAotICAgIFQ0NCwgVDQ1LCBUNDYsIFQ0NywgVDQ4LCBUNDk+IFZhbHVlcyhU
MSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsCi0gICAgVDYgdjYsIFQ3IHY3LCBUOCB2
OCwgVDkgdjksIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsCi0g
ICAgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwg
VDIxIHYyMSwgVDIyIHYyMiwKLSAgICBUMjMgdjIzLCBUMjQgdjI0LCBUMjUgdjI1LCBUMjYgdjI2
LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLAotICAgIFQzMSB2MzEsIFQzMiB2
MzIsIFQzMyB2MzMsIFQzNCB2MzQsIFQzNSB2MzUsIFQzNiB2MzYsIFQzNyB2MzcsIFQzOCB2Mzgs
Ci0gICAgVDM5IHYzOSwgVDQwIHY0MCwgVDQxIHY0MSwgVDQyIHY0MiwgVDQzIHY0MywgVDQ0IHY0
NCwgVDQ1IHY0NSwgVDQ2IHY0NiwKLSAgICBUNDcgdjQ3LCBUNDggdjQ4LCBUNDkgdjQ5KSB7Ci0g
IHJldHVybiBpbnRlcm5hbDo6VmFsdWVBcnJheTQ5PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3
LCBUOCwgVDksIFQxMCwgVDExLAotICAgICAgVDEyLCBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywg
VDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsCi0gICAgICBUMjYsIFQyNywg
VDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQz
OSwKLSAgICAgIFQ0MCwgVDQxLCBUNDIsIFQ0MywgVDQ0LCBUNDUsIFQ0NiwgVDQ3LCBUNDgsIFQ0
OT4odjEsIHYyLCB2MywgdjQsIHY1LCB2NiwKLSAgICAgIHY3LCB2OCwgdjksIHYxMCwgdjExLCB2
MTIsIHYxMywgdjE0LCB2MTUsIHYxNiwgdjE3LCB2MTgsIHYxOSwgdjIwLCB2MjEsCi0gICAgICB2
MjIsIHYyMywgdjI0LCB2MjUsIHYyNiwgdjI3LCB2MjgsIHYyOSwgdjMwLCB2MzEsIHYzMiwgdjMz
LCB2MzQsIHYzNSwKLSAgICAgIHYzNiwgdjM3LCB2MzgsIHYzOSwgdjQwLCB2NDEsIHY0MiwgdjQz
LCB2NDQsIHY0NSwgdjQ2LCB2NDcsIHY0OCwgdjQ5KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1l
IFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwK
LSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwg
dHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBU
MTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5h
bWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5
cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlw
ZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgs
IHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUg
VDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVu
YW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5h
bWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwgdHlwZW5hbWUgVDQyLCB0eXBlbmFtZSBUNDMsIHR5
cGVuYW1lIFQ0NCwgdHlwZW5hbWUgVDQ1LAotICAgIHR5cGVuYW1lIFQ0NiwgdHlwZW5hbWUgVDQ3
LCB0eXBlbmFtZSBUNDgsIHR5cGVuYW1lIFQ0OSwgdHlwZW5hbWUgVDUwPgotaW50ZXJuYWw6OlZh
bHVlQXJyYXk1MDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwg
VDEyLCBUMTMsCi0gICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQy
MiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICBUMjksIFQzMCwgVDMxLCBUMzIs
IFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEsIFQ0MiwgVDQzLAot
ICAgIFQ0NCwgVDQ1LCBUNDYsIFQ0NywgVDQ4LCBUNDksIFQ1MD4gVmFsdWVzKFQxIHYxLCBUMiB2
MiwgVDMgdjMsIFQ0IHY0LAotICAgIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwg
VDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywKLSAgICBUMTQgdjE0LCBUMTUgdjE1
LCBUMTYgdjE2LCBUMTcgdjE3LCBUMTggdjE4LCBUMTkgdjE5LCBUMjAgdjIwLCBUMjEgdjIxLAot
ICAgIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQyNSB2MjUsIFQyNiB2MjYsIFQyNyB2Mjcs
IFQyOCB2MjgsIFQyOSB2MjksCi0gICAgVDMwIHYzMCwgVDMxIHYzMSwgVDMyIHYzMiwgVDMzIHYz
MywgVDM0IHYzNCwgVDM1IHYzNSwgVDM2IHYzNiwgVDM3IHYzNywKLSAgICBUMzggdjM4LCBUMzkg
djM5LCBUNDAgdjQwLCBUNDEgdjQxLCBUNDIgdjQyLCBUNDMgdjQzLCBUNDQgdjQ0LCBUNDUgdjQ1
LAotICAgIFQ0NiB2NDYsIFQ0NyB2NDcsIFQ0OCB2NDgsIFQ0OSB2NDksIFQ1MCB2NTApIHsKLSAg
cmV0dXJuIGludGVybmFsOjpWYWx1ZUFycmF5NTA8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcs
IFQ4LCBUOSwgVDEwLCBUMTEsCi0gICAgICBUMTIsIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBU
MTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwKLSAgICAgIFQyNiwgVDI3LCBU
MjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5
LAotICAgICAgVDQwLCBUNDEsIFQ0MiwgVDQzLCBUNDQsIFQ0NSwgVDQ2LCBUNDcsIFQ0OCwgVDQ5
LCBUNTA+KHYxLCB2MiwgdjMsIHY0LAotICAgICAgdjUsIHY2LCB2NywgdjgsIHY5LCB2MTAsIHYx
MSwgdjEyLCB2MTMsIHYxNCwgdjE1LCB2MTYsIHYxNywgdjE4LCB2MTksCi0gICAgICB2MjAsIHYy
MSwgdjIyLCB2MjMsIHYyNCwgdjI1LCB2MjYsIHYyNywgdjI4LCB2MjksIHYzMCwgdjMxLCB2MzIs
IHYzMywKLSAgICAgIHYzNCwgdjM1LCB2MzYsIHYzNywgdjM4LCB2MzksIHY0MCwgdjQxLCB2NDIs
IHY0MywgdjQ0LCB2NDUsIHY0NiwgdjQ3LAotICAgICAgdjQ4LCB2NDksIHY1MCk7Cit0ZW1wbGF0
ZSA8dHlwZW5hbWUuLi4gVD4KK2ludGVybmFsOjpWYWx1ZUFycmF5PFQuLi4+IFZhbHVlcyhULi4u
IHYpIHsKKyAgcmV0dXJuIGludGVybmFsOjpWYWx1ZUFycmF5PFQuLi4+KHN0ZDo6bW92ZSh2KS4u
Lik7CiB9CiAKIC8vIEJvb2woKSBhbGxvd3MgZ2VuZXJhdGluZyB0ZXN0cyB3aXRoIHBhcmFtZXRl
cnMgaW4gYSBzZXQgb2YgKGZhbHNlLCB0cnVlKS4KQEAgLTEyMDEsNyArMzQ2LDcgQEAgaW50ZXJu
YWw6OlZhbHVlQXJyYXk1MDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAs
IFQxMSwgVDEyLCBUMTMsCiAvLyBvZiBtdWx0aXBsZSBmbGFncyBjYW4gYmUgdGVzdGVkIHdoZW4g
c2V2ZXJhbCBCb29sKCkncyBhcmUgY29tYmluZWQgdXNpbmcKIC8vIENvbWJpbmUoKSBmdW5jdGlv
bi4KIC8vCi0vLyBJbiB0aGUgZm9sbG93aW5nIGV4YW1wbGUgYWxsIHRlc3RzIGluIHRoZSB0ZXN0
IGNhc2UgRmxhZ0RlcGVuZGVudFRlc3QKKy8vIEluIHRoZSBmb2xsb3dpbmcgZXhhbXBsZSBhbGwg
dGVzdHMgaW4gdGhlIHRlc3Qgc3VpdGUgRmxhZ0RlcGVuZGVudFRlc3QKIC8vIHdpbGwgYmUgaW5z
dGFudGlhdGVkIHR3aWNlIHdpdGggcGFyYW1ldGVycyBmYWxzZSBhbmQgdHJ1ZS4KIC8vCiAvLyBj
bGFzcyBGbGFnRGVwZW5kZW50VGVzdCA6IHB1YmxpYyB0ZXN0aW5nOjpUZXN0V2l0aFBhcmFtPGJv
b2w+IHsKQEAgLTEyMDksMTMgKzM1NCwxMiBAQCBpbnRlcm5hbDo6VmFsdWVBcnJheTUwPFQxLCBU
MiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKIC8vICAg
ICBleHRlcm5hbF9mbGFnID0gR2V0UGFyYW0oKTsKIC8vICAgfQogLy8gfQotLy8gSU5TVEFOVElB
VEVfVEVTVF9DQVNFX1AoQm9vbFNlcXVlbmNlLCBGbGFnRGVwZW5kZW50VGVzdCwgQm9vbCgpKTsK
Ky8vIElOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChCb29sU2VxdWVuY2UsIEZsYWdEZXBlbmRlbnRU
ZXN0LCBCb29sKCkpOwogLy8KIGlubGluZSBpbnRlcm5hbDo6UGFyYW1HZW5lcmF0b3I8Ym9vbD4g
Qm9vbCgpIHsKICAgcmV0dXJuIFZhbHVlcyhmYWxzZSwgdHJ1ZSk7CiB9CiAKLSMgaWYgR1RFU1Rf
SEFTX0NPTUJJTkUKIC8vIENvbWJpbmUoKSBhbGxvd3MgdGhlIHVzZXIgdG8gY29tYmluZSB0d28g
b3IgbW9yZSBzZXF1ZW5jZXMgdG8gcHJvZHVjZQogLy8gdmFsdWVzIG9mIGEgQ2FydGVzaWFuIHBy
b2R1Y3Qgb2YgdGhvc2Ugc2VxdWVuY2VzJyBlbGVtZW50cy4KIC8vCkBAIC0xMjI0LDE4NCArMzY4
LDgzIEBAIGlubGluZSBpbnRlcm5hbDo6UGFyYW1HZW5lcmF0b3I8Ym9vbD4gQm9vbCgpIHsKIC8v
ICAgLSByZXR1cm5zIGEgZ2VuZXJhdG9yIHByb2R1Y2luZyBzZXF1ZW5jZXMgd2l0aCBlbGVtZW50
cyBjb21pbmcgZnJvbQogLy8gICAgIHRoZSBDYXJ0ZXNpYW4gcHJvZHVjdCBvZiBlbGVtZW50cyBm
cm9tIHRoZSBzZXF1ZW5jZXMgZ2VuZXJhdGVkIGJ5CiAvLyAgICAgZ2VuMSwgZ2VuMiwgLi4uLCBn
ZW5OLiBUaGUgc2VxdWVuY2UgZWxlbWVudHMgd2lsbCBoYXZlIGEgdHlwZSBvZgotLy8gICAgIHR1
cGxlPFQxLCBUMiwgLi4uLCBUTj4gd2hlcmUgVDEsIFQyLCAuLi4sIFROIGFyZSB0aGUgdHlwZXMK
Ky8vICAgICBzdGQ6OnR1cGxlPFQxLCBUMiwgLi4uLCBUTj4gd2hlcmUgVDEsIFQyLCAuLi4sIFRO
IGFyZSB0aGUgdHlwZXMKIC8vICAgICBvZiBlbGVtZW50cyBmcm9tIHNlcXVlbmNlcyBwcm9kdWNl
cyBieSBnZW4xLCBnZW4yLCAuLi4sIGdlbk4uCiAvLwotLy8gQ29tYmluZSBjYW4gaGF2ZSB1cCB0
byAxMCBhcmd1bWVudHMuIFRoaXMgbnVtYmVyIGlzIGN1cnJlbnRseSBsaW1pdGVkCi0vLyBieSB0
aGUgbWF4aW11bSBudW1iZXIgb2YgZWxlbWVudHMgaW4gdGhlIHR1cGxlIGltcGxlbWVudGF0aW9u
IHVzZWQgYnkgR29vZ2xlCi0vLyBUZXN0LgorLy8gQ29tYmluZSBjYW4gaGF2ZSB1cCB0byAxMCBh
cmd1bWVudHMuCiAvLwogLy8gRXhhbXBsZToKIC8vCi0vLyBUaGlzIHdpbGwgaW5zdGFudGlhdGUg
dGVzdHMgaW4gdGVzdCBjYXNlIEFuaW1hbFRlc3QgZWFjaCBvbmUgd2l0aAorLy8gVGhpcyB3aWxs
IGluc3RhbnRpYXRlIHRlc3RzIGluIHRlc3Qgc3VpdGUgQW5pbWFsVGVzdCBlYWNoIG9uZSB3aXRo
CiAvLyB0aGUgcGFyYW1ldGVyIHZhbHVlcyB0dXBsZSgiY2F0IiwgQkxBQ0spLCB0dXBsZSgiY2F0
IiwgV0hJVEUpLAogLy8gdHVwbGUoImRvZyIsIEJMQUNLKSwgYW5kIHR1cGxlKCJkb2ciLCBXSElU
RSk6CiAvLwogLy8gZW51bSBDb2xvciB7IEJMQUNLLCBHUkFZLCBXSElURSB9OwogLy8gY2xhc3Mg
QW5pbWFsVGVzdAotLy8gICAgIDogcHVibGljIHRlc3Rpbmc6OlRlc3RXaXRoUGFyYW08dHVwbGU8
Y29uc3QgY2hhciosIENvbG9yPiA+IHsuLi59OworLy8gICAgIDogcHVibGljIHRlc3Rpbmc6OlRl
c3RXaXRoUGFyYW08c3RkOjp0dXBsZTxjb25zdCBjaGFyKiwgQ29sb3I+ID4gey4uLn07CiAvLwog
Ly8gVEVTVF9QKEFuaW1hbFRlc3QsIEFuaW1hbExvb2tzTmljZSkgey4uLn0KIC8vCi0vLyBJTlNU
QU5USUFURV9URVNUX0NBU0VfUChBbmltYWxWYXJpYXRpb25zLCBBbmltYWxUZXN0LAotLy8gICAg
ICAgICAgICAgICAgICAgICAgICAgQ29tYmluZShWYWx1ZXMoImNhdCIsICJkb2ciKSwKLS8vICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmFsdWVzKEJMQUNLLCBXSElURSkpKTsKKy8v
IElOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUChBbmltYWxWYXJpYXRpb25zLCBBbmltYWxUZXN0LAor
Ly8gICAgICAgICAgICAgICAgICAgICAgICAgIENvbWJpbmUoVmFsdWVzKCJjYXQiLCAiZG9nIiks
CisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWYWx1ZXMoQkxBQ0ssIFdISVRF
KSkpOwogLy8KIC8vIFRoaXMgd2lsbCBpbnN0YW50aWF0ZSB0ZXN0cyBpbiBGbGFnRGVwZW5kZW50
VGVzdCB3aXRoIGFsbCB2YXJpYXRpb25zIG9mIHR3bwogLy8gQm9vbGVhbiBmbGFnczoKIC8vCiAv
LyBjbGFzcyBGbGFnRGVwZW5kZW50VGVzdAotLy8gICAgIDogcHVibGljIHRlc3Rpbmc6OlRlc3RX
aXRoUGFyYW08dHVwbGU8Ym9vbCwgYm9vbD4gPiB7CisvLyAgICAgOiBwdWJsaWMgdGVzdGluZzo6
VGVzdFdpdGhQYXJhbTxzdGQ6OnR1cGxlPGJvb2wsIGJvb2w+ID4gewogLy8gICB2aXJ0dWFsIHZv
aWQgU2V0VXAoKSB7CiAvLyAgICAgLy8gQXNzaWducyBleHRlcm5hbF9mbGFnXzEgYW5kIGV4dGVy
bmFsX2ZsYWdfMiB2YWx1ZXMgZnJvbSB0aGUgdHVwbGUuCi0vLyAgICAgdGllKGV4dGVybmFsX2Zs
YWdfMSwgZXh0ZXJuYWxfZmxhZ18yKSA9IEdldFBhcmFtKCk7CisvLyAgICAgc3RkOjp0aWUoZXh0
ZXJuYWxfZmxhZ18xLCBleHRlcm5hbF9mbGFnXzIpID0gR2V0UGFyYW0oKTsKIC8vICAgfQogLy8g
fTsKIC8vCiAvLyBURVNUX1AoRmxhZ0RlcGVuZGVudFRlc3QsIFRlc3RGZWF0dXJlMSkgewogLy8g
ICAvLyBUZXN0IHlvdXIgY29kZSB1c2luZyBleHRlcm5hbF9mbGFnXzEgYW5kIGV4dGVybmFsX2Zs
YWdfMiBoZXJlLgogLy8gfQotLy8gSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoVHdvQm9vbFNlcXVl
bmNlLCBGbGFnRGVwZW5kZW50VGVzdCwKLS8vICAgICAgICAgICAgICAgICAgICAgICAgIENvbWJp
bmUoQm9vbCgpLCBCb29sKCkpKTsKLS8vCi10ZW1wbGF0ZSA8dHlwZW5hbWUgR2VuZXJhdG9yMSwg
dHlwZW5hbWUgR2VuZXJhdG9yMj4KLWludGVybmFsOjpDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyMjxH
ZW5lcmF0b3IxLCBHZW5lcmF0b3IyPiBDb21iaW5lKAotICAgIGNvbnN0IEdlbmVyYXRvcjEmIGcx
LCBjb25zdCBHZW5lcmF0b3IyJiBnMikgewotICByZXR1cm4gaW50ZXJuYWw6OkNhcnRlc2lhblBy
b2R1Y3RIb2xkZXIyPEdlbmVyYXRvcjEsIEdlbmVyYXRvcjI+KAotICAgICAgZzEsIGcyKTsKLX0K
LQotdGVtcGxhdGUgPHR5cGVuYW1lIEdlbmVyYXRvcjEsIHR5cGVuYW1lIEdlbmVyYXRvcjIsIHR5
cGVuYW1lIEdlbmVyYXRvcjM+Ci1pbnRlcm5hbDo6Q2FydGVzaWFuUHJvZHVjdEhvbGRlcjM8R2Vu
ZXJhdG9yMSwgR2VuZXJhdG9yMiwgR2VuZXJhdG9yMz4gQ29tYmluZSgKLSAgICBjb25zdCBHZW5l
cmF0b3IxJiBnMSwgY29uc3QgR2VuZXJhdG9yMiYgZzIsIGNvbnN0IEdlbmVyYXRvcjMmIGczKSB7
Ci0gIHJldHVybiBpbnRlcm5hbDo6Q2FydGVzaWFuUHJvZHVjdEhvbGRlcjM8R2VuZXJhdG9yMSwg
R2VuZXJhdG9yMiwgR2VuZXJhdG9yMz4oCi0gICAgICBnMSwgZzIsIGczKTsKLX0KLQotdGVtcGxh
dGUgPHR5cGVuYW1lIEdlbmVyYXRvcjEsIHR5cGVuYW1lIEdlbmVyYXRvcjIsIHR5cGVuYW1lIEdl
bmVyYXRvcjMsCi0gICAgdHlwZW5hbWUgR2VuZXJhdG9yND4KLWludGVybmFsOjpDYXJ0ZXNpYW5Q
cm9kdWN0SG9sZGVyNDxHZW5lcmF0b3IxLCBHZW5lcmF0b3IyLCBHZW5lcmF0b3IzLAotICAgIEdl
bmVyYXRvcjQ+IENvbWJpbmUoCi0gICAgY29uc3QgR2VuZXJhdG9yMSYgZzEsIGNvbnN0IEdlbmVy
YXRvcjImIGcyLCBjb25zdCBHZW5lcmF0b3IzJiBnMywKLSAgICAgICAgY29uc3QgR2VuZXJhdG9y
NCYgZzQpIHsKLSAgcmV0dXJuIGludGVybmFsOjpDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyNDxHZW5l
cmF0b3IxLCBHZW5lcmF0b3IyLCBHZW5lcmF0b3IzLAotICAgICAgR2VuZXJhdG9yND4oCi0gICAg
ICBnMSwgZzIsIGczLCBnNCk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBHZW5lcmF0b3IxLCB0
eXBlbmFtZSBHZW5lcmF0b3IyLCB0eXBlbmFtZSBHZW5lcmF0b3IzLAotICAgIHR5cGVuYW1lIEdl
bmVyYXRvcjQsIHR5cGVuYW1lIEdlbmVyYXRvcjU+Ci1pbnRlcm5hbDo6Q2FydGVzaWFuUHJvZHVj
dEhvbGRlcjU8R2VuZXJhdG9yMSwgR2VuZXJhdG9yMiwgR2VuZXJhdG9yMywKLSAgICBHZW5lcmF0
b3I0LCBHZW5lcmF0b3I1PiBDb21iaW5lKAotICAgIGNvbnN0IEdlbmVyYXRvcjEmIGcxLCBjb25z
dCBHZW5lcmF0b3IyJiBnMiwgY29uc3QgR2VuZXJhdG9yMyYgZzMsCi0gICAgICAgIGNvbnN0IEdl
bmVyYXRvcjQmIGc0LCBjb25zdCBHZW5lcmF0b3I1JiBnNSkgewotICByZXR1cm4gaW50ZXJuYWw6
OkNhcnRlc2lhblByb2R1Y3RIb2xkZXI1PEdlbmVyYXRvcjEsIEdlbmVyYXRvcjIsIEdlbmVyYXRv
cjMsCi0gICAgICBHZW5lcmF0b3I0LCBHZW5lcmF0b3I1PigKLSAgICAgIGcxLCBnMiwgZzMsIGc0
LCBnNSk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBHZW5lcmF0b3IxLCB0eXBlbmFtZSBHZW5l
cmF0b3IyLCB0eXBlbmFtZSBHZW5lcmF0b3IzLAotICAgIHR5cGVuYW1lIEdlbmVyYXRvcjQsIHR5
cGVuYW1lIEdlbmVyYXRvcjUsIHR5cGVuYW1lIEdlbmVyYXRvcjY+Ci1pbnRlcm5hbDo6Q2FydGVz
aWFuUHJvZHVjdEhvbGRlcjY8R2VuZXJhdG9yMSwgR2VuZXJhdG9yMiwgR2VuZXJhdG9yMywKLSAg
ICBHZW5lcmF0b3I0LCBHZW5lcmF0b3I1LCBHZW5lcmF0b3I2PiBDb21iaW5lKAotICAgIGNvbnN0
IEdlbmVyYXRvcjEmIGcxLCBjb25zdCBHZW5lcmF0b3IyJiBnMiwgY29uc3QgR2VuZXJhdG9yMyYg
ZzMsCi0gICAgICAgIGNvbnN0IEdlbmVyYXRvcjQmIGc0LCBjb25zdCBHZW5lcmF0b3I1JiBnNSwg
Y29uc3QgR2VuZXJhdG9yNiYgZzYpIHsKLSAgcmV0dXJuIGludGVybmFsOjpDYXJ0ZXNpYW5Qcm9k
dWN0SG9sZGVyNjxHZW5lcmF0b3IxLCBHZW5lcmF0b3IyLCBHZW5lcmF0b3IzLAotICAgICAgR2Vu
ZXJhdG9yNCwgR2VuZXJhdG9yNSwgR2VuZXJhdG9yNj4oCi0gICAgICBnMSwgZzIsIGczLCBnNCwg
ZzUsIGc2KTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIEdlbmVyYXRvcjEsIHR5cGVuYW1lIEdl
bmVyYXRvcjIsIHR5cGVuYW1lIEdlbmVyYXRvcjMsCi0gICAgdHlwZW5hbWUgR2VuZXJhdG9yNCwg
dHlwZW5hbWUgR2VuZXJhdG9yNSwgdHlwZW5hbWUgR2VuZXJhdG9yNiwKLSAgICB0eXBlbmFtZSBH
ZW5lcmF0b3I3PgotaW50ZXJuYWw6OkNhcnRlc2lhblByb2R1Y3RIb2xkZXI3PEdlbmVyYXRvcjEs
IEdlbmVyYXRvcjIsIEdlbmVyYXRvcjMsCi0gICAgR2VuZXJhdG9yNCwgR2VuZXJhdG9yNSwgR2Vu
ZXJhdG9yNiwgR2VuZXJhdG9yNz4gQ29tYmluZSgKLSAgICBjb25zdCBHZW5lcmF0b3IxJiBnMSwg
Y29uc3QgR2VuZXJhdG9yMiYgZzIsIGNvbnN0IEdlbmVyYXRvcjMmIGczLAotICAgICAgICBjb25z
dCBHZW5lcmF0b3I0JiBnNCwgY29uc3QgR2VuZXJhdG9yNSYgZzUsIGNvbnN0IEdlbmVyYXRvcjYm
IGc2LAotICAgICAgICBjb25zdCBHZW5lcmF0b3I3JiBnNykgewotICByZXR1cm4gaW50ZXJuYWw6
OkNhcnRlc2lhblByb2R1Y3RIb2xkZXI3PEdlbmVyYXRvcjEsIEdlbmVyYXRvcjIsIEdlbmVyYXRv
cjMsCi0gICAgICBHZW5lcmF0b3I0LCBHZW5lcmF0b3I1LCBHZW5lcmF0b3I2LCBHZW5lcmF0b3I3
PigKLSAgICAgIGcxLCBnMiwgZzMsIGc0LCBnNSwgZzYsIGc3KTsKLX0KLQotdGVtcGxhdGUgPHR5
cGVuYW1lIEdlbmVyYXRvcjEsIHR5cGVuYW1lIEdlbmVyYXRvcjIsIHR5cGVuYW1lIEdlbmVyYXRv
cjMsCi0gICAgdHlwZW5hbWUgR2VuZXJhdG9yNCwgdHlwZW5hbWUgR2VuZXJhdG9yNSwgdHlwZW5h
bWUgR2VuZXJhdG9yNiwKLSAgICB0eXBlbmFtZSBHZW5lcmF0b3I3LCB0eXBlbmFtZSBHZW5lcmF0
b3I4PgotaW50ZXJuYWw6OkNhcnRlc2lhblByb2R1Y3RIb2xkZXI4PEdlbmVyYXRvcjEsIEdlbmVy
YXRvcjIsIEdlbmVyYXRvcjMsCi0gICAgR2VuZXJhdG9yNCwgR2VuZXJhdG9yNSwgR2VuZXJhdG9y
NiwgR2VuZXJhdG9yNywgR2VuZXJhdG9yOD4gQ29tYmluZSgKLSAgICBjb25zdCBHZW5lcmF0b3Ix
JiBnMSwgY29uc3QgR2VuZXJhdG9yMiYgZzIsIGNvbnN0IEdlbmVyYXRvcjMmIGczLAotICAgICAg
ICBjb25zdCBHZW5lcmF0b3I0JiBnNCwgY29uc3QgR2VuZXJhdG9yNSYgZzUsIGNvbnN0IEdlbmVy
YXRvcjYmIGc2LAotICAgICAgICBjb25zdCBHZW5lcmF0b3I3JiBnNywgY29uc3QgR2VuZXJhdG9y
OCYgZzgpIHsKLSAgcmV0dXJuIGludGVybmFsOjpDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyODxHZW5l
cmF0b3IxLCBHZW5lcmF0b3IyLCBHZW5lcmF0b3IzLAotICAgICAgR2VuZXJhdG9yNCwgR2VuZXJh
dG9yNSwgR2VuZXJhdG9yNiwgR2VuZXJhdG9yNywgR2VuZXJhdG9yOD4oCi0gICAgICBnMSwgZzIs
IGczLCBnNCwgZzUsIGc2LCBnNywgZzgpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgR2VuZXJh
dG9yMSwgdHlwZW5hbWUgR2VuZXJhdG9yMiwgdHlwZW5hbWUgR2VuZXJhdG9yMywKLSAgICB0eXBl
bmFtZSBHZW5lcmF0b3I0LCB0eXBlbmFtZSBHZW5lcmF0b3I1LCB0eXBlbmFtZSBHZW5lcmF0b3I2
LAotICAgIHR5cGVuYW1lIEdlbmVyYXRvcjcsIHR5cGVuYW1lIEdlbmVyYXRvcjgsIHR5cGVuYW1l
IEdlbmVyYXRvcjk+Ci1pbnRlcm5hbDo6Q2FydGVzaWFuUHJvZHVjdEhvbGRlcjk8R2VuZXJhdG9y
MSwgR2VuZXJhdG9yMiwgR2VuZXJhdG9yMywKLSAgICBHZW5lcmF0b3I0LCBHZW5lcmF0b3I1LCBH
ZW5lcmF0b3I2LCBHZW5lcmF0b3I3LCBHZW5lcmF0b3I4LAotICAgIEdlbmVyYXRvcjk+IENvbWJp
bmUoCi0gICAgY29uc3QgR2VuZXJhdG9yMSYgZzEsIGNvbnN0IEdlbmVyYXRvcjImIGcyLCBjb25z
dCBHZW5lcmF0b3IzJiBnMywKLSAgICAgICAgY29uc3QgR2VuZXJhdG9yNCYgZzQsIGNvbnN0IEdl
bmVyYXRvcjUmIGc1LCBjb25zdCBHZW5lcmF0b3I2JiBnNiwKLSAgICAgICAgY29uc3QgR2VuZXJh
dG9yNyYgZzcsIGNvbnN0IEdlbmVyYXRvcjgmIGc4LCBjb25zdCBHZW5lcmF0b3I5JiBnOSkgewot
ICByZXR1cm4gaW50ZXJuYWw6OkNhcnRlc2lhblByb2R1Y3RIb2xkZXI5PEdlbmVyYXRvcjEsIEdl
bmVyYXRvcjIsIEdlbmVyYXRvcjMsCi0gICAgICBHZW5lcmF0b3I0LCBHZW5lcmF0b3I1LCBHZW5l
cmF0b3I2LCBHZW5lcmF0b3I3LCBHZW5lcmF0b3I4LCBHZW5lcmF0b3I5PigKLSAgICAgIGcxLCBn
MiwgZzMsIGc0LCBnNSwgZzYsIGc3LCBnOCwgZzkpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUg
R2VuZXJhdG9yMSwgdHlwZW5hbWUgR2VuZXJhdG9yMiwgdHlwZW5hbWUgR2VuZXJhdG9yMywKLSAg
ICB0eXBlbmFtZSBHZW5lcmF0b3I0LCB0eXBlbmFtZSBHZW5lcmF0b3I1LCB0eXBlbmFtZSBHZW5l
cmF0b3I2LAotICAgIHR5cGVuYW1lIEdlbmVyYXRvcjcsIHR5cGVuYW1lIEdlbmVyYXRvcjgsIHR5
cGVuYW1lIEdlbmVyYXRvcjksCi0gICAgdHlwZW5hbWUgR2VuZXJhdG9yMTA+Ci1pbnRlcm5hbDo6
Q2FydGVzaWFuUHJvZHVjdEhvbGRlcjEwPEdlbmVyYXRvcjEsIEdlbmVyYXRvcjIsIEdlbmVyYXRv
cjMsCi0gICAgR2VuZXJhdG9yNCwgR2VuZXJhdG9yNSwgR2VuZXJhdG9yNiwgR2VuZXJhdG9yNywg
R2VuZXJhdG9yOCwgR2VuZXJhdG9yOSwKLSAgICBHZW5lcmF0b3IxMD4gQ29tYmluZSgKLSAgICBj
b25zdCBHZW5lcmF0b3IxJiBnMSwgY29uc3QgR2VuZXJhdG9yMiYgZzIsIGNvbnN0IEdlbmVyYXRv
cjMmIGczLAotICAgICAgICBjb25zdCBHZW5lcmF0b3I0JiBnNCwgY29uc3QgR2VuZXJhdG9yNSYg
ZzUsIGNvbnN0IEdlbmVyYXRvcjYmIGc2LAotICAgICAgICBjb25zdCBHZW5lcmF0b3I3JiBnNywg
Y29uc3QgR2VuZXJhdG9yOCYgZzgsIGNvbnN0IEdlbmVyYXRvcjkmIGc5LAotICAgICAgICBjb25z
dCBHZW5lcmF0b3IxMCYgZzEwKSB7Ci0gIHJldHVybiBpbnRlcm5hbDo6Q2FydGVzaWFuUHJvZHVj
dEhvbGRlcjEwPEdlbmVyYXRvcjEsIEdlbmVyYXRvcjIsIEdlbmVyYXRvcjMsCi0gICAgICBHZW5l
cmF0b3I0LCBHZW5lcmF0b3I1LCBHZW5lcmF0b3I2LCBHZW5lcmF0b3I3LCBHZW5lcmF0b3I4LCBH
ZW5lcmF0b3I5LAotICAgICAgR2VuZXJhdG9yMTA+KAotICAgICAgZzEsIGcyLCBnMywgZzQsIGc1
LCBnNiwgZzcsIGc4LCBnOSwgZzEwKTsKLX0KLSMgZW5kaWYgIC8vIEdURVNUX0hBU19DT01CSU5F
Ci0KLSMgZGVmaW5lIFRFU1RfUCh0ZXN0X2Nhc2VfbmFtZSwgdGVzdF9uYW1lKSBcCi0gIGNsYXNz
IEdURVNUX1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9jYXNlX25hbWUsIHRlc3RfbmFtZSkgXAotICAg
ICAgOiBwdWJsaWMgdGVzdF9jYXNlX25hbWUgeyBcCi0gICBwdWJsaWM6IFwKLSAgICBHVEVTVF9U
RVNUX0NMQVNTX05BTUVfKHRlc3RfY2FzZV9uYW1lLCB0ZXN0X25hbWUpKCkge30gXAotICAgIHZp
cnR1YWwgdm9pZCBUZXN0Qm9keSgpOyBcCi0gICBwcml2YXRlOiBcCi0gICAgc3RhdGljIGludCBB
ZGRUb1JlZ2lzdHJ5KCkgeyBcCi0gICAgICA6OnRlc3Rpbmc6OlVuaXRUZXN0OjpHZXRJbnN0YW5j
ZSgpLT5wYXJhbWV0ZXJpemVkX3Rlc3RfcmVnaXN0cnkoKS4gXAotICAgICAgICAgIEdldFRlc3RD
YXNlUGF0dGVybkhvbGRlcjx0ZXN0X2Nhc2VfbmFtZT4oXAotICAgICAgICAgICAgICAjdGVzdF9j
YXNlX25hbWUsIFwKLSAgICAgICAgICAgICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6Q29kZUxvY2F0
aW9uKFwKLSAgICAgICAgICAgICAgICAgIF9fRklMRV9fLCBfX0xJTkVfXykpLT5BZGRUZXN0UGF0
dGVybihcCi0gICAgICAgICAgICAgICAgICAgICAgR1RFU1RfU1RSSU5HSUZZXyh0ZXN0X2Nhc2Vf
bmFtZSksIFwKLSAgICAgICAgICAgICAgICAgICAgICBHVEVTVF9TVFJJTkdJRllfKHRlc3RfbmFt
ZSksIFwKLSAgICAgICAgICAgICAgICAgICAgICBuZXcgOjp0ZXN0aW5nOjppbnRlcm5hbDo6VGVz
dE1ldGFGYWN0b3J5PCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgIEdURVNUX1RFU1RfQ0xB
U1NfTkFNRV8oXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlX25hbWUs
IHRlc3RfbmFtZSk+KCkpOyBcCi0gICAgICByZXR1cm4gMDsgXAotICAgIH0gXAotICAgIHN0YXRp
YyBpbnQgZ3Rlc3RfcmVnaXN0ZXJpbmdfZHVtbXlfIEdURVNUX0FUVFJJQlVURV9VTlVTRURfOyBc
Ci0gICAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhcCi0gICAgICAgIEdURVNUX1RF
U1RfQ0xBU1NfTkFNRV8odGVzdF9jYXNlX25hbWUsIHRlc3RfbmFtZSkpOyBcCi0gIH07IFwKLSAg
aW50IEdURVNUX1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9jYXNlX25hbWUsIFwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdGVzdF9uYW1lKTo6Z3Rlc3RfcmVnaXN0ZXJpbmdfZHVtbXlfID0g
XAotICAgICAgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0X2Nhc2VfbmFtZSwgdGVzdF9uYW1l
KTo6QWRkVG9SZWdpc3RyeSgpOyBcCi0gIHZvaWQgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0
X2Nhc2VfbmFtZSwgdGVzdF9uYW1lKTo6VGVzdEJvZHkoKQotCi0vLyBUaGUgb3B0aW9uYWwgbGFz
dCBhcmd1bWVudCB0byBJTlNUQU5USUFURV9URVNUX0NBU0VfUCBhbGxvd3MgdGhlIHVzZXIKLS8v
IHRvIHNwZWNpZnkgYSBmdW5jdGlvbiBvciBmdW5jdG9yIHRoYXQgZ2VuZXJhdGVzIGN1c3RvbSB0
ZXN0IG5hbWUgc3VmZml4ZXMKLS8vIGJhc2VkIG9uIHRoZSB0ZXN0IHBhcmFtZXRlcnMuIFRoZSBm
dW5jdGlvbiBzaG91bGQgYWNjZXB0IG9uZSBhcmd1bWVudCBvZgotLy8gdHlwZSB0ZXN0aW5nOjpU
ZXN0UGFyYW1JbmZvPGNsYXNzIFBhcmFtVHlwZT4sIGFuZCByZXR1cm4gc3RkOjpzdHJpbmcuCisv
LyBJTlNUQU5USUFURV9URVNUX1NVSVRFX1AoVHdvQm9vbFNlcXVlbmNlLCBGbGFnRGVwZW5kZW50
VGVzdCwKKy8vICAgICAgICAgICAgICAgICAgICAgICAgICBDb21iaW5lKEJvb2woKSwgQm9vbCgp
KSk7CisvLwordGVtcGxhdGUgPHR5cGVuYW1lLi4uIEdlbmVyYXRvcj4KK2ludGVybmFsOjpDYXJ0
ZXNpYW5Qcm9kdWN0SG9sZGVyPEdlbmVyYXRvci4uLj4gQ29tYmluZShjb25zdCBHZW5lcmF0b3Im
Li4uIGcpIHsKKyAgcmV0dXJuIGludGVybmFsOjpDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyPEdlbmVy
YXRvci4uLj4oZy4uLik7Cit9CisKKyNkZWZpbmUgVEVTVF9QKHRlc3Rfc3VpdGVfbmFtZSwgdGVz
dF9uYW1lKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgIGNsYXNzIEdU
RVNUX1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9zdWl0ZV9uYW1lLCB0ZXN0X25hbWUpICAgICAgICAg
ICAgICAgICAgICAgXAorICAgICAgOiBwdWJsaWMgdGVzdF9zdWl0ZV9uYW1lIHsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgIHB1YmxpYzogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCisgICAgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0X3N1aXRlX25hbWUsIHRlc3Rf
bmFtZSkoKSB7fSAgICAgICAgICAgICAgICAgICAgXAorICAgIHZvaWQgVGVzdEJvZHkoKSBvdmVy
cmlkZTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCisgICBwcml2YXRlOiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIHN0
YXRpYyBpbnQgQWRkVG9SZWdpc3RyeSgpIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKKyAgICAgIDo6dGVzdGluZzo6VW5pdFRlc3Q6OkdldEluc3RhbmNl
KCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgLT5w
YXJhbWV0ZXJpemVkX3Rlc3RfcmVnaXN0cnkoKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAorICAgICAgICAgIC5HZXRUZXN0U3VpdGVQYXR0ZXJuSG9sZGVyPHRlc3Rfc3Vp
dGVfbmFtZT4oICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICAgR1RFU1Rf
U1RSSU5HSUZZXyh0ZXN0X3N1aXRlX25hbWUpLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCisgICAgICAgICAgICAgIDo6dGVzdGluZzo6aW50ZXJuYWw6OkNvZGVMb2NhdGlvbihfX0ZJ
TEVfXywgX19MSU5FX18pKSAgICAgICAgICAgXAorICAgICAgICAgIC0+QWRkVGVzdFBhdHRlcm4o
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAg
ICAgICAgICAgICAgR1RFU1RfU1RSSU5HSUZZXyh0ZXN0X3N1aXRlX25hbWUpLCBHVEVTVF9TVFJJ
TkdJRllfKHRlc3RfbmFtZSksICBcCisgICAgICAgICAgICAgIG5ldyA6OnRlc3Rpbmc6OmludGVy
bmFsOjpUZXN0TWV0YUZhY3Rvcnk8R1RFU1RfVEVTVF9DTEFTU19OQU1FXyggXAorICAgICAgICAg
ICAgICAgICAgdGVzdF9zdWl0ZV9uYW1lLCB0ZXN0X25hbWUpPigpKTsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKKyAgICAgIHJldHVybiAwOyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgfSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXAorICAgIHN0YXRpYyBpbnQgZ3Rlc3RfcmVnaXN0ZXJpbmdfZHVtbXlfIEdURVNUX0FU
VFJJQlVURV9VTlVTRURfOyAgICAgICAgICAgICAgIFwKKyAgICBHVEVTVF9ESVNBTExPV19DT1BZ
X0FORF9BU1NJR05fKEdURVNUX1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9zdWl0ZV9uYW1lLCAgICBc
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHRlc3RfbmFtZSkpOyAgICAgICAgXAorICB9OyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgaW50
IEdURVNUX1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9zdWl0ZV9uYW1lLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfbmFt
ZSk6Omd0ZXN0X3JlZ2lzdGVyaW5nX2R1bW15XyA9ICAgICAgICAgICAgXAorICAgICAgR1RFU1Rf
VEVTVF9DTEFTU19OQU1FXyh0ZXN0X3N1aXRlX25hbWUsIHRlc3RfbmFtZSk6OkFkZFRvUmVnaXN0
cnkoKTsgICAgIFwKKyAgdm9pZCBHVEVTVF9URVNUX0NMQVNTX05BTUVfKHRlc3Rfc3VpdGVfbmFt
ZSwgdGVzdF9uYW1lKTo6VGVzdEJvZHkoKQorCisvLyBUaGUgbGFzdCBhcmd1bWVudCB0byBJTlNU
QU5USUFURV9URVNUX1NVSVRFX1AgYWxsb3dzIHRoZSB1c2VyIHRvIHNwZWNpZnkKKy8vIGdlbmVy
YXRvciBhbmQgYW4gb3B0aW9uYWwgZnVuY3Rpb24gb3IgZnVuY3RvciB0aGF0IGdlbmVyYXRlcyBj
dXN0b20gdGVzdCBuYW1lCisvLyBzdWZmaXhlcyBiYXNlZCBvbiB0aGUgdGVzdCBwYXJhbWV0ZXJz
LiBTdWNoIGEgZnVuY3Rpb24gb3IgZnVuY3RvciBzaG91bGQKKy8vIGFjY2VwdCBvbmUgYXJndW1l
bnQgb2YgdHlwZSB0ZXN0aW5nOjpUZXN0UGFyYW1JbmZvPGNsYXNzIFBhcmFtVHlwZT4sIGFuZAor
Ly8gcmV0dXJuIHN0ZDo6c3RyaW5nLgogLy8KIC8vIHRlc3Rpbmc6OlByaW50VG9TdHJpbmdQYXJh
bU5hbWUgaXMgYSBidWlsdGluIHRlc3Qgc3VmZml4IGdlbmVyYXRvciB0aGF0CiAvLyByZXR1cm5z
IHRoZSB2YWx1ZSBvZiB0ZXN0aW5nOjpQcmludFRvU3RyaW5nKEdldFBhcmFtKCkpLgpAQCAtMTQx
MCwyNCArNDUzLDU4IEBAIGludGVybmFsOjpDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyMTA8R2VuZXJh
dG9yMSwgR2VuZXJhdG9yMiwgR2VuZXJhdG9yMywKIC8vIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJz
IG9yIHVuZGVyc2NvcmUuIEJlY2F1c2UgUHJpbnRUb1N0cmluZyBhZGRzIHF1b3RlcwogLy8gdG8g
c3RkOjpzdHJpbmcgYW5kIEMgc3RyaW5ncywgaXQgd29uJ3Qgd29yayBmb3IgdGhlc2UgdHlwZXMu
CiAKLSMgZGVmaW5lIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKHByZWZpeCwgdGVzdF9jYXNlX25h
bWUsIGdlbmVyYXRvciwgLi4uKSBcCi0gIHN0YXRpYyA6OnRlc3Rpbmc6OmludGVybmFsOjpQYXJh
bUdlbmVyYXRvcjx0ZXN0X2Nhc2VfbmFtZTo6UGFyYW1UeXBlPiBcCi0gICAgICBndGVzdF8jI3By
ZWZpeCMjdGVzdF9jYXNlX25hbWUjI19FdmFsR2VuZXJhdG9yXygpIHsgcmV0dXJuIGdlbmVyYXRv
cjsgfSBcCi0gIHN0YXRpYyA6OnN0ZDo6c3RyaW5nIGd0ZXN0XyMjcHJlZml4IyN0ZXN0X2Nhc2Vf
bmFtZSMjX0V2YWxHZW5lcmF0ZU5hbWVfKCBcCi0gICAgICBjb25zdCA6OnRlc3Rpbmc6OlRlc3RQ
YXJhbUluZm88dGVzdF9jYXNlX25hbWU6OlBhcmFtVHlwZT4mIGluZm8pIHsgXAotICAgIHJldHVy
biA6OnRlc3Rpbmc6OmludGVybmFsOjpHZXRQYXJhbU5hbWVHZW48dGVzdF9jYXNlX25hbWU6OlBh
cmFtVHlwZT4gXAotICAgICAgICAoX19WQV9BUkdTX18pKGluZm8pOyBcCi0gIH0gXAotICBzdGF0
aWMgaW50IGd0ZXN0XyMjcHJlZml4IyN0ZXN0X2Nhc2VfbmFtZSMjX2R1bW15XyBHVEVTVF9BVFRS
SUJVVEVfVU5VU0VEXyA9IFwKLSAgICAgIDo6dGVzdGluZzo6VW5pdFRlc3Q6OkdldEluc3RhbmNl
KCktPnBhcmFtZXRlcml6ZWRfdGVzdF9yZWdpc3RyeSgpLiBcCi0gICAgICAgICAgR2V0VGVzdENh
c2VQYXR0ZXJuSG9sZGVyPHRlc3RfY2FzZV9uYW1lPihcCi0gICAgICAgICAgICAgICN0ZXN0X2Nh
c2VfbmFtZSwgXAotICAgICAgICAgICAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpDb2RlTG9jYXRp
b24oXAotICAgICAgICAgICAgICAgICAgX19GSUxFX18sIF9fTElORV9fKSktPkFkZFRlc3RDYXNl
SW5zdGFudGlhdGlvbihcCi0gICAgICAgICAgICAgICAgICAgICAgI3ByZWZpeCwgXAotICAgICAg
ICAgICAgICAgICAgICAgICZndGVzdF8jI3ByZWZpeCMjdGVzdF9jYXNlX25hbWUjI19FdmFsR2Vu
ZXJhdG9yXywgXAotICAgICAgICAgICAgICAgICAgICAgICZndGVzdF8jI3ByZWZpeCMjdGVzdF9j
YXNlX25hbWUjI19FdmFsR2VuZXJhdGVOYW1lXywgXAotICAgICAgICAgICAgICAgICAgICAgIF9f
RklMRV9fLCBfX0xJTkVfXykKKyNkZWZpbmUgR1RFU1RfRVhQQU5EXyhhcmcpIGFyZworI2RlZmlu
ZSBHVEVTVF9HRVRfRklSU1RfKGZpcnN0LCAuLi4pIGZpcnN0CisjZGVmaW5lIEdURVNUX0dFVF9T
RUNPTkRfKGZpcnN0LCBzZWNvbmQsIC4uLikgc2Vjb25kCisKKyNkZWZpbmUgSU5TVEFOVElBVEVf
VEVTVF9TVUlURV9QKHByZWZpeCwgdGVzdF9zdWl0ZV9uYW1lLCAuLi4pICAgICAgICAgICAgICAg
IFwKKyAgc3RhdGljIDo6dGVzdGluZzo6aW50ZXJuYWw6OlBhcmFtR2VuZXJhdG9yPHRlc3Rfc3Vp
dGVfbmFtZTo6UGFyYW1UeXBlPiAgICAgIFwKKyAgICAgIGd0ZXN0XyMjcHJlZml4IyN0ZXN0X3N1
aXRlX25hbWUjI19FdmFsR2VuZXJhdG9yXygpIHsgICAgICAgICAgICAgICAgICAgIFwKKyAgICBy
ZXR1cm4gR1RFU1RfRVhQQU5EXyhHVEVTVF9HRVRfRklSU1RfKF9fVkFfQVJHU19fLCBEVU1NWV9Q
QVJBTV8pKTsgICAgICAgIFwKKyAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgc3RhdGljIDo6c3Rk
OjpzdHJpbmcgZ3Rlc3RfIyNwcmVmaXgjI3Rlc3Rfc3VpdGVfbmFtZSMjX0V2YWxHZW5lcmF0ZU5h
bWVfKCAgIFwKKyAgICAgIGNvbnN0IDo6dGVzdGluZzo6VGVzdFBhcmFtSW5mbzx0ZXN0X3N1aXRl
X25hbWU6OlBhcmFtVHlwZT4mIGluZm8pIHsgICAgIFwKKyAgICBpZiAoOjp0ZXN0aW5nOjppbnRl
cm5hbDo6QWx3YXlzRmFsc2UoKSkgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
KyAgICAgIDo6dGVzdGluZzo6aW50ZXJuYWw6OlRlc3ROb3RFbXB0eShHVEVTVF9FWFBBTkRfKEdU
RVNUX0dFVF9TRUNPTkRfKCAgICAgIFwKKyAgICAgICAgICBfX1ZBX0FSR1NfXywgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAg
ICA6OnRlc3Rpbmc6OmludGVybmFsOjpEZWZhdWx0UGFyYW1OYW1lPHRlc3Rfc3VpdGVfbmFtZTo6
UGFyYW1UeXBlPiwgIFwKKyAgICAgICAgICBEVU1NWV9QQVJBTV8pKSk7ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgIGF1dG8gdCA9IHN0
ZDo6bWFrZV90dXBsZShfX1ZBX0FSR1NfXyk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKKyAgICAgIHN0YXRpY19hc3NlcnQoc3RkOjp0dXBsZV9zaXplPGRlY2x0eXBlKHQpPjo6
dmFsdWUgPD0gMiwgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICAgICAgICAgIlRvbyBN
YW55IEFyZ3MhIik7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAg
ICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwKKyAgICByZXR1cm4gKChHVEVTVF9FWFBBTkRfKEdURVNUX0dF
VF9TRUNPTkRfKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgX19W
QV9BUkdTX18sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAgICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6RGVmYXVsdFBhcmFtTmFt
ZTx0ZXN0X3N1aXRlX25hbWU6OlBhcmFtVHlwZT4sICAgIFwKKyAgICAgICAgRFVNTVlfUEFSQU1f
KSkpKShpbmZvKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKKyAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgc3RhdGljIGludCBndGVzdF8jI3ByZWZpeCMj
dGVzdF9zdWl0ZV9uYW1lIyNfZHVtbXlfICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAg
IEdURVNUX0FUVFJJQlVURV9VTlVTRURfID0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICA6OnRlc3Rpbmc6OlVuaXRUZXN0OjpHZXRJbnN0
YW5jZSgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICAg
LT5wYXJhbWV0ZXJpemVkX3Rlc3RfcmVnaXN0cnkoKSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKKyAgICAgICAgICAgICAgLkdldFRlc3RTdWl0ZVBhdHRlcm5Ib2xkZXI8dGVzdF9z
dWl0ZV9uYW1lPiggICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICAgICAgIEdURVNU
X1NUUklOR0lGWV8odGVzdF9zdWl0ZV9uYW1lKSwgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
KyAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6aW50ZXJuYWw6OkNvZGVMb2NhdGlvbihfX0ZJ
TEVfXywgX19MSU5FX18pKSAgICAgIFwKKyAgICAgICAgICAgICAgLT5BZGRUZXN0U3VpdGVJbnN0
YW50aWF0aW9uKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAg
ICAgICAgICAgIEdURVNUX1NUUklOR0lGWV8ocHJlZml4KSwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICAgICAgICZndGVzdF8jI3ByZWZpeCMjdGVzdF9z
dWl0ZV9uYW1lIyNfRXZhbEdlbmVyYXRvcl8sICAgICAgICAgIFwKKyAgICAgICAgICAgICAgICAg
ICZndGVzdF8jI3ByZWZpeCMjdGVzdF9zdWl0ZV9uYW1lIyNfRXZhbEdlbmVyYXRlTmFtZV8sICAg
ICAgIFwKKyAgICAgICAgICAgICAgICAgIF9fRklMRV9fLCBfX0xJTkVfXykKKworCisvLyBBbGxv
dyBNYXJraW5nIGEgUGFyYW1ldGVyaXplZCB0ZXN0IGNsYXNzIGFzIG5vdCBuZWVkaW5nIHRvIGJl
IGluc3RhbnRpYXRlZC4KKyNkZWZpbmUgR1RFU1RfQUxMT1dfVU5JTlNUQU5USUFURURfUEFSQU1F
VEVSSVpFRF9URVNUKFQpICAgICAgICAgICAgICAgICAgIFwKKyAgbmFtZXNwYWNlIGd0ZXN0X2Rv
X25vdF91c2Vfb3V0c2lkZV9uYW1lc3BhY2Vfc2NvcGUge30gICAgICAgICAgICAgICAgICAgXAor
ICBzdGF0aWMgY29uc3QgOjp0ZXN0aW5nOjppbnRlcm5hbDo6TWFya0FzSWdub3JlZCBndGVzdF9h
bGxvd19pZ25vcmVfIyNUKCBcCisgICAgICBHVEVTVF9TVFJJTkdJRllfKFQpKQorCisvLyBMZWdh
Y3kgQVBJIGlzIGRlcHJlY2F0ZWQgYnV0IHN0aWxsIGF2YWlsYWJsZQorI2lmbmRlZiBHVEVTVF9S
RU1PVkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KKyNkZWZpbmUgSU5TVEFOVElBVEVfVEVTVF9DQVNF
X1AgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgc3RhdGlj
X2Fzc2VydCg6OnRlc3Rpbmc6OmludGVybmFsOjpJbnN0YW50aWF0ZVRlc3RDYXNlX1BfSXNEZXBy
ZWNhdGVkKCksIFwKKyAgICAgICAgICAgICAgICAiIik7ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgSU5TVEFOVElBVEVfVEVTVF9TVUlU
RV9QCisjZW5kaWYgIC8vIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwogCiB9ICAv
LyBuYW1lc3BhY2UgdGVzdGluZwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5
L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QtcGFyYW0tdGVzdC5oLnB1bXAgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3Qt
cGFyYW0tdGVzdC5oLnB1bXAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI3NGYyYjNi
NTY5MzMwMDEyZTg1ZWUzY2Y0ZmQ1N2ViMGI1NDIxZDYuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0
L3NyYy9pbmNsdWRlL2d0ZXN0L2d0ZXN0LXBhcmFtLXRlc3QuaC5wdW1wCisrKyAvZGV2L251bGwK
QEAgLTEsNTAwICswLDAgQEAKLSQkIC0qLSBtb2RlOiBjKys7IC0qLQotJHZhciBuID0gNTAgICQk
IE1heGltdW0gbGVuZ3RoIG9mIFZhbHVlcyBhcmd1bWVudHMgd2Ugd2FudCB0byBzdXBwb3J0Lgot
JHZhciBtYXh0dXBsZSA9IDEwICAkJCBNYXhpbXVtIG51bWJlciBvZiBDb21iaW5lIGFyZ3VtZW50
cyB3ZSB3YW50IHRvIHN1cHBvcnQuCi0vLyBDb3B5cmlnaHQgMjAwOCwgR29vZ2xlIEluYy4KLS8v
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0vLwotLy8gUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0vLyBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJl
Ci0vLyBtZXQ6Ci0vLwotLy8gICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLS8vIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLS8vICAgICAqIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLS8vIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIKLS8vIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUKLS8vIGRpc3RyaWJ1dGlvbi4KLS8vICAgICAqIE5laXRoZXIgdGhl
IG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKLS8vIGNvbnRyaWJ1dG9y
cyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9t
Ci0vLyB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNz
aW9uLgotLy8KLS8vIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBI
T0xERVJTIEFORCBDT05UUklCVVRPUlMKLS8vICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0vLyBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKLS8v
IEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUCi0vLyBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLS8vIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKLS8vIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LAotLy8gREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZCi0vLyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0vLyAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLS8vIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCi0vLwotLy8gTWFjcm9zIGFuZCBmdW5jdGlvbnMgZm9yIGltcGxlbWVudGluZyBw
YXJhbWV0ZXJpemVkIHRlc3RzCi0vLyBpbiBHb29nbGUgQysrIFRlc3RpbmcgYW5kIE1vY2tpbmcg
RnJhbWV3b3JrIChHb29nbGUgVGVzdCkKLS8vCi0vLyBUaGlzIGZpbGUgaXMgZ2VuZXJhdGVkIGJ5
IGEgU0NSSVBULiAgRE8gTk9UIEVESVQgQlkgSEFORCEKLS8vCi0vLyBHT09HTEVURVNUX0NNMDAw
MSBETyBOT1QgREVMRVRFCi0jaWZuZGVmIEdURVNUX0lOQ0xVREVfR1RFU1RfR1RFU1RfUEFSQU1f
VEVTVF9IXwotI2RlZmluZSBHVEVTVF9JTkNMVURFX0dURVNUX0dURVNUX1BBUkFNX1RFU1RfSF8K
LQotCi0vLyBWYWx1ZS1wYXJhbWV0ZXJpemVkIHRlc3RzIGFsbG93IHlvdSB0byB0ZXN0IHlvdXIg
Y29kZSB3aXRoIGRpZmZlcmVudAotLy8gcGFyYW1ldGVycyB3aXRob3V0IHdyaXRpbmcgbXVsdGlw
bGUgY29waWVzIG9mIHRoZSBzYW1lIHRlc3QuCi0vLwotLy8gSGVyZSBpcyBob3cgeW91IHVzZSB2
YWx1ZS1wYXJhbWV0ZXJpemVkIHRlc3RzOgotCi0jaWYgMAotCi0vLyBUbyB3cml0ZSB2YWx1ZS1w
YXJhbWV0ZXJpemVkIHRlc3RzLCBmaXJzdCB5b3Ugc2hvdWxkIGRlZmluZSBhIGZpeHR1cmUKLS8v
IGNsYXNzLiBJdCBpcyB1c3VhbGx5IGRlcml2ZWQgZnJvbSB0ZXN0aW5nOjpUZXN0V2l0aFBhcmFt
PFQ+IChzZWUgYmVsb3cgZm9yCi0vLyBhbm90aGVyIGluaGVyaXRhbmNlIHNjaGVtZSB0aGF0J3Mg
c29tZXRpbWVzIHVzZWZ1bCBpbiBtb3JlIGNvbXBsaWNhdGVkCi0vLyBjbGFzcyBoaWVyYXJjaGll
cyksIHdoZXJlIHRoZSB0eXBlIG9mIHlvdXIgcGFyYW1ldGVyIHZhbHVlcy4KLS8vIFRlc3RXaXRo
UGFyYW08VD4gaXMgaXRzZWxmIGRlcml2ZWQgZnJvbSB0ZXN0aW5nOjpUZXN0LiBUIGNhbiBiZSBh
bnkKLS8vIGNvcHlhYmxlIHR5cGUuIElmIGl0J3MgYSByYXcgcG9pbnRlciwgeW91IGFyZSByZXNw
b25zaWJsZSBmb3IgbWFuYWdpbmcgdGhlCi0vLyBsaWZlc3BhbiBvZiB0aGUgcG9pbnRlZCB2YWx1
ZXMuCi0KLWNsYXNzIEZvb1Rlc3QgOiBwdWJsaWMgOjp0ZXN0aW5nOjpUZXN0V2l0aFBhcmFtPGNv
bnN0IGNoYXIqPiB7Ci0gIC8vIFlvdSBjYW4gaW1wbGVtZW50IGFsbCB0aGUgdXN1YWwgY2xhc3Mg
Zml4dHVyZSBtZW1iZXJzIGhlcmUuCi19OwotCi0vLyBUaGVuLCB1c2UgdGhlIFRFU1RfUCBtYWNy
byB0byBkZWZpbmUgYXMgbWFueSBwYXJhbWV0ZXJpemVkIHRlc3RzCi0vLyBmb3IgdGhpcyBmaXh0
dXJlIGFzIHlvdSB3YW50LiBUaGUgX1Agc3VmZml4IGlzIGZvciAicGFyYW1ldGVyaXplZCIKLS8v
IG9yICJwYXR0ZXJuIiwgd2hpY2hldmVyIHlvdSBwcmVmZXIgdG8gdGhpbmsuCi0KLVRFU1RfUChG
b29UZXN0LCBEb2VzQmxhaCkgewotICAvLyBJbnNpZGUgYSB0ZXN0LCBhY2Nlc3MgdGhlIHRlc3Qg
cGFyYW1ldGVyIHdpdGggdGhlIEdldFBhcmFtKCkgbWV0aG9kCi0gIC8vIG9mIHRoZSBUZXN0V2l0
aFBhcmFtPFQ+IGNsYXNzOgotICBFWFBFQ1RfVFJVRShmb28uQmxhaChHZXRQYXJhbSgpKSk7Ci0g
IC4uLgotfQotCi1URVNUX1AoRm9vVGVzdCwgSGFzQmxhaEJsYWgpIHsKLSAgLi4uCi19Ci0KLS8v
IEZpbmFsbHksIHlvdSBjYW4gdXNlIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QIHRvIGluc3RhbnRp
YXRlIHRoZSB0ZXN0Ci0vLyBjYXNlIHdpdGggYW55IHNldCBvZiBwYXJhbWV0ZXJzIHlvdSB3YW50
LiBHb29nbGUgVGVzdCBkZWZpbmVzIGEgbnVtYmVyCi0vLyBvZiBmdW5jdGlvbnMgZm9yIGdlbmVy
YXRpbmcgdGVzdCBwYXJhbWV0ZXJzLiBUaGV5IHJldHVybiB3aGF0IHdlIGNhbGwKLS8vIChzdXJw
cmlzZSEpIHBhcmFtZXRlciBnZW5lcmF0b3JzLiBIZXJlIGlzIGEgc3VtbWFyeSBvZiB0aGVtLCB3
aGljaAotLy8gYXJlIGFsbCBpbiB0aGUgdGVzdGluZyBuYW1lc3BhY2U6Ci0vLwotLy8KLS8vICBS
YW5nZShiZWdpbiwgZW5kIFssIHN0ZXBdKSAtIFlpZWxkcyB2YWx1ZXMge2JlZ2luLCBiZWdpbitz
dGVwLAotLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmVnaW4rc3RlcCtzdGVwLCAu
Li59LiBUaGUgdmFsdWVzIGRvIG5vdAotLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
aW5jbHVkZSBlbmQuIHN0ZXAgZGVmYXVsdHMgdG8gMS4KLS8vICBWYWx1ZXModjEsIHYyLCAuLi4s
IHZOKSAgICAtIFlpZWxkcyB2YWx1ZXMge3YxLCB2MiwgLi4uLCB2Tn0uCi0vLyAgVmFsdWVzSW4o
Y29udGFpbmVyKSAgICAgICAgLSBZaWVsZHMgdmFsdWVzIGZyb20gYSBDLXN0eWxlIGFycmF5LCBh
biBTVEwKLS8vICBWYWx1ZXNJbihiZWdpbixlbmQpICAgICAgICAgIGNvbnRhaW5lciwgb3IgYW4g
aXRlcmF0b3IgcmFuZ2UgW2JlZ2luLCBlbmQpLgotLy8gIEJvb2woKSAgICAgICAgICAgICAgICAg
ICAgIC0gWWllbGRzIHNlcXVlbmNlIHtmYWxzZSwgdHJ1ZX0uCi0vLyAgQ29tYmluZShnMSwgZzIs
IC4uLiwgZ04pICAgLSBZaWVsZHMgYWxsIGNvbWJpbmF0aW9ucyAodGhlIENhcnRlc2lhbiBwcm9k
dWN0Ci0vLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgdGhlIG1hdGggc2F2dnkp
IG9mIHRoZSB2YWx1ZXMgZ2VuZXJhdGVkCi0vLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBieSB0aGUgTiBnZW5lcmF0b3JzLgotLy8KLS8vIEZvciBtb3JlIGRldGFpbHMsIHNlZSBjb21t
ZW50cyBhdCB0aGUgZGVmaW5pdGlvbnMgb2YgdGhlc2UgZnVuY3Rpb25zIGJlbG93Ci0vLyBpbiB0
aGlzIGZpbGUuCi0vLwotLy8gVGhlIGZvbGxvd2luZyBzdGF0ZW1lbnQgd2lsbCBpbnN0YW50aWF0
ZSB0ZXN0cyBmcm9tIHRoZSBGb29UZXN0IHRlc3QgY2FzZQotLy8gZWFjaCB3aXRoIHBhcmFtZXRl
ciB2YWx1ZXMgIm1lZW55IiwgIm1pbnkiLCBhbmQgIm1vZSIuCi0KLUlOU1RBTlRJQVRFX1RFU1Rf
Q0FTRV9QKEluc3RhbnRpYXRpb25OYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgRm9vVGVz
dCwKLSAgICAgICAgICAgICAgICAgICAgICAgIFZhbHVlcygibWVlbnkiLCAibWlueSIsICJtb2Ui
KSk7Ci0KLS8vIFRvIGRpc3Rpbmd1aXNoIGRpZmZlcmVudCBpbnN0YW5jZXMgb2YgdGhlIHBhdHRl
cm4sICh5ZXMsIHlvdQotLy8gY2FuIGluc3RhbnRpYXRlIGl0IG1vcmUgdGhlbiBvbmNlKSB0aGUg
Zmlyc3QgYXJndW1lbnQgdG8gdGhlCi0vLyBJTlNUQU5USUFURV9URVNUX0NBU0VfUCBtYWNybyBp
cyBhIHByZWZpeCB0aGF0IHdpbGwgYmUgYWRkZWQgdG8gdGhlCi0vLyBhY3R1YWwgdGVzdCBjYXNl
IG5hbWUuIFJlbWVtYmVyIHRvIHBpY2sgdW5pcXVlIHByZWZpeGVzIGZvciBkaWZmZXJlbnQKLS8v
IGluc3RhbnRpYXRpb25zLiBUaGUgdGVzdHMgZnJvbSB0aGUgaW5zdGFudGlhdGlvbiBhYm92ZSB3
aWxsIGhhdmUKLS8vIHRoZXNlIG5hbWVzOgotLy8KLS8vICAgICogSW5zdGFudGlhdGlvbk5hbWUv
Rm9vVGVzdC5Eb2VzQmxhaC8wIGZvciAibWVlbnkiCi0vLyAgICAqIEluc3RhbnRpYXRpb25OYW1l
L0Zvb1Rlc3QuRG9lc0JsYWgvMSBmb3IgIm1pbnkiCi0vLyAgICAqIEluc3RhbnRpYXRpb25OYW1l
L0Zvb1Rlc3QuRG9lc0JsYWgvMiBmb3IgIm1vZSIKLS8vICAgICogSW5zdGFudGlhdGlvbk5hbWUv
Rm9vVGVzdC5IYXNCbGFoQmxhaC8wIGZvciAibWVlbnkiCi0vLyAgICAqIEluc3RhbnRpYXRpb25O
YW1lL0Zvb1Rlc3QuSGFzQmxhaEJsYWgvMSBmb3IgIm1pbnkiCi0vLyAgICAqIEluc3RhbnRpYXRp
b25OYW1lL0Zvb1Rlc3QuSGFzQmxhaEJsYWgvMiBmb3IgIm1vZSIKLS8vCi0vLyBZb3UgY2FuIHVz
ZSB0aGVzZSBuYW1lcyBpbiAtLWd0ZXN0X2ZpbHRlci4KLS8vCi0vLyBUaGlzIHN0YXRlbWVudCB3
aWxsIGluc3RhbnRpYXRlIGFsbCB0ZXN0cyBmcm9tIEZvb1Rlc3QgYWdhaW4sIGVhY2gKLS8vIHdp
dGggcGFyYW1ldGVyIHZhbHVlcyAiY2F0IiBhbmQgImRvZyI6Ci0KLWNvbnN0IGNoYXIqIHBldHNb
XSA9IHsiY2F0IiwgImRvZyJ9OwotSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoQW5vdGhlckluc3Rh
bnRpYXRpb25OYW1lLCBGb29UZXN0LCBWYWx1ZXNJbihwZXRzKSk7Ci0KLS8vIFRoZSB0ZXN0cyBm
cm9tIHRoZSBpbnN0YW50aWF0aW9uIGFib3ZlIHdpbGwgaGF2ZSB0aGVzZSBuYW1lczoKLS8vCi0v
LyAgICAqIEFub3RoZXJJbnN0YW50aWF0aW9uTmFtZS9Gb29UZXN0LkRvZXNCbGFoLzAgZm9yICJj
YXQiCi0vLyAgICAqIEFub3RoZXJJbnN0YW50aWF0aW9uTmFtZS9Gb29UZXN0LkRvZXNCbGFoLzEg
Zm9yICJkb2ciCi0vLyAgICAqIEFub3RoZXJJbnN0YW50aWF0aW9uTmFtZS9Gb29UZXN0Lkhhc0Js
YWhCbGFoLzAgZm9yICJjYXQiCi0vLyAgICAqIEFub3RoZXJJbnN0YW50aWF0aW9uTmFtZS9Gb29U
ZXN0Lkhhc0JsYWhCbGFoLzEgZm9yICJkb2ciCi0vLwotLy8gUGxlYXNlIG5vdGUgdGhhdCBJTlNU
QU5USUFURV9URVNUX0NBU0VfUCB3aWxsIGluc3RhbnRpYXRlIGFsbCB0ZXN0cwotLy8gaW4gdGhl
IGdpdmVuIHRlc3QgY2FzZSwgd2hldGhlciB0aGVpciBkZWZpbml0aW9ucyBjb21lIGJlZm9yZSBv
cgotLy8gQUZURVIgdGhlIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QIHN0YXRlbWVudC4KLS8vCi0v
LyBQbGVhc2UgYWxzbyBub3RlIHRoYXQgZ2VuZXJhdG9yIGV4cHJlc3Npb25zIChpbmNsdWRpbmcg
cGFyYW1ldGVycyB0byB0aGUKLS8vIGdlbmVyYXRvcnMpIGFyZSBldmFsdWF0ZWQgaW4gSW5pdEdv
b2dsZVRlc3QoKSwgYWZ0ZXIgbWFpbigpIGhhcyBzdGFydGVkLgotLy8gVGhpcyBhbGxvd3MgdGhl
IHVzZXIgb24gb25lIGhhbmQsIHRvIGFkanVzdCBnZW5lcmF0b3IgcGFyYW1ldGVycyBpbiBvcmRl
cgotLy8gdG8gZHluYW1pY2FsbHkgZGV0ZXJtaW5lIGEgc2V0IG9mIHRlc3RzIHRvIHJ1biBhbmQg
b24gdGhlIG90aGVyIGhhbmQsCi0vLyBnaXZlIHRoZSB1c2VyIGEgY2hhbmNlIHRvIGluc3BlY3Qg
dGhlIGdlbmVyYXRlZCB0ZXN0cyB3aXRoIEdvb2dsZSBUZXN0Ci0vLyByZWZsZWN0aW9uIEFQSSBi
ZWZvcmUgUlVOX0FMTF9URVNUUygpIGlzIGV4ZWN1dGVkLgotLy8KLS8vIFlvdSBjYW4gc2VlIHNh
bXBsZXMvc2FtcGxlN191bml0dGVzdC5jYyBhbmQgc2FtcGxlcy9zYW1wbGU4X3VuaXR0ZXN0LmNj
Ci0vLyBmb3IgbW9yZSBleGFtcGxlcy4KLS8vCi0vLyBJbiB0aGUgZnV0dXJlLCB3ZSBwbGFuIHRv
IHB1Ymxpc2ggdGhlIEFQSSBmb3IgZGVmaW5pbmcgbmV3IHBhcmFtZXRlcgotLy8gZ2VuZXJhdG9y
cy4gQnV0IGZvciBub3cgdGhpcyBpbnRlcmZhY2UgcmVtYWlucyBwYXJ0IG9mIHRoZSBpbnRlcm5h
bAotLy8gaW1wbGVtZW50YXRpb24gYW5kIGlzIHN1YmplY3QgdG8gY2hhbmdlLgotLy8KLS8vCi0v
LyBBIHBhcmFtZXRlcml6ZWQgdGVzdCBmaXh0dXJlIG11c3QgYmUgZGVyaXZlZCBmcm9tIHRlc3Rp
bmc6OlRlc3QgYW5kIGZyb20KLS8vIHRlc3Rpbmc6OldpdGhQYXJhbUludGVyZmFjZTxUPiwgd2hl
cmUgVCBpcyB0aGUgdHlwZSBvZiB0aGUgcGFyYW1ldGVyCi0vLyB2YWx1ZXMuIEluaGVyaXRpbmcg
ZnJvbSBUZXN0V2l0aFBhcmFtPFQ+IHNhdGlzZmllcyB0aGF0IHJlcXVpcmVtZW50IGJlY2F1c2UK
LS8vIFRlc3RXaXRoUGFyYW08VD4gaW5oZXJpdHMgZnJvbSBib3RoIFRlc3QgYW5kIFdpdGhQYXJh
bUludGVyZmFjZS4gSW4gbW9yZQotLy8gY29tcGxpY2F0ZWQgaGllcmFyY2hpZXMsIGhvd2V2ZXIs
IGl0IGlzIG9jY2FzaW9uYWxseSB1c2VmdWwgdG8gaW5oZXJpdAotLy8gc2VwYXJhdGVseSBmcm9t
IFRlc3QgYW5kIFdpdGhQYXJhbUludGVyZmFjZS4gRm9yIGV4YW1wbGU6Ci0KLWNsYXNzIEJhc2VU
ZXN0IDogcHVibGljIDo6dGVzdGluZzo6VGVzdCB7Ci0gIC8vIFlvdSBjYW4gaW5oZXJpdCBhbGwg
dGhlIHVzdWFsIG1lbWJlcnMgZm9yIGEgbm9uLXBhcmFtZXRlcml6ZWQgdGVzdAotICAvLyBmaXh0
dXJlIGhlcmUuCi19OwotCi1jbGFzcyBEZXJpdmVkVGVzdCA6IHB1YmxpYyBCYXNlVGVzdCwgcHVi
bGljIDo6dGVzdGluZzo6V2l0aFBhcmFtSW50ZXJmYWNlPGludD4gewotICAvLyBUaGUgdXN1YWwg
dGVzdCBmaXh0dXJlIG1lbWJlcnMgZ28gaGVyZSB0b28uCi19OwotCi1URVNUX0YoQmFzZVRlc3Qs
IEhhc0ZvbykgewotICAvLyBUaGlzIGlzIGFuIG9yZGluYXJ5IG5vbi1wYXJhbWV0ZXJpemVkIHRl
c3QuCi19Ci0KLVRFU1RfUChEZXJpdmVkVGVzdCwgRG9lc0JsYWgpIHsKLSAgLy8gR2V0UGFyYW0g
d29ya3MganVzdCB0aGUgc2FtZSBoZXJlIGFzIGlmIHlvdSBpbmhlcml0IGZyb20gVGVzdFdpdGhQ
YXJhbS4KLSAgRVhQRUNUX1RSVUUoZm9vLkJsYWgoR2V0UGFyYW0oKSkpOwotfQotCi0jZW5kaWYg
IC8vIDAKLQotI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQuaCIKLQotI2lmICFH
VEVTVF9PU19TWU1CSUFOCi0jIGluY2x1ZGUgPHV0aWxpdHk+Ci0jZW5kaWYKLQotI2luY2x1ZGUg
Imd0ZXN0L2ludGVybmFsL2d0ZXN0LWludGVybmFsLmgiCi0jaW5jbHVkZSAiZ3Rlc3QvaW50ZXJu
YWwvZ3Rlc3QtcGFyYW0tdXRpbC5oIgotI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LXBh
cmFtLXV0aWwtZ2VuZXJhdGVkLmgiCi0KLW5hbWVzcGFjZSB0ZXN0aW5nIHsKLQotLy8gRnVuY3Rp
b25zIHByb2R1Y2luZyBwYXJhbWV0ZXIgZ2VuZXJhdG9ycy4KLS8vCi0vLyBHb29nbGUgVGVzdCB1
c2VzIHRoZXNlIGdlbmVyYXRvcnMgdG8gcHJvZHVjZSBwYXJhbWV0ZXJzIGZvciB2YWx1ZS0KLS8v
IHBhcmFtZXRlcml6ZWQgdGVzdHMuIFdoZW4gYSBwYXJhbWV0ZXJpemVkIHRlc3QgY2FzZSBpcyBp
bnN0YW50aWF0ZWQKLS8vIHdpdGggYSBwYXJ0aWN1bGFyIGdlbmVyYXRvciwgR29vZ2xlIFRlc3Qg
Y3JlYXRlcyBhbmQgcnVucyB0ZXN0cwotLy8gZm9yIGVhY2ggZWxlbWVudCBpbiB0aGUgc2VxdWVu
Y2UgcHJvZHVjZWQgYnkgdGhlIGdlbmVyYXRvci4KLS8vCi0vLyBJbiB0aGUgZm9sbG93aW5nIHNh
bXBsZSwgdGVzdHMgZnJvbSB0ZXN0IGNhc2UgRm9vVGVzdCBhcmUgaW5zdGFudGlhdGVkCi0vLyBl
YWNoIHRocmVlIHRpbWVzIHdpdGggcGFyYW1ldGVyIHZhbHVlcyAzLCA1LCBhbmQgODoKLS8vCi0v
LyBjbGFzcyBGb29UZXN0IDogcHVibGljIFRlc3RXaXRoUGFyYW08aW50PiB7IC4uLiB9OwotLy8K
LS8vIFRFU1RfUChGb29UZXN0LCBUZXN0VGhpcykgewotLy8gfQotLy8gVEVTVF9QKEZvb1Rlc3Qs
IFRlc3RUaGF0KSB7Ci0vLyB9Ci0vLyBJTlNUQU5USUFURV9URVNUX0NBU0VfUChUZXN0U2VxdWVu
Y2UsIEZvb1Rlc3QsIFZhbHVlcygzLCA1LCA4KSk7Ci0vLwotCi0vLyBSYW5nZSgpIHJldHVybnMg
Z2VuZXJhdG9ycyBwcm92aWRpbmcgc2VxdWVuY2VzIG9mIHZhbHVlcyBpbiBhIHJhbmdlLgotLy8K
LS8vIFN5bm9wc2lzOgotLy8gUmFuZ2Uoc3RhcnQsIGVuZCkKLS8vICAgLSByZXR1cm5zIGEgZ2Vu
ZXJhdG9yIHByb2R1Y2luZyBhIHNlcXVlbmNlIG9mIHZhbHVlcyB7c3RhcnQsIHN0YXJ0KzEsCi0v
LyAgICAgc3RhcnQrMiwgLi4uLCB9LgotLy8gUmFuZ2Uoc3RhcnQsIGVuZCwgc3RlcCkKLS8vICAg
LSByZXR1cm5zIGEgZ2VuZXJhdG9yIHByb2R1Y2luZyBhIHNlcXVlbmNlIG9mIHZhbHVlcyB7c3Rh
cnQsIHN0YXJ0K3N0ZXAsCi0vLyAgICAgc3RhcnQrc3RlcCtzdGVwLCAuLi4sIH0uCi0vLyBOb3Rl
czoKLS8vICAgKiBUaGUgZ2VuZXJhdGVkIHNlcXVlbmNlcyBuZXZlciBpbmNsdWRlIGVuZC4gRm9y
IGV4YW1wbGUsIFJhbmdlKDEsIDUpCi0vLyAgICAgcmV0dXJucyBhIGdlbmVyYXRvciBwcm9kdWNp
bmcgYSBzZXF1ZW5jZSB7MSwgMiwgMywgNH0uIFJhbmdlKDEsIDksIDIpCi0vLyAgICAgcmV0dXJu
cyBhIGdlbmVyYXRvciBwcm9kdWNpbmcgezEsIDMsIDUsIDd9LgotLy8gICAqIHN0YXJ0IGFuZCBl
bmQgbXVzdCBoYXZlIHRoZSBzYW1lIHR5cGUuIFRoYXQgdHlwZSBtYXkgYmUgYW55IGludGVncmFs
IG9yCi0vLyAgICAgZmxvYXRpbmctcG9pbnQgdHlwZSBvciBhIHVzZXIgZGVmaW5lZCB0eXBlIHNh
dGlzZnlpbmcgdGhlc2UgY29uZGl0aW9uczoKLS8vICAgICAqIEl0IG11c3QgYmUgYXNzaWduYWJs
ZSAoaGF2ZSBvcGVyYXRvcj0oKSBkZWZpbmVkKS4KLS8vICAgICAqIEl0IG11c3QgaGF2ZSBvcGVy
YXRvcisoKSAob3BlcmF0b3IrKGludC1jb21wYXRpYmxlIHR5cGUpIGZvcgotLy8gICAgICAgdHdv
LW9wZXJhbmQgdmVyc2lvbikuCi0vLyAgICAgKiBJdCBtdXN0IGhhdmUgb3BlcmF0b3I8KCkgZGVm
aW5lZC4KLS8vICAgICBFbGVtZW50cyBpbiB0aGUgcmVzdWx0aW5nIHNlcXVlbmNlcyB3aWxsIGFs
c28gaGF2ZSB0aGF0IHR5cGUuCi0vLyAgICogQ29uZGl0aW9uIHN0YXJ0IDwgZW5kIG11c3QgYmUg
c2F0aXNmaWVkIGluIG9yZGVyIGZvciByZXN1bHRpbmcgc2VxdWVuY2VzCi0vLyAgICAgdG8gY29u
dGFpbiBhbnkgZWxlbWVudHMuCi0vLwotdGVtcGxhdGUgPHR5cGVuYW1lIFQsIHR5cGVuYW1lIElu
Y3JlbWVudFQ+Ci1pbnRlcm5hbDo6UGFyYW1HZW5lcmF0b3I8VD4gUmFuZ2UoVCBzdGFydCwgVCBl
bmQsIEluY3JlbWVudFQgc3RlcCkgewotICByZXR1cm4gaW50ZXJuYWw6OlBhcmFtR2VuZXJhdG9y
PFQ+KAotICAgICAgbmV3IGludGVybmFsOjpSYW5nZUdlbmVyYXRvcjxULCBJbmNyZW1lbnRUPihz
dGFydCwgZW5kLCBzdGVwKSk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotaW50ZXJuYWw6
OlBhcmFtR2VuZXJhdG9yPFQ+IFJhbmdlKFQgc3RhcnQsIFQgZW5kKSB7Ci0gIHJldHVybiBSYW5n
ZShzdGFydCwgZW5kLCAxKTsKLX0KLQotLy8gVmFsdWVzSW4oKSBmdW5jdGlvbiBhbGxvd3MgZ2Vu
ZXJhdGlvbiBvZiB0ZXN0cyB3aXRoIHBhcmFtZXRlcnMgY29taW5nIGZyb20KLS8vIGEgY29udGFp
bmVyLgotLy8KLS8vIFN5bm9wc2lzOgotLy8gVmFsdWVzSW4oY29uc3QgVCAoJmFycmF5KVtOXSkK
LS8vICAgLSByZXR1cm5zIGEgZ2VuZXJhdG9yIHByb2R1Y2luZyBzZXF1ZW5jZXMgd2l0aCBlbGVt
ZW50cyBmcm9tCi0vLyAgICAgYSBDLXN0eWxlIGFycmF5LgotLy8gVmFsdWVzSW4oY29uc3QgQ29u
dGFpbmVyJiBjb250YWluZXIpCi0vLyAgIC0gcmV0dXJucyBhIGdlbmVyYXRvciBwcm9kdWNpbmcg
c2VxdWVuY2VzIHdpdGggZWxlbWVudHMgZnJvbQotLy8gICAgIGFuIFNUTC1zdHlsZSBjb250YWlu
ZXIuCi0vLyBWYWx1ZXNJbihJdGVyYXRvciBiZWdpbiwgSXRlcmF0b3IgZW5kKQotLy8gICAtIHJl
dHVybnMgYSBnZW5lcmF0b3IgcHJvZHVjaW5nIHNlcXVlbmNlcyB3aXRoIGVsZW1lbnRzIGZyb20K
LS8vICAgICBhIHJhbmdlIFtiZWdpbiwgZW5kKSBkZWZpbmVkIGJ5IGEgcGFpciBvZiBTVEwtc3R5
bGUgaXRlcmF0b3JzLiBUaGVzZQotLy8gICAgIGl0ZXJhdG9ycyBjYW4gYWxzbyBiZSBwbGFpbiBD
IHBvaW50ZXJzLgotLy8KLS8vIFBsZWFzZSBub3RlIHRoYXQgVmFsdWVzSW4gY29waWVzIHRoZSB2
YWx1ZXMgZnJvbSB0aGUgY29udGFpbmVycwotLy8gcGFzc2VkIGluIGFuZCBrZWVwcyB0aGVtIHRv
IGdlbmVyYXRlIHRlc3RzIGluIFJVTl9BTExfVEVTVFMoKS4KLS8vCi0vLyBFeGFtcGxlczoKLS8v
Ci0vLyBUaGlzIGluc3RhbnRpYXRlcyB0ZXN0cyBmcm9tIHRlc3QgY2FzZSBTdHJpbmdUZXN0Ci0v
LyBlYWNoIHdpdGggQy1zdHJpbmcgdmFsdWVzIG9mICJmb28iLCAiYmFyIiwgYW5kICJiYXoiOgot
Ly8KLS8vIGNvbnN0IGNoYXIqIHN0cmluZ3NbXSA9IHsiZm9vIiwgImJhciIsICJiYXoifTsKLS8v
IElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKFN0cmluZ1NlcXVlbmNlLCBTdHJpbmdUZXN0LCBWYWx1
ZXNJbihzdHJpbmdzKSk7Ci0vLwotLy8gVGhpcyBpbnN0YW50aWF0ZXMgdGVzdHMgZnJvbSB0ZXN0
IGNhc2UgU3RsU3RyaW5nVGVzdAotLy8gZWFjaCB3aXRoIFNUTCBzdHJpbmdzIHdpdGggdmFsdWVz
ICJhIiBhbmQgImIiOgotLy8KLS8vIDo6c3RkOjp2ZWN0b3I8IDo6c3RkOjpzdHJpbmc+IEdldFBh
cmFtZXRlclN0cmluZ3MoKSB7Ci0vLyAgIDo6c3RkOjp2ZWN0b3I8IDo6c3RkOjpzdHJpbmc+IHY7
Ci0vLyAgIHYucHVzaF9iYWNrKCJhIik7Ci0vLyAgIHYucHVzaF9iYWNrKCJiIik7Ci0vLyAgIHJl
dHVybiB2OwotLy8gfQotLy8KLS8vIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKENoYXJTZXF1ZW5j
ZSwKLS8vICAgICAgICAgICAgICAgICAgICAgICAgIFN0bFN0cmluZ1Rlc3QsCi0vLyAgICAgICAg
ICAgICAgICAgICAgICAgICBWYWx1ZXNJbihHZXRQYXJhbWV0ZXJTdHJpbmdzKCkpKTsKLS8vCi0v
LwotLy8gVGhpcyB3aWxsIGFsc28gaW5zdGFudGlhdGUgdGVzdHMgZnJvbSBDaGFyVGVzdAotLy8g
ZWFjaCB3aXRoIHBhcmFtZXRlciB2YWx1ZXMgJ2EnIGFuZCAnYic6Ci0vLwotLy8gOjpzdGQ6Omxp
c3Q8Y2hhcj4gR2V0UGFyYW1ldGVyQ2hhcnMoKSB7Ci0vLyAgIDo6c3RkOjpsaXN0PGNoYXI+IGxp
c3Q7Ci0vLyAgIGxpc3QucHVzaF9iYWNrKCdhJyk7Ci0vLyAgIGxpc3QucHVzaF9iYWNrKCdiJyk7
Ci0vLyAgIHJldHVybiBsaXN0OwotLy8gfQotLy8gOjpzdGQ6Omxpc3Q8Y2hhcj4gbCA9IEdldFBh
cmFtZXRlckNoYXJzKCk7Ci0vLyBJTlNUQU5USUFURV9URVNUX0NBU0VfUChDaGFyU2VxdWVuY2Uy
LAotLy8gICAgICAgICAgICAgICAgICAgICAgICAgQ2hhclRlc3QsCi0vLyAgICAgICAgICAgICAg
ICAgICAgICAgICBWYWx1ZXNJbihsLmJlZ2luKCksIGwuZW5kKCkpKTsKLS8vCi10ZW1wbGF0ZSA8
dHlwZW5hbWUgRm9yd2FyZEl0ZXJhdG9yPgotaW50ZXJuYWw6OlBhcmFtR2VuZXJhdG9yPAotICB0
eXBlbmFtZSA6OnRlc3Rpbmc6OmludGVybmFsOjpJdGVyYXRvclRyYWl0czxGb3J3YXJkSXRlcmF0
b3I+Ojp2YWx1ZV90eXBlPgotVmFsdWVzSW4oRm9yd2FyZEl0ZXJhdG9yIGJlZ2luLCBGb3J3YXJk
SXRlcmF0b3IgZW5kKSB7Ci0gIHR5cGVkZWYgdHlwZW5hbWUgOjp0ZXN0aW5nOjppbnRlcm5hbDo6
SXRlcmF0b3JUcmFpdHM8Rm9yd2FyZEl0ZXJhdG9yPgotICAgICAgOjp2YWx1ZV90eXBlIFBhcmFt
VHlwZTsKLSAgcmV0dXJuIGludGVybmFsOjpQYXJhbUdlbmVyYXRvcjxQYXJhbVR5cGU+KAotICAg
ICAgbmV3IGludGVybmFsOjpWYWx1ZXNJbkl0ZXJhdG9yUmFuZ2VHZW5lcmF0b3I8UGFyYW1UeXBl
PihiZWdpbiwgZW5kKSk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBULCBzaXplX3QgTj4KLWlu
dGVybmFsOjpQYXJhbUdlbmVyYXRvcjxUPiBWYWx1ZXNJbihjb25zdCBUICgmYXJyYXkpW05dKSB7
Ci0gIHJldHVybiBWYWx1ZXNJbihhcnJheSwgYXJyYXkgKyBOKTsKLX0KLQotdGVtcGxhdGUgPGNs
YXNzIENvbnRhaW5lcj4KLWludGVybmFsOjpQYXJhbUdlbmVyYXRvcjx0eXBlbmFtZSBDb250YWlu
ZXI6OnZhbHVlX3R5cGU+IFZhbHVlc0luKAotICAgIGNvbnN0IENvbnRhaW5lciYgY29udGFpbmVy
KSB7Ci0gIHJldHVybiBWYWx1ZXNJbihjb250YWluZXIuYmVnaW4oKSwgY29udGFpbmVyLmVuZCgp
KTsKLX0KLQotLy8gVmFsdWVzKCkgYWxsb3dzIGdlbmVyYXRpbmcgdGVzdHMgZnJvbSBleHBsaWNp
dGx5IHNwZWNpZmllZCBsaXN0IG9mCi0vLyBwYXJhbWV0ZXJzLgotLy8KLS8vIFN5bm9wc2lzOgot
Ly8gVmFsdWVzKFQgdjEsIFQgdjIsIC4uLiwgVCB2TikKLS8vICAgLSByZXR1cm5zIGEgZ2VuZXJh
dG9yIHByb2R1Y2luZyBzZXF1ZW5jZXMgd2l0aCBlbGVtZW50cyB2MSwgdjIsIC4uLiwgdk4uCi0v
LwotLy8gRm9yIGV4YW1wbGUsIHRoaXMgaW5zdGFudGlhdGVzIHRlc3RzIGZyb20gdGVzdCBjYXNl
IEJhclRlc3QgZWFjaAotLy8gd2l0aCB2YWx1ZXMgIm9uZSIsICJ0d28iLCBhbmQgInRocmVlIjoK
LS8vCi0vLyBJTlNUQU5USUFURV9URVNUX0NBU0VfUChOdW1TZXF1ZW5jZSwgQmFyVGVzdCwgVmFs
dWVzKCJvbmUiLCAidHdvIiwgInRocmVlIikpOwotLy8KLS8vIFRoaXMgaW5zdGFudGlhdGVzIHRl
c3RzIGZyb20gdGVzdCBjYXNlIEJhelRlc3QgZWFjaCB3aXRoIHZhbHVlcyAxLCAyLCAzLjUuCi0v
LyBUaGUgZXhhY3QgdHlwZSBvZiB2YWx1ZXMgd2lsbCBkZXBlbmQgb24gdGhlIHR5cGUgb2YgcGFy
YW1ldGVyIGluIEJhelRlc3QuCi0vLwotLy8gSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoRmxvYXRp
bmdOdW1iZXJzLCBCYXpUZXN0LCBWYWx1ZXMoMSwgMiwgMy41KSk7Ci0vLwotLy8gQ3VycmVudGx5
LCBWYWx1ZXMoKSBzdXBwb3J0cyBmcm9tIDEgdG8gJG4gcGFyYW1ldGVycy4KLS8vCi0kcmFuZ2Ug
aSAxLi5uCi0kZm9yIGkgW1sKLSRyYW5nZSBqIDEuLmkKLQotdGVtcGxhdGUgPCRmb3IgaiwgW1t0
eXBlbmFtZSBUJGpdXT4KLWludGVybmFsOjpWYWx1ZUFycmF5JGk8JGZvciBqLCBbW1Qkal1dPiBW
YWx1ZXMoJGZvciBqLCBbW1QkaiB2JGpdXSkgewotICByZXR1cm4gaW50ZXJuYWw6OlZhbHVlQXJy
YXkkaTwkZm9yIGosIFtbVCRqXV0+KCRmb3IgaiwgW1t2JGpdXSk7Ci19Ci0KLV1dCi0KLS8vIEJv
b2woKSBhbGxvd3MgZ2VuZXJhdGluZyB0ZXN0cyB3aXRoIHBhcmFtZXRlcnMgaW4gYSBzZXQgb2Yg
KGZhbHNlLCB0cnVlKS4KLS8vCi0vLyBTeW5vcHNpczoKLS8vIEJvb2woKQotLy8gICAtIHJldHVy
bnMgYSBnZW5lcmF0b3IgcHJvZHVjaW5nIHNlcXVlbmNlcyB3aXRoIGVsZW1lbnRzIHtmYWxzZSwg
dHJ1ZX0uCi0vLwotLy8gSXQgaXMgdXNlZnVsIHdoZW4gdGVzdGluZyBjb2RlIHRoYXQgZGVwZW5k
cyBvbiBCb29sZWFuIGZsYWdzLiBDb21iaW5hdGlvbnMKLS8vIG9mIG11bHRpcGxlIGZsYWdzIGNh
biBiZSB0ZXN0ZWQgd2hlbiBzZXZlcmFsIEJvb2woKSdzIGFyZSBjb21iaW5lZCB1c2luZwotLy8g
Q29tYmluZSgpIGZ1bmN0aW9uLgotLy8KLS8vIEluIHRoZSBmb2xsb3dpbmcgZXhhbXBsZSBhbGwg
dGVzdHMgaW4gdGhlIHRlc3QgY2FzZSBGbGFnRGVwZW5kZW50VGVzdAotLy8gd2lsbCBiZSBpbnN0
YW50aWF0ZWQgdHdpY2Ugd2l0aCBwYXJhbWV0ZXJzIGZhbHNlIGFuZCB0cnVlLgotLy8KLS8vIGNs
YXNzIEZsYWdEZXBlbmRlbnRUZXN0IDogcHVibGljIHRlc3Rpbmc6OlRlc3RXaXRoUGFyYW08Ym9v
bD4gewotLy8gICB2aXJ0dWFsIHZvaWQgU2V0VXAoKSB7Ci0vLyAgICAgZXh0ZXJuYWxfZmxhZyA9
IEdldFBhcmFtKCk7Ci0vLyAgIH0KLS8vIH0KLS8vIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEJv
b2xTZXF1ZW5jZSwgRmxhZ0RlcGVuZGVudFRlc3QsIEJvb2woKSk7Ci0vLwotaW5saW5lIGludGVy
bmFsOjpQYXJhbUdlbmVyYXRvcjxib29sPiBCb29sKCkgewotICByZXR1cm4gVmFsdWVzKGZhbHNl
LCB0cnVlKTsKLX0KLQotIyBpZiBHVEVTVF9IQVNfQ09NQklORQotLy8gQ29tYmluZSgpIGFsbG93
cyB0aGUgdXNlciB0byBjb21iaW5lIHR3byBvciBtb3JlIHNlcXVlbmNlcyB0byBwcm9kdWNlCi0v
LyB2YWx1ZXMgb2YgYSBDYXJ0ZXNpYW4gcHJvZHVjdCBvZiB0aG9zZSBzZXF1ZW5jZXMnIGVsZW1l
bnRzLgotLy8KLS8vIFN5bm9wc2lzOgotLy8gQ29tYmluZShnZW4xLCBnZW4yLCAuLi4sIGdlbk4p
Ci0vLyAgIC0gcmV0dXJucyBhIGdlbmVyYXRvciBwcm9kdWNpbmcgc2VxdWVuY2VzIHdpdGggZWxl
bWVudHMgY29taW5nIGZyb20KLS8vICAgICB0aGUgQ2FydGVzaWFuIHByb2R1Y3Qgb2YgZWxlbWVu
dHMgZnJvbSB0aGUgc2VxdWVuY2VzIGdlbmVyYXRlZCBieQotLy8gICAgIGdlbjEsIGdlbjIsIC4u
LiwgZ2VuTi4gVGhlIHNlcXVlbmNlIGVsZW1lbnRzIHdpbGwgaGF2ZSBhIHR5cGUgb2YKLS8vICAg
ICB0dXBsZTxUMSwgVDIsIC4uLiwgVE4+IHdoZXJlIFQxLCBUMiwgLi4uLCBUTiBhcmUgdGhlIHR5
cGVzCi0vLyAgICAgb2YgZWxlbWVudHMgZnJvbSBzZXF1ZW5jZXMgcHJvZHVjZXMgYnkgZ2VuMSwg
Z2VuMiwgLi4uLCBnZW5OLgotLy8KLS8vIENvbWJpbmUgY2FuIGhhdmUgdXAgdG8gJG1heHR1cGxl
IGFyZ3VtZW50cy4gVGhpcyBudW1iZXIgaXMgY3VycmVudGx5IGxpbWl0ZWQKLS8vIGJ5IHRoZSBt
YXhpbXVtIG51bWJlciBvZiBlbGVtZW50cyBpbiB0aGUgdHVwbGUgaW1wbGVtZW50YXRpb24gdXNl
ZCBieSBHb29nbGUKLS8vIFRlc3QuCi0vLwotLy8gRXhhbXBsZToKLS8vCi0vLyBUaGlzIHdpbGwg
aW5zdGFudGlhdGUgdGVzdHMgaW4gdGVzdCBjYXNlIEFuaW1hbFRlc3QgZWFjaCBvbmUgd2l0aAot
Ly8gdGhlIHBhcmFtZXRlciB2YWx1ZXMgdHVwbGUoImNhdCIsIEJMQUNLKSwgdHVwbGUoImNhdCIs
IFdISVRFKSwKLS8vIHR1cGxlKCJkb2ciLCBCTEFDSyksIGFuZCB0dXBsZSgiZG9nIiwgV0hJVEUp
OgotLy8KLS8vIGVudW0gQ29sb3IgeyBCTEFDSywgR1JBWSwgV0hJVEUgfTsKLS8vIGNsYXNzIEFu
aW1hbFRlc3QKLS8vICAgICA6IHB1YmxpYyB0ZXN0aW5nOjpUZXN0V2l0aFBhcmFtPHR1cGxlPGNv
bnN0IGNoYXIqLCBDb2xvcj4gPiB7Li4ufTsKLS8vCi0vLyBURVNUX1AoQW5pbWFsVGVzdCwgQW5p
bWFsTG9va3NOaWNlKSB7Li4ufQotLy8KLS8vIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QKEFuaW1h
bFZhcmlhdGlvbnMsIEFuaW1hbFRlc3QsCi0vLyAgICAgICAgICAgICAgICAgICAgICAgICBDb21i
aW5lKFZhbHVlcygiY2F0IiwgImRvZyIpLAotLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBWYWx1ZXMoQkxBQ0ssIFdISVRFKSkpOwotLy8KLS8vIFRoaXMgd2lsbCBpbnN0YW50aWF0
ZSB0ZXN0cyBpbiBGbGFnRGVwZW5kZW50VGVzdCB3aXRoIGFsbCB2YXJpYXRpb25zIG9mIHR3bwot
Ly8gQm9vbGVhbiBmbGFnczoKLS8vCi0vLyBjbGFzcyBGbGFnRGVwZW5kZW50VGVzdAotLy8gICAg
IDogcHVibGljIHRlc3Rpbmc6OlRlc3RXaXRoUGFyYW08dHVwbGU8Ym9vbCwgYm9vbD4gPiB7Ci0v
LyAgIHZpcnR1YWwgdm9pZCBTZXRVcCgpIHsKLS8vICAgICAvLyBBc3NpZ25zIGV4dGVybmFsX2Zs
YWdfMSBhbmQgZXh0ZXJuYWxfZmxhZ18yIHZhbHVlcyBmcm9tIHRoZSB0dXBsZS4KLS8vICAgICB0
aWUoZXh0ZXJuYWxfZmxhZ18xLCBleHRlcm5hbF9mbGFnXzIpID0gR2V0UGFyYW0oKTsKLS8vICAg
fQotLy8gfTsKLS8vCi0vLyBURVNUX1AoRmxhZ0RlcGVuZGVudFRlc3QsIFRlc3RGZWF0dXJlMSkg
ewotLy8gICAvLyBUZXN0IHlvdXIgY29kZSB1c2luZyBleHRlcm5hbF9mbGFnXzEgYW5kIGV4dGVy
bmFsX2ZsYWdfMiBoZXJlLgotLy8gfQotLy8gSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AoVHdvQm9v
bFNlcXVlbmNlLCBGbGFnRGVwZW5kZW50VGVzdCwKLS8vICAgICAgICAgICAgICAgICAgICAgICAg
IENvbWJpbmUoQm9vbCgpLCBCb29sKCkpKTsKLS8vCi0kcmFuZ2UgaSAyLi5tYXh0dXBsZQotJGZv
ciBpIFtbCi0kcmFuZ2UgaiAxLi5pCi0KLXRlbXBsYXRlIDwkZm9yIGosIFtbdHlwZW5hbWUgR2Vu
ZXJhdG9yJGpdXT4KLWludGVybmFsOjpDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyJGk8JGZvciBqLCBb
W0dlbmVyYXRvciRqXV0+IENvbWJpbmUoCi0gICAgJGZvciBqLCBbW2NvbnN0IEdlbmVyYXRvciRq
JiBnJGpdXSkgewotICByZXR1cm4gaW50ZXJuYWw6OkNhcnRlc2lhblByb2R1Y3RIb2xkZXIkaTwk
Zm9yIGosIFtbR2VuZXJhdG9yJGpdXT4oCi0gICAgICAkZm9yIGosIFtbZyRqXV0pOwotfQotCi1d
XQotIyBlbmRpZiAgLy8gR1RFU1RfSEFTX0NPTUJJTkUKLQotIyBkZWZpbmUgVEVTVF9QKHRlc3Rf
Y2FzZV9uYW1lLCB0ZXN0X25hbWUpIFwKLSAgY2xhc3MgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0
ZXN0X2Nhc2VfbmFtZSwgdGVzdF9uYW1lKSBcCi0gICAgICA6IHB1YmxpYyB0ZXN0X2Nhc2VfbmFt
ZSB7IFwKLSAgIHB1YmxpYzogXAotICAgIEdURVNUX1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9jYXNl
X25hbWUsIHRlc3RfbmFtZSkoKSB7fSBcCi0gICAgdmlydHVhbCB2b2lkIFRlc3RCb2R5KCk7IFwK
LSAgIHByaXZhdGU6IFwKLSAgICBzdGF0aWMgaW50IEFkZFRvUmVnaXN0cnkoKSB7IFwKLSAgICAg
IDo6dGVzdGluZzo6VW5pdFRlc3Q6OkdldEluc3RhbmNlKCktPnBhcmFtZXRlcml6ZWRfdGVzdF9y
ZWdpc3RyeSgpLiBcCi0gICAgICAgICAgR2V0VGVzdENhc2VQYXR0ZXJuSG9sZGVyPHRlc3RfY2Fz
ZV9uYW1lPihcCi0gICAgICAgICAgICAgICN0ZXN0X2Nhc2VfbmFtZSwgXAotICAgICAgICAgICAg
ICA6OnRlc3Rpbmc6OmludGVybmFsOjpDb2RlTG9jYXRpb24oXAotICAgICAgICAgICAgICAgICAg
X19GSUxFX18sIF9fTElORV9fKSktPkFkZFRlc3RQYXR0ZXJuKFwKLSAgICAgICAgICAgICAgICAg
ICAgICBHVEVTVF9TVFJJTkdJRllfKHRlc3RfY2FzZV9uYW1lKSwgXAotICAgICAgICAgICAgICAg
ICAgICAgIEdURVNUX1NUUklOR0lGWV8odGVzdF9uYW1lKSwgXAotICAgICAgICAgICAgICAgICAg
ICAgIG5ldyA6OnRlc3Rpbmc6OmludGVybmFsOjpUZXN0TWV0YUZhY3Rvcnk8IFwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyhcCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2VfbmFtZSwgdGVzdF9uYW1lKT4oKSk7IFwKLSAgICAg
IHJldHVybiAwOyBcCi0gICAgfSBcCi0gICAgc3RhdGljIGludCBndGVzdF9yZWdpc3RlcmluZ19k
dW1teV8gR1RFU1RfQVRUUklCVVRFX1VOVVNFRF87IFwKLSAgICBHVEVTVF9ESVNBTExPV19DT1BZ
X0FORF9BU1NJR05fKFwKLSAgICAgICAgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0X2Nhc2Vf
bmFtZSwgdGVzdF9uYW1lKSk7IFwKLSAgfTsgXAotICBpbnQgR1RFU1RfVEVTVF9DTEFTU19OQU1F
Xyh0ZXN0X2Nhc2VfbmFtZSwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X25h
bWUpOjpndGVzdF9yZWdpc3RlcmluZ19kdW1teV8gPSBcCi0gICAgICBHVEVTVF9URVNUX0NMQVNT
X05BTUVfKHRlc3RfY2FzZV9uYW1lLCB0ZXN0X25hbWUpOjpBZGRUb1JlZ2lzdHJ5KCk7IFwKLSAg
dm9pZCBHVEVTVF9URVNUX0NMQVNTX05BTUVfKHRlc3RfY2FzZV9uYW1lLCB0ZXN0X25hbWUpOjpU
ZXN0Qm9keSgpCi0KLS8vIFRoZSBvcHRpb25hbCBsYXN0IGFyZ3VtZW50IHRvIElOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QIGFsbG93cyB0aGUgdXNlcgotLy8gdG8gc3BlY2lmeSBhIGZ1bmN0aW9uIG9y
IGZ1bmN0b3IgdGhhdCBnZW5lcmF0ZXMgY3VzdG9tIHRlc3QgbmFtZSBzdWZmaXhlcwotLy8gYmFz
ZWQgb24gdGhlIHRlc3QgcGFyYW1ldGVycy4gVGhlIGZ1bmN0aW9uIHNob3VsZCBhY2NlcHQgb25l
IGFyZ3VtZW50IG9mCi0vLyB0eXBlIHRlc3Rpbmc6OlRlc3RQYXJhbUluZm88Y2xhc3MgUGFyYW1U
eXBlPiwgYW5kIHJldHVybiBzdGQ6OnN0cmluZy4KLS8vCi0vLyB0ZXN0aW5nOjpQcmludFRvU3Ry
aW5nUGFyYW1OYW1lIGlzIGEgYnVpbHRpbiB0ZXN0IHN1ZmZpeCBnZW5lcmF0b3IgdGhhdAotLy8g
cmV0dXJucyB0aGUgdmFsdWUgb2YgdGVzdGluZzo6UHJpbnRUb1N0cmluZyhHZXRQYXJhbSgpKS4K
LS8vCi0vLyBOb3RlOiB0ZXN0IG5hbWVzIG11c3QgYmUgbm9uLWVtcHR5LCB1bmlxdWUsIGFuZCBt
YXkgb25seSBjb250YWluIEFTQ0lJCi0vLyBhbHBoYW51bWVyaWMgY2hhcmFjdGVycyBvciB1bmRl
cnNjb3JlLiBCZWNhdXNlIFByaW50VG9TdHJpbmcgYWRkcyBxdW90ZXMKLS8vIHRvIHN0ZDo6c3Ry
aW5nIGFuZCBDIHN0cmluZ3MsIGl0IHdvbid0IHdvcmsgZm9yIHRoZXNlIHR5cGVzLgotCi0jIGRl
ZmluZSBJTlNUQU5USUFURV9URVNUX0NBU0VfUChwcmVmaXgsIHRlc3RfY2FzZV9uYW1lLCBnZW5l
cmF0b3IsIC4uLikgXAotICBzdGF0aWMgOjp0ZXN0aW5nOjppbnRlcm5hbDo6UGFyYW1HZW5lcmF0
b3I8dGVzdF9jYXNlX25hbWU6OlBhcmFtVHlwZT4gXAotICAgICAgZ3Rlc3RfIyNwcmVmaXgjI3Rl
c3RfY2FzZV9uYW1lIyNfRXZhbEdlbmVyYXRvcl8oKSB7IHJldHVybiBnZW5lcmF0b3I7IH0gXAot
ICBzdGF0aWMgOjpzdGQ6OnN0cmluZyBndGVzdF8jI3ByZWZpeCMjdGVzdF9jYXNlX25hbWUjI19F
dmFsR2VuZXJhdGVOYW1lXyggXAotICAgICAgY29uc3QgOjp0ZXN0aW5nOjpUZXN0UGFyYW1JbmZv
PHRlc3RfY2FzZV9uYW1lOjpQYXJhbVR5cGU+JiBpbmZvKSB7IFwKLSAgICByZXR1cm4gOjp0ZXN0
aW5nOjppbnRlcm5hbDo6R2V0UGFyYW1OYW1lR2VuPHRlc3RfY2FzZV9uYW1lOjpQYXJhbVR5cGU+
IFwKLSAgICAgICAgKF9fVkFfQVJHU19fKShpbmZvKTsgXAotICB9IFwKLSAgc3RhdGljIGludCBn
dGVzdF8jI3ByZWZpeCMjdGVzdF9jYXNlX25hbWUjI19kdW1teV8gR1RFU1RfQVRUUklCVVRFX1VO
VVNFRF8gPSBcCi0gICAgICA6OnRlc3Rpbmc6OlVuaXRUZXN0OjpHZXRJbnN0YW5jZSgpLT5wYXJh
bWV0ZXJpemVkX3Rlc3RfcmVnaXN0cnkoKS4gXAotICAgICAgICAgIEdldFRlc3RDYXNlUGF0dGVy
bkhvbGRlcjx0ZXN0X2Nhc2VfbmFtZT4oXAotICAgICAgICAgICAgICAjdGVzdF9jYXNlX25hbWUs
IFwKLSAgICAgICAgICAgICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6Q29kZUxvY2F0aW9uKFwKLSAg
ICAgICAgICAgICAgICAgIF9fRklMRV9fLCBfX0xJTkVfXykpLT5BZGRUZXN0Q2FzZUluc3RhbnRp
YXRpb24oXAotICAgICAgICAgICAgICAgICAgICAgICNwcmVmaXgsIFwKLSAgICAgICAgICAgICAg
ICAgICAgICAmZ3Rlc3RfIyNwcmVmaXgjI3Rlc3RfY2FzZV9uYW1lIyNfRXZhbEdlbmVyYXRvcl8s
IFwKLSAgICAgICAgICAgICAgICAgICAgICAmZ3Rlc3RfIyNwcmVmaXgjI3Rlc3RfY2FzZV9uYW1l
IyNfRXZhbEdlbmVyYXRlTmFtZV8sIFwKLSAgICAgICAgICAgICAgICAgICAgICBfX0ZJTEVfXywg
X19MSU5FX18pCi0KLX0gIC8vIG5hbWVzcGFjZSB0ZXN0aW5nCi0KLSNlbmRpZiAgLy8gR1RFU1Rf
SU5DTFVERV9HVEVTVF9HVEVTVF9QQVJBTV9URVNUX0hfCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QtcHJpbnRlcnMu
aCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9n
dGVzdC1wcmludGVycy5oCmluZGV4IDUxODY1Zjg0ZTZmNmZhM2UwZmNlMTk4NzAwYjVhNWRmZTVm
NjU1MGUuLjQwN2QxZjE4NTk2MjliODkxYjZlY2IyYzY3OTcyODY2MDgxYmQxNGUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9n
dGVzdC1wcmludGVycy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9z
cmMvaW5jbHVkZS9ndGVzdC9ndGVzdC1wcmludGVycy5oCkBAIC0xMDAsMTcgKzEwMCwxNiBAQAog
I2lmbmRlZiBHVEVTVF9JTkNMVURFX0dURVNUX0dURVNUX1BSSU5URVJTX0hfCiAjZGVmaW5lIEdU
RVNUX0lOQ0xVREVfR1RFU1RfR1RFU1RfUFJJTlRFUlNfSF8KIAorI2luY2x1ZGUgPGZ1bmN0aW9u
YWw+CiAjaW5jbHVkZSA8b3N0cmVhbT4gIC8vIE5PTElOVAogI2luY2x1ZGUgPHNzdHJlYW0+CiAj
aW5jbHVkZSA8c3RyaW5nPgorI2luY2x1ZGUgPHR1cGxlPgorI2luY2x1ZGUgPHR5cGVfdHJhaXRz
PgogI2luY2x1ZGUgPHV0aWxpdHk+CiAjaW5jbHVkZSA8dmVjdG9yPgotI2luY2x1ZGUgImd0ZXN0
L2ludGVybmFsL2d0ZXN0LXBvcnQuaCIKICNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9ndGVzdC1p
bnRlcm5hbC5oIgotCi0jaWYgR1RFU1RfSEFTX1NURF9UVVBMRV8KLSMgaW5jbHVkZSA8dHVwbGU+
Ci0jZW5kaWYKKyNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9ndGVzdC1wb3J0LmgiCiAKICNpZiBH
VEVTVF9IQVNfQUJTTAogI2luY2x1ZGUgImFic2wvc3RyaW5ncy9zdHJpbmdfdmlldy5oIgpAQCAt
MTM2LDkgKzEzNSw5IEBAIGVudW0gVHlwZUtpbmQgewogICBrUHJvdG9idWYsICAgICAgICAgICAg
ICAvLyBhIHByb3RvYnVmIHR5cGUKICAga0NvbnZlcnRpYmxlVG9JbnRlZ2VyLCAgLy8gYSB0eXBl
IGltcGxpY2l0bHkgY29udmVydGlibGUgdG8gQmlnZ2VzdEludAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAvLyAoZS5nLiBhIG5hbWVkIG9yIHVubmFtZWQgZW51bSB0eXBlKQotI2lmIEdURVNU
X0hBU19BQlNMCisjaWYgR1RFU1RfSU5URVJOQUxfSEFTX1NUUklOR19WSUVXCiAgIGtDb252ZXJ0
aWJsZVRvU3RyaW5nVmlldywgIC8vIGEgdHlwZSBpbXBsaWNpdGx5IGNvbnZlcnRpYmxlIHRvCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGFic2w6OnN0cmluZ192aWV3CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8vIGFic2w6OnN0cmluZ192aWV3IG9yIHN0ZDo6c3RyaW5n
X3ZpZXcKICNlbmRpZgogICBrT3RoZXJUeXBlICAvLyBhbnl0aGluZyBlbHNlCiB9OwpAQCAtMTUy
LDkgKzE1MSwxMCBAQCBjbGFzcyBUeXBlV2l0aG91dEZvcm1hdHRlciB7CiAgcHVibGljOgogICAv
LyBUaGlzIGRlZmF1bHQgdmVyc2lvbiBpcyBjYWxsZWQgd2hlbiBrVHlwZUtpbmQgaXMga090aGVy
VHlwZS4KICAgc3RhdGljIHZvaWQgUHJpbnRWYWx1ZShjb25zdCBUJiB2YWx1ZSwgOjpzdGQ6Om9z
dHJlYW0qIG9zKSB7Ci0gICAgUHJpbnRCeXRlc0luT2JqZWN0VG8oc3RhdGljX2Nhc3Q8Y29uc3Qg
dW5zaWduZWQgY2hhcio+KAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWludGVycHJl
dF9jYXN0PGNvbnN0IHZvaWQqPigmdmFsdWUpKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBz
aXplb2YodmFsdWUpLCBvcyk7CisgICAgUHJpbnRCeXRlc0luT2JqZWN0VG8oCisgICAgICAgIHN0
YXRpY19jYXN0PGNvbnN0IHVuc2lnbmVkIGNoYXIqPigKKyAgICAgICAgICAgIHJlaW50ZXJwcmV0
X2Nhc3Q8Y29uc3Qgdm9pZCo+KHN0ZDo6YWRkcmVzc29mKHZhbHVlKSkpLAorICAgICAgICBzaXpl
b2YodmFsdWUpLCBvcyk7CiAgIH0KIH07CiAKQEAgLTE5MSwxMiArMTkxLDEzIEBAIGNsYXNzIFR5
cGVXaXRob3V0Rm9ybWF0dGVyPFQsIGtDb252ZXJ0aWJsZVRvSW50ZWdlcj4gewogICB9CiB9Owog
Ci0jaWYgR1RFU1RfSEFTX0FCU0wKKyNpZiBHVEVTVF9JTlRFUk5BTF9IQVNfU1RSSU5HX1ZJRVcK
IHRlbXBsYXRlIDx0eXBlbmFtZSBUPgogY2xhc3MgVHlwZVdpdGhvdXRGb3JtYXR0ZXI8VCwga0Nv
bnZlcnRpYmxlVG9TdHJpbmdWaWV3PiB7CiAgcHVibGljOgogICAvLyBTaW5jZSBUIGhhcyBuZWl0
aGVyIG9wZXJhdG9yPDwgbm9yIFByaW50VG8oKSBidXQgY2FuIGJlIGltcGxpY2l0bHkKLSAgLy8g
Y29udmVydGVkIHRvIGFic2w6OnN0cmluZ192aWV3LCB3ZSBwcmludCBpdCBhcyBhIGFic2w6OnN0
cmluZ192aWV3LgorICAvLyBjb252ZXJ0ZWQgdG8gYWJzbDo6c3RyaW5nX3ZpZXcsIHdlIHByaW50
IGl0IGFzIGEgYWJzbDo6c3RyaW5nX3ZpZXcKKyAgLy8gKG9yIHN0ZDo6c3RyaW5nX3ZpZXcpLgog
ICAvLwogICAvLyBOb3RlOiB0aGUgaW1wbGVtZW50YXRpb24gaXMgZnVydGhlciBiZWxvdywgYXMg
aXQgZGVwZW5kcyBvbgogICAvLyBpbnRlcm5hbDo6UHJpbnRUbyBzeW1ib2wgd2hpY2ggaXMgZGVm
aW5lZCBsYXRlciBpbiB0aGUgZmlsZS4KQEAgLTIzMywxMyArMjM0LDEzIEBAIHRlbXBsYXRlIDx0
eXBlbmFtZSBDaGFyLCB0eXBlbmFtZSBDaGFyVHJhaXRzLCB0eXBlbmFtZSBUPgogICAgIDo6c3Rk
OjpiYXNpY19vc3RyZWFtPENoYXIsIENoYXJUcmFpdHM+JiBvcywgY29uc3QgVCYgeCkgewogICBU
eXBlV2l0aG91dEZvcm1hdHRlcjxULCAoaW50ZXJuYWw6OklzQVByb3RvY29sTWVzc2FnZTxUPjo6
dmFsdWUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGtQcm90b2J1ZgotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDogaW50ZXJuYWw6OkltcGxpY2l0bHlDb252ZXJ0aWJs
ZTwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IHN0ZDo6aXNfY29udmVydGlibGU8
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVCYsIGludGVybmFs
OjpCaWdnZXN0SW50Pjo6dmFsdWUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICA/IGtDb252ZXJ0aWJsZVRvSW50ZWdlcgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDoKLSNpZiBHVEVTVF9IQVNfQUJTTAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGludGVybmFsOjpJbXBsaWNpdGx5Q29udmVydGlibGU8Ci0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFQmLCBhYnNsOjpzdHJpbmdfdmlldz46
OnZhbHVlCisjaWYgR1RFU1RfSU5URVJOQUxfSEFTX1NUUklOR19WSUVXCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgc3RkOjppc19jb252ZXJ0aWJsZTwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVCYsIGludGVybmFsOjpTdHJpbmdW
aWV3Pjo6dmFsdWUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBr
Q29udmVydGlibGVUb1N0cmluZ1ZpZXcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgOgogI2VuZGlmCkBAIC0yNjYsMTAgKzI2Nyw4IEBAIHZvaWQgRGVmYXVsdFByaW50
Tm9uQ29udGFpbmVyVG8oY29uc3QgVCYgdmFsdWUsIDo6c3RkOjpvc3RyZWFtKiBvcykgewogICAv
LyA3LjMuNC0xIFtuYW1lc3BhY2UudWRpcl0uICBUaGlzIGFsbG93cyB1cyB0byBmYWxsIGJhY2sg
b250bwogICAvLyB0ZXN0aW5nOjppbnRlcm5hbDI6Om9wZXJhdG9yPDwgaW4gY2FzZSBUIGRvZXNu
J3QgY29tZSB3aXRoIGEgPDwKICAgLy8gb3BlcmF0b3IuCi0gIC8vCi0gIC8vIFdlIGNhbm5vdCB3
cml0ZSAndXNpbmcgOjp0ZXN0aW5nOjppbnRlcm5hbDI6Om9wZXJhdG9yPDw7Jywgd2hpY2gKLSAg
Ly8gZ2NjIDMuMyBmYWlscyB0byBjb21waWxlIGR1ZSB0byBhIGNvbXBpbGVyIGJ1Zy4KLSAgdXNp
bmcgbmFtZXNwYWNlIDo6dGVzdGluZzo6aW50ZXJuYWwyOyAgLy8gTk9MSU5UCisKKyAgdXNpbmcg
Ojp0ZXN0aW5nOjppbnRlcm5hbDI6Om9wZXJhdG9yPDw7CiAKICAgLy8gQXNzdW1pbmcgVCBpcyBk
ZWZpbmVkIGluIG5hbWVzcGFjZSBmb28sIGluIHRoZSBuZXh0IHN0YXRlbWVudCwKICAgLy8gdGhl
IGNvbXBpbGVyIHdpbGwgY29uc2lkZXIgYWxsIG9mOgpAQCAtMzU4LDE2ICszNTcsNiBAQCBHVEVT
VF9JTVBMX0ZPUk1BVF9DX1NUUklOR19BU19QT0lOVEVSXyhjb25zdCB3Y2hhcl90KTsKIEdURVNU
X0lNUExfRk9STUFUX0NfU1RSSU5HX0FTX1NUUklOR18oY2hhciwgOjpzdGQ6OnN0cmluZyk7CiBH
VEVTVF9JTVBMX0ZPUk1BVF9DX1NUUklOR19BU19TVFJJTkdfKGNvbnN0IGNoYXIsIDo6c3RkOjpz
dHJpbmcpOwogCi0jaWYgR1RFU1RfSEFTX0dMT0JBTF9TVFJJTkcKLUdURVNUX0lNUExfRk9STUFU
X0NfU1RSSU5HX0FTX1NUUklOR18oY2hhciwgOjpzdHJpbmcpOwotR1RFU1RfSU1QTF9GT1JNQVRf
Q19TVFJJTkdfQVNfU1RSSU5HXyhjb25zdCBjaGFyLCA6OnN0cmluZyk7Ci0jZW5kaWYKLQotI2lm
IEdURVNUX0hBU19HTE9CQUxfV1NUUklORwotR1RFU1RfSU1QTF9GT1JNQVRfQ19TVFJJTkdfQVNf
U1RSSU5HXyh3Y2hhcl90LCA6OndzdHJpbmcpOwotR1RFU1RfSU1QTF9GT1JNQVRfQ19TVFJJTkdf
QVNfU1RSSU5HXyhjb25zdCB3Y2hhcl90LCA6OndzdHJpbmcpOwotI2VuZGlmCi0KICNpZiBHVEVT
VF9IQVNfU1REX1dTVFJJTkcKIEdURVNUX0lNUExfRk9STUFUX0NfU1RSSU5HX0FTX1NUUklOR18o
d2NoYXJfdCwgOjpzdGQ6OndzdHJpbmcpOwogR1RFU1RfSU1QTF9GT1JNQVRfQ19TVFJJTkdfQVNf
U1RSSU5HXyhjb25zdCB3Y2hhcl90LCA6OnN0ZDo6d3N0cmluZyk7CkBAIC00NDgsNyArNDM3LDcg
QEAgdm9pZCBEZWZhdWx0UHJpbnRUbyhXcmFwUHJpbnRlclR5cGU8a1ByaW50Q29udGFpbmVyPiAv
KiBkdW1teSAqLywKIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgogdm9pZCBEZWZhdWx0UHJpbnRUbyhX
cmFwUHJpbnRlclR5cGU8a1ByaW50UG9pbnRlcj4gLyogZHVtbXkgKi8sCiAgICAgICAgICAgICAg
ICAgICAgIFQqIHAsIDo6c3RkOjpvc3RyZWFtKiBvcykgewotICBpZiAocCA9PSBOVUxMKSB7Cisg
IGlmIChwID09IG51bGxwdHIpIHsKICAgICAqb3MgPDwgIk5VTEwiOwogICB9IGVsc2UgewogICAg
IC8vIFQgaXMgbm90IGEgZnVuY3Rpb24gdHlwZS4gIFdlIGp1c3QgY2FsbCA8PCB0byBwcmludCBw
LApAQCAtNDYwLDcgKzQ0OSw3IEBAIHZvaWQgRGVmYXVsdFByaW50VG8oV3JhcFByaW50ZXJUeXBl
PGtQcmludFBvaW50ZXI+IC8qIGR1bW15ICovLAogdGVtcGxhdGUgPHR5cGVuYW1lIFQ+CiB2b2lk
IERlZmF1bHRQcmludFRvKFdyYXBQcmludGVyVHlwZTxrUHJpbnRGdW5jdGlvblBvaW50ZXI+IC8q
IGR1bW15ICovLAogICAgICAgICAgICAgICAgICAgICBUKiBwLCA6OnN0ZDo6b3N0cmVhbSogb3Mp
IHsKLSAgaWYgKHAgPT0gTlVMTCkgeworICBpZiAocCA9PSBudWxscHRyKSB7CiAgICAgKm9zIDw8
ICJOVUxMIjsKICAgfSBlbHNlIHsKICAgICAvLyBUIGlzIGEgZnVuY3Rpb24gdHlwZSwgc28gJypv
cyA8PCBwJyBkb2Vzbid0IGRvIHdoYXQgd2Ugd2FudApAQCAtNTE1LDEzICs1MDQsOSBAQCB2b2lk
IFByaW50VG8oY29uc3QgVCYgdmFsdWUsIDo6c3RkOjpvc3RyZWFtKiBvcykgewogICAgICAgICAg
ICAgICAgICAgKHNpemVvZihJc0NvbnRhaW5lclRlc3Q8VD4oMCkpID09IHNpemVvZihJc0NvbnRh
aW5lcikpICYmCiAgICAgICAgICAgICAgICFJc1JlY3Vyc2l2ZUNvbnRhaW5lcjxUPjo6dmFsdWUK
ICAgICAgICAgICA/IGtQcmludENvbnRhaW5lcgotICAgICAgICAgIDogIWlzX3BvaW50ZXI8VD46
OnZhbHVlCisgICAgICAgICAgOiAhc3RkOjppc19wb2ludGVyPFQ+Ojp2YWx1ZQogICAgICAgICAg
ICAgICAgID8ga1ByaW50T3RoZXIKLSNpZiBHVEVTVF9MQU5HX0NYWDExCiAgICAgICAgICAgICAg
ICAgOiBzdGQ6OmlzX2Z1bmN0aW9uPHR5cGVuYW1lIHN0ZDo6cmVtb3ZlX3BvaW50ZXI8VD46OnR5
cGU+Ojp2YWx1ZQotI2Vsc2UKLSAgICAgICAgICAgICAgICA6ICFpbnRlcm5hbDo6SW1wbGljaXRs
eUNvbnZlcnRpYmxlPFQsIGNvbnN0IHZvaWQqPjo6dmFsdWUKLSNlbmRpZgogICAgICAgICAgICAg
ICAgICAgICAgID8ga1ByaW50RnVuY3Rpb25Qb2ludGVyCiAgICAgICAgICAgICAgICAgICAgICAg
OiBrUHJpbnRQb2ludGVyID4gKCksCiAgICAgICB2YWx1ZSwgb3MpOwpAQCAtNjAzLDI3ICs1ODgs
MTMgQEAgdm9pZCBQcmludFJhd0FycmF5VG8oY29uc3QgVCBhW10sIHNpemVfdCBjb3VudCwgOjpz
dGQ6Om9zdHJlYW0qIG9zKSB7CiAgIH0KIH0KIAotLy8gT3ZlcmxvYWRzIGZvciA6OnN0cmluZyBh
bmQgOjpzdGQ6OnN0cmluZy4KLSNpZiBHVEVTVF9IQVNfR0xPQkFMX1NUUklORwotR1RFU1RfQVBJ
XyB2b2lkIFByaW50U3RyaW5nVG8oY29uc3QgOjpzdHJpbmcmcywgOjpzdGQ6Om9zdHJlYW0qIG9z
KTsKLWlubGluZSB2b2lkIFByaW50VG8oY29uc3QgOjpzdHJpbmcmIHMsIDo6c3RkOjpvc3RyZWFt
KiBvcykgewotICBQcmludFN0cmluZ1RvKHMsIG9zKTsKLX0KLSNlbmRpZiAgLy8gR1RFU1RfSEFT
X0dMT0JBTF9TVFJJTkcKLQorLy8gT3ZlcmxvYWRzIGZvciA6OnN0ZDo6c3RyaW5nLgogR1RFU1Rf
QVBJXyB2b2lkIFByaW50U3RyaW5nVG8oY29uc3QgOjpzdGQ6OnN0cmluZyZzLCA6OnN0ZDo6b3N0
cmVhbSogb3MpOwogaW5saW5lIHZvaWQgUHJpbnRUbyhjb25zdCA6OnN0ZDo6c3RyaW5nJiBzLCA6
OnN0ZDo6b3N0cmVhbSogb3MpIHsKICAgUHJpbnRTdHJpbmdUbyhzLCBvcyk7CiB9CiAKLS8vIE92
ZXJsb2FkcyBmb3IgOjp3c3RyaW5nIGFuZCA6OnN0ZDo6d3N0cmluZy4KLSNpZiBHVEVTVF9IQVNf
R0xPQkFMX1dTVFJJTkcKLUdURVNUX0FQSV8gdm9pZCBQcmludFdpZGVTdHJpbmdUbyhjb25zdCA6
OndzdHJpbmcmcywgOjpzdGQ6Om9zdHJlYW0qIG9zKTsKLWlubGluZSB2b2lkIFByaW50VG8oY29u
c3QgOjp3c3RyaW5nJiBzLCA6OnN0ZDo6b3N0cmVhbSogb3MpIHsKLSAgUHJpbnRXaWRlU3RyaW5n
VG8ocywgb3MpOwotfQotI2VuZGlmICAvLyBHVEVTVF9IQVNfR0xPQkFMX1dTVFJJTkcKLQorLy8g
T3ZlcmxvYWRzIGZvciA6OnN0ZDo6d3N0cmluZy4KICNpZiBHVEVTVF9IQVNfU1REX1dTVFJJTkcK
IEdURVNUX0FQSV8gdm9pZCBQcmludFdpZGVTdHJpbmdUbyhjb25zdCA6OnN0ZDo6d3N0cmluZyZz
LCA6OnN0ZDo6b3N0cmVhbSogb3MpOwogaW5saW5lIHZvaWQgUHJpbnRUbyhjb25zdCA6OnN0ZDo6
d3N0cmluZyYgcywgOjpzdGQ6Om9zdHJlYW0qIG9zKSB7CkBAIC02MzEsMTA2ICs2MDIsNDUgQEAg
aW5saW5lIHZvaWQgUHJpbnRUbyhjb25zdCA6OnN0ZDo6d3N0cmluZyYgcywgOjpzdGQ6Om9zdHJl
YW0qIG9zKSB7CiB9CiAjZW5kaWYgIC8vIEdURVNUX0hBU19TVERfV1NUUklORwogCi0jaWYgR1RF
U1RfSEFTX0FCU0wKLS8vIE92ZXJsb2FkIGZvciBhYnNsOjpzdHJpbmdfdmlldy4KLWlubGluZSB2
b2lkIFByaW50VG8oYWJzbDo6c3RyaW5nX3ZpZXcgc3AsIDo6c3RkOjpvc3RyZWFtKiBvcykgewor
I2lmIEdURVNUX0lOVEVSTkFMX0hBU19TVFJJTkdfVklFVworLy8gT3ZlcmxvYWQgZm9yIGludGVy
bmFsOjpTdHJpbmdWaWV3LgoraW5saW5lIHZvaWQgUHJpbnRUbyhpbnRlcm5hbDo6U3RyaW5nVmll
dyBzcCwgOjpzdGQ6Om9zdHJlYW0qIG9zKSB7CiAgIFByaW50VG8oOjpzdGQ6OnN0cmluZyhzcCks
IG9zKTsKIH0KLSNlbmRpZiAgLy8gR1RFU1RfSEFTX0FCU0wKKyNlbmRpZiAgLy8gR1RFU1RfSU5U
RVJOQUxfSEFTX1NUUklOR19WSUVXCiAKLSNpZiBHVEVTVF9MQU5HX0NYWDExCiBpbmxpbmUgdm9p
ZCBQcmludFRvKHN0ZDo6bnVsbHB0cl90LCA6OnN0ZDo6b3N0cmVhbSogb3MpIHsgKm9zIDw8ICIo
bnVsbHB0cikiOyB9Ci0jZW5kaWYgIC8vIEdURVNUX0xBTkdfQ1hYMTEKIAotI2lmIEdURVNUX0hB
U19UUjFfVFVQTEUgfHwgR1RFU1RfSEFTX1NURF9UVVBMRV8KLS8vIEhlbHBlciBmdW5jdGlvbiBm
b3IgcHJpbnRpbmcgYSB0dXBsZS4gIFQgbXVzdCBiZSBpbnN0YW50aWF0ZWQgd2l0aAotLy8gYSB0
dXBsZSB0eXBlLgogdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci12b2lkIFByaW50VHVwbGVUbyhjb25z
dCBUJiB0LCA6OnN0ZDo6b3N0cmVhbSogb3MpOwotI2VuZGlmICAvLyBHVEVTVF9IQVNfVFIxX1RV
UExFIHx8IEdURVNUX0hBU19TVERfVFVQTEVfCi0KLSNpZiBHVEVTVF9IQVNfVFIxX1RVUExFCi0v
LyBPdmVybG9hZCBmb3IgOjpzdGQ6OnRyMTo6dHVwbGUuICBOZWVkZWQgZm9yIHByaW50aW5nIGZ1
bmN0aW9uIGFyZ3VtZW50cywKLS8vIHdoaWNoIGFyZSBwYWNrZWQgYXMgdHVwbGVzLgotCi0vLyBP
dmVybG9hZGVkIFByaW50VG8oKSBmb3IgdHVwbGVzIG9mIHZhcmlvdXMgYXJpdGllcy4gIFdlIHN1
cHBvcnQKLS8vIHR1cGxlcyBvZiB1cC10byAxMCBmaWVsZHMuICBUaGUgZm9sbG93aW5nIGltcGxl
bWVudGF0aW9uIHdvcmtzCi0vLyByZWdhcmRsZXNzIG9mIHdoZXRoZXIgdHIxOjp0dXBsZSBpcyBp
bXBsZW1lbnRlZCB1c2luZyB0aGUKLS8vIG5vbi1zdGFuZGFyZCB2YXJpYWRpYyB0ZW1wbGF0ZSBm
ZWF0dXJlIG9yIG5vdC4KLQotaW5saW5lIHZvaWQgUHJpbnRUbyhjb25zdCA6OnN0ZDo6dHIxOjp0
dXBsZTw+JiB0LCA6OnN0ZDo6b3N0cmVhbSogb3MpIHsKLSAgUHJpbnRUdXBsZVRvKHQsIG9zKTsK
LX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxPgotdm9pZCBQcmludFRvKGNvbnN0IDo6c3RkOjp0
cjE6OnR1cGxlPFQxPiYgdCwgOjpzdGQ6Om9zdHJlYW0qIG9zKSB7Ci0gIFByaW50VHVwbGVUbyh0
LCBvcyk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDI+Ci12b2lkIFBy
aW50VG8oY29uc3QgOjpzdGQ6OnRyMTo6dHVwbGU8VDEsIFQyPiYgdCwgOjpzdGQ6Om9zdHJlYW0q
IG9zKSB7Ci0gIFByaW50VHVwbGVUbyh0LCBvcyk7Ci19Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBU
MSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzPgotdm9pZCBQcmludFRvKGNvbnN0IDo6c3RkOjp0
cjE6OnR1cGxlPFQxLCBUMiwgVDM+JiB0LCA6OnN0ZDo6b3N0cmVhbSogb3MpIHsKLSAgUHJpbnRU
dXBsZVRvKHQsIG9zKTsKLX0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwg
dHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0Pgotdm9pZCBQcmludFRvKGNvbnN0IDo6c3RkOjp0cjE6
OnR1cGxlPFQxLCBUMiwgVDMsIFQ0PiYgdCwgOjpzdGQ6Om9zdHJlYW0qIG9zKSB7Ci0gIFByaW50
VHVwbGVUbyh0LCBvcyk7Cit2b2lkIFByaW50VG8oc3RkOjpyZWZlcmVuY2Vfd3JhcHBlcjxUPiBy
ZWYsIDo6c3RkOjpvc3RyZWFtKiBvcykgeworICBVbml2ZXJzYWxQcmludGVyPFQmPjo6UHJpbnQo
cmVmLmdldCgpLCBvcyk7CiB9CiAKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIs
IHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDU+Ci12b2lkIFByaW50VG8oY29u
c3QgOjpzdGQ6OnRyMTo6dHVwbGU8VDEsIFQyLCBUMywgVDQsIFQ1PiYgdCwKLSAgICAgICAgICAg
ICA6OnN0ZDo6b3N0cmVhbSogb3MpIHsKLSAgUHJpbnRUdXBsZVRvKHQsIG9zKTsKLX0KLQotdGVt
cGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0
LCB0eXBlbmFtZSBUNSwKLSAgICAgICAgICB0eXBlbmFtZSBUNj4KLXZvaWQgUHJpbnRUbyhjb25z
dCA6OnN0ZDo6dHIxOjp0dXBsZTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2PiYgdCwKLSAgICAgICAg
ICAgICA6OnN0ZDo6b3N0cmVhbSogb3MpIHsKLSAgUHJpbnRUdXBsZVRvKHQsIG9zKTsKLX0KLQot
dGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1l
IFQ0LCB0eXBlbmFtZSBUNSwKLSAgICAgICAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDc+Ci12
b2lkIFByaW50VG8oY29uc3QgOjpzdGQ6OnRyMTo6dHVwbGU8VDEsIFQyLCBUMywgVDQsIFQ1LCBU
NiwgVDc+JiB0LAotICAgICAgICAgICAgIDo6c3RkOjpvc3RyZWFtKiBvcykgewotICBQcmludFR1
cGxlVG8odCwgb3MpOwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0
eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgICAgICAgIHR5cGVuYW1l
IFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDg+Ci12b2lkIFByaW50VG8oY29uc3QgOjpzdGQ6
OnRyMTo6dHVwbGU8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4PiYgdCwKLSAgICAgICAg
ICAgICA6OnN0ZDo6b3N0cmVhbSogb3MpIHsKLSAgUHJpbnRUdXBsZVRvKHQsIG9zKTsKLX0KLQot
dGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1l
IFQ0LCB0eXBlbmFtZSBUNSwKLSAgICAgICAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5
cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOT4KLXZvaWQgUHJpbnRUbyhjb25zdCA6OnN0ZDo6dHIxOjp0
dXBsZTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5PiYgdCwKLSAgICAgICAgICAg
ICA6OnN0ZDo6b3N0cmVhbSogb3MpIHsKLSAgUHJpbnRUdXBsZVRvKHQsIG9zKTsKLX0KLQotdGVt
cGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0
LCB0eXBlbmFtZSBUNSwKLSAgICAgICAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVu
YW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwPgotdm9pZCBQcmludFRvKAotICAgIGNv
bnN0IDo6c3RkOjp0cjE6OnR1cGxlPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDks
IFQxMD4mIHQsCi0gICAgOjpzdGQ6Om9zdHJlYW0qIG9zKSB7Ci0gIFByaW50VHVwbGVUbyh0LCBv
cyk7CisvLyBIZWxwZXIgZnVuY3Rpb24gZm9yIHByaW50aW5nIGEgdHVwbGUuICBUIG11c3QgYmUg
aW5zdGFudGlhdGVkIHdpdGgKKy8vIGEgdHVwbGUgdHlwZS4KK3RlbXBsYXRlIDx0eXBlbmFtZSBU
Pgordm9pZCBQcmludFR1cGxlVG8oY29uc3QgVCYsIHN0ZDo6aW50ZWdyYWxfY29uc3RhbnQ8c2l6
ZV90LCAwPiwKKyAgICAgICAgICAgICAgICAgIDo6c3RkOjpvc3RyZWFtKikge30KKwordGVtcGxh
dGUgPHR5cGVuYW1lIFQsIHNpemVfdCBJPgordm9pZCBQcmludFR1cGxlVG8oY29uc3QgVCYgdCwg
c3RkOjppbnRlZ3JhbF9jb25zdGFudDxzaXplX3QsIEk+LAorICAgICAgICAgICAgICAgICAgOjpz
dGQ6Om9zdHJlYW0qIG9zKSB7CisgIFByaW50VHVwbGVUbyh0LCBzdGQ6OmludGVncmFsX2NvbnN0
YW50PHNpemVfdCwgSSAtIDE+KCksIG9zKTsKKyAgR1RFU1RfSU5URU5USU9OQUxfQ09OU1RfQ09O
RF9QVVNIXygpCisgIGlmIChJID4gMSkgeworICAgIEdURVNUX0lOVEVOVElPTkFMX0NPTlNUX0NP
TkRfUE9QXygpCisgICAgKm9zIDw8ICIsICI7CisgIH0KKyAgVW5pdmVyc2FsUHJpbnRlcjx0eXBl
bmFtZSBzdGQ6OnR1cGxlX2VsZW1lbnQ8SSAtIDEsIFQ+Ojp0eXBlPjo6UHJpbnQoCisgICAgICBz
dGQ6OmdldDxJIC0gMT4odCksIG9zKTsKIH0KLSNlbmRpZiAgLy8gR1RFU1RfSEFTX1RSMV9UVVBM
RQogCi0jaWYgR1RFU1RfSEFTX1NURF9UVVBMRV8KIHRlbXBsYXRlIDx0eXBlbmFtZS4uLiBUeXBl
cz4KIHZvaWQgUHJpbnRUbyhjb25zdCA6OnN0ZDo6dHVwbGU8VHlwZXMuLi4+JiB0LCA6OnN0ZDo6
b3N0cmVhbSogb3MpIHsKLSAgUHJpbnRUdXBsZVRvKHQsIG9zKTsKKyAgKm9zIDw8ICIoIjsKKyAg
UHJpbnRUdXBsZVRvKHQsIHN0ZDo6aW50ZWdyYWxfY29uc3RhbnQ8c2l6ZV90LCBzaXplb2YuLi4o
VHlwZXMpPigpLCBvcyk7CisgICpvcyA8PCAiKSI7CiB9Ci0jZW5kaWYgIC8vIEdURVNUX0hBU19T
VERfVFVQTEVfCiAKIC8vIE92ZXJsb2FkIGZvciBzdGQ6OnBhaXIuCiB0ZW1wbGF0ZSA8dHlwZW5h
bWUgVDEsIHR5cGVuYW1lIFQyPgpAQCAtODI2LDcgKzczNiw2IEBAIHZvaWQgVW5pdmVyc2FsUHJp
bnRBcnJheShjb25zdCBUKiBiZWdpbiwgc2l6ZV90IGxlbiwgOjpzdGQ6Om9zdHJlYW0qIG9zKSB7
CiAgICAgLy8gSWYgdGhlIGFycmF5IGhhcyBtb3JlIHRoYW4ga1RocmVzaG9sZCBlbGVtZW50cywg
d2UnbGwgaGF2ZSB0bwogICAgIC8vIG9taXQgc29tZSBkZXRhaWxzIGJ5IHByaW50aW5nIG9ubHkg
dGhlIGZpcnN0IGFuZCB0aGUgbGFzdAogICAgIC8vIGtDaHVua1NpemUgZWxlbWVudHMuCi0gICAg
Ly8gRklYTUU6IGxldCB0aGUgdXNlciBjb250cm9sIHRoZSB0aHJlc2hvbGQgdXNpbmcgYSBmbGFn
LgogICAgIGlmIChsZW4gPD0ga1RocmVzaG9sZCkgewogICAgICAgUHJpbnRSYXdBcnJheVRvKGJl
Z2luLCBsZW4sIG9zKTsKICAgICB9IGVsc2UgewpAQCAtOTA1LDcgKzgxNCw3IEBAIHRlbXBsYXRl
IDw+CiBjbGFzcyBVbml2ZXJzYWxUZXJzZVByaW50ZXI8Y29uc3QgY2hhcio+IHsKICBwdWJsaWM6
CiAgIHN0YXRpYyB2b2lkIFByaW50KGNvbnN0IGNoYXIqIHN0ciwgOjpzdGQ6Om9zdHJlYW0qIG9z
KSB7Ci0gICAgaWYgKHN0ciA9PSBOVUxMKSB7CisgICAgaWYgKHN0ciA9PSBudWxscHRyKSB7CiAg
ICAgICAqb3MgPDwgIk5VTEwiOwogICAgIH0gZWxzZSB7CiAgICAgICBVbml2ZXJzYWxQcmludChz
dGQ6OnN0cmluZyhzdHIpLCBvcyk7CkBAIC05MjUsNyArODM0LDcgQEAgdGVtcGxhdGUgPD4KIGNs
YXNzIFVuaXZlcnNhbFRlcnNlUHJpbnRlcjxjb25zdCB3Y2hhcl90Kj4gewogIHB1YmxpYzoKICAg
c3RhdGljIHZvaWQgUHJpbnQoY29uc3Qgd2NoYXJfdCogc3RyLCA6OnN0ZDo6b3N0cmVhbSogb3Mp
IHsKLSAgICBpZiAoc3RyID09IE5VTEwpIHsKKyAgICBpZiAoc3RyID09IG51bGxwdHIpIHsKICAg
ICAgICpvcyA8PCAiTlVMTCI7CiAgICAgfSBlbHNlIHsKICAgICAgIFVuaXZlcnNhbFByaW50KDo6
c3RkOjp3c3RyaW5nKHN0ciksIG9zKTsKQEAgLTk2MSwxMDkgKzg3MCwyMCBAQCB2b2lkIFVuaXZl
cnNhbFByaW50KGNvbnN0IFQmIHZhbHVlLCA6OnN0ZDo6b3N0cmVhbSogb3MpIHsKIAogdHlwZWRl
ZiA6OnN0ZDo6dmVjdG9yPCA6OnN0ZDo6c3RyaW5nPiBTdHJpbmdzOwogCi0vLyBUdXBsZVBvbGlj
eTxUdXBsZVQ+IG11c3QgcHJvdmlkZToKLS8vIC0gdHVwbGVfc2l6ZQotLy8gICAgIHNpemUgb2Yg
dHVwbGUgVHVwbGVULgotLy8gLSBnZXQ8c2l6ZV90IEk+KGNvbnN0IFR1cGxlVCYgdCkKLS8vICAg
ICBzdGF0aWMgZnVuY3Rpb24gZXh0cmFjdGluZyBlbGVtZW50IEkgb2YgdHVwbGUgVHVwbGVULgot
Ly8gLSB0dXBsZV9lbGVtZW50PHNpemVfdCBJPjo6dHlwZQotLy8gICAgIHR5cGUgb2YgZWxlbWVu
dCBJIG9mIHR1cGxlIFR1cGxlVC4KLXRlbXBsYXRlIDx0eXBlbmFtZSBUdXBsZVQ+Ci1zdHJ1Y3Qg
VHVwbGVQb2xpY3k7Ci0KLSNpZiBHVEVTVF9IQVNfVFIxX1RVUExFCi10ZW1wbGF0ZSA8dHlwZW5h
bWUgVHVwbGVUPgotc3RydWN0IFR1cGxlUG9saWN5IHsKLSAgdHlwZWRlZiBUdXBsZVQgVHVwbGU7
Ci0gIHN0YXRpYyBjb25zdCBzaXplX3QgdHVwbGVfc2l6ZSA9IDo6c3RkOjp0cjE6OnR1cGxlX3Np
emU8VHVwbGU+Ojp2YWx1ZTsKLQotICB0ZW1wbGF0ZSA8c2l6ZV90IEk+Ci0gIHN0cnVjdCB0dXBs
ZV9lbGVtZW50IDogOjpzdGQ6OnRyMTo6dHVwbGVfZWxlbWVudDxzdGF0aWNfY2FzdDxpbnQ+KEkp
LCBUdXBsZT4gewotICB9OwotCi0gIHRlbXBsYXRlIDxzaXplX3QgST4KLSAgc3RhdGljIHR5cGVu
YW1lIEFkZFJlZmVyZW5jZTxjb25zdCB0eXBlbmFtZSA6OnN0ZDo6dHIxOjp0dXBsZV9lbGVtZW50
PAotICAgICAgc3RhdGljX2Nhc3Q8aW50PihJKSwgVHVwbGU+Ojp0eXBlPjo6dHlwZQotICBnZXQo
Y29uc3QgVHVwbGUmIHR1cGxlKSB7Ci0gICAgcmV0dXJuIDo6c3RkOjp0cjE6OmdldDxJPih0dXBs
ZSk7Ci0gIH0KLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVHVwbGVUPgotY29uc3Qgc2l6ZV90IFR1
cGxlUG9saWN5PFR1cGxlVD46OnR1cGxlX3NpemU7Ci0jZW5kaWYgIC8vIEdURVNUX0hBU19UUjFf
VFVQTEUKLQotI2lmIEdURVNUX0hBU19TVERfVFVQTEVfCi10ZW1wbGF0ZSA8dHlwZW5hbWUuLi4g
VHlwZXM+Ci1zdHJ1Y3QgVHVwbGVQb2xpY3k8IDo6c3RkOjp0dXBsZTxUeXBlcy4uLj4gPiB7Ci0g
IHR5cGVkZWYgOjpzdGQ6OnR1cGxlPFR5cGVzLi4uPiBUdXBsZTsKLSAgc3RhdGljIGNvbnN0IHNp
emVfdCB0dXBsZV9zaXplID0gOjpzdGQ6OnR1cGxlX3NpemU8VHVwbGU+Ojp2YWx1ZTsKLQotICB0
ZW1wbGF0ZSA8c2l6ZV90IEk+Ci0gIHN0cnVjdCB0dXBsZV9lbGVtZW50IDogOjpzdGQ6OnR1cGxl
X2VsZW1lbnQ8SSwgVHVwbGU+IHt9OwotCi0gIHRlbXBsYXRlIDxzaXplX3QgST4KLSAgc3RhdGlj
IGNvbnN0IHR5cGVuYW1lIDo6c3RkOjp0dXBsZV9lbGVtZW50PEksIFR1cGxlPjo6dHlwZSYgZ2V0
KAotICAgICAgY29uc3QgVHVwbGUmIHR1cGxlKSB7Ci0gICAgcmV0dXJuIDo6c3RkOjpnZXQ8ST4o
dHVwbGUpOwotICB9Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1lLi4uIFR5cGVzPgotY29uc3Qgc2l6
ZV90IFR1cGxlUG9saWN5PCA6OnN0ZDo6dHVwbGU8VHlwZXMuLi4+ID46OnR1cGxlX3NpemU7Ci0j
ZW5kaWYgIC8vIEdURVNUX0hBU19TVERfVFVQTEVfCi0KLSNpZiBHVEVTVF9IQVNfVFIxX1RVUExF
IHx8IEdURVNUX0hBU19TVERfVFVQTEVfCi0vLyBUaGlzIGhlbHBlciB0ZW1wbGF0ZSBhbGxvd3Mg
UHJpbnRUbygpIGZvciB0dXBsZXMgYW5kCi0vLyBVbml2ZXJzYWxUZXJzZVByaW50VHVwbGVGaWVs
ZHNUb1N0cmluZ3MoKSB0byBiZSBkZWZpbmVkIGJ5Ci0vLyBpbmR1Y3Rpb24gb24gdGhlIG51bWJl
ciBvZiB0dXBsZSBmaWVsZHMuICBUaGUgaWRlYSBpcyB0aGF0Ci0vLyBUdXBsZVByZWZpeFByaW50
ZXI8Tj46OlByaW50UHJlZml4VG8odCwgb3MpIHByaW50cyB0aGUgZmlyc3QgTgotLy8gZmllbGRz
IGluIHR1cGxlIHQsIGFuZCBjYW4gYmUgZGVmaW5lZCBpbiB0ZXJtcyBvZgotLy8gVHVwbGVQcmVm
aXhQcmludGVyPE4gLSAxPi4KLS8vCi0vLyBUaGUgaW5kdWN0aXZlIGNhc2UuCi10ZW1wbGF0ZSA8
c2l6ZV90IE4+Ci1zdHJ1Y3QgVHVwbGVQcmVmaXhQcmludGVyIHsKLSAgLy8gUHJpbnRzIHRoZSBm
aXJzdCBOIGZpZWxkcyBvZiBhIHR1cGxlLgotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVHVwbGU+Ci0g
IHN0YXRpYyB2b2lkIFByaW50UHJlZml4VG8oY29uc3QgVHVwbGUmIHQsIDo6c3RkOjpvc3RyZWFt
KiBvcykgewotICAgIFR1cGxlUHJlZml4UHJpbnRlcjxOIC0gMT46OlByaW50UHJlZml4VG8odCwg
b3MpOwotICAgIEdURVNUX0lOVEVOVElPTkFMX0NPTlNUX0NPTkRfUFVTSF8oKQotICAgIGlmIChO
ID4gMSkgewotICAgIEdURVNUX0lOVEVOVElPTkFMX0NPTlNUX0NPTkRfUE9QXygpCi0gICAgICAq
b3MgPDwgIiwgIjsKLSAgICB9Ci0gICAgVW5pdmVyc2FsUHJpbnRlcjwKLSAgICAgICAgdHlwZW5h
bWUgVHVwbGVQb2xpY3k8VHVwbGU+Ojp0ZW1wbGF0ZSB0dXBsZV9lbGVtZW50PE4gLSAxPjo6dHlw
ZT4KLSAgICAgICAgOjpQcmludChUdXBsZVBvbGljeTxUdXBsZT46OnRlbXBsYXRlIGdldDxOIC0g
MT4odCksIG9zKTsKLSAgfQotCiAgIC8vIFRlcnNlbHkgcHJpbnRzIHRoZSBmaXJzdCBOIGZpZWxk
cyBvZiBhIHR1cGxlIHRvIGEgc3RyaW5nIHZlY3RvciwKICAgLy8gb25lIGVsZW1lbnQgZm9yIGVh
Y2ggZmllbGQuCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUdXBsZT4KLSAgc3RhdGljIHZvaWQgVGVy
c2VQcmludFByZWZpeFRvU3RyaW5ncyhjb25zdCBUdXBsZSYgdCwgU3RyaW5ncyogc3RyaW5ncykg
ewotICAgIFR1cGxlUHJlZml4UHJpbnRlcjxOIC0gMT46OlRlcnNlUHJpbnRQcmVmaXhUb1N0cmlu
Z3ModCwgc3RyaW5ncyk7Ci0gICAgOjpzdGQ6OnN0cmluZ3N0cmVhbSBzczsKLSAgICBVbml2ZXJz
YWxUZXJzZVByaW50KFR1cGxlUG9saWN5PFR1cGxlPjo6dGVtcGxhdGUgZ2V0PE4gLSAxPih0KSwg
JnNzKTsKLSAgICBzdHJpbmdzLT5wdXNoX2JhY2soc3Muc3RyKCkpOwotICB9Ci19OwotCi0vLyBC
YXNlIGNhc2UuCi10ZW1wbGF0ZSA8Pgotc3RydWN0IFR1cGxlUHJlZml4UHJpbnRlcjwwPiB7Ci0g
IHRlbXBsYXRlIDx0eXBlbmFtZSBUdXBsZT4KLSAgc3RhdGljIHZvaWQgUHJpbnRQcmVmaXhUbyhj
b25zdCBUdXBsZSYsIDo6c3RkOjpvc3RyZWFtKikge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUg
VHVwbGU+Ci0gIHN0YXRpYyB2b2lkIFRlcnNlUHJpbnRQcmVmaXhUb1N0cmluZ3MoY29uc3QgVHVw
bGUmLCBTdHJpbmdzKikge30KLX07Ci0KLS8vIEhlbHBlciBmdW5jdGlvbiBmb3IgcHJpbnRpbmcg
YSB0dXBsZS4KLS8vIFR1cGxlIG11c3QgYmUgZWl0aGVyIHN0ZDo6dHIxOjp0dXBsZSBvciBzdGQ6
OnR1cGxlIHR5cGUuCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgVHVwbGU+Ci12b2lkIFByaW50VHVwbGVU
byhjb25zdCBUdXBsZSYgdCwgOjpzdGQ6Om9zdHJlYW0qIG9zKSB7Ci0gICpvcyA8PCAiKCI7Ci0g
IFR1cGxlUHJlZml4UHJpbnRlcjxUdXBsZVBvbGljeTxUdXBsZT46OnR1cGxlX3NpemU+OjpQcmlu
dFByZWZpeFRvKHQsIG9zKTsKLSAgKm9zIDw8ICIpIjsKK3ZvaWQgVGVyc2VQcmludFByZWZpeFRv
U3RyaW5ncyhjb25zdCBUdXBsZSYsIHN0ZDo6aW50ZWdyYWxfY29uc3RhbnQ8c2l6ZV90LCAwPiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdHJpbmdzKikge30KK3RlbXBsYXRlIDx0
eXBlbmFtZSBUdXBsZSwgc2l6ZV90IEk+Cit2b2lkIFRlcnNlUHJpbnRQcmVmaXhUb1N0cmluZ3Mo
Y29uc3QgVHVwbGUmIHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkOjppbnRl
Z3JhbF9jb25zdGFudDxzaXplX3QsIEk+LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFN0cmluZ3MqIHN0cmluZ3MpIHsKKyAgVGVyc2VQcmludFByZWZpeFRvU3RyaW5ncyh0LCBzdGQ6
OmludGVncmFsX2NvbnN0YW50PHNpemVfdCwgSSAtIDE+KCksCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgc3RyaW5ncyk7CisgIDo6c3RkOjpzdHJpbmdzdHJlYW0gc3M7CisgIFVuaXZlcnNh
bFRlcnNlUHJpbnQoc3RkOjpnZXQ8SSAtIDE+KHQpLCAmc3MpOworICBzdHJpbmdzLT5wdXNoX2Jh
Y2soc3Muc3RyKCkpOwogfQogCiAvLyBQcmludHMgdGhlIGZpZWxkcyBvZiBhIHR1cGxlIHRlcnNl
bHkgdG8gYSBzdHJpbmcgdmVjdG9yLCBvbmUKQEAgLTEwNzIsMjAgKzg5MiwyMCBAQCB2b2lkIFBy
aW50VHVwbGVUbyhjb25zdCBUdXBsZSYgdCwgOjpzdGQ6Om9zdHJlYW0qIG9zKSB7CiB0ZW1wbGF0
ZSA8dHlwZW5hbWUgVHVwbGU+CiBTdHJpbmdzIFVuaXZlcnNhbFRlcnNlUHJpbnRUdXBsZUZpZWxk
c1RvU3RyaW5ncyhjb25zdCBUdXBsZSYgdmFsdWUpIHsKICAgU3RyaW5ncyByZXN1bHQ7Ci0gIFR1
cGxlUHJlZml4UHJpbnRlcjxUdXBsZVBvbGljeTxUdXBsZT46OnR1cGxlX3NpemU+OjoKLSAgICAg
IFRlcnNlUHJpbnRQcmVmaXhUb1N0cmluZ3ModmFsdWUsICZyZXN1bHQpOworICBUZXJzZVByaW50
UHJlZml4VG9TdHJpbmdzKAorICAgICAgdmFsdWUsIHN0ZDo6aW50ZWdyYWxfY29uc3RhbnQ8c2l6
ZV90LCBzdGQ6OnR1cGxlX3NpemU8VHVwbGU+Ojp2YWx1ZT4oKSwKKyAgICAgICZyZXN1bHQpOwog
ICByZXR1cm4gcmVzdWx0OwogfQotI2VuZGlmICAvLyBHVEVTVF9IQVNfVFIxX1RVUExFIHx8IEdU
RVNUX0hBU19TVERfVFVQTEVfCiAKIH0gIC8vIG5hbWVzcGFjZSBpbnRlcm5hbAogCi0jaWYgR1RF
U1RfSEFTX0FCU0wKKyNpZiBHVEVTVF9JTlRFUk5BTF9IQVNfU1RSSU5HX1ZJRVcKIG5hbWVzcGFj
ZSBpbnRlcm5hbDIgewogdGVtcGxhdGUgPHR5cGVuYW1lIFQ+CiB2b2lkIFR5cGVXaXRob3V0Rm9y
bWF0dGVyPFQsIGtDb252ZXJ0aWJsZVRvU3RyaW5nVmlldz46OlByaW50VmFsdWUoCiAgICAgY29u
c3QgVCYgdmFsdWUsIDo6c3RkOjpvc3RyZWFtKiBvcykgewotICBpbnRlcm5hbDo6UHJpbnRUbyhh
YnNsOjpzdHJpbmdfdmlldyh2YWx1ZSksIG9zKTsKKyAgaW50ZXJuYWw6OlByaW50VG8oaW50ZXJu
YWw6OlN0cmluZ1ZpZXcodmFsdWUpLCBvcyk7CiB9CiB9ICAvLyBuYW1lc3BhY2UgaW50ZXJuYWwy
CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9z
cmMvaW5jbHVkZS9ndGVzdC9ndGVzdC1zcGkuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29v
Z2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9ndGVzdC1zcGkuaAppbmRleCAxZTg5ODM5MzhlYTI3
OTJjNTI2OTBlYWQyOWIwMGFiNThjZGFhZTljLi5hYTM4ODcwZThlMWM5MTI5NGU3M2NmNGU4Y2I0
MWQ3ZjMyNzY0ZThlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRl
c3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3Qtc3BpLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9w
YXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2d0ZXN0LXNwaS5oCkBAIC03MiwxNCAr
NzIsMTUgQEAgY2xhc3MgR1RFU1RfQVBJXyBTY29wZWRGYWtlVGVzdFBhcnRSZXN1bHRSZXBvcnRl
cgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZXN0UGFydFJlc3VsdEFycmF5
KiByZXN1bHQpOwogCiAgIC8vIFRoZSBkJ3RvciByZXN0b3JlcyB0aGUgcHJldmlvdXMgdGVzdCBw
YXJ0IHJlc3VsdCByZXBvcnRlci4KLSAgdmlydHVhbCB+U2NvcGVkRmFrZVRlc3RQYXJ0UmVzdWx0
UmVwb3J0ZXIoKTsKKyAgflNjb3BlZEZha2VUZXN0UGFydFJlc3VsdFJlcG9ydGVyKCkgb3ZlcnJp
ZGU7CiAKICAgLy8gQXBwZW5kcyB0aGUgVGVzdFBhcnRSZXN1bHQgb2JqZWN0IHRvIHRoZSBUZXN0
UGFydFJlc3VsdEFycmF5CiAgIC8vIHJlY2VpdmVkIGluIHRoZSBjb25zdHJ1Y3Rvci4KICAgLy8K
ICAgLy8gVGhpcyBtZXRob2QgaXMgZnJvbSB0aGUgVGVzdFBhcnRSZXN1bHRSZXBvcnRlckludGVy
ZmFjZQogICAvLyBpbnRlcmZhY2UuCi0gIHZpcnR1YWwgdm9pZCBSZXBvcnRUZXN0UGFydFJlc3Vs
dChjb25zdCBUZXN0UGFydFJlc3VsdCYgcmVzdWx0KTsKKyAgdm9pZCBSZXBvcnRUZXN0UGFydFJl
c3VsdChjb25zdCBUZXN0UGFydFJlc3VsdCYgcmVzdWx0KSBvdmVycmlkZTsKKwogIHByaXZhdGU6
CiAgIHZvaWQgSW5pdCgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dv
b2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QtdGVzdC1wYXJ0LmggYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QtdGVzdC1wYXJ0
LmgKaW5kZXggMWM3Yjg5ZTA4Nzk2ZDk3MzBmOWY4ZWVhZTQwNjIyNzE3N2RiYTUxOS4uMDVhNzk4
NTM1ODZhOTExYzQ5ZGRmOTEwZmExZjA1OTVlMzM4MjY1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2d0ZXN0LXRlc3QtcGFy
dC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9n
dGVzdC9ndGVzdC10ZXN0LXBhcnQuaApAQCAtNTMsMjIgKzUzLDIwIEBAIGNsYXNzIEdURVNUX0FQ
SV8gVGVzdFBhcnRSZXN1bHQgewogICBlbnVtIFR5cGUgewogICAgIGtTdWNjZXNzLCAgICAgICAg
ICAvLyBTdWNjZWVkZWQuCiAgICAga05vbkZhdGFsRmFpbHVyZSwgIC8vIEZhaWxlZCBidXQgdGhl
IHRlc3QgY2FuIGNvbnRpbnVlLgotICAgIGtGYXRhbEZhaWx1cmUgICAgICAvLyBGYWlsZWQgYW5k
IHRoZSB0ZXN0IHNob3VsZCBiZSB0ZXJtaW5hdGVkLgorICAgIGtGYXRhbEZhaWx1cmUsICAgICAv
LyBGYWlsZWQgYW5kIHRoZSB0ZXN0IHNob3VsZCBiZSB0ZXJtaW5hdGVkLgorICAgIGtTa2lwICAg
ICAgICAgICAgICAvLyBTa2lwcGVkLgogICB9OwogCiAgIC8vIEMndG9yLiAgVGVzdFBhcnRSZXN1
bHQgZG9lcyBOT1QgaGF2ZSBhIGRlZmF1bHQgY29uc3RydWN0b3IuCiAgIC8vIEFsd2F5cyB1c2Ug
dGhpcyBjb25zdHJ1Y3RvciAod2l0aCBwYXJhbWV0ZXJzKSB0byBjcmVhdGUgYQogICAvLyBUZXN0
UGFydFJlc3VsdCBvYmplY3QuCi0gIFRlc3RQYXJ0UmVzdWx0KFR5cGUgYV90eXBlLAotICAgICAg
ICAgICAgICAgICBjb25zdCBjaGFyKiBhX2ZpbGVfbmFtZSwKLSAgICAgICAgICAgICAgICAgaW50
IGFfbGluZV9udW1iZXIsCisgIFRlc3RQYXJ0UmVzdWx0KFR5cGUgYV90eXBlLCBjb25zdCBjaGFy
KiBhX2ZpbGVfbmFtZSwgaW50IGFfbGluZV9udW1iZXIsCiAgICAgICAgICAgICAgICAgIGNvbnN0
IGNoYXIqIGFfbWVzc2FnZSkKICAgICAgIDogdHlwZV8oYV90eXBlKSwKLSAgICAgICAgZmlsZV9u
YW1lXyhhX2ZpbGVfbmFtZSA9PSBOVUxMID8gIiIgOiBhX2ZpbGVfbmFtZSksCisgICAgICAgIGZp
bGVfbmFtZV8oYV9maWxlX25hbWUgPT0gbnVsbHB0ciA/ICIiIDogYV9maWxlX25hbWUpLAogICAg
ICAgICBsaW5lX251bWJlcl8oYV9saW5lX251bWJlciksCiAgICAgICAgIHN1bW1hcnlfKEV4dHJh
Y3RTdW1tYXJ5KGFfbWVzc2FnZSkpLAotICAgICAgICBtZXNzYWdlXyhhX21lc3NhZ2UpIHsKLSAg
fQorICAgICAgICBtZXNzYWdlXyhhX21lc3NhZ2UpIHt9CiAKICAgLy8gR2V0cyB0aGUgb3V0Y29t
ZSBvZiB0aGUgdGVzdCBwYXJ0LgogICBUeXBlIHR5cGUoKSBjb25zdCB7IHJldHVybiB0eXBlXzsg
fQpAQCAtNzYsNyArNzQsNyBAQCBjbGFzcyBHVEVTVF9BUElfIFRlc3RQYXJ0UmVzdWx0IHsKICAg
Ly8gR2V0cyB0aGUgbmFtZSBvZiB0aGUgc291cmNlIGZpbGUgd2hlcmUgdGhlIHRlc3QgcGFydCB0
b29rIHBsYWNlLCBvcgogICAvLyBOVUxMIGlmIGl0J3MgdW5rbm93bi4KICAgY29uc3QgY2hhciog
ZmlsZV9uYW1lKCkgY29uc3QgewotICAgIHJldHVybiBmaWxlX25hbWVfLmVtcHR5KCkgPyBOVUxM
IDogZmlsZV9uYW1lXy5jX3N0cigpOworICAgIHJldHVybiBmaWxlX25hbWVfLmVtcHR5KCkgPyBu
dWxscHRyIDogZmlsZV9uYW1lXy5jX3N0cigpOwogICB9CiAKICAgLy8gR2V0cyB0aGUgbGluZSBp
biB0aGUgc291cmNlIGZpbGUgd2hlcmUgdGhlIHRlc3QgcGFydCB0b29rIHBsYWNlLApAQCAtODks
MTggKzg3LDIxIEBAIGNsYXNzIEdURVNUX0FQSV8gVGVzdFBhcnRSZXN1bHQgewogICAvLyBHZXRz
IHRoZSBtZXNzYWdlIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGVzdCBwYXJ0LgogICBjb25zdCBjaGFy
KiBtZXNzYWdlKCkgY29uc3QgeyByZXR1cm4gbWVzc2FnZV8uY19zdHIoKTsgfQogCi0gIC8vIFJl
dHVybnMgdHJ1ZSBpZmYgdGhlIHRlc3QgcGFydCBwYXNzZWQuCi0gIGJvb2wgcGFzc2VkKCkgY29u
c3QgeyByZXR1cm4gdHlwZV8gPT0ga1N1Y2Nlc3M7IH0KKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFu
ZCBvbmx5IGlmIHRoZSB0ZXN0IHBhcnQgd2FzIHNraXBwZWQuCisgIGJvb2wgc2tpcHBlZCgpIGNv
bnN0IHsgcmV0dXJuIHR5cGVfID09IGtTa2lwOyB9CiAKLSAgLy8gUmV0dXJucyB0cnVlIGlmZiB0
aGUgdGVzdCBwYXJ0IGZhaWxlZC4KLSAgYm9vbCBmYWlsZWQoKSBjb25zdCB7IHJldHVybiB0eXBl
XyAhPSBrU3VjY2VzczsgfQorICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHRl
c3QgcGFydCBwYXNzZWQuCisgIGJvb2wgcGFzc2VkKCkgY29uc3QgeyByZXR1cm4gdHlwZV8gPT0g
a1N1Y2Nlc3M7IH0KIAotICAvLyBSZXR1cm5zIHRydWUgaWZmIHRoZSB0ZXN0IHBhcnQgbm9uLWZh
dGFsbHkgZmFpbGVkLgorICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHRlc3Qg
cGFydCBub24tZmF0YWxseSBmYWlsZWQuCiAgIGJvb2wgbm9uZmF0YWxseV9mYWlsZWQoKSBjb25z
dCB7IHJldHVybiB0eXBlXyA9PSBrTm9uRmF0YWxGYWlsdXJlOyB9CiAKLSAgLy8gUmV0dXJucyB0
cnVlIGlmZiB0aGUgdGVzdCBwYXJ0IGZhdGFsbHkgZmFpbGVkLgorICAvLyBSZXR1cm5zIHRydWUg
aWYgYW5kIG9ubHkgaWYgdGhlIHRlc3QgcGFydCBmYXRhbGx5IGZhaWxlZC4KICAgYm9vbCBmYXRh
bGx5X2ZhaWxlZCgpIGNvbnN0IHsgcmV0dXJuIHR5cGVfID09IGtGYXRhbEZhaWx1cmU7IH0KIAor
ICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHRlc3QgcGFydCBmYWlsZWQuCisg
IGJvb2wgZmFpbGVkKCkgY29uc3QgeyByZXR1cm4gZmF0YWxseV9mYWlsZWQoKSB8fCBub25mYXRh
bGx5X2ZhaWxlZCgpOyB9CisKICBwcml2YXRlOgogICBUeXBlIHR5cGVfOwogCkBAIC0xNjQsOCAr
MTY1LDggQEAgY2xhc3MgR1RFU1RfQVBJXyBIYXNOZXdGYXRhbEZhaWx1cmVIZWxwZXIKICAgICA6
IHB1YmxpYyBUZXN0UGFydFJlc3VsdFJlcG9ydGVySW50ZXJmYWNlIHsKICBwdWJsaWM6CiAgIEhh
c05ld0ZhdGFsRmFpbHVyZUhlbHBlcigpOwotICB2aXJ0dWFsIH5IYXNOZXdGYXRhbEZhaWx1cmVI
ZWxwZXIoKTsKLSAgdmlydHVhbCB2b2lkIFJlcG9ydFRlc3RQYXJ0UmVzdWx0KGNvbnN0IFRlc3RQ
YXJ0UmVzdWx0JiByZXN1bHQpOworICB+SGFzTmV3RmF0YWxGYWlsdXJlSGVscGVyKCkgb3ZlcnJp
ZGU7CisgIHZvaWQgUmVwb3J0VGVzdFBhcnRSZXN1bHQoY29uc3QgVGVzdFBhcnRSZXN1bHQmIHJl
c3VsdCkgb3ZlcnJpZGU7CiAgIGJvb2wgaGFzX25ld19mYXRhbF9mYWlsdXJlKCkgY29uc3QgeyBy
ZXR1cm4gaGFzX25ld19mYXRhbF9mYWlsdXJlXzsgfQogIHByaXZhdGU6CiAgIGJvb2wgaGFzX25l
d19mYXRhbF9mYWlsdXJlXzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29v
Z2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9ndGVzdC10eXBlZC10ZXN0LmggYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QtdHlwZWQtdGVz
dC5oCmluZGV4IDc0YmNlNDZiZGM1MGY0YzhjZGUyYzZkNzI2NDkxMWZmNGQ5OWNmMTkuLjNmZmE1
MGI3MzlhYTBiNTc3NzZlNDcwYTMxMDQ0ODA4Y2UyMWMwYTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9ndGVzdC10eXBlZC10
ZXN0LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRl
L2d0ZXN0L2d0ZXN0LXR5cGVkLXRlc3QuaApAQCAtMjcsNyArMjcsNiBAQAogLy8gKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFCiAvLyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgogCi0KIC8vIEdPT0dMRVRFU1RfQ00wMDAxIERPIE5PVCBERUxF
VEUKIAogI2lmbmRlZiBHVEVTVF9JTkNMVURFX0dURVNUX0dURVNUX1RZUEVEX1RFU1RfSF8KQEAg
LTUyLDIyICs1MSwyMiBAQCBjbGFzcyBGb29UZXN0IDogcHVibGljIHRlc3Rpbmc6OlRlc3Qgewog
ICBUIHZhbHVlXzsKIH07CiAKLS8vIE5leHQsIGFzc29jaWF0ZSBhIGxpc3Qgb2YgdHlwZXMgd2l0
aCB0aGUgdGVzdCBjYXNlLCB3aGljaCB3aWxsIGJlCisvLyBOZXh0LCBhc3NvY2lhdGUgYSBsaXN0
IG9mIHR5cGVzIHdpdGggdGhlIHRlc3Qgc3VpdGUsIHdoaWNoIHdpbGwgYmUKIC8vIHJlcGVhdGVk
IGZvciBlYWNoIHR5cGUgaW4gdGhlIGxpc3QuICBUaGUgdHlwZWRlZiBpcyBuZWNlc3NhcnkgZm9y
CiAvLyB0aGUgbWFjcm8gdG8gcGFyc2UgY29ycmVjdGx5LgogdHlwZWRlZiB0ZXN0aW5nOjpUeXBl
czxjaGFyLCBpbnQsIHVuc2lnbmVkIGludD4gTXlUeXBlczsKLVRZUEVEX1RFU1RfQ0FTRShGb29U
ZXN0LCBNeVR5cGVzKTsKK1RZUEVEX1RFU1RfU1VJVEUoRm9vVGVzdCwgTXlUeXBlcyk7CiAKIC8v
IElmIHRoZSB0eXBlIGxpc3QgY29udGFpbnMgb25seSBvbmUgdHlwZSwgeW91IGNhbiB3cml0ZSB0
aGF0IHR5cGUKIC8vIGRpcmVjdGx5IHdpdGhvdXQgVHlwZXM8Li4uPjoKLS8vICAgVFlQRURfVEVT
VF9DQVNFKEZvb1Rlc3QsIGludCk7CisvLyAgIFRZUEVEX1RFU1RfU1VJVEUoRm9vVGVzdCwgaW50
KTsKIAogLy8gVGhlbiwgdXNlIFRZUEVEX1RFU1QoKSBpbnN0ZWFkIG9mIFRFU1RfRigpIHRvIGRl
ZmluZSBhcyBtYW55IHR5cGVkCi0vLyB0ZXN0cyBmb3IgdGhpcyB0ZXN0IGNhc2UgYXMgeW91IHdh
bnQuCisvLyB0ZXN0cyBmb3IgdGhpcyB0ZXN0IHN1aXRlIGFzIHlvdSB3YW50LgogVFlQRURfVEVT
VChGb29UZXN0LCBEb2VzQmxhaCkgewotICAvLyBJbnNpZGUgYSB0ZXN0LCByZWZlciB0byBUeXBl
UGFyYW0gdG8gZ2V0IHRoZSB0eXBlIHBhcmFtZXRlci4KLSAgLy8gU2luY2Ugd2UgYXJlIGluc2lk
ZSBhIGRlcml2ZWQgY2xhc3MgdGVtcGxhdGUsIEMrKyByZXF1aXJlcyB1c2UgdG8KLSAgLy8gdmlz
aXQgdGhlIG1lbWJlcnMgb2YgRm9vVGVzdCB2aWEgJ3RoaXMnLgorICAvLyBJbnNpZGUgYSB0ZXN0
LCByZWZlciB0byB0aGUgc3BlY2lhbCBuYW1lIFR5cGVQYXJhbSB0byBnZXQgdGhlIHR5cGUKKyAg
Ly8gcGFyYW1ldGVyLiAgU2luY2Ugd2UgYXJlIGluc2lkZSBhIGRlcml2ZWQgY2xhc3MgdGVtcGxh
dGUsIEMrKyByZXF1aXJlcworICAvLyB1cyB0byB2aXNpdCB0aGUgbWVtYmVycyBvZiBGb29UZXN0
IHZpYSAndGhpcycuCiAgIFR5cGVQYXJhbSBuID0gdGhpcy0+dmFsdWVfOwogCiAgIC8vIFRvIHZp
c2l0IHN0YXRpYyBtZW1iZXJzIG9mIHRoZSBmaXh0dXJlLCBhZGQgdGhlIFRlc3RGaXh0dXJlOjoK
QEAgLTgzLDcgKzgyLDcgQEAgVFlQRURfVEVTVChGb29UZXN0LCBEb2VzQmxhaCkgewogCiBUWVBF
RF9URVNUKEZvb1Rlc3QsIEhhc1Byb3BlcnR5QSkgeyAuLi4gfQogCi0vLyBUWVBFRF9URVNUX0NB
U0UgdGFrZXMgYW4gb3B0aW9uYWwgdGhpcmQgYXJndW1lbnQgd2hpY2ggYWxsb3dzIHRvIHNwZWNp
ZnkgYQorLy8gVFlQRURfVEVTVF9TVUlURSB0YWtlcyBhbiBvcHRpb25hbCB0aGlyZCBhcmd1bWVu
dCB3aGljaCBhbGxvd3MgdG8gc3BlY2lmeSBhCiAvLyBjbGFzcyB0aGF0IGdlbmVyYXRlcyBjdXN0
b20gdGVzdCBuYW1lIHN1ZmZpeGVzIGJhc2VkIG9uIHRoZSB0eXBlLiBUaGlzIHNob3VsZAogLy8g
YmUgYSBjbGFzcyB3aGljaCBoYXMgYSBzdGF0aWMgdGVtcGxhdGUgZnVuY3Rpb24gR2V0TmFtZShp
bnQgaW5kZXgpIHJldHVybmluZwogLy8gYSBzdHJpbmcgZm9yIGVhY2ggdHlwZS4gVGhlIHByb3Zp
ZGVkIGludGVnZXIgaW5kZXggZXF1YWxzIHRoZSBpbmRleCBvZiB0aGUKQEAgLTk5LDcgKzk4LDcg
QEAgVFlQRURfVEVTVChGb29UZXN0LCBIYXNQcm9wZXJ0eUEpIHsgLi4uIH0KIC8vICAgICAgIGlm
IChzdGQ6OmlzX3NhbWU8VCwgdW5zaWduZWQgaW50PigpKSByZXR1cm4gInVuc2lnbmVkSW50IjsK
IC8vICAgICB9CiAvLyAgIH07Ci0vLyAgIFRZUEVEX1RFU1RfQ0FTRShGb29UZXN0LCBNeVR5cGVz
LCBNeVR5cGVOYW1lcyk7CisvLyAgIFRZUEVEX1RFU1RfU1VJVEUoRm9vVGVzdCwgTXlUeXBlcywg
TXlUeXBlTmFtZXMpOwogCiAjZW5kaWYgIC8vIDAKIApAQCAtMTI2LDEzICsxMjUsMTMgQEAgY2xh
c3MgRm9vVGVzdCA6IHB1YmxpYyB0ZXN0aW5nOjpUZXN0IHsKICAgLi4uCiB9OwogCi0vLyBOZXh0
LCBkZWNsYXJlIHRoYXQgeW91IHdpbGwgZGVmaW5lIGEgdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3Qg
Y2FzZQorLy8gTmV4dCwgZGVjbGFyZSB0aGF0IHlvdSB3aWxsIGRlZmluZSBhIHR5cGUtcGFyYW1l
dGVyaXplZCB0ZXN0IHN1aXRlCiAvLyAodGhlIF9QIHN1ZmZpeCBpcyBmb3IgInBhcmFtZXRlcml6
ZWQiIG9yICJwYXR0ZXJuIiwgd2hpY2hldmVyIHlvdQogLy8gcHJlZmVyKToKLVRZUEVEX1RFU1Rf
Q0FTRV9QKEZvb1Rlc3QpOworVFlQRURfVEVTVF9TVUlURV9QKEZvb1Rlc3QpOwogCiAvLyBUaGVu
LCB1c2UgVFlQRURfVEVTVF9QKCkgdG8gZGVmaW5lIGFzIG1hbnkgdHlwZS1wYXJhbWV0ZXJpemVk
IHRlc3RzCi0vLyBmb3IgdGhpcyB0eXBlLXBhcmFtZXRlcml6ZWQgdGVzdCBjYXNlIGFzIHlvdSB3
YW50LgorLy8gZm9yIHRoaXMgdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3Qgc3VpdGUgYXMgeW91IHdh
bnQuCiBUWVBFRF9URVNUX1AoRm9vVGVzdCwgRG9lc0JsYWgpIHsKICAgLy8gSW5zaWRlIGEgdGVz
dCwgcmVmZXIgdG8gVHlwZVBhcmFtIHRvIGdldCB0aGUgdHlwZSBwYXJhbWV0ZXIuCiAgIFR5cGVQ
YXJhbSBuID0gMDsKQEAgLTE0MywxMCArMTQyLDEwIEBAIFRZUEVEX1RFU1RfUChGb29UZXN0LCBI
YXNQcm9wZXJ0eUEpIHsgLi4uIH0KIAogLy8gTm93IHRoZSB0cmlja3kgcGFydDogeW91IG5lZWQg
dG8gcmVnaXN0ZXIgYWxsIHRlc3QgcGF0dGVybnMgYmVmb3JlCiAvLyB5b3UgY2FuIGluc3RhbnRp
YXRlIHRoZW0uICBUaGUgZmlyc3QgYXJndW1lbnQgb2YgdGhlIG1hY3JvIGlzIHRoZQotLy8gdGVz
dCBjYXNlIG5hbWU7IHRoZSByZXN0IGFyZSB0aGUgbmFtZXMgb2YgdGhlIHRlc3RzIGluIHRoaXMg
dGVzdAorLy8gdGVzdCBzdWl0ZSBuYW1lOyB0aGUgcmVzdCBhcmUgdGhlIG5hbWVzIG9mIHRoZSB0
ZXN0cyBpbiB0aGlzIHRlc3QKIC8vIGNhc2UuCi1SRUdJU1RFUl9UWVBFRF9URVNUX0NBU0VfUChG
b29UZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgRG9lc0JsYWgsIEhhc1Byb3BlcnR5
QSk7CitSRUdJU1RFUl9UWVBFRF9URVNUX1NVSVRFX1AoRm9vVGVzdCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBEb2VzQmxhaCwgSGFzUHJvcGVydHlBKTsKIAogLy8gRmluYWxseSwgeW91
IGFyZSBmcmVlIHRvIGluc3RhbnRpYXRlIHRoZSBwYXR0ZXJuIHdpdGggdGhlIHR5cGVzIHlvdQog
Ly8gd2FudC4gIElmIHlvdSBwdXQgdGhlIGFib3ZlIGNvZGUgaW4gYSBoZWFkZXIgZmlsZSwgeW91
IGNhbiAjaW5jbHVkZQpAQCAtMTU0LDIyICsxNTMsMjMgQEAgUkVHSVNURVJfVFlQRURfVEVTVF9D
QVNFX1AoRm9vVGVzdCwKIC8vCiAvLyBUbyBkaXN0aW5ndWlzaCBkaWZmZXJlbnQgaW5zdGFuY2Vz
IG9mIHRoZSBwYXR0ZXJuLCB0aGUgZmlyc3QKIC8vIGFyZ3VtZW50IHRvIHRoZSBJTlNUQU5USUFU
RV8qIG1hY3JvIGlzIGEgcHJlZml4IHRoYXQgd2lsbCBiZSBhZGRlZAotLy8gdG8gdGhlIGFjdHVh
bCB0ZXN0IGNhc2UgbmFtZS4gIFJlbWVtYmVyIHRvIHBpY2sgdW5pcXVlIHByZWZpeGVzIGZvcgor
Ly8gdG8gdGhlIGFjdHVhbCB0ZXN0IHN1aXRlIG5hbWUuICBSZW1lbWJlciB0byBwaWNrIHVuaXF1
ZSBwcmVmaXhlcyBmb3IKIC8vIGRpZmZlcmVudCBpbnN0YW5jZXMuCiB0eXBlZGVmIHRlc3Rpbmc6
OlR5cGVzPGNoYXIsIGludCwgdW5zaWduZWQgaW50PiBNeVR5cGVzOwotSU5TVEFOVElBVEVfVFlQ
RURfVEVTVF9DQVNFX1AoTXksIEZvb1Rlc3QsIE15VHlwZXMpOworSU5TVEFOVElBVEVfVFlQRURf
VEVTVF9TVUlURV9QKE15LCBGb29UZXN0LCBNeVR5cGVzKTsKIAogLy8gSWYgdGhlIHR5cGUgbGlz
dCBjb250YWlucyBvbmx5IG9uZSB0eXBlLCB5b3UgY2FuIHdyaXRlIHRoYXQgdHlwZQogLy8gZGly
ZWN0bHkgd2l0aG91dCBUeXBlczwuLi4+OgotLy8gICBJTlNUQU5USUFURV9UWVBFRF9URVNUX0NB
U0VfUChNeSwgRm9vVGVzdCwgaW50KTsKKy8vICAgSU5TVEFOVElBVEVfVFlQRURfVEVTVF9TVUlU
RV9QKE15LCBGb29UZXN0LCBpbnQpOwogLy8KLS8vIFNpbWlsYXIgdG8gdGhlIG9wdGlvbmFsIGFy
Z3VtZW50IG9mIFRZUEVEX1RFU1RfQ0FTRSBhYm92ZSwKLS8vIElOU1RBTlRJQVRFX1RFU1RfQ0FT
RV9QIHRha2VzIGFuIG9wdGlvbmFsIGZvdXJ0aCBhcmd1bWVudCB3aGljaCBhbGxvd3MgdG8KKy8v
IFNpbWlsYXIgdG8gdGhlIG9wdGlvbmFsIGFyZ3VtZW50IG9mIFRZUEVEX1RFU1RfU1VJVEUgYWJv
dmUsCisvLyBJTlNUQU5USUFURV9URVNUX1NVSVRFX1AgdGFrZXMgYW4gb3B0aW9uYWwgZm91cnRo
IGFyZ3VtZW50IHdoaWNoIGFsbG93cyB0bwogLy8gZ2VuZXJhdGUgY3VzdG9tIG5hbWVzLgotLy8g
ICBJTlNUQU5USUFURV9UWVBFRF9URVNUX0NBU0VfUChNeSwgRm9vVGVzdCwgTXlUeXBlcywgTXlU
eXBlTmFtZXMpOworLy8gICBJTlNUQU5USUFURV9UWVBFRF9URVNUX1NVSVRFX1AoTXksIEZvb1Rl
c3QsIE15VHlwZXMsIE15VHlwZU5hbWVzKTsKIAogI2VuZGlmICAvLyAwCiAKKyNpbmNsdWRlICJn
dGVzdC9pbnRlcm5hbC9ndGVzdC1pbnRlcm5hbC5oIgogI2luY2x1ZGUgImd0ZXN0L2ludGVybmFs
L2d0ZXN0LXBvcnQuaCIKICNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9ndGVzdC10eXBlLXV0aWwu
aCIKIApAQCAtMTgwLDM1ICsxODAsMzMgQEAgSU5TVEFOVElBVEVfVFlQRURfVEVTVF9DQVNFX1Ao
TXksIEZvb1Rlc3QsIE15VHlwZXMpOwogLy8gSU5URVJOQUwgSU1QTEVNRU5UQVRJT04gLSBETyBO
T1QgVVNFIElOIFVTRVIgQ09ERS4KIC8vCiAvLyBFeHBhbmRzIHRvIHRoZSBuYW1lIG9mIHRoZSB0
eXBlZGVmIGZvciB0aGUgdHlwZSBwYXJhbWV0ZXJzIG9mIHRoZQotLy8gZ2l2ZW4gdGVzdCBjYXNl
LgotIyBkZWZpbmUgR1RFU1RfVFlQRV9QQVJBTVNfKFRlc3RDYXNlTmFtZSkgZ3Rlc3RfdHlwZV9w
YXJhbXNfIyNUZXN0Q2FzZU5hbWUjI18KKy8vIGdpdmVuIHRlc3Qgc3VpdGUuCisjZGVmaW5lIEdU
RVNUX1RZUEVfUEFSQU1TXyhUZXN0U3VpdGVOYW1lKSBndGVzdF90eXBlX3BhcmFtc18jI1Rlc3RT
dWl0ZU5hbWUjI18KIAogLy8gRXhwYW5kcyB0byB0aGUgbmFtZSBvZiB0aGUgdHlwZWRlZiBmb3Ig
dGhlIE5hbWVHZW5lcmF0b3IsIHJlc3BvbnNpYmxlIGZvcgogLy8gY3JlYXRpbmcgdGhlIHN1ZmZp
eGVzIG9mIHRoZSBuYW1lLgotI2RlZmluZSBHVEVTVF9OQU1FX0dFTkVSQVRPUl8oVGVzdENhc2VO
YW1lKSBcCi0gIGd0ZXN0X3R5cGVfcGFyYW1zXyMjVGVzdENhc2VOYW1lIyNfTmFtZUdlbmVyYXRv
cgotCi0vLyBUaGUgJ1R5cGVzJyB0ZW1wbGF0ZSBhcmd1bWVudCBiZWxvdyBtdXN0IGhhdmUgc3Bh
Y2VzIGFyb3VuZCBpdAotLy8gc2luY2Ugc29tZSBjb21waWxlcnMgbWF5IGNob2tlIG9uICc+Picg
d2hlbiBwYXNzaW5nIGEgdGVtcGxhdGUKLS8vIGluc3RhbmNlIChlLmcuIFR5cGVzPGludD4pCi0j
IGRlZmluZSBUWVBFRF9URVNUX0NBU0UoQ2FzZU5hbWUsIFR5cGVzLCAuLi4pICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCi0gIHR5cGVkZWYgOjp0ZXN0aW5nOjppbnRlcm5hbDo6VHlwZUxp
c3Q8IFR5cGVzID46OnR5cGUgR1RFU1RfVFlQRV9QQVJBTVNfKCBcCi0gICAgICBDYXNlTmFtZSk7
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCi0gIHR5cGVkZWYgOjp0ZXN0aW5nOjppbnRlcm5hbDo6TmFtZUdlbmVyYXRvclNlbGVjdG9y
PF9fVkFfQVJHU19fPjo6dHlwZSAgICBcCisjZGVmaW5lIEdURVNUX05BTUVfR0VORVJBVE9SXyhU
ZXN0U3VpdGVOYW1lKSBcCisgIGd0ZXN0X3R5cGVfcGFyYW1zXyMjVGVzdFN1aXRlTmFtZSMjX05h
bWVHZW5lcmF0b3IKKworI2RlZmluZSBUWVBFRF9URVNUX1NVSVRFKENhc2VOYW1lLCBUeXBlcywg
Li4uKSAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICB0eXBlZGVmIDo6dGVzdGluZzo6aW50
ZXJuYWw6OkdlbmVyYXRlVHlwZUxpc3Q8VHlwZXM+Ojp0eXBlICAgICAgICAgICAgXAorICAgICAg
R1RFU1RfVFlQRV9QQVJBTVNfKENhc2VOYW1lKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAorICB0eXBlZGVmIDo6dGVzdGluZzo6aW50ZXJuYWw6Ok5hbWVHZW5lcmF0b3JT
ZWxlY3RvcjxfX1ZBX0FSR1NfXz46OnR5cGUgXAogICAgICAgR1RFU1RfTkFNRV9HRU5FUkFUT1Jf
KENhc2VOYW1lKQogCi0jIGRlZmluZSBUWVBFRF9URVNUKENhc2VOYW1lLCBUZXN0TmFtZSkgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisjZGVmaW5lIFRZUEVEX1RFU1Qo
Q2FzZU5hbWUsIFRlc3ROYW1lKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCisgIHN0YXRpY19hc3NlcnQoc2l6ZW9mKEdURVNUX1NUUklOR0lGWV8oVGVzdE5hbWUpKSA+
IDEsICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAgICAgInRlc3QtbmFtZSBt
dXN0IG5vdCBiZSBlbXB0eSIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgIHRl
bXBsYXRlIDx0eXBlbmFtZSBndGVzdF9UeXBlUGFyYW1fPiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCiAgIGNsYXNzIEdURVNUX1RFU1RfQ0xBU1NfTkFNRV8oQ2FzZU5h
bWUsIFRlc3ROYW1lKSAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICA6IHB1Ymxp
YyBDYXNlTmFtZTxndGVzdF9UeXBlUGFyYW1fPiB7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCiAgICBwcml2YXRlOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgdHlwZWRlZiBDYXNlTmFtZTxn
dGVzdF9UeXBlUGFyYW1fPiBUZXN0Rml4dHVyZTsgICAgICAgICAgICAgICAgICAgICAgICAgICBc
CiAgICAgdHlwZWRlZiBndGVzdF9UeXBlUGFyYW1fIFR5cGVQYXJhbTsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgdmlydHVhbCB2b2lkIFRlc3RCb2R5KCk7ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgdm9p
ZCBUZXN0Qm9keSgpIG92ZXJyaWRlOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCiAgIH07ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgIHN0YXRpYyBib29sIGd0
ZXN0XyMjQ2FzZU5hbWUjI18jI1Rlc3ROYW1lIyNfcmVnaXN0ZXJlZF8gICAgICAgICAgICAgICAg
ICAgICBcCi0gICAgICAgIEdURVNUX0FUVFJJQlVURV9VTlVTRURfID0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICA6OnRlc3Rpbmc6OmludGVybmFs
OjpUeXBlUGFyYW1ldGVyaXplZFRlc3Q8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisg
ICAgICBHVEVTVF9BVFRSSUJVVEVfVU5VU0VEXyA9IDo6dGVzdGluZzo6aW50ZXJuYWw6OlR5cGVQ
YXJhbWV0ZXJpemVkVGVzdDwgICBcCiAgICAgICAgICAgQ2FzZU5hbWUsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgICAg
Ojp0ZXN0aW5nOjppbnRlcm5hbDo6VGVtcGxhdGVTZWw8R1RFU1RfVEVTVF9DTEFTU19OQU1FXyhD
YXNlTmFtZSwgICBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBUZXN0TmFtZSk+LCBcCkBAIC0yMTYsNyArMjE0LDggQEAg
SU5TVEFOVElBVEVfVFlQRURfVEVTVF9DQVNFX1AoTXksIEZvb1Rlc3QsIE15VHlwZXMpOwogICAg
ICAgICAgICAgICBDYXNlTmFtZSk+OjpSZWdpc3RlcigiIiwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6
OnRlc3Rpbmc6OmludGVybmFsOjpDb2RlTG9jYXRpb24oICAgICAgICAgXAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgX19GSUxFX18sIF9fTElORV9fKSwgICAgICAgICAg
ICAgICAgICAgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjQ2FzZU5hbWUs
ICNUZXN0TmFtZSwgMCwgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHVEVTVF9TVFJJTkdJRllfKENhc2VOYW1lKSwgICAgICAgICAgICAgICAg
XAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHVEVTVF9TVFJJTkdJRllfKFRl
c3ROYW1lKSwgMCwgICAgICAgICAgICAgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpHZW5lcmF0ZU5hbWVzPCAgICAgICAgXAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR1RFU1RfTkFNRV9HRU5FUkFUT1JfKENh
c2VOYW1lKSwgICAgICAgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
R1RFU1RfVFlQRV9QQVJBTVNfKENhc2VOYW1lKT4oKSk7ICAgICAgXApAQCAtMjI0LDYgKzIyMywx
MyBAQCBJTlNUQU5USUFURV9UWVBFRF9URVNUX0NBU0VfUChNeSwgRm9vVGVzdCwgTXlUeXBlcyk7
CiAgIHZvaWQgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyhDYXNlTmFtZSwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBU
ZXN0TmFtZSk8Z3Rlc3RfVHlwZVBhcmFtXz46OlRlc3RCb2R5KCkKIAorLy8gTGVnYWN5IEFQSSBp
cyBkZXByZWNhdGVkIGJ1dCBzdGlsbCBhdmFpbGFibGUKKyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xF
R0FDWV9URVNUX0NBU0VBUElfCisjZGVmaW5lIFRZUEVEX1RFU1RfQ0FTRSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgc3RhdGljX2Fzc2VydCg6OnRl
c3Rpbmc6OmludGVybmFsOjpUeXBlZFRlc3RDYXNlSXNEZXByZWNhdGVkKCksICIiKTsgXAorICBU
WVBFRF9URVNUX1NVSVRFCisjZW5kaWYgIC8vIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNF
QVBJXworCiAjZW5kaWYgIC8vIEdURVNUX0hBU19UWVBFRF9URVNUCiAKIC8vIEltcGxlbWVudHMg
dHlwZS1wYXJhbWV0ZXJpemVkIHRlc3RzLgpAQCAtMjMzLDczICsyMzksOTggQEAgSU5TVEFOVElB
VEVfVFlQRURfVEVTVF9DQVNFX1AoTXksIEZvb1Rlc3QsIE15VHlwZXMpOwogLy8gSU5URVJOQUwg
SU1QTEVNRU5UQVRJT04gLSBETyBOT1QgVVNFIElOIFVTRVIgQ09ERS4KIC8vCiAvLyBFeHBhbmRz
IHRvIHRoZSBuYW1lc3BhY2UgbmFtZSB0aGF0IHRoZSB0eXBlLXBhcmFtZXRlcml6ZWQgdGVzdHMg
Zm9yCi0vLyB0aGUgZ2l2ZW4gdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3QgY2FzZSBhcmUgZGVmaW5l
ZCBpbi4gIFRoZSBleGFjdAorLy8gdGhlIGdpdmVuIHR5cGUtcGFyYW1ldGVyaXplZCB0ZXN0IHN1
aXRlIGFyZSBkZWZpbmVkIGluLiAgVGhlIGV4YWN0CiAvLyBuYW1lIG9mIHRoZSBuYW1lc3BhY2Ug
aXMgc3ViamVjdCB0byBjaGFuZ2Ugd2l0aG91dCBub3RpY2UuCi0jIGRlZmluZSBHVEVTVF9DQVNF
X05BTUVTUEFDRV8oVGVzdENhc2VOYW1lKSBcCi0gIGd0ZXN0X2Nhc2VfIyNUZXN0Q2FzZU5hbWUj
I18KKyNkZWZpbmUgR1RFU1RfU1VJVEVfTkFNRVNQQUNFXyhUZXN0U3VpdGVOYW1lKSBndGVzdF9z
dWl0ZV8jI1Rlc3RTdWl0ZU5hbWUjI18KIAogLy8gSU5URVJOQUwgSU1QTEVNRU5UQVRJT04gLSBE
TyBOT1QgVVNFIElOIFVTRVIgQ09ERS4KIC8vCiAvLyBFeHBhbmRzIHRvIHRoZSBuYW1lIG9mIHRo
ZSB2YXJpYWJsZSB1c2VkIHRvIHJlbWVtYmVyIHRoZSBuYW1lcyBvZgotLy8gdGhlIGRlZmluZWQg
dGVzdHMgaW4gdGhlIGdpdmVuIHRlc3QgY2FzZS4KLSMgZGVmaW5lIEdURVNUX1RZUEVEX1RFU1Rf
Q0FTRV9QX1NUQVRFXyhUZXN0Q2FzZU5hbWUpIFwKLSAgZ3Rlc3RfdHlwZWRfdGVzdF9jYXNlX3Bf
c3RhdGVfIyNUZXN0Q2FzZU5hbWUjI18KKy8vIHRoZSBkZWZpbmVkIHRlc3RzIGluIHRoZSBnaXZl
biB0ZXN0IHN1aXRlLgorI2RlZmluZSBHVEVTVF9UWVBFRF9URVNUX1NVSVRFX1BfU1RBVEVfKFRl
c3RTdWl0ZU5hbWUpIFwKKyAgZ3Rlc3RfdHlwZWRfdGVzdF9zdWl0ZV9wX3N0YXRlXyMjVGVzdFN1
aXRlTmFtZSMjXwogCiAvLyBJTlRFUk5BTCBJTVBMRU1FTlRBVElPTiAtIERPIE5PVCBVU0UgSU4g
VVNFUiBDT0RFIERJUkVDVExZLgogLy8KIC8vIEV4cGFuZHMgdG8gdGhlIG5hbWUgb2YgdGhlIHZh
cmlhYmxlIHVzZWQgdG8gcmVtZW1iZXIgdGhlIG5hbWVzIG9mCi0vLyB0aGUgcmVnaXN0ZXJlZCB0
ZXN0cyBpbiB0aGUgZ2l2ZW4gdGVzdCBjYXNlLgotIyBkZWZpbmUgR1RFU1RfUkVHSVNURVJFRF9U
RVNUX05BTUVTXyhUZXN0Q2FzZU5hbWUpIFwKLSAgZ3Rlc3RfcmVnaXN0ZXJlZF90ZXN0X25hbWVz
XyMjVGVzdENhc2VOYW1lIyNfCisvLyB0aGUgcmVnaXN0ZXJlZCB0ZXN0cyBpbiB0aGUgZ2l2ZW4g
dGVzdCBzdWl0ZS4KKyNkZWZpbmUgR1RFU1RfUkVHSVNURVJFRF9URVNUX05BTUVTXyhUZXN0U3Vp
dGVOYW1lKSBcCisgIGd0ZXN0X3JlZ2lzdGVyZWRfdGVzdF9uYW1lc18jI1Rlc3RTdWl0ZU5hbWUj
I18KIAogLy8gVGhlIHZhcmlhYmxlcyBkZWZpbmVkIGluIHRoZSB0eXBlLXBhcmFtZXRlcml6ZWQg
dGVzdCBtYWNyb3MgYXJlCiAvLyBzdGF0aWMgYXMgdHlwaWNhbGx5IHRoZXNlIG1hY3JvcyBhcmUg
dXNlZCBpbiBhIC5oIGZpbGUgdGhhdCBjYW4gYmUKIC8vICNpbmNsdWRlZCBpbiBtdWx0aXBsZSB0
cmFuc2xhdGlvbiB1bml0cyBsaW5rZWQgdG9nZXRoZXIuCi0jIGRlZmluZSBUWVBFRF9URVNUX0NB
U0VfUChDYXNlTmFtZSkgXAotICBzdGF0aWMgOjp0ZXN0aW5nOjppbnRlcm5hbDo6VHlwZWRUZXN0
Q2FzZVBTdGF0ZSBcCi0gICAgICBHVEVTVF9UWVBFRF9URVNUX0NBU0VfUF9TVEFURV8oQ2FzZU5h
bWUpCi0KLSMgZGVmaW5lIFRZUEVEX1RFU1RfUChDYXNlTmFtZSwgVGVzdE5hbWUpIFwKLSAgbmFt
ZXNwYWNlIEdURVNUX0NBU0VfTkFNRVNQQUNFXyhDYXNlTmFtZSkgeyBcCi0gIHRlbXBsYXRlIDx0
eXBlbmFtZSBndGVzdF9UeXBlUGFyYW1fPiBcCi0gIGNsYXNzIFRlc3ROYW1lIDogcHVibGljIENh
c2VOYW1lPGd0ZXN0X1R5cGVQYXJhbV8+IHsgXAotICAgcHJpdmF0ZTogXAotICAgIHR5cGVkZWYg
Q2FzZU5hbWU8Z3Rlc3RfVHlwZVBhcmFtXz4gVGVzdEZpeHR1cmU7IFwKLSAgICB0eXBlZGVmIGd0
ZXN0X1R5cGVQYXJhbV8gVHlwZVBhcmFtOyBcCi0gICAgdmlydHVhbCB2b2lkIFRlc3RCb2R5KCk7
IFwKLSAgfTsgXAotICBzdGF0aWMgYm9vbCBndGVzdF8jI1Rlc3ROYW1lIyNfZGVmaW5lZF8gR1RF
U1RfQVRUUklCVVRFX1VOVVNFRF8gPSBcCi0gICAgICBHVEVTVF9UWVBFRF9URVNUX0NBU0VfUF9T
VEFURV8oQ2FzZU5hbWUpLkFkZFRlc3ROYW1lKFwKLSAgICAgICAgICBfX0ZJTEVfXywgX19MSU5F
X18sICNDYXNlTmFtZSwgI1Rlc3ROYW1lKTsgXAotICB9IFwKLSAgdGVtcGxhdGUgPHR5cGVuYW1l
IGd0ZXN0X1R5cGVQYXJhbV8+IFwKLSAgdm9pZCBHVEVTVF9DQVNFX05BTUVTUEFDRV8oQ2FzZU5h
bWUpOjpUZXN0TmFtZTxndGVzdF9UeXBlUGFyYW1fPjo6VGVzdEJvZHkoKQotCi0jIGRlZmluZSBS
RUdJU1RFUl9UWVBFRF9URVNUX0NBU0VfUChDYXNlTmFtZSwgLi4uKSBcCi0gIG5hbWVzcGFjZSBH
VEVTVF9DQVNFX05BTUVTUEFDRV8oQ2FzZU5hbWUpIHsgXAotICB0eXBlZGVmIDo6dGVzdGluZzo6
aW50ZXJuYWw6OlRlbXBsYXRlczxfX1ZBX0FSR1NfXz46OnR5cGUgZ3Rlc3RfQWxsVGVzdHNfOyBc
Ci0gIH0gXAotICBzdGF0aWMgY29uc3QgY2hhciogY29uc3QgR1RFU1RfUkVHSVNURVJFRF9URVNU
X05BTUVTXyhDYXNlTmFtZSkgXAotICAgICAgR1RFU1RfQVRUUklCVVRFX1VOVVNFRF8gPSBcCi0g
ICAgICAgICAgR1RFU1RfVFlQRURfVEVTVF9DQVNFX1BfU1RBVEVfKENhc2VOYW1lKS5WZXJpZnlS
ZWdpc3RlcmVkVGVzdE5hbWVzKCBcCi0gICAgICAgICAgICAgIF9fRklMRV9fLCBfX0xJTkVfXywg
I19fVkFfQVJHU19fKQotCi0vLyBUaGUgJ1R5cGVzJyB0ZW1wbGF0ZSBhcmd1bWVudCBiZWxvdyBt
dXN0IGhhdmUgc3BhY2VzIGFyb3VuZCBpdAotLy8gc2luY2Ugc29tZSBjb21waWxlcnMgbWF5IGNo
b2tlIG9uICc+Picgd2hlbiBwYXNzaW5nIGEgdGVtcGxhdGUKLS8vIGluc3RhbmNlIChlLmcuIFR5
cGVzPGludD4pCi0jIGRlZmluZSBJTlNUQU5USUFURV9UWVBFRF9URVNUX0NBU0VfUChQcmVmaXgs
IENhc2VOYW1lLCBUeXBlcywgLi4uKSAgICAgIFwKLSAgc3RhdGljIGJvb2wgZ3Rlc3RfIyNQcmVm
aXgjI18jI0Nhc2VOYW1lIEdURVNUX0FUVFJJQlVURV9VTlVTRURfID0gICAgICAgXAotICAgICAg
Ojp0ZXN0aW5nOjppbnRlcm5hbDo6VHlwZVBhcmFtZXRlcml6ZWRUZXN0Q2FzZTwgICAgICAgICAg
ICAgICAgICAgICBcCi0gICAgICAgICAgQ2FzZU5hbWUsIEdURVNUX0NBU0VfTkFNRVNQQUNFXyhD
YXNlTmFtZSk6Omd0ZXN0X0FsbFRlc3RzXywgICAgIFwKLSAgICAgICAgICA6OnRlc3Rpbmc6Omlu
dGVybmFsOjpUeXBlTGlzdDwgVHlwZXMgPjo6dHlwZT46OiAgICAgICAgICAgICAgICAgXAotICAg
ICAgICAgIFJlZ2lzdGVyKCNQcmVmaXgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCi0gICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6
Q29kZUxvY2F0aW9uKF9fRklMRV9fLCBfX0xJTkVfXyksIFwKLSAgICAgICAgICAgICAgICAgICAm
R1RFU1RfVFlQRURfVEVTVF9DQVNFX1BfU1RBVEVfKENhc2VOYW1lKSwgI0Nhc2VOYW1lLCAgXAot
ICAgICAgICAgICAgICAgICAgIEdURVNUX1JFR0lTVEVSRURfVEVTVF9OQU1FU18oQ2FzZU5hbWUp
LCAgICAgICAgICAgICAgICBcCi0gICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjppbnRlcm5h
bDo6R2VuZXJhdGVOYW1lczwgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgICAgICAgICAgICAg
ICAgICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6TmFtZUdlbmVyYXRvclNlbGVjdG9yPCAgICAgICAg
XAotICAgICAgICAgICAgICAgICAgICAgICAgICAgX19WQV9BUkdTX18+Ojp0eXBlLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCi0gICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6
aW50ZXJuYWw6OlR5cGVMaXN0PCBUeXBlcyA+Ojp0eXBlPigpKQorI2RlZmluZSBUWVBFRF9URVNU
X1NVSVRFX1AoU3VpdGVOYW1lKSAgICAgICAgICAgICAgXAorICBzdGF0aWMgOjp0ZXN0aW5nOjpp
bnRlcm5hbDo6VHlwZWRUZXN0U3VpdGVQU3RhdGUgXAorICAgICAgR1RFU1RfVFlQRURfVEVTVF9T
VUlURV9QX1NUQVRFXyhTdWl0ZU5hbWUpCisKKy8vIExlZ2FjeSBBUEkgaXMgZGVwcmVjYXRlZCBi
dXQgc3RpbGwgYXZhaWxhYmxlCisjaWZuZGVmIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNF
QVBJXworI2RlZmluZSBUWVBFRF9URVNUX0NBU0VfUCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCisgIHN0YXRpY19hc3NlcnQoOjp0ZXN0aW5nOjppbnRl
cm5hbDo6VHlwZWRUZXN0Q2FzZV9QX0lzRGVwcmVjYXRlZCgpLCAiIik7IFwKKyAgVFlQRURfVEVT
VF9TVUlURV9QCisjZW5kaWYgIC8vIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwor
CisjZGVmaW5lIFRZUEVEX1RFU1RfUChTdWl0ZU5hbWUsIFRlc3ROYW1lKSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICBuYW1lc3BhY2UgR1RFU1RfU1VJVEVfTkFNRVNQQUNFXyhTdWl0
ZU5hbWUpIHsgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUg
Z3Rlc3RfVHlwZVBhcmFtXz4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgY2xh
c3MgVGVzdE5hbWUgOiBwdWJsaWMgU3VpdGVOYW1lPGd0ZXN0X1R5cGVQYXJhbV8+IHsgICAgICAg
ICAgICAgXAorICAgICBwcml2YXRlOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgIHR5cGVkZWYgU3VpdGVOYW1lPGd0ZXN0X1R5
cGVQYXJhbV8+IFRlc3RGaXh0dXJlOyAgICAgICAgICAgICAgICBcCisgICAgICB0eXBlZGVmIGd0
ZXN0X1R5cGVQYXJhbV8gVHlwZVBhcmFtOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAor
ICAgICAgdm9pZCBUZXN0Qm9keSgpIG92ZXJyaWRlOyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKKyAgICB9OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgc3RhdGljIGJvb2wgZ3Rlc3RfIyNU
ZXN0TmFtZSMjX2RlZmluZWRfIEdURVNUX0FUVFJJQlVURV9VTlVTRURfID0gXAorICAgICAgICBH
VEVTVF9UWVBFRF9URVNUX1NVSVRFX1BfU1RBVEVfKFN1aXRlTmFtZSkuQWRkVGVzdE5hbWUoICAg
ICAgIFwKKyAgICAgICAgICAgIF9fRklMRV9fLCBfX0xJTkVfXywgR1RFU1RfU1RSSU5HSUZZXyhT
dWl0ZU5hbWUpLCAgICAgICAgICBcCisgICAgICAgICAgICBHVEVTVF9TVFJJTkdJRllfKFRlc3RO
YW1lKSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICB9ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAg
dGVtcGxhdGUgPHR5cGVuYW1lIGd0ZXN0X1R5cGVQYXJhbV8+ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCisgIHZvaWQgR1RFU1RfU1VJVEVfTkFNRVNQQUNFXyggICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgU3VpdGVOYW1lKTo6VGVzdE5hbWU8
Z3Rlc3RfVHlwZVBhcmFtXz46OlRlc3RCb2R5KCkKKworLy8gTm90ZTogdGhpcyB3b24ndCB3b3Jr
IGNvcnJlY3RseSBpZiB0aGUgdHJhaWxpbmcgYXJndW1lbnRzIGFyZSBtYWNyb3MuCisjZGVmaW5l
IFJFR0lTVEVSX1RZUEVEX1RFU1RfU1VJVEVfUChTdWl0ZU5hbWUsIC4uLikgICAgICAgICAgICAg
ICAgICAgICAgICAgXAorICBuYW1lc3BhY2UgR1RFU1RfU1VJVEVfTkFNRVNQQUNFXyhTdWl0ZU5h
bWUpIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB0eXBlZGVmIDo6dGVzdGlu
Zzo6aW50ZXJuYWw6OlRlbXBsYXRlczxfX1ZBX0FSR1NfXz4gZ3Rlc3RfQWxsVGVzdHNfOyAgICBc
CisgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAorICBzdGF0aWMgY29uc3QgY2hhciogY29uc3QgR1RFU1Rf
UkVHSVNURVJFRF9URVNUX05BTUVTXyggICAgICAgICAgICAgICAgICAgIFwKKyAgICAgIFN1aXRl
TmFtZSkgR1RFU1RfQVRUUklCVVRFX1VOVVNFRF8gPSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCisgICAgICBHVEVTVF9UWVBFRF9URVNUX1NVSVRFX1BfU1RBVEVfKFN1aXRlTmFt
ZSkuVmVyaWZ5UmVnaXN0ZXJlZFRlc3ROYW1lcyggXAorICAgICAgICAgIEdURVNUX1NUUklOR0lG
WV8oU3VpdGVOYW1lKSwgX19GSUxFX18sIF9fTElORV9fLCAjX19WQV9BUkdTX18pCisKKy8vIExl
Z2FjeSBBUEkgaXMgZGVwcmVjYXRlZCBidXQgc3RpbGwgYXZhaWxhYmxlCisjaWZuZGVmIEdURVNU
X1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXworI2RlZmluZSBSRUdJU1RFUl9UWVBFRF9URVNU
X0NBU0VfUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgIHN0
YXRpY19hc3NlcnQoOjp0ZXN0aW5nOjppbnRlcm5hbDo6UmVnaXN0ZXJUeXBlZFRlc3RDYXNlX1Bf
SXNEZXByZWNhdGVkKCksIFwKKyAgICAgICAgICAgICAgICAiIik7ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICBSRUdJU1RFUl9UWVBF
RF9URVNUX1NVSVRFX1AKKyNlbmRpZiAgLy8gR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VB
UElfCisKKyNkZWZpbmUgSU5TVEFOVElBVEVfVFlQRURfVEVTVF9TVUlURV9QKFByZWZpeCwgU3Vp
dGVOYW1lLCBUeXBlcywgLi4uKSAgICAgICBcCisgIHN0YXRpY19hc3NlcnQoc2l6ZW9mKEdURVNU
X1NUUklOR0lGWV8oUHJlZml4KSkgPiAxLCAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAg
ICAgICAgICAgICJ0ZXN0LXN1aXQtcHJlZml4IG11c3Qgbm90IGJlIGVtcHR5Iik7ICAgICAgICAg
ICAgICAgICAgICAgIFwKKyAgc3RhdGljIGJvb2wgZ3Rlc3RfIyNQcmVmaXgjI18jI1N1aXRlTmFt
ZSBHVEVTVF9BVFRSSUJVVEVfVU5VU0VEXyA9ICAgICAgICBcCisgICAgICA6OnRlc3Rpbmc6Omlu
dGVybmFsOjpUeXBlUGFyYW1ldGVyaXplZFRlc3RTdWl0ZTwgICAgICAgICAgICAgICAgICAgICAg
XAorICAgICAgICAgIFN1aXRlTmFtZSwgR1RFU1RfU1VJVEVfTkFNRVNQQUNFXyhTdWl0ZU5hbWUp
OjpndGVzdF9BbGxUZXN0c18sICAgIFwKKyAgICAgICAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpH
ZW5lcmF0ZVR5cGVMaXN0PFR5cGVzPjo6dHlwZT46OiAgICAgICAgICAgICBcCisgICAgICAgICAg
UmVnaXN0ZXIoR1RFU1RfU1RSSU5HSUZZXyhQcmVmaXgpLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6aW50ZXJuYWw6OkNvZGVM
b2NhdGlvbihfX0ZJTEVfXywgX19MSU5FX18pLCAgIFwKKyAgICAgICAgICAgICAgICAgICAmR1RF
U1RfVFlQRURfVEVTVF9TVUlURV9QX1NUQVRFXyhTdWl0ZU5hbWUpLCAgICAgICAgICAgICBcCisg
ICAgICAgICAgICAgICAgICAgR1RFU1RfU1RSSU5HSUZZXyhTdWl0ZU5hbWUpLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgIEdURVNUX1JFR0lTVEVSRURf
VEVTVF9OQU1FU18oU3VpdGVOYW1lKSwgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICAg
ICAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpHZW5lcmF0ZU5hbWVzPCAgICAgICAgICAgICAgICAg
ICAgICBcCisgICAgICAgICAgICAgICAgICAgICAgIDo6dGVzdGluZzo6aW50ZXJuYWw6Ok5hbWVH
ZW5lcmF0b3JTZWxlY3RvcjwgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
X19WQV9BUkdTX18+Ojp0eXBlLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAg
ICAgICAgICAgICAgICAgICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6R2VuZXJhdGVUeXBlTGlzdDxU
eXBlcz46OnR5cGU+KCkpCisKKy8vIExlZ2FjeSBBUEkgaXMgZGVwcmVjYXRlZCBidXQgc3RpbGwg
YXZhaWxhYmxlCisjaWZuZGVmIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXworI2Rl
ZmluZSBJTlNUQU5USUFURV9UWVBFRF9URVNUX0NBU0VfUCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICBzdGF0aWNfYXNzZXJ0KCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgOjp0ZXN0aW5nOjpp
bnRlcm5hbDo6SW5zdGFudGlhdGVUeXBlZFRlc3RDYXNlX1BfSXNEZXByZWNhdGVkKCksICIiKTsg
XAorICBJTlNUQU5USUFURV9UWVBFRF9URVNUX1NVSVRFX1AKKyNlbmRpZiAgLy8gR1RFU1RfUkVN
T1ZFX0xFR0FDWV9URVNUX0NBU0VBUElfCiAKICNlbmRpZiAgLy8gR1RFU1RfSEFTX1RZUEVEX1RF
U1RfUAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3Jj
L2luY2x1ZGUvZ3Rlc3QvZ3Rlc3QuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVz
dC9zcmMvaW5jbHVkZS9ndGVzdC9ndGVzdC5oCmluZGV4IDNiNGJiMWVlOTAyZTY4NWMxMmM4ZWVj
MmYwYmExYmQ1YzMyYjkyOTIuLjM5Y2ZmMDhkNjU2OTU5YzI1MzYyZTI1YTYzNWNlZGNmYjcyMjgz
NjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5j
bHVkZS9ndGVzdC9ndGVzdC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVz
dC9zcmMvaW5jbHVkZS9ndGVzdC9ndGVzdC5oCkBAIC01MiwxMyArNTIsMTcgQEAKICNpZm5kZWYg
R1RFU1RfSU5DTFVERV9HVEVTVF9HVEVTVF9IXwogI2RlZmluZSBHVEVTVF9JTkNMVURFX0dURVNU
X0dURVNUX0hfCiAKKyNpbmNsdWRlIDxjc3RkZGVmPgogI2luY2x1ZGUgPGxpbWl0cz4KKyNpbmNs
dWRlIDxtZW1vcnk+CiAjaW5jbHVkZSA8b3N0cmVhbT4KKyNpbmNsdWRlIDx0eXBlX3RyYWl0cz4K
ICNpbmNsdWRlIDx2ZWN0b3I+CiAKICNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9ndGVzdC1pbnRl
cm5hbC5oIgogI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LXN0cmluZy5oIgogI2luY2x1
ZGUgImd0ZXN0L2d0ZXN0LWRlYXRoLXRlc3QuaCIKKyNpbmNsdWRlICJndGVzdC9ndGVzdC1tYXRj
aGVycy5oIgogI2luY2x1ZGUgImd0ZXN0L2d0ZXN0LW1lc3NhZ2UuaCIKICNpbmNsdWRlICJndGVz
dC9ndGVzdC1wYXJhbS10ZXN0LmgiCiAjaW5jbHVkZSAiZ3Rlc3QvZ3Rlc3QtcHJpbnRlcnMuaCIK
QEAgLTY5LDIxICs3Myw2IEBACiBHVEVTVF9ESVNBQkxFX01TQ19XQVJOSU5HU19QVVNIXyg0MjUx
IFwKIC8qIGNsYXNzIEEgbmVlZHMgdG8gaGF2ZSBkbGwtaW50ZXJmYWNlIHRvIGJlIHVzZWQgYnkg
Y2xpZW50cyBvZiBjbGFzcyBCICovKQogCi0vLyBEZXBlbmRpbmcgb24gdGhlIHBsYXRmb3JtLCBk
aWZmZXJlbnQgc3RyaW5nIGNsYXNzZXMgYXJlIGF2YWlsYWJsZS4KLS8vIE9uIExpbnV4LCBpbiBh
ZGRpdGlvbiB0byA6OnN0ZDo6c3RyaW5nLCBHb29nbGUgYWxzbyBtYWtlcyB1c2Ugb2YKLS8vIGNs
YXNzIDo6c3RyaW5nLCB3aGljaCBoYXMgdGhlIHNhbWUgaW50ZXJmYWNlIGFzIDo6c3RkOjpzdHJp
bmcsIGJ1dAotLy8gaGFzIGEgZGlmZmVyZW50IGltcGxlbWVudGF0aW9uLgotLy8KLS8vIFlvdSBj
YW4gZGVmaW5lIEdURVNUX0hBU19HTE9CQUxfU1RSSU5HIHRvIDEgdG8gaW5kaWNhdGUgdGhhdAot
Ly8gOjpzdHJpbmcgaXMgYXZhaWxhYmxlIEFORCBpcyBhIGRpc3RpbmN0IHR5cGUgdG8gOjpzdGQ6
OnN0cmluZywgb3IKLS8vIGRlZmluZSBpdCB0byAwIHRvIGluZGljYXRlIG90aGVyd2lzZS4KLS8v
Ci0vLyBJZiA6OnN0ZDo6c3RyaW5nIGFuZCA6OnN0cmluZyBhcmUgdGhlIHNhbWUgY2xhc3Mgb24g
eW91ciBwbGF0Zm9ybQotLy8gZHVlIHRvIGFsaWFzaW5nLCB5b3Ugc2hvdWxkIGRlZmluZSBHVEVT
VF9IQVNfR0xPQkFMX1NUUklORyB0byAwLgotLy8KLS8vIElmIHlvdSBkbyBub3QgZGVmaW5lIEdU
RVNUX0hBU19HTE9CQUxfU1RSSU5HLCBpdCBpcyBkZWZpbmVkCi0vLyBoZXVyaXN0aWNhbGx5Lgot
CiBuYW1lc3BhY2UgdGVzdGluZyB7CiAKIC8vIFNpbGVuY2UgQzQxMDAgKHVucmVmZXJlbmNlZCBm
b3JtYWwgcGFyYW1ldGVyKSBhbmQgNDgwNQpAQCAtMTg4LDYgKzE3Nyw3IEBAIGNsYXNzIEZ1Y2hz
aWFEZWF0aFRlc3Q7CiBjbGFzcyBVbml0VGVzdEltcGwqIEdldFVuaXRUZXN0SW1wbCgpOwogdm9p
ZCBSZXBvcnRGYWlsdXJlSW5Vbmtub3duTG9jYXRpb24oVGVzdFBhcnRSZXN1bHQ6OlR5cGUgcmVz
dWx0X3R5cGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6
OnN0cmluZyYgbWVzc2FnZSk7CitzdGQ6OnNldDxzdGQ6OnN0cmluZz4qIEdldElnbm9yZWRQYXJh
bWV0ZXJpemVkVGVzdFN1aXRlcygpOwogCiB9ICAvLyBuYW1lc3BhY2UgaW50ZXJuYWwKIApAQCAt
MTk1LDcgKzE4NSwxMiBAQCB2b2lkIFJlcG9ydEZhaWx1cmVJblVua25vd25Mb2NhdGlvbihUZXN0
UGFydFJlc3VsdDo6VHlwZSByZXN1bHRfdHlwZSwKIC8vIElmIHdlIGRvbid0IGZvcndhcmQgZGVj
bGFyZSB0aGVtIHRoZSBjb21waWxlciBtaWdodCBjb25mdXNlIHRoZSBjbGFzc2VzCiAvLyBpbiBm
cmllbmRzaGlwIGNsYXVzZXMgd2l0aCBzYW1lIG5hbWVkIGNsYXNzZXMgb24gdGhlIHNjb3BlLgog
Y2xhc3MgVGVzdDsKLWNsYXNzIFRlc3RDYXNlOworY2xhc3MgVGVzdFN1aXRlOworCisvLyBPbGQg
QVBJIGlzIHN0aWxsIGF2YWlsYWJsZSBidXQgZGVwcmVjYXRlZAorI2lmbmRlZiBHVEVTVF9SRU1P
VkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KK3VzaW5nIFRlc3RDYXNlID0gVGVzdFN1aXRlOworI2Vu
ZGlmCiBjbGFzcyBUZXN0SW5mbzsKIGNsYXNzIFVuaXRUZXN0OwogCkBAIC0yODQsNyArMjc5LDEx
IEBAIGNsYXNzIEdURVNUX0FQSV8gQXNzZXJ0aW9uUmVzdWx0IHsKICAgLy8gVXNlZCBpbiBFWFBF
Q1RfVFJVRS9GQUxTRShhc3NlcnRpb25fcmVzdWx0KS4KICAgQXNzZXJ0aW9uUmVzdWx0KGNvbnN0
IEFzc2VydGlvblJlc3VsdCYgb3RoZXIpOwogCi0jaWYgZGVmaW5lZChfTVNDX1ZFUikgJiYgX01T
Q19WRVIgPCAxOTEwCisvLyBDNDgwMCBpcyBhIGxldmVsIDMgd2FybmluZyBpbiBWaXN1YWwgU3R1
ZGlvIDIwMTUgYW5kIGVhcmxpZXIuCisvLyBUaGlzIHdhcm5pbmcgaXMgbm90IGVtaXR0ZWQgaW4g
VmlzdWFsIFN0dWRpbyAyMDE3LgorLy8gVGhpcyB3YXJuaW5nIGlzIG9mZiBieSBkZWZhdWx0IHN0
YXJ0aW5nIGluIFZpc3VhbCBTdHVkaW8gMjAxOSBidXQgY2FuIGJlCisvLyBlbmFibGVkIHdpdGgg
Y29tbWFuZC1saW5lIG9wdGlvbnMuCisjaWYgZGVmaW5lZChfTVNDX1ZFUikgJiYgKF9NU0NfVkVS
IDwgMTkxMCB8fCBfTVNDX1ZFUiA+PSAxOTIwKQogICBHVEVTVF9ESVNBQkxFX01TQ19XQVJOSU5H
U19QVVNIXyg0ODAwIC8qIGZvcmNpbmcgdmFsdWUgdG8gYm9vbCAqLykKICNlbmRpZgogCkBAIC0y
OTgsMTIgKzI5NywxMyBAQCBjbGFzcyBHVEVTVF9BUElfIEFzc2VydGlvblJlc3VsdCB7CiAgIHRl
bXBsYXRlIDx0eXBlbmFtZSBUPgogICBleHBsaWNpdCBBc3NlcnRpb25SZXN1bHQoCiAgICAgICBj
b25zdCBUJiBzdWNjZXNzLAotICAgICAgdHlwZW5hbWUgaW50ZXJuYWw6OkVuYWJsZUlmPAotICAg
ICAgICAgICFpbnRlcm5hbDo6SW1wbGljaXRseUNvbnZlcnRpYmxlPFQsIEFzc2VydGlvblJlc3Vs
dD46OnZhbHVlPjo6dHlwZSoKLSAgICAgICAgICAvKmVuYWJsZXIqLyA9IE5VTEwpCisgICAgICB0
eXBlbmFtZSBzdGQ6OmVuYWJsZV9pZjwKKyAgICAgICAgICAhc3RkOjppc19jb252ZXJ0aWJsZTxU
LCBBc3NlcnRpb25SZXN1bHQ+Ojp2YWx1ZT46OnR5cGUqCisgICAgICAvKmVuYWJsZXIqLworICAg
ICAgPSBudWxscHRyKQogICAgICAgOiBzdWNjZXNzXyhzdWNjZXNzKSB7fQogCi0jaWYgZGVmaW5l
ZChfTVNDX1ZFUikgJiYgX01TQ19WRVIgPCAxOTEwCisjaWYgZGVmaW5lZChfTVNDX1ZFUikgJiYg
KF9NU0NfVkVSIDwgMTkxMCB8fCBfTVNDX1ZFUiA+PSAxOTIwKQogICBHVEVTVF9ESVNBQkxFX01T
Q19XQVJOSU5HU19QT1BfKCkKICNlbmRpZgogCkBAIC0zMTMsNyArMzEzLDcgQEAgY2xhc3MgR1RF
U1RfQVBJXyBBc3NlcnRpb25SZXN1bHQgewogICAgIHJldHVybiAqdGhpczsKICAgfQogCi0gIC8v
IFJldHVybnMgdHJ1ZSBpZmYgdGhlIGFzc2VydGlvbiBzdWNjZWVkZWQuCisgIC8vIFJldHVybnMg
dHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgYXNzZXJ0aW9uIHN1Y2NlZWRlZC4KICAgb3BlcmF0b3Ig
Ym9vbCgpIGNvbnN0IHsgcmV0dXJuIHN1Y2Nlc3NfOyB9ICAvLyBOT0xJTlQKIAogICAvLyBSZXR1
cm5zIHRoZSBhc3NlcnRpb24ncyBuZWdhdGlvbi4gVXNlZCB3aXRoIEVYUEVDVC9BU1NFUlRfRkFM
U0UuCkBAIC0zMjQsOSArMzI0LDggQEAgY2xhc3MgR1RFU1RfQVBJXyBBc3NlcnRpb25SZXN1bHQg
ewogICAvLyBhc3NlcnRpb24ncyBleHBlY3RhdGlvbikuIFdoZW4gbm90aGluZyBoYXMgYmVlbiBz
dHJlYW1lZCBpbnRvIHRoZQogICAvLyBvYmplY3QsIHJldHVybnMgYW4gZW1wdHkgc3RyaW5nLgog
ICBjb25zdCBjaGFyKiBtZXNzYWdlKCkgY29uc3QgewotICAgIHJldHVybiBtZXNzYWdlXy5nZXQo
KSAhPSBOVUxMID8gIG1lc3NhZ2VfLT5jX3N0cigpIDogIiI7CisgICAgcmV0dXJuIG1lc3NhZ2Vf
LmdldCgpICE9IG51bGxwdHIgPyBtZXNzYWdlXy0+Y19zdHIoKSA6ICIiOwogICB9Ci0gIC8vIEZJ
WE1FOiBSZW1vdmUgdGhpcyBhZnRlciBtYWtpbmcgc3VyZSBubyBjbGllbnRzIHVzZSBpdC4KICAg
Ly8gRGVwcmVjYXRlZDsgcGxlYXNlIHVzZSBtZXNzYWdlKCkgaW5zdGVhZC4KICAgY29uc3QgY2hh
ciogZmFpbHVyZV9tZXNzYWdlKCkgY29uc3QgeyByZXR1cm4gbWVzc2FnZSgpOyB9CiAKQEAgLTM0
Nyw4ICszNDYsNyBAQCBjbGFzcyBHVEVTVF9BUElfIEFzc2VydGlvblJlc3VsdCB7CiAgcHJpdmF0
ZToKICAgLy8gQXBwZW5kcyB0aGUgY29udGVudHMgb2YgbWVzc2FnZSB0byBtZXNzYWdlXy4KICAg
dm9pZCBBcHBlbmRNZXNzYWdlKGNvbnN0IE1lc3NhZ2UmIGFfbWVzc2FnZSkgewotICAgIGlmICht
ZXNzYWdlXy5nZXQoKSA9PSBOVUxMKQotICAgICAgbWVzc2FnZV8ucmVzZXQobmV3IDo6c3RkOjpz
dHJpbmcpOworICAgIGlmIChtZXNzYWdlXy5nZXQoKSA9PSBudWxscHRyKSBtZXNzYWdlXy5yZXNl
dChuZXcgOjpzdGQ6OnN0cmluZyk7CiAgICAgbWVzc2FnZV8tPmFwcGVuZChhX21lc3NhZ2UuR2V0
U3RyaW5nKCkuY19zdHIoKSk7CiAgIH0KIApAQCAtMzYxLDcgKzM1OSw3IEBAIGNsYXNzIEdURVNU
X0FQSV8gQXNzZXJ0aW9uUmVzdWx0IHsKICAgLy8gY29uc3RydWN0IGlzIG5vdCBzYXRpc2ZpZWQg
d2l0aCB0aGUgcHJlZGljYXRlJ3Mgb3V0Y29tZS4KICAgLy8gUmVmZXJlbmNlZCB2aWEgYSBwb2lu
dGVyIHRvIGF2b2lkIHRha2luZyB0b28gbXVjaCBzdGFjayBmcmFtZSBzcGFjZQogICAvLyB3aXRo
IHRlc3QgYXNzZXJ0aW9ucy4KLSAgaW50ZXJuYWw6OnNjb3BlZF9wdHI8IDo6c3RkOjpzdHJpbmc+
IG1lc3NhZ2VfOworICBzdGQ6OnVuaXF1ZV9wdHI8IDo6c3RkOjpzdHJpbmc+IG1lc3NhZ2VfOwog
fTsKIAogLy8gTWFrZXMgYSBzdWNjZXNzZnVsIGFzc2VydGlvbiByZXN1bHQuCkBAIC0zODUsOCAr
MzgzLDggQEAgbmFtZXNwYWNlIHRlc3RpbmcgewogCiAvLyBUaGUgYWJzdHJhY3QgY2xhc3MgdGhh
dCBhbGwgdGVzdHMgaW5oZXJpdCBmcm9tLgogLy8KLS8vIEluIEdvb2dsZSBUZXN0LCBhIHVuaXQg
dGVzdCBwcm9ncmFtIGNvbnRhaW5zIG9uZSBvciBtYW55IFRlc3RDYXNlcywgYW5kCi0vLyBlYWNo
IFRlc3RDYXNlIGNvbnRhaW5zIG9uZSBvciBtYW55IFRlc3RzLgorLy8gSW4gR29vZ2xlIFRlc3Qs
IGEgdW5pdCB0ZXN0IHByb2dyYW0gY29udGFpbnMgb25lIG9yIG1hbnkgVGVzdFN1aXRlcywgYW5k
CisvLyBlYWNoIFRlc3RTdWl0ZSBjb250YWlucyBvbmUgb3IgbWFueSBUZXN0cy4KIC8vCiAvLyBX
aGVuIHlvdSBkZWZpbmUgYSB0ZXN0IHVzaW5nIHRoZSBURVNUIG1hY3JvLCB5b3UgZG9uJ3QgbmVl
ZCB0bwogLy8gZXhwbGljaXRseSBkZXJpdmUgZnJvbSBUZXN0IC0gdGhlIFRFU1QgbWFjcm8gYXV0
b21hdGljYWxseSBkb2VzCkBAIC00MTAsNDkgKzQwOCw1MyBAQCBjbGFzcyBHVEVTVF9BUElfIFRl
c3QgewogIHB1YmxpYzoKICAgZnJpZW5kIGNsYXNzIFRlc3RJbmZvOwogCi0gIC8vIERlZmluZXMg
dHlwZXMgZm9yIHBvaW50ZXJzIHRvIGZ1bmN0aW9ucyB0aGF0IHNldCB1cCBhbmQgdGVhciBkb3du
Ci0gIC8vIGEgdGVzdCBjYXNlLgotICB0eXBlZGVmIGludGVybmFsOjpTZXRVcFRlc3RDYXNlRnVu
YyBTZXRVcFRlc3RDYXNlRnVuYzsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VGVhckRvd25UZXN0Q2Fz
ZUZ1bmMgVGVhckRvd25UZXN0Q2FzZUZ1bmM7Ci0KICAgLy8gVGhlIGQndG9yIGlzIHZpcnR1YWwg
YXMgd2UgaW50ZW5kIHRvIGluaGVyaXQgZnJvbSBUZXN0LgogICB2aXJ0dWFsIH5UZXN0KCk7CiAK
ICAgLy8gU2V0cyB1cCB0aGUgc3R1ZmYgc2hhcmVkIGJ5IGFsbCB0ZXN0cyBpbiB0aGlzIHRlc3Qg
Y2FzZS4KICAgLy8KLSAgLy8gR29vZ2xlIFRlc3Qgd2lsbCBjYWxsIEZvbzo6U2V0VXBUZXN0Q2Fz
ZSgpIGJlZm9yZSBydW5uaW5nIHRoZSBmaXJzdAorICAvLyBHb29nbGUgVGVzdCB3aWxsIGNhbGwg
Rm9vOjpTZXRVcFRlc3RTdWl0ZSgpIGJlZm9yZSBydW5uaW5nIHRoZSBmaXJzdAogICAvLyB0ZXN0
IGluIHRlc3QgY2FzZSBGb28uICBIZW5jZSBhIHN1Yi1jbGFzcyBjYW4gZGVmaW5lIGl0cyBvd24K
LSAgLy8gU2V0VXBUZXN0Q2FzZSgpIG1ldGhvZCB0byBzaGFkb3cgdGhlIG9uZSBkZWZpbmVkIGlu
IHRoZSBzdXBlcgorICAvLyBTZXRVcFRlc3RTdWl0ZSgpIG1ldGhvZCB0byBzaGFkb3cgdGhlIG9u
ZSBkZWZpbmVkIGluIHRoZSBzdXBlcgogICAvLyBjbGFzcy4KLSAgc3RhdGljIHZvaWQgU2V0VXBU
ZXN0Q2FzZSgpIHt9CisgIHN0YXRpYyB2b2lkIFNldFVwVGVzdFN1aXRlKCkge30KIAotICAvLyBU
ZWFycyBkb3duIHRoZSBzdHVmZiBzaGFyZWQgYnkgYWxsIHRlc3RzIGluIHRoaXMgdGVzdCBjYXNl
LgorICAvLyBUZWFycyBkb3duIHRoZSBzdHVmZiBzaGFyZWQgYnkgYWxsIHRlc3RzIGluIHRoaXMg
dGVzdCBzdWl0ZS4KICAgLy8KLSAgLy8gR29vZ2xlIFRlc3Qgd2lsbCBjYWxsIEZvbzo6VGVhckRv
d25UZXN0Q2FzZSgpIGFmdGVyIHJ1bm5pbmcgdGhlIGxhc3QKKyAgLy8gR29vZ2xlIFRlc3Qgd2ls
bCBjYWxsIEZvbzo6VGVhckRvd25UZXN0U3VpdGUoKSBhZnRlciBydW5uaW5nIHRoZSBsYXN0CiAg
IC8vIHRlc3QgaW4gdGVzdCBjYXNlIEZvby4gIEhlbmNlIGEgc3ViLWNsYXNzIGNhbiBkZWZpbmUg
aXRzIG93bgotICAvLyBUZWFyRG93blRlc3RDYXNlKCkgbWV0aG9kIHRvIHNoYWRvdyB0aGUgb25l
IGRlZmluZWQgaW4gdGhlIHN1cGVyCisgIC8vIFRlYXJEb3duVGVzdFN1aXRlKCkgbWV0aG9kIHRv
IHNoYWRvdyB0aGUgb25lIGRlZmluZWQgaW4gdGhlIHN1cGVyCiAgIC8vIGNsYXNzLgorICBzdGF0
aWMgdm9pZCBUZWFyRG93blRlc3RTdWl0ZSgpIHt9CisKKyAgLy8gTGVnYWN5IEFQSSBpcyBkZXBy
ZWNhdGVkIGJ1dCBzdGlsbCBhdmFpbGFibGUKKyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xFR0FDWV9U
RVNUX0NBU0VBUElfCiAgIHN0YXRpYyB2b2lkIFRlYXJEb3duVGVzdENhc2UoKSB7fQorICBzdGF0
aWMgdm9pZCBTZXRVcFRlc3RDYXNlKCkge30KKyNlbmRpZiAgLy8gR1RFU1RfUkVNT1ZFX0xFR0FD
WV9URVNUX0NBU0VBUElfCiAKLSAgLy8gUmV0dXJucyB0cnVlIGlmZiB0aGUgY3VycmVudCB0ZXN0
IGhhcyBhIGZhdGFsIGZhaWx1cmUuCisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0
aGUgY3VycmVudCB0ZXN0IGhhcyBhIGZhdGFsIGZhaWx1cmUuCiAgIHN0YXRpYyBib29sIEhhc0Zh
dGFsRmFpbHVyZSgpOwogCi0gIC8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIGN1cnJlbnQgdGVzdCBo
YXMgYSBub24tZmF0YWwgZmFpbHVyZS4KKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlm
IHRoZSBjdXJyZW50IHRlc3QgaGFzIGEgbm9uLWZhdGFsIGZhaWx1cmUuCiAgIHN0YXRpYyBib29s
IEhhc05vbmZhdGFsRmFpbHVyZSgpOwogCi0gIC8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIGN1cnJl
bnQgdGVzdCBoYXMgYSAoZWl0aGVyIGZhdGFsIG9yCisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQg
b25seSBpZiB0aGUgY3VycmVudCB0ZXN0IHdhcyBza2lwcGVkLgorICBzdGF0aWMgYm9vbCBJc1Nr
aXBwZWQoKTsKKworICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIGN1cnJlbnQg
dGVzdCBoYXMgYSAoZWl0aGVyIGZhdGFsIG9yCiAgIC8vIG5vbi1mYXRhbCkgZmFpbHVyZS4KICAg
c3RhdGljIGJvb2wgSGFzRmFpbHVyZSgpIHsgcmV0dXJuIEhhc0ZhdGFsRmFpbHVyZSgpIHx8IEhh
c05vbmZhdGFsRmFpbHVyZSgpOyB9CiAKLSAgLy8gTG9ncyBhIHByb3BlcnR5IGZvciB0aGUgY3Vy
cmVudCB0ZXN0LCB0ZXN0IGNhc2UsIG9yIGZvciB0aGUgZW50aXJlCisgIC8vIExvZ3MgYSBwcm9w
ZXJ0eSBmb3IgdGhlIGN1cnJlbnQgdGVzdCwgdGVzdCBzdWl0ZSwgb3IgZm9yIHRoZSBlbnRpcmUK
ICAgLy8gaW52b2NhdGlvbiBvZiB0aGUgdGVzdCBwcm9ncmFtIHdoZW4gdXNlZCBvdXRzaWRlIG9m
IHRoZSBjb250ZXh0IG9mIGEKLSAgLy8gdGVzdCBjYXNlLiAgT25seSB0aGUgbGFzdCB2YWx1ZSBm
b3IgYSBnaXZlbiBrZXkgaXMgcmVtZW1iZXJlZC4gIFRoZXNlCisgIC8vIHRlc3Qgc3VpdGUuICBP
bmx5IHRoZSBsYXN0IHZhbHVlIGZvciBhIGdpdmVuIGtleSBpcyByZW1lbWJlcmVkLiAgVGhlc2UK
ICAgLy8gYXJlIHB1YmxpYyBzdGF0aWMgc28gdGhleSBjYW4gYmUgY2FsbGVkIGZyb20gdXRpbGl0
eSBmdW5jdGlvbnMgdGhhdCBhcmUKICAgLy8gbm90IG1lbWJlcnMgb2YgdGhlIHRlc3QgZml4dHVy
ZS4gIENhbGxzIHRvIFJlY29yZFByb3BlcnR5IG1hZGUgZHVyaW5nCiAgIC8vIGxpZmVzcGFuIG9m
IHRoZSB0ZXN0IChmcm9tIHRoZSBtb21lbnQgaXRzIGNvbnN0cnVjdG9yIHN0YXJ0cyB0byB0aGUK
ICAgLy8gbW9tZW50IGl0cyBkZXN0cnVjdG9yIGZpbmlzaGVzKSB3aWxsIGJlIG91dHB1dCBpbiBY
TUwgYXMgYXR0cmlidXRlcyBvZgogICAvLyB0aGUgPHRlc3RjYXNlPiBlbGVtZW50LiAgUHJvcGVy
dGllcyByZWNvcmRlZCBmcm9tIGZpeHR1cmUncwotICAvLyBTZXRVcFRlc3RDYXNlIG9yIFRlYXJE
b3duVGVzdENhc2UgYXJlIGxvZ2dlZCBhcyBhdHRyaWJ1dGVzIG9mIHRoZQorICAvLyBTZXRVcFRl
c3RTdWl0ZSBvciBUZWFyRG93blRlc3RTdWl0ZSBhcmUgbG9nZ2VkIGFzIGF0dHJpYnV0ZXMgb2Yg
dGhlCiAgIC8vIGNvcnJlc3BvbmRpbmcgPHRlc3RzdWl0ZT4gZWxlbWVudC4gIENhbGxzIHRvIFJl
Y29yZFByb3BlcnR5IG1hZGUgaW4gdGhlCiAgIC8vIGdsb2JhbCBjb250ZXh0IChiZWZvcmUgb3Ig
YWZ0ZXIgaW52b2NhdGlvbiBvZiBSVU5fQUxMX1RFU1RTIGFuZCBmcm9tCiAgIC8vIFNldFVwL1Rl
YXJEb3duIG1ldGhvZCBvZiBFbnZpcm9ubWVudCBvYmplY3RzIHJlZ2lzdGVyZWQgd2l0aCBHb29n
bGUKQEAgLTQ3MSw4ICs0NzMsOCBAQCBjbGFzcyBHVEVTVF9BUElfIFRlc3QgewogICB2aXJ0dWFs
IHZvaWQgVGVhckRvd24oKTsKIAogIHByaXZhdGU6Ci0gIC8vIFJldHVybnMgdHJ1ZSBpZmYgdGhl
IGN1cnJlbnQgdGVzdCBoYXMgdGhlIHNhbWUgZml4dHVyZSBjbGFzcyBhcwotICAvLyB0aGUgZmly
c3QgdGVzdCBpbiB0aGUgY3VycmVudCB0ZXN0IGNhc2UuCisgIC8vIFJldHVybnMgdHJ1ZSBpZiBh
bmQgb25seSBpZiB0aGUgY3VycmVudCB0ZXN0IGhhcyB0aGUgc2FtZSBmaXh0dXJlIGNsYXNzCisg
IC8vIGFzIHRoZSBmaXJzdCB0ZXN0IGluIHRoZSBjdXJyZW50IHRlc3Qgc3VpdGUuCiAgIHN0YXRp
YyBib29sIEhhc1NhbWVGaXh0dXJlQ2xhc3MoKTsKIAogICAvLyBSdW5zIHRoZSB0ZXN0IGFmdGVy
IHRoZSB0ZXN0IGZpeHR1cmUgaGFzIGJlZW4gc2V0IHVwLgpAQCAtNDkwLDcgKzQ5Miw3IEBAIGNs
YXNzIEdURVNUX0FQSV8gVGVzdCB7CiAgIC8vIGludGVybmFsIG1ldGhvZCB0byBhdm9pZCBjbGFz
aGluZyB3aXRoIG5hbWVzIHVzZWQgaW4gdXNlciBURVNUcy4KICAgdm9pZCBEZWxldGVTZWxmXygp
IHsgZGVsZXRlIHRoaXM7IH0KIAotICBjb25zdCBpbnRlcm5hbDo6c2NvcGVkX3B0cjwgR1RFU1Rf
RkxBR19TQVZFUl8gPiBndGVzdF9mbGFnX3NhdmVyXzsKKyAgY29uc3Qgc3RkOjp1bmlxdWVfcHRy
PEdURVNUX0ZMQUdfU0FWRVJfPiBndGVzdF9mbGFnX3NhdmVyXzsKIAogICAvLyBPZnRlbiBhIHVz
ZXIgbWlzc3BlbGxzIFNldFVwKCkgYXMgU2V0dXAoKSBhbmQgc3BlbmRzIGEgbG9uZyB0aW1lCiAg
IC8vIHdvbmRlcmluZyB3aHkgaXQgaXMgbmV2ZXIgY2FsbGVkIGJ5IEdvb2dsZSBUZXN0LiAgVGhl
IGRlY2xhcmF0aW9uIG9mCkBAIC01MDksNyArNTExLDcgQEAgY2xhc3MgR1RFU1RfQVBJXyBUZXN0
IHsKICAgLy8gSWYgeW91IHNlZSBhbiBlcnJvciBhYm91dCBvdmVycmlkaW5nIHRoZSBmb2xsb3dp
bmcgZnVuY3Rpb24gb3IKICAgLy8gYWJvdXQgaXQgYmVpbmcgcHJpdmF0ZSwgeW91IGhhdmUgbWlz
LXNwZWxsZWQgU2V0VXAoKSBhcyBTZXR1cCgpLgogICBzdHJ1Y3QgU2V0dXBfc2hvdWxkX2JlX3Nw
ZWxsZWRfU2V0VXAge307Ci0gIHZpcnR1YWwgU2V0dXBfc2hvdWxkX2JlX3NwZWxsZWRfU2V0VXAq
IFNldHVwKCkgeyByZXR1cm4gTlVMTDsgfQorICB2aXJ0dWFsIFNldHVwX3Nob3VsZF9iZV9zcGVs
bGVkX1NldFVwKiBTZXR1cCgpIHsgcmV0dXJuIG51bGxwdHI7IH0KIAogICAvLyBXZSBkaXNhbGxv
dyBjb3B5aW5nIFRlc3RzLgogICBHVEVTVF9ESVNBTExPV19DT1BZX0FORF9BU1NJR05fKFRlc3Qp
OwpAQCAtNTczLDIxICs1NzUsMjggQEAgY2xhc3MgR1RFU1RfQVBJXyBUZXN0UmVzdWx0IHsKICAg
Ly8gUmV0dXJucyB0aGUgbnVtYmVyIG9mIHRoZSB0ZXN0IHByb3BlcnRpZXMuCiAgIGludCB0ZXN0
X3Byb3BlcnR5X2NvdW50KCkgY29uc3Q7CiAKLSAgLy8gUmV0dXJucyB0cnVlIGlmZiB0aGUgdGVz
dCBwYXNzZWQgKGkuZS4gbm8gdGVzdCBwYXJ0IGZhaWxlZCkuCi0gIGJvb2wgUGFzc2VkKCkgY29u
c3QgeyByZXR1cm4gIUZhaWxlZCgpOyB9CisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBp
ZiB0aGUgdGVzdCBwYXNzZWQgKGkuZS4gbm8gdGVzdCBwYXJ0IGZhaWxlZCkuCisgIGJvb2wgUGFz
c2VkKCkgY29uc3QgeyByZXR1cm4gIVNraXBwZWQoKSAmJiAhRmFpbGVkKCk7IH0KIAotICAvLyBS
ZXR1cm5zIHRydWUgaWZmIHRoZSB0ZXN0IGZhaWxlZC4KKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFu
ZCBvbmx5IGlmIHRoZSB0ZXN0IHdhcyBza2lwcGVkLgorICBib29sIFNraXBwZWQoKSBjb25zdDsK
KworICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHRlc3QgZmFpbGVkLgogICBi
b29sIEZhaWxlZCgpIGNvbnN0OwogCi0gIC8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIHRlc3QgZmF0
YWxseSBmYWlsZWQuCisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgdGVzdCBm
YXRhbGx5IGZhaWxlZC4KICAgYm9vbCBIYXNGYXRhbEZhaWx1cmUoKSBjb25zdDsKIAotICAvLyBS
ZXR1cm5zIHRydWUgaWZmIHRoZSB0ZXN0IGhhcyBhIG5vbi1mYXRhbCBmYWlsdXJlLgorICAvLyBS
ZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHRlc3QgaGFzIGEgbm9uLWZhdGFsIGZhaWx1
cmUuCiAgIGJvb2wgSGFzTm9uZmF0YWxGYWlsdXJlKCkgY29uc3Q7CiAKICAgLy8gUmV0dXJucyB0
aGUgZWxhcHNlZCB0aW1lLCBpbiBtaWxsaXNlY29uZHMuCiAgIFRpbWVJbk1pbGxpcyBlbGFwc2Vk
X3RpbWUoKSBjb25zdCB7IHJldHVybiBlbGFwc2VkX3RpbWVfOyB9CiAKKyAgLy8gR2V0cyB0aGUg
dGltZSBvZiB0aGUgdGVzdCBjYXNlIHN0YXJ0LCBpbiBtcyBmcm9tIHRoZSBzdGFydCBvZiB0aGUK
KyAgLy8gVU5JWCBlcG9jaC4KKyAgVGltZUluTWlsbGlzIHN0YXJ0X3RpbWVzdGFtcCgpIGNvbnN0
IHsgcmV0dXJuIHN0YXJ0X3RpbWVzdGFtcF87IH0KKwogICAvLyBSZXR1cm5zIHRoZSBpLXRoIHRl
c3QgcGFydCByZXN1bHQgYW1vbmcgYWxsIHRoZSByZXN1bHRzLiBpIGNhbiByYW5nZSBmcm9tIDAK
ICAgLy8gdG8gdG90YWxfcGFydF9jb3VudCgpIC0gMS4gSWYgaSBpcyBub3QgaW4gdGhhdCByYW5n
ZSwgYWJvcnRzIHRoZSBwcm9ncmFtLgogICBjb25zdCBUZXN0UGFydFJlc3VsdCYgR2V0VGVzdFBh
cnRSZXN1bHQoaW50IGkpIGNvbnN0OwpAQCAtNTk5LDcgKzYwOCw3IEBAIGNsYXNzIEdURVNUX0FQ
SV8gVGVzdFJlc3VsdCB7CiAKICBwcml2YXRlOgogICBmcmllbmQgY2xhc3MgVGVzdEluZm87Ci0g
IGZyaWVuZCBjbGFzcyBUZXN0Q2FzZTsKKyAgZnJpZW5kIGNsYXNzIFRlc3RTdWl0ZTsKICAgZnJp
ZW5kIGNsYXNzIFVuaXRUZXN0OwogICBmcmllbmQgY2xhc3MgaW50ZXJuYWw6OkRlZmF1bHRHbG9i
YWxUZXN0UGFydFJlc3VsdFJlcG9ydGVyOwogICBmcmllbmQgY2xhc3MgaW50ZXJuYWw6OkV4ZWNE
ZWF0aFRlc3Q7CkBAIC02MTgsNiArNjI3LDkgQEAgY2xhc3MgR1RFU1RfQVBJXyBUZXN0UmVzdWx0
IHsKICAgICByZXR1cm4gdGVzdF9wcm9wZXJ0aWVzXzsKICAgfQogCisgIC8vIFNldHMgdGhlIHN0
YXJ0IHRpbWUuCisgIHZvaWQgc2V0X3N0YXJ0X3RpbWVzdGFtcChUaW1lSW5NaWxsaXMgc3RhcnQp
IHsgc3RhcnRfdGltZXN0YW1wXyA9IHN0YXJ0OyB9CisKICAgLy8gU2V0cyB0aGUgZWxhcHNlZCB0
aW1lLgogICB2b2lkIHNldF9lbGFwc2VkX3RpbWUoVGltZUluTWlsbGlzIGVsYXBzZWQpIHsgZWxh
cHNlZF90aW1lXyA9IGVsYXBzZWQ7IH0KIApAQCAtNjMxLDcgKzY0Myw3IEBAIGNsYXNzIEdURVNU
X0FQSV8gVGVzdFJlc3VsdCB7CiAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVGVzdFByb3Bl
cnR5JiB0ZXN0X3Byb3BlcnR5KTsKIAogICAvLyBBZGRzIGEgZmFpbHVyZSBpZiB0aGUga2V5IGlz
IGEgcmVzZXJ2ZWQgYXR0cmlidXRlIG9mIEdvb2dsZSBUZXN0Ci0gIC8vIHRlc3RjYXNlIHRhZ3Mu
ICBSZXR1cm5zIHRydWUgaWYgdGhlIHByb3BlcnR5IGlzIHZhbGlkLgorICAvLyB0ZXN0c3VpdGUg
dGFncy4gIFJldHVybnMgdHJ1ZSBpZiB0aGUgcHJvcGVydHkgaXMgdmFsaWQuCiAgIC8vIEZJWE1F
OiBWYWxpZGF0ZSBhdHRyaWJ1dGUgbmFtZXMgYXJlIGxlZ2FsIGFuZCBodW1hbiByZWFkYWJsZS4K
ICAgc3RhdGljIGJvb2wgVmFsaWRhdGVUZXN0UHJvcGVydHkoY29uc3Qgc3RkOjpzdHJpbmcmIHht
bF9lbGVtZW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBUZXN0
UHJvcGVydHkmIHRlc3RfcHJvcGVydHkpOwpAQCAtNjYxLDYgKzY3Myw4IEBAIGNsYXNzIEdURVNU
X0FQSV8gVGVzdFJlc3VsdCB7CiAgIHN0ZDo6dmVjdG9yPFRlc3RQcm9wZXJ0eT4gdGVzdF9wcm9w
ZXJ0aWVzXzsKICAgLy8gUnVubmluZyBjb3VudCBvZiBkZWF0aCB0ZXN0cy4KICAgaW50IGRlYXRo
X3Rlc3RfY291bnRfOworICAvLyBUaGUgc3RhcnQgdGltZSwgaW4gbWlsbGlzZWNvbmRzIHNpbmNl
IFVOSVggRXBvY2guCisgIFRpbWVJbk1pbGxpcyBzdGFydF90aW1lc3RhbXBfOwogICAvLyBUaGUg
ZWxhcHNlZCB0aW1lLCBpbiBtaWxsaXNlY29uZHMuCiAgIFRpbWVJbk1pbGxpcyBlbGFwc2VkX3Rp
bWVfOwogCkBAIC02NzAsNyArNjg0LDcgQEAgY2xhc3MgR1RFU1RfQVBJXyBUZXN0UmVzdWx0IHsK
IAogLy8gQSBUZXN0SW5mbyBvYmplY3Qgc3RvcmVzIHRoZSBmb2xsb3dpbmcgaW5mb3JtYXRpb24g
YWJvdXQgYSB0ZXN0OgogLy8KLS8vICAgVGVzdCBjYXNlIG5hbWUKKy8vICAgVGVzdCBzdWl0ZSBu
YW1lCiAvLyAgIFRlc3QgbmFtZQogLy8gICBXaGV0aGVyIHRoZSB0ZXN0IHNob3VsZCBiZSBydW4K
IC8vICAgQSBmdW5jdGlvbiBwb2ludGVyIHRoYXQgY3JlYXRlcyB0aGUgdGVzdCBvYmplY3Qgd2hl
biBpbnZva2VkCkBAIC02ODUsOCArNjk5LDEzIEBAIGNsYXNzIEdURVNUX0FQSV8gVGVzdEluZm8g
ewogICAvLyBkb24ndCBpbmhlcml0IGZyb20gVGVzdEluZm8uCiAgIH5UZXN0SW5mbygpOwogCi0g
IC8vIFJldHVybnMgdGhlIHRlc3QgY2FzZSBuYW1lLgotICBjb25zdCBjaGFyKiB0ZXN0X2Nhc2Vf
bmFtZSgpIGNvbnN0IHsgcmV0dXJuIHRlc3RfY2FzZV9uYW1lXy5jX3N0cigpOyB9CisgIC8vIFJl
dHVybnMgdGhlIHRlc3Qgc3VpdGUgbmFtZS4KKyAgY29uc3QgY2hhciogdGVzdF9zdWl0ZV9uYW1l
KCkgY29uc3QgeyByZXR1cm4gdGVzdF9zdWl0ZV9uYW1lXy5jX3N0cigpOyB9CisKKy8vIExlZ2Fj
eSBBUEkgaXMgZGVwcmVjYXRlZCBidXQgc3RpbGwgYXZhaWxhYmxlCisjaWZuZGVmIEdURVNUX1JF
TU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXworICBjb25zdCBjaGFyKiB0ZXN0X2Nhc2VfbmFtZSgp
IGNvbnN0IHsgcmV0dXJuIHRlc3Rfc3VpdGVfbmFtZSgpOyB9CisjZW5kaWYgIC8vIEdURVNUX1JF
TU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwogCiAgIC8vIFJldHVybnMgdGhlIHRlc3QgbmFtZS4K
ICAgY29uc3QgY2hhciogbmFtZSgpIGNvbnN0IHsgcmV0dXJuIG5hbWVfLmNfc3RyKCk7IH0KQEAg
LTY5NCwxNyArNzEzLDE1IEBAIGNsYXNzIEdURVNUX0FQSV8gVGVzdEluZm8gewogICAvLyBSZXR1
cm5zIHRoZSBuYW1lIG9mIHRoZSBwYXJhbWV0ZXIgdHlwZSwgb3IgTlVMTCBpZiB0aGlzIGlzIG5v
dCBhIHR5cGVkCiAgIC8vIG9yIGEgdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3QuCiAgIGNvbnN0IGNo
YXIqIHR5cGVfcGFyYW0oKSBjb25zdCB7Ci0gICAgaWYgKHR5cGVfcGFyYW1fLmdldCgpICE9IE5V
TEwpCi0gICAgICByZXR1cm4gdHlwZV9wYXJhbV8tPmNfc3RyKCk7Ci0gICAgcmV0dXJuIE5VTEw7
CisgICAgaWYgKHR5cGVfcGFyYW1fLmdldCgpICE9IG51bGxwdHIpIHJldHVybiB0eXBlX3BhcmFt
Xy0+Y19zdHIoKTsKKyAgICByZXR1cm4gbnVsbHB0cjsKICAgfQogCiAgIC8vIFJldHVybnMgdGhl
IHRleHQgcmVwcmVzZW50YXRpb24gb2YgdGhlIHZhbHVlIHBhcmFtZXRlciwgb3IgTlVMTCBpZiB0
aGlzCiAgIC8vIGlzIG5vdCBhIHZhbHVlLXBhcmFtZXRlcml6ZWQgdGVzdC4KICAgY29uc3QgY2hh
ciogdmFsdWVfcGFyYW0oKSBjb25zdCB7Ci0gICAgaWYgKHZhbHVlX3BhcmFtXy5nZXQoKSAhPSBO
VUxMKQotICAgICAgcmV0dXJuIHZhbHVlX3BhcmFtXy0+Y19zdHIoKTsKLSAgICByZXR1cm4gTlVM
TDsKKyAgICBpZiAodmFsdWVfcGFyYW1fLmdldCgpICE9IG51bGxwdHIpIHJldHVybiB2YWx1ZV9w
YXJhbV8tPmNfc3RyKCk7CisgICAgcmV0dXJuIG51bGxwdHI7CiAgIH0KIAogICAvLyBSZXR1cm5z
IHRoZSBmaWxlIG5hbWUgd2hlcmUgdGhpcyB0ZXN0IGlzIGRlZmluZWQuCkBAIC03MjEsNyArNzM4
LDcgQEAgY2xhc3MgR1RFU1RfQVBJXyBUZXN0SW5mbyB7CiAgIC8vIGJlZW4gc3BlY2lmaWVkKSBh
bmQgaXRzIGZ1bGwgbmFtZSBtYXRjaGVzIHRoZSB1c2VyLXNwZWNpZmllZCBmaWx0ZXIuCiAgIC8v
CiAgIC8vIEdvb2dsZSBUZXN0IGFsbG93cyB0aGUgdXNlciB0byBmaWx0ZXIgdGhlIHRlc3RzIGJ5
IHRoZWlyIGZ1bGwgbmFtZXMuCi0gIC8vIFRoZSBmdWxsIG5hbWUgb2YgYSB0ZXN0IEJhciBpbiB0
ZXN0IGNhc2UgRm9vIGlzIGRlZmluZWQgYXMKKyAgLy8gVGhlIGZ1bGwgbmFtZSBvZiBhIHRlc3Qg
QmFyIGluIHRlc3Qgc3VpdGUgRm9vIGlzIGRlZmluZWQgYXMKICAgLy8gIkZvby5CYXIiLiAgT25s
eSB0aGUgdGVzdHMgdGhhdCBtYXRjaCB0aGUgZmlsdGVyIHdpbGwgcnVuLgogICAvLwogICAvLyBB
IGZpbHRlciBpcyBhIGNvbG9uLXNlcGFyYXRlZCBsaXN0IG9mIGdsb2IgKG5vdCByZWdleCkgcGF0
dGVybnMsCkBAIC03MzQsNyArNzUxLDcgQEAgY2xhc3MgR1RFU1RfQVBJXyBUZXN0SW5mbyB7CiAg
IC8vIGNvbnRhaW5zIHRoZSBjaGFyYWN0ZXIgJ0EnIG9yIHN0YXJ0cyB3aXRoICJGb28uIi4KICAg
Ym9vbCBzaG91bGRfcnVuKCkgY29uc3QgeyByZXR1cm4gc2hvdWxkX3J1bl87IH0KIAotICAvLyBS
ZXR1cm5zIHRydWUgaWZmIHRoaXMgdGVzdCB3aWxsIGFwcGVhciBpbiB0aGUgWE1MIHJlcG9ydC4K
KyAgLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoaXMgdGVzdCB3aWxsIGFwcGVhciBp
biB0aGUgWE1MIHJlcG9ydC4KICAgYm9vbCBpc19yZXBvcnRhYmxlKCkgY29uc3QgewogICAgIC8v
IFRoZSBYTUwgcmVwb3J0IGluY2x1ZGVzIHRlc3RzIG1hdGNoaW5nIHRoZSBmaWx0ZXIsIGV4Y2x1
ZGluZyB0aG9zZQogICAgIC8vIHJ1biBpbiBvdGhlciBzaGFyZHMuCkBAIC03NDksMjQgKzc2Niwx
OSBAQCBjbGFzcyBHVEVTVF9BUElfIFRlc3RJbmZvIHsKICAgZnJpZW5kIGNsYXNzIGludGVybmFs
OjpEZWZhdWx0RGVhdGhUZXN0RmFjdG9yeTsKICNlbmRpZiAgLy8gR1RFU1RfSEFTX0RFQVRIX1RF
U1QKICAgZnJpZW5kIGNsYXNzIFRlc3Q7Ci0gIGZyaWVuZCBjbGFzcyBUZXN0Q2FzZTsKKyAgZnJp
ZW5kIGNsYXNzIFRlc3RTdWl0ZTsKICAgZnJpZW5kIGNsYXNzIGludGVybmFsOjpVbml0VGVzdElt
cGw7CiAgIGZyaWVuZCBjbGFzcyBpbnRlcm5hbDo6U3RyZWFtaW5nTGlzdGVuZXJUZXN0OwogICBm
cmllbmQgVGVzdEluZm8qIGludGVybmFsOjpNYWtlQW5kUmVnaXN0ZXJUZXN0SW5mbygKLSAgICAg
IGNvbnN0IGNoYXIqIHRlc3RfY2FzZV9uYW1lLAotICAgICAgY29uc3QgY2hhciogbmFtZSwKLSAg
ICAgIGNvbnN0IGNoYXIqIHR5cGVfcGFyYW0sCi0gICAgICBjb25zdCBjaGFyKiB2YWx1ZV9wYXJh
bSwKLSAgICAgIGludGVybmFsOjpDb2RlTG9jYXRpb24gY29kZV9sb2NhdGlvbiwKLSAgICAgIGlu
dGVybmFsOjpUeXBlSWQgZml4dHVyZV9jbGFzc19pZCwKLSAgICAgIFRlc3Q6OlNldFVwVGVzdENh
c2VGdW5jIHNldF91cF90YywKLSAgICAgIFRlc3Q6OlRlYXJEb3duVGVzdENhc2VGdW5jIHRlYXJf
ZG93bl90YywKKyAgICAgIGNvbnN0IGNoYXIqIHRlc3Rfc3VpdGVfbmFtZSwgY29uc3QgY2hhciog
bmFtZSwgY29uc3QgY2hhciogdHlwZV9wYXJhbSwKKyAgICAgIGNvbnN0IGNoYXIqIHZhbHVlX3Bh
cmFtLCBpbnRlcm5hbDo6Q29kZUxvY2F0aW9uIGNvZGVfbG9jYXRpb24sCisgICAgICBpbnRlcm5h
bDo6VHlwZUlkIGZpeHR1cmVfY2xhc3NfaWQsIGludGVybmFsOjpTZXRVcFRlc3RTdWl0ZUZ1bmMg
c2V0X3VwX3RjLAorICAgICAgaW50ZXJuYWw6OlRlYXJEb3duVGVzdFN1aXRlRnVuYyB0ZWFyX2Rv
d25fdGMsCiAgICAgICBpbnRlcm5hbDo6VGVzdEZhY3RvcnlCYXNlKiBmYWN0b3J5KTsKIAogICAv
LyBDb25zdHJ1Y3RzIGEgVGVzdEluZm8gb2JqZWN0LiBUaGUgbmV3bHkgY29uc3RydWN0ZWQgaW5z
dGFuY2UgYXNzdW1lcwogICAvLyBvd25lcnNoaXAgb2YgdGhlIGZhY3Rvcnkgb2JqZWN0LgotICBU
ZXN0SW5mbyhjb25zdCBzdGQ6OnN0cmluZyYgdGVzdF9jYXNlX25hbWUsCi0gICAgICAgICAgIGNv
bnN0IHN0ZDo6c3RyaW5nJiBuYW1lLAorICBUZXN0SW5mbyhjb25zdCBzdGQ6OnN0cmluZyYgdGVz
dF9zdWl0ZV9uYW1lLCBjb25zdCBzdGQ6OnN0cmluZyYgbmFtZSwKICAgICAgICAgICAgY29uc3Qg
Y2hhciogYV90eXBlX3BhcmFtLCAgIC8vIE5VTEwgaWYgbm90IGEgdHlwZS1wYXJhbWV0ZXJpemVk
IHRlc3QKICAgICAgICAgICAgY29uc3QgY2hhciogYV92YWx1ZV9wYXJhbSwgIC8vIE5VTEwgaWYg
bm90IGEgdmFsdWUtcGFyYW1ldGVyaXplZCB0ZXN0CiAgICAgICAgICAgIGludGVybmFsOjpDb2Rl
TG9jYXRpb24gYV9jb2RlX2xvY2F0aW9uLApAQCAtNzg4LDIxICs4MDAsMjEgQEAgY2xhc3MgR1RF
U1RfQVBJXyBUZXN0SW5mbyB7CiAgIH0KIAogICAvLyBUaGVzZSBmaWVsZHMgYXJlIGltbXV0YWJs
ZSBwcm9wZXJ0aWVzIG9mIHRoZSB0ZXN0LgotICBjb25zdCBzdGQ6OnN0cmluZyB0ZXN0X2Nhc2Vf
bmFtZV87ICAgICAvLyBUZXN0IGNhc2UgbmFtZQorICBjb25zdCBzdGQ6OnN0cmluZyB0ZXN0X3N1
aXRlX25hbWVfOyAgICAvLyB0ZXN0IHN1aXRlIG5hbWUKICAgY29uc3Qgc3RkOjpzdHJpbmcgbmFt
ZV87ICAgICAgICAgICAgICAgLy8gVGVzdCBuYW1lCiAgIC8vIE5hbWUgb2YgdGhlIHBhcmFtZXRl
ciB0eXBlLCBvciBOVUxMIGlmIHRoaXMgaXMgbm90IGEgdHlwZWQgb3IgYQogICAvLyB0eXBlLXBh
cmFtZXRlcml6ZWQgdGVzdC4KLSAgY29uc3QgaW50ZXJuYWw6OnNjb3BlZF9wdHI8Y29uc3QgOjpz
dGQ6OnN0cmluZz4gdHlwZV9wYXJhbV87CisgIGNvbnN0IHN0ZDo6dW5pcXVlX3B0cjxjb25zdCA6
OnN0ZDo6c3RyaW5nPiB0eXBlX3BhcmFtXzsKICAgLy8gVGV4dCByZXByZXNlbnRhdGlvbiBvZiB0
aGUgdmFsdWUgcGFyYW1ldGVyLCBvciBOVUxMIGlmIHRoaXMgaXMgbm90IGEKICAgLy8gdmFsdWUt
cGFyYW1ldGVyaXplZCB0ZXN0LgotICBjb25zdCBpbnRlcm5hbDo6c2NvcGVkX3B0cjxjb25zdCA6
OnN0ZDo6c3RyaW5nPiB2YWx1ZV9wYXJhbV87CisgIGNvbnN0IHN0ZDo6dW5pcXVlX3B0cjxjb25z
dCA6OnN0ZDo6c3RyaW5nPiB2YWx1ZV9wYXJhbV87CiAgIGludGVybmFsOjpDb2RlTG9jYXRpb24g
bG9jYXRpb25fOwotICBjb25zdCBpbnRlcm5hbDo6VHlwZUlkIGZpeHR1cmVfY2xhc3NfaWRfOyAg
IC8vIElEIG9mIHRoZSB0ZXN0IGZpeHR1cmUgY2xhc3MKLSAgYm9vbCBzaG91bGRfcnVuXzsgICAg
ICAgICAgICAgICAgIC8vIFRydWUgaWZmIHRoaXMgdGVzdCBzaG91bGQgcnVuCi0gIGJvb2wgaXNf
ZGlzYWJsZWRfOyAgICAgICAgICAgICAgICAvLyBUcnVlIGlmZiB0aGlzIHRlc3QgaXMgZGlzYWJs
ZWQKLSAgYm9vbCBtYXRjaGVzX2ZpbHRlcl87ICAgICAgICAgICAgIC8vIFRydWUgaWYgdGhpcyB0
ZXN0IG1hdGNoZXMgdGhlCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB1
c2VyLXNwZWNpZmllZCBmaWx0ZXIuCi0gIGJvb2wgaXNfaW5fYW5vdGhlcl9zaGFyZF87ICAgICAg
ICAvLyBXaWxsIGJlIHJ1biBpbiBhbm90aGVyIHNoYXJkLgorICBjb25zdCBpbnRlcm5hbDo6VHlw
ZUlkIGZpeHR1cmVfY2xhc3NfaWRfOyAgLy8gSUQgb2YgdGhlIHRlc3QgZml4dHVyZSBjbGFzcwor
ICBib29sIHNob3VsZF9ydW5fOyAgICAgICAgICAgLy8gVHJ1ZSBpZiBhbmQgb25seSBpZiB0aGlz
IHRlc3Qgc2hvdWxkIHJ1bgorICBib29sIGlzX2Rpc2FibGVkXzsgICAgICAgICAgLy8gVHJ1ZSBp
ZiBhbmQgb25seSBpZiB0aGlzIHRlc3QgaXMgZGlzYWJsZWQKKyAgYm9vbCBtYXRjaGVzX2ZpbHRl
cl87ICAgICAgIC8vIFRydWUgaWYgdGhpcyB0ZXN0IG1hdGNoZXMgdGhlCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvLyB1c2VyLXNwZWNpZmllZCBmaWx0ZXIuCisgIGJvb2wgaXNfaW5f
YW5vdGhlcl9zaGFyZF87ICAvLyBXaWxsIGJlIHJ1biBpbiBhbm90aGVyIHNoYXJkLgogICBpbnRl
cm5hbDo6VGVzdEZhY3RvcnlCYXNlKiBjb25zdCBmYWN0b3J5XzsgIC8vIFRoZSBmYWN0b3J5IHRo
YXQgY3JlYXRlcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8vIHRoZSB0ZXN0IG9iamVjdAogCkBAIC04MTMsOTAgKzgyNSw5OCBAQCBjbGFzcyBHVEVTVF9B
UElfIFRlc3RJbmZvIHsKICAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhUZXN0SW5m
byk7CiB9OwogCi0vLyBBIHRlc3QgY2FzZSwgd2hpY2ggY29uc2lzdHMgb2YgYSB2ZWN0b3Igb2Yg
VGVzdEluZm9zLgorLy8gQSB0ZXN0IHN1aXRlLCB3aGljaCBjb25zaXN0cyBvZiBhIHZlY3RvciBv
ZiBUZXN0SW5mb3MuCiAvLwotLy8gVGVzdENhc2UgaXMgbm90IGNvcHlhYmxlLgotY2xhc3MgR1RF
U1RfQVBJXyBUZXN0Q2FzZSB7CisvLyBUZXN0U3VpdGUgaXMgbm90IGNvcHlhYmxlLgorY2xhc3Mg
R1RFU1RfQVBJXyBUZXN0U3VpdGUgewogIHB1YmxpYzoKLSAgLy8gQ3JlYXRlcyBhIFRlc3RDYXNl
IHdpdGggdGhlIGdpdmVuIG5hbWUuCisgIC8vIENyZWF0ZXMgYSBUZXN0U3VpdGUgd2l0aCB0aGUg
Z2l2ZW4gbmFtZS4KICAgLy8KLSAgLy8gVGVzdENhc2UgZG9lcyBOT1QgaGF2ZSBhIGRlZmF1bHQg
Y29uc3RydWN0b3IuICBBbHdheXMgdXNlIHRoaXMKLSAgLy8gY29uc3RydWN0b3IgdG8gY3JlYXRl
IGEgVGVzdENhc2Ugb2JqZWN0LgorICAvLyBUZXN0U3VpdGUgZG9lcyBOT1QgaGF2ZSBhIGRlZmF1
bHQgY29uc3RydWN0b3IuICBBbHdheXMgdXNlIHRoaXMKKyAgLy8gY29uc3RydWN0b3IgdG8gY3Jl
YXRlIGEgVGVzdFN1aXRlIG9iamVjdC4KICAgLy8KICAgLy8gQXJndW1lbnRzOgogICAvLwotICAv
LyAgIG5hbWU6ICAgICAgICAgbmFtZSBvZiB0aGUgdGVzdCBjYXNlCisgIC8vICAgbmFtZTogICAg
ICAgICBuYW1lIG9mIHRoZSB0ZXN0IHN1aXRlCiAgIC8vICAgYV90eXBlX3BhcmFtOiB0aGUgbmFt
ZSBvZiB0aGUgdGVzdCdzIHR5cGUgcGFyYW1ldGVyLCBvciBOVUxMIGlmCiAgIC8vICAgICAgICAg
ICAgICAgICB0aGlzIGlzIG5vdCBhIHR5cGUtcGFyYW1ldGVyaXplZCB0ZXN0LgotICAvLyAgIHNl
dF91cF90YzogICAgcG9pbnRlciB0byB0aGUgZnVuY3Rpb24gdGhhdCBzZXRzIHVwIHRoZSB0ZXN0
IGNhc2UKLSAgLy8gICB0ZWFyX2Rvd25fdGM6IHBvaW50ZXIgdG8gdGhlIGZ1bmN0aW9uIHRoYXQg
dGVhcnMgZG93biB0aGUgdGVzdCBjYXNlCi0gIFRlc3RDYXNlKGNvbnN0IGNoYXIqIG5hbWUsIGNv
bnN0IGNoYXIqIGFfdHlwZV9wYXJhbSwKLSAgICAgICAgICAgVGVzdDo6U2V0VXBUZXN0Q2FzZUZ1
bmMgc2V0X3VwX3RjLAotICAgICAgICAgICBUZXN0OjpUZWFyRG93blRlc3RDYXNlRnVuYyB0ZWFy
X2Rvd25fdGMpOworICAvLyAgIHNldF91cF90YzogICAgcG9pbnRlciB0byB0aGUgZnVuY3Rpb24g
dGhhdCBzZXRzIHVwIHRoZSB0ZXN0IHN1aXRlCisgIC8vICAgdGVhcl9kb3duX3RjOiBwb2ludGVy
IHRvIHRoZSBmdW5jdGlvbiB0aGF0IHRlYXJzIGRvd24gdGhlIHRlc3Qgc3VpdGUKKyAgVGVzdFN1
aXRlKGNvbnN0IGNoYXIqIG5hbWUsIGNvbnN0IGNoYXIqIGFfdHlwZV9wYXJhbSwKKyAgICAgICAg
ICAgIGludGVybmFsOjpTZXRVcFRlc3RTdWl0ZUZ1bmMgc2V0X3VwX3RjLAorICAgICAgICAgICAg
aW50ZXJuYWw6OlRlYXJEb3duVGVzdFN1aXRlRnVuYyB0ZWFyX2Rvd25fdGMpOwogCi0gIC8vIERl
c3RydWN0b3Igb2YgVGVzdENhc2UuCi0gIHZpcnR1YWwgflRlc3RDYXNlKCk7CisgIC8vIERlc3Ry
dWN0b3Igb2YgVGVzdFN1aXRlLgorICB2aXJ0dWFsIH5UZXN0U3VpdGUoKTsKIAotICAvLyBHZXRz
IHRoZSBuYW1lIG9mIHRoZSBUZXN0Q2FzZS4KKyAgLy8gR2V0cyB0aGUgbmFtZSBvZiB0aGUgVGVz
dFN1aXRlLgogICBjb25zdCBjaGFyKiBuYW1lKCkgY29uc3QgeyByZXR1cm4gbmFtZV8uY19zdHIo
KTsgfQogCiAgIC8vIFJldHVybnMgdGhlIG5hbWUgb2YgdGhlIHBhcmFtZXRlciB0eXBlLCBvciBO
VUxMIGlmIHRoaXMgaXMgbm90IGEKLSAgLy8gdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3QgY2FzZS4K
KyAgLy8gdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3Qgc3VpdGUuCiAgIGNvbnN0IGNoYXIqIHR5cGVf
cGFyYW0oKSBjb25zdCB7Ci0gICAgaWYgKHR5cGVfcGFyYW1fLmdldCgpICE9IE5VTEwpCi0gICAg
ICByZXR1cm4gdHlwZV9wYXJhbV8tPmNfc3RyKCk7Ci0gICAgcmV0dXJuIE5VTEw7CisgICAgaWYg
KHR5cGVfcGFyYW1fLmdldCgpICE9IG51bGxwdHIpIHJldHVybiB0eXBlX3BhcmFtXy0+Y19zdHIo
KTsKKyAgICByZXR1cm4gbnVsbHB0cjsKICAgfQogCi0gIC8vIFJldHVybnMgdHJ1ZSBpZiBhbnkg
dGVzdCBpbiB0aGlzIHRlc3QgY2FzZSBzaG91bGQgcnVuLgorICAvLyBSZXR1cm5zIHRydWUgaWYg
YW55IHRlc3QgaW4gdGhpcyB0ZXN0IHN1aXRlIHNob3VsZCBydW4uCiAgIGJvb2wgc2hvdWxkX3J1
bigpIGNvbnN0IHsgcmV0dXJuIHNob3VsZF9ydW5fOyB9CiAKLSAgLy8gR2V0cyB0aGUgbnVtYmVy
IG9mIHN1Y2Nlc3NmdWwgdGVzdHMgaW4gdGhpcyB0ZXN0IGNhc2UuCisgIC8vIEdldHMgdGhlIG51
bWJlciBvZiBzdWNjZXNzZnVsIHRlc3RzIGluIHRoaXMgdGVzdCBzdWl0ZS4KICAgaW50IHN1Y2Nl
c3NmdWxfdGVzdF9jb3VudCgpIGNvbnN0OwogCi0gIC8vIEdldHMgdGhlIG51bWJlciBvZiBmYWls
ZWQgdGVzdHMgaW4gdGhpcyB0ZXN0IGNhc2UuCisgIC8vIEdldHMgdGhlIG51bWJlciBvZiBza2lw
cGVkIHRlc3RzIGluIHRoaXMgdGVzdCBzdWl0ZS4KKyAgaW50IHNraXBwZWRfdGVzdF9jb3VudCgp
IGNvbnN0OworCisgIC8vIEdldHMgdGhlIG51bWJlciBvZiBmYWlsZWQgdGVzdHMgaW4gdGhpcyB0
ZXN0IHN1aXRlLgogICBpbnQgZmFpbGVkX3Rlc3RfY291bnQoKSBjb25zdDsKIAogICAvLyBHZXRz
IHRoZSBudW1iZXIgb2YgZGlzYWJsZWQgdGVzdHMgdGhhdCB3aWxsIGJlIHJlcG9ydGVkIGluIHRo
ZSBYTUwgcmVwb3J0LgogICBpbnQgcmVwb3J0YWJsZV9kaXNhYmxlZF90ZXN0X2NvdW50KCkgY29u
c3Q7CiAKLSAgLy8gR2V0cyB0aGUgbnVtYmVyIG9mIGRpc2FibGVkIHRlc3RzIGluIHRoaXMgdGVz
dCBjYXNlLgorICAvLyBHZXRzIHRoZSBudW1iZXIgb2YgZGlzYWJsZWQgdGVzdHMgaW4gdGhpcyB0
ZXN0IHN1aXRlLgogICBpbnQgZGlzYWJsZWRfdGVzdF9jb3VudCgpIGNvbnN0OwogCiAgIC8vIEdl
dHMgdGhlIG51bWJlciBvZiB0ZXN0cyB0byBiZSBwcmludGVkIGluIHRoZSBYTUwgcmVwb3J0Lgog
ICBpbnQgcmVwb3J0YWJsZV90ZXN0X2NvdW50KCkgY29uc3Q7CiAKLSAgLy8gR2V0IHRoZSBudW1i
ZXIgb2YgdGVzdHMgaW4gdGhpcyB0ZXN0IGNhc2UgdGhhdCBzaG91bGQgcnVuLgorICAvLyBHZXQg
dGhlIG51bWJlciBvZiB0ZXN0cyBpbiB0aGlzIHRlc3Qgc3VpdGUgdGhhdCBzaG91bGQgcnVuLgog
ICBpbnQgdGVzdF90b19ydW5fY291bnQoKSBjb25zdDsKIAotICAvLyBHZXRzIHRoZSBudW1iZXIg
b2YgYWxsIHRlc3RzIGluIHRoaXMgdGVzdCBjYXNlLgorICAvLyBHZXRzIHRoZSBudW1iZXIgb2Yg
YWxsIHRlc3RzIGluIHRoaXMgdGVzdCBzdWl0ZS4KICAgaW50IHRvdGFsX3Rlc3RfY291bnQoKSBj
b25zdDsKIAotICAvLyBSZXR1cm5zIHRydWUgaWZmIHRoZSB0ZXN0IGNhc2UgcGFzc2VkLgorICAv
LyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHRlc3Qgc3VpdGUgcGFzc2VkLgogICBi
b29sIFBhc3NlZCgpIGNvbnN0IHsgcmV0dXJuICFGYWlsZWQoKTsgfQogCi0gIC8vIFJldHVybnMg
dHJ1ZSBpZmYgdGhlIHRlc3QgY2FzZSBmYWlsZWQuCi0gIGJvb2wgRmFpbGVkKCkgY29uc3QgeyBy
ZXR1cm4gZmFpbGVkX3Rlc3RfY291bnQoKSA+IDA7IH0KKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFu
ZCBvbmx5IGlmIHRoZSB0ZXN0IHN1aXRlIGZhaWxlZC4KKyAgYm9vbCBGYWlsZWQoKSBjb25zdCB7
CisgICAgcmV0dXJuIGZhaWxlZF90ZXN0X2NvdW50KCkgPiAwIHx8IGFkX2hvY190ZXN0X3Jlc3Vs
dCgpLkZhaWxlZCgpOworICB9CiAKICAgLy8gUmV0dXJucyB0aGUgZWxhcHNlZCB0aW1lLCBpbiBt
aWxsaXNlY29uZHMuCiAgIFRpbWVJbk1pbGxpcyBlbGFwc2VkX3RpbWUoKSBjb25zdCB7IHJldHVy
biBlbGFwc2VkX3RpbWVfOyB9CiAKKyAgLy8gR2V0cyB0aGUgdGltZSBvZiB0aGUgdGVzdCBzdWl0
ZSBzdGFydCwgaW4gbXMgZnJvbSB0aGUgc3RhcnQgb2YgdGhlCisgIC8vIFVOSVggZXBvY2guCisg
IFRpbWVJbk1pbGxpcyBzdGFydF90aW1lc3RhbXAoKSBjb25zdCB7IHJldHVybiBzdGFydF90aW1l
c3RhbXBfOyB9CisKICAgLy8gUmV0dXJucyB0aGUgaS10aCB0ZXN0IGFtb25nIGFsbCB0aGUgdGVz
dHMuIGkgY2FuIHJhbmdlIGZyb20gMCB0bwogICAvLyB0b3RhbF90ZXN0X2NvdW50KCkgLSAxLiBJ
ZiBpIGlzIG5vdCBpbiB0aGF0IHJhbmdlLCByZXR1cm5zIE5VTEwuCiAgIGNvbnN0IFRlc3RJbmZv
KiBHZXRUZXN0SW5mbyhpbnQgaSkgY29uc3Q7CiAKICAgLy8gUmV0dXJucyB0aGUgVGVzdFJlc3Vs
dCB0aGF0IGhvbGRzIHRlc3QgcHJvcGVydGllcyByZWNvcmRlZCBkdXJpbmcKLSAgLy8gZXhlY3V0
aW9uIG9mIFNldFVwVGVzdENhc2UgYW5kIFRlYXJEb3duVGVzdENhc2UuCisgIC8vIGV4ZWN1dGlv
biBvZiBTZXRVcFRlc3RTdWl0ZSBhbmQgVGVhckRvd25UZXN0U3VpdGUuCiAgIGNvbnN0IFRlc3RS
ZXN1bHQmIGFkX2hvY190ZXN0X3Jlc3VsdCgpIGNvbnN0IHsgcmV0dXJuIGFkX2hvY190ZXN0X3Jl
c3VsdF87IH0KIAogIHByaXZhdGU6CiAgIGZyaWVuZCBjbGFzcyBUZXN0OwogICBmcmllbmQgY2xh
c3MgaW50ZXJuYWw6OlVuaXRUZXN0SW1wbDsKIAotICAvLyBHZXRzIHRoZSAobXV0YWJsZSkgdmVj
dG9yIG9mIFRlc3RJbmZvcyBpbiB0aGlzIFRlc3RDYXNlLgorICAvLyBHZXRzIHRoZSAobXV0YWJs
ZSkgdmVjdG9yIG9mIFRlc3RJbmZvcyBpbiB0aGlzIFRlc3RTdWl0ZS4KICAgc3RkOjp2ZWN0b3I8
VGVzdEluZm8qPiYgdGVzdF9pbmZvX2xpc3QoKSB7IHJldHVybiB0ZXN0X2luZm9fbGlzdF87IH0K
IAotICAvLyBHZXRzIHRoZSAoaW1tdXRhYmxlKSB2ZWN0b3Igb2YgVGVzdEluZm9zIGluIHRoaXMg
VGVzdENhc2UuCisgIC8vIEdldHMgdGhlIChpbW11dGFibGUpIHZlY3RvciBvZiBUZXN0SW5mb3Mg
aW4gdGhpcyBUZXN0U3VpdGUuCiAgIGNvbnN0IHN0ZDo6dmVjdG9yPFRlc3RJbmZvKj4mIHRlc3Rf
aW5mb19saXN0KCkgY29uc3QgewogICAgIHJldHVybiB0ZXN0X2luZm9fbGlzdF87CiAgIH0KQEAg
LTkwOCw1MSArOTI4LDY0IEBAIGNsYXNzIEdURVNUX0FQSV8gVGVzdENhc2UgewogICAvLyBTZXRz
IHRoZSBzaG91bGRfcnVuIG1lbWJlci4KICAgdm9pZCBzZXRfc2hvdWxkX3J1bihib29sIHNob3Vs
ZCkgeyBzaG91bGRfcnVuXyA9IHNob3VsZDsgfQogCi0gIC8vIEFkZHMgYSBUZXN0SW5mbyB0byB0
aGlzIHRlc3QgY2FzZS4gIFdpbGwgZGVsZXRlIHRoZSBUZXN0SW5mbyB1cG9uCi0gIC8vIGRlc3Ry
dWN0aW9uIG9mIHRoZSBUZXN0Q2FzZSBvYmplY3QuCisgIC8vIEFkZHMgYSBUZXN0SW5mbyB0byB0
aGlzIHRlc3Qgc3VpdGUuICBXaWxsIGRlbGV0ZSB0aGUgVGVzdEluZm8gdXBvbgorICAvLyBkZXN0
cnVjdGlvbiBvZiB0aGUgVGVzdFN1aXRlIG9iamVjdC4KICAgdm9pZCBBZGRUZXN0SW5mbyhUZXN0
SW5mbyAqIHRlc3RfaW5mbyk7CiAKLSAgLy8gQ2xlYXJzIHRoZSByZXN1bHRzIG9mIGFsbCB0ZXN0
cyBpbiB0aGlzIHRlc3QgY2FzZS4KKyAgLy8gQ2xlYXJzIHRoZSByZXN1bHRzIG9mIGFsbCB0ZXN0
cyBpbiB0aGlzIHRlc3Qgc3VpdGUuCiAgIHZvaWQgQ2xlYXJSZXN1bHQoKTsKIAotICAvLyBDbGVh
cnMgdGhlIHJlc3VsdHMgb2YgYWxsIHRlc3RzIGluIHRoZSBnaXZlbiB0ZXN0IGNhc2UuCi0gIHN0
YXRpYyB2b2lkIENsZWFyVGVzdENhc2VSZXN1bHQoVGVzdENhc2UqIHRlc3RfY2FzZSkgewotICAg
IHRlc3RfY2FzZS0+Q2xlYXJSZXN1bHQoKTsKKyAgLy8gQ2xlYXJzIHRoZSByZXN1bHRzIG9mIGFs
bCB0ZXN0cyBpbiB0aGUgZ2l2ZW4gdGVzdCBzdWl0ZS4KKyAgc3RhdGljIHZvaWQgQ2xlYXJUZXN0
U3VpdGVSZXN1bHQoVGVzdFN1aXRlKiB0ZXN0X3N1aXRlKSB7CisgICAgdGVzdF9zdWl0ZS0+Q2xl
YXJSZXN1bHQoKTsKICAgfQogCi0gIC8vIFJ1bnMgZXZlcnkgdGVzdCBpbiB0aGlzIFRlc3RDYXNl
LgorICAvLyBSdW5zIGV2ZXJ5IHRlc3QgaW4gdGhpcyBUZXN0U3VpdGUuCiAgIHZvaWQgUnVuKCk7
CiAKLSAgLy8gUnVucyBTZXRVcFRlc3RDYXNlKCkgZm9yIHRoaXMgVGVzdENhc2UuICBUaGlzIHdy
YXBwZXIgaXMgbmVlZGVkCi0gIC8vIGZvciBjYXRjaGluZyBleGNlcHRpb25zIHRocm93biBmcm9t
IFNldFVwVGVzdENhc2UoKS4KLSAgdm9pZCBSdW5TZXRVcFRlc3RDYXNlKCkgeyAoKnNldF91cF90
Y18pKCk7IH0KKyAgLy8gUnVucyBTZXRVcFRlc3RTdWl0ZSgpIGZvciB0aGlzIFRlc3RTdWl0ZS4g
IFRoaXMgd3JhcHBlciBpcyBuZWVkZWQKKyAgLy8gZm9yIGNhdGNoaW5nIGV4Y2VwdGlvbnMgdGhy
b3duIGZyb20gU2V0VXBUZXN0U3VpdGUoKS4KKyAgdm9pZCBSdW5TZXRVcFRlc3RTdWl0ZSgpIHsK
KyAgICBpZiAoc2V0X3VwX3RjXyAhPSBudWxscHRyKSB7CisgICAgICAoKnNldF91cF90Y18pKCk7
CisgICAgfQorICB9CiAKLSAgLy8gUnVucyBUZWFyRG93blRlc3RDYXNlKCkgZm9yIHRoaXMgVGVz
dENhc2UuICBUaGlzIHdyYXBwZXIgaXMKLSAgLy8gbmVlZGVkIGZvciBjYXRjaGluZyBleGNlcHRp
b25zIHRocm93biBmcm9tIFRlYXJEb3duVGVzdENhc2UoKS4KLSAgdm9pZCBSdW5UZWFyRG93blRl
c3RDYXNlKCkgeyAoKnRlYXJfZG93bl90Y18pKCk7IH0KKyAgLy8gUnVucyBUZWFyRG93blRlc3RT
dWl0ZSgpIGZvciB0aGlzIFRlc3RTdWl0ZS4gIFRoaXMgd3JhcHBlciBpcworICAvLyBuZWVkZWQg
Zm9yIGNhdGNoaW5nIGV4Y2VwdGlvbnMgdGhyb3duIGZyb20gVGVhckRvd25UZXN0U3VpdGUoKS4K
KyAgdm9pZCBSdW5UZWFyRG93blRlc3RTdWl0ZSgpIHsKKyAgICBpZiAodGVhcl9kb3duX3RjXyAh
PSBudWxscHRyKSB7CisgICAgICAoKnRlYXJfZG93bl90Y18pKCk7CisgICAgfQorICB9CiAKLSAg
Ly8gUmV0dXJucyB0cnVlIGlmZiB0ZXN0IHBhc3NlZC4KKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFu
ZCBvbmx5IGlmIHRlc3QgcGFzc2VkLgogICBzdGF0aWMgYm9vbCBUZXN0UGFzc2VkKGNvbnN0IFRl
c3RJbmZvKiB0ZXN0X2luZm8pIHsKICAgICByZXR1cm4gdGVzdF9pbmZvLT5zaG91bGRfcnVuKCkg
JiYgdGVzdF9pbmZvLT5yZXN1bHQoKS0+UGFzc2VkKCk7CiAgIH0KIAotICAvLyBSZXR1cm5zIHRy
dWUgaWZmIHRlc3QgZmFpbGVkLgorICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGVz
dCBza2lwcGVkLgorICBzdGF0aWMgYm9vbCBUZXN0U2tpcHBlZChjb25zdCBUZXN0SW5mbyogdGVz
dF9pbmZvKSB7CisgICAgcmV0dXJuIHRlc3RfaW5mby0+c2hvdWxkX3J1bigpICYmIHRlc3RfaW5m
by0+cmVzdWx0KCktPlNraXBwZWQoKTsKKyAgfQorCisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQg
b25seSBpZiB0ZXN0IGZhaWxlZC4KICAgc3RhdGljIGJvb2wgVGVzdEZhaWxlZChjb25zdCBUZXN0
SW5mbyogdGVzdF9pbmZvKSB7CiAgICAgcmV0dXJuIHRlc3RfaW5mby0+c2hvdWxkX3J1bigpICYm
IHRlc3RfaW5mby0+cmVzdWx0KCktPkZhaWxlZCgpOwogICB9CiAKLSAgLy8gUmV0dXJucyB0cnVl
IGlmZiB0aGUgdGVzdCBpcyBkaXNhYmxlZCBhbmQgd2lsbCBiZSByZXBvcnRlZCBpbiB0aGUgWE1M
Ci0gIC8vIHJlcG9ydC4KKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoZSB0ZXN0
IGlzIGRpc2FibGVkIGFuZCB3aWxsIGJlIHJlcG9ydGVkIGluCisgIC8vIHRoZSBYTUwgcmVwb3J0
LgogICBzdGF0aWMgYm9vbCBUZXN0UmVwb3J0YWJsZURpc2FibGVkKGNvbnN0IFRlc3RJbmZvKiB0
ZXN0X2luZm8pIHsKICAgICByZXR1cm4gdGVzdF9pbmZvLT5pc19yZXBvcnRhYmxlKCkgJiYgdGVz
dF9pbmZvLT5pc19kaXNhYmxlZF87CiAgIH0KIAotICAvLyBSZXR1cm5zIHRydWUgaWZmIHRlc3Qg
aXMgZGlzYWJsZWQuCisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0ZXN0IGlzIGRp
c2FibGVkLgogICBzdGF0aWMgYm9vbCBUZXN0RGlzYWJsZWQoY29uc3QgVGVzdEluZm8qIHRlc3Rf
aW5mbykgewogICAgIHJldHVybiB0ZXN0X2luZm8tPmlzX2Rpc2FibGVkXzsKICAgfQogCi0gIC8v
IFJldHVybnMgdHJ1ZSBpZmYgdGhpcyB0ZXN0IHdpbGwgYXBwZWFyIGluIHRoZSBYTUwgcmVwb3J0
LgorICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhpcyB0ZXN0IHdpbGwgYXBwZWFy
IGluIHRoZSBYTUwgcmVwb3J0LgogICBzdGF0aWMgYm9vbCBUZXN0UmVwb3J0YWJsZShjb25zdCBU
ZXN0SW5mbyogdGVzdF9pbmZvKSB7CiAgICAgcmV0dXJuIHRlc3RfaW5mby0+aXNfcmVwb3J0YWJs
ZSgpOwogICB9CkBAIC05NjIsMTcgKzk5NSwxNyBAQCBjbGFzcyBHVEVTVF9BUElfIFRlc3RDYXNl
IHsKICAgICByZXR1cm4gdGVzdF9pbmZvLT5zaG91bGRfcnVuKCk7CiAgIH0KIAotICAvLyBTaHVm
ZmxlcyB0aGUgdGVzdHMgaW4gdGhpcyB0ZXN0IGNhc2UuCisgIC8vIFNodWZmbGVzIHRoZSB0ZXN0
cyBpbiB0aGlzIHRlc3Qgc3VpdGUuCiAgIHZvaWQgU2h1ZmZsZVRlc3RzKGludGVybmFsOjpSYW5k
b20qIHJhbmRvbSk7CiAKICAgLy8gUmVzdG9yZXMgdGhlIHRlc3Qgb3JkZXIgdG8gYmVmb3JlIHRo
ZSBmaXJzdCBzaHVmZmxlLgogICB2b2lkIFVuc2h1ZmZsZVRlc3RzKCk7CiAKLSAgLy8gTmFtZSBv
ZiB0aGUgdGVzdCBjYXNlLgorICAvLyBOYW1lIG9mIHRoZSB0ZXN0IHN1aXRlLgogICBzdGQ6OnN0
cmluZyBuYW1lXzsKICAgLy8gTmFtZSBvZiB0aGUgcGFyYW1ldGVyIHR5cGUsIG9yIE5VTEwgaWYg
dGhpcyBpcyBub3QgYSB0eXBlZCBvciBhCiAgIC8vIHR5cGUtcGFyYW1ldGVyaXplZCB0ZXN0Lgot
ICBjb25zdCBpbnRlcm5hbDo6c2NvcGVkX3B0cjxjb25zdCA6OnN0ZDo6c3RyaW5nPiB0eXBlX3Bh
cmFtXzsKKyAgY29uc3Qgc3RkOjp1bmlxdWVfcHRyPGNvbnN0IDo6c3RkOjpzdHJpbmc+IHR5cGVf
cGFyYW1fOwogICAvLyBUaGUgdmVjdG9yIG9mIFRlc3RJbmZvcyBpbiB0aGVpciBvcmlnaW5hbCBv
cmRlci4gIEl0IG93bnMgdGhlCiAgIC8vIGVsZW1lbnRzIGluIHRoZSB2ZWN0b3IuCiAgIHN0ZDo6
dmVjdG9yPFRlc3RJbmZvKj4gdGVzdF9pbmZvX2xpc3RfOwpAQCAtOTgwLDIwICsxMDEzLDIyIEBA
IGNsYXNzIEdURVNUX0FQSV8gVGVzdENhc2UgewogICAvLyBzaHVmZmxpbmcgYW5kIHJlc3Rvcmlu
ZyB0aGUgdGVzdCBvcmRlci4gIFRoZSBpLXRoIGVsZW1lbnQgaW4gdGhpcwogICAvLyB2ZWN0b3Ig
aXMgdGhlIGluZGV4IG9mIHRoZSBpLXRoIHRlc3QgaW4gdGhlIHNodWZmbGVkIHRlc3QgbGlzdC4K
ICAgc3RkOjp2ZWN0b3I8aW50PiB0ZXN0X2luZGljZXNfOwotICAvLyBQb2ludGVyIHRvIHRoZSBm
dW5jdGlvbiB0aGF0IHNldHMgdXAgdGhlIHRlc3QgY2FzZS4KLSAgVGVzdDo6U2V0VXBUZXN0Q2Fz
ZUZ1bmMgc2V0X3VwX3RjXzsKLSAgLy8gUG9pbnRlciB0byB0aGUgZnVuY3Rpb24gdGhhdCB0ZWFy
cyBkb3duIHRoZSB0ZXN0IGNhc2UuCi0gIFRlc3Q6OlRlYXJEb3duVGVzdENhc2VGdW5jIHRlYXJf
ZG93bl90Y187Ci0gIC8vIFRydWUgaWZmIGFueSB0ZXN0IGluIHRoaXMgdGVzdCBjYXNlIHNob3Vs
ZCBydW4uCisgIC8vIFBvaW50ZXIgdG8gdGhlIGZ1bmN0aW9uIHRoYXQgc2V0cyB1cCB0aGUgdGVz
dCBzdWl0ZS4KKyAgaW50ZXJuYWw6OlNldFVwVGVzdFN1aXRlRnVuYyBzZXRfdXBfdGNfOworICAv
LyBQb2ludGVyIHRvIHRoZSBmdW5jdGlvbiB0aGF0IHRlYXJzIGRvd24gdGhlIHRlc3Qgc3VpdGUu
CisgIGludGVybmFsOjpUZWFyRG93blRlc3RTdWl0ZUZ1bmMgdGVhcl9kb3duX3RjXzsKKyAgLy8g
VHJ1ZSBpZiBhbmQgb25seSBpZiBhbnkgdGVzdCBpbiB0aGlzIHRlc3Qgc3VpdGUgc2hvdWxkIHJ1
bi4KICAgYm9vbCBzaG91bGRfcnVuXzsKKyAgLy8gVGhlIHN0YXJ0IHRpbWUsIGluIG1pbGxpc2Vj
b25kcyBzaW5jZSBVTklYIEVwb2NoLgorICBUaW1lSW5NaWxsaXMgc3RhcnRfdGltZXN0YW1wXzsK
ICAgLy8gRWxhcHNlZCB0aW1lLCBpbiBtaWxsaXNlY29uZHMuCiAgIFRpbWVJbk1pbGxpcyBlbGFw
c2VkX3RpbWVfOwotICAvLyBIb2xkcyB0ZXN0IHByb3BlcnRpZXMgcmVjb3JkZWQgZHVyaW5nIGV4
ZWN1dGlvbiBvZiBTZXRVcFRlc3RDYXNlIGFuZAotICAvLyBUZWFyRG93blRlc3RDYXNlLgorICAv
LyBIb2xkcyB0ZXN0IHByb3BlcnRpZXMgcmVjb3JkZWQgZHVyaW5nIGV4ZWN1dGlvbiBvZiBTZXRV
cFRlc3RTdWl0ZSBhbmQKKyAgLy8gVGVhckRvd25UZXN0U3VpdGUuCiAgIFRlc3RSZXN1bHQgYWRf
aG9jX3Rlc3RfcmVzdWx0XzsKIAotICAvLyBXZSBkaXNhbGxvdyBjb3B5aW5nIFRlc3RDYXNlcy4K
LSAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhUZXN0Q2FzZSk7CisgIC8vIFdlIGRp
c2FsbG93IGNvcHlpbmcgVGVzdFN1aXRlcy4KKyAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNT
SUdOXyhUZXN0U3VpdGUpOwogfTsKIAogLy8gQW4gRW52aXJvbm1lbnQgb2JqZWN0IGlzIGNhcGFi
bGUgb2Ygc2V0dGluZyB1cCBhbmQgdGVhcmluZyBkb3duIGFuCkBAIC0xMDI0LDcgKzEwNTksNyBA
QCBjbGFzcyBFbnZpcm9ubWVudCB7CiAgIC8vIElmIHlvdSBzZWUgYW4gZXJyb3IgYWJvdXQgb3Zl
cnJpZGluZyB0aGUgZm9sbG93aW5nIGZ1bmN0aW9uIG9yCiAgIC8vIGFib3V0IGl0IGJlaW5nIHBy
aXZhdGUsIHlvdSBoYXZlIG1pcy1zcGVsbGVkIFNldFVwKCkgYXMgU2V0dXAoKS4KICAgc3RydWN0
IFNldHVwX3Nob3VsZF9iZV9zcGVsbGVkX1NldFVwIHt9OwotICB2aXJ0dWFsIFNldHVwX3Nob3Vs
ZF9iZV9zcGVsbGVkX1NldFVwKiBTZXR1cCgpIHsgcmV0dXJuIE5VTEw7IH0KKyAgdmlydHVhbCBT
ZXR1cF9zaG91bGRfYmVfc3BlbGxlZF9TZXRVcCogU2V0dXAoKSB7IHJldHVybiBudWxscHRyOyB9
CiB9OwogCiAjaWYgR1RFU1RfSEFTX0VYQ0VQVElPTlMKQEAgLTEwNjAsOCArMTA5NSwxMyBAQCBj
bGFzcyBUZXN0RXZlbnRMaXN0ZW5lciB7CiAgIC8vIEZpcmVkIGFmdGVyIGVudmlyb25tZW50IHNl
dC11cCBmb3IgZWFjaCBpdGVyYXRpb24gb2YgdGVzdHMgZW5kcy4KICAgdmlydHVhbCB2b2lkIE9u
RW52aXJvbm1lbnRzU2V0VXBFbmQoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCkgPSAwOwogCi0g
IC8vIEZpcmVkIGJlZm9yZSB0aGUgdGVzdCBjYXNlIHN0YXJ0cy4KLSAgdmlydHVhbCB2b2lkIE9u
VGVzdENhc2VTdGFydChjb25zdCBUZXN0Q2FzZSYgdGVzdF9jYXNlKSA9IDA7CisgIC8vIEZpcmVk
IGJlZm9yZSB0aGUgdGVzdCBzdWl0ZSBzdGFydHMuCisgIHZpcnR1YWwgdm9pZCBPblRlc3RTdWl0
ZVN0YXJ0KGNvbnN0IFRlc3RTdWl0ZSYgLyp0ZXN0X3N1aXRlKi8pIHt9CisKKyAgLy8gIExlZ2Fj
eSBBUEkgaXMgZGVwcmVjYXRlZCBidXQgc3RpbGwgYXZhaWxhYmxlCisjaWZuZGVmIEdURVNUX1JF
TU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXworICB2aXJ0dWFsIHZvaWQgT25UZXN0Q2FzZVN0YXJ0
KGNvbnN0IFRlc3RDYXNlJiAvKnRlc3RfY2FzZSovKSB7fQorI2VuZGlmICAvLyAgR1RFU1RfUkVN
T1ZFX0xFR0FDWV9URVNUX0NBU0VBUElfCiAKICAgLy8gRmlyZWQgYmVmb3JlIHRoZSB0ZXN0IHN0
YXJ0cy4KICAgdmlydHVhbCB2b2lkIE9uVGVzdFN0YXJ0KGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2lu
Zm8pID0gMDsKQEAgLTEwNzQsOCArMTExNCwxMyBAQCBjbGFzcyBUZXN0RXZlbnRMaXN0ZW5lciB7
CiAgIC8vIEZpcmVkIGFmdGVyIHRoZSB0ZXN0IGVuZHMuCiAgIHZpcnR1YWwgdm9pZCBPblRlc3RF
bmQoY29uc3QgVGVzdEluZm8mIHRlc3RfaW5mbykgPSAwOwogCi0gIC8vIEZpcmVkIGFmdGVyIHRo
ZSB0ZXN0IGNhc2UgZW5kcy4KLSAgdmlydHVhbCB2b2lkIE9uVGVzdENhc2VFbmQoY29uc3QgVGVz
dENhc2UmIHRlc3RfY2FzZSkgPSAwOworICAvLyBGaXJlZCBhZnRlciB0aGUgdGVzdCBzdWl0ZSBl
bmRzLgorICB2aXJ0dWFsIHZvaWQgT25UZXN0U3VpdGVFbmQoY29uc3QgVGVzdFN1aXRlJiAvKnRl
c3Rfc3VpdGUqLykge30KKworLy8gIExlZ2FjeSBBUEkgaXMgZGVwcmVjYXRlZCBidXQgc3RpbGwg
YXZhaWxhYmxlCisjaWZuZGVmIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXworICB2
aXJ0dWFsIHZvaWQgT25UZXN0Q2FzZUVuZChjb25zdCBUZXN0Q2FzZSYgLyp0ZXN0X2Nhc2UqLykg
e30KKyNlbmRpZiAgLy8gIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwogCiAgIC8v
IEZpcmVkIGJlZm9yZSBlbnZpcm9ubWVudCB0ZWFyLWRvd24gZm9yIGVhY2ggaXRlcmF0aW9uIG9m
IHRlc3RzIHN0YXJ0cy4KICAgdmlydHVhbCB2b2lkIE9uRW52aXJvbm1lbnRzVGVhckRvd25TdGFy
dChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0KSA9IDA7CkBAIC0xMDk4LDIxICsxMTQzLDMwIEBA
IGNsYXNzIFRlc3RFdmVudExpc3RlbmVyIHsKIC8vIGFib3ZlLgogY2xhc3MgRW1wdHlUZXN0RXZl
bnRMaXN0ZW5lciA6IHB1YmxpYyBUZXN0RXZlbnRMaXN0ZW5lciB7CiAgcHVibGljOgotICB2aXJ0
dWFsIHZvaWQgT25UZXN0UHJvZ3JhbVN0YXJ0KGNvbnN0IFVuaXRUZXN0JiAvKnVuaXRfdGVzdCov
KSB7fQotICB2aXJ0dWFsIHZvaWQgT25UZXN0SXRlcmF0aW9uU3RhcnQoY29uc3QgVW5pdFRlc3Qm
IC8qdW5pdF90ZXN0Ki8sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQg
LyppdGVyYXRpb24qLykge30KLSAgdmlydHVhbCB2b2lkIE9uRW52aXJvbm1lbnRzU2V0VXBTdGFy
dChjb25zdCBVbml0VGVzdCYgLyp1bml0X3Rlc3QqLykge30KLSAgdmlydHVhbCB2b2lkIE9uRW52
aXJvbm1lbnRzU2V0VXBFbmQoY29uc3QgVW5pdFRlc3QmIC8qdW5pdF90ZXN0Ki8pIHt9Ci0gIHZp
cnR1YWwgdm9pZCBPblRlc3RDYXNlU3RhcnQoY29uc3QgVGVzdENhc2UmIC8qdGVzdF9jYXNlKi8p
IHt9Ci0gIHZpcnR1YWwgdm9pZCBPblRlc3RTdGFydChjb25zdCBUZXN0SW5mbyYgLyp0ZXN0X2lu
Zm8qLykge30KLSAgdmlydHVhbCB2b2lkIE9uVGVzdFBhcnRSZXN1bHQoY29uc3QgVGVzdFBhcnRS
ZXN1bHQmIC8qdGVzdF9wYXJ0X3Jlc3VsdCovKSB7fQotICB2aXJ0dWFsIHZvaWQgT25UZXN0RW5k
KGNvbnN0IFRlc3RJbmZvJiAvKnRlc3RfaW5mbyovKSB7fQotICB2aXJ0dWFsIHZvaWQgT25UZXN0
Q2FzZUVuZChjb25zdCBUZXN0Q2FzZSYgLyp0ZXN0X2Nhc2UqLykge30KLSAgdmlydHVhbCB2b2lk
IE9uRW52aXJvbm1lbnRzVGVhckRvd25TdGFydChjb25zdCBVbml0VGVzdCYgLyp1bml0X3Rlc3Qq
Lykge30KLSAgdmlydHVhbCB2b2lkIE9uRW52aXJvbm1lbnRzVGVhckRvd25FbmQoY29uc3QgVW5p
dFRlc3QmIC8qdW5pdF90ZXN0Ki8pIHt9Ci0gIHZpcnR1YWwgdm9pZCBPblRlc3RJdGVyYXRpb25F
bmQoY29uc3QgVW5pdFRlc3QmIC8qdW5pdF90ZXN0Ki8sCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50IC8qaXRlcmF0aW9uKi8pIHt9Ci0gIHZpcnR1YWwgdm9pZCBPblRlc3RQ
cm9ncmFtRW5kKGNvbnN0IFVuaXRUZXN0JiAvKnVuaXRfdGVzdCovKSB7fQorICB2b2lkIE9uVGVz
dFByb2dyYW1TdGFydChjb25zdCBVbml0VGVzdCYgLyp1bml0X3Rlc3QqLykgb3ZlcnJpZGUge30K
KyAgdm9pZCBPblRlc3RJdGVyYXRpb25TdGFydChjb25zdCBVbml0VGVzdCYgLyp1bml0X3Rlc3Qq
LywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgLyppdGVyYXRpb24qLykgb3ZlcnJp
ZGUge30KKyAgdm9pZCBPbkVudmlyb25tZW50c1NldFVwU3RhcnQoY29uc3QgVW5pdFRlc3QmIC8q
dW5pdF90ZXN0Ki8pIG92ZXJyaWRlIHt9CisgIHZvaWQgT25FbnZpcm9ubWVudHNTZXRVcEVuZChj
b25zdCBVbml0VGVzdCYgLyp1bml0X3Rlc3QqLykgb3ZlcnJpZGUge30KKyAgdm9pZCBPblRlc3RT
dWl0ZVN0YXJ0KGNvbnN0IFRlc3RTdWl0ZSYgLyp0ZXN0X3N1aXRlKi8pIG92ZXJyaWRlIHt9Cisv
LyAgTGVnYWN5IEFQSSBpcyBkZXByZWNhdGVkIGJ1dCBzdGlsbCBhdmFpbGFibGUKKyNpZm5kZWYg
R1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUElfCisgIHZvaWQgT25UZXN0Q2FzZVN0YXJ0
KGNvbnN0IFRlc3RDYXNlJiAvKnRlc3RfY2FzZSovKSBvdmVycmlkZSB7fQorI2VuZGlmICAvLyAg
R1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUElfCisKKyAgdm9pZCBPblRlc3RTdGFydChj
b25zdCBUZXN0SW5mbyYgLyp0ZXN0X2luZm8qLykgb3ZlcnJpZGUge30KKyAgdm9pZCBPblRlc3RQ
YXJ0UmVzdWx0KGNvbnN0IFRlc3RQYXJ0UmVzdWx0JiAvKnRlc3RfcGFydF9yZXN1bHQqLykgb3Zl
cnJpZGUge30KKyAgdm9pZCBPblRlc3RFbmQoY29uc3QgVGVzdEluZm8mIC8qdGVzdF9pbmZvKi8p
IG92ZXJyaWRlIHt9CisgIHZvaWQgT25UZXN0U3VpdGVFbmQoY29uc3QgVGVzdFN1aXRlJiAvKnRl
c3Rfc3VpdGUqLykgb3ZlcnJpZGUge30KKyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNU
X0NBU0VBUElfCisgIHZvaWQgT25UZXN0Q2FzZUVuZChjb25zdCBUZXN0Q2FzZSYgLyp0ZXN0X2Nh
c2UqLykgb3ZlcnJpZGUge30KKyNlbmRpZiAgLy8gIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9D
QVNFQVBJXworCisgIHZvaWQgT25FbnZpcm9ubWVudHNUZWFyRG93blN0YXJ0KGNvbnN0IFVuaXRU
ZXN0JiAvKnVuaXRfdGVzdCovKSBvdmVycmlkZSB7fQorICB2b2lkIE9uRW52aXJvbm1lbnRzVGVh
ckRvd25FbmQoY29uc3QgVW5pdFRlc3QmIC8qdW5pdF90ZXN0Ki8pIG92ZXJyaWRlIHt9CisgIHZv
aWQgT25UZXN0SXRlcmF0aW9uRW5kKGNvbnN0IFVuaXRUZXN0JiAvKnVuaXRfdGVzdCovLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbnQgLyppdGVyYXRpb24qLykgb3ZlcnJpZGUge30KKyAg
dm9pZCBPblRlc3RQcm9ncmFtRW5kKGNvbnN0IFVuaXRUZXN0JiAvKnVuaXRfdGVzdCovKSBvdmVy
cmlkZSB7fQogfTsKIAogLy8gVGVzdEV2ZW50TGlzdGVuZXJzIGxldHMgdXNlcnMgYWRkIGxpc3Rl
bmVycyB0byB0cmFjayBldmVudHMgaW4gR29vZ2xlIFRlc3QuCkBAIC0xMTUyLDcgKzEyMDYsNyBA
QCBjbGFzcyBHVEVTVF9BUElfIFRlc3RFdmVudExpc3RlbmVycyB7CiAgIH0KIAogIHByaXZhdGU6
Ci0gIGZyaWVuZCBjbGFzcyBUZXN0Q2FzZTsKKyAgZnJpZW5kIGNsYXNzIFRlc3RTdWl0ZTsKICAg
ZnJpZW5kIGNsYXNzIFRlc3RJbmZvOwogICBmcmllbmQgY2xhc3MgaW50ZXJuYWw6OkRlZmF1bHRH
bG9iYWxUZXN0UGFydFJlc3VsdFJlcG9ydGVyOwogICBmcmllbmQgY2xhc3MgaW50ZXJuYWw6Ok5v
RXhlY0RlYXRoVGVzdDsKQEAgLTExOTMsNyArMTI0Nyw3IEBAIGNsYXNzIEdURVNUX0FQSV8gVGVz
dEV2ZW50TGlzdGVuZXJzIHsKICAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhUZXN0
RXZlbnRMaXN0ZW5lcnMpOwogfTsKIAotLy8gQSBVbml0VGVzdCBjb25zaXN0cyBvZiBhIHZlY3Rv
ciBvZiBUZXN0Q2FzZXMuCisvLyBBIFVuaXRUZXN0IGNvbnNpc3RzIG9mIGEgdmVjdG9yIG9mIFRl
c3RTdWl0ZXMuCiAvLwogLy8gVGhpcyBpcyBhIHNpbmdsZXRvbiBjbGFzcy4gIFRoZSBvbmx5IGlu
c3RhbmNlIG9mIFVuaXRUZXN0IGlzCiAvLyBjcmVhdGVkIHdoZW4gVW5pdFRlc3Q6OkdldEluc3Rh
bmNlKCkgaXMgZmlyc3QgY2FsbGVkLiAgVGhpcwpAQCAtMTIyMiwxMCArMTI3NiwxNCBAQCBjbGFz
cyBHVEVTVF9BUElfIFVuaXRUZXN0IHsKICAgLy8gd2FzIGV4ZWN1dGVkLiAgVGhlIFVuaXRUZXN0
IG9iamVjdCBvd25zIHRoZSBzdHJpbmcuCiAgIGNvbnN0IGNoYXIqIG9yaWdpbmFsX3dvcmtpbmdf
ZGlyKCkgY29uc3Q7CiAKLSAgLy8gUmV0dXJucyB0aGUgVGVzdENhc2Ugb2JqZWN0IGZvciB0aGUg
dGVzdCB0aGF0J3MgY3VycmVudGx5IHJ1bm5pbmcsCisgIC8vIFJldHVybnMgdGhlIFRlc3RTdWl0
ZSBvYmplY3QgZm9yIHRoZSB0ZXN0IHRoYXQncyBjdXJyZW50bHkgcnVubmluZywKICAgLy8gb3Ig
TlVMTCBpZiBubyB0ZXN0IGlzIHJ1bm5pbmcuCi0gIGNvbnN0IFRlc3RDYXNlKiBjdXJyZW50X3Rl
c3RfY2FzZSgpIGNvbnN0Ci0gICAgICBHVEVTVF9MT0NLX0VYQ0xVREVEXyhtdXRleF8pOworICBj
b25zdCBUZXN0U3VpdGUqIGN1cnJlbnRfdGVzdF9zdWl0ZSgpIGNvbnN0IEdURVNUX0xPQ0tfRVhD
TFVERURfKG11dGV4Xyk7CisKKy8vIExlZ2FjeSBBUEkgaXMgc3RpbGwgYXZhaWxhYmxlIGJ1dCBk
ZXByZWNhdGVkCisjaWZuZGVmIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXworICBj
b25zdCBUZXN0Q2FzZSogY3VycmVudF90ZXN0X2Nhc2UoKSBjb25zdCBHVEVTVF9MT0NLX0VYQ0xV
REVEXyhtdXRleF8pOworI2VuZGlmCiAKICAgLy8gUmV0dXJucyB0aGUgVGVzdEluZm8gb2JqZWN0
IGZvciB0aGUgdGVzdCB0aGF0J3MgY3VycmVudGx5IHJ1bm5pbmcsCiAgIC8vIG9yIE5VTEwgaWYg
bm8gdGVzdCBpcyBydW5uaW5nLgpAQCAtMTIzNSwyOSArMTI5Myw0MCBAQCBjbGFzcyBHVEVTVF9B
UElfIFVuaXRUZXN0IHsKICAgLy8gUmV0dXJucyB0aGUgcmFuZG9tIHNlZWQgdXNlZCBhdCB0aGUg
c3RhcnQgb2YgdGhlIGN1cnJlbnQgdGVzdCBydW4uCiAgIGludCByYW5kb21fc2VlZCgpIGNvbnN0
OwogCi0gIC8vIFJldHVybnMgdGhlIFBhcmFtZXRlcml6ZWRUZXN0Q2FzZVJlZ2lzdHJ5IG9iamVj
dCB1c2VkIHRvIGtlZXAgdHJhY2sgb2YKKyAgLy8gUmV0dXJucyB0aGUgUGFyYW1ldGVyaXplZFRl
c3RTdWl0ZVJlZ2lzdHJ5IG9iamVjdCB1c2VkIHRvIGtlZXAgdHJhY2sgb2YKICAgLy8gdmFsdWUt
cGFyYW1ldGVyaXplZCB0ZXN0cyBhbmQgaW5zdGFudGlhdGUgYW5kIHJlZ2lzdGVyIHRoZW0uCiAg
IC8vCiAgIC8vIElOVEVSTkFMIElNUExFTUVOVEFUSU9OIC0gRE8gTk9UIFVTRSBJTiBBIFVTRVIg
UFJPR1JBTS4KLSAgaW50ZXJuYWw6OlBhcmFtZXRlcml6ZWRUZXN0Q2FzZVJlZ2lzdHJ5JiBwYXJh
bWV0ZXJpemVkX3Rlc3RfcmVnaXN0cnkoKQorICBpbnRlcm5hbDo6UGFyYW1ldGVyaXplZFRlc3RT
dWl0ZVJlZ2lzdHJ5JiBwYXJhbWV0ZXJpemVkX3Rlc3RfcmVnaXN0cnkoKQogICAgICAgR1RFU1Rf
TE9DS19FWENMVURFRF8obXV0ZXhfKTsKIAotICAvLyBHZXRzIHRoZSBudW1iZXIgb2Ygc3VjY2Vz
c2Z1bCB0ZXN0IGNhc2VzLgotICBpbnQgc3VjY2Vzc2Z1bF90ZXN0X2Nhc2VfY291bnQoKSBjb25z
dDsKKyAgLy8gR2V0cyB0aGUgbnVtYmVyIG9mIHN1Y2Nlc3NmdWwgdGVzdCBzdWl0ZXMuCisgIGlu
dCBzdWNjZXNzZnVsX3Rlc3Rfc3VpdGVfY291bnQoKSBjb25zdDsKIAotICAvLyBHZXRzIHRoZSBu
dW1iZXIgb2YgZmFpbGVkIHRlc3QgY2FzZXMuCi0gIGludCBmYWlsZWRfdGVzdF9jYXNlX2NvdW50
KCkgY29uc3Q7CisgIC8vIEdldHMgdGhlIG51bWJlciBvZiBmYWlsZWQgdGVzdCBzdWl0ZXMuCisg
IGludCBmYWlsZWRfdGVzdF9zdWl0ZV9jb3VudCgpIGNvbnN0OwogCi0gIC8vIEdldHMgdGhlIG51
bWJlciBvZiBhbGwgdGVzdCBjYXNlcy4KLSAgaW50IHRvdGFsX3Rlc3RfY2FzZV9jb3VudCgpIGNv
bnN0OworICAvLyBHZXRzIHRoZSBudW1iZXIgb2YgYWxsIHRlc3Qgc3VpdGVzLgorICBpbnQgdG90
YWxfdGVzdF9zdWl0ZV9jb3VudCgpIGNvbnN0OwogCi0gIC8vIEdldHMgdGhlIG51bWJlciBvZiBh
bGwgdGVzdCBjYXNlcyB0aGF0IGNvbnRhaW4gYXQgbGVhc3Qgb25lIHRlc3QKKyAgLy8gR2V0cyB0
aGUgbnVtYmVyIG9mIGFsbCB0ZXN0IHN1aXRlcyB0aGF0IGNvbnRhaW4gYXQgbGVhc3Qgb25lIHRl
c3QKICAgLy8gdGhhdCBzaG91bGQgcnVuLgorICBpbnQgdGVzdF9zdWl0ZV90b19ydW5fY291bnQo
KSBjb25zdDsKKworICAvLyAgTGVnYWN5IEFQSSBpcyBkZXByZWNhdGVkIGJ1dCBzdGlsbCBhdmFp
bGFibGUKKyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUElfCisgIGludCBz
dWNjZXNzZnVsX3Rlc3RfY2FzZV9jb3VudCgpIGNvbnN0OworICBpbnQgZmFpbGVkX3Rlc3RfY2Fz
ZV9jb3VudCgpIGNvbnN0OworICBpbnQgdG90YWxfdGVzdF9jYXNlX2NvdW50KCkgY29uc3Q7CiAg
IGludCB0ZXN0X2Nhc2VfdG9fcnVuX2NvdW50KCkgY29uc3Q7CisjZW5kaWYgIC8vICBHVEVTVF9S
RU1PVkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KIAogICAvLyBHZXRzIHRoZSBudW1iZXIgb2Ygc3Vj
Y2Vzc2Z1bCB0ZXN0cy4KICAgaW50IHN1Y2Nlc3NmdWxfdGVzdF9jb3VudCgpIGNvbnN0OwogCisg
IC8vIEdldHMgdGhlIG51bWJlciBvZiBza2lwcGVkIHRlc3RzLgorICBpbnQgc2tpcHBlZF90ZXN0
X2NvdW50KCkgY29uc3Q7CisKICAgLy8gR2V0cyB0aGUgbnVtYmVyIG9mIGZhaWxlZCB0ZXN0cy4K
ICAgaW50IGZhaWxlZF90ZXN0X2NvdW50KCkgY29uc3Q7CiAKQEAgLTEyODMsMTkgKzEzNTIsMjUg
QEAgY2xhc3MgR1RFU1RfQVBJXyBVbml0VGVzdCB7CiAgIC8vIEdldHMgdGhlIGVsYXBzZWQgdGlt
ZSwgaW4gbWlsbGlzZWNvbmRzLgogICBUaW1lSW5NaWxsaXMgZWxhcHNlZF90aW1lKCkgY29uc3Q7
CiAKLSAgLy8gUmV0dXJucyB0cnVlIGlmZiB0aGUgdW5pdCB0ZXN0IHBhc3NlZCAoaS5lLiBhbGwg
dGVzdCBjYXNlcyBwYXNzZWQpLgorICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhl
IHVuaXQgdGVzdCBwYXNzZWQgKGkuZS4gYWxsIHRlc3Qgc3VpdGVzCisgIC8vIHBhc3NlZCkuCiAg
IGJvb2wgUGFzc2VkKCkgY29uc3Q7CiAKLSAgLy8gUmV0dXJucyB0cnVlIGlmZiB0aGUgdW5pdCB0
ZXN0IGZhaWxlZCAoaS5lLiBzb21lIHRlc3QgY2FzZSBmYWlsZWQKLSAgLy8gb3Igc29tZXRoaW5n
IG91dHNpZGUgb2YgYWxsIHRlc3RzIGZhaWxlZCkuCisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQg
b25seSBpZiB0aGUgdW5pdCB0ZXN0IGZhaWxlZCAoaS5lLiBzb21lIHRlc3Qgc3VpdGUKKyAgLy8g
ZmFpbGVkIG9yIHNvbWV0aGluZyBvdXRzaWRlIG9mIGFsbCB0ZXN0cyBmYWlsZWQpLgogICBib29s
IEZhaWxlZCgpIGNvbnN0OwogCi0gIC8vIEdldHMgdGhlIGktdGggdGVzdCBjYXNlIGFtb25nIGFs
bCB0aGUgdGVzdCBjYXNlcy4gaSBjYW4gcmFuZ2UgZnJvbSAwIHRvCi0gIC8vIHRvdGFsX3Rlc3Rf
Y2FzZV9jb3VudCgpIC0gMS4gSWYgaSBpcyBub3QgaW4gdGhhdCByYW5nZSwgcmV0dXJucyBOVUxM
LgorICAvLyBHZXRzIHRoZSBpLXRoIHRlc3Qgc3VpdGUgYW1vbmcgYWxsIHRoZSB0ZXN0IHN1aXRl
cy4gaSBjYW4gcmFuZ2UgZnJvbSAwIHRvCisgIC8vIHRvdGFsX3Rlc3Rfc3VpdGVfY291bnQoKSAt
IDEuIElmIGkgaXMgbm90IGluIHRoYXQgcmFuZ2UsIHJldHVybnMgTlVMTC4KKyAgY29uc3QgVGVz
dFN1aXRlKiBHZXRUZXN0U3VpdGUoaW50IGkpIGNvbnN0OworCisvLyAgTGVnYWN5IEFQSSBpcyBk
ZXByZWNhdGVkIGJ1dCBzdGlsbCBhdmFpbGFibGUKKyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xFR0FD
WV9URVNUX0NBU0VBUElfCiAgIGNvbnN0IFRlc3RDYXNlKiBHZXRUZXN0Q2FzZShpbnQgaSkgY29u
c3Q7CisjZW5kaWYgIC8vICBHVEVTVF9SRU1PVkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KIAogICAv
LyBSZXR1cm5zIHRoZSBUZXN0UmVzdWx0IGNvbnRhaW5pbmcgaW5mb3JtYXRpb24gb24gdGVzdCBm
YWlsdXJlcyBhbmQKLSAgLy8gcHJvcGVydGllcyBsb2dnZWQgb3V0c2lkZSBvZiBpbmRpdmlkdWFs
IHRlc3QgY2FzZXMuCisgIC8vIHByb3BlcnRpZXMgbG9nZ2VkIG91dHNpZGUgb2YgaW5kaXZpZHVh
bCB0ZXN0IHN1aXRlcy4KICAgY29uc3QgVGVzdFJlc3VsdCYgYWRfaG9jX3Rlc3RfcmVzdWx0KCkg
Y29uc3Q7CiAKICAgLy8gUmV0dXJucyB0aGUgbGlzdCBvZiBldmVudCBsaXN0ZW5lcnMgdGhhdCBj
YW4gYmUgdXNlZCB0byB0cmFjayBldmVudHMKQEAgLTEzMjYsMTUgKzE0MDEsMTUgQEAgY2xhc3Mg
R1RFU1RfQVBJXyBVbml0VGVzdCB7CiAgICAgICBHVEVTVF9MT0NLX0VYQ0xVREVEXyhtdXRleF8p
OwogCiAgIC8vIEFkZHMgYSBUZXN0UHJvcGVydHkgdG8gdGhlIGN1cnJlbnQgVGVzdFJlc3VsdCBv
YmplY3Qgd2hlbiBpbnZva2VkIGZyb20KLSAgLy8gaW5zaWRlIGEgdGVzdCwgdG8gY3VycmVudCBU
ZXN0Q2FzZSdzIGFkX2hvY190ZXN0X3Jlc3VsdF8gd2hlbiBpbnZva2VkCi0gIC8vIGZyb20gU2V0
VXBUZXN0Q2FzZSBvciBUZWFyRG93blRlc3RDYXNlLCBvciB0byB0aGUgZ2xvYmFsIHByb3BlcnR5
IHNldAorICAvLyBpbnNpZGUgYSB0ZXN0LCB0byBjdXJyZW50IFRlc3RTdWl0ZSdzIGFkX2hvY190
ZXN0X3Jlc3VsdF8gd2hlbiBpbnZva2VkCisgIC8vIGZyb20gU2V0VXBUZXN0U3VpdGUgb3IgVGVh
ckRvd25UZXN0U3VpdGUsIG9yIHRvIHRoZSBnbG9iYWwgcHJvcGVydHkgc2V0CiAgIC8vIHdoZW4g
aW52b2tlZCBlbHNld2hlcmUuICBJZiB0aGUgcmVzdWx0IGFscmVhZHkgY29udGFpbnMgYSBwcm9w
ZXJ0eSB3aXRoCiAgIC8vIHRoZSBzYW1lIGtleSwgdGhlIHZhbHVlIHdpbGwgYmUgdXBkYXRlZC4K
ICAgdm9pZCBSZWNvcmRQcm9wZXJ0eShjb25zdCBzdGQ6OnN0cmluZyYga2V5LCBjb25zdCBzdGQ6
OnN0cmluZyYgdmFsdWUpOwogCi0gIC8vIEdldHMgdGhlIGktdGggdGVzdCBjYXNlIGFtb25nIGFs
bCB0aGUgdGVzdCBjYXNlcy4gaSBjYW4gcmFuZ2UgZnJvbSAwIHRvCi0gIC8vIHRvdGFsX3Rlc3Rf
Y2FzZV9jb3VudCgpIC0gMS4gSWYgaSBpcyBub3QgaW4gdGhhdCByYW5nZSwgcmV0dXJucyBOVUxM
LgotICBUZXN0Q2FzZSogR2V0TXV0YWJsZVRlc3RDYXNlKGludCBpKTsKKyAgLy8gR2V0cyB0aGUg
aS10aCB0ZXN0IHN1aXRlIGFtb25nIGFsbCB0aGUgdGVzdCBzdWl0ZXMuIGkgY2FuIHJhbmdlIGZy
b20gMCB0bworICAvLyB0b3RhbF90ZXN0X3N1aXRlX2NvdW50KCkgLSAxLiBJZiBpIGlzIG5vdCBp
biB0aGF0IHJhbmdlLCByZXR1cm5zIE5VTEwuCisgIFRlc3RTdWl0ZSogR2V0TXV0YWJsZVRlc3RT
dWl0ZShpbnQgaSk7CiAKICAgLy8gQWNjZXNzb3JzIGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2Jq
ZWN0LgogICBpbnRlcm5hbDo6VW5pdFRlc3RJbXBsKiBpbXBsKCkgeyByZXR1cm4gaW1wbF87IH0K
QEAgLTEzNDgsNiArMTQyMyw3IEBAIGNsYXNzIEdURVNUX0FQSV8gVW5pdFRlc3QgewogICBmcmll
bmQgY2xhc3MgaW50ZXJuYWw6OlN0cmVhbWluZ0xpc3RlbmVyVGVzdDsKICAgZnJpZW5kIGNsYXNz
IGludGVybmFsOjpVbml0VGVzdFJlY29yZFByb3BlcnR5VGVzdEhlbHBlcjsKICAgZnJpZW5kIEVu
dmlyb25tZW50KiBBZGRHbG9iYWxUZXN0RW52aXJvbm1lbnQoRW52aXJvbm1lbnQqIGVudik7Cisg
IGZyaWVuZCBzdGQ6OnNldDxzdGQ6OnN0cmluZz4qIGludGVybmFsOjpHZXRJZ25vcmVkUGFyYW1l
dGVyaXplZFRlc3RTdWl0ZXMoKTsKICAgZnJpZW5kIGludGVybmFsOjpVbml0VGVzdEltcGwqIGlu
dGVybmFsOjpHZXRVbml0VGVzdEltcGwoKTsKICAgZnJpZW5kIHZvaWQgaW50ZXJuYWw6OlJlcG9y
dEZhaWx1cmVJblVua25vd25Mb2NhdGlvbigKICAgICAgIFRlc3RQYXJ0UmVzdWx0OjpUeXBlIHJl
c3VsdF90eXBlLApAQCAtMTQxOSw2ICsxNDk1LDEwIEBAIEdURVNUX0FQSV8gdm9pZCBJbml0R29v
Z2xlVGVzdChpbnQqIGFyZ2MsIGNoYXIqKiBhcmd2KTsKIC8vIFVOSUNPREUgbW9kZS4KIEdURVNU
X0FQSV8gdm9pZCBJbml0R29vZ2xlVGVzdChpbnQqIGFyZ2MsIHdjaGFyX3QqKiBhcmd2KTsKIAor
Ly8gVGhpcyBvdmVybG9hZGVkIHZlcnNpb24gY2FuIGJlIHVzZWQgb24gQXJkdWluby9lbWJlZGRl
ZCBwbGF0Zm9ybXMgd2hlcmUKKy8vIHRoZXJlIGlzIG5vIGFyZ2MvYXJndi4KK0dURVNUX0FQSV8g
dm9pZCBJbml0R29vZ2xlVGVzdCgpOworCiBuYW1lc3BhY2UgaW50ZXJuYWwgewogCiAvLyBTZXBh
cmF0ZSB0aGUgZXJyb3IgZ2VuZXJhdGluZyBjb2RlIGZyb20gdGhlIGNvZGUgcGF0aCB0byByZWR1
Y2UgdGhlIHN0YWNrCkBAIC0xNDM1LDYgKzE1MTUsMTMgQEAgQXNzZXJ0aW9uUmVzdWx0IENtcEhl
bHBlckVRRmFpbHVyZShjb25zdCBjaGFyKiBsaHNfZXhwcmVzc2lvbiwKICAgICAgICAgICAgICAg
ICAgICBmYWxzZSk7CiB9CiAKKy8vIFRoaXMgYmxvY2sgb2YgY29kZSBkZWZpbmVzIG9wZXJhdG9y
PT0vIT0KKy8vIHRvIGJsb2NrIGxleGljYWwgc2NvcGUgbG9va3VwLgorLy8gSXQgcHJldmVudHMg
dXNpbmcgaW52YWxpZCBvcGVyYXRvcj09LyE9IGRlZmluZWQgYXQgbmFtZXNwYWNlIHNjb3BlLgor
c3RydWN0IGZha2V0eXBlIHt9OworaW5saW5lIGJvb2wgb3BlcmF0b3I9PShmYWtldHlwZSwgZmFr
ZXR5cGUpIHsgcmV0dXJuIHRydWU7IH0KK2lubGluZSBib29sIG9wZXJhdG9yIT0oZmFrZXR5cGUs
IGZha2V0eXBlKSB7IHJldHVybiBmYWxzZTsgfQorCiAvLyBUaGUgaGVscGVyIGZ1bmN0aW9uIGZv
ciB7QVNTRVJUfEVYUEVDVH1fRVEuCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQy
PgogQXNzZXJ0aW9uUmVzdWx0IENtcEhlbHBlckVRKGNvbnN0IGNoYXIqIGxoc19leHByZXNzaW9u
LApAQCAtMTQ1NiwxOCArMTU0MywxNyBAQCBHVEVTVF9BUElfIEFzc2VydGlvblJlc3VsdCBDbXBI
ZWxwZXJFUShjb25zdCBjaGFyKiBsaHNfZXhwcmVzc2lvbiwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEJpZ2dlc3RJbnQgbGhzLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgQmlnZ2VzdEludCByaHMpOwogCi0vLyBUaGUgaGVscGVyIGNsYXNz
IGZvciB7QVNTRVJUfEVYUEVDVH1fRVEuICBUaGUgdGVtcGxhdGUgYXJndW1lbnQKLS8vIGxoc19p
c19udWxsX2xpdGVyYWwgaXMgdHJ1ZSBpZmYgdGhlIGZpcnN0IGFyZ3VtZW50IHRvIEFTU0VSVF9F
USgpCi0vLyBpcyBhIG51bGwgcG9pbnRlciBsaXRlcmFsLiAgVGhlIGZvbGxvd2luZyBkZWZhdWx0
IGltcGxlbWVudGF0aW9uIGlzCi0vLyBmb3IgbGhzX2lzX251bGxfbGl0ZXJhbCBiZWluZyBmYWxz
ZS4KLXRlbXBsYXRlIDxib29sIGxoc19pc19udWxsX2xpdGVyYWw+CiBjbGFzcyBFcUhlbHBlciB7
CiAgcHVibGljOgogICAvLyBUaGlzIHRlbXBsYXRpemVkIHZlcnNpb24gaXMgZm9yIHRoZSBnZW5l
cmFsIGNhc2UuCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDI+CisgIHRlbXBs
YXRlIDwKKyAgICAgIHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwKKyAgICAgIC8vIERpc2FibGUg
dGhpcyBvdmVybG9hZCBmb3IgY2FzZXMgd2hlcmUgb25lIGFyZ3VtZW50IGlzIGEgcG9pbnRlcgor
ICAgICAgLy8gYW5kIHRoZSBvdGhlciBpcyB0aGUgbnVsbCBwb2ludGVyIGNvbnN0YW50LgorICAg
ICAgdHlwZW5hbWUgc3RkOjplbmFibGVfaWY8IXN0ZDo6aXNfaW50ZWdyYWw8VDE+Ojp2YWx1ZSB8
fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIXN0ZDo6aXNfcG9pbnRlcjxUMj46OnZh
bHVlPjo6dHlwZSogPSBudWxscHRyPgogICBzdGF0aWMgQXNzZXJ0aW9uUmVzdWx0IENvbXBhcmUo
Y29uc3QgY2hhciogbGhzX2V4cHJlc3Npb24sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBjaGFyKiByaHNfZXhwcmVzc2lvbiwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IFQxJiBsaHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBjaGFyKiByaHNfZXhwcmVzc2lvbiwgY29uc3QgVDEmIGxocywKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFQyJiByaHMpIHsKICAgICByZXR1cm4gQ21wSGVs
cGVyRVEobGhzX2V4cHJlc3Npb24sIHJoc19leHByZXNzaW9uLCBsaHMsIHJocyk7CiAgIH0KQEAg
LTE0ODQsNDkgKzE1NzAsMTUgQEAgY2xhc3MgRXFIZWxwZXIgewogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgQmlnZ2VzdEludCByaHMpIHsKICAgICByZXR1cm4gQ21wSGVscGVyRVEo
bGhzX2V4cHJlc3Npb24sIHJoc19leHByZXNzaW9uLCBsaHMsIHJocyk7CiAgIH0KLX07CiAKLS8v
IFRoaXMgc3BlY2lhbGl6YXRpb24gaXMgdXNlZCB3aGVuIHRoZSBmaXJzdCBhcmd1bWVudCB0byBB
U1NFUlRfRVEoKQotLy8gaXMgYSBudWxsIHBvaW50ZXIgbGl0ZXJhbCwgbGlrZSBOVUxMLCBmYWxz
ZSwgb3IgMC4KLXRlbXBsYXRlIDw+Ci1jbGFzcyBFcUhlbHBlcjx0cnVlPiB7Ci0gcHVibGljOgot
ICAvLyBXZSBkZWZpbmUgdHdvIG92ZXJsb2FkZWQgdmVyc2lvbnMgb2YgQ29tcGFyZSgpLiAgVGhl
IGZpcnN0Ci0gIC8vIHZlcnNpb24gd2lsbCBiZSBwaWNrZWQgd2hlbiB0aGUgc2Vjb25kIGFyZ3Vt
ZW50IHRvIEFTU0VSVF9FUSgpIGlzCi0gIC8vIE5PVCBhIHBvaW50ZXIsIGUuZy4gQVNTRVJUX0VR
KDAsIEFuSW50RnVuY3Rpb24oKSkgb3IKLSAgLy8gRVhQRUNUX0VRKGZhbHNlLCBhX2Jvb2wpLgot
ICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyPgotICBzdGF0aWMgQXNzZXJ0aW9u
UmVzdWx0IENvbXBhcmUoCi0gICAgICBjb25zdCBjaGFyKiBsaHNfZXhwcmVzc2lvbiwKLSAgICAg
IGNvbnN0IGNoYXIqIHJoc19leHByZXNzaW9uLAotICAgICAgY29uc3QgVDEmIGxocywKLSAgICAg
IGNvbnN0IFQyJiByaHMsCi0gICAgICAvLyBUaGUgZm9sbG93aW5nIGxpbmUgcHJldmVudHMgdGhp
cyBvdmVybG9hZCBmcm9tIGJlaW5nIGNvbnNpZGVyZWQgaWYgVDIKLSAgICAgIC8vIGlzIG5vdCBh
IHBvaW50ZXIgdHlwZS4gIFdlIG5lZWQgdGhpcyBiZWNhdXNlIEFTU0VSVF9FUShOVUxMLCBteV9w
dHIpCi0gICAgICAvLyBleHBhbmRzIHRvIENvbXBhcmUoIiIsICIiLCBOVUxMLCBteV9wdHIpLCB3
aGljaCByZXF1aXJlcyBhIGNvbnZlcnNpb24KLSAgICAgIC8vIHRvIG1hdGNoIHRoZSBTZWNyZXQq
IGluIHRoZSBvdGhlciBvdmVybG9hZCwgd2hpY2ggd291bGQgb3RoZXJ3aXNlIG1ha2UKLSAgICAg
IC8vIHRoaXMgdGVtcGxhdGUgbWF0Y2ggYmV0dGVyLgotICAgICAgdHlwZW5hbWUgRW5hYmxlSWY8
IWlzX3BvaW50ZXI8VDI+Ojp2YWx1ZT46OnR5cGUqID0gMCkgewotICAgIHJldHVybiBDbXBIZWxw
ZXJFUShsaHNfZXhwcmVzc2lvbiwgcmhzX2V4cHJlc3Npb24sIGxocywgcmhzKTsKLSAgfQotCi0g
IC8vIFRoaXMgdmVyc2lvbiB3aWxsIGJlIHBpY2tlZCB3aGVuIHRoZSBzZWNvbmQgYXJndW1lbnQg
dG8gQVNTRVJUX0VRKCkgaXMgYQotICAvLyBwb2ludGVyLCBlLmcuIEFTU0VSVF9FUShOVUxMLCBh
X3BvaW50ZXIpLgogICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KICAgc3RhdGljIEFzc2VydGlvblJl
c3VsdCBDb21wYXJlKAotICAgICAgY29uc3QgY2hhciogbGhzX2V4cHJlc3Npb24sCi0gICAgICBj
b25zdCBjaGFyKiByaHNfZXhwcmVzc2lvbiwKLSAgICAgIC8vIFdlIHVzZWQgdG8gaGF2ZSBhIHNl
Y29uZCB0ZW1wbGF0ZSBwYXJhbWV0ZXIgaW5zdGVhZCBvZiBTZWNyZXQqLiAgVGhhdAotICAgICAg
Ly8gdGVtcGxhdGUgcGFyYW1ldGVyIHdvdWxkIGRlZHVjZSB0byAnbG9uZycsIG1ha2luZyB0aGlz
IGEgYmV0dGVyIG1hdGNoCi0gICAgICAvLyB0aGFuIHRoZSBmaXJzdCBvdmVybG9hZCBldmVuIHdp
dGhvdXQgdGhlIGZpcnN0IG92ZXJsb2FkJ3MgRW5hYmxlSWYuCi0gICAgICAvLyBVbmZvcnR1bmF0
ZWx5LCBnY2Mgd2l0aCAtV2NvbnZlcnNpb24tbnVsbCB3YXJucyB3aGVuICJwYXNzaW5nIE5VTEwg
dG8KLSAgICAgIC8vIG5vbi1wb2ludGVyIGFyZ3VtZW50IiAoZXZlbiBhIGRlZHVjZWQgaW50ZWdy
YWwgYXJndW1lbnQpLCBzbyB0aGUgb2xkCi0gICAgICAvLyBpbXBsZW1lbnRhdGlvbiBjYXVzZWQg
d2FybmluZ3MgaW4gdXNlciBjb2RlLgotICAgICAgU2VjcmV0KiAvKiBsaHMgKE5VTEwpICovLAot
ICAgICAgVCogcmhzKSB7CisgICAgICBjb25zdCBjaGFyKiBsaHNfZXhwcmVzc2lvbiwgY29uc3Qg
Y2hhciogcmhzX2V4cHJlc3Npb24sCisgICAgICAvLyBIYW5kbGUgY2FzZXMgd2hlcmUgJzAnIGlz
IHVzZWQgYXMgYSBudWxsIHBvaW50ZXIgbGl0ZXJhbC4KKyAgICAgIHN0ZDo6bnVsbHB0cl90IC8q
IGxocyAqLywgVCogcmhzKSB7CiAgICAgLy8gV2UgYWxyZWFkeSBrbm93IHRoYXQgJ2xocycgaXMg
YSBudWxsIHBvaW50ZXIuCi0gICAgcmV0dXJuIENtcEhlbHBlckVRKGxoc19leHByZXNzaW9uLCBy
aHNfZXhwcmVzc2lvbiwKLSAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8VCo+KE5V
TEwpLCByaHMpOworICAgIHJldHVybiBDbXBIZWxwZXJFUShsaHNfZXhwcmVzc2lvbiwgcmhzX2V4
cHJlc3Npb24sIHN0YXRpY19jYXN0PFQqPihudWxscHRyKSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgcmhzKTsKICAgfQogfTsKIApAQCAtMTc1NSw2ICsxODA3LDEyIEBAIGNsYXNzIEdURVNUX0FQ
SV8gQXNzZXJ0SGVscGVyIHsKICAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhBc3Nl
cnRIZWxwZXIpOwogfTsKIAorZW51bSBHVGVzdENvbG9yIHsgQ09MT1JfREVGQVVMVCwgQ09MT1Jf
UkVELCBDT0xPUl9HUkVFTiwgQ09MT1JfWUVMTE9XIH07CisKK0dURVNUX0FQSV8gR1RFU1RfQVRU
UklCVVRFX1BSSU5URl8oMiwgMykgdm9pZCBDb2xvcmVkUHJpbnRmKEdUZXN0Q29sb3IgY29sb3Is
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBjaGFyKiBmbXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4pOworCiB9ICAvLyBuYW1lc3BhY2UgaW50ZXJu
YWwKIAogLy8gVGhlIHB1cmUgaW50ZXJmYWNlIGNsYXNzIHRoYXQgYWxsIHZhbHVlLXBhcmFtZXRl
cml6ZWQgdGVzdHMgaW5oZXJpdCBmcm9tLgpAQCAtMTc3NCwxMyArMTgzMiwxMyBAQCBjbGFzcyBH
VEVTVF9BUElfIEFzc2VydEhlbHBlciB7CiAvLyAgIEZvb1Rlc3QoKSB7CiAvLyAgICAgLy8gQ2Fu
IHVzZSBHZXRQYXJhbSgpIGhlcmUuCiAvLyAgIH0KLS8vICAgdmlydHVhbCB+Rm9vVGVzdCgpIHsK
Ky8vICAgfkZvb1Rlc3QoKSBvdmVycmlkZSB7CiAvLyAgICAgLy8gQ2FuIHVzZSBHZXRQYXJhbSgp
IGhlcmUuCiAvLyAgIH0KLS8vICAgdmlydHVhbCB2b2lkIFNldFVwKCkgeworLy8gICB2b2lkIFNl
dFVwKCkgb3ZlcnJpZGUgewogLy8gICAgIC8vIENhbiB1c2UgR2V0UGFyYW0oKSBoZXJlLgogLy8g
ICB9Ci0vLyAgIHZpcnR1YWwgdm9pZCBUZWFyRG93biB7CisvLyAgIHZvaWQgVGVhckRvd24gb3Zl
cnJpZGUgewogLy8gICAgIC8vIENhbiB1c2UgR2V0UGFyYW0oKSBoZXJlLgogLy8gICB9CiAvLyB9
OwpAQCAtMTc4OSw3ICsxODQ3LDcgQEAgY2xhc3MgR1RFU1RfQVBJXyBBc3NlcnRIZWxwZXIgewog
Ly8gICBGb28gZm9vOwogLy8gICBBU1NFUlRfVFJVRShmb28uRG9lc0JhcihHZXRQYXJhbSgpKSk7
CiAvLyB9Ci0vLyBJTlNUQU5USUFURV9URVNUX0NBU0VfUChPbmVUb1RlblJhbmdlLCBGb29UZXN0
LCA6OnRlc3Rpbmc6OlJhbmdlKDEsIDEwKSk7CisvLyBJTlNUQU5USUFURV9URVNUX1NVSVRFX1Ao
T25lVG9UZW5SYW5nZSwgRm9vVGVzdCwgOjp0ZXN0aW5nOjpSYW5nZSgxLCAxMCkpOwogCiB0ZW1w
bGF0ZSA8dHlwZW5hbWUgVD4KIGNsYXNzIFdpdGhQYXJhbUludGVyZmFjZSB7CkBAIC0xODAwLDcg
KzE4NTgsNyBAQCBjbGFzcyBXaXRoUGFyYW1JbnRlcmZhY2UgewogICAvLyBUaGUgY3VycmVudCBw
YXJhbWV0ZXIgdmFsdWUuIElzIGFsc28gYXZhaWxhYmxlIGluIHRoZSB0ZXN0IGZpeHR1cmUncwog
ICAvLyBjb25zdHJ1Y3Rvci4KICAgc3RhdGljIGNvbnN0IFBhcmFtVHlwZSYgR2V0UGFyYW0oKSB7
Ci0gICAgR1RFU1RfQ0hFQ0tfKHBhcmFtZXRlcl8gIT0gTlVMTCkKKyAgICBHVEVTVF9DSEVDS18o
cGFyYW1ldGVyXyAhPSBudWxscHRyKQogICAgICAgICA8PCAiR2V0UGFyYW0oKSBjYW4gb25seSBi
ZSBjYWxsZWQgaW5zaWRlIGEgdmFsdWUtcGFyYW1ldGVyaXplZCB0ZXN0ICIKICAgICAgICAgPDwg
Ii0tIGRpZCB5b3UgaW50ZW5kIHRvIHdyaXRlIFRFU1RfUCBpbnN0ZWFkIG9mIFRFU1RfRj8iOwog
ICAgIHJldHVybiAqcGFyYW1ldGVyXzsKQEAgLTE4MjEsNyArMTg3OSw3IEBAIGNsYXNzIFdpdGhQ
YXJhbUludGVyZmFjZSB7CiB9OwogCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLWNvbnN0IFQqIFdp
dGhQYXJhbUludGVyZmFjZTxUPjo6cGFyYW1ldGVyXyA9IE5VTEw7Citjb25zdCBUKiBXaXRoUGFy
YW1JbnRlcmZhY2U8VD46OnBhcmFtZXRlcl8gPSBudWxscHRyOwogCiAvLyBNb3N0IHZhbHVlLXBh
cmFtZXRlcml6ZWQgY2xhc3NlcyBjYW4gaWdub3JlIHRoZSBleGlzdGVuY2Ugb2YKIC8vIFdpdGhQ
YXJhbUludGVyZmFjZSwgYW5kIGNhbiBqdXN0IGluaGVyaXQgZnJvbSA6OnRlc3Rpbmc6OlRlc3RX
aXRoUGFyYW0uCkBAIC0xODMyLDYgKzE4OTAsMTEgQEAgY2xhc3MgVGVzdFdpdGhQYXJhbSA6IHB1
YmxpYyBUZXN0LCBwdWJsaWMgV2l0aFBhcmFtSW50ZXJmYWNlPFQ+IHsKIAogLy8gTWFjcm9zIGZv
ciBpbmRpY2F0aW5nIHN1Y2Nlc3MvZmFpbHVyZSBpbiB0ZXN0IGNvZGUuCiAKKy8vIFNraXBzIHRl
c3QgaW4gcnVudGltZS4KKy8vIFNraXBwaW5nIHRlc3QgYWJvcnRzIGN1cnJlbnQgZnVuY3Rpb24u
CisvLyBTa2lwcGVkIHRlc3RzIGFyZSBuZWl0aGVyIHN1Y2Nlc3NmdWwgbm9yIGZhaWxlZC4KKyNk
ZWZpbmUgR1RFU1RfU0tJUCgpIEdURVNUX1NLSVBfKCIiKQorCiAvLyBBRERfRkFJTFVSRSB1bmNv
bmRpdGlvbmFsbHkgYWRkcyBhIGZhaWx1cmUgdG8gdGhlIGN1cnJlbnQgdGVzdC4KIC8vIFNVQ0NF
RUQgZ2VuZXJhdGVzIGEgc3VjY2VzcyAtIGl0IGRvZXNuJ3QgYXV0b21hdGljYWxseSBtYWtlIHRo
ZQogLy8gY3VycmVudCB0ZXN0IHN1Y2Nlc3NmdWwsIGFzIGEgdGVzdCBpcyBvbmx5IHN1Y2Nlc3Nm
dWwgd2hlbiBpdCBoYXMKQEAgLTE4NjEsNiArMTkyNCwxMSBAQCBjbGFzcyBUZXN0V2l0aFBhcmFt
IDogcHVibGljIFRlc3QsIHB1YmxpYyBXaXRoUGFyYW1JbnRlcmZhY2U8VD4gewogLy8gR2VuZXJh
dGVzIGEgZmF0YWwgZmFpbHVyZSB3aXRoIGEgZ2VuZXJpYyBtZXNzYWdlLgogI2RlZmluZSBHVEVT
VF9GQUlMKCkgR1RFU1RfRkFUQUxfRkFJTFVSRV8oIkZhaWxlZCIpCiAKKy8vIExpa2UgR1RFU1Rf
RkFJTCgpLCBidXQgYXQgdGhlIGdpdmVuIHNvdXJjZSBmaWxlIGxvY2F0aW9uLgorI2RlZmluZSBH
VEVTVF9GQUlMX0FUKGZpbGUsIGxpbmUpICAgICAgICAgXAorICBHVEVTVF9NRVNTQUdFX0FUXyhm
aWxlLCBsaW5lLCAiRmFpbGVkIiwgXAorICAgICAgICAgICAgICAgICAgICA6OnRlc3Rpbmc6OlRl
c3RQYXJ0UmVzdWx0OjprRmF0YWxGYWlsdXJlKQorCiAvLyBEZWZpbmUgdGhpcyBtYWNybyB0byAx
IHRvIG9taXQgdGhlIGRlZmluaXRpb24gb2YgRkFJTCgpLCB3aGljaCBpcyBhCiAvLyBnZW5lcmlj
IG5hbWUgYW5kIGNsYXNoZXMgd2l0aCBzb21lIG90aGVyIGxpYnJhcmllcy4KICNpZiAhR1RFU1Rf
RE9OVF9ERUZJTkVfRkFJTApAQCAtMTk2MSw5ICsyMDI5LDcgQEAgY2xhc3MgVGVzdFdpdGhQYXJh
bSA6IHB1YmxpYyBUZXN0LCBwdWJsaWMgV2l0aFBhcmFtSW50ZXJmYWNlPFQ+IHsKIC8vICAgQVNT
RVJUX0dUKHJlY29yZHMuc2l6ZSgpLCAwKSA8PCAiVGhlcmUgaXMgbm8gcmVjb3JkIGxlZnQuIjsK
IAogI2RlZmluZSBFWFBFQ1RfRVEodmFsMSwgdmFsMikgXAotICBFWFBFQ1RfUFJFRF9GT1JNQVQy
KDo6dGVzdGluZzo6aW50ZXJuYWw6OiBcCi0gICAgICAgICAgICAgICAgICAgICAgRXFIZWxwZXI8
R1RFU1RfSVNfTlVMTF9MSVRFUkFMXyh2YWwxKT46OkNvbXBhcmUsIFwKLSAgICAgICAgICAgICAg
ICAgICAgICB2YWwxLCB2YWwyKQorICBFWFBFQ1RfUFJFRF9GT1JNQVQyKDo6dGVzdGluZzo6aW50
ZXJuYWw6OkVxSGVscGVyOjpDb21wYXJlLCB2YWwxLCB2YWwyKQogI2RlZmluZSBFWFBFQ1RfTkUo
dmFsMSwgdmFsMikgXAogICBFWFBFQ1RfUFJFRF9GT1JNQVQyKDo6dGVzdGluZzo6aW50ZXJuYWw6
OkNtcEhlbHBlck5FLCB2YWwxLCB2YWwyKQogI2RlZmluZSBFWFBFQ1RfTEUodmFsMSwgdmFsMikg
XApAQCAtMTk3Niw5ICsyMDQyLDcgQEAgY2xhc3MgVGVzdFdpdGhQYXJhbSA6IHB1YmxpYyBUZXN0
LCBwdWJsaWMgV2l0aFBhcmFtSW50ZXJmYWNlPFQ+IHsKICAgRVhQRUNUX1BSRURfRk9STUFUMig6
OnRlc3Rpbmc6OmludGVybmFsOjpDbXBIZWxwZXJHVCwgdmFsMSwgdmFsMikKIAogI2RlZmluZSBH
VEVTVF9BU1NFUlRfRVEodmFsMSwgdmFsMikgXAotICBBU1NFUlRfUFJFRF9GT1JNQVQyKDo6dGVz
dGluZzo6aW50ZXJuYWw6OiBcCi0gICAgICAgICAgICAgICAgICAgICAgRXFIZWxwZXI8R1RFU1Rf
SVNfTlVMTF9MSVRFUkFMXyh2YWwxKT46OkNvbXBhcmUsIFwKLSAgICAgICAgICAgICAgICAgICAg
ICB2YWwxLCB2YWwyKQorICBBU1NFUlRfUFJFRF9GT1JNQVQyKDo6dGVzdGluZzo6aW50ZXJuYWw6
OkVxSGVscGVyOjpDb21wYXJlLCB2YWwxLCB2YWwyKQogI2RlZmluZSBHVEVTVF9BU1NFUlRfTkUo
dmFsMSwgdmFsMikgXAogICBBU1NFUlRfUFJFRF9GT1JNQVQyKDo6dGVzdGluZzo6aW50ZXJuYWw6
OkNtcEhlbHBlck5FLCB2YWwxLCB2YWwyKQogI2RlZmluZSBHVEVTVF9BU1NFUlRfTEUodmFsMSwg
dmFsMikgXApAQCAtMjE2OSwxMiArMjIzMyw2IEBAIGNsYXNzIEdURVNUX0FQSV8gU2NvcGVkVHJh
Y2UgewogICAgIFB1c2hUcmFjZShmaWxlLCBsaW5lLCBtZXNzYWdlID8gbWVzc2FnZSA6ICIobnVs
bCkiKTsKICAgfQogCi0jaWYgR1RFU1RfSEFTX0dMT0JBTF9TVFJJTkcKLSAgU2NvcGVkVHJhY2Uo
Y29uc3QgY2hhciogZmlsZSwgaW50IGxpbmUsIGNvbnN0IDo6c3RyaW5nJiBtZXNzYWdlKSB7Ci0g
ICAgUHVzaFRyYWNlKGZpbGUsIGxpbmUsIG1lc3NhZ2UpOwotICB9Ci0jZW5kaWYKLQogICBTY29w
ZWRUcmFjZShjb25zdCBjaGFyKiBmaWxlLCBpbnQgbGluZSwgY29uc3Qgc3RkOjpzdHJpbmcmIG1l
c3NhZ2UpIHsKICAgICBQdXNoVHJhY2UoZmlsZSwgbGluZSwgbWVzc2FnZSk7CiAgIH0KQEAgLTIy
MTIsMTAgKzIyNzAsOSBAQCBjbGFzcyBHVEVTVF9BUElfIFNjb3BlZFRyYWNlIHsKICAgOjp0ZXN0
aW5nOjpTY29wZWRUcmFjZSBHVEVTVF9DT05DQVRfVE9LRU5fKGd0ZXN0X3RyYWNlXywgX19MSU5F
X18pKFwKICAgICBfX0ZJTEVfXywgX19MSU5FX18sIChtZXNzYWdlKSkKIAotCiAvLyBDb21waWxl
LXRpbWUgYXNzZXJ0aW9uIGZvciB0eXBlIGVxdWFsaXR5LgotLy8gU3RhdGljQXNzZXJ0VHlwZUVx
PHR5cGUxLCB0eXBlMj4oKSBjb21waWxlcyBpZmYgdHlwZTEgYW5kIHR5cGUyIGFyZQotLy8gdGhl
IHNhbWUgdHlwZS4gIFRoZSB2YWx1ZSBpdCByZXR1cm5zIGlzIG5vdCBpbnRlcmVzdGluZy4KKy8v
IFN0YXRpY0Fzc2VydFR5cGVFcTx0eXBlMSwgdHlwZTI+KCkgY29tcGlsZXMgaWYgYW5kIG9ubHkg
aWYgdHlwZTEgYW5kIHR5cGUyCisvLyBhcmUgdGhlIHNhbWUgdHlwZS4gIFRoZSB2YWx1ZSBpdCBy
ZXR1cm5zIGlzIG5vdCBpbnRlcmVzdGluZy4KIC8vCiAvLyBJbnN0ZWFkIG9mIG1ha2luZyBTdGF0
aWNBc3NlcnRUeXBlRXEgYSBjbGFzcyB0ZW1wbGF0ZSwgd2UgbWFrZSBpdCBhCiAvLyBmdW5jdGlv
biB0ZW1wbGF0ZSB0aGF0IGludm9rZXMgYSBoZWxwZXIgY2xhc3MgdGVtcGxhdGUuICBUaGlzCkBA
IC0yMjQ0LDE4ICsyMzAxLDE4IEBAIGNsYXNzIEdURVNUX0FQSV8gU2NvcGVkVHJhY2UgewogLy8K
IC8vIHRvIGNhdXNlIGEgY29tcGlsZXIgZXJyb3IuCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5
cGVuYW1lIFQyPgotYm9vbCBTdGF0aWNBc3NlcnRUeXBlRXEoKSB7Ci0gICh2b2lkKWludGVybmFs
OjpTdGF0aWNBc3NlcnRUeXBlRXFIZWxwZXI8VDEsIFQyPigpOworY29uc3RleHByIGJvb2wgU3Rh
dGljQXNzZXJ0VHlwZUVxKCkgbm9leGNlcHQgeworICBzdGF0aWNfYXNzZXJ0KHN0ZDo6aXNfc2Ft
ZTxUMSwgVDI+Ojp2YWx1ZSwgIlQxIGFuZCBUMiBhcmUgbm90IHRoZSBzYW1lIHR5cGUiKTsKICAg
cmV0dXJuIHRydWU7CiB9CiAKIC8vIERlZmluZXMgYSB0ZXN0LgogLy8KLS8vIFRoZSBmaXJzdCBw
YXJhbWV0ZXIgaXMgdGhlIG5hbWUgb2YgdGhlIHRlc3QgY2FzZSwgYW5kIHRoZSBzZWNvbmQKLS8v
IHBhcmFtZXRlciBpcyB0aGUgbmFtZSBvZiB0aGUgdGVzdCB3aXRoaW4gdGhlIHRlc3QgY2FzZS4K
Ky8vIFRoZSBmaXJzdCBwYXJhbWV0ZXIgaXMgdGhlIG5hbWUgb2YgdGhlIHRlc3Qgc3VpdGUsIGFu
ZCB0aGUgc2Vjb25kCisvLyBwYXJhbWV0ZXIgaXMgdGhlIG5hbWUgb2YgdGhlIHRlc3Qgd2l0aGlu
IHRoZSB0ZXN0IHN1aXRlLgogLy8KLS8vIFRoZSBjb252ZW50aW9uIGlzIHRvIGVuZCB0aGUgdGVz
dCBjYXNlIG5hbWUgd2l0aCAiVGVzdCIuICBGb3IKLS8vIGV4YW1wbGUsIGEgdGVzdCBjYXNlIGZv
ciB0aGUgRm9vIGNsYXNzIGNhbiBiZSBuYW1lZCBGb29UZXN0LgorLy8gVGhlIGNvbnZlbnRpb24g
aXMgdG8gZW5kIHRoZSB0ZXN0IHN1aXRlIG5hbWUgd2l0aCAiVGVzdCIuICBGb3IKKy8vIGV4YW1w
bGUsIGEgdGVzdCBzdWl0ZSBmb3IgdGhlIEZvbyBjbGFzcyBjYW4gYmUgbmFtZWQgRm9vVGVzdC4K
IC8vCiAvLyBUZXN0IGNvZGUgc2hvdWxkIGFwcGVhciBiZXR3ZWVuIGJyYWNlcyBhZnRlciBhbiBp
bnZvY2F0aW9uIG9mCiAvLyB0aGlzIG1hY3JvLiAgRXhhbXBsZToKQEAgLTIyNzQsMjggKzIzMzEs
MjggQEAgYm9vbCBTdGF0aWNBc3NlcnRUeXBlRXEoKSB7CiAvLyBjb2RlLiAgR2V0VGVzdFR5cGVJ
ZCgpIGlzIGd1YXJhbnRlZWQgdG8gYWx3YXlzIHJldHVybiB0aGUgc2FtZQogLy8gdmFsdWUsIGFz
IGl0IGFsd2F5cyBjYWxscyBHZXRUeXBlSWQ8PigpIGZyb20gdGhlIEdvb2dsZSBUZXN0CiAvLyBm
cmFtZXdvcmsuCi0jZGVmaW5lIEdURVNUX1RFU1QodGVzdF9jYXNlX25hbWUsIHRlc3RfbmFtZSlc
Ci0gIEdURVNUX1RFU1RfKHRlc3RfY2FzZV9uYW1lLCB0ZXN0X25hbWUsIFwKLSAgICAgICAgICAg
ICAgOjp0ZXN0aW5nOjpUZXN0LCA6OnRlc3Rpbmc6OmludGVybmFsOjpHZXRUZXN0VHlwZUlkKCkp
CisjZGVmaW5lIEdURVNUX1RFU1QodGVzdF9zdWl0ZV9uYW1lLCB0ZXN0X25hbWUpICAgICAgICAg
ICAgIFwKKyAgR1RFU1RfVEVTVF8odGVzdF9zdWl0ZV9uYW1lLCB0ZXN0X25hbWUsIDo6dGVzdGlu
Zzo6VGVzdCwgXAorICAgICAgICAgICAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpHZXRUZXN0VHlw
ZUlkKCkpCiAKIC8vIERlZmluZSB0aGlzIG1hY3JvIHRvIDEgdG8gb21pdCB0aGUgZGVmaW5pdGlv
biBvZiBURVNUKCksIHdoaWNoCiAvLyBpcyBhIGdlbmVyaWMgbmFtZSBhbmQgY2xhc2hlcyB3aXRo
IHNvbWUgb3RoZXIgbGlicmFyaWVzLgogI2lmICFHVEVTVF9ET05UX0RFRklORV9URVNUCi0jIGRl
ZmluZSBURVNUKHRlc3RfY2FzZV9uYW1lLCB0ZXN0X25hbWUpIEdURVNUX1RFU1QodGVzdF9jYXNl
X25hbWUsIHRlc3RfbmFtZSkKKyNkZWZpbmUgVEVTVCh0ZXN0X3N1aXRlX25hbWUsIHRlc3RfbmFt
ZSkgR1RFU1RfVEVTVCh0ZXN0X3N1aXRlX25hbWUsIHRlc3RfbmFtZSkKICNlbmRpZgogCiAvLyBE
ZWZpbmVzIGEgdGVzdCB0aGF0IHVzZXMgYSB0ZXN0IGZpeHR1cmUuCiAvLwogLy8gVGhlIGZpcnN0
IHBhcmFtZXRlciBpcyB0aGUgbmFtZSBvZiB0aGUgdGVzdCBmaXh0dXJlIGNsYXNzLCB3aGljaAot
Ly8gYWxzbyBkb3VibGVzIGFzIHRoZSB0ZXN0IGNhc2UgbmFtZS4gIFRoZSBzZWNvbmQgcGFyYW1l
dGVyIGlzIHRoZQotLy8gbmFtZSBvZiB0aGUgdGVzdCB3aXRoaW4gdGhlIHRlc3QgY2FzZS4KKy8v
IGFsc28gZG91YmxlcyBhcyB0aGUgdGVzdCBzdWl0ZSBuYW1lLiAgVGhlIHNlY29uZCBwYXJhbWV0
ZXIgaXMgdGhlCisvLyBuYW1lIG9mIHRoZSB0ZXN0IHdpdGhpbiB0aGUgdGVzdCBzdWl0ZS4KIC8v
CiAvLyBBIHRlc3QgZml4dHVyZSBjbGFzcyBtdXN0IGJlIGRlY2xhcmVkIGVhcmxpZXIuICBUaGUg
dXNlciBzaG91bGQgcHV0CiAvLyB0aGUgdGVzdCBjb2RlIGJldHdlZW4gYnJhY2VzIGFmdGVyIHVz
aW5nIHRoaXMgbWFjcm8uICBFeGFtcGxlOgogLy8KIC8vICAgY2xhc3MgRm9vVGVzdCA6IHB1Ymxp
YyB0ZXN0aW5nOjpUZXN0IHsKIC8vICAgIHByb3RlY3RlZDoKLS8vICAgICB2aXJ0dWFsIHZvaWQg
U2V0VXAoKSB7IGJfLkFkZEVsZW1lbnQoMyk7IH0KKy8vICAgICB2b2lkIFNldFVwKCkgb3ZlcnJp
ZGUgeyBiXy5BZGRFbGVtZW50KDMpOyB9CiAvLwogLy8gICAgIEZvbyBhXzsKIC8vICAgICBGb28g
Yl87CkBAIC0yMzA5LDEwICsyMzY2LDEzIEBAIGJvb2wgU3RhdGljQXNzZXJ0VHlwZUVxKCkgewog
Ly8gICAgIEVYUEVDVF9FUShhXy5zaXplKCksIDApOwogLy8gICAgIEVYUEVDVF9FUShiXy5zaXpl
KCksIDEpOwogLy8gICB9Ci0KKy8vCisvLyBHT09HTEVURVNUX0NNMDAxMSBETyBOT1QgREVMRVRF
CisjaWYgIUdURVNUX0RPTlRfREVGSU5FX1RFU1QKICNkZWZpbmUgVEVTVF9GKHRlc3RfZml4dHVy
ZSwgdGVzdF9uYW1lKVwKICAgR1RFU1RfVEVTVF8odGVzdF9maXh0dXJlLCB0ZXN0X25hbWUsIHRl
c3RfZml4dHVyZSwgXAogICAgICAgICAgICAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpHZXRUeXBl
SWQ8dGVzdF9maXh0dXJlPigpKQorI2VuZGlmICAvLyAhR1RFU1RfRE9OVF9ERUZJTkVfVEVTVAog
CiAvLyBSZXR1cm5zIGEgcGF0aCB0byB0ZW1wb3JhcnkgZGlyZWN0b3J5LgogLy8gVHJpZXMgdG8g
ZGV0ZXJtaW5lIGFuIGFwcHJvcHJpYXRlIGRpcmVjdG9yeSBmb3IgdGhlIHBsYXRmb3JtLgpAQCAt
MjMyMiw2ICsyMzgyLDg2IEBAIEdURVNUX0FQSV8gc3RkOjpzdHJpbmcgVGVtcERpcigpOwogIyAg
cHJhZ21hIHdhcm5pbmcocG9wKQogI2VuZGlmCiAKKy8vIER5bmFtaWNhbGx5IHJlZ2lzdGVycyBh
IHRlc3Qgd2l0aCB0aGUgZnJhbWV3b3JrLgorLy8KKy8vIFRoaXMgaXMgYW4gYWR2YW5jZWQgQVBJ
IG9ubHkgdG8gYmUgdXNlZCB3aGVuIHRoZSBgVEVTVGAgbWFjcm9zIGFyZQorLy8gaW5zdWZmaWNp
ZW50LiBUaGUgbWFjcm9zIHNob3VsZCBiZSBwcmVmZXJyZWQgd2hlbiBwb3NzaWJsZSwgYXMgdGhl
eSBhdm9pZAorLy8gbW9zdCBvZiB0aGUgY29tcGxleGl0eSBvZiBjYWxsaW5nIHRoaXMgZnVuY3Rp
b24uCisvLworLy8gVGhlIGBmYWN0b3J5YCBhcmd1bWVudCBpcyBhIGZhY3RvcnkgY2FsbGFibGUg
KG1vdmUtY29uc3RydWN0aWJsZSkgb2JqZWN0IG9yCisvLyBmdW5jdGlvbiBwb2ludGVyIHRoYXQg
Y3JlYXRlcyBhIG5ldyBpbnN0YW5jZSBvZiB0aGUgVGVzdCBvYmplY3QuIEl0CisvLyBoYW5kbGVz
IG93bmVyc2hpcCB0byB0aGUgY2FsbGVyLiBUaGUgc2lnbmF0dXJlIG9mIHRoZSBjYWxsYWJsZSBp
cworLy8gYEZpeHR1cmUqKClgLCB3aGVyZSBgRml4dHVyZWAgaXMgdGhlIHRlc3QgZml4dHVyZSBj
bGFzcyBmb3IgdGhlIHRlc3QuIEFsbAorLy8gdGVzdHMgcmVnaXN0ZXJlZCB3aXRoIHRoZSBzYW1l
IGB0ZXN0X3N1aXRlX25hbWVgIG11c3QgcmV0dXJuIHRoZSBzYW1lCisvLyBmaXh0dXJlIHR5cGUu
IFRoaXMgaXMgY2hlY2tlZCBhdCBydW50aW1lLgorLy8KKy8vIFRoZSBmcmFtZXdvcmsgd2lsbCBp
bmZlciB0aGUgZml4dHVyZSBjbGFzcyBmcm9tIHRoZSBmYWN0b3J5IGFuZCB3aWxsIGNhbGwKKy8v
IHRoZSBgU2V0VXBUZXN0U3VpdGVgIGFuZCBgVGVhckRvd25UZXN0U3VpdGVgIGZvciBpdC4KKy8v
CisvLyBNdXN0IGJlIGNhbGxlZCBiZWZvcmUgYFJVTl9BTExfVEVTVFMoKWAgaXMgaW52b2tlZCwg
b3RoZXJ3aXNlIGJlaGF2aW9yIGlzCisvLyB1bmRlZmluZWQuCisvLworLy8gVXNlIGNhc2UgZXhh
bXBsZToKKy8vCisvLyBjbGFzcyBNeUZpeHR1cmUgOiBwdWJsaWMgOjp0ZXN0aW5nOjpUZXN0IHsK
Ky8vICBwdWJsaWM6CisvLyAgIC8vIEFsbCBvZiB0aGVzZSBvcHRpb25hbCwganVzdCBsaWtlIGlu
IHJlZ3VsYXIgbWFjcm8gdXNhZ2UuCisvLyAgIHN0YXRpYyB2b2lkIFNldFVwVGVzdFN1aXRlKCkg
eyAuLi4gfQorLy8gICBzdGF0aWMgdm9pZCBUZWFyRG93blRlc3RTdWl0ZSgpIHsgLi4uIH0KKy8v
ICAgdm9pZCBTZXRVcCgpIG92ZXJyaWRlIHsgLi4uIH0KKy8vICAgdm9pZCBUZWFyRG93bigpIG92
ZXJyaWRlIHsgLi4uIH0KKy8vIH07CisvLworLy8gY2xhc3MgTXlUZXN0IDogcHVibGljIE15Rml4
dHVyZSB7CisvLyAgcHVibGljOgorLy8gICBleHBsaWNpdCBNeVRlc3QoaW50IGRhdGEpIDogZGF0
YV8oZGF0YSkge30KKy8vICAgdm9pZCBUZXN0Qm9keSgpIG92ZXJyaWRlIHsgLi4uIH0KKy8vCisv
LyAgcHJpdmF0ZToKKy8vICAgaW50IGRhdGFfOworLy8gfTsKKy8vCisvLyB2b2lkIFJlZ2lzdGVy
TXlUZXN0cyhjb25zdCBzdGQ6OnZlY3RvcjxpbnQ+JiB2YWx1ZXMpIHsKKy8vICAgZm9yIChpbnQg
diA6IHZhbHVlcykgeworLy8gICAgIDo6dGVzdGluZzo6UmVnaXN0ZXJUZXN0KAorLy8gICAgICAg
ICAiTXlGaXh0dXJlIiwgKCJUZXN0IiArIHN0ZDo6dG9fc3RyaW5nKHYpKS5jX3N0cigpLCBudWxs
cHRyLAorLy8gICAgICAgICBzdGQ6OnRvX3N0cmluZyh2KS5jX3N0cigpLAorLy8gICAgICAgICBf
X0ZJTEVfXywgX19MSU5FX18sCisvLyAgICAgICAgIC8vIEltcG9ydGFudCB0byB1c2UgdGhlIGZp
eHR1cmUgdHlwZSBhcyB0aGUgcmV0dXJuIHR5cGUgaGVyZS4KKy8vICAgICAgICAgWz1dKCkgLT4g
TXlGaXh0dXJlKiB7IHJldHVybiBuZXcgTXlUZXN0KHYpOyB9KTsKKy8vICAgfQorLy8gfQorLy8g
Li4uCisvLyBpbnQgbWFpbihpbnQgYXJnYywgY2hhcioqIGFyZ3YpIHsKKy8vICAgc3RkOjp2ZWN0
b3I8aW50PiB2YWx1ZXNfdG9fdGVzdCA9IExvYWRWYWx1ZXNGcm9tQ29uZmlnKCk7CisvLyAgIFJl
Z2lzdGVyTXlUZXN0cyh2YWx1ZXNfdG9fdGVzdCk7CisvLyAgIC4uLgorLy8gICByZXR1cm4gUlVO
X0FMTF9URVNUUygpOworLy8gfQorLy8KK3RlbXBsYXRlIDxpbnQmLi4uIEV4cGxpY2l0UGFyYW1l
dGVyQmFycmllciwgdHlwZW5hbWUgRmFjdG9yeT4KK1Rlc3RJbmZvKiBSZWdpc3RlclRlc3QoY29u
c3QgY2hhciogdGVzdF9zdWl0ZV9uYW1lLCBjb25zdCBjaGFyKiB0ZXN0X25hbWUsCisgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIHR5cGVfcGFyYW0sIGNvbnN0IGNoYXIqIHZhbHVl
X3BhcmFtLAorICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyKiBmaWxlLCBpbnQgbGlu
ZSwgRmFjdG9yeSBmYWN0b3J5KSB7CisgIHVzaW5nIFRlc3RUID0gdHlwZW5hbWUgc3RkOjpyZW1v
dmVfcG9pbnRlcjxkZWNsdHlwZShmYWN0b3J5KCkpPjo6dHlwZTsKKworICBjbGFzcyBGYWN0b3J5
SW1wbCA6IHB1YmxpYyBpbnRlcm5hbDo6VGVzdEZhY3RvcnlCYXNlIHsKKyAgIHB1YmxpYzoKKyAg
ICBleHBsaWNpdCBGYWN0b3J5SW1wbChGYWN0b3J5IGYpIDogZmFjdG9yeV8oc3RkOjptb3ZlKGYp
KSB7fQorICAgIFRlc3QqIENyZWF0ZVRlc3QoKSBvdmVycmlkZSB7IHJldHVybiBmYWN0b3J5Xygp
OyB9CisKKyAgIHByaXZhdGU6CisgICAgRmFjdG9yeSBmYWN0b3J5XzsKKyAgfTsKKworICByZXR1
cm4gaW50ZXJuYWw6Ok1ha2VBbmRSZWdpc3RlclRlc3RJbmZvKAorICAgICAgdGVzdF9zdWl0ZV9u
YW1lLCB0ZXN0X25hbWUsIHR5cGVfcGFyYW0sIHZhbHVlX3BhcmFtLAorICAgICAgaW50ZXJuYWw6
OkNvZGVMb2NhdGlvbihmaWxlLCBsaW5lKSwgaW50ZXJuYWw6OkdldFR5cGVJZDxUZXN0VD4oKSwK
KyAgICAgIGludGVybmFsOjpTdWl0ZUFwaVJlc29sdmVyPFRlc3RUPjo6R2V0U2V0VXBDYXNlT3JT
dWl0ZShmaWxlLCBsaW5lKSwKKyAgICAgIGludGVybmFsOjpTdWl0ZUFwaVJlc29sdmVyPFRlc3RU
Pjo6R2V0VGVhckRvd25DYXNlT3JTdWl0ZShmaWxlLCBsaW5lKSwKKyAgICAgIG5ldyBGYWN0b3J5
SW1wbHtzdGQ6Om1vdmUoZmFjdG9yeSl9KTsKK30KKwogfSAgLy8gbmFtZXNwYWNlIHRlc3RpbmcK
IAogLy8gVXNlIHRoaXMgZnVuY3Rpb24gaW4gbWFpbigpIHRvIHJ1biBhbGwgdGVzdHMuICBJdCBy
ZXR1cm5zIDAgaWYgYWxsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2ds
ZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3RfcHJlZF9pbXBsLmggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Ro
aXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvZ3Rlc3RfcHJlZF9pbXBsLmgK
aW5kZXggMGMxMTA1Y2I4ZWIyZWY3YzI2MTZlNjdmZjU1NTZhYWIyOWZmMmQxZC4uZDUxNDI1NWM3
MzNiNzZhZThjNmNkMDE5MDJkMzI4ZjMwYjlhNmRlOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90
aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2d0ZXN0X3ByZWRfaW1wbC5o
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVz
dC9ndGVzdF9wcmVkX2ltcGwuaApAQCAtMjcsMTEgKzI3LDEwIEBACiAvLyAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UK
IC8vIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCiAKLS8vIFRoaXMgZmlsZSBpcyBBVVRPTUFUSUNBTExZIEdFTkVSQVRF
RCBvbiAwMS8wMi8yMDE4IGJ5IGNvbW1hbmQKKy8vIFRoaXMgZmlsZSBpcyBBVVRPTUFUSUNBTExZ
IEdFTkVSQVRFRCBvbiAwMS8wMi8yMDE5IGJ5IGNvbW1hbmQKIC8vICdnZW5fZ3Rlc3RfcHJlZF9p
bXBsLnB5IDUnLiAgRE8gTk9UIEVESVQgQlkgSEFORCEKIC8vCiAvLyBJbXBsZW1lbnRzIGEgZmFt
aWx5IG9mIGdlbmVyaWMgcHJlZGljYXRlIGFzc2VydGlvbiBtYWNyb3MuCi0KIC8vIEdPT0dMRVRF
U1RfQ00wMDAxIERPIE5PVCBERUxFVEUKIAogI2lmbmRlZiBHVEVTVF9JTkNMVURFX0dURVNUX0dU
RVNUX1BSRURfSU1QTF9IXwpAQCAtNjcsNiArNjYsOCBAQCBuYW1lc3BhY2UgdGVzdGluZyB7CiAv
LyBXZSBhbHNvIGRlZmluZSB0aGUgRVhQRUNUXyogdmFyaWF0aW9ucy4KIC8vCiAvLyBGb3Igbm93
IHdlIG9ubHkgc3VwcG9ydCBwcmVkaWNhdGVzIHdob3NlIGFyaXR5IGlzIGF0IG1vc3QgNS4KKy8v
IFBsZWFzZSBlbWFpbCBnb29nbGV0ZXN0ZnJhbWV3b3JrQGdvb2dsZWdyb3Vwcy5jb20gaWYgeW91
IG5lZWQKKy8vIHN1cHBvcnQgZm9yIGhpZ2hlciBhcml0aWVzLgogCiAvLyBHVEVTVF9BU1NFUlRf
IGlzIHRoZSBiYXNpYyBzdGF0ZW1lbnQgdG8gd2hpY2ggYWxsIG9mIHRoZSBhc3NlcnRpb25zCiAv
LyBpbiB0aGlzIGZpbGUgcmVkdWNlLiAgRG9uJ3QgdXNlIHRoaXMgaW4geW91ciBjb2RlLgpAQCAt
ODksOSArOTAsMTAgQEAgQXNzZXJ0aW9uUmVzdWx0IEFzc2VydFByZWQxSGVscGVyKGNvbnN0IGNo
YXIqIHByZWRfdGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBU
MSYgdjEpIHsKICAgaWYgKHByZWQodjEpKSByZXR1cm4gQXNzZXJ0aW9uU3VjY2VzcygpOwogCi0g
IHJldHVybiBBc3NlcnRpb25GYWlsdXJlKCkgPDwgcHJlZF90ZXh0IDw8ICIoIgotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDw8IGUxIDw8ICIpIGV2YWx1YXRlcyB0byBmYWxzZSwgd2hlcmUi
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgIlxuIiA8PCBlMSA8PCAiIGV2YWx1YXRl
cyB0byAiIDw8IHYxOworICByZXR1cm4gQXNzZXJ0aW9uRmFpbHVyZSgpCisgICAgICAgICA8PCBw
cmVkX3RleHQgPDwgIigiIDw8IGUxIDw8ICIpIGV2YWx1YXRlcyB0byBmYWxzZSwgd2hlcmUiCisg
ICAgICAgICA8PCAiXG4iCisgICAgICAgICA8PCBlMSA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IDo6
dGVzdGluZzo6UHJpbnRUb1N0cmluZyh2MSk7CiB9CiAKIC8vIEludGVybmFsIG1hY3JvIGZvciBp
bXBsZW1lbnRpbmcge0VYUEVDVHxBU1NFUlR9X1BSRURfRk9STUFUMS4KQEAgLTEzMywxMSArMTM1
LDEyIEBAIEFzc2VydGlvblJlc3VsdCBBc3NlcnRQcmVkMkhlbHBlcihjb25zdCBjaGFyKiBwcmVk
X3RleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVDImIHYyKSB7
CiAgIGlmIChwcmVkKHYxLCB2MikpIHJldHVybiBBc3NlcnRpb25TdWNjZXNzKCk7CiAKLSAgcmV0
dXJuIEFzc2VydGlvbkZhaWx1cmUoKSA8PCBwcmVkX3RleHQgPDwgIigiCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPDwgZTEgPDwgIiwgIgotICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDw8IGUyIDw8ICIpIGV2YWx1YXRlcyB0byBmYWxzZSwgd2hlcmUiCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgPDwgIlxuIiA8PCBlMSA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IHYxCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgPDwgIlxuIiA8PCBlMiA8PCAiIGV2YWx1YXRlcyB0byAi
IDw8IHYyOworICByZXR1cm4gQXNzZXJ0aW9uRmFpbHVyZSgpCisgICAgICAgICA8PCBwcmVkX3Rl
eHQgPDwgIigiIDw8IGUxIDw8ICIsICIgPDwgZTIKKyAgICAgICAgIDw8ICIpIGV2YWx1YXRlcyB0
byBmYWxzZSwgd2hlcmUiCisgICAgICAgICA8PCAiXG4iCisgICAgICAgICA8PCBlMSA8PCAiIGV2
YWx1YXRlcyB0byAiIDw8IDo6dGVzdGluZzo6UHJpbnRUb1N0cmluZyh2MSkgPDwgIlxuIgorICAg
ICAgICAgPDwgZTIgPDwgIiBldmFsdWF0ZXMgdG8gIiA8PCA6OnRlc3Rpbmc6OlByaW50VG9TdHJp
bmcodjIpOwogfQogCiAvLyBJbnRlcm5hbCBtYWNybyBmb3IgaW1wbGVtZW50aW5nIHtFWFBFQ1R8
QVNTRVJUfV9QUkVEX0ZPUk1BVDIuCkBAIC0xODQsMTMgKzE4NywxMyBAQCBBc3NlcnRpb25SZXN1
bHQgQXNzZXJ0UHJlZDNIZWxwZXIoY29uc3QgY2hhciogcHJlZF90ZXh0LAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFQzJiB2MykgewogICBpZiAocHJlZCh2MSwgdjIs
IHYzKSkgcmV0dXJuIEFzc2VydGlvblN1Y2Nlc3MoKTsKIAotICByZXR1cm4gQXNzZXJ0aW9uRmFp
bHVyZSgpIDw8IHByZWRfdGV4dCA8PCAiKCIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICA8
PCBlMSA8PCAiLCAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgZTIgPDwgIiwgIgot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw8IGUzIDw8ICIpIGV2YWx1YXRlcyB0byBmYWxz
ZSwgd2hlcmUiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgIlxuIiA8PCBlMSA8PCAi
IGV2YWx1YXRlcyB0byAiIDw8IHYxCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgIlxu
IiA8PCBlMiA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IHYyCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPDwgIlxuIiA8PCBlMyA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IHYzOworICByZXR1cm4g
QXNzZXJ0aW9uRmFpbHVyZSgpCisgICAgICAgICA8PCBwcmVkX3RleHQgPDwgIigiIDw8IGUxIDw8
ICIsICIgPDwgZTIgPDwgIiwgIiA8PCBlMworICAgICAgICAgPDwgIikgZXZhbHVhdGVzIHRvIGZh
bHNlLCB3aGVyZSIKKyAgICAgICAgIDw8ICJcbiIKKyAgICAgICAgIDw8IGUxIDw8ICIgZXZhbHVh
dGVzIHRvICIgPDwgOjp0ZXN0aW5nOjpQcmludFRvU3RyaW5nKHYxKSA8PCAiXG4iCisgICAgICAg
ICA8PCBlMiA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IDo6dGVzdGluZzo6UHJpbnRUb1N0cmluZyh2
MikgPDwgIlxuIgorICAgICAgICAgPDwgZTMgPDwgIiBldmFsdWF0ZXMgdG8gIiA8PCA6OnRlc3Rp
bmc6OlByaW50VG9TdHJpbmcodjMpOwogfQogCiAvLyBJbnRlcm5hbCBtYWNybyBmb3IgaW1wbGVt
ZW50aW5nIHtFWFBFQ1R8QVNTRVJUfV9QUkVEX0ZPUk1BVDMuCkBAIC0yNDIsMTUgKzI0NSwxNCBA
QCBBc3NlcnRpb25SZXN1bHQgQXNzZXJ0UHJlZDRIZWxwZXIoY29uc3QgY2hhciogcHJlZF90ZXh0
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFQ0JiB2NCkgewogICBp
ZiAocHJlZCh2MSwgdjIsIHYzLCB2NCkpIHJldHVybiBBc3NlcnRpb25TdWNjZXNzKCk7CiAKLSAg
cmV0dXJuIEFzc2VydGlvbkZhaWx1cmUoKSA8PCBwcmVkX3RleHQgPDwgIigiCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPDwgZTEgPDwgIiwgIgotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDw8IGUyIDw8ICIsICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PCBlMyA8PCAi
LCAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgZTQgPDwgIikgZXZhbHVhdGVzIHRv
IGZhbHNlLCB3aGVyZSIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PCAiXG4iIDw8IGUx
IDw8ICIgZXZhbHVhdGVzIHRvICIgPDwgdjEKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICA8
PCAiXG4iIDw8IGUyIDw8ICIgZXZhbHVhdGVzIHRvICIgPDwgdjIKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA8PCAiXG4iIDw8IGUzIDw8ICIgZXZhbHVhdGVzIHRvICIgPDwgdjMKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA8PCAiXG4iIDw8IGU0IDw8ICIgZXZhbHVhdGVzIHRvICIg
PDwgdjQ7CisgIHJldHVybiBBc3NlcnRpb25GYWlsdXJlKCkKKyAgICAgICAgIDw8IHByZWRfdGV4
dCA8PCAiKCIgPDwgZTEgPDwgIiwgIiA8PCBlMiA8PCAiLCAiIDw8IGUzIDw8ICIsICIgPDwgZTQK
KyAgICAgICAgIDw8ICIpIGV2YWx1YXRlcyB0byBmYWxzZSwgd2hlcmUiCisgICAgICAgICA8PCAi
XG4iCisgICAgICAgICA8PCBlMSA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IDo6dGVzdGluZzo6UHJp
bnRUb1N0cmluZyh2MSkgPDwgIlxuIgorICAgICAgICAgPDwgZTIgPDwgIiBldmFsdWF0ZXMgdG8g
IiA8PCA6OnRlc3Rpbmc6OlByaW50VG9TdHJpbmcodjIpIDw8ICJcbiIKKyAgICAgICAgIDw8IGUz
IDw8ICIgZXZhbHVhdGVzIHRvICIgPDwgOjp0ZXN0aW5nOjpQcmludFRvU3RyaW5nKHYzKSA8PCAi
XG4iCisgICAgICAgICA8PCBlNCA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IDo6dGVzdGluZzo6UHJp
bnRUb1N0cmluZyh2NCk7CiB9CiAKIC8vIEludGVybmFsIG1hY3JvIGZvciBpbXBsZW1lbnRpbmcg
e0VYUEVDVHxBU1NFUlR9X1BSRURfRk9STUFUNC4KQEAgLTMwNywxNyArMzA5LDE1IEBAIEFzc2Vy
dGlvblJlc3VsdCBBc3NlcnRQcmVkNUhlbHBlcihjb25zdCBjaGFyKiBwcmVkX3RleHQsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVDUmIHY1KSB7CiAgIGlmIChwcmVk
KHYxLCB2MiwgdjMsIHY0LCB2NSkpIHJldHVybiBBc3NlcnRpb25TdWNjZXNzKCk7CiAKLSAgcmV0
dXJuIEFzc2VydGlvbkZhaWx1cmUoKSA8PCBwcmVkX3RleHQgPDwgIigiCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPDwgZTEgPDwgIiwgIgotICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDw8IGUyIDw8ICIsICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PCBlMyA8PCAiLCAi
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgZTQgPDwgIiwgIgotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDw8IGU1IDw8ICIpIGV2YWx1YXRlcyB0byBmYWxzZSwgd2hlcmUiCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgIlxuIiA8PCBlMSA8PCAiIGV2YWx1YXRlcyB0
byAiIDw8IHYxCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgIlxuIiA8PCBlMiA8PCAi
IGV2YWx1YXRlcyB0byAiIDw8IHYyCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgIlxu
IiA8PCBlMyA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IHYzCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPDwgIlxuIiA8PCBlNCA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IHY0Ci0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPDwgIlxuIiA8PCBlNSA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IHY1
OworICByZXR1cm4gQXNzZXJ0aW9uRmFpbHVyZSgpCisgICAgICAgICA8PCBwcmVkX3RleHQgPDwg
IigiIDw8IGUxIDw8ICIsICIgPDwgZTIgPDwgIiwgIiA8PCBlMyA8PCAiLCAiIDw8IGU0CisgICAg
ICAgICA8PCAiLCAiIDw8IGU1IDw8ICIpIGV2YWx1YXRlcyB0byBmYWxzZSwgd2hlcmUiCisgICAg
ICAgICA8PCAiXG4iCisgICAgICAgICA8PCBlMSA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IDo6dGVz
dGluZzo6UHJpbnRUb1N0cmluZyh2MSkgPDwgIlxuIgorICAgICAgICAgPDwgZTIgPDwgIiBldmFs
dWF0ZXMgdG8gIiA8PCA6OnRlc3Rpbmc6OlByaW50VG9TdHJpbmcodjIpIDw8ICJcbiIKKyAgICAg
ICAgIDw8IGUzIDw8ICIgZXZhbHVhdGVzIHRvICIgPDwgOjp0ZXN0aW5nOjpQcmludFRvU3RyaW5n
KHYzKSA8PCAiXG4iCisgICAgICAgICA8PCBlNCA8PCAiIGV2YWx1YXRlcyB0byAiIDw8IDo6dGVz
dGluZzo6UHJpbnRUb1N0cmluZyh2NCkgPDwgIlxuIgorICAgICAgICAgPDwgZTUgPDwgIiBldmFs
dWF0ZXMgdG8gIiA8PCA6OnRlc3Rpbmc6OlByaW50VG9TdHJpbmcodjUpOwogfQogCiAvLyBJbnRl
cm5hbCBtYWNybyBmb3IgaW1wbGVtZW50aW5nIHtFWFBFQ1R8QVNTRVJUfV9QUkVEX0ZPUk1BVDUu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1
ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtZGVhdGgtdGVzdC1pbnRlcm5hbC5oIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0
LWRlYXRoLXRlc3QtaW50ZXJuYWwuaAppbmRleCAwYTliNDJjOGE1NzJhODcxOTRjNjUxMDkwM2Uy
MWVhMjI2MGZhYzVjLi42OGJkMzUzMDYxOGYyNjRjNDQ3NDlhNzc5NmNlNWVlNTgxNzUxZTYyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUv
Z3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtZGVhdGgtdGVzdC1pbnRlcm5hbC5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVz
dC1kZWF0aC10ZXN0LWludGVybmFsLmgKQEAgLTM2LDkgKzM2LDExIEBACiAjaWZuZGVmIEdURVNU
X0lOQ0xVREVfR1RFU1RfSU5URVJOQUxfR1RFU1RfREVBVEhfVEVTVF9JTlRFUk5BTF9IXwogI2Rl
ZmluZSBHVEVTVF9JTkNMVURFX0dURVNUX0lOVEVSTkFMX0dURVNUX0RFQVRIX1RFU1RfSU5URVJO
QUxfSF8KIAorI2luY2x1ZGUgImd0ZXN0L2d0ZXN0LW1hdGNoZXJzLmgiCiAjaW5jbHVkZSAiZ3Rl
c3QvaW50ZXJuYWwvZ3Rlc3QtaW50ZXJuYWwuaCIKIAogI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5j
bHVkZSA8bWVtb3J5PgogCiBuYW1lc3BhY2UgdGVzdGluZyB7CiBuYW1lc3BhY2UgaW50ZXJuYWwg
ewpAQCAtNzgsNyArODAsNyBAQCBjbGFzcyBHVEVTVF9BUElfIERlYXRoVGVzdCB7CiAgIC8vIGFy
Z3VtZW50IGlzIHNldC4gIElmIHRoZSBkZWF0aCB0ZXN0IHNob3VsZCBiZSBza2lwcGVkLCB0aGUg
cG9pbnRlcgogICAvLyBpcyBzZXQgdG8gTlVMTDsgb3RoZXJ3aXNlLCBpdCBpcyBzZXQgdG8gdGhl
IGFkZHJlc3Mgb2YgYSBuZXcgY29uY3JldGUKICAgLy8gRGVhdGhUZXN0IG9iamVjdCB0aGF0IGNv
bnRyb2xzIHRoZSBleGVjdXRpb24gb2YgdGhlIGN1cnJlbnQgdGVzdC4KLSAgc3RhdGljIGJvb2wg
Q3JlYXRlKGNvbnN0IGNoYXIqIHN0YXRlbWVudCwgY29uc3QgUkUqIHJlZ2V4LAorICBzdGF0aWMg
Ym9vbCBDcmVhdGUoY29uc3QgY2hhciogc3RhdGVtZW50LCBNYXRjaGVyPGNvbnN0IHN0ZDo6c3Ry
aW5nJj4gbWF0Y2hlciwKICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGZpbGUsIGlu
dCBsaW5lLCBEZWF0aFRlc3QqKiB0ZXN0KTsKICAgRGVhdGhUZXN0KCk7CiAgIHZpcnR1YWwgfkRl
YXRoVGVzdCgpIHsgfQpAQCAtMTQ0LDIxICsxNDYsNDQgQEAgR1RFU1RfRElTQUJMRV9NU0NfV0FS
TklOR1NfUE9QXygpICAvLyAgNDI1MQogY2xhc3MgRGVhdGhUZXN0RmFjdG9yeSB7CiAgcHVibGlj
OgogICB2aXJ0dWFsIH5EZWF0aFRlc3RGYWN0b3J5KCkgeyB9Ci0gIHZpcnR1YWwgYm9vbCBDcmVh
dGUoY29uc3QgY2hhciogc3RhdGVtZW50LCBjb25zdCBSRSogcmVnZXgsCi0gICAgICAgICAgICAg
ICAgICAgICAgY29uc3QgY2hhciogZmlsZSwgaW50IGxpbmUsIERlYXRoVGVzdCoqIHRlc3QpID0g
MDsKKyAgdmlydHVhbCBib29sIENyZWF0ZShjb25zdCBjaGFyKiBzdGF0ZW1lbnQsCisgICAgICAg
ICAgICAgICAgICAgICAgTWF0Y2hlcjxjb25zdCBzdGQ6OnN0cmluZyY+IG1hdGNoZXIsIGNvbnN0
IGNoYXIqIGZpbGUsCisgICAgICAgICAgICAgICAgICAgICAgaW50IGxpbmUsIERlYXRoVGVzdCoq
IHRlc3QpID0gMDsKIH07CiAKIC8vIEEgY29uY3JldGUgRGVhdGhUZXN0RmFjdG9yeSBpbXBsZW1l
bnRhdGlvbiBmb3Igbm9ybWFsIHVzZS4KIGNsYXNzIERlZmF1bHREZWF0aFRlc3RGYWN0b3J5IDog
cHVibGljIERlYXRoVGVzdEZhY3RvcnkgewogIHB1YmxpYzoKLSAgdmlydHVhbCBib29sIENyZWF0
ZShjb25zdCBjaGFyKiBzdGF0ZW1lbnQsIGNvbnN0IFJFKiByZWdleCwKLSAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCBjaGFyKiBmaWxlLCBpbnQgbGluZSwgRGVhdGhUZXN0KiogdGVzdCk7Cisg
IGJvb2wgQ3JlYXRlKGNvbnN0IGNoYXIqIHN0YXRlbWVudCwgTWF0Y2hlcjxjb25zdCBzdGQ6OnN0
cmluZyY+IG1hdGNoZXIsCisgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGZpbGUsIGludCBsaW5l
LCBEZWF0aFRlc3QqKiB0ZXN0KSBvdmVycmlkZTsKIH07CiAKIC8vIFJldHVybnMgdHJ1ZSBpZiBl
eGl0X3N0YXR1cyBkZXNjcmliZXMgYSBwcm9jZXNzIHRoYXQgd2FzIHRlcm1pbmF0ZWQKIC8vIGJ5
IGEgc2lnbmFsLCBvciBleGl0ZWQgbm9ybWFsbHkgd2l0aCBhIG5vbnplcm8gZXhpdCBjb2RlLgog
R1RFU1RfQVBJXyBib29sIEV4aXRlZFVuc3VjY2Vzc2Z1bGx5KGludCBleGl0X3N0YXR1cyk7CiAK
Ky8vIEEgc3RyaW5nIHBhc3NlZCB0byBFWFBFQ1RfREVBVEggKGV0Yy4pIGlzIGNhdWdodCBieSBv
bmUgb2YgdGhlc2Ugb3ZlcmxvYWRzCisvLyBhbmQgaW50ZXJwcmV0ZWQgYXMgYSByZWdleCAocmF0
aGVyIHRoYW4gYW4gRXEgbWF0Y2hlcikgZm9yIGxlZ2FjeQorLy8gY29tcGF0aWJpbGl0eS4KK2lu
bGluZSBNYXRjaGVyPGNvbnN0IDo6c3RkOjpzdHJpbmcmPiBNYWtlRGVhdGhUZXN0TWF0Y2hlcigK
KyAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpSRSByZWdleCkgeworICByZXR1cm4gQ29udGFpbnNS
ZWdleChyZWdleC5wYXR0ZXJuKCkpOworfQoraW5saW5lIE1hdGNoZXI8Y29uc3QgOjpzdGQ6OnN0
cmluZyY+IE1ha2VEZWF0aFRlc3RNYXRjaGVyKGNvbnN0IGNoYXIqIHJlZ2V4KSB7CisgIHJldHVy
biBDb250YWluc1JlZ2V4KHJlZ2V4KTsKK30KK2lubGluZSBNYXRjaGVyPGNvbnN0IDo6c3RkOjpz
dHJpbmcmPiBNYWtlRGVhdGhUZXN0TWF0Y2hlcigKKyAgICBjb25zdCA6OnN0ZDo6c3RyaW5nJiBy
ZWdleCkgeworICByZXR1cm4gQ29udGFpbnNSZWdleChyZWdleCk7Cit9CisKKy8vIElmIGEgTWF0
Y2hlcjxjb25zdCA6OnN0ZDo6c3RyaW5nJj4gaXMgcGFzc2VkIHRvIEVYUEVDVF9ERUFUSCAoZXRj
LiksIGl0J3MKKy8vIHVzZWQgZGlyZWN0bHkuCitpbmxpbmUgTWF0Y2hlcjxjb25zdCA6OnN0ZDo6
c3RyaW5nJj4gTWFrZURlYXRoVGVzdE1hdGNoZXIoCisgICAgTWF0Y2hlcjxjb25zdCA6OnN0ZDo6
c3RyaW5nJj4gbWF0Y2hlcikgeworICByZXR1cm4gbWF0Y2hlcjsKK30KKwogLy8gVHJhcHMgQysr
IGV4Y2VwdGlvbnMgZXNjYXBpbmcgc3RhdGVtZW50IGFuZCByZXBvcnRzIHRoZW0gYXMgdGVzdAog
Ly8gZmFpbHVyZXMuIE5vdGUgdGhhdCB0cmFwcGluZyBTRUggZXhjZXB0aW9ucyBpcyBub3QgaW1w
bGVtZW50ZWQgaGVyZS4KICMgaWYgR1RFU1RfSEFTX0VYQ0VQVElPTlMKQEAgLTE4NiwzOCArMjEx
LDM4IEBAIEdURVNUX0FQSV8gYm9vbCBFeGl0ZWRVbnN1Y2Nlc3NmdWxseShpbnQgZXhpdF9zdGF0
dXMpOwogCiAvLyBUaGlzIG1hY3JvIGlzIGZvciBpbXBsZW1lbnRpbmcgQVNTRVJUX0RFQVRIKiwg
RVhQRUNUX0RFQVRIKiwKIC8vIEFTU0VSVF9FWElUKiwgYW5kIEVYUEVDVF9FWElUKi4KLSMgZGVm
aW5lIEdURVNUX0RFQVRIX1RFU1RfKHN0YXRlbWVudCwgcHJlZGljYXRlLCByZWdleCwgZmFpbCkg
XAotICBHVEVTVF9BTUJJR1VPVVNfRUxTRV9CTE9DS0VSXyBcCi0gIGlmICg6OnRlc3Rpbmc6Omlu
dGVybmFsOjpBbHdheXNUcnVlKCkpIHsgXAotICAgIGNvbnN0IDo6dGVzdGluZzo6aW50ZXJuYWw6
OlJFJiBndGVzdF9yZWdleCA9IChyZWdleCk7IFwKLSAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpE
ZWF0aFRlc3QqIGd0ZXN0X2R0OyBcCi0gICAgaWYgKCE6OnRlc3Rpbmc6OmludGVybmFsOjpEZWF0
aFRlc3Q6OkNyZWF0ZSgjc3RhdGVtZW50LCAmZ3Rlc3RfcmVnZXgsIFwKLSAgICAgICAgX19GSUxF
X18sIF9fTElORV9fLCAmZ3Rlc3RfZHQpKSB7IFwKLSAgICAgIGdvdG8gR1RFU1RfQ09OQ0FUX1RP
S0VOXyhndGVzdF9sYWJlbF8sIF9fTElORV9fKTsgXAotICAgIH0gXAotICAgIGlmIChndGVzdF9k
dCAhPSBOVUxMKSB7IFwKLSAgICAgIDo6dGVzdGluZzo6aW50ZXJuYWw6OnNjb3BlZF9wdHI8IDo6
dGVzdGluZzo6aW50ZXJuYWw6OkRlYXRoVGVzdD4gXAotICAgICAgICAgIGd0ZXN0X2R0X3B0cihn
dGVzdF9kdCk7IFwKLSAgICAgIHN3aXRjaCAoZ3Rlc3RfZHQtPkFzc3VtZVJvbGUoKSkgeyBcCi0g
ICAgICAgIGNhc2UgOjp0ZXN0aW5nOjppbnRlcm5hbDo6RGVhdGhUZXN0OjpPVkVSU0VFX1RFU1Q6
IFwKLSAgICAgICAgICBpZiAoIWd0ZXN0X2R0LT5QYXNzZWQocHJlZGljYXRlKGd0ZXN0X2R0LT5X
YWl0KCkpKSkgeyBcCi0gICAgICAgICAgICBnb3RvIEdURVNUX0NPTkNBVF9UT0tFTl8oZ3Rlc3Rf
bGFiZWxfLCBfX0xJTkVfXyk7IFwKLSAgICAgICAgICB9IFwKLSAgICAgICAgICBicmVhazsgXAot
ICAgICAgICBjYXNlIDo6dGVzdGluZzo6aW50ZXJuYWw6OkRlYXRoVGVzdDo6RVhFQ1VURV9URVNU
OiB7IFwKLSAgICAgICAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpEZWF0aFRlc3Q6OlJldHVyblNl
bnRpbmVsIFwKLSAgICAgICAgICAgICAgZ3Rlc3Rfc2VudGluZWwoZ3Rlc3RfZHQpOyBcCi0gICAg
ICAgICAgR1RFU1RfRVhFQ1VURV9ERUFUSF9URVNUX1NUQVRFTUVOVF8oc3RhdGVtZW50LCBndGVz
dF9kdCk7IFwKLSAgICAgICAgICBndGVzdF9kdC0+QWJvcnQoOjp0ZXN0aW5nOjppbnRlcm5hbDo6
RGVhdGhUZXN0OjpURVNUX0RJRF9OT1RfRElFKTsgXAotICAgICAgICAgIGJyZWFrOyBcCi0gICAg
ICAgIH0gXAotICAgICAgICBkZWZhdWx0OiBcCi0gICAgICAgICAgYnJlYWs7IFwKLSAgICAgIH0g
XAotICAgIH0gXAotICB9IGVsc2UgXAotICAgIEdURVNUX0NPTkNBVF9UT0tFTl8oZ3Rlc3RfbGFi
ZWxfLCBfX0xJTkVfXyk6IFwKLSAgICAgIGZhaWwoOjp0ZXN0aW5nOjppbnRlcm5hbDo6RGVhdGhU
ZXN0OjpMYXN0TWVzc2FnZSgpKQorI2RlZmluZSBHVEVTVF9ERUFUSF9URVNUXyhzdGF0ZW1lbnQs
IHByZWRpY2F0ZSwgcmVnZXhfb3JfbWF0Y2hlciwgZmFpbCkgICAgICAgIFwKKyAgR1RFU1RfQU1C
SUdVT1VTX0VMU0VfQkxPQ0tFUl8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCisgIGlmICg6OnRlc3Rpbmc6OmludGVybmFsOjpBbHdheXNUcnVlKCkpIHsg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIDo6dGVzdGluZzo6aW50
ZXJuYWw6OkRlYXRoVGVzdCogZ3Rlc3RfZHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKKyAgICBpZiAoITo6dGVzdGluZzo6aW50ZXJuYWw6OkRlYXRoVGVzdDo6Q3JlYXRlKCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAjc3RhdGVtZW50LCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAor
ICAgICAgICAgICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6TWFrZURlYXRoVGVzdE1hdGNoZXIocmVn
ZXhfb3JfbWF0Y2hlciksICAgICAgIFwKKyAgICAgICAgICAgIF9fRklMRV9fLCBfX0xJTkVfXywg
Jmd0ZXN0X2R0KSkgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICBn
b3RvIEdURVNUX0NPTkNBVF9UT0tFTl8oZ3Rlc3RfbGFiZWxfLCBfX0xJTkVfXyk7ICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBpZiAoZ3Rlc3Rf
ZHQgIT0gbnVsbHB0cikgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCisgICAgICBzdGQ6OnVuaXF1ZV9wdHI8IDo6dGVzdGluZzo6aW50ZXJuYWw6OkRl
YXRoVGVzdD4gZ3Rlc3RfZHRfcHRyKGd0ZXN0X2R0KTsgXAorICAgICAgc3dpdGNoIChndGVzdF9k
dC0+QXNzdW1lUm9sZSgpKSB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKKyAgICAgICAgY2FzZSA6OnRlc3Rpbmc6OmludGVybmFsOjpEZWF0aFRlc3Q6Ok9WRVJTRUVf
VEVTVDogICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgaWYgKCFndGVzdF9kdC0+UGFz
c2VkKHByZWRpY2F0ZShndGVzdF9kdC0+V2FpdCgpKSkpIHsgICAgICAgICAgICAgICAgXAorICAg
ICAgICAgICAgZ290byBHVEVTVF9DT05DQVRfVE9LRU5fKGd0ZXN0X2xhYmVsXywgX19MSU5FX18p
OyAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAg
YnJlYWs7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAorICAgICAgICBjYXNlIDo6dGVzdGluZzo6aW50ZXJuYWw6OkRlYXRoVGVz
dDo6RVhFQ1VURV9URVNUOiB7ICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICA6OnRlc3Rp
bmc6OmludGVybmFsOjpEZWF0aFRlc3Q6OlJldHVyblNlbnRpbmVsIGd0ZXN0X3NlbnRpbmVsKCAg
ICAgICBcCisgICAgICAgICAgICAgIGd0ZXN0X2R0KTsgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgIEdURVNUX0VYRUNVVEVf
REVBVEhfVEVTVF9TVEFURU1FTlRfKHN0YXRlbWVudCwgZ3Rlc3RfZHQpOyAgICAgICAgICAgIFwK
KyAgICAgICAgICBndGVzdF9kdC0+QWJvcnQoOjp0ZXN0aW5nOjppbnRlcm5hbDo6RGVhdGhUZXN0
OjpURVNUX0RJRF9OT1RfRElFKTsgICBcCisgICAgICAgICAgYnJlYWs7ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAg
ICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKKyAgICAgICAgZGVmYXVsdDogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgYnJl
YWs7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAorICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB9ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCisgIH0gZWxzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIEdURVNUX0NPTkNBVF9UT0tFTl8oZ3Rl
c3RfbGFiZWxfLCBfX0xJTkVfXykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAg
ICAgICAgOiBmYWlsKDo6dGVzdGluZzo6aW50ZXJuYWw6OkRlYXRoVGVzdDo6TGFzdE1lc3NhZ2Uo
KSkKIC8vIFRoZSBzeW1ib2wgImZhaWwiIGhlcmUgZXhwYW5kcyB0byBzb21ldGhpbmcgaW50byB3
aGljaCBhIG1lc3NhZ2UKIC8vIGNhbiBiZSBzdHJlYW1lZC4KIApAQCAtMjI2LDE0ICsyNTEsMTMg
QEAgR1RFU1RfQVBJXyBib29sIEV4aXRlZFVuc3VjY2Vzc2Z1bGx5KGludCBleGl0X3N0YXR1cyk7
CiAvLyBtdXN0IGFjY2VwdCBhIHN0cmVhbWVkIG1lc3NhZ2UgZXZlbiB0aG91Z2ggdGhlIG1lc3Nh
Z2UgaXMgbmV2ZXIgcHJpbnRlZC4KIC8vIFRoZSByZWdleCBvYmplY3QgaXMgbm90IGV2YWx1YXRl
ZCwgYnV0IGl0IGlzIHVzZWQgdG8gcHJldmVudCAidW51c2VkIgogLy8gd2FybmluZ3MgYW5kIHRv
IGF2b2lkIGFuIGV4cHJlc3Npb24gdGhhdCBkb2Vzbid0IGNvbXBpbGUgaW4gZGVidWcgbW9kZS4K
LSNkZWZpbmUgR1RFU1RfRVhFQ1VURV9TVEFURU1FTlRfKHN0YXRlbWVudCwgcmVnZXgpICAgICAg
ICAgICAgIFwKLSAgR1RFU1RfQU1CSUdVT1VTX0VMU0VfQkxPQ0tFUl8gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKLSAgaWYgKDo6dGVzdGluZzo6aW50ZXJuYWw6OkFsd2F5c1RydWUo
KSkgeyAgICAgICAgICAgICAgICAgICAgIFwKLSAgICBHVEVTVF9TVVBQUkVTU19VTlJFQUNIQUJM
RV9DT0RFX1dBUk5JTkdfQkVMT1dfKHN0YXRlbWVudCk7IFwKLSAgfSBlbHNlIGlmICghOjp0ZXN0
aW5nOjppbnRlcm5hbDo6QWx3YXlzVHJ1ZSgpKSB7ICAgICAgICAgICAgIFwKLSAgICBjb25zdCA6
OnRlc3Rpbmc6OmludGVybmFsOjpSRSYgZ3Rlc3RfcmVnZXggPSAocmVnZXgpOyAgICAgIFwKLSAg
ICBzdGF0aWNfY2FzdDx2b2lkPihndGVzdF9yZWdleCk7ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKLSAgfSBlbHNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKKyNkZWZpbmUgR1RFU1RfRVhFQ1VURV9TVEFURU1FTlRfKHN0YXRlbWVu
dCwgcmVnZXhfb3JfbWF0Y2hlcikgICAgXAorICBHVEVTVF9BTUJJR1VPVVNfRUxTRV9CTE9DS0VS
XyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgIGlmICg6OnRlc3Rpbmc6Omlu
dGVybmFsOjpBbHdheXNUcnVlKCkpIHsgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBHVEVT
VF9TVVBQUkVTU19VTlJFQUNIQUJMRV9DT0RFX1dBUk5JTkdfQkVMT1dfKHN0YXRlbWVudCk7ICAg
XAorICB9IGVsc2UgaWYgKCE6OnRlc3Rpbmc6OmludGVybmFsOjpBbHdheXNUcnVlKCkpIHsgICAg
ICAgICAgICAgICBcCisgICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6TWFrZURlYXRoVGVzdE1hdGNo
ZXIocmVnZXhfb3JfbWF0Y2hlcik7IFwKKyAgfSBlbHNlICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIDo6dGVzdGluZzo6TWVzc2Fn
ZSgpCiAKIC8vIEEgY2xhc3MgcmVwcmVzZW50aW5nIHRoZSBwYXJzZWQgY29udGVudHMgb2YgdGhl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1
ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtZmlsZXBhdGguaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFy
dHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1maWxlcGF0aC5o
CmluZGV4IGFlMzhkOTViZjg0NGZhOWRjMjE3MzljZjgyMTI3NmQ1YjM0MTdlM2EuLmMxMWIxMDE1
MTZlNTMwYWFhOTUxMGI2NWQ5N2RkNjdiYmMwNjkwYTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1m
aWxlcGF0aC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5j
bHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1maWxlcGF0aC5oCkBAIC0xMTAsNyArMTEwLDcgQEAg
Y2xhc3MgR1RFU1RfQVBJXyBGaWxlUGF0aCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IEZpbGVQYXRoJiBiYXNlX25hbWUsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGV4dGVuc2lvbik7CiAKLSAgLy8g
UmV0dXJucyB0cnVlIGlmZiB0aGUgcGF0aCBpcyAiIi4KKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFu
ZCBvbmx5IGlmIHRoZSBwYXRoIGlzICIiLgogICBib29sIElzRW1wdHkoKSBjb25zdCB7IHJldHVy
biBwYXRobmFtZV8uZW1wdHkoKTsgfQogCiAgIC8vIElmIGlucHV0IG5hbWUgaGFzIGEgdHJhaWxp
bmcgc2VwYXJhdG9yIGNoYXJhY3RlciwgcmVtb3ZlcyBpdCBhbmQgcmV0dXJucwpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2lu
dGVybmFsL2d0ZXN0LWludGVybmFsLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRl
c3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtaW50ZXJuYWwuaAppbmRleCBiNzYy
ZjYxZmM1M2MzZGI5Y2ZiNzUzOTQwZDkxYjVkNTRhYjM2MzU3Li42YmFkODc4MGI1YTA2M2M1ZDg3
ZTA1OGM3Mjk5ZjhhZDBlZDUzODM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5
L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtaW50ZXJuYWwuaAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3Qv
aW50ZXJuYWwvZ3Rlc3QtaW50ZXJuYWwuaApAQCAtNTMsMTEgKzUzLDEzIEBACiAjaW5jbHVkZSA8
Y3R5cGUuaD4KICNpbmNsdWRlIDxmbG9hdC5oPgogI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1
ZGUgPGNzdGRpbnQ+CiAjaW5jbHVkZSA8aW9tYW5pcD4KICNpbmNsdWRlIDxsaW1pdHM+CiAjaW5j
bHVkZSA8bWFwPgogI2luY2x1ZGUgPHNldD4KICNpbmNsdWRlIDxzdHJpbmc+CisjaW5jbHVkZSA8
dHlwZV90cmFpdHM+CiAjaW5jbHVkZSA8dmVjdG9yPgogCiAjaW5jbHVkZSAiZ3Rlc3QvZ3Rlc3Qt
bWVzc2FnZS5oIgpAQCAtNzcsOSArNzksMTcgQEAKICNkZWZpbmUgR1RFU1RfQ09OQ0FUX1RPS0VO
X0lNUExfKGZvbywgYmFyKSBmb28gIyMgYmFyCiAKIC8vIFN0cmluZ2lmaWVzIGl0cyBhcmd1bWVu
dC4KLSNkZWZpbmUgR1RFU1RfU1RSSU5HSUZZXyhuYW1lKSAjbmFtZQorLy8gV29yayBhcm91bmQg
YSBidWcgaW4gdmlzdWFsIHN0dWRpbyB3aGljaCBkb2Vzbid0IGFjY2VwdCBjb2RlIGxpa2UgdGhp
czoKKy8vCisvLyAgICNkZWZpbmUgR1RFU1RfU1RSSU5HSUZZXyhuYW1lKSAjbmFtZQorLy8gICAj
ZGVmaW5lIE1BQ1JPKGEsIGIsIGMpIC4uLiBHVEVTVF9TVFJJTkdJRllfKGEpIC4uLgorLy8gICBN
QUNSTygsIHgsIHkpCisvLworLy8gQ29tcGxhaW5pbmcgYWJvdXQgdGhlIGFyZ3VtZW50IHRvIEdU
RVNUX1NUUklOR0lGWV8gYmVpbmcgZW1wdHkuCisvLyBUaGlzIGlzIGFsbG93ZWQgYnkgdGhlIHNw
ZWMuCisjZGVmaW5lIEdURVNUX1NUUklOR0lGWV9IRUxQRVJfKG5hbWUsIC4uLikgI25hbWUKKyNk
ZWZpbmUgR1RFU1RfU1RSSU5HSUZZXyguLi4pIEdURVNUX1NUUklOR0lGWV9IRUxQRVJfKF9fVkFf
QVJHU19fLCApCiAKLWNsYXNzIFByb3RvY29sTWVzc2FnZTsKIG5hbWVzcGFjZSBwcm90bzIgeyBj
bGFzcyBNZXNzYWdlOyB9CiAKIG5hbWVzcGFjZSB0ZXN0aW5nIHsKQEAgLTkxLDcgKzEwMSw3IEBA
IGNsYXNzIE1lc3NhZ2U7ICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFJlcHJlc2VudHMgYSBm
YWlsdXJlIG1lc3NhZ2UuCiBjbGFzcyBUZXN0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
LyBSZXByZXNlbnRzIGEgdGVzdC4KIGNsYXNzIFRlc3RJbmZvOyAgICAgICAgICAgICAgICAgICAg
ICAgIC8vIEluZm9ybWF0aW9uIGFib3V0IGEgdGVzdC4KIGNsYXNzIFRlc3RQYXJ0UmVzdWx0OyAg
ICAgICAgICAgICAgICAgIC8vIFJlc3VsdCBvZiBhIHRlc3QgcGFydC4KLWNsYXNzIFVuaXRUZXN0
OyAgICAgICAgICAgICAgICAgICAgICAgIC8vIEEgY29sbGVjdGlvbiBvZiB0ZXN0IGNhc2VzLgor
Y2xhc3MgVW5pdFRlc3Q7ICAgICAgICAgICAgICAgICAgICAgICAgLy8gQSBjb2xsZWN0aW9uIG9m
IHRlc3Qgc3VpdGVzLgogCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KIDo6c3RkOjpzdHJpbmcgUHJp
bnRUb1N0cmluZyhjb25zdCBUJiB2YWx1ZSk7CkBAIC0xMDYsMzQgKzExNiwyMiBAQCBjbGFzcyBV
bml0VGVzdEltcGw7ICAgICAgICAgICAgICAgICAgICAvLyBPcGFxdWUgaW1wbGVtZW50YXRpb24g
b2YgVW5pdFRlc3QKIC8vIHN0YWNrIHRyYWNlLgogR1RFU1RfQVBJXyBleHRlcm4gY29uc3QgY2hh
ciBrU3RhY2tUcmFjZU1hcmtlcltdOwogCi0vLyBUd28gb3ZlcmxvYWRlZCBoZWxwZXJzIGZvciBj
aGVja2luZyBhdCBjb21waWxlIHRpbWUgd2hldGhlciBhbgotLy8gZXhwcmVzc2lvbiBpcyBhIG51
bGwgcG9pbnRlciBsaXRlcmFsIChpLmUuIE5VTEwgb3IgYW55IDAtdmFsdWVkCi0vLyBjb21waWxl
LXRpbWUgaW50ZWdyYWwgY29uc3RhbnQpLiAgVGhlaXIgcmV0dXJuIHZhbHVlcyBoYXZlCi0vLyBk
aWZmZXJlbnQgc2l6ZXMsIHNvIHdlIGNhbiB1c2Ugc2l6ZW9mKCkgdG8gdGVzdCB3aGljaCB2ZXJz
aW9uIGlzCi0vLyBwaWNrZWQgYnkgdGhlIGNvbXBpbGVyLiAgVGhlc2UgaGVscGVycyBoYXZlIG5v
IGltcGxlbWVudGF0aW9ucywgYXMKLS8vIHdlIG9ubHkgbmVlZCB0aGVpciBzaWduYXR1cmVzLgot
Ly8KLS8vIEdpdmVuIElzTnVsbExpdGVyYWxIZWxwZXIoeCksIHRoZSBjb21waWxlciB3aWxsIHBp
Y2sgdGhlIGZpcnN0Ci0vLyB2ZXJzaW9uIGlmIHggY2FuIGJlIGltcGxpY2l0bHkgY29udmVydGVk
IHRvIFNlY3JldCosIGFuZCBwaWNrIHRoZQotLy8gc2Vjb25kIHZlcnNpb24gb3RoZXJ3aXNlLiAg
U2luY2UgU2VjcmV0IGlzIGEgc2VjcmV0IGFuZCBpbmNvbXBsZXRlCi0vLyB0eXBlLCB0aGUgb25s
eSBleHByZXNzaW9uIGEgdXNlciBjYW4gd3JpdGUgdGhhdCBoYXMgdHlwZSBTZWNyZXQqIGlzCi0v
LyBhIG51bGwgcG9pbnRlciBsaXRlcmFsLiAgVGhlcmVmb3JlLCB3ZSBrbm93IHRoYXQgeCBpcyBh
IG51bGwKLS8vIHBvaW50ZXIgbGl0ZXJhbCBpZiBhbmQgb25seSBpZiB0aGUgZmlyc3QgdmVyc2lv
biBpcyBwaWNrZWQgYnkgdGhlCi0vLyBjb21waWxlci4KLWNoYXIgSXNOdWxsTGl0ZXJhbEhlbHBl
cihTZWNyZXQqIHApOwotY2hhciAoJklzTnVsbExpdGVyYWxIZWxwZXIoLi4uKSlbMl07ICAvLyBO
T0xJTlQKLQotLy8gQSBjb21waWxlLXRpbWUgYm9vbCBjb25zdGFudCB0aGF0IGlzIHRydWUgaWYg
YW5kIG9ubHkgaWYgeCBpcyBhCi0vLyBudWxsIHBvaW50ZXIgbGl0ZXJhbCAoaS5lLiBOVUxMIG9y
IGFueSAwLXZhbHVlZCBjb21waWxlLXRpbWUKLS8vIGludGVncmFsIGNvbnN0YW50KS4KLSNpZmRl
ZiBHVEVTVF9FTExJUFNJU19ORUVEU19QT0RfCi0vLyBXZSBsb3NlIHN1cHBvcnQgZm9yIE5VTEwg
ZGV0ZWN0aW9uIHdoZXJlIHRoZSBjb21waWxlciBkb2Vzbid0IGxpa2UKLS8vIHBhc3Npbmcgbm9u
LVBPRCBjbGFzc2VzIHRocm91Z2ggZWxsaXBzaXMgKC4uLikuCi0jIGRlZmluZSBHVEVTVF9JU19O
VUxMX0xJVEVSQUxfKHgpIGZhbHNlCi0jZWxzZQotIyBkZWZpbmUgR1RFU1RfSVNfTlVMTF9MSVRF
UkFMXyh4KSBcCi0gICAgKHNpemVvZig6OnRlc3Rpbmc6OmludGVybmFsOjpJc051bGxMaXRlcmFs
SGVscGVyKHgpKSA9PSAxKQotI2VuZGlmICAvLyBHVEVTVF9FTExJUFNJU19ORUVEU19QT0RfCisv
LyBBbiBJZ25vcmVkVmFsdWUgb2JqZWN0IGNhbiBiZSBpbXBsaWNpdGx5IGNvbnN0cnVjdGVkIGZy
b20gQU5ZIHZhbHVlLgorY2xhc3MgSWdub3JlZFZhbHVlIHsKKyAgc3RydWN0IFNpbmsge307Cisg
cHVibGljOgorICAvLyBUaGlzIGNvbnN0cnVjdG9yIHRlbXBsYXRlIGFsbG93cyBhbnkgdmFsdWUg
dG8gYmUgaW1wbGljaXRseQorICAvLyBjb252ZXJ0ZWQgdG8gSWdub3JlZFZhbHVlLiAgVGhlIG9i
amVjdCBoYXMgbm8gZGF0YSBtZW1iZXIgYW5kCisgIC8vIGRvZXNuJ3QgdHJ5IHRvIHJlbWVtYmVy
IGFueXRoaW5nIGFib3V0IHRoZSBhcmd1bWVudC4gIFdlCisgIC8vIGRlbGliZXJhdGVseSBvbWl0
IHRoZSAnZXhwbGljaXQnIGtleXdvcmQgaW4gb3JkZXIgdG8gYWxsb3cgdGhlCisgIC8vIGNvbnZl
cnNpb24gdG8gYmUgaW1wbGljaXQuCisgIC8vIERpc2FibGUgdGhlIGNvbnZlcnNpb24gaWYgVCBh
bHJlYWR5IGhhcyBhIG1hZ2ljYWwgY29udmVyc2lvbiBvcGVyYXRvci4KKyAgLy8gT3RoZXJ3aXNl
IHdlIGdldCBhbWJpZ3VpdHkuCisgIHRlbXBsYXRlIDx0eXBlbmFtZSBULAorICAgICAgICAgICAg
dHlwZW5hbWUgc3RkOjplbmFibGVfaWY8IXN0ZDo6aXNfY29udmVydGlibGU8VCwgU2luaz46OnZh
bHVlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50Pjo6dHlwZSA9IDA+
CisgIElnbm9yZWRWYWx1ZShjb25zdCBUJiAvKiBpZ25vcmVkICovKSB7fSAgLy8gTk9MSU5UKHJ1
bnRpbWUvZXhwbGljaXQpCit9OwogCiAvLyBBcHBlbmRzIHRoZSB1c2VyLXN1cHBsaWVkIG1lc3Nh
Z2UgdG8gdGhlIEdvb2dsZS1UZXN0LWdlbmVyYXRlZCBtZXNzYWdlLgogR1RFU1RfQVBJXyBzdGQ6
OnN0cmluZyBBcHBlbmRVc2VyTWVzc2FnZSgKQEAgLTIwMSw3ICsxOTksNyBAQCBHVEVTVF9BUElf
IHN0ZDo6c3RyaW5nIERpZmZTdHJpbmdzKGNvbnN0IHN0ZDo6c3RyaW5nJiBsZWZ0LAogLy8gICBl
eHBlY3RlZF92YWx1ZTogICAgICAiNSIKIC8vICAgYWN0dWFsX3ZhbHVlOiAgICAgICAgIjYiCiAv
LwotLy8gVGhlIGlnbm9yaW5nX2Nhc2UgcGFyYW1ldGVyIGlzIHRydWUgaWZmIHRoZSBhc3NlcnRp
b24gaXMgYQorLy8gVGhlIGlnbm9yaW5nX2Nhc2UgcGFyYW1ldGVyIGlzIHRydWUgaWYgYW5kIG9u
bHkgaWYgdGhlIGFzc2VydGlvbiBpcyBhCiAvLyAqX1NUUkNBU0VFUSouICBXaGVuIGl0J3MgdHJ1
ZSwgdGhlIHN0cmluZyAiIChpZ25vcmluZyBjYXNlKSIgd2lsbAogLy8gYmUgaW5zZXJ0ZWQgaW50
byB0aGUgbWVzc2FnZS4KIEdURVNUX0FQSV8gQXNzZXJ0aW9uUmVzdWx0IEVxRmFpbHVyZShjb25z
dCBjaGFyKiBleHBlY3RlZF9leHByZXNzaW9uLApAQCAtMzMwLDE1ICszMjgsMTUgQEAgY2xhc3Mg
RmxvYXRpbmdQb2ludCB7CiAgIC8vIFJldHVybnMgdGhlIHNpZ24gYml0IG9mIHRoaXMgbnVtYmVy
LgogICBCaXRzIHNpZ25fYml0KCkgY29uc3QgeyByZXR1cm4ga1NpZ25CaXRNYXNrICYgdV8uYml0
c187IH0KIAotICAvLyBSZXR1cm5zIHRydWUgaWZmIHRoaXMgaXMgTkFOIChub3QgYSBudW1iZXIp
LgorICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhpcyBpcyBOQU4gKG5vdCBhIG51
bWJlcikuCiAgIGJvb2wgaXNfbmFuKCkgY29uc3QgewogICAgIC8vIEl0J3MgYSBOQU4gaWYgdGhl
IGV4cG9uZW50IGJpdHMgYXJlIGFsbCBvbmVzIGFuZCB0aGUgZnJhY3Rpb24KICAgICAvLyBiaXRz
IGFyZSBub3QgZW50aXJlbHkgemVyb3MuCiAgICAgcmV0dXJuIChleHBvbmVudF9iaXRzKCkgPT0g
a0V4cG9uZW50Qml0TWFzaykgJiYgKGZyYWN0aW9uX2JpdHMoKSAhPSAwKTsKICAgfQogCi0gIC8v
IFJldHVybnMgdHJ1ZSBpZmYgdGhpcyBudW1iZXIgaXMgYXQgbW9zdCBrTWF4VWxwcyBVTFAncyBh
d2F5IGZyb20KLSAgLy8gcmhzLiAgSW4gcGFydGljdWxhciwgdGhpcyBmdW5jdGlvbjoKKyAgLy8g
UmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoaXMgbnVtYmVyIGlzIGF0IG1vc3Qga01heFVs
cHMgVUxQJ3MgYXdheQorICAvLyBmcm9tIHJocy4gIEluIHBhcnRpY3VsYXIsIHRoaXMgZnVuY3Rp
b246CiAgIC8vCiAgIC8vICAgLSByZXR1cm5zIGZhbHNlIGlmIGVpdGhlciBudW1iZXIgaXMgKG9y
IGJvdGggYXJlKSBOQU4uCiAgIC8vICAgLSB0cmVhdHMgcmVhbGx5IGxhcmdlIG51bWJlcnMgYXMg
YWxtb3N0IGVxdWFsIHRvIGluZmluaXR5LgpAQCAtNDA5LDcgKzQwNyw3IEBAIHR5cGVkZWYgRmxv
YXRpbmdQb2ludDxmbG9hdD4gRmxvYXQ7CiB0eXBlZGVmIEZsb2F0aW5nUG9pbnQ8ZG91YmxlPiBE
b3VibGU7CiAKIC8vIEluIG9yZGVyIHRvIGNhdGNoIHRoZSBtaXN0YWtlIG9mIHB1dHRpbmcgdGVz
dHMgdGhhdCB1c2UgZGlmZmVyZW50Ci0vLyB0ZXN0IGZpeHR1cmUgY2xhc3NlcyBpbiB0aGUgc2Ft
ZSB0ZXN0IGNhc2UsIHdlIG5lZWQgdG8gYXNzaWduCisvLyB0ZXN0IGZpeHR1cmUgY2xhc3NlcyBp
biB0aGUgc2FtZSB0ZXN0IHN1aXRlLCB3ZSBuZWVkIHRvIGFzc2lnbgogLy8gdW5pcXVlIElEcyB0
byBmaXh0dXJlIGNsYXNzZXMgYW5kIGNvbXBhcmUgdGhlbS4gIFRoZSBUeXBlSWQgdHlwZSBpcwog
Ly8gdXNlZCB0byBob2xkIHN1Y2ggSURzLiAgVGhlIHVzZXIgc2hvdWxkIHRyZWF0IFR5cGVJZCBh
cyBhbiBvcGFxdWUKIC8vIHR5cGU6IHRoZSBvbmx5IG9wZXJhdGlvbiBhbGxvd2VkIG9uIFR5cGVJ
ZCB2YWx1ZXMgaXMgdG8gY29tcGFyZQpAQCAtNDY5LDcgKzQ2Nyw3IEBAIGNsYXNzIFRlc3RGYWN0
b3J5QmFzZSB7CiB0ZW1wbGF0ZSA8Y2xhc3MgVGVzdENsYXNzPgogY2xhc3MgVGVzdEZhY3RvcnlJ
bXBsIDogcHVibGljIFRlc3RGYWN0b3J5QmFzZSB7CiAgcHVibGljOgotICB2aXJ0dWFsIFRlc3Qq
IENyZWF0ZVRlc3QoKSB7IHJldHVybiBuZXcgVGVzdENsYXNzOyB9CisgIFRlc3QqIENyZWF0ZVRl
c3QoKSBvdmVycmlkZSB7IHJldHVybiBuZXcgVGVzdENsYXNzOyB9CiB9OwogCiAjaWYgR1RFU1Rf
T1NfV0lORE9XUwpAQCAtNDg1LDkgKzQ4Myw5IEBAIEdURVNUX0FQSV8gQXNzZXJ0aW9uUmVzdWx0
IElzSFJFU1VMVEZhaWx1cmUoY29uc3QgY2hhciogZXhwciwKIAogI2VuZGlmICAvLyBHVEVTVF9P
U19XSU5ET1dTCiAKLS8vIFR5cGVzIG9mIFNldFVwVGVzdENhc2UoKSBhbmQgVGVhckRvd25UZXN0
Q2FzZSgpIGZ1bmN0aW9ucy4KLXR5cGVkZWYgdm9pZCAoKlNldFVwVGVzdENhc2VGdW5jKSgpOwot
dHlwZWRlZiB2b2lkICgqVGVhckRvd25UZXN0Q2FzZUZ1bmMpKCk7CisvLyBUeXBlcyBvZiBTZXRV
cFRlc3RTdWl0ZSgpIGFuZCBUZWFyRG93blRlc3RTdWl0ZSgpIGZ1bmN0aW9ucy4KK3VzaW5nIFNl
dFVwVGVzdFN1aXRlRnVuYyA9IHZvaWQgKCopKCk7Cit1c2luZyBUZWFyRG93blRlc3RTdWl0ZUZ1
bmMgPSB2b2lkICgqKSgpOwogCiBzdHJ1Y3QgQ29kZUxvY2F0aW9uIHsKICAgQ29kZUxvY2F0aW9u
KGNvbnN0IHN0ZDo6c3RyaW5nJiBhX2ZpbGUsIGludCBhX2xpbmUpCkBAIC00OTcsMTIgKzQ5NSw2
NCBAQCBzdHJ1Y3QgQ29kZUxvY2F0aW9uIHsKICAgaW50IGxpbmU7CiB9OwogCisvLyAgSGVscGVy
IHRvIGlkZW50aWZ5IHdoaWNoIHNldHVwIGZ1bmN0aW9uIGZvciBUZXN0Q2FzZSAvIFRlc3RTdWl0
ZSB0byBjYWxsLgorLy8gIE9ubHkgb25lIGZ1bmN0aW9uIGlzIGFsbG93ZWQsIGVpdGhlciBUZXN0
Q2FzZSBvciBUZXN0U3V0ZSBidXQgbm90IGJvdGguCisKKy8vIFV0aWxpdHkgZnVuY3Rpb25zIHRv
IGhlbHAgU3VpdGVBcGlSZXNvbHZlcgordXNpbmcgU2V0VXBUZWFyRG93blN1aXRlRnVuY1R5cGUg
PSB2b2lkICgqKSgpOworCitpbmxpbmUgU2V0VXBUZWFyRG93blN1aXRlRnVuY1R5cGUgR2V0Tm90
RGVmYXVsdE9yTnVsbCgKKyAgICBTZXRVcFRlYXJEb3duU3VpdGVGdW5jVHlwZSBhLCBTZXRVcFRl
YXJEb3duU3VpdGVGdW5jVHlwZSBkZWYpIHsKKyAgcmV0dXJuIGEgPT0gZGVmID8gbnVsbHB0ciA6
IGE7Cit9CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBUPgorLy8gIE5vdGUgdGhhdCBTdWl0ZUFwaVJl
c29sdmVyIGluaGVyaXRzIGZyb20gVCBiZWNhdXNlCisvLyAgU2V0VXBUZXN0U3VpdGUoKS9UZWFy
RG93blRlc3RTdWl0ZSgpIGNvdWxkIGJlIHByb3RlY3RlZC4gVGhzIHdheQorLy8gIFN1aXRlQXBp
UmVzb2x2ZXIgY2FuIGFjY2VzcyB0aGVtLgorc3RydWN0IFN1aXRlQXBpUmVzb2x2ZXIgOiBUIHsK
KyAgLy8gdGVzdGluZzo6VGVzdCBpcyBvbmx5IGZvcndhcmQgZGVjbGFyZWQgYXQgdGhpcyBwb2lu
dC4gU28gd2UgbWFrZSBpdCBhCisgIC8vIGRlcGVuZGVuZCBjbGFzcyBmb3IgdGhlIGNvbXBpbGVy
IHRvIGJlIE9LIHdpdGggaXQuCisgIHVzaW5nIFRlc3QgPQorICAgICAgdHlwZW5hbWUgc3RkOjpj
b25kaXRpb25hbDxzaXplb2YoVCkgIT0gMCwgOjp0ZXN0aW5nOjpUZXN0LCB2b2lkPjo6dHlwZTsK
KworICBzdGF0aWMgU2V0VXBUZWFyRG93blN1aXRlRnVuY1R5cGUgR2V0U2V0VXBDYXNlT3JTdWl0
ZShjb25zdCBjaGFyKiBmaWxlbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaW50IGxpbmVfbnVtKSB7CisgICAgU2V0VXBUZWFyRG93
blN1aXRlRnVuY1R5cGUgdGVzdF9jYXNlX2ZwID0KKyAgICAgICAgR2V0Tm90RGVmYXVsdE9yTnVs
bCgmVDo6U2V0VXBUZXN0Q2FzZSwgJlRlc3Q6OlNldFVwVGVzdENhc2UpOworICAgIFNldFVwVGVh
ckRvd25TdWl0ZUZ1bmNUeXBlIHRlc3Rfc3VpdGVfZnAgPQorICAgICAgICBHZXROb3REZWZhdWx0
T3JOdWxsKCZUOjpTZXRVcFRlc3RTdWl0ZSwgJlRlc3Q6OlNldFVwVGVzdFN1aXRlKTsKKworICAg
IEdURVNUX0NIRUNLXyghdGVzdF9jYXNlX2ZwIHx8ICF0ZXN0X3N1aXRlX2ZwKQorICAgICAgICA8
PCAiVGVzdCBjYW4gbm90IHByb3ZpZGUgYm90aCBTZXRVcFRlc3RTdWl0ZSBhbmQgU2V0VXBUZXN0
Q2FzZSwgcGxlYXNlICIKKyAgICAgICAgICAgIm1ha2Ugc3VyZSB0aGVyZSBpcyBvbmx5IG9uZSBw
cmVzZW50IGF0ICIKKyAgICAgICAgPDwgZmlsZW5hbWUgPDwgIjoiIDw8IGxpbmVfbnVtOworCisg
ICAgcmV0dXJuIHRlc3RfY2FzZV9mcCAhPSBudWxscHRyID8gdGVzdF9jYXNlX2ZwIDogdGVzdF9z
dWl0ZV9mcDsKKyAgfQorCisgIHN0YXRpYyBTZXRVcFRlYXJEb3duU3VpdGVGdW5jVHlwZSBHZXRU
ZWFyRG93bkNhc2VPclN1aXRlKGNvbnN0IGNoYXIqIGZpbGVuYW1lLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbGluZV9udW0p
IHsKKyAgICBTZXRVcFRlYXJEb3duU3VpdGVGdW5jVHlwZSB0ZXN0X2Nhc2VfZnAgPQorICAgICAg
ICBHZXROb3REZWZhdWx0T3JOdWxsKCZUOjpUZWFyRG93blRlc3RDYXNlLCAmVGVzdDo6VGVhckRv
d25UZXN0Q2FzZSk7CisgICAgU2V0VXBUZWFyRG93blN1aXRlRnVuY1R5cGUgdGVzdF9zdWl0ZV9m
cCA9CisgICAgICAgIEdldE5vdERlZmF1bHRPck51bGwoJlQ6OlRlYXJEb3duVGVzdFN1aXRlLCAm
VGVzdDo6VGVhckRvd25UZXN0U3VpdGUpOworCisgICAgR1RFU1RfQ0hFQ0tfKCF0ZXN0X2Nhc2Vf
ZnAgfHwgIXRlc3Rfc3VpdGVfZnApCisgICAgICAgIDw8ICJUZXN0IGNhbiBub3QgcHJvdmlkZSBi
b3RoIFRlYXJEb3duVGVzdFN1aXRlIGFuZCBUZWFyRG93blRlc3RDYXNlLCIKKyAgICAgICAgICAg
IiBwbGVhc2UgbWFrZSBzdXJlIHRoZXJlIGlzIG9ubHkgb25lIHByZXNlbnQgYXQiCisgICAgICAg
IDw8IGZpbGVuYW1lIDw8ICI6IiA8PCBsaW5lX251bTsKKworICAgIHJldHVybiB0ZXN0X2Nhc2Vf
ZnAgIT0gbnVsbHB0ciA/IHRlc3RfY2FzZV9mcCA6IHRlc3Rfc3VpdGVfZnA7CisgIH0KK307CisK
IC8vIENyZWF0ZXMgYSBuZXcgVGVzdEluZm8gb2JqZWN0IGFuZCByZWdpc3RlcnMgaXQgd2l0aCBH
b29nbGUgVGVzdDsKIC8vIHJldHVybnMgdGhlIGNyZWF0ZWQgb2JqZWN0LgogLy8KIC8vIEFyZ3Vt
ZW50czoKIC8vCi0vLyAgIHRlc3RfY2FzZV9uYW1lOiAgIG5hbWUgb2YgdGhlIHRlc3QgY2FzZQor
Ly8gICB0ZXN0X3N1aXRlX25hbWU6ICAgbmFtZSBvZiB0aGUgdGVzdCBzdWl0ZQogLy8gICBuYW1l
OiAgICAgICAgICAgICBuYW1lIG9mIHRoZSB0ZXN0CiAvLyAgIHR5cGVfcGFyYW0gICAgICAgIHRo
ZSBuYW1lIG9mIHRoZSB0ZXN0J3MgdHlwZSBwYXJhbWV0ZXIsIG9yIE5VTEwgaWYKIC8vICAgICAg
ICAgICAgICAgICAgICAgdGhpcyBpcyBub3QgYSB0eXBlZCBvciBhIHR5cGUtcGFyYW1ldGVyaXpl
ZCB0ZXN0LgpAQCAtNTEwLDIxICs1NjAsMTYgQEAgc3RydWN0IENvZGVMb2NhdGlvbiB7CiAvLyAg
ICAgICAgICAgICAgICAgICAgIG9yIE5VTEwgaWYgdGhpcyBpcyBub3QgYSB0eXBlLXBhcmFtZXRl
cml6ZWQgdGVzdC4KIC8vICAgY29kZV9sb2NhdGlvbjogICAgY29kZSBsb2NhdGlvbiB3aGVyZSB0
aGUgdGVzdCBpcyBkZWZpbmVkCiAvLyAgIGZpeHR1cmVfY2xhc3NfaWQ6IElEIG9mIHRoZSB0ZXN0
IGZpeHR1cmUgY2xhc3MKLS8vICAgc2V0X3VwX3RjOiAgICAgICAgcG9pbnRlciB0byB0aGUgZnVu
Y3Rpb24gdGhhdCBzZXRzIHVwIHRoZSB0ZXN0IGNhc2UKLS8vICAgdGVhcl9kb3duX3RjOiAgICAg
cG9pbnRlciB0byB0aGUgZnVuY3Rpb24gdGhhdCB0ZWFycyBkb3duIHRoZSB0ZXN0IGNhc2UKKy8v
ICAgc2V0X3VwX3RjOiAgICAgICAgcG9pbnRlciB0byB0aGUgZnVuY3Rpb24gdGhhdCBzZXRzIHVw
IHRoZSB0ZXN0IHN1aXRlCisvLyAgIHRlYXJfZG93bl90YzogICAgIHBvaW50ZXIgdG8gdGhlIGZ1
bmN0aW9uIHRoYXQgdGVhcnMgZG93biB0aGUgdGVzdCBzdWl0ZQogLy8gICBmYWN0b3J5OiAgICAg
ICAgICBwb2ludGVyIHRvIHRoZSBmYWN0b3J5IHRoYXQgY3JlYXRlcyBhIHRlc3Qgb2JqZWN0Lgog
Ly8gICAgICAgICAgICAgICAgICAgICBUaGUgbmV3bHkgY3JlYXRlZCBUZXN0SW5mbyBpbnN0YW5j
ZSB3aWxsIGFzc3VtZQogLy8gICAgICAgICAgICAgICAgICAgICBvd25lcnNoaXAgb2YgdGhlIGZh
Y3Rvcnkgb2JqZWN0LgogR1RFU1RfQVBJXyBUZXN0SW5mbyogTWFrZUFuZFJlZ2lzdGVyVGVzdElu
Zm8oCi0gICAgY29uc3QgY2hhciogdGVzdF9jYXNlX25hbWUsCi0gICAgY29uc3QgY2hhciogbmFt
ZSwKLSAgICBjb25zdCBjaGFyKiB0eXBlX3BhcmFtLAotICAgIGNvbnN0IGNoYXIqIHZhbHVlX3Bh
cmFtLAotICAgIENvZGVMb2NhdGlvbiBjb2RlX2xvY2F0aW9uLAotICAgIFR5cGVJZCBmaXh0dXJl
X2NsYXNzX2lkLAotICAgIFNldFVwVGVzdENhc2VGdW5jIHNldF91cF90YywKLSAgICBUZWFyRG93
blRlc3RDYXNlRnVuYyB0ZWFyX2Rvd25fdGMsCi0gICAgVGVzdEZhY3RvcnlCYXNlKiBmYWN0b3J5
KTsKKyAgICBjb25zdCBjaGFyKiB0ZXN0X3N1aXRlX25hbWUsIGNvbnN0IGNoYXIqIG5hbWUsIGNv
bnN0IGNoYXIqIHR5cGVfcGFyYW0sCisgICAgY29uc3QgY2hhciogdmFsdWVfcGFyYW0sIENvZGVM
b2NhdGlvbiBjb2RlX2xvY2F0aW9uLAorICAgIFR5cGVJZCBmaXh0dXJlX2NsYXNzX2lkLCBTZXRV
cFRlc3RTdWl0ZUZ1bmMgc2V0X3VwX3RjLAorICAgIFRlYXJEb3duVGVzdFN1aXRlRnVuYyB0ZWFy
X2Rvd25fdGMsIFRlc3RGYWN0b3J5QmFzZSogZmFjdG9yeSk7CiAKIC8vIElmICpwc3RyIHN0YXJ0
cyB3aXRoIHRoZSBnaXZlbiBwcmVmaXgsIG1vZGlmaWVzICpwc3RyIHRvIGJlIHJpZ2h0CiAvLyBw
YXN0IHRoZSBwcmVmaXggYW5kIHJldHVybnMgdHJ1ZTsgb3RoZXJ3aXNlIGxlYXZlcyAqcHN0ciB1
bmNoYW5nZWQKQEAgLTUzNiwxOSArNTgxLDIwIEBAIEdURVNUX0FQSV8gYm9vbCBTa2lwUHJlZml4
KGNvbnN0IGNoYXIqIHByZWZpeCwgY29uc3QgY2hhcioqIHBzdHIpOwogR1RFU1RfRElTQUJMRV9N
U0NfV0FSTklOR1NfUFVTSF8oNDI1MSBcCiAvKiBjbGFzcyBBIG5lZWRzIHRvIGhhdmUgZGxsLWlu
dGVyZmFjZSB0byBiZSB1c2VkIGJ5IGNsaWVudHMgb2YgY2xhc3MgQiAqLykKIAotLy8gU3RhdGUg
b2YgdGhlIGRlZmluaXRpb24gb2YgYSB0eXBlLXBhcmFtZXRlcml6ZWQgdGVzdCBjYXNlLgotY2xh
c3MgR1RFU1RfQVBJXyBUeXBlZFRlc3RDYXNlUFN0YXRlIHsKKy8vIFN0YXRlIG9mIHRoZSBkZWZp
bml0aW9uIG9mIGEgdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3Qgc3VpdGUuCitjbGFzcyBHVEVTVF9B
UElfIFR5cGVkVGVzdFN1aXRlUFN0YXRlIHsKICBwdWJsaWM6Ci0gIFR5cGVkVGVzdENhc2VQU3Rh
dGUoKSA6IHJlZ2lzdGVyZWRfKGZhbHNlKSB7fQorICBUeXBlZFRlc3RTdWl0ZVBTdGF0ZSgpIDog
cmVnaXN0ZXJlZF8oZmFsc2UpIHt9CiAKICAgLy8gQWRkcyB0aGUgZ2l2ZW4gdGVzdCBuYW1lIHRv
IGRlZmluZWRfdGVzdF9uYW1lc18gYW5kIHJldHVybiB0cnVlCi0gIC8vIGlmIHRoZSB0ZXN0IGNh
c2UgaGFzbid0IGJlZW4gcmVnaXN0ZXJlZDsgb3RoZXJ3aXNlIGFib3J0cyB0aGUKKyAgLy8gaWYg
dGhlIHRlc3Qgc3VpdGUgaGFzbid0IGJlZW4gcmVnaXN0ZXJlZDsgb3RoZXJ3aXNlIGFib3J0cyB0
aGUKICAgLy8gcHJvZ3JhbS4KICAgYm9vbCBBZGRUZXN0TmFtZShjb25zdCBjaGFyKiBmaWxlLCBp
bnQgbGluZSwgY29uc3QgY2hhciogY2FzZV9uYW1lLAogICAgICAgICAgICAgICAgICAgIGNvbnN0
IGNoYXIqIHRlc3RfbmFtZSkgewogICAgIGlmIChyZWdpc3RlcmVkXykgewotICAgICAgZnByaW50
ZihzdGRlcnIsICIlcyBUZXN0ICVzIG11c3QgYmUgZGVmaW5lZCBiZWZvcmUgIgotICAgICAgICAg
ICAgICAiUkVHSVNURVJfVFlQRURfVEVTVF9DQVNFX1AoJXMsIC4uLikuXG4iLAorICAgICAgZnBy
aW50ZihzdGRlcnIsCisgICAgICAgICAgICAgICIlcyBUZXN0ICVzIG11c3QgYmUgZGVmaW5lZCBi
ZWZvcmUgIgorICAgICAgICAgICAgICAiUkVHSVNURVJfVFlQRURfVEVTVF9TVUlURV9QKCVzLCAu
Li4pLlxuIiwKICAgICAgICAgICAgICAgRm9ybWF0RmlsZUxvY2F0aW9uKGZpbGUsIGxpbmUpLmNf
c3RyKCksIHRlc3RfbmFtZSwgY2FzZV9uYW1lKTsKICAgICAgIGZmbHVzaChzdGRlcnIpOwogICAg
ICAgcG9zaXg6OkFib3J0KCk7CkBAIC01NzEsOCArNjE3LDkgQEAgY2xhc3MgR1RFU1RfQVBJXyBU
eXBlZFRlc3RDYXNlUFN0YXRlIHsKICAgLy8gVmVyaWZpZXMgdGhhdCByZWdpc3RlcmVkX3Rlc3Rz
IG1hdGNoIHRoZSB0ZXN0IG5hbWVzIGluCiAgIC8vIGRlZmluZWRfdGVzdF9uYW1lc187IHJldHVy
bnMgcmVnaXN0ZXJlZF90ZXN0cyBpZiBzdWNjZXNzZnVsLCBvcgogICAvLyBhYm9ydHMgdGhlIHBy
b2dyYW0gb3RoZXJ3aXNlLgotICBjb25zdCBjaGFyKiBWZXJpZnlSZWdpc3RlcmVkVGVzdE5hbWVz
KAotICAgICAgY29uc3QgY2hhciogZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIqIHJlZ2lzdGVy
ZWRfdGVzdHMpOworICBjb25zdCBjaGFyKiBWZXJpZnlSZWdpc3RlcmVkVGVzdE5hbWVzKGNvbnN0
IGNoYXIqIHRlc3Rfc3VpdGVfbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCBjaGFyKiBmaWxlLCBpbnQgbGluZSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyKiByZWdpc3RlcmVkX3Rlc3RzKTsKIAogIHBy
aXZhdGU6CiAgIHR5cGVkZWYgOjpzdGQ6Om1hcDxzdGQ6OnN0cmluZywgQ29kZUxvY2F0aW9uPiBS
ZWdpc3RlcmVkVGVzdHNNYXA7CkBAIC01ODEsMTQgKzYyOCwxOSBAQCBjbGFzcyBHVEVTVF9BUElf
IFR5cGVkVGVzdENhc2VQU3RhdGUgewogICBSZWdpc3RlcmVkVGVzdHNNYXAgcmVnaXN0ZXJlZF90
ZXN0c187CiB9OwogCisvLyAgTGVnYWN5IEFQSSBpcyBkZXByZWNhdGVkIGJ1dCBzdGlsbCBhdmFp
bGFibGUKKyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUElfCit1c2luZyBU
eXBlZFRlc3RDYXNlUFN0YXRlID0gVHlwZWRUZXN0U3VpdGVQU3RhdGU7CisjZW5kaWYgIC8vICBH
VEVTVF9SRU1PVkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KKwogR1RFU1RfRElTQUJMRV9NU0NfV0FS
TklOR1NfUE9QXygpICAvLyAgNDI1MQogCiAvLyBTa2lwcyB0byB0aGUgZmlyc3Qgbm9uLXNwYWNl
IGNoYXIgYWZ0ZXIgdGhlIGZpcnN0IGNvbW1hIGluICdzdHInOwogLy8gcmV0dXJucyBOVUxMIGlm
IG5vIGNvbW1hIGlzIGZvdW5kIGluICdzdHInLgogaW5saW5lIGNvbnN0IGNoYXIqIFNraXBDb21t
YShjb25zdCBjaGFyKiBzdHIpIHsKICAgY29uc3QgY2hhciogY29tbWEgPSBzdHJjaHIoc3RyLCAn
LCcpOwotICBpZiAoY29tbWEgPT0gTlVMTCkgewotICAgIHJldHVybiBOVUxMOworICBpZiAoY29t
bWEgPT0gbnVsbHB0cikgeworICAgIHJldHVybiBudWxscHRyOwogICB9CiAgIHdoaWxlIChJc1Nw
YWNlKCooKytjb21tYSkpKSB7fQogICByZXR1cm4gY29tbWE7CkBAIC01OTgsNyArNjUwLDcgQEAg
aW5saW5lIGNvbnN0IGNoYXIqIFNraXBDb21tYShjb25zdCBjaGFyKiBzdHIpIHsKIC8vIHRoZSBl
bnRpcmUgc3RyaW5nIGlmIGl0IGNvbnRhaW5zIG5vIGNvbW1hLgogaW5saW5lIHN0ZDo6c3RyaW5n
IEdldFByZWZpeFVudGlsQ29tbWEoY29uc3QgY2hhciogc3RyKSB7CiAgIGNvbnN0IGNoYXIqIGNv
bW1hID0gc3RyY2hyKHN0ciwgJywnKTsKLSAgcmV0dXJuIGNvbW1hID09IE5VTEwgPyBzdHIgOiBz
dGQ6OnN0cmluZyhzdHIsIGNvbW1hKTsKKyAgcmV0dXJuIGNvbW1hID09IG51bGxwdHIgPyBzdHIg
OiBzdGQ6OnN0cmluZyhzdHIsIGNvbW1hKTsKIH0KIAogLy8gU3BsaXRzIGEgZ2l2ZW4gc3RyaW5n
IG9uIGEgZ2l2ZW4gZGVsaW1pdGVyLCBwb3B1bGF0aW5nIGEgZ2l2ZW4KQEAgLTYyMSw3ICs2NzMs
NyBAQCBzdHJ1Y3QgTmFtZUdlbmVyYXRvclNlbGVjdG9yIHsKIH07CiAKIHRlbXBsYXRlIDx0eXBl
bmFtZSBOYW1lR2VuZXJhdG9yPgotdm9pZCBHZW5lcmF0ZU5hbWVzUmVjdXJzaXZlbHkoVHlwZXMw
LCBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4qLCBpbnQpIHt9Cit2b2lkIEdlbmVyYXRlTmFtZXNS
ZWN1cnNpdmVseShpbnRlcm5hbDo6Tm9uZSwgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+KiwgaW50
KSB7fQogCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgTmFtZUdlbmVyYXRvciwgdHlwZW5hbWUgVHlwZXM+
CiB2b2lkIEdlbmVyYXRlTmFtZXNSZWN1cnNpdmVseShUeXBlcywgc3RkOjp2ZWN0b3I8c3RkOjpz
dHJpbmc+KiByZXN1bHQsIGludCBpKSB7CkBAIC02NDgsNyArNzAwLDcgQEAgdGVtcGxhdGUgPEdU
RVNUX1RFTVBMQVRFXyBGaXh0dXJlLCBjbGFzcyBUZXN0U2VsLCB0eXBlbmFtZSBUeXBlcz4KIGNs
YXNzIFR5cGVQYXJhbWV0ZXJpemVkVGVzdCB7CiAgcHVibGljOgogICAvLyAnaW5kZXgnIGlzIHRo
ZSBpbmRleCBvZiB0aGUgdGVzdCBpbiB0aGUgdHlwZSBsaXN0ICdUeXBlcycKLSAgLy8gc3BlY2lm
aWVkIGluIElOU1RBTlRJQVRFX1RZUEVEX1RFU1RfQ0FTRV9QKFByZWZpeCwgVGVzdENhc2UsCisg
IC8vIHNwZWNpZmllZCBpbiBJTlNUQU5USUFURV9UWVBFRF9URVNUX1NVSVRFX1AoUHJlZml4LCBU
ZXN0U3VpdGUsCiAgIC8vIFR5cGVzKS4gIFZhbGlkIHZhbHVlcyBmb3IgJ2luZGV4JyBhcmUgWzAs
IE4gLSAxXSB3aGVyZSBOIGlzIHRoZQogICAvLyBsZW5ndGggb2YgVHlwZXMuCiAgIHN0YXRpYyBi
b29sIFJlZ2lzdGVyKGNvbnN0IGNoYXIqIHByZWZpeCwgY29uc3QgQ29kZUxvY2F0aW9uJiBjb2Rl
X2xvY2F0aW9uLApAQCAtNjYzLDEzICs3MTUsMTcgQEAgY2xhc3MgVHlwZVBhcmFtZXRlcml6ZWRU
ZXN0IHsKICAgICAvLyBsaXN0LgogICAgIE1ha2VBbmRSZWdpc3RlclRlc3RJbmZvKAogICAgICAg
ICAoc3RkOjpzdHJpbmcocHJlZml4KSArIChwcmVmaXhbMF0gPT0gJ1wwJyA/ICIiIDogIi8iKSAr
IGNhc2VfbmFtZSArCi0gICAgICAgICAiLyIgKyB0eXBlX25hbWVzW2luZGV4XSkKKyAgICAgICAg
ICIvIiArIHR5cGVfbmFtZXNbc3RhdGljX2Nhc3Q8c2l6ZV90PihpbmRleCldKQogICAgICAgICAg
ICAgLmNfc3RyKCksCiAgICAgICAgIFN0cmlwVHJhaWxpbmdTcGFjZXMoR2V0UHJlZml4VW50aWxD
b21tYSh0ZXN0X25hbWVzKSkuY19zdHIoKSwKICAgICAgICAgR2V0VHlwZU5hbWU8VHlwZT4oKS5j
X3N0cigpLAotICAgICAgICBOVUxMLCAgLy8gTm8gdmFsdWUgcGFyYW1ldGVyLgotICAgICAgICBj
b2RlX2xvY2F0aW9uLCBHZXRUeXBlSWQ8Rml4dHVyZUNsYXNzPigpLCBUZXN0Q2xhc3M6OlNldFVw
VGVzdENhc2UsCi0gICAgICAgIFRlc3RDbGFzczo6VGVhckRvd25UZXN0Q2FzZSwgbmV3IFRlc3RG
YWN0b3J5SW1wbDxUZXN0Q2xhc3M+KTsKKyAgICAgICAgbnVsbHB0ciwgIC8vIE5vIHZhbHVlIHBh
cmFtZXRlci4KKyAgICAgICAgY29kZV9sb2NhdGlvbiwgR2V0VHlwZUlkPEZpeHR1cmVDbGFzcz4o
KSwKKyAgICAgICAgU3VpdGVBcGlSZXNvbHZlcjxUZXN0Q2xhc3M+OjpHZXRTZXRVcENhc2VPclN1
aXRlKAorICAgICAgICAgICAgY29kZV9sb2NhdGlvbi5maWxlLmNfc3RyKCksIGNvZGVfbG9jYXRp
b24ubGluZSksCisgICAgICAgIFN1aXRlQXBpUmVzb2x2ZXI8VGVzdENsYXNzPjo6R2V0VGVhckRv
d25DYXNlT3JTdWl0ZSgKKyAgICAgICAgICAgIGNvZGVfbG9jYXRpb24uZmlsZS5jX3N0cigpLCBj
b2RlX2xvY2F0aW9uLmxpbmUpLAorICAgICAgICBuZXcgVGVzdEZhY3RvcnlJbXBsPFRlc3RDbGFz
cz4pOwogCiAgICAgLy8gTmV4dCwgcmVjdXJzZXMgKGF0IGNvbXBpbGUgdGltZSkgd2l0aCB0aGUg
dGFpbCBvZiB0aGUgdHlwZSBsaXN0LgogICAgIHJldHVybiBUeXBlUGFyYW1ldGVyaXplZFRlc3Q8
Rml4dHVyZSwgVGVzdFNlbCwKQEAgLTY4NCw3ICs3NDAsNyBAQCBjbGFzcyBUeXBlUGFyYW1ldGVy
aXplZFRlc3QgewogCiAvLyBUaGUgYmFzZSBjYXNlIGZvciB0aGUgY29tcGlsZSB0aW1lIHJlY3Vy
c2lvbi4KIHRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gRml4dHVyZSwgY2xhc3MgVGVzdFNlbD4K
LWNsYXNzIFR5cGVQYXJhbWV0ZXJpemVkVGVzdDxGaXh0dXJlLCBUZXN0U2VsLCBUeXBlczA+IHsK
K2NsYXNzIFR5cGVQYXJhbWV0ZXJpemVkVGVzdDxGaXh0dXJlLCBUZXN0U2VsLCBpbnRlcm5hbDo6
Tm9uZT4gewogIHB1YmxpYzoKICAgc3RhdGljIGJvb2wgUmVnaXN0ZXIoY29uc3QgY2hhciogLypw
cmVmaXgqLywgY29uc3QgQ29kZUxvY2F0aW9uJiwKICAgICAgICAgICAgICAgICAgICAgICAgY29u
c3QgY2hhciogLypjYXNlX25hbWUqLywgY29uc3QgY2hhciogLyp0ZXN0X25hbWVzKi8sCkBAIC02
OTUsMTggKzc1MSwyNCBAQCBjbGFzcyBUeXBlUGFyYW1ldGVyaXplZFRlc3Q8Rml4dHVyZSwgVGVz
dFNlbCwgVHlwZXMwPiB7CiAgIH0KIH07CiAKLS8vIFR5cGVQYXJhbWV0ZXJpemVkVGVzdENhc2U8
Rml4dHVyZSwgVGVzdHMsIFR5cGVzPjo6UmVnaXN0ZXIoKQorR1RFU1RfQVBJXyB2b2lkIFJlZ2lz
dGVyVHlwZVBhcmFtZXRlcml6ZWRUZXN0U3VpdGUoY29uc3QgY2hhciogdGVzdF9zdWl0ZV9uYW1l
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29k
ZUxvY2F0aW9uIGNvZGVfbG9jYXRpb24pOworR1RFU1RfQVBJXyB2b2lkIFJlZ2lzdGVyVHlwZVBh
cmFtZXRlcml6ZWRUZXN0U3VpdGVJbnN0YW50aWF0aW9uKAorICAgIGNvbnN0IGNoYXIqIGNhc2Vf
bmFtZSk7CisKKy8vIFR5cGVQYXJhbWV0ZXJpemVkVGVzdFN1aXRlPEZpeHR1cmUsIFRlc3RzLCBU
eXBlcz46OlJlZ2lzdGVyKCkKIC8vIHJlZ2lzdGVycyAqYWxsIGNvbWJpbmF0aW9ucyogb2YgJ1Rl
c3RzJyBhbmQgJ1R5cGVzJyB3aXRoIEdvb2dsZQogLy8gVGVzdC4gIFRoZSByZXR1cm4gdmFsdWUg
aXMgaW5zaWduaWZpY2FudCAtIHdlIGp1c3QgbmVlZCB0byByZXR1cm4KIC8vIHNvbWV0aGluZyBz
dWNoIHRoYXQgd2UgY2FuIGNhbGwgdGhpcyBmdW5jdGlvbiBpbiBhIG5hbWVzcGFjZSBzY29wZS4K
IHRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gRml4dHVyZSwgdHlwZW5hbWUgVGVzdHMsIHR5cGVu
YW1lIFR5cGVzPgotY2xhc3MgVHlwZVBhcmFtZXRlcml6ZWRUZXN0Q2FzZSB7CitjbGFzcyBUeXBl
UGFyYW1ldGVyaXplZFRlc3RTdWl0ZSB7CiAgcHVibGljOgogICBzdGF0aWMgYm9vbCBSZWdpc3Rl
cihjb25zdCBjaGFyKiBwcmVmaXgsIENvZGVMb2NhdGlvbiBjb2RlX2xvY2F0aW9uLAotICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBUeXBlZFRlc3RDYXNlUFN0YXRlKiBzdGF0ZSwgY29uc3Qg
Y2hhciogY2FzZV9uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBUeXBlZFRlc3RT
dWl0ZVBTdGF0ZSogc3RhdGUsIGNvbnN0IGNoYXIqIGNhc2VfbmFtZSwKICAgICAgICAgICAgICAg
ICAgICAgICAgY29uc3QgY2hhciogdGVzdF9uYW1lcywKICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3Qgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+JiB0eXBlX25hbWVzID0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEdlbmVyYXRlTmFtZXM8RGVmYXVsdE5hbWVHZW5lcmF0b3IsIFR5cGVz
PigpKSB7CisgICAgUmVnaXN0ZXJUeXBlUGFyYW1ldGVyaXplZFRlc3RTdWl0ZUluc3RhbnRpYXRp
b24oY2FzZV9uYW1lKTsKICAgICBzdGQ6OnN0cmluZyB0ZXN0X25hbWUgPSBTdHJpcFRyYWlsaW5n
U3BhY2VzKAogICAgICAgICBHZXRQcmVmaXhVbnRpbENvbW1hKHRlc3RfbmFtZXMpKTsKICAgICBp
ZiAoIXN0YXRlLT5UZXN0RXhpc3RzKHRlc3RfbmFtZSkpIHsKQEAgLTcyNiwyMCArNzg4LDIwIEBA
IGNsYXNzIFR5cGVQYXJhbWV0ZXJpemVkVGVzdENhc2UgewogICAgICAgICBwcmVmaXgsIHRlc3Rf
bG9jYXRpb24sIGNhc2VfbmFtZSwgdGVzdF9uYW1lcywgMCwgdHlwZV9uYW1lcyk7CiAKICAgICAv
LyBOZXh0LCByZWN1cnNlcyAoYXQgY29tcGlsZSB0aW1lKSB3aXRoIHRoZSB0YWlsIG9mIHRoZSB0
ZXN0IGxpc3QuCi0gICAgcmV0dXJuIFR5cGVQYXJhbWV0ZXJpemVkVGVzdENhc2U8Rml4dHVyZSwg
dHlwZW5hbWUgVGVzdHM6OlRhaWwsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgVHlwZXM+OjpSZWdpc3RlcihwcmVmaXgsIGNvZGVfbG9jYXRpb24sCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZSwgY2FzZV9uYW1l
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
U2tpcENvbW1hKHRlc3RfbmFtZXMpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdHlwZV9uYW1lcyk7CisgICAgcmV0dXJuIFR5cGVQYXJhbWV0
ZXJpemVkVGVzdFN1aXRlPEZpeHR1cmUsIHR5cGVuYW1lIFRlc3RzOjpUYWlsLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUeXBlcz46OlJlZ2lzdGVyKHByZWZpeCwgY29k
ZV9sb2NhdGlvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzdGF0ZSwgY2FzZV9uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNraXBDb21tYSh0ZXN0X25hbWVzKSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX25h
bWVzKTsKICAgfQogfTsKIAogLy8gVGhlIGJhc2UgY2FzZSBmb3IgdGhlIGNvbXBpbGUgdGltZSBy
ZWN1cnNpb24uCiB0ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIEZpeHR1cmUsIHR5cGVuYW1lIFR5
cGVzPgotY2xhc3MgVHlwZVBhcmFtZXRlcml6ZWRUZXN0Q2FzZTxGaXh0dXJlLCBUZW1wbGF0ZXMw
LCBUeXBlcz4geworY2xhc3MgVHlwZVBhcmFtZXRlcml6ZWRUZXN0U3VpdGU8Rml4dHVyZSwgaW50
ZXJuYWw6Ok5vbmUsIFR5cGVzPiB7CiAgcHVibGljOgogICBzdGF0aWMgYm9vbCBSZWdpc3Rlcihj
b25zdCBjaGFyKiAvKnByZWZpeCovLCBjb25zdCBDb2RlTG9jYXRpb24mLAotICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBUeXBlZFRlc3RDYXNlUFN0YXRlKiAvKnN0YXRlKi8sCisgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IFR5cGVkVGVzdFN1aXRlUFN0YXRlKiAvKnN0YXRlKi8sCiAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIC8qY2FzZV9uYW1lKi8sIGNvbnN0IGNo
YXIqIC8qdGVzdF9uYW1lcyovLAogICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6OnZl
Y3RvcjxzdGQ6OnN0cmluZz4mID0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZDo6dmVj
dG9yPHN0ZDo6c3RyaW5nPigpIC8qdHlwZV9uYW1lcyovKSB7CkBAIC03ODAsNiArODQyLDE2IEBA
IHN0cnVjdCBHVEVTVF9BUElfIENvbnN0Q2hhclB0ciB7CiAgIGNvbnN0IGNoYXIqIHZhbHVlOwog
fTsKIAorLy8gSGVscGVyIGZvciBkZWNsYXJpbmcgc3RkOjpzdHJpbmcgd2l0aGluICdpZicgc3Rh
dGVtZW50CisvLyBpbiBwcmUgQysrMTcgYnVpbGQgZW52aXJvbm1lbnQuCitzdHJ1Y3QgVHJ1ZVdp
dGhTdHJpbmcgeworICBUcnVlV2l0aFN0cmluZygpID0gZGVmYXVsdDsKKyAgZXhwbGljaXQgVHJ1
ZVdpdGhTdHJpbmcoY29uc3QgY2hhciogc3RyKSA6IHZhbHVlKHN0cikge30KKyAgZXhwbGljaXQg
VHJ1ZVdpdGhTdHJpbmcoY29uc3Qgc3RkOjpzdHJpbmcmIHN0cikgOiB2YWx1ZShzdHIpIHt9Cisg
IGV4cGxpY2l0IG9wZXJhdG9yIGJvb2woKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CisgIHN0ZDo6
c3RyaW5nIHZhbHVlOworfTsKKwogLy8gQSBzaW1wbGUgTGluZWFyIENvbmdydWVudGlhbCBHZW5l
cmF0b3IgZm9yIGdlbmVyYXRpbmcgcmFuZG9tCiAvLyBudW1iZXJzIHdpdGggYSB1bmlmb3JtIGRp
c3RyaWJ1dGlvbi4gIFVubGlrZSByYW5kKCkgYW5kIHNyYW5kKCksIGl0CiAvLyBkb2Vzbid0IHVz
ZSBnbG9iYWwgc3RhdGUgKGFuZCB0aGVyZWZvcmUgY2FuJ3QgaW50ZXJmZXJlIHdpdGggdXNlcgpA
QCAtNzg3LDEzNSArODU5LDMwIEBAIHN0cnVjdCBHVEVTVF9BUElfIENvbnN0Q2hhclB0ciB7CiAv
LyBidXQgaXQncyBnb29kIGVub3VnaCBmb3Igb3VyIHB1cnBvc2VzLgogY2xhc3MgR1RFU1RfQVBJ
XyBSYW5kb20gewogIHB1YmxpYzoKLSAgc3RhdGljIGNvbnN0IFVJbnQzMiBrTWF4UmFuZ2UgPSAx
dSA8PCAzMTsKKyAgc3RhdGljIGNvbnN0IHVpbnQzMl90IGtNYXhSYW5nZSA9IDF1IDw8IDMxOwog
Ci0gIGV4cGxpY2l0IFJhbmRvbShVSW50MzIgc2VlZCkgOiBzdGF0ZV8oc2VlZCkge30KKyAgZXhw
bGljaXQgUmFuZG9tKHVpbnQzMl90IHNlZWQpIDogc3RhdGVfKHNlZWQpIHt9CiAKLSAgdm9pZCBS
ZXNlZWQoVUludDMyIHNlZWQpIHsgc3RhdGVfID0gc2VlZDsgfQorICB2b2lkIFJlc2VlZCh1aW50
MzJfdCBzZWVkKSB7IHN0YXRlXyA9IHNlZWQ7IH0KIAogICAvLyBHZW5lcmF0ZXMgYSByYW5kb20g
bnVtYmVyIGZyb20gWzAsIHJhbmdlKS4gIENyYXNoZXMgaWYgJ3JhbmdlJyBpcwogICAvLyAwIG9y
IGdyZWF0ZXIgdGhhbiBrTWF4UmFuZ2UuCi0gIFVJbnQzMiBHZW5lcmF0ZShVSW50MzIgcmFuZ2Up
OworICB1aW50MzJfdCBHZW5lcmF0ZSh1aW50MzJfdCByYW5nZSk7CiAKICBwcml2YXRlOgotICBV
SW50MzIgc3RhdGVfOworICB1aW50MzJfdCBzdGF0ZV87CiAgIEdURVNUX0RJU0FMTE9XX0NPUFlf
QU5EX0FTU0lHTl8oUmFuZG9tKTsKIH07CiAKLS8vIERlZmluaW5nIGEgdmFyaWFibGUgb2YgdHlw
ZSBDb21waWxlQXNzZXJ0VHlwZXNFcXVhbDxUMSwgVDI+IHdpbGwgY2F1c2UgYQotLy8gY29tcGls
ZXIgZXJyb3IgaWZmIFQxIGFuZCBUMiBhcmUgZGlmZmVyZW50IHR5cGVzLgotdGVtcGxhdGUgPHR5
cGVuYW1lIFQxLCB0eXBlbmFtZSBUMj4KLXN0cnVjdCBDb21waWxlQXNzZXJ0VHlwZXNFcXVhbDsK
LQotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1zdHJ1Y3QgQ29tcGlsZUFzc2VydFR5cGVzRXF1YWw8
VCwgVD4gewotfTsKLQotLy8gUmVtb3ZlcyB0aGUgcmVmZXJlbmNlIGZyb20gYSB0eXBlIGlmIGl0
IGlzIGEgcmVmZXJlbmNlIHR5cGUsCi0vLyBvdGhlcndpc2UgbGVhdmVzIGl0IHVuY2hhbmdlZC4g
IFRoaXMgaXMgdGhlIHNhbWUgYXMKLS8vIHRyMTo6cmVtb3ZlX3JlZmVyZW5jZSwgd2hpY2ggaXMg
bm90IHdpZGVseSBhdmFpbGFibGUgeWV0LgotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1zdHJ1Y3Qg
UmVtb3ZlUmVmZXJlbmNlIHsgdHlwZWRlZiBUIHR5cGU7IH07ICAvLyBOT0xJTlQKLXRlbXBsYXRl
IDx0eXBlbmFtZSBUPgotc3RydWN0IFJlbW92ZVJlZmVyZW5jZTxUJj4geyB0eXBlZGVmIFQgdHlw
ZTsgfTsgIC8vIE5PTElOVAotCi0vLyBBIGhhbmR5IHdyYXBwZXIgYXJvdW5kIFJlbW92ZVJlZmVy
ZW5jZSB0aGF0IHdvcmtzIHdoZW4gdGhlIGFyZ3VtZW50Ci0vLyBUIGRlcGVuZHMgb24gdGVtcGxh
dGUgcGFyYW1ldGVycy4KLSNkZWZpbmUgR1RFU1RfUkVNT1ZFX1JFRkVSRU5DRV8oVCkgXAotICAg
IHR5cGVuYW1lIDo6dGVzdGluZzo6aW50ZXJuYWw6OlJlbW92ZVJlZmVyZW5jZTxUPjo6dHlwZQot
Ci0vLyBSZW1vdmVzIGNvbnN0IGZyb20gYSB0eXBlIGlmIGl0IGlzIGEgY29uc3QgdHlwZSwgb3Ro
ZXJ3aXNlIGxlYXZlcwotLy8gaXQgdW5jaGFuZ2VkLiAgVGhpcyBpcyB0aGUgc2FtZSBhcyB0cjE6
OnJlbW92ZV9jb25zdCwgd2hpY2ggaXMgbm90Ci0vLyB3aWRlbHkgYXZhaWxhYmxlIHlldC4KLXRl
bXBsYXRlIDx0eXBlbmFtZSBUPgotc3RydWN0IFJlbW92ZUNvbnN0IHsgdHlwZWRlZiBUIHR5cGU7
IH07ICAvLyBOT0xJTlQKLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotc3RydWN0IFJlbW92ZUNvbnN0
PGNvbnN0IFQ+IHsgdHlwZWRlZiBUIHR5cGU7IH07ICAvLyBOT0xJTlQKLQotLy8gTVNWQyA4LjAs
IFN1biBDKyssIGFuZCBJQk0gWEwgQysrIGhhdmUgYSBidWcgd2hpY2ggY2F1c2VzIHRoZSBhYm92
ZQotLy8gZGVmaW5pdGlvbiB0byBmYWlsIHRvIHJlbW92ZSB0aGUgY29uc3QgaW4gJ2NvbnN0IGlu
dFszXScgYW5kICdjb25zdAotLy8gY2hhclszXVs0XScuICBUaGUgZm9sbG93aW5nIHNwZWNpYWxp
emF0aW9uIHdvcmtzIGFyb3VuZCB0aGUgYnVnLgotdGVtcGxhdGUgPHR5cGVuYW1lIFQsIHNpemVf
dCBOPgotc3RydWN0IFJlbW92ZUNvbnN0PGNvbnN0IFRbTl0+IHsKLSAgdHlwZWRlZiB0eXBlbmFt
ZSBSZW1vdmVDb25zdDxUPjo6dHlwZSB0eXBlW05dOwotfTsKLQotI2lmIGRlZmluZWQoX01TQ19W
RVIpICYmIF9NU0NfVkVSIDwgMTQwMAotLy8gVGhpcyBpcyB0aGUgb25seSBzcGVjaWFsaXphdGlv
biB0aGF0IGFsbG93cyBWQysrIDcuMSB0byByZW1vdmUgY29uc3QgaW4KLS8vICdjb25zdCBpbnRb
M10gYW5kICdjb25zdCBpbnRbM11bNF0nLiAgSG93ZXZlciwgaXQgY2F1c2VzIHRyb3VibGUgd2l0
aCBHQ0MKLS8vIGFuZCB0aHVzIG5lZWRzIHRvIGJlIGNvbmRpdGlvbmFsbHkgY29tcGlsZWQuCi10
ZW1wbGF0ZSA8dHlwZW5hbWUgVCwgc2l6ZV90IE4+Ci1zdHJ1Y3QgUmVtb3ZlQ29uc3Q8VFtOXT4g
ewotICB0eXBlZGVmIHR5cGVuYW1lIFJlbW92ZUNvbnN0PFQ+Ojp0eXBlIHR5cGVbTl07Ci19Owot
I2VuZGlmCi0KLS8vIEEgaGFuZHkgd3JhcHBlciBhcm91bmQgUmVtb3ZlQ29uc3QgdGhhdCB3b3Jr
cyB3aGVuIHRoZSBhcmd1bWVudAotLy8gVCBkZXBlbmRzIG9uIHRlbXBsYXRlIHBhcmFtZXRlcnMu
Ci0jZGVmaW5lIEdURVNUX1JFTU9WRV9DT05TVF8oVCkgXAotICAgIHR5cGVuYW1lIDo6dGVzdGlu
Zzo6aW50ZXJuYWw6OlJlbW92ZUNvbnN0PFQ+Ojp0eXBlCi0KIC8vIFR1cm5zIGNvbnN0IFUmLCBV
JiwgY29uc3QgVSwgYW5kIFUgYWxsIGludG8gVS4KICNkZWZpbmUgR1RFU1RfUkVNT1ZFX1JFRkVS
RU5DRV9BTkRfQ09OU1RfKFQpIFwKLSAgICBHVEVTVF9SRU1PVkVfQ09OU1RfKEdURVNUX1JFTU9W
RV9SRUZFUkVOQ0VfKFQpKQotCi0vLyBJbXBsaWNpdGx5Q29udmVydGlibGU8RnJvbSwgVG8+Ojp2
YWx1ZSBpcyBhIGNvbXBpbGUtdGltZSBib29sCi0vLyBjb25zdGFudCB0aGF0J3MgdHJ1ZSBpZmYg
dHlwZSBGcm9tIGNhbiBiZSBpbXBsaWNpdGx5IGNvbnZlcnRlZCB0bwotLy8gdHlwZSBUby4KLXRl
bXBsYXRlIDx0eXBlbmFtZSBGcm9tLCB0eXBlbmFtZSBUbz4KLWNsYXNzIEltcGxpY2l0bHlDb252
ZXJ0aWJsZSB7Ci0gcHJpdmF0ZToKLSAgLy8gV2UgbmVlZCB0aGUgZm9sbG93aW5nIGhlbHBlciBm
dW5jdGlvbnMgb25seSBmb3IgdGhlaXIgdHlwZXMuCi0gIC8vIFRoZXkgaGF2ZSBubyBpbXBsZW1l
bnRhdGlvbnMuCi0KLSAgLy8gTWFrZUZyb20oKSBpcyBhbiBleHByZXNzaW9uIHdob3NlIHR5cGUg
aXMgRnJvbS4gIFdlIGNhbm5vdCBzaW1wbHkKLSAgLy8gdXNlIEZyb20oKSwgYXMgdGhlIHR5cGUg
RnJvbSBtYXkgbm90IGhhdmUgYSBwdWJsaWMgZGVmYXVsdAotICAvLyBjb25zdHJ1Y3Rvci4KLSAg
c3RhdGljIHR5cGVuYW1lIEFkZFJlZmVyZW5jZTxGcm9tPjo6dHlwZSBNYWtlRnJvbSgpOwotCi0g
IC8vIFRoZXNlIHR3byBmdW5jdGlvbnMgYXJlIG92ZXJsb2FkZWQuICBHaXZlbiBhbiBleHByZXNz
aW9uCi0gIC8vIEhlbHBlcih4KSwgdGhlIGNvbXBpbGVyIHdpbGwgcGljayB0aGUgZmlyc3QgdmVy
c2lvbiBpZiB4IGNhbiBiZQotICAvLyBpbXBsaWNpdGx5IGNvbnZlcnRlZCB0byB0eXBlIFRvOyBv
dGhlcndpc2UgaXQgd2lsbCBwaWNrIHRoZQotICAvLyBzZWNvbmQgdmVyc2lvbi4KLSAgLy8KLSAg
Ly8gVGhlIGZpcnN0IHZlcnNpb24gcmV0dXJucyBhIHZhbHVlIG9mIHNpemUgMSwgYW5kIHRoZSBz
ZWNvbmQKLSAgLy8gdmVyc2lvbiByZXR1cm5zIGEgdmFsdWUgb2Ygc2l6ZSAyLiAgVGhlcmVmb3Jl
LCBieSBjaGVja2luZyB0aGUKLSAgLy8gc2l6ZSBvZiBIZWxwZXIoeCksIHdoaWNoIGNhbiBiZSBk
b25lIGF0IGNvbXBpbGUgdGltZSwgd2UgY2FuIHRlbGwKLSAgLy8gd2hpY2ggdmVyc2lvbiBvZiBI
ZWxwZXIoKSBpcyB1c2VkLCBhbmQgaGVuY2Ugd2hldGhlciB4IGNhbiBiZQotICAvLyBpbXBsaWNp
dGx5IGNvbnZlcnRlZCB0byB0eXBlIFRvLgotICBzdGF0aWMgY2hhciBIZWxwZXIoVG8pOwotICBz
dGF0aWMgY2hhciAoJkhlbHBlciguLi4pKVsyXTsgIC8vIE5PTElOVAotCi0gIC8vIFdlIGhhdmUg
dG8gcHV0IHRoZSAncHVibGljJyBzZWN0aW9uIGFmdGVyIHRoZSAncHJpdmF0ZScgc2VjdGlvbiwK
LSAgLy8gb3IgTVNWQyByZWZ1c2VzIHRvIGNvbXBpbGUgdGhlIGNvZGUuCi0gcHVibGljOgotI2lm
IGRlZmluZWQoX19CT1JMQU5EQ19fKQotICAvLyBDKytCdWlsZGVyIGNhbm5vdCB1c2UgbWVtYmVy
IG92ZXJsb2FkIHJlc29sdXRpb24gZHVyaW5nIHRlbXBsYXRlCi0gIC8vIGluc3RhbnRpYXRpb24u
ICBUaGUgc2ltcGxlc3Qgd29ya2Fyb3VuZCBpcyB0byB1c2UgaXRzIEMrKzB4IHR5cGUgdHJhaXRz
Ci0gIC8vIGZ1bmN0aW9ucyAoQysrQnVpbGRlciAyMDA5IGFuZCBhYm92ZSBvbmx5KS4KLSAgc3Rh
dGljIGNvbnN0IGJvb2wgdmFsdWUgPSBfX2lzX2NvbnZlcnRpYmxlKEZyb20sIFRvKTsKLSNlbHNl
Ci0gIC8vIE1TVkMgd2FybnMgYWJvdXQgaW1wbGljaXRseSBjb252ZXJ0aW5nIGZyb20gZG91Ymxl
IHRvIGludCBmb3IKLSAgLy8gcG9zc2libGUgbG9zcyBvZiBkYXRhLCBzbyB3ZSBuZWVkIHRvIHRl
bXBvcmFyaWx5IGRpc2FibGUgdGhlCi0gIC8vIHdhcm5pbmcuCi0gIEdURVNUX0RJU0FCTEVfTVND
X1dBUk5JTkdTX1BVU0hfKDQyNDQpCi0gIHN0YXRpYyBjb25zdCBib29sIHZhbHVlID0KLSAgICAg
IHNpemVvZihIZWxwZXIoSW1wbGljaXRseUNvbnZlcnRpYmxlOjpNYWtlRnJvbSgpKSkgPT0gMTsK
LSAgR1RFU1RfRElTQUJMRV9NU0NfV0FSTklOR1NfUE9QXygpCi0jZW5kaWYgIC8vIF9fQk9STEFO
RENfXwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBGcm9tLCB0eXBlbmFtZSBUbz4KLWNvbnN0IGJv
b2wgSW1wbGljaXRseUNvbnZlcnRpYmxlPEZyb20sIFRvPjo6dmFsdWU7CisgIHR5cGVuYW1lIHN0
ZDo6cmVtb3ZlX2NvbnN0PHR5cGVuYW1lIHN0ZDo6cmVtb3ZlX3JlZmVyZW5jZTxUPjo6dHlwZT46
OnR5cGUKIAogLy8gSXNBUHJvdG9jb2xNZXNzYWdlPFQ+Ojp2YWx1ZSBpcyBhIGNvbXBpbGUtdGlt
ZSBib29sIGNvbnN0YW50IHRoYXQncwotLy8gdHJ1ZSBpZmYgVCBpcyB0eXBlIFByb3RvY29sTWVz
c2FnZSwgcHJvdG8yOjpNZXNzYWdlLCBvciBhIHN1YmNsYXNzCi0vLyBvZiB0aG9zZS4KKy8vIHRy
dWUgaWYgYW5kIG9ubHkgaWYgVCBpcyB0eXBlIHByb3RvMjo6TWVzc2FnZSBvciBhIHN1YmNsYXNz
IG9mIGl0LgogdGVtcGxhdGUgPHR5cGVuYW1lIFQ+CiBzdHJ1Y3QgSXNBUHJvdG9jb2xNZXNzYWdl
Ci0gICAgOiBwdWJsaWMgYm9vbF9jb25zdGFudDwKLSAgSW1wbGljaXRseUNvbnZlcnRpYmxlPGNv
bnN0IFQqLCBjb25zdCA6OlByb3RvY29sTWVzc2FnZSo+Ojp2YWx1ZSB8fAotICBJbXBsaWNpdGx5
Q29udmVydGlibGU8Y29uc3QgVCosIGNvbnN0IDo6cHJvdG8yOjpNZXNzYWdlKj46OnZhbHVlPiB7
Ci19OworICAgIDogcHVibGljIHN0ZDo6aXNfY29udmVydGlibGU8Y29uc3QgVCosIGNvbnN0IDo6
cHJvdG8yOjpNZXNzYWdlKj4ge307CiAKIC8vIFdoZW4gdGhlIGNvbXBpbGVyIHNlZXMgZXhwcmVz
c2lvbiBJc0NvbnRhaW5lclRlc3Q8Qz4oMCksIGlmIEMgaXMgYW4KIC8vIFNUTC1zdHlsZSBjb250
YWluZXIgY2xhc3MsIHRoZSBmaXJzdCBvdmVybG9hZCBvZiBJc0NvbnRhaW5lclRlc3QKQEAgLTk0
Miw3ICs5MDksNiBAQCBzdHJ1Y3QgSXNBUHJvdG9jb2xNZXNzYWdlCiAvLyBJc0NvbnRhaW5lclRl
c3QodHlwZW5hbWUgQzo6Y29uc3RfaXRlcmF0b3IqKSBhbmQKIC8vIElzQ29udGFpbmVyVGVzdCgu
Li4pIGRvZXNuJ3Qgd29yayB3aXRoIFZpc3VhbCBBZ2UgQysrIGFuZCBTdW4gQysrLgogdHlwZWRl
ZiBpbnQgSXNDb250YWluZXI7Ci0jaWYgR1RFU1RfTEFOR19DWFgxMQogdGVtcGxhdGUgPGNsYXNz
IEMsCiAgICAgICAgICAgY2xhc3MgSXRlcmF0b3IgPSBkZWNsdHlwZSg6OnN0ZDo6ZGVjbHZhbDxj
b25zdCBDJj4oKS5iZWdpbigpKSwKICAgICAgICAgICBjbGFzcyA9IGRlY2x0eXBlKDo6c3RkOjpk
ZWNsdmFsPGNvbnN0IEMmPigpLmVuZCgpKSwKQEAgLTk1MiwxNCArOTE4LDYgQEAgdGVtcGxhdGUg
PGNsYXNzIEMsCiBJc0NvbnRhaW5lciBJc0NvbnRhaW5lclRlc3QoaW50IC8qIGR1bW15ICovKSB7
CiAgIHJldHVybiAwOwogfQotI2Vsc2UKLXRlbXBsYXRlIDxjbGFzcyBDPgotSXNDb250YWluZXIg
SXNDb250YWluZXJUZXN0KGludCAvKiBkdW1teSAqLywKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB0eXBlbmFtZSBDOjppdGVyYXRvciogLyogaXQgKi8gPSBOVUxMLAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHR5cGVuYW1lIEM6OmNvbnN0X2l0ZXJhdG9yKiAvKiBjb25zdF9pdCAq
LyA9IE5VTEwpIHsKLSAgcmV0dXJuIDA7Ci19Ci0jZW5kaWYgIC8vIEdURVNUX0xBTkdfQ1hYMTEK
IAogdHlwZWRlZiBjaGFyIElzTm90Q29udGFpbmVyOwogdGVtcGxhdGUgPGNsYXNzIEM+CkBAIC05
ODAsNDcgKzkzOCwzMCBAQCBzdHJ1Y3QgSXNIYXNoVGFibGUgewogICBzdGF0aWMgY2hhciB0ZXN0
KC4uLik7CiAKICBwdWJsaWM6Ci0gIHN0YXRpYyBjb25zdCBib29sIHZhbHVlID0gc2l6ZW9mKHRl
c3Q8VD4oMCwgMCkpID09IHNpemVvZihpbnQpOworICBzdGF0aWMgY29uc3QgYm9vbCB2YWx1ZSA9
IHNpemVvZih0ZXN0PFQ+KG51bGxwdHIsIG51bGxwdHIpKSA9PSBzaXplb2YoaW50KTsKIH07CiAK
IHRlbXBsYXRlIDx0eXBlbmFtZSBUPgogY29uc3QgYm9vbCBJc0hhc2hUYWJsZTxUPjo6dmFsdWU7
CiAKLXRlbXBsYXRlPHR5cGVuYW1lIFQ+Ci1zdHJ1Y3QgVm9pZFQgewotICAgIHR5cGVkZWYgdm9p
ZCB2YWx1ZV90eXBlOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQsIHR5cGVuYW1lID0gdm9p
ZD4KLXN0cnVjdCBIYXNWYWx1ZVR5cGUgOiBmYWxzZV90eXBlIHt9OwotdGVtcGxhdGUgPHR5cGVu
YW1lIFQ+Ci1zdHJ1Y3QgSGFzVmFsdWVUeXBlPFQsIFZvaWRUPHR5cGVuYW1lIFQ6OnZhbHVlX3R5
cGU+ID4gOiB0cnVlX3R5cGUgewotfTsKLQogdGVtcGxhdGUgPHR5cGVuYW1lIEMsCi0gICAgICAg
ICAgYm9vbCA9IHNpemVvZihJc0NvbnRhaW5lclRlc3Q8Qz4oMCkpID09IHNpemVvZihJc0NvbnRh
aW5lciksCi0gICAgICAgICAgYm9vbCA9IEhhc1ZhbHVlVHlwZTxDPjo6dmFsdWU+CisgICAgICAg
ICAgYm9vbCA9IHNpemVvZihJc0NvbnRhaW5lclRlc3Q8Qz4oMCkpID09IHNpemVvZihJc0NvbnRh
aW5lcik+CiBzdHJ1Y3QgSXNSZWN1cnNpdmVDb250YWluZXJJbXBsOwogCi10ZW1wbGF0ZSA8dHlw
ZW5hbWUgQywgYm9vbCBIVj4KLXN0cnVjdCBJc1JlY3Vyc2l2ZUNvbnRhaW5lckltcGw8QywgZmFs
c2UsIEhWPiA6IHB1YmxpYyBmYWxzZV90eXBlIHt9OwordGVtcGxhdGUgPHR5cGVuYW1lIEM+Citz
dHJ1Y3QgSXNSZWN1cnNpdmVDb250YWluZXJJbXBsPEMsIGZhbHNlPiA6IHB1YmxpYyBzdGQ6OmZh
bHNlX3R5cGUge307CiAKIC8vIFNpbmNlIHRoZSBJc1JlY3Vyc2l2ZUNvbnRhaW5lckltcGwgZGVw
ZW5kcyBvbiB0aGUgSXNDb250YWluZXJUZXN0IHdlIG5lZWQgdG8KIC8vIG9iZXkgdGhlIHNhbWUg
aW5jb25zaXN0ZW5jaWVzIGFzIHRoZSBJc0NvbnRhaW5lclRlc3QsIG5hbWVseSBjaGVjayBpZgog
Ly8gc29tZXRoaW5nIGlzIGEgY29udGFpbmVyIGlzIHJlbHlpbmcgb24gb25seSBjb25zdF9pdGVy
YXRvciBpbiBDKysxMSBhbmQKIC8vIGlzIHJlbHlpbmcgb24gYm90aCBjb25zdF9pdGVyYXRvciBh
bmQgaXRlcmF0b3Igb3RoZXJ3aXNlCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgQz4KLXN0cnVjdCBJc1Jl
Y3Vyc2l2ZUNvbnRhaW5lckltcGw8QywgdHJ1ZSwgZmFsc2U+IDogcHVibGljIGZhbHNlX3R5cGUg
e307Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBDPgotc3RydWN0IElzUmVjdXJzaXZlQ29udGFpbmVy
SW1wbDxDLCB0cnVlLCB0cnVlPiB7Ci0gICNpZiBHVEVTVF9MQU5HX0NYWDExCi0gIHR5cGVkZWYg
dHlwZW5hbWUgSXRlcmF0b3JUcmFpdHM8dHlwZW5hbWUgQzo6Y29uc3RfaXRlcmF0b3I+Ojp2YWx1
ZV90eXBlCi0gICAgICB2YWx1ZV90eXBlOwotI2Vsc2UKLSAgdHlwZWRlZiB0eXBlbmFtZSBJdGVy
YXRvclRyYWl0czx0eXBlbmFtZSBDOjppdGVyYXRvcj46OnZhbHVlX3R5cGUgdmFsdWVfdHlwZTsK
LSNlbmRpZgotICB0eXBlZGVmIGlzX3NhbWU8dmFsdWVfdHlwZSwgQz4gdHlwZTsKK3N0cnVjdCBJ
c1JlY3Vyc2l2ZUNvbnRhaW5lckltcGw8QywgdHJ1ZT4geworICB1c2luZyB2YWx1ZV90eXBlID0g
ZGVjbHR5cGUoKnN0ZDo6ZGVjbHZhbDx0eXBlbmFtZSBDOjpjb25zdF9pdGVyYXRvcj4oKSk7Cisg
IHVzaW5nIHR5cGUgPQorICAgICAgc3RkOjppc19zYW1lPHR5cGVuYW1lIHN0ZDo6cmVtb3ZlX2Nv
bnN0PAorICAgICAgICAgICAgICAgICAgICAgICB0eXBlbmFtZSBzdGQ6OnJlbW92ZV9yZWZlcmVu
Y2U8dmFsdWVfdHlwZT46OnR5cGU+Ojp0eXBlLAorICAgICAgICAgICAgICAgICAgIEM+OwogfTsK
IAogLy8gSXNSZWN1cnNpdmVDb250YWluZXI8VHlwZT4gaXMgYSB1bmFyeSBjb21waWxlLXRpbWUg
cHJlZGljYXRlIHRoYXQKQEAgLTEwMzIsMTMgKzk3Myw2IEBAIHN0cnVjdCBJc1JlY3Vyc2l2ZUNv
bnRhaW5lckltcGw8QywgdHJ1ZSwgdHJ1ZT4gewogdGVtcGxhdGUgPHR5cGVuYW1lIEM+CiBzdHJ1
Y3QgSXNSZWN1cnNpdmVDb250YWluZXIgOiBwdWJsaWMgSXNSZWN1cnNpdmVDb250YWluZXJJbXBs
PEM+Ojp0eXBlIHt9OwogCi0vLyBFbmFibGVJZjxjb25kaXRpb24+Ojp0eXBlIGlzIHZvaWQgd2hl
biAnQ29uZCcgaXMgdHJ1ZSwgYW5kCi0vLyB1bmRlZmluZWQgd2hlbiAnQ29uZCcgaXMgZmFsc2Uu
ICBUbyB1c2UgU0ZJTkFFIHRvIG1ha2UgYSBmdW5jdGlvbgotLy8gb3ZlcmxvYWQgb25seSBhcHBs
eSB3aGVuIGEgcGFydGljdWxhciBleHByZXNzaW9uIGlzIHRydWUsIGFkZAotLy8gInR5cGVuYW1l
IEVuYWJsZUlmPGV4cHJlc3Npb24+Ojp0eXBlKiA9IDAiIGFzIHRoZSBsYXN0IHBhcmFtZXRlci4K
LXRlbXBsYXRlPGJvb2w+IHN0cnVjdCBFbmFibGVJZjsKLXRlbXBsYXRlPD4gc3RydWN0IEVuYWJs
ZUlmPHRydWU+IHsgdHlwZWRlZiB2b2lkIHR5cGU7IH07ICAvLyBOT0xJTlQKLQogLy8gVXRpbGl0
aWVzIGZvciBuYXRpdmUgYXJyYXlzLgogCiAvLyBBcnJheUVxKCkgY29tcGFyZXMgdHdvIGstZGlt
ZW5zaW9uYWwgbmF0aXZlIGFycmF5cyB1c2luZyB0aGUKQEAgLTExNjEsMTAgKzEwOTUsOSBAQCBj
bGFzcyBOYXRpdmVBcnJheSB7CiAgIH0KIAogIHByaXZhdGU6Ci0gIGVudW0gewotICAgIGtDaGVj
a1R5cGVJc05vdENvbnN0T3JBUmVmZXJlbmNlID0gU3RhdGljQXNzZXJ0VHlwZUVxSGVscGVyPAot
ICAgICAgICBFbGVtZW50LCBHVEVTVF9SRU1PVkVfUkVGRVJFTkNFX0FORF9DT05TVF8oRWxlbWVu
dCk+Ojp2YWx1ZQotICB9OworICBzdGF0aWNfYXNzZXJ0KCFzdGQ6OmlzX2NvbnN0PEVsZW1lbnQ+
Ojp2YWx1ZSwgIlR5cGUgbXVzdCBub3QgYmUgY29uc3QiKTsKKyAgc3RhdGljX2Fzc2VydCghc3Rk
Ojppc19yZWZlcmVuY2U8RWxlbWVudD46OnZhbHVlLAorICAgICAgICAgICAgICAgICJUeXBlIG11
c3Qgbm90IGJlIGEgcmVmZXJlbmNlIik7CiAKICAgLy8gSW5pdGlhbGl6ZXMgdGhpcyBvYmplY3Qg
d2l0aCBhIGNvcHkgb2YgdGhlIGlucHV0LgogICB2b2lkIEluaXRDb3B5KGNvbnN0IEVsZW1lbnQq
IGFycmF5LCBzaXplX3QgYV9zaXplKSB7CkBAIC0xMTg5LDYgKzExMjIsMTQyIEBAIGNsYXNzIE5h
dGl2ZUFycmF5IHsKICAgR1RFU1RfRElTQUxMT1dfQVNTSUdOXyhOYXRpdmVBcnJheSk7CiB9Owog
CisvLyBCYWNrcG9ydCBvZiBzdGQ6OmluZGV4X3NlcXVlbmNlLgordGVtcGxhdGUgPHNpemVfdC4u
LiBJcz4KK3N0cnVjdCBJbmRleFNlcXVlbmNlIHsKKyAgdXNpbmcgdHlwZSA9IEluZGV4U2VxdWVu
Y2U7Cit9OworCisvLyBEb3VibGUgdGhlIEluZGV4U2VxdWVuY2UsIGFuZCBvbmUgaWYgcGx1c19v
bmUgaXMgdHJ1ZS4KK3RlbXBsYXRlIDxib29sIHBsdXNfb25lLCB0eXBlbmFtZSBULCBzaXplX3Qg
c2l6ZW9mVD4KK3N0cnVjdCBEb3VibGVTZXF1ZW5jZTsKK3RlbXBsYXRlIDxzaXplX3QuLi4gSSwg
c2l6ZV90IHNpemVvZlQ+CitzdHJ1Y3QgRG91YmxlU2VxdWVuY2U8dHJ1ZSwgSW5kZXhTZXF1ZW5j
ZTxJLi4uPiwgc2l6ZW9mVD4geworICB1c2luZyB0eXBlID0gSW5kZXhTZXF1ZW5jZTxJLi4uLCAo
c2l6ZW9mVCArIEkpLi4uLCAyICogc2l6ZW9mVD47Cit9OwordGVtcGxhdGUgPHNpemVfdC4uLiBJ
LCBzaXplX3Qgc2l6ZW9mVD4KK3N0cnVjdCBEb3VibGVTZXF1ZW5jZTxmYWxzZSwgSW5kZXhTZXF1
ZW5jZTxJLi4uPiwgc2l6ZW9mVD4geworICB1c2luZyB0eXBlID0gSW5kZXhTZXF1ZW5jZTxJLi4u
LCAoc2l6ZW9mVCArIEkpLi4uPjsKK307CisKKy8vIEJhY2twb3J0IG9mIHN0ZDo6bWFrZV9pbmRl
eF9zZXF1ZW5jZS4KKy8vIEl0IHVzZXMgTyhsbihOKSkgaW5zdGFudGlhdGlvbiBkZXB0aC4KK3Rl
bXBsYXRlIDxzaXplX3QgTj4KK3N0cnVjdCBNYWtlSW5kZXhTZXF1ZW5jZQorICAgIDogRG91Ymxl
U2VxdWVuY2U8TiAlIDIgPT0gMSwgdHlwZW5hbWUgTWFrZUluZGV4U2VxdWVuY2U8TiAvIDI+Ojp0
eXBlLAorICAgICAgICAgICAgICAgICAgICAgTiAvIDI+Ojp0eXBlIHt9OworCit0ZW1wbGF0ZSA8
Pgorc3RydWN0IE1ha2VJbmRleFNlcXVlbmNlPDA+IDogSW5kZXhTZXF1ZW5jZTw+IHt9OworCit0
ZW1wbGF0ZSA8c2l6ZV90Pgorc3RydWN0IElnbm9yZSB7CisgIElnbm9yZSguLi4pOyAgLy8gTk9M
SU5UCit9OworCit0ZW1wbGF0ZSA8dHlwZW5hbWU+CitzdHJ1Y3QgRWxlbUZyb21MaXN0SW1wbDsK
K3RlbXBsYXRlIDxzaXplX3QuLi4gST4KK3N0cnVjdCBFbGVtRnJvbUxpc3RJbXBsPEluZGV4U2Vx
dWVuY2U8SS4uLj4+IHsKKyAgLy8gV2UgbWFrZSBJZ25vcmUgYSB0ZW1wbGF0ZSB0byBzb2x2ZSBh
IHByb2JsZW0gd2l0aCBNU1ZDLgorICAvLyBBIG5vbi10ZW1wbGF0ZSBJZ25vcmUgd291bGQgd29y
ayBmaW5lIHdpdGggYGRlY2x0eXBlKElnbm9yZShJKSkuLi5gLCBidXQKKyAgLy8gTVNWQyBkb2Vz
bid0IHVuZGVyc3RhbmQgaG93IHRvIGRlYWwgd2l0aCB0aGF0IHBhY2sgZXhwYW5zaW9uLgorICAv
LyBVc2UgYDAgKiBJYCB0byBoYXZlIGEgc2luZ2xlIGluc3RhbnRpYXRpb24gb2YgSWdub3JlLgor
ICB0ZW1wbGF0ZSA8dHlwZW5hbWUgUj4KKyAgc3RhdGljIFIgQXBwbHkoSWdub3JlPDAgKiBJPi4u
LiwgUiAoKikoKSwgLi4uKTsKK307CisKK3RlbXBsYXRlIDxzaXplX3QgTiwgdHlwZW5hbWUuLi4g
VD4KK3N0cnVjdCBFbGVtRnJvbUxpc3QgeworICB1c2luZyB0eXBlID0KKyAgICAgIGRlY2x0eXBl
KEVsZW1Gcm9tTGlzdEltcGw8dHlwZW5hbWUgTWFrZUluZGV4U2VxdWVuY2U8Tj46OnR5cGU+OjpB
cHBseSgKKyAgICAgICAgICBzdGF0aWNfY2FzdDxUICgqKSgpPihudWxscHRyKS4uLikpOworfTsK
KwordGVtcGxhdGUgPHR5cGVuYW1lLi4uIFQ+CitjbGFzcyBGbGF0VHVwbGU7CisKK3RlbXBsYXRl
IDx0eXBlbmFtZSBEZXJpdmVkLCBzaXplX3QgST4KK3N0cnVjdCBGbGF0VHVwbGVFbGVtQmFzZTsK
KwordGVtcGxhdGUgPHR5cGVuYW1lLi4uIFQsIHNpemVfdCBJPgorc3RydWN0IEZsYXRUdXBsZUVs
ZW1CYXNlPEZsYXRUdXBsZTxULi4uPiwgST4geworICB1c2luZyB2YWx1ZV90eXBlID0gdHlwZW5h
bWUgRWxlbUZyb21MaXN0PEksIFQuLi4+Ojp0eXBlOworICBGbGF0VHVwbGVFbGVtQmFzZSgpID0g
ZGVmYXVsdDsKKyAgZXhwbGljaXQgRmxhdFR1cGxlRWxlbUJhc2UodmFsdWVfdHlwZSB0KSA6IHZh
bHVlKHN0ZDo6bW92ZSh0KSkge30KKyAgdmFsdWVfdHlwZSB2YWx1ZTsKK307CisKK3RlbXBsYXRl
IDx0eXBlbmFtZSBEZXJpdmVkLCB0eXBlbmFtZSBJZHg+CitzdHJ1Y3QgRmxhdFR1cGxlQmFzZTsK
KwordGVtcGxhdGUgPHNpemVfdC4uLiBJZHgsIHR5cGVuYW1lLi4uIFQ+CitzdHJ1Y3QgRmxhdFR1
cGxlQmFzZTxGbGF0VHVwbGU8VC4uLj4sIEluZGV4U2VxdWVuY2U8SWR4Li4uPj4KKyAgICA6IEZs
YXRUdXBsZUVsZW1CYXNlPEZsYXRUdXBsZTxULi4uPiwgSWR4Pi4uLiB7CisgIHVzaW5nIEluZGlj
ZXMgPSBJbmRleFNlcXVlbmNlPElkeC4uLj47CisgIEZsYXRUdXBsZUJhc2UoKSA9IGRlZmF1bHQ7
CisgIGV4cGxpY2l0IEZsYXRUdXBsZUJhc2UoVC4uLiB0KQorICAgICAgOiBGbGF0VHVwbGVFbGVt
QmFzZTxGbGF0VHVwbGU8VC4uLj4sIElkeD4oc3RkOjptb3ZlKHQpKS4uLiB7fQorfTsKKworLy8g
QW5hbG9nIHRvIHN0ZDo6dHVwbGUgYnV0IHdpdGggZGlmZmVyZW50IHRyYWRlb2Zmcy4KKy8vIFRo
aXMgY2xhc3MgbWluaW1pemVzIHRoZSB0ZW1wbGF0ZSBpbnN0YW50aWF0aW9uIGRlcHRoLCB0aHVz
IGFsbG93aW5nIG1vcmUKKy8vIGVsZW1lbnRzIHRoYW4gc3RkOjp0dXBsZSB3b3VsZC4gc3RkOjp0
dXBsZSBoYXMgYmVlbiBzZWVuIHRvIHJlcXVpcmUgYW4KKy8vIGluc3RhbnRpYXRpb24gZGVwdGgg
b2YgbW9yZSB0aGFuIDEweCB0aGUgbnVtYmVyIG9mIGVsZW1lbnRzIGluIHNvbWUKKy8vIGltcGxl
bWVudGF0aW9ucy4KKy8vIEZsYXRUdXBsZSBhbmQgRWxlbUZyb21MaXN0IGFyZSBub3QgcmVjdXJz
aXZlIGFuZCBoYXZlIGEgZml4ZWQgZGVwdGgKKy8vIHJlZ2FyZGxlc3Mgb2YgVC4uLgorLy8gTWFr
ZUluZGV4U2VxdWVuY2UsIG9uIHRoZSBvdGhlciBoYW5kLCBpdCBpcyByZWN1cnNpdmUgYnV0IHdp
dGggYW4KKy8vIGluc3RhbnRpYXRpb24gZGVwdGggb2YgTyhsbihOKSkuCit0ZW1wbGF0ZSA8dHlw
ZW5hbWUuLi4gVD4KK2NsYXNzIEZsYXRUdXBsZQorICAgIDogcHJpdmF0ZSBGbGF0VHVwbGVCYXNl
PEZsYXRUdXBsZTxULi4uPiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlbmFtZSBN
YWtlSW5kZXhTZXF1ZW5jZTxzaXplb2YuLi4oVCk+Ojp0eXBlPiB7CisgIHVzaW5nIEluZGljZXMg
PSB0eXBlbmFtZSBGbGF0VHVwbGVCYXNlPAorICAgICAgRmxhdFR1cGxlPFQuLi4+LCB0eXBlbmFt
ZSBNYWtlSW5kZXhTZXF1ZW5jZTxzaXplb2YuLi4oVCk+Ojp0eXBlPjo6SW5kaWNlczsKKworIHB1
YmxpYzoKKyAgRmxhdFR1cGxlKCkgPSBkZWZhdWx0OworICBleHBsaWNpdCBGbGF0VHVwbGUoVC4u
LiB0KSA6IEZsYXRUdXBsZTo6RmxhdFR1cGxlQmFzZShzdGQ6Om1vdmUodCkuLi4pIHt9CisKKyAg
dGVtcGxhdGUgPHNpemVfdCBJPgorICBjb25zdCB0eXBlbmFtZSBFbGVtRnJvbUxpc3Q8SSwgVC4u
Lj46OnR5cGUmIEdldCgpIGNvbnN0IHsKKyAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Y29uc3QgRmxh
dFR1cGxlRWxlbUJhc2U8RmxhdFR1cGxlLCBJPio+KHRoaXMpLT52YWx1ZTsKKyAgfQorCisgIHRl
bXBsYXRlIDxzaXplX3QgST4KKyAgdHlwZW5hbWUgRWxlbUZyb21MaXN0PEksIFQuLi4+Ojp0eXBl
JiBHZXQoKSB7CisgICAgcmV0dXJuIHN0YXRpY19jYXN0PEZsYXRUdXBsZUVsZW1CYXNlPEZsYXRU
dXBsZSwgST4qPih0aGlzKS0+dmFsdWU7CisgIH0KK307CisKKy8vIFV0aWxpdHkgZnVuY3Rpb25z
IHRvIGJlIGNhbGxlZCB3aXRoIHN0YXRpY19hc3NlcnQgdG8gaW5kdWNlIGRlcHJlY2F0aW9uCisv
LyB3YXJuaW5ncy4KK0dURVNUX0lOVEVSTkFMX0RFUFJFQ0FURUQoCisgICAgIklOU1RBTlRJQVRF
X1RFU1RfQ0FTRV9QIGlzIGRlcHJlY2F0ZWQsIHBsZWFzZSB1c2UgIgorICAgICJJTlNUQU5USUFU
RV9URVNUX1NVSVRFX1AiKQorY29uc3RleHByIGJvb2wgSW5zdGFudGlhdGVUZXN0Q2FzZV9QX0lz
RGVwcmVjYXRlZCgpIHsgcmV0dXJuIHRydWU7IH0KKworR1RFU1RfSU5URVJOQUxfREVQUkVDQVRF
RCgKKyAgICAiVFlQRURfVEVTVF9DQVNFX1AgaXMgZGVwcmVjYXRlZCwgcGxlYXNlIHVzZSAiCisg
ICAgIlRZUEVEX1RFU1RfU1VJVEVfUCIpCitjb25zdGV4cHIgYm9vbCBUeXBlZFRlc3RDYXNlX1Bf
SXNEZXByZWNhdGVkKCkgeyByZXR1cm4gdHJ1ZTsgfQorCitHVEVTVF9JTlRFUk5BTF9ERVBSRUNB
VEVEKAorICAgICJUWVBFRF9URVNUX0NBU0UgaXMgZGVwcmVjYXRlZCwgcGxlYXNlIHVzZSAiCisg
ICAgIlRZUEVEX1RFU1RfU1VJVEUiKQorY29uc3RleHByIGJvb2wgVHlwZWRUZXN0Q2FzZUlzRGVw
cmVjYXRlZCgpIHsgcmV0dXJuIHRydWU7IH0KKworR1RFU1RfSU5URVJOQUxfREVQUkVDQVRFRCgK
KyAgICAiUkVHSVNURVJfVFlQRURfVEVTVF9DQVNFX1AgaXMgZGVwcmVjYXRlZCwgcGxlYXNlIHVz
ZSAiCisgICAgIlJFR0lTVEVSX1RZUEVEX1RFU1RfU1VJVEVfUCIpCitjb25zdGV4cHIgYm9vbCBS
ZWdpc3RlclR5cGVkVGVzdENhc2VfUF9Jc0RlcHJlY2F0ZWQoKSB7IHJldHVybiB0cnVlOyB9CisK
K0dURVNUX0lOVEVSTkFMX0RFUFJFQ0FURUQoCisgICAgIklOU1RBTlRJQVRFX1RZUEVEX1RFU1Rf
Q0FTRV9QIGlzIGRlcHJlY2F0ZWQsIHBsZWFzZSB1c2UgIgorICAgICJJTlNUQU5USUFURV9UWVBF
RF9URVNUX1NVSVRFX1AiKQorY29uc3RleHByIGJvb2wgSW5zdGFudGlhdGVUeXBlZFRlc3RDYXNl
X1BfSXNEZXByZWNhdGVkKCkgeyByZXR1cm4gdHJ1ZTsgfQorCiB9ICAvLyBuYW1lc3BhY2UgaW50
ZXJuYWwKIH0gIC8vIG5hbWVzcGFjZSB0ZXN0aW5nCiAKQEAgLTEyMDgsNyArMTI3NywxMCBAQCBj
bGFzcyBOYXRpdmVBcnJheSB7CiAjZGVmaW5lIEdURVNUX1NVQ0NFU1NfKG1lc3NhZ2UpIFwKICAg
R1RFU1RfTUVTU0FHRV8obWVzc2FnZSwgOjp0ZXN0aW5nOjpUZXN0UGFydFJlc3VsdDo6a1N1Y2Nl
c3MpCiAKLS8vIFN1cHByZXNzIE1TVkMgd2FybmluZyA0NzAyICh1bnJlYWNoYWJsZSBjb2RlKSBm
b3IgdGhlIGNvZGUgZm9sbG93aW5nCisjZGVmaW5lIEdURVNUX1NLSVBfKG1lc3NhZ2UpIFwKKyAg
cmV0dXJuIEdURVNUX01FU1NBR0VfKG1lc3NhZ2UsIDo6dGVzdGluZzo6VGVzdFBhcnRSZXN1bHQ6
OmtTa2lwKQorCisvLyBTdXBwcmVzcyBNU1ZDIHdhcm5pbmcgNDA3MiAodW5yZWFjaGFibGUgY29k
ZSkgZm9yIHRoZSBjb2RlIGZvbGxvd2luZwogLy8gc3RhdGVtZW50IGlmIGl0IHJldHVybnMgb3Ig
dGhyb3dzIChvciBkb2Vzbid0IHJldHVybiBvciB0aHJvdyBpbiBzb21lCiAvLyBzaXR1YXRpb25z
KS4KICNkZWZpbmUgR1RFU1RfU1VQUFJFU1NfVU5SRUFDSEFCTEVfQ09ERV9XQVJOSU5HX0JFTE9X
XyhzdGF0ZW1lbnQpIFwKQEAgLTEyNDAsMTkgKzEzMTIsMzkgQEAgY2xhc3MgTmF0aXZlQXJyYXkg
ewogICAgIEdURVNUX0NPTkNBVF9UT0tFTl8oZ3Rlc3RfbGFiZWxfdGVzdHRocm93XywgX19MSU5F
X18pOiBcCiAgICAgICBmYWlsKGd0ZXN0X21zZy52YWx1ZSkKIAorI2lmIEdURVNUX0hBU19FWENF
UFRJT05TCisKKyNkZWZpbmUgR1RFU1RfVEVTVF9OT19USFJPV19DQVRDSF9TVERfRVhDRVBUSU9O
XygpIFwKKyAgY2F0Y2ggKHN0ZDo6ZXhjZXB0aW9uIGNvbnN0JiBlKSB7IFwKKyAgICBndGVzdF9t
c2cudmFsdWUgPSAoIFwKKyAgICAgICJpdCB0aHJvd3Mgc3RkOjpleGNlcHRpb24tZGVyaXZlZCBl
eGNlcHRpb24gd2l0aCBkZXNjcmlwdGlvbjogXCIiIFwKKyAgICApOyBcCisgICAgZ3Rlc3RfbXNn
LnZhbHVlICs9IGUud2hhdCgpOyBcCisgICAgZ3Rlc3RfbXNnLnZhbHVlICs9ICJcIi4iOyBcCisg
ICAgZ290byBHVEVTVF9DT05DQVRfVE9LRU5fKGd0ZXN0X2xhYmVsX3Rlc3Rub3Rocm93XywgX19M
SU5FX18pOyBcCisgIH0KKworI2Vsc2UgIC8vIEdURVNUX0hBU19FWENFUFRJT05TCisKKyNkZWZp
bmUgR1RFU1RfVEVTVF9OT19USFJPV19DQVRDSF9TVERfRVhDRVBUSU9OXygpCisKKyNlbmRpZiAg
Ly8gR1RFU1RfSEFTX0VYQ0VQVElPTlMKKwogI2RlZmluZSBHVEVTVF9URVNUX05PX1RIUk9XXyhz
dGF0ZW1lbnQsIGZhaWwpIFwKICAgR1RFU1RfQU1CSUdVT1VTX0VMU0VfQkxPQ0tFUl8gXAotICBp
ZiAoOjp0ZXN0aW5nOjppbnRlcm5hbDo6QWx3YXlzVHJ1ZSgpKSB7IFwKKyAgaWYgKDo6dGVzdGlu
Zzo6aW50ZXJuYWw6OlRydWVXaXRoU3RyaW5nIGd0ZXN0X21zZ3t9KSB7IFwKICAgICB0cnkgeyBc
CiAgICAgICBHVEVTVF9TVVBQUkVTU19VTlJFQUNIQUJMRV9DT0RFX1dBUk5JTkdfQkVMT1dfKHN0
YXRlbWVudCk7IFwKICAgICB9IFwKKyAgICBHVEVTVF9URVNUX05PX1RIUk9XX0NBVENIX1NURF9F
WENFUFRJT05fKCkgXAogICAgIGNhdGNoICguLi4pIHsgXAorICAgICAgZ3Rlc3RfbXNnLnZhbHVl
ID0gIml0IHRocm93cy4iOyBcCiAgICAgICBnb3RvIEdURVNUX0NPTkNBVF9UT0tFTl8oZ3Rlc3Rf
bGFiZWxfdGVzdG5vdGhyb3dfLCBfX0xJTkVfXyk7IFwKICAgICB9IFwKICAgfSBlbHNlIFwKICAg
ICBHVEVTVF9DT05DQVRfVE9LRU5fKGd0ZXN0X2xhYmVsX3Rlc3Rub3Rocm93XywgX19MSU5FX18p
OiBcCi0gICAgICBmYWlsKCJFeHBlY3RlZDogIiAjc3RhdGVtZW50ICIgZG9lc24ndCB0aHJvdyBh
biBleGNlcHRpb24uXG4iIFwKLSAgICAgICAgICAgIiAgQWN0dWFsOiBpdCB0aHJvd3MuIikKKyAg
ICAgIGZhaWwoKCJFeHBlY3RlZDogIiAjc3RhdGVtZW50ICIgZG9lc24ndCB0aHJvdyBhbiBleGNl
cHRpb24uXG4iIFwKKyAgICAgICAgICAgICIgIEFjdHVhbDogIiArIGd0ZXN0X21zZy52YWx1ZSku
Y19zdHIoKSkKIAogI2RlZmluZSBHVEVTVF9URVNUX0FOWV9USFJPV18oc3RhdGVtZW50LCBmYWls
KSBcCiAgIEdURVNUX0FNQklHVU9VU19FTFNFX0JMT0NLRVJfIFwKQEAgLTEzMDAsMzEgKzEzOTIs
NDEgQEAgY2xhc3MgTmF0aXZlQXJyYXkgewogICAgICAgICAgICAiICBBY3R1YWw6IGl0IGRvZXMu
IikKIAogLy8gRXhwYW5kcyB0byB0aGUgbmFtZSBvZiB0aGUgY2xhc3MgdGhhdCBpbXBsZW1lbnRz
IHRoZSBnaXZlbiB0ZXN0LgotI2RlZmluZSBHVEVTVF9URVNUX0NMQVNTX05BTUVfKHRlc3RfY2Fz
ZV9uYW1lLCB0ZXN0X25hbWUpIFwKLSAgdGVzdF9jYXNlX25hbWUjI18jI3Rlc3RfbmFtZSMjX1Rl
c3QKKyNkZWZpbmUgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0X3N1aXRlX25hbWUsIHRlc3Rf
bmFtZSkgXAorICB0ZXN0X3N1aXRlX25hbWUjI18jI3Rlc3RfbmFtZSMjX1Rlc3QKIAogLy8gSGVs
cGVyIG1hY3JvIGZvciBkZWZpbmluZyB0ZXN0cy4KLSNkZWZpbmUgR1RFU1RfVEVTVF8odGVzdF9j
YXNlX25hbWUsIHRlc3RfbmFtZSwgcGFyZW50X2NsYXNzLCBwYXJlbnRfaWQpXAotY2xhc3MgR1RF
U1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0X2Nhc2VfbmFtZSwgdGVzdF9uYW1lKSA6IHB1YmxpYyBw
YXJlbnRfY2xhc3Mge1wKLSBwdWJsaWM6XAotICBHVEVTVF9URVNUX0NMQVNTX05BTUVfKHRlc3Rf
Y2FzZV9uYW1lLCB0ZXN0X25hbWUpKCkge31cCi0gcHJpdmF0ZTpcCi0gIHZpcnR1YWwgdm9pZCBU
ZXN0Qm9keSgpO1wKLSAgc3RhdGljIDo6dGVzdGluZzo6VGVzdEluZm8qIGNvbnN0IHRlc3RfaW5m
b18gR1RFU1RfQVRUUklCVVRFX1VOVVNFRF87XAotICBHVEVTVF9ESVNBTExPV19DT1BZX0FORF9B
U1NJR05fKFwKLSAgICAgIEdURVNUX1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9jYXNlX25hbWUsIHRl
c3RfbmFtZSkpO1wKLX07XAotXAotOjp0ZXN0aW5nOjpUZXN0SW5mbyogY29uc3QgR1RFU1RfVEVT
VF9DTEFTU19OQU1FXyh0ZXN0X2Nhc2VfbmFtZSwgdGVzdF9uYW1lKVwKLSAgOjp0ZXN0X2luZm9f
ID1cCi0gICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6TWFrZUFuZFJlZ2lzdGVyVGVzdEluZm8oXAot
ICAgICAgICAjdGVzdF9jYXNlX25hbWUsICN0ZXN0X25hbWUsIE5VTEwsIE5VTEwsIFwKLSAgICAg
ICAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6Q29kZUxvY2F0aW9uKF9fRklMRV9fLCBfX0xJTkVfXyks
IFwKLSAgICAgICAgKHBhcmVudF9pZCksIFwKLSAgICAgICAgcGFyZW50X2NsYXNzOjpTZXRVcFRl
c3RDYXNlLCBcCi0gICAgICAgIHBhcmVudF9jbGFzczo6VGVhckRvd25UZXN0Q2FzZSwgXAotICAg
ICAgICBuZXcgOjp0ZXN0aW5nOjppbnRlcm5hbDo6VGVzdEZhY3RvcnlJbXBsPFwKLSAgICAgICAg
ICAgIEdURVNUX1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9jYXNlX25hbWUsIHRlc3RfbmFtZSk+KTtc
Ci12b2lkIEdURVNUX1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9jYXNlX25hbWUsIHRlc3RfbmFtZSk6
OlRlc3RCb2R5KCkKKyNkZWZpbmUgR1RFU1RfVEVTVF8odGVzdF9zdWl0ZV9uYW1lLCB0ZXN0X25h
bWUsIHBhcmVudF9jbGFzcywgcGFyZW50X2lkKSAgICAgIFwKKyAgc3RhdGljX2Fzc2VydChzaXpl
b2YoR1RFU1RfU1RSSU5HSUZZXyh0ZXN0X3N1aXRlX25hbWUpKSA+IDEsICAgICAgICAgICAgICAg
IFwKKyAgICAgICAgICAgICAgICAidGVzdF9zdWl0ZV9uYW1lIG11c3Qgbm90IGJlIGVtcHR5Iik7
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgc3RhdGljX2Fzc2VydChzaXplb2YoR1RFU1Rf
U1RSSU5HSUZZXyh0ZXN0X25hbWUpKSA+IDEsICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAg
ICAgICAgICAgICAidGVzdF9uYW1lIG11c3Qgbm90IGJlIGVtcHR5Iik7ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKKyAgY2xhc3MgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0X3N1
aXRlX25hbWUsIHRlc3RfbmFtZSkgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgIDogcHVibGlj
IHBhcmVudF9jbGFzcyB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKKyAgIHB1YmxpYzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBHVEVTVF9URVNUX0NMQVNTX05B
TUVfKHRlc3Rfc3VpdGVfbmFtZSwgdGVzdF9uYW1lKSgpIHt9ICAgICAgICAgICAgICAgICAgIFwK
KyAgICB+R1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0X3N1aXRlX25hbWUsIHRlc3RfbmFtZSko
KSBvdmVycmlkZSA9IGRlZmF1bHQ7IFwKKyAgICBHVEVTVF9ESVNBTExPV19DT1BZX0FORF9BU1NJ
R05fKEdURVNUX1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9zdWl0ZV9uYW1lLCAgIFwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9u
YW1lKSk7ICAgICAgIFwKKyAgICBHVEVTVF9ESVNBTExPV19NT1ZFX0FORF9BU1NJR05fKEdURVNU
X1RFU1RfQ0xBU1NfTkFNRV8odGVzdF9zdWl0ZV9uYW1lLCAgIFwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9uYW1lKSk7ICAg
ICAgIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgIHByaXZhdGU6ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAg
ICB2b2lkIFRlc3RCb2R5KCkgb3ZlcnJpZGU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwKKyAgICBzdGF0aWMgOjp0ZXN0aW5nOjpUZXN0SW5mbyogY29u
c3QgdGVzdF9pbmZvXyBHVEVTVF9BVFRSSUJVVEVfVU5VU0VEXzsgICAgIFwKKyAgfTsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgOjp0ZXN0aW5nOjpUZXN0SW5m
byogY29uc3QgR1RFU1RfVEVTVF9DTEFTU19OQU1FXyh0ZXN0X3N1aXRlX25hbWUsICAgICAgICAg
IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0
ZXN0X25hbWUpOjp0ZXN0X2luZm9fID0gIFwKKyAgICAgIDo6dGVzdGluZzo6aW50ZXJuYWw6Ok1h
a2VBbmRSZWdpc3RlclRlc3RJbmZvKCAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAg
ICAgICAjdGVzdF9zdWl0ZV9uYW1lLCAjdGVzdF9uYW1lLCBudWxscHRyLCBudWxscHRyLCAgICAg
ICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpDb2RlTG9j
YXRpb24oX19GSUxFX18sIF9fTElORV9fKSwgKHBhcmVudF9pZCksIFwKKyAgICAgICAgICA6OnRl
c3Rpbmc6OmludGVybmFsOjpTdWl0ZUFwaVJlc29sdmVyPCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKKyAgICAgICAgICAgICAgcGFyZW50X2NsYXNzPjo6R2V0U2V0VXBDYXNlT3JTdWl0
ZShfX0ZJTEVfXywgX19MSU5FX18pLCAgICAgICAgIFwKKyAgICAgICAgICA6OnRlc3Rpbmc6Omlu
dGVybmFsOjpTdWl0ZUFwaVJlc29sdmVyPCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
KyAgICAgICAgICAgICAgcGFyZW50X2NsYXNzPjo6R2V0VGVhckRvd25DYXNlT3JTdWl0ZShfX0ZJ
TEVfXywgX19MSU5FX18pLCAgICAgIFwKKyAgICAgICAgICBuZXcgOjp0ZXN0aW5nOjppbnRlcm5h
bDo6VGVzdEZhY3RvcnlJbXBsPEdURVNUX1RFU1RfQ0xBU1NfTkFNRV8oICAgIFwKKyAgICAgICAg
ICAgICAgdGVzdF9zdWl0ZV9uYW1lLCB0ZXN0X25hbWUpPik7ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKKyAgdm9pZCBHVEVTVF9URVNUX0NMQVNTX05BTUVfKHRlc3Rfc3VpdGVf
bmFtZSwgdGVzdF9uYW1lKTo6VGVzdEJvZHkoKQogCiAjZW5kaWYgIC8vIEdURVNUX0lOQ0xVREVf
R1RFU1RfSU5URVJOQUxfR1RFU1RfSU5URVJOQUxfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1s
aW5rZWRfcHRyLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1
ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtbGlua2VkX3B0ci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwODJiODcyODlhZTE3YzhhYTdiOTZkOGU4YzkyYjk2ZTAxOGM3NjhiLi4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhp
cmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1saW5r
ZWRfcHRyLmgKKysrIC9kZXYvbnVsbApAQCAtMSwyNDMgKzAsMCBAQAotLy8gQ29weXJpZ2h0IDIw
MDMgR29vZ2xlIEluYy4KLS8vIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0vLwotLy8gUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
Ci0vLyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMgYXJlCi0vLyBtZXQ6Ci0vLwotLy8gICAgICogUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLS8vIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
LS8vICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUKLS8vIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKLS8vIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLS8vIGRpc3RyaWJ1dGlvbi4KLS8v
ICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBp
dHMKLS8vIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJv
ZHVjdHMgZGVyaXZlZCBmcm9tCi0vLyB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJp
b3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotLy8KLS8vIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLS8vICJBUyBJUyIgQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0v
LyBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IKLS8vIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0vLyBPV05FUiBPUiBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLS8vIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QKLS8vIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLAotLy8gREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0vLyBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0vLyAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKLS8vIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0vLwotLy8gQSAic21hcnQiIHBvaW50ZXIgdHlw
ZSB3aXRoIHJlZmVyZW5jZSB0cmFja2luZy4gIEV2ZXJ5IHBvaW50ZXIgdG8gYQotLy8gcGFydGlj
dWxhciBvYmplY3QgaXMga2VwdCBvbiBhIGNpcmN1bGFyIGxpbmtlZCBsaXN0LiAgV2hlbiB0aGUg
bGFzdCBwb2ludGVyCi0vLyB0byBhbiBvYmplY3QgaXMgZGVzdHJveWVkIG9yIHJlYXNzaWduZWQs
IHRoZSBvYmplY3QgaXMgZGVsZXRlZC4KLS8vCi0vLyBVc2VkIHByb3Blcmx5LCB0aGlzIGRlbGV0
ZXMgdGhlIG9iamVjdCB3aGVuIHRoZSBsYXN0IHJlZmVyZW5jZSBnb2VzIGF3YXkuCi0vLyBUaGVy
ZSBhcmUgc2V2ZXJhbCBjYXZlYXRzOgotLy8gLSBMaWtlIGFsbCByZWZlcmVuY2UgY291bnRpbmcg
c2NoZW1lcywgY3ljbGVzIGxlYWQgdG8gbGVha3MuCi0vLyAtIEVhY2ggc21hcnQgcG9pbnRlciBp
cyBhY3R1YWxseSB0d28gcG9pbnRlcnMgKDggYnl0ZXMgaW5zdGVhZCBvZiA0KS4KLS8vIC0gRXZl
cnkgdGltZSBhIHBvaW50ZXIgaXMgYXNzaWduZWQsIHRoZSBlbnRpcmUgbGlzdCBvZiBwb2ludGVy
cyB0byB0aGF0Ci0vLyAgIG9iamVjdCBpcyB0cmF2ZXJzZWQuICBUaGlzIGNsYXNzIGlzIHRoZXJl
Zm9yZSBOT1QgU1VJVEFCTEUgd2hlbiB0aGVyZQotLy8gICB3aWxsIG9mdGVuIGJlIG1vcmUgdGhh
biB0d28gb3IgdGhyZWUgcG9pbnRlcnMgdG8gYSBwYXJ0aWN1bGFyIG9iamVjdC4KLS8vIC0gUmVm
ZXJlbmNlcyBhcmUgb25seSB0cmFja2VkIGFzIGxvbmcgYXMgbGlua2VkX3B0cjw+IG9iamVjdHMg
YXJlIGNvcGllZC4KLS8vICAgSWYgYSBsaW5rZWRfcHRyPD4gaXMgY29udmVydGVkIHRvIGEgcmF3
IHBvaW50ZXIgYW5kIGJhY2ssIEJBRCBUSElOR1MKLS8vICAgd2lsbCBoYXBwZW4gKGRvdWJsZSBk
ZWxldGlvbikuCi0vLwotLy8gQSBnb29kIHVzZSBvZiB0aGlzIGNsYXNzIGlzIHN0b3Jpbmcgb2Jq
ZWN0IHJlZmVyZW5jZXMgaW4gU1RMIGNvbnRhaW5lcnMuCi0vLyBZb3UgY2FuIHNhZmVseSBwdXQg
bGlua2VkX3B0cjw+IGluIGEgdmVjdG9yPD4uCi0vLyBPdGhlciB1c2VzIG1heSBub3QgYmUgYXMg
Z29vZC4KLS8vCi0vLyBOb3RlOiBJZiB5b3UgdXNlIGFuIGluY29tcGxldGUgdHlwZSB3aXRoIGxp
bmtlZF9wdHI8PiwgdGhlIGNsYXNzCi0vLyAqY29udGFpbmluZyogbGlua2VkX3B0cjw+IG11c3Qg
aGF2ZSBhIGNvbnN0cnVjdG9yIGFuZCBkZXN0cnVjdG9yIChldmVuCi0vLyBpZiB0aGV5IGRvIG5v
dGhpbmchKS4KLS8vCi0vLyBCaWxsIEdpYmJvbnMgc3VnZ2VzdGVkIHdlIHVzZSBzb21ldGhpbmcg
bGlrZSB0aGlzLgotLy8KLS8vIFRocmVhZCBTYWZldHk6Ci0vLyAgIFVubGlrZSBvdGhlciBsaW5r
ZWRfcHRyIGltcGxlbWVudGF0aW9ucywgaW4gdGhpcyBpbXBsZW1lbnRhdGlvbgotLy8gICBhIGxp
bmtlZF9wdHIgb2JqZWN0IGlzIHRocmVhZC1zYWZlIGluIHRoZSBzZW5zZSB0aGF0OgotLy8gICAg
IC0gaXQncyBzYWZlIHRvIGNvcHkgbGlua2VkX3B0ciBvYmplY3RzIGNvbmN1cnJlbnRseSwKLS8v
ICAgICAtIGl0J3Mgc2FmZSB0byBjb3B5ICpmcm9tKiBhIGxpbmtlZF9wdHIgYW5kIHJlYWQgaXRz
IHVuZGVybHlpbmcKLS8vICAgICAgIHJhdyBwb2ludGVyIChlLmcuIHZpYSBnZXQoKSkgY29uY3Vy
cmVudGx5LCBhbmQKLS8vICAgICAtIGl0J3Mgc2FmZSB0byB3cml0ZSB0byB0d28gbGlua2VkX3B0
cnMgdGhhdCBwb2ludCB0byB0aGUgc2FtZQotLy8gICAgICAgc2hhcmVkIG9iamVjdCBjb25jdXJy
ZW50bHkuCi0vLyBGSVhNRTogcmVuYW1lIHRoaXMgdG8gc2FmZV9saW5rZWRfcHRyIHRvIGF2b2lk
Ci0vLyBjb25mdXNpb24gd2l0aCBub3JtYWwgbGlua2VkX3B0ci4KLQotLy8gR09PR0xFVEVTVF9D
TTAwMDEgRE8gTk9UIERFTEVURQotCi0jaWZuZGVmIEdURVNUX0lOQ0xVREVfR1RFU1RfSU5URVJO
QUxfR1RFU1RfTElOS0VEX1BUUl9IXwotI2RlZmluZSBHVEVTVF9JTkNMVURFX0dURVNUX0lOVEVS
TkFMX0dURVNUX0xJTktFRF9QVFJfSF8KLQotI2luY2x1ZGUgPHN0ZGxpYi5oPgotI2luY2x1ZGUg
PGFzc2VydC5oPgotCi0jaW5jbHVkZSAiZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtcG9ydC5oIgotCi1u
YW1lc3BhY2UgdGVzdGluZyB7Ci1uYW1lc3BhY2UgaW50ZXJuYWwgewotCi0vLyBQcm90ZWN0cyBj
b3B5aW5nIG9mIGFsbCBsaW5rZWRfcHRyIG9iamVjdHMuCi1HVEVTVF9BUElfIEdURVNUX0RFQ0xB
UkVfU1RBVElDX01VVEVYXyhnX2xpbmtlZF9wdHJfbXV0ZXgpOwotCi0vLyBUaGlzIGlzIHVzZWQg
aW50ZXJuYWxseSBieSBhbGwgaW5zdGFuY2VzIG9mIGxpbmtlZF9wdHI8Pi4gIEl0IG5lZWRzIHRv
IGJlCi0vLyBhIG5vbi10ZW1wbGF0ZSBjbGFzcyBiZWNhdXNlIGRpZmZlcmVudCB0eXBlcyBvZiBs
aW5rZWRfcHRyPD4gY2FuIHJlZmVyIHRvCi0vLyB0aGUgc2FtZSBvYmplY3QgKGxpbmtlZF9wdHI8
U3VwZXJjbGFzcz4ob2JqKSB2cyBsaW5rZWRfcHRyPFN1YmNsYXNzPihvYmopKS4KLS8vIFNvLCBp
dCBuZWVkcyB0byBiZSBwb3NzaWJsZSBmb3IgZGlmZmVyZW50IHR5cGVzIG9mIGxpbmtlZF9wdHIg
dG8gcGFydGljaXBhdGUKLS8vIGluIHRoZSBzYW1lIGNpcmN1bGFyIGxpbmtlZCBsaXN0LCBzbyB3
ZSBuZWVkIGEgc2luZ2xlIGNsYXNzIHR5cGUgaGVyZS4KLS8vCi0vLyBETyBOT1QgVVNFIFRISVMg
Q0xBU1MgRElSRUNUTFkgWU9VUlNFTEYuICBVc2UgbGlua2VkX3B0cjxUPi4KLWNsYXNzIGxpbmtl
ZF9wdHJfaW50ZXJuYWwgewotIHB1YmxpYzoKLSAgLy8gQ3JlYXRlIGEgbmV3IGNpcmNsZSB0aGF0
IGluY2x1ZGVzIG9ubHkgdGhpcyBpbnN0YW5jZS4KLSAgdm9pZCBqb2luX25ldygpIHsKLSAgICBu
ZXh0XyA9IHRoaXM7Ci0gIH0KLQotICAvLyBNYW55IGxpbmtlZF9wdHIgb3BlcmF0aW9ucyBtYXkg
Y2hhbmdlIHAubGlua18gZm9yIHNvbWUgbGlua2VkX3B0cgotICAvLyB2YXJpYWJsZSBwIGluIHRo
ZSBzYW1lIGNpcmNsZSBhcyB0aGlzIG9iamVjdC4gIFRoZXJlZm9yZSB3ZSBuZWVkCi0gIC8vIHRv
IHByZXZlbnQgdHdvIHN1Y2ggb3BlcmF0aW9ucyBmcm9tIG9jY3VycmluZyBjb25jdXJyZW50bHku
Ci0gIC8vCi0gIC8vIE5vdGUgdGhhdCBkaWZmZXJlbnQgdHlwZXMgb2YgbGlua2VkX3B0ciBvYmpl
Y3RzIGNhbiBjb2V4aXN0IGluIGEKLSAgLy8gY2lyY2xlIChlLmcuIGxpbmtlZF9wdHI8QmFzZT4s
IGxpbmtlZF9wdHI8RGVyaXZlZDE+LCBhbmQKLSAgLy8gbGlua2VkX3B0cjxEZXJpdmVkMj4pLiAg
VGhlcmVmb3JlIHdlIG11c3QgdXNlIGEgc2luZ2xlIG11dGV4IHRvCi0gIC8vIHByb3RlY3QgYWxs
IGxpbmtlZF9wdHIgb2JqZWN0cy4gIFRoaXMgY2FuIGNyZWF0ZSBzZXJpb3VzCi0gIC8vIGNvbnRl
bnRpb24gaW4gcHJvZHVjdGlvbiBjb2RlLCBidXQgaXMgYWNjZXB0YWJsZSBpbiBhIHRlc3RpbmcK
LSAgLy8gZnJhbWV3b3JrLgotCi0gIC8vIEpvaW4gYW4gZXhpc3RpbmcgY2lyY2xlLgotICB2b2lk
IGpvaW4obGlua2VkX3B0cl9pbnRlcm5hbCBjb25zdCogcHRyKQotICAgICAgR1RFU1RfTE9DS19F
WENMVURFRF8oZ19saW5rZWRfcHRyX211dGV4KSB7Ci0gICAgTXV0ZXhMb2NrIGxvY2soJmdfbGlu
a2VkX3B0cl9tdXRleCk7Ci0KLSAgICBsaW5rZWRfcHRyX2ludGVybmFsIGNvbnN0KiBwID0gcHRy
OwotICAgIHdoaWxlIChwLT5uZXh0XyAhPSBwdHIpIHsKLSAgICAgIGFzc2VydChwLT5uZXh0XyAh
PSB0aGlzICYmCi0gICAgICAgICAgICAgIlRyeWluZyB0byBqb2luKCkgYSBsaW5rZWQgcmluZyB3
ZSBhcmUgYWxyZWFkeSBpbi4gIgotICAgICAgICAgICAgICJJcyBHTW9jayB0aHJlYWQgc2FmZXR5
IGVuYWJsZWQ/Iik7Ci0gICAgICBwID0gcC0+bmV4dF87Ci0gICAgfQotICAgIHAtPm5leHRfID0g
dGhpczsKLSAgICBuZXh0XyA9IHB0cjsKLSAgfQotCi0gIC8vIExlYXZlIHdoYXRldmVyIGNpcmNs
ZSB3ZSdyZSBwYXJ0IG9mLiAgUmV0dXJucyB0cnVlIGlmIHdlIHdlcmUgdGhlCi0gIC8vIGxhc3Qg
bWVtYmVyIG9mIHRoZSBjaXJjbGUuICBPbmNlIHRoaXMgaXMgZG9uZSwgeW91IGNhbiBqb2luKCkg
YW5vdGhlci4KLSAgYm9vbCBkZXBhcnQoKQotICAgICAgR1RFU1RfTE9DS19FWENMVURFRF8oZ19s
aW5rZWRfcHRyX211dGV4KSB7Ci0gICAgTXV0ZXhMb2NrIGxvY2soJmdfbGlua2VkX3B0cl9tdXRl
eCk7Ci0KLSAgICBpZiAobmV4dF8gPT0gdGhpcykgcmV0dXJuIHRydWU7Ci0gICAgbGlua2VkX3B0
cl9pbnRlcm5hbCBjb25zdCogcCA9IG5leHRfOwotICAgIHdoaWxlIChwLT5uZXh0XyAhPSB0aGlz
KSB7Ci0gICAgICBhc3NlcnQocC0+bmV4dF8gIT0gbmV4dF8gJiYKLSAgICAgICAgICAgICAiVHJ5
aW5nIHRvIGRlcGFydCgpIGEgbGlua2VkIHJpbmcgd2UgYXJlIG5vdCBpbi4gIgotICAgICAgICAg
ICAgICJJcyBHTW9jayB0aHJlYWQgc2FmZXR5IGVuYWJsZWQ/Iik7Ci0gICAgICBwID0gcC0+bmV4
dF87Ci0gICAgfQotICAgIHAtPm5leHRfID0gbmV4dF87Ci0gICAgcmV0dXJuIGZhbHNlOwotICB9
Ci0KLSBwcml2YXRlOgotICBtdXRhYmxlIGxpbmtlZF9wdHJfaW50ZXJuYWwgY29uc3QqIG5leHRf
OwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1jbGFzcyBsaW5rZWRfcHRyIHsKLSBwdWJs
aWM6Ci0gIHR5cGVkZWYgVCBlbGVtZW50X3R5cGU7Ci0KLSAgLy8gVGFrZSBvdmVyIG93bmVyc2hp
cCBvZiBhIHJhdyBwb2ludGVyLiAgVGhpcyBzaG91bGQgaGFwcGVuIGFzIHNvb24gYXMKLSAgLy8g
cG9zc2libGUgYWZ0ZXIgdGhlIG9iamVjdCBpcyBjcmVhdGVkLgotICBleHBsaWNpdCBsaW5rZWRf
cHRyKFQqIHB0ciA9IE5VTEwpIHsgY2FwdHVyZShwdHIpOyB9Ci0gIH5saW5rZWRfcHRyKCkgeyBk
ZXBhcnQoKTsgfQotCi0gIC8vIENvcHkgYW4gZXhpc3RpbmcgbGlua2VkX3B0cjw+LCBhZGRpbmcg
b3Vyc2VsdmVzIHRvIHRoZSBsaXN0IG9mIHJlZmVyZW5jZXMuCi0gIHRlbXBsYXRlIDx0eXBlbmFt
ZSBVPiBsaW5rZWRfcHRyKGxpbmtlZF9wdHI8VT4gY29uc3QmIHB0cikgeyBjb3B5KCZwdHIpOyB9
Ci0gIGxpbmtlZF9wdHIobGlua2VkX3B0ciBjb25zdCYgcHRyKSB7ICAvLyBOT0xJTlQKLSAgICBh
c3NlcnQoJnB0ciAhPSB0aGlzKTsKLSAgICBjb3B5KCZwdHIpOwotICB9Ci0KLSAgLy8gQXNzaWdu
bWVudCByZWxlYXNlcyB0aGUgb2xkIHZhbHVlIGFuZCBhY3F1aXJlcyB0aGUgbmV3LgotICB0ZW1w
bGF0ZSA8dHlwZW5hbWUgVT4gbGlua2VkX3B0ciYgb3BlcmF0b3I9KGxpbmtlZF9wdHI8VT4gY29u
c3QmIHB0cikgewotICAgIGRlcGFydCgpOwotICAgIGNvcHkoJnB0cik7Ci0gICAgcmV0dXJuICp0
aGlzOwotICB9Ci0KLSAgbGlua2VkX3B0ciYgb3BlcmF0b3I9KGxpbmtlZF9wdHIgY29uc3QmIHB0
cikgewotICAgIGlmICgmcHRyICE9IHRoaXMpIHsKLSAgICAgIGRlcGFydCgpOwotICAgICAgY29w
eSgmcHRyKTsKLSAgICB9Ci0gICAgcmV0dXJuICp0aGlzOwotICB9Ci0KLSAgLy8gU21hcnQgcG9p
bnRlciBtZW1iZXJzLgotICB2b2lkIHJlc2V0KFQqIHB0ciA9IE5VTEwpIHsKLSAgICBkZXBhcnQo
KTsKLSAgICBjYXB0dXJlKHB0cik7Ci0gIH0KLSAgVCogZ2V0KCkgY29uc3QgeyByZXR1cm4gdmFs
dWVfOyB9Ci0gIFQqIG9wZXJhdG9yLT4oKSBjb25zdCB7IHJldHVybiB2YWx1ZV87IH0KLSAgVCYg
b3BlcmF0b3IqKCkgY29uc3QgeyByZXR1cm4gKnZhbHVlXzsgfQotCi0gIGJvb2wgb3BlcmF0b3I9
PShUKiBwKSBjb25zdCB7IHJldHVybiB2YWx1ZV8gPT0gcDsgfQotICBib29sIG9wZXJhdG9yIT0o
VCogcCkgY29uc3QgeyByZXR1cm4gdmFsdWVfICE9IHA7IH0KLSAgdGVtcGxhdGUgPHR5cGVuYW1l
IFU+Ci0gIGJvb2wgb3BlcmF0b3I9PShsaW5rZWRfcHRyPFU+IGNvbnN0JiBwdHIpIGNvbnN0IHsK
LSAgICByZXR1cm4gdmFsdWVfID09IHB0ci5nZXQoKTsKLSAgfQotICB0ZW1wbGF0ZSA8dHlwZW5h
bWUgVT4KLSAgYm9vbCBvcGVyYXRvciE9KGxpbmtlZF9wdHI8VT4gY29uc3QmIHB0cikgY29uc3Qg
ewotICAgIHJldHVybiB2YWx1ZV8gIT0gcHRyLmdldCgpOwotICB9Ci0KLSBwcml2YXRlOgotICB0
ZW1wbGF0ZSA8dHlwZW5hbWUgVT4KLSAgZnJpZW5kIGNsYXNzIGxpbmtlZF9wdHI7Ci0KLSAgVCog
dmFsdWVfOwotICBsaW5rZWRfcHRyX2ludGVybmFsIGxpbmtfOwotCi0gIHZvaWQgZGVwYXJ0KCkg
ewotICAgIGlmIChsaW5rXy5kZXBhcnQoKSkgZGVsZXRlIHZhbHVlXzsKLSAgfQotCi0gIHZvaWQg
Y2FwdHVyZShUKiBwdHIpIHsKLSAgICB2YWx1ZV8gPSBwdHI7Ci0gICAgbGlua18uam9pbl9uZXco
KTsKLSAgfQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBVPiB2b2lkIGNvcHkobGlua2VkX3B0cjxV
PiBjb25zdCogcHRyKSB7Ci0gICAgdmFsdWVfID0gcHRyLT5nZXQoKTsKLSAgICBpZiAodmFsdWVf
KQotICAgICAgbGlua18uam9pbigmcHRyLT5saW5rXyk7Ci0gICAgZWxzZQotICAgICAgbGlua18u
am9pbl9uZXcoKTsKLSAgfQotfTsKLQotdGVtcGxhdGU8dHlwZW5hbWUgVD4gaW5saW5lCi1ib29s
IG9wZXJhdG9yPT0oVCogcHRyLCBjb25zdCBsaW5rZWRfcHRyPFQ+JiB4KSB7Ci0gIHJldHVybiBw
dHIgPT0geC5nZXQoKTsKLX0KLQotdGVtcGxhdGU8dHlwZW5hbWUgVD4gaW5saW5lCi1ib29sIG9w
ZXJhdG9yIT0oVCogcHRyLCBjb25zdCBsaW5rZWRfcHRyPFQ+JiB4KSB7Ci0gIHJldHVybiBwdHIg
IT0geC5nZXQoKTsKLX0KLQotLy8gQSBmdW5jdGlvbiB0byBjb252ZXJ0IFQqIGludG8gbGlua2Vk
X3B0cjxUPgotLy8gRG9pbmcgZS5nLiBtYWtlX2xpbmtlZF9wdHIobmV3IEZvb0JhckJhejx0eXBl
PihhcmcpKSBpcyBhIHNob3J0ZXIgbm90YXRpb24KLS8vIGZvciBsaW5rZWRfcHRyPEZvb0JhckJh
ejx0eXBlPiA+KG5ldyBGb29CYXJCYXo8dHlwZT4oYXJnKSkKLXRlbXBsYXRlIDx0eXBlbmFtZSBU
PgotbGlua2VkX3B0cjxUPiBtYWtlX2xpbmtlZF9wdHIoVCogcHRyKSB7Ci0gIHJldHVybiBsaW5r
ZWRfcHRyPFQ+KHB0cik7Ci19Ci0KLX0gIC8vIG5hbWVzcGFjZSBpbnRlcm5hbAotfSAgLy8gbmFt
ZXNwYWNlIHRlc3RpbmcKLQotI2VuZGlmICAvLyBHVEVTVF9JTkNMVURFX0dURVNUX0lOVEVSTkFM
X0dURVNUX0xJTktFRF9QVFJfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkv
Z29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1wYXJhbS11dGlsLWdl
bmVyYXRlZC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRl
L2d0ZXN0L2ludGVybmFsL2d0ZXN0LXBhcmFtLXV0aWwtZ2VuZXJhdGVkLmgKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDRmYWM4YzAyNzAzZDU5MWViMmYyMmVmMTQ4NDFiNDI1NTZjNTA0
MDguLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0
ZXN0LXBhcmFtLXV0aWwtZ2VuZXJhdGVkLmgKKysrIC9kZXYvbnVsbApAQCAtMSw1NTUyICswLDAg
QEAKLS8vIFRoaXMgZmlsZSB3YXMgR0VORVJBVEVEIGJ5IGNvbW1hbmQ6Ci0vLyAgICAgcHVtcC5w
eSBndGVzdC1wYXJhbS11dGlsLWdlbmVyYXRlZC5oLnB1bXAKLS8vIERPIE5PVCBFRElUIEJZIEhB
TkQhISEKLQotLy8gQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4KLS8vIEFsbCBSaWdodHMgUmVz
ZXJ2ZWQuCi0vLwotLy8gUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0vLyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCi0vLyBtZXQ6Ci0vLwot
Ly8gICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKLS8vIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLS8vICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLS8vIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKLS8vIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUKLS8vIGRpc3RyaWJ1dGlvbi4KLS8vICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xl
IEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKLS8vIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0
byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCi0vLyB0aGlzIHNvZnR3
YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotLy8KLS8vIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05U
UklCVVRPUlMKLS8vICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UCi0vLyBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKLS8vIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0v
LyBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwKLS8vIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKLS8vIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAotLy8gREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZCi0vLyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUCi0vLyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLS8vIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0KLQot
Ly8gVHlwZSBhbmQgZnVuY3Rpb24gdXRpbGl0aWVzIGZvciBpbXBsZW1lbnRpbmcgcGFyYW1ldGVy
aXplZCB0ZXN0cy4KLS8vIFRoaXMgZmlsZSBpcyBnZW5lcmF0ZWQgYnkgYSBTQ1JJUFQuICBETyBO
T1QgRURJVCBCWSBIQU5EIQotLy8KLS8vIEN1cnJlbnRseSBHb29nbGUgVGVzdCBzdXBwb3J0cyBh
dCBtb3N0IDUwIGFyZ3VtZW50cyBpbiBWYWx1ZXMsCi0vLyBhbmQgYXQgbW9zdCAxMCBhcmd1bWVu
dHMgaW4gQ29tYmluZS4gUGxlYXNlIGNvbnRhY3QKLS8vIGdvb2dsZXRlc3RmcmFtZXdvcmtAZ29v
Z2xlZ3JvdXBzLmNvbSBpZiB5b3UgbmVlZCBtb3JlLgotLy8gUGxlYXNlIG5vdGUgdGhhdCB0aGUg
bnVtYmVyIG9mIGFyZ3VtZW50cyB0byBDb21iaW5lIGlzIGxpbWl0ZWQKLS8vIGJ5IHRoZSBtYXhp
bXVtIGFyaXR5IG9mIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0dXBsZSB3aGljaCBpcwotLy8gY3Vy
cmVudGx5IHNldCBhdCAxMC4KLQotLy8gR09PR0xFVEVTVF9DTTAwMDEgRE8gTk9UIERFTEVURQot
Ci0jaWZuZGVmIEdURVNUX0lOQ0xVREVfR1RFU1RfSU5URVJOQUxfR1RFU1RfUEFSQU1fVVRJTF9H
RU5FUkFURURfSF8KLSNkZWZpbmUgR1RFU1RfSU5DTFVERV9HVEVTVF9JTlRFUk5BTF9HVEVTVF9Q
QVJBTV9VVElMX0dFTkVSQVRFRF9IXwotCi0jaW5jbHVkZSAiZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3Qt
cGFyYW0tdXRpbC5oIgotI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQuaCIKLQot
bmFtZXNwYWNlIHRlc3RpbmcgewotCi0vLyBGb3J3YXJkIGRlY2xhcmF0aW9ucyBvZiBWYWx1ZXNJ
bigpLCB3aGljaCBpcyBpbXBsZW1lbnRlZCBpbgotLy8gaW5jbHVkZS9ndGVzdC9ndGVzdC1wYXJh
bS10ZXN0LmguCi10ZW1wbGF0ZSA8dHlwZW5hbWUgRm9yd2FyZEl0ZXJhdG9yPgotaW50ZXJuYWw6
OlBhcmFtR2VuZXJhdG9yPAotICB0eXBlbmFtZSA6OnRlc3Rpbmc6OmludGVybmFsOjpJdGVyYXRv
clRyYWl0czxGb3J3YXJkSXRlcmF0b3I+Ojp2YWx1ZV90eXBlPgotVmFsdWVzSW4oRm9yd2FyZEl0
ZXJhdG9yIGJlZ2luLCBGb3J3YXJkSXRlcmF0b3IgZW5kKTsKLQotdGVtcGxhdGUgPHR5cGVuYW1l
IFQsIHNpemVfdCBOPgotaW50ZXJuYWw6OlBhcmFtR2VuZXJhdG9yPFQ+IFZhbHVlc0luKGNvbnN0
IFQgKCZhcnJheSlbTl0pOwotCi10ZW1wbGF0ZSA8Y2xhc3MgQ29udGFpbmVyPgotaW50ZXJuYWw6
OlBhcmFtR2VuZXJhdG9yPHR5cGVuYW1lIENvbnRhaW5lcjo6dmFsdWVfdHlwZT4gVmFsdWVzSW4o
Ci0gICAgY29uc3QgQ29udGFpbmVyJiBjb250YWluZXIpOwotCi1uYW1lc3BhY2UgaW50ZXJuYWwg
ewotCi0vLyBVc2VkIGluIHRoZSBWYWx1ZXMoKSBmdW5jdGlvbiB0byBwcm92aWRlIHBvbHltb3Jw
aGljIGNhcGFiaWxpdGllcy4KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMT4KLWNsYXNzIFZhbHVlQXJy
YXkxIHsKLSBwdWJsaWM6Ci0gIGV4cGxpY2l0IFZhbHVlQXJyYXkxKFQxIHYxKSA6IHYxXyh2MSkg
e30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8
VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0YXRpY19jYXN0PFQ+KHYxXyl9
OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5MShjb25z
dCBWYWx1ZUFycmF5MSYgb3RoZXIpIDogdjFfKG90aGVyLnYxXykge30KLQotIHByaXZhdGU6Ci0g
IC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9p
ZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTEmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87
Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyPgotY2xhc3MgVmFsdWVB
cnJheTIgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTIoVDEgdjEsIFQyIHYyKSA6IHYxXyh2MSks
IHYyXyh2Mikge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFyYW1H
ZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0YXRpY19jYXN0
PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyl9OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJh
eSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5Mihjb25zdCBWYWx1ZUFycmF5MiYgb3RoZXIpIDogdjFf
KG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBs
ZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9
KGNvbnN0IFZhbHVlQXJyYXkyJiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBU
MiB2Ml87Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFt
ZSBUMz4KLWNsYXNzIFZhbHVlQXJyYXkzIHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXkzKFQxIHYx
LCBUMiB2MiwgVDMgdjMpIDogdjFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSB7fQotCi0gIHRlbXBs
YXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsK
LSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8
VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjNfKX07Ci0gICAgcmV0dXJuIFZhbHVl
c0luKGFycmF5KTsKLSAgfQotCi0gIFZhbHVlQXJyYXkzKGNvbnN0IFZhbHVlQXJyYXkzJiBvdGhl
cikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyksCi0gICAgICB2M18ob3RoZXIudjNf
KSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlz
IHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MyYgb3RoZXIp
OwotCi0gIGNvbnN0IFQxIHYxXzsKLSAgY29uc3QgVDIgdjJfOwotICBjb25zdCBUMyB2M187Ci19
OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlw
ZW5hbWUgVDQ+Ci1jbGFzcyBWYWx1ZUFycmF5NCB7Ci0gcHVibGljOgotICBWYWx1ZUFycmF5NChU
MSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCkgOiB2MV8odjEpLCB2Ml8odjIpLCB2M18odjMpLAot
ICAgICAgdjRfKHY0KSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQ
YXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGlj
X2Nhc3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjNfKSwgc3RhdGljX2Nhc3Q8VD4odjRfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5
KTsKLSAgfQotCi0gIFZhbHVlQXJyYXk0KGNvbnN0IFZhbHVlQXJyYXk0JiBvdGhlcikgOiB2MV8o
b3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyksCi0gICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90
aGVyLnY0Xykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdu
bWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTQm
IG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMg
djNfOwotICBjb25zdCBUNCB2NF87Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVu
YW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1PgotY2xhc3MgVmFs
dWVBcnJheTUgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTUoVDEgdjEsIFQyIHYyLCBUMyB2Mywg
VDQgdjQsIFQ1IHY1KSA6IHYxXyh2MSksIHYyXyh2MiksIHYzXyh2MyksCi0gICAgICB2NF8odjQp
LCB2NV8odjUpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFt
R2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2Fz
dDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2
M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2NV8pfTsKLSAgICByZXR1
cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTUoY29uc3QgVmFsdWVBcnJh
eTUmIG90aGVyKSA6IHYxXyhvdGhlci52MV8pLCB2Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhv
dGhlci52M18pLCB2NF8ob3RoZXIudjRfKSwgdjVfKG90aGVyLnY1Xykge30KLQotIHByaXZhdGU6
Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAg
dm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTUmIG90aGVyKTsKLQotICBjb25zdCBUMSB2
MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0g
IGNvbnN0IFQ1IHY1XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIs
IHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDY+
Ci1jbGFzcyBWYWx1ZUFycmF5NiB7Ci0gcHVibGljOgotICBWYWx1ZUFycmF5NihUMSB2MSwgVDIg
djIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2KSA6IHYxXyh2MSksIHYyXyh2MiksCi0gICAg
ICB2M18odjMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5
cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNv
bnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8p
LAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0
aWNfY2FzdDxUPih2NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pfTsKLSAgICByZXR1
cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTYoY29uc3QgVmFsdWVBcnJh
eTYmIG90aGVyKSA6IHYxXyhvdGhlci52MV8pLCB2Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhv
dGhlci52M18pLCB2NF8ob3RoZXIudjRfKSwgdjVfKG90aGVyLnY1XyksIHY2XyhvdGhlci52Nl8p
IHt9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMg
dW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IFZhbHVlQXJyYXk2JiBvdGhlcik7
Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsKLSAg
Y29uc3QgVDQgdjRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLX07Ci0KLXRl
bXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBU
NCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3PgotY2xhc3MgVmFs
dWVBcnJheTcgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTcoVDEgdjEsIFQyIHYyLCBUMyB2Mywg
VDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcpIDogdjFfKHYxKSwKLSAgICAgIHYyXyh2MiksIHYz
Xyh2MyksIHY0Xyh2NCksIHY1Xyh2NSksIHY2Xyh2NiksIHY3Xyh2Nykge30KLQotICB0ZW1wbGF0
ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0g
ICAgY29uc3QgVCBhcnJheVtdID0ge3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+
KHYyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0Xyks
IHN0YXRpY19jYXN0PFQ+KHY1XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRp
Y19jYXN0PFQ+KHY3Xyl9OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBW
YWx1ZUFycmF5Nyhjb25zdCBWYWx1ZUFycmF5NyYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYy
XyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8o
b3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSB7fQotCi0g
cHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9y
dGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5NyYgb3RoZXIpOwotCi0gIGNv
bnN0IFQxIHYxXzsKLSAgY29uc3QgVDIgdjJfOwotICBjb25zdCBUMyB2M187Ci0gIGNvbnN0IFQ0
IHY0XzsKLSAgY29uc3QgVDUgdjVfOwotICBjb25zdCBUNiB2Nl87Ci0gIGNvbnN0IFQ3IHY3XzsK
LX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0
eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0
eXBlbmFtZSBUOD4KLWNsYXNzIFZhbHVlQXJyYXk4IHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXk4
KFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LAotICAgICAg
VDggdjgpIDogdjFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSwgdjRfKHY0KSwgdjVfKHY1KSwgdjZf
KHY2KSwgdjdfKHY3KSwKLSAgICAgIHY4Xyh2OCkge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUg
VD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBh
cnJheVtdID0ge3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAg
ICAgIHN0YXRpY19jYXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0
PFQ+KHY1XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3
XyksIHN0YXRpY19jYXN0PFQ+KHY4Xyl9OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0g
IH0KLQotICBWYWx1ZUFycmF5OChjb25zdCBWYWx1ZUFycmF5OCYgb3RoZXIpIDogdjFfKG90aGVy
LnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52
NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdf
KSwgdjhfKG90aGVyLnY4Xykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9u
IC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFs
dWVBcnJheTgmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAg
Y29uc3QgVDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3Qg
VDYgdjZfOwotICBjb25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLX07Ci0KLXRlbXBsYXRl
IDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlw
ZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlw
ZW5hbWUgVDk+Ci1jbGFzcyBWYWx1ZUFycmF5OSB7Ci0gcHVibGljOgotICBWYWx1ZUFycmF5OShU
MSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsCi0g
ICAgICBUOSB2OSkgOiB2MV8odjEpLCB2Ml8odjIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8odjUp
LCB2Nl8odjYpLCB2N18odjcpLAotICAgICAgdjhfKHY4KSwgdjlfKHY5KSB7fQotCi0gIHRlbXBs
YXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsK
LSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8
VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjNfKSwgc3RhdGljX2Nhc3Q8VD4odjRf
KSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjZfKSwgc3Rh
dGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8VD4odjhfKSwKLSAgICAgICAgc3RhdGljX2Nh
c3Q8VD4odjlfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5KTsKLSAgfQotCi0gIFZhbHVl
QXJyYXk5KGNvbnN0IFZhbHVlQXJyYXk5JiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90
aGVyLnYyXyksCi0gICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhl
ci52NV8pLCB2Nl8ob3RoZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIu
djhfKSwgdjlfKG90aGVyLnY5Xykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0
aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3Qg
VmFsdWVBcnJheTkmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsK
LSAgY29uc3QgVDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29u
c3QgVDYgdjZfOwotICBjb25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkg
djlfOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUg
VDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUg
VDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwPgotY2xhc3MgVmFsdWVB
cnJheTEwIHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXkxMChUMSB2MSwgVDIgdjIsIFQzIHYzLCBU
NCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAgICAgVDEwIHYxMCkg
OiB2MV8odjEpLCB2Ml8odjIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpLCB2
N18odjcpLAotICAgICAgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApIHt9Ci0KLSAgdGVtcGxh
dGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3Qgewot
ICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxU
Pih2Ml8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8p
LCBzdGF0aWNfY2FzdDxUPih2NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0
aWNfY2FzdDxUPih2N18pLCBzdGF0aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBzdGF0aWNfY2Fz
dDxUPih2OV8pLCBzdGF0aWNfY2FzdDxUPih2MTBfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFy
cmF5KTsKLSAgfQotCi0gIFZhbHVlQXJyYXkxMChjb25zdCBWYWx1ZUFycmF5MTAmIG90aGVyKSA6
IHYxXyhvdGhlci52MV8pLCB2Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52M18pLCB2
NF8ob3RoZXIudjRfKSwgdjVfKG90aGVyLnY1XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAgdjdf
KG90aGVyLnY3XyksIHY4XyhvdGhlci52OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhlci52
MTBfKSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50
IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MTAmIG90
aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNf
OwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBj
b25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBU
MTAgdjEwXzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVu
YW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVu
YW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBl
bmFtZSBUMTE+Ci1jbGFzcyBWYWx1ZUFycmF5MTEgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTEx
KFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwg
VDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExKSA6IHYxXyh2MSksIHYyXyh2MiksIHYzXyh2
MyksIHY0Xyh2NCksIHY1Xyh2NSksIHY2Xyh2NiksCi0gICAgICB2N18odjcpLCB2OF8odjgpLCB2
OV8odjkpLCB2MTBfKHYxMCksIHYxMV8odjExKSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBU
PgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFy
cmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjNfKSwgc3RhdGljX2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8
VD4odjVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdf
KSwgc3RhdGljX2Nhc3Q8VD4odjhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3Rh
dGljX2Nhc3Q8VD4odjEwXyksIHN0YXRpY19jYXN0PFQ+KHYxMV8pfTsKLSAgICByZXR1cm4gVmFs
dWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTExKGNvbnN0IFZhbHVlQXJyYXkxMSYg
b3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVy
LnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0g
ICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2MTBf
KG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSB7fQotCi0gcHJpdmF0ZToKLSAg
Ly8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lk
IG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MTEmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87
Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNv
bnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBjb25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4
IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBUMTAgdjEwXzsKLSAgY29uc3QgVDExIHYx
MV87Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBU
MywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBU
NywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUg
VDExLCB0eXBlbmFtZSBUMTI+Ci1jbGFzcyBWYWx1ZUFycmF5MTIgewotIHB1YmxpYzoKLSAgVmFs
dWVBcnJheTEyKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3
LCBUOCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyKSA6IHYxXyh2
MSksIHYyXyh2MiksIHYzXyh2MyksIHY0Xyh2NCksIHY1Xyh2NSksCi0gICAgICB2Nl8odjYpLCB2
N18odjcpLCB2OF8odjgpLCB2OV8odjkpLCB2MTBfKHYxMCksIHYxMV8odjExKSwgdjEyXyh2MTIp
IHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9y
PFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8p
LCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0
aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2NV8pLAotICAgICAgICBzdGF0aWNfY2Fz
dDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18pLCBzdGF0aWNfY2FzdDxUPih2OF8pLAotICAg
ICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNfY2FzdDxUPih2MTBfKSwgc3RhdGljX2Nh
c3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxMl8pfTsKLSAgICByZXR1cm4g
VmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTEyKGNvbnN0IFZhbHVlQXJyYXkx
MiYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90
aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2Xyks
Ci0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2
MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJf
KSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlz
IHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MTImIG90aGVy
KTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNfOwot
ICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBjb25z
dCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBUMTAg
djEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotfTsKLQotdGVtcGxh
dGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0
eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0
eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEy
LCB0eXBlbmFtZSBUMTM+Ci1jbGFzcyBWYWx1ZUFycmF5MTMgewotIHB1YmxpYzoKLSAgVmFsdWVB
cnJheTEzKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBU
OCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzKSA6
IHYxXyh2MSksIHYyXyh2MiksIHYzXyh2MyksIHY0Xyh2NCksCi0gICAgICB2NV8odjUpLCB2Nl8o
djYpLCB2N18odjcpLCB2OF8odjgpLCB2OV8odjkpLCB2MTBfKHYxMCksIHYxMV8odjExKSwKLSAg
ICAgIHYxMl8odjEyKSwgdjEzXyh2MTMpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0g
IG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlb
XSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBz
dGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2
NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18pLCBz
dGF0aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNf
Y2FzdDxUPih2MTBfKSwgc3RhdGljX2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19jYXN0
PFQ+KHYxMl8pLCBzdGF0aWNfY2FzdDxUPih2MTNfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFy
cmF5KTsKLSAgfQotCi0gIFZhbHVlQXJyYXkxMyhjb25zdCBWYWx1ZUFycmF5MTMmIG90aGVyKSA6
IHYxXyhvdGhlci52MV8pLCB2Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52M18pLCB2
NF8ob3RoZXIudjRfKSwgdjVfKG90aGVyLnY1XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAgdjdf
KG90aGVyLnY3XyksIHY4XyhvdGhlci52OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhlci52
MTBfKSwKLSAgICAgIHYxMV8ob3RoZXIudjExXyksIHYxMl8ob3RoZXIudjEyXyksIHYxM18ob3Ro
ZXIudjEzXykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdu
bWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTEz
JiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQz
IHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsK
LSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29u
c3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwotICBjb25zdCBUMTIgdjEyXzsKLSAgY29u
c3QgVDEzIHYxM187Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0
eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0
eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAg
dHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0Pgot
Y2xhc3MgVmFsdWVBcnJheTE0IHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXkxNChUMSB2MSwgVDIg
djIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAg
ICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0IHYxNCkgOiB2MV8odjEp
LCB2Ml8odjIpLCB2M18odjMpLAotICAgICAgdjRfKHY0KSwgdjVfKHY1KSwgdjZfKHY2KSwgdjdf
KHY3KSwgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLAotICAgICAgdjExXyh2MTEpLCB2MTJf
KHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+
Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJy
YXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAg
ICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxU
Pih2NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18p
LCBzdGF0aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0
aWNfY2FzdDxUPih2MTBfKSwgc3RhdGljX2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHYxMl8pLCBzdGF0aWNfY2FzdDxUPih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4odjE0Xyl9
OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5MTQoY29u
c3QgVmFsdWVBcnJheTE0JiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyks
Ci0gICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhlci52NV8pLCB2
Nl8ob3RoZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIudjhfKSwgdjlf
KG90aGVyLnY5XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFfKG90aGVyLnYxMV8pLCB2
MTJfKG90aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90aGVyLnYxNF8pIHt9Ci0K
LSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBw
b3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IFZhbHVlQXJyYXkxNCYgb3RoZXIpOwotCi0g
IGNvbnN0IFQxIHYxXzsKLSAgY29uc3QgVDIgdjJfOwotICBjb25zdCBUMyB2M187Ci0gIGNvbnN0
IFQ0IHY0XzsKLSAgY29uc3QgVDUgdjVfOwotICBjb25zdCBUNiB2Nl87Ci0gIGNvbnN0IFQ3IHY3
XzsKLSAgY29uc3QgVDggdjhfOwotICBjb25zdCBUOSB2OV87Ci0gIGNvbnN0IFQxMCB2MTBfOwot
ICBjb25zdCBUMTEgdjExXzsKLSAgY29uc3QgVDEyIHYxMl87Ci0gIGNvbnN0IFQxMyB2MTNfOwot
ICBjb25zdCBUMTQgdjE0XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUg
VDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUg
VDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwK
LSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBU
MTQsIHR5cGVuYW1lIFQxNT4KLWNsYXNzIFZhbHVlQXJyYXkxNSB7Ci0gcHVibGljOgotICBWYWx1
ZUFycmF5MTUoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcs
IFQ4IHY4LCBUOSB2OSwKLSAgICAgIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMs
IFQxNCB2MTQsIFQxNSB2MTUpIDogdjFfKHYxKSwgdjJfKHYyKSwKLSAgICAgIHYzXyh2MyksIHY0
Xyh2NCksIHY1Xyh2NSksIHY2Xyh2NiksIHY3Xyh2NyksIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8o
djEwKSwKLSAgICAgIHYxMV8odjExKSwgdjEyXyh2MTIpLCB2MTNfKHYxMyksIHYxNF8odjE0KSwg
djE1Xyh2MTUpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFt
R2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2Fz
dDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2
M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2NV8pLAotICAgICAgICBz
dGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18pLCBzdGF0aWNfY2FzdDxUPih2
OF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNfY2FzdDxUPih2MTBfKSwg
c3RhdGljX2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxMl8pLCBzdGF0
aWNfY2FzdDxUPih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4odjE0XyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHYxNV8pfTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFs
dWVBcnJheTE1KGNvbnN0IFZhbHVlQXJyYXkxNSYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYy
XyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8o
b3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90
aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhv
dGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhl
ci52MTRfKSwKLSAgICAgIHYxNV8ob3RoZXIudjE1Xykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5v
IGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVy
YXRvcj0oY29uc3QgVmFsdWVBcnJheTE1JiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBj
b25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBU
NSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87
Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwot
ICBjb25zdCBUMTIgdjEyXzsKLSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRfOwot
ICBjb25zdCBUMTUgdjE1XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUg
VDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUg
VDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwK
LSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBU
MTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTY+Ci1jbGFzcyBWYWx1ZUFycmF5MTYg
ewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTE2KFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBU
NSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjEx
LCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2KSA6IHYxXyh2MSks
Ci0gICAgICB2Ml8odjIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpLCB2N18o
djcpLCB2OF8odjgpLCB2OV8odjkpLAotICAgICAgdjEwXyh2MTApLCB2MTFfKHYxMSksIHYxMl8o
djEyKSwgdjEzXyh2MTMpLCB2MTRfKHYxNCksIHYxNV8odjE1KSwKLSAgICAgIHYxNl8odjE2KSB7
fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjxU
PigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4odjFfKSwg
c3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjNfKSwgc3RhdGlj
X2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8VD4odjhfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4odjEwXyksIHN0YXRpY19jYXN0
PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTJfKSwgc3RhdGljX2Nhc3Q8VD4o
djEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTVf
KSwgc3RhdGljX2Nhc3Q8VD4odjE2Xyl9OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0g
IH0KLQotICBWYWx1ZUFycmF5MTYoY29uc3QgVmFsdWVBcnJheTE2JiBvdGhlcikgOiB2MV8ob3Ro
ZXIudjFfKSwgdjJfKG90aGVyLnYyXyksCi0gICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVy
LnY0XyksIHY1XyhvdGhlci52NV8pLCB2Nl8ob3RoZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52
N18pLCB2OF8ob3RoZXIudjhfKSwgdjlfKG90aGVyLnY5XyksIHYxMF8ob3RoZXIudjEwXyksCi0g
ICAgICB2MTFfKG90aGVyLnYxMV8pLCB2MTJfKG90aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYxM18p
LCB2MTRfKG90aGVyLnYxNF8pLAotICAgICAgdjE1XyhvdGhlci52MTVfKSwgdjE2XyhvdGhlci52
MTZfKSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50
IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MTYmIG90
aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNf
OwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBj
b25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBU
MTAgdjEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotICBjb25zdCBU
MTMgdjEzXzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwotICBjb25zdCBU
MTYgdjE2XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVu
YW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVu
YW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBl
bmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVu
YW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNz4KLWNsYXNzIFZhbHVlQXJy
YXkxNyB7Ci0gcHVibGljOgotICBWYWx1ZUFycmF5MTcoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQg
djQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwKLSAgICAgIFQxMCB2MTAsIFQx
MSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsCi0gICAg
ICBUMTcgdjE3KSA6IHYxXyh2MSksIHYyXyh2MiksIHYzXyh2MyksIHY0Xyh2NCksIHY1Xyh2NSks
IHY2Xyh2NiksIHY3Xyh2NyksCi0gICAgICB2OF8odjgpLCB2OV8odjkpLCB2MTBfKHYxMCksIHYx
MV8odjExKSwgdjEyXyh2MTIpLCB2MTNfKHYxMyksIHYxNF8odjE0KSwKLSAgICAgIHYxNV8odjE1
KSwgdjE2Xyh2MTYpLCB2MTdfKHYxNykge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAg
b3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtd
ID0ge3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0
YXRpY19jYXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1
XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0
YXRpY19jYXN0PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19j
YXN0PFQ+KHYxMF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjEyXyksIHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAg
ICAgICAgc3RhdGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNf
Y2FzdDxUPih2MTdfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5KTsKLSAgfQotCi0gIFZh
bHVlQXJyYXkxNyhjb25zdCBWYWx1ZUFycmF5MTcmIG90aGVyKSA6IHYxXyhvdGhlci52MV8pLCB2
Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52M18pLCB2NF8ob3RoZXIudjRfKSwgdjVf
KG90aGVyLnY1XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAgdjdfKG90aGVyLnY3XyksIHY4Xyhv
dGhlci52OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhlci52MTBfKSwKLSAgICAgIHYxMV8o
b3RoZXIudjExXyksIHYxMl8ob3RoZXIudjEyXyksIHYxM18ob3RoZXIudjEzXyksIHYxNF8ob3Ro
ZXIudjE0XyksCi0gICAgICB2MTVfKG90aGVyLnYxNV8pLCB2MTZfKG90aGVyLnYxNl8pLCB2MTdf
KG90aGVyLnYxN18pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFz
c2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IFZhbHVlQXJy
YXkxNyYgb3RoZXIpOwotCi0gIGNvbnN0IFQxIHYxXzsKLSAgY29uc3QgVDIgdjJfOwotICBjb25z
dCBUMyB2M187Ci0gIGNvbnN0IFQ0IHY0XzsKLSAgY29uc3QgVDUgdjVfOwotICBjb25zdCBUNiB2
Nl87Ci0gIGNvbnN0IFQ3IHY3XzsKLSAgY29uc3QgVDggdjhfOwotICBjb25zdCBUOSB2OV87Ci0g
IGNvbnN0IFQxMCB2MTBfOwotICBjb25zdCBUMTEgdjExXzsKLSAgY29uc3QgVDEyIHYxMl87Ci0g
IGNvbnN0IFQxMyB2MTNfOwotICBjb25zdCBUMTQgdjE0XzsKLSAgY29uc3QgVDE1IHYxNV87Ci0g
IGNvbnN0IFQxNiB2MTZfOwotICBjb25zdCBUMTcgdjE3XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBl
bmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUg
VDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUg
VDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5h
bWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5
cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4PgotY2xhc3MgVmFsdWVBcnJheTE4IHsKLSBwdWJsaWM6
Ci0gIFZhbHVlQXJyYXkxOChUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2
LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAgICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwg
VDEzIHYxMywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywKLSAgICAgIFQxOCB2
MTgpIDogdjFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSwgdjRfKHY0KSwgdjVfKHY1KSwgdjZfKHY2
KSwgdjdfKHY3KSwKLSAgICAgIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwgdjExXyh2MTEp
LCB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQpLAotICAgICAgdjE1Xyh2MTUpLCB2MTZf
KHYxNiksIHYxN18odjE3KSwgdjE4Xyh2MTgpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+
Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJy
YXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAg
ICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxU
Pih2NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18p
LCBzdGF0aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0
aWNfY2FzdDxUPih2MTBfKSwgc3RhdGljX2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHYxMl8pLCBzdGF0aWNfY2FzdDxUPih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4odjE0Xyks
Ci0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxNV8pLCBzdGF0aWNfY2FzdDxUPih2MTZfKSwgc3Rh
dGljX2Nhc3Q8VD4odjE3XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxOF8pfTsKLSAgICBy
ZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTE4KGNvbnN0IFZhbHVl
QXJyYXkxOCYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAg
djNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVy
LnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52
OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhl
ci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRfKSwKLSAgICAgIHYxNV8o
b3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIudjE3XyksIHYxOF8ob3Ro
ZXIudjE4Xykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdu
bWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTE4
JiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQz
IHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsK
LSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29u
c3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwotICBjb25zdCBUMTIgdjEyXzsKLSAgY29u
c3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRfOwotICBjb25zdCBUMTUgdjE1XzsKLSAgY29u
c3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQxNyB2MTdfOwotICBjb25zdCBUMTggdjE4XzsKLX07Ci0K
LXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFt
ZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFt
ZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVu
YW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0
eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTk+Ci1j
bGFzcyBWYWx1ZUFycmF5MTkgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTE5KFQxIHYxLCBUMiB2
MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAg
ICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBU
MTYgdjE2LCBUMTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYxOSkgOiB2MV8odjEpLCB2Ml8o
djIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpLAotICAgICAgdjdfKHY3KSwg
djhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLCB2MTFfKHYxMSksIHYxMl8odjEyKSwgdjEzXyh2
MTMpLAotICAgICAgdjE0Xyh2MTQpLCB2MTVfKHYxNSksIHYxNl8odjE2KSwgdjE3Xyh2MTcpLCB2
MThfKHYxOCksIHYxOV8odjE5KSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVy
YXRvciBQYXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7
c3RhdGljX2Nhc3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8VD4odjNfKSwgc3RhdGljX2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGlj
X2Nhc3Q8VD4odjhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8
VD4odjEwXyksIHN0YXRpY19jYXN0PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2
MTJfKSwgc3RhdGljX2Nhc3Q8VD4odjEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAg
ICBzdGF0aWNfY2FzdDxUPih2MTVfKSwgc3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19jYXN0
PFQ+KHYxN18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8VD4o
djE5Xyl9OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5
MTkoY29uc3QgVmFsdWVBcnJheTE5JiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90aGVy
LnYyXyksCi0gICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhlci52
NV8pLCB2Nl8ob3RoZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIudjhf
KSwgdjlfKG90aGVyLnY5XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFfKG90aGVyLnYx
MV8pLCB2MTJfKG90aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90aGVyLnYxNF8p
LAotICAgICAgdjE1XyhvdGhlci52MTVfKSwgdjE2XyhvdGhlci52MTZfKSwgdjE3XyhvdGhlci52
MTdfKSwgdjE4XyhvdGhlci52MThfKSwKLSAgICAgIHYxOV8ob3RoZXIudjE5Xykge30KLQotIHBy
aXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRl
ZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTE5JiBvdGhlcik7Ci0KLSAgY29u
c3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3QgVDQg
djRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcgdjdfOwot
ICBjb25zdCBUOCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87Ci0gIGNv
bnN0IFQxMSB2MTFfOwotICBjb25zdCBUMTIgdjEyXzsKLSAgY29uc3QgVDEzIHYxM187Ci0gIGNv
bnN0IFQxNCB2MTRfOwotICBjb25zdCBUMTUgdjE1XzsKLSAgY29uc3QgVDE2IHYxNl87Ci0gIGNv
bnN0IFQxNyB2MTdfOwotICBjb25zdCBUMTggdjE4XzsKLSAgY29uc3QgVDE5IHYxOV87Ci19Owot
Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5h
bWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5h
bWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBl
bmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAg
dHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0
eXBlbmFtZSBUMjA+Ci1jbGFzcyBWYWx1ZUFycmF5MjAgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJh
eTIwKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2
OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQg
djE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYxOSwg
VDIwIHYyMCkgOiB2MV8odjEpLCB2Ml8odjIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8odjUpLAot
ICAgICAgdjZfKHY2KSwgdjdfKHY3KSwgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLCB2MTFf
KHYxMSksIHYxMl8odjEyKSwKLSAgICAgIHYxM18odjEzKSwgdjE0Xyh2MTQpLCB2MTVfKHYxNSks
IHYxNl8odjE2KSwgdjE3Xyh2MTcpLCB2MThfKHYxOCksCi0gICAgICB2MTlfKHYxOSksIHYyMF8o
djIwKSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJhbUdlbmVy
YXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4o
djFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjNfKSwg
c3RhdGljX2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8VD4odjhfKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4odjEwXyksIHN0YXRp
Y19jYXN0PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTJfKSwgc3RhdGljX2Nh
c3Q8VD4odjEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxU
Pih2MTVfKSwgc3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19jYXN0PFQ+KHYxN18pLAotICAg
ICAgICBzdGF0aWNfY2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8VD4odjE5XyksIHN0YXRpY19j
YXN0PFQ+KHYyMF8pfTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFs
dWVBcnJheTIwKGNvbnN0IFZhbHVlQXJyYXkyMCYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYy
XyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8o
b3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90
aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhv
dGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhl
ci52MTRfKSwKLSAgICAgIHYxNV8ob3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18o
b3RoZXIudjE3XyksIHYxOF8ob3RoZXIudjE4XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2
MjBfKG90aGVyLnYyMF8pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAt
IGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IFZhbHVl
QXJyYXkyMCYgb3RoZXIpOwotCi0gIGNvbnN0IFQxIHYxXzsKLSAgY29uc3QgVDIgdjJfOwotICBj
b25zdCBUMyB2M187Ci0gIGNvbnN0IFQ0IHY0XzsKLSAgY29uc3QgVDUgdjVfOwotICBjb25zdCBU
NiB2Nl87Ci0gIGNvbnN0IFQ3IHY3XzsKLSAgY29uc3QgVDggdjhfOwotICBjb25zdCBUOSB2OV87
Ci0gIGNvbnN0IFQxMCB2MTBfOwotICBjb25zdCBUMTEgdjExXzsKLSAgY29uc3QgVDEyIHYxMl87
Ci0gIGNvbnN0IFQxMyB2MTNfOwotICBjb25zdCBUMTQgdjE0XzsKLSAgY29uc3QgVDE1IHYxNV87
Ci0gIGNvbnN0IFQxNiB2MTZfOwotICBjb25zdCBUMTcgdjE3XzsKLSAgY29uc3QgVDE4IHYxOF87
Ci0gIGNvbnN0IFQxOSB2MTlfOwotICBjb25zdCBUMjAgdjIwXzsKLX07Ci0KLXRlbXBsYXRlIDx0
eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5h
bWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5h
bWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlw
ZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYs
IHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwK
LSAgICB0eXBlbmFtZSBUMjE+Ci1jbGFzcyBWYWx1ZUFycmF5MjEgewotIHB1YmxpYzoKLSAgVmFs
dWVBcnJheTIxKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3
LCBUOCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEz
LCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5
IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSkgOiB2MV8odjEpLCB2Ml8odjIpLCB2M18odjMpLCB2NF8o
djQpLAotICAgICAgdjVfKHY1KSwgdjZfKHY2KSwgdjdfKHY3KSwgdjhfKHY4KSwgdjlfKHY5KSwg
djEwXyh2MTApLCB2MTFfKHYxMSksCi0gICAgICB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0Xyh2
MTQpLCB2MTVfKHYxNSksIHYxNl8odjE2KSwgdjE3Xyh2MTcpLAotICAgICAgdjE4Xyh2MTgpLCB2
MTlfKHYxOSksIHYyMF8odjIwKSwgdjIxXyh2MjEpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1l
IFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQg
YXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAg
ICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2Fz
dDxUPih2NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2
N18pLCBzdGF0aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBz
dGF0aWNfY2FzdDxUPih2MTBfKSwgc3RhdGljX2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRp
Y19jYXN0PFQ+KHYxMl8pLCBzdGF0aWNfY2FzdDxUPih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4odjE0
XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxNV8pLCBzdGF0aWNfY2FzdDxUPih2MTZfKSwg
c3RhdGljX2Nhc3Q8VD4odjE3XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxOF8pLCBzdGF0
aWNfY2FzdDxUPih2MTlfKSwgc3RhdGljX2Nhc3Q8VD4odjIwXyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHYyMV8pfTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFs
dWVBcnJheTIxKGNvbnN0IFZhbHVlQXJyYXkyMSYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYy
XyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8o
b3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90
aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhv
dGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhl
ci52MTRfKSwKLSAgICAgIHYxNV8ob3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18o
b3RoZXIudjE3XyksIHYxOF8ob3RoZXIudjE4XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2
MjBfKG90aGVyLnYyMF8pLCB2MjFfKG90aGVyLnYyMV8pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBO
byBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3Bl
cmF0b3I9KGNvbnN0IFZhbHVlQXJyYXkyMSYgb3RoZXIpOwotCi0gIGNvbnN0IFQxIHYxXzsKLSAg
Y29uc3QgVDIgdjJfOwotICBjb25zdCBUMyB2M187Ci0gIGNvbnN0IFQ0IHY0XzsKLSAgY29uc3Qg
VDUgdjVfOwotICBjb25zdCBUNiB2Nl87Ci0gIGNvbnN0IFQ3IHY3XzsKLSAgY29uc3QgVDggdjhf
OwotICBjb25zdCBUOSB2OV87Ci0gIGNvbnN0IFQxMCB2MTBfOwotICBjb25zdCBUMTEgdjExXzsK
LSAgY29uc3QgVDEyIHYxMl87Ci0gIGNvbnN0IFQxMyB2MTNfOwotICBjb25zdCBUMTQgdjE0XzsK
LSAgY29uc3QgVDE1IHYxNV87Ci0gIGNvbnN0IFQxNiB2MTZfOwotICBjb25zdCBUMTcgdjE3XzsK
LSAgY29uc3QgVDE4IHYxOF87Ci0gIGNvbnN0IFQxOSB2MTlfOwotICBjb25zdCBUMjAgdjIwXzsK
LSAgY29uc3QgVDIxIHYyMV87Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1l
IFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1l
IFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAs
Ci0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUg
VDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVu
YW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0
eXBlbmFtZSBUMjI+Ci1jbGFzcyBWYWx1ZUFycmF5MjIgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJh
eTIyKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2
OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQg
djE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYxOSwg
VDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMikgOiB2MV8odjEpLCB2Ml8odjIpLCB2M18odjMpLAot
ICAgICAgdjRfKHY0KSwgdjVfKHY1KSwgdjZfKHY2KSwgdjdfKHY3KSwgdjhfKHY4KSwgdjlfKHY5
KSwgdjEwXyh2MTApLAotICAgICAgdjExXyh2MTEpLCB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0
Xyh2MTQpLCB2MTVfKHYxNSksIHYxNl8odjE2KSwKLSAgICAgIHYxN18odjE3KSwgdjE4Xyh2MTgp
LCB2MTlfKHYxOSksIHYyMF8odjIwKSwgdjIxXyh2MjEpLCB2MjJfKHYyMikge30KLQotICB0ZW1w
bGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7
Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0
PFQ+KHYyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0
XyksIHN0YXRpY19jYXN0PFQ+KHY1XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0
YXRpY19jYXN0PFQ+KHY3XyksIHN0YXRpY19jYXN0PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHY5XyksIHN0YXRpY19jYXN0PFQ+KHYxMF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjEyXyksIHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0
aWNfY2FzdDxUPih2MTRfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19j
YXN0PFQ+KHYxNl8pLCBzdGF0aWNfY2FzdDxUPih2MTdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjE4XyksIHN0YXRpY19jYXN0PFQ+KHYxOV8pLCBzdGF0aWNfY2FzdDxUPih2MjBfKSwKLSAg
ICAgICAgc3RhdGljX2Nhc3Q8VD4odjIxXyksIHN0YXRpY19jYXN0PFQ+KHYyMl8pfTsKLSAgICBy
ZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTIyKGNvbnN0IFZhbHVl
QXJyYXkyMiYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAg
djNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVy
LnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52
OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhl
ci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRfKSwKLSAgICAgIHYxNV8o
b3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIudjE3XyksIHYxOF8ob3Ro
ZXIudjE4XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90aGVyLnYyMF8pLCB2MjFf
KG90aGVyLnYyMV8pLCB2MjJfKG90aGVyLnYyMl8pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBObyBp
bXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0
b3I9KGNvbnN0IFZhbHVlQXJyYXkyMiYgb3RoZXIpOwotCi0gIGNvbnN0IFQxIHYxXzsKLSAgY29u
c3QgVDIgdjJfOwotICBjb25zdCBUMyB2M187Ci0gIGNvbnN0IFQ0IHY0XzsKLSAgY29uc3QgVDUg
djVfOwotICBjb25zdCBUNiB2Nl87Ci0gIGNvbnN0IFQ3IHY3XzsKLSAgY29uc3QgVDggdjhfOwot
ICBjb25zdCBUOSB2OV87Ci0gIGNvbnN0IFQxMCB2MTBfOwotICBjb25zdCBUMTEgdjExXzsKLSAg
Y29uc3QgVDEyIHYxMl87Ci0gIGNvbnN0IFQxMyB2MTNfOwotICBjb25zdCBUMTQgdjE0XzsKLSAg
Y29uc3QgVDE1IHYxNV87Ci0gIGNvbnN0IFQxNiB2MTZfOwotICBjb25zdCBUMTcgdjE3XzsKLSAg
Y29uc3QgVDE4IHYxOF87Ci0gIGNvbnN0IFQxOSB2MTlfOwotICBjb25zdCBUMjAgdjIwXzsKLSAg
Y29uc3QgVDIxIHYyMV87Ci0gIGNvbnN0IFQyMiB2MjJfOwotfTsKLQotdGVtcGxhdGUgPHR5cGVu
YW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBU
NSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBU
OSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFt
ZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlw
ZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAg
IHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjM+Ci1jbGFzcyBWYWx1ZUFy
cmF5MjMgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTIzKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0
IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBU
MTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcg
djE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwg
VDIzIHYyMykgOiB2MV8odjEpLCB2Ml8odjIpLAotICAgICAgdjNfKHYzKSwgdjRfKHY0KSwgdjVf
KHY1KSwgdjZfKHY2KSwgdjdfKHY3KSwgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLAotICAg
ICAgdjExXyh2MTEpLCB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQpLCB2MTVfKHYxNSks
IHYxNl8odjE2KSwKLSAgICAgIHYxN18odjE3KSwgdjE4Xyh2MTgpLCB2MTlfKHYxOSksIHYyMF8o
djIwKSwgdjIxXyh2MjEpLCB2MjJfKHYyMiksCi0gICAgICB2MjNfKHYyMykge30KLQotICB0ZW1w
bGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7
Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0
PFQ+KHYyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0
XyksIHN0YXRpY19jYXN0PFQ+KHY1XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0
YXRpY19jYXN0PFQ+KHY3XyksIHN0YXRpY19jYXN0PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHY5XyksIHN0YXRpY19jYXN0PFQ+KHYxMF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjEyXyksIHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0
aWNfY2FzdDxUPih2MTRfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19j
YXN0PFQ+KHYxNl8pLCBzdGF0aWNfY2FzdDxUPih2MTdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjE4XyksIHN0YXRpY19jYXN0PFQ+KHYxOV8pLCBzdGF0aWNfY2FzdDxUPih2MjBfKSwKLSAg
ICAgICAgc3RhdGljX2Nhc3Q8VD4odjIxXyksIHN0YXRpY19jYXN0PFQ+KHYyMl8pLCBzdGF0aWNf
Y2FzdDxUPih2MjNfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5KTsKLSAgfQotCi0gIFZh
bHVlQXJyYXkyMyhjb25zdCBWYWx1ZUFycmF5MjMmIG90aGVyKSA6IHYxXyhvdGhlci52MV8pLCB2
Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52M18pLCB2NF8ob3RoZXIudjRfKSwgdjVf
KG90aGVyLnY1XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAgdjdfKG90aGVyLnY3XyksIHY4Xyhv
dGhlci52OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhlci52MTBfKSwKLSAgICAgIHYxMV8o
b3RoZXIudjExXyksIHYxMl8ob3RoZXIudjEyXyksIHYxM18ob3RoZXIudjEzXyksIHYxNF8ob3Ro
ZXIudjE0XyksCi0gICAgICB2MTVfKG90aGVyLnYxNV8pLCB2MTZfKG90aGVyLnYxNl8pLCB2MTdf
KG90aGVyLnYxN18pLCB2MThfKG90aGVyLnYxOF8pLAotICAgICAgdjE5XyhvdGhlci52MTlfKSwg
djIwXyhvdGhlci52MjBfKSwgdjIxXyhvdGhlci52MjFfKSwgdjIyXyhvdGhlci52MjJfKSwKLSAg
ICAgIHYyM18ob3RoZXIudjIzXykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0
aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3Qg
VmFsdWVBcnJheTIzJiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87
Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNv
bnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87Ci0gIGNvbnN0IFQ5
IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwotICBjb25zdCBUMTIg
djEyXzsKLSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRfOwotICBjb25zdCBUMTUg
djE1XzsKLSAgY29uc3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQxNyB2MTdfOwotICBjb25zdCBUMTgg
djE4XzsKLSAgY29uc3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQyMCB2MjBfOwotICBjb25zdCBUMjEg
djIxXzsKLSAgY29uc3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQyMyB2MjNfOwotfTsKLQotdGVtcGxh
dGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0
eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0
eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEy
LCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1l
IFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUg
VDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVu
YW1lIFQyND4KLWNsYXNzIFZhbHVlQXJyYXkyNCB7Ci0gcHVibGljOgotICBWYWx1ZUFycmF5MjQo
VDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBU
OSB2OSwKLSAgICAgIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQs
IFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsCi0gICAgICBUMTggdjE4LCBUMTkgdjE5LCBUMjAg
djIwLCBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIzLCBUMjQgdjI0KSA6IHYxXyh2MSksCi0gICAg
ICB2Ml8odjIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpLCB2N18odjcpLCB2
OF8odjgpLCB2OV8odjkpLAotICAgICAgdjEwXyh2MTApLCB2MTFfKHYxMSksIHYxMl8odjEyKSwg
djEzXyh2MTMpLCB2MTRfKHYxNCksIHYxNV8odjE1KSwKLSAgICAgIHYxNl8odjE2KSwgdjE3Xyh2
MTcpLCB2MThfKHYxOCksIHYxOV8odjE5KSwgdjIwXyh2MjApLCB2MjFfKHYyMSksCi0gICAgICB2
MjJfKHYyMiksIHYyM18odjIzKSwgdjI0Xyh2MjQpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1l
IFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQg
YXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAg
ICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2Fz
dDxUPih2NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2
N18pLCBzdGF0aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBz
dGF0aWNfY2FzdDxUPih2MTBfKSwgc3RhdGljX2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRp
Y19jYXN0PFQ+KHYxMl8pLCBzdGF0aWNfY2FzdDxUPih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4odjE0
XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxNV8pLCBzdGF0aWNfY2FzdDxUPih2MTZfKSwg
c3RhdGljX2Nhc3Q8VD4odjE3XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxOF8pLCBzdGF0
aWNfY2FzdDxUPih2MTlfKSwgc3RhdGljX2Nhc3Q8VD4odjIwXyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHYyMV8pLCBzdGF0aWNfY2FzdDxUPih2MjJfKSwgc3RhdGljX2Nhc3Q8VD4odjIzXyks
Ci0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyNF8pfTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJy
YXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTI0KGNvbnN0IFZhbHVlQXJyYXkyNCYgb3RoZXIpIDog
djFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0
XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18o
b3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYx
MF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhl
ci52MTNfKSwgdjE0XyhvdGhlci52MTRfKSwKLSAgICAgIHYxNV8ob3RoZXIudjE1XyksIHYxNl8o
b3RoZXIudjE2XyksIHYxN18ob3RoZXIudjE3XyksIHYxOF8ob3RoZXIudjE4XyksCi0gICAgICB2
MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90aGVyLnYyMF8pLCB2MjFfKG90aGVyLnYyMV8pLCB2MjJf
KG90aGVyLnYyMl8pLAotICAgICAgdjIzXyhvdGhlci52MjNfKSwgdjI0XyhvdGhlci52MjRfKSB7
fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVu
c3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MjQmIG90aGVyKTsK
LQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNfOwotICBj
b25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBjb25zdCBU
NyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBUMTAgdjEw
XzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotICBjb25zdCBUMTMgdjEz
XzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwotICBjb25zdCBUMTYgdjE2
XzsKLSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwotICBjb25zdCBUMTkgdjE5
XzsKLSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwotICBjb25zdCBUMjIgdjIy
XzsKLSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwotfTsKLQotdGVtcGxhdGUg
PHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBl
bmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBl
bmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0
eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQx
NiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIw
LAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1l
IFQyNCwgdHlwZW5hbWUgVDI1PgotY2xhc3MgVmFsdWVBcnJheTI1IHsKLSBwdWJsaWM6Ci0gIFZh
bHVlQXJyYXkyNShUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2
NywgVDggdjgsIFQ5IHY5LAotICAgICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYx
MywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywKLSAgICAgIFQxOCB2MTgsIFQx
OSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsCi0gICAg
ICBUMjUgdjI1KSA6IHYxXyh2MSksIHYyXyh2MiksIHYzXyh2MyksIHY0Xyh2NCksIHY1Xyh2NSks
IHY2Xyh2NiksIHY3Xyh2NyksCi0gICAgICB2OF8odjgpLCB2OV8odjkpLCB2MTBfKHYxMCksIHYx
MV8odjExKSwgdjEyXyh2MTIpLCB2MTNfKHYxMyksIHYxNF8odjE0KSwKLSAgICAgIHYxNV8odjE1
KSwgdjE2Xyh2MTYpLCB2MTdfKHYxNyksIHYxOF8odjE4KSwgdjE5Xyh2MTkpLCB2MjBfKHYyMCks
Ci0gICAgICB2MjFfKHYyMSksIHYyMl8odjIyKSwgdjIzXyh2MjMpLCB2MjRfKHYyNCksIHYyNV8o
djI1KSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJhbUdlbmVy
YXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4o
djFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjNfKSwg
c3RhdGljX2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8VD4odjhfKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4odjEwXyksIHN0YXRp
Y19jYXN0PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTJfKSwgc3RhdGljX2Nh
c3Q8VD4odjEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxU
Pih2MTVfKSwgc3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19jYXN0PFQ+KHYxN18pLAotICAg
ICAgICBzdGF0aWNfY2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8VD4odjE5XyksIHN0YXRpY19j
YXN0PFQ+KHYyMF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjFfKSwgc3RhdGljX2Nhc3Q8
VD4odjIyXyksIHN0YXRpY19jYXN0PFQ+KHYyM18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2
MjRfKSwgc3RhdGljX2Nhc3Q8VD4odjI1Xyl9OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7
Ci0gIH0KLQotICBWYWx1ZUFycmF5MjUoY29uc3QgVmFsdWVBcnJheTI1JiBvdGhlcikgOiB2MV8o
b3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyksCi0gICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90
aGVyLnY0XyksIHY1XyhvdGhlci52NV8pLCB2Nl8ob3RoZXIudjZfKSwKLSAgICAgIHY3XyhvdGhl
ci52N18pLCB2OF8ob3RoZXIudjhfKSwgdjlfKG90aGVyLnY5XyksIHYxMF8ob3RoZXIudjEwXyks
Ci0gICAgICB2MTFfKG90aGVyLnYxMV8pLCB2MTJfKG90aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYx
M18pLCB2MTRfKG90aGVyLnYxNF8pLAotICAgICAgdjE1XyhvdGhlci52MTVfKSwgdjE2XyhvdGhl
ci52MTZfKSwgdjE3XyhvdGhlci52MTdfKSwgdjE4XyhvdGhlci52MThfKSwKLSAgICAgIHYxOV8o
b3RoZXIudjE5XyksIHYyMF8ob3RoZXIudjIwXyksIHYyMV8ob3RoZXIudjIxXyksIHYyMl8ob3Ro
ZXIudjIyXyksCi0gICAgICB2MjNfKG90aGVyLnYyM18pLCB2MjRfKG90aGVyLnYyNF8pLCB2MjVf
KG90aGVyLnYyNV8pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFz
c2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IFZhbHVlQXJy
YXkyNSYgb3RoZXIpOwotCi0gIGNvbnN0IFQxIHYxXzsKLSAgY29uc3QgVDIgdjJfOwotICBjb25z
dCBUMyB2M187Ci0gIGNvbnN0IFQ0IHY0XzsKLSAgY29uc3QgVDUgdjVfOwotICBjb25zdCBUNiB2
Nl87Ci0gIGNvbnN0IFQ3IHY3XzsKLSAgY29uc3QgVDggdjhfOwotICBjb25zdCBUOSB2OV87Ci0g
IGNvbnN0IFQxMCB2MTBfOwotICBjb25zdCBUMTEgdjExXzsKLSAgY29uc3QgVDEyIHYxMl87Ci0g
IGNvbnN0IFQxMyB2MTNfOwotICBjb25zdCBUMTQgdjE0XzsKLSAgY29uc3QgVDE1IHYxNV87Ci0g
IGNvbnN0IFQxNiB2MTZfOwotICBjb25zdCBUMTcgdjE3XzsKLSAgY29uc3QgVDE4IHYxOF87Ci0g
IGNvbnN0IFQxOSB2MTlfOwotICBjb25zdCBUMjAgdjIwXzsKLSAgY29uc3QgVDIxIHYyMV87Ci0g
IGNvbnN0IFQyMiB2MjJfOwotICBjb25zdCBUMjMgdjIzXzsKLSAgY29uc3QgVDI0IHYyNF87Ci0g
IGNvbnN0IFQyNSB2MjVfOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBU
MiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBU
NiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAot
ICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQx
NCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFt
ZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlw
ZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAg
IHR5cGVuYW1lIFQyNj4KLWNsYXNzIFZhbHVlQXJyYXkyNiB7Ci0gcHVibGljOgotICBWYWx1ZUFy
cmF5MjYoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4
IHY4LCBUOSB2OSwKLSAgICAgIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQx
NCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsCi0gICAgICBUMTggdjE4LCBUMTkgdjE5
LCBUMjAgdjIwLCBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIzLCBUMjQgdjI0LCBUMjUgdjI1LAot
ICAgICAgVDI2IHYyNikgOiB2MV8odjEpLCB2Ml8odjIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8o
djUpLCB2Nl8odjYpLCB2N18odjcpLAotICAgICAgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTAp
LCB2MTFfKHYxMSksIHYxMl8odjEyKSwgdjEzXyh2MTMpLCB2MTRfKHYxNCksCi0gICAgICB2MTVf
KHYxNSksIHYxNl8odjE2KSwgdjE3Xyh2MTcpLCB2MThfKHYxOCksIHYxOV8odjE5KSwgdjIwXyh2
MjApLAotICAgICAgdjIxXyh2MjEpLCB2MjJfKHYyMiksIHYyM18odjIzKSwgdjI0Xyh2MjQpLCB2
MjVfKHYyNSksIHYyNl8odjI2KSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVy
YXRvciBQYXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7
c3RhdGljX2Nhc3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8VD4odjNfKSwgc3RhdGljX2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGlj
X2Nhc3Q8VD4odjhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8
VD4odjEwXyksIHN0YXRpY19jYXN0PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2
MTJfKSwgc3RhdGljX2Nhc3Q8VD4odjEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAg
ICBzdGF0aWNfY2FzdDxUPih2MTVfKSwgc3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19jYXN0
PFQ+KHYxN18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8VD4o
djE5XyksIHN0YXRpY19jYXN0PFQ+KHYyMF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjFf
KSwgc3RhdGljX2Nhc3Q8VD4odjIyXyksIHN0YXRpY19jYXN0PFQ+KHYyM18pLAotICAgICAgICBz
dGF0aWNfY2FzdDxUPih2MjRfKSwgc3RhdGljX2Nhc3Q8VD4odjI1XyksIHN0YXRpY19jYXN0PFQ+
KHYyNl8pfTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJh
eTI2KGNvbnN0IFZhbHVlQXJyYXkyNiYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhl
ci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIu
djVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4
XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52
MTFfKSwgdjEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRf
KSwKLSAgICAgIHYxNV8ob3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIu
djE3XyksIHYxOF8ob3RoZXIudjE4XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90
aGVyLnYyMF8pLCB2MjFfKG90aGVyLnYyMV8pLCB2MjJfKG90aGVyLnYyMl8pLAotICAgICAgdjIz
XyhvdGhlci52MjNfKSwgdjI0XyhvdGhlci52MjRfKSwgdjI1XyhvdGhlci52MjVfKSwgdjI2Xyhv
dGhlci52MjZfKSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3Np
Z25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5
MjYmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3Qg
VDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZf
OwotICBjb25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBj
b25zdCBUMTAgdjEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotICBj
b25zdCBUMTMgdjEzXzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwotICBj
b25zdCBUMTYgdjE2XzsKLSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwotICBj
b25zdCBUMTkgdjE5XzsKLSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwotICBj
b25zdCBUMjIgdjIyXzsKLSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwotICBj
b25zdCBUMjUgdjI1XzsKLSAgY29uc3QgVDI2IHYyNl87Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5h
bWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1
LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5
LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1l
IFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBl
bmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAg
dHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0
eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjc+Ci1jbGFzcyBWYWx1
ZUFycmF5MjcgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTI3KFQxIHYxLCBUMiB2MiwgVDMgdjMs
IFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEw
LCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBU
MTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYy
MiwgVDIzIHYyMywgVDI0IHYyNCwgVDI1IHYyNSwKLSAgICAgIFQyNiB2MjYsIFQyNyB2MjcpIDog
djFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSwgdjRfKHY0KSwgdjVfKHY1KSwgdjZfKHY2KSwKLSAg
ICAgIHY3Xyh2NyksIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwgdjExXyh2MTEpLCB2MTJf
KHYxMiksIHYxM18odjEzKSwKLSAgICAgIHYxNF8odjE0KSwgdjE1Xyh2MTUpLCB2MTZfKHYxNiks
IHYxN18odjE3KSwgdjE4Xyh2MTgpLCB2MTlfKHYxOSksCi0gICAgICB2MjBfKHYyMCksIHYyMV8o
djIxKSwgdjIyXyh2MjIpLCB2MjNfKHYyMyksIHYyNF8odjI0KSwgdjI1Xyh2MjUpLAotICAgICAg
djI2Xyh2MjYpLCB2MjdfKHYyNykge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3Bl
cmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0g
e3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0YXRp
Y19jYXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1Xyks
Ci0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0YXRp
Y19jYXN0PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19jYXN0
PFQ+KHYxMF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4o
djEyXyksIHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNfY2Fz
dDxUPih2MTdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE4XyksIHN0YXRpY19jYXN0PFQ+
KHYxOV8pLCBzdGF0aWNfY2FzdDxUPih2MjBfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjIx
XyksIHN0YXRpY19jYXN0PFQ+KHYyMl8pLCBzdGF0aWNfY2FzdDxUPih2MjNfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjI0XyksIHN0YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0aWNfY2FzdDxU
Pih2MjZfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI3Xyl9OwotICAgIHJldHVybiBWYWx1
ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5MjcoY29uc3QgVmFsdWVBcnJheTI3JiBv
dGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyksCi0gICAgICB2M18ob3RoZXIu
djNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhlci52NV8pLCB2Nl8ob3RoZXIudjZfKSwKLSAg
ICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIudjhfKSwgdjlfKG90aGVyLnY5XyksIHYxMF8o
b3RoZXIudjEwXyksCi0gICAgICB2MTFfKG90aGVyLnYxMV8pLCB2MTJfKG90aGVyLnYxMl8pLCB2
MTNfKG90aGVyLnYxM18pLCB2MTRfKG90aGVyLnYxNF8pLAotICAgICAgdjE1XyhvdGhlci52MTVf
KSwgdjE2XyhvdGhlci52MTZfKSwgdjE3XyhvdGhlci52MTdfKSwgdjE4XyhvdGhlci52MThfKSwK
LSAgICAgIHYxOV8ob3RoZXIudjE5XyksIHYyMF8ob3RoZXIudjIwXyksIHYyMV8ob3RoZXIudjIx
XyksIHYyMl8ob3RoZXIudjIyXyksCi0gICAgICB2MjNfKG90aGVyLnYyM18pLCB2MjRfKG90aGVy
LnYyNF8pLCB2MjVfKG90aGVyLnYyNV8pLCB2MjZfKG90aGVyLnYyNl8pLAotICAgICAgdjI3Xyhv
dGhlci52MjdfKSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3Np
Z25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5
MjcmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3Qg
VDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZf
OwotICBjb25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBj
b25zdCBUMTAgdjEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotICBj
b25zdCBUMTMgdjEzXzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwotICBj
b25zdCBUMTYgdjE2XzsKLSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwotICBj
b25zdCBUMTkgdjE5XzsKLSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwotICBj
b25zdCBUMjIgdjIyXzsKLSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwotICBj
b25zdCBUMjUgdjI1XzsKLSAgY29uc3QgVDI2IHYyNl87Ci0gIGNvbnN0IFQyNyB2MjdfOwotfTsK
LQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVu
YW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVu
YW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlw
ZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAg
IHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwg
dHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBU
MjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5h
bWUgVDI3LCB0eXBlbmFtZSBUMjg+Ci1jbGFzcyBWYWx1ZUFycmF5MjggewotIHB1YmxpYzoKLSAg
VmFsdWVBcnJheTI4KFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3
IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMg
djEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LAotICAgICAgVDE4IHYxOCwg
VDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywgVDI0IHYyNCwgVDI1
IHYyNSwKLSAgICAgIFQyNiB2MjYsIFQyNyB2MjcsIFQyOCB2MjgpIDogdjFfKHYxKSwgdjJfKHYy
KSwgdjNfKHYzKSwgdjRfKHY0KSwgdjVfKHY1KSwKLSAgICAgIHY2Xyh2NiksIHY3Xyh2NyksIHY4
Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwgdjExXyh2MTEpLCB2MTJfKHYxMiksCi0gICAgICB2
MTNfKHYxMyksIHYxNF8odjE0KSwgdjE1Xyh2MTUpLCB2MTZfKHYxNiksIHYxN18odjE3KSwgdjE4
Xyh2MTgpLAotICAgICAgdjE5Xyh2MTkpLCB2MjBfKHYyMCksIHYyMV8odjIxKSwgdjIyXyh2MjIp
LCB2MjNfKHYyMyksIHYyNF8odjI0KSwKLSAgICAgIHYyNV8odjI1KSwgdjI2Xyh2MjYpLCB2Mjdf
KHYyNyksIHYyOF8odjI4KSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRv
ciBQYXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3Rh
dGljX2Nhc3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nh
c3Q8VD4odjNfKSwgc3RhdGljX2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAg
ICAgICAgc3RhdGljX2Nhc3Q8VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nh
c3Q8VD4odjhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4o
djEwXyksIHN0YXRpY19jYXN0PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTJf
KSwgc3RhdGljX2Nhc3Q8VD4odjEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAgICBz
dGF0aWNfY2FzdDxUPih2MTVfKSwgc3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19jYXN0PFQ+
KHYxN18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8VD4odjE5
XyksIHN0YXRpY19jYXN0PFQ+KHYyMF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjFfKSwg
c3RhdGljX2Nhc3Q8VD4odjIyXyksIHN0YXRpY19jYXN0PFQ+KHYyM18pLAotICAgICAgICBzdGF0
aWNfY2FzdDxUPih2MjRfKSwgc3RhdGljX2Nhc3Q8VD4odjI1XyksIHN0YXRpY19jYXN0PFQ+KHYy
Nl8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjdfKSwgc3RhdGljX2Nhc3Q8VD4odjI4Xyl9
OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5MjgoY29u
c3QgVmFsdWVBcnJheTI4JiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyks
Ci0gICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhlci52NV8pLCB2
Nl8ob3RoZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIudjhfKSwgdjlf
KG90aGVyLnY5XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFfKG90aGVyLnYxMV8pLCB2
MTJfKG90aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90aGVyLnYxNF8pLAotICAg
ICAgdjE1XyhvdGhlci52MTVfKSwgdjE2XyhvdGhlci52MTZfKSwgdjE3XyhvdGhlci52MTdfKSwg
djE4XyhvdGhlci52MThfKSwKLSAgICAgIHYxOV8ob3RoZXIudjE5XyksIHYyMF8ob3RoZXIudjIw
XyksIHYyMV8ob3RoZXIudjIxXyksIHYyMl8ob3RoZXIudjIyXyksCi0gICAgICB2MjNfKG90aGVy
LnYyM18pLCB2MjRfKG90aGVyLnYyNF8pLCB2MjVfKG90aGVyLnYyNV8pLCB2MjZfKG90aGVyLnYy
Nl8pLAotICAgICAgdjI3XyhvdGhlci52MjdfKSwgdjI4XyhvdGhlci52MjhfKSB7fQotCi0gcHJp
dmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVk
LgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MjgmIG90aGVyKTsKLQotICBjb25z
dCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNfOwotICBjb25zdCBUNCB2
NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBjb25zdCBUNyB2N187Ci0g
IGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBUMTAgdjEwXzsKLSAgY29u
c3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotICBjb25zdCBUMTMgdjEzXzsKLSAgY29u
c3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwotICBjb25zdCBUMTYgdjE2XzsKLSAgY29u
c3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwotICBjb25zdCBUMTkgdjE5XzsKLSAgY29u
c3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwotICBjb25zdCBUMjIgdjIyXzsKLSAgY29u
c3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwotICBjb25zdCBUMjUgdjI1XzsKLSAgY29u
c3QgVDI2IHYyNl87Ci0gIGNvbnN0IFQyNyB2MjdfOwotICBjb25zdCBUMjggdjI4XzsKLX07Ci0K
LXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFt
ZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFt
ZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVu
YW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0
eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5
cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIz
LCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1l
IFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjk+Ci1jbGFzcyBWYWx1ZUFycmF5Mjkgewot
IHB1YmxpYzoKLSAgVmFsdWVBcnJheTI5KFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2
NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBU
MTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LAotICAg
ICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywg
VDI0IHYyNCwgVDI1IHYyNSwKLSAgICAgIFQyNiB2MjYsIFQyNyB2MjcsIFQyOCB2MjgsIFQyOSB2
MjkpIDogdjFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSwgdjRfKHY0KSwKLSAgICAgIHY1Xyh2NSks
IHY2Xyh2NiksIHY3Xyh2NyksIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwgdjExXyh2MTEp
LAotICAgICAgdjEyXyh2MTIpLCB2MTNfKHYxMyksIHYxNF8odjE0KSwgdjE1Xyh2MTUpLCB2MTZf
KHYxNiksIHYxN18odjE3KSwKLSAgICAgIHYxOF8odjE4KSwgdjE5Xyh2MTkpLCB2MjBfKHYyMCks
IHYyMV8odjIxKSwgdjIyXyh2MjIpLCB2MjNfKHYyMyksCi0gICAgICB2MjRfKHYyNCksIHYyNV8o
djI1KSwgdjI2Xyh2MjYpLCB2MjdfKHYyNyksIHYyOF8odjI4KSwgdjI5Xyh2MjkpIHt9Ci0KLSAg
dGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29u
c3QgewotICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNf
Y2FzdDxUPih2Ml8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxU
Pih2NF8pLCBzdGF0aWNfY2FzdDxUPih2NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8p
LCBzdGF0aWNfY2FzdDxUPih2N18pLCBzdGF0aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBzdGF0
aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNfY2FzdDxUPih2MTBfKSwgc3RhdGljX2Nhc3Q8VD4odjEx
XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxMl8pLCBzdGF0aWNfY2FzdDxUPih2MTNfKSwg
c3RhdGljX2Nhc3Q8VD4odjE0XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxNV8pLCBzdGF0
aWNfY2FzdDxUPih2MTZfKSwgc3RhdGljX2Nhc3Q8VD4odjE3XyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHYxOF8pLCBzdGF0aWNfY2FzdDxUPih2MTlfKSwgc3RhdGljX2Nhc3Q8VD4odjIwXyks
Ci0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyMV8pLCBzdGF0aWNfY2FzdDxUPih2MjJfKSwgc3Rh
dGljX2Nhc3Q8VD4odjIzXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyNF8pLCBzdGF0aWNf
Y2FzdDxUPih2MjVfKSwgc3RhdGljX2Nhc3Q8VD4odjI2XyksCi0gICAgICAgIHN0YXRpY19jYXN0
PFQ+KHYyN18pLCBzdGF0aWNfY2FzdDxUPih2MjhfKSwgc3RhdGljX2Nhc3Q8VD4odjI5Xyl9Owot
ICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5MjkoY29uc3Qg
VmFsdWVBcnJheTI5JiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyksCi0g
ICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhlci52NV8pLCB2Nl8o
b3RoZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIudjhfKSwgdjlfKG90
aGVyLnY5XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFfKG90aGVyLnYxMV8pLCB2MTJf
KG90aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90aGVyLnYxNF8pLAotICAgICAg
djE1XyhvdGhlci52MTVfKSwgdjE2XyhvdGhlci52MTZfKSwgdjE3XyhvdGhlci52MTdfKSwgdjE4
XyhvdGhlci52MThfKSwKLSAgICAgIHYxOV8ob3RoZXIudjE5XyksIHYyMF8ob3RoZXIudjIwXyks
IHYyMV8ob3RoZXIudjIxXyksIHYyMl8ob3RoZXIudjIyXyksCi0gICAgICB2MjNfKG90aGVyLnYy
M18pLCB2MjRfKG90aGVyLnYyNF8pLCB2MjVfKG90aGVyLnYyNV8pLCB2MjZfKG90aGVyLnYyNl8p
LAotICAgICAgdjI3XyhvdGhlci52MjdfKSwgdjI4XyhvdGhlci52MjhfKSwgdjI5XyhvdGhlci52
MjlfKSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50
IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MjkmIG90
aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNf
OwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBj
b25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBU
MTAgdjEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotICBjb25zdCBU
MTMgdjEzXzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwotICBjb25zdCBU
MTYgdjE2XzsKLSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwotICBjb25zdCBU
MTkgdjE5XzsKLSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwotICBjb25zdCBU
MjIgdjIyXzsKLSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwotICBjb25zdCBU
MjUgdjI1XzsKLSAgY29uc3QgVDI2IHYyNl87Ci0gIGNvbnN0IFQyNyB2MjdfOwotICBjb25zdCBU
MjggdjI4XzsKLSAgY29uc3QgVDI5IHYyOV87Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEs
IHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAg
IHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBl
bmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywg
dHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBU
MTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5h
bWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFt
ZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlw
ZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzA+Ci1jbGFzcyBWYWx1ZUFycmF5MzAgewotIHB1YmxpYzoK
LSAgVmFsdWVBcnJheTMwKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYs
IFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBU
MTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LAotICAgICAgVDE4IHYx
OCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywgVDI0IHYyNCwg
VDI1IHYyNSwKLSAgICAgIFQyNiB2MjYsIFQyNyB2MjcsIFQyOCB2MjgsIFQyOSB2MjksIFQzMCB2
MzApIDogdjFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSwKLSAgICAgIHY0Xyh2NCksIHY1Xyh2NSks
IHY2Xyh2NiksIHY3Xyh2NyksIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwKLSAgICAgIHYx
MV8odjExKSwgdjEyXyh2MTIpLCB2MTNfKHYxMyksIHYxNF8odjE0KSwgdjE1Xyh2MTUpLCB2MTZf
KHYxNiksCi0gICAgICB2MTdfKHYxNyksIHYxOF8odjE4KSwgdjE5Xyh2MTkpLCB2MjBfKHYyMCks
IHYyMV8odjIxKSwgdjIyXyh2MjIpLAotICAgICAgdjIzXyh2MjMpLCB2MjRfKHYyNCksIHYyNV8o
djI1KSwgdjI2Xyh2MjYpLCB2MjdfKHYyNyksIHYyOF8odjI4KSwKLSAgICAgIHYyOV8odjI5KSwg
djMwXyh2MzApIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFt
R2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2Fz
dDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2
M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2NV8pLAotICAgICAgICBz
dGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18pLCBzdGF0aWNfY2FzdDxUPih2
OF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNfY2FzdDxUPih2MTBfKSwg
c3RhdGljX2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxMl8pLCBzdGF0
aWNfY2FzdDxUPih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4odjE0XyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHYxNV8pLCBzdGF0aWNfY2FzdDxUPih2MTZfKSwgc3RhdGljX2Nhc3Q8VD4odjE3Xyks
Ci0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxOF8pLCBzdGF0aWNfY2FzdDxUPih2MTlfKSwgc3Rh
dGljX2Nhc3Q8VD4odjIwXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyMV8pLCBzdGF0aWNf
Y2FzdDxUPih2MjJfKSwgc3RhdGljX2Nhc3Q8VD4odjIzXyksCi0gICAgICAgIHN0YXRpY19jYXN0
PFQ+KHYyNF8pLCBzdGF0aWNfY2FzdDxUPih2MjVfKSwgc3RhdGljX2Nhc3Q8VD4odjI2XyksCi0g
ICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyN18pLCBzdGF0aWNfY2FzdDxUPih2MjhfKSwgc3RhdGlj
X2Nhc3Q8VD4odjI5XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzMF8pfTsKLSAgICByZXR1
cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTMwKGNvbnN0IFZhbHVlQXJy
YXkzMCYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNf
KG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2
XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52OV8p
LCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhlci52
MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRfKSwKLSAgICAgIHYxNV8ob3Ro
ZXIudjE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIudjE3XyksIHYxOF8ob3RoZXIu
djE4XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90aGVyLnYyMF8pLCB2MjFfKG90
aGVyLnYyMV8pLCB2MjJfKG90aGVyLnYyMl8pLAotICAgICAgdjIzXyhvdGhlci52MjNfKSwgdjI0
XyhvdGhlci52MjRfKSwgdjI1XyhvdGhlci52MjVfKSwgdjI2XyhvdGhlci52MjZfKSwKLSAgICAg
IHYyN18ob3RoZXIudjI3XyksIHYyOF8ob3RoZXIudjI4XyksIHYyOV8ob3RoZXIudjI5XyksIHYz
MF8ob3RoZXIudjMwXykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0g
YXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVB
cnJheTMwJiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNv
bnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2
IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsK
LSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwotICBjb25zdCBUMTIgdjEyXzsK
LSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRfOwotICBjb25zdCBUMTUgdjE1XzsK
LSAgY29uc3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQxNyB2MTdfOwotICBjb25zdCBUMTggdjE4XzsK
LSAgY29uc3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQyMCB2MjBfOwotICBjb25zdCBUMjEgdjIxXzsK
LSAgY29uc3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQyMyB2MjNfOwotICBjb25zdCBUMjQgdjI0XzsK
LSAgY29uc3QgVDI1IHYyNV87Ci0gIGNvbnN0IFQyNiB2MjZfOwotICBjb25zdCBUMjcgdjI3XzsK
LSAgY29uc3QgVDI4IHYyOF87Ci0gIGNvbnN0IFQyOSB2MjlfOwotICBjb25zdCBUMzAgdjMwXzsK
LX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0
eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0
eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEs
IHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwK
LSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBU
MTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5h
bWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5
cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAg
ICB0eXBlbmFtZSBUMzE+Ci1jbGFzcyBWYWx1ZUFycmF5MzEgewotIHB1YmxpYzoKLSAgVmFsdWVB
cnJheTMxKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBU
OCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBU
MTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYx
OSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywgVDI0IHYyNCwgVDI1IHYyNSwK
LSAgICAgIFQyNiB2MjYsIFQyNyB2MjcsIFQyOCB2MjgsIFQyOSB2MjksIFQzMCB2MzAsIFQzMSB2
MzEpIDogdjFfKHYxKSwgdjJfKHYyKSwKLSAgICAgIHYzXyh2MyksIHY0Xyh2NCksIHY1Xyh2NSks
IHY2Xyh2NiksIHY3Xyh2NyksIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwKLSAgICAgIHYx
MV8odjExKSwgdjEyXyh2MTIpLCB2MTNfKHYxMyksIHYxNF8odjE0KSwgdjE1Xyh2MTUpLCB2MTZf
KHYxNiksCi0gICAgICB2MTdfKHYxNyksIHYxOF8odjE4KSwgdjE5Xyh2MTkpLCB2MjBfKHYyMCks
IHYyMV8odjIxKSwgdjIyXyh2MjIpLAotICAgICAgdjIzXyh2MjMpLCB2MjRfKHYyNCksIHYyNV8o
djI1KSwgdjI2Xyh2MjYpLCB2MjdfKHYyNyksIHYyOF8odjI4KSwKLSAgICAgIHYyOV8odjI5KSwg
djMwXyh2MzApLCB2MzFfKHYzMSkge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3Bl
cmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0g
e3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0YXRp
Y19jYXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1Xyks
Ci0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0YXRp
Y19jYXN0PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19jYXN0
PFQ+KHYxMF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4o
djEyXyksIHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNfY2Fz
dDxUPih2MTdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE4XyksIHN0YXRpY19jYXN0PFQ+
KHYxOV8pLCBzdGF0aWNfY2FzdDxUPih2MjBfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjIx
XyksIHN0YXRpY19jYXN0PFQ+KHYyMl8pLCBzdGF0aWNfY2FzdDxUPih2MjNfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjI0XyksIHN0YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0aWNfY2FzdDxU
Pih2MjZfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI3XyksIHN0YXRpY19jYXN0PFQ+KHYy
OF8pLCBzdGF0aWNfY2FzdDxUPih2MjlfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMwXyks
IHN0YXRpY19jYXN0PFQ+KHYzMV8pfTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9
Ci0KLSAgVmFsdWVBcnJheTMxKGNvbnN0IFZhbHVlQXJyYXkzMSYgb3RoZXIpIDogdjFfKG90aGVy
LnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52
NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdf
KSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAg
ICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwg
djE0XyhvdGhlci52MTRfKSwKLSAgICAgIHYxNV8ob3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2
XyksIHYxN18ob3RoZXIudjE3XyksIHYxOF8ob3RoZXIudjE4XyksCi0gICAgICB2MTlfKG90aGVy
LnYxOV8pLCB2MjBfKG90aGVyLnYyMF8pLCB2MjFfKG90aGVyLnYyMV8pLCB2MjJfKG90aGVyLnYy
Ml8pLAotICAgICAgdjIzXyhvdGhlci52MjNfKSwgdjI0XyhvdGhlci52MjRfKSwgdjI1XyhvdGhl
ci52MjVfKSwgdjI2XyhvdGhlci52MjZfKSwKLSAgICAgIHYyN18ob3RoZXIudjI3XyksIHYyOF8o
b3RoZXIudjI4XyksIHYyOV8ob3RoZXIudjI5XyksIHYzMF8ob3RoZXIudjMwXyksCi0gICAgICB2
MzFfKG90aGVyLnYzMV8pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAt
IGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IFZhbHVl
QXJyYXkzMSYgb3RoZXIpOwotCi0gIGNvbnN0IFQxIHYxXzsKLSAgY29uc3QgVDIgdjJfOwotICBj
b25zdCBUMyB2M187Ci0gIGNvbnN0IFQ0IHY0XzsKLSAgY29uc3QgVDUgdjVfOwotICBjb25zdCBU
NiB2Nl87Ci0gIGNvbnN0IFQ3IHY3XzsKLSAgY29uc3QgVDggdjhfOwotICBjb25zdCBUOSB2OV87
Ci0gIGNvbnN0IFQxMCB2MTBfOwotICBjb25zdCBUMTEgdjExXzsKLSAgY29uc3QgVDEyIHYxMl87
Ci0gIGNvbnN0IFQxMyB2MTNfOwotICBjb25zdCBUMTQgdjE0XzsKLSAgY29uc3QgVDE1IHYxNV87
Ci0gIGNvbnN0IFQxNiB2MTZfOwotICBjb25zdCBUMTcgdjE3XzsKLSAgY29uc3QgVDE4IHYxOF87
Ci0gIGNvbnN0IFQxOSB2MTlfOwotICBjb25zdCBUMjAgdjIwXzsKLSAgY29uc3QgVDIxIHYyMV87
Ci0gIGNvbnN0IFQyMiB2MjJfOwotICBjb25zdCBUMjMgdjIzXzsKLSAgY29uc3QgVDI0IHYyNF87
Ci0gIGNvbnN0IFQyNSB2MjVfOwotICBjb25zdCBUMjYgdjI2XzsKLSAgY29uc3QgVDI3IHYyN187
Ci0gIGNvbnN0IFQyOCB2MjhfOwotICBjb25zdCBUMjkgdjI5XzsKLSAgY29uc3QgVDMwIHYzMF87
Ci0gIGNvbnN0IFQzMSB2MzFfOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFt
ZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFt
ZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEw
LAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1l
IFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBl
bmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwg
dHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAot
ICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQy
OSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyPgotY2xhc3Mg
VmFsdWVBcnJheTMyIHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXkzMihUMSB2MSwgVDIgdjIsIFQz
IHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAgICAgVDEw
IHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYx
NiwgVDE3IHYxNywKLSAgICAgIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQy
MiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQyNSB2MjUsCi0gICAgICBUMjYgdjI2LCBUMjcgdjI3
LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMxLCBUMzIgdjMyKSA6IHYxXyh2MSks
Ci0gICAgICB2Ml8odjIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpLCB2N18o
djcpLCB2OF8odjgpLCB2OV8odjkpLAotICAgICAgdjEwXyh2MTApLCB2MTFfKHYxMSksIHYxMl8o
djEyKSwgdjEzXyh2MTMpLCB2MTRfKHYxNCksIHYxNV8odjE1KSwKLSAgICAgIHYxNl8odjE2KSwg
djE3Xyh2MTcpLCB2MThfKHYxOCksIHYxOV8odjE5KSwgdjIwXyh2MjApLCB2MjFfKHYyMSksCi0g
ICAgICB2MjJfKHYyMiksIHYyM18odjIzKSwgdjI0Xyh2MjQpLCB2MjVfKHYyNSksIHYyNl8odjI2
KSwgdjI3Xyh2MjcpLAotICAgICAgdjI4Xyh2MjgpLCB2MjlfKHYyOSksIHYzMF8odjMwKSwgdjMx
Xyh2MzEpLCB2MzJfKHYzMikge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0
b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0
YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1XyksCi0g
ICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0YXRpY19j
YXN0PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19jYXN0PFQ+
KHYxMF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjEy
XyksIHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNfY2FzdDxU
Pih2MTdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE4XyksIHN0YXRpY19jYXN0PFQ+KHYx
OV8pLCBzdGF0aWNfY2FzdDxUPih2MjBfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjIxXyks
IHN0YXRpY19jYXN0PFQ+KHYyMl8pLCBzdGF0aWNfY2FzdDxUPih2MjNfKSwKLSAgICAgICAgc3Rh
dGljX2Nhc3Q8VD4odjI0XyksIHN0YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0aWNfY2FzdDxUPih2
MjZfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI3XyksIHN0YXRpY19jYXN0PFQ+KHYyOF8p
LCBzdGF0aWNfY2FzdDxUPih2MjlfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMwXyksIHN0
YXRpY19jYXN0PFQ+KHYzMV8pLCBzdGF0aWNfY2FzdDxUPih2MzJfKX07Ci0gICAgcmV0dXJuIFZh
bHVlc0luKGFycmF5KTsKLSAgfQotCi0gIFZhbHVlQXJyYXkzMihjb25zdCBWYWx1ZUFycmF5MzIm
IG90aGVyKSA6IHYxXyhvdGhlci52MV8pLCB2Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhl
ci52M18pLCB2NF8ob3RoZXIudjRfKSwgdjVfKG90aGVyLnY1XyksIHY2XyhvdGhlci52Nl8pLAot
ICAgICAgdjdfKG90aGVyLnY3XyksIHY4XyhvdGhlci52OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEw
XyhvdGhlci52MTBfKSwKLSAgICAgIHYxMV8ob3RoZXIudjExXyksIHYxMl8ob3RoZXIudjEyXyks
IHYxM18ob3RoZXIudjEzXyksIHYxNF8ob3RoZXIudjE0XyksCi0gICAgICB2MTVfKG90aGVyLnYx
NV8pLCB2MTZfKG90aGVyLnYxNl8pLCB2MTdfKG90aGVyLnYxN18pLCB2MThfKG90aGVyLnYxOF8p
LAotICAgICAgdjE5XyhvdGhlci52MTlfKSwgdjIwXyhvdGhlci52MjBfKSwgdjIxXyhvdGhlci52
MjFfKSwgdjIyXyhvdGhlci52MjJfKSwKLSAgICAgIHYyM18ob3RoZXIudjIzXyksIHYyNF8ob3Ro
ZXIudjI0XyksIHYyNV8ob3RoZXIudjI1XyksIHYyNl8ob3RoZXIudjI2XyksCi0gICAgICB2Mjdf
KG90aGVyLnYyN18pLCB2MjhfKG90aGVyLnYyOF8pLCB2MjlfKG90aGVyLnYyOV8pLCB2MzBfKG90
aGVyLnYzMF8pLAotICAgICAgdjMxXyhvdGhlci52MzFfKSwgdjMyXyhvdGhlci52MzJfKSB7fQot
Ci0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3Vw
cG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MzImIG90aGVyKTsKLQot
ICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNfOwotICBjb25z
dCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBjb25zdCBUNyB2
N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBUMTAgdjEwXzsK
LSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotICBjb25zdCBUMTMgdjEzXzsK
LSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwotICBjb25zdCBUMTYgdjE2XzsK
LSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwotICBjb25zdCBUMTkgdjE5XzsK
LSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwotICBjb25zdCBUMjIgdjIyXzsK
LSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwotICBjb25zdCBUMjUgdjI1XzsK
LSAgY29uc3QgVDI2IHYyNl87Ci0gIGNvbnN0IFQyNyB2MjdfOwotICBjb25zdCBUMjggdjI4XzsK
LSAgY29uc3QgVDI5IHYyOV87Ci0gIGNvbnN0IFQzMCB2MzBfOwotICBjb25zdCBUMzEgdjMxXzsK
LSAgY29uc3QgVDMyIHYzMl87Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1l
IFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1l
IFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAs
Ci0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUg
VDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVu
YW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0
eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0g
ICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5
LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1l
IFQzMz4KLWNsYXNzIFZhbHVlQXJyYXkzMyB7Ci0gcHVibGljOgotICBWYWx1ZUFycmF5MzMoVDEg
djEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2
OSwKLSAgICAgIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQx
NSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsCi0gICAgICBUMTggdjE4LCBUMTkgdjE5LCBUMjAgdjIw
LCBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIzLCBUMjQgdjI0LCBUMjUgdjI1LAotICAgICAgVDI2
IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwgVDI5IHYyOSwgVDMwIHYzMCwgVDMxIHYzMSwgVDMyIHYz
MiwKLSAgICAgIFQzMyB2MzMpIDogdjFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSwgdjRfKHY0KSwg
djVfKHY1KSwgdjZfKHY2KSwgdjdfKHY3KSwKLSAgICAgIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8o
djEwKSwgdjExXyh2MTEpLCB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQpLAotICAgICAg
djE1Xyh2MTUpLCB2MTZfKHYxNiksIHYxN18odjE3KSwgdjE4Xyh2MTgpLCB2MTlfKHYxOSksIHYy
MF8odjIwKSwKLSAgICAgIHYyMV8odjIxKSwgdjIyXyh2MjIpLCB2MjNfKHYyMyksIHYyNF8odjI0
KSwgdjI1Xyh2MjUpLCB2MjZfKHYyNiksCi0gICAgICB2MjdfKHYyNyksIHYyOF8odjI4KSwgdjI5
Xyh2MjkpLCB2MzBfKHYzMCksIHYzMV8odjMxKSwgdjMyXyh2MzIpLAotICAgICAgdjMzXyh2MzMp
IHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9y
PFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8p
LCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0
aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2NV8pLAotICAgICAgICBzdGF0aWNfY2Fz
dDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18pLCBzdGF0aWNfY2FzdDxUPih2OF8pLAotICAg
ICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNfY2FzdDxUPih2MTBfKSwgc3RhdGljX2Nh
c3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxMl8pLCBzdGF0aWNfY2FzdDxU
Pih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4odjE0XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYx
NV8pLCBzdGF0aWNfY2FzdDxUPih2MTZfKSwgc3RhdGljX2Nhc3Q8VD4odjE3XyksCi0gICAgICAg
IHN0YXRpY19jYXN0PFQ+KHYxOF8pLCBzdGF0aWNfY2FzdDxUPih2MTlfKSwgc3RhdGljX2Nhc3Q8
VD4odjIwXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyMV8pLCBzdGF0aWNfY2FzdDxUPih2
MjJfKSwgc3RhdGljX2Nhc3Q8VD4odjIzXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyNF8p
LCBzdGF0aWNfY2FzdDxUPih2MjVfKSwgc3RhdGljX2Nhc3Q8VD4odjI2XyksCi0gICAgICAgIHN0
YXRpY19jYXN0PFQ+KHYyN18pLCBzdGF0aWNfY2FzdDxUPih2MjhfKSwgc3RhdGljX2Nhc3Q8VD4o
djI5XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzMF8pLCBzdGF0aWNfY2FzdDxUPih2MzFf
KSwgc3RhdGljX2Nhc3Q8VD4odjMyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzM18pfTsK
LSAgICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTMzKGNvbnN0
IFZhbHVlQXJyYXkzMyYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAot
ICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZf
KG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5Xyhv
dGhlci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEy
XyhvdGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRfKSwKLSAgICAg
IHYxNV8ob3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIudjE3XyksIHYx
OF8ob3RoZXIudjE4XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90aGVyLnYyMF8p
LCB2MjFfKG90aGVyLnYyMV8pLCB2MjJfKG90aGVyLnYyMl8pLAotICAgICAgdjIzXyhvdGhlci52
MjNfKSwgdjI0XyhvdGhlci52MjRfKSwgdjI1XyhvdGhlci52MjVfKSwgdjI2XyhvdGhlci52MjZf
KSwKLSAgICAgIHYyN18ob3RoZXIudjI3XyksIHYyOF8ob3RoZXIudjI4XyksIHYyOV8ob3RoZXIu
djI5XyksIHYzMF8ob3RoZXIudjMwXyksCi0gICAgICB2MzFfKG90aGVyLnYzMV8pLCB2MzJfKG90
aGVyLnYzMl8pLCB2MzNfKG90aGVyLnYzM18pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBs
ZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9
KGNvbnN0IFZhbHVlQXJyYXkzMyYgb3RoZXIpOwotCi0gIGNvbnN0IFQxIHYxXzsKLSAgY29uc3Qg
VDIgdjJfOwotICBjb25zdCBUMyB2M187Ci0gIGNvbnN0IFQ0IHY0XzsKLSAgY29uc3QgVDUgdjVf
OwotICBjb25zdCBUNiB2Nl87Ci0gIGNvbnN0IFQ3IHY3XzsKLSAgY29uc3QgVDggdjhfOwotICBj
b25zdCBUOSB2OV87Ci0gIGNvbnN0IFQxMCB2MTBfOwotICBjb25zdCBUMTEgdjExXzsKLSAgY29u
c3QgVDEyIHYxMl87Ci0gIGNvbnN0IFQxMyB2MTNfOwotICBjb25zdCBUMTQgdjE0XzsKLSAgY29u
c3QgVDE1IHYxNV87Ci0gIGNvbnN0IFQxNiB2MTZfOwotICBjb25zdCBUMTcgdjE3XzsKLSAgY29u
c3QgVDE4IHYxOF87Ci0gIGNvbnN0IFQxOSB2MTlfOwotICBjb25zdCBUMjAgdjIwXzsKLSAgY29u
c3QgVDIxIHYyMV87Ci0gIGNvbnN0IFQyMiB2MjJfOwotICBjb25zdCBUMjMgdjIzXzsKLSAgY29u
c3QgVDI0IHYyNF87Ci0gIGNvbnN0IFQyNSB2MjVfOwotICBjb25zdCBUMjYgdjI2XzsKLSAgY29u
c3QgVDI3IHYyN187Ci0gIGNvbnN0IFQyOCB2MjhfOwotICBjb25zdCBUMjkgdjI5XzsKLSAgY29u
c3QgVDMwIHYzMF87Ci0gIGNvbnN0IFQzMSB2MzFfOwotICBjb25zdCBUMzIgdjMyXzsKLSAgY29u
c3QgVDMzIHYzM187Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0
eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0
eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAg
dHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0
eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQx
OCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFt
ZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlw
ZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBl
bmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywg
dHlwZW5hbWUgVDM0PgotY2xhc3MgVmFsdWVBcnJheTM0IHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJy
YXkzNChUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDgg
djgsIFQ5IHY5LAotICAgICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0
IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywKLSAgICAgIFQxOCB2MTgsIFQxOSB2MTks
IFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQyNSB2MjUsCi0g
ICAgICBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMx
LCBUMzIgdjMyLCBUMzMgdjMzLAotICAgICAgVDM0IHYzNCkgOiB2MV8odjEpLCB2Ml8odjIpLCB2
M18odjMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpLCB2N18odjcpLAotICAgICAgdjhfKHY4
KSwgdjlfKHY5KSwgdjEwXyh2MTApLCB2MTFfKHYxMSksIHYxMl8odjEyKSwgdjEzXyh2MTMpLCB2
MTRfKHYxNCksCi0gICAgICB2MTVfKHYxNSksIHYxNl8odjE2KSwgdjE3Xyh2MTcpLCB2MThfKHYx
OCksIHYxOV8odjE5KSwgdjIwXyh2MjApLAotICAgICAgdjIxXyh2MjEpLCB2MjJfKHYyMiksIHYy
M18odjIzKSwgdjI0Xyh2MjQpLCB2MjVfKHYyNSksIHYyNl8odjI2KSwKLSAgICAgIHYyN18odjI3
KSwgdjI4Xyh2MjgpLCB2MjlfKHYyOSksIHYzMF8odjMwKSwgdjMxXyh2MzEpLCB2MzJfKHYzMiks
Ci0gICAgICB2MzNfKHYzMyksIHYzNF8odjM0KSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBU
PgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFy
cmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjNfKSwgc3RhdGljX2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8
VD4odjVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdf
KSwgc3RhdGljX2Nhc3Q8VD4odjhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3Rh
dGljX2Nhc3Q8VD4odjEwXyksIHN0YXRpY19jYXN0PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNf
Y2FzdDxUPih2MTJfKSwgc3RhdGljX2Nhc3Q8VD4odjEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8p
LAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTVfKSwgc3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0
YXRpY19jYXN0PFQ+KHYxN18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MThfKSwgc3RhdGlj
X2Nhc3Q8VD4odjE5XyksIHN0YXRpY19jYXN0PFQ+KHYyMF8pLAotICAgICAgICBzdGF0aWNfY2Fz
dDxUPih2MjFfKSwgc3RhdGljX2Nhc3Q8VD4odjIyXyksIHN0YXRpY19jYXN0PFQ+KHYyM18pLAot
ICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjRfKSwgc3RhdGljX2Nhc3Q8VD4odjI1XyksIHN0YXRp
Y19jYXN0PFQ+KHYyNl8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjdfKSwgc3RhdGljX2Nh
c3Q8VD4odjI4XyksIHN0YXRpY19jYXN0PFQ+KHYyOV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxU
Pih2MzBfKSwgc3RhdGljX2Nhc3Q8VD4odjMxXyksIHN0YXRpY19jYXN0PFQ+KHYzMl8pLAotICAg
ICAgICBzdGF0aWNfY2FzdDxUPih2MzNfKSwgc3RhdGljX2Nhc3Q8VD4odjM0Xyl9OwotICAgIHJl
dHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5MzQoY29uc3QgVmFsdWVB
cnJheTM0JiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyksCi0gICAgICB2
M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhlci52NV8pLCB2Nl8ob3RoZXIu
djZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIudjhfKSwgdjlfKG90aGVyLnY5
XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFfKG90aGVyLnYxMV8pLCB2MTJfKG90aGVy
LnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90aGVyLnYxNF8pLAotICAgICAgdjE1Xyhv
dGhlci52MTVfKSwgdjE2XyhvdGhlci52MTZfKSwgdjE3XyhvdGhlci52MTdfKSwgdjE4XyhvdGhl
ci52MThfKSwKLSAgICAgIHYxOV8ob3RoZXIudjE5XyksIHYyMF8ob3RoZXIudjIwXyksIHYyMV8o
b3RoZXIudjIxXyksIHYyMl8ob3RoZXIudjIyXyksCi0gICAgICB2MjNfKG90aGVyLnYyM18pLCB2
MjRfKG90aGVyLnYyNF8pLCB2MjVfKG90aGVyLnYyNV8pLCB2MjZfKG90aGVyLnYyNl8pLAotICAg
ICAgdjI3XyhvdGhlci52MjdfKSwgdjI4XyhvdGhlci52MjhfKSwgdjI5XyhvdGhlci52MjlfKSwg
djMwXyhvdGhlci52MzBfKSwKLSAgICAgIHYzMV8ob3RoZXIudjMxXyksIHYzMl8ob3RoZXIudjMy
XyksIHYzM18ob3RoZXIudjMzXyksIHYzNF8ob3RoZXIudjM0Xykge30KLQotIHByaXZhdGU6Ci0g
IC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9p
ZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTM0JiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFf
OwotICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBj
b25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBU
OCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2
MTFfOwotICBjb25zdCBUMTIgdjEyXzsKLSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2
MTRfOwotICBjb25zdCBUMTUgdjE1XzsKLSAgY29uc3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQxNyB2
MTdfOwotICBjb25zdCBUMTggdjE4XzsKLSAgY29uc3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQyMCB2
MjBfOwotICBjb25zdCBUMjEgdjIxXzsKLSAgY29uc3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQyMyB2
MjNfOwotICBjb25zdCBUMjQgdjI0XzsKLSAgY29uc3QgVDI1IHYyNV87Ci0gIGNvbnN0IFQyNiB2
MjZfOwotICBjb25zdCBUMjcgdjI3XzsKLSAgY29uc3QgVDI4IHYyOF87Ci0gIGNvbnN0IFQyOSB2
MjlfOwotICBjb25zdCBUMzAgdjMwXzsKLSAgY29uc3QgVDMxIHYzMV87Ci0gIGNvbnN0IFQzMiB2
MzJfOwotICBjb25zdCBUMzMgdjMzXzsKLSAgY29uc3QgVDM0IHYzNF87Ci19OwotCi10ZW1wbGF0
ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5
cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5
cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIs
IHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUg
VDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBU
MjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5h
bWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5
cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMx
LCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzU+
Ci1jbGFzcyBWYWx1ZUFycmF5MzUgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTM1KFQxIHYxLCBU
MiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0g
ICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1
LCBUMTYgdjE2LCBUMTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIx
IHYyMSwgVDIyIHYyMiwgVDIzIHYyMywgVDI0IHYyNCwgVDI1IHYyNSwKLSAgICAgIFQyNiB2MjYs
IFQyNyB2MjcsIFQyOCB2MjgsIFQyOSB2MjksIFQzMCB2MzAsIFQzMSB2MzEsIFQzMiB2MzIsIFQz
MyB2MzMsCi0gICAgICBUMzQgdjM0LCBUMzUgdjM1KSA6IHYxXyh2MSksIHYyXyh2MiksIHYzXyh2
MyksIHY0Xyh2NCksIHY1Xyh2NSksIHY2Xyh2NiksCi0gICAgICB2N18odjcpLCB2OF8odjgpLCB2
OV8odjkpLCB2MTBfKHYxMCksIHYxMV8odjExKSwgdjEyXyh2MTIpLCB2MTNfKHYxMyksCi0gICAg
ICB2MTRfKHYxNCksIHYxNV8odjE1KSwgdjE2Xyh2MTYpLCB2MTdfKHYxNyksIHYxOF8odjE4KSwg
djE5Xyh2MTkpLAotICAgICAgdjIwXyh2MjApLCB2MjFfKHYyMSksIHYyMl8odjIyKSwgdjIzXyh2
MjMpLCB2MjRfKHYyNCksIHYyNV8odjI1KSwKLSAgICAgIHYyNl8odjI2KSwgdjI3Xyh2MjcpLCB2
MjhfKHYyOCksIHYyOV8odjI5KSwgdjMwXyh2MzApLCB2MzFfKHYzMSksCi0gICAgICB2MzJfKHYz
MiksIHYzM18odjMzKSwgdjM0Xyh2MzQpLCB2MzVfKHYzNSkge30KLQotICB0ZW1wbGF0ZSA8dHlw
ZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29u
c3QgVCBhcnJheVtdID0ge3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyks
Ci0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRp
Y19jYXN0PFQ+KHY1XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0
PFQ+KHY3XyksIHN0YXRpY19jYXN0PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5
XyksIHN0YXRpY19jYXN0PFQ+KHYxMF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjEyXyksIHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxU
Pih2MTRfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+KHYx
Nl8pLCBzdGF0aWNfY2FzdDxUPih2MTdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE4Xyks
IHN0YXRpY19jYXN0PFQ+KHYxOV8pLCBzdGF0aWNfY2FzdDxUPih2MjBfKSwKLSAgICAgICAgc3Rh
dGljX2Nhc3Q8VD4odjIxXyksIHN0YXRpY19jYXN0PFQ+KHYyMl8pLCBzdGF0aWNfY2FzdDxUPih2
MjNfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI0XyksIHN0YXRpY19jYXN0PFQ+KHYyNV8p
LCBzdGF0aWNfY2FzdDxUPih2MjZfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI3XyksIHN0
YXRpY19jYXN0PFQ+KHYyOF8pLCBzdGF0aWNfY2FzdDxUPih2MjlfKSwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8VD4odjMwXyksIHN0YXRpY19jYXN0PFQ+KHYzMV8pLCBzdGF0aWNfY2FzdDxUPih2MzJf
KSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMzXyksIHN0YXRpY19jYXN0PFQ+KHYzNF8pLCBz
dGF0aWNfY2FzdDxUPih2MzVfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5KTsKLSAgfQot
Ci0gIFZhbHVlQXJyYXkzNShjb25zdCBWYWx1ZUFycmF5MzUmIG90aGVyKSA6IHYxXyhvdGhlci52
MV8pLCB2Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52M18pLCB2NF8ob3RoZXIudjRf
KSwgdjVfKG90aGVyLnY1XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAgdjdfKG90aGVyLnY3Xyks
IHY4XyhvdGhlci52OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhlci52MTBfKSwKLSAgICAg
IHYxMV8ob3RoZXIudjExXyksIHYxMl8ob3RoZXIudjEyXyksIHYxM18ob3RoZXIudjEzXyksIHYx
NF8ob3RoZXIudjE0XyksCi0gICAgICB2MTVfKG90aGVyLnYxNV8pLCB2MTZfKG90aGVyLnYxNl8p
LCB2MTdfKG90aGVyLnYxN18pLCB2MThfKG90aGVyLnYxOF8pLAotICAgICAgdjE5XyhvdGhlci52
MTlfKSwgdjIwXyhvdGhlci52MjBfKSwgdjIxXyhvdGhlci52MjFfKSwgdjIyXyhvdGhlci52MjJf
KSwKLSAgICAgIHYyM18ob3RoZXIudjIzXyksIHYyNF8ob3RoZXIudjI0XyksIHYyNV8ob3RoZXIu
djI1XyksIHYyNl8ob3RoZXIudjI2XyksCi0gICAgICB2MjdfKG90aGVyLnYyN18pLCB2MjhfKG90
aGVyLnYyOF8pLCB2MjlfKG90aGVyLnYyOV8pLCB2MzBfKG90aGVyLnYzMF8pLAotICAgICAgdjMx
XyhvdGhlci52MzFfKSwgdjMyXyhvdGhlci52MzJfKSwgdjMzXyhvdGhlci52MzNfKSwgdjM0Xyhv
dGhlci52MzRfKSwKLSAgICAgIHYzNV8ob3RoZXIudjM1Xykge30KLQotIHByaXZhdGU6Ci0gIC8v
IE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBv
cGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTM1JiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwot
ICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25z
dCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2
OF87Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFf
OwotICBjb25zdCBUMTIgdjEyXzsKLSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRf
OwotICBjb25zdCBUMTUgdjE1XzsKLSAgY29uc3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQxNyB2MTdf
OwotICBjb25zdCBUMTggdjE4XzsKLSAgY29uc3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQyMCB2MjBf
OwotICBjb25zdCBUMjEgdjIxXzsKLSAgY29uc3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQyMyB2MjNf
OwotICBjb25zdCBUMjQgdjI0XzsKLSAgY29uc3QgVDI1IHYyNV87Ci0gIGNvbnN0IFQyNiB2MjZf
OwotICBjb25zdCBUMjcgdjI3XzsKLSAgY29uc3QgVDI4IHYyOF87Ci0gIGNvbnN0IFQyOSB2Mjlf
OwotICBjb25zdCBUMzAgdjMwXzsKLSAgY29uc3QgVDMxIHYzMV87Ci0gIGNvbnN0IFQzMiB2MzJf
OwotICBjb25zdCBUMzMgdjMzXzsKLSAgY29uc3QgVDM0IHYzNF87Ci0gIGNvbnN0IFQzNSB2MzVf
OwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMs
IHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcs
IHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQx
MSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1
LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1l
IFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBl
bmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwg
dHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAot
ICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQz
NCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNj4KLWNsYXNzIFZhbHVlQXJyYXkzNiB7
Ci0gcHVibGljOgotICBWYWx1ZUFycmF5MzYoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1
IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwKLSAgICAgIFQxMCB2MTAsIFQxMSB2MTEs
IFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsCi0g
ICAgICBUMTggdjE4LCBUMTkgdjE5LCBUMjAgdjIwLCBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIz
LCBUMjQgdjI0LCBUMjUgdjI1LAotICAgICAgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwgVDI5
IHYyOSwgVDMwIHYzMCwgVDMxIHYzMSwgVDMyIHYzMiwgVDMzIHYzMywKLSAgICAgIFQzNCB2MzQs
IFQzNSB2MzUsIFQzNiB2MzYpIDogdjFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSwgdjRfKHY0KSwg
djVfKHY1KSwKLSAgICAgIHY2Xyh2NiksIHY3Xyh2NyksIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8o
djEwKSwgdjExXyh2MTEpLCB2MTJfKHYxMiksCi0gICAgICB2MTNfKHYxMyksIHYxNF8odjE0KSwg
djE1Xyh2MTUpLCB2MTZfKHYxNiksIHYxN18odjE3KSwgdjE4Xyh2MTgpLAotICAgICAgdjE5Xyh2
MTkpLCB2MjBfKHYyMCksIHYyMV8odjIxKSwgdjIyXyh2MjIpLCB2MjNfKHYyMyksIHYyNF8odjI0
KSwKLSAgICAgIHYyNV8odjI1KSwgdjI2Xyh2MjYpLCB2MjdfKHYyNyksIHYyOF8odjI4KSwgdjI5
Xyh2MjkpLCB2MzBfKHYzMCksCi0gICAgICB2MzFfKHYzMSksIHYzMl8odjMyKSwgdjMzXyh2MzMp
LCB2MzRfKHYzNCksIHYzNV8odjM1KSwgdjM2Xyh2MzYpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVu
YW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0
IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAot
ICAgICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNf
Y2FzdDxUPih2NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxU
Pih2N18pLCBzdGF0aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8p
LCBzdGF0aWNfY2FzdDxUPih2MTBfKSwgc3RhdGljX2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0
YXRpY19jYXN0PFQ+KHYxMl8pLCBzdGF0aWNfY2FzdDxUPih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4o
djE0XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxNV8pLCBzdGF0aWNfY2FzdDxUPih2MTZf
KSwgc3RhdGljX2Nhc3Q8VD4odjE3XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxOF8pLCBz
dGF0aWNfY2FzdDxUPih2MTlfKSwgc3RhdGljX2Nhc3Q8VD4odjIwXyksCi0gICAgICAgIHN0YXRp
Y19jYXN0PFQ+KHYyMV8pLCBzdGF0aWNfY2FzdDxUPih2MjJfKSwgc3RhdGljX2Nhc3Q8VD4odjIz
XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyNF8pLCBzdGF0aWNfY2FzdDxUPih2MjVfKSwg
c3RhdGljX2Nhc3Q8VD4odjI2XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyN18pLCBzdGF0
aWNfY2FzdDxUPih2MjhfKSwgc3RhdGljX2Nhc3Q8VD4odjI5XyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHYzMF8pLCBzdGF0aWNfY2FzdDxUPih2MzFfKSwgc3RhdGljX2Nhc3Q8VD4odjMyXyks
Ci0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzM18pLCBzdGF0aWNfY2FzdDxUPih2MzRfKSwgc3Rh
dGljX2Nhc3Q8VD4odjM1XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzNl8pfTsKLSAgICBy
ZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTM2KGNvbnN0IFZhbHVl
QXJyYXkzNiYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAg
djNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVy
LnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52
OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhl
ci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRfKSwKLSAgICAgIHYxNV8o
b3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIudjE3XyksIHYxOF8ob3Ro
ZXIudjE4XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90aGVyLnYyMF8pLCB2MjFf
KG90aGVyLnYyMV8pLCB2MjJfKG90aGVyLnYyMl8pLAotICAgICAgdjIzXyhvdGhlci52MjNfKSwg
djI0XyhvdGhlci52MjRfKSwgdjI1XyhvdGhlci52MjVfKSwgdjI2XyhvdGhlci52MjZfKSwKLSAg
ICAgIHYyN18ob3RoZXIudjI3XyksIHYyOF8ob3RoZXIudjI4XyksIHYyOV8ob3RoZXIudjI5Xyks
IHYzMF8ob3RoZXIudjMwXyksCi0gICAgICB2MzFfKG90aGVyLnYzMV8pLCB2MzJfKG90aGVyLnYz
Ml8pLCB2MzNfKG90aGVyLnYzM18pLCB2MzRfKG90aGVyLnYzNF8pLAotICAgICAgdjM1XyhvdGhl
ci52MzVfKSwgdjM2XyhvdGhlci52MzZfKSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVt
ZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShj
b25zdCBWYWx1ZUFycmF5MzYmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQy
IHYyXzsKLSAgY29uc3QgVDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsK
LSAgY29uc3QgVDYgdjZfOwotICBjb25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29u
c3QgVDkgdjlfOwotICBjb25zdCBUMTAgdjEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0
IFQxMiB2MTJfOwotICBjb25zdCBUMTMgdjEzXzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0
IFQxNSB2MTVfOwotICBjb25zdCBUMTYgdjE2XzsKLSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0
IFQxOCB2MThfOwotICBjb25zdCBUMTkgdjE5XzsKLSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0
IFQyMSB2MjFfOwotICBjb25zdCBUMjIgdjIyXzsKLSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0
IFQyNCB2MjRfOwotICBjb25zdCBUMjUgdjI1XzsKLSAgY29uc3QgVDI2IHYyNl87Ci0gIGNvbnN0
IFQyNyB2MjdfOwotICBjb25zdCBUMjggdjI4XzsKLSAgY29uc3QgVDI5IHYyOV87Ci0gIGNvbnN0
IFQzMCB2MzBfOwotICBjb25zdCBUMzEgdjMxXzsKLSAgY29uc3QgVDMyIHYzMl87Ci0gIGNvbnN0
IFQzMyB2MzNfOwotICBjb25zdCBUMzQgdjM0XzsKLSAgY29uc3QgVDM1IHYzNV87Ci0gIGNvbnN0
IFQzNiB2MzZfOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlw
ZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlw
ZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5
cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlw
ZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgs
IHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUg
VDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVu
YW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5h
bWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5
cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3
PgotY2xhc3MgVmFsdWVBcnJheTM3IHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXkzNyhUMSB2MSwg
VDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LAot
ICAgICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0IHYxNCwgVDE1IHYx
NSwgVDE2IHYxNiwgVDE3IHYxNywKLSAgICAgIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQy
MSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQyNSB2MjUsCi0gICAgICBUMjYgdjI2
LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMxLCBUMzIgdjMyLCBU
MzMgdjMzLAotICAgICAgVDM0IHYzNCwgVDM1IHYzNSwgVDM2IHYzNiwgVDM3IHYzNykgOiB2MV8o
djEpLCB2Ml8odjIpLCB2M18odjMpLCB2NF8odjQpLAotICAgICAgdjVfKHY1KSwgdjZfKHY2KSwg
djdfKHY3KSwgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLCB2MTFfKHYxMSksCi0gICAgICB2
MTJfKHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQpLCB2MTVfKHYxNSksIHYxNl8odjE2KSwgdjE3
Xyh2MTcpLAotICAgICAgdjE4Xyh2MTgpLCB2MTlfKHYxOSksIHYyMF8odjIwKSwgdjIxXyh2MjEp
LCB2MjJfKHYyMiksIHYyM18odjIzKSwKLSAgICAgIHYyNF8odjI0KSwgdjI1Xyh2MjUpLCB2MjZf
KHYyNiksIHYyN18odjI3KSwgdjI4Xyh2MjgpLCB2MjlfKHYyOSksCi0gICAgICB2MzBfKHYzMCks
IHYzMV8odjMxKSwgdjMyXyh2MzIpLCB2MzNfKHYzMyksIHYzNF8odjM0KSwgdjM1Xyh2MzUpLAot
ICAgICAgdjM2Xyh2MzYpLCB2MzdfKHYzNykge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4K
LSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJh
eVtdID0ge3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAg
IHN0YXRpY19jYXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+
KHY1XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3Xyks
IHN0YXRpY19jYXN0PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRp
Y19jYXN0PFQ+KHYxMF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nh
c3Q8VD4odjEyXyksIHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0
aWNfY2FzdDxUPih2MTdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE4XyksIHN0YXRpY19j
YXN0PFQ+KHYxOV8pLCBzdGF0aWNfY2FzdDxUPih2MjBfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjIxXyksIHN0YXRpY19jYXN0PFQ+KHYyMl8pLCBzdGF0aWNfY2FzdDxUPih2MjNfKSwKLSAg
ICAgICAgc3RhdGljX2Nhc3Q8VD4odjI0XyksIHN0YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0aWNf
Y2FzdDxUPih2MjZfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI3XyksIHN0YXRpY19jYXN0
PFQ+KHYyOF8pLCBzdGF0aWNfY2FzdDxUPih2MjlfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4o
djMwXyksIHN0YXRpY19jYXN0PFQ+KHYzMV8pLCBzdGF0aWNfY2FzdDxUPih2MzJfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjMzXyksIHN0YXRpY19jYXN0PFQ+KHYzNF8pLCBzdGF0aWNfY2Fz
dDxUPih2MzVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjM2XyksIHN0YXRpY19jYXN0PFQ+
KHYzN18pfTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJh
eTM3KGNvbnN0IFZhbHVlQXJyYXkzNyYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhl
ci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIu
djVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4
XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52
MTFfKSwgdjEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRf
KSwKLSAgICAgIHYxNV8ob3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIu
djE3XyksIHYxOF8ob3RoZXIudjE4XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90
aGVyLnYyMF8pLCB2MjFfKG90aGVyLnYyMV8pLCB2MjJfKG90aGVyLnYyMl8pLAotICAgICAgdjIz
XyhvdGhlci52MjNfKSwgdjI0XyhvdGhlci52MjRfKSwgdjI1XyhvdGhlci52MjVfKSwgdjI2Xyhv
dGhlci52MjZfKSwKLSAgICAgIHYyN18ob3RoZXIudjI3XyksIHYyOF8ob3RoZXIudjI4XyksIHYy
OV8ob3RoZXIudjI5XyksIHYzMF8ob3RoZXIudjMwXyksCi0gICAgICB2MzFfKG90aGVyLnYzMV8p
LCB2MzJfKG90aGVyLnYzMl8pLCB2MzNfKG90aGVyLnYzM18pLCB2MzRfKG90aGVyLnYzNF8pLAot
ICAgICAgdjM1XyhvdGhlci52MzVfKSwgdjM2XyhvdGhlci52MzZfKSwgdjM3XyhvdGhlci52Mzdf
KSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlz
IHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5MzcmIG90aGVy
KTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29uc3QgVDMgdjNfOwot
ICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYgdjZfOwotICBjb25z
dCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwotICBjb25zdCBUMTAg
djEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwotICBjb25zdCBUMTMg
djEzXzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwotICBjb25zdCBUMTYg
djE2XzsKLSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwotICBjb25zdCBUMTkg
djE5XzsKLSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwotICBjb25zdCBUMjIg
djIyXzsKLSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwotICBjb25zdCBUMjUg
djI1XzsKLSAgY29uc3QgVDI2IHYyNl87Ci0gIGNvbnN0IFQyNyB2MjdfOwotICBjb25zdCBUMjgg
djI4XzsKLSAgY29uc3QgVDI5IHYyOV87Ci0gIGNvbnN0IFQzMCB2MzBfOwotICBjb25zdCBUMzEg
djMxXzsKLSAgY29uc3QgVDMyIHYzMl87Ci0gIGNvbnN0IFQzMyB2MzNfOwotICBjb25zdCBUMzQg
djM0XzsKLSAgY29uc3QgVDM1IHYzNV87Ci0gIGNvbnN0IFQzNiB2MzZfOwotICBjb25zdCBUMzcg
djM3XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1l
IFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1l
IFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFt
ZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1l
IFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBl
bmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwg
dHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBU
MjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQz
MCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlwZW5hbWUgVDMzLCB0eXBlbmFt
ZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBUMzYsIHR5cGVuYW1lIFQzNywgdHlw
ZW5hbWUgVDM4PgotY2xhc3MgVmFsdWVBcnJheTM4IHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXkz
OChUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgs
IFQ5IHY5LAotICAgICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0IHYx
NCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywKLSAgICAgIFQxOCB2MTgsIFQxOSB2MTksIFQy
MCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQyNSB2MjUsCi0gICAg
ICBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMxLCBU
MzIgdjMyLCBUMzMgdjMzLAotICAgICAgVDM0IHYzNCwgVDM1IHYzNSwgVDM2IHYzNiwgVDM3IHYz
NywgVDM4IHYzOCkgOiB2MV8odjEpLCB2Ml8odjIpLCB2M18odjMpLAotICAgICAgdjRfKHY0KSwg
djVfKHY1KSwgdjZfKHY2KSwgdjdfKHY3KSwgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLAot
ICAgICAgdjExXyh2MTEpLCB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQpLCB2MTVfKHYx
NSksIHYxNl8odjE2KSwKLSAgICAgIHYxN18odjE3KSwgdjE4Xyh2MTgpLCB2MTlfKHYxOSksIHYy
MF8odjIwKSwgdjIxXyh2MjEpLCB2MjJfKHYyMiksCi0gICAgICB2MjNfKHYyMyksIHYyNF8odjI0
KSwgdjI1Xyh2MjUpLCB2MjZfKHYyNiksIHYyN18odjI3KSwgdjI4Xyh2MjgpLAotICAgICAgdjI5
Xyh2MjkpLCB2MzBfKHYzMCksIHYzMV8odjMxKSwgdjMyXyh2MzIpLCB2MzNfKHYzMyksIHYzNF8o
djM0KSwKLSAgICAgIHYzNV8odjM1KSwgdjM2Xyh2MzYpLCB2MzdfKHYzNyksIHYzOF8odjM4KSB7
fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjxU
PigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4odjFfKSwg
c3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjNfKSwgc3RhdGlj
X2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8VD4odjhfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4odjEwXyksIHN0YXRpY19jYXN0
PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTJfKSwgc3RhdGljX2Nhc3Q8VD4o
djEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTVf
KSwgc3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19jYXN0PFQ+KHYxN18pLAotICAgICAgICBz
dGF0aWNfY2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8VD4odjE5XyksIHN0YXRpY19jYXN0PFQ+
KHYyMF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjFfKSwgc3RhdGljX2Nhc3Q8VD4odjIy
XyksIHN0YXRpY19jYXN0PFQ+KHYyM18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjRfKSwg
c3RhdGljX2Nhc3Q8VD4odjI1XyksIHN0YXRpY19jYXN0PFQ+KHYyNl8pLAotICAgICAgICBzdGF0
aWNfY2FzdDxUPih2MjdfKSwgc3RhdGljX2Nhc3Q8VD4odjI4XyksIHN0YXRpY19jYXN0PFQ+KHYy
OV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzBfKSwgc3RhdGljX2Nhc3Q8VD4odjMxXyks
IHN0YXRpY19jYXN0PFQ+KHYzMl8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzNfKSwgc3Rh
dGljX2Nhc3Q8VD4odjM0XyksIHN0YXRpY19jYXN0PFQ+KHYzNV8pLAotICAgICAgICBzdGF0aWNf
Y2FzdDxUPih2MzZfKSwgc3RhdGljX2Nhc3Q8VD4odjM3XyksIHN0YXRpY19jYXN0PFQ+KHYzOF8p
fTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTM4KGNv
bnN0IFZhbHVlQXJyYXkzOCYgb3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8p
LAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwg
djZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5
XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwg
djEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRfKSwKLSAg
ICAgIHYxNV8ob3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIudjE3Xyks
IHYxOF8ob3RoZXIudjE4XyksCi0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90aGVyLnYy
MF8pLCB2MjFfKG90aGVyLnYyMV8pLCB2MjJfKG90aGVyLnYyMl8pLAotICAgICAgdjIzXyhvdGhl
ci52MjNfKSwgdjI0XyhvdGhlci52MjRfKSwgdjI1XyhvdGhlci52MjVfKSwgdjI2XyhvdGhlci52
MjZfKSwKLSAgICAgIHYyN18ob3RoZXIudjI3XyksIHYyOF8ob3RoZXIudjI4XyksIHYyOV8ob3Ro
ZXIudjI5XyksIHYzMF8ob3RoZXIudjMwXyksCi0gICAgICB2MzFfKG90aGVyLnYzMV8pLCB2MzJf
KG90aGVyLnYzMl8pLCB2MzNfKG90aGVyLnYzM18pLCB2MzRfKG90aGVyLnYzNF8pLAotICAgICAg
djM1XyhvdGhlci52MzVfKSwgdjM2XyhvdGhlci52MzZfKSwgdjM3XyhvdGhlci52MzdfKSwgdjM4
XyhvdGhlci52MzhfKSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBh
c3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFy
cmF5MzgmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29u
c3QgVDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYg
djZfOwotICBjb25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwot
ICBjb25zdCBUMTAgdjEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwot
ICBjb25zdCBUMTMgdjEzXzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwot
ICBjb25zdCBUMTYgdjE2XzsKLSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwot
ICBjb25zdCBUMTkgdjE5XzsKLSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwot
ICBjb25zdCBUMjIgdjIyXzsKLSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwot
ICBjb25zdCBUMjUgdjI1XzsKLSAgY29uc3QgVDI2IHYyNl87Ci0gIGNvbnN0IFQyNyB2MjdfOwot
ICBjb25zdCBUMjggdjI4XzsKLSAgY29uc3QgVDI5IHYyOV87Ci0gIGNvbnN0IFQzMCB2MzBfOwot
ICBjb25zdCBUMzEgdjMxXzsKLSAgY29uc3QgVDMyIHYzMl87Ci0gIGNvbnN0IFQzMyB2MzNfOwot
ICBjb25zdCBUMzQgdjM0XzsKLSAgY29uc3QgVDM1IHYzNV87Ci0gIGNvbnN0IFQzNiB2MzZfOwot
ICBjb25zdCBUMzcgdjM3XzsKLSAgY29uc3QgVDM4IHYzOF87Ci19OwotCi10ZW1wbGF0ZSA8dHlw
ZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1l
IFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1l
IFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVu
YW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0
eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0g
ICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0
LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1l
IFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBl
bmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAg
dHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5Pgot
Y2xhc3MgVmFsdWVBcnJheTM5IHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXkzOShUMSB2MSwgVDIg
djIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAg
ICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0IHYxNCwgVDE1IHYxNSwg
VDE2IHYxNiwgVDE3IHYxNywKLSAgICAgIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2
MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQyNSB2MjUsCi0gICAgICBUMjYgdjI2LCBU
MjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMxLCBUMzIgdjMyLCBUMzMg
djMzLAotICAgICAgVDM0IHYzNCwgVDM1IHYzNSwgVDM2IHYzNiwgVDM3IHYzNywgVDM4IHYzOCwg
VDM5IHYzOSkgOiB2MV8odjEpLCB2Ml8odjIpLAotICAgICAgdjNfKHYzKSwgdjRfKHY0KSwgdjVf
KHY1KSwgdjZfKHY2KSwgdjdfKHY3KSwgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLAotICAg
ICAgdjExXyh2MTEpLCB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQpLCB2MTVfKHYxNSks
IHYxNl8odjE2KSwKLSAgICAgIHYxN18odjE3KSwgdjE4Xyh2MTgpLCB2MTlfKHYxOSksIHYyMF8o
djIwKSwgdjIxXyh2MjEpLCB2MjJfKHYyMiksCi0gICAgICB2MjNfKHYyMyksIHYyNF8odjI0KSwg
djI1Xyh2MjUpLCB2MjZfKHYyNiksIHYyN18odjI3KSwgdjI4Xyh2MjgpLAotICAgICAgdjI5Xyh2
MjkpLCB2MzBfKHYzMCksIHYzMV8odjMxKSwgdjMyXyh2MzIpLCB2MzNfKHYzMyksIHYzNF8odjM0
KSwKLSAgICAgIHYzNV8odjM1KSwgdjM2Xyh2MzYpLCB2MzdfKHYzNyksIHYzOF8odjM4KSwgdjM5
Xyh2MzkpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2Vu
ZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxU
Pih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2M18p
LCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2NV8pLAotICAgICAgICBzdGF0
aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18pLCBzdGF0aWNfY2FzdDxUPih2OF8p
LAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNfY2FzdDxUPih2MTBfKSwgc3Rh
dGljX2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxMl8pLCBzdGF0aWNf
Y2FzdDxUPih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4odjE0XyksCi0gICAgICAgIHN0YXRpY19jYXN0
PFQ+KHYxNV8pLCBzdGF0aWNfY2FzdDxUPih2MTZfKSwgc3RhdGljX2Nhc3Q8VD4odjE3XyksCi0g
ICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxOF8pLCBzdGF0aWNfY2FzdDxUPih2MTlfKSwgc3RhdGlj
X2Nhc3Q8VD4odjIwXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyMV8pLCBzdGF0aWNfY2Fz
dDxUPih2MjJfKSwgc3RhdGljX2Nhc3Q8VD4odjIzXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+
KHYyNF8pLCBzdGF0aWNfY2FzdDxUPih2MjVfKSwgc3RhdGljX2Nhc3Q8VD4odjI2XyksCi0gICAg
ICAgIHN0YXRpY19jYXN0PFQ+KHYyN18pLCBzdGF0aWNfY2FzdDxUPih2MjhfKSwgc3RhdGljX2Nh
c3Q8VD4odjI5XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzMF8pLCBzdGF0aWNfY2FzdDxU
Pih2MzFfKSwgc3RhdGljX2Nhc3Q8VD4odjMyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYz
M18pLCBzdGF0aWNfY2FzdDxUPih2MzRfKSwgc3RhdGljX2Nhc3Q8VD4odjM1XyksCi0gICAgICAg
IHN0YXRpY19jYXN0PFQ+KHYzNl8pLCBzdGF0aWNfY2FzdDxUPih2MzdfKSwgc3RhdGljX2Nhc3Q8
VD4odjM4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzOV8pfTsKLSAgICByZXR1cm4gVmFs
dWVzSW4oYXJyYXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTM5KGNvbnN0IFZhbHVlQXJyYXkzOSYg
b3RoZXIpIDogdjFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVy
LnYzXyksIHY0XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0g
ICAgICB2N18ob3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2MTBf
KG90aGVyLnYxMF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJfKSwg
djEzXyhvdGhlci52MTNfKSwgdjE0XyhvdGhlci52MTRfKSwKLSAgICAgIHYxNV8ob3RoZXIudjE1
XyksIHYxNl8ob3RoZXIudjE2XyksIHYxN18ob3RoZXIudjE3XyksIHYxOF8ob3RoZXIudjE4Xyks
Ci0gICAgICB2MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90aGVyLnYyMF8pLCB2MjFfKG90aGVyLnYy
MV8pLCB2MjJfKG90aGVyLnYyMl8pLAotICAgICAgdjIzXyhvdGhlci52MjNfKSwgdjI0XyhvdGhl
ci52MjRfKSwgdjI1XyhvdGhlci52MjVfKSwgdjI2XyhvdGhlci52MjZfKSwKLSAgICAgIHYyN18o
b3RoZXIudjI3XyksIHYyOF8ob3RoZXIudjI4XyksIHYyOV8ob3RoZXIudjI5XyksIHYzMF8ob3Ro
ZXIudjMwXyksCi0gICAgICB2MzFfKG90aGVyLnYzMV8pLCB2MzJfKG90aGVyLnYzMl8pLCB2MzNf
KG90aGVyLnYzM18pLCB2MzRfKG90aGVyLnYzNF8pLAotICAgICAgdjM1XyhvdGhlci52MzVfKSwg
djM2XyhvdGhlci52MzZfKSwgdjM3XyhvdGhlci52MzdfKSwgdjM4XyhvdGhlci52MzhfKSwKLSAg
ICAgIHYzOV8ob3RoZXIudjM5Xykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0
aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3Qg
VmFsdWVBcnJheTM5JiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87
Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNv
bnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87Ci0gIGNvbnN0IFQ5
IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwotICBjb25zdCBUMTIg
djEyXzsKLSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRfOwotICBjb25zdCBUMTUg
djE1XzsKLSAgY29uc3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQxNyB2MTdfOwotICBjb25zdCBUMTgg
djE4XzsKLSAgY29uc3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQyMCB2MjBfOwotICBjb25zdCBUMjEg
djIxXzsKLSAgY29uc3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQyMyB2MjNfOwotICBjb25zdCBUMjQg
djI0XzsKLSAgY29uc3QgVDI1IHYyNV87Ci0gIGNvbnN0IFQyNiB2MjZfOwotICBjb25zdCBUMjcg
djI3XzsKLSAgY29uc3QgVDI4IHYyOF87Ci0gIGNvbnN0IFQyOSB2MjlfOwotICBjb25zdCBUMzAg
djMwXzsKLSAgY29uc3QgVDMxIHYzMV87Ci0gIGNvbnN0IFQzMiB2MzJfOwotICBjb25zdCBUMzMg
djMzXzsKLSAgY29uc3QgVDM0IHYzNF87Ci0gIGNvbnN0IFQzNSB2MzVfOwotICBjb25zdCBUMzYg
djM2XzsKLSAgY29uc3QgVDM3IHYzN187Ci0gIGNvbnN0IFQzOCB2MzhfOwotICBjb25zdCBUMzkg
djM5XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1l
IFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1l
IFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFt
ZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1l
IFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBl
bmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwg
dHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBU
MjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQz
MCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlwZW5hbWUgVDMzLCB0eXBlbmFt
ZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBUMzYsIHR5cGVuYW1lIFQzNywgdHlw
ZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0MD4KLWNsYXNzIFZhbHVlQXJyYXk0
MCB7Ci0gcHVibGljOgotICBWYWx1ZUFycmF5NDAoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQs
IFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwKLSAgICAgIFQxMCB2MTAsIFQxMSB2
MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcs
Ci0gICAgICBUMTggdjE4LCBUMTkgdjE5LCBUMjAgdjIwLCBUMjEgdjIxLCBUMjIgdjIyLCBUMjMg
djIzLCBUMjQgdjI0LCBUMjUgdjI1LAotICAgICAgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwg
VDI5IHYyOSwgVDMwIHYzMCwgVDMxIHYzMSwgVDMyIHYzMiwgVDMzIHYzMywKLSAgICAgIFQzNCB2
MzQsIFQzNSB2MzUsIFQzNiB2MzYsIFQzNyB2MzcsIFQzOCB2MzgsIFQzOSB2MzksIFQ0MCB2NDAp
IDogdjFfKHYxKSwKLSAgICAgIHYyXyh2MiksIHYzXyh2MyksIHY0Xyh2NCksIHY1Xyh2NSksIHY2
Xyh2NiksIHY3Xyh2NyksIHY4Xyh2OCksIHY5Xyh2OSksCi0gICAgICB2MTBfKHYxMCksIHYxMV8o
djExKSwgdjEyXyh2MTIpLCB2MTNfKHYxMyksIHYxNF8odjE0KSwgdjE1Xyh2MTUpLAotICAgICAg
djE2Xyh2MTYpLCB2MTdfKHYxNyksIHYxOF8odjE4KSwgdjE5Xyh2MTkpLCB2MjBfKHYyMCksIHYy
MV8odjIxKSwKLSAgICAgIHYyMl8odjIyKSwgdjIzXyh2MjMpLCB2MjRfKHYyNCksIHYyNV8odjI1
KSwgdjI2Xyh2MjYpLCB2MjdfKHYyNyksCi0gICAgICB2MjhfKHYyOCksIHYyOV8odjI5KSwgdjMw
Xyh2MzApLCB2MzFfKHYzMSksIHYzMl8odjMyKSwgdjMzXyh2MzMpLAotICAgICAgdjM0Xyh2MzQp
LCB2MzVfKHYzNSksIHYzNl8odjM2KSwgdjM3Xyh2MzcpLCB2MzhfKHYzOCksIHYzOV8odjM5KSwK
LSAgICAgIHY0MF8odjQwKSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRv
ciBQYXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3Rh
dGljX2Nhc3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nh
c3Q8VD4odjNfKSwgc3RhdGljX2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAg
ICAgICAgc3RhdGljX2Nhc3Q8VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nh
c3Q8VD4odjhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4o
djEwXyksIHN0YXRpY19jYXN0PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTJf
KSwgc3RhdGljX2Nhc3Q8VD4odjEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAgICBz
dGF0aWNfY2FzdDxUPih2MTVfKSwgc3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19jYXN0PFQ+
KHYxN18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8VD4odjE5
XyksIHN0YXRpY19jYXN0PFQ+KHYyMF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjFfKSwg
c3RhdGljX2Nhc3Q8VD4odjIyXyksIHN0YXRpY19jYXN0PFQ+KHYyM18pLAotICAgICAgICBzdGF0
aWNfY2FzdDxUPih2MjRfKSwgc3RhdGljX2Nhc3Q8VD4odjI1XyksIHN0YXRpY19jYXN0PFQ+KHYy
Nl8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjdfKSwgc3RhdGljX2Nhc3Q8VD4odjI4Xyks
IHN0YXRpY19jYXN0PFQ+KHYyOV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzBfKSwgc3Rh
dGljX2Nhc3Q8VD4odjMxXyksIHN0YXRpY19jYXN0PFQ+KHYzMl8pLAotICAgICAgICBzdGF0aWNf
Y2FzdDxUPih2MzNfKSwgc3RhdGljX2Nhc3Q8VD4odjM0XyksIHN0YXRpY19jYXN0PFQ+KHYzNV8p
LAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzZfKSwgc3RhdGljX2Nhc3Q8VD4odjM3XyksIHN0
YXRpY19jYXN0PFQ+KHYzOF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzlfKSwgc3RhdGlj
X2Nhc3Q8VD4odjQwXyl9OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBW
YWx1ZUFycmF5NDAoY29uc3QgVmFsdWVBcnJheTQwJiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwg
djJfKG90aGVyLnYyXyksCi0gICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1
XyhvdGhlci52NV8pLCB2Nl8ob3RoZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8o
b3RoZXIudjhfKSwgdjlfKG90aGVyLnY5XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFf
KG90aGVyLnYxMV8pLCB2MTJfKG90aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90
aGVyLnYxNF8pLAotICAgICAgdjE1XyhvdGhlci52MTVfKSwgdjE2XyhvdGhlci52MTZfKSwgdjE3
XyhvdGhlci52MTdfKSwgdjE4XyhvdGhlci52MThfKSwKLSAgICAgIHYxOV8ob3RoZXIudjE5Xyks
IHYyMF8ob3RoZXIudjIwXyksIHYyMV8ob3RoZXIudjIxXyksIHYyMl8ob3RoZXIudjIyXyksCi0g
ICAgICB2MjNfKG90aGVyLnYyM18pLCB2MjRfKG90aGVyLnYyNF8pLCB2MjVfKG90aGVyLnYyNV8p
LCB2MjZfKG90aGVyLnYyNl8pLAotICAgICAgdjI3XyhvdGhlci52MjdfKSwgdjI4XyhvdGhlci52
MjhfKSwgdjI5XyhvdGhlci52MjlfKSwgdjMwXyhvdGhlci52MzBfKSwKLSAgICAgIHYzMV8ob3Ro
ZXIudjMxXyksIHYzMl8ob3RoZXIudjMyXyksIHYzM18ob3RoZXIudjMzXyksIHYzNF8ob3RoZXIu
djM0XyksCi0gICAgICB2MzVfKG90aGVyLnYzNV8pLCB2MzZfKG90aGVyLnYzNl8pLCB2MzdfKG90
aGVyLnYzN18pLCB2MzhfKG90aGVyLnYzOF8pLAotICAgICAgdjM5XyhvdGhlci52MzlfKSwgdjQw
XyhvdGhlci52NDBfKSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBh
c3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFy
cmF5NDAmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsKLSAgY29u
c3QgVDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29uc3QgVDYg
djZfOwotICBjb25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkgdjlfOwot
ICBjb25zdCBUMTAgdjEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2MTJfOwot
ICBjb25zdCBUMTMgdjEzXzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2MTVfOwot
ICBjb25zdCBUMTYgdjE2XzsKLSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2MThfOwot
ICBjb25zdCBUMTkgdjE5XzsKLSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2MjFfOwot
ICBjb25zdCBUMjIgdjIyXzsKLSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2MjRfOwot
ICBjb25zdCBUMjUgdjI1XzsKLSAgY29uc3QgVDI2IHYyNl87Ci0gIGNvbnN0IFQyNyB2MjdfOwot
ICBjb25zdCBUMjggdjI4XzsKLSAgY29uc3QgVDI5IHYyOV87Ci0gIGNvbnN0IFQzMCB2MzBfOwot
ICBjb25zdCBUMzEgdjMxXzsKLSAgY29uc3QgVDMyIHYzMl87Ci0gIGNvbnN0IFQzMyB2MzNfOwot
ICBjb25zdCBUMzQgdjM0XzsKLSAgY29uc3QgVDM1IHYzNV87Ci0gIGNvbnN0IFQzNiB2MzZfOwot
ICBjb25zdCBUMzcgdjM3XzsKLSAgY29uc3QgVDM4IHYzOF87Ci0gIGNvbnN0IFQzOSB2MzlfOwot
ICBjb25zdCBUNDAgdjQwXzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUg
VDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUg
VDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwK
LSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBU
MTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5h
bWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5
cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAg
ICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjks
IHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlwZW5hbWUg
VDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBUMzYsIHR5cGVu
YW1lIFQzNywgdHlwZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0MCwKLSAgICB0
eXBlbmFtZSBUNDE+Ci1jbGFzcyBWYWx1ZUFycmF5NDEgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJh
eTQxKFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2
OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQg
djE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYxOSwg
VDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwgVDIzIHYyMywgVDI0IHYyNCwgVDI1IHYyNSwKLSAg
ICAgIFQyNiB2MjYsIFQyNyB2MjcsIFQyOCB2MjgsIFQyOSB2MjksIFQzMCB2MzAsIFQzMSB2MzEs
IFQzMiB2MzIsIFQzMyB2MzMsCi0gICAgICBUMzQgdjM0LCBUMzUgdjM1LCBUMzYgdjM2LCBUMzcg
djM3LCBUMzggdjM4LCBUMzkgdjM5LCBUNDAgdjQwLAotICAgICAgVDQxIHY0MSkgOiB2MV8odjEp
LCB2Ml8odjIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpLCB2N18odjcpLAot
ICAgICAgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLCB2MTFfKHYxMSksIHYxMl8odjEyKSwg
djEzXyh2MTMpLCB2MTRfKHYxNCksCi0gICAgICB2MTVfKHYxNSksIHYxNl8odjE2KSwgdjE3Xyh2
MTcpLCB2MThfKHYxOCksIHYxOV8odjE5KSwgdjIwXyh2MjApLAotICAgICAgdjIxXyh2MjEpLCB2
MjJfKHYyMiksIHYyM18odjIzKSwgdjI0Xyh2MjQpLCB2MjVfKHYyNSksIHYyNl8odjI2KSwKLSAg
ICAgIHYyN18odjI3KSwgdjI4Xyh2MjgpLCB2MjlfKHYyOSksIHYzMF8odjMwKSwgdjMxXyh2MzEp
LCB2MzJfKHYzMiksCi0gICAgICB2MzNfKHYzMyksIHYzNF8odjM0KSwgdjM1Xyh2MzUpLCB2MzZf
KHYzNiksIHYzN18odjM3KSwgdjM4Xyh2MzgpLAotICAgICAgdjM5Xyh2MzkpLCB2NDBfKHY0MCks
IHY0MV8odjQxKSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJh
bUdlbmVyYXRvcjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nh
c3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4o
djNfKSwgc3RhdGljX2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8VD4o
djhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4odjEwXyks
IHN0YXRpY19jYXN0PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTJfKSwgc3Rh
dGljX2Nhc3Q8VD4odjEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAgICBzdGF0aWNf
Y2FzdDxUPih2MTVfKSwgc3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19jYXN0PFQ+KHYxN18p
LAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8VD4odjE5XyksIHN0
YXRpY19jYXN0PFQ+KHYyMF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjFfKSwgc3RhdGlj
X2Nhc3Q8VD4odjIyXyksIHN0YXRpY19jYXN0PFQ+KHYyM18pLAotICAgICAgICBzdGF0aWNfY2Fz
dDxUPih2MjRfKSwgc3RhdGljX2Nhc3Q8VD4odjI1XyksIHN0YXRpY19jYXN0PFQ+KHYyNl8pLAot
ICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjdfKSwgc3RhdGljX2Nhc3Q8VD4odjI4XyksIHN0YXRp
Y19jYXN0PFQ+KHYyOV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzBfKSwgc3RhdGljX2Nh
c3Q8VD4odjMxXyksIHN0YXRpY19jYXN0PFQ+KHYzMl8pLAotICAgICAgICBzdGF0aWNfY2FzdDxU
Pih2MzNfKSwgc3RhdGljX2Nhc3Q8VD4odjM0XyksIHN0YXRpY19jYXN0PFQ+KHYzNV8pLAotICAg
ICAgICBzdGF0aWNfY2FzdDxUPih2MzZfKSwgc3RhdGljX2Nhc3Q8VD4odjM3XyksIHN0YXRpY19j
YXN0PFQ+KHYzOF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzlfKSwgc3RhdGljX2Nhc3Q8
VD4odjQwXyksIHN0YXRpY19jYXN0PFQ+KHY0MV8pfTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJy
YXkpOwotICB9Ci0KLSAgVmFsdWVBcnJheTQxKGNvbnN0IFZhbHVlQXJyYXk0MSYgb3RoZXIpIDog
djFfKG90aGVyLnYxXyksIHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0
XyhvdGhlci52NF8pLCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18o
b3RoZXIudjdfKSwgdjhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYx
MF8pLAotICAgICAgdjExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhl
ci52MTNfKSwgdjE0XyhvdGhlci52MTRfKSwKLSAgICAgIHYxNV8ob3RoZXIudjE1XyksIHYxNl8o
b3RoZXIudjE2XyksIHYxN18ob3RoZXIudjE3XyksIHYxOF8ob3RoZXIudjE4XyksCi0gICAgICB2
MTlfKG90aGVyLnYxOV8pLCB2MjBfKG90aGVyLnYyMF8pLCB2MjFfKG90aGVyLnYyMV8pLCB2MjJf
KG90aGVyLnYyMl8pLAotICAgICAgdjIzXyhvdGhlci52MjNfKSwgdjI0XyhvdGhlci52MjRfKSwg
djI1XyhvdGhlci52MjVfKSwgdjI2XyhvdGhlci52MjZfKSwKLSAgICAgIHYyN18ob3RoZXIudjI3
XyksIHYyOF8ob3RoZXIudjI4XyksIHYyOV8ob3RoZXIudjI5XyksIHYzMF8ob3RoZXIudjMwXyks
Ci0gICAgICB2MzFfKG90aGVyLnYzMV8pLCB2MzJfKG90aGVyLnYzMl8pLCB2MzNfKG90aGVyLnYz
M18pLCB2MzRfKG90aGVyLnYzNF8pLAotICAgICAgdjM1XyhvdGhlci52MzVfKSwgdjM2XyhvdGhl
ci52MzZfKSwgdjM3XyhvdGhlci52MzdfKSwgdjM4XyhvdGhlci52MzhfKSwKLSAgICAgIHYzOV8o
b3RoZXIudjM5XyksIHY0MF8ob3RoZXIudjQwXyksIHY0MV8ob3RoZXIudjQxXykge30KLQotIHBy
aXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRl
ZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTQxJiBvdGhlcik7Ci0KLSAgY29u
c3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3QgVDQg
djRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcgdjdfOwot
ICBjb25zdCBUOCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87Ci0gIGNv
bnN0IFQxMSB2MTFfOwotICBjb25zdCBUMTIgdjEyXzsKLSAgY29uc3QgVDEzIHYxM187Ci0gIGNv
bnN0IFQxNCB2MTRfOwotICBjb25zdCBUMTUgdjE1XzsKLSAgY29uc3QgVDE2IHYxNl87Ci0gIGNv
bnN0IFQxNyB2MTdfOwotICBjb25zdCBUMTggdjE4XzsKLSAgY29uc3QgVDE5IHYxOV87Ci0gIGNv
bnN0IFQyMCB2MjBfOwotICBjb25zdCBUMjEgdjIxXzsKLSAgY29uc3QgVDIyIHYyMl87Ci0gIGNv
bnN0IFQyMyB2MjNfOwotICBjb25zdCBUMjQgdjI0XzsKLSAgY29uc3QgVDI1IHYyNV87Ci0gIGNv
bnN0IFQyNiB2MjZfOwotICBjb25zdCBUMjcgdjI3XzsKLSAgY29uc3QgVDI4IHYyOF87Ci0gIGNv
bnN0IFQyOSB2MjlfOwotICBjb25zdCBUMzAgdjMwXzsKLSAgY29uc3QgVDMxIHYzMV87Ci0gIGNv
bnN0IFQzMiB2MzJfOwotICBjb25zdCBUMzMgdjMzXzsKLSAgY29uc3QgVDM0IHYzNF87Ci0gIGNv
bnN0IFQzNSB2MzVfOwotICBjb25zdCBUMzYgdjM2XzsKLSAgY29uc3QgVDM3IHYzN187Ci0gIGNv
bnN0IFQzOCB2MzhfOwotICBjb25zdCBUMzkgdjM5XzsKLSAgY29uc3QgVDQwIHY0MF87Ci0gIGNv
bnN0IFQ0MSB2NDFfOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwg
dHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwg
dHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAg
IHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwg
dHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBU
MTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5h
bWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5
cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlw
ZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMs
IHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUg
VDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVu
YW1lIFQ0MSwgdHlwZW5hbWUgVDQyPgotY2xhc3MgVmFsdWVBcnJheTQyIHsKLSBwdWJsaWM6Ci0g
IFZhbHVlQXJyYXk0MihUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBU
NyB2NywgVDggdjgsIFQ5IHY5LAotICAgICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEz
IHYxMywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywKLSAgICAgIFQxOCB2MTgs
IFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQy
NSB2MjUsCi0gICAgICBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMw
LCBUMzEgdjMxLCBUMzIgdjMyLCBUMzMgdjMzLAotICAgICAgVDM0IHYzNCwgVDM1IHYzNSwgVDM2
IHYzNiwgVDM3IHYzNywgVDM4IHYzOCwgVDM5IHYzOSwgVDQwIHY0MCwgVDQxIHY0MSwKLSAgICAg
IFQ0MiB2NDIpIDogdjFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSwgdjRfKHY0KSwgdjVfKHY1KSwg
djZfKHY2KSwgdjdfKHY3KSwKLSAgICAgIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwgdjEx
Xyh2MTEpLCB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQpLAotICAgICAgdjE1Xyh2MTUp
LCB2MTZfKHYxNiksIHYxN18odjE3KSwgdjE4Xyh2MTgpLCB2MTlfKHYxOSksIHYyMF8odjIwKSwK
LSAgICAgIHYyMV8odjIxKSwgdjIyXyh2MjIpLCB2MjNfKHYyMyksIHYyNF8odjI0KSwgdjI1Xyh2
MjUpLCB2MjZfKHYyNiksCi0gICAgICB2MjdfKHYyNyksIHYyOF8odjI4KSwgdjI5Xyh2MjkpLCB2
MzBfKHYzMCksIHYzMV8odjMxKSwgdjMyXyh2MzIpLAotICAgICAgdjMzXyh2MzMpLCB2MzRfKHYz
NCksIHYzNV8odjM1KSwgdjM2Xyh2MzYpLCB2MzdfKHYzNyksIHYzOF8odjM4KSwKLSAgICAgIHYz
OV8odjM5KSwgdjQwXyh2NDApLCB2NDFfKHY0MSksIHY0Ml8odjQyKSB7fQotCi0gIHRlbXBsYXRl
IDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsKLSAg
ICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4odjFfKSwgc3RhdGljX2Nhc3Q8VD4o
djJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjNfKSwgc3RhdGljX2Nhc3Q8VD4odjRfKSwg
c3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjZfKSwgc3RhdGlj
X2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8VD4odjhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4odjEwXyksIHN0YXRpY19jYXN0PFQ+KHYxMV8pLAotICAg
ICAgICBzdGF0aWNfY2FzdDxUPih2MTJfKSwgc3RhdGljX2Nhc3Q8VD4odjEzXyksIHN0YXRpY19j
YXN0PFQ+KHYxNF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTVfKSwgc3RhdGljX2Nhc3Q8
VD4odjE2XyksIHN0YXRpY19jYXN0PFQ+KHYxN18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2
MThfKSwgc3RhdGljX2Nhc3Q8VD4odjE5XyksIHN0YXRpY19jYXN0PFQ+KHYyMF8pLAotICAgICAg
ICBzdGF0aWNfY2FzdDxUPih2MjFfKSwgc3RhdGljX2Nhc3Q8VD4odjIyXyksIHN0YXRpY19jYXN0
PFQ+KHYyM18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjRfKSwgc3RhdGljX2Nhc3Q8VD4o
djI1XyksIHN0YXRpY19jYXN0PFQ+KHYyNl8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Mjdf
KSwgc3RhdGljX2Nhc3Q8VD4odjI4XyksIHN0YXRpY19jYXN0PFQ+KHYyOV8pLAotICAgICAgICBz
dGF0aWNfY2FzdDxUPih2MzBfKSwgc3RhdGljX2Nhc3Q8VD4odjMxXyksIHN0YXRpY19jYXN0PFQ+
KHYzMl8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzNfKSwgc3RhdGljX2Nhc3Q8VD4odjM0
XyksIHN0YXRpY19jYXN0PFQ+KHYzNV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzZfKSwg
c3RhdGljX2Nhc3Q8VD4odjM3XyksIHN0YXRpY19jYXN0PFQ+KHYzOF8pLAotICAgICAgICBzdGF0
aWNfY2FzdDxUPih2MzlfKSwgc3RhdGljX2Nhc3Q8VD4odjQwXyksIHN0YXRpY19jYXN0PFQ+KHY0
MV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2NDJfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0lu
KGFycmF5KTsKLSAgfQotCi0gIFZhbHVlQXJyYXk0Mihjb25zdCBWYWx1ZUFycmF5NDImIG90aGVy
KSA6IHYxXyhvdGhlci52MV8pLCB2Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52M18p
LCB2NF8ob3RoZXIudjRfKSwgdjVfKG90aGVyLnY1XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAg
djdfKG90aGVyLnY3XyksIHY4XyhvdGhlci52OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhl
ci52MTBfKSwKLSAgICAgIHYxMV8ob3RoZXIudjExXyksIHYxMl8ob3RoZXIudjEyXyksIHYxM18o
b3RoZXIudjEzXyksIHYxNF8ob3RoZXIudjE0XyksCi0gICAgICB2MTVfKG90aGVyLnYxNV8pLCB2
MTZfKG90aGVyLnYxNl8pLCB2MTdfKG90aGVyLnYxN18pLCB2MThfKG90aGVyLnYxOF8pLAotICAg
ICAgdjE5XyhvdGhlci52MTlfKSwgdjIwXyhvdGhlci52MjBfKSwgdjIxXyhvdGhlci52MjFfKSwg
djIyXyhvdGhlci52MjJfKSwKLSAgICAgIHYyM18ob3RoZXIudjIzXyksIHYyNF8ob3RoZXIudjI0
XyksIHYyNV8ob3RoZXIudjI1XyksIHYyNl8ob3RoZXIudjI2XyksCi0gICAgICB2MjdfKG90aGVy
LnYyN18pLCB2MjhfKG90aGVyLnYyOF8pLCB2MjlfKG90aGVyLnYyOV8pLCB2MzBfKG90aGVyLnYz
MF8pLAotICAgICAgdjMxXyhvdGhlci52MzFfKSwgdjMyXyhvdGhlci52MzJfKSwgdjMzXyhvdGhl
ci52MzNfKSwgdjM0XyhvdGhlci52MzRfKSwKLSAgICAgIHYzNV8ob3RoZXIudjM1XyksIHYzNl8o
b3RoZXIudjM2XyksIHYzN18ob3RoZXIudjM3XyksIHYzOF8ob3RoZXIudjM4XyksCi0gICAgICB2
MzlfKG90aGVyLnYzOV8pLCB2NDBfKG90aGVyLnY0MF8pLCB2NDFfKG90aGVyLnY0MV8pLCB2NDJf
KG90aGVyLnY0Ml8pIHt9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFz
c2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IFZhbHVlQXJy
YXk0MiYgb3RoZXIpOwotCi0gIGNvbnN0IFQxIHYxXzsKLSAgY29uc3QgVDIgdjJfOwotICBjb25z
dCBUMyB2M187Ci0gIGNvbnN0IFQ0IHY0XzsKLSAgY29uc3QgVDUgdjVfOwotICBjb25zdCBUNiB2
Nl87Ci0gIGNvbnN0IFQ3IHY3XzsKLSAgY29uc3QgVDggdjhfOwotICBjb25zdCBUOSB2OV87Ci0g
IGNvbnN0IFQxMCB2MTBfOwotICBjb25zdCBUMTEgdjExXzsKLSAgY29uc3QgVDEyIHYxMl87Ci0g
IGNvbnN0IFQxMyB2MTNfOwotICBjb25zdCBUMTQgdjE0XzsKLSAgY29uc3QgVDE1IHYxNV87Ci0g
IGNvbnN0IFQxNiB2MTZfOwotICBjb25zdCBUMTcgdjE3XzsKLSAgY29uc3QgVDE4IHYxOF87Ci0g
IGNvbnN0IFQxOSB2MTlfOwotICBjb25zdCBUMjAgdjIwXzsKLSAgY29uc3QgVDIxIHYyMV87Ci0g
IGNvbnN0IFQyMiB2MjJfOwotICBjb25zdCBUMjMgdjIzXzsKLSAgY29uc3QgVDI0IHYyNF87Ci0g
IGNvbnN0IFQyNSB2MjVfOwotICBjb25zdCBUMjYgdjI2XzsKLSAgY29uc3QgVDI3IHYyN187Ci0g
IGNvbnN0IFQyOCB2MjhfOwotICBjb25zdCBUMjkgdjI5XzsKLSAgY29uc3QgVDMwIHYzMF87Ci0g
IGNvbnN0IFQzMSB2MzFfOwotICBjb25zdCBUMzIgdjMyXzsKLSAgY29uc3QgVDMzIHYzM187Ci0g
IGNvbnN0IFQzNCB2MzRfOwotICBjb25zdCBUMzUgdjM1XzsKLSAgY29uc3QgVDM2IHYzNl87Ci0g
IGNvbnN0IFQzNyB2MzdfOwotICBjb25zdCBUMzggdjM4XzsKLSAgY29uc3QgVDM5IHYzOV87Ci0g
IGNvbnN0IFQ0MCB2NDBfOwotICBjb25zdCBUNDEgdjQxXzsKLSAgY29uc3QgVDQyIHY0Ml87Ci19
OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlw
ZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlw
ZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0
eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0g
ICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5
LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1l
IFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBl
bmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAg
dHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0
eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1lIFQz
OCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAsCi0gICAgdHlwZW5hbWUgVDQxLCB0eXBlbmFt
ZSBUNDIsIHR5cGVuYW1lIFQ0Mz4KLWNsYXNzIFZhbHVlQXJyYXk0MyB7Ci0gcHVibGljOgotICBW
YWx1ZUFycmF5NDMoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcg
djcsIFQ4IHY4LCBUOSB2OSwKLSAgICAgIFQxMCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2
MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcsCi0gICAgICBUMTggdjE4LCBU
MTkgdjE5LCBUMjAgdjIwLCBUMjEgdjIxLCBUMjIgdjIyLCBUMjMgdjIzLCBUMjQgdjI0LCBUMjUg
djI1LAotICAgICAgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwgVDI5IHYyOSwgVDMwIHYzMCwg
VDMxIHYzMSwgVDMyIHYzMiwgVDMzIHYzMywKLSAgICAgIFQzNCB2MzQsIFQzNSB2MzUsIFQzNiB2
MzYsIFQzNyB2MzcsIFQzOCB2MzgsIFQzOSB2MzksIFQ0MCB2NDAsIFQ0MSB2NDEsCi0gICAgICBU
NDIgdjQyLCBUNDMgdjQzKSA6IHYxXyh2MSksIHYyXyh2MiksIHYzXyh2MyksIHY0Xyh2NCksIHY1
Xyh2NSksIHY2Xyh2NiksCi0gICAgICB2N18odjcpLCB2OF8odjgpLCB2OV8odjkpLCB2MTBfKHYx
MCksIHYxMV8odjExKSwgdjEyXyh2MTIpLCB2MTNfKHYxMyksCi0gICAgICB2MTRfKHYxNCksIHYx
NV8odjE1KSwgdjE2Xyh2MTYpLCB2MTdfKHYxNyksIHYxOF8odjE4KSwgdjE5Xyh2MTkpLAotICAg
ICAgdjIwXyh2MjApLCB2MjFfKHYyMSksIHYyMl8odjIyKSwgdjIzXyh2MjMpLCB2MjRfKHYyNCks
IHYyNV8odjI1KSwKLSAgICAgIHYyNl8odjI2KSwgdjI3Xyh2MjcpLCB2MjhfKHYyOCksIHYyOV8o
djI5KSwgdjMwXyh2MzApLCB2MzFfKHYzMSksCi0gICAgICB2MzJfKHYzMiksIHYzM18odjMzKSwg
djM0Xyh2MzQpLCB2MzVfKHYzNSksIHYzNl8odjM2KSwgdjM3Xyh2MzcpLAotICAgICAgdjM4Xyh2
MzgpLCB2MzlfKHYzOSksIHY0MF8odjQwKSwgdjQxXyh2NDEpLCB2NDJfKHY0MiksIHY0M18odjQz
KSB7fQotCi0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRv
cjxUPigpIGNvbnN0IHsKLSAgICBjb25zdCBUIGFycmF5W10gPSB7c3RhdGljX2Nhc3Q8VD4odjFf
KSwgc3RhdGljX2Nhc3Q8VD4odjJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjNfKSwgc3Rh
dGljX2Nhc3Q8VD4odjRfKSwgc3RhdGljX2Nhc3Q8VD4odjVfKSwKLSAgICAgICAgc3RhdGljX2Nh
c3Q8VD4odjZfKSwgc3RhdGljX2Nhc3Q8VD4odjdfKSwgc3RhdGljX2Nhc3Q8VD4odjhfKSwKLSAg
ICAgICAgc3RhdGljX2Nhc3Q8VD4odjlfKSwgc3RhdGljX2Nhc3Q8VD4odjEwXyksIHN0YXRpY19j
YXN0PFQ+KHYxMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MTJfKSwgc3RhdGljX2Nhc3Q8
VD4odjEzXyksIHN0YXRpY19jYXN0PFQ+KHYxNF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2
MTVfKSwgc3RhdGljX2Nhc3Q8VD4odjE2XyksIHN0YXRpY19jYXN0PFQ+KHYxN18pLAotICAgICAg
ICBzdGF0aWNfY2FzdDxUPih2MThfKSwgc3RhdGljX2Nhc3Q8VD4odjE5XyksIHN0YXRpY19jYXN0
PFQ+KHYyMF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjFfKSwgc3RhdGljX2Nhc3Q8VD4o
djIyXyksIHN0YXRpY19jYXN0PFQ+KHYyM18pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MjRf
KSwgc3RhdGljX2Nhc3Q8VD4odjI1XyksIHN0YXRpY19jYXN0PFQ+KHYyNl8pLAotICAgICAgICBz
dGF0aWNfY2FzdDxUPih2MjdfKSwgc3RhdGljX2Nhc3Q8VD4odjI4XyksIHN0YXRpY19jYXN0PFQ+
KHYyOV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzBfKSwgc3RhdGljX2Nhc3Q8VD4odjMx
XyksIHN0YXRpY19jYXN0PFQ+KHYzMl8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzNfKSwg
c3RhdGljX2Nhc3Q8VD4odjM0XyksIHN0YXRpY19jYXN0PFQ+KHYzNV8pLAotICAgICAgICBzdGF0
aWNfY2FzdDxUPih2MzZfKSwgc3RhdGljX2Nhc3Q8VD4odjM3XyksIHN0YXRpY19jYXN0PFQ+KHYz
OF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2MzlfKSwgc3RhdGljX2Nhc3Q8VD4odjQwXyks
IHN0YXRpY19jYXN0PFQ+KHY0MV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2NDJfKSwgc3Rh
dGljX2Nhc3Q8VD4odjQzXyl9OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQot
ICBWYWx1ZUFycmF5NDMoY29uc3QgVmFsdWVBcnJheTQzJiBvdGhlcikgOiB2MV8ob3RoZXIudjFf
KSwgdjJfKG90aGVyLnYyXyksCi0gICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0Xyks
IHY1XyhvdGhlci52NV8pLCB2Nl8ob3RoZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2
OF8ob3RoZXIudjhfKSwgdjlfKG90aGVyLnY5XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2
MTFfKG90aGVyLnYxMV8pLCB2MTJfKG90aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRf
KG90aGVyLnYxNF8pLAotICAgICAgdjE1XyhvdGhlci52MTVfKSwgdjE2XyhvdGhlci52MTZfKSwg
djE3XyhvdGhlci52MTdfKSwgdjE4XyhvdGhlci52MThfKSwKLSAgICAgIHYxOV8ob3RoZXIudjE5
XyksIHYyMF8ob3RoZXIudjIwXyksIHYyMV8ob3RoZXIudjIxXyksIHYyMl8ob3RoZXIudjIyXyks
Ci0gICAgICB2MjNfKG90aGVyLnYyM18pLCB2MjRfKG90aGVyLnYyNF8pLCB2MjVfKG90aGVyLnYy
NV8pLCB2MjZfKG90aGVyLnYyNl8pLAotICAgICAgdjI3XyhvdGhlci52MjdfKSwgdjI4XyhvdGhl
ci52MjhfKSwgdjI5XyhvdGhlci52MjlfKSwgdjMwXyhvdGhlci52MzBfKSwKLSAgICAgIHYzMV8o
b3RoZXIudjMxXyksIHYzMl8ob3RoZXIudjMyXyksIHYzM18ob3RoZXIudjMzXyksIHYzNF8ob3Ro
ZXIudjM0XyksCi0gICAgICB2MzVfKG90aGVyLnYzNV8pLCB2MzZfKG90aGVyLnYzNl8pLCB2Mzdf
KG90aGVyLnYzN18pLCB2MzhfKG90aGVyLnYzOF8pLAotICAgICAgdjM5XyhvdGhlci52MzlfKSwg
djQwXyhvdGhlci52NDBfKSwgdjQxXyhvdGhlci52NDFfKSwgdjQyXyhvdGhlci52NDJfKSwKLSAg
ICAgIHY0M18ob3RoZXIudjQzXykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0
aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3Qg
VmFsdWVBcnJheTQzJiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87
Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNv
bnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87Ci0gIGNvbnN0IFQ5
IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwotICBjb25zdCBUMTIg
djEyXzsKLSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRfOwotICBjb25zdCBUMTUg
djE1XzsKLSAgY29uc3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQxNyB2MTdfOwotICBjb25zdCBUMTgg
djE4XzsKLSAgY29uc3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQyMCB2MjBfOwotICBjb25zdCBUMjEg
djIxXzsKLSAgY29uc3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQyMyB2MjNfOwotICBjb25zdCBUMjQg
djI0XzsKLSAgY29uc3QgVDI1IHYyNV87Ci0gIGNvbnN0IFQyNiB2MjZfOwotICBjb25zdCBUMjcg
djI3XzsKLSAgY29uc3QgVDI4IHYyOF87Ci0gIGNvbnN0IFQyOSB2MjlfOwotICBjb25zdCBUMzAg
djMwXzsKLSAgY29uc3QgVDMxIHYzMV87Ci0gIGNvbnN0IFQzMiB2MzJfOwotICBjb25zdCBUMzMg
djMzXzsKLSAgY29uc3QgVDM0IHYzNF87Ci0gIGNvbnN0IFQzNSB2MzVfOwotICBjb25zdCBUMzYg
djM2XzsKLSAgY29uc3QgVDM3IHYzN187Ci0gIGNvbnN0IFQzOCB2MzhfOwotICBjb25zdCBUMzkg
djM5XzsKLSAgY29uc3QgVDQwIHY0MF87Ci0gIGNvbnN0IFQ0MSB2NDFfOwotICBjb25zdCBUNDIg
djQyXzsKLSAgY29uc3QgVDQzIHY0M187Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5
cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5
cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFt
ZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlw
ZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcs
IHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUg
VDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBU
MjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5h
bWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5
cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2
LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAs
Ci0gICAgdHlwZW5hbWUgVDQxLCB0eXBlbmFtZSBUNDIsIHR5cGVuYW1lIFQ0MywgdHlwZW5hbWUg
VDQ0PgotY2xhc3MgVmFsdWVBcnJheTQ0IHsKLSBwdWJsaWM6Ci0gIFZhbHVlQXJyYXk0NChUMSB2
MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5
LAotICAgICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEzIHYxMywgVDE0IHYxNCwgVDE1
IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywKLSAgICAgIFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAs
IFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQyNSB2MjUsCi0gICAgICBUMjYg
djI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMwLCBUMzEgdjMxLCBUMzIgdjMy
LCBUMzMgdjMzLAotICAgICAgVDM0IHYzNCwgVDM1IHYzNSwgVDM2IHYzNiwgVDM3IHYzNywgVDM4
IHYzOCwgVDM5IHYzOSwgVDQwIHY0MCwgVDQxIHY0MSwKLSAgICAgIFQ0MiB2NDIsIFQ0MyB2NDMs
IFQ0NCB2NDQpIDogdjFfKHYxKSwgdjJfKHYyKSwgdjNfKHYzKSwgdjRfKHY0KSwgdjVfKHY1KSwK
LSAgICAgIHY2Xyh2NiksIHY3Xyh2NyksIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwgdjEx
Xyh2MTEpLCB2MTJfKHYxMiksCi0gICAgICB2MTNfKHYxMyksIHYxNF8odjE0KSwgdjE1Xyh2MTUp
LCB2MTZfKHYxNiksIHYxN18odjE3KSwgdjE4Xyh2MTgpLAotICAgICAgdjE5Xyh2MTkpLCB2MjBf
KHYyMCksIHYyMV8odjIxKSwgdjIyXyh2MjIpLCB2MjNfKHYyMyksIHYyNF8odjI0KSwKLSAgICAg
IHYyNV8odjI1KSwgdjI2Xyh2MjYpLCB2MjdfKHYyNyksIHYyOF8odjI4KSwgdjI5Xyh2MjkpLCB2
MzBfKHYzMCksCi0gICAgICB2MzFfKHYzMSksIHYzMl8odjMyKSwgdjMzXyh2MzMpLCB2MzRfKHYz
NCksIHYzNV8odjM1KSwgdjM2Xyh2MzYpLAotICAgICAgdjM3Xyh2MzcpLCB2MzhfKHYzOCksIHYz
OV8odjM5KSwgdjQwXyh2NDApLCB2NDFfKHY0MSksIHY0Ml8odjQyKSwKLSAgICAgIHY0M18odjQz
KSwgdjQ0Xyh2NDQpIHt9Ci0KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBh
cmFtR2VuZXJhdG9yPFQ+KCkgY29uc3QgewotICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNf
Y2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxUPih2Ml8pLAotICAgICAgICBzdGF0aWNfY2FzdDxU
Pih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8pLCBzdGF0aWNfY2FzdDxUPih2NV8pLAotICAgICAg
ICBzdGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0aWNfY2FzdDxUPih2N18pLCBzdGF0aWNfY2FzdDxU
Pih2OF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2OV8pLCBzdGF0aWNfY2FzdDxUPih2MTBf
KSwgc3RhdGljX2Nhc3Q8VD4odjExXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxMl8pLCBz
dGF0aWNfY2FzdDxUPih2MTNfKSwgc3RhdGljX2Nhc3Q8VD4odjE0XyksCi0gICAgICAgIHN0YXRp
Y19jYXN0PFQ+KHYxNV8pLCBzdGF0aWNfY2FzdDxUPih2MTZfKSwgc3RhdGljX2Nhc3Q8VD4odjE3
XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxOF8pLCBzdGF0aWNfY2FzdDxUPih2MTlfKSwg
c3RhdGljX2Nhc3Q8VD4odjIwXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyMV8pLCBzdGF0
aWNfY2FzdDxUPih2MjJfKSwgc3RhdGljX2Nhc3Q8VD4odjIzXyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHYyNF8pLCBzdGF0aWNfY2FzdDxUPih2MjVfKSwgc3RhdGljX2Nhc3Q8VD4odjI2Xyks
Ci0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyN18pLCBzdGF0aWNfY2FzdDxUPih2MjhfKSwgc3Rh
dGljX2Nhc3Q8VD4odjI5XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzMF8pLCBzdGF0aWNf
Y2FzdDxUPih2MzFfKSwgc3RhdGljX2Nhc3Q8VD4odjMyXyksCi0gICAgICAgIHN0YXRpY19jYXN0
PFQ+KHYzM18pLCBzdGF0aWNfY2FzdDxUPih2MzRfKSwgc3RhdGljX2Nhc3Q8VD4odjM1XyksCi0g
ICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzNl8pLCBzdGF0aWNfY2FzdDxUPih2MzdfKSwgc3RhdGlj
X2Nhc3Q8VD4odjM4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzOV8pLCBzdGF0aWNfY2Fz
dDxUPih2NDBfKSwgc3RhdGljX2Nhc3Q8VD4odjQxXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+
KHY0Ml8pLCBzdGF0aWNfY2FzdDxUPih2NDNfKSwgc3RhdGljX2Nhc3Q8VD4odjQ0Xyl9OwotICAg
IHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5NDQoY29uc3QgVmFs
dWVBcnJheTQ0JiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyksCi0gICAg
ICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhlci52NV8pLCB2Nl8ob3Ro
ZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIudjhfKSwgdjlfKG90aGVy
LnY5XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFfKG90aGVyLnYxMV8pLCB2MTJfKG90
aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90aGVyLnYxNF8pLAotICAgICAgdjE1
XyhvdGhlci52MTVfKSwgdjE2XyhvdGhlci52MTZfKSwgdjE3XyhvdGhlci52MTdfKSwgdjE4Xyhv
dGhlci52MThfKSwKLSAgICAgIHYxOV8ob3RoZXIudjE5XyksIHYyMF8ob3RoZXIudjIwXyksIHYy
MV8ob3RoZXIudjIxXyksIHYyMl8ob3RoZXIudjIyXyksCi0gICAgICB2MjNfKG90aGVyLnYyM18p
LCB2MjRfKG90aGVyLnYyNF8pLCB2MjVfKG90aGVyLnYyNV8pLCB2MjZfKG90aGVyLnYyNl8pLAot
ICAgICAgdjI3XyhvdGhlci52MjdfKSwgdjI4XyhvdGhlci52MjhfKSwgdjI5XyhvdGhlci52Mjlf
KSwgdjMwXyhvdGhlci52MzBfKSwKLSAgICAgIHYzMV8ob3RoZXIudjMxXyksIHYzMl8ob3RoZXIu
djMyXyksIHYzM18ob3RoZXIudjMzXyksIHYzNF8ob3RoZXIudjM0XyksCi0gICAgICB2MzVfKG90
aGVyLnYzNV8pLCB2MzZfKG90aGVyLnYzNl8pLCB2MzdfKG90aGVyLnYzN18pLCB2MzhfKG90aGVy
LnYzOF8pLAotICAgICAgdjM5XyhvdGhlci52MzlfKSwgdjQwXyhvdGhlci52NDBfKSwgdjQxXyhv
dGhlci52NDFfKSwgdjQyXyhvdGhlci52NDJfKSwKLSAgICAgIHY0M18ob3RoZXIudjQzXyksIHY0
NF8ob3RoZXIudjQ0Xykge30KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0g
YXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVB
cnJheTQ0JiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNv
bnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2
IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsK
LSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFfOwotICBjb25zdCBUMTIgdjEyXzsK
LSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRfOwotICBjb25zdCBUMTUgdjE1XzsK
LSAgY29uc3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQxNyB2MTdfOwotICBjb25zdCBUMTggdjE4XzsK
LSAgY29uc3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQyMCB2MjBfOwotICBjb25zdCBUMjEgdjIxXzsK
LSAgY29uc3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQyMyB2MjNfOwotICBjb25zdCBUMjQgdjI0XzsK
LSAgY29uc3QgVDI1IHYyNV87Ci0gIGNvbnN0IFQyNiB2MjZfOwotICBjb25zdCBUMjcgdjI3XzsK
LSAgY29uc3QgVDI4IHYyOF87Ci0gIGNvbnN0IFQyOSB2MjlfOwotICBjb25zdCBUMzAgdjMwXzsK
LSAgY29uc3QgVDMxIHYzMV87Ci0gIGNvbnN0IFQzMiB2MzJfOwotICBjb25zdCBUMzMgdjMzXzsK
LSAgY29uc3QgVDM0IHYzNF87Ci0gIGNvbnN0IFQzNSB2MzVfOwotICBjb25zdCBUMzYgdjM2XzsK
LSAgY29uc3QgVDM3IHYzN187Ci0gIGNvbnN0IFQzOCB2MzhfOwotICBjb25zdCBUMzkgdjM5XzsK
LSAgY29uc3QgVDQwIHY0MF87Ci0gIGNvbnN0IFQ0MSB2NDFfOwotICBjb25zdCBUNDIgdjQyXzsK
LSAgY29uc3QgVDQzIHY0M187Ci0gIGNvbnN0IFQ0NCB2NDRfOwotfTsKLQotdGVtcGxhdGUgPHR5
cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFt
ZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFt
ZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBl
bmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwg
dHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAot
ICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQy
NCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFt
ZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlw
ZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAg
IHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwg
dHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwgdHlwZW5hbWUgVDQyLCB0eXBlbmFtZSBU
NDMsIHR5cGVuYW1lIFQ0NCwgdHlwZW5hbWUgVDQ1PgotY2xhc3MgVmFsdWVBcnJheTQ1IHsKLSBw
dWJsaWM6Ci0gIFZhbHVlQXJyYXk0NShUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUs
IFQ2IHY2LCBUNyB2NywgVDggdjgsIFQ5IHY5LAotICAgICAgVDEwIHYxMCwgVDExIHYxMSwgVDEy
IHYxMiwgVDEzIHYxMywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywKLSAgICAg
IFQxOCB2MTgsIFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQy
NCB2MjQsIFQyNSB2MjUsCi0gICAgICBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5
LCBUMzAgdjMwLCBUMzEgdjMxLCBUMzIgdjMyLCBUMzMgdjMzLAotICAgICAgVDM0IHYzNCwgVDM1
IHYzNSwgVDM2IHYzNiwgVDM3IHYzNywgVDM4IHYzOCwgVDM5IHYzOSwgVDQwIHY0MCwgVDQxIHY0
MSwKLSAgICAgIFQ0MiB2NDIsIFQ0MyB2NDMsIFQ0NCB2NDQsIFQ0NSB2NDUpIDogdjFfKHYxKSwg
djJfKHYyKSwgdjNfKHYzKSwgdjRfKHY0KSwKLSAgICAgIHY1Xyh2NSksIHY2Xyh2NiksIHY3Xyh2
NyksIHY4Xyh2OCksIHY5Xyh2OSksIHYxMF8odjEwKSwgdjExXyh2MTEpLAotICAgICAgdjEyXyh2
MTIpLCB2MTNfKHYxMyksIHYxNF8odjE0KSwgdjE1Xyh2MTUpLCB2MTZfKHYxNiksIHYxN18odjE3
KSwKLSAgICAgIHYxOF8odjE4KSwgdjE5Xyh2MTkpLCB2MjBfKHYyMCksIHYyMV8odjIxKSwgdjIy
Xyh2MjIpLCB2MjNfKHYyMyksCi0gICAgICB2MjRfKHYyNCksIHYyNV8odjI1KSwgdjI2Xyh2MjYp
LCB2MjdfKHYyNyksIHYyOF8odjI4KSwgdjI5Xyh2MjkpLAotICAgICAgdjMwXyh2MzApLCB2MzFf
KHYzMSksIHYzMl8odjMyKSwgdjMzXyh2MzMpLCB2MzRfKHYzNCksIHYzNV8odjM1KSwKLSAgICAg
IHYzNl8odjM2KSwgdjM3Xyh2MzcpLCB2MzhfKHYzOCksIHYzOV8odjM5KSwgdjQwXyh2NDApLCB2
NDFfKHY0MSksCi0gICAgICB2NDJfKHY0MiksIHY0M18odjQzKSwgdjQ0Xyh2NDQpLCB2NDVfKHY0
NSkge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0
b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0YXRpY19jYXN0PFQ+KHYx
XyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzXyksIHN0
YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1XyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0YXRpY19jYXN0PFQ+KHY4XyksCi0g
ICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19jYXN0PFQ+KHYxMF8pLCBzdGF0aWNf
Y2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjEyXyksIHN0YXRpY19jYXN0
PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4o
djE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNfY2FzdDxUPih2MTdfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjE4XyksIHN0YXRpY19jYXN0PFQ+KHYxOV8pLCBzdGF0aWNfY2Fz
dDxUPih2MjBfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjIxXyksIHN0YXRpY19jYXN0PFQ+
KHYyMl8pLCBzdGF0aWNfY2FzdDxUPih2MjNfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI0
XyksIHN0YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0aWNfY2FzdDxUPih2MjZfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjI3XyksIHN0YXRpY19jYXN0PFQ+KHYyOF8pLCBzdGF0aWNfY2FzdDxU
Pih2MjlfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMwXyksIHN0YXRpY19jYXN0PFQ+KHYz
MV8pLCBzdGF0aWNfY2FzdDxUPih2MzJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMzXyks
IHN0YXRpY19jYXN0PFQ+KHYzNF8pLCBzdGF0aWNfY2FzdDxUPih2MzVfKSwKLSAgICAgICAgc3Rh
dGljX2Nhc3Q8VD4odjM2XyksIHN0YXRpY19jYXN0PFQ+KHYzN18pLCBzdGF0aWNfY2FzdDxUPih2
MzhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjM5XyksIHN0YXRpY19jYXN0PFQ+KHY0MF8p
LCBzdGF0aWNfY2FzdDxUPih2NDFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjQyXyksIHN0
YXRpY19jYXN0PFQ+KHY0M18pLCBzdGF0aWNfY2FzdDxUPih2NDRfKSwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8VD4odjQ1Xyl9OwotICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBW
YWx1ZUFycmF5NDUoY29uc3QgVmFsdWVBcnJheTQ1JiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwg
djJfKG90aGVyLnYyXyksCi0gICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1
XyhvdGhlci52NV8pLCB2Nl8ob3RoZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8o
b3RoZXIudjhfKSwgdjlfKG90aGVyLnY5XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFf
KG90aGVyLnYxMV8pLCB2MTJfKG90aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90
aGVyLnYxNF8pLAotICAgICAgdjE1XyhvdGhlci52MTVfKSwgdjE2XyhvdGhlci52MTZfKSwgdjE3
XyhvdGhlci52MTdfKSwgdjE4XyhvdGhlci52MThfKSwKLSAgICAgIHYxOV8ob3RoZXIudjE5Xyks
IHYyMF8ob3RoZXIudjIwXyksIHYyMV8ob3RoZXIudjIxXyksIHYyMl8ob3RoZXIudjIyXyksCi0g
ICAgICB2MjNfKG90aGVyLnYyM18pLCB2MjRfKG90aGVyLnYyNF8pLCB2MjVfKG90aGVyLnYyNV8p
LCB2MjZfKG90aGVyLnYyNl8pLAotICAgICAgdjI3XyhvdGhlci52MjdfKSwgdjI4XyhvdGhlci52
MjhfKSwgdjI5XyhvdGhlci52MjlfKSwgdjMwXyhvdGhlci52MzBfKSwKLSAgICAgIHYzMV8ob3Ro
ZXIudjMxXyksIHYzMl8ob3RoZXIudjMyXyksIHYzM18ob3RoZXIudjMzXyksIHYzNF8ob3RoZXIu
djM0XyksCi0gICAgICB2MzVfKG90aGVyLnYzNV8pLCB2MzZfKG90aGVyLnYzNl8pLCB2MzdfKG90
aGVyLnYzN18pLCB2MzhfKG90aGVyLnYzOF8pLAotICAgICAgdjM5XyhvdGhlci52MzlfKSwgdjQw
XyhvdGhlci52NDBfKSwgdjQxXyhvdGhlci52NDFfKSwgdjQyXyhvdGhlci52NDJfKSwKLSAgICAg
IHY0M18ob3RoZXIudjQzXyksIHY0NF8ob3RoZXIudjQ0XyksIHY0NV8ob3RoZXIudjQ1Xykge30K
LQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1
cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTQ1JiBvdGhlcik7Ci0K
LSAgY29uc3QgVDEgdjFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29u
c3QgVDQgdjRfOwotICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcg
djdfOwotICBjb25zdCBUOCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87
Ci0gIGNvbnN0IFQxMSB2MTFfOwotICBjb25zdCBUMTIgdjEyXzsKLSAgY29uc3QgVDEzIHYxM187
Ci0gIGNvbnN0IFQxNCB2MTRfOwotICBjb25zdCBUMTUgdjE1XzsKLSAgY29uc3QgVDE2IHYxNl87
Ci0gIGNvbnN0IFQxNyB2MTdfOwotICBjb25zdCBUMTggdjE4XzsKLSAgY29uc3QgVDE5IHYxOV87
Ci0gIGNvbnN0IFQyMCB2MjBfOwotICBjb25zdCBUMjEgdjIxXzsKLSAgY29uc3QgVDIyIHYyMl87
Ci0gIGNvbnN0IFQyMyB2MjNfOwotICBjb25zdCBUMjQgdjI0XzsKLSAgY29uc3QgVDI1IHYyNV87
Ci0gIGNvbnN0IFQyNiB2MjZfOwotICBjb25zdCBUMjcgdjI3XzsKLSAgY29uc3QgVDI4IHYyOF87
Ci0gIGNvbnN0IFQyOSB2MjlfOwotICBjb25zdCBUMzAgdjMwXzsKLSAgY29uc3QgVDMxIHYzMV87
Ci0gIGNvbnN0IFQzMiB2MzJfOwotICBjb25zdCBUMzMgdjMzXzsKLSAgY29uc3QgVDM0IHYzNF87
Ci0gIGNvbnN0IFQzNSB2MzVfOwotICBjb25zdCBUMzYgdjM2XzsKLSAgY29uc3QgVDM3IHYzN187
Ci0gIGNvbnN0IFQzOCB2MzhfOwotICBjb25zdCBUMzkgdjM5XzsKLSAgY29uc3QgVDQwIHY0MF87
Ci0gIGNvbnN0IFQ0MSB2NDFfOwotICBjb25zdCBUNDIgdjQyXzsKLSAgY29uc3QgVDQzIHY0M187
Ci0gIGNvbnN0IFQ0NCB2NDRfOwotICBjb25zdCBUNDUgdjQ1XzsKLX07Ci0KLXRlbXBsYXRlIDx0
eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5h
bWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5h
bWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlw
ZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYs
IHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwK
LSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBU
MjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5h
bWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5
cGVuYW1lIFQzMiwgdHlwZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAg
ICB0eXBlbmFtZSBUMzYsIHR5cGVuYW1lIFQzNywgdHlwZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzks
IHR5cGVuYW1lIFQ0MCwKLSAgICB0eXBlbmFtZSBUNDEsIHR5cGVuYW1lIFQ0MiwgdHlwZW5hbWUg
VDQzLCB0eXBlbmFtZSBUNDQsIHR5cGVuYW1lIFQ0NSwKLSAgICB0eXBlbmFtZSBUNDY+Ci1jbGFz
cyBWYWx1ZUFycmF5NDYgewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTQ2KFQxIHYxLCBUMiB2Miwg
VDMgdjMsIFQ0IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgICBU
MTAgdjEwLCBUMTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYg
djE2LCBUMTcgdjE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwg
VDIyIHYyMiwgVDIzIHYyMywgVDI0IHYyNCwgVDI1IHYyNSwKLSAgICAgIFQyNiB2MjYsIFQyNyB2
MjcsIFQyOCB2MjgsIFQyOSB2MjksIFQzMCB2MzAsIFQzMSB2MzEsIFQzMiB2MzIsIFQzMyB2MzMs
Ci0gICAgICBUMzQgdjM0LCBUMzUgdjM1LCBUMzYgdjM2LCBUMzcgdjM3LCBUMzggdjM4LCBUMzkg
djM5LCBUNDAgdjQwLCBUNDEgdjQxLAotICAgICAgVDQyIHY0MiwgVDQzIHY0MywgVDQ0IHY0NCwg
VDQ1IHY0NSwgVDQ2IHY0NikgOiB2MV8odjEpLCB2Ml8odjIpLCB2M18odjMpLAotICAgICAgdjRf
KHY0KSwgdjVfKHY1KSwgdjZfKHY2KSwgdjdfKHY3KSwgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2
MTApLAotICAgICAgdjExXyh2MTEpLCB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0Xyh2MTQpLCB2
MTVfKHYxNSksIHYxNl8odjE2KSwKLSAgICAgIHYxN18odjE3KSwgdjE4Xyh2MTgpLCB2MTlfKHYx
OSksIHYyMF8odjIwKSwgdjIxXyh2MjEpLCB2MjJfKHYyMiksCi0gICAgICB2MjNfKHYyMyksIHYy
NF8odjI0KSwgdjI1Xyh2MjUpLCB2MjZfKHYyNiksIHYyN18odjI3KSwgdjI4Xyh2MjgpLAotICAg
ICAgdjI5Xyh2MjkpLCB2MzBfKHYzMCksIHYzMV8odjMxKSwgdjMyXyh2MzIpLCB2MzNfKHYzMyks
IHYzNF8odjM0KSwKLSAgICAgIHYzNV8odjM1KSwgdjM2Xyh2MzYpLCB2MzdfKHYzNyksIHYzOF8o
djM4KSwgdjM5Xyh2MzkpLCB2NDBfKHY0MCksCi0gICAgICB2NDFfKHY0MSksIHY0Ml8odjQyKSwg
djQzXyh2NDMpLCB2NDRfKHY0NCksIHY0NV8odjQ1KSwgdjQ2Xyh2NDYpIHt9Ci0KLSAgdGVtcGxh
dGUgPHR5cGVuYW1lIFQ+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPFQ+KCkgY29uc3Qgewot
ICAgIGNvbnN0IFQgYXJyYXlbXSA9IHtzdGF0aWNfY2FzdDxUPih2MV8pLCBzdGF0aWNfY2FzdDxU
Pih2Ml8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2M18pLCBzdGF0aWNfY2FzdDxUPih2NF8p
LCBzdGF0aWNfY2FzdDxUPih2NV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxUPih2Nl8pLCBzdGF0
aWNfY2FzdDxUPih2N18pLCBzdGF0aWNfY2FzdDxUPih2OF8pLAotICAgICAgICBzdGF0aWNfY2Fz
dDxUPih2OV8pLCBzdGF0aWNfY2FzdDxUPih2MTBfKSwgc3RhdGljX2Nhc3Q8VD4odjExXyksCi0g
ICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxMl8pLCBzdGF0aWNfY2FzdDxUPih2MTNfKSwgc3RhdGlj
X2Nhc3Q8VD4odjE0XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYxNV8pLCBzdGF0aWNfY2Fz
dDxUPih2MTZfKSwgc3RhdGljX2Nhc3Q8VD4odjE3XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+
KHYxOF8pLCBzdGF0aWNfY2FzdDxUPih2MTlfKSwgc3RhdGljX2Nhc3Q8VD4odjIwXyksCi0gICAg
ICAgIHN0YXRpY19jYXN0PFQ+KHYyMV8pLCBzdGF0aWNfY2FzdDxUPih2MjJfKSwgc3RhdGljX2Nh
c3Q8VD4odjIzXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYyNF8pLCBzdGF0aWNfY2FzdDxU
Pih2MjVfKSwgc3RhdGljX2Nhc3Q8VD4odjI2XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYy
N18pLCBzdGF0aWNfY2FzdDxUPih2MjhfKSwgc3RhdGljX2Nhc3Q8VD4odjI5XyksCi0gICAgICAg
IHN0YXRpY19jYXN0PFQ+KHYzMF8pLCBzdGF0aWNfY2FzdDxUPih2MzFfKSwgc3RhdGljX2Nhc3Q8
VD4odjMyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzM18pLCBzdGF0aWNfY2FzdDxUPih2
MzRfKSwgc3RhdGljX2Nhc3Q8VD4odjM1XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzNl8p
LCBzdGF0aWNfY2FzdDxUPih2MzdfKSwgc3RhdGljX2Nhc3Q8VD4odjM4XyksCi0gICAgICAgIHN0
YXRpY19jYXN0PFQ+KHYzOV8pLCBzdGF0aWNfY2FzdDxUPih2NDBfKSwgc3RhdGljX2Nhc3Q8VD4o
djQxXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY0Ml8pLCBzdGF0aWNfY2FzdDxUPih2NDNf
KSwgc3RhdGljX2Nhc3Q8VD4odjQ0XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY0NV8pLCBz
dGF0aWNfY2FzdDxUPih2NDZfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5KTsKLSAgfQot
Ci0gIFZhbHVlQXJyYXk0Nihjb25zdCBWYWx1ZUFycmF5NDYmIG90aGVyKSA6IHYxXyhvdGhlci52
MV8pLCB2Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52M18pLCB2NF8ob3RoZXIudjRf
KSwgdjVfKG90aGVyLnY1XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAgdjdfKG90aGVyLnY3Xyks
IHY4XyhvdGhlci52OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhlci52MTBfKSwKLSAgICAg
IHYxMV8ob3RoZXIudjExXyksIHYxMl8ob3RoZXIudjEyXyksIHYxM18ob3RoZXIudjEzXyksIHYx
NF8ob3RoZXIudjE0XyksCi0gICAgICB2MTVfKG90aGVyLnYxNV8pLCB2MTZfKG90aGVyLnYxNl8p
LCB2MTdfKG90aGVyLnYxN18pLCB2MThfKG90aGVyLnYxOF8pLAotICAgICAgdjE5XyhvdGhlci52
MTlfKSwgdjIwXyhvdGhlci52MjBfKSwgdjIxXyhvdGhlci52MjFfKSwgdjIyXyhvdGhlci52MjJf
KSwKLSAgICAgIHYyM18ob3RoZXIudjIzXyksIHYyNF8ob3RoZXIudjI0XyksIHYyNV8ob3RoZXIu
djI1XyksIHYyNl8ob3RoZXIudjI2XyksCi0gICAgICB2MjdfKG90aGVyLnYyN18pLCB2MjhfKG90
aGVyLnYyOF8pLCB2MjlfKG90aGVyLnYyOV8pLCB2MzBfKG90aGVyLnYzMF8pLAotICAgICAgdjMx
XyhvdGhlci52MzFfKSwgdjMyXyhvdGhlci52MzJfKSwgdjMzXyhvdGhlci52MzNfKSwgdjM0Xyhv
dGhlci52MzRfKSwKLSAgICAgIHYzNV8ob3RoZXIudjM1XyksIHYzNl8ob3RoZXIudjM2XyksIHYz
N18ob3RoZXIudjM3XyksIHYzOF8ob3RoZXIudjM4XyksCi0gICAgICB2MzlfKG90aGVyLnYzOV8p
LCB2NDBfKG90aGVyLnY0MF8pLCB2NDFfKG90aGVyLnY0MV8pLCB2NDJfKG90aGVyLnY0Ml8pLAot
ICAgICAgdjQzXyhvdGhlci52NDNfKSwgdjQ0XyhvdGhlci52NDRfKSwgdjQ1XyhvdGhlci52NDVf
KSwgdjQ2XyhvdGhlci52NDZfKSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRp
b24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBW
YWx1ZUFycmF5NDYmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYyXzsK
LSAgY29uc3QgVDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAgY29u
c3QgVDYgdjZfOwotICBjb25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3QgVDkg
djlfOwotICBjb25zdCBUMTAgdjEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQxMiB2
MTJfOwotICBjb25zdCBUMTMgdjEzXzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQxNSB2
MTVfOwotICBjb25zdCBUMTYgdjE2XzsKLSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQxOCB2
MThfOwotICBjb25zdCBUMTkgdjE5XzsKLSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQyMSB2
MjFfOwotICBjb25zdCBUMjIgdjIyXzsKLSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQyNCB2
MjRfOwotICBjb25zdCBUMjUgdjI1XzsKLSAgY29uc3QgVDI2IHYyNl87Ci0gIGNvbnN0IFQyNyB2
MjdfOwotICBjb25zdCBUMjggdjI4XzsKLSAgY29uc3QgVDI5IHYyOV87Ci0gIGNvbnN0IFQzMCB2
MzBfOwotICBjb25zdCBUMzEgdjMxXzsKLSAgY29uc3QgVDMyIHYzMl87Ci0gIGNvbnN0IFQzMyB2
MzNfOwotICBjb25zdCBUMzQgdjM0XzsKLSAgY29uc3QgVDM1IHYzNV87Ci0gIGNvbnN0IFQzNiB2
MzZfOwotICBjb25zdCBUMzcgdjM3XzsKLSAgY29uc3QgVDM4IHYzOF87Ci0gIGNvbnN0IFQzOSB2
MzlfOwotICBjb25zdCBUNDAgdjQwXzsKLSAgY29uc3QgVDQxIHY0MV87Ci0gIGNvbnN0IFQ0MiB2
NDJfOwotICBjb25zdCBUNDMgdjQzXzsKLSAgY29uc3QgVDQ0IHY0NF87Ci0gIGNvbnN0IFQ0NSB2
NDVfOwotICBjb25zdCBUNDYgdjQ2XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlw
ZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlw
ZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1l
IFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBl
bmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywg
dHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBU
MjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQy
NSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFt
ZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlw
ZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBUMzYs
IHR5cGVuYW1lIFQzNywgdHlwZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0MCwK
LSAgICB0eXBlbmFtZSBUNDEsIHR5cGVuYW1lIFQ0MiwgdHlwZW5hbWUgVDQzLCB0eXBlbmFtZSBU
NDQsIHR5cGVuYW1lIFQ0NSwKLSAgICB0eXBlbmFtZSBUNDYsIHR5cGVuYW1lIFQ0Nz4KLWNsYXNz
IFZhbHVlQXJyYXk0NyB7Ci0gcHVibGljOgotICBWYWx1ZUFycmF5NDcoVDEgdjEsIFQyIHYyLCBU
MyB2MywgVDQgdjQsIFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwKLSAgICAgIFQx
MCB2MTAsIFQxMSB2MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2
MTYsIFQxNyB2MTcsCi0gICAgICBUMTggdjE4LCBUMTkgdjE5LCBUMjAgdjIwLCBUMjEgdjIxLCBU
MjIgdjIyLCBUMjMgdjIzLCBUMjQgdjI0LCBUMjUgdjI1LAotICAgICAgVDI2IHYyNiwgVDI3IHYy
NywgVDI4IHYyOCwgVDI5IHYyOSwgVDMwIHYzMCwgVDMxIHYzMSwgVDMyIHYzMiwgVDMzIHYzMywK
LSAgICAgIFQzNCB2MzQsIFQzNSB2MzUsIFQzNiB2MzYsIFQzNyB2MzcsIFQzOCB2MzgsIFQzOSB2
MzksIFQ0MCB2NDAsIFQ0MSB2NDEsCi0gICAgICBUNDIgdjQyLCBUNDMgdjQzLCBUNDQgdjQ0LCBU
NDUgdjQ1LCBUNDYgdjQ2LCBUNDcgdjQ3KSA6IHYxXyh2MSksIHYyXyh2MiksCi0gICAgICB2M18o
djMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpLCB2N18odjcpLCB2OF8odjgpLCB2OV8odjkp
LCB2MTBfKHYxMCksCi0gICAgICB2MTFfKHYxMSksIHYxMl8odjEyKSwgdjEzXyh2MTMpLCB2MTRf
KHYxNCksIHYxNV8odjE1KSwgdjE2Xyh2MTYpLAotICAgICAgdjE3Xyh2MTcpLCB2MThfKHYxOCks
IHYxOV8odjE5KSwgdjIwXyh2MjApLCB2MjFfKHYyMSksIHYyMl8odjIyKSwKLSAgICAgIHYyM18o
djIzKSwgdjI0Xyh2MjQpLCB2MjVfKHYyNSksIHYyNl8odjI2KSwgdjI3Xyh2MjcpLCB2MjhfKHYy
OCksCi0gICAgICB2MjlfKHYyOSksIHYzMF8odjMwKSwgdjMxXyh2MzEpLCB2MzJfKHYzMiksIHYz
M18odjMzKSwgdjM0Xyh2MzQpLAotICAgICAgdjM1Xyh2MzUpLCB2MzZfKHYzNiksIHYzN18odjM3
KSwgdjM4Xyh2MzgpLCB2MzlfKHYzOSksIHY0MF8odjQwKSwKLSAgICAgIHY0MV8odjQxKSwgdjQy
Xyh2NDIpLCB2NDNfKHY0MyksIHY0NF8odjQ0KSwgdjQ1Xyh2NDUpLCB2NDZfKHY0NiksCi0gICAg
ICB2NDdfKHY0Nykge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFy
YW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0YXRpY19j
YXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+
KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1XyksCi0gICAgICAg
IHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0YXRpY19jYXN0PFQ+
KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19jYXN0PFQ+KHYxMF8p
LCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjEyXyksIHN0
YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNfY2FzdDxUPih2MTdf
KSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE4XyksIHN0YXRpY19jYXN0PFQ+KHYxOV8pLCBz
dGF0aWNfY2FzdDxUPih2MjBfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjIxXyksIHN0YXRp
Y19jYXN0PFQ+KHYyMl8pLCBzdGF0aWNfY2FzdDxUPih2MjNfKSwKLSAgICAgICAgc3RhdGljX2Nh
c3Q8VD4odjI0XyksIHN0YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0aWNfY2FzdDxUPih2MjZfKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI3XyksIHN0YXRpY19jYXN0PFQ+KHYyOF8pLCBzdGF0
aWNfY2FzdDxUPih2MjlfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMwXyksIHN0YXRpY19j
YXN0PFQ+KHYzMV8pLCBzdGF0aWNfY2FzdDxUPih2MzJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjMzXyksIHN0YXRpY19jYXN0PFQ+KHYzNF8pLCBzdGF0aWNfY2FzdDxUPih2MzVfKSwKLSAg
ICAgICAgc3RhdGljX2Nhc3Q8VD4odjM2XyksIHN0YXRpY19jYXN0PFQ+KHYzN18pLCBzdGF0aWNf
Y2FzdDxUPih2MzhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjM5XyksIHN0YXRpY19jYXN0
PFQ+KHY0MF8pLCBzdGF0aWNfY2FzdDxUPih2NDFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4o
djQyXyksIHN0YXRpY19jYXN0PFQ+KHY0M18pLCBzdGF0aWNfY2FzdDxUPih2NDRfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjQ1XyksIHN0YXRpY19jYXN0PFQ+KHY0Nl8pLCBzdGF0aWNfY2Fz
dDxUPih2NDdfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5KTsKLSAgfQotCi0gIFZhbHVl
QXJyYXk0Nyhjb25zdCBWYWx1ZUFycmF5NDcmIG90aGVyKSA6IHYxXyhvdGhlci52MV8pLCB2Ml8o
b3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52M18pLCB2NF8ob3RoZXIudjRfKSwgdjVfKG90
aGVyLnY1XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAgdjdfKG90aGVyLnY3XyksIHY4XyhvdGhl
ci52OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhlci52MTBfKSwKLSAgICAgIHYxMV8ob3Ro
ZXIudjExXyksIHYxMl8ob3RoZXIudjEyXyksIHYxM18ob3RoZXIudjEzXyksIHYxNF8ob3RoZXIu
djE0XyksCi0gICAgICB2MTVfKG90aGVyLnYxNV8pLCB2MTZfKG90aGVyLnYxNl8pLCB2MTdfKG90
aGVyLnYxN18pLCB2MThfKG90aGVyLnYxOF8pLAotICAgICAgdjE5XyhvdGhlci52MTlfKSwgdjIw
XyhvdGhlci52MjBfKSwgdjIxXyhvdGhlci52MjFfKSwgdjIyXyhvdGhlci52MjJfKSwKLSAgICAg
IHYyM18ob3RoZXIudjIzXyksIHYyNF8ob3RoZXIudjI0XyksIHYyNV8ob3RoZXIudjI1XyksIHYy
Nl8ob3RoZXIudjI2XyksCi0gICAgICB2MjdfKG90aGVyLnYyN18pLCB2MjhfKG90aGVyLnYyOF8p
LCB2MjlfKG90aGVyLnYyOV8pLCB2MzBfKG90aGVyLnYzMF8pLAotICAgICAgdjMxXyhvdGhlci52
MzFfKSwgdjMyXyhvdGhlci52MzJfKSwgdjMzXyhvdGhlci52MzNfKSwgdjM0XyhvdGhlci52MzRf
KSwKLSAgICAgIHYzNV8ob3RoZXIudjM1XyksIHYzNl8ob3RoZXIudjM2XyksIHYzN18ob3RoZXIu
djM3XyksIHYzOF8ob3RoZXIudjM4XyksCi0gICAgICB2MzlfKG90aGVyLnYzOV8pLCB2NDBfKG90
aGVyLnY0MF8pLCB2NDFfKG90aGVyLnY0MV8pLCB2NDJfKG90aGVyLnY0Ml8pLAotICAgICAgdjQz
XyhvdGhlci52NDNfKSwgdjQ0XyhvdGhlci52NDRfKSwgdjQ1XyhvdGhlci52NDVfKSwgdjQ2Xyhv
dGhlci52NDZfKSwKLSAgICAgIHY0N18ob3RoZXIudjQ3Xykge30KLQotIHByaXZhdGU6Ci0gIC8v
IE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBv
cGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTQ3JiBvdGhlcik7Ci0KLSAgY29uc3QgVDEgdjFfOwot
ICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwotICBjb25z
dCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25zdCBUOCB2
OF87Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQxMSB2MTFf
OwotICBjb25zdCBUMTIgdjEyXzsKLSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQxNCB2MTRf
OwotICBjb25zdCBUMTUgdjE1XzsKLSAgY29uc3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQxNyB2MTdf
OwotICBjb25zdCBUMTggdjE4XzsKLSAgY29uc3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQyMCB2MjBf
OwotICBjb25zdCBUMjEgdjIxXzsKLSAgY29uc3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQyMyB2MjNf
OwotICBjb25zdCBUMjQgdjI0XzsKLSAgY29uc3QgVDI1IHYyNV87Ci0gIGNvbnN0IFQyNiB2MjZf
OwotICBjb25zdCBUMjcgdjI3XzsKLSAgY29uc3QgVDI4IHYyOF87Ci0gIGNvbnN0IFQyOSB2Mjlf
OwotICBjb25zdCBUMzAgdjMwXzsKLSAgY29uc3QgVDMxIHYzMV87Ci0gIGNvbnN0IFQzMiB2MzJf
OwotICBjb25zdCBUMzMgdjMzXzsKLSAgY29uc3QgVDM0IHYzNF87Ci0gIGNvbnN0IFQzNSB2MzVf
OwotICBjb25zdCBUMzYgdjM2XzsKLSAgY29uc3QgVDM3IHYzN187Ci0gIGNvbnN0IFQzOCB2Mzhf
OwotICBjb25zdCBUMzkgdjM5XzsKLSAgY29uc3QgVDQwIHY0MF87Ci0gIGNvbnN0IFQ0MSB2NDFf
OwotICBjb25zdCBUNDIgdjQyXzsKLSAgY29uc3QgVDQzIHY0M187Ci0gIGNvbnN0IFQ0NCB2NDRf
OwotICBjb25zdCBUNDUgdjQ1XzsKLSAgY29uc3QgVDQ2IHY0Nl87Ci0gIGNvbnN0IFQ0NyB2NDdf
OwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMs
IHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcs
IHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQx
MSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1
LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1l
IFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBl
bmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwg
dHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAot
ICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQz
NCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFt
ZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwgdHlw
ZW5hbWUgVDQyLCB0eXBlbmFtZSBUNDMsIHR5cGVuYW1lIFQ0NCwgdHlwZW5hbWUgVDQ1LAotICAg
IHR5cGVuYW1lIFQ0NiwgdHlwZW5hbWUgVDQ3LCB0eXBlbmFtZSBUNDg+Ci1jbGFzcyBWYWx1ZUFy
cmF5NDggewotIHB1YmxpYzoKLSAgVmFsdWVBcnJheTQ4KFQxIHYxLCBUMiB2MiwgVDMgdjMsIFQ0
IHY0LCBUNSB2NSwgVDYgdjYsIFQ3IHY3LCBUOCB2OCwgVDkgdjksCi0gICAgICBUMTAgdjEwLCBU
MTEgdjExLCBUMTIgdjEyLCBUMTMgdjEzLCBUMTQgdjE0LCBUMTUgdjE1LCBUMTYgdjE2LCBUMTcg
djE3LAotICAgICAgVDE4IHYxOCwgVDE5IHYxOSwgVDIwIHYyMCwgVDIxIHYyMSwgVDIyIHYyMiwg
VDIzIHYyMywgVDI0IHYyNCwgVDI1IHYyNSwKLSAgICAgIFQyNiB2MjYsIFQyNyB2MjcsIFQyOCB2
MjgsIFQyOSB2MjksIFQzMCB2MzAsIFQzMSB2MzEsIFQzMiB2MzIsIFQzMyB2MzMsCi0gICAgICBU
MzQgdjM0LCBUMzUgdjM1LCBUMzYgdjM2LCBUMzcgdjM3LCBUMzggdjM4LCBUMzkgdjM5LCBUNDAg
djQwLCBUNDEgdjQxLAotICAgICAgVDQyIHY0MiwgVDQzIHY0MywgVDQ0IHY0NCwgVDQ1IHY0NSwg
VDQ2IHY0NiwgVDQ3IHY0NywgVDQ4IHY0OCkgOiB2MV8odjEpLAotICAgICAgdjJfKHYyKSwgdjNf
KHYzKSwgdjRfKHY0KSwgdjVfKHY1KSwgdjZfKHY2KSwgdjdfKHY3KSwgdjhfKHY4KSwgdjlfKHY5
KSwKLSAgICAgIHYxMF8odjEwKSwgdjExXyh2MTEpLCB2MTJfKHYxMiksIHYxM18odjEzKSwgdjE0
Xyh2MTQpLCB2MTVfKHYxNSksCi0gICAgICB2MTZfKHYxNiksIHYxN18odjE3KSwgdjE4Xyh2MTgp
LCB2MTlfKHYxOSksIHYyMF8odjIwKSwgdjIxXyh2MjEpLAotICAgICAgdjIyXyh2MjIpLCB2MjNf
KHYyMyksIHYyNF8odjI0KSwgdjI1Xyh2MjUpLCB2MjZfKHYyNiksIHYyN18odjI3KSwKLSAgICAg
IHYyOF8odjI4KSwgdjI5Xyh2MjkpLCB2MzBfKHYzMCksIHYzMV8odjMxKSwgdjMyXyh2MzIpLCB2
MzNfKHYzMyksCi0gICAgICB2MzRfKHYzNCksIHYzNV8odjM1KSwgdjM2Xyh2MzYpLCB2MzdfKHYz
NyksIHYzOF8odjM4KSwgdjM5Xyh2MzkpLAotICAgICAgdjQwXyh2NDApLCB2NDFfKHY0MSksIHY0
Ml8odjQyKSwgdjQzXyh2NDMpLCB2NDRfKHY0NCksIHY0NV8odjQ1KSwKLSAgICAgIHY0Nl8odjQ2
KSwgdjQ3Xyh2NDcpLCB2NDhfKHY0OCkge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAg
b3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtd
ID0ge3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0
YXRpY19jYXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1
XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0
YXRpY19jYXN0PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19j
YXN0PFQ+KHYxMF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjEyXyksIHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAg
ICAgICAgc3RhdGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNf
Y2FzdDxUPih2MTdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE4XyksIHN0YXRpY19jYXN0
PFQ+KHYxOV8pLCBzdGF0aWNfY2FzdDxUPih2MjBfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4o
djIxXyksIHN0YXRpY19jYXN0PFQ+KHYyMl8pLCBzdGF0aWNfY2FzdDxUPih2MjNfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjI0XyksIHN0YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0aWNfY2Fz
dDxUPih2MjZfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI3XyksIHN0YXRpY19jYXN0PFQ+
KHYyOF8pLCBzdGF0aWNfY2FzdDxUPih2MjlfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMw
XyksIHN0YXRpY19jYXN0PFQ+KHYzMV8pLCBzdGF0aWNfY2FzdDxUPih2MzJfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjMzXyksIHN0YXRpY19jYXN0PFQ+KHYzNF8pLCBzdGF0aWNfY2FzdDxU
Pih2MzVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjM2XyksIHN0YXRpY19jYXN0PFQ+KHYz
N18pLCBzdGF0aWNfY2FzdDxUPih2MzhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjM5Xyks
IHN0YXRpY19jYXN0PFQ+KHY0MF8pLCBzdGF0aWNfY2FzdDxUPih2NDFfKSwKLSAgICAgICAgc3Rh
dGljX2Nhc3Q8VD4odjQyXyksIHN0YXRpY19jYXN0PFQ+KHY0M18pLCBzdGF0aWNfY2FzdDxUPih2
NDRfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjQ1XyksIHN0YXRpY19jYXN0PFQ+KHY0Nl8p
LCBzdGF0aWNfY2FzdDxUPih2NDdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjQ4Xyl9Owot
ICAgIHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5NDgoY29uc3Qg
VmFsdWVBcnJheTQ4JiBvdGhlcikgOiB2MV8ob3RoZXIudjFfKSwgdjJfKG90aGVyLnYyXyksCi0g
ICAgICB2M18ob3RoZXIudjNfKSwgdjRfKG90aGVyLnY0XyksIHY1XyhvdGhlci52NV8pLCB2Nl8o
b3RoZXIudjZfKSwKLSAgICAgIHY3XyhvdGhlci52N18pLCB2OF8ob3RoZXIudjhfKSwgdjlfKG90
aGVyLnY5XyksIHYxMF8ob3RoZXIudjEwXyksCi0gICAgICB2MTFfKG90aGVyLnYxMV8pLCB2MTJf
KG90aGVyLnYxMl8pLCB2MTNfKG90aGVyLnYxM18pLCB2MTRfKG90aGVyLnYxNF8pLAotICAgICAg
djE1XyhvdGhlci52MTVfKSwgdjE2XyhvdGhlci52MTZfKSwgdjE3XyhvdGhlci52MTdfKSwgdjE4
XyhvdGhlci52MThfKSwKLSAgICAgIHYxOV8ob3RoZXIudjE5XyksIHYyMF8ob3RoZXIudjIwXyks
IHYyMV8ob3RoZXIudjIxXyksIHYyMl8ob3RoZXIudjIyXyksCi0gICAgICB2MjNfKG90aGVyLnYy
M18pLCB2MjRfKG90aGVyLnYyNF8pLCB2MjVfKG90aGVyLnYyNV8pLCB2MjZfKG90aGVyLnYyNl8p
LAotICAgICAgdjI3XyhvdGhlci52MjdfKSwgdjI4XyhvdGhlci52MjhfKSwgdjI5XyhvdGhlci52
MjlfKSwgdjMwXyhvdGhlci52MzBfKSwKLSAgICAgIHYzMV8ob3RoZXIudjMxXyksIHYzMl8ob3Ro
ZXIudjMyXyksIHYzM18ob3RoZXIudjMzXyksIHYzNF8ob3RoZXIudjM0XyksCi0gICAgICB2MzVf
KG90aGVyLnYzNV8pLCB2MzZfKG90aGVyLnYzNl8pLCB2MzdfKG90aGVyLnYzN18pLCB2MzhfKG90
aGVyLnYzOF8pLAotICAgICAgdjM5XyhvdGhlci52MzlfKSwgdjQwXyhvdGhlci52NDBfKSwgdjQx
XyhvdGhlci52NDFfKSwgdjQyXyhvdGhlci52NDJfKSwKLSAgICAgIHY0M18ob3RoZXIudjQzXyks
IHY0NF8ob3RoZXIudjQ0XyksIHY0NV8ob3RoZXIudjQ1XyksIHY0Nl8ob3RoZXIudjQ2XyksCi0g
ICAgICB2NDdfKG90aGVyLnY0N18pLCB2NDhfKG90aGVyLnY0OF8pIHt9Ci0KLSBwcml2YXRlOgot
ICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZv
aWQgb3BlcmF0b3I9KGNvbnN0IFZhbHVlQXJyYXk0OCYgb3RoZXIpOwotCi0gIGNvbnN0IFQxIHYx
XzsKLSAgY29uc3QgVDIgdjJfOwotICBjb25zdCBUMyB2M187Ci0gIGNvbnN0IFQ0IHY0XzsKLSAg
Y29uc3QgVDUgdjVfOwotICBjb25zdCBUNiB2Nl87Ci0gIGNvbnN0IFQ3IHY3XzsKLSAgY29uc3Qg
VDggdjhfOwotICBjb25zdCBUOSB2OV87Ci0gIGNvbnN0IFQxMCB2MTBfOwotICBjb25zdCBUMTEg
djExXzsKLSAgY29uc3QgVDEyIHYxMl87Ci0gIGNvbnN0IFQxMyB2MTNfOwotICBjb25zdCBUMTQg
djE0XzsKLSAgY29uc3QgVDE1IHYxNV87Ci0gIGNvbnN0IFQxNiB2MTZfOwotICBjb25zdCBUMTcg
djE3XzsKLSAgY29uc3QgVDE4IHYxOF87Ci0gIGNvbnN0IFQxOSB2MTlfOwotICBjb25zdCBUMjAg
djIwXzsKLSAgY29uc3QgVDIxIHYyMV87Ci0gIGNvbnN0IFQyMiB2MjJfOwotICBjb25zdCBUMjMg
djIzXzsKLSAgY29uc3QgVDI0IHYyNF87Ci0gIGNvbnN0IFQyNSB2MjVfOwotICBjb25zdCBUMjYg
djI2XzsKLSAgY29uc3QgVDI3IHYyN187Ci0gIGNvbnN0IFQyOCB2MjhfOwotICBjb25zdCBUMjkg
djI5XzsKLSAgY29uc3QgVDMwIHYzMF87Ci0gIGNvbnN0IFQzMSB2MzFfOwotICBjb25zdCBUMzIg
djMyXzsKLSAgY29uc3QgVDMzIHYzM187Ci0gIGNvbnN0IFQzNCB2MzRfOwotICBjb25zdCBUMzUg
djM1XzsKLSAgY29uc3QgVDM2IHYzNl87Ci0gIGNvbnN0IFQzNyB2MzdfOwotICBjb25zdCBUMzgg
djM4XzsKLSAgY29uc3QgVDM5IHYzOV87Ci0gIGNvbnN0IFQ0MCB2NDBfOwotICBjb25zdCBUNDEg
djQxXzsKLSAgY29uc3QgVDQyIHY0Ml87Ci0gIGNvbnN0IFQ0MyB2NDNfOwotICBjb25zdCBUNDQg
djQ0XzsKLSAgY29uc3QgVDQ1IHY0NV87Ci0gIGNvbnN0IFQ0NiB2NDZfOwotICBjb25zdCBUNDcg
djQ3XzsKLSAgY29uc3QgVDQ4IHY0OF87Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5
cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5
cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFt
ZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlw
ZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcs
IHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUg
VDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBU
MjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5h
bWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5
cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2
LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAs
Ci0gICAgdHlwZW5hbWUgVDQxLCB0eXBlbmFtZSBUNDIsIHR5cGVuYW1lIFQ0MywgdHlwZW5hbWUg
VDQ0LCB0eXBlbmFtZSBUNDUsCi0gICAgdHlwZW5hbWUgVDQ2LCB0eXBlbmFtZSBUNDcsIHR5cGVu
YW1lIFQ0OCwgdHlwZW5hbWUgVDQ5PgotY2xhc3MgVmFsdWVBcnJheTQ5IHsKLSBwdWJsaWM6Ci0g
IFZhbHVlQXJyYXk0OShUMSB2MSwgVDIgdjIsIFQzIHYzLCBUNCB2NCwgVDUgdjUsIFQ2IHY2LCBU
NyB2NywgVDggdjgsIFQ5IHY5LAotICAgICAgVDEwIHYxMCwgVDExIHYxMSwgVDEyIHYxMiwgVDEz
IHYxMywgVDE0IHYxNCwgVDE1IHYxNSwgVDE2IHYxNiwgVDE3IHYxNywKLSAgICAgIFQxOCB2MTgs
IFQxOSB2MTksIFQyMCB2MjAsIFQyMSB2MjEsIFQyMiB2MjIsIFQyMyB2MjMsIFQyNCB2MjQsIFQy
NSB2MjUsCi0gICAgICBUMjYgdjI2LCBUMjcgdjI3LCBUMjggdjI4LCBUMjkgdjI5LCBUMzAgdjMw
LCBUMzEgdjMxLCBUMzIgdjMyLCBUMzMgdjMzLAotICAgICAgVDM0IHYzNCwgVDM1IHYzNSwgVDM2
IHYzNiwgVDM3IHYzNywgVDM4IHYzOCwgVDM5IHYzOSwgVDQwIHY0MCwgVDQxIHY0MSwKLSAgICAg
IFQ0MiB2NDIsIFQ0MyB2NDMsIFQ0NCB2NDQsIFQ0NSB2NDUsIFQ0NiB2NDYsIFQ0NyB2NDcsIFQ0
OCB2NDgsCi0gICAgICBUNDkgdjQ5KSA6IHYxXyh2MSksIHYyXyh2MiksIHYzXyh2MyksIHY0Xyh2
NCksIHY1Xyh2NSksIHY2Xyh2NiksIHY3Xyh2NyksCi0gICAgICB2OF8odjgpLCB2OV8odjkpLCB2
MTBfKHYxMCksIHYxMV8odjExKSwgdjEyXyh2MTIpLCB2MTNfKHYxMyksIHYxNF8odjE0KSwKLSAg
ICAgIHYxNV8odjE1KSwgdjE2Xyh2MTYpLCB2MTdfKHYxNyksIHYxOF8odjE4KSwgdjE5Xyh2MTkp
LCB2MjBfKHYyMCksCi0gICAgICB2MjFfKHYyMSksIHYyMl8odjIyKSwgdjIzXyh2MjMpLCB2MjRf
KHYyNCksIHYyNV8odjI1KSwgdjI2Xyh2MjYpLAotICAgICAgdjI3Xyh2MjcpLCB2MjhfKHYyOCks
IHYyOV8odjI5KSwgdjMwXyh2MzApLCB2MzFfKHYzMSksIHYzMl8odjMyKSwKLSAgICAgIHYzM18o
djMzKSwgdjM0Xyh2MzQpLCB2MzVfKHYzNSksIHYzNl8odjM2KSwgdjM3Xyh2MzcpLCB2MzhfKHYz
OCksCi0gICAgICB2MzlfKHYzOSksIHY0MF8odjQwKSwgdjQxXyh2NDEpLCB2NDJfKHY0MiksIHY0
M18odjQzKSwgdjQ0Xyh2NDQpLAotICAgICAgdjQ1Xyh2NDUpLCB2NDZfKHY0NiksIHY0N18odjQ3
KSwgdjQ4Xyh2NDgpLCB2NDlfKHY0OSkge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAg
b3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtd
ID0ge3N0YXRpY19jYXN0PFQ+KHYxXyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0
YXRpY19jYXN0PFQ+KHYzXyksIHN0YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1
XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0
YXRpY19jYXN0PFQ+KHY4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19j
YXN0PFQ+KHYxMF8pLCBzdGF0aWNfY2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8
VD4odjEyXyksIHN0YXRpY19jYXN0PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAg
ICAgICAgc3RhdGljX2Nhc3Q8VD4odjE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNf
Y2FzdDxUPih2MTdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjE4XyksIHN0YXRpY19jYXN0
PFQ+KHYxOV8pLCBzdGF0aWNfY2FzdDxUPih2MjBfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4o
djIxXyksIHN0YXRpY19jYXN0PFQ+KHYyMl8pLCBzdGF0aWNfY2FzdDxUPih2MjNfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjI0XyksIHN0YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0aWNfY2Fz
dDxUPih2MjZfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI3XyksIHN0YXRpY19jYXN0PFQ+
KHYyOF8pLCBzdGF0aWNfY2FzdDxUPih2MjlfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMw
XyksIHN0YXRpY19jYXN0PFQ+KHYzMV8pLCBzdGF0aWNfY2FzdDxUPih2MzJfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjMzXyksIHN0YXRpY19jYXN0PFQ+KHYzNF8pLCBzdGF0aWNfY2FzdDxU
Pih2MzVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjM2XyksIHN0YXRpY19jYXN0PFQ+KHYz
N18pLCBzdGF0aWNfY2FzdDxUPih2MzhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjM5Xyks
IHN0YXRpY19jYXN0PFQ+KHY0MF8pLCBzdGF0aWNfY2FzdDxUPih2NDFfKSwKLSAgICAgICAgc3Rh
dGljX2Nhc3Q8VD4odjQyXyksIHN0YXRpY19jYXN0PFQ+KHY0M18pLCBzdGF0aWNfY2FzdDxUPih2
NDRfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjQ1XyksIHN0YXRpY19jYXN0PFQ+KHY0Nl8p
LCBzdGF0aWNfY2FzdDxUPih2NDdfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjQ4XyksIHN0
YXRpY19jYXN0PFQ+KHY0OV8pfTsKLSAgICByZXR1cm4gVmFsdWVzSW4oYXJyYXkpOwotICB9Ci0K
LSAgVmFsdWVBcnJheTQ5KGNvbnN0IFZhbHVlQXJyYXk0OSYgb3RoZXIpIDogdjFfKG90aGVyLnYx
XyksIHYyXyhvdGhlci52Ml8pLAotICAgICAgdjNfKG90aGVyLnYzXyksIHY0XyhvdGhlci52NF8p
LCB2NV8ob3RoZXIudjVfKSwgdjZfKG90aGVyLnY2XyksCi0gICAgICB2N18ob3RoZXIudjdfKSwg
djhfKG90aGVyLnY4XyksIHY5XyhvdGhlci52OV8pLCB2MTBfKG90aGVyLnYxMF8pLAotICAgICAg
djExXyhvdGhlci52MTFfKSwgdjEyXyhvdGhlci52MTJfKSwgdjEzXyhvdGhlci52MTNfKSwgdjE0
XyhvdGhlci52MTRfKSwKLSAgICAgIHYxNV8ob3RoZXIudjE1XyksIHYxNl8ob3RoZXIudjE2Xyks
IHYxN18ob3RoZXIudjE3XyksIHYxOF8ob3RoZXIudjE4XyksCi0gICAgICB2MTlfKG90aGVyLnYx
OV8pLCB2MjBfKG90aGVyLnYyMF8pLCB2MjFfKG90aGVyLnYyMV8pLCB2MjJfKG90aGVyLnYyMl8p
LAotICAgICAgdjIzXyhvdGhlci52MjNfKSwgdjI0XyhvdGhlci52MjRfKSwgdjI1XyhvdGhlci52
MjVfKSwgdjI2XyhvdGhlci52MjZfKSwKLSAgICAgIHYyN18ob3RoZXIudjI3XyksIHYyOF8ob3Ro
ZXIudjI4XyksIHYyOV8ob3RoZXIudjI5XyksIHYzMF8ob3RoZXIudjMwXyksCi0gICAgICB2MzFf
KG90aGVyLnYzMV8pLCB2MzJfKG90aGVyLnYzMl8pLCB2MzNfKG90aGVyLnYzM18pLCB2MzRfKG90
aGVyLnYzNF8pLAotICAgICAgdjM1XyhvdGhlci52MzVfKSwgdjM2XyhvdGhlci52MzZfKSwgdjM3
XyhvdGhlci52MzdfKSwgdjM4XyhvdGhlci52MzhfKSwKLSAgICAgIHYzOV8ob3RoZXIudjM5Xyks
IHY0MF8ob3RoZXIudjQwXyksIHY0MV8ob3RoZXIudjQxXyksIHY0Ml8ob3RoZXIudjQyXyksCi0g
ICAgICB2NDNfKG90aGVyLnY0M18pLCB2NDRfKG90aGVyLnY0NF8pLCB2NDVfKG90aGVyLnY0NV8p
LCB2NDZfKG90aGVyLnY0Nl8pLAotICAgICAgdjQ3XyhvdGhlci52NDdfKSwgdjQ4XyhvdGhlci52
NDhfKSwgdjQ5XyhvdGhlci52NDlfKSB7fQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50
YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25z
dCBWYWx1ZUFycmF5NDkmIG90aGVyKTsKLQotICBjb25zdCBUMSB2MV87Ci0gIGNvbnN0IFQyIHYy
XzsKLSAgY29uc3QgVDMgdjNfOwotICBjb25zdCBUNCB2NF87Ci0gIGNvbnN0IFQ1IHY1XzsKLSAg
Y29uc3QgVDYgdjZfOwotICBjb25zdCBUNyB2N187Ci0gIGNvbnN0IFQ4IHY4XzsKLSAgY29uc3Qg
VDkgdjlfOwotICBjb25zdCBUMTAgdjEwXzsKLSAgY29uc3QgVDExIHYxMV87Ci0gIGNvbnN0IFQx
MiB2MTJfOwotICBjb25zdCBUMTMgdjEzXzsKLSAgY29uc3QgVDE0IHYxNF87Ci0gIGNvbnN0IFQx
NSB2MTVfOwotICBjb25zdCBUMTYgdjE2XzsKLSAgY29uc3QgVDE3IHYxN187Ci0gIGNvbnN0IFQx
OCB2MThfOwotICBjb25zdCBUMTkgdjE5XzsKLSAgY29uc3QgVDIwIHYyMF87Ci0gIGNvbnN0IFQy
MSB2MjFfOwotICBjb25zdCBUMjIgdjIyXzsKLSAgY29uc3QgVDIzIHYyM187Ci0gIGNvbnN0IFQy
NCB2MjRfOwotICBjb25zdCBUMjUgdjI1XzsKLSAgY29uc3QgVDI2IHYyNl87Ci0gIGNvbnN0IFQy
NyB2MjdfOwotICBjb25zdCBUMjggdjI4XzsKLSAgY29uc3QgVDI5IHYyOV87Ci0gIGNvbnN0IFQz
MCB2MzBfOwotICBjb25zdCBUMzEgdjMxXzsKLSAgY29uc3QgVDMyIHYzMl87Ci0gIGNvbnN0IFQz
MyB2MzNfOwotICBjb25zdCBUMzQgdjM0XzsKLSAgY29uc3QgVDM1IHYzNV87Ci0gIGNvbnN0IFQz
NiB2MzZfOwotICBjb25zdCBUMzcgdjM3XzsKLSAgY29uc3QgVDM4IHYzOF87Ci0gIGNvbnN0IFQz
OSB2MzlfOwotICBjb25zdCBUNDAgdjQwXzsKLSAgY29uc3QgVDQxIHY0MV87Ci0gIGNvbnN0IFQ0
MiB2NDJfOwotICBjb25zdCBUNDMgdjQzXzsKLSAgY29uc3QgVDQ0IHY0NF87Ci0gIGNvbnN0IFQ0
NSB2NDVfOwotICBjb25zdCBUNDYgdjQ2XzsKLSAgY29uc3QgVDQ3IHY0N187Ci0gIGNvbnN0IFQ0
OCB2NDhfOwotICBjb25zdCBUNDkgdjQ5XzsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwg
dHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAg
dHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVu
YW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0
eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQx
NywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFt
ZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1l
IFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBl
bmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwg
dHlwZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBU
MzYsIHR5cGVuYW1lIFQzNywgdHlwZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0
MCwKLSAgICB0eXBlbmFtZSBUNDEsIHR5cGVuYW1lIFQ0MiwgdHlwZW5hbWUgVDQzLCB0eXBlbmFt
ZSBUNDQsIHR5cGVuYW1lIFQ0NSwKLSAgICB0eXBlbmFtZSBUNDYsIHR5cGVuYW1lIFQ0NywgdHlw
ZW5hbWUgVDQ4LCB0eXBlbmFtZSBUNDksIHR5cGVuYW1lIFQ1MD4KLWNsYXNzIFZhbHVlQXJyYXk1
MCB7Ci0gcHVibGljOgotICBWYWx1ZUFycmF5NTAoVDEgdjEsIFQyIHYyLCBUMyB2MywgVDQgdjQs
IFQ1IHY1LCBUNiB2NiwgVDcgdjcsIFQ4IHY4LCBUOSB2OSwKLSAgICAgIFQxMCB2MTAsIFQxMSB2
MTEsIFQxMiB2MTIsIFQxMyB2MTMsIFQxNCB2MTQsIFQxNSB2MTUsIFQxNiB2MTYsIFQxNyB2MTcs
Ci0gICAgICBUMTggdjE4LCBUMTkgdjE5LCBUMjAgdjIwLCBUMjEgdjIxLCBUMjIgdjIyLCBUMjMg
djIzLCBUMjQgdjI0LCBUMjUgdjI1LAotICAgICAgVDI2IHYyNiwgVDI3IHYyNywgVDI4IHYyOCwg
VDI5IHYyOSwgVDMwIHYzMCwgVDMxIHYzMSwgVDMyIHYzMiwgVDMzIHYzMywKLSAgICAgIFQzNCB2
MzQsIFQzNSB2MzUsIFQzNiB2MzYsIFQzNyB2MzcsIFQzOCB2MzgsIFQzOSB2MzksIFQ0MCB2NDAs
IFQ0MSB2NDEsCi0gICAgICBUNDIgdjQyLCBUNDMgdjQzLCBUNDQgdjQ0LCBUNDUgdjQ1LCBUNDYg
djQ2LCBUNDcgdjQ3LCBUNDggdjQ4LCBUNDkgdjQ5LAotICAgICAgVDUwIHY1MCkgOiB2MV8odjEp
LCB2Ml8odjIpLCB2M18odjMpLCB2NF8odjQpLCB2NV8odjUpLCB2Nl8odjYpLCB2N18odjcpLAot
ICAgICAgdjhfKHY4KSwgdjlfKHY5KSwgdjEwXyh2MTApLCB2MTFfKHYxMSksIHYxMl8odjEyKSwg
djEzXyh2MTMpLCB2MTRfKHYxNCksCi0gICAgICB2MTVfKHYxNSksIHYxNl8odjE2KSwgdjE3Xyh2
MTcpLCB2MThfKHYxOCksIHYxOV8odjE5KSwgdjIwXyh2MjApLAotICAgICAgdjIxXyh2MjEpLCB2
MjJfKHYyMiksIHYyM18odjIzKSwgdjI0Xyh2MjQpLCB2MjVfKHYyNSksIHYyNl8odjI2KSwKLSAg
ICAgIHYyN18odjI3KSwgdjI4Xyh2MjgpLCB2MjlfKHYyOSksIHYzMF8odjMwKSwgdjMxXyh2MzEp
LCB2MzJfKHYzMiksCi0gICAgICB2MzNfKHYzMyksIHYzNF8odjM0KSwgdjM1Xyh2MzUpLCB2MzZf
KHYzNiksIHYzN18odjM3KSwgdjM4Xyh2MzgpLAotICAgICAgdjM5Xyh2MzkpLCB2NDBfKHY0MCks
IHY0MV8odjQxKSwgdjQyXyh2NDIpLCB2NDNfKHY0MyksIHY0NF8odjQ0KSwKLSAgICAgIHY0NV8o
djQ1KSwgdjQ2Xyh2NDYpLCB2NDdfKHY0NyksIHY0OF8odjQ4KSwgdjQ5Xyh2NDkpLCB2NTBfKHY1
MCkge30KLQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0
b3I8VD4oKSBjb25zdCB7Ci0gICAgY29uc3QgVCBhcnJheVtdID0ge3N0YXRpY19jYXN0PFQ+KHYx
XyksIHN0YXRpY19jYXN0PFQ+KHYyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFQ+KHYzXyksIHN0
YXRpY19jYXN0PFQ+KHY0XyksIHN0YXRpY19jYXN0PFQ+KHY1XyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFQ+KHY2XyksIHN0YXRpY19jYXN0PFQ+KHY3XyksIHN0YXRpY19jYXN0PFQ+KHY4XyksCi0g
ICAgICAgIHN0YXRpY19jYXN0PFQ+KHY5XyksIHN0YXRpY19jYXN0PFQ+KHYxMF8pLCBzdGF0aWNf
Y2FzdDxUPih2MTFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjEyXyksIHN0YXRpY19jYXN0
PFQ+KHYxM18pLCBzdGF0aWNfY2FzdDxUPih2MTRfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4o
djE1XyksIHN0YXRpY19jYXN0PFQ+KHYxNl8pLCBzdGF0aWNfY2FzdDxUPih2MTdfKSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8VD4odjE4XyksIHN0YXRpY19jYXN0PFQ+KHYxOV8pLCBzdGF0aWNfY2Fz
dDxUPih2MjBfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjIxXyksIHN0YXRpY19jYXN0PFQ+
KHYyMl8pLCBzdGF0aWNfY2FzdDxUPih2MjNfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjI0
XyksIHN0YXRpY19jYXN0PFQ+KHYyNV8pLCBzdGF0aWNfY2FzdDxUPih2MjZfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8VD4odjI3XyksIHN0YXRpY19jYXN0PFQ+KHYyOF8pLCBzdGF0aWNfY2FzdDxU
Pih2MjlfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMwXyksIHN0YXRpY19jYXN0PFQ+KHYz
MV8pLCBzdGF0aWNfY2FzdDxUPih2MzJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjMzXyks
IHN0YXRpY19jYXN0PFQ+KHYzNF8pLCBzdGF0aWNfY2FzdDxUPih2MzVfKSwKLSAgICAgICAgc3Rh
dGljX2Nhc3Q8VD4odjM2XyksIHN0YXRpY19jYXN0PFQ+KHYzN18pLCBzdGF0aWNfY2FzdDxUPih2
MzhfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjM5XyksIHN0YXRpY19jYXN0PFQ+KHY0MF8p
LCBzdGF0aWNfY2FzdDxUPih2NDFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjQyXyksIHN0
YXRpY19jYXN0PFQ+KHY0M18pLCBzdGF0aWNfY2FzdDxUPih2NDRfKSwKLSAgICAgICAgc3RhdGlj
X2Nhc3Q8VD4odjQ1XyksIHN0YXRpY19jYXN0PFQ+KHY0Nl8pLCBzdGF0aWNfY2FzdDxUPih2NDdf
KSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8VD4odjQ4XyksIHN0YXRpY19jYXN0PFQ+KHY0OV8pLCBz
dGF0aWNfY2FzdDxUPih2NTBfKX07Ci0gICAgcmV0dXJuIFZhbHVlc0luKGFycmF5KTsKLSAgfQot
Ci0gIFZhbHVlQXJyYXk1MChjb25zdCBWYWx1ZUFycmF5NTAmIG90aGVyKSA6IHYxXyhvdGhlci52
MV8pLCB2Ml8ob3RoZXIudjJfKSwKLSAgICAgIHYzXyhvdGhlci52M18pLCB2NF8ob3RoZXIudjRf
KSwgdjVfKG90aGVyLnY1XyksIHY2XyhvdGhlci52Nl8pLAotICAgICAgdjdfKG90aGVyLnY3Xyks
IHY4XyhvdGhlci52OF8pLCB2OV8ob3RoZXIudjlfKSwgdjEwXyhvdGhlci52MTBfKSwKLSAgICAg
IHYxMV8ob3RoZXIudjExXyksIHYxMl8ob3RoZXIudjEyXyksIHYxM18ob3RoZXIudjEzXyksIHYx
NF8ob3RoZXIudjE0XyksCi0gICAgICB2MTVfKG90aGVyLnYxNV8pLCB2MTZfKG90aGVyLnYxNl8p
LCB2MTdfKG90aGVyLnYxN18pLCB2MThfKG90aGVyLnYxOF8pLAotICAgICAgdjE5XyhvdGhlci52
MTlfKSwgdjIwXyhvdGhlci52MjBfKSwgdjIxXyhvdGhlci52MjFfKSwgdjIyXyhvdGhlci52MjJf
KSwKLSAgICAgIHYyM18ob3RoZXIudjIzXyksIHYyNF8ob3RoZXIudjI0XyksIHYyNV8ob3RoZXIu
djI1XyksIHYyNl8ob3RoZXIudjI2XyksCi0gICAgICB2MjdfKG90aGVyLnYyN18pLCB2MjhfKG90
aGVyLnYyOF8pLCB2MjlfKG90aGVyLnYyOV8pLCB2MzBfKG90aGVyLnYzMF8pLAotICAgICAgdjMx
XyhvdGhlci52MzFfKSwgdjMyXyhvdGhlci52MzJfKSwgdjMzXyhvdGhlci52MzNfKSwgdjM0Xyhv
dGhlci52MzRfKSwKLSAgICAgIHYzNV8ob3RoZXIudjM1XyksIHYzNl8ob3RoZXIudjM2XyksIHYz
N18ob3RoZXIudjM3XyksIHYzOF8ob3RoZXIudjM4XyksCi0gICAgICB2MzlfKG90aGVyLnYzOV8p
LCB2NDBfKG90aGVyLnY0MF8pLCB2NDFfKG90aGVyLnY0MV8pLCB2NDJfKG90aGVyLnY0Ml8pLAot
ICAgICAgdjQzXyhvdGhlci52NDNfKSwgdjQ0XyhvdGhlci52NDRfKSwgdjQ1XyhvdGhlci52NDVf
KSwgdjQ2XyhvdGhlci52NDZfKSwKLSAgICAgIHY0N18ob3RoZXIudjQ3XyksIHY0OF8ob3RoZXIu
djQ4XyksIHY0OV8ob3RoZXIudjQ5XyksIHY1MF8ob3RoZXIudjUwXykge30KLQotIHByaXZhdGU6
Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAg
dm9pZCBvcGVyYXRvcj0oY29uc3QgVmFsdWVBcnJheTUwJiBvdGhlcik7Ci0KLSAgY29uc3QgVDEg
djFfOwotICBjb25zdCBUMiB2Ml87Ci0gIGNvbnN0IFQzIHYzXzsKLSAgY29uc3QgVDQgdjRfOwot
ICBjb25zdCBUNSB2NV87Ci0gIGNvbnN0IFQ2IHY2XzsKLSAgY29uc3QgVDcgdjdfOwotICBjb25z
dCBUOCB2OF87Ci0gIGNvbnN0IFQ5IHY5XzsKLSAgY29uc3QgVDEwIHYxMF87Ci0gIGNvbnN0IFQx
MSB2MTFfOwotICBjb25zdCBUMTIgdjEyXzsKLSAgY29uc3QgVDEzIHYxM187Ci0gIGNvbnN0IFQx
NCB2MTRfOwotICBjb25zdCBUMTUgdjE1XzsKLSAgY29uc3QgVDE2IHYxNl87Ci0gIGNvbnN0IFQx
NyB2MTdfOwotICBjb25zdCBUMTggdjE4XzsKLSAgY29uc3QgVDE5IHYxOV87Ci0gIGNvbnN0IFQy
MCB2MjBfOwotICBjb25zdCBUMjEgdjIxXzsKLSAgY29uc3QgVDIyIHYyMl87Ci0gIGNvbnN0IFQy
MyB2MjNfOwotICBjb25zdCBUMjQgdjI0XzsKLSAgY29uc3QgVDI1IHYyNV87Ci0gIGNvbnN0IFQy
NiB2MjZfOwotICBjb25zdCBUMjcgdjI3XzsKLSAgY29uc3QgVDI4IHYyOF87Ci0gIGNvbnN0IFQy
OSB2MjlfOwotICBjb25zdCBUMzAgdjMwXzsKLSAgY29uc3QgVDMxIHYzMV87Ci0gIGNvbnN0IFQz
MiB2MzJfOwotICBjb25zdCBUMzMgdjMzXzsKLSAgY29uc3QgVDM0IHYzNF87Ci0gIGNvbnN0IFQz
NSB2MzVfOwotICBjb25zdCBUMzYgdjM2XzsKLSAgY29uc3QgVDM3IHYzN187Ci0gIGNvbnN0IFQz
OCB2MzhfOwotICBjb25zdCBUMzkgdjM5XzsKLSAgY29uc3QgVDQwIHY0MF87Ci0gIGNvbnN0IFQ0
MSB2NDFfOwotICBjb25zdCBUNDIgdjQyXzsKLSAgY29uc3QgVDQzIHY0M187Ci0gIGNvbnN0IFQ0
NCB2NDRfOwotICBjb25zdCBUNDUgdjQ1XzsKLSAgY29uc3QgVDQ2IHY0Nl87Ci0gIGNvbnN0IFQ0
NyB2NDdfOwotICBjb25zdCBUNDggdjQ4XzsKLSAgY29uc3QgVDQ5IHY0OV87Ci0gIGNvbnN0IFQ1
MCB2NTBfOwotfTsKLQotIyBpZiBHVEVTVF9IQVNfQ09NQklORQotLy8gSU5URVJOQUwgSU1QTEVN
RU5UQVRJT04gLSBETyBOT1QgVVNFIElOIFVTRVIgQ09ERS4KLS8vCi0vLyBHZW5lcmF0ZXMgdmFs
dWVzIGZyb20gdGhlIENhcnRlc2lhbiBwcm9kdWN0IG9mIHZhbHVlcyBwcm9kdWNlZAotLy8gYnkg
dGhlIGFyZ3VtZW50IGdlbmVyYXRvcnMuCi0vLwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBl
bmFtZSBUMj4KLWNsYXNzIENhcnRlc2lhblByb2R1Y3RHZW5lcmF0b3IyCi0gICAgOiBwdWJsaWMg
UGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8IDo6dGVzdGluZzo6dHVwbGU8VDEsIFQyPiA+IHsKLSBw
dWJsaWM6Ci0gIHR5cGVkZWYgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDI+IFBhcmFtVHlwZTsKLQot
ICBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yMihjb25zdCBQYXJhbUdlbmVyYXRvcjxUMT4mIGcx
LAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDI+JiBnMikKLSAgICAgIDogZzFfKGcxKSwg
ZzJfKGcyKSB7fQotICB2aXJ0dWFsIH5DYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yMigpIHt9Ci0K
LSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIEJlZ2luKCkgY29u
c3QgewotICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhpcywgZzFfLCBnMV8uYmVnaW4oKSwgZzJf
LCBnMl8uYmVnaW4oKSk7Ci0gIH0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBh
cmFtVHlwZT4qIEVuZCgpIGNvbnN0IHsKLSAgICByZXR1cm4gbmV3IEl0ZXJhdG9yKHRoaXMsIGcx
XywgZzFfLmVuZCgpLCBnMl8sIGcyXy5lbmQoKSk7Ci0gIH0KLQotIHByaXZhdGU6Ci0gIGNsYXNz
IEl0ZXJhdG9yIDogcHVibGljIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiB7Ci0g
ICBwdWJsaWM6Ci0gICAgSXRlcmF0b3IoY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFy
YW1UeXBlPiogYmFzZSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQxPiYgZzEsCi0gICAg
ICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMT46Oml0ZXJhdG9yJiBjdXJyZW50MSwK
LSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQyPiYgZzIsCi0gICAgICBjb25zdCB0eXBlbmFt
ZSBQYXJhbUdlbmVyYXRvcjxUMj46Oml0ZXJhdG9yJiBjdXJyZW50MikKLSAgICAgICAgOiBiYXNl
XyhiYXNlKSwKLSAgICAgICAgICBiZWdpbjFfKGcxLmJlZ2luKCkpLCBlbmQxXyhnMS5lbmQoKSks
IGN1cnJlbnQxXyhjdXJyZW50MSksCi0gICAgICAgICAgYmVnaW4yXyhnMi5iZWdpbigpKSwgZW5k
Ml8oZzIuZW5kKCkpLCBjdXJyZW50Ml8oY3VycmVudDIpICAgIHsKLSAgICAgIENvbXB1dGVDdXJy
ZW50VmFsdWUoKTsKLSAgICB9Ci0gICAgdmlydHVhbCB+SXRlcmF0b3IoKSB7fQotCi0gICAgdmly
dHVhbCBjb25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+KiBCYXNlR2VuZXJh
dG9yKCkgY29uc3QgewotICAgICAgcmV0dXJuIGJhc2VfOwotICAgIH0KLSAgICAvLyBBZHZhbmNl
IHNob3VsZCBub3QgYmUgY2FsbGVkIG9uIGJleW9uZC1vZi1yYW5nZSBpdGVyYXRvcnMKLSAgICAv
LyBzbyBubyBjb21wb25lbnQgaXRlcmF0b3JzIG11c3QgYmUgYmV5b25kIGVuZCBvZiByYW5nZSwg
ZWl0aGVyLgotICAgIHZpcnR1YWwgdm9pZCBBZHZhbmNlKCkgewotICAgICAgYXNzZXJ0KCFBdEVu
ZCgpKTsKLSAgICAgICsrY3VycmVudDJfOwotICAgICAgaWYgKGN1cnJlbnQyXyA9PSBlbmQyXykg
ewotICAgICAgICBjdXJyZW50Ml8gPSBiZWdpbjJfOwotICAgICAgICArK2N1cnJlbnQxXzsKLSAg
ICAgIH0KLSAgICAgIENvbXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0gICAgdmlydHVhbCBQ
YXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIENsb25lKCkgY29uc3QgewotICAgICAg
cmV0dXJuIG5ldyBJdGVyYXRvcigqdGhpcyk7Ci0gICAgfQotICAgIHZpcnR1YWwgY29uc3QgUGFy
YW1UeXBlKiBDdXJyZW50KCkgY29uc3QgeyByZXR1cm4gY3VycmVudF92YWx1ZV8uZ2V0KCk7IH0K
LSAgICB2aXJ0dWFsIGJvb2wgRXF1YWxzKGNvbnN0IFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFy
YW1UeXBlPiYgb3RoZXIpIGNvbnN0IHsKLSAgICAgIC8vIEhhdmluZyB0aGUgc2FtZSBiYXNlIGdl
bmVyYXRvciBndWFyYW50ZWVzIHRoYXQgdGhlIG90aGVyCi0gICAgICAvLyBpdGVyYXRvciBpcyBv
ZiB0aGUgc2FtZSB0eXBlIGFuZCB3ZSBjYW4gZG93bmNhc3QuCi0gICAgICBHVEVTVF9DSEVDS18o
QmFzZUdlbmVyYXRvcigpID09IG90aGVyLkJhc2VHZW5lcmF0b3IoKSkKLSAgICAgICAgICA8PCAi
VGhlIHByb2dyYW0gYXR0ZW1wdGVkIHRvIGNvbXBhcmUgaXRlcmF0b3JzICIKLSAgICAgICAgICA8
PCAiZnJvbSBkaWZmZXJlbnQgZ2VuZXJhdG9ycy4iIDw8IHN0ZDo6ZW5kbDsKLSAgICAgIGNvbnN0
IEl0ZXJhdG9yKiB0eXBlZF9vdGhlciA9Ci0gICAgICAgICAgQ2hlY2tlZERvd25jYXN0VG9BY3R1
YWxUeXBlPGNvbnN0IEl0ZXJhdG9yPigmb3RoZXIpOwotICAgICAgLy8gV2UgbXVzdCByZXBvcnQg
aXRlcmF0b3JzIGVxdWFsIGlmIHRoZXkgYm90aCBwb2ludCBiZXlvbmQgdGhlaXIKLSAgICAgIC8v
IHJlc3BlY3RpdmUgcmFuZ2VzLiBUaGF0IGNhbiBoYXBwZW4gaW4gYSB2YXJpZXR5IG9mIGZhc2hp
b25zLAotICAgICAgLy8gc28gd2UgaGF2ZSB0byBjb25zdWx0IEF0RW5kKCkuCi0gICAgICByZXR1
cm4gKEF0RW5kKCkgJiYgdHlwZWRfb3RoZXItPkF0RW5kKCkpIHx8Ci0gICAgICAgICAoCi0gICAg
ICAgICAgY3VycmVudDFfID09IHR5cGVkX290aGVyLT5jdXJyZW50MV8gJiYKLSAgICAgICAgICBj
dXJyZW50Ml8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQyXyk7Ci0gICAgfQotCi0gICBwcml2YXRl
OgotICAgIEl0ZXJhdG9yKGNvbnN0IEl0ZXJhdG9yJiBvdGhlcikKLSAgICAgICAgOiBiYXNlXyhv
dGhlci5iYXNlXyksCi0gICAgICAgIGJlZ2luMV8ob3RoZXIuYmVnaW4xXyksCi0gICAgICAgIGVu
ZDFfKG90aGVyLmVuZDFfKSwKLSAgICAgICAgY3VycmVudDFfKG90aGVyLmN1cnJlbnQxXyksCi0g
ICAgICAgIGJlZ2luMl8ob3RoZXIuYmVnaW4yXyksCi0gICAgICAgIGVuZDJfKG90aGVyLmVuZDJf
KSwKLSAgICAgICAgY3VycmVudDJfKG90aGVyLmN1cnJlbnQyXykgewotICAgICAgQ29tcHV0ZUN1
cnJlbnRWYWx1ZSgpOwotICAgIH0KLQotICAgIHZvaWQgQ29tcHV0ZUN1cnJlbnRWYWx1ZSgpIHsK
LSAgICAgIGlmICghQXRFbmQoKSkKLSAgICAgICAgY3VycmVudF92YWx1ZV8ucmVzZXQobmV3IFBh
cmFtVHlwZSgqY3VycmVudDFfLCAqY3VycmVudDJfKSk7Ci0gICAgfQotICAgIGJvb2wgQXRFbmQo
KSBjb25zdCB7Ci0gICAgICAvLyBXZSBtdXN0IHJlcG9ydCBpdGVyYXRvciBwYXN0IHRoZSBlbmQg
b2YgdGhlIHJhbmdlIHdoZW4gZWl0aGVyIG9mIHRoZQotICAgICAgLy8gY29tcG9uZW50IGl0ZXJh
dG9ycyBoYXMgcmVhY2hlZCB0aGUgZW5kIG9mIGl0cyByYW5nZS4KLSAgICAgIHJldHVybgotICAg
ICAgICAgIGN1cnJlbnQxXyA9PSBlbmQxXyB8fAotICAgICAgICAgIGN1cnJlbnQyXyA9PSBlbmQy
XzsKLSAgICB9Ci0KLSAgICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5z
dXBwb3J0ZWQuCi0gICAgdm9pZCBvcGVyYXRvcj0oY29uc3QgSXRlcmF0b3ImIG90aGVyKTsKLQot
ICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIGNvbnN0IGJhc2Vf
OwotICAgIC8vIGJlZ2luW2ldXyBhbmQgZW5kW2ldXyBkZWZpbmUgdGhlIGktdGggcmFuZ2UgdGhh
dCBJdGVyYXRvciB0cmF2ZXJzZXMuCi0gICAgLy8gY3VycmVudFtpXV8gaXMgdGhlIGFjdHVhbCB0
cmF2ZXJzaW5nIGl0ZXJhdG9yLgotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQx
Pjo6aXRlcmF0b3IgYmVnaW4xXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxU
MT46Oml0ZXJhdG9yIGVuZDFfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQxPjo6aXRl
cmF0b3IgY3VycmVudDFfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQyPjo6
aXRlcmF0b3IgYmVnaW4yXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMj46
Oml0ZXJhdG9yIGVuZDJfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQyPjo6aXRlcmF0
b3IgY3VycmVudDJfOwotICAgIGxpbmtlZF9wdHI8UGFyYW1UeXBlPiBjdXJyZW50X3ZhbHVlXzsK
LSAgfTsgIC8vIGNsYXNzIENhcnRlc2lhblByb2R1Y3RHZW5lcmF0b3IyOjpJdGVyYXRvcgotCi0g
IC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9p
ZCBvcGVyYXRvcj0oY29uc3QgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjImIG90aGVyKTsKLQot
ICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUMT4gZzFfOwotICBjb25zdCBQYXJhbUdlbmVyYXRvcjxU
Mj4gZzJfOwotfTsgIC8vIGNsYXNzIENhcnRlc2lhblByb2R1Y3RHZW5lcmF0b3IyCi0KLQotdGVt
cGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDM+Ci1jbGFzcyBDYXJ0
ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yMwotICAgIDogcHVibGljIFBhcmFtR2VuZXJhdG9ySW50ZXJm
YWNlPCA6OnRlc3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDM+ID4gewotIHB1YmxpYzoKLSAgdHlwZWRl
ZiA6OnRlc3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDM+IFBhcmFtVHlwZTsKLQotICBDYXJ0ZXNpYW5Q
cm9kdWN0R2VuZXJhdG9yMyhjb25zdCBQYXJhbUdlbmVyYXRvcjxUMT4mIGcxLAotICAgICAgY29u
c3QgUGFyYW1HZW5lcmF0b3I8VDI+JiBnMiwgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDM+JiBnMykK
LSAgICAgIDogZzFfKGcxKSwgZzJfKGcyKSwgZzNfKGczKSB7fQotICB2aXJ0dWFsIH5DYXJ0ZXNp
YW5Qcm9kdWN0R2VuZXJhdG9yMygpIHt9Ci0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJm
YWNlPFBhcmFtVHlwZT4qIEJlZ2luKCkgY29uc3QgewotICAgIHJldHVybiBuZXcgSXRlcmF0b3Io
dGhpcywgZzFfLCBnMV8uYmVnaW4oKSwgZzJfLCBnMl8uYmVnaW4oKSwgZzNfLAotICAgICAgICBn
M18uYmVnaW4oKSk7Ci0gIH0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFt
VHlwZT4qIEVuZCgpIGNvbnN0IHsKLSAgICByZXR1cm4gbmV3IEl0ZXJhdG9yKHRoaXMsIGcxXywg
ZzFfLmVuZCgpLCBnMl8sIGcyXy5lbmQoKSwgZzNfLCBnM18uZW5kKCkpOwotICB9Ci0KLSBwcml2
YXRlOgotICBjbGFzcyBJdGVyYXRvciA6IHB1YmxpYyBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBh
cmFtVHlwZT4gewotICAgcHVibGljOgotICAgIEl0ZXJhdG9yKGNvbnN0IFBhcmFtR2VuZXJhdG9y
SW50ZXJmYWNlPFBhcmFtVHlwZT4qIGJhc2UsCi0gICAgICBjb25zdCBQYXJhbUdlbmVyYXRvcjxU
MT4mIGcxLAotICAgICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDE+OjppdGVyYXRv
ciYgY3VycmVudDEsCi0gICAgICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUMj4mIGcyLAotICAgICAg
Y29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDI+OjppdGVyYXRvciYgY3VycmVudDIsCi0g
ICAgICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUMz4mIGczLAotICAgICAgY29uc3QgdHlwZW5hbWUg
UGFyYW1HZW5lcmF0b3I8VDM+OjppdGVyYXRvciYgY3VycmVudDMpCi0gICAgICAgIDogYmFzZV8o
YmFzZSksCi0gICAgICAgICAgYmVnaW4xXyhnMS5iZWdpbigpKSwgZW5kMV8oZzEuZW5kKCkpLCBj
dXJyZW50MV8oY3VycmVudDEpLAotICAgICAgICAgIGJlZ2luMl8oZzIuYmVnaW4oKSksIGVuZDJf
KGcyLmVuZCgpKSwgY3VycmVudDJfKGN1cnJlbnQyKSwKLSAgICAgICAgICBiZWdpbjNfKGczLmJl
Z2luKCkpLCBlbmQzXyhnMy5lbmQoKSksIGN1cnJlbnQzXyhjdXJyZW50MykgICAgewotICAgICAg
Q29tcHV0ZUN1cnJlbnRWYWx1ZSgpOwotICAgIH0KLSAgICB2aXJ0dWFsIH5JdGVyYXRvcigpIHt9
Ci0KLSAgICB2aXJ0dWFsIGNvbnN0IFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4q
IEJhc2VHZW5lcmF0b3IoKSBjb25zdCB7Ci0gICAgICByZXR1cm4gYmFzZV87Ci0gICAgfQotICAg
IC8vIEFkdmFuY2Ugc2hvdWxkIG5vdCBiZSBjYWxsZWQgb24gYmV5b25kLW9mLXJhbmdlIGl0ZXJh
dG9ycwotICAgIC8vIHNvIG5vIGNvbXBvbmVudCBpdGVyYXRvcnMgbXVzdCBiZSBiZXlvbmQgZW5k
IG9mIHJhbmdlLCBlaXRoZXIuCi0gICAgdmlydHVhbCB2b2lkIEFkdmFuY2UoKSB7Ci0gICAgICBh
c3NlcnQoIUF0RW5kKCkpOwotICAgICAgKytjdXJyZW50M187Ci0gICAgICBpZiAoY3VycmVudDNf
ID09IGVuZDNfKSB7Ci0gICAgICAgIGN1cnJlbnQzXyA9IGJlZ2luM187Ci0gICAgICAgICsrY3Vy
cmVudDJfOwotICAgICAgfQotICAgICAgaWYgKGN1cnJlbnQyXyA9PSBlbmQyXykgewotICAgICAg
ICBjdXJyZW50Ml8gPSBiZWdpbjJfOwotICAgICAgICArK2N1cnJlbnQxXzsKLSAgICAgIH0KLSAg
ICAgIENvbXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0gICAgdmlydHVhbCBQYXJhbUl0ZXJh
dG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIENsb25lKCkgY29uc3QgewotICAgICAgcmV0dXJuIG5l
dyBJdGVyYXRvcigqdGhpcyk7Ci0gICAgfQotICAgIHZpcnR1YWwgY29uc3QgUGFyYW1UeXBlKiBD
dXJyZW50KCkgY29uc3QgeyByZXR1cm4gY3VycmVudF92YWx1ZV8uZ2V0KCk7IH0KLSAgICB2aXJ0
dWFsIGJvb2wgRXF1YWxzKGNvbnN0IFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiYg
b3RoZXIpIGNvbnN0IHsKLSAgICAgIC8vIEhhdmluZyB0aGUgc2FtZSBiYXNlIGdlbmVyYXRvciBn
dWFyYW50ZWVzIHRoYXQgdGhlIG90aGVyCi0gICAgICAvLyBpdGVyYXRvciBpcyBvZiB0aGUgc2Ft
ZSB0eXBlIGFuZCB3ZSBjYW4gZG93bmNhc3QuCi0gICAgICBHVEVTVF9DSEVDS18oQmFzZUdlbmVy
YXRvcigpID09IG90aGVyLkJhc2VHZW5lcmF0b3IoKSkKLSAgICAgICAgICA8PCAiVGhlIHByb2dy
YW0gYXR0ZW1wdGVkIHRvIGNvbXBhcmUgaXRlcmF0b3JzICIKLSAgICAgICAgICA8PCAiZnJvbSBk
aWZmZXJlbnQgZ2VuZXJhdG9ycy4iIDw8IHN0ZDo6ZW5kbDsKLSAgICAgIGNvbnN0IEl0ZXJhdG9y
KiB0eXBlZF9vdGhlciA9Ci0gICAgICAgICAgQ2hlY2tlZERvd25jYXN0VG9BY3R1YWxUeXBlPGNv
bnN0IEl0ZXJhdG9yPigmb3RoZXIpOwotICAgICAgLy8gV2UgbXVzdCByZXBvcnQgaXRlcmF0b3Jz
IGVxdWFsIGlmIHRoZXkgYm90aCBwb2ludCBiZXlvbmQgdGhlaXIKLSAgICAgIC8vIHJlc3BlY3Rp
dmUgcmFuZ2VzLiBUaGF0IGNhbiBoYXBwZW4gaW4gYSB2YXJpZXR5IG9mIGZhc2hpb25zLAotICAg
ICAgLy8gc28gd2UgaGF2ZSB0byBjb25zdWx0IEF0RW5kKCkuCi0gICAgICByZXR1cm4gKEF0RW5k
KCkgJiYgdHlwZWRfb3RoZXItPkF0RW5kKCkpIHx8Ci0gICAgICAgICAoCi0gICAgICAgICAgY3Vy
cmVudDFfID09IHR5cGVkX290aGVyLT5jdXJyZW50MV8gJiYKLSAgICAgICAgICBjdXJyZW50Ml8g
PT0gdHlwZWRfb3RoZXItPmN1cnJlbnQyXyAmJgotICAgICAgICAgIGN1cnJlbnQzXyA9PSB0eXBl
ZF9vdGhlci0+Y3VycmVudDNfKTsKLSAgICB9Ci0KLSAgIHByaXZhdGU6Ci0gICAgSXRlcmF0b3Io
Y29uc3QgSXRlcmF0b3ImIG90aGVyKQotICAgICAgICA6IGJhc2VfKG90aGVyLmJhc2VfKSwKLSAg
ICAgICAgYmVnaW4xXyhvdGhlci5iZWdpbjFfKSwKLSAgICAgICAgZW5kMV8ob3RoZXIuZW5kMV8p
LAotICAgICAgICBjdXJyZW50MV8ob3RoZXIuY3VycmVudDFfKSwKLSAgICAgICAgYmVnaW4yXyhv
dGhlci5iZWdpbjJfKSwKLSAgICAgICAgZW5kMl8ob3RoZXIuZW5kMl8pLAotICAgICAgICBjdXJy
ZW50Ml8ob3RoZXIuY3VycmVudDJfKSwKLSAgICAgICAgYmVnaW4zXyhvdGhlci5iZWdpbjNfKSwK
LSAgICAgICAgZW5kM18ob3RoZXIuZW5kM18pLAotICAgICAgICBjdXJyZW50M18ob3RoZXIuY3Vy
cmVudDNfKSB7Ci0gICAgICBDb21wdXRlQ3VycmVudFZhbHVlKCk7Ci0gICAgfQotCi0gICAgdm9p
ZCBDb21wdXRlQ3VycmVudFZhbHVlKCkgewotICAgICAgaWYgKCFBdEVuZCgpKQotICAgICAgICBj
dXJyZW50X3ZhbHVlXy5yZXNldChuZXcgUGFyYW1UeXBlKCpjdXJyZW50MV8sICpjdXJyZW50Ml8s
ICpjdXJyZW50M18pKTsKLSAgICB9Ci0gICAgYm9vbCBBdEVuZCgpIGNvbnN0IHsKLSAgICAgIC8v
IFdlIG11c3QgcmVwb3J0IGl0ZXJhdG9yIHBhc3QgdGhlIGVuZCBvZiB0aGUgcmFuZ2Ugd2hlbiBl
aXRoZXIgb2YgdGhlCi0gICAgICAvLyBjb21wb25lbnQgaXRlcmF0b3JzIGhhcyByZWFjaGVkIHRo
ZSBlbmQgb2YgaXRzIHJhbmdlLgotICAgICAgcmV0dXJuCi0gICAgICAgICAgY3VycmVudDFfID09
IGVuZDFfIHx8Ci0gICAgICAgICAgY3VycmVudDJfID09IGVuZDJfIHx8Ci0gICAgICAgICAgY3Vy
cmVudDNfID09IGVuZDNfOwotICAgIH0KLQotICAgIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNz
aWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgICB2b2lkIG9wZXJhdG9yPShjb25zdCBJdGVyYXRv
ciYgb3RoZXIpOwotCi0gICAgY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBl
PiogY29uc3QgYmFzZV87Ci0gICAgLy8gYmVnaW5baV1fIGFuZCBlbmRbaV1fIGRlZmluZSB0aGUg
aS10aCByYW5nZSB0aGF0IEl0ZXJhdG9yIHRyYXZlcnNlcy4KLSAgICAvLyBjdXJyZW50W2ldXyBp
cyB0aGUgYWN0dWFsIHRyYXZlcnNpbmcgaXRlcmF0b3IuCi0gICAgY29uc3QgdHlwZW5hbWUgUGFy
YW1HZW5lcmF0b3I8VDE+OjppdGVyYXRvciBiZWdpbjFfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBh
cmFtR2VuZXJhdG9yPFQxPjo6aXRlcmF0b3IgZW5kMV87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5l
cmF0b3I8VDE+OjppdGVyYXRvciBjdXJyZW50MV87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1H
ZW5lcmF0b3I8VDI+OjppdGVyYXRvciBiZWdpbjJfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFt
R2VuZXJhdG9yPFQyPjo6aXRlcmF0b3IgZW5kMl87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0
b3I8VDI+OjppdGVyYXRvciBjdXJyZW50Ml87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5l
cmF0b3I8VDM+OjppdGVyYXRvciBiZWdpbjNfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2Vu
ZXJhdG9yPFQzPjo6aXRlcmF0b3IgZW5kM187Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8
VDM+OjppdGVyYXRvciBjdXJyZW50M187Ci0gICAgbGlua2VkX3B0cjxQYXJhbVR5cGU+IGN1cnJl
bnRfdmFsdWVfOwotICB9OyAgLy8gY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjM6Okl0
ZXJhdG9yCi0KLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9y
dGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yMyYg
b3RoZXIpOwotCi0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQxPiBnMV87Ci0gIGNvbnN0IFBhcmFt
R2VuZXJhdG9yPFQyPiBnMl87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQzPiBnM187Ci19OyAg
Ly8gY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjMKLQotCi10ZW1wbGF0ZSA8dHlwZW5h
bWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQ+Ci1jbGFzcyBDYXJ0
ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNAotICAgIDogcHVibGljIFBhcmFtR2VuZXJhdG9ySW50ZXJm
YWNlPCA6OnRlc3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDMsIFQ0PiA+IHsKLSBwdWJsaWM6Ci0gIHR5
cGVkZWYgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUND4gUGFyYW1UeXBlOwotCi0gIENh
cnRlc2lhblByb2R1Y3RHZW5lcmF0b3I0KGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQxPiYgZzEsCi0g
ICAgICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUMj4mIGcyLCBjb25zdCBQYXJhbUdlbmVyYXRvcjxU
Mz4mIGczLAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDQ+JiBnNCkKLSAgICAgIDogZzFf
KGcxKSwgZzJfKGcyKSwgZzNfKGczKSwgZzRfKGc0KSB7fQotICB2aXJ0dWFsIH5DYXJ0ZXNpYW5Q
cm9kdWN0R2VuZXJhdG9yNCgpIHt9Ci0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNl
PFBhcmFtVHlwZT4qIEJlZ2luKCkgY29uc3QgewotICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhp
cywgZzFfLCBnMV8uYmVnaW4oKSwgZzJfLCBnMl8uYmVnaW4oKSwgZzNfLAotICAgICAgICBnM18u
YmVnaW4oKSwgZzRfLCBnNF8uYmVnaW4oKSk7Ci0gIH0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9y
SW50ZXJmYWNlPFBhcmFtVHlwZT4qIEVuZCgpIGNvbnN0IHsKLSAgICByZXR1cm4gbmV3IEl0ZXJh
dG9yKHRoaXMsIGcxXywgZzFfLmVuZCgpLCBnMl8sIGcyXy5lbmQoKSwgZzNfLCBnM18uZW5kKCks
Ci0gICAgICAgIGc0XywgZzRfLmVuZCgpKTsKLSAgfQotCi0gcHJpdmF0ZToKLSAgY2xhc3MgSXRl
cmF0b3IgOiBwdWJsaWMgUGFyYW1JdGVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+IHsKLSAgIHB1
YmxpYzoKLSAgICBJdGVyYXRvcihjb25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxQYXJhbVR5
cGU+KiBiYXNlLAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDE+JiBnMSwKLSAgICAgIGNv
bnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQxPjo6aXRlcmF0b3ImIGN1cnJlbnQxLAotICAg
ICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDI+JiBnMiwKLSAgICAgIGNvbnN0IHR5cGVuYW1lIFBh
cmFtR2VuZXJhdG9yPFQyPjo6aXRlcmF0b3ImIGN1cnJlbnQyLAotICAgICAgY29uc3QgUGFyYW1H
ZW5lcmF0b3I8VDM+JiBnMywKLSAgICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQz
Pjo6aXRlcmF0b3ImIGN1cnJlbnQzLAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDQ+JiBn
NCwKLSAgICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ0Pjo6aXRlcmF0b3ImIGN1
cnJlbnQ0KQotICAgICAgICA6IGJhc2VfKGJhc2UpLAotICAgICAgICAgIGJlZ2luMV8oZzEuYmVn
aW4oKSksIGVuZDFfKGcxLmVuZCgpKSwgY3VycmVudDFfKGN1cnJlbnQxKSwKLSAgICAgICAgICBi
ZWdpbjJfKGcyLmJlZ2luKCkpLCBlbmQyXyhnMi5lbmQoKSksIGN1cnJlbnQyXyhjdXJyZW50Miks
Ci0gICAgICAgICAgYmVnaW4zXyhnMy5iZWdpbigpKSwgZW5kM18oZzMuZW5kKCkpLCBjdXJyZW50
M18oY3VycmVudDMpLAotICAgICAgICAgIGJlZ2luNF8oZzQuYmVnaW4oKSksIGVuZDRfKGc0LmVu
ZCgpKSwgY3VycmVudDRfKGN1cnJlbnQ0KSAgICB7Ci0gICAgICBDb21wdXRlQ3VycmVudFZhbHVl
KCk7Ci0gICAgfQotICAgIHZpcnR1YWwgfkl0ZXJhdG9yKCkge30KLQotICAgIHZpcnR1YWwgY29u
c3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogQmFzZUdlbmVyYXRvcigpIGNv
bnN0IHsKLSAgICAgIHJldHVybiBiYXNlXzsKLSAgICB9Ci0gICAgLy8gQWR2YW5jZSBzaG91bGQg
bm90IGJlIGNhbGxlZCBvbiBiZXlvbmQtb2YtcmFuZ2UgaXRlcmF0b3JzCi0gICAgLy8gc28gbm8g
Y29tcG9uZW50IGl0ZXJhdG9ycyBtdXN0IGJlIGJleW9uZCBlbmQgb2YgcmFuZ2UsIGVpdGhlci4K
LSAgICB2aXJ0dWFsIHZvaWQgQWR2YW5jZSgpIHsKLSAgICAgIGFzc2VydCghQXRFbmQoKSk7Ci0g
ICAgICArK2N1cnJlbnQ0XzsKLSAgICAgIGlmIChjdXJyZW50NF8gPT0gZW5kNF8pIHsKLSAgICAg
ICAgY3VycmVudDRfID0gYmVnaW40XzsKLSAgICAgICAgKytjdXJyZW50M187Ci0gICAgICB9Ci0g
ICAgICBpZiAoY3VycmVudDNfID09IGVuZDNfKSB7Ci0gICAgICAgIGN1cnJlbnQzXyA9IGJlZ2lu
M187Ci0gICAgICAgICsrY3VycmVudDJfOwotICAgICAgfQotICAgICAgaWYgKGN1cnJlbnQyXyA9
PSBlbmQyXykgewotICAgICAgICBjdXJyZW50Ml8gPSBiZWdpbjJfOwotICAgICAgICArK2N1cnJl
bnQxXzsKLSAgICAgIH0KLSAgICAgIENvbXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0gICAg
dmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIENsb25lKCkgY29uc3Qg
ewotICAgICAgcmV0dXJuIG5ldyBJdGVyYXRvcigqdGhpcyk7Ci0gICAgfQotICAgIHZpcnR1YWwg
Y29uc3QgUGFyYW1UeXBlKiBDdXJyZW50KCkgY29uc3QgeyByZXR1cm4gY3VycmVudF92YWx1ZV8u
Z2V0KCk7IH0KLSAgICB2aXJ0dWFsIGJvb2wgRXF1YWxzKGNvbnN0IFBhcmFtSXRlcmF0b3JJbnRl
cmZhY2U8UGFyYW1UeXBlPiYgb3RoZXIpIGNvbnN0IHsKLSAgICAgIC8vIEhhdmluZyB0aGUgc2Ft
ZSBiYXNlIGdlbmVyYXRvciBndWFyYW50ZWVzIHRoYXQgdGhlIG90aGVyCi0gICAgICAvLyBpdGVy
YXRvciBpcyBvZiB0aGUgc2FtZSB0eXBlIGFuZCB3ZSBjYW4gZG93bmNhc3QuCi0gICAgICBHVEVT
VF9DSEVDS18oQmFzZUdlbmVyYXRvcigpID09IG90aGVyLkJhc2VHZW5lcmF0b3IoKSkKLSAgICAg
ICAgICA8PCAiVGhlIHByb2dyYW0gYXR0ZW1wdGVkIHRvIGNvbXBhcmUgaXRlcmF0b3JzICIKLSAg
ICAgICAgICA8PCAiZnJvbSBkaWZmZXJlbnQgZ2VuZXJhdG9ycy4iIDw8IHN0ZDo6ZW5kbDsKLSAg
ICAgIGNvbnN0IEl0ZXJhdG9yKiB0eXBlZF9vdGhlciA9Ci0gICAgICAgICAgQ2hlY2tlZERvd25j
YXN0VG9BY3R1YWxUeXBlPGNvbnN0IEl0ZXJhdG9yPigmb3RoZXIpOwotICAgICAgLy8gV2UgbXVz
dCByZXBvcnQgaXRlcmF0b3JzIGVxdWFsIGlmIHRoZXkgYm90aCBwb2ludCBiZXlvbmQgdGhlaXIK
LSAgICAgIC8vIHJlc3BlY3RpdmUgcmFuZ2VzLiBUaGF0IGNhbiBoYXBwZW4gaW4gYSB2YXJpZXR5
IG9mIGZhc2hpb25zLAotICAgICAgLy8gc28gd2UgaGF2ZSB0byBjb25zdWx0IEF0RW5kKCkuCi0g
ICAgICByZXR1cm4gKEF0RW5kKCkgJiYgdHlwZWRfb3RoZXItPkF0RW5kKCkpIHx8Ci0gICAgICAg
ICAoCi0gICAgICAgICAgY3VycmVudDFfID09IHR5cGVkX290aGVyLT5jdXJyZW50MV8gJiYKLSAg
ICAgICAgICBjdXJyZW50Ml8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQyXyAmJgotICAgICAgICAg
IGN1cnJlbnQzXyA9PSB0eXBlZF9vdGhlci0+Y3VycmVudDNfICYmCi0gICAgICAgICAgY3VycmVu
dDRfID09IHR5cGVkX290aGVyLT5jdXJyZW50NF8pOwotICAgIH0KLQotICAgcHJpdmF0ZToKLSAg
ICBJdGVyYXRvcihjb25zdCBJdGVyYXRvciYgb3RoZXIpCi0gICAgICAgIDogYmFzZV8ob3RoZXIu
YmFzZV8pLAotICAgICAgICBiZWdpbjFfKG90aGVyLmJlZ2luMV8pLAotICAgICAgICBlbmQxXyhv
dGhlci5lbmQxXyksCi0gICAgICAgIGN1cnJlbnQxXyhvdGhlci5jdXJyZW50MV8pLAotICAgICAg
ICBiZWdpbjJfKG90aGVyLmJlZ2luMl8pLAotICAgICAgICBlbmQyXyhvdGhlci5lbmQyXyksCi0g
ICAgICAgIGN1cnJlbnQyXyhvdGhlci5jdXJyZW50Ml8pLAotICAgICAgICBiZWdpbjNfKG90aGVy
LmJlZ2luM18pLAotICAgICAgICBlbmQzXyhvdGhlci5lbmQzXyksCi0gICAgICAgIGN1cnJlbnQz
XyhvdGhlci5jdXJyZW50M18pLAotICAgICAgICBiZWdpbjRfKG90aGVyLmJlZ2luNF8pLAotICAg
ICAgICBlbmQ0XyhvdGhlci5lbmQ0XyksCi0gICAgICAgIGN1cnJlbnQ0XyhvdGhlci5jdXJyZW50
NF8pIHsKLSAgICAgIENvbXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0KLSAgICB2b2lkIENv
bXB1dGVDdXJyZW50VmFsdWUoKSB7Ci0gICAgICBpZiAoIUF0RW5kKCkpCi0gICAgICAgIGN1cnJl
bnRfdmFsdWVfLnJlc2V0KG5ldyBQYXJhbVR5cGUoKmN1cnJlbnQxXywgKmN1cnJlbnQyXywgKmN1
cnJlbnQzXywKLSAgICAgICAgICAgICpjdXJyZW50NF8pKTsKLSAgICB9Ci0gICAgYm9vbCBBdEVu
ZCgpIGNvbnN0IHsKLSAgICAgIC8vIFdlIG11c3QgcmVwb3J0IGl0ZXJhdG9yIHBhc3QgdGhlIGVu
ZCBvZiB0aGUgcmFuZ2Ugd2hlbiBlaXRoZXIgb2YgdGhlCi0gICAgICAvLyBjb21wb25lbnQgaXRl
cmF0b3JzIGhhcyByZWFjaGVkIHRoZSBlbmQgb2YgaXRzIHJhbmdlLgotICAgICAgcmV0dXJuCi0g
ICAgICAgICAgY3VycmVudDFfID09IGVuZDFfIHx8Ci0gICAgICAgICAgY3VycmVudDJfID09IGVu
ZDJfIHx8Ci0gICAgICAgICAgY3VycmVudDNfID09IGVuZDNfIHx8Ci0gICAgICAgICAgY3VycmVu
dDRfID09IGVuZDRfOwotICAgIH0KLQotICAgIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdu
bWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgICB2b2lkIG9wZXJhdG9yPShjb25zdCBJdGVyYXRvciYg
b3RoZXIpOwotCi0gICAgY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiog
Y29uc3QgYmFzZV87Ci0gICAgLy8gYmVnaW5baV1fIGFuZCBlbmRbaV1fIGRlZmluZSB0aGUgaS10
aCByYW5nZSB0aGF0IEl0ZXJhdG9yIHRyYXZlcnNlcy4KLSAgICAvLyBjdXJyZW50W2ldXyBpcyB0
aGUgYWN0dWFsIHRyYXZlcnNpbmcgaXRlcmF0b3IuCi0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1H
ZW5lcmF0b3I8VDE+OjppdGVyYXRvciBiZWdpbjFfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFt
R2VuZXJhdG9yPFQxPjo6aXRlcmF0b3IgZW5kMV87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0
b3I8VDE+OjppdGVyYXRvciBjdXJyZW50MV87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5l
cmF0b3I8VDI+OjppdGVyYXRvciBiZWdpbjJfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2Vu
ZXJhdG9yPFQyPjo6aXRlcmF0b3IgZW5kMl87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8
VDI+OjppdGVyYXRvciBjdXJyZW50Ml87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0
b3I8VDM+OjppdGVyYXRvciBiZWdpbjNfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJh
dG9yPFQzPjo6aXRlcmF0b3IgZW5kM187Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDM+
OjppdGVyYXRvciBjdXJyZW50M187Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8
VDQ+OjppdGVyYXRvciBiZWdpbjRfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9y
PFQ0Pjo6aXRlcmF0b3IgZW5kNF87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDQ+Ojpp
dGVyYXRvciBjdXJyZW50NF87Ci0gICAgbGlua2VkX3B0cjxQYXJhbVR5cGU+IGN1cnJlbnRfdmFs
dWVfOwotICB9OyAgLy8gY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjQ6Okl0ZXJhdG9y
Ci0KLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgot
ICB2b2lkIG9wZXJhdG9yPShjb25zdCBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNCYgb3RoZXIp
OwotCi0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQxPiBnMV87Ci0gIGNvbnN0IFBhcmFtR2VuZXJh
dG9yPFQyPiBnMl87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQzPiBnM187Ci0gIGNvbnN0IFBh
cmFtR2VuZXJhdG9yPFQ0PiBnNF87Ci19OyAgLy8gY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVy
YXRvcjQKLQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBU
MywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1PgotY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVy
YXRvcjUKLSAgICA6IHB1YmxpYyBQYXJhbUdlbmVyYXRvckludGVyZmFjZTwgOjp0ZXN0aW5nOjp0
dXBsZTxUMSwgVDIsIFQzLCBUNCwgVDU+ID4gewotIHB1YmxpYzoKLSAgdHlwZWRlZiA6OnRlc3Rp
bmc6OnR1cGxlPFQxLCBUMiwgVDMsIFQ0LCBUNT4gUGFyYW1UeXBlOwotCi0gIENhcnRlc2lhblBy
b2R1Y3RHZW5lcmF0b3I1KGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQxPiYgZzEsCi0gICAgICBjb25z
dCBQYXJhbUdlbmVyYXRvcjxUMj4mIGcyLCBjb25zdCBQYXJhbUdlbmVyYXRvcjxUMz4mIGczLAot
ICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDQ+JiBnNCwgY29uc3QgUGFyYW1HZW5lcmF0b3I8
VDU+JiBnNSkKLSAgICAgIDogZzFfKGcxKSwgZzJfKGcyKSwgZzNfKGczKSwgZzRfKGc0KSwgZzVf
KGc1KSB7fQotICB2aXJ0dWFsIH5DYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNSgpIHt9Ci0KLSAg
dmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIEJlZ2luKCkgY29uc3Qg
ewotICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhpcywgZzFfLCBnMV8uYmVnaW4oKSwgZzJfLCBn
Ml8uYmVnaW4oKSwgZzNfLAotICAgICAgICBnM18uYmVnaW4oKSwgZzRfLCBnNF8uYmVnaW4oKSwg
ZzVfLCBnNV8uYmVnaW4oKSk7Ci0gIH0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNl
PFBhcmFtVHlwZT4qIEVuZCgpIGNvbnN0IHsKLSAgICByZXR1cm4gbmV3IEl0ZXJhdG9yKHRoaXMs
IGcxXywgZzFfLmVuZCgpLCBnMl8sIGcyXy5lbmQoKSwgZzNfLCBnM18uZW5kKCksCi0gICAgICAg
IGc0XywgZzRfLmVuZCgpLCBnNV8sIGc1Xy5lbmQoKSk7Ci0gIH0KLQotIHByaXZhdGU6Ci0gIGNs
YXNzIEl0ZXJhdG9yIDogcHVibGljIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiB7
Ci0gICBwdWJsaWM6Ci0gICAgSXRlcmF0b3IoY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8
UGFyYW1UeXBlPiogYmFzZSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQxPiYgZzEsCi0g
ICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMT46Oml0ZXJhdG9yJiBjdXJyZW50
MSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQyPiYgZzIsCi0gICAgICBjb25zdCB0eXBl
bmFtZSBQYXJhbUdlbmVyYXRvcjxUMj46Oml0ZXJhdG9yJiBjdXJyZW50MiwKLSAgICAgIGNvbnN0
IFBhcmFtR2VuZXJhdG9yPFQzPiYgZzMsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVy
YXRvcjxUMz46Oml0ZXJhdG9yJiBjdXJyZW50MywKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9y
PFQ0PiYgZzQsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUND46Oml0ZXJh
dG9yJiBjdXJyZW50NCwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ1PiYgZzUsCi0gICAg
ICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNT46Oml0ZXJhdG9yJiBjdXJyZW50NSkK
LSAgICAgICAgOiBiYXNlXyhiYXNlKSwKLSAgICAgICAgICBiZWdpbjFfKGcxLmJlZ2luKCkpLCBl
bmQxXyhnMS5lbmQoKSksIGN1cnJlbnQxXyhjdXJyZW50MSksCi0gICAgICAgICAgYmVnaW4yXyhn
Mi5iZWdpbigpKSwgZW5kMl8oZzIuZW5kKCkpLCBjdXJyZW50Ml8oY3VycmVudDIpLAotICAgICAg
ICAgIGJlZ2luM18oZzMuYmVnaW4oKSksIGVuZDNfKGczLmVuZCgpKSwgY3VycmVudDNfKGN1cnJl
bnQzKSwKLSAgICAgICAgICBiZWdpbjRfKGc0LmJlZ2luKCkpLCBlbmQ0XyhnNC5lbmQoKSksIGN1
cnJlbnQ0XyhjdXJyZW50NCksCi0gICAgICAgICAgYmVnaW41XyhnNS5iZWdpbigpKSwgZW5kNV8o
ZzUuZW5kKCkpLCBjdXJyZW50NV8oY3VycmVudDUpICAgIHsKLSAgICAgIENvbXB1dGVDdXJyZW50
VmFsdWUoKTsKLSAgICB9Ci0gICAgdmlydHVhbCB+SXRlcmF0b3IoKSB7fQotCi0gICAgdmlydHVh
bCBjb25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+KiBCYXNlR2VuZXJhdG9y
KCkgY29uc3QgewotICAgICAgcmV0dXJuIGJhc2VfOwotICAgIH0KLSAgICAvLyBBZHZhbmNlIHNo
b3VsZCBub3QgYmUgY2FsbGVkIG9uIGJleW9uZC1vZi1yYW5nZSBpdGVyYXRvcnMKLSAgICAvLyBz
byBubyBjb21wb25lbnQgaXRlcmF0b3JzIG11c3QgYmUgYmV5b25kIGVuZCBvZiByYW5nZSwgZWl0
aGVyLgotICAgIHZpcnR1YWwgdm9pZCBBZHZhbmNlKCkgewotICAgICAgYXNzZXJ0KCFBdEVuZCgp
KTsKLSAgICAgICsrY3VycmVudDVfOwotICAgICAgaWYgKGN1cnJlbnQ1XyA9PSBlbmQ1Xykgewot
ICAgICAgICBjdXJyZW50NV8gPSBiZWdpbjVfOwotICAgICAgICArK2N1cnJlbnQ0XzsKLSAgICAg
IH0KLSAgICAgIGlmIChjdXJyZW50NF8gPT0gZW5kNF8pIHsKLSAgICAgICAgY3VycmVudDRfID0g
YmVnaW40XzsKLSAgICAgICAgKytjdXJyZW50M187Ci0gICAgICB9Ci0gICAgICBpZiAoY3VycmVu
dDNfID09IGVuZDNfKSB7Ci0gICAgICAgIGN1cnJlbnQzXyA9IGJlZ2luM187Ci0gICAgICAgICsr
Y3VycmVudDJfOwotICAgICAgfQotICAgICAgaWYgKGN1cnJlbnQyXyA9PSBlbmQyXykgewotICAg
ICAgICBjdXJyZW50Ml8gPSBiZWdpbjJfOwotICAgICAgICArK2N1cnJlbnQxXzsKLSAgICAgIH0K
LSAgICAgIENvbXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0gICAgdmlydHVhbCBQYXJhbUl0
ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIENsb25lKCkgY29uc3QgewotICAgICAgcmV0dXJu
IG5ldyBJdGVyYXRvcigqdGhpcyk7Ci0gICAgfQotICAgIHZpcnR1YWwgY29uc3QgUGFyYW1UeXBl
KiBDdXJyZW50KCkgY29uc3QgeyByZXR1cm4gY3VycmVudF92YWx1ZV8uZ2V0KCk7IH0KLSAgICB2
aXJ0dWFsIGJvb2wgRXF1YWxzKGNvbnN0IFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBl
PiYgb3RoZXIpIGNvbnN0IHsKLSAgICAgIC8vIEhhdmluZyB0aGUgc2FtZSBiYXNlIGdlbmVyYXRv
ciBndWFyYW50ZWVzIHRoYXQgdGhlIG90aGVyCi0gICAgICAvLyBpdGVyYXRvciBpcyBvZiB0aGUg
c2FtZSB0eXBlIGFuZCB3ZSBjYW4gZG93bmNhc3QuCi0gICAgICBHVEVTVF9DSEVDS18oQmFzZUdl
bmVyYXRvcigpID09IG90aGVyLkJhc2VHZW5lcmF0b3IoKSkKLSAgICAgICAgICA8PCAiVGhlIHBy
b2dyYW0gYXR0ZW1wdGVkIHRvIGNvbXBhcmUgaXRlcmF0b3JzICIKLSAgICAgICAgICA8PCAiZnJv
bSBkaWZmZXJlbnQgZ2VuZXJhdG9ycy4iIDw8IHN0ZDo6ZW5kbDsKLSAgICAgIGNvbnN0IEl0ZXJh
dG9yKiB0eXBlZF9vdGhlciA9Ci0gICAgICAgICAgQ2hlY2tlZERvd25jYXN0VG9BY3R1YWxUeXBl
PGNvbnN0IEl0ZXJhdG9yPigmb3RoZXIpOwotICAgICAgLy8gV2UgbXVzdCByZXBvcnQgaXRlcmF0
b3JzIGVxdWFsIGlmIHRoZXkgYm90aCBwb2ludCBiZXlvbmQgdGhlaXIKLSAgICAgIC8vIHJlc3Bl
Y3RpdmUgcmFuZ2VzLiBUaGF0IGNhbiBoYXBwZW4gaW4gYSB2YXJpZXR5IG9mIGZhc2hpb25zLAot
ICAgICAgLy8gc28gd2UgaGF2ZSB0byBjb25zdWx0IEF0RW5kKCkuCi0gICAgICByZXR1cm4gKEF0
RW5kKCkgJiYgdHlwZWRfb3RoZXItPkF0RW5kKCkpIHx8Ci0gICAgICAgICAoCi0gICAgICAgICAg
Y3VycmVudDFfID09IHR5cGVkX290aGVyLT5jdXJyZW50MV8gJiYKLSAgICAgICAgICBjdXJyZW50
Ml8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQyXyAmJgotICAgICAgICAgIGN1cnJlbnQzXyA9PSB0
eXBlZF9vdGhlci0+Y3VycmVudDNfICYmCi0gICAgICAgICAgY3VycmVudDRfID09IHR5cGVkX290
aGVyLT5jdXJyZW50NF8gJiYKLSAgICAgICAgICBjdXJyZW50NV8gPT0gdHlwZWRfb3RoZXItPmN1
cnJlbnQ1Xyk7Ci0gICAgfQotCi0gICBwcml2YXRlOgotICAgIEl0ZXJhdG9yKGNvbnN0IEl0ZXJh
dG9yJiBvdGhlcikKLSAgICAgICAgOiBiYXNlXyhvdGhlci5iYXNlXyksCi0gICAgICAgIGJlZ2lu
MV8ob3RoZXIuYmVnaW4xXyksCi0gICAgICAgIGVuZDFfKG90aGVyLmVuZDFfKSwKLSAgICAgICAg
Y3VycmVudDFfKG90aGVyLmN1cnJlbnQxXyksCi0gICAgICAgIGJlZ2luMl8ob3RoZXIuYmVnaW4y
XyksCi0gICAgICAgIGVuZDJfKG90aGVyLmVuZDJfKSwKLSAgICAgICAgY3VycmVudDJfKG90aGVy
LmN1cnJlbnQyXyksCi0gICAgICAgIGJlZ2luM18ob3RoZXIuYmVnaW4zXyksCi0gICAgICAgIGVu
ZDNfKG90aGVyLmVuZDNfKSwKLSAgICAgICAgY3VycmVudDNfKG90aGVyLmN1cnJlbnQzXyksCi0g
ICAgICAgIGJlZ2luNF8ob3RoZXIuYmVnaW40XyksCi0gICAgICAgIGVuZDRfKG90aGVyLmVuZDRf
KSwKLSAgICAgICAgY3VycmVudDRfKG90aGVyLmN1cnJlbnQ0XyksCi0gICAgICAgIGJlZ2luNV8o
b3RoZXIuYmVnaW41XyksCi0gICAgICAgIGVuZDVfKG90aGVyLmVuZDVfKSwKLSAgICAgICAgY3Vy
cmVudDVfKG90aGVyLmN1cnJlbnQ1XykgewotICAgICAgQ29tcHV0ZUN1cnJlbnRWYWx1ZSgpOwot
ICAgIH0KLQotICAgIHZvaWQgQ29tcHV0ZUN1cnJlbnRWYWx1ZSgpIHsKLSAgICAgIGlmICghQXRF
bmQoKSkKLSAgICAgICAgY3VycmVudF92YWx1ZV8ucmVzZXQobmV3IFBhcmFtVHlwZSgqY3VycmVu
dDFfLCAqY3VycmVudDJfLCAqY3VycmVudDNfLAotICAgICAgICAgICAgKmN1cnJlbnQ0XywgKmN1
cnJlbnQ1XykpOwotICAgIH0KLSAgICBib29sIEF0RW5kKCkgY29uc3QgewotICAgICAgLy8gV2Ug
bXVzdCByZXBvcnQgaXRlcmF0b3IgcGFzdCB0aGUgZW5kIG9mIHRoZSByYW5nZSB3aGVuIGVpdGhl
ciBvZiB0aGUKLSAgICAgIC8vIGNvbXBvbmVudCBpdGVyYXRvcnMgaGFzIHJlYWNoZWQgdGhlIGVu
ZCBvZiBpdHMgcmFuZ2UuCi0gICAgICByZXR1cm4KLSAgICAgICAgICBjdXJyZW50MV8gPT0gZW5k
MV8gfHwKLSAgICAgICAgICBjdXJyZW50Ml8gPT0gZW5kMl8gfHwKLSAgICAgICAgICBjdXJyZW50
M18gPT0gZW5kM18gfHwKLSAgICAgICAgICBjdXJyZW50NF8gPT0gZW5kNF8gfHwKLSAgICAgICAg
ICBjdXJyZW50NV8gPT0gZW5kNV87Ci0gICAgfQotCi0gICAgLy8gTm8gaW1wbGVtZW50YXRpb24g
LSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICAgIHZvaWQgb3BlcmF0b3I9KGNvbnN0IEl0
ZXJhdG9yJiBvdGhlcik7Ci0KLSAgICBjb25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxQYXJh
bVR5cGU+KiBjb25zdCBiYXNlXzsKLSAgICAvLyBiZWdpbltpXV8gYW5kIGVuZFtpXV8gZGVmaW5l
IHRoZSBpLXRoIHJhbmdlIHRoYXQgSXRlcmF0b3IgdHJhdmVyc2VzLgotICAgIC8vIGN1cnJlbnRb
aV1fIGlzIHRoZSBhY3R1YWwgdHJhdmVyc2luZyBpdGVyYXRvci4KLSAgICBjb25zdCB0eXBlbmFt
ZSBQYXJhbUdlbmVyYXRvcjxUMT46Oml0ZXJhdG9yIGJlZ2luMV87Ci0gICAgY29uc3QgdHlwZW5h
bWUgUGFyYW1HZW5lcmF0b3I8VDE+OjppdGVyYXRvciBlbmQxXzsKLSAgICB0eXBlbmFtZSBQYXJh
bUdlbmVyYXRvcjxUMT46Oml0ZXJhdG9yIGN1cnJlbnQxXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQ
YXJhbUdlbmVyYXRvcjxUMj46Oml0ZXJhdG9yIGJlZ2luMl87Ci0gICAgY29uc3QgdHlwZW5hbWUg
UGFyYW1HZW5lcmF0b3I8VDI+OjppdGVyYXRvciBlbmQyXzsKLSAgICB0eXBlbmFtZSBQYXJhbUdl
bmVyYXRvcjxUMj46Oml0ZXJhdG9yIGN1cnJlbnQyXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJh
bUdlbmVyYXRvcjxUMz46Oml0ZXJhdG9yIGJlZ2luM187Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFy
YW1HZW5lcmF0b3I8VDM+OjppdGVyYXRvciBlbmQzXzsKLSAgICB0eXBlbmFtZSBQYXJhbUdlbmVy
YXRvcjxUMz46Oml0ZXJhdG9yIGN1cnJlbnQzXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdl
bmVyYXRvcjxUND46Oml0ZXJhdG9yIGJlZ2luNF87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1H
ZW5lcmF0b3I8VDQ+OjppdGVyYXRvciBlbmQ0XzsKLSAgICB0eXBlbmFtZSBQYXJhbUdlbmVyYXRv
cjxUND46Oml0ZXJhdG9yIGN1cnJlbnQ0XzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVy
YXRvcjxUNT46Oml0ZXJhdG9yIGJlZ2luNV87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5l
cmF0b3I8VDU+OjppdGVyYXRvciBlbmQ1XzsKLSAgICB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxU
NT46Oml0ZXJhdG9yIGN1cnJlbnQ1XzsKLSAgICBsaW5rZWRfcHRyPFBhcmFtVHlwZT4gY3VycmVu
dF92YWx1ZV87Ci0gIH07ICAvLyBjbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNTo6SXRl
cmF0b3IKLQotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0
ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IENhcnRlc2lhblByb2R1Y3RHZW5lcmF0b3I1JiBv
dGhlcik7Ci0KLSAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDE+IGcxXzsKLSAgY29uc3QgUGFyYW1H
ZW5lcmF0b3I8VDI+IGcyXzsKLSAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDM+IGczXzsKLSAgY29u
c3QgUGFyYW1HZW5lcmF0b3I8VDQ+IGc0XzsKLSAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDU+IGc1
XzsKLX07ICAvLyBjbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNQotCi0KLXRlbXBsYXRl
IDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlw
ZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDY+Ci1jbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJh
dG9yNgotICAgIDogcHVibGljIFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPCA6OnRlc3Rpbmc6OnR1
cGxlPFQxLCBUMiwgVDMsIFQ0LCBUNSwKLSAgICAgICAgVDY+ID4gewotIHB1YmxpYzoKLSAgdHlw
ZWRlZiA6OnRlc3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDY+IFBhcmFtVHlwZTsK
LQotICBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNihjb25zdCBQYXJhbUdlbmVyYXRvcjxUMT4m
IGcxLAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDI+JiBnMiwgY29uc3QgUGFyYW1HZW5l
cmF0b3I8VDM+JiBnMywKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ0PiYgZzQsIGNvbnN0
IFBhcmFtR2VuZXJhdG9yPFQ1PiYgZzUsCi0gICAgICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUNj4m
IGc2KQotICAgICAgOiBnMV8oZzEpLCBnMl8oZzIpLCBnM18oZzMpLCBnNF8oZzQpLCBnNV8oZzUp
LCBnNl8oZzYpIHt9Ci0gIHZpcnR1YWwgfkNhcnRlc2lhblByb2R1Y3RHZW5lcmF0b3I2KCkge30K
LQotICB2aXJ0dWFsIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogQmVnaW4oKSBj
b25zdCB7Ci0gICAgcmV0dXJuIG5ldyBJdGVyYXRvcih0aGlzLCBnMV8sIGcxXy5iZWdpbigpLCBn
Ml8sIGcyXy5iZWdpbigpLCBnM18sCi0gICAgICAgIGczXy5iZWdpbigpLCBnNF8sIGc0Xy5iZWdp
bigpLCBnNV8sIGc1Xy5iZWdpbigpLCBnNl8sIGc2Xy5iZWdpbigpKTsKLSAgfQotICB2aXJ0dWFs
IFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogRW5kKCkgY29uc3QgewotICAgIHJl
dHVybiBuZXcgSXRlcmF0b3IodGhpcywgZzFfLCBnMV8uZW5kKCksIGcyXywgZzJfLmVuZCgpLCBn
M18sIGczXy5lbmQoKSwKLSAgICAgICAgZzRfLCBnNF8uZW5kKCksIGc1XywgZzVfLmVuZCgpLCBn
Nl8sIGc2Xy5lbmQoKSk7Ci0gIH0KLQotIHByaXZhdGU6Ci0gIGNsYXNzIEl0ZXJhdG9yIDogcHVi
bGljIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiB7Ci0gICBwdWJsaWM6Ci0gICAg
SXRlcmF0b3IoY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogYmFzZSwK
LSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQxPiYgZzEsCi0gICAgICBjb25zdCB0eXBlbmFt
ZSBQYXJhbUdlbmVyYXRvcjxUMT46Oml0ZXJhdG9yJiBjdXJyZW50MSwKLSAgICAgIGNvbnN0IFBh
cmFtR2VuZXJhdG9yPFQyPiYgZzIsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRv
cjxUMj46Oml0ZXJhdG9yJiBjdXJyZW50MiwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQz
PiYgZzMsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMz46Oml0ZXJhdG9y
JiBjdXJyZW50MywKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ0PiYgZzQsCi0gICAgICBj
b25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUND46Oml0ZXJhdG9yJiBjdXJyZW50NCwKLSAg
ICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ1PiYgZzUsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQ
YXJhbUdlbmVyYXRvcjxUNT46Oml0ZXJhdG9yJiBjdXJyZW50NSwKLSAgICAgIGNvbnN0IFBhcmFt
R2VuZXJhdG9yPFQ2PiYgZzYsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxU
Nj46Oml0ZXJhdG9yJiBjdXJyZW50NikKLSAgICAgICAgOiBiYXNlXyhiYXNlKSwKLSAgICAgICAg
ICBiZWdpbjFfKGcxLmJlZ2luKCkpLCBlbmQxXyhnMS5lbmQoKSksIGN1cnJlbnQxXyhjdXJyZW50
MSksCi0gICAgICAgICAgYmVnaW4yXyhnMi5iZWdpbigpKSwgZW5kMl8oZzIuZW5kKCkpLCBjdXJy
ZW50Ml8oY3VycmVudDIpLAotICAgICAgICAgIGJlZ2luM18oZzMuYmVnaW4oKSksIGVuZDNfKGcz
LmVuZCgpKSwgY3VycmVudDNfKGN1cnJlbnQzKSwKLSAgICAgICAgICBiZWdpbjRfKGc0LmJlZ2lu
KCkpLCBlbmQ0XyhnNC5lbmQoKSksIGN1cnJlbnQ0XyhjdXJyZW50NCksCi0gICAgICAgICAgYmVn
aW41XyhnNS5iZWdpbigpKSwgZW5kNV8oZzUuZW5kKCkpLCBjdXJyZW50NV8oY3VycmVudDUpLAot
ICAgICAgICAgIGJlZ2luNl8oZzYuYmVnaW4oKSksIGVuZDZfKGc2LmVuZCgpKSwgY3VycmVudDZf
KGN1cnJlbnQ2KSAgICB7Ci0gICAgICBDb21wdXRlQ3VycmVudFZhbHVlKCk7Ci0gICAgfQotICAg
IHZpcnR1YWwgfkl0ZXJhdG9yKCkge30KLQotICAgIHZpcnR1YWwgY29uc3QgUGFyYW1HZW5lcmF0
b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogQmFzZUdlbmVyYXRvcigpIGNvbnN0IHsKLSAgICAgIHJl
dHVybiBiYXNlXzsKLSAgICB9Ci0gICAgLy8gQWR2YW5jZSBzaG91bGQgbm90IGJlIGNhbGxlZCBv
biBiZXlvbmQtb2YtcmFuZ2UgaXRlcmF0b3JzCi0gICAgLy8gc28gbm8gY29tcG9uZW50IGl0ZXJh
dG9ycyBtdXN0IGJlIGJleW9uZCBlbmQgb2YgcmFuZ2UsIGVpdGhlci4KLSAgICB2aXJ0dWFsIHZv
aWQgQWR2YW5jZSgpIHsKLSAgICAgIGFzc2VydCghQXRFbmQoKSk7Ci0gICAgICArK2N1cnJlbnQ2
XzsKLSAgICAgIGlmIChjdXJyZW50Nl8gPT0gZW5kNl8pIHsKLSAgICAgICAgY3VycmVudDZfID0g
YmVnaW42XzsKLSAgICAgICAgKytjdXJyZW50NV87Ci0gICAgICB9Ci0gICAgICBpZiAoY3VycmVu
dDVfID09IGVuZDVfKSB7Ci0gICAgICAgIGN1cnJlbnQ1XyA9IGJlZ2luNV87Ci0gICAgICAgICsr
Y3VycmVudDRfOwotICAgICAgfQotICAgICAgaWYgKGN1cnJlbnQ0XyA9PSBlbmQ0XykgewotICAg
ICAgICBjdXJyZW50NF8gPSBiZWdpbjRfOwotICAgICAgICArK2N1cnJlbnQzXzsKLSAgICAgIH0K
LSAgICAgIGlmIChjdXJyZW50M18gPT0gZW5kM18pIHsKLSAgICAgICAgY3VycmVudDNfID0gYmVn
aW4zXzsKLSAgICAgICAgKytjdXJyZW50Ml87Ci0gICAgICB9Ci0gICAgICBpZiAoY3VycmVudDJf
ID09IGVuZDJfKSB7Ci0gICAgICAgIGN1cnJlbnQyXyA9IGJlZ2luMl87Ci0gICAgICAgICsrY3Vy
cmVudDFfOwotICAgICAgfQotICAgICAgQ29tcHV0ZUN1cnJlbnRWYWx1ZSgpOwotICAgIH0KLSAg
ICB2aXJ0dWFsIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogQ2xvbmUoKSBjb25z
dCB7Ci0gICAgICByZXR1cm4gbmV3IEl0ZXJhdG9yKCp0aGlzKTsKLSAgICB9Ci0gICAgdmlydHVh
bCBjb25zdCBQYXJhbVR5cGUqIEN1cnJlbnQoKSBjb25zdCB7IHJldHVybiBjdXJyZW50X3ZhbHVl
Xy5nZXQoKTsgfQotICAgIHZpcnR1YWwgYm9vbCBFcXVhbHMoY29uc3QgUGFyYW1JdGVyYXRvcklu
dGVyZmFjZTxQYXJhbVR5cGU+JiBvdGhlcikgY29uc3QgewotICAgICAgLy8gSGF2aW5nIHRoZSBz
YW1lIGJhc2UgZ2VuZXJhdG9yIGd1YXJhbnRlZXMgdGhhdCB0aGUgb3RoZXIKLSAgICAgIC8vIGl0
ZXJhdG9yIGlzIG9mIHRoZSBzYW1lIHR5cGUgYW5kIHdlIGNhbiBkb3duY2FzdC4KLSAgICAgIEdU
RVNUX0NIRUNLXyhCYXNlR2VuZXJhdG9yKCkgPT0gb3RoZXIuQmFzZUdlbmVyYXRvcigpKQotICAg
ICAgICAgIDw8ICJUaGUgcHJvZ3JhbSBhdHRlbXB0ZWQgdG8gY29tcGFyZSBpdGVyYXRvcnMgIgot
ICAgICAgICAgIDw8ICJmcm9tIGRpZmZlcmVudCBnZW5lcmF0b3JzLiIgPDwgc3RkOjplbmRsOwot
ICAgICAgY29uc3QgSXRlcmF0b3IqIHR5cGVkX290aGVyID0KLSAgICAgICAgICBDaGVja2VkRG93
bmNhc3RUb0FjdHVhbFR5cGU8Y29uc3QgSXRlcmF0b3I+KCZvdGhlcik7Ci0gICAgICAvLyBXZSBt
dXN0IHJlcG9ydCBpdGVyYXRvcnMgZXF1YWwgaWYgdGhleSBib3RoIHBvaW50IGJleW9uZCB0aGVp
cgotICAgICAgLy8gcmVzcGVjdGl2ZSByYW5nZXMuIFRoYXQgY2FuIGhhcHBlbiBpbiBhIHZhcmll
dHkgb2YgZmFzaGlvbnMsCi0gICAgICAvLyBzbyB3ZSBoYXZlIHRvIGNvbnN1bHQgQXRFbmQoKS4K
LSAgICAgIHJldHVybiAoQXRFbmQoKSAmJiB0eXBlZF9vdGhlci0+QXRFbmQoKSkgfHwKLSAgICAg
ICAgICgKLSAgICAgICAgICBjdXJyZW50MV8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQxXyAmJgot
ICAgICAgICAgIGN1cnJlbnQyXyA9PSB0eXBlZF9vdGhlci0+Y3VycmVudDJfICYmCi0gICAgICAg
ICAgY3VycmVudDNfID09IHR5cGVkX290aGVyLT5jdXJyZW50M18gJiYKLSAgICAgICAgICBjdXJy
ZW50NF8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQ0XyAmJgotICAgICAgICAgIGN1cnJlbnQ1XyA9
PSB0eXBlZF9vdGhlci0+Y3VycmVudDVfICYmCi0gICAgICAgICAgY3VycmVudDZfID09IHR5cGVk
X290aGVyLT5jdXJyZW50Nl8pOwotICAgIH0KLQotICAgcHJpdmF0ZToKLSAgICBJdGVyYXRvcihj
b25zdCBJdGVyYXRvciYgb3RoZXIpCi0gICAgICAgIDogYmFzZV8ob3RoZXIuYmFzZV8pLAotICAg
ICAgICBiZWdpbjFfKG90aGVyLmJlZ2luMV8pLAotICAgICAgICBlbmQxXyhvdGhlci5lbmQxXyks
Ci0gICAgICAgIGN1cnJlbnQxXyhvdGhlci5jdXJyZW50MV8pLAotICAgICAgICBiZWdpbjJfKG90
aGVyLmJlZ2luMl8pLAotICAgICAgICBlbmQyXyhvdGhlci5lbmQyXyksCi0gICAgICAgIGN1cnJl
bnQyXyhvdGhlci5jdXJyZW50Ml8pLAotICAgICAgICBiZWdpbjNfKG90aGVyLmJlZ2luM18pLAot
ICAgICAgICBlbmQzXyhvdGhlci5lbmQzXyksCi0gICAgICAgIGN1cnJlbnQzXyhvdGhlci5jdXJy
ZW50M18pLAotICAgICAgICBiZWdpbjRfKG90aGVyLmJlZ2luNF8pLAotICAgICAgICBlbmQ0Xyhv
dGhlci5lbmQ0XyksCi0gICAgICAgIGN1cnJlbnQ0XyhvdGhlci5jdXJyZW50NF8pLAotICAgICAg
ICBiZWdpbjVfKG90aGVyLmJlZ2luNV8pLAotICAgICAgICBlbmQ1XyhvdGhlci5lbmQ1XyksCi0g
ICAgICAgIGN1cnJlbnQ1XyhvdGhlci5jdXJyZW50NV8pLAotICAgICAgICBiZWdpbjZfKG90aGVy
LmJlZ2luNl8pLAotICAgICAgICBlbmQ2XyhvdGhlci5lbmQ2XyksCi0gICAgICAgIGN1cnJlbnQ2
XyhvdGhlci5jdXJyZW50Nl8pIHsKLSAgICAgIENvbXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9
Ci0KLSAgICB2b2lkIENvbXB1dGVDdXJyZW50VmFsdWUoKSB7Ci0gICAgICBpZiAoIUF0RW5kKCkp
Ci0gICAgICAgIGN1cnJlbnRfdmFsdWVfLnJlc2V0KG5ldyBQYXJhbVR5cGUoKmN1cnJlbnQxXywg
KmN1cnJlbnQyXywgKmN1cnJlbnQzXywKLSAgICAgICAgICAgICpjdXJyZW50NF8sICpjdXJyZW50
NV8sICpjdXJyZW50Nl8pKTsKLSAgICB9Ci0gICAgYm9vbCBBdEVuZCgpIGNvbnN0IHsKLSAgICAg
IC8vIFdlIG11c3QgcmVwb3J0IGl0ZXJhdG9yIHBhc3QgdGhlIGVuZCBvZiB0aGUgcmFuZ2Ugd2hl
biBlaXRoZXIgb2YgdGhlCi0gICAgICAvLyBjb21wb25lbnQgaXRlcmF0b3JzIGhhcyByZWFjaGVk
IHRoZSBlbmQgb2YgaXRzIHJhbmdlLgotICAgICAgcmV0dXJuCi0gICAgICAgICAgY3VycmVudDFf
ID09IGVuZDFfIHx8Ci0gICAgICAgICAgY3VycmVudDJfID09IGVuZDJfIHx8Ci0gICAgICAgICAg
Y3VycmVudDNfID09IGVuZDNfIHx8Ci0gICAgICAgICAgY3VycmVudDRfID09IGVuZDRfIHx8Ci0g
ICAgICAgICAgY3VycmVudDVfID09IGVuZDVfIHx8Ci0gICAgICAgICAgY3VycmVudDZfID09IGVu
ZDZfOwotICAgIH0KLQotICAgIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1
bnN1cHBvcnRlZC4KLSAgICB2b2lkIG9wZXJhdG9yPShjb25zdCBJdGVyYXRvciYgb3RoZXIpOwot
Ci0gICAgY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogY29uc3QgYmFz
ZV87Ci0gICAgLy8gYmVnaW5baV1fIGFuZCBlbmRbaV1fIGRlZmluZSB0aGUgaS10aCByYW5nZSB0
aGF0IEl0ZXJhdG9yIHRyYXZlcnNlcy4KLSAgICAvLyBjdXJyZW50W2ldXyBpcyB0aGUgYWN0dWFs
IHRyYXZlcnNpbmcgaXRlcmF0b3IuCi0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8
VDE+OjppdGVyYXRvciBiZWdpbjFfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9y
PFQxPjo6aXRlcmF0b3IgZW5kMV87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDE+Ojpp
dGVyYXRvciBjdXJyZW50MV87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDI+
OjppdGVyYXRvciBiZWdpbjJfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQy
Pjo6aXRlcmF0b3IgZW5kMl87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDI+OjppdGVy
YXRvciBjdXJyZW50Ml87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDM+Ojpp
dGVyYXRvciBiZWdpbjNfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQzPjo6
aXRlcmF0b3IgZW5kM187Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDM+OjppdGVyYXRv
ciBjdXJyZW50M187Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDQ+OjppdGVy
YXRvciBiZWdpbjRfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ0Pjo6aXRl
cmF0b3IgZW5kNF87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDQ+OjppdGVyYXRvciBj
dXJyZW50NF87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDU+OjppdGVyYXRv
ciBiZWdpbjVfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ1Pjo6aXRlcmF0
b3IgZW5kNV87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDU+OjppdGVyYXRvciBjdXJy
ZW50NV87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDY+OjppdGVyYXRvciBi
ZWdpbjZfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ2Pjo6aXRlcmF0b3Ig
ZW5kNl87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDY+OjppdGVyYXRvciBjdXJyZW50
Nl87Ci0gICAgbGlua2VkX3B0cjxQYXJhbVR5cGU+IGN1cnJlbnRfdmFsdWVfOwotICB9OyAgLy8g
Y2xhc3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjY6Okl0ZXJhdG9yCi0KLSAgLy8gTm8gaW1w
bGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9y
PShjb25zdCBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNiYgb3RoZXIpOwotCi0gIGNvbnN0IFBh
cmFtR2VuZXJhdG9yPFQxPiBnMV87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQyPiBnMl87Ci0g
IGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQzPiBnM187Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ0
PiBnNF87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ1PiBnNV87Ci0gIGNvbnN0IFBhcmFtR2Vu
ZXJhdG9yPFQ2PiBnNl87Ci19OyAgLy8gY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjYK
LQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlw
ZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNz4KLWNs
YXNzIENhcnRlc2lhblByb2R1Y3RHZW5lcmF0b3I3Ci0gICAgOiBwdWJsaWMgUGFyYW1HZW5lcmF0
b3JJbnRlcmZhY2U8IDo6dGVzdGluZzo6dHVwbGU8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwKLSAg
ICAgICAgVDc+ID4gewotIHB1YmxpYzoKLSAgdHlwZWRlZiA6OnRlc3Rpbmc6OnR1cGxlPFQxLCBU
MiwgVDMsIFQ0LCBUNSwgVDYsIFQ3PiBQYXJhbVR5cGU7Ci0KLSAgQ2FydGVzaWFuUHJvZHVjdEdl
bmVyYXRvcjcoY29uc3QgUGFyYW1HZW5lcmF0b3I8VDE+JiBnMSwKLSAgICAgIGNvbnN0IFBhcmFt
R2VuZXJhdG9yPFQyPiYgZzIsIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQzPiYgZzMsCi0gICAgICBj
b25zdCBQYXJhbUdlbmVyYXRvcjxUND4mIGc0LCBjb25zdCBQYXJhbUdlbmVyYXRvcjxUNT4mIGc1
LAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDY+JiBnNiwgY29uc3QgUGFyYW1HZW5lcmF0
b3I8VDc+JiBnNykKLSAgICAgIDogZzFfKGcxKSwgZzJfKGcyKSwgZzNfKGczKSwgZzRfKGc0KSwg
ZzVfKGc1KSwgZzZfKGc2KSwgZzdfKGc3KSB7fQotICB2aXJ0dWFsIH5DYXJ0ZXNpYW5Qcm9kdWN0
R2VuZXJhdG9yNygpIHt9Ci0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFt
VHlwZT4qIEJlZ2luKCkgY29uc3QgewotICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhpcywgZzFf
LCBnMV8uYmVnaW4oKSwgZzJfLCBnMl8uYmVnaW4oKSwgZzNfLAotICAgICAgICBnM18uYmVnaW4o
KSwgZzRfLCBnNF8uYmVnaW4oKSwgZzVfLCBnNV8uYmVnaW4oKSwgZzZfLCBnNl8uYmVnaW4oKSwg
ZzdfLAotICAgICAgICBnN18uYmVnaW4oKSk7Ci0gIH0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9y
SW50ZXJmYWNlPFBhcmFtVHlwZT4qIEVuZCgpIGNvbnN0IHsKLSAgICByZXR1cm4gbmV3IEl0ZXJh
dG9yKHRoaXMsIGcxXywgZzFfLmVuZCgpLCBnMl8sIGcyXy5lbmQoKSwgZzNfLCBnM18uZW5kKCks
Ci0gICAgICAgIGc0XywgZzRfLmVuZCgpLCBnNV8sIGc1Xy5lbmQoKSwgZzZfLCBnNl8uZW5kKCks
IGc3XywgZzdfLmVuZCgpKTsKLSAgfQotCi0gcHJpdmF0ZToKLSAgY2xhc3MgSXRlcmF0b3IgOiBw
dWJsaWMgUGFyYW1JdGVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+IHsKLSAgIHB1YmxpYzoKLSAg
ICBJdGVyYXRvcihjb25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+KiBiYXNl
LAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDE+JiBnMSwKLSAgICAgIGNvbnN0IHR5cGVu
YW1lIFBhcmFtR2VuZXJhdG9yPFQxPjo6aXRlcmF0b3ImIGN1cnJlbnQxLAotICAgICAgY29uc3Qg
UGFyYW1HZW5lcmF0b3I8VDI+JiBnMiwKLSAgICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJh
dG9yPFQyPjo6aXRlcmF0b3ImIGN1cnJlbnQyLAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8
VDM+JiBnMywKLSAgICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQzPjo6aXRlcmF0
b3ImIGN1cnJlbnQzLAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDQ+JiBnNCwKLSAgICAg
IGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ0Pjo6aXRlcmF0b3ImIGN1cnJlbnQ0LAot
ICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDU+JiBnNSwKLSAgICAgIGNvbnN0IHR5cGVuYW1l
IFBhcmFtR2VuZXJhdG9yPFQ1Pjo6aXRlcmF0b3ImIGN1cnJlbnQ1LAotICAgICAgY29uc3QgUGFy
YW1HZW5lcmF0b3I8VDY+JiBnNiwKLSAgICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9y
PFQ2Pjo6aXRlcmF0b3ImIGN1cnJlbnQ2LAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDc+
JiBnNywKLSAgICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ3Pjo6aXRlcmF0b3Im
IGN1cnJlbnQ3KQotICAgICAgICA6IGJhc2VfKGJhc2UpLAotICAgICAgICAgIGJlZ2luMV8oZzEu
YmVnaW4oKSksIGVuZDFfKGcxLmVuZCgpKSwgY3VycmVudDFfKGN1cnJlbnQxKSwKLSAgICAgICAg
ICBiZWdpbjJfKGcyLmJlZ2luKCkpLCBlbmQyXyhnMi5lbmQoKSksIGN1cnJlbnQyXyhjdXJyZW50
MiksCi0gICAgICAgICAgYmVnaW4zXyhnMy5iZWdpbigpKSwgZW5kM18oZzMuZW5kKCkpLCBjdXJy
ZW50M18oY3VycmVudDMpLAotICAgICAgICAgIGJlZ2luNF8oZzQuYmVnaW4oKSksIGVuZDRfKGc0
LmVuZCgpKSwgY3VycmVudDRfKGN1cnJlbnQ0KSwKLSAgICAgICAgICBiZWdpbjVfKGc1LmJlZ2lu
KCkpLCBlbmQ1XyhnNS5lbmQoKSksIGN1cnJlbnQ1XyhjdXJyZW50NSksCi0gICAgICAgICAgYmVn
aW42XyhnNi5iZWdpbigpKSwgZW5kNl8oZzYuZW5kKCkpLCBjdXJyZW50Nl8oY3VycmVudDYpLAot
ICAgICAgICAgIGJlZ2luN18oZzcuYmVnaW4oKSksIGVuZDdfKGc3LmVuZCgpKSwgY3VycmVudDdf
KGN1cnJlbnQ3KSAgICB7Ci0gICAgICBDb21wdXRlQ3VycmVudFZhbHVlKCk7Ci0gICAgfQotICAg
IHZpcnR1YWwgfkl0ZXJhdG9yKCkge30KLQotICAgIHZpcnR1YWwgY29uc3QgUGFyYW1HZW5lcmF0
b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogQmFzZUdlbmVyYXRvcigpIGNvbnN0IHsKLSAgICAgIHJl
dHVybiBiYXNlXzsKLSAgICB9Ci0gICAgLy8gQWR2YW5jZSBzaG91bGQgbm90IGJlIGNhbGxlZCBv
biBiZXlvbmQtb2YtcmFuZ2UgaXRlcmF0b3JzCi0gICAgLy8gc28gbm8gY29tcG9uZW50IGl0ZXJh
dG9ycyBtdXN0IGJlIGJleW9uZCBlbmQgb2YgcmFuZ2UsIGVpdGhlci4KLSAgICB2aXJ0dWFsIHZv
aWQgQWR2YW5jZSgpIHsKLSAgICAgIGFzc2VydCghQXRFbmQoKSk7Ci0gICAgICArK2N1cnJlbnQ3
XzsKLSAgICAgIGlmIChjdXJyZW50N18gPT0gZW5kN18pIHsKLSAgICAgICAgY3VycmVudDdfID0g
YmVnaW43XzsKLSAgICAgICAgKytjdXJyZW50Nl87Ci0gICAgICB9Ci0gICAgICBpZiAoY3VycmVu
dDZfID09IGVuZDZfKSB7Ci0gICAgICAgIGN1cnJlbnQ2XyA9IGJlZ2luNl87Ci0gICAgICAgICsr
Y3VycmVudDVfOwotICAgICAgfQotICAgICAgaWYgKGN1cnJlbnQ1XyA9PSBlbmQ1XykgewotICAg
ICAgICBjdXJyZW50NV8gPSBiZWdpbjVfOwotICAgICAgICArK2N1cnJlbnQ0XzsKLSAgICAgIH0K
LSAgICAgIGlmIChjdXJyZW50NF8gPT0gZW5kNF8pIHsKLSAgICAgICAgY3VycmVudDRfID0gYmVn
aW40XzsKLSAgICAgICAgKytjdXJyZW50M187Ci0gICAgICB9Ci0gICAgICBpZiAoY3VycmVudDNf
ID09IGVuZDNfKSB7Ci0gICAgICAgIGN1cnJlbnQzXyA9IGJlZ2luM187Ci0gICAgICAgICsrY3Vy
cmVudDJfOwotICAgICAgfQotICAgICAgaWYgKGN1cnJlbnQyXyA9PSBlbmQyXykgewotICAgICAg
ICBjdXJyZW50Ml8gPSBiZWdpbjJfOwotICAgICAgICArK2N1cnJlbnQxXzsKLSAgICAgIH0KLSAg
ICAgIENvbXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0gICAgdmlydHVhbCBQYXJhbUl0ZXJh
dG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIENsb25lKCkgY29uc3QgewotICAgICAgcmV0dXJuIG5l
dyBJdGVyYXRvcigqdGhpcyk7Ci0gICAgfQotICAgIHZpcnR1YWwgY29uc3QgUGFyYW1UeXBlKiBD
dXJyZW50KCkgY29uc3QgeyByZXR1cm4gY3VycmVudF92YWx1ZV8uZ2V0KCk7IH0KLSAgICB2aXJ0
dWFsIGJvb2wgRXF1YWxzKGNvbnN0IFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiYg
b3RoZXIpIGNvbnN0IHsKLSAgICAgIC8vIEhhdmluZyB0aGUgc2FtZSBiYXNlIGdlbmVyYXRvciBn
dWFyYW50ZWVzIHRoYXQgdGhlIG90aGVyCi0gICAgICAvLyBpdGVyYXRvciBpcyBvZiB0aGUgc2Ft
ZSB0eXBlIGFuZCB3ZSBjYW4gZG93bmNhc3QuCi0gICAgICBHVEVTVF9DSEVDS18oQmFzZUdlbmVy
YXRvcigpID09IG90aGVyLkJhc2VHZW5lcmF0b3IoKSkKLSAgICAgICAgICA8PCAiVGhlIHByb2dy
YW0gYXR0ZW1wdGVkIHRvIGNvbXBhcmUgaXRlcmF0b3JzICIKLSAgICAgICAgICA8PCAiZnJvbSBk
aWZmZXJlbnQgZ2VuZXJhdG9ycy4iIDw8IHN0ZDo6ZW5kbDsKLSAgICAgIGNvbnN0IEl0ZXJhdG9y
KiB0eXBlZF9vdGhlciA9Ci0gICAgICAgICAgQ2hlY2tlZERvd25jYXN0VG9BY3R1YWxUeXBlPGNv
bnN0IEl0ZXJhdG9yPigmb3RoZXIpOwotICAgICAgLy8gV2UgbXVzdCByZXBvcnQgaXRlcmF0b3Jz
IGVxdWFsIGlmIHRoZXkgYm90aCBwb2ludCBiZXlvbmQgdGhlaXIKLSAgICAgIC8vIHJlc3BlY3Rp
dmUgcmFuZ2VzLiBUaGF0IGNhbiBoYXBwZW4gaW4gYSB2YXJpZXR5IG9mIGZhc2hpb25zLAotICAg
ICAgLy8gc28gd2UgaGF2ZSB0byBjb25zdWx0IEF0RW5kKCkuCi0gICAgICByZXR1cm4gKEF0RW5k
KCkgJiYgdHlwZWRfb3RoZXItPkF0RW5kKCkpIHx8Ci0gICAgICAgICAoCi0gICAgICAgICAgY3Vy
cmVudDFfID09IHR5cGVkX290aGVyLT5jdXJyZW50MV8gJiYKLSAgICAgICAgICBjdXJyZW50Ml8g
PT0gdHlwZWRfb3RoZXItPmN1cnJlbnQyXyAmJgotICAgICAgICAgIGN1cnJlbnQzXyA9PSB0eXBl
ZF9vdGhlci0+Y3VycmVudDNfICYmCi0gICAgICAgICAgY3VycmVudDRfID09IHR5cGVkX290aGVy
LT5jdXJyZW50NF8gJiYKLSAgICAgICAgICBjdXJyZW50NV8gPT0gdHlwZWRfb3RoZXItPmN1cnJl
bnQ1XyAmJgotICAgICAgICAgIGN1cnJlbnQ2XyA9PSB0eXBlZF9vdGhlci0+Y3VycmVudDZfICYm
Ci0gICAgICAgICAgY3VycmVudDdfID09IHR5cGVkX290aGVyLT5jdXJyZW50N18pOwotICAgIH0K
LQotICAgcHJpdmF0ZToKLSAgICBJdGVyYXRvcihjb25zdCBJdGVyYXRvciYgb3RoZXIpCi0gICAg
ICAgIDogYmFzZV8ob3RoZXIuYmFzZV8pLAotICAgICAgICBiZWdpbjFfKG90aGVyLmJlZ2luMV8p
LAotICAgICAgICBlbmQxXyhvdGhlci5lbmQxXyksCi0gICAgICAgIGN1cnJlbnQxXyhvdGhlci5j
dXJyZW50MV8pLAotICAgICAgICBiZWdpbjJfKG90aGVyLmJlZ2luMl8pLAotICAgICAgICBlbmQy
XyhvdGhlci5lbmQyXyksCi0gICAgICAgIGN1cnJlbnQyXyhvdGhlci5jdXJyZW50Ml8pLAotICAg
ICAgICBiZWdpbjNfKG90aGVyLmJlZ2luM18pLAotICAgICAgICBlbmQzXyhvdGhlci5lbmQzXyks
Ci0gICAgICAgIGN1cnJlbnQzXyhvdGhlci5jdXJyZW50M18pLAotICAgICAgICBiZWdpbjRfKG90
aGVyLmJlZ2luNF8pLAotICAgICAgICBlbmQ0XyhvdGhlci5lbmQ0XyksCi0gICAgICAgIGN1cnJl
bnQ0XyhvdGhlci5jdXJyZW50NF8pLAotICAgICAgICBiZWdpbjVfKG90aGVyLmJlZ2luNV8pLAot
ICAgICAgICBlbmQ1XyhvdGhlci5lbmQ1XyksCi0gICAgICAgIGN1cnJlbnQ1XyhvdGhlci5jdXJy
ZW50NV8pLAotICAgICAgICBiZWdpbjZfKG90aGVyLmJlZ2luNl8pLAotICAgICAgICBlbmQ2Xyhv
dGhlci5lbmQ2XyksCi0gICAgICAgIGN1cnJlbnQ2XyhvdGhlci5jdXJyZW50Nl8pLAotICAgICAg
ICBiZWdpbjdfKG90aGVyLmJlZ2luN18pLAotICAgICAgICBlbmQ3XyhvdGhlci5lbmQ3XyksCi0g
ICAgICAgIGN1cnJlbnQ3XyhvdGhlci5jdXJyZW50N18pIHsKLSAgICAgIENvbXB1dGVDdXJyZW50
VmFsdWUoKTsKLSAgICB9Ci0KLSAgICB2b2lkIENvbXB1dGVDdXJyZW50VmFsdWUoKSB7Ci0gICAg
ICBpZiAoIUF0RW5kKCkpCi0gICAgICAgIGN1cnJlbnRfdmFsdWVfLnJlc2V0KG5ldyBQYXJhbVR5
cGUoKmN1cnJlbnQxXywgKmN1cnJlbnQyXywgKmN1cnJlbnQzXywKLSAgICAgICAgICAgICpjdXJy
ZW50NF8sICpjdXJyZW50NV8sICpjdXJyZW50Nl8sICpjdXJyZW50N18pKTsKLSAgICB9Ci0gICAg
Ym9vbCBBdEVuZCgpIGNvbnN0IHsKLSAgICAgIC8vIFdlIG11c3QgcmVwb3J0IGl0ZXJhdG9yIHBh
c3QgdGhlIGVuZCBvZiB0aGUgcmFuZ2Ugd2hlbiBlaXRoZXIgb2YgdGhlCi0gICAgICAvLyBjb21w
b25lbnQgaXRlcmF0b3JzIGhhcyByZWFjaGVkIHRoZSBlbmQgb2YgaXRzIHJhbmdlLgotICAgICAg
cmV0dXJuCi0gICAgICAgICAgY3VycmVudDFfID09IGVuZDFfIHx8Ci0gICAgICAgICAgY3VycmVu
dDJfID09IGVuZDJfIHx8Ci0gICAgICAgICAgY3VycmVudDNfID09IGVuZDNfIHx8Ci0gICAgICAg
ICAgY3VycmVudDRfID09IGVuZDRfIHx8Ci0gICAgICAgICAgY3VycmVudDVfID09IGVuZDVfIHx8
Ci0gICAgICAgICAgY3VycmVudDZfID09IGVuZDZfIHx8Ci0gICAgICAgICAgY3VycmVudDdfID09
IGVuZDdfOwotICAgIH0KLQotICAgIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBp
cyB1bnN1cHBvcnRlZC4KLSAgICB2b2lkIG9wZXJhdG9yPShjb25zdCBJdGVyYXRvciYgb3RoZXIp
OwotCi0gICAgY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogY29uc3Qg
YmFzZV87Ci0gICAgLy8gYmVnaW5baV1fIGFuZCBlbmRbaV1fIGRlZmluZSB0aGUgaS10aCByYW5n
ZSB0aGF0IEl0ZXJhdG9yIHRyYXZlcnNlcy4KLSAgICAvLyBjdXJyZW50W2ldXyBpcyB0aGUgYWN0
dWFsIHRyYXZlcnNpbmcgaXRlcmF0b3IuCi0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0
b3I8VDE+OjppdGVyYXRvciBiZWdpbjFfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJh
dG9yPFQxPjo6aXRlcmF0b3IgZW5kMV87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDE+
OjppdGVyYXRvciBjdXJyZW50MV87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8
VDI+OjppdGVyYXRvciBiZWdpbjJfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9y
PFQyPjo6aXRlcmF0b3IgZW5kMl87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDI+Ojpp
dGVyYXRvciBjdXJyZW50Ml87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDM+
OjppdGVyYXRvciBiZWdpbjNfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQz
Pjo6aXRlcmF0b3IgZW5kM187Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDM+OjppdGVy
YXRvciBjdXJyZW50M187Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDQ+Ojpp
dGVyYXRvciBiZWdpbjRfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ0Pjo6
aXRlcmF0b3IgZW5kNF87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDQ+OjppdGVyYXRv
ciBjdXJyZW50NF87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDU+OjppdGVy
YXRvciBiZWdpbjVfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ1Pjo6aXRl
cmF0b3IgZW5kNV87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDU+OjppdGVyYXRvciBj
dXJyZW50NV87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDY+OjppdGVyYXRv
ciBiZWdpbjZfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ2Pjo6aXRlcmF0
b3IgZW5kNl87Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDY+OjppdGVyYXRvciBjdXJy
ZW50Nl87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDc+OjppdGVyYXRvciBi
ZWdpbjdfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ3Pjo6aXRlcmF0b3Ig
ZW5kN187Ci0gICAgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDc+OjppdGVyYXRvciBjdXJyZW50
N187Ci0gICAgbGlua2VkX3B0cjxQYXJhbVR5cGU+IGN1cnJlbnRfdmFsdWVfOwotICB9OyAgLy8g
Y2xhc3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjc6Okl0ZXJhdG9yCi0KLSAgLy8gTm8gaW1w
bGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9y
PShjb25zdCBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNyYgb3RoZXIpOwotCi0gIGNvbnN0IFBh
cmFtR2VuZXJhdG9yPFQxPiBnMV87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQyPiBnMl87Ci0g
IGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQzPiBnM187Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ0
PiBnNF87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ1PiBnNV87Ci0gIGNvbnN0IFBhcmFtR2Vu
ZXJhdG9yPFQ2PiBnNl87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ3PiBnN187Ci19OyAgLy8g
Y2xhc3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjcKLQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUg
VDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAot
ICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDg+Ci1jbGFzcyBDYXJ0ZXNp
YW5Qcm9kdWN0R2VuZXJhdG9yOAotICAgIDogcHVibGljIFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNl
PCA6OnRlc3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsCi0gICAgICAgIFQ3LCBU
OD4gPiB7Ci0gcHVibGljOgotICB0eXBlZGVmIDo6dGVzdGluZzo6dHVwbGU8VDEsIFQyLCBUMywg
VDQsIFQ1LCBUNiwgVDcsIFQ4PiBQYXJhbVR5cGU7Ci0KLSAgQ2FydGVzaWFuUHJvZHVjdEdlbmVy
YXRvcjgoY29uc3QgUGFyYW1HZW5lcmF0b3I8VDE+JiBnMSwKLSAgICAgIGNvbnN0IFBhcmFtR2Vu
ZXJhdG9yPFQyPiYgZzIsIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQzPiYgZzMsCi0gICAgICBjb25z
dCBQYXJhbUdlbmVyYXRvcjxUND4mIGc0LCBjb25zdCBQYXJhbUdlbmVyYXRvcjxUNT4mIGc1LAot
ICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDY+JiBnNiwgY29uc3QgUGFyYW1HZW5lcmF0b3I8
VDc+JiBnNywKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ4PiYgZzgpCi0gICAgICA6IGcx
XyhnMSksIGcyXyhnMiksIGczXyhnMyksIGc0XyhnNCksIGc1XyhnNSksIGc2XyhnNiksIGc3Xyhn
NyksCi0gICAgICAgICAgZzhfKGc4KSB7fQotICB2aXJ0dWFsIH5DYXJ0ZXNpYW5Qcm9kdWN0R2Vu
ZXJhdG9yOCgpIHt9Ci0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlw
ZT4qIEJlZ2luKCkgY29uc3QgewotICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhpcywgZzFfLCBn
MV8uYmVnaW4oKSwgZzJfLCBnMl8uYmVnaW4oKSwgZzNfLAotICAgICAgICBnM18uYmVnaW4oKSwg
ZzRfLCBnNF8uYmVnaW4oKSwgZzVfLCBnNV8uYmVnaW4oKSwgZzZfLCBnNl8uYmVnaW4oKSwgZzdf
LAotICAgICAgICBnN18uYmVnaW4oKSwgZzhfLCBnOF8uYmVnaW4oKSk7Ci0gIH0KLSAgdmlydHVh
bCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIEVuZCgpIGNvbnN0IHsKLSAgICBy
ZXR1cm4gbmV3IEl0ZXJhdG9yKHRoaXMsIGcxXywgZzFfLmVuZCgpLCBnMl8sIGcyXy5lbmQoKSwg
ZzNfLCBnM18uZW5kKCksCi0gICAgICAgIGc0XywgZzRfLmVuZCgpLCBnNV8sIGc1Xy5lbmQoKSwg
ZzZfLCBnNl8uZW5kKCksIGc3XywgZzdfLmVuZCgpLCBnOF8sCi0gICAgICAgIGc4Xy5lbmQoKSk7
Ci0gIH0KLQotIHByaXZhdGU6Ci0gIGNsYXNzIEl0ZXJhdG9yIDogcHVibGljIFBhcmFtSXRlcmF0
b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiB7Ci0gICBwdWJsaWM6Ci0gICAgSXRlcmF0b3IoY29uc3Qg
UGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogYmFzZSwKLSAgICAgIGNvbnN0IFBh
cmFtR2VuZXJhdG9yPFQxPiYgZzEsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRv
cjxUMT46Oml0ZXJhdG9yJiBjdXJyZW50MSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQy
PiYgZzIsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMj46Oml0ZXJhdG9y
JiBjdXJyZW50MiwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQzPiYgZzMsCi0gICAgICBj
b25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMz46Oml0ZXJhdG9yJiBjdXJyZW50MywKLSAg
ICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ0PiYgZzQsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQ
YXJhbUdlbmVyYXRvcjxUND46Oml0ZXJhdG9yJiBjdXJyZW50NCwKLSAgICAgIGNvbnN0IFBhcmFt
R2VuZXJhdG9yPFQ1PiYgZzUsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxU
NT46Oml0ZXJhdG9yJiBjdXJyZW50NSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ2PiYg
ZzYsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNj46Oml0ZXJhdG9yJiBj
dXJyZW50NiwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ3PiYgZzcsCi0gICAgICBjb25z
dCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNz46Oml0ZXJhdG9yJiBjdXJyZW50NywKLSAgICAg
IGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ4PiYgZzgsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJh
bUdlbmVyYXRvcjxUOD46Oml0ZXJhdG9yJiBjdXJyZW50OCkKLSAgICAgICAgOiBiYXNlXyhiYXNl
KSwKLSAgICAgICAgICBiZWdpbjFfKGcxLmJlZ2luKCkpLCBlbmQxXyhnMS5lbmQoKSksIGN1cnJl
bnQxXyhjdXJyZW50MSksCi0gICAgICAgICAgYmVnaW4yXyhnMi5iZWdpbigpKSwgZW5kMl8oZzIu
ZW5kKCkpLCBjdXJyZW50Ml8oY3VycmVudDIpLAotICAgICAgICAgIGJlZ2luM18oZzMuYmVnaW4o
KSksIGVuZDNfKGczLmVuZCgpKSwgY3VycmVudDNfKGN1cnJlbnQzKSwKLSAgICAgICAgICBiZWdp
bjRfKGc0LmJlZ2luKCkpLCBlbmQ0XyhnNC5lbmQoKSksIGN1cnJlbnQ0XyhjdXJyZW50NCksCi0g
ICAgICAgICAgYmVnaW41XyhnNS5iZWdpbigpKSwgZW5kNV8oZzUuZW5kKCkpLCBjdXJyZW50NV8o
Y3VycmVudDUpLAotICAgICAgICAgIGJlZ2luNl8oZzYuYmVnaW4oKSksIGVuZDZfKGc2LmVuZCgp
KSwgY3VycmVudDZfKGN1cnJlbnQ2KSwKLSAgICAgICAgICBiZWdpbjdfKGc3LmJlZ2luKCkpLCBl
bmQ3XyhnNy5lbmQoKSksIGN1cnJlbnQ3XyhjdXJyZW50NyksCi0gICAgICAgICAgYmVnaW44Xyhn
OC5iZWdpbigpKSwgZW5kOF8oZzguZW5kKCkpLCBjdXJyZW50OF8oY3VycmVudDgpICAgIHsKLSAg
ICAgIENvbXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0gICAgdmlydHVhbCB+SXRlcmF0b3Io
KSB7fQotCi0gICAgdmlydHVhbCBjb25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxQYXJhbVR5
cGU+KiBCYXNlR2VuZXJhdG9yKCkgY29uc3QgewotICAgICAgcmV0dXJuIGJhc2VfOwotICAgIH0K
LSAgICAvLyBBZHZhbmNlIHNob3VsZCBub3QgYmUgY2FsbGVkIG9uIGJleW9uZC1vZi1yYW5nZSBp
dGVyYXRvcnMKLSAgICAvLyBzbyBubyBjb21wb25lbnQgaXRlcmF0b3JzIG11c3QgYmUgYmV5b25k
IGVuZCBvZiByYW5nZSwgZWl0aGVyLgotICAgIHZpcnR1YWwgdm9pZCBBZHZhbmNlKCkgewotICAg
ICAgYXNzZXJ0KCFBdEVuZCgpKTsKLSAgICAgICsrY3VycmVudDhfOwotICAgICAgaWYgKGN1cnJl
bnQ4XyA9PSBlbmQ4XykgewotICAgICAgICBjdXJyZW50OF8gPSBiZWdpbjhfOwotICAgICAgICAr
K2N1cnJlbnQ3XzsKLSAgICAgIH0KLSAgICAgIGlmIChjdXJyZW50N18gPT0gZW5kN18pIHsKLSAg
ICAgICAgY3VycmVudDdfID0gYmVnaW43XzsKLSAgICAgICAgKytjdXJyZW50Nl87Ci0gICAgICB9
Ci0gICAgICBpZiAoY3VycmVudDZfID09IGVuZDZfKSB7Ci0gICAgICAgIGN1cnJlbnQ2XyA9IGJl
Z2luNl87Ci0gICAgICAgICsrY3VycmVudDVfOwotICAgICAgfQotICAgICAgaWYgKGN1cnJlbnQ1
XyA9PSBlbmQ1XykgewotICAgICAgICBjdXJyZW50NV8gPSBiZWdpbjVfOwotICAgICAgICArK2N1
cnJlbnQ0XzsKLSAgICAgIH0KLSAgICAgIGlmIChjdXJyZW50NF8gPT0gZW5kNF8pIHsKLSAgICAg
ICAgY3VycmVudDRfID0gYmVnaW40XzsKLSAgICAgICAgKytjdXJyZW50M187Ci0gICAgICB9Ci0g
ICAgICBpZiAoY3VycmVudDNfID09IGVuZDNfKSB7Ci0gICAgICAgIGN1cnJlbnQzXyA9IGJlZ2lu
M187Ci0gICAgICAgICsrY3VycmVudDJfOwotICAgICAgfQotICAgICAgaWYgKGN1cnJlbnQyXyA9
PSBlbmQyXykgewotICAgICAgICBjdXJyZW50Ml8gPSBiZWdpbjJfOwotICAgICAgICArK2N1cnJl
bnQxXzsKLSAgICAgIH0KLSAgICAgIENvbXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0gICAg
dmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIENsb25lKCkgY29uc3Qg
ewotICAgICAgcmV0dXJuIG5ldyBJdGVyYXRvcigqdGhpcyk7Ci0gICAgfQotICAgIHZpcnR1YWwg
Y29uc3QgUGFyYW1UeXBlKiBDdXJyZW50KCkgY29uc3QgeyByZXR1cm4gY3VycmVudF92YWx1ZV8u
Z2V0KCk7IH0KLSAgICB2aXJ0dWFsIGJvb2wgRXF1YWxzKGNvbnN0IFBhcmFtSXRlcmF0b3JJbnRl
cmZhY2U8UGFyYW1UeXBlPiYgb3RoZXIpIGNvbnN0IHsKLSAgICAgIC8vIEhhdmluZyB0aGUgc2Ft
ZSBiYXNlIGdlbmVyYXRvciBndWFyYW50ZWVzIHRoYXQgdGhlIG90aGVyCi0gICAgICAvLyBpdGVy
YXRvciBpcyBvZiB0aGUgc2FtZSB0eXBlIGFuZCB3ZSBjYW4gZG93bmNhc3QuCi0gICAgICBHVEVT
VF9DSEVDS18oQmFzZUdlbmVyYXRvcigpID09IG90aGVyLkJhc2VHZW5lcmF0b3IoKSkKLSAgICAg
ICAgICA8PCAiVGhlIHByb2dyYW0gYXR0ZW1wdGVkIHRvIGNvbXBhcmUgaXRlcmF0b3JzICIKLSAg
ICAgICAgICA8PCAiZnJvbSBkaWZmZXJlbnQgZ2VuZXJhdG9ycy4iIDw8IHN0ZDo6ZW5kbDsKLSAg
ICAgIGNvbnN0IEl0ZXJhdG9yKiB0eXBlZF9vdGhlciA9Ci0gICAgICAgICAgQ2hlY2tlZERvd25j
YXN0VG9BY3R1YWxUeXBlPGNvbnN0IEl0ZXJhdG9yPigmb3RoZXIpOwotICAgICAgLy8gV2UgbXVz
dCByZXBvcnQgaXRlcmF0b3JzIGVxdWFsIGlmIHRoZXkgYm90aCBwb2ludCBiZXlvbmQgdGhlaXIK
LSAgICAgIC8vIHJlc3BlY3RpdmUgcmFuZ2VzLiBUaGF0IGNhbiBoYXBwZW4gaW4gYSB2YXJpZXR5
IG9mIGZhc2hpb25zLAotICAgICAgLy8gc28gd2UgaGF2ZSB0byBjb25zdWx0IEF0RW5kKCkuCi0g
ICAgICByZXR1cm4gKEF0RW5kKCkgJiYgdHlwZWRfb3RoZXItPkF0RW5kKCkpIHx8Ci0gICAgICAg
ICAoCi0gICAgICAgICAgY3VycmVudDFfID09IHR5cGVkX290aGVyLT5jdXJyZW50MV8gJiYKLSAg
ICAgICAgICBjdXJyZW50Ml8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQyXyAmJgotICAgICAgICAg
IGN1cnJlbnQzXyA9PSB0eXBlZF9vdGhlci0+Y3VycmVudDNfICYmCi0gICAgICAgICAgY3VycmVu
dDRfID09IHR5cGVkX290aGVyLT5jdXJyZW50NF8gJiYKLSAgICAgICAgICBjdXJyZW50NV8gPT0g
dHlwZWRfb3RoZXItPmN1cnJlbnQ1XyAmJgotICAgICAgICAgIGN1cnJlbnQ2XyA9PSB0eXBlZF9v
dGhlci0+Y3VycmVudDZfICYmCi0gICAgICAgICAgY3VycmVudDdfID09IHR5cGVkX290aGVyLT5j
dXJyZW50N18gJiYKLSAgICAgICAgICBjdXJyZW50OF8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQ4
Xyk7Ci0gICAgfQotCi0gICBwcml2YXRlOgotICAgIEl0ZXJhdG9yKGNvbnN0IEl0ZXJhdG9yJiBv
dGhlcikKLSAgICAgICAgOiBiYXNlXyhvdGhlci5iYXNlXyksCi0gICAgICAgIGJlZ2luMV8ob3Ro
ZXIuYmVnaW4xXyksCi0gICAgICAgIGVuZDFfKG90aGVyLmVuZDFfKSwKLSAgICAgICAgY3VycmVu
dDFfKG90aGVyLmN1cnJlbnQxXyksCi0gICAgICAgIGJlZ2luMl8ob3RoZXIuYmVnaW4yXyksCi0g
ICAgICAgIGVuZDJfKG90aGVyLmVuZDJfKSwKLSAgICAgICAgY3VycmVudDJfKG90aGVyLmN1cnJl
bnQyXyksCi0gICAgICAgIGJlZ2luM18ob3RoZXIuYmVnaW4zXyksCi0gICAgICAgIGVuZDNfKG90
aGVyLmVuZDNfKSwKLSAgICAgICAgY3VycmVudDNfKG90aGVyLmN1cnJlbnQzXyksCi0gICAgICAg
IGJlZ2luNF8ob3RoZXIuYmVnaW40XyksCi0gICAgICAgIGVuZDRfKG90aGVyLmVuZDRfKSwKLSAg
ICAgICAgY3VycmVudDRfKG90aGVyLmN1cnJlbnQ0XyksCi0gICAgICAgIGJlZ2luNV8ob3RoZXIu
YmVnaW41XyksCi0gICAgICAgIGVuZDVfKG90aGVyLmVuZDVfKSwKLSAgICAgICAgY3VycmVudDVf
KG90aGVyLmN1cnJlbnQ1XyksCi0gICAgICAgIGJlZ2luNl8ob3RoZXIuYmVnaW42XyksCi0gICAg
ICAgIGVuZDZfKG90aGVyLmVuZDZfKSwKLSAgICAgICAgY3VycmVudDZfKG90aGVyLmN1cnJlbnQ2
XyksCi0gICAgICAgIGJlZ2luN18ob3RoZXIuYmVnaW43XyksCi0gICAgICAgIGVuZDdfKG90aGVy
LmVuZDdfKSwKLSAgICAgICAgY3VycmVudDdfKG90aGVyLmN1cnJlbnQ3XyksCi0gICAgICAgIGJl
Z2luOF8ob3RoZXIuYmVnaW44XyksCi0gICAgICAgIGVuZDhfKG90aGVyLmVuZDhfKSwKLSAgICAg
ICAgY3VycmVudDhfKG90aGVyLmN1cnJlbnQ4XykgewotICAgICAgQ29tcHV0ZUN1cnJlbnRWYWx1
ZSgpOwotICAgIH0KLQotICAgIHZvaWQgQ29tcHV0ZUN1cnJlbnRWYWx1ZSgpIHsKLSAgICAgIGlm
ICghQXRFbmQoKSkKLSAgICAgICAgY3VycmVudF92YWx1ZV8ucmVzZXQobmV3IFBhcmFtVHlwZSgq
Y3VycmVudDFfLCAqY3VycmVudDJfLCAqY3VycmVudDNfLAotICAgICAgICAgICAgKmN1cnJlbnQ0
XywgKmN1cnJlbnQ1XywgKmN1cnJlbnQ2XywgKmN1cnJlbnQ3XywgKmN1cnJlbnQ4XykpOwotICAg
IH0KLSAgICBib29sIEF0RW5kKCkgY29uc3QgewotICAgICAgLy8gV2UgbXVzdCByZXBvcnQgaXRl
cmF0b3IgcGFzdCB0aGUgZW5kIG9mIHRoZSByYW5nZSB3aGVuIGVpdGhlciBvZiB0aGUKLSAgICAg
IC8vIGNvbXBvbmVudCBpdGVyYXRvcnMgaGFzIHJlYWNoZWQgdGhlIGVuZCBvZiBpdHMgcmFuZ2Uu
Ci0gICAgICByZXR1cm4KLSAgICAgICAgICBjdXJyZW50MV8gPT0gZW5kMV8gfHwKLSAgICAgICAg
ICBjdXJyZW50Ml8gPT0gZW5kMl8gfHwKLSAgICAgICAgICBjdXJyZW50M18gPT0gZW5kM18gfHwK
LSAgICAgICAgICBjdXJyZW50NF8gPT0gZW5kNF8gfHwKLSAgICAgICAgICBjdXJyZW50NV8gPT0g
ZW5kNV8gfHwKLSAgICAgICAgICBjdXJyZW50Nl8gPT0gZW5kNl8gfHwKLSAgICAgICAgICBjdXJy
ZW50N18gPT0gZW5kN18gfHwKLSAgICAgICAgICBjdXJyZW50OF8gPT0gZW5kOF87Ci0gICAgfQot
Ci0gICAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgot
ICAgIHZvaWQgb3BlcmF0b3I9KGNvbnN0IEl0ZXJhdG9yJiBvdGhlcik7Ci0KLSAgICBjb25zdCBQ
YXJhbUdlbmVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+KiBjb25zdCBiYXNlXzsKLSAgICAvLyBi
ZWdpbltpXV8gYW5kIGVuZFtpXV8gZGVmaW5lIHRoZSBpLXRoIHJhbmdlIHRoYXQgSXRlcmF0b3Ig
dHJhdmVyc2VzLgotICAgIC8vIGN1cnJlbnRbaV1fIGlzIHRoZSBhY3R1YWwgdHJhdmVyc2luZyBp
dGVyYXRvci4KLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMT46Oml0ZXJhdG9y
IGJlZ2luMV87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDE+OjppdGVyYXRv
ciBlbmQxXzsKLSAgICB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMT46Oml0ZXJhdG9yIGN1cnJl
bnQxXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMj46Oml0ZXJhdG9yIGJl
Z2luMl87Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDI+OjppdGVyYXRvciBl
bmQyXzsKLSAgICB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMj46Oml0ZXJhdG9yIGN1cnJlbnQy
XzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMz46Oml0ZXJhdG9yIGJlZ2lu
M187Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDM+OjppdGVyYXRvciBlbmQz
XzsKLSAgICB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMz46Oml0ZXJhdG9yIGN1cnJlbnQzXzsK
LSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUND46Oml0ZXJhdG9yIGJlZ2luNF87
Ci0gICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDQ+OjppdGVyYXRvciBlbmQ0XzsK
LSAgICB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUND46Oml0ZXJhdG9yIGN1cnJlbnQ0XzsKLSAg
ICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNT46Oml0ZXJhdG9yIGJlZ2luNV87Ci0g
ICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDU+OjppdGVyYXRvciBlbmQ1XzsKLSAg
ICB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNT46Oml0ZXJhdG9yIGN1cnJlbnQ1XzsKLSAgICBj
b25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNj46Oml0ZXJhdG9yIGJlZ2luNl87Ci0gICAg
Y29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDY+OjppdGVyYXRvciBlbmQ2XzsKLSAgICB0
eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNj46Oml0ZXJhdG9yIGN1cnJlbnQ2XzsKLSAgICBjb25z
dCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNz46Oml0ZXJhdG9yIGJlZ2luN187Ci0gICAgY29u
c3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDc+OjppdGVyYXRvciBlbmQ3XzsKLSAgICB0eXBl
bmFtZSBQYXJhbUdlbmVyYXRvcjxUNz46Oml0ZXJhdG9yIGN1cnJlbnQ3XzsKLSAgICBjb25zdCB0
eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUOD46Oml0ZXJhdG9yIGJlZ2luOF87Ci0gICAgY29uc3Qg
dHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VDg+OjppdGVyYXRvciBlbmQ4XzsKLSAgICB0eXBlbmFt
ZSBQYXJhbUdlbmVyYXRvcjxUOD46Oml0ZXJhdG9yIGN1cnJlbnQ4XzsKLSAgICBsaW5rZWRfcHRy
PFBhcmFtVHlwZT4gY3VycmVudF92YWx1ZV87Ci0gIH07ICAvLyBjbGFzcyBDYXJ0ZXNpYW5Qcm9k
dWN0R2VuZXJhdG9yODo6SXRlcmF0b3IKLQotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2ln
bm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IENhcnRlc2lhblBy
b2R1Y3RHZW5lcmF0b3I4JiBvdGhlcik7Ci0KLSAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDE+IGcx
XzsKLSAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDI+IGcyXzsKLSAgY29uc3QgUGFyYW1HZW5lcmF0
b3I8VDM+IGczXzsKLSAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDQ+IGc0XzsKLSAgY29uc3QgUGFy
YW1HZW5lcmF0b3I8VDU+IGc1XzsKLSAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDY+IGc2XzsKLSAg
Y29uc3QgUGFyYW1HZW5lcmF0b3I8VDc+IGc3XzsKLSAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDg+
IGc4XzsKLX07ICAvLyBjbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yOAotCi0KLXRlbXBs
YXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwg
dHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwg
dHlwZW5hbWUgVDk+Ci1jbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yOQotICAgIDogcHVi
bGljIFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPCA6OnRlc3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDMs
IFQ0LCBUNSwgVDYsCi0gICAgICAgIFQ3LCBUOCwgVDk+ID4gewotIHB1YmxpYzoKLSAgdHlwZWRl
ZiA6OnRlc3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDk+IFBh
cmFtVHlwZTsKLQotICBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yOShjb25zdCBQYXJhbUdlbmVy
YXRvcjxUMT4mIGcxLAotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDI+JiBnMiwgY29uc3Qg
UGFyYW1HZW5lcmF0b3I8VDM+JiBnMywKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ0PiYg
ZzQsIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ1PiYgZzUsCi0gICAgICBjb25zdCBQYXJhbUdlbmVy
YXRvcjxUNj4mIGc2LCBjb25zdCBQYXJhbUdlbmVyYXRvcjxUNz4mIGc3LAotICAgICAgY29uc3Qg
UGFyYW1HZW5lcmF0b3I8VDg+JiBnOCwgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDk+JiBnOSkKLSAg
ICAgIDogZzFfKGcxKSwgZzJfKGcyKSwgZzNfKGczKSwgZzRfKGc0KSwgZzVfKGc1KSwgZzZfKGc2
KSwgZzdfKGc3KSwgZzhfKGc4KSwKLSAgICAgICAgICBnOV8oZzkpIHt9Ci0gIHZpcnR1YWwgfkNh
cnRlc2lhblByb2R1Y3RHZW5lcmF0b3I5KCkge30KLQotICB2aXJ0dWFsIFBhcmFtSXRlcmF0b3JJ
bnRlcmZhY2U8UGFyYW1UeXBlPiogQmVnaW4oKSBjb25zdCB7Ci0gICAgcmV0dXJuIG5ldyBJdGVy
YXRvcih0aGlzLCBnMV8sIGcxXy5iZWdpbigpLCBnMl8sIGcyXy5iZWdpbigpLCBnM18sCi0gICAg
ICAgIGczXy5iZWdpbigpLCBnNF8sIGc0Xy5iZWdpbigpLCBnNV8sIGc1Xy5iZWdpbigpLCBnNl8s
IGc2Xy5iZWdpbigpLCBnN18sCi0gICAgICAgIGc3Xy5iZWdpbigpLCBnOF8sIGc4Xy5iZWdpbigp
LCBnOV8sIGc5Xy5iZWdpbigpKTsKLSAgfQotICB2aXJ0dWFsIFBhcmFtSXRlcmF0b3JJbnRlcmZh
Y2U8UGFyYW1UeXBlPiogRW5kKCkgY29uc3QgewotICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhp
cywgZzFfLCBnMV8uZW5kKCksIGcyXywgZzJfLmVuZCgpLCBnM18sIGczXy5lbmQoKSwKLSAgICAg
ICAgZzRfLCBnNF8uZW5kKCksIGc1XywgZzVfLmVuZCgpLCBnNl8sIGc2Xy5lbmQoKSwgZzdfLCBn
N18uZW5kKCksIGc4XywKLSAgICAgICAgZzhfLmVuZCgpLCBnOV8sIGc5Xy5lbmQoKSk7Ci0gIH0K
LQotIHByaXZhdGU6Ci0gIGNsYXNzIEl0ZXJhdG9yIDogcHVibGljIFBhcmFtSXRlcmF0b3JJbnRl
cmZhY2U8UGFyYW1UeXBlPiB7Ci0gICBwdWJsaWM6Ci0gICAgSXRlcmF0b3IoY29uc3QgUGFyYW1H
ZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogYmFzZSwKLSAgICAgIGNvbnN0IFBhcmFtR2Vu
ZXJhdG9yPFQxPiYgZzEsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMT46
Oml0ZXJhdG9yJiBjdXJyZW50MSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQyPiYgZzIs
Ci0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMj46Oml0ZXJhdG9yJiBjdXJy
ZW50MiwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQzPiYgZzMsCi0gICAgICBjb25zdCB0
eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMz46Oml0ZXJhdG9yJiBjdXJyZW50MywKLSAgICAgIGNv
bnN0IFBhcmFtR2VuZXJhdG9yPFQ0PiYgZzQsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdl
bmVyYXRvcjxUND46Oml0ZXJhdG9yJiBjdXJyZW50NCwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJh
dG9yPFQ1PiYgZzUsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNT46Oml0
ZXJhdG9yJiBjdXJyZW50NSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ2PiYgZzYsCi0g
ICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNj46Oml0ZXJhdG9yJiBjdXJyZW50
NiwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ3PiYgZzcsCi0gICAgICBjb25zdCB0eXBl
bmFtZSBQYXJhbUdlbmVyYXRvcjxUNz46Oml0ZXJhdG9yJiBjdXJyZW50NywKLSAgICAgIGNvbnN0
IFBhcmFtR2VuZXJhdG9yPFQ4PiYgZzgsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVy
YXRvcjxUOD46Oml0ZXJhdG9yJiBjdXJyZW50OCwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9y
PFQ5PiYgZzksCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUOT46Oml0ZXJh
dG9yJiBjdXJyZW50OSkKLSAgICAgICAgOiBiYXNlXyhiYXNlKSwKLSAgICAgICAgICBiZWdpbjFf
KGcxLmJlZ2luKCkpLCBlbmQxXyhnMS5lbmQoKSksIGN1cnJlbnQxXyhjdXJyZW50MSksCi0gICAg
ICAgICAgYmVnaW4yXyhnMi5iZWdpbigpKSwgZW5kMl8oZzIuZW5kKCkpLCBjdXJyZW50Ml8oY3Vy
cmVudDIpLAotICAgICAgICAgIGJlZ2luM18oZzMuYmVnaW4oKSksIGVuZDNfKGczLmVuZCgpKSwg
Y3VycmVudDNfKGN1cnJlbnQzKSwKLSAgICAgICAgICBiZWdpbjRfKGc0LmJlZ2luKCkpLCBlbmQ0
XyhnNC5lbmQoKSksIGN1cnJlbnQ0XyhjdXJyZW50NCksCi0gICAgICAgICAgYmVnaW41XyhnNS5i
ZWdpbigpKSwgZW5kNV8oZzUuZW5kKCkpLCBjdXJyZW50NV8oY3VycmVudDUpLAotICAgICAgICAg
IGJlZ2luNl8oZzYuYmVnaW4oKSksIGVuZDZfKGc2LmVuZCgpKSwgY3VycmVudDZfKGN1cnJlbnQ2
KSwKLSAgICAgICAgICBiZWdpbjdfKGc3LmJlZ2luKCkpLCBlbmQ3XyhnNy5lbmQoKSksIGN1cnJl
bnQ3XyhjdXJyZW50NyksCi0gICAgICAgICAgYmVnaW44XyhnOC5iZWdpbigpKSwgZW5kOF8oZzgu
ZW5kKCkpLCBjdXJyZW50OF8oY3VycmVudDgpLAotICAgICAgICAgIGJlZ2luOV8oZzkuYmVnaW4o
KSksIGVuZDlfKGc5LmVuZCgpKSwgY3VycmVudDlfKGN1cnJlbnQ5KSAgICB7Ci0gICAgICBDb21w
dXRlQ3VycmVudFZhbHVlKCk7Ci0gICAgfQotICAgIHZpcnR1YWwgfkl0ZXJhdG9yKCkge30KLQot
ICAgIHZpcnR1YWwgY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogQmFz
ZUdlbmVyYXRvcigpIGNvbnN0IHsKLSAgICAgIHJldHVybiBiYXNlXzsKLSAgICB9Ci0gICAgLy8g
QWR2YW5jZSBzaG91bGQgbm90IGJlIGNhbGxlZCBvbiBiZXlvbmQtb2YtcmFuZ2UgaXRlcmF0b3Jz
Ci0gICAgLy8gc28gbm8gY29tcG9uZW50IGl0ZXJhdG9ycyBtdXN0IGJlIGJleW9uZCBlbmQgb2Yg
cmFuZ2UsIGVpdGhlci4KLSAgICB2aXJ0dWFsIHZvaWQgQWR2YW5jZSgpIHsKLSAgICAgIGFzc2Vy
dCghQXRFbmQoKSk7Ci0gICAgICArK2N1cnJlbnQ5XzsKLSAgICAgIGlmIChjdXJyZW50OV8gPT0g
ZW5kOV8pIHsKLSAgICAgICAgY3VycmVudDlfID0gYmVnaW45XzsKLSAgICAgICAgKytjdXJyZW50
OF87Ci0gICAgICB9Ci0gICAgICBpZiAoY3VycmVudDhfID09IGVuZDhfKSB7Ci0gICAgICAgIGN1
cnJlbnQ4XyA9IGJlZ2luOF87Ci0gICAgICAgICsrY3VycmVudDdfOwotICAgICAgfQotICAgICAg
aWYgKGN1cnJlbnQ3XyA9PSBlbmQ3XykgewotICAgICAgICBjdXJyZW50N18gPSBiZWdpbjdfOwot
ICAgICAgICArK2N1cnJlbnQ2XzsKLSAgICAgIH0KLSAgICAgIGlmIChjdXJyZW50Nl8gPT0gZW5k
Nl8pIHsKLSAgICAgICAgY3VycmVudDZfID0gYmVnaW42XzsKLSAgICAgICAgKytjdXJyZW50NV87
Ci0gICAgICB9Ci0gICAgICBpZiAoY3VycmVudDVfID09IGVuZDVfKSB7Ci0gICAgICAgIGN1cnJl
bnQ1XyA9IGJlZ2luNV87Ci0gICAgICAgICsrY3VycmVudDRfOwotICAgICAgfQotICAgICAgaWYg
KGN1cnJlbnQ0XyA9PSBlbmQ0XykgewotICAgICAgICBjdXJyZW50NF8gPSBiZWdpbjRfOwotICAg
ICAgICArK2N1cnJlbnQzXzsKLSAgICAgIH0KLSAgICAgIGlmIChjdXJyZW50M18gPT0gZW5kM18p
IHsKLSAgICAgICAgY3VycmVudDNfID0gYmVnaW4zXzsKLSAgICAgICAgKytjdXJyZW50Ml87Ci0g
ICAgICB9Ci0gICAgICBpZiAoY3VycmVudDJfID09IGVuZDJfKSB7Ci0gICAgICAgIGN1cnJlbnQy
XyA9IGJlZ2luMl87Ci0gICAgICAgICsrY3VycmVudDFfOwotICAgICAgfQotICAgICAgQ29tcHV0
ZUN1cnJlbnRWYWx1ZSgpOwotICAgIH0KLSAgICB2aXJ0dWFsIFBhcmFtSXRlcmF0b3JJbnRlcmZh
Y2U8UGFyYW1UeXBlPiogQ2xvbmUoKSBjb25zdCB7Ci0gICAgICByZXR1cm4gbmV3IEl0ZXJhdG9y
KCp0aGlzKTsKLSAgICB9Ci0gICAgdmlydHVhbCBjb25zdCBQYXJhbVR5cGUqIEN1cnJlbnQoKSBj
b25zdCB7IHJldHVybiBjdXJyZW50X3ZhbHVlXy5nZXQoKTsgfQotICAgIHZpcnR1YWwgYm9vbCBF
cXVhbHMoY29uc3QgUGFyYW1JdGVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+JiBvdGhlcikgY29u
c3QgewotICAgICAgLy8gSGF2aW5nIHRoZSBzYW1lIGJhc2UgZ2VuZXJhdG9yIGd1YXJhbnRlZXMg
dGhhdCB0aGUgb3RoZXIKLSAgICAgIC8vIGl0ZXJhdG9yIGlzIG9mIHRoZSBzYW1lIHR5cGUgYW5k
IHdlIGNhbiBkb3duY2FzdC4KLSAgICAgIEdURVNUX0NIRUNLXyhCYXNlR2VuZXJhdG9yKCkgPT0g
b3RoZXIuQmFzZUdlbmVyYXRvcigpKQotICAgICAgICAgIDw8ICJUaGUgcHJvZ3JhbSBhdHRlbXB0
ZWQgdG8gY29tcGFyZSBpdGVyYXRvcnMgIgotICAgICAgICAgIDw8ICJmcm9tIGRpZmZlcmVudCBn
ZW5lcmF0b3JzLiIgPDwgc3RkOjplbmRsOwotICAgICAgY29uc3QgSXRlcmF0b3IqIHR5cGVkX290
aGVyID0KLSAgICAgICAgICBDaGVja2VkRG93bmNhc3RUb0FjdHVhbFR5cGU8Y29uc3QgSXRlcmF0
b3I+KCZvdGhlcik7Ci0gICAgICAvLyBXZSBtdXN0IHJlcG9ydCBpdGVyYXRvcnMgZXF1YWwgaWYg
dGhleSBib3RoIHBvaW50IGJleW9uZCB0aGVpcgotICAgICAgLy8gcmVzcGVjdGl2ZSByYW5nZXMu
IFRoYXQgY2FuIGhhcHBlbiBpbiBhIHZhcmlldHkgb2YgZmFzaGlvbnMsCi0gICAgICAvLyBzbyB3
ZSBoYXZlIHRvIGNvbnN1bHQgQXRFbmQoKS4KLSAgICAgIHJldHVybiAoQXRFbmQoKSAmJiB0eXBl
ZF9vdGhlci0+QXRFbmQoKSkgfHwKLSAgICAgICAgICgKLSAgICAgICAgICBjdXJyZW50MV8gPT0g
dHlwZWRfb3RoZXItPmN1cnJlbnQxXyAmJgotICAgICAgICAgIGN1cnJlbnQyXyA9PSB0eXBlZF9v
dGhlci0+Y3VycmVudDJfICYmCi0gICAgICAgICAgY3VycmVudDNfID09IHR5cGVkX290aGVyLT5j
dXJyZW50M18gJiYKLSAgICAgICAgICBjdXJyZW50NF8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQ0
XyAmJgotICAgICAgICAgIGN1cnJlbnQ1XyA9PSB0eXBlZF9vdGhlci0+Y3VycmVudDVfICYmCi0g
ICAgICAgICAgY3VycmVudDZfID09IHR5cGVkX290aGVyLT5jdXJyZW50Nl8gJiYKLSAgICAgICAg
ICBjdXJyZW50N18gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQ3XyAmJgotICAgICAgICAgIGN1cnJl
bnQ4XyA9PSB0eXBlZF9vdGhlci0+Y3VycmVudDhfICYmCi0gICAgICAgICAgY3VycmVudDlfID09
IHR5cGVkX290aGVyLT5jdXJyZW50OV8pOwotICAgIH0KLQotICAgcHJpdmF0ZToKLSAgICBJdGVy
YXRvcihjb25zdCBJdGVyYXRvciYgb3RoZXIpCi0gICAgICAgIDogYmFzZV8ob3RoZXIuYmFzZV8p
LAotICAgICAgICBiZWdpbjFfKG90aGVyLmJlZ2luMV8pLAotICAgICAgICBlbmQxXyhvdGhlci5l
bmQxXyksCi0gICAgICAgIGN1cnJlbnQxXyhvdGhlci5jdXJyZW50MV8pLAotICAgICAgICBiZWdp
bjJfKG90aGVyLmJlZ2luMl8pLAotICAgICAgICBlbmQyXyhvdGhlci5lbmQyXyksCi0gICAgICAg
IGN1cnJlbnQyXyhvdGhlci5jdXJyZW50Ml8pLAotICAgICAgICBiZWdpbjNfKG90aGVyLmJlZ2lu
M18pLAotICAgICAgICBlbmQzXyhvdGhlci5lbmQzXyksCi0gICAgICAgIGN1cnJlbnQzXyhvdGhl
ci5jdXJyZW50M18pLAotICAgICAgICBiZWdpbjRfKG90aGVyLmJlZ2luNF8pLAotICAgICAgICBl
bmQ0XyhvdGhlci5lbmQ0XyksCi0gICAgICAgIGN1cnJlbnQ0XyhvdGhlci5jdXJyZW50NF8pLAot
ICAgICAgICBiZWdpbjVfKG90aGVyLmJlZ2luNV8pLAotICAgICAgICBlbmQ1XyhvdGhlci5lbmQ1
XyksCi0gICAgICAgIGN1cnJlbnQ1XyhvdGhlci5jdXJyZW50NV8pLAotICAgICAgICBiZWdpbjZf
KG90aGVyLmJlZ2luNl8pLAotICAgICAgICBlbmQ2XyhvdGhlci5lbmQ2XyksCi0gICAgICAgIGN1
cnJlbnQ2XyhvdGhlci5jdXJyZW50Nl8pLAotICAgICAgICBiZWdpbjdfKG90aGVyLmJlZ2luN18p
LAotICAgICAgICBlbmQ3XyhvdGhlci5lbmQ3XyksCi0gICAgICAgIGN1cnJlbnQ3XyhvdGhlci5j
dXJyZW50N18pLAotICAgICAgICBiZWdpbjhfKG90aGVyLmJlZ2luOF8pLAotICAgICAgICBlbmQ4
XyhvdGhlci5lbmQ4XyksCi0gICAgICAgIGN1cnJlbnQ4XyhvdGhlci5jdXJyZW50OF8pLAotICAg
ICAgICBiZWdpbjlfKG90aGVyLmJlZ2luOV8pLAotICAgICAgICBlbmQ5XyhvdGhlci5lbmQ5Xyks
Ci0gICAgICAgIGN1cnJlbnQ5XyhvdGhlci5jdXJyZW50OV8pIHsKLSAgICAgIENvbXB1dGVDdXJy
ZW50VmFsdWUoKTsKLSAgICB9Ci0KLSAgICB2b2lkIENvbXB1dGVDdXJyZW50VmFsdWUoKSB7Ci0g
ICAgICBpZiAoIUF0RW5kKCkpCi0gICAgICAgIGN1cnJlbnRfdmFsdWVfLnJlc2V0KG5ldyBQYXJh
bVR5cGUoKmN1cnJlbnQxXywgKmN1cnJlbnQyXywgKmN1cnJlbnQzXywKLSAgICAgICAgICAgICpj
dXJyZW50NF8sICpjdXJyZW50NV8sICpjdXJyZW50Nl8sICpjdXJyZW50N18sICpjdXJyZW50OF8s
Ci0gICAgICAgICAgICAqY3VycmVudDlfKSk7Ci0gICAgfQotICAgIGJvb2wgQXRFbmQoKSBjb25z
dCB7Ci0gICAgICAvLyBXZSBtdXN0IHJlcG9ydCBpdGVyYXRvciBwYXN0IHRoZSBlbmQgb2YgdGhl
IHJhbmdlIHdoZW4gZWl0aGVyIG9mIHRoZQotICAgICAgLy8gY29tcG9uZW50IGl0ZXJhdG9ycyBo
YXMgcmVhY2hlZCB0aGUgZW5kIG9mIGl0cyByYW5nZS4KLSAgICAgIHJldHVybgotICAgICAgICAg
IGN1cnJlbnQxXyA9PSBlbmQxXyB8fAotICAgICAgICAgIGN1cnJlbnQyXyA9PSBlbmQyXyB8fAot
ICAgICAgICAgIGN1cnJlbnQzXyA9PSBlbmQzXyB8fAotICAgICAgICAgIGN1cnJlbnQ0XyA9PSBl
bmQ0XyB8fAotICAgICAgICAgIGN1cnJlbnQ1XyA9PSBlbmQ1XyB8fAotICAgICAgICAgIGN1cnJl
bnQ2XyA9PSBlbmQ2XyB8fAotICAgICAgICAgIGN1cnJlbnQ3XyA9PSBlbmQ3XyB8fAotICAgICAg
ICAgIGN1cnJlbnQ4XyA9PSBlbmQ4XyB8fAotICAgICAgICAgIGN1cnJlbnQ5XyA9PSBlbmQ5XzsK
LSAgICB9Ci0KLSAgICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBw
b3J0ZWQuCi0gICAgdm9pZCBvcGVyYXRvcj0oY29uc3QgSXRlcmF0b3ImIG90aGVyKTsKLQotICAg
IGNvbnN0IFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIGNvbnN0IGJhc2VfOwot
ICAgIC8vIGJlZ2luW2ldXyBhbmQgZW5kW2ldXyBkZWZpbmUgdGhlIGktdGggcmFuZ2UgdGhhdCBJ
dGVyYXRvciB0cmF2ZXJzZXMuCi0gICAgLy8gY3VycmVudFtpXV8gaXMgdGhlIGFjdHVhbCB0cmF2
ZXJzaW5nIGl0ZXJhdG9yLgotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQxPjo6
aXRlcmF0b3IgYmVnaW4xXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMT46
Oml0ZXJhdG9yIGVuZDFfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQxPjo6aXRlcmF0
b3IgY3VycmVudDFfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQyPjo6aXRl
cmF0b3IgYmVnaW4yXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMj46Oml0
ZXJhdG9yIGVuZDJfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQyPjo6aXRlcmF0b3Ig
Y3VycmVudDJfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQzPjo6aXRlcmF0
b3IgYmVnaW4zXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMz46Oml0ZXJh
dG9yIGVuZDNfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQzPjo6aXRlcmF0b3IgY3Vy
cmVudDNfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ0Pjo6aXRlcmF0b3Ig
YmVnaW40XzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUND46Oml0ZXJhdG9y
IGVuZDRfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ0Pjo6aXRlcmF0b3IgY3VycmVu
dDRfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ1Pjo6aXRlcmF0b3IgYmVn
aW41XzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNT46Oml0ZXJhdG9yIGVu
ZDVfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ1Pjo6aXRlcmF0b3IgY3VycmVudDVf
OwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ2Pjo6aXRlcmF0b3IgYmVnaW42
XzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNj46Oml0ZXJhdG9yIGVuZDZf
OwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ2Pjo6aXRlcmF0b3IgY3VycmVudDZfOwot
ICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ3Pjo6aXRlcmF0b3IgYmVnaW43XzsK
LSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNz46Oml0ZXJhdG9yIGVuZDdfOwot
ICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ3Pjo6aXRlcmF0b3IgY3VycmVudDdfOwotICAg
IGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ4Pjo6aXRlcmF0b3IgYmVnaW44XzsKLSAg
ICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUOD46Oml0ZXJhdG9yIGVuZDhfOwotICAg
IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ4Pjo6aXRlcmF0b3IgY3VycmVudDhfOwotICAgIGNv
bnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ5Pjo6aXRlcmF0b3IgYmVnaW45XzsKLSAgICBj
b25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUOT46Oml0ZXJhdG9yIGVuZDlfOwotICAgIHR5
cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ5Pjo6aXRlcmF0b3IgY3VycmVudDlfOwotICAgIGxpbmtl
ZF9wdHI8UGFyYW1UeXBlPiBjdXJyZW50X3ZhbHVlXzsKLSAgfTsgIC8vIGNsYXNzIENhcnRlc2lh
blByb2R1Y3RHZW5lcmF0b3I5OjpJdGVyYXRvcgotCi0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0g
YXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgQ2FydGVz
aWFuUHJvZHVjdEdlbmVyYXRvcjkmIG90aGVyKTsKLQotICBjb25zdCBQYXJhbUdlbmVyYXRvcjxU
MT4gZzFfOwotICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUMj4gZzJfOwotICBjb25zdCBQYXJhbUdl
bmVyYXRvcjxUMz4gZzNfOwotICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUND4gZzRfOwotICBjb25z
dCBQYXJhbUdlbmVyYXRvcjxUNT4gZzVfOwotICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUNj4gZzZf
OwotICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUNz4gZzdfOwotICBjb25zdCBQYXJhbUdlbmVyYXRv
cjxUOD4gZzhfOwotICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUOT4gZzlfOwotfTsgIC8vIGNsYXNz
IENhcnRlc2lhblByb2R1Y3RHZW5lcmF0b3I5Ci0KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0
eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0
eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5h
bWUgVDEwPgotY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcjEwCi0gICAgOiBwdWJsaWMg
UGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8IDo6dGVzdGluZzo6dHVwbGU8VDEsIFQyLCBUMywgVDQs
IFQ1LCBUNiwKLSAgICAgICAgVDcsIFQ4LCBUOSwgVDEwPiA+IHsKLSBwdWJsaWM6Ci0gIHR5cGVk
ZWYgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBU
MTA+IFBhcmFtVHlwZTsKLQotICBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yMTAoY29uc3QgUGFy
YW1HZW5lcmF0b3I8VDE+JiBnMSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQyPiYgZzIs
IGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQzPiYgZzMsCi0gICAgICBjb25zdCBQYXJhbUdlbmVyYXRv
cjxUND4mIGc0LCBjb25zdCBQYXJhbUdlbmVyYXRvcjxUNT4mIGc1LAotICAgICAgY29uc3QgUGFy
YW1HZW5lcmF0b3I8VDY+JiBnNiwgY29uc3QgUGFyYW1HZW5lcmF0b3I8VDc+JiBnNywKLSAgICAg
IGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ4PiYgZzgsIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ5PiYg
ZzksCi0gICAgICBjb25zdCBQYXJhbUdlbmVyYXRvcjxUMTA+JiBnMTApCi0gICAgICA6IGcxXyhn
MSksIGcyXyhnMiksIGczXyhnMyksIGc0XyhnNCksIGc1XyhnNSksIGc2XyhnNiksIGc3XyhnNyks
IGc4XyhnOCksCi0gICAgICAgICAgZzlfKGc5KSwgZzEwXyhnMTApIHt9Ci0gIHZpcnR1YWwgfkNh
cnRlc2lhblByb2R1Y3RHZW5lcmF0b3IxMCgpIHt9Ci0KLSAgdmlydHVhbCBQYXJhbUl0ZXJhdG9y
SW50ZXJmYWNlPFBhcmFtVHlwZT4qIEJlZ2luKCkgY29uc3QgewotICAgIHJldHVybiBuZXcgSXRl
cmF0b3IodGhpcywgZzFfLCBnMV8uYmVnaW4oKSwgZzJfLCBnMl8uYmVnaW4oKSwgZzNfLAotICAg
ICAgICBnM18uYmVnaW4oKSwgZzRfLCBnNF8uYmVnaW4oKSwgZzVfLCBnNV8uYmVnaW4oKSwgZzZf
LCBnNl8uYmVnaW4oKSwgZzdfLAotICAgICAgICBnN18uYmVnaW4oKSwgZzhfLCBnOF8uYmVnaW4o
KSwgZzlfLCBnOV8uYmVnaW4oKSwgZzEwXywgZzEwXy5iZWdpbigpKTsKLSAgfQotICB2aXJ0dWFs
IFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogRW5kKCkgY29uc3QgewotICAgIHJl
dHVybiBuZXcgSXRlcmF0b3IodGhpcywgZzFfLCBnMV8uZW5kKCksIGcyXywgZzJfLmVuZCgpLCBn
M18sIGczXy5lbmQoKSwKLSAgICAgICAgZzRfLCBnNF8uZW5kKCksIGc1XywgZzVfLmVuZCgpLCBn
Nl8sIGc2Xy5lbmQoKSwgZzdfLCBnN18uZW5kKCksIGc4XywKLSAgICAgICAgZzhfLmVuZCgpLCBn
OV8sIGc5Xy5lbmQoKSwgZzEwXywgZzEwXy5lbmQoKSk7Ci0gIH0KLQotIHByaXZhdGU6Ci0gIGNs
YXNzIEl0ZXJhdG9yIDogcHVibGljIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiB7
Ci0gICBwdWJsaWM6Ci0gICAgSXRlcmF0b3IoY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8
UGFyYW1UeXBlPiogYmFzZSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQxPiYgZzEsCi0g
ICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMT46Oml0ZXJhdG9yJiBjdXJyZW50
MSwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQyPiYgZzIsCi0gICAgICBjb25zdCB0eXBl
bmFtZSBQYXJhbUdlbmVyYXRvcjxUMj46Oml0ZXJhdG9yJiBjdXJyZW50MiwKLSAgICAgIGNvbnN0
IFBhcmFtR2VuZXJhdG9yPFQzPiYgZzMsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVy
YXRvcjxUMz46Oml0ZXJhdG9yJiBjdXJyZW50MywKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9y
PFQ0PiYgZzQsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUND46Oml0ZXJh
dG9yJiBjdXJyZW50NCwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ1PiYgZzUsCi0gICAg
ICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNT46Oml0ZXJhdG9yJiBjdXJyZW50NSwK
LSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ2PiYgZzYsCi0gICAgICBjb25zdCB0eXBlbmFt
ZSBQYXJhbUdlbmVyYXRvcjxUNj46Oml0ZXJhdG9yJiBjdXJyZW50NiwKLSAgICAgIGNvbnN0IFBh
cmFtR2VuZXJhdG9yPFQ3PiYgZzcsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRv
cjxUNz46Oml0ZXJhdG9yJiBjdXJyZW50NywKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ4
PiYgZzgsCi0gICAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUOD46Oml0ZXJhdG9y
JiBjdXJyZW50OCwKLSAgICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ5PiYgZzksCi0gICAgICBj
b25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUOT46Oml0ZXJhdG9yJiBjdXJyZW50OSwKLSAg
ICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQxMD4mIGcxMCwKLSAgICAgIGNvbnN0IHR5cGVuYW1l
IFBhcmFtR2VuZXJhdG9yPFQxMD46Oml0ZXJhdG9yJiBjdXJyZW50MTApCi0gICAgICAgIDogYmFz
ZV8oYmFzZSksCi0gICAgICAgICAgYmVnaW4xXyhnMS5iZWdpbigpKSwgZW5kMV8oZzEuZW5kKCkp
LCBjdXJyZW50MV8oY3VycmVudDEpLAotICAgICAgICAgIGJlZ2luMl8oZzIuYmVnaW4oKSksIGVu
ZDJfKGcyLmVuZCgpKSwgY3VycmVudDJfKGN1cnJlbnQyKSwKLSAgICAgICAgICBiZWdpbjNfKGcz
LmJlZ2luKCkpLCBlbmQzXyhnMy5lbmQoKSksIGN1cnJlbnQzXyhjdXJyZW50MyksCi0gICAgICAg
ICAgYmVnaW40XyhnNC5iZWdpbigpKSwgZW5kNF8oZzQuZW5kKCkpLCBjdXJyZW50NF8oY3VycmVu
dDQpLAotICAgICAgICAgIGJlZ2luNV8oZzUuYmVnaW4oKSksIGVuZDVfKGc1LmVuZCgpKSwgY3Vy
cmVudDVfKGN1cnJlbnQ1KSwKLSAgICAgICAgICBiZWdpbjZfKGc2LmJlZ2luKCkpLCBlbmQ2Xyhn
Ni5lbmQoKSksIGN1cnJlbnQ2XyhjdXJyZW50NiksCi0gICAgICAgICAgYmVnaW43XyhnNy5iZWdp
bigpKSwgZW5kN18oZzcuZW5kKCkpLCBjdXJyZW50N18oY3VycmVudDcpLAotICAgICAgICAgIGJl
Z2luOF8oZzguYmVnaW4oKSksIGVuZDhfKGc4LmVuZCgpKSwgY3VycmVudDhfKGN1cnJlbnQ4KSwK
LSAgICAgICAgICBiZWdpbjlfKGc5LmJlZ2luKCkpLCBlbmQ5XyhnOS5lbmQoKSksIGN1cnJlbnQ5
XyhjdXJyZW50OSksCi0gICAgICAgICAgYmVnaW4xMF8oZzEwLmJlZ2luKCkpLCBlbmQxMF8oZzEw
LmVuZCgpKSwgY3VycmVudDEwXyhjdXJyZW50MTApICAgIHsKLSAgICAgIENvbXB1dGVDdXJyZW50
VmFsdWUoKTsKLSAgICB9Ci0gICAgdmlydHVhbCB+SXRlcmF0b3IoKSB7fQotCi0gICAgdmlydHVh
bCBjb25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+KiBCYXNlR2VuZXJhdG9y
KCkgY29uc3QgewotICAgICAgcmV0dXJuIGJhc2VfOwotICAgIH0KLSAgICAvLyBBZHZhbmNlIHNo
b3VsZCBub3QgYmUgY2FsbGVkIG9uIGJleW9uZC1vZi1yYW5nZSBpdGVyYXRvcnMKLSAgICAvLyBz
byBubyBjb21wb25lbnQgaXRlcmF0b3JzIG11c3QgYmUgYmV5b25kIGVuZCBvZiByYW5nZSwgZWl0
aGVyLgotICAgIHZpcnR1YWwgdm9pZCBBZHZhbmNlKCkgewotICAgICAgYXNzZXJ0KCFBdEVuZCgp
KTsKLSAgICAgICsrY3VycmVudDEwXzsKLSAgICAgIGlmIChjdXJyZW50MTBfID09IGVuZDEwXykg
ewotICAgICAgICBjdXJyZW50MTBfID0gYmVnaW4xMF87Ci0gICAgICAgICsrY3VycmVudDlfOwot
ICAgICAgfQotICAgICAgaWYgKGN1cnJlbnQ5XyA9PSBlbmQ5XykgewotICAgICAgICBjdXJyZW50
OV8gPSBiZWdpbjlfOwotICAgICAgICArK2N1cnJlbnQ4XzsKLSAgICAgIH0KLSAgICAgIGlmIChj
dXJyZW50OF8gPT0gZW5kOF8pIHsKLSAgICAgICAgY3VycmVudDhfID0gYmVnaW44XzsKLSAgICAg
ICAgKytjdXJyZW50N187Ci0gICAgICB9Ci0gICAgICBpZiAoY3VycmVudDdfID09IGVuZDdfKSB7
Ci0gICAgICAgIGN1cnJlbnQ3XyA9IGJlZ2luN187Ci0gICAgICAgICsrY3VycmVudDZfOwotICAg
ICAgfQotICAgICAgaWYgKGN1cnJlbnQ2XyA9PSBlbmQ2XykgewotICAgICAgICBjdXJyZW50Nl8g
PSBiZWdpbjZfOwotICAgICAgICArK2N1cnJlbnQ1XzsKLSAgICAgIH0KLSAgICAgIGlmIChjdXJy
ZW50NV8gPT0gZW5kNV8pIHsKLSAgICAgICAgY3VycmVudDVfID0gYmVnaW41XzsKLSAgICAgICAg
KytjdXJyZW50NF87Ci0gICAgICB9Ci0gICAgICBpZiAoY3VycmVudDRfID09IGVuZDRfKSB7Ci0g
ICAgICAgIGN1cnJlbnQ0XyA9IGJlZ2luNF87Ci0gICAgICAgICsrY3VycmVudDNfOwotICAgICAg
fQotICAgICAgaWYgKGN1cnJlbnQzXyA9PSBlbmQzXykgewotICAgICAgICBjdXJyZW50M18gPSBi
ZWdpbjNfOwotICAgICAgICArK2N1cnJlbnQyXzsKLSAgICAgIH0KLSAgICAgIGlmIChjdXJyZW50
Ml8gPT0gZW5kMl8pIHsKLSAgICAgICAgY3VycmVudDJfID0gYmVnaW4yXzsKLSAgICAgICAgKytj
dXJyZW50MV87Ci0gICAgICB9Ci0gICAgICBDb21wdXRlQ3VycmVudFZhbHVlKCk7Ci0gICAgfQot
ICAgIHZpcnR1YWwgUGFyYW1JdGVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+KiBDbG9uZSgpIGNv
bnN0IHsKLSAgICAgIHJldHVybiBuZXcgSXRlcmF0b3IoKnRoaXMpOwotICAgIH0KLSAgICB2aXJ0
dWFsIGNvbnN0IFBhcmFtVHlwZSogQ3VycmVudCgpIGNvbnN0IHsgcmV0dXJuIGN1cnJlbnRfdmFs
dWVfLmdldCgpOyB9Ci0gICAgdmlydHVhbCBib29sIEVxdWFscyhjb25zdCBQYXJhbUl0ZXJhdG9y
SW50ZXJmYWNlPFBhcmFtVHlwZT4mIG90aGVyKSBjb25zdCB7Ci0gICAgICAvLyBIYXZpbmcgdGhl
IHNhbWUgYmFzZSBnZW5lcmF0b3IgZ3VhcmFudGVlcyB0aGF0IHRoZSBvdGhlcgotICAgICAgLy8g
aXRlcmF0b3IgaXMgb2YgdGhlIHNhbWUgdHlwZSBhbmQgd2UgY2FuIGRvd25jYXN0LgotICAgICAg
R1RFU1RfQ0hFQ0tfKEJhc2VHZW5lcmF0b3IoKSA9PSBvdGhlci5CYXNlR2VuZXJhdG9yKCkpCi0g
ICAgICAgICAgPDwgIlRoZSBwcm9ncmFtIGF0dGVtcHRlZCB0byBjb21wYXJlIGl0ZXJhdG9ycyAi
Ci0gICAgICAgICAgPDwgImZyb20gZGlmZmVyZW50IGdlbmVyYXRvcnMuIiA8PCBzdGQ6OmVuZGw7
Ci0gICAgICBjb25zdCBJdGVyYXRvciogdHlwZWRfb3RoZXIgPQotICAgICAgICAgIENoZWNrZWRE
b3duY2FzdFRvQWN0dWFsVHlwZTxjb25zdCBJdGVyYXRvcj4oJm90aGVyKTsKLSAgICAgIC8vIFdl
IG11c3QgcmVwb3J0IGl0ZXJhdG9ycyBlcXVhbCBpZiB0aGV5IGJvdGggcG9pbnQgYmV5b25kIHRo
ZWlyCi0gICAgICAvLyByZXNwZWN0aXZlIHJhbmdlcy4gVGhhdCBjYW4gaGFwcGVuIGluIGEgdmFy
aWV0eSBvZiBmYXNoaW9ucywKLSAgICAgIC8vIHNvIHdlIGhhdmUgdG8gY29uc3VsdCBBdEVuZCgp
LgotICAgICAgcmV0dXJuIChBdEVuZCgpICYmIHR5cGVkX290aGVyLT5BdEVuZCgpKSB8fAotICAg
ICAgICAgKAotICAgICAgICAgIGN1cnJlbnQxXyA9PSB0eXBlZF9vdGhlci0+Y3VycmVudDFfICYm
Ci0gICAgICAgICAgY3VycmVudDJfID09IHR5cGVkX290aGVyLT5jdXJyZW50Ml8gJiYKLSAgICAg
ICAgICBjdXJyZW50M18gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQzXyAmJgotICAgICAgICAgIGN1
cnJlbnQ0XyA9PSB0eXBlZF9vdGhlci0+Y3VycmVudDRfICYmCi0gICAgICAgICAgY3VycmVudDVf
ID09IHR5cGVkX290aGVyLT5jdXJyZW50NV8gJiYKLSAgICAgICAgICBjdXJyZW50Nl8gPT0gdHlw
ZWRfb3RoZXItPmN1cnJlbnQ2XyAmJgotICAgICAgICAgIGN1cnJlbnQ3XyA9PSB0eXBlZF9vdGhl
ci0+Y3VycmVudDdfICYmCi0gICAgICAgICAgY3VycmVudDhfID09IHR5cGVkX290aGVyLT5jdXJy
ZW50OF8gJiYKLSAgICAgICAgICBjdXJyZW50OV8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQ5XyAm
JgotICAgICAgICAgIGN1cnJlbnQxMF8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQxMF8pOwotICAg
IH0KLQotICAgcHJpdmF0ZToKLSAgICBJdGVyYXRvcihjb25zdCBJdGVyYXRvciYgb3RoZXIpCi0g
ICAgICAgIDogYmFzZV8ob3RoZXIuYmFzZV8pLAotICAgICAgICBiZWdpbjFfKG90aGVyLmJlZ2lu
MV8pLAotICAgICAgICBlbmQxXyhvdGhlci5lbmQxXyksCi0gICAgICAgIGN1cnJlbnQxXyhvdGhl
ci5jdXJyZW50MV8pLAotICAgICAgICBiZWdpbjJfKG90aGVyLmJlZ2luMl8pLAotICAgICAgICBl
bmQyXyhvdGhlci5lbmQyXyksCi0gICAgICAgIGN1cnJlbnQyXyhvdGhlci5jdXJyZW50Ml8pLAot
ICAgICAgICBiZWdpbjNfKG90aGVyLmJlZ2luM18pLAotICAgICAgICBlbmQzXyhvdGhlci5lbmQz
XyksCi0gICAgICAgIGN1cnJlbnQzXyhvdGhlci5jdXJyZW50M18pLAotICAgICAgICBiZWdpbjRf
KG90aGVyLmJlZ2luNF8pLAotICAgICAgICBlbmQ0XyhvdGhlci5lbmQ0XyksCi0gICAgICAgIGN1
cnJlbnQ0XyhvdGhlci5jdXJyZW50NF8pLAotICAgICAgICBiZWdpbjVfKG90aGVyLmJlZ2luNV8p
LAotICAgICAgICBlbmQ1XyhvdGhlci5lbmQ1XyksCi0gICAgICAgIGN1cnJlbnQ1XyhvdGhlci5j
dXJyZW50NV8pLAotICAgICAgICBiZWdpbjZfKG90aGVyLmJlZ2luNl8pLAotICAgICAgICBlbmQ2
XyhvdGhlci5lbmQ2XyksCi0gICAgICAgIGN1cnJlbnQ2XyhvdGhlci5jdXJyZW50Nl8pLAotICAg
ICAgICBiZWdpbjdfKG90aGVyLmJlZ2luN18pLAotICAgICAgICBlbmQ3XyhvdGhlci5lbmQ3Xyks
Ci0gICAgICAgIGN1cnJlbnQ3XyhvdGhlci5jdXJyZW50N18pLAotICAgICAgICBiZWdpbjhfKG90
aGVyLmJlZ2luOF8pLAotICAgICAgICBlbmQ4XyhvdGhlci5lbmQ4XyksCi0gICAgICAgIGN1cnJl
bnQ4XyhvdGhlci5jdXJyZW50OF8pLAotICAgICAgICBiZWdpbjlfKG90aGVyLmJlZ2luOV8pLAot
ICAgICAgICBlbmQ5XyhvdGhlci5lbmQ5XyksCi0gICAgICAgIGN1cnJlbnQ5XyhvdGhlci5jdXJy
ZW50OV8pLAotICAgICAgICBiZWdpbjEwXyhvdGhlci5iZWdpbjEwXyksCi0gICAgICAgIGVuZDEw
XyhvdGhlci5lbmQxMF8pLAotICAgICAgICBjdXJyZW50MTBfKG90aGVyLmN1cnJlbnQxMF8pIHsK
LSAgICAgIENvbXB1dGVDdXJyZW50VmFsdWUoKTsKLSAgICB9Ci0KLSAgICB2b2lkIENvbXB1dGVD
dXJyZW50VmFsdWUoKSB7Ci0gICAgICBpZiAoIUF0RW5kKCkpCi0gICAgICAgIGN1cnJlbnRfdmFs
dWVfLnJlc2V0KG5ldyBQYXJhbVR5cGUoKmN1cnJlbnQxXywgKmN1cnJlbnQyXywgKmN1cnJlbnQz
XywKLSAgICAgICAgICAgICpjdXJyZW50NF8sICpjdXJyZW50NV8sICpjdXJyZW50Nl8sICpjdXJy
ZW50N18sICpjdXJyZW50OF8sCi0gICAgICAgICAgICAqY3VycmVudDlfLCAqY3VycmVudDEwXykp
OwotICAgIH0KLSAgICBib29sIEF0RW5kKCkgY29uc3QgewotICAgICAgLy8gV2UgbXVzdCByZXBv
cnQgaXRlcmF0b3IgcGFzdCB0aGUgZW5kIG9mIHRoZSByYW5nZSB3aGVuIGVpdGhlciBvZiB0aGUK
LSAgICAgIC8vIGNvbXBvbmVudCBpdGVyYXRvcnMgaGFzIHJlYWNoZWQgdGhlIGVuZCBvZiBpdHMg
cmFuZ2UuCi0gICAgICByZXR1cm4KLSAgICAgICAgICBjdXJyZW50MV8gPT0gZW5kMV8gfHwKLSAg
ICAgICAgICBjdXJyZW50Ml8gPT0gZW5kMl8gfHwKLSAgICAgICAgICBjdXJyZW50M18gPT0gZW5k
M18gfHwKLSAgICAgICAgICBjdXJyZW50NF8gPT0gZW5kNF8gfHwKLSAgICAgICAgICBjdXJyZW50
NV8gPT0gZW5kNV8gfHwKLSAgICAgICAgICBjdXJyZW50Nl8gPT0gZW5kNl8gfHwKLSAgICAgICAg
ICBjdXJyZW50N18gPT0gZW5kN18gfHwKLSAgICAgICAgICBjdXJyZW50OF8gPT0gZW5kOF8gfHwK
LSAgICAgICAgICBjdXJyZW50OV8gPT0gZW5kOV8gfHwKLSAgICAgICAgICBjdXJyZW50MTBfID09
IGVuZDEwXzsKLSAgICB9Ci0KLSAgICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQg
aXMgdW5zdXBwb3J0ZWQuCi0gICAgdm9pZCBvcGVyYXRvcj0oY29uc3QgSXRlcmF0b3ImIG90aGVy
KTsKLQotICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIGNvbnN0
IGJhc2VfOwotICAgIC8vIGJlZ2luW2ldXyBhbmQgZW5kW2ldXyBkZWZpbmUgdGhlIGktdGggcmFu
Z2UgdGhhdCBJdGVyYXRvciB0cmF2ZXJzZXMuCi0gICAgLy8gY3VycmVudFtpXV8gaXMgdGhlIGFj
dHVhbCB0cmF2ZXJzaW5nIGl0ZXJhdG9yLgotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJh
dG9yPFQxPjo6aXRlcmF0b3IgYmVnaW4xXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVy
YXRvcjxUMT46Oml0ZXJhdG9yIGVuZDFfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQx
Pjo6aXRlcmF0b3IgY3VycmVudDFfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9y
PFQyPjo6aXRlcmF0b3IgYmVnaW4yXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRv
cjxUMj46Oml0ZXJhdG9yIGVuZDJfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQyPjo6
aXRlcmF0b3IgY3VycmVudDJfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQz
Pjo6aXRlcmF0b3IgYmVnaW4zXzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxU
Mz46Oml0ZXJhdG9yIGVuZDNfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQzPjo6aXRl
cmF0b3IgY3VycmVudDNfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ0Pjo6
aXRlcmF0b3IgYmVnaW40XzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUND46
Oml0ZXJhdG9yIGVuZDRfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ0Pjo6aXRlcmF0
b3IgY3VycmVudDRfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ1Pjo6aXRl
cmF0b3IgYmVnaW41XzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNT46Oml0
ZXJhdG9yIGVuZDVfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ1Pjo6aXRlcmF0b3Ig
Y3VycmVudDVfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ2Pjo6aXRlcmF0
b3IgYmVnaW42XzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNj46Oml0ZXJh
dG9yIGVuZDZfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ2Pjo6aXRlcmF0b3IgY3Vy
cmVudDZfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ3Pjo6aXRlcmF0b3Ig
YmVnaW43XzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUNz46Oml0ZXJhdG9y
IGVuZDdfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ3Pjo6aXRlcmF0b3IgY3VycmVu
dDdfOwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ4Pjo6aXRlcmF0b3IgYmVn
aW44XzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUOD46Oml0ZXJhdG9yIGVu
ZDhfOwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ4Pjo6aXRlcmF0b3IgY3VycmVudDhf
OwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ5Pjo6aXRlcmF0b3IgYmVnaW45
XzsKLSAgICBjb25zdCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUOT46Oml0ZXJhdG9yIGVuZDlf
OwotICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ5Pjo6aXRlcmF0b3IgY3VycmVudDlfOwot
ICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQxMD46Oml0ZXJhdG9yIGJlZ2luMTBf
OwotICAgIGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQxMD46Oml0ZXJhdG9yIGVuZDEw
XzsKLSAgICB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUMTA+OjppdGVyYXRvciBjdXJyZW50MTBf
OwotICAgIGxpbmtlZF9wdHI8UGFyYW1UeXBlPiBjdXJyZW50X3ZhbHVlXzsKLSAgfTsgIC8vIGNs
YXNzIENhcnRlc2lhblByb2R1Y3RHZW5lcmF0b3IxMDo6SXRlcmF0b3IKLQotICAvLyBObyBpbXBs
ZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9
KGNvbnN0IENhcnRlc2lhblByb2R1Y3RHZW5lcmF0b3IxMCYgb3RoZXIpOwotCi0gIGNvbnN0IFBh
cmFtR2VuZXJhdG9yPFQxPiBnMV87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQyPiBnMl87Ci0g
IGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQzPiBnM187Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ0
PiBnNF87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ1PiBnNV87Ci0gIGNvbnN0IFBhcmFtR2Vu
ZXJhdG9yPFQ2PiBnNl87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ3PiBnN187Ci0gIGNvbnN0
IFBhcmFtR2VuZXJhdG9yPFQ4PiBnOF87Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQ5PiBnOV87
Ci0gIGNvbnN0IFBhcmFtR2VuZXJhdG9yPFQxMD4gZzEwXzsKLX07ICAvLyBjbGFzcyBDYXJ0ZXNp
YW5Qcm9kdWN0R2VuZXJhdG9yMTAKLQotCi0vLyBJTlRFUk5BTCBJTVBMRU1FTlRBVElPTiAtIERP
IE5PVCBVU0UgSU4gVVNFUiBDT0RFLgotLy8KLS8vIEhlbHBlciBjbGFzc2VzIHByb3ZpZGluZyBD
b21iaW5lKCkgd2l0aCBwb2x5bW9ycGhpYyBmZWF0dXJlcy4gVGhleSBhbGxvdwotLy8gY2FzdGlu
ZyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yTjxUPiB0byBQYXJhbUdlbmVyYXRvcjxVPiBpZiBU
IGlzCi0vLyBjb252ZXJ0aWJsZSB0byBVLgotLy8KLXRlbXBsYXRlIDxjbGFzcyBHZW5lcmF0b3Ix
LCBjbGFzcyBHZW5lcmF0b3IyPgotY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEhvbGRlcjIgewotIHB1
YmxpYzoKLUNhcnRlc2lhblByb2R1Y3RIb2xkZXIyKGNvbnN0IEdlbmVyYXRvcjEmIGcxLCBjb25z
dCBHZW5lcmF0b3IyJiBnMikKLSAgICAgIDogZzFfKGcxKSwgZzJfKGcyKSB7fQotICB0ZW1wbGF0
ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyPgotICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjwg
Ojp0ZXN0aW5nOjp0dXBsZTxUMSwgVDI+ID4oKSBjb25zdCB7Ci0gICAgcmV0dXJuIFBhcmFtR2Vu
ZXJhdG9yPCA6OnRlc3Rpbmc6OnR1cGxlPFQxLCBUMj4gPigKLSAgICAgICAgbmV3IENhcnRlc2lh
blByb2R1Y3RHZW5lcmF0b3IyPFQxLCBUMj4oCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2Vu
ZXJhdG9yPFQxPiA+KGcxXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQy
PiA+KGcyXykpKTsKLSAgfQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBh
c3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBDYXJ0ZXNp
YW5Qcm9kdWN0SG9sZGVyMiYgb3RoZXIpOwotCi0gIGNvbnN0IEdlbmVyYXRvcjEgZzFfOwotICBj
b25zdCBHZW5lcmF0b3IyIGcyXzsKLX07ICAvLyBjbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVy
MgotCi10ZW1wbGF0ZSA8Y2xhc3MgR2VuZXJhdG9yMSwgY2xhc3MgR2VuZXJhdG9yMiwgY2xhc3Mg
R2VuZXJhdG9yMz4KLWNsYXNzIENhcnRlc2lhblByb2R1Y3RIb2xkZXIzIHsKLSBwdWJsaWM6Ci1D
YXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyMyhjb25zdCBHZW5lcmF0b3IxJiBnMSwgY29uc3QgR2VuZXJh
dG9yMiYgZzIsCi0gICAgY29uc3QgR2VuZXJhdG9yMyYgZzMpCi0gICAgICA6IGcxXyhnMSksIGcy
XyhnMiksIGczXyhnMykge30KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwg
dHlwZW5hbWUgVDM+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPCA6OnRlc3Rpbmc6OnR1cGxl
PFQxLCBUMiwgVDM+ID4oKSBjb25zdCB7Ci0gICAgcmV0dXJuIFBhcmFtR2VuZXJhdG9yPCA6OnRl
c3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDM+ID4oCi0gICAgICAgIG5ldyBDYXJ0ZXNpYW5Qcm9kdWN0
R2VuZXJhdG9yMzxUMSwgVDIsIFQzPigKLSAgICAgICAgc3RhdGljX2Nhc3Q8UGFyYW1HZW5lcmF0
b3I8VDE+ID4oZzFfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8UGFyYW1HZW5lcmF0b3I8VDI+ID4o
ZzJfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8UGFyYW1HZW5lcmF0b3I8VDM+ID4oZzNfKSkpOwot
ICB9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMg
dW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IENhcnRlc2lhblByb2R1Y3RIb2xk
ZXIzJiBvdGhlcik7Ci0KLSAgY29uc3QgR2VuZXJhdG9yMSBnMV87Ci0gIGNvbnN0IEdlbmVyYXRv
cjIgZzJfOwotICBjb25zdCBHZW5lcmF0b3IzIGczXzsKLX07ICAvLyBjbGFzcyBDYXJ0ZXNpYW5Q
cm9kdWN0SG9sZGVyMwotCi10ZW1wbGF0ZSA8Y2xhc3MgR2VuZXJhdG9yMSwgY2xhc3MgR2VuZXJh
dG9yMiwgY2xhc3MgR2VuZXJhdG9yMywKLSAgICBjbGFzcyBHZW5lcmF0b3I0PgotY2xhc3MgQ2Fy
dGVzaWFuUHJvZHVjdEhvbGRlcjQgewotIHB1YmxpYzoKLUNhcnRlc2lhblByb2R1Y3RIb2xkZXI0
KGNvbnN0IEdlbmVyYXRvcjEmIGcxLCBjb25zdCBHZW5lcmF0b3IyJiBnMiwKLSAgICBjb25zdCBH
ZW5lcmF0b3IzJiBnMywgY29uc3QgR2VuZXJhdG9yNCYgZzQpCi0gICAgICA6IGcxXyhnMSksIGcy
XyhnMiksIGczXyhnMyksIGc0XyhnNCkge30KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBl
bmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0PgotICBvcGVyYXRvciBQYXJhbUdlbmVy
YXRvcjwgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUND4gPigpIGNvbnN0IHsKLSAgICBy
ZXR1cm4gUGFyYW1HZW5lcmF0b3I8IDo6dGVzdGluZzo6dHVwbGU8VDEsIFQyLCBUMywgVDQ+ID4o
Ci0gICAgICAgIG5ldyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNDxUMSwgVDIsIFQzLCBUND4o
Ci0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQxPiA+KGcxXyksCi0gICAgICAg
IHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQyPiA+KGcyXyksCi0gICAgICAgIHN0YXRpY19j
YXN0PFBhcmFtR2VuZXJhdG9yPFQzPiA+KGczXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFt
R2VuZXJhdG9yPFQ0PiA+KGc0XykpKTsKLSAgfQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVt
ZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShj
b25zdCBDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyNCYgb3RoZXIpOwotCi0gIGNvbnN0IEdlbmVyYXRv
cjEgZzFfOwotICBjb25zdCBHZW5lcmF0b3IyIGcyXzsKLSAgY29uc3QgR2VuZXJhdG9yMyBnM187
Ci0gIGNvbnN0IEdlbmVyYXRvcjQgZzRfOwotfTsgIC8vIGNsYXNzIENhcnRlc2lhblByb2R1Y3RI
b2xkZXI0Ci0KLXRlbXBsYXRlIDxjbGFzcyBHZW5lcmF0b3IxLCBjbGFzcyBHZW5lcmF0b3IyLCBj
bGFzcyBHZW5lcmF0b3IzLAotICAgIGNsYXNzIEdlbmVyYXRvcjQsIGNsYXNzIEdlbmVyYXRvcjU+
Ci1jbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyNSB7Ci0gcHVibGljOgotQ2FydGVzaWFuUHJv
ZHVjdEhvbGRlcjUoY29uc3QgR2VuZXJhdG9yMSYgZzEsIGNvbnN0IEdlbmVyYXRvcjImIGcyLAot
ICAgIGNvbnN0IEdlbmVyYXRvcjMmIGczLCBjb25zdCBHZW5lcmF0b3I0JiBnNCwgY29uc3QgR2Vu
ZXJhdG9yNSYgZzUpCi0gICAgICA6IGcxXyhnMSksIGcyXyhnMiksIGczXyhnMyksIGc0XyhnNCks
IGc1XyhnNSkge30KLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5h
bWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNT4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0
b3I8IDo6dGVzdGluZzo6dHVwbGU8VDEsIFQyLCBUMywgVDQsIFQ1PiA+KCkgY29uc3QgewotICAg
IHJldHVybiBQYXJhbUdlbmVyYXRvcjwgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUNCwg
VDU+ID4oCi0gICAgICAgIG5ldyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNTxUMSwgVDIsIFQz
LCBUNCwgVDU+KAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUMT4gPihnMV8p
LAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUMj4gPihnMl8pLAotICAgICAg
ICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUMz4gPihnM18pLAotICAgICAgICBzdGF0aWNf
Y2FzdDxQYXJhbUdlbmVyYXRvcjxUND4gPihnNF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJh
bUdlbmVyYXRvcjxUNT4gPihnNV8pKSk7Ci0gIH0KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxl
bWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0o
Y29uc3QgQ2FydGVzaWFuUHJvZHVjdEhvbGRlcjUmIG90aGVyKTsKLQotICBjb25zdCBHZW5lcmF0
b3IxIGcxXzsKLSAgY29uc3QgR2VuZXJhdG9yMiBnMl87Ci0gIGNvbnN0IEdlbmVyYXRvcjMgZzNf
OwotICBjb25zdCBHZW5lcmF0b3I0IGc0XzsKLSAgY29uc3QgR2VuZXJhdG9yNSBnNV87Ci19OyAg
Ly8gY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEhvbGRlcjUKLQotdGVtcGxhdGUgPGNsYXNzIEdlbmVy
YXRvcjEsIGNsYXNzIEdlbmVyYXRvcjIsIGNsYXNzIEdlbmVyYXRvcjMsCi0gICAgY2xhc3MgR2Vu
ZXJhdG9yNCwgY2xhc3MgR2VuZXJhdG9yNSwgY2xhc3MgR2VuZXJhdG9yNj4KLWNsYXNzIENhcnRl
c2lhblByb2R1Y3RIb2xkZXI2IHsKLSBwdWJsaWM6Ci1DYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyNihj
b25zdCBHZW5lcmF0b3IxJiBnMSwgY29uc3QgR2VuZXJhdG9yMiYgZzIsCi0gICAgY29uc3QgR2Vu
ZXJhdG9yMyYgZzMsIGNvbnN0IEdlbmVyYXRvcjQmIGc0LCBjb25zdCBHZW5lcmF0b3I1JiBnNSwK
LSAgICBjb25zdCBHZW5lcmF0b3I2JiBnNikKLSAgICAgIDogZzFfKGcxKSwgZzJfKGcyKSwgZzNf
KGczKSwgZzRfKGc0KSwgZzVfKGc1KSwgZzZfKGc2KSB7fQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUg
VDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAot
ICAgICAgdHlwZW5hbWUgVDY+Ci0gIG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPCA6OnRlc3Rpbmc6
OnR1cGxlPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDY+ID4oKSBjb25zdCB7Ci0gICAgcmV0dXJuIFBh
cmFtR2VuZXJhdG9yPCA6OnRlc3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDY+ID4o
Ci0gICAgICAgIG5ldyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yNjxUMSwgVDIsIFQzLCBUNCwg
VDUsIFQ2PigKLSAgICAgICAgc3RhdGljX2Nhc3Q8UGFyYW1HZW5lcmF0b3I8VDE+ID4oZzFfKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8UGFyYW1HZW5lcmF0b3I8VDI+ID4oZzJfKSwKLSAgICAgICAg
c3RhdGljX2Nhc3Q8UGFyYW1HZW5lcmF0b3I8VDM+ID4oZzNfKSwKLSAgICAgICAgc3RhdGljX2Nh
c3Q8UGFyYW1HZW5lcmF0b3I8VDQ+ID4oZzRfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8UGFyYW1H
ZW5lcmF0b3I8VDU+ID4oZzVfKSwKLSAgICAgICAgc3RhdGljX2Nhc3Q8UGFyYW1HZW5lcmF0b3I8
VDY+ID4oZzZfKSkpOwotICB9Ci0KLSBwcml2YXRlOgotICAvLyBObyBpbXBsZW1lbnRhdGlvbiAt
IGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3BlcmF0b3I9KGNvbnN0IENhcnRl
c2lhblByb2R1Y3RIb2xkZXI2JiBvdGhlcik7Ci0KLSAgY29uc3QgR2VuZXJhdG9yMSBnMV87Ci0g
IGNvbnN0IEdlbmVyYXRvcjIgZzJfOwotICBjb25zdCBHZW5lcmF0b3IzIGczXzsKLSAgY29uc3Qg
R2VuZXJhdG9yNCBnNF87Ci0gIGNvbnN0IEdlbmVyYXRvcjUgZzVfOwotICBjb25zdCBHZW5lcmF0
b3I2IGc2XzsKLX07ICAvLyBjbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyNgotCi10ZW1wbGF0
ZSA8Y2xhc3MgR2VuZXJhdG9yMSwgY2xhc3MgR2VuZXJhdG9yMiwgY2xhc3MgR2VuZXJhdG9yMywK
LSAgICBjbGFzcyBHZW5lcmF0b3I0LCBjbGFzcyBHZW5lcmF0b3I1LCBjbGFzcyBHZW5lcmF0b3I2
LCBjbGFzcyBHZW5lcmF0b3I3PgotY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEhvbGRlcjcgewotIHB1
YmxpYzoKLUNhcnRlc2lhblByb2R1Y3RIb2xkZXI3KGNvbnN0IEdlbmVyYXRvcjEmIGcxLCBjb25z
dCBHZW5lcmF0b3IyJiBnMiwKLSAgICBjb25zdCBHZW5lcmF0b3IzJiBnMywgY29uc3QgR2VuZXJh
dG9yNCYgZzQsIGNvbnN0IEdlbmVyYXRvcjUmIGc1LAotICAgIGNvbnN0IEdlbmVyYXRvcjYmIGc2
LCBjb25zdCBHZW5lcmF0b3I3JiBnNykKLSAgICAgIDogZzFfKGcxKSwgZzJfKGcyKSwgZzNfKGcz
KSwgZzRfKGc0KSwgZzVfKGc1KSwgZzZfKGc2KSwgZzdfKGc3KSB7fQotICB0ZW1wbGF0ZSA8dHlw
ZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1l
IFQ1LAotICAgICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3PgotICBvcGVyYXRvciBQYXJhbUdl
bmVyYXRvcjwgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LAotICAgICAg
VDc+ID4oKSBjb25zdCB7Ci0gICAgcmV0dXJuIFBhcmFtR2VuZXJhdG9yPCA6OnRlc3Rpbmc6OnR1
cGxlPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3PiA+KAotICAgICAgICBuZXcgQ2FydGVzaWFu
UHJvZHVjdEdlbmVyYXRvcjc8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDc+KAotICAgICAgICBz
dGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUMT4gPihnMV8pLAotICAgICAgICBzdGF0aWNfY2Fz
dDxQYXJhbUdlbmVyYXRvcjxUMj4gPihnMl8pLAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdl
bmVyYXRvcjxUMz4gPihnM18pLAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxU
ND4gPihnNF8pLAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUNT4gPihnNV8p
LAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUNj4gPihnNl8pLAotICAgICAg
ICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUNz4gPihnN18pKSk7Ci0gIH0KLQotIHByaXZh
dGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdubWVudCBpcyB1bnN1cHBvcnRlZC4K
LSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgQ2FydGVzaWFuUHJvZHVjdEhvbGRlcjcmIG90aGVyKTsK
LQotICBjb25zdCBHZW5lcmF0b3IxIGcxXzsKLSAgY29uc3QgR2VuZXJhdG9yMiBnMl87Ci0gIGNv
bnN0IEdlbmVyYXRvcjMgZzNfOwotICBjb25zdCBHZW5lcmF0b3I0IGc0XzsKLSAgY29uc3QgR2Vu
ZXJhdG9yNSBnNV87Ci0gIGNvbnN0IEdlbmVyYXRvcjYgZzZfOwotICBjb25zdCBHZW5lcmF0b3I3
IGc3XzsKLX07ICAvLyBjbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyNwotCi10ZW1wbGF0ZSA8
Y2xhc3MgR2VuZXJhdG9yMSwgY2xhc3MgR2VuZXJhdG9yMiwgY2xhc3MgR2VuZXJhdG9yMywKLSAg
ICBjbGFzcyBHZW5lcmF0b3I0LCBjbGFzcyBHZW5lcmF0b3I1LCBjbGFzcyBHZW5lcmF0b3I2LCBj
bGFzcyBHZW5lcmF0b3I3LAotICAgIGNsYXNzIEdlbmVyYXRvcjg+Ci1jbGFzcyBDYXJ0ZXNpYW5Q
cm9kdWN0SG9sZGVyOCB7Ci0gcHVibGljOgotQ2FydGVzaWFuUHJvZHVjdEhvbGRlcjgoY29uc3Qg
R2VuZXJhdG9yMSYgZzEsIGNvbnN0IEdlbmVyYXRvcjImIGcyLAotICAgIGNvbnN0IEdlbmVyYXRv
cjMmIGczLCBjb25zdCBHZW5lcmF0b3I0JiBnNCwgY29uc3QgR2VuZXJhdG9yNSYgZzUsCi0gICAg
Y29uc3QgR2VuZXJhdG9yNiYgZzYsIGNvbnN0IEdlbmVyYXRvcjcmIGc3LCBjb25zdCBHZW5lcmF0
b3I4JiBnOCkKLSAgICAgIDogZzFfKGcxKSwgZzJfKGcyKSwgZzNfKGczKSwgZzRfKGc0KSwgZzVf
KGc1KSwgZzZfKGc2KSwgZzdfKGc3KSwKLSAgICAgICAgICBnOF8oZzgpIHt9Ci0gIHRlbXBsYXRl
IDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlw
ZW5hbWUgVDUsCi0gICAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4Pgot
ICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjwgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBU
NCwgVDUsIFQ2LCBUNywKLSAgICAgIFQ4PiA+KCkgY29uc3QgewotICAgIHJldHVybiBQYXJhbUdl
bmVyYXRvcjwgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDg+
ID4oCi0gICAgICAgIG5ldyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yODxUMSwgVDIsIFQzLCBU
NCwgVDUsIFQ2LCBUNywgVDg+KAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxU
MT4gPihnMV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUMj4gPihnMl8p
LAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUMz4gPihnM18pLAotICAgICAg
ICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUND4gPihnNF8pLAotICAgICAgICBzdGF0aWNf
Y2FzdDxQYXJhbUdlbmVyYXRvcjxUNT4gPihnNV8pLAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJh
bUdlbmVyYXRvcjxUNj4gPihnNl8pLAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRv
cjxUNz4gPihnN18pLAotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxUOD4gPihn
OF8pKSk7Ci0gIH0KLQotIHByaXZhdGU6Ci0gIC8vIE5vIGltcGxlbWVudGF0aW9uIC0gYXNzaWdu
bWVudCBpcyB1bnN1cHBvcnRlZC4KLSAgdm9pZCBvcGVyYXRvcj0oY29uc3QgQ2FydGVzaWFuUHJv
ZHVjdEhvbGRlcjgmIG90aGVyKTsKLQotICBjb25zdCBHZW5lcmF0b3IxIGcxXzsKLSAgY29uc3Qg
R2VuZXJhdG9yMiBnMl87Ci0gIGNvbnN0IEdlbmVyYXRvcjMgZzNfOwotICBjb25zdCBHZW5lcmF0
b3I0IGc0XzsKLSAgY29uc3QgR2VuZXJhdG9yNSBnNV87Ci0gIGNvbnN0IEdlbmVyYXRvcjYgZzZf
OwotICBjb25zdCBHZW5lcmF0b3I3IGc3XzsKLSAgY29uc3QgR2VuZXJhdG9yOCBnOF87Ci19OyAg
Ly8gY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEhvbGRlcjgKLQotdGVtcGxhdGUgPGNsYXNzIEdlbmVy
YXRvcjEsIGNsYXNzIEdlbmVyYXRvcjIsIGNsYXNzIEdlbmVyYXRvcjMsCi0gICAgY2xhc3MgR2Vu
ZXJhdG9yNCwgY2xhc3MgR2VuZXJhdG9yNSwgY2xhc3MgR2VuZXJhdG9yNiwgY2xhc3MgR2VuZXJh
dG9yNywKLSAgICBjbGFzcyBHZW5lcmF0b3I4LCBjbGFzcyBHZW5lcmF0b3I5PgotY2xhc3MgQ2Fy
dGVzaWFuUHJvZHVjdEhvbGRlcjkgewotIHB1YmxpYzoKLUNhcnRlc2lhblByb2R1Y3RIb2xkZXI5
KGNvbnN0IEdlbmVyYXRvcjEmIGcxLCBjb25zdCBHZW5lcmF0b3IyJiBnMiwKLSAgICBjb25zdCBH
ZW5lcmF0b3IzJiBnMywgY29uc3QgR2VuZXJhdG9yNCYgZzQsIGNvbnN0IEdlbmVyYXRvcjUmIGc1
LAotICAgIGNvbnN0IEdlbmVyYXRvcjYmIGc2LCBjb25zdCBHZW5lcmF0b3I3JiBnNywgY29uc3Qg
R2VuZXJhdG9yOCYgZzgsCi0gICAgY29uc3QgR2VuZXJhdG9yOSYgZzkpCi0gICAgICA6IGcxXyhn
MSksIGcyXyhnMiksIGczXyhnMyksIGc0XyhnNCksIGc1XyhnNSksIGc2XyhnNiksIGc3XyhnNyks
IGc4XyhnOCksCi0gICAgICAgICAgZzlfKGc5KSB7fQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVDEs
IHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAg
ICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDk+Ci0g
IG9wZXJhdG9yIFBhcmFtR2VuZXJhdG9yPCA6OnRlc3Rpbmc6OnR1cGxlPFQxLCBUMiwgVDMsIFQ0
LCBUNSwgVDYsIFQ3LCBUOCwKLSAgICAgIFQ5PiA+KCkgY29uc3QgewotICAgIHJldHVybiBQYXJh
bUdlbmVyYXRvcjwgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDgsCi0gICAgICAgIFQ5PiA+KAotICAgICAgICBuZXcgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRv
cjk8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOT4oCi0gICAgICAgIHN0YXRpY19j
YXN0PFBhcmFtR2VuZXJhdG9yPFQxPiA+KGcxXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFt
R2VuZXJhdG9yPFQyPiA+KGcyXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9y
PFQzPiA+KGczXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQ0PiA+KGc0
XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQ1PiA+KGc1XyksCi0gICAg
ICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQ2PiA+KGc2XyksCi0gICAgICAgIHN0YXRp
Y19jYXN0PFBhcmFtR2VuZXJhdG9yPFQ3PiA+KGc3XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBh
cmFtR2VuZXJhdG9yPFQ4PiA+KGc4XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJh
dG9yPFQ5PiA+KGc5XykpKTsKLSAgfQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRp
b24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBD
YXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyOSYgb3RoZXIpOwotCi0gIGNvbnN0IEdlbmVyYXRvcjEgZzFf
OwotICBjb25zdCBHZW5lcmF0b3IyIGcyXzsKLSAgY29uc3QgR2VuZXJhdG9yMyBnM187Ci0gIGNv
bnN0IEdlbmVyYXRvcjQgZzRfOwotICBjb25zdCBHZW5lcmF0b3I1IGc1XzsKLSAgY29uc3QgR2Vu
ZXJhdG9yNiBnNl87Ci0gIGNvbnN0IEdlbmVyYXRvcjcgZzdfOwotICBjb25zdCBHZW5lcmF0b3I4
IGc4XzsKLSAgY29uc3QgR2VuZXJhdG9yOSBnOV87Ci19OyAgLy8gY2xhc3MgQ2FydGVzaWFuUHJv
ZHVjdEhvbGRlcjkKLQotdGVtcGxhdGUgPGNsYXNzIEdlbmVyYXRvcjEsIGNsYXNzIEdlbmVyYXRv
cjIsIGNsYXNzIEdlbmVyYXRvcjMsCi0gICAgY2xhc3MgR2VuZXJhdG9yNCwgY2xhc3MgR2VuZXJh
dG9yNSwgY2xhc3MgR2VuZXJhdG9yNiwgY2xhc3MgR2VuZXJhdG9yNywKLSAgICBjbGFzcyBHZW5l
cmF0b3I4LCBjbGFzcyBHZW5lcmF0b3I5LCBjbGFzcyBHZW5lcmF0b3IxMD4KLWNsYXNzIENhcnRl
c2lhblByb2R1Y3RIb2xkZXIxMCB7Ci0gcHVibGljOgotQ2FydGVzaWFuUHJvZHVjdEhvbGRlcjEw
KGNvbnN0IEdlbmVyYXRvcjEmIGcxLCBjb25zdCBHZW5lcmF0b3IyJiBnMiwKLSAgICBjb25zdCBH
ZW5lcmF0b3IzJiBnMywgY29uc3QgR2VuZXJhdG9yNCYgZzQsIGNvbnN0IEdlbmVyYXRvcjUmIGc1
LAotICAgIGNvbnN0IEdlbmVyYXRvcjYmIGc2LCBjb25zdCBHZW5lcmF0b3I3JiBnNywgY29uc3Qg
R2VuZXJhdG9yOCYgZzgsCi0gICAgY29uc3QgR2VuZXJhdG9yOSYgZzksIGNvbnN0IEdlbmVyYXRv
cjEwJiBnMTApCi0gICAgICA6IGcxXyhnMSksIGcyXyhnMiksIGczXyhnMyksIGc0XyhnNCksIGc1
XyhnNSksIGc2XyhnNiksIGc3XyhnNyksIGc4XyhnOCksCi0gICAgICAgICAgZzlfKGc5KSwgZzEw
XyhnMTApIHt9Ci0gIHRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1l
IFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgICB0eXBlbmFtZSBUNiwgdHlwZW5h
bWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwPgotICBvcGVyYXRv
ciBQYXJhbUdlbmVyYXRvcjwgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LAotICAgICAgVDEwPiA+KCkgY29uc3QgewotICAgIHJldHVybiBQYXJhbUdl
bmVyYXRvcjwgOjp0ZXN0aW5nOjp0dXBsZTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgs
IFQ5LAotICAgICAgICBUMTA+ID4oCi0gICAgICAgIG5ldyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJh
dG9yMTA8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwKLSAgICAgICAgICAgIFQx
MD4oCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQxPiA+KGcxXyksCi0gICAg
ICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQyPiA+KGcyXyksCi0gICAgICAgIHN0YXRp
Y19jYXN0PFBhcmFtR2VuZXJhdG9yPFQzPiA+KGczXyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBh
cmFtR2VuZXJhdG9yPFQ0PiA+KGc0XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJh
dG9yPFQ1PiA+KGc1XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQ2PiA+
KGc2XyksCi0gICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQ3PiA+KGc3XyksCi0g
ICAgICAgIHN0YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQ4PiA+KGc4XyksCi0gICAgICAgIHN0
YXRpY19jYXN0PFBhcmFtR2VuZXJhdG9yPFQ5PiA+KGc5XyksCi0gICAgICAgIHN0YXRpY19jYXN0
PFBhcmFtR2VuZXJhdG9yPFQxMD4gPihnMTBfKSkpOwotICB9Ci0KLSBwcml2YXRlOgotICAvLyBO
byBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gIHZvaWQgb3Bl
cmF0b3I9KGNvbnN0IENhcnRlc2lhblByb2R1Y3RIb2xkZXIxMCYgb3RoZXIpOwotCi0gIGNvbnN0
IEdlbmVyYXRvcjEgZzFfOwotICBjb25zdCBHZW5lcmF0b3IyIGcyXzsKLSAgY29uc3QgR2VuZXJh
dG9yMyBnM187Ci0gIGNvbnN0IEdlbmVyYXRvcjQgZzRfOwotICBjb25zdCBHZW5lcmF0b3I1IGc1
XzsKLSAgY29uc3QgR2VuZXJhdG9yNiBnNl87Ci0gIGNvbnN0IEdlbmVyYXRvcjcgZzdfOwotICBj
b25zdCBHZW5lcmF0b3I4IGc4XzsKLSAgY29uc3QgR2VuZXJhdG9yOSBnOV87Ci0gIGNvbnN0IEdl
bmVyYXRvcjEwIGcxMF87Ci19OyAgLy8gY2xhc3MgQ2FydGVzaWFuUHJvZHVjdEhvbGRlcjEwCi0K
LSMgZW5kaWYgIC8vIEdURVNUX0hBU19DT01CSU5FCi0KLX0gIC8vIG5hbWVzcGFjZSBpbnRlcm5h
bAotfSAgLy8gbmFtZXNwYWNlIHRlc3RpbmcKLQotI2VuZGlmICAvLyBHVEVTVF9JTkNMVURFX0dU
RVNUX0lOVEVSTkFMX0dURVNUX1BBUkFNX1VUSUxfR0VORVJBVEVEX0hfCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvaW50ZXJu
YWwvZ3Rlc3QtcGFyYW0tdXRpbC1nZW5lcmF0ZWQuaC5wdW1wIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9w
YXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LXBhcmFtLXV0
aWwtZ2VuZXJhdGVkLmgucHVtcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzBkZmZl
NDNjM2M2Nzg1Njg1MjQ2ZGI1ZjMxZDE5NDdjOGEyMmMyNS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRl
c3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtcGFyYW0tdXRpbC1nZW5lcmF0ZWQu
aC5wdW1wCisrKyAvZGV2L251bGwKQEAgLTEsMjgyICswLDAgQEAKLSQkIC0qLSBtb2RlOiBjKys7
IC0qLQotJHZhciBuID0gNTAgICQkIE1heGltdW0gbGVuZ3RoIG9mIFZhbHVlcyBhcmd1bWVudHMg
d2Ugd2FudCB0byBzdXBwb3J0LgotJHZhciBtYXh0dXBsZSA9IDEwICAkJCBNYXhpbXVtIG51bWJl
ciBvZiBDb21iaW5lIGFyZ3VtZW50cyB3ZSB3YW50IHRvIHN1cHBvcnQuCi0vLyBDb3B5cmlnaHQg
MjAwOCBHb29nbGUgSW5jLgotLy8gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KLS8vCi0vLyBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKLS8vIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucyBhcmUKLS8vIG1ldDoKLS8vCi0vLyAgICAgKiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotLy8gbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgotLy8gICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZQotLy8gY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgotLy8gaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotLy8gZGlzdHJpYnV0aW9uLgot
Ly8gICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9m
IGl0cwotLy8gY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBw
cm9kdWN0cyBkZXJpdmVkIGZyb20KLS8vIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBw
cmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0vLwotLy8gVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotLy8gIkFTIElTIiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QK
LS8vIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUgotLy8gQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKLS8vIE9XTkVSIE9SIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotLy8gU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVAotLy8gTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsCi0vLyBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLS8vIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLS8v
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRQotLy8gT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLQotCi0vLyBUeXBlIGFuZCBmdW5jdGlvbiB1
dGlsaXRpZXMgZm9yIGltcGxlbWVudGluZyBwYXJhbWV0ZXJpemVkIHRlc3RzLgotLy8gVGhpcyBm
aWxlIGlzIGdlbmVyYXRlZCBieSBhIFNDUklQVC4gIERPIE5PVCBFRElUIEJZIEhBTkQhCi0vLwot
Ly8gQ3VycmVudGx5IEdvb2dsZSBUZXN0IHN1cHBvcnRzIGF0IG1vc3QgJG4gYXJndW1lbnRzIGlu
IFZhbHVlcywKLS8vIGFuZCBhdCBtb3N0ICRtYXh0dXBsZSBhcmd1bWVudHMgaW4gQ29tYmluZS4g
UGxlYXNlIGNvbnRhY3QKLS8vIGdvb2dsZXRlc3RmcmFtZXdvcmtAZ29vZ2xlZ3JvdXBzLmNvbSBp
ZiB5b3UgbmVlZCBtb3JlLgotLy8gUGxlYXNlIG5vdGUgdGhhdCB0aGUgbnVtYmVyIG9mIGFyZ3Vt
ZW50cyB0byBDb21iaW5lIGlzIGxpbWl0ZWQKLS8vIGJ5IHRoZSBtYXhpbXVtIGFyaXR5IG9mIHRo
ZSBpbXBsZW1lbnRhdGlvbiBvZiB0dXBsZSB3aGljaCBpcwotLy8gY3VycmVudGx5IHNldCBhdCAk
bWF4dHVwbGUuCi0KLS8vIEdPT0dMRVRFU1RfQ00wMDAxIERPIE5PVCBERUxFVEUKLQotI2lmbmRl
ZiBHVEVTVF9JTkNMVURFX0dURVNUX0lOVEVSTkFMX0dURVNUX1BBUkFNX1VUSUxfR0VORVJBVEVE
X0hfCi0jZGVmaW5lIEdURVNUX0lOQ0xVREVfR1RFU1RfSU5URVJOQUxfR1RFU1RfUEFSQU1fVVRJ
TF9HRU5FUkFURURfSF8KLQotI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LXBhcmFtLXV0
aWwuaCIKLSNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9ndGVzdC1wb3J0LmgiCi0KLW5hbWVzcGFj
ZSB0ZXN0aW5nIHsKLQotLy8gRm9yd2FyZCBkZWNsYXJhdGlvbnMgb2YgVmFsdWVzSW4oKSwgd2hp
Y2ggaXMgaW1wbGVtZW50ZWQgaW4KLS8vIGluY2x1ZGUvZ3Rlc3QvZ3Rlc3QtcGFyYW0tdGVzdC5o
LgotdGVtcGxhdGUgPHR5cGVuYW1lIEZvcndhcmRJdGVyYXRvcj4KLWludGVybmFsOjpQYXJhbUdl
bmVyYXRvcjwKLSAgdHlwZW5hbWUgOjp0ZXN0aW5nOjppbnRlcm5hbDo6SXRlcmF0b3JUcmFpdHM8
Rm9yd2FyZEl0ZXJhdG9yPjo6dmFsdWVfdHlwZT4KLVZhbHVlc0luKEZvcndhcmRJdGVyYXRvciBi
ZWdpbiwgRm9yd2FyZEl0ZXJhdG9yIGVuZCk7Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBULCBzaXpl
X3QgTj4KLWludGVybmFsOjpQYXJhbUdlbmVyYXRvcjxUPiBWYWx1ZXNJbihjb25zdCBUICgmYXJy
YXkpW05dKTsKLQotdGVtcGxhdGUgPGNsYXNzIENvbnRhaW5lcj4KLWludGVybmFsOjpQYXJhbUdl
bmVyYXRvcjx0eXBlbmFtZSBDb250YWluZXI6OnZhbHVlX3R5cGU+IFZhbHVlc0luKAotICAgIGNv
bnN0IENvbnRhaW5lciYgY29udGFpbmVyKTsKLQotbmFtZXNwYWNlIGludGVybmFsIHsKLQotLy8g
VXNlZCBpbiB0aGUgVmFsdWVzKCkgZnVuY3Rpb24gdG8gcHJvdmlkZSBwb2x5bW9ycGhpYyBjYXBh
YmlsaXRpZXMuCi0kcmFuZ2UgaSAxLi5uCi0kZm9yIGkgW1sKLSRyYW5nZSBqIDEuLmkKLQotdGVt
cGxhdGUgPCRmb3IgaiwgW1t0eXBlbmFtZSBUJGpdXT4KLWNsYXNzIFZhbHVlQXJyYXkkaSB7Ci0g
cHVibGljOgotICAkaWYgaT09MSBbW2V4cGxpY2l0IF1dVmFsdWVBcnJheSRpKCRmb3IgaiwgW1tU
JGogdiRqXV0pIDogJGZvciBqLCBbW3YkKGopXyh2JGopXV0ge30KLQotICB0ZW1wbGF0ZSA8dHlw
ZW5hbWUgVD4KLSAgb3BlcmF0b3IgUGFyYW1HZW5lcmF0b3I8VD4oKSBjb25zdCB7Ci0gICAgY29u
c3QgVCBhcnJheVtdID0geyRmb3IgaiwgW1tzdGF0aWNfY2FzdDxUPih2JChqKV8pXV19OwotICAg
IHJldHVybiBWYWx1ZXNJbihhcnJheSk7Ci0gIH0KLQotICBWYWx1ZUFycmF5JGkoY29uc3QgVmFs
dWVBcnJheSRpJiBvdGhlcikgOiAkZm9yIGosIFtbdiQoailfKG90aGVyLnYkKGopXyldXSB7fQot
Ci0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3Vw
cG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25zdCBWYWx1ZUFycmF5JGkmIG90aGVyKTsKLQot
JGZvciBqIFtbCi0KLSAgY29uc3QgVCRqIHYkKGopXzsKLV1dCi0KLX07Ci0KLV1dCi0KLSMgaWYg
R1RFU1RfSEFTX0NPTUJJTkUKLS8vIElOVEVSTkFMIElNUExFTUVOVEFUSU9OIC0gRE8gTk9UIFVT
RSBJTiBVU0VSIENPREUuCi0vLwotLy8gR2VuZXJhdGVzIHZhbHVlcyBmcm9tIHRoZSBDYXJ0ZXNp
YW4gcHJvZHVjdCBvZiB2YWx1ZXMgcHJvZHVjZWQKLS8vIGJ5IHRoZSBhcmd1bWVudCBnZW5lcmF0
b3JzLgotLy8KLSRyYW5nZSBpIDIuLm1heHR1cGxlCi0kZm9yIGkgW1sKLSRyYW5nZSBqIDEuLmkK
LSRyYW5nZSBrIDIuLmkKLQotdGVtcGxhdGUgPCRmb3IgaiwgW1t0eXBlbmFtZSBUJGpdXT4KLWNs
YXNzIENhcnRlc2lhblByb2R1Y3RHZW5lcmF0b3IkaQotICAgIDogcHVibGljIFBhcmFtR2VuZXJh
dG9ySW50ZXJmYWNlPCA6OnRlc3Rpbmc6OnR1cGxlPCRmb3IgaiwgW1tUJGpdXT4gPiB7Ci0gcHVi
bGljOgotICB0eXBlZGVmIDo6dGVzdGluZzo6dHVwbGU8JGZvciBqLCBbW1Qkal1dPiBQYXJhbVR5
cGU7Ci0KLSAgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvciRpKCRmb3IgaiwgW1tjb25zdCBQYXJh
bUdlbmVyYXRvcjxUJGo+JiBnJGpdXSkKLSAgICAgIDogJGZvciBqLCBbW2ckKGopXyhnJGopXV0g
e30KLSAgdmlydHVhbCB+Q2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvciRpKCkge30KLQotICB2aXJ0
dWFsIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogQmVnaW4oKSBjb25zdCB7Ci0g
ICAgcmV0dXJuIG5ldyBJdGVyYXRvcih0aGlzLCAkZm9yIGosIFtbZyQoailfLCBnJChqKV8uYmVn
aW4oKV1dKTsKLSAgfQotICB2aXJ0dWFsIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBl
PiogRW5kKCkgY29uc3QgewotICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhpcywgJGZvciBqLCBb
W2ckKGopXywgZyQoailfLmVuZCgpXV0pOwotICB9Ci0KLSBwcml2YXRlOgotICBjbGFzcyBJdGVy
YXRvciA6IHB1YmxpYyBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4gewotICAgcHVi
bGljOgotICAgIEl0ZXJhdG9yKGNvbnN0IFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlw
ZT4qIGJhc2UsICRmb3IgaiwgW1sKLQotICAgICAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VCRqPiYg
ZyRqLAotICAgICAgY29uc3QgdHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VCRqPjo6aXRlcmF0b3Im
IGN1cnJlbnQkKGopXV0pCi0gICAgICAgIDogYmFzZV8oYmFzZSksCi0kZm9yIGosIFtbCi0KLSAg
ICAgICAgICBiZWdpbiQoailfKGckai5iZWdpbigpKSwgZW5kJChqKV8oZyRqLmVuZCgpKSwgY3Vy
cmVudCQoailfKGN1cnJlbnQkaikKLV1dICAgIHsKLSAgICAgIENvbXB1dGVDdXJyZW50VmFsdWUo
KTsKLSAgICB9Ci0gICAgdmlydHVhbCB+SXRlcmF0b3IoKSB7fQotCi0gICAgdmlydHVhbCBjb25z
dCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+KiBCYXNlR2VuZXJhdG9yKCkgY29u
c3QgewotICAgICAgcmV0dXJuIGJhc2VfOwotICAgIH0KLSAgICAvLyBBZHZhbmNlIHNob3VsZCBu
b3QgYmUgY2FsbGVkIG9uIGJleW9uZC1vZi1yYW5nZSBpdGVyYXRvcnMKLSAgICAvLyBzbyBubyBj
b21wb25lbnQgaXRlcmF0b3JzIG11c3QgYmUgYmV5b25kIGVuZCBvZiByYW5nZSwgZWl0aGVyLgot
ICAgIHZpcnR1YWwgdm9pZCBBZHZhbmNlKCkgewotICAgICAgYXNzZXJ0KCFBdEVuZCgpKTsKLSAg
ICAgICsrY3VycmVudCQoaSlfOwotCi0kZm9yIGsgW1sKLSAgICAgIGlmIChjdXJyZW50JChpKzIt
aylfID09IGVuZCQoaSsyLWspXykgewotICAgICAgICBjdXJyZW50JChpKzItaylfID0gYmVnaW4k
KGkrMi1rKV87Ci0gICAgICAgICsrY3VycmVudCQoaSsyLWstMSlfOwotICAgICAgfQotCi1dXQot
ICAgICAgQ29tcHV0ZUN1cnJlbnRWYWx1ZSgpOwotICAgIH0KLSAgICB2aXJ0dWFsIFBhcmFtSXRl
cmF0b3JJbnRlcmZhY2U8UGFyYW1UeXBlPiogQ2xvbmUoKSBjb25zdCB7Ci0gICAgICByZXR1cm4g
bmV3IEl0ZXJhdG9yKCp0aGlzKTsKLSAgICB9Ci0gICAgdmlydHVhbCBjb25zdCBQYXJhbVR5cGUq
IEN1cnJlbnQoKSBjb25zdCB7IHJldHVybiBjdXJyZW50X3ZhbHVlXy5nZXQoKTsgfQotICAgIHZp
cnR1YWwgYm9vbCBFcXVhbHMoY29uc3QgUGFyYW1JdGVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+
JiBvdGhlcikgY29uc3QgewotICAgICAgLy8gSGF2aW5nIHRoZSBzYW1lIGJhc2UgZ2VuZXJhdG9y
IGd1YXJhbnRlZXMgdGhhdCB0aGUgb3RoZXIKLSAgICAgIC8vIGl0ZXJhdG9yIGlzIG9mIHRoZSBz
YW1lIHR5cGUgYW5kIHdlIGNhbiBkb3duY2FzdC4KLSAgICAgIEdURVNUX0NIRUNLXyhCYXNlR2Vu
ZXJhdG9yKCkgPT0gb3RoZXIuQmFzZUdlbmVyYXRvcigpKQotICAgICAgICAgIDw8ICJUaGUgcHJv
Z3JhbSBhdHRlbXB0ZWQgdG8gY29tcGFyZSBpdGVyYXRvcnMgIgotICAgICAgICAgIDw8ICJmcm9t
IGRpZmZlcmVudCBnZW5lcmF0b3JzLiIgPDwgc3RkOjplbmRsOwotICAgICAgY29uc3QgSXRlcmF0
b3IqIHR5cGVkX290aGVyID0KLSAgICAgICAgICBDaGVja2VkRG93bmNhc3RUb0FjdHVhbFR5cGU8
Y29uc3QgSXRlcmF0b3I+KCZvdGhlcik7Ci0gICAgICAvLyBXZSBtdXN0IHJlcG9ydCBpdGVyYXRv
cnMgZXF1YWwgaWYgdGhleSBib3RoIHBvaW50IGJleW9uZCB0aGVpcgotICAgICAgLy8gcmVzcGVj
dGl2ZSByYW5nZXMuIFRoYXQgY2FuIGhhcHBlbiBpbiBhIHZhcmlldHkgb2YgZmFzaGlvbnMsCi0g
ICAgICAvLyBzbyB3ZSBoYXZlIHRvIGNvbnN1bHQgQXRFbmQoKS4KLSAgICAgIHJldHVybiAoQXRF
bmQoKSAmJiB0eXBlZF9vdGhlci0+QXRFbmQoKSkgfHwKLSAgICAgICAgICgkZm9yIGogICYmIFtb
Ci0KLSAgICAgICAgICBjdXJyZW50JChqKV8gPT0gdHlwZWRfb3RoZXItPmN1cnJlbnQkKGopXwot
XV0pOwotICAgIH0KLQotICAgcHJpdmF0ZToKLSAgICBJdGVyYXRvcihjb25zdCBJdGVyYXRvciYg
b3RoZXIpCi0gICAgICAgIDogYmFzZV8ob3RoZXIuYmFzZV8pLCAkZm9yIGosIFtbCi0KLSAgICAg
ICAgYmVnaW4kKGopXyhvdGhlci5iZWdpbiQoailfKSwKLSAgICAgICAgZW5kJChqKV8ob3RoZXIu
ZW5kJChqKV8pLAotICAgICAgICBjdXJyZW50JChqKV8ob3RoZXIuY3VycmVudCQoailfKQotXV0g
ewotICAgICAgQ29tcHV0ZUN1cnJlbnRWYWx1ZSgpOwotICAgIH0KLQotICAgIHZvaWQgQ29tcHV0
ZUN1cnJlbnRWYWx1ZSgpIHsKLSAgICAgIGlmICghQXRFbmQoKSkKLSAgICAgICAgY3VycmVudF92
YWx1ZV8ucmVzZXQobmV3IFBhcmFtVHlwZSgkZm9yIGosIFtbKmN1cnJlbnQkKGopX11dKSk7Ci0g
ICAgfQotICAgIGJvb2wgQXRFbmQoKSBjb25zdCB7Ci0gICAgICAvLyBXZSBtdXN0IHJlcG9ydCBp
dGVyYXRvciBwYXN0IHRoZSBlbmQgb2YgdGhlIHJhbmdlIHdoZW4gZWl0aGVyIG9mIHRoZQotICAg
ICAgLy8gY29tcG9uZW50IGl0ZXJhdG9ycyBoYXMgcmVhY2hlZCB0aGUgZW5kIG9mIGl0cyByYW5n
ZS4KLSAgICAgIHJldHVybgotJGZvciBqICB8fCBbWwotCi0gICAgICAgICAgY3VycmVudCQoailf
ID09IGVuZCQoailfCi1dXTsKLSAgICB9Ci0KLSAgICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFz
c2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCi0gICAgdm9pZCBvcGVyYXRvcj0oY29uc3QgSXRlcmF0
b3ImIG90aGVyKTsKLQotICAgIGNvbnN0IFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlw
ZT4qIGNvbnN0IGJhc2VfOwotICAgIC8vIGJlZ2luW2ldXyBhbmQgZW5kW2ldXyBkZWZpbmUgdGhl
IGktdGggcmFuZ2UgdGhhdCBJdGVyYXRvciB0cmF2ZXJzZXMuCi0gICAgLy8gY3VycmVudFtpXV8g
aXMgdGhlIGFjdHVhbCB0cmF2ZXJzaW5nIGl0ZXJhdG9yLgotJGZvciBqIFtbCi0KLSAgICBjb25z
dCB0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxUJGo+OjppdGVyYXRvciBiZWdpbiQoailfOwotICAg
IGNvbnN0IHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQkaj46Oml0ZXJhdG9yIGVuZCQoailfOwot
ICAgIHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQkaj46Oml0ZXJhdG9yIGN1cnJlbnQkKGopXzsK
LV1dCi0KLSAgICBsaW5rZWRfcHRyPFBhcmFtVHlwZT4gY3VycmVudF92YWx1ZV87Ci0gIH07ICAv
LyBjbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yJGk6Okl0ZXJhdG9yCi0KLSAgLy8gTm8g
aW1wbGVtZW50YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJh
dG9yPShjb25zdCBDYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yJGkmIG90aGVyKTsKLQotCi0kZm9y
IGogW1sKLSAgY29uc3QgUGFyYW1HZW5lcmF0b3I8VCRqPiBnJChqKV87Ci0KLV1dCi19OyAgLy8g
Y2xhc3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvciRpCi0KLQotXV0KLQotLy8gSU5URVJOQUwg
SU1QTEVNRU5UQVRJT04gLSBETyBOT1QgVVNFIElOIFVTRVIgQ09ERS4KLS8vCi0vLyBIZWxwZXIg
Y2xhc3NlcyBwcm92aWRpbmcgQ29tYmluZSgpIHdpdGggcG9seW1vcnBoaWMgZmVhdHVyZXMuIFRo
ZXkgYWxsb3cKLS8vIGNhc3RpbmcgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvck48VD4gdG8gUGFy
YW1HZW5lcmF0b3I8VT4gaWYgVCBpcwotLy8gY29udmVydGlibGUgdG8gVS4KLS8vCi0kcmFuZ2Ug
aSAyLi5tYXh0dXBsZQotJGZvciBpIFtbCi0kcmFuZ2UgaiAxLi5pCi0KLXRlbXBsYXRlIDwkZm9y
IGosIFtbY2xhc3MgR2VuZXJhdG9yJGpdXT4KLWNsYXNzIENhcnRlc2lhblByb2R1Y3RIb2xkZXIk
aSB7Ci0gcHVibGljOgotQ2FydGVzaWFuUHJvZHVjdEhvbGRlciRpKCRmb3IgaiwgW1tjb25zdCBH
ZW5lcmF0b3IkaiYgZyRqXV0pCi0gICAgICA6ICRmb3IgaiwgW1tnJChqKV8oZyRqKV1dIHt9Ci0g
IHRlbXBsYXRlIDwkZm9yIGosIFtbdHlwZW5hbWUgVCRqXV0+Ci0gIG9wZXJhdG9yIFBhcmFtR2Vu
ZXJhdG9yPCA6OnRlc3Rpbmc6OnR1cGxlPCRmb3IgaiwgW1tUJGpdXT4gPigpIGNvbnN0IHsKLSAg
ICByZXR1cm4gUGFyYW1HZW5lcmF0b3I8IDo6dGVzdGluZzo6dHVwbGU8JGZvciBqLCBbW1Qkal1d
PiA+KAotICAgICAgICBuZXcgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvciRpPCRmb3IgaiwgW1tU
JGpdXT4oCi0kZm9yIGosW1sKLQotICAgICAgICBzdGF0aWNfY2FzdDxQYXJhbUdlbmVyYXRvcjxU
JGo+ID4oZyQoailfKQotXV0pKTsKLSAgfQotCi0gcHJpdmF0ZToKLSAgLy8gTm8gaW1wbGVtZW50
YXRpb24gLSBhc3NpZ25tZW50IGlzIHVuc3VwcG9ydGVkLgotICB2b2lkIG9wZXJhdG9yPShjb25z
dCBDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyJGkmIG90aGVyKTsKLQotCi0kZm9yIGogW1sKLSAgY29u
c3QgR2VuZXJhdG9yJGogZyQoailfOwotCi1dXQotfTsgIC8vIGNsYXNzIENhcnRlc2lhblByb2R1
Y3RIb2xkZXIkaQotCi1dXQotCi0jIGVuZGlmICAvLyBHVEVTVF9IQVNfQ09NQklORQotCi19ICAv
LyBuYW1lc3BhY2UgaW50ZXJuYWwKLX0gIC8vIG5hbWVzcGFjZSB0ZXN0aW5nCi0KLSNlbmRpZiAg
Ly8gR1RFU1RfSU5DTFVERV9HVEVTVF9JTlRFUk5BTF9HVEVTVF9QQVJBTV9VVElMX0dFTkVSQVRF
RF9IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9p
bmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LXBhcmFtLXV0aWwuaCBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhp
cmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1wYXJh
bS11dGlsLmgKaW5kZXggZDY0ZjYyMGM0YzY3NDM0NjczYzBhNjFlMjM5NjBiNjE1YzM0ZTc4NC4u
N2Y3YTEzYmY4NGI1YTBlZDVkMjI3ODRhOGRiODY0NTlhOWMxYmQxMSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFs
L2d0ZXN0LXBhcmFtLXV0aWwuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRl
c3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtcGFyYW0tdXRpbC5oCkBAIC0zNywx
OCArMzcsMjEgQEAKIAogI2luY2x1ZGUgPGN0eXBlLmg+CiAKKyNpbmNsdWRlIDxjYXNzZXJ0Pgog
I2luY2x1ZGUgPGl0ZXJhdG9yPgorI2luY2x1ZGUgPG1lbW9yeT4KICNpbmNsdWRlIDxzZXQ+Cisj
aW5jbHVkZSA8dHVwbGU+CisjaW5jbHVkZSA8dHlwZV90cmFpdHM+CiAjaW5jbHVkZSA8dXRpbGl0
eT4KICNpbmNsdWRlIDx2ZWN0b3I+CiAKICNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9ndGVzdC1p
bnRlcm5hbC5oIgotI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LWxpbmtlZF9wdHIuaCIK
ICNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9ndGVzdC1wb3J0LmgiCiAjaW5jbHVkZSAiZ3Rlc3Qv
Z3Rlc3QtcHJpbnRlcnMuaCIKKyNpbmNsdWRlICJndGVzdC9ndGVzdC10ZXN0LXBhcnQuaCIKIAog
bmFtZXNwYWNlIHRlc3RpbmcgewotCiAvLyBJbnB1dCB0byBhIHBhcmFtZXRlcml6ZWQgdGVzdCBu
YW1lIGdlbmVyYXRvciwgZGVzY3JpYmluZyBhIHRlc3QgcGFyYW1ldGVyLgogLy8gQ29uc2lzdHMg
b2YgdGhlIHBhcmFtZXRlciB2YWx1ZSBhbmQgdGhlIGludGVnZXIgcGFyYW1ldGVyIGluZGV4Lgog
dGVtcGxhdGUgPGNsYXNzIFBhcmFtVHlwZT4KQEAgLTcyLDEzICs3NSwxNCBAQCBzdHJ1Y3QgUHJp
bnRUb1N0cmluZ1BhcmFtTmFtZSB7CiBuYW1lc3BhY2UgaW50ZXJuYWwgewogCiAvLyBJTlRFUk5B
TCBJTVBMRU1FTlRBVElPTiAtIERPIE5PVCBVU0UgSU4gVVNFUiBDT0RFLgotLy8KKy8vIFV0aWxp
dHkgRnVuY3Rpb25zCisKIC8vIE91dHB1dHMgYSBtZXNzYWdlIGV4cGxhaW5pbmcgaW52YWxpZCBy
ZWdpc3RyYXRpb24gb2YgZGlmZmVyZW50Ci0vLyBmaXh0dXJlIGNsYXNzIGZvciB0aGUgc2FtZSB0
ZXN0IGNhc2UuIFRoaXMgbWF5IGhhcHBlbiB3aGVuCisvLyBmaXh0dXJlIGNsYXNzIGZvciB0aGUg
c2FtZSB0ZXN0IHN1aXRlLiBUaGlzIG1heSBoYXBwZW4gd2hlbgogLy8gVEVTVF9QIG1hY3JvIGlz
IHVzZWQgdG8gZGVmaW5lIHR3byB0ZXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUKIC8vIGJ1dCBpbiBk
aWZmZXJlbnQgbmFtZXNwYWNlcy4KLUdURVNUX0FQSV8gdm9pZCBSZXBvcnRJbnZhbGlkVGVzdENh
c2VUeXBlKGNvbnN0IGNoYXIqIHRlc3RfY2FzZV9uYW1lLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgQ29kZUxvY2F0aW9uIGNvZGVfbG9jYXRpb24pOworR1RFU1Rf
QVBJXyB2b2lkIFJlcG9ydEludmFsaWRUZXN0U3VpdGVUeXBlKGNvbnN0IGNoYXIqIHRlc3Rfc3Vp
dGVfbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb2Rl
TG9jYXRpb24gY29kZV9sb2NhdGlvbik7CiAKIHRlbXBsYXRlIDx0eXBlbmFtZT4gY2xhc3MgUGFy
YW1HZW5lcmF0b3JJbnRlcmZhY2U7CiB0ZW1wbGF0ZSA8dHlwZW5hbWU+IGNsYXNzIFBhcmFtR2Vu
ZXJhdG9yOwpAQCAtMTUzLDcgKzE1Nyw3IEBAIGNsYXNzIFBhcmFtSXRlcmF0b3IgewogIHByaXZh
dGU6CiAgIGZyaWVuZCBjbGFzcyBQYXJhbUdlbmVyYXRvcjxUPjsKICAgZXhwbGljaXQgUGFyYW1J
dGVyYXRvcihQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFQ+KiBpbXBsKSA6IGltcGxfKGltcGwpIHt9
Ci0gIHNjb3BlZF9wdHI8UGFyYW1JdGVyYXRvckludGVyZmFjZTxUPiA+IGltcGxfOworICBzdGQ6
OnVuaXF1ZV9wdHI8UGFyYW1JdGVyYXRvckludGVyZmFjZTxUPiA+IGltcGxfOwogfTsKIAogLy8g
UGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8VD4gaXMgdGhlIGJpbmFyeSBpbnRlcmZhY2UgdG8gYWNj
ZXNzIGdlbmVyYXRvcnMKQEAgLTE5Miw3ICsxOTYsNyBAQCBjbGFzcyBQYXJhbUdlbmVyYXRvciB7
CiAgIGl0ZXJhdG9yIGVuZCgpIGNvbnN0IHsgcmV0dXJuIGl0ZXJhdG9yKGltcGxfLT5FbmQoKSk7
IH0KIAogIHByaXZhdGU6Ci0gIGxpbmtlZF9wdHI8Y29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZh
Y2U8VD4gPiBpbXBsXzsKKyAgc3RkOjpzaGFyZWRfcHRyPGNvbnN0IFBhcmFtR2VuZXJhdG9ySW50
ZXJmYWNlPFQ+ID4gaW1wbF87CiB9OwogCiAvLyBHZW5lcmF0ZXMgdmFsdWVzIGZyb20gYSByYW5n
ZSBvZiB0d28gY29tcGFyYWJsZSB2YWx1ZXMuIENhbiBiZSB1c2VkIHRvCkBAIC0yMDUsMTIgKzIw
OSwxMiBAQCBjbGFzcyBSYW5nZUdlbmVyYXRvciA6IHB1YmxpYyBQYXJhbUdlbmVyYXRvckludGVy
ZmFjZTxUPiB7CiAgIFJhbmdlR2VuZXJhdG9yKFQgYmVnaW4sIFQgZW5kLCBJbmNyZW1lbnRUIHN0
ZXApCiAgICAgICA6IGJlZ2luXyhiZWdpbiksIGVuZF8oZW5kKSwKICAgICAgICAgc3RlcF8oc3Rl
cCksIGVuZF9pbmRleF8oQ2FsY3VsYXRlRW5kSW5kZXgoYmVnaW4sIGVuZCwgc3RlcCkpIHt9Ci0g
IHZpcnR1YWwgflJhbmdlR2VuZXJhdG9yKCkge30KKyAgflJhbmdlR2VuZXJhdG9yKCkgb3ZlcnJp
ZGUge30KIAotICB2aXJ0dWFsIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8VD4qIEJlZ2luKCkgY29u
c3QgeworICBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFQ+KiBCZWdpbigpIGNvbnN0IG92ZXJyaWRl
IHsKICAgICByZXR1cm4gbmV3IEl0ZXJhdG9yKHRoaXMsIGJlZ2luXywgMCwgc3RlcF8pOwogICB9
Ci0gIHZpcnR1YWwgUGFyYW1JdGVyYXRvckludGVyZmFjZTxUPiogRW5kKCkgY29uc3QgeworICBQ
YXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFQ+KiBFbmQoKSBjb25zdCBvdmVycmlkZSB7CiAgICAgcmV0
dXJuIG5ldyBJdGVyYXRvcih0aGlzLCBlbmRfLCBlbmRfaW5kZXhfLCBzdGVwXyk7CiAgIH0KIApA
QCAtMjIwLDIwICsyMjQsMjAgQEAgY2xhc3MgUmFuZ2VHZW5lcmF0b3IgOiBwdWJsaWMgUGFyYW1H
ZW5lcmF0b3JJbnRlcmZhY2U8VD4gewogICAgIEl0ZXJhdG9yKGNvbnN0IFBhcmFtR2VuZXJhdG9y
SW50ZXJmYWNlPFQ+KiBiYXNlLCBUIHZhbHVlLCBpbnQgaW5kZXgsCiAgICAgICAgICAgICAgSW5j
cmVtZW50VCBzdGVwKQogICAgICAgICA6IGJhc2VfKGJhc2UpLCB2YWx1ZV8odmFsdWUpLCBpbmRl
eF8oaW5kZXgpLCBzdGVwXyhzdGVwKSB7fQotICAgIHZpcnR1YWwgfkl0ZXJhdG9yKCkge30KKyAg
ICB+SXRlcmF0b3IoKSBvdmVycmlkZSB7fQogCi0gICAgdmlydHVhbCBjb25zdCBQYXJhbUdlbmVy
YXRvckludGVyZmFjZTxUPiogQmFzZUdlbmVyYXRvcigpIGNvbnN0IHsKKyAgICBjb25zdCBQYXJh
bUdlbmVyYXRvckludGVyZmFjZTxUPiogQmFzZUdlbmVyYXRvcigpIGNvbnN0IG92ZXJyaWRlIHsK
ICAgICAgIHJldHVybiBiYXNlXzsKICAgICB9Ci0gICAgdmlydHVhbCB2b2lkIEFkdmFuY2UoKSB7
CisgICAgdm9pZCBBZHZhbmNlKCkgb3ZlcnJpZGUgewogICAgICAgdmFsdWVfID0gc3RhdGljX2Nh
c3Q8VD4odmFsdWVfICsgc3RlcF8pOwogICAgICAgaW5kZXhfKys7CiAgICAgfQotICAgIHZpcnR1
YWwgUGFyYW1JdGVyYXRvckludGVyZmFjZTxUPiogQ2xvbmUoKSBjb25zdCB7CisgICAgUGFyYW1J
dGVyYXRvckludGVyZmFjZTxUPiogQ2xvbmUoKSBjb25zdCBvdmVycmlkZSB7CiAgICAgICByZXR1
cm4gbmV3IEl0ZXJhdG9yKCp0aGlzKTsKICAgICB9Ci0gICAgdmlydHVhbCBjb25zdCBUKiBDdXJy
ZW50KCkgY29uc3QgeyByZXR1cm4gJnZhbHVlXzsgfQotICAgIHZpcnR1YWwgYm9vbCBFcXVhbHMo
Y29uc3QgUGFyYW1JdGVyYXRvckludGVyZmFjZTxUPiYgb3RoZXIpIGNvbnN0IHsKKyAgICBjb25z
dCBUKiBDdXJyZW50KCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gJnZhbHVlXzsgfQorICAgIGJv
b2wgRXF1YWxzKGNvbnN0IFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8VD4mIG90aGVyKSBjb25zdCBv
dmVycmlkZSB7CiAgICAgICAvLyBIYXZpbmcgdGhlIHNhbWUgYmFzZSBnZW5lcmF0b3IgZ3VhcmFu
dGVlcyB0aGF0IHRoZSBvdGhlcgogICAgICAgLy8gaXRlcmF0b3IgaXMgb2YgdGhlIHNhbWUgdHlw
ZSBhbmQgd2UgY2FuIGRvd25jYXN0LgogICAgICAgR1RFU1RfQ0hFQ0tfKEJhc2VHZW5lcmF0b3Io
KSA9PSBvdGhlci5CYXNlR2VuZXJhdG9yKCkpCkBAIC0yOTAsMTIgKzI5NCwxMiBAQCBjbGFzcyBW
YWx1ZXNJbkl0ZXJhdG9yUmFuZ2VHZW5lcmF0b3IgOiBwdWJsaWMgUGFyYW1HZW5lcmF0b3JJbnRl
cmZhY2U8VD4gewogICB0ZW1wbGF0ZSA8dHlwZW5hbWUgRm9yd2FyZEl0ZXJhdG9yPgogICBWYWx1
ZXNJbkl0ZXJhdG9yUmFuZ2VHZW5lcmF0b3IoRm9yd2FyZEl0ZXJhdG9yIGJlZ2luLCBGb3J3YXJk
SXRlcmF0b3IgZW5kKQogICAgICAgOiBjb250YWluZXJfKGJlZ2luLCBlbmQpIHt9Ci0gIHZpcnR1
YWwgflZhbHVlc0luSXRlcmF0b3JSYW5nZUdlbmVyYXRvcigpIHt9CisgIH5WYWx1ZXNJbkl0ZXJh
dG9yUmFuZ2VHZW5lcmF0b3IoKSBvdmVycmlkZSB7fQogCi0gIHZpcnR1YWwgUGFyYW1JdGVyYXRv
ckludGVyZmFjZTxUPiogQmVnaW4oKSBjb25zdCB7CisgIFBhcmFtSXRlcmF0b3JJbnRlcmZhY2U8
VD4qIEJlZ2luKCkgY29uc3Qgb3ZlcnJpZGUgewogICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhp
cywgY29udGFpbmVyXy5iZWdpbigpKTsKICAgfQotICB2aXJ0dWFsIFBhcmFtSXRlcmF0b3JJbnRl
cmZhY2U8VD4qIEVuZCgpIGNvbnN0IHsKKyAgUGFyYW1JdGVyYXRvckludGVyZmFjZTxUPiogRW5k
KCkgY29uc3Qgb3ZlcnJpZGUgewogICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhpcywgY29udGFp
bmVyXy5lbmQoKSk7CiAgIH0KIApAQCAtMzA3LDE2ICszMTEsMTYgQEAgY2xhc3MgVmFsdWVzSW5J
dGVyYXRvclJhbmdlR2VuZXJhdG9yIDogcHVibGljIFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPFQ+
IHsKICAgICBJdGVyYXRvcihjb25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxUPiogYmFzZSwK
ICAgICAgICAgICAgICB0eXBlbmFtZSBDb250YWluZXJUeXBlOjpjb25zdF9pdGVyYXRvciBpdGVy
YXRvcikKICAgICAgICAgOiBiYXNlXyhiYXNlKSwgaXRlcmF0b3JfKGl0ZXJhdG9yKSB7fQotICAg
IHZpcnR1YWwgfkl0ZXJhdG9yKCkge30KKyAgICB+SXRlcmF0b3IoKSBvdmVycmlkZSB7fQogCi0g
ICAgdmlydHVhbCBjb25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxUPiogQmFzZUdlbmVyYXRv
cigpIGNvbnN0IHsKKyAgICBjb25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxUPiogQmFzZUdl
bmVyYXRvcigpIGNvbnN0IG92ZXJyaWRlIHsKICAgICAgIHJldHVybiBiYXNlXzsKICAgICB9Ci0g
ICAgdmlydHVhbCB2b2lkIEFkdmFuY2UoKSB7CisgICAgdm9pZCBBZHZhbmNlKCkgb3ZlcnJpZGUg
ewogICAgICAgKytpdGVyYXRvcl87CiAgICAgICB2YWx1ZV8ucmVzZXQoKTsKICAgICB9Ci0gICAg
dmlydHVhbCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFQ+KiBDbG9uZSgpIGNvbnN0IHsKKyAgICBQ
YXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFQ+KiBDbG9uZSgpIGNvbnN0IG92ZXJyaWRlIHsKICAgICAg
IHJldHVybiBuZXcgSXRlcmF0b3IoKnRoaXMpOwogICAgIH0KICAgICAvLyBXZSBuZWVkIHRvIHVz
ZSBjYWNoZWQgdmFsdWUgcmVmZXJlbmNlZCBieSBpdGVyYXRvcl8gYmVjYXVzZSAqaXRlcmF0b3Jf
CkBAIC0zMjYsMTIgKzMzMCwxMSBAQCBjbGFzcyBWYWx1ZXNJbkl0ZXJhdG9yUmFuZ2VHZW5lcmF0
b3IgOiBwdWJsaWMgUGFyYW1HZW5lcmF0b3JJbnRlcmZhY2U8VD4gewogICAgIC8vIGNhbiBhZHZh
bmNlIGl0ZXJhdG9yXyBiZXlvbmQgdGhlIGVuZCBvZiB0aGUgcmFuZ2UsIGFuZCB3ZSBjYW5ub3QK
ICAgICAvLyBkZXRlY3QgdGhhdCBmYWN0LiBUaGUgY2xpZW50IGNvZGUsIG9uIHRoZSBvdGhlciBo
YW5kLCBpcwogICAgIC8vIHJlc3BvbnNpYmxlIGZvciBub3QgY2FsbGluZyBDdXJyZW50KCkgb24g
YW4gb3V0LW9mLXJhbmdlIGl0ZXJhdG9yLgotICAgIHZpcnR1YWwgY29uc3QgVCogQ3VycmVudCgp
IGNvbnN0IHsKLSAgICAgIGlmICh2YWx1ZV8uZ2V0KCkgPT0gTlVMTCkKLSAgICAgICAgdmFsdWVf
LnJlc2V0KG5ldyBUKCppdGVyYXRvcl8pKTsKKyAgICBjb25zdCBUKiBDdXJyZW50KCkgY29uc3Qg
b3ZlcnJpZGUgeworICAgICAgaWYgKHZhbHVlXy5nZXQoKSA9PSBudWxscHRyKSB2YWx1ZV8ucmVz
ZXQobmV3IFQoKml0ZXJhdG9yXykpOwogICAgICAgcmV0dXJuIHZhbHVlXy5nZXQoKTsKICAgICB9
Ci0gICAgdmlydHVhbCBib29sIEVxdWFscyhjb25zdCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFQ+
JiBvdGhlcikgY29uc3QgeworICAgIGJvb2wgRXF1YWxzKGNvbnN0IFBhcmFtSXRlcmF0b3JJbnRl
cmZhY2U8VD4mIG90aGVyKSBjb25zdCBvdmVycmlkZSB7CiAgICAgICAvLyBIYXZpbmcgdGhlIHNh
bWUgYmFzZSBnZW5lcmF0b3IgZ3VhcmFudGVlcyB0aGF0IHRoZSBvdGhlcgogICAgICAgLy8gaXRl
cmF0b3IgaXMgb2YgdGhlIHNhbWUgdHlwZSBhbmQgd2UgY2FuIGRvd25jYXN0LgogICAgICAgR1RF
U1RfQ0hFQ0tfKEJhc2VHZW5lcmF0b3IoKSA9PSBvdGhlci5CYXNlR2VuZXJhdG9yKCkpCkBAIC0z
NTQsOSArMzU3LDkgQEAgY2xhc3MgVmFsdWVzSW5JdGVyYXRvclJhbmdlR2VuZXJhdG9yIDogcHVi
bGljIFBhcmFtR2VuZXJhdG9ySW50ZXJmYWNlPFQ+IHsKICAgICAvLyBBIGNhY2hlZCB2YWx1ZSBv
ZiAqaXRlcmF0b3JfLiBXZSBrZWVwIGl0IGhlcmUgdG8gYWxsb3cgYWNjZXNzIGJ5CiAgICAgLy8g
cG9pbnRlciBpbiB0aGUgd3JhcHBpbmcgaXRlcmF0b3IncyBvcGVyYXRvci0+KCkuCiAgICAgLy8g
dmFsdWVfIG5lZWRzIHRvIGJlIG11dGFibGUgdG8gYmUgYWNjZXNzZWQgaW4gQ3VycmVudCgpLgot
ICAgIC8vIFVzZSBvZiBzY29wZWRfcHRyIGhlbHBzIG1hbmFnZSBjYWNoZWQgdmFsdWUncyBsaWZl
dGltZSwKKyAgICAvLyBVc2Ugb2Ygc3RkOjp1bmlxdWVfcHRyIGhlbHBzIG1hbmFnZSBjYWNoZWQg
dmFsdWUncyBsaWZldGltZSwKICAgICAvLyB3aGljaCBpcyBib3VuZCBieSB0aGUgbGlmZXNwYW4g
b2YgdGhlIGl0ZXJhdG9yIGl0c2VsZi4KLSAgICBtdXRhYmxlIHNjb3BlZF9wdHI8Y29uc3QgVD4g
dmFsdWVfOworICAgIG11dGFibGUgc3RkOjp1bmlxdWVfcHRyPGNvbnN0IFQ+IHZhbHVlXzsKICAg
fTsgIC8vIGNsYXNzIFZhbHVlc0luSXRlcmF0b3JSYW5nZUdlbmVyYXRvcjo6SXRlcmF0b3IKIAog
ICAvLyBObyBpbXBsZW1lbnRhdGlvbiAtIGFzc2lnbm1lbnQgaXMgdW5zdXBwb3J0ZWQuCkBAIC0z
NzYsMjUgKzM3OSwxMiBAQCBzdGQ6OnN0cmluZyBEZWZhdWx0UGFyYW1OYW1lKGNvbnN0IFRlc3RQ
YXJhbUluZm88UGFyYW1UeXBlPiYgaW5mbykgewogICByZXR1cm4gbmFtZV9zdHJlYW0uR2V0U3Ry
aW5nKCk7CiB9CiAKLS8vIElOVEVSTkFMIElNUExFTUVOVEFUSU9OIC0gRE8gTk9UIFVTRSBJTiBV
U0VSIENPREUuCi0vLwotLy8gUGFyYW1ldGVyaXplZCB0ZXN0IG5hbWUgb3ZlcmxvYWQgaGVscGVy
cywgd2hpY2ggaGVscCB0aGUKLS8vIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QIG1hY3JvIGNob29z
ZSBiZXR3ZWVuIHRoZSBkZWZhdWx0IHBhcmFtZXRlcml6ZWQKLS8vIHRlc3QgbmFtZSBnZW5lcmF0
b3IgYW5kIHVzZXIgcGFyYW0gbmFtZSBnZW5lcmF0b3IuCi10ZW1wbGF0ZSA8Y2xhc3MgUGFyYW1U
eXBlLCBjbGFzcyBQYXJhbU5hbWVHZW5GdW5jdG9yPgotUGFyYW1OYW1lR2VuRnVuY3RvciBHZXRQ
YXJhbU5hbWVHZW4oUGFyYW1OYW1lR2VuRnVuY3RvciBmdW5jKSB7Ci0gIHJldHVybiBmdW5jOwot
fQotCi10ZW1wbGF0ZSA8Y2xhc3MgUGFyYW1UeXBlPgotc3RydWN0IFBhcmFtTmFtZUdlbkZ1bmMg
ewotICB0eXBlZGVmIHN0ZDo6c3RyaW5nIFR5cGUoY29uc3QgVGVzdFBhcmFtSW5mbzxQYXJhbVR5
cGU+Jik7Ci19OwotCi10ZW1wbGF0ZSA8Y2xhc3MgUGFyYW1UeXBlPgotdHlwZW5hbWUgUGFyYW1O
YW1lR2VuRnVuYzxQYXJhbVR5cGU+OjpUeXBlICpHZXRQYXJhbU5hbWVHZW4oKSB7Ci0gIHJldHVy
biBEZWZhdWx0UGFyYW1OYW1lOwordGVtcGxhdGUgPHR5cGVuYW1lIFQgPSBpbnQ+Cit2b2lkIFRl
c3ROb3RFbXB0eSgpIHsKKyAgc3RhdGljX2Fzc2VydChzaXplb2YoVCkgPT0gMCwgIkVtcHR5IGFy
Z3VtZW50cyBhcmUgbm90IGFsbG93ZWQuIik7CiB9Cit0ZW1wbGF0ZSA8dHlwZW5hbWUgVCA9IGlu
dD4KK3ZvaWQgVGVzdE5vdEVtcHR5KGNvbnN0IFQmKSB7fQogCiAvLyBJTlRFUk5BTCBJTVBMRU1F
TlRBVElPTiAtIERPIE5PVCBVU0UgSU4gVVNFUiBDT0RFLgogLy8KQEAgLTQwNiw3ICszOTYsNyBA
QCBjbGFzcyBQYXJhbWV0ZXJpemVkVGVzdEZhY3RvcnkgOiBwdWJsaWMgVGVzdEZhY3RvcnlCYXNl
IHsKICAgdHlwZWRlZiB0eXBlbmFtZSBUZXN0Q2xhc3M6OlBhcmFtVHlwZSBQYXJhbVR5cGU7CiAg
IGV4cGxpY2l0IFBhcmFtZXRlcml6ZWRUZXN0RmFjdG9yeShQYXJhbVR5cGUgcGFyYW1ldGVyKSA6
CiAgICAgICBwYXJhbWV0ZXJfKHBhcmFtZXRlcikge30KLSAgdmlydHVhbCBUZXN0KiBDcmVhdGVU
ZXN0KCkgeworICBUZXN0KiBDcmVhdGVUZXN0KCkgb3ZlcnJpZGUgewogICAgIFRlc3RDbGFzczo6
U2V0UGFyYW0oJnBhcmFtZXRlcl8pOwogICAgIHJldHVybiBuZXcgVGVzdENsYXNzKCk7CiAgIH0K
QEAgLTQzNCwxOSArNDI0LDE5IEBAIGNsYXNzIFRlc3RNZXRhRmFjdG9yeUJhc2UgewogLy8gVGVz
dE1ldGFGYWN0b3J5IGNyZWF0ZXMgdGVzdCBmYWN0b3JpZXMgZm9yIHBhc3NpbmcgaW50bwogLy8g
TWFrZUFuZFJlZ2lzdGVyVGVzdEluZm8gZnVuY3Rpb24uIFNpbmNlIE1ha2VBbmRSZWdpc3RlclRl
c3RJbmZvIHJlY2VpdmVzCiAvLyBvd25lcnNoaXAgb2YgdGVzdCBmYWN0b3J5IHBvaW50ZXIsIHNh
bWUgZmFjdG9yeSBvYmplY3QgY2Fubm90IGJlIHBhc3NlZAotLy8gaW50byB0aGF0IG1ldGhvZCB0
d2ljZS4gQnV0IFBhcmFtZXRlcml6ZWRUZXN0Q2FzZUluZm8gaXMgZ29pbmcgdG8gY2FsbAorLy8g
aW50byB0aGF0IG1ldGhvZCB0d2ljZS4gQnV0IFBhcmFtZXRlcml6ZWRUZXN0U3VpdGVJbmZvIGlz
IGdvaW5nIHRvIGNhbGwKIC8vIGl0IGZvciBlYWNoIFRlc3QvUGFyYW1ldGVyIHZhbHVlIGNvbWJp
bmF0aW9uLiBUaHVzIGl0IG5lZWRzIG1ldGEgZmFjdG9yeQogLy8gY3JlYXRvciBjbGFzcy4KLXRl
bXBsYXRlIDxjbGFzcyBUZXN0Q2FzZT4KK3RlbXBsYXRlIDxjbGFzcyBUZXN0U3VpdGU+CiBjbGFz
cyBUZXN0TWV0YUZhY3RvcnkKLSAgICA6IHB1YmxpYyBUZXN0TWV0YUZhY3RvcnlCYXNlPHR5cGVu
YW1lIFRlc3RDYXNlOjpQYXJhbVR5cGU+IHsKKyAgICA6IHB1YmxpYyBUZXN0TWV0YUZhY3RvcnlC
YXNlPHR5cGVuYW1lIFRlc3RTdWl0ZTo6UGFyYW1UeXBlPiB7CiAgcHVibGljOgotICB0eXBlZGVm
IHR5cGVuYW1lIFRlc3RDYXNlOjpQYXJhbVR5cGUgUGFyYW1UeXBlOworICB1c2luZyBQYXJhbVR5
cGUgPSB0eXBlbmFtZSBUZXN0U3VpdGU6OlBhcmFtVHlwZTsKIAogICBUZXN0TWV0YUZhY3Rvcnko
KSB7fQogCi0gIHZpcnR1YWwgVGVzdEZhY3RvcnlCYXNlKiBDcmVhdGVUZXN0RmFjdG9yeShQYXJh
bVR5cGUgcGFyYW1ldGVyKSB7Ci0gICAgcmV0dXJuIG5ldyBQYXJhbWV0ZXJpemVkVGVzdEZhY3Rv
cnk8VGVzdENhc2U+KHBhcmFtZXRlcik7CisgIFRlc3RGYWN0b3J5QmFzZSogQ3JlYXRlVGVzdEZh
Y3RvcnkoUGFyYW1UeXBlIHBhcmFtZXRlcikgb3ZlcnJpZGUgeworICAgIHJldHVybiBuZXcgUGFy
YW1ldGVyaXplZFRlc3RGYWN0b3J5PFRlc3RTdWl0ZT4ocGFyYW1ldGVyKTsKICAgfQogCiAgcHJp
dmF0ZToKQEAgLTQ1NSw5MyArNDQ1LDEwNiBAQCBjbGFzcyBUZXN0TWV0YUZhY3RvcnkKIAogLy8g
SU5URVJOQUwgSU1QTEVNRU5UQVRJT04gLSBETyBOT1QgVVNFIElOIFVTRVIgQ09ERS4KIC8vCi0v
LyBQYXJhbWV0ZXJpemVkVGVzdENhc2VJbmZvQmFzZSBpcyBhIGdlbmVyaWMgaW50ZXJmYWNlCi0v
LyB0byBQYXJhbWV0ZXJpemVkVGVzdENhc2VJbmZvIGNsYXNzZXMuIFBhcmFtZXRlcml6ZWRUZXN0
Q2FzZUluZm9CYXNlCisvLyBQYXJhbWV0ZXJpemVkVGVzdFN1aXRlSW5mb0Jhc2UgaXMgYSBnZW5l
cmljIGludGVyZmFjZQorLy8gdG8gUGFyYW1ldGVyaXplZFRlc3RTdWl0ZUluZm8gY2xhc3Nlcy4g
UGFyYW1ldGVyaXplZFRlc3RTdWl0ZUluZm9CYXNlCiAvLyBhY2N1bXVsYXRlcyB0ZXN0IGluZm9y
bWF0aW9uIHByb3ZpZGVkIGJ5IFRFU1RfUCBtYWNybyBpbnZvY2F0aW9ucwotLy8gYW5kIGdlbmVy
YXRvcnMgcHJvdmlkZWQgYnkgSU5TVEFOVElBVEVfVEVTVF9DQVNFX1AgbWFjcm8gaW52b2NhdGlv
bnMKKy8vIGFuZCBnZW5lcmF0b3JzIHByb3ZpZGVkIGJ5IElOU1RBTlRJQVRFX1RFU1RfU1VJVEVf
UCBtYWNybyBpbnZvY2F0aW9ucwogLy8gYW5kIHVzZXMgdGhhdCBpbmZvcm1hdGlvbiB0byByZWdp
c3RlciBhbGwgcmVzdWx0aW5nIHRlc3QgaW5zdGFuY2VzCi0vLyBpbiBSZWdpc3RlclRlc3RzIG1l
dGhvZC4gVGhlIFBhcmFtZXRlcml6ZVRlc3RDYXNlUmVnaXN0cnkgY2xhc3MgaG9sZHMKLS8vIGEg
Y29sbGVjdGlvbiBvZiBwb2ludGVycyB0byB0aGUgUGFyYW1ldGVyaXplZFRlc3RDYXNlSW5mbyBv
YmplY3RzCisvLyBpbiBSZWdpc3RlclRlc3RzIG1ldGhvZC4gVGhlIFBhcmFtZXRlcml6ZVRlc3RT
dWl0ZVJlZ2lzdHJ5IGNsYXNzIGhvbGRzCisvLyBhIGNvbGxlY3Rpb24gb2YgcG9pbnRlcnMgdG8g
dGhlIFBhcmFtZXRlcml6ZWRUZXN0U3VpdGVJbmZvIG9iamVjdHMKIC8vIGFuZCBjYWxscyBSZWdp
c3RlclRlc3RzKCkgb24gZWFjaCBvZiB0aGVtIHdoZW4gYXNrZWQuCi1jbGFzcyBQYXJhbWV0ZXJp
emVkVGVzdENhc2VJbmZvQmFzZSB7CitjbGFzcyBQYXJhbWV0ZXJpemVkVGVzdFN1aXRlSW5mb0Jh
c2UgewogIHB1YmxpYzoKLSAgdmlydHVhbCB+UGFyYW1ldGVyaXplZFRlc3RDYXNlSW5mb0Jhc2Uo
KSB7fQorICB2aXJ0dWFsIH5QYXJhbWV0ZXJpemVkVGVzdFN1aXRlSW5mb0Jhc2UoKSB7fQogCi0g
IC8vIEJhc2UgcGFydCBvZiB0ZXN0IGNhc2UgbmFtZSBmb3IgZGlzcGxheSBwdXJwb3Nlcy4KLSAg
dmlydHVhbCBjb25zdCBzdGQ6OnN0cmluZyYgR2V0VGVzdENhc2VOYW1lKCkgY29uc3QgPSAwOwor
ICAvLyBCYXNlIHBhcnQgb2YgdGVzdCBzdWl0ZSBuYW1lIGZvciBkaXNwbGF5IHB1cnBvc2VzLgor
ICB2aXJ0dWFsIGNvbnN0IHN0ZDo6c3RyaW5nJiBHZXRUZXN0U3VpdGVOYW1lKCkgY29uc3QgPSAw
OwogICAvLyBUZXN0IGNhc2UgaWQgdG8gdmVyaWZ5IGlkZW50aXR5LgotICB2aXJ0dWFsIFR5cGVJ
ZCBHZXRUZXN0Q2FzZVR5cGVJZCgpIGNvbnN0ID0gMDsKKyAgdmlydHVhbCBUeXBlSWQgR2V0VGVz
dFN1aXRlVHlwZUlkKCkgY29uc3QgPSAwOwogICAvLyBVbml0VGVzdCBjbGFzcyBpbnZva2VzIHRo
aXMgbWV0aG9kIHRvIHJlZ2lzdGVyIHRlc3RzIGluIHRoaXMKLSAgLy8gdGVzdCBjYXNlIHJpZ2h0
IGJlZm9yZSBydW5uaW5nIHRoZW0gaW4gUlVOX0FMTF9URVNUUyBtYWNyby4KLSAgLy8gVGhpcyBt
ZXRob2Qgc2hvdWxkIG5vdCBiZSBjYWxsZWQgbW9yZSB0aGVuIG9uY2Ugb24gYW55IHNpbmdsZQot
ICAvLyBpbnN0YW5jZSBvZiBhIFBhcmFtZXRlcml6ZWRUZXN0Q2FzZUluZm9CYXNlIGRlcml2ZWQg
Y2xhc3MuCisgIC8vIHRlc3Qgc3VpdGUgcmlnaHQgYmVmb3JlIHJ1bm5pbmcgdGhlbSBpbiBSVU5f
QUxMX1RFU1RTIG1hY3JvLgorICAvLyBUaGlzIG1ldGhvZCBzaG91bGQgbm90IGJlIGNhbGxlZCBt
b3JlIHRoYW4gb25jZSBvbiBhbnkgc2luZ2xlCisgIC8vIGluc3RhbmNlIG9mIGEgUGFyYW1ldGVy
aXplZFRlc3RTdWl0ZUluZm9CYXNlIGRlcml2ZWQgY2xhc3MuCiAgIHZpcnR1YWwgdm9pZCBSZWdp
c3RlclRlc3RzKCkgPSAwOwogCiAgcHJvdGVjdGVkOgotICBQYXJhbWV0ZXJpemVkVGVzdENhc2VJ
bmZvQmFzZSgpIHt9CisgIFBhcmFtZXRlcml6ZWRUZXN0U3VpdGVJbmZvQmFzZSgpIHt9CiAKICBw
cml2YXRlOgotICBHVEVTVF9ESVNBTExPV19DT1BZX0FORF9BU1NJR05fKFBhcmFtZXRlcml6ZWRU
ZXN0Q2FzZUluZm9CYXNlKTsKKyAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhQYXJh
bWV0ZXJpemVkVGVzdFN1aXRlSW5mb0Jhc2UpOwogfTsKIAogLy8gSU5URVJOQUwgSU1QTEVNRU5U
QVRJT04gLSBETyBOT1QgVVNFIElOIFVTRVIgQ09ERS4KIC8vCi0vLyBQYXJhbWV0ZXJpemVkVGVz
dENhc2VJbmZvIGFjY3VtdWxhdGVzIHRlc3RzIG9idGFpbmVkIGZyb20gVEVTVF9QCi0vLyBtYWNy
byBpbnZvY2F0aW9ucyBmb3IgYSBwYXJ0aWN1bGFyIHRlc3QgY2FzZSBhbmQgZ2VuZXJhdG9ycwot
Ly8gb2J0YWluZWQgZnJvbSBJTlNUQU5USUFURV9URVNUX0NBU0VfUCBtYWNybyBpbnZvY2F0aW9u
cyBmb3IgdGhhdAotLy8gdGVzdCBjYXNlLiBJdCByZWdpc3RlcnMgdGVzdHMgd2l0aCBhbGwgdmFs
dWVzIGdlbmVyYXRlZCBieSBhbGwKKy8vIFJlcG9ydCBhIHRoZSBuYW1lIG9mIGEgdGVzdF9zdWl0
IGFzIHNhZmUgdG8gaWdub3JlCisvLyBhcyB0aGUgc2lkZSBlZmZlY3Qgb2YgY29uc3RydWN0aW9u
IG9mIHRoaXMgdHlwZS4KK3N0cnVjdCBNYXJrQXNJZ25vcmVkIHsKKyAgZXhwbGljaXQgTWFya0Fz
SWdub3JlZChjb25zdCBjaGFyKiB0ZXN0X3N1aXRlKTsKK307CisKK0dURVNUX0FQSV8gdm9pZCBJ
bnNlcnRTeW50aGV0aWNUZXN0Q2FzZShjb25zdCBzdGQ6OnN0cmluZyYgbmFtZSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb2RlTG9jYXRpb24gbG9jYXRpb24sIGJv
b2wgaGFzX3Rlc3RfcCk7CisKKy8vIElOVEVSTkFMIElNUExFTUVOVEFUSU9OIC0gRE8gTk9UIFVT
RSBJTiBVU0VSIENPREUuCisvLworLy8gUGFyYW1ldGVyaXplZFRlc3RTdWl0ZUluZm8gYWNjdW11
bGF0ZXMgdGVzdHMgb2J0YWluZWQgZnJvbSBURVNUX1AKKy8vIG1hY3JvIGludm9jYXRpb25zIGZv
ciBhIHBhcnRpY3VsYXIgdGVzdCBzdWl0ZSBhbmQgZ2VuZXJhdG9ycworLy8gb2J0YWluZWQgZnJv
bSBJTlNUQU5USUFURV9URVNUX1NVSVRFX1AgbWFjcm8gaW52b2NhdGlvbnMgZm9yIHRoYXQKKy8v
IHRlc3Qgc3VpdGUuIEl0IHJlZ2lzdGVycyB0ZXN0cyB3aXRoIGFsbCB2YWx1ZXMgZ2VuZXJhdGVk
IGJ5IGFsbAogLy8gZ2VuZXJhdG9ycyB3aGVuIGFza2VkLgotdGVtcGxhdGUgPGNsYXNzIFRlc3RD
YXNlPgotY2xhc3MgUGFyYW1ldGVyaXplZFRlc3RDYXNlSW5mbyA6IHB1YmxpYyBQYXJhbWV0ZXJp
emVkVGVzdENhc2VJbmZvQmFzZSB7Cit0ZW1wbGF0ZSA8Y2xhc3MgVGVzdFN1aXRlPgorY2xhc3Mg
UGFyYW1ldGVyaXplZFRlc3RTdWl0ZUluZm8gOiBwdWJsaWMgUGFyYW1ldGVyaXplZFRlc3RTdWl0
ZUluZm9CYXNlIHsKICBwdWJsaWM6CiAgIC8vIFBhcmFtVHlwZSBhbmQgR2VuZXJhdG9yQ3JlYXRp
b25GdW5jIGFyZSBwcml2YXRlIHR5cGVzIGJ1dCBhcmUgcmVxdWlyZWQKICAgLy8gZm9yIGRlY2xh
cmF0aW9ucyBvZiBwdWJsaWMgbWV0aG9kcyBBZGRUZXN0UGF0dGVybigpIGFuZAotICAvLyBBZGRU
ZXN0Q2FzZUluc3RhbnRpYXRpb24oKS4KLSAgdHlwZWRlZiB0eXBlbmFtZSBUZXN0Q2FzZTo6UGFy
YW1UeXBlIFBhcmFtVHlwZTsKKyAgLy8gQWRkVGVzdFN1aXRlSW5zdGFudGlhdGlvbigpLgorICB1
c2luZyBQYXJhbVR5cGUgPSB0eXBlbmFtZSBUZXN0U3VpdGU6OlBhcmFtVHlwZTsKICAgLy8gQSBm
dW5jdGlvbiB0aGF0IHJldHVybnMgYW4gaW5zdGFuY2Ugb2YgYXBwcm9wcmlhdGUgZ2VuZXJhdG9y
IHR5cGUuCiAgIHR5cGVkZWYgUGFyYW1HZW5lcmF0b3I8UGFyYW1UeXBlPihHZW5lcmF0b3JDcmVh
dGlvbkZ1bmMpKCk7Ci0gIHR5cGVkZWYgdHlwZW5hbWUgUGFyYW1OYW1lR2VuRnVuYzxQYXJhbVR5
cGU+OjpUeXBlIFBhcmFtTmFtZUdlbmVyYXRvckZ1bmM7CisgIHVzaW5nIFBhcmFtTmFtZUdlbmVy
YXRvckZ1bmMgPSBzdGQ6OnN0cmluZyhjb25zdCBUZXN0UGFyYW1JbmZvPFBhcmFtVHlwZT4mKTsK
IAotICBleHBsaWNpdCBQYXJhbWV0ZXJpemVkVGVzdENhc2VJbmZvKAotICAgICAgY29uc3QgY2hh
ciogbmFtZSwgQ29kZUxvY2F0aW9uIGNvZGVfbG9jYXRpb24pCi0gICAgICA6IHRlc3RfY2FzZV9u
YW1lXyhuYW1lKSwgY29kZV9sb2NhdGlvbl8oY29kZV9sb2NhdGlvbikge30KKyAgZXhwbGljaXQg
UGFyYW1ldGVyaXplZFRlc3RTdWl0ZUluZm8oY29uc3QgY2hhciogbmFtZSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29kZUxvY2F0aW9uIGNvZGVfbG9jYXRpb24pCisg
ICAgICA6IHRlc3Rfc3VpdGVfbmFtZV8obmFtZSksIGNvZGVfbG9jYXRpb25fKGNvZGVfbG9jYXRp
b24pIHt9CiAKICAgLy8gVGVzdCBjYXNlIGJhc2UgbmFtZSBmb3IgZGlzcGxheSBwdXJwb3Nlcy4K
LSAgdmlydHVhbCBjb25zdCBzdGQ6OnN0cmluZyYgR2V0VGVzdENhc2VOYW1lKCkgY29uc3QgeyBy
ZXR1cm4gdGVzdF9jYXNlX25hbWVfOyB9CisgIGNvbnN0IHN0ZDo6c3RyaW5nJiBHZXRUZXN0U3Vp
dGVOYW1lKCkgY29uc3Qgb3ZlcnJpZGUgeworICAgIHJldHVybiB0ZXN0X3N1aXRlX25hbWVfOwor
ICB9CiAgIC8vIFRlc3QgY2FzZSBpZCB0byB2ZXJpZnkgaWRlbnRpdHkuCi0gIHZpcnR1YWwgVHlw
ZUlkIEdldFRlc3RDYXNlVHlwZUlkKCkgY29uc3QgeyByZXR1cm4gR2V0VHlwZUlkPFRlc3RDYXNl
PigpOyB9CisgIFR5cGVJZCBHZXRUZXN0U3VpdGVUeXBlSWQoKSBjb25zdCBvdmVycmlkZSB7IHJl
dHVybiBHZXRUeXBlSWQ8VGVzdFN1aXRlPigpOyB9CiAgIC8vIFRFU1RfUCBtYWNybyB1c2VzIEFk
ZFRlc3RQYXR0ZXJuKCkgdG8gcmVjb3JkIGluZm9ybWF0aW9uCiAgIC8vIGFib3V0IGEgc2luZ2xl
IHRlc3QgaW4gYSBMb2NhbFRlc3RJbmZvIHN0cnVjdHVyZS4KLSAgLy8gdGVzdF9jYXNlX25hbWUg
aXMgdGhlIGJhc2UgbmFtZSBvZiB0aGUgdGVzdCBjYXNlICh3aXRob3V0IGludm9jYXRpb24KKyAg
Ly8gdGVzdF9zdWl0ZV9uYW1lIGlzIHRoZSBiYXNlIG5hbWUgb2YgdGhlIHRlc3Qgc3VpdGUgKHdp
dGhvdXQgaW52b2NhdGlvbgogICAvLyBwcmVmaXgpLiB0ZXN0X2Jhc2VfbmFtZSBpcyB0aGUgbmFt
ZSBvZiBhbiBpbmRpdmlkdWFsIHRlc3Qgd2l0aG91dAogICAvLyBwYXJhbWV0ZXIgaW5kZXguIEZv
ciB0aGUgdGVzdCBTZXF1ZW5jZUEvRm9vVGVzdC5Eb0Jhci8xIEZvb1Rlc3QgaXMKLSAgLy8gdGVz
dCBjYXNlIGJhc2UgbmFtZSBhbmQgRG9CYXIgaXMgdGVzdCBiYXNlIG5hbWUuCi0gIHZvaWQgQWRk
VGVzdFBhdHRlcm4oY29uc3QgY2hhciogdGVzdF9jYXNlX25hbWUsCi0gICAgICAgICAgICAgICAg
ICAgICAgY29uc3QgY2hhciogdGVzdF9iYXNlX25hbWUsCisgIC8vIHRlc3Qgc3VpdGUgYmFzZSBu
YW1lIGFuZCBEb0JhciBpcyB0ZXN0IGJhc2UgbmFtZS4KKyAgdm9pZCBBZGRUZXN0UGF0dGVybihj
b25zdCBjaGFyKiB0ZXN0X3N1aXRlX25hbWUsIGNvbnN0IGNoYXIqIHRlc3RfYmFzZV9uYW1lLAog
ICAgICAgICAgICAgICAgICAgICAgIFRlc3RNZXRhRmFjdG9yeUJhc2U8UGFyYW1UeXBlPiogbWV0
YV9mYWN0b3J5KSB7Ci0gICAgdGVzdHNfLnB1c2hfYmFjayhsaW5rZWRfcHRyPFRlc3RJbmZvPihu
ZXcgVGVzdEluZm8odGVzdF9jYXNlX25hbWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9iYXNlX25hbWUsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWV0YV9mYWN0b3J5KSkp
OworICAgIHRlc3RzXy5wdXNoX2JhY2soc3RkOjpzaGFyZWRfcHRyPFRlc3RJbmZvPigKKyAgICAg
ICAgbmV3IFRlc3RJbmZvKHRlc3Rfc3VpdGVfbmFtZSwgdGVzdF9iYXNlX25hbWUsIG1ldGFfZmFj
dG9yeSkpKTsKICAgfQotICAvLyBJTlNUQU5USUFURV9URVNUX0NBU0VfUCBtYWNybyB1c2VzIEFk
ZEdlbmVyYXRvcigpIHRvIHJlY29yZCBpbmZvcm1hdGlvbgorICAvLyBJTlNUQU5USUFURV9URVNU
X1NVSVRFX1AgbWFjcm8gdXNlcyBBZGRHZW5lcmF0b3IoKSB0byByZWNvcmQgaW5mb3JtYXRpb24K
ICAgLy8gYWJvdXQgYSBnZW5lcmF0b3IuCi0gIGludCBBZGRUZXN0Q2FzZUluc3RhbnRpYXRpb24o
Y29uc3Qgc3RkOjpzdHJpbmcmIGluc3RhbnRpYXRpb25fbmFtZSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBHZW5lcmF0b3JDcmVhdGlvbkZ1bmMqIGZ1bmMsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgUGFyYW1OYW1lR2VuZXJhdG9yRnVuYyogbmFtZV9mdW5jLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGZpbGUsIGludCBsaW5lKSB7
CisgIGludCBBZGRUZXN0U3VpdGVJbnN0YW50aWF0aW9uKGNvbnN0IHN0ZDo6c3RyaW5nJiBpbnN0
YW50aWF0aW9uX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRv
ckNyZWF0aW9uRnVuYyogZnVuYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGFy
YW1OYW1lR2VuZXJhdG9yRnVuYyogbmFtZV9mdW5jLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCBjaGFyKiBmaWxlLCBpbnQgbGluZSkgewogICAgIGluc3RhbnRpYXRpb25z
Xy5wdXNoX2JhY2soCiAgICAgICAgIEluc3RhbnRpYXRpb25JbmZvKGluc3RhbnRpYXRpb25fbmFt
ZSwgZnVuYywgbmFtZV9mdW5jLCBmaWxlLCBsaW5lKSk7CiAgICAgcmV0dXJuIDA7ICAvLyBSZXR1
cm4gdmFsdWUgdXNlZCBvbmx5IHRvIHJ1biB0aGlzIG1ldGhvZCBpbiBuYW1lc3BhY2Ugc2NvcGUu
CiAgIH0KLSAgLy8gVW5pdFRlc3QgY2xhc3MgaW52b2tlcyB0aGlzIG1ldGhvZCB0byByZWdpc3Rl
ciB0ZXN0cyBpbiB0aGlzIHRlc3QgY2FzZQotICAvLyB0ZXN0IGNhc2VzIHJpZ2h0IGJlZm9yZSBy
dW5uaW5nIHRlc3RzIGluIFJVTl9BTExfVEVTVFMgbWFjcm8uCi0gIC8vIFRoaXMgbWV0aG9kIHNo
b3VsZCBub3QgYmUgY2FsbGVkIG1vcmUgdGhlbiBvbmNlIG9uIGFueSBzaW5nbGUKLSAgLy8gaW5z
dGFuY2Ugb2YgYSBQYXJhbWV0ZXJpemVkVGVzdENhc2VJbmZvQmFzZSBkZXJpdmVkIGNsYXNzLgot
ICAvLyBVbml0VGVzdCBoYXMgYSBndWFyZCB0byBwcmV2ZW50IGZyb20gY2FsbGluZyB0aGlzIG1l
dGhvZCBtb3JlIHRoZW4gb25jZS4KLSAgdmlydHVhbCB2b2lkIFJlZ2lzdGVyVGVzdHMoKSB7Cisg
IC8vIFVuaXRUZXN0IGNsYXNzIGludm9rZXMgdGhpcyBtZXRob2QgdG8gcmVnaXN0ZXIgdGVzdHMg
aW4gdGhpcyB0ZXN0IHN1aXRlCisgIC8vIHJpZ2h0IGJlZm9yZSBydW5uaW5nIHRlc3RzIGluIFJV
Tl9BTExfVEVTVFMgbWFjcm8uCisgIC8vIFRoaXMgbWV0aG9kIHNob3VsZCBub3QgYmUgY2FsbGVk
IG1vcmUgdGhhbiBvbmNlIG9uIGFueSBzaW5nbGUKKyAgLy8gaW5zdGFuY2Ugb2YgYSBQYXJhbWV0
ZXJpemVkVGVzdFN1aXRlSW5mb0Jhc2UgZGVyaXZlZCBjbGFzcy4KKyAgLy8gVW5pdFRlc3QgaGFz
IGEgZ3VhcmQgdG8gcHJldmVudCBmcm9tIGNhbGxpbmcgdGhpcyBtZXRob2QgbW9yZSB0aGFuIG9u
Y2UuCisgIHZvaWQgUmVnaXN0ZXJUZXN0cygpIG92ZXJyaWRlIHsKKyAgICBib29sIGdlbmVyYXRl
ZF9pbnN0YW50aWF0aW9ucyA9IGZhbHNlOworCiAgICAgZm9yICh0eXBlbmFtZSBUZXN0SW5mb0Nv
bnRhaW5lcjo6aXRlcmF0b3IgdGVzdF9pdCA9IHRlc3RzXy5iZWdpbigpOwogICAgICAgICAgdGVz
dF9pdCAhPSB0ZXN0c18uZW5kKCk7ICsrdGVzdF9pdCkgewotICAgICAgbGlua2VkX3B0cjxUZXN0
SW5mbz4gdGVzdF9pbmZvID0gKnRlc3RfaXQ7CisgICAgICBzdGQ6OnNoYXJlZF9wdHI8VGVzdElu
Zm8+IHRlc3RfaW5mbyA9ICp0ZXN0X2l0OwogICAgICAgZm9yICh0eXBlbmFtZSBJbnN0YW50aWF0
aW9uQ29udGFpbmVyOjppdGVyYXRvciBnZW5faXQgPQogICAgICAgICAgICAgICAgaW5zdGFudGlh
dGlvbnNfLmJlZ2luKCk7IGdlbl9pdCAhPSBpbnN0YW50aWF0aW9uc18uZW5kKCk7CiAgICAgICAg
ICAgICAgICArK2dlbl9pdCkgewpAQCAtNTUxLDE2ICs1NTQsMTggQEAgY2xhc3MgUGFyYW1ldGVy
aXplZFRlc3RDYXNlSW5mbyA6IHB1YmxpYyBQYXJhbWV0ZXJpemVkVGVzdENhc2VJbmZvQmFzZSB7
CiAgICAgICAgIGNvbnN0IGNoYXIqIGZpbGUgPSBnZW5faXQtPmZpbGU7CiAgICAgICAgIGludCBs
aW5lID0gZ2VuX2l0LT5saW5lOwogCi0gICAgICAgIHN0ZDo6c3RyaW5nIHRlc3RfY2FzZV9uYW1l
OworICAgICAgICBzdGQ6OnN0cmluZyB0ZXN0X3N1aXRlX25hbWU7CiAgICAgICAgIGlmICggIWlu
c3RhbnRpYXRpb25fbmFtZS5lbXB0eSgpICkKLSAgICAgICAgICB0ZXN0X2Nhc2VfbmFtZSA9IGlu
c3RhbnRpYXRpb25fbmFtZSArICIvIjsKLSAgICAgICAgdGVzdF9jYXNlX25hbWUgKz0gdGVzdF9p
bmZvLT50ZXN0X2Nhc2VfYmFzZV9uYW1lOworICAgICAgICAgIHRlc3Rfc3VpdGVfbmFtZSA9IGlu
c3RhbnRpYXRpb25fbmFtZSArICIvIjsKKyAgICAgICAgdGVzdF9zdWl0ZV9uYW1lICs9IHRlc3Rf
aW5mby0+dGVzdF9zdWl0ZV9iYXNlX25hbWU7CiAKICAgICAgICAgc2l6ZV90IGkgPSAwOwogICAg
ICAgICBzdGQ6OnNldDxzdGQ6OnN0cmluZz4gdGVzdF9wYXJhbV9uYW1lczsKICAgICAgICAgZm9y
ICh0eXBlbmFtZSBQYXJhbUdlbmVyYXRvcjxQYXJhbVR5cGU+OjppdGVyYXRvciBwYXJhbV9pdCA9
CiAgICAgICAgICAgICAgICAgIGdlbmVyYXRvci5iZWdpbigpOwogICAgICAgICAgICAgIHBhcmFt
X2l0ICE9IGdlbmVyYXRvci5lbmQoKTsgKytwYXJhbV9pdCwgKytpKSB7CisgICAgICAgICAgZ2Vu
ZXJhdGVkX2luc3RhbnRpYXRpb25zID0gdHJ1ZTsKKwogICAgICAgICAgIE1lc3NhZ2UgdGVzdF9u
YW1lX3N0cmVhbTsKIAogICAgICAgICAgIHN0ZDo6c3RyaW5nIHBhcmFtX25hbWUgPSBuYW1lX2Z1
bmMoCkBAIC01NzcsMzkgKzU4Miw0NSBAQCBjbGFzcyBQYXJhbWV0ZXJpemVkVGVzdENhc2VJbmZv
IDogcHVibGljIFBhcmFtZXRlcml6ZWRUZXN0Q2FzZUluZm9CYXNlIHsKIAogICAgICAgICAgIHRl
c3RfcGFyYW1fbmFtZXMuaW5zZXJ0KHBhcmFtX25hbWUpOwogCi0gICAgICAgICAgdGVzdF9uYW1l
X3N0cmVhbSA8PCB0ZXN0X2luZm8tPnRlc3RfYmFzZV9uYW1lIDw8ICIvIiA8PCBwYXJhbV9uYW1l
OworICAgICAgICAgIGlmICghdGVzdF9pbmZvLT50ZXN0X2Jhc2VfbmFtZS5lbXB0eSgpKSB7Cisg
ICAgICAgICAgICB0ZXN0X25hbWVfc3RyZWFtIDw8IHRlc3RfaW5mby0+dGVzdF9iYXNlX25hbWUg
PDwgIi8iOworICAgICAgICAgIH0KKyAgICAgICAgICB0ZXN0X25hbWVfc3RyZWFtIDw8IHBhcmFt
X25hbWU7CiAgICAgICAgICAgTWFrZUFuZFJlZ2lzdGVyVGVzdEluZm8oCi0gICAgICAgICAgICAg
IHRlc3RfY2FzZV9uYW1lLmNfc3RyKCksCi0gICAgICAgICAgICAgIHRlc3RfbmFtZV9zdHJlYW0u
R2V0U3RyaW5nKCkuY19zdHIoKSwKLSAgICAgICAgICAgICAgTlVMTCwgIC8vIE5vIHR5cGUgcGFy
YW1ldGVyLgotICAgICAgICAgICAgICBQcmludFRvU3RyaW5nKCpwYXJhbV9pdCkuY19zdHIoKSwK
LSAgICAgICAgICAgICAgY29kZV9sb2NhdGlvbl8sCi0gICAgICAgICAgICAgIEdldFRlc3RDYXNl
VHlwZUlkKCksCi0gICAgICAgICAgICAgIFRlc3RDYXNlOjpTZXRVcFRlc3RDYXNlLAotICAgICAg
ICAgICAgICBUZXN0Q2FzZTo6VGVhckRvd25UZXN0Q2FzZSwKKyAgICAgICAgICAgICAgdGVzdF9z
dWl0ZV9uYW1lLmNfc3RyKCksIHRlc3RfbmFtZV9zdHJlYW0uR2V0U3RyaW5nKCkuY19zdHIoKSwK
KyAgICAgICAgICAgICAgbnVsbHB0ciwgIC8vIE5vIHR5cGUgcGFyYW1ldGVyLgorICAgICAgICAg
ICAgICBQcmludFRvU3RyaW5nKCpwYXJhbV9pdCkuY19zdHIoKSwgY29kZV9sb2NhdGlvbl8sCisg
ICAgICAgICAgICAgIEdldFRlc3RTdWl0ZVR5cGVJZCgpLAorICAgICAgICAgICAgICBTdWl0ZUFw
aVJlc29sdmVyPFRlc3RTdWl0ZT46OkdldFNldFVwQ2FzZU9yU3VpdGUoZmlsZSwgbGluZSksCisg
ICAgICAgICAgICAgIFN1aXRlQXBpUmVzb2x2ZXI8VGVzdFN1aXRlPjo6R2V0VGVhckRvd25DYXNl
T3JTdWl0ZShmaWxlLCBsaW5lKSwKICAgICAgICAgICAgICAgdGVzdF9pbmZvLT50ZXN0X21ldGFf
ZmFjdG9yeS0+Q3JlYXRlVGVzdEZhY3RvcnkoKnBhcmFtX2l0KSk7CiAgICAgICAgIH0gIC8vIGZv
ciBwYXJhbV9pdAogICAgICAgfSAgLy8gZm9yIGdlbl9pdAogICAgIH0gIC8vIGZvciB0ZXN0X2l0
Ci0gIH0gIC8vIFJlZ2lzdGVyVGVzdHMKKworICAgIGlmICghZ2VuZXJhdGVkX2luc3RhbnRpYXRp
b25zKSB7CisgICAgICAvLyBUaGVyZSBhcmUgbm8gZ2VuZXJhb3Rycywgb3IgdGhleSBhbGwgZ2Vu
ZXJhdGUgbm90aGluZyAuLi4KKyAgICAgIEluc2VydFN5bnRoZXRpY1Rlc3RDYXNlKEdldFRlc3RT
dWl0ZU5hbWUoKSwgY29kZV9sb2NhdGlvbl8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAhdGVzdHNfLmVtcHR5KCkpOworICAgIH0KKyAgfSAgICAvLyBSZWdpc3RlclRlc3RzCiAKICBw
cml2YXRlOgogICAvLyBMb2NhbFRlc3RJbmZvIHN0cnVjdHVyZSBrZWVwcyBpbmZvcm1hdGlvbiBh
Ym91dCBhIHNpbmdsZSB0ZXN0IHJlZ2lzdGVyZWQKICAgLy8gd2l0aCBURVNUX1AgbWFjcm8uCiAg
IHN0cnVjdCBUZXN0SW5mbyB7Ci0gICAgVGVzdEluZm8oY29uc3QgY2hhciogYV90ZXN0X2Nhc2Vf
YmFzZV9uYW1lLAotICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGFfdGVzdF9iYXNlX25hbWUsCi0g
ICAgICAgICAgICAgVGVzdE1ldGFGYWN0b3J5QmFzZTxQYXJhbVR5cGU+KiBhX3Rlc3RfbWV0YV9m
YWN0b3J5KSA6Ci0gICAgICAgIHRlc3RfY2FzZV9iYXNlX25hbWUoYV90ZXN0X2Nhc2VfYmFzZV9u
YW1lKSwKLSAgICAgICAgdGVzdF9iYXNlX25hbWUoYV90ZXN0X2Jhc2VfbmFtZSksCi0gICAgICAg
IHRlc3RfbWV0YV9mYWN0b3J5KGFfdGVzdF9tZXRhX2ZhY3RvcnkpIHt9Ci0KLSAgICBjb25zdCBz
dGQ6OnN0cmluZyB0ZXN0X2Nhc2VfYmFzZV9uYW1lOworICAgIFRlc3RJbmZvKGNvbnN0IGNoYXIq
IGFfdGVzdF9zdWl0ZV9iYXNlX25hbWUsIGNvbnN0IGNoYXIqIGFfdGVzdF9iYXNlX25hbWUsCisg
ICAgICAgICAgICAgVGVzdE1ldGFGYWN0b3J5QmFzZTxQYXJhbVR5cGU+KiBhX3Rlc3RfbWV0YV9m
YWN0b3J5KQorICAgICAgICA6IHRlc3Rfc3VpdGVfYmFzZV9uYW1lKGFfdGVzdF9zdWl0ZV9iYXNl
X25hbWUpLAorICAgICAgICAgIHRlc3RfYmFzZV9uYW1lKGFfdGVzdF9iYXNlX25hbWUpLAorICAg
ICAgICAgIHRlc3RfbWV0YV9mYWN0b3J5KGFfdGVzdF9tZXRhX2ZhY3RvcnkpIHt9CisKKyAgICBj
b25zdCBzdGQ6OnN0cmluZyB0ZXN0X3N1aXRlX2Jhc2VfbmFtZTsKICAgICBjb25zdCBzdGQ6OnN0
cmluZyB0ZXN0X2Jhc2VfbmFtZTsKLSAgICBjb25zdCBzY29wZWRfcHRyPFRlc3RNZXRhRmFjdG9y
eUJhc2U8UGFyYW1UeXBlPiA+IHRlc3RfbWV0YV9mYWN0b3J5OworICAgIGNvbnN0IHN0ZDo6dW5p
cXVlX3B0cjxUZXN0TWV0YUZhY3RvcnlCYXNlPFBhcmFtVHlwZT4gPiB0ZXN0X21ldGFfZmFjdG9y
eTsKICAgfTsKLSAgdHlwZWRlZiA6OnN0ZDo6dmVjdG9yPGxpbmtlZF9wdHI8VGVzdEluZm8+ID4g
VGVzdEluZm9Db250YWluZXI7Ci0gIC8vIFJlY29yZHMgZGF0YSByZWNlaXZlZCBmcm9tIElOU1RB
TlRJQVRFX1RFU1RfQ0FTRV9QIG1hY3JvczoKKyAgdXNpbmcgVGVzdEluZm9Db250YWluZXIgPSA6
OnN0ZDo6dmVjdG9yPHN0ZDo6c2hhcmVkX3B0cjxUZXN0SW5mbz4gPjsKKyAgLy8gUmVjb3JkcyBk
YXRhIHJlY2VpdmVkIGZyb20gSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QIG1hY3JvczoKICAgLy8g
IDxJbnN0YW50aWF0aW9uIG5hbWUsIFNlcXVlbmNlIGdlbmVyYXRvciBjcmVhdGlvbiBmdW5jdGlv
biwKICAgLy8gICAgIE5hbWUgZ2VuZXJhdG9yIGZ1bmN0aW9uLCBTb3VyY2UgZmlsZSwgU291cmNl
IGxpbmU+CiAgIHN0cnVjdCBJbnN0YW50aWF0aW9uSW5mbyB7CkBAIC02NDYsNzYgKzY1NywyNzUg
QEAgY2xhc3MgUGFyYW1ldGVyaXplZFRlc3RDYXNlSW5mbyA6IHB1YmxpYyBQYXJhbWV0ZXJpemVk
VGVzdENhc2VJbmZvQmFzZSB7CiAgICAgcmV0dXJuIHRydWU7CiAgIH0KIAotICBjb25zdCBzdGQ6
OnN0cmluZyB0ZXN0X2Nhc2VfbmFtZV87CisgIGNvbnN0IHN0ZDo6c3RyaW5nIHRlc3Rfc3VpdGVf
bmFtZV87CiAgIENvZGVMb2NhdGlvbiBjb2RlX2xvY2F0aW9uXzsKICAgVGVzdEluZm9Db250YWlu
ZXIgdGVzdHNfOwogICBJbnN0YW50aWF0aW9uQ29udGFpbmVyIGluc3RhbnRpYXRpb25zXzsKIAot
ICBHVEVTVF9ESVNBTExPV19DT1BZX0FORF9BU1NJR05fKFBhcmFtZXRlcml6ZWRUZXN0Q2FzZUlu
Zm8pOwotfTsgIC8vIGNsYXNzIFBhcmFtZXRlcml6ZWRUZXN0Q2FzZUluZm8KKyAgR1RFU1RfRElT
QUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhQYXJhbWV0ZXJpemVkVGVzdFN1aXRlSW5mbyk7Cit9OyAg
Ly8gY2xhc3MgUGFyYW1ldGVyaXplZFRlc3RTdWl0ZUluZm8KKworLy8gIExlZ2FjeSBBUEkgaXMg
ZGVwcmVjYXRlZCBidXQgc3RpbGwgYXZhaWxhYmxlCisjaWZuZGVmIEdURVNUX1JFTU9WRV9MRUdB
Q1lfVEVTVF9DQVNFQVBJXwordGVtcGxhdGUgPGNsYXNzIFRlc3RDYXNlPgordXNpbmcgUGFyYW1l
dGVyaXplZFRlc3RDYXNlSW5mbyA9IFBhcmFtZXRlcml6ZWRUZXN0U3VpdGVJbmZvPFRlc3RDYXNl
PjsKKyNlbmRpZiAgLy8gIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwogCiAvLyBJ
TlRFUk5BTCBJTVBMRU1FTlRBVElPTiAtIERPIE5PVCBVU0UgSU4gVVNFUiBDT0RFLgogLy8KLS8v
IFBhcmFtZXRlcml6ZWRUZXN0Q2FzZVJlZ2lzdHJ5IGNvbnRhaW5zIGEgbWFwIG9mIFBhcmFtZXRl
cml6ZWRUZXN0Q2FzZUluZm9CYXNlCi0vLyBjbGFzc2VzIGFjY2Vzc2VkIGJ5IHRlc3QgY2FzZSBu
YW1lcy4gVEVTVF9QIGFuZCBJTlNUQU5USUFURV9URVNUX0NBU0VfUAotLy8gbWFjcm9zIHVzZSBp
dCB0byBsb2NhdGUgdGhlaXIgY29ycmVzcG9uZGluZyBQYXJhbWV0ZXJpemVkVGVzdENhc2VJbmZv
Ci0vLyBkZXNjcmlwdG9ycy4KLWNsYXNzIFBhcmFtZXRlcml6ZWRUZXN0Q2FzZVJlZ2lzdHJ5IHsK
Ky8vIFBhcmFtZXRlcml6ZWRUZXN0U3VpdGVSZWdpc3RyeSBjb250YWlucyBhIG1hcCBvZgorLy8g
UGFyYW1ldGVyaXplZFRlc3RTdWl0ZUluZm9CYXNlIGNsYXNzZXMgYWNjZXNzZWQgYnkgdGVzdCBz
dWl0ZSBuYW1lcy4gVEVTVF9QCisvLyBhbmQgSU5TVEFOVElBVEVfVEVTVF9TVUlURV9QIG1hY3Jv
cyB1c2UgaXQgdG8gbG9jYXRlIHRoZWlyIGNvcnJlc3BvbmRpbmcKKy8vIFBhcmFtZXRlcml6ZWRU
ZXN0U3VpdGVJbmZvIGRlc2NyaXB0b3JzLgorY2xhc3MgUGFyYW1ldGVyaXplZFRlc3RTdWl0ZVJl
Z2lzdHJ5IHsKICBwdWJsaWM6Ci0gIFBhcmFtZXRlcml6ZWRUZXN0Q2FzZVJlZ2lzdHJ5KCkge30K
LSAgflBhcmFtZXRlcml6ZWRUZXN0Q2FzZVJlZ2lzdHJ5KCkgewotICAgIGZvciAoVGVzdENhc2VJ
bmZvQ29udGFpbmVyOjppdGVyYXRvciBpdCA9IHRlc3RfY2FzZV9pbmZvc18uYmVnaW4oKTsKLSAg
ICAgICAgIGl0ICE9IHRlc3RfY2FzZV9pbmZvc18uZW5kKCk7ICsraXQpIHsKLSAgICAgIGRlbGV0
ZSAqaXQ7CisgIFBhcmFtZXRlcml6ZWRUZXN0U3VpdGVSZWdpc3RyeSgpIHt9CisgIH5QYXJhbWV0
ZXJpemVkVGVzdFN1aXRlUmVnaXN0cnkoKSB7CisgICAgZm9yIChhdXRvJiB0ZXN0X3N1aXRlX2lu
Zm8gOiB0ZXN0X3N1aXRlX2luZm9zXykgeworICAgICAgZGVsZXRlIHRlc3Rfc3VpdGVfaW5mbzsK
ICAgICB9CiAgIH0KIAogICAvLyBMb29rcyB1cCBvciBjcmVhdGVzIGFuZCByZXR1cm5zIGEgc3Ry
dWN0dXJlIGNvbnRhaW5pbmcgaW5mb3JtYXRpb24gYWJvdXQKLSAgLy8gdGVzdHMgYW5kIGluc3Rh
bnRpYXRpb25zIG9mIGEgcGFydGljdWxhciB0ZXN0IGNhc2UuCi0gIHRlbXBsYXRlIDxjbGFzcyBU
ZXN0Q2FzZT4KLSAgUGFyYW1ldGVyaXplZFRlc3RDYXNlSW5mbzxUZXN0Q2FzZT4qIEdldFRlc3RD
YXNlUGF0dGVybkhvbGRlcigKLSAgICAgIGNvbnN0IGNoYXIqIHRlc3RfY2FzZV9uYW1lLAotICAg
ICAgQ29kZUxvY2F0aW9uIGNvZGVfbG9jYXRpb24pIHsKLSAgICBQYXJhbWV0ZXJpemVkVGVzdENh
c2VJbmZvPFRlc3RDYXNlPiogdHlwZWRfdGVzdF9pbmZvID0gTlVMTDsKLSAgICBmb3IgKFRlc3RD
YXNlSW5mb0NvbnRhaW5lcjo6aXRlcmF0b3IgaXQgPSB0ZXN0X2Nhc2VfaW5mb3NfLmJlZ2luKCk7
Ci0gICAgICAgICBpdCAhPSB0ZXN0X2Nhc2VfaW5mb3NfLmVuZCgpOyArK2l0KSB7Ci0gICAgICBp
ZiAoKCppdCktPkdldFRlc3RDYXNlTmFtZSgpID09IHRlc3RfY2FzZV9uYW1lKSB7Ci0gICAgICAg
IGlmICgoKml0KS0+R2V0VGVzdENhc2VUeXBlSWQoKSAhPSBHZXRUeXBlSWQ8VGVzdENhc2U+KCkp
IHsKKyAgLy8gdGVzdHMgYW5kIGluc3RhbnRpYXRpb25zIG9mIGEgcGFydGljdWxhciB0ZXN0IHN1
aXRlLgorICB0ZW1wbGF0ZSA8Y2xhc3MgVGVzdFN1aXRlPgorICBQYXJhbWV0ZXJpemVkVGVzdFN1
aXRlSW5mbzxUZXN0U3VpdGU+KiBHZXRUZXN0U3VpdGVQYXR0ZXJuSG9sZGVyKAorICAgICAgY29u
c3QgY2hhciogdGVzdF9zdWl0ZV9uYW1lLCBDb2RlTG9jYXRpb24gY29kZV9sb2NhdGlvbikgewor
ICAgIFBhcmFtZXRlcml6ZWRUZXN0U3VpdGVJbmZvPFRlc3RTdWl0ZT4qIHR5cGVkX3Rlc3RfaW5m
byA9IG51bGxwdHI7CisgICAgZm9yIChhdXRvJiB0ZXN0X3N1aXRlX2luZm8gOiB0ZXN0X3N1aXRl
X2luZm9zXykgeworICAgICAgaWYgKHRlc3Rfc3VpdGVfaW5mby0+R2V0VGVzdFN1aXRlTmFtZSgp
ID09IHRlc3Rfc3VpdGVfbmFtZSkgeworICAgICAgICBpZiAodGVzdF9zdWl0ZV9pbmZvLT5HZXRU
ZXN0U3VpdGVUeXBlSWQoKSAhPSBHZXRUeXBlSWQ8VGVzdFN1aXRlPigpKSB7CiAgICAgICAgICAg
Ly8gQ29tcGxhaW4gYWJvdXQgaW5jb3JyZWN0IHVzYWdlIG9mIEdvb2dsZSBUZXN0IGZhY2lsaXRp
ZXMKICAgICAgICAgICAvLyBhbmQgdGVybWluYXRlIHRoZSBwcm9ncmFtIHNpbmNlIHdlIGNhbm5v
dCBndWFyYW50eSBjb3JyZWN0Ci0gICAgICAgICAgLy8gdGVzdCBjYXNlIHNldHVwIGFuZCB0ZWFy
LWRvd24gaW4gdGhpcyBjYXNlLgotICAgICAgICAgIFJlcG9ydEludmFsaWRUZXN0Q2FzZVR5cGUo
dGVzdF9jYXNlX25hbWUsIGNvZGVfbG9jYXRpb24pOworICAgICAgICAgIC8vIHRlc3Qgc3VpdGUg
c2V0dXAgYW5kIHRlYXItZG93biBpbiB0aGlzIGNhc2UuCisgICAgICAgICAgUmVwb3J0SW52YWxp
ZFRlc3RTdWl0ZVR5cGUodGVzdF9zdWl0ZV9uYW1lLCBjb2RlX2xvY2F0aW9uKTsKICAgICAgICAg
ICBwb3NpeDo6QWJvcnQoKTsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAvLyBBdCB0aGlz
IHBvaW50IHdlIGFyZSBzdXJlIHRoYXQgdGhlIG9iamVjdCB3ZSBmb3VuZCBpcyBvZiB0aGUgc2Ft
ZQogICAgICAgICAgIC8vIHR5cGUgd2UgYXJlIGxvb2tpbmcgZm9yLCBzbyB3ZSBkb3duY2FzdCBp
dCB0byB0aGF0IHR5cGUKICAgICAgICAgICAvLyB3aXRob3V0IGZ1cnRoZXIgY2hlY2tzLgogICAg
ICAgICAgIHR5cGVkX3Rlc3RfaW5mbyA9IENoZWNrZWREb3duY2FzdFRvQWN0dWFsVHlwZTwKLSAg
ICAgICAgICAgICAgUGFyYW1ldGVyaXplZFRlc3RDYXNlSW5mbzxUZXN0Q2FzZT4gPigqaXQpOwor
ICAgICAgICAgICAgICBQYXJhbWV0ZXJpemVkVGVzdFN1aXRlSW5mbzxUZXN0U3VpdGU+ID4odGVz
dF9zdWl0ZV9pbmZvKTsKICAgICAgICAgfQogICAgICAgICBicmVhazsKICAgICAgIH0KICAgICB9
Ci0gICAgaWYgKHR5cGVkX3Rlc3RfaW5mbyA9PSBOVUxMKSB7Ci0gICAgICB0eXBlZF90ZXN0X2lu
Zm8gPSBuZXcgUGFyYW1ldGVyaXplZFRlc3RDYXNlSW5mbzxUZXN0Q2FzZT4oCi0gICAgICAgICAg
dGVzdF9jYXNlX25hbWUsIGNvZGVfbG9jYXRpb24pOwotICAgICAgdGVzdF9jYXNlX2luZm9zXy5w
dXNoX2JhY2sodHlwZWRfdGVzdF9pbmZvKTsKKyAgICBpZiAodHlwZWRfdGVzdF9pbmZvID09IG51
bGxwdHIpIHsKKyAgICAgIHR5cGVkX3Rlc3RfaW5mbyA9IG5ldyBQYXJhbWV0ZXJpemVkVGVzdFN1
aXRlSW5mbzxUZXN0U3VpdGU+KAorICAgICAgICAgIHRlc3Rfc3VpdGVfbmFtZSwgY29kZV9sb2Nh
dGlvbik7CisgICAgICB0ZXN0X3N1aXRlX2luZm9zXy5wdXNoX2JhY2sodHlwZWRfdGVzdF9pbmZv
KTsKICAgICB9CiAgICAgcmV0dXJuIHR5cGVkX3Rlc3RfaW5mbzsKICAgfQogICB2b2lkIFJlZ2lz
dGVyVGVzdHMoKSB7Ci0gICAgZm9yIChUZXN0Q2FzZUluZm9Db250YWluZXI6Oml0ZXJhdG9yIGl0
ID0gdGVzdF9jYXNlX2luZm9zXy5iZWdpbigpOwotICAgICAgICAgaXQgIT0gdGVzdF9jYXNlX2lu
Zm9zXy5lbmQoKTsgKytpdCkgewotICAgICAgKCppdCktPlJlZ2lzdGVyVGVzdHMoKTsKKyAgICBm
b3IgKGF1dG8mIHRlc3Rfc3VpdGVfaW5mbyA6IHRlc3Rfc3VpdGVfaW5mb3NfKSB7CisgICAgICB0
ZXN0X3N1aXRlX2luZm8tPlJlZ2lzdGVyVGVzdHMoKTsKICAgICB9CiAgIH0KKy8vICBMZWdhY3kg
QVBJIGlzIGRlcHJlY2F0ZWQgYnV0IHN0aWxsIGF2YWlsYWJsZQorI2lmbmRlZiBHVEVTVF9SRU1P
VkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KKyAgdGVtcGxhdGUgPGNsYXNzIFRlc3RDYXNlPgorICBQ
YXJhbWV0ZXJpemVkVGVzdENhc2VJbmZvPFRlc3RDYXNlPiogR2V0VGVzdENhc2VQYXR0ZXJuSG9s
ZGVyKAorICAgICAgY29uc3QgY2hhciogdGVzdF9jYXNlX25hbWUsIENvZGVMb2NhdGlvbiBjb2Rl
X2xvY2F0aW9uKSB7CisgICAgcmV0dXJuIEdldFRlc3RTdWl0ZVBhdHRlcm5Ib2xkZXI8VGVzdENh
c2U+KHRlc3RfY2FzZV9uYW1lLCBjb2RlX2xvY2F0aW9uKTsKKyAgfQorCisjZW5kaWYgIC8vICBH
VEVTVF9SRU1PVkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KKworIHByaXZhdGU6CisgIHVzaW5nIFRl
c3RTdWl0ZUluZm9Db250YWluZXIgPSA6OnN0ZDo6dmVjdG9yPFBhcmFtZXRlcml6ZWRUZXN0U3Vp
dGVJbmZvQmFzZSo+OworCisgIFRlc3RTdWl0ZUluZm9Db250YWluZXIgdGVzdF9zdWl0ZV9pbmZv
c187CisKKyAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhQYXJhbWV0ZXJpemVkVGVz
dFN1aXRlUmVnaXN0cnkpOworfTsKKworLy8gS2VlcCB0cmFjayBvZiB3aGF0IHR5cGUtcGFyYW1l
dGVyaXplZCB0ZXN0IHN1aXRlIGFyZSBkZWZpbmVkIGFuZAorLy8gd2hlcmUgYXMgd2VsbCBhcyB3
aGljaCBhcmUgaW50YXRpYXRlZC4gVGhpcyBhbGxvd3Mgc3VzZXF1ZW50bHkKKy8vIGlkZW50aWZ5
aW5nIHN1aXRzIHRoYXQgYXJlIGRlZmluZWQgYnV0IG5ldmVyIHVzZWQuCitjbGFzcyBUeXBlUGFy
YW1ldGVyaXplZFRlc3RTdWl0ZVJlZ2lzdHJ5IHsKKyBwdWJsaWM6CisgIC8vIEFkZCBhIHN1aXRl
IGRlZmluaXRpb24KKyAgdm9pZCBSZWdpc3RlclRlc3RTdWl0ZShjb25zdCBjaGFyKiB0ZXN0X3N1
aXRlX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgQ29kZUxvY2F0aW9uIGNvZGVfbG9j
YXRpb24pOworCisgIC8vIEFkZCBhbiBpbnN0YW50aWF0aW9uIG9mIGEgc3VpdC4KKyAgdm9pZCBS
ZWdpc3Rlckluc3RhbnRpYXRpb24oY29uc3QgY2hhciogdGVzdF9zdWl0ZV9uYW1lKTsKKworICAv
LyBGb3IgZWFjaCBzdWl0IHJlcG9yZWQgYXMgZGVmaW5lZCBidXQgbm90IHJlcG9ydGVkIGFzIGlu
c3RhbnRpYXRpb24sCisgIC8vIGVtaXQgYSB0ZXN0IHRoYXQgcmVwb3J0cyB0aGF0IGZhY3QgKGNv
bmZpZ3VyYWJseSwgYXMgYW4gZXJyb3IpLgorICB2b2lkIENoZWNrRm9ySW5zdGFudGlhdGlvbnMo
KTsKKworIHByaXZhdGU6CisgIHN0cnVjdCBUeXBlUGFyYW1ldGVyaXplZFRlc3RTdWl0ZUluZm8g
eworICAgIGV4cGxpY2l0IFR5cGVQYXJhbWV0ZXJpemVkVGVzdFN1aXRlSW5mbyhDb2RlTG9jYXRp
b24gYykKKyAgICAgICAgOiBjb2RlX2xvY2F0aW9uKGMpLCBpbnN0YW50aWF0ZWQoZmFsc2UpIHt9
CisKKyAgICBDb2RlTG9jYXRpb24gY29kZV9sb2NhdGlvbjsKKyAgICBib29sIGluc3RhbnRpYXRl
ZDsKKyAgfTsKKworICBzdGQ6Om1hcDxzdGQ6OnN0cmluZywgVHlwZVBhcmFtZXRlcml6ZWRUZXN0
U3VpdGVJbmZvPiBzdWl0ZXNfOworfTsKKworfSAgLy8gbmFtZXNwYWNlIGludGVybmFsCisKKy8v
IEZvcndhcmQgZGVjbGFyYXRpb25zIG9mIFZhbHVlc0luKCksIHdoaWNoIGlzIGltcGxlbWVudGVk
IGluCisvLyBpbmNsdWRlL2d0ZXN0L2d0ZXN0LXBhcmFtLXRlc3QuaC4KK3RlbXBsYXRlIDxjbGFz
cyBDb250YWluZXI+CitpbnRlcm5hbDo6UGFyYW1HZW5lcmF0b3I8dHlwZW5hbWUgQ29udGFpbmVy
Ojp2YWx1ZV90eXBlPiBWYWx1ZXNJbigKKyAgICBjb25zdCBDb250YWluZXImIGNvbnRhaW5lcik7
CisKK25hbWVzcGFjZSBpbnRlcm5hbCB7CisvLyBVc2VkIGluIHRoZSBWYWx1ZXMoKSBmdW5jdGlv
biB0byBwcm92aWRlIHBvbHltb3JwaGljIGNhcGFiaWxpdGllcy4KKwordGVtcGxhdGUgPHR5cGVu
YW1lLi4uIFRzPgorY2xhc3MgVmFsdWVBcnJheSB7CisgcHVibGljOgorICBWYWx1ZUFycmF5KFRz
Li4uIHYpIDogdl97c3RkOjptb3ZlKHYpLi4ufSB7fQorCisgIHRlbXBsYXRlIDx0eXBlbmFtZSBU
PgorICBvcGVyYXRvciBQYXJhbUdlbmVyYXRvcjxUPigpIGNvbnN0IHsgIC8vIE5PTElOVAorICAg
IHJldHVybiBWYWx1ZXNJbihNYWtlVmVjdG9yPFQ+KE1ha2VJbmRleFNlcXVlbmNlPHNpemVvZi4u
LihUcyk+KCkpKTsKKyAgfQogCiAgcHJpdmF0ZToKLSAgdHlwZWRlZiA6OnN0ZDo6dmVjdG9yPFBh
cmFtZXRlcml6ZWRUZXN0Q2FzZUluZm9CYXNlKj4gVGVzdENhc2VJbmZvQ29udGFpbmVyOworICB0
ZW1wbGF0ZSA8dHlwZW5hbWUgVCwgc2l6ZV90Li4uIEk+CisgIHN0ZDo6dmVjdG9yPFQ+IE1ha2VW
ZWN0b3IoSW5kZXhTZXF1ZW5jZTxJLi4uPikgY29uc3QgeworICAgIHJldHVybiBzdGQ6OnZlY3Rv
cjxUPntzdGF0aWNfY2FzdDxUPih2Xy50ZW1wbGF0ZSBHZXQ8ST4oKSkuLi59OworICB9CisKKyAg
RmxhdFR1cGxlPFRzLi4uPiB2XzsKK307CisKK3RlbXBsYXRlIDx0eXBlbmFtZS4uLiBUPgorY2xh
c3MgQ2FydGVzaWFuUHJvZHVjdEdlbmVyYXRvcgorICAgIDogcHVibGljIFBhcmFtR2VuZXJhdG9y
SW50ZXJmYWNlPDo6c3RkOjp0dXBsZTxULi4uPj4geworIHB1YmxpYzoKKyAgdHlwZWRlZiA6OnN0
ZDo6dHVwbGU8VC4uLj4gUGFyYW1UeXBlOworCisgIENhcnRlc2lhblByb2R1Y3RHZW5lcmF0b3Io
Y29uc3Qgc3RkOjp0dXBsZTxQYXJhbUdlbmVyYXRvcjxUPi4uLj4mIGcpCisgICAgICA6IGdlbmVy
YXRvcnNfKGcpIHt9CisgIH5DYXJ0ZXNpYW5Qcm9kdWN0R2VuZXJhdG9yKCkgb3ZlcnJpZGUge30K
KworICBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIEJlZ2luKCkgY29uc3Qgb3Zl
cnJpZGUgeworICAgIHJldHVybiBuZXcgSXRlcmF0b3IodGhpcywgZ2VuZXJhdG9yc18sIGZhbHNl
KTsKKyAgfQorICBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIEVuZCgpIGNvbnN0
IG92ZXJyaWRlIHsKKyAgICByZXR1cm4gbmV3IEl0ZXJhdG9yKHRoaXMsIGdlbmVyYXRvcnNfLCB0
cnVlKTsKKyAgfQorCisgcHJpdmF0ZToKKyAgdGVtcGxhdGUgPGNsYXNzIEk+CisgIGNsYXNzIEl0
ZXJhdG9ySW1wbDsKKyAgdGVtcGxhdGUgPHNpemVfdC4uLiBJPgorICBjbGFzcyBJdGVyYXRvcklt
cGw8SW5kZXhTZXF1ZW5jZTxJLi4uPj4KKyAgICAgIDogcHVibGljIFBhcmFtSXRlcmF0b3JJbnRl
cmZhY2U8UGFyYW1UeXBlPiB7CisgICBwdWJsaWM6CisgICAgSXRlcmF0b3JJbXBsKGNvbnN0IFBh
cmFtR2VuZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4qIGJhc2UsCisgICAgICAgICAgICAgY29u
c3Qgc3RkOjp0dXBsZTxQYXJhbUdlbmVyYXRvcjxUPi4uLj4mIGdlbmVyYXRvcnMsIGJvb2wgaXNf
ZW5kKQorICAgICAgICA6IGJhc2VfKGJhc2UpLAorICAgICAgICAgIGJlZ2luXyhzdGQ6OmdldDxJ
PihnZW5lcmF0b3JzKS5iZWdpbigpLi4uKSwKKyAgICAgICAgICBlbmRfKHN0ZDo6Z2V0PEk+KGdl
bmVyYXRvcnMpLmVuZCgpLi4uKSwKKyAgICAgICAgICBjdXJyZW50Xyhpc19lbmQgPyBlbmRfIDog
YmVnaW5fKSB7CisgICAgICBDb21wdXRlQ3VycmVudFZhbHVlKCk7CisgICAgfQorICAgIH5JdGVy
YXRvckltcGwoKSBvdmVycmlkZSB7fQorCisgICAgY29uc3QgUGFyYW1HZW5lcmF0b3JJbnRlcmZh
Y2U8UGFyYW1UeXBlPiogQmFzZUdlbmVyYXRvcigpIGNvbnN0IG92ZXJyaWRlIHsKKyAgICAgIHJl
dHVybiBiYXNlXzsKKyAgICB9CisgICAgLy8gQWR2YW5jZSBzaG91bGQgbm90IGJlIGNhbGxlZCBv
biBiZXlvbmQtb2YtcmFuZ2UgaXRlcmF0b3JzCisgICAgLy8gc28gbm8gY29tcG9uZW50IGl0ZXJh
dG9ycyBtdXN0IGJlIGJleW9uZCBlbmQgb2YgcmFuZ2UsIGVpdGhlci4KKyAgICB2b2lkIEFkdmFu
Y2UoKSBvdmVycmlkZSB7CisgICAgICBhc3NlcnQoIUF0RW5kKCkpOworICAgICAgLy8gQWR2YW5j
ZSB0aGUgbGFzdCBpdGVyYXRvci4KKyAgICAgICsrc3RkOjpnZXQ8c2l6ZW9mLi4uKFQpIC0gMT4o
Y3VycmVudF8pOworICAgICAgLy8gaWYgdGhhdCByZWFjaGVzIGVuZCwgcHJvcGFnYXRlIHRoYXQg
dXAuCisgICAgICBBZHZhbmNlSWZFbmQ8c2l6ZW9mLi4uKFQpIC0gMT4oKTsKKyAgICAgIENvbXB1
dGVDdXJyZW50VmFsdWUoKTsKKyAgICB9CisgICAgUGFyYW1JdGVyYXRvckludGVyZmFjZTxQYXJh
bVR5cGU+KiBDbG9uZSgpIGNvbnN0IG92ZXJyaWRlIHsKKyAgICAgIHJldHVybiBuZXcgSXRlcmF0
b3JJbXBsKCp0aGlzKTsKKyAgICB9CiAKLSAgVGVzdENhc2VJbmZvQ29udGFpbmVyIHRlc3RfY2Fz
ZV9pbmZvc187CisgICAgY29uc3QgUGFyYW1UeXBlKiBDdXJyZW50KCkgY29uc3Qgb3ZlcnJpZGUg
eyByZXR1cm4gY3VycmVudF92YWx1ZV8uZ2V0KCk7IH0KIAotICBHVEVTVF9ESVNBTExPV19DT1BZ
X0FORF9BU1NJR05fKFBhcmFtZXRlcml6ZWRUZXN0Q2FzZVJlZ2lzdHJ5KTsKKyAgICBib29sIEVx
dWFscyhjb25zdCBQYXJhbUl0ZXJhdG9ySW50ZXJmYWNlPFBhcmFtVHlwZT4mIG90aGVyKSBjb25z
dCBvdmVycmlkZSB7CisgICAgICAvLyBIYXZpbmcgdGhlIHNhbWUgYmFzZSBnZW5lcmF0b3IgZ3Vh
cmFudGVlcyB0aGF0IHRoZSBvdGhlcgorICAgICAgLy8gaXRlcmF0b3IgaXMgb2YgdGhlIHNhbWUg
dHlwZSBhbmQgd2UgY2FuIGRvd25jYXN0LgorICAgICAgR1RFU1RfQ0hFQ0tfKEJhc2VHZW5lcmF0
b3IoKSA9PSBvdGhlci5CYXNlR2VuZXJhdG9yKCkpCisgICAgICAgICAgPDwgIlRoZSBwcm9ncmFt
IGF0dGVtcHRlZCB0byBjb21wYXJlIGl0ZXJhdG9ycyAiCisgICAgICAgICAgPDwgImZyb20gZGlm
ZmVyZW50IGdlbmVyYXRvcnMuIiA8PCBzdGQ6OmVuZGw7CisgICAgICBjb25zdCBJdGVyYXRvcklt
cGwqIHR5cGVkX290aGVyID0KKyAgICAgICAgICBDaGVja2VkRG93bmNhc3RUb0FjdHVhbFR5cGU8
Y29uc3QgSXRlcmF0b3JJbXBsPigmb3RoZXIpOworCisgICAgICAvLyBXZSBtdXN0IHJlcG9ydCBp
dGVyYXRvcnMgZXF1YWwgaWYgdGhleSBib3RoIHBvaW50IGJleW9uZCB0aGVpcgorICAgICAgLy8g
cmVzcGVjdGl2ZSByYW5nZXMuIFRoYXQgY2FuIGhhcHBlbiBpbiBhIHZhcmlldHkgb2YgZmFzaGlv
bnMsCisgICAgICAvLyBzbyB3ZSBoYXZlIHRvIGNvbnN1bHQgQXRFbmQoKS4KKyAgICAgIGlmIChB
dEVuZCgpICYmIHR5cGVkX290aGVyLT5BdEVuZCgpKSByZXR1cm4gdHJ1ZTsKKworICAgICAgYm9v
bCBzYW1lID0gdHJ1ZTsKKyAgICAgIGJvb2wgZHVtbXlbXSA9IHsKKyAgICAgICAgICAoc2FtZSA9
IHNhbWUgJiYgc3RkOjpnZXQ8ST4oY3VycmVudF8pID09CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzdGQ6OmdldDxJPih0eXBlZF9vdGhlci0+Y3VycmVudF8pKS4uLn07CisgICAgICAo
dm9pZClkdW1teTsKKyAgICAgIHJldHVybiBzYW1lOworICAgIH0KKworICAgcHJpdmF0ZToKKyAg
ICB0ZW1wbGF0ZSA8c2l6ZV90IFRoaXNJPgorICAgIHZvaWQgQWR2YW5jZUlmRW5kKCkgeworICAg
ICAgaWYgKHN0ZDo6Z2V0PFRoaXNJPihjdXJyZW50XykgIT0gc3RkOjpnZXQ8VGhpc0k+KGVuZF8p
KSByZXR1cm47CisKKyAgICAgIGJvb2wgbGFzdCA9IFRoaXNJID09IDA7CisgICAgICBpZiAobGFz
dCkgeworICAgICAgICAvLyBXZSBhcmUgZG9uZS4gTm90aGluZyBlbHNlIHRvIHByb3BhZ2F0ZS4K
KyAgICAgICAgcmV0dXJuOworICAgICAgfQorCisgICAgICBjb25zdGV4cHIgc2l6ZV90IE5leHRJ
ID0gVGhpc0kgLSAoVGhpc0kgIT0gMCk7CisgICAgICBzdGQ6OmdldDxUaGlzST4oY3VycmVudF8p
ID0gc3RkOjpnZXQ8VGhpc0k+KGJlZ2luXyk7CisgICAgICArK3N0ZDo6Z2V0PE5leHRJPihjdXJy
ZW50Xyk7CisgICAgICBBZHZhbmNlSWZFbmQ8TmV4dEk+KCk7CisgICAgfQorCisgICAgdm9pZCBD
b21wdXRlQ3VycmVudFZhbHVlKCkgeworICAgICAgaWYgKCFBdEVuZCgpKQorICAgICAgICBjdXJy
ZW50X3ZhbHVlXyA9IHN0ZDo6bWFrZV9zaGFyZWQ8UGFyYW1UeXBlPigqc3RkOjpnZXQ8ST4oY3Vy
cmVudF8pLi4uKTsKKyAgICB9CisgICAgYm9vbCBBdEVuZCgpIGNvbnN0IHsKKyAgICAgIGJvb2wg
YXRfZW5kID0gZmFsc2U7CisgICAgICBib29sIGR1bW15W10gPSB7CisgICAgICAgICAgKGF0X2Vu
ZCA9IGF0X2VuZCB8fCBzdGQ6OmdldDxJPihjdXJyZW50XykgPT0gc3RkOjpnZXQ8ST4oZW5kXykp
Li4ufTsKKyAgICAgICh2b2lkKWR1bW15OworICAgICAgcmV0dXJuIGF0X2VuZDsKKyAgICB9CisK
KyAgICBjb25zdCBQYXJhbUdlbmVyYXRvckludGVyZmFjZTxQYXJhbVR5cGU+KiBjb25zdCBiYXNl
XzsKKyAgICBzdGQ6OnR1cGxlPHR5cGVuYW1lIFBhcmFtR2VuZXJhdG9yPFQ+OjppdGVyYXRvci4u
Lj4gYmVnaW5fOworICAgIHN0ZDo6dHVwbGU8dHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8VD46Oml0
ZXJhdG9yLi4uPiBlbmRfOworICAgIHN0ZDo6dHVwbGU8dHlwZW5hbWUgUGFyYW1HZW5lcmF0b3I8
VD46Oml0ZXJhdG9yLi4uPiBjdXJyZW50XzsKKyAgICBzdGQ6OnNoYXJlZF9wdHI8UGFyYW1UeXBl
PiBjdXJyZW50X3ZhbHVlXzsKKyAgfTsKKworICB1c2luZyBJdGVyYXRvciA9IEl0ZXJhdG9ySW1w
bDx0eXBlbmFtZSBNYWtlSW5kZXhTZXF1ZW5jZTxzaXplb2YuLi4oVCk+Ojp0eXBlPjsKKworICBz
dGQ6OnR1cGxlPFBhcmFtR2VuZXJhdG9yPFQ+Li4uPiBnZW5lcmF0b3JzXzsKK307CisKK3RlbXBs
YXRlIDxjbGFzcy4uLiBHZW4+CitjbGFzcyBDYXJ0ZXNpYW5Qcm9kdWN0SG9sZGVyIHsKKyBwdWJs
aWM6CisgIENhcnRlc2lhblByb2R1Y3RIb2xkZXIoY29uc3QgR2VuJi4uLiBnKSA6IGdlbmVyYXRv
cnNfKGcuLi4pIHt9CisgIHRlbXBsYXRlIDx0eXBlbmFtZS4uLiBUPgorICBvcGVyYXRvciBQYXJh
bUdlbmVyYXRvcjw6OnN0ZDo6dHVwbGU8VC4uLj4+KCkgY29uc3QgeworICAgIHJldHVybiBQYXJh
bUdlbmVyYXRvcjw6OnN0ZDo6dHVwbGU8VC4uLj4+KAorICAgICAgICBuZXcgQ2FydGVzaWFuUHJv
ZHVjdEdlbmVyYXRvcjxULi4uPihnZW5lcmF0b3JzXykpOworICB9CisKKyBwcml2YXRlOgorICBz
dGQ6OnR1cGxlPEdlbi4uLj4gZ2VuZXJhdG9yc187CiB9OwogCiB9ICAvLyBuYW1lc3BhY2UgaW50
ZXJuYWwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMv
aW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1wb3J0LWFyY2guaCBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhp
cmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1wb3J0
LWFyY2guaAppbmRleCBmODM3MDBlMDZkOThjMzZmNjQ4NzI5MWMzZjkzMTgwN2FmMzUzZjc0Li5k
MzIzOWIyNWJhZjliZjQ3N2ExOGNhOTJiZDczMDFiMWIzMmRmM2E5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwv
Z3Rlc3QtcG9ydC1hcmNoLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0
L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQtYXJjaC5oCkBAIC0zOCwxNCAr
MzgsMTMgQEAKIC8vIERldGVybWluZXMgdGhlIHBsYXRmb3JtIG9uIHdoaWNoIEdvb2dsZSBUZXN0
IGlzIGNvbXBpbGVkLgogI2lmZGVmIF9fQ1lHV0lOX18KICMgZGVmaW5lIEdURVNUX09TX0NZR1dJ
TiAxCi0jZWxpZiBkZWZpbmVkIF9fU1lNQklBTjMyX18KLSMgZGVmaW5lIEdURVNUX09TX1NZTUJJ
QU4gMQorIyBlbGlmIGRlZmluZWQoX19NSU5HV19fKSB8fCBkZWZpbmVkKF9fTUlOR1czMl9fKSB8
fCBkZWZpbmVkKF9fTUlOR1c2NF9fKQorIyAgZGVmaW5lIEdURVNUX09TX1dJTkRPV1NfTUlOR1cg
MQorIyAgZGVmaW5lIEdURVNUX09TX1dJTkRPV1MgMQogI2VsaWYgZGVmaW5lZCBfV0lOMzIKICMg
ZGVmaW5lIEdURVNUX09TX1dJTkRPV1MgMQogIyBpZmRlZiBfV0lOMzJfV0NFCiAjICBkZWZpbmUg
R1RFU1RfT1NfV0lORE9XU19NT0JJTEUgMQotIyBlbGlmIGRlZmluZWQoX19NSU5HV19fKSB8fCBk
ZWZpbmVkKF9fTUlOR1czMl9fKQotIyAgZGVmaW5lIEdURVNUX09TX1dJTkRPV1NfTUlOR1cgMQog
IyBlbGlmIGRlZmluZWQoV0lOQVBJX0ZBTUlMWSkKICMgIGluY2x1ZGUgPHdpbmFwaWZhbWlseS5o
PgogIyAgaWYgV0lOQVBJX0ZBTUlMWV9QQVJUSVRJT04oV0lOQVBJX1BBUlRJVElPTl9ERVNLVE9Q
KQpAQCAtNjUsMTUgKzY0LDIxIEBACiAjIGVsc2UKICMgIGRlZmluZSBHVEVTVF9PU19XSU5ET1dT
X0RFU0tUT1AgMQogIyBlbmRpZiAgLy8gX1dJTjMyX1dDRQorI2VsaWYgZGVmaW5lZCBfX09TMl9f
CisjIGRlZmluZSBHVEVTVF9PU19PUzIgMQogI2VsaWYgZGVmaW5lZCBfX0FQUExFX18KICMgZGVm
aW5lIEdURVNUX09TX01BQyAxCiAjIGlmIFRBUkdFVF9PU19JUEhPTkUKICMgIGRlZmluZSBHVEVT
VF9PU19JT1MgMQogIyBlbmRpZgorI2VsaWYgZGVmaW5lZCBfX0RyYWdvbkZseV9fCisjIGRlZmlu
ZSBHVEVTVF9PU19EUkFHT05GTFkgMQogI2VsaWYgZGVmaW5lZCBfX0ZyZWVCU0RfXwogIyBkZWZp
bmUgR1RFU1RfT1NfRlJFRUJTRCAxCiAjZWxpZiBkZWZpbmVkIF9fRnVjaHNpYV9fCiAjIGRlZmlu
ZSBHVEVTVF9PU19GVUNIU0lBIDEKKyNlbGlmIGRlZmluZWQoX19HTElCQ19fKSAmJiBkZWZpbmVk
KF9fRnJlZUJTRF9rZXJuZWxfXykKKyMgZGVmaW5lIEdURVNUX09TX0dOVV9LRlJFRUJTRCAxCiAj
ZWxpZiBkZWZpbmVkIF9fbGludXhfXwogIyBkZWZpbmUgR1RFU1RfT1NfTElOVVggMQogIyBpZiBk
ZWZpbmVkIF9fQU5EUk9JRF9fCkBAIC05NSw2ICsxMDAsMTIgQEAKICMgZGVmaW5lIEdURVNUX09T
X09QRU5CU0QgMQogI2VsaWYgZGVmaW5lZCBfX1FOWF9fCiAjIGRlZmluZSBHVEVTVF9PU19RTlgg
MQorI2VsaWYgZGVmaW5lZChfX0hBSUtVX18pCisjZGVmaW5lIEdURVNUX09TX0hBSUtVIDEKKyNl
bGlmIGRlZmluZWQgRVNQODI2NgorI2RlZmluZSBHVEVTVF9PU19FU1A4MjY2IDEKKyNlbGlmIGRl
ZmluZWQgRVNQMzIKKyNkZWZpbmUgR1RFU1RfT1NfRVNQMzIgMQogI2VuZGlmICAvLyBfX0NZR1dJ
Tl9fCiAKICNlbmRpZiAgLy8gR1RFU1RfSU5DTFVERV9HVEVTVF9JTlRFUk5BTF9HVEVTVF9QT1JU
X0FSQ0hfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9z
cmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1wb3J0LmggYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJk
X3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3QtcG9ydC5o
CmluZGV4IDc4NjQ5N2Q4NTRjOTdmMWI2YWI5MzcyYTI0MWMxZmExNTVhMzBhNTQuLjYwZmY0NzE2
NGYxNWM3NTZlZGVjMWNiMjFkZWRiN2RiN2U0N2FiOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1w
b3J0LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRl
L2d0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQuaApAQCAtNzIsMTAgKzcyLDYgQEAKIC8vICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaXMvaXNuJ3QgYXZhaWxhYmxlLgogLy8gICBHVEVTVF9I
QVNfRVhDRVBUSU9OUyAgICAgLSBEZWZpbmUgaXQgdG8gMS8wIHRvIGluZGljYXRlIHRoYXQgZXhj
ZXB0aW9ucwogLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmUgZW5hYmxlZC4KLS8v
ICAgR1RFU1RfSEFTX0dMT0JBTF9TVFJJTkcgIC0gRGVmaW5lIGl0IHRvIDEvMCB0byBpbmRpY2F0
ZSB0aGF0IDo6c3RyaW5nCi0vLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzL2lzbid0
IGF2YWlsYWJsZQotLy8gICBHVEVTVF9IQVNfR0xPQkFMX1dTVFJJTkcgLSBEZWZpbmUgaXQgdG8g
MS8wIHRvIGluZGljYXRlIHRoYXQgOjp3c3RyaW5nCi0vLyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGlzL2lzbid0IGF2YWlsYWJsZQogLy8gICBHVEVTVF9IQVNfUE9TSVhfUkUgICAgICAg
LSBEZWZpbmUgaXQgdG8gMS8wIHRvIGluZGljYXRlIHRoYXQgUE9TSVggcmVndWxhcgogLy8gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9ucyBhcmUvYXJlbid0IGF2YWlsYWJs
ZS4KIC8vICAgR1RFU1RfSEFTX1BUSFJFQUQgICAgICAgIC0gRGVmaW5lIGl0IHRvIDEvMCB0byBp
bmRpY2F0ZSB0aGF0IDxwdGhyZWFkLmg+CkBAIC04NSw4ICs4MSw2IEBACiAvLyAgIEdURVNUX0hB
U19TVERfV1NUUklORyAgICAtIERlZmluZSBpdCB0byAxLzAgdG8gaW5kaWNhdGUgdGhhdAogLy8g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGQ6OndzdHJpbmcgZG9lcy9kb2Vzbid0IHdv
cmsgKEdvb2dsZSBUZXN0IGNhbgogLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZSB1
c2VkIHdoZXJlIHN0ZDo6d3N0cmluZyBpcyB1bmF2YWlsYWJsZSkuCi0vLyAgIEdURVNUX0hBU19U
UjFfVFVQTEUgICAgICAtIERlZmluZSBpdCB0byAxLzAgdG8gaW5kaWNhdGUgdHIxOjp0dXBsZQot
Ly8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpcy9pc24ndCBhdmFpbGFibGUuCiAvLyAg
IEdURVNUX0hBU19TRUggICAgICAgICAgICAtIERlZmluZSBpdCB0byAxLzAgdG8gaW5kaWNhdGUg
d2hldGhlciB0aGUKIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcGlsZXIgc3Vw
cG9ydHMgTWljcm9zb2Z0J3MgIlN0cnVjdHVyZWQKIC8vICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgRXhjZXB0aW9uIEhhbmRsaW5nIi4KQEAgLTk0LDEyICs4OCw2IEBACiAvLyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAtIERlZmluZSBpdCB0byAxLzAgdG8gaW5kaWNhdGUgd2hldGhl
ciB0aGUKIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhdGZvcm0gc3VwcG9ydHMg
SS9PIHN0cmVhbSByZWRpcmVjdGlvbiB1c2luZwogLy8gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBkdXAoKSBhbmQgZHVwMigpLgotLy8gICBHVEVTVF9VU0VfT1dOX1RSMV9UVVBMRSAgLSBE
ZWZpbmUgaXQgdG8gMS8wIHRvIGluZGljYXRlIHdoZXRoZXIgR29vZ2xlCi0vLyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFRlc3QncyBvd24gdHIxIHR1cGxlIGltcGxlbWVudGF0aW9uIHNo
b3VsZCBiZQotLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VkLiAgVW51c2VkIHdo
ZW4gdGhlIHVzZXIgc2V0cwotLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHVEVTVF9I
QVNfVFIxX1RVUExFIHRvIDAuCi0vLyAgIEdURVNUX0xBTkdfQ1hYMTEgICAgICAgICAtIERlZmlu
ZSBpdCB0byAxLzAgdG8gaW5kaWNhdGUgdGhhdCBHb29nbGUgVGVzdAotLy8gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpcyBidWlsZGluZyBpbiBDKysxMS9DKys5OCBtb2RlLgogLy8gICBH
VEVTVF9MSU5LRURfQVNfU0hBUkVEX0xJQlJBUlkKIC8vICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC0gRGVmaW5lIHRvIDEgd2hlbiBjb21waWxpbmcgdGVzdHMgdGhhdCB1c2UKIC8vICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgR29vZ2xlIFRlc3QgYXMgYSBzaGFyZWQgbGlicmFyeSAo
a25vd24gYXMKQEAgLTEyNSw4ICsxMTMsMTEgQEAKIC8vCiAvLyAgIEdURVNUX09TX0FJWCAgICAg
IC0gSUJNIEFJWAogLy8gICBHVEVTVF9PU19DWUdXSU4gICAtIEN5Z3dpbgorLy8gICBHVEVTVF9P
U19EUkFHT05GTFkgLSBEcmFnb25GbHlCU0QKIC8vICAgR1RFU1RfT1NfRlJFRUJTRCAgLSBGcmVl
QlNECiAvLyAgIEdURVNUX09TX0ZVQ0hTSUEgIC0gRnVjaHNpYQorLy8gICBHVEVTVF9PU19HTlVf
S0ZSRUVCU0QgLSBHTlUva0ZyZWVCU0QKKy8vICAgR1RFU1RfT1NfSEFJS1UgICAgLSBIYWlrdQog
Ly8gICBHVEVTVF9PU19IUFVYICAgICAtIEhQLVVYCiAvLyAgIEdURVNUX09TX0xJTlVYICAgIC0g
TGludXgKIC8vICAgICBHVEVTVF9PU19MSU5VWF9BTkRST0lEIC0gR29vZ2xlIEFuZHJvaWQKQEAg
LTEzNSw5ICsxMjYsOSBAQAogLy8gICBHVEVTVF9PU19OQUNMICAgICAtIEdvb2dsZSBOYXRpdmUg
Q2xpZW50IChOYUNsKQogLy8gICBHVEVTVF9PU19ORVRCU0QgICAtIE5ldEJTRAogLy8gICBHVEVT
VF9PU19PUEVOQlNEICAtIE9wZW5CU0QKKy8vICAgR1RFU1RfT1NfT1MyICAgICAgLSBPUy8yCiAv
LyAgIEdURVNUX09TX1FOWCAgICAgIC0gUU5YCiAvLyAgIEdURVNUX09TX1NPTEFSSVMgIC0gU3Vu
IFNvbGFyaXMKLS8vICAgR1RFU1RfT1NfU1lNQklBTiAgLSBTeW1iaWFuCiAvLyAgIEdURVNUX09T
X1dJTkRPV1MgIC0gV2luZG93cyAoRGVza3RvcCwgTWluR1csIG9yIE1vYmlsZSkKIC8vICAgICBH
VEVTVF9PU19XSU5ET1dTX0RFU0tUT1AgIC0gV2luZG93cyBEZXNrdG9wCiAvLyAgICAgR1RFU1Rf
T1NfV0lORE9XU19NSU5HVyAgICAtIE1pbkdXCkBAIC0xNDYsNyArMTM3LDcgQEAKIC8vICAgICBH
VEVTVF9PU19XSU5ET1dTX1JUICAgICAgIC0gV2luZG93cyBTdG9yZSBBcHAvV2luUlQKIC8vICAg
R1RFU1RfT1NfWk9TICAgICAgLSB6L09TCiAvLwotLy8gQW1vbmcgdGhlIHBsYXRmb3JtcywgQ3ln
d2luLCBMaW51eCwgTWF4IE9TIFgsIGFuZCBXaW5kb3dzIGhhdmUgdGhlCisvLyBBbW9uZyB0aGUg
cGxhdGZvcm1zLCBDeWd3aW4sIExpbnV4LCBNYWMgT1MgWCwgYW5kIFdpbmRvd3MgaGF2ZSB0aGUK
IC8vIG1vc3Qgc3RhYmxlIHN1cHBvcnQuICBTaW5jZSBjb3JlIG1lbWJlcnMgb2YgdGhlIEdvb2ds
ZSBUZXN0IHByb2plY3QKIC8vIGRvbid0IGhhdmUgYWNjZXNzIHRvIG90aGVyIHBsYXRmb3Jtcywg
c3VwcG9ydCBmb3IgdGhlbSBtYXkgYmUgbGVzcwogLy8gc3RhYmxlLiAgSWYgeW91IG5vdGljZSBh
bnkgcHJvYmxlbXMgb24geW91ciBwbGF0Zm9ybSwgcGxlYXNlIG5vdGlmeQpAQCAtMTcyLDggKzE2
Myw2IEBACiAvLyAgIEVYUEVDVF9ERUFUSChEb1NvbWV0aGluZ0RlYWRseSgpKTsKIC8vICNlbmRp
ZgogLy8KLS8vICAgR1RFU1RfSEFTX0NPTUJJTkUgICAgICAtIHRoZSBDb21iaW5lKCkgZnVuY3Rp
b24gKGZvciB2YWx1ZS1wYXJhbWV0ZXJpemVkCi0vLyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB0ZXN0cykKIC8vICAgR1RFU1RfSEFTX0RFQVRIX1RFU1QgICAtIGRlYXRoIHRlc3RzCiAvLyAg
IEdURVNUX0hBU19UWVBFRF9URVNUICAgLSB0eXBlZCB0ZXN0cwogLy8gICBHVEVTVF9IQVNfVFlQ
RURfVEVTVF9QIC0gdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3RzCkBAIC0xODQsNyArMTczLDYgQEAK
IC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmluZSB0aGVtc2VsdmVzLgogLy8gICBH
VEVTVF9VU0VTX1NJTVBMRV9SRSAgIC0gb3VyIG93biBzaW1wbGUgcmVnZXggaXMgdXNlZDsKIC8v
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBhYm92ZSBSRVxiKHMpIGFyZSBtdXR1YWxs
eSBleGNsdXNpdmUuCi0vLyAgIEdURVNUX0NBTl9DT01QQVJFX05VTEwgLSBhY2NlcHRzIHVudHlw
ZWQgTlVMTCBpbiBFWFBFQ1RfRVEoKS4KIAogLy8gTWlzYyBwdWJsaWMgbWFjcm9zCiAvLyAtLS0t
LS0tLS0tLS0tLS0tLS0KQEAgLTIwMiwzMSArMTkwLDIzIEBACiAvLyAgIEdURVNUX0FNQklHVU9V
U19FTFNFX0JMT0NLRVJfIC0gZm9yIGRpc2FibGluZyBhIGdjYyB3YXJuaW5nLgogLy8gICBHVEVT
VF9BVFRSSUJVVEVfVU5VU0VEXyAgLSBkZWNsYXJlcyB0aGF0IGEgY2xhc3MnIGluc3RhbmNlcyBv
ciBhCiAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcmlhYmxlIGRvbid0IGhhdmUg
dG8gYmUgdXNlZC4KLS8vICAgR1RFU1RfRElTQUxMT1dfQVNTSUdOXyAgIC0gZGlzYWJsZXMgb3Bl
cmF0b3I9LgorLy8gICBHVEVTVF9ESVNBTExPV19BU1NJR05fICAgLSBkaXNhYmxlcyBjb3B5IG9w
ZXJhdG9yPS4KIC8vICAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyAtIGRpc2FibGVz
IGNvcHkgY3RvciBhbmQgb3BlcmF0b3I9LgorLy8gICBHVEVTVF9ESVNBTExPV19NT1ZFX0FTU0lH
Tl8gICAtIGRpc2FibGVzIG1vdmUgb3BlcmF0b3I9LgorLy8gICBHVEVTVF9ESVNBTExPV19NT1ZF
X0FORF9BU1NJR05fIC0gZGlzYWJsZXMgbW92ZSBjdG9yIGFuZCBvcGVyYXRvcj0uCiAvLyAgIEdU
RVNUX01VU1RfVVNFX1JFU1VMVF8gICAtIGRlY2xhcmVzIHRoYXQgYSBmdW5jdGlvbidzIHJlc3Vs
dCBtdXN0IGJlIHVzZWQuCiAvLyAgIEdURVNUX0lOVEVOVElPTkFMX0NPTlNUX0NPTkRfUFVTSF8g
LSBzdGFydCBjb2RlIHNlY3Rpb24gd2hlcmUgTVNWQyBDNDEyNyBpcwogLy8gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcHJlc3NlZCAoY29uc3RhbnQgY29uZGl0aW9u
YWwpLgogLy8gICBHVEVTVF9JTlRFTlRJT05BTF9DT05TVF9DT05EX1BPUF8gIC0gZmluaXNoIGNv
ZGUgc2VjdGlvbiB3aGVyZSBNU1ZDIEM0MTI3CiAvLyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpcyBzdXBwcmVzc2VkLgotLy8KLS8vIEMrKzExIGZlYXR1cmUgd3JhcHBl
cnM6Ci0vLwotLy8gICB0ZXN0aW5nOjppbnRlcm5hbDo6Zm9yd2FyZCAtIHBvcnRhYmlsaXR5IHdy
YXBwZXIgZm9yIHN0ZDo6Zm9yd2FyZC4KLS8vICAgdGVzdGluZzo6aW50ZXJuYWw6Om1vdmUgIC0g
cG9ydGFiaWxpdHkgd3JhcHBlciBmb3Igc3RkOjptb3ZlLgorLy8gICBHVEVTVF9JTlRFUk5BTF9I
QVNfU1RSSU5HX1ZJRVcgLSBmb3IgZW5hYmxpbmcgTWF0Y2hlcjxzdGQ6OnN0cmluZ192aWV3PiBv
cgorLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNYXRjaGVyPGFic2w6OnN0
cmluZ192aWV3PgorLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGVjaWFs
aXphdGlvbnMuCiAvLwogLy8gU3luY2hyb25pemF0aW9uOgogLy8gICBNdXRleCwgTXV0ZXhMb2Nr
LCBUaHJlYWRMb2NhbCwgR2V0VGhyZWFkQ291bnQoKQogLy8gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLSBzeW5jaHJvbml6YXRpb24gcHJpbWl0aXZlcy4KIC8vCi0vLyBUZW1wbGF0ZSBtZXRh
IHByb2dyYW1taW5nOgotLy8gICBpc19wb2ludGVyICAgICAtIGFzIGluIFRSMTsgbmVlZGVkIG9u
IFN5bWJpYW4gYW5kIElCTSBYTCBDL0MrKyBvbmx5LgotLy8gICBJdGVyYXRvclRyYWl0cyAtIHBh
cnRpYWwgaW1wbGVtZW50YXRpb24gb2Ygc3RkOjppdGVyYXRvcl90cmFpdHMsIHdoaWNoCi0vLyAg
ICAgICAgICAgICAgICAgICAgaXMgbm90IGF2YWlsYWJsZSBpbiBsaWJDc3RkIHdoZW4gY29tcGls
ZWQgd2l0aCBTdW4gQysrLgotLy8KLS8vIFNtYXJ0IHBvaW50ZXJzOgotLy8gICBzY29wZWRfcHRy
ICAgICAtIGFzIGluIFRSMi4KLS8vCiAvLyBSZWd1bGFyIGV4cHJlc3Npb25zOgogLy8gICBSRSAg
ICAgICAgICAgICAtIGEgc2ltcGxlIHJlZ3VsYXIgZXhwcmVzc2lvbiBjbGFzcyB1c2luZyB0aGUg
UE9TSVgKIC8vICAgICAgICAgICAgICAgICAgICBFeHRlbmRlZCBSZWd1bGFyIEV4cHJlc3Npb24g
c3ludGF4IG9uIFVOSVgtbGlrZSBwbGF0Zm9ybXMKQEAgLTI0OCw4ICsyMjgsNyBAQAogLy8KIC8v
IEludGVnZXIgdHlwZXM6CiAvLyAgIFR5cGVXaXRoU2l6ZSAgIC0gbWFwcyBhbiBpbnRlZ2VyIHRv
IGEgaW50IHR5cGUuCi0vLyAgIEludDMyLCBVSW50MzIsIEludDY0LCBVSW50NjQsIFRpbWVJbk1p
bGxpcwotLy8gICAgICAgICAgICAgICAgICAtIGludGVnZXJzIG9mIGtub3duIHNpemVzLgorLy8g
ICBUaW1lSW5NaWxsaXMgICAtIGludGVnZXJzIG9mIGtub3duIHNpemVzLgogLy8gICBCaWdnZXN0
SW50ICAgICAtIHRoZSBiaWdnZXN0IHNpZ25lZCBpbnRlZ2VyIHR5cGUuCiAvLwogLy8gQ29tbWFu
ZC1saW5lIHV0aWxpdGllczoKQEAgLTI2MCwxNCArMjM5LDIzIEBACiAvLyBFbnZpcm9ubWVudCB2
YXJpYWJsZSB1dGlsaXRpZXM6CiAvLyAgIEdldEVudigpICAgICAgICAgICAgIC0gZ2V0cyB0aGUg
dmFsdWUgb2YgYW4gZW52aXJvbm1lbnQgdmFyaWFibGUuCiAvLyAgIEJvb2xGcm9tR1Rlc3RFbnYo
KSAgIC0gcGFyc2VzIGEgYm9vbCBlbnZpcm9ubWVudCB2YXJpYWJsZS4KLS8vICAgSW50MzJGcm9t
R1Rlc3RFbnYoKSAgLSBwYXJzZXMgYW4gSW50MzIgZW52aXJvbm1lbnQgdmFyaWFibGUuCisvLyAg
IEludDMyRnJvbUdUZXN0RW52KCkgIC0gcGFyc2VzIGFuIGludDMyX3QgZW52aXJvbm1lbnQgdmFy
aWFibGUuCiAvLyAgIFN0cmluZ0Zyb21HVGVzdEVudigpIC0gcGFyc2VzIGEgc3RyaW5nIGVudmly
b25tZW50IHZhcmlhYmxlLgorLy8KKy8vIERlcHJlY2F0aW9uIHdhcm5pbmdzOgorLy8gICBHVEVT
VF9JTlRFUk5BTF9ERVBSRUNBVEVEKG1lc3NhZ2UpIC0gYXR0cmlidXRlIG1hcmtpbmcgYSBmdW5j
dGlvbiBhcworLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVwcmVj
YXRlZDsgY2FsbGluZyBhIG1hcmtlZCBmdW5jdGlvbgorLy8gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc2hvdWxkIGdlbmVyYXRlIGEgY29tcGlsZXIgd2FybmluZwogCiAj
aW5jbHVkZSA8Y3R5cGUuaD4gICAvLyBmb3IgaXNzcGFjZSwgZXRjCiAjaW5jbHVkZSA8c3RkZGVm
Lmg+ICAvLyBmb3IgcHRyZGlmZl90Ci0jaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8c3Rk
aW8uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KICNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRl
IDxjc3RkaW50PgorI2luY2x1ZGUgPGxpbWl0cz4KKyNpbmNsdWRlIDx0eXBlX3RyYWl0cz4KKwog
I2lmbmRlZiBfV0lOMzJfV0NFCiAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgogIyBpbmNsdWRlIDxz
eXMvc3RhdC5oPgpAQCAtMjc4LDE3ICsyNjYsMTQgQEAKICMgaW5jbHVkZSA8VGFyZ2V0Q29uZGl0
aW9uYWxzLmg+CiAjZW5kaWYKIAotLy8gQnJpbmdzIGluIHRoZSBkZWZpbml0aW9uIG9mIEhBU19H
TE9CQUxfU1RSSU5HLiAgVGhpcyBtdXN0IGJlIGRvbmUKLS8vIEJFRk9SRSB3ZSB0ZXN0IEhBU19H
TE9CQUxfU1RSSU5HLgotI2luY2x1ZGUgPHN0cmluZz4gIC8vIE5PTElOVAotI2luY2x1ZGUgPGFs
Z29yaXRobT4gIC8vIE5PTElOVAogI2luY2x1ZGUgPGlvc3RyZWFtPiAgLy8gTk9MSU5UCi0jaW5j
bHVkZSA8c3N0cmVhbT4gIC8vIE5PTElOVAotI2luY2x1ZGUgPHV0aWxpdHk+CisjaW5jbHVkZSA8
bWVtb3J5PgorI2luY2x1ZGUgPHN0cmluZz4gIC8vIE5PTElOVAorI2luY2x1ZGUgPHR1cGxlPgog
I2luY2x1ZGUgPHZlY3Rvcj4gIC8vIE5PTElOVAogCi0jaW5jbHVkZSAiZ3Rlc3QvaW50ZXJuYWwv
Z3Rlc3QtcG9ydC1hcmNoLmgiCiAjaW5jbHVkZSAiZ3Rlc3QvaW50ZXJuYWwvY3VzdG9tL2d0ZXN0
LXBvcnQuaCIKKyNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9ndGVzdC1wb3J0LWFyY2guaCIKIAog
I2lmICFkZWZpbmVkKEdURVNUX0RFVl9FTUFJTF8pCiAjIGRlZmluZSBHVEVTVF9ERVZfRU1BSUxf
ICJnb29nbGV0ZXN0ZnJhbWV3b3JrQEBnb29nbGVncm91cHMuY29tIgpAQCAtMzE1LDE0ICszMDAs
MTQgQEAKIC8vICAgR1RFU1RfRElTQUJMRV9NU0NfV0FSTklOR1NfUFVTSF8oNDgwMCA0Mzg1KQog
Ly8gICAvKiBjb2RlIHRoYXQgdHJpZ2dlcnMgd2FybmluZ3MgQzQ4MDAgYW5kIEM0Mzg1ICovCiAv
LyAgIEdURVNUX0RJU0FCTEVfTVNDX1dBUk5JTkdTX1BPUF8oKQotI2lmIF9NU0NfVkVSID49IDE0
MDAKKyNpZiBkZWZpbmVkKF9NU0NfVkVSKQogIyBkZWZpbmUgR1RFU1RfRElTQUJMRV9NU0NfV0FS
TklOR1NfUFVTSF8od2FybmluZ3MpIFwKICAgICBfX3ByYWdtYSh3YXJuaW5nKHB1c2gpKSAgICAg
ICAgICAgICAgICAgICAgICAgIFwKICAgICBfX3ByYWdtYSh3YXJuaW5nKGRpc2FibGU6IHdhcm5p
bmdzKSkKICMgZGVmaW5lIEdURVNUX0RJU0FCTEVfTVNDX1dBUk5JTkdTX1BPUF8oKSAgICAgICAg
ICBcCiAgICAgX19wcmFnbWEod2FybmluZyhwb3ApKQogI2Vsc2UKLS8vIE9sZGVyIHZlcnNpb25z
IG9mIE1TVkMgZG9uJ3QgaGF2ZSBfX3ByYWdtYS4KKy8vIE5vdCBhbGwgY29tcGlsZXJzIGFyZSBN
U1ZDCiAjIGRlZmluZSBHVEVTVF9ESVNBQkxFX01TQ19XQVJOSU5HU19QVVNIXyh3YXJuaW5ncykK
ICMgZGVmaW5lIEdURVNUX0RJU0FCTEVfTVNDX1dBUk5JTkdTX1BPUF8oKQogI2VuZGlmCkBAIC0z
NDMsODAgKzMyOCw2IEBACiAgICAgR1RFU1RfRElTQUJMRV9NU0NfV0FSTklOR1NfUE9QXygpCiAj
ZW5kaWYKIAotI2lmbmRlZiBHVEVTVF9MQU5HX0NYWDExCi0vLyBnY2MgYW5kIGNsYW5nIGRlZmlu
ZSBfX0dYWF9FWFBFUklNRU5UQUxfQ1hYMFhfXyB3aGVuCi0vLyAtc3RkPXtjLGdudX0rK3sweCwx
MX0gaXMgcGFzc2VkLiAgVGhlIEMrKzExIHN0YW5kYXJkIHNwZWNpZmllcyBhCi0vLyB2YWx1ZSBm
b3IgX19jcGx1c3BsdXMsIGFuZCByZWNlbnQgdmVyc2lvbnMgb2YgY2xhbmcsIGdjYywgYW5kCi0v
LyBwcm9iYWJseSBvdGhlciBjb21waWxlcnMgc2V0IHRoYXQgdG9vIGluIEMrKzExIG1vZGUuCi0j
IGlmIF9fR1hYX0VYUEVSSU1FTlRBTF9DWFgwWF9fIHx8IF9fY3BsdXNwbHVzID49IDIwMTEwM0wg
fHwgX01TQ19WRVIgPj0gMTkwMAotLy8gQ29tcGlsaW5nIGluIGF0IGxlYXN0IEMrKzExIG1vZGUu
Ci0jICBkZWZpbmUgR1RFU1RfTEFOR19DWFgxMSAxCi0jIGVsc2UKLSMgIGRlZmluZSBHVEVTVF9M
QU5HX0NYWDExIDAKLSMgZW5kaWYKLSNlbmRpZgotCi0vLyBEaXN0aW5jdCBmcm9tIEMrKzExIGxh
bmd1YWdlIHN1cHBvcnQsIHNvbWUgZW52aXJvbm1lbnRzIGRvbid0IHByb3ZpZGUKLS8vIHByb3Bl
ciBDKysxMSBsaWJyYXJ5IHN1cHBvcnQuIE5vdGFibHksIGl0J3MgcG9zc2libGUgdG8gYnVpbGQg
aW4KLS8vIEMrKzExIG1vZGUgd2hlbiB0YXJnZXRpbmcgTWFjIE9TIFggMTAuNiwgd2hpY2ggaGFz
IGFuIG9sZCBsaWJzdGRjKysKLS8vIHdpdGggbm8gQysrMTEgc3VwcG9ydC4KLS8vCi0vLyBsaWJz
dGRjKysgaGFzIHN1ZmZpY2llbnQgQysrMTEgc3VwcG9ydCBhcyBvZiBHQ0MgNC42LjAsIF9fR0xJ
QkNYWF9fCi0vLyAyMDExMDMyNSwgYnV0IG1haW50ZW5hbmNlIHJlbGVhc2VzIGluIHRoZSA0LjQg
YW5kIDQuNSBzZXJpZXMgZm9sbG93ZWQKLS8vIHRoaXMgZGF0ZSwgc28gY2hlY2sgZm9yIHRob3Nl
IHZlcnNpb25zIGJ5IHRoZWlyIGRhdGUgc3RhbXBzLgotLy8gaHR0cHM6Ly9nY2MuZ251Lm9yZy9v
bmxpbmVkb2NzL2xpYnN0ZGMrKy9tYW51YWwvYWJpLmh0bWwjYWJpLnZlcnNpb25pbmcKLSNpZiBH
VEVTVF9MQU5HX0NYWDExICYmIFwKLSAgICAoIWRlZmluZWQoX19HTElCQ1hYX18pIHx8ICggXAot
ICAgICAgICBfX0dMSUJDWFhfXyA+PSAyMDExMDMyNXVsICYmICAvKiBHQ0MgPj0gNC42LjAgKi8g
XAotICAgICAgICAvKiBCbGFja2xpc3Qgb2YgcGF0Y2ggcmVsZWFzZXMgb2Ygb2xkZXIgYnJhbmNo
ZXM6ICovIFwKLSAgICAgICAgX19HTElCQ1hYX18gIT0gMjAxMTA0MTZ1bCAmJiAgLyogR0NDIDQu
NC42ICovIFwKLSAgICAgICAgX19HTElCQ1hYX18gIT0gMjAxMjAzMTN1bCAmJiAgLyogR0NDIDQu
NC43ICovIFwKLSAgICAgICAgX19HTElCQ1hYX18gIT0gMjAxMTA0Mjh1bCAmJiAgLyogR0NDIDQu
NS4zICovIFwKLSAgICAgICAgX19HTElCQ1hYX18gIT0gMjAxMjA3MDJ1bCkpICAgLyogR0NDIDQu
NS40ICovCi0jIGRlZmluZSBHVEVTVF9TVERMSUJfQ1hYMTEgMQotI2VuZGlmCi0KLS8vIE9ubHkg
dXNlIEMrKzExIGxpYnJhcnkgZmVhdHVyZXMgaWYgdGhlIGxpYnJhcnkgcHJvdmlkZXMgdGhlbS4K
LSNpZiBHVEVTVF9TVERMSUJfQ1hYMTEKLSMgZGVmaW5lIEdURVNUX0hBU19TVERfQkVHSU5fQU5E
X0VORF8gMQotIyBkZWZpbmUgR1RFU1RfSEFTX1NURF9GT1JXQVJEX0xJU1RfIDEKLSMgaWYgIWRl
ZmluZWQoX01TQ19WRVIpIHx8IChfTVNDX0ZVTExfVkVSID49IDE5MDAyMzgyNCkKLS8vIHdvcmtz
IG9ubHkgd2l0aCBWUzIwMTVVMiBhbmQgYmV0dGVyCi0jICAgZGVmaW5lIEdURVNUX0hBU19TVERf
RlVOQ1RJT05fIDEKLSMgZW5kaWYKLSMgZGVmaW5lIEdURVNUX0hBU19TVERfSU5JVElBTElaRVJf
TElTVF8gMQotIyBkZWZpbmUgR1RFU1RfSEFTX1NURF9NT1ZFXyAxCi0jIGRlZmluZSBHVEVTVF9I
QVNfU1REX1VOSVFVRV9QVFJfIDEKLSMgZGVmaW5lIEdURVNUX0hBU19TVERfU0hBUkVEX1BUUl8g
MQotIyBkZWZpbmUgR1RFU1RfSEFTX1VOT1JERVJFRF9NQVBfIDEKLSMgZGVmaW5lIEdURVNUX0hB
U19VTk9SREVSRURfU0VUXyAxCi0jZW5kaWYKLQotLy8gQysrMTEgc3BlY2lmaWVzIHRoYXQgPHR1
cGxlPiBwcm92aWRlcyBzdGQ6OnR1cGxlLgotLy8gU29tZSBwbGF0Zm9ybXMgc3RpbGwgbWlnaHQg
bm90IGhhdmUgaXQsIGhvd2V2ZXIuCi0jaWYgR1RFU1RfTEFOR19DWFgxMQotIyBkZWZpbmUgR1RF
U1RfSEFTX1NURF9UVVBMRV8gMQotIyBpZiBkZWZpbmVkKF9fY2xhbmdfXykKLS8vIEluc3BpcmVk
IGJ5Ci0vLyBodHRwczovL2NsYW5nLmxsdm0ub3JnL2RvY3MvTGFuZ3VhZ2VFeHRlbnNpb25zLmh0
bWwjaW5jbHVkZS1maWxlLWNoZWNraW5nLW1hY3JvcwotIyAgaWYgZGVmaW5lZChfX2hhc19pbmNs
dWRlKSAmJiAhX19oYXNfaW5jbHVkZSg8dHVwbGU+KQotIyAgIHVuZGVmIEdURVNUX0hBU19TVERf
VFVQTEVfCi0jICBlbmRpZgotIyBlbGlmIGRlZmluZWQoX01TQ19WRVIpCi0vLyBJbnNwaXJlZCBi
eSBib29zdC9jb25maWcvc3RkbGliL2Rpbmt1bXdhcmUuaHBwCi0jICBpZiBkZWZpbmVkKF9DUFBM
SUJfVkVSKSAmJiBfQ1BQTElCX1ZFUiA8IDUyMAotIyAgIHVuZGVmIEdURVNUX0hBU19TVERfVFVQ
TEVfCi0jICBlbmRpZgotIyBlbGlmIGRlZmluZWQoX19HTElCQ1hYX18pCi0vLyBJbnNwaXJlZCBi
eSBib29zdC9jb25maWcvc3RkbGliL2xpYnN0ZGNwcDMuaHBwLAotLy8gaHR0cDovL2djYy5nbnUu
b3JnL2djYy00LjIvY2hhbmdlcy5odG1sIGFuZAotLy8gaHR0cHM6Ly93ZWIuYXJjaGl2ZS5vcmcv
d2ViLzIwMTQwMjI3MDQ0NDI5L2djYy5nbnUub3JnL29ubGluZWRvY3MvbGlic3RkYysrL21hbnVh
bC9iazAxcHQwMWNoMDEuaHRtbCNtYW51YWwuaW50cm8uc3RhdHVzLnN0YW5kYXJkLjIwMHgKLSMg
IGlmIF9fR05VQ19fIDwgNCB8fCAoX19HTlVDX18gPT0gNCAmJiBfX0dOVUNfTUlOT1JfXyA8IDIp
Ci0jICAgdW5kZWYgR1RFU1RfSEFTX1NURF9UVVBMRV8KLSMgIGVuZGlmCi0jIGVuZGlmCi0jZW5k
aWYKLQogLy8gQnJpbmdzIGluIGRlZmluaXRpb25zIGZvciBmdW5jdGlvbnMgdXNlZCBpbiB0aGUg
dGVzdGluZzo6aW50ZXJuYWw6OnBvc2l4CiAvLyBuYW1lc3BhY2UgKHJlYWQsIHdyaXRlLCBjbG9z
ZSwgY2hkaXIsIGlzYXR0eSwgc3RhdCkuIFdlIGRvIG5vdCBjdXJyZW50bHkKIC8vIHVzZSB0aGVt
IG9uIFdpbmRvd3MgTW9iaWxlLgpAQCAtNDQ5LDcgKzM2MCw4IEBAIHR5cGVkZWYgc3RydWN0IF9S
VExfQ1JJVElDQUxfU0VDVElPTiBHVEVTVF9DUklUSUNBTF9TRUNUSU9OOwogIyAgaW5jbHVkZSA8
YW5kcm9pZC9hcGktbGV2ZWwuaD4gIC8vIE5PTElOVAogI2VuZGlmCiAKLS8vIERlZmluZXMgdGhp
cyB0byB0cnVlIGlmZiBHb29nbGUgVGVzdCBjYW4gdXNlIFBPU0lYIHJlZ3VsYXIgZXhwcmVzc2lv
bnMuCisvLyBEZWZpbmVzIHRoaXMgdG8gdHJ1ZSBpZiBhbmQgb25seSBpZiBHb29nbGUgVGVzdCBj
YW4gdXNlIFBPU0lYIHJlZ3VsYXIKKy8vIGV4cHJlc3Npb25zLgogI2lmbmRlZiBHVEVTVF9IQVNf
UE9TSVhfUkUKICMgaWYgR1RFU1RfT1NfTElOVVhfQU5EUk9JRAogLy8gT24gQW5kcm9pZCwgPHJl
Z2V4Lmg+IGlzIG9ubHkgYXZhaWxhYmxlIHN0YXJ0aW5nIHdpdGggR2luZ2VyYnJlYWQuCkBAIC00
OTAsNyArNDAyLDcgQEAgdHlwZWRlZiBzdHJ1Y3QgX1JUTF9DUklUSUNBTF9TRUNUSU9OIEdURVNU
X0NSSVRJQ0FMX1NFQ1RJT047CiAvLyBUaGUgdXNlciBkaWRuJ3QgdGVsbCB1cyB3aGV0aGVyIGV4
Y2VwdGlvbnMgYXJlIGVuYWJsZWQsIHNvIHdlIG5lZWQKIC8vIHRvIGZpZ3VyZSBpdCBvdXQuCiAj
IGlmIGRlZmluZWQoX01TQ19WRVIpICYmIGRlZmluZWQoX0NQUFVOV0lORCkKLS8vIE1TVkMgZGVm
aW5lcyBfQ1BQVU5XSU5EIHRvIDEgaWZmIGV4Y2VwdGlvbnMgYXJlIGVuYWJsZWQuCisvLyBNU1ZD
IGRlZmluZXMgX0NQUFVOV0lORCB0byAxIGlmIGFuZCBvbmx5IGlmIGV4Y2VwdGlvbnMgYXJlIGVu
YWJsZWQuCiAjICBkZWZpbmUgR1RFU1RfSEFTX0VYQ0VQVElPTlMgMQogIyBlbGlmIGRlZmluZWQo
X19CT1JMQU5EQ19fKQogLy8gQysrQnVpbGRlcidzIGltcGxlbWVudGF0aW9uIG9mIHRoZSBTVEwg
dXNlcyB0aGUgX0hBU19FWENFUFRJT05TCkBAIC01MDEsMTYgKzQxMywxNyBAQCB0eXBlZGVmIHN0
cnVjdCBfUlRMX0NSSVRJQ0FMX1NFQ1RJT04gR1RFU1RfQ1JJVElDQUxfU0VDVElPTjsKICMgIGVu
ZGlmICAvLyBfSEFTX0VYQ0VQVElPTlMKICMgIGRlZmluZSBHVEVTVF9IQVNfRVhDRVBUSU9OUyBf
SEFTX0VYQ0VQVElPTlMKICMgZWxpZiBkZWZpbmVkKF9fY2xhbmdfXykKLS8vIGNsYW5nIGRlZmlu
ZXMgX19FWENFUFRJT05TIGlmZiBleGNlcHRpb25zIGFyZSBlbmFibGVkIGJlZm9yZSBjbGFuZyAy
MjA3MTQsCi0vLyBidXQgaWZmIGNsZWFudXBzIGFyZSBlbmFibGVkIGFmdGVyIHRoYXQuIEluIE9i
ai1DKysgZmlsZXMsIHRoZXJlIGNhbiBiZQotLy8gY2xlYW51cHMgZm9yIE9iakMgZXhjZXB0aW9u
cyB3aGljaCBhbHNvIG5lZWQgY2xlYW51cHMsIGV2ZW4gaWYgQysrIGV4Y2VwdGlvbnMKLS8vIGFy
ZSBkaXNhYmxlZC4gY2xhbmcgaGFzIF9faGFzX2ZlYXR1cmUoY3h4X2V4Y2VwdGlvbnMpIHdoaWNo
IGNoZWNrcyBmb3IgQysrCi0vLyBleGNlcHRpb25zIHN0YXJ0aW5nIGF0IGNsYW5nIHIyMDYzNTIs
IGJ1dCB3aGljaCBjaGVja2VkIGZvciBjbGVhbnVwcyBwcmlvciB0bwotLy8gdGhhdC4gVG8gcmVs
aWFibHkgY2hlY2sgZm9yIEMrKyBleGNlcHRpb24gYXZhaWxhYmlsaXR5IHdpdGggY2xhbmcsIGNo
ZWNrIGZvcgorLy8gY2xhbmcgZGVmaW5lcyBfX0VYQ0VQVElPTlMgaWYgYW5kIG9ubHkgaWYgZXhj
ZXB0aW9ucyBhcmUgZW5hYmxlZCBiZWZvcmUgY2xhbmcKKy8vIDIyMDcxNCwgYnV0IGlmIGFuZCBv
bmx5IGlmIGNsZWFudXBzIGFyZSBlbmFibGVkIGFmdGVyIHRoYXQuIEluIE9iai1DKysgZmlsZXMs
CisvLyB0aGVyZSBjYW4gYmUgY2xlYW51cHMgZm9yIE9iakMgZXhjZXB0aW9ucyB3aGljaCBhbHNv
IG5lZWQgY2xlYW51cHMsIGV2ZW4gaWYKKy8vIEMrKyBleGNlcHRpb25zIGFyZSBkaXNhYmxlZC4g
Y2xhbmcgaGFzIF9faGFzX2ZlYXR1cmUoY3h4X2V4Y2VwdGlvbnMpIHdoaWNoCisvLyBjaGVja3Mg
Zm9yIEMrKyBleGNlcHRpb25zIHN0YXJ0aW5nIGF0IGNsYW5nIHIyMDYzNTIsIGJ1dCB3aGljaCBj
aGVja2VkIGZvcgorLy8gY2xlYW51cHMgcHJpb3IgdG8gdGhhdC4gVG8gcmVsaWFibHkgY2hlY2sg
Zm9yIEMrKyBleGNlcHRpb24gYXZhaWxhYmlsaXR5IHdpdGgKKy8vIGNsYW5nLCBjaGVjayBmb3IK
IC8vIF9fRVhDRVBUSU9OUyAmJiBfX2hhc19mZWF0dXJlKGN4eF9leGNlcHRpb25zKS4KICMgIGRl
ZmluZSBHVEVTVF9IQVNfRVhDRVBUSU9OUyAoX19FWENFUFRJT05TICYmIF9faGFzX2ZlYXR1cmUo
Y3h4X2V4Y2VwdGlvbnMpKQogIyBlbGlmIGRlZmluZWQoX19HTlVDX18pICYmIF9fRVhDRVBUSU9O
UwotLy8gZ2NjIGRlZmluZXMgX19FWENFUFRJT05TIHRvIDEgaWZmIGV4Y2VwdGlvbnMgYXJlIGVu
YWJsZWQuCisvLyBnY2MgZGVmaW5lcyBfX0VYQ0VQVElPTlMgdG8gMSBpZiBhbmQgb25seSBpZiBl
eGNlcHRpb25zIGFyZSBlbmFibGVkLgogIyAgZGVmaW5lIEdURVNUX0hBU19FWENFUFRJT05TIDEK
ICMgZWxpZiBkZWZpbmVkKF9fU1VOUFJPX0NDKQogLy8gU3VuIFBybyBDQyBzdXBwb3J0cyBleGNl
cHRpb25zLiAgSG93ZXZlciwgdGhlcmUgaXMgbm8gY29tcGlsZS10aW1lIHdheSBvZgpAQCAtNTE4
LDcgKzQzMSw3IEBAIHR5cGVkZWYgc3RydWN0IF9SVExfQ1JJVElDQUxfU0VDVElPTiBHVEVTVF9D
UklUSUNBTF9TRUNUSU9OOwogLy8gdGhleSBhcmUgZW5hYmxlZCB1bmxlc3MgdGhlIHVzZXIgdGVs
bHMgdXMgb3RoZXJ3aXNlLgogIyAgZGVmaW5lIEdURVNUX0hBU19FWENFUFRJT05TIDEKICMgZWxp
ZiBkZWZpbmVkKF9fSUJNQ1BQX18pICYmIF9fRVhDRVBUSU9OUwotLy8geGxDIGRlZmluZXMgX19F
WENFUFRJT05TIHRvIDEgaWZmIGV4Y2VwdGlvbnMgYXJlIGVuYWJsZWQuCisvLyB4bEMgZGVmaW5l
cyBfX0VYQ0VQVElPTlMgdG8gMSBpZiBhbmQgb25seSBpZiBleGNlcHRpb25zIGFyZSBlbmFibGVk
LgogIyAgZGVmaW5lIEdURVNUX0hBU19FWENFUFRJT05TIDEKICMgZWxpZiBkZWZpbmVkKF9fSFBf
YUNDKQogLy8gRXhjZXB0aW9uIGhhbmRsaW5nIGlzIGluIGVmZmVjdCBieSBkZWZhdWx0IGluIEhQ
IGFDQyBjb21waWxlci4gSXQgaGFzIHRvCkBAIC01MzEsNDAgKzQ0NCwxOCBAQCB0eXBlZGVmIHN0
cnVjdCBfUlRMX0NSSVRJQ0FMX1NFQ1RJT04gR1RFU1RfQ1JJVElDQUxfU0VDVElPTjsKICMgZW5k
aWYgIC8vIGRlZmluZWQoX01TQ19WRVIpIHx8IGRlZmluZWQoX19CT1JMQU5EQ19fKQogI2VuZGlm
ICAvLyBHVEVTVF9IQVNfRVhDRVBUSU9OUwogCi0jaWYgIWRlZmluZWQoR1RFU1RfSEFTX1NURF9T
VFJJTkcpCi0vLyBFdmVuIHRob3VnaCB3ZSBkb24ndCB1c2UgdGhpcyBtYWNybyBhbnkgbG9uZ2Vy
LCB3ZSBrZWVwIGl0IGluIGNhc2UKLS8vIHNvbWUgY2xpZW50cyBzdGlsbCBkZXBlbmQgb24gaXQu
Ci0jIGRlZmluZSBHVEVTVF9IQVNfU1REX1NUUklORyAxCi0jZWxpZiAhR1RFU1RfSEFTX1NURF9T
VFJJTkcKLS8vIFRoZSB1c2VyIHRvbGQgdXMgdGhhdCA6OnN0ZDo6c3RyaW5nIGlzbid0IGF2YWls
YWJsZS4KLSMgZXJyb3IgIjo6c3RkOjpzdHJpbmcgaXNuJ3QgYXZhaWxhYmxlLiIKLSNlbmRpZiAg
Ly8gIWRlZmluZWQoR1RFU1RfSEFTX1NURF9TVFJJTkcpCi0KLSNpZm5kZWYgR1RFU1RfSEFTX0dM
T0JBTF9TVFJJTkcKLSMgZGVmaW5lIEdURVNUX0hBU19HTE9CQUxfU1RSSU5HIDAKLSNlbmRpZiAg
Ly8gR1RFU1RfSEFTX0dMT0JBTF9TVFJJTkcKLQogI2lmbmRlZiBHVEVTVF9IQVNfU1REX1dTVFJJ
TkcKIC8vIFRoZSB1c2VyIGRpZG4ndCB0ZWxsIHVzIHdoZXRoZXIgOjpzdGQ6OndzdHJpbmcgaXMg
YXZhaWxhYmxlLCBzbyB3ZSBuZWVkCiAvLyB0byBmaWd1cmUgaXQgb3V0LgotLy8gRklYTUU6IHVz
ZXMgYXV0b2NvbmYgdG8gZGV0ZWN0IHdoZXRoZXIgOjpzdGQ6OndzdHJpbmcKLS8vICAgaXMgYXZh
aWxhYmxlLgotCiAvLyBDeWd3aW4gMS43IGFuZCBiZWxvdyBkb2Vzbid0IHN1cHBvcnQgOjpzdGQ6
OndzdHJpbmcuCiAvLyBTb2xhcmlzJyBsaWJjKysgZG9lc24ndCBzdXBwb3J0IGl0IGVpdGhlci4g
IEFuZHJvaWQgaGFzCiAvLyBubyBzdXBwb3J0IGZvciBpdCBhdCBsZWFzdCBhcyByZWNlbnQgYXMg
RnJveW8gKDIuMikuCi0jIGRlZmluZSBHVEVTVF9IQVNfU1REX1dTVFJJTkcgXAotICAgICghKEdU
RVNUX09TX0xJTlVYX0FORFJPSUQgfHwgR1RFU1RfT1NfQ1lHV0lOIHx8IEdURVNUX09TX1NPTEFS
SVMpKQorI2RlZmluZSBHVEVTVF9IQVNfU1REX1dTVFJJTkcgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwKKyAgKCEoR1RFU1RfT1NfTElOVVhfQU5EUk9JRCB8fCBHVEVT
VF9PU19DWUdXSU4gfHwgR1RFU1RfT1NfU09MQVJJUyB8fCBcCisgICAgIEdURVNUX09TX0hBSUtV
IHx8IEdURVNUX09TX0VTUDMyIHx8IEdURVNUX09TX0VTUDgyNjYpKQogCiAjZW5kaWYgIC8vIEdU
RVNUX0hBU19TVERfV1NUUklORwogCi0jaWZuZGVmIEdURVNUX0hBU19HTE9CQUxfV1NUUklORwot
Ly8gVGhlIHVzZXIgZGlkbid0IHRlbGwgdXMgd2hldGhlciA6OndzdHJpbmcgaXMgYXZhaWxhYmxl
LCBzbyB3ZSBuZWVkCi0vLyB0byBmaWd1cmUgaXQgb3V0LgotIyBkZWZpbmUgR1RFU1RfSEFTX0dM
T0JBTF9XU1RSSU5HIFwKLSAgICAoR1RFU1RfSEFTX1NURF9XU1RSSU5HICYmIEdURVNUX0hBU19H
TE9CQUxfU1RSSU5HKQotI2VuZGlmICAvLyBHVEVTVF9IQVNfR0xPQkFMX1dTVFJJTkcKLQogLy8g
RGV0ZXJtaW5lcyB3aGV0aGVyIFJUVEkgaXMgYXZhaWxhYmxlLgogI2lmbmRlZiBHVEVTVF9IQVNf
UlRUSQogLy8gVGhlIHVzZXIgZGlkbid0IHRlbGwgdXMgd2hldGhlciBSVFRJIGlzIGVuYWJsZWQs
IHNvIHdlIG5lZWQgdG8KQEAgLTU3MiwxNCArNDYzLDE1IEBAIHR5cGVkZWYgc3RydWN0IF9SVExf
Q1JJVElDQUxfU0VDVElPTiBHVEVTVF9DUklUSUNBTF9TRUNUSU9OOwogCiAjIGlmZGVmIF9NU0Nf
VkVSCiAKLSMgIGlmZGVmIF9DUFBSVFRJICAvLyBNU1ZDIGRlZmluZXMgdGhpcyBtYWNybyBpZmYg
UlRUSSBpcyBlbmFibGVkLgorI2lmZGVmIF9DUFBSVFRJICAvLyBNU1ZDIGRlZmluZXMgdGhpcyBt
YWNybyBpZiBhbmQgb25seSBpZiBSVFRJIGlzIGVuYWJsZWQuCiAjICAgZGVmaW5lIEdURVNUX0hB
U19SVFRJIDEKICMgIGVsc2UKICMgICBkZWZpbmUgR1RFU1RfSEFTX1JUVEkgMAogIyAgZW5kaWYK
IAotLy8gU3RhcnRpbmcgd2l0aCB2ZXJzaW9uIDQuMy4yLCBnY2MgZGVmaW5lcyBfX0dYWF9SVFRJ
IGlmZiBSVFRJIGlzIGVuYWJsZWQuCi0jIGVsaWYgZGVmaW5lZChfX0dOVUNfXykgJiYgKEdURVNU
X0dDQ19WRVJfID49IDQwMzAyKQorLy8gU3RhcnRpbmcgd2l0aCB2ZXJzaW9uIDQuMy4yLCBnY2Mg
ZGVmaW5lcyBfX0dYWF9SVFRJIGlmIGFuZCBvbmx5IGlmIFJUVEkgaXMKKy8vIGVuYWJsZWQuCisj
IGVsaWYgZGVmaW5lZChfX0dOVUNfXykKIAogIyAgaWZkZWYgX19HWFhfUlRUSQogLy8gV2hlbiBi
dWlsZGluZyBhZ2FpbnN0IFNUTHBvcnQgd2l0aCB0aGUgQW5kcm9pZCBOREsgYW5kIHdpdGgKQEAg
LTYzNSw5ICs1MjcsMTEgQEAgdHlwZWRlZiBzdHJ1Y3QgX1JUTF9DUklUSUNBTF9TRUNUSU9OIEdU
RVNUX0NSSVRJQ0FMX1NFQ1RJT047CiAvLwogLy8gVG8gZGlzYWJsZSB0aHJlYWRpbmcgc3VwcG9y
dCBpbiBHb29nbGUgVGVzdCwgYWRkIC1ER1RFU1RfSEFTX1BUSFJFQUQ9MAogLy8gdG8geW91ciBj
b21waWxlciBmbGFncy4KLSNkZWZpbmUgR1RFU1RfSEFTX1BUSFJFQUQgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gIChHVEVTVF9PU19MSU5VWCB8fCBHVEVT
VF9PU19NQUMgfHwgR1RFU1RfT1NfSFBVWCB8fCBHVEVTVF9PU19RTlggfHwgXAotICAgR1RFU1Rf
T1NfRlJFRUJTRCB8fCBHVEVTVF9PU19OQUNMIHx8IEdURVNUX09TX05FVEJTRCB8fCBHVEVTVF9P
U19GVUNIU0lBKQorI2RlZmluZSBHVEVTVF9IQVNfUFRIUkVBRCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgKEdURVNUX09TX0xJTlVYIHx8
IEdURVNUX09TX01BQyB8fCBHVEVTVF9PU19IUFVYIHx8IEdURVNUX09TX1FOWCB8fCAgICAgICAg
ICBcCisgICBHVEVTVF9PU19GUkVFQlNEIHx8IEdURVNUX09TX05BQ0wgfHwgR1RFU1RfT1NfTkVU
QlNEIHx8IEdURVNUX09TX0ZVQ0hTSUEgfHwgXAorICAgR1RFU1RfT1NfRFJBR09ORkxZIHx8IEdU
RVNUX09TX0dOVV9LRlJFRUJTRCB8fCBHVEVTVF9PU19PUEVOQlNEIHx8ICAgICAgICAgIFwKKyAg
IEdURVNUX09TX0hBSUtVKQogI2VuZGlmICAvLyBHVEVTVF9IQVNfUFRIUkVBRAogCiAjaWYgR1RF
U1RfSEFTX1BUSFJFQUQKQEAgLTY0OSwxMzYgKzU0Myw2IEBAIHR5cGVkZWYgc3RydWN0IF9SVExf
Q1JJVElDQUxfU0VDVElPTiBHVEVTVF9DUklUSUNBTF9TRUNUSU9OOwogIyBpbmNsdWRlIDx0aW1l
Lmg+ICAvLyBOT0xJTlQKICNlbmRpZgogCi0vLyBEZXRlcm1pbmVzIGlmIGhhc2hfbWFwL2hhc2hf
c2V0IGFyZSBhdmFpbGFibGUuCi0vLyBPbmx5IHVzZWQgZm9yIHRlc3RpbmcgYWdhaW5zdCB0aG9z
ZSBjb250YWluZXJzLgotI2lmICFkZWZpbmVkKEdURVNUX0hBU19IQVNIX01BUF8pCi0jIGlmIGRl
ZmluZWQoX01TQ19WRVIpICYmIChfTVNDX1ZFUiA8IDE5MDApCi0jICBkZWZpbmUgR1RFU1RfSEFT
X0hBU0hfTUFQXyAxICAvLyBJbmRpY2F0ZXMgdGhhdCBoYXNoX21hcCBpcyBhdmFpbGFibGUuCi0j
ICBkZWZpbmUgR1RFU1RfSEFTX0hBU0hfU0VUXyAxICAvLyBJbmRpY2F0ZXMgdGhhdCBoYXNoX3Nl
dCBpcyBhdmFpbGFibGUuCi0jIGVuZGlmICAvLyBfTVNDX1ZFUgotI2VuZGlmICAvLyAhZGVmaW5l
ZChHVEVTVF9IQVNfSEFTSF9NQVBfKQotCi0vLyBEZXRlcm1pbmVzIHdoZXRoZXIgR29vZ2xlIFRl
c3QgY2FuIHVzZSB0cjEvdHVwbGUuICBZb3UgY2FuIGRlZmluZQotLy8gdGhpcyBtYWNybyB0byAw
IHRvIHByZXZlbnQgR29vZ2xlIFRlc3QgZnJvbSB1c2luZyB0dXBsZSAoYW55Ci0vLyBmZWF0dXJl
IGRlcGVuZGluZyBvbiB0dXBsZSB3aXRoIGJlIGRpc2FibGVkIGluIHRoaXMgbW9kZSkuCi0jaWZu
ZGVmIEdURVNUX0hBU19UUjFfVFVQTEUKLSMgaWYgR1RFU1RfT1NfTElOVVhfQU5EUk9JRCAmJiBk
ZWZpbmVkKF9TVExQT1JUX01BSk9SKQotLy8gU1RMcG9ydCwgcHJvdmlkZWQgd2l0aCB0aGUgQW5k
cm9pZCBOREssIGhhcyBuZWl0aGVyIDx0cjEvdHVwbGU+IG9yIDx0dXBsZT4uCi0jICBkZWZpbmUg
R1RFU1RfSEFTX1RSMV9UVVBMRSAwCi0jIGVsaWYgZGVmaW5lZChfTVNDX1ZFUikgJiYgKF9NU0Nf
VkVSID49IDE5MTApCi0vLyBQcmV2ZW50IGB3YXJuaW5nIEM0OTk2OiAnc3RkOjp0cjEnOiB3YXJu
aW5nIFNUTDQwMDI6Ci0vLyBUaGUgbm9uLVN0YW5kYXJkIHN0ZDo6dHIxIG5hbWVzcGFjZSBhbmQg
VFIxLW9ubHkgbWFjaGluZXJ5Ci0vLyBhcmUgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSBSRU1PVkVE
LmAKLSMgIGRlZmluZSBHVEVTVF9IQVNfVFIxX1RVUExFIDAKLSMgZWxpZiBHVEVTVF9MQU5HX0NY
WDExICYmIGRlZmluZWQoX0xJQkNQUF9WRVJTSU9OKQotLy8gbGliYysrIGRvZXNuJ3Qgc3VwcG9y
dCBUUjEuCi0jICBkZWZpbmUgR1RFU1RfSEFTX1RSMV9UVVBMRSAwCi0jIGVsc2UKLS8vIFRoZSB1
c2VyIGRpZG4ndCB0ZWxsIHVzIG5vdCB0byBkbyBpdCwgc28gd2UgYXNzdW1lIGl0J3MgT0suCi0j
ICBkZWZpbmUgR1RFU1RfSEFTX1RSMV9UVVBMRSAxCi0jIGVuZGlmCi0jZW5kaWYgIC8vIEdURVNU
X0hBU19UUjFfVFVQTEUKLQotLy8gRGV0ZXJtaW5lcyB3aGV0aGVyIEdvb2dsZSBUZXN0J3Mgb3du
IHRyMSB0dXBsZSBpbXBsZW1lbnRhdGlvbgotLy8gc2hvdWxkIGJlIHVzZWQuCi0jaWZuZGVmIEdU
RVNUX1VTRV9PV05fVFIxX1RVUExFCi0vLyBXZSB1c2Ugb3VyIG93biB0dXBsZSBpbXBsZW1lbnRh
dGlvbiBvbiBTeW1iaWFuLgotIyBpZiBHVEVTVF9PU19TWU1CSUFOCi0jICBkZWZpbmUgR1RFU1Rf
VVNFX09XTl9UUjFfVFVQTEUgMQotIyBlbHNlCi0vLyBUaGUgdXNlciBkaWRuJ3QgdGVsbCB1cywg
c28gd2UgbmVlZCB0byBmaWd1cmUgaXQgb3V0LgotCi0vLyBXZSB1c2Ugb3VyIG93biBUUjEgdHVw
bGUgaWYgd2UgYXJlbid0IHN1cmUgdGhlIHVzZXIgaGFzIGFuCi0vLyBpbXBsZW1lbnRhdGlvbiBv
ZiBpdCBhbHJlYWR5LiAgQXQgdGhpcyB0aW1lLCBsaWJzdGRjKysgNC4wLjArIGFuZAotLy8gTVNW
QyAyMDEwIGFyZSB0aGUgb25seSBtYWluc3RyZWFtIHN0YW5kYXJkIGxpYnJhcmllcyB0aGF0IGNv
bWUKLS8vIHdpdGggYSBUUjEgdHVwbGUgaW1wbGVtZW50YXRpb24uICBOVklESUEncyBDVURBIE5W
Q0MgY29tcGlsZXIKLS8vIHByZXRlbmRzIHRvIGJlIEdDQyBieSBkZWZpbmluZyBfX0dOVUNfXyBh
bmQgZnJpZW5kcywgYnV0IGNhbm5vdAotLy8gY29tcGlsZSBHQ0MncyB0dXBsZSBpbXBsZW1lbnRh
dGlvbi4gIE1TVkMgMjAwOCAoOS4wKSBwcm92aWRlcyBUUjEKLS8vIHR1cGxlIGluIGEgMzIzIE1C
IEZlYXR1cmUgUGFjayBkb3dubG9hZCwgd2hpY2ggd2UgY2Fubm90IGFzc3VtZSB0aGUKLS8vIHVz
ZXIgaGFzLiAgUU5YJ3MgUUNDIGNvbXBpbGVyIGlzIGEgbW9kaWZpZWQgR0NDIGJ1dCBpdCBkb2Vz
bid0Ci0vLyBzdXBwb3J0IFRSMSB0dXBsZS4gIGxpYmMrKyBvbmx5IHByb3ZpZGVzIHN0ZDo6dHVw
bGUsIGluIEMrKzExIG1vZGUsCi0vLyBhbmQgaXQgY2FuIGJlIHVzZWQgd2l0aCBzb21lIGNvbXBp
bGVycyB0aGF0IGRlZmluZSBfX0dOVUNfXy4KLSMgaWYgKGRlZmluZWQoX19HTlVDX18pICYmICFk
ZWZpbmVkKF9fQ1VEQUNDX18pICYmIChHVEVTVF9HQ0NfVkVSXyA+PSA0MDAwMCkgXAotICAgICAg
JiYgIUdURVNUX09TX1FOWCAmJiAhZGVmaW5lZChfTElCQ1BQX1ZFUlNJT04pKSBcCi0gICAgICB8
fCAoX01TQ19WRVIgPj0gMTYwMCAmJiBfTVNDX1ZFUiA8IDE5MDApCi0jICBkZWZpbmUgR1RFU1Rf
RU5WX0hBU19UUjFfVFVQTEVfIDEKLSMgZW5kaWYKLQotLy8gQysrMTEgc3BlY2lmaWVzIHRoYXQg
PHR1cGxlPiBwcm92aWRlcyBzdGQ6OnR1cGxlLiBVc2UgdGhhdCBpZiBndGVzdCBpcyB1c2VkCi0v
LyBpbiBDKysxMSBtb2RlIGFuZCBsaWJzdGRjKysgaXNuJ3QgdmVyeSBvbGQgKGJpbmFyaWVzIHRh
cmdldGluZyBPUyBYIDEwLjYKLS8vIGNhbiBidWlsZCB3aXRoIGNsYW5nIGJ1dCBuZWVkIHRvIHVz
ZSBnY2M0LjIncyBsaWJzdGRjKyspLgotIyBpZiBHVEVTVF9MQU5HX0NYWDExICYmICghZGVmaW5l
ZChfX0dMSUJDWFhfXykgfHwgX19HTElCQ1hYX18gPiAyMDExMDMyNSkKLSMgIGRlZmluZSBHVEVT
VF9FTlZfSEFTX1NURF9UVVBMRV8gMQotIyBlbmRpZgotCi0jIGlmIEdURVNUX0VOVl9IQVNfVFIx
X1RVUExFXyB8fCBHVEVTVF9FTlZfSEFTX1NURF9UVVBMRV8KLSMgIGRlZmluZSBHVEVTVF9VU0Vf
T1dOX1RSMV9UVVBMRSAwCi0jIGVsc2UKLSMgIGRlZmluZSBHVEVTVF9VU0VfT1dOX1RSMV9UVVBM
RSAxCi0jIGVuZGlmCi0jIGVuZGlmICAvLyBHVEVTVF9PU19TWU1CSUFOCi0jZW5kaWYgIC8vIEdU
RVNUX1VTRV9PV05fVFIxX1RVUExFCi0KLS8vIFRvIGF2b2lkIGNvbmRpdGlvbmFsIGNvbXBpbGF0
aW9uIHdlIG1ha2UgaXQgZ3Rlc3QtcG9ydC5oJ3MgcmVzcG9uc2liaWxpdHkKLS8vIHRvICNpbmNs
dWRlIHRoZSBoZWFkZXIgaW1wbGVtZW50aW5nIHR1cGxlLgotI2lmIEdURVNUX0hBU19TVERfVFVQ
TEVfCi0jIGluY2x1ZGUgPHR1cGxlPiAgLy8gSVdZVSBwcmFnbWE6IGV4cG9ydAotIyBkZWZpbmUg
R1RFU1RfVFVQTEVfTkFNRVNQQUNFXyA6OnN0ZAotI2VuZGlmICAvLyBHVEVTVF9IQVNfU1REX1RV
UExFXwotCi0vLyBXZSBpbmNsdWRlIHRyMTo6dHVwbGUgZXZlbiBpZiBzdGQ6OnR1cGxlIGlzIGF2
YWlsYWJsZSB0byBkZWZpbmUgcHJpbnRlcnMgZm9yCi0vLyB0aGVtLgotI2lmIEdURVNUX0hBU19U
UjFfVFVQTEUKLSMgaWZuZGVmIEdURVNUX1RVUExFX05BTUVTUEFDRV8KLSMgIGRlZmluZSBHVEVT
VF9UVVBMRV9OQU1FU1BBQ0VfIDo6c3RkOjp0cjEKLSMgZW5kaWYgIC8vIEdURVNUX1RVUExFX05B
TUVTUEFDRV8KLQotIyBpZiBHVEVTVF9VU0VfT1dOX1RSMV9UVVBMRQotIyAgaW5jbHVkZSAiZ3Rl
c3QvaW50ZXJuYWwvZ3Rlc3QtdHVwbGUuaCIgIC8vIElXWVUgcHJhZ21hOiBleHBvcnQgIC8vIE5P
TElOVAotIyBlbGlmIEdURVNUX09TX1NZTUJJQU4KLQotLy8gT24gU3ltYmlhbiwgQk9PU1RfSEFT
X1RSMV9UVVBMRSBjYXVzZXMgQm9vc3QncyBUUjEgdHVwbGUgbGlicmFyeSB0bwotLy8gdXNlIFNU
THBvcnQncyB0dXBsZSBpbXBsZW1lbnRhdGlvbiwgd2hpY2ggdW5mb3J0dW5hdGVseSBkb2Vzbid0
Ci0vLyB3b3JrIGFzIHRoZSBjb3B5IG9mIFNUTHBvcnQgZGlzdHJpYnV0ZWQgd2l0aCBTeW1iaWFu
IGlzIGluY29tcGxldGUuCi0vLyBCeSBtYWtpbmcgc3VyZSBCT09TVF9IQVNfVFIxX1RVUExFIGlz
IHVuZGVmaW5lZCwgd2UgZm9yY2UgQm9vc3QgdG8KLS8vIHVzZSBpdHMgb3duIHR1cGxlIGltcGxl
bWVudGF0aW9uLgotIyAgaWZkZWYgQk9PU1RfSEFTX1RSMV9UVVBMRQotIyAgIHVuZGVmIEJPT1NU
X0hBU19UUjFfVFVQTEUKLSMgIGVuZGlmICAvLyBCT09TVF9IQVNfVFIxX1RVUExFCi0KLS8vIFRo
aXMgcHJldmVudHMgPGJvb3N0L3RyMS9kZXRhaWwvY29uZmlnLmhwcD4sIHdoaWNoIGRlZmluZXMK
LS8vIEJPT1NUX0hBU19UUjFfVFVQTEUsIGZyb20gYmVpbmcgI2luY2x1ZGVkIGJ5IEJvb3N0J3Mg
PHR1cGxlPi4KLSMgIGRlZmluZSBCT09TVF9UUjFfREVUQUlMX0NPTkZJR19IUFBfSU5DTFVERUQK
LSMgIGluY2x1ZGUgPHR1cGxlPiAgLy8gSVdZVSBwcmFnbWE6IGV4cG9ydCAgLy8gTk9MSU5UCi0K
LSMgZWxpZiBkZWZpbmVkKF9fR05VQ19fKSAmJiAoR1RFU1RfR0NDX1ZFUl8gPj0gNDAwMDApCi0v
LyBHQ0MgNC4wKyBpbXBsZW1lbnRzIHRyMS90dXBsZSBpbiB0aGUgPHRyMS90dXBsZT4gaGVhZGVy
LiAgVGhpcyBkb2VzCi0vLyBub3QgY29uZm9ybSB0byB0aGUgVFIxIHNwZWMsIHdoaWNoIHJlcXVp
cmVzIHRoZSBoZWFkZXIgdG8gYmUgPHR1cGxlPi4KLQotIyAgaWYgIUdURVNUX0hBU19SVFRJICYm
IEdURVNUX0dDQ19WRVJfIDwgNDAzMDIKLS8vIFVudGlsIHZlcnNpb24gNC4zLjIsIGdjYyBoYXMg
YSBidWcgdGhhdCBjYXVzZXMgPHRyMS9mdW5jdGlvbmFsPiwKLS8vIHdoaWNoIGlzICNpbmNsdWRl
ZCBieSA8dHIxL3R1cGxlPiwgdG8gbm90IGNvbXBpbGUgd2hlbiBSVFRJIGlzCi0vLyBkaXNhYmxl
ZC4gIF9UUjFfRlVOQ1RJT05BTCBpcyB0aGUgaGVhZGVyIGd1YXJkIGZvcgotLy8gPHRyMS9mdW5j
dGlvbmFsPi4gIEhlbmNlIHRoZSBmb2xsb3dpbmcgI2RlZmluZSBpcyB1c2VkIHRvIHByZXZlbnQK
LS8vIDx0cjEvZnVuY3Rpb25hbD4gZnJvbSBiZWluZyBpbmNsdWRlZC4KLSMgICBkZWZpbmUgX1RS
MV9GVU5DVElPTkFMIDEKLSMgICBpbmNsdWRlIDx0cjEvdHVwbGU+Ci0jICAgdW5kZWYgX1RSMV9G
VU5DVElPTkFMICAvLyBBbGxvd3MgdGhlIHVzZXIgdG8gI2luY2x1ZGUKLSAgICAgICAgICAgICAg
ICAgICAgICAgIC8vIDx0cjEvZnVuY3Rpb25hbD4gaWYgdGhleSBjaG9vc2UgdG8uCi0jICBlbHNl
Ci0jICAgaW5jbHVkZSA8dHIxL3R1cGxlPiAgLy8gTk9MSU5UCi0jICBlbmRpZiAgLy8gIUdURVNU
X0hBU19SVFRJICYmIEdURVNUX0dDQ19WRVJfIDwgNDAzMDIKLQotLy8gVlMgMjAxMCBub3cgaGFz
IHRyMSBzdXBwb3J0LgotIyBlbGlmIF9NU0NfVkVSID49IDE2MDAKLSMgIGluY2x1ZGUgPHR1cGxl
PiAgLy8gSVdZVSBwcmFnbWE6IGV4cG9ydCAgLy8gTk9MSU5UCi0KLSMgZWxzZSAgLy8gR1RFU1Rf
VVNFX09XTl9UUjFfVFVQTEUKLSMgIGluY2x1ZGUgPHRyMS90dXBsZT4gIC8vIElXWVUgcHJhZ21h
OiBleHBvcnQgIC8vIE5PTElOVAotIyBlbmRpZiAgLy8gR1RFU1RfVVNFX09XTl9UUjFfVFVQTEUK
LQotI2VuZGlmICAvLyBHVEVTVF9IQVNfVFIxX1RVUExFCi0KIC8vIERldGVybWluZXMgd2hldGhl
ciBjbG9uZSgyKSBpcyBzdXBwb3J0ZWQuCiAvLyBVc3VhbGx5IGl0IHdpbGwgb25seSBiZSBhdmFp
bGFibGUgb24gTGludXgsIGV4Y2x1ZGluZwogLy8gTGludXggb24gdGhlIEl0YW5pdW0gYXJjaGl0
ZWN0dXJlLgpAQCAtODEyLDI0ICs1NzYsMjIgQEAgdHlwZWRlZiBzdHJ1Y3QgX1JUTF9DUklUSUNB
TF9TRUNUSU9OIEdURVNUX0NSSVRJQ0FMX1NFQ1RJT047CiAjaWZuZGVmIEdURVNUX0hBU19TVFJF
QU1fUkVESVJFQ1RJT04KIC8vIEJ5IGRlZmF1bHQsIHdlIGFzc3VtZSB0aGF0IHN0cmVhbSByZWRp
cmVjdGlvbiBpcyBzdXBwb3J0ZWQgb24gYWxsCiAvLyBwbGF0Zm9ybXMgZXhjZXB0IGtub3duIG1v
YmlsZSBvbmVzLgotIyBpZiBHVEVTVF9PU19XSU5ET1dTX01PQklMRSB8fCBHVEVTVF9PU19TWU1C
SUFOIHx8IFwKLSAgICBHVEVTVF9PU19XSU5ET1dTX1BIT05FIHx8IEdURVNUX09TX1dJTkRPV1Nf
UlQKKyNpZiBHVEVTVF9PU19XSU5ET1dTX01PQklMRSB8fCBHVEVTVF9PU19XSU5ET1dTX1BIT05F
IHx8IFwKKyAgICBHVEVTVF9PU19XSU5ET1dTX1JUIHx8IEdURVNUX09TX0VTUDgyNjYKICMgIGRl
ZmluZSBHVEVTVF9IQVNfU1RSRUFNX1JFRElSRUNUSU9OIDAKICMgZWxzZQogIyAgZGVmaW5lIEdU
RVNUX0hBU19TVFJFQU1fUkVESVJFQ1RJT04gMQotIyBlbmRpZiAgLy8gIUdURVNUX09TX1dJTkRP
V1NfTU9CSUxFICYmICFHVEVTVF9PU19TWU1CSUFOCisjIGVuZGlmICAvLyAhR1RFU1RfT1NfV0lO
RE9XU19NT0JJTEUKICNlbmRpZiAgLy8gR1RFU1RfSEFTX1NUUkVBTV9SRURJUkVDVElPTgogCiAv
LyBEZXRlcm1pbmVzIHdoZXRoZXIgdG8gc3VwcG9ydCBkZWF0aCB0ZXN0cy4KLS8vIEdvb2dsZSBU
ZXN0IGRvZXMgbm90IHN1cHBvcnQgZGVhdGggdGVzdHMgZm9yIFZDIDcuMSBhbmQgZWFybGllciBh
cwotLy8gYWJvcnQoKSBpbiBhIFZDIDcuMSBhcHBsaWNhdGlvbiBjb21waWxlZCBhcyBHVUkgaW4g
ZGVidWcgY29uZmlnCiAvLyBwb3BzIHVwIGEgZGlhbG9nIHdpbmRvdyB0aGF0IGNhbm5vdCBiZSBz
dXBwcmVzc2VkIHByb2dyYW1tYXRpY2FsbHkuCi0jaWYgKEdURVNUX09TX0xJTlVYIHx8IEdURVNU
X09TX0NZR1dJTiB8fCBHVEVTVF9PU19TT0xBUklTIHx8ICAgXAotICAgICAoR1RFU1RfT1NfTUFD
ICYmICFHVEVTVF9PU19JT1MpIHx8ICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgKEdU
RVNUX09TX1dJTkRPV1NfREVTS1RPUCAmJiBfTVNDX1ZFUiA+PSAxNDAwKSB8fCAgICAgICAgICBc
Ci0gICAgIEdURVNUX09TX1dJTkRPV1NfTUlOR1cgfHwgR1RFU1RfT1NfQUlYIHx8IEdURVNUX09T
X0hQVVggfHwgXAotICAgICBHVEVTVF9PU19PUEVOQlNEIHx8IEdURVNUX09TX1FOWCB8fCBHVEVT
VF9PU19GUkVFQlNEIHx8IFwKLSAgICAgR1RFU1RfT1NfTkVUQlNEIHx8IEdURVNUX09TX0ZVQ0hT
SUEpCisjaWYgKEdURVNUX09TX0xJTlVYIHx8IEdURVNUX09TX0NZR1dJTiB8fCBHVEVTVF9PU19T
T0xBUklTIHx8ICAgICAgICAgICAgIFwKKyAgICAgKEdURVNUX09TX01BQyAmJiAhR1RFU1RfT1Nf
SU9TKSB8fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAoR1RFU1Rf
T1NfV0lORE9XU19ERVNLVE9QICYmIF9NU0NfVkVSKSB8fCBHVEVTVF9PU19XSU5ET1dTX01JTkdX
IHx8ICBcCisgICAgIEdURVNUX09TX0FJWCB8fCBHVEVTVF9PU19IUFVYIHx8IEdURVNUX09TX09Q
RU5CU0QgfHwgR1RFU1RfT1NfUU5YIHx8IFwKKyAgICAgR1RFU1RfT1NfRlJFRUJTRCB8fCBHVEVT
VF9PU19ORVRCU0QgfHwgR1RFU1RfT1NfRlVDSFNJQSB8fCAgICAgICAgICAgXAorICAgICBHVEVT
VF9PU19EUkFHT05GTFkgfHwgR1RFU1RfT1NfR05VX0tGUkVFQlNEIHx8IEdURVNUX09TX0hBSUtV
KQogIyBkZWZpbmUgR1RFU1RfSEFTX0RFQVRIX1RFU1QgMQogI2VuZGlmCiAKQEAgLTgzNywyNiAr
NTk5LDE5IEBAIHR5cGVkZWYgc3RydWN0IF9SVExfQ1JJVElDQUxfU0VDVElPTiBHVEVTVF9DUklU
SUNBTF9TRUNUSU9OOwogCiAvLyBUeXBlZCB0ZXN0cyBuZWVkIDx0eXBlaW5mbz4gYW5kIHZhcmlh
ZGljIG1hY3Jvcywgd2hpY2ggR0NDLCBWQysrIDguMCwKIC8vIFN1biBQcm8gQ0MsIElCTSBWaXN1
YWwgQWdlLCBhbmQgSFAgYUNDIHN1cHBvcnQuCi0jaWYgZGVmaW5lZChfX0dOVUNfXykgfHwgKF9N
U0NfVkVSID49IDE0MDApIHx8IGRlZmluZWQoX19TVU5QUk9fQ0MpIHx8IFwKKyNpZiBkZWZpbmVk
KF9fR05VQ19fKSB8fCBkZWZpbmVkKF9NU0NfVkVSKSB8fCBkZWZpbmVkKF9fU1VOUFJPX0NDKSB8
fCBcCiAgICAgZGVmaW5lZChfX0lCTUNQUF9fKSB8fCBkZWZpbmVkKF9fSFBfYUNDKQogIyBkZWZp
bmUgR1RFU1RfSEFTX1RZUEVEX1RFU1QgMQogIyBkZWZpbmUgR1RFU1RfSEFTX1RZUEVEX1RFU1Rf
UCAxCiAjZW5kaWYKIAotLy8gRGV0ZXJtaW5lcyB3aGV0aGVyIHRvIHN1cHBvcnQgQ29tYmluZSgp
LiBUaGlzIG9ubHkgbWFrZXMgc2Vuc2Ugd2hlbgotLy8gdmFsdWUtcGFyYW1ldGVyaXplZCB0ZXN0
cyBhcmUgZW5hYmxlZC4gIFRoZSBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0Ci0vLyB3b3JrIG9uIFN1
biBTdHVkaW8gc2luY2UgaXQgZG9lc24ndCB1bmRlcnN0YW5kIHRlbXBsYXRlZCBjb252ZXJzaW9u
Ci0vLyBvcGVyYXRvcnMuCi0jaWYgKEdURVNUX0hBU19UUjFfVFVQTEUgfHwgR1RFU1RfSEFTX1NU
RF9UVVBMRV8pICYmICFkZWZpbmVkKF9fU1VOUFJPX0NDKQotIyBkZWZpbmUgR1RFU1RfSEFTX0NP
TUJJTkUgMQotI2VuZGlmCi0KIC8vIERldGVybWluZXMgd2hldGhlciB0aGUgc3lzdGVtIGNvbXBp
bGVyIHVzZXMgVVRGLTE2IGZvciBlbmNvZGluZyB3aWRlIHN0cmluZ3MuCiAjZGVmaW5lIEdURVNU
X1dJREVfU1RSSU5HX1VTRVNfVVRGMTZfIFwKLSAgICAoR1RFU1RfT1NfV0lORE9XUyB8fCBHVEVT
VF9PU19DWUdXSU4gfHwgR1RFU1RfT1NfU1lNQklBTiB8fCBHVEVTVF9PU19BSVgpCisgIChHVEVT
VF9PU19XSU5ET1dTIHx8IEdURVNUX09TX0NZR1dJTiB8fCBHVEVTVF9PU19BSVggfHwgR1RFU1Rf
T1NfT1MyKQogCiAvLyBEZXRlcm1pbmVzIHdoZXRoZXIgdGVzdCByZXN1bHRzIGNhbiBiZSBzdHJl
YW1lZCB0byBhIHNvY2tldC4KLSNpZiBHVEVTVF9PU19MSU5VWAorI2lmIEdURVNUX09TX0xJTlVY
IHx8IEdURVNUX09TX0dOVV9LRlJFRUJTRCB8fCBHVEVTVF9PU19EUkFHT05GTFkgfHwgXAorICAg
IEdURVNUX09TX0ZSRUVCU0QgfHwgR1RFU1RfT1NfTkVUQlNEIHx8IEdURVNUX09TX09QRU5CU0QK
ICMgZGVmaW5lIEdURVNUX0NBTl9TVFJFQU1fUkVTVUxUU18gMQogI2VuZGlmCiAKQEAgLTg5OCwx
MiArNjUzLDYgQEAgdHlwZWRlZiBzdHJ1Y3QgX1JUTF9DUklUSUNBTF9TRUNUSU9OIEdURVNUX0NS
SVRJQ0FMX1NFQ1RJT047CiAjIGRlZmluZSBHVEVTVF9BVFRSSUJVVEVfVU5VU0VEXwogI2VuZGlm
CiAKLSNpZiBHVEVTVF9MQU5HX0NYWDExCi0jIGRlZmluZSBHVEVTVF9DWFgxMV9FUVVBTFNfREVM
RVRFXyA9IGRlbGV0ZQotI2Vsc2UgIC8vIEdURVNUX0xBTkdfQ1hYMTEKLSMgZGVmaW5lIEdURVNU
X0NYWDExX0VRVUFMU19ERUxFVEVfCi0jZW5kaWYgIC8vIEdURVNUX0xBTkdfQ1hYMTEKLQogLy8g
VXNlIHRoaXMgYW5ub3RhdGlvbiBiZWZvcmUgYSBmdW5jdGlvbiB0aGF0IHRha2VzIGEgcHJpbnRm
IGZvcm1hdCBzdHJpbmcuCiAjaWYgKGRlZmluZWQoX19HTlVDX18pIHx8IGRlZmluZWQoX19jbGFu
Z19fKSkgJiYgIWRlZmluZWQoQ09NUElMRVJfSUNDKQogIyBpZiBkZWZpbmVkKF9fTUlOR1dfUFJJ
TlRGX0ZPUk1BVCkKQEAgLTkyMiwyNyArNjcxLDM4IEBAIHR5cGVkZWYgc3RydWN0IF9SVExfQ1JJ
VElDQUxfU0VDVElPTiBHVEVTVF9DUklUSUNBTF9TRUNUSU9OOwogI2VuZGlmCiAKIAotLy8gQSBt
YWNybyB0byBkaXNhbGxvdyBvcGVyYXRvcj0KKy8vIEEgbWFjcm8gdG8gZGlzYWxsb3cgY29weSBv
cGVyYXRvcj0KIC8vIFRoaXMgc2hvdWxkIGJlIHVzZWQgaW4gdGhlIHByaXZhdGU6IGRlY2xhcmF0
aW9ucyBmb3IgYSBjbGFzcy4KICNkZWZpbmUgR1RFU1RfRElTQUxMT1dfQVNTSUdOXyh0eXBlKSBc
Ci0gIHZvaWQgb3BlcmF0b3I9KHR5cGUgY29uc3QgJikgR1RFU1RfQ1hYMTFfRVFVQUxTX0RFTEVU
RV8KKyAgdHlwZSYgb3BlcmF0b3I9KHR5cGUgY29uc3QgJikgPSBkZWxldGUKIAogLy8gQSBtYWNy
byB0byBkaXNhbGxvdyBjb3B5IGNvbnN0cnVjdG9yIGFuZCBvcGVyYXRvcj0KIC8vIFRoaXMgc2hv
dWxkIGJlIHVzZWQgaW4gdGhlIHByaXZhdGU6IGRlY2xhcmF0aW9ucyBmb3IgYSBjbGFzcy4KICNk
ZWZpbmUgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyh0eXBlKSBcCi0gIHR5cGUodHlw
ZSBjb25zdCAmKSBHVEVTVF9DWFgxMV9FUVVBTFNfREVMRVRFXzsgXAorICB0eXBlKHR5cGUgY29u
c3QgJikgPSBkZWxldGU7IFwKICAgR1RFU1RfRElTQUxMT1dfQVNTSUdOXyh0eXBlKQogCisvLyBB
IG1hY3JvIHRvIGRpc2FsbG93IG1vdmUgb3BlcmF0b3I9CisvLyBUaGlzIHNob3VsZCBiZSB1c2Vk
IGluIHRoZSBwcml2YXRlOiBkZWNsYXJhdGlvbnMgZm9yIGEgY2xhc3MuCisjZGVmaW5lIEdURVNU
X0RJU0FMTE9XX01PVkVfQVNTSUdOXyh0eXBlKSBcCisgIHR5cGUmIG9wZXJhdG9yPSh0eXBlICYm
KSBub2V4Y2VwdCA9IGRlbGV0ZQorCisvLyBBIG1hY3JvIHRvIGRpc2FsbG93IG1vdmUgY29uc3Ry
dWN0b3IgYW5kIG9wZXJhdG9yPQorLy8gVGhpcyBzaG91bGQgYmUgdXNlZCBpbiB0aGUgcHJpdmF0
ZTogZGVjbGFyYXRpb25zIGZvciBhIGNsYXNzLgorI2RlZmluZSBHVEVTVF9ESVNBTExPV19NT1ZF
X0FORF9BU1NJR05fKHR5cGUpIFwKKyAgdHlwZSh0eXBlICYmKSBub2V4Y2VwdCA9IGRlbGV0ZTsg
XAorICBHVEVTVF9ESVNBTExPV19NT1ZFX0FTU0lHTl8odHlwZSkKKwogLy8gVGVsbCB0aGUgY29t
cGlsZXIgdG8gd2FybiBhYm91dCB1bnVzZWQgcmV0dXJuIHZhbHVlcyBmb3IgZnVuY3Rpb25zIGRl
Y2xhcmVkCiAvLyB3aXRoIHRoaXMgbWFjcm8uICBUaGUgbWFjcm8gc2hvdWxkIGJlIHVzZWQgb24g
ZnVuY3Rpb24gZGVjbGFyYXRpb25zCiAvLyBmb2xsb3dpbmcgdGhlIGFyZ3VtZW50IGxpc3Q6CiAv
LwogLy8gICBTcHJvY2tldCogQWxsb2NhdGVTcHJvY2tldCgpIEdURVNUX01VU1RfVVNFX1JFU1VM
VF87Ci0jaWYgZGVmaW5lZChfX0dOVUNfXykgJiYgKEdURVNUX0dDQ19WRVJfID49IDMwNDAwKSAm
JiAhZGVmaW5lZChDT01QSUxFUl9JQ0MpCisjaWYgZGVmaW5lZChfX0dOVUNfXykgJiYgIWRlZmlu
ZWQoQ09NUElMRVJfSUNDKQogIyBkZWZpbmUgR1RFU1RfTVVTVF9VU0VfUkVTVUxUXyBfX2F0dHJp
YnV0ZV9fICgod2Fybl91bnVzZWRfcmVzdWx0KSkKICNlbHNlCiAjIGRlZmluZSBHVEVTVF9NVVNU
X1VTRV9SRVNVTFRfCi0jZW5kaWYgIC8vIF9fR05VQ19fICYmIChHVEVTVF9HQ0NfVkVSXyA+PSAz
MDQwMCkgJiYgIUNPTVBJTEVSX0lDQworI2VuZGlmICAvLyBfX0dOVUNfXyAmJiAhQ09NUElMRVJf
SUNDCiAKIC8vIE1TIEMrKyBjb21waWxlciBlbWl0cyB3YXJuaW5nIHdoZW4gYSBjb25kaXRpb25h
bCBleHByZXNzaW9uIGlzIGNvbXBpbGUgdGltZQogLy8gY29uc3RhbnQuIEluIHNvbWUgY29udGV4
dHMgdGhpcyB3YXJuaW5nIGlzIGZhbHNlIHBvc2l0aXZlIGFuZCBuZWVkcyB0byBiZQpAQCAtOTcx
LDEzICs3MzEsMTcgQEAgdHlwZWRlZiBzdHJ1Y3QgX1JUTF9DUklUSUNBTF9TRUNUSU9OIEdURVNU
X0NSSVRJQ0FMX1NFQ1RJT047CiAjICBkZWZpbmUgR1RFU1RfSEFTX1NFSCAwCiAjIGVuZGlmCiAK
LSNkZWZpbmUgR1RFU1RfSVNfVEhSRUFEU0FGRSBcCi0gICAgKEdURVNUX0hBU19NVVRFWF9BTkRf
VEhSRUFEX0xPQ0FMXyBcCi0gICAgIHx8IChHVEVTVF9PU19XSU5ET1dTICYmICFHVEVTVF9PU19X
SU5ET1dTX1BIT05FICYmICFHVEVTVF9PU19XSU5ET1dTX1JUKSBcCi0gICAgIHx8IEdURVNUX0hB
U19QVEhSRUFEKQotCiAjZW5kaWYgIC8vIEdURVNUX0hBU19TRUgKIAorI2lmbmRlZiBHVEVTVF9J
U19USFJFQURTQUZFCisKKyNkZWZpbmUgR1RFU1RfSVNfVEhSRUFEU0FGRSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgIChHVEVTVF9IQVNfTVVURVhf
QU5EX1RIUkVBRF9MT0NBTF8gfHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAorICAgKEdURVNUX09TX1dJTkRPV1MgJiYgIUdURVNUX09TX1dJTkRPV1NfUEhPTkUgJiYgIUdU
RVNUX09TX1dJTkRPV1NfUlQpIHx8IFwKKyAgIEdURVNUX0hBU19QVEhSRUFEKQorCisjZW5kaWYg
IC8vIEdURVNUX0lTX1RIUkVBRFNBRkUKKwogLy8gR1RFU1RfQVBJXyBxdWFsaWZpZXMgYWxsIHN5
bWJvbHMgdGhhdCBtdXN0IGJlIGV4cG9ydGVkLiBUaGUgZGVmaW5pdGlvbnMgYmVsb3cKIC8vIGFy
ZSBndWFyZGVkIGJ5ICNpZm5kZWYgdG8gZ2l2ZSBlbWJlZGRlcnMgYSBjaGFuY2UgdG8gZGVmaW5l
IEdURVNUX0FQSV8gaW4KIC8vIGd0ZXN0L2ludGVybmFsL2N1c3RvbS9ndGVzdC1wb3J0LmgKQEAg
LTEwNDQsNiArODA4LDE4IEBAIHR5cGVkZWYgc3RydWN0IF9SVExfQ1JJVElDQUxfU0VDVElPTiBH
VEVTVF9DUklUSUNBTF9TRUNUSU9OOwogIyBkZWZpbmUgR1RFU1RfQVRUUklCVVRFX05PX1NBTklU
SVpFX0FERFJFU1NfCiAjZW5kaWYgIC8vIF9fY2xhbmdfXwogCisvLyBBIGZ1bmN0aW9uIGxldmVs
IGF0dHJpYnV0ZSB0byBkaXNhYmxlIEhXQWRkcmVzc1Nhbml0aXplciBpbnN0cnVtZW50YXRpb24u
CisjaWYgZGVmaW5lZChfX2NsYW5nX18pCisjIGlmIF9faGFzX2ZlYXR1cmUoaHdhZGRyZXNzX3Nh
bml0aXplcikKKyMgIGRlZmluZSBHVEVTVF9BVFRSSUJVVEVfTk9fU0FOSVRJWkVfSFdBRERSRVNT
XyBcCisgICAgICAgX19hdHRyaWJ1dGVfXygobm9fc2FuaXRpemUoImh3YWRkcmVzcyIpKSkKKyMg
ZWxzZQorIyAgZGVmaW5lIEdURVNUX0FUVFJJQlVURV9OT19TQU5JVElaRV9IV0FERFJFU1NfCisj
IGVuZGlmICAvLyBfX2hhc19mZWF0dXJlKGh3YWRkcmVzc19zYW5pdGl6ZXIpCisjZWxzZQorIyBk
ZWZpbmUgR1RFU1RfQVRUUklCVVRFX05PX1NBTklUSVpFX0hXQUREUkVTU18KKyNlbmRpZiAgLy8g
X19jbGFuZ19fCisKIC8vIEEgZnVuY3Rpb24gbGV2ZWwgYXR0cmlidXRlIHRvIGRpc2FibGUgVGhy
ZWFkU2FuaXRpemVyIGluc3RydW1lbnRhdGlvbi4KICNpZiBkZWZpbmVkKF9fY2xhbmdfXykKICMg
aWYgX19oYXNfZmVhdHVyZSh0aHJlYWRfc2FuaXRpemVyKQpAQCAtMTA2MCwxNiArODM2LDEzIEBA
IG5hbWVzcGFjZSB0ZXN0aW5nIHsKIAogY2xhc3MgTWVzc2FnZTsKIAotI2lmIGRlZmluZWQoR1RF
U1RfVFVQTEVfTkFNRVNQQUNFXykKLS8vIEltcG9ydCB0dXBsZSBhbmQgZnJpZW5kcyBpbnRvIHRo
ZSA6OnRlc3RpbmcgbmFtZXNwYWNlLgotLy8gSXQgaXMgcGFydCBvZiBvdXIgaW50ZXJmYWNlLCBo
YXZpbmcgdGhlbSBpbiA6OnRlc3RpbmcgYWxsb3dzIHVzIHRvIGNoYW5nZQotLy8gdGhlaXIgdHlw
ZXMgYXMgbmVlZGVkLgotdXNpbmcgR1RFU1RfVFVQTEVfTkFNRVNQQUNFXzo6Z2V0OwotdXNpbmcg
R1RFU1RfVFVQTEVfTkFNRVNQQUNFXzo6bWFrZV90dXBsZTsKLXVzaW5nIEdURVNUX1RVUExFX05B
TUVTUEFDRV86OnR1cGxlOwotdXNpbmcgR1RFU1RfVFVQTEVfTkFNRVNQQUNFXzo6dHVwbGVfc2l6
ZTsKLXVzaW5nIEdURVNUX1RVUExFX05BTUVTUEFDRV86OnR1cGxlX2VsZW1lbnQ7Ci0jZW5kaWYg
IC8vIGRlZmluZWQoR1RFU1RfVFVQTEVfTkFNRVNQQUNFXykKKy8vIExlZ2FjeSBpbXBvcnRzIGZv
ciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS4KKy8vIE5ldyBjb2RlIHNob3VsZCB1c2Ugc3RkOjog
bmFtZXMgZGlyZWN0bHkuCit1c2luZyBzdGQ6OmdldDsKK3VzaW5nIHN0ZDo6bWFrZV90dXBsZTsK
K3VzaW5nIHN0ZDo6dHVwbGU7Cit1c2luZyBzdGQ6OnR1cGxlX2VsZW1lbnQ7Cit1c2luZyBzdGQ6
OnR1cGxlX3NpemU7CiAKIG5hbWVzcGFjZSBpbnRlcm5hbCB7CiAKQEAgLTEwNzgsMTU4ICs4NTEs
MjEgQEAgbmFtZXNwYWNlIGludGVybmFsIHsKIC8vIFNlY3JldCBvYmplY3QsIHdoaWNoIGlzIHdo
YXQgd2Ugd2FudC4KIGNsYXNzIFNlY3JldDsKIAotLy8gVGhlIEdURVNUX0NPTVBJTEVfQVNTRVJU
XyBtYWNybyBjYW4gYmUgdXNlZCB0byB2ZXJpZnkgdGhhdCBhIGNvbXBpbGUgdGltZQotLy8gZXhw
cmVzc2lvbiBpcyB0cnVlLiBGb3IgZXhhbXBsZSwgeW91IGNvdWxkIHVzZSBpdCB0byB2ZXJpZnkg
dGhlCi0vLyBzaXplIG9mIGEgc3RhdGljIGFycmF5OgorLy8gVGhlIEdURVNUX0NPTVBJTEVfQVNT
RVJUXyBpcyBhIGxlZ2FjeSBtYWNybyB1c2VkIHRvIHZlcmlmeSB0aGF0IGEgY29tcGlsZQorLy8g
dGltZSBleHByZXNzaW9uIGlzIHRydWUgKGluIG5ldyBjb2RlLCB1c2Ugc3RhdGljX2Fzc2VydCBp
bnN0ZWFkKS4gRm9yCisvLyBleGFtcGxlLCB5b3UgY291bGQgdXNlIGl0IHRvIHZlcmlmeSB0aGUg
c2l6ZSBvZiBhIHN0YXRpYyBhcnJheToKIC8vCiAvLyAgIEdURVNUX0NPTVBJTEVfQVNTRVJUXyhH
VEVTVF9BUlJBWV9TSVpFXyhuYW1lcykgPT0gTlVNX05BTUVTLAogLy8gICAgICAgICAgICAgICAg
ICAgICAgICAgbmFtZXNfaW5jb3JyZWN0X3NpemUpOwogLy8KLS8vIG9yIHRvIG1ha2Ugc3VyZSBh
IHN0cnVjdCBpcyBzbWFsbGVyIHRoYW4gYSBjZXJ0YWluIHNpemU6Ci0vLwotLy8gICBHVEVTVF9D
T01QSUxFX0FTU0VSVF8oc2l6ZW9mKGZvbykgPCAxMjgsIGZvb190b29fbGFyZ2UpOwotLy8KLS8v
IFRoZSBzZWNvbmQgYXJndW1lbnQgdG8gdGhlIG1hY3JvIGlzIHRoZSBuYW1lIG9mIHRoZSB2YXJp
YWJsZS4gSWYKLS8vIHRoZSBleHByZXNzaW9uIGlzIGZhbHNlLCBtb3N0IGNvbXBpbGVycyB3aWxs
IGlzc3VlIGEgd2FybmluZy9lcnJvcgotLy8gY29udGFpbmluZyB0aGUgbmFtZSBvZiB0aGUgdmFy
aWFibGUuCi0KLSNpZiBHVEVTVF9MQU5HX0NYWDExCi0jIGRlZmluZSBHVEVTVF9DT01QSUxFX0FT
U0VSVF8oZXhwciwgbXNnKSBzdGF0aWNfYXNzZXJ0KGV4cHIsICNtc2cpCi0jZWxzZSAgLy8gIUdU
RVNUX0xBTkdfQ1hYMTEKLXRlbXBsYXRlIDxib29sPgotICBzdHJ1Y3QgQ29tcGlsZUFzc2VydCB7
Ci19OwotCi0jIGRlZmluZSBHVEVTVF9DT01QSUxFX0FTU0VSVF8oZXhwciwgbXNnKSBcCi0gIHR5
cGVkZWYgOjp0ZXN0aW5nOjppbnRlcm5hbDo6Q29tcGlsZUFzc2VydDwoc3RhdGljX2Nhc3Q8Ym9v
bD4oZXhwcikpPiBcCi0gICAgICBtc2dbc3RhdGljX2Nhc3Q8Ym9vbD4oZXhwcikgPyAxIDogLTFd
IEdURVNUX0FUVFJJQlVURV9VTlVTRURfCi0jZW5kaWYgIC8vICFHVEVTVF9MQU5HX0NYWDExCi0K
LS8vIEltcGxlbWVudGF0aW9uIGRldGFpbHMgb2YgR1RFU1RfQ09NUElMRV9BU1NFUlRfOgotLy8K
LS8vIChJbiBDKysxMSwgd2Ugc2ltcGx5IHVzZSBzdGF0aWNfYXNzZXJ0IGluc3RlYWQgb2YgdGhl
IGZvbGxvd2luZykKLS8vCi0vLyAtIEdURVNUX0NPTVBJTEVfQVNTRVJUXyB3b3JrcyBieSBkZWZp
bmluZyBhbiBhcnJheSB0eXBlIHRoYXQgaGFzIC0xCi0vLyAgIGVsZW1lbnRzIChhbmQgdGh1cyBp
cyBpbnZhbGlkKSB3aGVuIHRoZSBleHByZXNzaW9uIGlzIGZhbHNlLgotLy8KLS8vIC0gVGhlIHNp
bXBsZXIgZGVmaW5pdGlvbgotLy8KLS8vICAgICNkZWZpbmUgR1RFU1RfQ09NUElMRV9BU1NFUlRf
KGV4cHIsIG1zZykgdHlwZWRlZiBjaGFyIG1zZ1soZXhwcikgPyAxIDogLTFdCi0vLwotLy8gICBk
b2VzIG5vdCB3b3JrLCBhcyBnY2Mgc3VwcG9ydHMgdmFyaWFibGUtbGVuZ3RoIGFycmF5cyB3aG9z
ZSBzaXplcwotLy8gICBhcmUgZGV0ZXJtaW5lZCBhdCBydW4tdGltZSAodGhpcyBpcyBnY2MncyBl
eHRlbnNpb24gYW5kIG5vdCBwYXJ0Ci0vLyAgIG9mIHRoZSBDKysgc3RhbmRhcmQpLiAgQXMgYSBy
ZXN1bHQsIGdjYyBmYWlscyB0byByZWplY3QgdGhlCi0vLyAgIGZvbGxvd2luZyBjb2RlIHdpdGgg
dGhlIHNpbXBsZSBkZWZpbml0aW9uOgotLy8KLS8vICAgICBpbnQgZm9vOwotLy8gICAgIEdURVNU
X0NPTVBJTEVfQVNTRVJUXyhmb28sIG1zZyk7IC8vIG5vdCBzdXBwb3NlZCB0byBjb21waWxlIGFz
IGZvbyBpcwotLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIG5vdCBh
IGNvbXBpbGUtdGltZSBjb25zdGFudC4KLS8vCi0vLyAtIEJ5IHVzaW5nIHRoZSB0eXBlIENvbXBp
bGVBc3NlcnQ8KGJvb2woZXhwcikpPiwgd2UgZW5zdXJlcyB0aGF0Ci0vLyAgIGV4cHIgaXMgYSBj
b21waWxlLXRpbWUgY29uc3RhbnQuICAoVGVtcGxhdGUgYXJndW1lbnRzIG11c3QgYmUKLS8vICAg
ZGV0ZXJtaW5lZCBhdCBjb21waWxlLXRpbWUuKQotLy8KLS8vIC0gVGhlIG91dHRlciBwYXJlbnRo
ZXNlcyBpbiBDb21waWxlQXNzZXJ0PChib29sKGV4cHIpKT4gYXJlIG5lY2Vzc2FyeQotLy8gICB0
byB3b3JrIGFyb3VuZCBhIGJ1ZyBpbiBnY2MgMy40LjQgYW5kIDQuMC4xLiAgSWYgd2UgaGFkIHdy
aXR0ZW4KLS8vCi0vLyAgICAgQ29tcGlsZUFzc2VydDxib29sKGV4cHIpPgotLy8KLS8vICAgaW5z
dGVhZCwgdGhlc2UgY29tcGlsZXJzIHdpbGwgcmVmdXNlIHRvIGNvbXBpbGUKLS8vCi0vLyAgICAg
R1RFU1RfQ09NUElMRV9BU1NFUlRfKDUgPiAwLCBzb21lX21lc3NhZ2UpOwotLy8KLS8vICAgKFRo
ZXkgc2VlbSB0byB0aGluayB0aGUgIj4iIGluICI1ID4gMCIgbWFya3MgdGhlIGVuZCBvZiB0aGUK
LS8vICAgdGVtcGxhdGUgYXJndW1lbnQgbGlzdC4pCi0vLwotLy8gLSBUaGUgYXJyYXkgc2l6ZSBp
cyAoYm9vbChleHByKSA/IDEgOiAtMSksIGluc3RlYWQgb2Ygc2ltcGx5Ci0vLwotLy8gICAgICgo
ZXhwcikgPyAxIDogLTEpLgotLy8KLS8vICAgVGhpcyBpcyB0byBhdm9pZCBydW5uaW5nIGludG8g
YSBidWcgaW4gTVMgVkMgNy4xLCB3aGljaAotLy8gICBjYXVzZXMgKCgwLjApID8gMSA6IC0xKSB0
byBpbmNvcnJlY3RseSBldmFsdWF0ZSB0byAxLgotCi0vLyBTdGF0aWNBc3NlcnRUeXBlRXFIZWxw
ZXIgaXMgdXNlZCBieSBTdGF0aWNBc3NlcnRUeXBlRXEgZGVmaW5lZCBpbiBndGVzdC5oLgotLy8K
LS8vIFRoaXMgdGVtcGxhdGUgaXMgZGVjbGFyZWQsIGJ1dCBpbnRlbnRpb25hbGx5IHVuZGVmaW5l
ZC4KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDI+Ci1zdHJ1Y3QgU3RhdGljQXNz
ZXJ0VHlwZUVxSGVscGVyOwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLXN0cnVjdCBTdGF0aWNB
c3NlcnRUeXBlRXFIZWxwZXI8VCwgVD4gewotICBlbnVtIHsgdmFsdWUgPSB0cnVlIH07Ci19Owot
Ci0vLyBTYW1lIGFzIHN0ZDo6aXNfc2FtZTw+LgotdGVtcGxhdGUgPHR5cGVuYW1lIFQsIHR5cGVu
YW1lIFU+Ci1zdHJ1Y3QgSXNTYW1lIHsKLSAgZW51bSB7IHZhbHVlID0gZmFsc2UgfTsKLX07Ci10
ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLXN0cnVjdCBJc1NhbWU8VCwgVD4gewotICBlbnVtIHsgdmFs
dWUgPSB0cnVlIH07Ci19OwotCi0vLyBFdmFsdWF0ZXMgdG8gdGhlIG51bWJlciBvZiBlbGVtZW50
cyBpbiAnYXJyYXknLgotI2RlZmluZSBHVEVTVF9BUlJBWV9TSVpFXyhhcnJheSkgKHNpemVvZihh
cnJheSkgLyBzaXplb2YoYXJyYXlbMF0pKQotCi0jaWYgR1RFU1RfSEFTX0dMT0JBTF9TVFJJTkcK
LXR5cGVkZWYgOjpzdHJpbmcgc3RyaW5nOwotI2Vsc2UKLXR5cGVkZWYgOjpzdGQ6OnN0cmluZyBz
dHJpbmc7Ci0jZW5kaWYgIC8vIEdURVNUX0hBU19HTE9CQUxfU1RSSU5HCi0KLSNpZiBHVEVTVF9I
QVNfR0xPQkFMX1dTVFJJTkcKLXR5cGVkZWYgOjp3c3RyaW5nIHdzdHJpbmc7Ci0jZWxpZiBHVEVT
VF9IQVNfU1REX1dTVFJJTkcKLXR5cGVkZWYgOjpzdGQ6OndzdHJpbmcgd3N0cmluZzsKLSNlbmRp
ZiAgLy8gR1RFU1RfSEFTX0dMT0JBTF9XU1RSSU5HCisvLyBUaGUgc2Vjb25kIGFyZ3VtZW50IHRv
IHRoZSBtYWNybyBtdXN0IGJlIGEgdmFsaWQgQysrIGlkZW50aWZpZXIuIElmIHRoZQorLy8gZXhw
cmVzc2lvbiBpcyBmYWxzZSwgY29tcGlsZXIgd2lsbCBpc3N1ZSBhbiBlcnJvciBjb250YWluaW5n
IHRoaXMgaWRlbnRpZmllci4KKyNkZWZpbmUgR1RFU1RfQ09NUElMRV9BU1NFUlRfKGV4cHIsIG1z
Zykgc3RhdGljX2Fzc2VydChleHByLCAjbXNnKQogCiAvLyBBIGhlbHBlciBmb3Igc3VwcHJlc3Np
bmcgd2FybmluZ3Mgb24gY29uc3RhbnQgY29uZGl0aW9uLiAgSXQganVzdAogLy8gcmV0dXJucyAn
Y29uZGl0aW9uJy4KIEdURVNUX0FQSV8gYm9vbCBJc1RydWUoYm9vbCBjb25kaXRpb24pOwogCi0v
LyBEZWZpbmVzIHNjb3BlZF9wdHIuCi0KLS8vIFRoaXMgaW1wbGVtZW50YXRpb24gb2Ygc2NvcGVk
X3B0ciBpcyBQQVJUSUFMIC0gaXQgb25seSBjb250YWlucwotLy8gZW5vdWdoIHN0dWZmIHRvIHNh
dGlzZnkgR29vZ2xlIFRlc3QncyBuZWVkLgotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1jbGFzcyBz
Y29wZWRfcHRyIHsKLSBwdWJsaWM6Ci0gIHR5cGVkZWYgVCBlbGVtZW50X3R5cGU7Ci0KLSAgZXhw
bGljaXQgc2NvcGVkX3B0cihUKiBwID0gTlVMTCkgOiBwdHJfKHApIHt9Ci0gIH5zY29wZWRfcHRy
KCkgeyByZXNldCgpOyB9Ci0KLSAgVCYgb3BlcmF0b3IqKCkgY29uc3QgeyByZXR1cm4gKnB0cl87
IH0KLSAgVCogb3BlcmF0b3ItPigpIGNvbnN0IHsgcmV0dXJuIHB0cl87IH0KLSAgVCogZ2V0KCkg
Y29uc3QgeyByZXR1cm4gcHRyXzsgfQotCi0gIFQqIHJlbGVhc2UoKSB7Ci0gICAgVCogY29uc3Qg
cHRyID0gcHRyXzsKLSAgICBwdHJfID0gTlVMTDsKLSAgICByZXR1cm4gcHRyOwotICB9Ci0KLSAg
dm9pZCByZXNldChUKiBwID0gTlVMTCkgewotICAgIGlmIChwICE9IHB0cl8pIHsKLSAgICAgIGlm
IChJc1RydWUoc2l6ZW9mKFQpID4gMCkpIHsgIC8vIE1ha2VzIHN1cmUgVCBpcyBhIGNvbXBsZXRl
IHR5cGUuCi0gICAgICAgIGRlbGV0ZSBwdHJfOwotICAgICAgfQotICAgICAgcHRyXyA9IHA7Ci0g
ICAgfQotICB9Ci0KLSAgZnJpZW5kIHZvaWQgc3dhcChzY29wZWRfcHRyJiBhLCBzY29wZWRfcHRy
JiBiKSB7Ci0gICAgdXNpbmcgc3RkOjpzd2FwOwotICAgIHN3YXAoYS5wdHJfLCBiLnB0cl8pOwot
ICB9Ci0KLSBwcml2YXRlOgotICBUKiBwdHJfOwotCi0gIEdURVNUX0RJU0FMTE9XX0NPUFlfQU5E
X0FTU0lHTl8oc2NvcGVkX3B0cik7Ci19OwotCiAvLyBEZWZpbmVzIFJFLgogCiAjaWYgR1RFU1Rf
VVNFU19QQ1JFCkBAIC0xMjQ3LDI1ICs4ODMsMTYgQEAgY2xhc3MgR1RFU1RfQVBJXyBSRSB7CiAg
IC8vIENvbnN0cnVjdHMgYW4gUkUgZnJvbSBhIHN0cmluZy4KICAgUkUoY29uc3QgOjpzdGQ6OnN0
cmluZyYgcmVnZXgpIHsgSW5pdChyZWdleC5jX3N0cigpKTsgfSAgLy8gTk9MSU5UCiAKLSMgaWYg
R1RFU1RfSEFTX0dMT0JBTF9TVFJJTkcKLQotICBSRShjb25zdCA6OnN0cmluZyYgcmVnZXgpIHsg
SW5pdChyZWdleC5jX3N0cigpKTsgfSAgLy8gTk9MSU5UCi0KLSMgZW5kaWYgIC8vIEdURVNUX0hB
U19HTE9CQUxfU1RSSU5HCi0KICAgUkUoY29uc3QgY2hhciogcmVnZXgpIHsgSW5pdChyZWdleCk7
IH0gIC8vIE5PTElOVAogICB+UkUoKTsKIAogICAvLyBSZXR1cm5zIHRoZSBzdHJpbmcgcmVwcmVz
ZW50YXRpb24gb2YgdGhlIHJlZ2V4LgogICBjb25zdCBjaGFyKiBwYXR0ZXJuKCkgY29uc3QgeyBy
ZXR1cm4gcGF0dGVybl87IH0KIAotICAvLyBGdWxsTWF0Y2goc3RyLCByZSkgcmV0dXJucyB0cnVl
IGlmZiByZWd1bGFyIGV4cHJlc3Npb24gcmUgbWF0Y2hlcwotICAvLyB0aGUgZW50aXJlIHN0ci4K
LSAgLy8gUGFydGlhbE1hdGNoKHN0ciwgcmUpIHJldHVybnMgdHJ1ZSBpZmYgcmVndWxhciBleHBy
ZXNzaW9uIHJlCisgIC8vIEZ1bGxNYXRjaChzdHIsIHJlKSByZXR1cm5zIHRydWUgaWYgYW5kIG9u
bHkgaWYgcmVndWxhciBleHByZXNzaW9uIHJlCisgIC8vIG1hdGNoZXMgdGhlIGVudGlyZSBzdHIu
CisgIC8vIFBhcnRpYWxNYXRjaChzdHIsIHJlKSByZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYg
cmVndWxhciBleHByZXNzaW9uIHJlCiAgIC8vIG1hdGNoZXMgYSBzdWJzdHJpbmcgb2Ygc3RyIChp
bmNsdWRpbmcgc3RyIGl0c2VsZikuCi0gIC8vCi0gIC8vIEZJWE1FOiBtYWtlIEZ1bGxNYXRjaCgp
IGFuZCBQYXJ0aWFsTWF0Y2goKSB3b3JrCi0gIC8vIHdoZW4gc3RyIGNvbnRhaW5zIE5VTCBjaGFy
YWN0ZXJzLgogICBzdGF0aWMgYm9vbCBGdWxsTWF0Y2goY29uc3QgOjpzdGQ6OnN0cmluZyYgc3Ry
LCBjb25zdCBSRSYgcmUpIHsKICAgICByZXR1cm4gRnVsbE1hdGNoKHN0ci5jX3N0cigpLCByZSk7
CiAgIH0KQEAgLTEyNzMsMjYgKzkwMCwxMSBAQCBjbGFzcyBHVEVTVF9BUElfIFJFIHsKICAgICBy
ZXR1cm4gUGFydGlhbE1hdGNoKHN0ci5jX3N0cigpLCByZSk7CiAgIH0KIAotIyBpZiBHVEVTVF9I
QVNfR0xPQkFMX1NUUklORwotCi0gIHN0YXRpYyBib29sIEZ1bGxNYXRjaChjb25zdCA6OnN0cmlu
ZyYgc3RyLCBjb25zdCBSRSYgcmUpIHsKLSAgICByZXR1cm4gRnVsbE1hdGNoKHN0ci5jX3N0cigp
LCByZSk7Ci0gIH0KLSAgc3RhdGljIGJvb2wgUGFydGlhbE1hdGNoKGNvbnN0IDo6c3RyaW5nJiBz
dHIsIGNvbnN0IFJFJiByZSkgewotICAgIHJldHVybiBQYXJ0aWFsTWF0Y2goc3RyLmNfc3RyKCks
IHJlKTsKLSAgfQotCi0jIGVuZGlmICAvLyBHVEVTVF9IQVNfR0xPQkFMX1NUUklORwotCiAgIHN0
YXRpYyBib29sIEZ1bGxNYXRjaChjb25zdCBjaGFyKiBzdHIsIGNvbnN0IFJFJiByZSk7CiAgIHN0
YXRpYyBib29sIFBhcnRpYWxNYXRjaChjb25zdCBjaGFyKiBzdHIsIGNvbnN0IFJFJiByZSk7CiAK
ICBwcml2YXRlOgogICB2b2lkIEluaXQoY29uc3QgY2hhciogcmVnZXgpOwotCi0gIC8vIFdlIHVz
ZSBhIGNvbnN0IGNoYXIqIGluc3RlYWQgb2YgYW4gc3RkOjpzdHJpbmcsIGFzIEdvb2dsZSBUZXN0
IHVzZWQgdG8gYmUKLSAgLy8gdXNlZCB3aGVyZSBzdGQ6OnN0cmluZyBpcyBub3QgYXZhaWxhYmxl
LiAgRklYTUU6IGNoYW5nZSB0bwotICAvLyBzdGQ6OnN0cmluZy4KICAgY29uc3QgY2hhciogcGF0
dGVybl87CiAgIGJvb2wgaXNfdmFsaWRfOwogCkBAIC0xMzYwLDcgKzk3Miw3IEBAIGNsYXNzIEdU
RVNUX0FQSV8gR1Rlc3RMb2cgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9f
RklMRV9fLCBfX0xJTkVfXykuR2V0U3RyZWFtKCkKIAogaW5saW5lIHZvaWQgTG9nVG9TdGRlcnIo
KSB7fQotaW5saW5lIHZvaWQgRmx1c2hJbmZvTG9nKCkgeyBmZmx1c2goTlVMTCk7IH0KK2lubGlu
ZSB2b2lkIEZsdXNoSW5mb0xvZygpIHsgZmZsdXNoKG51bGxwdHIpOyB9CiAKICNlbmRpZiAgLy8g
IWRlZmluZWQoR1RFU1RfTE9HXykKIApAQCAtMTM5NywxOSArMTAwOSw2IEBAIGlubGluZSB2b2lk
IEZsdXNoSW5mb0xvZygpIHsgZmZsdXNoKE5VTEwpOyB9CiAgICAgR1RFU1RfTE9HXyhGQVRBTCkg
PDwgI3Bvc2l4X2NhbGwgPDwgImZhaWxlZCB3aXRoIGVycm9yICIgXAogICAgICAgICAgICAgICAg
ICAgICAgIDw8IGd0ZXN0X2Vycm9yCiAKLS8vIEFkZHMgcmVmZXJlbmNlIHRvIGEgdHlwZSBpZiBp
dCBpcyBub3QgYSByZWZlcmVuY2UgdHlwZSwKLS8vIG90aGVyd2lzZSBsZWF2ZXMgaXQgdW5jaGFu
Z2VkLiAgVGhpcyBpcyB0aGUgc2FtZSBhcwotLy8gdHIxOjphZGRfcmVmZXJlbmNlLCB3aGljaCBp
cyBub3Qgd2lkZWx5IGF2YWlsYWJsZSB5ZXQuCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLXN0cnVj
dCBBZGRSZWZlcmVuY2UgeyB0eXBlZGVmIFQmIHR5cGU7IH07ICAvLyBOT0xJTlQKLXRlbXBsYXRl
IDx0eXBlbmFtZSBUPgotc3RydWN0IEFkZFJlZmVyZW5jZTxUJj4geyB0eXBlZGVmIFQmIHR5cGU7
IH07ICAvLyBOT0xJTlQKLQotLy8gQSBoYW5keSB3cmFwcGVyIGFyb3VuZCBBZGRSZWZlcmVuY2Ug
dGhhdCB3b3JrcyB3aGVuIHRoZSBhcmd1bWVudCBUCi0vLyBkZXBlbmRzIG9uIHRlbXBsYXRlIHBh
cmFtZXRlcnMuCi0jZGVmaW5lIEdURVNUX0FERF9SRUZFUkVOQ0VfKFQpIFwKLSAgICB0eXBlbmFt
ZSA6OnRlc3Rpbmc6OmludGVybmFsOjpBZGRSZWZlcmVuY2U8VD46OnR5cGUKLQogLy8gVHJhbnNm
b3JtcyAiVCIgaW50byAiY29uc3QgVCYiIGFjY29yZGluZyB0byBzdGFuZGFyZCByZWZlcmVuY2Ug
Y29sbGFwc2luZwogLy8gcnVsZXMgKHRoaXMgaXMgb25seSBuZWVkZWQgYXMgYSBiYWNrcG9ydCBm
b3IgQysrOTggY29tcGlsZXJzIHRoYXQgZG8gbm90CiAvLyBzdXBwb3J0IHJlZmVyZW5jZSBjb2xs
YXBzaW5nKS4gU3BlY2lmaWNhbGx5LCBpdCB0cmFuc2Zvcm1zOgpAQCAtMTQzMCwyOCArMTAyOSw2
IEBAIHN0cnVjdCBDb25zdFJlZjxUJj4geyB0eXBlZGVmIFQmIHR5cGU7IH07CiAjZGVmaW5lIEdU
RVNUX1JFRkVSRU5DRV9UT19DT05TVF8oVCkgXAogICB0eXBlbmFtZSA6OnRlc3Rpbmc6OmludGVy
bmFsOjpDb25zdFJlZjxUPjo6dHlwZQogCi0jaWYgR1RFU1RfSEFTX1NURF9NT1ZFXwotdXNpbmcg
c3RkOjpmb3J3YXJkOwotdXNpbmcgc3RkOjptb3ZlOwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVD4K
LXN0cnVjdCBSdmFsdWVSZWYgewotICB0eXBlZGVmIFQmJiB0eXBlOwotfTsKLSNlbHNlICAvLyBH
VEVTVF9IQVNfU1REX01PVkVfCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLWNvbnN0IFQmIG1vdmUo
Y29uc3QgVCYgdCkgewotICByZXR1cm4gdDsKLX0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotR1RF
U1RfQUREX1JFRkVSRU5DRV8oVCkgZm9yd2FyZChHVEVTVF9BRERfUkVGRVJFTkNFXyhUKSB0KSB7
IHJldHVybiB0OyB9Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotc3RydWN0IFJ2YWx1ZVJlZiB7
Ci0gIHR5cGVkZWYgY29uc3QgVCYgdHlwZTsKLX07Ci0jZW5kaWYgIC8vIEdURVNUX0hBU19TVERf
TU9WRV8KLQogLy8gSU5URVJOQUwgSU1QTEVNRU5UQVRJT04gLSBETyBOT1QgVVNFIElOIFVTRVIg
Q09ERS4KIC8vCiAvLyBVc2UgSW1wbGljaXRDYXN0XyBhcyBhIHNhZmUgdmVyc2lvbiBvZiBzdGF0
aWNfY2FzdCBmb3IgdXBjYXN0aW5nIGluCkBAIC0xNTA1LDEzICsxMDgyLDEzIEBAIGlubGluZSBU
byBEb3duQ2FzdF8oRnJvbSogZikgeyAgLy8gc28gd2Ugb25seSBhY2NlcHQgcG9pbnRlcnMKICAg
R1RFU1RfSU5URU5USU9OQUxfQ09OU1RfQ09ORF9QVVNIXygpCiAgIGlmIChmYWxzZSkgewogICBH
VEVTVF9JTlRFTlRJT05BTF9DT05TVF9DT05EX1BPUF8oKQotICAgIGNvbnN0IFRvIHRvID0gTlVM
TDsKLSAgICA6OnRlc3Rpbmc6OmludGVybmFsOjpJbXBsaWNpdENhc3RfPEZyb20qPih0byk7Cisg
IGNvbnN0IFRvIHRvID0gbnVsbHB0cjsKKyAgOjp0ZXN0aW5nOjppbnRlcm5hbDo6SW1wbGljaXRD
YXN0XzxGcm9tKj4odG8pOwogICB9CiAKICNpZiBHVEVTVF9IQVNfUlRUSQogICAvLyBSVFRJOiBk
ZWJ1ZyBtb2RlIG9ubHkhCi0gIEdURVNUX0NIRUNLXyhmID09IE5VTEwgfHwgZHluYW1pY19jYXN0
PFRvPihmKSAhPSBOVUxMKTsKKyAgR1RFU1RfQ0hFQ0tfKGYgPT0gbnVsbHB0ciB8fCBkeW5hbWlj
X2Nhc3Q8VG8+KGYpICE9IG51bGxwdHIpOwogI2VuZGlmCiAgIHJldHVybiBzdGF0aWNfY2FzdDxU
bz4oZik7CiB9CkBAIC0xNTY1LDkgKzExNDIsNiBAQCBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4g
R2V0SW5qZWN0YWJsZUFyZ3ZzKCk7CiAvLyBEZXByZWNhdGVkOiBwYXNzIHRoZSBhcmdzIHZlY3Rv
ciBieSB2YWx1ZSBpbnN0ZWFkLgogdm9pZCBTZXRJbmplY3RhYmxlQXJndnMoY29uc3Qgc3RkOjp2
ZWN0b3I8c3RkOjpzdHJpbmc+KiBuZXdfYXJndnMpOwogdm9pZCBTZXRJbmplY3RhYmxlQXJndnMo
Y29uc3Qgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+JiBuZXdfYXJndnMpOwotI2lmIEdURVNUX0hB
U19HTE9CQUxfU1RSSU5HCi12b2lkIFNldEluamVjdGFibGVBcmd2cyhjb25zdCBzdGQ6OnZlY3Rv
cjwgOjpzdHJpbmc+JiBuZXdfYXJndnMpOwotI2VuZGlmICAvLyBHVEVTVF9IQVNfR0xPQkFMX1NU
UklORwogdm9pZCBDbGVhckluamVjdGFibGVBcmd2cygpOwogCiAjZW5kaWYgIC8vIEdURVNUX0hB
U19ERUFUSF9URVNUCkBAIC0xNTgzLDcgKzExNTcsNyBAQCBpbmxpbmUgdm9pZCBTbGVlcE1pbGxp
c2Vjb25kcyhpbnQgbikgewogICAgIDAsICAgICAgICAgICAgICAgICAgLy8gMCBzZWNvbmRzLgog
ICAgIG4gKiAxMDAwTCAqIDEwMDBMLCAgLy8gQW5kIG4gbXMuCiAgIH07Ci0gIG5hbm9zbGVlcCgm
dGltZSwgTlVMTCk7CisgIG5hbm9zbGVlcCgmdGltZSwgbnVsbHB0cik7CiB9CiAjIGVuZGlmICAv
LyBHVEVTVF9IQVNfUFRIUkVBRAogCkBAIC0xNjAxLDcgKzExNzUsNyBAQCBpbmxpbmUgdm9pZCBT
bGVlcE1pbGxpc2Vjb25kcyhpbnQgbikgewogY2xhc3MgTm90aWZpY2F0aW9uIHsKICBwdWJsaWM6
CiAgIE5vdGlmaWNhdGlvbigpIDogbm90aWZpZWRfKGZhbHNlKSB7Ci0gICAgR1RFU1RfQ0hFQ0tf
UE9TSVhfU1VDQ0VTU18ocHRocmVhZF9tdXRleF9pbml0KCZtdXRleF8sIE5VTEwpKTsKKyAgICBH
VEVTVF9DSEVDS19QT1NJWF9TVUNDRVNTXyhwdGhyZWFkX211dGV4X2luaXQoJm11dGV4XywgbnVs
bHB0cikpOwogICB9CiAgIH5Ob3RpZmljYXRpb24oKSB7CiAgICAgcHRocmVhZF9tdXRleF9kZXN0
cm95KCZtdXRleF8pOwpAQCAtMTY1OSw3ICsxMjMzLDggQEAgY2xhc3MgR1RFU1RfQVBJXyBBdXRv
SGFuZGxlIHsKICAgdm9pZCBSZXNldChIYW5kbGUgaGFuZGxlKTsKIAogIHByaXZhdGU6Ci0gIC8v
IFJldHVybnMgdHJ1ZSBpZmYgdGhlIGhhbmRsZSBpcyBhIHZhbGlkIGhhbmRsZSBvYmplY3QgdGhh
dCBjYW4gYmUgY2xvc2VkLgorICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIGhh
bmRsZSBpcyBhIHZhbGlkIGhhbmRsZSBvYmplY3QgdGhhdCBjYW4gYmUKKyAgLy8gY2xvc2VkLgog
ICBib29sIElzQ2xvc2VhYmxlKCkgY29uc3Q7CiAKICAgSGFuZGxlIGhhbmRsZV87CkBAIC0xNzEw
LDcgKzEyODUsNyBAQCBjbGFzcyBUaHJlYWRXaXRoUGFyYW1CYXNlIHsKIC8vIHBhc3MgaW50byBw
dGhyZWFkX2NyZWF0ZSgpLgogZXh0ZXJuICJDIiBpbmxpbmUgdm9pZCogVGhyZWFkRnVuY1dpdGhD
TGlua2FnZSh2b2lkKiB0aHJlYWQpIHsKICAgc3RhdGljX2Nhc3Q8VGhyZWFkV2l0aFBhcmFtQmFz
ZSo+KHRocmVhZCktPlJ1bigpOwotICByZXR1cm4gTlVMTDsKKyAgcmV0dXJuIG51bGxwdHI7CiB9
CiAKIC8vIEhlbHBlciBjbGFzcyBmb3IgdGVzdGluZyBHb29nbGUgVGVzdCdzIG11bHRpLXRocmVh
ZGluZyBjb25zdHJ1Y3RzLgpAQCAtMTczOSwyMCArMTMxNCwxOSBAQCBjbGFzcyBUaHJlYWRXaXRo
UGFyYW0gOiBwdWJsaWMgVGhyZWFkV2l0aFBhcmFtQmFzZSB7CiAgICAgLy8gVGhlIHRocmVhZCBj
YW4gYmUgY3JlYXRlZCBvbmx5IGFmdGVyIGFsbCBmaWVsZHMgZXhjZXB0IHRocmVhZF8KICAgICAv
LyBoYXZlIGJlZW4gaW5pdGlhbGl6ZWQuCiAgICAgR1RFU1RfQ0hFQ0tfUE9TSVhfU1VDQ0VTU18o
Ci0gICAgICAgIHB0aHJlYWRfY3JlYXRlKCZ0aHJlYWRfLCAwLCAmVGhyZWFkRnVuY1dpdGhDTGlu
a2FnZSwgYmFzZSkpOworICAgICAgICBwdGhyZWFkX2NyZWF0ZSgmdGhyZWFkXywgbnVsbHB0ciwg
JlRocmVhZEZ1bmNXaXRoQ0xpbmthZ2UsIGJhc2UpKTsKICAgfQotICB+VGhyZWFkV2l0aFBhcmFt
KCkgeyBKb2luKCk7IH0KKyAgflRocmVhZFdpdGhQYXJhbSgpIG92ZXJyaWRlIHsgSm9pbigpOyB9
CiAKICAgdm9pZCBKb2luKCkgewogICAgIGlmICghZmluaXNoZWRfKSB7Ci0gICAgICBHVEVTVF9D
SEVDS19QT1NJWF9TVUNDRVNTXyhwdGhyZWFkX2pvaW4odGhyZWFkXywgMCkpOworICAgICAgR1RF
U1RfQ0hFQ0tfUE9TSVhfU1VDQ0VTU18ocHRocmVhZF9qb2luKHRocmVhZF8sIG51bGxwdHIpKTsK
ICAgICAgIGZpbmlzaGVkXyA9IHRydWU7CiAgICAgfQogICB9CiAKLSAgdmlydHVhbCB2b2lkIFJ1
bigpIHsKLSAgICBpZiAodGhyZWFkX2Nhbl9zdGFydF8gIT0gTlVMTCkKLSAgICAgIHRocmVhZF9j
YW5fc3RhcnRfLT5XYWl0Rm9yTm90aWZpY2F0aW9uKCk7CisgIHZvaWQgUnVuKCkgb3ZlcnJpZGUg
eworICAgIGlmICh0aHJlYWRfY2FuX3N0YXJ0XyAhPSBudWxscHRyKSB0aHJlYWRfY2FuX3N0YXJ0
Xy0+V2FpdEZvck5vdGlmaWNhdGlvbigpOwogICAgIGZ1bmNfKHBhcmFtXyk7CiAgIH0KIApAQCAt
MTc2Miw3ICsxMzM2LDggQEAgY2xhc3MgVGhyZWFkV2l0aFBhcmFtIDogcHVibGljIFRocmVhZFdp
dGhQYXJhbUJhc2UgewogICAvLyBXaGVuIG5vbi1OVUxMLCB1c2VkIHRvIGJsb2NrIGV4ZWN1dGlv
biB1bnRpbCB0aGUgY29udHJvbGxlciB0aHJlYWQKICAgLy8gbm90aWZpZXMuCiAgIE5vdGlmaWNh
dGlvbiogY29uc3QgdGhyZWFkX2Nhbl9zdGFydF87Ci0gIGJvb2wgZmluaXNoZWRfOyAgLy8gdHJ1
ZSBpZmYgd2Uga25vdyB0aGF0IHRoZSB0aHJlYWQgZnVuY3Rpb24gaGFzIGZpbmlzaGVkLgorICBi
b29sIGZpbmlzaGVkXzsgIC8vIHRydWUgaWYgYW5kIG9ubHkgaWYgd2Uga25vdyB0aGF0IHRoZSB0
aHJlYWQgZnVuY3Rpb24gaGFzCisgICAgICAgICAgICAgICAgICAgLy8gZmluaXNoZWQuCiAgIHB0
aHJlYWRfdCB0aHJlYWRfOyAgLy8gVGhlIG5hdGl2ZSB0aHJlYWQgb2JqZWN0LgogCiAgIEdURVNU
X0RJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTl8oVGhyZWFkV2l0aFBhcmFtKTsKQEAgLTIwMjcsNyAr
MTYwMiw3IEBAIGNsYXNzIFRocmVhZExvY2FsIDogcHVibGljIFRocmVhZExvY2FsQmFzZSB7CiAg
IGNsYXNzIERlZmF1bHRWYWx1ZUhvbGRlckZhY3RvcnkgOiBwdWJsaWMgVmFsdWVIb2xkZXJGYWN0
b3J5IHsKICAgIHB1YmxpYzoKICAgICBEZWZhdWx0VmFsdWVIb2xkZXJGYWN0b3J5KCkge30KLSAg
ICB2aXJ0dWFsIFZhbHVlSG9sZGVyKiBNYWtlTmV3SG9sZGVyKCkgY29uc3QgeyByZXR1cm4gbmV3
IFZhbHVlSG9sZGVyKCk7IH0KKyAgICBWYWx1ZUhvbGRlciogTWFrZU5ld0hvbGRlcigpIGNvbnN0
IG92ZXJyaWRlIHsgcmV0dXJuIG5ldyBWYWx1ZUhvbGRlcigpOyB9CiAKICAgIHByaXZhdGU6CiAg
ICAgR1RFU1RfRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhEZWZhdWx0VmFsdWVIb2xkZXJGYWN0
b3J5KTsKQEAgLTIwMzYsNyArMTYxMSw3IEBAIGNsYXNzIFRocmVhZExvY2FsIDogcHVibGljIFRo
cmVhZExvY2FsQmFzZSB7CiAgIGNsYXNzIEluc3RhbmNlVmFsdWVIb2xkZXJGYWN0b3J5IDogcHVi
bGljIFZhbHVlSG9sZGVyRmFjdG9yeSB7CiAgICBwdWJsaWM6CiAgICAgZXhwbGljaXQgSW5zdGFu
Y2VWYWx1ZUhvbGRlckZhY3RvcnkoY29uc3QgVCYgdmFsdWUpIDogdmFsdWVfKHZhbHVlKSB7fQot
ICAgIHZpcnR1YWwgVmFsdWVIb2xkZXIqIE1ha2VOZXdIb2xkZXIoKSBjb25zdCB7CisgICAgVmFs
dWVIb2xkZXIqIE1ha2VOZXdIb2xkZXIoKSBjb25zdCBvdmVycmlkZSB7CiAgICAgICByZXR1cm4g
bmV3IFZhbHVlSG9sZGVyKHZhbHVlXyk7CiAgICAgfQogCkBAIC0yMDQ2LDcgKzE2MjEsNyBAQCBj
bGFzcyBUaHJlYWRMb2NhbCA6IHB1YmxpYyBUaHJlYWRMb2NhbEJhc2UgewogICAgIEdURVNUX0RJ
U0FMTE9XX0NPUFlfQU5EX0FTU0lHTl8oSW5zdGFuY2VWYWx1ZUhvbGRlckZhY3RvcnkpOwogICB9
OwogCi0gIHNjb3BlZF9wdHI8VmFsdWVIb2xkZXJGYWN0b3J5PiBkZWZhdWx0X2ZhY3RvcnlfOwor
ICBzdGQ6OnVuaXF1ZV9wdHI8VmFsdWVIb2xkZXJGYWN0b3J5PiBkZWZhdWx0X2ZhY3RvcnlfOwog
CiAgIEdURVNUX0RJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTl8oVGhyZWFkTG9jYWwpOwogfTsKQEAg
LTIxMTUsNyArMTY5MCw3IEBAIGNsYXNzIE11dGV4QmFzZSB7CiBjbGFzcyBNdXRleCA6IHB1Ymxp
YyBNdXRleEJhc2UgewogIHB1YmxpYzoKICAgTXV0ZXgoKSB7Ci0gICAgR1RFU1RfQ0hFQ0tfUE9T
SVhfU1VDQ0VTU18ocHRocmVhZF9tdXRleF9pbml0KCZtdXRleF8sIE5VTEwpKTsKKyAgICBHVEVT
VF9DSEVDS19QT1NJWF9TVUNDRVNTXyhwdGhyZWFkX211dGV4X2luaXQoJm11dGV4XywgbnVsbHB0
cikpOwogICAgIGhhc19vd25lcl8gPSBmYWxzZTsKICAgfQogICB+TXV0ZXgoKSB7CkBAIC0yMjEz
LDcgKzE3ODgsNyBAQCBjbGFzcyBHVEVTVF9BUElfIFRocmVhZExvY2FsIHsKICAgVCogR2V0T3JD
cmVhdGVWYWx1ZSgpIGNvbnN0IHsKICAgICBUaHJlYWRMb2NhbFZhbHVlSG9sZGVyQmFzZSogY29u
c3QgaG9sZGVyID0KICAgICAgICAgc3RhdGljX2Nhc3Q8VGhyZWFkTG9jYWxWYWx1ZUhvbGRlckJh
c2UqPihwdGhyZWFkX2dldHNwZWNpZmljKGtleV8pKTsKLSAgICBpZiAoaG9sZGVyICE9IE5VTEwp
IHsKKyAgICBpZiAoaG9sZGVyICE9IG51bGxwdHIpIHsKICAgICAgIHJldHVybiBDaGVja2VkRG93
bmNhc3RUb0FjdHVhbFR5cGU8VmFsdWVIb2xkZXI+KGhvbGRlciktPnBvaW50ZXIoKTsKICAgICB9
CiAKQEAgLTIyMzYsNyArMTgxMSw3IEBAIGNsYXNzIEdURVNUX0FQSV8gVGhyZWFkTG9jYWwgewog
ICBjbGFzcyBEZWZhdWx0VmFsdWVIb2xkZXJGYWN0b3J5IDogcHVibGljIFZhbHVlSG9sZGVyRmFj
dG9yeSB7CiAgICBwdWJsaWM6CiAgICAgRGVmYXVsdFZhbHVlSG9sZGVyRmFjdG9yeSgpIHt9Ci0g
ICAgdmlydHVhbCBWYWx1ZUhvbGRlciogTWFrZU5ld0hvbGRlcigpIGNvbnN0IHsgcmV0dXJuIG5l
dyBWYWx1ZUhvbGRlcigpOyB9CisgICAgVmFsdWVIb2xkZXIqIE1ha2VOZXdIb2xkZXIoKSBjb25z
dCBvdmVycmlkZSB7IHJldHVybiBuZXcgVmFsdWVIb2xkZXIoKTsgfQogCiAgICBwcml2YXRlOgog
ICAgIEdURVNUX0RJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTl8oRGVmYXVsdFZhbHVlSG9sZGVyRmFj
dG9yeSk7CkBAIC0yMjQ1LDcgKzE4MjAsNyBAQCBjbGFzcyBHVEVTVF9BUElfIFRocmVhZExvY2Fs
IHsKICAgY2xhc3MgSW5zdGFuY2VWYWx1ZUhvbGRlckZhY3RvcnkgOiBwdWJsaWMgVmFsdWVIb2xk
ZXJGYWN0b3J5IHsKICAgIHB1YmxpYzoKICAgICBleHBsaWNpdCBJbnN0YW5jZVZhbHVlSG9sZGVy
RmFjdG9yeShjb25zdCBUJiB2YWx1ZSkgOiB2YWx1ZV8odmFsdWUpIHt9Ci0gICAgdmlydHVhbCBW
YWx1ZUhvbGRlciogTWFrZU5ld0hvbGRlcigpIGNvbnN0IHsKKyAgICBWYWx1ZUhvbGRlciogTWFr
ZU5ld0hvbGRlcigpIGNvbnN0IG92ZXJyaWRlIHsKICAgICAgIHJldHVybiBuZXcgVmFsdWVIb2xk
ZXIodmFsdWVfKTsKICAgICB9CiAKQEAgLTIyNTcsNyArMTgzMiw3IEBAIGNsYXNzIEdURVNUX0FQ
SV8gVGhyZWFkTG9jYWwgewogCiAgIC8vIEEga2V5IHB0aHJlYWRzIHVzZXMgZm9yIGxvb2tpbmcg
dXAgcGVyLXRocmVhZCB2YWx1ZXMuCiAgIGNvbnN0IHB0aHJlYWRfa2V5X3Qga2V5XzsKLSAgc2Nv
cGVkX3B0cjxWYWx1ZUhvbGRlckZhY3Rvcnk+IGRlZmF1bHRfZmFjdG9yeV87CisgIHN0ZDo6dW5p
cXVlX3B0cjxWYWx1ZUhvbGRlckZhY3Rvcnk+IGRlZmF1bHRfZmFjdG9yeV87CiAKICAgR1RFU1Rf
RElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOXyhUaHJlYWRMb2NhbCk7CiB9OwpAQCAtMjMxNSw3NyAr
MTg5MCwxMiBAQCBjbGFzcyBHVEVTVF9BUElfIFRocmVhZExvY2FsIHsKIC8vIHdlIGNhbm5vdCBk
ZXRlY3QgaXQuCiBHVEVTVF9BUElfIHNpemVfdCBHZXRUaHJlYWRDb3VudCgpOwogCi0vLyBQYXNz
aW5nIG5vbi1QT0QgY2xhc3NlcyB0aHJvdWdoIGVsbGlwc2lzICguLi4pIGNyYXNoZXMgdGhlIEFS
TQotLy8gY29tcGlsZXIgYW5kIGdlbmVyYXRlcyBhIHdhcm5pbmcgaW4gU3VuIFN0dWRpbyBiZWZv
cmUgMTJ1NC4gVGhlIE5va2lhIFN5bWJpYW4KLS8vIGFuZCB0aGUgSUJNIFhMIEMvQysrIGNvbXBp
bGVyIHRyeSB0byBpbnN0YW50aWF0ZSBhIGNvcHkgY29uc3RydWN0b3IKLS8vIGZvciBvYmplY3Rz
IHBhc3NlZCB0aHJvdWdoIGVsbGlwc2lzICguLi4pLCBmYWlsaW5nIGZvciB1bmNvcHlhYmxlCi0v
LyBvYmplY3RzLiAgV2UgZGVmaW5lIHRoaXMgdG8gZW5zdXJlIHRoYXQgb25seSBQT0QgaXMgcGFz
c2VkIHRocm91Z2gKLS8vIGVsbGlwc2lzIG9uIHRoZXNlIHN5c3RlbXMuCi0jaWYgZGVmaW5lZChf
X1NZTUJJQU4zMl9fKSB8fCBkZWZpbmVkKF9fSUJNQ1BQX18pIHx8IFwKLSAgICAgKGRlZmluZWQo
X19TVU5QUk9fQ0MpICYmIF9fU1VOUFJPX0NDIDwgMHg1MTMwKQotLy8gV2UgbG9zZSBzdXBwb3J0
IGZvciBOVUxMIGRldGVjdGlvbiB3aGVyZSB0aGUgY29tcGlsZXIgZG9lc24ndCBsaWtlCi0vLyBw
YXNzaW5nIG5vbi1QT0QgY2xhc3NlcyB0aHJvdWdoIGVsbGlwc2lzICguLi4pLgotIyBkZWZpbmUg
R1RFU1RfRUxMSVBTSVNfTkVFRFNfUE9EXyAxCi0jZWxzZQotIyBkZWZpbmUgR1RFU1RfQ0FOX0NP
TVBBUkVfTlVMTCAxCi0jZW5kaWYKLQotLy8gVGhlIE5va2lhIFN5bWJpYW4gYW5kIElCTSBYTCBD
L0MrKyBjb21waWxlcnMgY2Fubm90IGRlY2lkZSBiZXR3ZWVuCi0vLyBjb25zdCBUJiBhbmQgY29u
c3QgVCogaW4gYSBmdW5jdGlvbiB0ZW1wbGF0ZS4gIFRoZXNlIGNvbXBpbGVycwotLy8gX2Nhbl8g
ZGVjaWRlIGJldHdlZW4gY2xhc3MgdGVtcGxhdGUgc3BlY2lhbGl6YXRpb25zIGZvciBUIGFuZCBU
KiwKLS8vIHNvIGEgdHIxOjp0eXBlX3RyYWl0cy1saWtlIGlzX3BvaW50ZXIgd29ya3MuCi0jaWYg
ZGVmaW5lZChfX1NZTUJJQU4zMl9fKSB8fCBkZWZpbmVkKF9fSUJNQ1BQX18pCi0jIGRlZmluZSBH
VEVTVF9ORUVEU19JU19QT0lOVEVSXyAxCi0jZW5kaWYKLQotdGVtcGxhdGUgPGJvb2wgYm9vbF92
YWx1ZT4KLXN0cnVjdCBib29sX2NvbnN0YW50IHsKLSAgdHlwZWRlZiBib29sX2NvbnN0YW50PGJv
b2xfdmFsdWU+IHR5cGU7Ci0gIHN0YXRpYyBjb25zdCBib29sIHZhbHVlID0gYm9vbF92YWx1ZTsK
LX07Ci10ZW1wbGF0ZSA8Ym9vbCBib29sX3ZhbHVlPiBjb25zdCBib29sIGJvb2xfY29uc3RhbnQ8
Ym9vbF92YWx1ZT46OnZhbHVlOwotCi10eXBlZGVmIGJvb2xfY29uc3RhbnQ8ZmFsc2U+IGZhbHNl
X3R5cGU7Ci10eXBlZGVmIGJvb2xfY29uc3RhbnQ8dHJ1ZT4gdHJ1ZV90eXBlOwotCi10ZW1wbGF0
ZSA8dHlwZW5hbWUgVCwgdHlwZW5hbWUgVT4KLXN0cnVjdCBpc19zYW1lIDogcHVibGljIGZhbHNl
X3R5cGUge307Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotc3RydWN0IGlzX3NhbWU8VCwgVD4g
OiBwdWJsaWMgdHJ1ZV90eXBlIHt9OwotCi0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotc3RydWN0
IGlzX3BvaW50ZXIgOiBwdWJsaWMgZmFsc2VfdHlwZSB7fTsKLQotdGVtcGxhdGUgPHR5cGVuYW1l
IFQ+Ci1zdHJ1Y3QgaXNfcG9pbnRlcjxUKj4gOiBwdWJsaWMgdHJ1ZV90eXBlIHt9OwotCi10ZW1w
bGF0ZSA8dHlwZW5hbWUgSXRlcmF0b3I+Ci1zdHJ1Y3QgSXRlcmF0b3JUcmFpdHMgewotICB0eXBl
ZGVmIHR5cGVuYW1lIEl0ZXJhdG9yOjp2YWx1ZV90eXBlIHZhbHVlX3R5cGU7Ci19OwotCi0KLXRl
bXBsYXRlIDx0eXBlbmFtZSBUPgotc3RydWN0IEl0ZXJhdG9yVHJhaXRzPFQqPiB7Ci0gIHR5cGVk
ZWYgVCB2YWx1ZV90eXBlOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1zdHJ1Y3QgSXRl
cmF0b3JUcmFpdHM8Y29uc3QgVCo+IHsKLSAgdHlwZWRlZiBUIHZhbHVlX3R5cGU7Ci19OwotCiAj
aWYgR1RFU1RfT1NfV0lORE9XUwogIyBkZWZpbmUgR1RFU1RfUEFUSF9TRVBfICJcXCIKICMgZGVm
aW5lIEdURVNUX0hBU19BTFRfUEFUSF9TRVBfIDEKLS8vIFRoZSBiaWdnZXN0IHNpZ25lZCBpbnRl
Z2VyIHR5cGUgdGhlIGNvbXBpbGVyIHN1cHBvcnRzLgotdHlwZWRlZiBfX2ludDY0IEJpZ2dlc3RJ
bnQ7CiAjZWxzZQogIyBkZWZpbmUgR1RFU1RfUEFUSF9TRVBfICIvIgogIyBkZWZpbmUgR1RFU1Rf
SEFTX0FMVF9QQVRIX1NFUF8gMAotdHlwZWRlZiBsb25nIGxvbmcgQmlnZ2VzdEludDsgIC8vIE5P
TElOVAogI2VuZGlmICAvLyBHVEVTVF9PU19XSU5ET1dTCiAKIC8vIFV0aWxpdGllcyBmb3IgY2hh
ci4KQEAgLTI0ODAsNiArMTk5MCwyMiBAQCBpbmxpbmUgYm9vbCBJc0Rpcihjb25zdCBTdGF0U3Ry
dWN0JiBzdCkgewogfQogIyBlbmRpZiAgLy8gR1RFU1RfT1NfV0lORE9XU19NT0JJTEUKIAorI2Vs
aWYgR1RFU1RfT1NfRVNQODI2NgordHlwZWRlZiBzdHJ1Y3Qgc3RhdCBTdGF0U3RydWN0OworCitp
bmxpbmUgaW50IEZpbGVObyhGSUxFKiBmaWxlKSB7IHJldHVybiBmaWxlbm8oZmlsZSk7IH0KK2lu
bGluZSBpbnQgSXNBVFRZKGludCBmZCkgeyByZXR1cm4gaXNhdHR5KGZkKTsgfQoraW5saW5lIGlu
dCBTdGF0KGNvbnN0IGNoYXIqIHBhdGgsIFN0YXRTdHJ1Y3QqIGJ1ZikgeworICAvLyBzdGF0IGZ1
bmN0aW9uIG5vdCBpbXBsZW1lbnRlZCBvbiBFU1A4MjY2CisgIHJldHVybiAwOworfQoraW5saW5l
IGludCBTdHJDYXNlQ21wKGNvbnN0IGNoYXIqIHMxLCBjb25zdCBjaGFyKiBzMikgeworICByZXR1
cm4gc3RyY2FzZWNtcChzMSwgczIpOworfQoraW5saW5lIGNoYXIqIFN0ckR1cChjb25zdCBjaGFy
KiBzcmMpIHsgcmV0dXJuIHN0cmR1cChzcmMpOyB9CitpbmxpbmUgaW50IFJtRGlyKGNvbnN0IGNo
YXIqIGRpcikgeyByZXR1cm4gcm1kaXIoZGlyKTsgfQoraW5saW5lIGJvb2wgSXNEaXIoY29uc3Qg
U3RhdFN0cnVjdCYgc3QpIHsgcmV0dXJuIFNfSVNESVIoc3Quc3RfbW9kZSk7IH0KKwogI2Vsc2UK
IAogdHlwZWRlZiBzdHJ1Y3Qgc3RhdCBTdGF0U3RydWN0OwpAQCAtMjUwMCwxMCArMjAyNiw2IEBA
IGlubGluZSBib29sIElzRGlyKGNvbnN0IFN0YXRTdHJ1Y3QmIHN0KSB7IHJldHVybiBTX0lTRElS
KHN0LnN0X21vZGUpOyB9CiAKIEdURVNUX0RJU0FCTEVfTVNDX0RFUFJFQ0FURURfUFVTSF8oKQog
Ci1pbmxpbmUgY29uc3QgY2hhciogU3RyTkNweShjaGFyKiBkZXN0LCBjb25zdCBjaGFyKiBzcmMs
IHNpemVfdCBuKSB7Ci0gIHJldHVybiBzdHJuY3B5KGRlc3QsIHNyYywgbik7Ci19Ci0KIC8vIENo
RGlyKCksIEZSZW9wZW4oKSwgRkRPcGVuKCksIFJlYWQoKSwgV3JpdGUoKSwgQ2xvc2UoKSwgYW5k
CiAvLyBTdHJFcnJvcigpIGFyZW4ndCBuZWVkZWQgb24gV2luZG93cyBDRSBhdCB0aGlzIHRpbWUg
YW5kIHRodXMgbm90CiAvLyBkZWZpbmVkIHRoZXJlLgpAQCAtMjUzMiwxNSArMjA1NCwxNiBAQCBp
bmxpbmUgaW50IENsb3NlKGludCBmZCkgeyByZXR1cm4gY2xvc2UoZmQpOyB9CiBpbmxpbmUgY29u
c3QgY2hhciogU3RyRXJyb3IoaW50IGVycm51bSkgeyByZXR1cm4gc3RyZXJyb3IoZXJybnVtKTsg
fQogI2VuZGlmCiBpbmxpbmUgY29uc3QgY2hhciogR2V0RW52KGNvbnN0IGNoYXIqIG5hbWUpIHsK
LSNpZiBHVEVTVF9PU19XSU5ET1dTX01PQklMRSB8fCBHVEVTVF9PU19XSU5ET1dTX1BIT05FIHx8
IEdURVNUX09TX1dJTkRPV1NfUlQKLSAgLy8gV2UgYXJlIG9uIFdpbmRvd3MgQ0UsIHdoaWNoIGhh
cyBubyBlbnZpcm9ubWVudCB2YXJpYWJsZXMuCisjaWYgR1RFU1RfT1NfV0lORE9XU19NT0JJTEUg
fHwgR1RFU1RfT1NfV0lORE9XU19QSE9ORSB8fCBcCisgICAgR1RFU1RfT1NfV0lORE9XU19SVCB8
fCBHVEVTVF9PU19FU1A4MjY2CisgIC8vIFdlIGFyZSBvbiBhbiBlbWJlZGRlZCBwbGF0Zm9ybSwg
d2hpY2ggaGFzIG5vIGVudmlyb25tZW50IHZhcmlhYmxlcy4KICAgc3RhdGljX2Nhc3Q8dm9pZD4o
bmFtZSk7ICAvLyBUbyBwcmV2ZW50ICd1bnVzZWQgYXJndW1lbnQnIHdhcm5pbmcuCi0gIHJldHVy
biBOVUxMOworICByZXR1cm4gbnVsbHB0cjsKICNlbGlmIGRlZmluZWQoX19CT1JMQU5EQ19fKSB8
fCBkZWZpbmVkKF9fU3VuT1NfNV84KSB8fCBkZWZpbmVkKF9fU3VuT1NfNV85KQogICAvLyBFbnZp
cm9ubWVudCB2YXJpYWJsZXMgd2hpY2ggd2UgcHJvZ3JhbW1hdGljYWxseSBjbGVhciB3aWxsIGJl
IHNldCB0byB0aGUKICAgLy8gZW1wdHkgc3RyaW5nIHJhdGhlciB0aGFuIHVuc2V0IChOVUxMKS4g
IEhhbmRsZSB0aGF0IGNhc2UuCiAgIGNvbnN0IGNoYXIqIGNvbnN0IGVudiA9IGdldGVudihuYW1l
KTsKLSAgcmV0dXJuIChlbnYgIT0gTlVMTCAmJiBlbnZbMF0gIT0gJ1wwJykgPyBlbnYgOiBOVUxM
OworICByZXR1cm4gKGVudiAhPSBudWxscHRyICYmIGVudlswXSAhPSAnXDAnKSA/IGVudiA6IG51
bGxwdHI7CiAjZWxzZQogICByZXR1cm4gZ2V0ZW52KG5hbWUpOwogI2VuZGlmCkBAIC0yNTUyLDkg
KzIwNzUsOSBAQCBHVEVTVF9ESVNBQkxFX01TQ19ERVBSRUNBVEVEX1BPUF8oKQogLy8gV2luZG93
cyBDRSBoYXMgbm8gQyBsaWJyYXJ5LiBUaGUgYWJvcnQoKSBmdW5jdGlvbiBpcyB1c2VkIGluCiAv
LyBzZXZlcmFsIHBsYWNlcyBpbiBHb29nbGUgVGVzdC4gVGhpcyBpbXBsZW1lbnRhdGlvbiBwcm92
aWRlcyBhIHJlYXNvbmFibGUKIC8vIGltaXRhdGlvbiBvZiBzdGFuZGFyZCBiZWhhdmlvdXIuCi12
b2lkIEFib3J0KCk7CitbW25vcmV0dXJuXV0gdm9pZCBBYm9ydCgpOwogI2Vsc2UKLWlubGluZSB2
b2lkIEFib3J0KCkgeyBhYm9ydCgpOyB9CitbW25vcmV0dXJuXV0gaW5saW5lIHZvaWQgQWJvcnQo
KSB7IGFib3J0KCk7IH0KICNlbmRpZiAgLy8gR1RFU1RfT1NfV0lORE9XU19NT0JJTEUKIAogfSAg
Ly8gbmFtZXNwYWNlIHBvc2l4CkBAIC0yNTY0LDI3ICsyMDg3LDI0IEBAIGlubGluZSB2b2lkIEFi
b3J0KCkgeyBhYm9ydCgpOyB9CiAvLyBNU1ZDLWJhc2VkIHBsYXRmb3Jtcy4gIFdlIG1hcCB0aGUg
R1RFU1RfU05QUklOVEZfIG1hY3JvIHRvIHRoZSBhcHByb3ByaWF0ZQogLy8gZnVuY3Rpb24gaW4g
b3JkZXIgdG8gYWNoaWV2ZSB0aGF0LiAgV2UgdXNlIG1hY3JvIGRlZmluaXRpb24gaGVyZSBiZWNh
dXNlCiAvLyBzbnByaW50ZiBpcyBhIHZhcmlhZGljIGZ1bmN0aW9uLgotI2lmIF9NU0NfVkVSID49
IDE0MDAgJiYgIUdURVNUX09TX1dJTkRPV1NfTU9CSUxFCisjaWYgX01TQ19WRVIgJiYgIUdURVNU
X09TX1dJTkRPV1NfTU9CSUxFCiAvLyBNU1ZDIDIwMDUgYW5kIGFib3ZlIHN1cHBvcnQgdmFyaWFk
aWMgbWFjcm9zLgogIyBkZWZpbmUgR1RFU1RfU05QUklOVEZfKGJ1ZmZlciwgc2l6ZSwgZm9ybWF0
LCAuLi4pIFwKICAgICAgX3NucHJpbnRmX3MoYnVmZmVyLCBzaXplLCBzaXplLCBmb3JtYXQsIF9f
VkFfQVJHU19fKQogI2VsaWYgZGVmaW5lZChfTVNDX1ZFUikKLS8vIFdpbmRvd3MgQ0UgZG9lcyBu
b3QgZGVmaW5lIF9zbnByaW50Zl9zIGFuZCBNU1ZDIHByaW9yIHRvIDIwMDUgZG9lc24ndAotLy8g
Y29tcGxhaW4gYWJvdXQgX3NucHJpbnRmLgorLy8gV2luZG93cyBDRSBkb2VzIG5vdCBkZWZpbmUg
X3NucHJpbnRmX3MKICMgZGVmaW5lIEdURVNUX1NOUFJJTlRGXyBfc25wcmludGYKICNlbHNlCiAj
IGRlZmluZSBHVEVTVF9TTlBSSU5URl8gc25wcmludGYKICNlbmRpZgogCi0vLyBUaGUgbWF4aW11
bSBudW1iZXIgYSBCaWdnZXN0SW50IGNhbiByZXByZXNlbnQuICBUaGlzIGRlZmluaXRpb24KLS8v
IHdvcmtzIG5vIG1hdHRlciBCaWdnZXN0SW50IGlzIHJlcHJlc2VudGVkIGluIG9uZSdzIGNvbXBs
ZW1lbnQgb3IKLS8vIHR3bydzIGNvbXBsZW1lbnQuCisvLyBUaGUgYmlnZ2VzdCBzaWduZWQgaW50
ZWdlciB0eXBlIHRoZSBjb21waWxlciBzdXBwb3J0cy4KIC8vCi0vLyBXZSBjYW5ub3QgcmVseSBv
biBudW1lcmljX2xpbWl0cyBpbiBTVEwsIGFzIF9faW50NjQgYW5kIGxvbmcgbG9uZwotLy8gYXJl
IG5vdCBwYXJ0IG9mIHN0YW5kYXJkIEMrKyBhbmQgbnVtZXJpY19saW1pdHMgZG9lc24ndCBuZWVk
IHRvIGJlCi0vLyBkZWZpbmVkIGZvciB0aGVtLgotY29uc3QgQmlnZ2VzdEludCBrTWF4QmlnZ2Vz
dEludCA9Ci0gICAgfihzdGF0aWNfY2FzdDxCaWdnZXN0SW50PigxKSA8PCAoOCpzaXplb2YoQmln
Z2VzdEludCkgLSAxKSk7CisvLyBsb25nIGxvbmcgaXMgZ3VhcmFudGVlZCB0byBiZSBhdCBsZWFz
dCA2NC1iaXRzIGluIEMrKzExLgordXNpbmcgQmlnZ2VzdEludCA9IGxvbmcgbG9uZzsgIC8vIE5P
TElOVAorCisvLyBUaGUgbWF4aW11bSBudW1iZXIgYSBCaWdnZXN0SW50IGNhbiByZXByZXNlbnQu
Citjb25zdGV4cHIgQmlnZ2VzdEludCBrTWF4QmlnZ2VzdEludCA9IChzdGQ6Om51bWVyaWNfbGlt
aXRzPEJpZ2dlc3RJbnQ+OjptYXgpKCk7CiAKIC8vIFRoaXMgdGVtcGxhdGUgY2xhc3Mgc2VydmVz
IGFzIGEgY29tcGlsZS10aW1lIGZ1bmN0aW9uIGZyb20gc2l6ZSB0bwogLy8gdHlwZS4gIEl0IG1h
cHMgYSBzaXplIGluIGJ5dGVzIHRvIGEgcHJpbWl0aXZlIHR5cGUgd2l0aCB0aGF0CkBAIC0yNjA5
LDQwICsyMTI5LDI3IEBAIGNsYXNzIFR5cGVXaXRoU2l6ZSB7CiAgcHVibGljOgogICAvLyBUaGlz
IHByZXZlbnRzIHRoZSB1c2VyIGZyb20gdXNpbmcgVHlwZVdpdGhTaXplPE4+IHdpdGggaW5jb3Jy
ZWN0CiAgIC8vIHZhbHVlcyBvZiBOLgotICB0eXBlZGVmIHZvaWQgVUludDsKKyAgdXNpbmcgVUlu
dCA9IHZvaWQ7CiB9OwogCiAvLyBUaGUgc3BlY2lhbGl6YXRpb24gZm9yIHNpemUgNC4KIHRlbXBs
YXRlIDw+CiBjbGFzcyBUeXBlV2l0aFNpemU8ND4gewogIHB1YmxpYzoKLSAgLy8gdW5zaWduZWQg
aW50IGhhcyBzaXplIDQgaW4gYm90aCBnY2MgYW5kIE1TVkMuCi0gIC8vCi0gIC8vIEFzIGJhc2Uv
YmFzaWN0eXBlcy5oIGRvZXNuJ3QgY29tcGlsZSBvbiBXaW5kb3dzLCB3ZSBjYW5ub3QgdXNlCi0g
IC8vIHVpbnQzMiwgdWludDY0LCBhbmQgZXRjIGhlcmUuCi0gIHR5cGVkZWYgaW50IEludDsKLSAg
dHlwZWRlZiB1bnNpZ25lZCBpbnQgVUludDsKKyAgdXNpbmcgSW50ID0gc3RkOjppbnQzMl90Owor
ICB1c2luZyBVSW50ID0gc3RkOjp1aW50MzJfdDsKIH07CiAKIC8vIFRoZSBzcGVjaWFsaXphdGlv
biBmb3Igc2l6ZSA4LgogdGVtcGxhdGUgPD4KIGNsYXNzIFR5cGVXaXRoU2l6ZTw4PiB7CiAgcHVi
bGljOgotI2lmIEdURVNUX09TX1dJTkRPV1MKLSAgdHlwZWRlZiBfX2ludDY0IEludDsKLSAgdHlw
ZWRlZiB1bnNpZ25lZCBfX2ludDY0IFVJbnQ7Ci0jZWxzZQotICB0eXBlZGVmIGxvbmcgbG9uZyBJ
bnQ7ICAvLyBOT0xJTlQKLSAgdHlwZWRlZiB1bnNpZ25lZCBsb25nIGxvbmcgVUludDsgIC8vIE5P
TElOVAotI2VuZGlmICAvLyBHVEVTVF9PU19XSU5ET1dTCisgIHVzaW5nIEludCA9IHN0ZDo6aW50
NjRfdDsKKyAgdXNpbmcgVUludCA9IHN0ZDo6dWludDY0X3Q7CiB9OwogCiAvLyBJbnRlZ2VyIHR5
cGVzIG9mIGtub3duIHNpemVzLgotdHlwZWRlZiBUeXBlV2l0aFNpemU8ND46OkludCBJbnQzMjsK
LXR5cGVkZWYgVHlwZVdpdGhTaXplPDQ+OjpVSW50IFVJbnQzMjsKLXR5cGVkZWYgVHlwZVdpdGhT
aXplPDg+OjpJbnQgSW50NjQ7Ci10eXBlZGVmIFR5cGVXaXRoU2l6ZTw4Pjo6VUludCBVSW50NjQ7
Ci10eXBlZGVmIFR5cGVXaXRoU2l6ZTw4Pjo6SW50IFRpbWVJbk1pbGxpczsgIC8vIFJlcHJlc2Vu
dHMgdGltZSBpbiBtaWxsaXNlY29uZHMuCit1c2luZyBUaW1lSW5NaWxsaXMgPSBpbnQ2NF90OyAg
Ly8gUmVwcmVzZW50cyB0aW1lIGluIG1pbGxpc2Vjb25kcy4KIAogLy8gVXRpbGl0aWVzIGZvciBj
b21tYW5kIGxpbmUgZmxhZ3MgYW5kIGVudmlyb25tZW50IHZhcmlhYmxlcy4KIApAQCAtMjY2MSw3
ICsyMTY4LDcgQEAgdHlwZWRlZiBUeXBlV2l0aFNpemU8OD46OkludCBUaW1lSW5NaWxsaXM7ICAv
LyBSZXByZXNlbnRzIHRpbWUgaW4gbWlsbGlzZWNvbmRzLgogLy8gTWFjcm9zIGZvciBkZWNsYXJp
bmcgZmxhZ3MuCiAjIGRlZmluZSBHVEVTVF9ERUNMQVJFX2Jvb2xfKG5hbWUpIEdURVNUX0FQSV8g
ZXh0ZXJuIGJvb2wgR1RFU1RfRkxBRyhuYW1lKQogIyBkZWZpbmUgR1RFU1RfREVDTEFSRV9pbnQz
Ml8obmFtZSkgXAotICAgIEdURVNUX0FQSV8gZXh0ZXJuIDo6dGVzdGluZzo6aW50ZXJuYWw6Oklu
dDMyIEdURVNUX0ZMQUcobmFtZSkKKyAgICBHVEVTVF9BUElfIGV4dGVybiBzdGQ6OmludDMyX3Qg
R1RFU1RfRkxBRyhuYW1lKQogIyBkZWZpbmUgR1RFU1RfREVDTEFSRV9zdHJpbmdfKG5hbWUpIFwK
ICAgICBHVEVTVF9BUElfIGV4dGVybiA6OnN0ZDo6c3RyaW5nIEdURVNUX0ZMQUcobmFtZSkKIApA
QCAtMjY2OSw3ICsyMTc2LDcgQEAgdHlwZWRlZiBUeXBlV2l0aFNpemU8OD46OkludCBUaW1lSW5N
aWxsaXM7ICAvLyBSZXByZXNlbnRzIHRpbWUgaW4gbWlsbGlzZWNvbmRzLgogIyBkZWZpbmUgR1RF
U1RfREVGSU5FX2Jvb2xfKG5hbWUsIGRlZmF1bHRfdmFsLCBkb2MpIFwKICAgICBHVEVTVF9BUElf
IGJvb2wgR1RFU1RfRkxBRyhuYW1lKSA9IChkZWZhdWx0X3ZhbCkKICMgZGVmaW5lIEdURVNUX0RF
RklORV9pbnQzMl8obmFtZSwgZGVmYXVsdF92YWwsIGRvYykgXAotICAgIEdURVNUX0FQSV8gOjp0
ZXN0aW5nOjppbnRlcm5hbDo6SW50MzIgR1RFU1RfRkxBRyhuYW1lKSA9IChkZWZhdWx0X3ZhbCkK
KyAgICBHVEVTVF9BUElfIHN0ZDo6aW50MzJfdCBHVEVTVF9GTEFHKG5hbWUpID0gKGRlZmF1bHRf
dmFsKQogIyBkZWZpbmUgR1RFU1RfREVGSU5FX3N0cmluZ18obmFtZSwgZGVmYXVsdF92YWwsIGRv
YykgXAogICAgIEdURVNUX0FQSV8gOjpzdGQ6OnN0cmluZyBHVEVTVF9GTEFHKG5hbWUpID0gKGRl
ZmF1bHRfdmFsKQogCkBAIC0yNjg0LDE5ICsyMTkxLDY0IEBAIHR5cGVkZWYgVHlwZVdpdGhTaXpl
PDg+OjpJbnQgVGltZUluTWlsbGlzOyAgLy8gUmVwcmVzZW50cyB0aW1lIGluIG1pbGxpc2Vjb25k
cy4KIC8vIFBhcnNlcyAnc3RyJyBmb3IgYSAzMi1iaXQgc2lnbmVkIGludGVnZXIuICBJZiBzdWNj
ZXNzZnVsLCB3cml0ZXMgdGhlIHJlc3VsdAogLy8gdG8gKnZhbHVlIGFuZCByZXR1cm5zIHRydWU7
IG90aGVyd2lzZSBsZWF2ZXMgKnZhbHVlIHVuY2hhbmdlZCBhbmQgcmV0dXJucwogLy8gZmFsc2Uu
Ci0vLyBGSVhNRTogRmluZCBhIGJldHRlciB3YXkgdG8gcmVmYWN0b3IgZmxhZyBhbmQgZW52aXJv
bm1lbnQgcGFyc2luZwotLy8gb3V0IG9mIGJvdGggZ3Rlc3QtcG9ydC5jYyBhbmQgZ3Rlc3QuY2Mg
dG8gYXZvaWQgZXhwb3J0aW5nIHRoaXMgdXRpbGl0eQotLy8gZnVuY3Rpb24uCi1ib29sIFBhcnNl
SW50MzIoY29uc3QgTWVzc2FnZSYgc3JjX3RleHQsIGNvbnN0IGNoYXIqIHN0ciwgSW50MzIqIHZh
bHVlKTsKK2Jvb2wgUGFyc2VJbnQzMihjb25zdCBNZXNzYWdlJiBzcmNfdGV4dCwgY29uc3QgY2hh
ciogc3RyLCBpbnQzMl90KiB2YWx1ZSk7CiAKLS8vIFBhcnNlcyBhIGJvb2wvSW50MzIvc3RyaW5n
IGZyb20gdGhlIGVudmlyb25tZW50IHZhcmlhYmxlCisvLyBQYXJzZXMgYSBib29sL2ludDMyX3Qv
c3RyaW5nIGZyb20gdGhlIGVudmlyb25tZW50IHZhcmlhYmxlCiAvLyBjb3JyZXNwb25kaW5nIHRv
IHRoZSBnaXZlbiBHb29nbGUgVGVzdCBmbGFnLgogYm9vbCBCb29sRnJvbUdUZXN0RW52KGNvbnN0
IGNoYXIqIGZsYWcsIGJvb2wgZGVmYXVsdF92YWwpOwotR1RFU1RfQVBJXyBJbnQzMiBJbnQzMkZy
b21HVGVzdEVudihjb25zdCBjaGFyKiBmbGFnLCBJbnQzMiBkZWZhdWx0X3ZhbCk7CitHVEVTVF9B
UElfIGludDMyX3QgSW50MzJGcm9tR1Rlc3RFbnYoY29uc3QgY2hhciogZmxhZywgaW50MzJfdCBk
ZWZhdWx0X3ZhbCk7CiBzdGQ6OnN0cmluZyBPdXRwdXRGbGFnQWxzb0NoZWNrRW52VmFyKCk7CiBj
b25zdCBjaGFyKiBTdHJpbmdGcm9tR1Rlc3RFbnYoY29uc3QgY2hhciogZmxhZywgY29uc3QgY2hh
ciogZGVmYXVsdF92YWwpOwogCiB9ICAvLyBuYW1lc3BhY2UgaW50ZXJuYWwKIH0gIC8vIG5hbWVz
cGFjZSB0ZXN0aW5nCiAKKyNpZiAhZGVmaW5lZChHVEVTVF9JTlRFUk5BTF9ERVBSRUNBVEVEKQor
CisvLyBJbnRlcm5hbCBNYWNybyB0byBtYXJrIGFuIEFQSSBkZXByZWNhdGVkLCBmb3IgZ29vZ2xl
dGVzdCB1c2FnZSBvbmx5CisvLyBVc2FnZTogY2xhc3MgR1RFU1RfSU5URVJOQUxfREVQUkVDQVRF
RChtZXNzYWdlKSBNeUNsYXNzIG9yCisvLyBHVEVTVF9JTlRFUk5BTF9ERVBSRUNBVEVEKG1lc3Nh
Z2UpIDxyZXR1cm5fdHlwZT4gbXlGdW5jdGlvbigpOyBFdmVyeSB1c2FnZSBvZgorLy8gYSBkZXBy
ZWNhdGVkIGVudGl0eSB3aWxsIHRyaWdnZXIgYSB3YXJuaW5nIHdoZW4gY29tcGlsZWQgd2l0aAor
Ly8gYC1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNgIG9wdGlvbiAoY2xhbmcsIGdjYywgYW55IF9f
R05VQ19fIGNvbXBpbGVyKS4KKy8vIEZvciBtc3ZjIC9XMyBvcHRpb24gd2lsbCBuZWVkIHRvIGJl
IHVzZWQKKy8vIE5vdGUgdGhhdCBmb3IgJ290aGVyJyBjb21waWxlcnMgdGhpcyBtYWNybyBldmFs
dWF0ZXMgdG8gbm90aGluZyB0byBwcmV2ZW50CisvLyBjb21waWxhdGlvbnMgZXJyb3JzLgorI2lm
IGRlZmluZWQoX01TQ19WRVIpCisjZGVmaW5lIEdURVNUX0lOVEVSTkFMX0RFUFJFQ0FURUQobWVz
c2FnZSkgX19kZWNsc3BlYyhkZXByZWNhdGVkKG1lc3NhZ2UpKQorI2VsaWYgZGVmaW5lZChfX0dO
VUNfXykKKyNkZWZpbmUgR1RFU1RfSU5URVJOQUxfREVQUkVDQVRFRChtZXNzYWdlKSBfX2F0dHJp
YnV0ZV9fKChkZXByZWNhdGVkKG1lc3NhZ2UpKSkKKyNlbHNlCisjZGVmaW5lIEdURVNUX0lOVEVS
TkFMX0RFUFJFQ0FURUQobWVzc2FnZSkKKyNlbmRpZgorCisjZW5kaWYgIC8vICFkZWZpbmVkKEdU
RVNUX0lOVEVSTkFMX0RFUFJFQ0FURUQpCisKKyNpZiBHVEVTVF9IQVNfQUJTTAorLy8gQWx3YXlz
IHVzZSBhYnNsOjpzdHJpbmdfdmlldyBmb3IgTWF0Y2hlcjw+IHNwZWNpYWxpemF0aW9ucyBpZiBn
b29nbGV0ZXN0CisvLyBpcyBidWlsdCB3aXRoIGFic2wgc3VwcG9ydC4KKyMgZGVmaW5lIEdURVNU
X0lOVEVSTkFMX0hBU19TVFJJTkdfVklFVyAxCisjaW5jbHVkZSAiYWJzbC9zdHJpbmdzL3N0cmlu
Z192aWV3LmgiCituYW1lc3BhY2UgdGVzdGluZyB7CituYW1lc3BhY2UgaW50ZXJuYWwgewordXNp
bmcgU3RyaW5nVmlldyA9IDo6YWJzbDo6c3RyaW5nX3ZpZXc7Cit9ICAvLyBuYW1lc3BhY2UgaW50
ZXJuYWwKK30gIC8vIG5hbWVzcGFjZSB0ZXN0aW5nCisjZWxzZQorIyBpZmRlZiBfX2hhc19pbmNs
dWRlCisjICAgaWYgX19oYXNfaW5jbHVkZSg8c3RyaW5nX3ZpZXc+KSAmJiBfX2NwbHVzcGx1cyA+
PSAyMDE3MDNMCisvLyBPdGhlcndpc2UgZm9yIEMrKzE3IGFuZCBoaWdoZXIgdXNlIHN0ZDo6c3Ry
aW5nX3ZpZXcgZm9yIE1hdGNoZXI8PgorLy8gc3BlY2lhbGl6YXRpb25zLgorIyAgIGRlZmluZSBH
VEVTVF9JTlRFUk5BTF9IQVNfU1RSSU5HX1ZJRVcgMQorI2luY2x1ZGUgPHN0cmluZ192aWV3Pgor
bmFtZXNwYWNlIHRlc3RpbmcgeworbmFtZXNwYWNlIGludGVybmFsIHsKK3VzaW5nIFN0cmluZ1Zp
ZXcgPSA6OnN0ZDo6c3RyaW5nX3ZpZXc7Cit9ICAvLyBuYW1lc3BhY2UgaW50ZXJuYWwKK30gIC8v
IG5hbWVzcGFjZSB0ZXN0aW5nCisvLyBUaGUgY2FzZSB3aGVyZSBhYnNsIGlzIGNvbmZpZ3VyZWQg
Tk9UIHRvIGFsaWFzIHN0ZDo6c3RyaW5nX3ZpZXcgaXMgbm90CisvLyBzdXBwb3J0ZWQuCisjICBl
bmRpZiAgLy8gX19oYXNfaW5jbHVkZSg8c3RyaW5nX3ZpZXc+KSAmJiBfX2NwbHVzcGx1cyA+PSAy
MDE3MDNMCisjIGVuZGlmICAvLyBfX2hhc19pbmNsdWRlCisjZW5kaWYgIC8vIEdURVNUX0hBU19B
QlNMCisKICNlbmRpZiAgLy8gR1RFU1RfSU5DTFVERV9HVEVTVF9JTlRFUk5BTF9HVEVTVF9QT1JU
X0hfCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2lu
Y2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3Qtc3RyaW5nLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3Bh
cnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rlc3Qtc3RyaW5nLmgK
aW5kZXggNGM5YjYyNjJjM2MxMDM3MjZhYTNjYWI0YzE5OTk1YmFlZjk1OGI5OC4uMGIyYTkxYTVk
Y2UxZTIxYzQ2MGZiOTUwY2UxN2UxZjYxMTIwNDJlNiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90
aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LXN0
cmluZy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVk
ZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC1zdHJpbmcuaApAQCAtNDcsNiArNDcsNyBAQAogI2VuZGlm
CiAKICNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxjc3RkaW50PgogI2luY2x1ZGUgPHN0
cmluZz4KIAogI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQuaCIKQEAgLTk0LDcg
Kzk1LDggQEAgY2xhc3MgR1RFU1RfQVBJXyBTdHJpbmcgewogICBzdGF0aWMgY29uc3QgY2hhciog
VXRmMTZUb0Fuc2koTFBDV1NUUiB1dGYxNl9zdHIpOwogI2VuZGlmCiAKLSAgLy8gQ29tcGFyZXMg
dHdvIEMgc3RyaW5ncy4gIFJldHVybnMgdHJ1ZSBpZmYgdGhleSBoYXZlIHRoZSBzYW1lIGNvbnRl
bnQuCisgIC8vIENvbXBhcmVzIHR3byBDIHN0cmluZ3MuICBSZXR1cm5zIHRydWUgaWYgYW5kIG9u
bHkgaWYgdGhleSBoYXZlIHRoZSBzYW1lCisgIC8vIGNvbnRlbnQuCiAgIC8vCiAgIC8vIFVubGlr
ZSBzdHJjbXAoKSwgdGhpcyBmdW5jdGlvbiBjYW4gaGFuZGxlIE5VTEwgYXJndW1lbnQocykuICBB
CiAgIC8vIE5VTEwgQyBzdHJpbmcgaXMgY29uc2lkZXJlZCBkaWZmZXJlbnQgdG8gYW55IG5vbi1O
VUxMIEMgc3RyaW5nLApAQCAtMTA3LDE2ICsxMDksMTYgQEAgY2xhc3MgR1RFU1RfQVBJXyBTdHJp
bmcgewogICAvLyByZXR1cm5lZC4KICAgc3RhdGljIHN0ZDo6c3RyaW5nIFNob3dXaWRlQ1N0cmlu
Zyhjb25zdCB3Y2hhcl90KiB3aWRlX2Nfc3RyKTsKIAotICAvLyBDb21wYXJlcyB0d28gd2lkZSBD
IHN0cmluZ3MuICBSZXR1cm5zIHRydWUgaWZmIHRoZXkgaGF2ZSB0aGUgc2FtZQotICAvLyBjb250
ZW50LgorICAvLyBDb21wYXJlcyB0d28gd2lkZSBDIHN0cmluZ3MuICBSZXR1cm5zIHRydWUgaWYg
YW5kIG9ubHkgaWYgdGhleSBoYXZlIHRoZQorICAvLyBzYW1lIGNvbnRlbnQuCiAgIC8vCiAgIC8v
IFVubGlrZSB3Y3NjbXAoKSwgdGhpcyBmdW5jdGlvbiBjYW4gaGFuZGxlIE5VTEwgYXJndW1lbnQo
cykuICBBCiAgIC8vIE5VTEwgQyBzdHJpbmcgaXMgY29uc2lkZXJlZCBkaWZmZXJlbnQgdG8gYW55
IG5vbi1OVUxMIEMgc3RyaW5nLAogICAvLyBpbmNsdWRpbmcgdGhlIGVtcHR5IHN0cmluZy4KICAg
c3RhdGljIGJvb2wgV2lkZUNTdHJpbmdFcXVhbHMoY29uc3Qgd2NoYXJfdCogbGhzLCBjb25zdCB3
Y2hhcl90KiByaHMpOwogCi0gIC8vIENvbXBhcmVzIHR3byBDIHN0cmluZ3MsIGlnbm9yaW5nIGNh
c2UuICBSZXR1cm5zIHRydWUgaWZmIHRoZXkKLSAgLy8gaGF2ZSB0aGUgc2FtZSBjb250ZW50Lgor
ICAvLyBDb21wYXJlcyB0d28gQyBzdHJpbmdzLCBpZ25vcmluZyBjYXNlLiAgUmV0dXJucyB0cnVl
IGlmIGFuZCBvbmx5IGlmCisgIC8vIHRoZXkgaGF2ZSB0aGUgc2FtZSBjb250ZW50LgogICAvLwog
ICAvLyBVbmxpa2Ugc3RyY2FzZWNtcCgpLCB0aGlzIGZ1bmN0aW9uIGNhbiBoYW5kbGUgTlVMTCBh
cmd1bWVudChzKS4KICAgLy8gQSBOVUxMIEMgc3RyaW5nIGlzIGNvbnNpZGVyZWQgZGlmZmVyZW50
IHRvIGFueSBub24tTlVMTCBDIHN0cmluZywKQEAgLTEyNCw4ICsxMjYsOCBAQCBjbGFzcyBHVEVT
VF9BUElfIFN0cmluZyB7CiAgIHN0YXRpYyBib29sIENhc2VJbnNlbnNpdGl2ZUNTdHJpbmdFcXVh
bHMoY29uc3QgY2hhciogbGhzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IGNoYXIqIHJocyk7CiAKLSAgLy8gQ29tcGFyZXMgdHdvIHdpZGUgQyBzdHJp
bmdzLCBpZ25vcmluZyBjYXNlLiAgUmV0dXJucyB0cnVlIGlmZiB0aGV5Ci0gIC8vIGhhdmUgdGhl
IHNhbWUgY29udGVudC4KKyAgLy8gQ29tcGFyZXMgdHdvIHdpZGUgQyBzdHJpbmdzLCBpZ25vcmlu
ZyBjYXNlLiAgUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmCisgIC8vIHRoZXkgaGF2ZSB0aGUg
c2FtZSBjb250ZW50LgogICAvLwogICAvLyBVbmxpa2Ugd2NzY2FzZWNtcCgpLCB0aGlzIGZ1bmN0
aW9uIGNhbiBoYW5kbGUgTlVMTCBhcmd1bWVudChzKS4KICAgLy8gQSBOVUxMIEMgc3RyaW5nIGlz
IGNvbnNpZGVyZWQgZGlmZmVyZW50IHRvIGFueSBub24tTlVMTCB3aWRlIEMgc3RyaW5nLApAQCAt
MTM5LDggKzE0MSw4IEBAIGNsYXNzIEdURVNUX0FQSV8gU3RyaW5nIHsKICAgc3RhdGljIGJvb2wg
Q2FzZUluc2Vuc2l0aXZlV2lkZUNTdHJpbmdFcXVhbHMoY29uc3Qgd2NoYXJfdCogbGhzLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB3Y2hhcl90
KiByaHMpOwogCi0gIC8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIGdpdmVuIHN0cmluZyBlbmRzIHdp
dGggdGhlIGdpdmVuIHN1ZmZpeCwgaWdub3JpbmcKLSAgLy8gY2FzZS4gQW55IHN0cmluZyBpcyBj
b25zaWRlcmVkIHRvIGVuZCB3aXRoIGFuIGVtcHR5IHN1ZmZpeC4KKyAgLy8gUmV0dXJucyB0cnVl
IGlmIGFuZCBvbmx5IGlmIHRoZSBnaXZlbiBzdHJpbmcgZW5kcyB3aXRoIHRoZSBnaXZlbiBzdWZm
aXgsCisgIC8vIGlnbm9yaW5nIGNhc2UuIEFueSBzdHJpbmcgaXMgY29uc2lkZXJlZCB0byBlbmQg
d2l0aCBhbiBlbXB0eSBzdWZmaXguCiAgIHN0YXRpYyBib29sIEVuZHNXaXRoQ2FzZUluc2Vuc2l0
aXZlKAogICAgICAgY29uc3Qgc3RkOjpzdHJpbmcmIHN0ciwgY29uc3Qgc3RkOjpzdHJpbmcmIHN1
ZmZpeCk7CiAKQEAgLTE1MCw2ICsxNTIsOSBAQCBjbGFzcyBHVEVTVF9BUElfIFN0cmluZyB7CiAg
IC8vIEZvcm1hdHMgYW4gaW50IHZhbHVlIGFzICIlWCIuCiAgIHN0YXRpYyBzdGQ6OnN0cmluZyBG
b3JtYXRIZXhJbnQoaW50IHZhbHVlKTsKIAorICAvLyBGb3JtYXRzIGFuIGludCB2YWx1ZSBhcyAi
JVgiLgorICBzdGF0aWMgc3RkOjpzdHJpbmcgRm9ybWF0SGV4VUludDMyKHVpbnQzMl90IHZhbHVl
KTsKKwogICAvLyBGb3JtYXRzIGEgYnl0ZSBhcyAiJTAyWCIuCiAgIHN0YXRpYyBzdGQ6OnN0cmlu
ZyBGb3JtYXRCeXRlKHVuc2lnbmVkIGNoYXIgdmFsdWUpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwvZ3Rl
c3QtdHVwbGUuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVk
ZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC10dXBsZS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA3OGEzYTZhMDFmYWM3NTUxN2VhYjgzMTMxMjQyN2UxNWQ1ZTRlYmI3Li4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFy
dHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC10dXBsZS5oCisr
KyAvZGV2L251bGwKQEAgLTEsMTAyMSArMCwwIEBACi0vLyBUaGlzIGZpbGUgd2FzIEdFTkVSQVRF
RCBieSBjb21tYW5kOgotLy8gICAgIHB1bXAucHkgZ3Rlc3QtdHVwbGUuaC5wdW1wCi0vLyBETyBO
T1QgRURJVCBCWSBIQU5EISEhCi0KLS8vIENvcHlyaWdodCAyMDA5IEdvb2dsZSBJbmMuCi0vLyBB
bGwgUmlnaHRzIFJlc2VydmVkLgotLy8KLS8vIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotLy8gbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQot
Ly8gbWV0OgotLy8KLS8vICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0vLyBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0vLyAgICAgKiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0vLyBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyCi0vLyBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlCi0vLyBkaXN0cmlidXRpb24uCi0vLyAgICAgKiBOZWl0aGVyIHRoZSBu
YW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCi0vLyBjb250cmlidXRvcnMg
bWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQot
Ly8gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lv
bi4KLS8vCi0vLyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9M
REVSUyBBTkQgQ09OVFJJQlVUT1JTCi0vLyAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotLy8gTElNSVRFRCBUTywgVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0vLyBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhF
IENPUFlSSUdIVAotLy8gT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0vLyBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0vLyBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwK
LS8vIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWQotLy8gVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotLy8gKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0vLyBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgotCi0KLS8vIEltcGxlbWVudHMgYSBzdWJzZXQgb2YgVFIxIHR1cGxlIG5lZWRlZCBi
eSBHb29nbGUgVGVzdCBhbmQgR29vZ2xlIE1vY2suCi0KLS8vIEdPT0dMRVRFU1RfQ00wMDAxIERP
IE5PVCBERUxFVEUKLQotI2lmbmRlZiBHVEVTVF9JTkNMVURFX0dURVNUX0lOVEVSTkFMX0dURVNU
X1RVUExFX0hfCi0jZGVmaW5lIEdURVNUX0lOQ0xVREVfR1RFU1RfSU5URVJOQUxfR1RFU1RfVFVQ
TEVfSF8KLQotI2luY2x1ZGUgPHV0aWxpdHk+ICAvLyBGb3IgOjpzdGQ6OnBhaXIuCi0KLS8vIFRo
ZSBjb21waWxlciB1c2VkIGluIFN5bWJpYW4gaGFzIGEgYnVnIHRoYXQgcHJldmVudHMgdXMgZnJv
bSBkZWNsYXJpbmcgdGhlCi0vLyB0dXBsZSB0ZW1wbGF0ZSBhcyBhIGZyaWVuZCAoaXQgY29tcGxh
aW5zIHRoYXQgdHVwbGUgaXMgcmVkZWZpbmVkKS4gIFRoaXMKLS8vIGJ5cGFzc2VzIHRoZSBidWcg
YnkgZGVjbGFyaW5nIHRoZSBtZW1iZXJzIHRoYXQgc2hvdWxkIG90aGVyd2lzZSBiZQotLy8gcHJp
dmF0ZSBhcyBwdWJsaWMuCi0vLyBTdW4gU3R1ZGlvIHZlcnNpb25zIDwgMTIgYWxzbyBoYXZlIHRo
ZSBhYm92ZSBidWcuCi0jaWYgZGVmaW5lZChfX1NZTUJJQU4zMl9fKSB8fCAoZGVmaW5lZChfX1NV
TlBST19DQykgJiYgX19TVU5QUk9fQ0MgPCAweDU5MCkKLSMgZGVmaW5lIEdURVNUX0RFQ0xBUkVf
VFVQTEVfQVNfRlJJRU5EXyBwdWJsaWM6Ci0jZWxzZQotIyBkZWZpbmUgR1RFU1RfREVDTEFSRV9U
VVBMRV9BU19GUklFTkRfIFwKLSAgICB0ZW1wbGF0ZSA8R1RFU1RfMTBfVFlQRU5BTUVTXyhVKT4g
ZnJpZW5kIGNsYXNzIHR1cGxlOyBcCi0gICBwcml2YXRlOgotI2VuZGlmCi0KLS8vIFZpc3VhbCBT
dHVkaW8gMjAxMCwgMjAxMiwgYW5kIDIwMTMgZGVmaW5lIHN5bWJvbHMgaW4gc3RkOjp0cjEgdGhh
dCBjb25mbGljdAotLy8gd2l0aCBvdXIgb3duIGRlZmluaXRpb25zLiBUaGVyZWZvcmUgdXNpbmcg
b3VyIG93biB0dXBsZSBkb2VzIG5vdCB3b3JrIG9uCi0vLyB0aG9zZSBjb21waWxlcnMuCi0jaWYg
ZGVmaW5lZChfTVNDX1ZFUikgJiYgX01TQ19WRVIgPj0gMTYwMCAgLyogMTYwMCBpcyBWaXN1YWwg
U3R1ZGlvIDIwMTAgKi8KLSMgZXJyb3IgImd0ZXN0J3MgdHVwbGUgZG9lc24ndCBjb21waWxlIG9u
IFZpc3VhbCBTdHVkaW8gMjAxMCBvciBsYXRlci4gXAotR1RFU1RfVVNFX09XTl9UUjFfVFVQTEUg
bXVzdCBiZSBzZXQgdG8gMCBvbiB0aG9zZSBjb21waWxlcnMuIgotI2VuZGlmCi0KLS8vIEdURVNU
X25fVFVQTEVfKFQpIGlzIHRoZSB0eXBlIG9mIGFuIG4tdHVwbGUuCi0jZGVmaW5lIEdURVNUXzBf
VFVQTEVfKFQpIHR1cGxlPD4KLSNkZWZpbmUgR1RFU1RfMV9UVVBMRV8oVCkgdHVwbGU8VCMjMCwg
dm9pZCwgdm9pZCwgdm9pZCwgdm9pZCwgdm9pZCwgdm9pZCwgXAotICAgIHZvaWQsIHZvaWQsIHZv
aWQ+Ci0jZGVmaW5lIEdURVNUXzJfVFVQTEVfKFQpIHR1cGxlPFQjIzAsIFQjIzEsIHZvaWQsIHZv
aWQsIHZvaWQsIHZvaWQsIHZvaWQsIFwKLSAgICB2b2lkLCB2b2lkLCB2b2lkPgotI2RlZmluZSBH
VEVTVF8zX1RVUExFXyhUKSB0dXBsZTxUIyMwLCBUIyMxLCBUIyMyLCB2b2lkLCB2b2lkLCB2b2lk
LCB2b2lkLCBcCi0gICAgdm9pZCwgdm9pZCwgdm9pZD4KLSNkZWZpbmUgR1RFU1RfNF9UVVBMRV8o
VCkgdHVwbGU8VCMjMCwgVCMjMSwgVCMjMiwgVCMjMywgdm9pZCwgdm9pZCwgdm9pZCwgXAotICAg
IHZvaWQsIHZvaWQsIHZvaWQ+Ci0jZGVmaW5lIEdURVNUXzVfVFVQTEVfKFQpIHR1cGxlPFQjIzAs
IFQjIzEsIFQjIzIsIFQjIzMsIFQjIzQsIHZvaWQsIHZvaWQsIFwKLSAgICB2b2lkLCB2b2lkLCB2
b2lkPgotI2RlZmluZSBHVEVTVF82X1RVUExFXyhUKSB0dXBsZTxUIyMwLCBUIyMxLCBUIyMyLCBU
IyMzLCBUIyM0LCBUIyM1LCB2b2lkLCBcCi0gICAgdm9pZCwgdm9pZCwgdm9pZD4KLSNkZWZpbmUg
R1RFU1RfN19UVVBMRV8oVCkgdHVwbGU8VCMjMCwgVCMjMSwgVCMjMiwgVCMjMywgVCMjNCwgVCMj
NSwgVCMjNiwgXAotICAgIHZvaWQsIHZvaWQsIHZvaWQ+Ci0jZGVmaW5lIEdURVNUXzhfVFVQTEVf
KFQpIHR1cGxlPFQjIzAsIFQjIzEsIFQjIzIsIFQjIzMsIFQjIzQsIFQjIzUsIFQjIzYsIFwKLSAg
ICBUIyM3LCB2b2lkLCB2b2lkPgotI2RlZmluZSBHVEVTVF85X1RVUExFXyhUKSB0dXBsZTxUIyMw
LCBUIyMxLCBUIyMyLCBUIyMzLCBUIyM0LCBUIyM1LCBUIyM2LCBcCi0gICAgVCMjNywgVCMjOCwg
dm9pZD4KLSNkZWZpbmUgR1RFU1RfMTBfVFVQTEVfKFQpIHR1cGxlPFQjIzAsIFQjIzEsIFQjIzIs
IFQjIzMsIFQjIzQsIFQjIzUsIFQjIzYsIFwKLSAgICBUIyM3LCBUIyM4LCBUIyM5PgotCi0vLyBH
VEVTVF9uX1RZUEVOQU1FU18oVCkgZGVjbGFyZXMgYSBsaXN0IG9mIG4gdHlwZW5hbWVzLgotI2Rl
ZmluZSBHVEVTVF8wX1RZUEVOQU1FU18oVCkKLSNkZWZpbmUgR1RFU1RfMV9UWVBFTkFNRVNfKFQp
IHR5cGVuYW1lIFQjIzAKLSNkZWZpbmUgR1RFU1RfMl9UWVBFTkFNRVNfKFQpIHR5cGVuYW1lIFQj
IzAsIHR5cGVuYW1lIFQjIzEKLSNkZWZpbmUgR1RFU1RfM19UWVBFTkFNRVNfKFQpIHR5cGVuYW1l
IFQjIzAsIHR5cGVuYW1lIFQjIzEsIHR5cGVuYW1lIFQjIzIKLSNkZWZpbmUgR1RFU1RfNF9UWVBF
TkFNRVNfKFQpIHR5cGVuYW1lIFQjIzAsIHR5cGVuYW1lIFQjIzEsIHR5cGVuYW1lIFQjIzIsIFwK
LSAgICB0eXBlbmFtZSBUIyMzCi0jZGVmaW5lIEdURVNUXzVfVFlQRU5BTUVTXyhUKSB0eXBlbmFt
ZSBUIyMwLCB0eXBlbmFtZSBUIyMxLCB0eXBlbmFtZSBUIyMyLCBcCi0gICAgdHlwZW5hbWUgVCMj
MywgdHlwZW5hbWUgVCMjNAotI2RlZmluZSBHVEVTVF82X1RZUEVOQU1FU18oVCkgdHlwZW5hbWUg
VCMjMCwgdHlwZW5hbWUgVCMjMSwgdHlwZW5hbWUgVCMjMiwgXAotICAgIHR5cGVuYW1lIFQjIzMs
IHR5cGVuYW1lIFQjIzQsIHR5cGVuYW1lIFQjIzUKLSNkZWZpbmUgR1RFU1RfN19UWVBFTkFNRVNf
KFQpIHR5cGVuYW1lIFQjIzAsIHR5cGVuYW1lIFQjIzEsIHR5cGVuYW1lIFQjIzIsIFwKLSAgICB0
eXBlbmFtZSBUIyMzLCB0eXBlbmFtZSBUIyM0LCB0eXBlbmFtZSBUIyM1LCB0eXBlbmFtZSBUIyM2
Ci0jZGVmaW5lIEdURVNUXzhfVFlQRU5BTUVTXyhUKSB0eXBlbmFtZSBUIyMwLCB0eXBlbmFtZSBU
IyMxLCB0eXBlbmFtZSBUIyMyLCBcCi0gICAgdHlwZW5hbWUgVCMjMywgdHlwZW5hbWUgVCMjNCwg
dHlwZW5hbWUgVCMjNSwgdHlwZW5hbWUgVCMjNiwgdHlwZW5hbWUgVCMjNwotI2RlZmluZSBHVEVT
VF85X1RZUEVOQU1FU18oVCkgdHlwZW5hbWUgVCMjMCwgdHlwZW5hbWUgVCMjMSwgdHlwZW5hbWUg
VCMjMiwgXAotICAgIHR5cGVuYW1lIFQjIzMsIHR5cGVuYW1lIFQjIzQsIHR5cGVuYW1lIFQjIzUs
IHR5cGVuYW1lIFQjIzYsIFwKLSAgICB0eXBlbmFtZSBUIyM3LCB0eXBlbmFtZSBUIyM4Ci0jZGVm
aW5lIEdURVNUXzEwX1RZUEVOQU1FU18oVCkgdHlwZW5hbWUgVCMjMCwgdHlwZW5hbWUgVCMjMSwg
dHlwZW5hbWUgVCMjMiwgXAotICAgIHR5cGVuYW1lIFQjIzMsIHR5cGVuYW1lIFQjIzQsIHR5cGVu
YW1lIFQjIzUsIHR5cGVuYW1lIFQjIzYsIFwKLSAgICB0eXBlbmFtZSBUIyM3LCB0eXBlbmFtZSBU
IyM4LCB0eXBlbmFtZSBUIyM5Ci0KLS8vIEluIHRoZW9yeSwgZGVmaW5pbmcgc3R1ZmYgaW4gdGhl
IDo6c3RkIG5hbWVzcGFjZSBpcyB1bmRlZmluZWQKLS8vIGJlaGF2aW9yLiAgV2UgY2FuIGRvIHRo
aXMgYXMgd2UgYXJlIHBsYXlpbmcgdGhlIHJvbGUgb2YgYSBzdGFuZGFyZAotLy8gbGlicmFyeSB2
ZW5kb3IuCi1uYW1lc3BhY2Ugc3RkIHsKLW5hbWVzcGFjZSB0cjEgewotCi10ZW1wbGF0ZSA8dHlw
ZW5hbWUgVDAgPSB2b2lkLCB0eXBlbmFtZSBUMSA9IHZvaWQsIHR5cGVuYW1lIFQyID0gdm9pZCwK
LSAgICB0eXBlbmFtZSBUMyA9IHZvaWQsIHR5cGVuYW1lIFQ0ID0gdm9pZCwgdHlwZW5hbWUgVDUg
PSB2b2lkLAotICAgIHR5cGVuYW1lIFQ2ID0gdm9pZCwgdHlwZW5hbWUgVDcgPSB2b2lkLCB0eXBl
bmFtZSBUOCA9IHZvaWQsCi0gICAgdHlwZW5hbWUgVDkgPSB2b2lkPgotY2xhc3MgdHVwbGU7Ci0K
LS8vIEFueXRoaW5nIGluIG5hbWVzcGFjZSBndGVzdF9pbnRlcm5hbCBpcyBHb29nbGUgVGVzdCdz
IElOVEVSTkFMCi0vLyBJTVBMRU1FTlRBVElPTiBERVRBSUwgYW5kIE1VU1QgTk9UIEJFIFVTRUQg
RElSRUNUTFkgaW4gdXNlciBjb2RlLgotbmFtZXNwYWNlIGd0ZXN0X2ludGVybmFsIHsKLQotLy8g
QnlSZWY8VD46OnR5cGUgaXMgVCBpZiBUIGlzIGEgcmVmZXJlbmNlOyBvdGhlcndpc2UgaXQncyBj
b25zdCBUJi4KLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotc3RydWN0IEJ5UmVmIHsgdHlwZWRlZiBj
b25zdCBUJiB0eXBlOyB9OyAgLy8gTk9MSU5UCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLXN0cnVj
dCBCeVJlZjxUJj4geyB0eXBlZGVmIFQmIHR5cGU7IH07ICAvLyBOT0xJTlQKLQotLy8gQSBoYW5k
eSB3cmFwcGVyIGZvciBCeVJlZi4KLSNkZWZpbmUgR1RFU1RfQllfUkVGXyhUKSB0eXBlbmFtZSA6
OnN0ZDo6dHIxOjpndGVzdF9pbnRlcm5hbDo6QnlSZWY8VD46OnR5cGUKLQotLy8gQWRkUmVmPFQ+
Ojp0eXBlIGlzIFQgaWYgVCBpcyBhIHJlZmVyZW5jZTsgb3RoZXJ3aXNlIGl0J3MgVCYuICBUaGlz
Ci0vLyBpcyB0aGUgc2FtZSBhcyB0cjE6OmFkZF9yZWZlcmVuY2U8VD46OnR5cGUuCi10ZW1wbGF0
ZSA8dHlwZW5hbWUgVD4KLXN0cnVjdCBBZGRSZWYgeyB0eXBlZGVmIFQmIHR5cGU7IH07ICAvLyBO
T0xJTlQKLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotc3RydWN0IEFkZFJlZjxUJj4geyB0eXBlZGVm
IFQmIHR5cGU7IH07ICAvLyBOT0xJTlQKLQotLy8gQSBoYW5keSB3cmFwcGVyIGZvciBBZGRSZWYu
Ci0jZGVmaW5lIEdURVNUX0FERF9SRUZfKFQpIHR5cGVuYW1lIDo6c3RkOjp0cjE6Omd0ZXN0X2lu
dGVybmFsOjpBZGRSZWY8VD46OnR5cGUKLQotLy8gQSBoZWxwZXIgZm9yIGltcGxlbWVudGluZyBn
ZXQ8az4oKS4KLXRlbXBsYXRlIDxpbnQgaz4gY2xhc3MgR2V0OwotCi0vLyBBIGhlbHBlciBmb3Ig
aW1wbGVtZW50aW5nIHR1cGxlX2VsZW1lbnQ8aywgVD4uICBrSW5kZXhWYWxpZCBpcyB0cnVlCi0v
LyBpZmYgayA8IHRoZSBudW1iZXIgb2YgZmllbGRzIGluIHR1cGxlIHR5cGUgVC4KLXRlbXBsYXRl
IDxib29sIGtJbmRleFZhbGlkLCBpbnQga0luZGV4LCBjbGFzcyBUdXBsZT4KLXN0cnVjdCBUdXBs
ZUVsZW1lbnQ7Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1
cGxlRWxlbWVudDx0cnVlLCAwLCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDAg
dHlwZTsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1
cGxlRWxlbWVudDx0cnVlLCAxLCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDEg
dHlwZTsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1
cGxlRWxlbWVudDx0cnVlLCAyLCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDIg
dHlwZTsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1
cGxlRWxlbWVudDx0cnVlLCAzLCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDMg
dHlwZTsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1
cGxlRWxlbWVudDx0cnVlLCA0LCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDQg
dHlwZTsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1
cGxlRWxlbWVudDx0cnVlLCA1LCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDUg
dHlwZTsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1
cGxlRWxlbWVudDx0cnVlLCA2LCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDYg
dHlwZTsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1
cGxlRWxlbWVudDx0cnVlLCA3LCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDcg
dHlwZTsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1
cGxlRWxlbWVudDx0cnVlLCA4LCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDgg
dHlwZTsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IFR1
cGxlRWxlbWVudDx0cnVlLCA5LCBHVEVTVF8xMF9UVVBMRV8oVCkgPiB7Ci0gIHR5cGVkZWYgVDkg
dHlwZTsKLX07Ci0KLX0gIC8vIG5hbWVzcGFjZSBndGVzdF9pbnRlcm5hbAotCi10ZW1wbGF0ZSA8
PgotY2xhc3MgdHVwbGU8PiB7Ci0gcHVibGljOgotICB0dXBsZSgpIHt9Ci0gIHR1cGxlKGNvbnN0
IHR1cGxlJiAvKiB0ICovKSAge30KLSAgdHVwbGUmIG9wZXJhdG9yPShjb25zdCB0dXBsZSYgLyog
dCAqLykgeyByZXR1cm4gKnRoaXM7IH0KLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xX1RZUEVOQU1F
U18oVCk+Ci1jbGFzcyBHVEVTVF8xX1RVUExFXyhUKSB7Ci0gcHVibGljOgotICB0ZW1wbGF0ZSA8
aW50IGs+IGZyaWVuZCBjbGFzcyBndGVzdF9pbnRlcm5hbDo6R2V0OwotCi0gIHR1cGxlKCkgOiBm
MF8oKSB7fQotCi0gIGV4cGxpY2l0IHR1cGxlKEdURVNUX0JZX1JFRl8oVDApIGYwKSA6IGYwXyhm
MCkge30KLQotICB0dXBsZShjb25zdCB0dXBsZSYgdCkgOiBmMF8odC5mMF8pIHt9Ci0KLSAgdGVt
cGxhdGUgPEdURVNUXzFfVFlQRU5BTUVTXyhVKT4KLSAgdHVwbGUoY29uc3QgR1RFU1RfMV9UVVBM
RV8oVSkmIHQpIDogZjBfKHQuZjBfKSB7fQotCi0gIHR1cGxlJiBvcGVyYXRvcj0oY29uc3QgdHVw
bGUmIHQpIHsgcmV0dXJuIENvcHlGcm9tKHQpOyB9Ci0KLSAgdGVtcGxhdGUgPEdURVNUXzFfVFlQ
RU5BTUVTXyhVKT4KLSAgdHVwbGUmIG9wZXJhdG9yPShjb25zdCBHVEVTVF8xX1RVUExFXyhVKSYg
dCkgewotICAgIHJldHVybiBDb3B5RnJvbSh0KTsKLSAgfQotCi0gIEdURVNUX0RFQ0xBUkVfVFVQ
TEVfQVNfRlJJRU5EXwotCi0gIHRlbXBsYXRlIDxHVEVTVF8xX1RZUEVOQU1FU18oVSk+Ci0gIHR1
cGxlJiBDb3B5RnJvbShjb25zdCBHVEVTVF8xX1RVUExFXyhVKSYgdCkgewotICAgIGYwXyA9IHQu
ZjBfOwotICAgIHJldHVybiAqdGhpczsKLSAgfQotCi0gIFQwIGYwXzsKLX07Ci0KLXRlbXBsYXRl
IDxHVEVTVF8yX1RZUEVOQU1FU18oVCk+Ci1jbGFzcyBHVEVTVF8yX1RVUExFXyhUKSB7Ci0gcHVi
bGljOgotICB0ZW1wbGF0ZSA8aW50IGs+IGZyaWVuZCBjbGFzcyBndGVzdF9pbnRlcm5hbDo6R2V0
OwotCi0gIHR1cGxlKCkgOiBmMF8oKSwgZjFfKCkge30KLQotICBleHBsaWNpdCB0dXBsZShHVEVT
VF9CWV9SRUZfKFQwKSBmMCwgR1RFU1RfQllfUkVGXyhUMSkgZjEpIDogZjBfKGYwKSwKLSAgICAg
IGYxXyhmMSkge30KLQotICB0dXBsZShjb25zdCB0dXBsZSYgdCkgOiBmMF8odC5mMF8pLCBmMV8o
dC5mMV8pIHt9Ci0KLSAgdGVtcGxhdGUgPEdURVNUXzJfVFlQRU5BTUVTXyhVKT4KLSAgdHVwbGUo
Y29uc3QgR1RFU1RfMl9UVVBMRV8oVSkmIHQpIDogZjBfKHQuZjBfKSwgZjFfKHQuZjFfKSB7fQot
ICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVTAsIHR5cGVuYW1lIFUxPgotICB0dXBsZShjb25zdCA6OnN0
ZDo6cGFpcjxVMCwgVTE+JiBwKSA6IGYwXyhwLmZpcnN0KSwgZjFfKHAuc2Vjb25kKSB7fQotCi0g
IHR1cGxlJiBvcGVyYXRvcj0oY29uc3QgdHVwbGUmIHQpIHsgcmV0dXJuIENvcHlGcm9tKHQpOyB9
Ci0KLSAgdGVtcGxhdGUgPEdURVNUXzJfVFlQRU5BTUVTXyhVKT4KLSAgdHVwbGUmIG9wZXJhdG9y
PShjb25zdCBHVEVTVF8yX1RVUExFXyhVKSYgdCkgewotICAgIHJldHVybiBDb3B5RnJvbSh0KTsK
LSAgfQotICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVTAsIHR5cGVuYW1lIFUxPgotICB0dXBsZSYgb3Bl
cmF0b3I9KGNvbnN0IDo6c3RkOjpwYWlyPFUwLCBVMT4mIHApIHsKLSAgICBmMF8gPSBwLmZpcnN0
OwotICAgIGYxXyA9IHAuc2Vjb25kOwotICAgIHJldHVybiAqdGhpczsKLSAgfQotCi0gIEdURVNU
X0RFQ0xBUkVfVFVQTEVfQVNfRlJJRU5EXwotCi0gIHRlbXBsYXRlIDxHVEVTVF8yX1RZUEVOQU1F
U18oVSk+Ci0gIHR1cGxlJiBDb3B5RnJvbShjb25zdCBHVEVTVF8yX1RVUExFXyhVKSYgdCkgewot
ICAgIGYwXyA9IHQuZjBfOwotICAgIGYxXyA9IHQuZjFfOwotICAgIHJldHVybiAqdGhpczsKLSAg
fQotCi0gIFQwIGYwXzsKLSAgVDEgZjFfOwotfTsKLQotdGVtcGxhdGUgPEdURVNUXzNfVFlQRU5B
TUVTXyhUKT4KLWNsYXNzIEdURVNUXzNfVFVQTEVfKFQpIHsKLSBwdWJsaWM6Ci0gIHRlbXBsYXRl
IDxpbnQgaz4gZnJpZW5kIGNsYXNzIGd0ZXN0X2ludGVybmFsOjpHZXQ7Ci0KLSAgdHVwbGUoKSA6
IGYwXygpLCBmMV8oKSwgZjJfKCkge30KLQotICBleHBsaWNpdCB0dXBsZShHVEVTVF9CWV9SRUZf
KFQwKSBmMCwgR1RFU1RfQllfUkVGXyhUMSkgZjEsCi0gICAgICBHVEVTVF9CWV9SRUZfKFQyKSBm
MikgOiBmMF8oZjApLCBmMV8oZjEpLCBmMl8oZjIpIHt9Ci0KLSAgdHVwbGUoY29uc3QgdHVwbGUm
IHQpIDogZjBfKHQuZjBfKSwgZjFfKHQuZjFfKSwgZjJfKHQuZjJfKSB7fQotCi0gIHRlbXBsYXRl
IDxHVEVTVF8zX1RZUEVOQU1FU18oVSk+Ci0gIHR1cGxlKGNvbnN0IEdURVNUXzNfVFVQTEVfKFUp
JiB0KSA6IGYwXyh0LmYwXyksIGYxXyh0LmYxXyksIGYyXyh0LmYyXykge30KLQotICB0dXBsZSYg
b3BlcmF0b3I9KGNvbnN0IHR1cGxlJiB0KSB7IHJldHVybiBDb3B5RnJvbSh0KTsgfQotCi0gIHRl
bXBsYXRlIDxHVEVTVF8zX1RZUEVOQU1FU18oVSk+Ci0gIHR1cGxlJiBvcGVyYXRvcj0oY29uc3Qg
R1RFU1RfM19UVVBMRV8oVSkmIHQpIHsKLSAgICByZXR1cm4gQ29weUZyb20odCk7Ci0gIH0KLQot
ICBHVEVTVF9ERUNMQVJFX1RVUExFX0FTX0ZSSUVORF8KLQotICB0ZW1wbGF0ZSA8R1RFU1RfM19U
WVBFTkFNRVNfKFUpPgotICB0dXBsZSYgQ29weUZyb20oY29uc3QgR1RFU1RfM19UVVBMRV8oVSkm
IHQpIHsKLSAgICBmMF8gPSB0LmYwXzsKLSAgICBmMV8gPSB0LmYxXzsKLSAgICBmMl8gPSB0LmYy
XzsKLSAgICByZXR1cm4gKnRoaXM7Ci0gIH0KLQotICBUMCBmMF87Ci0gIFQxIGYxXzsKLSAgVDIg
ZjJfOwotfTsKLQotdGVtcGxhdGUgPEdURVNUXzRfVFlQRU5BTUVTXyhUKT4KLWNsYXNzIEdURVNU
XzRfVFVQTEVfKFQpIHsKLSBwdWJsaWM6Ci0gIHRlbXBsYXRlIDxpbnQgaz4gZnJpZW5kIGNsYXNz
IGd0ZXN0X2ludGVybmFsOjpHZXQ7Ci0KLSAgdHVwbGUoKSA6IGYwXygpLCBmMV8oKSwgZjJfKCks
IGYzXygpIHt9Ci0KLSAgZXhwbGljaXQgdHVwbGUoR1RFU1RfQllfUkVGXyhUMCkgZjAsIEdURVNU
X0JZX1JFRl8oVDEpIGYxLAotICAgICAgR1RFU1RfQllfUkVGXyhUMikgZjIsIEdURVNUX0JZX1JF
Rl8oVDMpIGYzKSA6IGYwXyhmMCksIGYxXyhmMSksIGYyXyhmMiksCi0gICAgICBmM18oZjMpIHt9
Ci0KLSAgdHVwbGUoY29uc3QgdHVwbGUmIHQpIDogZjBfKHQuZjBfKSwgZjFfKHQuZjFfKSwgZjJf
KHQuZjJfKSwgZjNfKHQuZjNfKSB7fQotCi0gIHRlbXBsYXRlIDxHVEVTVF80X1RZUEVOQU1FU18o
VSk+Ci0gIHR1cGxlKGNvbnN0IEdURVNUXzRfVFVQTEVfKFUpJiB0KSA6IGYwXyh0LmYwXyksIGYx
Xyh0LmYxXyksIGYyXyh0LmYyXyksCi0gICAgICBmM18odC5mM18pIHt9Ci0KLSAgdHVwbGUmIG9w
ZXJhdG9yPShjb25zdCB0dXBsZSYgdCkgeyByZXR1cm4gQ29weUZyb20odCk7IH0KLQotICB0ZW1w
bGF0ZSA8R1RFU1RfNF9UWVBFTkFNRVNfKFUpPgotICB0dXBsZSYgb3BlcmF0b3I9KGNvbnN0IEdU
RVNUXzRfVFVQTEVfKFUpJiB0KSB7Ci0gICAgcmV0dXJuIENvcHlGcm9tKHQpOwotICB9Ci0KLSAg
R1RFU1RfREVDTEFSRV9UVVBMRV9BU19GUklFTkRfCi0KLSAgdGVtcGxhdGUgPEdURVNUXzRfVFlQ
RU5BTUVTXyhVKT4KLSAgdHVwbGUmIENvcHlGcm9tKGNvbnN0IEdURVNUXzRfVFVQTEVfKFUpJiB0
KSB7Ci0gICAgZjBfID0gdC5mMF87Ci0gICAgZjFfID0gdC5mMV87Ci0gICAgZjJfID0gdC5mMl87
Ci0gICAgZjNfID0gdC5mM187Ci0gICAgcmV0dXJuICp0aGlzOwotICB9Ci0KLSAgVDAgZjBfOwot
ICBUMSBmMV87Ci0gIFQyIGYyXzsKLSAgVDMgZjNfOwotfTsKLQotdGVtcGxhdGUgPEdURVNUXzVf
VFlQRU5BTUVTXyhUKT4KLWNsYXNzIEdURVNUXzVfVFVQTEVfKFQpIHsKLSBwdWJsaWM6Ci0gIHRl
bXBsYXRlIDxpbnQgaz4gZnJpZW5kIGNsYXNzIGd0ZXN0X2ludGVybmFsOjpHZXQ7Ci0KLSAgdHVw
bGUoKSA6IGYwXygpLCBmMV8oKSwgZjJfKCksIGYzXygpLCBmNF8oKSB7fQotCi0gIGV4cGxpY2l0
IHR1cGxlKEdURVNUX0JZX1JFRl8oVDApIGYwLCBHVEVTVF9CWV9SRUZfKFQxKSBmMSwKLSAgICAg
IEdURVNUX0JZX1JFRl8oVDIpIGYyLCBHVEVTVF9CWV9SRUZfKFQzKSBmMywKLSAgICAgIEdURVNU
X0JZX1JFRl8oVDQpIGY0KSA6IGYwXyhmMCksIGYxXyhmMSksIGYyXyhmMiksIGYzXyhmMyksIGY0
XyhmNCkge30KLQotICB0dXBsZShjb25zdCB0dXBsZSYgdCkgOiBmMF8odC5mMF8pLCBmMV8odC5m
MV8pLCBmMl8odC5mMl8pLCBmM18odC5mM18pLAotICAgICAgZjRfKHQuZjRfKSB7fQotCi0gIHRl
bXBsYXRlIDxHVEVTVF81X1RZUEVOQU1FU18oVSk+Ci0gIHR1cGxlKGNvbnN0IEdURVNUXzVfVFVQ
TEVfKFUpJiB0KSA6IGYwXyh0LmYwXyksIGYxXyh0LmYxXyksIGYyXyh0LmYyXyksCi0gICAgICBm
M18odC5mM18pLCBmNF8odC5mNF8pIHt9Ci0KLSAgdHVwbGUmIG9wZXJhdG9yPShjb25zdCB0dXBs
ZSYgdCkgeyByZXR1cm4gQ29weUZyb20odCk7IH0KLQotICB0ZW1wbGF0ZSA8R1RFU1RfNV9UWVBF
TkFNRVNfKFUpPgotICB0dXBsZSYgb3BlcmF0b3I9KGNvbnN0IEdURVNUXzVfVFVQTEVfKFUpJiB0
KSB7Ci0gICAgcmV0dXJuIENvcHlGcm9tKHQpOwotICB9Ci0KLSAgR1RFU1RfREVDTEFSRV9UVVBM
RV9BU19GUklFTkRfCi0KLSAgdGVtcGxhdGUgPEdURVNUXzVfVFlQRU5BTUVTXyhVKT4KLSAgdHVw
bGUmIENvcHlGcm9tKGNvbnN0IEdURVNUXzVfVFVQTEVfKFUpJiB0KSB7Ci0gICAgZjBfID0gdC5m
MF87Ci0gICAgZjFfID0gdC5mMV87Ci0gICAgZjJfID0gdC5mMl87Ci0gICAgZjNfID0gdC5mM187
Ci0gICAgZjRfID0gdC5mNF87Ci0gICAgcmV0dXJuICp0aGlzOwotICB9Ci0KLSAgVDAgZjBfOwot
ICBUMSBmMV87Ci0gIFQyIGYyXzsKLSAgVDMgZjNfOwotICBUNCBmNF87Ci19OwotCi10ZW1wbGF0
ZSA8R1RFU1RfNl9UWVBFTkFNRVNfKFQpPgotY2xhc3MgR1RFU1RfNl9UVVBMRV8oVCkgewotIHB1
YmxpYzoKLSAgdGVtcGxhdGUgPGludCBrPiBmcmllbmQgY2xhc3MgZ3Rlc3RfaW50ZXJuYWw6Okdl
dDsKLQotICB0dXBsZSgpIDogZjBfKCksIGYxXygpLCBmMl8oKSwgZjNfKCksIGY0XygpLCBmNV8o
KSB7fQotCi0gIGV4cGxpY2l0IHR1cGxlKEdURVNUX0JZX1JFRl8oVDApIGYwLCBHVEVTVF9CWV9S
RUZfKFQxKSBmMSwKLSAgICAgIEdURVNUX0JZX1JFRl8oVDIpIGYyLCBHVEVTVF9CWV9SRUZfKFQz
KSBmMywgR1RFU1RfQllfUkVGXyhUNCkgZjQsCi0gICAgICBHVEVTVF9CWV9SRUZfKFQ1KSBmNSkg
OiBmMF8oZjApLCBmMV8oZjEpLCBmMl8oZjIpLCBmM18oZjMpLCBmNF8oZjQpLAotICAgICAgZjVf
KGY1KSB7fQotCi0gIHR1cGxlKGNvbnN0IHR1cGxlJiB0KSA6IGYwXyh0LmYwXyksIGYxXyh0LmYx
XyksIGYyXyh0LmYyXyksIGYzXyh0LmYzXyksCi0gICAgICBmNF8odC5mNF8pLCBmNV8odC5mNV8p
IHt9Ci0KLSAgdGVtcGxhdGUgPEdURVNUXzZfVFlQRU5BTUVTXyhVKT4KLSAgdHVwbGUoY29uc3Qg
R1RFU1RfNl9UVVBMRV8oVSkmIHQpIDogZjBfKHQuZjBfKSwgZjFfKHQuZjFfKSwgZjJfKHQuZjJf
KSwKLSAgICAgIGYzXyh0LmYzXyksIGY0Xyh0LmY0XyksIGY1Xyh0LmY1Xykge30KLQotICB0dXBs
ZSYgb3BlcmF0b3I9KGNvbnN0IHR1cGxlJiB0KSB7IHJldHVybiBDb3B5RnJvbSh0KTsgfQotCi0g
IHRlbXBsYXRlIDxHVEVTVF82X1RZUEVOQU1FU18oVSk+Ci0gIHR1cGxlJiBvcGVyYXRvcj0oY29u
c3QgR1RFU1RfNl9UVVBMRV8oVSkmIHQpIHsKLSAgICByZXR1cm4gQ29weUZyb20odCk7Ci0gIH0K
LQotICBHVEVTVF9ERUNMQVJFX1RVUExFX0FTX0ZSSUVORF8KLQotICB0ZW1wbGF0ZSA8R1RFU1Rf
Nl9UWVBFTkFNRVNfKFUpPgotICB0dXBsZSYgQ29weUZyb20oY29uc3QgR1RFU1RfNl9UVVBMRV8o
VSkmIHQpIHsKLSAgICBmMF8gPSB0LmYwXzsKLSAgICBmMV8gPSB0LmYxXzsKLSAgICBmMl8gPSB0
LmYyXzsKLSAgICBmM18gPSB0LmYzXzsKLSAgICBmNF8gPSB0LmY0XzsKLSAgICBmNV8gPSB0LmY1
XzsKLSAgICByZXR1cm4gKnRoaXM7Ci0gIH0KLQotICBUMCBmMF87Ci0gIFQxIGYxXzsKLSAgVDIg
ZjJfOwotICBUMyBmM187Ci0gIFQ0IGY0XzsKLSAgVDUgZjVfOwotfTsKLQotdGVtcGxhdGUgPEdU
RVNUXzdfVFlQRU5BTUVTXyhUKT4KLWNsYXNzIEdURVNUXzdfVFVQTEVfKFQpIHsKLSBwdWJsaWM6
Ci0gIHRlbXBsYXRlIDxpbnQgaz4gZnJpZW5kIGNsYXNzIGd0ZXN0X2ludGVybmFsOjpHZXQ7Ci0K
LSAgdHVwbGUoKSA6IGYwXygpLCBmMV8oKSwgZjJfKCksIGYzXygpLCBmNF8oKSwgZjVfKCksIGY2
XygpIHt9Ci0KLSAgZXhwbGljaXQgdHVwbGUoR1RFU1RfQllfUkVGXyhUMCkgZjAsIEdURVNUX0JZ
X1JFRl8oVDEpIGYxLAotICAgICAgR1RFU1RfQllfUkVGXyhUMikgZjIsIEdURVNUX0JZX1JFRl8o
VDMpIGYzLCBHVEVTVF9CWV9SRUZfKFQ0KSBmNCwKLSAgICAgIEdURVNUX0JZX1JFRl8oVDUpIGY1
LCBHVEVTVF9CWV9SRUZfKFQ2KSBmNikgOiBmMF8oZjApLCBmMV8oZjEpLCBmMl8oZjIpLAotICAg
ICAgZjNfKGYzKSwgZjRfKGY0KSwgZjVfKGY1KSwgZjZfKGY2KSB7fQotCi0gIHR1cGxlKGNvbnN0
IHR1cGxlJiB0KSA6IGYwXyh0LmYwXyksIGYxXyh0LmYxXyksIGYyXyh0LmYyXyksIGYzXyh0LmYz
XyksCi0gICAgICBmNF8odC5mNF8pLCBmNV8odC5mNV8pLCBmNl8odC5mNl8pIHt9Ci0KLSAgdGVt
cGxhdGUgPEdURVNUXzdfVFlQRU5BTUVTXyhVKT4KLSAgdHVwbGUoY29uc3QgR1RFU1RfN19UVVBM
RV8oVSkmIHQpIDogZjBfKHQuZjBfKSwgZjFfKHQuZjFfKSwgZjJfKHQuZjJfKSwKLSAgICAgIGYz
Xyh0LmYzXyksIGY0Xyh0LmY0XyksIGY1Xyh0LmY1XyksIGY2Xyh0LmY2Xykge30KLQotICB0dXBs
ZSYgb3BlcmF0b3I9KGNvbnN0IHR1cGxlJiB0KSB7IHJldHVybiBDb3B5RnJvbSh0KTsgfQotCi0g
IHRlbXBsYXRlIDxHVEVTVF83X1RZUEVOQU1FU18oVSk+Ci0gIHR1cGxlJiBvcGVyYXRvcj0oY29u
c3QgR1RFU1RfN19UVVBMRV8oVSkmIHQpIHsKLSAgICByZXR1cm4gQ29weUZyb20odCk7Ci0gIH0K
LQotICBHVEVTVF9ERUNMQVJFX1RVUExFX0FTX0ZSSUVORF8KLQotICB0ZW1wbGF0ZSA8R1RFU1Rf
N19UWVBFTkFNRVNfKFUpPgotICB0dXBsZSYgQ29weUZyb20oY29uc3QgR1RFU1RfN19UVVBMRV8o
VSkmIHQpIHsKLSAgICBmMF8gPSB0LmYwXzsKLSAgICBmMV8gPSB0LmYxXzsKLSAgICBmMl8gPSB0
LmYyXzsKLSAgICBmM18gPSB0LmYzXzsKLSAgICBmNF8gPSB0LmY0XzsKLSAgICBmNV8gPSB0LmY1
XzsKLSAgICBmNl8gPSB0LmY2XzsKLSAgICByZXR1cm4gKnRoaXM7Ci0gIH0KLQotICBUMCBmMF87
Ci0gIFQxIGYxXzsKLSAgVDIgZjJfOwotICBUMyBmM187Ci0gIFQ0IGY0XzsKLSAgVDUgZjVfOwot
ICBUNiBmNl87Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfOF9UWVBFTkFNRVNfKFQpPgotY2xhc3Mg
R1RFU1RfOF9UVVBMRV8oVCkgewotIHB1YmxpYzoKLSAgdGVtcGxhdGUgPGludCBrPiBmcmllbmQg
Y2xhc3MgZ3Rlc3RfaW50ZXJuYWw6OkdldDsKLQotICB0dXBsZSgpIDogZjBfKCksIGYxXygpLCBm
Ml8oKSwgZjNfKCksIGY0XygpLCBmNV8oKSwgZjZfKCksIGY3XygpIHt9Ci0KLSAgZXhwbGljaXQg
dHVwbGUoR1RFU1RfQllfUkVGXyhUMCkgZjAsIEdURVNUX0JZX1JFRl8oVDEpIGYxLAotICAgICAg
R1RFU1RfQllfUkVGXyhUMikgZjIsIEdURVNUX0JZX1JFRl8oVDMpIGYzLCBHVEVTVF9CWV9SRUZf
KFQ0KSBmNCwKLSAgICAgIEdURVNUX0JZX1JFRl8oVDUpIGY1LCBHVEVTVF9CWV9SRUZfKFQ2KSBm
NiwKLSAgICAgIEdURVNUX0JZX1JFRl8oVDcpIGY3KSA6IGYwXyhmMCksIGYxXyhmMSksIGYyXyhm
MiksIGYzXyhmMyksIGY0XyhmNCksCi0gICAgICBmNV8oZjUpLCBmNl8oZjYpLCBmN18oZjcpIHt9
Ci0KLSAgdHVwbGUoY29uc3QgdHVwbGUmIHQpIDogZjBfKHQuZjBfKSwgZjFfKHQuZjFfKSwgZjJf
KHQuZjJfKSwgZjNfKHQuZjNfKSwKLSAgICAgIGY0Xyh0LmY0XyksIGY1Xyh0LmY1XyksIGY2Xyh0
LmY2XyksIGY3Xyh0LmY3Xykge30KLQotICB0ZW1wbGF0ZSA8R1RFU1RfOF9UWVBFTkFNRVNfKFUp
PgotICB0dXBsZShjb25zdCBHVEVTVF84X1RVUExFXyhVKSYgdCkgOiBmMF8odC5mMF8pLCBmMV8o
dC5mMV8pLCBmMl8odC5mMl8pLAotICAgICAgZjNfKHQuZjNfKSwgZjRfKHQuZjRfKSwgZjVfKHQu
ZjVfKSwgZjZfKHQuZjZfKSwgZjdfKHQuZjdfKSB7fQotCi0gIHR1cGxlJiBvcGVyYXRvcj0oY29u
c3QgdHVwbGUmIHQpIHsgcmV0dXJuIENvcHlGcm9tKHQpOyB9Ci0KLSAgdGVtcGxhdGUgPEdURVNU
XzhfVFlQRU5BTUVTXyhVKT4KLSAgdHVwbGUmIG9wZXJhdG9yPShjb25zdCBHVEVTVF84X1RVUExF
XyhVKSYgdCkgewotICAgIHJldHVybiBDb3B5RnJvbSh0KTsKLSAgfQotCi0gIEdURVNUX0RFQ0xB
UkVfVFVQTEVfQVNfRlJJRU5EXwotCi0gIHRlbXBsYXRlIDxHVEVTVF84X1RZUEVOQU1FU18oVSk+
Ci0gIHR1cGxlJiBDb3B5RnJvbShjb25zdCBHVEVTVF84X1RVUExFXyhVKSYgdCkgewotICAgIGYw
XyA9IHQuZjBfOwotICAgIGYxXyA9IHQuZjFfOwotICAgIGYyXyA9IHQuZjJfOwotICAgIGYzXyA9
IHQuZjNfOwotICAgIGY0XyA9IHQuZjRfOwotICAgIGY1XyA9IHQuZjVfOwotICAgIGY2XyA9IHQu
ZjZfOwotICAgIGY3XyA9IHQuZjdfOwotICAgIHJldHVybiAqdGhpczsKLSAgfQotCi0gIFQwIGYw
XzsKLSAgVDEgZjFfOwotICBUMiBmMl87Ci0gIFQzIGYzXzsKLSAgVDQgZjRfOwotICBUNSBmNV87
Ci0gIFQ2IGY2XzsKLSAgVDcgZjdfOwotfTsKLQotdGVtcGxhdGUgPEdURVNUXzlfVFlQRU5BTUVT
XyhUKT4KLWNsYXNzIEdURVNUXzlfVFVQTEVfKFQpIHsKLSBwdWJsaWM6Ci0gIHRlbXBsYXRlIDxp
bnQgaz4gZnJpZW5kIGNsYXNzIGd0ZXN0X2ludGVybmFsOjpHZXQ7Ci0KLSAgdHVwbGUoKSA6IGYw
XygpLCBmMV8oKSwgZjJfKCksIGYzXygpLCBmNF8oKSwgZjVfKCksIGY2XygpLCBmN18oKSwgZjhf
KCkge30KLQotICBleHBsaWNpdCB0dXBsZShHVEVTVF9CWV9SRUZfKFQwKSBmMCwgR1RFU1RfQllf
UkVGXyhUMSkgZjEsCi0gICAgICBHVEVTVF9CWV9SRUZfKFQyKSBmMiwgR1RFU1RfQllfUkVGXyhU
MykgZjMsIEdURVNUX0JZX1JFRl8oVDQpIGY0LAotICAgICAgR1RFU1RfQllfUkVGXyhUNSkgZjUs
IEdURVNUX0JZX1JFRl8oVDYpIGY2LCBHVEVTVF9CWV9SRUZfKFQ3KSBmNywKLSAgICAgIEdURVNU
X0JZX1JFRl8oVDgpIGY4KSA6IGYwXyhmMCksIGYxXyhmMSksIGYyXyhmMiksIGYzXyhmMyksIGY0
XyhmNCksCi0gICAgICBmNV8oZjUpLCBmNl8oZjYpLCBmN18oZjcpLCBmOF8oZjgpIHt9Ci0KLSAg
dHVwbGUoY29uc3QgdHVwbGUmIHQpIDogZjBfKHQuZjBfKSwgZjFfKHQuZjFfKSwgZjJfKHQuZjJf
KSwgZjNfKHQuZjNfKSwKLSAgICAgIGY0Xyh0LmY0XyksIGY1Xyh0LmY1XyksIGY2Xyh0LmY2Xyks
IGY3Xyh0LmY3XyksIGY4Xyh0LmY4Xykge30KLQotICB0ZW1wbGF0ZSA8R1RFU1RfOV9UWVBFTkFN
RVNfKFUpPgotICB0dXBsZShjb25zdCBHVEVTVF85X1RVUExFXyhVKSYgdCkgOiBmMF8odC5mMF8p
LCBmMV8odC5mMV8pLCBmMl8odC5mMl8pLAotICAgICAgZjNfKHQuZjNfKSwgZjRfKHQuZjRfKSwg
ZjVfKHQuZjVfKSwgZjZfKHQuZjZfKSwgZjdfKHQuZjdfKSwgZjhfKHQuZjhfKSB7fQotCi0gIHR1
cGxlJiBvcGVyYXRvcj0oY29uc3QgdHVwbGUmIHQpIHsgcmV0dXJuIENvcHlGcm9tKHQpOyB9Ci0K
LSAgdGVtcGxhdGUgPEdURVNUXzlfVFlQRU5BTUVTXyhVKT4KLSAgdHVwbGUmIG9wZXJhdG9yPShj
b25zdCBHVEVTVF85X1RVUExFXyhVKSYgdCkgewotICAgIHJldHVybiBDb3B5RnJvbSh0KTsKLSAg
fQotCi0gIEdURVNUX0RFQ0xBUkVfVFVQTEVfQVNfRlJJRU5EXwotCi0gIHRlbXBsYXRlIDxHVEVT
VF85X1RZUEVOQU1FU18oVSk+Ci0gIHR1cGxlJiBDb3B5RnJvbShjb25zdCBHVEVTVF85X1RVUExF
XyhVKSYgdCkgewotICAgIGYwXyA9IHQuZjBfOwotICAgIGYxXyA9IHQuZjFfOwotICAgIGYyXyA9
IHQuZjJfOwotICAgIGYzXyA9IHQuZjNfOwotICAgIGY0XyA9IHQuZjRfOwotICAgIGY1XyA9IHQu
ZjVfOwotICAgIGY2XyA9IHQuZjZfOwotICAgIGY3XyA9IHQuZjdfOwotICAgIGY4XyA9IHQuZjhf
OwotICAgIHJldHVybiAqdGhpczsKLSAgfQotCi0gIFQwIGYwXzsKLSAgVDEgZjFfOwotICBUMiBm
Ml87Ci0gIFQzIGYzXzsKLSAgVDQgZjRfOwotICBUNSBmNV87Ci0gIFQ2IGY2XzsKLSAgVDcgZjdf
OwotICBUOCBmOF87Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfMTBfVFlQRU5BTUVTXyhUKT4KLWNs
YXNzIHR1cGxlIHsKLSBwdWJsaWM6Ci0gIHRlbXBsYXRlIDxpbnQgaz4gZnJpZW5kIGNsYXNzIGd0
ZXN0X2ludGVybmFsOjpHZXQ7Ci0KLSAgdHVwbGUoKSA6IGYwXygpLCBmMV8oKSwgZjJfKCksIGYz
XygpLCBmNF8oKSwgZjVfKCksIGY2XygpLCBmN18oKSwgZjhfKCksCi0gICAgICBmOV8oKSB7fQot
Ci0gIGV4cGxpY2l0IHR1cGxlKEdURVNUX0JZX1JFRl8oVDApIGYwLCBHVEVTVF9CWV9SRUZfKFQx
KSBmMSwKLSAgICAgIEdURVNUX0JZX1JFRl8oVDIpIGYyLCBHVEVTVF9CWV9SRUZfKFQzKSBmMywg
R1RFU1RfQllfUkVGXyhUNCkgZjQsCi0gICAgICBHVEVTVF9CWV9SRUZfKFQ1KSBmNSwgR1RFU1Rf
QllfUkVGXyhUNikgZjYsIEdURVNUX0JZX1JFRl8oVDcpIGY3LAotICAgICAgR1RFU1RfQllfUkVG
XyhUOCkgZjgsIEdURVNUX0JZX1JFRl8oVDkpIGY5KSA6IGYwXyhmMCksIGYxXyhmMSksIGYyXyhm
MiksCi0gICAgICBmM18oZjMpLCBmNF8oZjQpLCBmNV8oZjUpLCBmNl8oZjYpLCBmN18oZjcpLCBm
OF8oZjgpLCBmOV8oZjkpIHt9Ci0KLSAgdHVwbGUoY29uc3QgdHVwbGUmIHQpIDogZjBfKHQuZjBf
KSwgZjFfKHQuZjFfKSwgZjJfKHQuZjJfKSwgZjNfKHQuZjNfKSwKLSAgICAgIGY0Xyh0LmY0Xyks
IGY1Xyh0LmY1XyksIGY2Xyh0LmY2XyksIGY3Xyh0LmY3XyksIGY4Xyh0LmY4XyksIGY5Xyh0LmY5
Xykge30KLQotICB0ZW1wbGF0ZSA8R1RFU1RfMTBfVFlQRU5BTUVTXyhVKT4KLSAgdHVwbGUoY29u
c3QgR1RFU1RfMTBfVFVQTEVfKFUpJiB0KSA6IGYwXyh0LmYwXyksIGYxXyh0LmYxXyksIGYyXyh0
LmYyXyksCi0gICAgICBmM18odC5mM18pLCBmNF8odC5mNF8pLCBmNV8odC5mNV8pLCBmNl8odC5m
Nl8pLCBmN18odC5mN18pLCBmOF8odC5mOF8pLAotICAgICAgZjlfKHQuZjlfKSB7fQotCi0gIHR1
cGxlJiBvcGVyYXRvcj0oY29uc3QgdHVwbGUmIHQpIHsgcmV0dXJuIENvcHlGcm9tKHQpOyB9Ci0K
LSAgdGVtcGxhdGUgPEdURVNUXzEwX1RZUEVOQU1FU18oVSk+Ci0gIHR1cGxlJiBvcGVyYXRvcj0o
Y29uc3QgR1RFU1RfMTBfVFVQTEVfKFUpJiB0KSB7Ci0gICAgcmV0dXJuIENvcHlGcm9tKHQpOwot
ICB9Ci0KLSAgR1RFU1RfREVDTEFSRV9UVVBMRV9BU19GUklFTkRfCi0KLSAgdGVtcGxhdGUgPEdU
RVNUXzEwX1RZUEVOQU1FU18oVSk+Ci0gIHR1cGxlJiBDb3B5RnJvbShjb25zdCBHVEVTVF8xMF9U
VVBMRV8oVSkmIHQpIHsKLSAgICBmMF8gPSB0LmYwXzsKLSAgICBmMV8gPSB0LmYxXzsKLSAgICBm
Ml8gPSB0LmYyXzsKLSAgICBmM18gPSB0LmYzXzsKLSAgICBmNF8gPSB0LmY0XzsKLSAgICBmNV8g
PSB0LmY1XzsKLSAgICBmNl8gPSB0LmY2XzsKLSAgICBmN18gPSB0LmY3XzsKLSAgICBmOF8gPSB0
LmY4XzsKLSAgICBmOV8gPSB0LmY5XzsKLSAgICByZXR1cm4gKnRoaXM7Ci0gIH0KLQotICBUMCBm
MF87Ci0gIFQxIGYxXzsKLSAgVDIgZjJfOwotICBUMyBmM187Ci0gIFQ0IGY0XzsKLSAgVDUgZjVf
OwotICBUNiBmNl87Ci0gIFQ3IGY3XzsKLSAgVDggZjhfOwotICBUOSBmOV87Ci19OwotCi0vLyA2
LjEuMy4yIFR1cGxlIGNyZWF0aW9uIGZ1bmN0aW9ucy4KLQotLy8gS25vd24gbGltaXRhdGlvbnM6
IHdlIGRvbid0IHN1cHBvcnQgcGFzc2luZyBhbgotLy8gc3RkOjp0cjE6OnJlZmVyZW5jZV93cmFw
cGVyPFQ+IHRvIG1ha2VfdHVwbGUoKS4gIEFuZCB3ZSBkb24ndAotLy8gaW1wbGVtZW50IHRpZSgp
LgotCi1pbmxpbmUgdHVwbGU8PiBtYWtlX3R1cGxlKCkgeyByZXR1cm4gdHVwbGU8PigpOyB9Ci0K
LXRlbXBsYXRlIDxHVEVTVF8xX1RZUEVOQU1FU18oVCk+Ci1pbmxpbmUgR1RFU1RfMV9UVVBMRV8o
VCkgbWFrZV90dXBsZShjb25zdCBUMCYgZjApIHsKLSAgcmV0dXJuIEdURVNUXzFfVFVQTEVfKFQp
KGYwKTsKLX0KLQotdGVtcGxhdGUgPEdURVNUXzJfVFlQRU5BTUVTXyhUKT4KLWlubGluZSBHVEVT
VF8yX1RVUExFXyhUKSBtYWtlX3R1cGxlKGNvbnN0IFQwJiBmMCwgY29uc3QgVDEmIGYxKSB7Ci0g
IHJldHVybiBHVEVTVF8yX1RVUExFXyhUKShmMCwgZjEpOwotfQotCi10ZW1wbGF0ZSA8R1RFU1Rf
M19UWVBFTkFNRVNfKFQpPgotaW5saW5lIEdURVNUXzNfVFVQTEVfKFQpIG1ha2VfdHVwbGUoY29u
c3QgVDAmIGYwLCBjb25zdCBUMSYgZjEsIGNvbnN0IFQyJiBmMikgewotICByZXR1cm4gR1RFU1Rf
M19UVVBMRV8oVCkoZjAsIGYxLCBmMik7Ci19Ci0KLXRlbXBsYXRlIDxHVEVTVF80X1RZUEVOQU1F
U18oVCk+Ci1pbmxpbmUgR1RFU1RfNF9UVVBMRV8oVCkgbWFrZV90dXBsZShjb25zdCBUMCYgZjAs
IGNvbnN0IFQxJiBmMSwgY29uc3QgVDImIGYyLAotICAgIGNvbnN0IFQzJiBmMykgewotICByZXR1
cm4gR1RFU1RfNF9UVVBMRV8oVCkoZjAsIGYxLCBmMiwgZjMpOwotfQotCi10ZW1wbGF0ZSA8R1RF
U1RfNV9UWVBFTkFNRVNfKFQpPgotaW5saW5lIEdURVNUXzVfVFVQTEVfKFQpIG1ha2VfdHVwbGUo
Y29uc3QgVDAmIGYwLCBjb25zdCBUMSYgZjEsIGNvbnN0IFQyJiBmMiwKLSAgICBjb25zdCBUMyYg
ZjMsIGNvbnN0IFQ0JiBmNCkgewotICByZXR1cm4gR1RFU1RfNV9UVVBMRV8oVCkoZjAsIGYxLCBm
MiwgZjMsIGY0KTsKLX0KLQotdGVtcGxhdGUgPEdURVNUXzZfVFlQRU5BTUVTXyhUKT4KLWlubGlu
ZSBHVEVTVF82X1RVUExFXyhUKSBtYWtlX3R1cGxlKGNvbnN0IFQwJiBmMCwgY29uc3QgVDEmIGYx
LCBjb25zdCBUMiYgZjIsCi0gICAgY29uc3QgVDMmIGYzLCBjb25zdCBUNCYgZjQsIGNvbnN0IFQ1
JiBmNSkgewotICByZXR1cm4gR1RFU1RfNl9UVVBMRV8oVCkoZjAsIGYxLCBmMiwgZjMsIGY0LCBm
NSk7Ci19Ci0KLXRlbXBsYXRlIDxHVEVTVF83X1RZUEVOQU1FU18oVCk+Ci1pbmxpbmUgR1RFU1Rf
N19UVVBMRV8oVCkgbWFrZV90dXBsZShjb25zdCBUMCYgZjAsIGNvbnN0IFQxJiBmMSwgY29uc3Qg
VDImIGYyLAotICAgIGNvbnN0IFQzJiBmMywgY29uc3QgVDQmIGY0LCBjb25zdCBUNSYgZjUsIGNv
bnN0IFQ2JiBmNikgewotICByZXR1cm4gR1RFU1RfN19UVVBMRV8oVCkoZjAsIGYxLCBmMiwgZjMs
IGY0LCBmNSwgZjYpOwotfQotCi10ZW1wbGF0ZSA8R1RFU1RfOF9UWVBFTkFNRVNfKFQpPgotaW5s
aW5lIEdURVNUXzhfVFVQTEVfKFQpIG1ha2VfdHVwbGUoY29uc3QgVDAmIGYwLCBjb25zdCBUMSYg
ZjEsIGNvbnN0IFQyJiBmMiwKLSAgICBjb25zdCBUMyYgZjMsIGNvbnN0IFQ0JiBmNCwgY29uc3Qg
VDUmIGY1LCBjb25zdCBUNiYgZjYsIGNvbnN0IFQ3JiBmNykgewotICByZXR1cm4gR1RFU1RfOF9U
VVBMRV8oVCkoZjAsIGYxLCBmMiwgZjMsIGY0LCBmNSwgZjYsIGY3KTsKLX0KLQotdGVtcGxhdGUg
PEdURVNUXzlfVFlQRU5BTUVTXyhUKT4KLWlubGluZSBHVEVTVF85X1RVUExFXyhUKSBtYWtlX3R1
cGxlKGNvbnN0IFQwJiBmMCwgY29uc3QgVDEmIGYxLCBjb25zdCBUMiYgZjIsCi0gICAgY29uc3Qg
VDMmIGYzLCBjb25zdCBUNCYgZjQsIGNvbnN0IFQ1JiBmNSwgY29uc3QgVDYmIGY2LCBjb25zdCBU
NyYgZjcsCi0gICAgY29uc3QgVDgmIGY4KSB7Ci0gIHJldHVybiBHVEVTVF85X1RVUExFXyhUKShm
MCwgZjEsIGYyLCBmMywgZjQsIGY1LCBmNiwgZjcsIGY4KTsKLX0KLQotdGVtcGxhdGUgPEdURVNU
XzEwX1RZUEVOQU1FU18oVCk+Ci1pbmxpbmUgR1RFU1RfMTBfVFVQTEVfKFQpIG1ha2VfdHVwbGUo
Y29uc3QgVDAmIGYwLCBjb25zdCBUMSYgZjEsIGNvbnN0IFQyJiBmMiwKLSAgICBjb25zdCBUMyYg
ZjMsIGNvbnN0IFQ0JiBmNCwgY29uc3QgVDUmIGY1LCBjb25zdCBUNiYgZjYsIGNvbnN0IFQ3JiBm
NywKLSAgICBjb25zdCBUOCYgZjgsIGNvbnN0IFQ5JiBmOSkgewotICByZXR1cm4gR1RFU1RfMTBf
VFVQTEVfKFQpKGYwLCBmMSwgZjIsIGYzLCBmNCwgZjUsIGY2LCBmNywgZjgsIGY5KTsKLX0KLQot
Ly8gNi4xLjMuMyBUdXBsZSBoZWxwZXIgY2xhc3Nlcy4KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFR1
cGxlPiBzdHJ1Y3QgdHVwbGVfc2l6ZTsKLQotdGVtcGxhdGUgPEdURVNUXzBfVFlQRU5BTUVTXyhU
KT4KLXN0cnVjdCB0dXBsZV9zaXplPEdURVNUXzBfVFVQTEVfKFQpID4gewotICBzdGF0aWMgY29u
c3QgaW50IHZhbHVlID0gMDsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xX1RZUEVOQU1FU18oVCk+
Ci1zdHJ1Y3QgdHVwbGVfc2l6ZTxHVEVTVF8xX1RVUExFXyhUKSA+IHsKLSAgc3RhdGljIGNvbnN0
IGludCB2YWx1ZSA9IDE7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfMl9UWVBFTkFNRVNfKFQpPgot
c3RydWN0IHR1cGxlX3NpemU8R1RFU1RfMl9UVVBMRV8oVCkgPiB7Ci0gIHN0YXRpYyBjb25zdCBp
bnQgdmFsdWUgPSAyOwotfTsKLQotdGVtcGxhdGUgPEdURVNUXzNfVFlQRU5BTUVTXyhUKT4KLXN0
cnVjdCB0dXBsZV9zaXplPEdURVNUXzNfVFVQTEVfKFQpID4gewotICBzdGF0aWMgY29uc3QgaW50
IHZhbHVlID0gMzsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF80X1RZUEVOQU1FU18oVCk+Ci1zdHJ1
Y3QgdHVwbGVfc2l6ZTxHVEVTVF80X1RVUExFXyhUKSA+IHsKLSAgc3RhdGljIGNvbnN0IGludCB2
YWx1ZSA9IDQ7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfNV9UWVBFTkFNRVNfKFQpPgotc3RydWN0
IHR1cGxlX3NpemU8R1RFU1RfNV9UVVBMRV8oVCkgPiB7Ci0gIHN0YXRpYyBjb25zdCBpbnQgdmFs
dWUgPSA1OwotfTsKLQotdGVtcGxhdGUgPEdURVNUXzZfVFlQRU5BTUVTXyhUKT4KLXN0cnVjdCB0
dXBsZV9zaXplPEdURVNUXzZfVFVQTEVfKFQpID4gewotICBzdGF0aWMgY29uc3QgaW50IHZhbHVl
ID0gNjsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF83X1RZUEVOQU1FU18oVCk+Ci1zdHJ1Y3QgdHVw
bGVfc2l6ZTxHVEVTVF83X1RVUExFXyhUKSA+IHsKLSAgc3RhdGljIGNvbnN0IGludCB2YWx1ZSA9
IDc7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfOF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IHR1cGxl
X3NpemU8R1RFU1RfOF9UVVBMRV8oVCkgPiB7Ci0gIHN0YXRpYyBjb25zdCBpbnQgdmFsdWUgPSA4
OwotfTsKLQotdGVtcGxhdGUgPEdURVNUXzlfVFlQRU5BTUVTXyhUKT4KLXN0cnVjdCB0dXBsZV9z
aXplPEdURVNUXzlfVFVQTEVfKFQpID4gewotICBzdGF0aWMgY29uc3QgaW50IHZhbHVlID0gOTsK
LX07Ci0KLXRlbXBsYXRlIDxHVEVTVF8xMF9UWVBFTkFNRVNfKFQpPgotc3RydWN0IHR1cGxlX3Np
emU8R1RFU1RfMTBfVFVQTEVfKFQpID4gewotICBzdGF0aWMgY29uc3QgaW50IHZhbHVlID0gMTA7
Ci19OwotCi10ZW1wbGF0ZSA8aW50IGssIGNsYXNzIFR1cGxlPgotc3RydWN0IHR1cGxlX2VsZW1l
bnQgewotICB0eXBlZGVmIHR5cGVuYW1lIGd0ZXN0X2ludGVybmFsOjpUdXBsZUVsZW1lbnQ8Ci0g
ICAgICBrIDwgKHR1cGxlX3NpemU8VHVwbGU+Ojp2YWx1ZSksIGssIFR1cGxlPjo6dHlwZSB0eXBl
OwotfTsKLQotI2RlZmluZSBHVEVTVF9UVVBMRV9FTEVNRU5UXyhrLCBUdXBsZSkgdHlwZW5hbWUg
dHVwbGVfZWxlbWVudDxrLCBUdXBsZSA+Ojp0eXBlCi0KLS8vIDYuMS4zLjQgRWxlbWVudCBhY2Nl
c3MuCi0KLW5hbWVzcGFjZSBndGVzdF9pbnRlcm5hbCB7Ci0KLXRlbXBsYXRlIDw+Ci1jbGFzcyBH
ZXQ8MD4gewotIHB1YmxpYzoKLSAgdGVtcGxhdGUgPGNsYXNzIFR1cGxlPgotICBzdGF0aWMgR1RF
U1RfQUREX1JFRl8oR1RFU1RfVFVQTEVfRUxFTUVOVF8oMCwgVHVwbGUpKQotICBGaWVsZChUdXBs
ZSYgdCkgeyByZXR1cm4gdC5mMF87IH0gIC8vIE5PTElOVAotCi0gIHRlbXBsYXRlIDxjbGFzcyBU
dXBsZT4KLSAgc3RhdGljIEdURVNUX0JZX1JFRl8oR1RFU1RfVFVQTEVfRUxFTUVOVF8oMCwgVHVw
bGUpKQotICBDb25zdEZpZWxkKGNvbnN0IFR1cGxlJiB0KSB7IHJldHVybiB0LmYwXzsgfQotfTsK
LQotdGVtcGxhdGUgPD4KLWNsYXNzIEdldDwxPiB7Ci0gcHVibGljOgotICB0ZW1wbGF0ZSA8Y2xh
c3MgVHVwbGU+Ci0gIHN0YXRpYyBHVEVTVF9BRERfUkVGXyhHVEVTVF9UVVBMRV9FTEVNRU5UXygx
LCBUdXBsZSkpCi0gIEZpZWxkKFR1cGxlJiB0KSB7IHJldHVybiB0LmYxXzsgfSAgLy8gTk9MSU5U
Ci0KLSAgdGVtcGxhdGUgPGNsYXNzIFR1cGxlPgotICBzdGF0aWMgR1RFU1RfQllfUkVGXyhHVEVT
VF9UVVBMRV9FTEVNRU5UXygxLCBUdXBsZSkpCi0gIENvbnN0RmllbGQoY29uc3QgVHVwbGUmIHQp
IHsgcmV0dXJuIHQuZjFfOyB9Ci19OwotCi10ZW1wbGF0ZSA8PgotY2xhc3MgR2V0PDI+IHsKLSBw
dWJsaWM6Ci0gIHRlbXBsYXRlIDxjbGFzcyBUdXBsZT4KLSAgc3RhdGljIEdURVNUX0FERF9SRUZf
KEdURVNUX1RVUExFX0VMRU1FTlRfKDIsIFR1cGxlKSkKLSAgRmllbGQoVHVwbGUmIHQpIHsgcmV0
dXJuIHQuZjJfOyB9ICAvLyBOT0xJTlQKLQotICB0ZW1wbGF0ZSA8Y2xhc3MgVHVwbGU+Ci0gIHN0
YXRpYyBHVEVTVF9CWV9SRUZfKEdURVNUX1RVUExFX0VMRU1FTlRfKDIsIFR1cGxlKSkKLSAgQ29u
c3RGaWVsZChjb25zdCBUdXBsZSYgdCkgeyByZXR1cm4gdC5mMl87IH0KLX07Ci0KLXRlbXBsYXRl
IDw+Ci1jbGFzcyBHZXQ8Mz4gewotIHB1YmxpYzoKLSAgdGVtcGxhdGUgPGNsYXNzIFR1cGxlPgot
ICBzdGF0aWMgR1RFU1RfQUREX1JFRl8oR1RFU1RfVFVQTEVfRUxFTUVOVF8oMywgVHVwbGUpKQot
ICBGaWVsZChUdXBsZSYgdCkgeyByZXR1cm4gdC5mM187IH0gIC8vIE5PTElOVAotCi0gIHRlbXBs
YXRlIDxjbGFzcyBUdXBsZT4KLSAgc3RhdGljIEdURVNUX0JZX1JFRl8oR1RFU1RfVFVQTEVfRUxF
TUVOVF8oMywgVHVwbGUpKQotICBDb25zdEZpZWxkKGNvbnN0IFR1cGxlJiB0KSB7IHJldHVybiB0
LmYzXzsgfQotfTsKLQotdGVtcGxhdGUgPD4KLWNsYXNzIEdldDw0PiB7Ci0gcHVibGljOgotICB0
ZW1wbGF0ZSA8Y2xhc3MgVHVwbGU+Ci0gIHN0YXRpYyBHVEVTVF9BRERfUkVGXyhHVEVTVF9UVVBM
RV9FTEVNRU5UXyg0LCBUdXBsZSkpCi0gIEZpZWxkKFR1cGxlJiB0KSB7IHJldHVybiB0LmY0Xzsg
fSAgLy8gTk9MSU5UCi0KLSAgdGVtcGxhdGUgPGNsYXNzIFR1cGxlPgotICBzdGF0aWMgR1RFU1Rf
QllfUkVGXyhHVEVTVF9UVVBMRV9FTEVNRU5UXyg0LCBUdXBsZSkpCi0gIENvbnN0RmllbGQoY29u
c3QgVHVwbGUmIHQpIHsgcmV0dXJuIHQuZjRfOyB9Ci19OwotCi10ZW1wbGF0ZSA8PgotY2xhc3Mg
R2V0PDU+IHsKLSBwdWJsaWM6Ci0gIHRlbXBsYXRlIDxjbGFzcyBUdXBsZT4KLSAgc3RhdGljIEdU
RVNUX0FERF9SRUZfKEdURVNUX1RVUExFX0VMRU1FTlRfKDUsIFR1cGxlKSkKLSAgRmllbGQoVHVw
bGUmIHQpIHsgcmV0dXJuIHQuZjVfOyB9ICAvLyBOT0xJTlQKLQotICB0ZW1wbGF0ZSA8Y2xhc3Mg
VHVwbGU+Ci0gIHN0YXRpYyBHVEVTVF9CWV9SRUZfKEdURVNUX1RVUExFX0VMRU1FTlRfKDUsIFR1
cGxlKSkKLSAgQ29uc3RGaWVsZChjb25zdCBUdXBsZSYgdCkgeyByZXR1cm4gdC5mNV87IH0KLX07
Ci0KLXRlbXBsYXRlIDw+Ci1jbGFzcyBHZXQ8Nj4gewotIHB1YmxpYzoKLSAgdGVtcGxhdGUgPGNs
YXNzIFR1cGxlPgotICBzdGF0aWMgR1RFU1RfQUREX1JFRl8oR1RFU1RfVFVQTEVfRUxFTUVOVF8o
NiwgVHVwbGUpKQotICBGaWVsZChUdXBsZSYgdCkgeyByZXR1cm4gdC5mNl87IH0gIC8vIE5PTElO
VAotCi0gIHRlbXBsYXRlIDxjbGFzcyBUdXBsZT4KLSAgc3RhdGljIEdURVNUX0JZX1JFRl8oR1RF
U1RfVFVQTEVfRUxFTUVOVF8oNiwgVHVwbGUpKQotICBDb25zdEZpZWxkKGNvbnN0IFR1cGxlJiB0
KSB7IHJldHVybiB0LmY2XzsgfQotfTsKLQotdGVtcGxhdGUgPD4KLWNsYXNzIEdldDw3PiB7Ci0g
cHVibGljOgotICB0ZW1wbGF0ZSA8Y2xhc3MgVHVwbGU+Ci0gIHN0YXRpYyBHVEVTVF9BRERfUkVG
XyhHVEVTVF9UVVBMRV9FTEVNRU5UXyg3LCBUdXBsZSkpCi0gIEZpZWxkKFR1cGxlJiB0KSB7IHJl
dHVybiB0LmY3XzsgfSAgLy8gTk9MSU5UCi0KLSAgdGVtcGxhdGUgPGNsYXNzIFR1cGxlPgotICBz
dGF0aWMgR1RFU1RfQllfUkVGXyhHVEVTVF9UVVBMRV9FTEVNRU5UXyg3LCBUdXBsZSkpCi0gIENv
bnN0RmllbGQoY29uc3QgVHVwbGUmIHQpIHsgcmV0dXJuIHQuZjdfOyB9Ci19OwotCi10ZW1wbGF0
ZSA8PgotY2xhc3MgR2V0PDg+IHsKLSBwdWJsaWM6Ci0gIHRlbXBsYXRlIDxjbGFzcyBUdXBsZT4K
LSAgc3RhdGljIEdURVNUX0FERF9SRUZfKEdURVNUX1RVUExFX0VMRU1FTlRfKDgsIFR1cGxlKSkK
LSAgRmllbGQoVHVwbGUmIHQpIHsgcmV0dXJuIHQuZjhfOyB9ICAvLyBOT0xJTlQKLQotICB0ZW1w
bGF0ZSA8Y2xhc3MgVHVwbGU+Ci0gIHN0YXRpYyBHVEVTVF9CWV9SRUZfKEdURVNUX1RVUExFX0VM
RU1FTlRfKDgsIFR1cGxlKSkKLSAgQ29uc3RGaWVsZChjb25zdCBUdXBsZSYgdCkgeyByZXR1cm4g
dC5mOF87IH0KLX07Ci0KLXRlbXBsYXRlIDw+Ci1jbGFzcyBHZXQ8OT4gewotIHB1YmxpYzoKLSAg
dGVtcGxhdGUgPGNsYXNzIFR1cGxlPgotICBzdGF0aWMgR1RFU1RfQUREX1JFRl8oR1RFU1RfVFVQ
TEVfRUxFTUVOVF8oOSwgVHVwbGUpKQotICBGaWVsZChUdXBsZSYgdCkgeyByZXR1cm4gdC5mOV87
IH0gIC8vIE5PTElOVAotCi0gIHRlbXBsYXRlIDxjbGFzcyBUdXBsZT4KLSAgc3RhdGljIEdURVNU
X0JZX1JFRl8oR1RFU1RfVFVQTEVfRUxFTUVOVF8oOSwgVHVwbGUpKQotICBDb25zdEZpZWxkKGNv
bnN0IFR1cGxlJiB0KSB7IHJldHVybiB0LmY5XzsgfQotfTsKLQotfSAgLy8gbmFtZXNwYWNlIGd0
ZXN0X2ludGVybmFsCi0KLXRlbXBsYXRlIDxpbnQgaywgR1RFU1RfMTBfVFlQRU5BTUVTXyhUKT4K
LUdURVNUX0FERF9SRUZfKEdURVNUX1RVUExFX0VMRU1FTlRfKGssIEdURVNUXzEwX1RVUExFXyhU
KSkpCi1nZXQoR1RFU1RfMTBfVFVQTEVfKFQpJiB0KSB7Ci0gIHJldHVybiBndGVzdF9pbnRlcm5h
bDo6R2V0PGs+OjpGaWVsZCh0KTsKLX0KLQotdGVtcGxhdGUgPGludCBrLCBHVEVTVF8xMF9UWVBF
TkFNRVNfKFQpPgotR1RFU1RfQllfUkVGXyhHVEVTVF9UVVBMRV9FTEVNRU5UXyhrLCAgR1RFU1Rf
MTBfVFVQTEVfKFQpKSkKLWdldChjb25zdCBHVEVTVF8xMF9UVVBMRV8oVCkmIHQpIHsKLSAgcmV0
dXJuIGd0ZXN0X2ludGVybmFsOjpHZXQ8az46OkNvbnN0RmllbGQodCk7Ci19Ci0KLS8vIDYuMS4z
LjUgUmVsYXRpb25hbCBvcGVyYXRvcnMKLQotLy8gV2Ugb25seSBpbXBsZW1lbnQgPT0gYW5kICE9
LCBhcyB3ZSBkb24ndCBoYXZlIGEgbmVlZCBmb3IgdGhlIHJlc3QgeWV0LgotCi1uYW1lc3BhY2Ug
Z3Rlc3RfaW50ZXJuYWwgewotCi0vLyBTYW1lU2l6ZVR1cGxlUHJlZml4Q29tcGFyYXRvcjxrLCBr
Pjo6RXEodDEsIHQyKSByZXR1cm5zIHRydWUgaWYgdGhlCi0vLyBmaXJzdCBrIGZpZWxkcyBvZiB0
MSBlcXVhbHMgdGhlIGZpcnN0IGsgZmllbGRzIG9mIHQyLgotLy8gU2FtZVNpemVUdXBsZVByZWZp
eENvbXBhcmF0b3IoazEsIGsyKSB3b3VsZCBiZSBhIGNvbXBpbGVyIGVycm9yIGlmCi0vLyBrMSAh
PSBrMi4KLXRlbXBsYXRlIDxpbnQga1NpemUxLCBpbnQga1NpemUyPgotc3RydWN0IFNhbWVTaXpl
VHVwbGVQcmVmaXhDb21wYXJhdG9yOwotCi10ZW1wbGF0ZSA8Pgotc3RydWN0IFNhbWVTaXplVHVw
bGVQcmVmaXhDb21wYXJhdG9yPDAsIDA+IHsKLSAgdGVtcGxhdGUgPGNsYXNzIFR1cGxlMSwgY2xh
c3MgVHVwbGUyPgotICBzdGF0aWMgYm9vbCBFcShjb25zdCBUdXBsZTEmIC8qIHQxICovLCBjb25z
dCBUdXBsZTImIC8qIHQyICovKSB7Ci0gICAgcmV0dXJuIHRydWU7Ci0gIH0KLX07Ci0KLXRlbXBs
YXRlIDxpbnQgaz4KLXN0cnVjdCBTYW1lU2l6ZVR1cGxlUHJlZml4Q29tcGFyYXRvcjxrLCBrPiB7
Ci0gIHRlbXBsYXRlIDxjbGFzcyBUdXBsZTEsIGNsYXNzIFR1cGxlMj4KLSAgc3RhdGljIGJvb2wg
RXEoY29uc3QgVHVwbGUxJiB0MSwgY29uc3QgVHVwbGUyJiB0MikgewotICAgIHJldHVybiBTYW1l
U2l6ZVR1cGxlUHJlZml4Q29tcGFyYXRvcjxrIC0gMSwgayAtIDE+OjpFcSh0MSwgdDIpICYmCi0g
ICAgICAgIDo6c3RkOjp0cjE6OmdldDxrIC0gMT4odDEpID09IDo6c3RkOjp0cjE6OmdldDxrIC0g
MT4odDIpOwotICB9Ci19OwotCi19ICAvLyBuYW1lc3BhY2UgZ3Rlc3RfaW50ZXJuYWwKLQotdGVt
cGxhdGUgPEdURVNUXzEwX1RZUEVOQU1FU18oVCksIEdURVNUXzEwX1RZUEVOQU1FU18oVSk+Ci1p
bmxpbmUgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEdURVNUXzEwX1RVUExFXyhUKSYgdCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgR1RFU1RfMTBfVFVQTEVfKFUpJiB1KSB7Ci0gIHJldHVy
biBndGVzdF9pbnRlcm5hbDo6U2FtZVNpemVUdXBsZVByZWZpeENvbXBhcmF0b3I8Ci0gICAgICB0
dXBsZV9zaXplPEdURVNUXzEwX1RVUExFXyhUKSA+Ojp2YWx1ZSwKLSAgICAgIHR1cGxlX3NpemU8
R1RFU1RfMTBfVFVQTEVfKFUpID46OnZhbHVlPjo6RXEodCwgdSk7Ci19Ci0KLXRlbXBsYXRlIDxH
VEVTVF8xMF9UWVBFTkFNRVNfKFQpLCBHVEVTVF8xMF9UWVBFTkFNRVNfKFUpPgotaW5saW5lIGJv
b2wgb3BlcmF0b3IhPShjb25zdCBHVEVTVF8xMF9UVVBMRV8oVCkmIHQsCi0gICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IEdURVNUXzEwX1RVUExFXyhVKSYgdSkgeyByZXR1cm4gISh0ID09IHUp
OyB9Ci0KLS8vIDYuMS40IFBhaXJzLgotLy8gVW5pbXBsZW1lbnRlZC4KLQotfSAgLy8gbmFtZXNw
YWNlIHRyMQotfSAgLy8gbmFtZXNwYWNlIHN0ZAotCi0jdW5kZWYgR1RFU1RfMF9UVVBMRV8KLSN1
bmRlZiBHVEVTVF8xX1RVUExFXwotI3VuZGVmIEdURVNUXzJfVFVQTEVfCi0jdW5kZWYgR1RFU1Rf
M19UVVBMRV8KLSN1bmRlZiBHVEVTVF80X1RVUExFXwotI3VuZGVmIEdURVNUXzVfVFVQTEVfCi0j
dW5kZWYgR1RFU1RfNl9UVVBMRV8KLSN1bmRlZiBHVEVTVF83X1RVUExFXwotI3VuZGVmIEdURVNU
XzhfVFVQTEVfCi0jdW5kZWYgR1RFU1RfOV9UVVBMRV8KLSN1bmRlZiBHVEVTVF8xMF9UVVBMRV8K
LQotI3VuZGVmIEdURVNUXzBfVFlQRU5BTUVTXwotI3VuZGVmIEdURVNUXzFfVFlQRU5BTUVTXwot
I3VuZGVmIEdURVNUXzJfVFlQRU5BTUVTXwotI3VuZGVmIEdURVNUXzNfVFlQRU5BTUVTXwotI3Vu
ZGVmIEdURVNUXzRfVFlQRU5BTUVTXwotI3VuZGVmIEdURVNUXzVfVFlQRU5BTUVTXwotI3VuZGVm
IEdURVNUXzZfVFlQRU5BTUVTXwotI3VuZGVmIEdURVNUXzdfVFlQRU5BTUVTXwotI3VuZGVmIEdU
RVNUXzhfVFlQRU5BTUVTXwotI3VuZGVmIEdURVNUXzlfVFlQRU5BTUVTXwotI3VuZGVmIEdURVNU
XzEwX1RZUEVOQU1FU18KLQotI3VuZGVmIEdURVNUX0RFQ0xBUkVfVFVQTEVfQVNfRlJJRU5EXwot
I3VuZGVmIEdURVNUX0JZX1JFRl8KLSN1bmRlZiBHVEVTVF9BRERfUkVGXwotI3VuZGVmIEdURVNU
X1RVUExFX0VMRU1FTlRfCi0KLSNlbmRpZiAgLy8gR1RFU1RfSU5DTFVERV9HVEVTVF9JTlRFUk5B
TF9HVEVTVF9UVVBMRV9IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29n
bGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LXR1cGxlLmgucHVtcCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5h
bC9ndGVzdC10dXBsZS5oLnB1bXAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGJiNjI2
ZTA0OWYwODc4MGZmY2U5NmQ0ODUyY2I4ZWQ1ZDNlZjVmMTEuLjAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0
ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LXR1cGxlLmgucHVtcAorKysgL2Rl
di9udWxsCkBAIC0xLDM0OCArMCwwIEBACi0kJCAtKi0gbW9kZTogYysrOyAtKi0KLSR2YXIgbiA9
IDEwICAkJCBNYXhpbXVtIG51bWJlciBvZiB0dXBsZSBmaWVsZHMgd2Ugd2FudCB0byBzdXBwb3J0
LgotJCQgVGhpcyBtZXRhIGNvbW1lbnQgZml4ZXMgYXV0by1pbmRlbnRhdGlvbiBpbiBFbWFjcy4g
fX0KLS8vIENvcHlyaWdodCAyMDA5IEdvb2dsZSBJbmMuCi0vLyBBbGwgUmlnaHRzIFJlc2VydmVk
LgotLy8KLS8vIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAotLy8gbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQotLy8gbWV0OgotLy8KLS8vICAg
ICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0Ci0vLyBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCi0vLyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0vLyBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCi0vLyBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0v
LyBkaXN0cmlidXRpb24uCi0vLyAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMu
IG5vciB0aGUgbmFtZXMgb2YgaXRzCi0vLyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQotLy8gdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLS8vCi0vLyBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVU
T1JTCi0vLyAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVAotLy8gTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0vLyBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAotLy8gT1dO
RVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsCi0vLyBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UCi0vLyBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLS8vIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQot
Ly8gVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAotLy8gKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0vLyBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotCi0KLS8vIElt
cGxlbWVudHMgYSBzdWJzZXQgb2YgVFIxIHR1cGxlIG5lZWRlZCBieSBHb29nbGUgVGVzdCBhbmQg
R29vZ2xlIE1vY2suCi0KLS8vIEdPT0dMRVRFU1RfQ00wMDAxIERPIE5PVCBERUxFVEUKLQotI2lm
bmRlZiBHVEVTVF9JTkNMVURFX0dURVNUX0lOVEVSTkFMX0dURVNUX1RVUExFX0hfCi0jZGVmaW5l
IEdURVNUX0lOQ0xVREVfR1RFU1RfSU5URVJOQUxfR1RFU1RfVFVQTEVfSF8KLQotI2luY2x1ZGUg
PHV0aWxpdHk+ICAvLyBGb3IgOjpzdGQ6OnBhaXIuCi0KLS8vIFRoZSBjb21waWxlciB1c2VkIGlu
IFN5bWJpYW4gaGFzIGEgYnVnIHRoYXQgcHJldmVudHMgdXMgZnJvbSBkZWNsYXJpbmcgdGhlCi0v
LyB0dXBsZSB0ZW1wbGF0ZSBhcyBhIGZyaWVuZCAoaXQgY29tcGxhaW5zIHRoYXQgdHVwbGUgaXMg
cmVkZWZpbmVkKS4gIFRoaXMKLS8vIGJ5cGFzc2VzIHRoZSBidWcgYnkgZGVjbGFyaW5nIHRoZSBt
ZW1iZXJzIHRoYXQgc2hvdWxkIG90aGVyd2lzZSBiZQotLy8gcHJpdmF0ZSBhcyBwdWJsaWMuCi0v
LyBTdW4gU3R1ZGlvIHZlcnNpb25zIDwgMTIgYWxzbyBoYXZlIHRoZSBhYm92ZSBidWcuCi0jaWYg
ZGVmaW5lZChfX1NZTUJJQU4zMl9fKSB8fCAoZGVmaW5lZChfX1NVTlBST19DQykgJiYgX19TVU5Q
Uk9fQ0MgPCAweDU5MCkKLSMgZGVmaW5lIEdURVNUX0RFQ0xBUkVfVFVQTEVfQVNfRlJJRU5EXyBw
dWJsaWM6Ci0jZWxzZQotIyBkZWZpbmUgR1RFU1RfREVDTEFSRV9UVVBMRV9BU19GUklFTkRfIFwK
LSAgICB0ZW1wbGF0ZSA8R1RFU1RfJChuKV9UWVBFTkFNRVNfKFUpPiBmcmllbmQgY2xhc3MgdHVw
bGU7IFwKLSAgIHByaXZhdGU6Ci0jZW5kaWYKLQotLy8gVmlzdWFsIFN0dWRpbyAyMDEwLCAyMDEy
LCBhbmQgMjAxMyBkZWZpbmUgc3ltYm9scyBpbiBzdGQ6OnRyMSB0aGF0IGNvbmZsaWN0Ci0vLyB3
aXRoIG91ciBvd24gZGVmaW5pdGlvbnMuIFRoZXJlZm9yZSB1c2luZyBvdXIgb3duIHR1cGxlIGRv
ZXMgbm90IHdvcmsgb24KLS8vIHRob3NlIGNvbXBpbGVycy4KLSNpZiBkZWZpbmVkKF9NU0NfVkVS
KSAmJiBfTVNDX1ZFUiA+PSAxNjAwICAvKiAxNjAwIGlzIFZpc3VhbCBTdHVkaW8gMjAxMCAqLwot
IyBlcnJvciAiZ3Rlc3QncyB0dXBsZSBkb2Vzbid0IGNvbXBpbGUgb24gVmlzdWFsIFN0dWRpbyAy
MDEwIG9yIGxhdGVyLiBcCi1HVEVTVF9VU0VfT1dOX1RSMV9UVVBMRSBtdXN0IGJlIHNldCB0byAw
IG9uIHRob3NlIGNvbXBpbGVycy4iCi0jZW5kaWYKLQotCi0kcmFuZ2UgaSAwLi5uLTEKLSRyYW5n
ZSBqIDAuLm4KLSRyYW5nZSBrIDEuLm4KLS8vIEdURVNUX25fVFVQTEVfKFQpIGlzIHRoZSB0eXBl
IG9mIGFuIG4tdHVwbGUuCi0jZGVmaW5lIEdURVNUXzBfVFVQTEVfKFQpIHR1cGxlPD4KLQotJGZv
ciBrIFtbCi0kcmFuZ2UgbSAwLi5rLTEKLSRyYW5nZSBtMiBrLi5uLTEKLSNkZWZpbmUgR1RFU1Rf
JChrKV9UVVBMRV8oVCkgdHVwbGU8JGZvciBtLCBbW1QjIyRtXV0kZm9yIG0yIFtbLCB2b2lkXV0+
Ci0KLV1dCi0KLS8vIEdURVNUX25fVFlQRU5BTUVTXyhUKSBkZWNsYXJlcyBhIGxpc3Qgb2YgbiB0
eXBlbmFtZXMuCi0KLSRmb3IgaiBbWwotJHJhbmdlIG0gMC4uai0xCi0jZGVmaW5lIEdURVNUXyQo
ailfVFlQRU5BTUVTXyhUKSAkZm9yIG0sIFtbdHlwZW5hbWUgVCMjJG1dXQotCi0KLV1dCi0KLS8v
IEluIHRoZW9yeSwgZGVmaW5pbmcgc3R1ZmYgaW4gdGhlIDo6c3RkIG5hbWVzcGFjZSBpcyB1bmRl
ZmluZWQKLS8vIGJlaGF2aW9yLiAgV2UgY2FuIGRvIHRoaXMgYXMgd2UgYXJlIHBsYXlpbmcgdGhl
IHJvbGUgb2YgYSBzdGFuZGFyZAotLy8gbGlicmFyeSB2ZW5kb3IuCi1uYW1lc3BhY2Ugc3RkIHsK
LW5hbWVzcGFjZSB0cjEgewotCi10ZW1wbGF0ZSA8JGZvciBpLCBbW3R5cGVuYW1lIFQkaSA9IHZv
aWRdXT4KLWNsYXNzIHR1cGxlOwotCi0vLyBBbnl0aGluZyBpbiBuYW1lc3BhY2UgZ3Rlc3RfaW50
ZXJuYWwgaXMgR29vZ2xlIFRlc3QncyBJTlRFUk5BTAotLy8gSU1QTEVNRU5UQVRJT04gREVUQUlM
IGFuZCBNVVNUIE5PVCBCRSBVU0VEIERJUkVDVExZIGluIHVzZXIgY29kZS4KLW5hbWVzcGFjZSBn
dGVzdF9pbnRlcm5hbCB7Ci0KLS8vIEJ5UmVmPFQ+Ojp0eXBlIGlzIFQgaWYgVCBpcyBhIHJlZmVy
ZW5jZTsgb3RoZXJ3aXNlIGl0J3MgY29uc3QgVCYuCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLXN0
cnVjdCBCeVJlZiB7IHR5cGVkZWYgY29uc3QgVCYgdHlwZTsgfTsgIC8vIE5PTElOVAotdGVtcGxh
dGUgPHR5cGVuYW1lIFQ+Ci1zdHJ1Y3QgQnlSZWY8VCY+IHsgdHlwZWRlZiBUJiB0eXBlOyB9OyAg
Ly8gTk9MSU5UCi0KLS8vIEEgaGFuZHkgd3JhcHBlciBmb3IgQnlSZWYuCi0jZGVmaW5lIEdURVNU
X0JZX1JFRl8oVCkgdHlwZW5hbWUgOjpzdGQ6OnRyMTo6Z3Rlc3RfaW50ZXJuYWw6OkJ5UmVmPFQ+
Ojp0eXBlCi0KLS8vIEFkZFJlZjxUPjo6dHlwZSBpcyBUIGlmIFQgaXMgYSByZWZlcmVuY2U7IG90
aGVyd2lzZSBpdCdzIFQmLiAgVGhpcwotLy8gaXMgdGhlIHNhbWUgYXMgdHIxOjphZGRfcmVmZXJl
bmNlPFQ+Ojp0eXBlLgotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1zdHJ1Y3QgQWRkUmVmIHsgdHlw
ZWRlZiBUJiB0eXBlOyB9OyAgLy8gTk9MSU5UCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLXN0cnVj
dCBBZGRSZWY8VCY+IHsgdHlwZWRlZiBUJiB0eXBlOyB9OyAgLy8gTk9MSU5UCi0KLS8vIEEgaGFu
ZHkgd3JhcHBlciBmb3IgQWRkUmVmLgotI2RlZmluZSBHVEVTVF9BRERfUkVGXyhUKSB0eXBlbmFt
ZSA6OnN0ZDo6dHIxOjpndGVzdF9pbnRlcm5hbDo6QWRkUmVmPFQ+Ojp0eXBlCi0KLS8vIEEgaGVs
cGVyIGZvciBpbXBsZW1lbnRpbmcgZ2V0PGs+KCkuCi10ZW1wbGF0ZSA8aW50IGs+IGNsYXNzIEdl
dDsKLQotLy8gQSBoZWxwZXIgZm9yIGltcGxlbWVudGluZyB0dXBsZV9lbGVtZW50PGssIFQ+LiAg
a0luZGV4VmFsaWQgaXMgdHJ1ZQotLy8gaWZmIGsgPCB0aGUgbnVtYmVyIG9mIGZpZWxkcyBpbiB0
dXBsZSB0eXBlIFQuCi10ZW1wbGF0ZSA8Ym9vbCBrSW5kZXhWYWxpZCwgaW50IGtJbmRleCwgY2xh
c3MgVHVwbGU+Ci1zdHJ1Y3QgVHVwbGVFbGVtZW50OwotCi0KLSRmb3IgaSBbWwotdGVtcGxhdGUg
PEdURVNUXyQobilfVFlQRU5BTUVTXyhUKT4KLXN0cnVjdCBUdXBsZUVsZW1lbnQ8dHJ1ZSwgJGks
IEdURVNUXyQobilfVFVQTEVfKFQpID4gewotICB0eXBlZGVmIFQkaSB0eXBlOwotfTsKLQotCi1d
XQotfSAgLy8gbmFtZXNwYWNlIGd0ZXN0X2ludGVybmFsCi0KLXRlbXBsYXRlIDw+Ci1jbGFzcyB0
dXBsZTw+IHsKLSBwdWJsaWM6Ci0gIHR1cGxlKCkge30KLSAgdHVwbGUoY29uc3QgdHVwbGUmIC8q
IHQgKi8pICB7fQotICB0dXBsZSYgb3BlcmF0b3I9KGNvbnN0IHR1cGxlJiAvKiB0ICovKSB7IHJl
dHVybiAqdGhpczsgfQotfTsKLQotCi0kZm9yIGsgW1sKLSRyYW5nZSBtIDAuLmstMQotdGVtcGxh
dGUgPEdURVNUXyQoaylfVFlQRU5BTUVTXyhUKT4KLWNsYXNzICRpZiBrIDwgbiBbW0dURVNUXyQo
aylfVFVQTEVfKFQpXV0gJGVsc2UgW1t0dXBsZV1dIHsKLSBwdWJsaWM6Ci0gIHRlbXBsYXRlIDxp
bnQgaz4gZnJpZW5kIGNsYXNzIGd0ZXN0X2ludGVybmFsOjpHZXQ7Ci0KLSAgdHVwbGUoKSA6ICRm
b3IgbSwgW1tmJChtKV8oKV1dIHt9Ci0KLSAgZXhwbGljaXQgdHVwbGUoJGZvciBtLCBbW0dURVNU
X0JZX1JFRl8oVCRtKSBmJG1dXSkgOiBbW11dCi0kZm9yIG0sIFtbZiQobSlfKGYkbSldXSB7fQot
Ci0gIHR1cGxlKGNvbnN0IHR1cGxlJiB0KSA6ICRmb3IgbSwgW1tmJChtKV8odC5mJChtKV8pXV0g
e30KLQotICB0ZW1wbGF0ZSA8R1RFU1RfJChrKV9UWVBFTkFNRVNfKFUpPgotICB0dXBsZShjb25z
dCBHVEVTVF8kKGspX1RVUExFXyhVKSYgdCkgOiAkZm9yIG0sIFtbZiQobSlfKHQuZiQobSlfKV1d
IHt9Ci0KLSRpZiBrID09IDIgW1sKLSAgdGVtcGxhdGUgPHR5cGVuYW1lIFUwLCB0eXBlbmFtZSBV
MT4KLSAgdHVwbGUoY29uc3QgOjpzdGQ6OnBhaXI8VTAsIFUxPiYgcCkgOiBmMF8ocC5maXJzdCks
IGYxXyhwLnNlY29uZCkge30KLQotXV0KLQotICB0dXBsZSYgb3BlcmF0b3I9KGNvbnN0IHR1cGxl
JiB0KSB7IHJldHVybiBDb3B5RnJvbSh0KTsgfQotCi0gIHRlbXBsYXRlIDxHVEVTVF8kKGspX1RZ
UEVOQU1FU18oVSk+Ci0gIHR1cGxlJiBvcGVyYXRvcj0oY29uc3QgR1RFU1RfJChrKV9UVVBMRV8o
VSkmIHQpIHsKLSAgICByZXR1cm4gQ29weUZyb20odCk7Ci0gIH0KLQotJGlmIGsgPT0gMiBbWwot
ICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVTAsIHR5cGVuYW1lIFUxPgotICB0dXBsZSYgb3BlcmF0b3I9
KGNvbnN0IDo6c3RkOjpwYWlyPFUwLCBVMT4mIHApIHsKLSAgICBmMF8gPSBwLmZpcnN0OwotICAg
IGYxXyA9IHAuc2Vjb25kOwotICAgIHJldHVybiAqdGhpczsKLSAgfQotCi1dXQotCi0gIEdURVNU
X0RFQ0xBUkVfVFVQTEVfQVNfRlJJRU5EXwotCi0gIHRlbXBsYXRlIDxHVEVTVF8kKGspX1RZUEVO
QU1FU18oVSk+Ci0gIHR1cGxlJiBDb3B5RnJvbShjb25zdCBHVEVTVF8kKGspX1RVUExFXyhVKSYg
dCkgewotCi0kZm9yIG0gW1sKLSAgICBmJChtKV8gPSB0LmYkKG0pXzsKLQotXV0KLSAgICByZXR1
cm4gKnRoaXM7Ci0gIH0KLQotCi0kZm9yIG0gW1sKLSAgVCRtIGYkKG0pXzsKLQotXV0KLX07Ci0K
LQotXV0KLS8vIDYuMS4zLjIgVHVwbGUgY3JlYXRpb24gZnVuY3Rpb25zLgotCi0vLyBLbm93biBs
aW1pdGF0aW9uczogd2UgZG9uJ3Qgc3VwcG9ydCBwYXNzaW5nIGFuCi0vLyBzdGQ6OnRyMTo6cmVm
ZXJlbmNlX3dyYXBwZXI8VD4gdG8gbWFrZV90dXBsZSgpLiAgQW5kIHdlIGRvbid0Ci0vLyBpbXBs
ZW1lbnQgdGllKCkuCi0KLWlubGluZSB0dXBsZTw+IG1ha2VfdHVwbGUoKSB7IHJldHVybiB0dXBs
ZTw+KCk7IH0KLQotJGZvciBrIFtbCi0kcmFuZ2UgbSAwLi5rLTEKLQotdGVtcGxhdGUgPEdURVNU
XyQoaylfVFlQRU5BTUVTXyhUKT4KLWlubGluZSBHVEVTVF8kKGspX1RVUExFXyhUKSBtYWtlX3R1
cGxlKCRmb3IgbSwgW1tjb25zdCBUJG0mIGYkbV1dKSB7Ci0gIHJldHVybiBHVEVTVF8kKGspX1RV
UExFXyhUKSgkZm9yIG0sIFtbZiRtXV0pOwotfQotCi1dXQotCi0vLyA2LjEuMy4zIFR1cGxlIGhl
bHBlciBjbGFzc2VzLgotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVHVwbGU+IHN0cnVjdCB0dXBsZV9z
aXplOwotCi0KLSRmb3IgaiBbWwotdGVtcGxhdGUgPEdURVNUXyQoailfVFlQRU5BTUVTXyhUKT4K
LXN0cnVjdCB0dXBsZV9zaXplPEdURVNUXyQoailfVFVQTEVfKFQpID4gewotICBzdGF0aWMgY29u
c3QgaW50IHZhbHVlID0gJGo7Ci19OwotCi0KLV1dCi10ZW1wbGF0ZSA8aW50IGssIGNsYXNzIFR1
cGxlPgotc3RydWN0IHR1cGxlX2VsZW1lbnQgewotICB0eXBlZGVmIHR5cGVuYW1lIGd0ZXN0X2lu
dGVybmFsOjpUdXBsZUVsZW1lbnQ8Ci0gICAgICBrIDwgKHR1cGxlX3NpemU8VHVwbGU+Ojp2YWx1
ZSksIGssIFR1cGxlPjo6dHlwZSB0eXBlOwotfTsKLQotI2RlZmluZSBHVEVTVF9UVVBMRV9FTEVN
RU5UXyhrLCBUdXBsZSkgdHlwZW5hbWUgdHVwbGVfZWxlbWVudDxrLCBUdXBsZSA+Ojp0eXBlCi0K
LS8vIDYuMS4zLjQgRWxlbWVudCBhY2Nlc3MuCi0KLW5hbWVzcGFjZSBndGVzdF9pbnRlcm5hbCB7
Ci0KLQotJGZvciBpIFtbCi10ZW1wbGF0ZSA8PgotY2xhc3MgR2V0PCRpPiB7Ci0gcHVibGljOgot
ICB0ZW1wbGF0ZSA8Y2xhc3MgVHVwbGU+Ci0gIHN0YXRpYyBHVEVTVF9BRERfUkVGXyhHVEVTVF9U
VVBMRV9FTEVNRU5UXygkaSwgVHVwbGUpKQotICBGaWVsZChUdXBsZSYgdCkgeyByZXR1cm4gdC5m
JChpKV87IH0gIC8vIE5PTElOVAotCi0gIHRlbXBsYXRlIDxjbGFzcyBUdXBsZT4KLSAgc3RhdGlj
IEdURVNUX0JZX1JFRl8oR1RFU1RfVFVQTEVfRUxFTUVOVF8oJGksIFR1cGxlKSkKLSAgQ29uc3RG
aWVsZChjb25zdCBUdXBsZSYgdCkgeyByZXR1cm4gdC5mJChpKV87IH0KLX07Ci0KLQotXV0KLX0g
IC8vIG5hbWVzcGFjZSBndGVzdF9pbnRlcm5hbAotCi10ZW1wbGF0ZSA8aW50IGssIEdURVNUXyQo
bilfVFlQRU5BTUVTXyhUKT4KLUdURVNUX0FERF9SRUZfKEdURVNUX1RVUExFX0VMRU1FTlRfKGss
IEdURVNUXyQobilfVFVQTEVfKFQpKSkKLWdldChHVEVTVF8kKG4pX1RVUExFXyhUKSYgdCkgewot
ICByZXR1cm4gZ3Rlc3RfaW50ZXJuYWw6OkdldDxrPjo6RmllbGQodCk7Ci19Ci0KLXRlbXBsYXRl
IDxpbnQgaywgR1RFU1RfJChuKV9UWVBFTkFNRVNfKFQpPgotR1RFU1RfQllfUkVGXyhHVEVTVF9U
VVBMRV9FTEVNRU5UXyhrLCAgR1RFU1RfJChuKV9UVVBMRV8oVCkpKQotZ2V0KGNvbnN0IEdURVNU
XyQobilfVFVQTEVfKFQpJiB0KSB7Ci0gIHJldHVybiBndGVzdF9pbnRlcm5hbDo6R2V0PGs+OjpD
b25zdEZpZWxkKHQpOwotfQotCi0vLyA2LjEuMy41IFJlbGF0aW9uYWwgb3BlcmF0b3JzCi0KLS8v
IFdlIG9ubHkgaW1wbGVtZW50ID09IGFuZCAhPSwgYXMgd2UgZG9uJ3QgaGF2ZSBhIG5lZWQgZm9y
IHRoZSByZXN0IHlldC4KLQotbmFtZXNwYWNlIGd0ZXN0X2ludGVybmFsIHsKLQotLy8gU2FtZVNp
emVUdXBsZVByZWZpeENvbXBhcmF0b3I8aywgaz46OkVxKHQxLCB0MikgcmV0dXJucyB0cnVlIGlm
IHRoZQotLy8gZmlyc3QgayBmaWVsZHMgb2YgdDEgZXF1YWxzIHRoZSBmaXJzdCBrIGZpZWxkcyBv
ZiB0Mi4KLS8vIFNhbWVTaXplVHVwbGVQcmVmaXhDb21wYXJhdG9yKGsxLCBrMikgd291bGQgYmUg
YSBjb21waWxlciBlcnJvciBpZgotLy8gazEgIT0gazIuCi10ZW1wbGF0ZSA8aW50IGtTaXplMSwg
aW50IGtTaXplMj4KLXN0cnVjdCBTYW1lU2l6ZVR1cGxlUHJlZml4Q29tcGFyYXRvcjsKLQotdGVt
cGxhdGUgPD4KLXN0cnVjdCBTYW1lU2l6ZVR1cGxlUHJlZml4Q29tcGFyYXRvcjwwLCAwPiB7Ci0g
IHRlbXBsYXRlIDxjbGFzcyBUdXBsZTEsIGNsYXNzIFR1cGxlMj4KLSAgc3RhdGljIGJvb2wgRXEo
Y29uc3QgVHVwbGUxJiAvKiB0MSAqLywgY29uc3QgVHVwbGUyJiAvKiB0MiAqLykgewotICAgIHJl
dHVybiB0cnVlOwotICB9Ci19OwotCi10ZW1wbGF0ZSA8aW50IGs+Ci1zdHJ1Y3QgU2FtZVNpemVU
dXBsZVByZWZpeENvbXBhcmF0b3I8aywgaz4gewotICB0ZW1wbGF0ZSA8Y2xhc3MgVHVwbGUxLCBj
bGFzcyBUdXBsZTI+Ci0gIHN0YXRpYyBib29sIEVxKGNvbnN0IFR1cGxlMSYgdDEsIGNvbnN0IFR1
cGxlMiYgdDIpIHsKLSAgICByZXR1cm4gU2FtZVNpemVUdXBsZVByZWZpeENvbXBhcmF0b3I8ayAt
IDEsIGsgLSAxPjo6RXEodDEsIHQyKSAmJgotICAgICAgICA6OnN0ZDo6dHIxOjpnZXQ8ayAtIDE+
KHQxKSA9PSA6OnN0ZDo6dHIxOjpnZXQ8ayAtIDE+KHQyKTsKLSAgfQotfTsKLQotfSAgLy8gbmFt
ZXNwYWNlIGd0ZXN0X2ludGVybmFsCi0KLXRlbXBsYXRlIDxHVEVTVF8kKG4pX1RZUEVOQU1FU18o
VCksIEdURVNUXyQobilfVFlQRU5BTUVTXyhVKT4KLWlubGluZSBib29sIG9wZXJhdG9yPT0oY29u
c3QgR1RFU1RfJChuKV9UVVBMRV8oVCkmIHQsCi0gICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IEdURVNUXyQobilfVFVQTEVfKFUpJiB1KSB7Ci0gIHJldHVybiBndGVzdF9pbnRlcm5hbDo6U2Ft
ZVNpemVUdXBsZVByZWZpeENvbXBhcmF0b3I8Ci0gICAgICB0dXBsZV9zaXplPEdURVNUXyQobilf
VFVQTEVfKFQpID46OnZhbHVlLAotICAgICAgdHVwbGVfc2l6ZTxHVEVTVF8kKG4pX1RVUExFXyhV
KSA+Ojp2YWx1ZT46OkVxKHQsIHUpOwotfQotCi10ZW1wbGF0ZSA8R1RFU1RfJChuKV9UWVBFTkFN
RVNfKFQpLCBHVEVTVF8kKG4pX1RZUEVOQU1FU18oVSk+Ci1pbmxpbmUgYm9vbCBvcGVyYXRvciE9
KGNvbnN0IEdURVNUXyQobilfVFVQTEVfKFQpJiB0LAotICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBHVEVTVF8kKG4pX1RVUExFXyhVKSYgdSkgeyByZXR1cm4gISh0ID09IHUpOyB9Ci0KLS8v
IDYuMS40IFBhaXJzLgotLy8gVW5pbXBsZW1lbnRlZC4KLQotfSAgLy8gbmFtZXNwYWNlIHRyMQot
fSAgLy8gbmFtZXNwYWNlIHN0ZAotCi0KLSRmb3IgaiBbWwotI3VuZGVmIEdURVNUXyQoailfVFVQ
TEVfCi0KLV1dCi0KLQotJGZvciBqIFtbCi0jdW5kZWYgR1RFU1RfJChqKV9UWVBFTkFNRVNfCi0K
LV1dCi0KLSN1bmRlZiBHVEVTVF9ERUNMQVJFX1RVUExFX0FTX0ZSSUVORF8KLSN1bmRlZiBHVEVT
VF9CWV9SRUZfCi0jdW5kZWYgR1RFU1RfQUREX1JFRl8KLSN1bmRlZiBHVEVTVF9UVVBMRV9FTEVN
RU5UXwotCi0jZW5kaWYgIC8vIEdURVNUX0lOQ0xVREVfR1RFU1RfSU5URVJOQUxfR1RFU1RfVFVQ
TEVfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMv
aW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC10eXBlLXV0aWwuaCBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhp
cmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC10eXBl
LXV0aWwuaAppbmRleCAyOGU0MTEyNDUzNjFjMDhmMjg3MDdlOTI0OGU2ZDAzMzIwZTY4NjE4Li4w
ODJmZGFkMTJjMDNhZjBjNTIzZTk4MzcxYTU3Zjk5NDY2NmNiNjI3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL2luY2x1ZGUvZ3Rlc3QvaW50ZXJuYWwv
Z3Rlc3QtdHlwZS11dGlsLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0
L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LXR5cGUtdXRpbC5oCkBAIC0xLDcgKzEs
MyBAQAotLy8gVGhpcyBmaWxlIHdhcyBHRU5FUkFURUQgYnkgY29tbWFuZDoKLS8vICAgICBwdW1w
LnB5IGd0ZXN0LXR5cGUtdXRpbC5oLnB1bXAKLS8vIERPIE5PVCBFRElUIEJZIEhBTkQhISEKLQog
Ly8gQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4KIC8vIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAv
LwpAQCAtMzEsMTQgKzI3LDggQEAKIC8vIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogLy8gT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAot
CiAvLyBUeXBlIHV0aWxpdGllcyBuZWVkZWQgZm9yIGltcGxlbWVudGluZyB0eXBlZCBhbmQgdHlw
ZS1wYXJhbWV0ZXJpemVkCi0vLyB0ZXN0cy4gIFRoaXMgZmlsZSBpcyBnZW5lcmF0ZWQgYnkgYSBT
Q1JJUFQuICBETyBOT1QgRURJVCBCWSBIQU5EIQotLy8KLS8vIEN1cnJlbnRseSB3ZSBzdXBwb3J0
IGF0IG1vc3QgNTAgdHlwZXMgaW4gYSBsaXN0LCBhbmQgYXQgbW9zdCA1MAotLy8gdHlwZS1wYXJh
bWV0ZXJpemVkIHRlc3RzIGluIG9uZSB0eXBlLXBhcmFtZXRlcml6ZWQgdGVzdCBjYXNlLgotLy8g
UGxlYXNlIGNvbnRhY3QgZ29vZ2xldGVzdGZyYW1ld29ya0Bnb29nbGVncm91cHMuY29tIGlmIHlv
dSBuZWVkCi0vLyBtb3JlLgorLy8gdGVzdHMuCiAKIC8vIEdPT0dMRVRFU1RfQ00wMDAxIERPIE5P
VCBERUxFVEUKIApAQCAtODksNyArNzksNyBAQCBzdGQ6OnN0cmluZyBHZXRUeXBlTmFtZSgpIHsK
ICMgICBpZiBHVEVTVF9IQVNfQ1hYQUJJX0hfCiAgIHVzaW5nIGFiaTo6X19jeGFfZGVtYW5nbGU7
CiAjICAgZW5kaWYgIC8vIEdURVNUX0hBU19DWFhBQklfSF8KLSAgY2hhciogY29uc3QgcmVhZGFi
bGVfbmFtZSA9IF9fY3hhX2RlbWFuZ2xlKG5hbWUsIDAsIDAsICZzdGF0dXMpOworICBjaGFyKiBj
b25zdCByZWFkYWJsZV9uYW1lID0gX19jeGFfZGVtYW5nbGUobmFtZSwgbnVsbHB0ciwgbnVsbHB0
ciwgJnN0YXR1cyk7CiAgIGNvbnN0IHN0ZDo6c3RyaW5nIG5hbWVfc3RyKHN0YXR1cyA9PSAwID8g
cmVhZGFibGVfbmFtZSA6IG5hbWUpOwogICBmcmVlKHJlYWRhYmxlX25hbWUpOwogICByZXR1cm4g
Q2Fub25pY2FsaXplRm9yU3RkTGliVmVyc2lvbmluZyhuYW1lX3N0cik7CkBAIC0xMDYsMTUzNiAr
OTYsOSBAQCBzdGQ6OnN0cmluZyBHZXRUeXBlTmFtZSgpIHsKIAogI2lmIEdURVNUX0hBU19UWVBF
RF9URVNUIHx8IEdURVNUX0hBU19UWVBFRF9URVNUX1AKIAotLy8gQXNzZXJ0eVR5cGVFcTxUMSwg
VDI+Ojp0eXBlIGlzIGRlZmluZWQgaWZmIFQxIGFuZCBUMiBhcmUgdGhlIHNhbWUKLS8vIHR5cGUu
ICBUaGlzIGNhbiBiZSB1c2VkIGFzIGEgY29tcGlsZS10aW1lIGFzc2VydGlvbiB0byBlbnN1cmUg
dGhhdAotLy8gdHdvIHR5cGVzIGFyZSBlcXVhbC4KLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0
eXBlbmFtZSBUMj4KLXN0cnVjdCBBc3NlcnRUeXBlRXE7Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBU
Pgotc3RydWN0IEFzc2VydFR5cGVFcTxULCBUPiB7Ci0gIHR5cGVkZWYgYm9vbCB0eXBlOwotfTsK
LQotLy8gQSB1bmlxdWUgdHlwZSB1c2VkIGFzIHRoZSBkZWZhdWx0IHZhbHVlIGZvciB0aGUgYXJn
dW1lbnRzIG9mIGNsYXNzCi0vLyB0ZW1wbGF0ZSBUeXBlcy4gIFRoaXMgYWxsb3dzIHVzIHRvIHNp
bXVsYXRlIHZhcmlhZGljIHRlbXBsYXRlcwotLy8gKGUuZy4gVHlwZXM8aW50PiwgVHlwZTxpbnQs
IGRvdWJsZT4sIGFuZCBldGMpLCB3aGljaCBDKysgZG9lc24ndAotLy8gc3VwcG9ydCBkaXJlY3Rs
eS4KKy8vIEEgdW5pcXVlIHR5cGUgaW5kaWNhdGluZyBhbiBlbXB0eSBub2RlCiBzdHJ1Y3QgTm9u
ZSB7fTsKIAotLy8gVGhlIGZvbGxvd2luZyBmYW1pbHkgb2Ygc3RydWN0IGFuZCBzdHJ1Y3QgdGVt
cGxhdGVzIGFyZSB1c2VkIHRvCi0vLyByZXByZXNlbnQgdHlwZSBsaXN0cy4gIEluIHBhcnRpY3Vs
YXIsIFR5cGVzTjxUMSwgVDIsIC4uLiwgVE4+Ci0vLyByZXByZXNlbnRzIGEgdHlwZSBsaXN0IHdp
dGggTiB0eXBlcyAoVDEsIFQyLCAuLi4sIGFuZCBUTikgaW4gaXQuCi0vLyBFeGNlcHQgZm9yIFR5
cGVzMCwgZXZlcnkgc3RydWN0IGluIHRoZSBmYW1pbHkgaGFzIHR3byBtZW1iZXIgdHlwZXM6Ci0v
LyBIZWFkIGZvciB0aGUgZmlyc3QgdHlwZSBpbiB0aGUgbGlzdCwgYW5kIFRhaWwgZm9yIHRoZSBy
ZXN0IG9mIHRoZQotLy8gbGlzdC4KLQotLy8gVGhlIGVtcHR5IHR5cGUgbGlzdC4KLXN0cnVjdCBU
eXBlczAge307Ci0KLS8vIFR5cGUgbGlzdHMgb2YgbGVuZ3RoIDEsIDIsIDMsIGFuZCBzbyBvbi4K
LQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxPgotc3RydWN0IFR5cGVzMSB7Ci0gIHR5cGVkZWYgVDEg
SGVhZDsKLSAgdHlwZWRlZiBUeXBlczAgVGFpbDsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEs
IHR5cGVuYW1lIFQyPgotc3RydWN0IFR5cGVzMiB7Ci0gIHR5cGVkZWYgVDEgSGVhZDsKLSAgdHlw
ZWRlZiBUeXBlczE8VDI+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVu
YW1lIFQyLCB0eXBlbmFtZSBUMz4KLXN0cnVjdCBUeXBlczMgewotICB0eXBlZGVmIFQxIEhlYWQ7
Ci0gIHR5cGVkZWYgVHlwZXMyPFQyLCBUMz4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFt
ZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUND4KLXN0cnVjdCBUeXBl
czQgewotICB0eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5cGVkZWYgVHlwZXMzPFQyLCBUMywgVDQ+IFRh
aWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBU
MywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1Pgotc3RydWN0IFR5cGVzNSB7Ci0gIHR5cGVkZWYg
VDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczQ8VDIsIFQzLCBUNCwgVDU+IFRhaWw7Ci19OwotCi10
ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUg
VDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2Pgotc3RydWN0IFR5cGVzNiB7Ci0gIHR5
cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczU8VDIsIFQzLCBUNCwgVDUsIFQ2PiBUYWls
OwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMs
IHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDc+
Ci1zdHJ1Y3QgVHlwZXM3IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzNjxU
MiwgVDMsIFQ0LCBUNSwgVDYsIFQ3PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQx
LCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAg
ICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4Pgotc3RydWN0IFR5cGVzOCB7
Ci0gIHR5cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczc8VDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDg+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQy
LCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2
LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5Pgotc3RydWN0IFR5cGVzOSB7
Ci0gIHR5cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczg8VDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFt
ZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFt
ZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEw
Pgotc3RydWN0IFR5cGVzMTAgewotICB0eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5cGVkZWYgVHlwZXM5
PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwPiBUYWlsOwotfTsKLQotdGVtcGxh
dGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0
eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0
eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMT4KLXN0cnVjdCBUeXBl
czExIHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMTA8VDIsIFQzLCBUNCwg
VDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMT4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBl
bmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUg
VDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUg
VDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMj4KLXN0cnVj
dCBUeXBlczEyIHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMTE8VDIsIFQz
LCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyPiBUYWlsOwotfTsKLQotdGVt
cGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0
LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4
LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUg
VDEyLCB0eXBlbmFtZSBUMTM+Ci1zdHJ1Y3QgVHlwZXMxMyB7Ci0gIHR5cGVkZWYgVDEgSGVhZDsK
LSAgdHlwZWRlZiBUeXBlczEyPFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBU
MTEsIFQxMiwgVDEzPiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFt
ZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFt
ZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEw
LAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1l
IFQxND4KLXN0cnVjdCBUeXBlczE0IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5
cGVzMTM8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMs
IFQxND4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5
cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5
cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0
eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5
cGVuYW1lIFQxNT4KLXN0cnVjdCBUeXBlczE1IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBl
ZGVmIFR5cGVzMTQ8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEy
LCBUMTMsIFQxNCwKLSAgICAgIFQxNT4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBU
MSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0g
ICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5
cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEz
LCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTY+Ci1zdHJ1Y3Qg
VHlwZXMxNiB7Ci0gIHR5cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczE1PFQyLCBUMywg
VDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAg
ICAgIFQxNj4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIs
IHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYs
IHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAg
ICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQs
IHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNz4KLXN0cnVjdCBU
eXBlczE3IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMTY8VDIsIFQzLCBU
NCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAg
ICAgVDE2LCBUMTc+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1l
IFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1l
IFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAs
Ci0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUg
VDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVu
YW1lIFQxOD4KLXN0cnVjdCBUeXBlczE4IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVm
IFR5cGVzMTc8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBU
MTMsIFQxNCwgVDE1LAotICAgICAgVDE2LCBUMTcsIFQxOD4gVGFpbDsKLX07Ci0KLXRlbXBsYXRl
IDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlw
ZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlw
ZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwg
dHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBU
MTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTk+Ci1zdHJ1Y3QgVHlw
ZXMxOSB7Ci0gIHR5cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczE4PFQyLCBUMywgVDQs
IFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICAg
IFQxNiwgVDE3LCBUMTgsIFQxOT4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwg
dHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAg
dHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVu
YW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0
eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQx
NywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMD4KLXN0cnVjdCBUeXBl
czIwIHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMTk8VDIsIFQzLCBUNCwg
VDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAg
VDE2LCBUMTcsIFQxOCwgVDE5LCBUMjA+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUg
VDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAot
ICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0
eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQx
MywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFt
ZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlw
ZW5hbWUgVDIxPgotc3RydWN0IFR5cGVzMjEgewotICB0eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5cGVk
ZWYgVHlwZXMyMDxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIs
IFQxMywgVDE0LCBUMTUsCi0gICAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxPiBUYWls
OwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMs
IHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcs
IHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQx
MSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1
LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1l
IFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyPgotc3Ry
dWN0IFR5cGVzMjIgewotICB0eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5cGVkZWYgVHlwZXMyMTxUMiwg
VDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUs
Ci0gICAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjI+IFRhaWw7Ci19OwotCi10
ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUg
VDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUg
VDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFt
ZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlw
ZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBl
bmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMz4K
LXN0cnVjdCBUeXBlczIzIHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMjI8
VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwg
VDE1LAotICAgICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjM+IFRhaWw7
Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywg
dHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywg
dHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDEx
LCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUs
Ci0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUg
VDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVu
YW1lIFQyMywgdHlwZW5hbWUgVDI0Pgotc3RydWN0IFR5cGVzMjQgewotICB0eXBlZGVmIFQxIEhl
YWQ7Ci0gIHR5cGVkZWYgVHlwZXMyMzxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQx
MCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQy
MCwgVDIxLCBUMjIsIFQyMywgVDI0PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQx
LCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAg
ICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlw
ZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMs
IHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUg
VDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVu
YW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5h
bWUgVDI1Pgotc3RydWN0IFR5cGVzMjUgewotICB0eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5cGVkZWYg
VHlwZXMyNDxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQx
MywgVDE0LCBUMTUsCi0gICAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQy
MywgVDI0LCBUMjU+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1l
IFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1l
IFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAs
Ci0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUg
VDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVu
YW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0
eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0g
ICAgdHlwZW5hbWUgVDI2Pgotc3RydWN0IFR5cGVzMjYgewotICB0eXBlZGVmIFQxIEhlYWQ7Ci0g
IHR5cGVkZWYgVHlwZXMyNTxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDEx
LCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIx
LCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNj4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFt
ZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUs
Ci0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDks
IHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUg
VDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVu
YW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0
eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5
cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNz4KLXN0cnVjdCBUeXBl
czI3IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMjY8VDIsIFQzLCBUNCwg
VDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAg
VDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQy
Nz4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVu
YW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVu
YW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBl
bmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVu
YW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0
eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQy
MiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFt
ZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4Pgotc3RydWN0IFR5cGVzMjggewotICB0
eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5cGVkZWYgVHlwZXMyNzxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3
LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgICBUMTYsIFQxNywg
VDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjg+IFRh
aWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBU
MywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBU
NywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUg
VDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBU
MTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5h
bWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5
cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2
LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5Pgotc3RydWN0IFR5cGVz
MjkgewotICB0eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5cGVkZWYgVHlwZXMyODxUMiwgVDMsIFQ0LCBU
NSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgICBU
MTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3
LCBUMjgsCi0gICAgICBUMjk+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5
cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5
cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFt
ZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlw
ZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcs
IHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUg
VDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBU
MjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5h
bWUgVDI5LCB0eXBlbmFtZSBUMzA+Ci1zdHJ1Y3QgVHlwZXMzMCB7Ci0gIHR5cGVkZWYgVDEgSGVh
ZDsKLSAgdHlwZWRlZiBUeXBlczI5PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEw
LCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICAgIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIw
LCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAotICAgICAgVDMw
PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5h
bWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5h
bWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVu
YW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5h
bWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5
cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIy
LCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1l
IFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUg
VDMwLAotICAgIHR5cGVuYW1lIFQzMT4KLXN0cnVjdCBUeXBlczMxIHsKLSAgdHlwZWRlZiBUMSBI
ZWFkOwotICB0eXBlZGVmIFR5cGVzMzA8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBU
MTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBU
MjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgICBU
MzAsIFQzMT4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIs
IHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYs
IHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAg
ICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQs
IHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUg
VDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVu
YW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0
eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5
cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMj4KLXN0cnVjdCBUeXBl
czMyIHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMzE8VDIsIFQzLCBUNCwg
VDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAg
VDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQy
NywgVDI4LCBUMjksCi0gICAgICBUMzAsIFQzMSwgVDMyPiBUYWlsOwotfTsKLQotdGVtcGxhdGUg
PHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBl
bmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBl
bmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0
eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQx
NiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIw
LAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1l
IFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBl
bmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwg
dHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzM+Ci1zdHJ1Y3QgVHlwZXMzMyB7Ci0gIHR5cGVkZWYg
VDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczMyPFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBU
OSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICAgIFQxNiwgVDE3LCBUMTgsIFQx
OSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAotICAg
ICAgVDMwLCBUMzEsIFQzMiwgVDMzPiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQx
LCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAg
ICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlw
ZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMs
IHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUg
VDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVu
YW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5h
bWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5
cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMy
LCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzND4KLXN0cnVjdCBUeXBlczM0IHsKLSAgdHlwZWRl
ZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMzM8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgs
IFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAgVDE2LCBUMTcsIFQxOCwg
VDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0g
ICAgICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzND4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBl
bmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUg
VDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUg
VDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5h
bWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5
cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAg
ICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQs
IHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUg
VDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVu
YW1lIFQzMiwgdHlwZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNT4KLXN0cnVj
dCBUeXBlczM1IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMzQ8VDIsIFQz
LCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAot
ICAgICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBU
MjYsIFQyNywgVDI4LCBUMjksCi0gICAgICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1PiBU
YWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUg
VDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUg
VDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1l
IFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUg
VDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVu
YW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0
eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQy
NiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMw
LAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1l
IFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNj4KLXN0cnVjdCBUeXBlczM2IHsK
LSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzMzU8VDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAgVDE2LCBU
MTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4
LCBUMjksCi0gICAgICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzY+IFRhaWw7Ci19
OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlw
ZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlw
ZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0
eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0g
ICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5
LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1l
IFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBl
bmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAg
dHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0
eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzc+Ci1zdHJ1Y3QgVHlw
ZXMzNyB7Ci0gIHR5cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczM2PFQyLCBUMywgVDQs
IFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICAg
IFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBU
MjcsIFQyOCwgVDI5LAotICAgICAgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBU
Mzc+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBl
bmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBl
bmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlw
ZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBl
bmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwg
dHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBU
MjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5h
bWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFt
ZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlw
ZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcs
IHR5cGVuYW1lIFQzOD4KLXN0cnVjdCBUeXBlczM4IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0
eXBlZGVmIFR5cGVzMzc8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwg
VDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwg
VDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgICBUMzAsIFQzMSwg
VDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4PiBUYWlsOwotfTsKLQotdGVtcGxhdGUg
PHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBl
bmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBl
bmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0
eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQx
NiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIw
LAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1l
IFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBl
bmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwg
dHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAot
ICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQz
OT4KLXN0cnVjdCBUeXBlczM5IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVz
Mzg8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQx
NCwgVDE1LAotICAgICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQy
NCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQz
NCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzk+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5h
bWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1
LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5
LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1l
IFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBl
bmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAg
dHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0
eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQy
OCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFt
ZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlw
ZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBl
bmFtZSBUNDA+Ci1zdHJ1Y3QgVHlwZXM0MCB7Ci0gIHR5cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRl
ZiBUeXBlczM5PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwg
VDEzLCBUMTQsIFQxNSwKLSAgICAgIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwg
VDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAotICAgICAgVDMwLCBUMzEsIFQzMiwg
VDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDA+IFRhaWw7Ci19OwotCi10ZW1w
bGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQs
IHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgs
IHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBU
MTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5h
bWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFt
ZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlw
ZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcs
IHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUg
VDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBU
MzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlwZW5h
bWUgVDM5LCB0eXBlbmFtZSBUNDAsCi0gICAgdHlwZW5hbWUgVDQxPgotc3RydWN0IFR5cGVzNDEg
ewotICB0eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5cGVkZWYgVHlwZXM0MDxUMiwgVDMsIFQ0LCBUNSwg
VDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgICBUMTYs
IFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBU
MjgsIFQyOSwKLSAgICAgIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBU
MzgsIFQzOSwgVDQwLCBUNDE+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5
cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5
cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFt
ZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlw
ZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcs
IHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUg
VDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBU
MjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5h
bWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5
cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2
LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAs
Ci0gICAgdHlwZW5hbWUgVDQxLCB0eXBlbmFtZSBUNDI+Ci1zdHJ1Y3QgVHlwZXM0MiB7Ci0gIHR5
cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczQxPFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcs
IFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICAgIFQxNiwgVDE3LCBU
MTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5
LAotICAgICAgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5
LCBUNDAsIFQ0MSwgVDQyPiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBl
bmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBl
bmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUg
VDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVu
YW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0
eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQy
MSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1
LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1l
IFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBl
bmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwg
dHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAot
ICAgIHR5cGVuYW1lIFQ0MSwgdHlwZW5hbWUgVDQyLCB0eXBlbmFtZSBUNDM+Ci1zdHJ1Y3QgVHlw
ZXM0MyB7Ci0gIHR5cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczQyPFQyLCBUMywgVDQs
IFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICAg
IFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBU
MjcsIFQyOCwgVDI5LAotICAgICAgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBU
MzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwgVDQyLAotICAgICAgVDQzPiBUYWlsOwotfTsKLQotdGVt
cGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0
LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4
LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUg
VDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVu
YW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5h
bWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5
cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3
LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1l
IFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUg
VDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVu
YW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwgdHlwZW5hbWUgVDQyLCB0
eXBlbmFtZSBUNDMsIHR5cGVuYW1lIFQ0ND4KLXN0cnVjdCBUeXBlczQ0IHsKLSAgdHlwZWRlZiBU
MSBIZWFkOwotICB0eXBlZGVmIFR5cGVzNDM8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5
LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAgVDE2LCBUMTcsIFQxOCwgVDE5
LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAg
ICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwg
VDQxLCBUNDIsIFQ0MywKLSAgICAgIFQ0ND4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDx0eXBlbmFt
ZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUs
Ci0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDks
IHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUg
VDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVu
YW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0
eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5
cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4
LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1l
IFQzMiwgdHlwZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBl
bmFtZSBUMzYsIHR5cGVuYW1lIFQzNywgdHlwZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVu
YW1lIFQ0MCwKLSAgICB0eXBlbmFtZSBUNDEsIHR5cGVuYW1lIFQ0MiwgdHlwZW5hbWUgVDQzLCB0
eXBlbmFtZSBUNDQsIHR5cGVuYW1lIFQ0NT4KLXN0cnVjdCBUeXBlczQ1IHsKLSAgdHlwZWRlZiBU
MSBIZWFkOwotICB0eXBlZGVmIFR5cGVzNDQ8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5
LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAgVDE2LCBUMTcsIFQxOCwgVDE5
LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAg
ICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwg
VDQxLCBUNDIsIFQ0MywKLSAgICAgIFQ0NCwgVDQ1PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5
cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFt
ZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFt
ZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBl
bmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwg
dHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAot
ICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQy
NCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFt
ZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlw
ZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAg
IHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwg
dHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwgdHlwZW5hbWUgVDQyLCB0eXBlbmFtZSBU
NDMsIHR5cGVuYW1lIFQ0NCwgdHlwZW5hbWUgVDQ1LAotICAgIHR5cGVuYW1lIFQ0Nj4KLXN0cnVj
dCBUeXBlczQ2IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzNDU8VDIsIFQz
LCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAot
ICAgICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBU
MjYsIFQyNywgVDI4LCBUMjksCi0gICAgICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBU
MzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsIFQ0MywKLSAgICAgIFQ0NCwgVDQ1LCBU
NDY+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBl
bmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBl
bmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlw
ZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBl
bmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwg
dHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBU
MjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5h
bWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFt
ZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlw
ZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcs
IHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAsCi0gICAgdHlwZW5hbWUg
VDQxLCB0eXBlbmFtZSBUNDIsIHR5cGVuYW1lIFQ0MywgdHlwZW5hbWUgVDQ0LCB0eXBlbmFtZSBU
NDUsCi0gICAgdHlwZW5hbWUgVDQ2LCB0eXBlbmFtZSBUNDc+Ci1zdHJ1Y3QgVHlwZXM0NyB7Ci0g
IHR5cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczQ2PFQyLCBUMywgVDQsIFQ1LCBUNiwg
VDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICAgIFQxNiwgVDE3
LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwg
VDI5LAotICAgICAgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwg
VDM5LCBUNDAsIFQ0MSwgVDQyLCBUNDMsCi0gICAgICBUNDQsIFQ0NSwgVDQ2LCBUNDc+IFRhaWw7
Ci19OwotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywg
dHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywg
dHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDEx
LCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUs
Ci0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUg
VDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVu
YW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0
eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0g
ICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0
LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1l
IFQzOCwgdHlwZW5hbWUgVDM5LCB0eXBlbmFtZSBUNDAsCi0gICAgdHlwZW5hbWUgVDQxLCB0eXBl
bmFtZSBUNDIsIHR5cGVuYW1lIFQ0MywgdHlwZW5hbWUgVDQ0LCB0eXBlbmFtZSBUNDUsCi0gICAg
dHlwZW5hbWUgVDQ2LCB0eXBlbmFtZSBUNDcsIHR5cGVuYW1lIFQ0OD4KLXN0cnVjdCBUeXBlczQ4
IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzNDc8VDIsIFQzLCBUNCwgVDUs
IFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgICAgVDE2
LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywg
VDI4LCBUMjksCi0gICAgICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywg
VDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsIFQ0MywKLSAgICAgIFQ0NCwgVDQ1LCBUNDYsIFQ0Nywg
VDQ4PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlw
ZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlw
ZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5
cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlw
ZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgs
IHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUg
VDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVu
YW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5h
bWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5
cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3
LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1l
IFQ0MSwgdHlwZW5hbWUgVDQyLCB0eXBlbmFtZSBUNDMsIHR5cGVuYW1lIFQ0NCwgdHlwZW5hbWUg
VDQ1LAotICAgIHR5cGVuYW1lIFQ0NiwgdHlwZW5hbWUgVDQ3LCB0eXBlbmFtZSBUNDgsIHR5cGVu
YW1lIFQ0OT4KLXN0cnVjdCBUeXBlczQ5IHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVm
IFR5cGVzNDg8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBU
MTMsIFQxNCwgVDE1LAotICAgICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBU
MjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgICBUMzAsIFQzMSwgVDMyLCBU
MzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsIFQ0MywKLSAg
ICAgIFQ0NCwgVDQ1LCBUNDYsIFQ0NywgVDQ4LCBUNDk+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8
dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVu
YW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVu
YW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5
cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2
LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAs
Ci0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUg
VDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVu
YW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0
eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0g
ICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlwZW5hbWUgVDM5
LCB0eXBlbmFtZSBUNDAsCi0gICAgdHlwZW5hbWUgVDQxLCB0eXBlbmFtZSBUNDIsIHR5cGVuYW1l
IFQ0MywgdHlwZW5hbWUgVDQ0LCB0eXBlbmFtZSBUNDUsCi0gICAgdHlwZW5hbWUgVDQ2LCB0eXBl
bmFtZSBUNDcsIHR5cGVuYW1lIFQ0OCwgdHlwZW5hbWUgVDQ5LCB0eXBlbmFtZSBUNTA+Ci1zdHJ1
Y3QgVHlwZXM1MCB7Ci0gIHR5cGVkZWYgVDEgSGVhZDsKLSAgdHlwZWRlZiBUeXBlczQ5PFQyLCBU
MywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwK
LSAgICAgIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwg
VDI2LCBUMjcsIFQyOCwgVDI5LAotICAgICAgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwg
VDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwgVDQyLCBUNDMsCi0gICAgICBUNDQsIFQ0NSwg
VDQ2LCBUNDcsIFQ0OCwgVDQ5LCBUNTA+IFRhaWw7Ci19OwotCi0KLX0gIC8vIG5hbWVzcGFjZSBp
bnRlcm5hbAotCi0vLyBXZSBkb24ndCB3YW50IHRvIHJlcXVpcmUgdGhlIHVzZXJzIHRvIHdyaXRl
IFR5cGVzTjwuLi4+IGRpcmVjdGx5LAotLy8gYXMgdGhhdCB3b3VsZCByZXF1aXJlIHRoZW0gdG8g
Y291bnQgdGhlIGxlbmd0aC4gIFR5cGVzPC4uLj4gaXMgbXVjaAotLy8gZWFzaWVyIHRvIHdyaXRl
LCBidXQgZ2VuZXJhdGVzIGhvcnJpYmxlIG1lc3NhZ2VzIHdoZW4gdGhlcmUgaXMgYQotLy8gY29t
cGlsZXIgZXJyb3IsIGFzIGdjYyBpbnNpc3RzIG9uIHByaW50aW5nIG91dCBlYWNoIHRlbXBsYXRl
Ci0vLyBhcmd1bWVudCwgZXZlbiBpZiBpdCBoYXMgdGhlIGRlZmF1bHQgdmFsdWUgKHRoaXMgbWVh
bnMgVHlwZXM8aW50PgotLy8gd2lsbCBhcHBlYXIgYXMgVHlwZXM8aW50LCBOb25lLCBOb25lLCAu
Li4sIE5vbmU+IGluIHRoZSBjb21waWxlcgotLy8gZXJyb3JzKS4KLS8vCi0vLyBPdXIgc29sdXRp
b24gaXMgdG8gY29tYmluZSB0aGUgYmVzdCBwYXJ0IG9mIHRoZSB0d28gYXBwcm9hY2hlczogYQot
Ly8gdXNlciB3b3VsZCB3cml0ZSBUeXBlczxUMSwgLi4uLCBUTj4sIGFuZCBHb29nbGUgVGVzdCB3
aWxsIHRyYW5zbGF0ZQotLy8gdGhhdCB0byBUeXBlc048VDEsIC4uLiwgVE4+IGludGVybmFsbHkg
dG8gbWFrZSBlcnJvciBtZXNzYWdlcwotLy8gcmVhZGFibGUuICBUaGUgdHJhbnNsYXRpb24gaXMg
ZG9uZSBieSB0aGUgJ3R5cGUnIG1lbWJlciBvZiB0aGUKLS8vIFR5cGVzIHRlbXBsYXRlLgotdGVt
cGxhdGUgPHR5cGVuYW1lIFQxID0gaW50ZXJuYWw6Ok5vbmUsIHR5cGVuYW1lIFQyID0gaW50ZXJu
YWw6Ok5vbmUsCi0gICAgdHlwZW5hbWUgVDMgPSBpbnRlcm5hbDo6Tm9uZSwgdHlwZW5hbWUgVDQg
PSBpbnRlcm5hbDo6Tm9uZSwKLSAgICB0eXBlbmFtZSBUNSA9IGludGVybmFsOjpOb25lLCB0eXBl
bmFtZSBUNiA9IGludGVybmFsOjpOb25lLAotICAgIHR5cGVuYW1lIFQ3ID0gaW50ZXJuYWw6Ok5v
bmUsIHR5cGVuYW1lIFQ4ID0gaW50ZXJuYWw6Ok5vbmUsCi0gICAgdHlwZW5hbWUgVDkgPSBpbnRl
cm5hbDo6Tm9uZSwgdHlwZW5hbWUgVDEwID0gaW50ZXJuYWw6Ok5vbmUsCi0gICAgdHlwZW5hbWUg
VDExID0gaW50ZXJuYWw6Ok5vbmUsIHR5cGVuYW1lIFQxMiA9IGludGVybmFsOjpOb25lLAotICAg
IHR5cGVuYW1lIFQxMyA9IGludGVybmFsOjpOb25lLCB0eXBlbmFtZSBUMTQgPSBpbnRlcm5hbDo6
Tm9uZSwKLSAgICB0eXBlbmFtZSBUMTUgPSBpbnRlcm5hbDo6Tm9uZSwgdHlwZW5hbWUgVDE2ID0g
aW50ZXJuYWw6Ok5vbmUsCi0gICAgdHlwZW5hbWUgVDE3ID0gaW50ZXJuYWw6Ok5vbmUsIHR5cGVu
YW1lIFQxOCA9IGludGVybmFsOjpOb25lLAotICAgIHR5cGVuYW1lIFQxOSA9IGludGVybmFsOjpO
b25lLCB0eXBlbmFtZSBUMjAgPSBpbnRlcm5hbDo6Tm9uZSwKLSAgICB0eXBlbmFtZSBUMjEgPSBp
bnRlcm5hbDo6Tm9uZSwgdHlwZW5hbWUgVDIyID0gaW50ZXJuYWw6Ok5vbmUsCi0gICAgdHlwZW5h
bWUgVDIzID0gaW50ZXJuYWw6Ok5vbmUsIHR5cGVuYW1lIFQyNCA9IGludGVybmFsOjpOb25lLAot
ICAgIHR5cGVuYW1lIFQyNSA9IGludGVybmFsOjpOb25lLCB0eXBlbmFtZSBUMjYgPSBpbnRlcm5h
bDo6Tm9uZSwKLSAgICB0eXBlbmFtZSBUMjcgPSBpbnRlcm5hbDo6Tm9uZSwgdHlwZW5hbWUgVDI4
ID0gaW50ZXJuYWw6Ok5vbmUsCi0gICAgdHlwZW5hbWUgVDI5ID0gaW50ZXJuYWw6Ok5vbmUsIHR5
cGVuYW1lIFQzMCA9IGludGVybmFsOjpOb25lLAotICAgIHR5cGVuYW1lIFQzMSA9IGludGVybmFs
OjpOb25lLCB0eXBlbmFtZSBUMzIgPSBpbnRlcm5hbDo6Tm9uZSwKLSAgICB0eXBlbmFtZSBUMzMg
PSBpbnRlcm5hbDo6Tm9uZSwgdHlwZW5hbWUgVDM0ID0gaW50ZXJuYWw6Ok5vbmUsCi0gICAgdHlw
ZW5hbWUgVDM1ID0gaW50ZXJuYWw6Ok5vbmUsIHR5cGVuYW1lIFQzNiA9IGludGVybmFsOjpOb25l
LAotICAgIHR5cGVuYW1lIFQzNyA9IGludGVybmFsOjpOb25lLCB0eXBlbmFtZSBUMzggPSBpbnRl
cm5hbDo6Tm9uZSwKLSAgICB0eXBlbmFtZSBUMzkgPSBpbnRlcm5hbDo6Tm9uZSwgdHlwZW5hbWUg
VDQwID0gaW50ZXJuYWw6Ok5vbmUsCi0gICAgdHlwZW5hbWUgVDQxID0gaW50ZXJuYWw6Ok5vbmUs
IHR5cGVuYW1lIFQ0MiA9IGludGVybmFsOjpOb25lLAotICAgIHR5cGVuYW1lIFQ0MyA9IGludGVy
bmFsOjpOb25lLCB0eXBlbmFtZSBUNDQgPSBpbnRlcm5hbDo6Tm9uZSwKLSAgICB0eXBlbmFtZSBU
NDUgPSBpbnRlcm5hbDo6Tm9uZSwgdHlwZW5hbWUgVDQ2ID0gaW50ZXJuYWw6Ok5vbmUsCi0gICAg
dHlwZW5hbWUgVDQ3ID0gaW50ZXJuYWw6Ok5vbmUsIHR5cGVuYW1lIFQ0OCA9IGludGVybmFsOjpO
b25lLAotICAgIHR5cGVuYW1lIFQ0OSA9IGludGVybmFsOjpOb25lLCB0eXBlbmFtZSBUNTAgPSBp
bnRlcm5hbDo6Tm9uZT4KLXN0cnVjdCBUeXBlcyB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVz
NTA8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwKLSAg
ICAgIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIz
LCBUMjQsIFQyNSwgVDI2LAotICAgICAgVDI3LCBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMz
LCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsCi0gICAgICBUNDEsIFQ0MiwgVDQz
LCBUNDQsIFQ0NSwgVDQ2LCBUNDcsIFQ0OCwgVDQ5LCBUNTA+IHR5cGU7Ci19OwotCi10ZW1wbGF0
ZSA8Pgotc3RydWN0IFR5cGVzPGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAg
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczAgdHlw
ZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDE+Ci1zdHJ1Y3QgVHlwZXM8VDEsIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0g
ICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
Ci0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJu
YWw6OlR5cGVzMTxUMT4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1l
IFQyPgotc3RydWN0IFR5cGVzPFQxLCBUMiwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAg
ICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwK
LSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZT4g
ewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczI8VDEsIFQyPiB0eXBlOwotfTsKLXRlbXBsYXRl
IDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzPgotc3RydWN0IFR5cGVzPFQx
LCBUMiwgVDMsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
Ci0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlwZXMzPFQxLCBUMiwg
VDM+IHR5cGU7Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5h
bWUgVDMsIHR5cGVuYW1lIFQ0Pgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAg
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAot
ICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBp
bnRlcm5hbDo6VHlwZXM0PFQxLCBUMiwgVDMsIFQ0PiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBl
bmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUg
VDU+Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczU8VDEsIFQyLCBUMywg
VDQsIFQ1PiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5
cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDY+Ci1z
dHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZT4gewot
ICB0eXBlZGVmIGludGVybmFsOjpUeXBlczY8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNj4gdHlwZTsK
LX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlw
ZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNz4KLXN0
cnVjdCBUeXBlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAg
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50
ZXJuYWw6OlR5cGVzNzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNz4gdHlwZTsKLX07Ci10ZW1w
bGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQs
IHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDg+
Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
Ci0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlwZXM4
PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOD4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlw
ZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1l
IFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1l
IFQ5Pgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIGlu
dGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAg
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzOTxUMSwgVDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5PiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFt
ZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUs
Ci0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDks
IHR5cGVuYW1lIFQxMD4KLXN0cnVjdCBUeXBlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDgsIFQ5LCBUMTAsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAg
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAot
ICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlwZXMxMDxUMSwgVDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTA+IHR5cGU7Ci19OwotdGVtcGxhdGUgPHR5
cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFt
ZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFt
ZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMT4KLXN0cnVjdCBUeXBlczxUMSwg
VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgaW50ZXJuYWw6Ok5vbmUs
Ci0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5
cGVzMTE8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTE+IHR5cGU7
Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5
cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5
cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwg
dHlwZW5hbWUgVDEyPgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBU
OCwgVDksIFQxMCwgVDExLCBUMTIsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAg
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lPiB7Ci0g
IHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzMTI8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4
LCBUOSwgVDEwLCBUMTEsCi0gICAgICBUMTI+IHR5cGU7Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1l
IFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwK
LSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwg
dHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBU
MTM+Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEw
LCBUMTEsIFQxMiwgVDEzLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAg
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAot
ICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5
cGVzMTM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwK
LSAgICAgIFQxMz4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQy
LCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2
LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0g
ICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0
Pgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwg
VDExLCBUMTIsIFQxMywgVDE0LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAot
ICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzMTQ8VDEsIFQyLCBUMywg
VDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwKLSAgICAgIFQxMywgVDE0PiB0
eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQz
LCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3
LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBU
MTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQx
NT4KLXN0cnVjdCBUeXBlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAs
IFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAg
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlwZXMxNTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLAotICAgICAgVDEzLCBUMTQsIFQxNT4gdHlwZTsK
LX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlw
ZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlw
ZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0
eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0g
ICAgdHlwZW5hbWUgVDE2Pgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3
LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgVDE2LCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwK
LSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlwZXMxNjxUMSwgVDIsIFQzLCBUNCwgVDUs
IFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLAotICAgICAgVDEzLCBUMTQsIFQxNSwgVDE2
PiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1l
IFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1l
IFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFt
ZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1l
IFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNz4KLXN0cnVjdCBUeXBlczxUMSwg
VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwg
VDE1LAotICAgIFQxNiwgVDE3LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAg
ICBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczE3PFQxLCBUMiwg
VDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTMsIFQx
NCwgVDE1LCBUMTYsIFQxNz4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVu
YW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVu
YW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBU
MTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5h
bWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5
cGVuYW1lIFQxOD4KLXN0cnVjdCBUeXBlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgs
IFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgIFQxNiwgVDE3LCBUMTgsIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
Ci0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5h
bDo6VHlwZXMxODxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwg
VDEyLAotICAgICAgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOD4gdHlwZTsKLX07Ci10ZW1w
bGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQs
IHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgs
IHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBU
MTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5h
bWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5Pgotc3RydWN0
IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIs
IFQxMywgVDE0LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAot
ICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
PiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzMTk8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwg
VDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwKLSAgICAgIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3
LCBUMTgsIFQxOT4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQy
LCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2
LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0g
ICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0
LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1l
IFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjA+Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBU
MywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwK
LSAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwK
LSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5
cGVzMjA8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwK
LSAgICAgIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwPiB0eXBlOwotfTsK
LXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFt
ZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFt
ZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVu
YW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0
eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5
cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjE+Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywg
VDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAg
ICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0g
ICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczIxPFQxLCBUMiwg
VDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTMsIFQx
NCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxPiB0eXBlOwotfTsKLXRlbXBsYXRl
IDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlw
ZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlw
ZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwg
dHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBU
MTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQy
MCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMj4KLXN0cnVjdCBUeXBlczxUMSwgVDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1
LAotICAgIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAg
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczIyPFQxLCBUMiwgVDMsIFQ0
LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTMsIFQxNCwgVDE1
LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjI+IHR5cGU7Ci19OwotdGVtcGxhdGUg
PHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBl
bmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBl
bmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0
eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQx
NiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIw
LAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjM+Ci1zdHJ1Y3Qg
VHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwg
VDEzLCBUMTQsIFQxNSwKLSAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQy
MywgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGlu
dGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzMjM8VDEsIFQyLCBUMywg
VDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwKLSAgICAgIFQxMywgVDE0LCBU
MTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzPiB0eXBlOwotfTsKLXRl
bXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBU
NCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBU
OCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1l
IFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBl
bmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVu
YW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0
eXBlbmFtZSBUMjQ+Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4
LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICBUMTYsIFQxNywgVDE4LCBU
MTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwK
LSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRl
cm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwKLSAgICBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczI0PFQx
LCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBU
MTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0
PiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1l
IFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1l
IFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFt
ZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1l
IFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBl
bmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwg
dHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNT4KLXN0cnVjdCBUeXBlczxU
MSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQx
NCwgVDE1LAotICAgIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQs
IFQyNSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
Ci0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5h
bDo6VHlwZXMyNTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwg
VDEyLAotICAgICAgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwg
VDIyLCBUMjMsIFQyNCwgVDI1PiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlw
ZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlw
ZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1l
IFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBl
bmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywg
dHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBU
MjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQy
NSwKLSAgICB0eXBlbmFtZSBUMjY+Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBU
NiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICBUMTYsIFQx
NywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgaW50ZXJuYWw6
Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0g
ICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczI2PFQxLCBUMiwgVDMsIFQ0LCBUNSwg
VDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTMsIFQxNCwgVDE1LCBUMTYs
IFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsCi0gICAgICBUMjY+
IHR5cGU7Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUg
VDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUg
VDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1l
IFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUg
VDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVu
YW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0
eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQy
NiwgdHlwZW5hbWUgVDI3Pgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3
LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQx
OCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgaW50ZXJuYWw6
Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0g
ICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVk
ZWYgaW50ZXJuYWw6OlR5cGVzMjc8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwg
VDEwLCBUMTEsIFQxMiwKLSAgICAgIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwg
VDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LAotICAgICAgVDI3PiB0eXBlOwotfTsK
LXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFt
ZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFt
ZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVu
YW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0
eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5
cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIz
LCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1l
IFQyNywgdHlwZW5hbWUgVDI4Pgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYs
IFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgVDE2LCBUMTcs
IFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAot
ICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVy
bmFsOjpUeXBlczI4PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDEx
LCBUMTIsCi0gICAgICBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIx
LCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwKLSAgICAgIFQyNywgVDI4PiB0eXBlOwotfTsKLXRl
bXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBU
NCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBU
OCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1l
IFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBl
bmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVu
YW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0
eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQy
NywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjk+Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywg
VDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAg
ICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwg
VDI3LCBUMjgsIFQyOSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVy
bmFsOjpUeXBlczI5PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDEx
LCBUMTIsCi0gICAgICBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIx
LCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwKLSAgICAgIFQyNywgVDI4LCBUMjk+IHR5cGU7Ci19
OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVu
YW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVu
YW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlw
ZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAg
IHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwg
dHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBU
MjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5h
bWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwPgotc3RydWN0
IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIs
IFQxMywgVDE0LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBU
MjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwKLSAgICBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGlu
dGVybmFsOjpUeXBlczMwPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwg
VDExLCBUMTIsCi0gICAgICBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwg
VDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwKLSAgICAgIFQyNywgVDI4LCBUMjksIFQzMD4g
dHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBU
MywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBU
NywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUg
VDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBU
MTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5h
bWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5
cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2
LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAs
Ci0gICAgdHlwZW5hbWUgVDMxPgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYs
IFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgVDE2LCBUMTcs
IFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBU
MjksIFQzMCwKLSAgICBUMzEsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6
Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmU+
IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlwZXMzMTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBU
NywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLAotICAgICAgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcs
IFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsCi0gICAgICBUMjcs
IFQyOCwgVDI5LCBUMzAsIFQzMT4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5
cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5
cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFt
ZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlw
ZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcs
IHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUg
VDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBU
MjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5h
bWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzI+Ci1z
dHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEs
IFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBU
MjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQyOSwgVDMwLAotICAgIFQzMSwgVDMy
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlwZXMzMjxU
MSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLAotICAgICAg
VDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQy
NCwgVDI1LCBUMjYsCi0gICAgICBUMjcsIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyPiB0eXBlOwot
fTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBl
bmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBl
bmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5
cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAg
ICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTks
IHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUg
VDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVu
YW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0
eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlwZW5hbWUgVDMzPgotc3RydWN0IFR5cGVzPFQx
LCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0
LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwg
VDI1LCBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwKLSAgICBUMzEsIFQzMiwgVDMzLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAg
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZT4g
ewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczMzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3
LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywg
VDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwKLSAgICAgIFQyNywg
VDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMz4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5h
bWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1
LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5
LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1l
IFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBl
bmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAg
dHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0
eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQy
OCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFt
ZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0Pgotc3RydWN0IFR5cGVzPFQxLCBUMiwg
VDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUs
Ci0gICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBU
MjYsIFQyNywgVDI4LCBUMjksIFQzMCwKLSAgICBUMzEsIFQzMiwgVDMzLCBUMzQsIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRl
cm5hbDo6VHlwZXMzNDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQx
MSwgVDEyLAotICAgICAgVDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQy
MSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsCi0gICAgICBUMjcsIFQyOCwgVDI5LCBUMzAsIFQz
MSwgVDMyLCBUMzMsIFQzND4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVu
YW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVu
YW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBU
MTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5h
bWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5
cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIx
LCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUs
Ci0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUg
VDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVu
YW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzU+Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQy
LCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQx
NSwKLSAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUs
IFQyNiwgVDI3LCBUMjgsIFQyOSwgVDMwLAotICAgIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBp
bnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVy
bmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzMzU8
VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwKLSAgICAg
IFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBU
MjQsIFQyNSwgVDI2LAotICAgICAgVDI3LCBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBU
MzQsIFQzNT4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0
eXBlbmFtZSBUMywgdHlwZW5hbWUgVDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0
eXBlbmFtZSBUNywgdHlwZW5hbWUgVDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAg
dHlwZW5hbWUgVDExLCB0eXBlbmFtZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0
eXBlbmFtZSBUMTUsCi0gICAgdHlwZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQx
OCwgdHlwZW5hbWUgVDE5LCB0eXBlbmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFt
ZSBUMjIsIHR5cGVuYW1lIFQyMywgdHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlw
ZW5hbWUgVDI2LCB0eXBlbmFtZSBUMjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBl
bmFtZSBUMzAsCi0gICAgdHlwZW5hbWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywg
dHlwZW5hbWUgVDM0LCB0eXBlbmFtZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2Pgotc3RydWN0IFR5
cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQx
MywgVDE0LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMs
IFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwKLSAgICBUMzEsIFQzMiwgVDMzLCBU
MzQsIFQzNSwgVDM2LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJu
YWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
Ci0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlwZXMzNjxU
MSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLAotICAgICAg
VDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQy
NCwgVDI1LCBUMjYsCi0gICAgICBUMjcsIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQz
NCwgVDM1LCBUMzY+IHR5cGU7Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBU
MiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBU
NiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAot
ICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQx
NCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFt
ZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlw
ZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAg
IHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwg
dHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBU
MzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5h
bWUgVDM3Pgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDks
IFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBU
MjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwKLSAg
ICBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIGludGVybmFsOjpOb25lLCBpbnRl
cm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFs
OjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5v
bmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5
cGVzMzc8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwK
LSAgICAgIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwg
VDIzLCBUMjQsIFQyNSwgVDI2LAotICAgICAgVDI3LCBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwg
VDMzLCBUMzQsIFQzNSwgVDM2LCBUMzc+IHR5cGU7Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQx
LCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAg
ICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlw
ZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMs
IHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUg
VDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVu
YW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5h
bWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5
cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMy
LCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1l
IFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzg+Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBU
MywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwK
LSAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQy
NiwgVDI3LCBUMjgsIFQyOSwgVDMwLAotICAgIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYs
IFQzNywgVDM4LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0g
ICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJu
YWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVk
ZWYgaW50ZXJuYWw6OlR5cGVzMzg8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwg
VDEwLCBUMTEsIFQxMiwKLSAgICAgIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwg
VDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LAotICAgICAgVDI3LCBUMjgsIFQyOSwg
VDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOD4gdHlwZTsKLX07Ci10
ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgdHlwZW5hbWUg
VDQsIHR5cGVuYW1lIFQ1LAotICAgIHR5cGVuYW1lIFQ2LCB0eXBlbmFtZSBUNywgdHlwZW5hbWUg
VDgsIHR5cGVuYW1lIFQ5LCB0eXBlbmFtZSBUMTAsCi0gICAgdHlwZW5hbWUgVDExLCB0eXBlbmFt
ZSBUMTIsIHR5cGVuYW1lIFQxMywgdHlwZW5hbWUgVDE0LCB0eXBlbmFtZSBUMTUsCi0gICAgdHlw
ZW5hbWUgVDE2LCB0eXBlbmFtZSBUMTcsIHR5cGVuYW1lIFQxOCwgdHlwZW5hbWUgVDE5LCB0eXBl
bmFtZSBUMjAsCi0gICAgdHlwZW5hbWUgVDIxLCB0eXBlbmFtZSBUMjIsIHR5cGVuYW1lIFQyMywg
dHlwZW5hbWUgVDI0LCB0eXBlbmFtZSBUMjUsCi0gICAgdHlwZW5hbWUgVDI2LCB0eXBlbmFtZSBU
MjcsIHR5cGVuYW1lIFQyOCwgdHlwZW5hbWUgVDI5LCB0eXBlbmFtZSBUMzAsCi0gICAgdHlwZW5h
bWUgVDMxLCB0eXBlbmFtZSBUMzIsIHR5cGVuYW1lIFQzMywgdHlwZW5hbWUgVDM0LCB0eXBlbmFt
ZSBUMzUsCi0gICAgdHlwZW5hbWUgVDM2LCB0eXBlbmFtZSBUMzcsIHR5cGVuYW1lIFQzOCwgdHlw
ZW5hbWUgVDM5Pgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwg
VDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQxOCwgVDE5
LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwK
LSAgICBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBpbnRlcm5h
bDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50
ZXJuYWw6Ok5vbmU+IHsKLSAgdHlwZWRlZiBpbnRlcm5hbDo6VHlwZXMzOTxUMSwgVDIsIFQzLCBU
NCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLAotICAgICAgVDEzLCBUMTQsIFQx
NSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYs
Ci0gICAgICBUMjcsIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYs
IFQzNywgVDM4LCBUMzk+IHR5cGU7Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFt
ZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFt
ZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEw
LAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1l
IFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBl
bmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwg
dHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAot
ICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQy
OSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFt
ZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlw
ZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwPgotc3Ry
dWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBU
MTIsIFQxMywgVDE0LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIy
LCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwKLSAgICBUMzEsIFQzMiwg
VDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIGludGVybmFsOjpOb25lLAot
ICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYg
aW50ZXJuYWw6OlR5cGVzNDA8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEw
LCBUMTEsIFQxMiwKLSAgICAgIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIw
LCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LAotICAgICAgVDI3LCBUMjgsIFQyOSwgVDMw
LCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LAotICAgICAgVDQw
PiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1l
IFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1l
IFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFt
ZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1l
IFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBl
bmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwg
dHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBU
MjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQz
MCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlwZW5hbWUgVDMzLCB0eXBlbmFt
ZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBUMzYsIHR5cGVuYW1lIFQzNywgdHlw
ZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0MCwKLSAgICB0eXBlbmFtZSBUNDE+
Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBU
MTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIx
LCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQyOSwgVDMwLAotICAgIFQzMSwg
VDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBpbnRlcm5h
bDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUs
IGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpU
eXBlczQxPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIs
Ci0gICAgICBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIs
IFQyMywgVDI0LCBUMjUsIFQyNiwKLSAgICAgIFQyNywgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIs
IFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLAotICAgICAgVDQxPiB0eXBl
OwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0
eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0
eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEs
IHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwK
LSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBU
MTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5h
bWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5
cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAg
ICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlwZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQs
IHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBUMzYsIHR5cGVuYW1lIFQzNywgdHlwZW5hbWUg
VDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0MCwKLSAgICB0eXBlbmFtZSBUNDEsIHR5cGVu
YW1lIFQ0Mj4KLXN0cnVjdCBUeXBlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5
LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgIFQxNiwgVDE3LCBUMTgsIFQxOSwg
VDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LCBUMzAsCi0g
ICAgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEs
IFQ0MiwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25l
LCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsCi0gICAgaW50ZXJuYWw6Ok5vbmUsIGlu
dGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBl
czQyPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0g
ICAgICBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQy
MywgVDI0LCBUMjUsIFQyNiwKLSAgICAgIFQyNywgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQz
MywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLAotICAgICAgVDQxLCBUNDI+IHR5
cGU7Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMs
IHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcs
IHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQx
MSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1
LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1l
IFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBl
bmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwg
dHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAot
ICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQz
NCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFt
ZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwgdHlw
ZW5hbWUgVDQyLCB0eXBlbmFtZSBUNDM+Ci1zdHJ1Y3QgVHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1
LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsIFQxNSwKLSAgICBUMTYs
IFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBU
MjgsIFQyOSwgVDMwLAotICAgIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4
LCBUMzksIFQ0MCwgVDQxLCBUNDIsIFQ0MywKLSAgICBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6
Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRlcm5hbDo6Tm9u
ZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6
OlR5cGVzNDM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQx
MiwKLSAgICAgIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQy
MiwgVDIzLCBUMjQsIFQyNSwgVDI2LAotICAgICAgVDI3LCBUMjgsIFQyOSwgVDMwLCBUMzEsIFQz
MiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsCi0gICAgICBUNDEsIFQ0
MiwgVDQzPiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHR5
cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUgVDYsIHR5
cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwKLSAgICB0
eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBUMTQsIHR5
cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5hbWUgVDE4
LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5cGVuYW1l
IFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAgICB0eXBl
bmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjksIHR5cGVu
YW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlwZW5hbWUgVDMzLCB0
eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBUMzYsIHR5cGVuYW1lIFQz
NywgdHlwZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0MCwKLSAgICB0eXBlbmFt
ZSBUNDEsIHR5cGVuYW1lIFQ0MiwgdHlwZW5hbWUgVDQzLCB0eXBlbmFtZSBUNDQ+Ci1zdHJ1Y3Qg
VHlwZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwg
VDEzLCBUMTQsIFQxNSwKLSAgICBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQy
MywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQyOSwgVDMwLAotICAgIFQzMSwgVDMyLCBUMzMs
IFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsIFQ0MywgVDQ0LAot
ICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVy
bmFsOjpOb25lLAotICAgIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBl
ZGVmIGludGVybmFsOjpUeXBlczQ0PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDks
IFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTMsIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTks
IFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwKLSAgICAgIFQyNywgVDI4LCBUMjks
IFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLAot
ICAgICAgVDQxLCBUNDIsIFQ0MywgVDQ0PiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBU
MSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0g
ICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5
cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEz
LCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1l
IFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBl
bmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVu
YW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0
eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQz
MiwgdHlwZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFt
ZSBUMzYsIHR5cGVuYW1lIFQzNywgdHlwZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1l
IFQ0MCwKLSAgICB0eXBlbmFtZSBUNDEsIHR5cGVuYW1lIFQ0MiwgdHlwZW5hbWUgVDQzLCB0eXBl
bmFtZSBUNDQsIHR5cGVuYW1lIFQ0NT4KLXN0cnVjdCBUeXBlczxUMSwgVDIsIFQzLCBUNCwgVDUs
IFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgIFQxNiwg
VDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQy
OCwgVDI5LCBUMzAsCi0gICAgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgs
IFQzOSwgVDQwLCBUNDEsIFQ0MiwgVDQzLCBUNDQsIFQ0NSwKLSAgICBpbnRlcm5hbDo6Tm9uZSwg
aW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lLCBpbnRlcm5hbDo6Tm9uZSwKLSAgICBpbnRl
cm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczQ1PFQxLCBUMiwgVDMsIFQ0
LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTMsIFQxNCwgVDE1
LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwK
LSAgICAgIFQyNywgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwg
VDM3LCBUMzgsIFQzOSwgVDQwLAotICAgICAgVDQxLCBUNDIsIFQ0MywgVDQ0LCBUNDU+IHR5cGU7
Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDMsIHR5
cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlwZW5hbWUgVDcsIHR5
cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5cGVuYW1lIFQxMSwg
dHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlwZW5hbWUgVDE1LAot
ICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgsIHR5cGVuYW1lIFQx
OSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUgVDIyLCB0eXBlbmFt
ZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVuYW1lIFQyNiwgdHlw
ZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5hbWUgVDMwLAotICAg
IHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5cGVuYW1lIFQzNCwg
dHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3LCB0eXBlbmFtZSBU
MzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1lIFQ0MSwgdHlwZW5h
bWUgVDQyLCB0eXBlbmFtZSBUNDMsIHR5cGVuYW1lIFQ0NCwgdHlwZW5hbWUgVDQ1LAotICAgIHR5
cGVuYW1lIFQ0Nj4KLXN0cnVjdCBUeXBlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgs
IFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgIFQxNiwgVDE3LCBUMTgsIFQx
OSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LCBUMzAs
Ci0gICAgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBU
NDEsIFQ0MiwgVDQzLCBUNDQsIFQ0NSwKLSAgICBUNDYsIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZSwgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpOb25lPiB7Ci0gIHR5cGVkZWYgaW50
ZXJuYWw6OlR5cGVzNDY8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBU
MTEsIFQxMiwKLSAgICAgIFQxMywgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBU
MjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LAotICAgICAgVDI3LCBUMjgsIFQyOSwgVDMwLCBU
MzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsCi0gICAgICBU
NDEsIFQ0MiwgVDQzLCBUNDQsIFQ0NSwgVDQ2PiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFt
ZSBUMSwgdHlwZW5hbWUgVDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUs
Ci0gICAgdHlwZW5hbWUgVDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDks
IHR5cGVuYW1lIFQxMCwKLSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUg
VDEzLCB0eXBlbmFtZSBUMTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVu
YW1lIFQxNywgdHlwZW5hbWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0
eXBlbmFtZSBUMjEsIHR5cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5
cGVuYW1lIFQyNSwKLSAgICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4
LCB0eXBlbmFtZSBUMjksIHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1l
IFQzMiwgdHlwZW5hbWUgVDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBl
bmFtZSBUMzYsIHR5cGVuYW1lIFQzNywgdHlwZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVu
YW1lIFQ0MCwKLSAgICB0eXBlbmFtZSBUNDEsIHR5cGVuYW1lIFQ0MiwgdHlwZW5hbWUgVDQzLCB0
eXBlbmFtZSBUNDQsIHR5cGVuYW1lIFQ0NSwKLSAgICB0eXBlbmFtZSBUNDYsIHR5cGVuYW1lIFQ0
Nz4KLXN0cnVjdCBUeXBlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAs
IFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBU
MjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LCBUMzAsCi0gICAgVDMx
LCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEsIFQ0Miwg
VDQzLCBUNDQsIFQ0NSwKLSAgICBUNDYsIFQ0NywgaW50ZXJuYWw6Ok5vbmUsIGludGVybmFsOjpO
b25lLCBpbnRlcm5hbDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczQ3PFQxLCBU
MiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTMs
IFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBU
MjUsIFQyNiwKLSAgICAgIFQyNywgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBU
MzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLAotICAgICAgVDQxLCBUNDIsIFQ0MywgVDQ0LCBU
NDUsIFQ0NiwgVDQ3PiB0eXBlOwotfTsKLXRlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUg
VDIsIHR5cGVuYW1lIFQzLCB0eXBlbmFtZSBUNCwgdHlwZW5hbWUgVDUsCi0gICAgdHlwZW5hbWUg
VDYsIHR5cGVuYW1lIFQ3LCB0eXBlbmFtZSBUOCwgdHlwZW5hbWUgVDksIHR5cGVuYW1lIFQxMCwK
LSAgICB0eXBlbmFtZSBUMTEsIHR5cGVuYW1lIFQxMiwgdHlwZW5hbWUgVDEzLCB0eXBlbmFtZSBU
MTQsIHR5cGVuYW1lIFQxNSwKLSAgICB0eXBlbmFtZSBUMTYsIHR5cGVuYW1lIFQxNywgdHlwZW5h
bWUgVDE4LCB0eXBlbmFtZSBUMTksIHR5cGVuYW1lIFQyMCwKLSAgICB0eXBlbmFtZSBUMjEsIHR5
cGVuYW1lIFQyMiwgdHlwZW5hbWUgVDIzLCB0eXBlbmFtZSBUMjQsIHR5cGVuYW1lIFQyNSwKLSAg
ICB0eXBlbmFtZSBUMjYsIHR5cGVuYW1lIFQyNywgdHlwZW5hbWUgVDI4LCB0eXBlbmFtZSBUMjks
IHR5cGVuYW1lIFQzMCwKLSAgICB0eXBlbmFtZSBUMzEsIHR5cGVuYW1lIFQzMiwgdHlwZW5hbWUg
VDMzLCB0eXBlbmFtZSBUMzQsIHR5cGVuYW1lIFQzNSwKLSAgICB0eXBlbmFtZSBUMzYsIHR5cGVu
YW1lIFQzNywgdHlwZW5hbWUgVDM4LCB0eXBlbmFtZSBUMzksIHR5cGVuYW1lIFQ0MCwKLSAgICB0
eXBlbmFtZSBUNDEsIHR5cGVuYW1lIFQ0MiwgdHlwZW5hbWUgVDQzLCB0eXBlbmFtZSBUNDQsIHR5
cGVuYW1lIFQ0NSwKLSAgICB0eXBlbmFtZSBUNDYsIHR5cGVuYW1lIFQ0NywgdHlwZW5hbWUgVDQ4
Pgotc3RydWN0IFR5cGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwg
VDExLCBUMTIsIFQxMywgVDE0LCBUMTUsCi0gICAgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQy
MSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksIFQzMCwKLSAgICBUMzEs
IFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwgVDQyLCBU
NDMsIFQ0NCwgVDQ1LAotICAgIFQ0NiwgVDQ3LCBUNDgsIGludGVybmFsOjpOb25lLCBpbnRlcm5h
bDo6Tm9uZT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczQ4PFQxLCBUMiwgVDMsIFQ0LCBU
NSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTMsIFQxNCwgVDE1LCBU
MTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwKLSAg
ICAgIFQyNywgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3
LCBUMzgsIFQzOSwgVDQwLAotICAgICAgVDQxLCBUNDIsIFQ0MywgVDQ0LCBUNDUsIFQ0NiwgVDQ3
LCBUNDg+IHR5cGU7Ci19OwotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlw
ZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFtZSBUNiwgdHlw
ZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEwLAotICAgIHR5
cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1lIFQxNCwgdHlw
ZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBlbmFtZSBUMTgs
IHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwgdHlwZW5hbWUg
VDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAotICAgIHR5cGVu
YW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQyOSwgdHlwZW5h
bWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFtZSBUMzMsIHR5
cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlwZW5hbWUgVDM3
LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAgIHR5cGVuYW1l
IFQ0MSwgdHlwZW5hbWUgVDQyLCB0eXBlbmFtZSBUNDMsIHR5cGVuYW1lIFQ0NCwgdHlwZW5hbWUg
VDQ1LAotICAgIHR5cGVuYW1lIFQ0NiwgdHlwZW5hbWUgVDQ3LCB0eXBlbmFtZSBUNDgsIHR5cGVu
YW1lIFQ0OT4KLXN0cnVjdCBUeXBlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5
LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwgVDE1LAotICAgIFQxNiwgVDE3LCBUMTgsIFQxOSwg
VDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LCBUMzAsCi0g
ICAgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEs
IFQ0MiwgVDQzLCBUNDQsIFQ0NSwKLSAgICBUNDYsIFQ0NywgVDQ4LCBUNDksIGludGVybmFsOjpO
b25lPiB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzNDk8VDEsIFQyLCBUMywgVDQsIFQ1LCBU
NiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwKLSAgICAgIFQxMywgVDE0LCBUMTUsIFQxNiwg
VDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LAotICAgICAg
VDI3LCBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQz
OCwgVDM5LCBUNDAsCi0gICAgICBUNDEsIFQ0MiwgVDQzLCBUNDQsIFQ0NSwgVDQ2LCBUNDcsIFQ0
OCwgVDQ5PiB0eXBlOwotfTsKLQotbmFtZXNwYWNlIGludGVybmFsIHsKLQogIyBkZWZpbmUgR1RF
U1RfVEVNUExBVEVfIHRlbXBsYXRlIDx0eXBlbmFtZSBUPiBjbGFzcwogCiAvLyBUaGUgdGVtcGxh
dGUgInNlbGVjdG9yIiBzdHJ1Y3QgVGVtcGxhdGVTZWw8VG1wbD4gaXMgdXNlZCB0bwpAQCAtMTY1
NywxNjkyICsxMjAsNjQgQEAgc3RydWN0IFRlbXBsYXRlU2VsIHsKICMgZGVmaW5lIEdURVNUX0JJ
TkRfKFRtcGxTZWwsIFQpIFwKICAgVG1wbFNlbDo6dGVtcGxhdGUgQmluZDxUPjo6dHlwZQogCi0v
LyBBIHVuaXF1ZSBzdHJ1Y3QgdGVtcGxhdGUgdXNlZCBhcyB0aGUgZGVmYXVsdCB2YWx1ZSBmb3Ig
dGhlCi0vLyBhcmd1bWVudHMgb2YgY2xhc3MgdGVtcGxhdGUgVGVtcGxhdGVzLiAgVGhpcyBhbGxv
d3MgdXMgdG8gc2ltdWxhdGUKLS8vIHZhcmlhZGljIHRlbXBsYXRlcyAoZS5nLiBUZW1wbGF0ZXM8
aW50PiwgVGVtcGxhdGVzPGludCwgZG91YmxlPiwKLS8vIGFuZCBldGMpLCB3aGljaCBDKysgZG9l
c24ndCBzdXBwb3J0IGRpcmVjdGx5LgotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1zdHJ1Y3QgTm9u
ZVQge307Ci0KLS8vIFRoZSBmb2xsb3dpbmcgZmFtaWx5IG9mIHN0cnVjdCBhbmQgc3RydWN0IHRl
bXBsYXRlcyBhcmUgdXNlZCB0bwotLy8gcmVwcmVzZW50IHRlbXBsYXRlIGxpc3RzLiAgSW4gcGFy
dGljdWxhciwgVGVtcGxhdGVzTjxUMSwgVDIsIC4uLiwKLS8vIFROPiByZXByZXNlbnRzIGEgbGlz
dCBvZiBOIHRlbXBsYXRlcyAoVDEsIFQyLCAuLi4sIGFuZCBUTikuICBFeGNlcHQKLS8vIGZvciBU
ZW1wbGF0ZXMwLCBldmVyeSBzdHJ1Y3QgaW4gdGhlIGZhbWlseSBoYXMgdHdvIG1lbWJlciB0eXBl
czoKLS8vIEhlYWQgZm9yIHRoZSBzZWxlY3RvciBvZiB0aGUgZmlyc3QgdGVtcGxhdGUgaW4gdGhl
IGxpc3QsIGFuZCBUYWlsCi0vLyBmb3IgdGhlIHJlc3Qgb2YgdGhlIGxpc3QuCi0KLS8vIFRoZSBl
bXB0eSB0ZW1wbGF0ZSBsaXN0Lgotc3RydWN0IFRlbXBsYXRlczAge307Ci0KLS8vIFRlbXBsYXRl
IGxpc3RzIG9mIGxlbmd0aCAxLCAyLCAzLCBhbmQgc28gb24uCi0KLXRlbXBsYXRlIDxHVEVTVF9U
RU1QTEFURV8gVDE+Ci1zdHJ1Y3QgVGVtcGxhdGVzMSB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8
VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMCBUYWlsOwotfTsKLXRlbXBsYXRlIDxHVEVT
VF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMj4KLXN0cnVjdCBUZW1wbGF0ZXMyIHsK
LSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMxPFQy
PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExB
VEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDM+Ci1zdHJ1Y3QgVGVtcGxhdGVzMyB7Ci0gIHR5cGVk
ZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMjxUMiwgVDM+IFRh
aWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8g
VDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQ+Ci1zdHJ1Y3Qg
VGVtcGxhdGVzNCB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYg
VGVtcGxhdGVzMzxUMiwgVDMsIFQ0PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBM
QVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDU+Ci1zdHJ1Y3QgVGVtcGxhdGVzNSB7
Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzNDxU
MiwgVDMsIFQ0LCBUNT4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEs
IEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBM
QVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDY+Ci1zdHJ1Y3Qg
VGVtcGxhdGVzNiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYg
VGVtcGxhdGVzNTxUMiwgVDMsIFQ0LCBUNSwgVDY+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RF
U1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywK
LSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExB
VEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNz4KLXN0cnVjdCBUZW1wbGF0ZXM3IHsKLSAg
dHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXM2PFQyLCBU
MywgVDQsIFQ1LCBUNiwgVDc+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVf
IFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAg
IEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4Pgotc3RydWN0IFRlbXBsYXRl
czggewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRl
czc8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDg+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RF
U1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywK
LSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExB
VEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVT
VF9URU1QTEFURV8gVDk+Ci1zdHJ1Y3QgVGVtcGxhdGVzOSB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVT
ZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzODxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3
LCBUOCwgVDk+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVT
VF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8g
VDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RF
TVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQxMD4KLXN0cnVjdCBUZW1wbGF0ZXMxMCB7Ci0gIHR5cGVkZWYgVGVt
cGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzOTxUMiwgVDMsIFQ0LCBUNSwg
VDYsIFQ3LCBUOCwgVDksIFQxMD4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFU
RV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNU
X1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRF
XyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExPgotc3Ry
dWN0IFRlbXBsYXRlczExIHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlw
ZWRlZiBUZW1wbGF0ZXMxMDxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDEx
PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExB
VEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVT
VF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RF
TVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTI+Ci1z
dHJ1Y3QgVGVtcGxhdGVzMTIgewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0
eXBlZGVmIFRlbXBsYXRlczExPFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBU
MTEsIFQxMj4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNU
X1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBU
NCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8g
VDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTM+Ci1zdHJ1Y3QgVGVtcGxhdGVzMTMgewotICB0
eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczEyPFQyLCBU
MywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzPiBUYWlsOwotfTsK
LQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVT
VF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8g
VDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RF
TVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAs
IEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxND4KLXN0cnVjdCBUZW1wbGF0ZXMxNCB7Ci0g
IHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMTM8VDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgICBU
MTQ+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1Q
TEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdU
RVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRF
XyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1Q
TEFURV8gVDE1Pgotc3RydWN0IFRlbXBsYXRlczE1IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxU
MT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMxNDxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBU
OCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgICAgVDE1PiBUYWlsOwotfTsKLQot
dGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9U
RU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUs
IEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBM
QVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdU
RVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDE2Pgotc3RydWN0IFRlbXBsYXRlczE2IHsKLSAgdHlwZWRlZiBUZW1w
bGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMxNTxUMiwgVDMsIFQ0LCBUNSwg
VDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgICAgVDE1LCBUMTY+
IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFU
RV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNU
X1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
NywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFU
RV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTc+Ci1z
dHJ1Y3QgVGVtcGxhdGVzMTcgewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0
eXBlZGVmIFRlbXBsYXRlczE2PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBU
MTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgICBUMTUsIFQxNiwgVDE3PiBUYWlsOwotfTsKLQotdGVt
cGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1Q
TEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdU
RVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRF
XyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNU
X1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4
Pgotc3RydWN0IFRlbXBsYXRlczE4IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsK
LSAgdHlwZWRlZiBUZW1wbGF0ZXMxNzxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQx
MCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgICAgVDE1LCBUMTYsIFQxNywgVDE4PiBUYWlsOwot
fTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBH
VEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFU
RV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNU
X1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1Q
TEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTk+Ci1zdHJ1Y3QgVGVtcGxhdGVzMTkg
ewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczE4
PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQs
Ci0gICAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOT4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDxH
VEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQz
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1Q
TEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdU
RVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFU
RV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdU
RVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFURV8gVDIwPgotc3RydWN0IFRlbXBsYXRl
czIwIHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0
ZXMxOTxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywg
VDE0LAotICAgICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMD4gVGFpbDsKLX07Ci0KLXRl
bXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVN
UExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBH
VEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFU
RV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVT
VF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQx
OCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFURV8gVDIwLCBHVEVTVF9U
RU1QTEFURV8gVDIxPgotc3RydWN0IFRlbXBsYXRlczIxIHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNl
bDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMyMDxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3
LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgICAgVDE1LCBUMTYsIFQxNywg
VDE4LCBUMTksIFQyMCwgVDIxPiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRF
XyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVf
IFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNU
X1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVf
IFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVT
VF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQyMj4KLXN0cnVjdCBUZW1wbGF0ZXMyMiB7Ci0gIHR5cGVkZWYgVGVtcGxh
dGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMjE8VDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICAgIFQxNSwgVDE2LCBU
MTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyPiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNU
X1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRF
XyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1Rf
VEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBU
MTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1Rf
VEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMz4KLXN0cnVjdCBU
ZW1wbGF0ZXMyMyB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYg
VGVtcGxhdGVzMjI8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEy
LCBUMTMsIFQxNCwKLSAgICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIy
LCBUMjM+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9U
RU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQs
IEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBM
QVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQx
MiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9U
RU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBU
MTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1Rf
VEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0Pgotc3RydWN0IFRl
bXBsYXRlczI0IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBU
ZW1wbGF0ZXMyMzxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIs
IFQxMywgVDE0LAotICAgICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIs
IFQyMywgVDI0PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RF
U1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRF
XyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RF
U1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFU
RV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdU
RVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDI1Pgotc3RydWN0IFRlbXBsYXRlczI1IHsKLSAgdHlwZWRlZiBUZW1w
bGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMyNDxUMiwgVDMsIFQ0LCBUNSwg
VDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgICAgVDE1LCBUMTYs
IFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjU+IFRhaWw7Ci19Owot
Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNU
X1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBU
NSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVN
UExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwg
R1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRF
XyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RF
U1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFU
RV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdU
RVNUX1RFTVBMQVRFXyBUMjY+Ci1zdHJ1Y3QgVGVtcGxhdGVzMjYgewotICB0eXBlZGVmIFRlbXBs
YXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczI1PFQyLCBUMywgVDQsIFQ1LCBU
NiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgICBUMTUsIFQxNiwg
VDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2PiBUYWlsOwot
fTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBH
VEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFU
RV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNU
X1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1Q
TEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAs
IEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVN
UExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1
LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3Pgotc3RydWN0IFRlbXBs
YXRlczI3IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1w
bGF0ZXMyNjxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQx
MywgVDE0LAotICAgICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQy
MywgVDI0LCBUMjUsIFQyNiwgVDI3PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBM
QVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExB
VEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdU
RVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExB
VEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBH
VEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVf
IFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVT
VF9URU1QTEFURV8gVDI3LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjg+Ci1zdHJ1Y3QgVGVtcGxh
dGVzMjggewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBs
YXRlczI3PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEz
LCBUMTQsCi0gICAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIz
LCBUMjQsIFQyNSwgVDI2LCBUMjcsCi0gICAgICBUMjg+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8
R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBU
MywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVN
UExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBH
VEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExB
VEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBH
VEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVf
IFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVT
VF9URU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RFTVBMQVRF
XyBUMjYsIEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyOCwgR1RF
U1RfVEVNUExBVEVfIFQyOT4KLXN0cnVjdCBUZW1wbGF0ZXMyOSB7Ci0gIHR5cGVkZWYgVGVtcGxh
dGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMjg8VDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICAgIFQxNSwgVDE2LCBU
MTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4
LAotICAgICAgVDI5PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwg
R1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBM
QVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwg
R1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1Q
TEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTks
IEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFU
RV8gVDI3LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdU
RVNUX1RFTVBMQVRFXyBUMzA+Ci1zdHJ1Y3QgVGVtcGxhdGVzMzAgewotICB0eXBlZGVmIFRlbXBs
YXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczI5PFQyLCBUMywgVDQsIFQ1LCBU
NiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgICBUMTUsIFQxNiwg
VDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQy
OCwKLSAgICAgIFQyOSwgVDMwPiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRF
XyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVf
IFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNU
X1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVf
IFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVT
VF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQy
NCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9U
RU1QTEFURV8gVDI3LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBU
MjksIEdURVNUX1RFTVBMQVRFXyBUMzAsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMT4KLXN0cnVj
dCBUZW1wbGF0ZXMzMSB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVk
ZWYgVGVtcGxhdGVzMzA8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwg
VDEyLCBUMTMsIFQxNCwKLSAgICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwg
VDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAgICAgVDI5LCBUMzAsIFQzMT4g
VGFpbDsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRF
XyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1Rf
VEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3
LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRF
XyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RF
U1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFU
RV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjIsIEdU
RVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVfIFQyNywKLSAgICBH
VEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVTVF9URU1QTEFURV8g
VDMwLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBMQVRFXyBUMzI+Ci1zdHJ1
Y3QgVGVtcGxhdGVzMzIgewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBl
ZGVmIFRlbXBsYXRlczMxPFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEs
IFQxMiwgVDEzLCBUMTQsCi0gICAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEs
IFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICAgIFQyOSwgVDMwLCBUMzEs
IFQzMj4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RF
TVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwg
R1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEy
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RF
TVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQx
NywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9U
RU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MjIsIEdURVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVfIFQyNywK
LSAgICBHVEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVTVF9URU1Q
TEFURV8gVDMwLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBMQVRFXyBUMzIs
IEdURVNUX1RFTVBMQVRFXyBUMzM+Ci1zdHJ1Y3QgVGVtcGxhdGVzMzMgewotICB0eXBlZGVmIFRl
bXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczMyPFQyLCBUMywgVDQsIFQ1
LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgICBUMTUsIFQx
NiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcs
IFQyOCwKLSAgICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzPiBUYWlsOwotfTsKLQotdGVtcGxh
dGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFU
RV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNU
X1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBU
OCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RF
TVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQx
MywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBM
QVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywg
R1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1Q
TEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjgs
IEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRFXyBUMzAsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQzMSwgR1RFU1RfVEVNUExBVEVfIFQzMiwgR1RFU1RfVEVNUExBVEVfIFQzMywKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDM0Pgotc3RydWN0IFRlbXBsYXRlczM0IHsKLSAgdHlwZWRlZiBU
ZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMzMzxUMiwgVDMsIFQ0LCBU
NSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgICAgVDE1LCBU
MTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3
LCBUMjgsCi0gICAgICBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0PiBUYWlsOwotfTsKLQot
dGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9U
RU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUs
IEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBM
QVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdU
RVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8g
VDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNU
X1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVf
IFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVT
VF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRFXyBUMzAsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQzMSwgR1RFU1RfVEVNUExBVEVfIFQzMiwgR1RFU1RfVEVNUExBVEVfIFQz
MywKLSAgICBHVEVTVF9URU1QTEFURV8gVDM0LCBHVEVTVF9URU1QTEFURV8gVDM1Pgotc3RydWN0
IFRlbXBsYXRlczM1IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRl
ZiBUZW1wbGF0ZXMzNDxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBU
MTIsIFQxMywgVDE0LAotICAgICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBU
MjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsCi0gICAgICBUMjksIFQzMCwgVDMxLCBU
MzIsIFQzMywgVDM0LCBUMzU+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVf
IFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAg
IEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8g
VDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1Rf
VEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8g
VDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNU
X1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RFTVBMQVRFXyBUMjYsIEdURVNUX1RF
TVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyOCwgR1RFU1RfVEVNUExBVEVfIFQy
OSwgR1RFU1RfVEVNUExBVEVfIFQzMCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDMxLCBHVEVTVF9U
RU1QTEFURV8gVDMyLCBHVEVTVF9URU1QTEFURV8gVDMzLAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MzQsIEdURVNUX1RFTVBMQVRFXyBUMzUsIEdURVNUX1RFTVBMQVRFXyBUMzY+Ci1zdHJ1Y3QgVGVt
cGxhdGVzMzYgewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRl
bXBsYXRlczM1PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwg
VDEzLCBUMTQsCi0gICAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwg
VDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwg
VDMzLCBUMzQsIFQzNSwgVDM2PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRF
XyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVf
IFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNU
X1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVf
IFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVT
VF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQy
NCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9U
RU1QTEFURV8gVDI3LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBU
MjksIEdURVNUX1RFTVBMQVRFXyBUMzAsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMSwgR1RFU1Rf
VEVNUExBVEVfIFQzMiwgR1RFU1RfVEVNUExBVEVfIFQzMywKLSAgICBHVEVTVF9URU1QTEFURV8g
VDM0LCBHVEVTVF9URU1QTEFURV8gVDM1LCBHVEVTVF9URU1QTEFURV8gVDM2LAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMzc+Ci1zdHJ1Y3QgVGVtcGxhdGVzMzcgewotICB0eXBlZGVmIFRlbXBsYXRl
U2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczM2PFQyLCBUMywgVDQsIFQ1LCBUNiwg
VDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgICBUMTUsIFQxNiwgVDE3
LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwK
LSAgICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzc+IFRhaWw7
Ci19OwotCi10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIs
IEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBM
QVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RF
U1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RF
TVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQy
MCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9U
RU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MjUsIEdURVNUX1RFTVBMQVRFXyBUMjYsIEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQyOCwgR1RFU1RfVEVNUExBVEVfIFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDMxLCBHVEVTVF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1Q
TEFURV8gVDMzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzQsIEdURVNUX1RFTVBMQVRFXyBUMzUs
IEdURVNUX1RFTVBMQVRFXyBUMzYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNywgR1RFU1RfVEVN
UExBVEVfIFQzOD4KLXN0cnVjdCBUZW1wbGF0ZXMzOCB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8
VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMzc8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICAgIFQxNSwgVDE2LCBUMTcsIFQx
OCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAg
ICAgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4PiBUYWls
OwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQy
LCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1Q
TEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdU
RVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQx
NSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9U
RU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBU
MjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1Rf
VEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRFXyBUMzAs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQzMSwgR1RFU1RfVEVNUExBVEVfIFQzMiwgR1RFU1RfVEVN
UExBVEVfIFQzMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDM0LCBHVEVTVF9URU1QTEFURV8gVDM1
LCBHVEVTVF9URU1QTEFURV8gVDM2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzcsIEdURVNUX1RF
TVBMQVRFXyBUMzgsIEdURVNUX1RFTVBMQVRFXyBUMzk+Ci1zdHJ1Y3QgVGVtcGxhdGVzMzkgewot
ICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczM4PFQy
LCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0g
ICAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQy
NSwgVDI2LCBUMjcsIFQyOCwKLSAgICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQz
NSwgVDM2LCBUMzcsIFQzOCwgVDM5PiBUYWlsOwotfTsKLQotdGVtcGxhdGUgPEdURVNUX1RFTVBM
QVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExB
VEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdU
RVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExB
VEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBH
VEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVf
IFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVT
VF9URU1QTEFURV8gVDI3LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRF
XyBUMjksIEdURVNUX1RFTVBMQVRFXyBUMzAsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMSwgR1RF
U1RfVEVNUExBVEVfIFQzMiwgR1RFU1RfVEVNUExBVEVfIFQzMywKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDM0LCBHVEVTVF9URU1QTEFURV8gVDM1LCBHVEVTVF9URU1QTEFURV8gVDM2LAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUMzcsIEdURVNUX1RFTVBMQVRFXyBUMzgsIEdURVNUX1RFTVBMQVRFXyBU
MzksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0MD4KLXN0cnVjdCBUZW1wbGF0ZXM0MCB7Ci0gIHR5
cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMzk8VDIsIFQz
LCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICAg
IFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBU
MjYsIFQyNywgVDI4LAotICAgICAgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBU
MzYsIFQzNywgVDM4LCBUMzksIFQ0MD4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF9URU1Q
TEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBM
QVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBH
VEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBM
QVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwg
R1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDE5LCBHVEVTVF9URU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMjIsIEdURVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRF
XyBUMjQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RF
U1RfVEVNUExBVEVfIFQyNywKLSAgICBHVEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFU
RV8gVDI5LCBHVEVTVF9URU1QTEFURV8gVDMwLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdU
RVNUX1RFTVBMQVRFXyBUMzIsIEdURVNUX1RFTVBMQVRFXyBUMzMsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQzNCwgR1RFU1RfVEVNUExBVEVfIFQzNSwgR1RFU1RfVEVNUExBVEVfIFQzNiwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDM3LCBHVEVTVF9URU1QTEFURV8gVDM4LCBHVEVTVF9URU1QTEFURV8g
VDM5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDAsIEdURVNUX1RFTVBMQVRFXyBUNDE+Ci1zdHJ1
Y3QgVGVtcGxhdGVzNDEgewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBl
ZGVmIFRlbXBsYXRlczQwPFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEs
IFQxMiwgVDEzLCBUMTQsCi0gICAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEs
IFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICAgIFQyOSwgVDMwLCBUMzEs
IFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MT4gVGFpbDsK
LX07Ci0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwg
R1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExB
VEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVT
VF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBUMTUs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1RfVEVN
UExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFURV8gVDIw
LCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjIsIEdURVNUX1RF
TVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQy
NSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVfIFQyNywKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVTVF9URU1QTEFURV8gVDMwLAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBMQVRFXyBUMzIsIEdURVNUX1RFTVBM
QVRFXyBUMzMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNCwgR1RFU1RfVEVNUExBVEVfIFQzNSwg
R1RFU1RfVEVNUExBVEVfIFQzNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDM3LCBHVEVTVF9URU1Q
TEFURV8gVDM4LCBHVEVTVF9URU1QTEFURV8gVDM5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDAs
IEdURVNUX1RFTVBMQVRFXyBUNDEsIEdURVNUX1RFTVBMQVRFXyBUNDI+Ci1zdHJ1Y3QgVGVtcGxh
dGVzNDIgewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBs
YXRlczQxPFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEz
LCBUMTQsCi0gICAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIz
LCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMz
LCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwKLSAgICAgIFQ0Mj4gVGFp
bDsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBU
MiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVN
UExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBH
VEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBU
MTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1Rf
VEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFURV8g
VDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjIsIEdURVNU
X1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVfIFQyNywKLSAgICBHVEVT
VF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVTVF9URU1QTEFURV8gVDMw
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBMQVRFXyBUMzIsIEdURVNUX1RF
TVBMQVRFXyBUMzMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNCwgR1RFU1RfVEVNUExBVEVfIFQz
NSwgR1RFU1RfVEVNUExBVEVfIFQzNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDM3LCBHVEVTVF9U
RU1QTEFURV8gVDM4LCBHVEVTVF9URU1QTEFURV8gVDM5LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
NDAsIEdURVNUX1RFTVBMQVRFXyBUNDEsIEdURVNUX1RFTVBMQVRFXyBUNDIsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQ0Mz4KLXN0cnVjdCBUZW1wbGF0ZXM0MyB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVT
ZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzNDI8VDIsIFQzLCBUNCwgVDUsIFQ2LCBU
NywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICAgIFQxNSwgVDE2LCBUMTcs
IFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LAot
ICAgICAgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBU
MzksIFQ0MCwgVDQxLCBUNDIsCi0gICAgICBUNDM+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8R1RF
U1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywK
LSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExB
VEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVT
VF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVf
IFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVT
VF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQy
MSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9U
RU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RFTVBMQVRFXyBU
MjYsIEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyOCwgR1RFU1Rf
VEVNUExBVEVfIFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDMxLCBHVEVTVF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1QTEFURV8gVDMzLAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMzQsIEdURVNUX1RFTVBMQVRFXyBUMzUsIEdURVNUX1RFTVBMQVRFXyBUMzYs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQzNywgR1RFU1RfVEVNUExBVEVfIFQzOCwgR1RFU1RfVEVN
UExBVEVfIFQzOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDQwLCBHVEVTVF9URU1QTEFURV8gVDQx
LCBHVEVTVF9URU1QTEFURV8gVDQyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDMsIEdURVNUX1RF
TVBMQVRFXyBUNDQ+Ci1zdHJ1Y3QgVGVtcGxhdGVzNDQgewotICB0eXBlZGVmIFRlbXBsYXRlU2Vs
PFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczQzPFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcs
IFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgICBUMTUsIFQxNiwgVDE3LCBU
MTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAg
ICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5
LCBUNDAsIFQ0MSwgVDQyLAotICAgICAgVDQzLCBUNDQ+IFRhaWw7Ci19OwotCi10ZW1wbGF0ZSA8
R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBU
MywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVN
UExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBH
VEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExB
VEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBH
VEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVf
IFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVT
VF9URU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RFTVBMQVRF
XyBUMjYsIEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyOCwgR1RF
U1RfVEVNUExBVEVfIFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDMxLCBHVEVTVF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1QTEFURV8gVDMzLAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUMzQsIEdURVNUX1RFTVBMQVRFXyBUMzUsIEdURVNUX1RFTVBMQVRFXyBU
MzYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNywgR1RFU1RfVEVNUExBVEVfIFQzOCwgR1RFU1Rf
VEVNUExBVEVfIFQzOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDQwLCBHVEVTVF9URU1QTEFURV8g
VDQxLCBHVEVTVF9URU1QTEFURV8gVDQyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDMsIEdURVNU
X1RFTVBMQVRFXyBUNDQsIEdURVNUX1RFTVBMQVRFXyBUNDU+Ci1zdHJ1Y3QgVGVtcGxhdGVzNDUg
ewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQxPiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczQ0
PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQs
Ci0gICAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQs
IFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQs
IFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwgVDQyLAotICAgICAgVDQzLCBUNDQs
IFQ0NT4gVGFpbDsKLX07Ci0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RF
TVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwg
R1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEy
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RF
TVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQx
NywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9U
RU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MjIsIEdURVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVfIFQyNywK
LSAgICBHVEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVTVF9URU1Q
TEFURV8gVDMwLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBMQVRFXyBUMzIs
IEdURVNUX1RFTVBMQVRFXyBUMzMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNCwgR1RFU1RfVEVN
UExBVEVfIFQzNSwgR1RFU1RfVEVNUExBVEVfIFQzNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDM3
LCBHVEVTVF9URU1QTEFURV8gVDM4LCBHVEVTVF9URU1QTEFURV8gVDM5LAotICAgIEdURVNUX1RF
TVBMQVRFXyBUNDAsIEdURVNUX1RFTVBMQVRFXyBUNDEsIEdURVNUX1RFTVBMQVRFXyBUNDIsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQ0MywgR1RFU1RfVEVNUExBVEVfIFQ0NCwgR1RFU1RfVEVNUExB
VEVfIFQ0NSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDQ2Pgotc3RydWN0IFRlbXBsYXRlczQ2IHsK
LSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXM0NTxU
MiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAot
ICAgICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBU
MjUsIFQyNiwgVDI3LCBUMjgsCi0gICAgICBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBU
MzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEsIFQ0MiwKLSAgICAgIFQ0MywgVDQ0LCBU
NDUsIFQ0Nj4gVGFpbDsKK3RlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gSGVhZF8sIEdURVNUX1RF
TVBMQVRFXy4uLiBUYWlsXz4KK3N0cnVjdCBUZW1wbGF0ZXMgeworICB1c2luZyBIZWFkID0gVGVt
cGxhdGVTZWw8SGVhZF8+OworICB1c2luZyBUYWlsID0gVGVtcGxhdGVzPFRhaWxfLi4uPjsKIH07
CiAKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RF
U1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVf
IFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9U
RU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEw
LCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RF
TVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExB
VEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFURV8gVDIwLCBH
VEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjIsIEdURVNUX1RFTVBM
QVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyNSwg
R1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVfIFQyNywKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVTVF9URU1QTEFURV8gVDMwLAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBMQVRFXyBUMzIsIEdURVNUX1RFTVBMQVRF
XyBUMzMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNCwgR1RFU1RfVEVNUExBVEVfIFQzNSwgR1RF
U1RfVEVNUExBVEVfIFQzNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDM3LCBHVEVTVF9URU1QTEFU
RV8gVDM4LCBHVEVTVF9URU1QTEFURV8gVDM5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDAsIEdU
RVNUX1RFTVBMQVRFXyBUNDEsIEdURVNUX1RFTVBMQVRFXyBUNDIsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQ0MywgR1RFU1RfVEVNUExBVEVfIFQ0NCwgR1RFU1RfVEVNUExBVEVfIFQ0NSwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDQ2LCBHVEVTVF9URU1QTEFURV8gVDQ3Pgotc3RydWN0IFRlbXBsYXRl
czQ3IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNlbDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0
ZXM0NjxUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywg
VDE0LAotICAgICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywg
VDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsCi0gICAgICBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywg
VDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEsIFQ0MiwKLSAgICAgIFQ0Mywg
VDQ0LCBUNDUsIFQ0NiwgVDQ3PiBUYWlsOwordGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBIZWFk
Xz4KK3N0cnVjdCBUZW1wbGF0ZXM8SGVhZF8+IHsKKyAgdXNpbmcgSGVhZCA9IFRlbXBsYXRlU2Vs
PEhlYWRfPjsKKyAgdXNpbmcgVGFpbCA9IE5vbmU7CiB9OwogCi10ZW1wbGF0ZSA8R1RFU1RfVEVN
UExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBH
VEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1Q
TEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwg
R1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1Q
TEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYs
IEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFU
RV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RFTVBMQVRFXyBUMjYsIEdU
RVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyOCwgR1RFU1RfVEVNUExB
VEVfIFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDMxLCBH
VEVTVF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1QTEFURV8gVDMzLAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMzQsIEdURVNUX1RFTVBMQVRFXyBUMzUsIEdURVNUX1RFTVBMQVRFXyBUMzYsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQzNywgR1RFU1RfVEVNUExBVEVfIFQzOCwgR1RFU1RfVEVNUExBVEVf
IFQzOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDQwLCBHVEVTVF9URU1QTEFURV8gVDQxLCBHVEVT
VF9URU1QTEFURV8gVDQyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDMsIEdURVNUX1RFTVBMQVRF
XyBUNDQsIEdURVNUX1RFTVBMQVRFXyBUNDUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0NiwgR1RF
U1RfVEVNUExBVEVfIFQ0NywgR1RFU1RfVEVNUExBVEVfIFQ0OD4KLXN0cnVjdCBUZW1wbGF0ZXM0
OCB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVz
NDc8VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQx
NCwKLSAgICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQy
NCwgVDI1LCBUMjYsIFQyNywgVDI4LAotICAgICAgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQz
NCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsCi0gICAgICBUNDMsIFQ0
NCwgVDQ1LCBUNDYsIFQ0NywgVDQ4PiBUYWlsOworLy8gVHVwbGUtbGlrZSB0eXBlIGxpc3RzCit0
ZW1wbGF0ZSA8dHlwZW5hbWUgSGVhZF8sIHR5cGVuYW1lLi4uIFRhaWxfPgorc3RydWN0IFR5cGVz
IHsKKyAgdXNpbmcgSGVhZCA9IEhlYWRfOworICB1c2luZyBUYWlsID0gVHlwZXM8VGFpbF8uLi4+
OwogfTsKIAotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQy
LCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1Q
TEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdU
RVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQx
NSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9U
RU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBU
MjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1Rf
VEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRFXyBUMzAs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQzMSwgR1RFU1RfVEVNUExBVEVfIFQzMiwgR1RFU1RfVEVN
UExBVEVfIFQzMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDM0LCBHVEVTVF9URU1QTEFURV8gVDM1
LCBHVEVTVF9URU1QTEFURV8gVDM2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzcsIEdURVNUX1RF
TVBMQVRFXyBUMzgsIEdURVNUX1RFTVBMQVRFXyBUMzksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0
MCwgR1RFU1RfVEVNUExBVEVfIFQ0MSwgR1RFU1RfVEVNUExBVEVfIFQ0MiwKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDQzLCBHVEVTVF9URU1QTEFURV8gVDQ0LCBHVEVTVF9URU1QTEFURV8gVDQ1LAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUNDYsIEdURVNUX1RFTVBMQVRFXyBUNDcsIEdURVNUX1RFTVBM
QVRFXyBUNDgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0OT4KLXN0cnVjdCBUZW1wbGF0ZXM0OSB7
Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzNDg8
VDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwK
LSAgICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwg
VDI1LCBUMjYsIFQyNywgVDI4LAotICAgICAgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwg
VDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsCi0gICAgICBUNDMsIFQ0NCwg
VDQ1LCBUNDYsIFQ0NywgVDQ4LCBUNDk+IFRhaWw7Cit0ZW1wbGF0ZSA8dHlwZW5hbWUgSGVhZF8+
CitzdHJ1Y3QgVHlwZXM8SGVhZF8+IHsKKyAgdXNpbmcgSGVhZCA9IEhlYWRfOworICB1c2luZyBU
YWlsID0gTm9uZTsKIH07CiAKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RF
TVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwg
R1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEy
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RF
TVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQx
NywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9U
RU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MjIsIEdURVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExBVEVfIFQyNywK
LSAgICBHVEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBHVEVTVF9URU1Q
TEFURV8gVDMwLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBMQVRFXyBUMzIs
IEdURVNUX1RFTVBMQVRFXyBUMzMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNCwgR1RFU1RfVEVN
UExBVEVfIFQzNSwgR1RFU1RfVEVNUExBVEVfIFQzNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDM3
LCBHVEVTVF9URU1QTEFURV8gVDM4LCBHVEVTVF9URU1QTEFURV8gVDM5LAotICAgIEdURVNUX1RF
TVBMQVRFXyBUNDAsIEdURVNUX1RFTVBMQVRFXyBUNDEsIEdURVNUX1RFTVBMQVRFXyBUNDIsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQ0MywgR1RFU1RfVEVNUExBVEVfIFQ0NCwgR1RFU1RfVEVNUExB
VEVfIFQ0NSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDQ2LCBHVEVTVF9URU1QTEFURV8gVDQ3LCBH
VEVTVF9URU1QTEFURV8gVDQ4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDksIEdURVNUX1RFTVBM
QVRFXyBUNTA+Ci1zdHJ1Y3QgVGVtcGxhdGVzNTAgewotICB0eXBlZGVmIFRlbXBsYXRlU2VsPFQx
PiBIZWFkOwotICB0eXBlZGVmIFRlbXBsYXRlczQ5PFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4
LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgICBUMTUsIFQxNiwgVDE3LCBUMTgs
IFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwKLSAgICAg
IFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBU
NDAsIFQ0MSwgVDQyLAotICAgICAgVDQzLCBUNDQsIFQ0NSwgVDQ2LCBUNDcsIFQ0OCwgVDQ5LCBU
NTA+IFRhaWw7CisvLyBIZWxwZXIgbWV0YWZ1bmN0aW9ucyB0byB0ZWxsIGFwYXJ0IGEgc2luZ2xl
IHR5cGUgZnJvbSB0eXBlcworLy8gZ2VuZXJhdGVkIGJ5IDo6dGVzdGluZzo6VHlwZXMKK3RlbXBs
YXRlIDx0eXBlbmFtZS4uLiBUcz4KK3N0cnVjdCBQcm94eVR5cGVMaXN0IHsKKyAgdXNpbmcgdHlw
ZSA9IFR5cGVzPFRzLi4uPjsKIH07CiAKK3RlbXBsYXRlIDx0eXBlbmFtZT4KK3N0cnVjdCBpc19w
cm94eV90eXBlX2xpc3QgOiBzdGQ6OmZhbHNlX3R5cGUge307CiAKLS8vIFdlIGRvbid0IHdhbnQg
dG8gcmVxdWlyZSB0aGUgdXNlcnMgdG8gd3JpdGUgVGVtcGxhdGVzTjwuLi4+IGRpcmVjdGx5LAot
Ly8gYXMgdGhhdCB3b3VsZCByZXF1aXJlIHRoZW0gdG8gY291bnQgdGhlIGxlbmd0aC4gIFRlbXBs
YXRlczwuLi4+IGlzIG11Y2gKLS8vIGVhc2llciB0byB3cml0ZSwgYnV0IGdlbmVyYXRlcyBob3Jy
aWJsZSBtZXNzYWdlcyB3aGVuIHRoZXJlIGlzIGEKLS8vIGNvbXBpbGVyIGVycm9yLCBhcyBnY2Mg
aW5zaXN0cyBvbiBwcmludGluZyBvdXQgZWFjaCB0ZW1wbGF0ZQotLy8gYXJndW1lbnQsIGV2ZW4g
aWYgaXQgaGFzIHRoZSBkZWZhdWx0IHZhbHVlICh0aGlzIG1lYW5zIFRlbXBsYXRlczxsaXN0Pgot
Ly8gd2lsbCBhcHBlYXIgYXMgVGVtcGxhdGVzPGxpc3QsIE5vbmVULCBOb25lVCwgLi4uLCBOb25l
VD4gaW4gdGhlIGNvbXBpbGVyCi0vLyBlcnJvcnMpLgotLy8KLS8vIE91ciBzb2x1dGlvbiBpcyB0
byBjb21iaW5lIHRoZSBiZXN0IHBhcnQgb2YgdGhlIHR3byBhcHByb2FjaGVzOiBhCi0vLyB1c2Vy
IHdvdWxkIHdyaXRlIFRlbXBsYXRlczxUMSwgLi4uLCBUTj4sIGFuZCBHb29nbGUgVGVzdCB3aWxs
IHRyYW5zbGF0ZQotLy8gdGhhdCB0byBUZW1wbGF0ZXNOPFQxLCAuLi4sIFROPiBpbnRlcm5hbGx5
IHRvIG1ha2UgZXJyb3IgbWVzc2FnZXMKLS8vIHJlYWRhYmxlLiAgVGhlIHRyYW5zbGF0aW9uIGlz
IGRvbmUgYnkgdGhlICd0eXBlJyBtZW1iZXIgb2YgdGhlCi0vLyBUZW1wbGF0ZXMgdGVtcGxhdGUu
Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxID0gTm9uZVQsIEdURVNUX1RFTVBMQVRFXyBU
MiA9IE5vbmVULAotICAgIEdURVNUX1RFTVBMQVRFXyBUMyA9IE5vbmVULCBHVEVTVF9URU1QTEFU
RV8gVDQgPSBOb25lVCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDUgPSBOb25lVCwgR1RFU1RfVEVN
UExBVEVfIFQ2ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3ID0gTm9uZVQsIEdURVNU
X1RFTVBMQVRFXyBUOCA9IE5vbmVULAotICAgIEdURVNUX1RFTVBMQVRFXyBUOSA9IE5vbmVULCBH
VEVTVF9URU1QTEFURV8gVDEwID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMSA9IE5v
bmVULCBHVEVTVF9URU1QTEFURV8gVDEyID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQx
MyA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDE0ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQxNSA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDE2ID0gTm9uZVQsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQxNyA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDE4ID0gTm9uZVQsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQxOSA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDIwID0gTm9uZVQs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQyMSA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDIyID0g
Tm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMyA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8g
VDI0ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyNSA9IE5vbmVULCBHVEVTVF9URU1Q
TEFURV8gVDI2ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyNyA9IE5vbmVULCBHVEVT
VF9URU1QTEFURV8gVDI4ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyOSA9IE5vbmVU
LCBHVEVTVF9URU1QTEFURV8gVDMwID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMSA9
IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDMyID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQzMyA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDM0ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQzNSA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDM2ID0gTm9uZVQsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQzNyA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDM4ID0gTm9uZVQsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQzOSA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDQwID0gTm9u
ZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0MSA9IE5vbmVULCBHVEVTVF9URU1QTEFURV8gVDQy
ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0MyA9IE5vbmVULCBHVEVTVF9URU1QTEFU
RV8gVDQ0ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0NSA9IE5vbmVULCBHVEVTVF9U
RU1QTEFURV8gVDQ2ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0NyA9IE5vbmVULCBH
VEVTVF9URU1QTEFURV8gVDQ4ID0gTm9uZVQsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0OSA9IE5v
bmVULCBHVEVTVF9URU1QTEFURV8gVDUwID0gTm9uZVQ+Ci1zdHJ1Y3QgVGVtcGxhdGVzIHsKLSAg
dHlwZWRlZiBUZW1wbGF0ZXM1MDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBU
MTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBU
MjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywKLSAgICAgIFQyOCwgVDI5LCBU
MzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQx
LAotICAgICAgVDQyLCBUNDMsIFQ0NCwgVDQ1LCBUNDYsIFQ0NywgVDQ4LCBUNDksIFQ1MD4gdHlw
ZTsKLX07Ci0KLXRlbXBsYXRlIDw+Ci1zdHJ1Y3QgVGVtcGxhdGVzPE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsCi0gICAgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMwIHR5cGU7Ci19OwotdGVtcGxh
dGUgPEdURVNUX1RFTVBMQVRFXyBUMT4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwKLSAgICBOb25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRlczE8VDE+IHR5cGU7Ci19OwotdGVt
cGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyPgotc3RydWN0IFRl
bXBsYXRlczxUMSwgVDIsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVUPiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVz
MjxUMSwgVDI+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1Rf
VEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDM+Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQxLCBU
MiwgVDMsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAot
ICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAg
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVUPiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMzxUMSwgVDIsIFQzPiB0eXBlOwot
fTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RF
U1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUND4KLXN0cnVjdCBUZW1wbGF0
ZXM8VDEsIFQyLCBUMywgVDQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
Ci0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXM0PFQxLCBUMiwgVDMsIFQ0
PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRF
XyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1Rf
VEVNUExBVEVfIFQ1Pgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0g
ICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVD4gewotICB0eXBlZGVm
IFRlbXBsYXRlczU8VDEsIFQyLCBUMywgVDQsIFQ1PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVT
VF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFU
RV8gVDY+Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVUPiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVz
NjxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1Q
TEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQ3Pgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBU
NCwgVDUsIFQ2LCBUNywgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVD4gewotICB0
eXBlZGVmIFRlbXBsYXRlczc8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDc+IHR5cGU7Ci19Owot
dGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9U
RU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUs
IEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBM
QVRFXyBUOD4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXM4PFQx
LCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOD4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1Rf
VEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVf
IFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9U
RU1QTEFURV8gVDk+Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3
LCBUOCwgVDksIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVUPiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzOTxU
MSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxH
VEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQz
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1Q
TEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdU
RVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwPgotc3RydWN0IFRlbXBs
YXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIE5vbmVULCBOb25l
VCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMxMDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDgsIFQ5LCBUMTA+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RF
U1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTE+Ci1zdHJ1Y3QgVGVtcGxh
dGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBOb25lVCwg
Tm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQ+
IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMxMTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgs
IFQ5LCBUMTAsIFQxMT4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBH
VEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNU
X1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExB
VEVfIFQxMj4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4
LCBUOSwgVDEwLCBUMTEsIFQxMiwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMxMjxUMSwgVDIsIFQz
LCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyPiB0eXBlOwotfTsKLXRlbXBs
YXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExB
VEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVT
VF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8g
VDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9U
RU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MTM+Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDks
IFQxMCwgVDExLCBUMTIsIFQxMywgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRlczEzPFQxLCBUMiwgVDMsIFQ0LCBU
NSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsCi0gICAgICBUMTM+IHR5cGU7Ci19Owot
dGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9U
RU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUs
IEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBM
QVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdU
RVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxND4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBU
MywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVD4gewotICB0eXBlZGVmIFRlbXBs
YXRlczE0PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIs
IFQxMywKLSAgICAgIFQxND4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQx
LCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDks
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVN
UExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0
LCBHVEVTVF9URU1QTEFURV8gVDE1Pgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBUNCwg
VDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICBUMTUsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRlczE1PFQx
LCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAg
ICAgIFQxNCwgVDE1PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdU
RVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRF
XyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFU
RV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdU
RVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNj4KLXN0cnVjdCBUZW1w
bGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwg
VDEzLCBUMTQsCi0gICAgVDE1LCBUMTYsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVUPiB7Ci0gIHR5
cGVkZWYgVGVtcGxhdGVzMTY8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEw
LCBUMTEsIFQxMiwgVDEzLAotICAgICAgVDE0LCBUMTUsIFQxNj4gdHlwZTsKLX07Ci10ZW1wbGF0
ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRF
XyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1Rf
VEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4
LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVN
UExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEz
LCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RF
TVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTc+Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQxLCBU
MiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAot
ICAgIFQxNSwgVDE2LCBUMTcsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAg
ICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0
ZXMxNzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBU
MTMsCi0gICAgICBUMTQsIFQxNSwgVDE2LCBUMTc+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNU
X1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRF
XyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1Rf
VEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBU
MTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1Rf
VEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4Pgotc3RydWN0IFRl
bXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEy
LCBUMTMsIFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAg
ICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVD4gewotICB0eXBl
ZGVmIFRlbXBsYXRlczE4PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwg
VDExLCBUMTIsIFQxMywKLSAgICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4PiB0eXBlOwotfTsK
LXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1Rf
VEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1
LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1Q
TEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBH
VEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVf
IFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5Pgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAg
ICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0g
ICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMxOTxU
MSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0g
ICAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxH
VEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQz
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1Q
TEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdU
RVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFU
RV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdU
RVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFURV8gVDIwPgotc3RydWN0IFRlbXBsYXRl
czxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMs
IFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVUPiB7Ci0gIHR5cGVkZWYgVGVtcGxh
dGVzMjA8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwg
VDEzLAotICAgICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwPiB0eXBlOwotfTsK
LXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1Rf
VEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1
LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1Q
TEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBH
VEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVf
IFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9URU1QTEFURV8gVDIwLCBHVEVT
VF9URU1QTEFURV8gVDIxPgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3
LCBUMTgsIFQxOSwgVDIwLCBUMjEsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwK
LSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRlczIxPFQxLCBUMiwgVDMsIFQ0LCBUNSwg
VDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICAgIFQxNCwgVDE1LCBUMTYs
IFQxNywgVDE4LCBUMTksIFQyMCwgVDIxPiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1Q
TEFURV8gVDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBM
QVRFXyBUOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBH
VEVTVF9URU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBM
QVRFXyBUMTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwg
R1RFU1RfVEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDE5LCBHVEVTVF9URU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMjI+Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQxLCBUMiwgVDMsIFQ0LCBU
NSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgIFQxNSwgVDE2
LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQs
IE5vbmVULCBOb25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRlczIyPFQxLCBUMiwgVDMsIFQ0LCBU
NSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICAgIFQxNCwgVDE1LCBU
MTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjI+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdU
RVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBM
QVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RF
U1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRF
XyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RF
U1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBU
MjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMz4KLXN0cnVj
dCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEs
IFQxMiwgVDEzLCBUMTQsCi0gICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBU
MjIsIFQyMywgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0g
ICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVD4gewotICB0eXBlZGVmIFRl
bXBsYXRlczIzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBU
MTIsIFQxMywKLSAgICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBU
MjIsIFQyMz4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9U
RU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQs
IEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBM
QVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQx
MiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9U
RU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBU
MTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1Rf
VEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0Pgotc3RydWN0IFRl
bXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEy
LCBUMTMsIFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwg
VDIzLCBUMjQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRl
czI0PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQx
MywKLSAgICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQy
MywgVDI0PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEsIEdURVNUX1RF
TVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNCwg
R1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1QTEFURV8gVDEy
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQsIEdURVNUX1RF
TVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVNUExBVEVfIFQx
NywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5LCBHVEVTVF9U
RU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MjIsIEdURVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQyNT4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwg
VDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgVDE1LCBUMTYsIFQxNywg
VDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIE5vbmVULCBOb25lVCwgTm9u
ZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVU
PiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMjU8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4
LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAgICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgs
IFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNT4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8
R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBU
MywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVN
UExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBH
VEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExB
VEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBH
VEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVf
IFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVT
VF9URU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RFTVBMQVRF
XyBUMjY+Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwg
VDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5
LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIE5vbmVULCBOb25lVCwKLSAgICBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQ+IHsKLSAgdHlw
ZWRlZiBUZW1wbGF0ZXMyNjxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAs
IFQxMSwgVDEyLCBUMTMsCi0gICAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAs
IFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjY+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNU
X1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRF
XyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1Rf
VEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBU
MTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1Rf
VEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVN
UExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2
LCBHVEVTVF9URU1QTEFURV8gVDI3Pgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBUNCwg
VDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICBUMTUsIFQx
NiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcs
IE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBO
b25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRlczI3PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3
LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICAgIFQxNCwgVDE1LCBUMTYsIFQxNywg
VDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwKLSAgICAgIFQyNz4g
dHlwZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8g
VDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RF
TVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywg
R1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8g
VDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNU
X1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVf
IFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVT
VF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMjUsIEdURVNUX1RFTVBMQVRFXyBUMjYsIEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQyOD4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBU
NiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgVDE1LCBUMTYsIFQx
NywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgs
Ci0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVUPiB7
Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMjg8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBU
OSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAgICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQx
OSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsCi0gICAgICBUMjg+IHR5
cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQy
LCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1Q
TEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdU
RVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQx
NSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9U
RU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBU
MjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1Rf
VEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjk+Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQx
LCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0
LAotICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwg
VDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsCi0gICAgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMyOTxUMSwgVDIsIFQzLCBUNCwg
VDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgICBUMTQsIFQxNSwg
VDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQy
NywKLSAgICAgIFQyOCwgVDI5PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8g
VDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RF
TVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBU
OSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9U
RU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBU
MTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1Rf
VEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDE5LCBHVEVTVF9URU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMjIsIEdURVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVN
UExBVEVfIFQyNywKLSAgICBHVEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5
LCBHVEVTVF9URU1QTEFURV8gVDMwPgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBUNCwg
VDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICBUMTUsIFQx
NiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcs
IFQyOCwgVDI5LAotICAgIFQzMCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQ+IHsKLSAg
dHlwZWRlZiBUZW1wbGF0ZXMzMDxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBU
MTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBU
MjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywKLSAgICAgIFQyOCwgVDI5LCBU
MzA+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExB
VEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVT
VF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RF
TVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExB
VEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBH
VEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBM
QVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwg
R1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRF
XyBUMzAsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMT4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQy
LCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0g
ICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUs
IFQyNiwgVDI3LCBUMjgsIFQyOSwKLSAgICBUMzAsIFQzMSwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VD4gewotICB0eXBlZGVmIFRlbXBsYXRlczMxPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBU
OCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4
LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LAotICAgICAgVDI4
LCBUMjksIFQzMCwgVDMxPiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEs
IEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBM
QVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1Q
TEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQs
IEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVN
UExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5
LCBHVEVTVF9URU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RF
TVBMQVRFXyBUMjIsIEdURVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExB
VEVfIFQyNywKLSAgICBHVEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBH
VEVTVF9URU1QTEFURV8gVDMwLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBM
QVRFXyBUMzI+Ci1zdHJ1Y3QgVGVtcGxhdGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBU
OCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywgVDE0LAotICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwg
VDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0g
ICAgVDMwLCBUMzEsIFQzMiwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVUPiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVz
MzI8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEz
LAotICAgICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIz
LCBUMjQsIFQyNSwgVDI2LCBUMjcsCi0gICAgICBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMj4gdHlw
ZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIs
IEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBM
QVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RF
U1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RF
TVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQy
MCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9U
RU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MjUsIEdURVNUX1RFTVBMQVRFXyBUMjYsIEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQyOCwgR1RFU1RfVEVNUExBVEVfIFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDMxLCBHVEVTVF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1Q
TEFURV8gVDMzPgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3LCBUMTgs
IFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAot
ICAgIFQzMCwgVDMxLCBUMzIsIFQzMywgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVU
LCBOb25lVCwgTm9uZVQsIE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMz
MzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMs
Ci0gICAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMs
IFQyNCwgVDI1LCBUMjYsIFQyNywKLSAgICAgIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzM+
IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVf
IFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9U
RU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcs
IEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVf
IFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVT
VF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRF
XyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RF
U1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRFXyBU
MzAsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMSwgR1RFU1RfVEVNUExBVEVfIFQzMiwgR1RFU1Rf
VEVNUExBVEVfIFQzMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDM0Pgotc3RydWN0IFRlbXBsYXRl
czxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMs
IFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBU
MjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAotICAgIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0
LCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBO
b25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVUPiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzMzQ8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcs
IFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAgICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBU
MTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsCi0gICAgICBU
MjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQ+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdU
RVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBM
QVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RF
U1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRF
XyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RF
U1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBU
MjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1Rf
VEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8g
VDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNU
X1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRFXyBUMzAsCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQzMSwgR1RFU1RfVEVNUExBVEVfIFQzMiwgR1RFU1RfVEVNUExBVEVfIFQzMywKLSAgICBHVEVT
VF9URU1QTEFURV8gVDM0LCBHVEVTVF9URU1QTEFURV8gVDM1Pgotc3RydWN0IFRlbXBsYXRlczxU
MSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQx
NCwKLSAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQs
IFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAotICAgIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBU
MzUsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsCi0gICAgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVD4g
ewotICB0eXBlZGVmIFRlbXBsYXRlczM1PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwg
VDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBU
MTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LAotICAgICAgVDI4LCBU
MjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzU+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdU
RVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBM
QVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RF
U1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRF
XyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RF
U1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBU
MjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1Rf
VEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8g
VDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNU
X1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRFXyBUMzAsCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQzMSwgR1RFU1RfVEVNUExBVEVfIFQzMiwgR1RFU1RfVEVNUExBVEVfIFQzMywKLSAgICBHVEVT
VF9URU1QTEFURV8gVDM0LCBHVEVTVF9URU1QTEFURV8gVDM1LCBHVEVTVF9URU1QTEFURV8gVDM2
Pgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBU
MTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIw
LCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAotICAgIFQzMCwg
VDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQs
IE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVULCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMzNjxUMSwgVDIsIFQzLCBU
NCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgICBUMTQsIFQx
NSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYs
IFQyNywKLSAgICAgIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzY+
IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExBVEVf
IFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVTVF9U
RU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDcs
IEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExBVEVf
IFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBHVEVT
VF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBMQVRF
XyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwgR1RF
U1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRFXyBU
MzAsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMSwgR1RFU1RfVEVNUExBVEVfIFQzMiwgR1RFU1Rf
VEVNUExBVEVfIFQzMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDM0LCBHVEVTVF9URU1QTEFURV8g
VDM1LCBHVEVTVF9URU1QTEFURV8gVDM2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzc+Ci1zdHJ1
Y3QgVGVtcGxhdGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDEx
LCBUMTIsIFQxMywgVDE0LAotICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwg
VDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgVDMwLCBUMzEsIFQz
MiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBO
b25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25l
VCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMzNzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2
LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgICBUMTQsIFQxNSwgVDE2LCBU
MTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywKLSAg
ICAgIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNz4gdHlw
ZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIs
IEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBM
QVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RF
U1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RF
TVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQy
MCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9U
RU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MjUsIEdURVNUX1RFTVBMQVRFXyBUMjYsIEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQyOCwgR1RFU1RfVEVNUExBVEVfIFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDMxLCBHVEVTVF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1Q
TEFURV8gVDMzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzQsIEdURVNUX1RFTVBMQVRFXyBUMzUs
IEdURVNUX1RFTVBMQVRFXyBUMzYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNywgR1RFU1RfVEVN
UExBVEVfIFQzOD4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcs
IFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgVDE1LCBUMTYsIFQxNywgVDE4
LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQyOSwK
LSAgICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMzODxUMSwgVDIs
IFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgICBU
MTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1
LCBUMjYsIFQyNywKLSAgICAgIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1
LCBUMzYsIFQzNywgVDM4PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDEs
IEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RFTVBM
QVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBUOSwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9URU1Q
TEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBUMTQs
IEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1RfVEVN
UExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE5
LCBHVEVTVF9URU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNUX1RF
TVBMQVRFXyBUMjIsIEdURVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVNUExB
VEVfIFQyNywKLSAgICBHVEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5LCBH
VEVTVF9URU1QTEFURV8gVDMwLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RFTVBM
QVRFXyBUMzIsIEdURVNUX1RFTVBMQVRFXyBUMzMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNCwg
R1RFU1RfVEVNUExBVEVfIFQzNSwgR1RFU1RfVEVNUExBVEVfIFQzNiwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDM3LCBHVEVTVF9URU1QTEFURV8gVDM4LCBHVEVTVF9URU1QTEFURV8gVDM5Pgotc3Ry
dWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQx
MSwgVDEyLCBUMTMsIFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEs
IFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAotICAgIFQzMCwgVDMxLCBU
MzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgTm9uZVQsIE5vbmVULCBOb25l
VCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwg
Tm9uZVQ+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMzOTxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBU
NywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsCi0gICAgICBUMTQsIFQxNSwgVDE2LCBUMTcs
IFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywKLSAgICAg
IFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBU
Mzk+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1RfVEVNUExB
VEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0LCBHVEVT
VF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdURVNUX1RF
TVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBUMTIsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1RfVEVNUExB
VEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8gVDE3LCBH
VEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNUX1RFTVBM
QVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyMiwg
R1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3LAotICAg
IEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RFTVBMQVRF
XyBUMzAsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMSwgR1RFU1RfVEVNUExBVEVfIFQzMiwgR1RF
U1RfVEVNUExBVEVfIFQzMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDM0LCBHVEVTVF9URU1QTEFU
RV8gVDM1LCBHVEVTVF9URU1QTEFURV8gVDM2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzcsIEdU
RVNUX1RFTVBMQVRFXyBUMzgsIEdURVNUX1RFTVBMQVRFXyBUMzksCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQ0MD4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4
LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgVDE1LCBUMTYsIFQxNywgVDE4LCBU
MTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQyOSwKLSAg
ICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwg
Tm9uZVQsIE5vbmVULCBOb25lVCwKLSAgICBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9u
ZVQsIE5vbmVULCBOb25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRlczQwPFQxLCBUMiwgVDMsIFQ0
LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICAgIFQxNCwgVDE1
LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwg
VDI3LAotICAgICAgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwg
VDM3LCBUMzgsIFQzOSwgVDQwPiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8g
VDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RF
TVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBU
OSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9U
RU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBU
MTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1Rf
VEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDE5LCBHVEVTVF9URU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMjIsIEdURVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVN
UExBVEVfIFQyNywKLSAgICBHVEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5
LCBHVEVTVF9URU1QTEFURV8gVDMwLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RF
TVBMQVRFXyBUMzIsIEdURVNUX1RFTVBMQVRFXyBUMzMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQz
NCwgR1RFU1RfVEVNUExBVEVfIFQzNSwgR1RFU1RfVEVNUExBVEVfIFQzNiwKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDM3LCBHVEVTVF9URU1QTEFURV8gVDM4LCBHVEVTVF9URU1QTEFURV8gVDM5LAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUNDAsIEdURVNUX1RFTVBMQVRFXyBUNDE+Ci1zdHJ1Y3QgVGVt
cGxhdGVzPFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIs
IFQxMywgVDE0LAotICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBU
MjMsIFQyNCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgVDMwLCBUMzEsIFQzMiwgVDMz
LCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwgTm9uZVQsIE5vbmVULAot
ICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVUPiB7Ci0g
IHR5cGVkZWYgVGVtcGxhdGVzNDE8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwg
VDEwLCBUMTEsIFQxMiwgVDEzLAotICAgICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwg
VDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsCi0gICAgICBUMjgsIFQyOSwg
VDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsCi0g
ICAgICBUNDE+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1Rf
VEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0
LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBU
MTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1Rf
VEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8g
VDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNU
X1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RF
TVBMQVRFXyBUMzAsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMSwgR1RFU1RfVEVNUExBVEVfIFQz
MiwgR1RFU1RfVEVNUExBVEVfIFQzMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDM0LCBHVEVTVF9U
RU1QTEFURV8gVDM1LCBHVEVTVF9URU1QTEFURV8gVDM2LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MzcsIEdURVNUX1RFTVBMQVRFXyBUMzgsIEdURVNUX1RFTVBMQVRFXyBUMzksCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQ0MCwgR1RFU1RfVEVNUExBVEVfIFQ0MSwgR1RFU1RfVEVNUExBVEVfIFQ0Mj4K
LXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEw
LCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwg
VDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQyOSwKLSAgICBUMzAsIFQz
MSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIs
IE5vbmVULAotICAgIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5v
bmVUPiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzNDI8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcs
IFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAgICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBU
MTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsCi0gICAgICBU
MjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5
LCBUNDAsIFQ0MSwKLSAgICAgIFQ0Mj4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExB
VEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVT
VF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFU
RV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RF
U1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFU
RV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdU
RVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVNUExB
VEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAgICBH
VEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFURV8g
VDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RFTVBMQVRFXyBUMjYsIEdURVNU
X1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyOCwgR1RFU1RfVEVNUExBVEVf
IFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDMxLCBHVEVT
VF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1QTEFURV8gVDMzLAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMzQsIEdURVNUX1RFTVBMQVRFXyBUMzUsIEdURVNUX1RFTVBMQVRFXyBUMzYsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQzNywgR1RFU1RfVEVNUExBVEVfIFQzOCwgR1RFU1RfVEVNUExBVEVfIFQz
OSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDQwLCBHVEVTVF9URU1QTEFURV8gVDQxLCBHVEVTVF9U
RU1QTEFURV8gVDQyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDM+Ci1zdHJ1Y3QgVGVtcGxhdGVz
PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywg
VDE0LAotICAgIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQy
NCwgVDI1LCBUMjYsIFQyNywgVDI4LCBUMjksCi0gICAgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQs
IFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwgVDQyLCBUNDMsCi0gICAgTm9uZVQs
IE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRlZiBU
ZW1wbGF0ZXM0MzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwg
VDEyLCBUMTMsCi0gICAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwg
VDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywKLSAgICAgIFQyOCwgVDI5LCBUMzAsIFQzMSwg
VDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLAotICAgICAg
VDQyLCBUNDM+IHR5cGU7Ci19OwotdGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUMSwgR1RFU1Rf
VEVNUExBVEVfIFQyLCBHVEVTVF9URU1QTEFURV8gVDMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0
LCBHVEVTVF9URU1QTEFURV8gVDUsIEdURVNUX1RFTVBMQVRFXyBUNiwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDcsIEdURVNUX1RFTVBMQVRFXyBUOCwgR1RFU1RfVEVNUExBVEVfIFQ5LAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUMTAsIEdURVNUX1RFTVBMQVRFXyBUMTEsIEdURVNUX1RFTVBMQVRFXyBU
MTIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMywgR1RFU1RfVEVNUExBVEVfIFQxNCwgR1RFU1Rf
VEVNUExBVEVfIFQxNSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDE2LCBHVEVTVF9URU1QTEFURV8g
VDE3LCBHVEVTVF9URU1QTEFURV8gVDE4LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTksIEdURVNU
X1RFTVBMQVRFXyBUMjAsIEdURVNUX1RFTVBMQVRFXyBUMjEsCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQyMiwgR1RFU1RfVEVNUExBVEVfIFQyMywgR1RFU1RfVEVNUExBVEVfIFQyNCwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDI1LCBHVEVTVF9URU1QTEFURV8gVDI2LCBHVEVTVF9URU1QTEFURV8gVDI3
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjgsIEdURVNUX1RFTVBMQVRFXyBUMjksIEdURVNUX1RF
TVBMQVRFXyBUMzAsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzMSwgR1RFU1RfVEVNUExBVEVfIFQz
MiwgR1RFU1RfVEVNUExBVEVfIFQzMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDM0LCBHVEVTVF9U
RU1QTEFURV8gVDM1LCBHVEVTVF9URU1QTEFURV8gVDM2LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MzcsIEdURVNUX1RFTVBMQVRFXyBUMzgsIEdURVNUX1RFTVBMQVRFXyBUMzksCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQ0MCwgR1RFU1RfVEVNUExBVEVfIFQ0MSwgR1RFU1RfVEVNUExBVEVfIFQ0MiwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDQzLCBHVEVTVF9URU1QTEFURV8gVDQ0Pgotc3RydWN0IFRl
bXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEy
LCBUMTMsIFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwg
VDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAotICAgIFQzMCwgVDMxLCBUMzIsIFQz
MywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEsIFQ0MiwgVDQzLCBUNDQs
Ci0gICAgTm9uZVQsIE5vbmVULCBOb25lVCwgTm9uZVQsIE5vbmVULCBOb25lVD4gewotICB0eXBl
ZGVmIFRlbXBsYXRlczQ0PFQxLCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwg
VDExLCBUMTIsIFQxMywKLSAgICAgIFQxNCwgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwg
VDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LAotICAgICAgVDI4LCBUMjksIFQzMCwg
VDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEsCi0g
ICAgICBUNDIsIFQ0MywgVDQ0PiB0eXBlOwotfTsKLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8g
VDEsIEdURVNUX1RFTVBMQVRFXyBUMiwgR1RFU1RfVEVNUExBVEVfIFQzLAotICAgIEdURVNUX1RF
TVBMQVRFXyBUNCwgR1RFU1RfVEVNUExBVEVfIFQ1LCBHVEVTVF9URU1QTEFURV8gVDYsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQ3LCBHVEVTVF9URU1QTEFURV8gVDgsIEdURVNUX1RFTVBMQVRFXyBU
OSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEwLCBHVEVTVF9URU1QTEFURV8gVDExLCBHVEVTVF9U
RU1QTEFURV8gVDEyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTMsIEdURVNUX1RFTVBMQVRFXyBU
MTQsIEdURVNUX1RFTVBMQVRFXyBUMTUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxNiwgR1RFU1Rf
VEVNUExBVEVfIFQxNywgR1RFU1RfVEVNUExBVEVfIFQxOCwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDE5LCBHVEVTVF9URU1QTEFURV8gVDIwLCBHVEVTVF9URU1QTEFURV8gVDIxLAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMjIsIEdURVNUX1RFTVBMQVRFXyBUMjMsIEdURVNUX1RFTVBMQVRFXyBUMjQs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQyNSwgR1RFU1RfVEVNUExBVEVfIFQyNiwgR1RFU1RfVEVN
UExBVEVfIFQyNywKLSAgICBHVEVTVF9URU1QTEFURV8gVDI4LCBHVEVTVF9URU1QTEFURV8gVDI5
LCBHVEVTVF9URU1QTEFURV8gVDMwLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzEsIEdURVNUX1RF
TVBMQVRFXyBUMzIsIEdURVNUX1RFTVBMQVRFXyBUMzMsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQz
NCwgR1RFU1RfVEVNUExBVEVfIFQzNSwgR1RFU1RfVEVNUExBVEVfIFQzNiwKLSAgICBHVEVTVF9U
RU1QTEFURV8gVDM3LCBHVEVTVF9URU1QTEFURV8gVDM4LCBHVEVTVF9URU1QTEFURV8gVDM5LAot
ICAgIEdURVNUX1RFTVBMQVRFXyBUNDAsIEdURVNUX1RFTVBMQVRFXyBUNDEsIEdURVNUX1RFTVBM
QVRFXyBUNDIsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0MywgR1RFU1RfVEVNUExBVEVfIFQ0NCwg
R1RFU1RfVEVNUExBVEVfIFQ0NT4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1
LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgVDE1LCBUMTYs
IFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBU
MjgsIFQyOSwKLSAgICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4
LCBUMzksIFQ0MCwgVDQxLCBUNDIsIFQ0MywgVDQ0LAotICAgIFQ0NSwgTm9uZVQsIE5vbmVULCBO
b25lVCwgTm9uZVQsIE5vbmVUPiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzNDU8VDEsIFQyLCBUMywg
VDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAgICAgVDE0LCBU
MTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2
LCBUMjcsCi0gICAgICBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2
LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwKLSAgICAgIFQ0MiwgVDQzLCBUNDQsIFQ0NT4gdHlw
ZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIs
IEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBM
QVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RF
U1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVf
IFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVT
VF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1
LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RF
TVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQy
MCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9U
RU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MjUsIEdURVNUX1RFTVBMQVRFXyBUMjYsIEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQyOCwgR1RFU1RfVEVNUExBVEVfIFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDMxLCBHVEVTVF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1Q
TEFURV8gVDMzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzQsIEdURVNUX1RFTVBMQVRFXyBUMzUs
IEdURVNUX1RFTVBMQVRFXyBUMzYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNywgR1RFU1RfVEVN
UExBVEVfIFQzOCwgR1RFU1RfVEVNUExBVEVfIFQzOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDQw
LCBHVEVTVF9URU1QTEFURV8gVDQxLCBHVEVTVF9URU1QTEFURV8gVDQyLAotICAgIEdURVNUX1RF
TVBMQVRFXyBUNDMsIEdURVNUX1RFTVBMQVRFXyBUNDQsIEdURVNUX1RFTVBMQVRFXyBUNDUsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQ0Nj4KLXN0cnVjdCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQs
IFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLCBUMTQsCi0gICAgVDE1LCBU
MTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3
LCBUMjgsIFQyOSwKLSAgICBUMzAsIFQzMSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywg
VDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsIFQ0MywgVDQ0LAotICAgIFQ0NSwgVDQ2LCBOb25lVCwg
Tm9uZVQsIE5vbmVULCBOb25lVD4gewotICB0eXBlZGVmIFRlbXBsYXRlczQ2PFQxLCBUMiwgVDMs
IFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAgICAgIFQxNCwg
VDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQyMywgVDI0LCBUMjUsIFQy
NiwgVDI3LAotICAgICAgVDI4LCBUMjksIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQz
NiwgVDM3LCBUMzgsIFQzOSwgVDQwLCBUNDEsCi0gICAgICBUNDIsIFQ0MywgVDQ0LCBUNDUsIFQ0
Nj4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFU
RV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNU
X1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
NywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVN
UExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFU
RV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdU
RVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExB
VEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBH
VEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBM
QVRFXyBUMjUsIEdURVNUX1RFTVBMQVRFXyBUMjYsIEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAg
R1RFU1RfVEVNUExBVEVfIFQyOCwgR1RFU1RfVEVNUExBVEVfIFQyOSwgR1RFU1RfVEVNUExBVEVf
IFQzMCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDMxLCBHVEVTVF9URU1QTEFURV8gVDMyLCBHVEVT
VF9URU1QTEFURV8gVDMzLAotICAgIEdURVNUX1RFTVBMQVRFXyBUMzQsIEdURVNUX1RFTVBMQVRF
XyBUMzUsIEdURVNUX1RFTVBMQVRFXyBUMzYsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQzNywgR1RF
U1RfVEVNUExBVEVfIFQzOCwgR1RFU1RfVEVNUExBVEVfIFQzOSwKLSAgICBHVEVTVF9URU1QTEFU
RV8gVDQwLCBHVEVTVF9URU1QTEFURV8gVDQxLCBHVEVTVF9URU1QTEFURV8gVDQyLAotICAgIEdU
RVNUX1RFTVBMQVRFXyBUNDMsIEdURVNUX1RFTVBMQVRFXyBUNDQsIEdURVNUX1RFTVBMQVRFXyBU
NDUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0NiwgR1RFU1RfVEVNUExBVEVfIFQ0Nz4KLXN0cnVj
dCBUZW1wbGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEs
IFQxMiwgVDEzLCBUMTQsCi0gICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBU
MjIsIFQyMywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQyOSwKLSAgICBUMzAsIFQzMSwgVDMy
LCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsIFQ0Mywg
VDQ0LAotICAgIFQ0NSwgVDQ2LCBUNDcsIE5vbmVULCBOb25lVCwgTm9uZVQ+IHsKLSAgdHlwZWRl
ZiBUZW1wbGF0ZXM0NzxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQx
MSwgVDEyLCBUMTMsCi0gICAgICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQy
MSwgVDIyLCBUMjMsIFQyNCwgVDI1LCBUMjYsIFQyNywKLSAgICAgIFQyOCwgVDI5LCBUMzAsIFQz
MSwgVDMyLCBUMzMsIFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLAotICAg
ICAgVDQyLCBUNDMsIFQ0NCwgVDQ1LCBUNDYsIFQ0Nz4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8R1RF
U1RfVEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywK
LSAgICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExB
VEVfIFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVT
VF9URU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVf
IFQxMSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVT
VF9URU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRF
XyBUMTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RF
U1RfVEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQy
MSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9U
RU1QTEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RFTVBMQVRFXyBU
MjYsIEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyOCwgR1RFU1Rf
VEVNUExBVEVfIFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwKLSAgICBHVEVTVF9URU1QTEFURV8g
VDMxLCBHVEVTVF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1QTEFURV8gVDMzLAotICAgIEdURVNU
X1RFTVBMQVRFXyBUMzQsIEdURVNUX1RFTVBMQVRFXyBUMzUsIEdURVNUX1RFTVBMQVRFXyBUMzYs
Ci0gICAgR1RFU1RfVEVNUExBVEVfIFQzNywgR1RFU1RfVEVNUExBVEVfIFQzOCwgR1RFU1RfVEVN
UExBVEVfIFQzOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDQwLCBHVEVTVF9URU1QTEFURV8gVDQx
LCBHVEVTVF9URU1QTEFURV8gVDQyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDMsIEdURVNUX1RF
TVBMQVRFXyBUNDQsIEdURVNUX1RFTVBMQVRFXyBUNDUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0
NiwgR1RFU1RfVEVNUExBVEVfIFQ0NywgR1RFU1RfVEVNUExBVEVfIFQ0OD4KLXN0cnVjdCBUZW1w
bGF0ZXM8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwg
VDEzLCBUMTQsCi0gICAgVDE1LCBUMTYsIFQxNywgVDE4LCBUMTksIFQyMCwgVDIxLCBUMjIsIFQy
MywgVDI0LCBUMjUsIFQyNiwgVDI3LCBUMjgsIFQyOSwKLSAgICBUMzAsIFQzMSwgVDMyLCBUMzMs
IFQzNCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwgVDQxLCBUNDIsIFQ0MywgVDQ0LAot
ICAgIFQ0NSwgVDQ2LCBUNDcsIFQ0OCwgTm9uZVQsIE5vbmVUPiB7Ci0gIHR5cGVkZWYgVGVtcGxh
dGVzNDg8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4LCBUOSwgVDEwLCBUMTEsIFQxMiwg
VDEzLAotICAgICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgsIFQxOSwgVDIwLCBUMjEsIFQyMiwg
VDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsCi0gICAgICBUMjgsIFQyOSwgVDMwLCBUMzEsIFQzMiwg
VDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwKLSAgICAgIFQ0Miwg
VDQzLCBUNDQsIFQ0NSwgVDQ2LCBUNDcsIFQ0OD4gdHlwZTsKLX07Ci10ZW1wbGF0ZSA8R1RFU1Rf
VEVNUExBVEVfIFQxLCBHVEVTVF9URU1QTEFURV8gVDIsIEdURVNUX1RFTVBMQVRFXyBUMywKLSAg
ICBHVEVTVF9URU1QTEFURV8gVDQsIEdURVNUX1RFTVBMQVRFXyBUNSwgR1RFU1RfVEVNUExBVEVf
IFQ2LAotICAgIEdURVNUX1RFTVBMQVRFXyBUNywgR1RFU1RfVEVNUExBVEVfIFQ4LCBHVEVTVF9U
RU1QTEFURV8gVDksCi0gICAgR1RFU1RfVEVNUExBVEVfIFQxMCwgR1RFU1RfVEVNUExBVEVfIFQx
MSwgR1RFU1RfVEVNUExBVEVfIFQxMiwKLSAgICBHVEVTVF9URU1QTEFURV8gVDEzLCBHVEVTVF9U
RU1QTEFURV8gVDE0LCBHVEVTVF9URU1QTEFURV8gVDE1LAotICAgIEdURVNUX1RFTVBMQVRFXyBU
MTYsIEdURVNUX1RFTVBMQVRFXyBUMTcsIEdURVNUX1RFTVBMQVRFXyBUMTgsCi0gICAgR1RFU1Rf
VEVNUExBVEVfIFQxOSwgR1RFU1RfVEVNUExBVEVfIFQyMCwgR1RFU1RfVEVNUExBVEVfIFQyMSwK
LSAgICBHVEVTVF9URU1QTEFURV8gVDIyLCBHVEVTVF9URU1QTEFURV8gVDIzLCBHVEVTVF9URU1Q
TEFURV8gVDI0LAotICAgIEdURVNUX1RFTVBMQVRFXyBUMjUsIEdURVNUX1RFTVBMQVRFXyBUMjYs
IEdURVNUX1RFTVBMQVRFXyBUMjcsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQyOCwgR1RFU1RfVEVN
UExBVEVfIFQyOSwgR1RFU1RfVEVNUExBVEVfIFQzMCwKLSAgICBHVEVTVF9URU1QTEFURV8gVDMx
LCBHVEVTVF9URU1QTEFURV8gVDMyLCBHVEVTVF9URU1QTEFURV8gVDMzLAotICAgIEdURVNUX1RF
TVBMQVRFXyBUMzQsIEdURVNUX1RFTVBMQVRFXyBUMzUsIEdURVNUX1RFTVBMQVRFXyBUMzYsCi0g
ICAgR1RFU1RfVEVNUExBVEVfIFQzNywgR1RFU1RfVEVNUExBVEVfIFQzOCwgR1RFU1RfVEVNUExB
VEVfIFQzOSwKLSAgICBHVEVTVF9URU1QTEFURV8gVDQwLCBHVEVTVF9URU1QTEFURV8gVDQxLCBH
VEVTVF9URU1QTEFURV8gVDQyLAotICAgIEdURVNUX1RFTVBMQVRFXyBUNDMsIEdURVNUX1RFTVBM
QVRFXyBUNDQsIEdURVNUX1RFTVBMQVRFXyBUNDUsCi0gICAgR1RFU1RfVEVNUExBVEVfIFQ0Niwg
R1RFU1RfVEVNUExBVEVfIFQ0NywgR1RFU1RfVEVNUExBVEVfIFQ0OCwKLSAgICBHVEVTVF9URU1Q
TEFURV8gVDQ5Pgotc3RydWN0IFRlbXBsYXRlczxUMSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywg
VDgsIFQ5LCBUMTAsIFQxMSwgVDEyLCBUMTMsIFQxNCwKLSAgICBUMTUsIFQxNiwgVDE3LCBUMTgs
IFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsIFQyOCwgVDI5LAot
ICAgIFQzMCwgVDMxLCBUMzIsIFQzMywgVDM0LCBUMzUsIFQzNiwgVDM3LCBUMzgsIFQzOSwgVDQw
LCBUNDEsIFQ0MiwgVDQzLCBUNDQsCi0gICAgVDQ1LCBUNDYsIFQ0NywgVDQ4LCBUNDksIE5vbmVU
PiB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzNDk8VDEsIFQyLCBUMywgVDQsIFQ1LCBUNiwgVDcsIFQ4
LCBUOSwgVDEwLCBUMTEsIFQxMiwgVDEzLAotICAgICAgVDE0LCBUMTUsIFQxNiwgVDE3LCBUMTgs
IFQxOSwgVDIwLCBUMjEsIFQyMiwgVDIzLCBUMjQsIFQyNSwgVDI2LCBUMjcsCi0gICAgICBUMjgs
IFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQzNSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBU
NDAsIFQ0MSwKLSAgICAgIFQ0MiwgVDQzLCBUNDQsIFQ0NSwgVDQ2LCBUNDcsIFQ0OCwgVDQ5PiB0
eXBlOwotfTsKLQotLy8gVGhlIFR5cGVMaXN0IHRlbXBsYXRlIG1ha2VzIGl0IHBvc3NpYmxlIHRv
IHVzZSBlaXRoZXIgYSBzaW5nbGUgdHlwZQotLy8gb3IgYSBUeXBlczwuLi4+IGxpc3QgaW4gVFlQ
RURfVEVTVF9DQVNFKCkgYW5kCi0vLyBJTlNUQU5USUFURV9UWVBFRF9URVNUX0NBU0VfUCgpLgor
dGVtcGxhdGUgPHR5cGVuYW1lLi4uIFRzPgorc3RydWN0IGlzX3Byb3h5X3R5cGVfbGlzdDxQcm94
eVR5cGVMaXN0PFRzLi4uPj4gOiBzdGQ6OnRydWVfdHlwZSB7fTsKIAorLy8gR2VuZXJhdG9yIHdo
aWNoIGNvbmRpdGlvbmFsbHkgY3JlYXRlcyB0eXBlIGxpc3RzLgorLy8gSXQgcmVjb2duaXplcyBp
ZiBhIHJlcXVlc3RlZCB0eXBlIGxpc3Qgc2hvdWxkIGJlIGNyZWF0ZWQKKy8vIGFuZCBwcmV2ZW50
cyBjcmVhdGluZyBhIG5ldyB0eXBlIGxpc3QgbmVzdGVkIHdpdGhpbiBhbm90aGVyIG9uZS4KIHRl
bXBsYXRlIDx0eXBlbmFtZSBUPgotc3RydWN0IFR5cGVMaXN0IHsKLSAgdHlwZWRlZiBUeXBlczE8
VD4gdHlwZTsKLX07CitzdHJ1Y3QgR2VuZXJhdGVUeXBlTGlzdCB7CisgcHJpdmF0ZToKKyAgdXNp
bmcgcHJveHkgPSB0eXBlbmFtZSBzdGQ6OmNvbmRpdGlvbmFsPGlzX3Byb3h5X3R5cGVfbGlzdDxU
Pjo6dmFsdWUsIFQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQ
cm94eVR5cGVMaXN0PFQ+Pjo6dHlwZTsKIAotdGVtcGxhdGUgPHR5cGVuYW1lIFQxLCB0eXBlbmFt
ZSBUMiwgdHlwZW5hbWUgVDMsIHR5cGVuYW1lIFQ0LCB0eXBlbmFtZSBUNSwKLSAgICB0eXBlbmFt
ZSBUNiwgdHlwZW5hbWUgVDcsIHR5cGVuYW1lIFQ4LCB0eXBlbmFtZSBUOSwgdHlwZW5hbWUgVDEw
LAotICAgIHR5cGVuYW1lIFQxMSwgdHlwZW5hbWUgVDEyLCB0eXBlbmFtZSBUMTMsIHR5cGVuYW1l
IFQxNCwgdHlwZW5hbWUgVDE1LAotICAgIHR5cGVuYW1lIFQxNiwgdHlwZW5hbWUgVDE3LCB0eXBl
bmFtZSBUMTgsIHR5cGVuYW1lIFQxOSwgdHlwZW5hbWUgVDIwLAotICAgIHR5cGVuYW1lIFQyMSwg
dHlwZW5hbWUgVDIyLCB0eXBlbmFtZSBUMjMsIHR5cGVuYW1lIFQyNCwgdHlwZW5hbWUgVDI1LAot
ICAgIHR5cGVuYW1lIFQyNiwgdHlwZW5hbWUgVDI3LCB0eXBlbmFtZSBUMjgsIHR5cGVuYW1lIFQy
OSwgdHlwZW5hbWUgVDMwLAotICAgIHR5cGVuYW1lIFQzMSwgdHlwZW5hbWUgVDMyLCB0eXBlbmFt
ZSBUMzMsIHR5cGVuYW1lIFQzNCwgdHlwZW5hbWUgVDM1LAotICAgIHR5cGVuYW1lIFQzNiwgdHlw
ZW5hbWUgVDM3LCB0eXBlbmFtZSBUMzgsIHR5cGVuYW1lIFQzOSwgdHlwZW5hbWUgVDQwLAotICAg
IHR5cGVuYW1lIFQ0MSwgdHlwZW5hbWUgVDQyLCB0eXBlbmFtZSBUNDMsIHR5cGVuYW1lIFQ0NCwg
dHlwZW5hbWUgVDQ1LAotICAgIHR5cGVuYW1lIFQ0NiwgdHlwZW5hbWUgVDQ3LCB0eXBlbmFtZSBU
NDgsIHR5cGVuYW1lIFQ0OSwgdHlwZW5hbWUgVDUwPgotc3RydWN0IFR5cGVMaXN0PFR5cGVzPFQx
LCBUMiwgVDMsIFQ0LCBUNSwgVDYsIFQ3LCBUOCwgVDksIFQxMCwgVDExLCBUMTIsIFQxMywKLSAg
ICBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQyNCwg
VDI1LCBUMjYsIFQyNywgVDI4LAotICAgIFQyOSwgVDMwLCBUMzEsIFQzMiwgVDMzLCBUMzQsIFQz
NSwgVDM2LCBUMzcsIFQzOCwgVDM5LCBUNDAsIFQ0MSwgVDQyLCBUNDMsCi0gICAgVDQ0LCBUNDUs
IFQ0NiwgVDQ3LCBUNDgsIFQ0OSwgVDUwPiA+IHsKLSAgdHlwZWRlZiB0eXBlbmFtZSBUeXBlczxU
MSwgVDIsIFQzLCBUNCwgVDUsIFQ2LCBUNywgVDgsIFQ5LCBUMTAsIFQxMSwgVDEyLAotICAgICAg
VDEzLCBUMTQsIFQxNSwgVDE2LCBUMTcsIFQxOCwgVDE5LCBUMjAsIFQyMSwgVDIyLCBUMjMsIFQy
NCwgVDI1LCBUMjYsCi0gICAgICBUMjcsIFQyOCwgVDI5LCBUMzAsIFQzMSwgVDMyLCBUMzMsIFQz
NCwgVDM1LCBUMzYsIFQzNywgVDM4LCBUMzksIFQ0MCwKLSAgICAgIFQ0MSwgVDQyLCBUNDMsIFQ0
NCwgVDQ1LCBUNDYsIFQ0NywgVDQ4LCBUNDksIFQ1MD46OnR5cGUgdHlwZTsKKyBwdWJsaWM6Cisg
IHVzaW5nIHR5cGUgPSB0eXBlbmFtZSBwcm94eTo6dHlwZTsKIH07CiAKICNlbmRpZiAgLy8gR1RF
U1RfSEFTX1RZUEVEX1RFU1QgfHwgR1RFU1RfSEFTX1RZUEVEX1RFU1RfUAogCiB9ICAvLyBuYW1l
c3BhY2UgaW50ZXJuYWwKKwordGVtcGxhdGUgPHR5cGVuYW1lLi4uIFRzPgordXNpbmcgVHlwZXMg
PSBpbnRlcm5hbDo6UHJveHlUeXBlTGlzdDxUcy4uLj47CisKIH0gIC8vIG5hbWVzcGFjZSB0ZXN0
aW5nCiAKICNlbmRpZiAgLy8gR1RFU1RfSU5DTFVERV9HVEVTVF9JTlRFUk5BTF9HVEVTVF9UWVBF
X1VUSUxfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9z
cmMvaW5jbHVkZS9ndGVzdC9pbnRlcm5hbC9ndGVzdC10eXBlLXV0aWwuaC5wdW1wIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0
ZXN0LXR5cGUtdXRpbC5oLnB1bXAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDFh
NWQzOWRmYTZkMjRjN2M0MWExNmExNWYyZTJhNWNlOTQ5ZGIuLjAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0
ZXN0L3NyYy9pbmNsdWRlL2d0ZXN0L2ludGVybmFsL2d0ZXN0LXR5cGUtdXRpbC5oLnB1bXAKKysr
IC9kZXYvbnVsbApAQCAtMSwzMTQgKzAsMCBAQAotJCQgLSotIG1vZGU6IGMrKzsgLSotCi0kdmFy
IG4gPSA1MCAgJCQgTWF4aW11bSBsZW5ndGggb2YgdHlwZSBsaXN0cyB3ZSB3YW50IHRvIHN1cHBv
cnQuCi0vLyBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLgotLy8gQWxsIFJpZ2h0cyBSZXNlcnZl
ZC4KLS8vCi0vLyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKLS8vIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKLS8vIG1ldDoKLS8vCi0vLyAg
ICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAotLy8gbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgotLy8gICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotLy8gY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgotLy8gaW4gdGhl
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQot
Ly8gZGlzdHJpYnV0aW9uLgotLy8gICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5j
LiBub3IgdGhlIG5hbWVzIG9mIGl0cwotLy8gY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVu
ZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KLS8vIHRoaXMgc29mdHdhcmUg
d2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0vLwotLy8gVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJV
VE9SUwotLy8gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QKLS8vIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgotLy8gQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKLS8vIE9X
TkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLAotLy8gU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVAotLy8gTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCi0vLyBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
LS8vIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQKLS8vIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotLy8gT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLQotCi0vLyBU
eXBlIHV0aWxpdGllcyBuZWVkZWQgZm9yIGltcGxlbWVudGluZyB0eXBlZCBhbmQgdHlwZS1wYXJh
bWV0ZXJpemVkCi0vLyB0ZXN0cy4gIFRoaXMgZmlsZSBpcyBnZW5lcmF0ZWQgYnkgYSBTQ1JJUFQu
ICBETyBOT1QgRURJVCBCWSBIQU5EIQotLy8KLS8vIEN1cnJlbnRseSB3ZSBzdXBwb3J0IGF0IG1v
c3QgJG4gdHlwZXMgaW4gYSBsaXN0LCBhbmQgYXQgbW9zdCAkbgotLy8gdHlwZS1wYXJhbWV0ZXJp
emVkIHRlc3RzIGluIG9uZSB0eXBlLXBhcmFtZXRlcml6ZWQgdGVzdCBjYXNlLgotLy8gUGxlYXNl
IGNvbnRhY3QgZ29vZ2xldGVzdGZyYW1ld29ya0Bnb29nbGVncm91cHMuY29tIGlmIHlvdSBuZWVk
Ci0vLyBtb3JlLgotCi0vLyBHT09HTEVURVNUX0NNMDAwMSBETyBOT1QgREVMRVRFCi0KLSNpZm5k
ZWYgR1RFU1RfSU5DTFVERV9HVEVTVF9JTlRFUk5BTF9HVEVTVF9UWVBFX1VUSUxfSF8KLSNkZWZp
bmUgR1RFU1RfSU5DTFVERV9HVEVTVF9JTlRFUk5BTF9HVEVTVF9UWVBFX1VUSUxfSF8KLQotI2lu
Y2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQuaCIKLQotLy8gI2lmZGVmIF9fR05VQ19f
IGlzIHRvbyBnZW5lcmFsIGhlcmUuICBJdCBpcyBwb3NzaWJsZSB0byB1c2UgZ2NjIHdpdGhvdXQg
dXNpbmcKLS8vIGxpYnN0ZGMrKyAod2hpY2ggaXMgd2hlcmUgY3h4YWJpLmggY29tZXMgZnJvbSku
Ci0jIGlmIEdURVNUX0hBU19DWFhBQklfSF8KLSMgIGluY2x1ZGUgPGN4eGFiaS5oPgotIyBlbGlm
IGRlZmluZWQoX19IUF9hQ0MpCi0jICBpbmNsdWRlIDxhY3h4X2RlbWFuZ2xlLmg+Ci0jIGVuZGlm
ICAvLyBHVEVTVF9IQVNIX0NYWEFCSV9IXwotCi1uYW1lc3BhY2UgdGVzdGluZyB7Ci1uYW1lc3Bh
Y2UgaW50ZXJuYWwgewotCi0vLyBDYW5vbmljYWxpemVzIGEgZ2l2ZW4gbmFtZSB3aXRoIHJlc3Bl
Y3QgdG8gdGhlIFN0YW5kYXJkIEMrKyBMaWJyYXJ5LgotLy8gVGhpcyBoYW5kbGVzIHJlbW92aW5n
IHRoZSBpbmxpbmUgbmFtZXNwYWNlIHdpdGhpbiBgc3RkYCB0aGF0IGlzCi0vLyB1c2VkIGJ5IHZh
cmlvdXMgc3RhbmRhcmQgbGlicmFyaWVzIChlLmcuLCBgc3RkOjpfXzFgKS4gIE5hbWVzIG91dHNp
ZGUKLS8vIG9mIG5hbWVzcGFjZSBzdGQgYXJlIHJldHVybmVkIHVubW9kaWZpZWQuCi1pbmxpbmUg
c3RkOjpzdHJpbmcgQ2Fub25pY2FsaXplRm9yU3RkTGliVmVyc2lvbmluZyhzdGQ6OnN0cmluZyBz
KSB7Ci0gIHN0YXRpYyBjb25zdCBjaGFyIHByZWZpeFtdID0gInN0ZDo6X18iOwotICBpZiAocy5j
b21wYXJlKDAsIHN0cmxlbihwcmVmaXgpLCBwcmVmaXgpID09IDApIHsKLSAgICBzdGQ6OnN0cmlu
Zzo6c2l6ZV90eXBlIGVuZCA9IHMuZmluZCgiOjoiLCBzdHJsZW4ocHJlZml4KSk7Ci0gICAgaWYg
KGVuZCAhPSBzLm5wb3MpIHsKLSAgICAgIC8vIEVyYXNlIGV2ZXJ5dGhpbmcgYmV0d2VlbiB0aGUg
aW5pdGlhbCBgc3RkYCBhbmQgdGhlIHNlY29uZCBgOjpgLgotICAgICAgcy5lcmFzZShzdHJsZW4o
InN0ZCIpLCBlbmQgLSBzdHJsZW4oInN0ZCIpKTsKLSAgICB9Ci0gIH0KLSAgcmV0dXJuIHM7Ci19
Ci0KLS8vIEdldFR5cGVOYW1lPFQ+KCkgcmV0dXJucyBhIGh1bWFuLXJlYWRhYmxlIG5hbWUgb2Yg
dHlwZSBULgotLy8gTkI6IFRoaXMgZnVuY3Rpb24gaXMgYWxzbyB1c2VkIGluIEdvb2dsZSBNb2Nr
LCBzbyBkb24ndCBtb3ZlIGl0IGluc2lkZSBvZgotLy8gdGhlIHR5cGVkLXRlc3Qtb25seSBzZWN0
aW9uIGJlbG93LgotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1zdGQ6OnN0cmluZyBHZXRUeXBlTmFt
ZSgpIHsKLSMgaWYgR1RFU1RfSEFTX1JUVEkKLQotICBjb25zdCBjaGFyKiBjb25zdCBuYW1lID0g
dHlwZWlkKFQpLm5hbWUoKTsKLSMgIGlmIEdURVNUX0hBU19DWFhBQklfSF8gfHwgZGVmaW5lZChf
X0hQX2FDQykKLSAgaW50IHN0YXR1cyA9IDA7Ci0gIC8vIGdjYydzIGltcGxlbWVudGF0aW9uIG9m
IHR5cGVpZChUKS5uYW1lKCkgbWFuZ2xlcyB0aGUgdHlwZSBuYW1lLAotICAvLyBzbyB3ZSBoYXZl
IHRvIGRlbWFuZ2xlIGl0LgotIyAgIGlmIEdURVNUX0hBU19DWFhBQklfSF8KLSAgdXNpbmcgYWJp
OjpfX2N4YV9kZW1hbmdsZTsKLSMgICBlbmRpZiAgLy8gR1RFU1RfSEFTX0NYWEFCSV9IXwotICBj
aGFyKiBjb25zdCByZWFkYWJsZV9uYW1lID0gX19jeGFfZGVtYW5nbGUobmFtZSwgMCwgMCwgJnN0
YXR1cyk7Ci0gIGNvbnN0IHN0ZDo6c3RyaW5nIG5hbWVfc3RyKHN0YXR1cyA9PSAwID8gcmVhZGFi
bGVfbmFtZSA6IG5hbWUpOwotICBmcmVlKHJlYWRhYmxlX25hbWUpOwotICByZXR1cm4gQ2Fub25p
Y2FsaXplRm9yU3RkTGliVmVyc2lvbmluZyhuYW1lX3N0cik7Ci0jICBlbHNlCi0gIHJldHVybiBu
YW1lOwotIyAgZW5kaWYgIC8vIEdURVNUX0hBU19DWFhBQklfSF8gfHwgX19IUF9hQ0MKLQotIyBl
bHNlCi0KLSAgcmV0dXJuICI8dHlwZT4iOwotCi0jIGVuZGlmICAvLyBHVEVTVF9IQVNfUlRUSQot
fQotCi0jaWYgR1RFU1RfSEFTX1RZUEVEX1RFU1QgfHwgR1RFU1RfSEFTX1RZUEVEX1RFU1RfUAot
Ci0vLyBBc3NlcnR5VHlwZUVxPFQxLCBUMj46OnR5cGUgaXMgZGVmaW5lZCBpZmYgVDEgYW5kIFQy
IGFyZSB0aGUgc2FtZQotLy8gdHlwZS4gIFRoaXMgY2FuIGJlIHVzZWQgYXMgYSBjb21waWxlLXRp
bWUgYXNzZXJ0aW9uIHRvIGVuc3VyZSB0aGF0Ci0vLyB0d28gdHlwZXMgYXJlIGVxdWFsLgotCi10
ZW1wbGF0ZSA8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyPgotc3RydWN0IEFzc2VydFR5cGVFcTsK
LQotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1zdHJ1Y3QgQXNzZXJ0VHlwZUVxPFQsIFQ+IHsKLSAg
dHlwZWRlZiBib29sIHR5cGU7Ci19OwotCi0vLyBBIHVuaXF1ZSB0eXBlIHVzZWQgYXMgdGhlIGRl
ZmF1bHQgdmFsdWUgZm9yIHRoZSBhcmd1bWVudHMgb2YgY2xhc3MKLS8vIHRlbXBsYXRlIFR5cGVz
LiAgVGhpcyBhbGxvd3MgdXMgdG8gc2ltdWxhdGUgdmFyaWFkaWMgdGVtcGxhdGVzCi0vLyAoZS5n
LiBUeXBlczxpbnQ+LCBUeXBlPGludCwgZG91YmxlPiwgYW5kIGV0YyksIHdoaWNoIEMrKyBkb2Vz
bid0Ci0vLyBzdXBwb3J0IGRpcmVjdGx5Lgotc3RydWN0IE5vbmUge307Ci0KLS8vIFRoZSBmb2xs
b3dpbmcgZmFtaWx5IG9mIHN0cnVjdCBhbmQgc3RydWN0IHRlbXBsYXRlcyBhcmUgdXNlZCB0bwot
Ly8gcmVwcmVzZW50IHR5cGUgbGlzdHMuICBJbiBwYXJ0aWN1bGFyLCBUeXBlc048VDEsIFQyLCAu
Li4sIFROPgotLy8gcmVwcmVzZW50cyBhIHR5cGUgbGlzdCB3aXRoIE4gdHlwZXMgKFQxLCBUMiwg
Li4uLCBhbmQgVE4pIGluIGl0LgotLy8gRXhjZXB0IGZvciBUeXBlczAsIGV2ZXJ5IHN0cnVjdCBp
biB0aGUgZmFtaWx5IGhhcyB0d28gbWVtYmVyIHR5cGVzOgotLy8gSGVhZCBmb3IgdGhlIGZpcnN0
IHR5cGUgaW4gdGhlIGxpc3QsIGFuZCBUYWlsIGZvciB0aGUgcmVzdCBvZiB0aGUKLS8vIGxpc3Qu
Ci0KLS8vIFRoZSBlbXB0eSB0eXBlIGxpc3QuCi1zdHJ1Y3QgVHlwZXMwIHt9OwotCi0vLyBUeXBl
IGxpc3RzIG9mIGxlbmd0aCAxLCAyLCAzLCBhbmQgc28gb24uCi0KLXRlbXBsYXRlIDx0eXBlbmFt
ZSBUMT4KLXN0cnVjdCBUeXBlczEgewotICB0eXBlZGVmIFQxIEhlYWQ7Ci0gIHR5cGVkZWYgVHlw
ZXMwIFRhaWw7Ci19OwotCi0kcmFuZ2UgaSAyLi5uCi0KLSRmb3IgaSBbWwotJHJhbmdlIGogMS4u
aQotJHJhbmdlIGsgMi4uaQotdGVtcGxhdGUgPCRmb3IgaiwgW1t0eXBlbmFtZSBUJGpdXT4KLXN0
cnVjdCBUeXBlcyRpIHsKLSAgdHlwZWRlZiBUMSBIZWFkOwotICB0eXBlZGVmIFR5cGVzJChpLTEp
PCRmb3IgaywgW1tUJGtdXT4gVGFpbDsKLX07Ci0KLQotXV0KLQotfSAgLy8gbmFtZXNwYWNlIGlu
dGVybmFsCi0KLS8vIFdlIGRvbid0IHdhbnQgdG8gcmVxdWlyZSB0aGUgdXNlcnMgdG8gd3JpdGUg
VHlwZXNOPC4uLj4gZGlyZWN0bHksCi0vLyBhcyB0aGF0IHdvdWxkIHJlcXVpcmUgdGhlbSB0byBj
b3VudCB0aGUgbGVuZ3RoLiAgVHlwZXM8Li4uPiBpcyBtdWNoCi0vLyBlYXNpZXIgdG8gd3JpdGUs
IGJ1dCBnZW5lcmF0ZXMgaG9ycmlibGUgbWVzc2FnZXMgd2hlbiB0aGVyZSBpcyBhCi0vLyBjb21w
aWxlciBlcnJvciwgYXMgZ2NjIGluc2lzdHMgb24gcHJpbnRpbmcgb3V0IGVhY2ggdGVtcGxhdGUK
LS8vIGFyZ3VtZW50LCBldmVuIGlmIGl0IGhhcyB0aGUgZGVmYXVsdCB2YWx1ZSAodGhpcyBtZWFu
cyBUeXBlczxpbnQ+Ci0vLyB3aWxsIGFwcGVhciBhcyBUeXBlczxpbnQsIE5vbmUsIE5vbmUsIC4u
LiwgTm9uZT4gaW4gdGhlIGNvbXBpbGVyCi0vLyBlcnJvcnMpLgotLy8KLS8vIE91ciBzb2x1dGlv
biBpcyB0byBjb21iaW5lIHRoZSBiZXN0IHBhcnQgb2YgdGhlIHR3byBhcHByb2FjaGVzOiBhCi0v
LyB1c2VyIHdvdWxkIHdyaXRlIFR5cGVzPFQxLCAuLi4sIFROPiwgYW5kIEdvb2dsZSBUZXN0IHdp
bGwgdHJhbnNsYXRlCi0vLyB0aGF0IHRvIFR5cGVzTjxUMSwgLi4uLCBUTj4gaW50ZXJuYWxseSB0
byBtYWtlIGVycm9yIG1lc3NhZ2VzCi0vLyByZWFkYWJsZS4gIFRoZSB0cmFuc2xhdGlvbiBpcyBk
b25lIGJ5IHRoZSAndHlwZScgbWVtYmVyIG9mIHRoZQotLy8gVHlwZXMgdGVtcGxhdGUuCi0KLSRy
YW5nZSBpIDEuLm4KLXRlbXBsYXRlIDwkZm9yIGksIFtbdHlwZW5hbWUgVCRpID0gaW50ZXJuYWw6
Ok5vbmVdXT4KLXN0cnVjdCBUeXBlcyB7Ci0gIHR5cGVkZWYgaW50ZXJuYWw6OlR5cGVzJG48JGZv
ciBpLCBbW1QkaV1dPiB0eXBlOwotfTsKLQotdGVtcGxhdGUgPD4KLXN0cnVjdCBUeXBlczwkZm9y
IGksIFtbaW50ZXJuYWw6Ok5vbmVdXT4gewotICB0eXBlZGVmIGludGVybmFsOjpUeXBlczAgdHlw
ZTsKLX07Ci0KLSRyYW5nZSBpIDEuLm4tMQotJGZvciBpIFtbCi0kcmFuZ2UgaiAxLi5pCi0kcmFu
Z2UgayBpKzEuLm4KLXRlbXBsYXRlIDwkZm9yIGosIFtbdHlwZW5hbWUgVCRqXV0+Ci1zdHJ1Y3Qg
VHlwZXM8JGZvciBqLCBbW1Qkal1dJGZvciBrW1ssIGludGVybmFsOjpOb25lXV0+IHsKLSAgdHlw
ZWRlZiBpbnRlcm5hbDo6VHlwZXMkaTwkZm9yIGosIFtbVCRqXV0+IHR5cGU7Ci19OwotCi1dXQot
Ci1uYW1lc3BhY2UgaW50ZXJuYWwgewotCi0jIGRlZmluZSBHVEVTVF9URU1QTEFURV8gdGVtcGxh
dGUgPHR5cGVuYW1lIFQ+IGNsYXNzCi0KLS8vIFRoZSB0ZW1wbGF0ZSAic2VsZWN0b3IiIHN0cnVj
dCBUZW1wbGF0ZVNlbDxUbXBsPiBpcyB1c2VkIHRvCi0vLyByZXByZXNlbnQgVG1wbCwgd2hpY2gg
bXVzdCBiZSBhIGNsYXNzIHRlbXBsYXRlIHdpdGggb25lIHR5cGUKLS8vIHBhcmFtZXRlciwgYXMg
YSB0eXBlLiAgVGVtcGxhdGVTZWw8VG1wbD46OkJpbmQ8VD46OnR5cGUgaXMgZGVmaW5lZAotLy8g
YXMgdGhlIHR5cGUgVG1wbDxUPi4gIFRoaXMgYWxsb3dzIHVzIHRvIGFjdHVhbGx5IGluc3RhbnRp
YXRlIHRoZQotLy8gdGVtcGxhdGUgInNlbGVjdGVkIiBieSBUZW1wbGF0ZVNlbDxUbXBsPi4KLS8v
Ci0vLyBUaGlzIHRyaWNrIGlzIG5lY2Vzc2FyeSBmb3Igc2ltdWxhdGluZyB0eXBlZGVmIGZvciBj
bGFzcyB0ZW1wbGF0ZXMsCi0vLyB3aGljaCBDKysgZG9lc24ndCBzdXBwb3J0IGRpcmVjdGx5Lgot
dGVtcGxhdGUgPEdURVNUX1RFTVBMQVRFXyBUbXBsPgotc3RydWN0IFRlbXBsYXRlU2VsIHsKLSAg
dGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gIHN0cnVjdCBCaW5kIHsKLSAgICB0eXBlZGVmIFRtcGw8
VD4gdHlwZTsKLSAgfTsKLX07Ci0KLSMgZGVmaW5lIEdURVNUX0JJTkRfKFRtcGxTZWwsIFQpIFwK
LSAgVG1wbFNlbDo6dGVtcGxhdGUgQmluZDxUPjo6dHlwZQotCi0vLyBBIHVuaXF1ZSBzdHJ1Y3Qg
dGVtcGxhdGUgdXNlZCBhcyB0aGUgZGVmYXVsdCB2YWx1ZSBmb3IgdGhlCi0vLyBhcmd1bWVudHMg
b2YgY2xhc3MgdGVtcGxhdGUgVGVtcGxhdGVzLiAgVGhpcyBhbGxvd3MgdXMgdG8gc2ltdWxhdGUK
LS8vIHZhcmlhZGljIHRlbXBsYXRlcyAoZS5nLiBUZW1wbGF0ZXM8aW50PiwgVGVtcGxhdGVzPGlu
dCwgZG91YmxlPiwKLS8vIGFuZCBldGMpLCB3aGljaCBDKysgZG9lc24ndCBzdXBwb3J0IGRpcmVj
dGx5LgotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1zdHJ1Y3QgTm9uZVQge307Ci0KLS8vIFRoZSBm
b2xsb3dpbmcgZmFtaWx5IG9mIHN0cnVjdCBhbmQgc3RydWN0IHRlbXBsYXRlcyBhcmUgdXNlZCB0
bwotLy8gcmVwcmVzZW50IHRlbXBsYXRlIGxpc3RzLiAgSW4gcGFydGljdWxhciwgVGVtcGxhdGVz
TjxUMSwgVDIsIC4uLiwKLS8vIFROPiByZXByZXNlbnRzIGEgbGlzdCBvZiBOIHRlbXBsYXRlcyAo
VDEsIFQyLCAuLi4sIGFuZCBUTikuICBFeGNlcHQKLS8vIGZvciBUZW1wbGF0ZXMwLCBldmVyeSBz
dHJ1Y3QgaW4gdGhlIGZhbWlseSBoYXMgdHdvIG1lbWJlciB0eXBlczoKLS8vIEhlYWQgZm9yIHRo
ZSBzZWxlY3RvciBvZiB0aGUgZmlyc3QgdGVtcGxhdGUgaW4gdGhlIGxpc3QsIGFuZCBUYWlsCi0v
LyBmb3IgdGhlIHJlc3Qgb2YgdGhlIGxpc3QuCi0KLS8vIFRoZSBlbXB0eSB0ZW1wbGF0ZSBsaXN0
Lgotc3RydWN0IFRlbXBsYXRlczAge307Ci0KLS8vIFRlbXBsYXRlIGxpc3RzIG9mIGxlbmd0aCAx
LCAyLCAzLCBhbmQgc28gb24uCi0KLXRlbXBsYXRlIDxHVEVTVF9URU1QTEFURV8gVDE+Ci1zdHJ1
Y3QgVGVtcGxhdGVzMSB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVTZWw8VDE+IEhlYWQ7Ci0gIHR5cGVk
ZWYgVGVtcGxhdGVzMCBUYWlsOwotfTsKLQotJHJhbmdlIGkgMi4ubgotCi0kZm9yIGkgW1sKLSRy
YW5nZSBqIDEuLmkKLSRyYW5nZSBrIDIuLmkKLXRlbXBsYXRlIDwkZm9yIGosIFtbR1RFU1RfVEVN
UExBVEVfIFQkal1dPgotc3RydWN0IFRlbXBsYXRlcyRpIHsKLSAgdHlwZWRlZiBUZW1wbGF0ZVNl
bDxUMT4gSGVhZDsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMkKGktMSk8JGZvciBrLCBbW1Qka11dPiBU
YWlsOwotfTsKLQotCi1dXQotCi0vLyBXZSBkb24ndCB3YW50IHRvIHJlcXVpcmUgdGhlIHVzZXJz
IHRvIHdyaXRlIFRlbXBsYXRlc048Li4uPiBkaXJlY3RseSwKLS8vIGFzIHRoYXQgd291bGQgcmVx
dWlyZSB0aGVtIHRvIGNvdW50IHRoZSBsZW5ndGguICBUZW1wbGF0ZXM8Li4uPiBpcyBtdWNoCi0v
LyBlYXNpZXIgdG8gd3JpdGUsIGJ1dCBnZW5lcmF0ZXMgaG9ycmlibGUgbWVzc2FnZXMgd2hlbiB0
aGVyZSBpcyBhCi0vLyBjb21waWxlciBlcnJvciwgYXMgZ2NjIGluc2lzdHMgb24gcHJpbnRpbmcg
b3V0IGVhY2ggdGVtcGxhdGUKLS8vIGFyZ3VtZW50LCBldmVuIGlmIGl0IGhhcyB0aGUgZGVmYXVs
dCB2YWx1ZSAodGhpcyBtZWFucyBUZW1wbGF0ZXM8bGlzdD4KLS8vIHdpbGwgYXBwZWFyIGFzIFRl
bXBsYXRlczxsaXN0LCBOb25lVCwgTm9uZVQsIC4uLiwgTm9uZVQ+IGluIHRoZSBjb21waWxlcgot
Ly8gZXJyb3JzKS4KLS8vCi0vLyBPdXIgc29sdXRpb24gaXMgdG8gY29tYmluZSB0aGUgYmVzdCBw
YXJ0IG9mIHRoZSB0d28gYXBwcm9hY2hlczogYQotLy8gdXNlciB3b3VsZCB3cml0ZSBUZW1wbGF0
ZXM8VDEsIC4uLiwgVE4+LCBhbmQgR29vZ2xlIFRlc3Qgd2lsbCB0cmFuc2xhdGUKLS8vIHRoYXQg
dG8gVGVtcGxhdGVzTjxUMSwgLi4uLCBUTj4gaW50ZXJuYWxseSB0byBtYWtlIGVycm9yIG1lc3Nh
Z2VzCi0vLyByZWFkYWJsZS4gIFRoZSB0cmFuc2xhdGlvbiBpcyBkb25lIGJ5IHRoZSAndHlwZScg
bWVtYmVyIG9mIHRoZQotLy8gVGVtcGxhdGVzIHRlbXBsYXRlLgotCi0kcmFuZ2UgaSAxLi5uCi10
ZW1wbGF0ZSA8JGZvciBpLCBbW0dURVNUX1RFTVBMQVRFXyBUJGkgPSBOb25lVF1dPgotc3RydWN0
IFRlbXBsYXRlcyB7Ci0gIHR5cGVkZWYgVGVtcGxhdGVzJG48JGZvciBpLCBbW1QkaV1dPiB0eXBl
OwotfTsKLQotdGVtcGxhdGUgPD4KLXN0cnVjdCBUZW1wbGF0ZXM8JGZvciBpLCBbW05vbmVUXV0+
IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMwIHR5cGU7Ci19OwotCi0kcmFuZ2UgaSAxLi5uLTEKLSRm
b3IgaSBbWwotJHJhbmdlIGogMS4uaQotJHJhbmdlIGsgaSsxLi5uCi10ZW1wbGF0ZSA8JGZvciBq
LCBbW0dURVNUX1RFTVBMQVRFXyBUJGpdXT4KLXN0cnVjdCBUZW1wbGF0ZXM8JGZvciBqLCBbW1Qk
al1dJGZvciBrW1ssIE5vbmVUXV0+IHsKLSAgdHlwZWRlZiBUZW1wbGF0ZXMkaTwkZm9yIGosIFtb
VCRqXV0+IHR5cGU7Ci19OwotCi1dXQotCi0vLyBUaGUgVHlwZUxpc3QgdGVtcGxhdGUgbWFrZXMg
aXQgcG9zc2libGUgdG8gdXNlIGVpdGhlciBhIHNpbmdsZSB0eXBlCi0vLyBvciBhIFR5cGVzPC4u
Lj4gbGlzdCBpbiBUWVBFRF9URVNUX0NBU0UoKSBhbmQKLS8vIElOU1RBTlRJQVRFX1RZUEVEX1RF
U1RfQ0FTRV9QKCkuCi0KLXRlbXBsYXRlIDx0eXBlbmFtZSBUPgotc3RydWN0IFR5cGVMaXN0IHsK
LSAgdHlwZWRlZiBUeXBlczE8VD4gdHlwZTsKLX07Ci0KLQotJHJhbmdlIGkgMS4ubgotdGVtcGxh
dGUgPCRmb3IgaSwgW1t0eXBlbmFtZSBUJGldXT4KLXN0cnVjdCBUeXBlTGlzdDxUeXBlczwkZm9y
IGksIFtbVCRpXV0+ID4gewotICB0eXBlZGVmIHR5cGVuYW1lIFR5cGVzPCRmb3IgaSwgW1tUJGld
XT46OnR5cGUgdHlwZTsKLX07Ci0KLSNlbmRpZiAgLy8gR1RFU1RfSEFTX1RZUEVEX1RFU1QgfHwg
R1RFU1RfSEFTX1RZUEVEX1RFU1RfUAotCi19ICAvLyBuYW1lc3BhY2UgaW50ZXJuYWwKLX0gIC8v
IG5hbWVzcGFjZSB0ZXN0aW5nCi0KLSNlbmRpZiAgLy8gR1RFU1RfSU5DTFVERV9HVEVTVF9JTlRF
Uk5BTF9HVEVTVF9UWVBFX1VUSUxfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFy
dHkvZ29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0LWFsbC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFy
dHkvZ29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0LWFsbC5jYwppbmRleCBiMjE3YTE4MDA2YjBjOGJk
YWY0YTlmOWI2ZDA2ZGU0ZmQ4YWQ5ZWVkLi5hZDI5MjkwNWNmMzgxZDY5ZWJhOTAwOGY1MTk2Y2Y2
NDc3YTU2YzFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qv
c3JjL3NyYy9ndGVzdC1hbGwuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0
ZXN0L3NyYy9zcmMvZ3Rlc3QtYWxsLmNjCkBAIC00MSw2ICs0MSw3IEBACiAjaW5jbHVkZSAic3Jj
L2d0ZXN0LmNjIgogI2luY2x1ZGUgInNyYy9ndGVzdC1kZWF0aC10ZXN0LmNjIgogI2luY2x1ZGUg
InNyYy9ndGVzdC1maWxlcGF0aC5jYyIKKyNpbmNsdWRlICJzcmMvZ3Rlc3QtbWF0Y2hlcnMuY2Mi
CiAjaW5jbHVkZSAic3JjL2d0ZXN0LXBvcnQuY2MiCiAjaW5jbHVkZSAic3JjL2d0ZXN0LXByaW50
ZXJzLmNjIgogI2luY2x1ZGUgInNyYy9ndGVzdC10ZXN0LXBhcnQuY2MiCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL3NyYy9ndGVzdC1kZWF0aC10ZXN0
LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3QtZGVh
dGgtdGVzdC5jYwppbmRleCAwOTA4MzU1MTYxMmUzYzNiOWIzYmQ3ZDFlZTYwNmMxOGZmYjVmNzNh
Li41ZDEwMzFiZWEyNTcwOTlkODk0YjJhNDhhNDRhOTk4ZTEzNTAwNzA5IDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL3NyYy9ndGVzdC1kZWF0aC10ZXN0
LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0
LWRlYXRoLXRlc3QuY2MKQEAgLTMxLDYgKzMxLDkgQEAKIC8vIFRoaXMgZmlsZSBpbXBsZW1lbnRz
IGRlYXRoIHRlc3RzLgogCiAjaW5jbHVkZSAiZ3Rlc3QvZ3Rlc3QtZGVhdGgtdGVzdC5oIgorCisj
aW5jbHVkZSA8dXRpbGl0eT4KKwogI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQu
aCIKICNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9jdXN0b20vZ3Rlc3QuaCIKIApAQCAtNjIsMTAg
KzY1LDE2IEBACiAjIGVuZGlmICAvLyBHVEVTVF9PU19RTlgKIAogIyBpZiBHVEVTVF9PU19GVUNI
U0lBCisjICBpbmNsdWRlIDxsaWIvZmRpby9mZC5oPgogIyAgaW5jbHVkZSA8bGliL2ZkaW8vaW8u
aD4KICMgIGluY2x1ZGUgPGxpYi9mZGlvL3NwYXduLmg+CisjICBpbmNsdWRlIDxsaWIvengvY2hh
bm5lbC5oPgorIyAgaW5jbHVkZSA8bGliL3p4L3BvcnQuaD4KKyMgIGluY2x1ZGUgPGxpYi96eC9w
cm9jZXNzLmg+CisjICBpbmNsdWRlIDxsaWIvengvc29ja2V0Lmg+CiAjICBpbmNsdWRlIDx6aXJj
b24vcHJvY2Vzc2FyZ3MuaD4KICMgIGluY2x1ZGUgPHppcmNvbi9zeXNjYWxscy5oPgorIyAgaW5j
bHVkZSA8emlyY29uL3N5c2NhbGxzL3BvbGljeS5oPgogIyAgaW5jbHVkZSA8emlyY29uL3N5c2Nh
bGxzL3BvcnQuaD4KICMgZW5kaWYgIC8vIEdURVNUX09TX0ZVQ0hTSUEKIApAQCAtMTEzLDggKzEy
Miw4IEBAIEdURVNUX0RFRklORV9zdHJpbmdfKAogICAgICJJbmRpY2F0ZXMgdGhlIGZpbGUsIGxp
bmUgbnVtYmVyLCB0ZW1wb3JhbCBpbmRleCBvZiAiCiAgICAgInRoZSBzaW5nbGUgZGVhdGggdGVz
dCB0byBydW4sIGFuZCBhIGZpbGUgZGVzY3JpcHRvciB0byAiCiAgICAgIndoaWNoIGEgc3VjY2Vz
cyBjb2RlIG1heSBiZSBzZW50LCBhbGwgc2VwYXJhdGVkIGJ5ICIKLSAgICAidGhlICd8JyBjaGFy
YWN0ZXJzLiAgVGhpcyBmbGFnIGlzIHNwZWNpZmllZCBpZiBhbmQgb25seSBpZiB0aGUgY3VycmVu
dCAiCi0gICAgInByb2Nlc3MgaXMgYSBzdWItcHJvY2VzcyBsYXVuY2hlZCBmb3IgcnVubmluZyBh
IHRocmVhZC1zYWZlICIKKyAgICAidGhlICd8JyBjaGFyYWN0ZXJzLiAgVGhpcyBmbGFnIGlzIHNw
ZWNpZmllZCBpZiBhbmQgb25seSBpZiB0aGUgIgorICAgICJjdXJyZW50IHByb2Nlc3MgaXMgYSBz
dWItcHJvY2VzcyBsYXVuY2hlZCBmb3IgcnVubmluZyBhIHRocmVhZC1zYWZlICIKICAgICAiZGVh
dGggdGVzdC4gIEZPUiBJTlRFUk5BTCBVU0UgT05MWS4iKTsKIH0gIC8vIG5hbWVzcGFjZSBpbnRl
cm5hbAogCkBAIC0yNjYsOCArMjc1LDYgQEAgc3RhdGljIGNvbnN0IGludCBrRnVjaHNpYVJlYWRQ
aXBlRmQgPSAzOwogLy8gc3RhdGVtZW50LCB3aGljaCBpcyBub3QgYWxsb3dlZDsgVEhSRVcgbWVh
bnMgdGhhdCB0aGUgdGVzdCBzdGF0ZW1lbnQKIC8vIHJldHVybmVkIGNvbnRyb2wgYnkgdGhyb3dp
bmcgYW4gZXhjZXB0aW9uLiAgSU5fUFJPR1JFU1MgbWVhbnMgdGhlIHRlc3QKIC8vIGhhcyBub3Qg
eWV0IGNvbmNsdWRlZC4KLS8vIEZJWE1FOiBVbmlmeSBuYW1lcyBhbmQgcG9zc2libHkgdmFsdWVz
IGZvcgotLy8gQWJvcnRSZWFzb24sIERlYXRoVGVzdE91dGNvbWUsIGFuZCBmbGFnIGNoYXJhY3Rl
cnMgYWJvdmUuCiBlbnVtIERlYXRoVGVzdE91dGNvbWUgeyBJTl9QUk9HUkVTUywgRElFRCwgTElW
RUQsIFJFVFVSTkVELCBUSFJFVyB9OwogCiAvLyBSb3V0aW5lIGZvciBhYm9ydGluZyB0aGUgcHJv
Z3JhbSB3aGljaCBpcyBzYWZlIHRvIGNhbGwgZnJvbSBhbgpAQCAtMjgxLDcgKzI4OCw3IEBAIHN0
YXRpYyB2b2lkIERlYXRoVGVzdEFib3J0KGNvbnN0IHN0ZDo6c3RyaW5nJiBtZXNzYWdlKSB7CiAg
IC8vIHRoZSBoZWFwIGZvciBhbnkgYWRkaXRpb25hbCBub24tbWludXNjdWxlIG1lbW9yeSByZXF1
aXJlbWVudHMuCiAgIGNvbnN0IEludGVybmFsUnVuRGVhdGhUZXN0RmxhZyogY29uc3QgZmxhZyA9
CiAgICAgICBHZXRVbml0VGVzdEltcGwoKS0+aW50ZXJuYWxfcnVuX2RlYXRoX3Rlc3RfZmxhZygp
OwotICBpZiAoZmxhZyAhPSBOVUxMKSB7CisgIGlmIChmbGFnICE9IG51bGxwdHIpIHsKICAgICBG
SUxFKiBwYXJlbnQgPSBwb3NpeDo6RkRPcGVuKGZsYWctPndyaXRlX2ZkKCksICJ3Iik7CiAgICAg
ZnB1dGMoa0RlYXRoVGVzdEludGVybmFsRXJyb3IsIHBhcmVudCk7CiAgICAgZnByaW50ZihwYXJl
bnQsICIlcyIsIG1lc3NhZ2UuY19zdHIoKSk7CkBAIC0zNjEsNyArMzY4LDcgQEAgc3RhdGljIHZv
aWQgRmFpbEZyb21JbnRlcm5hbEVycm9yKGludCBmZCkgewogLy8gZm9yIHRoZSBjdXJyZW50IHRl
c3QuCiBEZWF0aFRlc3Q6OkRlYXRoVGVzdCgpIHsKICAgVGVzdEluZm8qIGNvbnN0IGluZm8gPSBH
ZXRVbml0VGVzdEltcGwoKS0+Y3VycmVudF90ZXN0X2luZm8oKTsKLSAgaWYgKGluZm8gPT0gTlVM
TCkgeworICBpZiAoaW5mbyA9PSBudWxscHRyKSB7CiAgICAgRGVhdGhUZXN0QWJvcnQoIkNhbm5v
dCBydW4gYSBkZWF0aCB0ZXN0IG91dHNpZGUgb2YgYSBURVNUIG9yICIKICAgICAgICAgICAgICAg
ICAgICAiVEVTVF9GIGNvbnN0cnVjdCIpOwogICB9CkBAIC0zNjksMTAgKzM3NiwxMSBAQCBEZWF0
aFRlc3Q6OkRlYXRoVGVzdCgpIHsKIAogLy8gQ3JlYXRlcyBhbmQgcmV0dXJucyBhIGRlYXRoIHRl
c3QgYnkgZGlzcGF0Y2hpbmcgdG8gdGhlIGN1cnJlbnQKIC8vIGRlYXRoIHRlc3QgZmFjdG9yeS4K
LWJvb2wgRGVhdGhUZXN0OjpDcmVhdGUoY29uc3QgY2hhciogc3RhdGVtZW50LCBjb25zdCBSRSog
cmVnZXgsCi0gICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGZpbGUsIGludCBsaW5l
LCBEZWF0aFRlc3QqKiB0ZXN0KSB7Citib29sIERlYXRoVGVzdDo6Q3JlYXRlKGNvbnN0IGNoYXIq
IHN0YXRlbWVudCwKKyAgICAgICAgICAgICAgICAgICAgICAgTWF0Y2hlcjxjb25zdCBzdGQ6OnN0
cmluZyY+IG1hdGNoZXIsIGNvbnN0IGNoYXIqIGZpbGUsCisgICAgICAgICAgICAgICAgICAgICAg
IGludCBsaW5lLCBEZWF0aFRlc3QqKiB0ZXN0KSB7CiAgIHJldHVybiBHZXRVbml0VGVzdEltcGwo
KS0+ZGVhdGhfdGVzdF9mYWN0b3J5KCktPkNyZWF0ZSgKLSAgICAgIHN0YXRlbWVudCwgcmVnZXgs
IGZpbGUsIGxpbmUsIHRlc3QpOworICAgICAgc3RhdGVtZW50LCBzdGQ6Om1vdmUobWF0Y2hlciks
IGZpbGUsIGxpbmUsIHRlc3QpOwogfQogCiBjb25zdCBjaGFyKiBEZWF0aFRlc3Q6Okxhc3RNZXNz
YWdlKCkgewpAQCAtMzg4LDkgKzM5Niw5IEBAIHN0ZDo6c3RyaW5nIERlYXRoVGVzdDo6bGFzdF9k
ZWF0aF90ZXN0X21lc3NhZ2VfOwogLy8gUHJvdmlkZXMgY3Jvc3MgcGxhdGZvcm0gaW1wbGVtZW50
YXRpb24gZm9yIHNvbWUgZGVhdGggZnVuY3Rpb25hbGl0eS4KIGNsYXNzIERlYXRoVGVzdEltcGwg
OiBwdWJsaWMgRGVhdGhUZXN0IHsKICBwcm90ZWN0ZWQ6Ci0gIERlYXRoVGVzdEltcGwoY29uc3Qg
Y2hhciogYV9zdGF0ZW1lbnQsIGNvbnN0IFJFKiBhX3JlZ2V4KQorICBEZWF0aFRlc3RJbXBsKGNv
bnN0IGNoYXIqIGFfc3RhdGVtZW50LCBNYXRjaGVyPGNvbnN0IHN0ZDo6c3RyaW5nJj4gbWF0Y2hl
cikKICAgICAgIDogc3RhdGVtZW50XyhhX3N0YXRlbWVudCksCi0gICAgICAgIHJlZ2V4XyhhX3Jl
Z2V4KSwKKyAgICAgICAgbWF0Y2hlcl8oc3RkOjptb3ZlKG1hdGNoZXIpKSwKICAgICAgICAgc3Bh
d25lZF8oZmFsc2UpLAogICAgICAgICBzdGF0dXNfKC0xKSwKICAgICAgICAgb3V0Y29tZV8oSU5f
UFJPR1JFU1MpLApAQCAtMzk4LDEzICs0MDYsMTIgQEAgY2xhc3MgRGVhdGhUZXN0SW1wbCA6IHB1
YmxpYyBEZWF0aFRlc3QgewogICAgICAgICB3cml0ZV9mZF8oLTEpIHt9CiAKICAgLy8gcmVhZF9m
ZF8gaXMgZXhwZWN0ZWQgdG8gYmUgY2xvc2VkIGFuZCBjbGVhcmVkIGJ5IGEgZGVyaXZlZCBjbGFz
cy4KLSAgfkRlYXRoVGVzdEltcGwoKSB7IEdURVNUX0RFQVRIX1RFU1RfQ0hFQ0tfKHJlYWRfZmRf
ID09IC0xKTsgfQorICB+RGVhdGhUZXN0SW1wbCgpIG92ZXJyaWRlIHsgR1RFU1RfREVBVEhfVEVT
VF9DSEVDS18ocmVhZF9mZF8gPT0gLTEpOyB9CiAKLSAgdm9pZCBBYm9ydChBYm9ydFJlYXNvbiBy
ZWFzb24pOwotICB2aXJ0dWFsIGJvb2wgUGFzc2VkKGJvb2wgc3RhdHVzX29rKTsKKyAgdm9pZCBB
Ym9ydChBYm9ydFJlYXNvbiByZWFzb24pIG92ZXJyaWRlOworICBib29sIFBhc3NlZChib29sIHN0
YXR1c19vaykgb3ZlcnJpZGU7CiAKICAgY29uc3QgY2hhciogc3RhdGVtZW50KCkgY29uc3QgeyBy
ZXR1cm4gc3RhdGVtZW50XzsgfQotICBjb25zdCBSRSogcmVnZXgoKSBjb25zdCB7IHJldHVybiBy
ZWdleF87IH0KICAgYm9vbCBzcGF3bmVkKCkgY29uc3QgeyByZXR1cm4gc3Bhd25lZF87IH0KICAg
dm9pZCBzZXRfc3Bhd25lZChib29sIGlzX3NwYXduZWQpIHsgc3Bhd25lZF8gPSBpc19zcGF3bmVk
OyB9CiAgIGludCBzdGF0dXMoKSBjb25zdCB7IHJldHVybiBzdGF0dXNfOyB9CkBAIC00MjIsMTMg
KzQyOSwxNSBAQCBjbGFzcyBEZWF0aFRlc3RJbXBsIDogcHVibGljIERlYXRoVGVzdCB7CiAgIC8v
IGNhc2Ugb2YgdW5leHBlY3RlZCBjb2Rlcy4KICAgdm9pZCBSZWFkQW5kSW50ZXJwcmV0U3RhdHVz
Qnl0ZSgpOwogCisgIC8vIFJldHVybnMgc3RkZXJyIG91dHB1dCBmcm9tIHRoZSBjaGlsZCBwcm9j
ZXNzLgorICB2aXJ0dWFsIHN0ZDo6c3RyaW5nIEdldEVycm9yTG9ncygpOworCiAgcHJpdmF0ZToK
ICAgLy8gVGhlIHRleHR1YWwgY29udGVudCBvZiB0aGUgY29kZSB0aGlzIG9iamVjdCBpcyB0ZXN0
aW5nLiAgVGhpcyBjbGFzcwogICAvLyBkb2Vzbid0IG93biB0aGlzIHN0cmluZyBhbmQgc2hvdWxk
IG5vdCBhdHRlbXB0IHRvIGRlbGV0ZSBpdC4KICAgY29uc3QgY2hhciogY29uc3Qgc3RhdGVtZW50
XzsKLSAgLy8gVGhlIHJlZ3VsYXIgZXhwcmVzc2lvbiB3aGljaCB0ZXN0IG91dHB1dCBtdXN0IG1h
dGNoLiAgRGVhdGhUZXN0SW1wbAotICAvLyBkb2Vzbid0IG93biB0aGlzIG9iamVjdCBhbmQgc2hv
dWxkIG5vdCBhdHRlbXB0IHRvIGRlbGV0ZSBpdC4KLSAgY29uc3QgUkUqIGNvbnN0IHJlZ2V4XzsK
KyAgLy8gQSBtYXRjaGVyIHRoYXQncyBleHBlY3RlZCB0byBtYXRjaCB0aGUgc3RkZXJyIG91dHB1
dCBieSB0aGUgY2hpbGQgcHJvY2Vzcy4KKyAgTWF0Y2hlcjxjb25zdCBzdGQ6OnN0cmluZyY+IG1h
dGNoZXJfOwogICAvLyBUcnVlIGlmIHRoZSBkZWF0aCB0ZXN0IGNoaWxkIHByb2Nlc3MgaGFzIGJl
ZW4gc3VjY2Vzc2Z1bGx5IHNwYXduZWQuCiAgIGJvb2wgc3Bhd25lZF87CiAgIC8vIFRoZSBleGl0
IHN0YXR1cyBvZiB0aGUgY2hpbGQgcHJvY2Vzcy4KQEAgLTQ5MCw2ICs0OTksMTAgQEAgdm9pZCBE
ZWF0aFRlc3RJbXBsOjpSZWFkQW5kSW50ZXJwcmV0U3RhdHVzQnl0ZSgpIHsKICAgc2V0X3JlYWRf
ZmQoLTEpOwogfQogCitzdGQ6OnN0cmluZyBEZWF0aFRlc3RJbXBsOjpHZXRFcnJvckxvZ3MoKSB7
CisgIHJldHVybiBHZXRDYXB0dXJlZFN0ZGVycigpOworfQorCiAvLyBTaWduYWxzIHRoYXQgdGhl
IGRlYXRoIHRlc3QgY29kZSB3aGljaCBzaG91bGQgaGF2ZSBleGl0ZWQsIGRpZG4ndC4KIC8vIFNo
b3VsZCBiZSBjYWxsZWQgb25seSBpbiBhIGRlYXRoIHRlc3QgY2hpbGQgcHJvY2Vzcy4KIC8vIFdy
aXRlcyBhIHN0YXR1cyBieXRlIHRvIHRoZSBjaGlsZCdzIHN0YXR1cyBmaWxlIGRlc2NyaXB0b3Is
IHRoZW4KQEAgLTU0MywyMiArNTU2LDIxIEBAIHN0YXRpYyA6OnN0ZDo6c3RyaW5nIEZvcm1hdERl
YXRoVGVzdE91dHB1dChjb25zdCA6OnN0ZDo6c3RyaW5nJiBvdXRwdXQpIHsKIC8vICAgICAgICAg
ICAgIGluIHRoZSBmb3JtYXQgc3BlY2lmaWVkIGJ5IHdhaXQoMikuIE9uIFdpbmRvd3MsIHRoaXMg
aXMgdGhlCiAvLyAgICAgICAgICAgICB2YWx1ZSBzdXBwbGllZCB0byB0aGUgRXhpdFByb2Nlc3Mo
KSBBUEkgb3IgYSBudW1lcmljIGNvZGUKIC8vICAgICAgICAgICAgIG9mIHRoZSBleGNlcHRpb24g
dGhhdCB0ZXJtaW5hdGVkIHRoZSBwcm9ncmFtLgotLy8gICByZWdleDogICAgQSByZWd1bGFyIGV4
cHJlc3Npb24gb2JqZWN0IHRvIGJlIGFwcGxpZWQgdG8KLS8vICAgICAgICAgICAgIHRoZSB0ZXN0
J3MgY2FwdHVyZWQgc3RhbmRhcmQgZXJyb3Igb3V0cHV0OyB0aGUgZGVhdGggdGVzdAotLy8gICAg
ICAgICAgICAgZmFpbHMgaWYgaXQgZG9lcyBub3QgbWF0Y2guCisvLyAgIG1hdGNoZXJfOiBBIG1h
dGNoZXIgdGhhdCdzIGV4cGVjdGVkIHRvIG1hdGNoIHRoZSBzdGRlcnIgb3V0cHV0IGJ5IHRoZSBj
aGlsZAorLy8gICAgICAgICAgICAgcHJvY2Vzcy4KIC8vCiAvLyBBcmd1bWVudDoKIC8vICAgc3Rh
dHVzX29rOiB0cnVlIGlmIGV4aXRfc3RhdHVzIGlzIGFjY2VwdGFibGUgaW4gdGhlIGNvbnRleHQg
b2YKIC8vICAgICAgICAgICAgICB0aGlzIHBhcnRpY3VsYXIgZGVhdGggdGVzdCwgd2hpY2ggZmFp
bHMgaWYgaXQgaXMgZmFsc2UKIC8vCi0vLyBSZXR1cm5zIHRydWUgaWZmIGFsbCBvZiB0aGUgYWJv
dmUgY29uZGl0aW9ucyBhcmUgbWV0LiAgT3RoZXJ3aXNlLCB0aGUKLS8vIGZpcnN0IGZhaWxpbmcg
Y29uZGl0aW9uLCBpbiB0aGUgb3JkZXIgZ2l2ZW4gYWJvdmUsIGlzIHRoZSBvbmUgdGhhdCBpcwor
Ly8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIGFsbCBvZiB0aGUgYWJvdmUgY29uZGl0aW9u
cyBhcmUgbWV0LiAgT3RoZXJ3aXNlLAorLy8gdGhlIGZpcnN0IGZhaWxpbmcgY29uZGl0aW9uLCBp
biB0aGUgb3JkZXIgZ2l2ZW4gYWJvdmUsIGlzIHRoZSBvbmUgdGhhdCBpcwogLy8gcmVwb3J0ZWQu
IEFsc28gc2V0cyB0aGUgbGFzdCBkZWF0aCB0ZXN0IG1lc3NhZ2Ugc3RyaW5nLgogYm9vbCBEZWF0
aFRlc3RJbXBsOjpQYXNzZWQoYm9vbCBzdGF0dXNfb2spIHsKICAgaWYgKCFzcGF3bmVkKCkpCiAg
ICAgcmV0dXJuIGZhbHNlOwogCi0gIGNvbnN0IHN0ZDo6c3RyaW5nIGVycm9yX21lc3NhZ2UgPSBH
ZXRDYXB0dXJlZFN0ZGVycigpOworICBjb25zdCBzdGQ6OnN0cmluZyBlcnJvcl9tZXNzYWdlID0g
R2V0RXJyb3JMb2dzKCk7CiAKICAgYm9vbCBzdWNjZXNzID0gZmFsc2U7CiAgIE1lc3NhZ2UgYnVm
ZmVyOwpAQCAtNTc5LDE4ICs1OTEsMTUgQEAgYm9vbCBEZWF0aFRlc3RJbXBsOjpQYXNzZWQoYm9v
bCBzdGF0dXNfb2spIHsKICAgICAgIGJyZWFrOwogICAgIGNhc2UgRElFRDoKICAgICAgIGlmIChz
dGF0dXNfb2spIHsKLSMgaWYgR1RFU1RfVVNFU19QQ1JFCi0gICAgICAgIC8vIFBDUkUgcmVnZXhl
cyBzdXBwb3J0IGVtYmVkZGVkIE5VTHMuCi0gICAgICAgIGNvbnN0IGJvb2wgbWF0Y2hlZCA9IFJF
OjpQYXJ0aWFsTWF0Y2goZXJyb3JfbWVzc2FnZSwgKnJlZ2V4KCkpOwotIyBlbHNlCi0gICAgICAg
IGNvbnN0IGJvb2wgbWF0Y2hlZCA9IFJFOjpQYXJ0aWFsTWF0Y2goZXJyb3JfbWVzc2FnZS5jX3N0
cigpLCAqcmVnZXgoKSk7Ci0jIGVuZGlmICAvLyBHVEVTVF9VU0VTX1BDUkUKLSAgICAgICAgaWYg
KG1hdGNoZWQpIHsKKyAgICAgICAgaWYgKG1hdGNoZXJfLk1hdGNoZXMoZXJyb3JfbWVzc2FnZSkp
IHsKICAgICAgICAgICBzdWNjZXNzID0gdHJ1ZTsKICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAg
ICBzdGQ6Om9zdHJpbmdzdHJlYW0gc3RyZWFtOworICAgICAgICAgIG1hdGNoZXJfLkRlc2NyaWJl
VG8oJnN0cmVhbSk7CiAgICAgICAgICAgYnVmZmVyIDw8ICIgICAgUmVzdWx0OiBkaWVkIGJ1dCBu
b3Qgd2l0aCBleHBlY3RlZCBlcnJvci5cbiIKLSAgICAgICAgICAgICAgICAgPDwgIiAgRXhwZWN0
ZWQ6ICIgPDwgcmVnZXgoKS0+cGF0dGVybigpIDw8ICJcbiIKLSAgICAgICAgICAgICAgICAgPDwg
IkFjdHVhbCBtc2c6XG4iIDw8IEZvcm1hdERlYXRoVGVzdE91dHB1dChlcnJvcl9tZXNzYWdlKTsK
KyAgICAgICAgICAgICAgICAgPDwgIiAgRXhwZWN0ZWQ6ICIgPDwgc3RyZWFtLnN0cigpIDw8ICJc
biIKKyAgICAgICAgICAgICAgICAgPDwgIkFjdHVhbCBtc2c6XG4iCisgICAgICAgICAgICAgICAg
IDw8IEZvcm1hdERlYXRoVGVzdE91dHB1dChlcnJvcl9tZXNzYWdlKTsKICAgICAgICAgfQogICAg
ICAgfSBlbHNlIHsKICAgICAgICAgYnVmZmVyIDw8ICIgICAgUmVzdWx0OiBkaWVkIGJ1dCBub3Qg
d2l0aCBleHBlY3RlZCBleGl0IGNvZGU6XG4iCkBAIC02MzksMTEgKzY0OCwxMSBAQCBib29sIERl
YXRoVGVzdEltcGw6OlBhc3NlZChib29sIHN0YXR1c19vaykgewogLy8KIGNsYXNzIFdpbmRvd3NE
ZWF0aFRlc3QgOiBwdWJsaWMgRGVhdGhUZXN0SW1wbCB7CiAgcHVibGljOgotICBXaW5kb3dzRGVh
dGhUZXN0KGNvbnN0IGNoYXIqIGFfc3RhdGVtZW50LAotICAgICAgICAgICAgICAgICAgIGNvbnN0
IFJFKiBhX3JlZ2V4LAotICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGZpbGUsCi0gICAg
ICAgICAgICAgICAgICAgaW50IGxpbmUpCi0gICAgICA6IERlYXRoVGVzdEltcGwoYV9zdGF0ZW1l
bnQsIGFfcmVnZXgpLCBmaWxlXyhmaWxlKSwgbGluZV8obGluZSkge30KKyAgV2luZG93c0RlYXRo
VGVzdChjb25zdCBjaGFyKiBhX3N0YXRlbWVudCwgTWF0Y2hlcjxjb25zdCBzdGQ6OnN0cmluZyY+
IG1hdGNoZXIsCisgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciogZmlsZSwgaW50IGxpbmUp
CisgICAgICA6IERlYXRoVGVzdEltcGwoYV9zdGF0ZW1lbnQsIHN0ZDo6bW92ZShtYXRjaGVyKSks
CisgICAgICAgIGZpbGVfKGZpbGUpLAorICAgICAgICBsaW5lXyhsaW5lKSB7fQogCiAgIC8vIEFs
bCBvZiB0aGVzZSB2aXJ0dWFsIGZ1bmN0aW9ucyBhcmUgaW5oZXJpdGVkIGZyb20gRGVhdGhUZXN0
LgogICB2aXJ0dWFsIGludCBXYWl0KCk7CkBAIC03MjAsNyArNzI5LDcgQEAgRGVhdGhUZXN0OjpU
ZXN0Um9sZSBXaW5kb3dzRGVhdGhUZXN0OjpBc3N1bWVSb2xlKCkgewogICBjb25zdCBUZXN0SW5m
byogY29uc3QgaW5mbyA9IGltcGwtPmN1cnJlbnRfdGVzdF9pbmZvKCk7CiAgIGNvbnN0IGludCBk
ZWF0aF90ZXN0X2luZGV4ID0gaW5mby0+cmVzdWx0KCktPmRlYXRoX3Rlc3RfY291bnQoKTsKIAot
ICBpZiAoZmxhZyAhPSBOVUxMKSB7CisgIGlmIChmbGFnICE9IG51bGxwdHIpIHsKICAgICAvLyBQ
YXJzZUludGVybmFsUnVuRGVhdGhUZXN0RmxhZygpIGhhcyBwZXJmb3JtZWQgYWxsIHRoZSBuZWNl
c3NhcnkKICAgICAvLyBwcm9jZXNzaW5nLgogICAgIHNldF93cml0ZV9mZChmbGFnLT53cml0ZV9m
ZCgpKTsKQEAgLTcyOSw4ICs3MzgsOCBAQCBEZWF0aFRlc3Q6OlRlc3RSb2xlIFdpbmRvd3NEZWF0
aFRlc3Q6OkFzc3VtZVJvbGUoKSB7CiAKICAgLy8gV2luZG93c0RlYXRoVGVzdCB1c2VzIGFuIGFu
b255bW91cyBwaXBlIHRvIGNvbW11bmljYXRlIHJlc3VsdHMgb2YKICAgLy8gYSBkZWF0aCB0ZXN0
LgotICBTRUNVUklUWV9BVFRSSUJVVEVTIGhhbmRsZXNfYXJlX2luaGVyaXRhYmxlID0gewotICAg
IHNpemVvZihTRUNVUklUWV9BVFRSSUJVVEVTKSwgTlVMTCwgVFJVRSB9OworICBTRUNVUklUWV9B
VFRSSUJVVEVTIGhhbmRsZXNfYXJlX2luaGVyaXRhYmxlID0ge3NpemVvZihTRUNVUklUWV9BVFRS
SUJVVEVTKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBudWxscHRyLCBUUlVFfTsKICAgSEFORExFIHJlYWRfaGFuZGxlLCB3cml0ZV9oYW5kbGU7CiAg
IEdURVNUX0RFQVRIX1RFU1RfQ0hFQ0tfKAogICAgICAgOjpDcmVhdGVQaXBlKCZyZWFkX2hhbmRs
ZSwgJndyaXRlX2hhbmRsZSwgJmhhbmRsZXNfYXJlX2luaGVyaXRhYmxlLApAQCAtNzQxLDEzICs3
NTAsMTMgQEAgRGVhdGhUZXN0OjpUZXN0Um9sZSBXaW5kb3dzRGVhdGhUZXN0OjpBc3N1bWVSb2xl
KCkgewogICB3cml0ZV9oYW5kbGVfLlJlc2V0KHdyaXRlX2hhbmRsZSk7CiAgIGV2ZW50X2hhbmRs
ZV8uUmVzZXQoOjpDcmVhdGVFdmVudCgKICAgICAgICZoYW5kbGVzX2FyZV9pbmhlcml0YWJsZSwK
LSAgICAgIFRSVUUsICAgIC8vIFRoZSBldmVudCB3aWxsIGF1dG9tYXRpY2FsbHkgcmVzZXQgdG8g
bm9uLXNpZ25hbGVkIHN0YXRlLgotICAgICAgRkFMU0UsICAgLy8gVGhlIGluaXRpYWwgc3RhdGUg
aXMgbm9uLXNpZ25hbGxlZC4KLSAgICAgIE5VTEwpKTsgIC8vIFRoZSBldmVuIGlzIHVubmFtZWQu
Ci0gIEdURVNUX0RFQVRIX1RFU1RfQ0hFQ0tfKGV2ZW50X2hhbmRsZV8uR2V0KCkgIT0gTlVMTCk7
Ci0gIGNvbnN0IHN0ZDo6c3RyaW5nIGZpbHRlcl9mbGFnID0KLSAgICAgIHN0ZDo6c3RyaW5nKCIt
LSIpICsgR1RFU1RfRkxBR19QUkVGSVhfICsga0ZpbHRlckZsYWcgKyAiPSIgKwotICAgICAgaW5m
by0+dGVzdF9jYXNlX25hbWUoKSArICIuIiArIGluZm8tPm5hbWUoKTsKKyAgICAgIFRSVUUsICAg
ICAgIC8vIFRoZSBldmVudCB3aWxsIGF1dG9tYXRpY2FsbHkgcmVzZXQgdG8gbm9uLXNpZ25hbGVk
IHN0YXRlLgorICAgICAgRkFMU0UsICAgICAgLy8gVGhlIGluaXRpYWwgc3RhdGUgaXMgbm9uLXNp
Z25hbGxlZC4KKyAgICAgIG51bGxwdHIpKTsgIC8vIFRoZSBldmVuIGlzIHVubmFtZWQuCisgIEdU
RVNUX0RFQVRIX1RFU1RfQ0hFQ0tfKGV2ZW50X2hhbmRsZV8uR2V0KCkgIT0gbnVsbHB0cik7Cisg
IGNvbnN0IHN0ZDo6c3RyaW5nIGZpbHRlcl9mbGFnID0gc3RkOjpzdHJpbmcoIi0tIikgKyBHVEVT
VF9GTEFHX1BSRUZJWF8gKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtGaWx0
ZXJGbGFnICsgIj0iICsgaW5mby0+dGVzdF9zdWl0ZV9uYW1lKCkgKworICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICIuIiArIGluZm8tPm5hbWUoKTsKICAgY29uc3Qgc3RkOjpzdHJp
bmcgaW50ZXJuYWxfZmxhZyA9CiAgICAgICBzdGQ6OnN0cmluZygiLS0iKSArIEdURVNUX0ZMQUdf
UFJFRklYXyArIGtJbnRlcm5hbFJ1bkRlYXRoVGVzdEZsYWcgKwogICAgICAgIj0iICsgZmlsZV8g
KyAifCIgKyBTdHJlYW1hYmxlVG9TdHJpbmcobGluZV8pICsgInwiICsKQEAgLTc2MCwxMCArNzY5
LDkgQEAgRGVhdGhUZXN0OjpUZXN0Um9sZSBXaW5kb3dzRGVhdGhUZXN0OjpBc3N1bWVSb2xlKCkg
ewogICAgICAgInwiICsgU3RyZWFtYWJsZVRvU3RyaW5nKHJlaW50ZXJwcmV0X2Nhc3Q8c2l6ZV90
PihldmVudF9oYW5kbGVfLkdldCgpKSk7CiAKICAgY2hhciBleGVjdXRhYmxlX3BhdGhbX01BWF9Q
QVRIICsgMV07ICAvLyBOT0xJTlQKLSAgR1RFU1RfREVBVEhfVEVTVF9DSEVDS18oCi0gICAgICBf
TUFYX1BBVEggKyAxICE9IDo6R2V0TW9kdWxlRmlsZU5hbWVBKE5VTEwsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4ZWN1dGFibGVfcGF0aCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX01BWF9QQVRIKSk7CisgIEdURVNU
X0RFQVRIX1RFU1RfQ0hFQ0tfKF9NQVhfUEFUSCArIDEgIT0gOjpHZXRNb2R1bGVGaWxlTmFtZUEo
bnVsbHB0ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBleGVjdXRhYmxlX3BhdGgsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX01BWF9QQVRIKSk7CiAK
ICAgc3RkOjpzdHJpbmcgY29tbWFuZF9saW5lID0KICAgICAgIHN0ZDo6c3RyaW5nKDo6R2V0Q29t
bWFuZExpbmVBKCkpICsgIiAiICsgZmlsdGVyX2ZsYWcgKyAiIFwiIiArCkBAIC03ODQsMTcgKzc5
MiwxNiBAQCBEZWF0aFRlc3Q6OlRlc3RSb2xlIFdpbmRvd3NEZWF0aFRlc3Q6OkFzc3VtZVJvbGUo
KSB7CiAgIHN0YXJ0dXBfaW5mby5oU3RkRXJyb3IgPSA6OkdldFN0ZEhhbmRsZShTVERfRVJST1Jf
SEFORExFKTsKIAogICBQUk9DRVNTX0lORk9STUFUSU9OIHByb2Nlc3NfaW5mbzsKLSAgR1RFU1Rf
REVBVEhfVEVTVF9DSEVDS18oOjpDcmVhdGVQcm9jZXNzQSgKLSAgICAgIGV4ZWN1dGFibGVfcGF0
aCwKLSAgICAgIGNvbnN0X2Nhc3Q8Y2hhcio+KGNvbW1hbmRfbGluZS5jX3N0cigpKSwKLSAgICAg
IE5VTEwsICAgLy8gUmV0dW5lZCBwcm9jZXNzIGhhbmRsZSBpcyBub3QgaW5oZXJpdGFibGUuCi0g
ICAgICBOVUxMLCAgIC8vIFJldHVuZWQgdGhyZWFkIGhhbmRsZSBpcyBub3QgaW5oZXJpdGFibGUu
Ci0gICAgICBUUlVFLCAgIC8vIENoaWxkIGluaGVyaXRzIGFsbCBpbmhlcml0YWJsZSBoYW5kbGVz
IChmb3Igd3JpdGVfaGFuZGxlXykuCi0gICAgICAweDAsICAgIC8vIERlZmF1bHQgY3JlYXRpb24g
ZmxhZ3MuCi0gICAgICBOVUxMLCAgIC8vIEluaGVyaXQgdGhlIHBhcmVudCdzIGVudmlyb25tZW50
LgotICAgICAgVW5pdFRlc3Q6OkdldEluc3RhbmNlKCktPm9yaWdpbmFsX3dvcmtpbmdfZGlyKCks
Ci0gICAgICAmc3RhcnR1cF9pbmZvLAotICAgICAgJnByb2Nlc3NfaW5mbykgIT0gRkFMU0UpOwor
ICBHVEVTVF9ERUFUSF9URVNUX0NIRUNLXygKKyAgICAgIDo6Q3JlYXRlUHJvY2Vzc0EoCisgICAg
ICAgICAgZXhlY3V0YWJsZV9wYXRoLCBjb25zdF9jYXN0PGNoYXIqPihjb21tYW5kX2xpbmUuY19z
dHIoKSksCisgICAgICAgICAgbnVsbHB0ciwgIC8vIFJldHVuZWQgcHJvY2VzcyBoYW5kbGUgaXMg
bm90IGluaGVyaXRhYmxlLgorICAgICAgICAgIG51bGxwdHIsICAvLyBSZXR1bmVkIHRocmVhZCBo
YW5kbGUgaXMgbm90IGluaGVyaXRhYmxlLgorICAgICAgICAgIFRSVUUsICAvLyBDaGlsZCBpbmhl
cml0cyBhbGwgaW5oZXJpdGFibGUgaGFuZGxlcyAoZm9yIHdyaXRlX2hhbmRsZV8pLgorICAgICAg
ICAgIDB4MCwgICAvLyBEZWZhdWx0IGNyZWF0aW9uIGZsYWdzLgorICAgICAgICAgIG51bGxwdHIs
ICAvLyBJbmhlcml0IHRoZSBwYXJlbnQncyBlbnZpcm9ubWVudC4KKyAgICAgICAgICBVbml0VGVz
dDo6R2V0SW5zdGFuY2UoKS0+b3JpZ2luYWxfd29ya2luZ19kaXIoKSwgJnN0YXJ0dXBfaW5mbywK
KyAgICAgICAgICAmcHJvY2Vzc19pbmZvKSAhPSBGQUxTRSk7CiAgIGNoaWxkX2hhbmRsZV8uUmVz
ZXQocHJvY2Vzc19pbmZvLmhQcm9jZXNzKTsKICAgOjpDbG9zZUhhbmRsZShwcm9jZXNzX2luZm8u
aFRocmVhZCk7CiAgIHNldF9zcGF3bmVkKHRydWUpOwpAQCAtODA1LDM4ICs4MTIsMzQgQEAgRGVh
dGhUZXN0OjpUZXN0Um9sZSBXaW5kb3dzRGVhdGhUZXN0OjpBc3N1bWVSb2xlKCkgewogCiBjbGFz
cyBGdWNoc2lhRGVhdGhUZXN0IDogcHVibGljIERlYXRoVGVzdEltcGwgewogIHB1YmxpYzoKLSAg
RnVjaHNpYURlYXRoVGVzdChjb25zdCBjaGFyKiBhX3N0YXRlbWVudCwKLSAgICAgICAgICAgICAg
ICAgICBjb25zdCBSRSogYV9yZWdleCwKLSAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyKiBm
aWxlLAotICAgICAgICAgICAgICAgICAgIGludCBsaW5lKQotICAgICAgOiBEZWF0aFRlc3RJbXBs
KGFfc3RhdGVtZW50LCBhX3JlZ2V4KSwgZmlsZV8oZmlsZSksIGxpbmVfKGxpbmUpIHt9Ci0gIHZp
cnR1YWwgfkZ1Y2hzaWFEZWF0aFRlc3QoKSB7Ci0gICAgenhfc3RhdHVzX3Qgc3RhdHVzID0genhf
aGFuZGxlX2Nsb3NlKGNoaWxkX3Byb2Nlc3NfKTsKLSAgICBHVEVTVF9ERUFUSF9URVNUX0NIRUNL
XyhzdGF0dXMgPT0gWlhfT0spOwotICAgIHN0YXR1cyA9IHp4X2hhbmRsZV9jbG9zZShwb3J0Xyk7
Ci0gICAgR1RFU1RfREVBVEhfVEVTVF9DSEVDS18oc3RhdHVzID09IFpYX09LKTsKLSAgfQorICBG
dWNoc2lhRGVhdGhUZXN0KGNvbnN0IGNoYXIqIGFfc3RhdGVtZW50LCBNYXRjaGVyPGNvbnN0IHN0
ZDo6c3RyaW5nJj4gbWF0Y2hlciwKKyAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyKiBmaWxl
LCBpbnQgbGluZSkKKyAgICAgIDogRGVhdGhUZXN0SW1wbChhX3N0YXRlbWVudCwgc3RkOjptb3Zl
KG1hdGNoZXIpKSwKKyAgICAgICAgZmlsZV8oZmlsZSksCisgICAgICAgIGxpbmVfKGxpbmUpIHt9
CiAKICAgLy8gQWxsIG9mIHRoZXNlIHZpcnR1YWwgZnVuY3Rpb25zIGFyZSBpbmhlcml0ZWQgZnJv
bSBEZWF0aFRlc3QuCi0gIHZpcnR1YWwgaW50IFdhaXQoKTsKLSAgdmlydHVhbCBUZXN0Um9sZSBB
c3N1bWVSb2xlKCk7CisgIGludCBXYWl0KCkgb3ZlcnJpZGU7CisgIFRlc3RSb2xlIEFzc3VtZVJv
bGUoKSBvdmVycmlkZTsKKyAgc3RkOjpzdHJpbmcgR2V0RXJyb3JMb2dzKCkgb3ZlcnJpZGU7CiAK
ICBwcml2YXRlOgogICAvLyBUaGUgbmFtZSBvZiB0aGUgZmlsZSBpbiB3aGljaCB0aGUgZGVhdGgg
dGVzdCBpcyBsb2NhdGVkLgogICBjb25zdCBjaGFyKiBjb25zdCBmaWxlXzsKICAgLy8gVGhlIGxp
bmUgbnVtYmVyIG9uIHdoaWNoIHRoZSBkZWF0aCB0ZXN0IGlzIGxvY2F0ZWQuCiAgIGNvbnN0IGlu
dCBsaW5lXzsKKyAgLy8gVGhlIHN0ZGVyciBkYXRhIGNhcHR1cmVkIGJ5IHRoZSBjaGlsZCBwcm9j
ZXNzLgorICBzdGQ6OnN0cmluZyBjYXB0dXJlZF9zdGRlcnJfOwogCi0gIHp4X2hhbmRsZV90IGNo
aWxkX3Byb2Nlc3NfID0gWlhfSEFORExFX0lOVkFMSUQ7Ci0gIHp4X2hhbmRsZV90IHBvcnRfID0g
WlhfSEFORExFX0lOVkFMSUQ7CisgIHp4Ojpwcm9jZXNzIGNoaWxkX3Byb2Nlc3NfOworICB6eDo6
Y2hhbm5lbCBleGNlcHRpb25fY2hhbm5lbF87CisgIHp4Ojpzb2NrZXQgc3RkZXJyX3NvY2tldF87
CiB9OwogCiAvLyBVdGlsaXR5IGNsYXNzIGZvciBhY2N1bXVsYXRpbmcgY29tbWFuZC1saW5lIGFy
Z3VtZW50cy4KIGNsYXNzIEFyZ3VtZW50cyB7CiAgcHVibGljOgotICBBcmd1bWVudHMoKSB7Ci0g
ICAgYXJnc18ucHVzaF9iYWNrKE5VTEwpOwotICB9CisgIEFyZ3VtZW50cygpIHsgYXJnc18ucHVz
aF9iYWNrKG51bGxwdHIpOyB9CiAKICAgfkFyZ3VtZW50cygpIHsKICAgICBmb3IgKHN0ZDo6dmVj
dG9yPGNoYXIqPjo6aXRlcmF0b3IgaSA9IGFyZ3NfLmJlZ2luKCk7IGkgIT0gYXJnc18uZW5kKCk7
CkBAIC04NzIsNTEgKzg3NSw4OCBAQCBjbGFzcyBBcmd1bWVudHMgewogLy8gc3RhdHVzLCBvciAw
IGlmIG5vIGNoaWxkIHByb2Nlc3MgZXhpc3RzLiAgQXMgYSBzaWRlIGVmZmVjdCwgc2V0cyB0aGUK
IC8vIG91dGNvbWUgZGF0YSBtZW1iZXIuCiBpbnQgRnVjaHNpYURlYXRoVGVzdDo6V2FpdCgpIHsK
KyAgY29uc3QgaW50IGtQcm9jZXNzS2V5ID0gMDsKKyAgY29uc3QgaW50IGtTb2NrZXRLZXkgPSAx
OworICBjb25zdCBpbnQga0V4Y2VwdGlvbktleSA9IDI7CisKICAgaWYgKCFzcGF3bmVkKCkpCiAg
ICAgcmV0dXJuIDA7CiAKLSAgLy8gUmVnaXN0ZXIgdG8gd2FpdCBmb3IgdGhlIGNoaWxkIHByb2Nl
c3MgdG8gdGVybWluYXRlLgorICAvLyBDcmVhdGUgYSBwb3J0IHRvIHdhaXQgZm9yIHNvY2tldC90
YXNrL2V4Y2VwdGlvbiBldmVudHMuCiAgIHp4X3N0YXR1c190IHN0YXR1c196eDsKLSAgc3RhdHVz
X3p4ID0genhfb2JqZWN0X3dhaXRfYXN5bmMoY2hpbGRfcHJvY2Vzc18sCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHBvcnRfLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAwIC8qIGtleSAqLywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
WlhfUFJPQ0VTU19URVJNSU5BVEVELAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBaWF9XQUlUX0FTWU5DX09OQ0UpOworICB6eDo6cG9ydCBwb3J0OworICBzdGF0dXNfenggPSB6
eDo6cG9ydDo6Y3JlYXRlKDAsICZwb3J0KTsKICAgR1RFU1RfREVBVEhfVEVTVF9DSEVDS18oc3Rh
dHVzX3p4ID09IFpYX09LKTsKIAotICAvLyBXYWl0IGZvciBpdCB0byB0ZXJtaW5hdGUsIG9yIGFu
IGV4Y2VwdGlvbiB0byBiZSByZWNlaXZlZC4KLSAgenhfcG9ydF9wYWNrZXRfdCBwYWNrZXQ7Ci0g
IHN0YXR1c196eCA9IHp4X3BvcnRfd2FpdChwb3J0XywgWlhfVElNRV9JTkZJTklURSwgJnBhY2tl
dCk7CisgIC8vIFJlZ2lzdGVyIHRvIHdhaXQgZm9yIHRoZSBjaGlsZCBwcm9jZXNzIHRvIHRlcm1p
bmF0ZS4KKyAgc3RhdHVzX3p4ID0gY2hpbGRfcHJvY2Vzc18ud2FpdF9hc3luYygKKyAgICAgIHBv
cnQsIGtQcm9jZXNzS2V5LCBaWF9QUk9DRVNTX1RFUk1JTkFURUQsIFpYX1dBSVRfQVNZTkNfT05D
RSk7CiAgIEdURVNUX0RFQVRIX1RFU1RfQ0hFQ0tfKHN0YXR1c196eCA9PSBaWF9PSyk7CiAKLSAg
aWYgKFpYX1BLVF9JU19FWENFUFRJT04ocGFja2V0LnR5cGUpKSB7Ci0gICAgLy8gUHJvY2VzcyBl
bmNvdW50ZXJlZCBhbiBleGNlcHRpb24uIEtpbGwgaXQgZGlyZWN0bHkgcmF0aGVyIHRoYW4gbGV0
dGluZwotICAgIC8vIG90aGVyIGhhbmRsZXJzIHByb2Nlc3MgdGhlIGV2ZW50LgotICAgIHN0YXR1
c196eCA9IHp4X3Rhc2tfa2lsbChjaGlsZF9wcm9jZXNzXyk7Ci0gICAgR1RFU1RfREVBVEhfVEVT
VF9DSEVDS18oc3RhdHVzX3p4ID09IFpYX09LKTsKKyAgLy8gUmVnaXN0ZXIgdG8gd2FpdCBmb3Ig
dGhlIHNvY2tldCB0byBiZSByZWFkYWJsZSBvciBjbG9zZWQuCisgIHN0YXR1c196eCA9IHN0ZGVy
cl9zb2NrZXRfLndhaXRfYXN5bmMoCisgICAgICBwb3J0LCBrU29ja2V0S2V5LCBaWF9TT0NLRVRf
UkVBREFCTEUgfCBaWF9TT0NLRVRfUEVFUl9DTE9TRUQsCisgICAgICBaWF9XQUlUX0FTWU5DX09O
Q0UpOworICBHVEVTVF9ERUFUSF9URVNUX0NIRUNLXyhzdGF0dXNfenggPT0gWlhfT0spOwogCi0g
ICAgLy8gTm93IHdhaXQgZm9yIHxjaGlsZF9wcm9jZXNzX3wgdG8gdGVybWluYXRlLgotICAgIHp4
X3NpZ25hbHNfdCBzaWduYWxzID0gMDsKLSAgICBzdGF0dXNfenggPSB6eF9vYmplY3Rfd2FpdF9v
bmUoCi0gICAgICAgIGNoaWxkX3Byb2Nlc3NfLCBaWF9QUk9DRVNTX1RFUk1JTkFURUQsIFpYX1RJ
TUVfSU5GSU5JVEUsICZzaWduYWxzKTsKKyAgLy8gUmVnaXN0ZXIgdG8gd2FpdCBmb3IgYW4gZXhj
ZXB0aW9uLgorICBzdGF0dXNfenggPSBleGNlcHRpb25fY2hhbm5lbF8ud2FpdF9hc3luYygKKyAg
ICAgIHBvcnQsIGtFeGNlcHRpb25LZXksIFpYX0NIQU5ORUxfUkVBREFCTEUsIFpYX1dBSVRfQVNZ
TkNfT05DRSk7CisgIEdURVNUX0RFQVRIX1RFU1RfQ0hFQ0tfKHN0YXR1c196eCA9PSBaWF9PSyk7
CisKKyAgYm9vbCBwcm9jZXNzX3Rlcm1pbmF0ZWQgPSBmYWxzZTsKKyAgYm9vbCBzb2NrZXRfY2xv
c2VkID0gZmFsc2U7CisgIGRvIHsKKyAgICB6eF9wb3J0X3BhY2tldF90IHBhY2tldCA9IHt9Owor
ICAgIHN0YXR1c196eCA9IHBvcnQud2FpdCh6eDo6dGltZTo6aW5maW5pdGUoKSwgJnBhY2tldCk7
CiAgICAgR1RFU1RfREVBVEhfVEVTVF9DSEVDS18oc3RhdHVzX3p4ID09IFpYX09LKTsKLSAgICBH
VEVTVF9ERUFUSF9URVNUX0NIRUNLXyhzaWduYWxzICYgWlhfUFJPQ0VTU19URVJNSU5BVEVEKTsK
LSAgfSBlbHNlIHsKLSAgICAvLyBQcm9jZXNzIHRlcm1pbmF0ZWQuCi0gICAgR1RFU1RfREVBVEhf
VEVTVF9DSEVDS18oWlhfUEtUX0lTX1NJR05BTF9PTkUocGFja2V0LnR5cGUpKTsKLSAgICBHVEVT
VF9ERUFUSF9URVNUX0NIRUNLXyhwYWNrZXQuc2lnbmFsLm9ic2VydmVkICYgWlhfUFJPQ0VTU19U
RVJNSU5BVEVEKTsKLSAgfQorCisgICAgaWYgKHBhY2tldC5rZXkgPT0ga0V4Y2VwdGlvbktleSkg
eworICAgICAgLy8gUHJvY2VzcyBlbmNvdW50ZXJlZCBhbiBleGNlcHRpb24uIEtpbGwgaXQgZGly
ZWN0bHkgcmF0aGVyIHRoYW4KKyAgICAgIC8vIGxldHRpbmcgb3RoZXIgaGFuZGxlcnMgcHJvY2Vz
cyB0aGUgZXZlbnQuIFdlIHdpbGwgZ2V0IGEga1Byb2Nlc3NLZXkKKyAgICAgIC8vIGV2ZW50IHdo
ZW4gdGhlIHByb2Nlc3MgYWN0dWFsbHkgdGVybWluYXRlcy4KKyAgICAgIHN0YXR1c196eCA9IGNo
aWxkX3Byb2Nlc3NfLmtpbGwoKTsKKyAgICAgIEdURVNUX0RFQVRIX1RFU1RfQ0hFQ0tfKHN0YXR1
c196eCA9PSBaWF9PSyk7CisgICAgfSBlbHNlIGlmIChwYWNrZXQua2V5ID09IGtQcm9jZXNzS2V5
KSB7CisgICAgICAvLyBQcm9jZXNzIHRlcm1pbmF0ZWQuCisgICAgICBHVEVTVF9ERUFUSF9URVNU
X0NIRUNLXyhaWF9QS1RfSVNfU0lHTkFMX09ORShwYWNrZXQudHlwZSkpOworICAgICAgR1RFU1Rf
REVBVEhfVEVTVF9DSEVDS18ocGFja2V0LnNpZ25hbC5vYnNlcnZlZCAmIFpYX1BST0NFU1NfVEVS
TUlOQVRFRCk7CisgICAgICBwcm9jZXNzX3Rlcm1pbmF0ZWQgPSB0cnVlOworICAgIH0gZWxzZSBp
ZiAocGFja2V0LmtleSA9PSBrU29ja2V0S2V5KSB7CisgICAgICBHVEVTVF9ERUFUSF9URVNUX0NI
RUNLXyhaWF9QS1RfSVNfU0lHTkFMX09ORShwYWNrZXQudHlwZSkpOworICAgICAgaWYgKHBhY2tl
dC5zaWduYWwub2JzZXJ2ZWQgJiBaWF9TT0NLRVRfUkVBREFCTEUpIHsKKyAgICAgICAgLy8gUmVh
ZCBkYXRhIGZyb20gdGhlIHNvY2tldC4KKyAgICAgICAgY29uc3RleHByIHNpemVfdCBrQnVmZmVy
U2l6ZSA9IDEwMjQ7CisgICAgICAgIGRvIHsKKyAgICAgICAgICBzaXplX3Qgb2xkX2xlbmd0aCA9
IGNhcHR1cmVkX3N0ZGVycl8ubGVuZ3RoKCk7CisgICAgICAgICAgc2l6ZV90IGJ5dGVzX3JlYWQg
PSAwOworICAgICAgICAgIGNhcHR1cmVkX3N0ZGVycl8ucmVzaXplKG9sZF9sZW5ndGggKyBrQnVm
ZmVyU2l6ZSk7CisgICAgICAgICAgc3RhdHVzX3p4ID0gc3RkZXJyX3NvY2tldF8ucmVhZCgKKyAg
ICAgICAgICAgICAgMCwgJmNhcHR1cmVkX3N0ZGVycl8uZnJvbnQoKSArIG9sZF9sZW5ndGgsIGtC
dWZmZXJTaXplLAorICAgICAgICAgICAgICAmYnl0ZXNfcmVhZCk7CisgICAgICAgICAgY2FwdHVy
ZWRfc3RkZXJyXy5yZXNpemUob2xkX2xlbmd0aCArIGJ5dGVzX3JlYWQpOworICAgICAgICB9IHdo
aWxlIChzdGF0dXNfenggPT0gWlhfT0spOworICAgICAgICBpZiAoc3RhdHVzX3p4ID09IFpYX0VS
Ul9QRUVSX0NMT1NFRCkgeworICAgICAgICAgIHNvY2tldF9jbG9zZWQgPSB0cnVlOworICAgICAg
ICB9IGVsc2UgeworICAgICAgICAgIEdURVNUX0RFQVRIX1RFU1RfQ0hFQ0tfKHN0YXR1c196eCA9
PSBaWF9FUlJfU0hPVUxEX1dBSVQpOworICAgICAgICAgIHN0YXR1c196eCA9IHN0ZGVycl9zb2Nr
ZXRfLndhaXRfYXN5bmMoCisgICAgICAgICAgICAgIHBvcnQsIGtTb2NrZXRLZXksIFpYX1NPQ0tF
VF9SRUFEQUJMRSB8IFpYX1NPQ0tFVF9QRUVSX0NMT1NFRCwKKyAgICAgICAgICAgICAgWlhfV0FJ
VF9BU1lOQ19PTkNFKTsKKyAgICAgICAgICBHVEVTVF9ERUFUSF9URVNUX0NIRUNLXyhzdGF0dXNf
enggPT0gWlhfT0spOworICAgICAgICB9CisgICAgICB9IGVsc2UgeworICAgICAgICBHVEVTVF9E
RUFUSF9URVNUX0NIRUNLXyhwYWNrZXQuc2lnbmFsLm9ic2VydmVkICYgWlhfU09DS0VUX1BFRVJf
Q0xPU0VEKTsKKyAgICAgICAgc29ja2V0X2Nsb3NlZCA9IHRydWU7CisgICAgICB9CisgICAgfQor
ICB9IHdoaWxlICghcHJvY2Vzc190ZXJtaW5hdGVkICYmICFzb2NrZXRfY2xvc2VkKTsKIAogICBS
ZWFkQW5kSW50ZXJwcmV0U3RhdHVzQnl0ZSgpOwogCiAgIHp4X2luZm9fcHJvY2Vzc190IGJ1ZmZl
cjsKLSAgc3RhdHVzX3p4ID0genhfb2JqZWN0X2dldF9pbmZvKAotICAgICAgY2hpbGRfcHJvY2Vz
c18sCi0gICAgICBaWF9JTkZPX1BST0NFU1MsCi0gICAgICAmYnVmZmVyLAotICAgICAgc2l6ZW9m
KGJ1ZmZlciksCi0gICAgICBudWxscHRyLAotICAgICAgbnVsbHB0cik7CisgIHN0YXR1c196eCA9
IGNoaWxkX3Byb2Nlc3NfLmdldF9pbmZvKAorICAgICAgWlhfSU5GT19QUk9DRVNTLCAmYnVmZmVy
LCBzaXplb2YoYnVmZmVyKSwgbnVsbHB0ciwgbnVsbHB0cik7CiAgIEdURVNUX0RFQVRIX1RFU1Rf
Q0hFQ0tfKHN0YXR1c196eCA9PSBaWF9PSyk7CiAKICAgR1RFU1RfREVBVEhfVEVTVF9DSEVDS18o
YnVmZmVyLmV4aXRlZCk7CkBAIC05MzYsMjEgKzk3NiwyMCBAQCBEZWF0aFRlc3Q6OlRlc3RSb2xl
IEZ1Y2hzaWFEZWF0aFRlc3Q6OkFzc3VtZVJvbGUoKSB7CiAgIGNvbnN0IFRlc3RJbmZvKiBjb25z
dCBpbmZvID0gaW1wbC0+Y3VycmVudF90ZXN0X2luZm8oKTsKICAgY29uc3QgaW50IGRlYXRoX3Rl
c3RfaW5kZXggPSBpbmZvLT5yZXN1bHQoKS0+ZGVhdGhfdGVzdF9jb3VudCgpOwogCi0gIGlmIChm
bGFnICE9IE5VTEwpIHsKKyAgaWYgKGZsYWcgIT0gbnVsbHB0cikgewogICAgIC8vIFBhcnNlSW50
ZXJuYWxSdW5EZWF0aFRlc3RGbGFnKCkgaGFzIHBlcmZvcm1lZCBhbGwgdGhlIG5lY2Vzc2FyeQog
ICAgIC8vIHByb2Nlc3NpbmcuCiAgICAgc2V0X3dyaXRlX2ZkKGtGdWNoc2lhUmVhZFBpcGVGZCk7
CiAgICAgcmV0dXJuIEVYRUNVVEVfVEVTVDsKICAgfQogCi0gIENhcHR1cmVTdGRlcnIoKTsKICAg
Ly8gRmx1c2ggdGhlIGxvZyBidWZmZXJzIHNpbmNlIHRoZSBsb2cgc3RyZWFtcyBhcmUgc2hhcmVk
IHdpdGggdGhlIGNoaWxkLgogICBGbHVzaEluZm9Mb2coKTsKIAogICAvLyBCdWlsZCB0aGUgY2hp
bGQgcHJvY2VzcyBjb21tYW5kIGxpbmUuCi0gIGNvbnN0IHN0ZDo6c3RyaW5nIGZpbHRlcl9mbGFn
ID0KLSAgICAgIHN0ZDo6c3RyaW5nKCItLSIpICsgR1RFU1RfRkxBR19QUkVGSVhfICsga0ZpbHRl
ckZsYWcgKyAiPSIKLSAgICAgICsgaW5mby0+dGVzdF9jYXNlX25hbWUoKSArICIuIiArIGluZm8t
Pm5hbWUoKTsKKyAgY29uc3Qgc3RkOjpzdHJpbmcgZmlsdGVyX2ZsYWcgPSBzdGQ6OnN0cmluZygi
LS0iKSArIEdURVNUX0ZMQUdfUFJFRklYXyArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAga0ZpbHRlckZsYWcgKyAiPSIgKyBpbmZvLT50ZXN0X3N1aXRlX25hbWUoKSArCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIi4iICsgaW5mby0+bmFtZSgpOwogICBjb25z
dCBzdGQ6OnN0cmluZyBpbnRlcm5hbF9mbGFnID0KICAgICAgIHN0ZDo6c3RyaW5nKCItLSIpICsg
R1RFU1RfRkxBR19QUkVGSVhfICsga0ludGVybmFsUnVuRGVhdGhUZXN0RmxhZyArICI9IgogICAg
ICAgKyBmaWxlXyArICJ8IgpAQCAtOTY0LDM1ICsxMDAzLDY4IEBAIERlYXRoVGVzdDo6VGVzdFJv
bGUgRnVjaHNpYURlYXRoVGVzdDo6QXNzdW1lUm9sZSgpIHsKICAgLy8gQnVpbGQgdGhlIHBpcGUg
Zm9yIGNvbW11bmljYXRpb24gd2l0aCB0aGUgY2hpbGQuCiAgIHp4X3N0YXR1c190IHN0YXR1czsK
ICAgenhfaGFuZGxlX3QgY2hpbGRfcGlwZV9oYW5kbGU7Ci0gIHVpbnQzMl90IHR5cGU7Ci0gIHN0
YXR1cyA9IGZkaW9fcGlwZV9oYWxmKCZjaGlsZF9waXBlX2hhbmRsZSwgJnR5cGUpOwotICBHVEVT
VF9ERUFUSF9URVNUX0NIRUNLXyhzdGF0dXMgPj0gMCk7Ci0gIHNldF9yZWFkX2ZkKHN0YXR1cyk7
CisgIGludCBjaGlsZF9waXBlX2ZkOworICBzdGF0dXMgPSBmZGlvX3BpcGVfaGFsZigmY2hpbGRf
cGlwZV9mZCwgJmNoaWxkX3BpcGVfaGFuZGxlKTsKKyAgR1RFU1RfREVBVEhfVEVTVF9DSEVDS18o
c3RhdHVzID09IFpYX09LKTsKKyAgc2V0X3JlYWRfZmQoY2hpbGRfcGlwZV9mZCk7CiAKICAgLy8g
U2V0IHRoZSBwaXBlIGhhbmRsZSBmb3IgdGhlIGNoaWxkLgotICBmZGlvX3NwYXduX2FjdGlvbl90
IGFkZF9oYW5kbGVfYWN0aW9uID0ge307Ci0gIGFkZF9oYW5kbGVfYWN0aW9uLmFjdGlvbiA9IEZE
SU9fU1BBV05fQUNUSU9OX0FERF9IQU5ETEU7Ci0gIGFkZF9oYW5kbGVfYWN0aW9uLmguaWQgPSBQ
QV9ITkQodHlwZSwga0Z1Y2hzaWFSZWFkUGlwZUZkKTsKLSAgYWRkX2hhbmRsZV9hY3Rpb24uaC5o
YW5kbGUgPSBjaGlsZF9waXBlX2hhbmRsZTsKKyAgZmRpb19zcGF3bl9hY3Rpb25fdCBzcGF3bl9h
Y3Rpb25zWzJdID0ge307CisgIGZkaW9fc3Bhd25fYWN0aW9uX3QqIGFkZF9oYW5kbGVfYWN0aW9u
ID0gJnNwYXduX2FjdGlvbnNbMF07CisgIGFkZF9oYW5kbGVfYWN0aW9uLT5hY3Rpb24gPSBGRElP
X1NQQVdOX0FDVElPTl9BRERfSEFORExFOworICBhZGRfaGFuZGxlX2FjdGlvbi0+aC5pZCA9IFBB
X0hORChQQV9GRCwga0Z1Y2hzaWFSZWFkUGlwZUZkKTsKKyAgYWRkX2hhbmRsZV9hY3Rpb24tPmgu
aGFuZGxlID0gY2hpbGRfcGlwZV9oYW5kbGU7CisKKyAgLy8gQ3JlYXRlIGEgc29ja2V0IHBhaXIg
d2lsbCBiZSB1c2VkIHRvIHJlY2VpdmUgdGhlIGNoaWxkIHByb2Nlc3MnIHN0ZGVyci4KKyAgeng6
OnNvY2tldCBzdGRlcnJfcHJvZHVjZXJfc29ja2V0OworICBzdGF0dXMgPQorICAgICAgeng6OnNv
Y2tldDo6Y3JlYXRlKDAsICZzdGRlcnJfcHJvZHVjZXJfc29ja2V0LCAmc3RkZXJyX3NvY2tldF8p
OworICBHVEVTVF9ERUFUSF9URVNUX0NIRUNLXyhzdGF0dXMgPj0gMCk7CisgIGludCBzdGRlcnJf
cHJvZHVjZXJfZmQgPSAtMTsKKyAgc3RhdHVzID0KKyAgICAgIGZkaW9fZmRfY3JlYXRlKHN0ZGVy
cl9wcm9kdWNlcl9zb2NrZXQucmVsZWFzZSgpLCAmc3RkZXJyX3Byb2R1Y2VyX2ZkKTsKKyAgR1RF
U1RfREVBVEhfVEVTVF9DSEVDS18oc3RhdHVzID49IDApOwogCi0gIC8vIFNwYXduIHRoZSBjaGls
ZCBwcm9jZXNzLgotICBzdGF0dXMgPSBmZGlvX3NwYXduX2V0YyhaWF9IQU5ETEVfSU5WQUxJRCwg
RkRJT19TUEFXTl9DTE9ORV9BTEwsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3MuQXJn
digpWzBdLCBhcmdzLkFyZ3YoKSwgbnVsbHB0ciwgMSwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgJmFkZF9oYW5kbGVfYWN0aW9uLCAmY2hpbGRfcHJvY2Vzc18sIG51bGxwdHIpOworICAvLyBN
YWtlIHRoZSBzdGRlcnIgc29ja2V0IG5vbmJsb2NraW5nLgorICBHVEVTVF9ERUFUSF9URVNUX0NI
RUNLXyhmY250bChzdGRlcnJfcHJvZHVjZXJfZmQsIEZfU0VURkwsIDApID09IDApOworCisgIGZk
aW9fc3Bhd25fYWN0aW9uX3QqIGFkZF9zdGRlcnJfYWN0aW9uID0gJnNwYXduX2FjdGlvbnNbMV07
CisgIGFkZF9zdGRlcnJfYWN0aW9uLT5hY3Rpb24gPSBGRElPX1NQQVdOX0FDVElPTl9DTE9ORV9G
RDsKKyAgYWRkX3N0ZGVycl9hY3Rpb24tPmZkLmxvY2FsX2ZkID0gc3RkZXJyX3Byb2R1Y2VyX2Zk
OworICBhZGRfc3RkZXJyX2FjdGlvbi0+ZmQudGFyZ2V0X2ZkID0gU1RERVJSX0ZJTEVOTzsKKwor
ICAvLyBDcmVhdGUgYSBjaGlsZCBqb2IuCisgIHp4X2hhbmRsZV90IGNoaWxkX2pvYiA9IFpYX0hB
TkRMRV9JTlZBTElEOworICBzdGF0dXMgPSB6eF9qb2JfY3JlYXRlKHp4X2pvYl9kZWZhdWx0KCks
IDAsICYgY2hpbGRfam9iKTsKKyAgR1RFU1RfREVBVEhfVEVTVF9DSEVDS18oc3RhdHVzID09IFpY
X09LKTsKKyAgenhfcG9saWN5X2Jhc2ljX3QgcG9saWN5OworICBwb2xpY3kuY29uZGl0aW9uID0g
WlhfUE9MX05FV19BTlk7CisgIHBvbGljeS5wb2xpY3kgPSBaWF9QT0xfQUNUSU9OX0FMTE9XOwor
ICBzdGF0dXMgPSB6eF9qb2Jfc2V0X3BvbGljeSgKKyAgICAgIGNoaWxkX2pvYiwgWlhfSk9CX1BP
TF9SRUxBVElWRSwgWlhfSk9CX1BPTF9CQVNJQywgJnBvbGljeSwgMSk7CiAgIEdURVNUX0RFQVRI
X1RFU1RfQ0hFQ0tfKHN0YXR1cyA9PSBaWF9PSyk7CiAKLSAgLy8gQ3JlYXRlIGFuIGV4Y2VwdGlv
biBwb3J0IGFuZCBhdHRhY2ggaXQgdG8gdGhlIHxjaGlsZF9wcm9jZXNzX3wsIHRvIGFsbG93Cisg
IC8vIENyZWF0ZSBhbiBleGNlcHRpb24gY2hhbm5lbCBhdHRhY2hlZCB0byB0aGUgfGNoaWxkX2pv
YnwsIHRvIGFsbG93CiAgIC8vIHVzIHRvIHN1cHByZXNzIHRoZSBzeXN0ZW0gZGVmYXVsdCBleGNl
cHRpb24gaGFuZGxlciBmcm9tIGZpcmluZy4KLSAgc3RhdHVzID0genhfcG9ydF9jcmVhdGUoMCwg
JnBvcnRfKTsKKyAgc3RhdHVzID0KKyAgICAgIHp4X3Rhc2tfY3JlYXRlX2V4Y2VwdGlvbl9jaGFu
bmVsKAorICAgICAgICAgIGNoaWxkX2pvYiwgMCwgZXhjZXB0aW9uX2NoYW5uZWxfLnJlc2V0X2Fu
ZF9nZXRfYWRkcmVzcygpKTsKICAgR1RFU1RfREVBVEhfVEVTVF9DSEVDS18oc3RhdHVzID09IFpY
X09LKTsKLSAgc3RhdHVzID0genhfdGFza19iaW5kX2V4Y2VwdGlvbl9wb3J0KAotICAgICAgY2hp
bGRfcHJvY2Vzc18sIHBvcnRfLCAwIC8qIGtleSAqLywgMCAvKm9wdGlvbnMgKi8pOworCisgIC8v
IFNwYXduIHRoZSBjaGlsZCBwcm9jZXNzLgorICBzdGF0dXMgPSBmZGlvX3NwYXduX2V0YygKKyAg
ICAgIGNoaWxkX2pvYiwgRkRJT19TUEFXTl9DTE9ORV9BTEwsIGFyZ3MuQXJndigpWzBdLCBhcmdz
LkFyZ3YoKSwgbnVsbHB0ciwKKyAgICAgIDIsIHNwYXduX2FjdGlvbnMsIGNoaWxkX3Byb2Nlc3Nf
LnJlc2V0X2FuZF9nZXRfYWRkcmVzcygpLCBudWxscHRyKTsKICAgR1RFU1RfREVBVEhfVEVTVF9D
SEVDS18oc3RhdHVzID09IFpYX09LKTsKIAogICBzZXRfc3Bhd25lZCh0cnVlKTsKICAgcmV0dXJu
IE9WRVJTRUVfVEVTVDsKIH0KIAorc3RkOjpzdHJpbmcgRnVjaHNpYURlYXRoVGVzdDo6R2V0RXJy
b3JMb2dzKCkgeworICByZXR1cm4gY2FwdHVyZWRfc3RkZXJyXzsKK30KKwogI2Vsc2UgIC8vIFdl
IGFyZSBuZWl0aGVyIG9uIFdpbmRvd3MsIG5vciBvbiBGdWNoc2lhLgogCiAvLyBGb3JraW5nRGVh
dGhUZXN0IHByb3ZpZGVzIGltcGxlbWVudGF0aW9ucyBmb3IgbW9zdCBvZiB0aGUgYWJzdHJhY3QK
QEAgLTEwMDAsMTAgKzEwNzIsMTAgQEAgRGVhdGhUZXN0OjpUZXN0Um9sZSBGdWNoc2lhRGVhdGhU
ZXN0OjpBc3N1bWVSb2xlKCkgewogLy8gbGVmdCB1bmRlZmluZWQuCiBjbGFzcyBGb3JraW5nRGVh
dGhUZXN0IDogcHVibGljIERlYXRoVGVzdEltcGwgewogIHB1YmxpYzoKLSAgRm9ya2luZ0RlYXRo
VGVzdChjb25zdCBjaGFyKiBzdGF0ZW1lbnQsIGNvbnN0IFJFKiByZWdleCk7CisgIEZvcmtpbmdE
ZWF0aFRlc3QoY29uc3QgY2hhciogc3RhdGVtZW50LCBNYXRjaGVyPGNvbnN0IHN0ZDo6c3RyaW5n
Jj4gbWF0Y2hlcik7CiAKICAgLy8gQWxsIG9mIHRoZXNlIHZpcnR1YWwgZnVuY3Rpb25zIGFyZSBp
bmhlcml0ZWQgZnJvbSBEZWF0aFRlc3QuCi0gIHZpcnR1YWwgaW50IFdhaXQoKTsKKyAgaW50IFdh
aXQoKSBvdmVycmlkZTsKIAogIHByb3RlY3RlZDoKICAgdm9pZCBzZXRfY2hpbGRfcGlkKHBpZF90
IGNoaWxkX3BpZCkgeyBjaGlsZF9waWRfID0gY2hpbGRfcGlkOyB9CkBAIC0xMDE0LDkgKzEwODYs
OSBAQCBjbGFzcyBGb3JraW5nRGVhdGhUZXN0IDogcHVibGljIERlYXRoVGVzdEltcGwgewogfTsK
IAogLy8gQ29uc3RydWN0cyBhIEZvcmtpbmdEZWF0aFRlc3QuCi1Gb3JraW5nRGVhdGhUZXN0OjpG
b3JraW5nRGVhdGhUZXN0KGNvbnN0IGNoYXIqIGFfc3RhdGVtZW50LCBjb25zdCBSRSogYV9yZWdl
eCkKLSAgICA6IERlYXRoVGVzdEltcGwoYV9zdGF0ZW1lbnQsIGFfcmVnZXgpLAotICAgICAgY2hp
bGRfcGlkXygtMSkge30KK0ZvcmtpbmdEZWF0aFRlc3Q6OkZvcmtpbmdEZWF0aFRlc3QoY29uc3Qg
Y2hhciogYV9zdGF0ZW1lbnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1h
dGNoZXI8Y29uc3Qgc3RkOjpzdHJpbmcmPiBtYXRjaGVyKQorICAgIDogRGVhdGhUZXN0SW1wbChh
X3N0YXRlbWVudCwgc3RkOjptb3ZlKG1hdGNoZXIpKSwgY2hpbGRfcGlkXygtMSkge30KIAogLy8g
V2FpdHMgZm9yIHRoZSBjaGlsZCBpbiBhIGRlYXRoIHRlc3QgdG8gZXhpdCwgcmV0dXJuaW5nIGl0
cyBleGl0CiAvLyBzdGF0dXMsIG9yIDAgaWYgbm8gY2hpbGQgcHJvY2VzcyBleGlzdHMuICBBcyBh
IHNpZGUgZWZmZWN0LCBzZXRzIHRoZQpAQCAtMTAzNyw5ICsxMTA5LDkgQEAgaW50IEZvcmtpbmdE
ZWF0aFRlc3Q6OldhaXQoKSB7CiAvLyBpbiB0aGUgY2hpbGQgcHJvY2Vzcy4KIGNsYXNzIE5vRXhl
Y0RlYXRoVGVzdCA6IHB1YmxpYyBGb3JraW5nRGVhdGhUZXN0IHsKICBwdWJsaWM6Ci0gIE5vRXhl
Y0RlYXRoVGVzdChjb25zdCBjaGFyKiBhX3N0YXRlbWVudCwgY29uc3QgUkUqIGFfcmVnZXgpIDoK
LSAgICAgIEZvcmtpbmdEZWF0aFRlc3QoYV9zdGF0ZW1lbnQsIGFfcmVnZXgpIHsgfQotICB2aXJ0
dWFsIFRlc3RSb2xlIEFzc3VtZVJvbGUoKTsKKyAgTm9FeGVjRGVhdGhUZXN0KGNvbnN0IGNoYXIq
IGFfc3RhdGVtZW50LCBNYXRjaGVyPGNvbnN0IHN0ZDo6c3RyaW5nJj4gbWF0Y2hlcikKKyAgICAg
IDogRm9ya2luZ0RlYXRoVGVzdChhX3N0YXRlbWVudCwgc3RkOjptb3ZlKG1hdGNoZXIpKSB7fQor
ICBUZXN0Um9sZSBBc3N1bWVSb2xlKCkgb3ZlcnJpZGU7CiB9OwogCiAvLyBUaGUgQXNzdW1lUm9s
ZSBwcm9jZXNzIGZvciBhIGZvcmstYW5kLXJ1biBkZWF0aCB0ZXN0LiAgSXQgaW1wbGVtZW50cyBh
CkBAIC0xMDkyLDEwICsxMTY0LDEzIEBAIERlYXRoVGVzdDo6VGVzdFJvbGUgTm9FeGVjRGVhdGhU
ZXN0OjpBc3N1bWVSb2xlKCkgewogLy8gb25seSB0aGlzIHNwZWNpZmljIGRlYXRoIHRlc3QgdG8g
YmUgcnVuLgogY2xhc3MgRXhlY0RlYXRoVGVzdCA6IHB1YmxpYyBGb3JraW5nRGVhdGhUZXN0IHsK
ICBwdWJsaWM6Ci0gIEV4ZWNEZWF0aFRlc3QoY29uc3QgY2hhciogYV9zdGF0ZW1lbnQsIGNvbnN0
IFJFKiBhX3JlZ2V4LAotICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGZpbGUsIGludCBsaW5l
KSA6Ci0gICAgICBGb3JraW5nRGVhdGhUZXN0KGFfc3RhdGVtZW50LCBhX3JlZ2V4KSwgZmlsZV8o
ZmlsZSksIGxpbmVfKGxpbmUpIHsgfQotICB2aXJ0dWFsIFRlc3RSb2xlIEFzc3VtZVJvbGUoKTsK
KyAgRXhlY0RlYXRoVGVzdChjb25zdCBjaGFyKiBhX3N0YXRlbWVudCwgTWF0Y2hlcjxjb25zdCBz
dGQ6OnN0cmluZyY+IG1hdGNoZXIsCisgICAgICAgICAgICAgICAgY29uc3QgY2hhciogZmlsZSwg
aW50IGxpbmUpCisgICAgICA6IEZvcmtpbmdEZWF0aFRlc3QoYV9zdGF0ZW1lbnQsIHN0ZDo6bW92
ZShtYXRjaGVyKSksCisgICAgICAgIGZpbGVfKGZpbGUpLAorICAgICAgICBsaW5lXyhsaW5lKSB7
fQorICBUZXN0Um9sZSBBc3N1bWVSb2xlKCkgb3ZlcnJpZGU7CisKICBwcml2YXRlOgogICBzdGF0
aWMgOjpzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gR2V0QXJndnNGb3JEZWF0aFRlc3RDaGlsZFBy
b2Nlc3MoKSB7CiAgICAgOjpzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gYXJncyA9IEdldEluamVj
dGFibGVBcmd2cygpOwpAQCAtMTExNSw5ICsxMTkwLDcgQEAgY2xhc3MgRXhlY0RlYXRoVGVzdCA6
IHB1YmxpYyBGb3JraW5nRGVhdGhUZXN0IHsKIC8vIFV0aWxpdHkgY2xhc3MgZm9yIGFjY3VtdWxh
dGluZyBjb21tYW5kLWxpbmUgYXJndW1lbnRzLgogY2xhc3MgQXJndW1lbnRzIHsKICBwdWJsaWM6
Ci0gIEFyZ3VtZW50cygpIHsKLSAgICBhcmdzXy5wdXNoX2JhY2soTlVMTCk7Ci0gIH0KKyAgQXJn
dW1lbnRzKCkgeyBhcmdzXy5wdXNoX2JhY2sobnVsbHB0cik7IH0KIAogICB+QXJndW1lbnRzKCkg
ewogICAgIGZvciAoc3RkOjp2ZWN0b3I8Y2hhcio+OjppdGVyYXRvciBpID0gYXJnc18uYmVnaW4o
KTsgaSAhPSBhcmdzXy5lbmQoKTsKQEAgLTEyMTEsNiArMTI4NCw5IEBAIHN0YXRpYyBpbnQgRXhl
Y0RlYXRoVGVzdENoaWxkTWFpbih2b2lkKiBjaGlsZF9hcmcpIHsKIC8vIGNvcnJlY3QgYW5zd2Vy
Lgogc3RhdGljIHZvaWQgU3RhY2tMb3dlclRoYW5BZGRyZXNzKGNvbnN0IHZvaWQqIHB0ciwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sKiByZXN1bHQpIEdURVNUX05PX0lO
TElORV87CisvLyBIV0FkZHJlc3NTYW5pdGl6ZXIgYWRkIGEgcmFuZG9tIHRhZyB0byB0aGUgTVNC
IG9mIHRoZSBsb2NhbCB2YXJpYWJsZSBhZGRyZXNzLAorLy8gbWFraW5nIGNvbXBhcmlzb24gcmVz
dWx0IHVucHJlZGljdGFibGUuCitHVEVTVF9BVFRSSUJVVEVfTk9fU0FOSVRJWkVfSFdBRERSRVNT
Xwogc3RhdGljIHZvaWQgU3RhY2tMb3dlclRoYW5BZGRyZXNzKGNvbnN0IHZvaWQqIHB0ciwgYm9v
bCogcmVzdWx0KSB7CiAgIGludCBkdW1teTsKICAgKnJlc3VsdCA9ICgmZHVtbXkgPCBwdHIpOwpA
QCAtMTIxOCw2ICsxMjk0LDcgQEAgc3RhdGljIHZvaWQgU3RhY2tMb3dlclRoYW5BZGRyZXNzKGNv
bnN0IHZvaWQqIHB0ciwgYm9vbCogcmVzdWx0KSB7CiAKIC8vIE1ha2Ugc3VyZSBBZGRyZXNzU2Fu
aXRpemVyIGRvZXMgbm90IHRhbXBlciB3aXRoIHRoZSBzdGFjayBoZXJlLgogR1RFU1RfQVRUUklC
VVRFX05PX1NBTklUSVpFX0FERFJFU1NfCitHVEVTVF9BVFRSSUJVVEVfTk9fU0FOSVRJWkVfSFdB
RERSRVNTXwogc3RhdGljIGJvb2wgU3RhY2tHcm93c0Rvd24oKSB7CiAgIGludCBkdW1teTsKICAg
Ym9vbCByZXN1bHQ7CkBAIC0xMjYyLDcgKzEzMzksOCBAQCBzdGF0aWMgcGlkX3QgRXhlY0RlYXRo
VGVzdFNwYXduQ2hpbGQoY2hhciogY29uc3QqIGFyZ3YsIGludCBjbG9zZV9mZCkgewogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkX2ZsYWdzIHwgRkRfQ0xPRVhFQykp
OwogICBzdHJ1Y3QgaW5oZXJpdGFuY2UgaW5oZXJpdCA9IHswfTsKICAgLy8gc3Bhd24gaXMgYSBz
eXN0ZW0gY2FsbC4KLSAgY2hpbGRfcGlkID0gc3Bhd24oYXJncy5hcmd2WzBdLCAwLCBOVUxMLCAm
aW5oZXJpdCwgYXJncy5hcmd2LCBHZXRFbnZpcm9uKCkpOworICBjaGlsZF9waWQgPQorICAgICAg
c3Bhd24oYXJncy5hcmd2WzBdLCAwLCBudWxscHRyLCAmaW5oZXJpdCwgYXJncy5hcmd2LCBHZXRF
bnZpcm9uKCkpOwogICAvLyBSZXN0b3JlcyB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4K
ICAgR1RFU1RfREVBVEhfVEVTVF9DSEVDS18oZmNoZGlyKGN3ZF9mZCkgIT0gLTEpOwogICBHVEVT
VF9ERUFUSF9URVNUX0NIRUNLX1NZU0NBTExfKGNsb3NlKGN3ZF9mZCkpOwpAQCAtMTI4Niw5ICsx
MzY0LDkgQEAgc3RhdGljIHBpZF90IEV4ZWNEZWF0aFRlc3RTcGF3bkNoaWxkKGNoYXIqIGNvbnN0
KiBhcmd2LCBpbnQgY2xvc2VfZmQpIHsKIAogICBpZiAoIXVzZV9mb3JrKSB7CiAgICAgc3RhdGlj
IGNvbnN0IGJvb2wgc3RhY2tfZ3Jvd3NfZG93biA9IFN0YWNrR3Jvd3NEb3duKCk7Ci0gICAgY29u
c3Qgc2l6ZV90IHN0YWNrX3NpemUgPSBnZXRwYWdlc2l6ZSgpOworICAgIGNvbnN0IGF1dG8gc3Rh
Y2tfc2l6ZSA9IHN0YXRpY19jYXN0PHNpemVfdD4oZ2V0cGFnZXNpemUoKSAqIDIpOwogICAgIC8v
IE1NQVBfQU5PTllNT1VTIGlzIG5vdCBkZWZpbmVkIG9uIE1hYywgc28gd2UgdXNlIE1BUF9BTk9O
IGluc3RlYWQuCi0gICAgdm9pZCogY29uc3Qgc3RhY2sgPSBtbWFwKE5VTEwsIHN0YWNrX3NpemUs
IFBST1RfUkVBRCB8IFBST1RfV1JJVEUsCisgICAgdm9pZCogY29uc3Qgc3RhY2sgPSBtbWFwKG51
bGxwdHIsIHN0YWNrX3NpemUsIFBST1RfUkVBRCB8IFBST1RfV1JJVEUsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIE1BUF9BTk9OIHwgTUFQX1BSSVZBVEUsIC0xLCAwKTsKICAgICBHVEVT
VF9ERUFUSF9URVNUX0NIRUNLXyhzdGFjayAhPSBNQVBfRkFJTEVEKTsKIApAQCAtMTMwMiw4ICsx
MzgwLDkgQEAgc3RhdGljIHBpZF90IEV4ZWNEZWF0aFRlc3RTcGF3bkNoaWxkKGNoYXIqIGNvbnN0
KiBhcmd2LCBpbnQgY2xvc2VfZmQpIHsKICAgICB2b2lkKiBjb25zdCBzdGFja190b3AgPQogICAg
ICAgICBzdGF0aWNfY2FzdDxjaGFyKj4oc3RhY2spICsKICAgICAgICAgICAgIChzdGFja19ncm93
c19kb3duID8gc3RhY2tfc2l6ZSAtIGtNYXhTdGFja0FsaWdubWVudCA6IDApOwotICAgIEdURVNU
X0RFQVRIX1RFU1RfQ0hFQ0tfKHN0YWNrX3NpemUgPiBrTWF4U3RhY2tBbGlnbm1lbnQgJiYKLSAg
ICAgICAgcmVpbnRlcnByZXRfY2FzdDxpbnRwdHJfdD4oc3RhY2tfdG9wKSAlIGtNYXhTdGFja0Fs
aWdubWVudCA9PSAwKTsKKyAgICBHVEVTVF9ERUFUSF9URVNUX0NIRUNLXygKKyAgICAgICAgc3Rh
dGljX2Nhc3Q8c2l6ZV90PihzdGFja19zaXplKSA+IGtNYXhTdGFja0FsaWdubWVudCAmJgorICAg
ICAgICByZWludGVycHJldF9jYXN0PHVpbnRwdHJfdD4oc3RhY2tfdG9wKSAlIGtNYXhTdGFja0Fs
aWdubWVudCA9PSAwKTsKIAogICAgIGNoaWxkX3BpZCA9IGNsb25lKCZFeGVjRGVhdGhUZXN0Q2hp
bGRNYWluLCBzdGFja190b3AsIFNJR0NITEQsICZhcmdzKTsKIApAQCAtMTMyMCw3ICsxMzk5LDcg
QEAgc3RhdGljIHBpZF90IEV4ZWNEZWF0aFRlc3RTcGF3bkNoaWxkKGNoYXIqIGNvbnN0KiBhcmd2
LCBpbnQgY2xvc2VfZmQpIHsKICMgIGVuZGlmICAvLyBHVEVTVF9PU19RTlgKICMgIGlmIEdURVNU
X09TX0xJTlVYCiAgIEdURVNUX0RFQVRIX1RFU1RfQ0hFQ0tfU1lTQ0FMTF8oCi0gICAgICBzaWdh
Y3Rpb24oU0lHUFJPRiwgJnNhdmVkX3NpZ3Byb2ZfYWN0aW9uLCBOVUxMKSk7CisgICAgICBzaWdh
Y3Rpb24oU0lHUFJPRiwgJnNhdmVkX3NpZ3Byb2ZfYWN0aW9uLCBudWxscHRyKSk7CiAjICBlbmRp
ZiAgLy8gR1RFU1RfT1NfTElOVVgKIAogICBHVEVTVF9ERUFUSF9URVNUX0NIRUNLXyhjaGlsZF9w
aWQgIT0gLTEpOwpAQCAtMTMzOCw3ICsxNDE3LDcgQEAgRGVhdGhUZXN0OjpUZXN0Um9sZSBFeGVj
RGVhdGhUZXN0OjpBc3N1bWVSb2xlKCkgewogICBjb25zdCBUZXN0SW5mbyogY29uc3QgaW5mbyA9
IGltcGwtPmN1cnJlbnRfdGVzdF9pbmZvKCk7CiAgIGNvbnN0IGludCBkZWF0aF90ZXN0X2luZGV4
ID0gaW5mby0+cmVzdWx0KCktPmRlYXRoX3Rlc3RfY291bnQoKTsKIAotICBpZiAoZmxhZyAhPSBO
VUxMKSB7CisgIGlmIChmbGFnICE9IG51bGxwdHIpIHsKICAgICBzZXRfd3JpdGVfZmQoZmxhZy0+
d3JpdGVfZmQoKSk7CiAgICAgcmV0dXJuIEVYRUNVVEVfVEVTVDsKICAgfQpAQCAtMTM0OSw5ICsx
NDI4LDkgQEAgRGVhdGhUZXN0OjpUZXN0Um9sZSBFeGVjRGVhdGhUZXN0OjpBc3N1bWVSb2xlKCkg
ewogICAvLyBpdCBiZSBjbG9zZWQgd2hlbiB0aGUgY2hpbGQgcHJvY2VzcyBkb2VzIGFuIGV4ZWM6
CiAgIEdURVNUX0RFQVRIX1RFU1RfQ0hFQ0tfKGZjbnRsKHBpcGVfZmRbMV0sIEZfU0VURkQsIDAp
ICE9IC0xKTsKIAotICBjb25zdCBzdGQ6OnN0cmluZyBmaWx0ZXJfZmxhZyA9Ci0gICAgICBzdGQ6
OnN0cmluZygiLS0iKSArIEdURVNUX0ZMQUdfUFJFRklYXyArIGtGaWx0ZXJGbGFnICsgIj0iCi0g
ICAgICArIGluZm8tPnRlc3RfY2FzZV9uYW1lKCkgKyAiLiIgKyBpbmZvLT5uYW1lKCk7CisgIGNv
bnN0IHN0ZDo6c3RyaW5nIGZpbHRlcl9mbGFnID0gc3RkOjpzdHJpbmcoIi0tIikgKyBHVEVTVF9G
TEFHX1BSRUZJWF8gKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtGaWx0ZXJG
bGFnICsgIj0iICsgaW5mby0+dGVzdF9zdWl0ZV9uYW1lKCkgKworICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICIuIiArIGluZm8tPm5hbWUoKTsKICAgY29uc3Qgc3RkOjpzdHJpbmcg
aW50ZXJuYWxfZmxhZyA9CiAgICAgICBzdGQ6OnN0cmluZygiLS0iKSArIEdURVNUX0ZMQUdfUFJF
RklYXyArIGtJbnRlcm5hbFJ1bkRlYXRoVGVzdEZsYWcgKyAiPSIKICAgICAgICsgZmlsZV8gKyAi
fCIgKyBTdHJlYW1hYmxlVG9TdHJpbmcobGluZV8pICsgInwiCkBAIC0xMzg0LDcgKzE0NjMsOCBA
QCBEZWF0aFRlc3Q6OlRlc3RSb2xlIEV4ZWNEZWF0aFRlc3Q6OkFzc3VtZVJvbGUoKSB7CiAvLyBi
eSB0aGUgInRlc3QiIGFyZ3VtZW50IHRvIGl0cyBhZGRyZXNzLiAgSWYgdGhlIHRlc3Qgc2hvdWxk
IGJlCiAvLyBza2lwcGVkLCBzZXRzIHRoYXQgcG9pbnRlciB0byBOVUxMLiAgUmV0dXJucyB0cnVl
LCB1bmxlc3MgdGhlCiAvLyBmbGFnIGlzIHNldCB0byBhbiBpbnZhbGlkIHZhbHVlLgotYm9vbCBE
ZWZhdWx0RGVhdGhUZXN0RmFjdG9yeTo6Q3JlYXRlKGNvbnN0IGNoYXIqIHN0YXRlbWVudCwgY29u
c3QgUkUqIHJlZ2V4LAorYm9vbCBEZWZhdWx0RGVhdGhUZXN0RmFjdG9yeTo6Q3JlYXRlKGNvbnN0
IGNoYXIqIHN0YXRlbWVudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBN
YXRjaGVyPGNvbnN0IHN0ZDo6c3RyaW5nJj4gbWF0Y2hlciwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBjaGFyKiBmaWxlLCBpbnQgbGluZSwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBEZWF0aFRlc3QqKiB0ZXN0KSB7CiAgIFVuaXRUZXN0
SW1wbCogY29uc3QgaW1wbCA9IEdldFVuaXRUZXN0SW1wbCgpOwpAQCAtMTM5Myw3ICsxNDczLDcg
QEAgYm9vbCBEZWZhdWx0RGVhdGhUZXN0RmFjdG9yeTo6Q3JlYXRlKGNvbnN0IGNoYXIqIHN0YXRl
bWVudCwgY29uc3QgUkUqIHJlZ2V4LAogICBjb25zdCBpbnQgZGVhdGhfdGVzdF9pbmRleCA9IGlt
cGwtPmN1cnJlbnRfdGVzdF9pbmZvKCkKICAgICAgIC0+aW5jcmVtZW50X2RlYXRoX3Rlc3RfY291
bnQoKTsKIAotICBpZiAoZmxhZyAhPSBOVUxMKSB7CisgIGlmIChmbGFnICE9IG51bGxwdHIpIHsK
ICAgICBpZiAoZGVhdGhfdGVzdF9pbmRleCA+IGZsYWctPmluZGV4KCkpIHsKICAgICAgIERlYXRo
VGVzdDo6c2V0X2xhc3RfZGVhdGhfdGVzdF9tZXNzYWdlKAogICAgICAgICAgICJEZWF0aCB0ZXN0
IGNvdW50ICgiICsgU3RyZWFtYWJsZVRvU3RyaW5nKGRlYXRoX3Rlc3RfaW5kZXgpCkBAIC0xNDA0
LDcgKzE0ODQsNyBAQCBib29sIERlZmF1bHREZWF0aFRlc3RGYWN0b3J5OjpDcmVhdGUoY29uc3Qg
Y2hhciogc3RhdGVtZW50LCBjb25zdCBSRSogcmVnZXgsCiAKICAgICBpZiAoIShmbGFnLT5maWxl
KCkgPT0gZmlsZSAmJiBmbGFnLT5saW5lKCkgPT0gbGluZSAmJgogICAgICAgICAgIGZsYWctPmlu
ZGV4KCkgPT0gZGVhdGhfdGVzdF9pbmRleCkpIHsKLSAgICAgICp0ZXN0ID0gTlVMTDsKKyAgICAg
ICp0ZXN0ID0gbnVsbHB0cjsKICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KICAgfQpAQCAtMTQx
MywyMiArMTQ5MywyMiBAQCBib29sIERlZmF1bHREZWF0aFRlc3RGYWN0b3J5OjpDcmVhdGUoY29u
c3QgY2hhciogc3RhdGVtZW50LCBjb25zdCBSRSogcmVnZXgsCiAKICAgaWYgKEdURVNUX0ZMQUco
ZGVhdGhfdGVzdF9zdHlsZSkgPT0gInRocmVhZHNhZmUiIHx8CiAgICAgICBHVEVTVF9GTEFHKGRl
YXRoX3Rlc3Rfc3R5bGUpID09ICJmYXN0IikgewotICAgICp0ZXN0ID0gbmV3IFdpbmRvd3NEZWF0
aFRlc3Qoc3RhdGVtZW50LCByZWdleCwgZmlsZSwgbGluZSk7CisgICAgKnRlc3QgPSBuZXcgV2lu
ZG93c0RlYXRoVGVzdChzdGF0ZW1lbnQsIHN0ZDo6bW92ZShtYXRjaGVyKSwgZmlsZSwgbGluZSk7
CiAgIH0KIAogIyBlbGlmIEdURVNUX09TX0ZVQ0hTSUEKIAogICBpZiAoR1RFU1RfRkxBRyhkZWF0
aF90ZXN0X3N0eWxlKSA9PSAidGhyZWFkc2FmZSIgfHwKICAgICAgIEdURVNUX0ZMQUcoZGVhdGhf
dGVzdF9zdHlsZSkgPT0gImZhc3QiKSB7Ci0gICAgKnRlc3QgPSBuZXcgRnVjaHNpYURlYXRoVGVz
dChzdGF0ZW1lbnQsIHJlZ2V4LCBmaWxlLCBsaW5lKTsKKyAgICAqdGVzdCA9IG5ldyBGdWNoc2lh
RGVhdGhUZXN0KHN0YXRlbWVudCwgc3RkOjptb3ZlKG1hdGNoZXIpLCBmaWxlLCBsaW5lKTsKICAg
fQogCiAjIGVsc2UKIAogICBpZiAoR1RFU1RfRkxBRyhkZWF0aF90ZXN0X3N0eWxlKSA9PSAidGhy
ZWFkc2FmZSIpIHsKLSAgICAqdGVzdCA9IG5ldyBFeGVjRGVhdGhUZXN0KHN0YXRlbWVudCwgcmVn
ZXgsIGZpbGUsIGxpbmUpOworICAgICp0ZXN0ID0gbmV3IEV4ZWNEZWF0aFRlc3Qoc3RhdGVtZW50
LCBzdGQ6Om1vdmUobWF0Y2hlciksIGZpbGUsIGxpbmUpOwogICB9IGVsc2UgaWYgKEdURVNUX0ZM
QUcoZGVhdGhfdGVzdF9zdHlsZSkgPT0gImZhc3QiKSB7Ci0gICAgKnRlc3QgPSBuZXcgTm9FeGVj
RGVhdGhUZXN0KHN0YXRlbWVudCwgcmVnZXgpOworICAgICp0ZXN0ID0gbmV3IE5vRXhlY0RlYXRo
VGVzdChzdGF0ZW1lbnQsIHN0ZDo6bW92ZShtYXRjaGVyKSk7CiAgIH0KIAogIyBlbmRpZiAgLy8g
R1RFU1RfT1NfV0lORE9XUwpAQCAtMTQ1OCw4ICsxNTM4LDYgQEAgc3RhdGljIGludCBHZXRTdGF0
dXNGaWxlRGVzY3JpcHRvcih1bnNpZ25lZCBpbnQgcGFyZW50X3Byb2Nlc3NfaWQsCiAgICAgICAg
ICAgICAgICAgICAgU3RyZWFtYWJsZVRvU3RyaW5nKHBhcmVudF9wcm9jZXNzX2lkKSk7CiAgIH0K
IAotICAvLyBGSVhNRTogUmVwbGFjZSB0aGUgZm9sbG93aW5nIGNoZWNrIHdpdGggYQotICAvLyBj
b21waWxlLXRpbWUgYXNzZXJ0aW9uIHdoZW4gYXZhaWxhYmxlLgogICBHVEVTVF9DSEVDS18oc2l6
ZW9mKEhBTkRMRSkgPD0gc2l6ZW9mKHNpemVfdCkpOwogCiAgIGNvbnN0IEhBTkRMRSB3cml0ZV9o
YW5kbGUgPQpAQCAtMTUxNSw3ICsxNTkzLDcgQEAgc3RhdGljIGludCBHZXRTdGF0dXNGaWxlRGVz
Y3JpcHRvcih1bnNpZ25lZCBpbnQgcGFyZW50X3Byb2Nlc3NfaWQsCiAvLyBpbml0aWFsaXplZCBm
cm9tIHRoZSBHVEVTVF9GTEFHKGludGVybmFsX3J1bl9kZWF0aF90ZXN0KSBmbGFnIGlmCiAvLyB0
aGUgZmxhZyBpcyBzcGVjaWZpZWQ7IG90aGVyd2lzZSByZXR1cm5zIE5VTEwuCiBJbnRlcm5hbFJ1
bkRlYXRoVGVzdEZsYWcqIFBhcnNlSW50ZXJuYWxSdW5EZWF0aFRlc3RGbGFnKCkgewotICBpZiAo
R1RFU1RfRkxBRyhpbnRlcm5hbF9ydW5fZGVhdGhfdGVzdCkgPT0gIiIpIHJldHVybiBOVUxMOwor
ICBpZiAoR1RFU1RfRkxBRyhpbnRlcm5hbF9ydW5fZGVhdGhfdGVzdCkgPT0gIiIpIHJldHVybiBu
dWxscHRyOwogCiAgIC8vIEdURVNUX0hBU19ERUFUSF9URVNUIGltcGxpZXMgdGhhdCB3ZSBoYXZl
IDo6c3RkOjpzdHJpbmcsIHNvIHdlCiAgIC8vIGNhbiB1c2UgaXQgaGVyZS4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0LWZpbGVwYXRo
LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3QtZmls
ZXBhdGguY2MKaW5kZXggYTdlNjVjMDgyYTc1ZmM2ZmIwMzhhMDIzZDViMWQzZTA5ZTQ3OWYxMS4u
OWFhZDEyZmJkMTExNzdlOGJhM2Q1N2ZmMjhkMTVhYjkxNjIyYzE0MSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3QtZmlsZXBhdGguY2MK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3QtZmls
ZXBhdGguY2MKQEAgLTM4LDkgKzM4LDYgQEAKICNlbGlmIEdURVNUX09TX1dJTkRPV1MKICMgaW5j
bHVkZSA8ZGlyZWN0Lmg+CiAjIGluY2x1ZGUgPGlvLmg+Ci0jZWxpZiBHVEVTVF9PU19TWU1CSUFO
Ci0vLyBTeW1iaWFuIE9wZW5DIGhhcyBQQVRIX01BWCBpbiBzeXMvc3lzbGltaXRzLmgKLSMgaW5j
bHVkZSA8c3lzL3N5c2xpbWl0cy5oPgogI2Vsc2UKICMgaW5jbHVkZSA8bGltaXRzLmg+CiAjIGlu
Y2x1ZGUgPGNsaW1pdHM+ICAvLyBTb21lIExpbnV4IGRpc3RyaWJ1dGlvbnMgZGVmaW5lIFBBVEhf
TUFYIGhlcmUuCkBAIC05NSwxMyArOTIsMTQgQEAgc3RhdGljIGJvb2wgSXNQYXRoU2VwYXJhdG9y
KGNoYXIgYykgewogCiAvLyBSZXR1cm5zIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LCBv
ciAiIiBpZiB1bnN1Y2Nlc3NmdWwuCiBGaWxlUGF0aCBGaWxlUGF0aDo6R2V0Q3VycmVudERpcigp
IHsKLSNpZiBHVEVTVF9PU19XSU5ET1dTX01PQklMRSB8fCBHVEVTVF9PU19XSU5ET1dTX1BIT05F
IHx8IEdURVNUX09TX1dJTkRPV1NfUlQKLSAgLy8gV2luZG93cyBDRSBkb2Vzbid0IGhhdmUgYSBj
dXJyZW50IGRpcmVjdG9yeSwgc28gd2UganVzdCByZXR1cm4KKyNpZiBHVEVTVF9PU19XSU5ET1dT
X01PQklMRSB8fCBHVEVTVF9PU19XSU5ET1dTX1BIT05FIHx8IFwKKyAgICBHVEVTVF9PU19XSU5E
T1dTX1JUIHx8IEdURVNUX09TX0VTUDgyNjYgfHwgR1RFU1RfT1NfRVNQMzIKKyAgLy8gVGhlc2Ug
cGxhdGZvcm1zIGRvIG5vdCBoYXZlIGEgY3VycmVudCBkaXJlY3RvcnksIHNvIHdlIGp1c3QgcmV0
dXJuCiAgIC8vIHNvbWV0aGluZyByZWFzb25hYmxlLgogICByZXR1cm4gRmlsZVBhdGgoa0N1cnJl
bnREaXJlY3RvcnlTdHJpbmcpOwogI2VsaWYgR1RFU1RfT1NfV0lORE9XUwogICBjaGFyIGN3ZFtH
VEVTVF9QQVRIX01BWF8gKyAxXSA9IHsgJ1wwJyB9OwotICByZXR1cm4gRmlsZVBhdGgoX2dldGN3
ZChjd2QsIHNpemVvZihjd2QpKSA9PSBOVUxMID8gIiIgOiBjd2QpOworICByZXR1cm4gRmlsZVBh
dGgoX2dldGN3ZChjd2QsIHNpemVvZihjd2QpKSA9PSBudWxscHRyID8gIiIgOiBjd2QpOwogI2Vs
c2UKICAgY2hhciBjd2RbR1RFU1RfUEFUSF9NQVhfICsgMV0gPSB7ICdcMCcgfTsKICAgY2hhciog
cmVzdWx0ID0gZ2V0Y3dkKGN3ZCwgc2l6ZW9mKGN3ZCkpOwpAQCAtMTA5LDkgKzEwNyw5IEBAIEZp
bGVQYXRoIEZpbGVQYXRoOjpHZXRDdXJyZW50RGlyKCkgewogICAvLyBnZXRjd2Qgd2lsbCBsaWtl
bHkgZmFpbCBpbiBOYUNsIGR1ZSB0byB0aGUgc2FuZGJveCwgc28gcmV0dXJuIHNvbWV0aGluZwog
ICAvLyByZWFzb25hYmxlLiBUaGUgdXNlciBtYXkgaGF2ZSBwcm92aWRlZCBhIHNoaW0gaW1wbGVt
ZW50YXRpb24gZm9yIGdldGN3ZCwKICAgLy8gaG93ZXZlciwgc28gZmFsbGJhY2sgb25seSB3aGVu
IGZhaWx1cmUgaXMgZGV0ZWN0ZWQuCi0gIHJldHVybiBGaWxlUGF0aChyZXN1bHQgPT0gTlVMTCA/
IGtDdXJyZW50RGlyZWN0b3J5U3RyaW5nIDogY3dkKTsKKyAgcmV0dXJuIEZpbGVQYXRoKHJlc3Vs
dCA9PSBudWxscHRyID8ga0N1cnJlbnREaXJlY3RvcnlTdHJpbmcgOiBjd2QpOwogIyBlbmRpZiAg
Ly8gR1RFU1RfT1NfTkFDTAotICByZXR1cm4gRmlsZVBhdGgocmVzdWx0ID09IE5VTEwgPyAiIiA6
IGN3ZCk7CisgIHJldHVybiBGaWxlUGF0aChyZXN1bHQgPT0gbnVsbHB0ciA/ICIiIDogY3dkKTsK
ICNlbmRpZiAgLy8gR1RFU1RfT1NfV0lORE9XU19NT0JJTEUKIH0KIApAQCAtMTM2LDggKzEzNCw4
IEBAIGNvbnN0IGNoYXIqIEZpbGVQYXRoOjpGaW5kTGFzdFBhdGhTZXBhcmF0b3IoKSBjb25zdCB7
CiAjaWYgR1RFU1RfSEFTX0FMVF9QQVRIX1NFUF8KICAgY29uc3QgY2hhciogY29uc3QgbGFzdF9h
bHRfc2VwID0gc3RycmNocihjX3N0cigpLCBrQWx0ZXJuYXRlUGF0aFNlcGFyYXRvcik7CiAgIC8v
IENvbXBhcmluZyB0d28gcG9pbnRlcnMgb2Ygd2hpY2ggb25seSBvbmUgaXMgTlVMTCBpcyB1bmRl
ZmluZWQuCi0gIGlmIChsYXN0X2FsdF9zZXAgIT0gTlVMTCAmJgotICAgICAgKGxhc3Rfc2VwID09
IE5VTEwgfHwgbGFzdF9hbHRfc2VwID4gbGFzdF9zZXApKSB7CisgIGlmIChsYXN0X2FsdF9zZXAg
IT0gbnVsbHB0ciAmJgorICAgICAgKGxhc3Rfc2VwID09IG51bGxwdHIgfHwgbGFzdF9hbHRfc2Vw
ID4gbGFzdF9zZXApKSB7CiAgICAgcmV0dXJuIGxhc3RfYWx0X3NlcDsKICAgfQogI2VuZGlmCkBA
IC0xNjUsNyArMTYzLDcgQEAgRmlsZVBhdGggRmlsZVBhdGg6OlJlbW92ZUZpbGVOYW1lKCkgY29u
c3QgewogICBjb25zdCBjaGFyKiBjb25zdCBsYXN0X3NlcCA9IEZpbmRMYXN0UGF0aFNlcGFyYXRv
cigpOwogICBzdGQ6OnN0cmluZyBkaXI7CiAgIGlmIChsYXN0X3NlcCkgewotICAgIGRpciA9IHN0
ZDo6c3RyaW5nKGNfc3RyKCksIGxhc3Rfc2VwICsgMSAtIGNfc3RyKCkpOworICAgIGRpciA9IHN0
ZDo6c3RyaW5nKGNfc3RyKCksIHN0YXRpY19jYXN0PHNpemVfdD4obGFzdF9zZXAgKyAxIC0gY19z
dHIoKSkpOwogICB9IGVsc2UgewogICAgIGRpciA9IGtDdXJyZW50RGlyZWN0b3J5U3RyaW5nOwog
ICB9CkBAIC0yNTAsOSArMjQ4LDYgQEAgYm9vbCBGaWxlUGF0aDo6RGlyZWN0b3J5RXhpc3RzKCkg
Y29uc3QgewogLy8gcm9vdCBkaXJlY3RvcnkgcGVyIGRpc2sgZHJpdmUuKQogYm9vbCBGaWxlUGF0
aDo6SXNSb290RGlyZWN0b3J5KCkgY29uc3QgewogI2lmIEdURVNUX09TX1dJTkRPV1MKLSAgLy8g
RklYTUU6IG9uIFdpbmRvd3MgYSBuZXR3b3JrIHNoYXJlIGxpa2UKLSAgLy8gXFxzZXJ2ZXJcc2hh
cmUgY2FuIGJlIGEgcm9vdCBkaXJlY3RvcnksIGFsdGhvdWdoIGl0IGNhbm5vdCBiZSB0aGUKLSAg
Ly8gY3VycmVudCBkaXJlY3RvcnkuICBIYW5kbGUgdGhpcyBwcm9wZXJseS4KICAgcmV0dXJuIHBh
dGhuYW1lXy5sZW5ndGgoKSA9PSAzICYmIElzQWJzb2x1dGVQYXRoKCk7CiAjZWxzZQogICByZXR1
cm4gcGF0aG5hbWVfLmxlbmd0aCgpID09IDEgJiYgSXNQYXRoU2VwYXJhdG9yKHBhdGhuYW1lXy5j
X3N0cigpWzBdKTsKQEAgLTMyNCwxMCArMzE5LDEzIEBAIGJvb2wgRmlsZVBhdGg6OkNyZWF0ZUZv
bGRlcigpIGNvbnN0IHsKICNpZiBHVEVTVF9PU19XSU5ET1dTX01PQklMRQogICBGaWxlUGF0aCBy
ZW1vdmVkX3NlcCh0aGlzLT5SZW1vdmVUcmFpbGluZ1BhdGhTZXBhcmF0b3IoKSk7CiAgIExQQ1dT
VFIgdW5pY29kZSA9IFN0cmluZzo6QW5zaVRvVXRmMTYocmVtb3ZlZF9zZXAuY19zdHIoKSk7Ci0g
IGludCByZXN1bHQgPSBDcmVhdGVEaXJlY3RvcnkodW5pY29kZSwgTlVMTCkgPyAwIDogLTE7Cisg
IGludCByZXN1bHQgPSBDcmVhdGVEaXJlY3RvcnkodW5pY29kZSwgbnVsbHB0cikgPyAwIDogLTE7
CiAgIGRlbGV0ZSBbXSB1bmljb2RlOwogI2VsaWYgR1RFU1RfT1NfV0lORE9XUwogICBpbnQgcmVz
dWx0ID0gX21rZGlyKHBhdGhuYW1lXy5jX3N0cigpKTsKKyNlbGlmIEdURVNUX09TX0VTUDgyNjYK
KyAgLy8gZG8gbm90aGluZworICBpbnQgcmVzdWx0ID0gMDsKICNlbHNlCiAgIGludCByZXN1bHQg
PSBta2RpcihwYXRobmFtZV8uY19zdHIoKSwgMDc3Nyk7CiAjZW5kaWYgIC8vIEdURVNUX09TX1dJ
TkRPV1NfTU9CSUxFCkBAIC0zNTAsOSArMzQ4LDggQEAgRmlsZVBhdGggRmlsZVBhdGg6OlJlbW92
ZVRyYWlsaW5nUGF0aFNlcGFyYXRvcigpIGNvbnN0IHsKIC8vIFJlbW92ZXMgYW55IHJlZHVuZGFu
dCBzZXBhcmF0b3JzIHRoYXQgbWlnaHQgYmUgaW4gdGhlIHBhdGhuYW1lLgogLy8gRm9yIGV4YW1w
bGUsICJiYXIvLy9mb28iIGJlY29tZXMgImJhci9mb28iLiBEb2VzIG5vdCBlbGltaW5hdGUgb3Ro
ZXIKIC8vIHJlZHVuZGFuY2llcyB0aGF0IG1pZ2h0IGJlIGluIGEgcGF0aG5hbWUgaW52b2x2aW5n
ICIuIiBvciAiLi4iLgotLy8gRklYTUU6IGhhbmRsZSBXaW5kb3dzIG5ldHdvcmsgc2hhcmVzIChl
LmcuIFxcc2VydmVyXHNoYXJlKS4KIHZvaWQgRmlsZVBhdGg6Ok5vcm1hbGl6ZSgpIHsKLSAgaWYg
KHBhdGhuYW1lXy5jX3N0cigpID09IE5VTEwpIHsKKyAgaWYgKHBhdGhuYW1lXy5jX3N0cigpID09
IG51bGxwdHIpIHsKICAgICBwYXRobmFtZV8gPSAiIjsKICAgICByZXR1cm47CiAgIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0LWlu
dGVybmFsLWlubC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9zcmMv
Z3Rlc3QtaW50ZXJuYWwtaW5sLmgKaW5kZXggNDc5MDA0MTQ5YjQ4YzI4NTY0ZTIwNWUwMjEwYzZj
NDMxMDQxOGI1Yi4uZTQyZmY0NzUzOTlkZGE5MDVjMTRmOWZhNmE5ZTZkYzNjN2FiMGIyNyAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3Qt
aW50ZXJuYWwtaW5sLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3Ny
Yy9zcmMvZ3Rlc3QtaW50ZXJuYWwtaW5sLmgKQEAgLTQyLDYgKzQyLDggQEAKICNpbmNsdWRlIDxz
dHJpbmcuaD4gIC8vIEZvciBtZW1tb3ZlLgogCiAjaW5jbHVkZSA8YWxnb3JpdGhtPgorI2luY2x1
ZGUgPGNzdGRpbnQ+CisjaW5jbHVkZSA8bWVtb3J5PgogI2luY2x1ZGUgPHN0cmluZz4KICNpbmNs
dWRlIDx2ZWN0b3I+CiAKQEAgLTk4LDE0ICsxMDAsMTQgQEAgY29uc3QgY2hhciBrRmxhZ2ZpbGVG
bGFnW10gPSAiZmxhZ2ZpbGUiOwogLy8gQSB2YWxpZCByYW5kb20gc2VlZCBtdXN0IGJlIGluIFsx
LCBrTWF4UmFuZG9tU2VlZF0uCiBjb25zdCBpbnQga01heFJhbmRvbVNlZWQgPSA5OTk5OTsKIAot
Ly8gZ19oZWxwX2ZsYWcgaXMgdHJ1ZSBpZmYgdGhlIC0taGVscCBmbGFnIG9yIGFuIGVxdWl2YWxl
bnQgZm9ybSBpcwotLy8gc3BlY2lmaWVkIG9uIHRoZSBjb21tYW5kIGxpbmUuCisvLyBnX2hlbHBf
ZmxhZyBpcyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoZSAtLWhlbHAgZmxhZyBvciBhbiBlcXVpdmFs
ZW50IGZvcm0KKy8vIGlzIHNwZWNpZmllZCBvbiB0aGUgY29tbWFuZCBsaW5lLgogR1RFU1RfQVBJ
XyBleHRlcm4gYm9vbCBnX2hlbHBfZmxhZzsKIAogLy8gUmV0dXJucyB0aGUgY3VycmVudCB0aW1l
IGluIG1pbGxpc2Vjb25kcy4KIEdURVNUX0FQSV8gVGltZUluTWlsbGlzIEdldFRpbWVJbk1pbGxp
cygpOwogCi0vLyBSZXR1cm5zIHRydWUgaWZmIEdvb2dsZSBUZXN0IHNob3VsZCB1c2UgY29sb3Jz
IGluIHRoZSBvdXRwdXQuCisvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgR29vZ2xlIFRl
c3Qgc2hvdWxkIHVzZSBjb2xvcnMgaW4gdGhlIG91dHB1dC4KIEdURVNUX0FQSV8gYm9vbCBTaG91
bGRVc2VDb2xvcihib29sIHN0ZG91dF9pc190dHkpOwogCiAvLyBGb3JtYXRzIHRoZSBnaXZlbiB0
aW1lIGluIG1pbGxpc2Vjb25kcyBhcyBzZWNvbmRzLgpAQCAtMTIyLDExICsxMjQsMTEgQEAgR1RF
U1RfQVBJXyBzdGQ6OnN0cmluZyBGb3JtYXRFcG9jaFRpbWVJbk1pbGxpc0FzSXNvODYwMShUaW1l
SW5NaWxsaXMgbXMpOwogLy8gT24gc3VjY2Vzcywgc3RvcmVzIHRoZSB2YWx1ZSBvZiB0aGUgZmxh
ZyBpbiAqdmFsdWUsIGFuZCByZXR1cm5zCiAvLyB0cnVlLiAgT24gZmFpbHVyZSwgcmV0dXJucyBm
YWxzZSB3aXRob3V0IGNoYW5naW5nICp2YWx1ZS4KIEdURVNUX0FQSV8gYm9vbCBQYXJzZUludDMy
RmxhZygKLSAgICBjb25zdCBjaGFyKiBzdHIsIGNvbnN0IGNoYXIqIGZsYWcsIEludDMyKiB2YWx1
ZSk7CisgICAgY29uc3QgY2hhciogc3RyLCBjb25zdCBjaGFyKiBmbGFnLCBpbnQzMl90KiB2YWx1
ZSk7CiAKIC8vIFJldHVybnMgYSByYW5kb20gc2VlZCBpbiByYW5nZSBbMSwga01heFJhbmRvbVNl
ZWRdIGJhc2VkIG9uIHRoZQogLy8gZ2l2ZW4gLS1ndGVzdF9yYW5kb21fc2VlZCBmbGFnIHZhbHVl
LgotaW5saW5lIGludCBHZXRSYW5kb21TZWVkRnJvbUZsYWcoSW50MzIgcmFuZG9tX3NlZWRfZmxh
ZykgeworaW5saW5lIGludCBHZXRSYW5kb21TZWVkRnJvbUZsYWcoaW50MzJfdCByYW5kb21fc2Vl
ZF9mbGFnKSB7CiAgIGNvbnN0IHVuc2lnbmVkIGludCByYXdfc2VlZCA9IChyYW5kb21fc2VlZF9m
bGFnID09IDApID8KICAgICAgIHN0YXRpY19jYXN0PHVuc2lnbmVkIGludD4oR2V0VGltZUluTWls
bGlzKCkpIDoKICAgICAgIHN0YXRpY19jYXN0PHVuc2lnbmVkIGludD4ocmFuZG9tX3NlZWRfZmxh
Zyk7CkBAIC0yMTIsMTAgKzIxNCwxMCBAQCBjbGFzcyBHVGVzdEZsYWdTYXZlciB7CiAgIHN0ZDo6
c3RyaW5nIG91dHB1dF87CiAgIGJvb2wgcHJpbnRfdGltZV87CiAgIGJvb2wgcHJpbnRfdXRmOF87
Ci0gIGludGVybmFsOjpJbnQzMiByYW5kb21fc2VlZF87Ci0gIGludGVybmFsOjpJbnQzMiByZXBl
YXRfOworICBpbnQzMl90IHJhbmRvbV9zZWVkXzsKKyAgaW50MzJfdCByZXBlYXRfOwogICBib29s
IHNodWZmbGVfOwotICBpbnRlcm5hbDo6SW50MzIgc3RhY2tfdHJhY2VfZGVwdGhfOworICBpbnQz
Ml90IHN0YWNrX3RyYWNlX2RlcHRoXzsKICAgc3RkOjpzdHJpbmcgc3RyZWFtX3Jlc3VsdF90b187
CiAgIGJvb2wgdGhyb3dfb25fZmFpbHVyZV87CiB9IEdURVNUX0FUVFJJQlVURV9VTlVTRURfOwpA
QCAtMjI2LDExICsyMjgsMTEgQEAgY2xhc3MgR1Rlc3RGbGFnU2F2ZXIgewogLy8gSWYgdGhlIGNv
ZGVfcG9pbnQgaXMgbm90IGEgdmFsaWQgVW5pY29kZSBjb2RlIHBvaW50CiAvLyAoaS5lLiBvdXRz
aWRlIG9mIFVuaWNvZGUgcmFuZ2UgVSswIHRvIFUrMTBGRkZGKSBpdCB3aWxsIGJlIGNvbnZlcnRl
ZAogLy8gdG8gIihJbnZhbGlkIFVuaWNvZGUgMHhYWFhYWFhYWCkiLgotR1RFU1RfQVBJXyBzdGQ6
OnN0cmluZyBDb2RlUG9pbnRUb1V0ZjgoVUludDMyIGNvZGVfcG9pbnQpOworR1RFU1RfQVBJXyBz
dGQ6OnN0cmluZyBDb2RlUG9pbnRUb1V0ZjgodWludDMyX3QgY29kZV9wb2ludCk7CiAKIC8vIENv
bnZlcnRzIGEgd2lkZSBzdHJpbmcgdG8gYSBuYXJyb3cgc3RyaW5nIGluIFVURi04IGVuY29kaW5n
LgogLy8gVGhlIHdpZGUgc3RyaW5nIGlzIGFzc3VtZWQgdG8gaGF2ZSB0aGUgZm9sbG93aW5nIGVu
Y29kaW5nOgotLy8gICBVVEYtMTYgaWYgc2l6ZW9mKHdjaGFyX3QpID09IDIgKG9uIFdpbmRvd3Ms
IEN5Z3dpbiwgU3ltYmlhbiBPUykKKy8vICAgVVRGLTE2IGlmIHNpemVvZih3Y2hhcl90KSA9PSAy
IChvbiBXaW5kb3dzLCBDeWd3aW4pCiAvLyAgIFVURi0zMiBpZiBzaXplb2Yod2NoYXJfdCkgPT0g
NCAob24gTGludXgpCiAvLyBQYXJhbWV0ZXIgc3RyIHBvaW50cyB0byBhIG51bGwtdGVybWluYXRl
ZCB3aWRlIHN0cmluZy4KIC8vIFBhcmFtZXRlciBudW1fY2hhcnMgbWF5IGFkZGl0aW9uYWxseSBs
aW1pdCB0aGUgbnVtYmVyCkBAIC0yNTksMTQgKzI2MSwxNCBAQCBHVEVTVF9BUElfIGJvb2wgU2hv
dWxkU2hhcmQoY29uc3QgY2hhciogdG90YWxfc2hhcmRzX3N0ciwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBjaGFyKiBzaGFyZF9pbmRleF9zdHIsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgYm9vbCBpbl9zdWJwcm9jZXNzX2Zvcl9kZWF0aF90ZXN0KTsKIAotLy8gUGFy
c2VzIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSB2YXIgYXMgYW4gSW50MzIuIElmIGl0IGlzIHVu
c2V0LAotLy8gcmV0dXJucyBkZWZhdWx0X3ZhbC4gSWYgaXQgaXMgbm90IGFuIEludDMyLCBwcmlu
dHMgYW4gZXJyb3IgYW5kCisvLyBQYXJzZXMgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlIHZhciBh
cyBhIDMyLWJpdCBpbnRlZ2VyLiBJZiBpdCBpcyB1bnNldCwKKy8vIHJldHVybnMgZGVmYXVsdF92
YWwuIElmIGl0IGlzIG5vdCBhIDMyLWJpdCBpbnRlZ2VyLCBwcmludHMgYW4gZXJyb3IgYW5kCiAv
LyBhbmQgYWJvcnRzLgotR1RFU1RfQVBJXyBJbnQzMiBJbnQzMkZyb21FbnZPckRpZShjb25zdCBj
aGFyKiBlbnZfdmFyLCBJbnQzMiBkZWZhdWx0X3ZhbCk7CitHVEVTVF9BUElfIGludDMyX3QgSW50
MzJGcm9tRW52T3JEaWUoY29uc3QgY2hhciogZW52X3ZhciwgaW50MzJfdCBkZWZhdWx0X3ZhbCk7
CiAKIC8vIEdpdmVuIHRoZSB0b3RhbCBudW1iZXIgb2Ygc2hhcmRzLCB0aGUgc2hhcmQgaW5kZXgs
IGFuZCB0aGUgdGVzdCBpZCwKLS8vIHJldHVybnMgdHJ1ZSBpZmYgdGhlIHRlc3Qgc2hvdWxkIGJl
IHJ1biBvbiB0aGlzIHNoYXJkLiBUaGUgdGVzdCBpZCBpcwotLy8gc29tZSBhcmJpdHJhcnkgYnV0
IHVuaXF1ZSBub24tbmVnYXRpdmUgaW50ZWdlciBhc3NpZ25lZCB0byBlYWNoIHRlc3QKKy8vIHJl
dHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgdGVzdCBzaG91bGQgYmUgcnVuIG9uIHRoaXMg
c2hhcmQuIFRoZSB0ZXN0IGlkCisvLyBpcyBzb21lIGFyYml0cmFyeSBidXQgdW5pcXVlIG5vbi1u
ZWdhdGl2ZSBpbnRlZ2VyIGFzc2lnbmVkIHRvIGVhY2ggdGVzdAogLy8gbWV0aG9kLiBBc3N1bWVz
IHRoYXQgMCA8PSBzaGFyZF9pbmRleCA8IHRvdGFsX3NoYXJkcy4KIEdURVNUX0FQSV8gYm9vbCBT
aG91bGRSdW5UZXN0T25TaGFyZCgKICAgICBpbnQgdG90YWxfc2hhcmRzLCBpbnQgc2hhcmRfaW5k
ZXgsIGludCB0ZXN0X2lkKTsKQEAgLTI5Nyw3ICsyOTksOCBAQCB2b2lkIEZvckVhY2goY29uc3Qg
Q29udGFpbmVyJiBjLCBGdW5jdG9yIGZ1bmN0b3IpIHsKIC8vIGluIHJhbmdlIFswLCB2LnNpemUo
KSkuCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgRT4KIGlubGluZSBFIEdldEVsZW1lbnRPcihjb25zdCBz
dGQ6OnZlY3RvcjxFPiYgdiwgaW50IGksIEUgZGVmYXVsdF92YWx1ZSkgewotICByZXR1cm4gKGkg
PCAwIHx8IGkgPj0gc3RhdGljX2Nhc3Q8aW50Pih2LnNpemUoKSkpID8gZGVmYXVsdF92YWx1ZSA6
IHZbaV07CisgIHJldHVybiAoaSA8IDAgfHwgaSA+PSBzdGF0aWNfY2FzdDxpbnQ+KHYuc2l6ZSgp
KSkgPyBkZWZhdWx0X3ZhbHVlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgOiB2W3N0YXRpY19jYXN0PHNpemVfdD4oaSldOwogfQogCiAvLyBQZXJm
b3JtcyBhbiBpbi1wbGFjZSBzaHVmZmxlIG9mIGEgcmFuZ2Ugb2YgdGhlIHZlY3RvcidzIGVsZW1l
bnRzLgpAQCAtMzE5LDggKzMyMiwxMSBAQCB2b2lkIFNodWZmbGVSYW5nZShpbnRlcm5hbDo6UmFu
ZG9tKiByYW5kb20sIGludCBiZWdpbiwgaW50IGVuZCwKICAgLy8gaHR0cDovL2VuLndpa2lwZWRp
YS5vcmcvd2lraS9GaXNoZXItWWF0ZXNfc2h1ZmZsZQogICBmb3IgKGludCByYW5nZV93aWR0aCA9
IGVuZCAtIGJlZ2luOyByYW5nZV93aWR0aCA+PSAyOyByYW5nZV93aWR0aC0tKSB7CiAgICAgY29u
c3QgaW50IGxhc3RfaW5fcmFuZ2UgPSBiZWdpbiArIHJhbmdlX3dpZHRoIC0gMTsKLSAgICBjb25z
dCBpbnQgc2VsZWN0ZWQgPSBiZWdpbiArIHJhbmRvbS0+R2VuZXJhdGUocmFuZ2Vfd2lkdGgpOwot
ICAgIHN0ZDo6c3dhcCgoKnYpW3NlbGVjdGVkXSwgKCp2KVtsYXN0X2luX3JhbmdlXSk7CisgICAg
Y29uc3QgaW50IHNlbGVjdGVkID0KKyAgICAgICAgYmVnaW4gKworICAgICAgICBzdGF0aWNfY2Fz
dDxpbnQ+KHJhbmRvbS0+R2VuZXJhdGUoc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHJhbmdlX3dpZHRo
KSkpOworICAgIHN0ZDo6c3dhcCgoKnYpW3N0YXRpY19jYXN0PHNpemVfdD4oc2VsZWN0ZWQpXSwK
KyAgICAgICAgICAgICAgKCp2KVtzdGF0aWNfY2FzdDxzaXplX3Q+KGxhc3RfaW5fcmFuZ2UpXSk7
CiAgIH0KIH0KIApAQCAtMzQ3LDcgKzM1Myw3IEBAIGNsYXNzIFRlc3RQcm9wZXJ0eUtleUlzIHsK
ICAgLy8gVGVzdFByb3BlcnR5S2V5SXMgaGFzIE5PIGRlZmF1bHQgY29uc3RydWN0b3IuCiAgIGV4
cGxpY2l0IFRlc3RQcm9wZXJ0eUtleUlzKGNvbnN0IHN0ZDo6c3RyaW5nJiBrZXkpIDoga2V5Xyhr
ZXkpIHt9CiAKLSAgLy8gUmV0dXJucyB0cnVlIGlmZiB0aGUgdGVzdCBuYW1lIG9mIHRlc3QgcHJv
cGVydHkgbWF0Y2hlcyBvbiBrZXlfLgorICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYg
dGhlIHRlc3QgbmFtZSBvZiB0ZXN0IHByb3BlcnR5IG1hdGNoZXMgb24ga2V5Xy4KICAgYm9vbCBv
cGVyYXRvcigpKGNvbnN0IFRlc3RQcm9wZXJ0eSYgdGVzdF9wcm9wZXJ0eSkgY29uc3QgewogICAg
IHJldHVybiB0ZXN0X3Byb3BlcnR5LmtleSgpID09IGtleV87CiAgIH0KQEAgLTM4MCwxNyArMzg2
LDE3IEBAIGNsYXNzIEdURVNUX0FQSV8gVW5pdFRlc3RPcHRpb25zIHsKIAogICAvLyBGdW5jdGlv
bnMgZm9yIHByb2Nlc3NpbmcgdGhlIGd0ZXN0X2ZpbHRlciBmbGFnLgogCi0gIC8vIFJldHVybnMg
dHJ1ZSBpZmYgdGhlIHdpbGRjYXJkIHBhdHRlcm4gbWF0Y2hlcyB0aGUgc3RyaW5nLiAgVGhlCi0g
IC8vIGZpcnN0ICc6JyBvciAnXDAnIGNoYXJhY3RlciBpbiBwYXR0ZXJuIG1hcmtzIHRoZSBlbmQg
b2YgaXQuCisgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgd2lsZGNhcmQgcGF0
dGVybiBtYXRjaGVzIHRoZSBzdHJpbmcuCisgIC8vIFRoZSBmaXJzdCAnOicgb3IgJ1wwJyBjaGFy
YWN0ZXIgaW4gcGF0dGVybiBtYXJrcyB0aGUgZW5kIG9mIGl0LgogICAvLwogICAvLyBUaGlzIHJl
Y3Vyc2l2ZSBhbGdvcml0aG0gaXNuJ3QgdmVyeSBlZmZpY2llbnQsIGJ1dCBpcyBjbGVhciBhbmQK
ICAgLy8gd29ya3Mgd2VsbCBlbm91Z2ggZm9yIG1hdGNoaW5nIHRlc3QgbmFtZXMsIHdoaWNoIGFy
ZSBzaG9ydC4KICAgc3RhdGljIGJvb2wgUGF0dGVybk1hdGNoZXNTdHJpbmcoY29uc3QgY2hhciAq
cGF0dGVybiwgY29uc3QgY2hhciAqc3RyKTsKIAotICAvLyBSZXR1cm5zIHRydWUgaWZmIHRoZSB1
c2VyLXNwZWNpZmllZCBmaWx0ZXIgbWF0Y2hlcyB0aGUgdGVzdCBjYXNlCi0gIC8vIG5hbWUgYW5k
IHRoZSB0ZXN0IG5hbWUuCi0gIHN0YXRpYyBib29sIEZpbHRlck1hdGNoZXNUZXN0KGNvbnN0IHN0
ZDo6c3RyaW5nICZ0ZXN0X2Nhc2VfbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3Qgc3RkOjpzdHJpbmcgJnRlc3RfbmFtZSk7CisgIC8vIFJldHVybnMgdHJ1ZSBpZiBh
bmQgb25seSBpZiB0aGUgdXNlci1zcGVjaWZpZWQgZmlsdGVyIG1hdGNoZXMgdGhlIHRlc3QKKyAg
Ly8gc3VpdGUgbmFtZSBhbmQgdGhlIHRlc3QgbmFtZS4KKyAgc3RhdGljIGJvb2wgRmlsdGVyTWF0
Y2hlc1Rlc3QoY29uc3Qgc3RkOjpzdHJpbmcmIHRlc3Rfc3VpdGVfbmFtZSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RkOjpzdHJpbmcmIHRlc3RfbmFtZSk7CiAKICNp
ZiBHVEVTVF9PU19XSU5ET1dTCiAgIC8vIEZ1bmN0aW9uIGZvciBzdXBwb3J0aW5nIHRoZSBndGVz
dF9jYXRjaF9leGNlcHRpb24gZmxhZy4KQEAgLTQ0Miw4ICs0NDgsOCBAQCBjbGFzcyBPc1N0YWNr
VHJhY2VHZXR0ZXIgOiBwdWJsaWMgT3NTdGFja1RyYWNlR2V0dGVySW50ZXJmYWNlIHsKICBwdWJs
aWM6CiAgIE9zU3RhY2tUcmFjZUdldHRlcigpIHt9CiAKLSAgdmlydHVhbCBzdGQ6OnN0cmluZyBD
dXJyZW50U3RhY2tUcmFjZShpbnQgbWF4X2RlcHRoLCBpbnQgc2tpcF9jb3VudCk7Ci0gIHZpcnR1
YWwgdm9pZCBVcG9uTGVhdmluZ0dUZXN0KCk7CisgIHN0ZDo6c3RyaW5nIEN1cnJlbnRTdGFja1Ry
YWNlKGludCBtYXhfZGVwdGgsIGludCBza2lwX2NvdW50KSBvdmVycmlkZTsKKyAgdm9pZCBVcG9u
TGVhdmluZ0dUZXN0KCkgb3ZlcnJpZGU7CiAKICBwcml2YXRlOgogI2lmIEdURVNUX0hBU19BQlNM
CkBAIC00NzQsNyArNDgwLDcgQEAgY2xhc3MgRGVmYXVsdEdsb2JhbFRlc3RQYXJ0UmVzdWx0UmVw
b3J0ZXIKICAgZXhwbGljaXQgRGVmYXVsdEdsb2JhbFRlc3RQYXJ0UmVzdWx0UmVwb3J0ZXIoVW5p
dFRlc3RJbXBsKiB1bml0X3Rlc3QpOwogICAvLyBJbXBsZW1lbnRzIHRoZSBUZXN0UGFydFJlc3Vs
dFJlcG9ydGVySW50ZXJmYWNlLiBSZXBvcnRzIHRoZSB0ZXN0IHBhcnQKICAgLy8gcmVzdWx0IGlu
IHRoZSBjdXJyZW50IHRlc3QuCi0gIHZpcnR1YWwgdm9pZCBSZXBvcnRUZXN0UGFydFJlc3VsdChj
b25zdCBUZXN0UGFydFJlc3VsdCYgcmVzdWx0KTsKKyAgdm9pZCBSZXBvcnRUZXN0UGFydFJlc3Vs
dChjb25zdCBUZXN0UGFydFJlc3VsdCYgcmVzdWx0KSBvdmVycmlkZTsKIAogIHByaXZhdGU6CiAg
IFVuaXRUZXN0SW1wbCogY29uc3QgdW5pdF90ZXN0XzsKQEAgLTQ5MCw3ICs0OTYsNyBAQCBjbGFz
cyBEZWZhdWx0UGVyVGhyZWFkVGVzdFBhcnRSZXN1bHRSZXBvcnRlcgogICBleHBsaWNpdCBEZWZh
dWx0UGVyVGhyZWFkVGVzdFBhcnRSZXN1bHRSZXBvcnRlcihVbml0VGVzdEltcGwqIHVuaXRfdGVz
dCk7CiAgIC8vIEltcGxlbWVudHMgdGhlIFRlc3RQYXJ0UmVzdWx0UmVwb3J0ZXJJbnRlcmZhY2Uu
IFRoZSBpbXBsZW1lbnRhdGlvbiBqdXN0CiAgIC8vIGRlbGVnYXRlcyB0byB0aGUgY3VycmVudCBn
bG9iYWwgdGVzdCBwYXJ0IHJlc3VsdCByZXBvcnRlciBvZiAqdW5pdF90ZXN0Xy4KLSAgdmlydHVh
bCB2b2lkIFJlcG9ydFRlc3RQYXJ0UmVzdWx0KGNvbnN0IFRlc3RQYXJ0UmVzdWx0JiByZXN1bHQp
OworICB2b2lkIFJlcG9ydFRlc3RQYXJ0UmVzdWx0KGNvbnN0IFRlc3RQYXJ0UmVzdWx0JiByZXN1
bHQpIG92ZXJyaWRlOwogCiAgcHJpdmF0ZToKICAgVW5pdFRlc3RJbXBsKiBjb25zdCB1bml0X3Rl
c3RfOwpAQCAtNTI4LDIyICs1MzQsMjUgQEAgY2xhc3MgR1RFU1RfQVBJXyBVbml0VGVzdEltcGwg
ewogICB2b2lkIFNldFRlc3RQYXJ0UmVzdWx0UmVwb3J0ZXJGb3JDdXJyZW50VGhyZWFkKAogICAg
ICAgVGVzdFBhcnRSZXN1bHRSZXBvcnRlckludGVyZmFjZSogcmVwb3J0ZXIpOwogCi0gIC8vIEdl
dHMgdGhlIG51bWJlciBvZiBzdWNjZXNzZnVsIHRlc3QgY2FzZXMuCi0gIGludCBzdWNjZXNzZnVs
X3Rlc3RfY2FzZV9jb3VudCgpIGNvbnN0OworICAvLyBHZXRzIHRoZSBudW1iZXIgb2Ygc3VjY2Vz
c2Z1bCB0ZXN0IHN1aXRlcy4KKyAgaW50IHN1Y2Nlc3NmdWxfdGVzdF9zdWl0ZV9jb3VudCgpIGNv
bnN0OwogCi0gIC8vIEdldHMgdGhlIG51bWJlciBvZiBmYWlsZWQgdGVzdCBjYXNlcy4KLSAgaW50
IGZhaWxlZF90ZXN0X2Nhc2VfY291bnQoKSBjb25zdDsKKyAgLy8gR2V0cyB0aGUgbnVtYmVyIG9m
IGZhaWxlZCB0ZXN0IHN1aXRlcy4KKyAgaW50IGZhaWxlZF90ZXN0X3N1aXRlX2NvdW50KCkgY29u
c3Q7CiAKLSAgLy8gR2V0cyB0aGUgbnVtYmVyIG9mIGFsbCB0ZXN0IGNhc2VzLgotICBpbnQgdG90
YWxfdGVzdF9jYXNlX2NvdW50KCkgY29uc3Q7CisgIC8vIEdldHMgdGhlIG51bWJlciBvZiBhbGwg
dGVzdCBzdWl0ZXMuCisgIGludCB0b3RhbF90ZXN0X3N1aXRlX2NvdW50KCkgY29uc3Q7CiAKLSAg
Ly8gR2V0cyB0aGUgbnVtYmVyIG9mIGFsbCB0ZXN0IGNhc2VzIHRoYXQgY29udGFpbiBhdCBsZWFz
dCBvbmUgdGVzdAorICAvLyBHZXRzIHRoZSBudW1iZXIgb2YgYWxsIHRlc3Qgc3VpdGVzIHRoYXQg
Y29udGFpbiBhdCBsZWFzdCBvbmUgdGVzdAogICAvLyB0aGF0IHNob3VsZCBydW4uCi0gIGludCB0
ZXN0X2Nhc2VfdG9fcnVuX2NvdW50KCkgY29uc3Q7CisgIGludCB0ZXN0X3N1aXRlX3RvX3J1bl9j
b3VudCgpIGNvbnN0OwogCiAgIC8vIEdldHMgdGhlIG51bWJlciBvZiBzdWNjZXNzZnVsIHRlc3Rz
LgogICBpbnQgc3VjY2Vzc2Z1bF90ZXN0X2NvdW50KCkgY29uc3Q7CiAKKyAgLy8gR2V0cyB0aGUg
bnVtYmVyIG9mIHNraXBwZWQgdGVzdHMuCisgIGludCBza2lwcGVkX3Rlc3RfY291bnQoKSBjb25z
dDsKKwogICAvLyBHZXRzIHRoZSBudW1iZXIgb2YgZmFpbGVkIHRlc3RzLgogICBpbnQgZmFpbGVk
X3Rlc3RfY291bnQoKSBjb25zdDsKIApAQCAtNTY5LDI3ICs1NzgsMzMgQEAgY2xhc3MgR1RFU1Rf
QVBJXyBVbml0VGVzdEltcGwgewogICAvLyBHZXRzIHRoZSBlbGFwc2VkIHRpbWUsIGluIG1pbGxp
c2Vjb25kcy4KICAgVGltZUluTWlsbGlzIGVsYXBzZWRfdGltZSgpIGNvbnN0IHsgcmV0dXJuIGVs
YXBzZWRfdGltZV87IH0KIAotICAvLyBSZXR1cm5zIHRydWUgaWZmIHRoZSB1bml0IHRlc3QgcGFz
c2VkIChpLmUuIGFsbCB0ZXN0IGNhc2VzIHBhc3NlZCkuCisgIC8vIFJldHVybnMgdHJ1ZSBpZiBh
bmQgb25seSBpZiB0aGUgdW5pdCB0ZXN0IHBhc3NlZCAoaS5lLiBhbGwgdGVzdCBzdWl0ZXMKKyAg
Ly8gcGFzc2VkKS4KICAgYm9vbCBQYXNzZWQoKSBjb25zdCB7IHJldHVybiAhRmFpbGVkKCk7IH0K
IAotICAvLyBSZXR1cm5zIHRydWUgaWZmIHRoZSB1bml0IHRlc3QgZmFpbGVkIChpLmUuIHNvbWUg
dGVzdCBjYXNlIGZhaWxlZAotICAvLyBvciBzb21ldGhpbmcgb3V0c2lkZSBvZiBhbGwgdGVzdHMg
ZmFpbGVkKS4KKyAgLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoZSB1bml0IHRlc3Qg
ZmFpbGVkIChpLmUuIHNvbWUgdGVzdCBzdWl0ZQorICAvLyBmYWlsZWQgb3Igc29tZXRoaW5nIG91
dHNpZGUgb2YgYWxsIHRlc3RzIGZhaWxlZCkuCiAgIGJvb2wgRmFpbGVkKCkgY29uc3QgewotICAg
IHJldHVybiBmYWlsZWRfdGVzdF9jYXNlX2NvdW50KCkgPiAwIHx8IGFkX2hvY190ZXN0X3Jlc3Vs
dCgpLT5GYWlsZWQoKTsKKyAgICByZXR1cm4gZmFpbGVkX3Rlc3Rfc3VpdGVfY291bnQoKSA+IDAg
fHwgYWRfaG9jX3Rlc3RfcmVzdWx0KCktPkZhaWxlZCgpOwogICB9CiAKLSAgLy8gR2V0cyB0aGUg
aS10aCB0ZXN0IGNhc2UgYW1vbmcgYWxsIHRoZSB0ZXN0IGNhc2VzLiBpIGNhbiByYW5nZSBmcm9t
IDAgdG8KLSAgLy8gdG90YWxfdGVzdF9jYXNlX2NvdW50KCkgLSAxLiBJZiBpIGlzIG5vdCBpbiB0
aGF0IHJhbmdlLCByZXR1cm5zIE5VTEwuCi0gIGNvbnN0IFRlc3RDYXNlKiBHZXRUZXN0Q2FzZShp
bnQgaSkgY29uc3QgewotICAgIGNvbnN0IGludCBpbmRleCA9IEdldEVsZW1lbnRPcih0ZXN0X2Nh
c2VfaW5kaWNlc18sIGksIC0xKTsKLSAgICByZXR1cm4gaW5kZXggPCAwID8gTlVMTCA6IHRlc3Rf
Y2FzZXNfW2ldOworICAvLyBHZXRzIHRoZSBpLXRoIHRlc3Qgc3VpdGUgYW1vbmcgYWxsIHRoZSB0
ZXN0IHN1aXRlcy4gaSBjYW4gcmFuZ2UgZnJvbSAwIHRvCisgIC8vIHRvdGFsX3Rlc3Rfc3VpdGVf
Y291bnQoKSAtIDEuIElmIGkgaXMgbm90IGluIHRoYXQgcmFuZ2UsIHJldHVybnMgTlVMTC4KKyAg
Y29uc3QgVGVzdFN1aXRlKiBHZXRUZXN0U3VpdGUoaW50IGkpIGNvbnN0IHsKKyAgICBjb25zdCBp
bnQgaW5kZXggPSBHZXRFbGVtZW50T3IodGVzdF9zdWl0ZV9pbmRpY2VzXywgaSwgLTEpOworICAg
IHJldHVybiBpbmRleCA8IDAgPyBudWxscHRyIDogdGVzdF9zdWl0ZXNfW3N0YXRpY19jYXN0PHNp
emVfdD4oaSldOwogICB9CiAKLSAgLy8gR2V0cyB0aGUgaS10aCB0ZXN0IGNhc2UgYW1vbmcgYWxs
IHRoZSB0ZXN0IGNhc2VzLiBpIGNhbiByYW5nZSBmcm9tIDAgdG8KLSAgLy8gdG90YWxfdGVzdF9j
YXNlX2NvdW50KCkgLSAxLiBJZiBpIGlzIG5vdCBpbiB0aGF0IHJhbmdlLCByZXR1cm5zIE5VTEwu
Ci0gIFRlc3RDYXNlKiBHZXRNdXRhYmxlVGVzdENhc2UoaW50IGkpIHsKLSAgICBjb25zdCBpbnQg
aW5kZXggPSBHZXRFbGVtZW50T3IodGVzdF9jYXNlX2luZGljZXNfLCBpLCAtMSk7Ci0gICAgcmV0
dXJuIGluZGV4IDwgMCA/IE5VTEwgOiB0ZXN0X2Nhc2VzX1tpbmRleF07CisgIC8vICBMZWdhY3kg
QVBJIGlzIGRlcHJlY2F0ZWQgYnV0IHN0aWxsIGF2YWlsYWJsZQorI2lmbmRlZiBHVEVTVF9SRU1P
VkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KKyAgY29uc3QgVGVzdENhc2UqIEdldFRlc3RDYXNlKGlu
dCBpKSBjb25zdCB7IHJldHVybiBHZXRUZXN0U3VpdGUoaSk7IH0KKyNlbmRpZiAgLy8gIEdURVNU
X1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXworCisgIC8vIEdldHMgdGhlIGktdGggdGVzdCBz
dWl0ZSBhbW9uZyBhbGwgdGhlIHRlc3Qgc3VpdGVzLiBpIGNhbiByYW5nZSBmcm9tIDAgdG8KKyAg
Ly8gdG90YWxfdGVzdF9zdWl0ZV9jb3VudCgpIC0gMS4gSWYgaSBpcyBub3QgaW4gdGhhdCByYW5n
ZSwgcmV0dXJucyBOVUxMLgorICBUZXN0U3VpdGUqIEdldE11dGFibGVTdWl0ZUNhc2UoaW50IGkp
IHsKKyAgICBjb25zdCBpbnQgaW5kZXggPSBHZXRFbGVtZW50T3IodGVzdF9zdWl0ZV9pbmRpY2Vz
XywgaSwgLTEpOworICAgIHJldHVybiBpbmRleCA8IDAgPyBudWxscHRyIDogdGVzdF9zdWl0ZXNf
W3N0YXRpY19jYXN0PHNpemVfdD4oaW5kZXgpXTsKICAgfQogCiAgIC8vIFByb3ZpZGVzIGFjY2Vz
cyB0byB0aGUgZXZlbnQgbGlzdGVuZXIgbGlzdC4KQEAgLTYyNiwzMCArNjQxLDM4IEBAIGNsYXNz
IEdURVNUX0FQSV8gVW5pdFRlc3RJbXBsIHsKICAgLy8gdHJhY2UgYnV0IEJhcigpIGFuZCBDdXJy
ZW50T3NTdGFja1RyYWNlRXhjZXB0VG9wKCkgd29uJ3QuCiAgIHN0ZDo6c3RyaW5nIEN1cnJlbnRP
c1N0YWNrVHJhY2VFeGNlcHRUb3AoaW50IHNraXBfY291bnQpIEdURVNUX05PX0lOTElORV87CiAK
LSAgLy8gRmluZHMgYW5kIHJldHVybnMgYSBUZXN0Q2FzZSB3aXRoIHRoZSBnaXZlbiBuYW1lLiAg
SWYgb25lIGRvZXNuJ3QKKyAgLy8gRmluZHMgYW5kIHJldHVybnMgYSBUZXN0U3VpdGUgd2l0aCB0
aGUgZ2l2ZW4gbmFtZS4gIElmIG9uZSBkb2Vzbid0CiAgIC8vIGV4aXN0LCBjcmVhdGVzIG9uZSBh
bmQgcmV0dXJucyBpdC4KICAgLy8KICAgLy8gQXJndW1lbnRzOgogICAvLwotICAvLyAgIHRlc3Rf
Y2FzZV9uYW1lOiBuYW1lIG9mIHRoZSB0ZXN0IGNhc2UKKyAgLy8gICB0ZXN0X3N1aXRlX25hbWU6
IG5hbWUgb2YgdGhlIHRlc3Qgc3VpdGUKICAgLy8gICB0eXBlX3BhcmFtOiAgICAgdGhlIG5hbWUg
b2YgdGhlIHRlc3QncyB0eXBlIHBhcmFtZXRlciwgb3IgTlVMTCBpZgogICAvLyAgICAgICAgICAg
ICAgICAgICB0aGlzIGlzIG5vdCBhIHR5cGVkIG9yIGEgdHlwZS1wYXJhbWV0ZXJpemVkIHRlc3Qu
Ci0gIC8vICAgc2V0X3VwX3RjOiAgICAgIHBvaW50ZXIgdG8gdGhlIGZ1bmN0aW9uIHRoYXQgc2V0
cyB1cCB0aGUgdGVzdCBjYXNlCi0gIC8vICAgdGVhcl9kb3duX3RjOiAgIHBvaW50ZXIgdG8gdGhl
IGZ1bmN0aW9uIHRoYXQgdGVhcnMgZG93biB0aGUgdGVzdCBjYXNlCi0gIFRlc3RDYXNlKiBHZXRU
ZXN0Q2FzZShjb25zdCBjaGFyKiB0ZXN0X2Nhc2VfbmFtZSwKLSAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IGNoYXIqIHR5cGVfcGFyYW0sCi0gICAgICAgICAgICAgICAgICAgICAgICBUZXN0
OjpTZXRVcFRlc3RDYXNlRnVuYyBzZXRfdXBfdGMsCi0gICAgICAgICAgICAgICAgICAgICAgICBU
ZXN0OjpUZWFyRG93blRlc3RDYXNlRnVuYyB0ZWFyX2Rvd25fdGMpOworICAvLyAgIHNldF91cF90
YzogICAgICBwb2ludGVyIHRvIHRoZSBmdW5jdGlvbiB0aGF0IHNldHMgdXAgdGhlIHRlc3Qgc3Vp
dGUKKyAgLy8gICB0ZWFyX2Rvd25fdGM6ICAgcG9pbnRlciB0byB0aGUgZnVuY3Rpb24gdGhhdCB0
ZWFycyBkb3duIHRoZSB0ZXN0IHN1aXRlCisgIFRlc3RTdWl0ZSogR2V0VGVzdFN1aXRlKGNvbnN0
IGNoYXIqIHRlc3Rfc3VpdGVfbmFtZSwgY29uc3QgY2hhciogdHlwZV9wYXJhbSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgaW50ZXJuYWw6OlNldFVwVGVzdFN1aXRlRnVuYyBzZXRfdXBfdGMs
CisgICAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsOjpUZWFyRG93blRlc3RTdWl0ZUZ1
bmMgdGVhcl9kb3duX3RjKTsKKworLy8gIExlZ2FjeSBBUEkgaXMgZGVwcmVjYXRlZCBidXQgc3Rp
bGwgYXZhaWxhYmxlCisjaWZuZGVmIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwor
ICBUZXN0Q2FzZSogR2V0VGVzdENhc2UoY29uc3QgY2hhciogdGVzdF9jYXNlX25hbWUsIGNvbnN0
IGNoYXIqIHR5cGVfcGFyYW0sCisgICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbDo6U2V0
VXBUZXN0U3VpdGVGdW5jIHNldF91cF90YywKKyAgICAgICAgICAgICAgICAgICAgICAgIGludGVy
bmFsOjpUZWFyRG93blRlc3RTdWl0ZUZ1bmMgdGVhcl9kb3duX3RjKSB7CisgICAgcmV0dXJuIEdl
dFRlc3RTdWl0ZSh0ZXN0X2Nhc2VfbmFtZSwgdHlwZV9wYXJhbSwgc2V0X3VwX3RjLCB0ZWFyX2Rv
d25fdGMpOworICB9CisjZW5kaWYgIC8vICBHVEVTVF9SRU1PVkVfTEVHQUNZX1RFU1RfQ0FTRUFQ
SV8KIAogICAvLyBBZGRzIGEgVGVzdEluZm8gdG8gdGhlIHVuaXQgdGVzdC4KICAgLy8KICAgLy8g
QXJndW1lbnRzOgogICAvLwotICAvLyAgIHNldF91cF90YzogICAgcG9pbnRlciB0byB0aGUgZnVu
Y3Rpb24gdGhhdCBzZXRzIHVwIHRoZSB0ZXN0IGNhc2UKLSAgLy8gICB0ZWFyX2Rvd25fdGM6IHBv
aW50ZXIgdG8gdGhlIGZ1bmN0aW9uIHRoYXQgdGVhcnMgZG93biB0aGUgdGVzdCBjYXNlCisgIC8v
ICAgc2V0X3VwX3RjOiAgICBwb2ludGVyIHRvIHRoZSBmdW5jdGlvbiB0aGF0IHNldHMgdXAgdGhl
IHRlc3Qgc3VpdGUKKyAgLy8gICB0ZWFyX2Rvd25fdGM6IHBvaW50ZXIgdG8gdGhlIGZ1bmN0aW9u
IHRoYXQgdGVhcnMgZG93biB0aGUgdGVzdCBzdWl0ZQogICAvLyAgIHRlc3RfaW5mbzogICAgdGhl
IFRlc3RJbmZvIG9iamVjdAotICB2b2lkIEFkZFRlc3RJbmZvKFRlc3Q6OlNldFVwVGVzdENhc2VG
dW5jIHNldF91cF90YywKLSAgICAgICAgICAgICAgICAgICBUZXN0OjpUZWFyRG93blRlc3RDYXNl
RnVuYyB0ZWFyX2Rvd25fdGMsCisgIHZvaWQgQWRkVGVzdEluZm8oaW50ZXJuYWw6OlNldFVwVGVz
dFN1aXRlRnVuYyBzZXRfdXBfdGMsCisgICAgICAgICAgICAgICAgICAgaW50ZXJuYWw6OlRlYXJE
b3duVGVzdFN1aXRlRnVuYyB0ZWFyX2Rvd25fdGMsCiAgICAgICAgICAgICAgICAgICAgVGVzdElu
Zm8qIHRlc3RfaW5mbykgewogICAgIC8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhyZWFkLXNhZmUg
ZGVhdGggdGVzdHMsIHdlIG5lZWQgdG8KICAgICAvLyByZW1lbWJlciB0aGUgb3JpZ2luYWwgd29y
a2luZyBkaXJlY3Rvcnkgd2hlbiB0aGUgdGVzdCBwcm9ncmFtCkBAIC02NjQsMjEgKzY4NywzMSBA
QCBjbGFzcyBHVEVTVF9BUElfIFVuaXRUZXN0SW1wbCB7CiAgICAgICAgICAgPDwgIkZhaWxlZCB0
byBnZXQgdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIjsKICAgICB9CiAKLSAgICBHZXRU
ZXN0Q2FzZSh0ZXN0X2luZm8tPnRlc3RfY2FzZV9uYW1lKCksCi0gICAgICAgICAgICAgICAgdGVz
dF9pbmZvLT50eXBlX3BhcmFtKCksCi0gICAgICAgICAgICAgICAgc2V0X3VwX3RjLAotICAgICAg
ICAgICAgICAgIHRlYXJfZG93bl90YyktPkFkZFRlc3RJbmZvKHRlc3RfaW5mbyk7CisgICAgR2V0
VGVzdFN1aXRlKHRlc3RfaW5mby0+dGVzdF9zdWl0ZV9uYW1lKCksIHRlc3RfaW5mby0+dHlwZV9w
YXJhbSgpLAorICAgICAgICAgICAgICAgICBzZXRfdXBfdGMsIHRlYXJfZG93bl90YykKKyAgICAg
ICAgLT5BZGRUZXN0SW5mbyh0ZXN0X2luZm8pOwogICB9CiAKLSAgLy8gUmV0dXJucyBQYXJhbWV0
ZXJpemVkVGVzdENhc2VSZWdpc3RyeSBvYmplY3QgdXNlZCB0byBrZWVwIHRyYWNrIG9mCisgIC8v
IFJldHVybnMgUGFyYW1ldGVyaXplZFRlc3RTdWl0ZVJlZ2lzdHJ5IG9iamVjdCB1c2VkIHRvIGtl
ZXAgdHJhY2sgb2YKICAgLy8gdmFsdWUtcGFyYW1ldGVyaXplZCB0ZXN0cyBhbmQgaW5zdGFudGlh
dGUgYW5kIHJlZ2lzdGVyIHRoZW0uCi0gIGludGVybmFsOjpQYXJhbWV0ZXJpemVkVGVzdENhc2VS
ZWdpc3RyeSYgcGFyYW1ldGVyaXplZF90ZXN0X3JlZ2lzdHJ5KCkgeworICBpbnRlcm5hbDo6UGFy
YW1ldGVyaXplZFRlc3RTdWl0ZVJlZ2lzdHJ5JiBwYXJhbWV0ZXJpemVkX3Rlc3RfcmVnaXN0cnko
KSB7CiAgICAgcmV0dXJuIHBhcmFtZXRlcml6ZWRfdGVzdF9yZWdpc3RyeV87CiAgIH0KIAotICAv
LyBTZXRzIHRoZSBUZXN0Q2FzZSBvYmplY3QgZm9yIHRoZSB0ZXN0IHRoYXQncyBjdXJyZW50bHkg
cnVubmluZy4KLSAgdm9pZCBzZXRfY3VycmVudF90ZXN0X2Nhc2UoVGVzdENhc2UqIGFfY3VycmVu
dF90ZXN0X2Nhc2UpIHsKLSAgICBjdXJyZW50X3Rlc3RfY2FzZV8gPSBhX2N1cnJlbnRfdGVzdF9j
YXNlOworICBzdGQ6OnNldDxzdGQ6OnN0cmluZz4qIGlnbm9yZWRfcGFyYW1ldGVyaXplZF90ZXN0
X3N1aXRlcygpIHsKKyAgICByZXR1cm4gJmlnbm9yZWRfcGFyYW1ldGVyaXplZF90ZXN0X3N1aXRl
c187CisgIH0KKworICAvLyBSZXR1cm5zIFR5cGVQYXJhbWV0ZXJpemVkVGVzdFN1aXRlUmVnaXN0
cnkgb2JqZWN0IHVzZWQgdG8ga2VlcCB0cmFjayBvZgorICAvLyB0eXBlLXBhcmFtZXRlcml6ZWQg
dGVzdHMgYW5kIGluc3RhbnRpYXRpb25zIG9mIHRoZW0uCisgIGludGVybmFsOjpUeXBlUGFyYW1l
dGVyaXplZFRlc3RTdWl0ZVJlZ2lzdHJ5JgorICB0eXBlX3BhcmFtZXRlcml6ZWRfdGVzdF9yZWdp
c3RyeSgpIHsKKyAgICByZXR1cm4gdHlwZV9wYXJhbWV0ZXJpemVkX3Rlc3RfcmVnaXN0cnlfOwor
ICB9CisKKyAgLy8gU2V0cyB0aGUgVGVzdFN1aXRlIG9iamVjdCBmb3IgdGhlIHRlc3QgdGhhdCdz
IGN1cnJlbnRseSBydW5uaW5nLgorICB2b2lkIHNldF9jdXJyZW50X3Rlc3Rfc3VpdGUoVGVzdFN1
aXRlKiBhX2N1cnJlbnRfdGVzdF9zdWl0ZSkgeworICAgIGN1cnJlbnRfdGVzdF9zdWl0ZV8gPSBh
X2N1cnJlbnRfdGVzdF9zdWl0ZTsKICAgfQogCiAgIC8vIFNldHMgdGhlIFRlc3RJbmZvIG9iamVj
dCBmb3IgdGhlIHRlc3QgdGhhdCdzIGN1cnJlbnRseSBydW5uaW5nLiAgSWYKQEAgLTY4OSw3ICs3
MjIsNyBAQCBjbGFzcyBHVEVTVF9BUElfIFVuaXRUZXN0SW1wbCB7CiAgIH0KIAogICAvLyBSZWdp
c3RlcnMgYWxsIHBhcmFtZXRlcml6ZWQgdGVzdHMgZGVmaW5lZCB1c2luZyBURVNUX1AgYW5kCi0g
IC8vIElOU1RBTlRJQVRFX1RFU1RfQ0FTRV9QLCBjcmVhdGluZyByZWd1bGFyIHRlc3RzIGZvciBl
YWNoIHRlc3QvcGFyYW1ldGVyCisgIC8vIElOU1RBTlRJQVRFX1RFU1RfU1VJVEVfUCwgY3JlYXRp
bmcgcmVndWxhciB0ZXN0cyBmb3IgZWFjaCB0ZXN0L3BhcmFtZXRlcgogICAvLyBjb21iaW5hdGlv
bi4gVGhpcyBtZXRob2QgY2FuIGJlIGNhbGxlZCBtb3JlIHRoZW4gb25jZTsgaXQgaGFzIGd1YXJk
cwogICAvLyBwcm90ZWN0aW5nIGZyb20gcmVnaXN0ZXJpbmcgdGhlIHRlc3RzIG1vcmUgdGhlbiBv
bmNlLiAgSWYKICAgLy8gdmFsdWUtcGFyYW1ldGVyaXplZCB0ZXN0cyBhcmUgZGlzYWJsZWQsIFJl
Z2lzdGVyUGFyYW1ldGVyaXplZFRlc3RzIGlzCkBAIC03MDQsNyArNzM3LDcgQEAgY2xhc3MgR1RF
U1RfQVBJXyBVbml0VGVzdEltcGwgewogCiAgIC8vIENsZWFycyB0aGUgcmVzdWx0cyBvZiBhbGwg
dGVzdHMsIGV4Y2VwdCB0aGUgYWQgaG9jIHRlc3RzLgogICB2b2lkIENsZWFyTm9uQWRIb2NUZXN0
UmVzdWx0KCkgewotICAgIEZvckVhY2godGVzdF9jYXNlc18sIFRlc3RDYXNlOjpDbGVhclRlc3RD
YXNlUmVzdWx0KTsKKyAgICBGb3JFYWNoKHRlc3Rfc3VpdGVzXywgVGVzdFN1aXRlOjpDbGVhclRl
c3RTdWl0ZVJlc3VsdCk7CiAgIH0KIAogICAvLyBDbGVhcnMgdGhlIHJlc3VsdHMgb2YgYWQtaG9j
IHRlc3QgYXNzZXJ0aW9ucy4KQEAgLTcxMyw3ICs3NDYsNyBAQCBjbGFzcyBHVEVTVF9BUElfIFVu
aXRUZXN0SW1wbCB7CiAgIH0KIAogICAvLyBBZGRzIGEgVGVzdFByb3BlcnR5IHRvIHRoZSBjdXJy
ZW50IFRlc3RSZXN1bHQgb2JqZWN0IHdoZW4gaW52b2tlZCBpbiBhCi0gIC8vIGNvbnRleHQgb2Yg
YSB0ZXN0IG9yIGEgdGVzdCBjYXNlLCBvciB0byB0aGUgZ2xvYmFsIHByb3BlcnR5IHNldC4gSWYg
dGhlCisgIC8vIGNvbnRleHQgb2YgYSB0ZXN0IG9yIGEgdGVzdCBzdWl0ZSwgb3IgdG8gdGhlIGds
b2JhbCBwcm9wZXJ0eSBzZXQuIElmIHRoZQogICAvLyByZXN1bHQgYWxyZWFkeSBjb250YWlucyBh
IHByb3BlcnR5IHdpdGggdGhlIHNhbWUga2V5LCB0aGUgdmFsdWUgd2lsbCBiZQogICAvLyB1cGRh
dGVkLgogICB2b2lkIFJlY29yZFByb3BlcnR5KGNvbnN0IFRlc3RQcm9wZXJ0eSYgdGVzdF9wcm9w
ZXJ0eSk7CkBAIC03MjUsNyArNzU4LDcgQEAgY2xhc3MgR1RFU1RfQVBJXyBVbml0VGVzdEltcGwg
ewogCiAgIC8vIE1hdGNoZXMgdGhlIGZ1bGwgbmFtZSBvZiBlYWNoIHRlc3QgYWdhaW5zdCB0aGUg
dXNlci1zcGVjaWZpZWQKICAgLy8gZmlsdGVyIHRvIGRlY2lkZSB3aGV0aGVyIHRoZSB0ZXN0IHNo
b3VsZCBydW4sIHRoZW4gcmVjb3JkcyB0aGUKLSAgLy8gcmVzdWx0IGluIGVhY2ggVGVzdENhc2Ug
YW5kIFRlc3RJbmZvIG9iamVjdC4KKyAgLy8gcmVzdWx0IGluIGVhY2ggVGVzdFN1aXRlIGFuZCBU
ZXN0SW5mbyBvYmplY3QuCiAgIC8vIElmIHNoYXJkX3Rlc3RzID09IEhPTk9SX1NIQVJESU5HX1BS
T1RPQ09MLCBmdXJ0aGVyIGZpbHRlcnMgdGVzdHMKICAgLy8gYmFzZWQgb24gc2hhcmRpbmcgdmFy
aWFibGVzIGluIHRoZSBlbnZpcm9ubWVudC4KICAgLy8gUmV0dXJucyB0aGUgbnVtYmVyIG9mIHRl
c3RzIHRoYXQgc2hvdWxkIHJ1bi4KQEAgLTczNCw3ICs3NjcsNyBAQCBjbGFzcyBHVEVTVF9BUElf
IFVuaXRUZXN0SW1wbCB7CiAgIC8vIFByaW50cyB0aGUgbmFtZXMgb2YgdGhlIHRlc3RzIG1hdGNo
aW5nIHRoZSB1c2VyLXNwZWNpZmllZCBmaWx0ZXIgZmxhZy4KICAgdm9pZCBMaXN0VGVzdHNNYXRj
aGluZ0ZpbHRlcigpOwogCi0gIGNvbnN0IFRlc3RDYXNlKiBjdXJyZW50X3Rlc3RfY2FzZSgpIGNv
bnN0IHsgcmV0dXJuIGN1cnJlbnRfdGVzdF9jYXNlXzsgfQorICBjb25zdCBUZXN0U3VpdGUqIGN1
cnJlbnRfdGVzdF9zdWl0ZSgpIGNvbnN0IHsgcmV0dXJuIGN1cnJlbnRfdGVzdF9zdWl0ZV87IH0K
ICAgVGVzdEluZm8qIGN1cnJlbnRfdGVzdF9pbmZvKCkgeyByZXR1cm4gY3VycmVudF90ZXN0X2lu
Zm9fOyB9CiAgIGNvbnN0IFRlc3RJbmZvKiBjdXJyZW50X3Rlc3RfaW5mbygpIGNvbnN0IHsgcmV0
dXJuIGN1cnJlbnRfdGVzdF9pbmZvXzsgfQogCkBAIC03OTUsMTEgKzgyOCwxMSBAQCBjbGFzcyBH
VEVTVF9BUElfIFVuaXRUZXN0SW1wbCB7CiAgIC8vIEdldHMgdGhlIHJhbmRvbSBudW1iZXIgZ2Vu
ZXJhdG9yLgogICBpbnRlcm5hbDo6UmFuZG9tKiByYW5kb20oKSB7IHJldHVybiAmcmFuZG9tXzsg
fQogCi0gIC8vIFNodWZmbGVzIGFsbCB0ZXN0IGNhc2VzLCBhbmQgdGhlIHRlc3RzIHdpdGhpbiBl
YWNoIHRlc3QgY2FzZSwKKyAgLy8gU2h1ZmZsZXMgYWxsIHRlc3Qgc3VpdGVzLCBhbmQgdGhlIHRl
c3RzIHdpdGhpbiBlYWNoIHRlc3Qgc3VpdGUsCiAgIC8vIG1ha2luZyBzdXJlIHRoYXQgZGVhdGgg
dGVzdHMgYXJlIHN0aWxsIHJ1biBmaXJzdC4KICAgdm9pZCBTaHVmZmxlVGVzdHMoKTsKIAotICAv
LyBSZXN0b3JlcyB0aGUgdGVzdCBjYXNlcyBhbmQgdGVzdHMgdG8gdGhlaXIgb3JkZXIgYmVmb3Jl
IHRoZSBmaXJzdCBzaHVmZmxlLgorICAvLyBSZXN0b3JlcyB0aGUgdGVzdCBzdWl0ZXMgYW5kIHRl
c3RzIHRvIHRoZWlyIG9yZGVyIGJlZm9yZSB0aGUgZmlyc3Qgc2h1ZmZsZS4KICAgdm9pZCBVbnNo
dWZmbGVUZXN0cygpOwogCiAgIC8vIFJldHVybnMgdGhlIHZhbHVlIG9mIEdURVNUX0ZMQUcoY2F0
Y2hfZXhjZXB0aW9ucykgYXQgdGhlIG1vbWVudApAQCAtODM5LDMxICs4NzIsMzcgQEAgY2xhc3Mg
R1RFU1RfQVBJXyBVbml0VGVzdEltcGwgewogICAvLyBiZWZvcmUvYWZ0ZXIgdGhlIHRlc3RzIGFy
ZSBydW4uCiAgIHN0ZDo6dmVjdG9yPEVudmlyb25tZW50Kj4gZW52aXJvbm1lbnRzXzsKIAotICAv
LyBUaGUgdmVjdG9yIG9mIFRlc3RDYXNlcyBpbiB0aGVpciBvcmlnaW5hbCBvcmRlci4gIEl0IG93
bnMgdGhlCisgIC8vIFRoZSB2ZWN0b3Igb2YgVGVzdFN1aXRlcyBpbiB0aGVpciBvcmlnaW5hbCBv
cmRlci4gIEl0IG93bnMgdGhlCiAgIC8vIGVsZW1lbnRzIGluIHRoZSB2ZWN0b3IuCi0gIHN0ZDo6
dmVjdG9yPFRlc3RDYXNlKj4gdGVzdF9jYXNlc187CisgIHN0ZDo6dmVjdG9yPFRlc3RTdWl0ZSo+
IHRlc3Rfc3VpdGVzXzsKIAotICAvLyBQcm92aWRlcyBhIGxldmVsIG9mIGluZGlyZWN0aW9uIGZv
ciB0aGUgdGVzdCBjYXNlIGxpc3QgdG8gYWxsb3cKLSAgLy8gZWFzeSBzaHVmZmxpbmcgYW5kIHJl
c3RvcmluZyB0aGUgdGVzdCBjYXNlIG9yZGVyLiAgVGhlIGktdGgKLSAgLy8gZWxlbWVudCBvZiB0
aGlzIHZlY3RvciBpcyB0aGUgaW5kZXggb2YgdGhlIGktdGggdGVzdCBjYXNlIGluIHRoZQorICAv
LyBQcm92aWRlcyBhIGxldmVsIG9mIGluZGlyZWN0aW9uIGZvciB0aGUgdGVzdCBzdWl0ZSBsaXN0
IHRvIGFsbG93CisgIC8vIGVhc3kgc2h1ZmZsaW5nIGFuZCByZXN0b3JpbmcgdGhlIHRlc3Qgc3Vp
dGUgb3JkZXIuICBUaGUgaS10aAorICAvLyBlbGVtZW50IG9mIHRoaXMgdmVjdG9yIGlzIHRoZSBp
bmRleCBvZiB0aGUgaS10aCB0ZXN0IHN1aXRlIGluIHRoZQogICAvLyBzaHVmZmxlZCBvcmRlci4K
LSAgc3RkOjp2ZWN0b3I8aW50PiB0ZXN0X2Nhc2VfaW5kaWNlc187CisgIHN0ZDo6dmVjdG9yPGlu
dD4gdGVzdF9zdWl0ZV9pbmRpY2VzXzsKIAogICAvLyBQYXJhbWV0ZXJpemVkVGVzdFJlZ2lzdHJ5
IG9iamVjdCB1c2VkIHRvIHJlZ2lzdGVyIHZhbHVlLXBhcmFtZXRlcml6ZWQKICAgLy8gdGVzdHMu
Ci0gIGludGVybmFsOjpQYXJhbWV0ZXJpemVkVGVzdENhc2VSZWdpc3RyeSBwYXJhbWV0ZXJpemVk
X3Rlc3RfcmVnaXN0cnlfOworICBpbnRlcm5hbDo6UGFyYW1ldGVyaXplZFRlc3RTdWl0ZVJlZ2lz
dHJ5IHBhcmFtZXRlcml6ZWRfdGVzdF9yZWdpc3RyeV87CisgIGludGVybmFsOjpUeXBlUGFyYW1l
dGVyaXplZFRlc3RTdWl0ZVJlZ2lzdHJ5CisgICAgICB0eXBlX3BhcmFtZXRlcml6ZWRfdGVzdF9y
ZWdpc3RyeV87CisKKyAgLy8gVGhlIHNldCBob2xkaW5nIHRoZSBuYW1lIG9mIHBhcmFtZXRlcml6
ZWQKKyAgLy8gdGVzdCBzdWl0ZXMgdGhhdCBtYXkgZ28gdW5pbnN0YW50aWF0ZWQuCisgIHN0ZDo6
c2V0PHN0ZDo6c3RyaW5nPiBpZ25vcmVkX3BhcmFtZXRlcml6ZWRfdGVzdF9zdWl0ZXNfOwogCiAg
IC8vIEluZGljYXRlcyB3aGV0aGVyIFJlZ2lzdGVyUGFyYW1ldGVyaXplZFRlc3RzKCkgaGFzIGJl
ZW4gY2FsbGVkIGFscmVhZHkuCiAgIGJvb2wgcGFyYW1ldGVyaXplZF90ZXN0c19yZWdpc3RlcmVk
XzsKIAotICAvLyBJbmRleCBvZiB0aGUgbGFzdCBkZWF0aCB0ZXN0IGNhc2UgcmVnaXN0ZXJlZC4g
IEluaXRpYWxseSAtMS4KLSAgaW50IGxhc3RfZGVhdGhfdGVzdF9jYXNlXzsKKyAgLy8gSW5kZXgg
b2YgdGhlIGxhc3QgZGVhdGggdGVzdCBzdWl0ZSByZWdpc3RlcmVkLiAgSW5pdGlhbGx5IC0xLgor
ICBpbnQgbGFzdF9kZWF0aF90ZXN0X3N1aXRlXzsKIAotICAvLyBUaGlzIHBvaW50cyB0byB0aGUg
VGVzdENhc2UgZm9yIHRoZSBjdXJyZW50bHkgcnVubmluZyB0ZXN0LiAgSXQKLSAgLy8gY2hhbmdl
cyBhcyBHb29nbGUgVGVzdCBnb2VzIHRocm91Z2ggb25lIHRlc3QgY2FzZSBhZnRlciBhbm90aGVy
LgorICAvLyBUaGlzIHBvaW50cyB0byB0aGUgVGVzdFN1aXRlIGZvciB0aGUgY3VycmVudGx5IHJ1
bm5pbmcgdGVzdC4gIEl0CisgIC8vIGNoYW5nZXMgYXMgR29vZ2xlIFRlc3QgZ29lcyB0aHJvdWdo
IG9uZSB0ZXN0IHN1aXRlIGFmdGVyIGFub3RoZXIuCiAgIC8vIFdoZW4gbm8gdGVzdCBpcyBydW5u
aW5nLCB0aGlzIGlzIHNldCB0byBOVUxMIGFuZCBHb29nbGUgVGVzdAogICAvLyBzdG9yZXMgYXNz
ZXJ0aW9uIHJlc3VsdHMgaW4gYWRfaG9jX3Rlc3RfcmVzdWx0Xy4gIEluaXRpYWxseSBOVUxMLgot
ICBUZXN0Q2FzZSogY3VycmVudF90ZXN0X2Nhc2VfOworICBUZXN0U3VpdGUqIGN1cnJlbnRfdGVz
dF9zdWl0ZV87CiAKICAgLy8gVGhpcyBwb2ludHMgdG8gdGhlIFRlc3RJbmZvIGZvciB0aGUgY3Vy
cmVudGx5IHJ1bm5pbmcgdGVzdC4gIEl0CiAgIC8vIGNoYW5nZXMgYXMgR29vZ2xlIFRlc3QgZ29l
cyB0aHJvdWdoIG9uZSB0ZXN0IGFmdGVyIGFub3RoZXIuICBXaGVuCkBAIC04OTEsNyArOTMwLDcg
QEAgY2xhc3MgR1RFU1RfQVBJXyBVbml0VGVzdEltcGwgewogICAvLyBkZXNpcmVkLgogICBPc1N0
YWNrVHJhY2VHZXR0ZXJJbnRlcmZhY2UqIG9zX3N0YWNrX3RyYWNlX2dldHRlcl87CiAKLSAgLy8g
VHJ1ZSBpZmYgUG9zdEZsYWdQYXJzaW5nSW5pdCgpIGhhcyBiZWVuIGNhbGxlZC4KKyAgLy8gVHJ1
ZSBpZiBhbmQgb25seSBpZiBQb3N0RmxhZ1BhcnNpbmdJbml0KCkgaGFzIGJlZW4gY2FsbGVkLgog
ICBib29sIHBvc3RfZmxhZ19wYXJzZV9pbml0X3BlcmZvcm1lZF87CiAKICAgLy8gVGhlIHJhbmRv
bSBudW1iZXIgc2VlZCB1c2VkIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIHRlc3QgcnVuLgpAQCAt
OTEwLDggKzk0OSw4IEBAIGNsYXNzIEdURVNUX0FQSV8gVW5pdFRlc3RJbXBsIHsKICNpZiBHVEVT
VF9IQVNfREVBVEhfVEVTVAogICAvLyBUaGUgZGVjb21wb3NlZCBjb21wb25lbnRzIG9mIHRoZSBn
dGVzdF9pbnRlcm5hbF9ydW5fZGVhdGhfdGVzdCBmbGFnLAogICAvLyBwYXJzZWQgd2hlbiBSVU5f
QUxMX1RFU1RTIGlzIGNhbGxlZC4KLSAgaW50ZXJuYWw6OnNjb3BlZF9wdHI8SW50ZXJuYWxSdW5E
ZWF0aFRlc3RGbGFnPiBpbnRlcm5hbF9ydW5fZGVhdGhfdGVzdF9mbGFnXzsKLSAgaW50ZXJuYWw6
OnNjb3BlZF9wdHI8aW50ZXJuYWw6OkRlYXRoVGVzdEZhY3Rvcnk+IGRlYXRoX3Rlc3RfZmFjdG9y
eV87CisgIHN0ZDo6dW5pcXVlX3B0cjxJbnRlcm5hbFJ1bkRlYXRoVGVzdEZsYWc+IGludGVybmFs
X3J1bl9kZWF0aF90ZXN0X2ZsYWdfOworICBzdGQ6OnVuaXF1ZV9wdHI8aW50ZXJuYWw6OkRlYXRo
VGVzdEZhY3Rvcnk+IGRlYXRoX3Rlc3RfZmFjdG9yeV87CiAjZW5kaWYgIC8vIEdURVNUX0hBU19E
RUFUSF9URVNUCiAKICAgLy8gQSBwZXItdGhyZWFkIHN0YWNrIG9mIHRyYWNlcyBjcmVhdGVkIGJ5
IHRoZSBTQ09QRURfVFJBQ0UoKSBtYWNyby4KQEAgLTk3OCwyNCArMTAxNywxMSBAQCBib29sIFBh
cnNlTmF0dXJhbE51bWJlcihjb25zdCA6OnN0ZDo6c3RyaW5nJiBzdHIsIEludGVnZXIqIG51bWJl
cikgewogICBjaGFyKiBlbmQ7CiAgIC8vIEJpZ2dlc3RDb252ZXJ0aWJsZSBpcyB0aGUgbGFyZ2Vz
dCBpbnRlZ2VyIHR5cGUgdGhhdCBzeXN0ZW0tcHJvdmlkZWQKICAgLy8gc3RyaW5nLXRvLW51bWJl
ciBjb252ZXJzaW9uIHJvdXRpbmVzIGNhbiByZXR1cm4uCisgIHVzaW5nIEJpZ2dlc3RDb252ZXJ0
aWJsZSA9IHVuc2lnbmVkIGxvbmcgbG9uZzsgIC8vIE5PTElOVAogCi0jIGlmIEdURVNUX09TX1dJ
TkRPV1MgJiYgIWRlZmluZWQoX19HTlVDX18pCi0KLSAgLy8gTVNWQyBhbmQgQysrIEJ1aWxkZXIg
ZGVmaW5lIF9faW50NjQgaW5zdGVhZCBvZiB0aGUgc3RhbmRhcmQgbG9uZyBsb25nLgotICB0eXBl
ZGVmIHVuc2lnbmVkIF9faW50NjQgQmlnZ2VzdENvbnZlcnRpYmxlOwotICBjb25zdCBCaWdnZXN0
Q29udmVydGlibGUgcGFyc2VkID0gX3N0cnRvdWk2NChzdHIuY19zdHIoKSwgJmVuZCwgMTApOwot
Ci0jIGVsc2UKLQotICB0eXBlZGVmIHVuc2lnbmVkIGxvbmcgbG9uZyBCaWdnZXN0Q29udmVydGli
bGU7ICAvLyBOT0xJTlQKLSAgY29uc3QgQmlnZ2VzdENvbnZlcnRpYmxlIHBhcnNlZCA9IHN0cnRv
dWxsKHN0ci5jX3N0cigpLCAmZW5kLCAxMCk7Ci0KLSMgZW5kaWYgIC8vIEdURVNUX09TX1dJTkRP
V1MgJiYgIWRlZmluZWQoX19HTlVDX18pCi0KKyAgY29uc3QgQmlnZ2VzdENvbnZlcnRpYmxlIHBh
cnNlZCA9IHN0cnRvdWxsKHN0ci5jX3N0cigpLCAmZW5kLCAxMCk7ICAvLyBOT0xJTlQKICAgY29u
c3QgYm9vbCBwYXJzZV9zdWNjZXNzID0gKmVuZCA9PSAnXDAnICYmIGVycm5vID09IDA7CiAKLSAg
Ly8gRklYTUU6IENvbnZlcnQgdGhpcyB0byBjb21waWxlIHRpbWUgYXNzZXJ0aW9uIHdoZW4gaXQg
aXMKLSAgLy8gYXZhaWxhYmxlLgogICBHVEVTVF9DSEVDS18oc2l6ZW9mKEludGVnZXIpIDw9IHNp
emVvZihwYXJzZWQpKTsKIAogICBjb25zdCBJbnRlZ2VyIHJlc3VsdCA9IHN0YXRpY19jYXN0PElu
dGVnZXI+KHBhcnNlZCk7CkBAIC0xMDU5LDE4ICsxMDg1LDE4IEBAIGNsYXNzIFN0cmVhbWluZ0xp
c3RlbmVyIDogcHVibGljIEVtcHR5VGVzdEV2ZW50TGlzdGVuZXIgewogICAgICAgTWFrZUNvbm5l
Y3Rpb24oKTsKICAgICB9CiAKLSAgICB2aXJ0dWFsIH5Tb2NrZXRXcml0ZXIoKSB7CisgICAgflNv
Y2tldFdyaXRlcigpIG92ZXJyaWRlIHsKICAgICAgIGlmIChzb2NrZmRfICE9IC0xKQogICAgICAg
ICBDbG9zZUNvbm5lY3Rpb24oKTsKICAgICB9CiAKICAgICAvLyBTZW5kcyBhIHN0cmluZyB0byB0
aGUgc29ja2V0LgotICAgIHZpcnR1YWwgdm9pZCBTZW5kKGNvbnN0IHN0ZDo6c3RyaW5nJiBtZXNz
YWdlKSB7CisgICAgdm9pZCBTZW5kKGNvbnN0IHN0ZDo6c3RyaW5nJiBtZXNzYWdlKSBvdmVycmlk
ZSB7CiAgICAgICBHVEVTVF9DSEVDS18oc29ja2ZkXyAhPSAtMSkKICAgICAgICAgICA8PCAiU2Vu
ZCgpIGNhbiBiZSBjYWxsZWQgb25seSB3aGVuIHRoZXJlIGlzIGEgY29ubmVjdGlvbi4iOwogCi0g
ICAgICBjb25zdCBpbnQgbGVuID0gc3RhdGljX2Nhc3Q8aW50PihtZXNzYWdlLmxlbmd0aCgpKTsK
LSAgICAgIGlmICh3cml0ZShzb2NrZmRfLCBtZXNzYWdlLmNfc3RyKCksIGxlbikgIT0gbGVuKSB7
CisgICAgICBjb25zdCBhdXRvIGxlbiA9IHN0YXRpY19jYXN0PHNpemVfdD4obWVzc2FnZS5sZW5n
dGgoKSk7CisgICAgICBpZiAod3JpdGUoc29ja2ZkXywgbWVzc2FnZS5jX3N0cigpLCBsZW4pICE9
IHN0YXRpY19jYXN0PHNzaXplX3Q+KGxlbikpIHsKICAgICAgICAgR1RFU1RfTE9HXyhXQVJOSU5H
KQogICAgICAgICAgICAgPDwgInN0cmVhbV9yZXN1bHRfdG86IGZhaWxlZCB0byBzdHJlYW0gdG8g
IgogICAgICAgICAgICAgPDwgaG9zdF9uYW1lXyA8PCAiOiIgPDwgcG9ydF9udW1fOwpAQCAtMTA4
Miw3ICsxMTA4LDcgQEAgY2xhc3MgU3RyZWFtaW5nTGlzdGVuZXIgOiBwdWJsaWMgRW1wdHlUZXN0
RXZlbnRMaXN0ZW5lciB7CiAgICAgdm9pZCBNYWtlQ29ubmVjdGlvbigpOwogCiAgICAgLy8gQ2xv
c2VzIHRoZSBzb2NrZXQuCi0gICAgdm9pZCBDbG9zZUNvbm5lY3Rpb24oKSB7CisgICAgdm9pZCBD
bG9zZUNvbm5lY3Rpb24oKSBvdmVycmlkZSB7CiAgICAgICBHVEVTVF9DSEVDS18oc29ja2ZkXyAh
PSAtMSkKICAgICAgICAgICA8PCAiQ2xvc2VDb25uZWN0aW9uKCkgY2FuIGJlIGNhbGxlZCBvbmx5
IHdoZW4gdGhlcmUgaXMgYSBjb25uZWN0aW9uLiI7CiAKQEAgLTExMDgsMTEgKzExMzQsMTEgQEAg
Y2xhc3MgU3RyZWFtaW5nTGlzdGVuZXIgOiBwdWJsaWMgRW1wdHlUZXN0RXZlbnRMaXN0ZW5lciB7
CiAgIGV4cGxpY2l0IFN0cmVhbWluZ0xpc3RlbmVyKEFic3RyYWN0U29ja2V0V3JpdGVyKiBzb2Nr
ZXRfd3JpdGVyKQogICAgICAgOiBzb2NrZXRfd3JpdGVyXyhzb2NrZXRfd3JpdGVyKSB7IFN0YXJ0
KCk7IH0KIAotICB2b2lkIE9uVGVzdFByb2dyYW1TdGFydChjb25zdCBVbml0VGVzdCYgLyogdW5p
dF90ZXN0ICovKSB7CisgIHZvaWQgT25UZXN0UHJvZ3JhbVN0YXJ0KGNvbnN0IFVuaXRUZXN0JiAv
KiB1bml0X3Rlc3QgKi8pIG92ZXJyaWRlIHsKICAgICBTZW5kTG4oImV2ZW50PVRlc3RQcm9ncmFt
U3RhcnQiKTsKICAgfQogCi0gIHZvaWQgT25UZXN0UHJvZ3JhbUVuZChjb25zdCBVbml0VGVzdCYg
dW5pdF90ZXN0KSB7CisgIHZvaWQgT25UZXN0UHJvZ3JhbUVuZChjb25zdCBVbml0VGVzdCYgdW5p
dF90ZXN0KSBvdmVycmlkZSB7CiAgICAgLy8gTm90ZSB0aGF0IEdvb2dsZSBUZXN0IGN1cnJlbnQg
b25seSByZXBvcnQgZWxhcHNlZCB0aW1lIGZvciBlYWNoCiAgICAgLy8gdGVzdCBpdGVyYXRpb24s
IG5vdCBmb3IgdGhlIGVudGlyZSB0ZXN0IHByb2dyYW0uCiAgICAgU2VuZExuKCJldmVudD1UZXN0
UHJvZ3JhbUVuZCZwYXNzZWQ9IiArIEZvcm1hdEJvb2wodW5pdF90ZXN0LlBhc3NlZCgpKSk7CkBA
IC0xMTIxLDQyICsxMTQ3LDQ3IEBAIGNsYXNzIFN0cmVhbWluZ0xpc3RlbmVyIDogcHVibGljIEVt
cHR5VGVzdEV2ZW50TGlzdGVuZXIgewogICAgIHNvY2tldF93cml0ZXJfLT5DbG9zZUNvbm5lY3Rp
b24oKTsKICAgfQogCi0gIHZvaWQgT25UZXN0SXRlcmF0aW9uU3RhcnQoY29uc3QgVW5pdFRlc3Qm
IC8qIHVuaXRfdGVzdCAqLywgaW50IGl0ZXJhdGlvbikgeworICB2b2lkIE9uVGVzdEl0ZXJhdGlv
blN0YXJ0KGNvbnN0IFVuaXRUZXN0JiAvKiB1bml0X3Rlc3QgKi8sCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50IGl0ZXJhdGlvbikgb3ZlcnJpZGUgewogICAgIFNlbmRMbigiZXZlbnQ9
VGVzdEl0ZXJhdGlvblN0YXJ0Jml0ZXJhdGlvbj0iICsKICAgICAgICAgICAgU3RyZWFtYWJsZVRv
U3RyaW5nKGl0ZXJhdGlvbikpOwogICB9CiAKLSAgdm9pZCBPblRlc3RJdGVyYXRpb25FbmQoY29u
c3QgVW5pdFRlc3QmIHVuaXRfdGVzdCwgaW50IC8qIGl0ZXJhdGlvbiAqLykgeworICB2b2lkIE9u
VGVzdEl0ZXJhdGlvbkVuZChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICBpbnQgLyogaXRlcmF0aW9uICovKSBvdmVycmlkZSB7CiAgICAgU2VuZExu
KCJldmVudD1UZXN0SXRlcmF0aW9uRW5kJnBhc3NlZD0iICsKICAgICAgICAgICAgRm9ybWF0Qm9v
bCh1bml0X3Rlc3QuUGFzc2VkKCkpICsgIiZlbGFwc2VkX3RpbWU9IiArCiAgICAgICAgICAgIFN0
cmVhbWFibGVUb1N0cmluZyh1bml0X3Rlc3QuZWxhcHNlZF90aW1lKCkpICsgIm1zIik7CiAgIH0K
IAotICB2b2lkIE9uVGVzdENhc2VTdGFydChjb25zdCBUZXN0Q2FzZSYgdGVzdF9jYXNlKSB7Cisg
IC8vIE5vdGUgdGhhdCAiZXZlbnQ9VGVzdENhc2VTdGFydCIgaXMgYSB3aXJlIGZvcm1hdCBhbmQg
aGFzIHRvIHJlbWFpbgorICAvLyAiY2FzZSIgZm9yIGNvbXBhdGliaWx0eQorICB2b2lkIE9uVGVz
dENhc2VTdGFydChjb25zdCBUZXN0Q2FzZSYgdGVzdF9jYXNlKSBvdmVycmlkZSB7CiAgICAgU2Vu
ZExuKHN0ZDo6c3RyaW5nKCJldmVudD1UZXN0Q2FzZVN0YXJ0Jm5hbWU9IikgKyB0ZXN0X2Nhc2Uu
bmFtZSgpKTsKICAgfQogCi0gIHZvaWQgT25UZXN0Q2FzZUVuZChjb25zdCBUZXN0Q2FzZSYgdGVz
dF9jYXNlKSB7Ci0gICAgU2VuZExuKCJldmVudD1UZXN0Q2FzZUVuZCZwYXNzZWQ9IiArIEZvcm1h
dEJvb2wodGVzdF9jYXNlLlBhc3NlZCgpKQotICAgICAgICAgICArICImZWxhcHNlZF90aW1lPSIg
KyBTdHJlYW1hYmxlVG9TdHJpbmcodGVzdF9jYXNlLmVsYXBzZWRfdGltZSgpKQotICAgICAgICAg
ICArICJtcyIpOworICAvLyBOb3RlIHRoYXQgImV2ZW50PVRlc3RDYXNlRW5kIiBpcyBhIHdpcmUg
Zm9ybWF0IGFuZCBoYXMgdG8gcmVtYWluCisgIC8vICJjYXNlIiBmb3IgY29tcGF0aWJpbHR5Cisg
IHZvaWQgT25UZXN0Q2FzZUVuZChjb25zdCBUZXN0Q2FzZSYgdGVzdF9jYXNlKSBvdmVycmlkZSB7
CisgICAgU2VuZExuKCJldmVudD1UZXN0Q2FzZUVuZCZwYXNzZWQ9IiArIEZvcm1hdEJvb2wodGVz
dF9jYXNlLlBhc3NlZCgpKSArCisgICAgICAgICAgICImZWxhcHNlZF90aW1lPSIgKyBTdHJlYW1h
YmxlVG9TdHJpbmcodGVzdF9jYXNlLmVsYXBzZWRfdGltZSgpKSArCisgICAgICAgICAgICJtcyIp
OwogICB9CiAKLSAgdm9pZCBPblRlc3RTdGFydChjb25zdCBUZXN0SW5mbyYgdGVzdF9pbmZvKSB7
CisgIHZvaWQgT25UZXN0U3RhcnQoY29uc3QgVGVzdEluZm8mIHRlc3RfaW5mbykgb3ZlcnJpZGUg
ewogICAgIFNlbmRMbihzdGQ6OnN0cmluZygiZXZlbnQ9VGVzdFN0YXJ0Jm5hbWU9IikgKyB0ZXN0
X2luZm8ubmFtZSgpKTsKICAgfQogCi0gIHZvaWQgT25UZXN0RW5kKGNvbnN0IFRlc3RJbmZvJiB0
ZXN0X2luZm8pIHsKKyAgdm9pZCBPblRlc3RFbmQoY29uc3QgVGVzdEluZm8mIHRlc3RfaW5mbykg
b3ZlcnJpZGUgewogICAgIFNlbmRMbigiZXZlbnQ9VGVzdEVuZCZwYXNzZWQ9IiArCiAgICAgICAg
ICAgIEZvcm1hdEJvb2woKHRlc3RfaW5mby5yZXN1bHQoKSktPlBhc3NlZCgpKSArCiAgICAgICAg
ICAgICImZWxhcHNlZF90aW1lPSIgKwogICAgICAgICAgICBTdHJlYW1hYmxlVG9TdHJpbmcoKHRl
c3RfaW5mby5yZXN1bHQoKSktPmVsYXBzZWRfdGltZSgpKSArICJtcyIpOwogICB9CiAKLSAgdm9p
ZCBPblRlc3RQYXJ0UmVzdWx0KGNvbnN0IFRlc3RQYXJ0UmVzdWx0JiB0ZXN0X3BhcnRfcmVzdWx0
KSB7CisgIHZvaWQgT25UZXN0UGFydFJlc3VsdChjb25zdCBUZXN0UGFydFJlc3VsdCYgdGVzdF9w
YXJ0X3Jlc3VsdCkgb3ZlcnJpZGUgewogICAgIGNvbnN0IGNoYXIqIGZpbGVfbmFtZSA9IHRlc3Rf
cGFydF9yZXN1bHQuZmlsZV9uYW1lKCk7Ci0gICAgaWYgKGZpbGVfbmFtZSA9PSBOVUxMKQotICAg
ICAgZmlsZV9uYW1lID0gIiI7CisgICAgaWYgKGZpbGVfbmFtZSA9PSBudWxscHRyKSBmaWxlX25h
bWUgPSAiIjsKICAgICBTZW5kTG4oImV2ZW50PVRlc3RQYXJ0UmVzdWx0JmZpbGU9IiArIFVybEVu
Y29kZShmaWxlX25hbWUpICsKICAgICAgICAgICAgIiZsaW5lPSIgKyBTdHJlYW1hYmxlVG9TdHJp
bmcodGVzdF9wYXJ0X3Jlc3VsdC5saW5lX251bWJlcigpKSArCiAgICAgICAgICAgICImbWVzc2Fn
ZT0iICsgVXJsRW5jb2RlKHRlc3RfcGFydF9yZXN1bHQubWVzc2FnZSgpKSk7CkBAIC0xMTcyLDcg
KzEyMDMsNyBAQCBjbGFzcyBTdHJlYW1pbmdMaXN0ZW5lciA6IHB1YmxpYyBFbXB0eVRlc3RFdmVu
dExpc3RlbmVyIHsKIAogICBzdGQ6OnN0cmluZyBGb3JtYXRCb29sKGJvb2wgdmFsdWUpIHsgcmV0
dXJuIHZhbHVlID8gIjEiIDogIjAiOyB9CiAKLSAgY29uc3Qgc2NvcGVkX3B0cjxBYnN0cmFjdFNv
Y2tldFdyaXRlcj4gc29ja2V0X3dyaXRlcl87CisgIGNvbnN0IHN0ZDo6dW5pcXVlX3B0cjxBYnN0
cmFjdFNvY2tldFdyaXRlcj4gc29ja2V0X3dyaXRlcl87CiAKICAgR1RFU1RfRElTQUxMT1dfQ09Q
WV9BTkRfQVNTSUdOXyhTdHJlYW1pbmdMaXN0ZW5lcik7CiB9OyAgLy8gY2xhc3MgU3RyZWFtaW5n
TGlzdGVuZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9z
cmMvc3JjL2d0ZXN0LW1hdGNoZXJzLmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0
ZXN0L3NyYy9zcmMvZ3Rlc3QtbWF0Y2hlcnMuY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjUxMDRlYmFiMWJhOWFm
MDYzMjdmYzk0YzBhMDM4YjY4MDZkNDIwNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0LW1hdGNoZXJzLmNjCkBAIC0wLDAg
KzEsOTcgQEAKKy8vIENvcHlyaWdodCAyMDA3LCBHb29nbGUgSW5jLgorLy8gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKy8vCisvLyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKy8vIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKy8vIG1ldDoKKy8v
CisvLyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorLy8gbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorLy8gICAgICogUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorLy8gY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorLy8g
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZQorLy8gZGlzdHJpYnV0aW9uLgorLy8gICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29n
bGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworLy8gY29udHJpYnV0b3JzIG1heSBiZSB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKy8vIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisvLworLy8g
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENP
TlRSSUJVVE9SUworLy8gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKy8vIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorLy8gQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQK
Ky8vIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLAorLy8gU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorLy8gTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisvLyBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkKKy8vIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQKKy8vIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorLy8gT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKwor
Ly8gVGhlIEdvb2dsZSBDKysgVGVzdGluZyBhbmQgTW9ja2luZyBGcmFtZXdvcmsgKEdvb2dsZSBU
ZXN0KQorLy8KKy8vIFRoaXMgZmlsZSBpbXBsZW1lbnRzIGp1c3QgZW5vdWdoIG9mIHRoZSBtYXRj
aGVyIGludGVyZmFjZSB0byBhbGxvdworLy8gRVhQRUNUX0RFQVRIIGFuZCBmcmllbmRzIHRvIGFj
Y2VwdCBhIG1hdGNoZXIgYXJndW1lbnQuCisKKyNpbmNsdWRlICJndGVzdC9pbnRlcm5hbC9ndGVz
dC1pbnRlcm5hbC5oIgorI2luY2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQuaCIKKyNp
bmNsdWRlICJndGVzdC9ndGVzdC1tYXRjaGVycy5oIgorCisjaW5jbHVkZSA8c3RyaW5nPgorCitu
YW1lc3BhY2UgdGVzdGluZyB7CisKKy8vIENvbnN0cnVjdHMgYSBtYXRjaGVyIHRoYXQgbWF0Y2hl
cyBhIGNvbnN0IHN0ZDo6c3RyaW5nJiB3aG9zZSB2YWx1ZSBpcworLy8gZXF1YWwgdG8gcy4KK01h
dGNoZXI8Y29uc3Qgc3RkOjpzdHJpbmcmPjo6TWF0Y2hlcihjb25zdCBzdGQ6OnN0cmluZyYgcykg
eyAqdGhpcyA9IEVxKHMpOyB9CisKKy8vIENvbnN0cnVjdHMgYSBtYXRjaGVyIHRoYXQgbWF0Y2hl
cyBhIGNvbnN0IHN0ZDo6c3RyaW5nJiB3aG9zZSB2YWx1ZSBpcworLy8gZXF1YWwgdG8gcy4KK01h
dGNoZXI8Y29uc3Qgc3RkOjpzdHJpbmcmPjo6TWF0Y2hlcihjb25zdCBjaGFyKiBzKSB7CisgICp0
aGlzID0gRXEoc3RkOjpzdHJpbmcocykpOworfQorCisvLyBDb25zdHJ1Y3RzIGEgbWF0Y2hlciB0
aGF0IG1hdGNoZXMgYSBzdGQ6OnN0cmluZyB3aG9zZSB2YWx1ZSBpcyBlcXVhbCB0bworLy8gcy4K
K01hdGNoZXI8c3RkOjpzdHJpbmc+OjpNYXRjaGVyKGNvbnN0IHN0ZDo6c3RyaW5nJiBzKSB7ICp0
aGlzID0gRXEocyk7IH0KKworLy8gQ29uc3RydWN0cyBhIG1hdGNoZXIgdGhhdCBtYXRjaGVzIGEg
c3RkOjpzdHJpbmcgd2hvc2UgdmFsdWUgaXMgZXF1YWwgdG8KKy8vIHMuCitNYXRjaGVyPHN0ZDo6
c3RyaW5nPjo6TWF0Y2hlcihjb25zdCBjaGFyKiBzKSB7ICp0aGlzID0gRXEoc3RkOjpzdHJpbmco
cykpOyB9CisKKyNpZiBHVEVTVF9JTlRFUk5BTF9IQVNfU1RSSU5HX1ZJRVcKKy8vIENvbnN0cnVj
dHMgYSBtYXRjaGVyIHRoYXQgbWF0Y2hlcyBhIGNvbnN0IFN0cmluZ1ZpZXcmIHdob3NlIHZhbHVl
IGlzCisvLyBlcXVhbCB0byBzLgorTWF0Y2hlcjxjb25zdCBpbnRlcm5hbDo6U3RyaW5nVmlldyY+
OjpNYXRjaGVyKGNvbnN0IHN0ZDo6c3RyaW5nJiBzKSB7CisgICp0aGlzID0gRXEocyk7Cit9CisK
Ky8vIENvbnN0cnVjdHMgYSBtYXRjaGVyIHRoYXQgbWF0Y2hlcyBhIGNvbnN0IFN0cmluZ1ZpZXcm
IHdob3NlIHZhbHVlIGlzCisvLyBlcXVhbCB0byBzLgorTWF0Y2hlcjxjb25zdCBpbnRlcm5hbDo6
U3RyaW5nVmlldyY+OjpNYXRjaGVyKGNvbnN0IGNoYXIqIHMpIHsKKyAgKnRoaXMgPSBFcShzdGQ6
OnN0cmluZyhzKSk7Cit9CisKKy8vIENvbnN0cnVjdHMgYSBtYXRjaGVyIHRoYXQgbWF0Y2hlcyBh
IGNvbnN0IFN0cmluZ1ZpZXcmIHdob3NlIHZhbHVlIGlzCisvLyBlcXVhbCB0byBzLgorTWF0Y2hl
cjxjb25zdCBpbnRlcm5hbDo6U3RyaW5nVmlldyY+OjpNYXRjaGVyKGludGVybmFsOjpTdHJpbmdW
aWV3IHMpIHsKKyAgKnRoaXMgPSBFcShzdGQ6OnN0cmluZyhzKSk7Cit9CisKKy8vIENvbnN0cnVj
dHMgYSBtYXRjaGVyIHRoYXQgbWF0Y2hlcyBhIFN0cmluZ1ZpZXcgd2hvc2UgdmFsdWUgaXMgZXF1
YWwgdG8KKy8vIHMuCitNYXRjaGVyPGludGVybmFsOjpTdHJpbmdWaWV3Pjo6TWF0Y2hlcihjb25z
dCBzdGQ6OnN0cmluZyYgcykgeyAqdGhpcyA9IEVxKHMpOyB9CisKKy8vIENvbnN0cnVjdHMgYSBt
YXRjaGVyIHRoYXQgbWF0Y2hlcyBhIFN0cmluZ1ZpZXcgd2hvc2UgdmFsdWUgaXMgZXF1YWwgdG8K
Ky8vIHMuCitNYXRjaGVyPGludGVybmFsOjpTdHJpbmdWaWV3Pjo6TWF0Y2hlcihjb25zdCBjaGFy
KiBzKSB7CisgICp0aGlzID0gRXEoc3RkOjpzdHJpbmcocykpOworfQorCisvLyBDb25zdHJ1Y3Rz
IGEgbWF0Y2hlciB0aGF0IG1hdGNoZXMgYSBTdHJpbmdWaWV3IHdob3NlIHZhbHVlIGlzIGVxdWFs
IHRvCisvLyBzLgorTWF0Y2hlcjxpbnRlcm5hbDo6U3RyaW5nVmlldz46Ok1hdGNoZXIoaW50ZXJu
YWw6OlN0cmluZ1ZpZXcgcykgeworICAqdGhpcyA9IEVxKHN0ZDo6c3RyaW5nKHMpKTsKK30KKyNl
bmRpZiAgLy8gR1RFU1RfSU5URVJOQUxfSEFTX1NUUklOR19WSUVXCisKK30gIC8vIG5hbWVzcGFj
ZSB0ZXN0aW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qv
c3JjL3NyYy9ndGVzdC1wb3J0LmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0
L3NyYy9zcmMvZ3Rlc3QtcG9ydC5jYwppbmRleCBmZWNiNWQxMWMyMTI5NmE5MTgxYTExMjgwMjI2
MDY3YjY0M2VkZDA1Li5hMDVjNTBhMzliNjk1MzE3ZmRjNmZmNzRhMWE2OTllNGYxZjZiNmZiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL3NyYy9ndGVz
dC1wb3J0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvc3Jj
L2d0ZXN0LXBvcnQuY2MKQEAgLTMxLDE2ICszMSwyMSBAQAogI2luY2x1ZGUgImd0ZXN0L2ludGVy
bmFsL2d0ZXN0LXBvcnQuaCIKIAogI2luY2x1ZGUgPGxpbWl0cy5oPgotI2luY2x1ZGUgPHN0ZGxp
Yi5oPgogI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8
c3RyaW5nLmg+CisjaW5jbHVkZSA8Y3N0ZGludD4KICNpbmNsdWRlIDxmc3RyZWFtPgorI2luY2x1
ZGUgPG1lbW9yeT4KIAogI2lmIEdURVNUX09TX1dJTkRPV1MKICMgaW5jbHVkZSA8d2luZG93cy5o
PgogIyBpbmNsdWRlIDxpby5oPgogIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgogIyBpbmNsdWRlIDxt
YXA+ICAvLyBVc2VkIGluIFRocmVhZExvY2FsLgorIyBpZmRlZiBfTVNDX1ZFUgorIyAgaW5jbHVk
ZSA8Y3J0ZGJnLmg+CisjIGVuZGlmICAvLyBfTVNDX1ZFUgogI2Vsc2UKICMgaW5jbHVkZSA8dW5p
c3RkLmg+CiAjZW5kaWYgIC8vIEdURVNUX09TX1dJTkRPV1MKQEAgLTUxLDYgKzU2LDE0IEBACiAj
IGluY2x1ZGUgPG1hY2gvdm1fbWFwLmg+CiAjZW5kaWYgIC8vIEdURVNUX09TX01BQwogCisjaWYg
R1RFU1RfT1NfRFJBR09ORkxZIHx8IEdURVNUX09TX0ZSRUVCU0QgfHwgR1RFU1RfT1NfR05VX0tG
UkVFQlNEIHx8IFwKKyAgICBHVEVTVF9PU19ORVRCU0QgfHwgR1RFU1RfT1NfT1BFTkJTRAorIyBp
bmNsdWRlIDxzeXMvc3lzY3RsLmg+CisjIGlmIEdURVNUX09TX0RSQUdPTkZMWSB8fCBHVEVTVF9P
U19GUkVFQlNEIHx8IEdURVNUX09TX0dOVV9LRlJFRUJTRAorIyAgaW5jbHVkZSA8c3lzL3VzZXIu
aD4KKyMgZW5kaWYKKyNlbmRpZgorCiAjaWYgR1RFU1RfT1NfUU5YCiAjIGluY2x1ZGUgPGRldmN0
bC5oPgogIyBpbmNsdWRlIDxmY250bC5oPgpAQCAtMTA1LDcgKzExOCw3IEBAIFQgUmVhZFByb2NG
aWxlRmllbGQoY29uc3Qgc3RkOjpzdHJpbmcmIGZpbGVuYW1lLCBpbnQgZmllbGQpIHsKIHNpemVf
dCBHZXRUaHJlYWRDb3VudCgpIHsKICAgY29uc3Qgc3RkOjpzdHJpbmcgZmlsZW5hbWUgPQogICAg
ICAgKE1lc3NhZ2UoKSA8PCAiL3Byb2MvIiA8PCBnZXRwaWQoKSA8PCAiL3N0YXQiKS5HZXRTdHJp
bmcoKTsKLSAgcmV0dXJuIFJlYWRQcm9jRmlsZUZpZWxkPGludD4oZmlsZW5hbWUsIDE5KTsKKyAg
cmV0dXJuIFJlYWRQcm9jRmlsZUZpZWxkPHNpemVfdD4oZmlsZW5hbWUsIDE5KTsKIH0KIAogI2Vs
aWYgR1RFU1RfT1NfTUFDCkBAIC0xMjcsNiArMTQwLDgxIEBAIHNpemVfdCBHZXRUaHJlYWRDb3Vu
dCgpIHsKICAgfQogfQogCisjZWxpZiBHVEVTVF9PU19EUkFHT05GTFkgfHwgR1RFU1RfT1NfRlJF
RUJTRCB8fCBHVEVTVF9PU19HTlVfS0ZSRUVCU0QgfHwgXAorICAgICAgR1RFU1RfT1NfTkVUQlNE
CisKKyNpZiBHVEVTVF9PU19ORVRCU0QKKyN1bmRlZiBLRVJOX1BST0MKKyNkZWZpbmUgS0VSTl9Q
Uk9DIEtFUk5fUFJPQzIKKyNkZWZpbmUga2luZm9fcHJvYyBraW5mb19wcm9jMgorI2VuZGlmCisK
KyNpZiBHVEVTVF9PU19EUkFHT05GTFkKKyNkZWZpbmUgS1BfTkxXUChrcCkgKGtwLmtwX250aHJl
YWRzKQorI2VsaWYgR1RFU1RfT1NfRlJFRUJTRCB8fCBHVEVTVF9PU19HTlVfS0ZSRUVCU0QKKyNk
ZWZpbmUgS1BfTkxXUChrcCkgKGtwLmtpX251bXRocmVhZHMpCisjZWxpZiBHVEVTVF9PU19ORVRC
U0QKKyNkZWZpbmUgS1BfTkxXUChrcCkgKGtwLnBfbmx3cHMpCisjZW5kaWYKKworLy8gUmV0dXJu
cyB0aGUgbnVtYmVyIG9mIHRocmVhZHMgcnVubmluZyBpbiB0aGUgcHJvY2Vzcywgb3IgMCB0byBp
bmRpY2F0ZSB0aGF0CisvLyB3ZSBjYW5ub3QgZGV0ZWN0IGl0Lgorc2l6ZV90IEdldFRocmVhZENv
dW50KCkgeworICBpbnQgbWliW10gPSB7CisgICAgQ1RMX0tFUk4sCisgICAgS0VSTl9QUk9DLAor
ICAgIEtFUk5fUFJPQ19QSUQsCisgICAgZ2V0cGlkKCksCisjaWYgR1RFU1RfT1NfTkVUQlNECisg
ICAgc2l6ZW9mKHN0cnVjdCBraW5mb19wcm9jKSwKKyAgICAxLAorI2VuZGlmCisgIH07CisgIHVf
aW50IG1pYmxlbiA9IHNpemVvZihtaWIpIC8gc2l6ZW9mKG1pYlswXSk7CisgIHN0cnVjdCBraW5m
b19wcm9jIGluZm87CisgIHNpemVfdCBzaXplID0gc2l6ZW9mKGluZm8pOworICBpZiAoc3lzY3Rs
KG1pYiwgbWlibGVuLCAmaW5mbywgJnNpemUsIE5VTEwsIDApKSB7CisgICAgcmV0dXJuIDA7Cisg
IH0KKyAgcmV0dXJuIHN0YXRpY19jYXN0PHNpemVfdD4oS1BfTkxXUChpbmZvKSk7Cit9CisjZWxp
ZiBHVEVTVF9PU19PUEVOQlNECisKKy8vIFJldHVybnMgdGhlIG51bWJlciBvZiB0aHJlYWRzIHJ1
bm5pbmcgaW4gdGhlIHByb2Nlc3MsIG9yIDAgdG8gaW5kaWNhdGUgdGhhdAorLy8gd2UgY2Fubm90
IGRldGVjdCBpdC4KK3NpemVfdCBHZXRUaHJlYWRDb3VudCgpIHsKKyAgaW50IG1pYltdID0gewor
ICAgIENUTF9LRVJOLAorICAgIEtFUk5fUFJPQywKKyAgICBLRVJOX1BST0NfUElEIHwgS0VSTl9Q
Uk9DX1NIT1dfVEhSRUFEUywKKyAgICBnZXRwaWQoKSwKKyAgICBzaXplb2Yoc3RydWN0IGtpbmZv
X3Byb2MpLAorICAgIDAsCisgIH07CisgIHVfaW50IG1pYmxlbiA9IHNpemVvZihtaWIpIC8gc2l6
ZW9mKG1pYlswXSk7CisKKyAgLy8gZ2V0IG51bWJlciBvZiBzdHJ1Y3RzCisgIHNpemVfdCBzaXpl
OworICBpZiAoc3lzY3RsKG1pYiwgbWlibGVuLCBOVUxMLCAmc2l6ZSwgTlVMTCwgMCkpIHsKKyAg
ICByZXR1cm4gMDsKKyAgfQorICBtaWJbNV0gPSBzaXplIC8gbWliWzRdOworCisgIC8vIHBvcHVs
YXRlIGFycmF5IG9mIHN0cnVjdHMKKyAgc3RydWN0IGtpbmZvX3Byb2MgaW5mb1ttaWJbNV1dOwor
ICBpZiAoc3lzY3RsKG1pYiwgbWlibGVuLCAmaW5mbywgJnNpemUsIE5VTEwsIDApKSB7CisgICAg
cmV0dXJuIDA7CisgIH0KKworICAvLyBleGNsdWRlIGVtcHR5IG1lbWJlcnMKKyAgaW50IG50aHJl
YWRzID0gMDsKKyAgZm9yIChpbnQgaSA9IDA7IGkgPCBzaXplIC8gbWliWzRdOyBpKyspIHsKKyAg
ICBpZiAoaW5mb1tpXS5wX3RpZCAhPSAtMSkKKyAgICAgIG50aHJlYWRzKys7CisgIH0KKyAgcmV0
dXJuIG50aHJlYWRzOworfQorCiAjZWxpZiBHVEVTVF9PU19RTlgKIAogLy8gUmV0dXJucyB0aGUg
bnVtYmVyIG9mIHRocmVhZHMgcnVubmluZyBpbiB0aGUgcHJvY2Vzcywgb3IgMCB0byBpbmRpY2F0
ZSB0aGF0CkBAIC0xMzgsNyArMjI2LDcgQEAgc2l6ZV90IEdldFRocmVhZENvdW50KCkgewogICB9
CiAgIHByb2Nmc19pbmZvIHByb2Nlc3NfaW5mbzsKICAgY29uc3QgaW50IHN0YXR1cyA9Ci0gICAg
ICBkZXZjdGwoZmQsIERDTURfUFJPQ19JTkZPLCAmcHJvY2Vzc19pbmZvLCBzaXplb2YocHJvY2Vz
c19pbmZvKSwgTlVMTCk7CisgICAgICBkZXZjdGwoZmQsIERDTURfUFJPQ19JTkZPLCAmcHJvY2Vz
c19pbmZvLCBzaXplb2YocHJvY2Vzc19pbmZvKSwgbnVsbHB0cik7CiAgIGNsb3NlKGZkKTsKICAg
aWYgKHN0YXR1cyA9PSBFT0spIHsKICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8c2l6ZV90Pihwcm9j
ZXNzX2luZm8ubnVtX3RocmVhZHMpOwpAQCAtMTUyLDcgKzI0MCw3IEBAIHNpemVfdCBHZXRUaHJl
YWRDb3VudCgpIHsKIHNpemVfdCBHZXRUaHJlYWRDb3VudCgpIHsKICAgc3RydWN0IHByb2NlbnRy
eTY0IGVudHJ5OwogICBwaWRfdCBwaWQgPSBnZXRwaWQoKTsKLSAgaW50IHN0YXR1cyA9IGdldHBy
b2NzNjQoJmVudHJ5LCBzaXplb2YoZW50cnkpLCBOVUxMLCAwLCAmcGlkLCAxKTsKKyAgaW50IHN0
YXR1cyA9IGdldHByb2NzNjQoJmVudHJ5LCBzaXplb2YoZW50cnkpLCBudWxscHRyLCAwLCAmcGlk
LCAxKTsKICAgaWYgKHN0YXR1cyA9PSAxKSB7CiAgICAgcmV0dXJuIGVudHJ5LnBpX3RoY291bnQ7
CiAgIH0gZWxzZSB7CkBAIC0xOTIsNyArMjgwLDcgQEAgc2l6ZV90IEdldFRocmVhZENvdW50KCkg
ewogI2lmIEdURVNUX0lTX1RIUkVBRFNBRkUgJiYgR1RFU1RfT1NfV0lORE9XUwogCiB2b2lkIFNs
ZWVwTWlsbGlzZWNvbmRzKGludCBuKSB7Ci0gIDo6U2xlZXAobik7CisgIDo6U2xlZXAoc3RhdGlj
X2Nhc3Q8RFdPUkQ+KG4pKTsKIH0KIAogQXV0b0hhbmRsZTo6QXV0b0hhbmRsZSgpCkBAIC0yMzAs
MTUgKzMxOCwxNSBAQCB2b2lkIEF1dG9IYW5kbGU6OlJlc2V0KEhBTkRMRSBoYW5kbGUpIHsKIGJv
b2wgQXV0b0hhbmRsZTo6SXNDbG9zZWFibGUoKSBjb25zdCB7CiAgIC8vIERpZmZlcmVudCBXaW5k
b3dzIEFQSXMgbWF5IHVzZSBlaXRoZXIgb2YgdGhlc2UgdmFsdWVzIHRvIHJlcHJlc2VudCBhbgog
ICAvLyBpbnZhbGlkIGhhbmRsZS4KLSAgcmV0dXJuIGhhbmRsZV8gIT0gTlVMTCAmJiBoYW5kbGVf
ICE9IElOVkFMSURfSEFORExFX1ZBTFVFOworICByZXR1cm4gaGFuZGxlXyAhPSBudWxscHRyICYm
IGhhbmRsZV8gIT0gSU5WQUxJRF9IQU5ETEVfVkFMVUU7CiB9CiAKIE5vdGlmaWNhdGlvbjo6Tm90
aWZpY2F0aW9uKCkKLSAgICA6IGV2ZW50Xyg6OkNyZWF0ZUV2ZW50KE5VTEwsICAgLy8gRGVmYXVs
dCBzZWN1cml0eSBhdHRyaWJ1dGVzLgotICAgICAgICAgICAgICAgICAgICAgICAgICAgVFJVRSwg
ICAvLyBEbyBub3QgcmVzZXQgYXV0b21hdGljYWxseS4KLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEZBTFNFLCAgLy8gSW5pdGlhbGx5IHVuc2V0LgotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgTlVMTCkpIHsgIC8vIEFub255bW91cyBldmVudC4KLSAgR1RFU1RfQ0hFQ0tfKGV2ZW50Xy5H
ZXQoKSAhPSBOVUxMKTsKKyAgICA6IGV2ZW50Xyg6OkNyZWF0ZUV2ZW50KG51bGxwdHIsICAgICAv
LyBEZWZhdWx0IHNlY3VyaXR5IGF0dHJpYnV0ZXMuCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICBUUlVFLCAgICAgICAgLy8gRG8gbm90IHJlc2V0IGF1dG9tYXRpY2FsbHkuCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICBGQUxTRSwgICAgICAgLy8gSW5pdGlhbGx5IHVuc2V0LgorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgbnVsbHB0cikpIHsgIC8vIEFub255bW91cyBldmVudC4KKyAg
R1RFU1RfQ0hFQ0tfKGV2ZW50Xy5HZXQoKSAhPSBudWxscHRyKTsKIH0KIAogdm9pZCBOb3RpZmlj
YXRpb246Ok5vdGlmeSgpIHsKQEAgLTI2MSwxMyArMzQ5LDEwIEBAIE11dGV4OjpNdXRleCgpCiBN
dXRleDo6fk11dGV4KCkgewogICAvLyBTdGF0aWMgbXV0ZXhlcyBhcmUgbGVha2VkIGludGVudGlv
bmFsbHkuIEl0IGlzIG5vdCB0aHJlYWQtc2FmZSB0byB0cnkKICAgLy8gdG8gY2xlYW4gdGhlbSB1
cC4KLSAgLy8gRklYTUU6IFN3aXRjaCB0byBTbGltIFJlYWRlci9Xcml0ZXIgKFNSVykgTG9ja3Ms
IHdoaWNoIHJlcXVpcmVzCi0gIC8vIG5vdGhpbmcgdG8gY2xlYW4gaXQgdXAgYnV0IGlzIGF2YWls
YWJsZSBvbmx5IG9uIFZpc3RhIGFuZCBsYXRlci4KLSAgLy8gaHR0cHM6Ly9kb2NzLm1pY3Jvc29m
dC5jb20vZW4tdXMvd2luZG93cy9kZXNrdG9wL1N5bmMvc2xpbS1yZWFkZXItd3JpdGVyLS1zcnct
LWxvY2tzCiAgIGlmICh0eXBlXyA9PSBrRHluYW1pYykgewogICAgIDo6RGVsZXRlQ3JpdGljYWxT
ZWN0aW9uKGNyaXRpY2FsX3NlY3Rpb25fKTsKICAgICBkZWxldGUgY3JpdGljYWxfc2VjdGlvbl87
Ci0gICAgY3JpdGljYWxfc2VjdGlvbl8gPSBOVUxMOworICAgIGNyaXRpY2FsX3NlY3Rpb25fID0g
bnVsbHB0cjsKICAgfQogfQogCkBAIC0yOTYsNiArMzgxLDcgQEAgdm9pZCBNdXRleDo6QXNzZXJ0
SGVsZCgpIHsKIAogbmFtZXNwYWNlIHsKIAorI2lmZGVmIF9NU0NfVkVSCiAvLyBVc2UgdGhlIFJB
SUkgaWRpb20gdG8gZmxhZyBtZW0gYWxsb2NzIHRoYXQgYXJlIGludGVudGlvbmFsbHkgbmV2ZXIK
IC8vIGRlYWxsb2NhdGVkLiBUaGUgbW90aXZhdGlvbiBpcyB0byBzaWxlbmNlIHRoZSBmYWxzZSBw
b3NpdGl2ZSBtZW0gbGVha3MKIC8vIHRoYXQgYXJlIHJlcG9ydGVkIGJ5IHRoZSBkZWJ1ZyB2ZXJz
aW9uIG9mIE1TJ3MgQ1JUIHdoaWNoIGNhbiBvbmx5IGRldGVjdApAQCAtMzA4LDE5ICszOTQsMTUg
QEAgY2xhc3MgTWVtb3J5SXNOb3REZWFsbG9jYXRlZAogewogIHB1YmxpYzoKICAgTWVtb3J5SXNO
b3REZWFsbG9jYXRlZCgpIDogb2xkX2NydGRiZ19mbGFnXygwKSB7Ci0jaWZkZWYgX01TQ19WRVIK
ICAgICBvbGRfY3J0ZGJnX2ZsYWdfID0gX0NydFNldERiZ0ZsYWcoX0NSVERCR19SRVBPUlRfRkxB
Ryk7CiAgICAgLy8gU2V0IGhlYXAgYWxsb2NhdGlvbiBibG9jayB0eXBlIHRvIF9JR05PUkVfQkxP
Q0sgc28gdGhhdCBNUyBkZWJ1ZyBDUlQKICAgICAvLyBkb2Vzbid0IHJlcG9ydCBtZW0gbGVhayBp
ZiB0aGVyZSdzIG5vIG1hdGNoaW5nIGRlYWxsb2NhdGlvbi4KICAgICBfQ3J0U2V0RGJnRmxhZyhv
bGRfY3J0ZGJnX2ZsYWdfICYgfl9DUlREQkdfQUxMT0NfTUVNX0RGKTsKLSNlbmRpZiAgLy8gIF9N
U0NfVkVSCiAgIH0KIAogICB+TWVtb3J5SXNOb3REZWFsbG9jYXRlZCgpIHsKLSNpZmRlZiBfTVND
X1ZFUgogICAgIC8vIFJlc3RvcmUgdGhlIG9yaWdpbmFsIF9DUlREQkdfQUxMT0NfTUVNX0RGIGZs
YWcKICAgICBfQ3J0U2V0RGJnRmxhZyhvbGRfY3J0ZGJnX2ZsYWdfKTsKLSNlbmRpZiAgLy8gIF9N
U0NfVkVSCiAgIH0KIAogIHByaXZhdGU6CkBAIC0zMjgsNiArNDEwLDcgQEAgY2xhc3MgTWVtb3J5
SXNOb3REZWFsbG9jYXRlZAogCiAgIEdURVNUX0RJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTl8oTWVt
b3J5SXNOb3REZWFsbG9jYXRlZCk7CiB9OworI2VuZGlmICAvLyBfTVNDX1ZFUgogCiB9ICAvLyBu
YW1lc3BhY2UKIApAQCAtMzQzLDcgKzQyNiw5IEBAIHZvaWQgTXV0ZXg6OlRocmVhZFNhZmVMYXp5
SW5pdCgpIHsKICAgICAgICAgb3duZXJfdGhyZWFkX2lkXyA9IDA7CiAgICAgICAgIHsKICAgICAg
ICAgICAvLyBVc2UgUkFJSSB0byBmbGFnIHRoYXQgZm9sbG93aW5nIG1lbSBhbGxvYyBpcyBuZXZl
ciBkZWFsbG9jYXRlZC4KKyNpZmRlZiBfTVNDX1ZFUgogICAgICAgICAgIE1lbW9yeUlzTm90RGVh
bGxvY2F0ZWQgbWVtb3J5X2lzX25vdF9kZWFsbG9jYXRlZDsKKyNlbmRpZiAgLy8gX01TQ19WRVIK
ICAgICAgICAgICBjcml0aWNhbF9zZWN0aW9uXyA9IG5ldyBDUklUSUNBTF9TRUNUSU9OOwogICAg
ICAgICB9CiAgICAgICAgIDo6SW5pdGlhbGl6ZUNyaXRpY2FsU2VjdGlvbihjcml0aWNhbF9zZWN0
aW9uXyk7CkBAIC0zODQsMTcgKzQ2OSwxNiBAQCBjbGFzcyBUaHJlYWRXaXRoUGFyYW1TdXBwb3J0
IDogcHVibGljIFRocmVhZFdpdGhQYXJhbUJhc2UgewogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBOb3RpZmljYXRpb24qIHRocmVhZF9jYW5fc3RhcnQpIHsKICAgICBUaHJlYWRNYWluUGFy
YW0qIHBhcmFtID0gbmV3IFRocmVhZE1haW5QYXJhbShydW5uYWJsZSwgdGhyZWFkX2Nhbl9zdGFy
dCk7CiAgICAgRFdPUkQgdGhyZWFkX2lkOwotICAgIC8vIEZJWE1FOiBDb25zaWRlciB0byB1c2Ug
X2JlZ2ludGhyZWFkZXggaW5zdGVhZC4KICAgICBIQU5ETEUgdGhyZWFkX2hhbmRsZSA9IDo6Q3Jl
YXRlVGhyZWFkKAotICAgICAgICBOVUxMLCAgICAvLyBEZWZhdWx0IHNlY3VyaXR5LgotICAgICAg
ICAwLCAgICAgICAvLyBEZWZhdWx0IHN0YWNrIHNpemUuCisgICAgICAgIG51bGxwdHIsICAvLyBE
ZWZhdWx0IHNlY3VyaXR5LgorICAgICAgICAwLCAgICAgICAgLy8gRGVmYXVsdCBzdGFjayBzaXpl
LgogICAgICAgICAmVGhyZWFkV2l0aFBhcmFtU3VwcG9ydDo6VGhyZWFkTWFpbiwKLSAgICAgICAg
cGFyYW0sICAgLy8gUGFyYW1ldGVyIHRvIFRocmVhZE1haW5TdGF0aWMKLSAgICAgICAgMHgwLCAg
ICAgLy8gRGVmYXVsdCBjcmVhdGlvbiBmbGFncy4KKyAgICAgICAgcGFyYW0sICAgICAgICAvLyBQ
YXJhbWV0ZXIgdG8gVGhyZWFkTWFpblN0YXRpYworICAgICAgICAweDAsICAgICAgICAgIC8vIERl
ZmF1bHQgY3JlYXRpb24gZmxhZ3MuCiAgICAgICAgICZ0aHJlYWRfaWQpOyAgLy8gTmVlZCBhIHZh
bGlkIHBvaW50ZXIgZm9yIHRoZSBjYWxsIHRvIHdvcmsgdW5kZXIgV2luOTguCi0gICAgR1RFU1Rf
Q0hFQ0tfKHRocmVhZF9oYW5kbGUgIT0gTlVMTCkgPDwgIkNyZWF0ZVRocmVhZCBmYWlsZWQgd2l0
aCBlcnJvciAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgOjpH
ZXRMYXN0RXJyb3IoKSA8PCAiLiI7Ci0gICAgaWYgKHRocmVhZF9oYW5kbGUgPT0gTlVMTCkgewor
ICAgIEdURVNUX0NIRUNLXyh0aHJlYWRfaGFuZGxlICE9IG51bGxwdHIpCisgICAgICAgIDw8ICJD
cmVhdGVUaHJlYWQgZmFpbGVkIHdpdGggZXJyb3IgIiA8PCA6OkdldExhc3RFcnJvcigpIDw8ICIu
IjsKKyAgICBpZiAodGhyZWFkX2hhbmRsZSA9PSBudWxscHRyKSB7CiAgICAgICBkZWxldGUgcGFy
YW07CiAgICAgfQogICAgIHJldHVybiB0aHJlYWRfaGFuZGxlOwpAQCAtNDA2LDE1ICs0OTAsMTUg
QEAgY2xhc3MgVGhyZWFkV2l0aFBhcmFtU3VwcG9ydCA6IHB1YmxpYyBUaHJlYWRXaXRoUGFyYW1C
YXNlIHsKICAgICAgICAgOiBydW5uYWJsZV8ocnVubmFibGUpLAogICAgICAgICAgIHRocmVhZF9j
YW5fc3RhcnRfKHRocmVhZF9jYW5fc3RhcnQpIHsKICAgICB9Ci0gICAgc2NvcGVkX3B0cjxSdW5u
YWJsZT4gcnVubmFibGVfOworICAgIHN0ZDo6dW5pcXVlX3B0cjxSdW5uYWJsZT4gcnVubmFibGVf
OwogICAgIC8vIERvZXMgbm90IG93bi4KICAgICBOb3RpZmljYXRpb24qIHRocmVhZF9jYW5fc3Rh
cnRfOwogICB9OwogCiAgIHN0YXRpYyBEV09SRCBXSU5BUEkgVGhyZWFkTWFpbih2b2lkKiBwdHIp
IHsKICAgICAvLyBUcmFuc2ZlcnMgb3duZXJzaGlwLgotICAgIHNjb3BlZF9wdHI8VGhyZWFkTWFp
blBhcmFtPiBwYXJhbShzdGF0aWNfY2FzdDxUaHJlYWRNYWluUGFyYW0qPihwdHIpKTsKLSAgICBp
ZiAocGFyYW0tPnRocmVhZF9jYW5fc3RhcnRfICE9IE5VTEwpCisgICAgc3RkOjp1bmlxdWVfcHRy
PFRocmVhZE1haW5QYXJhbT4gcGFyYW0oc3RhdGljX2Nhc3Q8VGhyZWFkTWFpblBhcmFtKj4ocHRy
KSk7CisgICAgaWYgKHBhcmFtLT50aHJlYWRfY2FuX3N0YXJ0XyAhPSBudWxscHRyKQogICAgICAg
cGFyYW0tPnRocmVhZF9jYW5fc3RhcnRfLT5XYWl0Rm9yTm90aWZpY2F0aW9uKCk7CiAgICAgcGFy
YW0tPnJ1bm5hYmxlXy0+UnVuKCk7CiAgICAgcmV0dXJuIDA7CkBAIC00NTMsNiArNTM3LDkgQEAg
Y2xhc3MgVGhyZWFkTG9jYWxSZWdpc3RyeUltcGwgewogICAvLyBSZXR1cm5zIGEgdmFsdWUgdGhh
dCBjYW4gYmUgdXNlZCB0byBpZGVudGlmeSB0aGUgdGhyZWFkIGZyb20gb3RoZXIgdGhyZWFkcy4K
ICAgc3RhdGljIFRocmVhZExvY2FsVmFsdWVIb2xkZXJCYXNlKiBHZXRWYWx1ZU9uQ3VycmVudFRo
cmVhZCgKICAgICAgIGNvbnN0IFRocmVhZExvY2FsQmFzZSogdGhyZWFkX2xvY2FsX2luc3RhbmNl
KSB7CisjaWZkZWYgX01TQ19WRVIKKyAgICBNZW1vcnlJc05vdERlYWxsb2NhdGVkIG1lbW9yeV9p
c19ub3RfZGVhbGxvY2F0ZWQ7CisjZW5kaWYgIC8vIF9NU0NfVkVSCiAgICAgRFdPUkQgY3VycmVu
dF90aHJlYWQgPSA6OkdldEN1cnJlbnRUaHJlYWRJZCgpOwogICAgIE11dGV4TG9jayBsb2NrKCZt
dXRleF8pOwogICAgIFRocmVhZElkVG9UaHJlYWRMb2NhbHMqIGNvbnN0IHRocmVhZF90b190aHJl
YWRfbG9jYWxzID0KQEAgLTQ3Miw3ICs1NTksNyBAQCBjbGFzcyBUaHJlYWRMb2NhbFJlZ2lzdHJ5
SW1wbCB7CiAgICAgICAgICAgdGhyZWFkX2xvY2FsX3ZhbHVlcwogICAgICAgICAgICAgICAuaW5z
ZXJ0KHN0ZDo6bWFrZV9wYWlyKAogICAgICAgICAgICAgICAgICAgdGhyZWFkX2xvY2FsX2luc3Rh
bmNlLAotICAgICAgICAgICAgICAgICAgbGlua2VkX3B0cjxUaHJlYWRMb2NhbFZhbHVlSG9sZGVy
QmFzZT4oCisgICAgICAgICAgICAgICAgICBzdGQ6OnNoYXJlZF9wdHI8VGhyZWFkTG9jYWxWYWx1
ZUhvbGRlckJhc2U+KAogICAgICAgICAgICAgICAgICAgICAgIHRocmVhZF9sb2NhbF9pbnN0YW5j
ZS0+TmV3VmFsdWVGb3JDdXJyZW50VGhyZWFkKCkpKSkKICAgICAgICAgICAgICAgLmZpcnN0Owog
ICAgIH0KQEAgLTQ4MSw3ICs1NjgsNyBAQCBjbGFzcyBUaHJlYWRMb2NhbFJlZ2lzdHJ5SW1wbCB7
CiAKICAgc3RhdGljIHZvaWQgT25UaHJlYWRMb2NhbERlc3Ryb3llZCgKICAgICAgIGNvbnN0IFRo
cmVhZExvY2FsQmFzZSogdGhyZWFkX2xvY2FsX2luc3RhbmNlKSB7Ci0gICAgc3RkOjp2ZWN0b3I8
bGlua2VkX3B0cjxUaHJlYWRMb2NhbFZhbHVlSG9sZGVyQmFzZT4gPiB2YWx1ZV9ob2xkZXJzOwor
ICAgIHN0ZDo6dmVjdG9yPHN0ZDo6c2hhcmVkX3B0cjxUaHJlYWRMb2NhbFZhbHVlSG9sZGVyQmFz
ZT4gPiB2YWx1ZV9ob2xkZXJzOwogICAgIC8vIENsZWFuIHVwIHRoZSBUaHJlYWRMb2NhbFZhbHVl
cyBkYXRhIHN0cnVjdHVyZSB3aGlsZSBob2xkaW5nIHRoZSBsb2NrLCBidXQKICAgICAvLyBkZWZl
ciB0aGUgZGVzdHJ1Y3Rpb24gb2YgdGhlIFRocmVhZExvY2FsVmFsdWVIb2xkZXJCYXNlcy4KICAg
ICB7CkBAIC01MDksNyArNTk2LDcgQEAgY2xhc3MgVGhyZWFkTG9jYWxSZWdpc3RyeUltcGwgewog
CiAgIHN0YXRpYyB2b2lkIE9uVGhyZWFkRXhpdChEV09SRCB0aHJlYWRfaWQpIHsKICAgICBHVEVT
VF9DSEVDS18odGhyZWFkX2lkICE9IDApIDw8IDo6R2V0TGFzdEVycm9yKCk7Ci0gICAgc3RkOjp2
ZWN0b3I8bGlua2VkX3B0cjxUaHJlYWRMb2NhbFZhbHVlSG9sZGVyQmFzZT4gPiB2YWx1ZV9ob2xk
ZXJzOworICAgIHN0ZDo6dmVjdG9yPHN0ZDo6c2hhcmVkX3B0cjxUaHJlYWRMb2NhbFZhbHVlSG9s
ZGVyQmFzZT4gPiB2YWx1ZV9ob2xkZXJzOwogICAgIC8vIENsZWFuIHVwIHRoZSBUaHJlYWRJZFRv
VGhyZWFkTG9jYWxzIGRhdGEgc3RydWN0dXJlIHdoaWxlIGhvbGRpbmcgdGhlCiAgICAgLy8gbG9j
aywgYnV0IGRlZmVyIHRoZSBkZXN0cnVjdGlvbiBvZiB0aGUgVGhyZWFkTG9jYWxWYWx1ZUhvbGRl
ckJhc2VzLgogICAgIHsKQEAgLTUzNiw3ICs2MjMsOCBAQCBjbGFzcyBUaHJlYWRMb2NhbFJlZ2lz
dHJ5SW1wbCB7CiAgcHJpdmF0ZToKICAgLy8gSW4gYSBwYXJ0aWN1bGFyIHRocmVhZCwgbWFwcyBh
IFRocmVhZExvY2FsIG9iamVjdCB0byBpdHMgdmFsdWUuCiAgIHR5cGVkZWYgc3RkOjptYXA8Y29u
c3QgVGhyZWFkTG9jYWxCYXNlKiwKLSAgICAgICAgICAgICAgICAgICBsaW5rZWRfcHRyPFRocmVh
ZExvY2FsVmFsdWVIb2xkZXJCYXNlPiA+IFRocmVhZExvY2FsVmFsdWVzOworICAgICAgICAgICAg
ICAgICAgIHN0ZDo6c2hhcmVkX3B0cjxUaHJlYWRMb2NhbFZhbHVlSG9sZGVyQmFzZT4gPgorICAg
ICAgVGhyZWFkTG9jYWxWYWx1ZXM7CiAgIC8vIFN0b3JlcyBhbGwgVGhyZWFkSWRUb1RocmVhZExv
Y2FscyBoYXZpbmcgdmFsdWVzIGluIGEgdGhyZWFkLCBpbmRleGVkIGJ5CiAgIC8vIHRocmVhZCdz
IElELgogICB0eXBlZGVmIHN0ZDo6bWFwPERXT1JELCBUaHJlYWRMb2NhbFZhbHVlcz4gVGhyZWFk
SWRUb1RocmVhZExvY2FsczsKQEAgLTU1MSwxOCArNjM5LDE3IEBAIGNsYXNzIFRocmVhZExvY2Fs
UmVnaXN0cnlJbXBsIHsKICAgICBIQU5ETEUgdGhyZWFkID0gOjpPcGVuVGhyZWFkKFNZTkNIUk9O
SVpFIHwgVEhSRUFEX1FVRVJZX0lORk9STUFUSU9OLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgRkFMU0UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJlYWRf
aWQpOwotICAgIEdURVNUX0NIRUNLXyh0aHJlYWQgIT0gTlVMTCk7CisgICAgR1RFU1RfQ0hFQ0tf
KHRocmVhZCAhPSBudWxscHRyKTsKICAgICAvLyBXZSBuZWVkIHRvIHBhc3MgYSB2YWxpZCB0aHJl
YWQgSUQgcG9pbnRlciBpbnRvIENyZWF0ZVRocmVhZCBmb3IgaXQKICAgICAvLyB0byB3b3JrIGNv
cnJlY3RseSB1bmRlciBXaW45OC4KICAgICBEV09SRCB3YXRjaGVyX3RocmVhZF9pZDsKICAgICBI
QU5ETEUgd2F0Y2hlcl90aHJlYWQgPSA6OkNyZWF0ZVRocmVhZCgKLSAgICAgICAgTlVMTCwgICAv
LyBEZWZhdWx0IHNlY3VyaXR5LgotICAgICAgICAwLCAgICAgIC8vIERlZmF1bHQgc3RhY2sgc2l6
ZQorICAgICAgICBudWxscHRyLCAgLy8gRGVmYXVsdCBzZWN1cml0eS4KKyAgICAgICAgMCwgICAg
ICAgIC8vIERlZmF1bHQgc3RhY2sgc2l6ZQogICAgICAgICAmVGhyZWFkTG9jYWxSZWdpc3RyeUlt
cGw6OldhdGNoZXJUaHJlYWRGdW5jLAogICAgICAgICByZWludGVycHJldF9jYXN0PExQVk9JRD4o
bmV3IFRocmVhZElkQW5kSGFuZGxlKHRocmVhZF9pZCwgdGhyZWFkKSksCi0gICAgICAgIENSRUFU
RV9TVVNQRU5ERUQsCi0gICAgICAgICZ3YXRjaGVyX3RocmVhZF9pZCk7Ci0gICAgR1RFU1RfQ0hF
Q0tfKHdhdGNoZXJfdGhyZWFkICE9IE5VTEwpOworICAgICAgICBDUkVBVEVfU1VTUEVOREVELCAm
d2F0Y2hlcl90aHJlYWRfaWQpOworICAgIEdURVNUX0NIRUNLXyh3YXRjaGVyX3RocmVhZCAhPSBu
dWxscHRyKTsKICAgICAvLyBHaXZlIHRoZSB3YXRjaGVyIHRocmVhZCB0aGUgc2FtZSBwcmlvcml0
eSBhcyBvdXJzIHRvIGF2b2lkIGJlaW5nCiAgICAgLy8gYmxvY2tlZCBieSBpdC4KICAgICA6OlNl
dFRocmVhZFByaW9yaXR5KHdhdGNoZXJfdGhyZWFkLApAQCAtNTg3LDcgKzY3NCw5IEBAIGNsYXNz
IFRocmVhZExvY2FsUmVnaXN0cnlJbXBsIHsKICAgLy8gUmV0dXJucyBtYXAgb2YgdGhyZWFkIGxv
Y2FsIGluc3RhbmNlcy4KICAgc3RhdGljIFRocmVhZElkVG9UaHJlYWRMb2NhbHMqIEdldFRocmVh
ZExvY2Fsc01hcExvY2tlZCgpIHsKICAgICBtdXRleF8uQXNzZXJ0SGVsZCgpOworI2lmZGVmIF9N
U0NfVkVSCiAgICAgTWVtb3J5SXNOb3REZWFsbG9jYXRlZCBtZW1vcnlfaXNfbm90X2RlYWxsb2Nh
dGVkOworI2VuZGlmICAvLyBfTVNDX1ZFUgogICAgIHN0YXRpYyBUaHJlYWRJZFRvVGhyZWFkTG9j
YWxzKiBtYXAgPSBuZXcgVGhyZWFkSWRUb1RocmVhZExvY2FscygpOwogICAgIHJldHVybiBtYXA7
CiAgIH0KQEAgLTYzMCw3ICs3MTksNyBAQCBSRTo6flJFKCkgewogICBmcmVlKGNvbnN0X2Nhc3Q8
Y2hhcio+KHBhdHRlcm5fKSk7CiB9CiAKLS8vIFJldHVybnMgdHJ1ZSBpZmYgcmVndWxhciBleHBy
ZXNzaW9uIHJlIG1hdGNoZXMgdGhlIGVudGlyZSBzdHIuCisvLyBSZXR1cm5zIHRydWUgaWYgYW5k
IG9ubHkgaWYgcmVndWxhciBleHByZXNzaW9uIHJlIG1hdGNoZXMgdGhlIGVudGlyZSBzdHIuCiBi
b29sIFJFOjpGdWxsTWF0Y2goY29uc3QgY2hhciogc3RyLCBjb25zdCBSRSYgcmUpIHsKICAgaWYg
KCFyZS5pc192YWxpZF8pIHJldHVybiBmYWxzZTsKIApAQCAtNjM4LDggKzcyNyw4IEBAIGJvb2wg
UkU6OkZ1bGxNYXRjaChjb25zdCBjaGFyKiBzdHIsIGNvbnN0IFJFJiByZSkgewogICByZXR1cm4g
cmVnZXhlYygmcmUuZnVsbF9yZWdleF8sIHN0ciwgMSwgJm1hdGNoLCAwKSA9PSAwOwogfQogCi0v
LyBSZXR1cm5zIHRydWUgaWZmIHJlZ3VsYXIgZXhwcmVzc2lvbiByZSBtYXRjaGVzIGEgc3Vic3Ry
aW5nIG9mIHN0cgotLy8gKGluY2x1ZGluZyBzdHIgaXRzZWxmKS4KKy8vIFJldHVybnMgdHJ1ZSBp
ZiBhbmQgb25seSBpZiByZWd1bGFyIGV4cHJlc3Npb24gcmUgbWF0Y2hlcyBhIHN1YnN0cmluZyBv
ZgorLy8gc3RyIChpbmNsdWRpbmcgc3RyIGl0c2VsZikuCiBib29sIFJFOjpQYXJ0aWFsTWF0Y2go
Y29uc3QgY2hhciogc3RyLCBjb25zdCBSRSYgcmUpIHsKICAgaWYgKCFyZS5pc192YWxpZF8pIHJl
dHVybiBmYWxzZTsKIApAQCAtNjc5LDE0ICs3NjgsMTQgQEAgdm9pZCBSRTo6SW5pdChjb25zdCBj
aGFyKiByZWdleCkgewogCiAjZWxpZiBHVEVTVF9VU0VTX1NJTVBMRV9SRQogCi0vLyBSZXR1cm5z
IHRydWUgaWZmIGNoIGFwcGVhcnMgYW55d2hlcmUgaW4gc3RyIChleGNsdWRpbmcgdGhlCisvLyBS
ZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgY2ggYXBwZWFycyBhbnl3aGVyZSBpbiBzdHIgKGV4
Y2x1ZGluZyB0aGUKIC8vIHRlcm1pbmF0aW5nICdcMCcgY2hhcmFjdGVyKS4KIGJvb2wgSXNJblNl
dChjaGFyIGNoLCBjb25zdCBjaGFyKiBzdHIpIHsKLSAgcmV0dXJuIGNoICE9ICdcMCcgJiYgc3Ry
Y2hyKHN0ciwgY2gpICE9IE5VTEw7CisgIHJldHVybiBjaCAhPSAnXDAnICYmIHN0cmNocihzdHIs
IGNoKSAhPSBudWxscHRyOwogfQogCi0vLyBSZXR1cm5zIHRydWUgaWZmIGNoIGJlbG9uZ3MgdG8g
dGhlIGdpdmVuIGNsYXNzaWZpY2F0aW9uLiAgVW5saWtlCi0vLyBzaW1pbGFyIGZ1bmN0aW9ucyBp
biA8Y3R5cGUuaD4sIHRoZXNlIGFyZW4ndCBhZmZlY3RlZCBieSB0aGUKKy8vIFJldHVybnMgdHJ1
ZSBpZiBhbmQgb25seSBpZiBjaCBiZWxvbmdzIHRvIHRoZSBnaXZlbiBjbGFzc2lmaWNhdGlvbi4K
Ky8vIFVubGlrZSBzaW1pbGFyIGZ1bmN0aW9ucyBpbiA8Y3R5cGUuaD4sIHRoZXNlIGFyZW4ndCBh
ZmZlY3RlZCBieSB0aGUKIC8vIGN1cnJlbnQgbG9jYWxlLgogYm9vbCBJc0FzY2lpRGlnaXQoY2hh
ciBjaCkgeyByZXR1cm4gJzAnIDw9IGNoICYmIGNoIDw9ICc5JzsgfQogYm9vbCBJc0FzY2lpUHVu
Y3QoY2hhciBjaCkgewpAQCAtNjk5LDEzICs3ODgsMTMgQEAgYm9vbCBJc0FzY2lpV29yZENoYXIo
Y2hhciBjaCkgewogICAgICAgKCcwJyA8PSBjaCAmJiBjaCA8PSAnOScpIHx8IGNoID09ICdfJzsK
IH0KIAotLy8gUmV0dXJucyB0cnVlIGlmZiAiXFxjIiBpcyBhIHN1cHBvcnRlZCBlc2NhcGUgc2Vx
dWVuY2UuCisvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgIlxcYyIgaXMgYSBzdXBwb3J0
ZWQgZXNjYXBlIHNlcXVlbmNlLgogYm9vbCBJc1ZhbGlkRXNjYXBlKGNoYXIgYykgewogICByZXR1
cm4gKElzQXNjaWlQdW5jdChjKSB8fCBJc0luU2V0KGMsICJkRGZucnNTdHZ3VyIpKTsKIH0KIAot
Ly8gUmV0dXJucyB0cnVlIGlmZiB0aGUgZ2l2ZW4gYXRvbSAoc3BlY2lmaWVkIGJ5IGVzY2FwZWQg
YW5kIHBhdHRlcm4pCi0vLyBtYXRjaGVzIGNoLiAgVGhlIHJlc3VsdCBpcyB1bmRlZmluZWQgaWYg
dGhlIGF0b20gaXMgaW52YWxpZC4KKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUg
Z2l2ZW4gYXRvbSAoc3BlY2lmaWVkIGJ5IGVzY2FwZWQgYW5kCisvLyBwYXR0ZXJuKSBtYXRjaGVz
IGNoLiAgVGhlIHJlc3VsdCBpcyB1bmRlZmluZWQgaWYgdGhlIGF0b20gaXMgaW52YWxpZC4KIGJv
b2wgQXRvbU1hdGNoZXNDaGFyKGJvb2wgZXNjYXBlZCwgY2hhciBwYXR0ZXJuX2NoYXIsIGNoYXIg
Y2gpIHsKICAgaWYgKGVzY2FwZWQpIHsgIC8vICJcXHAiIHdoZXJlIHAgaXMgcGF0dGVybl9jaGFy
LgogICAgIHN3aXRjaCAocGF0dGVybl9jaGFyKSB7CkBAIC03MzYsMTcgKzgyNSwxNCBAQCBzdGF0
aWMgc3RkOjpzdHJpbmcgRm9ybWF0UmVnZXhTeW50YXhFcnJvcihjb25zdCBjaGFyKiByZWdleCwg
aW50IGluZGV4KSB7CiAvLyBHZW5lcmF0ZXMgbm9uLWZhdGFsIGZhaWx1cmVzIGFuZCByZXR1cm5z
IGZhbHNlIGlmIHJlZ2V4IGlzIGludmFsaWQ7CiAvLyBvdGhlcndpc2UgcmV0dXJucyB0cnVlLgog
Ym9vbCBWYWxpZGF0ZVJlZ2V4KGNvbnN0IGNoYXIqIHJlZ2V4KSB7Ci0gIGlmIChyZWdleCA9PSBO
VUxMKSB7Ci0gICAgLy8gRklYTUU6IGZpeCB0aGUgc291cmNlIGZpbGUgbG9jYXRpb24gaW4gdGhl
Ci0gICAgLy8gYXNzZXJ0aW9uIGZhaWx1cmVzIHRvIG1hdGNoIHdoZXJlIHRoZSByZWdleCBpcyB1
c2VkIGluIHVzZXIKLSAgICAvLyBjb2RlLgorICBpZiAocmVnZXggPT0gbnVsbHB0cikgewogICAg
IEFERF9GQUlMVVJFKCkgPDwgIk5VTEwgaXMgbm90IGEgdmFsaWQgc2ltcGxlIHJlZ3VsYXIgZXhw
cmVzc2lvbi4iOwogICAgIHJldHVybiBmYWxzZTsKICAgfQogCiAgIGJvb2wgaXNfdmFsaWQgPSB0
cnVlOwogCi0gIC8vIFRydWUgaWZmID8sICosIG9yICsgY2FuIGZvbGxvdyB0aGUgcHJldmlvdXMg
YXRvbS4KKyAgLy8gVHJ1ZSBpZiBhbmQgb25seSBpZiA/LCAqLCBvciArIGNhbiBmb2xsb3cgdGhl
IHByZXZpb3VzIGF0b20uCiAgIGJvb2wgcHJldl9yZXBlYXRhYmxlID0gZmFsc2U7CiAgIGZvciAo
aW50IGkgPSAwOyByZWdleFtpXTsgaSsrKSB7CiAgICAgaWYgKHJlZ2V4W2ldID09ICdcXCcpIHsg
IC8vIEFuIGVzY2FwZSBzZXF1ZW5jZQpAQCAtODIyLDggKzkwOCw4IEBAIGJvb2wgTWF0Y2hSZXBl
dGl0aW9uQW5kUmVnZXhBdEhlYWQoCiAgIHJldHVybiBmYWxzZTsKIH0KIAotLy8gUmV0dXJucyB0
cnVlIGlmZiByZWdleCBtYXRjaGVzIGEgcHJlZml4IG9mIHN0ci4gIHJlZ2V4IG11c3QgYmUgYQot
Ly8gdmFsaWQgc2ltcGxlIHJlZ3VsYXIgZXhwcmVzc2lvbiBhbmQgbm90IHN0YXJ0IHdpdGggIl4i
LCBvciB0aGUKKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiByZWdleCBtYXRjaGVzIGEg
cHJlZml4IG9mIHN0ci4gcmVnZXggbXVzdAorLy8gYmUgYSB2YWxpZCBzaW1wbGUgcmVndWxhciBl
eHByZXNzaW9uIGFuZCBub3Qgc3RhcnQgd2l0aCAiXiIsIG9yIHRoZQogLy8gcmVzdWx0IGlzIHVu
ZGVmaW5lZC4KIGJvb2wgTWF0Y2hSZWdleEF0SGVhZChjb25zdCBjaGFyKiByZWdleCwgY29uc3Qg
Y2hhciogc3RyKSB7CiAgIGlmICgqcmVnZXggPT0gJ1wwJykgIC8vIEFuIGVtcHR5IHJlZ2V4IG1h
dGNoZXMgYSBwcmVmaXggb2YgYW55dGhpbmcuCkBAIC04NTMsOCArOTM5LDggQEAgYm9vbCBNYXRj
aFJlZ2V4QXRIZWFkKGNvbnN0IGNoYXIqIHJlZ2V4LCBjb25zdCBjaGFyKiBzdHIpIHsKICAgfQog
fQogCi0vLyBSZXR1cm5zIHRydWUgaWZmIHJlZ2V4IG1hdGNoZXMgYW55IHN1YnN0cmluZyBvZiBz
dHIuICByZWdleCBtdXN0IGJlCi0vLyBhIHZhbGlkIHNpbXBsZSByZWd1bGFyIGV4cHJlc3Npb24s
IG9yIHRoZSByZXN1bHQgaXMgdW5kZWZpbmVkLgorLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5
IGlmIHJlZ2V4IG1hdGNoZXMgYW55IHN1YnN0cmluZyBvZiBzdHIuICByZWdleCBtdXN0CisvLyBi
ZSBhIHZhbGlkIHNpbXBsZSByZWd1bGFyIGV4cHJlc3Npb24sIG9yIHRoZSByZXN1bHQgaXMgdW5k
ZWZpbmVkLgogLy8KIC8vIFRoZSBhbGdvcml0aG0gaXMgcmVjdXJzaXZlLCBidXQgdGhlIHJlY3Vy
c2lvbiBkZXB0aCBkb2Vzbid0IGV4Y2VlZAogLy8gdGhlIHJlZ2V4IGxlbmd0aCwgc28gd2Ugd29u
J3QgbmVlZCB0byB3b3JyeSBhYm91dCBydW5uaW5nIG91dCBvZgpAQCAtODYyLDggKzk0OCw3IEBA
IGJvb2wgTWF0Y2hSZWdleEF0SGVhZChjb25zdCBjaGFyKiByZWdleCwgY29uc3QgY2hhciogc3Ry
KSB7CiAvLyBleHBvbmVudGlhbCB3aXRoIHJlc3BlY3QgdG8gdGhlIHJlZ2V4IGxlbmd0aCArIHRo
ZSBzdHJpbmcgbGVuZ3RoLAogLy8gYnV0IHVzdWFsbHkgaXQncyBtdXN0IGZhc3RlciAob2Z0ZW4g
Y2xvc2UgdG8gbGluZWFyKS4KIGJvb2wgTWF0Y2hSZWdleEFueXdoZXJlKGNvbnN0IGNoYXIqIHJl
Z2V4LCBjb25zdCBjaGFyKiBzdHIpIHsKLSAgaWYgKHJlZ2V4ID09IE5VTEwgfHwgc3RyID09IE5V
TEwpCi0gICAgcmV0dXJuIGZhbHNlOworICBpZiAocmVnZXggPT0gbnVsbHB0ciB8fCBzdHIgPT0g
bnVsbHB0cikgcmV0dXJuIGZhbHNlOwogCiAgIGlmICgqcmVnZXggPT0gJ14nKQogICAgIHJldHVy
biBNYXRjaFJlZ2V4QXRIZWFkKHJlZ2V4ICsgMSwgc3RyKTsKQEAgLTg4MywyMSArOTY4LDIxIEBA
IFJFOjp+UkUoKSB7CiAgIGZyZWUoY29uc3RfY2FzdDxjaGFyKj4oZnVsbF9wYXR0ZXJuXykpOwog
fQogCi0vLyBSZXR1cm5zIHRydWUgaWZmIHJlZ3VsYXIgZXhwcmVzc2lvbiByZSBtYXRjaGVzIHRo
ZSBlbnRpcmUgc3RyLgorLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHJlZ3VsYXIgZXhw
cmVzc2lvbiByZSBtYXRjaGVzIHRoZSBlbnRpcmUgc3RyLgogYm9vbCBSRTo6RnVsbE1hdGNoKGNv
bnN0IGNoYXIqIHN0ciwgY29uc3QgUkUmIHJlKSB7CiAgIHJldHVybiByZS5pc192YWxpZF8gJiYg
TWF0Y2hSZWdleEFueXdoZXJlKHJlLmZ1bGxfcGF0dGVybl8sIHN0cik7CiB9CiAKLS8vIFJldHVy
bnMgdHJ1ZSBpZmYgcmVndWxhciBleHByZXNzaW9uIHJlIG1hdGNoZXMgYSBzdWJzdHJpbmcgb2Yg
c3RyCi0vLyAoaW5jbHVkaW5nIHN0ciBpdHNlbGYpLgorLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBv
bmx5IGlmIHJlZ3VsYXIgZXhwcmVzc2lvbiByZSBtYXRjaGVzIGEgc3Vic3RyaW5nIG9mCisvLyBz
dHIgKGluY2x1ZGluZyBzdHIgaXRzZWxmKS4KIGJvb2wgUkU6OlBhcnRpYWxNYXRjaChjb25zdCBj
aGFyKiBzdHIsIGNvbnN0IFJFJiByZSkgewogICByZXR1cm4gcmUuaXNfdmFsaWRfICYmIE1hdGNo
UmVnZXhBbnl3aGVyZShyZS5wYXR0ZXJuXywgc3RyKTsKIH0KIAogLy8gSW5pdGlhbGl6ZXMgYW4g
UkUgZnJvbSBpdHMgc3RyaW5nIHJlcHJlc2VudGF0aW9uLgogdm9pZCBSRTo6SW5pdChjb25zdCBj
aGFyKiByZWdleCkgewotICBwYXR0ZXJuXyA9IGZ1bGxfcGF0dGVybl8gPSBOVUxMOwotICBpZiAo
cmVnZXggIT0gTlVMTCkgeworICBwYXR0ZXJuXyA9IGZ1bGxfcGF0dGVybl8gPSBudWxscHRyOwor
ICBpZiAocmVnZXggIT0gbnVsbHB0cikgewogICAgIHBhdHRlcm5fID0gcG9zaXg6OlN0ckR1cChy
ZWdleCk7CiAgIH0KIApAQCAtOTM1LDcgKzEwMjAsNyBAQCBjb25zdCBjaGFyIGtVbmtub3duRmls
ZVtdID0gInVua25vd24gZmlsZSI7CiAvLyBGb3JtYXRzIGEgc291cmNlIGZpbGUgcGF0aCBhbmQg
YSBsaW5lIG51bWJlciBhcyB0aGV5IHdvdWxkIGFwcGVhcgogLy8gaW4gYW4gZXJyb3IgbWVzc2Fn
ZSBmcm9tIHRoZSBjb21waWxlciB1c2VkIHRvIGNvbXBpbGUgdGhpcyBjb2RlLgogR1RFU1RfQVBJ
XyA6OnN0ZDo6c3RyaW5nIEZvcm1hdEZpbGVMb2NhdGlvbihjb25zdCBjaGFyKiBmaWxlLCBpbnQg
bGluZSkgewotICBjb25zdCBzdGQ6OnN0cmluZyBmaWxlX25hbWUoZmlsZSA9PSBOVUxMID8ga1Vu
a25vd25GaWxlIDogZmlsZSk7CisgIGNvbnN0IHN0ZDo6c3RyaW5nIGZpbGVfbmFtZShmaWxlID09
IG51bGxwdHIgPyBrVW5rbm93bkZpbGUgOiBmaWxlKTsKIAogICBpZiAobGluZSA8IDApIHsKICAg
ICByZXR1cm4gZmlsZV9uYW1lICsgIjoiOwpAQCAtOTU0LDcgKzEwMzksNyBAQCBHVEVTVF9BUElf
IDo6c3RkOjpzdHJpbmcgRm9ybWF0RmlsZUxvY2F0aW9uKGNvbnN0IGNoYXIqIGZpbGUsIGludCBs
aW5lKSB7CiAvLyB0byB0aGUgZmlsZSBsb2NhdGlvbiBpdCBwcm9kdWNlcywgdW5saWtlIEZvcm1h
dEZpbGVMb2NhdGlvbigpLgogR1RFU1RfQVBJXyA6OnN0ZDo6c3RyaW5nIEZvcm1hdENvbXBpbGVy
SW5kZXBlbmRlbnRGaWxlTG9jYXRpb24oCiAgICAgY29uc3QgY2hhciogZmlsZSwgaW50IGxpbmUp
IHsKLSAgY29uc3Qgc3RkOjpzdHJpbmcgZmlsZV9uYW1lKGZpbGUgPT0gTlVMTCA/IGtVbmtub3du
RmlsZSA6IGZpbGUpOworICBjb25zdCBzdGQ6OnN0cmluZyBmaWxlX25hbWUoZmlsZSA9PSBudWxs
cHRyID8ga1Vua25vd25GaWxlIDogZmlsZSk7CiAKICAgaWYgKGxpbmUgPCAwKQogICAgIHJldHVy
biBmaWxlX25hbWU7CkBAIC0xMDIxLDIwICsxMTA2LDIyIEBAIGNsYXNzIENhcHR1cmVkU3RyZWFt
IHsKICAgICAvLyBjb2RlIGFzIHBhcnQgb2YgYSByZWd1bGFyIHN0YW5kYWxvbmUgZXhlY3V0YWJs
ZSwgd2hpY2ggZG9lc24ndAogICAgIC8vIHJ1biBpbiBhIERhbHZpayBwcm9jZXNzIChlLmcuIHdo
ZW4gcnVubmluZyBpdCB0aHJvdWdoICdhZGIgc2hlbGwnKS4KICAgICAvLwotICAgIC8vIFRoZSBs
b2NhdGlvbiAvc2RjYXJkIGlzIGRpcmVjdGx5IGFjY2Vzc2libGUgZnJvbSBuYXRpdmUgY29kZQot
ICAgIC8vIGFuZCBpcyB0aGUgb25seSBsb2NhdGlvbiAodW5vZmZpY2lhbGx5KSBzdXBwb3J0ZWQg
YnkgdGhlIEFuZHJvaWQKLSAgICAvLyB0ZWFtLiBJdCdzIGdlbmVyYWxseSBhIHN5bWxpbmsgdG8g
dGhlIHJlYWwgU0QgQ2FyZCBtb3VudCBwb2ludAotICAgIC8vIHdoaWNoIGNhbiBiZSAvbW50L3Nk
Y2FyZCwgL21udC9zZGNhcmQwLCAvc3lzdGVtL21lZGlhL3NkY2FyZCwgb3IKLSAgICAvLyBvdGhl
ciBPRU0tY3VzdG9taXplZCBsb2NhdGlvbnMuIE5ldmVyIHJlbHkgb24gdGhlc2UsIGFuZCBhbHdh
eXMKLSAgICAvLyB1c2UgL3NkY2FyZC4KLSAgICBjaGFyIG5hbWVfdGVtcGxhdGVbXSA9ICIvc2Rj
YXJkL2d0ZXN0X2NhcHR1cmVkX3N0cmVhbS5YWFhYWFgiOworICAgIC8vIFRoZSBsb2NhdGlvbiAv
ZGF0YS9sb2NhbC90bXAgaXMgZGlyZWN0bHkgYWNjZXNzaWJsZSBmcm9tIG5hdGl2ZSBjb2RlLgor
ICAgIC8vICcvc2RjYXJkJyBhbmQgb3RoZXIgdmFyaWFudHMgY2Fubm90IGJlIHJlbGllZCBvbiwg
YXMgdGhleSBhcmUgbm90CisgICAgLy8gZ3VhcmFudGVlZCB0byBiZSBtb3VudGVkLCBvciBtYXkg
aGF2ZSBhIGRlbGF5IGluIG1vdW50aW5nLgorICAgIGNoYXIgbmFtZV90ZW1wbGF0ZVtdID0gIi9k
YXRhL2xvY2FsL3RtcC9ndGVzdF9jYXB0dXJlZF9zdHJlYW0uWFhYWFhYIjsKICMgIGVsc2UKICAg
ICBjaGFyIG5hbWVfdGVtcGxhdGVbXSA9ICIvdG1wL2NhcHR1cmVkX3N0cmVhbS5YWFhYWFgiOwog
IyAgZW5kaWYgIC8vIEdURVNUX09TX0xJTlVYX0FORFJPSUQKICAgICBjb25zdCBpbnQgY2FwdHVy
ZWRfZmQgPSBta3N0ZW1wKG5hbWVfdGVtcGxhdGUpOworICAgIGlmIChjYXB0dXJlZF9mZCA9PSAt
MSkgeworICAgICAgR1RFU1RfTE9HXyhXQVJOSU5HKQorICAgICAgICAgIDw8ICJGYWlsZWQgdG8g
Y3JlYXRlIHRtcCBmaWxlICIgPDwgbmFtZV90ZW1wbGF0ZQorICAgICAgICAgIDw8ICIgZm9yIHRl
c3Q7IGRvZXMgdGhlIHRlc3QgaGF2ZSBhY2Nlc3MgdG8gdGhlIC90bXAgZGlyZWN0b3J5PyI7Cisg
ICAgfQogICAgIGZpbGVuYW1lXyA9IG5hbWVfdGVtcGxhdGU7CiAjIGVuZGlmICAvLyBHVEVTVF9P
U19XSU5ET1dTCi0gICAgZmZsdXNoKE5VTEwpOworICAgIGZmbHVzaChudWxscHRyKTsKICAgICBk
dXAyKGNhcHR1cmVkX2ZkLCBmZF8pOwogICAgIGNsb3NlKGNhcHR1cmVkX2ZkKTsKICAgfQpAQCAt
MTA0NiwxMyArMTEzMywxNyBAQCBjbGFzcyBDYXB0dXJlZFN0cmVhbSB7CiAgIHN0ZDo6c3RyaW5n
IEdldENhcHR1cmVkU3RyaW5nKCkgewogICAgIGlmICh1bmNhcHR1cmVkX2ZkXyAhPSAtMSkgewog
ICAgICAgLy8gUmVzdG9yZXMgdGhlIG9yaWdpbmFsIHN0cmVhbS4KLSAgICAgIGZmbHVzaChOVUxM
KTsKKyAgICAgIGZmbHVzaChudWxscHRyKTsKICAgICAgIGR1cDIodW5jYXB0dXJlZF9mZF8sIGZk
Xyk7CiAgICAgICBjbG9zZSh1bmNhcHR1cmVkX2ZkXyk7CiAgICAgICB1bmNhcHR1cmVkX2ZkXyA9
IC0xOwogICAgIH0KIAogICAgIEZJTEUqIGNvbnN0IGZpbGUgPSBwb3NpeDo6Rk9wZW4oZmlsZW5h
bWVfLmNfc3RyKCksICJyIik7CisgICAgaWYgKGZpbGUgPT0gbnVsbHB0cikgeworICAgICAgR1RF
U1RfTE9HXyhGQVRBTCkgPDwgIkZhaWxlZCB0byBvcGVuIHRtcCBmaWxlICIgPDwgZmlsZW5hbWVf
CisgICAgICAgICAgICAgICAgICAgICAgICA8PCAiIGZvciBjYXB0dXJpbmcgc3RyZWFtLiI7Cisg
ICAgfQogICAgIGNvbnN0IHN0ZDo6c3RyaW5nIGNvbnRlbnQgPSBSZWFkRW50aXJlRmlsZShmaWxl
KTsKICAgICBwb3NpeDo6RkNsb3NlKGZpbGUpOwogICAgIHJldHVybiBjb250ZW50OwpAQCAtMTA2
OSwxMyArMTE2MCwxMyBAQCBjbGFzcyBDYXB0dXJlZFN0cmVhbSB7CiAKIEdURVNUX0RJU0FCTEVf
TVNDX0RFUFJFQ0FURURfUE9QXygpCiAKLXN0YXRpYyBDYXB0dXJlZFN0cmVhbSogZ19jYXB0dXJl
ZF9zdGRlcnIgPSBOVUxMOwotc3RhdGljIENhcHR1cmVkU3RyZWFtKiBnX2NhcHR1cmVkX3N0ZG91
dCA9IE5VTEw7CitzdGF0aWMgQ2FwdHVyZWRTdHJlYW0qIGdfY2FwdHVyZWRfc3RkZXJyID0gbnVs
bHB0cjsKK3N0YXRpYyBDYXB0dXJlZFN0cmVhbSogZ19jYXB0dXJlZF9zdGRvdXQgPSBudWxscHRy
OwogCiAvLyBTdGFydHMgY2FwdHVyaW5nIGFuIG91dHB1dCBzdHJlYW0gKHN0ZG91dC9zdGRlcnIp
Lgogc3RhdGljIHZvaWQgQ2FwdHVyZVN0cmVhbShpbnQgZmQsIGNvbnN0IGNoYXIqIHN0cmVhbV9u
YW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICBDYXB0dXJlZFN0cmVhbSoqIHN0cmVhbSkg
ewotICBpZiAoKnN0cmVhbSAhPSBOVUxMKSB7CisgIGlmICgqc3RyZWFtICE9IG51bGxwdHIpIHsK
ICAgICBHVEVTVF9MT0dfKEZBVEFMKSA8PCAiT25seSBvbmUgIiA8PCBzdHJlYW1fbmFtZQogICAg
ICAgICAgICAgICAgICAgICAgIDw8ICIgY2FwdHVyZXIgY2FuIGV4aXN0IGF0IGEgdGltZS4iOwog
ICB9CkBAIC0xMDg3LDcgKzExNzgsNyBAQCBzdGF0aWMgc3RkOjpzdHJpbmcgR2V0Q2FwdHVyZWRT
dHJlYW0oQ2FwdHVyZWRTdHJlYW0qKiBjYXB0dXJlZF9zdHJlYW0pIHsKICAgY29uc3Qgc3RkOjpz
dHJpbmcgY29udGVudCA9ICgqY2FwdHVyZWRfc3RyZWFtKS0+R2V0Q2FwdHVyZWRTdHJpbmcoKTsK
IAogICBkZWxldGUgKmNhcHR1cmVkX3N0cmVhbTsKLSAgKmNhcHR1cmVkX3N0cmVhbSA9IE5VTEw7
CisgICpjYXB0dXJlZF9zdHJlYW0gPSBudWxscHRyOwogCiAgIHJldHVybiBjb250ZW50OwogfQpA
QCAtMTE0NiwxMCArMTIzNywxMSBAQCBzdGQ6OnN0cmluZyBSZWFkRW50aXJlRmlsZShGSUxFKiBm
aWxlKSB7CiB9CiAKICNpZiBHVEVTVF9IQVNfREVBVEhfVEVTVAotc3RhdGljIGNvbnN0IHN0ZDo6
dmVjdG9yPHN0ZDo6c3RyaW5nPiogZ19pbmplY3RlZF90ZXN0X2FyZ3ZzID0gTlVMTDsgIC8vIE93
bmVkLgorc3RhdGljIGNvbnN0IHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiogZ19pbmplY3RlZF90
ZXN0X2FyZ3ZzID0KKyAgICBudWxscHRyOyAgLy8gT3duZWQuCiAKIHN0ZDo6dmVjdG9yPHN0ZDo6
c3RyaW5nPiBHZXRJbmplY3RhYmxlQXJndnMoKSB7Ci0gIGlmIChnX2luamVjdGVkX3Rlc3RfYXJn
dnMgIT0gTlVMTCkgeworICBpZiAoZ19pbmplY3RlZF90ZXN0X2FyZ3ZzICE9IG51bGxwdHIpIHsK
ICAgICByZXR1cm4gKmdfaW5qZWN0ZWRfdGVzdF9hcmd2czsKICAgfQogICByZXR1cm4gR2V0QXJn
dnMoKTsKQEAgLTExNjUsMTYgKzEyNTcsOSBAQCB2b2lkIFNldEluamVjdGFibGVBcmd2cyhjb25z
dCBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4mIG5ld19hcmd2cykgewogICAgICAgbmV3IHN0ZDo6
dmVjdG9yPHN0ZDo6c3RyaW5nPihuZXdfYXJndnMuYmVnaW4oKSwgbmV3X2FyZ3ZzLmVuZCgpKSk7
CiB9CiAKLSNpZiBHVEVTVF9IQVNfR0xPQkFMX1NUUklORwotdm9pZCBTZXRJbmplY3RhYmxlQXJn
dnMoY29uc3Qgc3RkOjp2ZWN0b3I8IDo6c3RyaW5nPiYgbmV3X2FyZ3ZzKSB7Ci0gIFNldEluamVj
dGFibGVBcmd2cygKLSAgICAgIG5ldyBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4obmV3X2FyZ3Zz
LmJlZ2luKCksIG5ld19hcmd2cy5lbmQoKSkpOwotfQotI2VuZGlmICAvLyBHVEVTVF9IQVNfR0xP
QkFMX1NUUklORwotCiB2b2lkIENsZWFySW5qZWN0YWJsZUFyZ3ZzKCkgewogICBkZWxldGUgZ19p
bmplY3RlZF90ZXN0X2FyZ3ZzOwotICBnX2luamVjdGVkX3Rlc3RfYXJndnMgPSBOVUxMOworICBn
X2luamVjdGVkX3Rlc3RfYXJndnMgPSBudWxscHRyOwogfQogI2VuZGlmICAvLyBHVEVTVF9IQVNf
REVBVEhfVEVTVAogCkBAIC0xMjA1LDkgKzEyOTAsOSBAQCBzdGF0aWMgc3RkOjpzdHJpbmcgRmxh
Z1RvRW52VmFyKGNvbnN0IGNoYXIqIGZsYWcpIHsKIC8vIFBhcnNlcyAnc3RyJyBmb3IgYSAzMi1i
aXQgc2lnbmVkIGludGVnZXIuICBJZiBzdWNjZXNzZnVsLCB3cml0ZXMKIC8vIHRoZSByZXN1bHQg
dG8gKnZhbHVlIGFuZCByZXR1cm5zIHRydWU7IG90aGVyd2lzZSBsZWF2ZXMgKnZhbHVlCiAvLyB1
bmNoYW5nZWQgYW5kIHJldHVybnMgZmFsc2UuCi1ib29sIFBhcnNlSW50MzIoY29uc3QgTWVzc2Fn
ZSYgc3JjX3RleHQsIGNvbnN0IGNoYXIqIHN0ciwgSW50MzIqIHZhbHVlKSB7Citib29sIFBhcnNl
SW50MzIoY29uc3QgTWVzc2FnZSYgc3JjX3RleHQsIGNvbnN0IGNoYXIqIHN0ciwgaW50MzJfdCog
dmFsdWUpIHsKICAgLy8gUGFyc2VzIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSBhcyBhIGRlY2lt
YWwgaW50ZWdlci4KLSAgY2hhciogZW5kID0gTlVMTDsKKyAgY2hhciogZW5kID0gbnVsbHB0cjsK
ICAgY29uc3QgbG9uZyBsb25nX3ZhbHVlID0gc3RydG9sKHN0ciwgJmVuZCwgMTApOyAgLy8gTk9M
SU5UCiAKICAgLy8gSGFzIHN0cnRvbCgpIGNvbnN1bWVkIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBz
dHJpbmc/CkBAIC0xMjIyLDEzICsxMzA3LDEzIEBAIGJvb2wgUGFyc2VJbnQzMihjb25zdCBNZXNz
YWdlJiBzcmNfdGV4dCwgY29uc3QgY2hhciogc3RyLCBJbnQzMiogdmFsdWUpIHsKICAgICByZXR1
cm4gZmFsc2U7CiAgIH0KIAotICAvLyBJcyB0aGUgcGFyc2VkIHZhbHVlIGluIHRoZSByYW5nZSBv
ZiBhbiBJbnQzMj8KLSAgY29uc3QgSW50MzIgcmVzdWx0ID0gc3RhdGljX2Nhc3Q8SW50MzI+KGxv
bmdfdmFsdWUpOworICAvLyBJcyB0aGUgcGFyc2VkIHZhbHVlIGluIHRoZSByYW5nZSBvZiBhbiBp
bnQzMl90PworICBjb25zdCBhdXRvIHJlc3VsdCA9IHN0YXRpY19jYXN0PGludDMyX3Q+KGxvbmdf
dmFsdWUpOwogICBpZiAobG9uZ192YWx1ZSA9PSBMT05HX01BWCB8fCBsb25nX3ZhbHVlID09IExP
TkdfTUlOIHx8CiAgICAgICAvLyBUaGUgcGFyc2VkIHZhbHVlIG92ZXJmbG93cyBhcyBhIGxvbmcu
ICAoc3RydG9sKCkgcmV0dXJucwogICAgICAgLy8gTE9OR19NQVggb3IgTE9OR19NSU4gd2hlbiB0
aGUgaW5wdXQgb3ZlcmZsb3dzLikKICAgICAgIHJlc3VsdCAhPSBsb25nX3ZhbHVlCi0gICAgICAv
LyBUaGUgcGFyc2VkIHZhbHVlIG92ZXJmbG93cyBhcyBhbiBJbnQzMi4KKyAgICAgIC8vIFRoZSBw
YXJzZWQgdmFsdWUgb3ZlcmZsb3dzIGFzIGFuIGludDMyX3QuCiAgICAgICApIHsKICAgICBNZXNz
YWdlIG1zZzsKICAgICBtc2cgPDwgIldBUk5JTkc6ICIgPDwgc3JjX3RleHQKQEAgLTEyNDYsMzMg
KzEzMzEsMzMgQEAgYm9vbCBQYXJzZUludDMyKGNvbnN0IE1lc3NhZ2UmIHNyY190ZXh0LCBjb25z
dCBjaGFyKiBzdHIsIEludDMyKiB2YWx1ZSkgewogLy8gUmVhZHMgYW5kIHJldHVybnMgdGhlIEJv
b2xlYW4gZW52aXJvbm1lbnQgdmFyaWFibGUgY29ycmVzcG9uZGluZyB0bwogLy8gdGhlIGdpdmVu
IGZsYWc7IGlmIGl0J3Mgbm90IHNldCwgcmV0dXJucyBkZWZhdWx0X3ZhbHVlLgogLy8KLS8vIFRo
ZSB2YWx1ZSBpcyBjb25zaWRlcmVkIHRydWUgaWZmIGl0J3Mgbm90ICIwIi4KKy8vIFRoZSB2YWx1
ZSBpcyBjb25zaWRlcmVkIHRydWUgaWYgYW5kIG9ubHkgaWYgaXQncyBub3QgIjAiLgogYm9vbCBC
b29sRnJvbUdUZXN0RW52KGNvbnN0IGNoYXIqIGZsYWcsIGJvb2wgZGVmYXVsdF92YWx1ZSkgewog
I2lmIGRlZmluZWQoR1RFU1RfR0VUX0JPT0xfRlJPTV9FTlZfKQogICByZXR1cm4gR1RFU1RfR0VU
X0JPT0xfRlJPTV9FTlZfKGZsYWcsIGRlZmF1bHRfdmFsdWUpOwogI2Vsc2UKICAgY29uc3Qgc3Rk
OjpzdHJpbmcgZW52X3ZhciA9IEZsYWdUb0VudlZhcihmbGFnKTsKICAgY29uc3QgY2hhciogY29u
c3Qgc3RyaW5nX3ZhbHVlID0gcG9zaXg6OkdldEVudihlbnZfdmFyLmNfc3RyKCkpOwotICByZXR1
cm4gc3RyaW5nX3ZhbHVlID09IE5VTEwgPwotICAgICAgZGVmYXVsdF92YWx1ZSA6IHN0cmNtcChz
dHJpbmdfdmFsdWUsICIwIikgIT0gMDsKKyAgcmV0dXJuIHN0cmluZ192YWx1ZSA9PSBudWxscHRy
ID8gZGVmYXVsdF92YWx1ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBzdHJj
bXAoc3RyaW5nX3ZhbHVlLCAiMCIpICE9IDA7CiAjZW5kaWYgIC8vIGRlZmluZWQoR1RFU1RfR0VU
X0JPT0xfRlJPTV9FTlZfKQogfQogCiAvLyBSZWFkcyBhbmQgcmV0dXJucyBhIDMyLWJpdCBpbnRl
Z2VyIHN0b3JlZCBpbiB0aGUgZW52aXJvbm1lbnQKIC8vIHZhcmlhYmxlIGNvcnJlc3BvbmRpbmcg
dG8gdGhlIGdpdmVuIGZsYWc7IGlmIGl0IGlzbid0IHNldCBvcgogLy8gZG9lc24ndCByZXByZXNl
bnQgYSB2YWxpZCAzMi1iaXQgaW50ZWdlciwgcmV0dXJucyBkZWZhdWx0X3ZhbHVlLgotSW50MzIg
SW50MzJGcm9tR1Rlc3RFbnYoY29uc3QgY2hhciogZmxhZywgSW50MzIgZGVmYXVsdF92YWx1ZSkg
eworaW50MzJfdCBJbnQzMkZyb21HVGVzdEVudihjb25zdCBjaGFyKiBmbGFnLCBpbnQzMl90IGRl
ZmF1bHRfdmFsdWUpIHsKICNpZiBkZWZpbmVkKEdURVNUX0dFVF9JTlQzMl9GUk9NX0VOVl8pCiAg
IHJldHVybiBHVEVTVF9HRVRfSU5UMzJfRlJPTV9FTlZfKGZsYWcsIGRlZmF1bHRfdmFsdWUpOwog
I2Vsc2UKICAgY29uc3Qgc3RkOjpzdHJpbmcgZW52X3ZhciA9IEZsYWdUb0VudlZhcihmbGFnKTsK
ICAgY29uc3QgY2hhciogY29uc3Qgc3RyaW5nX3ZhbHVlID0gcG9zaXg6OkdldEVudihlbnZfdmFy
LmNfc3RyKCkpOwotICBpZiAoc3RyaW5nX3ZhbHVlID09IE5VTEwpIHsKKyAgaWYgKHN0cmluZ192
YWx1ZSA9PSBudWxscHRyKSB7CiAgICAgLy8gVGhlIGVudmlyb25tZW50IHZhcmlhYmxlIGlzIG5v
dCBzZXQuCiAgICAgcmV0dXJuIGRlZmF1bHRfdmFsdWU7CiAgIH0KIAotICBJbnQzMiByZXN1bHQg
PSBkZWZhdWx0X3ZhbHVlOworICBpbnQzMl90IHJlc3VsdCA9IGRlZmF1bHRfdmFsdWU7CiAgIGlm
ICghUGFyc2VJbnQzMihNZXNzYWdlKCkgPDwgIkVudmlyb25tZW50IHZhcmlhYmxlICIgPDwgZW52
X3ZhciwKICAgICAgICAgICAgICAgICAgIHN0cmluZ192YWx1ZSwgJnJlc3VsdCkpIHsKICAgICBw
cmludGYoIlRoZSBkZWZhdWx0IHZhbHVlICVzIGlzIHVzZWQuXG4iLApAQCAtMTI5Niw3ICsxMzgx
LDcgQEAgSW50MzIgSW50MzJGcm9tR1Rlc3RFbnYoY29uc3QgY2hhciogZmxhZywgSW50MzIgZGVm
YXVsdF92YWx1ZSkgewogc3RkOjpzdHJpbmcgT3V0cHV0RmxhZ0Fsc29DaGVja0VudlZhcigpewog
ICBzdGQ6OnN0cmluZyBkZWZhdWx0X3ZhbHVlX2Zvcl9vdXRwdXRfZmxhZyA9ICIiOwogICBjb25z
dCBjaGFyKiB4bWxfb3V0cHV0X2ZpbGVfZW52ID0gcG9zaXg6OkdldEVudigiWE1MX09VVFBVVF9G
SUxFIik7Ci0gIGlmIChOVUxMICE9IHhtbF9vdXRwdXRfZmlsZV9lbnYpIHsKKyAgaWYgKG51bGxw
dHIgIT0geG1sX291dHB1dF9maWxlX2VudikgewogICAgIGRlZmF1bHRfdmFsdWVfZm9yX291dHB1
dF9mbGFnID0gc3RkOjpzdHJpbmcoInhtbDoiKSArIHhtbF9vdXRwdXRfZmlsZV9lbnY7CiAgIH0K
ICAgcmV0dXJuIGRlZmF1bHRfdmFsdWVfZm9yX291dHB1dF9mbGFnOwpAQCAtMTMxMCw3ICsxMzk1
LDcgQEAgY29uc3QgY2hhciogU3RyaW5nRnJvbUdUZXN0RW52KGNvbnN0IGNoYXIqIGZsYWcsIGNv
bnN0IGNoYXIqIGRlZmF1bHRfdmFsdWUpIHsKICNlbHNlCiAgIGNvbnN0IHN0ZDo6c3RyaW5nIGVu
dl92YXIgPSBGbGFnVG9FbnZWYXIoZmxhZyk7CiAgIGNvbnN0IGNoYXIqIGNvbnN0IHZhbHVlID0g
cG9zaXg6OkdldEVudihlbnZfdmFyLmNfc3RyKCkpOwotICByZXR1cm4gdmFsdWUgPT0gTlVMTCA/
IGRlZmF1bHRfdmFsdWUgOiB2YWx1ZTsKKyAgcmV0dXJuIHZhbHVlID09IG51bGxwdHIgPyBkZWZh
dWx0X3ZhbHVlIDogdmFsdWU7CiAjZW5kaWYgIC8vIGRlZmluZWQoR1RFU1RfR0VUX1NUUklOR19G
Uk9NX0VOVl8pCiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xl
dGVzdC9zcmMvc3JjL2d0ZXN0LXByaW50ZXJzLmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9n
b29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3QtcHJpbnRlcnMuY2MKaW5kZXggYjUwMjI1NDlmOTAyOTgy
MzVhMjczNjRlY2E3ZDQ5ZTQwNjk5MTE5NC4uMzMzN2JlMzEyZWE0MDBmZjc4Yzc4NzY2ZWM0YTVi
YTIyOWIwMjA2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0
L3NyYy9zcmMvZ3Rlc3QtcHJpbnRlcnMuY2MKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9n
b29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3QtcHJpbnRlcnMuY2MKQEAgLTU5LDYgKzU5LDcgQEAgdXNp
bmcgOjpzdGQ6Om9zdHJlYW07CiAvLyBQcmludHMgYSBzZWdtZW50IG9mIGJ5dGVzIGluIHRoZSBn
aXZlbiBvYmplY3QuCiBHVEVTVF9BVFRSSUJVVEVfTk9fU0FOSVRJWkVfTUVNT1JZXwogR1RFU1Rf
QVRUUklCVVRFX05PX1NBTklUSVpFX0FERFJFU1NfCitHVEVTVF9BVFRSSUJVVEVfTk9fU0FOSVRJ
WkVfSFdBRERSRVNTXwogR1RFU1RfQVRUUklCVVRFX05PX1NBTklUSVpFX1RIUkVBRF8KIHZvaWQg
UHJpbnRCeXRlU2VnbWVudEluT2JqZWN0VG8oY29uc3QgdW5zaWduZWQgY2hhciogb2JqX2J5dGVz
LCBzaXplX3Qgc3RhcnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBj
b3VudCwgb3N0cmVhbSogb3MpIHsKQEAgLTg5LDcgKzkwLDYgQEAgdm9pZCBQcmludEJ5dGVzSW5P
YmplY3RUb0ltcGwoY29uc3QgdW5zaWduZWQgY2hhciogb2JqX2J5dGVzLCBzaXplX3QgY291bnQs
CiAgIC8vIElmIHRoZSBvYmplY3Qgc2l6ZSBpcyBiaWdnZXIgdGhhbiBrVGhyZXNob2xkLCB3ZSds
bCBoYXZlIHRvIG9taXQKICAgLy8gc29tZSBkZXRhaWxzIGJ5IHByaW50aW5nIG9ubHkgdGhlIGZp
cnN0IGFuZCB0aGUgbGFzdCBrQ2h1bmtTaXplCiAgIC8vIGJ5dGVzLgotICAvLyBGSVhNRTogbGV0
IHRoZSB1c2VyIGNvbnRyb2wgdGhlIHRocmVzaG9sZCB1c2luZyBhIGZsYWcuCiAgIGlmIChjb3Vu
dCA8IGtUaHJlc2hvbGQpIHsKICAgICBQcmludEJ5dGVTZWdtZW50SW5PYmplY3RUbyhvYmpfYnl0
ZXMsIDAsIGNvdW50LCBvcyk7CiAgIH0gZWxzZSB7CkBAIC0xNDQsNyArMTQ0LDggQEAgaW5saW5l
IGJvb2wgSXNQcmludGFibGVBc2NpaSh3Y2hhcl90IGMpIHsKIC8vIHdoaWNoIGlzIHRoZSB0eXBl
IG9mIGMuCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgVW5zaWduZWRDaGFyLCB0eXBlbmFtZSBDaGFyPgog
c3RhdGljIENoYXJGb3JtYXQgUHJpbnRBc0NoYXJMaXRlcmFsVG8oQ2hhciBjLCBvc3RyZWFtKiBv
cykgewotICBzd2l0Y2ggKHN0YXRpY19jYXN0PHdjaGFyX3Q+KGMpKSB7CisgIHdjaGFyX3Qgd19j
ID0gc3RhdGljX2Nhc3Q8d2NoYXJfdD4oYyk7CisgIHN3aXRjaCAod19jKSB7CiAgICAgY2FzZSBM
J1wwJzoKICAgICAgICpvcyA8PCAiXFwwIjsKICAgICAgIGJyZWFrOwpAQCAtMTc2LDcgKzE3Nyw3
IEBAIHN0YXRpYyBDaGFyRm9ybWF0IFByaW50QXNDaGFyTGl0ZXJhbFRvKENoYXIgYywgb3N0cmVh
bSogb3MpIHsKICAgICAgICpvcyA8PCAiXFx2IjsKICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6
Ci0gICAgICBpZiAoSXNQcmludGFibGVBc2NpaShjKSkgeworICAgICAgaWYgKElzUHJpbnRhYmxl
QXNjaWkod19jKSkgewogICAgICAgICAqb3MgPDwgc3RhdGljX2Nhc3Q8Y2hhcj4oYyk7CiAgICAg
ICAgIHJldHVybiBrQXNJczsKICAgICAgIH0gZWxzZSB7CkBAIC0yMzYsNyArMjM3LDcgQEAgdm9p
ZCBQcmludENoYXJBbmRDb2RlVG8oQ2hhciBjLCBvc3RyZWFtKiBvcykgewogICBpZiAoZm9ybWF0
ID09IGtIZXhFc2NhcGUgfHwgKDEgPD0gYyAmJiBjIDw9IDkpKSB7CiAgICAgLy8gRG8gbm90aGlu
Zy4KICAgfSBlbHNlIHsKLSAgICAqb3MgPDwgIiwgMHgiIDw8IFN0cmluZzo6Rm9ybWF0SGV4SW50
KHN0YXRpY19jYXN0PFVuc2lnbmVkQ2hhcj4oYykpOworICAgICpvcyA8PCAiLCAweCIgPDwgU3Ry
aW5nOjpGb3JtYXRIZXhJbnQoc3RhdGljX2Nhc3Q8aW50PihjKSk7CiAgIH0KICAgKm9zIDw8ICIp
IjsKIH0KQEAgLTI2MSw2ICsyNjIsNyBAQCB2b2lkIFByaW50VG8od2NoYXJfdCB3Yywgb3N0cmVh
bSogb3MpIHsKIHRlbXBsYXRlIDx0eXBlbmFtZSBDaGFyVHlwZT4KIEdURVNUX0FUVFJJQlVURV9O
T19TQU5JVElaRV9NRU1PUllfCiBHVEVTVF9BVFRSSUJVVEVfTk9fU0FOSVRJWkVfQUREUkVTU18K
K0dURVNUX0FUVFJJQlVURV9OT19TQU5JVElaRV9IV0FERFJFU1NfCiBHVEVTVF9BVFRSSUJVVEVf
Tk9fU0FOSVRJWkVfVEhSRUFEXwogc3RhdGljIENoYXJGb3JtYXQgUHJpbnRDaGFyc0FzU3RyaW5n
VG8oCiAgICAgY29uc3QgQ2hhclR5cGUqIGJlZ2luLCBzaXplX3QgbGVuLCBvc3RyZWFtKiBvcykg
ewpAQCAtMjkxLDYgKzI5Myw3IEBAIHN0YXRpYyBDaGFyRm9ybWF0IFByaW50Q2hhcnNBc1N0cmlu
Z1RvKAogdGVtcGxhdGUgPHR5cGVuYW1lIENoYXJUeXBlPgogR1RFU1RfQVRUUklCVVRFX05PX1NB
TklUSVpFX01FTU9SWV8KIEdURVNUX0FUVFJJQlVURV9OT19TQU5JVElaRV9BRERSRVNTXworR1RF
U1RfQVRUUklCVVRFX05PX1NBTklUSVpFX0hXQUREUkVTU18KIEdURVNUX0FUVFJJQlVURV9OT19T
QU5JVElaRV9USFJFQURfCiBzdGF0aWMgdm9pZCBVbml2ZXJzYWxQcmludENoYXJBcnJheSgKICAg
ICBjb25zdCBDaGFyVHlwZSogYmVnaW4sIHNpemVfdCBsZW4sIG9zdHJlYW0qIG9zKSB7CkBAIC0z
MjcsNyArMzMwLDcgQEAgdm9pZCBVbml2ZXJzYWxQcmludEFycmF5KGNvbnN0IHdjaGFyX3QqIGJl
Z2luLCBzaXplX3QgbGVuLCBvc3RyZWFtKiBvcykgewogCiAvLyBQcmludHMgdGhlIGdpdmVuIEMg
c3RyaW5nIHRvIHRoZSBvc3RyZWFtLgogdm9pZCBQcmludFRvKGNvbnN0IGNoYXIqIHMsIG9zdHJl
YW0qIG9zKSB7Ci0gIGlmIChzID09IE5VTEwpIHsKKyAgaWYgKHMgPT0gbnVsbHB0cikgewogICAg
ICpvcyA8PCAiTlVMTCI7CiAgIH0gZWxzZSB7CiAgICAgKm9zIDw8IEltcGxpY2l0Q2FzdF88Y29u
c3Qgdm9pZCo+KHMpIDw8ICIgcG9pbnRpbmcgdG8gIjsKQEAgLTM0NCw3ICszNDcsNyBAQCB2b2lk
IFByaW50VG8oY29uc3QgY2hhciogcywgb3N0cmVhbSogb3MpIHsKICNpZiAhZGVmaW5lZChfTVND
X1ZFUikgfHwgZGVmaW5lZChfTkFUSVZFX1dDSEFSX1RfREVGSU5FRCkKIC8vIFByaW50cyB0aGUg
Z2l2ZW4gd2lkZSBDIHN0cmluZyB0byB0aGUgb3N0cmVhbS4KIHZvaWQgUHJpbnRUbyhjb25zdCB3
Y2hhcl90KiBzLCBvc3RyZWFtKiBvcykgewotICBpZiAocyA9PSBOVUxMKSB7CisgIGlmIChzID09
IG51bGxwdHIpIHsKICAgICAqb3MgPDwgIk5VTEwiOwogICB9IGVsc2UgewogICAgICpvcyA8PCBJ
bXBsaWNpdENhc3RfPGNvbnN0IHZvaWQqPihzKSA8PCAiIHBvaW50aW5nIHRvICI7CkBAIC00MjAs
MTcgKzQyMyw2IEBAIHZvaWQgQ29uZGl0aW9uYWxQcmludEFzVGV4dChjb25zdCBjaGFyKiBzdHIs
IHNpemVfdCBsZW5ndGgsIG9zdHJlYW0qIG9zKSB7CiAKIH0gIC8vIGFub255bW91cyBuYW1lc3Bh
Y2UKIAotLy8gUHJpbnRzIGEgOjpzdHJpbmcgb2JqZWN0LgotI2lmIEdURVNUX0hBU19HTE9CQUxf
U1RSSU5HCi12b2lkIFByaW50U3RyaW5nVG8oY29uc3QgOjpzdHJpbmcmIHMsIG9zdHJlYW0qIG9z
KSB7Ci0gIGlmIChQcmludENoYXJzQXNTdHJpbmdUbyhzLmRhdGEoKSwgcy5zaXplKCksIG9zKSA9
PSBrSGV4RXNjYXBlKSB7Ci0gICAgaWYgKEdURVNUX0ZMQUcocHJpbnRfdXRmOCkpIHsKLSAgICAg
IENvbmRpdGlvbmFsUHJpbnRBc1RleHQocy5kYXRhKCksIHMuc2l6ZSgpLCBvcyk7Ci0gICAgfQot
ICB9Ci19Ci0jZW5kaWYgIC8vIEdURVNUX0hBU19HTE9CQUxfU1RSSU5HCi0KIHZvaWQgUHJpbnRT
dHJpbmdUbyhjb25zdCA6OnN0ZDo6c3RyaW5nJiBzLCBvc3RyZWFtKiBvcykgewogICBpZiAoUHJp
bnRDaGFyc0FzU3RyaW5nVG8ocy5kYXRhKCksIHMuc2l6ZSgpLCBvcykgPT0ga0hleEVzY2FwZSkg
ewogICAgIGlmIChHVEVTVF9GTEFHKHByaW50X3V0ZjgpKSB7CkBAIC00MzksMTMgKzQzMSw2IEBA
IHZvaWQgUHJpbnRTdHJpbmdUbyhjb25zdCA6OnN0ZDo6c3RyaW5nJiBzLCBvc3RyZWFtKiBvcykg
ewogICB9CiB9CiAKLS8vIFByaW50cyBhIDo6d3N0cmluZyBvYmplY3QuCi0jaWYgR1RFU1RfSEFT
X0dMT0JBTF9XU1RSSU5HCi12b2lkIFByaW50V2lkZVN0cmluZ1RvKGNvbnN0IDo6d3N0cmluZyYg
cywgb3N0cmVhbSogb3MpIHsKLSAgUHJpbnRDaGFyc0FzU3RyaW5nVG8ocy5kYXRhKCksIHMuc2l6
ZSgpLCBvcyk7Ci19Ci0jZW5kaWYgIC8vIEdURVNUX0hBU19HTE9CQUxfV1NUUklORwotCiAjaWYg
R1RFU1RfSEFTX1NURF9XU1RSSU5HCiB2b2lkIFByaW50V2lkZVN0cmluZ1RvKGNvbnN0IDo6c3Rk
Ojp3c3RyaW5nJiBzLCBvc3RyZWFtKiBvcykgewogICBQcmludENoYXJzQXNTdHJpbmdUbyhzLmRh
dGEoKSwgcy5zaXplKCksIG9zKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkv
Z29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0LXRlc3QtcGFydC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRf
cGFydHkvZ29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0LXRlc3QtcGFydC5jYwppbmRleCBjODg4NjBk
OTIzODU2MTllYTY3NjQ4ODQ1ODM5ZDE0NTgzZjExMTQ2Li5hOTM4NjgzY2VkZWQyZjM0Njk3ZWZk
ODMwNWE2NzM2ODA2NGQwMTk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dv
b2dsZXRlc3Qvc3JjL3NyYy9ndGVzdC10ZXN0LXBhcnQuY2MKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGly
ZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3QtdGVzdC1wYXJ0LmNjCkBAIC0zMSw2ICsz
MSw4IEBACiAvLyBUaGUgR29vZ2xlIEMrKyBUZXN0aW5nIGFuZCBNb2NraW5nIEZyYW1ld29yayAo
R29vZ2xlIFRlc3QpCiAKICNpbmNsdWRlICJndGVzdC9ndGVzdC10ZXN0LXBhcnQuaCIKKworI2lu
Y2x1ZGUgImd0ZXN0L2ludGVybmFsL2d0ZXN0LXBvcnQuaCIKICNpbmNsdWRlICJzcmMvZ3Rlc3Qt
aW50ZXJuYWwtaW5sLmgiCiAKIG5hbWVzcGFjZSB0ZXN0aW5nIHsKQEAgLTQxLDE4ICs0MywyMyBA
QCB1c2luZyBpbnRlcm5hbDo6R2V0VW5pdFRlc3RJbXBsOwogLy8gaW4gaXQuCiBzdGQ6OnN0cmlu
ZyBUZXN0UGFydFJlc3VsdDo6RXh0cmFjdFN1bW1hcnkoY29uc3QgY2hhciogbWVzc2FnZSkgewog
ICBjb25zdCBjaGFyKiBjb25zdCBzdGFja190cmFjZSA9IHN0cnN0cihtZXNzYWdlLCBpbnRlcm5h
bDo6a1N0YWNrVHJhY2VNYXJrZXIpOwotICByZXR1cm4gc3RhY2tfdHJhY2UgPT0gTlVMTCA/IG1l
c3NhZ2UgOgotICAgICAgc3RkOjpzdHJpbmcobWVzc2FnZSwgc3RhY2tfdHJhY2UpOworICByZXR1
cm4gc3RhY2tfdHJhY2UgPT0gbnVsbHB0ciA/IG1lc3NhZ2UgOiBzdGQ6OnN0cmluZyhtZXNzYWdl
LCBzdGFja190cmFjZSk7CiB9CiAKIC8vIFByaW50cyBhIFRlc3RQYXJ0UmVzdWx0IG9iamVjdC4K
IHN0ZDo6b3N0cmVhbSYgb3BlcmF0b3I8PChzdGQ6Om9zdHJlYW0mIG9zLCBjb25zdCBUZXN0UGFy
dFJlc3VsdCYgcmVzdWx0KSB7Ci0gIHJldHVybiBvcwotICAgICAgPDwgcmVzdWx0LmZpbGVfbmFt
ZSgpIDw8ICI6IiA8PCByZXN1bHQubGluZV9udW1iZXIoKSA8PCAiOiAiCi0gICAgICA8PCAocmVz
dWx0LnR5cGUoKSA9PSBUZXN0UGFydFJlc3VsdDo6a1N1Y2Nlc3MgPyAiU3VjY2VzcyIgOgotICAg
ICAgICAgIHJlc3VsdC50eXBlKCkgPT0gVGVzdFBhcnRSZXN1bHQ6OmtGYXRhbEZhaWx1cmUgPyAi
RmF0YWwgZmFpbHVyZSIgOgotICAgICAgICAgICJOb24tZmF0YWwgZmFpbHVyZSIpIDw8ICI6XG4i
Ci0gICAgICA8PCByZXN1bHQubWVzc2FnZSgpIDw8IHN0ZDo6ZW5kbDsKKyAgcmV0dXJuIG9zIDw8
IGludGVybmFsOjpGb3JtYXRGaWxlTG9jYXRpb24ocmVzdWx0LmZpbGVfbmFtZSgpLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQubGluZV9udW1iZXIo
KSkKKyAgICAgICAgICAgIDw8ICIgIgorICAgICAgICAgICAgPDwgKHJlc3VsdC50eXBlKCkgPT0g
VGVzdFBhcnRSZXN1bHQ6OmtTdWNjZXNzCisgICAgICAgICAgICAgICAgICAgID8gIlN1Y2Nlc3Mi
CisgICAgICAgICAgICAgICAgICAgIDogcmVzdWx0LnR5cGUoKSA9PSBUZXN0UGFydFJlc3VsdDo6
a1NraXAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgPyAiU2tpcHBlZCIKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgOiByZXN1bHQudHlwZSgpID09IFRlc3RQYXJ0UmVzdWx0OjprRmF0YWxG
YWlsdXJlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gIkZhdGFsIGZhaWx1cmUi
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogIk5vbi1mYXRhbCBmYWlsdXJlIikK
KyAgICAgICAgICAgIDw8ICI6XG4iCisgICAgICAgICAgICA8PCByZXN1bHQubWVzc2FnZSgpIDw8
IHN0ZDo6ZW5kbDsKIH0KIAogLy8gQXBwZW5kcyBhIFRlc3RQYXJ0UmVzdWx0IHRvIHRoZSBhcnJh
eS4KQEAgLTY3LDcgKzc0LDcgQEAgY29uc3QgVGVzdFBhcnRSZXN1bHQmIFRlc3RQYXJ0UmVzdWx0
QXJyYXk6OkdldFRlc3RQYXJ0UmVzdWx0KGludCBpbmRleCkgY29uc3QgewogICAgIGludGVybmFs
Ojpwb3NpeDo6QWJvcnQoKTsKICAgfQogCi0gIHJldHVybiBhcnJheV9baW5kZXhdOworICByZXR1
cm4gYXJyYXlfW3N0YXRpY19jYXN0PHNpemVfdD4oaW5kZXgpXTsKIH0KIAogLy8gUmV0dXJucyB0
aGUgbnVtYmVyIG9mIFRlc3RQYXJ0UmVzdWx0IG9iamVjdHMgaW4gdGhlIGFycmF5LgpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3QtdHlw
ZWQtdGVzdC5jYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvc3JjL2d0
ZXN0LXR5cGVkLXRlc3QuY2MKaW5kZXggMWRjMmFkMzhiYWI5OGJjMTQ2YzE2MTU4YTQ3ZGExZTM5
NGJmMzg1Zi4uMWIxY2ZiMGRjMTVhZWViMjQzZWMwMDRkM2M4NGU3ODEyZWYwOTcxMSAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9nb29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3QtdHlw
ZWQtdGVzdC5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL3Ny
Yy9ndGVzdC10eXBlZC10ZXN0LmNjCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyBjb25zdCBjaGFy
KiBTa2lwU3BhY2VzKGNvbnN0IGNoYXIqIHN0cikgewogc3RhdGljIHN0ZDo6dmVjdG9yPHN0ZDo6
c3RyaW5nPiBTcGxpdEludG9UZXN0TmFtZXMoY29uc3QgY2hhciogc3JjKSB7CiAgIHN0ZDo6dmVj
dG9yPHN0ZDo6c3RyaW5nPiBuYW1lX3ZlYzsKICAgc3JjID0gU2tpcFNwYWNlcyhzcmMpOwotICBm
b3IgKDsgc3JjICE9IE5VTEw7IHNyYyA9IFNraXBDb21tYShzcmMpKSB7CisgIGZvciAoOyBzcmMg
IT0gbnVsbHB0cjsgc3JjID0gU2tpcENvbW1hKHNyYykpIHsKICAgICBuYW1lX3ZlYy5wdXNoX2Jh
Y2soU3RyaXBUcmFpbGluZ1NwYWNlcyhHZXRQcmVmaXhVbnRpbENvbW1hKHNyYykpKTsKICAgfQog
ICByZXR1cm4gbmFtZV92ZWM7CkBAIC01Nyw4ICs1NywxMSBAQCBzdGF0aWMgc3RkOjp2ZWN0b3I8
c3RkOjpzdHJpbmc+IFNwbGl0SW50b1Rlc3ROYW1lcyhjb25zdCBjaGFyKiBzcmMpIHsKIC8vIFZl
cmlmaWVzIHRoYXQgcmVnaXN0ZXJlZF90ZXN0cyBtYXRjaCB0aGUgdGVzdCBuYW1lcyBpbgogLy8g
cmVnaXN0ZXJlZF90ZXN0c187IHJldHVybnMgcmVnaXN0ZXJlZF90ZXN0cyBpZiBzdWNjZXNzZnVs
LCBvcgogLy8gYWJvcnRzIHRoZSBwcm9ncmFtIG90aGVyd2lzZS4KLWNvbnN0IGNoYXIqIFR5cGVk
VGVzdENhc2VQU3RhdGU6OlZlcmlmeVJlZ2lzdGVyZWRUZXN0TmFtZXMoCi0gICAgY29uc3QgY2hh
ciogZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIqIHJlZ2lzdGVyZWRfdGVzdHMpIHsKK2NvbnN0
IGNoYXIqIFR5cGVkVGVzdFN1aXRlUFN0YXRlOjpWZXJpZnlSZWdpc3RlcmVkVGVzdE5hbWVzKAor
ICAgIGNvbnN0IGNoYXIqIHRlc3Rfc3VpdGVfbmFtZSwgY29uc3QgY2hhciogZmlsZSwgaW50IGxp
bmUsCisgICAgY29uc3QgY2hhciogcmVnaXN0ZXJlZF90ZXN0cykgeworICBSZWdpc3RlclR5cGVQ
YXJhbWV0ZXJpemVkVGVzdFN1aXRlKHRlc3Rfc3VpdGVfbmFtZSwgQ29kZUxvY2F0aW9uKGZpbGUs
IGxpbmUpKTsKKwogICB0eXBlZGVmIFJlZ2lzdGVyZWRUZXN0c01hcDo6Y29uc3RfaXRlcmF0b3Ig
UmVnaXN0ZXJlZFRlc3RJdGVyOwogICByZWdpc3RlcmVkXyA9IHRydWU7CiAKQEAgLTg5LDcgKzky
LDcgQEAgY29uc3QgY2hhciogVHlwZWRUZXN0Q2FzZVBTdGF0ZTo6VmVyaWZ5UmVnaXN0ZXJlZFRl
c3ROYW1lcygKICAgICAgIHRlc3RzLmluc2VydChuYW1lKTsKICAgICB9IGVsc2UgewogICAgICAg
ZXJyb3JzIDw8ICJObyB0ZXN0IG5hbWVkICIgPDwgbmFtZQotICAgICAgICAgICAgIDw8ICIgY2Fu
IGJlIGZvdW5kIGluIHRoaXMgdGVzdCBjYXNlLlxuIjsKKyAgICAgICAgICAgICA8PCAiIGNhbiBi
ZSBmb3VuZCBpbiB0aGlzIHRlc3Qgc3VpdGUuXG4iOwogICAgIH0KICAgfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3JjL3NyYy9ndGVzdC5jYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0LmNjCmluZGV4IDk2
YjA3YzY4YWJiMDVhMmRiZTFiZTA5ZjFjMzUzNWJjZjc5ZDAwMzAuLmI4ZjZhNWMzMWNjODZhMTE2
YjBiNDk4MzQ3ZThiOTQxOTRjZWMyNjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFy
dHkvZ29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0LmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFy
dHkvZ29vZ2xldGVzdC9zcmMvc3JjL2d0ZXN0LmNjCkBAIC00NCw2ICs0NCw3IEBACiAjaW5jbHVk
ZSA8d2N0eXBlLmg+CiAKICNpbmNsdWRlIDxhbGdvcml0aG0+CisjaW5jbHVkZSA8Y3N0ZGludD4K
ICNpbmNsdWRlIDxpb21hbmlwPgogI2luY2x1ZGUgPGxpbWl0cz4KICNpbmNsdWRlIDxsaXN0PgpA
QCAtNTQsOCArNTUsNiBAQAogCiAjaWYgR1RFU1RfT1NfTElOVVgKIAotLy8gRklYTUU6IFVzZSBh
dXRvY29uZiB0byBkZXRlY3QgYXZhaWxhYmlsaXR5IG9mCi0vLyBnZXR0aW1lb2ZkYXkoKS4KICMg
ZGVmaW5lIEdURVNUX0hBU19HRVRUSU1FT0ZEQVlfIDEKIAogIyBpbmNsdWRlIDxmY250bC5oPiAg
Ly8gTk9MSU5UCkBAIC02OCwxMCArNjcsNiBAQAogIyBpbmNsdWRlIDx1bmlzdGQuaD4gIC8vIE5P
TElOVAogIyBpbmNsdWRlIDxzdHJpbmc+CiAKLSNlbGlmIEdURVNUX09TX1NZTUJJQU4KLSMgZGVm
aW5lIEdURVNUX0hBU19HRVRUSU1FT0ZEQVlfIDEKLSMgaW5jbHVkZSA8c3lzL3RpbWUuaD4gIC8v
IE5PTElOVAotCiAjZWxpZiBHVEVTVF9PU19aT1MKICMgZGVmaW5lIEdURVNUX0hBU19HRVRUSU1F
T0ZEQVlfIDEKICMgaW5jbHVkZSA8c3lzL3RpbWUuaD4gIC8vIE5PTElOVApAQCAtODYsNiArODEs
MTQgQEAKIAogI2VsaWYgR1RFU1RfT1NfV0lORE9XUyAgLy8gV2UgYXJlIG9uIFdpbmRvd3MgcHJv
cGVyLgogCisjIGluY2x1ZGUgPHdpbmRvd3MuaD4gIC8vIE5PTElOVAorIyB1bmRlZiBtaW4KKwor
I2lmZGVmIF9NU0NfVkVSCisjIGluY2x1ZGUgPGNydGRiZy5oPiAgLy8gTk9MSU5UCisjIGluY2x1
ZGUgPGRlYnVnYXBpLmg+ICAvLyBOT0xJTlQKKyNlbmRpZgorCiAjIGluY2x1ZGUgPGlvLmg+ICAv
LyBOT0xJTlQKICMgaW5jbHVkZSA8c3lzL3RpbWViLmg+ICAvLyBOT0xJTlQKICMgaW5jbHVkZSA8
c3lzL3R5cGVzLmg+ICAvLyBOT0xJTlQKQEAgLTkzLDI1ICs5NiwxMyBAQAogCiAjIGlmIEdURVNU
X09TX1dJTkRPV1NfTUlOR1cKIC8vIE1pbkdXIGhhcyBnZXR0aW1lb2ZkYXkoKSBidXQgbm90IF9m
dGltZTY0KCkuCi0vLyBGSVhNRTogVXNlIGF1dG9jb25mIHRvIGRldGVjdCBhdmFpbGFiaWxpdHkg
b2YKLS8vICAgZ2V0dGltZW9mZGF5KCkuCi0vLyBGSVhNRTogVGhlcmUgYXJlIG90aGVyIHdheXMg
dG8gZ2V0IHRoZSB0aW1lIG9uCi0vLyAgIFdpbmRvd3MsIGxpa2UgR2V0VGlja0NvdW50KCkgb3Ig
R2V0U3lzdGVtVGltZUFzRmlsZVRpbWUoKS4gIE1pbkdXCi0vLyAgIHN1cHBvcnRzIHRoZXNlLiAg
Y29uc2lkZXIgdXNpbmcgdGhlbSBpbnN0ZWFkLgogIyAgZGVmaW5lIEdURVNUX0hBU19HRVRUSU1F
T0ZEQVlfIDEKICMgIGluY2x1ZGUgPHN5cy90aW1lLmg+ICAvLyBOT0xJTlQKICMgZW5kaWYgIC8v
IEdURVNUX09TX1dJTkRPV1NfTUlOR1cKIAotLy8gY3BwbGludCB0aGlua3MgdGhhdCB0aGUgaGVh
ZGVyIGlzIGFscmVhZHkgaW5jbHVkZWQsIHNvIHdlIHdhbnQgdG8KLS8vIHNpbGVuY2UgaXQuCi0j
IGluY2x1ZGUgPHdpbmRvd3MuaD4gIC8vIE5PTElOVAotIyB1bmRlZiBtaW4KLQogI2Vsc2UKIAog
Ly8gQXNzdW1lIG90aGVyIHBsYXRmb3JtcyBoYXZlIGdldHRpbWVvZmRheSgpLgotLy8gRklYTUU6
IFVzZSBhdXRvY29uZiB0byBkZXRlY3QgYXZhaWxhYmlsaXR5IG9mCi0vLyAgIGdldHRpbWVvZmRh
eSgpLgogIyBkZWZpbmUgR1RFU1RfSEFTX0dFVFRJTUVPRkRBWV8gMQogCiAvLyBjcHBsaW50IHRo
aW5rcyB0aGF0IHRoZSBoZWFkZXIgaXMgYWxyZWFkeSBpbmNsdWRlZCwgc28gd2Ugd2FudCB0bwpA
QCAtMTYwLDE0ICsxNTEsMTQgQEAgdXNpbmcgaW50ZXJuYWw6OlNodWZmbGU7CiAKIC8vIENvbnN0
YW50cy4KIAotLy8gQSB0ZXN0IHdob3NlIHRlc3QgY2FzZSBuYW1lIG9yIHRlc3QgbmFtZSBtYXRj
aGVzIHRoaXMgZmlsdGVyIGlzCisvLyBBIHRlc3Qgd2hvc2UgdGVzdCBzdWl0ZSBuYW1lIG9yIHRl
c3QgbmFtZSBtYXRjaGVzIHRoaXMgZmlsdGVyIGlzCiAvLyBkaXNhYmxlZCBhbmQgbm90IHJ1bi4K
IHN0YXRpYyBjb25zdCBjaGFyIGtEaXNhYmxlVGVzdEZpbHRlcltdID0gIkRJU0FCTEVEXyo6Ki9E
SVNBQkxFRF8qIjsKIAotLy8gQSB0ZXN0IGNhc2Ugd2hvc2UgbmFtZSBtYXRjaGVzIHRoaXMgZmls
dGVyIGlzIGNvbnNpZGVyZWQgYSBkZWF0aAotLy8gdGVzdCBjYXNlIGFuZCB3aWxsIGJlIHJ1biBi
ZWZvcmUgdGVzdCBjYXNlcyB3aG9zZSBuYW1lIGRvZXNuJ3QKKy8vIEEgdGVzdCBzdWl0ZSB3aG9z
ZSBuYW1lIG1hdGNoZXMgdGhpcyBmaWx0ZXIgaXMgY29uc2lkZXJlZCBhIGRlYXRoCisvLyB0ZXN0
IHN1aXRlIGFuZCB3aWxsIGJlIHJ1biBiZWZvcmUgdGVzdCBzdWl0ZXMgd2hvc2UgbmFtZSBkb2Vz
bid0CiAvLyBtYXRjaCB0aGlzIGZpbHRlci4KLXN0YXRpYyBjb25zdCBjaGFyIGtEZWF0aFRlc3RD
YXNlRmlsdGVyW10gPSAiKkRlYXRoVGVzdDoqRGVhdGhUZXN0LyoiOworc3RhdGljIGNvbnN0IGNo
YXIga0RlYXRoVGVzdFN1aXRlRmlsdGVyW10gPSAiKkRlYXRoVGVzdDoqRGVhdGhUZXN0LyoiOwog
CiAvLyBBIHRlc3QgZmlsdGVyIHRoYXQgbWF0Y2hlcyBldmVyeXRoaW5nLgogc3RhdGljIGNvbnN0
IGNoYXIga1VuaXZlcnNhbEZpbHRlcltdID0gIioiOwpAQCAtMTkwLDIwICsxODEsMjAgQEAgbmFt
ZXNwYWNlIGludGVybmFsIHsKIC8vIHN0YWNrIHRyYWNlLgogY29uc3QgY2hhciBrU3RhY2tUcmFj
ZU1hcmtlcltdID0gIlxuU3RhY2sgdHJhY2U6XG4iOwogCi0vLyBnX2hlbHBfZmxhZyBpcyB0cnVl
IGlmZiB0aGUgLS1oZWxwIGZsYWcgb3IgYW4gZXF1aXZhbGVudCBmb3JtIGlzCi0vLyBzcGVjaWZp
ZWQgb24gdGhlIGNvbW1hbmQgbGluZS4KKy8vIGdfaGVscF9mbGFnIGlzIHRydWUgaWYgYW5kIG9u
bHkgaWYgdGhlIC0taGVscCBmbGFnIG9yIGFuIGVxdWl2YWxlbnQgZm9ybQorLy8gaXMgc3BlY2lm
aWVkIG9uIHRoZSBjb21tYW5kIGxpbmUuCiBib29sIGdfaGVscF9mbGFnID0gZmFsc2U7CiAKIC8v
IFV0aWx0eSBmdW5jdGlvbiB0byBPcGVuIEZpbGUgZm9yIFdyaXRpbmcKIHN0YXRpYyBGSUxFKiBP
cGVuRmlsZUZvcldyaXRpbmcoY29uc3Qgc3RkOjpzdHJpbmcmIG91dHB1dF9maWxlKSB7Ci0gIEZJ
TEUqIGZpbGVvdXQgPSBOVUxMOworICBGSUxFKiBmaWxlb3V0ID0gbnVsbHB0cjsKICAgRmlsZVBh
dGggb3V0cHV0X2ZpbGVfcGF0aChvdXRwdXRfZmlsZSk7CiAgIEZpbGVQYXRoIG91dHB1dF9kaXIo
b3V0cHV0X2ZpbGVfcGF0aC5SZW1vdmVGaWxlTmFtZSgpKTsKIAogICBpZiAob3V0cHV0X2Rpci5D
cmVhdGVEaXJlY3Rvcmllc1JlY3Vyc2l2ZWx5KCkpIHsKICAgICBmaWxlb3V0ID0gcG9zaXg6OkZP
cGVuKG91dHB1dF9maWxlLmNfc3RyKCksICJ3Iik7CiAgIH0KLSAgaWYgKGZpbGVvdXQgPT0gTlVM
TCkgeworICBpZiAoZmlsZW91dCA9PSBudWxscHRyKSB7CiAgICAgR1RFU1RfTE9HXyhGQVRBTCkg
PDwgIlVuYWJsZSB0byBvcGVuIGZpbGUgXCIiIDw8IG91dHB1dF9maWxlIDw8ICJcIiI7CiAgIH0K
ICAgcmV0dXJuIGZpbGVvdXQ7CkBAIC0yMTYsNyArMjA3LDcgQEAgc3RhdGljIEZJTEUqIE9wZW5G
aWxlRm9yV3JpdGluZyhjb25zdCBzdGQ6OnN0cmluZyYgb3V0cHV0X2ZpbGUpIHsKIHN0YXRpYyBj
b25zdCBjaGFyKiBHZXREZWZhdWx0RmlsdGVyKCkgewogICBjb25zdCBjaGFyKiBjb25zdCB0ZXN0
YnJpZGdlX3Rlc3Rfb25seSA9CiAgICAgICBpbnRlcm5hbDo6cG9zaXg6OkdldEVudigiVEVTVEJS
SURHRV9URVNUX09OTFkiKTsKLSAgaWYgKHRlc3RicmlkZ2VfdGVzdF9vbmx5ICE9IE5VTEwpIHsK
KyAgaWYgKHRlc3RicmlkZ2VfdGVzdF9vbmx5ICE9IG51bGxwdHIpIHsKICAgICByZXR1cm4gdGVz
dGJyaWRnZV90ZXN0X29ubHk7CiAgIH0KICAgcmV0dXJuIGtVbml2ZXJzYWxGaWx0ZXI7CkBAIC0y
MjgsMTUgKzIxOSwxNCBAQCBHVEVTVF9ERUZJTkVfYm9vbF8oCiAgICAgIlJ1biBkaXNhYmxlZCB0
ZXN0cyB0b28sIGluIGFkZGl0aW9uIHRvIHRoZSB0ZXN0cyBub3JtYWxseSBiZWluZyBydW4uIik7
CiAKIEdURVNUX0RFRklORV9ib29sXygKLSAgICBicmVha19vbl9mYWlsdXJlLAotICAgIGludGVy
bmFsOjpCb29sRnJvbUdUZXN0RW52KCJicmVha19vbl9mYWlsdXJlIiwgZmFsc2UpLAotICAgICJU
cnVlIGlmZiBhIGZhaWxlZCBhc3NlcnRpb24gc2hvdWxkIGJlIGEgZGVidWdnZXIgYnJlYWstcG9p
bnQuIik7CisgICAgYnJlYWtfb25fZmFpbHVyZSwgaW50ZXJuYWw6OkJvb2xGcm9tR1Rlc3RFbnYo
ImJyZWFrX29uX2ZhaWx1cmUiLCBmYWxzZSksCisgICAgIlRydWUgaWYgYW5kIG9ubHkgaWYgYSBm
YWlsZWQgYXNzZXJ0aW9uIHNob3VsZCBiZSBhIGRlYnVnZ2VyICIKKyAgICAiYnJlYWstcG9pbnQu
Iik7CiAKLUdURVNUX0RFRklORV9ib29sXygKLSAgICBjYXRjaF9leGNlcHRpb25zLAotICAgIGlu
dGVybmFsOjpCb29sRnJvbUdUZXN0RW52KCJjYXRjaF9leGNlcHRpb25zIiwgdHJ1ZSksCi0gICAg
IlRydWUgaWZmICIgR1RFU1RfTkFNRV8KLSAgICAiIHNob3VsZCBjYXRjaCBleGNlcHRpb25zIGFu
ZCB0cmVhdCB0aGVtIGFzIHRlc3QgZmFpbHVyZXMuIik7CitHVEVTVF9ERUZJTkVfYm9vbF8oY2F0
Y2hfZXhjZXB0aW9ucywKKyAgICAgICAgICAgICAgICAgICBpbnRlcm5hbDo6Qm9vbEZyb21HVGVz
dEVudigiY2F0Y2hfZXhjZXB0aW9ucyIsIHRydWUpLAorICAgICAgICAgICAgICAgICAgICJUcnVl
IGlmIGFuZCBvbmx5IGlmICIgR1RFU1RfTkFNRV8KKyAgICAgICAgICAgICAgICAgICAiIHNob3Vs
ZCBjYXRjaCBleGNlcHRpb25zIGFuZCB0cmVhdCB0aGVtIGFzIHRlc3QgZmFpbHVyZXMuIik7CiAK
IEdURVNUX0RFRklORV9zdHJpbmdfKAogICAgIGNvbG9yLApAQCAtMjgzLDE3ICsyNzMsMTMgQEAg
R1RFU1RfREVGSU5FX3N0cmluZ18oCiAgICAgImV4ZWN1dGFibGUncyBuYW1lIGFuZCwgaWYgbmVj
ZXNzYXJ5LCBtYWRlIHVuaXF1ZSBieSBhZGRpbmcgIgogICAgICJkaWdpdHMuIik7CiAKLUdURVNU
X0RFRklORV9ib29sXygKLSAgICBwcmludF90aW1lLAotICAgIGludGVybmFsOjpCb29sRnJvbUdU
ZXN0RW52KCJwcmludF90aW1lIiwgdHJ1ZSksCi0gICAgIlRydWUgaWZmICIgR1RFU1RfTkFNRV8K
LSAgICAiIHNob3VsZCBkaXNwbGF5IGVsYXBzZWQgdGltZSBpbiB0ZXh0IG91dHB1dC4iKTsKK0dU
RVNUX0RFRklORV9ib29sXyhwcmludF90aW1lLCBpbnRlcm5hbDo6Qm9vbEZyb21HVGVzdEVudigi
cHJpbnRfdGltZSIsIHRydWUpLAorICAgICAgICAgICAgICAgICAgICJUcnVlIGlmIGFuZCBvbmx5
IGlmICIgR1RFU1RfTkFNRV8KKyAgICAgICAgICAgICAgICAgICAiIHNob3VsZCBkaXNwbGF5IGVs
YXBzZWQgdGltZSBpbiB0ZXh0IG91dHB1dC4iKTsKIAotR1RFU1RfREVGSU5FX2Jvb2xfKAotICAg
IHByaW50X3V0ZjgsCi0gICAgaW50ZXJuYWw6OkJvb2xGcm9tR1Rlc3RFbnYoInByaW50X3V0Zjgi
LCB0cnVlKSwKLSAgICAiVHJ1ZSBpZmYgIiBHVEVTVF9OQU1FXwotICAgICIgcHJpbnRzIFVURjgg
Y2hhcmFjdGVycyBhcyB0ZXh0LiIpOworR1RFU1RfREVGSU5FX2Jvb2xfKHByaW50X3V0ZjgsIGlu
dGVybmFsOjpCb29sRnJvbUdUZXN0RW52KCJwcmludF91dGY4IiwgdHJ1ZSksCisgICAgICAgICAg
ICAgICAgICAgIlRydWUgaWYgYW5kIG9ubHkgaWYgIiBHVEVTVF9OQU1FXworICAgICAgICAgICAg
ICAgICAgICIgcHJpbnRzIFVURjggY2hhcmFjdGVycyBhcyB0ZXh0LiIpOwogCiBHVEVTVF9ERUZJ
TkVfaW50MzJfKAogICAgIHJhbmRvbV9zZWVkLApAQCAtMzA3LDE2ICsyOTMsMTQgQEAgR1RFU1Rf
REVGSU5FX2ludDMyXygKICAgICAiSG93IG1hbnkgdGltZXMgdG8gcmVwZWF0IGVhY2ggdGVzdC4g
IFNwZWNpZnkgYSBuZWdhdGl2ZSBudW1iZXIgIgogICAgICJmb3IgcmVwZWF0aW5nIGZvcmV2ZXIu
ICBVc2VmdWwgZm9yIHNoYWtpbmcgb3V0IGZsYWt5IHRlc3RzLiIpOwogCi1HVEVTVF9ERUZJTkVf
Ym9vbF8oCi0gICAgc2hvd19pbnRlcm5hbF9zdGFja19mcmFtZXMsIGZhbHNlLAotICAgICJUcnVl
IGlmZiAiIEdURVNUX05BTUVfICIgc2hvdWxkIGluY2x1ZGUgaW50ZXJuYWwgc3RhY2sgZnJhbWVz
IHdoZW4gIgotICAgICJwcmludGluZyB0ZXN0IGZhaWx1cmUgc3RhY2sgdHJhY2VzLiIpOworR1RF
U1RfREVGSU5FX2Jvb2xfKHNob3dfaW50ZXJuYWxfc3RhY2tfZnJhbWVzLCBmYWxzZSwKKyAgICAg
ICAgICAgICAgICAgICAiVHJ1ZSBpZiBhbmQgb25seSBpZiAiIEdURVNUX05BTUVfCisgICAgICAg
ICAgICAgICAgICAgIiBzaG91bGQgaW5jbHVkZSBpbnRlcm5hbCBzdGFjayBmcmFtZXMgd2hlbiAi
CisgICAgICAgICAgICAgICAgICAgInByaW50aW5nIHRlc3QgZmFpbHVyZSBzdGFjayB0cmFjZXMu
Iik7CiAKLUdURVNUX0RFRklORV9ib29sXygKLSAgICBzaHVmZmxlLAotICAgIGludGVybmFsOjpC
b29sRnJvbUdUZXN0RW52KCJzaHVmZmxlIiwgZmFsc2UpLAotICAgICJUcnVlIGlmZiAiIEdURVNU
X05BTUVfCi0gICAgIiBzaG91bGQgcmFuZG9taXplIHRlc3RzJyBvcmRlciBvbiBldmVyeSBydW4u
Iik7CitHVEVTVF9ERUZJTkVfYm9vbF8oc2h1ZmZsZSwgaW50ZXJuYWw6OkJvb2xGcm9tR1Rlc3RF
bnYoInNodWZmbGUiLCBmYWxzZSksCisgICAgICAgICAgICAgICAgICAgIlRydWUgaWYgYW5kIG9u
bHkgaWYgIiBHVEVTVF9OQU1FXworICAgICAgICAgICAgICAgICAgICIgc2hvdWxkIHJhbmRvbWl6
ZSB0ZXN0cycgb3JkZXIgb24gZXZlcnkgcnVuLiIpOwogCiBHVEVTVF9ERUZJTkVfaW50MzJfKAog
ICAgIHN0YWNrX3RyYWNlX2RlcHRoLApAQCAtMzUwLDEwICszMzQsMTAgQEAgbmFtZXNwYWNlIGlu
dGVybmFsIHsKIC8vIEdlbmVyYXRlcyBhIHJhbmRvbSBudW1iZXIgZnJvbSBbMCwgcmFuZ2UpLCB1
c2luZyBhIExpbmVhcgogLy8gQ29uZ3J1ZW50aWFsIEdlbmVyYXRvciAoTENHKS4gIENyYXNoZXMg
aWYgJ3JhbmdlJyBpcyAwIG9yIGdyZWF0ZXIKIC8vIHRoYW4ga01heFJhbmdlLgotVUludDMyIFJh
bmRvbTo6R2VuZXJhdGUoVUludDMyIHJhbmdlKSB7Cit1aW50MzJfdCBSYW5kb206OkdlbmVyYXRl
KHVpbnQzMl90IHJhbmdlKSB7CiAgIC8vIFRoZXNlIGNvbnN0YW50cyBhcmUgdGhlIHNhbWUgYXMg
YXJlIHVzZWQgaW4gZ2xpYmMncyByYW5kKDMpLgogICAvLyBVc2Ugd2lkZXIgdHlwZXMgdGhhbiBu
ZWNlc3NhcnkgdG8gcHJldmVudCB1bnNpZ25lZCBvdmVyZmxvdyBkaWFnbm9zdGljcy4KLSAgc3Rh
dGVfID0gc3RhdGljX2Nhc3Q8VUludDMyPigxMTAzNTE1MjQ1VUxMKnN0YXRlXyArIDEyMzQ1VSkg
JSBrTWF4UmFuZ2U7CisgIHN0YXRlXyA9IHN0YXRpY19jYXN0PHVpbnQzMl90PigxMTAzNTE1MjQ1
VUxMKnN0YXRlXyArIDEyMzQ1VSkgJSBrTWF4UmFuZ2U7CiAKICAgR1RFU1RfQ0hFQ0tfKHJhbmdl
ID4gMCkKICAgICAgIDw8ICJDYW5ub3QgZ2VuZXJhdGUgYSBudW1iZXIgaW4gdGhlIHJhbmdlIFsw
LCAwKS4iOwpAQCAtMzY3LDE2ICszNTEsMTYgQEAgVUludDMyIFJhbmRvbTo6R2VuZXJhdGUoVUlu
dDMyIHJhbmdlKSB7CiAgIHJldHVybiBzdGF0ZV8gJSByYW5nZTsKIH0KIAotLy8gR1Rlc3RJc0lu
aXRpYWxpemVkKCkgcmV0dXJucyB0cnVlIGlmZiB0aGUgdXNlciBoYXMgaW5pdGlhbGl6ZWQKKy8v
IEdUZXN0SXNJbml0aWFsaXplZCgpIHJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgdXNl
ciBoYXMgaW5pdGlhbGl6ZWQKIC8vIEdvb2dsZSBUZXN0LiAgVXNlZnVsIGZvciBjYXRjaGluZyB0
aGUgdXNlciBtaXN0YWtlIG9mIG5vdCBpbml0aWFsaXppbmcKIC8vIEdvb2dsZSBUZXN0IGJlZm9y
ZSBjYWxsaW5nIFJVTl9BTExfVEVTVFMoKS4KIHN0YXRpYyBib29sIEdUZXN0SXNJbml0aWFsaXpl
ZCgpIHsgcmV0dXJuIEdldEFyZ3ZzKCkuc2l6ZSgpID4gMDsgfQogCi0vLyBJdGVyYXRlcyBvdmVy
IGEgdmVjdG9yIG9mIFRlc3RDYXNlcywga2VlcGluZyBhIHJ1bm5pbmcgc3VtIG9mIHRoZQorLy8g
SXRlcmF0ZXMgb3ZlciBhIHZlY3RvciBvZiBUZXN0U3VpdGVzLCBrZWVwaW5nIGEgcnVubmluZyBz
dW0gb2YgdGhlCiAvLyByZXN1bHRzIG9mIGNhbGxpbmcgYSBnaXZlbiBpbnQtcmV0dXJuaW5nIG1l
dGhvZCBvbiBlYWNoLgogLy8gUmV0dXJucyB0aGUgc3VtLgotc3RhdGljIGludCBTdW1PdmVyVGVz
dENhc2VMaXN0KGNvbnN0IHN0ZDo6dmVjdG9yPFRlc3RDYXNlKj4mIGNhc2VfbGlzdCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKFRlc3RDYXNlOjoqbWV0aG9kKSgpIGNvbnN0
KSB7CitzdGF0aWMgaW50IFN1bU92ZXJUZXN0U3VpdGVMaXN0KGNvbnN0IHN0ZDo6dmVjdG9yPFRl
c3RTdWl0ZSo+JiBjYXNlX2xpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu
dCAoVGVzdFN1aXRlOjoqbWV0aG9kKSgpIGNvbnN0KSB7CiAgIGludCBzdW0gPSAwOwogICBmb3Ig
KHNpemVfdCBpID0gMDsgaSA8IGNhc2VfbGlzdC5zaXplKCk7IGkrKykgewogICAgIHN1bSArPSAo
Y2FzZV9saXN0W2ldLT4qbWV0aG9kKSgpOwpAQCAtMzg0LDIwICszNjgsMjAgQEAgc3RhdGljIGlu
dCBTdW1PdmVyVGVzdENhc2VMaXN0KGNvbnN0IHN0ZDo6dmVjdG9yPFRlc3RDYXNlKj4mIGNhc2Vf
bGlzdCwKICAgcmV0dXJuIHN1bTsKIH0KIAotLy8gUmV0dXJucyB0cnVlIGlmZiB0aGUgdGVzdCBj
YXNlIHBhc3NlZC4KLXN0YXRpYyBib29sIFRlc3RDYXNlUGFzc2VkKGNvbnN0IFRlc3RDYXNlKiB0
ZXN0X2Nhc2UpIHsKLSAgcmV0dXJuIHRlc3RfY2FzZS0+c2hvdWxkX3J1bigpICYmIHRlc3RfY2Fz
ZS0+UGFzc2VkKCk7CisvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHRlc3Qgc3Vp
dGUgcGFzc2VkLgorc3RhdGljIGJvb2wgVGVzdFN1aXRlUGFzc2VkKGNvbnN0IFRlc3RTdWl0ZSog
dGVzdF9zdWl0ZSkgeworICByZXR1cm4gdGVzdF9zdWl0ZS0+c2hvdWxkX3J1bigpICYmIHRlc3Rf
c3VpdGUtPlBhc3NlZCgpOwogfQogCi0vLyBSZXR1cm5zIHRydWUgaWZmIHRoZSB0ZXN0IGNhc2Ug
ZmFpbGVkLgotc3RhdGljIGJvb2wgVGVzdENhc2VGYWlsZWQoY29uc3QgVGVzdENhc2UqIHRlc3Rf
Y2FzZSkgewotICByZXR1cm4gdGVzdF9jYXNlLT5zaG91bGRfcnVuKCkgJiYgdGVzdF9jYXNlLT5G
YWlsZWQoKTsKKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgdGVzdCBzdWl0ZSBm
YWlsZWQuCitzdGF0aWMgYm9vbCBUZXN0U3VpdGVGYWlsZWQoY29uc3QgVGVzdFN1aXRlKiB0ZXN0
X3N1aXRlKSB7CisgIHJldHVybiB0ZXN0X3N1aXRlLT5zaG91bGRfcnVuKCkgJiYgdGVzdF9zdWl0
ZS0+RmFpbGVkKCk7CiB9CiAKLS8vIFJldHVybnMgdHJ1ZSBpZmYgdGVzdF9jYXNlIGNvbnRhaW5z
IGF0IGxlYXN0IG9uZSB0ZXN0IHRoYXQgc2hvdWxkCi0vLyBydW4uCi1zdGF0aWMgYm9vbCBTaG91
bGRSdW5UZXN0Q2FzZShjb25zdCBUZXN0Q2FzZSogdGVzdF9jYXNlKSB7Ci0gIHJldHVybiB0ZXN0
X2Nhc2UtPnNob3VsZF9ydW4oKTsKKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0ZXN0
X3N1aXRlIGNvbnRhaW5zIGF0IGxlYXN0IG9uZSB0ZXN0IHRoYXQKKy8vIHNob3VsZCBydW4uCitz
dGF0aWMgYm9vbCBTaG91bGRSdW5UZXN0U3VpdGUoY29uc3QgVGVzdFN1aXRlKiB0ZXN0X3N1aXRl
KSB7CisgIHJldHVybiB0ZXN0X3N1aXRlLT5zaG91bGRfcnVuKCk7CiB9CiAKIC8vIEFzc2VydEhl
bHBlciBjb25zdHJ1Y3Rvci4KQEAgLTQyMyw4ICs0MDcsMTYxIEBAIHZvaWQgQXNzZXJ0SGVscGVy
OjpvcGVyYXRvcj0oY29uc3QgTWVzc2FnZSYgbWVzc2FnZSkgY29uc3QgewogICAgICAgICAgICAg
ICAgICAgICAgICk7ICAvLyBOT0xJTlQKIH0KIAotLy8gTXV0ZXggZm9yIGxpbmtlZCBwb2ludGVy
cy4KLUdURVNUX0FQSV8gR1RFU1RfREVGSU5FX1NUQVRJQ19NVVRFWF8oZ19saW5rZWRfcHRyX211
dGV4KTsKK25hbWVzcGFjZSB7CisKKy8vIFdoZW4gVEVTVF9QIGlzIGZvdW5kIHdpdGhvdXQgYSBt
YXRjaGluZyBJTlNUQU5USUFURV9URVNUX1NVSVRFX1AKKy8vIHRvIGNyZWF0ZXMgdGVzdCBjYXNl
cyBmb3IgaXQsIGEgc3ludGV0aWMgdGVzdCBjYXNlIGlzCisvLyBpbnNlcnRlZCB0byByZXBvcnQg
ZXRoZXIgYW4gZXJyb3Igb3IgYSBsb2cgbWVzc2FnZS4KKy8vCisvLyBUaGlzIGNvbmZpZ3VyYXRp
b24gYml0IHdpbGwgbGlrZWx5IGJlIHJlbW92ZWQgYXQgc29tZSBwb2ludC4KK2NvbnN0ZXhwciBi
b29sIGtFcnJvck9uVW5pbnN0YW50aWF0ZWRQYXJhbWV0ZXJpemVkVGVzdCA9IHRydWU7Citjb25z
dGV4cHIgYm9vbCBrRXJyb3JPblVuaW5zdGFudGlhdGVkVHlwZVBhcmFtZXRlcml6ZWRUZXN0ID0g
dHJ1ZTsKKworLy8gQSB0ZXN0IHRoYXQgZmFpbHMgYXQgYSBnaXZlbiBmaWxlL2xpbmUgbG9jYXRp
b24gd2l0aCBhIGdpdmVuIG1lc3NhZ2UuCitjbGFzcyBGYWlsdXJlVGVzdCA6IHB1YmxpYyBUZXN0
IHsKKyBwdWJsaWM6CisgIGV4cGxpY2l0IEZhaWx1cmVUZXN0KGNvbnN0IENvZGVMb2NhdGlvbiYg
bG9jLCBzdGQ6OnN0cmluZyBlcnJvcl9tZXNzYWdlLAorICAgICAgICAgICAgICAgICAgICAgICBi
b29sIGFzX2Vycm9yKQorICAgICAgOiBsb2NfKGxvYyksCisgICAgICAgIGVycm9yX21lc3NhZ2Vf
KHN0ZDo6bW92ZShlcnJvcl9tZXNzYWdlKSksCisgICAgICAgIGFzX2Vycm9yXyhhc19lcnJvcikg
e30KKworICB2b2lkIFRlc3RCb2R5KCkgb3ZlcnJpZGUgeworICAgIGlmIChhc19lcnJvcl8pIHsK
KyAgICAgIEFzc2VydEhlbHBlcihUZXN0UGFydFJlc3VsdDo6a05vbkZhdGFsRmFpbHVyZSwgbG9j
Xy5maWxlLmNfc3RyKCksCisgICAgICAgICAgICAgICAgICAgbG9jXy5saW5lLCAiIikgPSBNZXNz
YWdlKCkgPDwgZXJyb3JfbWVzc2FnZV87CisgICAgfSBlbHNlIHsKKyAgICAgIHN0ZDo6Y291dCA8
PCBlcnJvcl9tZXNzYWdlXyA8PCBzdGQ6OmVuZGw7CisgICAgfQorICB9CisKKyBwcml2YXRlOgor
ICBjb25zdCBDb2RlTG9jYXRpb24gbG9jXzsKKyAgY29uc3Qgc3RkOjpzdHJpbmcgZXJyb3JfbWVz
c2FnZV87CisgIGNvbnN0IGJvb2wgYXNfZXJyb3JfOworfTsKKworCit9ICAvLyBuYW1lc3BhY2UK
Kworc3RkOjpzZXQ8c3RkOjpzdHJpbmc+KiBHZXRJZ25vcmVkUGFyYW1ldGVyaXplZFRlc3RTdWl0
ZXMoKSB7CisgIHJldHVybiBVbml0VGVzdDo6R2V0SW5zdGFuY2UoKS0+aW1wbCgpLT5pZ25vcmVk
X3BhcmFtZXRlcml6ZWRfdGVzdF9zdWl0ZXMoKTsKK30KKworLy8gQWRkIGEgZ2l2ZW4gdGVzdF9z
dWl0IHRvIHRoZSBsaXN0IG9mIHRoZW0gYWxsb3cgdG8gZ28gdW4taW5zdGFudGlhdGVkLgorTWFy
a0FzSWdub3JlZDo6TWFya0FzSWdub3JlZChjb25zdCBjaGFyKiB0ZXN0X3N1aXRlKSB7CisgIEdl
dElnbm9yZWRQYXJhbWV0ZXJpemVkVGVzdFN1aXRlcygpLT5pbnNlcnQodGVzdF9zdWl0ZSk7Cit9
CisKKy8vIElmIHRoaXMgcGFyYW1ldGVyaXplZCB0ZXN0IHN1aXRlIGhhcyBubyBpbnN0YW50aWF0
aW9ucyAoYW5kIHRoYXQKKy8vIGhhcyBub3QgYmVlbiBtYXJrZWQgYXMgb2theSksIGVtaXQgYSB0
ZXN0IGNhc2UgcmVwb3J0aW5nIHRoYXQuCit2b2lkIEluc2VydFN5bnRoZXRpY1Rlc3RDYXNlKGNv
bnN0IHN0ZDo6c3RyaW5nJiBuYW1lLCBDb2RlTG9jYXRpb24gbG9jYXRpb24sCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGJvb2wgaGFzX3Rlc3RfcCkgeworICBjb25zdCBhdXRvJiBpZ25v
cmVkID0gKkdldElnbm9yZWRQYXJhbWV0ZXJpemVkVGVzdFN1aXRlcygpOworICBpZiAoaWdub3Jl
ZC5maW5kKG5hbWUpICE9IGlnbm9yZWQuZW5kKCkpIHJldHVybjsKKworICBjb25zdCBjaGFyIGtN
aXNzaW5nSW5zdGFudGlhdGlvbltdID0gIC8vCisgICAgICAiIGlzIGRlZmluZWQgdmlhIFRFU1Rf
UCwgYnV0IG5ldmVyIGluc3RhbnRpYXRlZC4gTm9uZSBvZiB0aGUgdGVzdCBjYXNlcyAiCisgICAg
ICAid2lsbCBydW4uIEVpdGhlciBubyBJTlNUQU5USUFURV9URVNUX1NVSVRFX1AgaXMgcHJvdmlk
ZWQgb3IgdGhlIG9ubHkgIgorICAgICAgIm9uZXMgcHJvdmlkZWQgZXhwYW5kIHRvIG5vdGhpbmcu
IgorICAgICAgIlxuXG4iCisgICAgICAiSWRlYWxseSwgVEVTVF9QIGRlZmluaXRpb25zIHNob3Vs
ZCBvbmx5IGV2ZXIgYmUgaW5jbHVkZWQgYXMgcGFydCBvZiAiCisgICAgICAiYmluYXJpZXMgdGhh
dCBpbnRlbmQgdG8gdXNlIHRoZW0uIChBcyBvcHBvc2VkIHRvLCBmb3IgZXhhbXBsZSwgYmVpbmcg
IgorICAgICAgInBsYWNlZCBpbiBhIGxpYnJhcnkgdGhhdCBtYXkgYmUgbGlua2VkIGluIHRvIGdl
dCBvdGhlciB1dGlsaXRpZXMuKSI7CisKKyAgY29uc3QgY2hhciBrTWlzc2luZ1Rlc3RDYXNlW10g
PSAgLy8KKyAgICAgICIgaXMgaW5zdGFudGlhdGVkIHZpYSBJTlNUQU5USUFURV9URVNUX1NVSVRF
X1AsIGJ1dCBubyB0ZXN0cyBhcmUgIgorICAgICAgImRlZmluZWQgdmlhIFRFU1RfUCAuIE5vIHRl
c3QgY2FzZXMgd2lsbCBydW4uIgorICAgICAgIlxuXG4iCisgICAgICAiSWRlYWxseSwgSU5TVEFO
VElBVEVfVEVTVF9TVUlURV9QIHNob3VsZCBvbmx5IGV2ZXIgYmUgaW52b2tlZCBmcm9tICIKKyAg
ICAgICJjb2RlIHRoYXQgYWx3YXlzIGRlcGVuZCBvbiBjb2RlIHRoYXQgcHJvdmlkZXMgVEVTVF9Q
LiBGYWlsaW5nIHRvIGRvICIKKyAgICAgICJzbyBpcyBvZnRlbiBhbiBpbmRpY2F0aW9uIG9mIGRl
YWQgY29kZSwgZS5nLiB0aGUgbGFzdCBURVNUX1Agd2FzICIKKyAgICAgICJyZW1vdmVkIGJ1dCB0
aGUgcmVzdCBnb3QgbGVmdCBiZWhpbmQuIjsKKworICBzdGQ6OnN0cmluZyBtZXNzYWdlID0KKyAg
ICAgICJQYXJhbWF0ZXJpemVkIHRlc3Qgc3VpdGUgIiArIG5hbWUgKworICAgICAgKGhhc190ZXN0
X3AgPyBrTWlzc2luZ0luc3RhbnRpYXRpb24gOiBrTWlzc2luZ1Rlc3RDYXNlKSArCisgICAgICAi
XG5cbiIKKyAgICAgICJUbyBzdXBwcmVzcyB0aGlzIGVycm9yIGZvciB0aGlzIHRlc3Qgc3VpdGUs
IGluc2VydCB0aGUgZm9sbG93aW5nIGxpbmUgIgorICAgICAgIihpbiBhIG5vbi1oZWFkZXIpIGlu
IHRoZSBuYW1lc3BhY2UgaXQgaXMgZGVmaW5lZCBpbjoiCisgICAgICAiXG5cbiIKKyAgICAgICJH
VEVTVF9BTExPV19VTklOU1RBTlRJQVRFRF9QQVJBTUVURVJJWkVEX1RFU1QoIiArIG5hbWUgKyAi
KTsiOworCisgIHN0ZDo6c3RyaW5nIGZ1bGxfbmFtZSA9ICJVbmluc3RhbnRpYXRlZFBhcmFtYXRl
cml6ZWRUZXN0U3VpdGU8IiArIG5hbWUgKyAiPiI7CisgIFJlZ2lzdGVyVGVzdCggIC8vCisgICAg
ICAiR29vZ2xlVGVzdFZlcmlmaWNhdGlvbiIsIGZ1bGxfbmFtZS5jX3N0cigpLAorICAgICAgbnVs
bHB0ciwgIC8vIE5vIHR5cGUgcGFyYW1ldGVyLgorICAgICAgbnVsbHB0ciwgIC8vIE5vIHZhbHVl
IHBhcmFtZXRlci4KKyAgICAgIGxvY2F0aW9uLmZpbGUuY19zdHIoKSwgbG9jYXRpb24ubGluZSwg
W21lc3NhZ2UsIGxvY2F0aW9uXSB7CisgICAgICAgIHJldHVybiBuZXcgRmFpbHVyZVRlc3QobG9j
YXRpb24sIG1lc3NhZ2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga0Vycm9yT25V
bmluc3RhbnRpYXRlZFBhcmFtZXRlcml6ZWRUZXN0KTsKKyAgICAgIH0pOworfQorCit2b2lkIFJl
Z2lzdGVyVHlwZVBhcmFtZXRlcml6ZWRUZXN0U3VpdGUoY29uc3QgY2hhciogdGVzdF9zdWl0ZV9u
YW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvZGVMb2NhdGlv
biBjb2RlX2xvY2F0aW9uKSB7CisgIEdldFVuaXRUZXN0SW1wbCgpLT50eXBlX3BhcmFtZXRlcml6
ZWRfdGVzdF9yZWdpc3RyeSgpLlJlZ2lzdGVyVGVzdFN1aXRlKAorICAgICAgdGVzdF9zdWl0ZV9u
YW1lLCBjb2RlX2xvY2F0aW9uKTsKK30KKwordm9pZCBSZWdpc3RlclR5cGVQYXJhbWV0ZXJpemVk
VGVzdFN1aXRlSW5zdGFudGlhdGlvbihjb25zdCBjaGFyKiBjYXNlX25hbWUpIHsKKyAgR2V0VW5p
dFRlc3RJbXBsKCkKKyAgICAgIC0+dHlwZV9wYXJhbWV0ZXJpemVkX3Rlc3RfcmVnaXN0cnkoKQor
ICAgICAgLlJlZ2lzdGVySW5zdGFudGlhdGlvbihjYXNlX25hbWUpOworfQorCit2b2lkIFR5cGVQ
YXJhbWV0ZXJpemVkVGVzdFN1aXRlUmVnaXN0cnk6OlJlZ2lzdGVyVGVzdFN1aXRlKAorICAgIGNv
bnN0IGNoYXIqIHRlc3Rfc3VpdGVfbmFtZSwgQ29kZUxvY2F0aW9uIGNvZGVfbG9jYXRpb24pIHsK
KyAgc3VpdGVzXy5lbXBsYWNlKHN0ZDo6c3RyaW5nKHRlc3Rfc3VpdGVfbmFtZSksCisgICAgICAg
ICAgICAgICAgIFR5cGVQYXJhbWV0ZXJpemVkVGVzdFN1aXRlSW5mbyhjb2RlX2xvY2F0aW9uKSk7
Cit9CisKK3ZvaWQgVHlwZVBhcmFtZXRlcml6ZWRUZXN0U3VpdGVSZWdpc3RyeTo6UmVnaXN0ZXJJ
bnN0YW50aWF0aW9uKAorICAgICAgICBjb25zdCBjaGFyKiB0ZXN0X3N1aXRlX25hbWUpIHsKKyAg
YXV0byBpdCA9IHN1aXRlc18uZmluZChzdGQ6OnN0cmluZyh0ZXN0X3N1aXRlX25hbWUpKTsKKyAg
aWYgKGl0ICE9IHN1aXRlc18uZW5kKCkpIHsKKyAgICBpdC0+c2Vjb25kLmluc3RhbnRpYXRlZCA9
IHRydWU7CisgIH0gZWxzZSB7CisgICAgR1RFU1RfTE9HXyhFUlJPUikgPDwgIlVua25vd24gdHlw
ZSBwYXJhbWV0ZXJpemVkIHRlc3Qgc3VpdCAnIgorICAgICAgICAgICAgICAgICAgICAgIDw8IHRl
c3Rfc3VpdGVfbmFtZSA8PCAiJyI7CisgIH0KK30KKwordm9pZCBUeXBlUGFyYW1ldGVyaXplZFRl
c3RTdWl0ZVJlZ2lzdHJ5OjpDaGVja0Zvckluc3RhbnRpYXRpb25zKCkgeworICBjb25zdCBhdXRv
JiBpZ25vcmVkID0gKkdldElnbm9yZWRQYXJhbWV0ZXJpemVkVGVzdFN1aXRlcygpOworICBmb3Ig
KGNvbnN0IGF1dG8mIHRlc3RjYXNlIDogc3VpdGVzXykgeworICAgIGlmICh0ZXN0Y2FzZS5zZWNv
bmQuaW5zdGFudGlhdGVkKSBjb250aW51ZTsKKyAgICBpZiAoaWdub3JlZC5maW5kKHRlc3RjYXNl
LmZpcnN0KSAhPSBpZ25vcmVkLmVuZCgpKSBjb250aW51ZTsKKworICAgIHN0ZDo6c3RyaW5nIG1l
c3NhZ2UgPQorICAgICAgICAiVHlwZSBwYXJhbWF0ZXJpemVkIHRlc3Qgc3VpdGUgIiArIHRlc3Rj
YXNlLmZpcnN0ICsKKyAgICAgICAgIiBpcyBkZWZpbmVkIHZpYSBSRUdJU1RFUl9UWVBFRF9URVNU
X1NVSVRFX1AsIGJ1dCBuZXZlciBpbnN0YW50aWF0ZWQgIgorICAgICAgICAidmlhIElOU1RBTlRJ
QVRFX1RZUEVEX1RFU1RfU1VJVEVfUC4gTm9uZSBvZiB0aGUgdGVzdCBjYXNlcyB3aWxsIHJ1bi4i
CisgICAgICAgICJcblxuIgorICAgICAgICAiSWRlYWxseSwgVFlQRURfVEVTVF9QIGRlZmluaXRp
b25zIHNob3VsZCBvbmx5IGV2ZXIgYmUgaW5jbHVkZWQgYXMgIgorICAgICAgICAicGFydCBvZiBi
aW5hcmllcyB0aGF0IGludGVuZCB0byB1c2UgdGhlbS4gKEFzIG9wcG9zZWQgdG8sIGZvciAiCisg
ICAgICAgICJleGFtcGxlLCBiZWluZyBwbGFjZWQgaW4gYSBsaWJyYXJ5IHRoYXQgbWF5IGJlIGxp
bmtlZCBpbiB0byBnZXQgb3RoZXIgIgorICAgICAgICAidXRpbGl0aWVzLikiCisgICAgICAgICJc
blxuIgorICAgICAgICAiVG8gc3VwcHJlc3MgdGhpcyBlcnJvciBmb3IgdGhpcyB0ZXN0IHN1aXRl
LCBpbnNlcnQgdGhlIGZvbGxvd2luZyBsaW5lICIKKyAgICAgICAgIihpbiBhIG5vbi1oZWFkZXIp
IGluIHRoZSBuYW1lc3BhY2UgaXQgaXMgZGVmaW5lZGluIGluOiIKKyAgICAgICAgIlxuXG4iCisg
ICAgICAgICJHVEVTVF9BTExPV19VTklOU1RBTlRJQVRFRF9QQVJBTUVURVJJWkVEX1RFU1QoIiAr
CisgICAgICAgIHRlc3RjYXNlLmZpcnN0ICsgIik7IjsKKworICAgIHN0ZDo6c3RyaW5nIGZ1bGxf
bmFtZSA9CisgICAgICAgICJVbmluc3RhbnRpYXRlZFR5cGVQYXJhbWF0ZXJpemVkVGVzdFN1aXRl
PCIgKyB0ZXN0Y2FzZS5maXJzdCArICI+IjsKKyAgICBSZWdpc3RlclRlc3QoICAvLworICAgICAg
ICAiR29vZ2xlVGVzdFZlcmlmaWNhdGlvbiIsIGZ1bGxfbmFtZS5jX3N0cigpLAorICAgICAgICBu
dWxscHRyLCAgLy8gTm8gdHlwZSBwYXJhbWV0ZXIuCisgICAgICAgIG51bGxwdHIsICAvLyBObyB2
YWx1ZSBwYXJhbWV0ZXIuCisgICAgICAgIHRlc3RjYXNlLnNlY29uZC5jb2RlX2xvY2F0aW9uLmZp
bGUuY19zdHIoKSwKKyAgICAgICAgdGVzdGNhc2Uuc2Vjb25kLmNvZGVfbG9jYXRpb24ubGluZSwg
W21lc3NhZ2UsIHRlc3RjYXNlXSB7CisgICAgICAgICAgcmV0dXJuIG5ldyBGYWlsdXJlVGVzdCh0
ZXN0Y2FzZS5zZWNvbmQuY29kZV9sb2NhdGlvbiwgbWVzc2FnZSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGtFcnJvck9uVW5pbnN0YW50aWF0ZWRUeXBlUGFyYW1ldGVyaXplZFRl
c3QpOworICAgICAgICB9KTsKKyAgfQorfQogCiAvLyBBIGNvcHkgb2YgYWxsIGNvbW1hbmQgbGlu
ZSBhcmd1bWVudHMuICBTZXQgYnkgSW5pdEdvb2dsZVRlc3QoKS4KIHN0YXRpYyA6OnN0ZDo6dmVj
dG9yPHN0ZDo6c3RyaW5nPiBnX2FyZ3ZzOwpAQCAtNDQ1LDcgKzU4Miw3IEBAIHN0YXRpYyA6OnN0
ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiBnX2FyZ3ZzOwogRmlsZVBhdGggR2V0Q3VycmVudEV4ZWN1
dGFibGVOYW1lKCkgewogICBGaWxlUGF0aCByZXN1bHQ7CiAKLSNpZiBHVEVTVF9PU19XSU5ET1dT
CisjaWYgR1RFU1RfT1NfV0lORE9XUyB8fCBHVEVTVF9PU19PUzIKICAgcmVzdWx0LlNldChGaWxl
UGF0aChHZXRBcmd2cygpWzBdKS5SZW1vdmVFeHRlbnNpb24oImV4ZSIpKTsKICNlbHNlCiAgIHJl
c3VsdC5TZXQoRmlsZVBhdGgoR2V0QXJndnMoKVswXSkpOwpAQCAtNDYwLDkgKzU5NywxMCBAQCBG
aWxlUGF0aCBHZXRDdXJyZW50RXhlY3V0YWJsZU5hbWUoKSB7CiBzdGQ6OnN0cmluZyBVbml0VGVz
dE9wdGlvbnM6OkdldE91dHB1dEZvcm1hdCgpIHsKICAgY29uc3QgY2hhciogY29uc3QgZ3Rlc3Rf
b3V0cHV0X2ZsYWcgPSBHVEVTVF9GTEFHKG91dHB1dCkuY19zdHIoKTsKICAgY29uc3QgY2hhciog
Y29uc3QgY29sb24gPSBzdHJjaHIoZ3Rlc3Rfb3V0cHV0X2ZsYWcsICc6Jyk7Ci0gIHJldHVybiAo
Y29sb24gPT0gTlVMTCkgPwotICAgICAgc3RkOjpzdHJpbmcoZ3Rlc3Rfb3V0cHV0X2ZsYWcpIDoK
LSAgICAgIHN0ZDo6c3RyaW5nKGd0ZXN0X291dHB1dF9mbGFnLCBjb2xvbiAtIGd0ZXN0X291dHB1
dF9mbGFnKTsKKyAgcmV0dXJuIChjb2xvbiA9PSBudWxscHRyKQorICAgICAgICAgICAgID8gc3Rk
OjpzdHJpbmcoZ3Rlc3Rfb3V0cHV0X2ZsYWcpCisgICAgICAgICAgICAgOiBzdGQ6OnN0cmluZyhn
dGVzdF9vdXRwdXRfZmxhZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY19jYXN0
PHNpemVfdD4oY29sb24gLSBndGVzdF9vdXRwdXRfZmxhZykpOwogfQogCiAvLyBSZXR1cm5zIHRo
ZSBuYW1lIG9mIHRoZSByZXF1ZXN0ZWQgb3V0cHV0IGZpbGUsIG9yIHRoZSBkZWZhdWx0IGlmIG5v
bmUKQEAgLTQ3NSw3ICs2MTMsNyBAQCBzdGQ6OnN0cmluZyBVbml0VGVzdE9wdGlvbnM6OkdldEFi
c29sdXRlUGF0aFRvT3V0cHV0RmlsZSgpIHsKICAgICBmb3JtYXQgPSBzdGQ6OnN0cmluZyhrRGVm
YXVsdE91dHB1dEZvcm1hdCk7CiAKICAgY29uc3QgY2hhciogY29uc3QgY29sb24gPSBzdHJjaHIo
Z3Rlc3Rfb3V0cHV0X2ZsYWcsICc6Jyk7Ci0gIGlmIChjb2xvbiA9PSBOVUxMKQorICBpZiAoY29s
b24gPT0gbnVsbHB0cikKICAgICByZXR1cm4gaW50ZXJuYWw6OkZpbGVQYXRoOjpNYWtlRmlsZU5h
bWUoCiAgICAgICAgIGludGVybmFsOjpGaWxlUGF0aCgKICAgICAgICAgICAgIFVuaXRUZXN0OjpH
ZXRJbnN0YW5jZSgpLT5vcmlnaW5hbF93b3JraW5nX2RpcigpKSwKQEAgLTQ4NCwxMCArNjIyLDYg
QEAgc3RkOjpzdHJpbmcgVW5pdFRlc3RPcHRpb25zOjpHZXRBYnNvbHV0ZVBhdGhUb091dHB1dEZp
bGUoKSB7CiAKICAgaW50ZXJuYWw6OkZpbGVQYXRoIG91dHB1dF9uYW1lKGNvbG9uICsgMSk7CiAg
IGlmICghb3V0cHV0X25hbWUuSXNBYnNvbHV0ZVBhdGgoKSkKLSAgICAvLyBGSVhNRTogb24gV2lu
ZG93cyBcc29tZVxwYXRoIGlzIG5vdCBhbiBhYnNvbHV0ZQotICAgIC8vIHBhdGggKGFzIGl0cyBt
ZWFuaW5nIGRlcGVuZHMgb24gdGhlIGN1cnJlbnQgZHJpdmUpLCB5ZXQgdGhlCi0gICAgLy8gZm9s
bG93aW5nIGxvZ2ljIGZvciB0dXJuaW5nIGl0IGludG8gYW4gYWJzb2x1dGUgcGF0aCBpcyB3cm9u
Zy4KLSAgICAvLyBGaXggaXQuCiAgICAgb3V0cHV0X25hbWUgPSBpbnRlcm5hbDo6RmlsZVBhdGg6
OkNvbmNhdFBhdGhzKAogICAgICAgICBpbnRlcm5hbDo6RmlsZVBhdGgoVW5pdFRlc3Q6OkdldElu
c3RhbmNlKCktPm9yaWdpbmFsX3dvcmtpbmdfZGlyKCkpLAogICAgICAgICBpbnRlcm5hbDo6Rmls
ZVBhdGgoY29sb24gKyAxKSk7CkBAIC01MDEsOCArNjM1LDggQEAgc3RkOjpzdHJpbmcgVW5pdFRl
c3RPcHRpb25zOjpHZXRBYnNvbHV0ZVBhdGhUb091dHB1dEZpbGUoKSB7CiAgIHJldHVybiByZXN1
bHQuc3RyaW5nKCk7CiB9CiAKLS8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIHdpbGRjYXJkIHBhdHRl
cm4gbWF0Y2hlcyB0aGUgc3RyaW5nLiAgVGhlCi0vLyBmaXJzdCAnOicgb3IgJ1wwJyBjaGFyYWN0
ZXIgaW4gcGF0dGVybiBtYXJrcyB0aGUgZW5kIG9mIGl0LgorLy8gUmV0dXJucyB0cnVlIGlmIGFu
ZCBvbmx5IGlmIHRoZSB3aWxkY2FyZCBwYXR0ZXJuIG1hdGNoZXMgdGhlIHN0cmluZy4KKy8vIFRo
ZSBmaXJzdCAnOicgb3IgJ1wwJyBjaGFyYWN0ZXIgaW4gcGF0dGVybiBtYXJrcyB0aGUgZW5kIG9m
IGl0LgogLy8KIC8vIFRoaXMgcmVjdXJzaXZlIGFsZ29yaXRobSBpc24ndCB2ZXJ5IGVmZmljaWVu
dCwgYnV0IGlzIGNsZWFyIGFuZAogLy8gd29ya3Mgd2VsbCBlbm91Z2ggZm9yIG1hdGNoaW5nIHRl
c3QgbmFtZXMsIHdoaWNoIGFyZSBzaG9ydC4KQEAgLTUzNSw3ICs2NjksNyBAQCBib29sIFVuaXRU
ZXN0T3B0aW9uczo6TWF0Y2hlc0ZpbHRlcigKICAgICBjdXJfcGF0dGVybiA9IHN0cmNocihjdXJf
cGF0dGVybiwgJzonKTsKIAogICAgIC8vIFJldHVybnMgaWYgbm8gbW9yZSBwYXR0ZXJuIGNhbiBi
ZSBmb3VuZC4KLSAgICBpZiAoY3VyX3BhdHRlcm4gPT0gTlVMTCkgeworICAgIGlmIChjdXJfcGF0
dGVybiA9PSBudWxscHRyKSB7CiAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCkBAIC01NDQs
MTEgKzY3OCwxMSBAQCBib29sIFVuaXRUZXN0T3B0aW9uczo6TWF0Y2hlc0ZpbHRlcigKICAgfQog
fQogCi0vLyBSZXR1cm5zIHRydWUgaWZmIHRoZSB1c2VyLXNwZWNpZmllZCBmaWx0ZXIgbWF0Y2hl
cyB0aGUgdGVzdCBjYXNlCi0vLyBuYW1lIGFuZCB0aGUgdGVzdCBuYW1lLgotYm9vbCBVbml0VGVz
dE9wdGlvbnM6OkZpbHRlck1hdGNoZXNUZXN0KGNvbnN0IHN0ZDo6c3RyaW5nICZ0ZXN0X2Nhc2Vf
bmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6
OnN0cmluZyAmdGVzdF9uYW1lKSB7Ci0gIGNvbnN0IHN0ZDo6c3RyaW5nJiBmdWxsX25hbWUgPSB0
ZXN0X2Nhc2VfbmFtZSArICIuIiArIHRlc3RfbmFtZS5jX3N0cigpOworLy8gUmV0dXJucyB0cnVl
IGlmIGFuZCBvbmx5IGlmIHRoZSB1c2VyLXNwZWNpZmllZCBmaWx0ZXIgbWF0Y2hlcyB0aGUgdGVz
dAorLy8gc3VpdGUgbmFtZSBhbmQgdGhlIHRlc3QgbmFtZS4KK2Jvb2wgVW5pdFRlc3RPcHRpb25z
OjpGaWx0ZXJNYXRjaGVzVGVzdChjb25zdCBzdGQ6OnN0cmluZyYgdGVzdF9zdWl0ZV9uYW1lLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5n
JiB0ZXN0X25hbWUpIHsKKyAgY29uc3Qgc3RkOjpzdHJpbmcmIGZ1bGxfbmFtZSA9IHRlc3Rfc3Vp
dGVfbmFtZSArICIuIiArIHRlc3RfbmFtZS5jX3N0cigpOwogCiAgIC8vIFNwbGl0IC0tZ3Rlc3Rf
ZmlsdGVyIGF0ICctJywgaWYgdGhlcmUgaXMgb25lLCB0byBzZXBhcmF0ZSBpbnRvCiAgIC8vIHBv
c2l0aXZlIGZpbHRlciBhbmQgbmVnYXRpdmUgZmlsdGVyIHBvcnRpb25zCkBAIC01NTYsNyArNjkw
LDcgQEAgYm9vbCBVbml0VGVzdE9wdGlvbnM6OkZpbHRlck1hdGNoZXNUZXN0KGNvbnN0IHN0ZDo6
c3RyaW5nICZ0ZXN0X2Nhc2VfbmFtZSwKICAgY29uc3QgY2hhciogY29uc3QgZGFzaCA9IHN0cmNo
cihwLCAnLScpOwogICBzdGQ6OnN0cmluZyBwb3NpdGl2ZTsKICAgc3RkOjpzdHJpbmcgbmVnYXRp
dmU7Ci0gIGlmIChkYXNoID09IE5VTEwpIHsKKyAgaWYgKGRhc2ggPT0gbnVsbHB0cikgewogICAg
IHBvc2l0aXZlID0gR1RFU1RfRkxBRyhmaWx0ZXIpLmNfc3RyKCk7ICAvLyBXaG9sZSBzdHJpbmcg
aXMgYSBwb3NpdGl2ZSBmaWx0ZXIKICAgICBuZWdhdGl2ZSA9ICIiOwogICB9IGVsc2UgewpAQCAt
NzAxLDcgKzgzNSw3IEBAIHN0YXRpYyBBc3NlcnRpb25SZXN1bHQgSGFzT25lRmFpbHVyZShjb25z
dCBjaGFyKiAvKiByZXN1bHRzX2V4cHIgKi8sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICA8PCByOwogICB9CiAKLSAgaWYgKHN0cnN0cihyLm1lc3NhZ2UoKSwgc3Vic3RyLmNfc3RyKCkp
ID09IE5VTEwpIHsKKyAgaWYgKHN0cnN0cihyLm1lc3NhZ2UoKSwgc3Vic3RyLmNfc3RyKCkpID09
IG51bGxwdHIpIHsKICAgICByZXR1cm4gQXNzZXJ0aW9uRmFpbHVyZSgpIDw8ICJFeHBlY3RlZDog
IiA8PCBleHBlY3RlZCA8PCAiIGNvbnRhaW5pbmcgXCIiCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA8PCBzdWJzdHIgPDwgIlwiXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICA8PCAiICBBY3R1YWw6XG4iCkBAIC03NzAsNjEgKzkwNCw2NiBAQCB2b2lkIFVuaXRUZXN0SW1w
bDo6U2V0VGVzdFBhcnRSZXN1bHRSZXBvcnRlckZvckN1cnJlbnRUaHJlYWQoCiAgIHBlcl90aHJl
YWRfdGVzdF9wYXJ0X3Jlc3VsdF9yZXBvcnRlcl8uc2V0KHJlcG9ydGVyKTsKIH0KIAotLy8gR2V0
cyB0aGUgbnVtYmVyIG9mIHN1Y2Nlc3NmdWwgdGVzdCBjYXNlcy4KLWludCBVbml0VGVzdEltcGw6
OnN1Y2Nlc3NmdWxfdGVzdF9jYXNlX2NvdW50KCkgY29uc3QgewotICByZXR1cm4gQ291bnRJZih0
ZXN0X2Nhc2VzXywgVGVzdENhc2VQYXNzZWQpOworLy8gR2V0cyB0aGUgbnVtYmVyIG9mIHN1Y2Nl
c3NmdWwgdGVzdCBzdWl0ZXMuCitpbnQgVW5pdFRlc3RJbXBsOjpzdWNjZXNzZnVsX3Rlc3Rfc3Vp
dGVfY291bnQoKSBjb25zdCB7CisgIHJldHVybiBDb3VudElmKHRlc3Rfc3VpdGVzXywgVGVzdFN1
aXRlUGFzc2VkKTsKIH0KIAotLy8gR2V0cyB0aGUgbnVtYmVyIG9mIGZhaWxlZCB0ZXN0IGNhc2Vz
LgotaW50IFVuaXRUZXN0SW1wbDo6ZmFpbGVkX3Rlc3RfY2FzZV9jb3VudCgpIGNvbnN0IHsKLSAg
cmV0dXJuIENvdW50SWYodGVzdF9jYXNlc18sIFRlc3RDYXNlRmFpbGVkKTsKKy8vIEdldHMgdGhl
IG51bWJlciBvZiBmYWlsZWQgdGVzdCBzdWl0ZXMuCitpbnQgVW5pdFRlc3RJbXBsOjpmYWlsZWRf
dGVzdF9zdWl0ZV9jb3VudCgpIGNvbnN0IHsKKyAgcmV0dXJuIENvdW50SWYodGVzdF9zdWl0ZXNf
LCBUZXN0U3VpdGVGYWlsZWQpOwogfQogCi0vLyBHZXRzIHRoZSBudW1iZXIgb2YgYWxsIHRlc3Qg
Y2FzZXMuCi1pbnQgVW5pdFRlc3RJbXBsOjp0b3RhbF90ZXN0X2Nhc2VfY291bnQoKSBjb25zdCB7
Ci0gIHJldHVybiBzdGF0aWNfY2FzdDxpbnQ+KHRlc3RfY2FzZXNfLnNpemUoKSk7CisvLyBHZXRz
IHRoZSBudW1iZXIgb2YgYWxsIHRlc3Qgc3VpdGVzLgoraW50IFVuaXRUZXN0SW1wbDo6dG90YWxf
dGVzdF9zdWl0ZV9jb3VudCgpIGNvbnN0IHsKKyAgcmV0dXJuIHN0YXRpY19jYXN0PGludD4odGVz
dF9zdWl0ZXNfLnNpemUoKSk7CiB9CiAKLS8vIEdldHMgdGhlIG51bWJlciBvZiBhbGwgdGVzdCBj
YXNlcyB0aGF0IGNvbnRhaW4gYXQgbGVhc3Qgb25lIHRlc3QKKy8vIEdldHMgdGhlIG51bWJlciBv
ZiBhbGwgdGVzdCBzdWl0ZXMgdGhhdCBjb250YWluIGF0IGxlYXN0IG9uZSB0ZXN0CiAvLyB0aGF0
IHNob3VsZCBydW4uCi1pbnQgVW5pdFRlc3RJbXBsOjp0ZXN0X2Nhc2VfdG9fcnVuX2NvdW50KCkg
Y29uc3QgewotICByZXR1cm4gQ291bnRJZih0ZXN0X2Nhc2VzXywgU2hvdWxkUnVuVGVzdENhc2Up
OworaW50IFVuaXRUZXN0SW1wbDo6dGVzdF9zdWl0ZV90b19ydW5fY291bnQoKSBjb25zdCB7Cisg
IHJldHVybiBDb3VudElmKHRlc3Rfc3VpdGVzXywgU2hvdWxkUnVuVGVzdFN1aXRlKTsKIH0KIAog
Ly8gR2V0cyB0aGUgbnVtYmVyIG9mIHN1Y2Nlc3NmdWwgdGVzdHMuCiBpbnQgVW5pdFRlc3RJbXBs
OjpzdWNjZXNzZnVsX3Rlc3RfY291bnQoKSBjb25zdCB7Ci0gIHJldHVybiBTdW1PdmVyVGVzdENh
c2VMaXN0KHRlc3RfY2FzZXNfLCAmVGVzdENhc2U6OnN1Y2Nlc3NmdWxfdGVzdF9jb3VudCk7Cisg
IHJldHVybiBTdW1PdmVyVGVzdFN1aXRlTGlzdCh0ZXN0X3N1aXRlc18sICZUZXN0U3VpdGU6OnN1
Y2Nlc3NmdWxfdGVzdF9jb3VudCk7Cit9CisKKy8vIEdldHMgdGhlIG51bWJlciBvZiBza2lwcGVk
IHRlc3RzLgoraW50IFVuaXRUZXN0SW1wbDo6c2tpcHBlZF90ZXN0X2NvdW50KCkgY29uc3Qgewor
ICByZXR1cm4gU3VtT3ZlclRlc3RTdWl0ZUxpc3QodGVzdF9zdWl0ZXNfLCAmVGVzdFN1aXRlOjpz
a2lwcGVkX3Rlc3RfY291bnQpOwogfQogCiAvLyBHZXRzIHRoZSBudW1iZXIgb2YgZmFpbGVkIHRl
c3RzLgogaW50IFVuaXRUZXN0SW1wbDo6ZmFpbGVkX3Rlc3RfY291bnQoKSBjb25zdCB7Ci0gIHJl
dHVybiBTdW1PdmVyVGVzdENhc2VMaXN0KHRlc3RfY2FzZXNfLCAmVGVzdENhc2U6OmZhaWxlZF90
ZXN0X2NvdW50KTsKKyAgcmV0dXJuIFN1bU92ZXJUZXN0U3VpdGVMaXN0KHRlc3Rfc3VpdGVzXywg
JlRlc3RTdWl0ZTo6ZmFpbGVkX3Rlc3RfY291bnQpOwogfQogCiAvLyBHZXRzIHRoZSBudW1iZXIg
b2YgZGlzYWJsZWQgdGVzdHMgdGhhdCB3aWxsIGJlIHJlcG9ydGVkIGluIHRoZSBYTUwgcmVwb3J0
LgogaW50IFVuaXRUZXN0SW1wbDo6cmVwb3J0YWJsZV9kaXNhYmxlZF90ZXN0X2NvdW50KCkgY29u
c3QgewotICByZXR1cm4gU3VtT3ZlclRlc3RDYXNlTGlzdCh0ZXN0X2Nhc2VzXywKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgJlRlc3RDYXNlOjpyZXBvcnRhYmxlX2Rpc2FibGVkX3Rlc3Rf
Y291bnQpOworICByZXR1cm4gU3VtT3ZlclRlc3RTdWl0ZUxpc3QodGVzdF9zdWl0ZXNfLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJlRlc3RTdWl0ZTo6cmVwb3J0YWJsZV9kaXNhYmxl
ZF90ZXN0X2NvdW50KTsKIH0KIAogLy8gR2V0cyB0aGUgbnVtYmVyIG9mIGRpc2FibGVkIHRlc3Rz
LgogaW50IFVuaXRUZXN0SW1wbDo6ZGlzYWJsZWRfdGVzdF9jb3VudCgpIGNvbnN0IHsKLSAgcmV0
dXJuIFN1bU92ZXJUZXN0Q2FzZUxpc3QodGVzdF9jYXNlc18sICZUZXN0Q2FzZTo6ZGlzYWJsZWRf
dGVzdF9jb3VudCk7CisgIHJldHVybiBTdW1PdmVyVGVzdFN1aXRlTGlzdCh0ZXN0X3N1aXRlc18s
ICZUZXN0U3VpdGU6OmRpc2FibGVkX3Rlc3RfY291bnQpOwogfQogCiAvLyBHZXRzIHRoZSBudW1i
ZXIgb2YgdGVzdHMgdG8gYmUgcHJpbnRlZCBpbiB0aGUgWE1MIHJlcG9ydC4KIGludCBVbml0VGVz
dEltcGw6OnJlcG9ydGFibGVfdGVzdF9jb3VudCgpIGNvbnN0IHsKLSAgcmV0dXJuIFN1bU92ZXJU
ZXN0Q2FzZUxpc3QodGVzdF9jYXNlc18sICZUZXN0Q2FzZTo6cmVwb3J0YWJsZV90ZXN0X2NvdW50
KTsKKyAgcmV0dXJuIFN1bU92ZXJUZXN0U3VpdGVMaXN0KHRlc3Rfc3VpdGVzXywgJlRlc3RTdWl0
ZTo6cmVwb3J0YWJsZV90ZXN0X2NvdW50KTsKIH0KIAogLy8gR2V0cyB0aGUgbnVtYmVyIG9mIGFs
bCB0ZXN0cy4KIGludCBVbml0VGVzdEltcGw6OnRvdGFsX3Rlc3RfY291bnQoKSBjb25zdCB7Ci0g
IHJldHVybiBTdW1PdmVyVGVzdENhc2VMaXN0KHRlc3RfY2FzZXNfLCAmVGVzdENhc2U6OnRvdGFs
X3Rlc3RfY291bnQpOworICByZXR1cm4gU3VtT3ZlclRlc3RTdWl0ZUxpc3QodGVzdF9zdWl0ZXNf
LCAmVGVzdFN1aXRlOjp0b3RhbF90ZXN0X2NvdW50KTsKIH0KIAogLy8gR2V0cyB0aGUgbnVtYmVy
IG9mIHRlc3RzIHRoYXQgc2hvdWxkIHJ1bi4KIGludCBVbml0VGVzdEltcGw6OnRlc3RfdG9fcnVu
X2NvdW50KCkgY29uc3QgewotICByZXR1cm4gU3VtT3ZlclRlc3RDYXNlTGlzdCh0ZXN0X2Nhc2Vz
XywgJlRlc3RDYXNlOjp0ZXN0X3RvX3J1bl9jb3VudCk7CisgIHJldHVybiBTdW1PdmVyVGVzdFN1
aXRlTGlzdCh0ZXN0X3N1aXRlc18sICZUZXN0U3VpdGU6OnRlc3RfdG9fcnVuX2NvdW50KTsKIH0K
IAogLy8gUmV0dXJucyB0aGUgY3VycmVudCBPUyBzdGFjayB0cmFjZSBhcyBhbiBzdGQ6OnN0cmlu
Zy4KQEAgLTg1OCw4ICs5OTcsNiBAQCBUaW1lSW5NaWxsaXMgR2V0VGltZUluTWlsbGlzKCkgewog
ICBTWVNURU1USU1FIG5vd19zeXN0aW1lOwogICBGSUxFVElNRSBub3dfZmlsZXRpbWU7CiAgIFVM
QVJHRV9JTlRFR0VSIG5vd19pbnQ2NDsKLSAgLy8gRklYTUU6IFNob3VsZG4ndCB0aGlzIGp1c3Qg
dXNlCi0gIC8vICAgR2V0U3lzdGVtVGltZUFzRmlsZVRpbWUoKT8KICAgR2V0U3lzdGVtVGltZSgm
bm93X3N5c3RpbWUpOwogICBpZiAoU3lzdGVtVGltZVRvRmlsZVRpbWUoJm5vd19zeXN0aW1lLCAm
bm93X2ZpbGV0aW1lKSkgewogICAgIG5vd19pbnQ2NC5Mb3dQYXJ0ID0gbm93X2ZpbGV0aW1lLmR3
TG93RGF0ZVRpbWU7CkBAIC04NzQsOCArMTAxMSw2IEBAIFRpbWVJbk1pbGxpcyBHZXRUaW1lSW5N
aWxsaXMoKSB7CiAKICAgLy8gTVNWQyA4IGRlcHJlY2F0ZXMgX2Z0aW1lNjQoKSwgc28gd2Ugd2Fu
dCB0byBzdXBwcmVzcyB3YXJuaW5nIDQ5OTYKICAgLy8gKGRlcHJlY2F0ZWQgZnVuY3Rpb24pIHRo
ZXJlLgotICAvLyBGSVhNRTogVXNlIEdldFRpY2tDb3VudCgpPyAgT3IgdXNlCi0gIC8vICAgU3lz
dGVtVGltZVRvRmlsZVRpbWUoKQogICBHVEVTVF9ESVNBQkxFX01TQ19ERVBSRUNBVEVEX1BVU0hf
KCkKICAgX2Z0aW1lNjQoJm5vdyk7CiAgIEdURVNUX0RJU0FCTEVfTVNDX0RFUFJFQ0FURURfUE9Q
XygpCkBAIC04ODMsNyArMTAxOCw3IEBAIFRpbWVJbk1pbGxpcyBHZXRUaW1lSW5NaWxsaXMoKSB7
CiAgIHJldHVybiBzdGF0aWNfY2FzdDxUaW1lSW5NaWxsaXM+KG5vdy50aW1lKSAqIDEwMDAgKyBu
b3cubWlsbGl0bTsKICNlbGlmIEdURVNUX0hBU19HRVRUSU1FT0ZEQVlfCiAgIHN0cnVjdCB0aW1l
dmFsIG5vdzsKLSAgZ2V0dGltZW9mZGF5KCZub3csIE5VTEwpOworICBnZXR0aW1lb2ZkYXkoJm5v
dywgbnVsbHB0cik7CiAgIHJldHVybiBzdGF0aWNfY2FzdDxUaW1lSW5NaWxsaXM+KG5vdy50dl9z
ZWMpICogMTAwMCArIG5vdy50dl91c2VjIC8gMTAwMDsKICNlbHNlCiAjIGVycm9yICJEb24ndCBr
bm93IGhvdyB0byBnZXQgdGhlIGN1cnJlbnQgdGltZSBvbiB5b3VyIHN5c3RlbS4iCkBAIC05MDAs
MTEgKzEwMzUsMTAgQEAgVGltZUluTWlsbGlzIEdldFRpbWVJbk1pbGxpcygpIHsKIC8vIHZhbHVl
IHVzaW5nIGRlbGV0ZVtdLiBSZXR1cm5zIHRoZSB3aWRlIHN0cmluZywgb3IgTlVMTCBpZiB0aGUK
IC8vIGlucHV0IGlzIE5VTEwuCiBMUENXU1RSIFN0cmluZzo6QW5zaVRvVXRmMTYoY29uc3QgY2hh
ciogYW5zaSkgewotICBpZiAoIWFuc2kpIHJldHVybiBOVUxMOworICBpZiAoIWFuc2kpIHJldHVy
biBudWxscHRyOwogICBjb25zdCBpbnQgbGVuZ3RoID0gc3RybGVuKGFuc2kpOwogICBjb25zdCBp
bnQgdW5pY29kZV9sZW5ndGggPQotICAgICAgTXVsdGlCeXRlVG9XaWRlQ2hhcihDUF9BQ1AsIDAs
IGFuc2ksIGxlbmd0aCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgMCk7CisgICAg
ICBNdWx0aUJ5dGVUb1dpZGVDaGFyKENQX0FDUCwgMCwgYW5zaSwgbGVuZ3RoLCBudWxscHRyLCAw
KTsKICAgV0NIQVIqIHVuaWNvZGUgPSBuZXcgV0NIQVJbdW5pY29kZV9sZW5ndGggKyAxXTsKICAg
TXVsdGlCeXRlVG9XaWRlQ2hhcihDUF9BQ1AsIDAsIGFuc2ksIGxlbmd0aCwKICAgICAgICAgICAg
ICAgICAgICAgICB1bmljb2RlLCB1bmljb2RlX2xlbmd0aCk7CkBAIC05MTcsMzMgKzEwNTEsMzMg
QEAgTFBDV1NUUiBTdHJpbmc6OkFuc2lUb1V0ZjE2KGNvbnN0IGNoYXIqIGFuc2kpIHsKIC8vIHZh
bHVlIHVzaW5nIGRlbGV0ZVtdLiBSZXR1cm5zIHRoZSBBTlNJIHN0cmluZywgb3IgTlVMTCBpZiB0
aGUKIC8vIGlucHV0IGlzIE5VTEwuCiBjb25zdCBjaGFyKiBTdHJpbmc6OlV0ZjE2VG9BbnNpKExQ
Q1dTVFIgdXRmMTZfc3RyKSAgewotICBpZiAoIXV0ZjE2X3N0cikgcmV0dXJuIE5VTEw7Ci0gIGNv
bnN0IGludCBhbnNpX2xlbmd0aCA9Ci0gICAgICBXaWRlQ2hhclRvTXVsdGlCeXRlKENQX0FDUCwg
MCwgdXRmMTZfc3RyLCAtMSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgMCwgTlVM
TCwgTlVMTCk7CisgIGlmICghdXRmMTZfc3RyKSByZXR1cm4gbnVsbHB0cjsKKyAgY29uc3QgaW50
IGFuc2lfbGVuZ3RoID0gV2lkZUNoYXJUb011bHRpQnl0ZShDUF9BQ1AsIDAsIHV0ZjE2X3N0ciwg
LTEsIG51bGxwdHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgMCwgbnVsbHB0ciwgbnVsbHB0cik7CiAgIGNoYXIqIGFuc2kgPSBuZXcgY2hhclthbnNpX2xl
bmd0aCArIDFdOwotICBXaWRlQ2hhclRvTXVsdGlCeXRlKENQX0FDUCwgMCwgdXRmMTZfc3RyLCAt
MSwKLSAgICAgICAgICAgICAgICAgICAgICBhbnNpLCBhbnNpX2xlbmd0aCwgTlVMTCwgTlVMTCk7
CisgIFdpZGVDaGFyVG9NdWx0aUJ5dGUoQ1BfQUNQLCAwLCB1dGYxNl9zdHIsIC0xLCBhbnNpLCBh
bnNpX2xlbmd0aCwgbnVsbHB0ciwKKyAgICAgICAgICAgICAgICAgICAgICBudWxscHRyKTsKICAg
YW5zaVthbnNpX2xlbmd0aF0gPSAwOwogICByZXR1cm4gYW5zaTsKIH0KIAogI2VuZGlmICAvLyBH
VEVTVF9PU19XSU5ET1dTX01PQklMRQogCi0vLyBDb21wYXJlcyB0d28gQyBzdHJpbmdzLiAgUmV0
dXJucyB0cnVlIGlmZiB0aGV5IGhhdmUgdGhlIHNhbWUgY29udGVudC4KKy8vIENvbXBhcmVzIHR3
byBDIHN0cmluZ3MuICBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhleSBoYXZlIHRoZSBz
YW1lCisvLyBjb250ZW50LgogLy8KIC8vIFVubGlrZSBzdHJjbXAoKSwgdGhpcyBmdW5jdGlvbiBj
YW4gaGFuZGxlIE5VTEwgYXJndW1lbnQocykuICBBIE5VTEwKIC8vIEMgc3RyaW5nIGlzIGNvbnNp
ZGVyZWQgZGlmZmVyZW50IHRvIGFueSBub24tTlVMTCBDIHN0cmluZywKIC8vIGluY2x1ZGluZyB0
aGUgZW1wdHkgc3RyaW5nLgogYm9vbCBTdHJpbmc6OkNTdHJpbmdFcXVhbHMoY29uc3QgY2hhciAq
IGxocywgY29uc3QgY2hhciAqIHJocykgewotICBpZiAoIGxocyA9PSBOVUxMICkgcmV0dXJuIHJo
cyA9PSBOVUxMOworICBpZiAobGhzID09IG51bGxwdHIpIHJldHVybiByaHMgPT0gbnVsbHB0cjsK
IAotICBpZiAoIHJocyA9PSBOVUxMICkgcmV0dXJuIGZhbHNlOworICBpZiAocmhzID09IG51bGxw
dHIpIHJldHVybiBmYWxzZTsKIAogICByZXR1cm4gc3RyY21wKGxocywgcmhzKSA9PSAwOwogfQog
Ci0jaWYgR1RFU1RfSEFTX1NURF9XU1RSSU5HIHx8IEdURVNUX0hBU19HTE9CQUxfV1NUUklORwor
I2lmIEdURVNUX0hBU19TVERfV1NUUklORwogCiAvLyBDb252ZXJ0cyBhbiBhcnJheSBvZiB3aWRl
IGNoYXJzIHRvIGEgbmFycm93IHN0cmluZyB1c2luZyB0aGUgVVRGLTgKIC8vIGVuY29kaW5nLCBh
bmQgc3RyZWFtcyB0aGUgcmVzdWx0IHRvIHRoZSBnaXZlbiBNZXNzYWdlIG9iamVjdC4KQEAgLTk2
MSw3ICsxMDk1LDcgQEAgc3RhdGljIHZvaWQgU3RyZWFtV2lkZUNoYXJzVG9NZXNzYWdlKGNvbnN0
IHdjaGFyX3QqIHdzdHIsIHNpemVfdCBsZW5ndGgsCiAgIH0KIH0KIAotI2VuZGlmICAvLyBHVEVT
VF9IQVNfU1REX1dTVFJJTkcgfHwgR1RFU1RfSEFTX0dMT0JBTF9XU1RSSU5HCisjZW5kaWYgIC8v
IEdURVNUX0hBU19TVERfV1NUUklORwogCiB2b2lkIFNwbGl0U3RyaW5nKGNvbnN0IDo6c3RkOjpz
dHJpbmcmIHN0ciwgY2hhciBkZWxpbWl0ZXIsCiAgICAgICAgICAgICAgICAgIDo6c3RkOjp2ZWN0
b3I8IDo6c3RkOjpzdHJpbmc+KiBkZXN0KSB7CkBAIC0xMDExLDE1ICsxMTQ1LDYgQEAgTWVzc2Fn
ZSYgTWVzc2FnZTo6b3BlcmF0b3IgPDwoY29uc3QgOjpzdGQ6OndzdHJpbmcmIHdzdHIpIHsKIH0K
ICNlbmRpZiAgLy8gR1RFU1RfSEFTX1NURF9XU1RSSU5HCiAKLSNpZiBHVEVTVF9IQVNfR0xPQkFM
X1dTVFJJTkcKLS8vIENvbnZlcnRzIHRoZSBnaXZlbiB3aWRlIHN0cmluZyB0byBhIG5hcnJvdyBz
dHJpbmcgdXNpbmcgdGhlIFVURi04Ci0vLyBlbmNvZGluZywgYW5kIHN0cmVhbXMgdGhlIHJlc3Vs
dCB0byB0aGlzIE1lc3NhZ2Ugb2JqZWN0LgotTWVzc2FnZSYgTWVzc2FnZTo6b3BlcmF0b3IgPDwo
Y29uc3QgOjp3c3RyaW5nJiB3c3RyKSB7Ci0gIGludGVybmFsOjpTdHJlYW1XaWRlQ2hhcnNUb01l
c3NhZ2Uod3N0ci5jX3N0cigpLCB3c3RyLmxlbmd0aCgpLCB0aGlzKTsKLSAgcmV0dXJuICp0aGlz
OwotfQotI2VuZGlmICAvLyBHVEVTVF9IQVNfR0xPQkFMX1dTVFJJTkcKLQogLy8gR2V0cyB0aGUg
dGV4dCBzdHJlYW1lZCB0byB0aGlzIG9iamVjdCBzbyBmYXIgYXMgYW4gc3RkOjpzdHJpbmcuCiAv
LyBFYWNoICdcMCcgY2hhcmFjdGVyIGluIHRoZSBidWZmZXIgaXMgcmVwbGFjZWQgd2l0aCAiXFww
Ii4KIHN0ZDo6c3RyaW5nIE1lc3NhZ2U6OkdldFN0cmluZygpIGNvbnN0IHsKQEAgLTEwMzAsMTAg
KzExNTUsOSBAQCBzdGQ6OnN0cmluZyBNZXNzYWdlOjpHZXRTdHJpbmcoKSBjb25zdCB7CiAvLyBV
c2VkIGluIEVYUEVDVF9UUlVFL0ZBTFNFKGFzc2VydGlvbl9yZXN1bHQpLgogQXNzZXJ0aW9uUmVz
dWx0OjpBc3NlcnRpb25SZXN1bHQoY29uc3QgQXNzZXJ0aW9uUmVzdWx0JiBvdGhlcikKICAgICA6
IHN1Y2Nlc3NfKG90aGVyLnN1Y2Nlc3NfKSwKLSAgICAgIG1lc3NhZ2VfKG90aGVyLm1lc3NhZ2Vf
LmdldCgpICE9IE5VTEwgPwotICAgICAgICAgICAgICAgbmV3IDo6c3RkOjpzdHJpbmcoKm90aGVy
Lm1lc3NhZ2VfKSA6Ci0gICAgICAgICAgICAgICBzdGF0aWNfY2FzdDwgOjpzdGQ6OnN0cmluZyo+
KE5VTEwpKSB7Ci19CisgICAgICBtZXNzYWdlXyhvdGhlci5tZXNzYWdlXy5nZXQoKSAhPSBudWxs
cHRyCisgICAgICAgICAgICAgICAgICAgPyBuZXcgOjpzdGQ6OnN0cmluZygqb3RoZXIubWVzc2Fn
ZV8pCisgICAgICAgICAgICAgICAgICAgOiBzdGF0aWNfY2FzdDwgOjpzdGQ6OnN0cmluZyo+KG51
bGxwdHIpKSB7fQogCiAvLyBTd2FwcyB0d28gQXNzZXJ0aW9uUmVzdWx0cy4KIHZvaWQgQXNzZXJ0
aW9uUmVzdWx0Ojpzd2FwKEFzc2VydGlvblJlc3VsdCYgb3RoZXIpIHsKQEAgLTEwNDUsOCArMTE2
OSw3IEBAIHZvaWQgQXNzZXJ0aW9uUmVzdWx0Ojpzd2FwKEFzc2VydGlvblJlc3VsdCYgb3RoZXIp
IHsKIC8vIFJldHVybnMgdGhlIGFzc2VydGlvbidzIG5lZ2F0aW9uLiBVc2VkIHdpdGggRVhQRUNU
L0FTU0VSVF9GQUxTRS4KIEFzc2VydGlvblJlc3VsdCBBc3NlcnRpb25SZXN1bHQ6Om9wZXJhdG9y
ISgpIGNvbnN0IHsKICAgQXNzZXJ0aW9uUmVzdWx0IG5lZ2F0aW9uKCFzdWNjZXNzXyk7Ci0gIGlm
IChtZXNzYWdlXy5nZXQoKSAhPSBOVUxMKQotICAgIG5lZ2F0aW9uIDw8ICptZXNzYWdlXzsKKyAg
aWYgKG1lc3NhZ2VfLmdldCgpICE9IG51bGxwdHIpIG5lZ2F0aW9uIDw8ICptZXNzYWdlXzsKICAg
cmV0dXJuIG5lZ2F0aW9uOwogfQogCkBAIC0xMjcyLDkgKzEzOTUsMTAgQEAgc3RkOjpzdHJpbmcg
Q3JlYXRlVW5pZmllZERpZmYoY29uc3Qgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+JiBsZWZ0LAog
ICAgIGZvciAoOyBlZGl0X2kgPCBlZGl0cy5zaXplKCk7ICsrZWRpdF9pKSB7CiAgICAgICBpZiAo
bl9zdWZmaXggPj0gY29udGV4dCkgewogICAgICAgICAvLyBDb250aW51ZSBvbmx5IGlmIHRoZSBu
ZXh0IGh1bmsgaXMgdmVyeSBjbG9zZS4KLSAgICAgICAgc3RkOjp2ZWN0b3I8RWRpdFR5cGU+Ojpj
b25zdF9pdGVyYXRvciBpdCA9IGVkaXRzLmJlZ2luKCkgKyBlZGl0X2k7CisgICAgICAgIGF1dG8g
aXQgPSBlZGl0cy5iZWdpbigpICsgc3RhdGljX2Nhc3Q8aW50PihlZGl0X2kpOwogICAgICAgICB3
aGlsZSAoaXQgIT0gZWRpdHMuZW5kKCkgJiYgKml0ID09IGtNYXRjaCkgKytpdDsKLSAgICAgICAg
aWYgKGl0ID09IGVkaXRzLmVuZCgpIHx8IChpdCAtIGVkaXRzLmJlZ2luKCkpIC0gZWRpdF9pID49
IGNvbnRleHQpIHsKKyAgICAgICAgaWYgKGl0ID09IGVkaXRzLmVuZCgpIHx8CisgICAgICAgICAg
ICBzdGF0aWNfY2FzdDxzaXplX3Q+KGl0IC0gZWRpdHMuYmVnaW4oKSkgLSBlZGl0X2kgPj0gY29u
dGV4dCkgewogICAgICAgICAgIC8vIFRoZXJlIGlzIG5vIG5leHQgZWRpdCBvciBpdCBpcyB0b28g
ZmFyIGF3YXkuCiAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KQEAgLTEzNTAsNyArMTQ3NCw3
IEBAIHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiBTcGxpdEVzY2FwZWRTdHJpbmcoY29uc3Qgc3Rk
OjpzdHJpbmcmIHN0cikgewogLy8gICBsaHNfdmFsdWU6ICAgICAgIjUiCiAvLyAgIHJoc192YWx1
ZTogICAgICAiNiIKIC8vCi0vLyBUaGUgaWdub3JpbmdfY2FzZSBwYXJhbWV0ZXIgaXMgdHJ1ZSBp
ZmYgdGhlIGFzc2VydGlvbiBpcyBhCisvLyBUaGUgaWdub3JpbmdfY2FzZSBwYXJhbWV0ZXIgaXMg
dHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgYXNzZXJ0aW9uIGlzIGEKIC8vICpfU1RSQ0FTRUVRKi4g
IFdoZW4gaXQncyB0cnVlLCB0aGUgc3RyaW5nICJJZ25vcmluZyBjYXNlIiB3aWxsCiAvLyBiZSBp
bnNlcnRlZCBpbnRvIHRoZSBtZXNzYWdlLgogQXNzZXJ0aW9uUmVzdWx0IEVxRmFpbHVyZShjb25z
dCBjaGFyKiBsaHNfZXhwcmVzc2lvbiwKQEAgLTE0MTMsOCArMTUzNyw2IEBAIEFzc2VydGlvblJl
c3VsdCBEb3VibGVOZWFyUHJlZEZvcm1hdChjb25zdCBjaGFyKiBleHByMSwKICAgY29uc3QgZG91
YmxlIGRpZmYgPSBmYWJzKHZhbDEgLSB2YWwyKTsKICAgaWYgKGRpZmYgPD0gYWJzX2Vycm9yKSBy
ZXR1cm4gQXNzZXJ0aW9uU3VjY2VzcygpOwogCi0gIC8vIEZJWE1FOiBkbyBub3QgcHJpbnQgdGhl
IHZhbHVlIG9mIGFuIGV4cHJlc3Npb24gaWYgaXQncwotICAvLyBhbHJlYWR5IGEgbGl0ZXJhbC4K
ICAgcmV0dXJuIEFzc2VydGlvbkZhaWx1cmUoKQogICAgICAgPDwgIlRoZSBkaWZmZXJlbmNlIGJl
dHdlZW4gIiA8PCBleHByMSA8PCAiIGFuZCAiIDw8IGV4cHIyCiAgICAgICA8PCAiIGlzICIgPDwg
ZGlmZiA8PCAiLCB3aGljaCBleGNlZWRzICIgPDwgYWJzX2Vycm9yX2V4cHIgPDwgIiwgd2hlcmVc
biIKQEAgLTE1OTUsMjIgKzE3MTcsMjAgQEAgbmFtZXNwYWNlIHsKIAogLy8gSGVscGVyIGZ1bmN0
aW9ucyBmb3IgaW1wbGVtZW50aW5nIElzU3ViU3RyaW5nKCkgYW5kIElzTm90U3Vic3RyaW5nKCku
CiAKLS8vIFRoaXMgZ3JvdXAgb2Ygb3ZlcmxvYWRlZCBmdW5jdGlvbnMgcmV0dXJuIHRydWUgaWZm
IG5lZWRsZSBpcyBhCi0vLyBzdWJzdHJpbmcgb2YgaGF5c3RhY2suICBOVUxMIGlzIGNvbnNpZGVy
ZWQgYSBzdWJzdHJpbmcgb2YgaXRzZWxmCi0vLyBvbmx5LgorLy8gVGhpcyBncm91cCBvZiBvdmVy
bG9hZGVkIGZ1bmN0aW9ucyByZXR1cm4gdHJ1ZSBpZiBhbmQgb25seSBpZiBuZWVkbGUKKy8vIGlz
IGEgc3Vic3RyaW5nIG9mIGhheXN0YWNrLiAgTlVMTCBpcyBjb25zaWRlcmVkIGEgc3Vic3RyaW5n
IG9mCisvLyBpdHNlbGYgb25seS4KIAogYm9vbCBJc1N1YnN0cmluZ1ByZWQoY29uc3QgY2hhciog
bmVlZGxlLCBjb25zdCBjaGFyKiBoYXlzdGFjaykgewotICBpZiAobmVlZGxlID09IE5VTEwgfHwg
aGF5c3RhY2sgPT0gTlVMTCkKLSAgICByZXR1cm4gbmVlZGxlID09IGhheXN0YWNrOworICBpZiAo
bmVlZGxlID09IG51bGxwdHIgfHwgaGF5c3RhY2sgPT0gbnVsbHB0cikgcmV0dXJuIG5lZWRsZSA9
PSBoYXlzdGFjazsKIAotICByZXR1cm4gc3Ryc3RyKGhheXN0YWNrLCBuZWVkbGUpICE9IE5VTEw7
CisgIHJldHVybiBzdHJzdHIoaGF5c3RhY2ssIG5lZWRsZSkgIT0gbnVsbHB0cjsKIH0KIAogYm9v
bCBJc1N1YnN0cmluZ1ByZWQoY29uc3Qgd2NoYXJfdCogbmVlZGxlLCBjb25zdCB3Y2hhcl90KiBo
YXlzdGFjaykgewotICBpZiAobmVlZGxlID09IE5VTEwgfHwgaGF5c3RhY2sgPT0gTlVMTCkKLSAg
ICByZXR1cm4gbmVlZGxlID09IGhheXN0YWNrOworICBpZiAobmVlZGxlID09IG51bGxwdHIgfHwg
aGF5c3RhY2sgPT0gbnVsbHB0cikgcmV0dXJuIG5lZWRsZSA9PSBoYXlzdGFjazsKIAotICByZXR1
cm4gd2Nzc3RyKGhheXN0YWNrLCBuZWVkbGUpICE9IE5VTEw7CisgIHJldHVybiB3Y3NzdHIoaGF5
c3RhY2ssIG5lZWRsZSkgIT0gbnVsbHB0cjsKIH0KIAogLy8gU3RyaW5nVHlwZSBoZXJlIGNhbiBi
ZSBlaXRoZXIgOjpzdGQ6OnN0cmluZyBvciA6OnN0ZDo6d3N0cmluZy4KQEAgLTE3MjQsMTIgKzE4
NDQsMTIgQEAgQXNzZXJ0aW9uUmVzdWx0IEhSRVNVTFRGYWlsdXJlSGVscGVyKGNvbnN0IGNoYXIq
IGV4cHIsCiAgIC8vIEdldHMgdGhlIHN5c3RlbSdzIGh1bWFuIHJlYWRhYmxlIG1lc3NhZ2Ugc3Ry
aW5nIGZvciB0aGlzIEhSRVNVTFQuCiAgIGNoYXIgZXJyb3JfdGV4dFtrQnVmU2l6ZV0gPSB7ICdc
MCcgfTsKICAgRFdPUkQgbWVzc2FnZV9sZW5ndGggPSA6OkZvcm1hdE1lc3NhZ2VBKGtGbGFncywK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsICAvLyBubyBzb3Vy
Y2UsIHdlJ3JlIGFza2luZyBzeXN0ZW0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGhyLCAgLy8gdGhlIGVycm9yCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAwLCAgLy8gbm8gbGluZSB3aWR0aCByZXN0cmljdGlvbnMKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsICAgLy8gbm8gc291cmNlLCB3ZSdy
ZSBhc2tpbmcgc3lzdGVtCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBzdGF0aWNfY2FzdDxEV09SRD4oaHIpLCAgLy8gdGhlIGVycm9yCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAwLCAgIC8vIG5vIGxpbmUgd2lkdGggcmVzdHJpY3Rp
b25zCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcl90ZXh0
LCAgLy8gb3V0cHV0IGJ1ZmZlcgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAga0J1ZlNpemUsICAvLyBidWYgc2l6ZQotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgTlVMTCk7ICAvLyBubyBhcmd1bWVudHMgZm9yIGluc2VydHMKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtCdWZTaXplLCAgICAvLyBidWYg
c2l6ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbHB0cik7
ICAvLyBubyBhcmd1bWVudHMgZm9yIGluc2VydHMKICAgLy8gVHJpbXMgdGFpbGluZyB3aGl0ZSBz
cGFjZSAoRm9ybWF0TWVzc2FnZSBsZWF2ZXMgYSB0cmFpbGluZyBDUi1MRikKICAgZm9yICg7IG1l
c3NhZ2VfbGVuZ3RoICYmIElzU3BhY2UoZXJyb3JfdGV4dFttZXNzYWdlX2xlbmd0aCAtIDFdKTsK
ICAgICAgICAgICAtLW1lc3NhZ2VfbGVuZ3RoKSB7CkBAIC0xNzc1LDM1ICsxODk1LDM1IEBAIEFz
c2VydGlvblJlc3VsdCBJc0hSRVNVTFRGYWlsdXJlKGNvbnN0IGNoYXIqIGV4cHIsIGxvbmcgaHIp
IHsgIC8vIE5PTElOVAogLy8gIDE3IC0gMjEgYml0cyAgICAgICAxMTExMHh4eCAxMHh4eHh4eCAx
MHh4eHh4eCAxMHh4eHh4eAogCiAvLyBUaGUgbWF4aW11bSBjb2RlLXBvaW50IGEgb25lLWJ5dGUg
VVRGLTggc2VxdWVuY2UgY2FuIHJlcHJlc2VudC4KLWNvbnN0IFVJbnQzMiBrTWF4Q29kZVBvaW50
MSA9IChzdGF0aWNfY2FzdDxVSW50MzI+KDEpIDw8ICA3KSAtIDE7Citjb25zdGV4cHIgdWludDMy
X3Qga01heENvZGVQb2ludDEgPSAoc3RhdGljX2Nhc3Q8dWludDMyX3Q+KDEpIDw8ICA3KSAtIDE7
CiAKIC8vIFRoZSBtYXhpbXVtIGNvZGUtcG9pbnQgYSB0d28tYnl0ZSBVVEYtOCBzZXF1ZW5jZSBj
YW4gcmVwcmVzZW50LgotY29uc3QgVUludDMyIGtNYXhDb2RlUG9pbnQyID0gKHN0YXRpY19jYXN0
PFVJbnQzMj4oMSkgPDwgKDUgKyA2KSkgLSAxOworY29uc3RleHByIHVpbnQzMl90IGtNYXhDb2Rl
UG9pbnQyID0gKHN0YXRpY19jYXN0PHVpbnQzMl90PigxKSA8PCAoNSArIDYpKSAtIDE7CiAKIC8v
IFRoZSBtYXhpbXVtIGNvZGUtcG9pbnQgYSB0aHJlZS1ieXRlIFVURi04IHNlcXVlbmNlIGNhbiBy
ZXByZXNlbnQuCi1jb25zdCBVSW50MzIga01heENvZGVQb2ludDMgPSAoc3RhdGljX2Nhc3Q8VUlu
dDMyPigxKSA8PCAoNCArIDIqNikpIC0gMTsKK2NvbnN0ZXhwciB1aW50MzJfdCBrTWF4Q29kZVBv
aW50MyA9IChzdGF0aWNfY2FzdDx1aW50MzJfdD4oMSkgPDwgKDQgKyAyKjYpKSAtIDE7CiAKIC8v
IFRoZSBtYXhpbXVtIGNvZGUtcG9pbnQgYSBmb3VyLWJ5dGUgVVRGLTggc2VxdWVuY2UgY2FuIHJl
cHJlc2VudC4KLWNvbnN0IFVJbnQzMiBrTWF4Q29kZVBvaW50NCA9IChzdGF0aWNfY2FzdDxVSW50
MzI+KDEpIDw8ICgzICsgMyo2KSkgLSAxOworY29uc3RleHByIHVpbnQzMl90IGtNYXhDb2RlUG9p
bnQ0ID0gKHN0YXRpY19jYXN0PHVpbnQzMl90PigxKSA8PCAoMyArIDMqNikpIC0gMTsKIAogLy8g
Q2hvcHMgb2ZmIHRoZSBuIGxvd2VzdCBiaXRzIGZyb20gYSBiaXQgcGF0dGVybi4gIFJldHVybnMg
dGhlIG4KIC8vIGxvd2VzdCBiaXRzLiAgQXMgYSBzaWRlIGVmZmVjdCwgdGhlIG9yaWdpbmFsIGJp
dCBwYXR0ZXJuIHdpbGwgYmUKIC8vIHNoaWZ0ZWQgdG8gdGhlIHJpZ2h0IGJ5IG4gYml0cy4KLWlu
bGluZSBVSW50MzIgQ2hvcExvd0JpdHMoVUludDMyKiBiaXRzLCBpbnQgbikgewotICBjb25zdCBV
SW50MzIgbG93X2JpdHMgPSAqYml0cyAmICgoc3RhdGljX2Nhc3Q8VUludDMyPigxKSA8PCBuKSAt
IDEpOworaW5saW5lIHVpbnQzMl90IENob3BMb3dCaXRzKHVpbnQzMl90KiBiaXRzLCBpbnQgbikg
eworICBjb25zdCB1aW50MzJfdCBsb3dfYml0cyA9ICpiaXRzICYgKChzdGF0aWNfY2FzdDx1aW50
MzJfdD4oMSkgPDwgbikgLSAxKTsKICAgKmJpdHMgPj49IG47CiAgIHJldHVybiBsb3dfYml0czsK
IH0KIAogLy8gQ29udmVydHMgYSBVbmljb2RlIGNvZGUgcG9pbnQgdG8gYSBuYXJyb3cgc3RyaW5n
IGluIFVURi04IGVuY29kaW5nLgotLy8gY29kZV9wb2ludCBwYXJhbWV0ZXIgaXMgb2YgdHlwZSBV
SW50MzIgYmVjYXVzZSB3Y2hhcl90IG1heSBub3QgYmUKKy8vIGNvZGVfcG9pbnQgcGFyYW1ldGVy
IGlzIG9mIHR5cGUgdWludDMyX3QgYmVjYXVzZSB3Y2hhcl90IG1heSBub3QgYmUKIC8vIHdpZGUg
ZW5vdWdoIHRvIGNvbnRhaW4gYSBjb2RlIHBvaW50LgogLy8gSWYgdGhlIGNvZGVfcG9pbnQgaXMg
bm90IGEgdmFsaWQgVW5pY29kZSBjb2RlIHBvaW50CiAvLyAoaS5lLiBvdXRzaWRlIG9mIFVuaWNv
ZGUgcmFuZ2UgVSswIHRvIFUrMTBGRkZGKSBpdCB3aWxsIGJlIGNvbnZlcnRlZAogLy8gdG8gIihJ
bnZhbGlkIFVuaWNvZGUgMHhYWFhYWFhYWCkiLgotc3RkOjpzdHJpbmcgQ29kZVBvaW50VG9VdGY4
KFVJbnQzMiBjb2RlX3BvaW50KSB7CitzdGQ6OnN0cmluZyBDb2RlUG9pbnRUb1V0ZjgodWludDMy
X3QgY29kZV9wb2ludCkgewogICBpZiAoY29kZV9wb2ludCA+IGtNYXhDb2RlUG9pbnQ0KSB7Ci0g
ICAgcmV0dXJuICIoSW52YWxpZCBVbmljb2RlIDB4IiArIFN0cmluZzo6Rm9ybWF0SGV4SW50KGNv
ZGVfcG9pbnQpICsgIikiOworICAgIHJldHVybiAiKEludmFsaWQgVW5pY29kZSAweCIgKyBTdHJp
bmc6OkZvcm1hdEhleFVJbnQzMihjb2RlX3BvaW50KSArICIpIjsKICAgfQogCiAgIGNoYXIgc3Ry
WzVdOyAgLy8gQmlnIGVub3VnaCBmb3IgdGhlIGxhcmdlc3QgdmFsaWQgY29kZSBwb2ludC4KQEAg
LTE4MzEsNyArMTk1MSw3IEBAIHN0ZDo6c3RyaW5nIENvZGVQb2ludFRvVXRmOChVSW50MzIgY29k
ZV9wb2ludCkgewogCiAvLyBUaGUgZm9sbG93aW5nIHR3byBmdW5jdGlvbnMgb25seSBtYWtlIHNl
bnNlIGlmIHRoZSBzeXN0ZW0KIC8vIHVzZXMgVVRGLTE2IGZvciB3aWRlIHN0cmluZyBlbmNvZGlu
Zy4gQWxsIHN1cHBvcnRlZCBzeXN0ZW1zCi0vLyB3aXRoIDE2IGJpdCB3Y2hhcl90IChXaW5kb3dz
LCBDeWd3aW4sIFN5bWJpYW4gT1MpIGRvIHVzZSBVVEYtMTYuCisvLyB3aXRoIDE2IGJpdCB3Y2hh
cl90IChXaW5kb3dzLCBDeWd3aW4pIGRvIHVzZSBVVEYtMTYuCiAKIC8vIERldGVybWluZXMgaWYg
dGhlIGFyZ3VtZW50cyBjb25zdGl0dXRlIFVURi0xNiBzdXJyb2dhdGUgcGFpcgogLy8gYW5kIHRo
dXMgc2hvdWxkIGJlIGNvbWJpbmVkIGludG8gYSBzaW5nbGUgVW5pY29kZSBjb2RlIHBvaW50CkBA
IC0xODQyLDE5ICsxOTYyLDIyIEBAIGlubGluZSBib29sIElzVXRmMTZTdXJyb2dhdGVQYWlyKHdj
aGFyX3QgZmlyc3QsIHdjaGFyX3Qgc2Vjb25kKSB7CiB9CiAKIC8vIENyZWF0ZXMgYSBVbmljb2Rl
IGNvZGUgcG9pbnQgZnJvbSBVVEYxNiBzdXJyb2dhdGUgcGFpci4KLWlubGluZSBVSW50MzIgQ3Jl
YXRlQ29kZVBvaW50RnJvbVV0ZjE2U3Vycm9nYXRlUGFpcih3Y2hhcl90IGZpcnN0LAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdjaGFyX3Qgc2Vj
b25kKSB7Ci0gIGNvbnN0IFVJbnQzMiBtYXNrID0gKDEgPDwgMTApIC0gMTsKLSAgcmV0dXJuIChz
aXplb2Yod2NoYXJfdCkgPT0gMikgPwotICAgICAgKCgoZmlyc3QgJiBtYXNrKSA8PCAxMCkgfCAo
c2Vjb25kICYgbWFzaykpICsgMHgxMDAwMCA6Ci0gICAgICAvLyBUaGlzIGZ1bmN0aW9uIHNob3Vs
ZCBub3QgYmUgY2FsbGVkIHdoZW4gdGhlIGNvbmRpdGlvbiBpcwotICAgICAgLy8gZmFsc2UsIGJ1
dCB3ZSBwcm92aWRlIGEgc2Vuc2libGUgZGVmYXVsdCBpbiBjYXNlIGl0IGlzLgotICAgICAgc3Rh
dGljX2Nhc3Q8VUludDMyPihmaXJzdCk7CitpbmxpbmUgdWludDMyX3QgQ3JlYXRlQ29kZVBvaW50
RnJvbVV0ZjE2U3Vycm9nYXRlUGFpcih3Y2hhcl90IGZpcnN0LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2NoYXJfdCBzZWNvbmQpIHsKKyAg
Y29uc3QgYXV0byBmaXJzdF91ID0gc3RhdGljX2Nhc3Q8dWludDMyX3Q+KGZpcnN0KTsKKyAgY29u
c3QgYXV0byBzZWNvbmRfdSA9IHN0YXRpY19jYXN0PHVpbnQzMl90PihzZWNvbmQpOworICBjb25z
dCB1aW50MzJfdCBtYXNrID0gKDEgPDwgMTApIC0gMTsKKyAgcmV0dXJuIChzaXplb2Yod2NoYXJf
dCkgPT0gMikKKyAgICAgICAgICAgICA/ICgoKGZpcnN0X3UgJiBtYXNrKSA8PCAxMCkgfCAoc2Vj
b25kX3UgJiBtYXNrKSkgKyAweDEwMDAwCisgICAgICAgICAgICAgOgorICAgICAgICAgICAgIC8v
IFRoaXMgZnVuY3Rpb24gc2hvdWxkIG5vdCBiZSBjYWxsZWQgd2hlbiB0aGUgY29uZGl0aW9uIGlz
CisgICAgICAgICAgICAgLy8gZmFsc2UsIGJ1dCB3ZSBwcm92aWRlIGEgc2Vuc2libGUgZGVmYXVs
dCBpbiBjYXNlIGl0IGlzLgorICAgICAgICAgICAgIGZpcnN0X3U7CiB9CiAKIC8vIENvbnZlcnRz
IGEgd2lkZSBzdHJpbmcgdG8gYSBuYXJyb3cgc3RyaW5nIGluIFVURi04IGVuY29kaW5nLgogLy8g
VGhlIHdpZGUgc3RyaW5nIGlzIGFzc3VtZWQgdG8gaGF2ZSB0aGUgZm9sbG93aW5nIGVuY29kaW5n
OgotLy8gICBVVEYtMTYgaWYgc2l6ZW9mKHdjaGFyX3QpID09IDIgKG9uIFdpbmRvd3MsIEN5Z3dp
biwgU3ltYmlhbiBPUykKKy8vICAgVVRGLTE2IGlmIHNpemVvZih3Y2hhcl90KSA9PSAyIChvbiBX
aW5kb3dzLCBDeWd3aW4pCiAvLyAgIFVURi0zMiBpZiBzaXplb2Yod2NoYXJfdCkgPT0gNCAob24g
TGludXgpCiAvLyBQYXJhbWV0ZXIgc3RyIHBvaW50cyB0byBhIG51bGwtdGVybWluYXRlZCB3aWRl
IHN0cmluZy4KIC8vIFBhcmFtZXRlciBudW1fY2hhcnMgbWF5IGFkZGl0aW9uYWxseSBsaW1pdCB0
aGUgbnVtYmVyCkBAIC0xODcxLDcgKzE5OTQsNyBAQCBzdGQ6OnN0cmluZyBXaWRlU3RyaW5nVG9V
dGY4KGNvbnN0IHdjaGFyX3QqIHN0ciwgaW50IG51bV9jaGFycykgewogCiAgIDo6c3RkOjpzdHJp
bmdzdHJlYW0gc3RyZWFtOwogICBmb3IgKGludCBpID0gMDsgaSA8IG51bV9jaGFyczsgKytpKSB7
Ci0gICAgVUludDMyIHVuaWNvZGVfY29kZV9wb2ludDsKKyAgICB1aW50MzJfdCB1bmljb2RlX2Nv
ZGVfcG9pbnQ7CiAKICAgICBpZiAoc3RyW2ldID09IEwnXDAnKSB7CiAgICAgICBicmVhazsKQEAg
LTE4ODAsNyArMjAwMyw3IEBAIHN0ZDo6c3RyaW5nIFdpZGVTdHJpbmdUb1V0ZjgoY29uc3Qgd2No
YXJfdCogc3RyLCBpbnQgbnVtX2NoYXJzKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cltpICsgMV0pOwogICAgICAg
aSsrOwogICAgIH0gZWxzZSB7Ci0gICAgICB1bmljb2RlX2NvZGVfcG9pbnQgPSBzdGF0aWNfY2Fz
dDxVSW50MzI+KHN0cltpXSk7CisgICAgICB1bmljb2RlX2NvZGVfcG9pbnQgPSBzdGF0aWNfY2Fz
dDx1aW50MzJfdD4oc3RyW2ldKTsKICAgICB9CiAKICAgICBzdHJlYW0gPDwgQ29kZVBvaW50VG9V
dGY4KHVuaWNvZGVfY29kZV9wb2ludCk7CkBAIC0xODkxLDIxICsyMDE0LDIxIEBAIHN0ZDo6c3Ry
aW5nIFdpZGVTdHJpbmdUb1V0ZjgoY29uc3Qgd2NoYXJfdCogc3RyLCBpbnQgbnVtX2NoYXJzKSB7
CiAvLyBDb252ZXJ0cyBhIHdpZGUgQyBzdHJpbmcgdG8gYW4gc3RkOjpzdHJpbmcgdXNpbmcgdGhl
IFVURi04IGVuY29kaW5nLgogLy8gTlVMTCB3aWxsIGJlIGNvbnZlcnRlZCB0byAiKG51bGwpIi4K
IHN0ZDo6c3RyaW5nIFN0cmluZzo6U2hvd1dpZGVDU3RyaW5nKGNvbnN0IHdjaGFyX3QgKiB3aWRl
X2Nfc3RyKSB7Ci0gIGlmICh3aWRlX2Nfc3RyID09IE5VTEwpICByZXR1cm4gIihudWxsKSI7Cisg
IGlmICh3aWRlX2Nfc3RyID09IG51bGxwdHIpIHJldHVybiAiKG51bGwpIjsKIAogICByZXR1cm4g
aW50ZXJuYWw6OldpZGVTdHJpbmdUb1V0Zjgod2lkZV9jX3N0ciwgLTEpOwogfQogCi0vLyBDb21w
YXJlcyB0d28gd2lkZSBDIHN0cmluZ3MuICBSZXR1cm5zIHRydWUgaWZmIHRoZXkgaGF2ZSB0aGUg
c2FtZQotLy8gY29udGVudC4KKy8vIENvbXBhcmVzIHR3byB3aWRlIEMgc3RyaW5ncy4gIFJldHVy
bnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGV5IGhhdmUgdGhlCisvLyBzYW1lIGNvbnRlbnQuCiAv
LwogLy8gVW5saWtlIHdjc2NtcCgpLCB0aGlzIGZ1bmN0aW9uIGNhbiBoYW5kbGUgTlVMTCBhcmd1
bWVudChzKS4gIEEgTlVMTAogLy8gQyBzdHJpbmcgaXMgY29uc2lkZXJlZCBkaWZmZXJlbnQgdG8g
YW55IG5vbi1OVUxMIEMgc3RyaW5nLAogLy8gaW5jbHVkaW5nIHRoZSBlbXB0eSBzdHJpbmcuCiBi
b29sIFN0cmluZzo6V2lkZUNTdHJpbmdFcXVhbHMoY29uc3Qgd2NoYXJfdCAqIGxocywgY29uc3Qg
d2NoYXJfdCAqIHJocykgewotICBpZiAobGhzID09IE5VTEwpIHJldHVybiByaHMgPT0gTlVMTDsK
KyAgaWYgKGxocyA9PSBudWxscHRyKSByZXR1cm4gcmhzID09IG51bGxwdHI7CiAKLSAgaWYgKHJo
cyA9PSBOVUxMKSByZXR1cm4gZmFsc2U7CisgIGlmIChyaHMgPT0gbnVsbHB0cikgcmV0dXJuIGZh
bHNlOwogCiAgIHJldHVybiB3Y3NjbXAobGhzLCByaHMpID09IDA7CiB9CkBAIC0xOTQxLDM3ICsy
MDY0LDM1IEBAIEFzc2VydGlvblJlc3VsdCBDbXBIZWxwZXJTVFJORShjb25zdCBjaGFyKiBzMV9l
eHByZXNzaW9uLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw8ICIgdnMgIiA8PCBQcmlu
dFRvU3RyaW5nKHMyKTsKIH0KIAotLy8gQ29tcGFyZXMgdHdvIEMgc3RyaW5ncywgaWdub3Jpbmcg
Y2FzZS4gIFJldHVybnMgdHJ1ZSBpZmYgdGhleSBoYXZlCisvLyBDb21wYXJlcyB0d28gQyBzdHJp
bmdzLCBpZ25vcmluZyBjYXNlLiAgUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoZXkgaGF2
ZQogLy8gdGhlIHNhbWUgY29udGVudC4KIC8vCiAvLyBVbmxpa2Ugc3RyY2FzZWNtcCgpLCB0aGlz
IGZ1bmN0aW9uIGNhbiBoYW5kbGUgTlVMTCBhcmd1bWVudChzKS4gIEEKIC8vIE5VTEwgQyBzdHJp
bmcgaXMgY29uc2lkZXJlZCBkaWZmZXJlbnQgdG8gYW55IG5vbi1OVUxMIEMgc3RyaW5nLAogLy8g
aW5jbHVkaW5nIHRoZSBlbXB0eSBzdHJpbmcuCiBib29sIFN0cmluZzo6Q2FzZUluc2Vuc2l0aXZl
Q1N0cmluZ0VxdWFscyhjb25zdCBjaGFyICogbGhzLCBjb25zdCBjaGFyICogcmhzKSB7Ci0gIGlm
IChsaHMgPT0gTlVMTCkKLSAgICByZXR1cm4gcmhzID09IE5VTEw7Ci0gIGlmIChyaHMgPT0gTlVM
TCkKLSAgICByZXR1cm4gZmFsc2U7CisgIGlmIChsaHMgPT0gbnVsbHB0cikgcmV0dXJuIHJocyA9
PSBudWxscHRyOworICBpZiAocmhzID09IG51bGxwdHIpIHJldHVybiBmYWxzZTsKICAgcmV0dXJu
IHBvc2l4OjpTdHJDYXNlQ21wKGxocywgcmhzKSA9PSAwOwogfQogCi0gIC8vIENvbXBhcmVzIHR3
byB3aWRlIEMgc3RyaW5ncywgaWdub3JpbmcgY2FzZS4gIFJldHVybnMgdHJ1ZSBpZmYgdGhleQot
ICAvLyBoYXZlIHRoZSBzYW1lIGNvbnRlbnQuCi0gIC8vCi0gIC8vIFVubGlrZSB3Y3NjYXNlY21w
KCksIHRoaXMgZnVuY3Rpb24gY2FuIGhhbmRsZSBOVUxMIGFyZ3VtZW50KHMpLgotICAvLyBBIE5V
TEwgQyBzdHJpbmcgaXMgY29uc2lkZXJlZCBkaWZmZXJlbnQgdG8gYW55IG5vbi1OVUxMIHdpZGUg
QyBzdHJpbmcsCi0gIC8vIGluY2x1ZGluZyB0aGUgZW1wdHkgc3RyaW5nLgotICAvLyBOQjogVGhl
IGltcGxlbWVudGF0aW9ucyBvbiBkaWZmZXJlbnQgcGxhdGZvcm1zIHNsaWdodGx5IGRpZmZlci4K
LSAgLy8gT24gd2luZG93cywgdGhpcyBtZXRob2QgdXNlcyBfd2NzaWNtcCB3aGljaCBjb21wYXJl
cyBhY2NvcmRpbmcgdG8gTENfQ1RZUEUKLSAgLy8gZW52aXJvbm1lbnQgdmFyaWFibGUuIE9uIEdO
VSBwbGF0Zm9ybSB0aGlzIG1ldGhvZCB1c2VzIHdjc2Nhc2VjbXAKLSAgLy8gd2hpY2ggY29tcGFy
ZXMgYWNjb3JkaW5nIHRvIExDX0NUWVBFIGNhdGVnb3J5IG9mIHRoZSBjdXJyZW50IGxvY2FsZS4K
LSAgLy8gT24gTWFjT1MgWCwgaXQgdXNlcyB0b3dsb3dlciwgd2hpY2ggYWxzbyB1c2VzIExDX0NU
WVBFIGNhdGVnb3J5IG9mIHRoZQotICAvLyBjdXJyZW50IGxvY2FsZS4KKy8vIENvbXBhcmVzIHR3
byB3aWRlIEMgc3RyaW5ncywgaWdub3JpbmcgY2FzZS4gIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25s
eSBpZiB0aGV5CisvLyBoYXZlIHRoZSBzYW1lIGNvbnRlbnQuCisvLworLy8gVW5saWtlIHdjc2Nh
c2VjbXAoKSwgdGhpcyBmdW5jdGlvbiBjYW4gaGFuZGxlIE5VTEwgYXJndW1lbnQocykuCisvLyBB
IE5VTEwgQyBzdHJpbmcgaXMgY29uc2lkZXJlZCBkaWZmZXJlbnQgdG8gYW55IG5vbi1OVUxMIHdp
ZGUgQyBzdHJpbmcsCisvLyBpbmNsdWRpbmcgdGhlIGVtcHR5IHN0cmluZy4KKy8vIE5COiBUaGUg
aW1wbGVtZW50YXRpb25zIG9uIGRpZmZlcmVudCBwbGF0Zm9ybXMgc2xpZ2h0bHkgZGlmZmVyLgor
Ly8gT24gd2luZG93cywgdGhpcyBtZXRob2QgdXNlcyBfd2NzaWNtcCB3aGljaCBjb21wYXJlcyBh
Y2NvcmRpbmcgdG8gTENfQ1RZUEUKKy8vIGVudmlyb25tZW50IHZhcmlhYmxlLiBPbiBHTlUgcGxh
dGZvcm0gdGhpcyBtZXRob2QgdXNlcyB3Y3NjYXNlY21wCisvLyB3aGljaCBjb21wYXJlcyBhY2Nv
cmRpbmcgdG8gTENfQ1RZUEUgY2F0ZWdvcnkgb2YgdGhlIGN1cnJlbnQgbG9jYWxlLgorLy8gT24g
TWFjT1MgWCwgaXQgdXNlcyB0b3dsb3dlciwgd2hpY2ggYWxzbyB1c2VzIExDX0NUWVBFIGNhdGVn
b3J5IG9mIHRoZQorLy8gY3VycmVudCBsb2NhbGUuCiBib29sIFN0cmluZzo6Q2FzZUluc2Vuc2l0
aXZlV2lkZUNTdHJpbmdFcXVhbHMoY29uc3Qgd2NoYXJfdCogbGhzLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHdjaGFyX3QqIHJocykgewotICBp
ZiAobGhzID09IE5VTEwpIHJldHVybiByaHMgPT0gTlVMTDsKKyAgaWYgKGxocyA9PSBudWxscHRy
KSByZXR1cm4gcmhzID09IG51bGxwdHI7CiAKLSAgaWYgKHJocyA9PSBOVUxMKSByZXR1cm4gZmFs
c2U7CisgIGlmIChyaHMgPT0gbnVsbHB0cikgcmV0dXJuIGZhbHNlOwogCiAjaWYgR1RFU1RfT1Nf
V0lORE9XUwogICByZXR1cm4gX3djc2ljbXAobGhzLCByaHMpID09IDA7CkBAIC0xOTgyLDE0ICsy
MTAzLDE0IEBAIGJvb2wgU3RyaW5nOjpDYXNlSW5zZW5zaXRpdmVXaWRlQ1N0cmluZ0VxdWFscyhj
b25zdCB3Y2hhcl90KiBsaHMsCiAgIC8vIE90aGVyIHVua25vd24gT1NlcyBtYXkgbm90IGRlZmlu
ZSBpdCBlaXRoZXIuCiAgIHdpbnRfdCBsZWZ0LCByaWdodDsKICAgZG8gewotICAgIGxlZnQgPSB0
b3dsb3dlcigqbGhzKyspOwotICAgIHJpZ2h0ID0gdG93bG93ZXIoKnJocysrKTsKKyAgICBsZWZ0
ID0gdG93bG93ZXIoc3RhdGljX2Nhc3Q8d2ludF90PigqbGhzKyspKTsKKyAgICByaWdodCA9IHRv
d2xvd2VyKHN0YXRpY19jYXN0PHdpbnRfdD4oKnJocysrKSk7CiAgIH0gd2hpbGUgKGxlZnQgJiYg
bGVmdCA9PSByaWdodCk7CiAgIHJldHVybiBsZWZ0ID09IHJpZ2h0OwogI2VuZGlmICAvLyBPUyBz
ZWxlY3RvcgogfQogCi0vLyBSZXR1cm5zIHRydWUgaWZmIHN0ciBlbmRzIHdpdGggdGhlIGdpdmVu
IHN1ZmZpeCwgaWdub3JpbmcgY2FzZS4KKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiBz
dHIgZW5kcyB3aXRoIHRoZSBnaXZlbiBzdWZmaXgsIGlnbm9yaW5nIGNhc2UuCiAvLyBBbnkgc3Ry
aW5nIGlzIGNvbnNpZGVyZWQgdG8gZW5kIHdpdGggYW4gZW1wdHkgc3VmZml4LgogYm9vbCBTdHJp
bmc6OkVuZHNXaXRoQ2FzZUluc2Vuc2l0aXZlKAogICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBzdHIs
IGNvbnN0IHN0ZDo6c3RyaW5nJiBzdWZmaXgpIHsKQEAgLTIwMDgsMTIgKzIxMjksMTcgQEAgc3Rk
OjpzdHJpbmcgU3RyaW5nOjpGb3JtYXRJbnRXaWR0aDIoaW50IHZhbHVlKSB7CiB9CiAKIC8vIEZv
cm1hdHMgYW4gaW50IHZhbHVlIGFzICIlWCIuCi1zdGQ6OnN0cmluZyBTdHJpbmc6OkZvcm1hdEhl
eEludChpbnQgdmFsdWUpIHsKK3N0ZDo6c3RyaW5nIFN0cmluZzo6Rm9ybWF0SGV4VUludDMyKHVp
bnQzMl90IHZhbHVlKSB7CiAgIHN0ZDo6c3RyaW5nc3RyZWFtIHNzOwogICBzcyA8PCBzdGQ6Omhl
eCA8PCBzdGQ6OnVwcGVyY2FzZSA8PCB2YWx1ZTsKICAgcmV0dXJuIHNzLnN0cigpOwogfQogCisv
LyBGb3JtYXRzIGFuIGludCB2YWx1ZSBhcyAiJVgiLgorc3RkOjpzdHJpbmcgU3RyaW5nOjpGb3Jt
YXRIZXhJbnQoaW50IHZhbHVlKSB7CisgIHJldHVybiBGb3JtYXRIZXhVSW50MzIoc3RhdGljX2Nh
c3Q8dWludDMyX3Q+KHZhbHVlKSk7Cit9CisKIC8vIEZvcm1hdHMgYSBieXRlIGFzICIlMDJYIi4K
IHN0ZDo6c3RyaW5nIFN0cmluZzo6Rm9ybWF0Qnl0ZSh1bnNpZ25lZCBjaGFyIHZhbHVlKSB7CiAg
IHN0ZDo6c3RyaW5nc3RyZWFtIHNzOwpAQCAtMjAzMCw3ICsyMTU2LDcgQEAgc3RkOjpzdHJpbmcg
U3RyaW5nU3RyZWFtVG9TdHJpbmcoOjpzdGQ6OnN0cmluZ3N0cmVhbSogc3MpIHsKICAgY29uc3Qg
Y2hhciogY29uc3QgZW5kID0gc3RhcnQgKyBzdHIubGVuZ3RoKCk7CiAKICAgc3RkOjpzdHJpbmcg
cmVzdWx0OwotICByZXN1bHQucmVzZXJ2ZSgyICogKGVuZCAtIHN0YXJ0KSk7CisgIHJlc3VsdC5y
ZXNlcnZlKHN0YXRpY19jYXN0PHNpemVfdD4oMiAqIChlbmQgLSBzdGFydCkpKTsKICAgZm9yIChj
b25zdCBjaGFyKiBjaCA9IHN0YXJ0OyBjaCAhPSBlbmQ7ICsrY2gpIHsKICAgICBpZiAoKmNoID09
ICdcMCcpIHsKICAgICAgIHJlc3VsdCArPSAiXFwwIjsgIC8vIFJlcGxhY2VzIE5VTCB3aXRoICJc
XDAiOwpAQCAtMjA2MCw5ICsyMTg2LDcgQEAgc3RkOjpzdHJpbmcgQXBwZW5kVXNlck1lc3NhZ2Uo
Y29uc3Qgc3RkOjpzdHJpbmcmIGd0ZXN0X21zZywKIAogLy8gQ3JlYXRlcyBhbiBlbXB0eSBUZXN0
UmVzdWx0LgogVGVzdFJlc3VsdDo6VGVzdFJlc3VsdCgpCi0gICAgOiBkZWF0aF90ZXN0X2NvdW50
XygwKSwKLSAgICAgIGVsYXBzZWRfdGltZV8oMCkgewotfQorICAgIDogZGVhdGhfdGVzdF9jb3Vu
dF8oMCksIHN0YXJ0X3RpbWVzdGFtcF8oMCksIGVsYXBzZWRfdGltZV8oMCkge30KIAogLy8gRCd0
b3IuCiBUZXN0UmVzdWx0Ojp+VGVzdFJlc3VsdCgpIHsKQEAgLTIwNzQsNyArMjE5OCw3IEBAIFRl
c3RSZXN1bHQ6On5UZXN0UmVzdWx0KCkgewogY29uc3QgVGVzdFBhcnRSZXN1bHQmIFRlc3RSZXN1
bHQ6OkdldFRlc3RQYXJ0UmVzdWx0KGludCBpKSBjb25zdCB7CiAgIGlmIChpIDwgMCB8fCBpID49
IHRvdGFsX3BhcnRfY291bnQoKSkKICAgICBpbnRlcm5hbDo6cG9zaXg6OkFib3J0KCk7Ci0gIHJl
dHVybiB0ZXN0X3BhcnRfcmVzdWx0c18uYXQoaSk7CisgIHJldHVybiB0ZXN0X3BhcnRfcmVzdWx0
c18uYXQoc3RhdGljX2Nhc3Q8c2l6ZV90PihpKSk7CiB9CiAKIC8vIFJldHVybnMgdGhlIGktdGgg
dGVzdCBwcm9wZXJ0eS4gaSBjYW4gcmFuZ2UgZnJvbSAwIHRvCkBAIC0yMDgzLDcgKzIyMDcsNyBA
QCBjb25zdCBUZXN0UGFydFJlc3VsdCYgVGVzdFJlc3VsdDo6R2V0VGVzdFBhcnRSZXN1bHQoaW50
IGkpIGNvbnN0IHsKIGNvbnN0IFRlc3RQcm9wZXJ0eSYgVGVzdFJlc3VsdDo6R2V0VGVzdFByb3Bl
cnR5KGludCBpKSBjb25zdCB7CiAgIGlmIChpIDwgMCB8fCBpID49IHRlc3RfcHJvcGVydHlfY291
bnQoKSkKICAgICBpbnRlcm5hbDo6cG9zaXg6OkFib3J0KCk7Ci0gIHJldHVybiB0ZXN0X3Byb3Bl
cnRpZXNfLmF0KGkpOworICByZXR1cm4gdGVzdF9wcm9wZXJ0aWVzXy5hdChzdGF0aWNfY2FzdDxz
aXplX3Q+KGkpKTsKIH0KIAogLy8gQ2xlYXJzIHRoZSB0ZXN0IHBhcnQgcmVzdWx0cy4KQEAgLTIx
MzEsMTggKzIyNTUsMTggQEAgc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0IGtSZXNlcnZlZFRlc3RT
dWl0ZXNBdHRyaWJ1dGVzW10gPSB7CiAvLyBUaGUgbGlzdCBvZiByZXNlcnZlZCBhdHRyaWJ1dGVz
IHVzZWQgaW4gdGhlIDx0ZXN0c3VpdGU+IGVsZW1lbnQgb2YgWE1MCiAvLyBvdXRwdXQuCiBzdGF0
aWMgY29uc3QgY2hhciogY29uc3Qga1Jlc2VydmVkVGVzdFN1aXRlQXR0cmlidXRlc1tdID0gewot
ICAiZGlzYWJsZWQiLAotICAiZXJyb3JzIiwKLSAgImZhaWx1cmVzIiwKLSAgIm5hbWUiLAotICAi
dGVzdHMiLAotICAidGltZSIKLX07CisgICAgImRpc2FibGVkIiwgImVycm9ycyIsICJmYWlsdXJl
cyIsICJuYW1lIiwgInRlc3RzIiwgInRpbWUiLCAidGltZXN0YW1wIn07CiAKIC8vIFRoZSBsaXN0
IG9mIHJlc2VydmVkIGF0dHJpYnV0ZXMgdXNlZCBpbiB0aGUgPHRlc3RjYXNlPiBlbGVtZW50IG9m
IFhNTCBvdXRwdXQuCiBzdGF0aWMgY29uc3QgY2hhciogY29uc3Qga1Jlc2VydmVkVGVzdENhc2VB
dHRyaWJ1dGVzW10gPSB7Ci0gICAgImNsYXNzbmFtZSIsICAibmFtZSIsICAgICAgICAic3RhdHVz
IiwgInRpbWUiLAotICAgICJ0eXBlX3BhcmFtIiwgInZhbHVlX3BhcmFtIiwgImZpbGUiLCAgICJs
aW5lIn07CisgICAgImNsYXNzbmFtZSIsICAgIm5hbWUiLCAic3RhdHVzIiwgInRpbWUiLCAgInR5
cGVfcGFyYW0iLAorICAgICJ2YWx1ZV9wYXJhbSIsICJmaWxlIiwgImxpbmUifTsKKworLy8gVXNl
IGEgc2xpZ2h0bHkgZGlmZmVyZW50IHNldCBmb3IgYWxsb3dlZCBvdXRwdXQgdG8gZW5zdXJlIGV4
aXN0aW5nIHRlc3RzIGNhbgorLy8gc3RpbGwgUmVjb3JkUHJvcGVydHkoInJlc3VsdCIpIG9yICJS
ZWNvcmRQcm9wZXJ0eSh0aW1lc3RhbXAiKQorc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0IGtSZXNl
cnZlZE91dHB1dFRlc3RDYXNlQXR0cmlidXRlc1tdID0geworICAgICJjbGFzc25hbWUiLCAgICJu
YW1lIiwgInN0YXR1cyIsICJ0aW1lIiwgICAidHlwZV9wYXJhbSIsCisgICAgInZhbHVlX3BhcmFt
IiwgImZpbGUiLCAibGluZSIsICAgInJlc3VsdCIsICJ0aW1lc3RhbXAifTsKIAogdGVtcGxhdGUg
PGludCBrU2l6ZT4KIHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiBBcnJheUFzVmVjdG9yKGNvbnN0
IGNoYXIqIGNvbnN0ICgmYXJyYXkpW2tTaXplXSkgewpAQCAtMjE2NCw2ICsyMjg4LDIyIEBAIHN0
YXRpYyBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gR2V0UmVzZXJ2ZWRBdHRyaWJ1dGVzRm9yRWxl
bWVudCgKICAgcmV0dXJuIHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPigpOwogfQogCisvLyBUT0RP
KGpkZXNwcmV6KTogTWVyZ2UgdGhlIHR3byBnZXRSZXNlcnZlZCBhdHRyaWJ1dGVzIG9uY2Ugc2tp
cCBpcyBpbXByb3ZlZAorc3RhdGljIHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiBHZXRSZXNlcnZl
ZE91dHB1dEF0dHJpYnV0ZXNGb3JFbGVtZW50KAorICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiB4bWxf
ZWxlbWVudCkgeworICBpZiAoeG1sX2VsZW1lbnQgPT0gInRlc3RzdWl0ZXMiKSB7CisgICAgcmV0
dXJuIEFycmF5QXNWZWN0b3Ioa1Jlc2VydmVkVGVzdFN1aXRlc0F0dHJpYnV0ZXMpOworICB9IGVs
c2UgaWYgKHhtbF9lbGVtZW50ID09ICJ0ZXN0c3VpdGUiKSB7CisgICAgcmV0dXJuIEFycmF5QXNW
ZWN0b3Ioa1Jlc2VydmVkVGVzdFN1aXRlQXR0cmlidXRlcyk7CisgIH0gZWxzZSBpZiAoeG1sX2Vs
ZW1lbnQgPT0gInRlc3RjYXNlIikgeworICAgIHJldHVybiBBcnJheUFzVmVjdG9yKGtSZXNlcnZl
ZE91dHB1dFRlc3RDYXNlQXR0cmlidXRlcyk7CisgIH0gZWxzZSB7CisgICAgR1RFU1RfQ0hFQ0tf
KGZhbHNlKSA8PCAiVW5yZWNvZ25pemVkIHhtbF9lbGVtZW50IHByb3ZpZGVkOiAiIDw8IHhtbF9l
bGVtZW50OworICB9CisgIC8vIFRoaXMgY29kZSBpcyB1bnJlYWNoYWJsZSBidXQgc29tZSBjb21w
aWxlcnMgbWF5IG5vdCByZWFsaXplcyB0aGF0LgorICByZXR1cm4gc3RkOjp2ZWN0b3I8c3RkOjpz
dHJpbmc+KCk7Cit9CisKIHN0YXRpYyBzdGQ6OnN0cmluZyBGb3JtYXRXb3JkTGlzdChjb25zdCBz
dGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4mIHdvcmRzKSB7CiAgIE1lc3NhZ2Ugd29yZF9saXN0Owog
ICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHdvcmRzLnNpemUoKTsgKytpKSB7CkBAIC0yMjA3LDcg
KzIzNDcsMTcgQEAgdm9pZCBUZXN0UmVzdWx0OjpDbGVhcigpIHsKICAgZWxhcHNlZF90aW1lXyA9
IDA7CiB9CiAKLS8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIHRlc3QgZmFpbGVkLgorLy8gUmV0dXJu
cyB0cnVlIG9mZiB0aGUgdGVzdCBwYXJ0IHdhcyBza2lwcGVkLgorc3RhdGljIGJvb2wgVGVzdFBh
cnRTa2lwcGVkKGNvbnN0IFRlc3RQYXJ0UmVzdWx0JiByZXN1bHQpIHsKKyAgcmV0dXJuIHJlc3Vs
dC5za2lwcGVkKCk7Cit9CisKKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgdGVz
dCB3YXMgc2tpcHBlZC4KK2Jvb2wgVGVzdFJlc3VsdDo6U2tpcHBlZCgpIGNvbnN0IHsKKyAgcmV0
dXJuICFGYWlsZWQoKSAmJiBDb3VudElmKHRlc3RfcGFydF9yZXN1bHRzXywgVGVzdFBhcnRTa2lw
cGVkKSA+IDA7Cit9CisKKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgdGVzdCBm
YWlsZWQuCiBib29sIFRlc3RSZXN1bHQ6OkZhaWxlZCgpIGNvbnN0IHsKICAgZm9yIChpbnQgaSA9
IDA7IGkgPCB0b3RhbF9wYXJ0X2NvdW50KCk7ICsraSkgewogICAgIGlmIChHZXRUZXN0UGFydFJl
c3VsdChpKS5mYWlsZWQoKSkKQEAgLTIyMTYsMjIgKzIzNjYsMjIgQEAgYm9vbCBUZXN0UmVzdWx0
OjpGYWlsZWQoKSBjb25zdCB7CiAgIHJldHVybiBmYWxzZTsKIH0KIAotLy8gUmV0dXJucyB0cnVl
IGlmZiB0aGUgdGVzdCBwYXJ0IGZhdGFsbHkgZmFpbGVkLgorLy8gUmV0dXJucyB0cnVlIGlmIGFu
ZCBvbmx5IGlmIHRoZSB0ZXN0IHBhcnQgZmF0YWxseSBmYWlsZWQuCiBzdGF0aWMgYm9vbCBUZXN0
UGFydEZhdGFsbHlGYWlsZWQoY29uc3QgVGVzdFBhcnRSZXN1bHQmIHJlc3VsdCkgewogICByZXR1
cm4gcmVzdWx0LmZhdGFsbHlfZmFpbGVkKCk7CiB9CiAKLS8vIFJldHVybnMgdHJ1ZSBpZmYgdGhl
IHRlc3QgZmF0YWxseSBmYWlsZWQuCisvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhl
IHRlc3QgZmF0YWxseSBmYWlsZWQuCiBib29sIFRlc3RSZXN1bHQ6Okhhc0ZhdGFsRmFpbHVyZSgp
IGNvbnN0IHsKICAgcmV0dXJuIENvdW50SWYodGVzdF9wYXJ0X3Jlc3VsdHNfLCBUZXN0UGFydEZh
dGFsbHlGYWlsZWQpID4gMDsKIH0KIAotLy8gUmV0dXJucyB0cnVlIGlmZiB0aGUgdGVzdCBwYXJ0
IG5vbi1mYXRhbGx5IGZhaWxlZC4KKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUg
dGVzdCBwYXJ0IG5vbi1mYXRhbGx5IGZhaWxlZC4KIHN0YXRpYyBib29sIFRlc3RQYXJ0Tm9uZmF0
YWxseUZhaWxlZChjb25zdCBUZXN0UGFydFJlc3VsdCYgcmVzdWx0KSB7CiAgIHJldHVybiByZXN1
bHQubm9uZmF0YWxseV9mYWlsZWQoKTsKIH0KIAotLy8gUmV0dXJucyB0cnVlIGlmZiB0aGUgdGVz
dCBoYXMgYSBub24tZmF0YWwgZmFpbHVyZS4KKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBp
ZiB0aGUgdGVzdCBoYXMgYSBub24tZmF0YWwgZmFpbHVyZS4KIGJvb2wgVGVzdFJlc3VsdDo6SGFz
Tm9uZmF0YWxGYWlsdXJlKCkgY29uc3QgewogICByZXR1cm4gQ291bnRJZih0ZXN0X3BhcnRfcmVz
dWx0c18sIFRlc3RQYXJ0Tm9uZmF0YWxseUZhaWxlZCkgPiAwOwogfQpAQCAtMjI5NCwyNSArMjQ0
NCwyNSBAQCB2b2lkIFJlcG9ydEZhaWx1cmVJblVua25vd25Mb2NhdGlvbihUZXN0UGFydFJlc3Vs
dDo6VHlwZSByZXN1bHRfdHlwZSwKICAgLy8gQWRkVGVzdFBhcnRSZXN1bHQuCiAgIFVuaXRUZXN0
OjpHZXRJbnN0YW5jZSgpLT5BZGRUZXN0UGFydFJlc3VsdCgKICAgICAgIHJlc3VsdF90eXBlLAot
ICAgICAgTlVMTCwgIC8vIE5vIGluZm8gYWJvdXQgdGhlIHNvdXJjZSBmaWxlIHdoZXJlIHRoZSBl
eGNlcHRpb24gb2NjdXJyZWQuCi0gICAgICAtMSwgICAgLy8gV2UgaGF2ZSBubyBpbmZvIG9uIHdo
aWNoIGxpbmUgY2F1c2VkIHRoZSBleGNlcHRpb24uCisgICAgICBudWxscHRyLCAgLy8gTm8gaW5m
byBhYm91dCB0aGUgc291cmNlIGZpbGUgd2hlcmUgdGhlIGV4Y2VwdGlvbiBvY2N1cnJlZC4KKyAg
ICAgIC0xLCAgICAgICAvLyBXZSBoYXZlIG5vIGluZm8gb24gd2hpY2ggbGluZSBjYXVzZWQgdGhl
IGV4Y2VwdGlvbi4KICAgICAgIG1lc3NhZ2UsCi0gICAgICAiIik7ICAgLy8gTm8gc3RhY2sgdHJh
Y2UsIGVpdGhlci4KKyAgICAgICIiKTsgIC8vIE5vIHN0YWNrIHRyYWNlLCBlaXRoZXIuCiB9CiAK
IH0gIC8vIG5hbWVzcGFjZSBpbnRlcm5hbAogCi0vLyBHb29nbGUgVGVzdCByZXF1aXJlcyBhbGwg
dGVzdHMgaW4gdGhlIHNhbWUgdGVzdCBjYXNlIHRvIHVzZSB0aGUgc2FtZSB0ZXN0CisvLyBHb29n
bGUgVGVzdCByZXF1aXJlcyBhbGwgdGVzdHMgaW4gdGhlIHNhbWUgdGVzdCBzdWl0ZSB0byB1c2Ug
dGhlIHNhbWUgdGVzdAogLy8gZml4dHVyZSBjbGFzcy4gIFRoaXMgZnVuY3Rpb24gY2hlY2tzIGlm
IHRoZSBjdXJyZW50IHRlc3QgaGFzIHRoZQotLy8gc2FtZSBmaXh0dXJlIGNsYXNzIGFzIHRoZSBm
aXJzdCB0ZXN0IGluIHRoZSBjdXJyZW50IHRlc3QgY2FzZS4gIElmCisvLyBzYW1lIGZpeHR1cmUg
Y2xhc3MgYXMgdGhlIGZpcnN0IHRlc3QgaW4gdGhlIGN1cnJlbnQgdGVzdCBzdWl0ZS4gIElmCiAv
LyB5ZXMsIGl0IHJldHVybnMgdHJ1ZTsgb3RoZXJ3aXNlIGl0IGdlbmVyYXRlcyBhIEdvb2dsZSBU
ZXN0IGZhaWx1cmUgYW5kCiAvLyByZXR1cm5zIGZhbHNlLgogYm9vbCBUZXN0OjpIYXNTYW1lRml4
dHVyZUNsYXNzKCkgewogICBpbnRlcm5hbDo6VW5pdFRlc3RJbXBsKiBjb25zdCBpbXBsID0gaW50
ZXJuYWw6OkdldFVuaXRUZXN0SW1wbCgpOwotICBjb25zdCBUZXN0Q2FzZSogY29uc3QgdGVzdF9j
YXNlID0gaW1wbC0+Y3VycmVudF90ZXN0X2Nhc2UoKTsKKyAgY29uc3QgVGVzdFN1aXRlKiBjb25z
dCB0ZXN0X3N1aXRlID0gaW1wbC0+Y3VycmVudF90ZXN0X3N1aXRlKCk7CiAKLSAgLy8gSW5mbyBh
Ym91dCB0aGUgZmlyc3QgdGVzdCBpbiB0aGUgY3VycmVudCB0ZXN0IGNhc2UuCi0gIGNvbnN0IFRl
c3RJbmZvKiBjb25zdCBmaXJzdF90ZXN0X2luZm8gPSB0ZXN0X2Nhc2UtPnRlc3RfaW5mb19saXN0
KClbMF07CisgIC8vIEluZm8gYWJvdXQgdGhlIGZpcnN0IHRlc3QgaW4gdGhlIGN1cnJlbnQgdGVz
dCBzdWl0ZS4KKyAgY29uc3QgVGVzdEluZm8qIGNvbnN0IGZpcnN0X3Rlc3RfaW5mbyA9IHRlc3Rf
c3VpdGUtPnRlc3RfaW5mb19saXN0KClbMF07CiAgIGNvbnN0IGludGVybmFsOjpUeXBlSWQgZmly
c3RfZml4dHVyZV9pZCA9IGZpcnN0X3Rlc3RfaW5mby0+Zml4dHVyZV9jbGFzc19pZF87CiAgIGNv
bnN0IGNoYXIqIGNvbnN0IGZpcnN0X3Rlc3RfbmFtZSA9IGZpcnN0X3Rlc3RfaW5mby0+bmFtZSgp
OwogCkBAIC0yMzI4LDcgKzI0NzgsNyBAQCBib29sIFRlc3Q6Okhhc1NhbWVGaXh0dXJlQ2xhc3Mo
KSB7CiAgICAgY29uc3QgYm9vbCB0aGlzX2lzX1RFU1QgPSB0aGlzX2ZpeHR1cmVfaWQgPT0gaW50
ZXJuYWw6OkdldFRlc3RUeXBlSWQoKTsKIAogICAgIGlmIChmaXJzdF9pc19URVNUIHx8IHRoaXNf
aXNfVEVTVCkgewotICAgICAgLy8gQm90aCBURVNUIGFuZCBURVNUX0YgYXBwZWFyIGluIHNhbWUg
dGVzdCBjYXNlLCB3aGljaCBpcyBpbmNvcnJlY3QuCisgICAgICAvLyBCb3RoIFRFU1QgYW5kIFRF
U1RfRiBhcHBlYXIgaW4gc2FtZSB0ZXN0IHN1aXRlLCB3aGljaCBpcyBpbmNvcnJlY3QuCiAgICAg
ICAvLyBUZWxsIHRoZSB1c2VyIGhvdyB0byBmaXggdGhpcy4KIAogICAgICAgLy8gR2V0cyB0aGUg
bmFtZSBvZiB0aGUgVEVTVCBhbmQgdGhlIG5hbWUgb2YgdGhlIFRFU1RfRi4gIE5vdGUKQEAgLTIz
NDAsOSArMjQ5MCw5IEBAIGJvb2wgVGVzdDo6SGFzU2FtZUZpeHR1cmVDbGFzcygpIHsKICAgICAg
ICAgICBmaXJzdF9pc19URVNUID8gdGhpc190ZXN0X25hbWUgOiBmaXJzdF90ZXN0X25hbWU7CiAK
ICAgICAgIEFERF9GQUlMVVJFKCkKLSAgICAgICAgICA8PCAiQWxsIHRlc3RzIGluIHRoZSBzYW1l
IHRlc3QgY2FzZSBtdXN0IHVzZSB0aGUgc2FtZSB0ZXN0IGZpeHR1cmVcbiIKLSAgICAgICAgICA8
PCAiY2xhc3MsIHNvIG1peGluZyBURVNUX0YgYW5kIFRFU1QgaW4gdGhlIHNhbWUgdGVzdCBjYXNl
IGlzXG4iCi0gICAgICAgICAgPDwgImlsbGVnYWwuICBJbiB0ZXN0IGNhc2UgIiA8PCB0aGlzX3Rl
c3RfaW5mby0+dGVzdF9jYXNlX25hbWUoKQorICAgICAgICAgIDw8ICJBbGwgdGVzdHMgaW4gdGhl
IHNhbWUgdGVzdCBzdWl0ZSBtdXN0IHVzZSB0aGUgc2FtZSB0ZXN0IGZpeHR1cmVcbiIKKyAgICAg
ICAgICA8PCAiY2xhc3MsIHNvIG1peGluZyBURVNUX0YgYW5kIFRFU1QgaW4gdGhlIHNhbWUgdGVz
dCBzdWl0ZSBpc1xuIgorICAgICAgICAgIDw8ICJpbGxlZ2FsLiAgSW4gdGVzdCBzdWl0ZSAiIDw8
IHRoaXNfdGVzdF9pbmZvLT50ZXN0X3N1aXRlX25hbWUoKQogICAgICAgICAgIDw8ICIsXG4iCiAg
ICAgICAgICAgPDwgInRlc3QgIiA8PCBURVNUX0ZfbmFtZSA8PCAiIGlzIGRlZmluZWQgdXNpbmcg
VEVTVF9GIGJ1dFxuIgogICAgICAgICAgIDw8ICJ0ZXN0ICIgPDwgVEVTVF9uYW1lIDw8ICIgaXMg
ZGVmaW5lZCB1c2luZyBURVNULiAgWW91IHByb2JhYmx5XG4iCkBAIC0yMzUyLDE1ICsyNTAyLDE1
IEBAIGJvb2wgVGVzdDo6SGFzU2FtZUZpeHR1cmVDbGFzcygpIHsKICAgICAgIC8vIFR3byBmaXh0
dXJlIGNsYXNzZXMgd2l0aCB0aGUgc2FtZSBuYW1lIGFwcGVhciBpbiB0d28gZGlmZmVyZW50CiAg
ICAgICAvLyBuYW1lc3BhY2VzLCB3aGljaCBpcyBub3QgYWxsb3dlZC4gVGVsbCB0aGUgdXNlciBo
b3cgdG8gZml4IHRoaXMuCiAgICAgICBBRERfRkFJTFVSRSgpCi0gICAgICAgICAgPDwgIkFsbCB0
ZXN0cyBpbiB0aGUgc2FtZSB0ZXN0IGNhc2UgbXVzdCB1c2UgdGhlIHNhbWUgdGVzdCBmaXh0dXJl
XG4iCi0gICAgICAgICAgPDwgImNsYXNzLiAgSG93ZXZlciwgaW4gdGVzdCBjYXNlICIKLSAgICAg
ICAgICA8PCB0aGlzX3Rlc3RfaW5mby0+dGVzdF9jYXNlX25hbWUoKSA8PCAiLFxuIgotICAgICAg
ICAgIDw8ICJ5b3UgZGVmaW5lZCB0ZXN0ICIgPDwgZmlyc3RfdGVzdF9uYW1lCi0gICAgICAgICAg
PDwgIiBhbmQgdGVzdCAiIDw8IHRoaXNfdGVzdF9uYW1lIDw8ICJcbiIKKyAgICAgICAgICA8PCAi
QWxsIHRlc3RzIGluIHRoZSBzYW1lIHRlc3Qgc3VpdGUgbXVzdCB1c2UgdGhlIHNhbWUgdGVzdCBm
aXh0dXJlXG4iCisgICAgICAgICAgPDwgImNsYXNzLiAgSG93ZXZlciwgaW4gdGVzdCBzdWl0ZSAi
CisgICAgICAgICAgPDwgdGhpc190ZXN0X2luZm8tPnRlc3Rfc3VpdGVfbmFtZSgpIDw8ICIsXG4i
CisgICAgICAgICAgPDwgInlvdSBkZWZpbmVkIHRlc3QgIiA8PCBmaXJzdF90ZXN0X25hbWUgPDwg
IiBhbmQgdGVzdCAiCisgICAgICAgICAgPDwgdGhpc190ZXN0X25hbWUgPDwgIlxuIgogICAgICAg
ICAgIDw8ICJ1c2luZyB0d28gZGlmZmVyZW50IHRlc3QgZml4dHVyZSBjbGFzc2VzLiAgVGhpcyBj
YW4gaGFwcGVuIGlmXG4iCiAgICAgICAgICAgPDwgInRoZSB0d28gY2xhc3NlcyBhcmUgZnJvbSBk
aWZmZXJlbnQgbmFtZXNwYWNlcyBvciB0cmFuc2xhdGlvblxuIgogICAgICAgICAgIDw8ICJ1bml0
cyBhbmQgaGF2ZSB0aGUgc2FtZSBuYW1lLiAgWW91IHNob3VsZCBwcm9iYWJseSByZW5hbWUgb25l
XG4iCi0gICAgICAgICAgPDwgIm9mIHRoZSBjbGFzc2VzIHRvIHB1dCB0aGUgdGVzdHMgaW50byBk
aWZmZXJlbnQgdGVzdCBjYXNlcy4iOworICAgICAgICAgIDw8ICJvZiB0aGUgY2xhc3NlcyB0byBw
dXQgdGhlIHRlc3RzIGludG8gZGlmZmVyZW50IHRlc3Qgc3VpdGVzLiI7CiAgICAgfQogICAgIHJl
dHVybiBmYWxzZTsKICAgfQpAQCAtMjM5Myw3ICsyNTQzLDcgQEAgbmFtZXNwYWNlIGludGVybmFs
IHsKIHN0YXRpYyBzdGQ6OnN0cmluZyBGb3JtYXRDeHhFeGNlcHRpb25NZXNzYWdlKGNvbnN0IGNo
YXIqIGRlc2NyaXB0aW9uLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgY29uc3QgY2hhciogbG9jYXRpb24pIHsKICAgTWVzc2FnZSBtZXNzYWdlOwotICBpZiAo
ZGVzY3JpcHRpb24gIT0gTlVMTCkgeworICBpZiAoZGVzY3JpcHRpb24gIT0gbnVsbHB0cikgewog
ICAgIG1lc3NhZ2UgPDwgIkMrKyBleGNlcHRpb24gd2l0aCBkZXNjcmlwdGlvbiBcIiIgPDwgZGVz
Y3JpcHRpb24gPDwgIlwiIjsKICAgfSBlbHNlIHsKICAgICBtZXNzYWdlIDw8ICJVbmtub3duIEMr
KyBleGNlcHRpb24iOwpAQCAtMjQ5MSw3ICsyNjQxLDcgQEAgUmVzdWx0IEhhbmRsZUV4Y2VwdGlv
bnNJbk1ldGhvZElmU3VwcG9ydGVkKAogICAgIH0gY2F0Y2ggKC4uLikgeyAgLy8gTk9MSU5UCiAg
ICAgICBpbnRlcm5hbDo6UmVwb3J0RmFpbHVyZUluVW5rbm93bkxvY2F0aW9uKAogICAgICAgICAg
IFRlc3RQYXJ0UmVzdWx0OjprRmF0YWxGYWlsdXJlLAotICAgICAgICAgIEZvcm1hdEN4eEV4Y2Vw
dGlvbk1lc3NhZ2UoTlVMTCwgbG9jYXRpb24pKTsKKyAgICAgICAgICBGb3JtYXRDeHhFeGNlcHRp
b25NZXNzYWdlKG51bGxwdHIsIGxvY2F0aW9uKSk7CiAgICAgfQogICAgIHJldHVybiBzdGF0aWNf
Y2FzdDxSZXN1bHQ+KDApOwogI2Vsc2UKQEAgLTI1MTEsOCArMjY2MSw5IEBAIHZvaWQgVGVzdDo6
UnVuKCkgewogICBpbnRlcm5hbDo6VW5pdFRlc3RJbXBsKiBjb25zdCBpbXBsID0gaW50ZXJuYWw6
OkdldFVuaXRUZXN0SW1wbCgpOwogICBpbXBsLT5vc19zdGFja190cmFjZV9nZXR0ZXIoKS0+VXBv
bkxlYXZpbmdHVGVzdCgpOwogICBpbnRlcm5hbDo6SGFuZGxlRXhjZXB0aW9uc0luTWV0aG9kSWZT
dXBwb3J0ZWQodGhpcywgJlRlc3Q6OlNldFVwLCAiU2V0VXAoKSIpOwotICAvLyBXZSB3aWxsIHJ1
biB0aGUgdGVzdCBvbmx5IGlmIFNldFVwKCkgd2FzIHN1Y2Nlc3NmdWwuCi0gIGlmICghSGFzRmF0
YWxGYWlsdXJlKCkpIHsKKyAgLy8gV2Ugd2lsbCBydW4gdGhlIHRlc3Qgb25seSBpZiBTZXRVcCgp
IHdhcyBzdWNjZXNzZnVsIGFuZCBkaWRuJ3QgY2FsbAorICAvLyBHVEVTVF9TS0lQKCkuCisgIGlm
ICghSGFzRmF0YWxGYWlsdXJlKCkgJiYgIUlzU2tpcHBlZCgpKSB7CiAgICAgaW1wbC0+b3Nfc3Rh
Y2tfdHJhY2VfZ2V0dGVyKCktPlVwb25MZWF2aW5nR1Rlc3QoKTsKICAgICBpbnRlcm5hbDo6SGFu
ZGxlRXhjZXB0aW9uc0luTWV0aG9kSWZTdXBwb3J0ZWQoCiAgICAgICAgIHRoaXMsICZUZXN0OjpU
ZXN0Qm9keSwgInRoZSB0ZXN0IGJvZHkiKTsKQEAgLTI1MjYsMzIgKzI2NzcsMzYgQEAgdm9pZCBU
ZXN0OjpSdW4oKSB7CiAgICAgICB0aGlzLCAmVGVzdDo6VGVhckRvd24sICJUZWFyRG93bigpIik7
CiB9CiAKLS8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIGN1cnJlbnQgdGVzdCBoYXMgYSBmYXRhbCBm
YWlsdXJlLgorLy8gUmV0dXJucyB0cnVlIGlmIGFuZCBvbmx5IGlmIHRoZSBjdXJyZW50IHRlc3Qg
aGFzIGEgZmF0YWwgZmFpbHVyZS4KIGJvb2wgVGVzdDo6SGFzRmF0YWxGYWlsdXJlKCkgewogICBy
ZXR1cm4gaW50ZXJuYWw6OkdldFVuaXRUZXN0SW1wbCgpLT5jdXJyZW50X3Rlc3RfcmVzdWx0KCkt
Pkhhc0ZhdGFsRmFpbHVyZSgpOwogfQogCi0vLyBSZXR1cm5zIHRydWUgaWZmIHRoZSBjdXJyZW50
IHRlc3QgaGFzIGEgbm9uLWZhdGFsIGZhaWx1cmUuCisvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9u
bHkgaWYgdGhlIGN1cnJlbnQgdGVzdCBoYXMgYSBub24tZmF0YWwgZmFpbHVyZS4KIGJvb2wgVGVz
dDo6SGFzTm9uZmF0YWxGYWlsdXJlKCkgewogICByZXR1cm4gaW50ZXJuYWw6OkdldFVuaXRUZXN0
SW1wbCgpLT5jdXJyZW50X3Rlc3RfcmVzdWx0KCktPgogICAgICAgSGFzTm9uZmF0YWxGYWlsdXJl
KCk7CiB9CiAKKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgY3VycmVudCB0ZXN0
IHdhcyBza2lwcGVkLgorYm9vbCBUZXN0OjpJc1NraXBwZWQoKSB7CisgIHJldHVybiBpbnRlcm5h
bDo6R2V0VW5pdFRlc3RJbXBsKCktPmN1cnJlbnRfdGVzdF9yZXN1bHQoKS0+U2tpcHBlZCgpOwor
fQorCiAvLyBjbGFzcyBUZXN0SW5mbwogCiAvLyBDb25zdHJ1Y3RzIGEgVGVzdEluZm8gb2JqZWN0
LiBJdCBhc3N1bWVzIG93bmVyc2hpcCBvZiB0aGUgdGVzdCBmYWN0b3J5CiAvLyBvYmplY3QuCi1U
ZXN0SW5mbzo6VGVzdEluZm8oY29uc3Qgc3RkOjpzdHJpbmcmIGFfdGVzdF9jYXNlX25hbWUsCi0g
ICAgICAgICAgICAgICAgICAgY29uc3Qgc3RkOjpzdHJpbmcmIGFfbmFtZSwKLSAgICAgICAgICAg
ICAgICAgICBjb25zdCBjaGFyKiBhX3R5cGVfcGFyYW0sCitUZXN0SW5mbzo6VGVzdEluZm8oY29u
c3Qgc3RkOjpzdHJpbmcmIGFfdGVzdF9zdWl0ZV9uYW1lLAorICAgICAgICAgICAgICAgICAgIGNv
bnN0IHN0ZDo6c3RyaW5nJiBhX25hbWUsIGNvbnN0IGNoYXIqIGFfdHlwZV9wYXJhbSwKICAgICAg
ICAgICAgICAgICAgICBjb25zdCBjaGFyKiBhX3ZhbHVlX3BhcmFtLAogICAgICAgICAgICAgICAg
ICAgIGludGVybmFsOjpDb2RlTG9jYXRpb24gYV9jb2RlX2xvY2F0aW9uLAogICAgICAgICAgICAg
ICAgICAgIGludGVybmFsOjpUeXBlSWQgZml4dHVyZV9jbGFzc19pZCwKICAgICAgICAgICAgICAg
ICAgICBpbnRlcm5hbDo6VGVzdEZhY3RvcnlCYXNlKiBmYWN0b3J5KQotICAgIDogdGVzdF9jYXNl
X25hbWVfKGFfdGVzdF9jYXNlX25hbWUpLAorICAgIDogdGVzdF9zdWl0ZV9uYW1lXyhhX3Rlc3Rf
c3VpdGVfbmFtZSksCiAgICAgICBuYW1lXyhhX25hbWUpLAotICAgICAgdHlwZV9wYXJhbV8oYV90
eXBlX3BhcmFtID8gbmV3IHN0ZDo6c3RyaW5nKGFfdHlwZV9wYXJhbSkgOiBOVUxMKSwKLSAgICAg
IHZhbHVlX3BhcmFtXyhhX3ZhbHVlX3BhcmFtID8gbmV3IHN0ZDo6c3RyaW5nKGFfdmFsdWVfcGFy
YW0pIDogTlVMTCksCisgICAgICB0eXBlX3BhcmFtXyhhX3R5cGVfcGFyYW0gPyBuZXcgc3RkOjpz
dHJpbmcoYV90eXBlX3BhcmFtKSA6IG51bGxwdHIpLAorICAgICAgdmFsdWVfcGFyYW1fKGFfdmFs
dWVfcGFyYW0gPyBuZXcgc3RkOjpzdHJpbmcoYV92YWx1ZV9wYXJhbSkgOiBudWxscHRyKSwKICAg
ICAgIGxvY2F0aW9uXyhhX2NvZGVfbG9jYXRpb24pLAogICAgICAgZml4dHVyZV9jbGFzc19pZF8o
Zml4dHVyZV9jbGFzc19pZCksCiAgICAgICBzaG91bGRfcnVuXyhmYWxzZSksCkBAIC0yNTcwLDcg
KzI3MjUsNyBAQCBuYW1lc3BhY2UgaW50ZXJuYWwgewogLy8KIC8vIEFyZ3VtZW50czoKIC8vCi0v
LyAgIHRlc3RfY2FzZV9uYW1lOiAgIG5hbWUgb2YgdGhlIHRlc3QgY2FzZQorLy8gICB0ZXN0X3N1
aXRlX25hbWU6ICAgbmFtZSBvZiB0aGUgdGVzdCBzdWl0ZQogLy8gICBuYW1lOiAgICAgICAgICAg
ICBuYW1lIG9mIHRoZSB0ZXN0CiAvLyAgIHR5cGVfcGFyYW06ICAgICAgIHRoZSBuYW1lIG9mIHRo
ZSB0ZXN0J3MgdHlwZSBwYXJhbWV0ZXIsIG9yIE5VTEwgaWYKIC8vICAgICAgICAgICAgICAgICAg
ICAgdGhpcyBpcyBub3QgYSB0eXBlZCBvciBhIHR5cGUtcGFyYW1ldGVyaXplZCB0ZXN0LgpAQCAt
MjU3OCw0MCArMjczMywzNSBAQCBuYW1lc3BhY2UgaW50ZXJuYWwgewogLy8gICAgICAgICAgICAg
ICAgICAgICBvciBOVUxMIGlmIHRoaXMgaXMgbm90IGEgdmFsdWUtcGFyYW1ldGVyaXplZCB0ZXN0
LgogLy8gICBjb2RlX2xvY2F0aW9uOiAgICBjb2RlIGxvY2F0aW9uIHdoZXJlIHRoZSB0ZXN0IGlz
IGRlZmluZWQKIC8vICAgZml4dHVyZV9jbGFzc19pZDogSUQgb2YgdGhlIHRlc3QgZml4dHVyZSBj
bGFzcwotLy8gICBzZXRfdXBfdGM6ICAgICAgICBwb2ludGVyIHRvIHRoZSBmdW5jdGlvbiB0aGF0
IHNldHMgdXAgdGhlIHRlc3QgY2FzZQotLy8gICB0ZWFyX2Rvd25fdGM6ICAgICBwb2ludGVyIHRv
IHRoZSBmdW5jdGlvbiB0aGF0IHRlYXJzIGRvd24gdGhlIHRlc3QgY2FzZQorLy8gICBzZXRfdXBf
dGM6ICAgICAgICBwb2ludGVyIHRvIHRoZSBmdW5jdGlvbiB0aGF0IHNldHMgdXAgdGhlIHRlc3Qg
c3VpdGUKKy8vICAgdGVhcl9kb3duX3RjOiAgICAgcG9pbnRlciB0byB0aGUgZnVuY3Rpb24gdGhh
dCB0ZWFycyBkb3duIHRoZSB0ZXN0IHN1aXRlCiAvLyAgIGZhY3Rvcnk6ICAgICAgICAgIHBvaW50
ZXIgdG8gdGhlIGZhY3RvcnkgdGhhdCBjcmVhdGVzIGEgdGVzdCBvYmplY3QuCiAvLyAgICAgICAg
ICAgICAgICAgICAgIFRoZSBuZXdseSBjcmVhdGVkIFRlc3RJbmZvIGluc3RhbmNlIHdpbGwgYXNz
dW1lCiAvLyAgICAgICAgICAgICAgICAgICAgIG93bmVyc2hpcCBvZiB0aGUgZmFjdG9yeSBvYmpl
Y3QuCiBUZXN0SW5mbyogTWFrZUFuZFJlZ2lzdGVyVGVzdEluZm8oCi0gICAgY29uc3QgY2hhciog
dGVzdF9jYXNlX25hbWUsCi0gICAgY29uc3QgY2hhciogbmFtZSwKLSAgICBjb25zdCBjaGFyKiB0
eXBlX3BhcmFtLAotICAgIGNvbnN0IGNoYXIqIHZhbHVlX3BhcmFtLAotICAgIENvZGVMb2NhdGlv
biBjb2RlX2xvY2F0aW9uLAotICAgIFR5cGVJZCBmaXh0dXJlX2NsYXNzX2lkLAotICAgIFNldFVw
VGVzdENhc2VGdW5jIHNldF91cF90YywKLSAgICBUZWFyRG93blRlc3RDYXNlRnVuYyB0ZWFyX2Rv
d25fdGMsCi0gICAgVGVzdEZhY3RvcnlCYXNlKiBmYWN0b3J5KSB7CisgICAgY29uc3QgY2hhciog
dGVzdF9zdWl0ZV9uYW1lLCBjb25zdCBjaGFyKiBuYW1lLCBjb25zdCBjaGFyKiB0eXBlX3BhcmFt
LAorICAgIGNvbnN0IGNoYXIqIHZhbHVlX3BhcmFtLCBDb2RlTG9jYXRpb24gY29kZV9sb2NhdGlv
biwKKyAgICBUeXBlSWQgZml4dHVyZV9jbGFzc19pZCwgU2V0VXBUZXN0U3VpdGVGdW5jIHNldF91
cF90YywKKyAgICBUZWFyRG93blRlc3RTdWl0ZUZ1bmMgdGVhcl9kb3duX3RjLCBUZXN0RmFjdG9y
eUJhc2UqIGZhY3RvcnkpIHsKICAgVGVzdEluZm8qIGNvbnN0IHRlc3RfaW5mbyA9Ci0gICAgICBu
ZXcgVGVzdEluZm8odGVzdF9jYXNlX25hbWUsIG5hbWUsIHR5cGVfcGFyYW0sIHZhbHVlX3BhcmFt
LAorICAgICAgbmV3IFRlc3RJbmZvKHRlc3Rfc3VpdGVfbmFtZSwgbmFtZSwgdHlwZV9wYXJhbSwg
dmFsdWVfcGFyYW0sCiAgICAgICAgICAgICAgICAgICAgY29kZV9sb2NhdGlvbiwgZml4dHVyZV9j
bGFzc19pZCwgZmFjdG9yeSk7CiAgIEdldFVuaXRUZXN0SW1wbCgpLT5BZGRUZXN0SW5mbyhzZXRf
dXBfdGMsIHRlYXJfZG93bl90YywgdGVzdF9pbmZvKTsKICAgcmV0dXJuIHRlc3RfaW5mbzsKIH0K
IAotdm9pZCBSZXBvcnRJbnZhbGlkVGVzdENhc2VUeXBlKGNvbnN0IGNoYXIqIHRlc3RfY2FzZV9u
YW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvZGVMb2NhdGlvbiBjb2RlX2xv
Y2F0aW9uKSB7Cit2b2lkIFJlcG9ydEludmFsaWRUZXN0U3VpdGVUeXBlKGNvbnN0IGNoYXIqIHRl
c3Rfc3VpdGVfbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29kZUxvY2F0
aW9uIGNvZGVfbG9jYXRpb24pIHsKICAgTWVzc2FnZSBlcnJvcnM7CiAgIGVycm9ycwotICAgICAg
PDwgIkF0dGVtcHRlZCByZWRlZmluaXRpb24gb2YgdGVzdCBjYXNlICIgPDwgdGVzdF9jYXNlX25h
bWUgPDwgIi5cbiIKLSAgICAgIDw8ICJBbGwgdGVzdHMgaW4gdGhlIHNhbWUgdGVzdCBjYXNlIG11
c3QgdXNlIHRoZSBzYW1lIHRlc3QgZml4dHVyZVxuIgotICAgICAgPDwgImNsYXNzLiAgSG93ZXZl
ciwgaW4gdGVzdCBjYXNlICIgPDwgdGVzdF9jYXNlX25hbWUgPDwgIiwgeW91IHRyaWVkXG4iCisg
ICAgICA8PCAiQXR0ZW1wdGVkIHJlZGVmaW5pdGlvbiBvZiB0ZXN0IHN1aXRlICIgPDwgdGVzdF9z
dWl0ZV9uYW1lIDw8ICIuXG4iCisgICAgICA8PCAiQWxsIHRlc3RzIGluIHRoZSBzYW1lIHRlc3Qg
c3VpdGUgbXVzdCB1c2UgdGhlIHNhbWUgdGVzdCBmaXh0dXJlXG4iCisgICAgICA8PCAiY2xhc3Mu
ICBIb3dldmVyLCBpbiB0ZXN0IHN1aXRlICIgPDwgdGVzdF9zdWl0ZV9uYW1lIDw8ICIsIHlvdSB0
cmllZFxuIgogICAgICAgPDwgInRvIGRlZmluZSBhIHRlc3QgdXNpbmcgYSBmaXh0dXJlIGNsYXNz
IGRpZmZlcmVudCBmcm9tIHRoZSBvbmVcbiIKICAgICAgIDw8ICJ1c2VkIGVhcmxpZXIuIFRoaXMg
Y2FuIGhhcHBlbiBpZiB0aGUgdHdvIGZpeHR1cmUgY2xhc3NlcyBhcmVcbiIKICAgICAgIDw8ICJm
cm9tIGRpZmZlcmVudCBuYW1lc3BhY2VzIGFuZCBoYXZlIHRoZSBzYW1lIG5hbWUuIFlvdSBzaG91
bGRcbiIKICAgICAgIDw8ICJwcm9iYWJseSByZW5hbWUgb25lIG9mIHRoZSBjbGFzc2VzIHRvIHB1
dCB0aGUgdGVzdHMgaW50byBkaWZmZXJlbnRcbiIKLSAgICAgIDw8ICJ0ZXN0IGNhc2VzLiI7Cisg
ICAgICA8PCAidGVzdCBzdWl0ZXMuIjsKIAogICBHVEVTVF9MT0dfKEVSUk9SKSA8PCBGb3JtYXRG
aWxlTG9jYXRpb24oY29kZV9sb2NhdGlvbi5maWxlLmNfc3RyKCksCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb2RlX2xvY2F0aW9uLmxpbmUpCkBAIC0yNjI0LDcg
KzI3NzQsNyBAQCBuYW1lc3BhY2UgewogLy8gQSBwcmVkaWNhdGUgdGhhdCBjaGVja3MgdGhlIHRl
c3QgbmFtZSBvZiBhIFRlc3RJbmZvIGFnYWluc3QgYSBrbm93bgogLy8gdmFsdWUuCiAvLwotLy8g
VGhpcyBpcyB1c2VkIGZvciBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgVGVzdENhc2UgY2xhc3Mgb25s
eS4gIFdlIHB1dAorLy8gVGhpcyBpcyB1c2VkIGZvciBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgVGVz
dFN1aXRlIGNsYXNzIG9ubHkuICBXZSBwdXQKIC8vIGl0IGluIHRoZSBhbm9ueW1vdXMgbmFtZXNw
YWNlIHRvIHByZXZlbnQgcG9sbHV0aW5nIHRoZSBvdXRlcgogLy8gbmFtZXNwYWNlLgogLy8KQEAg
LTI2MzcsNyArMjc4Nyw3IEBAIGNsYXNzIFRlc3ROYW1lSXMgewogICBleHBsaWNpdCBUZXN0TmFt
ZUlzKGNvbnN0IGNoYXIqIG5hbWUpCiAgICAgICA6IG5hbWVfKG5hbWUpIHt9CiAKLSAgLy8gUmV0
dXJucyB0cnVlIGlmZiB0aGUgdGVzdCBuYW1lIG9mIHRlc3RfaW5mbyBtYXRjaGVzIG5hbWVfLgor
ICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIHRlc3QgbmFtZSBvZiB0ZXN0X2lu
Zm8gbWF0Y2hlcyBuYW1lXy4KICAgYm9vbCBvcGVyYXRvcigpKGNvbnN0IFRlc3RJbmZvICogdGVz
dF9pbmZvKSBjb25zdCB7CiAgICAgcmV0dXJuIHRlc3RfaW5mbyAmJiB0ZXN0X2luZm8tPm5hbWUo
KSA9PSBuYW1lXzsKICAgfQpAQCAtMjY1MSwxMSArMjgwMSwxMiBAQCBjbGFzcyBUZXN0TmFtZUlz
IHsKIG5hbWVzcGFjZSBpbnRlcm5hbCB7CiAKIC8vIFRoaXMgbWV0aG9kIGV4cGFuZHMgYWxsIHBh
cmFtZXRlcml6ZWQgdGVzdHMgcmVnaXN0ZXJlZCB3aXRoIG1hY3JvcyBURVNUX1AKLS8vIGFuZCBJ
TlNUQU5USUFURV9URVNUX0NBU0VfUCBpbnRvIHJlZ3VsYXIgdGVzdHMgYW5kIHJlZ2lzdGVycyB0
aG9zZS4KKy8vIGFuZCBJTlNUQU5USUFURV9URVNUX1NVSVRFX1AgaW50byByZWd1bGFyIHRlc3Rz
IGFuZCByZWdpc3RlcnMgdGhvc2UuCiAvLyBUaGlzIHdpbGwgYmUgZG9uZSBqdXN0IG9uY2UgZHVy
aW5nIHRoZSBwcm9ncmFtIHJ1bnRpbWUuCiB2b2lkIFVuaXRUZXN0SW1wbDo6UmVnaXN0ZXJQYXJh
bWV0ZXJpemVkVGVzdHMoKSB7CiAgIGlmICghcGFyYW1ldGVyaXplZF90ZXN0c19yZWdpc3RlcmVk
XykgewogICAgIHBhcmFtZXRlcml6ZWRfdGVzdF9yZWdpc3RyeV8uUmVnaXN0ZXJUZXN0cygpOwor
ICAgIHR5cGVfcGFyYW1ldGVyaXplZF90ZXN0X3JlZ2lzdHJ5Xy5DaGVja0Zvckluc3RhbnRpYXRp
b25zKCk7CiAgICAgcGFyYW1ldGVyaXplZF90ZXN0c19yZWdpc3RlcmVkXyA9IHRydWU7CiAgIH0K
IH0KQEAgLTI2ODUsMTkgKzI4MzYsMjMgQEAgdm9pZCBUZXN0SW5mbzo6UnVuKCkgewogICAgICAg
ZmFjdG9yeV8sICZpbnRlcm5hbDo6VGVzdEZhY3RvcnlCYXNlOjpDcmVhdGVUZXN0LAogICAgICAg
InRoZSB0ZXN0IGZpeHR1cmUncyBjb25zdHJ1Y3RvciIpOwogCi0gIC8vIFJ1bnMgdGhlIHRlc3Qg
aWYgdGhlIGNvbnN0cnVjdG9yIGRpZG4ndCBnZW5lcmF0ZSBhIGZhdGFsIGZhaWx1cmUuCisgIC8v
IFJ1bnMgdGhlIHRlc3QgaWYgdGhlIGNvbnN0cnVjdG9yIGRpZG4ndCBnZW5lcmF0ZSBhIGZhdGFs
IGZhaWx1cmUgb3IgaW52b2tlCisgIC8vIEdURVNUX1NLSVAoKS4KICAgLy8gTm90ZSB0aGF0IHRo
ZSBvYmplY3Qgd2lsbCBub3QgYmUgbnVsbAotICBpZiAoIVRlc3Q6Okhhc0ZhdGFsRmFpbHVyZSgp
KSB7CisgIGlmICghVGVzdDo6SGFzRmF0YWxGYWlsdXJlKCkgJiYgIVRlc3Q6OklzU2tpcHBlZCgp
KSB7CiAgICAgLy8gVGhpcyBkb2Vzbid0IHRocm93IGFzIGFsbCB1c2VyIGNvZGUgdGhhdCBjYW4g
dGhyb3cgYXJlIHdyYXBwZWQgaW50bwogICAgIC8vIGV4Y2VwdGlvbiBoYW5kbGluZyBjb2RlLgog
ICAgIHRlc3QtPlJ1bigpOwogICB9CiAKKyAgaWYgKHRlc3QgIT0gbnVsbHB0cikgewogICAgIC8v
IERlbGV0ZXMgdGhlIHRlc3Qgb2JqZWN0LgogICAgIGltcGwtPm9zX3N0YWNrX3RyYWNlX2dldHRl
cigpLT5VcG9uTGVhdmluZ0dUZXN0KCk7CiAgICAgaW50ZXJuYWw6OkhhbmRsZUV4Y2VwdGlvbnNJ
bk1ldGhvZElmU3VwcG9ydGVkKAogICAgICAgICB0ZXN0LCAmVGVzdDo6RGVsZXRlU2VsZl8sICJ0
aGUgdGVzdCBmaXh0dXJlJ3MgZGVzdHJ1Y3RvciIpOworICB9CiAKKyAgcmVzdWx0Xy5zZXRfc3Rh
cnRfdGltZXN0YW1wKHN0YXJ0KTsKICAgcmVzdWx0Xy5zZXRfZWxhcHNlZF90aW1lKGludGVybmFs
OjpHZXRUaW1lSW5NaWxsaXMoKSAtIHN0YXJ0KTsKIAogICAvLyBOb3RpZmllcyB0aGUgdW5pdCB0
ZXN0IGV2ZW50IGxpc3RlbmVyIHRoYXQgYSB0ZXN0IGhhcyBqdXN0IGZpbmlzaGVkLgpAQCAtMjcw
NSwxMzQgKzI4NjAsMTUxIEBAIHZvaWQgVGVzdEluZm86OlJ1bigpIHsKIAogICAvLyBUZWxscyBV
bml0VGVzdCB0byBzdG9wIGFzc29jaWF0aW5nIGFzc2VydGlvbiByZXN1bHRzIHRvIHRoaXMKICAg
Ly8gdGVzdC4KLSAgaW1wbC0+c2V0X2N1cnJlbnRfdGVzdF9pbmZvKE5VTEwpOworICBpbXBsLT5z
ZXRfY3VycmVudF90ZXN0X2luZm8obnVsbHB0cik7CiB9CiAKLS8vIGNsYXNzIFRlc3RDYXNlCisv
LyBjbGFzcyBUZXN0U3VpdGUKIAotLy8gR2V0cyB0aGUgbnVtYmVyIG9mIHN1Y2Nlc3NmdWwgdGVz
dHMgaW4gdGhpcyB0ZXN0IGNhc2UuCi1pbnQgVGVzdENhc2U6OnN1Y2Nlc3NmdWxfdGVzdF9jb3Vu
dCgpIGNvbnN0IHsKKy8vIEdldHMgdGhlIG51bWJlciBvZiBzdWNjZXNzZnVsIHRlc3RzIGluIHRo
aXMgdGVzdCBzdWl0ZS4KK2ludCBUZXN0U3VpdGU6OnN1Y2Nlc3NmdWxfdGVzdF9jb3VudCgpIGNv
bnN0IHsKICAgcmV0dXJuIENvdW50SWYodGVzdF9pbmZvX2xpc3RfLCBUZXN0UGFzc2VkKTsKIH0K
IAotLy8gR2V0cyB0aGUgbnVtYmVyIG9mIGZhaWxlZCB0ZXN0cyBpbiB0aGlzIHRlc3QgY2FzZS4K
LWludCBUZXN0Q2FzZTo6ZmFpbGVkX3Rlc3RfY291bnQoKSBjb25zdCB7CisvLyBHZXRzIHRoZSBu
dW1iZXIgb2Ygc3VjY2Vzc2Z1bCB0ZXN0cyBpbiB0aGlzIHRlc3Qgc3VpdGUuCitpbnQgVGVzdFN1
aXRlOjpza2lwcGVkX3Rlc3RfY291bnQoKSBjb25zdCB7CisgIHJldHVybiBDb3VudElmKHRlc3Rf
aW5mb19saXN0XywgVGVzdFNraXBwZWQpOworfQorCisvLyBHZXRzIHRoZSBudW1iZXIgb2YgZmFp
bGVkIHRlc3RzIGluIHRoaXMgdGVzdCBzdWl0ZS4KK2ludCBUZXN0U3VpdGU6OmZhaWxlZF90ZXN0
X2NvdW50KCkgY29uc3QgewogICByZXR1cm4gQ291bnRJZih0ZXN0X2luZm9fbGlzdF8sIFRlc3RG
YWlsZWQpOwogfQogCiAvLyBHZXRzIHRoZSBudW1iZXIgb2YgZGlzYWJsZWQgdGVzdHMgdGhhdCB3
aWxsIGJlIHJlcG9ydGVkIGluIHRoZSBYTUwgcmVwb3J0LgotaW50IFRlc3RDYXNlOjpyZXBvcnRh
YmxlX2Rpc2FibGVkX3Rlc3RfY291bnQoKSBjb25zdCB7CitpbnQgVGVzdFN1aXRlOjpyZXBvcnRh
YmxlX2Rpc2FibGVkX3Rlc3RfY291bnQoKSBjb25zdCB7CiAgIHJldHVybiBDb3VudElmKHRlc3Rf
aW5mb19saXN0XywgVGVzdFJlcG9ydGFibGVEaXNhYmxlZCk7CiB9CiAKLS8vIEdldHMgdGhlIG51
bWJlciBvZiBkaXNhYmxlZCB0ZXN0cyBpbiB0aGlzIHRlc3QgY2FzZS4KLWludCBUZXN0Q2FzZTo6
ZGlzYWJsZWRfdGVzdF9jb3VudCgpIGNvbnN0IHsKKy8vIEdldHMgdGhlIG51bWJlciBvZiBkaXNh
YmxlZCB0ZXN0cyBpbiB0aGlzIHRlc3Qgc3VpdGUuCitpbnQgVGVzdFN1aXRlOjpkaXNhYmxlZF90
ZXN0X2NvdW50KCkgY29uc3QgewogICByZXR1cm4gQ291bnRJZih0ZXN0X2luZm9fbGlzdF8sIFRl
c3REaXNhYmxlZCk7CiB9CiAKIC8vIEdldHMgdGhlIG51bWJlciBvZiB0ZXN0cyB0byBiZSBwcmlu
dGVkIGluIHRoZSBYTUwgcmVwb3J0LgotaW50IFRlc3RDYXNlOjpyZXBvcnRhYmxlX3Rlc3RfY291
bnQoKSBjb25zdCB7CitpbnQgVGVzdFN1aXRlOjpyZXBvcnRhYmxlX3Rlc3RfY291bnQoKSBjb25z
dCB7CiAgIHJldHVybiBDb3VudElmKHRlc3RfaW5mb19saXN0XywgVGVzdFJlcG9ydGFibGUpOwog
fQogCi0vLyBHZXQgdGhlIG51bWJlciBvZiB0ZXN0cyBpbiB0aGlzIHRlc3QgY2FzZSB0aGF0IHNo
b3VsZCBydW4uCi1pbnQgVGVzdENhc2U6OnRlc3RfdG9fcnVuX2NvdW50KCkgY29uc3QgeworLy8g
R2V0IHRoZSBudW1iZXIgb2YgdGVzdHMgaW4gdGhpcyB0ZXN0IHN1aXRlIHRoYXQgc2hvdWxkIHJ1
bi4KK2ludCBUZXN0U3VpdGU6OnRlc3RfdG9fcnVuX2NvdW50KCkgY29uc3QgewogICByZXR1cm4g
Q291bnRJZih0ZXN0X2luZm9fbGlzdF8sIFNob3VsZFJ1blRlc3QpOwogfQogCiAvLyBHZXRzIHRo
ZSBudW1iZXIgb2YgYWxsIHRlc3RzLgotaW50IFRlc3RDYXNlOjp0b3RhbF90ZXN0X2NvdW50KCkg
Y29uc3QgeworaW50IFRlc3RTdWl0ZTo6dG90YWxfdGVzdF9jb3VudCgpIGNvbnN0IHsKICAgcmV0
dXJuIHN0YXRpY19jYXN0PGludD4odGVzdF9pbmZvX2xpc3RfLnNpemUoKSk7CiB9CiAKLS8vIENy
ZWF0ZXMgYSBUZXN0Q2FzZSB3aXRoIHRoZSBnaXZlbiBuYW1lLgorLy8gQ3JlYXRlcyBhIFRlc3RT
dWl0ZSB3aXRoIHRoZSBnaXZlbiBuYW1lLgogLy8KIC8vIEFyZ3VtZW50czoKIC8vCi0vLyAgIG5h
bWU6ICAgICAgICAgbmFtZSBvZiB0aGUgdGVzdCBjYXNlCi0vLyAgIGFfdHlwZV9wYXJhbTogdGhl
IG5hbWUgb2YgdGhlIHRlc3QgY2FzZSdzIHR5cGUgcGFyYW1ldGVyLCBvciBOVUxMIGlmCi0vLyAg
ICAgICAgICAgICAgICAgdGhpcyBpcyBub3QgYSB0eXBlZCBvciBhIHR5cGUtcGFyYW1ldGVyaXpl
ZCB0ZXN0IGNhc2UuCi0vLyAgIHNldF91cF90YzogICAgcG9pbnRlciB0byB0aGUgZnVuY3Rpb24g
dGhhdCBzZXRzIHVwIHRoZSB0ZXN0IGNhc2UKLS8vICAgdGVhcl9kb3duX3RjOiBwb2ludGVyIHRv
IHRoZSBmdW5jdGlvbiB0aGF0IHRlYXJzIGRvd24gdGhlIHRlc3QgY2FzZQotVGVzdENhc2U6OlRl
c3RDYXNlKGNvbnN0IGNoYXIqIGFfbmFtZSwgY29uc3QgY2hhciogYV90eXBlX3BhcmFtLAotICAg
ICAgICAgICAgICAgICAgIFRlc3Q6OlNldFVwVGVzdENhc2VGdW5jIHNldF91cF90YywKLSAgICAg
ICAgICAgICAgICAgICBUZXN0OjpUZWFyRG93blRlc3RDYXNlRnVuYyB0ZWFyX2Rvd25fdGMpCisv
LyAgIG5hbWU6ICAgICAgICAgbmFtZSBvZiB0aGUgdGVzdCBzdWl0ZQorLy8gICBhX3R5cGVfcGFy
YW06IHRoZSBuYW1lIG9mIHRoZSB0ZXN0IHN1aXRlJ3MgdHlwZSBwYXJhbWV0ZXIsIG9yIE5VTEwg
aWYKKy8vICAgICAgICAgICAgICAgICB0aGlzIGlzIG5vdCBhIHR5cGVkIG9yIGEgdHlwZS1wYXJh
bWV0ZXJpemVkIHRlc3Qgc3VpdGUuCisvLyAgIHNldF91cF90YzogICAgcG9pbnRlciB0byB0aGUg
ZnVuY3Rpb24gdGhhdCBzZXRzIHVwIHRoZSB0ZXN0IHN1aXRlCisvLyAgIHRlYXJfZG93bl90Yzog
cG9pbnRlciB0byB0aGUgZnVuY3Rpb24gdGhhdCB0ZWFycyBkb3duIHRoZSB0ZXN0IHN1aXRlCitU
ZXN0U3VpdGU6OlRlc3RTdWl0ZShjb25zdCBjaGFyKiBhX25hbWUsIGNvbnN0IGNoYXIqIGFfdHlw
ZV9wYXJhbSwKKyAgICAgICAgICAgICAgICAgICAgIGludGVybmFsOjpTZXRVcFRlc3RTdWl0ZUZ1
bmMgc2V0X3VwX3RjLAorICAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWw6OlRlYXJEb3duVGVz
dFN1aXRlRnVuYyB0ZWFyX2Rvd25fdGMpCiAgICAgOiBuYW1lXyhhX25hbWUpLAotICAgICAgdHlw
ZV9wYXJhbV8oYV90eXBlX3BhcmFtID8gbmV3IHN0ZDo6c3RyaW5nKGFfdHlwZV9wYXJhbSkgOiBO
VUxMKSwKKyAgICAgIHR5cGVfcGFyYW1fKGFfdHlwZV9wYXJhbSA/IG5ldyBzdGQ6OnN0cmluZyhh
X3R5cGVfcGFyYW0pIDogbnVsbHB0ciksCiAgICAgICBzZXRfdXBfdGNfKHNldF91cF90YyksCiAg
ICAgICB0ZWFyX2Rvd25fdGNfKHRlYXJfZG93bl90YyksCiAgICAgICBzaG91bGRfcnVuXyhmYWxz
ZSksCi0gICAgICBlbGFwc2VkX3RpbWVfKDApIHsKLX0KKyAgICAgIHN0YXJ0X3RpbWVzdGFtcF8o
MCksCisgICAgICBlbGFwc2VkX3RpbWVfKDApIHt9CiAKLS8vIERlc3RydWN0b3Igb2YgVGVzdENh
c2UuCi1UZXN0Q2FzZTo6flRlc3RDYXNlKCkgeworLy8gRGVzdHJ1Y3RvciBvZiBUZXN0U3VpdGUu
CitUZXN0U3VpdGU6On5UZXN0U3VpdGUoKSB7CiAgIC8vIERlbGV0ZXMgZXZlcnkgVGVzdCBpbiB0
aGUgY29sbGVjdGlvbi4KICAgRm9yRWFjaCh0ZXN0X2luZm9fbGlzdF8sIGludGVybmFsOjpEZWxl
dGU8VGVzdEluZm8+KTsKIH0KIAogLy8gUmV0dXJucyB0aGUgaS10aCB0ZXN0IGFtb25nIGFsbCB0
aGUgdGVzdHMuIGkgY2FuIHJhbmdlIGZyb20gMCB0bwogLy8gdG90YWxfdGVzdF9jb3VudCgpIC0g
MS4gSWYgaSBpcyBub3QgaW4gdGhhdCByYW5nZSwgcmV0dXJucyBOVUxMLgotY29uc3QgVGVzdElu
Zm8qIFRlc3RDYXNlOjpHZXRUZXN0SW5mbyhpbnQgaSkgY29uc3QgeworY29uc3QgVGVzdEluZm8q
IFRlc3RTdWl0ZTo6R2V0VGVzdEluZm8oaW50IGkpIGNvbnN0IHsKICAgY29uc3QgaW50IGluZGV4
ID0gR2V0RWxlbWVudE9yKHRlc3RfaW5kaWNlc18sIGksIC0xKTsKLSAgcmV0dXJuIGluZGV4IDwg
MCA/IE5VTEwgOiB0ZXN0X2luZm9fbGlzdF9baW5kZXhdOworICByZXR1cm4gaW5kZXggPCAwID8g
bnVsbHB0ciA6IHRlc3RfaW5mb19saXN0X1tzdGF0aWNfY2FzdDxzaXplX3Q+KGluZGV4KV07CiB9
CiAKIC8vIFJldHVybnMgdGhlIGktdGggdGVzdCBhbW9uZyBhbGwgdGhlIHRlc3RzLiBpIGNhbiBy
YW5nZSBmcm9tIDAgdG8KIC8vIHRvdGFsX3Rlc3RfY291bnQoKSAtIDEuIElmIGkgaXMgbm90IGlu
IHRoYXQgcmFuZ2UsIHJldHVybnMgTlVMTC4KLVRlc3RJbmZvKiBUZXN0Q2FzZTo6R2V0TXV0YWJs
ZVRlc3RJbmZvKGludCBpKSB7CitUZXN0SW5mbyogVGVzdFN1aXRlOjpHZXRNdXRhYmxlVGVzdElu
Zm8oaW50IGkpIHsKICAgY29uc3QgaW50IGluZGV4ID0gR2V0RWxlbWVudE9yKHRlc3RfaW5kaWNl
c18sIGksIC0xKTsKLSAgcmV0dXJuIGluZGV4IDwgMCA/IE5VTEwgOiB0ZXN0X2luZm9fbGlzdF9b
aW5kZXhdOworICByZXR1cm4gaW5kZXggPCAwID8gbnVsbHB0ciA6IHRlc3RfaW5mb19saXN0X1tz
dGF0aWNfY2FzdDxzaXplX3Q+KGluZGV4KV07CiB9CiAKLS8vIEFkZHMgYSB0ZXN0IHRvIHRoaXMg
dGVzdCBjYXNlLiAgV2lsbCBkZWxldGUgdGhlIHRlc3QgdXBvbgotLy8gZGVzdHJ1Y3Rpb24gb2Yg
dGhlIFRlc3RDYXNlIG9iamVjdC4KLXZvaWQgVGVzdENhc2U6OkFkZFRlc3RJbmZvKFRlc3RJbmZv
ICogdGVzdF9pbmZvKSB7CisvLyBBZGRzIGEgdGVzdCB0byB0aGlzIHRlc3Qgc3VpdGUuICBXaWxs
IGRlbGV0ZSB0aGUgdGVzdCB1cG9uCisvLyBkZXN0cnVjdGlvbiBvZiB0aGUgVGVzdFN1aXRlIG9i
amVjdC4KK3ZvaWQgVGVzdFN1aXRlOjpBZGRUZXN0SW5mbyhUZXN0SW5mbyogdGVzdF9pbmZvKSB7
CiAgIHRlc3RfaW5mb19saXN0Xy5wdXNoX2JhY2sodGVzdF9pbmZvKTsKICAgdGVzdF9pbmRpY2Vz
Xy5wdXNoX2JhY2soc3RhdGljX2Nhc3Q8aW50Pih0ZXN0X2luZGljZXNfLnNpemUoKSkpOwogfQog
Ci0vLyBSdW5zIGV2ZXJ5IHRlc3QgaW4gdGhpcyBUZXN0Q2FzZS4KLXZvaWQgVGVzdENhc2U6OlJ1
bigpIHsKKy8vIFJ1bnMgZXZlcnkgdGVzdCBpbiB0aGlzIFRlc3RTdWl0ZS4KK3ZvaWQgVGVzdFN1
aXRlOjpSdW4oKSB7CiAgIGlmICghc2hvdWxkX3J1bl8pIHJldHVybjsKIAogICBpbnRlcm5hbDo6
VW5pdFRlc3RJbXBsKiBjb25zdCBpbXBsID0gaW50ZXJuYWw6OkdldFVuaXRUZXN0SW1wbCgpOwot
ICBpbXBsLT5zZXRfY3VycmVudF90ZXN0X2Nhc2UodGhpcyk7CisgIGltcGwtPnNldF9jdXJyZW50
X3Rlc3Rfc3VpdGUodGhpcyk7CiAKICAgVGVzdEV2ZW50TGlzdGVuZXIqIHJlcGVhdGVyID0gVW5p
dFRlc3Q6OkdldEluc3RhbmNlKCktPmxpc3RlbmVycygpLnJlcGVhdGVyKCk7CiAKKyAgLy8gQ2Fs
bCBib3RoIGxlZ2FjeSBhbmQgdGhlIG5ldyBBUEkKKyAgcmVwZWF0ZXItPk9uVGVzdFN1aXRlU3Rh
cnQoKnRoaXMpOworLy8gIExlZ2FjeSBBUEkgaXMgZGVwcmVjYXRlZCBidXQgc3RpbGwgYXZhaWxh
YmxlCisjaWZuZGVmIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJCiAgIHJlcGVhdGVy
LT5PblRlc3RDYXNlU3RhcnQoKnRoaXMpOworI2VuZGlmICAvLyAgR1RFU1RfUkVNT1ZFX0xFR0FD
WV9URVNUX0NBU0VBUEkKKwogICBpbXBsLT5vc19zdGFja190cmFjZV9nZXR0ZXIoKS0+VXBvbkxl
YXZpbmdHVGVzdCgpOwogICBpbnRlcm5hbDo6SGFuZGxlRXhjZXB0aW9uc0luTWV0aG9kSWZTdXBw
b3J0ZWQoCi0gICAgICB0aGlzLCAmVGVzdENhc2U6OlJ1blNldFVwVGVzdENhc2UsICJTZXRVcFRl
c3RDYXNlKCkiKTsKKyAgICAgIHRoaXMsICZUZXN0U3VpdGU6OlJ1blNldFVwVGVzdFN1aXRlLCAi
U2V0VXBUZXN0U3VpdGUoKSIpOwogCi0gIGNvbnN0IGludGVybmFsOjpUaW1lSW5NaWxsaXMgc3Rh
cnQgPSBpbnRlcm5hbDo6R2V0VGltZUluTWlsbGlzKCk7CisgIHN0YXJ0X3RpbWVzdGFtcF8gPSBp
bnRlcm5hbDo6R2V0VGltZUluTWlsbGlzKCk7CiAgIGZvciAoaW50IGkgPSAwOyBpIDwgdG90YWxf
dGVzdF9jb3VudCgpOyBpKyspIHsKICAgICBHZXRNdXRhYmxlVGVzdEluZm8oaSktPlJ1bigpOwog
ICB9Ci0gIGVsYXBzZWRfdGltZV8gPSBpbnRlcm5hbDo6R2V0VGltZUluTWlsbGlzKCkgLSBzdGFy
dDsKKyAgZWxhcHNlZF90aW1lXyA9IGludGVybmFsOjpHZXRUaW1lSW5NaWxsaXMoKSAtIHN0YXJ0
X3RpbWVzdGFtcF87CiAKICAgaW1wbC0+b3Nfc3RhY2tfdHJhY2VfZ2V0dGVyKCktPlVwb25MZWF2
aW5nR1Rlc3QoKTsKICAgaW50ZXJuYWw6OkhhbmRsZUV4Y2VwdGlvbnNJbk1ldGhvZElmU3VwcG9y
dGVkKAotICAgICAgdGhpcywgJlRlc3RDYXNlOjpSdW5UZWFyRG93blRlc3RDYXNlLCAiVGVhckRv
d25UZXN0Q2FzZSgpIik7CisgICAgICB0aGlzLCAmVGVzdFN1aXRlOjpSdW5UZWFyRG93blRlc3RT
dWl0ZSwgIlRlYXJEb3duVGVzdFN1aXRlKCkiKTsKIAorICAvLyBDYWxsIGJvdGggbGVnYWN5IGFu
ZCB0aGUgbmV3IEFQSQorICByZXBlYXRlci0+T25UZXN0U3VpdGVFbmQoKnRoaXMpOworLy8gIExl
Z2FjeSBBUEkgaXMgZGVwcmVjYXRlZCBidXQgc3RpbGwgYXZhaWxhYmxlCisjaWZuZGVmIEdURVNU
X1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJCiAgIHJlcGVhdGVyLT5PblRlc3RDYXNlRW5kKCp0
aGlzKTsKLSAgaW1wbC0+c2V0X2N1cnJlbnRfdGVzdF9jYXNlKE5VTEwpOworI2VuZGlmICAvLyAg
R1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUEkKKworICBpbXBsLT5zZXRfY3VycmVudF90
ZXN0X3N1aXRlKG51bGxwdHIpOwogfQogCi0vLyBDbGVhcnMgdGhlIHJlc3VsdHMgb2YgYWxsIHRl
c3RzIGluIHRoaXMgdGVzdCBjYXNlLgotdm9pZCBUZXN0Q2FzZTo6Q2xlYXJSZXN1bHQoKSB7Cisv
LyBDbGVhcnMgdGhlIHJlc3VsdHMgb2YgYWxsIHRlc3RzIGluIHRoaXMgdGVzdCBzdWl0ZS4KK3Zv
aWQgVGVzdFN1aXRlOjpDbGVhclJlc3VsdCgpIHsKICAgYWRfaG9jX3Rlc3RfcmVzdWx0Xy5DbGVh
cigpOwogICBGb3JFYWNoKHRlc3RfaW5mb19saXN0XywgVGVzdEluZm86OkNsZWFyVGVzdFJlc3Vs
dCk7CiB9CiAKLS8vIFNodWZmbGVzIHRoZSB0ZXN0cyBpbiB0aGlzIHRlc3QgY2FzZS4KLXZvaWQg
VGVzdENhc2U6OlNodWZmbGVUZXN0cyhpbnRlcm5hbDo6UmFuZG9tKiByYW5kb20pIHsKKy8vIFNo
dWZmbGVzIHRoZSB0ZXN0cyBpbiB0aGlzIHRlc3Qgc3VpdGUuCit2b2lkIFRlc3RTdWl0ZTo6U2h1
ZmZsZVRlc3RzKGludGVybmFsOjpSYW5kb20qIHJhbmRvbSkgewogICBTaHVmZmxlKHJhbmRvbSwg
JnRlc3RfaW5kaWNlc18pOwogfQogCiAvLyBSZXN0b3JlcyB0aGUgdGVzdCBvcmRlciB0byBiZWZv
cmUgdGhlIGZpcnN0IHNodWZmbGUuCi12b2lkIFRlc3RDYXNlOjpVbnNodWZmbGVUZXN0cygpIHsK
K3ZvaWQgVGVzdFN1aXRlOjpVbnNodWZmbGVUZXN0cygpIHsKICAgZm9yIChzaXplX3QgaSA9IDA7
IGkgPCB0ZXN0X2luZGljZXNfLnNpemUoKTsgaSsrKSB7CiAgICAgdGVzdF9pbmRpY2VzX1tpXSA9
IHN0YXRpY19jYXN0PGludD4oaSk7CiAgIH0KQEAgLTI4NTUsOSArMzAyNyw5IEBAIHN0YXRpYyBz
dGQ6OnN0cmluZyBGb3JtYXRUZXN0Q291bnQoaW50IHRlc3RfY291bnQpIHsKICAgcmV0dXJuIEZv
cm1hdENvdW50YWJsZU5vdW4odGVzdF9jb3VudCwgInRlc3QiLCAidGVzdHMiKTsKIH0KIAotLy8g
Rm9ybWF0cyB0aGUgY291bnQgb2YgdGVzdCBjYXNlcy4KLXN0YXRpYyBzdGQ6OnN0cmluZyBGb3Jt
YXRUZXN0Q2FzZUNvdW50KGludCB0ZXN0X2Nhc2VfY291bnQpIHsKLSAgcmV0dXJuIEZvcm1hdENv
dW50YWJsZU5vdW4odGVzdF9jYXNlX2NvdW50LCAidGVzdCBjYXNlIiwgInRlc3QgY2FzZXMiKTsK
Ky8vIEZvcm1hdHMgdGhlIGNvdW50IG9mIHRlc3Qgc3VpdGVzLgorc3RhdGljIHN0ZDo6c3RyaW5n
IEZvcm1hdFRlc3RTdWl0ZUNvdW50KGludCB0ZXN0X3N1aXRlX2NvdW50KSB7CisgIHJldHVybiBG
b3JtYXRDb3VudGFibGVOb3VuKHRlc3Rfc3VpdGVfY291bnQsICJ0ZXN0IHN1aXRlIiwgInRlc3Qg
c3VpdGVzIik7CiB9CiAKIC8vIENvbnZlcnRzIGEgVGVzdFBhcnRSZXN1bHQ6OlR5cGUgZW51bSB0
byBodW1hbi1mcmllbmRseSBzdHJpbmcKQEAgLTI4NjYsNiArMzAzOCw4IEBAIHN0YXRpYyBzdGQ6
OnN0cmluZyBGb3JtYXRUZXN0Q2FzZUNvdW50KGludCB0ZXN0X2Nhc2VfY291bnQpIHsKIC8vIGJl
dHdlZW4gdGhlIHR3byB3aGVuIHZpZXdpbmcgdGhlIHRlc3QgcmVzdWx0Lgogc3RhdGljIGNvbnN0
IGNoYXIgKiBUZXN0UGFydFJlc3VsdFR5cGVUb1N0cmluZyhUZXN0UGFydFJlc3VsdDo6VHlwZSB0
eXBlKSB7CiAgIHN3aXRjaCAodHlwZSkgeworICAgIGNhc2UgVGVzdFBhcnRSZXN1bHQ6OmtTa2lw
OgorICAgICAgcmV0dXJuICJTa2lwcGVkIjsKICAgICBjYXNlIFRlc3RQYXJ0UmVzdWx0OjprU3Vj
Y2VzczoKICAgICAgIHJldHVybiAiU3VjY2VzcyI7CiAKQEAgLTI5MTMsMTQgKzMwODcsNiBAQCBz
dGF0aWMgdm9pZCBQcmludFRlc3RQYXJ0UmVzdWx0KGNvbnN0IFRlc3RQYXJ0UmVzdWx0JiB0ZXN0
X3BhcnRfcmVzdWx0KSB7CiB9CiAKIC8vIGNsYXNzIFByZXR0eVVuaXRUZXN0UmVzdWx0UHJpbnRl
cgotCi1lbnVtIEdUZXN0Q29sb3IgewotICBDT0xPUl9ERUZBVUxULAotICBDT0xPUl9SRUQsCi0g
IENPTE9SX0dSRUVOLAotICBDT0xPUl9ZRUxMT1cKLX07Ci0KICNpZiBHVEVTVF9PU19XSU5ET1dT
ICYmICFHVEVTVF9PU19XSU5ET1dTX01PQklMRSAmJiBcCiAgICAgIUdURVNUX09TX1dJTkRPV1Nf
UEhPTkUgJiYgIUdURVNUX09TX1dJTkRPV1NfUlQgJiYgIUdURVNUX09TX1dJTkRPV1NfTUlOR1cK
IApAQCAtMjk3NCwxMyArMzE0MCwxNCBAQCBzdGF0aWMgY29uc3QgY2hhciogR2V0QW5zaUNvbG9y
Q29kZShHVGVzdENvbG9yIGNvbG9yKSB7CiAgICAgY2FzZSBDT0xPUl9SRUQ6ICAgICByZXR1cm4g
IjEiOwogICAgIGNhc2UgQ09MT1JfR1JFRU46ICAgcmV0dXJuICIyIjsKICAgICBjYXNlIENPTE9S
X1lFTExPVzogIHJldHVybiAiMyI7Ci0gICAgZGVmYXVsdDogICAgICAgICAgICByZXR1cm4gTlVM
TDsKLSAgfTsKKyAgICBkZWZhdWx0OgorICAgICAgcmV0dXJuIG51bGxwdHI7CisgIH0KIH0KIAog
I2VuZGlmICAvLyBHVEVTVF9PU19XSU5ET1dTICYmICFHVEVTVF9PU19XSU5ET1dTX01PQklMRQog
Ci0vLyBSZXR1cm5zIHRydWUgaWZmIEdvb2dsZSBUZXN0IHNob3VsZCB1c2UgY29sb3JzIGluIHRo
ZSBvdXRwdXQuCisvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgR29vZ2xlIFRlc3Qgc2hv
dWxkIHVzZSBjb2xvcnMgaW4gdGhlIG91dHB1dC4KIGJvb2wgU2hvdWxkVXNlQ29sb3IoYm9vbCBz
dGRvdXRfaXNfdHR5KSB7CiAgIGNvbnN0IGNoYXIqIGNvbnN0IGd0ZXN0X2NvbG9yID0gR1RFU1Rf
RkxBRyhjb2xvcikuY19zdHIoKTsKIApAQCAtMzAyMSwxOSArMzE4OCwxOCBAQCBib29sIFNob3Vs
ZFVzZUNvbG9yKGJvb2wgc3Rkb3V0X2lzX3R0eSkgewogLy8gY2Fubm90IHNpbXBseSBlbWl0IHNw
ZWNpYWwgY2hhcmFjdGVycyBhbmQgaGF2ZSB0aGUgdGVybWluYWwgY2hhbmdlIGNvbG9ycy4KIC8v
IFRoaXMgcm91dGluZSBtdXN0IGFjdHVhbGx5IGVtaXQgdGhlIGNoYXJhY3RlcnMgcmF0aGVyIHRo
YW4gcmV0dXJuIGEgc3RyaW5nCiAvLyB0aGF0IHdvdWxkIGJlIGNvbG9yZWQgd2hlbiBwcmludGVk
LCBhcyBjYW4gYmUgZG9uZSBvbiBMaW51eC4KLXN0YXRpYyB2b2lkIENvbG9yZWRQcmludGYoR1Rl
c3RDb2xvciBjb2xvciwgY29uc3QgY2hhciogZm10LCAuLi4pIHsKK3ZvaWQgQ29sb3JlZFByaW50
ZihHVGVzdENvbG9yIGNvbG9yLCBjb25zdCBjaGFyKiBmbXQsIC4uLikgewogICB2YV9saXN0IGFy
Z3M7CiAgIHZhX3N0YXJ0KGFyZ3MsIGZtdCk7CiAKLSNpZiBHVEVTVF9PU19XSU5ET1dTX01PQklM
RSB8fCBHVEVTVF9PU19TWU1CSUFOIHx8IEdURVNUX09TX1pPUyB8fCBcCi0gICAgR1RFU1RfT1Nf
SU9TIHx8IEdURVNUX09TX1dJTkRPV1NfUEhPTkUgfHwgR1RFU1RfT1NfV0lORE9XU19SVAorI2lm
IEdURVNUX09TX1dJTkRPV1NfTU9CSUxFIHx8IEdURVNUX09TX1pPUyB8fCBHVEVTVF9PU19JT1Mg
fHwgXAorICAgIEdURVNUX09TX1dJTkRPV1NfUEhPTkUgfHwgR1RFU1RfT1NfV0lORE9XU19SVCB8
fCBkZWZpbmVkKEVTUF9QTEFURk9STSkKICAgY29uc3QgYm9vbCB1c2VfY29sb3IgPSBBbHdheXNG
YWxzZSgpOwogI2Vsc2UKICAgc3RhdGljIGNvbnN0IGJvb2wgaW5fY29sb3JfbW9kZSA9CiAgICAg
ICBTaG91bGRVc2VDb2xvcihwb3NpeDo6SXNBVFRZKHBvc2l4OjpGaWxlTm8oc3Rkb3V0KSkgIT0g
MCk7CiAgIGNvbnN0IGJvb2wgdXNlX2NvbG9yID0gaW5fY29sb3JfbW9kZSAmJiAoY29sb3IgIT0g
Q09MT1JfREVGQVVMVCk7Ci0jZW5kaWYgIC8vIEdURVNUX09TX1dJTkRPV1NfTU9CSUxFIHx8IEdU
RVNUX09TX1NZTUJJQU4gfHwgR1RFU1RfT1NfWk9TCi0gIC8vIFRoZSAnIT0gMCcgY29tcGFyaXNv
biBpcyBuZWNlc3NhcnkgdG8gc2F0aXNmeSBNU1ZDIDcuMS4KKyNlbmRpZiAgLy8gR1RFU1RfT1Nf
V0lORE9XU19NT0JJTEUgfHwgR1RFU1RfT1NfWk9TCiAKICAgaWYgKCF1c2VfY29sb3IpIHsKICAg
ICB2cHJpbnRmKGZtdCwgYXJncyk7CkBAIC0zMDc5LDE0ICszMjQ1LDEzIEBAIHN0YXRpYyB2b2lk
IFByaW50RnVsbFRlc3RDb21tZW50SWZQcmVzZW50KGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2luZm8p
IHsKICAgY29uc3QgY2hhciogY29uc3QgdHlwZV9wYXJhbSA9IHRlc3RfaW5mby50eXBlX3BhcmFt
KCk7CiAgIGNvbnN0IGNoYXIqIGNvbnN0IHZhbHVlX3BhcmFtID0gdGVzdF9pbmZvLnZhbHVlX3Bh
cmFtKCk7CiAKLSAgaWYgKHR5cGVfcGFyYW0gIT0gTlVMTCB8fCB2YWx1ZV9wYXJhbSAhPSBOVUxM
KSB7CisgIGlmICh0eXBlX3BhcmFtICE9IG51bGxwdHIgfHwgdmFsdWVfcGFyYW0gIT0gbnVsbHB0
cikgewogICAgIHByaW50ZigiLCB3aGVyZSAiKTsKLSAgICBpZiAodHlwZV9wYXJhbSAhPSBOVUxM
KSB7CisgICAgaWYgKHR5cGVfcGFyYW0gIT0gbnVsbHB0cikgewogICAgICAgcHJpbnRmKCIlcyA9
ICVzIiwga1R5cGVQYXJhbUxhYmVsLCB0eXBlX3BhcmFtKTsKLSAgICAgIGlmICh2YWx1ZV9wYXJh
bSAhPSBOVUxMKQotICAgICAgICBwcmludGYoIiBhbmQgIik7CisgICAgICBpZiAodmFsdWVfcGFy
YW0gIT0gbnVsbHB0cikgcHJpbnRmKCIgYW5kICIpOwogICAgIH0KLSAgICBpZiAodmFsdWVfcGFy
YW0gIT0gTlVMTCkgeworICAgIGlmICh2YWx1ZV9wYXJhbSAhPSBudWxscHRyKSB7CiAgICAgICBw
cmludGYoIiVzID0gJXMiLCBrVmFsdWVQYXJhbUxhYmVsLCB2YWx1ZV9wYXJhbSk7CiAgICAgfQog
ICB9CkBAIC0zMDk4LDI3ICszMjYzLDQwIEBAIHN0YXRpYyB2b2lkIFByaW50RnVsbFRlc3RDb21t
ZW50SWZQcmVzZW50KGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2luZm8pIHsKIGNsYXNzIFByZXR0eVVu
aXRUZXN0UmVzdWx0UHJpbnRlciA6IHB1YmxpYyBUZXN0RXZlbnRMaXN0ZW5lciB7CiAgcHVibGlj
OgogICBQcmV0dHlVbml0VGVzdFJlc3VsdFByaW50ZXIoKSB7fQotICBzdGF0aWMgdm9pZCBQcmlu
dFRlc3ROYW1lKGNvbnN0IGNoYXIgKiB0ZXN0X2Nhc2UsIGNvbnN0IGNoYXIgKiB0ZXN0KSB7Ci0g
ICAgcHJpbnRmKCIlcy4lcyIsIHRlc3RfY2FzZSwgdGVzdCk7CisgIHN0YXRpYyB2b2lkIFByaW50
VGVzdE5hbWUoY29uc3QgY2hhciogdGVzdF9zdWl0ZSwgY29uc3QgY2hhciogdGVzdCkgeworICAg
IHByaW50ZigiJXMuJXMiLCB0ZXN0X3N1aXRlLCB0ZXN0KTsKICAgfQogCiAgIC8vIFRoZSBmb2xs
b3dpbmcgbWV0aG9kcyBvdmVycmlkZSB3aGF0J3MgaW4gdGhlIFRlc3RFdmVudExpc3RlbmVyIGNs
YXNzLgotICB2aXJ0dWFsIHZvaWQgT25UZXN0UHJvZ3JhbVN0YXJ0KGNvbnN0IFVuaXRUZXN0JiAv
KnVuaXRfdGVzdCovKSB7fQotICB2aXJ0dWFsIHZvaWQgT25UZXN0SXRlcmF0aW9uU3RhcnQoY29u
c3QgVW5pdFRlc3QmIHVuaXRfdGVzdCwgaW50IGl0ZXJhdGlvbik7Ci0gIHZpcnR1YWwgdm9pZCBP
bkVudmlyb25tZW50c1NldFVwU3RhcnQoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCk7Ci0gIHZp
cnR1YWwgdm9pZCBPbkVudmlyb25tZW50c1NldFVwRW5kKGNvbnN0IFVuaXRUZXN0JiAvKnVuaXRf
dGVzdCovKSB7fQotICB2aXJ0dWFsIHZvaWQgT25UZXN0Q2FzZVN0YXJ0KGNvbnN0IFRlc3RDYXNl
JiB0ZXN0X2Nhc2UpOwotICB2aXJ0dWFsIHZvaWQgT25UZXN0U3RhcnQoY29uc3QgVGVzdEluZm8m
IHRlc3RfaW5mbyk7Ci0gIHZpcnR1YWwgdm9pZCBPblRlc3RQYXJ0UmVzdWx0KGNvbnN0IFRlc3RQ
YXJ0UmVzdWx0JiByZXN1bHQpOwotICB2aXJ0dWFsIHZvaWQgT25UZXN0RW5kKGNvbnN0IFRlc3RJ
bmZvJiB0ZXN0X2luZm8pOwotICB2aXJ0dWFsIHZvaWQgT25UZXN0Q2FzZUVuZChjb25zdCBUZXN0
Q2FzZSYgdGVzdF9jYXNlKTsKLSAgdmlydHVhbCB2b2lkIE9uRW52aXJvbm1lbnRzVGVhckRvd25T
dGFydChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0KTsKLSAgdmlydHVhbCB2b2lkIE9uRW52aXJv
bm1lbnRzVGVhckRvd25FbmQoY29uc3QgVW5pdFRlc3QmIC8qdW5pdF90ZXN0Ki8pIHt9Ci0gIHZp
cnR1YWwgdm9pZCBPblRlc3RJdGVyYXRpb25FbmQoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCwg
aW50IGl0ZXJhdGlvbik7Ci0gIHZpcnR1YWwgdm9pZCBPblRlc3RQcm9ncmFtRW5kKGNvbnN0IFVu
aXRUZXN0JiAvKnVuaXRfdGVzdCovKSB7fQorICB2b2lkIE9uVGVzdFByb2dyYW1TdGFydChjb25z
dCBVbml0VGVzdCYgLyp1bml0X3Rlc3QqLykgb3ZlcnJpZGUge30KKyAgdm9pZCBPblRlc3RJdGVy
YXRpb25TdGFydChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0LCBpbnQgaXRlcmF0aW9uKSBvdmVy
cmlkZTsKKyAgdm9pZCBPbkVudmlyb25tZW50c1NldFVwU3RhcnQoY29uc3QgVW5pdFRlc3QmIHVu
aXRfdGVzdCkgb3ZlcnJpZGU7CisgIHZvaWQgT25FbnZpcm9ubWVudHNTZXRVcEVuZChjb25zdCBV
bml0VGVzdCYgLyp1bml0X3Rlc3QqLykgb3ZlcnJpZGUge30KKyNpZm5kZWYgR1RFU1RfUkVNT1ZF
X0xFR0FDWV9URVNUX0NBU0VBUElfCisgIHZvaWQgT25UZXN0Q2FzZVN0YXJ0KGNvbnN0IFRlc3RD
YXNlJiB0ZXN0X2Nhc2UpIG92ZXJyaWRlOworI2Vsc2UKKyAgdm9pZCBPblRlc3RTdWl0ZVN0YXJ0
KGNvbnN0IFRlc3RTdWl0ZSYgdGVzdF9zdWl0ZSkgb3ZlcnJpZGU7CisjZW5kaWYgIC8vIE9uVGVz
dENhc2VTdGFydAorCisgIHZvaWQgT25UZXN0U3RhcnQoY29uc3QgVGVzdEluZm8mIHRlc3RfaW5m
bykgb3ZlcnJpZGU7CisKKyAgdm9pZCBPblRlc3RQYXJ0UmVzdWx0KGNvbnN0IFRlc3RQYXJ0UmVz
dWx0JiByZXN1bHQpIG92ZXJyaWRlOworICB2b2lkIE9uVGVzdEVuZChjb25zdCBUZXN0SW5mbyYg
dGVzdF9pbmZvKSBvdmVycmlkZTsKKyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NB
U0VBUElfCisgIHZvaWQgT25UZXN0Q2FzZUVuZChjb25zdCBUZXN0Q2FzZSYgdGVzdF9jYXNlKSBv
dmVycmlkZTsKKyNlbHNlCisgIHZvaWQgT25UZXN0U3VpdGVFbmQoY29uc3QgVGVzdFN1aXRlJiB0
ZXN0X3N1aXRlKSBvdmVycmlkZTsKKyNlbmRpZiAgLy8gR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNU
X0NBU0VBUElfCisKKyAgdm9pZCBPbkVudmlyb25tZW50c1RlYXJEb3duU3RhcnQoY29uc3QgVW5p
dFRlc3QmIHVuaXRfdGVzdCkgb3ZlcnJpZGU7CisgIHZvaWQgT25FbnZpcm9ubWVudHNUZWFyRG93
bkVuZChjb25zdCBVbml0VGVzdCYgLyp1bml0X3Rlc3QqLykgb3ZlcnJpZGUge30KKyAgdm9pZCBP
blRlc3RJdGVyYXRpb25FbmQoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCwgaW50IGl0ZXJhdGlv
bikgb3ZlcnJpZGU7CisgIHZvaWQgT25UZXN0UHJvZ3JhbUVuZChjb25zdCBVbml0VGVzdCYgLyp1
bml0X3Rlc3QqLykgb3ZlcnJpZGUge30KIAogIHByaXZhdGU6CiAgIHN0YXRpYyB2b2lkIFByaW50
RmFpbGVkVGVzdHMoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCk7CisgIHN0YXRpYyB2b2lkIFBy
aW50RmFpbGVkVGVzdFN1aXRlcyhjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0KTsKKyAgc3RhdGlj
IHZvaWQgUHJpbnRTa2lwcGVkVGVzdHMoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCk7CiB9Owog
CiAgIC8vIEZpcmVkIGJlZm9yZSBlYWNoIGl0ZXJhdGlvbiBvZiB0ZXN0cyBzdGFydHMuCkBAIC0z
MTM3LDcgKzMzMTUsNyBAQCB2b2lkIFByZXR0eVVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6T25UZXN0
SXRlcmF0aW9uU3RhcnQoCiAgIH0KIAogICBpZiAoaW50ZXJuYWw6OlNob3VsZFNoYXJkKGtUZXN0
VG90YWxTaGFyZHMsIGtUZXN0U2hhcmRJbmRleCwgZmFsc2UpKSB7Ci0gICAgY29uc3QgSW50MzIg
c2hhcmRfaW5kZXggPSBJbnQzMkZyb21FbnZPckRpZShrVGVzdFNoYXJkSW5kZXgsIC0xKTsKKyAg
ICBjb25zdCBpbnQzMl90IHNoYXJkX2luZGV4ID0gSW50MzJGcm9tRW52T3JEaWUoa1Rlc3RTaGFy
ZEluZGV4LCAtMSk7CiAgICAgQ29sb3JlZFByaW50ZihDT0xPUl9ZRUxMT1csCiAgICAgICAgICAg
ICAgICAgICAiTm90ZTogVGhpcyBpcyB0ZXN0IHNoYXJkICVkIG9mICVzLlxuIiwKICAgICAgICAg
ICAgICAgICAgIHN0YXRpY19jYXN0PGludD4oc2hhcmRfaW5kZXgpICsgMSwKQEAgLTMxNTMsNyAr
MzMzMSw3IEBAIHZvaWQgUHJldHR5VW5pdFRlc3RSZXN1bHRQcmludGVyOjpPblRlc3RJdGVyYXRp
b25TdGFydCgKICAgQ29sb3JlZFByaW50ZihDT0xPUl9HUkVFTiwgICJbPT09PT09PT09PV0gIik7
CiAgIHByaW50ZigiUnVubmluZyAlcyBmcm9tICVzLlxuIiwKICAgICAgICAgIEZvcm1hdFRlc3RD
b3VudCh1bml0X3Rlc3QudGVzdF90b19ydW5fY291bnQoKSkuY19zdHIoKSwKLSAgICAgICAgIEZv
cm1hdFRlc3RDYXNlQ291bnQodW5pdF90ZXN0LnRlc3RfY2FzZV90b19ydW5fY291bnQoKSkuY19z
dHIoKSk7CisgICAgICAgICBGb3JtYXRUZXN0U3VpdGVDb3VudCh1bml0X3Rlc3QudGVzdF9zdWl0
ZV90b19ydW5fY291bnQoKSkuY19zdHIoKSk7CiAgIGZmbHVzaChzdGRvdXQpOwogfQogCkBAIC0z
MTY0LDIyICszMzQyLDM4IEBAIHZvaWQgUHJldHR5VW5pdFRlc3RSZXN1bHRQcmludGVyOjpPbkVu
dmlyb25tZW50c1NldFVwU3RhcnQoCiAgIGZmbHVzaChzdGRvdXQpOwogfQogCisjaWZuZGVmIEdU
RVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwogdm9pZCBQcmV0dHlVbml0VGVzdFJlc3Vs
dFByaW50ZXI6Ok9uVGVzdENhc2VTdGFydChjb25zdCBUZXN0Q2FzZSYgdGVzdF9jYXNlKSB7CiAg
IGNvbnN0IHN0ZDo6c3RyaW5nIGNvdW50cyA9CiAgICAgICBGb3JtYXRDb3VudGFibGVOb3VuKHRl
c3RfY2FzZS50ZXN0X3RvX3J1bl9jb3VudCgpLCAidGVzdCIsICJ0ZXN0cyIpOwogICBDb2xvcmVk
UHJpbnRmKENPTE9SX0dSRUVOLCAiWy0tLS0tLS0tLS1dICIpOwogICBwcmludGYoIiVzIGZyb20g
JXMiLCBjb3VudHMuY19zdHIoKSwgdGVzdF9jYXNlLm5hbWUoKSk7Ci0gIGlmICh0ZXN0X2Nhc2Uu
dHlwZV9wYXJhbSgpID09IE5VTEwpIHsKKyAgaWYgKHRlc3RfY2FzZS50eXBlX3BhcmFtKCkgPT0g
bnVsbHB0cikgewogICAgIHByaW50ZigiXG4iKTsKICAgfSBlbHNlIHsKICAgICBwcmludGYoIiwg
d2hlcmUgJXMgPSAlc1xuIiwga1R5cGVQYXJhbUxhYmVsLCB0ZXN0X2Nhc2UudHlwZV9wYXJhbSgp
KTsKICAgfQogICBmZmx1c2goc3Rkb3V0KTsKIH0KKyNlbHNlCit2b2lkIFByZXR0eVVuaXRUZXN0
UmVzdWx0UHJpbnRlcjo6T25UZXN0U3VpdGVTdGFydCgKKyAgICBjb25zdCBUZXN0U3VpdGUmIHRl
c3Rfc3VpdGUpIHsKKyAgY29uc3Qgc3RkOjpzdHJpbmcgY291bnRzID0KKyAgICAgIEZvcm1hdENv
dW50YWJsZU5vdW4odGVzdF9zdWl0ZS50ZXN0X3RvX3J1bl9jb3VudCgpLCAidGVzdCIsICJ0ZXN0
cyIpOworICBDb2xvcmVkUHJpbnRmKENPTE9SX0dSRUVOLCAiWy0tLS0tLS0tLS1dICIpOworICBw
cmludGYoIiVzIGZyb20gJXMiLCBjb3VudHMuY19zdHIoKSwgdGVzdF9zdWl0ZS5uYW1lKCkpOwor
ICBpZiAodGVzdF9zdWl0ZS50eXBlX3BhcmFtKCkgPT0gbnVsbHB0cikgeworICAgIHByaW50Zigi
XG4iKTsKKyAgfSBlbHNlIHsKKyAgICBwcmludGYoIiwgd2hlcmUgJXMgPSAlc1xuIiwga1R5cGVQ
YXJhbUxhYmVsLCB0ZXN0X3N1aXRlLnR5cGVfcGFyYW0oKSk7CisgIH0KKyAgZmZsdXNoKHN0ZG91
dCk7Cit9CisjZW5kaWYgIC8vIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwogCiB2
b2lkIFByZXR0eVVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6T25UZXN0U3RhcnQoY29uc3QgVGVzdElu
Zm8mIHRlc3RfaW5mbykgewogICBDb2xvcmVkUHJpbnRmKENPTE9SX0dSRUVOLCAgIlsgUlVOICAg
ICAgXSAiKTsKLSAgUHJpbnRUZXN0TmFtZSh0ZXN0X2luZm8udGVzdF9jYXNlX25hbWUoKSwgdGVz
dF9pbmZvLm5hbWUoKSk7CisgIFByaW50VGVzdE5hbWUodGVzdF9pbmZvLnRlc3Rfc3VpdGVfbmFt
ZSgpLCB0ZXN0X2luZm8ubmFtZSgpKTsKICAgcHJpbnRmKCJcbiIpOwogICBmZmx1c2goc3Rkb3V0
KTsKIH0KQEAgLTMxODcsMjIgKzMzODEsMjcgQEAgdm9pZCBQcmV0dHlVbml0VGVzdFJlc3VsdFBy
aW50ZXI6Ok9uVGVzdFN0YXJ0KGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2luZm8pIHsKIC8vIENhbGxl
ZCBhZnRlciBhbiBhc3NlcnRpb24gZmFpbHVyZS4KIHZvaWQgUHJldHR5VW5pdFRlc3RSZXN1bHRQ
cmludGVyOjpPblRlc3RQYXJ0UmVzdWx0KAogICAgIGNvbnN0IFRlc3RQYXJ0UmVzdWx0JiByZXN1
bHQpIHsKLSAgLy8gSWYgdGhlIHRlc3QgcGFydCBzdWNjZWVkZWQsIHdlIGRvbid0IG5lZWQgdG8g
ZG8gYW55dGhpbmcuCi0gIGlmIChyZXN1bHQudHlwZSgpID09IFRlc3RQYXJ0UmVzdWx0OjprU3Vj
Y2VzcykKLSAgICByZXR1cm47Ci0KLSAgLy8gUHJpbnQgZmFpbHVyZSBtZXNzYWdlIGZyb20gdGhl
IGFzc2VydGlvbiAoZS5nLiBleHBlY3RlZCB0aGlzIGFuZCBnb3QgdGhhdCkuCi0gIFByaW50VGVz
dFBhcnRSZXN1bHQocmVzdWx0KTsKLSAgZmZsdXNoKHN0ZG91dCk7CisgIHN3aXRjaCAocmVzdWx0
LnR5cGUoKSkgeworICAgIC8vIElmIHRoZSB0ZXN0IHBhcnQgc3VjY2VlZGVkLCB3ZSBkb24ndCBu
ZWVkIHRvIGRvIGFueXRoaW5nLgorICAgIGNhc2UgVGVzdFBhcnRSZXN1bHQ6OmtTdWNjZXNzOgor
ICAgICAgcmV0dXJuOworICAgIGRlZmF1bHQ6CisgICAgICAvLyBQcmludCBmYWlsdXJlIG1lc3Nh
Z2UgZnJvbSB0aGUgYXNzZXJ0aW9uCisgICAgICAvLyAoZS5nLiBleHBlY3RlZCB0aGlzIGFuZCBn
b3QgdGhhdCkuCisgICAgICBQcmludFRlc3RQYXJ0UmVzdWx0KHJlc3VsdCk7CisgICAgICBmZmx1
c2goc3Rkb3V0KTsKKyAgfQogfQogCiB2b2lkIFByZXR0eVVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6
T25UZXN0RW5kKGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2luZm8pIHsKICAgaWYgKHRlc3RfaW5mby5y
ZXN1bHQoKS0+UGFzc2VkKCkpIHsKICAgICBDb2xvcmVkUHJpbnRmKENPTE9SX0dSRUVOLCAiWyAg
ICAgICBPSyBdICIpOworICB9IGVsc2UgaWYgKHRlc3RfaW5mby5yZXN1bHQoKS0+U2tpcHBlZCgp
KSB7CisgICAgQ29sb3JlZFByaW50ZihDT0xPUl9HUkVFTiwgIlsgIFNLSVBQRUQgXSAiKTsKICAg
fSBlbHNlIHsKICAgICBDb2xvcmVkUHJpbnRmKENPTE9SX1JFRCwgIlsgIEZBSUxFRCAgXSAiKTsK
ICAgfQotICBQcmludFRlc3ROYW1lKHRlc3RfaW5mby50ZXN0X2Nhc2VfbmFtZSgpLCB0ZXN0X2lu
Zm8ubmFtZSgpKTsKKyAgUHJpbnRUZXN0TmFtZSh0ZXN0X2luZm8udGVzdF9zdWl0ZV9uYW1lKCks
IHRlc3RfaW5mby5uYW1lKCkpOwogICBpZiAodGVzdF9pbmZvLnJlc3VsdCgpLT5GYWlsZWQoKSkK
ICAgICBQcmludEZ1bGxUZXN0Q29tbWVudElmUHJlc2VudCh0ZXN0X2luZm8pOwogCkBAIC0zMjE1
LDE3ICszNDE0LDI5IEBAIHZvaWQgUHJldHR5VW5pdFRlc3RSZXN1bHRQcmludGVyOjpPblRlc3RF
bmQoY29uc3QgVGVzdEluZm8mIHRlc3RfaW5mbykgewogICBmZmx1c2goc3Rkb3V0KTsKIH0KIAor
I2lmbmRlZiBHVEVTVF9SRU1PVkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KIHZvaWQgUHJldHR5VW5p
dFRlc3RSZXN1bHRQcmludGVyOjpPblRlc3RDYXNlRW5kKGNvbnN0IFRlc3RDYXNlJiB0ZXN0X2Nh
c2UpIHsKICAgaWYgKCFHVEVTVF9GTEFHKHByaW50X3RpbWUpKSByZXR1cm47CiAKICAgY29uc3Qg
c3RkOjpzdHJpbmcgY291bnRzID0KICAgICAgIEZvcm1hdENvdW50YWJsZU5vdW4odGVzdF9jYXNl
LnRlc3RfdG9fcnVuX2NvdW50KCksICJ0ZXN0IiwgInRlc3RzIik7CiAgIENvbG9yZWRQcmludGYo
Q09MT1JfR1JFRU4sICJbLS0tLS0tLS0tLV0gIik7Ci0gIHByaW50ZigiJXMgZnJvbSAlcyAoJXMg
bXMgdG90YWwpXG5cbiIsCi0gICAgICAgICBjb3VudHMuY19zdHIoKSwgdGVzdF9jYXNlLm5hbWUo
KSwKKyAgcHJpbnRmKCIlcyBmcm9tICVzICglcyBtcyB0b3RhbClcblxuIiwgY291bnRzLmNfc3Ry
KCksIHRlc3RfY2FzZS5uYW1lKCksCiAgICAgICAgICBpbnRlcm5hbDo6U3RyZWFtYWJsZVRvU3Ry
aW5nKHRlc3RfY2FzZS5lbGFwc2VkX3RpbWUoKSkuY19zdHIoKSk7CiAgIGZmbHVzaChzdGRvdXQp
OwogfQorI2Vsc2UKK3ZvaWQgUHJldHR5VW5pdFRlc3RSZXN1bHRQcmludGVyOjpPblRlc3RTdWl0
ZUVuZChjb25zdCBUZXN0U3VpdGUmIHRlc3Rfc3VpdGUpIHsKKyAgaWYgKCFHVEVTVF9GTEFHKHBy
aW50X3RpbWUpKSByZXR1cm47CisKKyAgY29uc3Qgc3RkOjpzdHJpbmcgY291bnRzID0KKyAgICAg
IEZvcm1hdENvdW50YWJsZU5vdW4odGVzdF9zdWl0ZS50ZXN0X3RvX3J1bl9jb3VudCgpLCAidGVz
dCIsICJ0ZXN0cyIpOworICBDb2xvcmVkUHJpbnRmKENPTE9SX0dSRUVOLCAiWy0tLS0tLS0tLS1d
ICIpOworICBwcmludGYoIiVzIGZyb20gJXMgKCVzIG1zIHRvdGFsKVxuXG4iLCBjb3VudHMuY19z
dHIoKSwgdGVzdF9zdWl0ZS5uYW1lKCksCisgICAgICAgICBpbnRlcm5hbDo6U3RyZWFtYWJsZVRv
U3RyaW5nKHRlc3Rfc3VpdGUuZWxhcHNlZF90aW1lKCkpLmNfc3RyKCkpOworICBmZmx1c2goc3Rk
b3V0KTsKK30KKyNlbmRpZiAgLy8gR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUElfCiAK
IHZvaWQgUHJldHR5VW5pdFRlc3RSZXN1bHRQcmludGVyOjpPbkVudmlyb25tZW50c1RlYXJEb3du
U3RhcnQoCiAgICAgY29uc3QgVW5pdFRlc3QmIC8qdW5pdF90ZXN0Ki8pIHsKQEAgLTMyMzcsMjYg
KzM0NDgsNzMgQEAgdm9pZCBQcmV0dHlVbml0VGVzdFJlc3VsdFByaW50ZXI6Ok9uRW52aXJvbm1l
bnRzVGVhckRvd25TdGFydCgKIC8vIEludGVybmFsIGhlbHBlciBmb3IgcHJpbnRpbmcgdGhlIGxp
c3Qgb2YgZmFpbGVkIHRlc3RzLgogdm9pZCBQcmV0dHlVbml0VGVzdFJlc3VsdFByaW50ZXI6OlBy
aW50RmFpbGVkVGVzdHMoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCkgewogICBjb25zdCBpbnQg
ZmFpbGVkX3Rlc3RfY291bnQgPSB1bml0X3Rlc3QuZmFpbGVkX3Rlc3RfY291bnQoKTsKLSAgaWYg
KGZhaWxlZF90ZXN0X2NvdW50ID09IDApIHsKLSAgICByZXR1cm47Ci0gIH0KKyAgQ29sb3JlZFBy
aW50ZihDT0xPUl9SRUQsICAiWyAgRkFJTEVEICBdICIpOworICBwcmludGYoIiVzLCBsaXN0ZWQg
YmVsb3c6XG4iLCBGb3JtYXRUZXN0Q291bnQoZmFpbGVkX3Rlc3RfY291bnQpLmNfc3RyKCkpOwog
Ci0gIGZvciAoaW50IGkgPSAwOyBpIDwgdW5pdF90ZXN0LnRvdGFsX3Rlc3RfY2FzZV9jb3VudCgp
OyArK2kpIHsKLSAgICBjb25zdCBUZXN0Q2FzZSYgdGVzdF9jYXNlID0gKnVuaXRfdGVzdC5HZXRU
ZXN0Q2FzZShpKTsKLSAgICBpZiAoIXRlc3RfY2FzZS5zaG91bGRfcnVuKCkgfHwgKHRlc3RfY2Fz
ZS5mYWlsZWRfdGVzdF9jb3VudCgpID09IDApKSB7CisgIGZvciAoaW50IGkgPSAwOyBpIDwgdW5p
dF90ZXN0LnRvdGFsX3Rlc3Rfc3VpdGVfY291bnQoKTsgKytpKSB7CisgICAgY29uc3QgVGVzdFN1
aXRlJiB0ZXN0X3N1aXRlID0gKnVuaXRfdGVzdC5HZXRUZXN0U3VpdGUoaSk7CisgICAgaWYgKCF0
ZXN0X3N1aXRlLnNob3VsZF9ydW4oKSB8fCAodGVzdF9zdWl0ZS5mYWlsZWRfdGVzdF9jb3VudCgp
ID09IDApKSB7CiAgICAgICBjb250aW51ZTsKICAgICB9Ci0gICAgZm9yIChpbnQgaiA9IDA7IGog
PCB0ZXN0X2Nhc2UudG90YWxfdGVzdF9jb3VudCgpOyArK2opIHsKLSAgICAgIGNvbnN0IFRlc3RJ
bmZvJiB0ZXN0X2luZm8gPSAqdGVzdF9jYXNlLkdldFRlc3RJbmZvKGopOwotICAgICAgaWYgKCF0
ZXN0X2luZm8uc2hvdWxkX3J1bigpIHx8IHRlc3RfaW5mby5yZXN1bHQoKS0+UGFzc2VkKCkpIHsK
KyAgICBmb3IgKGludCBqID0gMDsgaiA8IHRlc3Rfc3VpdGUudG90YWxfdGVzdF9jb3VudCgpOyAr
K2opIHsKKyAgICAgIGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2luZm8gPSAqdGVzdF9zdWl0ZS5HZXRU
ZXN0SW5mbyhqKTsKKyAgICAgIGlmICghdGVzdF9pbmZvLnNob3VsZF9ydW4oKSB8fCAhdGVzdF9p
bmZvLnJlc3VsdCgpLT5GYWlsZWQoKSkgewogICAgICAgICBjb250aW51ZTsKICAgICAgIH0KICAg
ICAgIENvbG9yZWRQcmludGYoQ09MT1JfUkVELCAiWyAgRkFJTEVEICBdICIpOwotICAgICAgcHJp
bnRmKCIlcy4lcyIsIHRlc3RfY2FzZS5uYW1lKCksIHRlc3RfaW5mby5uYW1lKCkpOworICAgICAg
cHJpbnRmKCIlcy4lcyIsIHRlc3Rfc3VpdGUubmFtZSgpLCB0ZXN0X2luZm8ubmFtZSgpKTsKICAg
ICAgIFByaW50RnVsbFRlc3RDb21tZW50SWZQcmVzZW50KHRlc3RfaW5mbyk7CiAgICAgICBwcmlu
dGYoIlxuIik7CiAgICAgfQogICB9CisgIHByaW50ZigiXG4lMmQgRkFJTEVEICVzXG4iLCBmYWls
ZWRfdGVzdF9jb3VudCwKKyAgICAgICAgIGZhaWxlZF90ZXN0X2NvdW50ID09IDEgPyAiVEVTVCIg
OiAiVEVTVFMiKTsKK30KKworLy8gSW50ZXJuYWwgaGVscGVyIGZvciBwcmludGluZyB0aGUgbGlz
dCBvZiB0ZXN0IHN1aXRlIGZhaWx1cmVzIG5vdCBjb3ZlcmVkIGJ5CisvLyBQcmludEZhaWxlZFRl
c3RzLgordm9pZCBQcmV0dHlVbml0VGVzdFJlc3VsdFByaW50ZXI6OlByaW50RmFpbGVkVGVzdFN1
aXRlcygKKyAgICBjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0KSB7CisgIGludCBzdWl0ZV9mYWls
dXJlX2NvdW50ID0gMDsKKyAgZm9yIChpbnQgaSA9IDA7IGkgPCB1bml0X3Rlc3QudG90YWxfdGVz
dF9zdWl0ZV9jb3VudCgpOyArK2kpIHsKKyAgICBjb25zdCBUZXN0U3VpdGUmIHRlc3Rfc3VpdGUg
PSAqdW5pdF90ZXN0LkdldFRlc3RTdWl0ZShpKTsKKyAgICBpZiAoIXRlc3Rfc3VpdGUuc2hvdWxk
X3J1bigpKSB7CisgICAgICBjb250aW51ZTsKKyAgICB9CisgICAgaWYgKHRlc3Rfc3VpdGUuYWRf
aG9jX3Rlc3RfcmVzdWx0KCkuRmFpbGVkKCkpIHsKKyAgICAgIENvbG9yZWRQcmludGYoQ09MT1Jf
UkVELCAiWyAgRkFJTEVEICBdICIpOworICAgICAgcHJpbnRmKCIlczogU2V0VXBUZXN0U3VpdGUg
b3IgVGVhckRvd25UZXN0U3VpdGVcbiIsIHRlc3Rfc3VpdGUubmFtZSgpKTsKKyAgICAgICsrc3Vp
dGVfZmFpbHVyZV9jb3VudDsKKyAgICB9CisgIH0KKyAgaWYgKHN1aXRlX2ZhaWx1cmVfY291bnQg
PiAwKSB7CisgICAgcHJpbnRmKCJcbiUyZCBGQUlMRUQgVEVTVCAlc1xuIiwgc3VpdGVfZmFpbHVy
ZV9jb3VudCwKKyAgICAgICAgICAgc3VpdGVfZmFpbHVyZV9jb3VudCA9PSAxID8gIlNVSVRFIiA6
ICJTVUlURVMiKTsKKyAgfQorfQorCisvLyBJbnRlcm5hbCBoZWxwZXIgZm9yIHByaW50aW5nIHRo
ZSBsaXN0IG9mIHNraXBwZWQgdGVzdHMuCit2b2lkIFByZXR0eVVuaXRUZXN0UmVzdWx0UHJpbnRl
cjo6UHJpbnRTa2lwcGVkVGVzdHMoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCkgeworICBjb25z
dCBpbnQgc2tpcHBlZF90ZXN0X2NvdW50ID0gdW5pdF90ZXN0LnNraXBwZWRfdGVzdF9jb3VudCgp
OworICBpZiAoc2tpcHBlZF90ZXN0X2NvdW50ID09IDApIHsKKyAgICByZXR1cm47CisgIH0KKwor
ICBmb3IgKGludCBpID0gMDsgaSA8IHVuaXRfdGVzdC50b3RhbF90ZXN0X3N1aXRlX2NvdW50KCk7
ICsraSkgeworICAgIGNvbnN0IFRlc3RTdWl0ZSYgdGVzdF9zdWl0ZSA9ICp1bml0X3Rlc3QuR2V0
VGVzdFN1aXRlKGkpOworICAgIGlmICghdGVzdF9zdWl0ZS5zaG91bGRfcnVuKCkgfHwgKHRlc3Rf
c3VpdGUuc2tpcHBlZF90ZXN0X2NvdW50KCkgPT0gMCkpIHsKKyAgICAgIGNvbnRpbnVlOworICAg
IH0KKyAgICBmb3IgKGludCBqID0gMDsgaiA8IHRlc3Rfc3VpdGUudG90YWxfdGVzdF9jb3VudCgp
OyArK2opIHsKKyAgICAgIGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2luZm8gPSAqdGVzdF9zdWl0ZS5H
ZXRUZXN0SW5mbyhqKTsKKyAgICAgIGlmICghdGVzdF9pbmZvLnNob3VsZF9ydW4oKSB8fCAhdGVz
dF9pbmZvLnJlc3VsdCgpLT5Ta2lwcGVkKCkpIHsKKyAgICAgICAgY29udGludWU7CisgICAgICB9
CisgICAgICBDb2xvcmVkUHJpbnRmKENPTE9SX0dSRUVOLCAiWyAgU0tJUFBFRCBdICIpOworICAg
ICAgcHJpbnRmKCIlcy4lcyIsIHRlc3Rfc3VpdGUubmFtZSgpLCB0ZXN0X2luZm8ubmFtZSgpKTsK
KyAgICAgIHByaW50ZigiXG4iKTsKKyAgICB9CisgIH0KIH0KIAogdm9pZCBQcmV0dHlVbml0VGVz
dFJlc3VsdFByaW50ZXI6Ok9uVGVzdEl0ZXJhdGlvbkVuZChjb25zdCBVbml0VGVzdCYgdW5pdF90
ZXN0LApAQCAtMzI2NCw3ICszNTIyLDcgQEAgdm9pZCBQcmV0dHlVbml0VGVzdFJlc3VsdFByaW50
ZXI6Ok9uVGVzdEl0ZXJhdGlvbkVuZChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0LAogICBDb2xv
cmVkUHJpbnRmKENPTE9SX0dSRUVOLCAgIls9PT09PT09PT09XSAiKTsKICAgcHJpbnRmKCIlcyBm
cm9tICVzIHJhbi4iLAogICAgICAgICAgRm9ybWF0VGVzdENvdW50KHVuaXRfdGVzdC50ZXN0X3Rv
X3J1bl9jb3VudCgpKS5jX3N0cigpLAotICAgICAgICAgRm9ybWF0VGVzdENhc2VDb3VudCh1bml0
X3Rlc3QudGVzdF9jYXNlX3RvX3J1bl9jb3VudCgpKS5jX3N0cigpKTsKKyAgICAgICAgIEZvcm1h
dFRlc3RTdWl0ZUNvdW50KHVuaXRfdGVzdC50ZXN0X3N1aXRlX3RvX3J1bl9jb3VudCgpKS5jX3N0
cigpKTsKICAgaWYgKEdURVNUX0ZMQUcocHJpbnRfdGltZSkpIHsKICAgICBwcmludGYoIiAoJXMg
bXMgdG90YWwpIiwKICAgICAgICAgICAgaW50ZXJuYWw6OlN0cmVhbWFibGVUb1N0cmluZyh1bml0
X3Rlc3QuZWxhcHNlZF90aW1lKCkpLmNfc3RyKCkpOwpAQCAtMzI3MywxOSArMzUzMSwyMSBAQCB2
b2lkIFByZXR0eVVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6T25UZXN0SXRlcmF0aW9uRW5kKGNvbnN0
IFVuaXRUZXN0JiB1bml0X3Rlc3QsCiAgIENvbG9yZWRQcmludGYoQ09MT1JfR1JFRU4sICAiWyAg
UEFTU0VEICBdICIpOwogICBwcmludGYoIiVzLlxuIiwgRm9ybWF0VGVzdENvdW50KHVuaXRfdGVz
dC5zdWNjZXNzZnVsX3Rlc3RfY291bnQoKSkuY19zdHIoKSk7CiAKLSAgaW50IG51bV9mYWlsdXJl
cyA9IHVuaXRfdGVzdC5mYWlsZWRfdGVzdF9jb3VudCgpOworICBjb25zdCBpbnQgc2tpcHBlZF90
ZXN0X2NvdW50ID0gdW5pdF90ZXN0LnNraXBwZWRfdGVzdF9jb3VudCgpOworICBpZiAoc2tpcHBl
ZF90ZXN0X2NvdW50ID4gMCkgeworICAgIENvbG9yZWRQcmludGYoQ09MT1JfR1JFRU4sICJbICBT
S0lQUEVEIF0gIik7CisgICAgcHJpbnRmKCIlcywgbGlzdGVkIGJlbG93OlxuIiwgRm9ybWF0VGVz
dENvdW50KHNraXBwZWRfdGVzdF9jb3VudCkuY19zdHIoKSk7CisgICAgUHJpbnRTa2lwcGVkVGVz
dHModW5pdF90ZXN0KTsKKyAgfQorCiAgIGlmICghdW5pdF90ZXN0LlBhc3NlZCgpKSB7Ci0gICAg
Y29uc3QgaW50IGZhaWxlZF90ZXN0X2NvdW50ID0gdW5pdF90ZXN0LmZhaWxlZF90ZXN0X2NvdW50
KCk7Ci0gICAgQ29sb3JlZFByaW50ZihDT0xPUl9SRUQsICAiWyAgRkFJTEVEICBdICIpOwotICAg
IHByaW50ZigiJXMsIGxpc3RlZCBiZWxvdzpcbiIsIEZvcm1hdFRlc3RDb3VudChmYWlsZWRfdGVz
dF9jb3VudCkuY19zdHIoKSk7CiAgICAgUHJpbnRGYWlsZWRUZXN0cyh1bml0X3Rlc3QpOwotICAg
IHByaW50ZigiXG4lMmQgRkFJTEVEICVzXG4iLCBudW1fZmFpbHVyZXMsCi0gICAgICAgICAgICAg
ICAgICAgICAgICBudW1fZmFpbHVyZXMgPT0gMSA/ICJURVNUIiA6ICJURVNUUyIpOworICAgIFBy
aW50RmFpbGVkVGVzdFN1aXRlcyh1bml0X3Rlc3QpOwogICB9CiAKICAgaW50IG51bV9kaXNhYmxl
ZCA9IHVuaXRfdGVzdC5yZXBvcnRhYmxlX2Rpc2FibGVkX3Rlc3RfY291bnQoKTsKICAgaWYgKG51
bV9kaXNhYmxlZCAmJiAhR1RFU1RfRkxBRyhhbHNvX3J1bl9kaXNhYmxlZF90ZXN0cykpIHsKLSAg
ICBpZiAoIW51bV9mYWlsdXJlcykgeworICAgIGlmICh1bml0X3Rlc3QuUGFzc2VkKCkpIHsKICAg
ICAgIHByaW50ZigiXG4iKTsgIC8vIEFkZCBhIHNwYWNlciBpZiBubyBGQUlMVVJFIGJhbm5lciBp
cyBkaXNwbGF5ZWQuCiAgICAgfQogICAgIENvbG9yZWRQcmludGYoQ09MT1JfWUVMTE9XLApAQCAt
MzMwNSw3ICszNTY1LDcgQEAgdm9pZCBQcmV0dHlVbml0VGVzdFJlc3VsdFByaW50ZXI6Ok9uVGVz
dEl0ZXJhdGlvbkVuZChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0LAogY2xhc3MgVGVzdEV2ZW50
UmVwZWF0ZXIgOiBwdWJsaWMgVGVzdEV2ZW50TGlzdGVuZXIgewogIHB1YmxpYzoKICAgVGVzdEV2
ZW50UmVwZWF0ZXIoKSA6IGZvcndhcmRpbmdfZW5hYmxlZF8odHJ1ZSkge30KLSAgdmlydHVhbCB+
VGVzdEV2ZW50UmVwZWF0ZXIoKTsKKyAgflRlc3RFdmVudFJlcGVhdGVyKCkgb3ZlcnJpZGU7CiAg
IHZvaWQgQXBwZW5kKFRlc3RFdmVudExpc3RlbmVyICpsaXN0ZW5lcik7CiAgIFRlc3RFdmVudExp
c3RlbmVyKiBSZWxlYXNlKFRlc3RFdmVudExpc3RlbmVyKiBsaXN0ZW5lcik7CiAKQEAgLTMzMTQs
MTkgKzM1NzQsMjcgQEAgY2xhc3MgVGVzdEV2ZW50UmVwZWF0ZXIgOiBwdWJsaWMgVGVzdEV2ZW50
TGlzdGVuZXIgewogICBib29sIGZvcndhcmRpbmdfZW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIGZv
cndhcmRpbmdfZW5hYmxlZF87IH0KICAgdm9pZCBzZXRfZm9yd2FyZGluZ19lbmFibGVkKGJvb2wg
ZW5hYmxlKSB7IGZvcndhcmRpbmdfZW5hYmxlZF8gPSBlbmFibGU7IH0KIAotICB2aXJ0dWFsIHZv
aWQgT25UZXN0UHJvZ3JhbVN0YXJ0KGNvbnN0IFVuaXRUZXN0JiB1bml0X3Rlc3QpOwotICB2aXJ0
dWFsIHZvaWQgT25UZXN0SXRlcmF0aW9uU3RhcnQoY29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCwg
aW50IGl0ZXJhdGlvbik7Ci0gIHZpcnR1YWwgdm9pZCBPbkVudmlyb25tZW50c1NldFVwU3RhcnQo
Y29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCk7Ci0gIHZpcnR1YWwgdm9pZCBPbkVudmlyb25tZW50
c1NldFVwRW5kKGNvbnN0IFVuaXRUZXN0JiB1bml0X3Rlc3QpOwotICB2aXJ0dWFsIHZvaWQgT25U
ZXN0Q2FzZVN0YXJ0KGNvbnN0IFRlc3RDYXNlJiB0ZXN0X2Nhc2UpOwotICB2aXJ0dWFsIHZvaWQg
T25UZXN0U3RhcnQoY29uc3QgVGVzdEluZm8mIHRlc3RfaW5mbyk7Ci0gIHZpcnR1YWwgdm9pZCBP
blRlc3RQYXJ0UmVzdWx0KGNvbnN0IFRlc3RQYXJ0UmVzdWx0JiByZXN1bHQpOwotICB2aXJ0dWFs
IHZvaWQgT25UZXN0RW5kKGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2luZm8pOwotICB2aXJ0dWFsIHZv
aWQgT25UZXN0Q2FzZUVuZChjb25zdCBUZXN0Q2FzZSYgdGVzdF9jYXNlKTsKLSAgdmlydHVhbCB2
b2lkIE9uRW52aXJvbm1lbnRzVGVhckRvd25TdGFydChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0
KTsKLSAgdmlydHVhbCB2b2lkIE9uRW52aXJvbm1lbnRzVGVhckRvd25FbmQoY29uc3QgVW5pdFRl
c3QmIHVuaXRfdGVzdCk7Ci0gIHZpcnR1YWwgdm9pZCBPblRlc3RJdGVyYXRpb25FbmQoY29uc3Qg
VW5pdFRlc3QmIHVuaXRfdGVzdCwgaW50IGl0ZXJhdGlvbik7Ci0gIHZpcnR1YWwgdm9pZCBPblRl
c3RQcm9ncmFtRW5kKGNvbnN0IFVuaXRUZXN0JiB1bml0X3Rlc3QpOworICB2b2lkIE9uVGVzdFBy
b2dyYW1TdGFydChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0KSBvdmVycmlkZTsKKyAgdm9pZCBP
blRlc3RJdGVyYXRpb25TdGFydChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0LCBpbnQgaXRlcmF0
aW9uKSBvdmVycmlkZTsKKyAgdm9pZCBPbkVudmlyb25tZW50c1NldFVwU3RhcnQoY29uc3QgVW5p
dFRlc3QmIHVuaXRfdGVzdCkgb3ZlcnJpZGU7CisgIHZvaWQgT25FbnZpcm9ubWVudHNTZXRVcEVu
ZChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0KSBvdmVycmlkZTsKKy8vICBMZWdhY3kgQVBJIGlz
IGRlcHJlY2F0ZWQgYnV0IHN0aWxsIGF2YWlsYWJsZQorI2lmbmRlZiBHVEVTVF9SRU1PVkVfTEVH
QUNZX1RFU1RfQ0FTRUFQSV8KKyAgdm9pZCBPblRlc3RDYXNlU3RhcnQoY29uc3QgVGVzdFN1aXRl
JiBwYXJhbWV0ZXIpIG92ZXJyaWRlOworI2VuZGlmICAvLyAgR1RFU1RfUkVNT1ZFX0xFR0FDWV9U
RVNUX0NBU0VBUElfCisgIHZvaWQgT25UZXN0U3VpdGVTdGFydChjb25zdCBUZXN0U3VpdGUmIHBh
cmFtZXRlcikgb3ZlcnJpZGU7CisgIHZvaWQgT25UZXN0U3RhcnQoY29uc3QgVGVzdEluZm8mIHRl
c3RfaW5mbykgb3ZlcnJpZGU7CisgIHZvaWQgT25UZXN0UGFydFJlc3VsdChjb25zdCBUZXN0UGFy
dFJlc3VsdCYgcmVzdWx0KSBvdmVycmlkZTsKKyAgdm9pZCBPblRlc3RFbmQoY29uc3QgVGVzdElu
Zm8mIHRlc3RfaW5mbykgb3ZlcnJpZGU7CisvLyAgTGVnYWN5IEFQSSBpcyBkZXByZWNhdGVkIGJ1
dCBzdGlsbCBhdmFpbGFibGUKKyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VB
UElfCisgIHZvaWQgT25UZXN0Q2FzZUVuZChjb25zdCBUZXN0Q2FzZSYgcGFyYW1ldGVyKSBvdmVy
cmlkZTsKKyNlbmRpZiAgLy8gIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXworICB2
b2lkIE9uVGVzdFN1aXRlRW5kKGNvbnN0IFRlc3RTdWl0ZSYgcGFyYW1ldGVyKSBvdmVycmlkZTsK
KyAgdm9pZCBPbkVudmlyb25tZW50c1RlYXJEb3duU3RhcnQoY29uc3QgVW5pdFRlc3QmIHVuaXRf
dGVzdCkgb3ZlcnJpZGU7CisgIHZvaWQgT25FbnZpcm9ubWVudHNUZWFyRG93bkVuZChjb25zdCBV
bml0VGVzdCYgdW5pdF90ZXN0KSBvdmVycmlkZTsKKyAgdm9pZCBPblRlc3RJdGVyYXRpb25FbmQo
Y29uc3QgVW5pdFRlc3QmIHVuaXRfdGVzdCwgaW50IGl0ZXJhdGlvbikgb3ZlcnJpZGU7CisgIHZv
aWQgT25UZXN0UHJvZ3JhbUVuZChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0KSBvdmVycmlkZTsK
IAogIHByaXZhdGU6CiAgIC8vIENvbnRyb2xzIHdoZXRoZXIgZXZlbnRzIHdpbGwgYmUgZm9yd2Fy
ZGVkIHRvIGxpc3RlbmVyc18uIFNldCB0byBmYWxzZQpAQCAtMzM0NiwxNiArMzYxNCwxNSBAQCB2
b2lkIFRlc3RFdmVudFJlcGVhdGVyOjpBcHBlbmQoVGVzdEV2ZW50TGlzdGVuZXIgKmxpc3RlbmVy
KSB7CiAgIGxpc3RlbmVyc18ucHVzaF9iYWNrKGxpc3RlbmVyKTsKIH0KIAotLy8gRklYTUU6IEZh
Y3RvciB0aGUgc2VhcmNoIGZ1bmN0aW9uYWxpdHkgaW50byBWZWN0b3I6OkZpbmQuCiBUZXN0RXZl
bnRMaXN0ZW5lciogVGVzdEV2ZW50UmVwZWF0ZXI6OlJlbGVhc2UoVGVzdEV2ZW50TGlzdGVuZXIg
Kmxpc3RlbmVyKSB7CiAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbGlzdGVuZXJzXy5zaXplKCk7
ICsraSkgewogICAgIGlmIChsaXN0ZW5lcnNfW2ldID09IGxpc3RlbmVyKSB7Ci0gICAgICBsaXN0
ZW5lcnNfLmVyYXNlKGxpc3RlbmVyc18uYmVnaW4oKSArIGkpOworICAgICAgbGlzdGVuZXJzXy5l
cmFzZShsaXN0ZW5lcnNfLmJlZ2luKCkgKyBzdGF0aWNfY2FzdDxpbnQ+KGkpKTsKICAgICAgIHJl
dHVybiBsaXN0ZW5lcjsKICAgICB9CiAgIH0KIAotICByZXR1cm4gTlVMTDsKKyAgcmV0dXJuIG51
bGxwdHI7CiB9CiAKIC8vIFNpbmNlIG1vc3QgbWV0aG9kcyBhcmUgdmVyeSBzaW1pbGFyLCB1c2Ug
bWFjcm9zIHRvIHJlZHVjZSBib2lsZXJwbGF0ZS4KQEAgLTMzNzAsMjUgKzM2MzcsMzMgQEAgdm9p
ZCBUZXN0RXZlbnRSZXBlYXRlcjo6TmFtZShjb25zdCBUeXBlJiBwYXJhbWV0ZXIpIHsgXAogfQog
Ly8gVGhpcyBkZWZpbmVzIGEgbWVtYmVyIHRoYXQgZm9yd2FyZHMgdGhlIGNhbGwgdG8gYWxsIGxp
c3RlbmVycyBpbiByZXZlcnNlCiAvLyBvcmRlci4KLSNkZWZpbmUgR1RFU1RfUkVWRVJTRV9SRVBF
QVRFUl9NRVRIT0RfKE5hbWUsIFR5cGUpIFwKLXZvaWQgVGVzdEV2ZW50UmVwZWF0ZXI6Ok5hbWUo
Y29uc3QgVHlwZSYgcGFyYW1ldGVyKSB7IFwKLSAgaWYgKGZvcndhcmRpbmdfZW5hYmxlZF8pIHsg
XAotICAgIGZvciAoaW50IGkgPSBzdGF0aWNfY2FzdDxpbnQ+KGxpc3RlbmVyc18uc2l6ZSgpKSAt
IDE7IGkgPj0gMDsgaS0tKSB7IFwKLSAgICAgIGxpc3RlbmVyc19baV0tPk5hbWUocGFyYW1ldGVy
KTsgXAotICAgIH0gXAotICB9IFwKLX0KKyNkZWZpbmUgR1RFU1RfUkVWRVJTRV9SRVBFQVRFUl9N
RVRIT0RfKE5hbWUsIFR5cGUpICAgICAgXAorICB2b2lkIFRlc3RFdmVudFJlcGVhdGVyOjpOYW1l
KGNvbnN0IFR5cGUmIHBhcmFtZXRlcikgeyBcCisgICAgaWYgKGZvcndhcmRpbmdfZW5hYmxlZF8p
IHsgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgIGZvciAoc2l6ZV90IGkgPSBsaXN0
ZW5lcnNfLnNpemUoKTsgaSAhPSAwOyBpLS0pIHsgXAorICAgICAgICBsaXN0ZW5lcnNfW2kgLSAx
XS0+TmFtZShwYXJhbWV0ZXIpOyAgICAgICAgICAgICBcCisgICAgICB9ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB9ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICB9CiAKIEdURVNUX1JFUEVB
VEVSX01FVEhPRF8oT25UZXN0UHJvZ3JhbVN0YXJ0LCBVbml0VGVzdCkKIEdURVNUX1JFUEVBVEVS
X01FVEhPRF8oT25FbnZpcm9ubWVudHNTZXRVcFN0YXJ0LCBVbml0VGVzdCkKLUdURVNUX1JFUEVB
VEVSX01FVEhPRF8oT25UZXN0Q2FzZVN0YXJ0LCBUZXN0Q2FzZSkKKy8vICBMZWdhY3kgQVBJIGlz
IGRlcHJlY2F0ZWQgYnV0IHN0aWxsIGF2YWlsYWJsZQorI2lmbmRlZiBHVEVTVF9SRU1PVkVfTEVH
QUNZX1RFU1RfQ0FTRUFQSV8KK0dURVNUX1JFUEVBVEVSX01FVEhPRF8oT25UZXN0Q2FzZVN0YXJ0
LCBUZXN0U3VpdGUpCisjZW5kaWYgIC8vICBHVEVTVF9SRU1PVkVfTEVHQUNZX1RFU1RfQ0FTRUFQ
SV8KK0dURVNUX1JFUEVBVEVSX01FVEhPRF8oT25UZXN0U3VpdGVTdGFydCwgVGVzdFN1aXRlKQog
R1RFU1RfUkVQRUFURVJfTUVUSE9EXyhPblRlc3RTdGFydCwgVGVzdEluZm8pCiBHVEVTVF9SRVBF
QVRFUl9NRVRIT0RfKE9uVGVzdFBhcnRSZXN1bHQsIFRlc3RQYXJ0UmVzdWx0KQogR1RFU1RfUkVQ
RUFURVJfTUVUSE9EXyhPbkVudmlyb25tZW50c1RlYXJEb3duU3RhcnQsIFVuaXRUZXN0KQogR1RF
U1RfUkVWRVJTRV9SRVBFQVRFUl9NRVRIT0RfKE9uRW52aXJvbm1lbnRzU2V0VXBFbmQsIFVuaXRU
ZXN0KQogR1RFU1RfUkVWRVJTRV9SRVBFQVRFUl9NRVRIT0RfKE9uRW52aXJvbm1lbnRzVGVhckRv
d25FbmQsIFVuaXRUZXN0KQogR1RFU1RfUkVWRVJTRV9SRVBFQVRFUl9NRVRIT0RfKE9uVGVzdEVu
ZCwgVGVzdEluZm8pCi1HVEVTVF9SRVZFUlNFX1JFUEVBVEVSX01FVEhPRF8oT25UZXN0Q2FzZUVu
ZCwgVGVzdENhc2UpCisvLyAgTGVnYWN5IEFQSSBpcyBkZXByZWNhdGVkIGJ1dCBzdGlsbCBhdmFp
bGFibGUKKyNpZm5kZWYgR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUElfCitHVEVTVF9S
RVZFUlNFX1JFUEVBVEVSX01FVEhPRF8oT25UZXN0Q2FzZUVuZCwgVGVzdFN1aXRlKQorI2VuZGlm
ICAvLyAgR1RFU1RfUkVNT1ZFX0xFR0FDWV9URVNUX0NBU0VBUElfCitHVEVTVF9SRVZFUlNFX1JF
UEVBVEVSX01FVEhPRF8oT25UZXN0U3VpdGVFbmQsIFRlc3RTdWl0ZSkKIEdURVNUX1JFVkVSU0Vf
UkVQRUFURVJfTUVUSE9EXyhPblRlc3RQcm9ncmFtRW5kLCBVbml0VGVzdCkKIAogI3VuZGVmIEdU
RVNUX1JFUEVBVEVSX01FVEhPRF8KQEAgLTM0MDYsOCArMzY4MSw4IEBAIHZvaWQgVGVzdEV2ZW50
UmVwZWF0ZXI6Ok9uVGVzdEl0ZXJhdGlvblN0YXJ0KGNvbnN0IFVuaXRUZXN0JiB1bml0X3Rlc3Qs
CiB2b2lkIFRlc3RFdmVudFJlcGVhdGVyOjpPblRlc3RJdGVyYXRpb25FbmQoY29uc3QgVW5pdFRl
c3QmIHVuaXRfdGVzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBpbnQgaXRlcmF0aW9uKSB7CiAgIGlmIChmb3J3YXJkaW5nX2VuYWJsZWRfKSB7Ci0gICAgZm9y
IChpbnQgaSA9IHN0YXRpY19jYXN0PGludD4obGlzdGVuZXJzXy5zaXplKCkpIC0gMTsgaSA+PSAw
OyBpLS0pIHsKLSAgICAgIGxpc3RlbmVyc19baV0tPk9uVGVzdEl0ZXJhdGlvbkVuZCh1bml0X3Rl
c3QsIGl0ZXJhdGlvbik7CisgICAgZm9yIChzaXplX3QgaSA9IGxpc3RlbmVyc18uc2l6ZSgpOyBp
ID4gMDsgaS0tKSB7CisgICAgICBsaXN0ZW5lcnNfW2kgLSAxXS0+T25UZXN0SXRlcmF0aW9uRW5k
KHVuaXRfdGVzdCwgaXRlcmF0aW9uKTsKICAgICB9CiAgIH0KIH0KQEAgLTM0MTksMTIgKzM2OTQs
MTIgQEAgY2xhc3MgWG1sVW5pdFRlc3RSZXN1bHRQcmludGVyIDogcHVibGljIEVtcHR5VGVzdEV2
ZW50TGlzdGVuZXIgewogIHB1YmxpYzoKICAgZXhwbGljaXQgWG1sVW5pdFRlc3RSZXN1bHRQcmlu
dGVyKGNvbnN0IGNoYXIqIG91dHB1dF9maWxlKTsKIAotICB2aXJ0dWFsIHZvaWQgT25UZXN0SXRl
cmF0aW9uRW5kKGNvbnN0IFVuaXRUZXN0JiB1bml0X3Rlc3QsIGludCBpdGVyYXRpb24pOwotICB2
b2lkIExpc3RUZXN0c01hdGNoaW5nRmlsdGVyKGNvbnN0IHN0ZDo6dmVjdG9yPFRlc3RDYXNlKj4m
IHRlc3RfY2FzZXMpOworICB2b2lkIE9uVGVzdEl0ZXJhdGlvbkVuZChjb25zdCBVbml0VGVzdCYg
dW5pdF90ZXN0LCBpbnQgaXRlcmF0aW9uKSBvdmVycmlkZTsKKyAgdm9pZCBMaXN0VGVzdHNNYXRj
aGluZ0ZpbHRlcihjb25zdCBzdGQ6OnZlY3RvcjxUZXN0U3VpdGUqPiYgdGVzdF9zdWl0ZXMpOwog
CiAgIC8vIFByaW50cyBhbiBYTUwgc3VtbWFyeSBvZiBhbGwgdW5pdCB0ZXN0cy4KICAgc3RhdGlj
IHZvaWQgUHJpbnRYbWxUZXN0c0xpc3Qoc3RkOjpvc3RyZWFtKiBzdHJlYW0sCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0ZDo6dmVjdG9yPFRlc3RDYXNlKj4mIHRlc3Rf
Y2FzZXMpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6OnZlY3Rv
cjxUZXN0U3VpdGUqPiYgdGVzdF9zdWl0ZXMpOwogCiAgcHJpdmF0ZToKICAgLy8gSXMgYyBhIHdo
aXRlc3BhY2UgY2hhcmFjdGVyIHRoYXQgaXMgbm9ybWFsaXplZCB0byBhIHNwYWNlIGNoYXJhY3Rl
cgpAQCAtMzQ2OSwxMiArMzc0NCwxMiBAQCBjbGFzcyBYbWxVbml0VGVzdFJlc3VsdFByaW50ZXIg
OiBwdWJsaWMgRW1wdHlUZXN0RXZlbnRMaXN0ZW5lciB7CiAKICAgLy8gU3RyZWFtcyBhbiBYTUwg
cmVwcmVzZW50YXRpb24gb2YgYSBUZXN0SW5mbyBvYmplY3QuCiAgIHN0YXRpYyB2b2lkIE91dHB1
dFhtbFRlc3RJbmZvKDo6c3RkOjpvc3RyZWFtKiBzdHJlYW0sCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IGNoYXIqIHRlc3RfY2FzZV9uYW1lLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBjaGFyKiB0ZXN0X3N1aXRlX25hbWUsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFRlc3RJbmZvJiB0ZXN0X2luZm8pOwogCi0gIC8v
IFByaW50cyBhbiBYTUwgcmVwcmVzZW50YXRpb24gb2YgYSBUZXN0Q2FzZSBvYmplY3QKLSAgc3Rh
dGljIHZvaWQgUHJpbnRYbWxUZXN0Q2FzZSg6OnN0ZDo6b3N0cmVhbSogc3RyZWFtLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFRlc3RDYXNlJiB0ZXN0X2Nhc2UpOworICAv
LyBQcmludHMgYW4gWE1MIHJlcHJlc2VudGF0aW9uIG9mIGEgVGVzdFN1aXRlIG9iamVjdAorICBz
dGF0aWMgdm9pZCBQcmludFhtbFRlc3RTdWl0ZSg6OnN0ZDo6b3N0cmVhbSogc3RyZWFtLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBUZXN0U3VpdGUmIHRlc3Rfc3VpdGUp
OwogCiAgIC8vIFByaW50cyBhbiBYTUwgc3VtbWFyeSBvZiB1bml0X3Rlc3QgdG8gb3V0cHV0IHN0
cmVhbSBvdXQuCiAgIHN0YXRpYyB2b2lkIFByaW50WG1sVW5pdFRlc3QoOjpzdGQ6Om9zdHJlYW0q
IHN0cmVhbSwKQEAgLTM1MTYsMTAgKzM3OTEsMTAgQEAgdm9pZCBYbWxVbml0VGVzdFJlc3VsdFBy
aW50ZXI6Ok9uVGVzdEl0ZXJhdGlvbkVuZChjb25zdCBVbml0VGVzdCYgdW5pdF90ZXN0LAogfQog
CiB2b2lkIFhtbFVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6TGlzdFRlc3RzTWF0Y2hpbmdGaWx0ZXIo
Ci0gICAgY29uc3Qgc3RkOjp2ZWN0b3I8VGVzdENhc2UqPiYgdGVzdF9jYXNlcykgeworICAgIGNv
bnN0IHN0ZDo6dmVjdG9yPFRlc3RTdWl0ZSo+JiB0ZXN0X3N1aXRlcykgewogICBGSUxFKiB4bWxv
dXQgPSBPcGVuRmlsZUZvcldyaXRpbmcob3V0cHV0X2ZpbGVfKTsKICAgc3RkOjpzdHJpbmdzdHJl
YW0gc3RyZWFtOwotICBQcmludFhtbFRlc3RzTGlzdCgmc3RyZWFtLCB0ZXN0X2Nhc2VzKTsKKyAg
UHJpbnRYbWxUZXN0c0xpc3QoJnN0cmVhbSwgdGVzdF9zdWl0ZXMpOwogICBmcHJpbnRmKHhtbG91
dCwgIiVzIiwgU3RyaW5nU3RyZWFtVG9TdHJpbmcoJnN0cmVhbSkuY19zdHIoKSk7CiAgIGZjbG9z
ZSh4bWxvdXQpOwogfQpAQCAtMzUzNCw4ICszODA5LDYgQEAgdm9pZCBYbWxVbml0VGVzdFJlc3Vs
dFByaW50ZXI6Okxpc3RUZXN0c01hdGNoaW5nRmlsdGVyKAogLy8gbW9kdWxlIHdpbGwgY29uc2lz
dCBvZiBvcmRpbmFyeSBFbmdsaXNoIHRleHQuCiAvLyBJZiB0aGlzIG1vZHVsZSBpcyBldmVyIG1v
ZGlmaWVkIHRvIHByb2R1Y2UgdmVyc2lvbiAxLjEgWE1MIG91dHB1dCwKIC8vIG1vc3QgaW52YWxp
ZCBjaGFyYWN0ZXJzIGNhbiBiZSByZXRhaW5lZCB1c2luZyBjaGFyYWN0ZXIgcmVmZXJlbmNlcy4K
LS8vIEZJWE1FOiBJdCBtaWdodCBiZSBuaWNlIHRvIGhhdmUgYSBtaW5pbWFsbHkgaW52YXNpdmUs
IGh1bWFuLXJlYWRhYmxlCi0vLyBlc2NhcGluZyBzY2hlbWUgZm9yIGludmFsaWQgY2hhcmFjdGVy
cywgcmF0aGVyIHRoYW4gZHJvcHBpbmcgdGhlbS4KIHN0ZDo6c3RyaW5nIFhtbFVuaXRUZXN0UmVz
dWx0UHJpbnRlcjo6RXNjYXBlWG1sKAogICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBzdHIsIGJvb2wg
aXNfYXR0cmlidXRlKSB7CiAgIE1lc3NhZ2UgbTsKQEAgLTM2MDAsNyArMzg3Myw3IEBAIHN0ZDo6
c3RyaW5nIFhtbFVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6UmVtb3ZlSW52YWxpZFhtbENoYXJhY3Rl
cnMoCiAvLyBUaGlzIGlzIGhvdyBHb29nbGUgVGVzdCBjb25jZXB0cyBtYXAgdG8gdGhlIERURDoK
IC8vCiAvLyA8dGVzdHN1aXRlcyBuYW1lPSJBbGxUZXN0cyI+ICAgICAgICA8LS0gY29ycmVzcG9u
ZHMgdG8gYSBVbml0VGVzdCBvYmplY3QKLS8vICAgPHRlc3RzdWl0ZSBuYW1lPSJ0ZXN0Y2FzZS1u
YW1lIj4gIDwtLSBjb3JyZXNwb25kcyB0byBhIFRlc3RDYXNlIG9iamVjdAorLy8gICA8dGVzdHN1
aXRlIG5hbWU9InRlc3RjYXNlLW5hbWUiPiAgPC0tIGNvcnJlc3BvbmRzIHRvIGEgVGVzdFN1aXRl
IG9iamVjdAogLy8gICAgIDx0ZXN0Y2FzZSBuYW1lPSJ0ZXN0LW5hbWUiPiAgICAgPC0tIGNvcnJl
c3BvbmRzIHRvIGEgVGVzdEluZm8gb2JqZWN0CiAvLyAgICAgICA8ZmFpbHVyZSBtZXNzYWdlPSIu
Li4iPi4uLjwvZmFpbHVyZT4KIC8vICAgICAgIDxmYWlsdXJlIG1lc3NhZ2U9Ii4uLiI+Li4uPC9m
YWlsdXJlPgpAQCAtMzYyNCwxMiArMzg5NywxMSBAQCBzdGF0aWMgYm9vbCBQb3J0YWJsZUxvY2Fs
dGltZSh0aW1lX3Qgc2Vjb25kcywgc3RydWN0IHRtKiBvdXQpIHsKICAgLy8gTUlOR1cgPHRpbWUu
aD4gcHJvdmlkZXMgbmVpdGhlciBsb2NhbHRpbWVfciBub3IgbG9jYWx0aW1lX3MsIGJ1dCB1c2Vz
CiAgIC8vIFdpbmRvd3MnIGxvY2FsdGltZSgpLCB3aGljaCBoYXMgYSB0aHJlYWQtbG9jYWwgdG0g
YnVmZmVyLgogICBzdHJ1Y3QgdG0qIHRtX3B0ciA9IGxvY2FsdGltZSgmc2Vjb25kcyk7ICAvLyBO
T0xJTlQKLSAgaWYgKHRtX3B0ciA9PSBOVUxMKQotICAgIHJldHVybiBmYWxzZTsKKyAgaWYgKHRt
X3B0ciA9PSBudWxscHRyKSByZXR1cm4gZmFsc2U7CiAgICpvdXQgPSAqdG1fcHRyOwogICByZXR1
cm4gdHJ1ZTsKICNlbHNlCi0gIHJldHVybiBsb2NhbHRpbWVfcigmc2Vjb25kcywgb3V0KSAhPSBO
VUxMOworICByZXR1cm4gbG9jYWx0aW1lX3IoJnNlY29uZHMsIG91dCkgIT0gbnVsbHB0cjsKICNl
bmRpZgogfQogCkBAIC0zNjU1LDcgKzM5MjcsNyBAQCB2b2lkIFhtbFVuaXRUZXN0UmVzdWx0UHJp
bnRlcjo6T3V0cHV0WG1sQ0RhdGFTZWN0aW9uKDo6c3RkOjpvc3RyZWFtKiBzdHJlYW0sCiAgICpz
dHJlYW0gPDwgIjwhW0NEQVRBWyI7CiAgIGZvciAoOzspIHsKICAgICBjb25zdCBjaGFyKiBjb25z
dCBuZXh0X3NlZ21lbnQgPSBzdHJzdHIoc2VnbWVudCwgIl1dPiIpOwotICAgIGlmIChuZXh0X3Nl
Z21lbnQgIT0gTlVMTCkgeworICAgIGlmIChuZXh0X3NlZ21lbnQgIT0gbnVsbHB0cikgewogICAg
ICAgc3RyZWFtLT53cml0ZSgKICAgICAgICAgICBzZWdtZW50LCBzdGF0aWNfY2FzdDxzdGQ6OnN0
cmVhbXNpemU+KG5leHRfc2VnbWVudCAtIHNlZ21lbnQpKTsKICAgICAgICpzdHJlYW0gPDwgIl1d
Pl1dJmd0OzwhW0NEQVRBWyI7CkBAIC0zNjc0LDcgKzM5NDYsNyBAQCB2b2lkIFhtbFVuaXRUZXN0
UmVzdWx0UHJpbnRlcjo6T3V0cHV0WG1sQXR0cmlidXRlKAogICAgIGNvbnN0IHN0ZDo6c3RyaW5n
JiBuYW1lLAogICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiB2YWx1ZSkgewogICBjb25zdCBzdGQ6OnZl
Y3RvcjxzdGQ6OnN0cmluZz4mIGFsbG93ZWRfbmFtZXMgPQotICAgICAgR2V0UmVzZXJ2ZWRBdHRy
aWJ1dGVzRm9yRWxlbWVudChlbGVtZW50X25hbWUpOworICAgICAgR2V0UmVzZXJ2ZWRPdXRwdXRB
dHRyaWJ1dGVzRm9yRWxlbWVudChlbGVtZW50X25hbWUpOwogCiAgIEdURVNUX0NIRUNLXyhzdGQ6
OmZpbmQoYWxsb3dlZF9uYW1lcy5iZWdpbigpLCBhbGxvd2VkX25hbWVzLmVuZCgpLCBuYW1lKSAh
PQogICAgICAgICAgICAgICAgICAgIGFsbG93ZWRfbmFtZXMuZW5kKCkpCkBAIC0zNjg1LDQwICsz
OTU3LDQ3IEBAIHZvaWQgWG1sVW5pdFRlc3RSZXN1bHRQcmludGVyOjpPdXRwdXRYbWxBdHRyaWJ1
dGUoCiB9CiAKIC8vIFByaW50cyBhbiBYTUwgcmVwcmVzZW50YXRpb24gb2YgYSBUZXN0SW5mbyBv
YmplY3QuCi0vLyBGSVhNRTogVGhlcmUgaXMgYWxzbyB2YWx1ZSBpbiBwcmludGluZyBwcm9wZXJ0
aWVzIHdpdGggdGhlIHBsYWluIHByaW50ZXIuCiB2b2lkIFhtbFVuaXRUZXN0UmVzdWx0UHJpbnRl
cjo6T3V0cHV0WG1sVGVzdEluZm8oOjpzdGQ6Om9zdHJlYW0qIHN0cmVhbSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyKiB0ZXN0X2Nh
c2VfbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBjaGFyKiB0ZXN0X3N1aXRlX25hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVGVzdEluZm8mIHRlc3RfaW5mbykgewogICBj
b25zdCBUZXN0UmVzdWx0JiByZXN1bHQgPSAqdGVzdF9pbmZvLnJlc3VsdCgpOwotICBjb25zdCBz
dGQ6OnN0cmluZyBrVGVzdGNhc2UgPSAidGVzdGNhc2UiOworICBjb25zdCBzdGQ6OnN0cmluZyBr
VGVzdHN1aXRlID0gInRlc3RjYXNlIjsKIAogICBpZiAodGVzdF9pbmZvLmlzX2luX2Fub3RoZXJf
c2hhcmQoKSkgewogICAgIHJldHVybjsKICAgfQogCiAgICpzdHJlYW0gPDwgIiAgICA8dGVzdGNh
c2UiOwotICBPdXRwdXRYbWxBdHRyaWJ1dGUoc3RyZWFtLCBrVGVzdGNhc2UsICJuYW1lIiwgdGVz
dF9pbmZvLm5hbWUoKSk7CisgIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0sIGtUZXN0c3VpdGUs
ICJuYW1lIiwgdGVzdF9pbmZvLm5hbWUoKSk7CiAKLSAgaWYgKHRlc3RfaW5mby52YWx1ZV9wYXJh
bSgpICE9IE5VTEwpIHsKLSAgICBPdXRwdXRYbWxBdHRyaWJ1dGUoc3RyZWFtLCBrVGVzdGNhc2Us
ICJ2YWx1ZV9wYXJhbSIsCisgIGlmICh0ZXN0X2luZm8udmFsdWVfcGFyYW0oKSAhPSBudWxscHRy
KSB7CisgICAgT3V0cHV0WG1sQXR0cmlidXRlKHN0cmVhbSwga1Rlc3RzdWl0ZSwgInZhbHVlX3Bh
cmFtIiwKICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9pbmZvLnZhbHVlX3BhcmFtKCkpOwog
ICB9Ci0gIGlmICh0ZXN0X2luZm8udHlwZV9wYXJhbSgpICE9IE5VTEwpIHsKLSAgICBPdXRwdXRY
bWxBdHRyaWJ1dGUoc3RyZWFtLCBrVGVzdGNhc2UsICJ0eXBlX3BhcmFtIiwgdGVzdF9pbmZvLnR5
cGVfcGFyYW0oKSk7CisgIGlmICh0ZXN0X2luZm8udHlwZV9wYXJhbSgpICE9IG51bGxwdHIpIHsK
KyAgICBPdXRwdXRYbWxBdHRyaWJ1dGUoc3RyZWFtLCBrVGVzdHN1aXRlLCAidHlwZV9wYXJhbSIs
CisgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfaW5mby50eXBlX3BhcmFtKCkpOwogICB9CiAg
IGlmIChHVEVTVF9GTEFHKGxpc3RfdGVzdHMpKSB7Ci0gICAgT3V0cHV0WG1sQXR0cmlidXRlKHN0
cmVhbSwga1Rlc3RjYXNlLCAiZmlsZSIsIHRlc3RfaW5mby5maWxlKCkpOwotICAgIE91dHB1dFht
bEF0dHJpYnV0ZShzdHJlYW0sIGtUZXN0Y2FzZSwgImxpbmUiLAorICAgIE91dHB1dFhtbEF0dHJp
YnV0ZShzdHJlYW0sIGtUZXN0c3VpdGUsICJmaWxlIiwgdGVzdF9pbmZvLmZpbGUoKSk7CisgICAg
T3V0cHV0WG1sQXR0cmlidXRlKHN0cmVhbSwga1Rlc3RzdWl0ZSwgImxpbmUiLAogICAgICAgICAg
ICAgICAgICAgICAgICBTdHJlYW1hYmxlVG9TdHJpbmcodGVzdF9pbmZvLmxpbmUoKSkpOwogICAg
ICpzdHJlYW0gPDwgIiAvPlxuIjsKICAgICByZXR1cm47CiAgIH0KIAotICBPdXRwdXRYbWxBdHRy
aWJ1dGUoc3RyZWFtLCBrVGVzdGNhc2UsICJzdGF0dXMiLAorICBPdXRwdXRYbWxBdHRyaWJ1dGUo
c3RyZWFtLCBrVGVzdHN1aXRlLCAic3RhdHVzIiwKICAgICAgICAgICAgICAgICAgICAgIHRlc3Rf
aW5mby5zaG91bGRfcnVuKCkgPyAicnVuIiA6ICJub3RydW4iKTsKLSAgT3V0cHV0WG1sQXR0cmli
dXRlKHN0cmVhbSwga1Rlc3RjYXNlLCAidGltZSIsCisgIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJl
YW0sIGtUZXN0c3VpdGUsICJyZXN1bHQiLAorICAgICAgICAgICAgICAgICAgICAgdGVzdF9pbmZv
LnNob3VsZF9ydW4oKQorICAgICAgICAgICAgICAgICAgICAgICAgID8gKHJlc3VsdC5Ta2lwcGVk
KCkgPyAic2tpcHBlZCIgOiAiY29tcGxldGVkIikKKyAgICAgICAgICAgICAgICAgICAgICAgICA6
ICJzdXBwcmVzc2VkIik7CisgIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0sIGtUZXN0c3VpdGUs
ICJ0aW1lIiwKICAgICAgICAgICAgICAgICAgICAgIEZvcm1hdFRpbWVJbk1pbGxpc0FzU2Vjb25k
cyhyZXN1bHQuZWxhcHNlZF90aW1lKCkpKTsKLSAgT3V0cHV0WG1sQXR0cmlidXRlKHN0cmVhbSwg
a1Rlc3RjYXNlLCAiY2xhc3NuYW1lIiwgdGVzdF9jYXNlX25hbWUpOworICBPdXRwdXRYbWxBdHRy
aWJ1dGUoCisgICAgICBzdHJlYW0sIGtUZXN0c3VpdGUsICJ0aW1lc3RhbXAiLAorICAgICAgRm9y
bWF0RXBvY2hUaW1lSW5NaWxsaXNBc0lzbzg2MDEocmVzdWx0LnN0YXJ0X3RpbWVzdGFtcCgpKSk7
CisgIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0sIGtUZXN0c3VpdGUsICJjbGFzc25hbWUiLCB0
ZXN0X3N1aXRlX25hbWUpOwogCiAgIGludCBmYWlsdXJlcyA9IDA7CiAgIGZvciAoaW50IGkgPSAw
OyBpIDwgcmVzdWx0LnRvdGFsX3BhcnRfY291bnQoKTsgKytpKSB7CkBAIC0zNzUxLDI5ICs0MDMw
LDMyIEBAIHZvaWQgWG1sVW5pdFRlc3RSZXN1bHRQcmludGVyOjpPdXRwdXRYbWxUZXN0SW5mbyg6
OnN0ZDo6b3N0cmVhbSogc3RyZWFtLAogICB9CiB9CiAKLS8vIFByaW50cyBhbiBYTUwgcmVwcmVz
ZW50YXRpb24gb2YgYSBUZXN0Q2FzZSBvYmplY3QKLXZvaWQgWG1sVW5pdFRlc3RSZXN1bHRQcmlu
dGVyOjpQcmludFhtbFRlc3RDYXNlKHN0ZDo6b3N0cmVhbSogc3RyZWFtLAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVGVzdENhc2UmIHRlc3Rf
Y2FzZSkgeworLy8gUHJpbnRzIGFuIFhNTCByZXByZXNlbnRhdGlvbiBvZiBhIFRlc3RTdWl0ZSBv
YmplY3QKK3ZvaWQgWG1sVW5pdFRlc3RSZXN1bHRQcmludGVyOjpQcmludFhtbFRlc3RTdWl0ZShz
dGQ6Om9zdHJlYW0qIHN0cmVhbSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCBUZXN0U3VpdGUmIHRlc3Rfc3VpdGUpIHsKICAgY29uc3Qgc3Rk
OjpzdHJpbmcga1Rlc3RzdWl0ZSA9ICJ0ZXN0c3VpdGUiOwogICAqc3RyZWFtIDw8ICIgIDwiIDw8
IGtUZXN0c3VpdGU7Ci0gIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0sIGtUZXN0c3VpdGUsICJu
YW1lIiwgdGVzdF9jYXNlLm5hbWUoKSk7CisgIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0sIGtU
ZXN0c3VpdGUsICJuYW1lIiwgdGVzdF9zdWl0ZS5uYW1lKCkpOwogICBPdXRwdXRYbWxBdHRyaWJ1
dGUoc3RyZWFtLCBrVGVzdHN1aXRlLCAidGVzdHMiLAotICAgICAgICAgICAgICAgICAgICAgU3Ry
ZWFtYWJsZVRvU3RyaW5nKHRlc3RfY2FzZS5yZXBvcnRhYmxlX3Rlc3RfY291bnQoKSkpOworICAg
ICAgICAgICAgICAgICAgICAgU3RyZWFtYWJsZVRvU3RyaW5nKHRlc3Rfc3VpdGUucmVwb3J0YWJs
ZV90ZXN0X2NvdW50KCkpKTsKICAgaWYgKCFHVEVTVF9GTEFHKGxpc3RfdGVzdHMpKSB7CiAgICAg
T3V0cHV0WG1sQXR0cmlidXRlKHN0cmVhbSwga1Rlc3RzdWl0ZSwgImZhaWx1cmVzIiwKLSAgICAg
ICAgICAgICAgICAgICAgICAgU3RyZWFtYWJsZVRvU3RyaW5nKHRlc3RfY2FzZS5mYWlsZWRfdGVz
dF9jb3VudCgpKSk7CisgICAgICAgICAgICAgICAgICAgICAgIFN0cmVhbWFibGVUb1N0cmluZyh0
ZXN0X3N1aXRlLmZhaWxlZF90ZXN0X2NvdW50KCkpKTsKICAgICBPdXRwdXRYbWxBdHRyaWJ1dGUo
CiAgICAgICAgIHN0cmVhbSwga1Rlc3RzdWl0ZSwgImRpc2FibGVkIiwKLSAgICAgICAgU3RyZWFt
YWJsZVRvU3RyaW5nKHRlc3RfY2FzZS5yZXBvcnRhYmxlX2Rpc2FibGVkX3Rlc3RfY291bnQoKSkp
OworICAgICAgICBTdHJlYW1hYmxlVG9TdHJpbmcodGVzdF9zdWl0ZS5yZXBvcnRhYmxlX2Rpc2Fi
bGVkX3Rlc3RfY291bnQoKSkpOwogICAgIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0sIGtUZXN0
c3VpdGUsICJlcnJvcnMiLCAiMCIpOwogICAgIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0sIGtU
ZXN0c3VpdGUsICJ0aW1lIiwKLSAgICAgICAgICAgICAgICAgICAgICAgRm9ybWF0VGltZUluTWls
bGlzQXNTZWNvbmRzKHRlc3RfY2FzZS5lbGFwc2VkX3RpbWUoKSkpOwotICAgICpzdHJlYW0gPDwg
VGVzdFByb3BlcnRpZXNBc1htbEF0dHJpYnV0ZXModGVzdF9jYXNlLmFkX2hvY190ZXN0X3Jlc3Vs
dCgpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgRm9ybWF0VGltZUluTWlsbGlzQXNTZWNvbmRz
KHRlc3Rfc3VpdGUuZWxhcHNlZF90aW1lKCkpKTsKKyAgICBPdXRwdXRYbWxBdHRyaWJ1dGUoCisg
ICAgICAgIHN0cmVhbSwga1Rlc3RzdWl0ZSwgInRpbWVzdGFtcCIsCisgICAgICAgIEZvcm1hdEVw
b2NoVGltZUluTWlsbGlzQXNJc284NjAxKHRlc3Rfc3VpdGUuc3RhcnRfdGltZXN0YW1wKCkpKTsK
KyAgICAqc3RyZWFtIDw8IFRlc3RQcm9wZXJ0aWVzQXNYbWxBdHRyaWJ1dGVzKHRlc3Rfc3VpdGUu
YWRfaG9jX3Rlc3RfcmVzdWx0KCkpOwogICB9CiAgICpzdHJlYW0gPDwgIj5cbiI7Ci0gIGZvciAo
aW50IGkgPSAwOyBpIDwgdGVzdF9jYXNlLnRvdGFsX3Rlc3RfY291bnQoKTsgKytpKSB7Ci0gICAg
aWYgKHRlc3RfY2FzZS5HZXRUZXN0SW5mbyhpKS0+aXNfcmVwb3J0YWJsZSgpKQotICAgICAgT3V0
cHV0WG1sVGVzdEluZm8oc3RyZWFtLCB0ZXN0X2Nhc2UubmFtZSgpLCAqdGVzdF9jYXNlLkdldFRl
c3RJbmZvKGkpKTsKKyAgZm9yIChpbnQgaSA9IDA7IGkgPCB0ZXN0X3N1aXRlLnRvdGFsX3Rlc3Rf
Y291bnQoKTsgKytpKSB7CisgICAgaWYgKHRlc3Rfc3VpdGUuR2V0VGVzdEluZm8oaSktPmlzX3Jl
cG9ydGFibGUoKSkKKyAgICAgIE91dHB1dFhtbFRlc3RJbmZvKHN0cmVhbSwgdGVzdF9zdWl0ZS5u
YW1lKCksICp0ZXN0X3N1aXRlLkdldFRlc3RJbmZvKGkpKTsKICAgfQogICAqc3RyZWFtIDw8ICIg
IDwvIiA8PCBrVGVzdHN1aXRlIDw8ICI+XG4iOwogfQpAQCAtMzc5NCwxMSArNDA3NiwxMSBAQCB2
b2lkIFhtbFVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6UHJpbnRYbWxVbml0VGVzdChzdGQ6Om9zdHJl
YW0qIHN0cmVhbSwKICAgICAgIHN0cmVhbSwga1Rlc3RzdWl0ZXMsICJkaXNhYmxlZCIsCiAgICAg
ICBTdHJlYW1hYmxlVG9TdHJpbmcodW5pdF90ZXN0LnJlcG9ydGFibGVfZGlzYWJsZWRfdGVzdF9j
b3VudCgpKSk7CiAgIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0sIGtUZXN0c3VpdGVzLCAiZXJy
b3JzIiwgIjAiKTsKKyAgT3V0cHV0WG1sQXR0cmlidXRlKHN0cmVhbSwga1Rlc3RzdWl0ZXMsICJ0
aW1lIiwKKyAgICAgICAgICAgICAgICAgICAgIEZvcm1hdFRpbWVJbk1pbGxpc0FzU2Vjb25kcyh1
bml0X3Rlc3QuZWxhcHNlZF90aW1lKCkpKTsKICAgT3V0cHV0WG1sQXR0cmlidXRlKAogICAgICAg
c3RyZWFtLCBrVGVzdHN1aXRlcywgInRpbWVzdGFtcCIsCiAgICAgICBGb3JtYXRFcG9jaFRpbWVJ
bk1pbGxpc0FzSXNvODYwMSh1bml0X3Rlc3Quc3RhcnRfdGltZXN0YW1wKCkpKTsKLSAgT3V0cHV0
WG1sQXR0cmlidXRlKHN0cmVhbSwga1Rlc3RzdWl0ZXMsICJ0aW1lIiwKLSAgICAgICAgICAgICAg
ICAgICAgIEZvcm1hdFRpbWVJbk1pbGxpc0FzU2Vjb25kcyh1bml0X3Rlc3QuZWxhcHNlZF90aW1l
KCkpKTsKIAogICBpZiAoR1RFU1RfRkxBRyhzaHVmZmxlKSkgewogICAgIE91dHB1dFhtbEF0dHJp
YnV0ZShzdHJlYW0sIGtUZXN0c3VpdGVzLCAicmFuZG9tX3NlZWQiLApAQCAtMzgwOSwzMSArNDA5
MSwzMSBAQCB2b2lkIFhtbFVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6UHJpbnRYbWxVbml0VGVzdChz
dGQ6Om9zdHJlYW0qIHN0cmVhbSwKICAgT3V0cHV0WG1sQXR0cmlidXRlKHN0cmVhbSwga1Rlc3Rz
dWl0ZXMsICJuYW1lIiwgIkFsbFRlc3RzIik7CiAgICpzdHJlYW0gPDwgIj5cbiI7CiAKLSAgZm9y
IChpbnQgaSA9IDA7IGkgPCB1bml0X3Rlc3QudG90YWxfdGVzdF9jYXNlX2NvdW50KCk7ICsraSkg
ewotICAgIGlmICh1bml0X3Rlc3QuR2V0VGVzdENhc2UoaSktPnJlcG9ydGFibGVfdGVzdF9jb3Vu
dCgpID4gMCkKLSAgICAgIFByaW50WG1sVGVzdENhc2Uoc3RyZWFtLCAqdW5pdF90ZXN0LkdldFRl
c3RDYXNlKGkpKTsKKyAgZm9yIChpbnQgaSA9IDA7IGkgPCB1bml0X3Rlc3QudG90YWxfdGVzdF9z
dWl0ZV9jb3VudCgpOyArK2kpIHsKKyAgICBpZiAodW5pdF90ZXN0LkdldFRlc3RTdWl0ZShpKS0+
cmVwb3J0YWJsZV90ZXN0X2NvdW50KCkgPiAwKQorICAgICAgUHJpbnRYbWxUZXN0U3VpdGUoc3Ry
ZWFtLCAqdW5pdF90ZXN0LkdldFRlc3RTdWl0ZShpKSk7CiAgIH0KICAgKnN0cmVhbSA8PCAiPC8i
IDw8IGtUZXN0c3VpdGVzIDw8ICI+XG4iOwogfQogCiB2b2lkIFhtbFVuaXRUZXN0UmVzdWx0UHJp
bnRlcjo6UHJpbnRYbWxUZXN0c0xpc3QoCi0gICAgc3RkOjpvc3RyZWFtKiBzdHJlYW0sIGNvbnN0
IHN0ZDo6dmVjdG9yPFRlc3RDYXNlKj4mIHRlc3RfY2FzZXMpIHsKKyAgICBzdGQ6Om9zdHJlYW0q
IHN0cmVhbSwgY29uc3Qgc3RkOjp2ZWN0b3I8VGVzdFN1aXRlKj4mIHRlc3Rfc3VpdGVzKSB7CiAg
IGNvbnN0IHN0ZDo6c3RyaW5nIGtUZXN0c3VpdGVzID0gInRlc3RzdWl0ZXMiOwogCiAgICpzdHJl
YW0gPDwgIjw/eG1sIHZlcnNpb249XCIxLjBcIiBlbmNvZGluZz1cIlVURi04XCI/PlxuIjsKICAg
KnN0cmVhbSA8PCAiPCIgPDwga1Rlc3RzdWl0ZXM7CiAKICAgaW50IHRvdGFsX3Rlc3RzID0gMDsK
LSAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCB0ZXN0X2Nhc2VzLnNpemUoKTsgKytpKSB7Ci0gICAg
dG90YWxfdGVzdHMgKz0gdGVzdF9jYXNlc1tpXS0+dG90YWxfdGVzdF9jb3VudCgpOworICBmb3Ig
KGF1dG8gdGVzdF9zdWl0ZSA6IHRlc3Rfc3VpdGVzKSB7CisgICAgdG90YWxfdGVzdHMgKz0gdGVz
dF9zdWl0ZS0+dG90YWxfdGVzdF9jb3VudCgpOwogICB9CiAgIE91dHB1dFhtbEF0dHJpYnV0ZShz
dHJlYW0sIGtUZXN0c3VpdGVzLCAidGVzdHMiLAogICAgICAgICAgICAgICAgICAgICAgU3RyZWFt
YWJsZVRvU3RyaW5nKHRvdGFsX3Rlc3RzKSk7CiAgIE91dHB1dFhtbEF0dHJpYnV0ZShzdHJlYW0s
IGtUZXN0c3VpdGVzLCAibmFtZSIsICJBbGxUZXN0cyIpOwogICAqc3RyZWFtIDw8ICI+XG4iOwog
Ci0gIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgdGVzdF9jYXNlcy5zaXplKCk7ICsraSkgewotICAg
IFByaW50WG1sVGVzdENhc2Uoc3RyZWFtLCAqdGVzdF9jYXNlc1tpXSk7CisgIGZvciAoYXV0byB0
ZXN0X3N1aXRlIDogdGVzdF9zdWl0ZXMpIHsKKyAgICBQcmludFhtbFRlc3RTdWl0ZShzdHJlYW0s
ICp0ZXN0X3N1aXRlKTsKICAgfQogICAqc3RyZWFtIDw8ICI8LyIgPDwga1Rlc3RzdWl0ZXMgPDwg
Ij5cbiI7CiB9CkBAIC0zODc4LDExICs0MTYwLDExIEBAIGNsYXNzIEpzb25Vbml0VGVzdFJlc3Vs
dFByaW50ZXIgOiBwdWJsaWMgRW1wdHlUZXN0RXZlbnRMaXN0ZW5lciB7CiAgcHVibGljOgogICBl
eHBsaWNpdCBKc29uVW5pdFRlc3RSZXN1bHRQcmludGVyKGNvbnN0IGNoYXIqIG91dHB1dF9maWxl
KTsKIAotICB2aXJ0dWFsIHZvaWQgT25UZXN0SXRlcmF0aW9uRW5kKGNvbnN0IFVuaXRUZXN0JiB1
bml0X3Rlc3QsIGludCBpdGVyYXRpb24pOworICB2b2lkIE9uVGVzdEl0ZXJhdGlvbkVuZChjb25z
dCBVbml0VGVzdCYgdW5pdF90ZXN0LCBpbnQgaXRlcmF0aW9uKSBvdmVycmlkZTsKIAogICAvLyBQ
cmludHMgYW4gSlNPTiBzdW1tYXJ5IG9mIGFsbCB1bml0IHRlc3RzLgogICBzdGF0aWMgdm9pZCBQ
cmludEpzb25UZXN0TGlzdCg6OnN0ZDo6b3N0cmVhbSogc3RyZWFtLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6OnZlY3RvcjxUZXN0Q2FzZSo+JiB0ZXN0X2Nhc2Vz
KTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RkOjp2ZWN0b3I8VGVz
dFN1aXRlKj4mIHRlc3Rfc3VpdGVzKTsKIAogIHByaXZhdGU6CiAgIC8vIFJldHVybnMgYW4gSlNP
Ti1lc2NhcGVkIGNvcHkgb2YgdGhlIGlucHV0IHN0cmluZyBzdHIuCkBAIC0zOTA1LDEyICs0MTg3
LDEyIEBAIGNsYXNzIEpzb25Vbml0VGVzdFJlc3VsdFByaW50ZXIgOiBwdWJsaWMgRW1wdHlUZXN0
RXZlbnRMaXN0ZW5lciB7CiAKICAgLy8gU3RyZWFtcyBhIEpTT04gcmVwcmVzZW50YXRpb24gb2Yg
YSBUZXN0SW5mbyBvYmplY3QuCiAgIHN0YXRpYyB2b2lkIE91dHB1dEpzb25UZXN0SW5mbyg6OnN0
ZDo6b3N0cmVhbSogc3RyZWFtLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u
c3QgY2hhciogdGVzdF9jYXNlX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBjaGFyKiB0ZXN0X3N1aXRlX25hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCBUZXN0SW5mbyYgdGVzdF9pbmZvKTsKIAotICAvLyBQcmludHMgYSBKU09O
IHJlcHJlc2VudGF0aW9uIG9mIGEgVGVzdENhc2Ugb2JqZWN0Ci0gIHN0YXRpYyB2b2lkIFByaW50
SnNvblRlc3RDYXNlKDo6c3RkOjpvc3RyZWFtKiBzdHJlYW0sCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IFRlc3RDYXNlJiB0ZXN0X2Nhc2UpOworICAvLyBQcmludHMgYSBK
U09OIHJlcHJlc2VudGF0aW9uIG9mIGEgVGVzdFN1aXRlIG9iamVjdAorICBzdGF0aWMgdm9pZCBQ
cmludEpzb25UZXN0U3VpdGUoOjpzdGQ6Om9zdHJlYW0qIHN0cmVhbSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IFRlc3RTdWl0ZSYgdGVzdF9zdWl0ZSk7CiAKICAgLy8g
UHJpbnRzIGEgSlNPTiBzdW1tYXJ5IG9mIHVuaXRfdGVzdCB0byBvdXRwdXQgc3RyZWFtIG91dC4K
ICAgc3RhdGljIHZvaWQgUHJpbnRKc29uVW5pdFRlc3QoOjpzdGQ6Om9zdHJlYW0qIHN0cmVhbSwK
QEAgLTQwMDksNyArNDI5MSw3IEBAIHN0YXRpYyBzdGQ6OnN0cmluZyBGb3JtYXRFcG9jaFRpbWVJ
bk1pbGxpc0FzUkZDMzMzOShUaW1lSW5NaWxsaXMgbXMpIHsKICAgICAgIFN0cmluZzo6Rm9ybWF0
SW50V2lkdGgyKHRpbWVfc3RydWN0LnRtX3NlYykgKyAiWiI7CiB9CiAKLXN0YXRpYyBpbmxpbmUg
c3RkOjpzdHJpbmcgSW5kZW50KGludCB3aWR0aCkgeworc3RhdGljIGlubGluZSBzdGQ6OnN0cmlu
ZyBJbmRlbnQoc2l6ZV90IHdpZHRoKSB7CiAgIHJldHVybiBzdGQ6OnN0cmluZyh3aWR0aCwgJyAn
KTsKIH0KIApAQCAtNDAyMSw3ICs0MzAzLDcgQEAgdm9pZCBKc29uVW5pdFRlc3RSZXN1bHRQcmlu
dGVyOjpPdXRwdXRKc29uS2V5KAogICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBpbmRlbnQsCiAgICAg
Ym9vbCBjb21tYSkgewogICBjb25zdCBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4mIGFsbG93ZWRf
bmFtZXMgPQotICAgICAgR2V0UmVzZXJ2ZWRBdHRyaWJ1dGVzRm9yRWxlbWVudChlbGVtZW50X25h
bWUpOworICAgICAgR2V0UmVzZXJ2ZWRPdXRwdXRBdHRyaWJ1dGVzRm9yRWxlbWVudChlbGVtZW50
X25hbWUpOwogCiAgIEdURVNUX0NIRUNLXyhzdGQ6OmZpbmQoYWxsb3dlZF9uYW1lcy5iZWdpbigp
LCBhbGxvd2VkX25hbWVzLmVuZCgpLCBuYW1lKSAhPQogICAgICAgICAgICAgICAgICAgIGFsbG93
ZWRfbmFtZXMuZW5kKCkpCkBAIC00MDQxLDcgKzQzMjMsNyBAQCB2b2lkIEpzb25Vbml0VGVzdFJl
c3VsdFByaW50ZXI6Ok91dHB1dEpzb25LZXkoCiAgICAgY29uc3Qgc3RkOjpzdHJpbmcmIGluZGVu
dCwKICAgICBib29sIGNvbW1hKSB7CiAgIGNvbnN0IHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiYg
YWxsb3dlZF9uYW1lcyA9Ci0gICAgICBHZXRSZXNlcnZlZEF0dHJpYnV0ZXNGb3JFbGVtZW50KGVs
ZW1lbnRfbmFtZSk7CisgICAgICBHZXRSZXNlcnZlZE91dHB1dEF0dHJpYnV0ZXNGb3JFbGVtZW50
KGVsZW1lbnRfbmFtZSk7CiAKICAgR1RFU1RfQ0hFQ0tfKHN0ZDo6ZmluZChhbGxvd2VkX25hbWVz
LmJlZ2luKCksIGFsbG93ZWRfbmFtZXMuZW5kKCksIG5hbWUpICE9CiAgICAgICAgICAgICAgICAg
ICAgYWxsb3dlZF9uYW1lcy5lbmQoKSkKQEAgLTQwNTUsMzUgKzQzMzcsNDQgQEAgdm9pZCBKc29u
VW5pdFRlc3RSZXN1bHRQcmludGVyOjpPdXRwdXRKc29uS2V5KAogCiAvLyBQcmludHMgYSBKU09O
IHJlcHJlc2VudGF0aW9uIG9mIGEgVGVzdEluZm8gb2JqZWN0Lgogdm9pZCBKc29uVW5pdFRlc3RS
ZXN1bHRQcmludGVyOjpPdXRwdXRKc29uVGVzdEluZm8oOjpzdGQ6Om9zdHJlYW0qIHN0cmVhbSwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IGNoYXIqIHRlc3RfY2FzZV9uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciogdGVzdF9zdWl0ZV9uYW1lLAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVGVzdEluZm8m
IHRlc3RfaW5mbykgewogICBjb25zdCBUZXN0UmVzdWx0JiByZXN1bHQgPSAqdGVzdF9pbmZvLnJl
c3VsdCgpOwotICBjb25zdCBzdGQ6OnN0cmluZyBrVGVzdGNhc2UgPSAidGVzdGNhc2UiOworICBj
b25zdCBzdGQ6OnN0cmluZyBrVGVzdHN1aXRlID0gInRlc3RjYXNlIjsKICAgY29uc3Qgc3RkOjpz
dHJpbmcga0luZGVudCA9IEluZGVudCgxMCk7CiAKICAgKnN0cmVhbSA8PCBJbmRlbnQoOCkgPDwg
IntcbiI7Ci0gIE91dHB1dEpzb25LZXkoc3RyZWFtLCBrVGVzdGNhc2UsICJuYW1lIiwgdGVzdF9p
bmZvLm5hbWUoKSwga0luZGVudCk7CisgIE91dHB1dEpzb25LZXkoc3RyZWFtLCBrVGVzdHN1aXRl
LCAibmFtZSIsIHRlc3RfaW5mby5uYW1lKCksIGtJbmRlbnQpOwogCi0gIGlmICh0ZXN0X2luZm8u
dmFsdWVfcGFyYW0oKSAhPSBOVUxMKSB7Ci0gICAgT3V0cHV0SnNvbktleShzdHJlYW0sIGtUZXN0
Y2FzZSwgInZhbHVlX3BhcmFtIiwKLSAgICAgICAgICAgICAgICAgIHRlc3RfaW5mby52YWx1ZV9w
YXJhbSgpLCBrSW5kZW50KTsKKyAgaWYgKHRlc3RfaW5mby52YWx1ZV9wYXJhbSgpICE9IG51bGxw
dHIpIHsKKyAgICBPdXRwdXRKc29uS2V5KHN0cmVhbSwga1Rlc3RzdWl0ZSwgInZhbHVlX3BhcmFt
IiwgdGVzdF9pbmZvLnZhbHVlX3BhcmFtKCksCisgICAgICAgICAgICAgICAgICBrSW5kZW50KTsK
ICAgfQotICBpZiAodGVzdF9pbmZvLnR5cGVfcGFyYW0oKSAhPSBOVUxMKSB7Ci0gICAgT3V0cHV0
SnNvbktleShzdHJlYW0sIGtUZXN0Y2FzZSwgInR5cGVfcGFyYW0iLCB0ZXN0X2luZm8udHlwZV9w
YXJhbSgpLAorICBpZiAodGVzdF9pbmZvLnR5cGVfcGFyYW0oKSAhPSBudWxscHRyKSB7CisgICAg
T3V0cHV0SnNvbktleShzdHJlYW0sIGtUZXN0c3VpdGUsICJ0eXBlX3BhcmFtIiwgdGVzdF9pbmZv
LnR5cGVfcGFyYW0oKSwKICAgICAgICAgICAgICAgICAgIGtJbmRlbnQpOwogICB9CiAgIGlmIChH
VEVTVF9GTEFHKGxpc3RfdGVzdHMpKSB7Ci0gICAgT3V0cHV0SnNvbktleShzdHJlYW0sIGtUZXN0
Y2FzZSwgImZpbGUiLCB0ZXN0X2luZm8uZmlsZSgpLCBrSW5kZW50KTsKLSAgICBPdXRwdXRKc29u
S2V5KHN0cmVhbSwga1Rlc3RjYXNlLCAibGluZSIsIHRlc3RfaW5mby5saW5lKCksIGtJbmRlbnQs
IGZhbHNlKTsKKyAgICBPdXRwdXRKc29uS2V5KHN0cmVhbSwga1Rlc3RzdWl0ZSwgImZpbGUiLCB0
ZXN0X2luZm8uZmlsZSgpLCBrSW5kZW50KTsKKyAgICBPdXRwdXRKc29uS2V5KHN0cmVhbSwga1Rl
c3RzdWl0ZSwgImxpbmUiLCB0ZXN0X2luZm8ubGluZSgpLCBrSW5kZW50LCBmYWxzZSk7CiAgICAg
KnN0cmVhbSA8PCAiXG4iIDw8IEluZGVudCg4KSA8PCAifSI7CiAgICAgcmV0dXJuOwogICB9CiAK
LSAgT3V0cHV0SnNvbktleShzdHJlYW0sIGtUZXN0Y2FzZSwgInN0YXR1cyIsCisgIE91dHB1dEpz
b25LZXkoc3RyZWFtLCBrVGVzdHN1aXRlLCAic3RhdHVzIiwKICAgICAgICAgICAgICAgICB0ZXN0
X2luZm8uc2hvdWxkX3J1bigpID8gIlJVTiIgOiAiTk9UUlVOIiwga0luZGVudCk7Ci0gIE91dHB1
dEpzb25LZXkoc3RyZWFtLCBrVGVzdGNhc2UsICJ0aW1lIiwKKyAgT3V0cHV0SnNvbktleShzdHJl
YW0sIGtUZXN0c3VpdGUsICJyZXN1bHQiLAorICAgICAgICAgICAgICAgIHRlc3RfaW5mby5zaG91
bGRfcnVuKCkKKyAgICAgICAgICAgICAgICAgICAgPyAocmVzdWx0LlNraXBwZWQoKSA/ICJTS0lQ
UEVEIiA6ICJDT01QTEVURUQiKQorICAgICAgICAgICAgICAgICAgICA6ICJTVVBQUkVTU0VEIiwK
KyAgICAgICAgICAgICAgICBrSW5kZW50KTsKKyAgT3V0cHV0SnNvbktleShzdHJlYW0sIGtUZXN0
c3VpdGUsICJ0aW1lc3RhbXAiLAorICAgICAgICAgICAgICAgIEZvcm1hdEVwb2NoVGltZUluTWls
bGlzQXNSRkMzMzM5KHJlc3VsdC5zdGFydF90aW1lc3RhbXAoKSksCisgICAgICAgICAgICAgICAg
a0luZGVudCk7CisgIE91dHB1dEpzb25LZXkoc3RyZWFtLCBrVGVzdHN1aXRlLCAidGltZSIsCiAg
ICAgICAgICAgICAgICAgRm9ybWF0VGltZUluTWlsbGlzQXNEdXJhdGlvbihyZXN1bHQuZWxhcHNl
ZF90aW1lKCkpLCBrSW5kZW50KTsKLSAgT3V0cHV0SnNvbktleShzdHJlYW0sIGtUZXN0Y2FzZSwg
ImNsYXNzbmFtZSIsIHRlc3RfY2FzZV9uYW1lLCBrSW5kZW50LCBmYWxzZSk7CisgIE91dHB1dEpz
b25LZXkoc3RyZWFtLCBrVGVzdHN1aXRlLCAiY2xhc3NuYW1lIiwgdGVzdF9zdWl0ZV9uYW1lLCBr
SW5kZW50LAorICAgICAgICAgICAgICAgIGZhbHNlKTsKICAgKnN0cmVhbSA8PCBUZXN0UHJvcGVy
dGllc0FzSnNvbihyZXN1bHQsIGtJbmRlbnQpOwogCiAgIGludCBmYWlsdXJlcyA9IDA7CkBAIC00
MTEwLDQwICs0NDAxLDQ0IEBAIHZvaWQgSnNvblVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6T3V0cHV0
SnNvblRlc3RJbmZvKDo6c3RkOjpvc3RyZWFtKiBzdHJlYW0sCiAgICpzdHJlYW0gPDwgIlxuIiA8
PCBJbmRlbnQoOCkgPDwgIn0iOwogfQogCi0vLyBQcmludHMgYW4gSlNPTiByZXByZXNlbnRhdGlv
biBvZiBhIFRlc3RDYXNlIG9iamVjdAotdm9pZCBKc29uVW5pdFRlc3RSZXN1bHRQcmludGVyOjpQ
cmludEpzb25UZXN0Q2FzZShzdGQ6Om9zdHJlYW0qIHN0cmVhbSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgVGVzdENhc2UmIHRlc3RfY2Fz
ZSkgeworLy8gUHJpbnRzIGFuIEpTT04gcmVwcmVzZW50YXRpb24gb2YgYSBUZXN0U3VpdGUgb2Jq
ZWN0Cit2b2lkIEpzb25Vbml0VGVzdFJlc3VsdFByaW50ZXI6OlByaW50SnNvblRlc3RTdWl0ZSgK
KyAgICBzdGQ6Om9zdHJlYW0qIHN0cmVhbSwgY29uc3QgVGVzdFN1aXRlJiB0ZXN0X3N1aXRlKSB7
CiAgIGNvbnN0IHN0ZDo6c3RyaW5nIGtUZXN0c3VpdGUgPSAidGVzdHN1aXRlIjsKICAgY29uc3Qg
c3RkOjpzdHJpbmcga0luZGVudCA9IEluZGVudCg2KTsKIAogICAqc3RyZWFtIDw8IEluZGVudCg0
KSA8PCAie1xuIjsKLSAgT3V0cHV0SnNvbktleShzdHJlYW0sIGtUZXN0c3VpdGUsICJuYW1lIiwg
dGVzdF9jYXNlLm5hbWUoKSwga0luZGVudCk7Ci0gIE91dHB1dEpzb25LZXkoc3RyZWFtLCBrVGVz
dHN1aXRlLCAidGVzdHMiLCB0ZXN0X2Nhc2UucmVwb3J0YWJsZV90ZXN0X2NvdW50KCksCisgIE91
dHB1dEpzb25LZXkoc3RyZWFtLCBrVGVzdHN1aXRlLCAibmFtZSIsIHRlc3Rfc3VpdGUubmFtZSgp
LCBrSW5kZW50KTsKKyAgT3V0cHV0SnNvbktleShzdHJlYW0sIGtUZXN0c3VpdGUsICJ0ZXN0cyIs
IHRlc3Rfc3VpdGUucmVwb3J0YWJsZV90ZXN0X2NvdW50KCksCiAgICAgICAgICAgICAgICAga0lu
ZGVudCk7CiAgIGlmICghR1RFU1RfRkxBRyhsaXN0X3Rlc3RzKSkgewotICAgIE91dHB1dEpzb25L
ZXkoc3RyZWFtLCBrVGVzdHN1aXRlLCAiZmFpbHVyZXMiLCB0ZXN0X2Nhc2UuZmFpbGVkX3Rlc3Rf
Y291bnQoKSwKLSAgICAgICAgICAgICAgICAgIGtJbmRlbnQpOworICAgIE91dHB1dEpzb25LZXko
c3RyZWFtLCBrVGVzdHN1aXRlLCAiZmFpbHVyZXMiLAorICAgICAgICAgICAgICAgICAgdGVzdF9z
dWl0ZS5mYWlsZWRfdGVzdF9jb3VudCgpLCBrSW5kZW50KTsKICAgICBPdXRwdXRKc29uS2V5KHN0
cmVhbSwga1Rlc3RzdWl0ZSwgImRpc2FibGVkIiwKLSAgICAgICAgICAgICAgICAgIHRlc3RfY2Fz
ZS5yZXBvcnRhYmxlX2Rpc2FibGVkX3Rlc3RfY291bnQoKSwga0luZGVudCk7CisgICAgICAgICAg
ICAgICAgICB0ZXN0X3N1aXRlLnJlcG9ydGFibGVfZGlzYWJsZWRfdGVzdF9jb3VudCgpLCBrSW5k
ZW50KTsKICAgICBPdXRwdXRKc29uS2V5KHN0cmVhbSwga1Rlc3RzdWl0ZSwgImVycm9ycyIsIDAs
IGtJbmRlbnQpOworICAgIE91dHB1dEpzb25LZXkoCisgICAgICAgIHN0cmVhbSwga1Rlc3RzdWl0
ZSwgInRpbWVzdGFtcCIsCisgICAgICAgIEZvcm1hdEVwb2NoVGltZUluTWlsbGlzQXNSRkMzMzM5
KHRlc3Rfc3VpdGUuc3RhcnRfdGltZXN0YW1wKCkpLAorICAgICAgICBrSW5kZW50KTsKICAgICBP
dXRwdXRKc29uS2V5KHN0cmVhbSwga1Rlc3RzdWl0ZSwgInRpbWUiLAotICAgICAgICAgICAgICAg
ICAgRm9ybWF0VGltZUluTWlsbGlzQXNEdXJhdGlvbih0ZXN0X2Nhc2UuZWxhcHNlZF90aW1lKCkp
LAorICAgICAgICAgICAgICAgICAgRm9ybWF0VGltZUluTWlsbGlzQXNEdXJhdGlvbih0ZXN0X3N1
aXRlLmVsYXBzZWRfdGltZSgpKSwKICAgICAgICAgICAgICAgICAgIGtJbmRlbnQsIGZhbHNlKTsK
LSAgICAqc3RyZWFtIDw8IFRlc3RQcm9wZXJ0aWVzQXNKc29uKHRlc3RfY2FzZS5hZF9ob2NfdGVz
dF9yZXN1bHQoKSwga0luZGVudCkKKyAgICAqc3RyZWFtIDw8IFRlc3RQcm9wZXJ0aWVzQXNKc29u
KHRlc3Rfc3VpdGUuYWRfaG9jX3Rlc3RfcmVzdWx0KCksIGtJbmRlbnQpCiAgICAgICAgICAgICA8
PCAiLFxuIjsKICAgfQogCiAgICpzdHJlYW0gPDwga0luZGVudCA8PCAiXCIiIDw8IGtUZXN0c3Vp
dGUgPDwgIlwiOiBbXG4iOwogCiAgIGJvb2wgY29tbWEgPSBmYWxzZTsKLSAgZm9yIChpbnQgaSA9
IDA7IGkgPCB0ZXN0X2Nhc2UudG90YWxfdGVzdF9jb3VudCgpOyArK2kpIHsKLSAgICBpZiAodGVz
dF9jYXNlLkdldFRlc3RJbmZvKGkpLT5pc19yZXBvcnRhYmxlKCkpIHsKKyAgZm9yIChpbnQgaSA9
IDA7IGkgPCB0ZXN0X3N1aXRlLnRvdGFsX3Rlc3RfY291bnQoKTsgKytpKSB7CisgICAgaWYgKHRl
c3Rfc3VpdGUuR2V0VGVzdEluZm8oaSktPmlzX3JlcG9ydGFibGUoKSkgewogICAgICAgaWYgKGNv
bW1hKSB7CiAgICAgICAgICpzdHJlYW0gPDwgIixcbiI7CiAgICAgICB9IGVsc2UgewogICAgICAg
ICBjb21tYSA9IHRydWU7CiAgICAgICB9Ci0gICAgICBPdXRwdXRKc29uVGVzdEluZm8oc3RyZWFt
LCB0ZXN0X2Nhc2UubmFtZSgpLCAqdGVzdF9jYXNlLkdldFRlc3RJbmZvKGkpKTsKKyAgICAgIE91
dHB1dEpzb25UZXN0SW5mbyhzdHJlYW0sIHRlc3Rfc3VpdGUubmFtZSgpLCAqdGVzdF9zdWl0ZS5H
ZXRUZXN0SW5mbyhpKSk7CiAgICAgfQogICB9CiAgICpzdHJlYW0gPDwgIlxuIiA8PCBrSW5kZW50
IDw8ICJdXG4iIDw8IEluZGVudCg0KSA8PCAifSI7CkBAIC00MTgxLDE0ICs0NDc2LDE0IEBAIHZv
aWQgSnNvblVuaXRUZXN0UmVzdWx0UHJpbnRlcjo6UHJpbnRKc29uVW5pdFRlc3Qoc3RkOjpvc3Ry
ZWFtKiBzdHJlYW0sCiAgICpzdHJlYW0gPDwga0luZGVudCA8PCAiXCIiIDw8IGtUZXN0c3VpdGVz
IDw8ICJcIjogW1xuIjsKIAogICBib29sIGNvbW1hID0gZmFsc2U7Ci0gIGZvciAoaW50IGkgPSAw
OyBpIDwgdW5pdF90ZXN0LnRvdGFsX3Rlc3RfY2FzZV9jb3VudCgpOyArK2kpIHsKLSAgICBpZiAo
dW5pdF90ZXN0LkdldFRlc3RDYXNlKGkpLT5yZXBvcnRhYmxlX3Rlc3RfY291bnQoKSA+IDApIHsK
KyAgZm9yIChpbnQgaSA9IDA7IGkgPCB1bml0X3Rlc3QudG90YWxfdGVzdF9zdWl0ZV9jb3VudCgp
OyArK2kpIHsKKyAgICBpZiAodW5pdF90ZXN0LkdldFRlc3RTdWl0ZShpKS0+cmVwb3J0YWJsZV90
ZXN0X2NvdW50KCkgPiAwKSB7CiAgICAgICBpZiAoY29tbWEpIHsKICAgICAgICAgKnN0cmVhbSA8
PCAiLFxuIjsKICAgICAgIH0gZWxzZSB7CiAgICAgICAgIGNvbW1hID0gdHJ1ZTsKICAgICAgIH0K
LSAgICAgIFByaW50SnNvblRlc3RDYXNlKHN0cmVhbSwgKnVuaXRfdGVzdC5HZXRUZXN0Q2FzZShp
KSk7CisgICAgICBQcmludEpzb25UZXN0U3VpdGUoc3RyZWFtLCAqdW5pdF90ZXN0LkdldFRlc3RT
dWl0ZShpKSk7CiAgICAgfQogICB9CiAKQEAgLTQxOTYsMjQgKzQ0OTEsMjQgQEAgdm9pZCBKc29u
VW5pdFRlc3RSZXN1bHRQcmludGVyOjpQcmludEpzb25Vbml0VGVzdChzdGQ6Om9zdHJlYW0qIHN0
cmVhbSwKIH0KIAogdm9pZCBKc29uVW5pdFRlc3RSZXN1bHRQcmludGVyOjpQcmludEpzb25UZXN0
TGlzdCgKLSAgICBzdGQ6Om9zdHJlYW0qIHN0cmVhbSwgY29uc3Qgc3RkOjp2ZWN0b3I8VGVzdENh
c2UqPiYgdGVzdF9jYXNlcykgeworICAgIHN0ZDo6b3N0cmVhbSogc3RyZWFtLCBjb25zdCBzdGQ6
OnZlY3RvcjxUZXN0U3VpdGUqPiYgdGVzdF9zdWl0ZXMpIHsKICAgY29uc3Qgc3RkOjpzdHJpbmcg
a1Rlc3RzdWl0ZXMgPSAidGVzdHN1aXRlcyI7CiAgIGNvbnN0IHN0ZDo6c3RyaW5nIGtJbmRlbnQg
PSBJbmRlbnQoMik7CiAgICpzdHJlYW0gPDwgIntcbiI7CiAgIGludCB0b3RhbF90ZXN0cyA9IDA7
Ci0gIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgdGVzdF9jYXNlcy5zaXplKCk7ICsraSkgewotICAg
IHRvdGFsX3Rlc3RzICs9IHRlc3RfY2FzZXNbaV0tPnRvdGFsX3Rlc3RfY291bnQoKTsKKyAgZm9y
IChhdXRvIHRlc3Rfc3VpdGUgOiB0ZXN0X3N1aXRlcykgeworICAgIHRvdGFsX3Rlc3RzICs9IHRl
c3Rfc3VpdGUtPnRvdGFsX3Rlc3RfY291bnQoKTsKICAgfQogICBPdXRwdXRKc29uS2V5KHN0cmVh
bSwga1Rlc3RzdWl0ZXMsICJ0ZXN0cyIsIHRvdGFsX3Rlc3RzLCBrSW5kZW50KTsKIAogICBPdXRw
dXRKc29uS2V5KHN0cmVhbSwga1Rlc3RzdWl0ZXMsICJuYW1lIiwgIkFsbFRlc3RzIiwga0luZGVu
dCk7CiAgICpzdHJlYW0gPDwga0luZGVudCA8PCAiXCIiIDw8IGtUZXN0c3VpdGVzIDw8ICJcIjog
W1xuIjsKIAotICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHRlc3RfY2FzZXMuc2l6ZSgpOyArK2kp
IHsKKyAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCB0ZXN0X3N1aXRlcy5zaXplKCk7ICsraSkgewog
ICAgIGlmIChpICE9IDApIHsKICAgICAgICpzdHJlYW0gPDwgIixcbiI7CiAgICAgfQotICAgIFBy
aW50SnNvblRlc3RDYXNlKHN0cmVhbSwgKnRlc3RfY2FzZXNbaV0pOworICAgIFByaW50SnNvblRl
c3RTdWl0ZShzdHJlYW0sICp0ZXN0X3N1aXRlc1tpXSk7CiAgIH0KIAogICAqc3RyZWFtIDw8ICJc
biIKQEAgLTQyNjksNyArNDU2NCw3IEBAIHZvaWQgU3RyZWFtaW5nTGlzdGVuZXI6OlNvY2tldFdy
aXRlcjo6TWFrZUNvbm5lY3Rpb24oKSB7CiAgIG1lbXNldCgmaGludHMsIDAsIHNpemVvZihoaW50
cykpOwogICBoaW50cy5haV9mYW1pbHkgPSBBRl9VTlNQRUM7ICAgIC8vIFRvIGFsbG93IGJvdGgg
SVB2NCBhbmQgSVB2NiBhZGRyZXNzZXMuCiAgIGhpbnRzLmFpX3NvY2t0eXBlID0gU09DS19TVFJF
QU07Ci0gIGFkZHJpbmZvKiBzZXJ2aW5mbyA9IE5VTEw7CisgIGFkZHJpbmZvKiBzZXJ2aW5mbyA9
IG51bGxwdHI7CiAKICAgLy8gVXNlIHRoZSBnZXRhZGRyaW5mbygpIHRvIGdldCBhIGxpbmtlZCBs
aXN0IG9mIElQIGFkZHJlc3NlcyBmb3IKICAgLy8gdGhlIGdpdmVuIGhvc3QgbmFtZS4KQEAgLTQy
ODEsNyArNDU3Niw3IEBAIHZvaWQgU3RyZWFtaW5nTGlzdGVuZXI6OlNvY2tldFdyaXRlcjo6TWFr
ZUNvbm5lY3Rpb24oKSB7CiAgIH0KIAogICAvLyBMb29wIHRocm91Z2ggYWxsIHRoZSByZXN1bHRz
IGFuZCBjb25uZWN0IHRvIHRoZSBmaXJzdCB3ZSBjYW4uCi0gIGZvciAoYWRkcmluZm8qIGN1cl9h
ZGRyID0gc2VydmluZm87IHNvY2tmZF8gPT0gLTEgJiYgY3VyX2FkZHIgIT0gTlVMTDsKKyAgZm9y
IChhZGRyaW5mbyogY3VyX2FkZHIgPSBzZXJ2aW5mbzsgc29ja2ZkXyA9PSAtMSAmJiBjdXJfYWRk
ciAhPSBudWxscHRyOwogICAgICAgIGN1cl9hZGRyID0gY3VyX2FkZHItPmFpX25leHQpIHsKICAg
ICBzb2NrZmRfID0gc29ja2V0KAogICAgICAgICBjdXJfYWRkci0+YWlfZmFtaWx5LCBjdXJfYWRk
ci0+YWlfc29ja3R5cGUsIGN1cl9hZGRyLT5haV9wcm90b2NvbCk7CkBAIC00MzkxLDYgKzQ2ODYs
NyBAQCBjbGFzcyBTY29wZWRQcmVtYXR1cmVFeGl0RmlsZSB7CiAgIH0KIAogICB+U2NvcGVkUHJl
bWF0dXJlRXhpdEZpbGUoKSB7CisjaWYgIWRlZmluZWQgR1RFU1RfT1NfRVNQODI2NgogICAgIGlm
ICghcHJlbWF0dXJlX2V4aXRfZmlsZXBhdGhfLmVtcHR5KCkpIHsKICAgICAgIGludCByZXR2YWwg
PSByZW1vdmUocHJlbWF0dXJlX2V4aXRfZmlsZXBhdGhfLmNfc3RyKCkpOwogICAgICAgaWYgKHJl
dHZhbCkgewpAQCAtNDM5OSw2ICs0Njk1LDcgQEAgY2xhc3MgU2NvcGVkUHJlbWF0dXJlRXhpdEZp
bGUgewogICAgICAgICAgICAgICAgICAgICAgICAgICA8PCByZXR2YWw7CiAgICAgICB9CiAgICAg
fQorI2VuZGlmCiAgIH0KIAogIHByaXZhdGU6CkBAIC00NDEzLDkgKzQ3MTAsOCBAQCBjbGFzcyBT
Y29wZWRQcmVtYXR1cmVFeGl0RmlsZSB7CiAKIFRlc3RFdmVudExpc3RlbmVyczo6VGVzdEV2ZW50
TGlzdGVuZXJzKCkKICAgICA6IHJlcGVhdGVyXyhuZXcgaW50ZXJuYWw6OlRlc3RFdmVudFJlcGVh
dGVyKCkpLAotICAgICAgZGVmYXVsdF9yZXN1bHRfcHJpbnRlcl8oTlVMTCksCi0gICAgICBkZWZh
dWx0X3htbF9nZW5lcmF0b3JfKE5VTEwpIHsKLX0KKyAgICAgIGRlZmF1bHRfcmVzdWx0X3ByaW50
ZXJfKG51bGxwdHIpLAorICAgICAgZGVmYXVsdF94bWxfZ2VuZXJhdG9yXyhudWxscHRyKSB7fQog
CiBUZXN0RXZlbnRMaXN0ZW5lcnM6On5UZXN0RXZlbnRMaXN0ZW5lcnMoKSB7IGRlbGV0ZSByZXBl
YXRlcl87IH0KIApAQCAtNDQzMiw5ICs0NzI4LDkgQEAgdm9pZCBUZXN0RXZlbnRMaXN0ZW5lcnM6
OkFwcGVuZChUZXN0RXZlbnRMaXN0ZW5lciogbGlzdGVuZXIpIHsKIC8vIE5VTEwgaWYgdGhlIGxp
c3RlbmVyIGlzIG5vdCBmb3VuZCBpbiB0aGUgbGlzdC4KIFRlc3RFdmVudExpc3RlbmVyKiBUZXN0
RXZlbnRMaXN0ZW5lcnM6OlJlbGVhc2UoVGVzdEV2ZW50TGlzdGVuZXIqIGxpc3RlbmVyKSB7CiAg
IGlmIChsaXN0ZW5lciA9PSBkZWZhdWx0X3Jlc3VsdF9wcmludGVyXykKLSAgICBkZWZhdWx0X3Jl
c3VsdF9wcmludGVyXyA9IE5VTEw7CisgICAgZGVmYXVsdF9yZXN1bHRfcHJpbnRlcl8gPSBudWxs
cHRyOwogICBlbHNlIGlmIChsaXN0ZW5lciA9PSBkZWZhdWx0X3htbF9nZW5lcmF0b3JfKQotICAg
IGRlZmF1bHRfeG1sX2dlbmVyYXRvcl8gPSBOVUxMOworICAgIGRlZmF1bHRfeG1sX2dlbmVyYXRv
cl8gPSBudWxscHRyOwogICByZXR1cm4gcmVwZWF0ZXJfLT5SZWxlYXNlKGxpc3RlbmVyKTsKIH0K
IApAQCAtNDQ1Myw4ICs0NzQ5LDcgQEAgdm9pZCBUZXN0RXZlbnRMaXN0ZW5lcnM6OlNldERlZmF1
bHRSZXN1bHRQcmludGVyKFRlc3RFdmVudExpc3RlbmVyKiBsaXN0ZW5lcikgewogICAgIC8vIGxp
c3QuCiAgICAgZGVsZXRlIFJlbGVhc2UoZGVmYXVsdF9yZXN1bHRfcHJpbnRlcl8pOwogICAgIGRl
ZmF1bHRfcmVzdWx0X3ByaW50ZXJfID0gbGlzdGVuZXI7Ci0gICAgaWYgKGxpc3RlbmVyICE9IE5V
TEwpCi0gICAgICBBcHBlbmQobGlzdGVuZXIpOworICAgIGlmIChsaXN0ZW5lciAhPSBudWxscHRy
KSBBcHBlbmQobGlzdGVuZXIpOwogICB9CiB9CiAKQEAgLTQ0NjksOCArNDc2NCw3IEBAIHZvaWQg
VGVzdEV2ZW50TGlzdGVuZXJzOjpTZXREZWZhdWx0WG1sR2VuZXJhdG9yKFRlc3RFdmVudExpc3Rl
bmVyKiBsaXN0ZW5lcikgewogICAgIC8vIGxpc3QuCiAgICAgZGVsZXRlIFJlbGVhc2UoZGVmYXVs
dF94bWxfZ2VuZXJhdG9yXyk7CiAgICAgZGVmYXVsdF94bWxfZ2VuZXJhdG9yXyA9IGxpc3RlbmVy
OwotICAgIGlmIChsaXN0ZW5lciAhPSBOVUxMKQotICAgICAgQXBwZW5kKGxpc3RlbmVyKTsKKyAg
ICBpZiAobGlzdGVuZXIgIT0gbnVsbHB0cikgQXBwZW5kKGxpc3RlbmVyKTsKICAgfQogfQogCkBA
IC00NDk0LDUyICs0Nzg4LDY2IEBAIHZvaWQgVGVzdEV2ZW50TGlzdGVuZXJzOjpTdXBwcmVzc0V2
ZW50Rm9yd2FyZGluZygpIHsKIC8vIGNhbGwgdGhpcyBiZWZvcmUgbWFpbigpIHN0YXJ0cywgZnJv
bSB3aGljaCBwb2ludCBvbiB0aGUgcmV0dXJuCiAvLyB2YWx1ZSB3aWxsIG5ldmVyIGNoYW5nZS4K
IFVuaXRUZXN0KiBVbml0VGVzdDo6R2V0SW5zdGFuY2UoKSB7Ci0gIC8vIFdoZW4gY29tcGlsZWQg
d2l0aCBNU1ZDIDcuMSBpbiBvcHRpbWl6ZWQgbW9kZSwgZGVzdHJveWluZyB0aGUKLSAgLy8gVW5p
dFRlc3Qgb2JqZWN0IHVwb24gZXhpdGluZyB0aGUgcHJvZ3JhbSBtZXNzZXMgdXAgdGhlIGV4aXQg
Y29kZSwKLSAgLy8gY2F1c2luZyBzdWNjZXNzZnVsIHRlc3RzIHRvIGFwcGVhciBmYWlsZWQuICBX
ZSBoYXZlIHRvIHVzZSBhCi0gIC8vIGRpZmZlcmVudCBpbXBsZW1lbnRhdGlvbiBpbiB0aGlzIGNh
c2UgdG8gYnlwYXNzIHRoZSBjb21waWxlciBidWcuCi0gIC8vIFRoaXMgaW1wbGVtZW50YXRpb24g
bWFrZXMgdGhlIGNvbXBpbGVyIGhhcHB5LCBhdCB0aGUgY29zdCBvZgotICAvLyBsZWFraW5nIHRo
ZSBVbml0VGVzdCBvYmplY3QuCi0KICAgLy8gQ29kZUdlYXIgQysrQnVpbGRlciBpbnNpc3RzIG9u
IGEgcHVibGljIGRlc3RydWN0b3IgZm9yIHRoZQogICAvLyBkZWZhdWx0IGltcGxlbWVudGF0aW9u
LiAgVXNlIHRoaXMgaW1wbGVtZW50YXRpb24gdG8ga2VlcCBnb29kIE9PCiAgIC8vIGRlc2lnbiB3
aXRoIHByaXZhdGUgZGVzdHJ1Y3Rvci4KIAotI2lmIChfTVNDX1ZFUiA9PSAxMzEwICYmICFkZWZp
bmVkKF9ERUJVRykpIHx8IGRlZmluZWQoX19CT1JMQU5EQ19fKQorI2lmIGRlZmluZWQoX19CT1JM
QU5EQ19fKQogICBzdGF0aWMgVW5pdFRlc3QqIGNvbnN0IGluc3RhbmNlID0gbmV3IFVuaXRUZXN0
OwogICByZXR1cm4gaW5zdGFuY2U7CiAjZWxzZQogICBzdGF0aWMgVW5pdFRlc3QgaW5zdGFuY2U7
CiAgIHJldHVybiAmaW5zdGFuY2U7Ci0jZW5kaWYgIC8vIChfTVNDX1ZFUiA9PSAxMzEwICYmICFk
ZWZpbmVkKF9ERUJVRykpIHx8IGRlZmluZWQoX19CT1JMQU5EQ19fKQorI2VuZGlmICAvLyBkZWZp
bmVkKF9fQk9STEFORENfXykKIH0KIAotLy8gR2V0cyB0aGUgbnVtYmVyIG9mIHN1Y2Nlc3NmdWwg
dGVzdCBjYXNlcy4KLWludCBVbml0VGVzdDo6c3VjY2Vzc2Z1bF90ZXN0X2Nhc2VfY291bnQoKSBj
b25zdCB7Ci0gIHJldHVybiBpbXBsKCktPnN1Y2Nlc3NmdWxfdGVzdF9jYXNlX2NvdW50KCk7Cisv
LyBHZXRzIHRoZSBudW1iZXIgb2Ygc3VjY2Vzc2Z1bCB0ZXN0IHN1aXRlcy4KK2ludCBVbml0VGVz
dDo6c3VjY2Vzc2Z1bF90ZXN0X3N1aXRlX2NvdW50KCkgY29uc3QgeworICByZXR1cm4gaW1wbCgp
LT5zdWNjZXNzZnVsX3Rlc3Rfc3VpdGVfY291bnQoKTsKIH0KIAotLy8gR2V0cyB0aGUgbnVtYmVy
IG9mIGZhaWxlZCB0ZXN0IGNhc2VzLgotaW50IFVuaXRUZXN0OjpmYWlsZWRfdGVzdF9jYXNlX2Nv
dW50KCkgY29uc3QgewotICByZXR1cm4gaW1wbCgpLT5mYWlsZWRfdGVzdF9jYXNlX2NvdW50KCk7
CisvLyBHZXRzIHRoZSBudW1iZXIgb2YgZmFpbGVkIHRlc3Qgc3VpdGVzLgoraW50IFVuaXRUZXN0
OjpmYWlsZWRfdGVzdF9zdWl0ZV9jb3VudCgpIGNvbnN0IHsKKyAgcmV0dXJuIGltcGwoKS0+ZmFp
bGVkX3Rlc3Rfc3VpdGVfY291bnQoKTsKIH0KIAotLy8gR2V0cyB0aGUgbnVtYmVyIG9mIGFsbCB0
ZXN0IGNhc2VzLgotaW50IFVuaXRUZXN0Ojp0b3RhbF90ZXN0X2Nhc2VfY291bnQoKSBjb25zdCB7
Ci0gIHJldHVybiBpbXBsKCktPnRvdGFsX3Rlc3RfY2FzZV9jb3VudCgpOworLy8gR2V0cyB0aGUg
bnVtYmVyIG9mIGFsbCB0ZXN0IHN1aXRlcy4KK2ludCBVbml0VGVzdDo6dG90YWxfdGVzdF9zdWl0
ZV9jb3VudCgpIGNvbnN0IHsKKyAgcmV0dXJuIGltcGwoKS0+dG90YWxfdGVzdF9zdWl0ZV9jb3Vu
dCgpOwogfQogCi0vLyBHZXRzIHRoZSBudW1iZXIgb2YgYWxsIHRlc3QgY2FzZXMgdGhhdCBjb250
YWluIGF0IGxlYXN0IG9uZSB0ZXN0CisvLyBHZXRzIHRoZSBudW1iZXIgb2YgYWxsIHRlc3Qgc3Vp
dGVzIHRoYXQgY29udGFpbiBhdCBsZWFzdCBvbmUgdGVzdAogLy8gdGhhdCBzaG91bGQgcnVuLgor
aW50IFVuaXRUZXN0Ojp0ZXN0X3N1aXRlX3RvX3J1bl9jb3VudCgpIGNvbnN0IHsKKyAgcmV0dXJu
IGltcGwoKS0+dGVzdF9zdWl0ZV90b19ydW5fY291bnQoKTsKK30KKworLy8gIExlZ2FjeSBBUEkg
aXMgZGVwcmVjYXRlZCBidXQgc3RpbGwgYXZhaWxhYmxlCisjaWZuZGVmIEdURVNUX1JFTU9WRV9M
RUdBQ1lfVEVTVF9DQVNFQVBJXworaW50IFVuaXRUZXN0OjpzdWNjZXNzZnVsX3Rlc3RfY2FzZV9j
b3VudCgpIGNvbnN0IHsKKyAgcmV0dXJuIGltcGwoKS0+c3VjY2Vzc2Z1bF90ZXN0X3N1aXRlX2Nv
dW50KCk7Cit9CitpbnQgVW5pdFRlc3Q6OmZhaWxlZF90ZXN0X2Nhc2VfY291bnQoKSBjb25zdCB7
CisgIHJldHVybiBpbXBsKCktPmZhaWxlZF90ZXN0X3N1aXRlX2NvdW50KCk7Cit9CitpbnQgVW5p
dFRlc3Q6OnRvdGFsX3Rlc3RfY2FzZV9jb3VudCgpIGNvbnN0IHsKKyAgcmV0dXJuIGltcGwoKS0+
dG90YWxfdGVzdF9zdWl0ZV9jb3VudCgpOworfQogaW50IFVuaXRUZXN0Ojp0ZXN0X2Nhc2VfdG9f
cnVuX2NvdW50KCkgY29uc3QgewotICByZXR1cm4gaW1wbCgpLT50ZXN0X2Nhc2VfdG9fcnVuX2Nv
dW50KCk7CisgIHJldHVybiBpbXBsKCktPnRlc3Rfc3VpdGVfdG9fcnVuX2NvdW50KCk7CiB9Cisj
ZW5kaWYgIC8vICBHVEVTVF9SRU1PVkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KIAogLy8gR2V0cyB0
aGUgbnVtYmVyIG9mIHN1Y2Nlc3NmdWwgdGVzdHMuCiBpbnQgVW5pdFRlc3Q6OnN1Y2Nlc3NmdWxf
dGVzdF9jb3VudCgpIGNvbnN0IHsKICAgcmV0dXJuIGltcGwoKS0+c3VjY2Vzc2Z1bF90ZXN0X2Nv
dW50KCk7CiB9CiAKKy8vIEdldHMgdGhlIG51bWJlciBvZiBza2lwcGVkIHRlc3RzLgoraW50IFVu
aXRUZXN0Ojpza2lwcGVkX3Rlc3RfY291bnQoKSBjb25zdCB7CisgIHJldHVybiBpbXBsKCktPnNr
aXBwZWRfdGVzdF9jb3VudCgpOworfQorCiAvLyBHZXRzIHRoZSBudW1iZXIgb2YgZmFpbGVkIHRl
c3RzLgogaW50IFVuaXRUZXN0OjpmYWlsZWRfdGVzdF9jb3VudCgpIGNvbnN0IHsgcmV0dXJuIGlt
cGwoKS0+ZmFpbGVkX3Rlc3RfY291bnQoKTsgfQogCkBAIC00NTc1LDI5ICs0ODgzLDM3IEBAIGlu
dGVybmFsOjpUaW1lSW5NaWxsaXMgVW5pdFRlc3Q6OmVsYXBzZWRfdGltZSgpIGNvbnN0IHsKICAg
cmV0dXJuIGltcGwoKS0+ZWxhcHNlZF90aW1lKCk7CiB9CiAKLS8vIFJldHVybnMgdHJ1ZSBpZmYg
dGhlIHVuaXQgdGVzdCBwYXNzZWQgKGkuZS4gYWxsIHRlc3QgY2FzZXMgcGFzc2VkKS4KKy8vIFJl
dHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgdW5pdCB0ZXN0IHBhc3NlZCAoaS5lLiBhbGwg
dGVzdCBzdWl0ZXMKKy8vIHBhc3NlZCkuCiBib29sIFVuaXRUZXN0OjpQYXNzZWQoKSBjb25zdCB7
IHJldHVybiBpbXBsKCktPlBhc3NlZCgpOyB9CiAKLS8vIFJldHVybnMgdHJ1ZSBpZmYgdGhlIHVu
aXQgdGVzdCBmYWlsZWQgKGkuZS4gc29tZSB0ZXN0IGNhc2UgZmFpbGVkCi0vLyBvciBzb21ldGhp
bmcgb3V0c2lkZSBvZiBhbGwgdGVzdHMgZmFpbGVkKS4KKy8vIFJldHVybnMgdHJ1ZSBpZiBhbmQg
b25seSBpZiB0aGUgdW5pdCB0ZXN0IGZhaWxlZCAoaS5lLiBzb21lIHRlc3Qgc3VpdGUKKy8vIGZh
aWxlZCBvciBzb21ldGhpbmcgb3V0c2lkZSBvZiBhbGwgdGVzdHMgZmFpbGVkKS4KIGJvb2wgVW5p
dFRlc3Q6OkZhaWxlZCgpIGNvbnN0IHsgcmV0dXJuIGltcGwoKS0+RmFpbGVkKCk7IH0KIAotLy8g
R2V0cyB0aGUgaS10aCB0ZXN0IGNhc2UgYW1vbmcgYWxsIHRoZSB0ZXN0IGNhc2VzLiBpIGNhbiBy
YW5nZSBmcm9tIDAgdG8KLS8vIHRvdGFsX3Rlc3RfY2FzZV9jb3VudCgpIC0gMS4gSWYgaSBpcyBu
b3QgaW4gdGhhdCByYW5nZSwgcmV0dXJucyBOVUxMLgorLy8gR2V0cyB0aGUgaS10aCB0ZXN0IHN1
aXRlIGFtb25nIGFsbCB0aGUgdGVzdCBzdWl0ZXMuIGkgY2FuIHJhbmdlIGZyb20gMCB0bworLy8g
dG90YWxfdGVzdF9zdWl0ZV9jb3VudCgpIC0gMS4gSWYgaSBpcyBub3QgaW4gdGhhdCByYW5nZSwg
cmV0dXJucyBOVUxMLgorY29uc3QgVGVzdFN1aXRlKiBVbml0VGVzdDo6R2V0VGVzdFN1aXRlKGlu
dCBpKSBjb25zdCB7CisgIHJldHVybiBpbXBsKCktPkdldFRlc3RTdWl0ZShpKTsKK30KKworLy8g
IExlZ2FjeSBBUEkgaXMgZGVwcmVjYXRlZCBidXQgc3RpbGwgYXZhaWxhYmxlCisjaWZuZGVmIEdU
RVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwogY29uc3QgVGVzdENhc2UqIFVuaXRUZXN0
OjpHZXRUZXN0Q2FzZShpbnQgaSkgY29uc3QgewogICByZXR1cm4gaW1wbCgpLT5HZXRUZXN0Q2Fz
ZShpKTsKIH0KKyNlbmRpZiAgLy8gIEdURVNUX1JFTU9WRV9MRUdBQ1lfVEVTVF9DQVNFQVBJXwog
CiAvLyBSZXR1cm5zIHRoZSBUZXN0UmVzdWx0IGNvbnRhaW5pbmcgaW5mb3JtYXRpb24gb24gdGVz
dCBmYWlsdXJlcyBhbmQKLS8vIHByb3BlcnRpZXMgbG9nZ2VkIG91dHNpZGUgb2YgaW5kaXZpZHVh
bCB0ZXN0IGNhc2VzLgorLy8gcHJvcGVydGllcyBsb2dnZWQgb3V0c2lkZSBvZiBpbmRpdmlkdWFs
IHRlc3Qgc3VpdGVzLgogY29uc3QgVGVzdFJlc3VsdCYgVW5pdFRlc3Q6OmFkX2hvY190ZXN0X3Jl
c3VsdCgpIGNvbnN0IHsKICAgcmV0dXJuICppbXBsKCktPmFkX2hvY190ZXN0X3Jlc3VsdCgpOwog
fQogCi0vLyBHZXRzIHRoZSBpLXRoIHRlc3QgY2FzZSBhbW9uZyBhbGwgdGhlIHRlc3QgY2FzZXMu
IGkgY2FuIHJhbmdlIGZyb20gMCB0bwotLy8gdG90YWxfdGVzdF9jYXNlX2NvdW50KCkgLSAxLiBJ
ZiBpIGlzIG5vdCBpbiB0aGF0IHJhbmdlLCByZXR1cm5zIE5VTEwuCi1UZXN0Q2FzZSogVW5pdFRl
c3Q6OkdldE11dGFibGVUZXN0Q2FzZShpbnQgaSkgewotICByZXR1cm4gaW1wbCgpLT5HZXRNdXRh
YmxlVGVzdENhc2UoaSk7CisvLyBHZXRzIHRoZSBpLXRoIHRlc3Qgc3VpdGUgYW1vbmcgYWxsIHRo
ZSB0ZXN0IHN1aXRlcy4gaSBjYW4gcmFuZ2UgZnJvbSAwIHRvCisvLyB0b3RhbF90ZXN0X3N1aXRl
X2NvdW50KCkgLSAxLiBJZiBpIGlzIG5vdCBpbiB0aGF0IHJhbmdlLCByZXR1cm5zIE5VTEwuCitU
ZXN0U3VpdGUqIFVuaXRUZXN0OjpHZXRNdXRhYmxlVGVzdFN1aXRlKGludCBpKSB7CisgIHJldHVy
biBpbXBsKCktPkdldE11dGFibGVTdWl0ZUNhc2UoaSk7CiB9CiAKIC8vIFJldHVybnMgdGhlIGxp
c3Qgb2YgZXZlbnQgbGlzdGVuZXJzIHRoYXQgY2FuIGJlIHVzZWQgdG8gdHJhY2sgZXZlbnRzCkBA
IC00NjE3LDggKzQ5MzMsOCBAQCBUZXN0RXZlbnRMaXN0ZW5lcnMmIFVuaXRUZXN0OjpsaXN0ZW5l
cnMoKSB7CiAvLyBXZSBkb24ndCBwcm90ZWN0IHRoaXMgdW5kZXIgbXV0ZXhfLCBhcyB3ZSBvbmx5
IHN1cHBvcnQgY2FsbGluZyBpdAogLy8gZnJvbSB0aGUgbWFpbiB0aHJlYWQuCiBFbnZpcm9ubWVu
dCogVW5pdFRlc3Q6OkFkZEVudmlyb25tZW50KEVudmlyb25tZW50KiBlbnYpIHsKLSAgaWYgKGVu
diA9PSBOVUxMKSB7Ci0gICAgcmV0dXJuIE5VTEw7CisgIGlmIChlbnYgPT0gbnVsbHB0cikgewor
ICAgIHJldHVybiBudWxscHRyOwogICB9CiAKICAgaW1wbF8tPmVudmlyb25tZW50cygpLnB1c2hf
YmFjayhlbnYpOwpAQCAtNDY0MiwyNSArNDk1OCwyNCBAQCB2b2lkIFVuaXRUZXN0OjpBZGRUZXN0
UGFydFJlc3VsdCgKICAgaWYgKGltcGxfLT5ndGVzdF90cmFjZV9zdGFjaygpLnNpemUoKSA+IDAp
IHsKICAgICBtc2cgPDwgIlxuIiA8PCBHVEVTVF9OQU1FXyA8PCAiIHRyYWNlOiI7CiAKLSAgICBm
b3IgKGludCBpID0gc3RhdGljX2Nhc3Q8aW50PihpbXBsXy0+Z3Rlc3RfdHJhY2Vfc3RhY2soKS5z
aXplKCkpOwotICAgICAgICAgaSA+IDA7IC0taSkgeworICAgIGZvciAoc2l6ZV90IGkgPSBpbXBs
Xy0+Z3Rlc3RfdHJhY2Vfc3RhY2soKS5zaXplKCk7IGkgPiAwOyAtLWkpIHsKICAgICAgIGNvbnN0
IGludGVybmFsOjpUcmFjZUluZm8mIHRyYWNlID0gaW1wbF8tPmd0ZXN0X3RyYWNlX3N0YWNrKClb
aSAtIDFdOwogICAgICAgbXNnIDw8ICJcbiIgPDwgaW50ZXJuYWw6OkZvcm1hdEZpbGVMb2NhdGlv
bih0cmFjZS5maWxlLCB0cmFjZS5saW5lKQogICAgICAgICAgIDw8ICIgIiA8PCB0cmFjZS5tZXNz
YWdlOwogICAgIH0KICAgfQogCi0gIGlmIChvc19zdGFja190cmFjZS5jX3N0cigpICE9IE5VTEwg
JiYgIW9zX3N0YWNrX3RyYWNlLmVtcHR5KCkpIHsKKyAgaWYgKG9zX3N0YWNrX3RyYWNlLmNfc3Ry
KCkgIT0gbnVsbHB0ciAmJiAhb3Nfc3RhY2tfdHJhY2UuZW1wdHkoKSkgewogICAgIG1zZyA8PCBp
bnRlcm5hbDo6a1N0YWNrVHJhY2VNYXJrZXIgPDwgb3Nfc3RhY2tfdHJhY2U7CiAgIH0KIAotICBj
b25zdCBUZXN0UGFydFJlc3VsdCByZXN1bHQgPQotICAgIFRlc3RQYXJ0UmVzdWx0KHJlc3VsdF90
eXBlLCBmaWxlX25hbWUsIGxpbmVfbnVtYmVyLAotICAgICAgICAgICAgICAgICAgIG1zZy5HZXRT
dHJpbmcoKS5jX3N0cigpKTsKKyAgY29uc3QgVGVzdFBhcnRSZXN1bHQgcmVzdWx0ID0gVGVzdFBh
cnRSZXN1bHQoCisgICAgICByZXN1bHRfdHlwZSwgZmlsZV9uYW1lLCBsaW5lX251bWJlciwgbXNn
LkdldFN0cmluZygpLmNfc3RyKCkpOwogICBpbXBsXy0+R2V0VGVzdFBhcnRSZXN1bHRSZXBvcnRl
ckZvckN1cnJlbnRUaHJlYWQoKS0+CiAgICAgICBSZXBvcnRUZXN0UGFydFJlc3VsdChyZXN1bHQp
OwogCi0gIGlmIChyZXN1bHRfdHlwZSAhPSBUZXN0UGFydFJlc3VsdDo6a1N1Y2Nlc3MpIHsKKyAg
aWYgKHJlc3VsdF90eXBlICE9IFRlc3RQYXJ0UmVzdWx0OjprU3VjY2VzcyAmJgorICAgICAgcmVz
dWx0X3R5cGUgIT0gVGVzdFBhcnRSZXN1bHQ6OmtTa2lwKSB7CiAgICAgLy8gZ3Rlc3RfYnJlYWtf
b25fZmFpbHVyZSB0YWtlcyBwcmVjZWRlbmNlIG92ZXIKICAgICAvLyBndGVzdF90aHJvd19vbl9m
YWlsdXJlLiAgVGhpcyBhbGxvd3MgYSB1c2VyIHRvIHNldCB0aGUgbGF0dGVyCiAgICAgLy8gaW4g
dGhlIGNvZGUgKHBlcmhhcHMgaW4gb3JkZXIgdG8gdXNlIEdvb2dsZSBUZXN0IGFzc2VydGlvbnMK
QEAgLTQ2NzgsMTEgKzQ5OTMsMTAgQEAgdm9pZCBVbml0VGVzdDo6QWRkVGVzdFBhcnRSZXN1bHQo
CiAgICAgICAvLyB3aXRoIGNsYW5nL2djYyB3ZSBjYW4gYWNoaWV2ZSB0aGUgc2FtZSBlZmZlY3Qg
b24geDg2IGJ5IGludm9raW5nIGludDMKICAgICAgIGFzbSgiaW50MyIpOwogI2Vsc2UKLSAgICAg
IC8vIERlcmVmZXJlbmNlIE5VTEwgdGhyb3VnaCBhIHZvbGF0aWxlIHBvaW50ZXIgdG8gcHJldmVu
dCB0aGUgY29tcGlsZXIKKyAgICAgIC8vIERlcmVmZXJlbmNlIG51bGxwdHIgdGhyb3VnaCBhIHZv
bGF0aWxlIHBvaW50ZXIgdG8gcHJldmVudCB0aGUgY29tcGlsZXIKICAgICAgIC8vIGZyb20gcmVt
b3ZpbmcuIFdlIHVzZSB0aGlzIHJhdGhlciB0aGFuIGFib3J0KCkgb3IgX19idWlsdGluX3RyYXAo
KSBmb3IKLSAgICAgIC8vIHBvcnRhYmlsaXR5OiBTeW1iaWFuIGRvZXNuJ3QgaW1wbGVtZW50IGFi
b3J0KCkgd2VsbCwgYW5kIHNvbWUgZGVidWdnZXJzCi0gICAgICAvLyBkb24ndCBjb3JyZWN0bHkg
dHJhcCBhYm9ydCgpLgotICAgICAgKnN0YXRpY19jYXN0PHZvbGF0aWxlIGludCo+KE5VTEwpID0g
MTsKKyAgICAgIC8vIHBvcnRhYmlsaXR5OiBzb21lIGRlYnVnZ2VycyBkb24ndCBjb3JyZWN0bHkg
dHJhcCBhYm9ydCgpLgorICAgICAgKnN0YXRpY19jYXN0PHZvbGF0aWxlIGludCo+KG51bGxwdHIp
ID0gMTsKICNlbmRpZiAgLy8gR1RFU1RfT1NfV0lORE9XUwogICAgIH0gZWxzZSBpZiAoR1RFU1Rf
RkxBRyh0aHJvd19vbl9mYWlsdXJlKSkgewogI2lmIEdURVNUX0hBU19FWENFUFRJT05TCkBAIC00
Njk3LDggKzUwMTEsOCBAQCB2b2lkIFVuaXRUZXN0OjpBZGRUZXN0UGFydFJlc3VsdCgKIH0KIAog
Ly8gQWRkcyBhIFRlc3RQcm9wZXJ0eSB0byB0aGUgY3VycmVudCBUZXN0UmVzdWx0IG9iamVjdCB3
aGVuIGludm9rZWQgZnJvbQotLy8gaW5zaWRlIGEgdGVzdCwgdG8gY3VycmVudCBUZXN0Q2FzZSdz
IGFkX2hvY190ZXN0X3Jlc3VsdF8gd2hlbiBpbnZva2VkCi0vLyBmcm9tIFNldFVwVGVzdENhc2Ug
b3IgVGVhckRvd25UZXN0Q2FzZSwgb3IgdG8gdGhlIGdsb2JhbCBwcm9wZXJ0eSBzZXQKKy8vIGlu
c2lkZSBhIHRlc3QsIHRvIGN1cnJlbnQgVGVzdFN1aXRlJ3MgYWRfaG9jX3Rlc3RfcmVzdWx0XyB3
aGVuIGludm9rZWQKKy8vIGZyb20gU2V0VXBUZXN0U3VpdGUgb3IgVGVhckRvd25UZXN0U3VpdGUs
IG9yIHRvIHRoZSBnbG9iYWwgcHJvcGVydHkgc2V0CiAvLyB3aGVuIGludm9rZWQgZWxzZXdoZXJl
LiAgSWYgdGhlIHJlc3VsdCBhbHJlYWR5IGNvbnRhaW5zIGEgcHJvcGVydHkgd2l0aAogLy8gdGhl
IHNhbWUga2V5LCB0aGUgdmFsdWUgd2lsbCBiZSB1cGRhdGVkLgogdm9pZCBVbml0VGVzdDo6UmVj
b3JkUHJvcGVydHkoY29uc3Qgc3RkOjpzdHJpbmcmIGtleSwKQEAgLTQ3MzcsOCArNTA1MSw5IEBA
IGludCBVbml0VGVzdDo6UnVuKCkgewogICAvLyB0aGF0IHVuZGVyc3RhbmRzIHRoZSBwcmVtYXR1
cmUtZXhpdC1maWxlIHByb3RvY29sIHRvIHJlcG9ydCB0aGUKICAgLy8gdGVzdCBhcyBoYXZpbmcg
ZmFpbGVkLgogICBjb25zdCBpbnRlcm5hbDo6U2NvcGVkUHJlbWF0dXJlRXhpdEZpbGUgcHJlbWF0
dXJlX2V4aXRfZmlsZSgKLSAgICAgIGluX2RlYXRoX3Rlc3RfY2hpbGRfcHJvY2VzcyA/Ci0gICAg
ICBOVUxMIDogaW50ZXJuYWw6OnBvc2l4OjpHZXRFbnYoIlRFU1RfUFJFTUFUVVJFX0VYSVRfRklM
RSIpKTsKKyAgICAgIGluX2RlYXRoX3Rlc3RfY2hpbGRfcHJvY2VzcworICAgICAgICAgID8gbnVs
bHB0cgorICAgICAgICAgIDogaW50ZXJuYWw6OnBvc2l4OjpHZXRFbnYoIlRFU1RfUFJFTUFUVVJF
X0VYSVRfRklMRSIpKTsKIAogICAvLyBDYXB0dXJlcyB0aGUgdmFsdWUgb2YgR1RFU1RfRkxBRyhj
YXRjaF9leGNlcHRpb25zKS4gIFRoaXMgdmFsdWUgd2lsbCBiZQogICAvLyB1c2VkIGZvciB0aGUg
ZHVyYXRpb24gb2YgdGhlIHByb2dyYW0uCkBAIC00NzYzLDIyICs1MDc4LDI2IEBAIGludCBVbml0
VGVzdDo6UnVuKCkgewogICAgIF9zZXRfZXJyb3JfbW9kZShfT1VUX1RPX1NUREVSUik7CiAjIGVu
ZGlmCiAKLSMgaWYgX01TQ19WRVIgPj0gMTQwMCAmJiAhR1RFU1RfT1NfV0lORE9XU19NT0JJTEUK
KyMgaWYgZGVmaW5lZChfTVNDX1ZFUikgJiYgIUdURVNUX09TX1dJTkRPV1NfTU9CSUxFCiAgICAg
Ly8gSW4gdGhlIGRlYnVnIHZlcnNpb24sIFZpc3VhbCBTdHVkaW8gcG9wcyB1cCBhIHNlcGFyYXRl
IGRpYWxvZwogICAgIC8vIG9mZmVyaW5nIGEgY2hvaWNlIHRvIGRlYnVnIHRoZSBhYm9ydGVkIHBy
b2dyYW0uIFdlIG5lZWQgdG8gc3VwcHJlc3MKICAgICAvLyB0aGlzIGRpYWxvZyBvciBpdCB3aWxs
IHBvcCB1cCBmb3IgZXZlcnkgRVhQRUNUL0FTU0VSVF9ERUFUSCBzdGF0ZW1lbnQKICAgICAvLyBl
eGVjdXRlZC4gR29vZ2xlIFRlc3Qgd2lsbCBub3RpZnkgdGhlIHVzZXIgb2YgYW55IHVuZXhwZWN0
ZWQKICAgICAvLyBmYWlsdXJlIHZpYSBzdGRlcnIuCi0gICAgLy8KLSAgICAvLyBWQysrIGRvZXNu
J3QgZGVmaW5lIF9zZXRfYWJvcnRfYmVoYXZpb3IoKSBwcmlvciB0byB0aGUgdmVyc2lvbiA4LjAu
Ci0gICAgLy8gVXNlcnMgb2YgcHJpb3IgVkMgdmVyc2lvbnMgc2hhbGwgc3VmZmVyIHRoZSBhZ29u
eSBhbmQgcGFpbiBvZgotICAgIC8vIGNsaWNraW5nIHRocm91Z2ggdGhlIGNvdW50bGVzcyBkZWJ1
ZyBkaWFsb2dzLgotICAgIC8vIEZJWE1FOiBmaW5kIGEgd2F5IHRvIHN1cHByZXNzIHRoZSBhYm9y
dCBkaWFsb2coKSBpbiB0aGUKLSAgICAvLyBkZWJ1ZyBtb2RlIHdoZW4gY29tcGlsZWQgd2l0aCBW
QyA3LjEgb3IgbG93ZXIuCiAgICAgaWYgKCFHVEVTVF9GTEFHKGJyZWFrX29uX2ZhaWx1cmUpKQog
ICAgICAgX3NldF9hYm9ydF9iZWhhdmlvcigKICAgICAgICAgICAweDAsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLy8gQ2xlYXIgdGhlIGZvbGxvd2luZyBmbGFnczoKICAgICAg
ICAgICBfV1JJVEVfQUJPUlRfTVNHIHwgX0NBTExfUkVQT1JURkFVTFQpOyAgLy8gcG9wLXVwIHdp
bmRvdywgY29yZSBkdW1wLgorCisgICAgLy8gSW4gZGVidWcgbW9kZSwgdGhlIFdpbmRvd3MgQ1JU
IGNhbiBjcmFzaCB3aXRoIGFuIGFzc2VydGlvbiBvdmVyIGludmFsaWQKKyAgICAvLyBpbnB1dCAo
ZS5nLiBwYXNzaW5nIGFuIGludmFsaWQgZmlsZSBkZXNjcmlwdG9yKS4gIFRoZSBkZWZhdWx0IGhh
bmRsaW5nCisgICAgLy8gZm9yIHRoZXNlIGFzc2VydGlvbnMgaXMgdG8gcG9wIHVwIGEgZGlhbG9n
IGFuZCB3YWl0IGZvciB1c2VyIGlucHV0LgorICAgIC8vIEluc3RlYWQgYXNrIHRoZSBDUlQgdG8g
ZHVtcCBzdWNoIGFzc2VydGlvbnMgdG8gc3RkZXJyIG5vbi1pbnRlcmFjdGl2ZWx5LgorICAgIGlm
ICghSXNEZWJ1Z2dlclByZXNlbnQoKSkgeworICAgICAgKHZvaWQpX0NydFNldFJlcG9ydE1vZGUo
X0NSVF9BU1NFUlQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfQ1JUREJHX01PREVf
RklMRSB8IF9DUlREQkdfTU9ERV9ERUJVRyk7CisgICAgICAodm9pZClfQ3J0U2V0UmVwb3J0Rmls
ZShfQ1JUX0FTU0VSVCwgX0NSVERCR19GSUxFX1NUREVSUik7CisgICAgfQogIyBlbmRpZgogICB9
CiAjZW5kaWYgIC8vIEdURVNUX09TX1dJTkRPV1MKQEAgLTQ3OTUsMTMgKzUxMTQsMjIgQEAgY29u
c3QgY2hhciogVW5pdFRlc3Q6Om9yaWdpbmFsX3dvcmtpbmdfZGlyKCkgY29uc3QgewogICByZXR1
cm4gaW1wbF8tPm9yaWdpbmFsX3dvcmtpbmdfZGlyXy5jX3N0cigpOwogfQogCi0vLyBSZXR1cm5z
IHRoZSBUZXN0Q2FzZSBvYmplY3QgZm9yIHRoZSB0ZXN0IHRoYXQncyBjdXJyZW50bHkgcnVubmlu
ZywKKy8vIFJldHVybnMgdGhlIFRlc3RTdWl0ZSBvYmplY3QgZm9yIHRoZSB0ZXN0IHRoYXQncyBj
dXJyZW50bHkgcnVubmluZywKIC8vIG9yIE5VTEwgaWYgbm8gdGVzdCBpcyBydW5uaW5nLgorY29u
c3QgVGVzdFN1aXRlKiBVbml0VGVzdDo6Y3VycmVudF90ZXN0X3N1aXRlKCkgY29uc3QKKyAgICBH
VEVTVF9MT0NLX0VYQ0xVREVEXyhtdXRleF8pIHsKKyAgaW50ZXJuYWw6Ok11dGV4TG9jayBsb2Nr
KCZtdXRleF8pOworICByZXR1cm4gaW1wbF8tPmN1cnJlbnRfdGVzdF9zdWl0ZSgpOworfQorCisv
LyBMZWdhY3kgQVBJIGlzIHN0aWxsIGF2YWlsYWJsZSBidXQgZGVwcmVjYXRlZAorI2lmbmRlZiBH
VEVTVF9SRU1PVkVfTEVHQUNZX1RFU1RfQ0FTRUFQSV8KIGNvbnN0IFRlc3RDYXNlKiBVbml0VGVz
dDo6Y3VycmVudF90ZXN0X2Nhc2UoKSBjb25zdAogICAgIEdURVNUX0xPQ0tfRVhDTFVERURfKG11
dGV4XykgewogICBpbnRlcm5hbDo6TXV0ZXhMb2NrIGxvY2soJm11dGV4Xyk7Ci0gIHJldHVybiBp
bXBsXy0+Y3VycmVudF90ZXN0X2Nhc2UoKTsKKyAgcmV0dXJuIGltcGxfLT5jdXJyZW50X3Rlc3Rf
c3VpdGUoKTsKIH0KKyNlbmRpZgogCiAvLyBSZXR1cm5zIHRoZSBUZXN0SW5mbyBvYmplY3QgZm9y
IHRoZSB0ZXN0IHRoYXQncyBjdXJyZW50bHkgcnVubmluZywKIC8vIG9yIE5VTEwgaWYgbm8gdGVz
dCBpcyBydW5uaW5nLgpAQCAtNDgxNCwxMSArNTE0MiwxMCBAQCBjb25zdCBUZXN0SW5mbyogVW5p
dFRlc3Q6OmN1cnJlbnRfdGVzdF9pbmZvKCkgY29uc3QKIC8vIFJldHVybnMgdGhlIHJhbmRvbSBz
ZWVkIHVzZWQgYXQgdGhlIHN0YXJ0IG9mIHRoZSBjdXJyZW50IHRlc3QgcnVuLgogaW50IFVuaXRU
ZXN0OjpyYW5kb21fc2VlZCgpIGNvbnN0IHsgcmV0dXJuIGltcGxfLT5yYW5kb21fc2VlZCgpOyB9
CiAKLS8vIFJldHVybnMgUGFyYW1ldGVyaXplZFRlc3RDYXNlUmVnaXN0cnkgb2JqZWN0IHVzZWQg
dG8ga2VlcCB0cmFjayBvZgorLy8gUmV0dXJucyBQYXJhbWV0ZXJpemVkVGVzdFN1aXRlUmVnaXN0
cnkgb2JqZWN0IHVzZWQgdG8ga2VlcCB0cmFjayBvZgogLy8gdmFsdWUtcGFyYW1ldGVyaXplZCB0
ZXN0cyBhbmQgaW5zdGFudGlhdGUgYW5kIHJlZ2lzdGVyIHRoZW0uCi1pbnRlcm5hbDo6UGFyYW1l
dGVyaXplZFRlc3RDYXNlUmVnaXN0cnkmCi0gICAgVW5pdFRlc3Q6OnBhcmFtZXRlcml6ZWRfdGVz
dF9yZWdpc3RyeSgpCi0gICAgICAgIEdURVNUX0xPQ0tfRVhDTFVERURfKG11dGV4XykgeworaW50
ZXJuYWw6OlBhcmFtZXRlcml6ZWRUZXN0U3VpdGVSZWdpc3RyeSYKK1VuaXRUZXN0OjpwYXJhbWV0
ZXJpemVkX3Rlc3RfcmVnaXN0cnkoKSBHVEVTVF9MT0NLX0VYQ0xVREVEXyhtdXRleF8pIHsKICAg
cmV0dXJuIGltcGxfLT5wYXJhbWV0ZXJpemVkX3Rlc3RfcmVnaXN0cnkoKTsKIH0KIApAQCAtNDg1
MiwyMyArNTE3OSwyMiBAQCBuYW1lc3BhY2UgaW50ZXJuYWwgewogVW5pdFRlc3RJbXBsOjpVbml0
VGVzdEltcGwoVW5pdFRlc3QqIHBhcmVudCkKICAgICA6IHBhcmVudF8ocGFyZW50KSwKICAgICAg
IEdURVNUX0RJU0FCTEVfTVNDX1dBUk5JTkdTX1BVU0hfKDQzNTUgLyogdXNpbmcgdGhpcyBpbiBp
bml0aWFsaXplciAqLykKLSAgICAgIGRlZmF1bHRfZ2xvYmFsX3Rlc3RfcGFydF9yZXN1bHRfcmVw
b3J0ZXJfKHRoaXMpLAorICAgICAgICAgIGRlZmF1bHRfZ2xvYmFsX3Rlc3RfcGFydF9yZXN1bHRf
cmVwb3J0ZXJfKHRoaXMpLAogICAgICAgZGVmYXVsdF9wZXJfdGhyZWFkX3Rlc3RfcGFydF9yZXN1
bHRfcmVwb3J0ZXJfKHRoaXMpLAotICAgICAgR1RFU1RfRElTQUJMRV9NU0NfV0FSTklOR1NfUE9Q
XygpCi0gICAgICBnbG9iYWxfdGVzdF9wYXJ0X3Jlc3VsdF9yZXBvdGVyXygKKyAgICAgIEdURVNU
X0RJU0FCTEVfTVNDX1dBUk5JTkdTX1BPUF8oKSBnbG9iYWxfdGVzdF9wYXJ0X3Jlc3VsdF9yZXBv
dGVyXygKICAgICAgICAgICAmZGVmYXVsdF9nbG9iYWxfdGVzdF9wYXJ0X3Jlc3VsdF9yZXBvcnRl
cl8pLAogICAgICAgcGVyX3RocmVhZF90ZXN0X3BhcnRfcmVzdWx0X3JlcG9ydGVyXygKICAgICAg
ICAgICAmZGVmYXVsdF9wZXJfdGhyZWFkX3Rlc3RfcGFydF9yZXN1bHRfcmVwb3J0ZXJfKSwKICAg
ICAgIHBhcmFtZXRlcml6ZWRfdGVzdF9yZWdpc3RyeV8oKSwKICAgICAgIHBhcmFtZXRlcml6ZWRf
dGVzdHNfcmVnaXN0ZXJlZF8oZmFsc2UpLAotICAgICAgbGFzdF9kZWF0aF90ZXN0X2Nhc2VfKC0x
KSwKLSAgICAgIGN1cnJlbnRfdGVzdF9jYXNlXyhOVUxMKSwKLSAgICAgIGN1cnJlbnRfdGVzdF9p
bmZvXyhOVUxMKSwKKyAgICAgIGxhc3RfZGVhdGhfdGVzdF9zdWl0ZV8oLTEpLAorICAgICAgY3Vy
cmVudF90ZXN0X3N1aXRlXyhudWxscHRyKSwKKyAgICAgIGN1cnJlbnRfdGVzdF9pbmZvXyhudWxs
cHRyKSwKICAgICAgIGFkX2hvY190ZXN0X3Jlc3VsdF8oKSwKLSAgICAgIG9zX3N0YWNrX3RyYWNl
X2dldHRlcl8oTlVMTCksCisgICAgICBvc19zdGFja190cmFjZV9nZXR0ZXJfKG51bGxwdHIpLAog
ICAgICAgcG9zdF9mbGFnX3BhcnNlX2luaXRfcGVyZm9ybWVkXyhmYWxzZSksCiAgICAgICByYW5k
b21fc2VlZF8oMCksICAvLyBXaWxsIGJlIG92ZXJyaWRkZW4gYnkgdGhlIGZsYWcgYmVmb3JlIGZp
cnN0IHVzZS4KLSAgICAgIHJhbmRvbV8oMCksICAvLyBXaWxsIGJlIHJlc2VlZGVkIGJlZm9yZSBm
aXJzdCB1c2UuCisgICAgICByYW5kb21fKDApLCAgICAgICAvLyBXaWxsIGJlIHJlc2VlZGVkIGJl
Zm9yZSBmaXJzdCB1c2UuCiAgICAgICBzdGFydF90aW1lc3RhbXBfKDApLAogICAgICAgZWxhcHNl
ZF90aW1lXygwKSwKICNpZiBHVEVTVF9IQVNfREVBVEhfVEVTVApAQCAtNDg4MCw4ICs1MjA2LDgg
QEAgVW5pdFRlc3RJbXBsOjpVbml0VGVzdEltcGwoVW5pdFRlc3QqIHBhcmVudCkKIH0KIAogVW5p
dFRlc3RJbXBsOjp+VW5pdFRlc3RJbXBsKCkgewotICAvLyBEZWxldGVzIGV2ZXJ5IFRlc3RDYXNl
LgotICBGb3JFYWNoKHRlc3RfY2FzZXNfLCBpbnRlcm5hbDo6RGVsZXRlPFRlc3RDYXNlPik7Cisg
IC8vIERlbGV0ZXMgZXZlcnkgVGVzdFN1aXRlLgorICBGb3JFYWNoKHRlc3Rfc3VpdGVzXywgaW50
ZXJuYWw6OkRlbGV0ZTxUZXN0U3VpdGU+KTsKIAogICAvLyBEZWxldGVzIGV2ZXJ5IEVudmlyb25t
ZW50LgogICBGb3JFYWNoKGVudmlyb25tZW50c18sIGludGVybmFsOjpEZWxldGU8RW52aXJvbm1l
bnQ+KTsKQEAgLTQ4OTAsMjAgKzUyMTYsMjAgQEAgVW5pdFRlc3RJbXBsOjp+VW5pdFRlc3RJbXBs
KCkgewogfQogCiAvLyBBZGRzIGEgVGVzdFByb3BlcnR5IHRvIHRoZSBjdXJyZW50IFRlc3RSZXN1
bHQgb2JqZWN0IHdoZW4gaW52b2tlZCBpbiBhCi0vLyBjb250ZXh0IG9mIGEgdGVzdCwgdG8gY3Vy
cmVudCB0ZXN0IGNhc2UncyBhZF9ob2NfdGVzdF9yZXN1bHQgd2hlbiBpbnZva2UKLS8vIGZyb20g
U2V0VXBUZXN0Q2FzZS9UZWFyRG93blRlc3RDYXNlLCBvciB0byB0aGUgZ2xvYmFsIHByb3BlcnR5
IHNldAorLy8gY29udGV4dCBvZiBhIHRlc3QsIHRvIGN1cnJlbnQgdGVzdCBzdWl0ZSdzIGFkX2hv
Y190ZXN0X3Jlc3VsdCB3aGVuIGludm9rZQorLy8gZnJvbSBTZXRVcFRlc3RTdWl0ZS9UZWFyRG93
blRlc3RTdWl0ZSwgb3IgdG8gdGhlIGdsb2JhbCBwcm9wZXJ0eSBzZXQKIC8vIG90aGVyd2lzZS4g
IElmIHRoZSByZXN1bHQgYWxyZWFkeSBjb250YWlucyBhIHByb3BlcnR5IHdpdGggdGhlIHNhbWUg
a2V5LAogLy8gdGhlIHZhbHVlIHdpbGwgYmUgdXBkYXRlZC4KIHZvaWQgVW5pdFRlc3RJbXBsOjpS
ZWNvcmRQcm9wZXJ0eShjb25zdCBUZXN0UHJvcGVydHkmIHRlc3RfcHJvcGVydHkpIHsKICAgc3Rk
OjpzdHJpbmcgeG1sX2VsZW1lbnQ7CiAgIFRlc3RSZXN1bHQqIHRlc3RfcmVzdWx0OyAgLy8gVGVz
dFJlc3VsdCBhcHByb3ByaWF0ZSBmb3IgcHJvcGVydHkgcmVjb3JkaW5nLgogCi0gIGlmIChjdXJy
ZW50X3Rlc3RfaW5mb18gIT0gTlVMTCkgeworICBpZiAoY3VycmVudF90ZXN0X2luZm9fICE9IG51
bGxwdHIpIHsKICAgICB4bWxfZWxlbWVudCA9ICJ0ZXN0Y2FzZSI7CiAgICAgdGVzdF9yZXN1bHQg
PSAmKGN1cnJlbnRfdGVzdF9pbmZvXy0+cmVzdWx0Xyk7Ci0gIH0gZWxzZSBpZiAoY3VycmVudF90
ZXN0X2Nhc2VfICE9IE5VTEwpIHsKKyAgfSBlbHNlIGlmIChjdXJyZW50X3Rlc3Rfc3VpdGVfICE9
IG51bGxwdHIpIHsKICAgICB4bWxfZWxlbWVudCA9ICJ0ZXN0c3VpdGUiOwotICAgIHRlc3RfcmVz
dWx0ID0gJihjdXJyZW50X3Rlc3RfY2FzZV8tPmFkX2hvY190ZXN0X3Jlc3VsdF8pOworICAgIHRl
c3RfcmVzdWx0ID0gJihjdXJyZW50X3Rlc3Rfc3VpdGVfLT5hZF9ob2NfdGVzdF9yZXN1bHRfKTsK
ICAgfSBlbHNlIHsKICAgICB4bWxfZWxlbWVudCA9ICJ0ZXN0c3VpdGVzIjsKICAgICB0ZXN0X3Jl
c3VsdCA9ICZhZF9ob2NfdGVzdF9yZXN1bHRfOwpAQCAtNDkxNSw3ICs1MjQxLDcgQEAgdm9pZCBV
bml0VGVzdEltcGw6OlJlY29yZFByb3BlcnR5KGNvbnN0IFRlc3RQcm9wZXJ0eSYgdGVzdF9wcm9w
ZXJ0eSkgewogLy8gRGlzYWJsZXMgZXZlbnQgZm9yd2FyZGluZyBpZiB0aGUgY29udHJvbCBpcyBj
dXJyZW50bHkgaW4gYSBkZWF0aCB0ZXN0CiAvLyBzdWJwcm9jZXNzLiBNdXN0IG5vdCBiZSBjYWxs
ZWQgYmVmb3JlIEluaXRHb29nbGVUZXN0Lgogdm9pZCBVbml0VGVzdEltcGw6OlN1cHByZXNzVGVz
dEV2ZW50c0lmSW5TdWJwcm9jZXNzKCkgewotICBpZiAoaW50ZXJuYWxfcnVuX2RlYXRoX3Rlc3Rf
ZmxhZ18uZ2V0KCkgIT0gTlVMTCkKKyAgaWYgKGludGVybmFsX3J1bl9kZWF0aF90ZXN0X2ZsYWdf
LmdldCgpICE9IG51bGxwdHIpCiAgICAgbGlzdGVuZXJzKCktPlN1cHByZXNzRXZlbnRGb3J3YXJk
aW5nKCk7CiB9CiAjZW5kaWYgIC8vIEdURVNUX0hBU19ERUFUSF9URVNUCkBAIC00OTk3LDc0ICs1
MzIzLDczIEBAIHZvaWQgVW5pdFRlc3RJbXBsOjpQb3N0RmxhZ1BhcnNpbmdJbml0KCkgewogICB9
CiB9CiAKLS8vIEEgcHJlZGljYXRlIHRoYXQgY2hlY2tzIHRoZSBuYW1lIG9mIGEgVGVzdENhc2Ug
YWdhaW5zdCBhIGtub3duCisvLyBBIHByZWRpY2F0ZSB0aGF0IGNoZWNrcyB0aGUgbmFtZSBvZiBh
IFRlc3RTdWl0ZSBhZ2FpbnN0IGEga25vd24KIC8vIHZhbHVlLgogLy8KIC8vIFRoaXMgaXMgdXNl
ZCBmb3IgaW1wbGVtZW50YXRpb24gb2YgdGhlIFVuaXRUZXN0IGNsYXNzIG9ubHkuICBXZSBwdXQK
IC8vIGl0IGluIHRoZSBhbm9ueW1vdXMgbmFtZXNwYWNlIHRvIHByZXZlbnQgcG9sbHV0aW5nIHRo
ZSBvdXRlcgogLy8gbmFtZXNwYWNlLgogLy8KLS8vIFRlc3RDYXNlTmFtZUlzIGlzIGNvcHlhYmxl
LgotY2xhc3MgVGVzdENhc2VOYW1lSXMgeworLy8gVGVzdFN1aXRlTmFtZUlzIGlzIGNvcHlhYmxl
LgorY2xhc3MgVGVzdFN1aXRlTmFtZUlzIHsKICBwdWJsaWM6CiAgIC8vIENvbnN0cnVjdG9yLgot
ICBleHBsaWNpdCBUZXN0Q2FzZU5hbWVJcyhjb25zdCBzdGQ6OnN0cmluZyYgbmFtZSkKLSAgICAg
IDogbmFtZV8obmFtZSkge30KKyAgZXhwbGljaXQgVGVzdFN1aXRlTmFtZUlzKGNvbnN0IHN0ZDo6
c3RyaW5nJiBuYW1lKSA6IG5hbWVfKG5hbWUpIHt9CiAKLSAgLy8gUmV0dXJucyB0cnVlIGlmZiB0
aGUgbmFtZSBvZiB0ZXN0X2Nhc2UgbWF0Y2hlcyBuYW1lXy4KLSAgYm9vbCBvcGVyYXRvcigpKGNv
bnN0IFRlc3RDYXNlKiB0ZXN0X2Nhc2UpIGNvbnN0IHsKLSAgICByZXR1cm4gdGVzdF9jYXNlICE9
IE5VTEwgJiYgc3RyY21wKHRlc3RfY2FzZS0+bmFtZSgpLCBuYW1lXy5jX3N0cigpKSA9PSAwOwor
ICAvLyBSZXR1cm5zIHRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIG5hbWUgb2YgdGVzdF9zdWl0ZSBt
YXRjaGVzIG5hbWVfLgorICBib29sIG9wZXJhdG9yKCkoY29uc3QgVGVzdFN1aXRlKiB0ZXN0X3N1
aXRlKSBjb25zdCB7CisgICAgcmV0dXJuIHRlc3Rfc3VpdGUgIT0gbnVsbHB0ciAmJgorICAgICAg
ICAgICBzdHJjbXAodGVzdF9zdWl0ZS0+bmFtZSgpLCBuYW1lXy5jX3N0cigpKSA9PSAwOwogICB9
CiAKICBwcml2YXRlOgogICBzdGQ6OnN0cmluZyBuYW1lXzsKIH07CiAKLS8vIEZpbmRzIGFuZCBy
ZXR1cm5zIGEgVGVzdENhc2Ugd2l0aCB0aGUgZ2l2ZW4gbmFtZS4gIElmIG9uZSBkb2Vzbid0Cisv
LyBGaW5kcyBhbmQgcmV0dXJucyBhIFRlc3RTdWl0ZSB3aXRoIHRoZSBnaXZlbiBuYW1lLiAgSWYg
b25lIGRvZXNuJ3QKIC8vIGV4aXN0LCBjcmVhdGVzIG9uZSBhbmQgcmV0dXJucyBpdC4gIEl0J3Mg
dGhlIENBTExFUidTCiAvLyBSRVNQT05TSUJJTElUWSB0byBlbnN1cmUgdGhhdCB0aGlzIGZ1bmN0
aW9uIGlzIG9ubHkgY2FsbGVkIFdIRU4gVEhFCiAvLyBURVNUUyBBUkUgTk9UIFNIVUZGTEVELgog
Ly8KIC8vIEFyZ3VtZW50czoKIC8vCi0vLyAgIHRlc3RfY2FzZV9uYW1lOiBuYW1lIG9mIHRoZSB0
ZXN0IGNhc2UKLS8vICAgdHlwZV9wYXJhbTogICAgIHRoZSBuYW1lIG9mIHRoZSB0ZXN0IGNhc2Un
cyB0eXBlIHBhcmFtZXRlciwgb3IgTlVMTCBpZgotLy8gICAgICAgICAgICAgICAgICAgdGhpcyBp
cyBub3QgYSB0eXBlZCBvciBhIHR5cGUtcGFyYW1ldGVyaXplZCB0ZXN0IGNhc2UuCi0vLyAgIHNl
dF91cF90YzogICAgICBwb2ludGVyIHRvIHRoZSBmdW5jdGlvbiB0aGF0IHNldHMgdXAgdGhlIHRl
c3QgY2FzZQotLy8gICB0ZWFyX2Rvd25fdGM6ICAgcG9pbnRlciB0byB0aGUgZnVuY3Rpb24gdGhh
dCB0ZWFycyBkb3duIHRoZSB0ZXN0IGNhc2UKLVRlc3RDYXNlKiBVbml0VGVzdEltcGw6OkdldFRl
c3RDYXNlKGNvbnN0IGNoYXIqIHRlc3RfY2FzZV9uYW1lLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgY29uc3QgY2hhciogdHlwZV9wYXJhbSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFRlc3Q6OlNldFVwVGVzdENhc2VGdW5jIHNldF91cF90YywKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRlc3Q6OlRlYXJEb3duVGVzdENhc2VG
dW5jIHRlYXJfZG93bl90YykgewotICAvLyBDYW4gd2UgZmluZCBhIFRlc3RDYXNlIHdpdGggdGhl
IGdpdmVuIG5hbWU/Ci0gIGNvbnN0IHN0ZDo6dmVjdG9yPFRlc3RDYXNlKj46OmNvbnN0X3JldmVy
c2VfaXRlcmF0b3IgdGVzdF9jYXNlID0KLSAgICAgIHN0ZDo6ZmluZF9pZih0ZXN0X2Nhc2VzXy5y
YmVnaW4oKSwgdGVzdF9jYXNlc18ucmVuZCgpLAotICAgICAgICAgICAgICAgICAgIFRlc3RDYXNl
TmFtZUlzKHRlc3RfY2FzZV9uYW1lKSk7Ci0KLSAgaWYgKHRlc3RfY2FzZSAhPSB0ZXN0X2Nhc2Vz
Xy5yZW5kKCkpCi0gICAgcmV0dXJuICp0ZXN0X2Nhc2U7CisvLyAgIHRlc3Rfc3VpdGVfbmFtZTog
bmFtZSBvZiB0aGUgdGVzdCBzdWl0ZQorLy8gICB0eXBlX3BhcmFtOiAgICAgdGhlIG5hbWUgb2Yg
dGhlIHRlc3Qgc3VpdGUncyB0eXBlIHBhcmFtZXRlciwgb3IgTlVMTCBpZgorLy8gICAgICAgICAg
ICAgICAgICAgdGhpcyBpcyBub3QgYSB0eXBlZCBvciBhIHR5cGUtcGFyYW1ldGVyaXplZCB0ZXN0
IHN1aXRlLgorLy8gICBzZXRfdXBfdGM6ICAgICAgcG9pbnRlciB0byB0aGUgZnVuY3Rpb24gdGhh
dCBzZXRzIHVwIHRoZSB0ZXN0IHN1aXRlCisvLyAgIHRlYXJfZG93bl90YzogICBwb2ludGVyIHRv
IHRoZSBmdW5jdGlvbiB0aGF0IHRlYXJzIGRvd24gdGhlIHRlc3Qgc3VpdGUKK1Rlc3RTdWl0ZSog
VW5pdFRlc3RJbXBsOjpHZXRUZXN0U3VpdGUoCisgICAgY29uc3QgY2hhciogdGVzdF9zdWl0ZV9u
YW1lLCBjb25zdCBjaGFyKiB0eXBlX3BhcmFtLAorICAgIGludGVybmFsOjpTZXRVcFRlc3RTdWl0
ZUZ1bmMgc2V0X3VwX3RjLAorICAgIGludGVybmFsOjpUZWFyRG93blRlc3RTdWl0ZUZ1bmMgdGVh
cl9kb3duX3RjKSB7CisgIC8vIENhbiB3ZSBmaW5kIGEgVGVzdFN1aXRlIHdpdGggdGhlIGdpdmVu
IG5hbWU/CisgIGNvbnN0IGF1dG8gdGVzdF9zdWl0ZSA9CisgICAgICBzdGQ6OmZpbmRfaWYodGVz
dF9zdWl0ZXNfLnJiZWdpbigpLCB0ZXN0X3N1aXRlc18ucmVuZCgpLAorICAgICAgICAgICAgICAg
ICAgIFRlc3RTdWl0ZU5hbWVJcyh0ZXN0X3N1aXRlX25hbWUpKTsKKworICBpZiAodGVzdF9zdWl0
ZSAhPSB0ZXN0X3N1aXRlc18ucmVuZCgpKSByZXR1cm4gKnRlc3Rfc3VpdGU7CiAKICAgLy8gTm8u
ICBMZXQncyBjcmVhdGUgb25lLgotICBUZXN0Q2FzZSogY29uc3QgbmV3X3Rlc3RfY2FzZSA9Ci0g
ICAgICBuZXcgVGVzdENhc2UodGVzdF9jYXNlX25hbWUsIHR5cGVfcGFyYW0sIHNldF91cF90Yywg
dGVhcl9kb3duX3RjKTsKLQotICAvLyBJcyB0aGlzIGEgZGVhdGggdGVzdCBjYXNlPwotICBpZiAo
aW50ZXJuYWw6OlVuaXRUZXN0T3B0aW9uczo6TWF0Y2hlc0ZpbHRlcih0ZXN0X2Nhc2VfbmFtZSwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga0RlYXRoVGVz
dENhc2VGaWx0ZXIpKSB7Ci0gICAgLy8gWWVzLiAgSW5zZXJ0cyB0aGUgdGVzdCBjYXNlIGFmdGVy
IHRoZSBsYXN0IGRlYXRoIHRlc3QgY2FzZQotICAgIC8vIGRlZmluZWQgc28gZmFyLiAgVGhpcyBv
bmx5IHdvcmtzIHdoZW4gdGhlIHRlc3QgY2FzZXMgaGF2ZW4ndAorICBhdXRvKiBjb25zdCBuZXdf
dGVzdF9zdWl0ZSA9CisgICAgICBuZXcgVGVzdFN1aXRlKHRlc3Rfc3VpdGVfbmFtZSwgdHlwZV9w
YXJhbSwgc2V0X3VwX3RjLCB0ZWFyX2Rvd25fdGMpOworCisgIC8vIElzIHRoaXMgYSBkZWF0aCB0
ZXN0IHN1aXRlPworICBpZiAoaW50ZXJuYWw6OlVuaXRUZXN0T3B0aW9uczo6TWF0Y2hlc0ZpbHRl
cih0ZXN0X3N1aXRlX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGtEZWF0aFRlc3RTdWl0ZUZpbHRlcikpIHsKKyAgICAvLyBZZXMuICBJbnNlcnRz
IHRoZSB0ZXN0IHN1aXRlIGFmdGVyIHRoZSBsYXN0IGRlYXRoIHRlc3Qgc3VpdGUKKyAgICAvLyBk
ZWZpbmVkIHNvIGZhci4gIFRoaXMgb25seSB3b3JrcyB3aGVuIHRoZSB0ZXN0IHN1aXRlcyBoYXZl
bid0CiAgICAgLy8gYmVlbiBzaHVmZmxlZC4gIE90aGVyd2lzZSB3ZSBtYXkgZW5kIHVwIHJ1bm5p
bmcgYSBkZWF0aCB0ZXN0CiAgICAgLy8gYWZ0ZXIgYSBub24tZGVhdGggdGVzdC4KLSAgICArK2xh
c3RfZGVhdGhfdGVzdF9jYXNlXzsKLSAgICB0ZXN0X2Nhc2VzXy5pbnNlcnQodGVzdF9jYXNlc18u
YmVnaW4oKSArIGxhc3RfZGVhdGhfdGVzdF9jYXNlXywKLSAgICAgICAgICAgICAgICAgICAgICAg
bmV3X3Rlc3RfY2FzZSk7CisgICAgKytsYXN0X2RlYXRoX3Rlc3Rfc3VpdGVfOworICAgIHRlc3Rf
c3VpdGVzXy5pbnNlcnQodGVzdF9zdWl0ZXNfLmJlZ2luKCkgKyBsYXN0X2RlYXRoX3Rlc3Rfc3Vp
dGVfLAorICAgICAgICAgICAgICAgICAgICAgICAgbmV3X3Rlc3Rfc3VpdGUpOwogICB9IGVsc2Ug
ewogICAgIC8vIE5vLiAgQXBwZW5kcyB0byB0aGUgZW5kIG9mIHRoZSBsaXN0LgotICAgIHRlc3Rf
Y2FzZXNfLnB1c2hfYmFjayhuZXdfdGVzdF9jYXNlKTsKKyAgICB0ZXN0X3N1aXRlc18ucHVzaF9i
YWNrKG5ld190ZXN0X3N1aXRlKTsKICAgfQogCi0gIHRlc3RfY2FzZV9pbmRpY2VzXy5wdXNoX2Jh
Y2soc3RhdGljX2Nhc3Q8aW50Pih0ZXN0X2Nhc2VfaW5kaWNlc18uc2l6ZSgpKSk7Ci0gIHJldHVy
biBuZXdfdGVzdF9jYXNlOworICB0ZXN0X3N1aXRlX2luZGljZXNfLnB1c2hfYmFjayhzdGF0aWNf
Y2FzdDxpbnQ+KHRlc3Rfc3VpdGVfaW5kaWNlc18uc2l6ZSgpKSk7CisgIHJldHVybiBuZXdfdGVz
dF9zdWl0ZTsKIH0KIAogLy8gSGVscGVycyBmb3Igc2V0dGluZyB1cCAvIHRlYXJpbmcgZG93biB0
aGUgZ2l2ZW4gZW52aXJvbm1lbnQuICBUaGV5CkBAIC01MDgyLDcgKzU0MDcsOCBAQCBzdGF0aWMg
dm9pZCBUZWFyRG93bkVudmlyb25tZW50KEVudmlyb25tZW50KiBlbnYpIHsgZW52LT5UZWFyRG93
bigpOyB9CiAvLyBBbGwgb3RoZXIgZnVuY3Rpb25zIGNhbGxlZCBmcm9tIFJ1bkFsbFRlc3RzKCkg
bWF5IHNhZmVseSBhc3N1bWUgdGhhdAogLy8gcGFyYW1ldGVyaXplZCB0ZXN0cyBhcmUgcmVhZHkg
dG8gYmUgY291bnRlZCBhbmQgcnVuLgogYm9vbCBVbml0VGVzdEltcGw6OlJ1bkFsbFRlc3RzKCkg
ewotICAvLyBUcnVlIGlmZiBHb29nbGUgVGVzdCBpcyBpbml0aWFsaXplZCBiZWZvcmUgUlVOX0FM
TF9URVNUUygpIGlzIGNhbGxlZC4KKyAgLy8gVHJ1ZSBpZiBhbmQgb25seSBpZiBHb29nbGUgVGVz
dCBpcyBpbml0aWFsaXplZCBiZWZvcmUgUlVOX0FMTF9URVNUUygpIGlzCisgIC8vIGNhbGxlZC4K
ICAgY29uc3QgYm9vbCBndGVzdF9pc19pbml0aWFsaXplZF9iZWZvcmVfcnVuX2FsbF90ZXN0cyA9
IEdUZXN0SXNJbml0aWFsaXplZCgpOwogCiAgIC8vIERvIG5vdCBydW4gYW55IHRlc3QgaWYgdGhl
IC0taGVscCBmbGFnIHdhcyBzcGVjaWZpZWQuCkBAIC01MDk4LDEyICs1NDI0LDEzIEBAIGJvb2wg
VW5pdFRlc3RJbXBsOjpSdW5BbGxUZXN0cygpIHsKICAgLy8gcHJvdG9jb2wuCiAgIGludGVybmFs
OjpXcml0ZVRvU2hhcmRTdGF0dXNGaWxlSWZOZWVkZWQoKTsKIAotICAvLyBUcnVlIGlmZiB3ZSBh
cmUgaW4gYSBzdWJwcm9jZXNzIGZvciBydW5uaW5nIGEgdGhyZWFkLXNhZmUtc3R5bGUKKyAgLy8g
VHJ1ZSBpZiBhbmQgb25seSBpZiB3ZSBhcmUgaW4gYSBzdWJwcm9jZXNzIGZvciBydW5uaW5nIGEg
dGhyZWFkLXNhZmUtc3R5bGUKICAgLy8gZGVhdGggdGVzdC4KICAgYm9vbCBpbl9zdWJwcm9jZXNz
X2Zvcl9kZWF0aF90ZXN0ID0gZmFsc2U7CiAKICNpZiBHVEVTVF9IQVNfREVBVEhfVEVTVAotICBp
bl9zdWJwcm9jZXNzX2Zvcl9kZWF0aF90ZXN0ID0gKGludGVybmFsX3J1bl9kZWF0aF90ZXN0X2Zs
YWdfLmdldCgpICE9IE5VTEwpOworICBpbl9zdWJwcm9jZXNzX2Zvcl9kZWF0aF90ZXN0ID0KKyAg
ICAgIChpbnRlcm5hbF9ydW5fZGVhdGhfdGVzdF9mbGFnXy5nZXQoKSAhPSBudWxscHRyKTsKICMg
aWYgZGVmaW5lZChHVEVTVF9FWFRSQV9ERUFUSF9URVNUX0NISUxEX1NFVFVQXykKICAgaWYgKGlu
X3N1YnByb2Nlc3NfZm9yX2RlYXRoX3Rlc3QpIHsKICAgICBHVEVTVF9FWFRSQV9ERUFUSF9URVNU
X0NISUxEX1NFVFVQXygpOwpAQCAtNTEzMCw3ICs1NDU3LDcgQEAgYm9vbCBVbml0VGVzdEltcGw6
OlJ1bkFsbFRlc3RzKCkgewogICByYW5kb21fc2VlZF8gPSBHVEVTVF9GTEFHKHNodWZmbGUpID8K
ICAgICAgIEdldFJhbmRvbVNlZWRGcm9tRmxhZyhHVEVTVF9GTEFHKHJhbmRvbV9zZWVkKSkgOiAw
OwogCi0gIC8vIFRydWUgaWZmIGF0IGxlYXN0IG9uZSB0ZXN0IGhhcyBmYWlsZWQuCisgIC8vIFRy
dWUgaWYgYW5kIG9ubHkgaWYgYXQgbGVhc3Qgb25lIHRlc3QgaGFzIGZhaWxlZC4KICAgYm9vbCBm
YWlsZWQgPSBmYWxzZTsKIAogICBUZXN0RXZlbnRMaXN0ZW5lciogcmVwZWF0ZXIgPSBsaXN0ZW5l
cnMoKS0+cmVwZWF0ZXIoKTsKQEAgLTUxNDIsMTcgKzU0NjksMTcgQEAgYm9vbCBVbml0VGVzdElt
cGw6OlJ1bkFsbFRlc3RzKCkgewogICAvLyB3aGVuIHdlIGFyZSBpbnNpZGUgdGhlIHN1YnByb2Nl
c3Mgb2YgYSBkZWF0aCB0ZXN0LgogICBjb25zdCBpbnQgcmVwZWF0ID0gaW5fc3VicHJvY2Vzc19m
b3JfZGVhdGhfdGVzdCA/IDEgOiBHVEVTVF9GTEFHKHJlcGVhdCk7CiAgIC8vIFJlcGVhdHMgZm9y
ZXZlciBpZiB0aGUgcmVwZWF0IGNvdW50IGlzIG5lZ2F0aXZlLgotICBjb25zdCBib29sIGZvcmV2
ZXIgPSByZXBlYXQgPCAwOwotICBmb3IgKGludCBpID0gMDsgZm9yZXZlciB8fCBpICE9IHJlcGVh
dDsgaSsrKSB7CisgIGNvbnN0IGJvb2wgZ3Rlc3RfcmVwZWF0X2ZvcmV2ZXIgPSByZXBlYXQgPCAw
OworICBmb3IgKGludCBpID0gMDsgZ3Rlc3RfcmVwZWF0X2ZvcmV2ZXIgfHwgaSAhPSByZXBlYXQ7
IGkrKykgewogICAgIC8vIFdlIHdhbnQgdG8gcHJlc2VydmUgZmFpbHVyZXMgZ2VuZXJhdGVkIGJ5
IGFkLWhvYyB0ZXN0CiAgICAgLy8gYXNzZXJ0aW9ucyBleGVjdXRlZCBiZWZvcmUgUlVOX0FMTF9U
RVNUUygpLgogICAgIENsZWFyTm9uQWRIb2NUZXN0UmVzdWx0KCk7CiAKICAgICBjb25zdCBUaW1l
SW5NaWxsaXMgc3RhcnQgPSBHZXRUaW1lSW5NaWxsaXMoKTsKIAotICAgIC8vIFNodWZmbGVzIHRl
c3QgY2FzZXMgYW5kIHRlc3RzIGlmIHJlcXVlc3RlZC4KKyAgICAvLyBTaHVmZmxlcyB0ZXN0IHN1
aXRlcyBhbmQgdGVzdHMgaWYgcmVxdWVzdGVkLgogICAgIGlmIChoYXNfdGVzdHNfdG9fcnVuICYm
IEdURVNUX0ZMQUcoc2h1ZmZsZSkpIHsKLSAgICAgIHJhbmRvbSgpLT5SZXNlZWQocmFuZG9tX3Nl
ZWRfKTsKKyAgICAgIHJhbmRvbSgpLT5SZXNlZWQoc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHJhbmRv
bV9zZWVkXykpOwogICAgICAgLy8gVGhpcyBzaG91bGQgYmUgZG9uZSBiZWZvcmUgY2FsbGluZyBP
blRlc3RJdGVyYXRpb25TdGFydCgpLAogICAgICAgLy8gc3VjaCB0aGF0IGEgdGVzdCBldmVudCBs
aXN0ZW5lciBjYW4gc2VlIHRoZSBhY3R1YWwgdGVzdCBvcmRlcgogICAgICAgLy8gaW4gdGhlIGV2
ZW50LgpAQCAtNTE2MiwxOSArNTQ4OSwzMyBAQCBib29sIFVuaXRUZXN0SW1wbDo6UnVuQWxsVGVz
dHMoKSB7CiAgICAgLy8gVGVsbHMgdGhlIHVuaXQgdGVzdCBldmVudCBsaXN0ZW5lcnMgdGhhdCB0
aGUgdGVzdHMgYXJlIGFib3V0IHRvIHN0YXJ0LgogICAgIHJlcGVhdGVyLT5PblRlc3RJdGVyYXRp
b25TdGFydCgqcGFyZW50XywgaSk7CiAKLSAgICAvLyBSdW5zIGVhY2ggdGVzdCBjYXNlIGlmIHRo
ZXJlIGlzIGF0IGxlYXN0IG9uZSB0ZXN0IHRvIHJ1bi4KKyAgICAvLyBSdW5zIGVhY2ggdGVzdCBz
dWl0ZSBpZiB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgdGVzdCB0byBydW4uCiAgICAgaWYgKGhhc190
ZXN0c190b19ydW4pIHsKICAgICAgIC8vIFNldHMgdXAgYWxsIGVudmlyb25tZW50cyBiZWZvcmVo
YW5kLgogICAgICAgcmVwZWF0ZXItPk9uRW52aXJvbm1lbnRzU2V0VXBTdGFydCgqcGFyZW50Xyk7
CiAgICAgICBGb3JFYWNoKGVudmlyb25tZW50c18sIFNldFVwRW52aXJvbm1lbnQpOwogICAgICAg
cmVwZWF0ZXItPk9uRW52aXJvbm1lbnRzU2V0VXBFbmQoKnBhcmVudF8pOwogCi0gICAgICAvLyBS
dW5zIHRoZSB0ZXN0cyBvbmx5IGlmIHRoZXJlIHdhcyBubyBmYXRhbCBmYWlsdXJlIGR1cmluZyBn
bG9iYWwKLSAgICAgIC8vIHNldC11cC4KLSAgICAgIGlmICghVGVzdDo6SGFzRmF0YWxGYWlsdXJl
KCkpIHsKLSAgICAgICAgZm9yIChpbnQgdGVzdF9pbmRleCA9IDA7IHRlc3RfaW5kZXggPCB0b3Rh
bF90ZXN0X2Nhc2VfY291bnQoKTsKKyAgICAgIC8vIFJ1bnMgdGhlIHRlc3RzIG9ubHkgaWYgdGhl
cmUgd2FzIG5vIGZhdGFsIGZhaWx1cmUgb3Igc2tpcCB0cmlnZ2VyZWQKKyAgICAgIC8vIGR1cmlu
ZyBnbG9iYWwgc2V0LXVwLgorICAgICAgaWYgKFRlc3Q6OklzU2tpcHBlZCgpKSB7CisgICAgICAg
IC8vIEVtaXQgZGlhZ25vc3RpY3Mgd2hlbiBnbG9iYWwgc2V0LXVwIGNhbGxzIHNraXAsIGFzIGl0
IHdpbGwgbm90IGJlCisgICAgICAgIC8vIGVtaXR0ZWQgYnkgZGVmYXVsdC4KKyAgICAgICAgVGVz
dFJlc3VsdCYgdGVzdF9yZXN1bHQgPQorICAgICAgICAgICAgKmludGVybmFsOjpHZXRVbml0VGVz
dEltcGwoKS0+Y3VycmVudF90ZXN0X3Jlc3VsdCgpOworICAgICAgICBmb3IgKGludCBqID0gMDsg
aiA8IHRlc3RfcmVzdWx0LnRvdGFsX3BhcnRfY291bnQoKTsgKytqKSB7CisgICAgICAgICAgY29u
c3QgVGVzdFBhcnRSZXN1bHQmIHRlc3RfcGFydF9yZXN1bHQgPQorICAgICAgICAgICAgICB0ZXN0
X3Jlc3VsdC5HZXRUZXN0UGFydFJlc3VsdChqKTsKKyAgICAgICAgICBpZiAodGVzdF9wYXJ0X3Jl
c3VsdC50eXBlKCkgPT0gVGVzdFBhcnRSZXN1bHQ6OmtTa2lwKSB7CisgICAgICAgICAgICBjb25z
dCBzdGQ6OnN0cmluZyYgcmVzdWx0ID0gdGVzdF9wYXJ0X3Jlc3VsdC5tZXNzYWdlKCk7CisgICAg
ICAgICAgICBwcmludGYoIiVzXG4iLCByZXN1bHQuY19zdHIoKSk7CisgICAgICAgICAgfQorICAg
ICAgICB9CisgICAgICAgIGZmbHVzaChzdGRvdXQpOworICAgICAgfSBlbHNlIGlmICghVGVzdDo6
SGFzRmF0YWxGYWlsdXJlKCkpIHsKKyAgICAgICAgZm9yIChpbnQgdGVzdF9pbmRleCA9IDA7IHRl
c3RfaW5kZXggPCB0b3RhbF90ZXN0X3N1aXRlX2NvdW50KCk7CiAgICAgICAgICAgICAgdGVzdF9p
bmRleCsrKSB7Ci0gICAgICAgICAgR2V0TXV0YWJsZVRlc3RDYXNlKHRlc3RfaW5kZXgpLT5SdW4o
KTsKKyAgICAgICAgICBHZXRNdXRhYmxlU3VpdGVDYXNlKHRlc3RfaW5kZXgpLT5SdW4oKTsKICAg
ICAgICAgfQogICAgICAgfQogCkBAIC01MjM0LDkgKzU1NzUsOSBAQCBib29sIFVuaXRUZXN0SW1w
bDo6UnVuQWxsVGVzdHMoKSB7CiAvLyBiZSBjcmVhdGVkLCBwcmludHMgYW4gZXJyb3IgYW5kIGV4
aXRzLgogdm9pZCBXcml0ZVRvU2hhcmRTdGF0dXNGaWxlSWZOZWVkZWQoKSB7CiAgIGNvbnN0IGNo
YXIqIGNvbnN0IHRlc3Rfc2hhcmRfZmlsZSA9IHBvc2l4OjpHZXRFbnYoa1Rlc3RTaGFyZFN0YXR1
c0ZpbGUpOwotICBpZiAodGVzdF9zaGFyZF9maWxlICE9IE5VTEwpIHsKKyAgaWYgKHRlc3Rfc2hh
cmRfZmlsZSAhPSBudWxscHRyKSB7CiAgICAgRklMRSogY29uc3QgZmlsZSA9IHBvc2l4OjpGT3Bl
bih0ZXN0X3NoYXJkX2ZpbGUsICJ3Iik7Ci0gICAgaWYgKGZpbGUgPT0gTlVMTCkgeworICAgIGlm
IChmaWxlID09IG51bGxwdHIpIHsKICAgICAgIENvbG9yZWRQcmludGYoQ09MT1JfUkVELAogICAg
ICAgICAgICAgICAgICAgICAiQ291bGQgbm90IHdyaXRlIHRvIHRoZSB0ZXN0IHNoYXJkIHN0YXR1
cyBmaWxlIFwiJXNcIiAiCiAgICAgICAgICAgICAgICAgICAgICJzcGVjaWZpZWQgYnkgdGhlICVz
IGVudmlyb25tZW50IHZhcmlhYmxlLlxuIiwKQEAgLTUyNjEsOCArNTYwMiw4IEBAIGJvb2wgU2hv
dWxkU2hhcmQoY29uc3QgY2hhciogdG90YWxfc2hhcmRzX2VudiwKICAgICByZXR1cm4gZmFsc2U7
CiAgIH0KIAotICBjb25zdCBJbnQzMiB0b3RhbF9zaGFyZHMgPSBJbnQzMkZyb21FbnZPckRpZSh0
b3RhbF9zaGFyZHNfZW52LCAtMSk7Ci0gIGNvbnN0IEludDMyIHNoYXJkX2luZGV4ID0gSW50MzJG
cm9tRW52T3JEaWUoc2hhcmRfaW5kZXhfZW52LCAtMSk7CisgIGNvbnN0IGludDMyX3QgdG90YWxf
c2hhcmRzID0gSW50MzJGcm9tRW52T3JEaWUodG90YWxfc2hhcmRzX2VudiwgLTEpOworICBjb25z
dCBpbnQzMl90IHNoYXJkX2luZGV4ID0gSW50MzJGcm9tRW52T3JEaWUoc2hhcmRfaW5kZXhfZW52
LCAtMSk7CiAKICAgaWYgKHRvdGFsX3NoYXJkcyA9PSAtMSAmJiBzaGFyZF9pbmRleCA9PSAtMSkg
ewogICAgIHJldHVybiBmYWxzZTsKQEAgLTUyNzEsNyArNTYxMiw3IEBAIGJvb2wgU2hvdWxkU2hh
cmQoY29uc3QgY2hhciogdG90YWxfc2hhcmRzX2VudiwKICAgICAgIDw8ICJJbnZhbGlkIGVudmly
b25tZW50IHZhcmlhYmxlczogeW91IGhhdmUgIgogICAgICAgPDwga1Rlc3RTaGFyZEluZGV4IDw8
ICIgPSAiIDw8IHNoYXJkX2luZGV4CiAgICAgICA8PCAiLCBidXQgaGF2ZSBsZWZ0ICIgPDwga1Rl
c3RUb3RhbFNoYXJkcyA8PCAiIHVuc2V0LlxuIjsKLSAgICBDb2xvcmVkUHJpbnRmKENPTE9SX1JF
RCwgbXNnLkdldFN0cmluZygpLmNfc3RyKCkpOworICAgIENvbG9yZWRQcmludGYoQ09MT1JfUkVE
LCAiJXMiLCBtc2cuR2V0U3RyaW5nKCkuY19zdHIoKSk7CiAgICAgZmZsdXNoKHN0ZG91dCk7CiAg
ICAgZXhpdChFWElUX0ZBSUxVUkUpOwogICB9IGVsc2UgaWYgKHRvdGFsX3NoYXJkcyAhPSAtMSAm
JiBzaGFyZF9pbmRleCA9PSAtMSkgewpAQCAtNTI3OSw3ICs1NjIwLDcgQEAgYm9vbCBTaG91bGRT
aGFyZChjb25zdCBjaGFyKiB0b3RhbF9zaGFyZHNfZW52LAogICAgICAgPDwgIkludmFsaWQgZW52
aXJvbm1lbnQgdmFyaWFibGVzOiB5b3UgaGF2ZSAiCiAgICAgICA8PCBrVGVzdFRvdGFsU2hhcmRz
IDw8ICIgPSAiIDw8IHRvdGFsX3NoYXJkcwogICAgICAgPDwgIiwgYnV0IGhhdmUgbGVmdCAiIDw8
IGtUZXN0U2hhcmRJbmRleCA8PCAiIHVuc2V0LlxuIjsKLSAgICBDb2xvcmVkUHJpbnRmKENPTE9S
X1JFRCwgbXNnLkdldFN0cmluZygpLmNfc3RyKCkpOworICAgIENvbG9yZWRQcmludGYoQ09MT1Jf
UkVELCAiJXMiLCBtc2cuR2V0U3RyaW5nKCkuY19zdHIoKSk7CiAgICAgZmZsdXNoKHN0ZG91dCk7
CiAgICAgZXhpdChFWElUX0ZBSUxVUkUpOwogICB9IGVsc2UgaWYgKHNoYXJkX2luZGV4IDwgMCB8
fCBzaGFyZF9pbmRleCA+PSB0b3RhbF9zaGFyZHMpIHsKQEAgLTUyODgsNyArNTYyOSw3IEBAIGJv
b2wgU2hvdWxkU2hhcmQoY29uc3QgY2hhciogdG90YWxfc2hhcmRzX2VudiwKICAgICAgIDw8IGtU
ZXN0U2hhcmRJbmRleCA8PCAiIDwgIiA8PCBrVGVzdFRvdGFsU2hhcmRzCiAgICAgICA8PCAiLCBi
dXQgeW91IGhhdmUgIiA8PCBrVGVzdFNoYXJkSW5kZXggPDwgIj0iIDw8IHNoYXJkX2luZGV4CiAg
ICAgICA8PCAiLCAiIDw8IGtUZXN0VG90YWxTaGFyZHMgPDwgIj0iIDw8IHRvdGFsX3NoYXJkcyA8
PCAiLlxuIjsKLSAgICBDb2xvcmVkUHJpbnRmKENPTE9SX1JFRCwgbXNnLkdldFN0cmluZygpLmNf
c3RyKCkpOworICAgIENvbG9yZWRQcmludGYoQ09MT1JfUkVELCAiJXMiLCBtc2cuR2V0U3RyaW5n
KCkuY19zdHIoKSk7CiAgICAgZmZsdXNoKHN0ZG91dCk7CiAgICAgZXhpdChFWElUX0ZBSUxVUkUp
OwogICB9CkBAIC01Mjk5LDEzICs1NjQwLDEzIEBAIGJvb2wgU2hvdWxkU2hhcmQoY29uc3QgY2hh
ciogdG90YWxfc2hhcmRzX2VudiwKIC8vIFBhcnNlcyB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUg
dmFyIGFzIGFuIEludDMyLiBJZiBpdCBpcyB1bnNldCwKIC8vIHJldHVybnMgZGVmYXVsdF92YWwu
IElmIGl0IGlzIG5vdCBhbiBJbnQzMiwgcHJpbnRzIGFuIGVycm9yCiAvLyBhbmQgYWJvcnRzLgot
SW50MzIgSW50MzJGcm9tRW52T3JEaWUoY29uc3QgY2hhciogdmFyLCBJbnQzMiBkZWZhdWx0X3Zh
bCkgeworaW50MzJfdCBJbnQzMkZyb21FbnZPckRpZShjb25zdCBjaGFyKiB2YXIsIGludDMyX3Qg
ZGVmYXVsdF92YWwpIHsKICAgY29uc3QgY2hhciogc3RyX3ZhbCA9IHBvc2l4OjpHZXRFbnYodmFy
KTsKLSAgaWYgKHN0cl92YWwgPT0gTlVMTCkgeworICBpZiAoc3RyX3ZhbCA9PSBudWxscHRyKSB7
CiAgICAgcmV0dXJuIGRlZmF1bHRfdmFsOwogICB9CiAKLSAgSW50MzIgcmVzdWx0OworICBpbnQz
Ml90IHJlc3VsdDsKICAgaWYgKCFQYXJzZUludDMyKE1lc3NhZ2UoKSA8PCAiVGhlIHZhbHVlIG9m
IGVudmlyb25tZW50IHZhcmlhYmxlICIgPDwgdmFyLAogICAgICAgICAgICAgICAgICAgc3RyX3Zh
bCwgJnJlc3VsdCkpIHsKICAgICBleGl0KEVYSVRfRkFJTFVSRSk7CkBAIC01MzE0LDggKzU2NTUs
OCBAQCBJbnQzMiBJbnQzMkZyb21FbnZPckRpZShjb25zdCBjaGFyKiB2YXIsIEludDMyIGRlZmF1
bHRfdmFsKSB7CiB9CiAKIC8vIEdpdmVuIHRoZSB0b3RhbCBudW1iZXIgb2Ygc2hhcmRzLCB0aGUg
c2hhcmQgaW5kZXgsIGFuZCB0aGUgdGVzdCBpZCwKLS8vIHJldHVybnMgdHJ1ZSBpZmYgdGhlIHRl
c3Qgc2hvdWxkIGJlIHJ1biBvbiB0aGlzIHNoYXJkLiBUaGUgdGVzdCBpZCBpcwotLy8gc29tZSBh
cmJpdHJhcnkgYnV0IHVuaXF1ZSBub24tbmVnYXRpdmUgaW50ZWdlciBhc3NpZ25lZCB0byBlYWNo
IHRlc3QKKy8vIHJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGUgdGVzdCBzaG91bGQgYmUg
cnVuIG9uIHRoaXMgc2hhcmQuIFRoZSB0ZXN0IGlkCisvLyBpcyBzb21lIGFyYml0cmFyeSBidXQg
dW5pcXVlIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyIGFzc2lnbmVkIHRvIGVhY2ggdGVzdAogLy8gbWV0
aG9kLiBBc3N1bWVzIHRoYXQgMCA8PSBzaGFyZF9pbmRleCA8IHRvdGFsX3NoYXJkcy4KIGJvb2wg
U2hvdWxkUnVuVGVzdE9uU2hhcmQoaW50IHRvdGFsX3NoYXJkcywgaW50IHNoYXJkX2luZGV4LCBp
bnQgdGVzdF9pZCkgewogICByZXR1cm4gKHRlc3RfaWQgJSB0b3RhbF9zaGFyZHMpID09IHNoYXJk
X2luZGV4OwpAQCAtNTMyMywxNSArNTY2NCwxNSBAQCBib29sIFNob3VsZFJ1blRlc3RPblNoYXJk
KGludCB0b3RhbF9zaGFyZHMsIGludCBzaGFyZF9pbmRleCwgaW50IHRlc3RfaWQpIHsKIAogLy8g
Q29tcGFyZXMgdGhlIG5hbWUgb2YgZWFjaCB0ZXN0IHdpdGggdGhlIHVzZXItc3BlY2lmaWVkIGZp
bHRlciB0bwogLy8gZGVjaWRlIHdoZXRoZXIgdGhlIHRlc3Qgc2hvdWxkIGJlIHJ1biwgdGhlbiBy
ZWNvcmRzIHRoZSByZXN1bHQgaW4KLS8vIGVhY2ggVGVzdENhc2UgYW5kIFRlc3RJbmZvIG9iamVj
dC4KKy8vIGVhY2ggVGVzdFN1aXRlIGFuZCBUZXN0SW5mbyBvYmplY3QuCiAvLyBJZiBzaGFyZF90
ZXN0cyA9PSB0cnVlLCBmdXJ0aGVyIGZpbHRlcnMgdGVzdHMgYmFzZWQgb24gc2hhcmRpbmcKIC8v
IHZhcmlhYmxlcyBpbiB0aGUgZW52aXJvbm1lbnQgLSBzZWUKIC8vIGh0dHBzOi8vZ2l0aHViLmNv
bS9nb29nbGUvZ29vZ2xldGVzdC9ibG9iL21hc3Rlci9nb29nbGV0ZXN0L2RvY3MvYWR2YW5jZWQu
bWQKIC8vIC4gUmV0dXJucyB0aGUgbnVtYmVyIG9mIHRlc3RzIHRoYXQgc2hvdWxkIHJ1bi4KIGlu
dCBVbml0VGVzdEltcGw6OkZpbHRlclRlc3RzKFJlYWN0aW9uVG9TaGFyZGluZyBzaGFyZF90ZXN0
cykgewotICBjb25zdCBJbnQzMiB0b3RhbF9zaGFyZHMgPSBzaGFyZF90ZXN0cyA9PSBIT05PUl9T
SEFSRElOR19QUk9UT0NPTCA/CisgIGNvbnN0IGludDMyX3QgdG90YWxfc2hhcmRzID0gc2hhcmRf
dGVzdHMgPT0gSE9OT1JfU0hBUkRJTkdfUFJPVE9DT0wgPwogICAgICAgSW50MzJGcm9tRW52T3JE
aWUoa1Rlc3RUb3RhbFNoYXJkcywgLTEpIDogLTE7Ci0gIGNvbnN0IEludDMyIHNoYXJkX2luZGV4
ID0gc2hhcmRfdGVzdHMgPT0gSE9OT1JfU0hBUkRJTkdfUFJPVE9DT0wgPworICBjb25zdCBpbnQz
Ml90IHNoYXJkX2luZGV4ID0gc2hhcmRfdGVzdHMgPT0gSE9OT1JfU0hBUkRJTkdfUFJPVE9DT0wg
PwogICAgICAgSW50MzJGcm9tRW52T3JEaWUoa1Rlc3RTaGFyZEluZGV4LCAtMSkgOiAtMTsKIAog
ICAvLyBudW1fcnVubmFibGVfdGVzdHMgYXJlIHRoZSBudW1iZXIgb2YgdGVzdHMgdGhhdCB3aWxs
CkBAIC01MzQwLDI2ICs1NjgxLDIzIEBAIGludCBVbml0VGVzdEltcGw6OkZpbHRlclRlc3RzKFJl
YWN0aW9uVG9TaGFyZGluZyBzaGFyZF90ZXN0cykgewogICAvLyB0aGlzIHNoYXJkLgogICBpbnQg
bnVtX3J1bm5hYmxlX3Rlc3RzID0gMDsKICAgaW50IG51bV9zZWxlY3RlZF90ZXN0cyA9IDA7Ci0g
IGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgdGVzdF9jYXNlc18uc2l6ZSgpOyBpKyspIHsKLSAgICBU
ZXN0Q2FzZSogY29uc3QgdGVzdF9jYXNlID0gdGVzdF9jYXNlc19baV07Ci0gICAgY29uc3Qgc3Rk
OjpzdHJpbmcgJnRlc3RfY2FzZV9uYW1lID0gdGVzdF9jYXNlLT5uYW1lKCk7Ci0gICAgdGVzdF9j
YXNlLT5zZXRfc2hvdWxkX3J1bihmYWxzZSk7CisgIGZvciAoYXV0byogdGVzdF9zdWl0ZSA6IHRl
c3Rfc3VpdGVzXykgeworICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiB0ZXN0X3N1aXRlX25hbWUgPSB0
ZXN0X3N1aXRlLT5uYW1lKCk7CisgICAgdGVzdF9zdWl0ZS0+c2V0X3Nob3VsZF9ydW4oZmFsc2Up
OwogCi0gICAgZm9yIChzaXplX3QgaiA9IDA7IGogPCB0ZXN0X2Nhc2UtPnRlc3RfaW5mb19saXN0
KCkuc2l6ZSgpOyBqKyspIHsKLSAgICAgIFRlc3RJbmZvKiBjb25zdCB0ZXN0X2luZm8gPSB0ZXN0
X2Nhc2UtPnRlc3RfaW5mb19saXN0KClbal07CisgICAgZm9yIChzaXplX3QgaiA9IDA7IGogPCB0
ZXN0X3N1aXRlLT50ZXN0X2luZm9fbGlzdCgpLnNpemUoKTsgaisrKSB7CisgICAgICBUZXN0SW5m
byogY29uc3QgdGVzdF9pbmZvID0gdGVzdF9zdWl0ZS0+dGVzdF9pbmZvX2xpc3QoKVtqXTsKICAg
ICAgIGNvbnN0IHN0ZDo6c3RyaW5nIHRlc3RfbmFtZSh0ZXN0X2luZm8tPm5hbWUoKSk7Ci0gICAg
ICAvLyBBIHRlc3QgaXMgZGlzYWJsZWQgaWYgdGVzdCBjYXNlIG5hbWUgb3IgdGVzdCBuYW1lIG1h
dGNoZXMKKyAgICAgIC8vIEEgdGVzdCBpcyBkaXNhYmxlZCBpZiB0ZXN0IHN1aXRlIG5hbWUgb3Ig
dGVzdCBuYW1lIG1hdGNoZXMKICAgICAgIC8vIGtEaXNhYmxlVGVzdEZpbHRlci4KLSAgICAgIGNv
bnN0IGJvb2wgaXNfZGlzYWJsZWQgPQotICAgICAgICAgIGludGVybmFsOjpVbml0VGVzdE9wdGlv
bnM6Ok1hdGNoZXNGaWx0ZXIodGVzdF9jYXNlX25hbWUsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrRGlzYWJsZVRlc3RGaWx0ZXIpIHx8Ci0gICAg
ICAgICAgaW50ZXJuYWw6OlVuaXRUZXN0T3B0aW9uczo6TWF0Y2hlc0ZpbHRlcih0ZXN0X25hbWUs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrRGlz
YWJsZVRlc3RGaWx0ZXIpOworICAgICAgY29uc3QgYm9vbCBpc19kaXNhYmxlZCA9IGludGVybmFs
OjpVbml0VGVzdE9wdGlvbnM6Ok1hdGNoZXNGaWx0ZXIoCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHRlc3Rfc3VpdGVfbmFtZSwga0Rpc2FibGVUZXN0RmlsdGVyKSB8fAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsOjpVbml0VGVzdE9wdGlvbnM6Ok1h
dGNoZXNGaWx0ZXIoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfbmFt
ZSwga0Rpc2FibGVUZXN0RmlsdGVyKTsKICAgICAgIHRlc3RfaW5mby0+aXNfZGlzYWJsZWRfID0g
aXNfZGlzYWJsZWQ7CiAKLSAgICAgIGNvbnN0IGJvb2wgbWF0Y2hlc19maWx0ZXIgPQotICAgICAg
ICAgIGludGVybmFsOjpVbml0VGVzdE9wdGlvbnM6OkZpbHRlck1hdGNoZXNUZXN0KHRlc3RfY2Fz
ZV9uYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHRlc3RfbmFtZSk7CisgICAgICBjb25zdCBib29sIG1hdGNoZXNfZmlsdGVyID0gaW50
ZXJuYWw6OlVuaXRUZXN0T3B0aW9uczo6RmlsdGVyTWF0Y2hlc1Rlc3QoCisgICAgICAgICAgdGVz
dF9zdWl0ZV9uYW1lLCB0ZXN0X25hbWUpOwogICAgICAgdGVzdF9pbmZvLT5tYXRjaGVzX2ZpbHRl
cl8gPSBtYXRjaGVzX2ZpbHRlcjsKIAogICAgICAgY29uc3QgYm9vbCBpc19ydW5uYWJsZSA9CkBA
IC01Mzc2LDcgKzU3MTQsNyBAQCBpbnQgVW5pdFRlc3RJbXBsOjpGaWx0ZXJUZXN0cyhSZWFjdGlv
blRvU2hhcmRpbmcgc2hhcmRfdGVzdHMpIHsKICAgICAgIG51bV9zZWxlY3RlZF90ZXN0cyArPSBp
c19zZWxlY3RlZDsKIAogICAgICAgdGVzdF9pbmZvLT5zaG91bGRfcnVuXyA9IGlzX3NlbGVjdGVk
OwotICAgICAgdGVzdF9jYXNlLT5zZXRfc2hvdWxkX3J1bih0ZXN0X2Nhc2UtPnNob3VsZF9ydW4o
KSB8fCBpc19zZWxlY3RlZCk7CisgICAgICB0ZXN0X3N1aXRlLT5zZXRfc2hvdWxkX3J1bih0ZXN0
X3N1aXRlLT5zaG91bGRfcnVuKCkgfHwgaXNfc2VsZWN0ZWQpOwogICAgIH0KICAgfQogICByZXR1
cm4gbnVtX3NlbGVjdGVkX3Rlc3RzOwpAQCAtNTM4Nyw3ICs1NzI1LDcgQEAgaW50IFVuaXRUZXN0
SW1wbDo6RmlsdGVyVGVzdHMoUmVhY3Rpb25Ub1NoYXJkaW5nIHNoYXJkX3Rlc3RzKSB7CiAvLyBt
YXhfbGVuZ3RoIGNoYXJhY3RlcnMsIG9ubHkgcHJpbnRzIHRoZSBmaXJzdCBtYXhfbGVuZ3RoIGNo
YXJhY3RlcnMKIC8vIGFuZCAiLi4uIi4KIHN0YXRpYyB2b2lkIFByaW50T25PbmVMaW5lKGNvbnN0
IGNoYXIqIHN0ciwgaW50IG1heF9sZW5ndGgpIHsKLSAgaWYgKHN0ciAhPSBOVUxMKSB7CisgIGlm
IChzdHIgIT0gbnVsbHB0cikgewogICAgIGZvciAoaW50IGkgPSAwOyAqc3RyICE9ICdcMCc7ICsr
c3RyKSB7CiAgICAgICBpZiAoaSA+PSBtYXhfbGVuZ3RoKSB7CiAgICAgICAgIHByaW50ZigiLi4u
Iik7CkBAIC01NDA5LDI3ICs1NzQ3LDI1IEBAIHZvaWQgVW5pdFRlc3RJbXBsOjpMaXN0VGVzdHNN
YXRjaGluZ0ZpbHRlcigpIHsKICAgLy8gUHJpbnQgYXQgbW9zdCB0aGlzIG1hbnkgY2hhcmFjdGVy
cyBmb3IgZWFjaCB0eXBlL3ZhbHVlIHBhcmFtZXRlci4KICAgY29uc3QgaW50IGtNYXhQYXJhbUxl
bmd0aCA9IDI1MDsKIAotICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHRlc3RfY2FzZXNfLnNpemUo
KTsgaSsrKSB7Ci0gICAgY29uc3QgVGVzdENhc2UqIGNvbnN0IHRlc3RfY2FzZSA9IHRlc3RfY2Fz
ZXNfW2ldOwotICAgIGJvb2wgcHJpbnRlZF90ZXN0X2Nhc2VfbmFtZSA9IGZhbHNlOworICBmb3Ig
KGF1dG8qIHRlc3Rfc3VpdGUgOiB0ZXN0X3N1aXRlc18pIHsKKyAgICBib29sIHByaW50ZWRfdGVz
dF9zdWl0ZV9uYW1lID0gZmFsc2U7CiAKLSAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IHRlc3Rf
Y2FzZS0+dGVzdF9pbmZvX2xpc3QoKS5zaXplKCk7IGorKykgewotICAgICAgY29uc3QgVGVzdElu
Zm8qIGNvbnN0IHRlc3RfaW5mbyA9Ci0gICAgICAgICAgdGVzdF9jYXNlLT50ZXN0X2luZm9fbGlz
dCgpW2pdOworICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgdGVzdF9zdWl0ZS0+dGVzdF9pbmZv
X2xpc3QoKS5zaXplKCk7IGorKykgeworICAgICAgY29uc3QgVGVzdEluZm8qIGNvbnN0IHRlc3Rf
aW5mbyA9IHRlc3Rfc3VpdGUtPnRlc3RfaW5mb19saXN0KClbal07CiAgICAgICBpZiAodGVzdF9p
bmZvLT5tYXRjaGVzX2ZpbHRlcl8pIHsKLSAgICAgICAgaWYgKCFwcmludGVkX3Rlc3RfY2FzZV9u
YW1lKSB7Ci0gICAgICAgICAgcHJpbnRlZF90ZXN0X2Nhc2VfbmFtZSA9IHRydWU7Ci0gICAgICAg
ICAgcHJpbnRmKCIlcy4iLCB0ZXN0X2Nhc2UtPm5hbWUoKSk7Ci0gICAgICAgICAgaWYgKHRlc3Rf
Y2FzZS0+dHlwZV9wYXJhbSgpICE9IE5VTEwpIHsKKyAgICAgICAgaWYgKCFwcmludGVkX3Rlc3Rf
c3VpdGVfbmFtZSkgeworICAgICAgICAgIHByaW50ZWRfdGVzdF9zdWl0ZV9uYW1lID0gdHJ1ZTsK
KyAgICAgICAgICBwcmludGYoIiVzLiIsIHRlc3Rfc3VpdGUtPm5hbWUoKSk7CisgICAgICAgICAg
aWYgKHRlc3Rfc3VpdGUtPnR5cGVfcGFyYW0oKSAhPSBudWxscHRyKSB7CiAgICAgICAgICAgICBw
cmludGYoIiAgIyAlcyA9ICIsIGtUeXBlUGFyYW1MYWJlbCk7CiAgICAgICAgICAgICAvLyBXZSBw
cmludCB0aGUgdHlwZSBwYXJhbWV0ZXIgb24gYSBzaW5nbGUgbGluZSB0byBtYWtlCiAgICAgICAg
ICAgICAvLyB0aGUgb3V0cHV0IGVhc3kgdG8gcGFyc2UgYnkgYSBwcm9ncmFtLgotICAgICAgICAg
ICAgUHJpbnRPbk9uZUxpbmUodGVzdF9jYXNlLT50eXBlX3BhcmFtKCksIGtNYXhQYXJhbUxlbmd0
aCk7CisgICAgICAgICAgICBQcmludE9uT25lTGluZSh0ZXN0X3N1aXRlLT50eXBlX3BhcmFtKCks
IGtNYXhQYXJhbUxlbmd0aCk7CiAgICAgICAgICAgfQogICAgICAgICAgIHByaW50ZigiXG4iKTsK
ICAgICAgICAgfQogICAgICAgICBwcmludGYoIiAgJXMiLCB0ZXN0X2luZm8tPm5hbWUoKSk7Ci0g
ICAgICAgIGlmICh0ZXN0X2luZm8tPnZhbHVlX3BhcmFtKCkgIT0gTlVMTCkgeworICAgICAgICBp
ZiAodGVzdF9pbmZvLT52YWx1ZV9wYXJhbSgpICE9IG51bGxwdHIpIHsKICAgICAgICAgICBwcmlu
dGYoIiAgIyAlcyA9ICIsIGtWYWx1ZVBhcmFtTGFiZWwpOwogICAgICAgICAgIC8vIFdlIHByaW50
IHRoZSB2YWx1ZSBwYXJhbWV0ZXIgb24gYSBzaW5nbGUgbGluZSB0byBtYWtlIHRoZQogICAgICAg
ICAgIC8vIG91dHB1dCBlYXN5IHRvIHBhcnNlIGJ5IGEgcHJvZ3JhbS4KQEAgLTU0NDgsMTEgKzU3
ODQsMTEgQEAgdm9pZCBVbml0VGVzdEltcGw6Okxpc3RUZXN0c01hdGNoaW5nRmlsdGVyKCkgewog
ICAgIGlmIChvdXRwdXRfZm9ybWF0ID09ICJ4bWwiKSB7CiAgICAgICBYbWxVbml0VGVzdFJlc3Vs
dFByaW50ZXIoCiAgICAgICAgICAgVW5pdFRlc3RPcHRpb25zOjpHZXRBYnNvbHV0ZVBhdGhUb091
dHB1dEZpbGUoKS5jX3N0cigpKQotICAgICAgICAgIC5QcmludFhtbFRlc3RzTGlzdCgmc3RyZWFt
LCB0ZXN0X2Nhc2VzXyk7CisgICAgICAgICAgLlByaW50WG1sVGVzdHNMaXN0KCZzdHJlYW0sIHRl
c3Rfc3VpdGVzXyk7CiAgICAgfSBlbHNlIGlmIChvdXRwdXRfZm9ybWF0ID09ICJqc29uIikgewog
ICAgICAgSnNvblVuaXRUZXN0UmVzdWx0UHJpbnRlcigKICAgICAgICAgICBVbml0VGVzdE9wdGlv
bnM6OkdldEFic29sdXRlUGF0aFRvT3V0cHV0RmlsZSgpLmNfc3RyKCkpCi0gICAgICAgICAgLlBy
aW50SnNvblRlc3RMaXN0KCZzdHJlYW0sIHRlc3RfY2FzZXNfKTsKKyAgICAgICAgICAuUHJpbnRK
c29uVGVzdExpc3QoJnN0cmVhbSwgdGVzdF9zdWl0ZXNfKTsKICAgICB9CiAgICAgZnByaW50Zihm
aWxlb3V0LCAiJXMiLCBTdHJpbmdTdHJlYW1Ub1N0cmluZygmc3RyZWFtKS5jX3N0cigpKTsKICAg
ICBmY2xvc2UoZmlsZW91dCk7CkBAIC01NDc2LDcgKzU4MTIsNyBAQCB2b2lkIFVuaXRUZXN0SW1w
bDo6c2V0X29zX3N0YWNrX3RyYWNlX2dldHRlcigKIC8vIG90aGVyd2lzZSwgY3JlYXRlcyBhbiBP
c1N0YWNrVHJhY2VHZXR0ZXIsIG1ha2VzIGl0IHRoZSBjdXJyZW50CiAvLyBnZXR0ZXIsIGFuZCBy
ZXR1cm5zIGl0LgogT3NTdGFja1RyYWNlR2V0dGVySW50ZXJmYWNlKiBVbml0VGVzdEltcGw6Om9z
X3N0YWNrX3RyYWNlX2dldHRlcigpIHsKLSAgaWYgKG9zX3N0YWNrX3RyYWNlX2dldHRlcl8gPT0g
TlVMTCkgeworICBpZiAob3Nfc3RhY2tfdHJhY2VfZ2V0dGVyXyA9PSBudWxscHRyKSB7CiAjaWZk
ZWYgR1RFU1RfT1NfU1RBQ0tfVFJBQ0VfR0VUVEVSXwogICAgIG9zX3N0YWNrX3RyYWNlX2dldHRl
cl8gPSBuZXcgR1RFU1RfT1NfU1RBQ0tfVFJBQ0VfR0VUVEVSXzsKICNlbHNlCkBAIC01NDg5LDM4
ICs1ODI1LDM4IEBAIE9zU3RhY2tUcmFjZUdldHRlckludGVyZmFjZSogVW5pdFRlc3RJbXBsOjpv
c19zdGFja190cmFjZV9nZXR0ZXIoKSB7CiAKIC8vIFJldHVybnMgdGhlIG1vc3Qgc3BlY2lmaWMg
VGVzdFJlc3VsdCBjdXJyZW50bHkgcnVubmluZy4KIFRlc3RSZXN1bHQqIFVuaXRUZXN0SW1wbDo6
Y3VycmVudF90ZXN0X3Jlc3VsdCgpIHsKLSAgaWYgKGN1cnJlbnRfdGVzdF9pbmZvXyAhPSBOVUxM
KSB7CisgIGlmIChjdXJyZW50X3Rlc3RfaW5mb18gIT0gbnVsbHB0cikgewogICAgIHJldHVybiAm
Y3VycmVudF90ZXN0X2luZm9fLT5yZXN1bHRfOwogICB9Ci0gIGlmIChjdXJyZW50X3Rlc3RfY2Fz
ZV8gIT0gTlVMTCkgewotICAgIHJldHVybiAmY3VycmVudF90ZXN0X2Nhc2VfLT5hZF9ob2NfdGVz
dF9yZXN1bHRfOworICBpZiAoY3VycmVudF90ZXN0X3N1aXRlXyAhPSBudWxscHRyKSB7CisgICAg
cmV0dXJuICZjdXJyZW50X3Rlc3Rfc3VpdGVfLT5hZF9ob2NfdGVzdF9yZXN1bHRfOwogICB9CiAg
IHJldHVybiAmYWRfaG9jX3Rlc3RfcmVzdWx0XzsKIH0KIAotLy8gU2h1ZmZsZXMgYWxsIHRlc3Qg
Y2FzZXMsIGFuZCB0aGUgdGVzdHMgd2l0aGluIGVhY2ggdGVzdCBjYXNlLAorLy8gU2h1ZmZsZXMg
YWxsIHRlc3Qgc3VpdGVzLCBhbmQgdGhlIHRlc3RzIHdpdGhpbiBlYWNoIHRlc3Qgc3VpdGUsCiAv
LyBtYWtpbmcgc3VyZSB0aGF0IGRlYXRoIHRlc3RzIGFyZSBzdGlsbCBydW4gZmlyc3QuCiB2b2lk
IFVuaXRUZXN0SW1wbDo6U2h1ZmZsZVRlc3RzKCkgewotICAvLyBTaHVmZmxlcyB0aGUgZGVhdGgg
dGVzdCBjYXNlcy4KLSAgU2h1ZmZsZVJhbmdlKHJhbmRvbSgpLCAwLCBsYXN0X2RlYXRoX3Rlc3Rf
Y2FzZV8gKyAxLCAmdGVzdF9jYXNlX2luZGljZXNfKTsKKyAgLy8gU2h1ZmZsZXMgdGhlIGRlYXRo
IHRlc3Qgc3VpdGVzLgorICBTaHVmZmxlUmFuZ2UocmFuZG9tKCksIDAsIGxhc3RfZGVhdGhfdGVz
dF9zdWl0ZV8gKyAxLCAmdGVzdF9zdWl0ZV9pbmRpY2VzXyk7CiAKLSAgLy8gU2h1ZmZsZXMgdGhl
IG5vbi1kZWF0aCB0ZXN0IGNhc2VzLgotICBTaHVmZmxlUmFuZ2UocmFuZG9tKCksIGxhc3RfZGVh
dGhfdGVzdF9jYXNlXyArIDEsCi0gICAgICAgICAgICAgICBzdGF0aWNfY2FzdDxpbnQ+KHRlc3Rf
Y2FzZXNfLnNpemUoKSksICZ0ZXN0X2Nhc2VfaW5kaWNlc18pOworICAvLyBTaHVmZmxlcyB0aGUg
bm9uLWRlYXRoIHRlc3Qgc3VpdGVzLgorICBTaHVmZmxlUmFuZ2UocmFuZG9tKCksIGxhc3RfZGVh
dGhfdGVzdF9zdWl0ZV8gKyAxLAorICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8aW50Pih0ZXN0
X3N1aXRlc18uc2l6ZSgpKSwgJnRlc3Rfc3VpdGVfaW5kaWNlc18pOwogCi0gIC8vIFNodWZmbGVz
IHRoZSB0ZXN0cyBpbnNpZGUgZWFjaCB0ZXN0IGNhc2UuCi0gIGZvciAoc2l6ZV90IGkgPSAwOyBp
IDwgdGVzdF9jYXNlc18uc2l6ZSgpOyBpKyspIHsKLSAgICB0ZXN0X2Nhc2VzX1tpXS0+U2h1ZmZs
ZVRlc3RzKHJhbmRvbSgpKTsKKyAgLy8gU2h1ZmZsZXMgdGhlIHRlc3RzIGluc2lkZSBlYWNoIHRl
c3Qgc3VpdGUuCisgIGZvciAoYXV0byYgdGVzdF9zdWl0ZSA6IHRlc3Rfc3VpdGVzXykgeworICAg
IHRlc3Rfc3VpdGUtPlNodWZmbGVUZXN0cyhyYW5kb20oKSk7CiAgIH0KIH0KIAotLy8gUmVzdG9y
ZXMgdGhlIHRlc3QgY2FzZXMgYW5kIHRlc3RzIHRvIHRoZWlyIG9yZGVyIGJlZm9yZSB0aGUgZmly
c3Qgc2h1ZmZsZS4KKy8vIFJlc3RvcmVzIHRoZSB0ZXN0IHN1aXRlcyBhbmQgdGVzdHMgdG8gdGhl
aXIgb3JkZXIgYmVmb3JlIHRoZSBmaXJzdCBzaHVmZmxlLgogdm9pZCBVbml0VGVzdEltcGw6OlVu
c2h1ZmZsZVRlc3RzKCkgewotICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHRlc3RfY2FzZXNfLnNp
emUoKTsgaSsrKSB7Ci0gICAgLy8gVW5zaHVmZmxlcyB0aGUgdGVzdHMgaW4gZWFjaCB0ZXN0IGNh
c2UuCi0gICAgdGVzdF9jYXNlc19baV0tPlVuc2h1ZmZsZVRlc3RzKCk7Ci0gICAgLy8gUmVzZXRz
IHRoZSBpbmRleCBvZiBlYWNoIHRlc3QgY2FzZS4KLSAgICB0ZXN0X2Nhc2VfaW5kaWNlc19baV0g
PSBzdGF0aWNfY2FzdDxpbnQ+KGkpOworICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHRlc3Rfc3Vp
dGVzXy5zaXplKCk7IGkrKykgeworICAgIC8vIFVuc2h1ZmZsZXMgdGhlIHRlc3RzIGluIGVhY2gg
dGVzdCBzdWl0ZS4KKyAgICB0ZXN0X3N1aXRlc19baV0tPlVuc2h1ZmZsZVRlc3RzKCk7CisgICAg
Ly8gUmVzZXRzIHRoZSBpbmRleCBvZiBlYWNoIHRlc3Qgc3VpdGUuCisgICAgdGVzdF9zdWl0ZV9p
bmRpY2VzX1tpXSA9IHN0YXRpY19jYXN0PGludD4oaSk7CiAgIH0KIH0KIApAQCAtNTU3OSwxMiAr
NTkxNSwxMiBAQCBib29sIFNraXBQcmVmaXgoY29uc3QgY2hhciogcHJlZml4LCBjb25zdCBjaGFy
KiogcHN0cikgewogc3RhdGljIGNvbnN0IGNoYXIqIFBhcnNlRmxhZ1ZhbHVlKGNvbnN0IGNoYXIq
IHN0ciwgY29uc3QgY2hhciogZmxhZywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBib29sIGRlZl9vcHRpb25hbCkgewogICAvLyBzdHIgYW5kIGZsYWcgbXVzdCBub3QgYmUgTlVM
TC4KLSAgaWYgKHN0ciA9PSBOVUxMIHx8IGZsYWcgPT0gTlVMTCkgcmV0dXJuIE5VTEw7CisgIGlm
IChzdHIgPT0gbnVsbHB0ciB8fCBmbGFnID09IG51bGxwdHIpIHJldHVybiBudWxscHRyOwogCiAg
IC8vIFRoZSBmbGFnIG11c3Qgc3RhcnQgd2l0aCAiLS0iIGZvbGxvd2VkIGJ5IEdURVNUX0ZMQUdf
UFJFRklYXy4KICAgY29uc3Qgc3RkOjpzdHJpbmcgZmxhZ19zdHIgPSBzdGQ6OnN0cmluZygiLS0i
KSArIEdURVNUX0ZMQUdfUFJFRklYXyArIGZsYWc7CiAgIGNvbnN0IHNpemVfdCBmbGFnX2xlbiA9
IGZsYWdfc3RyLmxlbmd0aCgpOwotICBpZiAoc3RybmNtcChzdHIsIGZsYWdfc3RyLmNfc3RyKCks
IGZsYWdfbGVuKSAhPSAwKSByZXR1cm4gTlVMTDsKKyAgaWYgKHN0cm5jbXAoc3RyLCBmbGFnX3N0
ci5jX3N0cigpLCBmbGFnX2xlbikgIT0gMCkgcmV0dXJuIG51bGxwdHI7CiAKICAgLy8gU2tpcHMg
dGhlIGZsYWcgbmFtZS4KICAgY29uc3QgY2hhciogZmxhZ19lbmQgPSBzdHIgKyBmbGFnX2xlbjsK
QEAgLTU1OTcsNyArNTkzMyw3IEBAIHN0YXRpYyBjb25zdCBjaGFyKiBQYXJzZUZsYWdWYWx1ZShj
b25zdCBjaGFyKiBzdHIsIGNvbnN0IGNoYXIqIGZsYWcsCiAgIC8vIElmIGRlZl9vcHRpb25hbCBp
cyB0cnVlIGFuZCB0aGVyZSBhcmUgbW9yZSBjaGFyYWN0ZXJzIGFmdGVyIHRoZQogICAvLyBmbGFn
IG5hbWUsIG9yIGlmIGRlZl9vcHRpb25hbCBpcyBmYWxzZSwgdGhlcmUgbXVzdCBiZSBhICc9JyBh
ZnRlcgogICAvLyB0aGUgZmxhZyBuYW1lLgotICBpZiAoZmxhZ19lbmRbMF0gIT0gJz0nKSByZXR1
cm4gTlVMTDsKKyAgaWYgKGZsYWdfZW5kWzBdICE9ICc9JykgcmV0dXJuIG51bGxwdHI7CiAKICAg
Ly8gUmV0dXJucyB0aGUgc3RyaW5nIGFmdGVyICI9Ii4KICAgcmV0dXJuIGZsYWdfZW5kICsgMTsK
QEAgLTU2MTgsMzIgKzU5NTQsMzAgQEAgc3RhdGljIGJvb2wgUGFyc2VCb29sRmxhZyhjb25zdCBj
aGFyKiBzdHIsIGNvbnN0IGNoYXIqIGZsYWcsIGJvb2wqIHZhbHVlKSB7CiAgIGNvbnN0IGNoYXIq
IGNvbnN0IHZhbHVlX3N0ciA9IFBhcnNlRmxhZ1ZhbHVlKHN0ciwgZmxhZywgdHJ1ZSk7CiAKICAg
Ly8gQWJvcnRzIGlmIHRoZSBwYXJzaW5nIGZhaWxlZC4KLSAgaWYgKHZhbHVlX3N0ciA9PSBOVUxM
KSByZXR1cm4gZmFsc2U7CisgIGlmICh2YWx1ZV9zdHIgPT0gbnVsbHB0cikgcmV0dXJuIGZhbHNl
OwogCiAgIC8vIENvbnZlcnRzIHRoZSBzdHJpbmcgdmFsdWUgdG8gYSBib29sLgogICAqdmFsdWUg
PSAhKCp2YWx1ZV9zdHIgPT0gJzAnIHx8ICp2YWx1ZV9zdHIgPT0gJ2YnIHx8ICp2YWx1ZV9zdHIg
PT0gJ0YnKTsKICAgcmV0dXJuIHRydWU7CiB9CiAKLS8vIFBhcnNlcyBhIHN0cmluZyBmb3IgYW4g
SW50MzIgZmxhZywgaW4gdGhlIGZvcm0gb2YKLS8vICItLWZsYWc9dmFsdWUiLgorLy8gUGFyc2Vz
IGEgc3RyaW5nIGZvciBhbiBpbnQzMl90IGZsYWcsIGluIHRoZSBmb3JtIG9mICItLWZsYWc9dmFs
dWUiLgogLy8KIC8vIE9uIHN1Y2Nlc3MsIHN0b3JlcyB0aGUgdmFsdWUgb2YgdGhlIGZsYWcgaW4g
KnZhbHVlLCBhbmQgcmV0dXJucwogLy8gdHJ1ZS4gIE9uIGZhaWx1cmUsIHJldHVybnMgZmFsc2Ug
d2l0aG91dCBjaGFuZ2luZyAqdmFsdWUuCi1ib29sIFBhcnNlSW50MzJGbGFnKGNvbnN0IGNoYXIq
IHN0ciwgY29uc3QgY2hhciogZmxhZywgSW50MzIqIHZhbHVlKSB7Citib29sIFBhcnNlSW50MzJG
bGFnKGNvbnN0IGNoYXIqIHN0ciwgY29uc3QgY2hhciogZmxhZywgaW50MzJfdCogdmFsdWUpIHsK
ICAgLy8gR2V0cyB0aGUgdmFsdWUgb2YgdGhlIGZsYWcgYXMgYSBzdHJpbmcuCiAgIGNvbnN0IGNo
YXIqIGNvbnN0IHZhbHVlX3N0ciA9IFBhcnNlRmxhZ1ZhbHVlKHN0ciwgZmxhZywgZmFsc2UpOwog
CiAgIC8vIEFib3J0cyBpZiB0aGUgcGFyc2luZyBmYWlsZWQuCi0gIGlmICh2YWx1ZV9zdHIgPT0g
TlVMTCkgcmV0dXJuIGZhbHNlOworICBpZiAodmFsdWVfc3RyID09IG51bGxwdHIpIHJldHVybiBm
YWxzZTsKIAogICAvLyBTZXRzICp2YWx1ZSB0byB0aGUgdmFsdWUgb2YgdGhlIGZsYWcuCiAgIHJl
dHVybiBQYXJzZUludDMyKE1lc3NhZ2UoKSA8PCAiVGhlIHZhbHVlIG9mIGZsYWcgLS0iIDw8IGZs
YWcsCiAgICAgICAgICAgICAgICAgICAgIHZhbHVlX3N0ciwgdmFsdWUpOwogfQogCi0vLyBQYXJz
ZXMgYSBzdHJpbmcgZm9yIGEgc3RyaW5nIGZsYWcsIGluIHRoZSBmb3JtIG9mCi0vLyAiLS1mbGFn
PXZhbHVlIi4KKy8vIFBhcnNlcyBhIHN0cmluZyBmb3IgYSBzdHJpbmcgZmxhZywgaW4gdGhlIGZv
cm0gb2YgIi0tZmxhZz12YWx1ZSIuCiAvLwogLy8gT24gc3VjY2Vzcywgc3RvcmVzIHRoZSB2YWx1
ZSBvZiB0aGUgZmxhZyBpbiAqdmFsdWUsIGFuZCByZXR1cm5zCiAvLyB0cnVlLiAgT24gZmFpbHVy
ZSwgcmV0dXJucyBmYWxzZSB3aXRob3V0IGNoYW5naW5nICp2YWx1ZS4KQEAgLTU2NTMsNyArNTk4
Nyw3IEBAIHN0YXRpYyBib29sIFBhcnNlU3RyaW5nRmxhZyhjb25zdCBjaGFyKiBzdHIsIGNvbnN0
IGNoYXIqIGZsYWcsIFN0cmluZyogdmFsdWUpIHsKICAgY29uc3QgY2hhciogY29uc3QgdmFsdWVf
c3RyID0gUGFyc2VGbGFnVmFsdWUoc3RyLCBmbGFnLCBmYWxzZSk7CiAKICAgLy8gQWJvcnRzIGlm
IHRoZSBwYXJzaW5nIGZhaWxlZC4KLSAgaWYgKHZhbHVlX3N0ciA9PSBOVUxMKSByZXR1cm4gZmFs
c2U7CisgIGlmICh2YWx1ZV9zdHIgPT0gbnVsbHB0cikgcmV0dXJuIGZhbHNlOwogCiAgIC8vIFNl
dHMgKnZhbHVlIHRvIHRoZSB2YWx1ZSBvZiB0aGUgZmxhZy4KICAgKnZhbHVlID0gdmFsdWVfc3Ry
OwpAQCAtNTY4NCw4ICs2MDE4LDYgQEAgc3RhdGljIGJvb2wgSGFzR29vZ2xlVGVzdEZsYWdQcmVm
aXgoY29uc3QgY2hhciogc3RyKSB7CiAvLyAgIEBZICAgIGNoYW5nZXMgdGhlIGNvbG9yIHRvIHll
bGxvdy4KIC8vICAgQEQgICAgY2hhbmdlcyB0byB0aGUgZGVmYXVsdCB0ZXJtaW5hbCB0ZXh0IGNv
bG9yLgogLy8KLS8vIEZJWE1FOiBXcml0ZSB0ZXN0cyBmb3IgdGhpcyBvbmNlIHdlIGFkZCBzdGRv
dXQKLS8vIGNhcHR1cmluZyB0byBHb29nbGUgVGVzdC4KIHN0YXRpYyB2b2lkIFByaW50Q29sb3JF
bmNvZGVkKGNvbnN0IGNoYXIqIHN0cikgewogICBHVGVzdENvbG9yIGNvbG9yID0gQ09MT1JfREVG
QVVMVDsgIC8vIFRoZSBjdXJyZW50IGNvbG9yLgogCkBAIC01Njk1LDcgKzYwMjcsNyBAQCBzdGF0
aWMgdm9pZCBQcmludENvbG9yRW5jb2RlZChjb25zdCBjaGFyKiBzdHIpIHsKICAgLy8gbmV4dCBz
ZWdtZW50LgogICBmb3IgKDs7KSB7CiAgICAgY29uc3QgY2hhciogcCA9IHN0cmNocihzdHIsICdA
Jyk7Ci0gICAgaWYgKHAgPT0gTlVMTCkgeworICAgIGlmIChwID09IG51bGxwdHIpIHsKICAgICAg
IENvbG9yZWRQcmludGYoY29sb3IsICIlcyIsIHN0cik7CiAgICAgICByZXR1cm47CiAgICAgfQpA
QCAtNTc1Myw3ICs2MDg1LDcgQEAgc3RhdGljIGNvbnN0IGNoYXIga0NvbG9yRW5jb2RlZEhlbHBN
ZXNzYWdlW10gPQogIiAgQEctLSIgR1RFU1RfRkxBR19QUkVGSVhfICJvdXRwdXQ9QFkoQEdqc29u
QFl8QEd4bWxAWSlbQEc6QFlESVJFQ1RPUllfUEFUSEBHIgogICAgIEdURVNUX1BBVEhfU0VQXyAi
QFl8QEc6QFlGSUxFX1BBVEhdQERcbiIKICIgICAgICBHZW5lcmF0ZSBhIEpTT04gb3IgWE1MIHJl
cG9ydCBpbiB0aGUgZ2l2ZW4gZGlyZWN0b3J5IG9yIHdpdGggdGhlIGdpdmVuXG4iCi0iICAgICAg
ZmlsZSBuYW1lLiBAWUZJTEVfUEFUSEBEIGRlZmF1bHRzIHRvIEBHdGVzdF9kZXRhaWxzLnhtbEBE
LlxuIgorIiAgICAgIGZpbGUgbmFtZS4gQFlGSUxFX1BBVEhARCBkZWZhdWx0cyB0byBAR3Rlc3Rf
ZGV0YWlsLnhtbEBELlxuIgogIyBpZiBHVEVTVF9DQU5fU1RSRUFNX1JFU1VMVFNfCiAiICBARy0t
IiBHVEVTVF9GTEFHX1BSRUZJWF8gInN0cmVhbV9yZXN1bHRfdG89QFlIT1NUQEc6QFlQT1JUQERc
biIKICIgICAgICBTdHJlYW0gdGVzdCByZXN1bHRzIHRvIHRoZSBnaXZlbiBzZXJ2ZXIuXG4iCkBA
IC01ODk1LDcgKzYyMjcsNyBAQCB2b2lkIFBhcnNlR29vZ2xlVGVzdEZsYWdzT25seUltcGwoaW50
KiBhcmdjLCBDaGFyVHlwZSoqIGFyZ3YpIHsKIHZvaWQgUGFyc2VHb29nbGVUZXN0RmxhZ3NPbmx5
KGludCogYXJnYywgY2hhcioqIGFyZ3YpIHsKICAgUGFyc2VHb29nbGVUZXN0RmxhZ3NPbmx5SW1w
bChhcmdjLCBhcmd2KTsKIAotICAvLyBGaXggdGhlIHZhbHVlIG9mICpfTlNHZXRBcmdjKCkgb24g
bWFjT1MsIGJ1dCBpZmYKKyAgLy8gRml4IHRoZSB2YWx1ZSBvZiAqX05TR2V0QXJnYygpIG9uIG1h
Y09TLCBidXQgaWYgYW5kIG9ubHkgaWYKICAgLy8gKl9OU0dldEFyZ3YoKSA9PSBhcmd2CiAgIC8v
IE9ubHkgYXBwbGljYWJsZSB0byBjaGFyKiogdmVyc2lvbiBvZiBhcmd2CiAjaWYgR1RFU1RfT1Nf
TUFDCkBAIC01OTYzLDYgKzYyOTUsMjIgQEAgdm9pZCBJbml0R29vZ2xlVGVzdChpbnQqIGFyZ2Ms
IHdjaGFyX3QqKiBhcmd2KSB7CiAjZW5kaWYgIC8vIGRlZmluZWQoR1RFU1RfQ1VTVE9NX0lOSVRf
R09PR0xFX1RFU1RfRlVOQ1RJT05fKQogfQogCisvLyBUaGlzIG92ZXJsb2FkZWQgdmVyc2lvbiBj
YW4gYmUgdXNlZCBvbiBBcmR1aW5vL2VtYmVkZGVkIHBsYXRmb3JtcyB3aGVyZQorLy8gdGhlcmUg
aXMgbm8gYXJnYy9hcmd2Lgordm9pZCBJbml0R29vZ2xlVGVzdCgpIHsKKyAgLy8gU2luY2UgQXJk
dWlubyBkb2Vzbid0IGhhdmUgYSBjb21tYW5kIGxpbmUsIGZha2Ugb3V0IHRoZSBhcmdjL2FyZ3Yg
YXJndW1lbnRzCisgIGludCBhcmdjID0gMTsKKyAgY29uc3QgYXV0byBhcmcwID0gImR1bW15IjsK
KyAgY2hhciogYXJndjAgPSBjb25zdF9jYXN0PGNoYXIqPihhcmcwKTsKKyAgY2hhcioqIGFyZ3Yg
PSAmYXJndjA7CisKKyNpZiBkZWZpbmVkKEdURVNUX0NVU1RPTV9JTklUX0dPT0dMRV9URVNUX0ZV
TkNUSU9OXykKKyAgR1RFU1RfQ1VTVE9NX0lOSVRfR09PR0xFX1RFU1RfRlVOQ1RJT05fKCZhcmdj
LCBhcmd2KTsKKyNlbHNlICAvLyBkZWZpbmVkKEdURVNUX0NVU1RPTV9JTklUX0dPT0dMRV9URVNU
X0ZVTkNUSU9OXykKKyAgaW50ZXJuYWw6OkluaXRHb29nbGVUZXN0SW1wbCgmYXJnYywgYXJndik7
CisjZW5kaWYgIC8vIGRlZmluZWQoR1RFU1RfQ1VTVE9NX0lOSVRfR09PR0xFX1RFU1RfRlVOQ1RJ
T05fKQorfQorCiBzdGQ6OnN0cmluZyBUZW1wRGlyKCkgewogI2lmIGRlZmluZWQoR1RFU1RfQ1VT
VE9NX1RFTVBESVJfRlVOQ1RJT05fKQogICByZXR1cm4gR1RFU1RfQ1VTVE9NX1RFTVBESVJfRlVO
Q1RJT05fKCk7CkBAIC01OTcyLDE0ICs2MzIwLDE4IEBAIHN0ZDo6c3RyaW5nIFRlbXBEaXIoKSB7
CiAgIHJldHVybiAiXFx0ZW1wXFwiOwogI2VsaWYgR1RFU1RfT1NfV0lORE9XUwogICBjb25zdCBj
aGFyKiB0ZW1wX2RpciA9IGludGVybmFsOjpwb3NpeDo6R2V0RW52KCJURU1QIik7Ci0gIGlmICh0
ZW1wX2RpciA9PSBOVUxMIHx8IHRlbXBfZGlyWzBdID09ICdcMCcpCisgIGlmICh0ZW1wX2RpciA9
PSBudWxscHRyIHx8IHRlbXBfZGlyWzBdID09ICdcMCcpCiAgICAgcmV0dXJuICJcXHRlbXBcXCI7
CiAgIGVsc2UgaWYgKHRlbXBfZGlyW3N0cmxlbih0ZW1wX2RpcikgLSAxXSA9PSAnXFwnKQogICAg
IHJldHVybiB0ZW1wX2RpcjsKICAgZWxzZQogICAgIHJldHVybiBzdGQ6OnN0cmluZyh0ZW1wX2Rp
cikgKyAiXFwiOwogI2VsaWYgR1RFU1RfT1NfTElOVVhfQU5EUk9JRAotICByZXR1cm4gIi9zZGNh
cmQvIjsKKyAgY29uc3QgY2hhciogdGVtcF9kaXIgPSBpbnRlcm5hbDo6cG9zaXg6OkdldEVudigi
VEVTVF9UTVBESVIiKTsKKyAgaWYgKHRlbXBfZGlyID09IG51bGxwdHIgfHwgdGVtcF9kaXJbMF0g
PT0gJ1wwJykKKyAgICByZXR1cm4gIi9kYXRhL2xvY2FsL3RtcC8iOworICBlbHNlCisgICAgcmV0
dXJuIHRlbXBfZGlyOwogI2Vsc2UKICAgcmV0dXJuICIvdG1wLyI7CiAjZW5kaWYgIC8vIEdURVNU
X09TX1dJTkRPV1NfTU9CSUxFCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dv
b2dsZXRlc3Qvc3JjL3NyYy9ndGVzdF9tYWluLmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS9n
b29nbGV0ZXN0L3NyYy9zcmMvZ3Rlc3RfbWFpbi5jYwppbmRleCAyMTEzZjYyMWU2NTQzMGU1NTcw
ZGZiMjAxNTg4NGEyZDRmNGNmMGIzLi40NmIyN2MzZDdkNTY1NDY2ODkwNmJmZjVmNWJhMWEyNjY4
ODFmNzdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L2dvb2dsZXRlc3Qvc3Jj
L3NyYy9ndGVzdF9tYWluLmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkvZ29vZ2xldGVz
dC9zcmMvc3JjL2d0ZXN0X21haW4uY2MKQEAgLTI3LDExICsyNywyOCBAQAogLy8gKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFCiAvLyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgogCi0jaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxjc3Rk
aW8+CiAjaW5jbHVkZSAiZ3Rlc3QvZ3Rlc3QuaCIKIAorI2lmIEdURVNUX09TX0VTUDgyNjYgfHwg
R1RFU1RfT1NfRVNQMzIKKyNpZiBHVEVTVF9PU19FU1A4MjY2CitleHRlcm4gIkMiIHsKKyNlbmRp
Zgordm9pZCBzZXR1cCgpIHsKKyAgdGVzdGluZzo6SW5pdEdvb2dsZVRlc3QoKTsKK30KKwordm9p
ZCBsb29wKCkgeyBSVU5fQUxMX1RFU1RTKCk7IH0KKworI2lmIEdURVNUX09TX0VTUDgyNjYKK30K
KyNlbmRpZgorCisjZWxzZQorCiBHVEVTVF9BUElfIGludCBtYWluKGludCBhcmdjLCBjaGFyICoq
YXJndikgewogICBwcmludGYoIlJ1bm5pbmcgbWFpbigpIGZyb20gJXNcbiIsIF9fRklMRV9fKTsK
ICAgdGVzdGluZzo6SW5pdEdvb2dsZVRlc3QoJmFyZ2MsIGFyZ3YpOwogICByZXR1cm4gUlVOX0FM
TF9URVNUUygpOwogfQorI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5
L3g4NmluYy9SRUFETUUubGlidnB4IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS94ODZpbmMvUkVB
RE1FLmxpYnZweAppbmRleCAzNjczNWZmYmIxYTQwYzMzZjdjNDBmNWYwYjRjYjMyZTUwNGI2NzZi
Li4xOTU2NTRmN2JiNzA1ZDEzNGEwODYyMzRkYWZhODliMWJlNTU5NjM1IDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3RoaXJkX3BhcnR5L3g4NmluYy9SRUFETUUubGlidnB4CisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdGhpcmRfcGFydHkveDg2aW5jL1JFQURNRS5saWJ2cHgKQEAgLTEsNSArMSw1IEBACiBVUkw6
IGh0dHBzOi8vZ2l0LnZpZGVvbGFuLm9yZy9naXQveDI2NC5naXQKLVZlcnNpb246IGQyM2QxODY1
NTI0OTk0NGMxY2E4OTRiNDUxZTJjODJjN2E1ODRjNjIKK1ZlcnNpb246IDNlNWFlZDk1Y2M0NzBm
MzdlMmRiM2U2NTA2YThkZWI4OWI1Mjc3MjAKIExpY2Vuc2U6IElTQwogTGljZW5zZSBGaWxlOiBM
SUNFTlNFCiAKQEAgLTEyLDEwICsxMiw4IEBAIEdldCBjb25maWd1cmF0aW9uIGZyb20gdnB4X2Nv
bmZpZy5hc20uCiBQcmVmaXggZnVuY3Rpb25zIHdpdGggdnB4IGJ5IGRlZmF1bHQuCiBNYW5hZ2Ug
bmFtZSBtYW5nbGluZyAocHJlZml4aW5nIHdpdGggJ18nKSBtYW51YWxseSBiZWNhdXNlICdQUkVG
SVgnIGRvZXMgbm90CiAgIGV4aXN0IGluIGxpYnZweC4KLUV4cGFuZCBQSUMgZGVmYXVsdCB0byBt
YWNobzY0IGFuZCByZXNwZWN0IENPTkZJR19QSUMgZnJvbSBsaWJ2cHgKLVNldCAncHJpdmF0ZV9l
eHRlcm4nIHZpc2liaWxpdHkgZm9yIG1hY2hvIHRhcmdldHMuCiBDb3B5IFBJQyAnR0xPQkFMJyBt
YWNyb3MgZnJvbSB4ODZfYWJpX3N1cHBvcnQuYXNtCiBVc2UgLnRleHQgaW5zdGVhZCBvZiAucm9k
YXRhIG9uIG1hY2hvIHRvIGF2b2lkIGJyb2tlbiB0YWJsZXMgaW4gUElDIG1vZGUuCi1Vc2UgLnRl
eHQgd2l0aCBubyBhbGlnbm1lbnQgZm9yIGFvdXQKLU9ubHkgdXNlICdoaWRkZW4nIHZpc2liaWxp
dHkgd2l0aCBDaHJvbWl1bQorVXNlIC50ZXh0IHdpdGggbm8gYWxpZ25tZW50IGZvciBhb3V0Lgor
T25seSB1c2UgJ2hpZGRlbicgdmlzaWJpbGl0eSB3aXRoIENocm9taXVtLgogUHJlZml4IEFSQ0hf
KiB3aXRoIFZQWF8uCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJkX3BhcnR5L3g4NmluYy94
ODZpbmMuYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC90aGlyZF9wYXJ0eS94ODZpbmMveDg2aW5jLmFzbQppbmRl
eCAzZDcyMmZlYzA4ZjIwM2NiNmFlYzNkNjZhYTIzYzAxYWY5MjIyYmEzLi4zZDU1ZTkyMWM3NjVj
ZGUxY2NiYzYzZTMxMjZhYzRjZTcyNDQ2YWRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3RoaXJk
X3BhcnR5L3g4NmluYy94ODZpbmMuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdGhpcmRfcGFydHkveDg2
aW5jL3g4NmluYy5hc20KQEAgLTEsMTIgKzEsMTIgQEAKIDsqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgog
OyogeDg2aW5jLmFzbTogeDI2NGFzbSBhYnN0cmFjdGlvbiBsYXllcgogOyoqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqCi07KiBDb3B5cmlnaHQgKEMpIDIwMDUtMjAxNiB4MjY0IHByb2plY3QKKzsqIENvcHly
aWdodCAoQykgMjAwNS0yMDE5IHgyNjQgcHJvamVjdAogOyoKIDsqIEF1dGhvcnM6IExvcmVuIE1l
cnJpdHQgPGxvcmVubUB1Lndhc2hpbmd0b24uZWR1PgorOyogICAgICAgICAgSGVucmlrIEdyYW1u
ZXIgPGhlbnJpa0BncmFtbmVyLmNvbT4KIDsqICAgICAgICAgIEFudG9uIE1pdHJvZmFub3YgPEJ1
Z01hc3RlckBuYXJvZC5ydT4KIDsqICAgICAgICAgIEZpb25hIEdsYXNlciA8ZmlvbmFAeDI2NC5j
b20+Ci07KiAgICAgICAgICBIZW5yaWsgR3JhbW5lciA8aGVucmlrQGdyYW1uZXIuY29tPgogOyoK
IDsqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRo
aXMgc29mdHdhcmUgZm9yIGFueQogOyogcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhl
cmVieSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoZSBhYm92ZQpAQCAtNjcsMTkgKzY3LDE5IEBA
CiAlZW5kaWYKIAogJWRlZmluZSBGT1JNQVRfRUxGIDAKKyVkZWZpbmUgRk9STUFUX01BQ0hPIDAK
ICVpZmlkbiBfX09VVFBVVF9GT1JNQVRfXyxlbGYKICAgICAlZGVmaW5lIEZPUk1BVF9FTEYgMQog
JWVsaWZpZG4gX19PVVRQVVRfRk9STUFUX18sZWxmMzIKICAgICAlZGVmaW5lIEZPUk1BVF9FTEYg
MQogJWVsaWZpZG4gX19PVVRQVVRfRk9STUFUX18sZWxmNjQKICAgICAlZGVmaW5lIEZPUk1BVF9F
TEYgMQotJWVuZGlmCi0KLSVkZWZpbmUgRk9STUFUX01BQ0hPIDAKLSVpZmlkbiBfX09VVFBVVF9G
T1JNQVRfXyxtYWNobzMyCi0gICAgICVkZWZpbmUgRk9STUFUX01BQ0hPIDEKKyVlbGlmaWRuIF9f
T1VUUFVUX0ZPUk1BVF9fLG1hY2hvCisgICAgJWRlZmluZSBGT1JNQVRfTUFDSE8gMQorJWVsaWZp
ZG4gX19PVVRQVVRfRk9STUFUX18sbWFjaG8zMgorICAgICVkZWZpbmUgRk9STUFUX01BQ0hPIDEK
ICVlbGlmaWRuIF9fT1VUUFVUX0ZPUk1BVF9fLG1hY2hvNjQKLSAgICAgJWRlZmluZSBGT1JNQVRf
TUFDSE8gMQorICAgICVkZWZpbmUgRk9STUFUX01BQ0hPIDEKICVlbmRpZgogCiA7IFNldCBQUkVG
SVggZm9yIGxpYnZweCBidWlsZHMuCkBAIC0xMDMsNyArMTAzLDExIEBACiA7IHdvcmtzIGFyb3Vu
ZCB0aGUgaXNzdWUuIEl0IGFwcGVhcnMgdG8gYmUgc3BlY2lmaWMgdG8gdGhlIHdheSBsaWJ2cHgK
IDsgaGFuZGxlcyB0aGUgdGFibGVzLgogJW1hY3JvIFNFQ1RJT05fUk9EQVRBIDAtMSAxNgotICAg
ICVpZmlkbiBfX09VVFBVVF9GT1JNQVRfXyxtYWNobzMyCisgICAgJWlmaWRuIF9fT1VUUFVUX0ZP
Uk1BVF9fLHdpbjMyCisgICAgICAgIFNFQ1RJT04gLnJkYXRhIGFsaWduPSUxCisgICAgJWVsaWYg
V0lONjQKKyAgICAgICAgU0VDVElPTiAucmRhdGEgYWxpZ249JTEKKyAgICAlZWxpZmlkbiBfX09V
VFBVVF9GT1JNQVRfXyxtYWNobzMyCiAgICAgICAgIFNFQ1RJT04gLnRleHQgYWxpZ249JTEKICAg
ICAgICAgZmFrZWdvdDoKICAgICAlZWxpZmlkbiBfX09VVFBVVF9GT1JNQVRfXyxhb3V0CkBAIC0x
MTMsOCArMTE3LDcgQEAKICAgICAlZW5kaWYKICVlbmRtYWNybwogCi07IFBJQyBtYWNyb3MgYXJl
IGNvcGllZCBmcm9tIHZweF9wb3J0cy94ODZfYWJpX3N1cHBvcnQuYXNtLiBUaGUgImRlZmluZSBQ
SUMiCi07IGZyb20gb3JpZ2luYWwgY29kZSBpcyBhZGRlZCBpbiBmb3IgNjRiaXQuCis7IFBJQyBt
YWNyb3MgZnJvbSB2cHhfcG9ydHMveDg2X2FiaV9zdXBwb3J0LmFzbS4KICVpZmlkbiBfX09VVFBV
VF9GT1JNQVRfXyxlbGYzMgogJWRlZmluZSBBQklfSVNfMzJCSVQgMQogJWVsaWZpZG4gX19PVVRQ
VVRfRk9STUFUX18sbWFjaG8zMgpAQCAtMjAzLDEwICsyMDYsMjQgQEAKICVpZm5kZWYgR0VUX0dP
VF9ERUZJTkVECiAgICAgJWRlZmluZSBHRVRfR09UX0RFRklORUQgMAogJWVuZGlmCi07IERvbmUg
d2l0aCBQSUMgbWFjcm9zCis7IEVuZCBQSUMgbWFjcm9zIGZyb20gdnB4X3BvcnRzL3g4Nl9hYmlf
c3VwcG9ydC5hc20uCisKKzsgbGlidnB4IGV4cGxpY2l0bHkgc2V0cyB2aXNpYmlsdHkgaW4gc2hh
cmVkIG9iamVjdCBidWlsZHMuIEF2b2lkIHNldHRpbmcKKzsgdmlzaWJpbGl0eSB0byBoaWRkZW4g
YXMgaXQgbWF5IGJyZWFrIGJ1aWxkcyB0aGF0IHNwbGl0IHNvdXJjZXMgb24gZS5nLiwKKzsgZGly
ZWN0b3J5IGJvdW5kYXJpZXMuCislaWZkZWYgQ0hST01JVU0KKyAgICAlZGVmaW5lIFZJU0lCSUxJ
VFkgaGlkZGVuCisgICAgJWRlZmluZSBIQVZFX1BSSVZBVEVfRVhURVJOIDEKKyVlbHNlCisgICAg
JWRlZmluZSBWSVNJQklMSVRZCisgICAgJWRlZmluZSBIQVZFX1BSSVZBVEVfRVhURVJOIDAKKyVl
bmRpZgogCiAlaWZkZWYgX19OQVNNX1ZFUl9fCiAgICAgJXVzZSBzbWFydGFsaWduCisgICAgJWlm
IF9fTkFTTV9WRVJTSU9OX0lEX18gPCAweDAyMGUwMDAwIDsgMi4xNAorICAgICAgICAlZGVmaW5l
IEhBVkVfUFJJVkFURV9FWFRFUk4gMAorICAgICVlbmRpZgogJWVuZGlmCiAKIDsgTWFjcm9zIHRv
IGVsaW1pbmF0ZSBtb3N0IGNvZGUgZHVwbGljYXRpb24gYmV0d2VlbiB4ODZfMzIgYW5kIHg4Nl82
NDoKQEAgLTMyNCw2ICszNDEsMTggQEAgREVDTEFSRV9SRUdfVE1QX1NJWkUgMCwxLDIsMyw0LDUs
Niw3LDgsOSwxMCwxMSwxMiwxMywxNAogICAgICVkZWZpbmUgZ3Byc2l6ZSA0CiAlZW5kaWYKIAor
JW1hY3JvIExFQSAyCislaWYgVlBYX0FSQ0hfWDg2XzY0CisgICAgbGVhICUxLCBbJTJdCislZWxp
ZiBQSUMKKyAgICBjYWxsICQrNSA7IHNwZWNpYWwtY2FzZWQgdG8gbm90IGFmZmVjdCB0aGUgUlNC
IG9uIG1vc3QgQ1BVOnMKKyAgICBwb3AgJTEKKyAgICBhZGQgJTEsICglMiktJCsxCislZWxzZQor
ICAgIG1vdiAlMSwgJTIKKyVlbmRpZgorJWVuZG1hY3JvCisKICVtYWNybyBQVVNIIDEKICAgICBw
dXNoICUxCiAgICAgJWlmaWRuIHJzdGssIHJzcApAQCAtMzg1LDYgKzQxNCwxMCBAQCBERUNMQVJF
X1JFR19UTVBfU0laRSAwLDEsMiwzLDQsNSw2LDcsOCw5LDEwLDExLDEyLDEzLDE0CiAgICAgJWVu
ZGlmCiAlZW5kbWFjcm8KIAorJWlmIFZQWF9BUkNIX1g4Nl82NCA9PSAwCisgICAgJWRlZmluZSBt
b3ZzeGQgbW92aWZuaWRuCislZW5kaWYKKwogJW1hY3JvIG1vdnN4ZGlmbmlkbiAyCiAgICAgJWlm
bmlkbiAlMSwgJTIKICAgICAgICAgbW92c3hkICUxLCAlMgpAQCAtNDMzLDYgKzQ2Niw4IEBAIERF
Q0xBUkVfUkVHX1RNUF9TSVpFIDAsMSwyLDMsNCw1LDYsNyw4LDksMTAsMTEsMTIsMTMsMTQKICVl
bmRtYWNybwogCiAlZGVmaW5lIHJlcXVpcmVkX3N0YWNrX2FsaWdubWVudCAoKG1tc2l6ZSArIDE1
KSAmIH4xNSkKKyVkZWZpbmUgdnplcm91cHBlcl9yZXF1aXJlZCAobW1zaXplID4gMTYgJiYgKFZQ
WF9BUkNIX1g4Nl82NCA9PSAwIHx8IHhtbV9yZWdzX3VzZWQgPiAxNiB8fCBub3RjcHVmbGFnKGF2
eDUxMikpKQorJWRlZmluZSBoaWdoX21tX3JlZ3MgKDE2KmNwdWZsYWcoYXZ4NTEyKSkKIAogJW1h
Y3JvIEFMTE9DX1NUQUNLIDEtMiAwIDsgc3RhY2tfc2l6ZSwgbl94bW1fcmVncyAoZm9yIHdpbjY0
IG9ubHkpCiAgICAgJWlmbnVtICUxCkBAIC00ODMsMTAgKzUxOCwxOCBAQCBERUNMQVJFX1JFR19U
TVBfU0laRSAwLDEsMiwzLDQsNSw2LDcsOCw5LDEwLDExLDEyLDEzLDE0CiAgICAgJWlmbnVtICUx
CiAgICAgICAgICVpZiAlMSAhPSAwICYmIHJlcXVpcmVkX3N0YWNrX2FsaWdubWVudCA+IFNUQUNL
X0FMSUdOTUVOVAogICAgICAgICAgICAgJWlmICUxID4gMAorICAgICAgICAgICAgICAgIDsgUmVz
ZXJ2ZSBhbiBhZGRpdGlvbmFsIHJlZ2lzdGVyIGZvciBzdG9yaW5nIHRoZSBvcmlnaW5hbCBzdGFj
ayBwb2ludGVyLCBidXQgYXZvaWQgdXNpbmcKKyAgICAgICAgICAgICAgICA7IGVheC9yYXggZm9y
IHRoaXMgcHVycG9zZSBzaW5jZSBpdCBjYW4gcG90ZW50aWFsbHkgZ2V0IG92ZXJ3cml0dGVuIGFz
IGEgcmV0dXJuIHZhbHVlLgogICAgICAgICAgICAgICAgICVhc3NpZ24gcmVnc191c2VkIChyZWdz
X3VzZWQgKyAxKQorICAgICAgICAgICAgICAgICVpZiBWUFhfQVJDSF9YODZfNjQgJiYgcmVnc191
c2VkID09IDcKKyAgICAgICAgICAgICAgICAgICAgJWFzc2lnbiByZWdzX3VzZWQgOAorICAgICAg
ICAgICAgICAgICVlbGlmIFZQWF9BUkNIX1g4Nl82NCA9PSAwICYmIHJlZ3NfdXNlZCA9PSAxCisg
ICAgICAgICAgICAgICAgICAgICVhc3NpZ24gcmVnc191c2VkIDIKKyAgICAgICAgICAgICAgICAl
ZW5kaWYKICAgICAgICAgICAgICVlbmRpZgogICAgICAgICAgICAgJWlmIFZQWF9BUkNIX1g4Nl82
NCAmJiByZWdzX3VzZWQgPCA1ICsgVU5JWDY0ICogMwotICAgICAgICAgICAgICAgIDsgRW5zdXJl
IHRoYXQgd2UgZG9uJ3QgY2xvYmJlciBhbnkgcmVnaXN0ZXJzIGNvbnRhaW5pbmcgYXJndW1lbnRz
CisgICAgICAgICAgICAgICAgOyBFbnN1cmUgdGhhdCB3ZSBkb24ndCBjbG9iYmVyIGFueSByZWdp
c3RlcnMgY29udGFpbmluZyBhcmd1bWVudHMuIEZvciBVTklYNjQgd2UgYWxzbyBwcmVzZXJ2ZSBy
NiAocmF4KQorICAgICAgICAgICAgICAgIDsgc2luY2UgaXQncyB1c2VkIGFzIGEgaGlkZGVuIGFy
Z3VtZW50IGluIHZhcmFyZyBmdW5jdGlvbnMgdG8gc3BlY2lmeSB0aGUgbnVtYmVyIG9mIHZlY3Rv
ciByZWdpc3RlcnMgdXNlZC4KICAgICAgICAgICAgICAgICAlYXNzaWduIHJlZ3NfdXNlZCA1ICsg
VU5JWDY0ICogMwogICAgICAgICAgICAgJWVuZGlmCiAgICAgICAgICVlbmRpZgpAQCAtNTE2LDEw
ICs1NTksMTAgQEAgREVDTEFSRV9SRUcgNywgIHJkaSwgNjQKIERFQ0xBUkVfUkVHIDgsICByc2ks
IDcyCiBERUNMQVJFX1JFRyA5LCAgcmJ4LCA4MAogREVDTEFSRV9SRUcgMTAsIHJicCwgODgKLURF
Q0xBUkVfUkVHIDExLCBSMTIsIDk2Ci1ERUNMQVJFX1JFRyAxMiwgUjEzLCAxMDQKLURFQ0xBUkVf
UkVHIDEzLCBSMTQsIDExMgotREVDTEFSRV9SRUcgMTQsIFIxNSwgMTIwCitERUNMQVJFX1JFRyAx
MSwgUjE0LCA5NgorREVDTEFSRV9SRUcgMTIsIFIxNSwgMTA0CitERUNMQVJFX1JFRyAxMywgUjEy
LCAxMTIKK0RFQ0xBUkVfUkVHIDE0LCBSMTMsIDEyMAogCiAlbWFjcm8gUFJPTE9HVUUgMi01KyAw
IDsgI2FyZ3MsICNyZWdzLCAjeG1tX3JlZ3MsIFtzdGFja19zaXplLF0gYXJnX25hbWVzLi4uCiAg
ICAgJWFzc2lnbiBudW1fYXJncyAlMQpAQCAtNTM4LDE1ICs1ODEsMTYgQEAgREVDTEFSRV9SRUcg
MTQsIFIxNSwgMTIwCiAKICVtYWNybyBXSU42NF9QVVNIX1hNTSAwCiAgICAgOyBVc2UgdGhlIHNo
YWRvdyBzcGFjZSB0byBzdG9yZSBYTU02IGFuZCBYTU03LCB0aGUgcmVzdCBuZWVkcyBzdGFjayBz
cGFjZSBhbGxvY2F0ZWQuCi0gICAgJWlmIHhtbV9yZWdzX3VzZWQgPiA2CisgICAgJWlmIHhtbV9y
ZWdzX3VzZWQgPiA2ICsgaGlnaF9tbV9yZWdzCiAgICAgICAgIG1vdmFwcyBbcnN0ayArIHN0YWNr
X29mZnNldCArICA4XSwgeG1tNgogICAgICVlbmRpZgotICAgICVpZiB4bW1fcmVnc191c2VkID4g
NworICAgICVpZiB4bW1fcmVnc191c2VkID4gNyArIGhpZ2hfbW1fcmVncwogICAgICAgICBtb3Zh
cHMgW3JzdGsgKyBzdGFja19vZmZzZXQgKyAyNF0sIHhtbTcKICAgICAlZW5kaWYKLSAgICAlaWYg
eG1tX3JlZ3NfdXNlZCA+IDgKKyAgICAlYXNzaWduICUleG1tX3JlZ3Nfb25fc3RhY2sgeG1tX3Jl
Z3NfdXNlZCAtIGhpZ2hfbW1fcmVncyAtIDgKKyAgICAlaWYgJSV4bW1fcmVnc19vbl9zdGFjayA+
IDAKICAgICAgICAgJWFzc2lnbiAlJWkgOAotICAgICAgICAlcmVwIHhtbV9yZWdzX3VzZWQtOAor
ICAgICAgICAlcmVwICUleG1tX3JlZ3Nfb25fc3RhY2sKICAgICAgICAgICAgIG1vdmFwcyBbcnNw
ICsgKCUlaS04KSoxNiArIHN0YWNrX3NpemUgKyAzMl0sIHhtbSAlKyAlJWkKICAgICAgICAgICAg
ICVhc3NpZ24gJSVpICUlaSsxCiAgICAgICAgICVlbmRyZXAKQEAgLTU1NSw1MyArNTk5LDU2IEBA
IERFQ0xBUkVfUkVHIDE0LCBSMTUsIDEyMAogCiAlbWFjcm8gV0lONjRfU1BJTExfWE1NIDEKICAg
ICAlYXNzaWduIHhtbV9yZWdzX3VzZWQgJTEKLSAgICBBU1NFUlQgeG1tX3JlZ3NfdXNlZCA8PSAx
NgotICAgICVpZiB4bW1fcmVnc191c2VkID4gOAorICAgIEFTU0VSVCB4bW1fcmVnc191c2VkIDw9
IDE2ICsgaGlnaF9tbV9yZWdzCisgICAgJWFzc2lnbiAlJXhtbV9yZWdzX29uX3N0YWNrIHhtbV9y
ZWdzX3VzZWQgLSBoaWdoX21tX3JlZ3MgLSA4CisgICAgJWlmICUleG1tX3JlZ3Nfb25fc3RhY2sg
PiAwCiAgICAgICAgIDsgQWxsb2NhdGUgc3RhY2sgc3BhY2UgZm9yIGNhbGxlZS1zYXZlZCB4bW0g
cmVnaXN0ZXJzIHBsdXMgc2hhZG93IHNwYWNlIGFuZCBhbGlnbiB0aGUgc3RhY2suCi0gICAgICAg
ICVhc3NpZ24gJSVwYWQgKHhtbV9yZWdzX3VzZWQtOCkqMTYgKyAzMgorICAgICAgICAlYXNzaWdu
ICUlcGFkICUleG1tX3JlZ3Nfb25fc3RhY2sqMTYgKyAzMgogICAgICAgICAlYXNzaWduIHN0YWNr
X3NpemVfcGFkZGVkICUlcGFkICsgKCgtJSVwYWQtc3RhY2tfb2Zmc2V0LWdwcnNpemUpICYgKFNU
QUNLX0FMSUdOTUVOVC0xKSkKICAgICAgICAgU1VCIHJzcCwgc3RhY2tfc2l6ZV9wYWRkZWQKICAg
ICAlZW5kaWYKICAgICBXSU42NF9QVVNIX1hNTQogJWVuZG1hY3JvCiAKLSVtYWNybyBXSU42NF9S
RVNUT1JFX1hNTV9JTlRFUk5BTCAxCislbWFjcm8gV0lONjRfUkVTVE9SRV9YTU1fSU5URVJOQUwg
MAogICAgICVhc3NpZ24gJSVwYWRfc2l6ZSAwCi0gICAgJWlmIHhtbV9yZWdzX3VzZWQgPiA4Ci0g
ICAgICAgICVhc3NpZ24gJSVpIHhtbV9yZWdzX3VzZWQKLSAgICAgICAgJXJlcCB4bW1fcmVnc191
c2VkLTgKKyAgICAlYXNzaWduICUleG1tX3JlZ3Nfb25fc3RhY2sgeG1tX3JlZ3NfdXNlZCAtIGhp
Z2hfbW1fcmVncyAtIDgKKyAgICAlaWYgJSV4bW1fcmVnc19vbl9zdGFjayA+IDAKKyAgICAgICAg
JWFzc2lnbiAlJWkgeG1tX3JlZ3NfdXNlZCAtIGhpZ2hfbW1fcmVncworICAgICAgICAlcmVwICUl
eG1tX3JlZ3Nfb25fc3RhY2sKICAgICAgICAgICAgICVhc3NpZ24gJSVpICUlaS0xCi0gICAgICAg
ICAgICBtb3ZhcHMgeG1tICUrICUlaSwgWyUxICsgKCUlaS04KSoxNiArIHN0YWNrX3NpemUgKyAz
Ml0KKyAgICAgICAgICAgIG1vdmFwcyB4bW0gJSsgJSVpLCBbcnNwICsgKCUlaS04KSoxNiArIHN0
YWNrX3NpemUgKyAzMl0KICAgICAgICAgJWVuZHJlcAogICAgICVlbmRpZgogICAgICVpZiBzdGFj
a19zaXplX3BhZGRlZCA+IDAKICAgICAgICAgJWlmIHN0YWNrX3NpemUgPiAwICYmIHJlcXVpcmVk
X3N0YWNrX2FsaWdubWVudCA+IFNUQUNLX0FMSUdOTUVOVAogICAgICAgICAgICAgbW92IHJzcCwg
cnN0a20KICAgICAgICAgJWVsc2UKLSAgICAgICAgICAgIGFkZCAlMSwgc3RhY2tfc2l6ZV9wYWRk
ZWQKKyAgICAgICAgICAgIGFkZCByc3AsIHN0YWNrX3NpemVfcGFkZGVkCiAgICAgICAgICAgICAl
YXNzaWduICUlcGFkX3NpemUgc3RhY2tfc2l6ZV9wYWRkZWQKICAgICAgICAgJWVuZGlmCiAgICAg
JWVuZGlmCi0gICAgJWlmIHhtbV9yZWdzX3VzZWQgPiA3Ci0gICAgICAgIG1vdmFwcyB4bW03LCBb
JTEgKyBzdGFja19vZmZzZXQgLSAlJXBhZF9zaXplICsgMjRdCisgICAgJWlmIHhtbV9yZWdzX3Vz
ZWQgPiA3ICsgaGlnaF9tbV9yZWdzCisgICAgICAgIG1vdmFwcyB4bW03LCBbcnNwICsgc3RhY2tf
b2Zmc2V0IC0gJSVwYWRfc2l6ZSArIDI0XQogICAgICVlbmRpZgotICAgICVpZiB4bW1fcmVnc191
c2VkID4gNgotICAgICAgICBtb3ZhcHMgeG1tNiwgWyUxICsgc3RhY2tfb2Zmc2V0IC0gJSVwYWRf
c2l6ZSArICA4XQorICAgICVpZiB4bW1fcmVnc191c2VkID4gNiArIGhpZ2hfbW1fcmVncworICAg
ICAgICBtb3ZhcHMgeG1tNiwgW3JzcCArIHN0YWNrX29mZnNldCAtICUlcGFkX3NpemUgKyAgOF0K
ICAgICAlZW5kaWYKICVlbmRtYWNybwogCi0lbWFjcm8gV0lONjRfUkVTVE9SRV9YTU0gMQotICAg
IFdJTjY0X1JFU1RPUkVfWE1NX0lOVEVSTkFMICUxCislbWFjcm8gV0lONjRfUkVTVE9SRV9YTU0g
MAorICAgIFdJTjY0X1JFU1RPUkVfWE1NX0lOVEVSTkFMCiAgICAgJWFzc2lnbiBzdGFja19vZmZz
ZXQgKHN0YWNrX29mZnNldC1zdGFja19zaXplX3BhZGRlZCkKKyAgICAlYXNzaWduIHN0YWNrX3Np
emVfcGFkZGVkIDAKICAgICAlYXNzaWduIHhtbV9yZWdzX3VzZWQgMAogJWVuZG1hY3JvCiAKLSVk
ZWZpbmUgaGFzX2VwaWxvZ3VlIHJlZ3NfdXNlZCA+IDcgfHwgeG1tX3JlZ3NfdXNlZCA+IDYgfHwg
bW1zaXplID09IDMyIHx8IHN0YWNrX3NpemUgPiAwCislZGVmaW5lIGhhc19lcGlsb2d1ZSByZWdz
X3VzZWQgPiA3IHx8IHN0YWNrX3NpemUgPiAwIHx8IHZ6ZXJvdXBwZXJfcmVxdWlyZWQgfHwgeG1t
X3JlZ3NfdXNlZCA+IDYraGlnaF9tbV9yZWdzCiAKICVtYWNybyBSRVQgMAotICAgIFdJTjY0X1JF
U1RPUkVfWE1NX0lOVEVSTkFMIHJzcAorICAgIFdJTjY0X1JFU1RPUkVfWE1NX0lOVEVSTkFMCiAg
ICAgUE9QX0lGX1VTRUQgMTQsIDEzLCAxMiwgMTEsIDEwLCA5LCA4LCA3Ci0gICAgJWlmIG1tc2l6
ZSA9PSAzMgorICAgICVpZiB2emVyb3VwcGVyX3JlcXVpcmVkCiAgICAgICAgIHZ6ZXJvdXBwZXIK
ICAgICAlZW5kaWYKICAgICBBVVRPX1JFUF9SRVQKQEAgLTYyMCwxNCArNjY3LDE1IEBAIERFQ0xB
UkVfUkVHIDcsICBSMTAsIDE2CiBERUNMQVJFX1JFRyA4LCAgUjExLCAyNAogREVDTEFSRV9SRUcg
OSwgIHJieCwgMzIKIERFQ0xBUkVfUkVHIDEwLCByYnAsIDQwCi1ERUNMQVJFX1JFRyAxMSwgUjEy
LCA0OAotREVDTEFSRV9SRUcgMTIsIFIxMywgNTYKLURFQ0xBUkVfUkVHIDEzLCBSMTQsIDY0Ci1E
RUNMQVJFX1JFRyAxNCwgUjE1LCA3MgorREVDTEFSRV9SRUcgMTEsIFIxNCwgNDgKK0RFQ0xBUkVf
UkVHIDEyLCBSMTUsIDU2CitERUNMQVJFX1JFRyAxMywgUjEyLCA2NAorREVDTEFSRV9SRUcgMTQs
IFIxMywgNzIKIAotJW1hY3JvIFBST0xPR1VFIDItNSsgOyAjYXJncywgI3JlZ3MsICN4bW1fcmVn
cywgW3N0YWNrX3NpemUsXSBhcmdfbmFtZXMuLi4KKyVtYWNybyBQUk9MT0dVRSAyLTUrIDAgOyAj
YXJncywgI3JlZ3MsICN4bW1fcmVncywgW3N0YWNrX3NpemUsXSBhcmdfbmFtZXMuLi4KICAgICAl
YXNzaWduIG51bV9hcmdzICUxCiAgICAgJWFzc2lnbiByZWdzX3VzZWQgJTIKKyAgICAlYXNzaWdu
IHhtbV9yZWdzX3VzZWQgJTMKICAgICBBU1NFUlQgcmVnc191c2VkID49IG51bV9hcmdzCiAgICAg
U0VUVVBfU1RBQ0tfUE9JTlRFUiAlNAogICAgIEFTU0VSVCByZWdzX3VzZWQgPD0gMTUKQEAgLTYz
Nyw3ICs2ODUsNyBAQCBERUNMQVJFX1JFRyAxNCwgUjE1LCA3MgogICAgIERFRklORV9BUkdTX0lO
VEVSTkFMICUwLCAlNCwgJTUKICVlbmRtYWNybwogCi0lZGVmaW5lIGhhc19lcGlsb2d1ZSByZWdz
X3VzZWQgPiA5IHx8IG1tc2l6ZSA9PSAzMiB8fCBzdGFja19zaXplID4gMAorJWRlZmluZSBoYXNf
ZXBpbG9ndWUgcmVnc191c2VkID4gOSB8fCBzdGFja19zaXplID4gMCB8fCB2emVyb3VwcGVyX3Jl
cXVpcmVkCiAKICVtYWNybyBSRVQgMAogICAgICVpZiBzdGFja19zaXplX3BhZGRlZCA+IDAKQEAg
LTY0OCw3ICs2OTYsNyBAQCBERUNMQVJFX1JFRyAxNCwgUjE1LCA3MgogICAgICAgICAlZW5kaWYK
ICAgICAlZW5kaWYKICAgICBQT1BfSUZfVVNFRCAxNCwgMTMsIDEyLCAxMSwgMTAsIDkKLSAgICAl
aWYgbW1zaXplID09IDMyCisgICAgJWlmIHZ6ZXJvdXBwZXJfcmVxdWlyZWQKICAgICAgICAgdnpl
cm91cHBlcgogICAgICVlbmRpZgogICAgIEFVVE9fUkVQX1JFVApAQCAtNjkzLDcgKzc0MSw3IEBA
IERFQ0xBUkVfQVJHIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNAogICAgIERFRklORV9BUkdT
X0lOVEVSTkFMICUwLCAlNCwgJTUKICVlbmRtYWNybwogCi0lZGVmaW5lIGhhc19lcGlsb2d1ZSBy
ZWdzX3VzZWQgPiAzIHx8IG1tc2l6ZSA9PSAzMiB8fCBzdGFja19zaXplID4gMAorJWRlZmluZSBo
YXNfZXBpbG9ndWUgcmVnc191c2VkID4gMyB8fCBzdGFja19zaXplID4gMCB8fCB2emVyb3VwcGVy
X3JlcXVpcmVkCiAKICVtYWNybyBSRVQgMAogICAgICVpZiBzdGFja19zaXplX3BhZGRlZCA+IDAK
QEAgLTcwNCw3ICs3NTIsNyBAQCBERUNMQVJFX0FSRyA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywg
MTQKICAgICAgICAgJWVuZGlmCiAgICAgJWVuZGlmCiAgICAgUE9QX0lGX1VTRUQgNiwgNSwgNCwg
MwotICAgICVpZiBtbXNpemUgPT0gMzIKKyAgICAlaWYgdnplcm91cHBlcl9yZXF1aXJlZAogICAg
ICAgICB2emVyb3VwcGVyCiAgICAgJWVuZGlmCiAgICAgQVVUT19SRVBfUkVUCkBAIC03MTUsNyAr
NzYzLDcgQEAgREVDTEFSRV9BUkcgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0CiAlaWYgV0lO
NjQgPT0gMAogICAgICVtYWNybyBXSU42NF9TUElMTF9YTU0gMQogICAgICVlbmRtYWNybwotICAg
ICVtYWNybyBXSU42NF9SRVNUT1JFX1hNTSAxCisgICAgJW1hY3JvIFdJTjY0X1JFU1RPUkVfWE1N
IDAKICAgICAlZW5kbWFjcm8KICAgICAlbWFjcm8gV0lONjRfUFVTSF9YTU0gMAogICAgICVlbmRt
YWNybwpAQCAtNzI2LDcgKzc3NCw3IEBAIERFQ0xBUkVfQVJHIDcsIDgsIDksIDEwLCAxMSwgMTIs
IDEzLCAxNAogOyBXZSBjYW4gYXV0b21hdGljYWxseSBkZXRlY3QgImZvbGxvd3MgYSBicmFuY2gi
LCBidXQgbm90IGEgYnJhbmNoIHRhcmdldC4KIDsgKFNTU0UzIGlzIGEgc3VmZmljaWVudCBjb25k
aXRpb24gdG8ga25vdyB0aGF0IHlvdXIgY3B1IGRvZXNuJ3QgaGF2ZSB0aGlzIHByb2JsZW0uKQog
JW1hY3JvIFJFUF9SRVQgMAotICAgICVpZiBoYXNfZXBpbG9ndWUKKyAgICAlaWYgaGFzX2VwaWxv
Z3VlIHx8IGNwdWZsYWcoc3NzZTMpCiAgICAgICAgIFJFVAogICAgICVlbHNlCiAgICAgICAgIHJl
cCByZXQKQEAgLTc1OCw3ICs4MDYsNyBAQCBERUNMQVJFX0FSRyA3LCA4LCA5LCAxMCwgMTEsIDEy
LCAxMywgMTQKIAogQlJBTkNIX0lOU1RSIGp6LCBqZSwgam56LCBqbmUsIGpsLCBqbGUsIGpubCwg
am5sZSwgamcsIGpnZSwgam5nLCBqbmdlLCBqYSwgamFlLCBqbmEsIGpuYWUsIGpiLCBqYmUsIGpu
Yiwgam5iZSwgamMsIGpuYywganMsIGpucywgam8sIGpubywganAsIGpucAogCi0lbWFjcm8gVEFJ
TF9DQUxMIDIgOyBjYWxsZWUsIGlzX25vbmFkamFjZW50CislbWFjcm8gVEFJTF9DQUxMIDEtMiAx
IDsgY2FsbGVlLCBpc19ub25hZGphY2VudAogICAgICVpZiBoYXNfZXBpbG9ndWUKICAgICAgICAg
Y2FsbCAlMQogICAgICAgICBSRVQKQEAgLTc4OCwzNSArODM2LDI1IEBAIEJSQU5DSF9JTlNUUiBq
eiwgamUsIGpueiwgam5lLCBqbCwgamxlLCBqbmwsIGpubGUsIGpnLCBqZ2UsIGpuZywgam5nZSwg
amEsIGphZSwKICVlbmRtYWNybwogJW1hY3JvIGNnbG9iYWxfaW50ZXJuYWwgMi0zKwogICAgIGFu
bm90YXRlX2Z1bmN0aW9uX3NpemUKLSAgICAlaWYgJTEKLSAgICAgICAgJXhkZWZpbmUgJSVGVU5D
VElPTl9QUkVGSVggcHJpdmF0ZV9wcmVmaXgKLSAgICAgICAgOyBsaWJ2cHggZXhwbGljaXRseSBz
ZXRzIHZpc2liaWxpdHkgaW4gc2hhcmVkIG9iamVjdCBidWlsZHMuIEF2b2lkCi0gICAgICAgIDsg
c2V0dGluZyB2aXNpYmlsaXR5IHRvIGhpZGRlbiBhcyBpdCBtYXkgYnJlYWsgYnVpbGRzIHRoYXQg
c3BsaXQKLSAgICAgICAgOyBzb3VyY2VzIG9uIGUuZy4sIGRpcmVjdG9yeSBib3VuZGFyaWVzLgot
ICAgICAgICAlaWZkZWYgQ0hST01JVU0KLSAgICAgICAgICAgICV4ZGVmaW5lICUlVklTSUJJTElU
WSBoaWRkZW4KKyAgICAlaWZuZGVmIGNnbG9iYWxlZF8lMgorICAgICAgICAlaWYgJTEKKyAgICAg
ICAgICAgICV4ZGVmaW5lICUyIG1hbmdsZShwcml2YXRlX3ByZWZpeCAlKyBfICUrICUyKQogICAg
ICAgICAlZWxzZQotICAgICAgICAgICAgJXhkZWZpbmUgJSVWSVNJQklMSVRZCisgICAgICAgICAg
ICAleGRlZmluZSAlMiBtYW5nbGUocHVibGljX3ByZWZpeCAlKyBfICUrICUyKQogICAgICAgICAl
ZW5kaWYKLSAgICAlZWxzZQotICAgICAgICAleGRlZmluZSAlJUZVTkNUSU9OX1BSRUZJWCBwdWJs
aWNfcHJlZml4Ci0gICAgICAgICV4ZGVmaW5lICUlVklTSUJJTElUWQotICAgICVlbmRpZgotICAg
ICVpZm5kZWYgY2dsb2JhbGVkXyUyCi0gICAgICAgICV4ZGVmaW5lICUyIG1hbmdsZSglJUZVTkNU
SU9OX1BSRUZJWCAlKyBfICUrICUyKQogICAgICAgICAleGRlZmluZSAlMi5za2lwX3Byb2xvZ3Vl
ICUyICUrIC5za2lwX3Byb2xvZ3VlCiAgICAgICAgIENBVF9YREVGSU5FIGNnbG9iYWxlZF8sICUy
LCAxCiAgICAgJWVuZGlmCiAgICAgJXhkZWZpbmUgY3VycmVudF9mdW5jdGlvbiAlMgogICAgICV4
ZGVmaW5lIGN1cnJlbnRfZnVuY3Rpb25fc2VjdGlvbiBfX1NFQ1RfXwogICAgICVpZiBGT1JNQVRf
RUxGCi0gICAgICAgIGdsb2JhbCAlMjpmdW5jdGlvbiAlJVZJU0lCSUxJVFkKLSAgICAlZWxpZiBG
T1JNQVRfTUFDSE8KLSAgICAgICAgJWlmZGVmIF9fTkFTTV9WRVJfXwotICAgICAgICAgICAgZ2xv
YmFsICUyCisgICAgICAgICVpZiAlMQorICAgICAgICAgICAgZ2xvYmFsICUyOmZ1bmN0aW9uIFZJ
U0lCSUxJVFkKICAgICAgICAgJWVsc2UKLSAgICAgICAgICAgIGdsb2JhbCAlMjpwcml2YXRlX2V4
dGVybgorICAgICAgICAgICAgZ2xvYmFsICUyOmZ1bmN0aW9uCiAgICAgICAgICVlbmRpZgorICAg
ICVlbGlmIEZPUk1BVF9NQUNITyAmJiBIQVZFX1BSSVZBVEVfRVhURVJOICYmICUxCisgICAgICAg
IGdsb2JhbCAlMjpwcml2YXRlX2V4dGVybgogICAgICVlbHNlCiAgICAgICAgIGdsb2JhbCAlMgog
ICAgICVlbmRpZgpAQCAtODI3LDEyICs4NjUsMjQgQEAgQlJBTkNIX0lOU1RSIGp6LCBqZSwgam56
LCBqbmUsIGpsLCBqbGUsIGpubCwgam5sZSwgamcsIGpnZSwgam5nLCBqbmdlLCBqYSwgamFlLAog
ICAgICVhc3NpZ24gc3RhY2tfb2Zmc2V0IDAgICAgICA7IHN0YWNrIHBvaW50ZXIgb2Zmc2V0IHJl
bGF0aXZlIHRvIHRoZSByZXR1cm4gYWRkcmVzcwogICAgICVhc3NpZ24gc3RhY2tfc2l6ZSAwICAg
ICAgICA7IGFtb3VudCBvZiBzdGFjayBzcGFjZSB0aGF0IGNhbiBiZSBmcmVlbHkgdXNlZCBpbnNp
ZGUgYSBmdW5jdGlvbgogICAgICVhc3NpZ24gc3RhY2tfc2l6ZV9wYWRkZWQgMCA7IHRvdGFsIGFt
b3VudCBvZiBhbGxvY2F0ZWQgc3RhY2sgc3BhY2UsIGluY2x1ZGluZyBzcGFjZSBmb3IgY2FsbGVl
LXNhdmVkIHhtbSByZWdpc3RlcnMgb24gV0lONjQgYW5kIGFsaWdubWVudCBwYWRkaW5nCi0gICAg
JWFzc2lnbiB4bW1fcmVnc191c2VkIDAgICAgIDsgbnVtYmVyIG9mIFhNTSByZWdpc3RlcnMgcmVx
dWVzdGVkLCB1c2VkIGZvciBkZWFsaW5nIHdpdGggY2FsbGVlLXNhdmVkIHJlZ2lzdGVycyBvbiBX
SU42NAorICAgICVhc3NpZ24geG1tX3JlZ3NfdXNlZCAwICAgICA7IG51bWJlciBvZiBYTU0gcmVn
aXN0ZXJzIHJlcXVlc3RlZCwgdXNlZCBmb3IgZGVhbGluZyB3aXRoIGNhbGxlZS1zYXZlZCByZWdp
c3RlcnMgb24gV0lONjQgYW5kIHZ6ZXJvdXBwZXIKICAgICAlaWZuaWRuICUzLCAiIgogICAgICAg
ICBQUk9MT0dVRSAlMwogICAgICVlbmRpZgogJWVuZG1hY3JvCiAKKzsgQ3JlYXRlIGEgZ2xvYmFs
IHN5bWJvbCBmcm9tIGEgbG9jYWwgbGFiZWwgd2l0aCB0aGUgY29ycmVjdCBuYW1lIG1hbmdsaW5n
IGFuZCB0eXBlCislbWFjcm8gY2dsb2JhbF9sYWJlbCAxCisgICAgJWlmIEZPUk1BVF9FTEYKKyAg
ICAgICAgZ2xvYmFsIGN1cnJlbnRfZnVuY3Rpb24gJSsgJTE6ZnVuY3Rpb24gVklTSUJJTElUWQor
ICAgICVlbGlmIEZPUk1BVF9NQUNITyAmJiBIQVZFX1BSSVZBVEVfRVhURVJOCisgICAgICAgIGds
b2JhbCBjdXJyZW50X2Z1bmN0aW9uICUrICUxOnByaXZhdGVfZXh0ZXJuCisgICAgJWVsc2UKKyAg
ICAgICAgZ2xvYmFsIGN1cnJlbnRfZnVuY3Rpb24gJSsgJTEKKyAgICAlZW5kaWYKKyAgICAlMToK
KyVlbmRtYWNybworCiAlbWFjcm8gY2V4dGVybiAxCiAgICAgJXhkZWZpbmUgJTEgbWFuZ2xlKHBy
aXZhdGVfcHJlZml4ICUrIF8gJSsgJTEpCiAgICAgQ0FUX1hERUZJTkUgY2dsb2JhbGVkXywgJTEs
IDEKQEAgLTg1MSw3ICs5MDEsOSBAQCBCUkFOQ0hfSU5TVFIganosIGplLCBqbnosIGpuZSwgamws
IGpsZSwgam5sLCBqbmxlLCBqZywgamdlLCBqbmcsIGpuZ2UsIGphLCBqYWUsCiAlbWFjcm8gY29u
c3QgMS0yKwogICAgICV4ZGVmaW5lICUxIG1hbmdsZShwcml2YXRlX3ByZWZpeCAlKyBfICUrICUx
KQogICAgICVpZiBGT1JNQVRfRUxGCi0gICAgICAgIGdsb2JhbCAlMTpkYXRhIGhpZGRlbgorICAg
ICAgICBnbG9iYWwgJTE6ZGF0YSBWSVNJQklMSVRZCisgICAgJWVsaWYgRk9STUFUX01BQ0hPICYm
IEhBVkVfUFJJVkFURV9FWFRFUk4KKyAgICAgICAgZ2xvYmFsICUxOnByaXZhdGVfZXh0ZXJuCiAg
ICAgJWVsc2UKICAgICAgICAgZ2xvYmFsICUxCiAgICAgJWVuZGlmCkBAIC04OTAsMjQgKzk0Miwy
NiBAQCBCUkFOQ0hfSU5TVFIganosIGplLCBqbnosIGpuZSwgamwsIGpsZSwgam5sLCBqbmxlLCBq
ZywgamdlLCBqbmcsIGpuZ2UsIGphLCBqYWUsCiAlYXNzaWduIGNwdWZsYWdzX3NzZSAgICAgICgx
PDw0KSB8IGNwdWZsYWdzX21teDIKICVhc3NpZ24gY3B1ZmxhZ3Nfc3NlMiAgICAgKDE8PDUpIHwg
Y3B1ZmxhZ3Nfc3NlCiAlYXNzaWduIGNwdWZsYWdzX3NzZTJzbG93ICgxPDw2KSB8IGNwdWZsYWdz
X3NzZTIKLSVhc3NpZ24gY3B1ZmxhZ3Nfc3NlMyAgICAgKDE8PDcpIHwgY3B1ZmxhZ3Nfc3NlMgot
JWFzc2lnbiBjcHVmbGFnc19zc3NlMyAgICAoMTw8OCkgfCBjcHVmbGFnc19zc2UzCi0lYXNzaWdu
IGNwdWZsYWdzX3NzZTQgICAgICgxPDw5KSB8IGNwdWZsYWdzX3Nzc2UzCi0lYXNzaWduIGNwdWZs
YWdzX3NzZTQyICAgICgxPDwxMCl8IGNwdWZsYWdzX3NzZTQKLSVhc3NpZ24gY3B1ZmxhZ3NfYXZ4
ICAgICAgKDE8PDExKXwgY3B1ZmxhZ3Nfc3NlNDIKLSVhc3NpZ24gY3B1ZmxhZ3NfeG9wICAgICAg
KDE8PDEyKXwgY3B1ZmxhZ3NfYXZ4Ci0lYXNzaWduIGNwdWZsYWdzX2ZtYTQgICAgICgxPDwxMyl8
IGNwdWZsYWdzX2F2eAotJWFzc2lnbiBjcHVmbGFnc19mbWEzICAgICAoMTw8MTQpfCBjcHVmbGFn
c19hdngKLSVhc3NpZ24gY3B1ZmxhZ3NfYXZ4MiAgICAgKDE8PDE1KXwgY3B1ZmxhZ3NfZm1hMwot
Ci0lYXNzaWduIGNwdWZsYWdzX2NhY2hlMzIgICgxPDwxNikKLSVhc3NpZ24gY3B1ZmxhZ3NfY2Fj
aGU2NCAgKDE8PDE3KQotJWFzc2lnbiBjcHVmbGFnc19zbG93Y3R6ICAoMTw8MTgpCi0lYXNzaWdu
IGNwdWZsYWdzX2x6Y250ICAgICgxPDwxOSkKLSVhc3NpZ24gY3B1ZmxhZ3NfYWxpZ25lZCAgKDE8
PDIwKSA7IG5vdCBhIGNwdSBmZWF0dXJlLCBidXQgYSBmdW5jdGlvbiB2YXJpYW50Ci0lYXNzaWdu
IGNwdWZsYWdzX2F0b20gICAgICgxPDwyMSkKLSVhc3NpZ24gY3B1ZmxhZ3NfYm1pMSAgICAgKDE8
PDIyKXxjcHVmbGFnc19semNudAotJWFzc2lnbiBjcHVmbGFnc19ibWkyICAgICAoMTw8MjMpfGNw
dWZsYWdzX2JtaTEKKyVhc3NpZ24gY3B1ZmxhZ3NfbHpjbnQgICAgKDE8PDcpIHwgY3B1ZmxhZ3Nf
c3NlMgorJWFzc2lnbiBjcHVmbGFnc19zc2UzICAgICAoMTw8OCkgfCBjcHVmbGFnc19zc2UyCisl
YXNzaWduIGNwdWZsYWdzX3Nzc2UzICAgICgxPDw5KSB8IGNwdWZsYWdzX3NzZTMKKyVhc3NpZ24g
Y3B1ZmxhZ3Nfc3NlNCAgICAgKDE8PDEwKXwgY3B1ZmxhZ3Nfc3NzZTMKKyVhc3NpZ24gY3B1Zmxh
Z3Nfc3NlNDIgICAgKDE8PDExKXwgY3B1ZmxhZ3Nfc3NlNAorJWFzc2lnbiBjcHVmbGFnc19hZXNu
aSAgICAoMTw8MTIpfCBjcHVmbGFnc19zc2U0MgorJWFzc2lnbiBjcHVmbGFnc19nZm5pICAgICAo
MTw8MTMpfCBjcHVmbGFnc19zc2U0MgorJWFzc2lnbiBjcHVmbGFnc19hdnggICAgICAoMTw8MTQp
fCBjcHVmbGFnc19zc2U0MgorJWFzc2lnbiBjcHVmbGFnc194b3AgICAgICAoMTw8MTUpfCBjcHVm
bGFnc19hdngKKyVhc3NpZ24gY3B1ZmxhZ3NfZm1hNCAgICAgKDE8PDE2KXwgY3B1ZmxhZ3NfYXZ4
CislYXNzaWduIGNwdWZsYWdzX2ZtYTMgICAgICgxPDwxNyl8IGNwdWZsYWdzX2F2eAorJWFzc2ln
biBjcHVmbGFnc19ibWkxICAgICAoMTw8MTgpfCBjcHVmbGFnc19hdnh8Y3B1ZmxhZ3NfbHpjbnQK
KyVhc3NpZ24gY3B1ZmxhZ3NfYm1pMiAgICAgKDE8PDE5KXwgY3B1ZmxhZ3NfYm1pMQorJWFzc2ln
biBjcHVmbGFnc19hdngyICAgICAoMTw8MjApfCBjcHVmbGFnc19mbWEzfGNwdWZsYWdzX2JtaTIK
KyVhc3NpZ24gY3B1ZmxhZ3NfYXZ4NTEyICAgKDE8PDIxKXwgY3B1ZmxhZ3NfYXZ4MiA7IEYsIENE
LCBCVywgRFEsIFZMCisKKyVhc3NpZ24gY3B1ZmxhZ3NfY2FjaGUzMiAgKDE8PDIyKQorJWFzc2ln
biBjcHVmbGFnc19jYWNoZTY0ICAoMTw8MjMpCislYXNzaWduIGNwdWZsYWdzX2FsaWduZWQgICgx
PDwyNCkgOyBub3QgYSBjcHUgZmVhdHVyZSwgYnV0IGEgZnVuY3Rpb24gdmFyaWFudAorJWFzc2ln
biBjcHVmbGFnc19hdG9tICAgICAoMTw8MjUpCiAKIDsgUmV0dXJucyBhIGJvb2xlYW4gdmFsdWUg
ZXhwcmVzc2luZyB3aGV0aGVyIG9yIG5vdCB0aGUgc3BlY2lmaWVkIGNwdWZsYWcgaXMgZW5hYmxl
ZC4KICVkZWZpbmUgICAgY3B1ZmxhZyh4KSAoKCgoKGNwdWZsYWdzICYgKGNwdWZsYWdzXyAlKyB4
KSkgXiAoY3B1ZmxhZ3NfICUrIHgpKSAtIDEpID4+IDMxKSAmIDEpCkBAIC05NTAsNyArMTAwNCw3
IEBAIEJSQU5DSF9JTlNUUiBqeiwgamUsIGpueiwgam5lLCBqbCwgamxlLCBqbmwsIGpubGUsIGpn
LCBqZ2UsIGpuZywgam5nZSwgamEsIGphZSwKIAogICAgICVpZiBWUFhfQVJDSF9YODZfNjQgfHwg
Y3B1ZmxhZyhzc2UyKQogICAgICAgICAlaWZkZWYgX19OQVNNX1ZFUl9fCi0gICAgICAgICAgICBB
TElHTk1PREUgazgKKyAgICAgICAgICAgIEFMSUdOTU9ERSBwNgogICAgICAgICAlZWxzZQogICAg
ICAgICAgICAgQ1BVIGFtZG5vcAogICAgICAgICAlZW5kaWYKQEAgLTk2MywxMSArMTAxNywxMiBA
QCBCUkFOQ0hfSU5TVFIganosIGplLCBqbnosIGpuZSwgamwsIGpsZSwgam5sLCBqbmxlLCBqZywg
amdlLCBqbmcsIGpuZ2UsIGphLCBqYWUsCiAgICAgJWVuZGlmCiAlZW5kbWFjcm8KIAotOyBNZXJn
ZSBtbXggYW5kIHNzZSoKKzsgTWVyZ2UgbW14LCBzc2UqLCBhbmQgYXZ4KgogOyBtIyBpcyBhIHNp
bWQgcmVnaXN0ZXIgb2YgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBzaXplCiA7IHhtIyBpcyB0aGUg
Y29ycmVzcG9uZGluZyB4bW0gcmVnaXN0ZXIgaWYgbW1zaXplID49IDE2LCBvdGhlcndpc2UgdGhl
IHNhbWUgYXMgbSMKIDsgeW0jIGlzIHRoZSBjb3JyZXNwb25kaW5nIHltbSByZWdpc3RlciBpZiBt
bXNpemUgPj0gMzIsIG90aGVyd2lzZSB0aGUgc2FtZSBhcyBtIwotOyAoQWxsIDMgcmVtYWluIGlu
IHN5bmMgdGhyb3VnaCBTV0FQLikKKzsgem0jIGlzIHRoZSBjb3JyZXNwb25kaW5nIHptbSByZWdp
c3RlciBpZiBtbXNpemUgPj0gNjQsIG90aGVyd2lzZSB0aGUgc2FtZSBhcyBtIworOyAoQWxsIDQg
cmVtYWluIGluIHN5bmMgdGhyb3VnaCBTV0FQLikKIAogJW1hY3JvIENBVF9YREVGSU5FIDMKICAg
ICAleGRlZmluZSAlMSUyICUzCkBAIC05NzcsNjkgKzEwMzIsOTkgQEAgQlJBTkNIX0lOU1RSIGp6
LCBqZSwgam56LCBqbmUsIGpsLCBqbGUsIGpubCwgam5sZSwgamcsIGpnZSwgam5nLCBqbmdlLCBq
YSwgamFlLAogICAgICV1bmRlZiAlMSUyCiAlZW5kbWFjcm8KIAorJW1hY3JvIERFRklORV9NTVJF
R1MgMSA7IG1tdHlwZQorICAgICVhc3NpZ24gJSVwcmV2X21tcmVncyAwCisgICAgJWlmZGVmIG51
bV9tbXJlZ3MKKyAgICAgICAgJWFzc2lnbiAlJXByZXZfbW1yZWdzIG51bV9tbXJlZ3MKKyAgICAl
ZW5kaWYKKworICAgICVhc3NpZ24gbnVtX21tcmVncyA4CisgICAgJWlmIFZQWF9BUkNIX1g4Nl82
NCAmJiBtbXNpemUgPj0gMTYKKyAgICAgICAgJWFzc2lnbiBudW1fbW1yZWdzIDE2CisgICAgICAg
ICVpZiBjcHVmbGFnKGF2eDUxMikgfHwgbW1zaXplID09IDY0CisgICAgICAgICAgICAlYXNzaWdu
IG51bV9tbXJlZ3MgMzIKKyAgICAgICAgJWVuZGlmCisgICAgJWVuZGlmCisKKyAgICAlYXNzaWdu
ICUlaSAwCisgICAgJXJlcCBudW1fbW1yZWdzCisgICAgICAgIENBVF9YREVGSU5FIG0sICUlaSwg
JTEgJSsgJSVpCisgICAgICAgIENBVF9YREVGSU5FIG5uJTEsICUlaSwgJSVpCisgICAgICAgICVh
c3NpZ24gJSVpICUlaSsxCisgICAgJWVuZHJlcAorICAgICVpZiAlJXByZXZfbW1yZWdzID4gbnVt
X21tcmVncworICAgICAgICAlcmVwICUlcHJldl9tbXJlZ3MgLSBudW1fbW1yZWdzCisgICAgICAg
ICAgICBDQVRfVU5ERUYgbSwgJSVpCisgICAgICAgICAgICBDQVRfVU5ERUYgbm4gJSsgbW10eXBl
LCAlJWkKKyAgICAgICAgICAgICVhc3NpZ24gJSVpICUlaSsxCisgICAgICAgICVlbmRyZXAKKyAg
ICAlZW5kaWYKKyAgICAleGRlZmluZSBtbXR5cGUgJTEKKyVlbmRtYWNybworCis7IFByZWZlciBy
ZWdpc3RlcnMgMTYtMzEgb3ZlciAwLTE1IHRvIGF2b2lkIGhhdmluZyB0byB1c2Ugdnplcm91cHBl
cgorJW1hY3JvIEFWWDUxMl9NTV9QRVJNVVRBVElPTiAwLTEgMCA7IHN0YXJ0X3JlZworICAgICVp
ZiBWUFhfQVJDSF9YODZfNjQgJiYgY3B1ZmxhZyhhdng1MTIpCisgICAgICAgICVhc3NpZ24gJSVp
ICUxCisgICAgICAgICVyZXAgMTYtJTEKKyAgICAgICAgICAgICVhc3NpZ24gJSVpX2hpZ2ggJSVp
KzE2CisgICAgICAgICAgICBTV0FQICUlaSwgJSVpX2hpZ2gKKyAgICAgICAgICAgICVhc3NpZ24g
JSVpICUlaSsxCisgICAgICAgICVlbmRyZXAKKyAgICAlZW5kaWYKKyVlbmRtYWNybworCiAlbWFj
cm8gSU5JVF9NTVggMC0xKwogICAgICVhc3NpZ24gYXZ4X2VuYWJsZWQgMAogICAgICVkZWZpbmUg
UkVTRVRfTU1fUEVSTVVUQVRJT04gSU5JVF9NTVggJTEKICAgICAlZGVmaW5lIG1tc2l6ZSA4Ci0g
ICAgJWRlZmluZSBudW1fbW1yZWdzIDgKICAgICAlZGVmaW5lIG1vdmEgbW92cQogICAgICVkZWZp
bmUgbW92dSBtb3ZxCiAgICAgJWRlZmluZSBtb3ZoIG1vdmQKICAgICAlZGVmaW5lIG1vdm50YSBt
b3ZudHEKLSAgICAlYXNzaWduICUlaSAwCi0gICAgJXJlcCA4Ci0gICAgICAgIENBVF9YREVGSU5F
IG0sICUlaSwgbW0gJSsgJSVpCi0gICAgICAgIENBVF9YREVGSU5FIG5ubW0sICUlaSwgJSVpCi0g
ICAgICAgICVhc3NpZ24gJSVpICUlaSsxCi0gICAgJWVuZHJlcAotICAgICVyZXAgOAotICAgICAg
ICBDQVRfVU5ERUYgbSwgJSVpCi0gICAgICAgIENBVF9VTkRFRiBubm1tLCAlJWkKLSAgICAgICAg
JWFzc2lnbiAlJWkgJSVpKzEKLSAgICAlZW5kcmVwCiAgICAgSU5JVF9DUFVGTEFHUyAlMQorICAg
IERFRklORV9NTVJFR1MgbW0KICVlbmRtYWNybwogCiAlbWFjcm8gSU5JVF9YTU0gMC0xKwogICAg
ICVhc3NpZ24gYXZ4X2VuYWJsZWQgMAogICAgICVkZWZpbmUgUkVTRVRfTU1fUEVSTVVUQVRJT04g
SU5JVF9YTU0gJTEKICAgICAlZGVmaW5lIG1tc2l6ZSAxNgotICAgICVkZWZpbmUgbnVtX21tcmVn
cyA4Ci0gICAgJWlmIFZQWF9BUkNIX1g4Nl82NAotICAgICAgICAlZGVmaW5lIG51bV9tbXJlZ3Mg
MTYKLSAgICAlZW5kaWYKICAgICAlZGVmaW5lIG1vdmEgbW92ZHFhCiAgICAgJWRlZmluZSBtb3Z1
IG1vdmRxdQogICAgICVkZWZpbmUgbW92aCBtb3ZxCiAgICAgJWRlZmluZSBtb3ZudGEgbW92bnRk
cQotICAgICVhc3NpZ24gJSVpIDAKLSAgICAlcmVwIG51bV9tbXJlZ3MKLSAgICAgICAgQ0FUX1hE
RUZJTkUgbSwgJSVpLCB4bW0gJSsgJSVpCi0gICAgICAgIENBVF9YREVGSU5FIG5ueG1tLCAlJWks
ICUlaQotICAgICAgICAlYXNzaWduICUlaSAlJWkrMQotICAgICVlbmRyZXAKICAgICBJTklUX0NQ
VUZMQUdTICUxCisgICAgREVGSU5FX01NUkVHUyB4bW0KKyAgICAlaWYgV0lONjQKKyAgICAgICAg
QVZYNTEyX01NX1BFUk1VVEFUSU9OIDYgOyBTd2FwIGNhbGxlZS1zYXZlZCByZWdpc3RlcnMgd2l0
aCB2b2xhdGlsZSByZWdpc3RlcnMKKyAgICAlZW5kaWYKICVlbmRtYWNybwogCiAlbWFjcm8gSU5J
VF9ZTU0gMC0xKwogICAgICVhc3NpZ24gYXZ4X2VuYWJsZWQgMQogICAgICVkZWZpbmUgUkVTRVRf
TU1fUEVSTVVUQVRJT04gSU5JVF9ZTU0gJTEKICAgICAlZGVmaW5lIG1tc2l6ZSAzMgotICAgICVk
ZWZpbmUgbnVtX21tcmVncyA4Ci0gICAgJWlmIFZQWF9BUkNIX1g4Nl82NAotICAgICAgICAlZGVm
aW5lIG51bV9tbXJlZ3MgMTYKLSAgICAlZW5kaWYKICAgICAlZGVmaW5lIG1vdmEgbW92ZHFhCiAg
ICAgJWRlZmluZSBtb3Z1IG1vdmRxdQogICAgICV1bmRlZiBtb3ZoCiAgICAgJWRlZmluZSBtb3Zu
dGEgbW92bnRkcQotICAgICVhc3NpZ24gJSVpIDAKLSAgICAlcmVwIG51bV9tbXJlZ3MKLSAgICAg
ICAgQ0FUX1hERUZJTkUgbSwgJSVpLCB5bW0gJSsgJSVpCi0gICAgICAgIENBVF9YREVGSU5FIG5u
eW1tLCAlJWksICUlaQotICAgICAgICAlYXNzaWduICUlaSAlJWkrMQotICAgICVlbmRyZXAKICAg
ICBJTklUX0NQVUZMQUdTICUxCisgICAgREVGSU5FX01NUkVHUyB5bW0KKyAgICBBVlg1MTJfTU1f
UEVSTVVUQVRJT04KKyVlbmRtYWNybworCislbWFjcm8gSU5JVF9aTU0gMC0xKworICAgICVhc3Np
Z24gYXZ4X2VuYWJsZWQgMQorICAgICVkZWZpbmUgUkVTRVRfTU1fUEVSTVVUQVRJT04gSU5JVF9a
TU0gJTEKKyAgICAlZGVmaW5lIG1tc2l6ZSA2NAorICAgICVkZWZpbmUgbW92YSBtb3ZkcWEKKyAg
ICAlZGVmaW5lIG1vdnUgbW92ZHF1CisgICAgJXVuZGVmIG1vdmgKKyAgICAlZGVmaW5lIG1vdm50
YSBtb3ZudGRxCisgICAgSU5JVF9DUFVGTEFHUyAlMQorICAgIERFRklORV9NTVJFR1Mgem1tCisg
ICAgQVZYNTEyX01NX1BFUk1VVEFUSU9OCiAlZW5kbWFjcm8KIAogSU5JVF9YTU0KQEAgLTEwNDgs
MTggKzExMzMsMjYgQEAgSU5JVF9YTU0KICAgICAlZGVmaW5lICBtbW1tJTEgICBtbSUxCiAgICAg
JWRlZmluZSAgbW14bW0lMSAgbW0lMQogICAgICVkZWZpbmUgIG1teW1tJTEgIG1tJTEKKyAgICAl
ZGVmaW5lICBtbXptbSUxICBtbSUxCiAgICAgJWRlZmluZSB4bW1tbSUxICAgbW0lMQogICAgICVk
ZWZpbmUgeG1teG1tJTEgeG1tJTEKICAgICAlZGVmaW5lIHhtbXltbSUxIHhtbSUxCisgICAgJWRl
ZmluZSB4bW16bW0lMSB4bW0lMQogICAgICVkZWZpbmUgeW1tbW0lMSAgIG1tJTEKICAgICAlZGVm
aW5lIHltbXhtbSUxIHhtbSUxCiAgICAgJWRlZmluZSB5bW15bW0lMSB5bW0lMQorICAgICVkZWZp
bmUgeW1tem1tJTEgeW1tJTEKKyAgICAlZGVmaW5lIHptbW1tJTEgICBtbSUxCisgICAgJWRlZmlu
ZSB6bW14bW0lMSB4bW0lMQorICAgICVkZWZpbmUgem1teW1tJTEgeW1tJTEKKyAgICAlZGVmaW5l
IHptbXptbSUxIHptbSUxCiAgICAgJWRlZmluZSB4bSUxIHhtbSAlKyBtJTEKICAgICAlZGVmaW5l
IHltJTEgeW1tICUrIG0lMQorICAgICVkZWZpbmUgem0lMSB6bW0gJSsgbSUxCiAlZW5kbWFjcm8K
IAogJWFzc2lnbiBpIDAKLSVyZXAgMTYKKyVyZXAgMzIKICAgICBERUNMQVJFX01NQ0FTVCBpCiAg
ICAgJWFzc2lnbiBpIGkrMQogJWVuZHJlcApAQCAtMTEyOSwyNSArMTIyMiw0MiBAQCBJTklUX1hN
TQogICAgICVlbmRpZgogICAgICVhc3NpZ24gJSVpIDAKICAgICAlcmVwIG51bV9tbXJlZ3MKLSAg
ICAgICAgQ0FUX1hERUZJTkUgJSVmLCAlJWksIG0gJSsgJSVpCisgICAgICAgICV4ZGVmaW5lICUl
dG1wIG0gJSsgJSVpCisgICAgICAgIENBVF9YREVGSU5FICUlZiwgJSVpLCByZWdudW1vZiAlKyAl
JXRtcAogICAgICAgICAlYXNzaWduICUlaSAlJWkrMQogICAgICVlbmRyZXAKICVlbmRtYWNybwog
Ci0lbWFjcm8gTE9BRF9NTV9QRVJNVVRBVElPTiAxIDsgbmFtZSB0byBsb2FkIGZyb20KLSAgICAl
aWZkZWYgJTFfbTAKKyVtYWNybyBMT0FEX01NX1BFUk1VVEFUSU9OIDAtMSA7IG5hbWUgdG8gbG9h
ZCBmcm9tCisgICAgJWlmICUwCisgICAgICAgICV4ZGVmaW5lICUlZiAlMV9tCisgICAgJWVsc2UK
KyAgICAgICAgJXhkZWZpbmUgJSVmIGN1cnJlbnRfZnVuY3Rpb24gJSsgX20KKyAgICAlZW5kaWYK
KyAgICAleGRlZmluZSAlJXRtcCAlJWYgJSsgMAorICAgICVpZm51bSAlJXRtcAorICAgICAgICBS
RVNFVF9NTV9QRVJNVVRBVElPTgogICAgICAgICAlYXNzaWduICUlaSAwCiAgICAgICAgICVyZXAg
bnVtX21tcmVncwotICAgICAgICAgICAgQ0FUX1hERUZJTkUgbSwgJSVpLCAlMV9tICUrICUlaQot
ICAgICAgICAgICAgQ0FUX1hERUZJTkUgbm4sIG0gJSsgJSVpLCAlJWkKKyAgICAgICAgICAgICV4
ZGVmaW5lICUldG1wICUlZiAlKyAlJWkKKyAgICAgICAgICAgIENBVF9YREVGSU5FICUlbSwgJSVp
LCBtICUrICUldG1wCiAgICAgICAgICAgICAlYXNzaWduICUlaSAlJWkrMQogICAgICAgICAlZW5k
cmVwCisgICAgICAgICVyZXAgbnVtX21tcmVncworICAgICAgICAgICAgJWFzc2lnbiAlJWkgJSVp
LTEKKyAgICAgICAgICAgIENBVF9YREVGSU5FIG0sICUlaSwgJSVtICUrICUlaQorICAgICAgICAg
ICAgQ0FUX1hERUZJTkUgbm4sIG0gJSsgJSVpLCAlJWkKKyAgICAgICAgJWVuZHJlcAogICAgICVl
bmRpZgogJWVuZG1hY3JvCiAKIDsgQXBwZW5kIGNwdWZsYWdzIHRvIHRoZSBjYWxsZWUncyBuYW1l
IGlmZiB0aGUgYXBwZW5kZWQgbmFtZSBpcyBrbm93biBhbmQgdGhlIHBsYWluIG5hbWUgaXNuJ3QK
ICVtYWNybyBjYWxsIDEKLSAgICBjYWxsX2ludGVybmFsICUxICUrIFNVRkZJWCwgJTEKKyAgICAl
aWZpZCAlMQorICAgICAgICBjYWxsX2ludGVybmFsICUxICUrIFNVRkZJWCwgJTEKKyAgICAlZWxz
ZQorICAgICAgICBjYWxsICUxCisgICAgJWVuZGlmCiAlZW5kbWFjcm8KICVtYWNybyBjYWxsX2lu
dGVybmFsIDIKICAgICAleGRlZmluZSAlJWkgJTIKQEAgLTExOTAsMTIgKzEzMDAsMTcgQEAgSU5J
VF9YTU0KIDs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogCiAlYXNzaWduIGkgMAotJXJlcCAxNgorJXJl
cCAzMgogICAgICVpZiBpIDwgOAogICAgICAgICBDQVRfWERFRklORSBzaXplb2ZtbSwgaSwgOAor
ICAgICAgICBDQVRfWERFRklORSByZWdudW1vZm1tLCBpLCBpCiAgICAgJWVuZGlmCiAgICAgQ0FU
X1hERUZJTkUgc2l6ZW9meG1tLCBpLCAxNgogICAgIENBVF9YREVGSU5FIHNpemVvZnltbSwgaSwg
MzIKKyAgICBDQVRfWERFRklORSBzaXplb2Z6bW0sIGksIDY0CisgICAgQ0FUX1hERUZJTkUgcmVn
bnVtb2Z4bW0sIGksIGkKKyAgICBDQVRfWERFRklORSByZWdudW1vZnltbSwgaSwgaQorICAgIENB
VF9YREVGSU5FIHJlZ251bW9mem1tLCBpLCBpCiAgICAgJWFzc2lnbiBpIGkrMQogJWVuZHJlcAog
JXVuZGVmIGkKQEAgLTEyMTQsNyArMTMyOSw3IEBAIElOSVRfWE1NCiA7JTEgPT0gaW5zdHJ1Y3Rp
b24KIDslMiA9PSBtaW5pbWFsIGluc3RydWN0aW9uIHNldAogOyUzID09IDEgaWYgZmxvYXQsIDAg
aWYgaW50Ci07JTQgPT0gMSBpZiBub24tZGVzdHJ1Y3RpdmUgb3IgNC1vcGVyYW5kICh4bW0sIHht
bSwgeG1tLCBpbW0pLCAwIG90aGVyd2lzZQorOyU0ID09IDEgaWYgNC1vcGVyYW5kIGVtdWxhdGlv
biwgMCBpZiAzLW9wZXJhbmQgZW11bGF0aW9uLCAyNTUgb3RoZXJ3aXNlIChubyBlbXVsYXRpb24p
CiA7JTUgPT0gMSBpZiBjb21tdXRhdGl2ZSAoaS5lLiBkb2Vzbid0IG1hdHRlciB3aGljaCBzcmMg
YXJnIGlzIHdoaWNoKSwgMCBpZiBub3QKIDslNis6IG9wZXJhbmRzCiAlbWFjcm8gUlVOX0FWWF9J
TlNUUiA2LTkrCkBAIC0xMjM4LDggKzEzNTMsMjIgQEAgSU5JVF9YTU0KICAgICAgICAgJWlmZGVm
IGNwdW5hbWUKICAgICAgICAgICAgICVpZiBub3RjcHVmbGFnKCUyKQogICAgICAgICAgICAgICAg
ICVlcnJvciB1c2Ugb2YgYGAlMScnICUyIGluc3RydWN0aW9uIGluIGNwdW5hbWUgZnVuY3Rpb246
IGN1cnJlbnRfZnVuY3Rpb24KLSAgICAgICAgICAgICVlbGlmIGNwdWZsYWdzXyUyIDwgY3B1Zmxh
Z3Nfc3NlICYmIG5vdGNwdWZsYWcoc3NlMikgJiYgX19zaXplb2ZyZWcgPiA4CisgICAgICAgICAg
ICAlZWxpZiAlMyA9PSAwICYmIF9fc2l6ZW9mcmVnID09IDE2ICYmIG5vdGNwdWZsYWcoc3NlMikK
ICAgICAgICAgICAgICAgICAlZXJyb3IgdXNlIG9mIGBgJTEnJyBzc2UyIGluc3RydWN0aW9uIGlu
IGNwdW5hbWUgZnVuY3Rpb246IGN1cnJlbnRfZnVuY3Rpb24KKyAgICAgICAgICAgICVlbGlmICUz
ID09IDAgJiYgX19zaXplb2ZyZWcgPT0gMzIgJiYgbm90Y3B1ZmxhZyhhdngyKQorICAgICAgICAg
ICAgICAgICVlcnJvciB1c2Ugb2YgYGAlMScnIGF2eDIgaW5zdHJ1Y3Rpb24gaW4gY3B1bmFtZSBm
dW5jdGlvbjogY3VycmVudF9mdW5jdGlvbgorICAgICAgICAgICAgJWVsaWYgX19zaXplb2ZyZWcg
PT0gMTYgJiYgbm90Y3B1ZmxhZyhzc2UpCisgICAgICAgICAgICAgICAgJWVycm9yIHVzZSBvZiBg
YCUxJycgc3NlIGluc3RydWN0aW9uIGluIGNwdW5hbWUgZnVuY3Rpb246IGN1cnJlbnRfZnVuY3Rp
b24KKyAgICAgICAgICAgICVlbGlmIF9fc2l6ZW9mcmVnID09IDMyICYmIG5vdGNwdWZsYWcoYXZ4
KQorICAgICAgICAgICAgICAgICVlcnJvciB1c2Ugb2YgYGAlMScnIGF2eCBpbnN0cnVjdGlvbiBp
biBjcHVuYW1lIGZ1bmN0aW9uOiBjdXJyZW50X2Z1bmN0aW9uCisgICAgICAgICAgICAlZWxpZiBf
X3NpemVvZnJlZyA9PSA2NCAmJiBub3RjcHVmbGFnKGF2eDUxMikKKyAgICAgICAgICAgICAgICAl
ZXJyb3IgdXNlIG9mIGBgJTEnJyBhdng1MTIgaW5zdHJ1Y3Rpb24gaW4gY3B1bmFtZSBmdW5jdGlv
bjogY3VycmVudF9mdW5jdGlvbgorICAgICAgICAgICAgJWVsaWZpZG4gJTEsIHBleHRydyA7IHNw
ZWNpYWwgY2FzZSBiZWNhdXNlIHRoZSBiYXNlIGluc3RydWN0aW9uIGlzIG1teDIsCisgICAgICAg
ICAgICAgICAgJWlmbmlkICU2ICAgICAgIDsgYnV0IHNzZTQgaXMgcmVxdWlyZWQgZm9yIG1lbW9y
eSBvcGVyYW5kcworICAgICAgICAgICAgICAgICAgICAlaWYgbm90Y3B1ZmxhZyhzc2U0KQorICAg
ICAgICAgICAgICAgICAgICAgICAgJWVycm9yIHVzZSBvZiBgYCUxJycgc3NlNCBpbnN0cnVjdGlv
biBpbiBjcHVuYW1lIGZ1bmN0aW9uOiBjdXJyZW50X2Z1bmN0aW9uCisgICAgICAgICAgICAgICAg
ICAgICVlbmRpZgorICAgICAgICAgICAgICAgICVlbmRpZgogICAgICAgICAgICAgJWVuZGlmCiAg
ICAgICAgICVlbmRpZgogICAgICVlbmRpZgpAQCAtMTI0NywxNCArMTM3NiwxMiBAQCBJTklUX1hN
TQogICAgICVpZiBfX2VtdWxhdGVfYXZ4CiAgICAgICAgICV4ZGVmaW5lIF9fc3JjMSAlNwogICAg
ICAgICAleGRlZmluZSBfX3NyYzIgJTgKLSAgICAgICAgJWlmbmlkbiAlNiwgJTcKLSAgICAgICAg
ICAgICVpZiAlMCA+PSA5Ci0gICAgICAgICAgICAgICAgQ0hFQ0tfQVZYX0lOU1RSX0VNVSB7JTEg
JTYsICU3LCAlOCwgJTl9LCAlNiwgJTgsICU5Ci0gICAgICAgICAgICAlZWxzZQotICAgICAgICAg
ICAgICAgIENIRUNLX0FWWF9JTlNUUl9FTVUgeyUxICU2LCAlNywgJTh9LCAlNiwgJTgKLSAgICAg
ICAgICAgICVlbmRpZgotICAgICAgICAgICAgJWlmICU1ICYmICU0ID09IDAKLSAgICAgICAgICAg
ICAgICAlaWZuaWQgJTgKKyAgICAgICAgJWlmICU1ICYmICU0ID09IDAKKyAgICAgICAgICAgICVp
Zm5pZG4gJTYsICU3CisgICAgICAgICAgICAgICAgJWlmaWRuICU2LCAlOAorICAgICAgICAgICAg
ICAgICAgICAleGRlZmluZSBfX3NyYzEgJTgKKyAgICAgICAgICAgICAgICAgICAgJXhkZWZpbmUg
X19zcmMyICU3CisgICAgICAgICAgICAgICAgJWVsaWZubnVtIHNpemVvZiU4CiAgICAgICAgICAg
ICAgICAgICAgIDsgMy1vcGVyYW5kIEFWWCBpbnN0cnVjdGlvbnMgd2l0aCBhIG1lbW9yeSBhcmcg
Y2FuIG9ubHkgaGF2ZSBpdCBpbiBzcmMyLAogICAgICAgICAgICAgICAgICAgICA7IHdoZXJlYXMg
U1NFIGVtdWxhdGlvbiBwcmVmZXJzIHRvIGhhdmUgaXQgaW4gc3JjMSAoaS5lLiB0aGUgbW92KS4K
ICAgICAgICAgICAgICAgICAgICAgOyBTbywgaWYgdGhlIGluc3RydWN0aW9uIGlzIGNvbW11dGF0
aXZlIHdpdGggYSBtZW1vcnkgYXJnLCBzd2FwIHRoZW0uCkBAIC0xMjYyLDYgKzEzODksMTMgQEAg
SU5JVF9YTU0KICAgICAgICAgICAgICAgICAgICAgJXhkZWZpbmUgX19zcmMyICU3CiAgICAgICAg
ICAgICAgICAgJWVuZGlmCiAgICAgICAgICAgICAlZW5kaWYKKyAgICAgICAgJWVuZGlmCisgICAg
ICAgICVpZm5pZG4gJTYsIF9fc3JjMQorICAgICAgICAgICAgJWlmICUwID49IDkKKyAgICAgICAg
ICAgICAgICBDSEVDS19BVlhfSU5TVFJfRU1VIHslMSAlNiwgJTcsICU4LCAlOX0sICU2LCBfX3Ny
YzIsICU5CisgICAgICAgICAgICAlZWxzZQorICAgICAgICAgICAgICAgIENIRUNLX0FWWF9JTlNU
Ul9FTVUgeyUxICU2LCAlNywgJTh9LCAlNiwgX19zcmMyCisgICAgICAgICAgICAlZW5kaWYKICAg
ICAgICAgICAgICVpZiBfX3NpemVvZnJlZyA9PSA4CiAgICAgICAgICAgICAgICAgTU9WUSAlNiwg
X19zcmMxCiAgICAgICAgICAgICAlZWxpZiAlMwpAQCAtMTI3OCw5ICsxNDEyLDQwIEBAIElOSVRf
WE1NCiAgICAgJWVsaWYgJTAgPj0gOQogICAgICAgICBfX2luc3RyICU2LCAlNywgJTgsICU5CiAg
ICAgJWVsaWYgJTAgPT0gOAotICAgICAgICBfX2luc3RyICU2LCAlNywgJTgKKyAgICAgICAgJWlm
IGF2eF9lbmFibGVkICYmICU1CisgICAgICAgICAgICAleGRlZmluZSBfX3NyYzEgJTcKKyAgICAg
ICAgICAgICV4ZGVmaW5lIF9fc3JjMiAlOAorICAgICAgICAgICAgJWlmbnVtIHJlZ251bW9mJTcK
KyAgICAgICAgICAgICAgICAlaWZudW0gcmVnbnVtb2YlOAorICAgICAgICAgICAgICAgICAgICAl
aWYgcmVnbnVtb2YlNyA8IDggJiYgcmVnbnVtb2YlOCA+PSA4ICYmIHJlZ251bW9mJTggPCAxNiAm
JiBzaXplb2YlOCA8PSAzMgorICAgICAgICAgICAgICAgICAgICAgICAgOyBNb3N0IFZFWC1lbmNv
ZGVkIGluc3RydWN0aW9ucyByZXF1aXJlIGFuIGFkZGl0aW9uYWwgYnl0ZSB0byBlbmNvZGUgd2hl
bgorICAgICAgICAgICAgICAgICAgICAgICAgOyBzcmMyIGlzIGEgaGlnaCByZWdpc3RlciAoZS5n
LiBtOC4uMTUpLiBJZiB0aGUgaW5zdHJ1Y3Rpb24gaXMgY29tbXV0YXRpdmUKKyAgICAgICAgICAg
ICAgICAgICAgICAgIDsgd2UgY2FuIHN3YXAgc3JjMSBhbmQgc3JjMiB3aGVuIGRvaW5nIHNvIHJl
ZHVjZXMgdGhlIGluc3RydWN0aW9uIGxlbmd0aC4KKyAgICAgICAgICAgICAgICAgICAgICAgICV4
ZGVmaW5lIF9fc3JjMSAlOAorICAgICAgICAgICAgICAgICAgICAgICAgJXhkZWZpbmUgX19zcmMy
ICU3CisgICAgICAgICAgICAgICAgICAgICVlbmRpZgorICAgICAgICAgICAgICAgICVlbmRpZgor
ICAgICAgICAgICAgJWVuZGlmCisgICAgICAgICAgICBfX2luc3RyICU2LCBfX3NyYzEsIF9fc3Jj
MgorICAgICAgICAlZWxzZQorICAgICAgICAgICAgX19pbnN0ciAlNiwgJTcsICU4CisgICAgICAg
ICVlbmRpZgogICAgICVlbGlmICUwID09IDcKLSAgICAgICAgX19pbnN0ciAlNiwgJTcKKyAgICAg
ICAgJWlmIGF2eF9lbmFibGVkICYmICU1CisgICAgICAgICAgICAleGRlZmluZSBfX3NyYzEgJTYK
KyAgICAgICAgICAgICV4ZGVmaW5lIF9fc3JjMiAlNworICAgICAgICAgICAgJWlmbnVtIHJlZ251
bW9mJTYKKyAgICAgICAgICAgICAgICAlaWZudW0gcmVnbnVtb2YlNworICAgICAgICAgICAgICAg
ICAgICAlaWYgcmVnbnVtb2YlNiA8IDggJiYgcmVnbnVtb2YlNyA+PSA4ICYmIHJlZ251bW9mJTcg
PCAxNiAmJiBzaXplb2YlNyA8PSAzMgorICAgICAgICAgICAgICAgICAgICAgICAgJXhkZWZpbmUg
X19zcmMxICU3CisgICAgICAgICAgICAgICAgICAgICAgICAleGRlZmluZSBfX3NyYzIgJTYKKyAg
ICAgICAgICAgICAgICAgICAgJWVuZGlmCisgICAgICAgICAgICAgICAgJWVuZGlmCisgICAgICAg
ICAgICAlZW5kaWYKKyAgICAgICAgICAgIF9faW5zdHIgJTYsIF9fc3JjMSwgX19zcmMyCisgICAg
ICAgICVlbHNlCisgICAgICAgICAgICBfX2luc3RyICU2LCAlNworICAgICAgICAlZW5kaWYKICAg
ICAlZWxzZQogICAgICAgICBfX2luc3RyICU2CiAgICAgJWVuZGlmCkBAIC0xMjg5LDkgKzE0NTQs
OSBAQCBJTklUX1hNTQogOyUxID09IGluc3RydWN0aW9uCiA7JTIgPT0gbWluaW1hbCBpbnN0cnVj
dGlvbiBzZXQKIDslMyA9PSAxIGlmIGZsb2F0LCAwIGlmIGludAotOyU0ID09IDEgaWYgbm9uLWRl
c3RydWN0aXZlIG9yIDQtb3BlcmFuZCAoeG1tLCB4bW0sIHhtbSwgaW1tKSwgMCBvdGhlcndpc2UK
KzslNCA9PSAxIGlmIDQtb3BlcmFuZCBlbXVsYXRpb24sIDAgaWYgMy1vcGVyYW5kIGVtdWxhdGlv
biwgMjU1IG90aGVyd2lzZSAobm8gZW11bGF0aW9uKQogOyU1ID09IDEgaWYgY29tbXV0YXRpdmUg
KGkuZS4gZG9lc24ndCBtYXR0ZXIgd2hpY2ggc3JjIGFyZyBpcyB3aGljaCksIDAgaWYgbm90Ci0l
bWFjcm8gQVZYX0lOU1RSIDEtNSBmbm9yZCwgMCwgMSwgMAorJW1hY3JvIEFWWF9JTlNUUiAxLTUg
Zm5vcmQsIDAsIDI1NSwgMAogICAgICVtYWNybyAlMSAxLTEwIGZub3JkLCBmbm9yZCwgZm5vcmQs
IGZub3JkLCAlMSwgJTIsICUzLCAlNCwgJTUKICAgICAgICAgJWlmaWRuICUyLCBmbm9yZAogICAg
ICAgICAgICAgUlVOX0FWWF9JTlNUUiAlNiwgJTcsICU4LCAlOSwgJTEwLCAlMQpAQCAtMTMwNyw3
NyArMTQ3MiwxMTIgQEAgSU5JVF9YTU0KICAgICAlZW5kbWFjcm8KICVlbmRtYWNybwogCi07IElu
c3RydWN0aW9ucyB3aXRoIGJvdGggVkVYIGFuZCBub24tVkVYIGVuY29kaW5ncworOyBJbnN0cnVj
dGlvbnMgd2l0aCBib3RoIFZFWC9FVkVYIGFuZCBsZWdhY3kgZW5jb2RpbmdzCiA7IE5vbi1kZXN0
cnVjdGl2ZSBpbnN0cnVjdGlvbnMgYXJlIHdyaXR0ZW4gd2l0aG91dCBwYXJhbWV0ZXJzCiBBVlhf
SU5TVFIgYWRkcGQsIHNzZTIsIDEsIDAsIDEKIEFWWF9JTlNUUiBhZGRwcywgc3NlLCAxLCAwLCAx
Ci1BVlhfSU5TVFIgYWRkc2QsIHNzZTIsIDEsIDAsIDEKLUFWWF9JTlNUUiBhZGRzcywgc3NlLCAx
LCAwLCAxCitBVlhfSU5TVFIgYWRkc2QsIHNzZTIsIDEsIDAsIDAKK0FWWF9JTlNUUiBhZGRzcywg
c3NlLCAxLCAwLCAwCiBBVlhfSU5TVFIgYWRkc3VicGQsIHNzZTMsIDEsIDAsIDAKIEFWWF9JTlNU
UiBhZGRzdWJwcywgc3NlMywgMSwgMCwgMAotQVZYX0lOU1RSIGFlc2RlYywgZm5vcmQsIDAsIDAs
IDAKLUFWWF9JTlNUUiBhZXNkZWNsYXN0LCBmbm9yZCwgMCwgMCwgMAotQVZYX0lOU1RSIGFlc2Vu
YywgZm5vcmQsIDAsIDAsIDAKLUFWWF9JTlNUUiBhZXNlbmNsYXN0LCBmbm9yZCwgMCwgMCwgMAot
QVZYX0lOU1RSIGFlc2ltYwotQVZYX0lOU1RSIGFlc2tleWdlbmFzc2lzdAorQVZYX0lOU1RSIGFl
c2RlYywgYWVzbmksIDAsIDAsIDAKK0FWWF9JTlNUUiBhZXNkZWNsYXN0LCBhZXNuaSwgMCwgMCwg
MAorQVZYX0lOU1RSIGFlc2VuYywgYWVzbmksIDAsIDAsIDAKK0FWWF9JTlNUUiBhZXNlbmNsYXN0
LCBhZXNuaSwgMCwgMCwgMAorQVZYX0lOU1RSIGFlc2ltYywgYWVzbmkKK0FWWF9JTlNUUiBhZXNr
ZXlnZW5hc3Npc3QsIGFlc25pCiBBVlhfSU5TVFIgYW5kbnBkLCBzc2UyLCAxLCAwLCAwCiBBVlhf
SU5TVFIgYW5kbnBzLCBzc2UsIDEsIDAsIDAKIEFWWF9JTlNUUiBhbmRwZCwgc3NlMiwgMSwgMCwg
MQogQVZYX0lOU1RSIGFuZHBzLCBzc2UsIDEsIDAsIDEKLUFWWF9JTlNUUiBibGVuZHBkLCBzc2U0
LCAxLCAwLCAwCi1BVlhfSU5TVFIgYmxlbmRwcywgc3NlNCwgMSwgMCwgMAotQVZYX0lOU1RSIGJs
ZW5kdnBkLCBzc2U0LCAxLCAwLCAwCi1BVlhfSU5TVFIgYmxlbmR2cHMsIHNzZTQsIDEsIDAsIDAK
K0FWWF9JTlNUUiBibGVuZHBkLCBzc2U0LCAxLCAxLCAwCitBVlhfSU5TVFIgYmxlbmRwcywgc3Nl
NCwgMSwgMSwgMAorQVZYX0lOU1RSIGJsZW5kdnBkLCBzc2U0IDsgY2FuJ3QgYmUgZW11bGF0ZWQK
K0FWWF9JTlNUUiBibGVuZHZwcywgc3NlNCA7IGNhbid0IGJlIGVtdWxhdGVkCitBVlhfSU5TVFIg
Y21wZXFwZCwgc3NlMiwgMSwgMCwgMQorQVZYX0lOU1RSIGNtcGVxcHMsIHNzZSwgMSwgMCwgMQor
QVZYX0lOU1RSIGNtcGVxc2QsIHNzZTIsIDEsIDAsIDAKK0FWWF9JTlNUUiBjbXBlcXNzLCBzc2Us
IDEsIDAsIDAKK0FWWF9JTlNUUiBjbXBsZXBkLCBzc2UyLCAxLCAwLCAwCitBVlhfSU5TVFIgY21w
bGVwcywgc3NlLCAxLCAwLCAwCitBVlhfSU5TVFIgY21wbGVzZCwgc3NlMiwgMSwgMCwgMAorQVZY
X0lOU1RSIGNtcGxlc3MsIHNzZSwgMSwgMCwgMAorQVZYX0lOU1RSIGNtcGx0cGQsIHNzZTIsIDEs
IDAsIDAKK0FWWF9JTlNUUiBjbXBsdHBzLCBzc2UsIDEsIDAsIDAKK0FWWF9JTlNUUiBjbXBsdHNk
LCBzc2UyLCAxLCAwLCAwCitBVlhfSU5TVFIgY21wbHRzcywgc3NlLCAxLCAwLCAwCitBVlhfSU5T
VFIgY21wbmVxcGQsIHNzZTIsIDEsIDAsIDEKK0FWWF9JTlNUUiBjbXBuZXFwcywgc3NlLCAxLCAw
LCAxCitBVlhfSU5TVFIgY21wbmVxc2QsIHNzZTIsIDEsIDAsIDAKK0FWWF9JTlNUUiBjbXBuZXFz
cywgc3NlLCAxLCAwLCAwCitBVlhfSU5TVFIgY21wbmxlcGQsIHNzZTIsIDEsIDAsIDAKK0FWWF9J
TlNUUiBjbXBubGVwcywgc3NlLCAxLCAwLCAwCitBVlhfSU5TVFIgY21wbmxlc2QsIHNzZTIsIDEs
IDAsIDAKK0FWWF9JTlNUUiBjbXBubGVzcywgc3NlLCAxLCAwLCAwCitBVlhfSU5TVFIgY21wbmx0
cGQsIHNzZTIsIDEsIDAsIDAKK0FWWF9JTlNUUiBjbXBubHRwcywgc3NlLCAxLCAwLCAwCitBVlhf
SU5TVFIgY21wbmx0c2QsIHNzZTIsIDEsIDAsIDAKK0FWWF9JTlNUUiBjbXBubHRzcywgc3NlLCAx
LCAwLCAwCitBVlhfSU5TVFIgY21wb3JkcGQsIHNzZTIgMSwgMCwgMQorQVZYX0lOU1RSIGNtcG9y
ZHBzLCBzc2UgMSwgMCwgMQorQVZYX0lOU1RSIGNtcG9yZHNkLCBzc2UyIDEsIDAsIDAKK0FWWF9J
TlNUUiBjbXBvcmRzcywgc3NlIDEsIDAsIDAKIEFWWF9JTlNUUiBjbXBwZCwgc3NlMiwgMSwgMSwg
MAogQVZYX0lOU1RSIGNtcHBzLCBzc2UsIDEsIDEsIDAKIEFWWF9JTlNUUiBjbXBzZCwgc3NlMiwg
MSwgMSwgMAogQVZYX0lOU1RSIGNtcHNzLCBzc2UsIDEsIDEsIDAKLUFWWF9JTlNUUiBjb21pc2Qs
IHNzZTIKLUFWWF9JTlNUUiBjb21pc3MsIHNzZQotQVZYX0lOU1RSIGN2dGRxMnBkLCBzc2UyCi1B
VlhfSU5TVFIgY3Z0ZHEycHMsIHNzZTIKLUFWWF9JTlNUUiBjdnRwZDJkcSwgc3NlMgotQVZYX0lO
U1RSIGN2dHBkMnBzLCBzc2UyCi1BVlhfSU5TVFIgY3Z0cHMyZHEsIHNzZTIKLUFWWF9JTlNUUiBj
dnRwczJwZCwgc3NlMgotQVZYX0lOU1RSIGN2dHNkMnNpLCBzc2UyCi1BVlhfSU5TVFIgY3Z0c2Qy
c3MsIHNzZTIKLUFWWF9JTlNUUiBjdnRzaTJzZCwgc3NlMgotQVZYX0lOU1RSIGN2dHNpMnNzLCBz
c2UKLUFWWF9JTlNUUiBjdnRzczJzZCwgc3NlMgotQVZYX0lOU1RSIGN2dHNzMnNpLCBzc2UKLUFW
WF9JTlNUUiBjdnR0cGQyZHEsIHNzZTIKLUFWWF9JTlNUUiBjdnR0cHMyZHEsIHNzZTIKLUFWWF9J
TlNUUiBjdnR0c2Qyc2ksIHNzZTIKLUFWWF9JTlNUUiBjdnR0c3Myc2ksIHNzZQorQVZYX0lOU1RS
IGNtcHVub3JkcGQsIHNzZTIsIDEsIDAsIDEKK0FWWF9JTlNUUiBjbXB1bm9yZHBzLCBzc2UsIDEs
IDAsIDEKK0FWWF9JTlNUUiBjbXB1bm9yZHNkLCBzc2UyLCAxLCAwLCAwCitBVlhfSU5TVFIgY21w
dW5vcmRzcywgc3NlLCAxLCAwLCAwCitBVlhfSU5TVFIgY29taXNkLCBzc2UyLCAxCitBVlhfSU5T
VFIgY29taXNzLCBzc2UsIDEKK0FWWF9JTlNUUiBjdnRkcTJwZCwgc3NlMiwgMQorQVZYX0lOU1RS
IGN2dGRxMnBzLCBzc2UyLCAxCitBVlhfSU5TVFIgY3Z0cGQyZHEsIHNzZTIsIDEKK0FWWF9JTlNU
UiBjdnRwZDJwcywgc3NlMiwgMQorQVZYX0lOU1RSIGN2dHBzMmRxLCBzc2UyLCAxCitBVlhfSU5T
VFIgY3Z0cHMycGQsIHNzZTIsIDEKK0FWWF9JTlNUUiBjdnRzZDJzaSwgc3NlMiwgMQorQVZYX0lO
U1RSIGN2dHNkMnNzLCBzc2UyLCAxLCAwLCAwCitBVlhfSU5TVFIgY3Z0c2kyc2QsIHNzZTIsIDEs
IDAsIDAKK0FWWF9JTlNUUiBjdnRzaTJzcywgc3NlLCAxLCAwLCAwCitBVlhfSU5TVFIgY3Z0c3My
c2QsIHNzZTIsIDEsIDAsIDAKK0FWWF9JTlNUUiBjdnRzczJzaSwgc3NlLCAxCitBVlhfSU5TVFIg
Y3Z0dHBkMmRxLCBzc2UyLCAxCitBVlhfSU5TVFIgY3Z0dHBzMmRxLCBzc2UyLCAxCitBVlhfSU5T
VFIgY3Z0dHNkMnNpLCBzc2UyLCAxCitBVlhfSU5TVFIgY3Z0dHNzMnNpLCBzc2UsIDEKIEFWWF9J
TlNUUiBkaXZwZCwgc3NlMiwgMSwgMCwgMAogQVZYX0lOU1RSIGRpdnBzLCBzc2UsIDEsIDAsIDAK
IEFWWF9JTlNUUiBkaXZzZCwgc3NlMiwgMSwgMCwgMAogQVZYX0lOU1RSIGRpdnNzLCBzc2UsIDEs
IDAsIDAKIEFWWF9JTlNUUiBkcHBkLCBzc2U0LCAxLCAxLCAwCiBBVlhfSU5TVFIgZHBwcywgc3Nl
NCwgMSwgMSwgMAotQVZYX0lOU1RSIGV4dHJhY3Rwcywgc3NlNAorQVZYX0lOU1RSIGV4dHJhY3Rw
cywgc3NlNCwgMQorQVZYX0lOU1RSIGdmMnA4YWZmaW5laW52cWIsIGdmbmksIDAsIDEsIDAKK0FW
WF9JTlNUUiBnZjJwOGFmZmluZXFiLCBnZm5pLCAwLCAxLCAwCitBVlhfSU5TVFIgZ2YycDhtdWxi
LCBnZm5pLCAwLCAwLCAwCiBBVlhfSU5TVFIgaGFkZHBkLCBzc2UzLCAxLCAwLCAwCiBBVlhfSU5T
VFIgaGFkZHBzLCBzc2UzLCAxLCAwLCAwCiBBVlhfSU5TVFIgaHN1YnBkLCBzc2UzLCAxLCAwLCAw
CiBBVlhfSU5TVFIgaHN1YnBzLCBzc2UzLCAxLCAwLCAwCiBBVlhfSU5TVFIgaW5zZXJ0cHMsIHNz
ZTQsIDEsIDEsIDAKIEFWWF9JTlNUUiBsZGRxdSwgc3NlMwotQVZYX0lOU1RSIGxkbXhjc3IsIHNz
ZQorQVZYX0lOU1RSIGxkbXhjc3IsIHNzZSwgMQogQVZYX0lOU1RSIG1hc2ttb3ZkcXUsIHNzZTIK
IEFWWF9JTlNUUiBtYXhwZCwgc3NlMiwgMSwgMCwgMQogQVZYX0lOU1RSIG1heHBzLCBzc2UsIDEs
IDAsIDEKLUFWWF9JTlNUUiBtYXhzZCwgc3NlMiwgMSwgMCwgMQotQVZYX0lOU1RSIG1heHNzLCBz
c2UsIDEsIDAsIDEKK0FWWF9JTlNUUiBtYXhzZCwgc3NlMiwgMSwgMCwgMAorQVZYX0lOU1RSIG1h
eHNzLCBzc2UsIDEsIDAsIDAKIEFWWF9JTlNUUiBtaW5wZCwgc3NlMiwgMSwgMCwgMQogQVZYX0lO
U1RSIG1pbnBzLCBzc2UsIDEsIDAsIDEKLUFWWF9JTlNUUiBtaW5zZCwgc3NlMiwgMSwgMCwgMQot
QVZYX0lOU1RSIG1pbnNzLCBzc2UsIDEsIDAsIDEKLUFWWF9JTlNUUiBtb3ZhcGQsIHNzZTIKLUFW
WF9JTlNUUiBtb3ZhcHMsIHNzZQorQVZYX0lOU1RSIG1pbnNkLCBzc2UyLCAxLCAwLCAwCitBVlhf
SU5TVFIgbWluc3MsIHNzZSwgMSwgMCwgMAorQVZYX0lOU1RSIG1vdmFwZCwgc3NlMiwgMQorQVZY
X0lOU1RSIG1vdmFwcywgc3NlLCAxCiBBVlhfSU5TVFIgbW92ZCwgbW14Ci1BVlhfSU5TVFIgbW92
ZGR1cCwgc3NlMworQVZYX0lOU1RSIG1vdmRkdXAsIHNzZTMsIDEKIEFWWF9JTlNUUiBtb3ZkcWEs
IHNzZTIKIEFWWF9JTlNUUiBtb3ZkcXUsIHNzZTIKIEFWWF9JTlNUUiBtb3ZobHBzLCBzc2UsIDEs
IDAsIDAKQEAgLTEzODYsMjQgKzE1ODYsMjQgQEAgQVZYX0lOU1RSIG1vdmhwcywgc3NlLCAxLCAw
LCAwCiBBVlhfSU5TVFIgbW92bGhwcywgc3NlLCAxLCAwLCAwCiBBVlhfSU5TVFIgbW92bHBkLCBz
c2UyLCAxLCAwLCAwCiBBVlhfSU5TVFIgbW92bHBzLCBzc2UsIDEsIDAsIDAKLUFWWF9JTlNUUiBt
b3Ztc2twZCwgc3NlMgotQVZYX0lOU1RSIG1vdm1za3BzLCBzc2UKK0FWWF9JTlNUUiBtb3Ztc2tw
ZCwgc3NlMiwgMQorQVZYX0lOU1RSIG1vdm1za3BzLCBzc2UsIDEKIEFWWF9JTlNUUiBtb3ZudGRx
LCBzc2UyCiBBVlhfSU5TVFIgbW92bnRkcWEsIHNzZTQKLUFWWF9JTlNUUiBtb3ZudHBkLCBzc2Uy
Ci1BVlhfSU5TVFIgbW92bnRwcywgc3NlCitBVlhfSU5TVFIgbW92bnRwZCwgc3NlMiwgMQorQVZY
X0lOU1RSIG1vdm50cHMsIHNzZSwgMQogQVZYX0lOU1RSIG1vdnEsIG1teAogQVZYX0lOU1RSIG1v
dnNkLCBzc2UyLCAxLCAwLCAwCi1BVlhfSU5TVFIgbW92c2hkdXAsIHNzZTMKLUFWWF9JTlNUUiBt
b3ZzbGR1cCwgc3NlMworQVZYX0lOU1RSIG1vdnNoZHVwLCBzc2UzLCAxCitBVlhfSU5TVFIgbW92
c2xkdXAsIHNzZTMsIDEKIEFWWF9JTlNUUiBtb3Zzcywgc3NlLCAxLCAwLCAwCi1BVlhfSU5TVFIg
bW92dXBkLCBzc2UyCi1BVlhfSU5TVFIgbW92dXBzLCBzc2UKLUFWWF9JTlNUUiBtcHNhZGJ3LCBz
c2U0CitBVlhfSU5TVFIgbW92dXBkLCBzc2UyLCAxCitBVlhfSU5TVFIgbW92dXBzLCBzc2UsIDEK
K0FWWF9JTlNUUiBtcHNhZGJ3LCBzc2U0LCAwLCAxLCAwCiBBVlhfSU5TVFIgbXVscGQsIHNzZTIs
IDEsIDAsIDEKIEFWWF9JTlNUUiBtdWxwcywgc3NlLCAxLCAwLCAxCi1BVlhfSU5TVFIgbXVsc2Qs
IHNzZTIsIDEsIDAsIDEKLUFWWF9JTlNUUiBtdWxzcywgc3NlLCAxLCAwLCAxCitBVlhfSU5TVFIg
bXVsc2QsIHNzZTIsIDEsIDAsIDAKK0FWWF9JTlNUUiBtdWxzcywgc3NlLCAxLCAwLCAwCiBBVlhf
SU5TVFIgb3JwZCwgc3NlMiwgMSwgMCwgMQogQVZYX0lOU1RSIG9ycHMsIHNzZSwgMSwgMCwgMQog
QVZYX0lOU1RSIHBhYnNiLCBzc3NlMwpAQCAtMTQyMSwxNCArMTYyMSwxOCBAQCBBVlhfSU5TVFIg
cGFkZHNiLCBtbXgsIDAsIDAsIDEKIEFWWF9JTlNUUiBwYWRkc3csIG1teCwgMCwgMCwgMQogQVZY
X0lOU1RSIHBhZGR1c2IsIG1teCwgMCwgMCwgMQogQVZYX0lOU1RSIHBhZGR1c3csIG1teCwgMCwg
MCwgMQotQVZYX0lOU1RSIHBhbGlnbnIsIHNzc2UzCitBVlhfSU5TVFIgcGFsaWduciwgc3NzZTMs
IDAsIDEsIDAKIEFWWF9JTlNUUiBwYW5kLCBtbXgsIDAsIDAsIDEKIEFWWF9JTlNUUiBwYW5kbiwg
bW14LCAwLCAwLCAwCiBBVlhfSU5TVFIgcGF2Z2IsIG1teDIsIDAsIDAsIDEKIEFWWF9JTlNUUiBw
YXZndywgbW14MiwgMCwgMCwgMQotQVZYX0lOU1RSIHBibGVuZHZiLCBzc2U0LCAwLCAwLCAwCi1B
VlhfSU5TVFIgcGJsZW5kdywgc3NlNAotQVZYX0lOU1RSIHBjbG11bHFkcQorQVZYX0lOU1RSIHBi
bGVuZHZiLCBzc2U0IDsgY2FuJ3QgYmUgZW11bGF0ZWQKK0FWWF9JTlNUUiBwYmxlbmR3LCBzc2U0
LCAwLCAxLCAwCitBVlhfSU5TVFIgcGNsbXVscWRxLCBmbm9yZCwgMCwgMSwgMAorQVZYX0lOU1RS
IHBjbG11bGhxaHFkcSwgZm5vcmQsIDAsIDAsIDAKK0FWWF9JTlNUUiBwY2xtdWxocWxxZHEsIGZu
b3JkLCAwLCAwLCAwCitBVlhfSU5TVFIgcGNsbXVsbHFocWRxLCBmbm9yZCwgMCwgMCwgMAorQVZY
X0lOU1RSIHBjbG11bGxxbHFkcSwgZm5vcmQsIDAsIDAsIDAKIEFWWF9JTlNUUiBwY21wZXN0cmks
IHNzZTQyCiBBVlhfSU5TVFIgcGNtcGVzdHJtLCBzc2U0MgogQVZYX0lOU1RSIHBjbXBpc3RyaSwg
c3NlNDIKQEAgLTE0NTIsMTAgKzE2NTYsMTAgQEAgQVZYX0lOU1RSIHBobWlucG9zdXcsIHNzZTQK
IEFWWF9JTlNUUiBwaHN1YncsIHNzc2UzLCAwLCAwLCAwCiBBVlhfSU5TVFIgcGhzdWJkLCBzc3Nl
MywgMCwgMCwgMAogQVZYX0lOU1RSIHBoc3Vic3csIHNzc2UzLCAwLCAwLCAwCi1BVlhfSU5TVFIg
cGluc3JiLCBzc2U0Ci1BVlhfSU5TVFIgcGluc3JkLCBzc2U0Ci1BVlhfSU5TVFIgcGluc3JxLCBz
c2U0Ci1BVlhfSU5TVFIgcGluc3J3LCBtbXgyCitBVlhfSU5TVFIgcGluc3JiLCBzc2U0LCAwLCAx
LCAwCitBVlhfSU5TVFIgcGluc3JkLCBzc2U0LCAwLCAxLCAwCitBVlhfSU5TVFIgcGluc3JxLCBz
c2U0LCAwLCAxLCAwCitBVlhfSU5TVFIgcGluc3J3LCBtbXgyLCAwLCAxLCAwCiBBVlhfSU5TVFIg
cG1hZGR3ZCwgbW14LCAwLCAwLCAxCiBBVlhfSU5TVFIgcG1hZGR1YnN3LCBzc3NlMywgMCwgMCwg
MAogQVZYX0lOU1RSIHBtYXhzYiwgc3NlNCwgMCwgMCwgMQpAQCAtMTUyNywyNyArMTczMSwyNyBA
QCBBVlhfSU5TVFIgcHVucGNrbHdkLCBtbXgsIDAsIDAsIDAKIEFWWF9JTlNUUiBwdW5wY2tsZHEs
IG1teCwgMCwgMCwgMAogQVZYX0lOU1RSIHB1bnBja2xxZHEsIHNzZTIsIDAsIDAsIDAKIEFWWF9J
TlNUUiBweG9yLCBtbXgsIDAsIDAsIDEKLUFWWF9JTlNUUiByY3Bwcywgc3NlLCAxLCAwLCAwCitB
VlhfSU5TVFIgcmNwcHMsIHNzZSwgMQogQVZYX0lOU1RSIHJjcHNzLCBzc2UsIDEsIDAsIDAKLUFW
WF9JTlNUUiByb3VuZHBkLCBzc2U0Ci1BVlhfSU5TVFIgcm91bmRwcywgc3NlNAotQVZYX0lOU1RS
IHJvdW5kc2QsIHNzZTQKLUFWWF9JTlNUUiByb3VuZHNzLCBzc2U0Ci1BVlhfSU5TVFIgcnNxcnRw
cywgc3NlLCAxLCAwLCAwCitBVlhfSU5TVFIgcm91bmRwZCwgc3NlNCwgMQorQVZYX0lOU1RSIHJv
dW5kcHMsIHNzZTQsIDEKK0FWWF9JTlNUUiByb3VuZHNkLCBzc2U0LCAxLCAxLCAwCitBVlhfSU5T
VFIgcm91bmRzcywgc3NlNCwgMSwgMSwgMAorQVZYX0lOU1RSIHJzcXJ0cHMsIHNzZSwgMQogQVZY
X0lOU1RSIHJzcXJ0c3MsIHNzZSwgMSwgMCwgMAogQVZYX0lOU1RSIHNodWZwZCwgc3NlMiwgMSwg
MSwgMAogQVZYX0lOU1RSIHNodWZwcywgc3NlLCAxLCAxLCAwCi1BVlhfSU5TVFIgc3FydHBkLCBz
c2UyLCAxLCAwLCAwCi1BVlhfSU5TVFIgc3FydHBzLCBzc2UsIDEsIDAsIDAKK0FWWF9JTlNUUiBz
cXJ0cGQsIHNzZTIsIDEKK0FWWF9JTlNUUiBzcXJ0cHMsIHNzZSwgMQogQVZYX0lOU1RSIHNxcnRz
ZCwgc3NlMiwgMSwgMCwgMAogQVZYX0lOU1RSIHNxcnRzcywgc3NlLCAxLCAwLCAwCi1BVlhfSU5T
VFIgc3RteGNzciwgc3NlCitBVlhfSU5TVFIgc3RteGNzciwgc3NlLCAxCiBBVlhfSU5TVFIgc3Vi
cGQsIHNzZTIsIDEsIDAsIDAKIEFWWF9JTlNUUiBzdWJwcywgc3NlLCAxLCAwLCAwCiBBVlhfSU5T
VFIgc3Vic2QsIHNzZTIsIDEsIDAsIDAKIEFWWF9JTlNUUiBzdWJzcywgc3NlLCAxLCAwLCAwCi1B
VlhfSU5TVFIgdWNvbWlzZCwgc3NlMgotQVZYX0lOU1RSIHVjb21pc3MsIHNzZQorQVZYX0lOU1RS
IHVjb21pc2QsIHNzZTIsIDEKK0FWWF9JTlNUUiB1Y29taXNzLCBzc2UsIDEKIEFWWF9JTlNUUiB1
bnBja2hwZCwgc3NlMiwgMSwgMCwgMAogQVZYX0lOU1RSIHVucGNraHBzLCBzc2UsIDEsIDAsIDAK
IEFWWF9JTlNUUiB1bnBja2xwZCwgc3NlMiwgMSwgMCwgMApAQCAtMTU2MCw2ICsxNzY0LDM4IEBA
IEFWWF9JTlNUUiBwZmFkZCwgM2Rub3csIDEsIDAsIDEKIEFWWF9JTlNUUiBwZnN1YiwgM2Rub3cs
IDEsIDAsIDAKIEFWWF9JTlNUUiBwZm11bCwgM2Rub3csIDEsIDAsIDEKIAorOyUxID09IGluc3Ry
dWN0aW9uCis7JTIgPT0gbWluaW1hbCBpbnN0cnVjdGlvbiBzZXQKKyVtYWNybyBHUFJfSU5TVFIg
MgorICAgICVtYWNybyAlMSAyLTUgZm5vcmQsICUxLCAlMgorICAgICAgICAlaWZkZWYgY3B1bmFt
ZQorICAgICAgICAgICAgJWlmIG5vdGNwdWZsYWcoJTUpCisgICAgICAgICAgICAgICAgJWVycm9y
IHVzZSBvZiBgYCU0JycgJTUgaW5zdHJ1Y3Rpb24gaW4gY3B1bmFtZSBmdW5jdGlvbjogY3VycmVu
dF9mdW5jdGlvbgorICAgICAgICAgICAgJWVuZGlmCisgICAgICAgICVlbmRpZgorICAgICAgICAl
aWZpZG4gJTMsIGZub3JkCisgICAgICAgICAgICAlNCAlMSwgJTIKKyAgICAgICAgJWVsc2UKKyAg
ICAgICAgICAgICU0ICUxLCAlMiwgJTMKKyAgICAgICAgJWVuZGlmCisgICAgJWVuZG1hY3JvCisl
ZW5kbWFjcm8KKworR1BSX0lOU1RSIGFuZG4sIGJtaTEKK0dQUl9JTlNUUiBiZXh0ciwgYm1pMQor
R1BSX0lOU1RSIGJsc2ksIGJtaTEKK0dQUl9JTlNUUiBibHNyLCBibWkxCitHUFJfSU5TVFIgYmxz
bXNrLCBibWkxCitHUFJfSU5TVFIgYnpoaSwgYm1pMgorR1BSX0lOU1RSIG11bHgsIGJtaTIKK0dQ
Ul9JTlNUUiBwZGVwLCBibWkyCitHUFJfSU5TVFIgcGV4dCwgYm1pMgorR1BSX0lOU1RSIHBvcGNu
dCwgc3NlNDIKK0dQUl9JTlNUUiByb3J4LCBibWkyCitHUFJfSU5TVFIgc2FyeCwgYm1pMgorR1BS
X0lOU1RSIHNobHgsIGJtaTIKK0dQUl9JTlNUUiBzaHJ4LCBibWkyCisKIDsgYmFzZS00IGNvbnN0
YW50cyBmb3Igc2h1ZmZsZXMKICVhc3NpZ24gaSAwCiAlcmVwIDI1NgpAQCAtMTYxMCw3ICsxODQ2
LDcgQEAgRk1BX0lOU1RSIHBtYWRjc3dkLCBwbWFkZHdkLCBwYWRkZAogICAgICAgICAgICAgICAg
IHYlNSU2ICUxLCAlMiwgJTMsICU0CiAgICAgICAgICAgICAlZWxpZmlkbiAlMSwgJTIKICAgICAg
ICAgICAgICAgICA7IElmICUzIG9yICU0IGlzIGEgbWVtb3J5IG9wZXJhbmQgaXQgbmVlZHMgdG8g
YmUgZW5jb2RlZCBhcyB0aGUgbGFzdCBvcGVyYW5kLgotICAgICAgICAgICAgICAgICVpZmlkICUz
CisgICAgICAgICAgICAgICAgJWlmbnVtIHNpemVvZiUzCiAgICAgICAgICAgICAgICAgICAgIHYl
ezV9MjEzJTYgJTIsICUzLCAlNAogICAgICAgICAgICAgICAgICVlbHNlCiAgICAgICAgICAgICAg
ICAgICAgIHYlezV9MTMyJTYgJTIsICU0LCAlMwpAQCAtMTYzNSwxNSArMTg3MSw1MyBAQCBGTUE0
X0lOU1RSIGZtc3ViYWRkLCBwZCwgcHMKIEZNQTRfSU5TVFIgZm5tYWRkLCAgIHBkLCBwcywgc2Qs
IHNzCiBGTUE0X0lOU1RSIGZubXN1YiwgICBwZCwgcHMsIHNkLCBzcwogCi07IHdvcmthcm91bmQ6
IHZwYnJvYWRjYXN0cSBpcyBicm9rZW4gaW4geDg2XzMyIGR1ZSB0byBhIHlhc20gYnVnIChmaXhl
ZCBpbiAxLjMuMCkKLSVpZmRlZiBfX1lBU01fVkVSX18KLSAgICAlaWYgX19ZQVNNX1ZFUlNJT05f
SURfXyA8IDB4MDEwMzAwMDAgJiYgVlBYX0FSQ0hfWDg2XzY0ID09IDAKLSAgICAgICAgJW1hY3Jv
IHZwYnJvYWRjYXN0cSAyCi0gICAgICAgICAgICAlaWYgc2l6ZW9mJTEgPT0gMTYKLSAgICAgICAg
ICAgICAgICBtb3ZkZHVwICUxLCAlMgotICAgICAgICAgICAgJWVsc2UKLSAgICAgICAgICAgICAg
ICB2YnJvYWRjYXN0c2QgJTEsICUyCis7IE1hY3JvcyBmb3IgY29udmVydGluZyBWRVggaW5zdHJ1
Y3Rpb25zIHRvIGVxdWl2YWxlbnQgRVZFWCBvbmVzLgorJW1hY3JvIEVWRVhfSU5TVFIgMi0zIDAg
OyB2ZXgsIGV2ZXgsIHByZWZlcl9ldmV4CisgICAgJW1hY3JvICUxIDItNyBmbm9yZCwgZm5vcmQs
ICUxLCAlMiwgJTMKKyAgICAgICAgJWlmaWRuICUzLCBmbm9yZAorICAgICAgICAgICAgJWRlZmlu
ZSAlJWFyZ3MgJTEsICUyCisgICAgICAgICVlbGlmaWRuICU0LCBmbm9yZAorICAgICAgICAgICAg
JWRlZmluZSAlJWFyZ3MgJTEsICUyLCAlMworICAgICAgICAlZWxzZQorICAgICAgICAgICAgJWRl
ZmluZSAlJWFyZ3MgJTEsICUyLCAlMywgJTQKKyAgICAgICAgJWVuZGlmCisgICAgICAgICVhc3Np
Z24gJSVldmV4X3JlcXVpcmVkIGNwdWZsYWcoYXZ4NTEyKSAmICU3CisgICAgICAgICVpZm51bSBy
ZWdudW1vZiUxCisgICAgICAgICAgICAlaWYgcmVnbnVtb2YlMSA+PSAxNiB8fCBzaXplb2YlMSA+
IDMyCisgICAgICAgICAgICAgICAgJWFzc2lnbiAlJWV2ZXhfcmVxdWlyZWQgMQogICAgICAgICAg
ICAgJWVuZGlmCi0gICAgICAgICVlbmRtYWNybwotICAgICVlbmRpZgotJWVuZGlmCisgICAgICAg
ICVlbmRpZgorICAgICAgICAlaWZudW0gcmVnbnVtb2YlMgorICAgICAgICAgICAgJWlmIHJlZ251
bW9mJTIgPj0gMTYgfHwgc2l6ZW9mJTIgPiAzMgorICAgICAgICAgICAgICAgICVhc3NpZ24gJSVl
dmV4X3JlcXVpcmVkIDEKKyAgICAgICAgICAgICVlbmRpZgorICAgICAgICAlZW5kaWYKKyAgICAg
ICAgJWlmbnVtIHJlZ251bW9mJTMKKyAgICAgICAgICAgICVpZiByZWdudW1vZiUzID49IDE2IHx8
IHNpemVvZiUzID4gMzIKKyAgICAgICAgICAgICAgICAlYXNzaWduICUlZXZleF9yZXF1aXJlZCAx
CisgICAgICAgICAgICAlZW5kaWYKKyAgICAgICAgJWVuZGlmCisgICAgICAgICVpZiAlJWV2ZXhf
cmVxdWlyZWQKKyAgICAgICAgICAgICU2ICUlYXJncworICAgICAgICAlZWxzZQorICAgICAgICAg
ICAgJTUgJSVhcmdzIDsgUHJlZmVyIFZFWCBvdmVyIEVWRVggZHVlIHRvIHNob3J0ZXIgaW5zdHJ1
Y3Rpb24gbGVuZ3RoCisgICAgICAgICVlbmRpZgorICAgICVlbmRtYWNybworJWVuZG1hY3JvCisK
K0VWRVhfSU5TVFIgdmJyb2FkY2FzdGYxMjgsIHZicm9hZGNhc3RmMzJ4NAorRVZFWF9JTlNUUiB2
YnJvYWRjYXN0aTEyOCwgdmJyb2FkY2FzdGkzMng0CitFVkVYX0lOU1RSIHZleHRyYWN0ZjEyOCwg
ICB2ZXh0cmFjdGYzMng0CitFVkVYX0lOU1RSIHZleHRyYWN0aTEyOCwgICB2ZXh0cmFjdGkzMng0
CitFVkVYX0lOU1RSIHZpbnNlcnRmMTI4LCAgICB2aW5zZXJ0ZjMyeDQKK0VWRVhfSU5TVFIgdmlu
c2VydGkxMjgsICAgIHZpbnNlcnRpMzJ4NAorRVZFWF9JTlNUUiB2bW92ZHFhLCAgICAgICAgdm1v
dmRxYTMyCitFVkVYX0lOU1RSIHZtb3ZkcXUsICAgICAgICB2bW92ZHF1MzIKK0VWRVhfSU5TVFIg
dnBhbmQsICAgICAgICAgIHZwYW5kZAorRVZFWF9JTlNUUiB2cGFuZG4sICAgICAgICAgdnBhbmRu
ZAorRVZFWF9JTlNUUiB2cG9yLCAgICAgICAgICAgdnBvcmQKK0VWRVhfSU5TVFIgdnB4b3IsICAg
ICAgICAgIHZweG9yZAorRVZFWF9JTlNUUiB2cmNwcHMsICAgICAgICAgdnJjcDE0cHMsICAgMSA7
IEVWRVggdmVyc2lvbnMgaGF2ZSBoaWdoZXIgcHJlY2lzaW9uCitFVkVYX0lOU1RSIHZyY3Bzcywg
ICAgICAgICB2cmNwMTRzcywgICAxCitFVkVYX0lOU1RSIHZyc3FydHBzLCAgICAgICB2cnNxcnQx
NHBzLCAxCitFVkVYX0lOU1RSIHZyc3FydHNzLCAgICAgICB2cnNxcnQxNHNzLCAxCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3Rvb2xzLzNELVJlY29uc3RydWN0aW9uL01vdGlvbkVTVC9BbmFuZGFu
LnB5IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVjdGlvbi9Nb3Rpb25FU1QvQW5hbmRh
bi5weQppbmRleCBiOTZjZDlmZDA0MDJjNzhkODQwNmZiNGY1ZmEzNjY4MDllZWU1NmU1Li41ZmY5
ZTk4OTMyMTJkMTI2ZDg1OGNiNDIxZmNiYjBiN2VhMGNlNDdhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3Rvb2xzLzNELVJlY29uc3RydWN0aW9uL01vdGlvbkVTVC9BbmFuZGFuLnB5CisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdG9vbHMvM0QtUmVjb25zdHJ1Y3Rpb24vTW90aW9uRVNUL0FuYW5kYW4ucHkKQEAg
LTEsNCArMSwxMiBAQAotIyEvdXNyL2Jpbi9lbnYgcHl0aG9uCisjIyAgQ29weXJpZ2h0IChjKSAy
MDIwIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyMjCisj
IyAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGlj
ZW5zZQorIyMgIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJv
b3Qgb2YgdGhlIHNvdXJjZQorIyMgIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHBy
b3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyMjICBpbiB0aGUgZmlsZSBQQVRFTlRT
LiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisjIyAgYmUgZm91bmQgaW4g
dGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisjIworCiAj
IGNvZGluZzogdXRmLTgKIGltcG9ydCBudW1weSBhcyBucAogaW1wb3J0IG51bXB5LmxpbmFsZyBh
cyBMQQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVjdGlvbi9Nb3Rp
b25FU1QvRXhoYXVzdC5weSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvM0QtUmVjb25zdHJ1Y3Rpb24vTW90
aW9uRVNUL0V4aGF1c3QucHkKaW5kZXggOTdjZmM0MWRlNDBiZTlkM2ZhNDJmZGZkNjMwZTEyMjAy
NmYyMjEyNC4uMmQ2YTRkODExNDk0MDJlYTJkODYxNWZhNDUyMTkwYTFjYTkzMWIwYSAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVjdGlvbi9Nb3Rpb25FU1QvRXhoYXVz
dC5weQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rvb2xzLzNELVJlY29uc3RydWN0aW9uL01vdGlvbkVTVC9F
eGhhdXN0LnB5CkBAIC0xLDQgKzEsMTIgQEAKLSMhL3Vzci9iaW4vZW52IHB5dGhvbgorIyMgIENv
cHlyaWdodCAoYykgMjAyMCBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMuIEFsbCBSaWdodHMgUmVz
ZXJ2ZWQuCisjIworIyMgIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEg
QlNELXN0eWxlIGxpY2Vuc2UKKyMjICB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBm
aWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UKKyMjICB0cmVlLiBBbiBhZGRpdGlvbmFsIGlu
dGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQgY2FuIGJlIGZvdW5kCisjIyAgaW4gdGhl
IGZpbGUgUEFURU5UUy4gIEFsbCBjb250cmlidXRpbmcgcHJvamVjdCBhdXRob3JzIG1heQorIyMg
IGJlIGZvdW5kIGluIHRoZSBBVVRIT1JTIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZSB0
cmVlLgorIyMKKwogIyBjb2Rpbmc6IHV0Zi04CiBpbXBvcnQgbnVtcHkgYXMgbnAKIGltcG9ydCBu
dW1weS5saW5hbGcgYXMgTEEKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvM0QtUmVjb25z
dHJ1Y3Rpb24vTW90aW9uRVNUL0dyb3VuZFRydXRoLnB5IGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8zRC1S
ZWNvbnN0cnVjdGlvbi9Nb3Rpb25FU1QvR3JvdW5kVHJ1dGgucHkKaW5kZXggMjBlYjVmMWViMmE1
NWYwOWQ4YzRiMjYwN2RiNGI2Y2Q3MWQ0NTg4Ny4uMTJiYzUzZmY3MzE3NDI5YTIxNjBmMGZkNDc1
YzgyODkwNTcxNzkyZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVj
dGlvbi9Nb3Rpb25FU1QvR3JvdW5kVHJ1dGgucHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8zRC1S
ZWNvbnN0cnVjdGlvbi9Nb3Rpb25FU1QvR3JvdW5kVHJ1dGgucHkKQEAgLTEsNCArMSwxMiBAQAot
IyEvIHVzciAvIGJpbiAvIGVudiBweXRob24KKyMjICBDb3B5cmlnaHQgKGMpIDIwMjAgVGhlIFdl
Yk0gcHJvamVjdCBhdXRob3JzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorIyMKKyMjICBVc2Ugb2Yg
dGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlCisjIyAg
dGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUg
c291cmNlCisjIyAgdHJlZS4gQW4gYWRkaXRpb25hbCBpbnRlbGxlY3R1YWwgcHJvcGVydHkgcmln
aHRzIGdyYW50IGNhbiBiZSBmb3VuZAorIyMgIGluIHRoZSBmaWxlIFBBVEVOVFMuICBBbGwgY29u
dHJpYnV0aW5nIHByb2plY3QgYXV0aG9ycyBtYXkKKyMjICBiZSBmb3VuZCBpbiB0aGUgQVVUSE9S
UyBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UgdHJlZS4KKyMjCisKICNjb2RpbmcgOiB1
dGYgLSA4CiBpbXBvcnQgbnVtcHkgYXMgbnAKIGltcG9ydCBudW1weS5saW5hbGcgYXMgTEEKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvM0QtUmVjb25zdHJ1Y3Rpb24vTW90aW9uRVNUL0hv
cm5TY2h1bmNrLnB5IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVjdGlvbi9Nb3Rpb25F
U1QvSG9yblNjaHVuY2sucHkKaW5kZXggMzhmY2FlMWU3MWJkZWU4Njg4ZTMxYmM0YjkxOTQ2ZmI4
ZWIwOTYwMi4uOTc2YmQ0YTE3ODM4MzQ5YzAxYmEyYTllM2U4NGY3OWY4YTJiYzA0MSAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVjdGlvbi9Nb3Rpb25FU1QvSG9yblNj
aHVuY2sucHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVjdGlvbi9Nb3Rpb25F
U1QvSG9yblNjaHVuY2sucHkKQEAgLTEsNCArMSwxMiBAQAotIyEvdXNyL2Jpbi9lbnYgcHl0aG9u
CisjIyAgQ29weXJpZ2h0IChjKSAyMDIwIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJp
Z2h0cyBSZXNlcnZlZC4KKyMjCisjIyAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJu
ZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZQorIyMgIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBM
SUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZQorIyMgIHRyZWUuIEFuIGFkZGl0
aW9uYWwgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyMj
ICBpbiB0aGUgZmlsZSBQQVRFTlRTLiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMg
bWF5CisjIyAgYmUgZm91bmQgaW4gdGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUg
c291cmNlIHRyZWUuCisjIworCiAjIGNvZGluZzogdXRmLTgKIGltcG9ydCBudW1weSBhcyBucAog
aW1wb3J0IG51bXB5LmxpbmFsZyBhcyBMQQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8z
RC1SZWNvbnN0cnVjdGlvbi9Nb3Rpb25FU1QvTW90aW9uRVNULnB5IGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29s
cy8zRC1SZWNvbnN0cnVjdGlvbi9Nb3Rpb25FU1QvTW90aW9uRVNULnB5CmluZGV4IGE5YTRhY2Vk
YzI0YzVjZTc4YTc5OGQ1NjAxNzFhMjdmOWRjZDJkOTAuLjA5NTk1MzBmYTA2OTZkOTg4OGI3ZjI4
YzQ2NDgxZmIxMjJjMzczZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvM0QtUmVjb25z
dHJ1Y3Rpb24vTW90aW9uRVNUL01vdGlvbkVTVC5weQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rvb2xzLzNE
LVJlY29uc3RydWN0aW9uL01vdGlvbkVTVC9Nb3Rpb25FU1QucHkKQEAgLTEsNCArMSwxMiBAQAot
IyEvIHVzciAvIGJpbiAvIGVudiBweXRob24KKyMjICBDb3B5cmlnaHQgKGMpIDIwMjAgVGhlIFdl
Yk0gcHJvamVjdCBhdXRob3JzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorIyMKKyMjICBVc2Ugb2Yg
dGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlCisjIyAg
dGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUg
c291cmNlCisjIyAgdHJlZS4gQW4gYWRkaXRpb25hbCBpbnRlbGxlY3R1YWwgcHJvcGVydHkgcmln
aHRzIGdyYW50IGNhbiBiZSBmb3VuZAorIyMgIGluIHRoZSBmaWxlIFBBVEVOVFMuICBBbGwgY29u
dHJpYnV0aW5nIHByb2plY3QgYXV0aG9ycyBtYXkKKyMjICBiZSBmb3VuZCBpbiB0aGUgQVVUSE9S
UyBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UgdHJlZS4KKyMjCisKICNjb2RpbmcgOiB1
dGYgLSA4CiBpbXBvcnQgbnVtcHkgYXMgbnAKIGltcG9ydCBudW1weS5saW5hbGcgYXMgTEEKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvM0QtUmVjb25zdHJ1Y3Rpb24vTW90aW9uRVNUL1Nl
YXJjaFNtb290aC5weSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvM0QtUmVjb25zdHJ1Y3Rpb24vTW90aW9u
RVNUL1NlYXJjaFNtb290aC5weQppbmRleCBlMGI3ZmI2Mzg1NDUwNjA4ODQ1YjBmMzIyYzkzZGU2
MmRhMTdhNDliLi4yZGM2NzcxZWU1MjVjNjRiYzEyNjJlMjk5YzhlNGY2OTJmYTgyY2M3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3Rvb2xzLzNELVJlY29uc3RydWN0aW9uL01vdGlvbkVTVC9TZWFy
Y2hTbW9vdGgucHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVjdGlvbi9Nb3Rp
b25FU1QvU2VhcmNoU21vb3RoLnB5CkBAIC0xLDQgKzEsMTIgQEAKLSMhL3Vzci9iaW4vZW52IHB5
dGhvbgorIyMgIENvcHlyaWdodCAoYykgMjAyMCBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMuIEFs
bCBSaWdodHMgUmVzZXJ2ZWQuCisjIworIyMgIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdv
dmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UKKyMjICB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0
aGUgTElDRU5TRSBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UKKyMjICB0cmVlLiBBbiBh
ZGRpdGlvbmFsIGludGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQgY2FuIGJlIGZvdW5k
CisjIyAgaW4gdGhlIGZpbGUgUEFURU5UUy4gIEFsbCBjb250cmlidXRpbmcgcHJvamVjdCBhdXRo
b3JzIG1heQorIyMgIGJlIGZvdW5kIGluIHRoZSBBVVRIT1JTIGZpbGUgaW4gdGhlIHJvb3Qgb2Yg
dGhlIHNvdXJjZSB0cmVlLgorIyMKKwogIyBjb2Rpbmc6IHV0Zi04CiBpbXBvcnQgbnVtcHkgYXMg
bnAKIGltcG9ydCBudW1weS5saW5hbGcgYXMgTEEKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9v
bHMvM0QtUmVjb25zdHJ1Y3Rpb24vTW90aW9uRVNUL1V0aWwucHkgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rvb2xz
LzNELVJlY29uc3RydWN0aW9uL01vdGlvbkVTVC9VdGlsLnB5CmluZGV4IGE1MjY1ZjQ0ZTBhZWNl
ODczZjdjYTkyY2Y4ZWU1MjJkYTc0OTc0N2UuLjU1MTg4MWNmZDdjNzE2ZDQ0NTk3ZmM0NjgxODY1
NDMyMTk2YTY3ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvM0QtUmVjb25zdHJ1Y3Rp
b24vTW90aW9uRVNUL1V0aWwucHkKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVj
dGlvbi9Nb3Rpb25FU1QvVXRpbC5weQpAQCAtMSw0ICsxLDEyIEBACi0jIS91c3IvYmluL2VudiBw
eXRob24KKyMjICBDb3B5cmlnaHQgKGMpIDIwMjAgVGhlIFdlYk0gcHJvamVjdCBhdXRob3JzLiBB
bGwgUmlnaHRzIFJlc2VydmVkLgorIyMKKyMjICBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBn
b3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlCisjIyAgdGhhdCBjYW4gYmUgZm91bmQgaW4g
dGhlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlCisjIyAgdHJlZS4gQW4g
YWRkaXRpb25hbCBpbnRlbGxlY3R1YWwgcHJvcGVydHkgcmlnaHRzIGdyYW50IGNhbiBiZSBmb3Vu
ZAorIyMgIGluIHRoZSBmaWxlIFBBVEVOVFMuICBBbGwgY29udHJpYnV0aW5nIHByb2plY3QgYXV0
aG9ycyBtYXkKKyMjICBiZSBmb3VuZCBpbiB0aGUgQVVUSE9SUyBmaWxlIGluIHRoZSByb290IG9m
IHRoZSBzb3VyY2UgdHJlZS4KKyMjCisKICMgY29kaW5nOiB1dGYtOAogaW1wb3J0IG51bXB5IGFz
IG5wCiBpbXBvcnQgbnVtcHkubGluYWxnIGFzIExBCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rv
b2xzLzNELVJlY29uc3RydWN0aW9uL2dlblk0TS9nZW5ZNE0ucHkgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rvb2xz
LzNELVJlY29uc3RydWN0aW9uL2dlblk0TS9nZW5ZNE0ucHkKaW5kZXggNmVmNWM2YzhjY2UwNzky
OWI0NzliZGFhNmYyNDVhZTc3NDA5ZmRhOC4uODAyODEwMmYwYzg2MjQyNzM1NzQzODA1ZDI5NWVk
NzgzYTE2YzE5MyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy8zRC1SZWNvbnN0cnVjdGlv
bi9nZW5ZNE0vZ2VuWTRNLnB5CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvM0QtUmVjb25zdHJ1Y3Rp
b24vZ2VuWTRNL2dlblk0TS5weQpAQCAtMSwzICsxLDEyIEBACisjIyAgQ29weXJpZ2h0IChjKSAy
MDIwIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyMjCisj
IyAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGlj
ZW5zZQorIyMgIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJv
b3Qgb2YgdGhlIHNvdXJjZQorIyMgIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHBy
b3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyMjICBpbiB0aGUgZmlsZSBQQVRFTlRT
LiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisjIyAgYmUgZm91bmQgaW4g
dGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisjIworCiBp
bXBvcnQgYXJncGFyc2UKIGZyb20gb3MgaW1wb3J0IGxpc3RkaXIsIHBhdGgKIGZyb20gUElMIGlt
cG9ydCBJbWFnZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC90b29scy9saW50LWh1bmtzLnB5IGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC90b29scy9saW50LWh1bmtzLnB5CmluZGV4IDZlMjVkOTM2MjRkZGI2ODQwYzY1
ZWU1ZjRlN2MzZDg0NWM2NTNmMjQuLjMwZDMyNDkxOTNiYzNjMWQ5MDY3MzVhMTZhZTFlYmViODJh
N2M2ZjIgMTAwNzU1Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvbGludC1odW5rcy5weQorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3Rvb2xzL2xpbnQtaHVua3MucHkKQEAgLTEwNiw2ICsxMDYsOCBAQCBkZWYgbWFp
bihhcmd2PU5vbmUpOgogICAgICAgICBmb3IgZmlsZW5hbWUsIGFmZmVjdGVkX2xpbmVzIGluIGZp
bGVfYWZmZWN0ZWRfbGluZV9tYXAuaXRlcml0ZW1zKCk6CiAgICAgICAgICAgICBpZiBmaWxlbmFt
ZS5zcGxpdCgiLiIpWy0xXSBub3QgaW4gKCJjIiwgImgiLCAiY2MiKToKICAgICAgICAgICAgICAg
ICBjb250aW51ZQorICAgICAgICAgICAgaWYgZmlsZW5hbWUuc3RhcnRzd2l0aCgidGhpcmRfcGFy
dHkiKToKKyAgICAgICAgICAgICAgICBjb250aW51ZQogCiAgICAgICAgICAgICBpZiBhcmdzOgog
ICAgICAgICAgICAgICAgICMgRmlsZSBjb250ZW50cyBjb21lIGZyb20gZ2l0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3Rvb2xzL25vbl9ncmVlZHlfbXYvbm9uX2dyZWVkeV9tdi5weSBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdG9vbHMvbm9uX2dyZWVkeV9tdi9ub25fZ3JlZWR5X212LnB5CmluZGV4IDUxM2ZhYTQz
NWY5NDliMzY4YTdkY2FjZWM4YTkxYmY4YmVmYmRmMzkuLmE0NmI3ZTc2MGM0ZTFhNzhlOTlmNzA4
ZThmZGNjZTVjOTZkNGJiYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvbm9uX2dyZWVk
eV9tdi9ub25fZ3JlZWR5X212LnB5CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHMvbm9uX2dyZWVkeV9t
di9ub25fZ3JlZWR5X212LnB5CkBAIC0xLDMgKzEsMTIgQEAKKyMjICBDb3B5cmlnaHQgKGMpIDIw
MjAgVGhlIFdlYk0gcHJvamVjdCBhdXRob3JzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorIyMKKyMj
ICBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNl
bnNlCisjIyAgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9v
dCBvZiB0aGUgc291cmNlCisjIyAgdHJlZS4gQW4gYWRkaXRpb25hbCBpbnRlbGxlY3R1YWwgcHJv
cGVydHkgcmlnaHRzIGdyYW50IGNhbiBiZSBmb3VuZAorIyMgIGluIHRoZSBmaWxlIFBBVEVOVFMu
ICBBbGwgY29udHJpYnV0aW5nIHByb2plY3QgYXV0aG9ycyBtYXkKKyMjICBiZSBmb3VuZCBpbiB0
aGUgQVVUSE9SUyBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UgdHJlZS4KKyMjCisKIGlt
cG9ydCBzeXMKIGltcG9ydCBtYXRwbG90bGliLnB5cGxvdCBhcyBwbHQKIGZyb20gbWF0cGxvdGxp
Yi5jb2xsZWN0aW9ucyBpbXBvcnQgTGluZUNvbGxlY3Rpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdG9vbHNfY29tbW9uLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Rvb2xzX2NvbW1vbi5jCmluZGV4IDU5OTc4
YjdmOTNhYjQ5MzczMmY3M2QwNDE4Zjk5ZGNiZDA4NTk2NmYuLmNiZWNmYmI0MTkzNzU3YzE3ZWM4
YWI4NzgxOTgzYjMxNjNmOGUyY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdG9vbHNfY29tbW9u
LmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC90b29sc19jb21tb24uYwpAQCAtOTEsMTAgKzkxLDEzIEBAIGlu
dCByZWFkX3l1dl9mcmFtZShzdHJ1Y3QgVnB4SW5wdXRDb250ZXh0ICppbnB1dF9jdHgsIHZweF9p
bWFnZV90ICp5dXZfZnJhbWUpIHsKIAogICBmb3IgKHBsYW5lID0gMDsgcGxhbmUgPCAzOyArK3Bs
YW5lKSB7CiAgICAgdWludDhfdCAqcHRyOwotICAgIGNvbnN0IGludCB3ID0gdnB4X2ltZ19wbGFu
ZV93aWR0aCh5dXZfZnJhbWUsIHBsYW5lKTsKKyAgICBpbnQgdyA9IHZweF9pbWdfcGxhbmVfd2lk
dGgoeXV2X2ZyYW1lLCBwbGFuZSk7CiAgICAgY29uc3QgaW50IGggPSB2cHhfaW1nX3BsYW5lX2hl
aWdodCh5dXZfZnJhbWUsIHBsYW5lKTsKICAgICBpbnQgcjsKLQorICAgIC8vIEFzc3VtaW5nIHRo
YXQgZm9yIG52MTIgd2UgcmVhZCBhbGwgY2hyb21hIGRhdGEgYXQgb25lIHRpbWUKKyAgICBpZiAo
eXV2X2ZyYW1lLT5mbXQgPT0gVlBYX0lNR19GTVRfTlYxMiAmJiBwbGFuZSA+IDEpIGJyZWFrOwor
ICAgIC8vIEZpeGluZyBOVjEyIGNocm9tYSB3aWR0aCBpdCBpcyBvZGQKKyAgICBpZiAoeXV2X2Zy
YW1lLT5mbXQgPT0gVlBYX0lNR19GTVRfTlYxMiAmJiBwbGFuZSA9PSAxKSB3ID0gKHcgKyAxKSAm
IH4xOwogICAgIC8qIERldGVybWluZSB0aGUgY29ycmVjdCBwbGFuZSBiYXNlZCBvbiB0aGUgaW1h
Z2UgZm9ybWF0LiBUaGUgZm9yLWxvb3AKICAgICAgKiBhbHdheXMgY291bnRzIGluIFksVSxWIG9y
ZGVyLCBidXQgdGhpcyBtYXkgbm90IG1hdGNoIHRoZSBvcmRlciBvZgogICAgICAqIHRoZSBkYXRh
IG9uIGRpc2suCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vZXh0ZW5kLmMgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vZXh0ZW5kLmMKaW5kZXggZjRkYmNlMmNkNTM3NmU3YjRhNWE1
NGU2NzNiYWMwODAxMjBiOTQ2Mi4uYjUyZTlmZTkzYzdiNDA3NzUzNzQ1ZGUyNDJiNTA0N2RhOTE4
MzBjNSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL2V4dGVuZC5jCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9leHRlbmQuYwpAQCAtMTEsMzAgKzExLDQwIEBACiAjaW5jbHVk
ZSAiZXh0ZW5kLmgiCiAjaW5jbHVkZSAidnB4X21lbS92cHhfbWVtLmgiCiAKLXN0YXRpYyB2b2lk
IGNvcHlfYW5kX2V4dGVuZF9wbGFuZSh1bnNpZ25lZCBjaGFyICpzLCAvKiBzb3VyY2UgKi8KLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgc3AsICAgICAgICAgICAvKiBzb3Vy
Y2UgcGl0Y2ggKi8KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBj
aGFyICpkLCAvKiBkZXN0aW5hdGlvbiAqLwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGludCBkcCwgICAgICAgICAgIC8qIGRlc3RpbmF0aW9uIHBpdGNoICovCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaW50IGgsICAgICAgICAgICAgLyogaGVpZ2h0ICovCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHcsICAgICAgICAgICAgLyogd2lk
dGggKi8KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgZXQsICAgICAgICAg
ICAvKiBleHRlbmQgdG9wIGJvcmRlciAqLwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGludCBlbCwgICAgICAgICAgIC8qIGV4dGVuZCBsZWZ0IGJvcmRlciAqLwotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGludCBlYiwgICAgICAgICAgIC8qIGV4dGVuZCBib3R0
b20gYm9yZGVyICovCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGVyKSB7
ICAgICAgICAgLyogZXh0ZW5kIHJpZ2h0IGJvcmRlciAqLwotICBpbnQgaTsKK3N0YXRpYyB2b2lk
IGNvcHlfYW5kX2V4dGVuZF9wbGFuZSgKKyAgICB1bnNpZ25lZCBjaGFyICpzLCAgICAgIC8qIHNv
dXJjZSAqLworICAgIGludCBzcCwgICAgICAgICAgICAgICAgLyogc291cmNlIHBpdGNoICovCisg
ICAgdW5zaWduZWQgY2hhciAqZCwgICAgICAvKiBkZXN0aW5hdGlvbiAqLworICAgIGludCBkcCwg
ICAgICAgICAgICAgICAgLyogZGVzdGluYXRpb24gcGl0Y2ggKi8KKyAgICBpbnQgaCwgICAgICAg
ICAgICAgICAgIC8qIGhlaWdodCAqLworICAgIGludCB3LCAgICAgICAgICAgICAgICAgLyogd2lk
dGggKi8KKyAgICBpbnQgZXQsICAgICAgICAgICAgICAgIC8qIGV4dGVuZCB0b3AgYm9yZGVyICov
CisgICAgaW50IGVsLCAgICAgICAgICAgICAgICAvKiBleHRlbmQgbGVmdCBib3JkZXIgKi8KKyAg
ICBpbnQgZWIsICAgICAgICAgICAgICAgIC8qIGV4dGVuZCBib3R0b20gYm9yZGVyICovCisgICAg
aW50IGVyLCAgICAgICAgICAgICAgICAvKiBleHRlbmQgcmlnaHQgYm9yZGVyICovCisgICAgaW50
IGludGVybGVhdmVfc3RlcCkgeyAvKiBzdGVwIGJldHdlZW4gcGl4ZWxzIG9mIHRoZSBjdXJyZW50
IHBsYW5lICovCisgIGludCBpLCBqOwogICB1bnNpZ25lZCBjaGFyICpzcmNfcHRyMSwgKnNyY19w
dHIyOwogICB1bnNpZ25lZCBjaGFyICpkZXN0X3B0cjEsICpkZXN0X3B0cjI7CiAgIGludCBsaW5l
c2l6ZTsKIAorICBpZiAoaW50ZXJsZWF2ZV9zdGVwIDwgMSkgaW50ZXJsZWF2ZV9zdGVwID0gMTsK
KwogICAvKiBjb3B5IHRoZSBsZWZ0IGFuZCByaWdodCBtb3N0IGNvbHVtbnMgb3V0ICovCiAgIHNy
Y19wdHIxID0gczsKLSAgc3JjX3B0cjIgPSBzICsgdyAtIDE7CisgIHNyY19wdHIyID0gcyArICh3
IC0gMSkgKiBpbnRlcmxlYXZlX3N0ZXA7CiAgIGRlc3RfcHRyMSA9IGQgLSBlbDsKICAgZGVzdF9w
dHIyID0gZCArIHc7CiAKICAgZm9yIChpID0gMDsgaSA8IGg7ICsraSkgewogICAgIG1lbXNldChk
ZXN0X3B0cjEsIHNyY19wdHIxWzBdLCBlbCk7Ci0gICAgbWVtY3B5KGRlc3RfcHRyMSArIGVsLCBz
cmNfcHRyMSwgdyk7CisgICAgaWYgKGludGVybGVhdmVfc3RlcCA9PSAxKSB7CisgICAgICBtZW1j
cHkoZGVzdF9wdHIxICsgZWwsIHNyY19wdHIxLCB3KTsKKyAgICB9IGVsc2UgeworICAgICAgZm9y
IChqID0gMDsgaiA8IHc7IGorKykgeworICAgICAgICBkZXN0X3B0cjFbZWwgKyBqXSA9IHNyY19w
dHIxW2ludGVybGVhdmVfc3RlcCAqIGpdOworICAgICAgfQorICAgIH0KICAgICBtZW1zZXQoZGVz
dF9wdHIyLCBzcmNfcHRyMlswXSwgZXIpOwogICAgIHNyY19wdHIxICs9IHNwOwogICAgIHNyY19w
dHIyICs9IHNwOwpAQCAtNjksOSArNzksMTIgQEAgdm9pZCB2cDhfY29weV9hbmRfZXh0ZW5kX2Zy
YW1lKFlWMTJfQlVGRkVSX0NPTkZJRyAqc3JjLAogICBpbnQgZWIgPSBkc3QtPmJvcmRlciArIGRz
dC0+eV9oZWlnaHQgLSBzcmMtPnlfaGVpZ2h0OwogICBpbnQgZXIgPSBkc3QtPmJvcmRlciArIGRz
dC0+eV93aWR0aCAtIHNyYy0+eV93aWR0aDsKIAorICAvLyBkZXRlY3QgbnYxMiBjb2xvcnNwYWNl
CisgIGludCBjaHJvbWFfc3RlcCA9IHNyYy0+dl9idWZmZXIgLSBzcmMtPnVfYnVmZmVyID09IDEg
PyAyIDogMTsKKwogICBjb3B5X2FuZF9leHRlbmRfcGxhbmUoc3JjLT55X2J1ZmZlciwgc3JjLT55
X3N0cmlkZSwgZHN0LT55X2J1ZmZlciwKICAgICAgICAgICAgICAgICAgICAgICAgIGRzdC0+eV9z
dHJpZGUsIHNyYy0+eV9oZWlnaHQsIHNyYy0+eV93aWR0aCwgZXQsIGVsLCBlYiwKLSAgICAgICAg
ICAgICAgICAgICAgICAgIGVyKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGVyLCAxKTsKIAog
ICBldCA9IGRzdC0+Ym9yZGVyID4+IDE7CiAgIGVsID0gZHN0LT5ib3JkZXIgPj4gMTsKQEAgLTgw
LDExICs5MywxMSBAQCB2b2lkIHZwOF9jb3B5X2FuZF9leHRlbmRfZnJhbWUoWVYxMl9CVUZGRVJf
Q09ORklHICpzcmMsCiAKICAgY29weV9hbmRfZXh0ZW5kX3BsYW5lKHNyYy0+dV9idWZmZXIsIHNy
Yy0+dXZfc3RyaWRlLCBkc3QtPnVfYnVmZmVyLAogICAgICAgICAgICAgICAgICAgICAgICAgZHN0
LT51dl9zdHJpZGUsIHNyYy0+dXZfaGVpZ2h0LCBzcmMtPnV2X3dpZHRoLCBldCwgZWwsCi0gICAg
ICAgICAgICAgICAgICAgICAgICBlYiwgZXIpOworICAgICAgICAgICAgICAgICAgICAgICAgZWIs
IGVyLCBjaHJvbWFfc3RlcCk7CiAKICAgY29weV9hbmRfZXh0ZW5kX3BsYW5lKHNyYy0+dl9idWZm
ZXIsIHNyYy0+dXZfc3RyaWRlLCBkc3QtPnZfYnVmZmVyLAogICAgICAgICAgICAgICAgICAgICAg
ICAgZHN0LT51dl9zdHJpZGUsIHNyYy0+dXZfaGVpZ2h0LCBzcmMtPnV2X3dpZHRoLCBldCwgZWws
Ci0gICAgICAgICAgICAgICAgICAgICAgICBlYiwgZXIpOworICAgICAgICAgICAgICAgICAgICAg
ICAgZWIsIGVyLCBjaHJvbWFfc3RlcCk7CiB9CiAKIHZvaWQgdnA4X2NvcHlfYW5kX2V4dGVuZF9m
cmFtZV93aXRoX3JlY3QoWVYxMl9CVUZGRVJfQ09ORklHICpzcmMsCkBAIC05OCw2ICsxMTEsOCBA
QCB2b2lkIHZwOF9jb3B5X2FuZF9leHRlbmRfZnJhbWVfd2l0aF9yZWN0KFlWMTJfQlVGRkVSX0NP
TkZJRyAqc3JjLAogICBpbnQgZHN0X3lfb2Zmc2V0ID0gc3JjeSAqIGRzdC0+eV9zdHJpZGUgKyBz
cmN4OwogICBpbnQgc3JjX3V2X29mZnNldCA9ICgoc3JjeSAqIHNyYy0+dXZfc3RyaWRlKSA+PiAx
KSArIChzcmN4ID4+IDEpOwogICBpbnQgZHN0X3V2X29mZnNldCA9ICgoc3JjeSAqIGRzdC0+dXZf
c3RyaWRlKSA+PiAxKSArIChzcmN4ID4+IDEpOworICAvLyBkZXRlY3QgbnYxMiBjb2xvcnNwYWNl
CisgIGludCBjaHJvbWFfc3RlcCA9IHNyYy0+dl9idWZmZXIgLSBzcmMtPnVfYnVmZmVyID09IDEg
PyAyIDogMTsKIAogICAvKiBJZiB0aGUgc2lkZSBpcyBub3QgdG91Y2hpbmcgdGhlIGJvdW5kZXIg
dGhlbiBkb24ndCBleHRlbmQuICovCiAgIGlmIChzcmN5KSBldCA9IDA7CkBAIC0xMDcsNyArMTIy
LDcgQEAgdm9pZCB2cDhfY29weV9hbmRfZXh0ZW5kX2ZyYW1lX3dpdGhfcmVjdChZVjEyX0JVRkZF
Ul9DT05GSUcgKnNyYywKIAogICBjb3B5X2FuZF9leHRlbmRfcGxhbmUoc3JjLT55X2J1ZmZlciAr
IHNyY195X29mZnNldCwgc3JjLT55X3N0cmlkZSwKICAgICAgICAgICAgICAgICAgICAgICAgIGRz
dC0+eV9idWZmZXIgKyBkc3RfeV9vZmZzZXQsIGRzdC0+eV9zdHJpZGUsIHNyY2gsIHNyY3csCi0g
ICAgICAgICAgICAgICAgICAgICAgICBldCwgZWwsIGViLCBlcik7CisgICAgICAgICAgICAgICAg
ICAgICAgICBldCwgZWwsIGViLCBlciwgMSk7CiAKICAgZXQgPSAoZXQgKyAxKSA+PiAxOwogICBl
bCA9IChlbCArIDEpID4+IDE7CkBAIC0xMTgsMTEgKzEzMywxMSBAQCB2b2lkIHZwOF9jb3B5X2Fu
ZF9leHRlbmRfZnJhbWVfd2l0aF9yZWN0KFlWMTJfQlVGRkVSX0NPTkZJRyAqc3JjLAogCiAgIGNv
cHlfYW5kX2V4dGVuZF9wbGFuZShzcmMtPnVfYnVmZmVyICsgc3JjX3V2X29mZnNldCwgc3JjLT51
dl9zdHJpZGUsCiAgICAgICAgICAgICAgICAgICAgICAgICBkc3QtPnVfYnVmZmVyICsgZHN0X3V2
X29mZnNldCwgZHN0LT51dl9zdHJpZGUsIHNyY2gsCi0gICAgICAgICAgICAgICAgICAgICAgICBz
cmN3LCBldCwgZWwsIGViLCBlcik7CisgICAgICAgICAgICAgICAgICAgICAgICBzcmN3LCBldCwg
ZWwsIGViLCBlciwgY2hyb21hX3N0ZXApOwogCiAgIGNvcHlfYW5kX2V4dGVuZF9wbGFuZShzcmMt
PnZfYnVmZmVyICsgc3JjX3V2X29mZnNldCwgc3JjLT51dl9zdHJpZGUsCiAgICAgICAgICAgICAg
ICAgICAgICAgICBkc3QtPnZfYnVmZmVyICsgZHN0X3V2X29mZnNldCwgZHN0LT51dl9zdHJpZGUs
IHNyY2gsCi0gICAgICAgICAgICAgICAgICAgICAgICBzcmN3LCBldCwgZWwsIGViLCBlcik7Cisg
ICAgICAgICAgICAgICAgICAgICAgICBzcmN3LCBldCwgZWwsIGViLCBlciwgY2hyb21hX3N0ZXAp
OwogfQogCiAvKiBub3RlIHRoZSBleHRlbnNpb24gaXMgb25seSBmb3IgdGhlIGxhc3Qgcm93LCBm
b3IgaW50cmEgcHJlZGljdGlvbiBwdXJwb3NlICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9jb21tb24vZ2VuZXJpYy9zeXN0ZW1kZXBlbmRlbnQuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9nZW5lcmljL3N5c3RlbWRlcGVuZGVudC5jCmluZGV4IDc1Y2U3ZWYzNTk2NGYxZWEyNTg1M2I5
YjhjOWYyZDljYTdlN2RlZDEuLmNkMWIwMmM5Y2M1Yjc0MzgxYTNjMGEzMGQ5MzVlNWYxNDVlN2Iy
ZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9nZW5lcmljL3N5c3RlbWRlcGVu
ZGVudC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9nZW5lcmljL3N5c3RlbWRlcGVuZGVu
dC5jCkBAIC0xNiw2ICsxNiw4IEBACiAjaW5jbHVkZSAidnB4X3BvcnRzL3g4Ni5oIgogI2VsaWYg
VlBYX0FSQ0hfUFBDCiAjaW5jbHVkZSAidnB4X3BvcnRzL3BwYy5oIgorI2VsaWYgVlBYX0FSQ0hf
TUlQUworI2luY2x1ZGUgInZweF9wb3J0cy9taXBzLmgiCiAjZW5kaWYKICNpbmNsdWRlICJ2cDgv
Y29tbW9uL29ueXhjX2ludC5oIgogI2luY2x1ZGUgInZwOC9jb21tb24vc3lzdGVtZGVwZW5kZW50
LmgiCkBAIC05Niw2ICs5OCw4IEBAIHZvaWQgdnA4X21hY2hpbmVfc3BlY2lmaWNfY29uZmlnKFZQ
OF9DT01NT04gKmN0eCkgewogICBjdHgtPmNwdV9jYXBzID0geDg2X3NpbWRfY2FwcygpOwogI2Vs
aWYgVlBYX0FSQ0hfUFBDCiAgIGN0eC0+Y3B1X2NhcHMgPSBwcGNfc2ltZF9jYXBzKCk7CisjZWxp
ZiBWUFhfQVJDSF9NSVBTCisgIGN0eC0+Y3B1X2NhcHMgPSBtaXBzX2NwdV9jYXBzKCk7CiAjZWxz
ZQogICAvLyBnZW5lcmljLWdudSB0YXJnZXRzLgogICBjdHgtPmNwdV9jYXBzID0gMDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9taXBzL21taS9kZXF1YW50aXplX21taS5jIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL21pcHMvbW1pL2RlcXVhbnRpemVfbW1pLmMKaW5kZXggYjNm
ODA4NGFlZTY3ZjY5ODE5OGRiNGVmMzFhZTI1OTQzMDQzZjNhZS4uYjkzMzBhNjY2MzA2NjQ4YWRj
MzAwNTRmMjg0ZTFiNzU4NjEzOTlmYiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9u
L21pcHMvbW1pL2RlcXVhbnRpemVfbW1pLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21p
cHMvbW1pL2RlcXVhbnRpemVfbW1pLmMKQEAgLTEwMCw3ICsxMDAsNyBAQCB2b2lkIHZwOF9kZXF1
YW50X2lkY3RfYWRkX21taShpbnQxNl90ICppbnB1dCwgaW50MTZfdCAqZHEsIHVuc2lnbmVkIGNo
YXIgKmRlc3QsCiAgIHZwOF9zaG9ydF9pZGN0NHg0bGxtX21taShpbnB1dCwgZGVzdCwgc3RyaWRl
LCBkZXN0LCBzdHJpZGUpOwogCiAgIF9fYXNtX18gdm9sYXRpbGUoCi0gICAgICAieG9yICAgICAg
ICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAgICAgIFxuXHQiCisgICAg
ICAicHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAgICAg
IFxuXHQiCiAgICAgICAiZ3NzZGxjMSAgICAlW2Z0bXAwXSwgICAweDA3KCVbaW5wdXRdKSAgICAg
ICAgICAgICAgICAgIFxuXHQiCiAgICAgICAiZ3NzZHJjMSAgICAlW2Z0bXAwXSwgICAweDAwKCVb
aW5wdXRdKSAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgICAic2RsICAgICAgICAkMCwgICAg
ICAgICAweDBmKCVbaW5wdXRdKSAgICAgICAgICAgICAgICAgIFxuXHQiCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vbWlwcy9tbWkvaWRjdGxsbV9tbWkuYyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9taXBzL21taS9pZGN0bGxtX21taS5jCmluZGV4IDVlNDhmNTkxNjZiZGJhM2M1
Zjc0N2JmYmQyZmFhYTAxOWRmNzFjMWYuLmEzNTY4OWRkMzBhMzU1MjIzNGMyNWVhMDkyZmI0ZjA3
YmU2ZGY4ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9taXBzL21taS9pZGN0
bGxtX21taS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9taXBzL21taS9pZGN0bGxtX21t
aS5jCkBAIC0xMywyNSArMTMsMjUgQEAKICNpbmNsdWRlICJ2cHhfcG9ydHMvYXNtZGVmc19tbWku
aCIKIAogI2RlZmluZSBUUkFOU1BPU0VfNEggXAotICAieG9yICAgICAgICAgICAlW2Z0bXAwXSwg
ICAgJVtmdG1wMF0sICAgICVbZnRtcDBdICAgICAgICAgIFxuXHQiIFwKKyAgInB4b3IgICAgICAg
ICAgJVtmdG1wMF0sICAgICVbZnRtcDBdLCAgICAlW2Z0bXAwXSAgICAgICAgICBcblx0IiBcCiAg
IE1NSV9MSSglW3RtcDBdLCAweDkzKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAogICAibXRjMSAgICAgICAgICAlW3RtcDBdLCAgICAgJVtmdG1wMTBdICAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiIFwKICAgInB1bnBja2xodyAgICAgJVtmdG1wNV0sICAgICVb
ZnRtcDFdLCAgICAlW2Z0bXAwXSAgICAgICAgICBcblx0IiBcCiAgICJwdW5wY2tsaHcgICAgICVb
ZnRtcDldLCAgICAlW2Z0bXAyXSwgICAgJVtmdG1wMF0gICAgICAgICAgXG5cdCIgXAogICAicHNo
dWZoICAgICAgICAlW2Z0bXA5XSwgICAgJVtmdG1wOV0sICAgICVbZnRtcDEwXSAgICAgICAgIFxu
XHQiIFwKLSAgIm9yICAgICAgICAgICAgJVtmdG1wNV0sICAgICVbZnRtcDVdLCAgICAlW2Z0bXA5
XSAgICAgICAgICBcblx0IiBcCisgICJwb3IgICAgICAgICAgICVbZnRtcDVdLCAgICAlW2Z0bXA1
XSwgICAgJVtmdG1wOV0gICAgICAgICAgXG5cdCIgXAogICAicHVucGNraGh3ICAgICAlW2Z0bXA2
XSwgICAgJVtmdG1wMV0sICAgICVbZnRtcDBdICAgICAgICAgIFxuXHQiIFwKICAgInB1bnBja2ho
dyAgICAgJVtmdG1wOV0sICAgICVbZnRtcDJdLCAgICAlW2Z0bXAwXSAgICAgICAgICBcblx0IiBc
CiAgICJwc2h1ZmggICAgICAgICVbZnRtcDldLCAgICAlW2Z0bXA5XSwgICAgJVtmdG1wMTBdICAg
ICAgICAgXG5cdCIgXAotICAib3IgICAgICAgICAgICAlW2Z0bXA2XSwgICAgJVtmdG1wNl0sICAg
ICVbZnRtcDldICAgICAgICAgIFxuXHQiIFwKKyAgInBvciAgICAgICAgICAgJVtmdG1wNl0sICAg
ICVbZnRtcDZdLCAgICAlW2Z0bXA5XSAgICAgICAgICBcblx0IiBcCiAgICJwdW5wY2tsaHcgICAg
ICVbZnRtcDddLCAgICAlW2Z0bXAzXSwgICAgJVtmdG1wMF0gICAgICAgICAgXG5cdCIgXAogICAi
cHVucGNrbGh3ICAgICAlW2Z0bXA5XSwgICAgJVtmdG1wNF0sICAgICVbZnRtcDBdICAgICAgICAg
IFxuXHQiIFwKICAgInBzaHVmaCAgICAgICAgJVtmdG1wOV0sICAgICVbZnRtcDldLCAgICAlW2Z0
bXAxMF0gICAgICAgICBcblx0IiBcCi0gICJvciAgICAgICAgICAgICVbZnRtcDddLCAgICAlW2Z0
bXA3XSwgICAgJVtmdG1wOV0gICAgICAgICAgXG5cdCIgXAorICAicG9yICAgICAgICAgICAlW2Z0
bXA3XSwgICAgJVtmdG1wN10sICAgICVbZnRtcDldICAgICAgICAgIFxuXHQiIFwKICAgInB1bnBj
a2hodyAgICAgJVtmdG1wOF0sICAgICVbZnRtcDNdLCAgICAlW2Z0bXAwXSAgICAgICAgICBcblx0
IiBcCiAgICJwdW5wY2toaHcgICAgICVbZnRtcDldLCAgICAlW2Z0bXA0XSwgICAgJVtmdG1wMF0g
ICAgICAgICAgXG5cdCIgXAogICAicHNodWZoICAgICAgICAlW2Z0bXA5XSwgICAgJVtmdG1wOV0s
ICAgICVbZnRtcDEwXSAgICAgICAgIFxuXHQiIFwKLSAgIm9yICAgICAgICAgICAgJVtmdG1wOF0s
ICAgICVbZnRtcDhdLCAgICAlW2Z0bXA5XSAgICAgICAgICBcblx0IiBcCisgICJwb3IgICAgICAg
ICAgICVbZnRtcDhdLCAgICAlW2Z0bXA4XSwgICAgJVtmdG1wOV0gICAgICAgICAgXG5cdCIgXAog
ICAicHVucGNrbHdkICAgICAlW2Z0bXAxXSwgICAgJVtmdG1wNV0sICAgICVbZnRtcDddICAgICAg
ICAgIFxuXHQiIFwKICAgInB1bnBja2h3ZCAgICAgJVtmdG1wMl0sICAgICVbZnRtcDVdLCAgICAl
W2Z0bXA3XSAgICAgICAgICBcblx0IiBcCiAgICJwdW5wY2tsd2QgICAgICVbZnRtcDNdLCAgICAl
W2Z0bXA2XSwgICAgJVtmdG1wOF0gICAgICAgICAgXG5cdCIgXApAQCAtNDEsMTUgKzQxLDE5IEBA
IHZvaWQgdnA4X3Nob3J0X2lkY3Q0eDRsbG1fbW1pKGludDE2X3QgKmlucHV0LCB1bnNpZ25lZCBj
aGFyICpwcmVkX3B0ciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBwcmVkX3N0
cmlkZSwgdW5zaWduZWQgY2hhciAqZHN0X3B0ciwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGludCBkc3Rfc3RyaWRlKSB7CiAgIGRvdWJsZSBmdG1wWzEyXTsKLSAgdWludDMyX3QgdG1w
WzBdOwotICBERUNMQVJFX0FMSUdORUQoOCwgY29uc3QgdWludDY0X3QsIGZmX3BoXzA0KSA9IHsg
MHgwMDA0MDAwNDAwMDQwMDA0VUxMIH07Ci0gIERFQ0xBUkVfQUxJR05FRCg4LCBjb25zdCB1aW50
NjRfdCwgZmZfcGhfNGU3YikgPSB7IDB4NGU3YjRlN2I0ZTdiNGU3YlVMTCB9OwotICBERUNMQVJF
X0FMSUdORUQoOCwgY29uc3QgdWludDY0X3QsIGZmX3BoXzIyYTMpID0geyAweDIyYTMyMmEzMjJh
MzIyYTNVTEwgfTsKKyAgdWludDY0X3QgdG1wWzFdOworICBkb3VibGUgZmZfcGhfMDQsIGZmX3Bo
XzRlN2IsIGZmX3BoXzIyYTM7CiAKICAgX19hc21fXyB2b2xhdGlsZSAoCisgICAgImRsaSAgICAg
ICAgJVt0bXAwXSwgICAgMHgwMDA0MDAwNDAwMDQwMDA0ICAgICAgICAgICAgICAgICAgXG5cdCIK
KyAgICAiZG10YzEgICAgICAlW3RtcDBdLCAgICAlW2ZmX3BoXzA0XSAgICAgICAgICAgICAgICAg
ICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4NGU3YjRlN2I0ZTdi
NGU3YiAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAg
JVtmZl9waF80ZTdiXSAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKKyAgICAiZGxpICAgICAg
ICAlW3RtcDBdLCAgICAweDIyYTMyMmEzMjJhMzIyYTMgICAgICAgICAgICAgICAgICBcblx0Igor
ICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZmZfcGhfMjJhM10gICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCiAgICAgTU1JX0xJKCVbdG1wMF0sIDB4MDIpCi0gICAgIm10YzEgICAgICAg
JVt0bXAwXSwgICAgJVtmdG1wMTFdICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKLSAg
ICAieG9yICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAgICAg
ICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRtcDExXSAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMF0sICAgJVtm
dG1wMF0sICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKIAogICAgICJnc2xkbGMxICAg
ICVbZnRtcDFdLCAgIDB4MDcoJVtpcF0pICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAg
ICAgImdzbGRyYzEgICAgJVtmdG1wMV0sICAgMHgwMCglW2lwXSkgICAgICAgICAgICAgICAgICAg
ICAgICAgXG5cdCIKQEAgLTE4Niw5ICsxOTAsMTAgQEAgdm9pZCB2cDhfc2hvcnRfaWRjdDR4NGxs
bV9tbWkoaW50MTZfdCAqaW5wdXQsIHVuc2lnbmVkIGNoYXIgKnByZWRfcHRyLAogICAgICAgW2Z0
bXA2XSI9JmYiKGZ0bXBbNl0pLCBbZnRtcDddIj0mZiIoZnRtcFs3XSksIFtmdG1wOF0iPSZmIihm
dG1wWzhdKSwKICAgICAgIFtmdG1wOV0iPSZmIihmdG1wWzldKSwgW2Z0bXAxMF0iPSZmIihmdG1w
WzEwXSksCiAgICAgICBbZnRtcDExXSI9JmYiKGZ0bXBbMTFdKSwgW3RtcDBdIj0mciIodG1wWzBd
KSwKLSAgICAgIFtwcmVkX3B0cl0iKyZyIihwcmVkX3B0ciksIFtkc3RfcHRyXSIrJnIiKGRzdF9w
dHIpCi0gICAgOiBbaXBdInIiKGlucHV0KSwgW2ZmX3BoXzIyYTNdImYiKGZmX3BoXzIyYTMpLAot
ICAgICAgW2ZmX3BoXzRlN2JdImYiKGZmX3BoXzRlN2IpLCBbZmZfcGhfMDRdImYiKGZmX3BoXzA0
KSwKKyAgICAgIFtwcmVkX3B0cl0iKyZyIihwcmVkX3B0ciksIFtkc3RfcHRyXSIrJnIiKGRzdF9w
dHIpLAorICAgICAgW2ZmX3BoXzRlN2JdIj0mZiIoZmZfcGhfNGU3YiksIFtmZl9waF8wNF0iPSZm
IihmZl9waF8wNCksCisgICAgICBbZmZfcGhfMjJhM10iPSZmIihmZl9waF8yMmEzKQorICAgIDog
W2lwXSJyIihpbnB1dCksCiAgICAgICBbcHJlZF9zdHJpZGVdInIiKChtaXBzX3JlZylwcmVkX3N0
cmlkZSksCiAgICAgICBbZHN0X3N0cmlkZV0iciIoKG1pcHNfcmVnKWRzdF9zdHJpZGUpCiAgICAg
OiAibWVtb3J5IgpAQCAtMTk4LDEyICsyMDMsMTMgQEAgdm9pZCB2cDhfc2hvcnRfaWRjdDR4NGxs
bV9tbWkoaW50MTZfdCAqaW5wdXQsIHVuc2lnbmVkIGNoYXIgKnByZWRfcHRyLAogdm9pZCB2cDhf
ZGNfb25seV9pZGN0X2FkZF9tbWkoaW50MTZfdCBpbnB1dF9kYywgdW5zaWduZWQgY2hhciAqcHJl
ZF9wdHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcHJlZF9zdHJpZGUsIHVu
c2lnbmVkIGNoYXIgKmRzdF9wdHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQg
ZHN0X3N0cmlkZSkgewotICBpbnQgYTEgPSAoKGlucHV0X2RjICsgNCkgPj4gMyk7Ci0gIGRvdWJs
ZSBmdG1wWzVdOworICBpbnQgYTAgPSAoKGlucHV0X2RjICsgNCkgPj4gMyk7CisgIGRvdWJsZSBh
MSwgZnRtcFs1XTsKICAgaW50IGxvdzMyOwogCiAgIF9fYXNtX18gdm9sYXRpbGUgKAotICAgICJ4
b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0bXAwXSAgICAgICAgXG5c
dCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0g
ICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVthMF0sICAgICAgJVthMV0gICAgICAgICAg
ICAgICAgICAgICAgICAgICBcblx0IgogICAgICJwc2h1ZmggICAgICVbYTFdLCAgICAgICVbYTFd
LCAgICAgICAgICAlW2Z0bXAwXSAgICAgICAgXG5cdCIKICAgICAidWx3ICAgICAgICAlW2xvdzMy
XSwgICAweDAwKCVbcHJlZF9wdHJdKSAgICAgICAgICAgICAgIFxuXHQiCiAgICAgIm10YzEgICAg
ICAgJVtsb3czMl0sICAgJVtmdG1wMV0gICAgICAgICAgICAgICAgICAgICAgICBcblx0IgpAQCAt
MjQ0LDkgKzI1MCw5IEBAIHZvaWQgdnA4X2RjX29ubHlfaWRjdF9hZGRfbW1pKGludDE2X3QgaW5w
dXRfZGMsIHVuc2lnbmVkIGNoYXIgKnByZWRfcHRyLAogICAgICJnc3N3cmMxICAgICVbZnRtcDFd
LCAgIDB4MDAoJVtkc3RfcHRyXSkgICAgICAgICAgICAgICAgXG5cdCIKICAgICA6IFtmdG1wMF0i
PSZmIihmdG1wWzBdKSwgW2Z0bXAxXSI9JmYiKGZ0bXBbMV0pLCBbZnRtcDJdIj0mZiIoZnRtcFsy
XSksCiAgICAgICBbZnRtcDNdIj0mZiIoZnRtcFszXSksIFtmdG1wNF0iPSZmIihmdG1wWzRdKSwg
W2xvdzMyXSI9JnIiKGxvdzMyKSwKLSAgICAgIFtkc3RfcHRyXSIrJnIiKGRzdF9wdHIpLCBbcHJl
ZF9wdHJdIismciIocHJlZF9wdHIpCisgICAgICBbZHN0X3B0cl0iKyZyIihkc3RfcHRyKSwgW3By
ZWRfcHRyXSIrJnIiKHByZWRfcHRyKSwgW2ExXSI9JmYiKGExKQogICAgIDogW2RzdF9zdHJpZGVd
InIiKChtaXBzX3JlZylkc3Rfc3RyaWRlKSwKLSAgICAgIFtwcmVkX3N0cmlkZV0iciIoKG1pcHNf
cmVnKXByZWRfc3RyaWRlKSwgW2ExXSJmIihhMSkKKyAgICAgIFtwcmVkX3N0cmlkZV0iciIoKG1p
cHNfcmVnKXByZWRfc3RyaWRlKSwgW2EwXSJyIihhMCkKICAgICA6ICJtZW1vcnkiCiAgICk7CiB9
CkBAIC0yNTQsMTQgKzI2MCwxNSBAQCB2b2lkIHZwOF9kY19vbmx5X2lkY3RfYWRkX21taShpbnQx
Nl90IGlucHV0X2RjLCB1bnNpZ25lZCBjaGFyICpwcmVkX3B0ciwKIHZvaWQgdnA4X3Nob3J0X2lu
dl93YWxzaDR4NF9tbWkoaW50MTZfdCAqaW5wdXQsIGludDE2X3QgKm1iX2RxY29lZmYpIHsKICAg
aW50IGk7CiAgIGludDE2X3Qgb3V0cHV0WzE2XTsKLSAgZG91YmxlIGZ0bXBbMTJdOwotICB1aW50
MzJfdCB0bXBbMV07Ci0gIERFQ0xBUkVfQUxJR05FRCg4LCBjb25zdCB1aW50NjRfdCwgZmZfcGhf
MDMpID0geyAweDAwMDMwMDAzMDAwMzAwMDNVTEwgfTsKKyAgZG91YmxlIGZmX3BoXzAzLCBmdG1w
WzEyXTsKKyAgdWludDY0X3QgdG1wWzFdOwogCiAgIF9fYXNtX18gdm9sYXRpbGUgKAorICAgICJk
bGkgICAgICAgICVbdG1wMF0sICAgIDB4MDAwMzAwMDMwMDAzMDAwMyAgICAgICAgICAgICAgICAg
IFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9waF8wM10gICAgICAgICAg
ICAgICAgICAgICAgICAgXG5cdCIKICAgICBNTUlfTEkoJVt0bXAwXSwgMHgwMykKLSAgICAieG9y
ICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBc
blx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDExXSAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0s
ICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKKyAgICAiZG10YzEgICAgICAlW3RtcDBd
LCAgICAlW2Z0bXAxMV0gICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJnc2xk
bGMxICAgICVbZnRtcDFdLCAgIDB4MDcoJVtpcF0pICAgICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCiAgICAgImdzbGRyYzEgICAgJVtmdG1wMV0sICAgMHgwMCglW2lwXSkgICAgICAgICAgICAg
ICAgICAgICAgICAgXG5cdCIKICAgICAiZ3NsZGxjMSAgICAlW2Z0bXAyXSwgICAweDBmKCVbaXBd
KSAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgpAQCAtMzE3LDggKzMyNCw4IEBAIHZvaWQg
dnA4X3Nob3J0X2ludl93YWxzaDR4NF9tbWkoaW50MTZfdCAqaW5wdXQsIGludDE2X3QgKm1iX2Rx
Y29lZmYpIHsKICAgICAgIFtmdG1wM10iPSZmIihmdG1wWzNdKSwgW2Z0bXA0XSI9JmYiKGZ0bXBb
NF0pLCBbZnRtcDVdIj0mZiIoZnRtcFs1XSksCiAgICAgICBbZnRtcDZdIj0mZiIoZnRtcFs2XSks
IFtmdG1wN10iPSZmIihmdG1wWzddKSwgW2Z0bXA4XSI9JmYiKGZ0bXBbOF0pLAogICAgICAgW2Z0
bXA5XSI9JmYiKGZ0bXBbOV0pLCBbZnRtcDEwXSI9JmYiKGZ0bXBbMTBdKSwKLSAgICAgIFtmdG1w
MTFdIj0mZiIoZnRtcFsxMV0pLCBbdG1wMF0iPSZyIih0bXBbMF0pCi0gICAgOiBbaXBdInIiKGlu
cHV0KSwgW29wXSJyIihvdXRwdXQpLCBbZmZfcGhfMDNdImYiKGZmX3BoXzAzKQorICAgICAgW2Z0
bXAxMV0iPSZmIihmdG1wWzExXSksIFt0bXAwXSI9JnIiKHRtcFswXSksIFtmZl9waF8wM10iPSZm
IihmZl9waF8wMykKKyAgICA6IFtpcF0iciIoaW5wdXQpLCBbb3BdInIiKG91dHB1dCkKICAgICA6
ICJtZW1vcnkiCiAgICk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9taXBz
L21taS9sb29wZmlsdGVyX2ZpbHRlcnNfbW1pLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWlw
cy9tbWkvbG9vcGZpbHRlcl9maWx0ZXJzX21taS5jCmluZGV4IGYyMTgyZjk1YzljNmU5NzM3MzQw
NDUxZDllNmQ3ZWViZmY5ZGMwYjMuLmEwN2E3ZTNiNDFkMzM2MmZiZDRmNGQwNjA4N2YzYWFlZWU0
ZDNmYjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9taXBzL21taS9sb29wZmls
dGVyX2ZpbHRlcnNfbW1pLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL21pcHMvbW1pL2xv
b3BmaWx0ZXJfZmlsdGVyc19tbWkuYwpAQCAtMTMsMjggKzEzLDI1IEBACiAjaW5jbHVkZSAidnA4
L2NvbW1vbi9vbnl4Y19pbnQuaCIKICNpbmNsdWRlICJ2cHhfcG9ydHMvYXNtZGVmc19tbWkuaCIK
IAotREVDTEFSRV9BTElHTkVEKDgsIHN0YXRpYyBjb25zdCB1aW50NjRfdCwgZmZfcGhfMDEpID0g
eyAweDAwMDEwMDAxMDAwMTAwMDFVTEwgfTsKLURFQ0xBUkVfQUxJR05FRCg4LCBzdGF0aWMgY29u
c3QgdWludDY0X3QsCi0gICAgICAgICAgICAgICAgZmZfcGhfMDAzZikgPSB7IDB4MDAzZjAwM2Yw
MDNmMDAzZlVMTCB9OwotREVDTEFSRV9BTElHTkVEKDgsIHN0YXRpYyBjb25zdCB1aW50NjRfdCwK
LSAgICAgICAgICAgICAgICBmZl9waF8wOTAwKSA9IHsgMHgwOTAwMDkwMDA5MDAwOTAwVUxMIH07
Ci1ERUNMQVJFX0FMSUdORUQoOCwgc3RhdGljIGNvbnN0IHVpbnQ2NF90LAotICAgICAgICAgICAg
ICAgIGZmX3BoXzEyMDApID0geyAweDEyMDAxMjAwMTIwMDEyMDBVTEwgfTsKLURFQ0xBUkVfQUxJ
R05FRCg4LCBzdGF0aWMgY29uc3QgdWludDY0X3QsCi0gICAgICAgICAgICAgICAgZmZfcGhfMWIw
MCkgPSB7IDB4MWIwMDFiMDAxYjAwMWIwMFVMTCB9OwotREVDTEFSRV9BTElHTkVEKDgsIHN0YXRp
YyBjb25zdCB1aW50NjRfdCwgZmZfcGJfZmUpID0geyAweGZlZmVmZWZlZmVmZWZlZmVVTEwgfTsK
LURFQ0xBUkVfQUxJR05FRCg4LCBzdGF0aWMgY29uc3QgdWludDY0X3QsIGZmX3BiXzgwKSA9IHsg
MHg4MDgwODA4MDgwODA4MDgwVUxMIH07Ci1ERUNMQVJFX0FMSUdORUQoOCwgc3RhdGljIGNvbnN0
IHVpbnQ2NF90LCBmZl9wYl8wNCkgPSB7IDB4MDQwNDA0MDQwNDA0MDQwNFVMTCB9OwotREVDTEFS
RV9BTElHTkVEKDgsIHN0YXRpYyBjb25zdCB1aW50NjRfdCwgZmZfcGJfMDMpID0geyAweDAzMDMw
MzAzMDMwMzAzMDNVTEwgfTsKLURFQ0xBUkVfQUxJR05FRCg4LCBzdGF0aWMgY29uc3QgdWludDY0
X3QsIGZmX3BiXzAxKSA9IHsgMHgwMTAxMDEwMTAxMDEwMTAxVUxMIH07Ci0KIHZvaWQgdnA4X2xv
b3BfZmlsdGVyX2hvcml6b250YWxfZWRnZV9tbWkoCiAgICAgdW5zaWduZWQgY2hhciAqc3JjX3B0
ciwgaW50IHNyY19waXhlbF9zdGVwLCBjb25zdCB1bnNpZ25lZCBjaGFyICpibGltaXQsCiAgICAg
Y29uc3QgdW5zaWduZWQgY2hhciAqbGltaXQsIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnRocmVzaCwg
aW50IGNvdW50KSB7Ci0gIHVpbnQzMl90IHRtcFsxXTsKKyAgdWludDY0X3QgdG1wWzFdOwogICBt
aXBzX3JlZyBhZGRyWzJdOwogICBkb3VibGUgZnRtcFsxMl07CisgIGRvdWJsZSBmZl9waF8wMSwg
ZmZfcGJfZmUsIGZmX3BiXzgwLCBmZl9wYl8wNCwgZmZfcGJfMDM7CisgIC8qIGNsYW5nLWZvcm1h
dCBvZmYgKi8KICAgX19hc21fXyB2b2xhdGlsZSAoCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwg
ICAgMHgwMDAxMDAwMTAwMDEwMDAxICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRt
dGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9waF8wMV0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHhmZWZlZmVmZWZlZmVmZWZl
ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAg
JVtmZl9wYl9mZV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAg
ICAgICAgJVt0bXAwXSwgICAgMHg4MDgwODA4MDgwODA4MDgwICAgICAgICAgICAgICAgICAgICAg
IFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl84MF0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgw
NDA0MDQwNDA0MDQwNDA0ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAg
ICAgJVt0bXAwXSwgICAgJVtmZl9wYl8wNF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwMzAzMDMwMzAzMDMwMzAzICAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9w
Yl8wM10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgIjE6ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQi
CiAgICAgImdzbGRsYzEgICAgJVtmdG1wMTBdLCAgMHgwNyglW2xpbWl0XSkgICAgICAgICAgICAg
ICAgICAgICAgICAgIFxuXHQiCiAgICAgImdzbGRyYzEgICAgJVtmdG1wMTBdLCAgMHgwMCglW2xp
bWl0XSkgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCkBAIC01NiwxNCArNTMsMTQgQEAg
dm9pZCB2cDhfbG9vcF9maWx0ZXJfaG9yaXpvbnRhbF9lZGdlX21taSgKICAgICAiZ3NsZHJjMSAg
ICAlW2Z0bXA0XSwgICAweDAwKCVbYWRkcjFdKSAgICAgICAgICAgICAgICAgICAgICAgICAgXG5c
dCIKICAgICAicGFzdWJ1YiAgICAlW2Z0bXAxXSwgICAlW2Z0bXAzXSwgICAgICAgICAgICVbZnRt
cDRdICAgICAgICAgICAgXG5cdCIKICAgICAicHN1YnVzYiAgICAlW2Z0bXAxXSwgICAlW2Z0bXAx
XSwgICAgICAgICAgICVbZnRtcDEwXSAgICAgICAgICAgXG5cdCIKLSAgICAib3IgICAgICAgICAl
W2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDFdICAgICAgICAgICAgXG5cdCIK
KyAgICAicG9yICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDFd
ICAgICAgICAgICAgXG5cdCIKIAogICAgIE1NSV9TVUJVKCVbYWRkcjFdLCAlW3NyY19wdHJdLCAl
W3NyY19waXhlbF9zdGVwXSkKICAgICAiZ3NsZGxjMSAgICAlW2Z0bXA1XSwgICAweDA3KCVbYWRk
cjFdKSAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAiZ3NsZHJjMSAgICAlW2Z0
bXA1XSwgICAweDAwKCVbYWRkcjFdKSAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAg
ICAicGFzdWJ1YiAgICAlW2Z0bXA5XSwgICAlW2Z0bXA0XSwgICAgICAgICAgICVbZnRtcDVdICAg
ICAgICAgICAgXG5cdCIKICAgICAicHN1YnVzYiAgICAlW2Z0bXAxXSwgICAlW2Z0bXA5XSwgICAg
ICAgICAgICVbZnRtcDEwXSAgICAgICAgICAgXG5cdCIKLSAgICAib3IgICAgICAgICAlW2Z0bXAw
XSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDFdICAgICAgICAgICAgXG5cdCIKKyAgICAi
cG9yICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDFdICAgICAg
ICAgICAgXG5cdCIKIAogICAgICJnc2xkbGMxICAgICVbZnRtcDZdLCAgIDB4MDcoJVtzcmNfcHRy
XSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJnc2xkcmMxICAgICVbZnRtcDZd
LCAgIDB4MDAoJVtzcmNfcHRyXSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgpAQCAtNzIs
MzUgKzY5LDM1IEBAIHZvaWQgdnA4X2xvb3BfZmlsdGVyX2hvcml6b250YWxfZWRnZV9tbWkoCiAg
ICAgImdzbGRyYzEgICAgJVtmdG1wN10sICAgMHgwMCglW2FkZHIwXSkgICAgICAgICAgICAgICAg
ICAgICAgICAgIFxuXHQiCiAgICAgInBhc3VidWIgICAgJVtmdG1wMTFdLCAgJVtmdG1wN10sICAg
ICAgICAgICAlW2Z0bXA2XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJ1c2IgICAgJVtmdG1w
MV0sICAgJVtmdG1wMTFdLCAgICAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCi0gICAg
Im9yICAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAxXSAgICAg
ICAgICAgIFxuXHQiCisgICAgInBvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAg
ICAgICAlW2Z0bXAxXSAgICAgICAgICAgIFxuXHQiCiAKICAgICBNTUlfQUREVSglW2FkZHIxXSwg
JVtzcmNfcHRyXSwgJVtzcmNfcGl4ZWxfc3RlcF94Ml0pCiAgICAgImdzbGRsYzEgICAgJVtmdG1w
OF0sICAgMHgwNyglW2FkZHIxXSkgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAg
ImdzbGRyYzEgICAgJVtmdG1wOF0sICAgMHgwMCglW2FkZHIxXSkgICAgICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCiAgICAgInBhc3VidWIgICAgJVtmdG1wMV0sICAgJVtmdG1wOF0sICAgICAg
ICAgICAlW2Z0bXA3XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJ1c2IgICAgJVtmdG1wMV0s
ICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCi0gICAgIm9y
ICAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAxXSAgICAgICAg
ICAgIFxuXHQiCisgICAgInBvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAg
ICAlW2Z0bXAxXSAgICAgICAgICAgIFxuXHQiCiAKICAgICBNTUlfQUREVSglW2FkZHIxXSwgJVth
ZGRyMF0sICVbc3JjX3BpeGVsX3N0ZXBfeDJdKQogICAgICJnc2xkbGMxICAgICVbZnRtcDJdLCAg
IDB4MDcoJVthZGRyMV0pICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJnc2xk
cmMxICAgICVbZnRtcDJdLCAgIDB4MDAoJVthZGRyMV0pICAgICAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgogICAgICJwYXN1YnViICAgICVbZnRtcDFdLCAgICVbZnRtcDJdLCAgICAgICAgICAg
JVtmdG1wOF0gICAgICAgICAgICBcblx0IgogICAgICJwc3VidXNiICAgICVbZnRtcDFdLCAgICVb
ZnRtcDFdLCAgICAgICAgICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0IgotICAgICJvciAgICAg
ICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBc
blx0IgorICAgICJwb3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtm
dG1wMV0gICAgICAgICAgICBcblx0IgogCiAgICAgInBhc3VidWIgICAgJVtmdG1wMV0sICAgJVtm
dG1wNV0sICAgICAgICAgICAlW2Z0bXA2XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR1c2Ig
ICAgJVtmdG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAxXSAgICAgICAgICAgIFxu
XHQiCiAgICAgInBhc3VidWIgICAgJVtmdG1wMl0sICAgJVtmdG1wNF0sICAgICAgICAgICAlW2Z0
bXA3XSAgICAgICAgICAgIFxuXHQiCi0gICAgImFuZCAgICAgICAgJVtmdG1wMl0sICAgJVtmdG1w
Ml0sICAgICAgICAgICAlW2ZmX3BiX2ZlXSAgICAgICAgIFxuXHQiCi0gICAgImxpICAgICAgICAg
JVt0bXAwXSwgICAgMHgwMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQi
Ci0gICAgIm10YzEgICAgICAgJVt0bXAwXSwgICAgJVtmdG1wMTBdICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFxuXHQiCisgICAgInBhbmQgICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0s
ICAgICAgICAgICAlW2ZmX3BiX2ZlXSAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0
bXAwXSwgICAgMHgwMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisg
ICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmdG1wMTBdICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFxuXHQiCiAgICAgInBzcmxoICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAg
ICAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR1c2IgICAgJVtmdG1w
MV0sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAyXSAgICAgICAgICAgIFxuXHQiCiAgICAg
ImdzbGRsYzEgICAgJVtmdG1wMTBdLCAgMHgwNyglW2JsaW1pdF0pICAgICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCiAgICAgImdzbGRyYzEgICAgJVtmdG1wMTBdLCAgMHgwMCglW2JsaW1pdF0p
ICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJ1c2IgICAgJVtmdG1wMV0s
ICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCi0gICAgIm9y
ICAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAxXSAgICAgICAg
ICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wMTBdLCAgJVtmdG1wMTBdLCAgICAgICAg
ICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCisgICAgInBvciAgICAgICAgJVtmdG1wMF0sICAg
JVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAxXSAgICAgICAgICAgIFxuXHQiCisgICAgInB4b3Ig
ICAgICAgJVtmdG1wMTBdLCAgJVtmdG1wMTBdLCAgICAgICAgICAlW2Z0bXAxMF0gICAgICAgICAg
IFxuXHQiCiAgICAgInBjbXBlcWIgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAl
W2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCiAKICAgICAiZ3NsZGxjMSAgICAlW2Z0bXAxMF0sICAw
eDA3KCVbdGhyZXNoXSkgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKQEAgLTEwOCw3MiAr
MTA1LDcyIEBAIHZvaWQgdnA4X2xvb3BfZmlsdGVyX2hvcml6b250YWxfZWRnZV9tbWkoCiAgICAg
InBzdWJ1c2IgICAgJVtmdG1wMV0sICAgJVtmdG1wOV0sICAgICAgICAgICAlW2Z0bXAxMF0gICAg
ICAgICAgIFxuXHQiCiAgICAgInBzdWJ1c2IgICAgJVtmdG1wMl0sICAgJVtmdG1wMTFdLCAgICAg
ICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCiAgICAgInBhZGRiICAgICAgJVtmdG1wMV0s
ICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAyXSAgICAgICAgICAgIFxuXHQiCi0gICAgInhv
ciAgICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2Z0bXAyXSAgICAgICAg
ICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAg
ICAlW2Z0bXAyXSAgICAgICAgICAgIFxuXHQiCiAgICAgInBjbXBlcWIgICAgJVtmdG1wMV0sICAg
JVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAyXSAgICAgICAgICAgIFxuXHQiCiAgICAgInBjbXBl
cWIgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2Z0bXAyXSAgICAgICAgICAg
IFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAl
W2Z0bXAyXSAgICAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMV0sICAgJVtm
dG1wMV0sICAgICAgICAgICAlW2Z0bXAyXSAgICAgICAgICAgIFxuXHQiCiAKLSAgICAieG9yICAg
ICAgICAlW2Z0bXA0XSwgICAlW2Z0bXA0XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAg
XG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVb
ZmZfcGJfODBdICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA2XSwgICAlW2Z0
bXA2XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAg
ICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5c
dCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA0XSwgICAlW2Z0bXA0XSwgICAgICAgICAgICVbZmZf
cGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1
XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAl
W2Z0bXA2XSwgICAlW2Z0bXA2XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIK
KyAgICAicHhvciAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZmZfcGJf
ODBdICAgICAgICAgXG5cdCIKIAogICAgICJwc3Vic2IgICAgICVbZnRtcDJdLCAgICVbZnRtcDRd
LCAgICAgICAgICAgJVtmdG1wN10gICAgICAgICAgICBcblx0IgotICAgICJhbmQgICAgICAgICVb
ZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0Igor
ICAgICJwYW5kICAgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wMV0g
ICAgICAgICAgICBcblx0IgogICAgICJwc3Vic2IgICAgICVbZnRtcDNdLCAgICVbZnRtcDZdLCAg
ICAgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgogICAgICJwYWRkc2IgICAgICVbZnRt
cDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wM10gICAgICAgICAgICBcblx0IgogICAg
ICJwYWRkc2IgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wM10gICAg
ICAgICAgICBcblx0IgogICAgICJwYWRkc2IgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAg
ICAgICAgJVtmdG1wM10gICAgICAgICAgICBcblx0IgotICAgICJhbmQgICAgICAgICVbZnRtcDJd
LCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgorICAgICJw
YW5kICAgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wMF0gICAgICAg
ICAgICBcblx0IgogCiAgICAgInBhZGRzYiAgICAgJVtmdG1wOF0sICAgJVtmdG1wMl0sICAgICAg
ICAgICAlW2ZmX3BiXzAzXSAgICAgICAgIFxuXHQiCiAgICAgInBhZGRzYiAgICAgJVtmdG1wOV0s
ICAgJVtmdG1wMl0sICAgICAgICAgICAlW2ZmX3BiXzA0XSAgICAgICAgIFxuXHQiCiAKLSAgICAi
eG9yICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDBdICAgICAg
ICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXAxMV0sICAlW2Z0bXAxMV0sICAgICAg
ICAgICVbZnRtcDExXSAgICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAwXSwg
ICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKKyAgICAicHhv
ciAgICAgICAlW2Z0bXAxMV0sICAlW2Z0bXAxMV0sICAgICAgICAgICVbZnRtcDExXSAgICAgICAg
ICAgXG5cdCIKICAgICAicHVucGNrbGJoICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAg
ICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIKICAgICAicHVucGNraGJoICAlW2Z0bXAxMV0sICAl
W2Z0bXAxMV0sICAgICAgICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIKIAotICAgICJsaSAg
ICAgICAgICVbdG1wMF0sICAgIDB4MGIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDEwXSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4
MGIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAg
ICAgICVbdG1wMF0sICAgICVbZnRtcDEwXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
blx0IgogICAgICJwc3JhaCAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtm
dG1wMTBdICAgICAgICAgICBcblx0IgogICAgICJwc3JhaCAgICAgICVbZnRtcDExXSwgICVbZnRt
cDExXSwgICAgICAgICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0IgogICAgICJwYWNrc3NoYiAg
ICVbZnRtcDhdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0
IgotICAgICJ4b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1w
MF0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBd
LCAgICAgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgogICAgICJwdW5wY2tsYmggICVb
ZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0Igog
ICAgICJwc3JhaCAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMTBd
ICAgICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRtcDExXSwgICVbZnRtcDExXSwg
ICAgICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRt
cDExXSwgICVbZnRtcDExXSwgICAgICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0IgogICAg
ICJwdW5wY2toYmggICVbZnRtcDldLCAgICVbZnRtcDExXSwgICAgICAgICAgJVtmdG1wOV0gICAg
ICAgICAgICBcblx0IgogICAgICJwc3JhaCAgICAgICVbZnRtcDldLCAgICVbZnRtcDldLCAgICAg
ICAgICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0IgogICAgICJwYWRkc2ggICAgICVbZnRtcDEx
XSwgICVbZnRtcDBdLCAgICAgICAgICAgJVtmZl9waF8wMV0gICAgICAgICBcblx0IgogICAgICJw
YWNrc3NoYiAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wOV0gICAgICAg
ICAgICBcblx0IgogICAgICJwYWRkc2ggICAgICVbZnRtcDldLCAgICVbZnRtcDldLCAgICAgICAg
ICAgJVtmZl9waF8wMV0gICAgICAgICBcblx0IgogCi0gICAgImxpICAgICAgICAgJVt0bXAwXSwg
ICAgMHgwMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCi0gICAgIm10
YzEgICAgICAgJVt0bXAwXSwgICAgJVtmdG1wMTBdICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwMSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAg
JVtmdG1wMTBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgInBzcmFo
ICAgICAgJVtmdG1wMTFdLCAgJVtmdG1wMTFdLCAgICAgICAgICAlW2Z0bXAxMF0gICAgICAgICAg
IFxuXHQiCiAgICAgInBzcmFoICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgICAgICAgICAl
W2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCiAgICAgInBhY2tzc2hiICAgJVtmdG1wMTFdLCAgJVtm
dG1wMTFdLCAgICAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBhbmRuICAg
ICAgJVtmdG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAxMV0gICAgICAgICAgIFxu
XHQiCiAgICAgInBhZGRzYiAgICAgJVtmdG1wNV0sICAgJVtmdG1wNV0sICAgICAgICAgICAlW2Z0
bXA4XSAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wNV0sICAgJVtmdG1w
NV0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAg
JVtmdG1wNV0sICAgJVtmdG1wNV0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQi
CiAKICAgICBNTUlfU1VCVSglW2FkZHIxXSwgJVtzcmNfcHRyXSwgJVtzcmNfcGl4ZWxfc3RlcF0p
CiAgICAgImdzc2RsYzEgICAgJVtmdG1wNV0sICAgMHgwNyglW2FkZHIxXSkgICAgICAgICAgICAg
ICAgICAgICAgICAgIFxuXHQiCiAgICAgImdzc2RyYzEgICAgJVtmdG1wNV0sICAgMHgwMCglW2Fk
ZHIxXSkgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgTU1JX1NVQlUoJVthZGRy
MV0sICVbc3JjX3B0cl0sICVbc3JjX3BpeGVsX3N0ZXBfeDJdKQogICAgICJwYWRkc2IgICAgICVb
ZnRtcDRdLCAgICVbZnRtcDRdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0Igot
ICAgICJ4b3IgICAgICAgICVbZnRtcDRdLCAgICVbZnRtcDRdLCAgICAgICAgICAgJVtmZl9wYl84
MF0gICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDRdLCAgICVbZnRtcDRdLCAg
ICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgogICAgICJnc3NkbGMxICAgICVbZnRt
cDRdLCAgIDB4MDcoJVthZGRyMV0pICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAg
ICJnc3NkcmMxICAgICVbZnRtcDRdLCAgIDB4MDAoJVthZGRyMV0pICAgICAgICAgICAgICAgICAg
ICAgICAgICBcblx0IgogCiAgICAgInBzdWJzYiAgICAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAg
ICAgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1w
Nl0sICAgJVtmdG1wNl0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAg
InB4b3IgICAgICAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAg
ICAgICAgIFxuXHQiCiAgICAgImdzc2RsYzEgICAgJVtmdG1wNl0sICAgMHgwNyglW3NyY19wdHJd
KSAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImdzc2RyYzEgICAgJVtmdG1wNl0s
ICAgMHgwMCglW3NyY19wdHJdKSAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAKICAgICAi
cHN1YnNiICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZnRtcDFdICAgICAg
ICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAg
ICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA3XSwg
ICAlW2Z0bXA3XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKICAgICAiZ3Nz
ZGxjMSAgICAlW2Z0bXA3XSwgICAweDA3KCVbYWRkcjBdKSAgICAgICAgICAgICAgICAgICAgICAg
ICAgXG5cdCIKICAgICAiZ3NzZHJjMSAgICAlW2Z0bXA3XSwgICAweDAwKCVbYWRkcjBdKSAgICAg
ICAgICAgICAgICAgICAgICAgICAgXG5cdCIKIApAQCAtMTg4LDE3ICsxODUsMTggQEAgdm9pZCB2
cDhfbG9vcF9maWx0ZXJfaG9yaXpvbnRhbF9lZGdlX21taSgKICAgICAgIFtmdG1wMTBdIj0mZiIo
ZnRtcFsxMF0pLCAgICAgICAgICAgIFtmdG1wMTFdIj0mZiIoZnRtcFsxMV0pLAogICAgICAgW3Rt
cDBdIj0mciIodG1wWzBdKSwKICAgICAgIFthZGRyMF0iPSZyIihhZGRyWzBdKSwgICAgICAgICAg
ICBbYWRkcjFdIj0mciIoYWRkclsxXSksCi0gICAgICBbc3JjX3B0cl0iKyZyIihzcmNfcHRyKSwg
ICAgICAgICAgW2NvdW50XSIrJnIiKGNvdW50KQorICAgICAgW3NyY19wdHJdIismciIoc3JjX3B0
ciksICAgICAgICAgIFtjb3VudF0iKyZyIihjb3VudCksCisgICAgICBbZmZfcGhfMDFdIj0mZiIo
ZmZfcGhfMDEpLCAgICAgICAgW2ZmX3BiX2ZlXSI9JmYiKGZmX3BiX2ZlKSwKKyAgICAgIFtmZl9w
Yl84MF0iPSZmIihmZl9wYl84MCksICAgICAgICBbZmZfcGJfMDRdIj0mZiIoZmZfcGJfMDQpLAor
ICAgICAgW2ZmX3BiXzAzXSI9JmYiKGZmX3BiXzAzKQogICAgIDogW2xpbWl0XSJyIihsaW1pdCks
ICAgICAgICAgICAgICAgIFtibGltaXRdInIiKGJsaW1pdCksCiAgICAgICBbdGhyZXNoXSJyIih0
aHJlc2gpLAogICAgICAgW3NyY19waXhlbF9zdGVwXSJyIigobWlwc19yZWcpc3JjX3BpeGVsX3N0
ZXApLAogICAgICAgW3NyY19waXhlbF9zdGVwX3gyXSJyIigobWlwc19yZWcpKHNyY19waXhlbF9z
dGVwPDwxKSksCi0gICAgICBbc3JjX3BpeGVsX3N0ZXBfeDRdInIiKChtaXBzX3JlZykoc3JjX3Bp
eGVsX3N0ZXA8PDIpKSwKLSAgICAgIFtmZl9waF8wMV0iZiIoZmZfcGhfMDEpLCAgICAgICAgICBb
ZmZfcGJfZmVdImYiKGZmX3BiX2ZlKSwKLSAgICAgIFtmZl9wYl84MF0iZiIoZmZfcGJfODApLCAg
ICAgICAgICBbZmZfcGJfMDRdImYiKGZmX3BiXzA0KSwKLSAgICAgIFtmZl9wYl8wM10iZiIoZmZf
cGJfMDMpCisgICAgICBbc3JjX3BpeGVsX3N0ZXBfeDRdInIiKChtaXBzX3JlZykoc3JjX3BpeGVs
X3N0ZXA8PDIpKQogICAgIDogIm1lbW9yeSIKICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICov
CiB9CiAKIHZvaWQgdnA4X2xvb3BfZmlsdGVyX3ZlcnRpY2FsX2VkZ2VfbW1pKHVuc2lnbmVkIGNo
YXIgKnNyY19wdHIsCkBAIC0yMDYsMTEgKzIwNCwyMyBAQCB2b2lkIHZwOF9sb29wX2ZpbHRlcl92
ZXJ0aWNhbF9lZGdlX21taSh1bnNpZ25lZCBjaGFyICpzcmNfcHRyLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqYmxpbWl0LAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAq
bGltaXQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNp
Z25lZCBjaGFyICp0aHJlc2gsIGludCBjb3VudCkgewotICB1aW50MzJfdCB0bXBbMV07CisgIHVp
bnQ2NF90IHRtcFsxXTsKICAgbWlwc19yZWcgYWRkclsyXTsKICAgZG91YmxlIGZ0bXBbMTNdOwor
ICBkb3VibGUgZmZfcGJfZmUsIGZmX3BoXzAxLCBmZl9wYl8wMywgZmZfcGJfMDQsIGZmX3BiXzgw
OwogCisgIC8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KICAgX19hc21fXyB2b2xhdGlsZSAoCisgICAg
ImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHhmZWZlZmVmZWZlZmVmZWZlICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl9mZV0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwg
ICAgMHgwMDAxMDAwMTAwMDEwMDAxICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRt
dGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9waF8wMV0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwMzAzMDMwMzAzMDMwMzAz
ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAg
JVtmZl9wYl8wM10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAg
ICAgICAgJVt0bXAwXSwgICAgMHgwNDA0MDQwNDA0MDQwNDA0ICAgICAgICAgICAgICAgICAgICAg
IFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl8wNF0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHg4
MDgwODA4MDgwODA4MDgwICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAg
ICAgJVt0bXAwXSwgICAgJVtmZl9wYl84MF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCiAgICAgTU1JX1NMTCglW3RtcDBdLCAlW3NyY19waXhlbF9zdGVwXSwgMHgwMikKICAgICBN
TUlfQUREVSglW3NyY19wdHJdLCAlW3NyY19wdHJdLCAlW3RtcDBdKQogICAgIE1NSV9TVUJVKCVb
c3JjX3B0cl0sICVbc3JjX3B0cl0sIDB4MDQpCkBAIC0yODgsMjMgKzI5OCwyMyBAQCB2b2lkIHZw
OF9sb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX21taSh1bnNpZ25lZCBjaGFyICpzcmNfcHRyLAog
ICAgIC8qIGFicyAocTItcTEpICovCiAgICAgInBhc3VidWIgICAgJVtmdG1wN10sICAgJVtmdG1w
MTFdLCAgICAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJ1c2IgICAg
JVtmdG1wN10sICAgJVtmdG1wN10sICAgICAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQi
Ci0gICAgIm9yICAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA3
XSAgICAgICAgICAgIFxuXHQiCisgICAgInBvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0s
ICAgICAgICAgICAlW2Z0bXA3XSAgICAgICAgICAgIFxuXHQiCiAgICAgLyogZnRtcDM6IGFicyhx
MS1xMCkgKi8KICAgICAicGFzdWJ1YiAgICAlW2Z0bXAzXSwgICAlW2Z0bXAxMF0sICAgICAgICAg
ICVbZnRtcDldICAgICAgICAgICAgXG5cdCIKICAgICAicHN1YnVzYiAgICAlW2Z0bXA3XSwgICAl
W2Z0bXAzXSwgICAgICAgICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIKLSAgICAib3IgICAg
ICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDddICAgICAgICAgICAg
XG5cdCIKKyAgICAicG9yICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVb
ZnRtcDddICAgICAgICAgICAgXG5cdCIKICAgICAvKiBmdG1wNDogYWJzKHAxLXAwKSAqLwogICAg
ICJwYXN1YnViICAgICVbZnRtcDRdLCAgICVbZnRtcDVdLCAgICAgICAgICAgJVtmdG1wNl0gICAg
ICAgICAgICBcblx0IgogICAgICJwc3VidXNiICAgICVbZnRtcDddLCAgICVbZnRtcDRdLCAgICAg
ICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgotICAgICJvciAgICAgICAgICVbZnRtcDBd
LCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wN10gICAgICAgICAgICBcblx0IgorICAgICJw
b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wN10gICAgICAg
ICAgICBcblx0IgogICAgIC8qIGFicyAocDItcDEpICovCiAgICAgInBhc3VidWIgICAgJVtmdG1w
N10sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2Z0bXA1XSAgICAgICAgICAgIFxuXHQiCiAgICAg
InBzdWJ1c2IgICAgJVtmdG1wN10sICAgJVtmdG1wN10sICAgICAgICAgICAlW2Z0bXA4XSAgICAg
ICAgICAgIFxuXHQiCi0gICAgIm9yICAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAg
ICAgICAlW2Z0bXA3XSAgICAgICAgICAgIFxuXHQiCisgICAgInBvciAgICAgICAgJVtmdG1wMF0s
ICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA3XSAgICAgICAgICAgIFxuXHQiCiAgICAgLyog
YWJzIChwMy1wMikgKi8KICAgICAicGFzdWJ1YiAgICAlW2Z0bXA3XSwgICAlW2Z0bXAxXSwgICAg
ICAgICAgICVbZnRtcDJdICAgICAgICAgICAgXG5cdCIKICAgICAicHN1YnVzYiAgICAlW2Z0bXA3
XSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIKLSAgICAi
b3IgICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDddICAgICAg
ICAgICAgXG5cdCIKKyAgICAicG9yICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAg
ICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIKIAogICAgICJnc2xkbGMxICAgICVbZnRtcDhd
LCAgIDB4MDcoJVtibGltaXRdKSAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJn
c2xkcmMxICAgICVbZnRtcDhdLCAgIDB4MDAoJVtibGltaXRdKSAgICAgICAgICAgICAgICAgICAg
ICAgICBcblx0IgpAQCAtMzE0LDE0ICszMjQsMTQgQEAgdm9pZCB2cDhfbG9vcF9maWx0ZXJfdmVy
dGljYWxfZWRnZV9tbWkodW5zaWduZWQgY2hhciAqc3JjX3B0ciwKICAgICAicGFkZHVzYiAgICAl
W2Z0bXAxMV0sICAlW2Z0bXAxMV0sICAgICAgICAgICVbZnRtcDExXSAgICAgICAgICAgXG5cdCIK
ICAgICAvKiBhYnMgKHAxLXExKSAqLwogICAgICJwYXN1YnViICAgICVbZnRtcDEyXSwgICVbZnRt
cDEwXSwgICAgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgotICAgICJhbmQgICAgICAg
ICVbZnRtcDEyXSwgICVbZnRtcDEyXSwgICAgICAgICAgJVtmZl9wYl9mZV0gICAgICAgICBcblx0
IgotICAgICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4MDEgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDFd
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJwYW5kICAgICAgICVb
ZnRtcDEyXSwgICVbZnRtcDEyXSwgICAgICAgICAgJVtmZl9wYl9mZV0gICAgICAgICBcblx0Igor
ICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4MDEgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRtcDFdICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJwc3JsaCAgICAgICVbZnRt
cDEyXSwgICVbZnRtcDEyXSwgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgogICAg
ICJwYWRkdXNiICAgICVbZnRtcDFdLCAgICVbZnRtcDExXSwgICAgICAgICAgJVtmdG1wMTJdICAg
ICAgICAgICBcblx0IgogICAgICJwc3VidXNiICAgICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAg
ICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgotICAgICJvciAgICAgICAgICVbZnRtcDBd
LCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgotICAgICJ4
b3IgICAgICAgICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAg
ICAgICBcblx0IgorICAgICJwb3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAg
ICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDFdLCAg
ICVbZnRtcDFdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgogICAgIC8qIGZ0
bXAwOm1hc2sgKi8KICAgICAicGNtcGVxYiAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAg
ICAgICVbZnRtcDFdICAgICAgICAgICAgXG5cdCIKIApAQCAtMzMxLDQxICszNDEsNDEgQEAgdm9p
ZCB2cDhfbG9vcF9maWx0ZXJfdmVydGljYWxfZWRnZV9tbWkodW5zaWduZWQgY2hhciAqc3JjX3B0
ciwKICAgICAvKiBmdG1wMzogYWJzKHExLXEwKSAgZnRtcDQ6IGFicyhwMS1wMCkgKi8KICAgICAi
cHN1YnVzYiAgICAlW2Z0bXA0XSwgICAlW2Z0bXA0XSwgICAgICAgICAgICVbZnRtcDhdICAgICAg
ICAgICAgXG5cdCIKICAgICAicHN1YnVzYiAgICAlW2Z0bXAzXSwgICAlW2Z0bXAzXSwgICAgICAg
ICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIKLSAgICAib3IgICAgICAgICAlW2Z0bXAyXSwg
ICAlW2Z0bXA0XSwgICAgICAgICAgICVbZnRtcDNdICAgICAgICAgICAgXG5cdCIKKyAgICAicG9y
ICAgICAgICAlW2Z0bXAyXSwgICAlW2Z0bXA0XSwgICAgICAgICAgICVbZnRtcDNdICAgICAgICAg
ICAgXG5cdCIKICAgICAicGNtcGVxYiAgICAlW2Z0bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgICAg
ICVbZnRtcDFdICAgICAgICAgICAgXG5cdCIKICAgICAicGNtcGVxYiAgICAlW2Z0bXAxXSwgICAl
W2Z0bXAxXSwgICAgICAgICAgICVbZnRtcDFdICAgICAgICAgICAgXG5cdCIKICAgICAvKiBmdG1w
MTpoZXYgKi8KLSAgICAieG9yICAgICAgICAlW2Z0bXAxXSwgICAlW2Z0bXAyXSwgICAgICAgICAg
ICVbZnRtcDFdICAgICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAxXSwgICAl
W2Z0bXAyXSwgICAgICAgICAgICVbZnRtcDFdICAgICAgICAgICAgXG5cdCIKIAotICAgICJ4b3Ig
ICAgICAgICVbZnRtcDEwXSwgICVbZnRtcDEwXSwgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAg
ICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRtcDldLCAgICVbZnRtcDldLCAgICAgICAgICAg
JVtmZl9wYl84MF0gICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRtcDZdLCAgICVb
ZnRtcDZdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgotICAgICJ4b3IgICAg
ICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBc
blx0IgorICAgICJweG9yICAgICAgICVbZnRtcDEwXSwgICVbZnRtcDEwXSwgICAgICAgICAgJVtm
Zl9wYl84MF0gICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDldLCAgICVbZnRt
cDldLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgorICAgICJweG9yICAgICAg
ICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0
IgorICAgICJweG9yICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAgICAgJVtmZl9w
Yl84MF0gICAgICAgICBcblx0IgogCiAgICAgInBzdWJzYiAgICAgJVtmdG1wMl0sICAgJVtmdG1w
NV0sICAgICAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCi0gICAgImFuZCAgICAgICAg
JVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2Z0bXAxXSAgICAgICAgICAgIFxuXHQi
CisgICAgInBhbmQgICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2Z0bXAx
XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJzYiAgICAgJVtmdG1wM10sICAgJVtmdG1wOV0s
ICAgICAgICAgICAlW2Z0bXA2XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBhZGRzYiAgICAgJVtm
dG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCiAg
ICAgInBhZGRzYiAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2Z0bXAzXSAg
ICAgICAgICAgIFxuXHQiCiAgICAgInBhZGRzYiAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAg
ICAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCiAgICAgLyogZnRtcDI6ZmlsdGVyX3Zh
bHVlICovCi0gICAgImFuZCAgICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAl
W2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCisgICAgInBhbmQgICAgICAgJVtmdG1wMl0sICAgJVtm
dG1wMl0sICAgICAgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCiAKICAgICAicGFkZHNi
ICAgICAlW2Z0bXAxMV0sICAlW2Z0bXAyXSwgICAgICAgICAgICVbZmZfcGJfMDRdICAgICAgICAg
XG5cdCIKICAgICAicGFkZHNiICAgICAlW2Z0bXAxMl0sICAlW2Z0bXAyXSwgICAgICAgICAgICVb
ZmZfcGJfMDNdICAgICAgICAgXG5cdCIKIAotICAgICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4
MGIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICJtdGMxICAg
ICAgICVbdG1wMF0sICAgICVbZnRtcDddICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
blx0IgotICAgICJ4b3IgICAgICAgJVtmdG1wMF0sICAgICVbZnRtcDBdLCAgICAgICAgICAgJVtm
dG1wMF0gICAgICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgJVtmdG1wOF0sICAgICVbZnRt
cDhdLCAgICAgICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAg
ICVbdG1wMF0sICAgIDB4MGIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0
IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRtcDddICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgJVtmdG1wMF0sICAgICVbZnRtcDBd
LCAgICAgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgJVtm
dG1wOF0sICAgICVbZnRtcDhdLCAgICAgICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0Igog
ICAgICJwdW5wY2tsYmggJVtmdG1wMF0sICAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMTJd
ICAgICAgICAgICBcblx0IgogICAgICJwdW5wY2toYmggJVtmdG1wOF0sICAgICVbZnRtcDhdLCAg
ICAgICAgICAgJVtmdG1wMTJdICAgICAgICAgICBcblx0IgogICAgICJwc3JhaCAgICAgJVtmdG1w
MF0sICAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wN10gICAgICAgICAgICBcblx0IgogICAg
ICJwc3JhaCAgICAgJVtmdG1wOF0sICAgICVbZnRtcDhdLCAgICAgICAgICAgJVtmdG1wN10gICAg
ICAgICAgICBcblx0IgogICAgICJwYWNrc3NoYiAgJVtmdG1wMTJdLCAgICVbZnRtcDBdLCAgICAg
ICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgogCi0gICAgInhvciAgICAgICAlW2Z0bXAw
XSwgICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCi0gICAg
InhvciAgICAgICAlW2Z0bXA4XSwgICAgJVtmdG1wOF0sICAgICAgICAgICAlW2Z0bXA4XSAgICAg
ICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAlW2Z0bXAwXSwgICAgJVtmdG1wMF0sICAgICAg
ICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAlW2Z0bXA4XSwg
ICAgJVtmdG1wOF0sICAgICAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCiAgICAgInB1
bnBja2xiaCAlW2Z0bXAwXSwgICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAxMV0gICAgICAg
ICAgIFxuXHQiCiAgICAgInB1bnBja2hiaCAlW2Z0bXA4XSwgICAgJVtmdG1wOF0sICAgICAgICAg
ICAlW2Z0bXAxMV0gICAgICAgICAgIFxuXHQiCiAgICAgInBzcmFoICAgICAlW2Z0bXAwXSwgICAg
JVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA3XSAgICAgICAgICAgIFxuXHQiCkBAIC0zNzMsMjIg
KzM4MywyMiBAQCB2b2lkIHZwOF9sb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX21taSh1bnNpZ25l
ZCBjaGFyICpzcmNfcHRyLAogICAgICJwYWNrc3NoYiAgJVtmdG1wMTFdLCAgICVbZnRtcDBdLCAg
ICAgICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgogCiAgICAgInBzdWJzYiAgICAgJVtm
dG1wOV0sICAgJVtmdG1wOV0sICAgICAgICAgICAlW2Z0bXAxMV0gICAgICAgICAgIFxuXHQiCi0g
ICAgInhvciAgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgICAgICAgICAlW2ZmX3BiXzgw
XSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAg
ICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCiAgICAgInBhZGRzYiAgICAgJVtmdG1w
Nl0sICAgJVtmdG1wNl0sICAgICAgICAgICAlW2Z0bXAxMl0gICAgICAgICAgIFxuXHQiCi0gICAg
InhvciAgICAgICAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAg
ICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAgICAg
ICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCiAgICAgInBhZGRzaCAgICAgJVtmdG1wMF0s
ICAgJVtmdG1wMF0sICAgICAgICAgICAlW2ZmX3BoXzAxXSAgICAgICAgIFxuXHQiCiAgICAgInBh
ZGRzaCAgICAgJVtmdG1wOF0sICAgJVtmdG1wOF0sICAgICAgICAgICAlW2ZmX3BoXzAxXSAgICAg
ICAgIFxuXHQiCiAKLSAgICAibGkgICAgICAgICAlW3RtcDBdLCAgICAweDAxICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKLSAgICAibXRjMSAgICAgICAlW3RtcDBdLCAg
ICAlW2Z0bXA3XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKKyAgICAiZGxp
ICAgICAgICAlW3RtcDBdLCAgICAweDAxICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXG5cdCIKKyAgICAiZG10YzEgICAgICAlW3RtcDBdLCAgICAlW2Z0bXA3XSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAicHNyYWggICAgICAlW2Z0bXAwXSwgICAl
W2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIKICAgICAicHNyYWgg
ICAgICAlW2Z0bXA4XSwgICAlW2Z0bXA4XSwgICAgICAgICAgICVbZnRtcDddICAgICAgICAgICAg
XG5cdCIKICAgICAicGFja3NzaGIgICAlW2Z0bXAyXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVb
ZnRtcDhdICAgICAgICAgICAgXG5cdCIKICAgICAicGFuZG4gICAgICAlW2Z0bXAyXSwgICAlW2Z0
bXAxXSwgICAgICAgICAgICVbZnRtcDJdICAgICAgICAgICAgXG5cdCIKICAgICAicHN1YnNiICAg
ICAlW2Z0bXAxMF0sICAlW2Z0bXAxMF0sICAgICAgICAgICVbZnRtcDJdICAgICAgICAgICAgXG5c
dCIKLSAgICAieG9yICAgICAgICAlW2Z0bXAxMF0sICAlW2Z0bXAxMF0sICAgICAgICAgICVbZmZf
cGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAxMF0sICAlW2Z0bXAx
MF0sICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKICAgICAicGFkZHNiICAgICAl
W2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZnRtcDJdICAgICAgICAgICAgXG5cdCIK
LSAgICAieG9yICAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZmZfcGJf
ODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwg
ICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKIAogICAgIC8qIGZ0bXA1OiAqb3Ax
IDsgZnRtcDY6ICpvcDAgKi8KICAgICAicHVucGNrbGJoICAlW2Z0bXAyXSwgICAlW2Z0bXA1XSwg
ICAgICAgICAgICVbZnRtcDZdICAgICAgICAgICAgXG5cdCIKQEAgLTQwOCw3ICs0MTgsNyBAQCB2
b2lkIHZwOF9sb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX21taSh1bnNpZ25lZCBjaGFyICpzcmNf
cHRyLAogCiAgICAgImxpICAgICAgICAgJVt0bXAwXSwgICAgMHgyMCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgIm10YzEgICAgICAgJVt0bXAwXSwgICAgJVtm
dG1wOV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCi0gICAgImRzcmwgICAg
ICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxu
XHQiCisgICAgInNzcmxkICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2Z0
bXA5XSAgICAgICAgICAgIFxuXHQiCiAgICAgTU1JX1NMTCglW3RtcDBdLCAlW3NyY19waXhlbF9z
dGVwXSwgMHgwMikKICAgICBNTUlfU1VCVSglW2FkZHIxXSwgJVthZGRyMF0sICVbdG1wMF0pCiAg
ICAgImdzc3dsYzEgICAgJVtmdG1wMl0sICAgMHgwNSglW2FkZHIxXSkgICAgICAgICAgICAgICAg
ICAgICAgICAgIFxuXHQiCkBAIC00MTksMjEgKzQyOSwyMSBAQCB2b2lkIHZwOF9sb29wX2ZpbHRl
cl92ZXJ0aWNhbF9lZGdlX21taSh1bnNpZ25lZCBjaGFyICpzcmNfcHRyLAogICAgICJnc3N3bGMx
ICAgICVbZnRtcDZdLCAgIDB4MDUoJVthZGRyMV0pICAgICAgICAgICAgICAgICAgICAgICAgICBc
blx0IgogICAgICJnc3N3cmMxICAgICVbZnRtcDZdLCAgIDB4MDIoJVthZGRyMV0pICAgICAgICAg
ICAgICAgICAgICAgICAgICBcblx0IgogCi0gICAgImRzcmwgICAgICAgJVtmdG1wNl0sICAgJVtm
dG1wNl0sICAgICAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiCisgICAgInNzcmxkICAg
ICAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAgICAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxu
XHQiCiAgICAgTU1JX1NVQlUoJVthZGRyMV0sICVbc3JjX3B0cl0sICVbc3JjX3BpeGVsX3N0ZXBd
KQogICAgICJnc3N3bGMxICAgICVbZnRtcDZdLCAgIDB4MDUoJVthZGRyMV0pICAgICAgICAgICAg
ICAgICAgICAgICAgICBcblx0IgogICAgICJnc3N3cmMxICAgICVbZnRtcDZdLCAgIDB4MDIoJVth
ZGRyMV0pICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJnc3N3bGMxICAgICVb
ZnRtcDFdLCAgIDB4MDUoJVtzcmNfcHRyXSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0Igog
ICAgICJnc3N3cmMxICAgICVbZnRtcDFdLCAgIDB4MDIoJVtzcmNfcHRyXSkgICAgICAgICAgICAg
ICAgICAgICAgICBcblx0IgogCi0gICAgImRzcmwgICAgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0s
ICAgICAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiCisgICAgInNzcmxkICAgICAgJVtm
dG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiCiAg
ICAgImdzc3dsYzEgICAgJVtmdG1wMV0sICAgMHgwNSglW2FkZHIwXSkgICAgICAgICAgICAgICAg
ICAgICAgICAgIFxuXHQiCiAgICAgImdzc3dyYzEgICAgJVtmdG1wMV0sICAgMHgwMiglW2FkZHIw
XSkgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgTU1JX0FERFUoJVthZGRyMV0s
ICVbYWRkcjBdLCAlW3NyY19waXhlbF9zdGVwXSkKICAgICAiZ3Nzd2xjMSAgICAlW2Z0bXA1XSwg
ICAweDA1KCVbYWRkcjFdKSAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAiZ3Nz
d3JjMSAgICAlW2Z0bXA1XSwgICAweDAyKCVbYWRkcjFdKSAgICAgICAgICAgICAgICAgICAgICAg
ICAgXG5cdCIKIAotICAgICJkc3JsICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAg
ICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgorICAgICJzc3JsZCAgICAgICVbZnRtcDVdLCAg
ICVbZnRtcDVdLCAgICAgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgogICAgIE1NSV9B
RERVKCVbYWRkcjFdLCAlW2FkZHIwXSwgJVt0bXAwXSkKICAgICAiZ3Nzd2xjMSAgICAlW2Z0bXA1
XSwgICAweDA1KCVbYWRkcjFdKSAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAi
Z3Nzd3JjMSAgICAlW2Z0bXA1XSwgICAweDAyKCVbYWRkcjFdKSAgICAgICAgICAgICAgICAgICAg
ICAgICAgXG5cdCIKQEAgLTQ1MCwxNSArNDYwLDE2IEBAIHZvaWQgdnA4X2xvb3BfZmlsdGVyX3Zl
cnRpY2FsX2VkZ2VfbW1pKHVuc2lnbmVkIGNoYXIgKnNyY19wdHIsCiAgICAgICBbZnRtcDEwXSI9
JmYiKGZ0bXBbMTBdKSwgICAgICAgICAgICBbZnRtcDExXSI9JmYiKGZ0bXBbMTFdKSwKICAgICAg
IFtmdG1wMTJdIj0mZiIoZnRtcFsxMl0pLCAgICAgICAgICAgIFt0bXAwXSI9JnIiKHRtcFswXSks
CiAgICAgICBbYWRkcjBdIj0mciIoYWRkclswXSksICAgICAgICAgICAgW2FkZHIxXSI9JnIiKGFk
ZHJbMV0pLAotICAgICAgW3NyY19wdHJdIismciIoc3JjX3B0ciksICAgICAgICAgIFtjb3VudF0i
KyZyIihjb3VudCkKKyAgICAgIFtzcmNfcHRyXSIrJnIiKHNyY19wdHIpLCAgICAgICAgICBbY291
bnRdIismciIoY291bnQpLAorICAgICAgW2ZmX3BoXzAxXSI9JmYiKGZmX3BoXzAxKSwgICAgICAg
IFtmZl9wYl8wM10iPSZmIihmZl9wYl8wMyksCisgICAgICBbZmZfcGJfMDRdIj0mZiIoZmZfcGJf
MDQpLCAgICAgICAgW2ZmX3BiXzgwXSI9JmYiKGZmX3BiXzgwKSwKKyAgICAgIFtmZl9wYl9mZV0i
PSZmIihmZl9wYl9mZSkKICAgICA6IFtsaW1pdF0iciIobGltaXQpLCAgICAgICAgICAgICAgICBb
YmxpbWl0XSJyIihibGltaXQpLAogICAgICAgW3RocmVzaF0iciIodGhyZXNoKSwKLSAgICAgIFtz
cmNfcGl4ZWxfc3RlcF0iciIoKG1pcHNfcmVnKXNyY19waXhlbF9zdGVwKSwKLSAgICAgIFtmZl9w
aF8wMV0iZiIoZmZfcGhfMDEpLCAgICAgICAgICBbZmZfcGJfMDNdImYiKGZmX3BiXzAzKSwKLSAg
ICAgIFtmZl9wYl8wNF0iZiIoZmZfcGJfMDQpLCAgICAgICAgICBbZmZfcGJfODBdImYiKGZmX3Bi
XzgwKSwKLSAgICAgIFtmZl9wYl9mZV0iZiIoZmZfcGJfZmUpCisgICAgICBbc3JjX3BpeGVsX3N0
ZXBdInIiKChtaXBzX3JlZylzcmNfcGl4ZWxfc3RlcCkKICAgICA6ICJtZW1vcnkiCiAgICk7Cisg
IC8qIGNsYW5nLWZvcm1hdCBvbiAqLwogfQogCiAvKiBjbGFuZy1mb3JtYXQgb2ZmICovCkBAIC00
ODQsMTAgKzQ5NSwyOSBAQCB2b2lkIHZwOF9sb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX21taSh1
bnNpZ25lZCBjaGFyICpzcmNfcHRyLAogdm9pZCB2cDhfbWJsb29wX2ZpbHRlcl9ob3Jpem9udGFs
X2VkZ2VfbW1pKAogICAgIHVuc2lnbmVkIGNoYXIgKnNyY19wdHIsIGludCBzcmNfcGl4ZWxfc3Rl
cCwgY29uc3QgdW5zaWduZWQgY2hhciAqYmxpbWl0LAogICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIg
KmxpbWl0LCBjb25zdCB1bnNpZ25lZCBjaGFyICp0aHJlc2gsIGludCBjb3VudCkgewotICB1aW50
MzJfdCB0bXBbMV07CisgIHVpbnQ2NF90IHRtcFsxXTsKICAgZG91YmxlIGZ0bXBbMTNdOworICBk
b3VibGUgZmZfcGJfZmUsIGZmX3BiXzgwLCBmZl9wYl8wNCwgZmZfcGJfMDMsIGZmX3BoXzAwM2Ys
IGZmX3BoXzA5MDAsCisgICAgICBmZl9waF8xMjAwLCBmZl9waF8xYjAwOwogCisgIC8qIGNsYW5n
LWZvcm1hdCBvZmYgKi8KICAgX19hc21fXyB2b2xhdGlsZSAoCisgICAgImRsaSAgICAgICAgJVt0
bXAwXSwgICAgMHhmZWZlZmVmZWZlZmVmZWZlICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisg
ICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl9mZV0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHg4MDgwODA4MDgw
ODA4MDgwICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAw
XSwgICAgJVtmZl9wYl84MF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAg
ImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwNDA0MDQwNDA0MDQwNDA0ICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl8wNF0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwg
ICAgMHgwMzAzMDMwMzAzMDMwMzAzICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRt
dGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl8wM10gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwMDNmMDAzZjAwM2YwMDNm
ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAg
JVtmZl9waF8wMDNmXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAg
ICAgICAgJVt0bXAwXSwgICAgMHgwOTAwMDkwMDA5MDAwOTAwICAgICAgICAgICAgICAgICAgICAg
IFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9waF8wOTAwXSAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgx
MjAwMTIwMDEyMDAxMjAwICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAg
ICAgJVt0bXAwXSwgICAgJVtmZl9waF8xMjAwXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgxYjAwMWIwMDFiMDAxYjAwICAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9w
aF8xYjAwXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgTU1JX1NMTCglW3Rt
cDBdLCAlW3NyY19waXhlbF9zdGVwXSwgMHgwMikKICAgICBNTUlfU1VCVSglW3NyY19wdHJdLCAl
W3NyY19wdHJdLCAlW3RtcDBdKQogICAgICIxOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgpAQCAtNTMyLDMxICs1NjIsMzEg
QEAgdm9pZCB2cDhfbWJsb29wX2ZpbHRlcl9ob3Jpem9udGFsX2VkZ2VfbW1pKAogICAgICJwc3Vi
dXNiICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wOV0gICAgICAgICAg
ICBcblx0IgogICAgICJwYXN1YnViICAgICVbZnRtcDFdLCAgICVbZnRtcDNdLCAgICAgICAgICAg
JVtmdG1wNF0gICAgICAgICAgICBcblx0IgogICAgICJwc3VidXNiICAgICVbZnRtcDFdLCAgICVb
ZnRtcDFdLCAgICAgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgotICAgICJvciAgICAg
ICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBc
blx0IgorICAgICJwb3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtm
dG1wMV0gICAgICAgICAgICBcblx0IgogICAgICJwYXN1YnViICAgICVbZnRtcDEwXSwgICVbZnRt
cDRdLCAgICAgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgogICAgICJwc3VidXNiICAg
ICVbZnRtcDFdLCAgICVbZnRtcDEwXSwgICAgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0
IgotICAgICJvciAgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1w
MV0gICAgICAgICAgICBcblx0IgorICAgICJwb3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBd
LCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgogICAgICJwYXN1YnViICAgICVb
ZnRtcDExXSwgICVbZnRtcDddLCAgICAgICAgICAgJVtmdG1wNl0gICAgICAgICAgICBcblx0Igog
ICAgICJwc3VidXNiICAgICVbZnRtcDFdLCAgICVbZnRtcDExXSwgICAgICAgICAgJVtmdG1wOV0g
ICAgICAgICAgICBcblx0IgotICAgICJvciAgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAg
ICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgorICAgICJwb3IgICAgICAgICVbZnRt
cDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgogICAg
ICJwYXN1YnViICAgICVbZnRtcDFdLCAgICVbZnRtcDhdLCAgICAgICAgICAgJVtmdG1wN10gICAg
ICAgICAgICBcblx0IgogICAgICJwc3VidXNiICAgICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAg
ICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgotICAgICJvciAgICAgICAgICVbZnRtcDBd
LCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgorICAgICJw
b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAg
ICAgICBcblx0IgogICAgICJwYXN1YnViICAgICVbZnRtcDFdLCAgICVbZnRtcDJdLCAgICAgICAg
ICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgogICAgICJwc3VidXNiICAgICVbZnRtcDFdLCAg
ICVbZnRtcDFdLCAgICAgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgotICAgICJvciAg
ICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAg
ICBcblx0IgorICAgICJwb3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAg
JVtmdG1wMV0gICAgICAgICAgICBcblx0IgogCiAgICAgInBhc3VidWIgICAgJVtmdG1wMV0sICAg
JVtmdG1wNV0sICAgICAgICAgICAlW2Z0bXA2XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR1
c2IgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAxXSAgICAgICAgICAg
IFxuXHQiCiAgICAgInBhc3VidWIgICAgJVtmdG1wMl0sICAgJVtmdG1wNF0sICAgICAgICAgICAl
W2Z0bXA3XSAgICAgICAgICAgIFxuXHQiCi0gICAgImFuZCAgICAgICAgJVtmdG1wMl0sICAgJVtm
dG1wMl0sICAgICAgICAgICAlW2ZmX3BiX2ZlXSAgICAgICAgIFxuXHQiCi0gICAgImxpICAgICAg
ICAgJVt0bXAwXSwgICAgMHgwMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCi0gICAgIm10YzEgICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCisgICAgInBhbmQgICAgICAgJVtmdG1wMl0sICAgJVtmdG1w
Ml0sICAgICAgICAgICAlW2ZmX3BiX2ZlXSAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAg
JVt0bXAwXSwgICAgMHgwMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQi
CisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFxuXHQiCiAgICAgInBzcmxoICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0s
ICAgICAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR1c2IgICAgJVtm
dG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAyXSAgICAgICAgICAgIFxuXHQiCiAg
ICAgInBzdWJ1c2IgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAxMl0g
ICAgICAgICAgIFxuXHQiCi0gICAgIm9yICAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAg
ICAgICAgICAlW2Z0bXAxXSAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1w
OV0sICAgJVtmdG1wOV0sICAgICAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiCisgICAg
InBvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAxXSAgICAg
ICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgICAg
ICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiCiAgICAgLyogZnRtcDA6IG1hc2sgKi8KICAg
ICAicGNtcGVxYiAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDldICAg
ICAgICAgICAgXG5cdCIKIApAQCAtNTY1LDI3ICs1OTUsMjcgQEAgdm9pZCB2cDhfbWJsb29wX2Zp
bHRlcl9ob3Jpem9udGFsX2VkZ2VfbW1pKAogICAgICJwc3VidXNiICAgICVbZnRtcDFdLCAgICVb
ZnRtcDEwXSwgICAgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgogICAgICJwc3VidXNi
ICAgICVbZnRtcDJdLCAgICVbZnRtcDExXSwgICAgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBc
blx0IgogICAgICJwYWRkYiAgICAgICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAgICAgICAgJVtm
dG1wMl0gICAgICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRtcDJdLCAgICVbZnRt
cDJdLCAgICAgICAgICAgJVtmdG1wMl0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAg
ICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wMl0gICAgICAgICAgICBcblx0
IgogICAgICJwY21wZXFiICAgICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAgICAgICAgJVtmdG1w
Ml0gICAgICAgICAgICBcblx0IgogICAgICJwY21wZXFiICAgICVbZnRtcDJdLCAgICVbZnRtcDJd
LCAgICAgICAgICAgJVtmdG1wMl0gICAgICAgICAgICBcblx0IgogICAgIC8qIGZ0bXAxOiBoZXYg
Ki8KLSAgICAieG9yICAgICAgICAlW2Z0bXAxXSwgICAlW2Z0bXAxXSwgICAgICAgICAgICVbZnRt
cDJdICAgICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAxXSwgICAlW2Z0bXAx
XSwgICAgICAgICAgICVbZnRtcDJdICAgICAgICAgICAgXG5cdCIKIAotICAgICJ4b3IgICAgICAg
ICVbZnRtcDRdLCAgICVbZnRtcDRdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0
IgotICAgICJ4b3IgICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAgICAgJVtmZl9w
Yl84MF0gICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZd
LCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVb
ZnRtcDddLCAgICVbZnRtcDddLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0Igor
ICAgICJweG9yICAgICAgICVbZnRtcDRdLCAgICVbZnRtcDRdLCAgICAgICAgICAgJVtmZl9wYl84
MF0gICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAg
ICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRt
cDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgorICAg
ICJweG9yICAgICAgICVbZnRtcDddLCAgICVbZnRtcDddLCAgICAgICAgICAgJVtmZl9wYl84MF0g
ICAgICAgICBcblx0IgogICAgICJwc3Vic2IgICAgICVbZnRtcDJdLCAgICVbZnRtcDRdLCAgICAg
ICAgICAgJVtmdG1wN10gICAgICAgICAgICBcblx0IgogICAgICJwc3Vic2IgICAgICVbZnRtcDld
LCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgogICAgICJw
YWRkc2IgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wOV0gICAgICAg
ICAgICBcblx0IgogICAgICJwYWRkc2IgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAg
ICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgogICAgICJwYWRkc2IgICAgICVbZnRtcDJdLCAg
ICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgotICAgICJhbmQg
ICAgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wMF0gICAgICAgICAg
ICBcblx0IgorICAgICJwYW5kICAgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAg
JVtmdG1wMF0gICAgICAgICAgICBcblx0IgogICAgICJwYW5kbiAgICAgICVbZnRtcDEyXSwgICVb
ZnRtcDFdLCAgICAgICAgICAgJVtmdG1wMl0gICAgICAgICAgICBcblx0IgotICAgICJhbmQgICAg
ICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBc
blx0IgorICAgICJwYW5kICAgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAgICAgJVtm
dG1wMV0gICAgICAgICAgICBcblx0IgogCi0gICAgImxpICAgICAgICAgJVt0bXAwXSwgICAgMHgw
YiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCi0gICAgIm10YzEgICAg
ICAgJVt0bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwYiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmdG1w
OV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgInBhZGRzYiAgICAg
JVtmdG1wMF0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2ZmX3BiXzAzXSAgICAgICAgIFxuXHQi
CiAgICAgVlA4X01CTE9PUF9IUFNSQUIKICAgICAicGFkZHNiICAgICAlW2Z0bXA1XSwgICAlW2Z0
bXA1XSwgICAgICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKQEAgLTU5MywxNSArNjIz
LDE1IEBAIHZvaWQgdnA4X21ibG9vcF9maWx0ZXJfaG9yaXpvbnRhbF9lZGdlX21taSgKICAgICBW
UDhfTUJMT09QX0hQU1JBQgogICAgICJwc3Vic2IgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAg
ICAgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgogCi0gICAgImxpICAgICAgICAgJVt0
bXAwXSwgICAgMHgwNyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCi0g
ICAgIm10YzEgICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAg
ICAgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAw
XSwgICAgMHgwNyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAg
ImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAg
ICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCiAKICAgICBWUDhfTUJMT09QX0hQU1JBQl9B
REQoJVtmZl9waF8xYjAwXSkKICAgICAicHN1YnNiICAgICAlW2Z0bXA2XSwgICAlW2Z0bXA2XSwg
ICAgICAgICAgICVbZnRtcDFdICAgICAgICAgICAgXG5cdCIKICAgICAicGFkZHNiICAgICAlW2Z0
bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZnRtcDFdICAgICAgICAgICAgXG5cdCIKLSAg
ICAieG9yICAgICAgICAlW2Z0bXA2XSwgICAlW2Z0bXA2XSwgICAgICAgICAgICVbZmZfcGJfODBd
ICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAg
ICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA2
XSwgICAlW2Z0bXA2XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAi
cHhvciAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZmZfcGJfODBdICAg
ICAgICAgXG5cdCIKICAgICBNTUlfU0xMKCVbdG1wMF0sICVbc3JjX3BpeGVsX3N0ZXBdLCAweDAy
KQogICAgIE1NSV9TVUJVKCVbc3JjX3B0cl0sICVbc3JjX3B0cl0sICVbdG1wMF0pCiAgICAgImdz
c2RsYzEgICAgJVtmdG1wNV0sICAgMHgwNyglW3NyY19wdHJdKSAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCkBAIC02MTMsOCArNjQzLDggQEAgdm9pZCB2cDhfbWJsb29wX2ZpbHRlcl9ob3Jp
em9udGFsX2VkZ2VfbW1pKAogICAgIFZQOF9NQkxPT1BfSFBTUkFCX0FERCglW2ZmX3BoXzEyMDBd
KQogICAgICJwYWRkc2IgICAgICVbZnRtcDRdLCAgICVbZnRtcDRdLCAgICAgICAgICAgJVtmdG1w
MV0gICAgICAgICAgICBcblx0IgogICAgICJwc3Vic2IgICAgICVbZnRtcDddLCAgICVbZnRtcDdd
LCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVb
ZnRtcDRdLCAgICVbZnRtcDRdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0Igot
ICAgICJ4b3IgICAgICAgICVbZnRtcDddLCAgICVbZnRtcDddLCAgICAgICAgICAgJVtmZl9wYl84
MF0gICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDRdLCAgICVbZnRtcDRdLCAg
ICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRt
cDddLCAgICVbZnRtcDddLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgogICAg
IE1NSV9BRERVKCVbc3JjX3B0cl0sICVbc3JjX3B0cl0sICVbc3JjX3BpeGVsX3N0ZXBdKQogICAg
ICJnc3NkbGMxICAgICVbZnRtcDddLCAgIDB4MDcoJVtzcmNfcHRyXSkgICAgICAgICAgICAgICAg
ICAgICAgICBcblx0IgogICAgICJnc3NkcmMxICAgICVbZnRtcDddLCAgIDB4MDAoJVtzcmNfcHRy
XSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgpAQCAtNjI0LDEyICs2NTQsMTIgQEAgdm9p
ZCB2cDhfbWJsb29wX2ZpbHRlcl9ob3Jpem9udGFsX2VkZ2VfbW1pKAogICAgICJnc3NkcmMxICAg
ICVbZnRtcDRdLCAgIDB4MDAoJVtzcmNfcHRyXSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0
IgogCiAgICAgVlA4X01CTE9PUF9IUFNSQUJfQUREKCVbZmZfcGhfMDkwMF0pCi0gICAgInhvciAg
ICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAg
IFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wOF0sICAgJVtmdG1wOF0sICAgICAgICAgICAl
W2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wM10sICAgJVtm
dG1wM10sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAg
ICAgJVtmdG1wOF0sICAgJVtmdG1wOF0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxu
XHQiCiAgICAgInBhZGRzYiAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2Z0
bXAxXSAgICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJzYiAgICAgJVtmdG1wOF0sICAgJVtmdG1w
OF0sICAgICAgICAgICAlW2Z0bXAxXSAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAg
JVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQi
Ci0gICAgInhvciAgICAgICAgJVtmdG1wOF0sICAgJVtmdG1wOF0sICAgICAgICAgICAlW2ZmX3Bi
XzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10s
ICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtm
dG1wOF0sICAgJVtmdG1wOF0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCiAg
ICAgTU1JX0FERFUoJVtzcmNfcHRyXSwgJVtzcmNfcHRyXSwgJVt0bXAwXSkKICAgICAiZ3NzZGxj
MSAgICAlW2Z0bXA4XSwgICAweDA3KCVbc3JjX3B0cl0pICAgICAgICAgICAgICAgICAgICAgICAg
XG5cdCIKICAgICAiZ3NzZHJjMSAgICAlW2Z0bXA4XSwgICAweDAwKCVbc3JjX3B0cl0pICAgICAg
ICAgICAgICAgICAgICAgICAgXG5cdCIKQEAgLTY0OSwyMSArNjc5LDIzIEBAIHZvaWQgdnA4X21i
bG9vcF9maWx0ZXJfaG9yaXpvbnRhbF9lZGdlX21taSgKICAgICAgIFtmdG1wOF0iPSZmIihmdG1w
WzhdKSwgICAgICAgICAgICAgIFtmdG1wOV0iPSZmIihmdG1wWzldKSwKICAgICAgIFtmdG1wMTBd
Ij0mZiIoZnRtcFsxMF0pLCAgICAgICAgICAgIFtmdG1wMTFdIj0mZiIoZnRtcFsxMV0pLAogICAg
ICAgW2Z0bXAxMl0iPSZmIihmdG1wWzEyXSksICAgICAgICAgICAgW3RtcDBdIj0mciIodG1wWzBd
KSwKLSAgICAgIFtzcmNfcHRyXSIrJnIiKHNyY19wdHIpLCAgICAgICAgICAgIFtjb3VudF0iKyZy
Iihjb3VudCkKKyAgICAgIFtzcmNfcHRyXSIrJnIiKHNyY19wdHIpLCAgICAgICAgICAgIFtjb3Vu
dF0iKyZyIihjb3VudCksCisgICAgICBbZmZfcGJfZmVdIj0mZiIoZmZfcGJfZmUpLCAgICAgICAg
ICBbZmZfcGJfODBdIj0mZiIoZmZfcGJfODApLAorICAgICAgW2ZmX3BiXzA0XSI9JmYiKGZmX3Bi
XzA0KSwgICAgICAgICAgW2ZmX3BiXzAzXSI9JmYiKGZmX3BiXzAzKSwKKyAgICAgIFtmZl9waF8w
OTAwXSI9JmYiKGZmX3BoXzA5MDApLCAgICAgIFtmZl9waF8xYjAwXSI9JmYiKGZmX3BoXzFiMDAp
LAorICAgICAgW2ZmX3BoXzEyMDBdIj0mZiIoZmZfcGhfMTIwMCksICAgICAgW2ZmX3BoXzAwM2Zd
Ij0mZiIoZmZfcGhfMDAzZikKICAgICA6IFtsaW1pdF0iciIobGltaXQpLCAgICAgICAgICAgICAg
ICAgIFtibGltaXRdInIiKGJsaW1pdCksCiAgICAgICBbdGhyZXNoXSJyIih0aHJlc2gpLAotICAg
ICAgW3NyY19waXhlbF9zdGVwXSJyIigobWlwc19yZWcpc3JjX3BpeGVsX3N0ZXApLAotICAgICAg
W2ZmX3BiX2ZlXSJmIihmZl9wYl9mZSksICAgICAgICAgICAgW2ZmX3BiXzgwXSJmIihmZl9wYl84
MCksCi0gICAgICBbZmZfcGJfMDRdImYiKGZmX3BiXzA0KSwgICAgICAgICAgICBbZmZfcGJfMDNd
ImYiKGZmX3BiXzAzKSwKLSAgICAgIFtmZl9waF8wOTAwXSJmIihmZl9waF8wOTAwKSwgICAgICAg
IFtmZl9waF8xYjAwXSJmIihmZl9waF8xYjAwKSwKLSAgICAgIFtmZl9waF8xMjAwXSJmIihmZl9w
aF8xMjAwKSwgICAgICAgIFtmZl9waF8wMDNmXSJmIihmZl9waF8wMDNmKQorICAgICAgW3NyY19w
aXhlbF9zdGVwXSJyIigobWlwc19yZWcpc3JjX3BpeGVsX3N0ZXApCiAgICAgOiAibWVtb3J5Igog
ICApOworICAvKiBjbGFuZy1mb3JtYXQgb24gKi8KIH0KIAorLyogY2xhbmctZm9ybWF0IG9mZiAq
LwogI2RlZmluZSBWUDhfTUJMT09QX1ZQU1JBQl9BRERIICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXAotICAieG9yICAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwg
ICAgICAgICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIgXAotICAieG9yICAgICAgICAlW2Z0
bXA4XSwgICAlW2Z0bXA4XSwgICAgICAgICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIgXAor
ICAicHhvciAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZnRtcDddICAg
ICAgICAgICAgXG5cdCIgXAorICAicHhvciAgICAgICAlW2Z0bXA4XSwgICAlW2Z0bXA4XSwgICAg
ICAgICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIgXAogICAicHVucGNrbGJoICAlW2Z0bXA3
XSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIgXAogICAi
cHVucGNraGJoICAlW2Z0bXA4XSwgICAlW2Z0bXA4XSwgICAgICAgICAgICVbZnRtcDBdICAgICAg
ICAgICAgXG5cdCIKIApAQCAtNjczLDE1ICs3MDUsMzAgQEAgdm9pZCB2cDhfbWJsb29wX2ZpbHRl
cl9ob3Jpem9udGFsX2VkZ2VfbW1pKAogICAicHNyYWggICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3
XSwgICAgICAgICAgICVbZnRtcDEyXSAgICAgICAgICAgXG5cdCIgXAogICAicHNyYWggICAgICAl
W2Z0bXA4XSwgICAlW2Z0bXA4XSwgICAgICAgICAgICVbZnRtcDEyXSAgICAgICAgICAgXG5cdCIg
XAogICAicGFja3NzaGIgICAlW2Z0bXAzXSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZnRtcDhd
ICAgICAgICAgICAgXG5cdCIKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCiB2b2lkIHZwOF9tYmxv
b3BfZmlsdGVyX3ZlcnRpY2FsX2VkZ2VfbW1pKAogICAgIHVuc2lnbmVkIGNoYXIgKnNyY19wdHIs
IGludCBzcmNfcGl4ZWxfc3RlcCwgY29uc3QgdW5zaWduZWQgY2hhciAqYmxpbWl0LAogICAgIGNv
bnN0IHVuc2lnbmVkIGNoYXIgKmxpbWl0LCBjb25zdCB1bnNpZ25lZCBjaGFyICp0aHJlc2gsIGlu
dCBjb3VudCkgewogICBtaXBzX3JlZyB0bXBbMV07Ci0gIERFQ0xBUkVfQUxJR05FRCg4LCBjb25z
dCB1aW50NjRfdCwgc3JjdFsxXSk7CisgIERFQ0xBUkVfQUxJR05FRCg4LCBjb25zdCB1aW50NjRf
dCwgc3JjdFsyXSk7CiAgIGRvdWJsZSBmdG1wWzE0XTsKKyAgZG91YmxlIGZmX3BoXzAwM2YsIGZm
X3BoXzA5MDAsIGZmX3BiX2ZlLCBmZl9wYl84MCwgZmZfcGJfMDQsIGZmX3BiXzAzOwogCisgIC8q
IGNsYW5nLWZvcm1hdCBvZmYgKi8KICAgX19hc21fXyB2b2xhdGlsZSAoCisgICAgImRsaSAgICAg
ICAgJVt0bXAwXSwgICAgMHgwMDNmMDAzZjAwM2YwMDNmICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9waF8wMDNmXSAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwOTAw
MDkwMDA5MDAwOTAwICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAg
JVt0bXAwXSwgICAgJVtmZl9waF8wOTAwXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQi
CisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHhmZWZlZmVmZWZlZmVmZWZlICAgICAgICAg
ICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl9m
ZV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0
bXAwXSwgICAgMHg4MDgwODA4MDgwODA4MDgwICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisg
ICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl84MF0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwNDA0MDQwNDA0
MDQwNDA0ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAw
XSwgICAgJVtmZl9wYl8wNF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAg
ImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwMzAzMDMwMzAzMDMwMzAzICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl8wM10gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgTU1JX1NVQlUoJVtzcmNfcHRyXSwg
JVtzcmNfcHRyXSwgMHgwNCkKIAogICAgICIxOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgpAQCAtNzU1LDIzICs4MDIsMjMg
QEAgdm9pZCB2cDhfbWJsb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX21taSgKICAgICAvKiBhYnMg
KHEyLXExKSAqLwogICAgICJwYXN1YnViICAgICVbZnRtcDddLCAgICVbZnRtcDExXSwgICAgICAg
ICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0IgogICAgICJwc3VidXNiICAgICVbZnRtcDddLCAg
ICVbZnRtcDddLCAgICAgICAgICAgJVtmdG1wMTNdICAgICAgICAgICBcblx0IgotICAgICJvciAg
ICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wN10gICAgICAgICAg
ICBcblx0IgorICAgICJwb3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAg
JVtmdG1wN10gICAgICAgICAgICBcblx0IgogICAgIC8qIGZ0bXAzOiBhYnMocTEtcTApICovCiAg
ICAgInBhc3VidWIgICAgJVtmdG1wM10sICAgJVtmdG1wMTBdLCAgICAgICAgICAlW2Z0bXA5XSAg
ICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJ1c2IgICAgJVtmdG1wN10sICAgJVtmdG1wM10sICAg
ICAgICAgICAlW2Z0bXAxM10gICAgICAgICAgIFxuXHQiCi0gICAgIm9yICAgICAgICAgJVtmdG1w
MF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA3XSAgICAgICAgICAgIFxuXHQiCisgICAg
InBvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA3XSAgICAg
ICAgICAgIFxuXHQiCiAgICAgLyogZnRtcDQ6IGFicyhwMS1wMCkgKi8KICAgICAicGFzdWJ1YiAg
ICAlW2Z0bXA0XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZnRtcDZdICAgICAgICAgICAgXG5c
dCIKICAgICAicHN1YnVzYiAgICAlW2Z0bXA3XSwgICAlW2Z0bXA0XSwgICAgICAgICAgICVbZnRt
cDEzXSAgICAgICAgICAgXG5cdCIKLSAgICAib3IgICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAw
XSwgICAgICAgICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIKKyAgICAicG9yICAgICAgICAl
W2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIK
ICAgICAvKiBhYnMgKHAyLXAxKSAqLwogICAgICJwYXN1YnViICAgICVbZnRtcDddLCAgICVbZnRt
cDJdLCAgICAgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgogICAgICJwc3VidXNiICAg
ICVbZnRtcDddLCAgICVbZnRtcDddLCAgICAgICAgICAgJVtmdG1wMTNdICAgICAgICAgICBcblx0
IgotICAgICJvciAgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1w
N10gICAgICAgICAgICBcblx0IgorICAgICJwb3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBd
LCAgICAgICAgICAgJVtmdG1wN10gICAgICAgICAgICBcblx0IgogICAgIC8qIGFicyAocDMtcDIp
ICovCiAgICAgInBhc3VidWIgICAgJVtmdG1wN10sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0
bXAyXSAgICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJ1c2IgICAgJVtmdG1wN10sICAgJVtmdG1w
N10sICAgICAgICAgICAlW2Z0bXAxM10gICAgICAgICAgIFxuXHQiCi0gICAgIm9yICAgICAgICAg
JVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA3XSAgICAgICAgICAgIFxuXHQi
CisgICAgInBvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA3
XSAgICAgICAgICAgIFxuXHQiCiAKICAgICAiZ3NsZGxjMSAgICAlW2Z0bXAxM10sICAweDA3KCVb
YmxpbWl0XSkgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAiZ3NsZHJjMSAgICAl
W2Z0bXAxM10sICAweDAwKCVbYmxpbWl0XSkgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIK
QEAgLTc4MiwxNCArODI5LDE0IEBAIHZvaWQgdnA4X21ibG9vcF9maWx0ZXJfdmVydGljYWxfZWRn
ZV9tbWkoCiAgICAgInBhZGR1c2IgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAl
W2Z0bXAxXSAgICAgICAgICAgIFxuXHQiCiAgICAgLyogYWJzIChwMS1xMSkgLyAyICovCiAgICAg
InBhc3VidWIgICAgJVtmdG1wMTJdLCAgJVtmdG1wMTBdLCAgICAgICAgICAlW2Z0bXA1XSAgICAg
ICAgICAgIFxuXHQiCi0gICAgImFuZCAgICAgICAgJVtmdG1wMTJdLCAgJVtmdG1wMTJdLCAgICAg
ICAgICAlW2ZmX3BiX2ZlXSAgICAgICAgIFxuXHQiCi0gICAgImxpICAgICAgICAgJVt0bXAwXSwg
ICAgMHgwMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCi0gICAgIm10
YzEgICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOF0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCisgICAgInBhbmQgICAgICAgJVtmdG1wMTJdLCAgJVtmdG1wMTJdLCAgICAgICAg
ICAlW2ZmX3BiX2ZlXSAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAg
MHgwMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMx
ICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFxuXHQiCiAgICAgInBzcmxoICAgICAgJVtmdG1wMTJdLCAgJVtmdG1wMTJdLCAgICAgICAgICAl
W2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR1c2IgICAgJVtmdG1wMTJdLCAgJVtm
dG1wMV0sICAgICAgICAgICAlW2Z0bXAxMl0gICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJ1c2Ig
ICAgJVtmdG1wMTJdLCAgJVtmdG1wMTJdLCAgICAgICAgICAlW2Z0bXAxM10gICAgICAgICAgIFxu
XHQiCi0gICAgIm9yICAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0
bXAxMl0gICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wMTJdLCAgJVtmdG1w
MTJdLCAgICAgICAgICAlW2Z0bXAxMl0gICAgICAgICAgIFxuXHQiCisgICAgInBvciAgICAgICAg
JVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAxMl0gICAgICAgICAgIFxuXHQi
CisgICAgInB4b3IgICAgICAgJVtmdG1wMTJdLCAgJVtmdG1wMTJdLCAgICAgICAgICAlW2Z0bXAx
Ml0gICAgICAgICAgIFxuXHQiCiAgICAgLyogZnRtcDA6IG1hc2sgKi8KICAgICAicGNtcGVxYiAg
ICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDEyXSAgICAgICAgICAgXG5c
dCIKIApAQCAtNzk3LDE5ICs4NDQsMTkgQEAgdm9pZCB2cDhfbWJsb29wX2ZpbHRlcl92ZXJ0aWNh
bF9lZGdlX21taSgKICAgICAicHN1YnVzYiAgICAlW2Z0bXA0XSwgICAlW2Z0bXA0XSwgICAgICAg
ICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIKICAgICAvKiBhYnMocTEtcTApIC0gdGhyZXNo
ICovCiAgICAgInBzdWJ1c2IgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2Z0
bXA3XSAgICAgICAgICAgIFxuXHQiCi0gICAgIm9yICAgICAgICAgJVtmdG1wM10sICAgJVtmdG1w
NF0sICAgICAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCisgICAgInBvciAgICAgICAg
JVtmdG1wM10sICAgJVtmdG1wNF0sICAgICAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQi
CiAgICAgInBjbXBlcWIgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2Z0bXAx
Ml0gICAgICAgICAgIFxuXHQiCiAgICAgInBjbXBlcWIgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0s
ICAgICAgICAgICAlW2Z0bXAxXSAgICAgICAgICAgIFxuXHQiCiAgICAgLyogZnRtcDE6IGhldiAq
LwotICAgICJ4b3IgICAgICAgICVbZnRtcDFdLCAgICVbZnRtcDNdLCAgICAgICAgICAgJVtmdG1w
MV0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDFdLCAgICVbZnRtcDNd
LCAgICAgICAgICAgJVtmdG1wMV0gICAgICAgICAgICBcblx0IgogCiAgICAgLyogZnRtcDI6cHMy
LCBmdG1wNTpwczEsIGZ0bXA2OnBzMCwgZnRtcDk6cXMwLCBmdG1wMTA6cXMxLCBmdG1wMTE6cXMy
ICovCi0gICAgInhvciAgICAgICAgJVtmdG1wMTFdLCAgJVtmdG1wMTFdLCAgICAgICAgICAlW2Zm
X3BiXzgwXSAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wMTBdLCAgJVtmdG1w
MTBdLCAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAg
JVtmdG1wOV0sICAgJVtmdG1wOV0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQi
Ci0gICAgInhvciAgICAgICAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAgICAgICAgICAlW2ZmX3Bi
XzgwXSAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wNV0sICAgJVtmdG1wNV0s
ICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtm
dG1wMl0sICAgJVtmdG1wMl0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisg
ICAgInB4b3IgICAgICAgJVtmdG1wMTFdLCAgJVtmdG1wMTFdLCAgICAgICAgICAlW2ZmX3BiXzgw
XSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMTBdLCAgJVtmdG1wMTBdLCAg
ICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1w
OV0sICAgJVtmdG1wOV0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAg
InB4b3IgICAgICAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAg
ICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wNV0sICAgJVtmdG1wNV0sICAgICAg
ICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMl0s
ICAgJVtmdG1wMl0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCiAKICAgICAi
cHN1YnNiICAgICAlW2Z0bXAzXSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZnRtcDEwXSAgICAg
ICAgICAgXG5cdCIKICAgICAicHN1YnNiICAgICAlW2Z0bXA0XSwgICAlW2Z0bXA5XSwgICAgICAg
ICAgICVbZnRtcDZdICAgICAgICAgICAgXG5cdCIKQEAgLTgxNywxNSArODY0LDE1IEBAIHZvaWQg
dnA4X21ibG9vcF9maWx0ZXJfdmVydGljYWxfZWRnZV9tbWkoCiAgICAgInBhZGRzYiAgICAgJVtm
dG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2Z0bXA0XSAgICAgICAgICAgIFxuXHQiCiAg
ICAgInBhZGRzYiAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2Z0bXA0XSAg
ICAgICAgICAgIFxuXHQiCiAgICAgLyogZmlsdGVyX3ZhbHVlICY9IG1hc2sgKi8KLSAgICAiYW5k
ICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDNdICAgICAgICAg
ICAgXG5cdCIKKyAgICAicGFuZCAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAg
ICVbZnRtcDNdICAgICAgICAgICAgXG5cdCIKICAgICAvKiBGaWx0ZXIyID0gZmlsdGVyX3ZhbHVl
ICYgaGV2ICovCi0gICAgImFuZCAgICAgICAgJVtmdG1wM10sICAgJVtmdG1wMV0sICAgICAgICAg
ICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCisgICAgInBhbmQgICAgICAgJVtmdG1wM10sICAg
JVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCiAgICAgLyogZmls
dGVyX3ZhbHVlICY9IH5oZXYgKi8KICAgICAicGFuZG4gICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAx
XSwgICAgICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKIAogICAgICJwYWRkc2IgICAg
ICVbZnRtcDRdLCAgICVbZnRtcDNdLCAgICAgICAgICAgJVtmZl9wYl8wNF0gICAgICAgICBcblx0
IgotICAgICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4MGIgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDEy
XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVb
dG1wMF0sICAgIDB4MGIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0Igor
ICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRtcDEyXSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcblx0IgogICAgICJwdW5wY2tsYmggICVbZnRtcDddLCAgICVbZnRtcDddLCAg
ICAgICAgICAgJVtmdG1wNF0gICAgICAgICAgICBcblx0IgogICAgICJwdW5wY2toYmggICVbZnRt
cDhdLCAgICVbZnRtcDhdLCAgICAgICAgICAgJVtmdG1wNF0gICAgICAgICAgICBcblx0IgogICAg
ICJwc3JhaCAgICAgICVbZnRtcDddLCAgICVbZnRtcDddLCAgICAgICAgICAgJVtmdG1wMTJdICAg
ICAgICAgICBcblx0IgpAQCAtODQyLDggKzg4OSw4IEBAIHZvaWQgdnA4X21ibG9vcF9maWx0ZXJf
dmVydGljYWxfZWRnZV9tbWkoCiAgICAgLyogZnRtcDY6IHBzMCAqLwogICAgICJwYWRkc2IgICAg
ICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmdG1wM10gICAgICAgICAgICBcblx0
IgogCi0gICAgImxpICAgICAgICAgJVt0bXAwXSwgICAgMHgwNyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCi0gICAgIm10YzEgICAgICAgJVt0bXAwXSwgICAgJVtmdG1w
MTJdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAg
JVt0bXAwXSwgICAgMHgwNyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQi
CisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmdG1wMTJdICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFxuXHQiCiAgICAgVlA4X01CTE9PUF9WUFNSQUJfQURESAogICAgICJwYWRk
aCAgICAgICVbZnRtcDFdLCAgICVbZmZfcGhfMDkwMF0sICAgICAgJVtmZl9waF8wOTAwXSAgICAg
ICBcblx0IgogICAgICJwYWRkaCAgICAgICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAgICAgICAg
JVtmZl9waF8wOTAwXSAgICAgICBcblx0IgpAQCAtODUyLDEwICs4OTksMTAgQEAgdm9pZCB2cDhf
bWJsb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX21taSgKICAgICBWUDhfTUJMT09QX1ZQU1JBQl9B
RERUCiAgICAgInBzdWJzYiAgICAgJVtmdG1wNF0sICAgJVtmdG1wOV0sICAgICAgICAgICAlW2Z0
bXAzXSAgICAgICAgICAgIFxuXHQiCiAgICAgLyogZnRtcDk6IG9xMCAqLwotICAgICJ4b3IgICAg
ICAgICVbZnRtcDldLCAgICVbZnRtcDRdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBc
blx0IgorICAgICJweG9yICAgICAgICVbZnRtcDldLCAgICVbZnRtcDRdLCAgICAgICAgICAgJVtm
Zl9wYl84MF0gICAgICAgICBcblx0IgogICAgICJwYWRkc2IgICAgICVbZnRtcDRdLCAgICVbZnRt
cDZdLCAgICAgICAgICAgJVtmdG1wM10gICAgICAgICAgICBcblx0IgogICAgIC8qIGZ0bXA2OiBv
cDAgKi8KLSAgICAieG9yICAgICAgICAlW2Z0bXA2XSwgICAlW2Z0bXA0XSwgICAgICAgICAgICVb
ZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA2XSwgICAlW2Z0
bXA0XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKIAogICAgIFZQOF9NQkxP
T1BfVlBTUkFCX0FEREgKICAgICAicGFkZGggICAgICAlW2Z0bXAxXSwgICAlW2ZmX3BoXzA5MDBd
LCAgICAgICVbZmZfcGhfMDkwMF0gICAgICAgXG5cdCIKQEAgLTg2NCwxMCArOTExLDEwIEBAIHZv
aWQgdnA4X21ibG9vcF9maWx0ZXJfdmVydGljYWxfZWRnZV9tbWkoCiAgICAgVlA4X01CTE9PUF9W
UFNSQUJfQUREVAogICAgICJwc3Vic2IgICAgICVbZnRtcDRdLCAgICVbZnRtcDEwXSwgICAgICAg
ICAgJVtmdG1wM10gICAgICAgICAgICBcblx0IgogICAgIC8qIGZ0bXAxMDogb3ExICovCi0gICAg
InhvciAgICAgICAgJVtmdG1wMTBdLCAgICVbZnRtcDRdLCAgICAgICAgICAlW2ZmX3BiXzgwXSAg
ICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMTBdLCAgICVbZnRtcDRdLCAgICAg
ICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCiAgICAgInBhZGRzYiAgICAgJVtmdG1wNF0s
ICAgJVtmdG1wNV0sICAgICAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCiAgICAgLyog
ZnRtcDU6IG9wMSAqLwotICAgICJ4b3IgICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDRdLCAgICAg
ICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDVd
LCAgICVbZnRtcDRdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgogCiAgICAg
VlA4X01CTE9PUF9WUFNSQUJfQURESAogICAgICJwbXVsaGggICAgICVbZnRtcDddLCAgICVbZnRt
cDddLCAgICAgICAgICAgJVtmZl9waF8wOTAwXSAgICAgICBcblx0IgpAQCAtODc1LDEwICs5MjIs
MTAgQEAgdm9pZCB2cDhfbWJsb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX21taSgKICAgICBWUDhf
TUJMT09QX1ZQU1JBQl9BRERUCiAgICAgInBzdWJzYiAgICAgJVtmdG1wNF0sICAgJVtmdG1wMTFd
LCAgICAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCiAgICAgLyogZnRtcDExOiBvcTIg
Ki8KLSAgICAieG9yICAgICAgICAlW2Z0bXAxMV0sICAlW2Z0bXA0XSwgICAgICAgICAgICVbZmZf
cGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAxMV0sICAlW2Z0bXA0
XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKICAgICAicGFkZHNiICAgICAl
W2Z0bXA0XSwgICAlW2Z0bXAyXSwgICAgICAgICAgICVbZnRtcDNdICAgICAgICAgICAgXG5cdCIK
ICAgICAvKiBmdG1wMjogb3AyICovCi0gICAgInhvciAgICAgICAgJVtmdG1wMl0sICAgJVtmdG1w
NF0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAg
JVtmdG1wMl0sICAgJVtmdG1wNF0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQi
CiAKICAgICAibGRjMSAgICAgICAlW2Z0bXAxMl0sICAweDAwKCVbc3JjdF0pICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXG5cdCIKICAgICAibGRjMSAgICAgICAlW2Z0bXA4XSwgICAweDA4KCVb
c3JjdF0pICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKQEAgLTk0OCw0MSArOTk1LDU4
IEBAIHZvaWQgdnA4X21ibG9vcF9maWx0ZXJfdmVydGljYWxfZWRnZV9tbWkoCiAgICAgICBbZnRt
cDEwXSI9JmYiKGZ0bXBbMTBdKSwgICAgICAgICAgICBbZnRtcDExXSI9JmYiKGZ0bXBbMTFdKSwK
ICAgICAgIFtmdG1wMTJdIj0mZiIoZnRtcFsxMl0pLCAgICAgICAgICAgIFtmdG1wMTNdIj0mZiIo
ZnRtcFsxM10pLAogICAgICAgW3RtcDBdIj0mciIodG1wWzBdKSwgICAgICAgICAgICAgICAgW3Ny
Y19wdHJdIismciIoc3JjX3B0ciksCi0gICAgICBbY291bnRdIismciIoY291bnQpCisgICAgICBb
Y291bnRdIismciIoY291bnQpLAorICAgICAgW2ZmX3BoXzAwM2ZdIj0mZiIoZmZfcGhfMDAzZiks
ICAgIFtmZl9waF8wOTAwXSI9JmYiKGZmX3BoXzA5MDApLAorICAgICAgW2ZmX3BiXzAzXSI9JmYi
KGZmX3BiXzAzKSwgICAgICAgIFtmZl9wYl8wNF0iPSZmIihmZl9wYl8wNCksCisgICAgICBbZmZf
cGJfODBdIj0mZiIoZmZfcGJfODApLCAgICAgICAgW2ZmX3BiX2ZlXSI9JmYiKGZmX3BiX2ZlKQog
ICAgIDogW2xpbWl0XSJyIihsaW1pdCksICAgICAgICAgICAgICAgIFtibGltaXRdInIiKGJsaW1p
dCksCiAgICAgICBbc3JjdF0iciIoc3JjdCksICAgICAgICAgICAgICAgICAgW3RocmVzaF0iciIo
dGhyZXNoKSwKLSAgICAgIFtzcmNfcGl4ZWxfc3RlcF0iciIoKG1pcHNfcmVnKXNyY19waXhlbF9z
dGVwKSwKLSAgICAgIFtmZl9waF8wMDNmXSJmIihmZl9waF8wMDNmKSwgICAgICBbZmZfcGhfMDkw
MF0iZiIoZmZfcGhfMDkwMCksCi0gICAgICBbZmZfcGJfMDNdImYiKGZmX3BiXzAzKSwgICAgICAg
ICAgW2ZmX3BiXzA0XSJmIihmZl9wYl8wNCksCi0gICAgICBbZmZfcGJfODBdImYiKGZmX3BiXzgw
KSwgICAgICAgICAgW2ZmX3BiX2ZlXSJmIihmZl9wYl9mZSkKKyAgICAgIFtzcmNfcGl4ZWxfc3Rl
cF0iciIoKG1pcHNfcmVnKXNyY19waXhlbF9zdGVwKQogICAgIDogIm1lbW9yeSIKICAgKTsKKyAg
LyogY2xhbmctZm9ybWF0IG9uICovCiB9CiAKKy8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KICNkZWZp
bmUgVlA4X1NJTVBMRV9IUFNSQUIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKICAgInBzbGxoICAgICAgJVtmdG1wMF0sICAgJVtmdG1wNV0sICAgICAgICAg
ICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiIFwKICAgInBzcmFoICAgICAgJVtmdG1wMF0sICAg
JVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiIFwKICAgInBzcmxo
ICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA4XSAgICAgICAgICAg
IFxuXHQiIFwKICAgInBzcmFoICAgICAgJVtmdG1wMV0sICAgJVtmdG1wNV0sICAgICAgICAgICAl
W2Z0bXAxMF0gICAgICAgICAgIFxuXHQiIFwKICAgInBzbGxoICAgICAgJVtmdG1wMV0sICAgJVtm
dG1wMV0sICAgICAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiIFwKLSAgIm9yICAgICAg
ICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAxXSAgICAgICAgICAgIFxu
XHQiCisgICJwb3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1w
MV0gICAgICAgICAgICBcblx0IgorLyogY2xhbmctZm9ybWF0IG9uICovCiAKIHZvaWQgdnA4X2xv
b3BfZmlsdGVyX3NpbXBsZV9ob3Jpem9udGFsX2VkZ2VfbW1pKHVuc2lnbmVkIGNoYXIgKnNyY19w
dHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQg
c3JjX3BpeGVsX3N0ZXAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpibGltaXQpIHsKLSAgdWludDMyX3QgdG1wWzFd
LCBjb3VudCA9IDI7CisgIHVpbnQ2NF90IHRtcFsxXSwgY291bnQgPSAyOwogICBtaXBzX3JlZyBh
ZGRyWzJdOwogICBkb3VibGUgZnRtcFsxMl07CisgIGRvdWJsZSBmZl9wYl9mZSwgZmZfcGJfODAs
IGZmX3BiXzA0LCBmZl9wYl8wMTsKIAorICAvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiAgIF9fYXNt
X18gdm9sYXRpbGUgKAotICAgICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4MDggICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0s
ICAgICVbZnRtcDhdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICJs
aSAgICAgICAgICVbdG1wMF0sICAgIDB4MDMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDldICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICJsaSAgICAgICAgICVbdG1wMF0sICAg
IDB4MGIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICJtdGMx
ICAgICAgICVbdG1wMF0sICAgICVbZnRtcDEwXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgotICAgICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4MDEgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVb
ZnRtcDExXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAg
ICAgICVbdG1wMF0sICAgIDB4MGIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
blx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRtcDEwXSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4MDEg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAg
ICVbdG1wMF0sICAgICVbZnRtcDExXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0
IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4MDggICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRtcDhd
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVb
dG1wMF0sICAgIDB4MDMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0Igor
ICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRtcDldICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4MGIgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1w
MF0sICAgICVbZnRtcDEwXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAg
ICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4MDEgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRtcDExXSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0s
ICAgIDB4ZmVmZWZlZmVmZWZlZmVmZSAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJk
bXRjMSAgICAgICVbdG1wMF0sICAgICVbZmZfcGJfZmVdICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4ODA4MDgwODA4MDgwODA4
MCAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAg
ICVbZmZfcGJfODBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkg
ICAgICAgICVbdG1wMF0sICAgIDB4MDQwNDA0MDQwNDA0MDQwNCAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZmZfcGJfMDRdICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4
MDEwMTAxMDEwMTAxMDEwMSAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAg
ICAgICVbdG1wMF0sICAgICVbZmZfcGJfMDFdICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
blx0IgogCiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImdzbGRsYzEgICAgJVtmdG1wM10sICAgMHgw
NyglW2JsaW1pdF0pICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCkBAIC05OTYsNyArMTA2
MCw3IEBAIHZvaWQgdnA4X2xvb3BfZmlsdGVyX3NpbXBsZV9ob3Jpem9udGFsX2VkZ2VfbW1pKHVu
c2lnbmVkIGNoYXIgKnNyY19wdHIsCiAgICAgImdzbGRsYzEgICAgJVtmdG1wN10sICAgMHgwNygl
W2FkZHIwXSkgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImdzbGRyYzEgICAg
JVtmdG1wN10sICAgMHgwMCglW2FkZHIwXSkgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQi
CiAgICAgInBhc3VidWIgICAgJVtmdG1wMV0sICAgJVtmdG1wN10sICAgICAgICAgICAlW2Z0bXAy
XSAgICAgICAgICAgIFxuXHQiCi0gICAgImFuZCAgICAgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0s
ICAgICAgICAgICAlW2ZmX3BiX2ZlXSAgICAgICAgIFxuXHQiCisgICAgInBhbmQgICAgICAgJVtm
dG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2ZmX3BiX2ZlXSAgICAgICAgIFxuXHQiCiAg
ICAgInBzcmxoICAgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAxMV0g
ICAgICAgICAgIFxuXHQiCiAKICAgICBNTUlfU1VCVSglW2FkZHIxXSwgJVtzcmNfcHRyXSwgJVtz
cmNfcGl4ZWxfc3RlcF0pCkBAIC0xMDA4LDMxICsxMDcyLDMxIEBAIHZvaWQgdnA4X2xvb3BfZmls
dGVyX3NpbXBsZV9ob3Jpem9udGFsX2VkZ2VfbW1pKHVuc2lnbmVkIGNoYXIgKnNyY19wdHIsCiAg
ICAgInBhZGR1c2IgICAgJVtmdG1wNV0sICAgJVtmdG1wNV0sICAgICAgICAgICAlW2Z0bXA1XSAg
ICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR1c2IgICAgJVtmdG1wNV0sICAgJVtmdG1wNV0sICAg
ICAgICAgICAlW2Z0bXAxXSAgICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJ1c2IgICAgJVtmdG1w
NV0sICAgJVtmdG1wNV0sICAgICAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCi0gICAg
InhvciAgICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2Z0bXAzXSAgICAg
ICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAg
ICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCiAgICAgInBjbXBlcWIgICAgJVtmdG1wNV0s
ICAgJVtmdG1wNV0sICAgICAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCiAKLSAgICAi
eG9yICAgICAgICAlW2Z0bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgICAgICVbZmZfcGJfODBdICAg
ICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAg
ICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAyXSwg
ICAlW2Z0bXAyXSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhv
ciAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAg
ICAgXG5cdCIKICAgICAicHN1YnNiICAgICAlW2Z0bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgICAg
ICVbZnRtcDddICAgICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA2XSwgICAl
W2Z0bXA2XSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKLSAgICAieG9yICAg
ICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAg
XG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA2XSwgICAlW2Z0bXA2XSwgICAgICAgICAgICVb
ZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAzXSwgICAlW2Z0
bXAwXSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKICAgICAicHN1YnNiICAg
ICAlW2Z0bXAwXSwgICAlW2Z0bXAzXSwgICAgICAgICAgICVbZnRtcDZdICAgICAgICAgICAgXG5c
dCIKICAgICAicGFkZHNiICAgICAlW2Z0bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgICAgICVbZnRt
cDBdICAgICAgICAgICAgXG5cdCIKICAgICAicGFkZHNiICAgICAlW2Z0bXAyXSwgICAlW2Z0bXAy
XSwgICAgICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKICAgICAicGFkZHNiICAgICAl
W2Z0bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIK
LSAgICAiYW5kICAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZnRtcDJd
ICAgICAgICAgICAgXG5cdCIKKyAgICAicGFuZCAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwg
ICAgICAgICAgICVbZnRtcDJdICAgICAgICAgICAgXG5cdCIKIAogICAgICJwYWRkc2IgICAgICVb
ZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAgICAgJVtmZl9wYl8wNF0gICAgICAgICBcblx0Igog
ICAgIFZQOF9TSU1QTEVfSFBTUkFCCiAgICAgInBzdWJzYiAgICAgJVtmdG1wM10sICAgJVtmdG1w
M10sICAgICAgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAg
JVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQi
CisgICAgInB4b3IgICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2ZmX3Bi
XzgwXSAgICAgICAgIFxuXHQiCiAgICAgImdzc2RsYzEgICAgJVtmdG1wM10sICAgMHgwNyglW3Ny
Y19wdHJdKSAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImdzc2RyYzEgICAgJVtm
dG1wM10sICAgMHgwMCglW3NyY19wdHJdKSAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAK
ICAgICAicHN1YnNiICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZmZfcGJf
MDFdICAgICAgICAgXG5cdCIKICAgICBWUDhfU0lNUExFX0hQU1JBQgogICAgICJwYWRkc2IgICAg
ICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0
IgotICAgICJ4b3IgICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmZl9w
Yl84MF0gICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZd
LCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgogICAgIE1NSV9TVUJVKCVbYWRk
cjFdLCAlW3NyY19wdHJdLCAlW3NyY19waXhlbF9zdGVwXSkKICAgICAiZ3NzZGxjMSAgICAlW2Z0
bXA2XSwgICAweDA3KCVbYWRkcjFdKSAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAg
ICAiZ3NzZHJjMSAgICAlW2Z0bXA2XSwgICAweDAwKCVbYWRkcjFdKSAgICAgICAgICAgICAgICAg
ICAgICAgICAgXG5cdCIKQEAgLTEwNDgsMzAgKzExMTIsNDMgQEAgdm9pZCB2cDhfbG9vcF9maWx0
ZXJfc2ltcGxlX2hvcml6b250YWxfZWRnZV9tbWkodW5zaWduZWQgY2hhciAqc3JjX3B0ciwKICAg
ICAgIFtmdG1wMTBdIj0mZiIoZnRtcFsxMF0pLCAgICAgICAgICAgIFtmdG1wMTFdIj0mZiIoZnRt
cFsxMV0pLAogICAgICAgW3RtcDBdIj0mciIodG1wWzBdKSwKICAgICAgIFthZGRyMF0iPSZyIihh
ZGRyWzBdKSwgICAgICAgICAgICBbYWRkcjFdIj0mciIoYWRkclsxXSksCi0gICAgICBbc3JjX3B0
cl0iKyZyIihzcmNfcHRyKSwgICAgICAgICAgW2NvdW50XSIrJnIiKGNvdW50KQorICAgICAgW3Ny
Y19wdHJdIismciIoc3JjX3B0ciksICAgICAgICAgIFtjb3VudF0iKyZyIihjb3VudCksCisgICAg
ICBbZmZfcGJfZmVdIj0mZiIoZmZfcGJfZmUpLCAgICAgICAgW2ZmX3BiXzgwXSI9JmYiKGZmX3Bi
XzgwKSwKKyAgICAgIFtmZl9wYl8wNF0iPSZmIihmZl9wYl8wNCksICAgICAgICBbZmZfcGJfMDFd
Ij0mZiIoZmZfcGJfMDEpCiAgICAgOiBbYmxpbWl0XSJyIihibGltaXQpLAogICAgICAgW3NyY19w
aXhlbF9zdGVwXSJyIigobWlwc19yZWcpc3JjX3BpeGVsX3N0ZXApLAotICAgICAgW3NyY19waXhl
bF9zdGVwX3gyXSJyIigobWlwc19yZWcpKHNyY19waXhlbF9zdGVwPDwxKSksCi0gICAgICBbZmZf
cGJfZmVdImYiKGZmX3BiX2ZlKSwgICAgICAgICAgW2ZmX3BiXzgwXSJmIihmZl9wYl84MCksCi0g
ICAgICBbZmZfcGJfMDRdImYiKGZmX3BiXzA0KSwgICAgICAgICAgW2ZmX3BiXzAxXSJmIihmZl9w
Yl8wMSkKKyAgICAgIFtzcmNfcGl4ZWxfc3RlcF94Ml0iciIoKG1pcHNfcmVnKShzcmNfcGl4ZWxf
c3RlcDw8MSkpCiAgICAgOiAibWVtb3J5IgogICApOworICAvKiBjbGFuZy1mb3JtYXQgb24gKi8K
IH0KIAogdm9pZCB2cDhfbG9vcF9maWx0ZXJfc2ltcGxlX3ZlcnRpY2FsX2VkZ2VfbW1pKHVuc2ln
bmVkIGNoYXIgKnNyY19wdHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaW50IHNyY19waXhlbF9zdGVwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmJsaW1pdCkgewotICB1aW50
MzJfdCB0bXBbMV0sIGNvdW50ID0gMjsKKyAgdWludDY0X3QgdG1wWzFdLCBjb3VudCA9IDI7CiAg
IG1pcHNfcmVnIGFkZHJbMl07Ci0gIERFQ0xBUkVfQUxJR05FRCg4LCBjb25zdCB1aW50NjRfdCwg
c3JjdFsxXSk7Ci0gIGRvdWJsZSBmdG1wWzEyXTsKKyAgREVDTEFSRV9BTElHTkVEKDgsIGNvbnN0
IHVpbnQ2NF90LCBzcmN0WzJdKTsKKyAgZG91YmxlIGZ0bXBbMTJdLCBmZl9wYl9mZSwgZmZfcGJf
ODAsIGZmX3BiXzA0LCBmZl9wYl8wMTsKIAorICAvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiAgIF9f
YXNtX18gdm9sYXRpbGUgKAotICAgICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4MDggICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1w
MF0sICAgICVbZnRtcDhdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAg
ICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4MjAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDEwXSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotCisgICAgImRsaSAgICAgICAgJVt0bXAw
XSwgICAgMHgwOCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAg
ImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOF0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgyMCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwg
ICAgJVtmdG1wMTBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRs
aSAgICAgICAgJVt0bXAwXSwgICAgMHgwOCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOF0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAg
MHgyMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMx
ICAgICAgJVt0bXAwXSwgICAgJVtmdG1wMTBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHhmZWZlZmVmZWZlZmVmZWZlICAg
ICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtm
Zl9wYl9mZV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAg
ICAgJVt0bXAwXSwgICAgMHg4MDgwODA4MDgwODA4MDgwICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl84MF0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwNDA0
MDQwNDA0MDQwNDA0ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAg
JVt0bXAwXSwgICAgJVtmZl9wYl8wNF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQi
CisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwMTAxMDEwMTAxMDEwMTAxICAgICAgICAg
ICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wYl8w
MV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgTU1JX0FERFUoJVtzcmNf
cHRyXSwgJVtzcmNfcHRyXSwgJVtzcmNfcGl4ZWxfc3RlcF94NF0pCiAgICAgTU1JX1NVQlUoJVtz
cmNfcHRyXSwgJVtzcmNfcHRyXSwgMHgwMikKIApAQCAtMTExOCwxMCArMTE5NSwxMCBAQCB2b2lk
IHZwOF9sb29wX2ZpbHRlcl9zaW1wbGVfdmVydGljYWxfZWRnZV9tbWkodW5zaWduZWQgY2hhciAq
c3JjX3B0ciwKICAgICAicHVucGNraHdkICAlW2Z0bXAzXSwgICAlW2Z0bXAyXSwgICAgICAgICAg
ICVbZnRtcDVdICAgICAgICAgICAgXG5cdCIKICAgICAicHVucGNrbHdkICAlW2Z0bXAyXSwgICAl
W2Z0bXAyXSwgICAgICAgICAgICVbZnRtcDVdICAgICAgICAgICAgXG5cdCIKIAotICAgICJsaSAg
ICAgICAgICVbdG1wMF0sICAgIDB4MDEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDldICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4
MDEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAg
ICAgICVbdG1wMF0sICAgICVbZnRtcDldICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
blx0IgogICAgICJwYXN1YnViICAgICVbZnRtcDZdLCAgICVbZnRtcDNdLCAgICAgICAgICAgJVtm
dG1wMF0gICAgICAgICAgICBcblx0IgotICAgICJhbmQgICAgICAgICVbZnRtcDZdLCAgICVbZnRt
cDZdLCAgICAgICAgICAgJVtmZl9wYl9mZV0gICAgICAgICBcblx0IgorICAgICJwYW5kICAgICAg
ICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmZl9wYl9mZV0gICAgICAgICBcblx0
IgogICAgICJwc3JsaCAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmdG1w
OV0gICAgICAgICAgICBcblx0IgogICAgICJwYXN1YnViICAgICVbZnRtcDVdLCAgICVbZnRtcDFd
LCAgICAgICAgICAgJVtmdG1wMl0gICAgICAgICAgICBcblx0IgogICAgICJwYWRkdXNiICAgICVb
ZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgpA
QCAtMTEzMCw1MyArMTIwNyw1MyBAQCB2b2lkIHZwOF9sb29wX2ZpbHRlcl9zaW1wbGVfdmVydGlj
YWxfZWRnZV9tbWkodW5zaWduZWQgY2hhciAqc3JjX3B0ciwKICAgICAiZ3NsZGxjMSAgICAlW2Z0
bXA3XSwgICAweDA3KCVbYmxpbWl0XSkgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAg
ICAiZ3NsZHJjMSAgICAlW2Z0bXA3XSwgICAweDAwKCVbYmxpbWl0XSkgICAgICAgICAgICAgICAg
ICAgICAgICAgXG5cdCIKICAgICAicHN1YnVzYiAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAg
ICAgICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA3
XSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIKKyAgICAi
cHhvciAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAgICAgICVbZnRtcDddICAgICAg
ICAgICAgXG5cdCIKICAgICAicGNtcGVxYiAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAg
ICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIKIAogICAgICJzZGMxICAgICAgICVbZnRtcDBd
LCAgIDB4MDAoJVtzcmN0XSkgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJz
ZGMxICAgICAgICVbZnRtcDNdLCAgIDB4MDgoJVtzcmN0XSkgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcblx0IgogCi0gICAgInhvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAg
ICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wM10s
ICAgJVtmdG1wM10sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4
b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAg
ICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAg
ICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCiAgICAgInBzdWJzYiAgICAgJVtmdG1wMF0sICAg
JVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCiAKLSAgICAieG9y
ICAgICAgICAlW2Z0bXA2XSwgICAlW2Z0bXAxXSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAg
ICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAyXSwgICAgICAgICAg
ICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA2XSwgICAl
W2Z0bXAxXSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAgXG5cdCIKKyAgICAicHhvciAg
ICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAyXSwgICAgICAgICAgICVbZmZfcGJfODBdICAgICAgICAg
XG5cdCIKICAgICAicHN1YnNiICAgICAlW2Z0bXA3XSwgICAlW2Z0bXAzXSwgICAgICAgICAgICVb
ZnRtcDZdICAgICAgICAgICAgXG5cdCIKICAgICAicGFkZHNiICAgICAlW2Z0bXAwXSwgICAlW2Z0
bXAwXSwgICAgICAgICAgICVbZnRtcDddICAgICAgICAgICAgXG5cdCIKICAgICAicGFkZHNiICAg
ICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDddICAgICAgICAgICAgXG5c
dCIKICAgICAicGFkZHNiICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRt
cDddICAgICAgICAgICAgXG5cdCIKLSAgICAiYW5kICAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1
XSwgICAgICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKKyAgICAicGFuZCAgICAgICAl
W2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIK
ICAgICAicGFkZHNiICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZmZfcGJf
MDRdICAgICAgICAgXG5cdCIKIAotICAgICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4MDMgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICJtdGMxICAgICAgICVb
dG1wMF0sICAgICVbZnRtcDldICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0Igor
ICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4MDMgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRtcDldICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJwc2xsaCAgICAgICVbZnRt
cDBdLCAgICVbZnRtcDVdLCAgICAgICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgogICAg
ICJwc3JhaCAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wOV0gICAg
ICAgICAgICBcblx0IgogICAgICJwc3JsaCAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAg
ICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgogCi0gICAgImxpICAgICAgICAgJVt0bXAw
XSwgICAgMHgwYiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCi0gICAg
Im10YzEgICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwYiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwg
ICAgJVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgInBz
cmFoICAgICAgJVtmdG1wN10sICAgJVtmdG1wNV0sICAgICAgICAgICAlW2Z0bXA5XSAgICAgICAg
ICAgIFxuXHQiCiAgICAgInBzbGxoICAgICAgJVtmdG1wN10sICAgJVtmdG1wN10sICAgICAgICAg
ICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCi0gICAgIm9yICAgICAgICAgJVtmdG1wMF0sICAg
JVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA3XSAgICAgICAgICAgIFxuXHQiCisgICAgInBvciAg
ICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICAgICAlW2Z0bXA3XSAgICAgICAgICAg
IFxuXHQiCiAgICAgInBzdWJzYiAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAl
W2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wM10sICAgJVtm
dG1wM10sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAg
ICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICAgICAlW2ZmX3BiXzgwXSAgICAgICAgIFxu
XHQiCiAgICAgInBzdWJzYiAgICAgJVtmdG1wNV0sICAgJVtmdG1wNV0sICAgICAgICAgICAlW2Zm
X3BiXzAxXSAgICAgICAgIFxuXHQiCiAKLSAgICAibGkgICAgICAgICAlW3RtcDBdLCAgICAweDAz
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKLSAgICAibXRjMSAgICAg
ICAlW3RtcDBdLCAgICAlW2Z0bXA5XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5c
dCIKKyAgICAiZGxpICAgICAgICAlW3RtcDBdLCAgICAweDAzICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXG5cdCIKKyAgICAiZG10YzEgICAgICAlW3RtcDBdLCAgICAlW2Z0bXA5
XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAicHNsbGggICAgICAl
W2Z0bXAwXSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIK
ICAgICAicHNyYWggICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDld
ICAgICAgICAgICAgXG5cdCIKICAgICAicHNybGggICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwg
ICAgICAgICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIKIAotICAgICJsaSAgICAgICAgICVb
dG1wMF0sICAgIDB4MGIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0Igot
ICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDldICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4MGIgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1w
MF0sICAgICVbZnRtcDldICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAg
ICJwc3JhaCAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAgICAgJVtmdG1wOV0gICAg
ICAgICAgICBcblx0IgogICAgICJwc2xsaCAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAg
ICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgotICAgICJvciAgICAgICAgICVbZnRtcDBd
LCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgorICAgICJw
b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wNV0gICAgICAg
ICAgICBcblx0IgogICAgICJwYWRkc2IgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAg
ICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRtcDZdLCAg
ICVbZnRtcDZdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAgICBcblx0IgorICAgICJweG9y
ICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmZl9wYl84MF0gICAgICAg
ICBcblx0IgogCiAgICAgImxkYzEgICAgICAgJVtmdG1wMF0sICAgMHgwMCglW3NyY3RdKSAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImxkYzEgICAgICAgJVtmdG1wNF0sICAg
MHgwOCglW3NyY3RdKSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCkBAIC0xMTk1LDcg
KzEyNzIsNyBAQCB2b2lkIHZwOF9sb29wX2ZpbHRlcl9zaW1wbGVfdmVydGljYWxfZWRnZV9tbWko
dW5zaWduZWQgY2hhciAqc3JjX3B0ciwKICAgICAicHVucGNraGh3ICAlW2Z0bXA1XSwgICAlW2Z0
bXAxXSwgICAgICAgICAgICVbZnRtcDNdICAgICAgICAgICAgXG5cdCIKICAgICAicHVucGNrbGh3
ICAlW2Z0bXAxXSwgICAlW2Z0bXAxXSwgICAgICAgICAgICVbZnRtcDNdICAgICAgICAgICAgXG5c
dCIKIAotICAgICJkc3JsICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtm
dG1wMTBdICAgICAgICAgICBcblx0IgorICAgICJzc3JsZCAgICAgICVbZnRtcDBdLCAgICVbZnRt
cDBdLCAgICAgICAgICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0IgogICAgIE1NSV9TVUJVKCVb
YWRkcjFdLCAlW2FkZHIwXSwgJVtzcmNfcGl4ZWxfc3RlcF94NF0pCiAgICAgImdzc3dsYzEgICAg
JVtmdG1wMF0sICAgMHgwMyglW2FkZHIxXSkgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQi
CiAgICAgImdzc3dyYzEgICAgJVtmdG1wMF0sICAgMHgwMCglW2FkZHIxXSkgICAgICAgICAgICAg
ICAgICAgICAgICAgIFxuXHQiCkBAIC0xMjAzLDcgKzEyODAsNyBAQCB2b2lkIHZwOF9sb29wX2Zp
bHRlcl9zaW1wbGVfdmVydGljYWxfZWRnZV9tbWkodW5zaWduZWQgY2hhciAqc3JjX3B0ciwKICAg
ICAiZ3Nzd2xjMSAgICAlW2Z0bXA2XSwgICAweDAzKCVbYWRkcjFdKSAgICAgICAgICAgICAgICAg
ICAgICAgICAgXG5cdCIKICAgICAiZ3Nzd3JjMSAgICAlW2Z0bXA2XSwgICAweDAwKCVbYWRkcjFd
KSAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKIAotICAgICJkc3JsICAgICAgICVbZnRt
cDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0IgorICAg
ICJzc3JsZCAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAgICAgJVtmdG1wMTBdICAg
ICAgICAgICBcblx0IgogICAgICJnc3N3bGMxICAgICVbZnRtcDFdLCAgIDB4MDMoJVtzcmNfcHRy
XSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJnc3N3cmMxICAgICVbZnRtcDFd
LCAgIDB4MDAoJVtzcmNfcHRyXSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogCkBAIC0x
MjE1LDExICsxMjkyLDExIEBAIHZvaWQgdnA4X2xvb3BfZmlsdGVyX3NpbXBsZV92ZXJ0aWNhbF9l
ZGdlX21taSh1bnNpZ25lZCBjaGFyICpzcmNfcHRyLAogICAgICJnc3N3bGMxICAgICVbZnRtcDVd
LCAgIDB4MDMoJVthZGRyMV0pICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJn
c3N3cmMxICAgICVbZnRtcDVdLCAgIDB4MDAoJVthZGRyMV0pICAgICAgICAgICAgICAgICAgICAg
ICAgICBcblx0IgogCi0gICAgImRzcmwgICAgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0sICAgICAg
ICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCisgICAgInNzcmxkICAgICAgJVtmdG1wMV0s
ICAgJVtmdG1wMV0sICAgICAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCiAgICAgImdz
c3dsYzEgICAgJVtmdG1wMV0sICAgMHgwMyglW2FkZHIwXSkgICAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCiAgICAgImdzc3dyYzEgICAgJVtmdG1wMV0sICAgMHgwMCglW2FkZHIwXSkgICAg
ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAKLSAgICAiZHNybCAgICAgICAlW2Z0bXA1XSwg
ICAlW2Z0bXA1XSwgICAgICAgICAgICVbZnRtcDEwXSAgICAgICAgICAgXG5cdCIKKyAgICAic3Ny
bGQgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgICAgICVbZnRtcDEwXSAgICAgICAg
ICAgXG5cdCIKICAgICBNTUlfQUREVSglW2FkZHIxXSwgJVthZGRyMF0sICVbc3JjX3BpeGVsX3N0
ZXBfeDJdKQogICAgICJnc3N3bGMxICAgICVbZnRtcDVdLCAgIDB4MDMoJVthZGRyMV0pICAgICAg
ICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJnc3N3cmMxICAgICVbZnRtcDVdLCAgIDB4
MDAoJVthZGRyMV0pICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgpAQCAtMTIzNSwxNiAr
MTMxMiwxNyBAQCB2b2lkIHZwOF9sb29wX2ZpbHRlcl9zaW1wbGVfdmVydGljYWxfZWRnZV9tbWko
dW5zaWduZWQgY2hhciAqc3JjX3B0ciwKICAgICAgIFtmdG1wMTBdIj0mZiIoZnRtcFsxMF0pLCAg
ICAgICAgICAgIFtmdG1wMTFdIj0mZiIoZnRtcFsxMV0pLAogICAgICAgW3RtcDBdIj0mciIodG1w
WzBdKSwKICAgICAgIFthZGRyMF0iPSZyIihhZGRyWzBdKSwgICAgICAgICAgICBbYWRkcjFdIj0m
ciIoYWRkclsxXSksCi0gICAgICBbc3JjX3B0cl0iKyZyIihzcmNfcHRyKSwgICAgICAgICAgW2Nv
dW50XSIrJnIiKGNvdW50KQorICAgICAgW3NyY19wdHJdIismciIoc3JjX3B0ciksICAgICAgICAg
IFtjb3VudF0iKyZyIihjb3VudCksCisgICAgICBbZmZfcGJfZmVdIj0mZiIoZmZfcGJfZmUpLCAg
ICAgICAgW2ZmX3BiXzgwXSI9JmYiKGZmX3BiXzgwKSwKKyAgICAgIFtmZl9wYl8wNF0iPSZmIihm
Zl9wYl8wNCksICAgICAgICBbZmZfcGJfMDFdIj0mZiIoZmZfcGJfMDEpCiAgICAgOiBbYmxpbWl0
XSJyIihibGltaXQpLCAgICAgICAgICAgICAgW3NyY3RdInIiKHNyY3QpLAogICAgICAgW3NyY19w
aXhlbF9zdGVwXSJyIigobWlwc19yZWcpc3JjX3BpeGVsX3N0ZXApLAogICAgICAgW3NyY19waXhl
bF9zdGVwX3gyXSJyIigobWlwc19yZWcpKHNyY19waXhlbF9zdGVwPDwxKSksCiAgICAgICBbc3Jj
X3BpeGVsX3N0ZXBfeDRdInIiKChtaXBzX3JlZykoc3JjX3BpeGVsX3N0ZXA8PDIpKSwKLSAgICAg
IFtzcmNfcGl4ZWxfc3RlcF94OF0iciIoKG1pcHNfcmVnKShzcmNfcGl4ZWxfc3RlcDw8MykpLAot
ICAgICAgW2ZmX3BiX2ZlXSJmIihmZl9wYl9mZSksICAgICAgICAgIFtmZl9wYl84MF0iZiIoZmZf
cGJfODApLAotICAgICAgW2ZmX3BiXzA0XSJmIihmZl9wYl8wNCksICAgICAgICAgIFtmZl9wYl8w
MV0iZiIoZmZfcGJfMDEpCisgICAgICBbc3JjX3BpeGVsX3N0ZXBfeDhdInIiKChtaXBzX3JlZyko
c3JjX3BpeGVsX3N0ZXA8PDMpKQogICAgIDogIm1lbW9yeSIKICAgKTsKKyAgLyogY2xhbmctZm9y
bWF0IG9uICovCiB9CiAKIC8qIEhvcml6b250YWwgTUIgZmlsdGVyaW5nICovCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24vbWlwcy9tbWkvc2l4dGFwX2ZpbHRlcl9tbWkuYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA4L2NvbW1vbi9taXBzL21taS9zaXh0YXBfZmlsdGVyX21taS5jCmluZGV4IDc3
ZDY2NWQ0NTYyYTA4ZmJjN2M1MjA5MzBiZjBiZDE3NTk0ZTdiN2MuLmI4NWY3M2ZkZmY4ZmYzOTY3
OGY5ZDM0MDE5OWQ5YmI2YTMxMjBmYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9taXBzL21taS9zaXh0YXBfZmlsdGVyX21taS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1v
bi9taXBzL21taS9zaXh0YXBfZmlsdGVyX21taS5jCkBAIC03MCw5ICs3MCw4IEBAIHN0YXRpYyBJ
TkxJTkUgdm9pZCB2cDhfZmlsdGVyX2Jsb2NrMWRfaDZfbW1pKHVuc2lnbmVkIGNoYXIgKnNyY19w
dHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25l
ZCBpbnQgb3V0cHV0X2hlaWdodCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHVuc2lnbmVkIGludCBvdXRwdXRfd2lkdGgsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpbnQxNl90ICp2cDhfZmlsdGVyKSB7Ci0g
IHVpbnQzMl90IHRtcFsxXTsKLSAgREVDTEFSRV9BTElHTkVEKDgsIGNvbnN0IHVpbnQ2NF90LCBm
Zl9waF80MCkgPSB7IDB4MDA0MDAwNDAwMDQwMDA0MFVMTCB9OwotCisgIHVpbnQ2NF90IHRtcFsx
XTsKKyAgZG91YmxlIGZmX3BoXzQwOwogI2lmIF9NSVBTX1NJTSA9PSBfQUJJTzMyCiAgIHJlZ2lz
dGVyIGRvdWJsZSBmemVybyBhc20oIiRmMCIpOwogICByZWdpc3RlciBkb3VibGUgZnRtcDAgYXNt
KCIkZjIiKTsKQEAgLTEwMywxOCArMTAyLDIxIEBAIHN0YXRpYyBJTkxJTkUgdm9pZCB2cDhfZmls
dGVyX2Jsb2NrMWRfaDZfbW1pKHVuc2lnbmVkIGNoYXIgKnNyY19wdHIsCiAgIHJlZ2lzdGVyIGRv
dWJsZSBmdG1wMTEgYXNtKCIkZjEyIik7CiAjZW5kaWYgIC8vIF9NSVBTX1NJTSA9PSBfQUJJTzMy
CiAKKyAgLyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlICgKKyAgICAi
ZGxpICAgICAgICAlW3RtcDBdLCAgICAgICAgMHgwMDQwMDA0MDAwNDAwMDQwICAgICAgICAgICAg
ICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICAgICAlW2ZmX3BoXzQw
XSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImxkYzEgICAgICAgJVtmdG1w
MF0sICAgICAgIDB4MDAoJVt2cDhfZmlsdGVyXSkgICAgICAgICAgICAgICAgICAgXG5cdCIKICAg
ICAibGRjMSAgICAgICAlW2Z0bXAxXSwgICAgICAgMHgxMCglW3ZwOF9maWx0ZXJdKSAgICAgICAg
ICAgICAgICAgICBcblx0IgogICAgICJsZGMxICAgICAgICVbZnRtcDJdLCAgICAgICAweDIwKCVb
dnA4X2ZpbHRlcl0pICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImxkYzEgICAgICAgJVtm
dG1wM10sICAgICAgIDB4MzAoJVt2cDhfZmlsdGVyXSkgICAgICAgICAgICAgICAgICAgXG5cdCIK
ICAgICAibGRjMSAgICAgICAlW2Z0bXA0XSwgICAgICAgMHg0MCglW3ZwOF9maWx0ZXJdKSAgICAg
ICAgICAgICAgICAgICBcblx0IgogICAgICJsZGMxICAgICAgICVbZnRtcDVdLCAgICAgICAweDUw
KCVbdnA4X2ZpbHRlcl0pICAgICAgICAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAg
JVtmemVyb10sICAgICAgICVbZnplcm9dLCAgICAgICAgICAgJVtmemVyb10gICAgICAgICAgXG5c
dCIKLSAgICAibGkgICAgICAgICAlW3RtcDBdLCAgICAgICAgMHgwNyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcblx0IgotICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICAgICAl
W2Z0bXA3XSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCi0gICAgImxpICAgICAg
ICAgJVt0bXAwXSwgICAgICAgIDB4MDggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XG5cdCIKLSAgICAibXRjMSAgICAgICAlW3RtcDBdLCAgICAgICAgJVtmdG1wMTFdICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnplcm9dLCAgICAg
ICAlW2Z6ZXJvXSwgICAgICAgICAgICVbZnplcm9dICAgICAgICAgIFxuXHQiCisgICAgImRsaSAg
ICAgICAgJVt0bXAwXSwgICAgICAgIDB4MDcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXG5cdCIKKyAgICAiZG10YzEgICAgICAlW3RtcDBdLCAgICAgICAgJVtmdG1wN10gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAg
ICAgICAweDA4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRt
dGMxICAgICAgJVt0bXAwXSwgICAgICAgICVbZnRtcDExXSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXG5cdCIKIAogICAgICIxOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImdzbGRsYzEgICAgJVtmdG1w
OV0sICAgICAgIDB4MDUoJVtzcmNfcHRyXSkgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKQEAg
LTEzNywxMiArMTM5LDEyIEBAIHN0YXRpYyBJTkxJTkUgdm9pZCB2cDhfZmlsdGVyX2Jsb2NrMWRf
aDZfbW1pKHVuc2lnbmVkIGNoYXIgKnNyY19wdHIsCiAgICAgInBtdWxsaCAgICAgJVtmdG1wNl0s
ICAgICAgICVbZnRtcDZdLCAgICAgICAgICAlW2Z0bXA1XSAgICAgICAgICAgXG5cdCIKICAgICAi
cGFkZHNoICAgICAlW2Z0bXA4XSwgICAgICAgJVtmdG1wOF0sICAgICAgICAgICVbZnRtcDZdICAg
ICAgICAgICBcblx0IgogCi0gICAgImRzcmwgICAgICAgJVtmdG1wMTBdLCAgICAgICVbZnRtcDEw
XSwgICAgICAgICAlW2Z0bXAxMV0gICAgICAgICAgXG5cdCIKKyAgICAic3NybGQgICAgICAlW2Z0
bXAxMF0sICAgICAgJVtmdG1wMTBdLCAgICAgICAgICVbZnRtcDExXSAgICAgICAgICBcblx0Igog
ICAgICJwdW5wY2tsYmggICVbZnRtcDZdLCAgICAgICAlW2Z0bXAxMF0sICAgICAgICAgJVtmemVy
b10gICAgICAgICAgIFxuXHQiCiAgICAgInBtdWxsaCAgICAgJVtmdG1wNl0sICAgICAgICVbZnRt
cDZdLCAgICAgICAgICAlW2Z0bXAyXSAgICAgICAgICAgXG5cdCIKICAgICAicGFkZHNoICAgICAl
W2Z0bXA4XSwgICAgICAgJVtmdG1wOF0sICAgICAgICAgICVbZnRtcDZdICAgICAgICAgICBcblx0
IgogCi0gICAgImRzcmwgICAgICAgJVtmdG1wMTBdLCAgICAgICVbZnRtcDEwXSwgICAgICAgICAl
W2Z0bXAxMV0gICAgICAgICAgXG5cdCIKKyAgICAic3NybGQgICAgICAlW2Z0bXAxMF0sICAgICAg
JVtmdG1wMTBdLCAgICAgICAgICVbZnRtcDExXSAgICAgICAgICBcblx0IgogICAgICJwdW5wY2ts
YmggICVbZnRtcDZdLCAgICAgICAlW2Z0bXAxMF0sICAgICAgICAgJVtmemVyb10gICAgICAgICAg
IFxuXHQiCiAgICAgInBtdWxsaCAgICAgJVtmdG1wNl0sICAgICAgICVbZnRtcDZdLCAgICAgICAg
ICAlW2Z0bXAzXSAgICAgICAgICAgXG5cdCIKICAgICAicGFkZHNoICAgICAlW2Z0bXA4XSwgICAg
ICAgJVtmdG1wOF0sICAgICAgICAgICVbZnRtcDZdICAgICAgICAgICBcblx0IgpAQCAtMTY2LDIx
ICsxNjgsMjIgQEAgc3RhdGljIElOTElORSB2b2lkIHZwOF9maWx0ZXJfYmxvY2sxZF9oNl9tbWko
dW5zaWduZWQgY2hhciAqc3JjX3B0ciwKICAgICAgIFtmdG1wOV0iPSZmIihmdG1wOSksICAgICAg
ICAgICAgICBbZnRtcDEwXSI9JmYiKGZ0bXAxMCksCiAgICAgICBbZnRtcDExXSI9JmYiKGZ0bXAx
MSksICAgICAgICAgICAgW3RtcDBdIj0mciIodG1wWzBdKSwKICAgICAgIFtvdXRwdXRfcHRyXSIr
JnIiKG91dHB1dF9wdHIpLCAgICBbb3V0cHV0X2hlaWdodF0iKyZyIihvdXRwdXRfaGVpZ2h0KSwK
LSAgICAgIFtzcmNfcHRyXSIrJnIiKHNyY19wdHIpCisgICAgICBbc3JjX3B0cl0iKyZyIihzcmNf
cHRyKSwgICAgICAgICAgW2ZmX3BoXzQwXSI9JmYiKGZmX3BoXzQwKQogICAgIDogW3NyY19waXhl
bHNfcGVyX2xpbmVdInIiKChtaXBzX3JlZylzcmNfcGl4ZWxzX3Blcl9saW5lKSwKLSAgICAgIFt2
cDhfZmlsdGVyXSJyIih2cDhfZmlsdGVyKSwgICAgICBbb3V0cHV0X3dpZHRoXSJyIihvdXRwdXRf
d2lkdGgpLAotICAgICAgW2ZmX3BoXzQwXSJmIihmZl9waF80MCkKKyAgICAgIFt2cDhfZmlsdGVy
XSJyIih2cDhfZmlsdGVyKSwgICAgICBbb3V0cHV0X3dpZHRoXSJyIihvdXRwdXRfd2lkdGgpCiAg
ICAgOiAibWVtb3J5IgogICAgICk7CisgIC8qIGNsYW5nLWZvcm1hdCBvbiAqLwogfQogCiAvKiBI
b3Jpem9udGFsIGZpbHRlcjogIHBpeGVsX3N0ZXAgaXMgYWx3YXlzIFcgKi8KIHN0YXRpYyBJTkxJ
TkUgdm9pZCB2cDhfZmlsdGVyX2Jsb2NrMWRjX3Y2X21taSgKICAgICB1aW50MTZfdCAqc3JjX3B0
ciwgdW5zaWduZWQgY2hhciAqb3V0cHV0X3B0ciwgdW5zaWduZWQgaW50IG91dHB1dF9oZWlnaHQs
CiAgICAgaW50IG91dHB1dF9waXRjaCwgdW5zaWduZWQgaW50IHBpeGVsc19wZXJfbGluZSwgY29u
c3QgaW50MTZfdCAqdnA4X2ZpbHRlcikgewotICBERUNMQVJFX0FMSUdORUQoOCwgY29uc3QgdWlu
dDY0X3QsIGZmX3BoXzQwKSA9IHsgMHgwMDQwMDA0MDAwNDAwMDQwVUxMIH07Ci0gIHVpbnQzMl90
IHRtcFsxXTsKKyAgZG91YmxlIGZmX3BoXzQwOworICB1aW50NjRfdCB0bXBbMV07CiAgIG1pcHNf
cmVnIGFkZHJbMV07CisKICNpZiBfTUlQU19TSU0gPT0gX0FCSU8zMgogICByZWdpc3RlciBkb3Vi
bGUgZnplcm8gYXNtKCIkZjAiKTsKICAgcmVnaXN0ZXIgZG91YmxlIGZ0bXAwIGFzbSgiJGYyIik7
CkBAIC0yMTUsMTYgKzIxOCwxOSBAQCBzdGF0aWMgSU5MSU5FIHZvaWQgdnA4X2ZpbHRlcl9ibG9j
azFkY192Nl9tbWkoCiAgIHJlZ2lzdGVyIGRvdWJsZSBmdG1wMTMgYXNtKCIkZjE0Iik7CiAjZW5k
aWYgIC8vIF9NSVBTX1NJTSA9PSBfQUJJTzMyCiAKKyAgLyogY2xhbmctZm9ybWF0IG9mZiAqLwog
ICBfX2FzbV9fIHZvbGF0aWxlICgKKyAgICAiZGxpICAgICAgICAlW3RtcDBdLCAgICAgIDB4MDA0
MDAwNDAwMDQwMDA0MCAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAg
ICVbdG1wMF0sICAgICAgJVtmZl9waF80MF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCiAgICAgImxkYzEgICAgICAgJVtmdG1wMF0sICAgICAweDAwKCVbdnA4X2ZpbHRlcl0pICAg
ICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAibGRjMSAgICAgICAlW2Z0bXAxXSwgICAgIDB4
MTAoJVt2cDhfZmlsdGVyXSkgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJsZGMxICAg
ICAgICVbZnRtcDJdLCAgICAgMHgyMCglW3ZwOF9maWx0ZXJdKSAgICAgICAgICAgICAgICAgICAg
IFxuXHQiCiAgICAgImxkYzEgICAgICAgJVtmdG1wM10sICAgICAweDMwKCVbdnA4X2ZpbHRlcl0p
ICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAibGRjMSAgICAgICAlW2Z0bXA0XSwgICAg
IDB4NDAoJVt2cDhfZmlsdGVyXSkgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJsZGMx
ICAgICAgICVbZnRtcDVdLCAgICAgMHg1MCglW3ZwOF9maWx0ZXJdKSAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmemVyb10sICAgICAlW2Z6ZXJvXSwgICAgICAg
ICVbZnplcm9dICAgICAgICAgICAgICAgXG5cdCIKLSAgICAibGkgICAgICAgICAlW3RtcDBdLCAg
ICAgIDB4MDcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICJt
dGMxICAgICAgICVbdG1wMF0sICAgICAgJVtmdG1wMTNdICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmemVyb10sICAgICAlW2Z6ZXJvXSwgICAg
ICAgICVbZnplcm9dICAgICAgICAgICAgICAgXG5cdCIKKyAgICAiZGxpICAgICAgICAlW3RtcDBd
LCAgICAgIDB4MDcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAg
ICJkbXRjMSAgICAgICVbdG1wMF0sICAgICAgJVtmdG1wMTNdICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFxuXHQiCiAKICAgICAvKiBJbiBvcmRlciB0byBtYWtlIGZ1bGwgdXNlIG9mIG1l
bW9yeSBsb2FkIGRlbGF5IHNsb3QsCiAgICAgICogT3BlcmF0aW9uIG9mIG1lbW9yeSBsb2FkaW5n
IGFuZCBjYWxjdWxhdGluZyBoYXMgYmVlbiByZWFycmFuZ2VkLgpAQCAtMjg1LDE1ICsyOTEsMTYg
QEAgc3RhdGljIElOTElORSB2b2lkIHZwOF9maWx0ZXJfYmxvY2sxZGNfdjZfbW1pKAogICAgICAg
W2Z0bXAxMV0iPSZmIihmdG1wMTEpLCAgICAgICAgICAgIFtmdG1wMTJdIj0mZiIoZnRtcDEyKSwK
ICAgICAgIFtmdG1wMTNdIj0mZiIoZnRtcDEzKSwgICAgICAgICAgICBbdG1wMF0iPSZyIih0bXBb
MF0pLAogICAgICAgW2FkZHIwXSI9JnIiKGFkZHJbMF0pLCAgICAgICAgICAgIFtzcmNfcHRyXSIr
JnIiKHNyY19wdHIpLAotICAgICAgW291dHB1dF9wdHJdIismciIob3V0cHV0X3B0ciksICAgIFtv
dXRwdXRfaGVpZ2h0XSIrJnIiKG91dHB1dF9oZWlnaHQpCisgICAgICBbb3V0cHV0X3B0cl0iKyZy
IihvdXRwdXRfcHRyKSwgICAgW291dHB1dF9oZWlnaHRdIismciIob3V0cHV0X2hlaWdodCksCisg
ICAgICBbZmZfcGhfNDBdIj0mZiIoZmZfcGhfNDApCiAgICAgOiBbcGl4ZWxzX3Blcl9saW5lXSJy
IigobWlwc19yZWcpcGl4ZWxzX3Blcl9saW5lKSwKICAgICAgIFtwaXhlbHNfcGVyX2xpbmVfeDJd
InIiKChtaXBzX3JlZykocGl4ZWxzX3Blcl9saW5lPDwxKSksCiAgICAgICBbcGl4ZWxzX3Blcl9s
aW5lX3g0XSJyIigobWlwc19yZWcpKHBpeGVsc19wZXJfbGluZTw8MikpLAogICAgICAgW3ZwOF9m
aWx0ZXJdInIiKHZwOF9maWx0ZXIpLAotICAgICAgW291dHB1dF9waXRjaF0iciIoKG1pcHNfcmVn
KW91dHB1dF9waXRjaCksCi0gICAgICBbZmZfcGhfNDBdImYiKGZmX3BoXzQwKQorICAgICAgW291
dHB1dF9waXRjaF0iciIoKG1pcHNfcmVnKW91dHB1dF9waXRjaCkKICAgICA6ICJtZW1vcnkiCiAg
ICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICovCiB9CiAKIC8qIFdoZW4geG9mZnNldCA9PSAw
LCB2cDhfZmlsdGVyPSB7MCwwLDEyOCwwLDAsMH0sCkBAIC0zMTMsOCArMzIwLDkgQEAgc3RhdGlj
IElOTElORSB2b2lkIHZwOF9maWx0ZXJfYmxvY2sxZF9oNl9maWx0ZXIwX21taSgKICAgcmVnaXN0
ZXIgZG91YmxlIGZ0bXAxIGFzbSgiJGYyIik7CiAjZW5kaWYgIC8vIF9NSVBTX1NJTSA9PSBfQUJJ
TzMyCiAKKyAgLyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlICgKLSAg
ICAieG9yICAgICAgICAlW2Z6ZXJvXSwgICAgICAgJVtmemVyb10sICAgICAgICAgICAlW2Z6ZXJv
XSAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnplcm9dLCAgICAgICAlW2Z6ZXJv
XSwgICAgICAgICAgICVbZnplcm9dICAgICAgICAgIFxuXHQiCiAKICAgICAiMTogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0
IgogICAgICJnc2xkbGMxICAgICVbZnRtcDBdLCAgICAgICAweDA3KCVbc3JjX3B0cl0pICAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCkBAIC0zMzUsNiArMzQzLDcgQEAgc3RhdGljIElOTElORSB2
b2lkIHZwOF9maWx0ZXJfYmxvY2sxZF9oNl9maWx0ZXIwX21taSgKICAgICAgIFtvdXRwdXRfd2lk
dGhdInIiKG91dHB1dF93aWR0aCkKICAgICA6ICJtZW1vcnkiCiAgICAgKTsKKyAgLyogY2xhbmct
Zm9ybWF0IG9uICovCiB9CiAKIHN0YXRpYyBJTkxJTkUgdm9pZCB2cDhfZmlsdGVyX2Jsb2NrMWRj
X3Y2X2ZpbHRlcjBfbW1pKApAQCAtMzUwLDggKzM1OSw5IEBAIHN0YXRpYyBJTkxJTkUgdm9pZCB2
cDhfZmlsdGVyX2Jsb2NrMWRjX3Y2X2ZpbHRlcjBfbW1pKAogICByZWdpc3RlciBkb3VibGUgZnRt
cDEgYXNtKCIkZjIiKTsKICNlbmRpZiAgLy8gX01JUFNfU0lNID09IF9BQklPMzIKIAorICAvKiBj
bGFuZy1mb3JtYXQgb24gKi8KICAgX19hc21fXyB2b2xhdGlsZSAoCi0gICAgInhvciAgICAgICAg
JVtmemVyb10sICAgICAlW2Z6ZXJvXSwgICAgICAgICVbZnplcm9dICAgICAgICAgICAgICAgXG5c
dCIKKyAgICAicHhvciAgICAgICAlW2Z6ZXJvXSwgICAgICVbZnplcm9dLCAgICAgICAgJVtmemVy
b10gICAgICAgICAgICAgICBcblx0IgogCiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAiZ3NsZGxj
MSAgICAlW2Z0bXAwXSwgICAgIDB4MDcoJVtzcmNfcHRyXSkgICAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgpAQCAtMzcxLDYgKzM4MSw3IEBAIHN0YXRpYyBJTkxJTkUgdm9pZCB2cDhfZmlsdGVy
X2Jsb2NrMWRjX3Y2X2ZpbHRlcjBfbW1pKAogICAgICAgW291dHB1dF9waXRjaF0iciIoKG1pcHNf
cmVnKW91dHB1dF9waXRjaCkKICAgICA6ICJtZW1vcnkiCiAgICAgKTsKKyAgLyogY2xhbmctZm9y
bWF0IG9uICovCiB9CiAKICNkZWZpbmUgc2l4dGFwTnhNKG4sIG0pICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9jb21tb24vbWlwcy9tc2EvdnA4X21hY3Jvc19tc2EuaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi9taXBzL21zYS92cDhfbWFjcm9zX21zYS5oCmluZGV4IDE0ZjgzNzk5ZmZkNmVk
YThhMTNkOWZkMDNhNTk1YmUyZGU0OGZjYzkuLmRkYzg4MWE3ZmNjZDM4YWUxYzc1ZjIwNmU2YWUx
MGU5NjdjMmQ0YzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9taXBzL21zYS92
cDhfbWFjcm9zX21zYS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi9taXBzL21zYS92cDhf
bWFjcm9zX21zYS5oCkBAIC0xMjIsMTAgKzEyMiwxMCBAQAogICAgIGNvbnN0IHVpbnQ4X3QgKnBz
cmNfbSA9IChjb25zdCB1aW50OF90ICopKHBzcmMpOyBcCiAgICAgdWludDMyX3QgdmFsX207ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgIGFzbSB2b2xhdGlsZSgidWx3ICAl
W3ZhbF9tXSwgICVbcHNyY19tXSAgXG5cdCIgICBcCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgICAgICAgICAgICAgOiBbdmFsX21d
ICI9ciIodmFsX20pICAgICAgICAgICAgICAgXAotICAgICAgICAgICAgICAgICA6IFtwc3JjX21d
ICJtIigqcHNyY19tKSk7ICAgICAgICAgICBcCisgICAgYXNtIHZvbGF0aWxlKCJsd3IgJVt2YWxf
bV0sIDAoJVtwc3JjX21dKSBcblx0IiAgIFwKKyAgICAgICAgICAgICAgICAgImx3bCAlW3ZhbF9t
XSwgMyglW3BzcmNfbV0pIFxuXHQiICAgXAorICAgICAgICAgICAgICAgICA6IFt2YWxfbV0gIj0m
ciIodmFsX20pICAgICAgICAgICAgICBcCisgICAgICAgICAgICAgICAgIDogW3BzcmNfbV0gInIi
KHBzcmNfbSkpOyAgICAgICAgICAgIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAogICAgIHZhbF9tOyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCiAgIH0pCkBAIC0xMzYsMTAgKzEzNiwxMCBAQAogICAgIGNv
bnN0IHVpbnQ4X3QgKnBzcmNfbSA9IChjb25zdCB1aW50OF90ICopKHBzcmMpOyBcCiAgICAgdWlu
dDY0X3QgdmFsX20gPSAwOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgIGFzbSB2
b2xhdGlsZSgidWxkICAlW3ZhbF9tXSwgICVbcHNyY19tXSAgXG5cdCIgICBcCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgICAgICAg
ICAgICAgOiBbdmFsX21dICI9ciIodmFsX20pICAgICAgICAgICAgICAgXAotICAgICAgICAgICAg
ICAgICA6IFtwc3JjX21dICJtIigqcHNyY19tKSk7ICAgICAgICAgICBcCisgICAgYXNtIHZvbGF0
aWxlKCJsZHIgJVt2YWxfbV0sIDAoJVtwc3JjX21dKSBcblx0IiAgIFwKKyAgICAgICAgICAgICAg
ICAgImxkbCAlW3ZhbF9tXSwgNyglW3BzcmNfbV0pIFxuXHQiICAgXAorICAgICAgICAgICAgICAg
ICA6IFt2YWxfbV0gIj0mciIodmFsX20pICAgICAgICAgICAgICBcCisgICAgICAgICAgICAgICAg
IDogW3BzcmNfbV0gInIiKHBzcmNfbSkpOyAgICAgICAgICAgIFwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIHZhbF9tOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgIH0pCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC9jb21tb24vdGhyZWFkaW5nLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24v
dGhyZWFkaW5nLmgKaW5kZXggZjkyMTM2OTM4NjRlMjkwYWZiZThjMzZjMWFlNmI2MmIyMmViMzc2
MS4uMWNmYjlmZWM1MTU0NjE0NjJhMTE2MDQ4ODI4NGE4N2UyMmVkNDliOCAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3RocmVhZGluZy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Nv
bW1vbi90aHJlYWRpbmcuaApAQCAtMTcxLDE3ICsxNzEsMjAgQEAgc3RhdGljIGlubGluZSBpbnQg
c2VtX2Rlc3Ryb3koc2VtX3QgKnNlbSkgewogI2RlZmluZSBzZW1fd2FpdChzZW0pIChzZW1hcGhv
cmVfd2FpdCgqc2VtKSkKICNkZWZpbmUgc2VtX3Bvc3Qoc2VtKSBzZW1hcGhvcmVfc2lnbmFsKCpz
ZW0pCiAjZGVmaW5lIHNlbV9kZXN0cm95KHNlbSkgc2VtYXBob3JlX2Rlc3Ryb3kobWFjaF90YXNr
X3NlbGYoKSwgKnNlbSkKLSNkZWZpbmUgdGhyZWFkX3NsZWVwKG5tcykKLS8qIHsgc3RydWN0IHRp
bWVzcGVjIHRzO3RzLnR2X3NlYz0wOyB0cy50dl9uc2VjID0KLSAgIDEwMDAqbm1zO25hbm9zbGVl
cCgmdHMsIE5VTEwpO30gKi8KICNlbHNlCiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAjaW5jbHVkZSA8
c2NoZWQuaD4KLSNkZWZpbmUgdGhyZWFkX3NsZWVwKG5tcykgc2NoZWRfeWllbGQoKTsKKyNlbmRp
ZiAvKiBfX0FQUExFX18gKi8KKy8qIE5vdCBXaW5kb3dzLiBBc3N1bWUgcHRocmVhZHMgKi8KKwor
LyogdGhyZWFkX3NsZWVwIGltcGxlbWVudGF0aW9uOiB5aWVsZCB1bmxlc3MgTGludXgvVW5peC4g
Ki8KKyNpZiBkZWZpbmVkKF9fdW5peF9fKSB8fCBkZWZpbmVkKF9fQVBQTEVfXykKKyNkZWZpbmUg
dGhyZWFkX3NsZWVwKG5tcykKIC8qIHtzdHJ1Y3QgdGltZXNwZWMgdHM7dHMudHZfc2VjPTA7CiAg
ICAgdHMudHZfbnNlYyA9IDEwMDAqbm1zO25hbm9zbGVlcCgmdHMsIE5VTEwpO30gKi8KLSNlbmRp
ZgotLyogTm90IFdpbmRvd3MuIEFzc3VtZSBwdGhyZWFkcyAqLworI2Vsc2UKKyNkZWZpbmUgdGhy
ZWFkX3NsZWVwKG5tcykgc2NoZWRfeWllbGQoKTsKKyNlbmRpZiAvKiBfX3VuaXhfXyB8fCBfX0FQ
UExFX18gKi8KIAogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94
ODYvZGVxdWFudGl6ZV9tbXguYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9kZXF1YW50
aXplX21teC5hc20KaW5kZXggYmZkZDk5Nzc4MjhjZmU0MWI5ZjExY2M0NzQ5OTNiMjRkYWQ2ZjE2
Ni4uMGEyNjllMTVmNzE1OWE1NjI3ZWMzMWUyMTU1MzAzYTE0N2UxOWQ4NCAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9kZXF1YW50aXplX21teC5hc20KKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDgvY29tbW9uL3g4Ni9kZXF1YW50aXplX21teC5hc20KQEAgLTE0LDcgKzE0LDcgQEAK
IFNFQ1RJT04gLnRleHQKIAogO3ZvaWQgdnA4X2RlcXVhbnRpemVfYl9pbXBsX21teChzaG9ydCAq
c3EsIHNob3J0ICpkcSwgc2hvcnQgKnEpCi1nbG9iYWwgc3ltKHZwOF9kZXF1YW50aXplX2JfaW1w
bF9tbXgpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfZGVxdWFudGl6ZV9iX2ltcGxfbW14KQogc3lt
KHZwOF9kZXF1YW50aXplX2JfaW1wbF9tbXgpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1v
diAgICAgICAgIHJicCwgcnNwCkBAIC01Niw3ICs1Niw3IEBAIHN5bSh2cDhfZGVxdWFudGl6ZV9i
X2ltcGxfbW14KToKIDtzaG9ydCAqZHEsICAgICAgICAgICAgICAgMQogO3Vuc2lnbmVkIGNoYXIg
KmRlc3QsICAgICAyCiA7aW50IHN0cmlkZSkgICAgICAgICAgICAgIDMKLWdsb2JhbCBzeW0odnA4
X2RlcXVhbnRfaWRjdF9hZGRfbW14KSBQUklWQVRFCitnbG9iYWxzeW0odnA4X2RlcXVhbnRfaWRj
dF9hZGRfbW14KQogc3ltKHZwOF9kZXF1YW50X2lkY3RfYWRkX21teCk6CiAgICAgcHVzaCAgICAg
ICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi94ODYvaWRjdGxsbV9tbXguYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4
Ni9pZGN0bGxtX21teC5hc20KaW5kZXggNTc3M2Q5ZDg0ZTg5MjY5MzgyY2Q0N2UyMDg4OTMzNjI0
MGUzMGE3OS4uNmNlYTg2ZmUwMzQzYTE3ZTc0NWRiODg0ZjlmNTBiMGQyOGE3OTg4YyAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9pZGN0bGxtX21teC5hc20KKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3g4Ni9pZGN0bGxtX21teC5hc20KQEAgLTM1LDcgKzM1LDcgQEAg
U0VDVElPTiAudGV4dAogCiA7dm9pZCB2cDhfc2hvcnRfaWRjdDR4NGxsbV9tbXgoc2hvcnQgKmlu
cHV0LCB1bnNpZ25lZCBjaGFyICpwcmVkLAogO2ludCBwaXRjaCwgdW5zaWduZWQgY2hhciAqZGVz
dCxpbnQgc3RyaWRlKQotZ2xvYmFsIHN5bSh2cDhfc2hvcnRfaWRjdDR4NGxsbV9tbXgpIFBSSVZB
VEUKK2dsb2JhbHN5bSh2cDhfc2hvcnRfaWRjdDR4NGxsbV9tbXgpCiBzeW0odnA4X3Nob3J0X2lk
Y3Q0eDRsbG1fbW14KToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAs
IHJzcApAQCAtMjI1LDcgKzIyNSw3IEBAIHN5bSh2cDhfc2hvcnRfaWRjdDR4NGxsbV9tbXgpOgog
O2ludCBwcmVkX3N0cmlkZSwKIDt1bnNpZ25lZCBjaGFyICpkc3RfcHRyLAogO2ludCBzdHJpZGUp
Ci1nbG9iYWwgc3ltKHZwOF9kY19vbmx5X2lkY3RfYWRkX21teCkgUFJJVkFURQorZ2xvYmFsc3lt
KHZwOF9kY19vbmx5X2lkY3RfYWRkX21teCkKIHN5bSh2cDhfZGNfb25seV9pZGN0X2FkZF9tbXgp
OgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2lkY3RsbG1fc3NlMi5hc20gYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZwOC9jb21tb24veDg2L2lkY3RsbG1fc3NlMi5hc20KaW5kZXggNTYwZmFiYTAwMGNmNzNl
NDY2ZThjMjExYTNiNGVmOTdiM2NkNjk4MC4uYmI3OWQyZGEzYjNmOTcwOWY1YjUxOWRlMDQ3ODIw
NDEwYmI0MmJjYSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9pZGN0bGxt
X3NzZTIuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvaWRjdGxsbV9zc2UyLmFz
bQpAQCAtMjEsNyArMjEsNyBAQAogCiBTRUNUSU9OIC50ZXh0CiAKLWdsb2JhbCBzeW0odnA4X2lk
Y3RfZGVxdWFudF8wXzJ4X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfaWRjdF9kZXF1YW50
XzBfMnhfc3NlMikKIHN5bSh2cDhfaWRjdF9kZXF1YW50XzBfMnhfc3NlMik6CiAgICAgcHVzaCAg
ICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTEwMyw3ICsxMDMsNyBAQCBz
eW0odnA4X2lkY3RfZGVxdWFudF8wXzJ4X3NzZTIpOgogOyAgIHVuc2lnbmVkIGNoYXIgKmRzdCAg
LSAyCiA7ICAgaW50IGRzdF9zdHJpZGUgICAgICAtIDMKIDsgKQotZ2xvYmFsIHN5bSh2cDhfaWRj
dF9kZXF1YW50X2Z1bGxfMnhfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZwOF9pZGN0X2RlcXVh
bnRfZnVsbF8yeF9zc2UyKQogc3ltKHZwOF9pZGN0X2RlcXVhbnRfZnVsbF8yeF9zc2UyKToKICAg
ICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMzYwLDcgKzM2
MCw3IEBAIHN5bSh2cDhfaWRjdF9kZXF1YW50X2Z1bGxfMnhfc3NlMik6CiA7ICAgaW50IGRzdF9z
dHJpZGUgICAgICAtIDMKIDsgICBzaG9ydCAqZGMgICAgICAgICAgIC0gNAogOyApCi1nbG9iYWwg
c3ltKHZwOF9pZGN0X2RlcXVhbnRfZGNfMF8yeF9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnA4
X2lkY3RfZGVxdWFudF9kY18wXzJ4X3NzZTIpCiBzeW0odnA4X2lkY3RfZGVxdWFudF9kY18wXzJ4
X3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBA
IC00MzYsNyArNDM2LDcgQEAgc3ltKHZwOF9pZGN0X2RlcXVhbnRfZGNfMF8yeF9zc2UyKToKIDsg
ICBpbnQgZHN0X3N0cmlkZSAgICAgIC0gMwogOyAgIHNob3J0ICpkYyAgICAgICAgICAgLSA0CiA7
ICkKLWdsb2JhbCBzeW0odnA4X2lkY3RfZGVxdWFudF9kY19mdWxsXzJ4X3NzZTIpIFBSSVZBVEUK
K2dsb2JhbHN5bSh2cDhfaWRjdF9kZXF1YW50X2RjX2Z1bGxfMnhfc3NlMikKIHN5bSh2cDhfaWRj
dF9kZXF1YW50X2RjX2Z1bGxfMnhfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92
ICAgICAgICAgcmJwLCByc3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYv
aXdhbHNoX3NzZTIuYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9pd2Fsc2hfc3NlMi5h
c20KaW5kZXggMDA0M2U5M2IwNjEzZjgwNTc4NzM3MjJmNjFmZGRjZmE1MjIxYjE0MC4uNTZmMzdj
M2UwZjVlZDk3MTkxOTI3ZjNkOTJiMmJlZTk0OGJiZDRmYyAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3g4Ni9pd2Fsc2hfc3NlMi5hc20KKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL3g4Ni9pd2Fsc2hfc3NlMi5hc20KQEAgLTE0LDcgKzE0LDcgQEAKIFNFQ1RJT04gLnRleHQK
IAogO3ZvaWQgdnA4X3Nob3J0X2ludl93YWxzaDR4NF9zc2UyKHNob3J0ICppbnB1dCwgc2hvcnQg
Km1iX2RxY29lZmYpCi1nbG9iYWwgc3ltKHZwOF9zaG9ydF9pbnZfd2Fsc2g0eDRfc3NlMikgUFJJ
VkFURQorZ2xvYmFsc3ltKHZwOF9zaG9ydF9pbnZfd2Fsc2g0eDRfc3NlMikKIHN5bSh2cDhfc2hv
cnRfaW52X3dhbHNoNHg0X3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAg
ICAgIHJicCwgcnNwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2xvb3Bm
aWx0ZXJfYmxvY2tfc3NlMl94ODZfNjQuYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9s
b29wZmlsdGVyX2Jsb2NrX3NzZTJfeDg2XzY0LmFzbQppbmRleCA2YTNkMDUyOTBmNDIwZGNhYjVl
ZjQ0NWVmY2U0NDQwMGRhNWUyZDdjLi44ZDEyZjUzODVkOTEzNTRlMjllN2YwMzQ5ZDE5YjI2NjRh
ZGZiMmIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2xvb3BmaWx0ZXJf
YmxvY2tfc3NlMl94ODZfNjQuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvbG9v
cGZpbHRlcl9ibG9ja19zc2UyX3g4Nl82NC5hc20KQEAgLTEzNSw3ICsxMzUsNyBAQCBTRUNUSU9O
IC50ZXh0CiA7ICAgIGNvbnN0IGNoYXIgICAgKmxpbWl0LAogOyAgICBjb25zdCBjaGFyICAgICp0
aHJlc2gKIDspCi1nbG9iYWwgc3ltKHZwOF9sb29wX2ZpbHRlcl9iaF95X3NzZTIpIFBSSVZBVEUK
K2dsb2JhbHN5bSh2cDhfbG9vcF9maWx0ZXJfYmhfeV9zc2UyKQogc3ltKHZwOF9sb29wX2ZpbHRl
cl9iaF95X3NzZTIpOgogCiAlaWYgTElCVlBYX1lBU01fV0lONjQKQEAgLTI3Nyw3ICsyNzcsNyBA
QCBMRl9GSUxURVIgeG1tMCwgeG1tMSwgeG1tMywgeG1tOCwgeG1tNCwgeG1tMgogOyAgICBjb25z
dCBjaGFyICAgICp0aHJlc2gKIDspCiAKLWdsb2JhbCBzeW0odnA4X2xvb3BfZmlsdGVyX2J2X3lf
c3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZwOF9sb29wX2ZpbHRlcl9idl95X3NzZTIpCiBzeW0o
dnA4X2xvb3BfZmlsdGVyX2J2X3lfc3NlMik6CiAKICVpZiBMSUJWUFhfWUFTTV9XSU42NApkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9sb29wZmlsdGVyX3NzZTIuYXNtIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9sb29wZmlsdGVyX3NzZTIuYXNtCmluZGV4IDJhZTAy
OGZlYWVhYmNiMDkzZjBiYmI4MjlkYTc0MzUyZmJhYzFlMzMuLmNlNWMzMTMxMzgzM2Q5NDI3NmE5
ZjI0MWRjNjkzODhmZDNhNWRlYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94
ODYvbG9vcGZpbHRlcl9zc2UyLmFzbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L2xv
b3BmaWx0ZXJfc3NlMi5hc20KQEAgLTI4OCw3ICsyODgsNyBAQCBTRUNUSU9OIC50ZXh0CiA7ICAg
IGNvbnN0IGNoYXIgICAgKmxpbWl0LAogOyAgICBjb25zdCBjaGFyICAgICp0aHJlc2gsCiA7KQot
Z2xvYmFsIHN5bSh2cDhfbG9vcF9maWx0ZXJfaG9yaXpvbnRhbF9lZGdlX3NzZTIpIFBSSVZBVEUK
K2dsb2JhbHN5bSh2cDhfbG9vcF9maWx0ZXJfaG9yaXpvbnRhbF9lZGdlX3NzZTIpCiBzeW0odnA4
X2xvb3BfZmlsdGVyX2hvcml6b250YWxfZWRnZV9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAK
ICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMzM2LDcgKzMzNiw3IEBAIHN5bSh2cDhfbG9v
cF9maWx0ZXJfaG9yaXpvbnRhbF9lZGdlX3NzZTIpOgogOyAgICBjb25zdCBjaGFyICAgICp0aHJl
c2gsCiA7ICAgIGludCAgICAgICAgICAgIGNvdW50CiA7KQotZ2xvYmFsIHN5bSh2cDhfbG9vcF9m
aWx0ZXJfaG9yaXpvbnRhbF9lZGdlX3V2X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfbG9v
cF9maWx0ZXJfaG9yaXpvbnRhbF9lZGdlX3V2X3NzZTIpCiBzeW0odnA4X2xvb3BfZmlsdGVyX2hv
cml6b250YWxfZWRnZV91dl9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAg
ICAgICByYnAsIHJzcApAQCAtNTYzLDcgKzU2Myw3IEBAIHN5bSh2cDhfbG9vcF9maWx0ZXJfaG9y
aXpvbnRhbF9lZGdlX3V2X3NzZTIpOgogOyAgICBjb25zdCBjaGFyICAgICpsaW1pdCwKIDsgICAg
Y29uc3QgY2hhciAgICAqdGhyZXNoLAogOykKLWdsb2JhbCBzeW0odnA4X21ibG9vcF9maWx0ZXJf
aG9yaXpvbnRhbF9lZGdlX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfbWJsb29wX2ZpbHRl
cl9ob3Jpem9udGFsX2VkZ2Vfc3NlMikKIHN5bSh2cDhfbWJsb29wX2ZpbHRlcl9ob3Jpem9udGFs
X2VkZ2Vfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCBy
c3AKQEAgLTYwOSw3ICs2MDksNyBAQCBzeW0odnA4X21ibG9vcF9maWx0ZXJfaG9yaXpvbnRhbF9l
ZGdlX3NzZTIpOgogOyAgICBjb25zdCBjaGFyICAgICp0aHJlc2gsCiA7ICAgIHVuc2lnbmVkIGNo
YXIgKnYKIDspCi1nbG9iYWwgc3ltKHZwOF9tYmxvb3BfZmlsdGVyX2hvcml6b250YWxfZWRnZV91
dl9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnA4X21ibG9vcF9maWx0ZXJfaG9yaXpvbnRhbF9l
ZGdlX3V2X3NzZTIpCiBzeW0odnA4X21ibG9vcF9maWx0ZXJfaG9yaXpvbnRhbF9lZGdlX3V2X3Nz
ZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC05
MzAsNyArOTMwLDcgQEAgc3ltKHZwOF9tYmxvb3BfZmlsdGVyX2hvcml6b250YWxfZWRnZV91dl9z
c2UyKToKIDsgICAgY29uc3QgY2hhciAgICAqbGltaXQsCiA7ICAgIGNvbnN0IGNoYXIgICAgKnRo
cmVzaCwKIDspCi1nbG9iYWwgc3ltKHZwOF9sb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX3NzZTIp
IFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfbG9vcF9maWx0ZXJfdmVydGljYWxfZWRnZV9zc2UyKQog
c3ltKHZwOF9sb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX3NzZTIpOgogICAgIHB1c2ggICAgICAg
IHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC05OTUsNyArOTk1LDcgQEAgc3ltKHZw
OF9sb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX3NzZTIpOgogOyAgICBjb25zdCBjaGFyICAgICp0
aHJlc2gsCiA7ICAgIHVuc2lnbmVkIGNoYXIgKnYKIDspCi1nbG9iYWwgc3ltKHZwOF9sb29wX2Zp
bHRlcl92ZXJ0aWNhbF9lZGdlX3V2X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfbG9vcF9m
aWx0ZXJfdmVydGljYWxfZWRnZV91dl9zc2UyKQogc3ltKHZwOF9sb29wX2ZpbHRlcl92ZXJ0aWNh
bF9lZGdlX3V2X3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJi
cCwgcnNwCkBAIC0xMTQ0LDcgKzExNDQsNyBAQCBzeW0odnA4X2xvb3BfZmlsdGVyX3ZlcnRpY2Fs
X2VkZ2VfdXZfc3NlMik6CiA7ICAgIGNvbnN0IGNoYXIgICAgKmxpbWl0LAogOyAgICBjb25zdCBj
aGFyICAgICp0aHJlc2gsCiA7KQotZ2xvYmFsIHN5bSh2cDhfbWJsb29wX2ZpbHRlcl92ZXJ0aWNh
bF9lZGdlX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfbWJsb29wX2ZpbHRlcl92ZXJ0aWNh
bF9lZGdlX3NzZTIpCiBzeW0odnA4X21ibG9vcF9maWx0ZXJfdmVydGljYWxfZWRnZV9zc2UyKToK
ICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMTIxMSw3
ICsxMjExLDcgQEAgc3ltKHZwOF9tYmxvb3BfZmlsdGVyX3ZlcnRpY2FsX2VkZ2Vfc3NlMik6CiA7
ICAgIGNvbnN0IGNoYXIgICAgKnRocmVzaCwKIDsgICAgdW5zaWduZWQgY2hhciAqdgogOykKLWds
b2JhbCBzeW0odnA4X21ibG9vcF9maWx0ZXJfdmVydGljYWxfZWRnZV91dl9zc2UyKSBQUklWQVRF
CitnbG9iYWxzeW0odnA4X21ibG9vcF9maWx0ZXJfdmVydGljYWxfZWRnZV91dl9zc2UyKQogc3lt
KHZwOF9tYmxvb3BfZmlsdGVyX3ZlcnRpY2FsX2VkZ2VfdXZfc3NlMik6CiAgICAgcHVzaCAgICAg
ICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTEyNzEsNyArMTI3MSw3IEBAIHN5
bSh2cDhfbWJsb29wX2ZpbHRlcl92ZXJ0aWNhbF9lZGdlX3V2X3NzZTIpOgogOyAgICBpbnQgIHNy
Y19waXhlbF9zdGVwLAogOyAgICBjb25zdCBjaGFyICpibGltaXQsCiA7KQotZ2xvYmFsIHN5bSh2
cDhfbG9vcF9maWx0ZXJfc2ltcGxlX2hvcml6b250YWxfZWRnZV9zc2UyKSBQUklWQVRFCitnbG9i
YWxzeW0odnA4X2xvb3BfZmlsdGVyX3NpbXBsZV9ob3Jpem9udGFsX2VkZ2Vfc3NlMikKIHN5bSh2
cDhfbG9vcF9maWx0ZXJfc2ltcGxlX2hvcml6b250YWxfZWRnZV9zc2UyKToKICAgICBwdXNoICAg
ICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMTM3Niw3ICsxMzc2LDcgQEAg
c3ltKHZwOF9sb29wX2ZpbHRlcl9zaW1wbGVfaG9yaXpvbnRhbF9lZGdlX3NzZTIpOgogOyAgICBp
bnQgIHNyY19waXhlbF9zdGVwLAogOyAgICBjb25zdCBjaGFyICpibGltaXQsCiA7KQotZ2xvYmFs
IHN5bSh2cDhfbG9vcF9maWx0ZXJfc2ltcGxlX3ZlcnRpY2FsX2VkZ2Vfc3NlMikgUFJJVkFURQor
Z2xvYmFsc3ltKHZwOF9sb29wX2ZpbHRlcl9zaW1wbGVfdmVydGljYWxfZWRnZV9zc2UyKQogc3lt
KHZwOF9sb29wX2ZpbHRlcl9zaW1wbGVfdmVydGljYWxfZWRnZV9zc2UyKToKICAgICBwdXNoICAg
ICAgICByYnAgICAgICAgICA7IHNhdmUgb2xkIGJhc2UgcG9pbnRlciB2YWx1ZS4KICAgICBtb3Yg
ICAgICAgICByYnAsIHJzcCAgICA7IHNldCBuZXcgYmFzZSBwb2ludGVyIHZhbHVlLgpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9tZnFlX3NzZTIuYXNtIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3g4Ni9tZnFlX3NzZTIuYXNtCmluZGV4IDNmZGU5NzNhZDJiZjYyMGIwZThm
ZDY1NjFmY2I0MzkwNDNmMTI0MGYuLjNlYzJhOTllYzIyODM1YWQ2NWFmMWE3NzhiZDU0MDU4MzMz
ZGI5MDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvbWZxZV9zc2UyLmFz
bQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L21mcWVfc3NlMi5hc20KQEAgLTIxLDcg
KzIxLDcgQEAgU0VDVElPTiAudGV4dAogOyAgICBpbnQgICAgICAgICAgICBkc3Rfc3RyaWRlLAog
OyAgICBpbnQgICAgICAgICAgICBzcmNfd2VpZ2h0CiA7KQotZ2xvYmFsIHN5bSh2cDhfZmlsdGVy
X2J5X3dlaWdodDE2eDE2X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfZmlsdGVyX2J5X3dl
aWdodDE2eDE2X3NzZTIpCiBzeW0odnA4X2ZpbHRlcl9ieV93ZWlnaHQxNngxNl9zc2UyKToKICAg
ICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtOTksNyArOTks
NyBAQCBzeW0odnA4X2ZpbHRlcl9ieV93ZWlnaHQxNngxNl9zc2UyKToKIDsgICAgaW50ICAgICAg
ICAgICAgZHN0X3N0cmlkZSwKIDsgICAgaW50ICAgICAgICAgICAgc3JjX3dlaWdodAogOykKLWds
b2JhbCBzeW0odnA4X2ZpbHRlcl9ieV93ZWlnaHQ4eDhfc3NlMikgUFJJVkFURQorZ2xvYmFsc3lt
KHZwOF9maWx0ZXJfYnlfd2VpZ2h0OHg4X3NzZTIpCiBzeW0odnA4X2ZpbHRlcl9ieV93ZWlnaHQ4
eDhfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AK
QEAgLTE2Nyw3ICsxNjcsNyBAQCBzeW0odnA4X2ZpbHRlcl9ieV93ZWlnaHQ4eDhfc3NlMik6CiA7
ICAgIHVuc2lnbmVkIGludCAgKnZhcmlhbmNlLCAgICAgIDQKIDsgICAgdW5zaWduZWQgaW50ICAq
c2FkLCAgICAgICAgICAgNQogOykKLWdsb2JhbCBzeW0odnA4X3ZhcmlhbmNlX2FuZF9zYWRfMTZ4
MTZfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZwOF92YXJpYW5jZV9hbmRfc2FkXzE2eDE2X3Nz
ZTIpCiBzeW0odnA4X3ZhcmlhbmNlX2FuZF9zYWRfMTZ4MTZfc3NlMik6CiAgICAgcHVzaCAgICAg
ICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2NvbW1vbi94ODYvcmVjb25fbW14LmFzbSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYv
cmVjb25fbW14LmFzbQppbmRleCBlNmE0OGY2YjA3ZjU0ZjA0ZjZlZjBkYWI2MjJhZTI3NmRiYjM5
ZWYwLi4wMWNmMDY2ODM3M2VkOGEyYTBjNGM2MzRlZDNkYjY3MzkxNTk2YjkxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L3JlY29uX21teC5hc20KKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvY29tbW9uL3g4Ni9yZWNvbl9tbXguYXNtCkBAIC0xOSw3ICsxOSw3IEBAIFNFQ1RJT04g
LnRleHQKIDsgICAgdW5zaWduZWQgY2hhciAqZHN0LAogOyAgICBpbnQgZHN0X3N0cmlkZQogOyAg
ICApCi1nbG9iYWwgc3ltKHZwOF9jb3B5X21lbTh4OF9tbXgpIFBSSVZBVEUKK2dsb2JhbHN5bSh2
cDhfY29weV9tZW04eDhfbW14KQogc3ltKHZwOF9jb3B5X21lbTh4OF9tbXgpOgogICAgIHB1c2gg
ICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC04Miw3ICs4Miw3IEBAIHN5
bSh2cDhfY29weV9tZW04eDhfbW14KToKIDsgICAgdW5zaWduZWQgY2hhciAqZHN0LAogOyAgICBp
bnQgZHN0X3N0cmlkZQogOyAgICApCi1nbG9iYWwgc3ltKHZwOF9jb3B5X21lbTh4NF9tbXgpIFBS
SVZBVEUKK2dsb2JhbHN5bSh2cDhfY29weV9tZW04eDRfbW14KQogc3ltKHZwOF9jb3B5X21lbTh4
NF9tbXgpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L3JlY29uX3NzZTIuYXNtIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvY29tbW9uL3g4Ni9yZWNvbl9zc2UyLmFzbQppbmRleCA1N2Y4ODk5Yzc3N2Y0
ZjQ1NGMyMjFhMzU2YjZlNGI1NGIzMDMxNTYyLi4xN2JhZjA5NGVmMjQyYzZlZmJiNzg2MzY2ZDk3
NGZmZDVjYjY4MDYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L3JlY29u
X3NzZTIuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvcmVjb25fc3NlMi5hc20K
QEAgLTE5LDcgKzE5LDcgQEAgU0VDVElPTiAudGV4dAogOyAgICB1bnNpZ25lZCBjaGFyICpkc3Qs
CiA7ICAgIGludCBkc3Rfc3RyaWRlCiA7ICAgICkKLWdsb2JhbCBzeW0odnA4X2NvcHlfbWVtMTZ4
MTZfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZwOF9jb3B5X21lbTE2eDE2X3NzZTIpCiBzeW0o
dnA4X2NvcHlfbWVtMTZ4MTZfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAg
ICAgICAgcmJwLCByc3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvc3Vi
cGl4ZWxfbW14LmFzbSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvc3VicGl4ZWxfbW14LmFz
bQppbmRleCA2N2JjZDBjYmQ3MTM4Yzc1YjgzNTQzYTU5ZWY4YWNhNzUxYTVjMTNiLi44ZjBmNmZj
Yzg5YmY1OTcxNjAyZjEzYmQyNzQyZTAwYjllYTBiMTZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9jb21tb24veDg2L3N1YnBpeGVsX21teC5hc20KKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29t
bW9uL3g4Ni9zdWJwaXhlbF9tbXguYXNtCkBAIC0yNyw3ICsyNyw3IEBAIFNFQ1RJT04gLnRleHQK
IDsgICAgdW5zaWduZWQgaW50ICAgIG91dHB1dF93aWR0aCwKIDsgICAgc2hvcnQgICAgICAgICAg
ICogdnA4X2ZpbHRlcgogOykKLWdsb2JhbCBzeW0odnA4X2ZpbHRlcl9ibG9jazFkX2g2X21teCkg
UFJJVkFURQorZ2xvYmFsc3ltKHZwOF9maWx0ZXJfYmxvY2sxZF9oNl9tbXgpCiBzeW0odnA4X2Zp
bHRlcl9ibG9jazFkX2g2X21teCk6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAg
ICAgcmJwLCByc3AKQEAgLTEyNCw3ICsxMjQsNyBAQCBzeW0odnA4X2ZpbHRlcl9ibG9jazFkX2g2
X21teCk6CiA7ICAgdW5zaWduZWQgaW50IG91dHB1dF93aWR0aCwKIDsgICBzaG9ydCAqIHZwOF9m
aWx0ZXIKIDspCi1nbG9iYWwgc3ltKHZwOF9maWx0ZXJfYmxvY2sxZGNfdjZfbW14KSBQUklWQVRF
CitnbG9iYWxzeW0odnA4X2ZpbHRlcl9ibG9jazFkY192Nl9tbXgpCiBzeW0odnA4X2ZpbHRlcl9i
bG9jazFkY192Nl9tbXgpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJi
cCwgcnNwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L3N1YnBpeGVsX3Nz
ZTIuYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDgvY29tbW9uL3g4Ni9zdWJwaXhlbF9zc2UyLmFzbQppbmRl
eCA1MWMwMTVlM2RmMDZkZDJjMTdmNmE4NTYyZmZiMTU4ZTRmYjRlMDY3Li45NGUxNGFlZDZjODRk
OTI5ZmQ2NTkwZTVhMzM5ZWQzN2MyYWQ2Mzg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9j
b21tb24veDg2L3N1YnBpeGVsX3NzZTIuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94
ODYvc3VicGl4ZWxfc3NlMi5hc20KQEAgLTMzLDcgKzMzLDcgQEAgU0VDVElPTiAudGV4dAogOyAg
ICB1bnNpZ25lZCBpbnQgICAgb3V0cHV0X3dpZHRoLAogOyAgICBzaG9ydCAgICAgICAgICAgKnZw
OF9maWx0ZXIKIDspCi1nbG9iYWwgc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDhfaDZfc3NlMikgUFJJ
VkFURQorZ2xvYmFsc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDhfaDZfc3NlMikKIHN5bSh2cDhfZmls
dGVyX2Jsb2NrMWQ4X2g2X3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAg
ICAgIHJicCwgcnNwCkBAIC0xNTMsNyArMTUzLDcgQEAgc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDhf
aDZfc3NlMik6CiA7IGV2ZW4gbnVtYmVyLiBUaGlzIGZ1bmN0aW9uIGhhbmRsZXMgOCBwaXhlbHMg
aW4gaG9yaXpvbnRhbCBkaXJlY3Rpb24sIGNhbGN1bGF0aW5nIE9ORQogOyByb3dzIGVhY2ggaXRl
cmF0aW9uIHRvIHRha2UgYWR2YW50YWdlIG9mIHRoZSAxMjggYml0cyBvcGVyYXRpb25zLgogOyoq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKiovCi1nbG9iYWwgc3ltKHZwOF9maWx0ZXJfYmxvY2sx
ZDE2X2g2X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQxNl9oNl9z
c2UyKQogc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDE2X2g2X3NzZTIpOgogICAgIHB1c2ggICAgICAg
IHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC0zMzMsNyArMzMzLDcgQEAgc3ltKHZw
OF9maWx0ZXJfYmxvY2sxZDE2X2g2X3NzZTIpOgogOyBOb3RlczogZmlsdGVyX2Jsb2NrMWQ4X3Y2
IGFwcGxpZXMgYSA2IHRhcCBmaWx0ZXIgdmVydGljYWxseSB0byB0aGUgaW5wdXQgcGl4ZWxzLiBU
aGUKIDsgaW5wdXQgcGl4ZWwgYXJyYXkgaGFzIG91dHB1dF9oZWlnaHQgcm93cy4KIDsqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqLwotZ2xvYmFsIHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQ4X3Y2
X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQ4X3Y2X3NzZTIpCiBz
eW0odnA4X2ZpbHRlcl9ibG9jazFkOF92Nl9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAg
ICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtNDI4LDcgKzQyOCw3IEBAIHN5bSh2cDhfZmlsdGVy
X2Jsb2NrMWQ4X3Y2X3NzZTIpOgogOyBOb3RlczogZmlsdGVyX2Jsb2NrMWQxNl92NiBhcHBsaWVz
IGEgNiB0YXAgZmlsdGVyIHZlcnRpY2FsbHkgdG8gdGhlIGlucHV0IHBpeGVscy4gVGhlCiA7IGlu
cHV0IHBpeGVsIGFycmF5IGhhcyBvdXRwdXRfaGVpZ2h0IHJvd3MuCiA7KioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKi8KLWdsb2JhbCBzeW0odnA4X2ZpbHRlcl9ibG9jazFkMTZfdjZfc3NlMikg
UFJJVkFURQorZ2xvYmFsc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDE2X3Y2X3NzZTIpCiBzeW0odnA4
X2ZpbHRlcl9ibG9jazFkMTZfdjZfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92
ICAgICAgICAgcmJwLCByc3AKQEAgLTUzOCw3ICs1MzgsNyBAQCBzeW0odnA4X2ZpbHRlcl9ibG9j
azFkMTZfdjZfc3NlMik6CiA7ICAgIGNvbnN0IHNob3J0ICAgICp2cDhfZmlsdGVyCiA7KQogOyBG
aXJzdC1wYXNzIGZpbHRlciBvbmx5IHdoZW4geW9mZnNldD09MAotZ2xvYmFsIHN5bSh2cDhfZmls
dGVyX2Jsb2NrMWQ4X2g2X29ubHlfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZwOF9maWx0ZXJf
YmxvY2sxZDhfaDZfb25seV9zc2UyKQogc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDhfaDZfb25seV9z
c2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAt
NjUxLDcgKzY1MSw3IEBAIHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQ4X2g2X29ubHlfc3NlMik6CiA7
ICAgIGNvbnN0IHNob3J0ICAgICp2cDhfZmlsdGVyCiA7KQogOyBGaXJzdC1wYXNzIGZpbHRlciBv
bmx5IHdoZW4geW9mZnNldD09MAotZ2xvYmFsIHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQxNl9oNl9v
bmx5X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQxNl9oNl9vbmx5
X3NzZTIpCiBzeW0odnA4X2ZpbHRlcl9ibG9jazFkMTZfaDZfb25seV9zc2UyKToKICAgICBwdXNo
ICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtODE2LDcgKzgxNiw3IEBA
IHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQxNl9oNl9vbmx5X3NzZTIpOgogOyAgICBjb25zdCBzaG9y
dCAgICAqdnA4X2ZpbHRlcgogOykKIDsgU2Vjb25kLXBhc3MgZmlsdGVyIG9ubHkgd2hlbiB4b2Zm
c2V0PT0wCi1nbG9iYWwgc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDhfdjZfb25seV9zc2UyKSBQUklW
QVRFCitnbG9iYWxzeW0odnA4X2ZpbHRlcl9ibG9jazFkOF92Nl9vbmx5X3NzZTIpCiBzeW0odnA4
X2ZpbHRlcl9ibG9jazFkOF92Nl9vbmx5X3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAg
IG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC05MDgsNyArOTA4LDcgQEAgc3ltKHZwOF9maWx0ZXJf
YmxvY2sxZDhfdjZfb25seV9zc2UyKToKIDsgICAgdW5zaWduZWQgaW50ICAgIG91dHB1dF9oZWln
aHQsCiA7ICAgIHVuc2lnbmVkIGludCAgICBvdXRwdXRfd2lkdGgKIDspCi1nbG9iYWwgc3ltKHZw
OF91bnBhY2tfYmxvY2sxZDE2X2g2X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfdW5wYWNr
X2Jsb2NrMWQxNl9oNl9zc2UyKQogc3ltKHZwOF91bnBhY2tfYmxvY2sxZDE2X2g2X3NzZTIpOgog
ICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC9jb21tb24veDg2L3N1YnBpeGVsX3Nzc2UzLmFzbSBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA4L2NvbW1vbi94ODYvc3VicGl4ZWxfc3NzZTMuYXNtCmluZGV4IDhkNTVjOTMyMGNlMGU5
OGM2YWEyZmY4NTQzMjk4NzBlNDlhOGNmYzcuLjE3MjQ3MjI3ZGJjOTY2YzRhNjNiZDgxODYzNTBl
ZWJhYWNhOTgyYmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvc3VicGl4
ZWxfc3NzZTMuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2NvbW1vbi94ODYvc3VicGl4ZWxfc3Nz
ZTMuYXNtCkBAIC0zNSw3ICszNSw3IEBAIFNFQ1RJT04gLnRleHQKIDsgICAgdW5zaWduZWQgaW50
ICAgIG91dHB1dF9oZWlnaHQsCiA7ICAgIHVuc2lnbmVkIGludCAgICB2cDhfZmlsdGVyX2luZGV4
CiA7KQotZ2xvYmFsIHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQ4X2g2X3Nzc2UzKSBQUklWQVRFCitn
bG9iYWxzeW0odnA4X2ZpbHRlcl9ibG9jazFkOF9oNl9zc3NlMykKIHN5bSh2cDhfZmlsdGVyX2Js
b2NrMWQ4X2g2X3Nzc2UzKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICBy
YnAsIHJzcApAQCAtMTc4LDcgKzE3OCw3IEBAIHZwOF9maWx0ZXJfYmxvY2sxZDhfaDRfc3NzZTM6
CiA7ICAgIHVuc2lnbmVkIGludCAgICBvdXRwdXRfaGVpZ2h0LAogOyAgICB1bnNpZ25lZCBpbnQg
ICAgdnA4X2ZpbHRlcl9pbmRleAogOykKLWdsb2JhbCBzeW0odnA4X2ZpbHRlcl9ibG9jazFkMTZf
aDZfc3NzZTMpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQxNl9oNl9zc3Nl
MykKIHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQxNl9oNl9zc3NlMyk6CiAgICAgcHVzaCAgICAgICAg
cmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTI4NSw3ICsyODUsNyBAQCBzeW0odnA4
X2ZpbHRlcl9ibG9jazFkMTZfaDZfc3NzZTMpOgogOyAgICB1bnNpZ25lZCBpbnQgICAgb3V0cHV0
X2hlaWdodCwKIDsgICAgdW5zaWduZWQgaW50ICAgIHZwOF9maWx0ZXJfaW5kZXgKIDspCi1nbG9i
YWwgc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDRfaDZfc3NzZTMpIFBSSVZBVEUKK2dsb2JhbHN5bSh2
cDhfZmlsdGVyX2Jsb2NrMWQ0X2g2X3Nzc2UzKQogc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDRfaDZf
c3NzZTMpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBA
IC00MTUsNyArNDE1LDcgQEAgc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDRfaDZfc3NzZTMpOgogOyAg
ICB1bnNpZ25lZCBpbnQgICBvdXRwdXRfaGVpZ2h0LAogOyAgICB1bnNpZ25lZCBpbnQgICB2cDhf
ZmlsdGVyX2luZGV4CiA7KQotZ2xvYmFsIHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQxNl92Nl9zc3Nl
MykgUFJJVkFURQorZ2xvYmFsc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDE2X3Y2X3Nzc2UzKQogc3lt
KHZwOF9maWx0ZXJfYmxvY2sxZDE2X3Y2X3Nzc2UzKToKICAgICBwdXNoICAgICAgICByYnAKICAg
ICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtNjAzLDcgKzYwMyw3IEBAIHN5bSh2cDhfZmlsdGVy
X2Jsb2NrMWQxNl92Nl9zc3NlMyk6CiA7ICAgIHVuc2lnbmVkIGludCAgIG91dHB1dF9oZWlnaHQs
CiA7ICAgIHVuc2lnbmVkIGludCAgIHZwOF9maWx0ZXJfaW5kZXgKIDspCi1nbG9iYWwgc3ltKHZw
OF9maWx0ZXJfYmxvY2sxZDhfdjZfc3NzZTMpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfZmlsdGVy
X2Jsb2NrMWQ4X3Y2X3Nzc2UzKQogc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDhfdjZfc3NzZTMpOgog
ICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC03NDMsNyAr
NzQzLDcgQEAgc3ltKHZwOF9maWx0ZXJfYmxvY2sxZDhfdjZfc3NzZTMpOgogOyAgICB1bnNpZ25l
ZCBpbnQgICBvdXRwdXRfaGVpZ2h0LAogOyAgICB1bnNpZ25lZCBpbnQgICB2cDhfZmlsdGVyX2lu
ZGV4CiA7KQotZ2xvYmFsIHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQ0X3Y2X3Nzc2UzKSBQUklWQVRF
CitnbG9iYWxzeW0odnA4X2ZpbHRlcl9ibG9jazFkNF92Nl9zc3NlMykKIHN5bSh2cDhfZmlsdGVy
X2Jsb2NrMWQ0X3Y2X3Nzc2UzKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAg
ICByYnAsIHJzcApAQCAtODgyLDcgKzg4Miw3IEBAIHN5bSh2cDhfZmlsdGVyX2Jsb2NrMWQ0X3Y2
X3Nzc2UzKToKIDsgICAgdW5zaWduZWQgY2hhciAqZHN0X3B0ciwKIDsgICAgaW50IGRzdF9waXRj
aAogOykKLWdsb2JhbCBzeW0odnA4X2JpbGluZWFyX3ByZWRpY3QxNngxNl9zc3NlMykgUFJJVkFU
RQorZ2xvYmFsc3ltKHZwOF9iaWxpbmVhcl9wcmVkaWN0MTZ4MTZfc3NzZTMpCiBzeW0odnA4X2Jp
bGluZWFyX3ByZWRpY3QxNngxNl9zc3NlMyk6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92
ICAgICAgICAgcmJwLCByc3AKQEAgLTExNDUsNyArMTE0NSw3IEBAIHN5bSh2cDhfYmlsaW5lYXJf
cHJlZGljdDE2eDE2X3Nzc2UzKToKIDsgICAgdW5zaWduZWQgY2hhciAqZHN0X3B0ciwKIDsgICAg
aW50IGRzdF9waXRjaAogOykKLWdsb2JhbCBzeW0odnA4X2JpbGluZWFyX3ByZWRpY3Q4eDhfc3Nz
ZTMpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfYmlsaW5lYXJfcHJlZGljdDh4OF9zc3NlMykKIHN5
bSh2cDhfYmlsaW5lYXJfcHJlZGljdDh4OF9zc3NlMyk6CiAgICAgcHVzaCAgICAgICAgcmJwCiAg
ICAgbW92ICAgICAgICAgcmJwLCByc3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvYml0c3RyZWFtLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2JpdHN0cmVhbS5jCmluZGV4
IDNkYWE0ZTJjMmE2NTZjZjM5MzY1NGUwZjc1YTM4NjU5YWI2Y2Q3ODAuLjgwY2JiODgyZmRjZDAy
YWM2ODNlYTlhZGU1Y2EwMzhkMjgyZWM5ZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIvYml0c3RyZWFtLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9iaXRzdHJlYW0u
YwpAQCAtMjIyLDcgKzIyMiw3IEBAIHZvaWQgdnA4X3BhY2tfdG9rZW5zKHZwOF93cml0ZXIgKncs
IGNvbnN0IFRPS0VORVhUUkEgKnAsIGludCB4Y291bnQpIHsKIAogICAgICAgICAgICAgdmFsaWRh
dGVfYnVmZmVyKHctPmJ1ZmZlciArIHctPnBvcywgMSwgdy0+YnVmZmVyX2VuZCwgdy0+ZXJyb3Ip
OwogCi0gICAgICAgICAgICB3LT5idWZmZXJbdy0+cG9zKytdID0gKGxvd3ZhbHVlID4+ICgyNCAt
IG9mZnNldCkpOworICAgICAgICAgICAgdy0+YnVmZmVyW3ctPnBvcysrXSA9IChsb3d2YWx1ZSA+
PiAoMjQgLSBvZmZzZXQpKSAmIDB4ZmY7CiAgICAgICAgICAgICBsb3d2YWx1ZSA8PD0gb2Zmc2V0
OwogICAgICAgICAgICAgc2hpZnQgPSBjb3VudDsKICAgICAgICAgICAgIGxvd3ZhbHVlICY9IDB4
ZmZmZmZmOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVmcmFtZS5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9lbmNvZGVmcmFtZS5jCmluZGV4IDJiM2Q5NTY0Y2Uy
MGFiMmNlMjA5NDA1NTBiY2M5NGVjOTFmMDFjYjcuLjJmODQzODFkMjRmOTFmMmI1NjU2ZTc4ZTNi
NmIzNzZlMTkzZDZlNTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvZW5jb2Rl
ZnJhbWUuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL2VuY29kZWZyYW1lLmMKQEAgLTM0
Myw4ICszNDMsMTEgQEAgc3RhdGljIHZvaWQgZW5jb2RlX21iX3JvdyhWUDhfQ09NUCAqY3BpLCBW
UDhfQ09NTU9OICpjbSwgaW50IG1iX3JvdywKICAgY29uc3QgaW50IG5zeW5jID0gY3BpLT5tdF9z
eW5jX3JhbmdlOwogICB2cHhfYXRvbWljX2ludCByaWdodG1vc3RfY29sID0gVlBYX0FUT01JQ19J
TklUKGNtLT5tYl9jb2xzICsgbnN5bmMpOwogICBjb25zdCB2cHhfYXRvbWljX2ludCAqbGFzdF9y
b3dfY3VycmVudF9tYl9jb2w7Ci0gIHZweF9hdG9taWNfaW50ICpjdXJyZW50X21iX2NvbCA9ICZj
cGktPm10X2N1cnJlbnRfbWJfY29sW21iX3Jvd107CisgIHZweF9hdG9taWNfaW50ICpjdXJyZW50
X21iX2NvbCA9IE5VTEw7CiAKKyAgaWYgKHZweF9hdG9taWNfbG9hZF9hY3F1aXJlKCZjcGktPmJf
bXVsdGlfdGhyZWFkZWQpICE9IDApIHsKKyAgICBjdXJyZW50X21iX2NvbCA9ICZjcGktPm10X2N1
cnJlbnRfbWJfY29sW21iX3Jvd107CisgIH0KICAgaWYgKHZweF9hdG9taWNfbG9hZF9hY3F1aXJl
KCZjcGktPmJfbXVsdGlfdGhyZWFkZWQpICE9IDAgJiYgbWJfcm93ICE9IDApIHsKICAgICBsYXN0
X3Jvd19jdXJyZW50X21iX2NvbCA9ICZjcGktPm10X2N1cnJlbnRfbWJfY29sW21iX3JvdyAtIDFd
OwogICB9IGVsc2UgewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9taXBzL21t
aS9kY3RfbW1pLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21pcHMvbW1pL2RjdF9tbWkuYwpp
bmRleCAxZjYwYTY5MmQwNTJlNjY1MDgyZjVmNDU1YTQxNTAxN2I0ZTNlNjIyLi4wZmQyNWZjZGE1
MDcyMTJhNDRhNmYxN2E4MmEyOTk4N2ExZjA2ZDY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
OC9lbmNvZGVyL21pcHMvbW1pL2RjdF9tbWkuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVy
L21pcHMvbW1pL2RjdF9tbWkuYwpAQCAtMjQsMTkgKzI0LDE5IEBACiAgICJwdW5wY2tsaHcgICVb
ZnRtcDVdLCAgICVbZnRtcDFdLCAgICVbZnRtcDBdICAgICAgICAgXG5cdCIgXAogICAicHVucGNr
bGh3ICAlW2Z0bXA5XSwgICAlW2Z0bXAyXSwgICAlW2Z0bXAwXSAgICAgICAgIFxuXHQiIFwKICAg
InBzaHVmaCAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgJVtmdG1wMTBdICAgICAgICBcblx0
IiBcCi0gICJvciAgICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICVbZnRtcDldICAgICAg
ICAgXG5cdCIgXAorICAicG9yICAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAlW2Z0bXA5
XSAgICAgICAgIFxuXHQiIFwKICAgInB1bnBja2hodyAgJVtmdG1wNl0sICAgJVtmdG1wMV0sICAg
JVtmdG1wMF0gICAgICAgICBcblx0IiBcCiAgICJwdW5wY2toaHcgICVbZnRtcDldLCAgICVbZnRt
cDJdLCAgICVbZnRtcDBdICAgICAgICAgXG5cdCIgXAogICAicHNodWZoICAgICAlW2Z0bXA5XSwg
ICAlW2Z0bXA5XSwgICAlW2Z0bXAxMF0gICAgICAgIFxuXHQiIFwKLSAgIm9yICAgICAgICAgJVtm
dG1wNl0sICAgJVtmdG1wNl0sICAgJVtmdG1wOV0gICAgICAgICBcblx0IiBcCisgICJwb3IgICAg
ICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICVbZnRtcDldICAgICAgICAgXG5cdCIgXAogICAi
cHVucGNrbGh3ICAlW2Z0bXA3XSwgICAlW2Z0bXAzXSwgICAlW2Z0bXAwXSAgICAgICAgIFxuXHQi
IFwKICAgInB1bnBja2xodyAgJVtmdG1wOV0sICAgJVtmdG1wNF0sICAgJVtmdG1wMF0gICAgICAg
ICBcblx0IiBcCiAgICJwc2h1ZmggICAgICVbZnRtcDldLCAgICVbZnRtcDldLCAgICVbZnRtcDEw
XSAgICAgICAgXG5cdCIgXAotICAib3IgICAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAl
W2Z0bXA5XSAgICAgICAgIFxuXHQiIFwKKyAgInBvciAgICAgICAgJVtmdG1wN10sICAgJVtmdG1w
N10sICAgJVtmdG1wOV0gICAgICAgICBcblx0IiBcCiAgICJwdW5wY2toaHcgICVbZnRtcDhdLCAg
ICVbZnRtcDNdLCAgICVbZnRtcDBdICAgICAgICAgXG5cdCIgXAogICAicHVucGNraGh3ICAlW2Z0
bXA5XSwgICAlW2Z0bXA0XSwgICAlW2Z0bXAwXSAgICAgICAgIFxuXHQiIFwKICAgInBzaHVmaCAg
ICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgJVtmdG1wMTBdICAgICAgICBcblx0IiBcCi0gICJv
ciAgICAgICAgICVbZnRtcDhdLCAgICVbZnRtcDhdLCAgICVbZnRtcDldICAgICAgICAgXG5cdCIg
XAorICAicG9yICAgICAgICAlW2Z0bXA4XSwgICAlW2Z0bXA4XSwgICAlW2Z0bXA5XSAgICAgICAg
IFxuXHQiIFwKICAgInB1bnBja2x3ZCAgJVtmdG1wMV0sICAgJVtmdG1wNV0sICAgJVtmdG1wN10g
ICAgICAgICBcblx0IiBcCiAgICJwdW5wY2tod2QgICVbZnRtcDJdLCAgICVbZnRtcDVdLCAgICVb
ZnRtcDddICAgICAgICAgXG5cdCIgXAogICAicHVucGNrbHdkICAlW2Z0bXAzXSwgICAlW2Z0bXA2
XSwgICAlW2Z0bXA4XSAgICAgICAgIFxuXHQiIFwKQEAgLTQ2LDYgKzQ2LDcgQEAKIHZvaWQgdnA4
X3Nob3J0X2ZkY3Q0eDRfbW1pKGludDE2X3QgKmlucHV0LCBpbnQxNl90ICpvdXRwdXQsIGludCBw
aXRjaCkgewogICB1aW50NjRfdCB0bXBbMV07CiAgIGludDE2X3QgKmlwID0gaW5wdXQ7CisgIGRv
dWJsZSBmZl9waF9vcDEsIGZmX3BoX29wMzsKIAogI2lmIF9NSVBTX1NJTSA9PSBfQUJJTzMyCiAg
IHJlZ2lzdGVyIGRvdWJsZSBmdG1wMCBhc20oIiRmMCIpOwpAQCAtODMsMTQgKzg0LDE3IEBAIHZv
aWQgdnA4X3Nob3J0X2ZkY3Q0eDRfbW1pKGludDE2X3QgKmlucHV0LCBpbnQxNl90ICpvdXRwdXQs
IGludCBwaXRjaCkgewogICBERUNMQVJFX0FMSUdORUQoOCwgY29uc3QgdWludDY0X3QsIGZmX3B3
XzUxMDAwKSA9IHsgMHgwMDAwYzczODAwMDBjNzM4VUxMIH07CiAgIERFQ0xBUkVfQUxJR05FRCg4
LCBjb25zdCB1aW50NjRfdCwgZmZfcHdfMTQ1MDApID0geyAweDAwMDAzOGE0MDAwMDM4YTRVTEwg
fTsKICAgREVDTEFSRV9BTElHTkVEKDgsIGNvbnN0IHVpbnQ2NF90LCBmZl9wd183NTAwKSA9IHsg
MHgwMDAwMWQ0YzAwMDAxZDRjVUxMIH07Ci0gIERFQ0xBUkVfQUxJR05FRCg4LCBjb25zdCB1aW50
NjRfdCwgZmZfcGhfb3AxKSA9IHsgMHgxNGU4MDhhOTE0ZTgwOGE5VUxMIH07Ci0gIERFQ0xBUkVf
QUxJR05FRCg4LCBjb25zdCB1aW50NjRfdCwgZmZfcGhfb3AzKSA9IHsgMHhlYjE4MDhhOWViMTgw
OGE5VUxMIH07CiAgIERFQ0xBUkVfQUxJR05FRCg4LCBjb25zdCB1aW50NjRfdCwgZmZfcHdfNTM1
MikgPSB7IDB4MDAwMDE0ZTgwMDAwMTRlOFVMTCB9OwogICBERUNMQVJFX0FMSUdORUQoOCwgY29u
c3QgdWludDY0X3QsIGZmX3B3XzIyMTcpID0geyAweDAwMDAwOGE5MDAwMDA4YTlVTEwgfTsKICAg
REVDTEFSRV9BTElHTkVEKDgsIGNvbnN0IHVpbnQ2NF90LCBmZl9waF84KSA9IHsgMHgwMDA4MDAw
ODAwMDgwMDA4VUxMIH07CiAKKyAgLyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZv
bGF0aWxlICgKLSAgICAieG9yICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAlW2Z0
bXAwXSAgICAgICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgxNGU4MDhh
OTE0ZTgwOGE5ICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAg
ICVbZmZfcGhfb3AxXSAgICAgICAgICAgICAgICAgICAgXG5cdCIKKyAgICAiZGxpICAgICAgICAl
W3RtcDBdLCAgICAweGViMTgwOGE5ZWIxODA4YTkgICAgICAgICAgICAgIFxuXHQiCisgICAgImRt
dGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9waF9vcDNdICAgICAgICAgICAgICAgICAgICBcblx0
IgorICAgICJweG9yICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICVbZnRtcDBdICAg
ICAgICAgXG5cdCIKICAgICAiZ3NsZGxjMSAgICAlW2Z0bXAxXSwgICAweDA3KCVbaXBdKSAgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImdzbGRyYzEgICAgJVtmdG1wMV0sICAgMHgwMCgl
W2lwXSkgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgIE1NSV9BRERVKCVbaXBdLCAlW2lw
XSwgJVtwaXRjaF0pCkBAIC0xMjksNyArMTMzLDcgQEAgdm9pZCB2cDhfc2hvcnRfZmRjdDR4NF9t
bWkoaW50MTZfdCAqaW5wdXQsIGludDE2X3QgKm91dHB1dCwgaW50IHBpdGNoKSB7CiAKICAgICAv
LyBvcFsxXSA9IChjMSAqIDIyMTcgKyBkMSAqIDUzNTIgKyAxNDUwMCkgPj4gMTIKICAgICBNTUlf
TEkoJVt0bXAwXSwgMHgwYykKLSAgICAibXRjMSAgICAgICAlW3RtcDBdLCAgICAlW2Z0bXAxMV0g
ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAg
JVtmdG1wMTFdICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJsZGMxICAgICAgICVb
ZnRtcDEyXSwgICVbZmZfcHdfMTQ1MDBdICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAicHVu
cGNrbGh3ICAlW2Z0bXA5XSwgICAlW2Z0bXA3XSwgICAgICAgJVtmdG1wOF0gICAgICAgIFxuXHQi
CiAgICAgInBtYWRkaHcgICAgJVtmdG1wNV0sICAgJVtmdG1wOV0sICAgICAgICVbZmZfcGhfb3Ax
XSAgICBcblx0IgpAQCAtMTY5LDcgKzE3Myw3IEBAIHZvaWQgdnA4X3Nob3J0X2ZkY3Q0eDRfbW1p
KGludDE2X3QgKmlucHV0LCBpbnQxNl90ICpvdXRwdXQsIGludCBwaXRjaCkgewogICAgICJwYWRk
aCAgICAgICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAgICAlW2Z0bXA5XSAgICAgICAgXG5cdCIK
ICAgICAicGFkZGggICAgICAlW2Z0bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgJVtmdG1wOV0gICAg
ICAgIFxuXHQiCiAgICAgTU1JX0xJKCVbdG1wMF0sIDB4MDQpCi0gICAgIm10YzEgICAgICAgJVt0
bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRj
MSAgICAgICVbdG1wMF0sICAgICVbZnRtcDldICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIK
ICAgICAicHNyYWggICAgICAlW2Z0bXAxXSwgICAlW2Z0bXAxXSwgICAgICAgJVtmdG1wOV0gICAg
ICAgIFxuXHQiCiAgICAgInBzcmFoICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICVb
ZnRtcDldICAgICAgICBcblx0IgogCkBAIC0yMTEsMTUgKzIxNSwxNiBAQCB2b2lkIHZwOF9zaG9y
dF9mZGN0NHg0X21taShpbnQxNl90ICppbnB1dCwgaW50MTZfdCAqb3V0cHV0LCBpbnQgcGl0Y2gp
IHsKICAgICAgIFtmdG1wM10gIj0mZiIoZnRtcDMpLCBbZnRtcDRdICI9JmYiKGZ0bXA0KSwgW2Z0
bXA1XSAiPSZmIihmdG1wNSksCiAgICAgICBbZnRtcDZdICI9JmYiKGZ0bXA2KSwgW2Z0bXA3XSAi
PSZmIihmdG1wNyksIFtmdG1wOF0gIj0mZiIoZnRtcDgpLAogICAgICAgW2Z0bXA5XSAiPSZmIihm
dG1wOSksIFtmdG1wMTBdICI9JmYiKGZ0bXAxMCksIFtmdG1wMTFdICI9JmYiKGZ0bXAxMSksCi0g
ICAgICBbZnRtcDEyXSAiPSZmIihmdG1wMTIpLCBbdG1wMF0gIj0mciIodG1wWzBdKSwgW2lwXSIr
JnIiKGlwKQorICAgICAgW2Z0bXAxMl0gIj0mZiIoZnRtcDEyKSwgW3RtcDBdICI9JnIiKHRtcFsw
XSksIFtpcF0iKyZyIihpcCksCisgICAgICBbZmZfcGhfb3AxXSAiPSZmIihmZl9waF9vcDEpLCBb
ZmZfcGhfb3AzXSAiPSZmIihmZl9waF9vcDMpCiAgICAgOiBbZmZfcGhfMDFdICJtIihmZl9waF8w
MSksIFtmZl9waF8wN10gIm0iKGZmX3BoXzA3KSwKLSAgICAgIFtmZl9waF9vcDFdICJmIihmZl9w
aF9vcDEpLCBbZmZfcGhfb3AzXSAiZiIoZmZfcGhfb3AzKSwKICAgICAgIFtmZl9wd18xNDUwMF0g
Im0iKGZmX3B3XzE0NTAwKSwgW2ZmX3B3Xzc1MDBdICJtIihmZl9wd183NTAwKSwKICAgICAgIFtm
Zl9wd18xMjAwMF0gIm0iKGZmX3B3XzEyMDAwKSwgW2ZmX3B3XzUxMDAwXSAibSIoZmZfcHdfNTEw
MDApLAogICAgICAgW2ZmX3B3XzUzNTJdIm0iKGZmX3B3XzUzNTIpLCBbZmZfcHdfMjIxN10ibSIo
ZmZfcHdfMjIxNyksCiAgICAgICBbZmZfcGhfOF0ibSIoZmZfcGhfOCksIFtwaXRjaF0iciIocGl0
Y2gpLCBbb3V0cHV0XSAiciIob3V0cHV0KQogICAgIDogIm1lbW9yeSIKICAgKTsKKyAgLyogY2xh
bmctZm9ybWF0IG9uICovCiB9CiAKIHZvaWQgdnA4X3Nob3J0X2ZkY3Q4eDRfbW1pKGludDE2X3Qg
KmlucHV0LCBpbnQxNl90ICpvdXRwdXQsIGludCBwaXRjaCkgewpAQCAtMjI4LDE3ICsyMzMsMjIg
QEAgdm9pZCB2cDhfc2hvcnRfZmRjdDh4NF9tbWkoaW50MTZfdCAqaW5wdXQsIGludDE2X3QgKm91
dHB1dCwgaW50IHBpdGNoKSB7CiB9CiAKIHZvaWQgdnA4X3Nob3J0X3dhbHNoNHg0X21taShpbnQx
Nl90ICppbnB1dCwgaW50MTZfdCAqb3V0cHV0LCBpbnQgcGl0Y2gpIHsKLSAgZG91YmxlIGZ0bXBb
MTNdOwotICB1aW50MzJfdCB0bXBbMV07Ci0gIERFQ0xBUkVfQUxJR05FRCg4LCBjb25zdCB1aW50
NjRfdCwgZmZfcGhfMDEpID0geyAweDAwMDEwMDAxMDAwMTAwMDFVTEwgfTsKLSAgREVDTEFSRV9B
TElHTkVEKDgsIGNvbnN0IHVpbnQ2NF90LCBmZl9wd18wMSkgPSB7IDB4MDAwMDAwMDEwMDAwMDAw
MVVMTCB9OwotICBERUNMQVJFX0FMSUdORUQoOCwgY29uc3QgdWludDY0X3QsIGZmX3B3XzAzKSA9
IHsgMHgwMDAwMDAwMzAwMDAwMDAzVUxMIH07Ci0gIERFQ0xBUkVfQUxJR05FRCg4LCBjb25zdCB1
aW50NjRfdCwgZmZfcHdfbWFzaykgPSB7IDB4MDAwMTAwMDAwMDAxMDAwMFVMTCB9OworICBkb3Vi
bGUgZnRtcFsxM10sIGZmX3BoXzAxLCBmZl9wd18wMSwgZmZfcHdfMDMsIGZmX3B3X21hc2s7Cisg
IHVpbnQ2NF90IHRtcFsxXTsKIAorICAvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiAgIF9fYXNtX18g
dm9sYXRpbGUgKAorICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4MDAwMTAwMDEwMDAxMDAw
MSAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtm
Zl9waF8wMV0gICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKKyAgICAiZGxpICAgICAgICAl
W3RtcDBdLCAgICAweDAwMDAwMDAxMDAwMDAwMDEgICAgICAgICAgICAgICAgICBcblx0IgorICAg
ICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZmZfcHdfMDFdICAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCisgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwMDAwMDAwMzAwMDAwMDAz
ICAgICAgICAgICAgICAgICAgXG5cdCIKKyAgICAiZG10YzEgICAgICAlW3RtcDBdLCAgICAlW2Zm
X3B3XzAzXSAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbGkgICAgICAgICVb
dG1wMF0sICAgIDB4MDAwMTAwMDAwMDAxMDAwMCAgICAgICAgICAgICAgICAgIFxuXHQiCisgICAg
ImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmZl9wd19tYXNrXSAgICAgICAgICAgICAgICAgICAg
ICAgXG5cdCIKICAgICBNTUlfTEkoJVt0bXAwXSwgMHgwMikKLSAgICAieG9yICAgICAgICAlW2Z0
bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgotICAgICJt
dGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDExXSAgICAgICAgICAgICAgICAgICAgICAgICAg
IFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICVbZnRt
cDBdICAgICAgICAgICAgXG5cdCIKKyAgICAiZG10YzEgICAgICAlW3RtcDBdLCAgICAlW2Z0bXAx
MV0gICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogCiAgICAgImdzbGRsYzEgICAgJVtm
dG1wMV0sICAgMHgwNyglW2lwXSkgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAi
Z3NsZHJjMSAgICAlW2Z0bXAxXSwgICAweDAwKCVbaXBdKSAgICAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgpAQCAtMzM3LDUyICszNDcsNTIgQEAgdm9pZCB2cDhfc2hvcnRfd2Fsc2g0eDRfbW1p
KGludDE2X3QgKmlucHV0LCBpbnQxNl90ICpvdXRwdXQsIGludCBwaXRjaCkgewogICAgICJwc3Vi
dyAgICAgICVbZnRtcDRdLCAgICVbZnRtcDldLCAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxu
XHQiCiAKICAgICBNTUlfTEkoJVt0bXAwXSwgMHgwMykKLSAgICAibXRjMSAgICAgICAlW3RtcDBd
LCAgICAlW2Z0bXAxMV0gICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICJkbXRj
MSAgICAgICVbdG1wMF0sICAgICVbZnRtcDExXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCiAKICAgICAicGNtcGd0dyAgICAlW2Z0bXA5XSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1w
MV0gICAgICAgICAgICBcblx0IgotICAgICJhbmQgICAgICAgICVbZnRtcDldLCAgICVbZnRtcDld
LCAgICAgICAlW2ZmX3B3XzAxXSAgICAgICAgIFxuXHQiCisgICAgInBhbmQgICAgICAgJVtmdG1w
OV0sICAgJVtmdG1wOV0sICAgICAgICVbZmZfcHdfMDFdICAgICAgICAgXG5cdCIKICAgICAicGFk
ZHcgICAgICAlW2Z0bXAxXSwgICAlW2Z0bXAxXSwgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBc
blx0IgogICAgICJwYWRkdyAgICAgICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAgICAlW2ZmX3B3
XzAzXSAgICAgICAgIFxuXHQiCiAgICAgInBzcmF3ICAgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0s
ICAgICAgICVbZnRtcDExXSAgICAgICAgICAgXG5cdCIKIAogICAgICJwY21wZ3R3ICAgICVbZnRt
cDldLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0bXAyXSAgICAgICAgICAgIFxuXHQiCi0gICAgImFu
ZCAgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgICAgICVbZmZfcHdfMDFdICAgICAgICAg
XG5cdCIKKyAgICAicGFuZCAgICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA5XSwgICAgICAgJVtmZl9w
d18wMV0gICAgICAgICBcblx0IgogICAgICJwYWRkdyAgICAgICVbZnRtcDJdLCAgICVbZnRtcDJd
LCAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR3ICAgICAgJVtmdG1w
Ml0sICAgJVtmdG1wMl0sICAgICAgICVbZmZfcHdfMDNdICAgICAgICAgXG5cdCIKICAgICAicHNy
YXcgICAgICAlW2Z0bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgJVtmdG1wMTFdICAgICAgICAgICBc
blx0IgogCiAgICAgInBjbXBndHcgICAgJVtmdG1wOV0sICAgJVtmdG1wMF0sICAgICAgICVbZnRt
cDNdICAgICAgICAgICAgXG5cdCIKLSAgICAiYW5kICAgICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA5
XSwgICAgICAgJVtmZl9wd18wMV0gICAgICAgICBcblx0IgorICAgICJwYW5kICAgICAgICVbZnRt
cDldLCAgICVbZnRtcDldLCAgICAgICAlW2ZmX3B3XzAxXSAgICAgICAgIFxuXHQiCiAgICAgInBh
ZGR3ICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICVbZnRtcDldICAgICAgICAgICAg
XG5cdCIKICAgICAicGFkZHcgICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAzXSwgICAgICAgJVtmZl9w
d18wM10gICAgICAgICBcblx0IgogICAgICJwc3JhdyAgICAgICVbZnRtcDNdLCAgICVbZnRtcDNd
LCAgICAgICAlW2Z0bXAxMV0gICAgICAgICAgIFxuXHQiCiAKICAgICAicGNtcGd0dyAgICAlW2Z0
bXA5XSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wNF0gICAgICAgICAgICBcblx0IgotICAgICJh
bmQgICAgICAgICVbZnRtcDldLCAgICVbZnRtcDldLCAgICAgICAlW2ZmX3B3XzAxXSAgICAgICAg
IFxuXHQiCisgICAgInBhbmQgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgICAgICVbZmZf
cHdfMDFdICAgICAgICAgXG5cdCIKICAgICAicGFkZHcgICAgICAlW2Z0bXA0XSwgICAlW2Z0bXA0
XSwgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgogICAgICJwYWRkdyAgICAgICVbZnRt
cDRdLCAgICVbZnRtcDRdLCAgICAgICAlW2ZmX3B3XzAzXSAgICAgICAgIFxuXHQiCiAgICAgInBz
cmF3ICAgICAgJVtmdG1wNF0sICAgJVtmdG1wNF0sICAgICAgICVbZnRtcDExXSAgICAgICAgICAg
XG5cdCIKIAogICAgICJwY21wZ3R3ICAgICVbZnRtcDldLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0
bXA1XSAgICAgICAgICAgIFxuXHQiCi0gICAgImFuZCAgICAgICAgJVtmdG1wOV0sICAgJVtmdG1w
OV0sICAgICAgICVbZmZfcHdfMDFdICAgICAgICAgXG5cdCIKKyAgICAicGFuZCAgICAgICAlW2Z0
bXA5XSwgICAlW2Z0bXA5XSwgICAgICAgJVtmZl9wd18wMV0gICAgICAgICBcblx0IgogICAgICJw
YWRkdyAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW2Z0bXA5XSAgICAgICAgICAg
IFxuXHQiCiAgICAgInBhZGR3ICAgICAgJVtmdG1wNV0sICAgJVtmdG1wNV0sICAgICAgICVbZmZf
cHdfMDNdICAgICAgICAgXG5cdCIKICAgICAicHNyYXcgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1
XSwgICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0IgogCiAgICAgInBjbXBndHcgICAgJVtm
dG1wOV0sICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDZdICAgICAgICAgICAgXG5cdCIKLSAgICAi
YW5kICAgICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA5XSwgICAgICAgJVtmZl9wd18wMV0gICAgICAg
ICBcblx0IgorICAgICJwYW5kICAgICAgICVbZnRtcDldLCAgICVbZnRtcDldLCAgICAgICAlW2Zm
X3B3XzAxXSAgICAgICAgIFxuXHQiCiAgICAgInBhZGR3ICAgICAgJVtmdG1wNl0sICAgJVtmdG1w
Nl0sICAgICAgICVbZnRtcDldICAgICAgICAgICAgXG5cdCIKICAgICAicGFkZHcgICAgICAlW2Z0
bXA2XSwgICAlW2Z0bXA2XSwgICAgICAgJVtmZl9wd18wM10gICAgICAgICBcblx0IgogICAgICJw
c3JhdyAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAlW2Z0bXAxMV0gICAgICAgICAg
IFxuXHQiCiAKICAgICAicGNtcGd0dyAgICAlW2Z0bXA5XSwgICAlW2Z0bXAwXSwgICAgICAgJVtm
dG1wN10gICAgICAgICAgICBcblx0IgotICAgICJhbmQgICAgICAgICVbZnRtcDldLCAgICVbZnRt
cDldLCAgICAgICAlW2ZmX3B3XzAxXSAgICAgICAgIFxuXHQiCisgICAgInBhbmQgICAgICAgJVtm
dG1wOV0sICAgJVtmdG1wOV0sICAgICAgICVbZmZfcHdfMDFdICAgICAgICAgXG5cdCIKICAgICAi
cGFkZHcgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAgJVtmdG1wOV0gICAgICAgICAg
ICBcblx0IgogICAgICJwYWRkdyAgICAgICVbZnRtcDddLCAgICVbZnRtcDddLCAgICAgICAlW2Zm
X3B3XzAzXSAgICAgICAgIFxuXHQiCiAgICAgInBzcmF3ICAgICAgJVtmdG1wN10sICAgJVtmdG1w
N10sICAgICAgICVbZnRtcDExXSAgICAgICAgICAgXG5cdCIKIAogICAgICJwY21wZ3R3ICAgICVb
ZnRtcDldLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCi0gICAg
ImFuZCAgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgICAgICVbZmZfcHdfMDFdICAgICAg
ICAgXG5cdCIKKyAgICAicGFuZCAgICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA5XSwgICAgICAgJVtm
Zl9wd18wMV0gICAgICAgICBcblx0IgogICAgICJwYWRkdyAgICAgICVbZnRtcDhdLCAgICVbZnRt
cDhdLCAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR3ICAgICAgJVtm
dG1wOF0sICAgJVtmdG1wOF0sICAgICAgICVbZmZfcHdfMDNdICAgICAgICAgXG5cdCIKICAgICAi
cHNyYXcgICAgICAlW2Z0bXA4XSwgICAlW2Z0bXA4XSwgICAgICAgJVtmdG1wMTFdICAgICAgICAg
ICBcblx0IgpAQCAtMzkzLDcgKzQwMyw3IEBAIHZvaWQgdnA4X3Nob3J0X3dhbHNoNHg0X21taShp
bnQxNl90ICppbnB1dCwgaW50MTZfdCAqb3V0cHV0LCBpbnQgcGl0Y2gpIHsKICAgICAicGFja3Nz
d2ggICAlW2Z0bXA0XSwgICAlW2Z0bXA0XSwgICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0
IgogCiAgICAgTU1JX0xJKCVbdG1wMF0sIDB4NzIpCi0gICAgIm10YzEgICAgICAgJVt0bXAwXSwg
ICAgJVtmdG1wMTFdICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKKyAgICAiZG10YzEg
ICAgICAlW3RtcDBdLCAgICAlW2Z0bXAxMV0gICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0
IgogICAgICJwc2h1ZmggICAgICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAgICAlW2Z0bXAxMV0g
ICAgICAgICAgIFxuXHQiCiAgICAgInBzaHVmaCAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAg
ICAgICVbZnRtcDExXSAgICAgICAgICAgXG5cdCIKICAgICAicHNodWZoICAgICAlW2Z0bXAzXSwg
ICAlW2Z0bXAzXSwgICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0IgpAQCAtNDEzLDEzICs0
MjMsMTIgQEAgdm9pZCB2cDhfc2hvcnRfd2Fsc2g0eDRfbW1pKGludDE2X3QgKmlucHV0LCBpbnQx
Nl90ICpvdXRwdXQsIGludCBwaXRjaCkgewogICAgICAgW2Z0bXA2XSI9JmYiKGZ0bXBbNl0pLCAg
ICAgICAgICAgIFtmdG1wN10iPSZmIihmdG1wWzddKSwKICAgICAgIFtmdG1wOF0iPSZmIihmdG1w
WzhdKSwgICAgICAgICAgICBbZnRtcDldIj0mZiIoZnRtcFs5XSksCiAgICAgICBbZnRtcDEwXSI9
JmYiKGZ0bXBbMTBdKSwgICAgICAgICAgW2Z0bXAxMV0iPSZmIihmdG1wWzExXSksCi0gICAgICBb
ZnRtcDEyXSI9JmYiKGZ0bXBbMTJdKSwKLSAgICAgIFt0bXAwXSI9JnIiKHRtcFswXSksCi0gICAg
ICBbaXBdIismciIoaW5wdXQpCi0gICAgOiBbb3BdInIiKG91dHB1dCksCi0gICAgICBbZmZfcHdf
MDFdImYiKGZmX3B3XzAxKSwgICAgICAgICAgW3BpdGNoXSJyIigobWlwc19yZWcpcGl0Y2gpLAot
ICAgICAgW2ZmX3B3XzAzXSJmIihmZl9wd18wMyksICAgICAgICAgIFtmZl9wd19tYXNrXSJmIihm
Zl9wd19tYXNrKSwKLSAgICAgIFtmZl9waF8wMV0iZiIoZmZfcGhfMDEpCisgICAgICBbZnRtcDEy
XSI9JmYiKGZ0bXBbMTJdKSwgICAgICAgICAgW2ZmX3B3X21hc2tdIj0mZiIoZmZfcHdfbWFzayks
CisgICAgICBbdG1wMF0iPSZyIih0bXBbMF0pLCAgICAgICAgICAgICAgW2ZmX3B3XzAxXSI9JmYi
KGZmX3B3XzAxKSwKKyAgICAgIFtpcF0iKyZyIihpbnB1dCksICAgICAgICAgICAgICAgICBbZmZf
cHdfMDNdIj0mZiIoZmZfcHdfMDMpLAorICAgICAgW2ZmX3BoXzAxXSI9JmYiKGZmX3BoXzAxKQor
ICAgIDogW29wXSJyIihvdXRwdXQpLCAgICAgICAgICAgICAgICAgIFtwaXRjaF0iciIoKG1pcHNf
cmVnKXBpdGNoKQogICAgIDogIm1lbW9yeSIKICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICov
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL21pcHMvbW1pL3ZwOF9xdWFu
dGl6ZV9tbWkuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvbWlwcy9tbWkvdnA4X3F1YW50aXpl
X21taS5jCmluZGV4IDNjY2IxOTZmZmI5NTU2ODQzNmNkNTg1YTJjMmU2MGM4NzM3MDYwZmUuLjE5
ODY0NDRhYTM5NjM1ZTRiZTdkYzQzZGU1YjEwNjJlZTNmZGNmN2IgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvbWlwcy9tbWkvdnA4X3F1YW50aXplX21taS5jCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA4L2VuY29kZXIvbWlwcy9tbWkvdnA4X3F1YW50aXplX21taS5jCkBAIC00MiwyNCAr
NDIsMjUgQEAgdm9pZCB2cDhfZmFzdF9xdWFudGl6ZV9iX21taShCTE9DSyAqYiwgQkxPQ0tEICpk
KSB7CiAKICAgZG91YmxlIGZ0bXBbMTNdOwogICB1aW50NjRfdCB0bXBbMV07Ci0gIERFQ0xBUkVf
QUxJR05FRCg4LCBjb25zdCB1aW50NjRfdCwgb25lcykgPSB7IDB4ZmZmZmZmZmZmZmZmZmZmZlVM
TCB9OwotICBpbnQgZW9iID0gMDsKKyAgaW50NjRfdCBlb2IgPSAwOworICBkb3VibGUgb25lczsK
IAogICBfX2FzbV9fIHZvbGF0aWxlKAogICAgICAgLy8gbG9vcCAwIH4gNwotICAgICAgInhvciAg
ICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDBdICAgICAgICBcblx0Igor
ICAgICAgInB4b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDBdICAg
ICAgICBcblx0IgorICAgICAgInBjbXBlcWggICAgJVtvbmVzXSwgICAgJVtvbmVzXSwgICAgICAg
ICVbb25lc10gICAgICAgICBcblx0IgogICAgICAgImdzbGRsYzEgICAgJVtmdG1wMV0sICAgMHgw
NyglW2NvZWZmX3B0cl0pICAgICAgICAgICAgICBcblx0IgogICAgICAgImdzbGRyYzEgICAgJVtm
dG1wMV0sICAgMHgwMCglW2NvZWZmX3B0cl0pICAgICAgICAgICAgICBcblx0IgotICAgICAgImxp
ICAgICAgICAgJVt0bXAwXSwgICAgMHgwZiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0
IgotICAgICAgIm10YzEgICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAg
ICAgICAgICBcblx0IgorICAgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHgwZiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAg
JVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICAgImdzbGRsYzEgICAg
JVtmdG1wMl0sICAgMHgwZiglW2NvZWZmX3B0cl0pICAgICAgICAgICAgICBcblx0IgogICAgICAg
ImdzbGRyYzEgICAgJVtmdG1wMl0sICAgMHgwOCglW2NvZWZmX3B0cl0pICAgICAgICAgICAgICBc
blx0IgogCiAgICAgICAicHNyYWggICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAxXSwgICAgICAgJVtm
dG1wOV0gICAgICAgIFxuXHQiCi0gICAgICAieG9yICAgICAgICAlW2Z0bXAxXSwgICAlW2Z0bXAz
XSwgICAgICAgJVtmdG1wMV0gICAgICAgIFxuXHQiCisgICAgICAicHhvciAgICAgICAlW2Z0bXAx
XSwgICAlW2Z0bXAzXSwgICAgICAgJVtmdG1wMV0gICAgICAgIFxuXHQiCiAgICAgICAicHN1Ymgg
ICAgICAlW2Z0bXAxXSwgICAlW2Z0bXAxXSwgICAgICAgJVtmdG1wM10gICAgICAgIFxuXHQiCiAg
ICAgICAicHNyYWggICAgICAlW2Z0bXA0XSwgICAlW2Z0bXAyXSwgICAgICAgJVtmdG1wOV0gICAg
ICAgIFxuXHQiCi0gICAgICAieG9yICAgICAgICAlW2Z0bXAyXSwgICAlW2Z0bXA0XSwgICAgICAg
JVtmdG1wMl0gICAgICAgIFxuXHQiCisgICAgICAicHhvciAgICAgICAlW2Z0bXAyXSwgICAlW2Z0
bXA0XSwgICAgICAgJVtmdG1wMl0gICAgICAgIFxuXHQiCiAgICAgICAicHN1YmggICAgICAlW2Z0
bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgJVtmdG1wNF0gICAgICAgIFxuXHQiCiAKICAgICAgICJn
c2xkbGMxICAgICVbZnRtcDVdLCAgIDB4MDcoJVtyb3VuZF9wdHJdKSAgICAgICAgICAgICAgXG5c
dCIKQEAgLTc1LDggKzc2LDggQEAgdm9pZCB2cDhfZmFzdF9xdWFudGl6ZV9iX21taShCTE9DSyAq
YiwgQkxPQ0tEICpkKSB7CiAgICAgICAicG11bGh1aCAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwg
ICAgICAgJVtmdG1wN10gICAgICAgIFxuXHQiCiAgICAgICAicG11bGh1aCAgICAlW2Z0bXA2XSwg
ICAlW2Z0bXA2XSwgICAgICAgJVtmdG1wOF0gICAgICAgIFxuXHQiCiAKLSAgICAgICJ4b3IgICAg
ICAgICVbZnRtcDddLCAgICVbZnRtcDVdLCAgICAgICAlW2Z0bXAzXSAgICAgICAgXG5cdCIKLSAg
ICAgICJ4b3IgICAgICAgICVbZnRtcDhdLCAgICVbZnRtcDZdLCAgICAgICAlW2Z0bXA0XSAgICAg
ICAgXG5cdCIKKyAgICAgICJweG9yICAgICAgICVbZnRtcDddLCAgICVbZnRtcDVdLCAgICAgICAl
W2Z0bXAzXSAgICAgICAgXG5cdCIKKyAgICAgICJweG9yICAgICAgICVbZnRtcDhdLCAgICVbZnRt
cDZdLCAgICAgICAlW2Z0bXA0XSAgICAgICAgXG5cdCIKICAgICAgICJwc3ViaCAgICAgICVbZnRt
cDddLCAgICVbZnRtcDddLCAgICAgICAlW2Z0bXAzXSAgICAgICAgXG5cdCIKICAgICAgICJwc3Vi
aCAgICAgICVbZnRtcDhdLCAgICVbZnRtcDhdLCAgICAgICAlW2Z0bXA0XSAgICAgICAgXG5cdCIK
ICAgICAgICJnc3NkbGMxICAgICVbZnRtcDddLCAgIDB4MDcoJVtxY29lZmZfcHRyXSkgICAgICAg
ICAgICAgXG5cdCIKQEAgLTkwLDEwICs5MSwxMCBAQCB2b2lkIHZwOF9mYXN0X3F1YW50aXplX2Jf
bW1pKEJMT0NLICpiLCBCTE9DS0QgKmQpIHsKICAgICAgICJnc2xkcmMxICAgICVbZnRtcDJdLCAg
IDB4MDgoJVtpbnZfemlnX3phZ10pICAgICAgICAgICAgXG5cdCIKICAgICAgICJwY21wZXFoICAg
ICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW2Z0bXAwXSAgICAgICAgXG5cdCIKICAgICAg
ICJwY21wZXFoICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAlW2Z0bXAwXSAgICAgICAg
XG5cdCIKLSAgICAgICJ4b3IgICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW29u
ZXNdICAgICAgICAgXG5cdCIKLSAgICAgICJ4b3IgICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZd
LCAgICAgICAlW29uZXNdICAgICAgICAgXG5cdCIKLSAgICAgICJhbmQgICAgICAgICVbZnRtcDVd
LCAgICVbZnRtcDVdLCAgICAgICAlW2Z0bXAxXSAgICAgICAgXG5cdCIKLSAgICAgICJhbmQgICAg
ICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAlW2Z0bXAyXSAgICAgICAgXG5cdCIKKyAg
ICAgICJweG9yICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW29uZXNdICAgICAg
ICAgXG5cdCIKKyAgICAgICJweG9yICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAl
W29uZXNdICAgICAgICAgXG5cdCIKKyAgICAgICJwYW5kICAgICAgICVbZnRtcDVdLCAgICVbZnRt
cDVdLCAgICAgICAlW2Z0bXAxXSAgICAgICAgXG5cdCIKKyAgICAgICJwYW5kICAgICAgICVbZnRt
cDZdLCAgICVbZnRtcDZdLCAgICAgICAlW2Z0bXAyXSAgICAgICAgXG5cdCIKICAgICAgICJwbWF4
c2ggICAgICVbZnRtcDEwXSwgICVbZnRtcDVdLCAgICAgICAlW2Z0bXA2XSAgICAgICAgXG5cdCIK
IAogICAgICAgImdzbGRsYzEgICAgJVtmdG1wNV0sICAgMHgwNyglW2RlcXVhbnRfcHRyXSkgICAg
ICAgICAgICBcblx0IgpAQCAtMTE0LDEwICsxMTUsMTAgQEAgdm9pZCB2cDhfZmFzdF9xdWFudGl6
ZV9iX21taShCTE9DSyAqYiwgQkxPQ0tEICpkKSB7CiAgICAgICAiZ3NsZHJjMSAgICAlW2Z0bXAy
XSwgICAweDE4KCVbY29lZmZfcHRyXSkgICAgICAgICAgICAgIFxuXHQiCiAKICAgICAgICJwc3Jh
aCAgICAgICVbZnRtcDNdLCAgICVbZnRtcDFdLCAgICAgICAlW2Z0bXA5XSAgICAgICAgXG5cdCIK
LSAgICAgICJ4b3IgICAgICAgICVbZnRtcDFdLCAgICVbZnRtcDNdLCAgICAgICAlW2Z0bXAxXSAg
ICAgICAgXG5cdCIKKyAgICAgICJweG9yICAgICAgICVbZnRtcDFdLCAgICVbZnRtcDNdLCAgICAg
ICAlW2Z0bXAxXSAgICAgICAgXG5cdCIKICAgICAgICJwc3ViaCAgICAgICVbZnRtcDFdLCAgICVb
ZnRtcDFdLCAgICAgICAlW2Z0bXAzXSAgICAgICAgXG5cdCIKICAgICAgICJwc3JhaCAgICAgICVb
ZnRtcDRdLCAgICVbZnRtcDJdLCAgICAgICAlW2Z0bXA5XSAgICAgICAgXG5cdCIKLSAgICAgICJ4
b3IgICAgICAgICVbZnRtcDJdLCAgICVbZnRtcDRdLCAgICAgICAlW2Z0bXAyXSAgICAgICAgXG5c
dCIKKyAgICAgICJweG9yICAgICAgICVbZnRtcDJdLCAgICVbZnRtcDRdLCAgICAgICAlW2Z0bXAy
XSAgICAgICAgXG5cdCIKICAgICAgICJwc3ViaCAgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAg
ICAgICAlW2Z0bXA0XSAgICAgICAgXG5cdCIKIAogICAgICAgImdzbGRsYzEgICAgJVtmdG1wNV0s
ICAgMHgxNyglW3JvdW5kX3B0cl0pICAgICAgICAgICAgICBcblx0IgpAQCAtMTMzLDggKzEzNCw4
IEBAIHZvaWQgdnA4X2Zhc3RfcXVhbnRpemVfYl9tbWkoQkxPQ0sgKmIsIEJMT0NLRCAqZCkgewog
ICAgICAgInBtdWxodWggICAgJVtmdG1wNV0sICAgJVtmdG1wNV0sICAgICAgICVbZnRtcDddICAg
ICAgICBcblx0IgogICAgICAgInBtdWxodWggICAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAgICAg
ICVbZnRtcDhdICAgICAgICBcblx0IgogCi0gICAgICAieG9yICAgICAgICAlW2Z0bXA3XSwgICAl
W2Z0bXA1XSwgICAgICAgJVtmdG1wM10gICAgICAgIFxuXHQiCi0gICAgICAieG9yICAgICAgICAl
W2Z0bXA4XSwgICAlW2Z0bXA2XSwgICAgICAgJVtmdG1wNF0gICAgICAgIFxuXHQiCisgICAgICAi
cHhvciAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA1XSwgICAgICAgJVtmdG1wM10gICAgICAgIFxu
XHQiCisgICAgICAicHhvciAgICAgICAlW2Z0bXA4XSwgICAlW2Z0bXA2XSwgICAgICAgJVtmdG1w
NF0gICAgICAgIFxuXHQiCiAgICAgICAicHN1YmggICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwg
ICAgICAgJVtmdG1wM10gICAgICAgIFxuXHQiCiAgICAgICAicHN1YmggICAgICAlW2Z0bXA4XSwg
ICAlW2Z0bXA4XSwgICAgICAgJVtmdG1wNF0gICAgICAgIFxuXHQiCiAgICAgICAiZ3NzZGxjMSAg
ICAlW2Z0bXA3XSwgICAweDE3KCVbcWNvZWZmX3B0cl0pICAgICAgICAgICAgIFxuXHQiCkBAIC0x
NDgsMTAgKzE0OSwxMCBAQCB2b2lkIHZwOF9mYXN0X3F1YW50aXplX2JfbW1pKEJMT0NLICpiLCBC
TE9DS0QgKmQpIHsKICAgICAgICJnc2xkcmMxICAgICVbZnRtcDJdLCAgIDB4MTgoJVtpbnZfemln
X3phZ10pICAgICAgICAgICAgXG5cdCIKICAgICAgICJwY21wZXFoICAgICVbZnRtcDVdLCAgICVb
ZnRtcDVdLCAgICAgICAlW2Z0bXAwXSAgICAgICAgXG5cdCIKICAgICAgICJwY21wZXFoICAgICVb
ZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAlW2Z0bXAwXSAgICAgICAgXG5cdCIKLSAgICAgICJ4
b3IgICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW29uZXNdICAgICAgICAgXG5c
dCIKLSAgICAgICJ4b3IgICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAlW29uZXNd
ICAgICAgICAgXG5cdCIKLSAgICAgICJhbmQgICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAg
ICAgICAlW2Z0bXAxXSAgICAgICAgXG5cdCIKLSAgICAgICJhbmQgICAgICAgICVbZnRtcDZdLCAg
ICVbZnRtcDZdLCAgICAgICAlW2Z0bXAyXSAgICAgICAgXG5cdCIKKyAgICAgICJweG9yICAgICAg
ICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW29uZXNdICAgICAgICAgXG5cdCIKKyAgICAg
ICJweG9yICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAlW29uZXNdICAgICAgICAg
XG5cdCIKKyAgICAgICJwYW5kICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW2Z0
bXAxXSAgICAgICAgXG5cdCIKKyAgICAgICJwYW5kICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZd
LCAgICAgICAlW2Z0bXAyXSAgICAgICAgXG5cdCIKICAgICAgICJwbWF4c2ggICAgICVbZnRtcDEx
XSwgICVbZnRtcDVdLCAgICAgICAlW2Z0bXA2XSAgICAgICAgXG5cdCIKIAogICAgICAgImdzbGRs
YzEgICAgJVtmdG1wNV0sICAgMHgxNyglW2RlcXVhbnRfcHRyXSkgICAgICAgICAgICBcblx0IgpA
QCAtMTY1LDM0ICsxNjYsMzQgQEAgdm9pZCB2cDhfZmFzdF9xdWFudGl6ZV9iX21taShCTE9DSyAq
YiwgQkxPQ0tEICpkKSB7CiAgICAgICAiZ3NzZGxjMSAgICAlW2Z0bXA2XSwgICAweDFmKCVbZHFj
b2VmZl9wdHJdKSAgICAgICAgICAgIFxuXHQiCiAgICAgICAiZ3NzZHJjMSAgICAlW2Z0bXA2XSwg
ICAweDE4KCVbZHFjb2VmZl9wdHJdKSAgICAgICAgICAgIFxuXHQiCiAKLSAgICAgICJsaSAgICAg
ICAgICVbdG1wMF0sICAgIDB4MTAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKLSAg
ICAgICJtdGMxICAgICAgICVbdG1wMF0sICAgICVbZnRtcDldICAgICAgICAgICAgICAgICAgICAg
ICAgXG5cdCIKKyAgICAgICJkbGkgICAgICAgICVbdG1wMF0sICAgIDB4MTAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXG5cdCIKKyAgICAgICJkbXRjMSAgICAgICVbdG1wMF0sICAgICVbZnRt
cDldICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKIAogICAgICAgInBtYXhzaCAgICAgJVtm
dG1wMTBdLCAgJVtmdG1wMTBdLCAgICAgICAlW2Z0bXAxMV0gICAgICBcblx0IgogICAgICAgInBz
cmx3ICAgICAgJVtmdG1wMTFdLCAgJVtmdG1wMTBdLCAgICAgICAlW2Z0bXA5XSAgICAgICBcblx0
IgogICAgICAgInBtYXhzaCAgICAgJVtmdG1wMTBdLCAgJVtmdG1wMTBdLCAgICAgICAlW2Z0bXAx
MV0gICAgICBcblx0IgotICAgICAgImxpICAgICAgICAgJVt0bXAwXSwgICAgMHhhYSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICAgIm10YzEgICAgICAgJVt0bXAwXSwgICAg
JVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICAgImRsaSAgICAgICAg
JVt0bXAwXSwgICAgMHhhYSAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICAg
ImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICBc
blx0IgogICAgICAgInBzaHVmaCAgICAgJVtmdG1wMTFdLCAgJVtmdG1wMTBdLCAgICAgICAlW2Z0
bXA5XSAgICAgICBcblx0IgogICAgICAgInBtYXhzaCAgICAgJVtmdG1wMTBdLCAgJVtmdG1wMTBd
LCAgICAgICAlW2Z0bXAxMV0gICAgICBcblx0IgotICAgICAgImxpICAgICAgICAgJVt0bXAwXSwg
ICAgMHhmZmZmICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAgICAgIm10YzEgICAg
ICAgJVt0bXAwXSwgICAgJVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICBcblx0IgotICAg
ICAgImFuZCAgICAgICAgJVtmdG1wMTBdLCAgJVtmdG1wMTBdLCAgICAgICAlW2Z0bXA5XSAgICAg
ICBcblx0IgorICAgICAgImRsaSAgICAgICAgJVt0bXAwXSwgICAgMHhmZmZmICAgICAgICAgICAg
ICAgICAgICAgICAgICBcblx0IgorICAgICAgImRtdGMxICAgICAgJVt0bXAwXSwgICAgJVtmdG1w
OV0gICAgICAgICAgICAgICAgICAgICAgICBcblx0IgorICAgICAgInBhbmQgICAgICAgJVtmdG1w
MTBdLCAgJVtmdG1wMTBdLCAgICAgICAlW2Z0bXA5XSAgICAgICBcblx0IgogICAgICAgImdzc2Rs
YzEgICAgJVtmdG1wMTBdLCAgMHgwNyglW2VvYl0pICAgICAgICAgICAgICAgICAgICBcblx0Igog
ICAgICAgImdzc2RyYzEgICAgJVtmdG1wMTBdLCAgMHgwMCglW2VvYl0pICAgICAgICAgICAgICAg
ICAgICBcblx0IgogICAgICAgOiBbZnRtcDBdICI9JmYiKGZ0bXBbMF0pLCBbZnRtcDFdICI9JmYi
KGZ0bXBbMV0pLCBbZnRtcDJdICI9JmYiKGZ0bXBbMl0pLAogICAgICAgICBbZnRtcDNdICI9JmYi
KGZ0bXBbM10pLCBbZnRtcDRdICI9JmYiKGZ0bXBbNF0pLCBbZnRtcDVdICI9JmYiKGZ0bXBbNV0p
LAogICAgICAgICBbZnRtcDZdICI9JmYiKGZ0bXBbNl0pLCBbZnRtcDddICI9JmYiKGZ0bXBbN10p
LCBbZnRtcDhdICI9JmYiKGZ0bXBbOF0pLAogICAgICAgICBbZnRtcDldICI9JmYiKGZ0bXBbOV0p
LCBbZnRtcDEwXSAiPSZmIihmdG1wWzEwXSksCi0gICAgICAgIFtmdG1wMTFdICI9JmYiKGZ0bXBb
MTFdKSwgW2Z0bXAxMl0gIj0mZiIoZnRtcFsxMl0pLCBbdG1wMF0gIj0mciIodG1wWzBdKQorICAg
ICAgICBbZnRtcDExXSAiPSZmIihmdG1wWzExXSksIFtmdG1wMTJdICI9JmYiKGZ0bXBbMTJdKSwK
KyAgICAgICAgW3RtcDBdICI9JnIiKHRtcFswXSksIFtvbmVzXSAiPSZmIihvbmVzKQogICAgICAg
OiBbY29lZmZfcHRyXSAiciIoKG1pcHNfcmVnKWNvZWZmX3B0ciksCiAgICAgICAgIFtxY29lZmZf
cHRyXSAiciIoKG1pcHNfcmVnKXFjb2VmZl9wdHIpLAogICAgICAgICBbZGVxdWFudF9wdHJdICJy
IigobWlwc19yZWcpZGVxdWFudF9wdHIpLAogICAgICAgICBbcm91bmRfcHRyXSAiciIoKG1pcHNf
cmVnKXJvdW5kX3B0ciksCiAgICAgICAgIFtxdWFudF9wdHJdICJyIigobWlwc19yZWcpcXVhbnRf
cHRyKSwKICAgICAgICAgW2RxY29lZmZfcHRyXSAiciIoKG1pcHNfcmVnKWRxY29lZmZfcHRyKSwK
LSAgICAgICAgW2ludl96aWdfemFnXSAiciIoKG1pcHNfcmVnKWludl96aWdfemFnKSwgW2VvYl0g
InIiKChtaXBzX3JlZykmZW9iKSwKLSAgICAgICAgW29uZXNdICJmIihvbmVzKQorICAgICAgICBb
aW52X3ppZ196YWddICJyIigobWlwc19yZWcpaW52X3ppZ196YWcpLCBbZW9iXSAiciIoKG1pcHNf
cmVnKSZlb2IpCiAgICAgICA6ICJtZW1vcnkiKTsKIAogICAqZC0+ZW9iID0gZW9iOwpAQCAtMjE3
LDcgKzIxOCw3IEBAIHZvaWQgdnA4X3JlZ3VsYXJfcXVhbnRpemVfYl9tbWkoQkxPQ0sgKmIsIEJM
T0NLRCAqZCkgewogICAvLyAgbWVtc2V0KGRxY29lZmZfcHRyLCAwLCAzMik7CiAgIC8qIGNsYW5n
LWZvcm1hdCBvZmYgKi8KICAgX19hc21fXyB2b2xhdGlsZSAoCi0gICAgInhvciAgICAgICAgJVtm
dG1wMF0sICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDBdICAgICAgICBcblx0IgorICAgICJweG9y
ICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0bXAwXSAgICAgICAgXG5cdCIK
ICAgICAiZ3NzZGxjMSAgICAlW2Z0bXAwXSwgICAweDA3KCVbcWNvZWZmX3B0cl0pICAgICAgICAg
ICAgIFxuXHQiCiAgICAgImdzc2RyYzEgICAgJVtmdG1wMF0sICAgMHgwMCglW3Fjb2VmZl9wdHJd
KSAgICAgICAgICAgICBcblx0IgogICAgICJnc3NkbGMxICAgICVbZnRtcDBdLCAgIDB4MGYoJVtx
Y29lZmZfcHRyXSkgICAgICAgICAgICAgXG5cdCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4
L2VuY29kZXIvb255eF9pZi5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9vbnl4X2lmLmMKaW5k
ZXggMjljOGNjNjZjY2RiMTgyMmFjYmU1NmZlZjQ5ZjNmY2U3ODFiMTM2OC4uYWVlZDcxOWQxZmIx
NWNmMGY5YWQyODQxZjI0ZmVmOWY1MjZjMjdkMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
ZW5jb2Rlci9vbnl4X2lmLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9vbnl4X2lmLmMK
QEAgLTE0MzAsNiArMTQzMCw3IEBAIHZvaWQgdnA4X2NoYW5nZV9jb25maWcoVlA4X0NPTVAgKmNw
aSwgVlA4X0NPTkZJRyAqb3hjZikgewogICBWUDhfQ09NTU9OICpjbSA9ICZjcGktPmNvbW1vbjsK
ICAgaW50IGxhc3RfdywgbGFzdF9oOwogICB1bnNpZ25lZCBpbnQgcHJldl9udW1iZXJfb2ZfbGF5
ZXJzOworICB1bnNpZ25lZCBpbnQgcmF3X3RhcmdldF9yYXRlOwogCiAgIGlmICghY3BpKSByZXR1
cm47CiAKQEAgLTE1NzAsNiArMTU3MSwxMCBAQCB2b2lkIHZwOF9jaGFuZ2VfY29uZmlnKFZQOF9D
T01QICpjcGksIFZQOF9DT05GSUcgKm94Y2YpIHsKICAgICBjcGktPm94Y2YubWF4aW11bV9idWZm
ZXJfc2l6ZV9pbl9tcyA9IDI0MDAwMDsKICAgfQogCisgIHJhd190YXJnZXRfcmF0ZSA9ICh1bnNp
Z25lZCBpbnQpKChpbnQ2NF90KWNwaS0+b3hjZi5XaWR0aCAqIGNwaS0+b3hjZi5IZWlnaHQgKgor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA4ICogMyAqIGNwaS0+ZnJhbWVyYXRl
IC8gMTAwMCk7CisgIGlmIChjcGktPm94Y2YudGFyZ2V0X2JhbmR3aWR0aCA+IHJhd190YXJnZXRf
cmF0ZSkKKyAgICBjcGktPm94Y2YudGFyZ2V0X2JhbmR3aWR0aCA9IHJhd190YXJnZXRfcmF0ZTsK
ICAgLyogQ29udmVydCB0YXJnZXQgYmFuZHdpZHRoIGZyb20gS2JpdC9zIHRvIEJpdC9zICovCiAg
IGNwaS0+b3hjZi50YXJnZXRfYmFuZHdpZHRoICo9IDEwMDA7CiAKQEAgLTM2MTUsNyArMzYyMCw3
IEBAIHN0YXRpYyB2b2lkIGVuY29kZV9mcmFtZV90b19kYXRhX3JhdGUoVlA4X0NPTVAgKmNwaSwg
c2l6ZV90ICpzaXplLAogICAgICAgICBpZiAoY3BpLT50aGlzX2tleV9mcmFtZV9mb3JjZWQpIHsK
ICAgICAgICAgICBpZiAoY3BpLT5hY3RpdmVfYmVzdF9xdWFsaXR5ID4gY3BpLT5hdmdfZnJhbWVf
cWluZGV4ICogNyAvIDgpIHsKICAgICAgICAgICAgIGNwaS0+YWN0aXZlX2Jlc3RfcXVhbGl0eSA9
IGNwaS0+YXZnX2ZyYW1lX3FpbmRleCAqIDcgLyA4OwotICAgICAgICAgIH0gZWxzZSBpZiAoY3Bp
LT5hY3RpdmVfYmVzdF9xdWFsaXR5PGNwaS0+YXZnX2ZyYW1lX3FpbmRleD4+IDIpIHsKKyAgICAg
ICAgICB9IGVsc2UgaWYgKGNwaS0+YWN0aXZlX2Jlc3RfcXVhbGl0eSA8IChjcGktPmF2Z19mcmFt
ZV9xaW5kZXggPj4gMikpIHsKICAgICAgICAgICAgIGNwaS0+YWN0aXZlX2Jlc3RfcXVhbGl0eSA9
IGNwaS0+YXZnX2ZyYW1lX3FpbmRleCA+PiAyOwogICAgICAgICAgIH0KICAgICAgICAgfQpAQCAt
NDUyMCwyMiArNDUyNSwyNCBAQCBzdGF0aWMgdm9pZCBlbmNvZGVfZnJhbWVfdG9fZGF0YV9yYXRl
KFZQOF9DT01QICpjcGksIHNpemVfdCAqc2l6ZSwKICAgLyogUm9sbGluZyBtb25pdG9ycyBvZiB3
aGV0aGVyIHdlIGFyZSBvdmVyIG9yIHVuZGVyc3BlbmRpbmcgdXNlZCB0bwogICAgKiBoZWxwIHJl
Z3VsYXRlIG1pbiBhbmQgTWF4IFEgaW4gdHdvIHBhc3MuCiAgICAqLwotICBjcGktPnJvbGxpbmdf
dGFyZ2V0X2JpdHMgPQotICAgICAgKChjcGktPnJvbGxpbmdfdGFyZ2V0X2JpdHMgKiAzKSArIGNw
aS0+dGhpc19mcmFtZV90YXJnZXQgKyAyKSAvIDQ7Ci0gIGNwaS0+cm9sbGluZ19hY3R1YWxfYml0
cyA9Ci0gICAgICAoKGNwaS0+cm9sbGluZ19hY3R1YWxfYml0cyAqIDMpICsgY3BpLT5wcm9qZWN0
ZWRfZnJhbWVfc2l6ZSArIDIpIC8gNDsKLSAgY3BpLT5sb25nX3JvbGxpbmdfdGFyZ2V0X2JpdHMg
PQotICAgICAgKChjcGktPmxvbmdfcm9sbGluZ190YXJnZXRfYml0cyAqIDMxKSArIGNwaS0+dGhp
c19mcmFtZV90YXJnZXQgKyAxNikgLyAzMjsKLSAgY3BpLT5sb25nX3JvbGxpbmdfYWN0dWFsX2Jp
dHMgPQotICAgICAgKChjcGktPmxvbmdfcm9sbGluZ19hY3R1YWxfYml0cyAqIDMxKSArIGNwaS0+
cHJvamVjdGVkX2ZyYW1lX3NpemUgKyAxNikgLwotICAgICAgMzI7CisgIGNwaS0+cm9sbGluZ190
YXJnZXRfYml0cyA9IChpbnQpUk9VTkQ2NF9QT1dFUl9PRl9UV08oCisgICAgICAoaW50NjRfdClj
cGktPnJvbGxpbmdfdGFyZ2V0X2JpdHMgKiAzICsgY3BpLT50aGlzX2ZyYW1lX3RhcmdldCwgMik7
CisgIGNwaS0+cm9sbGluZ19hY3R1YWxfYml0cyA9IChpbnQpUk9VTkQ2NF9QT1dFUl9PRl9UV08o
CisgICAgICAoaW50NjRfdCljcGktPnJvbGxpbmdfYWN0dWFsX2JpdHMgKiAzICsgY3BpLT5wcm9q
ZWN0ZWRfZnJhbWVfc2l6ZSwgMik7CisgIGNwaS0+bG9uZ19yb2xsaW5nX3RhcmdldF9iaXRzID0g
KGludClST1VORDY0X1BPV0VSX09GX1RXTygKKyAgICAgIChpbnQ2NF90KWNwaS0+bG9uZ19yb2xs
aW5nX3RhcmdldF9iaXRzICogMzEgKyBjcGktPnRoaXNfZnJhbWVfdGFyZ2V0LCA1KTsKKyAgY3Bp
LT5sb25nX3JvbGxpbmdfYWN0dWFsX2JpdHMgPSAoaW50KVJPVU5ENjRfUE9XRVJfT0ZfVFdPKAor
ICAgICAgKGludDY0X3QpY3BpLT5sb25nX3JvbGxpbmdfYWN0dWFsX2JpdHMgKiAzMSArIGNwaS0+
cHJvamVjdGVkX2ZyYW1lX3NpemUsCisgICAgICA1KTsKIAogICAvKiBBY3R1YWwgYml0cyBzcGVu
dCAqLwogICBjcGktPnRvdGFsX2FjdHVhbF9iaXRzICs9IGNwaS0+cHJvamVjdGVkX2ZyYW1lX3Np
emU7CiAKKyNpZiAwICYmIENPTkZJR19JTlRFUk5BTF9TVEFUUwogICAvKiBEZWJ1ZyBzdGF0cyAq
LwogICBjcGktPnRvdGFsX3RhcmdldF92c19hY3R1YWwgKz0KICAgICAgIChjcGktPnRoaXNfZnJh
bWVfdGFyZ2V0IC0gY3BpLT5wcm9qZWN0ZWRfZnJhbWVfc2l6ZSk7CisjZW5kaWYKIAogICBjcGkt
PmJ1ZmZlcl9sZXZlbCA9IGNwaS0+Yml0c19vZmZfdGFyZ2V0OwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL29ueXhfaW50LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL29u
eXhfaW50LmgKaW5kZXggNTBhNzUwZGEzMTAxYmM3MDg1ZmZhNTMxMDVhMWVmZjlhMjhlMTc2YS4u
Yjk2ZjliMWRjNWJjZWI1YTFjYjgwM2EzNzFhY2NlZTllYjQ1OTFhOSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci9vbnl4X2ludC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIvb255eF9pbnQuaApAQCAtMzM5LDcgKzMzOSw3IEBAIHR5cGVkZWYgc3RydWN0IFZQOF9DT01Q
IHsKIAogICBDT0RJTkdfQ09OVEVYVCBjb2RpbmdfY29udGV4dDsKIAotICAvKiBSYXRlIHRhcmdl
dHRpbmcgdmFyaWFibGVzICovCisgIC8qIFJhdGUgdGFyZ2V0aW5nIHZhcmlhYmxlcyAqLwogICBp
bnQ2NF90IGxhc3RfcHJlZGljdGlvbl9lcnJvcjsKICAgaW50NjRfdCBsYXN0X2ludHJhX2Vycm9y
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmMgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOC9lbmNvZGVyL3JhdGVjdHJsLmMKaW5kZXggZGJkNzZlZGFkMDVlMThiMDA3MWIx
N2Y4YTM4MDVmM2Y1ZjkwOWUyZi4uYmExMjRjMzU5ZTU1ODA4ZWVjYjc0M2NlYTI4Y2M0YTRmMWJl
ZjY3YyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci9yYXRlY3RybC5jCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvcmF0ZWN0cmwuYwpAQCAtMzU3LDcgKzM1Nyw3IEBAIHN0
YXRpYyB2b2lkIGNhbGNfaWZyYW1lX3RhcmdldF9zaXplKFZQOF9DT01QICpjcGkpIHsKIAogICBj
cGktPnRoaXNfZnJhbWVfdGFyZ2V0ID0gKGludCl0YXJnZXQ7CiAKLSAgLyogVE9ETzogaWYgd2Ug
c2VwYXJhdGUgcmF0ZSB0YXJnZXRpbmcgZnJvbSBRIHRhcmdldHRpbmcsIG1vdmUgdGhpcy4KKyAg
LyogVE9ETzogaWYgd2Ugc2VwYXJhdGUgcmF0ZSB0YXJnZXRpbmcgZnJvbSBRIHRhcmdldGluZywg
bW92ZSB0aGlzLgogICAgKiBSZXNldCB0aGUgYWN0aXZlIHdvcnN0IHF1YWxpdHkgdG8gdGhlIGJh
c2VsaW5lIHZhbHVlIGZvciBrZXkgZnJhbWVzLgogICAgKi8KICAgaWYgKGNwaS0+cGFzcyAhPSAy
KSBjcGktPmFjdGl2ZV93b3JzdF9xdWFsaXR5ID0gY3BpLT53b3JzdF9xdWFsaXR5OwpAQCAtMTM3
NSwxNCArMTM3NSwxNyBAQCB2b2lkIHZwOF9jb21wdXRlX2ZyYW1lX3NpemVfYm91bmRzKFZQOF9D
T01QICpjcGksIGludCAqZnJhbWVfdW5kZXJfc2hvb3RfbGltaXQsCiAgICAgKmZyYW1lX3VuZGVy
X3Nob290X2xpbWl0ID0gMDsKICAgICAqZnJhbWVfb3Zlcl9zaG9vdF9saW1pdCA9IElOVF9NQVg7
CiAgIH0gZWxzZSB7CisgICAgY29uc3QgaW50NjRfdCB0aGlzX2ZyYW1lX3RhcmdldCA9IGNwaS0+
dGhpc19mcmFtZV90YXJnZXQ7CisgICAgaW50NjRfdCBvdmVyX3Nob290X2xpbWl0LCB1bmRlcl9z
aG9vdF9saW1pdDsKKwogICAgIGlmIChjcGktPmNvbW1vbi5mcmFtZV90eXBlID09IEtFWV9GUkFN
RSkgewotICAgICAgKmZyYW1lX292ZXJfc2hvb3RfbGltaXQgPSBjcGktPnRoaXNfZnJhbWVfdGFy
Z2V0ICogOSAvIDg7Ci0gICAgICAqZnJhbWVfdW5kZXJfc2hvb3RfbGltaXQgPSBjcGktPnRoaXNf
ZnJhbWVfdGFyZ2V0ICogNyAvIDg7CisgICAgICBvdmVyX3Nob290X2xpbWl0ID0gdGhpc19mcmFt
ZV90YXJnZXQgKiA5IC8gODsKKyAgICAgIHVuZGVyX3Nob290X2xpbWl0ID0gdGhpc19mcmFtZV90
YXJnZXQgKiA3IC8gODsKICAgICB9IGVsc2UgewogICAgICAgaWYgKGNwaS0+b3hjZi5udW1iZXJf
b2ZfbGF5ZXJzID4gMSB8fCBjcGktPmNvbW1vbi5yZWZyZXNoX2FsdF9yZWZfZnJhbWUgfHwKICAg
ICAgICAgICBjcGktPmNvbW1vbi5yZWZyZXNoX2dvbGRlbl9mcmFtZSkgewotICAgICAgICAqZnJh
bWVfb3Zlcl9zaG9vdF9saW1pdCA9IGNwaS0+dGhpc19mcmFtZV90YXJnZXQgKiA5IC8gODsKLSAg
ICAgICAgKmZyYW1lX3VuZGVyX3Nob290X2xpbWl0ID0gY3BpLT50aGlzX2ZyYW1lX3RhcmdldCAq
IDcgLyA4OworICAgICAgICBvdmVyX3Nob290X2xpbWl0ID0gdGhpc19mcmFtZV90YXJnZXQgKiA5
IC8gODsKKyAgICAgICAgdW5kZXJfc2hvb3RfbGltaXQgPSB0aGlzX2ZyYW1lX3RhcmdldCAqIDcg
LyA4OwogICAgICAgfSBlbHNlIHsKICAgICAgICAgLyogRm9yIENCUiB0YWtlIGJ1ZmZlciBmdWxs
bmVzcyBpbnRvIGFjY291bnQgKi8KICAgICAgICAgaWYgKGNwaS0+b3hjZi5lbmRfdXNhZ2UgPT0g
VVNBR0VfU1RSRUFNX0ZST01fU0VSVkVSKSB7CkBAIC0xMzkyLDE4ICsxMzk1LDE4IEBAIHZvaWQg
dnA4X2NvbXB1dGVfZnJhbWVfc2l6ZV9ib3VuZHMoVlA4X0NPTVAgKmNwaSwgaW50ICpmcmFtZV91
bmRlcl9zaG9vdF9saW1pdCwKICAgICAgICAgICAgIC8qIEJ1ZmZlciBpcyB0b28gZnVsbCBzbyBy
ZWxheCBvdmVyc2hvb3QgYW5kIHRpZ2h0ZW4KICAgICAgICAgICAgICAqIHVuZGVyc2hvb3QKICAg
ICAgICAgICAgICAqLwotICAgICAgICAgICAgKmZyYW1lX292ZXJfc2hvb3RfbGltaXQgPSBjcGkt
PnRoaXNfZnJhbWVfdGFyZ2V0ICogMTIgLyA4OwotICAgICAgICAgICAgKmZyYW1lX3VuZGVyX3No
b290X2xpbWl0ID0gY3BpLT50aGlzX2ZyYW1lX3RhcmdldCAqIDYgLyA4OworICAgICAgICAgICAg
b3Zlcl9zaG9vdF9saW1pdCA9IHRoaXNfZnJhbWVfdGFyZ2V0ICogMTIgLyA4OworICAgICAgICAg
ICAgdW5kZXJfc2hvb3RfbGltaXQgPSB0aGlzX2ZyYW1lX3RhcmdldCAqIDYgLyA4OwogICAgICAg
ICAgIH0gZWxzZSBpZiAoY3BpLT5idWZmZXJfbGV2ZWwgPD0KICAgICAgICAgICAgICAgICAgICAg
IChjcGktPm94Y2Yub3B0aW1hbF9idWZmZXJfbGV2ZWwgPj4gMSkpIHsKICAgICAgICAgICAgIC8q
IEJ1ZmZlciBpcyB0b28gbG93IHNvIHJlbGF4IHVuZGVyc2hvb3QgYW5kIHRpZ2h0ZW4KICAgICAg
ICAgICAgICAqIG92ZXJzaG9vdAogICAgICAgICAgICAgICovCi0gICAgICAgICAgICAqZnJhbWVf
b3Zlcl9zaG9vdF9saW1pdCA9IGNwaS0+dGhpc19mcmFtZV90YXJnZXQgKiAxMCAvIDg7Ci0gICAg
ICAgICAgICAqZnJhbWVfdW5kZXJfc2hvb3RfbGltaXQgPSBjcGktPnRoaXNfZnJhbWVfdGFyZ2V0
ICogNCAvIDg7CisgICAgICAgICAgICBvdmVyX3Nob290X2xpbWl0ID0gdGhpc19mcmFtZV90YXJn
ZXQgKiAxMCAvIDg7CisgICAgICAgICAgICB1bmRlcl9zaG9vdF9saW1pdCA9IHRoaXNfZnJhbWVf
dGFyZ2V0ICogNCAvIDg7CiAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICpmcmFtZV9v
dmVyX3Nob290X2xpbWl0ID0gY3BpLT50aGlzX2ZyYW1lX3RhcmdldCAqIDExIC8gODsKLSAgICAg
ICAgICAgICpmcmFtZV91bmRlcl9zaG9vdF9saW1pdCA9IGNwaS0+dGhpc19mcmFtZV90YXJnZXQg
KiA1IC8gODsKKyAgICAgICAgICAgIG92ZXJfc2hvb3RfbGltaXQgPSB0aGlzX2ZyYW1lX3Rhcmdl
dCAqIDExIC8gODsKKyAgICAgICAgICAgIHVuZGVyX3Nob290X2xpbWl0ID0gdGhpc19mcmFtZV90
YXJnZXQgKiA1IC8gODsKICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgICAgLyogVkJSIGFu
ZCBDUSBtb2RlICovCkBAIC0xNDEzLDExICsxNDE2LDExIEBAIHZvaWQgdnA4X2NvbXB1dGVfZnJh
bWVfc2l6ZV9ib3VuZHMoVlA4X0NPTVAgKmNwaSwgaW50ICpmcmFtZV91bmRlcl9zaG9vdF9saW1p
dCwKICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgLyogU3Ryb24gb3ZlcnNob290IGxpbWl0IGZv
ciBjb25zdHJhaW5lZCBxdWFsaXR5ICovCiAgICAgICAgICAgaWYgKGNwaS0+b3hjZi5lbmRfdXNh
Z2UgPT0gVVNBR0VfQ09OU1RSQUlORURfUVVBTElUWSkgewotICAgICAgICAgICAgKmZyYW1lX292
ZXJfc2hvb3RfbGltaXQgPSBjcGktPnRoaXNfZnJhbWVfdGFyZ2V0ICogMTEgLyA4OwotICAgICAg
ICAgICAgKmZyYW1lX3VuZGVyX3Nob290X2xpbWl0ID0gY3BpLT50aGlzX2ZyYW1lX3RhcmdldCAq
IDIgLyA4OworICAgICAgICAgICAgb3Zlcl9zaG9vdF9saW1pdCA9IHRoaXNfZnJhbWVfdGFyZ2V0
ICogMTEgLyA4OworICAgICAgICAgICAgdW5kZXJfc2hvb3RfbGltaXQgPSB0aGlzX2ZyYW1lX3Rh
cmdldCAqIDIgLyA4OwogICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAqZnJhbWVfb3Zl
cl9zaG9vdF9saW1pdCA9IGNwaS0+dGhpc19mcmFtZV90YXJnZXQgKiAxMSAvIDg7Ci0gICAgICAg
ICAgICAqZnJhbWVfdW5kZXJfc2hvb3RfbGltaXQgPSBjcGktPnRoaXNfZnJhbWVfdGFyZ2V0ICog
NSAvIDg7CisgICAgICAgICAgICBvdmVyX3Nob290X2xpbWl0ID0gdGhpc19mcmFtZV90YXJnZXQg
KiAxMSAvIDg7CisgICAgICAgICAgICB1bmRlcl9zaG9vdF9saW1pdCA9IHRoaXNfZnJhbWVfdGFy
Z2V0ICogNSAvIDg7CiAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICB9CkBAIC0xNDI3LDkg
KzE0MzAsMTMgQEAgdm9pZCB2cDhfY29tcHV0ZV9mcmFtZV9zaXplX2JvdW5kcyhWUDhfQ09NUCAq
Y3BpLCBpbnQgKmZyYW1lX3VuZGVyX3Nob290X2xpbWl0LAogICAgICAqIChlZyAqIDcvOCkgbWF5
IGJlIHRpbnkgbWFrZSBzdXJlIHRoZXJlIGlzIGF0IGxlYXN0IGEgbWluaW11bQogICAgICAqIHJh
bmdlLgogICAgICAqLwotICAgICpmcmFtZV9vdmVyX3Nob290X2xpbWl0ICs9IDIwMDsKLSAgICAq
ZnJhbWVfdW5kZXJfc2hvb3RfbGltaXQgLT0gMjAwOwotICAgIGlmICgqZnJhbWVfdW5kZXJfc2hv
b3RfbGltaXQgPCAwKSAqZnJhbWVfdW5kZXJfc2hvb3RfbGltaXQgPSAwOworICAgIG92ZXJfc2hv
b3RfbGltaXQgKz0gMjAwOworICAgIHVuZGVyX3Nob290X2xpbWl0IC09IDIwMDsKKyAgICBpZiAo
dW5kZXJfc2hvb3RfbGltaXQgPCAwKSB1bmRlcl9zaG9vdF9saW1pdCA9IDA7CisgICAgaWYgKHVu
ZGVyX3Nob290X2xpbWl0ID4gSU5UX01BWCkgdW5kZXJfc2hvb3RfbGltaXQgPSBJTlRfTUFYOwor
ICAgIGlmIChvdmVyX3Nob290X2xpbWl0ID4gSU5UX01BWCkgb3Zlcl9zaG9vdF9saW1pdCA9IElO
VF9NQVg7CisgICAgKmZyYW1lX3VuZGVyX3Nob290X2xpbWl0ID0gKGludCl1bmRlcl9zaG9vdF9s
aW1pdDsKKyAgICAqZnJhbWVfb3Zlcl9zaG9vdF9saW1pdCA9IChpbnQpb3Zlcl9zaG9vdF9saW1p
dDsKICAgfQogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3RyZWV3cml0
ZXIuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdyaXRlci5oCmluZGV4IGMwMjY4M2E1
OGI3ODU1OTdkZWVlZmZmMjQzYzEyZmQwN2MxZmYxNDcuLjRlOWVkNmFmMTdjZGQ5ODUwY2UyYTc5
Y2YyNjljM2NiNTRlMzA0ZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJl
ZXdyaXRlci5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIvdHJlZXdyaXRlci5oCkBAIC0x
NCw2ICsxNCw4IEBACiAvKiBUcmVlcyBtYXAgYWxwaGFiZXRzIGludG8gaHVmZm1hbi1saWtlIGNv
ZGVzIHN1aXRhYmxlIGZvciBhbiBhcml0aG1ldGljCiAgICBiaXQgY29kZXIuICBUaW1vdGh5IFMg
TXVycGh5ICAxMSBPY3RvYmVyIDIwMDQgKi8KIAorI2luY2x1ZGUgPHN0ZGludC5oPgorCiAjaW5j
bHVkZSAiLi92cHhfY29uZmlnLmgiCiAjaW5jbHVkZSAidnA4L2NvbW1vbi90cmVlY29kZXIuaCIK
IApAQCAtNDgsNyArNTAsOSBAQCBzdGF0aWMgSU5MSU5FIHVuc2lnbmVkIGludCB2cDhfY29zdF9i
cmFuY2goY29uc3QgdW5zaWduZWQgaW50IGN0WzJdLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHZwOF9wcm9iIHApIHsKICAgLyogSW1pdGF0ZSBleGlzdGluZyBj
YWxjdWxhdGlvbiAqLwogCi0gIHJldHVybiAoKGN0WzBdICogdnA4X2Nvc3RfemVybyhwKSkgKyAo
Y3RbMV0gKiB2cDhfY29zdF9vbmUocCkpKSA+PiA4OworICByZXR1cm4gKHVuc2lnbmVkIGludCko
KCgoKHVpbnQ2NF90KWN0WzBdKSAqIHZwOF9jb3N0X3plcm8ocCkpICsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAoKCh1aW50NjRfdCljdFsxXSkgKiB2cDhfY29zdF9vbmUocCkpKSA+PgorICAg
ICAgICAgICAgICAgICAgICAgICAgOCk7CiB9CiAKIC8qIFNtYWxsIGZ1bmN0aW9ucyB0byB3cml0
ZSBleHBsaWNpdCB2YWx1ZXMgYW5kIHRva2VucywgYXMgd2VsbCBhcwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDgvZW5jb2Rlci94ODYvYmxvY2tfZXJyb3Jfc3NlMi5hc20gYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOC9lbmNvZGVyL3g4Ni9ibG9ja19lcnJvcl9zc2UyLmFzbQppbmRleCBmNmM2YWVhZTc0NGY3
ZjE0Yjk5YjIzZWM0ZTRhNGRmYTdjZjMwYTkxLi4yMDBiNGNjZmU2YmQ0ZWY3ODVmNDM0MDcwZDUz
YjQ2MGExNmQ3YjNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9ibG9j
a19lcnJvcl9zc2UyLmFzbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9ibG9ja19l
cnJvcl9zc2UyLmFzbQpAQCAtMTQsNyArMTQsNyBAQAogU0VDVElPTiAudGV4dAogCiA7aW50IHZw
OF9ibG9ja19lcnJvcl9zc2UyKHNob3J0ICpjb2VmZl9wdHIsICBzaG9ydCAqZGNvZWZfcHRyKQot
Z2xvYmFsIHN5bSh2cDhfYmxvY2tfZXJyb3Jfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZwOF9i
bG9ja19lcnJvcl9zc2UyKQogc3ltKHZwOF9ibG9ja19lcnJvcl9zc2UyKToKICAgICBwdXNoICAg
ICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtNjIsNyArNjIsNyBAQCBzeW0o
dnA4X2Jsb2NrX2Vycm9yX3NzZTIpOgogICAgIHJldAogCiA7aW50IHZwOF9tYmJsb2NrX2Vycm9y
X3NzZTJfaW1wbChzaG9ydCAqY29lZmZfcHRyLCBzaG9ydCAqZGNvZWZfcHRyLCBpbnQgZGMpOwot
Z2xvYmFsIHN5bSh2cDhfbWJibG9ja19lcnJvcl9zc2UyX2ltcGwpIFBSSVZBVEUKK2dsb2JhbHN5
bSh2cDhfbWJibG9ja19lcnJvcl9zc2UyX2ltcGwpCiBzeW0odnA4X21iYmxvY2tfZXJyb3Jfc3Nl
Ml9pbXBsKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApA
QCAtMTMyLDcgKzEzMiw3IEBAIHN5bSh2cDhfbWJibG9ja19lcnJvcl9zc2UyX2ltcGwpOgogCiAK
IDtpbnQgdnA4X21idXZlcnJvcl9zc2UyX2ltcGwoc2hvcnQgKnNfcHRyLCBzaG9ydCAqZF9wdHIp
OwotZ2xvYmFsIHN5bSh2cDhfbWJ1dmVycm9yX3NzZTJfaW1wbCkgUFJJVkFURQorZ2xvYmFsc3lt
KHZwOF9tYnV2ZXJyb3Jfc3NlMl9pbXBsKQogc3ltKHZwOF9tYnV2ZXJyb3Jfc3NlMl9pbXBsKToK
ICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvZW5jb2Rlci94ODYvY29weV9zc2UyLmFzbSBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA4L2VuY29kZXIveDg2L2NvcHlfc3NlMi5hc20KaW5kZXggNDgwZmFhMjU1MDkxOTBkYzA2NmY3
MTAwZWIyOTE1ZTZhYjg3ZjBiMS4uZmU3OGRhMzk4ZWU0ZGQ0ZTA0NzUxODQxZmE4YzNiZGI5MGFl
ZTY0OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci94ODYvY29weV9zc2UyLmFz
bQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9jb3B5X3NzZTIuYXNtCkBAIC0xOSw3
ICsxOSw3IEBAIFNFQ1RJT04gLnRleHQKIDsgICAgdW5zaWduZWQgY2hhciAqZHN0X3B0ciwKIDsg
ICAgaW50ICBkc3Rfc3RyaWRlLAogOyAgICBpbnQgaGVpZ2h0KTsKLWdsb2JhbCBzeW0odnA4X2Nv
cHkzMnhuX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfY29weTMyeG5fc3NlMikKIHN5bSh2
cDhfY29weTMyeG5fc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAg
cmJwLCByc3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2L2NvcHlfc3Nl
My5hc20gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9jb3B5X3NzZTMuYXNtCmluZGV4IDMx
ZWE4OThhM2Q4YjFkNmYzOTEyZWU2NmYxOWU5ZDI0MGEzMGEyMGQuLmM0MGIyZDhiZjYxNTgyN2M2
ZTE0MWY1ZjdhZGU2NjdkNDE3Y2Q0ZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29k
ZXIveDg2L2NvcHlfc3NlMy5hc20KKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci94ODYvY29w
eV9zc2UzLmFzbQpAQCAtOTEsNyArOTEsNyBAQCBTRUNUSU9OIC50ZXh0CiA7ICAgIHVuc2lnbmVk
IGNoYXIgKmRzdF9wdHIsCiA7ICAgIGludCAgZHN0X3N0cmlkZSwKIDsgICAgaW50IGhlaWdodCk7
Ci1nbG9iYWwgc3ltKHZwOF9jb3B5MzJ4bl9zc2UzKSBQUklWQVRFCitnbG9iYWxzeW0odnA4X2Nv
cHkzMnhuX3NzZTMpCiBzeW0odnA4X2NvcHkzMnhuX3NzZTMpOgogCiAgICAgU1RBQ0tfRlJBTUVf
Q1JFQVRFX1gzCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9kY3Rfc3Nl
Mi5hc20gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9kY3Rfc3NlMi5hc20KaW5kZXggNGQ5
MmYwMzQxZDVmYzZkZTRkYTgwMGViMGYzOWE0NTBhOWYyN2NiYy4uM2MyOGNiOTAyZTA3ZWU2MjNk
OTQ1NWNlODBhMDBhMWE1NTQxN2U5MCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rl
ci94ODYvZGN0X3NzZTIuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2L2RjdF9z
c2UyLmFzbQpAQCAtNjMsNyArNjMsNyBAQAogU0VDVElPTiAudGV4dAogCiA7dm9pZCB2cDhfc2hv
cnRfZmRjdDR4NF9zc2UyKHNob3J0ICppbnB1dCwgc2hvcnQgKm91dHB1dCwgaW50IHBpdGNoKQot
Z2xvYmFsIHN5bSh2cDhfc2hvcnRfZmRjdDR4NF9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnA4
X3Nob3J0X2ZkY3Q0eDRfc3NlMikKIHN5bSh2cDhfc2hvcnRfZmRjdDR4NF9zc2UyKToKIAogICAg
IFNUQUNLX0ZSQU1FX0NSRUFURQpAQCAtMTY4LDcgKzE2OCw3IEBAIHN5bSh2cDhfc2hvcnRfZmRj
dDR4NF9zc2UyKToKICAgICBTVEFDS19GUkFNRV9ERVNUUk9ZCiAKIDt2b2lkIHZwOF9zaG9ydF9m
ZGN0OHg0X3NzZTIoc2hvcnQgKmlucHV0LCBzaG9ydCAqb3V0cHV0LCBpbnQgcGl0Y2gpCi1nbG9i
YWwgc3ltKHZwOF9zaG9ydF9mZGN0OHg0X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDhfc2hv
cnRfZmRjdDh4NF9zc2UyKQogc3ltKHZwOF9zaG9ydF9mZGN0OHg0X3NzZTIpOgogCiAgICAgU1RB
Q0tfRlJBTUVfQ1JFQVRFCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9m
d2Fsc2hfc3NlMi5hc20gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni9md2Fsc2hfc3NlMi5h
c20KaW5kZXggYjVkNWRlNGE1OWE5YTUxMDc1ZTg0YWZmNzVhNjRkYWZiMDM5Y2ZlZi4uOTM4ZmMx
NzNmZmVjMTA0NGRiN2QwODcyZmI4YjAwMjZjOTkyNmUyNiAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDgvZW5jb2Rlci94ODYvZndhbHNoX3NzZTIuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2Vu
Y29kZXIveDg2L2Z3YWxzaF9zc2UyLmFzbQpAQCAtMTQsNyArMTQsNyBAQAogU0VDVElPTiAudGV4
dAogCiA7dm9pZCB2cDhfc2hvcnRfd2Fsc2g0eDRfc3NlMihzaG9ydCAqaW5wdXQsIHNob3J0ICpv
dXRwdXQsIGludCBwaXRjaCkKLWdsb2JhbCBzeW0odnA4X3Nob3J0X3dhbHNoNHg0X3NzZTIpIFBS
SVZBVEUKK2dsb2JhbHN5bSh2cDhfc2hvcnRfd2Fsc2g0eDRfc3NlMikKIHN5bSh2cDhfc2hvcnRf
d2Fsc2g0eDRfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJw
LCByc3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2L3RlbXBvcmFsX2Zp
bHRlcl9hcHBseV9zc2UyLmFzbSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L2VuY29kZXIveDg2L3RlbXBvcmFs
X2ZpbHRlcl9hcHBseV9zc2UyLmFzbQppbmRleCBkMmI0NzExYjg3OTM0MmFiNWI2N2ExNDYyYjMw
OWU0YzJiOGQwYjlmLi42NzEwMjA2NGExM2NlMWUzZDk2OTI0ZGFkOGU3NGM2Y2I1ODJiYjE5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC9lbmNvZGVyL3g4Ni90ZW1wb3JhbF9maWx0ZXJfYXBw
bHlfc3NlMi5hc20KKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvZW5jb2Rlci94ODYvdGVtcG9yYWxfZmls
dGVyX2FwcGx5X3NzZTIuYXNtCkBAIC0yMiw3ICsyMiw3IEBAIFNFQ1RJT04gLnRleHQKIDsgICBp
bnQgICAgICAgICAgICAgZmlsdGVyX3dlaWdodCwgICAgfCAgNQogOyAgIHVuc2lnbmVkIGludCAg
ICphY2N1bXVsYXRvciwgICAgICB8ICA2CiA7ICAgdW5zaWduZWQgc2hvcnQgKmNvdW50KSAgICAg
ICAgICAgIHwgIDcKLWdsb2JhbCBzeW0odnA4X3RlbXBvcmFsX2ZpbHRlcl9hcHBseV9zc2UyKSBQ
UklWQVRFCitnbG9iYWxzeW0odnA4X3RlbXBvcmFsX2ZpbHRlcl9hcHBseV9zc2UyKQogc3ltKHZw
OF90ZW1wb3JhbF9maWx0ZXJfYXBwbHlfc3NlMik6CiAKICAgICBwdXNoICAgICAgICByYnAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA4L3ZwOF9jeF9pZmFjZS5jIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgv
dnA4X2N4X2lmYWNlLmMKaW5kZXggOGY3NjE3YWJmOWMwMzMyMjNjYjcxOWQ4MTNlMDkzODIxYzNm
ZDFjNy4uMTE2MGY1MWQ2NGE4MzBhNmZhNWE1NmNkYjA2ZThiM2RmYTRlMDE0ZiAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDgvdnA4X2N4X2lmYWNlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvdnA4
X2N4X2lmYWNlLmMKQEAgLTI2NCw5ICsyNjQsMTIgQEAgc3RhdGljIHZweF9jb2RlY19lcnJfdCB2
YWxpZGF0ZV9pbWcodnB4X2NvZGVjX2FsZ19wcml2X3QgKmN0eCwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IHZweF9pbWFnZV90ICppbWcpIHsKICAgc3dpdGNoIChp
bWctPmZtdCkgewogICAgIGNhc2UgVlBYX0lNR19GTVRfWVYxMjoKLSAgICBjYXNlIFZQWF9JTUdf
Rk1UX0k0MjA6IGJyZWFrOworICAgIGNhc2UgVlBYX0lNR19GTVRfSTQyMDoKKyAgICBjYXNlIFZQ
WF9JTUdfRk1UX05WMTI6IGJyZWFrOwogICAgIGRlZmF1bHQ6Ci0gICAgICBFUlJPUigiSW52YWxp
ZCBpbWFnZSBmb3JtYXQuIE9ubHkgWVYxMiBhbmQgSTQyMCBpbWFnZXMgYXJlIHN1cHBvcnRlZCIp
OworICAgICAgRVJST1IoCisgICAgICAgICAgIkludmFsaWQgaW1hZ2UgZm9ybWF0LiBPbmx5IFlW
MTIsIEk0MjAgYW5kIE5WMTIgaW1hZ2VzIGFyZSAiCisgICAgICAgICAgInN1cHBvcnRlZCIpOwog
ICB9CiAKICAgaWYgKChpbWctPmRfdyAhPSBjdHgtPmNmZy5nX3cpIHx8IChpbWctPmRfaCAhPSBj
dHgtPmNmZy5nX2gpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDgvdnA4X2R4X2lmYWNlLmMg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOC92cDhfZHhfaWZhY2UuYwppbmRleCA0MzE1NmEwNzhiNmVmNDA4NjIz
NTRiNzI5NThiY2MyNDNkYjgzMDFhLi5iYTA3MTRhYmU1YzFlOTYzNGM4ZjIwNGUwMWQ1YWUwMDk3
OTdjNTNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOC92cDhfZHhfaWZhY2UuYworKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOC92cDhfZHhfaWZhY2UuYwpAQCAtNjg3LDcgKzY4Nyw3IEBAIHN0YXRpYyB2
cHhfY29kZWNfZXJyX3QgdnA4X3NldF9kZWNyeXB0b3IodnB4X2NvZGVjX2FsZ19wcml2X3QgKmN0
eCwKICAgcmV0dXJuIFZQWF9DT0RFQ19PSzsKIH0KIAotdnB4X2NvZGVjX2N0cmxfZm5fbWFwX3Qg
dnA4X2N0Zl9tYXBzW10gPSB7CitzdGF0aWMgdnB4X2NvZGVjX2N0cmxfZm5fbWFwX3QgdnA4X2N0
Zl9tYXBzW10gPSB7CiAgIHsgVlA4X1NFVF9SRUZFUkVOQ0UsIHZwOF9zZXRfcmVmZXJlbmNlIH0s
CiAgIHsgVlA4X0NPUFlfUkVGRVJFTkNFLCB2cDhfZ2V0X3JlZmVyZW5jZSB9LAogICB7IFZQOF9T
RVRfUE9TVFBST0MsIHZwOF9zZXRfcG9zdHByb2MgfSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgv
dnA5L2NvbW1vbi92cDlfYmxvY2tkLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X2Jsb2Nr
ZC5oCmluZGV4IDZlZjgxMjdhNTkyOWZkODY2ODIyZjZiNjY1NmExZWNmZDMxNDZhOTkuLmQ3ZGU0
NmNmNGYyYTg3NWFiNTkyMmNiM2I0ZmZjMzUyNzE1ZTc3ZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi92cDlfYmxvY2tkLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3Zw
OV9ibG9ja2QuaApAQCAtNjQsNiArNjQsMTIgQEAgdHlwZWRlZiBzdHJ1Y3QgewogCiB0eXBlZGVm
IGludDhfdCBNVl9SRUZFUkVOQ0VfRlJBTUU7CiAKK3N0YXRpYyBJTkxJTkUgaW50IG12X3JlZl9m
cmFtZV90b19pbnRlcl9yZWZfaWR4KAorICAgIE1WX1JFRkVSRU5DRV9GUkFNRSBtdl9yZWZfZnJh
bWUpIHsKKyAgYXNzZXJ0KG12X3JlZl9mcmFtZSA+PSBMQVNUX0ZSQU1FICYmIG12X3JlZl9mcmFt
ZSA8IE1BWF9SRUZfRlJBTUVTKTsKKyAgcmV0dXJuIG12X3JlZl9mcmFtZSAtIDE7Cit9CisKIC8v
IFRoaXMgc3RydWN0dXJlIG5vdyByZWxhdGVzIHRvIDh4OCBibG9jayByZWdpb25zLgogdHlwZWRl
ZiBzdHJ1Y3QgTU9ERV9JTkZPIHsKICAgLy8gQ29tbW9uIGZvciBib3RoIElOVEVSIGFuZCBJTlRS
QSBibG9ja3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlfb255eGNfaW50
LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24vdnA5X29ueXhjX2ludC5oCmluZGV4IGYzOTQyYThm
MDcwZjY1MTFlYzE5MjQ3MjU0OTk2YjZiYTBkNjI3ZjMuLjFjZmMxMmY2ZmExMTUzZWUyMTI5YzE4
MTEyNWMzYmVkOGE3OTIyNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2NvbW1vbi92cDlf
b255eGNfaW50LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3ZwOV9vbnl4Y19pbnQuaApA
QCAtNjksNyArNjksMTYgQEAgdHlwZWRlZiBzdHJ1Y3QgewogICBpbnQgbWlfcm93czsKICAgaW50
IG1pX2NvbHM7CiAgIHVpbnQ4X3QgcmVsZWFzZWQ7Ci0gIGludCBmcmFtZV9pbmRleDsKKworICAv
LyBOb3RlIHRoYXQgZnJhbWVfaW5kZXgvZnJhbWVfY29kaW5nX2luZGV4IGFyZSBvbmx5IHNldCBi
eSBzZXRfZnJhbWVfaW5kZXgoKQorICAvLyBvbiB0aGUgZW5jb2RlciBzaWRlLgorCisgIC8vIFRP
RE8oYW5naWViaXJkKTogU2V0IGZyYW1lX2luZGV4L2ZyYW1lX2NvZGluZ19pbmRleCBvbiB0aGUg
ZGVjb2RlciBzaWRlCisgIC8vIHByb3Blcmx5LgorICBpbnQgZnJhbWVfaW5kZXg7ICAgICAgICAg
Ly8gRGlzcGxheSBvcmRlciBpbiB0aGUgdmlkZW8sIGl0J3MgZXF1aXZhbGVudCB0byB0aGUKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHNob3dfaWR4IGRlZmluZWQgaW4gRW5jb2RlRnJh
bWVJbmZvLgorICBpbnQgZnJhbWVfY29kaW5nX2luZGV4OyAgLy8gVGhlIGNvZGluZyBvcmRlciAo
c3RhcnRpbmcgZnJvbSB6ZXJvKSBvZiB0aGlzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAv
LyBmcmFtZS4KICAgdnB4X2NvZGVjX2ZyYW1lX2J1ZmZlcl90IHJhd19mcmFtZV9idWZmZXI7CiAg
IFlWMTJfQlVGRkVSX0NPTkZJRyBidWY7CiB9IFJlZkNudEJ1ZmZlcjsKQEAgLTIyNiw3ICsyMzUs
MTQgQEAgdHlwZWRlZiBzdHJ1Y3QgVlA5Q29tbW9uIHsKICAgdW5zaWduZWQgaW50IGZyYW1lX2Nv
bnRleHRfaWR4OyAvKiBDb250ZXh0IHRvIHVzZS91cGRhdGUgKi8KICAgRlJBTUVfQ09VTlRTIGNv
dW50czsKIAorICAvLyBUT0RPKGFuZ2llYmlyZCk6IGN1cnJlbnRfdmlkZW9fZnJhbWUvY3VycmVu
dF9mcmFtZV9jb2RpbmdfaW5kZXggaW50byBhCisgIC8vIHN0cnVjdHVyZQogICB1bnNpZ25lZCBp
bnQgY3VycmVudF92aWRlb19mcmFtZTsKKyAgLy8gRWFjaCBzaG93IG9yIG5vIHNob3cgZnJhbWUg
aXMgYXNzaWduZWQgd2l0aCBhIGNvZGluZyBpbmRleCBiYXNlZCBvbiBpdHMKKyAgLy8gY29kaW5n
IG9yZGVyIChzdGFydGluZyBmcm9tIHplcm8pLgorCisgIC8vIEN1cnJlbnQgZnJhbWUncyBjb2Rp
bmcgaW5kZXguCisgIGludCBjdXJyZW50X2ZyYW1lX2NvZGluZ19pbmRleDsKICAgQklUU1RSRUFN
X1BST0ZJTEUgcHJvZmlsZTsKIAogICAvLyBWUFhfQklUU184IGluIHByb2ZpbGUgMCBvciAxLCBW
UFhfQklUU18xMCBvciBWUFhfQklUU18xMiBpbiBwcm9maWxlIDIgb3IgMy4KQEAgLTI1NCw2ICsy
NzAsMjAgQEAgdHlwZWRlZiBzdHJ1Y3QgVlA5Q29tbW9uIHsKICAgaW50IGxmX3JvdzsKIH0gVlA5
X0NPTU1PTjsKIAorc3RhdGljIElOTElORSB2b2lkIGluaXRfZnJhbWVfaW5kZXhlcyhWUDlfQ09N
TU9OICpjbSkgeworICBjbS0+Y3VycmVudF92aWRlb19mcmFtZSA9IDA7CisgIGNtLT5jdXJyZW50
X2ZyYW1lX2NvZGluZ19pbmRleCA9IDA7Cit9CisKK3N0YXRpYyBJTkxJTkUgdm9pZCB1cGRhdGVf
ZnJhbWVfaW5kZXhlcyhWUDlfQ09NTU9OICpjbSwgaW50IHNob3dfZnJhbWUpIHsKKyAgaWYgKHNo
b3dfZnJhbWUpIHsKKyAgICAvLyBEb24ndCBpbmNyZW1lbnQgZnJhbWUgY291bnRlcnMgaWYgdGhp
cyB3YXMgYW4gYWx0cmVmIGJ1ZmZlcgorICAgIC8vIHVwZGF0ZSBub3QgYSByZWFsIGZyYW1lCisg
ICAgKytjbS0+Y3VycmVudF92aWRlb19mcmFtZTsKKyAgfQorICArK2NtLT5jdXJyZW50X2ZyYW1l
X2NvZGluZ19pbmRleDsKK30KKwogdHlwZWRlZiBzdHJ1Y3QgewogICBpbnQgZnJhbWVfd2lkdGg7
CiAgIGludCBmcmFtZV9oZWlnaHQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9jb21tb24v
eDg2L3ZwOV9tZnFlX3NzZTIuYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvY29tbW9uL3g4Ni92cDlfbWZx
ZV9zc2UyLmFzbQppbmRleCBjYTA4OTdhYjlmZWJiMmU2OTlmZDk2OTZiYmY1NDVmNjViZjNhNGM1
Li5hZTdjOTRlYTNmZjU3ZTk4ODQ5YTI2ZjRkY2ZhYTZjMmJjNjNjZWVhIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9jb21tb24veDg2L3ZwOV9tZnFlX3NzZTIuYXNtCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2NvbW1vbi94ODYvdnA5X21mcWVfc3NlMi5hc20KQEAgLTIyLDcgKzIyLDcgQEAgU0VD
VElPTiAudGV4dAogOyAgICBpbnQgICAgICAgICAgICBkc3Rfc3RyaWRlLAogOyAgICBpbnQgICAg
ICAgICAgICBzcmNfd2VpZ2h0CiA7KQotZ2xvYmFsIHN5bSh2cDlfZmlsdGVyX2J5X3dlaWdodDE2
eDE2X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cDlfZmlsdGVyX2J5X3dlaWdodDE2eDE2X3Nz
ZTIpCiBzeW0odnA5X2ZpbHRlcl9ieV93ZWlnaHQxNngxNl9zc2UyKToKICAgICBwdXNoICAgICAg
ICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMTAwLDcgKzEwMCw3IEBAIHN5bSh2
cDlfZmlsdGVyX2J5X3dlaWdodDE2eDE2X3NzZTIpOgogOyAgICBpbnQgICAgICAgICAgICBkc3Rf
c3RyaWRlLAogOyAgICBpbnQgICAgICAgICAgICBzcmNfd2VpZ2h0CiA7KQotZ2xvYmFsIHN5bSh2
cDlfZmlsdGVyX2J5X3dlaWdodDh4OF9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnA5X2ZpbHRl
cl9ieV93ZWlnaHQ4eDhfc3NlMikKIHN5bSh2cDlfZmlsdGVyX2J5X3dlaWdodDh4OF9zc2UyKToK
ICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMTY4LDcg
KzE2OCw3IEBAIHN5bSh2cDlfZmlsdGVyX2J5X3dlaWdodDh4OF9zc2UyKToKIDsgICAgdW5zaWdu
ZWQgaW50ICAqdmFyaWFuY2UsICAgICAgNAogOyAgICB1bnNpZ25lZCBpbnQgICpzYWQsICAgICAg
ICAgICA1CiA7KQotZ2xvYmFsIHN5bSh2cDlfdmFyaWFuY2VfYW5kX3NhZF8xNngxNl9zc2UyKSBQ
UklWQVRFCitnbG9iYWxzeW0odnA5X3ZhcmlhbmNlX2FuZF9zYWRfMTZ4MTZfc3NlMikKIHN5bSh2
cDlfdmFyaWFuY2VfYW5kX3NhZF8xNngxNl9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAg
ICBtb3YgICAgICAgICByYnAsIHJzcApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rl
ci92cDlfZGVjb2Rlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZGVjb2Rlci92cDlfZGVjb2Rlci5jCmlu
ZGV4IDBhZWQzZDcxN2M1NjMwZmEyMDcwNjM1ZTY5YTJmZGJiNTVlODU3YzIuLjdkYjhlZDcyZDUx
MTRlMjkyMjlmYWZmM2FhMmNmOGQzOTQ4MWMwYTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2RlY29kZXIvdnA5X2RlY29kZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9kZWNvZGVyL3ZwOV9k
ZWNvZGVyLmMKQEAgLTE1Myw2ICsxNTMsMTEgQEAgc3RhdGljIGludCB2cDlfZGVjX2FsbG9jX21p
KFZQOV9DT01NT04gKmNtLCBpbnQgbWlfc2l6ZSkgewogfQogCiBzdGF0aWMgdm9pZCB2cDlfZGVj
X2ZyZWVfbWkoVlA5X0NPTU1PTiAqY20pIHsKKyNpZiBDT05GSUdfVlA5X1BPU1RQUk9DCisgIC8v
IE1GUUUgYWxsb2NhdGVzIGFuIGFkZGl0aW9uYWwgbWlwIGFuZCBzd2FwcyBpdCB3aXRoIGNtLT5t
aXAuCisgIHZweF9mcmVlKGNtLT5wb3N0cHJvY19zdGF0ZS5wcmV2X21pcCk7CisgIGNtLT5wb3N0
cHJvY19zdGF0ZS5wcmV2X21pcCA9IE5VTEw7CisjZW5kaWYKICAgdnB4X2ZyZWUoY20tPm1pcCk7
CiAgIGNtLT5taXAgPSBOVUxMOwogICB2cHhfZnJlZShjbS0+bWlfZ3JpZF9iYXNlKTsKQEAgLTE4
OCw3ICsxOTMsNyBAQCBWUDlEZWNvZGVyICp2cDlfZGVjb2Rlcl9jcmVhdGUoQnVmZmVyUG9vbCAq
Y29uc3QgcG9vbCkgewogICBtZW1zZXQoJmNtLT5yZWZfZnJhbWVfbWFwLCAtMSwgc2l6ZW9mKGNt
LT5yZWZfZnJhbWVfbWFwKSk7CiAgIG1lbXNldCgmY20tPm5leHRfcmVmX2ZyYW1lX21hcCwgLTEs
IHNpemVvZihjbS0+bmV4dF9yZWZfZnJhbWVfbWFwKSk7CiAKLSAgY20tPmN1cnJlbnRfdmlkZW9f
ZnJhbWUgPSAwOworICBpbml0X2ZyYW1lX2luZGV4ZXMoY20pOwogICBwYmktPnJlYWR5X2Zvcl9u
ZXdfZGF0YSA9IDE7CiAgIHBiaS0+Y29tbW9uLmJ1ZmZlcl9wb29sID0gcG9vbDsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfdmFyaWFuY2UuYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2FxX3ZhcmlhbmNlLmMKaW5kZXggMWY5Y2UyMzU0Y2UzMWNlOWM1
ZjkyN2U1NjU4NjM5NTc0NzQzZmZlMy4uOWU1ZjNiZmIyODA4YzllZDJlZTYyMTQwNTAwOGQ5Zjkx
M2E2YTUyNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfYXFfdmFyaWFu
Y2UuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9hcV92YXJpYW5jZS5jCkBAIC0x
ODYsNiArMTg2LDE3IEBAIGRvdWJsZSB2cDlfbG9nX2Jsb2NrX3ZhcihWUDlfQ09NUCAqY3BpLCBN
QUNST0JMT0NLICp4LCBCTE9DS19TSVpFIGJzKSB7CiAgIHJldHVybiBsb2codmFyICsgMS4wKTsK
IH0KIAorI2RlZmluZSBERUZBVUxUX0VfTUlEUE9JTlQgMTAuMAorc3RhdGljIGludCBzY2FsZV9i
bG9ja19lbmVyZ3koVlA5X0NPTVAgKmNwaSwgdW5zaWduZWQgaW50IGJsb2NrX3ZhcikgeworICBk
b3VibGUgZW5lcmd5OworICBkb3VibGUgZW5lcmd5X21pZHBvaW50OworICBlbmVyZ3lfbWlkcG9p
bnQgPQorICAgICAgKGNwaS0+b3hjZi5wYXNzID09IDIpID8gY3BpLT50d29wYXNzLm1iX2F2X2Vu
ZXJneSA6IERFRkFVTFRfRV9NSURQT0lOVDsKKyAgZW5lcmd5ID0gbG9nKGJsb2NrX3ZhciArIDEu
MCkgLSBlbmVyZ3lfbWlkcG9pbnQ7CisgIHJldHVybiBjbGFtcCgoaW50KXJvdW5kKGVuZXJneSks
IEVORVJHWV9NSU4sIEVORVJHWV9NQVgpOworfQorI3VuZGVmIERFRkFVTFRfRV9NSURQT0lOVAor
CiAvLyBHZXQgdGhlIHJhbmdlIG9mIHN1YiBibG9jayBlbmVyZ3kgdmFsdWVzOwogdm9pZCB2cDlf
Z2V0X3N1Yl9ibG9ja19lbmVyZ3koVlA5X0NPTVAgKmNwaSwgTUFDUk9CTE9DSyAqbWIsIGludCBt
aV9yb3csCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbWlfY29sLCBCTE9DS19T
SVpFIGJzaXplLCBpbnQgKm1pbl9lLApAQCAtMjAyLDMxICsyMTMsMzUgQEAgdm9pZCB2cDlfZ2V0
X3N1Yl9ibG9ja19lbmVyZ3koVlA5X0NPTVAgKmNwaSwgTUFDUk9CTE9DSyAqbWIsIGludCBtaV9y
b3csCiAgICAgKm1pbl9lID0gdnA5X2Jsb2NrX2VuZXJneShjcGksIG1iLCBic2l6ZSk7CiAgICAg
Km1heF9lID0gKm1pbl9lOwogICB9IGVsc2UgewotICAgIGludCBlbmVyZ3k7Ci0gICAgKm1pbl9l
ID0gRU5FUkdZX01BWDsKLSAgICAqbWF4X2UgPSBFTkVSR1lfTUlOOworICAgIHVuc2lnbmVkIGlu
dCB2YXI7CisgICAgLy8gQmVjYXVzZSBzY2FsZV9ibG9ja19lbmVyZ3kgaXMgbm9uLWRlY3JlYXNp
bmcsIHdlIGNhbiBmaW5kIHRoZSBtaW4vbWF4CisgICAgLy8gYmxvY2sgdmFyaWFuY2UgYW5kIHNj
YWxlIGFmdGVyd2FyZHMuIFRoaXMgYXZvaWRzIGEgY29zdGx5IHNjYWxpbmcgYXQKKyAgICAvLyBl
dmVyeSBpdGVyYXRpb24uCisgICAgdW5zaWduZWQgaW50IG1pbl92YXIgPSBVSU5UX01BWDsKKyAg
ICB1bnNpZ25lZCBpbnQgbWF4X3ZhciA9IDA7CiAKICAgICBmb3IgKHkgPSAwOyB5IDwgeW1pczsg
Kyt5KSB7CiAgICAgICBmb3IgKHggPSAwOyB4IDwgeG1pczsgKyt4KSB7CiAgICAgICAgIHZwOV9z
ZXR1cF9zcmNfcGxhbmVzKG1iLCBjcGktPlNvdXJjZSwgbWlfcm93ICsgeSwgbWlfY29sICsgeCk7
Ci0gICAgICAgIGVuZXJneSA9IHZwOV9ibG9ja19lbmVyZ3koY3BpLCBtYiwgQkxPQ0tfOFg4KTsK
LSAgICAgICAgKm1pbl9lID0gVlBYTUlOKCptaW5fZSwgZW5lcmd5KTsKLSAgICAgICAgKm1heF9l
ID0gVlBYTUFYKCptYXhfZSwgZW5lcmd5KTsKKyAgICAgICAgdnB4X2NsZWFyX3N5c3RlbV9zdGF0
ZSgpOworICAgICAgICB2YXIgPSBibG9ja192YXJpYW5jZShjcGksIG1iLCBCTE9DS184WDgpOwor
ICAgICAgICB2cHhfY2xlYXJfc3lzdGVtX3N0YXRlKCk7CisgICAgICAgIG1pbl92YXIgPSBWUFhN
SU4obWluX3ZhciwgdmFyKTsKKyAgICAgICAgbWF4X3ZhciA9IFZQWE1BWChtYXhfdmFyLCB2YXIp
OwogICAgICAgfQogICAgIH0KKyAgICAqbWluX2UgPSBzY2FsZV9ibG9ja19lbmVyZ3koY3BpLCBt
aW5fdmFyKTsKKyAgICAqbWF4X2UgPSBzY2FsZV9ibG9ja19lbmVyZ3koY3BpLCBtYXhfdmFyKTsK
ICAgfQogCiAgIC8vIFJlLWluc3RhdGUgc291cmNlIHBvaW50ZXJzIGJhY2sgdG8gd2hhdCB0aGV5
IHNob3VsZCBoYXZlIGJlZW4gb24gZW50cnkuCiAgIHZwOV9zZXR1cF9zcmNfcGxhbmVzKG1iLCBj
cGktPlNvdXJjZSwgbWlfcm93LCBtaV9jb2wpOwogfQogCi0jZGVmaW5lIERFRkFVTFRfRV9NSURQ
T0lOVCAxMC4wCiBpbnQgdnA5X2Jsb2NrX2VuZXJneShWUDlfQ09NUCAqY3BpLCBNQUNST0JMT0NL
ICp4LCBCTE9DS19TSVpFIGJzKSB7Ci0gIGRvdWJsZSBlbmVyZ3k7Ci0gIGRvdWJsZSBlbmVyZ3lf
bWlkcG9pbnQ7CisgIHVuc2lnbmVkIGludCB2YXI7CiAgIHZweF9jbGVhcl9zeXN0ZW1fc3RhdGUo
KTsKLSAgZW5lcmd5X21pZHBvaW50ID0KLSAgICAgIChjcGktPm94Y2YucGFzcyA9PSAyKSA/IGNw
aS0+dHdvcGFzcy5tYl9hdl9lbmVyZ3kgOiBERUZBVUxUX0VfTUlEUE9JTlQ7Ci0gIGVuZXJneSA9
IHZwOV9sb2dfYmxvY2tfdmFyKGNwaSwgeCwgYnMpIC0gZW5lcmd5X21pZHBvaW50OwotICByZXR1
cm4gY2xhbXAoKGludClyb3VuZChlbmVyZ3kpLCBFTkVSR1lfTUlOLCBFTkVSR1lfTUFYKTsKKyAg
dmFyID0gYmxvY2tfdmFyaWFuY2UoY3BpLCB4LCBicyk7CisgIHZweF9jbGVhcl9zeXN0ZW1fc3Rh
dGUoKTsKKyAgcmV0dXJuIHNjYWxlX2Jsb2NrX2VuZXJneShjcGksIHZhcik7CiB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVmcmFtZS5jIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfZW5jb2RlZnJhbWUuYwppbmRleCAxM2Y5YTFmYmQyNTIyNDQ4Y2Rj
ZDljM2E3ZGU0YmU0NGU2YzdiNTExLi5kY2Q2NDc2NTgxZWYxY2M2YjFmNDYxZjI5NjBhMjA4ZGFi
ZTc0N2ExIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVmcmFt
ZS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZWZyYW1lLmMKQEAgLTM3
NjYsOSArMzc2Niw2IEBAIHN0YXRpYyBpbnQgd2llbmVyX3Zhcl9zZWdtZW50KFZQOV9DT01QICpj
cGksIEJMT0NLX1NJWkUgYnNpemUsIGludCBtaV9yb3csCiBzdGF0aWMgaW50IGdldF9yZG11bHRf
ZGVsdGEoVlA5X0NPTVAgKmNwaSwgQkxPQ0tfU0laRSBic2l6ZSwgaW50IG1pX3JvdywKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbnQgbWlfY29sLCBpbnQgb3JpZ19yZG11bHQpIHsKICAg
Y29uc3QgaW50IGdmX2dyb3VwX2luZGV4ID0gY3BpLT50d29wYXNzLmdmX2dyb3VwLmluZGV4Owot
ICBUcGxEZXBGcmFtZSAqdHBsX2ZyYW1lID0gJmNwaS0+dHBsX3N0YXRzW2dmX2dyb3VwX2luZGV4
XTsKLSAgVHBsRGVwU3RhdHMgKnRwbF9zdGF0cyA9IHRwbF9mcmFtZS0+dHBsX3N0YXRzX3B0cjsK
LSAgaW50IHRwbF9zdHJpZGUgPSB0cGxfZnJhbWUtPnN0cmlkZTsKICAgaW50NjRfdCBpbnRyYV9j
b3N0ID0gMDsKICAgaW50NjRfdCBtY19kZXBfY29zdCA9IDA7CiAgIGludCBtaV93aWRlID0gbnVt
Xzh4OF9ibG9ja3Nfd2lkZV9sb29rdXBbYnNpemVdOwpAQCAtMzc3OSwxMiArMzc3NiwxOSBAQCBz
dGF0aWMgaW50IGdldF9yZG11bHRfZGVsdGEoVlA5X0NPTVAgKmNwaSwgQkxPQ0tfU0laRSBic2l6
ZSwgaW50IG1pX3JvdywKICAgaW50IGNvdW50ID0gMDsKICAgZG91YmxlIHIwLCByaywgYmV0YTsK
IAorICBUcGxEZXBGcmFtZSAqdHBsX2ZyYW1lOworICBUcGxEZXBTdGF0cyAqdHBsX3N0YXRzOwor
ICBpbnQgdHBsX3N0cmlkZTsKKworICBpZiAoZ2ZfZ3JvdXBfaW5kZXggPj0gTUFYX0FSRl9HT1Bf
U0laRSkgcmV0dXJuIG9yaWdfcmRtdWx0OworICB0cGxfZnJhbWUgPSAmY3BpLT50cGxfc3RhdHNb
Z2ZfZ3JvdXBfaW5kZXhdOworCiAgIGlmICh0cGxfZnJhbWUtPmlzX3ZhbGlkID09IDApIHJldHVy
biBvcmlnX3JkbXVsdDsKKyAgdHBsX3N0YXRzID0gdHBsX2ZyYW1lLT50cGxfc3RhdHNfcHRyOwor
ICB0cGxfc3RyaWRlID0gdHBsX2ZyYW1lLT5zdHJpZGU7CiAKICAgaWYgKGNwaS0+dHdvcGFzcy5n
Zl9ncm91cC5sYXllcl9kZXB0aFtnZl9ncm91cF9pbmRleF0gPiAxKSByZXR1cm4gb3JpZ19yZG11
bHQ7CiAKLSAgaWYgKGdmX2dyb3VwX2luZGV4ID49IE1BWF9BUkZfR09QX1NJWkUpIHJldHVybiBv
cmlnX3JkbXVsdDsKLQogICBmb3IgKHJvdyA9IG1pX3Jvdzsgcm93IDwgbWlfcm93ICsgbWlfaGln
aDsgKytyb3cpIHsKICAgICBmb3IgKGNvbCA9IG1pX2NvbDsgY29sIDwgbWlfY29sICsgbWlfd2lk
ZTsgKytjb2wpIHsKICAgICAgIFRwbERlcFN0YXRzICp0aGlzX3N0YXRzID0gJnRwbF9zdGF0c1ty
b3cgKiB0cGxfc3RyaWRlICsgY29sXTsKQEAgLTUwODYsOCArNTA5MCw4IEBAIHN0YXRpYyB2b2lk
IG5vbnJkX3BpY2tfcGFydGl0aW9uKFZQOV9DT01QICpjcGksIFRocmVhZERhdGEgKnRkLAogCiAg
ICh2b2lkKSp0cF9vcmlnOwogCi0gIC8vIEF2b2lkIGNoZWNraW5nIGZvciByZWN0YW5ndWxhciBw
YXJ0aXRpb25zIGZvciBzcGVlZCA+PSA2LgotICBpZiAoY3BpLT5veGNmLnNwZWVkID49IDYpIGRv
X3JlY3QgPSAwOworICAvLyBBdm9pZCBjaGVja2luZyBmb3IgcmVjdGFuZ3VsYXIgcGFydGl0aW9u
cyBmb3Igc3BlZWQgPj0gNS4KKyAgaWYgKGNwaS0+b3hjZi5zcGVlZCA+PSA1KSBkb19yZWN0ID0g
MDsKIAogICBhc3NlcnQobnVtXzh4OF9ibG9ja3Nfd2lkZV9sb29rdXBbYnNpemVdID09CiAgICAg
ICAgICBudW1fOHg4X2Jsb2Nrc19oaWdoX2xvb2t1cFtic2l6ZV0pOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2Rlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfZW5jb2Rlci5jCmluZGV4IGJkNjRjZmVhYmNiYzE1YmFkMDhiY2Q4MWRjOTVjOTYxMzYw
ZGMxZjcuLjZhMjFhMWMxODMzZDM2NDhiNGY2MTE1MmExNDYwNWZlZjIyMDMxNzQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuYworKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVyLmMKQEAgLTEwMjQsNiArMTAyNCw4IEBAIHN0YXRpYyB2
b2lkIGRlYWxsb2NfY29tcHJlc3Nvcl9kYXRhKFZQOV9DT01QICpjcGkpIHsKICNpZiBDT05GSUdf
UkFURV9DVFJMCiAgIGZyZWVfcGFydGl0aW9uX2luZm8oY3BpKTsKICAgZnJlZV9tb3Rpb25fdmVj
dG9yX2luZm8oY3BpKTsKKyAgZnJlZV9mcF9tb3Rpb25fdmVjdG9yX2luZm8oY3BpKTsKKyAgZnJl
ZV90cGxfc3RhdHNfaW5mbyhjcGkpOwogI2VuZGlmCiAKICAgdnA5X2ZyZWVfcmVmX2ZyYW1lX2J1
ZmZlcnMoY20tPmJ1ZmZlcl9wb29sKTsKQEAgLTE1MjMsOCArMTUyNSwyOSBAQCBzdGF0aWMgdm9p
ZCBpbml0X2NvbmZpZyhzdHJ1Y3QgVlA5X0NPTVAgKmNwaSwgY29uc3QgVlA5RW5jb2RlckNvbmZp
ZyAqb3hjZikgewogICB2cDlfbm9pc2VfZXN0aW1hdGVfaW5pdCgmY3BpLT5ub2lzZV9lc3RpbWF0
ZSwgY20tPndpZHRoLCBjbS0+aGVpZ2h0KTsKIH0KIAotc3RhdGljIHZvaWQgc2V0X3JjX2J1ZmZl
cl9zaXplcyhSQVRFX0NPTlRST0wgKnJjLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBWUDlFbmNvZGVyQ29uZmlnICpveGNmKSB7Cit2b2lkIHZwOV9jaGVja19yZXNldF9y
Y19mbGFnKFZQOV9DT01QICpjcGkpIHsKKyAgUkFURV9DT05UUk9MICpyYyA9ICZjcGktPnJjOwor
CisgIGlmIChjcGktPmNvbW1vbi5jdXJyZW50X3ZpZGVvX2ZyYW1lID4KKyAgICAgICh1bnNpZ25l
ZCBpbnQpY3BpLT5zdmMubnVtYmVyX3NwYXRpYWxfbGF5ZXJzKSB7CisgICAgaWYgKGNwaS0+dXNl
X3N2YykgeworICAgICAgdnA5X3N2Y19jaGVja19yZXNldF9sYXllcl9yY19mbGFnKGNwaSk7Cisg
ICAgfSBlbHNlIHsKKyAgICAgIGlmIChyYy0+YXZnX2ZyYW1lX2JhbmR3aWR0aCA+ICgzICogcmMt
Pmxhc3RfYXZnX2ZyYW1lX2JhbmR3aWR0aCA+PiAxKSB8fAorICAgICAgICAgIHJjLT5hdmdfZnJh
bWVfYmFuZHdpZHRoIDwgKHJjLT5sYXN0X2F2Z19mcmFtZV9iYW5kd2lkdGggPj4gMSkpIHsKKyAg
ICAgICAgcmMtPnJjXzFfZnJhbWUgPSAwOworICAgICAgICByYy0+cmNfMl9mcmFtZSA9IDA7Cisg
ICAgICAgIHJjLT5iaXRzX29mZl90YXJnZXQgPSByYy0+b3B0aW1hbF9idWZmZXJfbGV2ZWw7Cisg
ICAgICAgIHJjLT5idWZmZXJfbGV2ZWwgPSByYy0+b3B0aW1hbF9idWZmZXJfbGV2ZWw7CisgICAg
ICB9CisgICAgfQorICB9Cit9CisKK3ZvaWQgdnA5X3NldF9yY19idWZmZXJfc2l6ZXMoVlA5X0NP
TVAgKmNwaSkgeworICBSQVRFX0NPTlRST0wgKnJjID0gJmNwaS0+cmM7CisgIGNvbnN0IFZQOUVu
Y29kZXJDb25maWcgKm94Y2YgPSAmY3BpLT5veGNmOworCiAgIGNvbnN0IGludDY0X3QgYmFuZHdp
ZHRoID0gb3hjZi0+dGFyZ2V0X2JhbmR3aWR0aDsKICAgY29uc3QgaW50NjRfdCBzdGFydGluZyA9
IG94Y2YtPnN0YXJ0aW5nX2J1ZmZlcl9sZXZlbF9tczsKICAgY29uc3QgaW50NjRfdCBvcHRpbWFs
ID0gb3hjZi0+b3B0aW1hbF9idWZmZXJfbGV2ZWxfbXM7CkBAIC0xNTM1LDYgKzE1NTgsMTEgQEAg
c3RhdGljIHZvaWQgc2V0X3JjX2J1ZmZlcl9zaXplcyhSQVRFX0NPTlRST0wgKnJjLAogICAgICAg
KG9wdGltYWwgPT0gMCkgPyBiYW5kd2lkdGggLyA4IDogb3B0aW1hbCAqIGJhbmR3aWR0aCAvIDEw
MDA7CiAgIHJjLT5tYXhpbXVtX2J1ZmZlcl9zaXplID0KICAgICAgIChtYXhpbXVtID09IDApID8g
YmFuZHdpZHRoIC8gOCA6IG1heGltdW0gKiBiYW5kd2lkdGggLyAxMDAwOworCisgIC8vIFVuZGVy
IGEgY29uZmlndXJhdGlvbiBjaGFuZ2UsIHdoZXJlIG1heGltdW1fYnVmZmVyX3NpemUgbWF5IGNo
YW5nZSwKKyAgLy8ga2VlcCBidWZmZXIgbGV2ZWwgY2xpcHBlZCB0byB0aGUgbWF4aW11bSBhbGxv
d2VkIGJ1ZmZlciBzaXplLgorICByYy0+Yml0c19vZmZfdGFyZ2V0ID0gVlBYTUlOKHJjLT5iaXRz
X29mZl90YXJnZXQsIHJjLT5tYXhpbXVtX2J1ZmZlcl9zaXplKTsKKyAgcmMtPmJ1ZmZlcl9sZXZl
bCA9IFZQWE1JTihyYy0+YnVmZmVyX2xldmVsLCByYy0+bWF4aW11bV9idWZmZXJfc2l6ZSk7CiB9
CiAKICNpZiBDT05GSUdfVlA5X0hJR0hCSVRERVBUSApAQCAtMTk5MSwxMiArMjAxOSw3IEBAIHZv
aWQgdnA5X2NoYW5nZV9jb25maWcoc3RydWN0IFZQOV9DT01QICpjcGksIGNvbnN0IFZQOUVuY29k
ZXJDb25maWcgKm94Y2YpIHsKICAgfQogICBjcGktPmVuY29kZV9icmVha291dCA9IGNwaS0+b3hj
Zi5lbmNvZGVfYnJlYWtvdXQ7CiAKLSAgc2V0X3JjX2J1ZmZlcl9zaXplcyhyYywgJmNwaS0+b3hj
Zik7Ci0KLSAgLy8gVW5kZXIgYSBjb25maWd1cmF0aW9uIGNoYW5nZSwgd2hlcmUgbWF4aW11bV9i
dWZmZXJfc2l6ZSBtYXkgY2hhbmdlLAotICAvLyBrZWVwIGJ1ZmZlciBsZXZlbCBjbGlwcGVkIHRv
IHRoZSBtYXhpbXVtIGFsbG93ZWQgYnVmZmVyIHNpemUuCi0gIHJjLT5iaXRzX29mZl90YXJnZXQg
PSBWUFhNSU4ocmMtPmJpdHNfb2ZmX3RhcmdldCwgcmMtPm1heGltdW1fYnVmZmVyX3NpemUpOwot
ICByYy0+YnVmZmVyX2xldmVsID0gVlBYTUlOKHJjLT5idWZmZXJfbGV2ZWwsIHJjLT5tYXhpbXVt
X2J1ZmZlcl9zaXplKTsKKyAgdnA5X3NldF9yY19idWZmZXJfc2l6ZXMoY3BpKTsKIAogICAvLyBT
ZXQgdXAgZnJhbWUgcmF0ZSBhbmQgcmVsYXRlZCBwYXJhbWV0ZXJzIHJhdGUgY29udHJvbCB2YWx1
ZXMuCiAgIHZwOV9uZXdfZnJhbWVyYXRlKGNwaSwgY3BpLT5mcmFtZXJhdGUpOwpAQCAtMjA1Nywy
MyArMjA4MCw3IEBAIHZvaWQgdnA5X2NoYW5nZV9jb25maWcoc3RydWN0IFZQOV9DT01QICpjcGks
IGNvbnN0IFZQOUVuY29kZXJDb25maWcgKm94Y2YpIHsKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAoaW50KWNwaS0+b3hjZi50YXJnZXRfYmFuZHdpZHRoKTsKICAg
fQogCi0gIC8vIENoZWNrIGZvciByZXNldHRpbmcgdGhlIHJjIGZsYWdzIChyY18xX2ZyYW1lLCBy
Y18yX2ZyYW1lKSBpZiB0aGUKLSAgLy8gY29uZmlndXJhdGlvbiBjaGFuZ2UgaGFzIGEgbGFyZ2Ug
Y2hhbmdlIGluIGF2Z19mcmFtZV9iYW5kd2lkdGguCi0gIC8vIEZvciBTVkMgY2hlY2sgZm9yIHJl
c2V0dGluZyBiYXNlZCBvbiBzcGF0aWFsIGxheWVyIGF2ZXJhZ2UgYmFuZHdpZHRoLgotICAvLyBB
bHNvIHJlc2V0IGJ1ZmZlciBsZXZlbCB0byBvcHRpbWFsIGxldmVsLgotICBpZiAoY20tPmN1cnJl
bnRfdmlkZW9fZnJhbWUgPiAodW5zaWduZWQgaW50KWNwaS0+c3ZjLm51bWJlcl9zcGF0aWFsX2xh
eWVycykgewotICAgIGlmIChjcGktPnVzZV9zdmMpIHsKLSAgICAgIHZwOV9zdmNfY2hlY2tfcmVz
ZXRfbGF5ZXJfcmNfZmxhZyhjcGkpOwotICAgIH0gZWxzZSB7Ci0gICAgICBpZiAocmMtPmF2Z19m
cmFtZV9iYW5kd2lkdGggPiAoMyAqIHJjLT5sYXN0X2F2Z19mcmFtZV9iYW5kd2lkdGggPj4gMSkg
fHwKLSAgICAgICAgICByYy0+YXZnX2ZyYW1lX2JhbmR3aWR0aCA8IChyYy0+bGFzdF9hdmdfZnJh
bWVfYmFuZHdpZHRoID4+IDEpKSB7Ci0gICAgICAgIHJjLT5yY18xX2ZyYW1lID0gMDsKLSAgICAg
ICAgcmMtPnJjXzJfZnJhbWUgPSAwOwotICAgICAgICByYy0+Yml0c19vZmZfdGFyZ2V0ID0gcmMt
Pm9wdGltYWxfYnVmZmVyX2xldmVsOwotICAgICAgICByYy0+YnVmZmVyX2xldmVsID0gcmMtPm9w
dGltYWxfYnVmZmVyX2xldmVsOwotICAgICAgfQotICAgIH0KLSAgfQorICB2cDlfY2hlY2tfcmVz
ZXRfcmNfZmxhZyhjcGkpOwogCiAgIGNwaS0+YWx0X3JlZl9zb3VyY2UgPSBOVUxMOwogICByYy0+
aXNfc3JjX2ZyYW1lX2FsdF9yZWYgPSAwOwpAQCAtMjMxMSw3ICsyMzE4LDcgQEAgVlA5X0NPTVAg
KnZwOV9jcmVhdGVfY29tcHJlc3Nvcihjb25zdCBWUDlFbmNvZGVyQ29uZmlnICpveGNmLAogCiAg
IHZwOV9yY19pbml0KCZjcGktPm94Y2YsIG94Y2YtPnBhc3MsICZjcGktPnJjKTsKIAotICBjbS0+
Y3VycmVudF92aWRlb19mcmFtZSA9IDA7CisgIGluaXRfZnJhbWVfaW5kZXhlcyhjbSk7CiAgIGNw
aS0+cGFydGl0aW9uX3NlYXJjaF9za2lwcGFibGVfZnJhbWUgPSAwOwogICBjcGktPnRpbGVfZGF0
YSA9IE5VTEw7CiAKQEAgLTI0NTcsNiArMjQ2NCwxMyBAQCBWUDlfQ09NUCAqdnA5X2NyZWF0ZV9j
b21wcmVzc29yKGNvbnN0IFZQOUVuY29kZXJDb25maWcgKm94Y2YsCiAKICAgY3BpLT5hbGxvd19l
bmNvZGVfYnJlYWtvdXQgPSBFTkNPREVfQlJFQUtPVVRfRU5BQkxFRDsKIAorICB7CisgICAgdnB4
X2NvZGVjX2Vycl90IGNvZGVjX3N0YXR1cyA9IHZwOV9leHRyY19pbml0KCZjcGktPmV4dF9yYXRl
Y3RybCk7CisgICAgaWYgKGNvZGVjX3N0YXR1cyAhPSBWUFhfQ09ERUNfT0spIHsKKyAgICAgIHZw
eF9pbnRlcm5hbF9lcnJvcigmY20tPmVycm9yLCBjb2RlY19zdGF0dXMsICJ2cDlfZXh0cmNfaW5p
dCgpIGZhaWxlZCIpOworICAgIH0KKyAgfQorCiAjaWYgIUNPTkZJR19SRUFMVElNRV9PTkxZCiAg
IGlmIChveGNmLT5wYXNzID09IDEpIHsKICAgICB2cDlfaW5pdF9maXJzdF9wYXNzKGNwaSk7CkBA
IC0yNjU2LDYgKzI2NzAsOCBAQCBWUDlfQ09NUCAqdnA5X2NyZWF0ZV9jb21wcmVzc29yKGNvbnN0
IFZQOUVuY29kZXJDb25maWcgKm94Y2YsCiAgIGVuY29kZV9jb21tYW5kX2luaXQoJmNwaS0+ZW5j
b2RlX2NvbW1hbmQpOwogICBwYXJ0aXRpb25faW5mb19pbml0KGNwaSk7CiAgIG1vdGlvbl92ZWN0
b3JfaW5mb19pbml0KGNwaSk7CisgIGZwX21vdGlvbl92ZWN0b3JfaW5mb19pbml0KGNwaSk7Cisg
IHRwbF9zdGF0c19pbmZvX2luaXQoY3BpKTsKICNlbmRpZgogCiAgIHJldHVybiBjcGk7CkBAIC0y
ODI3LDYgKzI4NDMsOCBAQCB2b2lkIHZwOV9yZW1vdmVfY29tcHJlc3NvcihWUDlfQ09NUCAqY3Bp
KSB7CiAgIH0KICNlbmRpZgogCisgIHZwOV9leHRyY19kZWxldGUoJmNwaS0+ZXh0X3JhdGVjdHJs
KTsKKwogICB2cDlfcmVtb3ZlX2NvbW1vbihjbSk7CiAgIHZwOV9mcmVlX3JlZl9mcmFtZV9idWZm
ZXJzKGNtLT5idWZmZXJfcG9vbCk7CiAjaWYgQ09ORklHX1ZQOV9QT1NUUFJPQwpAQCAtMzMwOSw2
ICszMzI3LDEzIEBAIHN0YXRpYyB2b2lkIGxvb3BmaWx0ZXJfZnJhbWUoVlA5X0NPTVAgKmNwaSwg
VlA5X0NPTU1PTiAqY20pIHsKICAgICByZXR1cm47CiAgIH0KIAorICBpZiAoY3BpLT5sb29wZmls
dGVyX2N0cmwgPT0gTk9fTE9PUEZJTFRFUiB8fAorICAgICAgKCFpc19yZWZlcmVuY2VfZnJhbWUg
JiYgY3BpLT5sb29wZmlsdGVyX2N0cmwgPT0gTE9PUEZJTFRFUl9SRUZFUkVOQ0UpKSB7CisgICAg
bGYtPmZpbHRlcl9sZXZlbCA9IDA7CisgICAgdnB4X2V4dGVuZF9mcmFtZV9pbm5lcl9ib3JkZXJz
KGNtLT5mcmFtZV90b19zaG93KTsKKyAgICByZXR1cm47CisgIH0KKwogICBpZiAoeGQtPmxvc3Ns
ZXNzKSB7CiAgICAgbGYtPmZpbHRlcl9sZXZlbCA9IDA7CiAgICAgbGYtPmxhc3RfZmlsdF9sZXZl
bCA9IDA7CkBAIC0zNzQyLDE1ICszNzY3LDE5IEBAIHN0YXRpYyB2b2lkIHNldF9mcmFtZV9zaXpl
KFZQOV9DT01QICpjcGkpIHsKICAgfQogI2VuZGlmICAvLyAhQ09ORklHX1JFQUxUSU1FX09OTFkK
IAotICBpZiAob3hjZi0+cGFzcyA9PSAwICYmIG94Y2YtPnJjX21vZGUgPT0gVlBYX0NCUiAmJiAh
Y3BpLT51c2Vfc3ZjICYmCisgIGlmIChveGNmLT5wYXNzID09IDAgJiYgb3hjZi0+cmNfbW9kZSA9
PSBWUFhfQ0JSICYmCiAgICAgICBveGNmLT5yZXNpemVfbW9kZSA9PSBSRVNJWkVfRFlOQU1JQyAm
JiBjcGktPnJlc2l6ZV9wZW5kaW5nICE9IDApIHsKLSAgICBveGNmLT5zY2FsZWRfZnJhbWVfd2lk
dGggPQotICAgICAgICAob3hjZi0+d2lkdGggKiBjcGktPnJlc2l6ZV9zY2FsZV9udW0pIC8gY3Bp
LT5yZXNpemVfc2NhbGVfZGVuOwotICAgIG94Y2YtPnNjYWxlZF9mcmFtZV9oZWlnaHQgPQotICAg
ICAgICAob3hjZi0+aGVpZ2h0ICogY3BpLT5yZXNpemVfc2NhbGVfbnVtKSAvIGNwaS0+cmVzaXpl
X3NjYWxlX2RlbjsKLSAgICAvLyBUaGVyZSBoYXMgYmVlbiBhIGNoYW5nZSBpbiBmcmFtZSBzaXpl
LgotICAgIHZwOV9zZXRfc2l6ZV9saXRlcmFsKGNwaSwgb3hjZi0+c2NhbGVkX2ZyYW1lX3dpZHRo
LAotICAgICAgICAgICAgICAgICAgICAgICAgIG94Y2YtPnNjYWxlZF9mcmFtZV9oZWlnaHQpOwor
ICAgIC8vIEZvciBTVkMgc2NhbGVkIHdpZHRoL2hlaWdodCB3aWxsIGhhdmUgYmVlbiBzZXQgKHN2
Yy0+cmVzaXplX3NldD0xKQorICAgIC8vIGluIGdldF9zdmNfcGFyYW1zIGJhc2VkIG9uIHRoZSBs
YXllciB3aWR0aC9oZWlnaHQuCisgICAgaWYgKCFjcGktPnVzZV9zdmMgfHwgIWNwaS0+c3ZjLnJl
c2l6ZV9zZXQpIHsKKyAgICAgIG94Y2YtPnNjYWxlZF9mcmFtZV93aWR0aCA9CisgICAgICAgICAg
KG94Y2YtPndpZHRoICogY3BpLT5yZXNpemVfc2NhbGVfbnVtKSAvIGNwaS0+cmVzaXplX3NjYWxl
X2RlbjsKKyAgICAgIG94Y2YtPnNjYWxlZF9mcmFtZV9oZWlnaHQgPQorICAgICAgICAgIChveGNm
LT5oZWlnaHQgKiBjcGktPnJlc2l6ZV9zY2FsZV9udW0pIC8gY3BpLT5yZXNpemVfc2NhbGVfZGVu
OworICAgICAgLy8gVGhlcmUgaGFzIGJlZW4gYSBjaGFuZ2UgaW4gZnJhbWUgc2l6ZS4KKyAgICAg
IHZwOV9zZXRfc2l6ZV9saXRlcmFsKGNwaSwgb3hjZi0+c2NhbGVkX2ZyYW1lX3dpZHRoLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgb3hjZi0+c2NhbGVkX2ZyYW1lX2hlaWdodCk7CisgICAg
fQogCiAgICAgLy8gVE9ETyhhZ3JhbmdlKSBTY2FsZSBjcGktPm1heF9tdl9tYWduaXR1ZGUgaWYg
ZnJhbWUtc2l6ZSBoYXMgY2hhbmdlZC4KICAgICBzZXRfbXZfc2VhcmNoX3BhcmFtcyhjcGkpOwpA
QCAtNDAzNSw4ICs0MDY0LDExIEBAIHN0YXRpYyBpbnQgZW5jb2RlX3dpdGhvdXRfcmVjb2RlX2xv
b3AoVlA5X0NPTVAgKmNwaSwgc2l6ZV90ICpzaXplLAogICAvLyBGb3IgMSBwYXNzIENCUiBTVkMs
IG9ubHkgWkVST01WIGlzIGFsbG93ZWQgZm9yIHNwYXRpYWwgcmVmZXJlbmNlIGZyYW1lCiAgIC8v
IHdoZW4gc3ZjLT5mb3JjZV96ZXJvX21vZGVfc3BhdGlhbF9yZWYgPSAxLiBVbmRlciB0aG9zZSBj
b25kaXRpb25zIHdlIGNhbgogICAvLyBhdm9pZCB0aGlzIGZyYW1lLWxldmVsIHVwc2FtcGxpbmcg
KGZvciBub24gaW50cmFfb25seSBmcmFtZXMpLgorICAvLyBGb3IgU1ZDIHNpbmdsZV9sYXllciBt
b2RlLCBkeW5hbWljIHJlc2l6ZSBpcyBhbGxvd2VkIGFuZCB3ZSBuZWVkIHRvCisgIC8vIHNjYWxl
IHJlZmVyZW5jZXMgZm9yIHRoaXMgY2FzZS4KICAgaWYgKGZyYW1lX2lzX2ludHJhX29ubHkoY20p
ID09IDAgJiYKLSAgICAgICEoaXNfb25lX3Bhc3NfY2JyX3N2YyhjcGkpICYmIHN2Yy0+Zm9yY2Vf
emVyb19tb2RlX3NwYXRpYWxfcmVmKSkgeworICAgICAgKChzdmMtPnNpbmdsZV9sYXllcl9zdmMg
JiYgY3BpLT5veGNmLnJlc2l6ZV9tb2RlID09IFJFU0laRV9EWU5BTUlDKSB8fAorICAgICAgICEo
aXNfb25lX3Bhc3NfY2JyX3N2YyhjcGkpICYmIHN2Yy0+Zm9yY2VfemVyb19tb2RlX3NwYXRpYWxf
cmVmKSkpIHsKICAgICB2cDlfc2NhbGVfcmVmZXJlbmNlcyhjcGkpOwogICB9CiAKQEAgLTQxODEs
NiArNDIxMywyNyBAQCBzdGF0aWMgaW50IGVuY29kZV93aXRob3V0X3JlY29kZV9sb29wKFZQOV9D
T01QICpjcGksIHNpemVfdCAqc2l6ZSwKICAgcmV0dXJuIDE7CiB9CiAKK3N0YXRpYyBpbnQgZ2V0
X3JlZl9mcmFtZV9mbGFncyhjb25zdCBWUDlfQ09NUCAqY3BpKSB7CisgIGNvbnN0IGludCAqY29u
c3QgbWFwID0gY3BpLT5jb21tb24ucmVmX2ZyYW1lX21hcDsKKyAgY29uc3QgaW50IGdvbGRfaXNf
bGFzdCA9IG1hcFtjcGktPmdsZF9mYl9pZHhdID09IG1hcFtjcGktPmxzdF9mYl9pZHhdOworICBj
b25zdCBpbnQgYWx0X2lzX2xhc3QgPSBtYXBbY3BpLT5hbHRfZmJfaWR4XSA9PSBtYXBbY3BpLT5s
c3RfZmJfaWR4XTsKKyAgY29uc3QgaW50IGdvbGRfaXNfYWx0ID0gbWFwW2NwaS0+Z2xkX2ZiX2lk
eF0gPT0gbWFwW2NwaS0+YWx0X2ZiX2lkeF07CisgIGludCBmbGFncyA9IFZQOV9BTFRfRkxBRyB8
IFZQOV9HT0xEX0ZMQUcgfCBWUDlfTEFTVF9GTEFHOworCisgIGlmIChnb2xkX2lzX2xhc3QpIGZs
YWdzICY9IH5WUDlfR09MRF9GTEFHOworCisgIGlmIChjcGktPnJjLmZyYW1lc190aWxsX2dmX3Vw
ZGF0ZV9kdWUgPT0gSU5UX01BWCAmJgorICAgICAgKGNwaS0+c3ZjLm51bWJlcl90ZW1wb3JhbF9s
YXllcnMgPT0gMSAmJgorICAgICAgIGNwaS0+c3ZjLm51bWJlcl9zcGF0aWFsX2xheWVycyA9PSAx
KSkKKyAgICBmbGFncyAmPSB+VlA5X0dPTERfRkxBRzsKKworICBpZiAoYWx0X2lzX2xhc3QpIGZs
YWdzICY9IH5WUDlfQUxUX0ZMQUc7CisKKyAgaWYgKGdvbGRfaXNfYWx0KSBmbGFncyAmPSB+VlA5
X0FMVF9GTEFHOworCisgIHJldHVybiBmbGFnczsKK30KKwogI2lmICFDT05GSUdfUkVBTFRJTUVf
T05MWQogI2RlZmluZSBNQVhfUVNURVBfQURKIDQKIHN0YXRpYyBpbnQgZ2V0X3FzdGVwX2Fkaihp
bnQgcmF0ZV9leGNlc3MsIGludCByYXRlX2xpbWl0KSB7CkBAIC00MTg5LDggKzQyNDIsMTQ5IEBA
IHN0YXRpYyBpbnQgZ2V0X3FzdGVwX2FkaihpbnQgcmF0ZV9leGNlc3MsIGludCByYXRlX2xpbWl0
KSB7CiAgIHJldHVybiBWUFhNSU4ocXN0ZXAsIE1BWF9RU1RFUF9BREopOwogfQogCi1zdGF0aWMg
dm9pZCBlbmNvZGVfd2l0aF9yZWNvZGVfbG9vcChWUDlfQ09NUCAqY3BpLCBzaXplX3QgKnNpemUs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50OF90ICpkZXN0KSB7Cisj
aWYgQ09ORklHX1JBVEVfQ1RSTAorc3RhdGljIHZvaWQgaW5pdF9ycV9oaXN0b3J5KFJBVEVfUUlO
REVYX0hJU1RPUlkgKnJxX2hpc3RvcnkpIHsKKyAgcnFfaGlzdG9yeS0+cmVjb2RlX2NvdW50ID0g
MDsKKyAgcnFfaGlzdG9yeS0+cV9pbmRleF9oaWdoID0gMjU1OworICBycV9oaXN0b3J5LT5xX2lu
ZGV4X2xvdyA9IDA7Cit9CisKK3N0YXRpYyB2b2lkIHVwZGF0ZV9ycV9oaXN0b3J5KFJBVEVfUUlO
REVYX0hJU1RPUlkgKnJxX2hpc3RvcnksIGludCB0YXJnZXRfYml0cywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGludCBhY3R1YWxfYml0cywgaW50IHFfaW5kZXgpIHsKKyAgcnFfaGlz
dG9yeS0+cV9pbmRleF9oaXN0b3J5W3JxX2hpc3RvcnktPnJlY29kZV9jb3VudF0gPSBxX2luZGV4
OworICBycV9oaXN0b3J5LT5yYXRlX2hpc3RvcnlbcnFfaGlzdG9yeS0+cmVjb2RlX2NvdW50XSA9
IGFjdHVhbF9iaXRzOworICBpZiAoYWN0dWFsX2JpdHMgPD0gdGFyZ2V0X2JpdHMpIHsKKyAgICBy
cV9oaXN0b3J5LT5xX2luZGV4X2hpZ2ggPSBxX2luZGV4OworICB9CisgIGlmIChhY3R1YWxfYml0
cyA+PSB0YXJnZXRfYml0cykgeworICAgIHJxX2hpc3RvcnktPnFfaW5kZXhfbG93ID0gcV9pbmRl
eDsKKyAgfQorICBycV9oaXN0b3J5LT5yZWNvZGVfY291bnQgKz0gMTsKK30KKworc3RhdGljIGlu
dCBndWVzc19xX2luZGV4X2Zyb21fbW9kZWwoY29uc3QgUkFURV9RU1RFUF9NT0RFTCAqcnFfbW9k
ZWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgdGFyZ2V0X2JpdHMp
IHsKKyAgLy8gVGhlIG1vZGVsIHByZWRpY3RzIGJpdHMgYXMgZm9sbG93cy4KKyAgLy8gdGFyZ2V0
X2JpdHMgPSBiaWFzIC0gcmF0aW8gKiBsb2cyKHFfc3RlcCkKKyAgLy8gR2l2ZW4gdGhlIHRhcmdl
dF9iaXRzLCB3ZSBjb21wdXRlIHRoZSBxX3N0ZXAgYXMgZm9sbG93cy4KKyAgZG91YmxlIHFfc3Rl
cDsKKyAgYXNzZXJ0KHJxX21vZGVsLT5yYXRpbyA+IDApOworICBxX3N0ZXAgPSBwb3coMi4wLCAo
cnFfbW9kZWwtPmJpYXMgLSB0YXJnZXRfYml0cykgLyBycV9tb2RlbC0+cmF0aW8pOworICAvLyBU
T0RPKGFuZ2llYmlyZCk6IE1ha2UgdGhpcyBmdW5jdGlvbiBzdXBwb3J0IGhpZ2hiaXRkZXB0aC4K
KyAgcmV0dXJuIHZwOV9jb252ZXJ0X3FfdG9fcWluZGV4KHFfc3RlcCwgVlBYX0JJVFNfOCk7Cit9
CisKK3N0YXRpYyBpbnQgZ3Vlc3NfcV9pbmRleF9saW5lYXIoaW50IHByZXZfcV9pbmRleCwgaW50
IHRhcmdldF9iaXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgYWN0dWFs
X2JpdHMsIGludCBnYXApIHsKKyAgaW50IHFfaW5kZXggPSBwcmV2X3FfaW5kZXg7CisgIGlmIChh
Y3R1YWxfYml0cyA8IHRhcmdldF9iaXRzKSB7CisgICAgcV9pbmRleCAtPSBnYXA7CisgICAgcV9p
bmRleCA9IFZQWE1BWChxX2luZGV4LCAwKTsKKyAgfSBlbHNlIHsKKyAgICBxX2luZGV4ICs9IGdh
cDsKKyAgICBxX2luZGV4ID0gVlBYTUlOKHFfaW5kZXgsIDI1NSk7CisgIH0KKyAgcmV0dXJuIHFf
aW5kZXg7Cit9CisKK3N0YXRpYyBkb3VibGUgZ2V0X2JpdHNfcGVyY2VudF9kaWZmKGludCB0YXJn
ZXRfYml0cywgaW50IGFjdHVhbF9iaXRzKSB7CisgIGRvdWJsZSBkaWZmOworICB0YXJnZXRfYml0
cyA9IFZQWE1BWCh0YXJnZXRfYml0cywgMSk7CisgIGRpZmYgPSBhYnModGFyZ2V0X2JpdHMgLSBh
Y3R1YWxfYml0cykgKiAxLiAvIHRhcmdldF9iaXRzOworICByZXR1cm4gZGlmZiAqIDEwMDsKK30K
Kworc3RhdGljIGludCBycV9tb2RlbF9wcmVkaWN0X3FfaW5kZXgoY29uc3QgUkFURV9RU1RFUF9N
T0RFTCAqcnFfbW9kZWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCBSQVRFX1FJTkRFWF9ISVNUT1JZICpycV9oaXN0b3J5LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW50IHRhcmdldF9iaXRzKSB7CisgIGludCBxX2luZGV4ID0gMTI4Owor
ICBpZiAocnFfaGlzdG9yeS0+cmVjb2RlX2NvdW50ID4gMCkgeworICAgIGNvbnN0IGludCBhY3R1
YWxfYml0cyA9CisgICAgICAgIHJxX2hpc3RvcnktPnJhdGVfaGlzdG9yeVtycV9oaXN0b3J5LT5y
ZWNvZGVfY291bnQgLSAxXTsKKyAgICBjb25zdCBpbnQgcHJldl9xX2luZGV4ID0KKyAgICAgICAg
cnFfaGlzdG9yeS0+cV9pbmRleF9oaXN0b3J5W3JxX2hpc3RvcnktPnJlY29kZV9jb3VudCAtIDFd
OworICAgIGNvbnN0IGRvdWJsZSBwZXJjZW50X2RpZmYgPSBnZXRfYml0c19wZXJjZW50X2RpZmYo
dGFyZ2V0X2JpdHMsIGFjdHVhbF9iaXRzKTsKKyAgICBpZiAocGVyY2VudF9kaWZmID4gNTApIHsK
KyAgICAgIC8vIEJpbmFyeSBzZWFyY2guCisgICAgICAvLyBXaGVuIHRoZSBhY3R1YWxfYml0cyBh
bmQgdGFyZ2V0X2JpdHMgYXJlIGZhciBhcGFydCwgYmluYXJ5IHNlYXJjaAorICAgICAgLy8gcV9p
bmRleCBpcyBmYXN0ZXIuCisgICAgICBxX2luZGV4ID0gKHJxX2hpc3RvcnktPnFfaW5kZXhfbG93
ICsgcnFfaGlzdG9yeS0+cV9pbmRleF9oaWdoKSAvIDI7CisgICAgfSBlbHNlIHsKKyAgICAgIGlm
IChycV9tb2RlbC0+cmVhZHkpIHsKKyAgICAgICAgcV9pbmRleCA9IGd1ZXNzX3FfaW5kZXhfZnJv
bV9tb2RlbChycV9tb2RlbCwgdGFyZ2V0X2JpdHMpOworICAgICAgfSBlbHNlIHsKKyAgICAgICAg
Ly8gVE9ETyhhbmdpZWJpcmQpOiBGaW5kIGEgYmV0dGVyIHdheSB0byBzZXQgdGhlIGdhcC4KKyAg
ICAgICAgcV9pbmRleCA9CisgICAgICAgICAgICBndWVzc19xX2luZGV4X2xpbmVhcihwcmV2X3Ff
aW5kZXgsIHRhcmdldF9iaXRzLCBhY3R1YWxfYml0cywgMjApOworICAgICAgfQorICAgIH0KKyAg
fSBlbHNlIHsKKyAgICBpZiAocnFfbW9kZWwtPnJlYWR5KSB7CisgICAgICBxX2luZGV4ID0gZ3Vl
c3NfcV9pbmRleF9mcm9tX21vZGVsKHJxX21vZGVsLCB0YXJnZXRfYml0cyk7CisgICAgfQorICB9
CisKKyAgYXNzZXJ0KHJxX2hpc3RvcnktPnFfaW5kZXhfbG93IDw9IHJxX2hpc3RvcnktPnFfaW5k
ZXhfaGlnaCk7CisgIGlmIChxX2luZGV4IDw9IHJxX2hpc3RvcnktPnFfaW5kZXhfbG93KSB7Cisg
ICAgcV9pbmRleCA9IHJxX2hpc3RvcnktPnFfaW5kZXhfbG93ICsgMTsKKyAgfQorICBpZiAocV9p
bmRleCA+PSBycV9oaXN0b3J5LT5xX2luZGV4X2hpZ2gpIHsKKyAgICBxX2luZGV4ID0gcnFfaGlz
dG9yeS0+cV9pbmRleF9oaWdoIC0gMTsKKyAgfQorICByZXR1cm4gcV9pbmRleDsKK30KKworc3Rh
dGljIHZvaWQgcnFfbW9kZWxfdXBkYXRlKGNvbnN0IFJBVEVfUUlOREVYX0hJU1RPUlkgKnJxX2hp
c3RvcnksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHRhcmdldF9iaXRzLCBSQVRF
X1FTVEVQX01PREVMICpycV9tb2RlbCkgeworICBjb25zdCBpbnQgcmVjb2RlX2NvdW50ID0gcnFf
aGlzdG9yeS0+cmVjb2RlX2NvdW50OworICBjb25zdCBkb3VibGUgZGVsdGEgPSAwLjAwMDAxOwor
ICBpZiAocmVjb2RlX2NvdW50ID49IDIpIHsKKyAgICBjb25zdCBpbnQgcV9pbmRleDEgPSBycV9o
aXN0b3J5LT5xX2luZGV4X2hpc3RvcnlbcmVjb2RlX2NvdW50IC0gMl07CisgICAgY29uc3QgaW50
IHFfaW5kZXgyID0gcnFfaGlzdG9yeS0+cV9pbmRleF9oaXN0b3J5W3JlY29kZV9jb3VudCAtIDFd
OworICAgIGNvbnN0IGludCByMSA9IHJxX2hpc3RvcnktPnJhdGVfaGlzdG9yeVtyZWNvZGVfY291
bnQgLSAyXTsKKyAgICBjb25zdCBpbnQgcjIgPSBycV9oaXN0b3J5LT5yYXRlX2hpc3RvcnlbcmVj
b2RlX2NvdW50IC0gMV07CisgICAgaW50IHZhbGlkID0gMDsKKyAgICAvLyBsb3dlciBxX2luZGV4
IHNob3VsZCB5aWVsZCBoaWdoZXIgYml0IHJhdGUKKyAgICBpZiAocV9pbmRleDEgPCBxX2luZGV4
MikgeworICAgICAgdmFsaWQgPSByMSA+IHIyOworICAgIH0gZWxzZSBpZiAocV9pbmRleDEgPiBx
X2luZGV4MikgeworICAgICAgdmFsaWQgPSByMSA8IHIyOworICAgIH0KKyAgICAvLyBPbmx5IHVw
ZGF0ZSB0aGUgbW9kZWwgd2hlbiB0aGUgcV9pbmRleCBhbmQgcmF0ZSBiZWhhdmUgbm9ybWFsbHku
CisgICAgaWYgKHZhbGlkKSB7CisgICAgICAvLyBGaXQgdGhlIHJhdGlvIGFuZCBiaWFzIG9mIHJx
X21vZGVsIGJhc2VkIG9uIGxhc3QgdHdvIHJlY29kZSBoaXN0b3JpZXMuCisgICAgICBjb25zdCBk
b3VibGUgczEgPSB2cDlfY29udmVydF9xaW5kZXhfdG9fcShxX2luZGV4MSwgVlBYX0JJVFNfOCk7
CisgICAgICBjb25zdCBkb3VibGUgczIgPSB2cDlfY29udmVydF9xaW5kZXhfdG9fcShxX2luZGV4
MiwgVlBYX0JJVFNfOCk7CisgICAgICBpZiAoZmFicyhsb2cyKHMxKSAtIGxvZzIoczIpKSA+IGRl
bHRhKSB7CisgICAgICAgIHJxX21vZGVsLT5yYXRpbyA9IChyMiAtIHIxKSAvIChsb2cyKHMxKSAt
IGxvZzIoczIpKTsKKyAgICAgICAgcnFfbW9kZWwtPmJpYXMgPSByMSArIChycV9tb2RlbC0+cmF0
aW8pICogbG9nMihzMSk7CisgICAgICAgIGlmIChycV9tb2RlbC0+cmF0aW8gPiBkZWx0YSAmJiBy
cV9tb2RlbC0+YmlhcyA+IGRlbHRhKSB7CisgICAgICAgICAgcnFfbW9kZWwtPnJlYWR5ID0gMTsK
KyAgICAgICAgfQorICAgICAgfQorICAgIH0KKyAgfSBlbHNlIGlmIChyZWNvZGVfY291bnQgPT0g
MSkgeworICAgIGlmIChycV9tb2RlbC0+cmVhZHkpIHsKKyAgICAgIC8vIFVwZGF0ZSB0aGUgcmF0
aW8gb25seSB3aGVuIHRoZSBpbml0aWFsIG1vZGVsIGV4aXN0cyBhbmQgd2Ugb25seSBoYXZlCisg
ICAgICAvLyBvbmUgcmVjb2RlIGhpc3RvcnkuCisgICAgICBjb25zdCBpbnQgcHJldl9xID0gcnFf
aGlzdG9yeS0+cV9pbmRleF9oaXN0b3J5W3JlY29kZV9jb3VudCAtIDFdOworICAgICAgY29uc3Qg
ZG91YmxlIHByZXZfcV9zdGVwID0gdnA5X2NvbnZlcnRfcWluZGV4X3RvX3EocHJldl9xLCBWUFhf
QklUU184KTsKKyAgICAgIGlmIChmYWJzKGxvZzIocHJldl9xX3N0ZXApKSA+IGRlbHRhKSB7Cisg
ICAgICAgIGNvbnN0IGludCBhY3R1YWxfYml0cyA9IHJxX2hpc3RvcnktPnJhdGVfaGlzdG9yeVty
ZWNvZGVfY291bnQgLSAxXTsKKyAgICAgICAgcnFfbW9kZWwtPnJhdGlvID0KKyAgICAgICAgICAg
IHJxX21vZGVsLT5yYXRpbyArICh0YXJnZXRfYml0cyAtIGFjdHVhbF9iaXRzKSAvIGxvZzIocHJl
dl9xX3N0ZXApOworICAgICAgfQorICAgIH0KKyAgfQorfQorI2VuZGlmICAvLyBDT05GSUdfUkFU
RV9DVFJMCisKK3N0YXRpYyB2b2lkIGVuY29kZV93aXRoX3JlY29kZV9sb29wKFZQOV9DT01QICpj
cGksIHNpemVfdCAqc2l6ZSwgdWludDhfdCAqZGVzdAorI2lmIENPTkZJR19SQVRFX0NUUkwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFJBVEVfUUlOREVYX0hJU1RPUlkgKnJxX2hpc3RvcnkKKyNlbmRpZiAg
Ly8gQ09ORklHX1JBVEVfQ1RSTAorKSB7CiAgIGNvbnN0IFZQOUVuY29kZXJDb25maWcgKmNvbnN0
IG94Y2YgPSAmY3BpLT5veGNmOwogICBWUDlfQ09NTU9OICpjb25zdCBjbSA9ICZjcGktPmNvbW1v
bjsKICAgUkFURV9DT05UUk9MICpjb25zdCByYyA9ICZjcGktPnJjOwpAQCAtNDIwOCw2ICs0NDAy
LDE0IEBAIHN0YXRpYyB2b2lkIGVuY29kZV93aXRoX3JlY29kZV9sb29wKFZQOV9DT01QICpjcGks
IHNpemVfdCAqc2l6ZSwKICAgaW50IHFyYW5nZV9hZGogPSAxOwogI2VuZGlmCiAKKyNpZiBDT05G
SUdfUkFURV9DVFJMCisgIGNvbnN0IEZSQU1FX1VQREFURV9UWVBFIHVwZGF0ZV90eXBlID0KKyAg
ICAgIGNwaS0+dHdvcGFzcy5nZl9ncm91cC51cGRhdGVfdHlwZVtjcGktPnR3b3Bhc3MuZ2ZfZ3Jv
dXAuaW5kZXhdOworICBjb25zdCBFTkNPREVfRlJBTUVfVFlQRSBmcmFtZV90eXBlID0gZ2V0X2Vu
Y29kZV9mcmFtZV90eXBlKHVwZGF0ZV90eXBlKTsKKyAgUkFURV9RU1RFUF9NT0RFTCAqcnFfbW9k
ZWwgPSAmY3BpLT5ycV9tb2RlbFtmcmFtZV90eXBlXTsKKyAgaW5pdF9ycV9oaXN0b3J5KHJxX2hp
c3RvcnkpOworI2VuZGlmICAvLyBDT05GSUdfUkFURV9DVFJMCisKICAgaWYgKGNtLT5zaG93X2V4
aXN0aW5nX2ZyYW1lKSB7CiAgICAgcmMtPnRoaXNfZnJhbWVfdGFyZ2V0ID0gMDsKICAgICBpZiAo
aXNfcHNucl9jYWxjX2VuYWJsZWQoY3BpKSkgc2V0X3Jhd19zb3VyY2VfZnJhbWUoY3BpKTsKQEAg
LTQyNTQsNiArNDQ1NiwxMSBAQCBzdGF0aWMgdm9pZCBlbmNvZGVfd2l0aF9yZWNvZGVfbG9vcChW
UDlfQ09NUCAqY3BpLCBzaXplX3QgKnNpemUsCiAgICAgICBsb29wX2F0X3RoaXNfc2l6ZSA9IDA7
CiAgICAgfQogCisjaWYgQ09ORklHX1JBVEVfQ1RSTAorICAgIGlmIChjcGktPmVuY29kZV9jb21t
YW5kLnVzZV9leHRlcm5hbF90YXJnZXRfZnJhbWVfYml0cykgeworICAgICAgcSA9IHJxX21vZGVs
X3ByZWRpY3RfcV9pbmRleChycV9tb2RlbCwgcnFfaGlzdG9yeSwgcmMtPnRoaXNfZnJhbWVfdGFy
Z2V0KTsKKyAgICB9CisjZW5kaWYgIC8vIENPTkZJR19SQVRFX0NUUkwKICAgICAvLyBEZWNpZGUg
ZnJhbWUgc2l6ZSBib3VuZHMgZmlyc3QgdGltZSB0aHJvdWdoLgogICAgIGlmIChsb29wX2NvdW50
ID09IDApIHsKICAgICAgIHZwOV9yY19jb21wdXRlX2ZyYW1lX3NpemVfYm91bmRzKGNwaSwgcmMt
PnRoaXNfZnJhbWVfdGFyZ2V0LApAQCAtNDMwMCw2ICs0NTA3LDI2IEBAIHN0YXRpYyB2b2lkIGVu
Y29kZV93aXRoX3JlY29kZV9sb29wKFZQOV9DT01QICpjcGksIHNpemVfdCAqc2l6ZSwKICAgICAg
IHEgPSBjcGktPmVuY29kZV9jb21tYW5kLmV4dGVybmFsX3F1YW50aXplX2luZGV4OwogICAgIH0K
ICNlbmRpZgorICAgIGlmIChjcGktPmV4dF9yYXRlY3RybC5yZWFkeSkgeworICAgICAgdnB4X2Nv
ZGVjX2Vycl90IGNvZGVjX3N0YXR1czsKKyAgICAgIGNvbnN0IEdGX0dST1VQICpnZl9ncm91cCA9
ICZjcGktPnR3b3Bhc3MuZ2ZfZ3JvdXA7CisgICAgICB2cHhfcmNfZW5jb2RlZnJhbWVfZGVjaXNp
b25fdCBlbmNvZGVfZnJhbWVfZGVjaXNpb247CisgICAgICBGUkFNRV9VUERBVEVfVFlQRSB1cGRh
dGVfdHlwZSA9IGdmX2dyb3VwLT51cGRhdGVfdHlwZVtnZl9ncm91cC0+aW5kZXhdOworICAgICAg
Y29uc3QgaW50IHJlZl9mcmFtZV9mbGFncyA9IGdldF9yZWZfZnJhbWVfZmxhZ3MoY3BpKTsKKyAg
ICAgIFJlZkNudEJ1ZmZlciAqcmVmX2ZyYW1lX2J1ZnNbTUFYX0lOVEVSX1JFRl9GUkFNRVNdOwor
ICAgICAgY29uc3QgUmVmQ250QnVmZmVyICpjdXJyX2ZyYW1lX2J1ZiA9CisgICAgICAgICAgZ2V0
X3JlZl9jbnRfYnVmZmVyKGNtLCBjbS0+bmV3X2ZiX2lkeCk7CisgICAgICBnZXRfcmVmX2ZyYW1l
X2J1ZnMoY3BpLCByZWZfZnJhbWVfYnVmcyk7CisgICAgICBjb2RlY19zdGF0dXMgPSB2cDlfZXh0
cmNfZ2V0X2VuY29kZWZyYW1lX2RlY2lzaW9uKAorICAgICAgICAgICZjcGktPmV4dF9yYXRlY3Ry
bCwgY3Vycl9mcmFtZV9idWYtPmZyYW1lX2luZGV4LAorICAgICAgICAgIGNtLT5jdXJyZW50X2Zy
YW1lX2NvZGluZ19pbmRleCwgZ2ZfZ3JvdXAtPmluZGV4LCB1cGRhdGVfdHlwZSwKKyAgICAgICAg
ICByZWZfZnJhbWVfYnVmcywgcmVmX2ZyYW1lX2ZsYWdzLCAmZW5jb2RlX2ZyYW1lX2RlY2lzaW9u
KTsKKyAgICAgIGlmIChjb2RlY19zdGF0dXMgIT0gVlBYX0NPREVDX09LKSB7CisgICAgICAgIHZw
eF9pbnRlcm5hbF9lcnJvcigmY20tPmVycm9yLCBjb2RlY19zdGF0dXMsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAidnA5X2V4dHJjX2dldF9lbmNvZGVmcmFtZV9kZWNpc2lvbigpIGZhaWxl
ZCIpOworICAgICAgfQorICAgICAgcSA9IGVuY29kZV9mcmFtZV9kZWNpc2lvbi5xX2luZGV4Owor
ICAgIH0KIAogICAgIHZwOV9zZXRfcXVhbnRpemVyKGNwaSwgcSk7CiAKQEAgLTQzMzksNiArNDU2
Niw5IEBAIHN0YXRpYyB2b2lkIGVuY29kZV93aXRoX3JlY29kZV9sb29wKFZQOV9DT01QICpjcGks
IHNpemVfdCAqc2l6ZSwKICAgICAgIGlmIChmcmFtZV9vdmVyX3Nob290X2xpbWl0ID09IDApIGZy
YW1lX292ZXJfc2hvb3RfbGltaXQgPSAxOwogICAgIH0KIAorICAgIGlmIChjcGktPmV4dF9yYXRl
Y3RybC5yZWFkeSkgeworICAgICAgYnJlYWs7CisgICAgfQogI2lmIENPTkZJR19SQVRFX0NUUkwK
ICAgICAvLyBUaGlzIHBhcnQgbmVlZHMgdG8gYmUgYWZ0ZXIgc2F2ZV9jb2RpbmdfY29udGV4dCgp
IGJlY2F1c2UKICAgICAvLyByZXN0b3JlX2NvZGluZ19jb250ZXh0IHdpbGwgYmUgY2FsbGVkIGlu
IHRoZSBlbmQgb2YgdGhpcyBmdW5jdGlvbi4KQEAgLTQzNDcsNyArNDU3NywyOCBAQCBzdGF0aWMg
dm9pZCBlbmNvZGVfd2l0aF9yZWNvZGVfbG9vcChWUDlfQ09NUCAqY3BpLCBzaXplX3QgKnNpemUs
CiAgICAgaWYgKGNwaS0+ZW5jb2RlX2NvbW1hbmQudXNlX2V4dGVybmFsX3F1YW50aXplX2luZGV4
KSB7CiAgICAgICBicmVhazsKICAgICB9Ci0jZW5kaWYKKworICAgIGlmIChjcGktPmVuY29kZV9j
b21tYW5kLnVzZV9leHRlcm5hbF90YXJnZXRfZnJhbWVfYml0cykgeworICAgICAgY29uc3QgZG91
YmxlIHBlcmNlbnRfZGlmZiA9IGdldF9iaXRzX3BlcmNlbnRfZGlmZigKKyAgICAgICAgICByYy0+
dGhpc19mcmFtZV90YXJnZXQsIHJjLT5wcm9qZWN0ZWRfZnJhbWVfc2l6ZSk7CisgICAgICB1cGRh
dGVfcnFfaGlzdG9yeShycV9oaXN0b3J5LCByYy0+dGhpc19mcmFtZV90YXJnZXQsCisgICAgICAg
ICAgICAgICAgICAgICAgICByYy0+cHJvamVjdGVkX2ZyYW1lX3NpemUsIHEpOworICAgICAgbG9v
cF9jb3VudCArPSAxOworCisgICAgICBycV9tb2RlbF91cGRhdGUocnFfaGlzdG9yeSwgcmMtPnRo
aXNfZnJhbWVfdGFyZ2V0LCBycV9tb2RlbCk7CisKKyAgICAgIC8vIENoZWNrIGlmIHdlIGhpdCB0
aGUgdGFyZ2V0IGJpdHJhdGUuCisgICAgICBpZiAocGVyY2VudF9kaWZmIDw9IGNwaS0+ZW5jb2Rl
X2NvbW1hbmQudGFyZ2V0X2ZyYW1lX2JpdHNfZXJyb3JfcGVyY2VudCB8fAorICAgICAgICAgIHJx
X2hpc3RvcnktPnJlY29kZV9jb3VudCA+PSBSQVRFX0NUUkxfTUFYX1JFQ09ERV9OVU0gfHwKKyAg
ICAgICAgICBycV9oaXN0b3J5LT5xX2luZGV4X2xvdyA+PSBycV9oaXN0b3J5LT5xX2luZGV4X2hp
Z2gpIHsKKyAgICAgICAgYnJlYWs7CisgICAgICB9CisKKyAgICAgIGxvb3AgPSAxOworICAgICAg
cmVzdG9yZV9jb2RpbmdfY29udGV4dChjcGkpOworICAgICAgY29udGludWU7CisgICAgfQorI2Vu
ZGlmICAvLyBDT05GSUdfUkFURV9DVFJMCiAKICAgICBpZiAob3hjZi0+cmNfbW9kZSA9PSBWUFhf
USkgewogICAgICAgbG9vcCA9IDA7CkBAIC00NTYyLDI3ICs0ODEzLDYgQEAgc3RhdGljIHZvaWQg
ZW5jb2RlX3dpdGhfcmVjb2RlX2xvb3AoVlA5X0NPTVAgKmNwaSwgc2l6ZV90ICpzaXplLAogfQog
I2VuZGlmICAvLyAhQ09ORklHX1JFQUxUSU1FX09OTFkKIAotc3RhdGljIGludCBnZXRfcmVmX2Zy
YW1lX2ZsYWdzKGNvbnN0IFZQOV9DT01QICpjcGkpIHsKLSAgY29uc3QgaW50ICpjb25zdCBtYXAg
PSBjcGktPmNvbW1vbi5yZWZfZnJhbWVfbWFwOwotICBjb25zdCBpbnQgZ29sZF9pc19sYXN0ID0g
bWFwW2NwaS0+Z2xkX2ZiX2lkeF0gPT0gbWFwW2NwaS0+bHN0X2ZiX2lkeF07Ci0gIGNvbnN0IGlu
dCBhbHRfaXNfbGFzdCA9IG1hcFtjcGktPmFsdF9mYl9pZHhdID09IG1hcFtjcGktPmxzdF9mYl9p
ZHhdOwotICBjb25zdCBpbnQgZ29sZF9pc19hbHQgPSBtYXBbY3BpLT5nbGRfZmJfaWR4XSA9PSBt
YXBbY3BpLT5hbHRfZmJfaWR4XTsKLSAgaW50IGZsYWdzID0gVlA5X0FMVF9GTEFHIHwgVlA5X0dP
TERfRkxBRyB8IFZQOV9MQVNUX0ZMQUc7Ci0KLSAgaWYgKGdvbGRfaXNfbGFzdCkgZmxhZ3MgJj0g
flZQOV9HT0xEX0ZMQUc7Ci0KLSAgaWYgKGNwaS0+cmMuZnJhbWVzX3RpbGxfZ2ZfdXBkYXRlX2R1
ZSA9PSBJTlRfTUFYICYmCi0gICAgICAoY3BpLT5zdmMubnVtYmVyX3RlbXBvcmFsX2xheWVycyA9
PSAxICYmCi0gICAgICAgY3BpLT5zdmMubnVtYmVyX3NwYXRpYWxfbGF5ZXJzID09IDEpKQotICAg
IGZsYWdzICY9IH5WUDlfR09MRF9GTEFHOwotCi0gIGlmIChhbHRfaXNfbGFzdCkgZmxhZ3MgJj0g
flZQOV9BTFRfRkxBRzsKLQotICBpZiAoZ29sZF9pc19hbHQpIGZsYWdzICY9IH5WUDlfQUxUX0ZM
QUc7Ci0KLSAgcmV0dXJuIGZsYWdzOwotfQotCiBzdGF0aWMgdm9pZCBzZXRfZXh0X292ZXJyaWRl
cyhWUDlfQ09NUCAqY3BpKSB7CiAgIC8vIE92ZXJyaWRlcyB0aGUgZGVmYXVsdHMgd2l0aCB0aGUg
ZXh0ZXJuYWxseSBzdXBwbGllZCB2YWx1ZXMgd2l0aAogICAvLyB2cDlfdXBkYXRlX3JlZmVyZW5j
ZSgpIGFuZCB2cDlfdXBkYXRlX2VudHJvcHkoKSBjYWxscwpAQCAtNDg4Nyw2ICs1MTE3LDcgQEAg
c3RhdGljIHZvaWQgc2V0X2ZyYW1lX2luZGV4KFZQOV9DT01QICpjcGksIFZQOV9DT01NT04gKmNt
KSB7CiAgICAgY29uc3QgR0ZfR1JPVVAgKmNvbnN0IGdmX2dyb3VwID0gJmNwaS0+dHdvcGFzcy5n
Zl9ncm91cDsKICAgICByZWZfYnVmZmVyLT5mcmFtZV9pbmRleCA9CiAgICAgICAgIGNtLT5jdXJy
ZW50X3ZpZGVvX2ZyYW1lICsgZ2ZfZ3JvdXAtPmFyZl9zcmNfb2Zmc2V0W2dmX2dyb3VwLT5pbmRl
eF07CisgICAgcmVmX2J1ZmZlci0+ZnJhbWVfY29kaW5nX2luZGV4ID0gY20tPmN1cnJlbnRfZnJh
bWVfY29kaW5nX2luZGV4OwogICB9CiB9CiAKQEAgLTUwODAsOSArNTMxMSwyMyBAQCBzdGF0aWMg
dm9pZCBzZXRfbWJfd2llbmVyX3ZhcmlhbmNlKFZQOV9DT01QICpjcGkpIHsKICAgY3BpLT5ub3Jt
X3dpZW5lcl92YXJpYW5jZSA9IFZQWE1BWCgxLCBjcGktPm5vcm1fd2llbmVyX3ZhcmlhbmNlKTsK
IH0KIAotc3RhdGljIHZvaWQgZW5jb2RlX2ZyYW1lX3RvX2RhdGFfcmF0ZShWUDlfQ09NUCAqY3Bp
LCBzaXplX3QgKnNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVp
bnQ4X3QgKmRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2ln
bmVkIGludCAqZnJhbWVfZmxhZ3MpIHsKKyNpZiAhQ09ORklHX1JFQUxUSU1FX09OTFkKK3N0YXRp
YyB2b2lkIHVwZGF0ZV9lbmNvZGVfZnJhbWVfcmVzdWx0KAorICAgIGludCByZWZfZnJhbWVfZmxh
Z3MsIEZSQU1FX1VQREFURV9UWVBFIHVwZGF0ZV90eXBlLAorICAgIGNvbnN0IFlWMTJfQlVGRkVS
X0NPTkZJRyAqc291cmNlX2ZyYW1lLCBjb25zdCBSZWZDbnRCdWZmZXIgKmNvZGVkX2ZyYW1lX2J1
ZiwKKyAgICBSZWZDbnRCdWZmZXIgKnJlZl9mcmFtZV9idWZbTUFYX0lOVEVSX1JFRl9GUkFNRVNd
LCBpbnQgcXVhbnRpemVfaW5kZXgsCisgICAgdWludDMyX3QgYml0X2RlcHRoLCB1aW50MzJfdCBp
bnB1dF9iaXRfZGVwdGgsIGNvbnN0IEZSQU1FX0NPVU5UUyAqY291bnRzLAorI2lmIENPTkZJR19S
QVRFX0NUUkwKKyAgICBjb25zdCBQQVJUSVRJT05fSU5GTyAqcGFydGl0aW9uX2luZm8sCisgICAg
Y29uc3QgTU9USU9OX1ZFQ1RPUl9JTkZPICptb3Rpb25fdmVjdG9yX2luZm8sCisgICAgY29uc3Qg
VHBsRGVwU3RhdHMgKnRwbF9zdGF0c19pbmZvLAorI2VuZGlmICAvLyBDT05GSUdfUkFURV9DVFJM
CisgICAgRU5DT0RFX0ZSQU1FX1JFU1VMVCAqZW5jb2RlX2ZyYW1lX3Jlc3VsdCk7CisjZW5kaWYg
IC8vICFDT05GSUdfUkVBTFRJTUVfT05MWQorCitzdGF0aWMgdm9pZCBlbmNvZGVfZnJhbWVfdG9f
ZGF0YV9yYXRlKAorICAgIFZQOV9DT01QICpjcGksIHNpemVfdCAqc2l6ZSwgdWludDhfdCAqZGVz
dCwgdW5zaWduZWQgaW50ICpmcmFtZV9mbGFncywKKyAgICBFTkNPREVfRlJBTUVfUkVTVUxUICpl
bmNvZGVfZnJhbWVfcmVzdWx0KSB7CiAgIFZQOV9DT01NT04gKmNvbnN0IGNtID0gJmNwaS0+Y29t
bW9uOwogICBjb25zdCBWUDlFbmNvZGVyQ29uZmlnICpjb25zdCBveGNmID0gJmNwaS0+b3hjZjsK
ICAgc3RydWN0IHNlZ21lbnRhdGlvbiAqY29uc3Qgc2VnID0gJmNtLT5zZWc7CkBAIC01MTgxLDgg
KzU0MjYsMTIgQEAgc3RhdGljIHZvaWQgZW5jb2RlX2ZyYW1lX3RvX2RhdGFfcmF0ZShWUDlfQ09N
UCAqY3BpLCBzaXplX3QgKnNpemUsCiAgICAgaWYgKCFlbmNvZGVfd2l0aG91dF9yZWNvZGVfbG9v
cChjcGksIHNpemUsIGRlc3QpKSByZXR1cm47CiAgIH0gZWxzZSB7CiAjaWYgIUNPTkZJR19SRUFM
VElNRV9PTkxZCisjaWYgQ09ORklHX1JBVEVfQ1RSTAorICAgIGVuY29kZV93aXRoX3JlY29kZV9s
b29wKGNwaSwgc2l6ZSwgZGVzdCwgJmVuY29kZV9mcmFtZV9yZXN1bHQtPnJxX2hpc3RvcnkpOwor
I2Vsc2UgICAvLyBDT05GSUdfUkFURV9DVFJMCiAgICAgZW5jb2RlX3dpdGhfcmVjb2RlX2xvb3Ao
Y3BpLCBzaXplLCBkZXN0KTsKLSNlbmRpZgorI2VuZGlmICAvLyBDT05GSUdfUkFURV9DVFJMCisj
ZW5kaWYgIC8vICFDT05GSUdfUkVBTFRJTUVfT05MWQogICB9CiAKICAgLy8gVE9ETyhqaW5nbmlu
Zyk6IFdoZW4gdXNpbmcgc2hvdyBleGlzdGluZyBmcmFtZSBtb2RlLCB3ZSBhc3N1bWUgdGhhdCB0
aGUKQEAgLTUyNDcsNiArNTQ5Niw1NSBAQCBzdGF0aWMgdm9pZCBlbmNvZGVfZnJhbWVfdG9fZGF0
YV9yYXRlKFZQOV9DT01QICpjcGksIHNpemVfdCAqc2l6ZSwKICAgLy8gYnVpbGQgdGhlIGJpdHN0
cmVhbQogICB2cDlfcGFja19iaXRzdHJlYW0oY3BpLCBkZXN0LCBzaXplKTsKIAorICB7CisgICAg
Y29uc3QgUmVmQ250QnVmZmVyICpjb2RlZF9mcmFtZV9idWYgPQorICAgICAgICBnZXRfcmVmX2Nu
dF9idWZmZXIoY20sIGNtLT5uZXdfZmJfaWR4KTsKKyAgICB2cHhfY29kZWNfZXJyX3QgY29kZWNf
c3RhdHVzID0gdnA5X2V4dHJjX3VwZGF0ZV9lbmNvZGVmcmFtZV9yZXN1bHQoCisgICAgICAgICZj
cGktPmV4dF9yYXRlY3RybCwgKCpzaXplKSA8PCAzLCBjcGktPlNvdXJjZSwgJmNvZGVkX2ZyYW1l
X2J1Zi0+YnVmLAorICAgICAgICBjbS0+Yml0X2RlcHRoLCBjcGktPm94Y2YuaW5wdXRfYml0X2Rl
cHRoKTsKKyAgICBpZiAoY29kZWNfc3RhdHVzICE9IFZQWF9DT0RFQ19PSykgeworICAgICAgdnB4
X2ludGVybmFsX2Vycm9yKCZjbS0+ZXJyb3IsIGNvZGVjX3N0YXR1cywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAidnA5X2V4dHJjX3VwZGF0ZV9lbmNvZGVmcmFtZV9yZXN1bHQoKSBmYWlsZWQi
KTsKKyAgICB9CisgIH0KKyNpZiBDT05GSUdfUkVBTFRJTUVfT05MWQorICAodm9pZCllbmNvZGVf
ZnJhbWVfcmVzdWx0OworICBhc3NlcnQoZW5jb2RlX2ZyYW1lX3Jlc3VsdCA9PSBOVUxMKTsKKyNl
bHNlICAvLyBDT05GSUdfUkVBTFRJTUVfT05MWQorICBpZiAoZW5jb2RlX2ZyYW1lX3Jlc3VsdCAh
PSBOVUxMKSB7CisgICAgY29uc3QgaW50IHJlZl9mcmFtZV9mbGFncyA9IGdldF9yZWZfZnJhbWVf
ZmxhZ3MoY3BpKTsKKyAgICBjb25zdCBSZWZDbnRCdWZmZXIgKmNvZGVkX2ZyYW1lX2J1ZiA9Cisg
ICAgICAgIGdldF9yZWZfY250X2J1ZmZlcihjbSwgY20tPm5ld19mYl9pZHgpOworICAgIFJlZkNu
dEJ1ZmZlciAqcmVmX2ZyYW1lX2J1ZnNbTUFYX0lOVEVSX1JFRl9GUkFNRVNdOworICAgIGdldF9y
ZWZfZnJhbWVfYnVmcyhjcGksIHJlZl9mcmFtZV9idWZzKTsKKyAgICAvLyB1cGRhdGVfZW5jb2Rl
X2ZyYW1lX3Jlc3VsdCgpIGRlcGVuZHMgb24gdHdvcGFzcy5nZl9ncm91cC5pbmRleCBhbmQKKyAg
ICAvLyBjbS0+bmV3X2ZiX2lkeCwgY3BpLT5Tb3VyY2UsIGNwaS0+bHN0X2ZiX2lkeCwgY3BpLT5n
bGRfZmJfaWR4IGFuZAorICAgIC8vIGNwaS0+YWx0X2ZiX2lkeCBhcmUgdXBkYXRlZCBmb3IgY3Vy
cmVudCBmcmFtZSBhbmQgaGF2ZQorICAgIC8vIG5vdCBiZWVuIHVwZGF0ZWQgZm9yIHRoZSBuZXh0
IGZyYW1lIHlldC4KKyAgICAvLyBUaGUgdXBkYXRlIGxvY2F0aW9ucyBhcmUgYXMgZm9sbG93cy4K
KyAgICAvLyAxKSB0d29wYXNzLmdmX2dyb3VwLmluZGV4IGlzIGluaXRpYWxpemVkIGF0IGRlZmlu
ZV9nZl9ncm91cCBieSB2cDlfemVybygpCisgICAgLy8gZm9yIHRoZSBmaXJzdCBmcmFtZSBpbiB0
aGUgZ2ZfZ3JvdXAgYW5kIGlzIHVwZGF0ZWQgZm9yIHRoZSBuZXh0IGZyYW1lIGF0CisgICAgLy8g
dnA5X3R3b3Bhc3NfcG9zdGVuY29kZV91cGRhdGUoKS4KKyAgICAvLyAyKSBjcGktPlNvdXJjZSBp
cyB1cGRhdGVkIGF0IHRoZSBiZWdpbm5pbmcgb2YgdnA5X2dldF9jb21wcmVzc2VkX2RhdGEoKQor
ICAgIC8vIDMpIGNtLT5uZXdfZmJfaWR4IGlzIHVwZGF0ZWQgYXQgdGhlIGJlZ2lubmluZyBvZgor
ICAgIC8vIHZwOV9nZXRfY29tcHJlc3NlZF9kYXRhKCkgYnkgZ2V0X2ZyZWVfZmIoY20pLgorICAg
IC8vIDQpIGNwaS0+bHN0X2ZiX2lkeC9nbGRfZmJfaWR4L2FsdF9mYl9pZHggd2lsbCBiZSB1cGRh
dGVkIGZvciB0aGUgbmV4dAorICAgIC8vIGZyYW1lIGF0IHZwOV91cGRhdGVfcmVmZXJlbmNlX2Zy
YW1lcygpLgorICAgIC8vIFRoaXMgZnVuY3Rpb24gbmVlZHMgdG8gYmUgY2FsbGVkIGJlZm9yZSB2
cDlfdXBkYXRlX3JlZmVyZW5jZV9mcmFtZXMoKS4KKyAgICAvLyBUT0RPKGFuZ2llYmlyZCk6IElt
cHJvdmUgdGhlIGNvZGViYXNlIHRvIG1ha2UgdGhlIHVwZGF0ZSBvZiBmcmFtZQorICAgIC8vIGRl
cGVuZGVudCB2YXJpYWJsZXMgbW9yZSByb2J1c3QuCisgICAgdXBkYXRlX2VuY29kZV9mcmFtZV9y
ZXN1bHQoCisgICAgICAgIHJlZl9mcmFtZV9mbGFncywKKyAgICAgICAgY3BpLT50d29wYXNzLmdm
X2dyb3VwLnVwZGF0ZV90eXBlW2NwaS0+dHdvcGFzcy5nZl9ncm91cC5pbmRleF0sCisgICAgICAg
IGNwaS0+U291cmNlLCBjb2RlZF9mcmFtZV9idWYsIHJlZl9mcmFtZV9idWZzLCB2cDlfZ2V0X3F1
YW50aXplcihjcGkpLAorICAgICAgICBjbS0+Yml0X2RlcHRoLCBjcGktPm94Y2YuaW5wdXRfYml0
X2RlcHRoLCBjcGktPnRkLmNvdW50cywKKyNpZiBDT05GSUdfUkFURV9DVFJMCisgICAgICAgIGNw
aS0+cGFydGl0aW9uX2luZm8sIGNwaS0+bW90aW9uX3ZlY3Rvcl9pbmZvLCBjcGktPnRwbF9zdGF0
c19pbmZvLAorI2VuZGlmICAvLyBDT05GSUdfUkFURV9DVFJMCisgICAgICAgIGVuY29kZV9mcmFt
ZV9yZXN1bHQpOworICB9CisjZW5kaWYgIC8vIENPTkZJR19SRUFMVElNRV9PTkxZCisKICAgaWYg
KGNwaS0+cmMudXNlX3Bvc3RfZW5jb2RlX2Ryb3AgJiYgY20tPmJhc2VfcWluZGV4IDwgY3BpLT5y
Yy53b3JzdF9xdWFsaXR5ICYmCiAgICAgICBjcGktPnN2Yy5zcGF0aWFsX2xheWVyX2lkID09IDAg
JiYgcG9zdF9lbmNvZGVfZHJvcF9jYnIoY3BpLCBzaXplKSkgewogICAgIHJlc3RvcmVfY29kaW5n
X2NvbnRleHQoY3BpKTsKQEAgLTUzMDksNiArNTYwNywxNCBAQCBzdGF0aWMgdm9pZCBlbmNvZGVf
ZnJhbWVfdG9fZGF0YV9yYXRlKFZQOV9DT01QICpjcGksIHNpemVfdCAqc2l6ZSwKIAogICB2cDlf
cmNfcG9zdGVuY29kZV91cGRhdGUoY3BpLCAqc2l6ZSk7CiAKKyAgaWYgKG94Y2YtPnBhc3MgPT0g
MCAmJiAhZnJhbWVfaXNfaW50cmFfb25seShjbSkgJiYKKyAgICAgICghY3BpLT51c2Vfc3ZjIHx8
CisgICAgICAgKGNwaS0+dXNlX3N2YyAmJgorICAgICAgICAhY3BpLT5zdmMubGF5ZXJfY29udGV4
dFtjcGktPnN2Yy50ZW1wb3JhbF9sYXllcl9pZF0uaXNfa2V5X2ZyYW1lICYmCisgICAgICAgIGNw
aS0+c3ZjLnNwYXRpYWxfbGF5ZXJfaWQgPT0gY3BpLT5zdmMubnVtYmVyX3NwYXRpYWxfbGF5ZXJz
IC0gMSkpKSB7CisgICAgdnA5X2NvbXB1dGVfZnJhbWVfbG93X21vdGlvbihjcGkpOworICB9CisK
ICAgKnNpemUgPSBWUFhNQVgoMSwgKnNpemUpOwogCiAjaWYgMApAQCAtNTM0MCwxMSArNTY0Niw5
IEBAIHN0YXRpYyB2b2lkIGVuY29kZV9mcmFtZV90b19kYXRhX3JhdGUoVlA5X0NPTVAgKmNwaSwg
c2l6ZV90ICpzaXplLAogCiAgIGlmIChjbS0+c2hvd19mcmFtZSkgewogICAgIHZwOV9zd2FwX21p
X2FuZF9wcmV2X21pKGNtKTsKLSAgICAvLyBEb24ndCBpbmNyZW1lbnQgZnJhbWUgY291bnRlcnMg
aWYgdGhpcyB3YXMgYW4gYWx0cmVmIGJ1ZmZlcgotICAgIC8vIHVwZGF0ZSBub3QgYSByZWFsIGZy
YW1lCi0gICAgKytjbS0+Y3VycmVudF92aWRlb19mcmFtZTsKICAgICBpZiAoY3BpLT51c2Vfc3Zj
KSB2cDlfaW5jX2ZyYW1lX2luX2xheWVyKGNwaSk7CiAgIH0KKyAgdXBkYXRlX2ZyYW1lX2luZGV4
ZXMoY20sIGNtLT5zaG93X2ZyYW1lKTsKIAogICBpZiAoY3BpLT51c2Vfc3ZjKSB7CiAgICAgY3Bp
LT5zdmMKQEAgLTUzNzAsNyArNTY3NCw4IEBAIHN0YXRpYyB2b2lkIGVuY29kZV9mcmFtZV90b19k
YXRhX3JhdGUoVlA5X0NPTVAgKmNwaSwgc2l6ZV90ICpzaXplLAogc3RhdGljIHZvaWQgU3ZjRW5j
b2RlKFZQOV9DT01QICpjcGksIHNpemVfdCAqc2l6ZSwgdWludDhfdCAqZGVzdCwKICAgICAgICAg
ICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgKmZyYW1lX2ZsYWdzKSB7CiAgIHZwOV9yY19nZXRf
c3ZjX3BhcmFtcyhjcGkpOwotICBlbmNvZGVfZnJhbWVfdG9fZGF0YV9yYXRlKGNwaSwgc2l6ZSwg
ZGVzdCwgZnJhbWVfZmxhZ3MpOworICBlbmNvZGVfZnJhbWVfdG9fZGF0YV9yYXRlKGNwaSwgc2l6
ZSwgZGVzdCwgZnJhbWVfZmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyplbmNv
ZGVfZnJhbWVfcmVzdWx0ID0gKi8gTlVMTCk7CiB9CiAKIHN0YXRpYyB2b2lkIFBhc3MwRW5jb2Rl
KFZQOV9DT01QICpjcGksIHNpemVfdCAqc2l6ZSwgdWludDhfdCAqZGVzdCwKQEAgLTUzODAsMTcg
KzU2ODUsMjkgQEAgc3RhdGljIHZvaWQgUGFzczBFbmNvZGUoVlA5X0NPTVAgKmNwaSwgc2l6ZV90
ICpzaXplLCB1aW50OF90ICpkZXN0LAogICB9IGVsc2UgewogICAgIHZwOV9yY19nZXRfb25lX3Bh
c3NfdmJyX3BhcmFtcyhjcGkpOwogICB9Ci0gIGVuY29kZV9mcmFtZV90b19kYXRhX3JhdGUoY3Bp
LCBzaXplLCBkZXN0LCBmcmFtZV9mbGFncyk7CisgIGVuY29kZV9mcmFtZV90b19kYXRhX3JhdGUo
Y3BpLCBzaXplLCBkZXN0LCBmcmFtZV9mbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKmVuY29kZV9mcmFtZV9yZXN1bHQgPSAqLyBOVUxMKTsKIH0KIAogI2lmICFDT05GSUdfUkVB
TFRJTUVfT05MWQogc3RhdGljIHZvaWQgUGFzczJFbmNvZGUoVlA5X0NPTVAgKmNwaSwgc2l6ZV90
ICpzaXplLCB1aW50OF90ICpkZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg
aW50ICpmcmFtZV9mbGFncykgeworICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50
ICpmcmFtZV9mbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgIEVOQ09ERV9GUkFNRV9SRVNV
TFQgKmVuY29kZV9mcmFtZV9yZXN1bHQpIHsKICAgY3BpLT5hbGxvd19lbmNvZGVfYnJlYWtvdXQg
PSBFTkNPREVfQlJFQUtPVVRfRU5BQkxFRDsKKworICBpZiAoY3BpLT5jb21tb24uY3VycmVudF9m
cmFtZV9jb2RpbmdfaW5kZXggPT0gMCkgeworICAgIFZQOV9DT01NT04gKmNtID0gJmNwaS0+Y29t
bW9uOworICAgIGNvbnN0IHZweF9jb2RlY19lcnJfdCBjb2RlY19zdGF0dXMgPSB2cDlfZXh0cmNf
c2VuZF9maXJzdHBhc3Nfc3RhdHMoCisgICAgICAgICZjcGktPmV4dF9yYXRlY3RybCwgJmNwaS0+
dHdvcGFzcy5maXJzdF9wYXNzX2luZm8pOworICAgIGlmIChjb2RlY19zdGF0dXMgIT0gVlBYX0NP
REVDX09LKSB7CisgICAgICB2cHhfaW50ZXJuYWxfZXJyb3IoJmNtLT5lcnJvciwgY29kZWNfc3Rh
dHVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICJ2cDlfZXh0cmNfc2VuZF9maXJzdHBhc3Nf
c3RhdHMoKSBmYWlsZWQiKTsKKyAgICB9CisgIH0KICNpZiBDT05GSUdfTUlTTUFUQ0hfREVCVUcK
ICAgbWlzbWF0Y2hfbW92ZV9mcmFtZV9pZHhfdygpOwogI2VuZGlmCi0gIGVuY29kZV9mcmFtZV90
b19kYXRhX3JhdGUoY3BpLCBzaXplLCBkZXN0LCBmcmFtZV9mbGFncyk7CisgIGVuY29kZV9mcmFt
ZV90b19kYXRhX3JhdGUoY3BpLCBzaXplLCBkZXN0LCBmcmFtZV9mbGFncywgZW5jb2RlX2ZyYW1l
X3Jlc3VsdCk7CiB9CiAjZW5kaWYgIC8vICFDT05GSUdfUkVBTFRJTUVfT05MWQogCkBAIC03MDc4
LDYgKzczOTUsNDggQEAgc3RhdGljIHZvaWQgZnJlZV90cGxfYnVmZmVyKFZQOV9DT01QICpjcGkp
IHsKICAgfQogfQogCisjaWYgQ09ORklHX1JBVEVfQ1RSTAorc3RhdGljIHZvaWQgYWNjdW11bGF0
ZV9mcmFtZV90cGxfc3RhdHMoVlA5X0NPTVAgKmNwaSkgeworICBWUDlfQ09NTU9OICpjb25zdCBj
bSA9ICZjcGktPmNvbW1vbjsKKyAgY29uc3QgR0ZfR1JPVVAgKmdmX2dyb3VwID0gJmNwaS0+dHdv
cGFzcy5nZl9ncm91cDsKKyAgaW50IHNob3dfZnJhbWVfY291bnQgPSAwOworICBpbnQgZnJhbWVf
aWR4OworICAvLyBBY2N1bXVsYXRlIHRwbCBzdGF0cyBmb3IgZWFjaCBmcmFtZSBpbiB0aGUgY3Vy
cmVudCBncm91cCBvZiBwaWN0dXJlLgorICBmb3IgKGZyYW1lX2lkeCA9IDE7IGZyYW1lX2lkeCA8
IGdmX2dyb3VwLT5nZl9ncm91cF9zaXplOyArK2ZyYW1lX2lkeCkgeworICAgIFRwbERlcEZyYW1l
ICp0cGxfZnJhbWUgPSAmY3BpLT50cGxfc3RhdHNbZnJhbWVfaWR4XTsKKyAgICBUcGxEZXBTdGF0
cyAqdHBsX3N0YXRzID0gdHBsX2ZyYW1lLT50cGxfc3RhdHNfcHRyOworICAgIGNvbnN0IGludCB0
cGxfc3RyaWRlID0gdHBsX2ZyYW1lLT5zdHJpZGU7CisgICAgaW50NjRfdCBpbnRyYV9jb3N0X2Jh
c2UgPSAwOworICAgIGludDY0X3QgaW50ZXJfY29zdF9iYXNlID0gMDsKKyAgICBpbnQ2NF90IG1j
X2RlcF9jb3N0X2Jhc2UgPSAwOworICAgIGludDY0X3QgbWNfcmVmX2Nvc3RfYmFzZSA9IDA7Cisg
ICAgaW50NjRfdCBtY19mbG93X2Jhc2UgPSAwOworICAgIGludCByb3csIGNvbDsKKworICAgIGlm
ICghdHBsX2ZyYW1lLT5pc192YWxpZCkgY29udGludWU7CisKKyAgICBmb3IgKHJvdyA9IDA7IHJv
dyA8IGNtLT5taV9yb3dzICYmIHRwbF9mcmFtZS0+aXNfdmFsaWQ7ICsrcm93KSB7CisgICAgICBm
b3IgKGNvbCA9IDA7IGNvbCA8IGNtLT5taV9jb2xzOyArK2NvbCkgeworICAgICAgICBUcGxEZXBT
dGF0cyAqdGhpc19zdGF0cyA9ICZ0cGxfc3RhdHNbcm93ICogdHBsX3N0cmlkZSArIGNvbF07Cisg
ICAgICAgIGludHJhX2Nvc3RfYmFzZSArPSB0aGlzX3N0YXRzLT5pbnRyYV9jb3N0OworICAgICAg
ICBpbnRlcl9jb3N0X2Jhc2UgKz0gdGhpc19zdGF0cy0+aW50ZXJfY29zdDsKKyAgICAgICAgbWNf
ZGVwX2Nvc3RfYmFzZSArPSB0aGlzX3N0YXRzLT5tY19kZXBfY29zdDsKKyAgICAgICAgbWNfcmVm
X2Nvc3RfYmFzZSArPSB0aGlzX3N0YXRzLT5tY19yZWZfY29zdDsKKyAgICAgICAgbWNfZmxvd19i
YXNlICs9IHRoaXNfc3RhdHMtPm1jX2Zsb3c7CisgICAgICB9CisgICAgfQorCisgICAgY3BpLT50
cGxfc3RhdHNfaW5mb1tzaG93X2ZyYW1lX2NvdW50XS5pbnRyYV9jb3N0ID0gaW50cmFfY29zdF9i
YXNlOworICAgIGNwaS0+dHBsX3N0YXRzX2luZm9bc2hvd19mcmFtZV9jb3VudF0uaW50ZXJfY29z
dCA9IGludGVyX2Nvc3RfYmFzZTsKKyAgICBjcGktPnRwbF9zdGF0c19pbmZvW3Nob3dfZnJhbWVf
Y291bnRdLm1jX2RlcF9jb3N0ID0gbWNfZGVwX2Nvc3RfYmFzZTsKKyAgICBjcGktPnRwbF9zdGF0
c19pbmZvW3Nob3dfZnJhbWVfY291bnRdLm1jX3JlZl9jb3N0ID0gbWNfcmVmX2Nvc3RfYmFzZTsK
KyAgICBjcGktPnRwbF9zdGF0c19pbmZvW3Nob3dfZnJhbWVfY291bnRdLm1jX2Zsb3cgPSBtY19m
bG93X2Jhc2U7CisKKyAgICArK3Nob3dfZnJhbWVfY291bnQ7CisgIH0KK30KKyNlbmRpZiAgLy8g
Q09ORklHX1JBVEVfQ1RSTAorCiBzdGF0aWMgdm9pZCBzZXR1cF90cGxfc3RhdHMoVlA5X0NPTVAg
KmNwaSkgewogICBHRl9QSUNUVVJFIGdmX3BpY3R1cmVbTUFYX0FSRl9HT1BfU0laRV07CiAgIGNv
bnN0IEdGX0dST1VQICpnZl9ncm91cCA9ICZjcGktPnR3b3Bhc3MuZ2ZfZ3JvdXA7CkBAIC03MTAw
LDYgKzc0NTksMzQgQEAgc3RhdGljIHZvaWQgc2V0dXBfdHBsX3N0YXRzKFZQOV9DT01QICpjcGkp
IHsKICAgZHVtcF90cGxfc3RhdHMoY3BpLCB0cGxfZ3JvdXBfZnJhbWVzLCBnZl9ncm91cCwgZ2Zf
cGljdHVyZSwgY3BpLT50cGxfYnNpemUpOwogI2VuZGlmICAvLyBEVU1QX1RQTF9TVEFUUwogI2Vu
ZGlmICAvLyBDT05GSUdfTk9OX0dSRUVEWV9NVgorCisjaWYgQ09ORklHX1JBVEVfQ1RSTAorICBh
Y2N1bXVsYXRlX2ZyYW1lX3RwbF9zdGF0cyhjcGkpOworI2VuZGlmICAvLyBDT05GSUdfUkFURV9D
VFJMCit9CisKK3ZvaWQgdnA5X2dldF9yZWZfZnJhbWVfaW5mbyhGUkFNRV9VUERBVEVfVFlQRSB1
cGRhdGVfdHlwZSwgaW50IHJlZl9mcmFtZV9mbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBSZWZDbnRCdWZmZXIgKnJlZl9mcmFtZV9idWZzW01BWF9JTlRFUl9SRUZfRlJBTUVTXSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnJlZl9mcmFtZV9jb2RpbmdfaW5kZXhl
cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnJlZl9mcmFtZV92YWxpZF9saXN0
KSB7CisgIGlmICh1cGRhdGVfdHlwZSAhPSBLRl9VUERBVEUpIHsKKyAgICBjb25zdCBWUDlfUkVG
RlJBTUUgaW50ZXJfcmVmX2ZsYWdzW01BWF9JTlRFUl9SRUZfRlJBTUVTXSA9IHsgVlA5X0xBU1Rf
RkxBRywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgVlA5X0dPTERfRkxBRywKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVlA5X0FMVF9GTEFHIH07Cisg
ICAgaW50IGk7CisgICAgZm9yIChpID0gMDsgaSA8IE1BWF9JTlRFUl9SRUZfRlJBTUVTOyArK2kp
IHsKKyAgICAgIGFzc2VydChyZWZfZnJhbWVfYnVmc1tpXSAhPSBOVUxMKTsKKyAgICAgIHJlZl9m
cmFtZV9jb2RpbmdfaW5kZXhlc1tpXSA9IHJlZl9mcmFtZV9idWZzW2ldLT5mcmFtZV9jb2Rpbmdf
aW5kZXg7CisgICAgICByZWZfZnJhbWVfdmFsaWRfbGlzdFtpXSA9IChyZWZfZnJhbWVfZmxhZ3Mg
JiBpbnRlcl9yZWZfZmxhZ3NbaV0pICE9IDA7CisgICAgfQorICB9IGVsc2UgeworICAgIC8vIE5v
IHJlZmVyZW5jZSBmcmFtZSBpcyBhdmFpbGFibGUgd2hlbiB0aGlzIGlzIGEga2V5IGZyYW1lLgor
ICAgIGludCBpOworICAgIGZvciAoaSA9IDA7IGkgPCBNQVhfSU5URVJfUkVGX0ZSQU1FUzsgKytp
KSB7CisgICAgICByZWZfZnJhbWVfY29kaW5nX2luZGV4ZXNbaV0gPSAtMTsKKyAgICAgIHJlZl9m
cmFtZV92YWxpZF9saXN0W2ldID0gMDsKKyAgICB9CisgIH0KIH0KIAogI2lmICFDT05GSUdfUkVB
TFRJTUVfT05MWQpAQCAtNzI1MSw0MSArNzYzOCw1MiBAQCBzdGF0aWMgdm9pZCB5djEyX2J1ZmZl
cl90b19pbWFnZV9idWZmZXIoY29uc3QgWVYxMl9CVUZGRVJfQ09ORklHICp5djEyX2J1ZmZlciwK
ICNlbmRpZiAgLy8gQ09ORklHX1JBVEVfQ1RSTAogCiBzdGF0aWMgdm9pZCB1cGRhdGVfZW5jb2Rl
X2ZyYW1lX3Jlc3VsdCgKLSAgICBpbnQgc2hvd19pZHgsIEZSQU1FX1VQREFURV9UWVBFIHVwZGF0
ZV90eXBlLAotICAgIGNvbnN0IFlWMTJfQlVGRkVSX0NPTkZJRyAqc291cmNlX2ZyYW1lLAotICAg
IGNvbnN0IFlWMTJfQlVGRkVSX0NPTkZJRyAqY29kZWRfZnJhbWUsIGludCBxdWFudGl6ZV9pbmRl
eCwKKyAgICBpbnQgcmVmX2ZyYW1lX2ZsYWdzLCBGUkFNRV9VUERBVEVfVFlQRSB1cGRhdGVfdHlw
ZSwKKyAgICBjb25zdCBZVjEyX0JVRkZFUl9DT05GSUcgKnNvdXJjZV9mcmFtZSwgY29uc3QgUmVm
Q250QnVmZmVyICpjb2RlZF9mcmFtZV9idWYsCisgICAgUmVmQ250QnVmZmVyICpyZWZfZnJhbWVf
YnVmc1tNQVhfSU5URVJfUkVGX0ZSQU1FU10sIGludCBxdWFudGl6ZV9pbmRleCwKICAgICB1aW50
MzJfdCBiaXRfZGVwdGgsIHVpbnQzMl90IGlucHV0X2JpdF9kZXB0aCwgY29uc3QgRlJBTUVfQ09V
TlRTICpjb3VudHMsCiAjaWYgQ09ORklHX1JBVEVfQ1RSTAogICAgIGNvbnN0IFBBUlRJVElPTl9J
TkZPICpwYXJ0aXRpb25faW5mbywKICAgICBjb25zdCBNT1RJT05fVkVDVE9SX0lORk8gKm1vdGlv
bl92ZWN0b3JfaW5mbywKKyAgICBjb25zdCBUcGxEZXBTdGF0cyAqdHBsX3N0YXRzX2luZm8sCiAj
ZW5kaWYgIC8vIENPTkZJR19SQVRFX0NUUkwKICAgICBFTkNPREVfRlJBTUVfUkVTVUxUICplbmNv
ZGVfZnJhbWVfcmVzdWx0KSB7CiAjaWYgQ09ORklHX1JBVEVfQ1RSTAogICBQU05SX1NUQVRTIHBz
bnI7CiAjaWYgQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKLSAgdnB4X2NhbGNfaGlnaGJkX3BzbnIo
c291cmNlX2ZyYW1lLCBjb2RlZF9mcmFtZSwgJnBzbnIsIGJpdF9kZXB0aCwKKyAgdnB4X2NhbGNf
aGlnaGJkX3BzbnIoc291cmNlX2ZyYW1lLCAmY29kZWRfZnJhbWVfYnVmLT5idWYsICZwc25yLCBi
aXRfZGVwdGgsCiAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0X2JpdF9kZXB0aCk7CiAjZWxz
ZSAgIC8vIENPTkZJR19WUDlfSElHSEJJVERFUFRICiAgICh2b2lkKWJpdF9kZXB0aDsKICAgKHZv
aWQpaW5wdXRfYml0X2RlcHRoOwotICB2cHhfY2FsY19wc25yKHNvdXJjZV9mcmFtZSwgY29kZWRf
ZnJhbWUsICZwc25yKTsKKyAgdnB4X2NhbGNfcHNucihzb3VyY2VfZnJhbWUsICZjb2RlZF9mcmFt
ZV9idWYtPmJ1ZiwgJnBzbnIpOwogI2VuZGlmICAvLyBDT05GSUdfVlA5X0hJR0hCSVRERVBUSAor
ICBlbmNvZGVfZnJhbWVfcmVzdWx0LT5mcmFtZV9jb2RpbmdfaW5kZXggPSBjb2RlZF9mcmFtZV9i
dWYtPmZyYW1lX2NvZGluZ19pbmRleDsKKworICB2cDlfZ2V0X3JlZl9mcmFtZV9pbmZvKHVwZGF0
ZV90eXBlLCByZWZfZnJhbWVfZmxhZ3MsIHJlZl9mcmFtZV9idWZzLAorICAgICAgICAgICAgICAg
ICAgICAgICAgIGVuY29kZV9mcmFtZV9yZXN1bHQtPnJlZl9mcmFtZV9jb2RpbmdfaW5kZXhlcywK
KyAgICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGVfZnJhbWVfcmVzdWx0LT5yZWZfZnJhbWVf
dmFsaWRfbGlzdCk7CisKICAgZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+cHNuciA9IHBzbnIucHNuclsw
XTsKICAgZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+c3NlID0gcHNuci5zc2VbMF07CiAgIGNvcHlfZnJh
bWVfY291bnRzKGNvdW50cywgJmVuY29kZV9mcmFtZV9yZXN1bHQtPmZyYW1lX2NvdW50cyk7CiAg
IGVuY29kZV9mcmFtZV9yZXN1bHQtPnBhcnRpdGlvbl9pbmZvID0gcGFydGl0aW9uX2luZm87CiAg
IGVuY29kZV9mcmFtZV9yZXN1bHQtPm1vdGlvbl92ZWN0b3JfaW5mbyA9IG1vdGlvbl92ZWN0b3Jf
aW5mbzsKKyAgZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+dHBsX3N0YXRzX2luZm8gPSB0cGxfc3RhdHNf
aW5mbzsKICAgaWYgKGVuY29kZV9mcmFtZV9yZXN1bHQtPmNvZGVkX2ZyYW1lLmFsbG9jYXRlZCkg
ewotICAgIHl2MTJfYnVmZmVyX3RvX2ltYWdlX2J1ZmZlcihjb2RlZF9mcmFtZSwgJmVuY29kZV9m
cmFtZV9yZXN1bHQtPmNvZGVkX2ZyYW1lKTsKKyAgICB5djEyX2J1ZmZlcl90b19pbWFnZV9idWZm
ZXIoJmNvZGVkX2ZyYW1lX2J1Zi0+YnVmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAmZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+Y29kZWRfZnJhbWUpOwogICB9CiAjZWxzZSAgIC8vIENP
TkZJR19SQVRFX0NUUkwKKyAgKHZvaWQpcmVmX2ZyYW1lX2ZsYWdzOwogICAodm9pZCliaXRfZGVw
dGg7CiAgICh2b2lkKWlucHV0X2JpdF9kZXB0aDsKICAgKHZvaWQpc291cmNlX2ZyYW1lOwotICAo
dm9pZCljb2RlZF9mcmFtZTsKKyAgKHZvaWQpY29kZWRfZnJhbWVfYnVmOworICAodm9pZClyZWZf
ZnJhbWVfYnVmczsKICAgKHZvaWQpY291bnRzOwogI2VuZGlmICAvLyBDT05GSUdfUkFURV9DVFJM
Ci0gIGVuY29kZV9mcmFtZV9yZXN1bHQtPnNob3dfaWR4ID0gc2hvd19pZHg7CisgIGVuY29kZV9m
cmFtZV9yZXN1bHQtPnNob3dfaWR4ID0gY29kZWRfZnJhbWVfYnVmLT5mcmFtZV9pbmRleDsKICAg
ZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+dXBkYXRlX3R5cGUgPSB1cGRhdGVfdHlwZTsKICAgZW5jb2Rl
X2ZyYW1lX3Jlc3VsdC0+cXVhbnRpemVfaW5kZXggPSBxdWFudGl6ZV9pbmRleDsKIH0KQEAgLTcy
OTQsOCArNzY5MiwxMCBAQCBzdGF0aWMgdm9pZCB1cGRhdGVfZW5jb2RlX2ZyYW1lX3Jlc3VsdCgK
IHZvaWQgdnA5X2luaXRfZW5jb2RlX2ZyYW1lX3Jlc3VsdChFTkNPREVfRlJBTUVfUkVTVUxUICpl
bmNvZGVfZnJhbWVfcmVzdWx0KSB7CiAgIGVuY29kZV9mcmFtZV9yZXN1bHQtPnNob3dfaWR4ID0g
LTE7ICAvLyBBY3R1YWwgZW5jb2RpbmcgZG9lc24ndCBoYXBwZW4uCiAjaWYgQ09ORklHX1JBVEVf
Q1RSTAorICBlbmNvZGVfZnJhbWVfcmVzdWx0LT5mcmFtZV9jb2RpbmdfaW5kZXggPSAtMTsKICAg
dnA5X3plcm8oZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+Y29kZWRfZnJhbWUpOwogICBlbmNvZGVfZnJh
bWVfcmVzdWx0LT5jb2RlZF9mcmFtZS5hbGxvY2F0ZWQgPSAwOworICBpbml0X3JxX2hpc3Rvcnko
JmVuY29kZV9mcmFtZV9yZXN1bHQtPnJxX2hpc3RvcnkpOwogI2VuZGlmICAvLyBDT05GSUdfUkFU
RV9DVFJMCiB9CiAKQEAgLTc0ODIsOSArNzg4MiwxMiBAQCBpbnQgdnA5X2dldF9jb21wcmVzc2Vk
X2RhdGEoVlA5X0NPTVAgKmNwaSwgdW5zaWduZWQgaW50ICpmcmFtZV9mbGFncywKICAgY20tPm5l
d19mYl9pZHggPSBnZXRfZnJlZV9mYihjbSk7CiAKICAgaWYgKGNtLT5uZXdfZmJfaWR4ID09IElO
VkFMSURfSURYKSByZXR1cm4gLTE7Ci0KICAgY20tPmN1cl9mcmFtZSA9ICZwb29sLT5mcmFtZV9i
dWZzW2NtLT5uZXdfZmJfaWR4XTsKLQorICAvLyBJZiB0aGUgZnJhbWUgYnVmZmVyIGZvciBjdXJy
ZW50IGZyYW1lIGlzIHRoZSBzYW1lIGFzIHByZXZpb3VzIGZyYW1lLCBNViBpbgorICAvLyB0aGUg
YmFzZSBsYXllciBzaG91bGRuJ3QgYmUgdXNlZCBhcyBpdCdsbCBjYXVzZSBkYXRhIHJhY2UuCisg
IGlmIChjcGktPnN2Yy5zcGF0aWFsX2xheWVyX2lkID4gMCAmJiBjbS0+Y3VyX2ZyYW1lID09IGNt
LT5wcmV2X2ZyYW1lKSB7CisgICAgY3BpLT5zdmMudXNlX2Jhc2VfbXYgPSAwOworICB9CiAgIC8v
IFN0YXJ0IHdpdGggYSAwIHNpemUgZnJhbWUuCiAgICpzaXplID0gMDsKIApAQCAtNzU3NSwyOSAr
Nzk3OCw3IEBAIGludCB2cDlfZ2V0X2NvbXByZXNzZWRfZGF0YShWUDlfQ09NUCAqY3BpLCB1bnNp
Z25lZCBpbnQgKmZyYW1lX2ZsYWdzLAogICAgIGNwaS0+dGQubWIuaW52X3R4Zm1fYWRkID0gbG9z
c2xlc3MgPyB2cDlfaXdodDR4NF9hZGQgOiB2cDlfaWRjdDR4NF9hZGQ7CiAgICAgdnA5X2ZpcnN0
X3Bhc3MoY3BpLCBzb3VyY2UpOwogICB9IGVsc2UgaWYgKG94Y2YtPnBhc3MgPT0gMiAmJiAhY3Bp
LT51c2Vfc3ZjKSB7Ci0gICAgUGFzczJFbmNvZGUoY3BpLCBzaXplLCBkZXN0LCBmcmFtZV9mbGFn
cyk7Ci0gICAgLy8gdXBkYXRlX2VuY29kZV9mcmFtZV9yZXN1bHQoKSBkZXBlbmRzIG9uIHR3b3Bh
c3MuZ2ZfZ3JvdXAuaW5kZXggYW5kCi0gICAgLy8gY20tPm5ld19mYl9pZHggYW5kIGNwaS0+U291
cmNlIGFyZSB1cGRhdGVkIGZvciBjdXJyZW50IHByb3Blcmx5IGFuZCBoYXZlCi0gICAgLy8gbm90
IGJlZW4gdXBkYXRlZCBmb3IgdGhlIG5leHQgZnJhbWUgeWV0LgotICAgIC8vIFRoZSB1cGRhdGUg
bG9jYXRpb25zIGFyZSBhcyBmb2xsb3dzLgotICAgIC8vIDEpIHR3b3Bhc3MuZ2ZfZ3JvdXAuaW5k
ZXggaXMgaW5pdGlhbGl6ZWQgYXQgZGVmaW5lX2dmX2dyb3VwIGJ5IHZwOV96ZXJvKCkKLSAgICAv
LyBmb3IgdGhlIGZpcnN0IGZyYW1lIGluIHRoZSBnZl9ncm91cCBhbmQgaXMgdXBkYXRlZCBmb3Ig
dGhlIG5leHQgZnJhbWUgYXQKLSAgICAvLyB2cDlfdHdvcGFzc19wb3N0ZW5jb2RlX3VwZGF0ZSgp
LgotICAgIC8vIDIpIGNwaS0+U291cmNlIGlzIHVwZGF0ZWQgYXQgdGhlIGJlZ2lubmluZyBvZiB0
aGlzIGZ1bmN0aW9uLCBpLmUuCi0gICAgLy8gdnA5X2dldF9jb21wcmVzc2VkX2RhdGEoKQotICAg
IC8vIDMpIGNtLT5uZXdfZmJfaWR4IGlzIHVwZGF0ZWQgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGlz
IGZ1bmN0aW9uIGJ5Ci0gICAgLy8gZ2V0X2ZyZWVfZmIoY20pCi0gICAgLy8gVE9ETyhhbmdpZWJp
cmQpOiBJbXByb3ZlIHRoZSBjb2RlYmFzZSB0byBtYWtlIHRoZSB1cGRhdGUgb2YgZnJhbWUKLSAg
ICAvLyBkZXBlbmRlbnQgdmFyaWFibGVzIG1vcmUgcm9idXN0LgotICAgIHVwZGF0ZV9lbmNvZGVf
ZnJhbWVfcmVzdWx0KAotICAgICAgICBzb3VyY2UtPnNob3dfaWR4LAotICAgICAgICBjcGktPnR3
b3Bhc3MuZ2ZfZ3JvdXAudXBkYXRlX3R5cGVbY3BpLT50d29wYXNzLmdmX2dyb3VwLmluZGV4XSwK
LSAgICAgICAgY3BpLT5Tb3VyY2UsIGdldF9mcmFtZV9uZXdfYnVmZmVyKGNtKSwgdnA5X2dldF9x
dWFudGl6ZXIoY3BpKSwKLSAgICAgICAgY3BpLT5veGNmLmlucHV0X2JpdF9kZXB0aCwgY20tPmJp
dF9kZXB0aCwgY3BpLT50ZC5jb3VudHMsCi0jaWYgQ09ORklHX1JBVEVfQ1RSTAotICAgICAgICBj
cGktPnBhcnRpdGlvbl9pbmZvLCBjcGktPm1vdGlvbl92ZWN0b3JfaW5mbywKLSNlbmRpZiAgLy8g
Q09ORklHX1JBVEVfQ1RSTAotICAgICAgICBlbmNvZGVfZnJhbWVfcmVzdWx0KTsKKyAgICBQYXNz
MkVuY29kZShjcGksIHNpemUsIGRlc3QsIGZyYW1lX2ZsYWdzLCBlbmNvZGVfZnJhbWVfcmVzdWx0
KTsKICAgICB2cDlfdHdvcGFzc19wb3N0ZW5jb2RlX3VwZGF0ZShjcGkpOwogICB9IGVsc2UgaWYg
KGNwaS0+dXNlX3N2YykgewogICAgIFN2Y0VuY29kZShjcGksIHNpemUsIGRlc3QsIGZyYW1lX2Zs
YWdzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuaCBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2VuY29kZXIuaAppbmRleCA4YjRjNmE1NzllYmRm
MTI1NGIzNGNiMzM5OTE0N2Y4NTNlZjQ2MTkzLi44NzYzYTVlNzg5NzRmMzM2NDI5OTA1NWU4N2Yy
Y2ZkMDQzYjA0ZmJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9lbmNv
ZGVyLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZW5jb2Rlci5oCkBAIC0xNSw2
ICsxNSw3IEBACiAKICNpbmNsdWRlICIuL3ZweF9jb25maWcuaCIKICNpbmNsdWRlICJ2cHgvaW50
ZXJuYWwvdnB4X2NvZGVjX2ludGVybmFsLmgiCisjaW5jbHVkZSAidnB4L3ZweF9leHRfcmF0ZWN0
cmwuaCIKICNpbmNsdWRlICJ2cHgvdnA4Y3guaCIKICNpZiBDT05GSUdfSU5URVJOQUxfU1RBVFMK
ICNpbmNsdWRlICJ2cHhfZHNwL3NzaW0uaCIKQEAgLTM4LDYgKzM5LDcgQEAKICNpbmNsdWRlICJ2
cDkvZW5jb2Rlci92cDlfY29udGV4dF90cmVlLmgiCiAjaW5jbHVkZSAidnA5L2VuY29kZXIvdnA5
X2VuY29kZW1iLmgiCiAjaW5jbHVkZSAidnA5L2VuY29kZXIvdnA5X2V0aHJlYWQuaCIKKyNpbmNs
dWRlICJ2cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmgiCiAjaW5jbHVkZSAidnA5L2VuY29k
ZXIvdnA5X2ZpcnN0cGFzcy5oIgogI2luY2x1ZGUgInZwOS9lbmNvZGVyL3ZwOV9qb2JfcXVldWUu
aCIKICNpbmNsdWRlICJ2cDkvZW5jb2Rlci92cDlfbG9va2FoZWFkLmgiCkBAIC0xNDcsNiArMTQ5
LDEyIEBAIHR5cGVkZWYgZW51bSB7CiAgIGtWZXJ5SGlnaFNhZCA9IDYsCiB9IENPTlRFTlRfU1RB
VEVfU0I7CiAKK3R5cGVkZWYgZW51bSB7CisgIExPT1BGSUxURVJfQUxMID0gMCwKKyAgTE9PUEZJ
TFRFUl9SRUZFUkVOQ0UgPSAxLCAgLy8gRGlzYWJsZSBsb29wZmlsdGVyIG9uIG5vbiByZWZlcmVu
Y2UgZnJhbWVzLgorICBOT19MT09QRklMVEVSID0gMiwgICAgICAgICAvLyBEaXNhYmxlIGxvb3Bm
aWx0ZXIgb24gYWxsIGZyYW1lcy4KK30gTE9PUEZJTFRFUl9DT05UUk9MOworCiB0eXBlZGVmIHN0
cnVjdCBWUDlFbmNvZGVyQ29uZmlnIHsKICAgQklUU1RSRUFNX1BST0ZJTEUgcHJvZmlsZTsKICAg
dnB4X2JpdF9kZXB0aF90IGJpdF9kZXB0aDsgICAgIC8vIENvZGVjIGJpdC1kZXB0aC4KQEAgLTUz
MiwyNCArNTQwLDgzIEBAIHR5cGVkZWYgc3RydWN0IE1PVElPTl9WRUNUT1JfSU5GTyB7CiAgIGlu
dF9tdiBtdlsyXTsKIH0gTU9USU9OX1ZFQ1RPUl9JTkZPOwogCit0eXBlZGVmIHN0cnVjdCBHT1Bf
Q09NTUFORCB7CisgIGludCB1c2U7ICAvLyB1c2UgdGhpcyBjb21tYW5kIHRvIHNldCBnb3Agb3Ig
bm90LiBJZiBub3QsIHVzZSB2cDkncyBkZWNpc2lvbi4KKyAgaW50IHNob3dfZnJhbWVfY291bnQ7
CisgIGludCB1c2VfYWx0X3JlZjsKK30gR09QX0NPTU1BTkQ7CisKK3N0YXRpYyBJTkxJTkUgdm9p
ZCBnb3BfY29tbWFuZF9vbihHT1BfQ09NTUFORCAqZ29wX2NvbW1hbmQsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaW50IHNob3dfZnJhbWVfY291bnQsIGludCB1c2VfYWx0X3Jl
ZikgeworICBnb3BfY29tbWFuZC0+dXNlID0gMTsKKyAgZ29wX2NvbW1hbmQtPnNob3dfZnJhbWVf
Y291bnQgPSBzaG93X2ZyYW1lX2NvdW50OworICBnb3BfY29tbWFuZC0+dXNlX2FsdF9yZWYgPSB1
c2VfYWx0X3JlZjsKK30KKworc3RhdGljIElOTElORSB2b2lkIGdvcF9jb21tYW5kX29mZihHT1Bf
Q09NTUFORCAqZ29wX2NvbW1hbmQpIHsKKyAgZ29wX2NvbW1hbmQtPnVzZSA9IDA7CisgIGdvcF9j
b21tYW5kLT5zaG93X2ZyYW1lX2NvdW50ID0gMDsKKyAgZ29wX2NvbW1hbmQtPnVzZV9hbHRfcmVm
ID0gMDsKK30KKworc3RhdGljIElOTElORSBpbnQgZ29wX2NvbW1hbmRfY29kaW5nX2ZyYW1lX2Nv
dW50KAorICAgIGNvbnN0IEdPUF9DT01NQU5EICpnb3BfY29tbWFuZCkgeworICBpZiAoZ29wX2Nv
bW1hbmQtPnVzZSA9PSAwKSB7CisgICAgYXNzZXJ0KDApOworICAgIHJldHVybiAtMTsKKyAgfQor
ICByZXR1cm4gZ29wX2NvbW1hbmQtPnNob3dfZnJhbWVfY291bnQgKyBnb3BfY29tbWFuZC0+dXNl
X2FsdF9yZWY7Cit9CisKKy8vIFRPRE8oYW5naWViaXJkKTogU2VlIGlmIHdlIGNhbiBtZXJnZSB0
aGlzIG9uZSB3aXRoIEZyYW1lVHlwZSBpbgorLy8gc2ltcGxlX2VuY29kZS5oCit0eXBlZGVmIGVu
dW0gRU5DT0RFX0ZSQU1FX1RZUEUgeworICBFTkNPREVfRlJBTUVfVFlQRV9LRVksCisgIEVOQ09E
RV9GUkFNRV9UWVBFX0lOVEVSLAorICBFTkNPREVfRlJBTUVfVFlQRV9BTFRSRUYsCisgIEVOQ09E
RV9GUkFNRV9UWVBFX09WRVJMQVksCisgIEVOQ09ERV9GUkFNRV9UWVBFX0dPTERFTiwKKyAgRU5D
T0RFX0ZSQU1FX1RZUEVTLAorfSBFTkNPREVfRlJBTUVfVFlQRTsKKworLy8gVE9ETyhhbmdpZWJp
cmQpOiBNZXJnZSB0aGlzIGZ1bmN0aW9uIHdpdGggZ2V0X2ZyYW1lX3R5cGVfZnJvbV91cGRhdGVf
dHlwZSgpCitzdGF0aWMgSU5MSU5FIEVOQ09ERV9GUkFNRV9UWVBFCitnZXRfZW5jb2RlX2ZyYW1l
X3R5cGUoRlJBTUVfVVBEQVRFX1RZUEUgdXBkYXRlX3R5cGUpIHsKKyAgc3dpdGNoICh1cGRhdGVf
dHlwZSkgeworICAgIGNhc2UgS0ZfVVBEQVRFOiByZXR1cm4gRU5DT0RFX0ZSQU1FX1RZUEVfS0VZ
OworICAgIGNhc2UgQVJGX1VQREFURTogcmV0dXJuIEVOQ09ERV9GUkFNRV9UWVBFX0FMVFJFRjsK
KyAgICBjYXNlIEdGX1VQREFURTogcmV0dXJuIEVOQ09ERV9GUkFNRV9UWVBFX0dPTERFTjsKKyAg
ICBjYXNlIE9WRVJMQVlfVVBEQVRFOiByZXR1cm4gRU5DT0RFX0ZSQU1FX1RZUEVfT1ZFUkxBWTsK
KyAgICBjYXNlIExGX1VQREFURTogcmV0dXJuIEVOQ09ERV9GUkFNRV9UWVBFX0lOVEVSOworICAg
IGRlZmF1bHQ6CisgICAgICBmcHJpbnRmKHN0ZGVyciwgIlVuc3VwcG9ydGVkIHVwZGF0ZV90eXBl
ICVkXG4iLCB1cGRhdGVfdHlwZSk7CisgICAgICBhYm9ydCgpOworICAgICAgcmV0dXJuIEVOQ09E
RV9GUkFNRV9UWVBFX0lOVEVSOworICB9Cit9CisKK3R5cGVkZWYgc3RydWN0IFJBVEVfUVNURVBf
TU9ERUwgeworICAvLyBUaGUgcnEgbW9kZWwgcHJlZGljdHMgdGhlIGJpdCB1c2FnZSBhcyBmb2xs
b3dzLgorICAvLyByYXRlID0gYmlhcyAtIHJhdGlvICogbG9nMihxX3N0ZXApCisgIGludCByZWFk
eTsKKyAgZG91YmxlIGJpYXM7CisgIGRvdWJsZSByYXRpbzsKK30gUkFURV9RU1RFUF9NT0RFTDsK
KwogdHlwZWRlZiBzdHJ1Y3QgRU5DT0RFX0NPTU1BTkQgewogICBpbnQgdXNlX2V4dGVybmFsX3F1
YW50aXplX2luZGV4OwogICBpbnQgZXh0ZXJuYWxfcXVhbnRpemVfaW5kZXg7Ci0gIC8vIEEgbGlz
dCBvZiBiaW5hcnkgZmxhZ3Mgc2V0IGZyb20gdGhlIGV4dGVybmFsIGNvbnRyb2xsZXIuCi0gIC8v
IEVhY2ggYmluYXJ5IGZsYWcgaW5kaWNhdGVzIHdoZXRoZXIgdGhlIGZyYW1lIGlzIGFuIGFyZiBv
ciBub3QuCi0gIGNvbnN0IGludCAqZXh0ZXJuYWxfYXJmX2luZGV4ZXM7Ci19IEVOQ09ERV9DT01N
QU5EOwogCi1zdGF0aWMgSU5MSU5FIHZvaWQgZW5jb2RlX2NvbW1hbmRfaW5pdChFTkNPREVfQ09N
TUFORCAqZW5jb2RlX2NvbW1hbmQpIHsKLSAgdnA5X3plcm8oKmVuY29kZV9jb21tYW5kKTsKLSAg
ZW5jb2RlX2NvbW1hbmQtPnVzZV9leHRlcm5hbF9xdWFudGl6ZV9pbmRleCA9IDA7Ci0gIGVuY29k
ZV9jb21tYW5kLT5leHRlcm5hbF9xdWFudGl6ZV9pbmRleCA9IC0xOwotICBlbmNvZGVfY29tbWFu
ZC0+ZXh0ZXJuYWxfYXJmX2luZGV4ZXMgPSBOVUxMOwotfQorICBpbnQgdXNlX2V4dGVybmFsX3Rh
cmdldF9mcmFtZV9iaXRzOworICBpbnQgdGFyZ2V0X2ZyYW1lX2JpdHM7CisgIGRvdWJsZSB0YXJn
ZXRfZnJhbWVfYml0c19lcnJvcl9wZXJjZW50OworCisgIEdPUF9DT01NQU5EIGdvcF9jb21tYW5k
OworfSBFTkNPREVfQ09NTUFORDsKIAotc3RhdGljIElOTElORSB2b2lkIGVuY29kZV9jb21tYW5k
X3NldF9leHRlcm5hbF9hcmZfaW5kZXhlcygKLSAgICBFTkNPREVfQ09NTUFORCAqZW5jb2RlX2Nv
bW1hbmQsIGNvbnN0IGludCAqZXh0ZXJuYWxfYXJmX2luZGV4ZXMpIHsKLSAgZW5jb2RlX2NvbW1h
bmQtPmV4dGVybmFsX2FyZl9pbmRleGVzID0gZXh0ZXJuYWxfYXJmX2luZGV4ZXM7CitzdGF0aWMg
SU5MSU5FIHZvaWQgZW5jb2RlX2NvbW1hbmRfc2V0X2dvcF9jb21tYW5kKAorICAgIEVOQ09ERV9D
T01NQU5EICplbmNvZGVfY29tbWFuZCwgR09QX0NPTU1BTkQgZ29wX2NvbW1hbmQpIHsKKyAgZW5j
b2RlX2NvbW1hbmQtPmdvcF9jb21tYW5kID0gZ29wX2NvbW1hbmQ7CiB9CiAKIHN0YXRpYyBJTkxJ
TkUgdm9pZCBlbmNvZGVfY29tbWFuZF9zZXRfZXh0ZXJuYWxfcXVhbnRpemVfaW5kZXgoCkBAIC01
NjQsOSArNjMxLDM1IEBAIHN0YXRpYyBJTkxJTkUgdm9pZCBlbmNvZGVfY29tbWFuZF9yZXNldF9l
eHRlcm5hbF9xdWFudGl6ZV9pbmRleCgKICAgZW5jb2RlX2NvbW1hbmQtPmV4dGVybmFsX3F1YW50
aXplX2luZGV4ID0gLTE7CiB9CiAKK3N0YXRpYyBJTkxJTkUgdm9pZCBlbmNvZGVfY29tbWFuZF9z
ZXRfdGFyZ2V0X2ZyYW1lX2JpdHMoCisgICAgRU5DT0RFX0NPTU1BTkQgKmVuY29kZV9jb21tYW5k
LCBpbnQgdGFyZ2V0X2ZyYW1lX2JpdHMsCisgICAgZG91YmxlIHRhcmdldF9mcmFtZV9iaXRzX2Vy
cm9yX3BlcmNlbnQpIHsKKyAgZW5jb2RlX2NvbW1hbmQtPnVzZV9leHRlcm5hbF90YXJnZXRfZnJh
bWVfYml0cyA9IDE7CisgIGVuY29kZV9jb21tYW5kLT50YXJnZXRfZnJhbWVfYml0cyA9IHRhcmdl
dF9mcmFtZV9iaXRzOworICBlbmNvZGVfY29tbWFuZC0+dGFyZ2V0X2ZyYW1lX2JpdHNfZXJyb3Jf
cGVyY2VudCA9CisgICAgICB0YXJnZXRfZnJhbWVfYml0c19lcnJvcl9wZXJjZW50OworfQorCitz
dGF0aWMgSU5MSU5FIHZvaWQgZW5jb2RlX2NvbW1hbmRfcmVzZXRfdGFyZ2V0X2ZyYW1lX2JpdHMo
CisgICAgRU5DT0RFX0NPTU1BTkQgKmVuY29kZV9jb21tYW5kKSB7CisgIGVuY29kZV9jb21tYW5k
LT51c2VfZXh0ZXJuYWxfdGFyZ2V0X2ZyYW1lX2JpdHMgPSAwOworICBlbmNvZGVfY29tbWFuZC0+
dGFyZ2V0X2ZyYW1lX2JpdHMgPSAtMTsKKyAgZW5jb2RlX2NvbW1hbmQtPnRhcmdldF9mcmFtZV9i
aXRzX2Vycm9yX3BlcmNlbnQgPSAwOworfQorCitzdGF0aWMgSU5MSU5FIHZvaWQgZW5jb2RlX2Nv
bW1hbmRfaW5pdChFTkNPREVfQ09NTUFORCAqZW5jb2RlX2NvbW1hbmQpIHsKKyAgdnA5X3plcm8o
KmVuY29kZV9jb21tYW5kKTsKKyAgZW5jb2RlX2NvbW1hbmRfcmVzZXRfZXh0ZXJuYWxfcXVhbnRp
emVfaW5kZXgoZW5jb2RlX2NvbW1hbmQpOworICBlbmNvZGVfY29tbWFuZF9yZXNldF90YXJnZXRf
ZnJhbWVfYml0cyhlbmNvZGVfY29tbWFuZCk7CisgIGdvcF9jb21tYW5kX29mZigmZW5jb2RlX2Nv
bW1hbmQtPmdvcF9jb21tYW5kKTsKK30KKwogLy8gUmV0dXJucyBudW1iZXIgb2YgdW5pdHMgaW4g
c2l6ZSBvZiA0LCBpZiBub3QgbXVsdGlwbGUgbm90IGEgbXVsdGlwbGUgb2YgNCwKIC8vIHJvdW5k
IGl0IHVwLiBGb3IgZXhhbXBsZSwgc2l6ZSBpcyA3LCByZXR1cm4gMi4KIHN0YXRpYyBJTkxJTkUg
aW50IGdldF9udW1fdW5pdF80eDQoaW50IHNpemUpIHsgcmV0dXJuIChzaXplICsgMykgPj4gMjsg
fQorLy8gUmV0dXJucyBudW1iZXIgb2YgdW5pdHMgaW4gc2l6ZSBvZiAxNiwgaWYgbm90IG11bHRp
cGxlIG5vdCBhIG11bHRpcGxlIG9mIDE2LAorLy8gcm91bmQgaXQgdXAuIEZvciBleGFtcGxlLCBz
aXplIGlzIDE3LCByZXR1cm4gMi4KK3N0YXRpYyBJTkxJTkUgaW50IGdldF9udW1fdW5pdF8xNngx
NihpbnQgc2l6ZSkgeyByZXR1cm4gKHNpemUgKyAxNSkgPj4gNDsgfQogI2VuZGlmICAvLyBDT05G
SUdfUkFURV9DVFJMCiAKIHR5cGVkZWYgc3RydWN0IFZQOV9DT01QIHsKQEAgLTg3MywxMSArOTY2
LDE4IEBAIHR5cGVkZWYgc3RydWN0IFZQOV9DT01QIHsKIAogICBpbnQgbXVsdGlfbGF5ZXJfYXJm
OwogICB2cHhfcm9pX21hcF90IHJvaTsKKworICBMT09QRklMVEVSX0NPTlRST0wgbG9vcGZpbHRl
cl9jdHJsOwogI2lmIENPTkZJR19SQVRFX0NUUkwKICAgRU5DT0RFX0NPTU1BTkQgZW5jb2RlX2Nv
bW1hbmQ7CiAgIFBBUlRJVElPTl9JTkZPICpwYXJ0aXRpb25faW5mbzsKICAgTU9USU9OX1ZFQ1RP
Ul9JTkZPICptb3Rpb25fdmVjdG9yX2luZm87CisgIE1PVElPTl9WRUNUT1JfSU5GTyAqZnBfbW90
aW9uX3ZlY3Rvcl9pbmZvOworICBUcGxEZXBTdGF0cyAqdHBsX3N0YXRzX2luZm87CisKKyAgUkFU
RV9RU1RFUF9NT0RFTCBycV9tb2RlbFtFTkNPREVfRlJBTUVfVFlQRVNdOwogI2VuZGlmCisgIEVY
VF9SQVRFQ1RSTCBleHRfcmF0ZWN0cmw7CiB9IFZQOV9DT01QOwogCiAjaWYgQ09ORklHX1JBVEVf
Q1RSTApAQCAtOTAyLDYgKzEwMDIsMTMgQEAgc3RhdGljIElOTElORSB2b2lkIGZyZWVfcGFydGl0
aW9uX2luZm8oc3RydWN0IFZQOV9DT01QICpjcGkpIHsKICAgY3BpLT5wYXJ0aXRpb25faW5mbyA9
IE5VTEw7CiB9CiAKK3N0YXRpYyBJTkxJTkUgdm9pZCByZXNldF9tdl9pbmZvKE1PVElPTl9WRUNU
T1JfSU5GTyAqbXZfaW5mbykgeworICBtdl9pbmZvLT5yZWZfZnJhbWVbMF0gPSBOT05FOworICBt
dl9pbmZvLT5yZWZfZnJhbWVbMV0gPSBOT05FOworICBtdl9pbmZvLT5tdlswXS5hc19pbnQgPSBJ
TlZBTElEX01WOworICBtdl9pbmZvLT5tdlsxXS5hc19pbnQgPSBJTlZBTElEX01WOworfQorCiAv
LyBBbGxvY2F0ZXMgbWVtb3J5IGZvciB0aGUgbW90aW9uIHZlY3RvciBpbmZvcm1hdGlvbi4KIC8v
IFRoZSB1bml0IHNpemUgaXMgZWFjaCA0eDQgYmxvY2suCiAvLyBPbmx5IGNhbGxlZCBvbmNlIGlu
IHZwOV9jcmVhdGVfY29tcHJlc3NvcigpLgpAQCAtOTIzLDYgKzEwMzAsNTMgQEAgc3RhdGljIElO
TElORSB2b2lkIGZyZWVfbW90aW9uX3ZlY3Rvcl9pbmZvKHN0cnVjdCBWUDlfQ09NUCAqY3BpKSB7
CiAgIGNwaS0+bW90aW9uX3ZlY3Rvcl9pbmZvID0gTlVMTDsKIH0KIAorLy8gQWxsb2NhdGVzIG1l
bW9yeSBmb3IgdGhlIHRwbCBzdGF0cyBpbmZvcm1hdGlvbi4KKy8vIE9ubHkgY2FsbGVkIG9uY2Ug
aW4gdnA5X2NyZWF0ZV9jb21wcmVzc29yKCkuCitzdGF0aWMgSU5MSU5FIHZvaWQgdHBsX3N0YXRz
X2luZm9faW5pdChzdHJ1Y3QgVlA5X0NPTVAgKmNwaSkgeworICBWUDlfQ09NTU9OICpjb25zdCBj
bSA9ICZjcGktPmNvbW1vbjsKKyAgQ0hFQ0tfTUVNX0VSUk9SKAorICAgICAgY20sIGNwaS0+dHBs
X3N0YXRzX2luZm8sCisgICAgICAoVHBsRGVwU3RhdHMgKil2cHhfY2FsbG9jKE1BWF9MQUdfQlVG
RkVSUywgc2l6ZW9mKFRwbERlcFN0YXRzKSkpOworICBtZW1zZXQoY3BpLT50cGxfc3RhdHNfaW5m
bywgMCwgTUFYX0xBR19CVUZGRVJTICogc2l6ZW9mKFRwbERlcFN0YXRzKSk7Cit9CisKKy8vIEZy
ZWVzIG1lbW9yeSBvZiB0aGUgdHBsIHN0YXRzIGluZm9ybWF0aW9uLgorLy8gT25seSBjYWxsZWQg
b25jZSBpbiBkZWFsbG9jX2NvbXByZXNzb3JfZGF0YSgpLgorc3RhdGljIElOTElORSB2b2lkIGZy
ZWVfdHBsX3N0YXRzX2luZm8oc3RydWN0IFZQOV9DT01QICpjcGkpIHsKKyAgdnB4X2ZyZWUoY3Bp
LT50cGxfc3RhdHNfaW5mbyk7CisgIGNwaS0+dHBsX3N0YXRzX2luZm8gPSBOVUxMOworfQorCisv
LyBBbGxvY2F0ZXMgbWVtb3J5IGZvciB0aGUgZmlyc3QgcGFzcyBtb3Rpb24gdmVjdG9yIGluZm9y
bWF0aW9uLgorLy8gVGhlIHVuaXQgc2l6ZSBpcyBlYWNoIDE2eDE2IGJsb2NrLgorLy8gT25seSBj
YWxsZWQgb25jZSBpbiB2cDlfY3JlYXRlX2NvbXByZXNzb3IoKS4KK3N0YXRpYyBJTkxJTkUgdm9p
ZCBmcF9tb3Rpb25fdmVjdG9yX2luZm9faW5pdChzdHJ1Y3QgVlA5X0NPTVAgKmNwaSkgeworICBW
UDlfQ09NTU9OICpjb25zdCBjbSA9ICZjcGktPmNvbW1vbjsKKyAgY29uc3QgaW50IHVuaXRfd2lk
dGggPSBnZXRfbnVtX3VuaXRfMTZ4MTYoY3BpLT5mcmFtZV9pbmZvLmZyYW1lX3dpZHRoKTsKKyAg
Y29uc3QgaW50IHVuaXRfaGVpZ2h0ID0gZ2V0X251bV91bml0XzE2eDE2KGNwaS0+ZnJhbWVfaW5m
by5mcmFtZV9oZWlnaHQpOworICBDSEVDS19NRU1fRVJST1IoY20sIGNwaS0+ZnBfbW90aW9uX3Zl
Y3Rvcl9pbmZvLAorICAgICAgICAgICAgICAgICAgKE1PVElPTl9WRUNUT1JfSU5GTyAqKXZweF9j
YWxsb2ModW5pdF93aWR0aCAqIHVuaXRfaGVpZ2h0LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKE1PVElPTl9WRUNUT1JfSU5GTykpKTsK
K30KKworc3RhdGljIElOTElORSB2b2lkIGZwX21vdGlvbl92ZWN0b3JfaW5mb19yZXNldCgKKyAg
ICBpbnQgZnJhbWVfd2lkdGgsIGludCBmcmFtZV9oZWlnaHQsCisgICAgTU9USU9OX1ZFQ1RPUl9J
TkZPICpmcF9tb3Rpb25fdmVjdG9yX2luZm8pIHsKKyAgY29uc3QgaW50IHVuaXRfd2lkdGggPSBn
ZXRfbnVtX3VuaXRfMTZ4MTYoZnJhbWVfd2lkdGgpOworICBjb25zdCBpbnQgdW5pdF9oZWlnaHQg
PSBnZXRfbnVtX3VuaXRfMTZ4MTYoZnJhbWVfaGVpZ2h0KTsKKyAgaW50IGk7CisgIGZvciAoaSA9
IDA7IGkgPCB1bml0X3dpZHRoICogdW5pdF9oZWlnaHQ7ICsraSkgeworICAgIHJlc2V0X212X2lu
Zm8oZnBfbW90aW9uX3ZlY3Rvcl9pbmZvICsgaSk7CisgIH0KK30KKworLy8gRnJlZXMgbWVtb3J5
IG9mIHRoZSBmaXJzdCBwYXNzIG1vdGlvbiB2ZWN0b3IgaW5mb3JtYXRpb24uCisvLyBPbmx5IGNh
bGxlZCBvbmNlIGluIGRlYWxsb2NfY29tcHJlc3Nvcl9kYXRhKCkuCitzdGF0aWMgSU5MSU5FIHZv
aWQgZnJlZV9mcF9tb3Rpb25fdmVjdG9yX2luZm8oc3RydWN0IFZQOV9DT01QICpjcGkpIHsKKyAg
dnB4X2ZyZWUoY3BpLT5mcF9tb3Rpb25fdmVjdG9yX2luZm8pOworICBjcGktPmZwX21vdGlvbl92
ZWN0b3JfaW5mbyA9IE5VTEw7Cit9CisKIC8vIFRoaXMgaXMgdGhlIGMtdmVyc2lvbiBjb3VudGVy
IHBhcnQgb2YgSW1hZ2VCdWZmZXIKIHR5cGVkZWYgc3RydWN0IElNQUdFX0JVRkZFUiB7CiAgIGlu
dCBhbGxvY2F0ZWQ7CkBAIC05MzAsMTggKzEwODQsMzQgQEAgdHlwZWRlZiBzdHJ1Y3QgSU1BR0Vf
QlVGRkVSIHsKICAgaW50IHBsYW5lX2hlaWdodFszXTsKICAgdWludDhfdCAqcGxhbmVfYnVmZmVy
WzNdOwogfSBJTUFHRV9CVUZGRVI7CisKKyNkZWZpbmUgUkFURV9DVFJMX01BWF9SRUNPREVfTlVN
IDcKKwordHlwZWRlZiBzdHJ1Y3QgUkFURV9RSU5ERVhfSElTVE9SWSB7CisgIGludCByZWNvZGVf
Y291bnQ7CisgIGludCBxX2luZGV4X2hpc3RvcnlbUkFURV9DVFJMX01BWF9SRUNPREVfTlVNXTsK
KyAgaW50IHJhdGVfaGlzdG9yeVtSQVRFX0NUUkxfTUFYX1JFQ09ERV9OVU1dOworICBpbnQgcV9p
bmRleF9oaWdoOworICBpbnQgcV9pbmRleF9sb3c7Cit9IFJBVEVfUUlOREVYX0hJU1RPUlk7CisK
ICNlbmRpZiAgLy8gQ09ORklHX1JBVEVfQ1RSTAogCiB0eXBlZGVmIHN0cnVjdCBFTkNPREVfRlJB
TUVfUkVTVUxUIHsKICAgaW50IHNob3dfaWR4OwogICBGUkFNRV9VUERBVEVfVFlQRSB1cGRhdGVf
dHlwZTsKICNpZiBDT05GSUdfUkFURV9DVFJMCisgIGludCBmcmFtZV9jb2RpbmdfaW5kZXg7Cisg
IGludCByZWZfZnJhbWVfY29kaW5nX2luZGV4ZXNbTUFYX0lOVEVSX1JFRl9GUkFNRVNdOworICBp
bnQgcmVmX2ZyYW1lX3ZhbGlkX2xpc3RbTUFYX0lOVEVSX1JFRl9GUkFNRVNdOwogICBkb3VibGUg
cHNucjsKICAgdWludDY0X3Qgc3NlOwogICBGUkFNRV9DT1VOVFMgZnJhbWVfY291bnRzOwogICBj
b25zdCBQQVJUSVRJT05fSU5GTyAqcGFydGl0aW9uX2luZm87CiAgIGNvbnN0IE1PVElPTl9WRUNU
T1JfSU5GTyAqbW90aW9uX3ZlY3Rvcl9pbmZvOworICBjb25zdCBUcGxEZXBTdGF0cyAqdHBsX3N0
YXRzX2luZm87CiAgIElNQUdFX0JVRkZFUiBjb2RlZF9mcmFtZTsKKyAgUkFURV9RSU5ERVhfSElT
VE9SWSBycV9oaXN0b3J5OwogI2VuZGlmICAvLyBDT05GSUdfUkFURV9DVFJMCiAgIGludCBxdWFu
dGl6ZV9pbmRleDsKIH0gRU5DT0RFX0ZSQU1FX1JFU1VMVDsKQEAgLTk5Nyw2ICsxMTY3LDE0IEBA
IGludCB2cDlfc2V0X3NpemVfbGl0ZXJhbChWUDlfQ09NUCAqY3BpLCB1bnNpZ25lZCBpbnQgd2lk
dGgsCiAKIHZvaWQgdnA5X3NldF9zdmMoVlA5X0NPTVAgKmNwaSwgaW50IHVzZV9zdmMpOwogCisv
LyBDaGVjayBmb3IgcmVzZXR0aW5nIHRoZSByYyBmbGFncyAocmNfMV9mcmFtZSwgcmNfMl9mcmFt
ZSkgaWYgdGhlCisvLyBjb25maWd1cmF0aW9uIGNoYW5nZSBoYXMgYSBsYXJnZSBjaGFuZ2UgaW4g
YXZnX2ZyYW1lX2JhbmR3aWR0aC4KKy8vIEZvciBTVkMgY2hlY2sgZm9yIHJlc2V0dGluZyBiYXNl
ZCBvbiBzcGF0aWFsIGxheWVyIGF2ZXJhZ2UgYmFuZHdpZHRoLgorLy8gQWxzbyByZXNldCBidWZm
ZXIgbGV2ZWwgdG8gb3B0aW1hbCBsZXZlbC4KK3ZvaWQgdnA5X2NoZWNrX3Jlc2V0X3JjX2ZsYWco
VlA5X0NPTVAgKmNwaSk7CisKK3ZvaWQgdnA5X3NldF9yY19idWZmZXJfc2l6ZXMoVlA5X0NPTVAg
KmNwaSk7CisKIHN0YXRpYyBJTkxJTkUgaW50IHN0YWNrX3BvcChpbnQgKnN0YWNrLCBpbnQgc3Rh
Y2tfc2l6ZSkgewogICBpbnQgaWR4OwogICBjb25zdCBpbnQgciA9IHN0YWNrWzBdOwpAQCAtMTA0
MywxMCArMTIyMSwyMiBAQCBzdGF0aWMgSU5MSU5FIGludCBnZXRfcmVmX2ZyYW1lX2J1Zl9pZHgo
Y29uc3QgVlA5X0NPTVAgKmNvbnN0IGNwaSwKICAgcmV0dXJuIChtYXBfaWR4ICE9IElOVkFMSURf
SURYKSA/IGNtLT5yZWZfZnJhbWVfbWFwW21hcF9pZHhdIDogSU5WQUxJRF9JRFg7CiB9CiAKLXN0
YXRpYyBJTkxJTkUgUmVmQ250QnVmZmVyICpnZXRfcmVmX2NudF9idWZmZXIoVlA5X0NPTU1PTiAq
Y20sIGludCBmYl9pZHgpIHsKK3N0YXRpYyBJTkxJTkUgUmVmQ250QnVmZmVyICpnZXRfcmVmX2Nu
dF9idWZmZXIoY29uc3QgVlA5X0NPTU1PTiAqY20sCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGludCBmYl9pZHgpIHsKICAgcmV0dXJuIGZiX2lkeCAhPSBJ
TlZBTElEX0lEWCA/ICZjbS0+YnVmZmVyX3Bvb2wtPmZyYW1lX2J1ZnNbZmJfaWR4XSA6IE5VTEw7
CiB9CiAKK3N0YXRpYyBJTkxJTkUgdm9pZCBnZXRfcmVmX2ZyYW1lX2J1ZnMoCisgICAgY29uc3Qg
VlA5X0NPTVAgKmNwaSwgUmVmQ250QnVmZmVyICpyZWZfZnJhbWVfYnVmc1tNQVhfSU5URVJfUkVG
X0ZSQU1FU10pIHsKKyAgY29uc3QgVlA5X0NPTU1PTiAqY29uc3QgY20gPSAmY3BpLT5jb21tb247
CisgIE1WX1JFRkVSRU5DRV9GUkFNRSByZWZfZnJhbWU7CisgIGZvciAocmVmX2ZyYW1lID0gTEFT
VF9GUkFNRTsgcmVmX2ZyYW1lIDwgTUFYX1JFRl9GUkFNRVM7ICsrcmVmX2ZyYW1lKSB7CisgICAg
aW50IHJlZl9mcmFtZV9idWZfaWR4ID0gZ2V0X3JlZl9mcmFtZV9idWZfaWR4KGNwaSwgcmVmX2Zy
YW1lKTsKKyAgICBpbnQgaW50ZXJfcmVmX2lkeCA9IG12X3JlZl9mcmFtZV90b19pbnRlcl9yZWZf
aWR4KHJlZl9mcmFtZSk7CisgICAgcmVmX2ZyYW1lX2J1ZnNbaW50ZXJfcmVmX2lkeF0gPSBnZXRf
cmVmX2NudF9idWZmZXIoY20sIHJlZl9mcmFtZV9idWZfaWR4KTsKKyAgfQorfQorCiBzdGF0aWMg
SU5MSU5FIFlWMTJfQlVGRkVSX0NPTkZJRyAqZ2V0X3JlZl9mcmFtZV9idWZmZXIoCiAgICAgY29u
c3QgVlA5X0NPTVAgKmNvbnN0IGNwaSwgTVZfUkVGRVJFTkNFX0ZSQU1FIHJlZl9mcmFtZSkgewog
ICBjb25zdCBWUDlfQ09NTU9OICpjb25zdCBjbSA9ICZjcGktPmNvbW1vbjsKQEAgLTEwOTcsNiAr
MTI4NywxMSBAQCB2b2lkIHZwOV9zY2FsZV9yZWZlcmVuY2VzKFZQOV9DT01QICpjcGkpOwogCiB2
b2lkIHZwOV91cGRhdGVfcmVmZXJlbmNlX2ZyYW1lcyhWUDlfQ09NUCAqY3BpKTsKIAordm9pZCB2
cDlfZ2V0X3JlZl9mcmFtZV9pbmZvKEZSQU1FX1VQREFURV9UWVBFIHVwZGF0ZV90eXBlLCBpbnQg
cmVmX2ZyYW1lX2ZsYWdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlZkNudEJ1ZmZl
ciAqcmVmX2ZyYW1lX2J1ZnNbTUFYX0lOVEVSX1JFRl9GUkFNRVNdLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGludCAqcmVmX2ZyYW1lX2NvZGluZ19pbmRleGVzLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGludCAqcmVmX2ZyYW1lX3ZhbGlkX2xpc3QpOworCiB2b2lkIHZwOV9z
ZXRfaGlnaF9wcmVjaXNpb25fbXYoVlA5X0NPTVAgKmNwaSwgaW50IGFsbG93X2hpZ2hfcHJlY2lz
aW9uX212KTsKIAogWVYxMl9CVUZGRVJfQ09ORklHICp2cDlfc3ZjX3R3b3N0YWdlX3NjYWxlKApk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmMgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRfcmF0ZWN0cmwuYwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hMjdl
YjY1M2JhMzhkYTM0MDFhMGVmYjUzYmIwYmUyNTAzMGFiZjU4Ci0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmMKQEAgLTAsMCArMSwxOTkg
QEAKKy8qCisgKiAgQ29weXJpZ2h0IChjKSAyMDIwIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4g
QWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyAqCisgKiAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMg
Z292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZQorICogIHRoYXQgY2FuIGJlIGZvdW5kIGlu
IHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZQorICogIHRyZWUuIEFu
IGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91
bmQKKyAqICBpbiB0aGUgZmlsZSBQQVRFTlRTLiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1
dGhvcnMgbWF5CisgKiAgYmUgZm91bmQgaW4gdGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBv
ZiB0aGUgc291cmNlIHRyZWUuCisgKi8KKworI2luY2x1ZGUgInZwOS9lbmNvZGVyL3ZwOV9leHRf
cmF0ZWN0cmwuaCIKKyNpbmNsdWRlICJ2cDkvZW5jb2Rlci92cDlfZW5jb2Rlci5oIgorI2luY2x1
ZGUgInZwOS9jb21tb24vdnA5X2NvbW1vbi5oIgorI2luY2x1ZGUgInZweF9kc3AvcHNuci5oIgor
Cit2cHhfY29kZWNfZXJyX3QgdnA5X2V4dHJjX2luaXQoRVhUX1JBVEVDVFJMICpleHRfcmF0ZWN0
cmwpIHsKKyAgaWYgKGV4dF9yYXRlY3RybCA9PSBOVUxMKSB7CisgICAgcmV0dXJuIFZQWF9DT0RF
Q19JTlZBTElEX1BBUkFNOworICB9CisgIHZwOV96ZXJvKCpleHRfcmF0ZWN0cmwpOworICByZXR1
cm4gVlBYX0NPREVDX09LOworfQorCit2cHhfY29kZWNfZXJyX3QgdnA5X2V4dHJjX2NyZWF0ZSh2
cHhfcmNfZnVuY3NfdCBmdW5jcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZw
eF9yY19jb25maWdfdCByYXRlY3RybF9jb25maWcsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBFWFRfUkFURUNUUkwgKmV4dF9yYXRlY3RybCkgeworICB2cHhfcmNfc3RhdHVzX3Qg
cmNfc3RhdHVzOworICB2cHhfcmNfZmlyc3RwYXNzX3N0YXRzX3QgKnJjX2ZpcnN0cGFzc19zdGF0
czsKKyAgaWYgKGV4dF9yYXRlY3RybCA9PSBOVUxMKSB7CisgICAgcmV0dXJuIFZQWF9DT0RFQ19J
TlZBTElEX1BBUkFNOworICB9CisgIHZwOV9leHRyY19kZWxldGUoZXh0X3JhdGVjdHJsKTsKKyAg
ZXh0X3JhdGVjdHJsLT5mdW5jcyA9IGZ1bmNzOworICBleHRfcmF0ZWN0cmwtPnJhdGVjdHJsX2Nv
bmZpZyA9IHJhdGVjdHJsX2NvbmZpZzsKKyAgcmNfc3RhdHVzID0gZXh0X3JhdGVjdHJsLT5mdW5j
cy5jcmVhdGVfbW9kZWwoZXh0X3JhdGVjdHJsLT5mdW5jcy5wcml2LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZXh0X3JhdGVjdHJsLT5yYXRlY3RybF9j
b25maWcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZl
eHRfcmF0ZWN0cmwtPm1vZGVsKTsKKyAgaWYgKHJjX3N0YXR1cyA9PSBWUFhfUkNfRVJST1IpIHsK
KyAgICByZXR1cm4gVlBYX0NPREVDX0VSUk9SOworICB9CisgIHJjX2ZpcnN0cGFzc19zdGF0cyA9
ICZleHRfcmF0ZWN0cmwtPnJjX2ZpcnN0cGFzc19zdGF0czsKKyAgcmNfZmlyc3RwYXNzX3N0YXRz
LT5udW1fZnJhbWVzID0gcmF0ZWN0cmxfY29uZmlnLnNob3dfZnJhbWVfY291bnQ7CisgIHJjX2Zp
cnN0cGFzc19zdGF0cy0+ZnJhbWVfc3RhdHMgPQorICAgICAgdnB4X21hbGxvYyhzaXplb2YoKnJj
X2ZpcnN0cGFzc19zdGF0cy0+ZnJhbWVfc3RhdHMpICoKKyAgICAgICAgICAgICAgICAgcmNfZmly
c3RwYXNzX3N0YXRzLT5udW1fZnJhbWVzKTsKKyAgaWYgKHJjX2ZpcnN0cGFzc19zdGF0cy0+ZnJh
bWVfc3RhdHMgPT0gTlVMTCkgeworICAgIHJldHVybiBWUFhfQ09ERUNfTUVNX0VSUk9SOworICB9
CisgIGV4dF9yYXRlY3RybC0+cmVhZHkgPSAxOworICByZXR1cm4gVlBYX0NPREVDX09LOworfQor
Cit2cHhfY29kZWNfZXJyX3QgdnA5X2V4dHJjX2RlbGV0ZShFWFRfUkFURUNUUkwgKmV4dF9yYXRl
Y3RybCkgeworICBpZiAoZXh0X3JhdGVjdHJsID09IE5VTEwpIHsKKyAgICByZXR1cm4gVlBYX0NP
REVDX0lOVkFMSURfUEFSQU07CisgIH0KKyAgaWYgKGV4dF9yYXRlY3RybC0+cmVhZHkpIHsKKyAg
ICB2cHhfcmNfc3RhdHVzX3QgcmNfc3RhdHVzID0KKyAgICAgICAgZXh0X3JhdGVjdHJsLT5mdW5j
cy5kZWxldGVfbW9kZWwoZXh0X3JhdGVjdHJsLT5tb2RlbCk7CisgICAgaWYgKHJjX3N0YXR1cyA9
PSBWUFhfUkNfRVJST1IpIHsKKyAgICAgIHJldHVybiBWUFhfQ09ERUNfRVJST1I7CisgICAgfQor
ICAgIHZweF9mcmVlKGV4dF9yYXRlY3RybC0+cmNfZmlyc3RwYXNzX3N0YXRzLmZyYW1lX3N0YXRz
KTsKKyAgfQorICByZXR1cm4gdnA5X2V4dHJjX2luaXQoZXh0X3JhdGVjdHJsKTsKK30KKworc3Rh
dGljIHZvaWQgZ2VuX3JjX2ZpcnN0cGFzc19zdGF0cyhjb25zdCBGSVJTVFBBU1NfU1RBVFMgKnN0
YXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2cHhfcmNfZnJhbWVfc3Rh
dHNfdCAqcmNfZnJhbWVfc3RhdHMpIHsKKyAgcmNfZnJhbWVfc3RhdHMtPmZyYW1lID0gc3RhdHMt
PmZyYW1lOworICByY19mcmFtZV9zdGF0cy0+d2VpZ2h0ID0gc3RhdHMtPndlaWdodDsKKyAgcmNf
ZnJhbWVfc3RhdHMtPmludHJhX2Vycm9yID0gc3RhdHMtPmludHJhX2Vycm9yOworICByY19mcmFt
ZV9zdGF0cy0+Y29kZWRfZXJyb3IgPSBzdGF0cy0+Y29kZWRfZXJyb3I7CisgIHJjX2ZyYW1lX3N0
YXRzLT5zcl9jb2RlZF9lcnJvciA9IHN0YXRzLT5zcl9jb2RlZF9lcnJvcjsKKyAgcmNfZnJhbWVf
c3RhdHMtPmZyYW1lX25vaXNlX2VuZXJneSA9IHN0YXRzLT5mcmFtZV9ub2lzZV9lbmVyZ3k7Cisg
IHJjX2ZyYW1lX3N0YXRzLT5wY250X2ludGVyID0gc3RhdHMtPnBjbnRfaW50ZXI7CisgIHJjX2Zy
YW1lX3N0YXRzLT5wY250X21vdGlvbiA9IHN0YXRzLT5wY250X21vdGlvbjsKKyAgcmNfZnJhbWVf
c3RhdHMtPnBjbnRfc2Vjb25kX3JlZiA9IHN0YXRzLT5wY250X3NlY29uZF9yZWY7CisgIHJjX2Zy
YW1lX3N0YXRzLT5wY250X25ldXRyYWwgPSBzdGF0cy0+cGNudF9uZXV0cmFsOworICByY19mcmFt
ZV9zdGF0cy0+cGNudF9pbnRyYV9sb3cgPSBzdGF0cy0+cGNudF9pbnRyYV9sb3c7CisgIHJjX2Zy
YW1lX3N0YXRzLT5wY250X2ludHJhX2hpZ2ggPSBzdGF0cy0+cGNudF9pbnRyYV9oaWdoOworICBy
Y19mcmFtZV9zdGF0cy0+aW50cmFfc2tpcF9wY3QgPSBzdGF0cy0+aW50cmFfc2tpcF9wY3Q7Cisg
IHJjX2ZyYW1lX3N0YXRzLT5pbnRyYV9zbW9vdGhfcGN0ID0gc3RhdHMtPmludHJhX3Ntb290aF9w
Y3Q7CisgIHJjX2ZyYW1lX3N0YXRzLT5pbmFjdGl2ZV96b25lX3Jvd3MgPSBzdGF0cy0+aW5hY3Rp
dmVfem9uZV9yb3dzOworICByY19mcmFtZV9zdGF0cy0+aW5hY3RpdmVfem9uZV9jb2xzID0gc3Rh
dHMtPmluYWN0aXZlX3pvbmVfY29sczsKKyAgcmNfZnJhbWVfc3RhdHMtPk1WciA9IHN0YXRzLT5N
VnI7CisgIHJjX2ZyYW1lX3N0YXRzLT5tdnJfYWJzID0gc3RhdHMtPm12cl9hYnM7CisgIHJjX2Zy
YW1lX3N0YXRzLT5NVmMgPSBzdGF0cy0+TVZjOworICByY19mcmFtZV9zdGF0cy0+bXZjX2FicyA9
IHN0YXRzLT5tdmNfYWJzOworICByY19mcmFtZV9zdGF0cy0+TVZydiA9IHN0YXRzLT5NVnJ2Owor
ICByY19mcmFtZV9zdGF0cy0+TVZjdiA9IHN0YXRzLT5NVmN2OworICByY19mcmFtZV9zdGF0cy0+
bXZfaW5fb3V0X2NvdW50ID0gc3RhdHMtPm12X2luX291dF9jb3VudDsKKyAgcmNfZnJhbWVfc3Rh
dHMtPmR1cmF0aW9uID0gc3RhdHMtPmR1cmF0aW9uOworICByY19mcmFtZV9zdGF0cy0+Y291bnQg
PSBzdGF0cy0+Y291bnQ7Cit9CisKK3ZweF9jb2RlY19lcnJfdCB2cDlfZXh0cmNfc2VuZF9maXJz
dHBhc3Nfc3RhdHMoCisgICAgRVhUX1JBVEVDVFJMICpleHRfcmF0ZWN0cmwsIGNvbnN0IEZJUlNU
X1BBU1NfSU5GTyAqZmlyc3RfcGFzc19pbmZvKSB7CisgIGlmIChleHRfcmF0ZWN0cmwgPT0gTlVM
TCkgeworICAgIHJldHVybiBWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTTsKKyAgfQorICBpZiAoZXh0
X3JhdGVjdHJsLT5yZWFkeSkgeworICAgIHZweF9yY19zdGF0dXNfdCByY19zdGF0dXM7CisgICAg
dnB4X3JjX2ZpcnN0cGFzc19zdGF0c190ICpyY19maXJzdHBhc3Nfc3RhdHMgPQorICAgICAgICAm
ZXh0X3JhdGVjdHJsLT5yY19maXJzdHBhc3Nfc3RhdHM7CisgICAgaW50IGk7CisgICAgYXNzZXJ0
KHJjX2ZpcnN0cGFzc19zdGF0cy0+bnVtX2ZyYW1lcyA9PSBmaXJzdF9wYXNzX2luZm8tPm51bV9m
cmFtZXMpOworICAgIGZvciAoaSA9IDA7IGkgPCByY19maXJzdHBhc3Nfc3RhdHMtPm51bV9mcmFt
ZXM7ICsraSkgeworICAgICAgZ2VuX3JjX2ZpcnN0cGFzc19zdGF0cygmZmlyc3RfcGFzc19pbmZv
LT5zdGF0c1tpXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnJjX2ZpcnN0cGFzc19z
dGF0cy0+ZnJhbWVfc3RhdHNbaV0pOworICAgIH0KKyAgICByY19zdGF0dXMgPSBleHRfcmF0ZWN0
cmwtPmZ1bmNzLnNlbmRfZmlyc3RwYXNzX3N0YXRzKGV4dF9yYXRlY3RybC0+bW9kZWwsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByY19m
aXJzdHBhc3Nfc3RhdHMpOworICAgIGlmIChyY19zdGF0dXMgPT0gVlBYX1JDX0VSUk9SKSB7Cisg
ICAgICByZXR1cm4gVlBYX0NPREVDX0VSUk9SOworICAgIH0KKyAgfQorICByZXR1cm4gVlBYX0NP
REVDX09LOworfQorCitzdGF0aWMgaW50IGV4dHJjX2dldF9mcmFtZV90eXBlKEZSQU1FX1VQREFU
RV9UWVBFIHVwZGF0ZV90eXBlKSB7CisgIC8vIFRPRE8oYW5naWViaXJkKTogQWRkIHVuaXQgdGVz
dCB0byBtYWtlIHN1cmUgdGhpcyBmdW5jdGlvbiBiZWhhdmVzIGxpa2UKKyAgLy8gZ2V0X2ZyYW1l
X3R5cGVfZnJvbV91cGRhdGVfdHlwZSgpCisgIC8vIFRPRE8oYW5naWViaXJkKTogTWVyZ2UgdGhp
cyBmdW5jdGlvbiB3aXRoIGdldF9mcmFtZV90eXBlX2Zyb21fdXBkYXRlX3R5cGUoKQorICBzd2l0
Y2ggKHVwZGF0ZV90eXBlKSB7CisgICAgY2FzZSBLRl9VUERBVEU6IHJldHVybiAwOyAgICAgICAv
LyBrRnJhbWVUeXBlS2V5OworICAgIGNhc2UgQVJGX1VQREFURTogcmV0dXJuIDI7ICAgICAgLy8g
a0ZyYW1lVHlwZUFsdFJlZjsKKyAgICBjYXNlIEdGX1VQREFURTogcmV0dXJuIDQ7ICAgICAgIC8v
IGtGcmFtZVR5cGVHb2xkZW47CisgICAgY2FzZSBPVkVSTEFZX1VQREFURTogcmV0dXJuIDM7ICAv
LyBrRnJhbWVUeXBlT3ZlcmxheTsKKyAgICBjYXNlIExGX1VQREFURTogcmV0dXJuIDE7ICAgICAg
IC8vIGtGcmFtZVR5cGVJbnRlcjsKKyAgICBkZWZhdWx0OgorICAgICAgZnByaW50ZihzdGRlcnIs
ICJVbnN1cHBvcnRlZCB1cGRhdGVfdHlwZSAlZFxuIiwgdXBkYXRlX3R5cGUpOworICAgICAgYWJv
cnQoKTsKKyAgICAgIHJldHVybiAxOworICB9Cit9CisKK3ZweF9jb2RlY19lcnJfdCB2cDlfZXh0
cmNfZ2V0X2VuY29kZWZyYW1lX2RlY2lzaW9uKAorICAgIEVYVF9SQVRFQ1RSTCAqZXh0X3JhdGVj
dHJsLCBpbnQgc2hvd19pbmRleCwgaW50IGNvZGluZ19pbmRleCwgaW50IGdvcF9pbmRleCwKKyAg
ICBGUkFNRV9VUERBVEVfVFlQRSB1cGRhdGVfdHlwZSwKKyAgICBSZWZDbnRCdWZmZXIgKnJlZl9m
cmFtZV9idWZzW01BWF9JTlRFUl9SRUZfRlJBTUVTXSwgaW50IHJlZl9mcmFtZV9mbGFncywKKyAg
ICB2cHhfcmNfZW5jb2RlZnJhbWVfZGVjaXNpb25fdCAqZW5jb2RlX2ZyYW1lX2RlY2lzaW9uKSB7
CisgIGlmIChleHRfcmF0ZWN0cmwgPT0gTlVMTCkgeworICAgIHJldHVybiBWUFhfQ09ERUNfSU5W
QUxJRF9QQVJBTTsKKyAgfQorICBpZiAoZXh0X3JhdGVjdHJsLT5yZWFkeSkgeworICAgIHZweF9y
Y19zdGF0dXNfdCByY19zdGF0dXM7CisgICAgdnB4X3JjX2VuY29kZWZyYW1lX2luZm9fdCBlbmNv
ZGVfZnJhbWVfaW5mbzsKKyAgICBlbmNvZGVfZnJhbWVfaW5mby5zaG93X2luZGV4ID0gc2hvd19p
bmRleDsKKyAgICBlbmNvZGVfZnJhbWVfaW5mby5jb2RpbmdfaW5kZXggPSBjb2RpbmdfaW5kZXg7
CisgICAgZW5jb2RlX2ZyYW1lX2luZm8uZ29wX2luZGV4ID0gZ29wX2luZGV4OworICAgIGVuY29k
ZV9mcmFtZV9pbmZvLmZyYW1lX3R5cGUgPSBleHRyY19nZXRfZnJhbWVfdHlwZSh1cGRhdGVfdHlw
ZSk7CisKKyAgICB2cDlfZ2V0X3JlZl9mcmFtZV9pbmZvKHVwZGF0ZV90eXBlLCByZWZfZnJhbWVf
ZmxhZ3MsIHJlZl9mcmFtZV9idWZzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2Rl
X2ZyYW1lX2luZm8ucmVmX2ZyYW1lX2NvZGluZ19pbmRleGVzLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgZW5jb2RlX2ZyYW1lX2luZm8ucmVmX2ZyYW1lX3ZhbGlkX2xpc3QpOworCisgICAg
cmNfc3RhdHVzID0gZXh0X3JhdGVjdHJsLT5mdW5jcy5nZXRfZW5jb2RlZnJhbWVfZGVjaXNpb24o
CisgICAgICAgIGV4dF9yYXRlY3RybC0+bW9kZWwsICZlbmNvZGVfZnJhbWVfaW5mbywgZW5jb2Rl
X2ZyYW1lX2RlY2lzaW9uKTsKKyAgICBpZiAocmNfc3RhdHVzID09IFZQWF9SQ19FUlJPUikgewor
ICAgICAgcmV0dXJuIFZQWF9DT0RFQ19FUlJPUjsKKyAgICB9CisgIH0KKyAgcmV0dXJuIFZQWF9D
T0RFQ19PSzsKK30KKwordnB4X2NvZGVjX2Vycl90IHZwOV9leHRyY191cGRhdGVfZW5jb2RlZnJh
bWVfcmVzdWx0KAorICAgIEVYVF9SQVRFQ1RSTCAqZXh0X3JhdGVjdHJsLCBpbnQ2NF90IGJpdF9j
b3VudCwKKyAgICBjb25zdCBZVjEyX0JVRkZFUl9DT05GSUcgKnNvdXJjZV9mcmFtZSwKKyAgICBj
b25zdCBZVjEyX0JVRkZFUl9DT05GSUcgKmNvZGVkX2ZyYW1lLCB1aW50MzJfdCBiaXRfZGVwdGgs
CisgICAgdWludDMyX3QgaW5wdXRfYml0X2RlcHRoKSB7CisgIGlmIChleHRfcmF0ZWN0cmwgPT0g
TlVMTCkgeworICAgIHJldHVybiBWUFhfQ09ERUNfSU5WQUxJRF9QQVJBTTsKKyAgfQorICBpZiAo
ZXh0X3JhdGVjdHJsLT5yZWFkeSkgeworICAgIFBTTlJfU1RBVFMgcHNucjsKKyAgICB2cHhfcmNf
c3RhdHVzX3QgcmNfc3RhdHVzOworICAgIHZweF9yY19lbmNvZGVmcmFtZV9yZXN1bHRfdCBlbmNv
ZGVfZnJhbWVfcmVzdWx0OworICAgIGVuY29kZV9mcmFtZV9yZXN1bHQuYml0X2NvdW50ID0gYml0
X2NvdW50OworICAgIGVuY29kZV9mcmFtZV9yZXN1bHQucGl4ZWxfY291bnQgPQorICAgICAgICBz
b3VyY2VfZnJhbWUtPnlfY3JvcF93aWR0aCAqIHNvdXJjZV9mcmFtZS0+eV9jcm9wX2hlaWdodCAr
CisgICAgICAgIDIgKiBzb3VyY2VfZnJhbWUtPnV2X2Nyb3Bfd2lkdGggKiBzb3VyY2VfZnJhbWUt
PnV2X2Nyb3BfaGVpZ2h0OworI2lmIENPTkZJR19WUDlfSElHSEJJVERFUFRICisgICAgdnB4X2Nh
bGNfaGlnaGJkX3BzbnIoc291cmNlX2ZyYW1lLCBjb2RlZF9mcmFtZSwgJnBzbnIsIGJpdF9kZXB0
aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dF9iaXRfZGVwdGgpOworI2Vsc2UKKyAg
ICAodm9pZCliaXRfZGVwdGg7CisgICAgKHZvaWQpaW5wdXRfYml0X2RlcHRoOworICAgIHZweF9j
YWxjX3BzbnIoc291cmNlX2ZyYW1lLCBjb2RlZF9mcmFtZSwgJnBzbnIpOworI2VuZGlmCisgICAg
ZW5jb2RlX2ZyYW1lX3Jlc3VsdC5zc2UgPSBwc25yLnNzZVswXTsKKyAgICByY19zdGF0dXMgPSBl
eHRfcmF0ZWN0cmwtPmZ1bmNzLnVwZGF0ZV9lbmNvZGVmcmFtZV9yZXN1bHQoCisgICAgICAgIGV4
dF9yYXRlY3RybC0+bW9kZWwsICZlbmNvZGVfZnJhbWVfcmVzdWx0KTsKKyAgICBpZiAocmNfc3Rh
dHVzID09IFZQWF9SQ19FUlJPUikgeworICAgICAgcmV0dXJuIFZQWF9DT0RFQ19FUlJPUjsKKyAg
ICB9CisgIH0KKyAgcmV0dXJuIFZQWF9DT0RFQ19PSzsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnA5L2VuY29kZXIvdnA5X2V4dF9yYXRlY3RybC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfZXh0X3JhdGVjdHJsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTFlOTEwMmE2NTA2NDU1OTE3NmFiMDY4
NTU4ZTg3MjcwMWU3Y2UwMAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29k
ZXIvdnA5X2V4dF9yYXRlY3RybC5oCkBAIC0wLDAgKzEsNDggQEAKKy8qCisgKiAgQ29weXJpZ2h0
IChjKSAyMDIwIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4K
KyAqCisgKiAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5
bGUgbGljZW5zZQorICogIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4g
dGhlIHJvb3Qgb2YgdGhlIHNvdXJjZQorICogIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0
dWFsIHByb3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyAqICBpbiB0aGUgZmlsZSBQ
QVRFTlRTLiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisgKiAgYmUgZm91
bmQgaW4gdGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisg
Ki8KKworI2lmbmRlZiBWUFhfVlA5X0VOQ09ERVJfVlA5X0VYVF9SQVRFQ1RSTF9IXworI2RlZmlu
ZSBWUFhfVlA5X0VOQ09ERVJfVlA5X0VYVF9SQVRFQ1RSTF9IXworCisjaW5jbHVkZSAidnB4L3Zw
eF9leHRfcmF0ZWN0cmwuaCIKKyNpbmNsdWRlICJ2cDkvZW5jb2Rlci92cDlfZmlyc3RwYXNzLmgi
CisKK3R5cGVkZWYgc3RydWN0IEVYVF9SQVRFQ1RSTCB7CisgIGludCByZWFkeTsKKyAgdnB4X3Jj
X21vZGVsX3QgbW9kZWw7CisgIHZweF9yY19mdW5jc190IGZ1bmNzOworICB2cHhfcmNfY29uZmln
X3QgcmF0ZWN0cmxfY29uZmlnOworICB2cHhfcmNfZmlyc3RwYXNzX3N0YXRzX3QgcmNfZmlyc3Rw
YXNzX3N0YXRzOworfSBFWFRfUkFURUNUUkw7CisKK3ZweF9jb2RlY19lcnJfdCB2cDlfZXh0cmNf
aW5pdChFWFRfUkFURUNUUkwgKmV4dF9yYXRlY3RybCk7CisKK3ZweF9jb2RlY19lcnJfdCB2cDlf
ZXh0cmNfY3JlYXRlKHZweF9yY19mdW5jc190IGZ1bmNzLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdnB4X3JjX2NvbmZpZ190IHJhdGVjdHJsX2NvbmZpZywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEVYVF9SQVRFQ1RSTCAqZXh0X3JhdGVjdHJsKTsKKwordnB4
X2NvZGVjX2Vycl90IHZwOV9leHRyY19kZWxldGUoRVhUX1JBVEVDVFJMICpleHRfcmF0ZWN0cmwp
OworCit2cHhfY29kZWNfZXJyX3QgdnA5X2V4dHJjX3NlbmRfZmlyc3RwYXNzX3N0YXRzKAorICAg
IEVYVF9SQVRFQ1RSTCAqZXh0X3JhdGVjdHJsLCBjb25zdCBGSVJTVF9QQVNTX0lORk8gKmZpcnN0
X3Bhc3NfaW5mbyk7CisKK3ZweF9jb2RlY19lcnJfdCB2cDlfZXh0cmNfZ2V0X2VuY29kZWZyYW1l
X2RlY2lzaW9uKAorICAgIEVYVF9SQVRFQ1RSTCAqZXh0X3JhdGVjdHJsLCBpbnQgc2hvd19pbmRl
eCwgaW50IGNvZGluZ19pbmRleCwgaW50IGdvcF9pbmRleCwKKyAgICBGUkFNRV9VUERBVEVfVFlQ
RSB1cGRhdGVfdHlwZSwKKyAgICBSZWZDbnRCdWZmZXIgKnJlZl9mcmFtZV9idWZzW01BWF9JTlRF
Ul9SRUZfRlJBTUVTXSwgaW50IHJlZl9mcmFtZV9mbGFncywKKyAgICB2cHhfcmNfZW5jb2RlZnJh
bWVfZGVjaXNpb25fdCAqZW5jb2RlX2ZyYW1lX2RlY2lzaW9uKTsKKwordnB4X2NvZGVjX2Vycl90
IHZwOV9leHRyY191cGRhdGVfZW5jb2RlZnJhbWVfcmVzdWx0KAorICAgIEVYVF9SQVRFQ1RSTCAq
ZXh0X3JhdGVjdHJsLCBpbnQ2NF90IGJpdF9jb3VudCwKKyAgICBjb25zdCBZVjEyX0JVRkZFUl9D
T05GSUcgKnNvdXJjZV9mcmFtZSwKKyAgICBjb25zdCBZVjEyX0JVRkZFUl9DT05GSUcgKmNvZGVk
X2ZyYW1lLCB1aW50MzJfdCBiaXRfZGVwdGgsCisgICAgdWludDMyX3QgaW5wdXRfYml0X2RlcHRo
KTsKKworI2VuZGlmICAvLyBWUFhfVlA5X0VOQ09ERVJfVlA5X0VYVF9SQVRFQ1RSTF9IXwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZXh0ZW5kLmMgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS9lbmNvZGVyL3ZwOV9leHRlbmQuYwppbmRleCBmOGUyNDYxMGFlZDY1ODU1ZDcwNmNiNGUw
YjcxMDY2ZmY4MDdmNGEwLi5kY2I2MmU4NzY4YWYxMmZlZmNiMDEzNTI4MWFhMmQ5MDRjN2RmNGYw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRlbmQuYworKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9leHRlbmQuYwpAQCAtMTgsMTggKzE4LDI2IEBACiBz
dGF0aWMgdm9pZCBjb3B5X2FuZF9leHRlbmRfcGxhbmUoY29uc3QgdWludDhfdCAqc3JjLCBpbnQg
c3JjX3BpdGNoLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3QgKmRz
dCwgaW50IGRzdF9waXRjaCwgaW50IHcsIGludCBoLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGludCBleHRlbmRfdG9wLCBpbnQgZXh0ZW5kX2xlZnQsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaW50IGV4dGVuZF9ib3R0b20sIGludCBleHRlbmRfcmlnaHQp
IHsKLSAgaW50IGksIGxpbmVzaXplOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGludCBleHRlbmRfYm90dG9tLCBpbnQgZXh0ZW5kX3JpZ2h0LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGludCBpbnRlcmxlYXZlX3N0ZXApIHsKKyAgaW50IGksIGosIGxpbmVz
aXplOworICBjb25zdCBpbnQgc3RlcCA9IGludGVybGVhdmVfc3RlcCA8IDEgPyAxIDogaW50ZXJs
ZWF2ZV9zdGVwOwogCiAgIC8vIGNvcHkgdGhlIGxlZnQgYW5kIHJpZ2h0IG1vc3QgY29sdW1ucyBv
dXQKICAgY29uc3QgdWludDhfdCAqc3JjX3B0cjEgPSBzcmM7Ci0gIGNvbnN0IHVpbnQ4X3QgKnNy
Y19wdHIyID0gc3JjICsgdyAtIDE7CisgIGNvbnN0IHVpbnQ4X3QgKnNyY19wdHIyID0gc3JjICsg
KHcgLSAxKSAqIHN0ZXA7CiAgIHVpbnQ4X3QgKmRzdF9wdHIxID0gZHN0IC0gZXh0ZW5kX2xlZnQ7
CiAgIHVpbnQ4X3QgKmRzdF9wdHIyID0gZHN0ICsgdzsKIAogICBmb3IgKGkgPSAwOyBpIDwgaDsg
aSsrKSB7CiAgICAgbWVtc2V0KGRzdF9wdHIxLCBzcmNfcHRyMVswXSwgZXh0ZW5kX2xlZnQpOwot
ICAgIG1lbWNweShkc3RfcHRyMSArIGV4dGVuZF9sZWZ0LCBzcmNfcHRyMSwgdyk7CisgICAgaWYg
KHN0ZXAgPT0gMSkgeworICAgICAgbWVtY3B5KGRzdF9wdHIxICsgZXh0ZW5kX2xlZnQsIHNyY19w
dHIxLCB3KTsKKyAgICB9IGVsc2UgeworICAgICAgZm9yIChqID0gMDsgaiA8IHc7IGorKykgewor
ICAgICAgICBkc3RfcHRyMVtleHRlbmRfbGVmdCArIGpdID0gc3JjX3B0cjFbc3RlcCAqIGpdOwor
ICAgICAgfQorICAgIH0KICAgICBtZW1zZXQoZHN0X3B0cjIsIHNyY19wdHIyWzBdLCBleHRlbmRf
cmlnaHQpOwogICAgIHNyY19wdHIxICs9IHNyY19waXRjaDsKICAgICBzcmNfcHRyMiArPSBzcmNf
cGl0Y2g7CkBAIC0xMjIsNiArMTMwLDggQEAgdm9pZCB2cDlfY29weV9hbmRfZXh0ZW5kX2ZyYW1l
KGNvbnN0IFlWMTJfQlVGRkVSX0NPTkZJRyAqc3JjLAogICBjb25zdCBpbnQgZWxfdXYgPSBlbF95
ID4+IHV2X3dpZHRoX3N1YnNhbXBsaW5nOwogICBjb25zdCBpbnQgZWJfdXYgPSBlYl95ID4+IHV2
X2hlaWdodF9zdWJzYW1wbGluZzsKICAgY29uc3QgaW50IGVyX3V2ID0gZXJfeSA+PiB1dl93aWR0
aF9zdWJzYW1wbGluZzsKKyAgLy8gZGV0ZWN0IG52MTIgY29sb3JzcGFjZQorICBjb25zdCBpbnQg
Y2hyb21hX3N0ZXAgPSBzcmMtPnZfYnVmZmVyIC0gc3JjLT51X2J1ZmZlciA9PSAxID8gMiA6IDE7
CiAKICNpZiBDT05GSUdfVlA5X0hJR0hCSVRERVBUSAogICBpZiAoc3JjLT5mbGFncyAmIFlWMTJf
RkxBR19ISUdIQklUREVQVEgpIHsKQEAgLTE0MiwxNSArMTUyLDE1IEBAIHZvaWQgdnA5X2NvcHlf
YW5kX2V4dGVuZF9mcmFtZShjb25zdCBZVjEyX0JVRkZFUl9DT05GSUcgKnNyYywKIAogICBjb3B5
X2FuZF9leHRlbmRfcGxhbmUoc3JjLT55X2J1ZmZlciwgc3JjLT55X3N0cmlkZSwgZHN0LT55X2J1
ZmZlciwKICAgICAgICAgICAgICAgICAgICAgICAgIGRzdC0+eV9zdHJpZGUsIHNyYy0+eV9jcm9w
X3dpZHRoLCBzcmMtPnlfY3JvcF9oZWlnaHQsCi0gICAgICAgICAgICAgICAgICAgICAgICBldF95
LCBlbF95LCBlYl95LCBlcl95KTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGV0X3ksIGVsX3ks
IGViX3ksIGVyX3ksIDEpOwogCiAgIGNvcHlfYW5kX2V4dGVuZF9wbGFuZShzcmMtPnVfYnVmZmVy
LCBzcmMtPnV2X3N0cmlkZSwgZHN0LT51X2J1ZmZlciwKICAgICAgICAgICAgICAgICAgICAgICAg
IGRzdC0+dXZfc3RyaWRlLCBzcmMtPnV2X2Nyb3Bfd2lkdGgsIHNyYy0+dXZfY3JvcF9oZWlnaHQs
Ci0gICAgICAgICAgICAgICAgICAgICAgICBldF91diwgZWxfdXYsIGViX3V2LCBlcl91dik7Cisg
ICAgICAgICAgICAgICAgICAgICAgICBldF91diwgZWxfdXYsIGViX3V2LCBlcl91diwgY2hyb21h
X3N0ZXApOwogCiAgIGNvcHlfYW5kX2V4dGVuZF9wbGFuZShzcmMtPnZfYnVmZmVyLCBzcmMtPnV2
X3N0cmlkZSwgZHN0LT52X2J1ZmZlciwKICAgICAgICAgICAgICAgICAgICAgICAgIGRzdC0+dXZf
c3RyaWRlLCBzcmMtPnV2X2Nyb3Bfd2lkdGgsIHNyYy0+dXZfY3JvcF9oZWlnaHQsCi0gICAgICAg
ICAgICAgICAgICAgICAgICBldF91diwgZWxfdXYsIGViX3V2LCBlcl91dik7CisgICAgICAgICAg
ICAgICAgICAgICAgICBldF91diwgZWxfdXYsIGViX3V2LCBlcl91diwgY2hyb21hX3N0ZXApOwog
fQogCiB2b2lkIHZwOV9jb3B5X2FuZF9leHRlbmRfZnJhbWVfd2l0aF9yZWN0KGNvbnN0IFlWMTJf
QlVGRkVSX0NPTkZJRyAqc3JjLApAQCAtMTc2LDE2ICsxODYsMTggQEAgdm9pZCB2cDlfY29weV9h
bmRfZXh0ZW5kX2ZyYW1lX3dpdGhfcmVjdChjb25zdCBZVjEyX0JVRkZFUl9DT05GSUcgKnNyYywK
ICAgY29uc3QgaW50IGRzdF91dl9vZmZzZXQgPSAoKHNyY3kgKiBkc3QtPnV2X3N0cmlkZSkgPj4g
MSkgKyAoc3JjeCA+PiAxKTsKICAgY29uc3QgaW50IHNyY2hfdXYgPSBST1VORF9QT1dFUl9PRl9U
V08oc3JjaCwgMSk7CiAgIGNvbnN0IGludCBzcmN3X3V2ID0gUk9VTkRfUE9XRVJfT0ZfVFdPKHNy
Y3csIDEpOworICAvLyBkZXRlY3QgbnYxMiBjb2xvcnNwYWNlCisgIGNvbnN0IGludCBjaHJvbWFf
c3RlcCA9IHNyYy0+dl9idWZmZXIgLSBzcmMtPnVfYnVmZmVyID09IDEgPyAyIDogMTsKIAogICBj
b3B5X2FuZF9leHRlbmRfcGxhbmUoc3JjLT55X2J1ZmZlciArIHNyY195X29mZnNldCwgc3JjLT55
X3N0cmlkZSwKICAgICAgICAgICAgICAgICAgICAgICAgIGRzdC0+eV9idWZmZXIgKyBkc3RfeV9v
ZmZzZXQsIGRzdC0+eV9zdHJpZGUsIHNyY3csIHNyY2gsCi0gICAgICAgICAgICAgICAgICAgICAg
ICBldF95LCBlbF95LCBlYl95LCBlcl95KTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGV0X3ks
IGVsX3ksIGViX3ksIGVyX3ksIDEpOwogCiAgIGNvcHlfYW5kX2V4dGVuZF9wbGFuZShzcmMtPnVf
YnVmZmVyICsgc3JjX3V2X29mZnNldCwgc3JjLT51dl9zdHJpZGUsCiAgICAgICAgICAgICAgICAg
ICAgICAgICBkc3QtPnVfYnVmZmVyICsgZHN0X3V2X29mZnNldCwgZHN0LT51dl9zdHJpZGUsIHNy
Y3dfdXYsCi0gICAgICAgICAgICAgICAgICAgICAgICBzcmNoX3V2LCBldF91diwgZWxfdXYsIGVi
X3V2LCBlcl91dik7CisgICAgICAgICAgICAgICAgICAgICAgICBzcmNoX3V2LCBldF91diwgZWxf
dXYsIGViX3V2LCBlcl91diwgY2hyb21hX3N0ZXApOwogCiAgIGNvcHlfYW5kX2V4dGVuZF9wbGFu
ZShzcmMtPnZfYnVmZmVyICsgc3JjX3V2X29mZnNldCwgc3JjLT51dl9zdHJpZGUsCiAgICAgICAg
ICAgICAgICAgICAgICAgICBkc3QtPnZfYnVmZmVyICsgZHN0X3V2X29mZnNldCwgZHN0LT51dl9z
dHJpZGUsIHNyY3dfdXYsCi0gICAgICAgICAgICAgICAgICAgICAgICBzcmNoX3V2LCBldF91diwg
ZWxfdXYsIGViX3V2LCBlcl91dik7CisgICAgICAgICAgICAgICAgICAgICAgICBzcmNoX3V2LCBl
dF91diwgZWxfdXYsIGViX3V2LCBlcl91diwgY2hyb21hX3N0ZXApOwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfZmlyc3RwYXNzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9l
bmNvZGVyL3ZwOV9maXJzdHBhc3MuYwppbmRleCA3M2FjNGQ2MzkxMDM0NzhmZmRlZmFiZjUyZGVj
NzllNTYwMmEwMzU0Li4yYTljZjUyODk4ZmRjMWMyY2IzZGRlN2FkMzc1YzQ1ZGUwMjM1ZTFhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9maXJzdHBhc3MuYworKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9maXJzdHBhc3MuYwpAQCAtMzg5LDYgKzM4OSwyOSBA
QCBzdGF0aWMgaW50IGdldF9zZWFyY2hfcmFuZ2UoY29uc3QgVlA5X0NPTVAgKmNwaSkgewogICBy
ZXR1cm4gc3I7CiB9CiAKKy8vIFJlZHVjZSBsaW1pdHMgdG8ga2VlcCB0aGUgbW90aW9uIHNlYXJj
aCB3aXRoaW4gTVZfTUFYIG9mIHJlZl9tdi4gTm90IGRvaW5nCisvLyB0aGlzIGNhbiBiZSBwcm9i
bGVtYXRpYyBmb3IgYmlnIHZpZGVvcyAoOEspIGFuZCBtYXkgY2F1c2UgYXNzZXJ0IGZhaWx1cmUK
Ky8vIChvciBtZW1vcnkgdmlvbGF0aW9uKSBpbiBtdl9jb3N0LiBMaW1pdHMgYXJlIG9ubHkgbW9k
aWZpZWQgaWYgdGhleSB3b3VsZAorLy8gYmUgbm9uLWVtcHR5LiBSZXR1cm5zIDEgaWYgbGltaXRz
IGFyZSBub24tZW1wdHkuCitzdGF0aWMgaW50IGludGVyc2VjdF9saW1pdHNfd2l0aF9tdl9tYXgo
TXZMaW1pdHMgKm12X2xpbWl0cywgY29uc3QgTVYgKnJlZl9tdikgeworICBjb25zdCBpbnQgcm93
X21pbiA9CisgICAgICBWUFhNQVgobXZfbGltaXRzLT5yb3dfbWluLCAocmVmX212LT5yb3cgKyA3
IC0gTVZfTUFYKSA+PiAzKTsKKyAgY29uc3QgaW50IHJvd19tYXggPQorICAgICAgVlBYTUlOKG12
X2xpbWl0cy0+cm93X21heCwgKHJlZl9tdi0+cm93IC0gMSArIE1WX01BWCkgPj4gMyk7CisgIGNv
bnN0IGludCBjb2xfbWluID0KKyAgICAgIFZQWE1BWChtdl9saW1pdHMtPmNvbF9taW4sIChyZWZf
bXYtPmNvbCArIDcgLSBNVl9NQVgpID4+IDMpOworICBjb25zdCBpbnQgY29sX21heCA9CisgICAg
ICBWUFhNSU4obXZfbGltaXRzLT5jb2xfbWF4LCAocmVmX212LT5jb2wgLSAxICsgTVZfTUFYKSA+
PiAzKTsKKyAgaWYgKHJvd19taW4gPiByb3dfbWF4IHx8IGNvbF9taW4gPiBjb2xfbWF4KSB7Cisg
ICAgcmV0dXJuIDA7CisgIH0KKyAgbXZfbGltaXRzLT5yb3dfbWluID0gcm93X21pbjsKKyAgbXZf
bGltaXRzLT5yb3dfbWF4ID0gcm93X21heDsKKyAgbXZfbGltaXRzLT5jb2xfbWluID0gY29sX21p
bjsKKyAgbXZfbGltaXRzLT5jb2xfbWF4ID0gY29sX21heDsKKyAgcmV0dXJuIDE7Cit9CisKIHN0
YXRpYyB2b2lkIGZpcnN0X3Bhc3NfbW90aW9uX3NlYXJjaChWUDlfQ09NUCAqY3BpLCBNQUNST0JM
T0NLICp4LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IE1WICpy
ZWZfbXYsIE1WICpiZXN0X212LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGludCAqYmVzdF9tb3Rpb25fZXJyKSB7CkBAIC00MDMsOSArNDI2LDE0IEBAIHN0YXRpYyB2b2lk
IGZpcnN0X3Bhc3NfbW90aW9uX3NlYXJjaChWUDlfQ09NUCAqY3BpLCBNQUNST0JMT0NLICp4LAog
ICBpbnQgc3RlcF9wYXJhbSA9IDM7CiAgIGludCBmdXJ0aGVyX3N0ZXBzID0gKE1BWF9NVlNFQVJD
SF9TVEVQUyAtIDEpIC0gc3RlcF9wYXJhbTsKICAgY29uc3QgaW50IHNyID0gZ2V0X3NlYXJjaF9y
YW5nZShjcGkpOworICBjb25zdCBNdkxpbWl0cyB0bXBfbXZfbGltaXRzID0geC0+bXZfbGltaXRz
OwogICBzdGVwX3BhcmFtICs9IHNyOwogICBmdXJ0aGVyX3N0ZXBzIC09IHNyOwogCisgIGlmICgh
aW50ZXJzZWN0X2xpbWl0c193aXRoX212X21heCgmeC0+bXZfbGltaXRzLCByZWZfbXYpKSB7Cisg
ICAgcmV0dXJuOworICB9CisKICAgLy8gT3ZlcnJpZGUgdGhlIGRlZmF1bHQgdmFyaWFuY2UgZnVu
Y3Rpb24gdG8gdXNlIE1TRS4KICAgdl9mbl9wdHIudmYgPSBnZXRfYmxvY2tfdmFyaWFuY2VfZm4o
YnNpemUpOwogI2lmIENPTkZJR19WUDlfSElHSEJJVERFUFRICkBAIC00NTEsNiArNDc5LDcgQEAg
c3RhdGljIHZvaWQgZmlyc3RfcGFzc19tb3Rpb25fc2VhcmNoKFZQOV9DT01QICpjcGksIE1BQ1JP
QkxPQ0sgKngsCiAgICAgICB9CiAgICAgfQogICB9CisgIHgtPm12X2xpbWl0cyA9IHRtcF9tdl9s
aW1pdHM7CiB9CiAKIHN0YXRpYyBCTE9DS19TSVpFIGdldF9ic2l6ZShjb25zdCBWUDlfQ09NTU9O
ICpjbSwgaW50IG1iX3JvdywgaW50IG1iX2NvbCkgewpAQCAtODEwLDYgKzgzOSwyMiBAQCBzdGF0
aWMgdm9pZCBhY2N1bXVsYXRlX2ZwX21iX3Jvd19zdGF0KFRpbGVEYXRhRW5jICp0aGlzX3RpbGUs
CiAgICAgICAgICAgICAgICAgICAgZnBfYWNjX2RhdGEtPmltYWdlX2RhdGFfc3RhcnRfcm93KTsK
IH0KIAorI2lmIENPTkZJR19SQVRFX0NUUkwKK3N0YXRpYyB2b2lkIHN0b3JlX2ZwX21vdGlvbl92
ZWN0b3IoVlA5X0NPTVAgKmNwaSwgY29uc3QgTVYgKm12LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCBpbnQgbWJfcm93LCBjb25zdCBpbnQgbWJfY29sLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNVl9SRUZFUkVOQ0VfRlJBTUUgZnJhbWVfdHlw
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaW50IG12X2lkeCkg
eworICBWUDlfQ09NTU9OICpjb25zdCBjbSA9ICZjcGktPmNvbW1vbjsKKyAgY29uc3QgaW50IG1i
X2luZGV4ID0gbWJfcm93ICogY20tPm1iX2NvbHMgKyBtYl9jb2w7CisgIE1PVElPTl9WRUNUT1Jf
SU5GTyAqdGhpc19tb3Rpb25fdmVjdG9yX2luZm8gPQorICAgICAgJmNwaS0+ZnBfbW90aW9uX3Zl
Y3Rvcl9pbmZvW21iX2luZGV4XTsKKyAgdGhpc19tb3Rpb25fdmVjdG9yX2luZm8tPnJlZl9mcmFt
ZVttdl9pZHhdID0gZnJhbWVfdHlwZTsKKyAgaWYgKGZyYW1lX3R5cGUgIT0gSU5UUkFfRlJBTUUp
IHsKKyAgICB0aGlzX21vdGlvbl92ZWN0b3JfaW5mby0+bXZbbXZfaWR4XS5hc19tdiA9ICptdjsK
KyAgfQorfQorI2VuZGlmICAvLyBDT05GSUdfUkFURV9DVFJMCisKICNkZWZpbmUgTlpfTU9USU9O
X1BFTkFMVFkgMTI4CiAjZGVmaW5lIElOVFJBX01PREVfUEVOQUxUWSAxMDI0CiB2b2lkIHZwOV9m
aXJzdF9wYXNzX2VuY29kZV90aWxlX21iX3JvdyhWUDlfQ09NUCAqY3BpLCBUaHJlYWREYXRhICp0
ZCwKQEAgLTEwMzYsMTQgKzEwODEsMTkgQEAgdm9pZCB2cDlfZmlyc3RfcGFzc19lbmNvZGVfdGls
ZV9tYl9yb3coVlA5X0NPTVAgKmNwaSwgVGhyZWFkRGF0YSAqdGQsCiAgICAgeC0+bXZfbGltaXRz
LmNvbF9tYXggPQogICAgICAgICAoKGNtLT5tYl9jb2xzIC0gMSAtIG1iX2NvbCkgKiAxNikgKyBC
T1JERVJfTVZfUElYRUxTX0IxNjsKIAotICAgIC8vIE90aGVyIHRoYW4gZm9yIHRoZSBmaXJzdCBm
cmFtZSBkbyBhIG1vdGlvbiBzZWFyY2guCi0gICAgaWYgKGNtLT5jdXJyZW50X3ZpZGVvX2ZyYW1l
ID4gMCkgeworICAgIC8vIE90aGVyIHRoYW4gZm9yIGludHJhLW9ubHkgZnJhbWUgZG8gYSBtb3Rp
b24gc2VhcmNoLgorICAgIGlmICghZnJhbWVfaXNfaW50cmFfb25seShjbSkpIHsKICAgICAgIGlu
dCB0bXBfZXJyLCBtb3Rpb25fZXJyb3IsIHRoaXNfbW90aW9uX2Vycm9yLCByYXdfbW90aW9uX2Vy
cm9yOwogICAgICAgLy8gQXNzdW1lIDAsMCBtb3Rpb24gd2l0aCBubyBtdiBvdmVyaGVhZC4KICAg
ICAgIE1WIG12ID0geyAwLCAwIH0sIHRtcF9tdiA9IHsgMCwgMCB9OwogICAgICAgc3RydWN0IGJ1
Zl8yZCB1bnNjYWxlZF9sYXN0X3NvdXJjZV9idWZfMmQ7CiAgICAgICB2cDlfdmFyaWFuY2VfZm5f
cHRyX3Qgdl9mbl9wdHIgPSBjcGktPmZuX3B0cltic2l6ZV07CiAKKyNpZiBDT05GSUdfUkFURV9D
VFJMCisgICAgICAvLyBTdG9yZSB6ZXJvIG12IGFzIGRlZmF1bHQKKyAgICAgIHN0b3JlX2ZwX21v
dGlvbl92ZWN0b3IoY3BpLCAmbXYsIG1iX3JvdywgbWJfY29sLCBMQVNUX0ZSQU1FLCAwKTsKKyNl
bmRpZiAgLy8gQ09ORklHX1JBR0VfQ1RSTAorCiAgICAgICB4ZC0+cGxhbmVbMF0ucHJlWzBdLmJ1
ZiA9IGZpcnN0X3JlZl9idWYtPnlfYnVmZmVyICsgcmVjb25feW9mZnNldDsKICNpZiBDT05GSUdf
VlA5X0hJR0hCSVRERVBUSAogICAgICAgaWYgKHhkLT5jdXJfYnVmLT5mbGFncyAmIFlWMTJfRkxB
R19ISUdIQklUREVQVEgpIHsKQEAgLTExMDgsNiArMTE1OCw5IEBAIHZvaWQgdnA5X2ZpcnN0X3Bh
c3NfZW5jb2RlX3RpbGVfbWJfcm93KFZQOV9DT01QICpjcGksIFRocmVhZERhdGEgKnRkLAogICAg
ICAgICAgICAgICAgIHZwOV9nZXRfbXZwcmVkX3Zhcih4LCAmdG1wX212LCAmemVyb19tdiwgJnZf
Zm5fcHRyLCAwKTsKICAgICAgICAgICB9CiAgICAgICAgIH0KKyNpZiBDT05GSUdfUkFURV9DVFJM
CisgICAgICAgIHN0b3JlX2ZwX21vdGlvbl92ZWN0b3IoY3BpLCAmbXYsIG1iX3JvdywgbWJfY29s
LCBMQVNUX0ZSQU1FLCAwKTsKKyNlbmRpZiAgLy8gQ09ORklHX1JBR0VfQ1RSTAogCiAgICAgICAg
IC8vIFNlYXJjaCBpbiBhbiBvbGRlciByZWZlcmVuY2UgZnJhbWUuCiAgICAgICAgIGlmICgoY20t
PmN1cnJlbnRfdmlkZW9fZnJhbWUgPiAxKSAmJiBnbGRfeXYxMiAhPSBOVUxMKSB7CkBAIC0xMTI5
LDYgKzExODIsOSBAQCB2b2lkIHZwOV9maXJzdF9wYXNzX2VuY29kZV90aWxlX21iX3JvdyhWUDlf
Q09NUCAqY3BpLCBUaHJlYWREYXRhICp0ZCwKICNlbmRpZiAgLy8gQ09ORklHX1ZQOV9ISUdIQklU
REVQVEgKIAogICAgICAgICAgIGZpcnN0X3Bhc3NfbW90aW9uX3NlYXJjaChjcGksIHgsICZ6ZXJv
X212LCAmdG1wX212LCAmZ2ZfbW90aW9uX2Vycm9yKTsKKyNpZiBDT05GSUdfUkFURV9DVFJMCisg
ICAgICAgICAgc3RvcmVfZnBfbW90aW9uX3ZlY3RvcihjcGksICZ0bXBfbXYsIG1iX3JvdywgbWJf
Y29sLCBHT0xERU5fRlJBTUUsIDEpOworI2VuZGlmICAvLyBDT05GSUdfUkFHRV9DVFJMCiAKICAg
ICAgICAgICBpZiAoZ2ZfbW90aW9uX2Vycm9yIDwgbW90aW9uX2Vycm9yICYmIGdmX21vdGlvbl9l
cnJvciA8IHRoaXNfZXJyb3IpCiAgICAgICAgICAgICArKyhmcF9hY2NfZGF0YS0+c2Vjb25kX3Jl
Zl9jb3VudCk7CkBAIC0xMzAyLDYgKzEzNTgsOSBAQCB2b2lkIHZwOV9maXJzdF9wYXNzX2VuY29k
ZV90aWxlX21iX3JvdyhWUDlfQ09NUCAqY3BpLCBUaHJlYWREYXRhICp0ZCwKICAgICAgIH0KICAg
ICB9IGVsc2UgewogICAgICAgZnBfYWNjX2RhdGEtPnNyX2NvZGVkX2Vycm9yICs9IChpbnQ2NF90
KXRoaXNfZXJyb3I7CisjaWYgQ09ORklHX1JBVEVfQ1RSTAorICAgICAgc3RvcmVfZnBfbW90aW9u
X3ZlY3RvcihjcGksIE5VTEwsIG1iX3JvdywgbWJfY29sLCBJTlRSQV9GUkFNRSwgMCk7CisjZW5k
aWYgIC8vIENPTkZJR19SQUdFX0NUUkwKICAgICB9CiAgICAgZnBfYWNjX2RhdGEtPmNvZGVkX2Vy
cm9yICs9IChpbnQ2NF90KXRoaXNfZXJyb3I7CiAKQEAgLTEzMjgsNiArMTM4NywxMiBAQCBzdGF0
aWMgdm9pZCBmaXJzdF9wYXNzX2VuY29kZShWUDlfQ09NUCAqY3BpLCBGSVJTVFBBU1NfREFUQSAq
ZnBfYWNjX2RhdGEpIHsKICAgLy8gVGlsaW5nIGlzIGlnbm9yZWQgaW4gdGhlIGZpcnN0IHBhc3Mu
CiAgIHZwOV90aWxlX2luaXQodGlsZSwgY20sIDAsIDApOwogCisjaWYgQ09ORklHX1JBVEVfQ1RS
TAorICBmcF9tb3Rpb25fdmVjdG9yX2luZm9fcmVzZXQoY3BpLT5mcmFtZV9pbmZvLmZyYW1lX3dp
ZHRoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3BpLT5mcmFtZV9pbmZvLmZyYW1l
X2hlaWdodCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNwaS0+ZnBfbW90aW9uX3Zl
Y3Rvcl9pbmZvKTsKKyNlbmRpZgorCiAgIGZvciAobWJfcm93ID0gMDsgbWJfcm93IDwgY20tPm1i
X3Jvd3M7ICsrbWJfcm93KSB7CiAgICAgYmVzdF9yZWZfbXYgPSB6ZXJvX212OwogICAgIHZwOV9m
aXJzdF9wYXNzX2VuY29kZV90aWxlX21iX3JvdyhjcGksICZjcGktPnRkLCBmcF9hY2NfZGF0YSwg
JnRpbGVfZGF0YSwKQEAgLTE0NzgsNyArMTU0Myw4IEBAIHZvaWQgdnA5X2ZpcnN0X3Bhc3MoVlA5
X0NPTVAgKmNwaSwgY29uc3Qgc3RydWN0IGxvb2thaGVhZF9lbnRyeSAqc291cmNlKSB7CiAgICAg
ZmNsb3NlKHJlY29uX2ZpbGUpOwogICB9CiAKLSAgKytjbS0+Y3VycmVudF92aWRlb19mcmFtZTsK
KyAgLy8gSW4gdGhlIGZpcnN0IHBhc3MsIGV2ZXJ5IGZyYW1lIGlzIGNvbnNpZGVyZWQgYXMgYSBz
aG93IGZyYW1lLgorICB1cGRhdGVfZnJhbWVfaW5kZXhlcyhjbSwgLypzaG93X2ZyYW1lPSovMSk7
CiAgIGlmIChjcGktPnVzZV9zdmMpIHZwOV9pbmNfZnJhbWVfaW5fbGF5ZXIoY3BpKTsKIH0KIApA
QCAtMjQ3OCw5ICsyNTQ0LDYgQEAgdHlwZWRlZiBzdHJ1Y3QgUkFOR0UgewogICogc3RydWN0cy4K
ICAqLwogc3RhdGljIGludCBnZXRfZ29wX2NvZGluZ19mcmFtZV9udW0oCi0jaWYgQ09ORklHX1JB
VEVfQ1RSTAotICAgIGNvbnN0IGludCAqZXh0ZXJuYWxfYXJmX2luZGV4ZXMsCi0jZW5kaWYKICAg
ICBpbnQgKnVzZV9hbHRfcmVmLCBjb25zdCBGUkFNRV9JTkZPICpmcmFtZV9pbmZvLAogICAgIGNv
bnN0IEZJUlNUX1BBU1NfSU5GTyAqZmlyc3RfcGFzc19pbmZvLCBjb25zdCBSQVRFX0NPTlRST0wg
KnJjLAogICAgIGludCBnZl9zdGFydF9zaG93X2lkeCwgY29uc3QgUkFOR0UgKmFjdGl2ZV9nZl9p
bnRlcnZhbCwKQEAgLTI0OTYsMjQgKzI1NTksNiBAQCBzdGF0aWMgaW50IGdldF9nb3BfY29kaW5n
X2ZyYW1lX251bSgKICAgICAgIChmcmFtZV9pbmZvLT5mcmFtZV9oZWlnaHQgKyBmcmFtZV9pbmZv
LT5mcmFtZV93aWR0aCkgLyA0LjA7CiAgIGRvdWJsZSB6ZXJvX21vdGlvbl9hY2N1bXVsYXRvciA9
IDEuMDsKICAgaW50IGdvcF9jb2RpbmdfZnJhbWVzOwotI2lmIENPTkZJR19SQVRFX0NUUkwKLSAg
KHZvaWQpbXZfcmF0aW9fYWNjdW11bGF0b3JfdGhyZXNoOwotICAodm9pZClhY3RpdmVfZ2ZfaW50
ZXJ2YWw7Ci0gICh2b2lkKWdvcF9pbnRyYV9mYWN0b3I7Ci0KLSAgaWYgKGV4dGVybmFsX2FyZl9p
bmRleGVzICE9IE5VTEwgJiYgcmMtPmZyYW1lc190b19rZXkgPiAxKSB7Ci0gICAgLy8gZ29wX2Nv
ZGluZ19mcmFtZXMgPSAxIGlzIG5lY2Vzc2FyeSB0byBmaWx0ZXIgb3V0IHRoZSBvdmVybGF5IGZy
YW1lLAotICAgIC8vIHNpbmNlIHRoZSBhcmYgaXMgaW4gdGhpcyBncm91cCBvZiBwaWN0dXJlIGFu
ZCBpdHMgb3ZlcmxheSBpcyBpbiB0aGUgbmV4dC4KLSAgICBnb3BfY29kaW5nX2ZyYW1lcyA9IDE7
Ci0gICAgKnVzZV9hbHRfcmVmID0gMTsKLSAgICB3aGlsZSAoZ29wX2NvZGluZ19mcmFtZXMgPCBy
Yy0+ZnJhbWVzX3RvX2tleSkgewotICAgICAgY29uc3QgaW50IGZyYW1lX2luZGV4ID0gZ2Zfc3Rh
cnRfc2hvd19pZHggKyBnb3BfY29kaW5nX2ZyYW1lczsKLSAgICAgICsrZ29wX2NvZGluZ19mcmFt
ZXM7Ci0gICAgICBpZiAoZXh0ZXJuYWxfYXJmX2luZGV4ZXNbZnJhbWVfaW5kZXhdID09IDEpIGJy
ZWFrOwotICAgIH0KLSAgICByZXR1cm4gZ29wX2NvZGluZ19mcmFtZXM7Ci0gIH0KLSNlbmRpZiAg
Ly8gQ09ORklHX1JBVEVfQ1RSTAogCiAgICp1c2VfYWx0X3JlZiA9IDE7CiAgIGdvcF9jb2Rpbmdf
ZnJhbWVzID0gMDsKQEAgLTI3NDAsMTUgKzI3ODUsMjYgQEAgc3RhdGljIHZvaWQgZGVmaW5lX2dm
X2dyb3VwKFZQOV9DT01QICpjcGksIGludCBnZl9zdGFydF9zaG93X2lkeCkgewogICAgIGdvcF9p
bnRyYV9mYWN0b3IgPSAxLjA7CiAgIH0KIAotICB7Ci0gICAgZ29wX2NvZGluZ19mcmFtZXMgPSBn
ZXRfZ29wX2NvZGluZ19mcmFtZV9udW0oCiAjaWYgQ09ORklHX1JBVEVfQ1RSTAotICAgICAgICBj
cGktPmVuY29kZV9jb21tYW5kLmV4dGVybmFsX2FyZl9pbmRleGVzLAotI2VuZGlmCi0gICAgICAg
ICZ1c2VfYWx0X3JlZiwgZnJhbWVfaW5mbywgZmlyc3RfcGFzc19pbmZvLCByYywgZ2Zfc3RhcnRf
c2hvd19pZHgsCi0gICAgICAgICZhY3RpdmVfZ2ZfaW50ZXJ2YWwsIGdvcF9pbnRyYV9mYWN0b3Is
IGNwaS0+b3hjZi5sYWdfaW5fZnJhbWVzKTsKLSAgICB1c2VfYWx0X3JlZiAmPSBhbGxvd19hbHRf
cmVmOworICB7CisgICAgY29uc3QgR09QX0NPTU1BTkQgKmdvcF9jb21tYW5kID0gJmNwaS0+ZW5j
b2RlX2NvbW1hbmQuZ29wX2NvbW1hbmQ7CisgICAgYXNzZXJ0KGFsbG93X2FsdF9yZWYgPT0gMSk7
CisgICAgaWYgKGdvcF9jb21tYW5kLT51c2UpIHsKKyAgICAgIGdvcF9jb2RpbmdfZnJhbWVzID0g
Z29wX2NvbW1hbmRfY29kaW5nX2ZyYW1lX2NvdW50KGdvcF9jb21tYW5kKTsKKyAgICAgIHVzZV9h
bHRfcmVmID0gZ29wX2NvbW1hbmQtPnVzZV9hbHRfcmVmOworICAgIH0gZWxzZSB7CisgICAgICBn
b3BfY29kaW5nX2ZyYW1lcyA9IGdldF9nb3BfY29kaW5nX2ZyYW1lX251bSgKKyAgICAgICAgICAm
dXNlX2FsdF9yZWYsIGZyYW1lX2luZm8sIGZpcnN0X3Bhc3NfaW5mbywgcmMsIGdmX3N0YXJ0X3No
b3dfaWR4LAorICAgICAgICAgICZhY3RpdmVfZ2ZfaW50ZXJ2YWwsIGdvcF9pbnRyYV9mYWN0b3Is
IGNwaS0+b3hjZi5sYWdfaW5fZnJhbWVzKTsKKyAgICAgIHVzZV9hbHRfcmVmICY9IGFsbG93X2Fs
dF9yZWY7CisgICAgfQogICB9CisjZWxzZQorICBnb3BfY29kaW5nX2ZyYW1lcyA9IGdldF9nb3Bf
Y29kaW5nX2ZyYW1lX251bSgKKyAgICAgICZ1c2VfYWx0X3JlZiwgZnJhbWVfaW5mbywgZmlyc3Rf
cGFzc19pbmZvLCByYywgZ2Zfc3RhcnRfc2hvd19pZHgsCisgICAgICAmYWN0aXZlX2dmX2ludGVy
dmFsLCBnb3BfaW50cmFfZmFjdG9yLCBjcGktPm94Y2YubGFnX2luX2ZyYW1lcyk7CisgIHVzZV9h
bHRfcmVmICY9IGFsbG93X2FsdF9yZWY7CisjZW5kaWYKIAogICAvLyBXYXMgdGhlIGdyb3VwIGxl
bmd0aCBjb25zdHJhaW5lZCBieSB0aGUgcmVxdWlyZW1lbnQgZm9yIGEgbmV3IEtGPwogICByYy0+
Y29uc3RyYWluZWRfZ2ZfZ3JvdXAgPSAoZ29wX2NvZGluZ19mcmFtZXMgPj0gcmMtPmZyYW1lc190
b19rZXkpID8gMSA6IDA7CkBAIC0zNjc0LDYgKzM3MzAsNyBAQCB2b2lkIHZwOV9nZXRfbmV4dF9n
cm91cF9vZl9waWN0dXJlKGNvbnN0IFZQOV9DT01QICpjcGksIGludCAqZmlyc3RfaXNfa2V5X2Zy
YW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnVzZV9hbHRfcmVm
LCBpbnQgKmNvZGluZ19mcmFtZV9jb3VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50ICpmaXJzdF9zaG93X2lkeCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50ICpsYXN0X2dvcF91c2VfYWx0X3JlZikgeworICBjb25zdCBHT1BfQ09NTUFORCAq
Z29wX2NvbW1hbmQgPSAmY3BpLT5lbmNvZGVfY29tbWFuZC5nb3BfY29tbWFuZDsKICAgLy8gV2Ug
bWFrZSBhIGNvcHkgb2YgcmMgaGVyZSBiZWNhdXNlIHdlIHdhbnQgdG8gZ2V0IGluZm9ybWF0aW9u
IGZyb20gdGhlCiAgIC8vIGVuY29kZXIgd2l0aG91dCBjaGFuZ2luZyBpdHMgc3RhdGUuCiAgIC8v
IFRPRE8oYW5naWViaXJkKTogQXZvaWQgY29weWluZyByYyBoZXJlLgpAQCAtMzY5NiwxNCArMzc1
MywxOSBAQCB2b2lkIHZwOV9nZXRfbmV4dF9ncm91cF9vZl9waWN0dXJlKGNvbnN0IFZQOV9DT01Q
ICpjcGksIGludCAqZmlyc3RfaXNfa2V5X2ZyYW1lLAogICAgICpmaXJzdF9pc19rZXlfZnJhbWUg
PSAxOwogICB9CiAKLSAgKmNvZGluZ19mcmFtZV9jb3VudCA9IHZwOV9nZXRfZ29wX2NvZGluZ19m
cmFtZV9jb3VudCgKLSAgICAgIGNwaS0+ZW5jb2RlX2NvbW1hbmQuZXh0ZXJuYWxfYXJmX2luZGV4
ZXMsICZjcGktPm94Y2YsICZjcGktPmZyYW1lX2luZm8sCi0gICAgICAmY3BpLT50d29wYXNzLmZp
cnN0X3Bhc3NfaW5mbywgJnJjLCAqZmlyc3Rfc2hvd19pZHgsIG11bHRpX2xheWVyX2FyZiwKLSAg
ICAgIGFsbG93X2FsdF9yZWYsICpmaXJzdF9pc19rZXlfZnJhbWUsICpsYXN0X2dvcF91c2VfYWx0
X3JlZiwgdXNlX2FsdF9yZWYpOworICBpZiAoZ29wX2NvbW1hbmQtPnVzZSkgeworICAgICpjb2Rp
bmdfZnJhbWVfY291bnQgPSBnb3BfY29tbWFuZF9jb2RpbmdfZnJhbWVfY291bnQoZ29wX2NvbW1h
bmQpOworICAgICp1c2VfYWx0X3JlZiA9IGdvcF9jb21tYW5kLT51c2VfYWx0X3JlZjsKKyAgICBh
c3NlcnQoKmNvZGluZ19mcmFtZV9jb3VudCA8IHJjLmZyYW1lc190b19rZXkpOworICB9IGVsc2Ug
eworICAgICpjb2RpbmdfZnJhbWVfY291bnQgPSB2cDlfZ2V0X2dvcF9jb2RpbmdfZnJhbWVfY291
bnQoCisgICAgICAgICZjcGktPm94Y2YsICZjcGktPmZyYW1lX2luZm8sICZjcGktPnR3b3Bhc3Mu
Zmlyc3RfcGFzc19pbmZvLCAmcmMsCisgICAgICAgICpmaXJzdF9zaG93X2lkeCwgbXVsdGlfbGF5
ZXJfYXJmLCBhbGxvd19hbHRfcmVmLCAqZmlyc3RfaXNfa2V5X2ZyYW1lLAorICAgICAgICAqbGFz
dF9nb3BfdXNlX2FsdF9yZWYsIHVzZV9hbHRfcmVmKTsKKyAgfQogfQogCi1pbnQgdnA5X2dldF9n
b3BfY29kaW5nX2ZyYW1lX2NvdW50KGNvbnN0IGludCAqZXh0ZXJuYWxfYXJmX2luZGV4ZXMsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFZQOUVuY29kZXJDb25maWcg
Km94Y2YsCitpbnQgdnA5X2dldF9nb3BfY29kaW5nX2ZyYW1lX2NvdW50KGNvbnN0IFZQOUVuY29k
ZXJDb25maWcgKm94Y2YsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IEZSQU1FX0lORk8gKmZyYW1lX2luZm8sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IEZJUlNUX1BBU1NfSU5GTyAqZmlyc3RfcGFzc19pbmZvLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBSQVRFX0NPTlRST0wgKnJjLCBpbnQgc2hvd19p
ZHgsCkBAIC0zNzI2LDkgKzM3ODgsNiBAQCBpbnQgdnA5X2dldF9nb3BfY29kaW5nX2ZyYW1lX2Nv
dW50KGNvbnN0IGludCAqZXh0ZXJuYWxfYXJmX2luZGV4ZXMsCiAgIH0KIAogICBmcmFtZV9jb3Vu
dCA9IGdldF9nb3BfY29kaW5nX2ZyYW1lX251bSgKLSNpZiBDT05GSUdfUkFURV9DVFJMCi0gICAg
ICBleHRlcm5hbF9hcmZfaW5kZXhlcywKLSNlbmRpZgogICAgICAgdXNlX2FsdF9yZWYsIGZyYW1l
X2luZm8sIGZpcnN0X3Bhc3NfaW5mbywgcmMsIHNob3dfaWR4LAogICAgICAgJmFjdGl2ZV9nZl9p
bnRlcnZhbCwgZ29wX2ludHJhX2ZhY3Rvciwgb3hjZi0+bGFnX2luX2ZyYW1lcyk7CiAgICp1c2Vf
YWx0X3JlZiAmPSBhbGxvd19hbHRfcmVmOwpAQCAtMzczNyw4ICszNzk2LDcgQEAgaW50IHZwOV9n
ZXRfZ29wX2NvZGluZ19mcmFtZV9jb3VudChjb25zdCBpbnQgKmV4dGVybmFsX2FyZl9pbmRleGVz
LAogCiAvLyBVbmRlciBDT05GSUdfUkFURV9DVFJMLCBvbmNlIHRoZSBmaXJzdF9wYXNzX2luZm8g
aXMgcmVhZHksIHRoZSBudW1iZXIgb2YKIC8vIGNvZGluZyBmcmFtZXMgKGluY2x1ZGluZyBzaG93
IGZyYW1lIGFuZCBhbHQgcmVmKSBjYW4gYmUgZGV0ZXJtaW5lZC4KLWludCB2cDlfZ2V0X2NvZGlu
Z19mcmFtZV9udW0oY29uc3QgaW50ICpleHRlcm5hbF9hcmZfaW5kZXhlcywKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgVlA5RW5jb2RlckNvbmZpZyAqb3hjZiwKK2ludCB2cDlf
Z2V0X2NvZGluZ19mcmFtZV9udW0oY29uc3QgVlA5RW5jb2RlckNvbmZpZyAqb3hjZiwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRlJBTUVfSU5GTyAqZnJhbWVfaW5mbywKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRklSU1RfUEFTU19JTkZPICpmaXJzdF9w
YXNzX2luZm8sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBtdWx0aV9sYXllcl9h
cmYsIGludCBhbGxvd19hbHRfcmVmKSB7CkBAIC0zNzQ4LDcgKzM4MDYsNiBAQCBpbnQgdnA5X2dl
dF9jb2RpbmdfZnJhbWVfbnVtKGNvbnN0IGludCAqZXh0ZXJuYWxfYXJmX2luZGV4ZXMsCiAgIGlu
dCBnb3Bfc2hvd19mcmFtZXM7CiAgIGludCBzaG93X2lkeCA9IDA7CiAgIGludCBsYXN0X2dvcF91
c2VfYWx0X3JlZiA9IDA7Ci0gIHJjLnN0YXRpY19zY2VuZV9tYXhfZ2ZfaW50ZXJ2YWwgPSAyNTA7
CiAgIHZwOV9yY19pbml0KG94Y2YsIDEsICZyYyk7CiAKICAgd2hpbGUgKHNob3dfaWR4IDwgZmly
c3RfcGFzc19pbmZvLT5udW1fZnJhbWVzKSB7CkBAIC0zNzYyLDkgKzM4MTksOCBAQCBpbnQgdnA5
X2dldF9jb2RpbmdfZnJhbWVfbnVtKGNvbnN0IGludCAqZXh0ZXJuYWxfYXJmX2luZGV4ZXMsCiAg
ICAgfQogCiAgICAgZ29wX2NvZGluZ19mcmFtZV9jb3VudCA9IHZwOV9nZXRfZ29wX2NvZGluZ19m
cmFtZV9jb3VudCgKLSAgICAgICAgZXh0ZXJuYWxfYXJmX2luZGV4ZXMsIG94Y2YsIGZyYW1lX2lu
Zm8sIGZpcnN0X3Bhc3NfaW5mbywgJnJjLCBzaG93X2lkeCwKLSAgICAgICAgbXVsdGlfbGF5ZXJf
YXJmLCBhbGxvd19hbHRfcmVmLCBmaXJzdF9pc19rZXlfZnJhbWUsCi0gICAgICAgIGxhc3RfZ29w
X3VzZV9hbHRfcmVmLCAmdXNlX2FsdF9yZWYpOworICAgICAgICBveGNmLCBmcmFtZV9pbmZvLCBm
aXJzdF9wYXNzX2luZm8sICZyYywgc2hvd19pZHgsIG11bHRpX2xheWVyX2FyZiwKKyAgICAgICAg
YWxsb3dfYWx0X3JlZiwgZmlyc3RfaXNfa2V5X2ZyYW1lLCBsYXN0X2dvcF91c2VfYWx0X3JlZiwg
JnVzZV9hbHRfcmVmKTsKIAogICAgIHJjLnNvdXJjZV9hbHRfcmVmX2FjdGl2ZSA9IHVzZV9hbHRf
cmVmOwogICAgIGxhc3RfZ29wX3VzZV9hbHRfcmVmID0gdXNlX2FsdF9yZWY7CkBAIC0zNzc2LDYg
KzM4MzIsMzAgQEAgaW50IHZwOV9nZXRfY29kaW5nX2ZyYW1lX251bShjb25zdCBpbnQgKmV4dGVy
bmFsX2FyZl9pbmRleGVzLAogICB9CiAgIHJldHVybiBjb2RpbmdfZnJhbWVfbnVtOwogfQorCit2
b2lkIHZwOV9nZXRfa2V5X2ZyYW1lX21hcChjb25zdCBWUDlFbmNvZGVyQ29uZmlnICpveGNmLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRlJBTUVfSU5GTyAqZnJhbWVfaW5mbywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEZJUlNUX1BBU1NfSU5GTyAqZmlyc3Rf
cGFzc19pbmZvLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICprZXlfZnJhbWVfbWFw
KSB7CisgIGludCBzaG93X2lkeCA9IDA7CisgIFJBVEVfQ09OVFJPTCByYzsKKyAgdnA5X3JjX2lu
aXQob3hjZiwgMSwgJnJjKTsKKworICAvLyBrZXlfZnJhbWVfbWFwIHBvaW50cyB0byBhbiBpbnQg
YXJyYXkgd2l0aCBzaXplIGVxdWFsIHRvCisgIC8vIGZpcnN0X3Bhc3NfaW5mby0+bnVtX2ZyYW1l
cywgd2hpY2ggaXMgYWxzbyB0aGUgbnVtYmVyIG9mIHNob3cgZnJhbWVzIGluIHRoZQorICAvLyB2
aWRlby4KKyAgbWVtc2V0KGtleV9mcmFtZV9tYXAsIDAsCisgICAgICAgICBzaXplb2YoKmtleV9m
cmFtZV9tYXApICogZmlyc3RfcGFzc19pbmZvLT5udW1fZnJhbWVzKTsKKyAgd2hpbGUgKHNob3df
aWR4IDwgZmlyc3RfcGFzc19pbmZvLT5udW1fZnJhbWVzKSB7CisgICAgaW50IGtleV9mcmFtZV9n
cm91cF9zaXplOworICAgIGtleV9mcmFtZV9tYXBbc2hvd19pZHhdID0gMTsKKyAgICBrZXlfZnJh
bWVfZ3JvdXBfc2l6ZSA9IHZwOV9nZXRfZnJhbWVzX3RvX25leHRfa2V5KAorICAgICAgICBveGNm
LCBmcmFtZV9pbmZvLCBmaXJzdF9wYXNzX2luZm8sIHNob3dfaWR4LCByYy5taW5fZ2ZfaW50ZXJ2
YWwpOworICAgIGFzc2VydChrZXlfZnJhbWVfZ3JvdXBfc2l6ZSA+IDApOworICAgIHNob3dfaWR4
ICs9IGtleV9mcmFtZV9ncm91cF9zaXplOworICB9CisgIGFzc2VydChzaG93X2lkeCA9PSBmaXJz
dF9wYXNzX2luZm8tPm51bV9mcmFtZXMpOworfQogI2VuZGlmICAvLyBDT05GSUdfUkFURV9DVFJM
CiAKIEZJUlNUUEFTU19TVEFUUyB2cDlfZ2V0X2ZyYW1lX3N0YXRzKGNvbnN0IFRXT19QQVNTICp0
d29wYXNzKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9maXJzdHBh
c3MuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZpcnN0cGFzcy5oCmluZGV4IGRjYWYy
ZWVjNjc2MDMzZjg4OGJkMmFjNmQ4MTgxOWUwMzQzYTBmODAuLmIxMDQ3ZWFiMjI2ODFiYmM4YTNl
YzM3NGZkNjRkM2JiMjU5OTY3YWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIv
dnA5X2ZpcnN0cGFzcy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X2ZpcnN0cGFz
cy5oCkBAIC0yNjQsNyArMjY0LDYgQEAgdm9pZCB2cDlfZ2V0X25leHRfZ3JvdXBfb2ZfcGljdHVy
ZShjb25zdCBzdHJ1Y3QgVlA5X0NPTVAgKmNwaSwKIAogLyohXGJyaWVmIENhbGwgdGhpcyBmdW5j
dGlvbiBiZWZvcmUgY29kaW5nIGEgbmV3IGdyb3VwIG9mIHBpY3R1cmVzIHRvIGdldAogICogaW5m
b3JtYXRpb24gYWJvdXQgaXQuCi0gKiBccGFyYW1baW5dIGV4dGVybmFsX2FyZl9pbmRleGVzIEV4
dGVybmFsIGFyZiBpbmRleHMgcGFzc2VkIGluCiAgKiBccGFyYW1baW5dIG94Y2YgICAgICAgICAg
ICAgICAgIEVuY29kZXIgY29uZmlnCiAgKiBccGFyYW1baW5dIGZyYW1lX2luZm8gICAgICAgICAg
IEZyYW1lIGluZm8KICAqIFxwYXJhbVtpbl0gZmlyc3RfcGFzc19pbmZvICAgICAgRmlyc3QgcGFz
cyBzdGF0cwpAQCAtMjc5LDggKzI3OCw3IEBAIHZvaWQgdnA5X2dldF9uZXh0X2dyb3VwX29mX3Bp
Y3R1cmUoY29uc3Qgc3RydWN0IFZQOV9DT01QICpjcGksCiAgKgogICogXHJldHVybiBSZXR1cm5z
IGNvZGluZyBmcmFtZSBjb3VudAogICovCi1pbnQgdnA5X2dldF9nb3BfY29kaW5nX2ZyYW1lX2Nv
dW50KGNvbnN0IGludCAqZXh0ZXJuYWxfYXJmX2luZGV4ZXMsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBWUDlFbmNvZGVyQ29uZmlnICpveGNmLAoraW50
IHZwOV9nZXRfZ29wX2NvZGluZ19mcmFtZV9jb3VudChjb25zdCBzdHJ1Y3QgVlA5RW5jb2RlckNv
bmZpZyAqb3hjZiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRlJB
TUVfSU5GTyAqZnJhbWVfaW5mbywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgRklSU1RfUEFTU19JTkZPICpmaXJzdF9wYXNzX2luZm8sCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IFJBVEVfQ09OVFJPTCAqcmMsIGludCBzaG93X2lkeCwK
QEAgLTI4OCwxMSArMjg2LDIwIEBAIGludCB2cDlfZ2V0X2dvcF9jb2RpbmdfZnJhbWVfY291bnQo
Y29uc3QgaW50ICpleHRlcm5hbF9hcmZfaW5kZXhlcywKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50IGZpcnN0X2lzX2tleV9mcmFtZSwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW50IGxhc3RfZ29wX3VzZV9hbHRfcmVmLCBpbnQgKnVzZV9hbHRfcmVm
KTsKIAotaW50IHZwOV9nZXRfY29kaW5nX2ZyYW1lX251bShjb25zdCBpbnQgKmV4dGVybmFsX2Fy
Zl9pbmRleGVzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgVlA5
RW5jb2RlckNvbmZpZyAqb3hjZiwKK2ludCB2cDlfZ2V0X2NvZGluZ19mcmFtZV9udW0oY29uc3Qg
c3RydWN0IFZQOUVuY29kZXJDb25maWcgKm94Y2YsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IEZSQU1FX0lORk8gKmZyYW1lX2luZm8sCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNvbnN0IEZJUlNUX1BBU1NfSU5GTyAqZmlyc3RfcGFzc19pbmZvLAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBpbnQgbXVsdGlfbGF5ZXJfYXJmLCBpbnQgYWxsb3dfYWx0X3Jl
Zik7CisKKy8qIVxicmllZiBDb21wdXRlIGEga2V5IGZyYW1lIGJpbmFyeSBtYXAgaW5kaWNhdGVz
IHdoZXRoZXIga2V5IGZyYW1lcyBhcHBlYXIKKyAqIGluIHRoZSBjb3JyZXNwb25kaW5nIHBvc2l0
aW9ucy4gVGhlIHBhc3NlZCBpbiBrZXlfZnJhbWVfbWFwIG11c3QgcG9pbnQgdG8gYW4KKyAqIGlu
dGVnZXIgYXJyYXkgd2l0aCBsZW5ndGggZXF1YWwgdG8gZmlyc3RfcGFzc19pbmZvLT5udW1fZnJh
bWVzLCB3aGljaCBpcyB0aGUKKyAqIG51bWJlciBvZiBzaG93IGZyYW1lcyBpbiB0aGUgdmlkZW8u
CisgKi8KK3ZvaWQgdnA5X2dldF9rZXlfZnJhbWVfbWFwKGNvbnN0IHN0cnVjdCBWUDlFbmNvZGVy
Q29uZmlnICpveGNmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRlJBTUVfSU5G
TyAqZnJhbWVfaW5mbywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEZJUlNUX1BB
U1NfSU5GTyAqZmlyc3RfcGFzc19pbmZvLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50
ICprZXlfZnJhbWVfbWFwKTsKICNlbmRpZiAgLy8gQ09ORklHX1JBVEVfQ1RSTAogCiBGSVJTVFBB
U1NfU1RBVFMgdnA5X2dldF9mcmFtZV9zdGF0cyhjb25zdCBUV09fUEFTUyAqdHdvcGFzcyk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbW9kZS5jIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cDkvZW5jb2Rlci92cDlfcGlja21vZGUuYwppbmRleCAyM2M5NDNjMjFkMjQ2ZTBkZTgy
OWMyZjJkNWIwODMwOWMzNzk4ZGE1Li42OTVmZDQ4NGZjNmIzNzhiMjFlNWVmYzAzODMxMmZlMDUz
ZjY1ODJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9waWNrbW9kZS5j
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3BpY2ttb2RlLmMKQEAgLTExMjcsNyAr
MTEyNyw3IEBAIHN0YXRpYyBJTkxJTkUgdm9pZCB1cGRhdGVfdGhyZXNoX2ZyZXFfZmFjdF9yb3df
bXQoCiB9CiAKIHN0YXRpYyBJTkxJTkUgdm9pZCB1cGRhdGVfdGhyZXNoX2ZyZXFfZmFjdCgKLSAg
ICBWUDlfQ09NUCAqY3BpLCBUaWxlRGF0YUVuYyAqdGlsZV9kYXRhLCBpbnQgc291cmNlX3Zhcmlh
bmNlLAorICAgIFZQOV9DT01QICpjcGksIFRpbGVEYXRhRW5jICp0aWxlX2RhdGEsIHVuc2lnbmVk
IGludCBzb3VyY2VfdmFyaWFuY2UsCiAgICAgQkxPQ0tfU0laRSBic2l6ZSwgTVZfUkVGRVJFTkNF
X0ZSQU1FIHJlZl9mcmFtZSwgVEhSX01PREVTIGJlc3RfbW9kZV9pZHgsCiAgICAgUFJFRElDVElP
Tl9NT0RFIG1vZGUpIHsKICAgVEhSX01PREVTIHRocl9tb2RlX2lkeCA9IG1vZGVfaWR4W3JlZl9m
cmFtZV1bbW9kZV9vZmZzZXQobW9kZSldOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5j
b2Rlci92cDlfcmF0ZWN0cmwuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJs
LmMKaW5kZXggZWRiZWQ3MzBiOTY5MzZkNDc4MzFhMzAyZTRlNWMxMDRlMjUyNmE3Mi4uNGI4N2Zm
MmYwYzYwNjRiZTQyM2I4ODM2NDQ0YWE5YTIwMDQwNjFjYSAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfcmF0ZWN0cmwuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVy
L3ZwOV9yYXRlY3RybC5jCkBAIC0yNDUsMTEgKzI0NSwxMSBAQCBpbnQgdnA5X3JjX2NsYW1wX2lm
cmFtZV90YXJnZXRfc2l6ZShjb25zdCBWUDlfQ09NUCAqY29uc3QgY3BpLCBpbnQgdGFyZ2V0KSB7
CiAgIHJldHVybiB0YXJnZXQ7CiB9CiAKLS8vIFRPRE8obWFycGFuL2ppYW5qKTogYml0c19vZmZf
dGFyZ2V0IGFuZCBidWZmZXJfbGV2ZWwgYXJlIHVzZWQgaW4gdGhlIHNhYW1lCisvLyBUT0RPKG1h
cnBhbi9qaWFuaik6IGJpdHNfb2ZmX3RhcmdldCBhbmQgYnVmZmVyX2xldmVsIGFyZSB1c2VkIGlu
IHRoZSBzYW1lCiAvLyB3YXkgZm9yIENCUiBtb2RlLCBmb3IgdGhlIGJ1ZmZlcmluZyB1cGRhdGVz
IGJlbG93LiBMb29rIGludG8gcmVtb3Zpbmcgb25lCiAvLyBvZiB0aGVzZSAoaS5lLiwgYml0c19v
ZmZfdGFyZ2V0KS4KIC8vIFVwZGF0ZSB0aGUgYnVmZmVyIGxldmVsIGJlZm9yZSBlbmNvZGluZyB3
aXRoIHRoZSBwZXItZnJhbWUtYmFuZHdpZHRoLAotc3RhdGljIHZvaWQgdXBkYXRlX2J1ZmZlcl9s
ZXZlbF9wcmVlbmNvZGUoVlA5X0NPTVAgKmNwaSkgewordm9pZCB2cDlfdXBkYXRlX2J1ZmZlcl9s
ZXZlbF9wcmVlbmNvZGUoVlA5X0NPTVAgKmNwaSkgewogICBSQVRFX0NPTlRST0wgKmNvbnN0IHJj
ID0gJmNwaS0+cmM7CiAgIHJjLT5iaXRzX29mZl90YXJnZXQgKz0gcmMtPmF2Z19mcmFtZV9iYW5k
d2lkdGg7CiAgIC8vIENsaXAgdGhlIGJ1ZmZlciBsZXZlbCB0byB0aGUgbWF4aW11bSBzcGVjaWZp
ZWQgYnVmZmVyIHNpemUuCkBAIC00MDIsNiArNDAyLDcgQEAgdm9pZCB2cDlfcmNfaW5pdChjb25z
dCBWUDlFbmNvZGVyQ29uZmlnICpveGNmLCBpbnQgcGFzcywgUkFURV9DT05UUk9MICpyYykgewog
ICByYy0+ZmFjX2FjdGl2ZV93b3JzdF9nZiA9IDEwMDsKICAgcmMtPmZvcmNlX3FwbWluID0gMDsK
ICAgZm9yIChpID0gMDsgaSA8IE1BWF9MQUdfQlVGRkVSUzsgKytpKSByYy0+YXZnX3NvdXJjZV9z
YWRbaV0gPSAwOworICByYy0+ZnJhbWVzX3RvX2tleSA9IDA7CiAgIHJjLT5mcmFtZXNfc2luY2Vf
a2V5ID0gODsgIC8vIFNlbnNpYmxlIGRlZmF1bHQgZm9yIGZpcnN0IGZyYW1lLgogICByYy0+dGhp
c19rZXlfZnJhbWVfZm9yY2VkID0gMDsKICAgcmMtPm5leHRfa2V5X2ZyYW1lX2ZvcmNlZCA9IDA7
CkBAIC00MzAsMTEgKzQzMSwxNyBAQCB2b2lkIHZwOV9yY19pbml0KGNvbnN0IFZQOUVuY29kZXJD
b25maWcgKm94Y2YsIGludCBwYXNzLCBSQVRFX0NPTlRST0wgKnJjKSB7CiAgICAgcmMtPm1heF9n
Zl9pbnRlcnZhbCA9IHZwOV9yY19nZXRfZGVmYXVsdF9tYXhfZ2ZfaW50ZXJ2YWwoCiAgICAgICAg
IG94Y2YtPmluaXRfZnJhbWVyYXRlLCByYy0+bWluX2dmX2ludGVydmFsKTsKICAgcmMtPmJhc2Vs
aW5lX2dmX2ludGVydmFsID0gKHJjLT5taW5fZ2ZfaW50ZXJ2YWwgKyByYy0+bWF4X2dmX2ludGVy
dmFsKSAvIDI7CisgIGlmICgob3hjZi0+cGFzcyA9PSAwKSAmJiAob3hjZi0+cmNfbW9kZSA9PSBW
UFhfUSkpIHsKKyAgICByYy0+c3RhdGljX3NjZW5lX21heF9nZl9pbnRlcnZhbCA9IEZJWEVEX0dG
X0lOVEVSVkFMOworICB9IGVsc2UgeworICAgIHJjLT5zdGF0aWNfc2NlbmVfbWF4X2dmX2ludGVy
dmFsID0gTUFYX1NUQVRJQ19HRl9HUk9VUF9MRU5HVEg7CisgIH0KIAogICByYy0+Zm9yY2VfbWF4
X3EgPSAwOwogICByYy0+bGFzdF9wb3N0X2VuY29kZV9kcm9wcGVkX3NjZW5lX2NoYW5nZSA9IDA7
CiAgIHJjLT51c2VfcG9zdF9lbmNvZGVfZHJvcCA9IDA7CiAgIHJjLT5leHRfdXNlX3Bvc3RfZW5j
b2RlX2Ryb3AgPSAwOworICByYy0+ZGlzYWJsZV9vdmVyc2hvb3RfbWF4cV9jYnIgPSAwOwogICBy
Yy0+YXJmX2FjdGl2ZV9iZXN0X3F1YWxpdHlfYWRqdXN0bWVudF9mYWN0b3IgPSAxLjA7CiAgIHJj
LT5hcmZfaW5jcmVhc2VfYWN0aXZlX2Jlc3RfcXVhbGl0eSA9IDA7CiAgIHJjLT5wcmVzZXJ2ZV9h
cmZfYXNfZ2xkID0gMDsKQEAgLTYzNiw3ICs2NDMsNyBAQCBpbnQgdnA5X3JjX2Ryb3BfZnJhbWUo
VlA5X0NPTVAgKmNwaSkgewogICAgICAgICAvLyBJbiBwYXJ0aWN1bGFyIHRlbXBvcmFsIGxheWVy
IGNvdW50ZXIgKHdoaWNoIGlzIGluY3JlbWVudGVkIGluCiAgICAgICAgIC8vIHZwOV9pbmNfZnJh
bWVfaW5fbGF5ZXIoKSkgd29uJ3QgYmUgaW5jcmVtZW50ZWQsIHNvIG9uIGEgZHJvcHBlZAogICAg
ICAgICAvLyBmcmFtZSB3ZSB0cnkgdGhlIHNhbWUgdGVtcG9yYWxfbGF5ZXJfaWQgb24gbmV4dCBp
bmNvbWluZyBmcmFtZS4KLSAgICAgICAgLy8gVGhpcyBpcyB0byBhdm9pZCBhbiBpc3N1ZSB3aXRo
IHRlbXBvcmFsIGFsaWduZW1lbnQgd2l0aCBmdWxsCisgICAgICAgIC8vIFRoaXMgaXMgdG8gYXZv
aWQgYW4gaXNzdWUgd2l0aCB0ZW1wb3JhbCBhbGlnbm1lbnQgd2l0aCBmdWxsCiAgICAgICAgIC8v
IHN1cGVyZnJhbWUgZHJvcHBpbmcuCiAgICAgICAgIHZwOV9pbmNfZnJhbWVfaW5fbGF5ZXIoY3Bp
KTsKICAgICAgIH0KQEAgLTE2ODksOCArMTY5NiwxMCBAQCB2b2lkIHZwOV9yY19jb21wdXRlX2Zy
YW1lX3NpemVfYm91bmRzKGNvbnN0IFZQOV9DT01QICpjcGksIGludCBmcmFtZV90YXJnZXQsCiAg
IH0gZWxzZSB7CiAgICAgLy8gRm9yIHZlcnkgc21hbGwgcmF0ZSB0YXJnZXRzIHdoZXJlIHRoZSBm
cmFjdGlvbmFsIGFkanVzdG1lbnQKICAgICAvLyBtYXkgYmUgdGlueSBtYWtlIHN1cmUgdGhlcmUg
aXMgYXQgbGVhc3QgYSBtaW5pbXVtIHJhbmdlLgotICAgIGNvbnN0IGludCB0b2xfbG93ID0gKGNw
aS0+c2YucmVjb2RlX3RvbGVyYW5jZV9sb3cgKiBmcmFtZV90YXJnZXQpIC8gMTAwOwotICAgIGNv
bnN0IGludCB0b2xfaGlnaCA9IChjcGktPnNmLnJlY29kZV90b2xlcmFuY2VfaGlnaCAqIGZyYW1l
X3RhcmdldCkgLyAxMDA7CisgICAgY29uc3QgaW50IHRvbF9sb3cgPQorICAgICAgICAoaW50KSgo
KGludDY0X3QpY3BpLT5zZi5yZWNvZGVfdG9sZXJhbmNlX2xvdyAqIGZyYW1lX3RhcmdldCkgLyAx
MDApOworICAgIGNvbnN0IGludCB0b2xfaGlnaCA9CisgICAgICAgIChpbnQpKCgoaW50NjRfdClj
cGktPnNmLnJlY29kZV90b2xlcmFuY2VfaGlnaCAqIGZyYW1lX3RhcmdldCkgLyAxMDApOwogICAg
ICpmcmFtZV91bmRlcl9zaG9vdF9saW1pdCA9IFZQWE1BWChmcmFtZV90YXJnZXQgLSB0b2xfbG93
IC0gMTAwLCAwKTsKICAgICAqZnJhbWVfb3Zlcl9zaG9vdF9saW1pdCA9CiAgICAgICAgIFZQWE1J
TihmcmFtZV90YXJnZXQgKyB0b2xfaGlnaCArIDEwMCwgY3BpLT5yYy5tYXhfZnJhbWVfYmFuZHdp
ZHRoKTsKQEAgLTE3MDUsOSArMTcxNCwxNiBAQCB2b2lkIHZwOV9yY19zZXRfZnJhbWVfdGFyZ2V0
KFZQOV9DT01QICpjcGksIGludCB0YXJnZXQpIHsKIAogICAvLyBNb2RpZnkgZnJhbWUgc2l6ZSB0
YXJnZXQgd2hlbiBkb3duLXNjYWxpbmcuCiAgIGlmIChjcGktPm94Y2YucmVzaXplX21vZGUgPT0g
UkVTSVpFX0RZTkFNSUMgJiYKLSAgICAgIHJjLT5mcmFtZV9zaXplX3NlbGVjdG9yICE9IFVOU0NB
TEVEKQorICAgICAgcmMtPmZyYW1lX3NpemVfc2VsZWN0b3IgIT0gVU5TQ0FMRUQpIHsKICAgICBy
Yy0+dGhpc19mcmFtZV90YXJnZXQgPSAoaW50KShyYy0+dGhpc19mcmFtZV90YXJnZXQgKgogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhdGVfdGhyZXNoX211bHRbcmMtPmZyYW1l
X3NpemVfc2VsZWN0b3JdKTsKKyAgfQorCisjaWYgQ09ORklHX1JBVEVfQ1RSTAorICBpZiAoY3Bp
LT5lbmNvZGVfY29tbWFuZC51c2VfZXh0ZXJuYWxfdGFyZ2V0X2ZyYW1lX2JpdHMpIHsKKyAgICBy
Yy0+dGhpc19mcmFtZV90YXJnZXQgPSBjcGktPmVuY29kZV9jb21tYW5kLnRhcmdldF9mcmFtZV9i
aXRzOworICB9CisjZW5kaWYKIAogICAvLyBUYXJnZXQgcmF0ZSBwZXIgU0I2NCAoaW5jbHVkaW5n
IHBhcnRpYWwgU0I2NHMuCiAgIHJjLT5zYjY0X3RhcmdldF9yYXRlID0gKGludCkoKChpbnQ2NF90
KXJjLT50aGlzX2ZyYW1lX3RhcmdldCAqIDY0ICogNjQpIC8KQEAgLTE3ODYsOCArMTgwMiw5IEBA
IHN0YXRpYyB2b2lkIHVwZGF0ZV9hbHRyZWZfdXNhZ2UoVlA5X0NPTVAgKmNvbnN0IGNwaSkgewog
ICB9CiB9CiAKLXN0YXRpYyB2b2lkIGNvbXB1dGVfZnJhbWVfbG93X21vdGlvbihWUDlfQ09NUCAq
Y29uc3QgY3BpKSB7Cit2b2lkIHZwOV9jb21wdXRlX2ZyYW1lX2xvd19tb3Rpb24oVlA5X0NPTVAg
KmNvbnN0IGNwaSkgewogICBWUDlfQ09NTU9OICpjb25zdCBjbSA9ICZjcGktPmNvbW1vbjsKKyAg
U1ZDICpjb25zdCBzdmMgPSAmY3BpLT5zdmM7CiAgIGludCBtaV9yb3csIG1pX2NvbDsKICAgTU9E
RV9JTkZPICoqbWkgPSBjbS0+bWlfZ3JpZF92aXNpYmxlOwogICBSQVRFX0NPTlRST0wgKmNvbnN0
IHJjID0gJmNwaS0+cmM7CkBAIC0xODA0LDYgKzE4MjEsMTkgQEAgc3RhdGljIHZvaWQgY29tcHV0
ZV9mcmFtZV9sb3dfbW90aW9uKFZQOV9DT01QICpjb25zdCBjcGkpIHsKICAgfQogICBjbnRfemVy
b212ID0gMTAwICogY250X3plcm9tdiAvIChyb3dzICogY29scyk7CiAgIHJjLT5hdmdfZnJhbWVf
bG93X21vdGlvbiA9ICgzICogcmMtPmF2Z19mcmFtZV9sb3dfbW90aW9uICsgY250X3plcm9tdikg
Pj4gMjsKKworICAvLyBGb3IgU1ZDOiBzZXQgYXZnX2ZyYW1lX2xvd19tb3Rpb24gKG9ubHkgY29t
cHV0ZWQgb24gdG9wIHNwYXRpYWwgbGF5ZXIpCisgIC8vIHRvIGFsbCBsb3dlciBzcGF0aWFsIGxh
eWVycy4KKyAgaWYgKGNwaS0+dXNlX3N2YyAmJiBzdmMtPnNwYXRpYWxfbGF5ZXJfaWQgPT0gc3Zj
LT5udW1iZXJfc3BhdGlhbF9sYXllcnMgLSAxKSB7CisgICAgaW50IGk7CisgICAgZm9yIChpID0g
MDsgaSA8IHN2Yy0+bnVtYmVyX3NwYXRpYWxfbGF5ZXJzIC0gMTsgKytpKSB7CisgICAgICBjb25z
dCBpbnQgbGF5ZXIgPSBMQVlFUl9JRFNfVE9fSURYKGksIHN2Yy0+dGVtcG9yYWxfbGF5ZXJfaWQs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN2Yy0+bnVtYmVyX3Rl
bXBvcmFsX2xheWVycyk7CisgICAgICBMQVlFUl9DT05URVhUICpjb25zdCBsYyA9ICZzdmMtPmxh
eWVyX2NvbnRleHRbbGF5ZXJdOworICAgICAgUkFURV9DT05UUk9MICpjb25zdCBscmMgPSAmbGMt
PnJjOworICAgICAgbHJjLT5hdmdfZnJhbWVfbG93X21vdGlvbiA9IHJjLT5hdmdfZnJhbWVfbG93
X21vdGlvbjsKKyAgICB9CisgIH0KIH0KIAogdm9pZCB2cDlfcmNfcG9zdGVuY29kZV91cGRhdGUo
VlA5X0NPTVAgKmNwaSwgdWludDY0X3QgYnl0ZXNfdXNlZCkgewpAQCAtMTg4NSwxNCArMTkxNSwx
NSBAQCB2b2lkIHZwOV9yY19wb3N0ZW5jb2RlX3VwZGF0ZShWUDlfQ09NUCAqY3BpLCB1aW50NjRf
dCBieXRlc191c2VkKSB7CiAgIC8vIFJvbGxpbmcgbW9uaXRvcnMgb2Ygd2hldGhlciB3ZSBhcmUg
b3ZlciBvciB1bmRlcnNwZW5kaW5nIHVzZWQgdG8gaGVscAogICAvLyByZWd1bGF0ZSBtaW4gYW5k
IE1heCBRIGluIHR3byBwYXNzLgogICBpZiAoIWZyYW1lX2lzX2ludHJhX29ubHkoY20pKSB7Ci0g
ICAgcmMtPnJvbGxpbmdfdGFyZ2V0X2JpdHMgPSBST1VORF9QT1dFUl9PRl9UV08oCi0gICAgICAg
IHJjLT5yb2xsaW5nX3RhcmdldF9iaXRzICogMyArIHJjLT50aGlzX2ZyYW1lX3RhcmdldCwgMik7
Ci0gICAgcmMtPnJvbGxpbmdfYWN0dWFsX2JpdHMgPSBST1VORF9QT1dFUl9PRl9UV08oCi0gICAg
ICAgIHJjLT5yb2xsaW5nX2FjdHVhbF9iaXRzICogMyArIHJjLT5wcm9qZWN0ZWRfZnJhbWVfc2l6
ZSwgMik7Ci0gICAgcmMtPmxvbmdfcm9sbGluZ190YXJnZXRfYml0cyA9IFJPVU5EX1BPV0VSX09G
X1RXTygKLSAgICAgICAgcmMtPmxvbmdfcm9sbGluZ190YXJnZXRfYml0cyAqIDMxICsgcmMtPnRo
aXNfZnJhbWVfdGFyZ2V0LCA1KTsKLSAgICByYy0+bG9uZ19yb2xsaW5nX2FjdHVhbF9iaXRzID0g
Uk9VTkRfUE9XRVJfT0ZfVFdPKAotICAgICAgICByYy0+bG9uZ19yb2xsaW5nX2FjdHVhbF9iaXRz
ICogMzEgKyByYy0+cHJvamVjdGVkX2ZyYW1lX3NpemUsIDUpOworICAgIHJjLT5yb2xsaW5nX3Rh
cmdldF9iaXRzID0gKGludClST1VORDY0X1BPV0VSX09GX1RXTygKKyAgICAgICAgKGludDY0X3Qp
cmMtPnJvbGxpbmdfdGFyZ2V0X2JpdHMgKiAzICsgcmMtPnRoaXNfZnJhbWVfdGFyZ2V0LCAyKTsK
KyAgICByYy0+cm9sbGluZ19hY3R1YWxfYml0cyA9IChpbnQpUk9VTkQ2NF9QT1dFUl9PRl9UV08o
CisgICAgICAgIChpbnQ2NF90KXJjLT5yb2xsaW5nX2FjdHVhbF9iaXRzICogMyArIHJjLT5wcm9q
ZWN0ZWRfZnJhbWVfc2l6ZSwgMik7CisgICAgcmMtPmxvbmdfcm9sbGluZ190YXJnZXRfYml0cyA9
IChpbnQpUk9VTkQ2NF9QT1dFUl9PRl9UV08oCisgICAgICAgIChpbnQ2NF90KXJjLT5sb25nX3Jv
bGxpbmdfdGFyZ2V0X2JpdHMgKiAzMSArIHJjLT50aGlzX2ZyYW1lX3RhcmdldCwgNSk7CisgICAg
cmMtPmxvbmdfcm9sbGluZ19hY3R1YWxfYml0cyA9IChpbnQpUk9VTkQ2NF9QT1dFUl9PRl9UV08o
CisgICAgICAgIChpbnQ2NF90KXJjLT5sb25nX3JvbGxpbmdfYWN0dWFsX2JpdHMgKiAzMSArIHJj
LT5wcm9qZWN0ZWRfZnJhbWVfc2l6ZSwKKyAgICAgICAgNSk7CiAgIH0KIAogICAvLyBBY3R1YWwg
Yml0cyBzcGVudApAQCAtMTk0NiwyOSArMTk3NywxMSBAQCB2b2lkIHZwOV9yY19wb3N0ZW5jb2Rl
X3VwZGF0ZShWUDlfQ09NUCAqY3BpLCB1aW50NjRfdCBieXRlc191c2VkKSB7CiAgIH0KIAogICBp
ZiAob3hjZi0+cGFzcyA9PSAwKSB7Ci0gICAgaWYgKCFmcmFtZV9pc19pbnRyYV9vbmx5KGNtKSAm
JgotICAgICAgICAoIWNwaS0+dXNlX3N2YyB8fAotICAgICAgICAgKGNwaS0+dXNlX3N2YyAmJgot
ICAgICAgICAgICFzdmMtPmxheWVyX2NvbnRleHRbc3ZjLT50ZW1wb3JhbF9sYXllcl9pZF0uaXNf
a2V5X2ZyYW1lICYmCi0gICAgICAgICAgc3ZjLT5zcGF0aWFsX2xheWVyX2lkID09IHN2Yy0+bnVt
YmVyX3NwYXRpYWxfbGF5ZXJzIC0gMSkpKSB7Ci0gICAgICBjb21wdXRlX2ZyYW1lX2xvd19tb3Rp
b24oY3BpKTsKKyAgICBpZiAoIWZyYW1lX2lzX2ludHJhX29ubHkoY20pKQogICAgICAgaWYgKGNw
aS0+c2YudXNlX2FsdHJlZl9vbmVwYXNzKSB1cGRhdGVfYWx0cmVmX3VzYWdlKGNwaSk7Ci0gICAg
fQotICAgIC8vIEZvciBTVkM6IHNldCBhdmdfZnJhbWVfbG93X21vdGlvbiAob25seSBjb21wdXRl
ZCBvbiB0b3Agc3BhdGlhbCBsYXllcikKLSAgICAvLyB0byBhbGwgbG93ZXIgc3BhdGlhbCBsYXll
cnMuCi0gICAgaWYgKGNwaS0+dXNlX3N2YyAmJgotICAgICAgICBzdmMtPnNwYXRpYWxfbGF5ZXJf
aWQgPT0gc3ZjLT5udW1iZXJfc3BhdGlhbF9sYXllcnMgLSAxKSB7Ci0gICAgICBpbnQgaTsKLSAg
ICAgIGZvciAoaSA9IDA7IGkgPCBzdmMtPm51bWJlcl9zcGF0aWFsX2xheWVycyAtIDE7ICsraSkg
ewotICAgICAgICBjb25zdCBpbnQgbGF5ZXIgPSBMQVlFUl9JRFNfVE9fSURYKGksIHN2Yy0+dGVt
cG9yYWxfbGF5ZXJfaWQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgc3ZjLT5udW1iZXJfdGVtcG9yYWxfbGF5ZXJzKTsKLSAgICAgICAgTEFZRVJfQ09OVEVYVCAq
Y29uc3QgbGMgPSAmc3ZjLT5sYXllcl9jb250ZXh0W2xheWVyXTsKLSAgICAgICAgUkFURV9DT05U
Uk9MICpjb25zdCBscmMgPSAmbGMtPnJjOwotICAgICAgICBscmMtPmF2Z19mcmFtZV9sb3dfbW90
aW9uID0gcmMtPmF2Z19mcmFtZV9sb3dfbW90aW9uOwotICAgICAgfQotICAgIH0KICAgICBjcGkt
PnJjLmxhc3RfZnJhbWVfaXNfc3JjX2FsdHJlZiA9IGNwaS0+cmMuaXNfc3JjX2ZyYW1lX2FsdF9y
ZWY7CiAgIH0KKwogICBpZiAoIWZyYW1lX2lzX2ludHJhX29ubHkoY20pKSByYy0+cmVzZXRfaGln
aF9zb3VyY2Vfc2FkID0gMDsKIAogICByYy0+bGFzdF9hdmdfZnJhbWVfYmFuZHdpZHRoID0gcmMt
PmF2Z19mcmFtZV9iYW5kd2lkdGg7CkBAIC0xOTgzLDYgKzE5OTYsNyBAQCB2b2lkIHZwOV9yY19w
b3N0ZW5jb2RlX3VwZGF0ZV9kcm9wX2ZyYW1lKFZQOV9DT01QICpjcGkpIHsKICAgY3BpLT5yYy5y
Y18yX2ZyYW1lID0gMDsKICAgY3BpLT5yYy5yY18xX2ZyYW1lID0gMDsKICAgY3BpLT5yYy5sYXN0
X2F2Z19mcmFtZV9iYW5kd2lkdGggPSBjcGktPnJjLmF2Z19mcmFtZV9iYW5kd2lkdGg7CisgIGNw
aS0+cmMubGFzdF9xW0lOVEVSX0ZSQU1FXSA9IGNwaS0+Y29tbW9uLmJhc2VfcWluZGV4OwogICAv
LyBGb3IgU1ZDIG9uIGRyb3BwZWQgZnJhbWUgd2hlbiBmcmFtZWRyb3BfbW9kZSAhPSBMQVlFUl9E
Uk9QOgogICAvLyBpbiB0aGlzIG1vZGUgdGhlIHdob2xlIHN1cGVyZnJhbWUgbWF5IGJlIGRyb3Bw
ZWQgaWYgb25seSBhIHNpbmdsZSBsYXllcgogICAvLyBoYXMgYnVmZmVyIHVuZGVyZmxvdyAoYmVs
b3cgdGhyZXNob2xkKS4gU2luY2UgdGhpcyBjYW4gdGhlbiBsZWFkIHRvCkBAIC0xOTk4LDE0ICsy
MDEyLDE2IEBAIHZvaWQgdnA5X3JjX3Bvc3RlbmNvZGVfdXBkYXRlX2Ryb3BfZnJhbWUoVlA5X0NP
TVAgKmNwaSkgewogc3RhdGljIGludCBjYWxjX3BmcmFtZV90YXJnZXRfc2l6ZV9vbmVfcGFzc192
YnIoY29uc3QgVlA5X0NPTVAgKmNvbnN0IGNwaSkgewogICBjb25zdCBSQVRFX0NPTlRST0wgKmNv
bnN0IHJjID0gJmNwaS0+cmM7CiAgIGNvbnN0IGludCBhZl9yYXRpbyA9IHJjLT5hZl9yYXRpb19v
bmVwYXNzX3ZicjsKLSAgaW50IHRhcmdldCA9CisgIGludDY0X3QgdGFyZ2V0ID0KICAgICAgICgh
cmMtPmlzX3NyY19mcmFtZV9hbHRfcmVmICYmCiAgICAgICAgKGNwaS0+cmVmcmVzaF9nb2xkZW5f
ZnJhbWUgfHwgY3BpLT5yZWZyZXNoX2FsdF9yZWZfZnJhbWUpKQotICAgICAgICAgID8gKHJjLT5h
dmdfZnJhbWVfYmFuZHdpZHRoICogcmMtPmJhc2VsaW5lX2dmX2ludGVydmFsICogYWZfcmF0aW8p
IC8KKyAgICAgICAgICA/ICgoaW50NjRfdClyYy0+YXZnX2ZyYW1lX2JhbmR3aWR0aCAqIHJjLT5i
YXNlbGluZV9nZl9pbnRlcnZhbCAqCisgICAgICAgICAgICAgYWZfcmF0aW8pIC8KICAgICAgICAg
ICAgICAgICAocmMtPmJhc2VsaW5lX2dmX2ludGVydmFsICsgYWZfcmF0aW8gLSAxKQotICAgICAg
ICAgIDogKHJjLT5hdmdfZnJhbWVfYmFuZHdpZHRoICogcmMtPmJhc2VsaW5lX2dmX2ludGVydmFs
KSAvCisgICAgICAgICAgOiAoKGludDY0X3QpcmMtPmF2Z19mcmFtZV9iYW5kd2lkdGggKiByYy0+
YmFzZWxpbmVfZ2ZfaW50ZXJ2YWwpIC8KICAgICAgICAgICAgICAgICAocmMtPmJhc2VsaW5lX2dm
X2ludGVydmFsICsgYWZfcmF0aW8gLSAxKTsKLSAgcmV0dXJuIHZwOV9yY19jbGFtcF9wZnJhbWVf
dGFyZ2V0X3NpemUoY3BpLCB0YXJnZXQpOworICBpZiAodGFyZ2V0ID4gSU5UX01BWCkgdGFyZ2V0
ID0gSU5UX01BWDsKKyAgcmV0dXJuIHZwOV9yY19jbGFtcF9wZnJhbWVfdGFyZ2V0X3NpemUoY3Bp
LCAoaW50KXRhcmdldCk7CiB9CiAKIHN0YXRpYyBpbnQgY2FsY19pZnJhbWVfdGFyZ2V0X3NpemVf
b25lX3Bhc3NfdmJyKGNvbnN0IFZQOV9DT01QICpjb25zdCBjcGkpIHsKQEAgLTIwOTgsNyArMjEx
NCw3IEBAIHZvaWQgdnA5X3JjX2dldF9vbmVfcGFzc192YnJfcGFyYW1zKFZQOV9DT01QICpjcGkp
IHsKICAgICB2cDlfY3ljbGljX3JlZnJlc2hfdXBkYXRlX3BhcmFtZXRlcnMoY3BpKTsKIH0KIAot
c3RhdGljIGludCBjYWxjX3BmcmFtZV90YXJnZXRfc2l6ZV9vbmVfcGFzc19jYnIoY29uc3QgVlA5
X0NPTVAgKmNwaSkgeworaW50IHZwOV9jYWxjX3BmcmFtZV90YXJnZXRfc2l6ZV9vbmVfcGFzc19j
YnIoY29uc3QgVlA5X0NPTVAgKmNwaSkgewogICBjb25zdCBWUDlFbmNvZGVyQ29uZmlnICpveGNm
ID0gJmNwaS0+b3hjZjsKICAgY29uc3QgUkFURV9DT05UUk9MICpyYyA9ICZjcGktPnJjOwogICBj
b25zdCBTVkMgKmNvbnN0IHN2YyA9ICZjcGktPnN2YzsKQEAgLTIxNDcsNyArMjE2Myw3IEBAIHN0
YXRpYyBpbnQgY2FsY19wZnJhbWVfdGFyZ2V0X3NpemVfb25lX3Bhc3NfY2JyKGNvbnN0IFZQOV9D
T01QICpjcGkpIHsKICAgcmV0dXJuIFZQWE1BWChtaW5fZnJhbWVfdGFyZ2V0LCB0YXJnZXQpOwog
fQogCi1zdGF0aWMgaW50IGNhbGNfaWZyYW1lX3RhcmdldF9zaXplX29uZV9wYXNzX2Nicihjb25z
dCBWUDlfQ09NUCAqY3BpKSB7CitpbnQgdnA5X2NhbGNfaWZyYW1lX3RhcmdldF9zaXplX29uZV9w
YXNzX2Nicihjb25zdCBWUDlfQ09NUCAqY3BpKSB7CiAgIGNvbnN0IFJBVEVfQ09OVFJPTCAqcmMg
PSAmY3BpLT5yYzsKICAgY29uc3QgVlA5RW5jb2RlckNvbmZpZyAqb3hjZiA9ICZjcGktPm94Y2Y7
CiAgIGNvbnN0IFNWQyAqY29uc3Qgc3ZjID0gJmNwaS0+c3ZjOwpAQCAtMjIzNSw3ICsyMjUxLDcg
QEAgdm9pZCB2cDlfcmNfZ2V0X3N2Y19wYXJhbXMoVlA5X0NPTVAgKmNwaSkgewogICAvLyBQZXJp
b2RpYyBrZXkgZnJhbWVzIGlzIGJhc2VkIG9uIHRoZSBzdXBlci1mcmFtZSBjb3VudGVyCiAgIC8v
IChzdmMuY3VycmVudF9zdXBlcmZyYW1lKSwgYWxzbyBvbmx5IGJhc2Ugc3BhdGlhbCBsYXllciBp
cyBrZXkgZnJhbWUuCiAgIC8vIEtleSBmcmFtZSBpcyBzZXQgZm9yIGFueSBvZiB0aGUgZm9sbG93
aW5nOiB2ZXJ5IGZpcnN0IGZyYW1lLCBmcmFtZSBmbGFncwotICAvLyBpbmRpY2F0ZXMga2V5LCBz
dXBlcmZyYW1lIGNvdW50ZXIgaGl0cyBrZXkgZnJlcXVlbmNleSwgb3IgKG5vbi1pbnRyYSkgc3lu
YworICAvLyBpbmRpY2F0ZXMga2V5LCBzdXBlcmZyYW1lIGNvdW50ZXIgaGl0cyBrZXkgZnJlcXVl
bmN5LCBvciAobm9uLWludHJhKSBzeW5jCiAgIC8vIGZsYWcgaXMgc2V0IGZvciBzcGF0aWFsIGxh
eWVyIDAuCiAgIGlmICgoY20tPmN1cnJlbnRfdmlkZW9fZnJhbWUgPT0gMCAmJiAhc3ZjLT5wcmV2
aW91c19mcmFtZV9pc19pbnRyYV9vbmx5KSB8fAogICAgICAgKGNwaS0+ZnJhbWVfZmxhZ3MgJiBG
UkFNRUZMQUdTX0tFWSkgfHwKQEAgLTIyNTMsNyArMjI2OSw3IEBAIHZvaWQgdnA5X3JjX2dldF9z
dmNfcGFyYW1zKFZQOV9DT01QICpjcGkpIHsKICAgICAgIGNwaS0+cmVmX2ZyYW1lX2ZsYWdzICY9
ICh+VlA5X0xBU1RfRkxBRyAmIH5WUDlfR09MRF9GTEFHICYgflZQOV9BTFRfRkxBRyk7CiAgICAg
ICAvLyBBc3N1bXB0aW9uIGhlcmUgaXMgdGhhdCBMQVNUX0ZSQU1FIGlzIGJlaW5nIHVwZGF0ZWQg
Zm9yIGEga2V5ZnJhbWUuCiAgICAgICAvLyBUaHVzIG5vIGNoYW5nZSBpbiB1cGRhdGUgZmxhZ3Mu
Ci0gICAgICB0YXJnZXQgPSBjYWxjX2lmcmFtZV90YXJnZXRfc2l6ZV9vbmVfcGFzc19jYnIoY3Bp
KTsKKyAgICAgIHRhcmdldCA9IHZwOV9jYWxjX2lmcmFtZV90YXJnZXRfc2l6ZV9vbmVfcGFzc19j
YnIoY3BpKTsKICAgICB9CiAgIH0gZWxzZSB7CiAgICAgY20tPmZyYW1lX3R5cGUgPSBJTlRFUl9G
UkFNRTsKQEAgLTIyNjYsNyArMjI4Miw3IEBAIHZvaWQgdnA5X3JjX2dldF9zdmNfcGFyYW1zKFZQ
OV9DT01QICpjcGkpIHsKICAgICAgICAgICAoc3ZjLT5zcGF0aWFsX2xheWVyX2lkID09IDAgJiYg
Y20tPmN1cnJlbnRfdmlkZW9fZnJhbWUgPiAwKQogICAgICAgICAgICAgICA/IDAKICAgICAgICAg
ICAgICAgOiBzdmMtPmxheWVyX2NvbnRleHRbc3ZjLT50ZW1wb3JhbF9sYXllcl9pZF0uaXNfa2V5
X2ZyYW1lOwotICAgICAgdGFyZ2V0ID0gY2FsY19wZnJhbWVfdGFyZ2V0X3NpemVfb25lX3Bhc3Nf
Y2JyKGNwaSk7CisgICAgICB0YXJnZXQgPSB2cDlfY2FsY19wZnJhbWVfdGFyZ2V0X3NpemVfb25l
X3Bhc3NfY2JyKGNwaSk7CiAgICAgfQogICB9CiAKQEAgLTIyNzUsNyArMjI5MSw3IEBAIHZvaWQg
dnA5X3JjX2dldF9zdmNfcGFyYW1zKFZQOV9DT01QICpjcGkpIHsKICAgICAgICAgc3ZjLT5sYXll
cl9jb250ZXh0W2xheWVyXS5pc19rZXlfZnJhbWUgPT0gMSkgewogICAgICAgY20tPmZyYW1lX3R5
cGUgPSBLRVlfRlJBTUU7CiAgICAgICBjcGktPnJlZl9mcmFtZV9mbGFncyAmPSAoflZQOV9MQVNU
X0ZMQUcgJiB+VlA5X0dPTERfRkxBRyAmIH5WUDlfQUxUX0ZMQUcpOwotICAgICAgdGFyZ2V0ID0g
Y2FsY19pZnJhbWVfdGFyZ2V0X3NpemVfb25lX3Bhc3NfY2JyKGNwaSk7CisgICAgICB0YXJnZXQg
PSB2cDlfY2FsY19pZnJhbWVfdGFyZ2V0X3NpemVfb25lX3Bhc3NfY2JyKGNwaSk7CiAgICAgfQog
ICAgIC8vIFNldCB0aGUgYnVmZmVyIGlkeCBhbmQgcmVmcmVzaCBmbGFncyBmb3Iga2V5IGZyYW1l
cyBpbiBzaW11bGNhc3QgbW9kZS4KICAgICAvLyBOb3RlIHRoZSBidWZmZXIgc2xvdCBmb3IgbG9u
Zy10ZXJtIHJlZmVyZW5jZSBpcyBzZXQgYmVsb3cgKGxpbmUgMjI1NSksCkBAIC0yMzYwLDcgKzIz
NzYsNyBAQCB2b2lkIHZwOV9yY19nZXRfc3ZjX3BhcmFtcyhWUDlfQ09NUCAqY3BpKSB7CiAgIH0K
ICAgaWYgKHN2Yy0+c2V0X2ludHJhX29ubHlfZnJhbWUpIHsKICAgICBzZXRfaW50cmFfb25seV9m
cmFtZShjcGkpOwotICAgIHRhcmdldCA9IGNhbGNfaWZyYW1lX3RhcmdldF9zaXplX29uZV9wYXNz
X2NicihjcGkpOworICAgIHRhcmdldCA9IHZwOV9jYWxjX2lmcmFtZV90YXJnZXRfc2l6ZV9vbmVf
cGFzc19jYnIoY3BpKTsKICAgfQogICAvLyBBbnkgdXBkYXRlL2NoYW5nZSBvZiBnbG9iYWwgY3lj
bGljIHJlZnJlc2ggcGFyYW1ldGVycyAoYW1vdW50L2RlbHRhLXFwKQogICAvLyBzaG91bGQgYmUg
ZG9uZSBoZXJlLCBiZWZvcmUgdGhlIGZyYW1lIHFwIGlzIHNlbGVjdGVkLgpAQCAtMjM3MSw3ICsy
Mzg3LDggQEAgdm9pZCB2cDlfcmNfZ2V0X3N2Y19wYXJhbXMoVlA5X0NPTVAgKmNwaSkgewogICBp
ZiAoY20tPnNob3dfZnJhbWUpIHVwZGF0ZV9idWZmZXJfbGV2ZWxfc3ZjX3ByZWVuY29kZShjcGkp
OwogCiAgIGlmIChjcGktPm94Y2YucmVzaXplX21vZGUgPT0gUkVTSVpFX0RZTkFNSUMgJiYgc3Zj
LT5zaW5nbGVfbGF5ZXJfc3ZjID09IDEgJiYKLSAgICAgIHN2Yy0+c3BhdGlhbF9sYXllcl9pZCA9
PSBzdmMtPmZpcnN0X3NwYXRpYWxfbGF5ZXJfdG9fZW5jb2RlKSB7CisgICAgICBzdmMtPnNwYXRp
YWxfbGF5ZXJfaWQgPT0gc3ZjLT5maXJzdF9zcGF0aWFsX2xheWVyX3RvX2VuY29kZSAmJgorICAg
ICAgc3ZjLT50ZW1wb3JhbF9sYXllcl9pZCA9PSAwKSB7CiAgICAgTEFZRVJfQ09OVEVYVCAqbGMg
PSBOVUxMOwogICAgIGNwaS0+cmVzaXplX3BlbmRpbmcgPSB2cDlfcmVzaXplX29uZV9wYXNzX2Ni
cihjcGkpOwogICAgIGlmIChjcGktPnJlc2l6ZV9wZW5kaW5nKSB7CkBAIC0yMzg1LDYgKzI0MDIs
MTEgQEAgdm9pZCB2cDlfcmNfZ2V0X3N2Y19wYXJhbXMoVlA5X0NPTVAgKmNwaSkgewogICAgICAg
ICAgICAgY3BpLT5yZXNpemVfc2NhbGVfbnVtICogbGMtPnNjYWxpbmdfZmFjdG9yX251bTsKICAg
ICAgICAgbGMtPnNjYWxpbmdfZmFjdG9yX2Rlbl9yZXNpemUgPQogICAgICAgICAgICAgY3BpLT5y
ZXNpemVfc2NhbGVfZGVuICogbGMtPnNjYWxpbmdfZmFjdG9yX2RlbjsKKyAgICAgICAgLy8gUmVz
ZXQgcmF0ZSBjb250cm9sIGZvciBhbGwgdGVtcG9yYWwgbGF5ZXJzLgorICAgICAgICBsYy0+cmMu
YnVmZmVyX2xldmVsID0gbGMtPnJjLm9wdGltYWxfYnVmZmVyX2xldmVsOworICAgICAgICBsYy0+
cmMuYml0c19vZmZfdGFyZ2V0ID0gbGMtPnJjLm9wdGltYWxfYnVmZmVyX2xldmVsOworICAgICAg
ICBsYy0+cmMucmF0ZV9jb3JyZWN0aW9uX2ZhY3RvcnNbSU5URVJfRlJBTUVdID0KKyAgICAgICAg
ICAgIHJjLT5yYXRlX2NvcnJlY3Rpb25fZmFjdG9yc1tJTlRFUl9GUkFNRV07CiAgICAgICB9CiAg
ICAgICAvLyBTZXQgdGhlIHNpemUgZm9yIHRoaXMgY3VycmVudCB0ZW1wb3JhbCBsYXllci4KICAg
ICAgIGxjID0gJnN2Yy0+bGF5ZXJfY29udGV4dFtzdmMtPnNwYXRpYWxfbGF5ZXJfaWQgKgpAQCAt
MjM5NCw5ICsyNDE2LDExIEBAIHZvaWQgdnA5X3JjX2dldF9zdmNfcGFyYW1zKFZQOV9DT01QICpj
cGkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxjLT5zY2FsaW5nX2ZhY3Rvcl9udW1f
cmVzaXplLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbGMtPnNjYWxpbmdfZmFjdG9yX2Rl
bl9yZXNpemUsICZ3aWR0aCwgJmhlaWdodCk7CiAgICAgICB2cDlfc2V0X3NpemVfbGl0ZXJhbChj
cGksIHdpZHRoLCBoZWlnaHQpOworICAgICAgc3ZjLT5yZXNpemVfc2V0ID0gMTsKICAgICB9CiAg
IH0gZWxzZSB7CiAgICAgY3BpLT5yZXNpemVfcGVuZGluZyA9IDA7CisgICAgc3ZjLT5yZXNpemVf
c2V0ID0gMDsKICAgfQogfQogCkBAIC0yNDMzLDEzICsyNDU3LDEzIEBAIHZvaWQgdnA5X3JjX2dl
dF9vbmVfcGFzc19jYnJfcGFyYW1zKFZQOV9DT01QICpjcGkpIHsKICAgICB2cDlfY3ljbGljX3Jl
ZnJlc2hfdXBkYXRlX3BhcmFtZXRlcnMoY3BpKTsKIAogICBpZiAoZnJhbWVfaXNfaW50cmFfb25s
eShjbSkpCi0gICAgdGFyZ2V0ID0gY2FsY19pZnJhbWVfdGFyZ2V0X3NpemVfb25lX3Bhc3NfY2Jy
KGNwaSk7CisgICAgdGFyZ2V0ID0gdnA5X2NhbGNfaWZyYW1lX3RhcmdldF9zaXplX29uZV9wYXNz
X2NicihjcGkpOwogICBlbHNlCi0gICAgdGFyZ2V0ID0gY2FsY19wZnJhbWVfdGFyZ2V0X3NpemVf
b25lX3Bhc3NfY2JyKGNwaSk7CisgICAgdGFyZ2V0ID0gdnA5X2NhbGNfcGZyYW1lX3RhcmdldF9z
aXplX29uZV9wYXNzX2NicihjcGkpOwogCiAgIHZwOV9yY19zZXRfZnJhbWVfdGFyZ2V0KGNwaSwg
dGFyZ2V0KTsKIAotICBpZiAoY20tPnNob3dfZnJhbWUpIHVwZGF0ZV9idWZmZXJfbGV2ZWxfcHJl
ZW5jb2RlKGNwaSk7CisgIGlmIChjbS0+c2hvd19mcmFtZSkgdnA5X3VwZGF0ZV9idWZmZXJfbGV2
ZWxfcHJlZW5jb2RlKGNwaSk7CiAKICAgaWYgKGNwaS0+b3hjZi5yZXNpemVfbW9kZSA9PSBSRVNJ
WkVfRFlOQU1JQykKICAgICBjcGktPnJlc2l6ZV9wZW5kaW5nID0gdnA5X3Jlc2l6ZV9vbmVfcGFz
c19jYnIoY3BpKTsKQEAgLTI1NjksNyArMjU5Myw3IEBAIHZvaWQgdnA5X3JjX3VwZGF0ZV9mcmFt
ZXJhdGUoVlA5X0NPTVAgKmNwaSkgewogCiAgIC8vIEEgbWF4aW11bSBiaXRyYXRlIGZvciBhIGZy
YW1lIGlzIGRlZmluZWQuCiAgIC8vIEhvd2V2ZXIgdGhpcyBsaW1pdCBpcyBleHRlbmRlZCBpZiBh
IHZlcnkgaGlnaCByYXRlIGlzIGdpdmVuIG9uIHRoZSBjb21tYW5kCi0gIC8vIGxpbmUgb3IgdGhl
IHRoZSByYXRlIGNhbm5ub3QgYmUgYWNoZWl2ZWQgYmVjYXVzZSBvZiBhIHVzZXIgc3BlY2lmaWNl
ZCBtYXggcQorICAvLyBsaW5lIG9yIHRoZSByYXRlIGNhbiBub3QgYmUgYWNoaWV2ZWQgYmVjYXVz
ZSBvZiBhIHVzZXIgc3BlY2lmaWVkIG1heCBxCiAgIC8vIChlLmcuIHdoZW4gdGhlIHVzZXIgc3Bl
Y2lmaWVzIGxvc3NsZXNzIGVuY29kZSkuCiAgIC8vCiAgIC8vIElmIGEgbGV2ZWwgaXMgc3BlY2lm
aWVkIHRoYXQgcmVxdWlyZXMgYSBsb3dlciBtYXhpbXVtIHJhdGUgdGhlbiB0aGUgbGV2ZWwKQEAg
LTI2NTMsOSArMjY3NywxMSBAQCBpbnQgdnA5X3Jlc2l6ZV9vbmVfcGFzc19jYnIoVlA5X0NPTVAg
KmNwaSkgewogICBSRVNJWkVfQUNUSU9OIHJlc2l6ZV9hY3Rpb24gPSBOT19SRVNJWkU7CiAgIGlu
dCBhdmdfcXBfdGhyMSA9IDcwOwogICBpbnQgYXZnX3FwX3RocjIgPSA1MDsKLSAgaW50IG1pbl93
aWR0aCA9IDE4MDsKLSAgaW50IG1pbl9oZWlnaHQgPSA5MDsKKyAgLy8gRG9uJ3QgYWxsb3cgZm9y
IHJlc2l6ZWQgZnJhbWUgdG8gZ28gYmVsb3cgMzIweDE4MCwgcmVzaXplIGluIHN0ZXBzIG9mIDMv
NC4KKyAgaW50IG1pbl93aWR0aCA9ICgzMjAgKiA0KSAvIDM7CisgIGludCBtaW5faGVpZ2h0ID0g
KDE4MCAqIDQpIC8gMzsKICAgaW50IGRvd25fc2l6ZV9vbiA9IDE7CisgIGludCBmb3JjZV9kb3du
c2l6ZV9yYXRlID0gMDsKICAgY3BpLT5yZXNpemVfc2NhbGVfbnVtID0gMTsKICAgY3BpLT5yZXNp
emVfc2NhbGVfZGVuID0gMTsKICAgLy8gRG9uJ3QgcmVzaXplIG9uIGtleSBmcmFtZTsgcmVzZXQg
dGhlIGNvdW50ZXJzIG9uIGtleSBmcmFtZS4KQEAgLTI2NjUsMTkgKzI2OTEsOCBAQCBpbnQgdnA5
X3Jlc2l6ZV9vbmVfcGFzc19jYnIoVlA5X0NPTVAgKmNwaSkgewogICAgIHJldHVybiAwOwogICB9
CiAKLSAgLy8gQ2hlY2sgY3VycmVudCBmcmFtZSByZXNsdXRpb24gdG8gYXZvaWQgZ2VuZXJhdGlu
ZyBmcmFtZXMgc21hbGxlciB0aGFuCi0gIC8vIHRoZSBtaW5pbXVtIHJlc29sdXRpb24uCi0gIGlm
IChPTkVIQUxGT05MWV9SRVNJWkUpIHsKLSAgICBpZiAoKGNtLT53aWR0aCA+PiAxKSA8IG1pbl93
aWR0aCB8fCAoY20tPmhlaWdodCA+PiAxKSA8IG1pbl9oZWlnaHQpCi0gICAgICBkb3duX3NpemVf
b24gPSAwOwotICB9IGVsc2UgewotICAgIGlmIChjcGktPnJlc2l6ZV9zdGF0ZSA9PSBPUklHICYm
Ci0gICAgICAgIChjbS0+d2lkdGggKiAzIC8gNCA8IG1pbl93aWR0aCB8fCBjbS0+aGVpZ2h0ICog
MyAvIDQgPCBtaW5faGVpZ2h0KSkKLSAgICAgIHJldHVybiAwOwotICAgIGVsc2UgaWYgKGNwaS0+
cmVzaXplX3N0YXRlID09IFRIUkVFX1FVQVJURVIgJiYKLSAgICAgICAgICAgICAoY20tPndpZHRo
ICogMyAvIDQgPCBtaW5fd2lkdGggfHwgY20tPmhlaWdodCAqIDMgLyA0IDwgbWluX2hlaWdodCkp
Ci0gICAgICBkb3duX3NpemVfb24gPSAwOwotICB9CisgIC8vIE5vIHJlc2l6aW5nIGRvd24gaWYg
ZnJhbWUgc2l6ZSBpcyBiZWxvdyBzb21lIGxpbWl0LgorICBpZiAoKGNtLT53aWR0aCAqIGNtLT5o
ZWlnaHQpIDwgbWluX3dpZHRoICogbWluX2hlaWdodCkgZG93bl9zaXplX29uID0gMDsKIAogI2lm
IENPTkZJR19WUDlfVEVNUE9SQUxfREVOT0lTSU5HCiAgIC8vIElmIGRlbm9pc2VyIGlzIG9uLCBh
cHBseSBhIHNtYWxsZXIgcXAgdGhyZXNob2xkLgpAQCAtMjY4NywxMSArMjcwMiwzMiBAQCBpbnQg
dnA5X3Jlc2l6ZV9vbmVfcGFzc19jYnIoVlA5X0NPTVAgKmNwaSkgewogICB9CiAjZW5kaWYKIAor
ICAvLyBGb3JjZSBkb3duc2l6ZSBiYXNlZCBvbiBwZXItZnJhbWUtYmFuZHdpZHRoLCBmb3IgZXh0
cmVtZSBjYXNlLAorICAvLyBmb3IgSEQgaW5wdXQuCisgIGlmIChjcGktPnJlc2l6ZV9zdGF0ZSA9
PSBPUklHICYmIGNtLT53aWR0aCAqIGNtLT5oZWlnaHQgPj0gMTI4MCAqIDcyMCkgeworICAgIGlm
IChyYy0+YXZnX2ZyYW1lX2JhbmR3aWR0aCA8IDMwMDAwMCAvIDMwKSB7CisgICAgICByZXNpemVf
YWN0aW9uID0gRE9XTl9PTkVIQUxGOworICAgICAgY3BpLT5yZXNpemVfc3RhdGUgPSBPTkVfSEFM
RjsKKyAgICAgIGZvcmNlX2Rvd25zaXplX3JhdGUgPSAxOworICAgIH0gZWxzZSBpZiAocmMtPmF2
Z19mcmFtZV9iYW5kd2lkdGggPCA0MDAwMDAgLyAzMCkgeworICAgICAgcmVzaXplX2FjdGlvbiA9
IE9ORUhBTEZPTkxZX1JFU0laRSA/IERPV05fT05FSEFMRiA6IERPV05fVEhSRUVGT1VSOworICAg
ICAgY3BpLT5yZXNpemVfc3RhdGUgPSBPTkVIQUxGT05MWV9SRVNJWkUgPyBPTkVfSEFMRiA6IFRI
UkVFX1FVQVJURVI7CisgICAgICBmb3JjZV9kb3duc2l6ZV9yYXRlID0gMTsKKyAgICB9CisgIH0g
ZWxzZSBpZiAoY3BpLT5yZXNpemVfc3RhdGUgPT0gVEhSRUVfUVVBUlRFUiAmJgorICAgICAgICAg
ICAgIGNtLT53aWR0aCAqIGNtLT5oZWlnaHQgPj0gOTYwICogNTQwKSB7CisgICAgaWYgKHJjLT5h
dmdfZnJhbWVfYmFuZHdpZHRoIDwgMzAwMDAwIC8gMzApIHsKKyAgICAgIHJlc2l6ZV9hY3Rpb24g
PSBET1dOX09ORUhBTEY7CisgICAgICBjcGktPnJlc2l6ZV9zdGF0ZSA9IE9ORV9IQUxGOworICAg
ICAgZm9yY2VfZG93bnNpemVfcmF0ZSA9IDE7CisgICAgfQorICB9CisKICAgLy8gUmVzaXplIGJh
c2VkIG9uIGF2ZXJhZ2UgYnVmZmVyIHVuZGVyZmxvdyBhbmQgUVAgb3ZlciBzb21lIHdpbmRvdy4K
ICAgLy8gSWdub3JlIHNhbXBsZXMgY2xvc2UgdG8ga2V5IGZyYW1lLCBzaW5jZSBRUCBpcyB1c3Vh
bGx5IGhpZ2ggYWZ0ZXIga2V5LgotICBpZiAoY3BpLT5yYy5mcmFtZXNfc2luY2Vfa2V5ID4gMiAq
IGNwaS0+ZnJhbWVyYXRlKSB7Ci0gICAgY29uc3QgaW50IHdpbmRvdyA9IChpbnQpKDQgKiBjcGkt
PmZyYW1lcmF0ZSk7Ci0gICAgY3BpLT5yZXNpemVfYXZnX3FwICs9IGNtLT5iYXNlX3FpbmRleDsK
KyAgaWYgKCFmb3JjZV9kb3duc2l6ZV9yYXRlICYmIGNwaS0+cmMuZnJhbWVzX3NpbmNlX2tleSA+
IGNwaS0+ZnJhbWVyYXRlKSB7CisgICAgY29uc3QgaW50IHdpbmRvdyA9IFZQWE1JTigzMCwgKGlu
dCkoMiAqIGNwaS0+ZnJhbWVyYXRlKSk7CisgICAgY3BpLT5yZXNpemVfYXZnX3FwICs9IHJjLT5s
YXN0X3FbSU5URVJfRlJBTUVdOwogICAgIGlmIChjcGktPnJjLmJ1ZmZlcl9sZXZlbCA8IChpbnQp
KDMwICogcmMtPm9wdGltYWxfYnVmZmVyX2xldmVsIC8gMTAwKSkKICAgICAgICsrY3BpLT5yZXNp
emVfYnVmZmVyX3VuZGVyZmxvdzsKICAgICArK2NwaS0+cmVzaXplX2NvdW50OwpAQCAtMjcwMyw4
ICsyNzM5LDkgQEAgaW50IHZwOV9yZXNpemVfb25lX3Bhc3NfY2JyKFZQOV9DT01QICpjcGkpIHsK
ICAgICAgIC8vIFJlc2l6ZSBiYWNrIHVwIGlmIGF2ZXJhZ2UgUVAgaXMgbG93LCBhbmQgd2UgYXJl
IGN1cnJlbnRseSBpbiBhIHJlc2l6ZWQKICAgICAgIC8vIGRvd24gc3RhdGUsIGkuZS4gMS8yIG9y
IDMvNCBvZiBvcmlnaW5hbCByZXNvbHV0aW9uLgogICAgICAgLy8gQ3VycmVudGx5LCB1c2UgYSBm
bGFnIHRvIHR1cm4gMy80IHJlc2l6aW5nIGZlYXR1cmUgb24vb2ZmLgotICAgICAgaWYgKGNwaS0+
cmVzaXplX2J1ZmZlcl91bmRlcmZsb3cgPiAoY3BpLT5yZXNpemVfY291bnQgPj4gMikpIHsKLSAg
ICAgICAgaWYgKGNwaS0+cmVzaXplX3N0YXRlID09IFRIUkVFX1FVQVJURVIgJiYgZG93bl9zaXpl
X29uKSB7CisgICAgICBpZiAoY3BpLT5yZXNpemVfYnVmZmVyX3VuZGVyZmxvdyA+IChjcGktPnJl
c2l6ZV9jb3VudCA+PiAyKSAmJgorICAgICAgICAgIGRvd25fc2l6ZV9vbikgeworICAgICAgICBp
ZiAoY3BpLT5yZXNpemVfc3RhdGUgPT0gVEhSRUVfUVVBUlRFUikgewogICAgICAgICAgIHJlc2l6
ZV9hY3Rpb24gPSBET1dOX09ORUhBTEY7CiAgICAgICAgICAgY3BpLT5yZXNpemVfc3RhdGUgPSBP
TkVfSEFMRjsKICAgICAgICAgfSBlbHNlIGlmIChjcGktPnJlc2l6ZV9zdGF0ZSA9PSBPUklHKSB7
CkBAIC0yNzUxLDcgKzI3ODgsNyBAQCBpbnQgdnA5X3Jlc2l6ZV9vbmVfcGFzc19jYnIoVlA5X0NP
TVAgKmNwaSkgewogICAgIC8vIFJlc2V0IGJ1ZmZlciBsZXZlbCB0byBvcHRpbWFsLCB1cGRhdGUg
dGFyZ2V0IHNpemUuCiAgICAgcmMtPmJ1ZmZlcl9sZXZlbCA9IHJjLT5vcHRpbWFsX2J1ZmZlcl9s
ZXZlbDsKICAgICByYy0+Yml0c19vZmZfdGFyZ2V0ID0gcmMtPm9wdGltYWxfYnVmZmVyX2xldmVs
OwotICAgIHJjLT50aGlzX2ZyYW1lX3RhcmdldCA9IGNhbGNfcGZyYW1lX3RhcmdldF9zaXplX29u
ZV9wYXNzX2NicihjcGkpOworICAgIHJjLT50aGlzX2ZyYW1lX3RhcmdldCA9IHZwOV9jYWxjX3Bm
cmFtZV90YXJnZXRfc2l6ZV9vbmVfcGFzc19jYnIoY3BpKTsKICAgICAvLyBHZXQgdGhlIHByb2pl
Y3RlZCBxaW5kZXgsIGJhc2VkIG9uIHRoZSBzY2FsZWQgdGFyZ2V0IGZyYW1lIHNpemUgKHNjYWxl
ZAogICAgIC8vIHNvIHRhcmdldF9iaXRzX3Blcl9tYiBpbiB2cDlfcmNfcmVndWxhdGVfcSB3aWxs
IGJlIGNvcnJlY3QgdGFyZ2V0KS4KICAgICB0YXJnZXRfYml0c19wZXJfZnJhbWUgPSAocmVzaXpl
X2FjdGlvbiA+PSAwKQpAQCAtMjk2OSw3ICszMDA2LDcgQEAgdm9pZCB2cDlfc2NlbmVfZGV0ZWN0
aW9uX29uZXBhc3MoVlA5X0NPTVAgKmNwaSkgewogICAgIGludCBzY2VuZV9jdXRfZm9yY2Vfa2V5
X2ZyYW1lID0gMDsKICAgICBpbnQgbnVtX3plcm9fdGVtcF9zYWQgPSAwOwogICAgIHVpbnQ2NF90
IGF2Z19zYWRfY3VycmVudCA9IDA7Ci0gICAgdWludDMyX3QgbWluX3RocmVzaCA9IDEwMDAwOwor
ICAgIHVpbnQzMl90IG1pbl90aHJlc2ggPSAyMDAwMDsgIC8vIH41ICogNjQgKiA2NAogICAgIGZs
b2F0IHRocmVzaCA9IDguMGY7CiAgICAgdWludDMyX3QgdGhyZXNoX2tleSA9IDE0MDAwMDsKICAg
ICBpZiAoY3BpLT5veGNmLnNwZWVkIDw9IDUpIHRocmVzaF9rZXkgPSAyNDAwMDA7CkBAIC0zMjI2
LDcgKzMyNjMsNyBAQCBpbnQgdnA5X2VuY29kZWRmcmFtZV9vdmVyc2hvb3QoVlA5X0NPTVAgKmNw
aSwgaW50IGZyYW1lX3NpemUsIGludCAqcSkgewogICAgICAgaW50IHRsID0gMDsKICAgICAgIGlu
dCBzbCA9IDA7CiAgICAgICBTVkMgKnN2YyA9ICZjcGktPnN2YzsKLSAgICAgIGZvciAoc2wgPSAw
OyBzbCA8IHN2Yy0+Zmlyc3Rfc3BhdGlhbF9sYXllcl90b19lbmNvZGU7ICsrc2wpIHsKKyAgICAg
IGZvciAoc2wgPSAwOyBzbCA8IFZQWE1BWCgxLCBzdmMtPmZpcnN0X3NwYXRpYWxfbGF5ZXJfdG9f
ZW5jb2RlKTsgKytzbCkgewogICAgICAgICBmb3IgKHRsID0gMDsgdGwgPCBzdmMtPm51bWJlcl90
ZW1wb3JhbF9sYXllcnM7ICsrdGwpIHsKICAgICAgICAgICBjb25zdCBpbnQgbGF5ZXIgPQogICAg
ICAgICAgICAgICBMQVlFUl9JRFNfVE9fSURYKHNsLCB0bCwgc3ZjLT5udW1iZXJfdGVtcG9yYWxf
bGF5ZXJzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3JhdGVjdHJs
LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yYXRlY3RybC5oCmluZGV4IDdkYmUxN2Rj
NTZkOWJiZDljMGU2Y2Y0ZWQ4YjZmOThlMDcwY2VmMGYuLjAxMjBmOTBhMDFkNDdkZDY3ZGNlMjdi
Mzk3NmIxMzkxYzU2NDExOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5
X3JhdGVjdHJsLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmF0ZWN0cmwuaApA
QCAtODMsNyArODMsNyBAQCBzdGF0aWMgY29uc3QgZG91YmxlIHJhdGVfdGhyZXNoX211bHRbRlJB
TUVfU0NBTEVfU1RFUFNdID0geyAxLjAsIDIuMCB9Owogc3RhdGljIGNvbnN0IGRvdWJsZSByY2Zf
bXVsdFtGUkFNRV9TQ0FMRV9TVEVQU10gPSB7IDEuMCwgMi4wIH07CiAKIHR5cGVkZWYgc3RydWN0
IHsKLSAgLy8gUmF0ZSB0YXJnZXR0aW5nIHZhcmlhYmxlcworICAvLyBSYXRlIHRhcmdldGluZyB2
YXJpYWJsZXMKICAgaW50IGJhc2VfZnJhbWVfdGFyZ2V0OyAgLy8gQSBiYXNlbGluZSBmcmFtZSB0
YXJnZXQgYmVmb3JlIGFkanVzdG1lbnQKICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gZm9y
IHByZXZpb3VzIHVuZGVyIG9yIG92ZXIgc2hvb3QuCiAgIGludCB0aGlzX2ZyYW1lX3RhcmdldDsg
IC8vIEFjdHVhbCBmcmFtZSB0YXJnZXQgYWZ0ZXIgcmMgYWRqdXN0bWVudC4KQEAgLTE5NSw3ICsx
OTUsOCBAQCB0eXBlZGVmIHN0cnVjdCB7CiAgIGludCB1c2VfcG9zdF9lbmNvZGVfZHJvcDsKICAg
Ly8gRXh0ZXJuYWwgZmxhZyB0byBlbmFibGUgcG9zdCBlbmNvZGUgZnJhbWUgZHJvcHBpbmcsIGNv
bnRyb2xsZWQgYnkgdXNlci4KICAgaW50IGV4dF91c2VfcG9zdF9lbmNvZGVfZHJvcDsKLQorICAv
LyBGbGFnIHRvIGRpc2FibGUgQ0JSIGZlYXR1cmUgdG8gaW5jcmVhc2UgUSBvbiBvdmVyc2hvb3Qg
ZGV0ZWN0aW9uLgorICBpbnQgZGlzYWJsZV9vdmVyc2hvb3RfbWF4cV9jYnI7CiAgIGludCBkYW1w
ZWRfYWRqdXN0bWVudFtSQVRFX0ZBQ1RPUl9MRVZFTFNdOwogICBkb3VibGUgYXJmX2FjdGl2ZV9i
ZXN0X3F1YWxpdHlfYWRqdXN0bWVudF9mYWN0b3I7CiAgIGludCBhcmZfaW5jcmVhc2VfYWN0aXZl
X2Jlc3RfcXVhbGl0eTsKQEAgLTI1Miw2ICsyNTMsOSBAQCBpbnQgdnA5X3JjX2dldF9kZWZhdWx0
X21heF9nZl9pbnRlcnZhbChkb3VibGUgZnJhbWVyYXRlLCBpbnQgbWluX2dmX2ludGVydmFsKTsK
IC8vIGVuY29kZV9mcmFtZV90b19kYXRhX3JhdGUoKSBmdW5jdGlvbi4KIHZvaWQgdnA5X3JjX2dl
dF9vbmVfcGFzc192YnJfcGFyYW1zKHN0cnVjdCBWUDlfQ09NUCAqY3BpKTsKIHZvaWQgdnA5X3Jj
X2dldF9vbmVfcGFzc19jYnJfcGFyYW1zKHN0cnVjdCBWUDlfQ09NUCAqY3BpKTsKK2ludCB2cDlf
Y2FsY19wZnJhbWVfdGFyZ2V0X3NpemVfb25lX3Bhc3NfY2JyKGNvbnN0IHN0cnVjdCBWUDlfQ09N
UCAqY3BpKTsKK2ludCB2cDlfY2FsY19pZnJhbWVfdGFyZ2V0X3NpemVfb25lX3Bhc3NfY2JyKGNv
bnN0IHN0cnVjdCBWUDlfQ09NUCAqY3BpKTsKK3ZvaWQgdnA5X3VwZGF0ZV9idWZmZXJfbGV2ZWxf
cHJlZW5jb2RlKHN0cnVjdCBWUDlfQ09NUCAqY3BpKTsKIHZvaWQgdnA5X3JjX2dldF9zdmNfcGFy
YW1zKHN0cnVjdCBWUDlfQ09NUCAqY3BpKTsKIAogLy8gUG9zdCBlbmNvZGUgdXBkYXRlIG9mIHRo
ZSByYXRlIGNvbnRyb2wgcGFyYW1ldGVycyBiYXNlZApAQCAtMzMwLDYgKzMzNCw4IEBAIHZvaWQg
dnA5X2NvbmZpZ3VyZV9idWZmZXJfdXBkYXRlcyhzdHJ1Y3QgVlA5X0NPTVAgKmNwaSwgaW50IGdm
X2dyb3VwX2luZGV4KTsKIAogdm9pZCB2cDlfZXN0aW1hdGVfcXBfZ29wKHN0cnVjdCBWUDlfQ09N
UCAqY3BpKTsKIAordm9pZCB2cDlfY29tcHV0ZV9mcmFtZV9sb3dfbW90aW9uKHN0cnVjdCBWUDlf
Q09NUCAqY29uc3QgY3BpKTsKKwogI2lmZGVmIF9fY3BsdXNwbHVzCiB9ICAvLyBleHRlcm4gIkMi
CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jkb3B0LmMg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9yZG9wdC5jCmluZGV4IDM5Yjk5ZDUwYzQ0MDYw
MzJlMThjOTg0NDI4ZmI5NjE3Zjc0ZDg0NmUuLjM3ZGU0ZTQ4Mzk5NjhjNTI5ZDg1NjVmYjUwODVi
OTkwOTc1YjZmODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3Jkb3B0
LmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfcmRvcHQuYwpAQCAtNDQ0Myw2ICs0
NDQzLDcgQEAgdm9pZCB2cDlfcmRfcGlja19pbnRlcl9tb2RlX3N1Yjh4OChWUDlfQ09NUCAqY3Bp
LCBUaWxlRGF0YUVuYyAqdGlsZV9kYXRhLAogICAgICAgICAgICAgICB0bXBfYmVzdF9zc2UgPSB0
b3RhbF9zc2U7CiAgICAgICAgICAgICAgIHRtcF9iZXN0X3NraXBwYWJsZSA9IHNraXBwYWJsZTsK
ICAgICAgICAgICAgICAgdG1wX2Jlc3RfbWJtb2RlID0gKm1pOworICAgICAgICAgICAgICB4LT5z
dW1feV9lb2JzW1RYXzRYNF0gPSAwOwogICAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgNDsg
aSsrKSB7CiAgICAgICAgICAgICAgICAgdG1wX2Jlc3RfYm1vZGVzW2ldID0geGQtPm1pWzBdLT5i
bWlbaV07CiAgICAgICAgICAgICAgICAgeC0+emNvZWZmX2Jsa1tUWF80WDRdW2ldID0gIXgtPnBs
YW5lWzBdLmVvYnNbaV07CkBAIC00NDc2LDYgKzQ0NzcsMTEgQEAgdm9pZCB2cDlfcmRfcGlja19p
bnRlcl9tb2RlX3N1Yjh4OChWUDlfQ09NUCAqY3BpLCBUaWxlRGF0YUVuYyAqdGlsZV9kYXRhLAog
ICAgICAgICAgICAgJnJhdGUsICZyYXRlX3ksICZkaXN0b3J0aW9uLCAmc2tpcHBhYmxlLCAmdG90
YWxfc3NlLAogICAgICAgICAgICAgKGludCl0aGlzX3JkX3RocmVzaCwgc2VnX212cywgYnNpLCAw
LCBtaV9yb3csIG1pX2NvbCk7CiAgICAgICAgIGlmICh0bXBfcmQgPT0gSU5UNjRfTUFYKSBjb250
aW51ZTsKKyAgICAgICAgeC0+c3VtX3lfZW9ic1tUWF80WDRdID0gMDsKKyAgICAgICAgZm9yIChp
ID0gMDsgaSA8IDQ7IGkrKykgeworICAgICAgICAgIHgtPnpjb2VmZl9ibGtbVFhfNFg0XVtpXSA9
ICF4LT5wbGFuZVswXS5lb2JzW2ldOworICAgICAgICAgIHgtPnN1bV95X2VvYnNbVFhfNFg0XSAr
PSB4LT5wbGFuZVswXS5lb2JzW2ldOworICAgICAgICB9CiAgICAgICB9IGVsc2UgewogICAgICAg
ICB0b3RhbF9zc2UgPSB0bXBfYmVzdF9zc2U7CiAgICAgICAgIHJhdGUgPSB0bXBfYmVzdF9yYXRl
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3BlZWRfZmVhdHVyZXMu
YyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3NwZWVkX2ZlYXR1cmVzLmMKaW5kZXggN2Ey
NmM0MTc2ZTQzOTI0MjJjMzc1NjNkM2YwMWMxMDg5OTU1ZTc0ZS4uNTg1Yzk2MDRjNjFlMTcwNGQ5
MzczMDg5YzE0NmM0NjliZmQ3NTlmZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rl
ci92cDlfc3BlZWRfZmVhdHVyZXMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9z
cGVlZF9mZWF0dXJlcy5jCkBAIC02MjEsNyArNjIxLDcgQEAgc3RhdGljIHZvaWQgc2V0X3J0X3Nw
ZWVkX2ZlYXR1cmVfZnJhbWVzaXplX2luZGVwZW5kZW50KAogICAgIC8vIGluY3JlYXNlIGluIGVu
Y29kaW5nIHRpbWUuCiAgICAgaWYgKGNwaS0+dXNlX3N2YyAmJiBzdmMtPnNwYXRpYWxfbGF5ZXJf
aWQgPiAwKSBzZi0+bm9ucmRfa2V5ZnJhbWUgPSAxOwogICAgIGlmIChjbS0+ZnJhbWVfdHlwZSAh
PSBLRVlfRlJBTUUgJiYgY3BpLT5yZXNpemVfc3RhdGUgPT0gT1JJRyAmJgotICAgICAgICBjcGkt
Pm94Y2YucmNfbW9kZSA9PSBWUFhfQ0JSKSB7CisgICAgICAgIGNwaS0+b3hjZi5yY19tb2RlID09
IFZQWF9DQlIgJiYgIWNwaS0+cmMuZGlzYWJsZV9vdmVyc2hvb3RfbWF4cV9jYnIpIHsKICAgICAg
IGlmIChjbS0+d2lkdGggKiBjbS0+aGVpZ2h0IDw9IDM1MiAqIDI4OCAmJiAhY3BpLT51c2Vfc3Zj
ICYmCiAgICAgICAgICAgY3BpLT5veGNmLmNvbnRlbnQgIT0gVlA5RV9DT05URU5UX1NDUkVFTikK
ICAgICAgICAgc2YtPm92ZXJzaG9vdF9kZXRlY3Rpb25fY2JyX3J0ID0gUkVfRU5DT0RFX01BWFE7
CkBAIC02MzQsNiArNjM0LDcgQEAgc3RhdGljIHZvaWQgc2V0X3J0X3NwZWVkX2ZlYXR1cmVfZnJh
bWVzaXplX2luZGVwZW5kZW50KAogICAgICAgc2YtPnVzZV9jb21wb3VuZF9ub25yZF9waWNrbW9k
ZSA9IDE7CiAgICAgfQogICAgIGlmIChjbS0+d2lkdGggKiBjbS0+aGVpZ2h0ID4gMTI4MCAqIDcy
MCkgc2YtPmNiX3ByZWRfZmlsdGVyX3NlYXJjaCA9IDE7CisgICAgaWYgKCFjcGktPmV4dGVybmFs
X3Jlc2l6ZSkgc2YtPnVzZV9zb3VyY2Vfc2FkID0gMTsKICAgfQogCiAgIGlmIChzcGVlZCA+PSA2
KSB7CkBAIC02NDYsOCArNjQ3LDYgQEAgc3RhdGljIHZvaWQgc2V0X3J0X3NwZWVkX2ZlYXR1cmVf
ZnJhbWVzaXplX2luZGVwZW5kZW50KAogICAgIHNmLT5tdi5yZWR1Y2VfZmlyc3Rfc3RlcF9zaXpl
ID0gMTsKICAgICBzZi0+c2tpcF9lbmNvZGVfc2IgPSAwOwogCi0gICAgaWYgKCFjcGktPmV4dGVy
bmFsX3Jlc2l6ZSkgc2YtPnVzZV9zb3VyY2Vfc2FkID0gMTsKLQogICAgIGlmIChzZi0+dXNlX3Nv
dXJjZV9zYWQpIHsKICAgICAgIHNmLT5hZGFwdF9wYXJ0aXRpb25fc291cmNlX3NhZCA9IDE7CiAg
ICAgICBzZi0+YWRhcHRfcGFydGl0aW9uX3RocmVzaCA9CkBAIC02NjksNyArNjY4LDcgQEAgc3Rh
dGljIHZvaWQgc2V0X3J0X3NwZWVkX2ZlYXR1cmVfZnJhbWVzaXplX2luZGVwZW5kZW50KAogICAg
ICAgc2YtPmJhc2VfbXZfYWdncmVzc2l2ZSA9IDE7CiAgICAgfQogICAgIGlmIChjbS0+ZnJhbWVf
dHlwZSAhPSBLRVlfRlJBTUUgJiYgY3BpLT5yZXNpemVfc3RhdGUgPT0gT1JJRyAmJgotICAgICAg
ICBjcGktPm94Y2YucmNfbW9kZSA9PSBWUFhfQ0JSKQorICAgICAgICBjcGktPm94Y2YucmNfbW9k
ZSA9PSBWUFhfQ0JSICYmICFjcGktPnJjLmRpc2FibGVfb3ZlcnNob290X21heHFfY2JyKQogICAg
ICAgc2YtPm92ZXJzaG9vdF9kZXRlY3Rpb25fY2JyX3J0ID0gRkFTVF9ERVRFQ1RJT05fTUFYUTsK
ICAgfQogCkBAIC03MjgsNyArNzI3LDEwIEBAIHN0YXRpYyB2b2lkIHNldF9ydF9zcGVlZF9mZWF0
dXJlX2ZyYW1lc2l6ZV9pbmRlcGVuZGVudCgKICAgaWYgKHNwZWVkID49IDgpIHsKICAgICBzZi0+
YWRhcHRpdmVfcmRfdGhyZXNoID0gNDsKICAgICBzZi0+c2tpcF9lbmNvZGVfc2IgPSAxOwotICAg
IHNmLT5ub25yZF9rZXlmcmFtZSA9IDE7CisgICAgaWYgKGNwaS0+c3ZjLm51bWJlcl9zcGF0aWFs
X2xheWVycyA+IDEgJiYgIWNwaS0+c3ZjLnNpbXVsY2FzdF9tb2RlKQorICAgICAgc2YtPm5vbnJk
X2tleWZyYW1lID0gMDsKKyAgICBlbHNlCisgICAgICBzZi0+bm9ucmRfa2V5ZnJhbWUgPSAxOwog
ICAgIGlmICghY3BpLT51c2Vfc3ZjKSBjcGktPm1heF9jb3BpZWRfZnJhbWUgPSA0OwogICAgIGlm
IChjcGktPnJvd19tdCAmJiBjcGktPm94Y2YubWF4X3RocmVhZHMgPiAxKQogICAgICAgc2YtPmFk
YXB0aXZlX3JkX3RocmVzaF9yb3dfbXQgPSAxOwpAQCAtNzg3LDYgKzc4OSwxNSBAQCBzdGF0aWMg
dm9pZCBzZXRfcnRfc3BlZWRfZmVhdHVyZV9mcmFtZXNpemVfaW5kZXBlbmRlbnQoCiAgICAgaWYg
KGNtLT53aWR0aCAqIGNtLT5oZWlnaHQgPj0gNjQwICogMzYwKSBzZi0+dmFyaWFuY2VfcGFydF90
aHJlc2hfbXVsdCA9IDI7CiAgIH0KIAorICAvLyBEaXNhYmxlIHNwbGl0IHRvIDh4OCBmb3IgbG93
LXJlc29sdXRpb24gYXQgdmVyeSBoaWdoIFEuCisgIC8vIEZvciB2YXJpYW5jZSBwYXJ0aXRpb24g
KHNwZWVkID49IDYpLiBJZ25vcmUgdGhlIGZpcnN0IGZldyBmcmFtZXMKKyAgLy8gYXMgYXZnX2Zy
YW1lX3FpbmRleCBzdGFydHMgYXQgbWF4X3EgKHdvcnN0X3F1YWxpdHkpLgorICBpZiAoY20tPmZy
YW1lX3R5cGUgIT0gS0VZX0ZSQU1FICYmIGNtLT53aWR0aCAqIGNtLT5oZWlnaHQgPD0gMzIwICog
MjQwICYmCisgICAgICBzZi0+cGFydGl0aW9uX3NlYXJjaF90eXBlID09IFZBUl9CQVNFRF9QQVJU
SVRJT04gJiYKKyAgICAgIGNwaS0+cmMuYXZnX2ZyYW1lX3FpbmRleFtJTlRFUl9GUkFNRV0gPiAy
MDggJiYKKyAgICAgIGNwaS0+Y29tbW9uLmN1cnJlbnRfdmlkZW9fZnJhbWUgPiA4KQorICAgIHNm
LT5kaXNhYmxlXzE2eDE2cGFydF9ub25rZXkgPSAxOworCiAgIGlmIChzZi0+bm9ucmRfdXNlX21s
X3BhcnRpdGlvbikKICAgICBzZi0+cGFydGl0aW9uX3NlYXJjaF90eXBlID0gTUxfQkFTRURfUEFS
VElUSU9OOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdmNfbGF5
ZXJjb250ZXh0LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV9zdmNfbGF5ZXJjb250ZXh0
LmMKaW5kZXggMTQ2NmQzYTJiM2IxYTg4MmUyYmI2NmM5OGUyOGY2YTk4ZjgwYzQ0NS4uYjZjN2M3
NGUxNzRhNGI4NDdhODM5OGI4ODdiNTc4MjdjYWU1MDk3OCAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cDkvZW5jb2Rlci92cDlfc3ZjX2xheWVyY29udGV4dC5jCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5
L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRleHQuYwpAQCAtNTYsNiArNTYsNyBAQCB2b2lkIHZw
OV9pbml0X2xheWVyX2NvbnRleHQoVlA5X0NPTVAgKmNvbnN0IGNwaSkgewogICBzdmMtPm51bV9l
bmNvZGVkX3RvcF9sYXllciA9IDA7CiAgIHN2Yy0+c2ltdWxjYXN0X21vZGUgPSAwOwogICBzdmMt
PnNpbmdsZV9sYXllcl9zdmMgPSAwOworICBzdmMtPnJlc2l6ZV9zZXQgPSAwOwogCiAgIGZvciAo
aSA9IDA7IGkgPCBSRUZfRlJBTUVTOyArK2kpIHsKICAgICBzdmMtPmZiX2lkeF9zcGF0aWFsX2xh
eWVyX2lkW2ldID0gMHhmZjsKQEAgLTM1Niw2ICszNTcsNyBAQCB2b2lkIHZwOV9yZXN0b3JlX2xh
eWVyX2NvbnRleHQoVlA5X0NPTVAgKmNvbnN0IGNwaSkgewogICBpZiAoaXNfb25lX3Bhc3NfY2Jy
X3N2YyhjcGkpICYmIGxjLT5zcGVlZCA+IDApIHsKICAgICBjcGktPm94Y2Yuc3BlZWQgPSBsYy0+
c3BlZWQ7CiAgIH0KKyAgY3BpLT5sb29wZmlsdGVyX2N0cmwgPSBsYy0+bG9vcGZpbHRlcl9jdHJs
OwogICAvLyBSZXNldCB0aGUgZnJhbWVzX3NpbmNlX2tleSBhbmQgZnJhbWVzX3RvX2tleSBjb3Vu
dGVycyB0byB0aGVpciB2YWx1ZXMKICAgLy8gYmVmb3JlIHRoZSBsYXllciByZXN0b3JlLiBLZWVw
IHRoZXNlIGRlZmluZWQgZm9yIHRoZSBzdHJlYW0gKG5vdCBsYXllcikuCiAgIGlmIChjcGktPnN2
Yy5udW1iZXJfdGVtcG9yYWxfbGF5ZXJzID4gMSB8fApAQCAtNzcwLDkgKzc3Miw3IEBAIGludCB2
cDlfb25lX3Bhc3NfY2JyX3N2Y19zdGFydF9sYXllcihWUDlfQ09NUCAqY29uc3QgY3BpKSB7CiAK
ICAgaWYgKHN2Yy0+ZGlzYWJsZV9pbnRlcl9sYXllcl9wcmVkID09IElOVEVSX0xBWUVSX1BSRURf
T0ZGICYmCiAgICAgICBzdmMtPm51bWJlcl9zcGF0aWFsX2xheWVycyA+IDEgJiYgc3ZjLT5udW1i
ZXJfc3BhdGlhbF9sYXllcnMgPD0gMyAmJgotICAgICAgc3ZjLT5udW1iZXJfdGVtcG9yYWxfbGF5
ZXJzIDw9IDMgJiYKLSAgICAgICEoc3ZjLT50ZW1wb3JhbF9sYXllcmluZ19tb2RlID09IFZQOUVf
VEVNUE9SQUxfTEFZRVJJTkdfTU9ERV9CWVBBU1MgJiYKLSAgICAgICAgc3ZjLT51c2Vfc2V0X3Jl
Zl9mcmFtZV9jb25maWcpKQorICAgICAgc3ZjLT5udW1iZXJfdGVtcG9yYWxfbGF5ZXJzIDw9IDMp
CiAgICAgc3ZjLT5zaW11bGNhc3RfbW9kZSA9IDE7CiAgIGVsc2UKICAgICBzdmMtPnNpbXVsY2Fz
dF9tb2RlID0gMDsKQEAgLTg2Niw4ICs4NjYsOSBAQCBpbnQgdnA5X29uZV9wYXNzX2Nicl9zdmNf
c3RhcnRfbGF5ZXIoVlA5X0NPTVAgKmNvbnN0IGNwaSkgewogICAgIH0KICAgfQogCi0gIC8vIFJl
c2V0IHRoZSBkcm9wIGZsYWdzIGZvciBhbGwgc3BhdGlhbCBsYXllcnMsIG9uIHRoZSBiYXNlIGxh
eWVyLgotICBpZiAoc3ZjLT5zcGF0aWFsX2xheWVyX2lkID09IDApIHsKKyAgLy8gUmVzZXQgdGhl
IGRyb3AgZmxhZ3MgZm9yIGFsbCBzcGF0aWFsIGxheWVycywgb24gdGhlCisgIC8vIGZpcnN0X3Nw
YXRpYWxfbGF5ZXJfdG9fZW5jb2RlLgorICBpZiAoc3ZjLT5zcGF0aWFsX2xheWVyX2lkID09IHN2
Yy0+Zmlyc3Rfc3BhdGlhbF9sYXllcl90b19lbmNvZGUpIHsKICAgICB2cDlfemVybyhzdmMtPmRy
b3Bfc3BhdGlhbF9sYXllcik7CiAgICAgLy8gVE9ETyhqaWFuai9tYXJwYW4pOiBJbnZlc3RpZ2F0
ZSB3aHkgc2V0dGluZyBzdmMtPmxzdC9nbGQvYWx0X2ZiX2lkeAogICAgIC8vIGNhdXNlcyBhbiBp
c3N1ZSB3aXRoIGZyYW1lIGRyb3BwaW5nIGFuZCB0ZW1wb3JhbCBsYXllcnMsIHdoZW4gdGhlIGZy
YW1lCkBAIC0xMjYxLDcgKzEyNjIsNyBAQCBzdGF0aWMgdm9pZCB2cDlfc3ZjX3VwZGF0ZV9yZWZf
ZnJhbWVfYnlwYXNzX21vZGUoVlA5X0NPTVAgKmNvbnN0IGNwaSkgewogICBCdWZmZXJQb29sICpj
b25zdCBwb29sID0gY20tPmJ1ZmZlcl9wb29sOwogICBpbnQgaTsKICAgZm9yIChpID0gMDsgaSA8
IFJFRl9GUkFNRVM7IGkrKykgewotICAgIGlmIChjbS0+ZnJhbWVfdHlwZSA9PSBLRVlfRlJBTUUg
fHwKKyAgICBpZiAoKGNtLT5mcmFtZV90eXBlID09IEtFWV9GUkFNRSAmJiAhc3ZjLT5zaW11bGNh
c3RfbW9kZSkgfHwKICAgICAgICAgc3ZjLT51cGRhdGVfYnVmZmVyX3Nsb3Rbc3ZjLT5zcGF0aWFs
X2xheWVyX2lkXSAmICgxIDw8IGkpKSB7CiAgICAgICByZWZfY250X2ZiKHBvb2wtPmZyYW1lX2J1
ZnMsICZjbS0+cmVmX2ZyYW1lX21hcFtpXSwgY20tPm5ld19mYl9pZHgpOwogICAgICAgc3ZjLT5m
Yl9pZHhfc3BhdGlhbF9sYXllcl9pZFtpXSA9IHN2Yy0+c3BhdGlhbF9sYXllcl9pZDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
dnB4L3NvdXJjZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRleHQuaCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L2VuY29kZXIvdnA5X3N2Y19sYXllcmNvbnRleHQuaAppbmRleCA3ZTQ2NTAw
YjU4ZDUyZmVjNDg1MWI1NThhZTY0OTgxODhjOWM0NDNmLi5iMTJlN2UwMWE3NTllZDc5YzI0NDMz
NjEyZmJhMmQyNzAxZjk2ZGQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3Zw
OV9zdmNfbGF5ZXJjb250ZXh0LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfc3Zj
X2xheWVyY29udGV4dC5oCkBAIC03MSw2ICs3MSw3IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgaW50
IGFjdHVhbF9udW1fc2VnMl9ibG9ja3M7CiAgIGludCBjb3VudGVyX2VuY29kZV9tYXhxX3NjZW5l
X2NoYW5nZTsKICAgdWludDhfdCBzcGVlZDsKKyAgaW50IGxvb3BmaWx0ZXJfY3RybDsKIH0gTEFZ
RVJfQ09OVEVYVDsKIAogdHlwZWRlZiBzdHJ1Y3QgU1ZDIHsKQEAgLTE5OCw2ICsxOTksNyBAQCB0
eXBlZGVmIHN0cnVjdCBTVkMgewogCiAgIC8vIEZsYWcgdG8gaW5kaWNhdGUgU1ZDIGlzIGR5bmFt
aWNhbGx5IHN3aXRjaGVkIHRvIGEgc2luZ2xlIGxheWVyLgogICBpbnQgc2luZ2xlX2xheWVyX3N2
YzsKKyAgaW50IHJlc2l6ZV9zZXQ7CiB9IFNWQzsKIAogc3RydWN0IFZQOV9DT01QOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cDkvZW5jb2Rlci92cDlfdGVtcG9yYWxfZmlsdGVyLmMgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90ZW1wb3JhbF9maWx0ZXIuYwppbmRleCA2ZTRjN2VkYTRj
MjJlOTBlZjUxNDE5ZmI5ZjZiNWU3YzNhODU3N2E5Li4zYTEyNjJlYTVmMGEzZGIwMDBlMDVmNDc0
MGZlNzQ4MDdiMmQ2MzlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90
ZW1wb3JhbF9maWx0ZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9lbmNvZGVyL3ZwOV90ZW1wb3Jh
bF9maWx0ZXIuYwpAQCAtOTk1LDcgKzk5NSw3IEBAIHZvaWQgdnA5X3RlbXBvcmFsX2ZpbHRlcl9p
dGVyYXRlX3Jvd19jKFZQOV9DT01QICpjcGksIFRocmVhZERhdGEgKnRkLAogICB9CiB9CiAKLSNp
ZiAhQ09ORklHX1JFQUxUSU1FX09OTFkKKyNpZiAhQ09ORklHX1JFQUxUSU1FX09OTFkgLy8gV0VC
UlRDX1dFQktJVF9CVUlMRAogc3RhdGljIHZvaWQgdGVtcG9yYWxfZmlsdGVyX2l0ZXJhdGVfdGls
ZV9jKFZQOV9DT01QICpjcGksIGludCB0aWxlX3JvdywKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBpbnQgdGlsZV9jb2wpIHsKICAgVlA5X0NPTU1PTiAqY29uc3Qg
Y20gPSAmY3BpLT5jb21tb247CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9yYXRlY3RybF9y
dGMuY2MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9yYXRlY3RybF9ydGMuY2MKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDdmOWYz
YmEzM2VlY2VkYmNhZWE0YTE4NjczZmU5ZTE1NmY0NjdiYgotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L3JhdGVjdHJsX3J0Yy5jYwpAQCAtMCwwICsxLDE3NCBAQAorLyoKKyAqICBD
b3B5cmlnaHQgKGMpIDIwMjAgVGhlIFdlYk0gcHJvamVjdCBhdXRob3JzLiBBbGwgUmlnaHRzIFJl
c2VydmVkLgorICoKKyAqICBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBh
IEJTRC1zdHlsZSBsaWNlbnNlCisgKiAgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0Ug
ZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlCisgKiAgdHJlZS4gQW4gYWRkaXRpb25hbCBp
bnRlbGxlY3R1YWwgcHJvcGVydHkgcmlnaHRzIGdyYW50IGNhbiBiZSBmb3VuZAorICogIGluIHRo
ZSBmaWxlIFBBVEVOVFMuICBBbGwgY29udHJpYnV0aW5nIHByb2plY3QgYXV0aG9ycyBtYXkKKyAq
ICBiZSBmb3VuZCBpbiB0aGUgQVVUSE9SUyBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2Ug
dHJlZS4KKyAqLworI2luY2x1ZGUgInZwOS9yYXRlY3RybF9ydGMuaCIKKworI2luY2x1ZGUgPG5l
dz4KKworI2luY2x1ZGUgInZwOS9lbmNvZGVyL3ZwOV9lbmNvZGVyLmgiCisjaW5jbHVkZSAidnA5
L2VuY29kZXIvdnA5X3BpY2tscGYuaCIKKyNpbmNsdWRlICJ2cHgvdnA4Y3guaCIKKyNpbmNsdWRl
ICJ2cHgvdnB4X2NvZGVjLmgiCisKK25hbWVzcGFjZSBsaWJ2cHggeworCitzdGQ6OnVuaXF1ZV9w
dHI8VlA5UmF0ZUNvbnRyb2xSVEM+IFZQOVJhdGVDb250cm9sUlRDOjpDcmVhdGUoCisgICAgY29u
c3QgVlA5UmF0ZUNvbnRyb2xSdGNDb25maWcgJmNmZykgeworICBzdGQ6OnVuaXF1ZV9wdHI8VlA5
UmF0ZUNvbnRyb2xSVEM+IHJjX2FwaShuZXcgKHN0ZDo6bm90aHJvdykKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQOVJhdGVDb250cm9sUlRDKCkpOwor
ICBpZiAoIXJjX2FwaSkgcmV0dXJuIG51bGxwdHI7CisgIHJjX2FwaS0+Y3BpXyA9IHN0YXRpY19j
YXN0PFZQOV9DT01QICo+KHZweF9tZW1hbGlnbigzMiwgc2l6ZW9mKCpjcGlfKSkpOworICBpZiAo
cmNfYXBpLT5jcGlfID09IG51bGxwdHIpIHsKKyAgICByZXR1cm4gbnVsbHB0cjsKKyAgfQorICBy
Y19hcGktPkluaXRSYXRlQ29udHJvbChjZmcpOworICByZXR1cm4gcmNfYXBpOworfQorCit2b2lk
IFZQOVJhdGVDb250cm9sUlRDOjpJbml0UmF0ZUNvbnRyb2woY29uc3QgVlA5UmF0ZUNvbnRyb2xS
dGNDb25maWcgJnJjX2NmZykgeworICBWUDlfQ09NTU9OICpjbSA9ICZjcGlfLT5jb21tb247Cisg
IFZQOUVuY29kZXJDb25maWcgKm94Y2YgPSAmY3BpXy0+b3hjZjsKKyAgUkFURV9DT05UUk9MICpj
b25zdCByYyA9ICZjcGlfLT5yYzsKKyAgY20tPnByb2ZpbGUgPSBQUk9GSUxFXzA7CisgIGNtLT5i
aXRfZGVwdGggPSBWUFhfQklUU184OworICBjbS0+c2hvd19mcmFtZSA9IDE7CisgIG94Y2YtPnJj
X21vZGUgPSBWUFhfQ0JSOworICBveGNmLT5wYXNzID0gMDsKKyAgb3hjZi0+YXFfbW9kZSA9IE5P
X0FROworICBveGNmLT5jb250ZW50ID0gVlA5RV9DT05URU5UX0RFRkFVTFQ7CisgIG94Y2YtPmRy
b3BfZnJhbWVzX3dhdGVyX21hcmsgPSAwOworCisgIFVwZGF0ZVJhdGVDb250cm9sKHJjX2NmZyk7
CisKKyAgY3BpXy0+dXNlX3N2YyA9IChjcGlfLT5zdmMubnVtYmVyX3NwYXRpYWxfbGF5ZXJzID4g
MSB8fAorICAgICAgICAgICAgICAgICAgIGNwaV8tPnN2Yy5udW1iZXJfdGVtcG9yYWxfbGF5ZXJz
ID4gMSkKKyAgICAgICAgICAgICAgICAgICAgICA/IDEKKyAgICAgICAgICAgICAgICAgICAgICA6
IDA7CisKKyAgcmMtPnJjXzFfZnJhbWUgPSAwOworICByYy0+cmNfMl9mcmFtZSA9IDA7CisgIHZw
OV9yY19pbml0X21pbnFfbHV0cygpOworICB2cDlfcmNfaW5pdChveGNmLCAwLCByYyk7CisgIGNw
aV8tPnNmLnVzZV9ub25yZF9waWNrX21vZGUgPSAxOworICBjbS0+Y3VycmVudF92aWRlb19mcmFt
ZSA9IDA7Cit9CisKK3ZvaWQgVlA5UmF0ZUNvbnRyb2xSVEM6OlVwZGF0ZVJhdGVDb250cm9sKAor
ICAgIGNvbnN0IFZQOVJhdGVDb250cm9sUnRjQ29uZmlnICZyY19jZmcpIHsKKyAgVlA5X0NPTU1P
TiAqY20gPSAmY3BpXy0+Y29tbW9uOworICBWUDlFbmNvZGVyQ29uZmlnICpveGNmID0gJmNwaV8t
Pm94Y2Y7CisgIFJBVEVfQ09OVFJPTCAqY29uc3QgcmMgPSAmY3BpXy0+cmM7CisKKyAgY20tPndp
ZHRoID0gcmNfY2ZnLndpZHRoOworICBjbS0+aGVpZ2h0ID0gcmNfY2ZnLmhlaWdodDsKKyAgb3hj
Zi0+d2lkdGggPSByY19jZmcud2lkdGg7CisgIG94Y2YtPmhlaWdodCA9IHJjX2NmZy5oZWlnaHQ7
CisgIG94Y2YtPndvcnN0X2FsbG93ZWRfcSA9IHZwOV9xdWFudGl6ZXJfdG9fcWluZGV4KHJjX2Nm
Zy5tYXhfcXVhbnRpemVyKTsKKyAgb3hjZi0+YmVzdF9hbGxvd2VkX3EgPSB2cDlfcXVhbnRpemVy
X3RvX3FpbmRleChyY19jZmcubWluX3F1YW50aXplcik7CisgIHJjLT53b3JzdF9xdWFsaXR5ID0g
b3hjZi0+d29yc3RfYWxsb3dlZF9xOworICByYy0+YmVzdF9xdWFsaXR5ID0gb3hjZi0+YmVzdF9h
bGxvd2VkX3E7CisgIG94Y2YtPnRhcmdldF9iYW5kd2lkdGggPSAxMDAwICogcmNfY2ZnLnRhcmdl
dF9iYW5kd2lkdGg7CisgIG94Y2YtPnN0YXJ0aW5nX2J1ZmZlcl9sZXZlbF9tcyA9IHJjX2NmZy5i
dWZfaW5pdGlhbF9zejsKKyAgb3hjZi0+b3B0aW1hbF9idWZmZXJfbGV2ZWxfbXMgPSByY19jZmcu
YnVmX29wdGltYWxfc3o7CisgIG94Y2YtPm1heGltdW1fYnVmZmVyX3NpemVfbXMgPSByY19jZmcu
YnVmX3N6OworICBveGNmLT51bmRlcl9zaG9vdF9wY3QgPSByY19jZmcudW5kZXJzaG9vdF9wY3Q7
CisgIG94Y2YtPm92ZXJfc2hvb3RfcGN0ID0gcmNfY2ZnLm92ZXJzaG9vdF9wY3Q7CisgIG94Y2Yt
PnNzX251bWJlcl9sYXllcnMgPSByY19jZmcuc3NfbnVtYmVyX2xheWVyczsKKyAgb3hjZi0+dHNf
bnVtYmVyX2xheWVycyA9IHJjX2NmZy50c19udW1iZXJfbGF5ZXJzOworICBveGNmLT50ZW1wb3Jh
bF9sYXllcmluZ19tb2RlID0gKFZQOUVfVEVNUE9SQUxfTEFZRVJJTkdfTU9ERSkoCisgICAgICAo
cmNfY2ZnLnRzX251bWJlcl9sYXllcnMgPiAxKSA/IHJjX2NmZy50c19udW1iZXJfbGF5ZXJzIDog
MCk7CisKKyAgY3BpXy0+b3hjZi5yY19tYXhfaW50cmFfYml0cmF0ZV9wY3QgPSByY19jZmcubWF4
X2ludHJhX2JpdHJhdGVfcGN0OworICBjcGlfLT5mcmFtZXJhdGUgPSByY19jZmcuZnJhbWVyYXRl
OworICBjcGlfLT5zdmMubnVtYmVyX3NwYXRpYWxfbGF5ZXJzID0gcmNfY2ZnLnNzX251bWJlcl9s
YXllcnM7CisgIGNwaV8tPnN2Yy5udW1iZXJfdGVtcG9yYWxfbGF5ZXJzID0gcmNfY2ZnLnRzX251
bWJlcl9sYXllcnM7CisKKyAgZm9yIChpbnQgc2wgPSAwOyBzbCA8IGNwaV8tPnN2Yy5udW1iZXJf
c3BhdGlhbF9sYXllcnM7ICsrc2wpIHsKKyAgICBmb3IgKGludCB0bCA9IDA7IHRsIDwgY3BpXy0+
c3ZjLm51bWJlcl90ZW1wb3JhbF9sYXllcnM7ICsrdGwpIHsKKyAgICAgIGNvbnN0IGludCBsYXll
ciA9CisgICAgICAgICAgTEFZRVJfSURTX1RPX0lEWChzbCwgdGwsIGNwaV8tPnN2Yy5udW1iZXJf
dGVtcG9yYWxfbGF5ZXJzKTsKKyAgICAgIExBWUVSX0NPTlRFWFQgKmxjID0gJmNwaV8tPnN2Yy5s
YXllcl9jb250ZXh0W2xheWVyXTsKKyAgICAgIFJBVEVfQ09OVFJPTCAqY29uc3QgbHJjID0gJmxj
LT5yYzsKKyAgICAgIG94Y2YtPmxheWVyX3RhcmdldF9iaXRyYXRlW2xheWVyXSA9CisgICAgICAg
ICAgMTAwMCAqIHJjX2NmZy5sYXllcl90YXJnZXRfYml0cmF0ZVtsYXllcl07CisgICAgICBscmMt
PndvcnN0X3F1YWxpdHkgPQorICAgICAgICAgIHZwOV9xdWFudGl6ZXJfdG9fcWluZGV4KHJjX2Nm
Zy5tYXhfcXVhbnRpemVyc1tsYXllcl0pOworICAgICAgbHJjLT5iZXN0X3F1YWxpdHkgPSB2cDlf
cXVhbnRpemVyX3RvX3FpbmRleChyY19jZmcubWluX3F1YW50aXplcnNbbGF5ZXJdKTsKKyAgICAg
IGxjLT5zY2FsaW5nX2ZhY3Rvcl9udW0gPSByY19jZmcuc2NhbGluZ19mYWN0b3JfbnVtW3NsXTsK
KyAgICAgIGxjLT5zY2FsaW5nX2ZhY3Rvcl9kZW4gPSByY19jZmcuc2NhbGluZ19mYWN0b3JfZGVu
W3NsXTsKKyAgICAgIG94Y2YtPnRzX3JhdGVfZGVjaW1hdG9yW3RsXSA9IHJjX2NmZy50c19yYXRl
X2RlY2ltYXRvclt0bF07CisgICAgfQorICB9CisgIHZwOV9zZXRfcmNfYnVmZmVyX3NpemVzKGNw
aV8pOworICB2cDlfbmV3X2ZyYW1lcmF0ZShjcGlfLCBjcGlfLT5mcmFtZXJhdGUpOworICBpZiAo
Y3BpXy0+c3ZjLm51bWJlcl90ZW1wb3JhbF9sYXllcnMgPiAxIHx8CisgICAgICBjcGlfLT5zdmMu
bnVtYmVyX3NwYXRpYWxfbGF5ZXJzID4gMSkgeworICAgIGlmIChjbS0+Y3VycmVudF92aWRlb19m
cmFtZSA9PSAwKSB2cDlfaW5pdF9sYXllcl9jb250ZXh0KGNwaV8pOworICAgIHZwOV91cGRhdGVf
bGF5ZXJfY29udGV4dF9jaGFuZ2VfY29uZmlnKGNwaV8sCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKGludCljcGlfLT5veGNmLnRhcmdldF9iYW5kd2lkdGgpOwor
ICB9CisgIHZwOV9jaGVja19yZXNldF9yY19mbGFnKGNwaV8pOworfQorCit2b2lkIFZQOVJhdGVD
b250cm9sUlRDOjpDb21wdXRlUVAoY29uc3QgVlA5RnJhbWVQYXJhbXNRcFJUQyAmZnJhbWVfcGFy
YW1zKSB7CisgIFZQOV9DT01NT04gKmNvbnN0IGNtID0gJmNwaV8tPmNvbW1vbjsKKyAgaW50IHdp
ZHRoLCBoZWlnaHQ7CisgIGNwaV8tPnN2Yy5zcGF0aWFsX2xheWVyX2lkID0gZnJhbWVfcGFyYW1z
LnNwYXRpYWxfbGF5ZXJfaWQ7CisgIGNwaV8tPnN2Yy50ZW1wb3JhbF9sYXllcl9pZCA9IGZyYW1l
X3BhcmFtcy50ZW1wb3JhbF9sYXllcl9pZDsKKyAgaWYgKGNwaV8tPnN2Yy5udW1iZXJfc3BhdGlh
bF9sYXllcnMgPiAxKSB7CisgICAgY29uc3QgaW50IGxheWVyID0gTEFZRVJfSURTX1RPX0lEWChj
cGlfLT5zdmMuc3BhdGlhbF9sYXllcl9pZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNwaV8tPnN2Yy50ZW1wb3JhbF9sYXllcl9pZCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNwaV8tPnN2Yy5udW1iZXJfdGVtcG9yYWxfbGF5ZXJzKTsK
KyAgICBMQVlFUl9DT05URVhUICpsYyA9ICZjcGlfLT5zdmMubGF5ZXJfY29udGV4dFtsYXllcl07
CisgICAgZ2V0X2xheWVyX3Jlc29sdXRpb24oY3BpXy0+b3hjZi53aWR0aCwgY3BpXy0+b3hjZi5o
ZWlnaHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgbGMtPnNjYWxpbmdfZmFjdG9yX251bSwg
bGMtPnNjYWxpbmdfZmFjdG9yX2RlbiwgJndpZHRoLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICZoZWlnaHQpOworICAgIGNtLT53aWR0aCA9IHdpZHRoOworICAgIGNtLT5oZWlnaHQgPSBoZWln
aHQ7CisgIH0KKyAgdnA5X3NldF9tYl9taShjbSwgY20tPndpZHRoLCBjbS0+aGVpZ2h0KTsKKyAg
Y20tPmZyYW1lX3R5cGUgPSBmcmFtZV9wYXJhbXMuZnJhbWVfdHlwZTsKKyAgY3BpXy0+cmVmcmVz
aF9nb2xkZW5fZnJhbWUgPSAoY20tPmZyYW1lX3R5cGUgPT0gS0VZX0ZSQU1FKSA/IDEgOiAwOwor
ICBjcGlfLT5zZi51c2Vfbm9ucmRfcGlja19tb2RlID0gMTsKKyAgaWYgKGNwaV8tPnN2Yy5udW1i
ZXJfc3BhdGlhbF9sYXllcnMgPT0gMSAmJgorICAgICAgY3BpXy0+c3ZjLm51bWJlcl90ZW1wb3Jh
bF9sYXllcnMgPT0gMSkgeworICAgIGludCB0YXJnZXQ7CisgICAgaWYgKGZyYW1lX2lzX2ludHJh
X29ubHkoY20pKQorICAgICAgdGFyZ2V0ID0gdnA5X2NhbGNfaWZyYW1lX3RhcmdldF9zaXplX29u
ZV9wYXNzX2NicihjcGlfKTsKKyAgICBlbHNlCisgICAgICB0YXJnZXQgPSB2cDlfY2FsY19wZnJh
bWVfdGFyZ2V0X3NpemVfb25lX3Bhc3NfY2JyKGNwaV8pOworICAgIHZwOV9yY19zZXRfZnJhbWVf
dGFyZ2V0KGNwaV8sIHRhcmdldCk7CisgICAgdnA5X3VwZGF0ZV9idWZmZXJfbGV2ZWxfcHJlZW5j
b2RlKGNwaV8pOworICB9IGVsc2UgeworICAgIHZwOV91cGRhdGVfdGVtcG9yYWxfbGF5ZXJfZnJh
bWVyYXRlKGNwaV8pOworICAgIHZwOV9yZXN0b3JlX2xheWVyX2NvbnRleHQoY3BpXyk7CisgICAg
dnA5X3JjX2dldF9zdmNfcGFyYW1zKGNwaV8pOworICB9CisgIGludCBib3R0b21faW5kZXgsIHRv
cF9pbmRleDsKKyAgY3BpXy0+Y29tbW9uLmJhc2VfcWluZGV4ID0KKyAgICAgIHZwOV9yY19waWNr
X3FfYW5kX2JvdW5kcyhjcGlfLCAmYm90dG9tX2luZGV4LCAmdG9wX2luZGV4KTsKK30KKworaW50
IFZQOVJhdGVDb250cm9sUlRDOjpHZXRRUCgpIGNvbnN0IHsgcmV0dXJuIGNwaV8tPmNvbW1vbi5i
YXNlX3FpbmRleDsgfQorCitpbnQgVlA5UmF0ZUNvbnRyb2xSVEM6OkdldExvb3BmaWx0ZXJMZXZl
bCgpIGNvbnN0IHsKKyAgc3RydWN0IGxvb3BmaWx0ZXIgKmNvbnN0IGxmID0gJmNwaV8tPmNvbW1v
bi5sZjsKKyAgdnA5X3BpY2tfZmlsdGVyX2xldmVsKG51bGxwdHIsIGNwaV8sIExQRl9QSUNLX0ZS
T01fUSk7CisgIHJldHVybiBsZi0+ZmlsdGVyX2xldmVsOworfQorCit2b2lkIFZQOVJhdGVDb250
cm9sUlRDOjpQb3N0RW5jb2RlVXBkYXRlKHVpbnQ2NF90IGVuY29kZWRfZnJhbWVfc2l6ZSkgewor
ICB2cDlfcmNfcG9zdGVuY29kZV91cGRhdGUoY3BpXywgZW5jb2RlZF9mcmFtZV9zaXplKTsKKyAg
aWYgKGNwaV8tPnN2Yy5udW1iZXJfc3BhdGlhbF9sYXllcnMgPiAxIHx8CisgICAgICBjcGlfLT5z
dmMubnVtYmVyX3RlbXBvcmFsX2xheWVycyA+IDEpCisgICAgdnA5X3NhdmVfbGF5ZXJfY29udGV4
dChjcGlfKTsKKyAgY3BpXy0+Y29tbW9uLmN1cnJlbnRfdmlkZW9fZnJhbWUrKzsKK30KKworfSAg
Ly8gbmFtZXNwYWNlIGxpYnZweApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvcmF0ZWN0cmxf
cnRjLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZwOS9yYXRlY3RybF9ydGMuaApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43MmVhNDBm
ZDY4YmMzZWIxZDhiODBkYzUxNzVkYjk0YWJhNjFjYTRiCi0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvcmF0ZWN0cmxfcnRjLmgKQEAgLTAsMCArMSwxMTYgQEAKKy8qCisgKiAgQ29w
eXJpZ2h0IChjKSAyMDIwIFRoZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNl
cnZlZC4KKyAqCisgKiAgVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBC
U0Qtc3R5bGUgbGljZW5zZQorICogIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZp
bGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZQorICogIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50
ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyAqICBpbiB0aGUg
ZmlsZSBQQVRFTlRTLiAgQWxsIGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisgKiAg
YmUgZm91bmQgaW4gdGhlIEFVVEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRy
ZWUuCisgKi8KKworI2lmbmRlZiBWUFhfVlA5X1JBVEVDVFJMX1JUQ19IXworI2RlZmluZSBWUFhf
VlA5X1JBVEVDVFJMX1JUQ19IXworCisjaW5jbHVkZSA8Y3N0ZGludD4KKyNpbmNsdWRlIDxtZW1v
cnk+CisKKyNpbmNsdWRlICJ2cDkvY29tbW9uL3ZwOV9lbnRyb3B5bW9kZS5oIgorI2luY2x1ZGUg
InZwOS9jb21tb24vdnA5X2VudW1zLmgiCisjaW5jbHVkZSAidnA5L2NvbW1vbi92cDlfb255eGNf
aW50LmgiCisjaW5jbHVkZSAidnA5L3ZwOV9pZmFjZV9jb21tb24uaCIKKyNpbmNsdWRlICJ2cDkv
ZW5jb2Rlci92cDlfZW5jb2Rlci5oIgorI2luY2x1ZGUgInZwOS9lbmNvZGVyL3ZwOV9maXJzdHBh
c3MuaCIKKyNpbmNsdWRlICJ2cDkvdnA5X2N4X2lmYWNlLmgiCisjaW5jbHVkZSAidnB4X21lbS92
cHhfbWVtLmgiCisKK25hbWVzcGFjZSBsaWJ2cHggeworCitzdHJ1Y3QgVlA5UmF0ZUNvbnRyb2xS
dGNDb25maWcgeworICBpbnQgd2lkdGg7CisgIGludCBoZWlnaHQ7CisgIC8vIDAtNjMKKyAgaW50
IG1heF9xdWFudGl6ZXI7CisgIGludCBtaW5fcXVhbnRpemVyOworICBpbnQ2NF90IHRhcmdldF9i
YW5kd2lkdGg7CisgIGludDY0X3QgYnVmX2luaXRpYWxfc3o7CisgIGludDY0X3QgYnVmX29wdGlt
YWxfc3o7CisgIGludDY0X3QgYnVmX3N6OworICBpbnQgdW5kZXJzaG9vdF9wY3Q7CisgIGludCBv
dmVyc2hvb3RfcGN0OworICBpbnQgbWF4X2ludHJhX2JpdHJhdGVfcGN0OworICBkb3VibGUgZnJh
bWVyYXRlOworICAvLyBOdW1iZXIgb2Ygc3BhdGlhbCBsYXllcnMKKyAgaW50IHNzX251bWJlcl9s
YXllcnM7CisgIC8vIE51bWJlciBvZiB0ZW1wb3JhbCBsYXllcnMKKyAgaW50IHRzX251bWJlcl9s
YXllcnM7CisgIGludCBtYXhfcXVhbnRpemVyc1tWUFhfTUFYX0xBWUVSU107CisgIGludCBtaW5f
cXVhbnRpemVyc1tWUFhfTUFYX0xBWUVSU107CisgIGludCBzY2FsaW5nX2ZhY3Rvcl9udW1bVlBY
X1NTX01BWF9MQVlFUlNdOworICBpbnQgc2NhbGluZ19mYWN0b3JfZGVuW1ZQWF9TU19NQVhfTEFZ
RVJTXTsKKyAgaW50IGxheWVyX3RhcmdldF9iaXRyYXRlW1ZQWF9NQVhfTEFZRVJTXTsKKyAgaW50
IHRzX3JhdGVfZGVjaW1hdG9yW1ZQWF9UU19NQVhfTEFZRVJTXTsKK307CisKK3N0cnVjdCBWUDlG
cmFtZVBhcmFtc1FwUlRDIHsKKyAgRlJBTUVfVFlQRSBmcmFtZV90eXBlOworICBpbnQgc3BhdGlh
bF9sYXllcl9pZDsKKyAgaW50IHRlbXBvcmFsX2xheWVyX2lkOworfTsKKworLy8gVGhpcyBpbnRl
cmZhY2UgYWxsb3dzIHVzaW5nIFZQOSByZWFsLXRpbWUgcmF0ZSBjb250cm9sIHdpdGhvdXQgaW5p
dGlhbGl6aW5nCisvLyB0aGUgZW5jb2Rlci4gVG8gdXNlIHRoaXMgaW50ZXJmYWNlLCB5b3UgbmVl
ZCB0byBsaW5rIHdpdGggbGlidnA5cmMuYS4KKy8vCisvLyAjaW5jbHVkZSAidnA5L3JhdGVjdHJs
X3J0Yy5oIgorLy8gVlA5UmF0ZUNvbnRyb2xSVEMgcmNfYXBpOworLy8gVlA5UmF0ZUNvbnRyb2xS
dGNDb25maWcgY2ZnOworLy8gVlA5RnJhbWVQYXJhbXNRcFJUQyBmcmFtZV9wYXJhbXM7CisvLwor
Ly8gWW91ckZ1bmN0aW9uVG9Jbml0aWFsaXplQ29uZmlnKGNmZyk7CisvLyByY19hcGkuSW5pdFJh
dGVDb250cm9sKGNmZyk7CisvLyAvLyBzdGFydCBlbmNvZGluZworLy8gd2hpbGUgKGZyYW1lX3Rv
X2VuY29kZSkgeworLy8gICBpZiAoY29uZmlnX2NoYW5nZWQpCisvLyAgICAgcmNfYXBpLlVwZGF0
ZVJhdGVDb250cm9sKGNmZyk7CisvLyAgIFlvdXJGdW5jdGlvblRvRmlsbEZyYW1lUGFyYW1zKGZy
YW1lX3BhcmFtcyk7CisvLyAgIHJjX2FwaS5Db21wdXRlUVAoZnJhbWVfcGFyYW1zKTsKKy8vICAg
WW91ckZ1bmN0aW9uVG9Vc2VRUChyY19hcGkuR2V0UVAoKSk7CisvLyAgIFlvdXJGdW5jdGlvblRv
VXNlTG9vcGZpbHRlcihyY19hcGkuR2V0TG9vcGZpbHRlckxldmVsKCkpOworLy8gICAvLyBBZnRl
ciBlbmNvZGluZworLy8gICByY19hcGkuUG9zdEVuY29kZShlbmNvZGVkX2ZyYW1lX3NpemUpOwor
Ly8gfQorY2xhc3MgVlA5UmF0ZUNvbnRyb2xSVEMgeworIHB1YmxpYzoKKyAgc3RhdGljIHN0ZDo6
dW5pcXVlX3B0cjxWUDlSYXRlQ29udHJvbFJUQz4gQ3JlYXRlKAorICAgICAgY29uc3QgVlA5UmF0
ZUNvbnRyb2xSdGNDb25maWcgJmNmZyk7CisgIH5WUDlSYXRlQ29udHJvbFJUQygpIHsKKyAgICBp
ZiAoY3BpXykgeworICAgICAgZm9yIChpbnQgc2wgPSAwOyBzbCA8IGNwaV8tPnN2Yy5udW1iZXJf
c3BhdGlhbF9sYXllcnM7IHNsKyspIHsKKyAgICAgICAgZm9yIChpbnQgdGwgPSAwOyB0bCA8IGNw
aV8tPnN2Yy5udW1iZXJfdGVtcG9yYWxfbGF5ZXJzOyB0bCsrKSB7CisgICAgICAgICAgaW50IGxh
eWVyID0gTEFZRVJfSURTX1RPX0lEWChzbCwgdGwsIGNwaV8tPm94Y2YudHNfbnVtYmVyX2xheWVy
cyk7CisgICAgICAgICAgTEFZRVJfQ09OVEVYVCAqY29uc3QgbGMgPSAmY3BpXy0+c3ZjLmxheWVy
X2NvbnRleHRbbGF5ZXJdOworICAgICAgICAgIHZweF9mcmVlKGxjLT5tYXApOworICAgICAgICAg
IHZweF9mcmVlKGxjLT5sYXN0X2NvZGVkX3FfbWFwKTsKKyAgICAgICAgICB2cHhfZnJlZShsYy0+
Y29uc2VjX3plcm9fbXYpOworICAgICAgICB9CisgICAgICB9CisgICAgICB2cHhfZnJlZShjcGlf
KTsKKyAgICB9CisgIH0KKworICB2b2lkIFVwZGF0ZVJhdGVDb250cm9sKGNvbnN0IFZQOVJhdGVD
b250cm9sUnRjQ29uZmlnICZyY19jZmcpOworICAvLyBHZXRRUCgpIG5lZWRzIHRvIGJlIGNhbGxl
ZCBhZnRlciBDb21wdXRlUVAoKSB0byBnZXQgdGhlIGxhdGVzdCBRUAorICBpbnQgR2V0UVAoKSBj
b25zdDsKKyAgaW50IEdldExvb3BmaWx0ZXJMZXZlbCgpIGNvbnN0OworICB2b2lkIENvbXB1dGVR
UChjb25zdCBWUDlGcmFtZVBhcmFtc1FwUlRDICZmcmFtZV9wYXJhbXMpOworICAvLyBGZWVkYmFj
ayB0byByYXRlIGNvbnRyb2wgd2l0aCB0aGUgc2l6ZSBvZiBjdXJyZW50IGVuY29kZWQgZnJhbWUK
KyAgdm9pZCBQb3N0RW5jb2RlVXBkYXRlKHVpbnQ2NF90IGVuY29kZWRfZnJhbWVfc2l6ZSk7CisK
KyBwcml2YXRlOgorICBWUDlSYXRlQ29udHJvbFJUQygpIHt9CisgIHZvaWQgSW5pdFJhdGVDb250
cm9sKGNvbnN0IFZQOVJhdGVDb250cm9sUnRjQ29uZmlnICZjZmcpOworICBWUDlfQ09NUCAqY3Bp
XzsKK307CisKK30gIC8vIG5hbWVzcGFjZSBsaWJ2cHgKKworI2VuZGlmICAvLyBWUFhfVlA5X1JB
VEVDVFJMX1JUQ19IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvc2ltcGxlX2VuY29kZS5j
YyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnA5L3NpbXBsZV9lbmNvZGUuY2MKaW5kZXggMjVkMDI1MThkNWQyODRi
M2MyODg1M2ZlOTViOTZhN2NkYzQ0N2E1Ny4uZDRlYjBjNjY5ZDcxNDI2OTMzYmM4NGJkN2JkMjRi
NjlhOWQ2ZmNlZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvc2ltcGxlX2VuY29kZS5jYwor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZwOS9zaW1wbGVfZW5jb2RlLmNjCkBAIC05MCwxMiArOTAsMjAgQEAg
c3RhdGljIGludCBpbWdfcmVhZCh2cHhfaW1hZ2VfdCAqaW1nLCBGSUxFICpmaWxlKSB7CiAgIHJl
dHVybiAxOwogfQogCisvLyBBc3N1bWUgZXZlcnkgY29uZmlnIGluIFZQOUVuY29kZXJDb25maWcg
aXMgbGVzcyB0aGFuIDEwMCBjaGFyYWN0ZXJzLgorI2RlZmluZSBFTkNPREVfQ09ORklHX0JVRl9T
SVpFIDEwMAorc3RydWN0IEVuY29kZUNvbmZpZyB7CisgIGNoYXIgbmFtZVtFTkNPREVfQ09ORklH
X0JVRl9TSVpFXTsKKyAgY2hhciB2YWx1ZVtFTkNPREVfQ09ORklHX0JVRl9TSVpFXTsKK307CisK
IGNsYXNzIFNpbXBsZUVuY29kZTo6RW5jb2RlSW1wbCB7CiAgcHVibGljOgogICBWUDlfQ09NUCAq
Y3BpOwogICB2cHhfaW1nX2ZtdF90IGltZ19mbXQ7CiAgIHZweF9pbWFnZV90IHRtcF9pbWc7CiAg
IHN0ZDo6dmVjdG9yPEZJUlNUUEFTU19TVEFUUz4gZmlyc3RfcGFzc19zdGF0czsKKyAgc3RkOjp2
ZWN0b3I8RW5jb2RlQ29uZmlnPiBlbmNvZGVfY29uZmlnX2xpc3Q7CiB9OwogCiBzdGF0aWMgVlA5
X0NPTVAgKmluaXRfZW5jb2Rlcihjb25zdCBWUDlFbmNvZGVyQ29uZmlnICpveGNmLApAQCAtMTIz
LDEzICsxMzEsNiBAQCBzdGF0aWMgSU5MSU5FIHZweF9yYXRpb25hbF90IG1ha2VfdnB4X3JhdGlv
bmFsKGludCBudW0sIGludCBkZW4pIHsKICAgcmV0dXJuIHY7CiB9CiAKLXN0YXRpYyBJTkxJTkUg
dnB4X3JhdGlvbmFsX3QgaW52ZXJ0X3ZweF9yYXRpb25hbCh2cHhfcmF0aW9uYWxfdCB2KSB7Ci0g
IHZweF9yYXRpb25hbF90IGludmVyc2VfdjsKLSAgaW52ZXJzZV92Lm51bSA9IHYuZGVuOwotICBp
bnZlcnNlX3YuZGVuID0gdi5udW07Ci0gIHJldHVybiBpbnZlcnNlX3Y7Ci19Ci0KIHN0YXRpYyBJ
TkxJTkUgRnJhbWVUeXBlCiBnZXRfZnJhbWVfdHlwZV9mcm9tX3VwZGF0ZV90eXBlKEZSQU1FX1VQ
REFURV9UWVBFIHVwZGF0ZV90eXBlKSB7CiAgIHN3aXRjaCAodXBkYXRlX3R5cGUpIHsKQEAgLTE3
NCw3ICsxNzUsOCBAQCBzdGF0aWMgUmVmRnJhbWVUeXBlIG12X3JlZl9mcmFtZV90b19yZWZfZnJh
bWVfdHlwZSgKIAogc3RhdGljIHZvaWQgdXBkYXRlX21vdGlvbl92ZWN0b3JfaW5mbygKICAgICBj
b25zdCBNT1RJT05fVkVDVE9SX0lORk8gKmlucHV0X21vdGlvbl92ZWN0b3JfaW5mbywgY29uc3Qg
aW50IG51bV9yb3dzXzR4NCwKLSAgICBjb25zdCBpbnQgbnVtX2NvbHNfNHg0LCBNb3Rpb25WZWN0
b3JJbmZvICpvdXRwdXRfbW90aW9uX3ZlY3Rvcl9pbmZvKSB7CisgICAgY29uc3QgaW50IG51bV9j
b2xzXzR4NCwgTW90aW9uVmVjdG9ySW5mbyAqb3V0cHV0X21vdGlvbl92ZWN0b3JfaW5mbywKKyAg
ICBpbnQgbW90aW9uX3ZlY3Rvcl9zY2FsZSkgewogICBjb25zdCBpbnQgbnVtX3VuaXRzXzR4NCA9
IG51bV9yb3dzXzR4NCAqIG51bV9jb2xzXzR4NDsKICAgZm9yIChpbnQgaSA9IDA7IGkgPCBudW1f
dW5pdHNfNHg0OyArK2kpIHsKICAgICBjb25zdCBNVl9SRUZFUkVOQ0VfRlJBTUUgKmluX3JlZl9m
cmFtZSA9CkBAIC0xOTIsMTYgKzE5NCwzNCBAQCBzdGF0aWMgdm9pZCB1cGRhdGVfbW90aW9uX3Zl
Y3Rvcl9pbmZvKAogICAgICAgICBtdl9yZWZfZnJhbWVfdG9fcmVmX2ZyYW1lX3R5cGUoaW5fcmVm
X2ZyYW1lWzFdKTsKICAgICBvdXRwdXRfbW90aW9uX3ZlY3Rvcl9pbmZvW2ldLm12X3Jvd1swXSA9
CiAgICAgICAgIChkb3VibGUpaW5wdXRfbW90aW9uX3ZlY3Rvcl9pbmZvW2ldLm12WzBdLmFzX212
LnJvdyAvCi0gICAgICAgIGtNb3Rpb25WZWN0b3JQcmVjaXNpb247CisgICAgICAgIG1vdGlvbl92
ZWN0b3Jfc2NhbGU7CiAgICAgb3V0cHV0X21vdGlvbl92ZWN0b3JfaW5mb1tpXS5tdl9jb2x1bW5b
MF0gPQogICAgICAgICAoZG91YmxlKWlucHV0X21vdGlvbl92ZWN0b3JfaW5mb1tpXS5tdlswXS5h
c19tdi5jb2wgLwotICAgICAgICBrTW90aW9uVmVjdG9yUHJlY2lzaW9uOworICAgICAgICBtb3Rp
b25fdmVjdG9yX3NjYWxlOwogICAgIG91dHB1dF9tb3Rpb25fdmVjdG9yX2luZm9baV0ubXZfcm93
WzFdID0KICAgICAgICAgKGRvdWJsZSlpbnB1dF9tb3Rpb25fdmVjdG9yX2luZm9baV0ubXZbMV0u
YXNfbXYucm93IC8KLSAgICAgICAga01vdGlvblZlY3RvclByZWNpc2lvbjsKKyAgICAgICAgbW90
aW9uX3ZlY3Rvcl9zY2FsZTsKICAgICBvdXRwdXRfbW90aW9uX3ZlY3Rvcl9pbmZvW2ldLm12X2Nv
bHVtblsxXSA9CiAgICAgICAgIChkb3VibGUpaW5wdXRfbW90aW9uX3ZlY3Rvcl9pbmZvW2ldLm12
WzFdLmFzX212LmNvbCAvCi0gICAgICAgIGtNb3Rpb25WZWN0b3JQcmVjaXNpb247CisgICAgICAg
IG1vdGlvbl92ZWN0b3Jfc2NhbGU7CisgIH0KK30KKworc3RhdGljIHZvaWQgdXBkYXRlX3RwbF9z
dGF0c19pbmZvKGNvbnN0IFRwbERlcFN0YXRzICppbnB1dF90cGxfc3RhdHNfaW5mbywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpbnQgc2hvd19mcmFtZV9jb3VudCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUcGxTdGF0c0luZm8gKm91dHB1dF90
cGxfc3RhdHNfaW5mbykgeworICBpbnQgZnJhbWVfaWR4OworICBmb3IgKGZyYW1lX2lkeCA9IDA7
IGZyYW1lX2lkeCA8IHNob3dfZnJhbWVfY291bnQ7ICsrZnJhbWVfaWR4KSB7CisgICAgb3V0cHV0
X3RwbF9zdGF0c19pbmZvW2ZyYW1lX2lkeF0uaW50cmFfY29zdCA9CisgICAgICAgIGlucHV0X3Rw
bF9zdGF0c19pbmZvW2ZyYW1lX2lkeF0uaW50cmFfY29zdDsKKyAgICBvdXRwdXRfdHBsX3N0YXRz
X2luZm9bZnJhbWVfaWR4XS5pbnRlcl9jb3N0ID0KKyAgICAgICAgaW5wdXRfdHBsX3N0YXRzX2lu
Zm9bZnJhbWVfaWR4XS5pbnRlcl9jb3N0OworICAgIG91dHB1dF90cGxfc3RhdHNfaW5mb1tmcmFt
ZV9pZHhdLm1jX2Zsb3cgPQorICAgICAgICBpbnB1dF90cGxfc3RhdHNfaW5mb1tmcmFtZV9pZHhd
Lm1jX2Zsb3c7CisgICAgb3V0cHV0X3RwbF9zdGF0c19pbmZvW2ZyYW1lX2lkeF0ubWNfZGVwX2Nv
c3QgPQorICAgICAgICBpbnB1dF90cGxfc3RhdHNfaW5mb1tmcmFtZV9pZHhdLm1jX2RlcF9jb3N0
OworICAgIG91dHB1dF90cGxfc3RhdHNfaW5mb1tmcmFtZV9pZHhdLm1jX3JlZl9jb3N0ID0KKyAg
ICAgICAgaW5wdXRfdHBsX3N0YXRzX2luZm9bZnJhbWVfaWR4XS5tY19yZWZfY29zdDsKICAgfQog
fQogCkBAIC00NzgsMTIgKzQ5OCwxMyBAQCBzdGF0aWMgYm9vbCBpbml0X2VuY29kZV9mcmFtZV9y
ZXN1bHQoRW5jb2RlRnJhbWVSZXN1bHQgKmVuY29kZV9mcmFtZV9yZXN1bHQsCiAgIGVuY29kZV9m
cmFtZV9yZXN1bHQtPmNvZGluZ19kYXRhLnJlc2V0KAogICAgICAgbmV3IChzdGQ6Om5vdGhyb3cp
IHVpbnQ4X3RbbWF4X2NvZGluZ19kYXRhX2J5dGVfc2l6ZV0pOwogCi0gIGVuY29kZV9mcmFtZV9y
ZXN1bHQtPm51bV9yb3dzXzR4NCA9IGdldF9udW1fdW5pdF80eDQoZnJhbWVfd2lkdGgpOwotICBl
bmNvZGVfZnJhbWVfcmVzdWx0LT5udW1fY29sc180eDQgPSBnZXRfbnVtX3VuaXRfNHg0KGZyYW1l
X2hlaWdodCk7CisgIGVuY29kZV9mcmFtZV9yZXN1bHQtPm51bV9yb3dzXzR4NCA9IGdldF9udW1f
dW5pdF80eDQoZnJhbWVfaGVpZ2h0KTsKKyAgZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+bnVtX2NvbHNf
NHg0ID0gZ2V0X251bV91bml0XzR4NChmcmFtZV93aWR0aCk7CiAgIGVuY29kZV9mcmFtZV9yZXN1
bHQtPnBhcnRpdGlvbl9pbmZvLnJlc2l6ZShlbmNvZGVfZnJhbWVfcmVzdWx0LT5udW1fcm93c180
eDQgKgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2Rl
X2ZyYW1lX3Jlc3VsdC0+bnVtX2NvbHNfNHg0KTsKICAgZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+bW90
aW9uX3ZlY3Rvcl9pbmZvLnJlc2l6ZSgKICAgICAgIGVuY29kZV9mcmFtZV9yZXN1bHQtPm51bV9y
b3dzXzR4NCAqIGVuY29kZV9mcmFtZV9yZXN1bHQtPm51bV9jb2xzXzR4NCk7CisgIGVuY29kZV9m
cmFtZV9yZXN1bHQtPnRwbF9zdGF0c19pbmZvLnJlc2l6ZShNQVhfTEFHX0JVRkZFUlMpOwogCiAg
IGlmIChlbmNvZGVfZnJhbWVfcmVzdWx0LT5jb2RpbmdfZGF0YS5nZXQoKSA9PSBudWxscHRyKSB7
CiAgICAgcmV0dXJuIGZhbHNlOwpAQCAtNDkyLDEyICs1MTMsMzIgQEAgc3RhdGljIGJvb2wgaW5p
dF9lbmNvZGVfZnJhbWVfcmVzdWx0KEVuY29kZUZyYW1lUmVzdWx0ICplbmNvZGVfZnJhbWVfcmVz
dWx0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWVfaGVpZ2h0LCBpbWdfZm10KTsK
IH0KIAorc3RhdGljIHZvaWQgZW5jb2RlX2ZyYW1lX3Jlc3VsdF91cGRhdGVfcnFfaGlzdG9yeSgK
KyAgICBjb25zdCBSQVRFX1FJTkRFWF9ISVNUT1JZICpycV9oaXN0b3J5LAorICAgIEVuY29kZUZy
YW1lUmVzdWx0ICplbmNvZGVfZnJhbWVfcmVzdWx0KSB7CisgIGVuY29kZV9mcmFtZV9yZXN1bHQt
PnJlY29kZV9jb3VudCA9IHJxX2hpc3RvcnktPnJlY29kZV9jb3VudDsKKyAgZm9yIChpbnQgaSA9
IDA7IGkgPCBlbmNvZGVfZnJhbWVfcmVzdWx0LT5yZWNvZGVfY291bnQ7ICsraSkgeworICAgIGNv
bnN0IGludCBxX2luZGV4ID0gcnFfaGlzdG9yeS0+cV9pbmRleF9oaXN0b3J5W2ldOworICAgIGNv
bnN0IGludCByYXRlID0gcnFfaGlzdG9yeS0+cmF0ZV9oaXN0b3J5W2ldOworICAgIGVuY29kZV9m
cmFtZV9yZXN1bHQtPnFfaW5kZXhfaGlzdG9yeS5wdXNoX2JhY2socV9pbmRleCk7CisgICAgZW5j
b2RlX2ZyYW1lX3Jlc3VsdC0+cmF0ZV9oaXN0b3J5LnB1c2hfYmFjayhyYXRlKTsKKyAgfQorfQor
CiBzdGF0aWMgdm9pZCB1cGRhdGVfZW5jb2RlX2ZyYW1lX3Jlc3VsdCgKLSAgICBFbmNvZGVGcmFt
ZVJlc3VsdCAqZW5jb2RlX2ZyYW1lX3Jlc3VsdCwKKyAgICBFbmNvZGVGcmFtZVJlc3VsdCAqZW5j
b2RlX2ZyYW1lX3Jlc3VsdCwgY29uc3QgaW50IHNob3dfZnJhbWVfY291bnQsCiAgICAgY29uc3Qg
RU5DT0RFX0ZSQU1FX1JFU1VMVCAqZW5jb2RlX2ZyYW1lX2luZm8pIHsKICAgZW5jb2RlX2ZyYW1l
X3Jlc3VsdC0+Y29kaW5nX2RhdGFfYml0X3NpemUgPQogICAgICAgZW5jb2RlX2ZyYW1lX3Jlc3Vs
dC0+Y29kaW5nX2RhdGFfYnl0ZV9zaXplICogODsKICAgZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+c2hv
d19pZHggPSBlbmNvZGVfZnJhbWVfaW5mby0+c2hvd19pZHg7CisgIGVuY29kZV9mcmFtZV9yZXN1
bHQtPmNvZGluZ19pZHggPSBlbmNvZGVfZnJhbWVfaW5mby0+ZnJhbWVfY29kaW5nX2luZGV4Owor
ICBhc3NlcnQoa1JlZkZyYW1lVHlwZU1heCA9PSBNQVhfSU5URVJfUkVGX0ZSQU1FUyk7CisgIGZv
ciAoaW50IGkgPSAwOyBpIDwga1JlZkZyYW1lVHlwZU1heDsgKytpKSB7CisgICAgZW5jb2RlX2Zy
YW1lX3Jlc3VsdC0+cmVmX2ZyYW1lX2luZm8uY29kaW5nX2luZGV4ZXNbaV0gPQorICAgICAgICBl
bmNvZGVfZnJhbWVfaW5mby0+cmVmX2ZyYW1lX2NvZGluZ19pbmRleGVzW2ldOworICAgIGVuY29k
ZV9mcmFtZV9yZXN1bHQtPnJlZl9mcmFtZV9pbmZvLnZhbGlkX2xpc3RbaV0gPQorICAgICAgICBl
bmNvZGVfZnJhbWVfaW5mby0+cmVmX2ZyYW1lX3ZhbGlkX2xpc3RbaV07CisgIH0KICAgZW5jb2Rl
X2ZyYW1lX3Jlc3VsdC0+ZnJhbWVfdHlwZSA9CiAgICAgICBnZXRfZnJhbWVfdHlwZV9mcm9tX3Vw
ZGF0ZV90eXBlKGVuY29kZV9mcmFtZV9pbmZvLT51cGRhdGVfdHlwZSk7CiAgIGVuY29kZV9mcmFt
ZV9yZXN1bHQtPnBzbnIgPSBlbmNvZGVfZnJhbWVfaW5mby0+cHNucjsKQEAgLTUxMCw5ICs1NTEs
MTYgQEAgc3RhdGljIHZvaWQgdXBkYXRlX2VuY29kZV9mcmFtZV9yZXN1bHQoCiAgIHVwZGF0ZV9t
b3Rpb25fdmVjdG9yX2luZm8oZW5jb2RlX2ZyYW1lX2luZm8tPm1vdGlvbl92ZWN0b3JfaW5mbywK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGVfZnJhbWVfcmVzdWx0LT5udW1fcm93
c180eDQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+
bnVtX2NvbHNfNHg0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICZlbmNvZGVfZnJhbWVf
cmVzdWx0LT5tb3Rpb25fdmVjdG9yX2luZm9bMF0pOworICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICZlbmNvZGVfZnJhbWVfcmVzdWx0LT5tb3Rpb25fdmVjdG9yX2luZm9bMF0sCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAga01vdGlvblZlY3RvclN1YlBpeGVsUHJlY2lzaW9uKTsKICAg
dXBkYXRlX2ZyYW1lX2NvdW50cygmZW5jb2RlX2ZyYW1lX2luZm8tPmZyYW1lX2NvdW50cywKICAg
ICAgICAgICAgICAgICAgICAgICAmZW5jb2RlX2ZyYW1lX3Jlc3VsdC0+ZnJhbWVfY291bnRzKTsK
KyAgaWYgKGVuY29kZV9mcmFtZV9yZXN1bHQtPmZyYW1lX3R5cGUgPT0ga0ZyYW1lVHlwZUFsdFJl
ZikgeworICAgIHVwZGF0ZV90cGxfc3RhdHNfaW5mbyhlbmNvZGVfZnJhbWVfaW5mby0+dHBsX3N0
YXRzX2luZm8sIHNob3dfZnJhbWVfY291bnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICZl
bmNvZGVfZnJhbWVfcmVzdWx0LT50cGxfc3RhdHNfaW5mb1swXSk7CisgIH0KKyAgZW5jb2RlX2Zy
YW1lX3Jlc3VsdF91cGRhdGVfcnFfaGlzdG9yeSgmZW5jb2RlX2ZyYW1lX2luZm8tPnJxX2hpc3Rv
cnksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2RlX2ZyYW1l
X3Jlc3VsdCk7CiB9CiAKIHN0YXRpYyB2b2lkIEluY3JlYXNlR3JvdXBPZlBpY3R1cmVJbmRleChH
cm91cE9mUGljdHVyZSAqZ3JvdXBfb2ZfcGljdHVyZSkgewpAQCAtNTI0LDkgKzU3MiwxOCBAQCBz
dGF0aWMgaW50IElzR3JvdXBPZlBpY3R1cmVGaW5pc2hlZChjb25zdCBHcm91cE9mUGljdHVyZSAm
Z3JvdXBfb2ZfcGljdHVyZSkgewogICAgICAgICAgZ3JvdXBfb2ZfcGljdHVyZS5lbmNvZGVfZnJh
bWVfbGlzdC5zaXplKCk7CiB9CiAKK2Jvb2wgb3BlcmF0b3I9PShjb25zdCBSZWZGcmFtZUluZm8g
JmEsIGNvbnN0IFJlZkZyYW1lSW5mbyAmYikgeworICBib29sIG1hdGNoID0gdHJ1ZTsKKyAgZm9y
IChpbnQgaSA9IDA7IGkgPCBrUmVmRnJhbWVUeXBlTWF4OyArK2kpIHsKKyAgICBtYXRjaCAmPSBh
LmNvZGluZ19pbmRleGVzW2ldID09IGIuY29kaW5nX2luZGV4ZXNbaV07CisgICAgbWF0Y2ggJj0g
YS52YWxpZF9saXN0W2ldID09IGIudmFsaWRfbGlzdFtpXTsKKyAgfQorICByZXR1cm4gbWF0Y2g7
Cit9CisKIHN0YXRpYyB2b2lkIEluaXRSZWZGcmFtZUluZm8oUmVmRnJhbWVJbmZvICpyZWZfZnJh
bWVfaW5mbykgewogICBmb3IgKGludCBpID0gMDsgaSA8IGtSZWZGcmFtZVR5cGVNYXg7ICsraSkg
ewotICAgIHJlZl9mcmFtZV9pbmZvLT5jb2RpbmdfaW5kZXhlc1tpXSA9IDA7CisgICAgcmVmX2Zy
YW1lX2luZm8tPmNvZGluZ19pbmRleGVzW2ldID0gLTE7CiAgICAgcmVmX2ZyYW1lX2luZm8tPnZh
bGlkX2xpc3RbaV0gPSAwOwogICB9CiB9CkBAIC01NzksNyArNjM2LDcgQEAgc3RhdGljIHZvaWQg
UG9zdFVwZGF0ZVJlZkZyYW1lSW5mbyhGcmFtZVR5cGUgZnJhbWVfdHlwZSwgaW50IGZyYW1lX2Nv
ZGluZ19pbmRleCwKICAgfQogCiAgIGlmIChwYXN0X2luZGV4ID09IGxhc3RfaW5kZXgpIHsKLSAg
ICByZWZfZnJhbWVfdmFsaWRfbGlzdFtrUmVmRnJhbWVUeXBlTGFzdF0gPSAwOworICAgIHJlZl9m
cmFtZV92YWxpZF9saXN0W2tSZWZGcmFtZVR5cGVQYXN0XSA9IDA7CiAgIH0KIAogICBpZiAoZnV0
dXJlX2luZGV4ID09IGxhc3RfaW5kZXgpIHsKQEAgLTYwMiw2ICs2NTksOSBAQCBzdGF0aWMgdm9p
ZCBTZXRHcm91cE9mUGljdHVyZShpbnQgZmlyc3RfaXNfa2V5X2ZyYW1lLCBpbnQgdXNlX2FsdF9y
ZWYsCiAgIGdyb3VwX29mX3BpY3R1cmUtPnNob3dfZnJhbWVfY291bnQgPSBjb2RpbmdfZnJhbWVf
Y291bnQgLSB1c2VfYWx0X3JlZjsKICAgZ3JvdXBfb2ZfcGljdHVyZS0+c3RhcnRfc2hvd19pbmRl
eCA9IGZpcnN0X3Nob3dfaWR4OwogICBncm91cF9vZl9waWN0dXJlLT5zdGFydF9jb2RpbmdfaW5k
ZXggPSBzdGFydF9jb2RpbmdfaW5kZXg7CisgIGdyb3VwX29mX3BpY3R1cmUtPmZpcnN0X2lzX2tl
eV9mcmFtZSA9IGZpcnN0X2lzX2tleV9mcmFtZTsKKyAgZ3JvdXBfb2ZfcGljdHVyZS0+dXNlX2Fs
dF9yZWYgPSB1c2VfYWx0X3JlZjsKKyAgZ3JvdXBfb2ZfcGljdHVyZS0+bGFzdF9nb3BfdXNlX2Fs
dF9yZWYgPSBsYXN0X2dvcF91c2VfYWx0X3JlZjsKIAogICAvLyBXZSBuZWVkIHRvIG1ha2UgYSBj
b3B5IG9mIHN0YXJ0IHJlZmVyZW5jZSBmcmFtZSBpbmZvIGJlY2F1c2Ugd2UKICAgLy8gdXNlIGl0
IHRvIHNpbXVsYXRlIHRoZSByZWYgZnJhbWUgdXBkYXRlLgpAQCAtNjgyLDYgKzc0Miw2MCBAQCBz
dGF0aWMgdm9pZCBVcGRhdGVHcm91cE9mUGljdHVyZShjb25zdCBWUDlfQ09NUCAqY3BpLCBpbnQg
c3RhcnRfY29kaW5nX2luZGV4LAogICAgICAgICAgICAgICAgICAgICBzdGFydF9yZWZfZnJhbWVf
aW5mbywgZ3JvdXBfb2ZfcGljdHVyZSk7CiB9CiAKKyNkZWZpbmUgU0VUX1NUUlVDVF9WQUxVRShj
b25maWcsIHN0cnVjdHVyZSwgcmV0LCBmaWVsZCkgXAorICBpZiAoc3RyY21wKGNvbmZpZy5uYW1l
LCAjZmllbGQpID09IDApIHsgICAgICAgICAgICAgICBcCisgICAgc3RydWN0dXJlLT5maWVsZCA9
IGF0b2koY29uZmlnLnZhbHVlKTsgICAgICAgICAgICAgIFwKKyAgICByZXQgPSAxOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICB9CisKK3N0YXRpYyB2b2lk
IFVwZGF0ZUVuY29kZUNvbmZpZyhjb25zdCBFbmNvZGVDb25maWcgJmNvbmZpZywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBWUDlFbmNvZGVyQ29uZmlnICpveGNmKSB7CisgIGludCBy
ZXQgPSAwOworICBTRVRfU1RSVUNUX1ZBTFVFKGNvbmZpZywgb3hjZiwgcmV0LCBrZXlfZnJlcSk7
CisgIFNFVF9TVFJVQ1RfVkFMVUUoY29uZmlnLCBveGNmLCByZXQsIHR3b19wYXNzX3Zicm1pbl9z
ZWN0aW9uKTsKKyAgU0VUX1NUUlVDVF9WQUxVRShjb25maWcsIG94Y2YsIHJldCwgdHdvX3Bhc3Nf
dmJybWF4X3NlY3Rpb24pOworICBTRVRfU1RSVUNUX1ZBTFVFKGNvbmZpZywgb3hjZiwgcmV0LCB1
bmRlcl9zaG9vdF9wY3QpOworICBTRVRfU1RSVUNUX1ZBTFVFKGNvbmZpZywgb3hjZiwgcmV0LCBv
dmVyX3Nob290X3BjdCk7CisgIFNFVF9TVFJVQ1RfVkFMVUUoY29uZmlnLCBveGNmLCByZXQsIG1h
eF90aHJlYWRzKTsKKyAgU0VUX1NUUlVDVF9WQUxVRShjb25maWcsIG94Y2YsIHJldCwgZnJhbWVf
cGFyYWxsZWxfZGVjb2RpbmdfbW9kZSk7CisgIFNFVF9TVFJVQ1RfVkFMVUUoY29uZmlnLCBveGNm
LCByZXQsIHRpbGVfY29sdW1ucyk7CisgIFNFVF9TVFJVQ1RfVkFMVUUoY29uZmlnLCBveGNmLCBy
ZXQsIGFybnJfbWF4X2ZyYW1lcyk7CisgIFNFVF9TVFJVQ1RfVkFMVUUoY29uZmlnLCBveGNmLCBy
ZXQsIGFybnJfc3RyZW5ndGgpOworICBTRVRfU1RSVUNUX1ZBTFVFKGNvbmZpZywgb3hjZiwgcmV0
LCBsYWdfaW5fZnJhbWVzKTsKKyAgU0VUX1NUUlVDVF9WQUxVRShjb25maWcsIG94Y2YsIHJldCwg
ZW5jb2RlX2JyZWFrb3V0KTsKKyAgU0VUX1NUUlVDVF9WQUxVRShjb25maWcsIG94Y2YsIHJldCwg
ZW5hYmxlX3RwbF9tb2RlbCk7CisgIFNFVF9TVFJVQ1RfVkFMVUUoY29uZmlnLCBveGNmLCByZXQs
IGVuYWJsZV9hdXRvX2FyZik7CisgIGlmIChzdHJjbXAoY29uZmlnLm5hbWUsICJyY19tb2RlIikg
PT0gMCkgeworICAgIGludCByY19tb2RlID0gYXRvaShjb25maWcudmFsdWUpOworICAgIGlmIChy
Y19tb2RlID49IFZQWF9WQlIgJiYgcmNfbW9kZSA8PSBWUFhfUSkgeworICAgICAgb3hjZi0+cmNf
bW9kZSA9IChlbnVtIHZweF9yY19tb2RlKXJjX21vZGU7CisgICAgICByZXQgPSAxOworICAgIH0g
ZWxzZSB7CisgICAgICBmcHJpbnRmKHN0ZGVyciwgIkludmFsaWQgcmNfbW9kZSB2YWx1ZTogJWRc
biIsIHJjX21vZGUpOworICAgIH0KKyAgfQorICBTRVRfU1RSVUNUX1ZBTFVFKGNvbmZpZywgb3hj
ZiwgcmV0LCBjcV9sZXZlbCk7CisgIGlmIChyZXQgPT0gMCkgeworICAgIGZwcmludGYoc3RkZXJy
LCAiSWdub3JlZCB1bnN1cHBvcnRlZCBlbmNvZGVfY29uZmlnICVzXG4iLCBjb25maWcubmFtZSk7
CisgIH0KK30KKworc3RhdGljIFZQOUVuY29kZXJDb25maWcgR2V0RW5jb2RlQ29uZmlnKAorICAg
IGludCBmcmFtZV93aWR0aCwgaW50IGZyYW1lX2hlaWdodCwgdnB4X3JhdGlvbmFsX3QgZnJhbWVf
cmF0ZSwKKyAgICBpbnQgdGFyZ2V0X2JpdHJhdGUsIGludCBlbmNvZGVfc3BlZWQsIHZweF9lbmNf
cGFzcyBlbmNfcGFzcywKKyAgICBjb25zdCBzdGQ6OnZlY3RvcjxFbmNvZGVDb25maWc+ICZlbmNv
ZGVfY29uZmlnX2xpc3QpIHsKKyAgVlA5RW5jb2RlckNvbmZpZyBveGNmID0KKyAgICAgIHZwOV9n
ZXRfZW5jb2Rlcl9jb25maWcoZnJhbWVfd2lkdGgsIGZyYW1lX2hlaWdodCwgZnJhbWVfcmF0ZSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2JpdHJhdGUsIGVuY29kZV9zcGVl
ZCwgZW5jX3Bhc3MpOworICBmb3IgKGNvbnN0IGF1dG8gJmNvbmZpZyA6IGVuY29kZV9jb25maWdf
bGlzdCkgeworICAgIFVwZGF0ZUVuY29kZUNvbmZpZyhjb25maWcsICZveGNmKTsKKyAgfQorICBp
ZiAoZW5jX3Bhc3MgPT0gVlBYX1JDX0ZJUlNUX1BBU1MpIHsKKyAgICBveGNmLmxhZ19pbl9mcmFt
ZXMgPSAwOworICB9CisgIHJldHVybiBveGNmOworfQorCiBTaW1wbGVFbmNvZGU6OlNpbXBsZUVu
Y29kZShpbnQgZnJhbWVfd2lkdGgsIGludCBmcmFtZV9oZWlnaHQsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbnQgZnJhbWVfcmF0ZV9udW0sIGludCBmcmFtZV9yYXRlX2RlbiwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGludCB0YXJnZXRfYml0cmF0ZSwgaW50IG51bV9mcmFtZXMs
CkBAIC02OTMsNyArODA3LDE0IEBAIFNpbXBsZUVuY29kZTo6U2ltcGxlRW5jb2RlKGludCBmcmFt
ZV93aWR0aCwgaW50IGZyYW1lX2hlaWdodCwKICAgZnJhbWVfcmF0ZV9kZW5fID0gZnJhbWVfcmF0
ZV9kZW47CiAgIHRhcmdldF9iaXRyYXRlXyA9IHRhcmdldF9iaXRyYXRlOwogICBudW1fZnJhbWVz
XyA9IG51bV9mcmFtZXM7CisgIGVuY29kZV9zcGVlZF8gPSAwOworCiAgIGZyYW1lX2NvZGluZ19p
bmRleF8gPSAwOworICBzaG93X2ZyYW1lX2NvdW50XyA9IDA7CisKKyAga2V5X2ZyYW1lX2dyb3Vw
X2luZGV4XyA9IDA7CisgIGtleV9mcmFtZV9ncm91cF9zaXplXyA9IDA7CisKICAgLy8gVE9ETyhh
bmdpcmJpZCk6IFNob3VsZCB3ZSBrZWVwIGEgZmlsZSBwb2ludGVyIGhlcmUgb3Iga2VlcCB0aGUg
ZmlsZV9wYXRoPwogICBhc3NlcnQoaW5maWxlX3BhdGggIT0gbnVsbHB0cik7CiAgIGluX2ZpbGVf
ID0gZm9wZW4oaW5maWxlX3BhdGgsICJyIik7CkBAIC03MDgsMTYgKzgyOSw1NSBAQCBTaW1wbGVF
bmNvZGU6OlNpbXBsZUVuY29kZShpbnQgZnJhbWVfd2lkdGgsIGludCBmcmFtZV9oZWlnaHQsCiAg
IEluaXRSZWZGcmFtZUluZm8oJnJlZl9mcmFtZV9pbmZvXyk7CiB9CiAKK3ZvaWQgU2ltcGxlRW5j
b2RlOjpTZXRFbmNvZGVTcGVlZChpbnQgZW5jb2RlX3NwZWVkKSB7CisgIGVuY29kZV9zcGVlZF8g
PSBlbmNvZGVfc3BlZWQ7Cit9CisKK1N0YXR1c0NvZGUgU2ltcGxlRW5jb2RlOjpTZXRFbmNvZGVD
b25maWcoY29uc3QgY2hhciAqbmFtZSwgY29uc3QgY2hhciAqdmFsdWUpIHsKKyAgaWYgKG5hbWUg
PT0gbnVsbHB0ciB8fCB2YWx1ZSA9PSBudWxscHRyKSB7CisgICAgZnByaW50ZihzdGRlcnIsICJT
ZXRFbmNvZGVDb25maWc6IG51bGwgcG9pbnRlciwgbmFtZSAlcCB2YWx1ZSAlcFxuIiwgbmFtZSwK
KyAgICAgICAgICAgIHZhbHVlKTsKKyAgICByZXR1cm4gU3RhdHVzRXJyb3I7CisgIH0KKyAgRW5j
b2RlQ29uZmlnIGNvbmZpZzsKKyAgc25wcmludGYoY29uZmlnLm5hbWUsIEVOQ09ERV9DT05GSUdf
QlVGX1NJWkUsICIlcyIsIG5hbWUpOworICBzbnByaW50Zihjb25maWcudmFsdWUsIEVOQ09ERV9D
T05GSUdfQlVGX1NJWkUsICIlcyIsIHZhbHVlKTsKKyAgaW1wbF9wdHJfLT5lbmNvZGVfY29uZmln
X2xpc3QucHVzaF9iYWNrKGNvbmZpZyk7CisgIHJldHVybiBTdGF0dXNPazsKK30KKworU3RhdHVz
Q29kZSBTaW1wbGVFbmNvZGU6OkR1bXBFbmNvZGVDb25maWdzKGludCBwYXNzLCBGSUxFICpmcCkg
eworICBpZiAoZnAgPT0gbnVsbHB0cikgeworICAgIGZwcmludGYoc3RkZXJyLCAiRHVtcEVuY29k
ZUNvbmZpZ3M6IG51bGwgcG9pbnRlciwgZnAgJXBcbiIsIGZwKTsKKyAgICByZXR1cm4gU3RhdHVz
RXJyb3I7CisgIH0KKyAgdnB4X2VuY19wYXNzIGVuY19wYXNzOworICBpZiAocGFzcyA9PSAxKSB7
CisgICAgZW5jX3Bhc3MgPSBWUFhfUkNfRklSU1RfUEFTUzsKKyAgfSBlbHNlIHsKKyAgICBlbmNf
cGFzcyA9IFZQWF9SQ19MQVNUX1BBU1M7CisgIH0KKyAgY29uc3QgdnB4X3JhdGlvbmFsX3QgZnJh
bWVfcmF0ZSA9CisgICAgICBtYWtlX3ZweF9yYXRpb25hbChmcmFtZV9yYXRlX251bV8sIGZyYW1l
X3JhdGVfZGVuXyk7CisgIGNvbnN0IFZQOUVuY29kZXJDb25maWcgb3hjZiA9CisgICAgICBHZXRF
bmNvZGVDb25maWcoZnJhbWVfd2lkdGhfLCBmcmFtZV9oZWlnaHRfLCBmcmFtZV9yYXRlLCB0YXJn
ZXRfYml0cmF0ZV8sCisgICAgICAgICAgICAgICAgICAgICAgZW5jb2RlX3NwZWVkXywgZW5jX3Bh
c3MsIGltcGxfcHRyXy0+ZW5jb2RlX2NvbmZpZ19saXN0KTsKKyAgdnA5X2R1bXBfZW5jb2Rlcl9j
b25maWcoJm94Y2YsIGZwKTsKKyAgcmV0dXJuIFN0YXR1c09rOworfQorCiB2b2lkIFNpbXBsZUVu
Y29kZTo6Q29tcHV0ZUZpcnN0UGFzc1N0YXRzKCkgewogICB2cHhfcmF0aW9uYWxfdCBmcmFtZV9y
YXRlID0KICAgICAgIG1ha2VfdnB4X3JhdGlvbmFsKGZyYW1lX3JhdGVfbnVtXywgZnJhbWVfcmF0
ZV9kZW5fKTsKLSAgY29uc3QgVlA5RW5jb2RlckNvbmZpZyBveGNmID0KLSAgICAgIHZwOV9nZXRf
ZW5jb2Rlcl9jb25maWcoZnJhbWVfd2lkdGhfLCBmcmFtZV9oZWlnaHRfLCBmcmFtZV9yYXRlLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRfYml0cmF0ZV8sIFZQWF9SQ19GSVJT
VF9QQVNTKTsKKyAgY29uc3QgVlA5RW5jb2RlckNvbmZpZyBveGNmID0gR2V0RW5jb2RlQ29uZmln
KAorICAgICAgZnJhbWVfd2lkdGhfLCBmcmFtZV9oZWlnaHRfLCBmcmFtZV9yYXRlLCB0YXJnZXRf
Yml0cmF0ZV8sIGVuY29kZV9zcGVlZF8sCisgICAgICBWUFhfUkNfRklSU1RfUEFTUywgaW1wbF9w
dHJfLT5lbmNvZGVfY29uZmlnX2xpc3QpOwogICBWUDlfQ09NUCAqY3BpID0gaW5pdF9lbmNvZGVy
KCZveGNmLCBpbXBsX3B0cl8tPmltZ19mbXQpOwogICBzdHJ1Y3QgbG9va2FoZWFkX2N0eCAqbG9v
a2FoZWFkID0gY3BpLT5sb29rYWhlYWQ7CiAgIGludCBpOwogICBpbnQgdXNlX2hpZ2hiaXRkZXB0
aCA9IDA7CisgIGNvbnN0IGludCBudW1fcm93c18xNngxNiA9IGdldF9udW1fdW5pdF8xNngxNihm
cmFtZV9oZWlnaHRfKTsKKyAgY29uc3QgaW50IG51bV9jb2xzXzE2eDE2ID0gZ2V0X251bV91bml0
XzE2eDE2KGZyYW1lX3dpZHRoXyk7CiAjaWYgQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKICAgdXNl
X2hpZ2hiaXRkZXB0aCA9IGNwaS0+Y29tbW9uLnVzZV9oaWdoYml0ZGVwdGg7CiAjZW5kaWYKQEAg
LTc1MCw2ICs5MTAsMTIgQEAgdm9pZCBTaW1wbGVFbmNvZGU6OkNvbXB1dGVGaXJzdFBhc3NTdGF0
cygpIHsKICAgICAgICAgLy8gdnA5X2dldF9jb21wcmVzc2VkX2RhdGEgb25seSBnZW5lcmF0ZXMg
Zmlyc3QgcGFzcyBzdGF0cyBub3QKICAgICAgICAgLy8gY29tcHJlc3NlcyBkYXRhCiAgICAgICAg
IGFzc2VydChzaXplID09IDApOworICAgICAgICAvLyBHZXQgdnA5IGZpcnN0IHBhc3MgbW90aW9u
IHZlY3RvciBpbmZvLgorICAgICAgICBzdGQ6OnZlY3RvcjxNb3Rpb25WZWN0b3JJbmZvPiBtdl9p
bmZvKG51bV9yb3dzXzE2eDE2ICogbnVtX2NvbHNfMTZ4MTYpOworICAgICAgICB1cGRhdGVfbW90
aW9uX3ZlY3Rvcl9pbmZvKGNwaS0+ZnBfbW90aW9uX3ZlY3Rvcl9pbmZvLCBudW1fcm93c18xNngx
NiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudW1fY29sc18xNngxNiwgbXZf
aW5mby5kYXRhKCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga01vdGlvblZl
Y3RvckZ1bGxQaXhlbFByZWNpc2lvbik7CisgICAgICAgIGZwX21vdGlvbl92ZWN0b3JfaW5mb18u
cHVzaF9iYWNrKG12X2luZm8pOwogICAgICAgfQogICAgICAgaW1wbF9wdHJfLT5maXJzdF9wYXNz
X3N0YXRzLnB1c2hfYmFjayh2cDlfZ2V0X2ZyYW1lX3N0YXRzKCZjcGktPnR3b3Bhc3MpKTsKICAg
ICB9CkBAIC03NjAsNiArOTI2LDkgQEAgdm9pZCBTaW1wbGVFbmNvZGU6OkNvbXB1dGVGaXJzdFBh
c3NTdGF0cygpIHsKICAgZnJlZV9lbmNvZGVyKGNwaSk7CiAgIHJld2luZChpbl9maWxlXyk7CiAg
IHZweF9pbWdfZnJlZSgmaW1nKTsKKworICAvLyBHZW5lcmF0ZSBrZXlfZnJhbWVfbWFwIGJhc2Vk
IG9uIGltcGxfcHRyXy0+Zmlyc3RfcGFzc19zdGF0cy4KKyAga2V5X2ZyYW1lX21hcF8gPSBDb21w
dXRlS2V5RnJhbWVNYXAoKTsKIH0KIAogc3RkOjp2ZWN0b3I8c3RkOjp2ZWN0b3I8ZG91YmxlPj4g
U2ltcGxlRW5jb2RlOjpPYnNlcnZlRmlyc3RQYXNzU3RhdHMoKSB7CkBAIC03ODQsMjAgKzk1Myw5
MCBAQCBzdGQ6OnZlY3RvcjxzdGQ6OnZlY3Rvcjxkb3VibGU+PiBTaW1wbGVFbmNvZGU6Ok9ic2Vy
dmVGaXJzdFBhc3NTdGF0cygpIHsKICAgcmV0dXJuIG91dHB1dF9zdGF0czsKIH0KIAotdm9pZCBT
aW1wbGVFbmNvZGU6OlNldEV4dGVybmFsR3JvdXBPZlBpY3R1cmUoCi0gICAgc3RkOjp2ZWN0b3I8
aW50PiBleHRlcm5hbF9hcmZfaW5kZXhlcykgewotICBleHRlcm5hbF9hcmZfaW5kZXhlc18gPSBl
eHRlcm5hbF9hcmZfaW5kZXhlczsKK3N0ZDo6dmVjdG9yPHN0ZDo6dmVjdG9yPE1vdGlvblZlY3Rv
ckluZm8+PgorU2ltcGxlRW5jb2RlOjpPYnNlcnZlRmlyc3RQYXNzTW90aW9uVmVjdG9ycygpIHsK
KyAgcmV0dXJuIGZwX21vdGlvbl92ZWN0b3JfaW5mb187Cit9CisKK3ZvaWQgU2ltcGxlRW5jb2Rl
OjpTZXRFeHRlcm5hbEdyb3VwT2ZQaWN0dXJlc01hcChpbnQgKmdvcF9tYXAsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGdvcF9tYXBfc2l6ZSkg
eworICBmb3IgKGludCBpID0gMDsgaSA8IGdvcF9tYXBfc2l6ZTsgKytpKSB7CisgICAgZ29wX21h
cF8ucHVzaF9iYWNrKGdvcF9tYXBbaV0pOworICB9CisgIC8vIFRoZSBmb2xsb3dpbmcgd2lsbCBj
aGVjayBhbmQgbW9kaWZ5IGdvcF9tYXBfIHRvIG1ha2Ugc3VyZSB0aGUKKyAgLy8gZ29wX21hcF8g
c2F0aXNmaWVzIHRoZSBjb25zdHJhaW50cy4KKyAgLy8gMSkgRWFjaCBrZXkgZnJhbWUgcG9zaXRp
b24gc2hvdWxkIGJlIGF0IHRoZSBzdGFydCBvZiBhIGdvcC4KKyAgLy8gMikgVGhlIGxhc3QgZ29w
IHNob3VsZCBub3QgdXNlIGFuIGFsdCByZWYuCisgIGFzc2VydChnb3BfbWFwXy5zaXplKCkgPT0g
a2V5X2ZyYW1lX21hcF8uc2l6ZSgpKTsKKyAgaW50IGxhc3RfZ29wX3N0YXJ0ID0gMDsKKyAgZm9y
IChpbnQgaSA9IDA7IHN0YXRpY19jYXN0PHNpemVfdD4oaSkgPCBnb3BfbWFwXy5zaXplKCk7ICsr
aSkgeworICAgIGlmIChrZXlfZnJhbWVfbWFwX1tpXSA9PSAxICYmIGdvcF9tYXBfW2ldID09IDAp
IHsKKyAgICAgIGZwcmludGYoc3RkZXJyLCAiQWRkIGFuIGV4dHJhIGdvcCBzdGFydCBhdCBzaG93
X2lkeCAlZFxuIiwgaSk7CisgICAgICAvLyBJbnNlcnQgYSBnb3Agc3RhcnQgYXQga2V5IGZyYW1l
IGxvY2F0aW9uLgorICAgICAgZ29wX21hcF9baV0gfD0ga0dvcE1hcEZsYWdTdGFydDsKKyAgICAg
IGdvcF9tYXBfW2ldIHw9IGtHb3BNYXBGbGFnVXNlQWx0UmVmOworICAgIH0KKyAgICBpZiAoZ29w
X21hcF9baV0gJiBrR29wTWFwRmxhZ1N0YXJ0KSB7CisgICAgICBsYXN0X2dvcF9zdGFydCA9IGk7
CisgICAgfQorICB9CisgIGlmIChnb3BfbWFwX1tsYXN0X2dvcF9zdGFydF0gJiBrR29wTWFwRmxh
Z1VzZUFsdFJlZikgeworICAgIGZwcmludGYoc3RkZXJyLAorICAgICAgICAgICAgIkxhc3QgZ3Jv
dXAgb2YgcGljdHVyZXMgc3RhcnRpbmcgYXQgc2hvd19pZHggJWQgc2hvdWxkbid0IHVzZSBhbHQg
IgorICAgICAgICAgICAgInJlZlxuIiwKKyAgICAgICAgICAgIGxhc3RfZ29wX3N0YXJ0KTsKKyAg
ICBnb3BfbWFwX1tsYXN0X2dvcF9zdGFydF0gJj0gfmtHb3BNYXBGbGFnVXNlQWx0UmVmOworICB9
Cit9CisKK3N0ZDo6dmVjdG9yPGludD4gU2ltcGxlRW5jb2RlOjpPYnNlcnZlRXh0ZXJuYWxHcm91
cE9mUGljdHVyZXNNYXAoKSB7CisgIHJldHVybiBnb3BfbWFwXzsKK30KKwordGVtcGxhdGUgPHR5
cGVuYW1lIFQ+CitUICpHZXRWZWN0b3JEYXRhKGNvbnN0IHN0ZDo6dmVjdG9yPFQ+ICZ2KSB7Cisg
IGlmICh2LmVtcHR5KCkpIHsKKyAgICByZXR1cm4gbnVsbHB0cjsKKyAgfQorICByZXR1cm4gY29u
c3RfY2FzdDxUICo+KHYuZGF0YSgpKTsKK30KKworc3RhdGljIEdPUF9DT01NQU5EIEdldEdvcENv
bW1hbmQoY29uc3Qgc3RkOjp2ZWN0b3I8aW50PiAmZ29wX21hcCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGludCBzdGFydF9zaG93X2luZGV4KSB7CisgIEdPUF9DT01NQU5EIGdv
cF9jb21tYW5kOworICBpZiAoZ29wX21hcC5zaXplKCkgPiAwKSB7CisgICAgYXNzZXJ0KHN0YXRp
Y19jYXN0PHNpemVfdD4oc3RhcnRfc2hvd19pbmRleCkgPCBnb3BfbWFwLnNpemUoKSk7CisgICAg
YXNzZXJ0KChnb3BfbWFwW3N0YXJ0X3Nob3dfaW5kZXhdICYga0dvcE1hcEZsYWdTdGFydCkgIT0g
MCk7CisgICAgaW50IGVuZF9zaG93X2luZGV4ID0gc3RhcnRfc2hvd19pbmRleCArIDE7CisgICAg
Ly8gZ29wX21hcFtlbmRfc2hvd19pbmRleF0gJiBrR29wTWFwRmxhZ1N0YXJ0ID09IDAgbWVhbnMg
dGhpcyBpcworICAgIC8vIHRoZSBzdGFydCBvZiBhIGdvcC4KKyAgICB3aGlsZSAoc3RhdGljX2Nh
c3Q8c2l6ZV90PihlbmRfc2hvd19pbmRleCkgPCBnb3BfbWFwLnNpemUoKSAmJgorICAgICAgICAg
ICAoZ29wX21hcFtlbmRfc2hvd19pbmRleF0gJiBrR29wTWFwRmxhZ1N0YXJ0KSA9PSAwKSB7Cisg
ICAgICArK2VuZF9zaG93X2luZGV4OworICAgIH0KKyAgICBjb25zdCBpbnQgc2hvd19mcmFtZV9j
b3VudCA9IGVuZF9zaG93X2luZGV4IC0gc3RhcnRfc2hvd19pbmRleDsKKyAgICBpbnQgdXNlX2Fs
dF9yZWYgPSAoZ29wX21hcFtzdGFydF9zaG93X2luZGV4XSAmIGtHb3BNYXBGbGFnVXNlQWx0UmVm
KSAhPSAwOworICAgIGlmIChzdGF0aWNfY2FzdDxzaXplX3Q+KGVuZF9zaG93X2luZGV4KSA9PSBn
b3BfbWFwLnNpemUoKSkgeworICAgICAgLy8gVGhpcyBpcyB0aGUgbGFzdCBnb3AgZ3JvdXAsIHRo
ZXJlIG11c3QgYmUgbm8gYWx0cmVmLgorICAgICAgdXNlX2FsdF9yZWYgPSAwOworICAgIH0KKyAg
ICBnb3BfY29tbWFuZF9vbigmZ29wX2NvbW1hbmQsIHNob3dfZnJhbWVfY291bnQsIHVzZV9hbHRf
cmVmKTsKKyAgfSBlbHNlIHsKKyAgICBnb3BfY29tbWFuZF9vZmYoJmdvcF9jb21tYW5kKTsKKyAg
fQorICByZXR1cm4gZ29wX2NvbW1hbmQ7CiB9CiAKIHZvaWQgU2ltcGxlRW5jb2RlOjpTdGFydEVu
Y29kZSgpIHsKICAgYXNzZXJ0KGltcGxfcHRyXy0+Zmlyc3RfcGFzc19zdGF0cy5zaXplKCkgPiAw
KTsKICAgdnB4X3JhdGlvbmFsX3QgZnJhbWVfcmF0ZSA9CiAgICAgICBtYWtlX3ZweF9yYXRpb25h
bChmcmFtZV9yYXRlX251bV8sIGZyYW1lX3JhdGVfZGVuXyk7Ci0gIFZQOUVuY29kZXJDb25maWcg
b3hjZiA9Ci0gICAgICB2cDlfZ2V0X2VuY29kZXJfY29uZmlnKGZyYW1lX3dpZHRoXywgZnJhbWVf
aGVpZ2h0XywgZnJhbWVfcmF0ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0
X2JpdHJhdGVfLCBWUFhfUkNfTEFTVF9QQVNTKTsKKyAgVlA5RW5jb2RlckNvbmZpZyBveGNmID0g
R2V0RW5jb2RlQ29uZmlnKAorICAgICAgZnJhbWVfd2lkdGhfLCBmcmFtZV9oZWlnaHRfLCBmcmFt
ZV9yYXRlLCB0YXJnZXRfYml0cmF0ZV8sIGVuY29kZV9zcGVlZF8sCisgICAgICBWUFhfUkNfTEFT
VF9QQVNTLCBpbXBsX3B0cl8tPmVuY29kZV9jb25maWdfbGlzdCk7CisKICAgdnB4X2ZpeGVkX2J1
Zl90IHN0YXRzOwotICBzdGF0cy5idWYgPSBpbXBsX3B0cl8tPmZpcnN0X3Bhc3Nfc3RhdHMuZGF0
YSgpOworICBzdGF0cy5idWYgPSBHZXRWZWN0b3JEYXRhKGltcGxfcHRyXy0+Zmlyc3RfcGFzc19z
dGF0cyk7CiAgIHN0YXRzLnN6ID0gc2l6ZW9mKGltcGxfcHRyXy0+Zmlyc3RfcGFzc19zdGF0c1sw
XSkgKgogICAgICAgICAgICAgIGltcGxfcHRyXy0+Zmlyc3RfcGFzc19zdGF0cy5zaXplKCk7CiAK
QEAgLTgwNiwxNiArMTA0NSwyOCBAQCB2b2lkIFNpbXBsZUVuY29kZTo6U3RhcnRFbmNvZGUoKSB7
CiAgIGltcGxfcHRyXy0+Y3BpID0gaW5pdF9lbmNvZGVyKCZveGNmLCBpbXBsX3B0cl8tPmltZ19m
bXQpOwogICB2cHhfaW1nX2FsbG9jKCZpbXBsX3B0cl8tPnRtcF9pbWcsIGltcGxfcHRyXy0+aW1n
X2ZtdCwgZnJhbWVfd2lkdGhfLAogICAgICAgICAgICAgICAgIGZyYW1lX2hlaWdodF8sIDEpOwor
CiAgIGZyYW1lX2NvZGluZ19pbmRleF8gPSAwOwotICBlbmNvZGVfY29tbWFuZF9zZXRfZXh0ZXJu
YWxfYXJmX2luZGV4ZXMoJmltcGxfcHRyXy0+Y3BpLT5lbmNvZGVfY29tbWFuZCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dGVybmFsX2FyZl9pbmRleGVzXy5k
YXRhKCkpOworICBzaG93X2ZyYW1lX2NvdW50XyA9IDA7CisKKyAgVXBkYXRlS2V5RnJhbWVHcm91
cChzaG93X2ZyYW1lX2NvdW50Xyk7CisKKyAgY29uc3QgR09QX0NPTU1BTkQgZ29wX2NvbW1hbmQg
PSBHZXRHb3BDb21tYW5kKGdvcF9tYXBfLCBzaG93X2ZyYW1lX2NvdW50Xyk7CisgIGVuY29kZV9j
b21tYW5kX3NldF9nb3BfY29tbWFuZCgmaW1wbF9wdHJfLT5jcGktPmVuY29kZV9jb21tYW5kLCBn
b3BfY29tbWFuZCk7CiAgIFVwZGF0ZUdyb3VwT2ZQaWN0dXJlKGltcGxfcHRyXy0+Y3BpLCBmcmFt
ZV9jb2RpbmdfaW5kZXhfLCByZWZfZnJhbWVfaW5mb18sCiAgICAgICAgICAgICAgICAgICAgICAg
ICZncm91cF9vZl9waWN0dXJlXyk7CiAgIHJld2luZChpbl9maWxlXyk7CiAKICAgaWYgKG91dF9m
aWxlXyAhPSBudWxscHRyKSB7CiAgICAgY29uc3QgY2hhciAqZm91cmNjID0gIlZQOTAiOwotICAg
IHZweF9yYXRpb25hbF90IHRpbWVfYmFzZSA9IGludmVydF92cHhfcmF0aW9uYWwoZnJhbWVfcmF0
ZSk7CisgICAgLy8gSW4gU2ltcGxlRW5jb2RlLCB3ZSB1c2UgdGltZV9iYXNlID0gMSAvIFRJQ0tT
X1BFUl9TRUMuCisgICAgLy8gQmFzZWQgb24gdGhhdCwgdGhlIGl2Zl90aW1lc3RhbXAgZm9yIGVh
Y2ggaW1hZ2UgaXMgc2V0IHRvCisgICAgLy8gc2hvd19pZHggKiBUSUNLU19QRVJfU0VDIC8gZnJh
bWVfcmF0ZQorICAgIC8vIHN1Y2ggdGhhdCBlYWNoIGltYWdlJ3MgYWN0dWFsIHRpbWVzdGFtcCBp
biBzZWNvbmRzIGNhbiBiZSBjb21wdXRlZCBhcworICAgIC8vIGl2Zl90aW1lc3RhbXAgKiB0aW1l
X2Jhc2UgPT0gc2hvd19pZHggLyBmcmFtZV9yYXRlCisgICAgLy8gVE9ETyhhbmdpZWJpcmQpOiAx
KSBBZGQgdW5pdCB0ZXN0IGZvciBpdmYgdGltZXN0YW1wLgorICAgIC8vIDIpIFNpbXBsaWZ5IHRo
ZSBmcmFtZV9yYXRlIHNldHRpbmcgcHJvY2Vzcy4KKyAgICB2cHhfcmF0aW9uYWxfdCB0aW1lX2Jh
c2UgPSBtYWtlX3ZweF9yYXRpb25hbCgxLCBUSUNLU19QRVJfU0VDKTsKICAgICBpdmZfd3JpdGVf
ZmlsZV9oZWFkZXJfd2l0aF92aWRlb19pbmZvKG91dF9maWxlXywgKihjb25zdCB1aW50MzJfdCAq
KWZvdXJjYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bV9m
cmFtZXNfLCBmcmFtZV93aWR0aF8sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBmcmFtZV9oZWlnaHRfLCB0aW1lX2Jhc2UpOwpAQCAtODI5LDEzICsxMDgwLDI2IEBA
IHZvaWQgU2ltcGxlRW5jb2RlOjpFbmRFbmNvZGUoKSB7CiAgIHJld2luZChpbl9maWxlXyk7CiB9
CiAKLWludCBTaW1wbGVFbmNvZGU6OkdldEtleUZyYW1lR3JvdXBTaXplKGludCBrZXlfZnJhbWVf
aW5kZXgpIGNvbnN0IHsKK3ZvaWQgU2ltcGxlRW5jb2RlOjpVcGRhdGVLZXlGcmFtZUdyb3VwKGlu
dCBrZXlfZnJhbWVfc2hvd19pbmRleCkgewogICBjb25zdCBWUDlfQ09NUCAqY3BpID0gaW1wbF9w
dHJfLT5jcGk7Ci0gIHJldHVybiB2cDlfZ2V0X2ZyYW1lc190b19uZXh0X2tleSgmY3BpLT5veGNm
LCAmY3BpLT5mcmFtZV9pbmZvLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
JmNwaS0+dHdvcGFzcy5maXJzdF9wYXNzX2luZm8sCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBrZXlfZnJhbWVfaW5kZXgsIGNwaS0+cmMubWluX2dmX2ludGVydmFsKTsKKyAg
a2V5X2ZyYW1lX2dyb3VwX2luZGV4XyA9IDA7CisgIGtleV9mcmFtZV9ncm91cF9zaXplXyA9IHZw
OV9nZXRfZnJhbWVzX3RvX25leHRfa2V5KAorICAgICAgJmNwaS0+b3hjZiwgJmNwaS0+ZnJhbWVf
aW5mbywgJmNwaS0+dHdvcGFzcy5maXJzdF9wYXNzX2luZm8sCisgICAgICBrZXlfZnJhbWVfc2hv
d19pbmRleCwgY3BpLT5yYy5taW5fZ2ZfaW50ZXJ2YWwpOworICBhc3NlcnQoa2V5X2ZyYW1lX2dy
b3VwX3NpemVfID4gMCk7CisgIC8vIEluaXQgdGhlIHJlZmVyZW5jZSBmcmFtZSBpbmZvIHdoZW4g
YSBuZXcga2V5IGZyYW1lIGdyb3VwIGFwcGVhcnMuCisgIEluaXRSZWZGcmFtZUluZm8oJnJlZl9m
cmFtZV9pbmZvXyk7Cit9CisKK3ZvaWQgU2ltcGxlRW5jb2RlOjpQb3N0VXBkYXRlS2V5RnJhbWVH
cm91cEluZGV4KEZyYW1lVHlwZSBmcmFtZV90eXBlKSB7CisgIGlmIChmcmFtZV90eXBlICE9IGtG
cmFtZVR5cGVBbHRSZWYpIHsKKyAgICAvLyBrZXlfZnJhbWVfZ3JvdXBfaW5kZXhfIG9ubHkgY291
bnRzIHNob3cgZnJhbWVzCisgICAgKytrZXlfZnJhbWVfZ3JvdXBfaW5kZXhfOworICB9CiB9CiAK
K2ludCBTaW1wbGVFbmNvZGU6OkdldEtleUZyYW1lR3JvdXBTaXplKCkgY29uc3QgeyByZXR1cm4g
a2V5X2ZyYW1lX2dyb3VwX3NpemVfOyB9CisKIEdyb3VwT2ZQaWN0dXJlIFNpbXBsZUVuY29kZTo6
T2JzZXJ2ZUdyb3VwT2ZQaWN0dXJlKCkgY29uc3QgewogICByZXR1cm4gZ3JvdXBfb2ZfcGljdHVy
ZV87CiB9CkBAIC04NTIsOCArMTExNiwyMyBAQCB2b2lkIFNpbXBsZUVuY29kZTo6UG9zdFVwZGF0
ZVN0YXRlKAogICBQb3N0VXBkYXRlUmVmRnJhbWVJbmZvKGVuY29kZV9mcmFtZV9yZXN1bHQuZnJh
bWVfdHlwZSwgZnJhbWVfY29kaW5nX2luZGV4XywKICAgICAgICAgICAgICAgICAgICAgICAgICAm
cmVmX2ZyYW1lX2luZm9fKTsKICAgKytmcmFtZV9jb2RpbmdfaW5kZXhfOworICBpZiAoZW5jb2Rl
X2ZyYW1lX3Jlc3VsdC5mcmFtZV90eXBlICE9IGtGcmFtZVR5cGVBbHRSZWYpIHsKKyAgICAvLyBP
bmx5IGtGcmFtZVR5cGVBbHRSZWYgaXMgbm90IGEgc2hvdyBmcmFtZQorICAgICsrc2hvd19mcmFt
ZV9jb3VudF87CisgIH0KKworICBQb3N0VXBkYXRlS2V5RnJhbWVHcm91cEluZGV4KGVuY29kZV9m
cmFtZV9yZXN1bHQuZnJhbWVfdHlwZSk7CisgIGlmIChrZXlfZnJhbWVfZ3JvdXBfaW5kZXhfID09
IGtleV9mcmFtZV9ncm91cF9zaXplXykgeworICAgIFVwZGF0ZUtleUZyYW1lR3JvdXAoc2hvd19m
cmFtZV9jb3VudF8pOworICB9CisKICAgSW5jcmVhc2VHcm91cE9mUGljdHVyZUluZGV4KCZncm91
cF9vZl9waWN0dXJlXyk7CiAgIGlmIChJc0dyb3VwT2ZQaWN0dXJlRmluaXNoZWQoZ3JvdXBfb2Zf
cGljdHVyZV8pKSB7CisgICAgY29uc3QgR09QX0NPTU1BTkQgZ29wX2NvbW1hbmQgPSBHZXRHb3BD
b21tYW5kKGdvcF9tYXBfLCBzaG93X2ZyYW1lX2NvdW50Xyk7CisgICAgZW5jb2RlX2NvbW1hbmRf
c2V0X2dvcF9jb21tYW5kKCZpbXBsX3B0cl8tPmNwaS0+ZW5jb2RlX2NvbW1hbmQsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdvcF9jb21tYW5kKTsKKyAgICAvLyBUaGlzIGZ1
bmN0aW9uIG5lZWRzIHRvIGJlIGNhbGxlZCBhZnRlciByZWZfZnJhbWVfaW5mb18gaXMgdXBkYXRl
ZAorICAgIC8vIHByb3Blcmx5IGluIFBvc3RVcGRhdGVSZWZGcmFtZUluZm8oKSBhbmQgVXBkYXRl
S2V5RnJhbWVHcm91cCgpLgogICAgIFVwZGF0ZUdyb3VwT2ZQaWN0dXJlKGltcGxfcHRyXy0+Y3Bp
LCBmcmFtZV9jb2RpbmdfaW5kZXhfLCByZWZfZnJhbWVfaW5mb18sCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgJmdyb3VwX29mX3BpY3R1cmVfKTsKICAgfQpAQCAtOTIzLDcgKzEyMDIsMTAgQEAg
dm9pZCBTaW1wbGVFbmNvZGU6OkVuY29kZUZyYW1lKEVuY29kZUZyYW1lUmVzdWx0ICplbmNvZGVf
ZnJhbWVfcmVzdWx0KSB7CiAgICAgICBhYm9ydCgpOwogICAgIH0KIAotICAgIHVwZGF0ZV9lbmNv
ZGVfZnJhbWVfcmVzdWx0KGVuY29kZV9mcmFtZV9yZXN1bHQsICZlbmNvZGVfZnJhbWVfaW5mbyk7
CisgICAgY29uc3QgR3JvdXBPZlBpY3R1cmUgZ3JvdXBfb2ZfcGljdHVyZSA9IHRoaXMtPk9ic2Vy
dmVHcm91cE9mUGljdHVyZSgpOworICAgIGNvbnN0IGludCBzaG93X2ZyYW1lX2NvdW50ID0gZ3Jv
dXBfb2ZfcGljdHVyZS5zaG93X2ZyYW1lX2NvdW50OworICAgIHVwZGF0ZV9lbmNvZGVfZnJhbWVf
cmVzdWx0KGVuY29kZV9mcmFtZV9yZXN1bHQsIHNob3dfZnJhbWVfY291bnQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgJmVuY29kZV9mcmFtZV9pbmZvKTsKICAgICBQb3N0VXBkYXRl
U3RhdGUoKmVuY29kZV9mcmFtZV9yZXN1bHQpOwogICB9IGVsc2UgewogICAgIC8vIFRPRE8oYW5n
aWViaXJkKTogQ2xlYW4gdXAgZW5jb2RlX2ZyYW1lX3Jlc3VsdC4KQEAgLTk0MCwyNSArMTIyMiw3
MyBAQCB2b2lkIFNpbXBsZUVuY29kZTo6RW5jb2RlRnJhbWVXaXRoUXVhbnRpemVJbmRleCgKICAg
ZW5jb2RlX2NvbW1hbmRfcmVzZXRfZXh0ZXJuYWxfcXVhbnRpemVfaW5kZXgoJmltcGxfcHRyXy0+
Y3BpLT5lbmNvZGVfY29tbWFuZCk7CiB9CiAKK3ZvaWQgU2ltcGxlRW5jb2RlOjpFbmNvZGVGcmFt
ZVdpdGhUYXJnZXRGcmFtZUJpdHMoCisgICAgRW5jb2RlRnJhbWVSZXN1bHQgKmVuY29kZV9mcmFt
ZV9yZXN1bHQsIGludCB0YXJnZXRfZnJhbWVfYml0cywKKyAgICBkb3VibGUgcGVyY2VudF9kaWZm
KSB7CisgIGVuY29kZV9jb21tYW5kX3NldF90YXJnZXRfZnJhbWVfYml0cygmaW1wbF9wdHJfLT5j
cGktPmVuY29kZV9jb21tYW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdGFyZ2V0X2ZyYW1lX2JpdHMsIHBlcmNlbnRfZGlmZik7CisgIEVuY29kZUZyYW1lKGVuY29k
ZV9mcmFtZV9yZXN1bHQpOworICBlbmNvZGVfY29tbWFuZF9yZXNldF90YXJnZXRfZnJhbWVfYml0
cygmaW1wbF9wdHJfLT5jcGktPmVuY29kZV9jb21tYW5kKTsKK30KKworc3RhdGljIGludCBHZXRD
b2RpbmdGcmFtZU51bUZyb21Hb3BNYXAoY29uc3Qgc3RkOjp2ZWN0b3I8aW50PiAmZ29wX21hcCkg
eworICBpbnQgc3RhcnRfc2hvd19pbmRleCA9IDA7CisgIGludCBjb2RpbmdfZnJhbWVfY291bnQg
PSAwOworICB3aGlsZSAoc3RhdGljX2Nhc3Q8c2l6ZV90PihzdGFydF9zaG93X2luZGV4KSA8IGdv
cF9tYXAuc2l6ZSgpKSB7CisgICAgY29uc3QgR09QX0NPTU1BTkQgZ29wX2NvbW1hbmQgPSBHZXRH
b3BDb21tYW5kKGdvcF9tYXAsIHN0YXJ0X3Nob3dfaW5kZXgpOworICAgIHN0YXJ0X3Nob3dfaW5k
ZXggKz0gZ29wX2NvbW1hbmQuc2hvd19mcmFtZV9jb3VudDsKKyAgICBjb2RpbmdfZnJhbWVfY291
bnQgKz0gZ29wX2NvbW1hbmRfY29kaW5nX2ZyYW1lX2NvdW50KCZnb3BfY29tbWFuZCk7CisgIH0K
KyAgYXNzZXJ0KHN0YXJ0X3Nob3dfaW5kZXggPT0gZ29wX21hcC5zaXplKCkpOworICByZXR1cm4g
Y29kaW5nX2ZyYW1lX2NvdW50OworfQorCiBpbnQgU2ltcGxlRW5jb2RlOjpHZXRDb2RpbmdGcmFt
ZU51bSgpIGNvbnN0IHsKLSAgYXNzZXJ0KGltcGxfcHRyXy0+Zmlyc3RfcGFzc19zdGF0cy5zaXpl
KCkgLSAxID4gMCk7CisgIGFzc2VydChpbXBsX3B0cl8tPmZpcnN0X3Bhc3Nfc3RhdHMuc2l6ZSgp
ID4gMCk7CisgIGlmIChnb3BfbWFwXy5zaXplKCkgPiAwKSB7CisgICAgcmV0dXJuIEdldENvZGlu
Z0ZyYW1lTnVtRnJvbUdvcE1hcChnb3BfbWFwXyk7CisgIH0KKwogICAvLyBUaGVzZSBhcmUgdGhl
IGRlZmF1bHQgc2V0dGluZ3MgZm9yIG5vdy4KICAgY29uc3QgaW50IG11bHRpX2xheWVyX2FyZiA9
IDA7CiAgIGNvbnN0IGludCBhbGxvd19hbHRfcmVmID0gMTsKICAgdnB4X3JhdGlvbmFsX3QgZnJh
bWVfcmF0ZSA9CiAgICAgICBtYWtlX3ZweF9yYXRpb25hbChmcmFtZV9yYXRlX251bV8sIGZyYW1l
X3JhdGVfZGVuXyk7Ci0gIGNvbnN0IFZQOUVuY29kZXJDb25maWcgb3hjZiA9Ci0gICAgICB2cDlf
Z2V0X2VuY29kZXJfY29uZmlnKGZyYW1lX3dpZHRoXywgZnJhbWVfaGVpZ2h0XywgZnJhbWVfcmF0
ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2JpdHJhdGVfLCBWUFhfUkNf
TEFTVF9QQVNTKTsKKyAgY29uc3QgVlA5RW5jb2RlckNvbmZpZyBveGNmID0gR2V0RW5jb2RlQ29u
ZmlnKAorICAgICAgZnJhbWVfd2lkdGhfLCBmcmFtZV9oZWlnaHRfLCBmcmFtZV9yYXRlLCB0YXJn
ZXRfYml0cmF0ZV8sIGVuY29kZV9zcGVlZF8sCisgICAgICBWUFhfUkNfTEFTVF9QQVNTLCBpbXBs
X3B0cl8tPmVuY29kZV9jb25maWdfbGlzdCk7CiAgIEZSQU1FX0lORk8gZnJhbWVfaW5mbyA9IHZw
OV9nZXRfZnJhbWVfaW5mbygmb3hjZik7CiAgIEZJUlNUX1BBU1NfSU5GTyBmaXJzdF9wYXNzX2lu
Zm87Ci0gIGZwc19pbml0X2ZpcnN0X3Bhc3NfaW5mbygmZmlyc3RfcGFzc19pbmZvLCBpbXBsX3B0
cl8tPmZpcnN0X3Bhc3Nfc3RhdHMuZGF0YSgpLAorICBmcHNfaW5pdF9maXJzdF9wYXNzX2luZm8o
JmZpcnN0X3Bhc3NfaW5mbywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIEdldFZlY3RvckRh
dGEoaW1wbF9wdHJfLT5maXJzdF9wYXNzX3N0YXRzKSwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIG51bV9mcmFtZXNfKTsKLSAgcmV0dXJuIHZwOV9nZXRfY29kaW5nX2ZyYW1lX251bShleHRl
cm5hbF9hcmZfaW5kZXhlc18uZGF0YSgpLCAmb3hjZiwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAmZnJhbWVfaW5mbywgJmZpcnN0X3Bhc3NfaW5mbywKKyAgcmV0dXJuIHZwOV9n
ZXRfY29kaW5nX2ZyYW1lX251bSgmb3hjZiwgJmZyYW1lX2luZm8sICZmaXJzdF9wYXNzX2luZm8s
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGlfbGF5ZXJfYXJmLCBhbGxv
d19hbHRfcmVmKTsKIH0KIAorc3RkOjp2ZWN0b3I8aW50PiBTaW1wbGVFbmNvZGU6OkNvbXB1dGVL
ZXlGcmFtZU1hcCgpIGNvbnN0IHsKKyAgLy8gVGhlIGxhc3QgZW50cnkgb2YgZmlyc3RfcGFzc19z
dGF0cyBpcyB0aGUgb3ZlcmFsbCBzdGF0cy4KKyAgYXNzZXJ0KGltcGxfcHRyXy0+Zmlyc3RfcGFz
c19zdGF0cy5zaXplKCkgPT0gbnVtX2ZyYW1lc18gKyAxKTsKKyAgdnB4X3JhdGlvbmFsX3QgZnJh
bWVfcmF0ZSA9CisgICAgICBtYWtlX3ZweF9yYXRpb25hbChmcmFtZV9yYXRlX251bV8sIGZyYW1l
X3JhdGVfZGVuXyk7CisgIGNvbnN0IFZQOUVuY29kZXJDb25maWcgb3hjZiA9IEdldEVuY29kZUNv
bmZpZygKKyAgICAgIGZyYW1lX3dpZHRoXywgZnJhbWVfaGVpZ2h0XywgZnJhbWVfcmF0ZSwgdGFy
Z2V0X2JpdHJhdGVfLCBlbmNvZGVfc3BlZWRfLAorICAgICAgVlBYX1JDX0xBU1RfUEFTUywgaW1w
bF9wdHJfLT5lbmNvZGVfY29uZmlnX2xpc3QpOworICBGUkFNRV9JTkZPIGZyYW1lX2luZm8gPSB2
cDlfZ2V0X2ZyYW1lX2luZm8oJm94Y2YpOworICBGSVJTVF9QQVNTX0lORk8gZmlyc3RfcGFzc19p
bmZvOworICBmcHNfaW5pdF9maXJzdF9wYXNzX2luZm8oJmZpcnN0X3Bhc3NfaW5mbywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEdldFZlY3RvckRhdGEoaW1wbF9wdHJfLT5maXJzdF9wYXNz
X3N0YXRzKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bV9mcmFtZXNfKTsKKyAgc3Rk
Ojp2ZWN0b3I8aW50PiBrZXlfZnJhbWVfbWFwKG51bV9mcmFtZXNfLCAwKTsKKyAgdnA5X2dldF9r
ZXlfZnJhbWVfbWFwKCZveGNmLCAmZnJhbWVfaW5mbywgJmZpcnN0X3Bhc3NfaW5mbywKKyAgICAg
ICAgICAgICAgICAgICAgICAgIEdldFZlY3RvckRhdGEoa2V5X2ZyYW1lX21hcCkpOworICByZXR1
cm4ga2V5X2ZyYW1lX21hcDsKK30KKworc3RkOjp2ZWN0b3I8aW50PiBTaW1wbGVFbmNvZGU6Ok9i
c2VydmVLZXlGcmFtZU1hcCgpIGNvbnN0IHsKKyAgcmV0dXJuIGtleV9mcmFtZV9tYXBfOworfQor
CiB1aW50NjRfdCBTaW1wbGVFbmNvZGU6OkdldEZyYW1lUGl4ZWxDb3VudCgpIGNvbnN0IHsKICAg
YXNzZXJ0KGZyYW1lX3dpZHRoXyAlIDIgPT0gMCk7CiAgIGFzc2VydChmcmFtZV9oZWlnaHRfICUg
MiA9PSAwKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3NpbXBsZV9lbmNvZGUuaCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L3NpbXBsZV9lbmNvZGUuaAppbmRleCA4MjFiYjkyOGYwMjA4OTdjOWU3MDE0
MjIzNjQwMzNkZGQzNzU5YjQwLi44ZWM3MDY5ZTgzNmFlMmIxMjY1NTJjNDBlODE3Y2ViODc0NDRl
NGUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS9zaW1wbGVfZW5jb2RlLmgKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cDkvc2ltcGxlX2VuY29kZS5oCkBAIC0xOSwxMyArMTksMTggQEAKIAogbmFtZXNw
YWNlIHZwOSB7CiAKK2VudW0gU3RhdHVzQ29kZSB7CisgIFN0YXR1c09rID0gMCwKKyAgU3RhdHVz
RXJyb3IsCit9OworCiAvLyBUT0RPKGFuZ2llYmlyZCk6IEFkZCBkZXNjcmlwdGlvbiBmb3IgZWFj
aCBmcmFtZSB0eXBlLgogZW51bSBGcmFtZVR5cGUgewogICBrRnJhbWVUeXBlS2V5ID0gMCwKLSAg
a0ZyYW1lVHlwZUludGVyLAotICBrRnJhbWVUeXBlQWx0UmVmLAotICBrRnJhbWVUeXBlT3Zlcmxh
eSwKLSAga0ZyYW1lVHlwZUdvbGRlbiwKKyAga0ZyYW1lVHlwZUludGVyID0gMSwKKyAga0ZyYW1l
VHlwZUFsdFJlZiA9IDIsCisgIGtGcmFtZVR5cGVPdmVybGF5ID0gMywKKyAga0ZyYW1lVHlwZUdv
bGRlbiA9IDQsCiB9OwogCiAvLyBUT0RPKGFuZ2llYmlyZCk6IEFkZCBkZXNjcmlwdGlvbiBmb3Ig
ZWFjaCByZWZlcmVuY2UgZnJhbWUgdHlwZS4KQEAgLTM5LDYgKzQ0LDE0IEBAIGVudW0gUmVmRnJh
bWVUeXBlIHsKICAga1JlZkZyYW1lVHlwZU5vbmUgPSAtMSwKIH07CiAKK2VudW0gR29wTWFwRmxh
ZyB7CisgIGtHb3BNYXBGbGFnU3RhcnQgPQorICAgICAgMSA8PCAwLCAgLy8gSW5kaWNhdGUgdGhp
cyBsb2NhdGlvbiBpcyB0aGUgc3RhcnQgb2YgYSBncm91cCBvZiBwaWN0dXJlcy4KKyAga0dvcE1h
cEZsYWdVc2VBbHRSZWYgPQorICAgICAgMSA8PCAxLCAgLy8gSW5kaWNhdGUgdGhpcyBncm91cCBv
ZiBwaWN0dXJlcyB3aWxsIHVzZSBhbiBhbHQgcmVmLiBPbmx5IHNldAorICAgICAgICAgICAgICAg
Ly8gdGhpcyBmbGFnIHdoZW4ga0dvcE1hcEZsYWdTdGFydCBpcyBzZXQuCit9OworCiAvLyBUaGUg
ZnJhbWUgaXMgc3BsaXQgdG8gNHg0IGJsb2Nrcy4KIC8vIFRoaXMgc3RydWN0dXJlIGNvbnRhaW5z
IHRoZSBpbmZvcm1hdGlvbiBvZiBlYWNoIDR4NCBibG9jay4KIHN0cnVjdCBQYXJ0aXRpb25JbmZv
IHsKQEAgLTUwLDkgKzYzLDEyIEBAIHN0cnVjdCBQYXJ0aXRpb25JbmZvIHsKICAgaW50IGhlaWdo
dDsgICAgICAgIC8vIHByZWRpY3Rpb24gYmxvY2sgaGVpZ2h0CiB9OwogCi1jb25zdGV4cHIgaW50
IGtNb3Rpb25WZWN0b3JQcmVjaXNpb24gPSA4OworY29uc3RleHByIGludCBrTW90aW9uVmVjdG9y
U3ViUGl4ZWxQcmVjaXNpb24gPSA4OworY29uc3RleHByIGludCBrTW90aW9uVmVjdG9yRnVsbFBp
eGVsUHJlY2lzaW9uID0gMTsKIAotLy8gVGhlIGZyYW1lIGlzIHNwbGl0IHRvIDR4NCBibG9ja3Mu
CisvLyBJbiB0aGUgZmlyc3QgcGFzcy4gVGhlIGZyYW1lIGlzIHNwbGl0IHRvIDE2eDE2IGJsb2Nr
cy4KKy8vIFRoaXMgc3RydWN0dXJlIGNvbnRhaW5zIHRoZSBpbmZvcm1hdGlvbiBvZiBlYWNoIDE2
eDE2IGJsb2NrLgorLy8gSW4gdGhlIHNlY29uZCBwYXNzLiBUaGUgZnJhbWUgaXMgc3BsaXQgdG8g
NHg0IGJsb2Nrcy4KIC8vIFRoaXMgc3RydWN0dXJlIGNvbnRhaW5zIHRoZSBpbmZvcm1hdGlvbiBv
ZiBlYWNoIDR4NCBibG9jay4KIHN0cnVjdCBNb3Rpb25WZWN0b3JJbmZvIHsKICAgLy8gTnVtYmVy
IG9mIHZhbGlkIG1vdGlvbiB2ZWN0b3JzLCBhbHdheXMgMCBpZiB0aGlzIGJsb2NrIGlzIGluIHRo
ZSBrZXkgZnJhbWUuCkBAIC02MCw4ICs3Niw4IEBAIHN0cnVjdCBNb3Rpb25WZWN0b3JJbmZvIHsK
ICAgaW50IG12X2NvdW50OwogICAvLyBUaGUgcmVmZXJlbmNlIGZyYW1lIGZvciBtb3Rpb24gdmVj
dG9ycy4gSWYgdGhlIHNlY29uZCBtb3Rpb24gdmVjdG9yIGRvZXMKICAgLy8gbm90IGV4aXN0ICht
dl9jb3VudCA9IDEpLCB0aGUgcmVmZXJlbmNlIGZyYW1lIGlzIGtOb25lUmVmRnJhbWUuCi0gIC8v
IE90aGVyd2lzZSwgdGhlIHJlZmVyZW5jZSBmcmFtZSBpcyBlaXRoZXIga0xhc3RGcmFtZSwgb3Ig
a0dvbGRlbkZyYW1lLAotICAvLyBvciBrQWx0UmVmRnJhbWUuCisgIC8vIE90aGVyd2lzZSwgdGhl
IHJlZmVyZW5jZSBmcmFtZSBpcyBlaXRoZXIga1JlZkZyYW1lVHlwZUxhc3QsIG9yCisgIC8vIGtS
ZWZGcmFtZVR5cGVQYXN0LCBvciBrUmVmRnJhbWVUeXBlRnV0dXJlLgogICBSZWZGcmFtZVR5cGUg
cmVmX2ZyYW1lWzJdOwogICAvLyBUaGUgcm93IG9mZnNldCBvZiBtb3Rpb24gdmVjdG9ycyBpbiB0
aGUgdW5pdCBvZiBwaXhlbC4KICAgLy8gSWYgdGhlIHNlY29uZCBtb3Rpb24gdmVjdG9yIGRvZXMg
bm90IGV4aXN0LCB0aGUgdmFsdWUgaXMgMC4KQEAgLTcxLDYgKzg3LDI0IEBAIHN0cnVjdCBNb3Rp
b25WZWN0b3JJbmZvIHsKICAgZG91YmxlIG12X2NvbHVtblsyXTsKIH07CiAKKy8vIEFjY3VtdWxh
dGVkIHRwbCBzdGF0cyBvZiBhbGwgYmxvY2tzIGluIG9uZSBmcmFtZS4KKy8vIEZvciBlYWNoIGZy
YW1lLCB0aGUgdHBsIHN0YXRzIGFyZSBjb21wdXRlZCBwZXIgMzJ4MzIgYmxvY2suCitzdHJ1Y3Qg
VHBsU3RhdHNJbmZvIHsKKyAgLy8gSW50cmEgY29tcGxleGl0eTogdGhlIHN1bSBvZiBhYnNvbHV0
ZSB0cmFuc2Zvcm0gZGlmZmVyZW5jZSAoU0FURCkgb2YKKyAgLy8gaW50cmEgcHJlZGljdGVkIHJl
c2lkdWFscy4KKyAgaW50NjRfdCBpbnRyYV9jb3N0OworICAvLyBJbnRlciBjb21wbGV4aXR5OiB0
aGUgU0FURCBvZiBpbnRlciBwcmVkaWN0ZWQgcmVzaWR1YWxzLgorICBpbnQ2NF90IGludGVyX2Nv
c3Q7CisgIC8vIE1vdGlvbiBjb21wZW5zYXRlZCBpbmZvcm1hdGlvbiBmbG93LiBJdCBtZWFzdXJl
cyBob3cgbXVjaCBpbmZvcm1hdGlvbgorICAvLyBpcyBwcm9wYWdhdGVkIGZyb20gdGhlIGN1cnJl
bnQgZnJhbWUgdG8gb3RoZXIgZnJhbWVzLgorICBpbnQ2NF90IG1jX2Zsb3c7CisgIC8vIE1vdGlv
biBjb21wZW5zYXRlZCBkZXBlbmRlbmN5IGNvc3QuIEl0IGVxdWFscyB0byBpdHMgb3duIGludHJh
X2Nvc3QKKyAgLy8gcGx1cyB0aGUgbWNfZmxvdy4KKyAgaW50NjRfdCBtY19kZXBfY29zdDsKKyAg
Ly8gTW90aW9uIGNvbXBlbnNhdGVkIHJlZmVyZW5jZSBjb3N0LgorICBpbnQ2NF90IG1jX3JlZl9j
b3N0OworfTsKKwogc3RydWN0IFJlZkZyYW1lSW5mbyB7CiAgIGludCBjb2RpbmdfaW5kZXhlc1tr
UmVmRnJhbWVUeXBlTWF4XTsKIApAQCAtODMsOSArMTE3LDEyIEBAIHN0cnVjdCBSZWZGcmFtZUlu
Zm8gewogICAvLyBrUmVmRnJhbWVUeXBlTGFzdCA+IGtSZWZGcmFtZVR5cGVQYXN0ID4ga1JlZkZy
YW1lVHlwZUZ1dHVyZS4KICAgLy8gRm9yIGV4YW1wbGUsIGlmIGtSZWZGcmFtZVR5cGVMYXN0IGFu
ZCBrUmVmRnJhbWVUeXBlUGFzdCBib3RoIHBvaW50IHRvIHRoZQogICAvLyBzYW1lIGZyYW1lLCBr
UmVmRnJhbWVUeXBlUGFzdCB3aWxsIGJlIHNldCB0byBpbnZhbGlkLgorICAvLyAxOiB0aGUgcmVm
IGZyYW1lIHR5cGUgaXMgYXZhaWxhYmxlIDA6IHRoZSByZWYgZnJhbWUgdHlwZSBpcyBub3QgYXZh
aWxhYmxlCiAgIGludCB2YWxpZF9saXN0W2tSZWZGcmFtZVR5cGVNYXhdOwogfTsKIAorYm9vbCBv
cGVyYXRvcj09KGNvbnN0IFJlZkZyYW1lSW5mbyAmYSwgY29uc3QgUmVmRnJhbWVJbmZvICZiKTsK
Kwogc3RydWN0IEVuY29kZUZyYW1lSW5mbyB7CiAgIGludCBzaG93X2lkeDsKIApAQCAtMTk5LDYg
KzIzNiw4IEBAIHZvaWQgb3V0cHV0X2ltYWdlX2J1ZmZlcihjb25zdCBJbWFnZUJ1ZmZlciAmaW1h
Z2VfYnVmZmVyLCBzdGQ6OkZJTEUgKm91dF9maWxlKTsKIHN0cnVjdCBFbmNvZGVGcmFtZVJlc3Vs
dCB7CiAgIGludCBzaG93X2lkeDsKICAgRnJhbWVUeXBlIGZyYW1lX3R5cGU7CisgIGludCBjb2Rp
bmdfaWR4OworICBSZWZGcmFtZUluZm8gcmVmX2ZyYW1lX2luZm87CiAgIHNpemVfdCBjb2Rpbmdf
ZGF0YV9iaXRfc2l6ZTsKICAgc2l6ZV90IGNvZGluZ19kYXRhX2J5dGVfc2l6ZTsKICAgLy8gVGhl
IEVuY29kZUZyYW1lIHdpbGwgYWxsb2NhdGUgYSBidWZmZXIsIHdyaXRlIHRoZSBjb2RpbmcgZGF0
YSBpbnRvIHRoZQpAQCAtMjMyLDcgKzI3MSw3IEBAIHN0cnVjdCBFbmNvZGVGcmFtZVJlc3VsdCB7
CiAgIHN0ZDo6dmVjdG9yPFBhcnRpdGlvbkluZm8+IHBhcnRpdGlvbl9pbmZvOwogICAvLyBBIHZl
Y3RvciBvZiB0aGUgbW90aW9uIHZlY3RvciBpbmZvcm1hdGlvbiBvZiB0aGUgZnJhbWUuCiAgIC8v
IFRoZSBudW1iZXIgb2YgZWxlbWVudHMgaXMgfG51bV9yb3dzXzR4NHwgKiB8bnVtX2NvbHNfNHg0
fC4KLSAgLy8gVGhlIGZyYW1lIGlzIGRpdmlkZWQgNHg0IGJsb2NrcyBvZiB8bnVtX3Jvd3NfNHg0
fCByb3dzIGFuZAorICAvLyBUaGUgZnJhbWUgaXMgZGl2aWRlZCBpbnRvIDR4NCBibG9ja3Mgb2Yg
fG51bV9yb3dzXzR4NHwgcm93cyBhbmQKICAgLy8gfG51bV9jb2xzXzR4NHwgY29sdW1ucy4KICAg
Ly8gRWFjaCA0eDQgYmxvY2sgY29udGFpbnMgMCBtb3Rpb24gdmVjdG9yIGlmIHRoaXMgaXMgYW4g
aW50cmEgcHJlZGljdGVkCiAgIC8vIGZyYW1lIChmb3IgZXhhbXBsZSwgdGhlIGtleSBmcmFtZSku
IElmIHRoZSBmcmFtZSBpcyBpbnRlciBwcmVkaWN0ZWQsCkBAIC0yNDAsNyArMjc5LDI1IEBAIHN0
cnVjdCBFbmNvZGVGcmFtZVJlc3VsdCB7CiAgIC8vIFNpbWlsYXIgdG8gcGFydGl0aW9uIGluZm8s
IGFsbCA0eDQgYmxvY2tzIGluc2lkZSB0aGUgc2FtZSBwYXJ0aXRpb24gYmxvY2sKICAgLy8gc2hh
cmUgdGhlIHNhbWUgbW90aW9uIHZlY3RvciBpbmZvcm1hdGlvbi4KICAgc3RkOjp2ZWN0b3I8TW90
aW9uVmVjdG9ySW5mbz4gbW90aW9uX3ZlY3Rvcl9pbmZvOworICAvLyBBIHZlY3RvciBvZiB0aGUg
dHBsIHN0YXRzIGluZm9ybWF0aW9uLgorICAvLyBUaGUgdHBsIHN0YXRzIG1lYXN1cmUgdGhlIGNv
bXBsZXhpdHkgb2YgYSBmcmFtZSwgYXMgd2VsbCBhcyB0aGUKKyAgLy8gaW5mb3JtYXRpb24gcHJv
cGFnYXRlZCBhbG9uZyB0aGUgbW90aW9uIHRyYWplY3RvcnkgYmV0d2VlbiBmcmFtZXMsIGluCisg
IC8vIHRoZSByZWZlcmVuY2UgZnJhbWUgc3RydWN0dXJlLgorICAvLyBUaGUgdHBsIHN0YXRzIGNv
dWxkIGJlIHVzZWQgYXMgYSBtb3JlIGFjY3VyYXRlIHNwYXRpYWwgYW5kIHRlbXBvcmFsCisgIC8v
IGNvbXBsZXhpdHkgbWVhc3VyZSBpbiBhZGRpdGlvbiB0byB0aGUgZmlyc3QgcGFzcyBzdGF0cy4K
KyAgLy8gVGhlIHZlY3RvciBjb250YWlucyB0cGwgc3RhdHMgZm9yIGFsbCBzaG93IGZyYW1lcyBp
biBhIEdPUC4KKyAgLy8gVGhlIHRwbCBzdGF0cyBzdG9yZWQgaW4gdGhlIHZlY3RvciBpcyBhY2Nv
cmRpbmcgdG8gdGhlIGVuY29kaW5nIG9yZGVyLgorICAvLyBGb3IgZXhhbXBsZSwgc3VwcG9zZSB0
aGVyZSBhcmUgTiBzaG93IGZyYW1lcyBmb3IgdGhlIGN1cnJlbnQgR09QLgorICAvLyBUaGVuIHRw
bF9zdGF0c19pbmZvWzBdIHN0b3JlcyB0aGUgaW5mb3JtYXRpb24gb2YgdGhlIGZpcnN0IGZyYW1l
IHRvIGJlCisgIC8vIGVuY29kZWQgZm9yIHRoaXMgR09QLCBpLmUsIHRoZSBBbHRSZWYgZnJhbWUu
CisgIHN0ZDo6dmVjdG9yPFRwbFN0YXRzSW5mbz4gdHBsX3N0YXRzX2luZm87CiAgIEltYWdlQnVm
ZmVyIGNvZGVkX2ZyYW1lOworCisgIC8vIHJlY29kZV9jb3VudCwgcV9pbmRleF9oaXN0b3J5IGFu
ZCByYXRlX2hpc3RvcnkgYXJlIG9ubHkgYXZhaWxhYmxlIHdoZW4KKyAgLy8gRW5jb2RlRnJhbWVX
aXRoVGFyZ2V0RnJhbWVCaXRzKCkgaXMgdXNlZC4KKyAgaW50IHJlY29kZV9jb3VudDsKKyAgc3Rk
Ojp2ZWN0b3I8aW50PiBxX2luZGV4X2hpc3Rvcnk7CisgIHN0ZDo6dmVjdG9yPGludD4gcmF0ZV9o
aXN0b3J5OwogfTsKIAogc3RydWN0IEdyb3VwT2ZQaWN0dXJlIHsKQEAgLTI1MCw2ICszMDcsNyBA
QCBzdHJ1Y3QgR3JvdXBPZlBpY3R1cmUgewogICAvLyB0cmlnZ2VyZWQgd2hlbiB0aGUgY29kZWQg
ZnJhbWUgaXMgdGhlIGxhc3Qgb25lIGluIHRoZSBwcmV2aW91cyBncm91cCBvZgogICAvLyBwaWN0
dXJlcy4KICAgc3RkOjp2ZWN0b3I8RW5jb2RlRnJhbWVJbmZvPiBlbmNvZGVfZnJhbWVfbGlzdDsK
KwogICAvLyBJbmRpY2F0ZXMgdGhlIGluZGV4IG9mIHRoZSBuZXh0IGNvZGluZyBmcmFtZSBpbiBl
bmNvZGVfZnJhbWVfbGlzdC4KICAgLy8gSW4gb3RoZXIgd29yZHMsIEVuY29kZUZyYW1lSW5mbyBv
ZiB0aGUgbmV4dCBjb2RpbmcgZnJhbWUgY2FuIGJlCiAgIC8vIG9idGFpbmVkIHdpdGggZW5jb2Rl
X2ZyYW1lX2xpc3RbbmV4dF9lbmNvZGVfZnJhbWVfaW5kZXhdLgpAQCAtMjU4LDEzICszMTYsMjUg
QEAgc3RydWN0IEdyb3VwT2ZQaWN0dXJlIHsKICAgLy8gd2lsbCBiZSBpbmNyZWFzZWQgYWZ0ZXIg
ZWFjaCBFbmNvZGVGcmFtZSgpL0VuY29kZUZyYW1lV2l0aFF1YW50aXplSW5kZXgoKQogICAvLyBj
YWxsLgogICBpbnQgbmV4dF9lbmNvZGVfZnJhbWVfaW5kZXg7CisKICAgLy8gTnVtYmVyIG9mIHNo
b3cgZnJhbWVzIGluIHRoaXMgZ3JvdXAgb2YgcGljdHVyZXMuCiAgIGludCBzaG93X2ZyYW1lX2Nv
dW50OworCiAgIC8vIFRoZSBzaG93IGluZGV4L3RpbWVzdGFtcCBvZiB0aGUgZWFybGllc3Qgc2hv
dyBmcmFtZSBpbiB0aGUgZ3JvdXAgb2YKICAgLy8gcGljdHVyZXMuCiAgIGludCBzdGFydF9zaG93
X2luZGV4OwotICAvLyBUaGUgY29kaW5nIGluZGV4IG9mIHRoZSBmaXJzdCBjb2RpbmcgZnJhbWUg
aW4gdGhlIGdyb3VwIG9mIHBpY3R1cmUuCisKKyAgLy8gVGhlIGNvZGluZyBpbmRleCBvZiB0aGUg
Zmlyc3QgY29kaW5nIGZyYW1lIGluIHRoZSBncm91cCBvZiBwaWN0dXJlcy4KICAgaW50IHN0YXJ0
X2NvZGluZ19pbmRleDsKKworICAvLyBJbmRpY2F0ZXMgd2hldGhlciB0aGlzIGdyb3VwIG9mIHBp
Y3R1cmVzIHN0YXJ0cyB3aXRoIGEga2V5IGZyYW1lLgorICBpbnQgZmlyc3RfaXNfa2V5X2ZyYW1l
OworCisgIC8vIEluZGljYXRlcyB3aGV0aGVyIHRoaXMgZ3JvdXAgb2YgcGljdHVyZXMgdXNlcyBh
biBhbHQgcmVmLgorICBpbnQgdXNlX2FsdF9yZWY7CisKKyAgLy8gSW5kaWNhdGVzIHdoZXRoZXIg
cHJldmlvdXMgZ3JvdXAgb2YgcGljdHVyZXMgdXNlZCBhbiBhbHQgcmVmLgorICBpbnQgbGFzdF9n
b3BfdXNlX2FsdF9yZWY7CiB9OwogCiBjbGFzcyBTaW1wbGVFbmNvZGUgewpAQCAtMjc4LDggKzM0
OCw1NSBAQCBjbGFzcyBTaW1wbGVFbmNvZGUgewogICBTaW1wbGVFbmNvZGUoU2ltcGxlRW5jb2Rl
ICYpID0gZGVsZXRlOwogICBTaW1wbGVFbmNvZGUgJm9wZXJhdG9yPShjb25zdCBTaW1wbGVFbmNv
ZGUgJikgPSBkZWxldGU7CiAKLSAgLy8gTWFrZXMgZW5jb2RlciBjb21wdXRlIHRoZSBmaXJzdCBw
YXNzIHN0YXRzIGFuZCBzdG9yZSBpdCBpbnRlcm5hbGx5IGZvcgotICAvLyBmdXR1cmUgZW5jb2Rl
LgorICAvLyBBZGp1c3RzIHRoZSBlbmNvZGVyJ3MgY29kaW5nIHNwZWVkLgorICAvLyBJZiB0aGlz
IGZ1bmN0aW9uIGlzIG5vdCBjYWxsZWQsIHRoZSBlbmNvZGVyIHdpbGwgdXNlIGRlZmF1bHQgZW5j
b2RlX3NwZWVkCisgIC8vIDAuIENhbGwgdGhpcyBmdW5jdGlvbiBiZWZvcmUgQ29tcHV0ZUZpcnN0
UGFzc1N0YXRzKCkgaWYgbmVlZGVkLgorICAvLyBUaGUgZW5jb2RlX3NwZWVkIGlzIGVxdWl2YWxl
bnQgdG8gLS1jcHUtdXNlZCBvZiB0aGUgdnB4ZW5jIGNvbW1hbmQuCisgIC8vIFRoZSBlbmNvZGVf
c3BlZWQncyByYW5nZSBzaG91bGQgYmUgWzAsIDldLgorICAvLyBTZXR0aW5nIHRoZSBlbmNvZGVf
c3BlZWQgdG8gYSBoaWdoZXIgbGV2ZWwgd2lsbCB5aWVsZCBmYXN0ZXIgY29kaW5nCisgIC8vIGF0
IHRoZSBjb3N0IG9mIGxvd2VyIGNvbXByZXNzaW9uIGVmZmljaWVuY3kuCisgIHZvaWQgU2V0RW5j
b2RlU3BlZWQoaW50IGVuY29kZV9zcGVlZCk7CisKKyAgLy8gU2V0IGVuY29kZXIgY29uZmlnCisg
IC8vIFRoZSBmb2xsb3dpbmcgY29uZmlncyBpbiBWUDlFbmNvZGVyQ29uZmlnIGFyZSBhbGxvd2Vk
IHRvIGNoYW5nZSBpbiB0aGlzCisgIC8vIGZ1bmN0aW9uLiBTZWUgaHR0cHM6Ly9mZm1wZWcub3Jn
L2ZmbXBlZy1jb2RlY3MuaHRtbCNsaWJ2cHggZm9yIGVhY2gKKyAgLy8gY29uZmlnJ3MgbWVhbmlu
Zy4KKyAgLy8gQ29uZmlncyBpbiBWUDlFbmNvZGVyQ29uZmlnOiAgICAgICAgICBFcXVpdmFsZW50
IGNvbmZpZ3MgaW4gZmZtcGVnOgorICAvLyAxICBrZXlfZnJlcSAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC1nCisgIC8vIDIgIHR3b19wYXNzX3Zicm1pbl9zZWN0aW9uICAgICAgICAgICAgLW1p
bnJhdGUgKiAxMDBMTCAvIGJpdF9yYXRlCisgIC8vIDMgIHR3b19wYXNzX3Zicm1heF9zZWN0aW9u
ICAgICAgICAgICAgLW1heHJhdGUgKiAxMDBMTCAvIGJpdF9yYXRlCisgIC8vIDQgIHVuZGVyX3No
b290X3BjdCAgICAgICAgICAgICAgICAgICAgLXVuZGVyc2hvb3QtcGN0CisgIC8vIDUgIG92ZXJf
c2hvb3RfcGN0ICAgICAgICAgICAgICAgICAgICAgLW92ZXJzaG9vdC1wY3QKKyAgLy8gNiAgbWF4
X3RocmVhZHMgICAgICAgICAgICAgICAgICAgICAgICAtdGhyZWFkcworICAvLyA3ICBmcmFtZV9w
YXJhbGxlbF9kZWNvZGluZ19tb2RlICAgICAgIC1mcmFtZS1wYXJhbGxlbAorICAvLyA4ICB0aWxl
X2NvbHVtbiAgICAgICAgICAgICAgICAgICAgICAgIC10aWxlLWNvbHVtbnMKKyAgLy8gOSAgYXJu
cl9tYXhfZnJhbWVzICAgICAgICAgICAgICAgICAgICAtYXJuci1tYXhmcmFtZXMKKyAgLy8gMTAg
YXJucl9zdHJlbmd0aCAgICAgICAgICAgICAgICAgICAgICAtYXJuci1zdHJlbmd0aAorICAvLyAx
MSBsYWdfaW5fZnJhbWVzICAgICAgICAgICAgICAgICAgICAgIC1yY19sb29rYWhlYWQKKyAgLy8g
MTIgZW5jb2RlX2JyZWFrb3V0ICAgICAgICAgICAgICAgICAgICAtc3RhdGljLXRocmVzaAorICAv
LyAxMyBlbmFibGVfdHBsX21vZGVsICAgICAgICAgICAgICAgICAgIC1lbmFibGUtdHBsCisgIC8v
IDE0IGVuYWJsZV9hdXRvX2FyZiAgICAgICAgICAgICAgICAgICAgLWF1dG8tYWx0LXJlZgorICAv
LyAxNSByY19tb2RlCisgIC8vICAgIFBvc3NpYmxlIFNldHRpbmdzOgorICAvLyAgICAgIDAgLSBW
YXJpYWJsZSBCaXQgUmF0ZSAoVlBYX1ZCUikgIC1iOnYgPGJpdF9yYXRlPgorICAvLyAgICAgIDEg
LSBDb25zdGFudCBCaXQgUmF0ZSAoVlBYX0NCUikgIC1iOnYgPGJpdF9yYXRlPiAtbWlucmF0ZSA8
Yml0X3JhdGU+CisgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC1t
YXhyYXRlIDxiaXRfcmF0ZT4KKyAgLy8gICAgICAgIHR3b19wYXNzX3Zicm1pbl9zZWN0aW9uID09
IDEwMCAgIGkuZS4gYml0X3JhdGUgPT0gbWlucmF0ZSA9PSBtYXhyYXRlCisgIC8vICAgICAgICB0
d29fcGFzc192YnJtYXhfc2VjdGlvbiA9PSAxMDAKKyAgLy8gICAgICAyIC0gQ29uc3RyYWluZWQg
UXVhbGl0eSAoVlBYX0NRKSAtY3JmIDxjcV9sZXZlbD4gLWI6diBiaXRfcmF0ZQorICAvLyAgICAg
IDMgLSBDb25zdGFudCBRdWFsaXR5IChWUFhfUSkgICAgIC1jcmYgPGNxX2xldmVsPiAtYjp2IDAK
KyAgLy8gICAgU2VlIGh0dHBzOi8vdHJhYy5mZm1wZWcub3JnL3dpa2kvRW5jb2RlL1ZQOSBmb3Ig
bW9yZSBkZXRhaWxzLgorICAvLyAxNiBjcV9sZXZlbCAgICAgICAgICAgICAgICAgICAgICAgICAg
c2VlIHJjX21vZGUgZm9yIGRldGFpbHMuCisgIFN0YXR1c0NvZGUgU2V0RW5jb2RlQ29uZmlnKGNv
bnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKnZhbHVlKTsKKworICAvLyBBIGRlYnVnIGZ1bmN0
aW9uIHRoYXQgZHVtcHMgY29uZmlncyBmcm9tIFZQOUVuY29kZXJDb25maWcKKyAgLy8gcGFzcyA9
IDE6IGZpcnN0IHBhc3MsIHBhc3MgPSAyOiBzZWNvbmQgcGFzcworICAvLyBmcDogZmlsZSBwb2lu
dGVyIGZvciBkdW1waW5nIGNvbmZpZworICBTdGF0dXNDb2RlIER1bXBFbmNvZGVDb25maWdzKGlu
dCBwYXNzLCBGSUxFICpmcCk7CisKKyAgLy8gTWFrZXMgZW5jb2RlciBjb21wdXRlIHRoZSBmaXJz
dCBwYXNzIHN0YXRzIGFuZCBzdG9yZSBpdCBhdAorICAvLyBpbXBsX3B0cl8tPmZpcnN0X3Bhc3Nf
c3RhdHMuIGtleV9mcmFtZV9tYXBfIGlzIGFsc28gY29tcHV0ZWQgYmFzZWQgb24gdGhlCisgIC8v
IGZpcnN0IHBhc3Mgc3RhdHMuCiAgIHZvaWQgQ29tcHV0ZUZpcnN0UGFzc1N0YXRzKCk7CiAKICAg
Ly8gT3V0cHV0cyB0aGUgZmlyc3QgcGFzcyBzdGF0cyByZXByZXNlbnRlZCBieSBhIDItRCB2ZWN0
b3IuCkBAIC0yODgsMTMgKzQwNSwzOCBAQCBjbGFzcyBTaW1wbGVFbmNvZGUgewogICAvLyB2YWx1
ZXMuIEZvciBkZXRhaWxzLCBwbGVhc2UgY2hlY2sgRklSU1RQQVNTX1NUQVRTIGluIHZwOV9maXJz
dHBhc3MuaAogICBzdGQ6OnZlY3RvcjxzdGQ6OnZlY3Rvcjxkb3VibGU+PiBPYnNlcnZlRmlyc3RQ
YXNzU3RhdHMoKTsKIAotICAvLyBTZXRzIGFyZiBpbmRleGVzIGZvciB0aGUgdmlkZW8gZnJvbSBl
eHRlcm5hbCBpbnB1dC4KLSAgLy8gVGhlIGFyZiBpbmRleCBkZXRlcm1pbmVzIHdoZXRoZXIgYSBm
cmFtZSBpcyBhcmYgb3Igbm90LgotICAvLyBUaGVyZWZvcmUgaXQgYWxzbyBkZXRlcm1pbmVzIHRo
ZSBncm91cCBvZiBwaWN0dXJlIHNpemUuCi0gIC8vIElmIHNldCwgVlA5IHdpbGwgdXNlIHRoZSBl
eHRlcm5hbCBhcmYgaW5kZXggdG8gbWFrZSBkZWNpc2lvbi4KKyAgLy8gT3V0cHV0cyB0aGUgZmly
c3QgcGFzcyBtb3Rpb24gdmVjdG9ycyByZXByZXNlbnRlZCBieSBhIDItRCB2ZWN0b3IuCisgIC8v
IE9uZSBjYW4gdXNlIHRoZSBmcmFtZSBpbmRleCBhdCBmaXJzdCBkaW1lbnNpb24gdG8gcmV0cmll
dmUgdGhlIG12cyBmb3IKKyAgLy8gZWFjaCB2aWRlbyBmcmFtZS4gVGhlIGZyYW1lIGlzIGRpdmlk
ZWQgaW50byAxNngxNiBibG9ja3MuIFRoZSBudW1iZXIgb2YKKyAgLy8gZWxlbWVudHMgaXMgcm91
bmRfdXAofG51bV9yb3dzXzR4NHwgLyA0KSAqIHJvdW5kX3VwKHxudW1fY29sc180eDR8IC8gNCku
CisgIHN0ZDo6dmVjdG9yPHN0ZDo6dmVjdG9yPE1vdGlvblZlY3RvckluZm8+PiBPYnNlcnZlRmly
c3RQYXNzTW90aW9uVmVjdG9ycygpOworCisgIC8vIE91cHV0cyBhIGNvcHkgb2Yga2V5X2ZyYW1l
X21hcF8sIGEgYmluYXJ5IHZlY3RvciB3aXRoIHNpemUgZXF1YWwgdG8gdGhlCisgIC8vIG51bWJl
ciBvZiBzaG93IGZyYW1lcyBpbiB0aGUgdmlkZW8uIEZvciBlYWNoIGVudHJ5IGluIHRoZSB2ZWN0
b3IsIDEKKyAgLy8gaW5kaWNhdGVzIHRoZSBwb3NpdGlvbiBpcyBhIGtleSBmcmFtZSBhbmQgMCBp
bmRpY2F0ZXMgaXQncyBub3QgYSBrZXkgZnJhbWUuCisgIC8vIFRoaXMgZnVuY3Rpb24gc2hvdWxk
IGJlIGNhbGxlZCBhZnRlciBDb21wdXRlRmlyc3RQYXNzU3RhdHMoKQorICBzdGQ6OnZlY3Rvcjxp
bnQ+IE9ic2VydmVLZXlGcmFtZU1hcCgpIGNvbnN0OworCisgIC8vIFNldHMgZ3JvdXAgb2YgcGlj
dHVyZXMgbWFwIGZvciBjb2RpbmcgdGhlIGVudGlyZSB2aWRlby4KKyAgLy8gRWFjaCBlbnRyeSBp
biB0aGUgZ29wX21hcCBjb3JyZXNwb25kcyB0byBhIHNob3cgZnJhbWUgaW4gdGhlIHZpZGVvLgor
ICAvLyBUaGVyZWZvcmUsIHRoZSBzaXplIG9mIGdvcF9tYXAgc2hvdWxkIGVxdWFsIHRvIHRoZSBu
dW1iZXIgb2Ygc2hvdyBmcmFtZXMgaW4KKyAgLy8gdGhlIGVudGlyZSB2aWRlby4KKyAgLy8gSWYg
YSBnaXZlbiBlbnRyeSdzIGtHb3BNYXBGbGFnU3RhcnQgaXMgc2V0LCBpdCBtZWFucyB0aGlzIGlz
IHRoZSBzdGFydCBvZiBhCisgIC8vIGdvcC4gT25jZSBrR29wTWFwRmxhZ1N0YXJ0IGlzIHNldCwg
b25lIGNhbiBzZXQga0dvcE1hcEZsYWdVc2VBbHRSZWYgdG8KKyAgLy8gaW5kaWNhdGUgd2hldGhl
ciB0aGlzIGdvcCB1c2UgYWx0cmVmLgorICAvLyBJZiBhIGdpdmVuIGVudHJ5IGlzIHplcm8sIGl0
IG1lYW5zIGl0J3MgaW4gdGhlIG1pZGRsZSBvZiBhIGdvcC4KICAgLy8gVGhpcyBmdW5jdGlvbiBz
aG91bGQgYmUgY2FsbGVkIG9ubHkgb25jZSBhZnRlciBDb21wdXRlRmlyc3RQYXNzU3RhdHMoKSwK
LSAgLy8gYmVmb3JlIFN0YXJ0RW5jZGUoKS4KLSAgdm9pZCBTZXRFeHRlcm5hbEdyb3VwT2ZQaWN0
dXJlKHN0ZDo6dmVjdG9yPGludD4gZXh0ZXJuYWxfYXJmX2luZGV4ZXMpOworICAvLyBiZWZvcmUg
U3RhcnRFbmNvZGUoKS4KKyAgLy8gVGhpcyBBUEkgd2lsbCBjaGVjayBhbmQgbW9kaWZ5IHRoZSBn
b3BfbWFwIHRvIHNhdGlzZnkgdGhlIGZvbGxvd2luZworICAvLyBjb25zdHJhaW50cy4KKyAgLy8g
MSkgRWFjaCBrZXkgZnJhbWUgcG9zaXRpb24gc2hvdWxkIGJlIGF0IHRoZSBzdGFydCBvZiBhIGdv
cC4KKyAgLy8gMikgVGhlIGxhc3QgZ29wIHNob3VsZCBub3QgdXNlIGFuIGFsdCByZWYuCisgIHZv
aWQgU2V0RXh0ZXJuYWxHcm91cE9mUGljdHVyZXNNYXAoaW50ICpnb3BfbWFwLCBpbnQgZ29wX21h
cF9zaXplKTsKKworICAvLyBPYnNlcnZlIHRoZSBncm91cCBvZiBwaWN0dXJlcyBtYXAgc2V0IHRo
cm91Z2gKKyAgLy8gU2V0RXh0ZXJuYWxHcm91cE9mUGljdHVyZXNNYXAoKS4gVGhpcyBmdW5jdGlv
biBzaG91bGQgYmUgY2FsbGVkIGFmdGVyCisgIC8vIFNldEV4dGVybmFsR3JvdXBPZlBpY3R1cmVz
TWFwKCkuCisgIHN0ZDo6dmVjdG9yPGludD4gT2JzZXJ2ZUV4dGVybmFsR3JvdXBPZlBpY3R1cmVz
TWFwKCk7CiAKICAgLy8gSW5pdGlhbGl6ZXMgdGhlIGVuY29kZXIgZm9yIGFjdHVhbCBlbmNvZGlu
Zy4KICAgLy8gVGhpcyBmdW5jdGlvbiBzaG91bGQgYmUgY2FsbGVkIGFmdGVyIENvbXB1dGVGaXJz
dFBhc3NTdGF0cygpLgpAQCAtMzA0LDEyICs0NDYsMTEgQEAgY2xhc3MgU2ltcGxlRW5jb2RlIHsK
ICAgLy8gVGhpcyBmdW5jdGlvbiBzaG91bGQgYmUgY2FsbGVkIGFmdGVyIFN0YXJ0RW5jb2RlKCkg
b3IgRW5jb2RlRnJhbWUoKS4KICAgdm9pZCBFbmRFbmNvZGUoKTsKIAotICAvLyBHaXZlbiBhIGtl
eV9mcmFtZV9pbmRleCwgY29tcHV0ZXMgdGhpcyBrZXkgZnJhbWUgZ3JvdXAncyBzaXplLgogICAv
LyBUaGUga2V5IGZyYW1lIGdyb3VwIHNpemUgaW5jbHVkZXMgb25lIGtleSBmcmFtZSBwbHVzIHRo
ZSBudW1iZXIgb2YKICAgLy8gZm9sbG93aW5nIGludGVyIGZyYW1lcy4gTm90ZSB0aGF0IHRoZSBr
ZXkgZnJhbWUgZ3JvdXAgc2l6ZSBvbmx5IGNvdW50cyB0aGUKICAgLy8gc2hvdyBmcmFtZXMuIFRo
ZSBudW1iZXIgb2Ygbm8gc2hvdyBmcmFtZXMgbGlrZSBhbHRlcm5hdGUgcmVmZXJlY2VzIGFyZSBu
b3QKICAgLy8gY291bnRlZC4KLSAgaW50IEdldEtleUZyYW1lR3JvdXBTaXplKGludCBrZXlfZnJh
bWVfaW5kZXgpIGNvbnN0OworICBpbnQgR2V0S2V5RnJhbWVHcm91cFNpemUoKSBjb25zdDsKIAog
ICAvLyBQcm92aWRlcyB0aGUgZ3JvdXAgb2YgcGljdHVyZXMgdGhhdCB0aGUgbmV4dCBjb2Rpbmcg
ZnJhbWUgaXMgaW4uCiAgIC8vIE9ubHkgY2FsbCB0aGlzIGZ1bmN0aW9uIGJldHdlZW4gU3RhcnRF
bmNvZGUoKSBhbmQgRW5kRW5jb2RlKCkKQEAgLTMyOCw2ICs0NjksMTcgQEAgY2xhc3MgU2ltcGxl
RW5jb2RlIHsKICAgdm9pZCBFbmNvZGVGcmFtZVdpdGhRdWFudGl6ZUluZGV4KEVuY29kZUZyYW1l
UmVzdWx0ICplbmNvZGVfZnJhbWVfcmVzdWx0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaW50IHF1YW50aXplX2luZGV4KTsKIAorICAvLyBFbmNvZGUgYSBmcmFtZSB3aXRo
IHRhcmdldCBmcmFtZSBiaXRzIHVzYWdlLgorICAvLyBUaGUgZW5jb2RlciB3aWxsIGZpbmQgYSBx
dWFudGl6ZSBpbmRleCB0byBtYWtlIHRoZSBhY3R1YWwgZnJhbWUgYml0cyB1c2FnZQorICAvLyBt
YXRjaCB0aGUgdGFyZ2V0LiBFbmNvZGVGcmFtZVdpdGhUYXJnZXRGcmFtZUJpdHMoKSB3aWxsIHJl
Y29kZSB0aGUgZnJhbWUKKyAgLy8gdXAgdG8gNyB0aW1lcyB0byBmaW5kIGEgcV9pbmRleCB0byBt
YWtlIHRoZSBhY3R1YWxfZnJhbWVfYml0cyBzYXRpc2Z5IHRoZQorICAvLyBmb2xsb3dpbmcgaW5l
cXVhbGl0eS4gfGFjdHVhbF9mcmFtZV9iaXRzIC0gdGFyZ2V0X2ZyYW1lX2JpdHN8ICogMTAwIC8K
KyAgLy8gdGFyZ2V0X2ZyYW1lX2JpdHMKKyAgLy8gPD0gcGVyY2VudF9kaWZmLgorICB2b2lkIEVu
Y29kZUZyYW1lV2l0aFRhcmdldEZyYW1lQml0cyhFbmNvZGVGcmFtZVJlc3VsdCAqZW5jb2RlX2Zy
YW1lX3Jlc3VsdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHRh
cmdldF9mcmFtZV9iaXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBk
b3VibGUgcGVyY2VudF9kaWZmKTsKKwogICAvLyBHZXRzIHRoZSBudW1iZXIgb2YgY29kaW5nIGZy
YW1lcyBmb3IgdGhlIHZpZGVvLiBUaGUgY29kaW5nIGZyYW1lcyBpbmNsdWRlCiAgIC8vIHNob3cg
ZnJhbWUgYW5kIG5vIHNob3cgZnJhbWUuCiAgIC8vIFRoaXMgZnVuY3Rpb24gc2hvdWxkIGJlIGNh
bGxlZCBhZnRlciBDb21wdXRlRmlyc3RQYXNzU3RhdHMoKS4KQEAgLTMzNyw2ICs0ODksMjEgQEAg
Y2xhc3MgU2ltcGxlRW5jb2RlIHsKICAgdWludDY0X3QgR2V0RnJhbWVQaXhlbENvdW50KCkgY29u
c3Q7CiAKICBwcml2YXRlOgorICAvLyBDb21wdXRlIHRoZSBrZXkgZnJhbWUgbG9jYXRpb25zIG9m
IHRoZSB2aWRlbyBiYXNlZCBvbiBmaXJzdCBwYXNzIHN0YXRzLgorICAvLyBUaGUgcmVzdWx0cyBh
cmUgcmV0dXJuZWQgYXMgYSBiaW5hcnkgdmVjdG9yIHdpdGggMXMgaW5kaWNhdGluZyBrZXlmcmFt
ZXMKKyAgLy8gYW5kIDBzIGluZGljYXRpbmcgbm9uIGtleWZyYW1lcy4KKyAgLy8gSXQgaGFzIHRv
IGJlIGNhbGxlZCBhZnRlciBpbXBsX3B0cl8tPmZpcnN0X3Bhc3Nfc3RhdHMgaXMgY29tcHV0ZWQu
CisgIHN0ZDo6dmVjdG9yPGludD4gQ29tcHV0ZUtleUZyYW1lTWFwKCkgY29uc3Q7CisKKyAgLy8g
VXBkYXRlcyBrZXlfZnJhbWVfZ3JvdXBfc2l6ZV8sIHJlc2V0IGtleV9mcmFtZV9ncm91cF9pbmRl
eF8gYW5kIGluaXQKKyAgLy8gcmVmX2ZyYW1lX2luZm9fLgorICB2b2lkIFVwZGF0ZUtleUZyYW1l
R3JvdXAoaW50IGtleV9mcmFtZV9zaG93X2luZGV4KTsKKworICAvLyBVcGRhdGUga2V5X2ZyYW1l
X2dyb3VwX2luZGV4Xy4KKyAgdm9pZCBQb3N0VXBkYXRlS2V5RnJhbWVHcm91cEluZGV4KEZyYW1l
VHlwZSBmcmFtZV90eXBlKTsKKworICB2b2lkIFBvc3RVcGRhdGVTdGF0ZShjb25zdCBFbmNvZGVG
cmFtZVJlc3VsdCAmZW5jb2RlX2ZyYW1lX3Jlc3VsdCk7CisKICAgY2xhc3MgRW5jb2RlSW1wbDsK
IAogICBpbnQgZnJhbWVfd2lkdGhfOyAgIC8vIGZyYW1lIHdpZHRoIGluIHBpeGVscy4KQEAgLTM0
NSwyNSArNTEyLDQ4IEBAIGNsYXNzIFNpbXBsZUVuY29kZSB7CiAgIGludCBmcmFtZV9yYXRlX2Rl
bl87CiAgIGludCB0YXJnZXRfYml0cmF0ZV87CiAgIGludCBudW1fZnJhbWVzXzsKKyAgaW50IGVu
Y29kZV9zcGVlZF87CiAKICAgc3RkOjpGSUxFICppbl9maWxlXzsKICAgc3RkOjpGSUxFICpvdXRf
ZmlsZV87CiAgIHN0ZDo6dW5pcXVlX3B0cjxFbmNvZGVJbXBsPiBpbXBsX3B0cl87CiAKLSAgc3Rk
Ojp2ZWN0b3I8aW50PiBleHRlcm5hbF9hcmZfaW5kZXhlc187CisgIHN0ZDo6dmVjdG9yPGludD4g
a2V5X2ZyYW1lX21hcF87CisgIHN0ZDo6dmVjdG9yPGludD4gZ29wX21hcF87CiAgIEdyb3VwT2ZQ
aWN0dXJlIGdyb3VwX29mX3BpY3R1cmVfOwogCisgIC8vIFRoZSBrZXkgZnJhbWUgZ3JvdXAgc2l6
ZSBpbmNsdWRlcyBvbmUga2V5IGZyYW1lIHBsdXMgdGhlIG51bWJlciBvZgorICAvLyBmb2xsb3dp
bmcgaW50ZXIgZnJhbWVzLiBOb3RlIHRoYXQgdGhlIGtleSBmcmFtZSBncm91cCBzaXplIG9ubHkg
Y291bnRzIHRoZQorICAvLyBzaG93IGZyYW1lcy4gVGhlIG51bWJlciBvZiBubyBzaG93IGZyYW1l
cyBsaWtlIGFsdGVybmF0ZSByZWZlcmVuY2VzIGFyZSBub3QKKyAgLy8gY291bnRlZC4KKyAgaW50
IGtleV9mcmFtZV9ncm91cF9zaXplXzsKKworICAvLyBUaGUgaW5kZXggZm9yIHRoZSB0by1iZS1j
b2RlZCBzaG93IGZyYW1lIGluIHRoZSBrZXkgZnJhbWUgZ3JvdXAuCisgIGludCBrZXlfZnJhbWVf
Z3JvdXBfaW5kZXhfOworCiAgIC8vIEVhY2ggc2hvdyBvciBubyBzaG93IGZyYW1lIGlzIGFzc2ln
bmVkIHdpdGggYSBjb2RpbmcgaW5kZXggYmFzZWQgb24gaXRzCiAgIC8vIGNvZGluZyBvcmRlciAo
c3RhcnRpbmcgZnJvbSB6ZXJvKSBpbiB0aGUgY29kaW5nIHByb2Nlc3Mgb2YgdGhlIGVudGlyZQog
ICAvLyB2aWRlby4gVGhlIGNvZGluZyBpbmRleCBvZiB0aGUgdG8tYmUtY29kZWQgZnJhbWUuCiAg
IGludCBmcmFtZV9jb2RpbmdfaW5kZXhfOwogCisgIC8vIE51bWJlciBvZiBzaG93IGZyYW1lcyB3
ZSBoYXZlIGNvZGVkIHNvIGZhci4KKyAgaW50IHNob3dfZnJhbWVfY291bnRfOworCiAgIC8vIFRP
RE8oYW5naWViaXJkKTogRG8gd2UgbmVlZCB0byByZXNldCByZWZfZnJhbWVzX2luZm9fIHdoZW4g
dGhlIG5leHQga2V5CiAgIC8vIGZyYW1lIGFwcGVhcnM/CiAgIC8vIFJlZmVyZW5jZSBmcmFtZXMg
aW5mbyBvZiB0aGUgdG8tYmUtY29kZWQgZnJhbWUuCiAgIFJlZkZyYW1lSW5mbyByZWZfZnJhbWVf
aW5mb187CiAKLSAgdm9pZCBQb3N0VXBkYXRlU3RhdGUoY29uc3QgRW5jb2RlRnJhbWVSZXN1bHQg
JmVuY29kZV9mcmFtZV9yZXN1bHQpOworICAvLyBBIDItRCB2ZWN0b3Igb2YgbW90aW9uIHZlY3Rv
ciBpbmZvcm1hdGlvbiBvZiB0aGUgZnJhbWUgY29sbGVjdGVkCisgIC8vIGZyb20gdGhlIGZpcnN0
IHBhc3MuIFRoZSBmaXJzdCBkaW1lbnNpb24gaXMgdGhlIGZyYW1lIGluZGV4LgorICAvLyBFYWNo
IGZyYW1lIGlzIGRpdmlkZWQgaW50byAxNngxNiBibG9ja3MuIFRoZSBudW1iZXIgb2YgZWxlbWVu
dHMgaXMKKyAgLy8gcm91bmRfdXAofG51bV9yb3dzXzR4NHwgLyA0KSAqIHJvdW5kX3VwKHxudW1f
Y29sc180eDR8IC8gNCkuCisgIC8vIEVhY2ggMTZ4MTYgYmxvY2sgY29udGFpbnMgMCBtb3Rpb24g
dmVjdG9yIGlmIHRoaXMgaXMgYW4gaW50cmEgcHJlZGljdGVkCisgIC8vIGZyYW1lIChmb3IgZXhh
bXBsZSwgdGhlIGtleSBmcmFtZSkuIElmIHRoZSBmcmFtZSBpcyBpbnRlciBwcmVkaWN0ZWQsCisg
IC8vIGVhY2ggMTZ4MTYgYmxvY2sgY29udGFpbnMgZWl0aGVyIDEgb3IgMiBtb3Rpb24gdmVjdG9y
cy4KKyAgLy8gVGhlIGZpcnN0IG1vdGlvbiB2ZWN0b3IgaXMgYWx3YXlzIGZyb20gdGhlIExBU1Rf
RlJBTUUuCisgIC8vIFRoZSBzZWNvbmQgbW90aW9uIHZlY3RvciBpcyBhbHdheXMgZnJvbSB0aGUg
R09MREVOX0ZSQU1FLgorICBzdGQ6OnZlY3RvcjxzdGQ6OnZlY3RvcjxNb3Rpb25WZWN0b3JJbmZv
Pj4gZnBfbW90aW9uX3ZlY3Rvcl9pbmZvXzsKIH07CiAKIH0gIC8vIG5hbWVzcGFjZSB2cDkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5jIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkv
dnA5X2N4X2lmYWNlLmMKaW5kZXggMmNhMjExNGVjYThjY2YwMTI1NGZiYTljY2E3MWQ5ZmVjZjFl
YjhhNy4uZWNmYWNmYWY0MzMxZjkzZGJhZjljYWM3YTE0ZmJhZTlhOThhMzA5YSAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvdnA5X2N4X2lmYWNlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cDkvdnA5
X2N4X2lmYWNlLmMKQEAgLTEzLDYgKzEzLDcgQEAKIAogI2luY2x1ZGUgIi4vdnB4X2NvbmZpZy5o
IgogI2luY2x1ZGUgInZweC92cHhfZW5jb2Rlci5oIgorI2luY2x1ZGUgInZweC92cHhfZXh0X3Jh
dGVjdHJsLmgiCiAjaW5jbHVkZSAidnB4X2RzcC9wc25yLmgiCiAjaW5jbHVkZSAidnB4X3BvcnRz
L3ZweF9vbmNlLmgiCiAjaW5jbHVkZSAidnB4X3BvcnRzL3N0YXRpY19hc3NlcnQuaCIKQEAgLTM1
NSwxMyArMzU2LDE0IEBAIHN0YXRpYyB2cHhfY29kZWNfZXJyX3QgdmFsaWRhdGVfaW1nKHZweF9j
b2RlY19hbGdfcHJpdl90ICpjdHgsCiAgIHN3aXRjaCAoaW1nLT5mbXQpIHsKICAgICBjYXNlIFZQ
WF9JTUdfRk1UX1lWMTI6CiAgICAgY2FzZSBWUFhfSU1HX0ZNVF9JNDIwOgotICAgIGNhc2UgVlBY
X0lNR19GTVRfSTQyMDE2OiBicmVhazsKKyAgICBjYXNlIFZQWF9JTUdfRk1UX0k0MjAxNjoKKyAg
ICBjYXNlIFZQWF9JTUdfRk1UX05WMTI6IGJyZWFrOwogICAgIGNhc2UgVlBYX0lNR19GTVRfSTQy
MjoKICAgICBjYXNlIFZQWF9JTUdfRk1UX0k0NDQ6CiAgICAgY2FzZSBWUFhfSU1HX0ZNVF9JNDQw
OgogICAgICAgaWYgKGN0eC0+Y2ZnLmdfcHJvZmlsZSAhPSAodW5zaWduZWQgaW50KVBST0ZJTEVf
MSkgewogICAgICAgICBFUlJPUigKLSAgICAgICAgICAgICJJbnZhbGlkIGltYWdlIGZvcm1hdC4g
STQyMiwgSTQ0NCwgSTQ0MCBpbWFnZXMgYXJlICIKKyAgICAgICAgICAgICJJbnZhbGlkIGltYWdl
IGZvcm1hdC4gSTQyMiwgSTQ0NCwgSTQ0MCwgTlYxMiBpbWFnZXMgYXJlICIKICAgICAgICAgICAg
ICJub3Qgc3VwcG9ydGVkIGluIHByb2ZpbGUuIik7CiAgICAgICB9CiAgICAgICBicmVhazsKQEAg
LTM5MSw2ICszOTMsNyBAQCBzdGF0aWMgdnB4X2NvZGVjX2Vycl90IHZhbGlkYXRlX2ltZyh2cHhf
Y29kZWNfYWxnX3ByaXZfdCAqY3R4LAogc3RhdGljIGludCBnZXRfaW1hZ2VfYnBzKGNvbnN0IHZw
eF9pbWFnZV90ICppbWcpIHsKICAgc3dpdGNoIChpbWctPmZtdCkgewogICAgIGNhc2UgVlBYX0lN
R19GTVRfWVYxMjoKKyAgICBjYXNlIFZQWF9JTUdfRk1UX05WMTI6CiAgICAgY2FzZSBWUFhfSU1H
X0ZNVF9JNDIwOiByZXR1cm4gMTI7CiAgICAgY2FzZSBWUFhfSU1HX0ZNVF9JNDIyOiByZXR1cm4g
MTY7CiAgICAgY2FzZSBWUFhfSU1HX0ZNVF9JNDQ0OiByZXR1cm4gMjQ7CkBAIC00NjgsMTAgKzQ3
MSwxMSBAQCBzdGF0aWMgdnB4X3JhdGlvbmFsNjRfdCBnZXRfZ190aW1lYmFzZV9pbl90cyh2cHhf
cmF0aW9uYWxfdCBnX3RpbWViYXNlKSB7CiB9CiAKIHN0YXRpYyB2cHhfY29kZWNfZXJyX3Qgc2V0
X2VuY29kZXJfY29uZmlnKAotICAgIFZQOUVuY29kZXJDb25maWcgKm94Y2YsIGNvbnN0IHZweF9j
b2RlY19lbmNfY2ZnX3QgKmNmZywKKyAgICBWUDlFbmNvZGVyQ29uZmlnICpveGNmLCB2cHhfY29k
ZWNfZW5jX2NmZ190ICpjZmcsCiAgICAgY29uc3Qgc3RydWN0IHZwOV9leHRyYWNmZyAqZXh0cmFf
Y2ZnKSB7CiAgIGNvbnN0IGludCBpc192YnIgPSBjZmctPnJjX2VuZF91c2FnZSA9PSBWUFhfVkJS
OwogICBpbnQgc2wsIHRsOworICB1bnNpZ25lZCBpbnQgcmF3X3RhcmdldF9yYXRlOwogICBveGNm
LT5wcm9maWxlID0gY2ZnLT5nX3Byb2ZpbGU7CiAgIG94Y2YtPm1heF90aHJlYWRzID0gKGludClj
ZmctPmdfdGhyZWFkczsKICAgb3hjZi0+d2lkdGggPSBjZmctPmdfdzsKQEAgLTQ5OCw4ICs1MDIs
MTQgQEAgc3RhdGljIHZweF9jb2RlY19lcnJfdCBzZXRfZW5jb2Rlcl9jb25maWcoCiAgICAgICBj
ZmctPmdfcGFzcyA9PSBWUFhfUkNfRklSU1RfUEFTUyA/IDAgOiBjZmctPmdfbGFnX2luX2ZyYW1l
czsKICAgb3hjZi0+cmNfbW9kZSA9IGNmZy0+cmNfZW5kX3VzYWdlOwogCisgIHJhd190YXJnZXRf
cmF0ZSA9CisgICAgICAodW5zaWduZWQgaW50KSgoaW50NjRfdClveGNmLT53aWR0aCAqIG94Y2Yt
PmhlaWdodCAqIG94Y2YtPmJpdF9kZXB0aCAqIDMgKgorICAgICAgICAgICAgICAgICAgICAgb3hj
Zi0+aW5pdF9mcmFtZXJhdGUgLyAxMDAwKTsKKyAgLy8gQ2FwIHRhcmdldCBiaXRyYXRlIHRvIHJh
dyByYXRlCisgIGNmZy0+cmNfdGFyZ2V0X2JpdHJhdGUgPSBWUFhNSU4ocmF3X3RhcmdldF9yYXRl
LCBjZmctPnJjX3RhcmdldF9iaXRyYXRlKTsKKwogICAvLyBDb252ZXJ0IHRhcmdldCBiYW5kd2lk
dGggZnJvbSBLYml0L3MgdG8gQml0L3MKLSAgb3hjZi0+dGFyZ2V0X2JhbmR3aWR0aCA9IDEwMDAg
KiBjZmctPnJjX3RhcmdldF9iaXRyYXRlOworICBveGNmLT50YXJnZXRfYmFuZHdpZHRoID0gMTAw
MCAqIChpbnQ2NF90KWNmZy0+cmNfdGFyZ2V0X2JpdHJhdGU7CiAgIG94Y2YtPnJjX21heF9pbnRy
YV9iaXRyYXRlX3BjdCA9IGV4dHJhX2NmZy0+cmNfbWF4X2ludHJhX2JpdHJhdGVfcGN0OwogICBv
eGNmLT5yY19tYXhfaW50ZXJfYml0cmF0ZV9wY3QgPSBleHRyYV9jZmctPnJjX21heF9pbnRlcl9i
aXRyYXRlX3BjdDsKICAgb3hjZi0+Z2ZfY2JyX2Jvb3N0X3BjdCA9IGV4dHJhX2NmZy0+Z2ZfY2Jy
X2Jvb3N0X3BjdDsKQEAgLTYyNCw3ICs2MzQsNyBAQCBzdGF0aWMgdnB4X2NvZGVjX2Vycl90IHNl
dF9lbmNvZGVyX2NvbmZpZygKICAgfQogCiAgIGlmIChnZXRfbGV2ZWxfaW5kZXgob3hjZi0+dGFy
Z2V0X2xldmVsKSA+PSAwKSBjb25maWdfdGFyZ2V0X2xldmVsKG94Y2YpOwotICAvLyB2cDlfZHVt
cF9lbmNvZGVyX2NvbmZpZyhveGNmKTsKKyAgLy8gdnA5X2R1bXBfZW5jb2Rlcl9jb25maWcob3hj
Ziwgc3RkZXJyKTsKICAgcmV0dXJuIFZQWF9DT0RFQ19PSzsKIH0KIApAQCAtNjk4LDYgKzcwOCwx
MCBAQCBzdGF0aWMgdnB4X2NvZGVjX2Vycl90IGN0cmxfc2V0X2NwdXVzZWQodnB4X2NvZGVjX2Fs
Z19wcml2X3QgKmN0eCwKICAgZXh0cmFfY2ZnLmNwdV91c2VkID0gQ0FTVChWUDhFX1NFVF9DUFVV
U0VELCBhcmdzKTsKICAgZXh0cmFfY2ZnLmNwdV91c2VkID0gVlBYTUlOKDksIGV4dHJhX2NmZy5j
cHVfdXNlZCk7CiAgIGV4dHJhX2NmZy5jcHVfdXNlZCA9IFZQWE1BWCgtOSwgZXh0cmFfY2ZnLmNw
dV91c2VkKTsKKyNpZiBDT05GSUdfUkVBTFRJTUVfT05MWQorICBpZiAoZXh0cmFfY2ZnLmNwdV91
c2VkID4gLTUgJiYgZXh0cmFfY2ZnLmNwdV91c2VkIDwgNSkKKyAgICBleHRyYV9jZmcuY3B1X3Vz
ZWQgPSAoZXh0cmFfY2ZnLmNwdV91c2VkID4gMCkgPyA1IDogLTU7CisjZW5kaWYKICAgcmV0dXJu
IHVwZGF0ZV9leHRyYV9jZmcoY3R4LCAmZXh0cmFfY2ZnKTsKIH0KIApAQCAtMTU1OSw2ICsxNTcz
LDcgQEAgc3RhdGljIHZweF9jb2RlY19lcnJfdCBjdHJsX3NldF9zdmNfcGFyYW1ldGVycyh2cHhf
Y29kZWNfYWxnX3ByaXZfdCAqY3R4LAogICAgICAgbGMtPnNjYWxpbmdfZmFjdG9yX251bSA9IHBh
cmFtcy0+c2NhbGluZ19mYWN0b3JfbnVtW3NsXTsKICAgICAgIGxjLT5zY2FsaW5nX2ZhY3Rvcl9k
ZW4gPSBwYXJhbXMtPnNjYWxpbmdfZmFjdG9yX2RlbltzbF07CiAgICAgICBsYy0+c3BlZWQgPSBw
YXJhbXMtPnNwZWVkX3Blcl9sYXllcltzbF07CisgICAgICBsYy0+bG9vcGZpbHRlcl9jdHJsID0g
cGFyYW1zLT5sb29wZmlsdGVyX2N0cmxbc2xdOwogICAgIH0KICAgfQogCkBAIC0xNzAzLDYgKzE3
MTgsNTIgQEAgc3RhdGljIHZweF9jb2RlY19lcnJfdCBjdHJsX3NldF9wb3N0ZW5jb2RlX2Ryb3Ao
dnB4X2NvZGVjX2FsZ19wcml2X3QgKmN0eCwKICAgcmV0dXJuIFZQWF9DT0RFQ19PSzsKIH0KIAor
c3RhdGljIHZweF9jb2RlY19lcnJfdCBjdHJsX3NldF9kaXNhYmxlX292ZXJzaG9vdF9tYXhxX2Ni
cigKKyAgICB2cHhfY29kZWNfYWxnX3ByaXZfdCAqY3R4LCB2YV9saXN0IGFyZ3MpIHsKKyAgVlA5
X0NPTVAgKmNvbnN0IGNwaSA9IGN0eC0+Y3BpOworICBjb25zdCB1bnNpZ25lZCBpbnQgZGF0YSA9
IHZhX2FyZyhhcmdzLCB1bnNpZ25lZCBpbnQpOworICBjcGktPnJjLmRpc2FibGVfb3ZlcnNob290
X21heHFfY2JyID0gZGF0YTsKKyAgcmV0dXJuIFZQWF9DT0RFQ19PSzsKK30KKworc3RhdGljIHZw
eF9jb2RlY19lcnJfdCBjdHJsX3NldF9kaXNhYmxlX2xvb3BmaWx0ZXIodnB4X2NvZGVjX2FsZ19w
cml2X3QgKmN0eCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHZhX2xpc3QgYXJncykgeworICBWUDlfQ09NUCAqY29uc3QgY3BpID0gY3R4LT5jcGk7
CisgIGNvbnN0IHVuc2lnbmVkIGludCBkYXRhID0gdmFfYXJnKGFyZ3MsIHVuc2lnbmVkIGludCk7
CisgIGNwaS0+bG9vcGZpbHRlcl9jdHJsID0gZGF0YTsKKyAgcmV0dXJuIFZQWF9DT0RFQ19PSzsK
K30KKworc3RhdGljIHZweF9jb2RlY19lcnJfdCBjdHJsX3NldF9leHRlcm5hbF9yYXRlX2NvbnRy
b2wodnB4X2NvZGVjX2FsZ19wcml2X3QgKmN0eCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhX2xpc3QgYXJncykgeworICB2cHhfcmNfZnVu
Y3NfdCBmdW5jcyA9ICpDQVNUKFZQOUVfU0VUX0VYVEVSTkFMX1JBVEVfQ09OVFJPTCwgYXJncyk7
CisgIFZQOV9DT01QICpjcGkgPSBjdHgtPmNwaTsKKyAgRVhUX1JBVEVDVFJMICpleHRfcmF0ZWN0
cmwgPSAmY3BpLT5leHRfcmF0ZWN0cmw7CisgIGNvbnN0IFZQOUVuY29kZXJDb25maWcgKm94Y2Yg
PSAmY3BpLT5veGNmOworICAvLyBUT0RPKGFuZ2llYmlyZCk6IENoZWNrIHRoZSBwb3NzaWJpbGl0
eSBvZiB0aGlzIGZsYWcgYmVpbmcgc2V0IGF0IHBhc3MgPT0gMQorICBpZiAob3hjZi0+cGFzcyA9
PSAyKSB7CisgICAgY29uc3QgRlJBTUVfSU5GTyAqZnJhbWVfaW5mbyA9ICZjcGktPmZyYW1lX2lu
Zm87CisgICAgdnB4X3JjX2NvbmZpZ190IHJhdGVjdHJsX2NvbmZpZzsKKyAgICB2cHhfY29kZWNf
ZXJyX3QgY29kZWNfc3RhdHVzOworCisgICAgcmF0ZWN0cmxfY29uZmlnLmZyYW1lX3dpZHRoID0g
ZnJhbWVfaW5mby0+ZnJhbWVfd2lkdGg7CisgICAgcmF0ZWN0cmxfY29uZmlnLmZyYW1lX2hlaWdo
dCA9IGZyYW1lX2luZm8tPmZyYW1lX2hlaWdodDsKKyAgICByYXRlY3RybF9jb25maWcuc2hvd19m
cmFtZV9jb3VudCA9IGNwaS0+dHdvcGFzcy5maXJzdF9wYXNzX2luZm8ubnVtX2ZyYW1lczsKKwor
ICAgIC8vIFRPRE8oYW5naWViaXJkKTogRG91YmxlIGNoZWNrIHdoZXRoZXIgdGhpcyBpcyB0aGUg
cHJvcGVyIHdheSB0byBzZXQgdXAKKyAgICAvLyB0YXJnZXRfYml0cmF0ZSBhbmQgZnJhbWVfcmF0
ZS4KKyAgICByYXRlY3RybF9jb25maWcudGFyZ2V0X2JpdHJhdGVfa2JwcyA9IChpbnQpKG94Y2Yt
PnRhcmdldF9iYW5kd2lkdGggLyAxMDAwKTsKKyAgICByYXRlY3RybF9jb25maWcuZnJhbWVfcmF0
ZV9udW0gPSBveGNmLT5nX3RpbWViYXNlLmRlbjsKKyAgICByYXRlY3RybF9jb25maWcuZnJhbWVf
cmF0ZV9kZW4gPSBveGNmLT5nX3RpbWViYXNlLm51bTsKKworICAgIGNvZGVjX3N0YXR1cyA9IHZw
OV9leHRyY19jcmVhdGUoZnVuY3MsIHJhdGVjdHJsX2NvbmZpZywgZXh0X3JhdGVjdHJsKTsKKyAg
ICBpZiAoY29kZWNfc3RhdHVzICE9IFZQWF9DT0RFQ19PSykgeworICAgICAgcmV0dXJuIGNvZGVj
X3N0YXR1czsKKyAgICB9CisgIH0KKyAgcmV0dXJuIFZQWF9DT0RFQ19PSzsKK30KKwogc3RhdGlj
IHZweF9jb2RlY19jdHJsX2ZuX21hcF90IGVuY29kZXJfY3RybF9tYXBzW10gPSB7CiAgIHsgVlA4
X0NPUFlfUkVGRVJFTkNFLCBjdHJsX2NvcHlfcmVmZXJlbmNlIH0sCiAKQEAgLTE3NDcsMTIgKzE4
MDgsMTUgQEAgc3RhdGljIHZweF9jb2RlY19jdHJsX2ZuX21hcF90IGVuY29kZXJfY3RybF9tYXBz
W10gPSB7CiAgIHsgVlA5RV9TRVRfVEFSR0VUX0xFVkVMLCBjdHJsX3NldF90YXJnZXRfbGV2ZWwg
fSwKICAgeyBWUDlFX1NFVF9ST1dfTVQsIGN0cmxfc2V0X3Jvd19tdCB9LAogICB7IFZQOUVfU0VU
X1BPU1RFTkNPREVfRFJPUCwgY3RybF9zZXRfcG9zdGVuY29kZV9kcm9wIH0sCisgIHsgVlA5RV9T
RVRfRElTQUJMRV9PVkVSU0hPT1RfTUFYUV9DQlIsIGN0cmxfc2V0X2Rpc2FibGVfb3ZlcnNob290
X21heHFfY2JyIH0sCiAgIHsgVlA5RV9FTkFCTEVfTU9USU9OX1ZFQ1RPUl9VTklUX1RFU1QsIGN0
cmxfZW5hYmxlX21vdGlvbl92ZWN0b3JfdW5pdF90ZXN0IH0sCiAgIHsgVlA5RV9TRVRfU1ZDX0lO
VEVSX0xBWUVSX1BSRUQsIGN0cmxfc2V0X3N2Y19pbnRlcl9sYXllcl9wcmVkIH0sCiAgIHsgVlA5
RV9TRVRfU1ZDX0ZSQU1FX0RST1BfTEFZRVIsIGN0cmxfc2V0X3N2Y19mcmFtZV9kcm9wX2xheWVy
IH0sCiAgIHsgVlA5RV9TRVRfU1ZDX0dGX1RFTVBPUkFMX1JFRiwgY3RybF9zZXRfc3ZjX2dmX3Rl
bXBvcmFsX3JlZiB9LAogICB7IFZQOUVfU0VUX1NWQ19TUEFUSUFMX0xBWUVSX1NZTkMsIGN0cmxf
c2V0X3N2Y19zcGF0aWFsX2xheWVyX3N5bmMgfSwKICAgeyBWUDlFX1NFVF9ERUxUQV9RX1VWLCBj
dHJsX3NldF9kZWx0YV9xX3V2IH0sCisgIHsgVlA5RV9TRVRfRElTQUJMRV9MT09QRklMVEVSLCBj
dHJsX3NldF9kaXNhYmxlX2xvb3BmaWx0ZXIgfSwKKyAgeyBWUDlFX1NFVF9FWFRFUk5BTF9SQVRF
X0NPTlRST0wsIGN0cmxfc2V0X2V4dGVybmFsX3JhdGVfY29udHJvbCB9LAogCiAgIC8vIEdldHRl
cnMKICAgeyBWUDhFX0dFVF9MQVNUX1FVQU5USVpFUiwgY3RybF9nZXRfcXVhbnRpemVyIH0sCkBA
IC0xODg2LDcgKzE5NTAsNyBAQCBzdGF0aWMgdnA5X2V4dHJhY2ZnIGdldF9leHRyYV9jZmcoKSB7
CiAKIFZQOUVuY29kZXJDb25maWcgdnA5X2dldF9lbmNvZGVyX2NvbmZpZyhpbnQgZnJhbWVfd2lk
dGgsIGludCBmcmFtZV9oZWlnaHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdnB4X3JhdGlvbmFsX3QgZnJhbWVfcmF0ZSwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpbnQgdGFyZ2V0X2JpdHJhdGUsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaW50IHRhcmdldF9iaXRyYXRlLCBpbnQgZW5jb2RlX3NwZWVk
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZweF9lbmNfcGFzcyBl
bmNfcGFzcykgewogICAvKiBUaGlzIGZ1bmN0aW9uIHdpbGwgZ2VuZXJhdGUgdGhlIHNhbWUgVlA5
RW5jb2RlckNvbmZpZyB1c2VkIGJ5IHRoZQogICAgKiB2cHhlbmMgY29tbWFuZCBnaXZlbiBiZWxv
dy4KQEAgLTE4OTcsNiArMTk2MSw3IEBAIFZQOUVuY29kZXJDb25maWcgdnA5X2dldF9lbmNvZGVy
X2NvbmZpZyhpbnQgZnJhbWVfd2lkdGgsIGludCBmcmFtZV9oZWlnaHQsCiAgICAqIEhFSUdIVDog
IGZyYW1lX2hlaWdodAogICAgKiBGUFM6ICAgICBmcmFtZV9yYXRlCiAgICAqIEJJVFJBVEU6IHRh
cmdldF9iaXRyYXRlCisgICAqIENQVV9VU0VEOmVuY29kZV9zcGVlZAogICAgKgogICAgKiBJTlBV
VCwgT1VUUFVULCBMSU1JVCB3aWxsIG5vdCBhZmZlY3QgVlA5RW5jb2RlckNvbmZpZwogICAgKgpA
QCAtMTkwOCw5ICsxOTczLDEwIEBAIFZQOUVuY29kZXJDb25maWcgdnA5X2dldF9lbmNvZGVyX2Nv
bmZpZyhpbnQgZnJhbWVfd2lkdGgsIGludCBmcmFtZV9oZWlnaHQsCiAgICAqIEJJVFJBVEU9NjAw
CiAgICAqIEZQUz0zMC8xCiAgICAqIExJTUlUPTE1MAorICAgKiBDUFVfVVNFRD0wCiAgICAqIC4v
dnB4ZW5jIC0tbGltaXQ9JExJTUlUIC0td2lkdGg9JFdJRFRIIC0taGVpZ2h0PSRIRUlHSFQgLS1m
cHM9JEZQUwogICAgKiAtLWxhZy1pbi1mcmFtZXM9MjUgXAotICAgKiAgLS1jb2RlYz12cDkgLS1n
b29kIC0tY3B1LXVzZWQ9MCAtLXRocmVhZHM9MCAtLXByb2ZpbGU9MCBcCisgICAqICAtLWNvZGVj
PXZwOSAtLWdvb2QgLS1jcHUtdXNlZD1DUFVfVVNFRCAtLXRocmVhZHM9MCAtLXByb2ZpbGU9MCBc
CiAgICAqICAtLW1pbi1xPTAgLS1tYXgtcT02MyAtLWF1dG8tYWx0LXJlZj0xIC0tcGFzc2VzPTIg
LS1rZi1tYXgtZGlzdD0xNTAgXAogICAgKiAgLS1rZi1taW4tZGlzdD0wIC0tZHJvcC1mcmFtZT0w
IC0tc3RhdGljLXRocmVzaD0wIC0tYmlhcy1wY3Q9NTAgXAogICAgKiAgLS1taW5zZWN0aW9uLXBj
dD0wIC0tbWF4c2VjdGlvbi1wY3Q9MTUwIC0tYXJuci1tYXhmcmFtZXM9NyAtLXBzbnIgXApAQCAt
MTkzMyw0OSArMTk5OSw1MCBAQCBWUDlFbmNvZGVyQ29uZmlnIHZwOV9nZXRfZW5jb2Rlcl9jb25m
aWcoaW50IGZyYW1lX3dpZHRoLCBpbnQgZnJhbWVfaGVpZ2h0LAogICBveGNmLnRpbGVfY29sdW1u
cyA9IDA7CiAgIG94Y2YuZnJhbWVfcGFyYWxsZWxfZGVjb2RpbmdfbW9kZSA9IDA7CiAgIG94Y2Yu
dHdvX3Bhc3NfdmJybWF4X3NlY3Rpb24gPSAxNTA7CisgIG94Y2Yuc3BlZWQgPSBhYnMoZW5jb2Rl
X3NwZWVkKTsKICAgcmV0dXJuIG94Y2Y7CiB9CiAKLSNkZWZpbmUgRFVNUF9TVFJVQ1RfVkFMVUUo
c3RydWN0LCB2YWx1ZSkgXAotICBwcmludGYoI3ZhbHVlICIgJSIgUFJJZDY0ICJcbiIsIChpbnQ2
NF90KShzdHJ1Y3QpLT52YWx1ZSkKKyNkZWZpbmUgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIHN0cnVj
dHVyZSwgdmFsdWUpIFwKKyAgZnByaW50ZihmcCwgI3ZhbHVlICIgJSIgUFJJZDY0ICJcbiIsIChp
bnQ2NF90KShzdHJ1Y3R1cmUpLT52YWx1ZSkKIAotdm9pZCB2cDlfZHVtcF9lbmNvZGVyX2NvbmZp
Zyhjb25zdCBWUDlFbmNvZGVyQ29uZmlnICpveGNmKSB7Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94
Y2YsIHByb2ZpbGUpOwotICBEVU1QX1NUUlVDVF9WQUxVRShveGNmLCBiaXRfZGVwdGgpOwotICBE
VU1QX1NUUlVDVF9WQUxVRShveGNmLCB3aWR0aCk7Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2Ys
IGhlaWdodCk7Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIGlucHV0X2JpdF9kZXB0aCk7Ci0g
IERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIGluaXRfZnJhbWVyYXRlKTsKK3ZvaWQgdnA5X2R1bXBf
ZW5jb2Rlcl9jb25maWcoY29uc3QgVlA5RW5jb2RlckNvbmZpZyAqb3hjZiwgRklMRSAqZnApIHsK
KyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIHByb2ZpbGUpOworICBEVU1QX1NUUlVDVF9W
QUxVRShmcCwgb3hjZiwgYml0X2RlcHRoKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2Ys
IHdpZHRoKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIGhlaWdodCk7CisgIERVTVBf
U1RSVUNUX1ZBTFVFKGZwLCBveGNmLCBpbnB1dF9iaXRfZGVwdGgpOworICBEVU1QX1NUUlVDVF9W
QUxVRShmcCwgb3hjZiwgaW5pdF9mcmFtZXJhdGUpOwogICAvLyBUT0RPKGFuZ2llYmlyZCk6IGR1
bXAgZ190aW1lYmFzZQogICAvLyBUT0RPKGFuZ2llYmlyZCk6IGR1bXAgZ190aW1lYmFzZV9pbl90
cwogCi0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIHRhcmdldF9iYW5kd2lkdGgpOworICBEVU1Q
X1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgdGFyZ2V0X2JhbmR3aWR0aCk7CiAKLSAgRFVNUF9TVFJV
Q1RfVkFMVUUob3hjZiwgbm9pc2Vfc2Vuc2l0aXZpdHkpOwotICBEVU1QX1NUUlVDVF9WQUxVRShv
eGNmLCBzaGFycG5lc3MpOwotICBEVU1QX1NUUlVDVF9WQUxVRShveGNmLCBzcGVlZCk7Ci0gIERV
TVBfU1RSVUNUX1ZBTFVFKG94Y2YsIHJjX21heF9pbnRyYV9iaXRyYXRlX3BjdCk7Ci0gIERVTVBf
U1RSVUNUX1ZBTFVFKG94Y2YsIHJjX21heF9pbnRlcl9iaXRyYXRlX3BjdCk7Ci0gIERVTVBfU1RS
VUNUX1ZBTFVFKG94Y2YsIGdmX2Nicl9ib29zdF9wY3QpOworICBEVU1QX1NUUlVDVF9WQUxVRShm
cCwgb3hjZiwgbm9pc2Vfc2Vuc2l0aXZpdHkpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hj
Ziwgc2hhcnBuZXNzKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIHNwZWVkKTsKKyAg
RFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIHJjX21heF9pbnRyYV9iaXRyYXRlX3BjdCk7Cisg
IERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCByY19tYXhfaW50ZXJfYml0cmF0ZV9wY3QpOwor
ICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgZ2ZfY2JyX2Jvb3N0X3BjdCk7CiAKLSAgRFVN
UF9TVFJVQ1RfVkFMVUUob3hjZiwgbW9kZSk7Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIHBh
c3MpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgbW9kZSk7CisgIERVTVBfU1RSVUNU
X1ZBTFVFKGZwLCBveGNmLCBwYXNzKTsKIAogICAvLyBLZXkgRnJhbWluZyBPcGVyYXRpb25zCi0g
IERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIGF1dG9fa2V5KTsKLSAgRFVNUF9TVFJVQ1RfVkFMVUUo
b3hjZiwga2V5X2ZyZXEpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgYXV0b19rZXkp
OworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwga2V5X2ZyZXEpOwogCi0gIERVTVBfU1RS
VUNUX1ZBTFVFKG94Y2YsIGxhZ19pbl9mcmFtZXMpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwg
b3hjZiwgbGFnX2luX2ZyYW1lcyk7CiAKICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICAvLyBEQVRBUkFURSBDT05U
Uk9MIE9QVElPTlMKIAogICAvLyB2YnIsIGNiciwgY29uc3RyYWluZWQgcXVhbGl0eSBvciBjb25z
dGFudCBxdWFsaXR5Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIHJjX21vZGUpOworICBEVU1Q
X1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgcmNfbW9kZSk7CiAKICAgLy8gYnVmZmVyIHRhcmdldGlu
ZyBhZ2dyZXNzaXZlbmVzcwotICBEVU1QX1NUUlVDVF9WQUxVRShveGNmLCB1bmRlcl9zaG9vdF9w
Y3QpOwotICBEVU1QX1NUUlVDVF9WQUxVRShveGNmLCBvdmVyX3Nob290X3BjdCk7CisgIERVTVBf
U1RSVUNUX1ZBTFVFKGZwLCBveGNmLCB1bmRlcl9zaG9vdF9wY3QpOworICBEVU1QX1NUUlVDVF9W
QUxVRShmcCwgb3hjZiwgb3Zlcl9zaG9vdF9wY3QpOwogCiAgIC8vIGJ1ZmZlcmluZyBwYXJhbWV0
ZXJzCiAgIC8vIFRPRE8oYW5naWViaXJkKTogZHVtcCB0YXJ0aW5nX2J1ZmZlcl9sZXZlbF9tcwpA
QCAtMTk4MywzNyArMjA1MCwzNyBAQCB2b2lkIHZwOV9kdW1wX2VuY29kZXJfY29uZmlnKGNvbnN0
IFZQOUVuY29kZXJDb25maWcgKm94Y2YpIHsKICAgLy8gVE9ETyhhbmdpZWJpcmQpOiBkdW1wIG1h
eGltdW1fYnVmZmVyX3NpemVfbXMKIAogICAvLyBGcmFtZSBkcm9wIHRocmVzaG9sZC4KLSAgRFVN
UF9TVFJVQ1RfVkFMVUUob3hjZiwgZHJvcF9mcmFtZXNfd2F0ZXJfbWFyayk7CisgIERVTVBfU1RS
VUNUX1ZBTFVFKGZwLCBveGNmLCBkcm9wX2ZyYW1lc193YXRlcl9tYXJrKTsKIAogICAvLyBjb250
cm9sbGluZyBxdWFsaXR5Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIGZpeGVkX3EpOwotICBE
VU1QX1NUUlVDVF9WQUxVRShveGNmLCB3b3JzdF9hbGxvd2VkX3EpOwotICBEVU1QX1NUUlVDVF9W
QUxVRShveGNmLCBiZXN0X2FsbG93ZWRfcSk7Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIGNx
X2xldmVsKTsKLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgYXFfbW9kZSk7CisgIERVTVBfU1RS
VUNUX1ZBTFVFKGZwLCBveGNmLCBmaXhlZF9xKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94
Y2YsIHdvcnN0X2FsbG93ZWRfcSk7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCBiZXN0
X2FsbG93ZWRfcSk7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCBjcV9sZXZlbCk7Cisg
IERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCBhcV9tb2RlKTsKIAogICAvLyBTcGVjaWFsIGhh
bmRsaW5nIG9mIEFkYXB0aXZlIFF1YW50aXphdGlvbiBmb3IgQWx0UmVmIGZyYW1lcwotICBEVU1Q
X1NUUlVDVF9WQUxVRShveGNmLCBhbHRfcmVmX2FxKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAs
IG94Y2YsIGFsdF9yZWZfYXEpOwogCiAgIC8vIEludGVybmFsIGZyYW1lIHNpemUgc2NhbGluZy4K
LSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgcmVzaXplX21vZGUpOwotICBEVU1QX1NUUlVDVF9W
QUxVRShveGNmLCBzY2FsZWRfZnJhbWVfd2lkdGgpOwotICBEVU1QX1NUUlVDVF9WQUxVRShveGNm
LCBzY2FsZWRfZnJhbWVfaGVpZ2h0KTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIHJl
c2l6ZV9tb2RlKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIHNjYWxlZF9mcmFtZV93
aWR0aCk7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCBzY2FsZWRfZnJhbWVfaGVpZ2h0
KTsKIAogICAvLyBFbmFibGUgZmVhdHVyZSB0byByZWR1Y2UgdGhlIGZyYW1lIHF1YW50aXphdGlv
biBldmVyeSB4IGZyYW1lcy4KLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgZnJhbWVfcGVyaW9k
aWNfYm9vc3QpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgZnJhbWVfcGVyaW9kaWNf
Ym9vc3QpOwogCiAgIC8vIHR3byBwYXNzIGRhdGFyYXRlIGNvbnRyb2wKLSAgRFVNUF9TVFJVQ1Rf
VkFMVUUob3hjZiwgdHdvX3Bhc3NfdmJyYmlhcyk7Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2Ys
IHR3b19wYXNzX3Zicm1pbl9zZWN0aW9uKTsKLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgdHdv
X3Bhc3NfdmJybWF4X3NlY3Rpb24pOwotICBEVU1QX1NUUlVDVF9WQUxVRShveGNmLCB2YnJfY29y
cHVzX2NvbXBsZXhpdHkpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgdHdvX3Bhc3Nf
dmJyYmlhcyk7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCB0d29fcGFzc192YnJtaW5f
c2VjdGlvbik7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCB0d29fcGFzc192YnJtYXhf
c2VjdGlvbik7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCB2YnJfY29ycHVzX2NvbXBs
ZXhpdHkpOwogICAvLyBFTkQgREFUQVJBVEUgQ09OVFJPTCBPUFRJT05TCiAgIC8vIC0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K
IAogICAvLyBTcGF0aWFsIGFuZCB0ZW1wb3JhbCBzY2FsYWJpbGl0eS4KLSAgRFVNUF9TVFJVQ1Rf
VkFMVUUob3hjZiwgc3NfbnVtYmVyX2xheWVycyk7Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2Ys
IHRzX251bWJlcl9sYXllcnMpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgc3NfbnVt
YmVyX2xheWVycyk7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCB0c19udW1iZXJfbGF5
ZXJzKTsKIAogICAvLyBCaXRyYXRlIGFsbG9jYXRpb24gZm9yIHNwYXRpYWwgbGF5ZXJzLgogICAv
LyBUT0RPKGFuZ2llYmlyZCk6IGR1bXAgbGF5ZXJfdGFyZ2V0X2JpdHJhdGVbVlBYX01BWF9MQVlF
UlNdCkBAIC0yMDIxLDI1ICsyMDg4LDI1IEBAIHZvaWQgdnA5X2R1bXBfZW5jb2Rlcl9jb25maWco
Y29uc3QgVlA5RW5jb2RlckNvbmZpZyAqb3hjZikgewogICAvLyBUT0RPKGFuZ2llYmlyZCk6IGR1
bXAgc3NfZW5hYmxlX2F1dG9fYXJmW1ZQWF9TU19NQVhfTEFZRVJTXQogICAvLyBUT0RPKGFuZ2ll
YmlyZCk6IGR1bXAgdHNfcmF0ZV9kZWNpbWF0b3JbVlBYX1RTX01BWF9MQVlFUlNdCiAKLSAgRFVN
UF9TVFJVQ1RfVkFMVUUob3hjZiwgZW5hYmxlX2F1dG9fYXJmKTsKLSAgRFVNUF9TVFJVQ1RfVkFM
VUUob3hjZiwgZW5jb2RlX2JyZWFrb3V0KTsKLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgZXJy
b3JfcmVzaWxpZW50X21vZGUpOwotICBEVU1QX1NUUlVDVF9WQUxVRShveGNmLCBmcmFtZV9wYXJh
bGxlbF9kZWNvZGluZ19tb2RlKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIGVuYWJs
ZV9hdXRvX2FyZik7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCBlbmNvZGVfYnJlYWtv
dXQpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgZXJyb3JfcmVzaWxpZW50X21vZGUp
OworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgZnJhbWVfcGFyYWxsZWxfZGVjb2Rpbmdf
bW9kZSk7CiAKLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgYXJucl9tYXhfZnJhbWVzKTsKLSAg
RFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgYXJucl9zdHJlbmd0aCk7CisgIERVTVBfU1RSVUNUX1ZB
TFVFKGZwLCBveGNmLCBhcm5yX21heF9mcmFtZXMpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwg
b3hjZiwgYXJucl9zdHJlbmd0aCk7CiAKLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgbWluX2dm
X2ludGVydmFsKTsKLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgbWF4X2dmX2ludGVydmFsKTsK
KyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIG1pbl9nZl9pbnRlcnZhbCk7CisgIERVTVBf
U1RSVUNUX1ZBTFVFKGZwLCBveGNmLCBtYXhfZ2ZfaW50ZXJ2YWwpOwogCi0gIERVTVBfU1RSVUNU
X1ZBTFVFKG94Y2YsIHRpbGVfY29sdW1ucyk7Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIHRp
bGVfcm93cyk7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCB0aWxlX2NvbHVtbnMpOwor
ICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgdGlsZV9yb3dzKTsKIAotICBEVU1QX1NUUlVD
VF9WQUxVRShveGNmLCBlbmFibGVfdHBsX21vZGVsKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAs
IG94Y2YsIGVuYWJsZV90cGxfbW9kZWwpOwogCi0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIG1h
eF90aHJlYWRzKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIG1heF90aHJlYWRzKTsK
IAotICBEVU1QX1NUUlVDVF9WQUxVRShveGNmLCB0YXJnZXRfbGV2ZWwpOworICBEVU1QX1NUUlVD
VF9WQUxVRShmcCwgb3hjZiwgdGFyZ2V0X2xldmVsKTsKIAogICAvLyBUT0RPKGFuZ2llYmlyZCk6
IGR1bXAgdHdvX3Bhc3Nfc3RhdHNfaW4KIApAQCAtMjA0NywxOSArMjExNCwxOSBAQCB2b2lkIHZw
OV9kdW1wX2VuY29kZXJfY29uZmlnKGNvbnN0IFZQOUVuY29kZXJDb25maWcgKm94Y2YpIHsKICAg
Ly8gVE9ETyhhbmdpZWJpcmQpOiBkdW1wIGZpcnN0cGFzc19tYl9zdGF0c19pbgogI2VuZGlmCiAK
LSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgdHVuaW5nKTsKLSAgRFVNUF9TVFJVQ1RfVkFMVUUo
b3hjZiwgY29udGVudCk7CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCB0dW5pbmcpOwor
ICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgY29udGVudCk7CiAjaWYgQ09ORklHX1ZQOV9I
SUdIQklUREVQVEgKLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgdXNlX2hpZ2hiaXRkZXB0aCk7
CisgIERVTVBfU1RSVUNUX1ZBTFVFKGZwLCBveGNmLCB1c2VfaGlnaGJpdGRlcHRoKTsKICNlbmRp
ZgotICBEVU1QX1NUUlVDVF9WQUxVRShveGNmLCBjb2xvcl9zcGFjZSk7Ci0gIERVTVBfU1RSVUNU
X1ZBTFVFKG94Y2YsIGNvbG9yX3JhbmdlKTsKLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgcmVu
ZGVyX3dpZHRoKTsKLSAgRFVNUF9TVFJVQ1RfVkFMVUUob3hjZiwgcmVuZGVyX2hlaWdodCk7Ci0g
IERVTVBfU1RSVUNUX1ZBTFVFKG94Y2YsIHRlbXBvcmFsX2xheWVyaW5nX21vZGUpOwotCi0gIERV
TVBfU1RSVUNUX1ZBTFVFKG94Y2YsIHJvd19tdCk7Ci0gIERVTVBfU1RSVUNUX1ZBTFVFKG94Y2Ys
IG1vdGlvbl92ZWN0b3JfdW5pdF90ZXN0KTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2Ys
IGNvbG9yX3NwYWNlKTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIGNvbG9yX3Jhbmdl
KTsKKyAgRFVNUF9TVFJVQ1RfVkFMVUUoZnAsIG94Y2YsIHJlbmRlcl93aWR0aCk7CisgIERVTVBf
U1RSVUNUX1ZBTFVFKGZwLCBveGNmLCByZW5kZXJfaGVpZ2h0KTsKKyAgRFVNUF9TVFJVQ1RfVkFM
VUUoZnAsIG94Y2YsIHRlbXBvcmFsX2xheWVyaW5nX21vZGUpOworCisgIERVTVBfU1RSVUNUX1ZB
TFVFKGZwLCBveGNmLCByb3dfbXQpOworICBEVU1QX1NUUlVDVF9WQUxVRShmcCwgb3hjZiwgbW90
aW9uX3ZlY3Rvcl91bml0X3Rlc3QpOwogfQogCiBGUkFNRV9JTkZPIHZwOV9nZXRfZnJhbWVfaW5m
byhjb25zdCBWUDlFbmNvZGVyQ29uZmlnICpveGNmKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZwOS92cDlfY3hfaWZhY2UuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5oCmluZGV4
IDA4NTY5ZmNjOTZjZTI0MGI3ZTA1ZjNhZTEwYTFkYzIzMTIyNmNjZGUuLjAxMzM4YWRiNGUzMTkx
MjQxMDIyYTNmZWJhYmE1N2RiNGMxNjU3MWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3Zw
OV9jeF9pZmFjZS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9jeF9pZmFjZS5oCkBAIC0xOSwx
MCArMTksMTAgQEAgZXh0ZXJuICJDIiB7CiAKIFZQOUVuY29kZXJDb25maWcgdnA5X2dldF9lbmNv
ZGVyX2NvbmZpZyhpbnQgZnJhbWVfd2lkdGgsIGludCBmcmFtZV9oZWlnaHQsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdnB4X3JhdGlvbmFsX3QgZnJhbWVfcmF0ZSwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgdGFyZ2V0X2JpdHJh
dGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHRhcmdldF9i
aXRyYXRlLCBpbnQgZW5jb2RlX3NwZWVkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHZweF9lbmNfcGFzcyBlbmNfcGFzcyk7CiAKLXZvaWQgdnA5X2R1bXBfZW5jb2Rl
cl9jb25maWcoY29uc3QgVlA5RW5jb2RlckNvbmZpZyAqb3hjZik7Cit2b2lkIHZwOV9kdW1wX2Vu
Y29kZXJfY29uZmlnKGNvbnN0IFZQOUVuY29kZXJDb25maWcgKm94Y2YsIEZJTEUgKmZwKTsKIAog
RlJBTUVfSU5GTyB2cDlfZ2V0X2ZyYW1lX2luZm8oY29uc3QgVlA5RW5jb2RlckNvbmZpZyAqb3hj
Zik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnA5L3ZwOV9pZmFjZV9jb21tb24uYwppbmRleCA3NGQwOGE1ODczYTE2MTViMDEz
ODMxNDc1NDNkN2VlZDBlMjY2NjUzLi44ZDAzMTY5NGQ4ZGIwNTkwMTZhZjJjNzY3MDlmZThhMmFj
MmRkYmNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92cDlfaWZhY2VfY29tbW9uLmMKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cDkvdnA5X2lmYWNlX2NvbW1vbi5jCkBAIC04OCw4ICs4OCw5IEBAIHZw
eF9jb2RlY19lcnJfdCBpbWFnZTJ5dXZjb25maWcoY29uc3QgdnB4X2ltYWdlX3QgKmltZywKICAg
eXYxMi0+eV93aWR0aCA9IGltZy0+ZF93OwogICB5djEyLT55X2hlaWdodCA9IGltZy0+ZF9oOwog
Ci0gIHl2MTItPnV2X3dpZHRoID0KLSAgICAgIGltZy0+eF9jaHJvbWFfc2hpZnQgPT0gMSA/ICgx
ICsgeXYxMi0+eV93aWR0aCkgLyAyIDogeXYxMi0+eV93aWR0aDsKKyAgeXYxMi0+dXZfd2lkdGgg
PSBpbWctPnhfY2hyb21hX3NoaWZ0ID09IDEgfHwgaW1nLT5mbXQgPT0gVlBYX0lNR19GTVRfTlYx
MgorICAgICAgICAgICAgICAgICAgICAgICA/ICgxICsgeXYxMi0+eV93aWR0aCkgLyAyCisgICAg
ICAgICAgICAgICAgICAgICAgIDogeXYxMi0+eV93aWR0aDsKICAgeXYxMi0+dXZfaGVpZ2h0ID0K
ICAgICAgIGltZy0+eV9jaHJvbWFfc2hpZnQgPT0gMSA/ICgxICsgeXYxMi0+eV9oZWlnaHQpIC8g
MiA6IHl2MTItPnlfaGVpZ2h0OwogICB5djEyLT51dl9jcm9wX3dpZHRoID0geXYxMi0+dXZfd2lk
dGg7CkBAIC0xMjcsNSArMTI4LDkgQEAgdnB4X2NvZGVjX2Vycl90IGltYWdlMnl1dmNvbmZpZyhj
b25zdCB2cHhfaW1hZ2VfdCAqaW1nLAogI2VuZGlmICAvLyBDT05GSUdfVlA5X0hJR0hCSVRERVBU
SAogICB5djEyLT5zdWJzYW1wbGluZ194ID0gaW1nLT54X2Nocm9tYV9zaGlmdDsKICAgeXYxMi0+
c3Vic2FtcGxpbmdfeSA9IGltZy0+eV9jaHJvbWFfc2hpZnQ7CisgIC8vIFdoZW4gcmVhZGluZyB0
aGUgZGF0YSwgVVYgYXJlIGluIG9uZSBwbGFuZSBmb3IgTlYxMiBmb3JtYXQsIHRodXMKKyAgLy8g
eF9jaHJvbWFfc2hpZnQgaXMgMC4gQWZ0ZXIgY29udmVydGluZywgVVYgYXJlIGluIHNlcGFyYXRl
IHBsYW5lcywgYW5kCisgIC8vIHN1YnNhbXBsaW5nX3ggc2hvdWxkIGJlIHNldCB0byAxLgorICBp
ZiAoaW1nLT5mbXQgPT0gVlBYX0lNR19GTVRfTlYxMikgeXYxMi0+c3Vic2FtcGxpbmdfeCA9IDE7
CiAgIHJldHVybiBWUFhfQ09ERUNfT0s7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZwOS92
cDljeC5tayBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOWN4Lm1rCmluZGV4IGFkNzc0NTA1YzYwNzU2YjE3
ZDQ3YWNjYjczMWRlYTg1NzQwMWM2YTMuLjM4ZTk5MTY1YWY0N2Q2MDI1YzliYmMwYmJiNTg4ZDQx
ZjRkMWQxODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnA5L3ZwOWN4Lm1rCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnA5L3ZwOWN4Lm1rCkBAIC0xOCw5ICsxOCw2IEBAIFZQOV9DWF9TUkNTX1JFTU9WRS1u
byAgKz0gJChWUDlfQ09NTU9OX1NSQ1NfUkVNT1ZFLW5vKQogVlA5X0NYX1NSQ1MteWVzICs9IHZw
OV9jeF9pZmFjZS5jCiBWUDlfQ1hfU1JDUy15ZXMgKz0gdnA5X2N4X2lmYWNlLmgKIAotVlA5X0NY
X1NSQ1MtJChDT05GSUdfUkFURV9DVFJMKSArPSBzaW1wbGVfZW5jb2RlLmNjCi1WUDlfQ1hfU1JD
Uy0kKENPTkZJR19SQVRFX0NUUkwpICs9IHNpbXBsZV9lbmNvZGUuaAotCiBWUDlfQ1hfU1JDUy15
ZXMgKz0gZW5jb2Rlci92cDlfYml0c3RyZWFtLmMKIFZQOV9DWF9TUkNTLXllcyArPSBlbmNvZGVy
L3ZwOV9jb250ZXh0X3RyZWUuYwogVlA5X0NYX1NSQ1MteWVzICs9IGVuY29kZXIvdnA5X2NvbnRl
eHRfdHJlZS5oCkBAIC05OSw2ICs5Niw4IEBAIFZQOV9DWF9TUkNTLXllcyArPSBlbmNvZGVyL3Zw
OV9za2luX2RldGVjdGlvbi5jCiBWUDlfQ1hfU1JDUy15ZXMgKz0gZW5jb2Rlci92cDlfc2tpbl9k
ZXRlY3Rpb24uaAogVlA5X0NYX1NSQ1MteWVzICs9IGVuY29kZXIvdnA5X25vaXNlX2VzdGltYXRl
LmMKIFZQOV9DWF9TUkNTLXllcyArPSBlbmNvZGVyL3ZwOV9ub2lzZV9lc3RpbWF0ZS5oCitWUDlf
Q1hfU1JDUy15ZXMgKz0gZW5jb2Rlci92cDlfZXh0X3JhdGVjdHJsLmMKK1ZQOV9DWF9TUkNTLXll
cyArPSBlbmNvZGVyL3ZwOV9leHRfcmF0ZWN0cmwuaAogaWZlcSAoJChDT05GSUdfVlA5X1BPU1RQ
Uk9DKSx5ZXMpCiBWUDlfQ1hfU1JDUy0kKENPTkZJR19JTlRFUk5BTF9TVEFUUykgKz0gY29tbW9u
L3ZwOV9wb3N0cHJvYy5oCiBWUDlfQ1hfU1JDUy0kKENPTkZJR19JTlRFUk5BTF9TVEFUUykgKz0g
Y29tbW9uL3ZwOV9wb3N0cHJvYy5jCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9pbnRlcm5h
bC92cHhfY29kZWNfaW50ZXJuYWwuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L2ludGVybmFsL3ZweF9jb2Rl
Y19pbnRlcm5hbC5oCmluZGV4IDllZWQ4NWU1ZGU3ZDFiMjcwMjI2MDg4NGFiMjVmYTU4NjBjOGMx
NWIuLjRlZjkzMDU3ZjVlYmMwYTY2ZTA0YTY2MGJkY2E1MWViMGY2Yzg4M2QgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4L2ludGVybmFsL3ZweF9jb2RlY19pbnRlcm5hbC5oCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4L2ludGVybmFsL3ZweF9jb2RlY19pbnRlcm5hbC5oCkBAIC0yNywxMyArMjcsMTUg
QEAKICAqICAgICA8L3ByZT4KICAqCiAgKiBBbiBhcHBsaWNhdGlvbiBpbnN0YW50aWF0ZXMgYSBz
cGVjaWZpYyBkZWNvZGVyIGluc3RhbmNlIGJ5IHVzaW5nCi0gKiB2cHhfY29kZWNfaW5pdCgpIGFu
ZCBhIHBvaW50ZXIgdG8gdGhlIGFsZ29yaXRobSdzIGludGVyZmFjZSBzdHJ1Y3R1cmU6CisgKiB2
cHhfY29kZWNfZGVjX2luaXQoKSBhbmQgYSBwb2ludGVyIHRvIHRoZSBhbGdvcml0aG0ncyBpbnRl
cmZhY2Ugc3RydWN0dXJlOgogICogICAgIDxwcmU+CiAgKiAgICAgbXlfYXBwLmM6CiAgKiAgICAg
ICBleHRlcm4gdnB4X2NvZGVjX2lmYWNlX3QgbXlfY29kZWM7CiAgKiAgICAgICB7CiAgKiAgICAg
ICAgICAgdnB4X2NvZGVjX2N0eF90IGFsZ287Ci0gKiAgICAgICAgICAgcmVzID0gdnB4X2NvZGVj
X2luaXQoJmFsZ28sICZteV9jb2RlYyk7CisgKiAgICAgICAgICAgaW50IHRocmVhZHMgPSA0Owor
ICogICAgICAgICAgIHZweF9jb2RlY19kZWNfY2ZnX3QgY2ZnID0geyB0aHJlYWRzLCAwLCAwIH07
CisgKiAgICAgICAgICAgcmVzID0gdnB4X2NvZGVjX2RlY19pbml0KCZhbGdvLCAmbXlfY29kZWMs
ICZjZmcsIDApOwogICogICAgICAgfQogICogICAgIDwvcHJlPgogICoKQEAgLTY2LDcgKzY4LDcg
QEAgdHlwZWRlZiBzdHJ1Y3QgdnB4X2NvZGVjX3ByaXZfZW5jX21yX2NmZyB2cHhfY29kZWNfcHJp
dl9lbmNfbXJfY2ZnX3Q7CiAvKiFcYnJpZWYgaW5pdCBmdW5jdGlvbiBwb2ludGVyIHByb3RvdHlw
ZQogICoKICAqIFBlcmZvcm1zIGFsZ29yaXRobS1zcGVjaWZpYyBpbml0aWFsaXphdGlvbiBvZiB0
aGUgZGVjb2RlciBjb250ZXh0LiBUaGlzCi0gKiBmdW5jdGlvbiBpcyBjYWxsZWQgYnkgdGhlIGdl
bmVyaWMgdnB4X2NvZGVjX2luaXQoKSB3cmFwcGVyIGZ1bmN0aW9uLCBzbworICogZnVuY3Rpb24g
aXMgY2FsbGVkIGJ5IHZweF9jb2RlY19kZWNfaW5pdCgpIGFuZCB2cHhfY29kZWNfZW5jX2luaXQo
KSwgc28KICAqIHBsdWdpbnMgaW1wbGVtZW50aW5nIHRoaXMgaW50ZXJmYWNlIG1heSB0cnVzdCB0
aGUgaW5wdXQgcGFyYW1ldGVycyB0byBiZQogICogcHJvcGVybHkgaW5pdGlhbGl6ZWQuCiAgKgpA
QCAtMTc1LDE2ICsxNzcsMTUgQEAgdHlwZWRlZiBjb25zdCBzdHJ1Y3QgdnB4X2NvZGVjX2N0cmxf
Zm5fbWFwIHsKIC8qIVxicmllZiBkZWNvZGUgZGF0YSBmdW5jdGlvbiBwb2ludGVyIHByb3RvdHlw
ZQogICoKICAqIFByb2Nlc3NlcyBhIGJ1ZmZlciBvZiBjb2RlZCBkYXRhLiBJZiB0aGUgcHJvY2Vz
c2luZyByZXN1bHRzIGluIGEgbmV3Ci0gKiBkZWNvZGVkIGZyYW1lIGJlY29taW5nIGF2YWlsYWJs
ZSwgI1ZQWF9DT0RFQ19DQl9QVVRfU0xJQ0UgYW5kCi0gKiAjVlBYX0NPREVDX0NCX1BVVF9GUkFN
RSBldmVudHMgYXJlIGdlbmVyYXRlZCBhcyBhcHByb3ByaWF0ZS4gVGhpcwotICogZnVuY3Rpb24g
aXMgY2FsbGVkIGJ5IHRoZSBnZW5lcmljIHZweF9jb2RlY19kZWNvZGUoKSB3cmFwcGVyIGZ1bmN0
aW9uLAotICogc28gcGx1Z2lucyBpbXBsZW1lbnRpbmcgdGhpcyBpbnRlcmZhY2UgbWF5IHRydXN0
IHRoZSBpbnB1dCBwYXJhbWV0ZXJzCi0gKiB0byBiZSBwcm9wZXJseSBpbml0aWFsaXplZC4KKyAq
IGRlY29kZWQgZnJhbWUgYmVjb21pbmcgYXZhaWxhYmxlLCBwdXRfc2xpY2UgYW5kIHB1dF9mcmFt
ZSBjYWxsYmFja3MKKyAqIGFyZSBpbnZva2VkIGFzIGFwcHJvcHJpYXRlLiBUaGlzIGZ1bmN0aW9u
IGlzIGNhbGxlZCBieSB0aGUgZ2VuZXJpYworICogdnB4X2NvZGVjX2RlY29kZSgpIHdyYXBwZXIg
ZnVuY3Rpb24sIHNvIHBsdWdpbnMgaW1wbGVtZW50aW5nIHRoaXMKKyAqIGludGVyZmFjZSBtYXkg
dHJ1c3QgdGhlIGlucHV0IHBhcmFtZXRlcnMgdG8gYmUgcHJvcGVybHkgaW5pdGlhbGl6ZWQuCiAg
KgogICogXHBhcmFtW2luXSBjdHggICAgICAgICAgUG9pbnRlciB0byB0aGlzIGluc3RhbmNlJ3Mg
Y29udGV4dAogICogXHBhcmFtW2luXSBkYXRhICAgICAgICAgUG9pbnRlciB0byB0aGlzIGJsb2Nr
IG9mIG5ldyBjb2RlZCBkYXRhLiBJZgotICogICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwg
YSAjVlBYX0NPREVDX0NCX1BVVF9GUkFNRSBldmVudCBpcyBwb3N0ZWQKLSAqICAgICAgICAgICAg
ICAgICAgICAgICAgIGZvciB0aGUgcHJldmlvdXNseSBkZWNvZGVkIGZyYW1lLgorICogICAgICAg
ICAgICAgICAgICAgICAgICAgTlVMTCwgdGhlIHB1dF9mcmFtZSBjYWxsYmFjayBpcyBpbnZva2Vk
IGZvcgorICogICAgICAgICAgICAgICAgICAgICAgICAgdGhlIHByZXZpb3VzbHkgZGVjb2RlZCBm
cmFtZS4KICAqIFxwYXJhbVtpbl0gZGF0YV9zeiAgICAgIFNpemUgb2YgdGhlIGNvZGVkIGRhdGEs
IGluIGJ5dGVzLgogICoKICAqIFxyZXR1cm4gUmV0dXJucyAjVlBYX0NPREVDX09LIGlmIHRoZSBj
b2RlZCBkYXRhIHdhcyBwcm9jZXNzZWQgY29tcGxldGVseQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvc3JjL3ZweF9jb2RlYy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9jb2RlYy5jCmlu
ZGV4IDEwMzMxYWEyMWIwMWY0Njc4YTEyMzU5NjIzODhmZjYxMDhiMTEyN2YuLjExNGI5NGUxOTRi
ZTY1ZTFlYjNjYmIzNDQ2ZjkzNjI3MmQ4NGViNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
L3NyYy92cHhfY29kZWMuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2NvZGVjLmMKQEAg
LTk3LDcgKzk3LDcgQEAgdnB4X2NvZGVjX2Vycl90IHZweF9jb2RlY19jb250cm9sXyh2cHhfY29k
ZWNfY3R4X3QgKmN0eCwgaW50IGN0cmxfaWQsIC4uLikgewogCiAgICAgcmVzID0gVlBYX0NPREVD
X0lOQ0FQQUJMRTsKIAotICAgIGZvciAoZW50cnkgPSBjdHgtPmlmYWNlLT5jdHJsX21hcHM7IGVu
dHJ5ICYmIGVudHJ5LT5mbjsgZW50cnkrKykgeworICAgIGZvciAoZW50cnkgPSBjdHgtPmlmYWNl
LT5jdHJsX21hcHM7IGVudHJ5LT5mbjsgZW50cnkrKykgewogICAgICAgaWYgKCFlbnRyeS0+Y3Ry
bF9pZCB8fCBlbnRyeS0+Y3RybF9pZCA9PSBjdHJsX2lkKSB7CiAgICAgICAgIHZhX2xpc3QgYXA7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfZGVjb2Rlci5jIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xp
YnZweC92cHgvc3JjL3ZweF9kZWNvZGVyLmMKaW5kZXggZmMxYzJiY2NhZTc3ZjUwNjdjMjZiZDQ0
YWY2NmUzMTZkODkwOGZiZC4uNDI3Y2QxYmY0MzQxNjdmY2JmZDA5YTRhOWIwMTczNzVkODJmNWJj
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9kZWNvZGVyLmMKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC92cHgvc3JjL3ZweF9kZWNvZGVyLmMKQEAgLTEzOCw5ICsxMzgsMTAgQEAgdnB4X2Nv
ZGVjX2Vycl90IHZweF9jb2RlY19yZWdpc3Rlcl9wdXRfZnJhbWVfY2IodnB4X2NvZGVjX2N0eF90
ICpjdHgsCiAKICAgaWYgKCFjdHggfHwgIWNiKQogICAgIHJlcyA9IFZQWF9DT0RFQ19JTlZBTElE
X1BBUkFNOwotICBlbHNlIGlmICghY3R4LT5pZmFjZSB8fCAhY3R4LT5wcml2IHx8Ci0gICAgICAg
ICAgICEoY3R4LT5pZmFjZS0+Y2FwcyAmIFZQWF9DT0RFQ19DQVBfUFVUX0ZSQU1FKSkKKyAgZWxz
ZSBpZiAoIWN0eC0+aWZhY2UgfHwgIWN0eC0+cHJpdikKICAgICByZXMgPSBWUFhfQ09ERUNfRVJS
T1I7CisgIGVsc2UgaWYgKCEoY3R4LT5pZmFjZS0+Y2FwcyAmIFZQWF9DT0RFQ19DQVBfUFVUX0ZS
QU1FKSkKKyAgICByZXMgPSBWUFhfQ09ERUNfSU5DQVBBQkxFOwogICBlbHNlIHsKICAgICBjdHgt
PnByaXYtPmRlYy5wdXRfZnJhbWVfY2IudS5wdXRfZnJhbWUgPSBjYjsKICAgICBjdHgtPnByaXYt
PmRlYy5wdXRfZnJhbWVfY2IudXNlcl9wcml2ID0gdXNlcl9wcml2OwpAQCAtMTU3LDkgKzE1OCwx
MCBAQCB2cHhfY29kZWNfZXJyX3QgdnB4X2NvZGVjX3JlZ2lzdGVyX3B1dF9zbGljZV9jYih2cHhf
Y29kZWNfY3R4X3QgKmN0eCwKIAogICBpZiAoIWN0eCB8fCAhY2IpCiAgICAgcmVzID0gVlBYX0NP
REVDX0lOVkFMSURfUEFSQU07Ci0gIGVsc2UgaWYgKCFjdHgtPmlmYWNlIHx8ICFjdHgtPnByaXYg
fHwKLSAgICAgICAgICAgIShjdHgtPmlmYWNlLT5jYXBzICYgVlBYX0NPREVDX0NBUF9QVVRfU0xJ
Q0UpKQorICBlbHNlIGlmICghY3R4LT5pZmFjZSB8fCAhY3R4LT5wcml2KQogICAgIHJlcyA9IFZQ
WF9DT0RFQ19FUlJPUjsKKyAgZWxzZSBpZiAoIShjdHgtPmlmYWNlLT5jYXBzICYgVlBYX0NPREVD
X0NBUF9QVVRfU0xJQ0UpKQorICAgIHJlcyA9IFZQWF9DT0RFQ19JTkNBUEFCTEU7CiAgIGVsc2Ug
ewogICAgIGN0eC0+cHJpdi0+ZGVjLnB1dF9zbGljZV9jYi51LnB1dF9zbGljZSA9IGNiOwogICAg
IGN0eC0+cHJpdi0+ZGVjLnB1dF9zbGljZV9jYi51c2VyX3ByaXYgPSB1c2VyX3ByaXY7CkBAIC0x
NzYsOSArMTc4LDEwIEBAIHZweF9jb2RlY19lcnJfdCB2cHhfY29kZWNfc2V0X2ZyYW1lX2J1ZmZl
cl9mdW5jdGlvbnMoCiAKICAgaWYgKCFjdHggfHwgIWNiX2dldCB8fCAhY2JfcmVsZWFzZSkgewog
ICAgIHJlcyA9IFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNOwotICB9IGVsc2UgaWYgKCFjdHgtPmlm
YWNlIHx8ICFjdHgtPnByaXYgfHwKLSAgICAgICAgICAgICAhKGN0eC0+aWZhY2UtPmNhcHMgJiBW
UFhfQ09ERUNfQ0FQX0VYVEVSTkFMX0ZSQU1FX0JVRkZFUikpIHsKKyAgfSBlbHNlIGlmICghY3R4
LT5pZmFjZSB8fCAhY3R4LT5wcml2KSB7CiAgICAgcmVzID0gVlBYX0NPREVDX0VSUk9SOworICB9
IGVsc2UgaWYgKCEoY3R4LT5pZmFjZS0+Y2FwcyAmIFZQWF9DT0RFQ19DQVBfRVhURVJOQUxfRlJB
TUVfQlVGRkVSKSkgeworICAgIHJlcyA9IFZQWF9DT0RFQ19JTkNBUEFCTEU7CiAgIH0gZWxzZSB7
CiAgICAgcmVzID0gY3R4LT5pZmFjZS0+ZGVjLnNldF9mYl9mbihnZXRfYWxnX3ByaXYoY3R4KSwg
Y2JfZ2V0LCBjYl9yZWxlYXNlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y2JfcHJpdik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC9zcmMvdnB4X2VuY29kZXIuYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfZW5jb2Rlci5jCmluZGV4IDYyNzI1MDJjZWQxNmRjNzBl
ZjZiZTdiZWNlMzJhMTQxZjI5MmJlZWEuLmY2MzZiNTRhMzM0OTJkZWZjODU5MTU5YzhjOTgwMTMz
NzZjMzBkZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfZW5jb2Rlci5jCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4
L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfZW5jb2Rlci5jCkBAIC0xNTIsMjIgKzE1MiwxNSBA
QCB2cHhfY29kZWNfZXJyX3QgdnB4X2NvZGVjX2VuY19jb25maWdfZGVmYXVsdCh2cHhfY29kZWNf
aWZhY2VfdCAqaWZhY2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB2cHhfY29kZWNfZW5jX2NmZ190ICpjZmcsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgdXNhZ2UpIHsKICAgdnB4X2NvZGVjX2Vy
cl90IHJlczsKLSAgdnB4X2NvZGVjX2VuY19jZmdfbWFwX3QgKm1hcDsKLSAgaW50IGk7CiAKICAg
aWYgKCFpZmFjZSB8fCAhY2ZnIHx8IHVzYWdlICE9IDApCiAgICAgcmVzID0gVlBYX0NPREVDX0lO
VkFMSURfUEFSQU07CiAgIGVsc2UgaWYgKCEoaWZhY2UtPmNhcHMgJiBWUFhfQ09ERUNfQ0FQX0VO
Q09ERVIpKQogICAgIHJlcyA9IFZQWF9DT0RFQ19JTkNBUEFCTEU7CiAgIGVsc2UgewotICAgIHJl
cyA9IFZQWF9DT0RFQ19JTlZBTElEX1BBUkFNOwotCi0gICAgZm9yIChpID0gMDsgaSA8IGlmYWNl
LT5lbmMuY2ZnX21hcF9jb3VudDsgKytpKSB7Ci0gICAgICBtYXAgPSBpZmFjZS0+ZW5jLmNmZ19t
YXBzICsgaTsKLSAgICAgICpjZmcgPSBtYXAtPmNmZzsKLSAgICAgIHJlcyA9IFZQWF9DT0RFQ19P
SzsKLSAgICAgIGJyZWFrOwotICAgIH0KKyAgICBhc3NlcnQoaWZhY2UtPmVuYy5jZmdfbWFwX2Nv
dW50ID09IDEpOworICAgICpjZmcgPSBpZmFjZS0+ZW5jLmNmZ19tYXBzLT5jZmc7CisgICAgcmVz
ID0gVlBYX0NPREVDX09LOwogICB9CiAKICAgcmV0dXJuIHJlczsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4L3NyYy92cHhfaW1hZ2UuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3NyYy92cHhfaW1hZ2Uu
YwppbmRleCBhN2M2ZWMwY2VhYmY3NTgxN2ZjZDE4NTg0ZjZkNTZkMWUwOTA2ZjYyLi5mZjQ5NmI1
ZDM0ZjE0MzgxMDQyOGE5YWE4N2I0YzA3MjE1M2ZmZGVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweC9zcmMvdnB4X2ltYWdlLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvc3JjL3ZweF9pbWFnZS5j
CkBAIC0zOSw3ICszOSw4IEBAIHN0YXRpYyB2cHhfaW1hZ2VfdCAqaW1nX2FsbG9jX2hlbHBlcih2
cHhfaW1hZ2VfdCAqaW1nLCB2cHhfaW1nX2ZtdF90IGZtdCwKICAgLyogR2V0IHNhbXBsZSBzaXpl
IGZvciB0aGlzIGZvcm1hdCAqLwogICBzd2l0Y2ggKGZtdCkgewogICAgIGNhc2UgVlBYX0lNR19G
TVRfSTQyMDoKLSAgICBjYXNlIFZQWF9JTUdfRk1UX1lWMTI6IGJwcyA9IDEyOyBicmVhazsKKyAg
ICBjYXNlIFZQWF9JTUdfRk1UX1lWMTI6CisgICAgY2FzZSBWUFhfSU1HX0ZNVF9OVjEyOiBicHMg
PSAxMjsgYnJlYWs7CiAgICAgY2FzZSBWUFhfSU1HX0ZNVF9JNDIyOgogICAgIGNhc2UgVlBYX0lN
R19GTVRfSTQ0MDogYnBzID0gMTY7IGJyZWFrOwogICAgIGNhc2UgVlBYX0lNR19GTVRfSTQ0NDog
YnBzID0gMjQ7IGJyZWFrOwpAQCAtNTEsNiArNTIsOCBAQCBzdGF0aWMgdnB4X2ltYWdlX3QgKmlt
Z19hbGxvY19oZWxwZXIodnB4X2ltYWdlX3QgKmltZywgdnB4X2ltZ19mbXRfdCBmbXQsCiAgIH0K
IAogICAvKiBHZXQgY2hyb21hIHNoaWZ0IHZhbHVlcyBmb3IgdGhpcyBmb3JtYXQgKi8KKyAgLy8g
Rm9yIFZQWF9JTUdfRk1UX05WMTIsIHhjcyBuZWVkcyB0byBiZSAwIHN1Y2ggdGhhdCBVViBkYXRh
IGlzIGFsbCByZWFkIGF0CisgIC8vIG9uZSB0aW1lLgogICBzd2l0Y2ggKGZtdCkgewogICAgIGNh
c2UgVlBYX0lNR19GTVRfSTQyMDoKICAgICBjYXNlIFZQWF9JTUdfRk1UX1lWMTI6CkBAIC02Miw2
ICs2NSw3IEBAIHN0YXRpYyB2cHhfaW1hZ2VfdCAqaW1nX2FsbG9jX2hlbHBlcih2cHhfaW1hZ2Vf
dCAqaW1nLCB2cHhfaW1nX2ZtdF90IGZtdCwKIAogICBzd2l0Y2ggKGZtdCkgewogICAgIGNhc2Ug
VlBYX0lNR19GTVRfSTQyMDoKKyAgICBjYXNlIFZQWF9JTUdfRk1UX05WMTI6CiAgICAgY2FzZSBW
UFhfSU1HX0ZNVF9JNDQwOgogICAgIGNhc2UgVlBYX0lNR19GTVRfWVYxMjoKICAgICBjYXNlIFZQ
WF9JTUdfRk1UX0k0MjAxNjoKQEAgLTE3Myw3ICsxNzcsMTIgQEAgaW50IHZweF9pbWdfc2V0X3Jl
Y3QodnB4X2ltYWdlX3QgKmltZywgdW5zaWduZWQgaW50IHgsIHVuc2lnbmVkIGludCB5LAogICAg
ICAgICAgIGRhdGEgKyB4ICogYnl0ZXNfcGVyX3NhbXBsZSArIHkgKiBpbWctPnN0cmlkZVtWUFhf
UExBTkVfWV07CiAgICAgICBkYXRhICs9IGltZy0+aCAqIGltZy0+c3RyaWRlW1ZQWF9QTEFORV9Z
XTsKIAotICAgICAgaWYgKCEoaW1nLT5mbXQgJiBWUFhfSU1HX0ZNVF9VVl9GTElQKSkgeworICAg
ICAgaWYgKGltZy0+Zm10ID09IFZQWF9JTUdfRk1UX05WMTIpIHsKKyAgICAgICAgaW1nLT5wbGFu
ZXNbVlBYX1BMQU5FX1VdID0KKyAgICAgICAgICAgIGRhdGEgKyAoeCA+PiBpbWctPnhfY2hyb21h
X3NoaWZ0KSArCisgICAgICAgICAgICAoeSA+PiBpbWctPnlfY2hyb21hX3NoaWZ0KSAqIGltZy0+
c3RyaWRlW1ZQWF9QTEFORV9VXTsKKyAgICAgICAgaW1nLT5wbGFuZXNbVlBYX1BMQU5FX1ZdID0g
aW1nLT5wbGFuZXNbVlBYX1BMQU5FX1VdICsgMTsKKyAgICAgIH0gZWxzZSBpZiAoIShpbWctPmZt
dCAmIFZQWF9JTUdfRk1UX1VWX0ZMSVApKSB7CiAgICAgICAgIGltZy0+cGxhbmVzW1ZQWF9QTEFO
RV9VXSA9CiAgICAgICAgICAgICBkYXRhICsgKHggPj4gaW1nLT54X2Nocm9tYV9zaGlmdCkgKiBi
eXRlc19wZXJfc2FtcGxlICsKICAgICAgICAgICAgICh5ID4+IGltZy0+eV9jaHJvbWFfc2hpZnQp
ICogaW1nLT5zdHJpZGVbVlBYX1BMQU5FX1VdOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgv
dnA4Y3guaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZwOGN4LmgKaW5kZXggZGNkZDcxMGMwYmExYTE2MWVm
ODIxOGJiYzZmYTU4MTJmNzBkOWVjZS4uMzdhZDA3ZDMzZDlhY2Q4NDJmZTQwZTMyMmY3ZjIyZTkw
ZmVmNmM3MyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnA4Y3guaAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC92cDhjeC5oCkBAIC0xNyw2ICsxNyw3IEBACiAgKi8KICNpbmNsdWRlICIuL3ZwOC5o
IgogI2luY2x1ZGUgIi4vdnB4X2VuY29kZXIuaCIKKyNpbmNsdWRlICIuL3ZweF9leHRfcmF0ZWN0
cmwuaCIKIAogLyohXGZpbGUKICAqIFxicmllZiBQcm92aWRlcyBkZWZpbml0aW9ucyBmb3IgdXNp
bmcgVlA4IG9yIFZQOSBlbmNvZGVyIGFsZ29yaXRobSB3aXRoaW4gdGhlCkBAIC02ODQsNiArNjg1
LDMzIEBAIGVudW0gdnA4ZV9lbmNfY29udHJvbF9pZCB7CiAgICAqIFN1cHBvcnRlZCBpbiBjb2Rl
Y3M6IFZQOQogICAgKi8KICAgVlA5RV9TRVRfREVMVEFfUV9VViwKKworICAvKiFcYnJpZWYgQ29k
ZWMgY29udHJvbCBmdW5jdGlvbiB0byBkaXNhYmxlIGluY3JlYXNlIFEgb24gb3ZlcnNob290IGlu
IENCUi4KKyAgICoKKyAgICogMDogT24gKGRlZmF1bHQpLCAxOiBEaXNhYmxlLgorICAgKgorICAg
KiBTdXBwb3J0ZWQgaW4gY29kZWNzOiBWUDkKKyAgICovCisgIFZQOUVfU0VUX0RJU0FCTEVfT1ZF
UlNIT09UX01BWFFfQ0JSLAorCisgIC8qIVxicmllZiBDb2RlYyBjb250cm9sIGZ1bmN0aW9uIHRv
IGRpc2FibGUgbG9vcGZpbHRlci4KKyAgICoKKyAgICogMDogTG9vcGZpbHRlciBvbiBhbGwgZnJh
bWVzLCAxOiBEaXNhYmxlIG9uIG5vbiByZWZlcmVuY2UgZnJhbWVzLgorICAgKiAyOiBEaXNhYmxl
IG9uIGFsbCBmcmFtZXMuCisgICAqCisgICAqIFN1cHBvcnRlZCBpbiBjb2RlY3M6IFZQOQorICAg
Ki8KKyAgVlA5RV9TRVRfRElTQUJMRV9MT09QRklMVEVSLAorCisgIC8qIVxicmllZiBDb2RlYyBj
b250cm9sIGZ1bmN0aW9uIHRvIGVuYWJsZSBleHRlcm5hbCByYXRlIGNvbnRyb2wgbGlicmFyeS4K
KyAgICoKKyAgICogYXJnc1swXTogcGF0aCBvZiB0aGUgcmF0ZSBjb250cm9sIGxpYnJhcnkKKyAg
ICoKKyAgICogYXJnc1sxXTogcHJpdmF0ZSBjb25maWcgb2YgdGhlIHJhdGUgY29udHJvbCBsaWJy
YXJ5CisgICAqCisgICAqIFN1cHBvcnRlZCBpbiBjb2RlY3M6IFZQOQorICAgKi8KKyAgVlA5RV9T
RVRfRVhURVJOQUxfUkFURV9DT05UUk9MLAogfTsKIAogLyohXGJyaWVmIHZweCAxLUQgc2NhbGlu
ZyBtb2RlCkBAIC0xMDM0LDYgKzEwNjIsMTUgQEAgVlBYX0NUUkxfVVNFX1RZUEUoVlA5RV9TRVRf
UE9TVEVOQ09ERV9EUk9QLCB1bnNpZ25lZCBpbnQpCiBWUFhfQ1RSTF9VU0VfVFlQRShWUDlFX1NF
VF9ERUxUQV9RX1VWLCBpbnQpCiAjZGVmaW5lIFZQWF9DVFJMX1ZQOUVfU0VUX0RFTFRBX1FfVVYK
IAorVlBYX0NUUkxfVVNFX1RZUEUoVlA5RV9TRVRfRElTQUJMRV9PVkVSU0hPT1RfTUFYUV9DQlIs
IGludCkKKyNkZWZpbmUgVlBYX0NUUkxfVlA5RV9TRVRfRElTQUJMRV9PVkVSU0hPT1RfTUFYUV9D
QlIKKworVlBYX0NUUkxfVVNFX1RZUEUoVlA5RV9TRVRfRElTQUJMRV9MT09QRklMVEVSLCBpbnQp
CisjZGVmaW5lIFZQWF9DVFJMX1ZQOUVfU0VUX0RJU0FCTEVfTE9PUEZJTFRFUgorCitWUFhfQ1RS
TF9VU0VfVFlQRShWUDlFX1NFVF9FWFRFUk5BTF9SQVRFX0NPTlRST0wsIHZweF9yY19mdW5jc190
ICopCisjZGVmaW5lIFZQWF9DVFJMX1ZQOUVfU0VUX0VYVEVSTkFMX1JBVEVfQ09OVFJPTAorCiAv
KiFcZW5kY29uZCAqLwogLyohIEB9IC0gZW5kIGRlZmdyb3VwIHZwOF9lbmNvZGVyICovCiAjaWZk
ZWYgX19jcGx1c3BsdXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9jb2RlYy5oIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHgvdnB4X2NvZGVjLmgKaW5kZXggNjM3MWE2Y2EyODEyNjU0NTZiY2E4ZDM0
ZmFhZjBiOTQ1NDJhNTk5NC4uYjBhOTMxZTAxOTFhMmIwZWE4MzM4ZmZmZGU0ZTM3NjExNmVlMGYw
MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2NvZGVjLmgKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHgvdnB4X2NvZGVjLmgKQEAgLTIyLDEzICsyMiwxNiBAQAogICogdmlkZW8gY29kZWMgYWxn
b3JpdGhtLgogICoKICAqIEFuIGFwcGxpY2F0aW9uIGluc3RhbnRpYXRlcyBhIHNwZWNpZmljIGNv
ZGVjIGluc3RhbmNlIGJ5IHVzaW5nCi0gKiB2cHhfY29kZWNfaW5pdCgpIGFuZCBhIHBvaW50ZXIg
dG8gdGhlIGFsZ29yaXRobSdzIGludGVyZmFjZSBzdHJ1Y3R1cmU6CisgKiB2cHhfY29kZWNfZGVj
X2luaXQoKSBvciB2cHhfY29kZWNfZW5jX2luaXQoKSBhbmQgYSBwb2ludGVyIHRvIHRoZQorICog
YWxnb3JpdGhtJ3MgaW50ZXJmYWNlIHN0cnVjdHVyZToKICAqICAgICA8cHJlPgogICogICAgIG15
X2FwcC5jOgogICogICAgICAgZXh0ZXJuIHZweF9jb2RlY19pZmFjZV90IG15X2NvZGVjOwogICog
ICAgICAgewogICogICAgICAgICAgIHZweF9jb2RlY19jdHhfdCBhbGdvOwotICogICAgICAgICAg
IHJlcyA9IHZweF9jb2RlY19pbml0KCZhbGdvLCAmbXlfY29kZWMpOworICogICAgICAgICAgIGlu
dCB0aHJlYWRzID0gNDsKKyAqICAgICAgICAgICB2cHhfY29kZWNfZGVjX2NmZ190IGNmZyA9IHsg
dGhyZWFkcywgMCwgMCB9OworICogICAgICAgICAgIHJlcyA9IHZweF9jb2RlY19kZWNfaW5pdCgm
YWxnbywgJm15X2NvZGVjLCAmY2ZnLCAwKTsKICAqICAgICAgIH0KICAqICAgICA8L3ByZT4KICAq
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfY29kZWMubWsgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eC92cHhfY29kZWMubWsKaW5kZXggNGVkNzdhZDZkOWRmZmNiYTBjNWU1YjM4MThkMThmMmRkMWMx
OWI5ZS4uMzUwZGMyNDdiYzRkMGIwYjA0Mjk2NTdkY2U1OGI5NzJlY2RjNmY4ZiAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHgvdnB4X2NvZGVjLm1rCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9j
b2RlYy5tawpAQCAtMjQsNiArMjQsNyBAQCBBUElfRE9DX1NSQ1MtJChDT05GSUdfVlA4X0RFQ09E
RVIpICs9IHZwOGR4LmgKIEFQSV9ET0NfU1JDUy15ZXMgKz0gdnB4X2NvZGVjLmgKIEFQSV9ET0Nf
U1JDUy15ZXMgKz0gdnB4X2RlY29kZXIuaAogQVBJX0RPQ19TUkNTLXllcyArPSB2cHhfZW5jb2Rl
ci5oCitBUElfRE9DX1NSQ1MteWVzICs9IHZweF9leHRfcmF0ZWN0cmwuaAogQVBJX0RPQ19TUkNT
LXllcyArPSB2cHhfZnJhbWVfYnVmZmVyLmgKIEFQSV9ET0NfU1JDUy15ZXMgKz0gdnB4X2ltYWdl
LmgKIApAQCAtMzksMyArNDAsNCBAQCBBUElfU1JDUy15ZXMgKz0gdnB4X2NvZGVjLm1rCiBBUElf
U1JDUy15ZXMgKz0gdnB4X2ZyYW1lX2J1ZmZlci5oCiBBUElfU1JDUy15ZXMgKz0gdnB4X2ltYWdl
LmgKIEFQSV9TUkNTLXllcyArPSB2cHhfaW50ZWdlci5oCitBUElfU1JDUy15ZXMgKz0gdnB4X2V4
dF9yYXRlY3RybC5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZGVjb2Rlci5oIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHgvdnB4X2RlY29kZXIuaAppbmRleCBmMTEzZjcxOTZiNmE3NmI1ODE0ZGE3
OWU5NzQ4MzA5MGI2NDE0ZTY4Li4zOWU1ZjU4NWY2YjliNmU2MzVkMjRlOWI1MjdjMTU4Y2UwOTQy
OGYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfZGVjb2Rlci5oCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4L3ZweF9kZWNvZGVyLmgKQEAgLTU4LDYgKzU4LDEwIEBAIGV4dGVybiAiQyIgewog
I2RlZmluZSBWUFhfQ09ERUNfQ0FQX0VSUk9SX0NPTkNFQUxNRU5UIDB4ODAwMDAKIC8qIVxicmll
ZiBDYW4gcmVjZWl2ZSBlbmNvZGVkIGZyYW1lcyBvbmUgZnJhZ21lbnQgYXQgYSB0aW1lICovCiAj
ZGVmaW5lIFZQWF9DT0RFQ19DQVBfSU5QVVRfRlJBR01FTlRTIDB4MTAwMDAwCisvKiFcYnJpZWYg
Q2FuIHN1cHBvcnQgZnJhbWUtYmFzZWQgbXVsdGktdGhyZWFkaW5nICovCisjZGVmaW5lIFZQWF9D
T0RFQ19DQVBfRlJBTUVfVEhSRUFESU5HIDB4MjAwMDAwCisvKiFicmllZiBDYW4gc3VwcG9ydCBl
eHRlcm5hbCBmcmFtZSBidWZmZXJzICovCisjZGVmaW5lIFZQWF9DT0RFQ19DQVBfRVhURVJOQUxf
RlJBTUVfQlVGRkVSIDB4NDAwMDAwCiAKIC8qISBcYnJpZWYgSW5pdGlhbGl6YXRpb24tdGltZSBG
ZWF0dXJlIEVuYWJsaW5nCiAgKgpAQCAtNjYsMTEgKzcwLDYgQEAgZXh0ZXJuICJDIiB7CiAgKgog
ICogIFRoZSBhdmFpbGFibGUgZmxhZ3MgYXJlIHNwZWNpZmllZCBieSBWUFhfQ09ERUNfVVNFXyog
ZGVmaW5lcy4KICAqLwotLyohXGJyaWVmIENhbiBzdXBwb3J0IGZyYW1lLWJhc2VkIG11bHRpLXRo
cmVhZGluZyAqLwotI2RlZmluZSBWUFhfQ09ERUNfQ0FQX0ZSQU1FX1RIUkVBRElORyAweDIwMDAw
MAotLyohYnJpZWYgQ2FuIHN1cHBvcnQgZXh0ZXJuYWwgZnJhbWUgYnVmZmVycyAqLwotI2RlZmlu
ZSBWUFhfQ09ERUNfQ0FQX0VYVEVSTkFMX0ZSQU1FX0JVRkZFUiAweDQwMDAwMAotCiAjZGVmaW5l
IFZQWF9DT0RFQ19VU0VfUE9TVFBST0MgMHgxMDAwMCAvKio8IFBvc3Rwcm9jZXNzIGRlY29kZWQg
ZnJhbWUgKi8KIC8qIVxicmllZiBDb25jZWFsIGVycm9ycyBpbiBkZWNvZGVkIGZyYW1lcyAqLwog
I2RlZmluZSBWUFhfQ09ERUNfVVNFX0VSUk9SX0NPTkNFQUxNRU5UIDB4MjAwMDAKQEAgLTE4NSw4
ICsxODQsOCBAQCB2cHhfY29kZWNfZXJyX3QgdnB4X2NvZGVjX2dldF9zdHJlYW1faW5mbyh2cHhf
Y29kZWNfY3R4X3QgKmN0eCwKIC8qIVxicmllZiBEZWNvZGUgZGF0YQogICoKICAqIFByb2Nlc3Nl
cyBhIGJ1ZmZlciBvZiBjb2RlZCBkYXRhLiBJZiB0aGUgcHJvY2Vzc2luZyByZXN1bHRzIGluIGEg
bmV3Ci0gKiBkZWNvZGVkIGZyYW1lIGJlY29taW5nIGF2YWlsYWJsZSwgUFVUX1NMSUNFIGFuZCBQ
VVRfRlJBTUUgZXZlbnRzIG1heSBiZQotICogZ2VuZXJhdGVkLCBhcyBhcHByb3ByaWF0ZS4gRW5j
b2RlZCBkYXRhIFxyZWYgTVVTVCBiZSBwYXNzZWQgaW4gRFRTIChkZWNvZGUKKyAqIGRlY29kZWQg
ZnJhbWUgYmVjb21pbmcgYXZhaWxhYmxlLCBwdXRfc2xpY2UgYW5kIHB1dF9mcmFtZSBjYWxsYmFj
a3MgbWF5IGJlCisgKiBpbnZva2VkLCBhcyBhcHByb3ByaWF0ZS4gRW5jb2RlZCBkYXRhIFxyZWYg
TVVTVCBiZSBwYXNzZWQgaW4gRFRTIChkZWNvZGUKICAqIHRpbWUgc3RhbXApIG9yZGVyLiBGcmFt
ZXMgcHJvZHVjZWQgd2lsbCBhbHdheXMgYmUgaW4gUFRTIChwcmVzZW50YXRpb24KICAqIHRpbWUg
c3RhbXApIG9yZGVyLgogICogSWYgdGhlIGRlY29kZXIgaXMgY29uZmlndXJlZCB3aXRoIFZQWF9D
T0RFQ19VU0VfSU5QVVRfRlJBR01FTlRTIGVuYWJsZWQsCkBAIC0xOTksOCArMTk4LDggQEAgdnB4
X2NvZGVjX2Vycl90IHZweF9jb2RlY19nZXRfc3RyZWFtX2luZm8odnB4X2NvZGVjX2N0eF90ICpj
dHgsCiAgKgogICogXHBhcmFtW2luXSBjdHggICAgICAgICAgUG9pbnRlciB0byB0aGlzIGluc3Rh
bmNlJ3MgY29udGV4dAogICogXHBhcmFtW2luXSBkYXRhICAgICAgICAgUG9pbnRlciB0byB0aGlz
IGJsb2NrIG9mIG5ldyBjb2RlZCBkYXRhLiBJZgotICogICAgICAgICAgICAgICAgICAgICAgICAg
TlVMTCwgYSBWUFhfQ09ERUNfQ0JfUFVUX0ZSQU1FIGV2ZW50IGlzIHBvc3RlZAotICogICAgICAg
ICAgICAgICAgICAgICAgICAgZm9yIHRoZSBwcmV2aW91c2x5IGRlY29kZWQgZnJhbWUuCisgKiAg
ICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCB0aGUgcHV0X2ZyYW1lIGNhbGxiYWNrIGlzIGlu
dm9rZWQgZm9yCisgKiAgICAgICAgICAgICAgICAgICAgICAgICB0aGUgcHJldmlvdXNseSBkZWNv
ZGVkIGZyYW1lLgogICogXHBhcmFtW2luXSBkYXRhX3N6ICAgICAgU2l6ZSBvZiB0aGUgY29kZWQg
ZGF0YSwgaW4gYnl0ZXMuCiAgKiBccGFyYW1baW5dIHVzZXJfcHJpdiAgICBBcHBsaWNhdGlvbiBz
cGVjaWZpYyBkYXRhIHRvIGFzc29jaWF0ZSB3aXRoCiAgKiAgICAgICAgICAgICAgICAgICAgICAg
ICB0aGlzIGZyYW1lLgpAQCAtMjM2LDExICsyMzUsMTAgQEAgdnB4X2ltYWdlX3QgKnZweF9jb2Rl
Y19nZXRfZnJhbWUodnB4X2NvZGVjX2N0eF90ICpjdHgsIHZweF9jb2RlY19pdGVyX3QgKml0ZXIp
OwogCiAvKiFcZGVmZ3JvdXAgY2FwX3B1dF9mcmFtZSBGcmFtZS1CYXNlZCBEZWNvZGluZyBGdW5j
dGlvbnMKICAqCi0gKiBUaGUgZm9sbG93aW5nIGZ1bmN0aW9ucyBhcmUgcmVxdWlyZWQgdG8gYmUg
aW1wbGVtZW50ZWQgZm9yIGFsbCBkZWNvZGVycwotICogdGhhdCBhZHZlcnRpc2UgdGhlIFZQWF9D
T0RFQ19DQVBfUFVUX0ZSQU1FIGNhcGFiaWxpdHkuIENhbGxpbmcgdGhlc2UKLSAqIGZ1bmN0aW9u
cwotICogZm9yIGNvZGVjcyB0aGF0IGRvbid0IGFkdmVydGlzZSB0aGlzIGNhcGFiaWxpdHkgd2ls
bCByZXN1bHQgaW4gYW4gZXJyb3IKLSAqIGNvZGUgYmVpbmcgcmV0dXJuZWQsIHVzdWFsbHkgVlBY
X0NPREVDX0VSUk9SCisgKiBUaGUgZm9sbG93aW5nIGZ1bmN0aW9uIGlzIHJlcXVpcmVkIHRvIGJl
IGltcGxlbWVudGVkIGZvciBhbGwgZGVjb2RlcnMKKyAqIHRoYXQgYWR2ZXJ0aXNlIHRoZSBWUFhf
Q09ERUNfQ0FQX1BVVF9GUkFNRSBjYXBhYmlsaXR5LiBDYWxsaW5nIHRoaXMKKyAqIGZ1bmN0aW9u
IGZvciBjb2RlY3MgdGhhdCBkb24ndCBhZHZlcnRpc2UgdGhpcyBjYXBhYmlsaXR5IHdpbGwgcmVz
dWx0IGluCisgKiBhbiBlcnJvciBjb2RlIGJlaW5nIHJldHVybmVkLCB1c3VhbGx5IFZQWF9DT0RF
Q19JTkNBUEFCTEUuCiAgKiBAewogICovCiAKQEAgLTI2NCw4ICsyNjIsOSBAQCB0eXBlZGVmIHZv
aWQgKCp2cHhfY29kZWNfcHV0X2ZyYW1lX2NiX2ZuX3QpKHZvaWQgKnVzZXJfcHJpdiwKICAqIFxy
ZXR2YWwgI1ZQWF9DT0RFQ19PSwogICogICAgIENhbGxiYWNrIHN1Y2Nlc3NmdWxseSByZWdpc3Rl
cmVkLgogICogXHJldHZhbCAjVlBYX0NPREVDX0VSUk9SCi0gKiAgICAgRGVjb2RlciBjb250ZXh0
IG5vdCBpbml0aWFsaXplZCwgb3IgYWxnb3JpdGhtIG5vdCBjYXBhYmxlIG9mCi0gKiAgICAgcG9z
dGluZyBzbGljZSBjb21wbGV0aW9uLgorICogICAgIERlY29kZXIgY29udGV4dCBub3QgaW5pdGlh
bGl6ZWQuCisgKiBccmV0dmFsICNWUFhfQ09ERUNfSU5DQVBBQkxFCisgKiAgICAgQWxnb3JpdGht
IG5vdCBjYXBhYmxlIG9mIHBvc3RpbmcgZnJhbWUgY29tcGxldGlvbi4KICAqLwogdnB4X2NvZGVj
X2Vycl90IHZweF9jb2RlY19yZWdpc3Rlcl9wdXRfZnJhbWVfY2IodnB4X2NvZGVjX2N0eF90ICpj
dHgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2cHhf
Y29kZWNfcHV0X2ZyYW1lX2NiX2ZuX3QgY2IsCkBAIC0yNzUsMTggKzI3NCwxNyBAQCB2cHhfY29k
ZWNfZXJyX3QgdnB4X2NvZGVjX3JlZ2lzdGVyX3B1dF9mcmFtZV9jYih2cHhfY29kZWNfY3R4X3Qg
KmN0eCwKIAogLyohXGRlZmdyb3VwIGNhcF9wdXRfc2xpY2UgU2xpY2UtQmFzZWQgRGVjb2Rpbmcg
RnVuY3Rpb25zCiAgKgotICogVGhlIGZvbGxvd2luZyBmdW5jdGlvbnMgYXJlIHJlcXVpcmVkIHRv
IGJlIGltcGxlbWVudGVkIGZvciBhbGwgZGVjb2RlcnMKLSAqIHRoYXQgYWR2ZXJ0aXNlIHRoZSBW
UFhfQ09ERUNfQ0FQX1BVVF9TTElDRSBjYXBhYmlsaXR5LiBDYWxsaW5nIHRoZXNlCi0gKiBmdW5j
dGlvbnMKLSAqIGZvciBjb2RlY3MgdGhhdCBkb24ndCBhZHZlcnRpc2UgdGhpcyBjYXBhYmlsaXR5
IHdpbGwgcmVzdWx0IGluIGFuIGVycm9yCi0gKiBjb2RlIGJlaW5nIHJldHVybmVkLCB1c3VhbGx5
IFZQWF9DT0RFQ19FUlJPUgorICogVGhlIGZvbGxvd2luZyBmdW5jdGlvbiBpcyByZXF1aXJlZCB0
byBiZSBpbXBsZW1lbnRlZCBmb3IgYWxsIGRlY29kZXJzCisgKiB0aGF0IGFkdmVydGlzZSB0aGUg
VlBYX0NPREVDX0NBUF9QVVRfU0xJQ0UgY2FwYWJpbGl0eS4gQ2FsbGluZyB0aGlzCisgKiBmdW5j
dGlvbiBmb3IgY29kZWNzIHRoYXQgZG9uJ3QgYWR2ZXJ0aXNlIHRoaXMgY2FwYWJpbGl0eSB3aWxs
IHJlc3VsdCBpbgorICogYW4gZXJyb3IgY29kZSBiZWluZyByZXR1cm5lZCwgdXN1YWxseSBWUFhf
Q09ERUNfSU5DQVBBQkxFLgogICogQHsKICAqLwogCiAvKiFcYnJpZWYgcHV0IHNsaWNlIGNhbGxi
YWNrIHByb3RvdHlwZQogICoKICAqIFRoaXMgY2FsbGJhY2sgaXMgaW52b2tlZCBieSB0aGUgZGVj
b2RlciB0byBub3RpZnkgdGhlIGFwcGxpY2F0aW9uIG9mCi0gKiB0aGUgYXZhaWxhYmlsaXR5IG9m
IHBhcnRpYWxseSBkZWNvZGVkIGltYWdlIGRhdGEuIFRoZQorICogdGhlIGF2YWlsYWJpbGl0eSBv
ZiBwYXJ0aWFsbHkgZGVjb2RlZCBpbWFnZSBkYXRhLgogICovCiB0eXBlZGVmIHZvaWQgKCp2cHhf
Y29kZWNfcHV0X3NsaWNlX2NiX2ZuX3QpKHZvaWQgKnVzZXJfcHJpdiwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdnB4X2ltYWdlX3QgKmltZywKQEAg
LTMwNSw4ICszMDMsOSBAQCB0eXBlZGVmIHZvaWQgKCp2cHhfY29kZWNfcHV0X3NsaWNlX2NiX2Zu
X3QpKHZvaWQgKnVzZXJfcHJpdiwKICAqIFxyZXR2YWwgI1ZQWF9DT0RFQ19PSwogICogICAgIENh
bGxiYWNrIHN1Y2Nlc3NmdWxseSByZWdpc3RlcmVkLgogICogXHJldHZhbCAjVlBYX0NPREVDX0VS
Uk9SCi0gKiAgICAgRGVjb2RlciBjb250ZXh0IG5vdCBpbml0aWFsaXplZCwgb3IgYWxnb3JpdGht
IG5vdCBjYXBhYmxlIG9mCi0gKiAgICAgcG9zdGluZyBzbGljZSBjb21wbGV0aW9uLgorICogICAg
IERlY29kZXIgY29udGV4dCBub3QgaW5pdGlhbGl6ZWQuCisgKiBccmV0dmFsICNWUFhfQ09ERUNf
SU5DQVBBQkxFCisgKiAgICAgQWxnb3JpdGhtIG5vdCBjYXBhYmxlIG9mIHBvc3Rpbmcgc2xpY2Ug
Y29tcGxldGlvbi4KICAqLwogdnB4X2NvZGVjX2Vycl90IHZweF9jb2RlY19yZWdpc3Rlcl9wdXRf
c2xpY2VfY2IodnB4X2NvZGVjX2N0eF90ICpjdHgsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB2cHhfY29kZWNfcHV0X3NsaWNlX2NiX2ZuX3QgY2IsCkBA
IC0zMTYsMTAgKzMxNSwxMCBAQCB2cHhfY29kZWNfZXJyX3QgdnB4X2NvZGVjX3JlZ2lzdGVyX3B1
dF9zbGljZV9jYih2cHhfY29kZWNfY3R4X3QgKmN0eCwKIAogLyohXGRlZmdyb3VwIGNhcF9leHRl
cm5hbF9mcmFtZV9idWZmZXIgRXh0ZXJuYWwgRnJhbWUgQnVmZmVyIEZ1bmN0aW9ucwogICoKLSAq
IFRoZSBmb2xsb3dpbmcgc2VjdGlvbiBpcyByZXF1aXJlZCB0byBiZSBpbXBsZW1lbnRlZCBmb3Ig
YWxsIGRlY29kZXJzCisgKiBUaGUgZm9sbG93aW5nIGZ1bmN0aW9uIGlzIHJlcXVpcmVkIHRvIGJl
IGltcGxlbWVudGVkIGZvciBhbGwgZGVjb2RlcnMKICAqIHRoYXQgYWR2ZXJ0aXNlIHRoZSBWUFhf
Q09ERUNfQ0FQX0VYVEVSTkFMX0ZSQU1FX0JVRkZFUiBjYXBhYmlsaXR5LgogICogQ2FsbGluZyB0
aGlzIGZ1bmN0aW9uIGZvciBjb2RlY3MgdGhhdCBkb24ndCBhZHZlcnRpc2UgdGhpcyBjYXBhYmls
aXR5Ci0gKiB3aWxsIHJlc3VsdCBpbiBhbiBlcnJvciBjb2RlIGJlaW5nIHJldHVybmVkLCB1c3Vh
bGx5IFZQWF9DT0RFQ19FUlJPUi4KKyAqIHdpbGwgcmVzdWx0IGluIGFuIGVycm9yIGNvZGUgYmVp
bmcgcmV0dXJuZWQsIHVzdWFsbHkgVlBYX0NPREVDX0lOQ0FQQUJMRS4KICAqCiAgKiBcbm90ZQog
ICogQ3VycmVudGx5IHRoaXMgb25seSB3b3JrcyB3aXRoIFZQOS4KQEAgLTM0NCw4ICszNDMsOSBA
QCB2cHhfY29kZWNfZXJyX3QgdnB4X2NvZGVjX3JlZ2lzdGVyX3B1dF9zbGljZV9jYih2cHhfY29k
ZWNfY3R4X3QgKmN0eCwKICAqIFxyZXR2YWwgI1ZQWF9DT0RFQ19JTlZBTElEX1BBUkFNCiAgKiAg
ICAgT25lIG9yIG1vcmUgb2YgdGhlIGNhbGxiYWNrcyB3ZXJlIE5VTEwuCiAgKiBccmV0dmFsICNW
UFhfQ09ERUNfRVJST1IKLSAqICAgICBEZWNvZGVyIGNvbnRleHQgbm90IGluaXRpYWxpemVkLCBv
ciBhbGdvcml0aG0gbm90IGNhcGFibGUgb2YKLSAqICAgICB1c2luZyBleHRlcm5hbCBmcmFtZSBi
dWZmZXJzLgorICogICAgIERlY29kZXIgY29udGV4dCBub3QgaW5pdGlhbGl6ZWQuCisgKiBccmV0
dmFsICNWUFhfQ09ERUNfSU5DQVBBQkxFCisgKiAgICAgQWxnb3JpdGhtIG5vdCBjYXBhYmxlIG9m
IHVzaW5nIGV4dGVybmFsIGZyYW1lIGJ1ZmZlcnMuCiAgKgogICogXG5vdGUKICAqIFdoZW4gZGVj
b2RpbmcgVlA5LCB0aGUgYXBwbGljYXRpb24gbWF5IGJlIHJlcXVpcmVkIHRvIHBhc3MgaW4gYXQg
bGVhc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9lbmNvZGVyLmggYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGli
dnB4L3ZweC92cHhfZW5jb2Rlci5oCmluZGV4IGM4NGQ0MGY3ZjdmMWVmMzEyOGEzMGFhZTk4ZDM4
YWIzZWIwN2Q4MGIuLmRhMzYwOTU3NzU1ZmRlMDYxZjM5MTkyNWM2ZDg2YzMxMTIyNzc2NDIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9lbmNvZGVyLmgKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHgvdnB4X2VuY29kZXIuaApAQCAtMzAsNiArMzAsNyBAQCBleHRlcm4gIkMiIHsKICNlbmRpZgog
CiAjaW5jbHVkZSAiLi92cHhfY29kZWMuaCIKKyNpbmNsdWRlICIuL3ZweF9leHRfcmF0ZWN0cmwu
aCIKIAogLyohIFRlbXBvcmFsIFNjYWxhYmlsaXR5OiBNYXhpbXVtIGxlbmd0aCBvZiB0aGUgc2Vx
dWVuY2UgZGVmaW5pbmcgZnJhbWUKICAqIGxheWVyIG1lbWJlcnNoaXAKQEAgLTU3LDcgKzU4LDgg
QEAgZXh0ZXJuICJDIiB7CiAgKiBmaWVsZHMgdG8gc3RydWN0dXJlcwogICovCiAjZGVmaW5lIFZQ
WF9FTkNPREVSX0FCSV9WRVJTSU9OIFwKLSAgKDE0ICsgVlBYX0NPREVDX0FCSV9WRVJTSU9OKSAv
Kio8XGhpZGVpbml0aWFsaXplciovCisgICgxNCArIFZQWF9DT0RFQ19BQklfVkVSU0lPTiArIFwK
KyAgIFZQWF9FWFRfUkFURUNUUkxfQUJJX1ZFUlNJT04pIC8qKjxcaGlkZWluaXRpYWxpemVyKi8K
IAogLyohIFxicmllZiBFbmNvZGVyIGNhcGFiaWxpdGllcyBiaXRmaWVsZAogICoKQEAgLTcwNSw2
ICs3MDcsNyBAQCB0eXBlZGVmIHN0cnVjdCB2cHhfc3ZjX3BhcmFtZXRlcnMgewogICBpbnQgc2Nh
bGluZ19mYWN0b3JfZGVuW1ZQWF9NQVhfTEFZRVJTXTsgLyoqPCBTY2FsaW5nIGZhY3Rvci1kZW5v
bWluYXRvciAqLwogICBpbnQgc3BlZWRfcGVyX2xheWVyW1ZQWF9NQVhfTEFZRVJTXTsgICAgLyoq
PCBTcGVlZCBzZXR0aW5nIGZvciBlYWNoIHNsICovCiAgIGludCB0ZW1wb3JhbF9sYXllcmluZ19t
b2RlOyAgICAgICAgICAgICAvKio8IFRlbXBvcmFsIGxheWVyaW5nIG1vZGUgKi8KKyAgaW50IGxv
b3BmaWx0ZXJfY3RybFtWUFhfTUFYX0xBWUVSU107ICAgIC8qKjwgTG9vcGZpbHRlciBjdHJsIGZv
ciBlYWNoIHNsICovCiB9IHZweF9zdmNfZXh0cmFfY2ZnX3Q7CiAKIC8qIVxicmllZiBJbml0aWFs
aXplIGFuIGVuY29kZXIgaW5zdGFuY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9l
eHRfcmF0ZWN0cmwuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4L3ZweF9leHRfcmF0ZWN0cmwuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5kYzRkODU2YThiNmY1NGIwNzQ0ZmE4MTE4MDhkZmViYjQzMWJkMTM0Ci0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2V4dF9yYXRlY3RybC5oCkBAIC0wLDAgKzEsMzUz
IEBACisvKgorICogIENvcHlyaWdodCAoYykgMjAyMCBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMu
IEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKgorICogIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlz
IGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UKKyAqICB0aGF0IGNhbiBiZSBmb3VuZCBp
biB0aGUgTElDRU5TRSBmaWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UKKyAqICB0cmVlLiBB
biBhZGRpdGlvbmFsIGludGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQgY2FuIGJlIGZv
dW5kCisgKiAgaW4gdGhlIGZpbGUgUEFURU5UUy4gIEFsbCBjb250cmlidXRpbmcgcHJvamVjdCBh
dXRob3JzIG1heQorICogIGJlIGZvdW5kIGluIHRoZSBBVVRIT1JTIGZpbGUgaW4gdGhlIHJvb3Qg
b2YgdGhlIHNvdXJjZSB0cmVlLgorICovCisKKyNpZm5kZWYgVlBYX1ZQWF9WUFhfRVhUX1JBVEVD
VFJMX0hfCisjZGVmaW5lIFZQWF9WUFhfVlBYX0VYVF9SQVRFQ1RSTF9IXworCisjaWZkZWYgX19j
cGx1c3BsdXMKK2V4dGVybiAiQyIgeworI2VuZGlmCisKKyNpbmNsdWRlICIuL3ZweF9pbnRlZ2Vy
LmgiCisKKy8qIVxicmllZiBDdXJyZW50IEFCSSB2ZXJzaW9uIG51bWJlcgorICoKKyAqIFxpbnRl
cm5hbAorICogSWYgdGhpcyBmaWxlIGlzIGFsdGVyZWQgaW4gYW55IHdheSB0aGF0IGNoYW5nZXMg
dGhlIEFCSSwgdGhpcyB2YWx1ZQorICogbXVzdCBiZSBidW1wZWQuIEV4YW1wbGVzIGluY2x1ZGUs
IGJ1dCBhcmUgbm90IGxpbWl0ZWQgdG8sIGNoYW5naW5nCisgKiB0eXBlcywgcmVtb3Zpbmcgb3Ig
cmVhc3NpZ25pbmcgZW51bXMsIGFkZGluZy9yZW1vdmluZy9yZWFycmFuZ2luZworICogZmllbGRz
IHRvIHN0cnVjdHVyZXMuCisgKi8KKyNkZWZpbmUgVlBYX0VYVF9SQVRFQ1RSTF9BQklfVkVSU0lP
TiAoMSkKKworLyohXGJyaWVmIEFic3RyYWN0IHJhdGUgY29udHJvbCBtb2RlbCBoYW5kbGVyCisg
KgorICogVGhlIGVuY29kZXIgd2lsbCByZWNlaXZlIHRoZSBtb2RlbCBoYW5kbGVyIGZyb20gY3Jl
YXRlX21vZGVsKCkgZGVmaW5lZCBpbgorICogdnB4X3JjX2Z1bmNzX3QuCisgKi8KK3R5cGVkZWYg
dm9pZCAqdnB4X3JjX21vZGVsX3Q7CisKKy8qIVxicmllZiBFbmNvZGUgZnJhbWUgZGVjaXNpb24g
bWFkZSBieSB0aGUgZXh0ZXJuYWwgcmF0ZSBjb250cm9sIG1vZGVsCisgKgorICogVGhlIGVuY29k
ZXIgd2lsbCByZWNlaXZlIHRoZSBkZWNpc2lvbiBmcm9tIHRoZSBleHRlcm5hbCByYXRlIGNvbnRy
b2wgbW9kZWwKKyAqIHRocm91Z2ggZ2V0X2VuY29kZWZyYW1lX2RlY2lzaW9uKCkgZGVmaW5lZCBp
biB2cHhfcmNfZnVuY3NfdC4KKyAqLwordHlwZWRlZiBzdHJ1Y3QgdnB4X3JjX2VuY29kZWZyYW1l
X2RlY2lzaW9uIHsKKyAgaW50IHFfaW5kZXg7IC8qKjwgUXVhbnRpemVyIHN0ZXAgaW5kZXggWzAu
LjI1NV0qLworfSB2cHhfcmNfZW5jb2RlZnJhbWVfZGVjaXNpb25fdDsKKworLyohXGJyaWVmIElu
Zm9ybWF0aW9uIGZvciB0aGUgZnJhbWUgdG8gYmUgZW5jb2RlZC4KKyAqCisgKiBUaGUgZW5jb2Rl
ciB3aWxsIHNlbmQgdGhlIGluZm9ybWF0aW9uIHRvIGV4dGVybmFsIHJhdGUgY29udHJvbCBtb2Rl
bCB0aHJvdWdoCisgKiBnZXRfZW5jb2RlZnJhbWVfZGVjaXNpb24oKSBkZWZpbmVkIGluIHZweF9y
Y19mdW5jc190LgorICoKKyAqLwordHlwZWRlZiBzdHJ1Y3QgdnB4X3JjX2VuY29kZWZyYW1lX2lu
Zm8geworICAvKiEKKyAgICogMDogS2V5IGZyYW1lCisgICAqIDE6IEludGVyIGZyYW1lCisgICAq
IDI6IEFsdGVybmF0ZSByZWZlcmVuY2UgZnJhbWUKKyAgICogMzogT3ZlcmxheSBmcmFtZQorICAg
KiA0OiBHb2xkZW4gZnJhbWUKKyAgICovCisgIGludCBmcmFtZV90eXBlOworICBpbnQgc2hvd19p
bmRleDsgICAvKio8IGRpc3BsYXkgaW5kZXgsIHN0YXJ0cyBmcm9tIHplcm8qLworICBpbnQgY29k
aW5nX2luZGV4OyAvKio8IGNvZGluZyBpbmRleCwgc3RhcnRzIGZyb20gemVybyovCisgIC8qIQor
ICAgKiBpbmRleCBpbiBncm91cCBvZiBwaWN0dXJlLCBzdGFydHMgZnJvbSB6ZXJvLgorICAgKi8K
KyAgaW50IGdvcF9pbmRleDsKKyAgaW50IHJlZl9mcmFtZV9jb2RpbmdfaW5kZXhlc1szXTsgLyoq
PCB0aHJlZSByZWZlcmVuY2UgZnJhbWVzJyBjb2RpbmcgaW5kaWNlcyovCisgIC8qIQorICAgKiBU
aGUgdmFsaWRpdHkgb2YgdGhlIHRocmVlIHJlZmVyZW5jZSBmcmFtZXMuCisgICAqIDA6IEludmFs
aWQKKyAgICogMTogVmFsaWQKKyAgICovCisgIGludCByZWZfZnJhbWVfdmFsaWRfbGlzdFszXTsK
K30gdnB4X3JjX2VuY29kZWZyYW1lX2luZm9fdDsKKworLyohXGJyaWVmIEZyYW1lIGNvZGluZyBy
ZXN1bHQKKyAqCisgKiBUaGUgZW5jb2RlciB3aWxsIHNlbmQgdGhlIHJlc3VsdCB0byB0aGUgZXh0
ZXJuYWwgcmF0ZSBjb250cm9sIG1vZGVsIHRocm91Z2gKKyAqIHVwZGF0ZV9lbmNvZGVmcmFtZV9y
ZXN1bHQoKSBkZWZpbmVkIGluIHZweF9yY19mdW5jc190LgorICovCit0eXBlZGVmIHN0cnVjdCB2
cHhfcmNfZW5jb2RlZnJhbWVfcmVzdWx0IHsKKyAgaW50NjRfdCBzc2U7ICAgICAgICAgLyoqPCBz
dW0gb2Ygc3F1YXJlZCBlcnJvciBvZiB0aGUgcmVjb25zdHJ1Y3RlZCBmcmFtZSAqLworICBpbnQ2
NF90IGJpdF9jb3VudDsgICAvKio8IG51bWJlciBvZiBiaXRzIHNwZW50IG9uIGNvZGluZyB0aGUg
ZnJhbWUqLworICBpbnQ2NF90IHBpeGVsX2NvdW50OyAvKio8IG51bWJlciBvZiBwaXhlbHMgaW4g
WVVWIHBsYW5lcyBvZiB0aGUgZnJhbWUqLworfSB2cHhfcmNfZW5jb2RlZnJhbWVfcmVzdWx0X3Q7
CisKKy8qIVxicmllZiBTdGF0dXMgcmV0dXJuZWQgYnkgcmF0ZSBjb250cm9sIGNhbGxiYWNrIGZ1
bmN0aW9ucy4KKyAqLwordHlwZWRlZiBlbnVtIHZweF9yY19zdGF0dXMgeworICBWUFhfUkNfT0sg
PSAwLAorICBWUFhfUkNfRVJST1IgPSAxLAorfSB2cHhfcmNfc3RhdHVzX3Q7CisKKy8qIVxicmll
ZiBGaXJzdCBwYXNzIGZyYW1lIHN0YXRzCisgKiBUaGlzIGlzIGEgbWlycm9yIG9mIHZwOSdzIEZJ
UlNUUEFTU19TVEFUUyBleGNlcHQgdGhhdCBzcGF0aWFsX2xheWVyX2lkIGlzCisgKiBvbWl0dGVk
CisgKi8KK3R5cGVkZWYgc3RydWN0IHZweF9yY19mcmFtZV9zdGF0cyB7CisgIC8qIQorICAgKiBG
cmFtZSBudW1iZXIgaW4gZGlzcGxheSBvcmRlciwgaWYgc3RhdHMgYXJlIGZvciBhIHNpbmdsZSBm
cmFtZS4KKyAgICogTm8gcmVhbCBtZWFuaW5nIGZvciBhIGNvbGxlY3Rpb24gb2YgZnJhbWVzLgor
ICAgKi8KKyAgZG91YmxlIGZyYW1lOworICAvKiEKKyAgICogV2VpZ2h0IGFzc2lnbmVkIHRvIHRo
aXMgZnJhbWUgKG9yIHRvdGFsIHdlaWdodCBmb3IgdGhlIGNvbGxlY3Rpb24gb2YKKyAgICogZnJh
bWVzKSBjdXJyZW50bHkgYmFzZWQgb24gaW50cmEgZmFjdG9yIGFuZCBicmlnaHRuZXNzIGZhY3Rv
ci4gVGhpcyBpcyB1c2VkCisgICAqIHRvIGRpc3RyaWJ1dGUgYml0cyBiZXR3ZWVuIGVhc2llciBh
bmQgaGFyZGVyIGZyYW1lcy4KKyAgICovCisgIGRvdWJsZSB3ZWlnaHQ7CisgIC8qIQorICAgKiBJ
bnRyYSBwcmVkaWN0aW9uIGVycm9yLgorICAgKi8KKyAgZG91YmxlIGludHJhX2Vycm9yOworICAv
KiEKKyAgICogQmVzdCBvZiBpbnRyYSBwcmVkIGVycm9yIGFuZCBpbnRlciBwcmVkIGVycm9yIHVz
aW5nIGxhc3QgZnJhbWUgYXMgcmVmLgorICAgKi8KKyAgZG91YmxlIGNvZGVkX2Vycm9yOworICAv
KiEKKyAgICogQmVzdCBvZiBpbnRyYSBwcmVkIGVycm9yIGFuZCBpbnRlciBwcmVkIGVycm9yIHVz
aW5nIGdvbGRlbiBmcmFtZSBhcyByZWYuCisgICAqLworICBkb3VibGUgc3JfY29kZWRfZXJyb3I7
CisgIC8qIQorICAgKiBFc3RpbWF0ZSB0aGUgbm9pc2UgZW5lcmd5IG9mIHRoZSBjdXJyZW50IGZy
YW1lLgorICAgKi8KKyAgZG91YmxlIGZyYW1lX25vaXNlX2VuZXJneTsKKyAgLyohCisgICAqIFBl
cmNlbnRhZ2Ugb2YgYmxvY2tzIHdpdGggaW50ZXIgcHJlZCBlcnJvciA8IGludHJhIHByZWQgZXJy
b3IuCisgICAqLworICBkb3VibGUgcGNudF9pbnRlcjsKKyAgLyohCisgICAqIFBlcmNlbnRhZ2Ug
b2YgYmxvY2tzIHVzaW5nIChpbnRlciBwcmVkaWN0aW9uIGFuZCkgbm9uLXplcm8gbW90aW9uIHZl
Y3RvcnMuCisgICAqLworICBkb3VibGUgcGNudF9tb3Rpb247CisgIC8qIQorICAgKiBQZXJjZW50
YWdlIG9mIGJsb2NrcyB3aGVyZSBnb2xkZW4gZnJhbWUgd2FzIGJldHRlciB0aGFuIGxhc3Qgb3Ig
aW50cmE6CisgICAqIGludGVyIHByZWQgZXJyb3IgdXNpbmcgZ29sZGVuIGZyYW1lIDwgaW50ZXIg
cHJlZCBlcnJvciB1c2luZyBsYXN0IGZyYW1lIGFuZAorICAgKiBpbnRlciBwcmVkIGVycm9yIHVz
aW5nIGdvbGRlbiBmcmFtZSA8IGludHJhIHByZWQgZXJyb3IKKyAgICovCisgIGRvdWJsZSBwY250
X3NlY29uZF9yZWY7CisgIC8qIQorICAgKiBQZXJjZW50YWdlIG9mIGJsb2NrcyB3aGVyZSBpbnRy
YSBhbmQgaW50ZXIgcHJlZGljdGlvbiBlcnJvcnMgd2VyZSB2ZXJ5CisgICAqIGNsb3NlLgorICAg
Ki8KKyAgZG91YmxlIHBjbnRfbmV1dHJhbDsKKyAgLyohCisgICAqIFBlcmNlbnRhZ2Ugb2YgYmxv
Y2tzIHRoYXQgaGF2ZSBpbnRyYSBlcnJvciA8IGludGVyIGVycm9yIGFuZCBpbnRlciBlcnJvciA8
CisgICAqIExPV19JX1RIUkVTSAorICAgKiAtIGJpdF9kZXB0aCA4OiBMT1dfSV9USFJFU0ggPSAy
NDAwMAorICAgKiAtIGJpdF9kZXB0aCAxMDogTE9XX0lfVEhSRVNIID0gMjQwMDAgPDwgNAorICAg
KiAtIGJpdF9kZXB0aCAxMjogTE9XX0lfVEhSRVNIID0gMjQwMDAgPDwgOAorICAgKi8KKyAgZG91
YmxlIHBjbnRfaW50cmFfbG93OworICAvKiEKKyAgICogUGVyY2VudGFnZSBvZiBibG9ja3MgdGhh
dCBoYXZlIGludHJhIGVycm9yIDwgaW50ZXIgZXJyb3IgYW5kIGludHJhIGVycm9yIDwKKyAgICog
TE9XX0lfVEhSRVNIIGJ1dCBpbnRlciBlcnJvciA+PSBMT1dfSV9USFJFU0ggTE9XX0lfVEhSRVNI
CisgICAqIC0gYml0X2RlcHRoIDg6IExPV19JX1RIUkVTSCA9IDI0MDAwCisgICAqIC0gYml0X2Rl
cHRoIDEwOiBMT1dfSV9USFJFU0ggPSAyNDAwMCA8PCA0CisgICAqIC0gYml0X2RlcHRoIDEyOiBM
T1dfSV9USFJFU0ggPSAyNDAwMCA8PCA4CisgICAqLworICBkb3VibGUgcGNudF9pbnRyYV9oaWdo
OworICAvKiEKKyAgICogUGVyY2VudGFnZSBvZiBibG9ja3MgdGhhdCBoYXZlIGFsbW9zdCBubyBp
bnRyYSBlcnJvciByZXNpZHVhbAorICAgKiAoaS5lLiBhcmUgaW4gZWZmZWN0IGNvbXBsZXRlbHkg
ZmxhdCBhbmQgdW50ZXh0dXJlZCBpbiB0aGUgaW50cmEKKyAgICogZG9tYWluKS4gSW4gbmF0dXJh
bCB2aWRlb3MgdGhpcyBpcyB1bmNvbW1vbiwgYnV0IGl0IGlzIG11Y2ggbW9yZQorICAgKiBjb21t
b24gaW4gYW5pbWF0aW9ucywgZ3JhcGhpY3MgYW5kIHNjcmVlbiBjb250ZW50LCBzbyBtYXkgYmUg
dXNlZAorICAgKiBhcyBhIHNpZ25hbCB0byBkZXRlY3QgdGhlc2UgdHlwZXMgb2YgY29udGVudC4K
KyAgICovCisgIGRvdWJsZSBpbnRyYV9za2lwX3BjdDsKKyAgLyohCisgICAqIFBlcmNlbnRhZ2Ug
b2YgYmxvY2tzIHRoYXQgaGF2ZSBpbnRyYSBlcnJvciA8IFNNT09USF9JTlRSQV9USFJFU0gKKyAg
ICogLSBiaXRfZGVwdGggODogIFNNT09USF9JTlRSQV9USFJFU0ggPSA0MDAwCisgICAqIC0gYml0
X2RlcHRoIDEwOiBTTU9PVEhfSU5UUkFfVEhSRVNIID0gNDAwMCA8PCA0CisgICAqIC0gYml0X2Rl
cHRoIDEyOiBTTU9PVEhfSU5UUkFfVEhSRVNIID0gNDAwMCA8PCA4CisgICAqLworICBkb3VibGUg
aW50cmFfc21vb3RoX3BjdDsKKyAgLyohCisgICAqIEltYWdlIG1hc2sgcm93cyB0b3AgYW5kIGJv
dHRvbS4KKyAgICovCisgIGRvdWJsZSBpbmFjdGl2ZV96b25lX3Jvd3M7CisgIC8qIQorICAgKiBJ
bWFnZSBtYXNrIGNvbHVtbnMgYXQgbGVmdCBhbmQgcmlnaHQgZWRnZXMuCisgICAqLworICBkb3Vi
bGUgaW5hY3RpdmVfem9uZV9jb2xzOworICAvKiEKKyAgICogTWVhbiBvZiByb3cgbW90aW9uIHZl
Y3RvcnMuCisgICAqLworICBkb3VibGUgTVZyOworICAvKiEKKyAgICogTWVhbiBvZiBhYnNvbHV0
ZSB2YWx1ZSBvZiByb3cgbW90aW9uIHZlY3RvcnMuCisgICAqLworICBkb3VibGUgbXZyX2FiczsK
KyAgLyohCisgICAqIE1lYW4gb2YgY29sdW1uIG1vdGlvbiB2ZWN0b3JzLgorICAgKi8KKyAgZG91
YmxlIE1WYzsKKyAgLyohCisgICAqIE1lYW4gb2YgYWJzb2x1dGUgdmFsdWUgb2YgY29sdW1uIG1v
dGlvbiB2ZWN0b3JzLgorICAgKi8KKyAgZG91YmxlIG12Y19hYnM7CisgIC8qIQorICAgKiBWYXJp
YW5jZSBvZiByb3cgbW90aW9uIHZlY3RvcnMuCisgICAqLworICBkb3VibGUgTVZydjsKKyAgLyoh
CisgICAqIFZhcmlhbmNlIG9mIGNvbHVtbiBtb3Rpb24gdmVjdG9ycy4KKyAgICovCisgIGRvdWJs
ZSBNVmN2OworICAvKiEKKyAgICogVmFsdWUgaW4gcmFuZ2UgWy0xLDFdIGluZGljYXRpbmcgZnJh
Y3Rpb24gb2Ygcm93IGFuZCBjb2x1bW4gbW90aW9uIHZlY3RvcnMKKyAgICogdGhhdCBwb2ludCBp
bndhcmRzIChuZWdhdGl2ZSBNViB2YWx1ZSkgb3Igb3V0d2FyZHMgKHBvc2l0aXZlIE1WIHZhbHVl
KS4KKyAgICogRm9yIGV4YW1wbGUsIHZhbHVlIG9mIDEgaW5kaWNhdGVzLCBhbGwgcm93L2NvbHVt
biBNVnMgYXJlIGlud2FyZHMuCisgICAqLworICBkb3VibGUgbXZfaW5fb3V0X2NvdW50OworICAv
KiEKKyAgICogRHVyYXRpb24gb2YgdGhlIGZyYW1lIC8gY29sbGVjdGlvbiBvZiBmcmFtZXMuCisg
ICAqLworICBkb3VibGUgZHVyYXRpb247CisgIC8qIQorICAgKiAxLjAgaWYgc3RhdHMgYXJlIGZv
ciBhIHNpbmdsZSBmcmFtZSwgb3IKKyAgICogbnVtYmVyIG9mIGZyYW1lcyB3aG9zZSBzdGF0cyBh
cmUgYWNjdW11bGF0ZWQuCisgICAqLworICBkb3VibGUgY291bnQ7Cit9IHZweF9yY19mcmFtZV9z
dGF0c190OworCisvKiFcYnJpZWYgQ29sbGVjdGlvbiBvZiBmaXJzdCBwYXNzIGZyYW1lIHN0YXRz
CisgKi8KK3R5cGVkZWYgc3RydWN0IHZweF9yY19maXJzdHBhc3Nfc3RhdHMgeworICAvKiEKKyAg
ICogUG9pbnRlciB0byBmaXJzdCBwYXNzIGZyYW1lIHN0YXRzLgorICAgKiBUaGUgcG9pbnRlZCBh
cnJheSBvZiB2cHhfcmNfZnJhbWVfc3RhdHNfdCBzaG91bGQgaGF2ZSBsZW5ndGggZXF1YWwgdG8K
KyAgICogbnVtYmVyIG9mIHNob3cgZnJhbWVzIGluIHRoZSB2aWRlby4KKyAgICovCisgIHZweF9y
Y19mcmFtZV9zdGF0c190ICpmcmFtZV9zdGF0czsKKyAgLyohCisgICAqIE51bWJlciBvZiBzaG93
IGZyYW1lcyBpbiB0aGUgdmlkZW8uCisgICAqLworICBpbnQgbnVtX2ZyYW1lczsKK30gdnB4X3Jj
X2ZpcnN0cGFzc19zdGF0c190OworCisvKiFcYnJpZWYgRW5jb2RlIGNvbmZpZyBzZW50IHRvIGV4
dGVybmFsIHJhdGUgY29udHJvbCBtb2RlbAorICovCit0eXBlZGVmIHN0cnVjdCB2cHhfcmNfY29u
ZmlnIHsKKyAgaW50IGZyYW1lX3dpZHRoOyAgICAgIC8qKjwgZnJhbWUgd2lkdGggKi8KKyAgaW50
IGZyYW1lX2hlaWdodDsgICAgIC8qKjwgZnJhbWUgaGVpZ2h0ICovCisgIGludCBzaG93X2ZyYW1l
X2NvdW50OyAvKio8IG51bWJlciBvZiB2aXNpYmxlIGZyYW1lcyBpbiB0aGUgdmlkZW8gKi8KKyAg
LyohCisgICAqIFRhcmdldCBiaXRyYXRlIGluIGtpbG9ieXRlcyBwZXIgc2Vjb25kCisgICAqLwor
ICBpbnQgdGFyZ2V0X2JpdHJhdGVfa2JwczsKKyAgaW50IGZyYW1lX3JhdGVfbnVtOyAvKio8IG51
bWVyYXRvciBvZiBmcmFtZSByYXRlICovCisgIGludCBmcmFtZV9yYXRlX2RlbjsgLyoqPCBkZW5v
bWluYXRvciBvZiBmcmFtZSByYXRlICovCit9IHZweF9yY19jb25maWdfdDsKKworLyohXGJyaWVm
IENyZWF0ZSBhbiBleHRlcm5hbCByYXRlIGNvbnRyb2wgbW9kZWwgY2FsbGJhY2sgcHJvdG90eXBl
CisgKgorICogVGhpcyBjYWxsYmFjayBpcyBpbnZva2VkIGJ5IHRoZSBlbmNvZGVyIHRvIGNyZWF0
ZSBhbiBleHRlcm5hbCByYXRlIGNvbnRyb2wKKyAqIG1vZGVsLgorICoKKyAqIFxwYXJhbVtpbl0g
IHByaXYgICAgICAgICAgICAgICBDYWxsYmFjaydzIHByaXZhdGUgZGF0YQorICogXHBhcmFtW2lu
XSAgcmF0ZWN0cmxfY29uZmlnICAgIFBvaW50ZXIgdG8gdnB4X3JjX2NvbmZpZ190CisgKiBccGFy
YW1bb3V0XSByYXRlX2N0cmxfbW9kZWxfcHQgUG9pbnRlciB0byB2cHhfcmNfbW9kZWxfdAorICov
Cit0eXBlZGVmIHZweF9yY19zdGF0dXNfdCAoKnZweF9yY19jcmVhdGVfbW9kZWxfY2JfZm5fdCko
CisgICAgdm9pZCAqcHJpdiwgY29uc3QgdnB4X3JjX2NvbmZpZ190ICpyYXRlY3RybF9jb25maWcs
CisgICAgdnB4X3JjX21vZGVsX3QgKnJhdGVfY3RybF9tb2RlbF9wdCk7CisKKy8qIVxicmllZiBT
ZW5kIGZpcnN0IHBhc3Mgc3RhdHMgdG8gdGhlIGV4dGVybmFsIHJhdGUgY29udHJvbCBtb2RlbCBj
YWxsYmFjaworICogcHJvdG90eXBlCisgKgorICogVGhpcyBjYWxsYmFjayBpcyBpbnZva2VkIGJ5
IHRoZSBlbmNvZGVyIHRvIHNlbmQgZmlyc3QgcGFzcyBzdGF0cyB0byB0aGUKKyAqIGV4dGVybmFs
IHJhdGUgY29udHJvbCBtb2RlbC4KKyAqCisgKiBccGFyYW1baW5dICByYXRlX2N0cmxfbW9kZWwg
ICAgcmF0ZSBjb250cm9sIG1vZGVsCisgKiBccGFyYW1baW5dICBmaXJzdF9wYXNzX3N0YXRzICAg
Zmlyc3QgcGFzcyBzdGF0cworICovCit0eXBlZGVmIHZweF9yY19zdGF0dXNfdCAoKnZweF9yY19z
ZW5kX2ZpcnN0cGFzc19zdGF0c19jYl9mbl90KSgKKyAgICB2cHhfcmNfbW9kZWxfdCByYXRlX2N0
cmxfbW9kZWwsCisgICAgY29uc3QgdnB4X3JjX2ZpcnN0cGFzc19zdGF0c190ICpmaXJzdF9wYXNz
X3N0YXRzKTsKKworLyohXGJyaWVmIFJlY2VpdmUgZW5jb2RlIGZyYW1lIGRlY2lzaW9uIGNhbGxi
YWNrIHByb3RvdHlwZQorICoKKyAqIFRoaXMgY2FsbGJhY2sgaXMgaW52b2tlZCBieSB0aGUgZW5j
b2RlciB0byByZWNlaXZlIGVuY29kZSBmcmFtZSBkZWNpc2lvbiBmcm9tCisgKiB0aGUgZXh0ZXJu
YWwgcmF0ZSBjb250cm9sIG1vZGVsLgorICoKKyAqIFxwYXJhbVtpbl0gIHJhdGVfY3RybF9tb2Rl
bCAgICByYXRlIGNvbnRyb2wgbW9kZWwKKyAqIFxwYXJhbVtpbl0gIGVuY29kZV9mcmFtZV9pbmZv
ICBpbmZvcm1hdGlvbiBvZiB0aGUgY29kaW5nIGZyYW1lCisgKiBccGFyYW1bb3V0XSBmcmFtZV9k
ZWNpc2lvbiAgICAgZW5jb2RlIGRlY2lzaW9uIG9mIHRoZSBjb2RpbmcgZnJhbWUKKyAqLwordHlw
ZWRlZiB2cHhfcmNfc3RhdHVzX3QgKCp2cHhfcmNfZ2V0X2VuY29kZWZyYW1lX2RlY2lzaW9uX2Ni
X2ZuX3QpKAorICAgIHZweF9yY19tb2RlbF90IHJhdGVfY3RybF9tb2RlbCwKKyAgICBjb25zdCB2
cHhfcmNfZW5jb2RlZnJhbWVfaW5mb190ICplbmNvZGVfZnJhbWVfaW5mbywKKyAgICB2cHhfcmNf
ZW5jb2RlZnJhbWVfZGVjaXNpb25fdCAqZnJhbWVfZGVjaXNpb24pOworCisvKiFcYnJpZWYgVXBk
YXRlIGVuY29kZSBmcmFtZSByZXN1bHQgY2FsbGJhY2sgcHJvdG90eXBlCisgKgorICogVGhpcyBj
YWxsYmFjayBpcyBpbnZva2VkIGJ5IHRoZSBlbmNvZGVyIHRvIHVwZGF0ZSBlbmNvZGUgZnJhbWUg
cmVzdWx0IHRvIHRoZQorICogZXh0ZXJuYWwgcmF0ZSBjb250cm9sIG1vZGVsLgorICoKKyAqIFxw
YXJhbVtpbl0gIHJhdGVfY3RybF9tb2RlbCAgICAgcmF0ZSBjb250cm9sIG1vZGVsCisgKiBccGFy
YW1bb3V0XSBlbmNvZGVfZnJhbWVfcmVzdWx0IGVuY29kZSByZXN1bHQgb2YgdGhlIGNvZGluZyBm
cmFtZQorICovCit0eXBlZGVmIHZweF9yY19zdGF0dXNfdCAoKnZweF9yY191cGRhdGVfZW5jb2Rl
ZnJhbWVfcmVzdWx0X2NiX2ZuX3QpKAorICAgIHZweF9yY19tb2RlbF90IHJhdGVfY3RybF9tb2Rl
bCwKKyAgICBjb25zdCB2cHhfcmNfZW5jb2RlZnJhbWVfcmVzdWx0X3QgKmVuY29kZV9mcmFtZV9y
ZXN1bHQpOworCisvKiFcYnJpZWYgRGVsZXRlIHRoZSBleHRlcm5hbCByYXRlIGNvbnRyb2wgbW9k
ZWwgY2FsbGJhY2sgcHJvdG90eXBlCisgKgorICogVGhpcyBjYWxsYmFjayBpcyBpbnZva2VkIGJ5
IHRoZSBlbmNvZGVyIHRvIGRlbGV0ZSB0aGUgZXh0ZXJuYWwgcmF0ZSBjb250cm9sCisgKiBtb2Rl
bC4KKyAqCisgKiBccGFyYW1baW5dICByYXRlX2N0cmxfbW9kZWwgICAgIHJhdGUgY29udHJvbCBt
b2RlbAorICovCit0eXBlZGVmIHZweF9yY19zdGF0dXNfdCAoKnZweF9yY19kZWxldGVfbW9kZWxf
Y2JfZm5fdCkoCisgICAgdnB4X3JjX21vZGVsX3QgcmF0ZV9jdHJsX21vZGVsKTsKKworLyohXGJy
aWVmIENhbGxiYWNrIGZ1bmN0aW9uIHNldCBmb3IgZXh0ZXJuYWwgcmF0ZSBjb250cm9sLgorICoK
KyAqIFRoZSB1c2VyIGNhbiBlbmFibGUgZXh0ZXJuYWwgcmF0ZSBjb250cm9sIGJ5IHJlZ2lzdGVy
aW5nCisgKiBhIHNldCBvZiBjYWxsYmFjayBmdW5jdGlvbnMgd2l0aCB0aGUgY29kZWMgY29udHJv
bCBmbGFnCisgKiBWUDlFX1NFVF9FWFRFUk5BTF9SQVRFX0NPTlRST0wuCisgKi8KK3R5cGVkZWYg
c3RydWN0IHZweF9yY19mdW5jcyB7CisgIC8qIQorICAgKiBDcmVhdGUgYW4gZXh0ZXJuYWwgcmF0
ZSBjb250cm9sIG1vZGVsLgorICAgKi8KKyAgdnB4X3JjX2NyZWF0ZV9tb2RlbF9jYl9mbl90IGNy
ZWF0ZV9tb2RlbDsKKyAgLyohCisgICAqIFNlbmQgZmlyc3QgcGFzcyBzdGF0cyB0byB0aGUgZXh0
ZXJuYWwgcmF0ZSBjb250cm9sIG1vZGVsLgorICAgKi8KKyAgdnB4X3JjX3NlbmRfZmlyc3RwYXNz
X3N0YXRzX2NiX2ZuX3Qgc2VuZF9maXJzdHBhc3Nfc3RhdHM7CisgIC8qIQorICAgKiBHZXQgZW5j
b2RlZnJhbWUgZGVjaXNpb24gZnJvbSB0aGUgZXh0ZXJuYWwgcmF0ZSBjb250cm9sIG1vZGVsLgor
ICAgKi8KKyAgdnB4X3JjX2dldF9lbmNvZGVmcmFtZV9kZWNpc2lvbl9jYl9mbl90IGdldF9lbmNv
ZGVmcmFtZV9kZWNpc2lvbjsKKyAgLyohCisgICAqIFVwZGF0ZSBlbmNvZGVmcmFtZSByZXN1bHQg
dG8gdGhlIGV4dGVybmFsIHJhdGUgY29udHJvbCBtb2RlbC4KKyAgICovCisgIHZweF9yY191cGRh
dGVfZW5jb2RlZnJhbWVfcmVzdWx0X2NiX2ZuX3QgdXBkYXRlX2VuY29kZWZyYW1lX3Jlc3VsdDsK
KyAgLyohCisgICAqIERlbGV0ZSB0aGUgZXh0ZXJuYWwgcmF0ZSBjb250cm9sIG1vZGVsLgorICAg
Ki8KKyAgdnB4X3JjX2RlbGV0ZV9tb2RlbF9jYl9mbl90IGRlbGV0ZV9tb2RlbDsKKyAgLyohCisg
ICAqIFByaXZhdGUgZGF0YSBmb3IgdGhlIGV4dGVybmFsIHJhdGUgY29udHJvbCBtb2RlbC4KKyAg
ICovCisgIHZvaWQgKnByaXY7Cit9IHZweF9yY19mdW5jc190OworCisjaWZkZWYgX19jcGx1c3Bs
dXMKK30gIC8vIGV4dGVybiAiQyIKKyNlbmRpZgorCisjZW5kaWYgIC8vIFZQWF9WUFhfVlBYX0VY
VF9SQVRFQ1RSTF9IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHgvdnB4X2ltYWdlLmggYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweC92cHhfaW1hZ2UuaAppbmRleCA5OGJlNTk2NmEyNDYwYTI1OTU4YjE1ZWZj
NGY5ZjgyZjJlOWVlN2NmLi5iYzIzYmU1MGM1OGFlNjY2M2MwNzdhZmU4Zjg0YWQ2ODY1NTE2NjZi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweC92cHhfaW1hZ2UuaAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweC92cHhfaW1hZ2UuaApAQCAtNDMsNiArNDMsNyBAQCB0eXBlZGVmIGVudW0gdnB4X2ltZ19m
bXQgewogICBWUFhfSU1HX0ZNVF9JNDIyID0gVlBYX0lNR19GTVRfUExBTkFSIHwgNSwKICAgVlBY
X0lNR19GTVRfSTQ0NCA9IFZQWF9JTUdfRk1UX1BMQU5BUiB8IDYsCiAgIFZQWF9JTUdfRk1UX0k0
NDAgPSBWUFhfSU1HX0ZNVF9QTEFOQVIgfCA3LAorICBWUFhfSU1HX0ZNVF9OVjEyID0gVlBYX0lN
R19GTVRfUExBTkFSIHwgOSwKICAgVlBYX0lNR19GTVRfSTQyMDE2ID0gVlBYX0lNR19GTVRfSTQy
MCB8IFZQWF9JTUdfRk1UX0hJR0hCSVRERVBUSCwKICAgVlBYX0lNR19GTVRfSTQyMjE2ID0gVlBY
X0lNR19GTVRfSTQyMiB8IFZQWF9JTUdfRk1UX0hJR0hCSVRERVBUSCwKICAgVlBYX0lNR19GTVRf
STQ0NDE2ID0gVlBYX0lNR19GTVRfSTQ0NCB8IFZQWF9JTUdfRk1UX0hJR0hCSVRERVBUSCwKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9hcm0vaGlnaGJkX2xvb3BmaWx0ZXJfbmVvbi5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL2FybS9oaWdoYmRfbG9vcGZpbHRlcl9uZW9uLmMKaW5kZXgg
NTUzMGM2NDI1YjI3ZWEwNmQ4YTY4NDU2ZTkxZjQwYWEzZDRmMDczYS4uOGQ2ZThhY2M0YzVmMWRm
OTc4MTMzZGI4MjA2YjE1OWQzZDBlNThkOCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L2FybS9oaWdoYmRfbG9vcGZpbHRlcl9uZW9uLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2Fy
bS9oaWdoYmRfbG9vcGZpbHRlcl9uZW9uLmMKQEAgLTY2MSw2ICs2NjEsMTcgQEAgdm9pZCB2cHhf
aGlnaGJkX2xwZl92ZXJ0aWNhbF84X2R1YWxfbmVvbigKICAgdnB4X2hpZ2hiZF9scGZfdmVydGlj
YWxfOF9uZW9uKHMgKyA4ICogcCwgcCwgYmxpbWl0MSwgbGltaXQxLCB0aHJlc2gxLCBiZCk7CiB9
CiAKKy8vIFF1aWV0IHdhcm5pbmdzIG9mIHRoZSBmb3JtOiAndnB4X2RzcC9hcm0vaGlnaGJkX2xv
b3BmaWx0ZXJfbmVvbi5jfDY3NSBjb2wgNjd8CisvLyB3YXJuaW5nOiAnb3ExJyBtYXkgYmUgdXNl
ZCB1bmluaXRpYWxpemVkIGluIHRoaXMgZnVuY3Rpb24KKy8vIFstV21heWJlLXVuaW5pdGlhbGl6
ZWRdJywgZm9yIG9xMS1vcDEuIFdpdGhvdXQgcmV3b3JraW5nIHRoZSBjb2RlIG9yIGFkZGluZwor
Ly8gYW4gYWRkaXRpb25hbCBicmFuY2ggdGhpcyB3YXJuaW5nIGNhbm5vdCBiZSBzaWxlbmNlZCBv
dGhlcndpc2UuIFRoZQorLy8gbG9vcGZpbHRlciBpcyBvbmx5IGNhbGxlZCB3aGVuIG5lZWRlZCBm
b3IgYSBibG9jayBzbyB0aGVzZSBvdXRwdXQgcGl4ZWxzCisvLyB3aWxsIGJlIHNldC4KKyNpZiBk
ZWZpbmVkKF9fR05VQ19fKSAmJiBfX0dOVUNfXyA+PSA0ICYmICFkZWZpbmVkKF9fY2xhbmdfXykK
KyNwcmFnbWEgR0NDIGRpYWdub3N0aWMgcHVzaAorI3ByYWdtYSBHQ0MgZGlhZ25vc3RpYyBpZ25v
cmVkICItV21heWJlLXVuaW5pdGlhbGl6ZWQiCisjZW5kaWYKKwogc3RhdGljIHZvaWQgbHBmX2hv
cml6b250YWxfMTZfa2VybmVsKHVpbnQxNl90ICpzLCBpbnQgcCwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50MTZ4OF90IGJsaW1pdF92ZWMsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdWludDE2eDhfdCBsaW1pdF92ZWMs
CkBAIC03MjMsNiArNzM0LDEwIEBAIHN0YXRpYyB2b2lkIGxwZl92ZXJ0aWNhbF8xNl9rZXJuZWwo
dWludDE2X3QgKnMsIGludCBwLAogICB9CiB9CiAKKyNpZiBkZWZpbmVkKF9fR05VQ19fKSAmJiBf
X0dOVUNfXyA+PSA0ICYmICFkZWZpbmVkKF9fY2xhbmdfXykKKyNwcmFnbWEgR0NDIGRpYWdub3N0
aWMgcG9wCisjZW5kaWYKKwogdm9pZCB2cHhfaGlnaGJkX2xwZl9ob3Jpem9udGFsXzE2X25lb24o
dWludDE2X3QgKnMsIGludCBwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3QgdWludDhfdCAqYmxpbWl0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgY29uc3QgdWludDhfdCAqbGltaXQsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvYXJtL2xvb3BmaWx0ZXJfbmVvbi5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL2FybS9sb29w
ZmlsdGVyX25lb24uYwppbmRleCA3NDE5Y2VhMDIyZGU1ZGY0ZWYyMTQ4ZTM5MmJjZjVjYjc1ZmU2
YzZkLi5jNTRlNTg4MjM5NGQ3M2Q4ZGMwYWMzNTNiMzdjNWI5NDkxMTU5OTVlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9kc3AvYXJtL2xvb3BmaWx0ZXJfbmVvbi5jCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X2RzcC9hcm0vbG9vcGZpbHRlcl9uZW9uLmMKQEAgLTk3NSw2ICs5NzUsMTcgQEAgRlVO
X0xQRl8xNl9LRVJORUwoXywgOCkgICAgICAgIC8vIGxwZl8xNl9rZXJuZWwKIEZVTl9MUEZfMTZf
S0VSTkVMKF9kdWFsXywgMTYpICAvLyBscGZfMTZfZHVhbF9rZXJuZWwKICN1bmRlZiBGVU5fTFBG
XzE2X0tFUk5FTAogCisvLyBRdWlldCB3YXJuaW5ncyBvZiB0aGUgZm9ybTogJ3ZweF9kc3AvYXJt
L2xvb3BmaWx0ZXJfbmVvbi5jfDk4MSBjb2wgNDJ8CisvLyB3YXJuaW5nOiAnb3ExJyBtYXkgYmUg
dXNlZCB1bmluaXRpYWxpemVkIGluIHRoaXMgZnVuY3Rpb24KKy8vIFstV21heWJlLXVuaW5pdGlh
bGl6ZWRdJywgZm9yIG9xMS1vcDEuIFdpdGhvdXQgcmV3b3JraW5nIHRoZSBjb2RlIG9yIGFkZGlu
ZworLy8gYW4gYWRkaXRpb25hbCBicmFuY2ggdGhpcyB3YXJuaW5nIGNhbm5vdCBiZSBzaWxlbmNl
ZCBvdGhlcndpc2UuIFRoZQorLy8gbG9vcGZpbHRlciBpcyBvbmx5IGNhbGxlZCB3aGVuIG5lZWRl
ZCBmb3IgYSBibG9jayBzbyB0aGVzZSBvdXRwdXQgcGl4ZWxzCisvLyB3aWxsIGJlIHNldC4KKyNp
ZiBkZWZpbmVkKF9fR05VQ19fKSAmJiBfX0dOVUNfXyA+PSA0ICYmICFkZWZpbmVkKF9fY2xhbmdf
XykKKyNwcmFnbWEgR0NDIGRpYWdub3N0aWMgcHVzaAorI3ByYWdtYSBHQ0MgZGlhZ25vc3RpYyBp
Z25vcmVkICItV21heWJlLXVuaW5pdGlhbGl6ZWQiCisjZW5kaWYKKwogdm9pZCB2cHhfbHBmX2hv
cml6b250YWxfMTZfbmVvbih1aW50OF90ICpzLCBpbnQgcCwgY29uc3QgdWludDhfdCAqYmxpbWl0
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50OF90ICpsaW1pdCwg
Y29uc3QgdWludDhfdCAqdGhyZXNoKSB7CiAgIHVpbnQ4eDhfdCBwNywgcDYsIHA1LCBwNCwgcDMs
IHAyLCBwMSwgcDAsIHEwLCBxMSwgcTIsIHEzLCBxNCwgcTUsIHE2LCBxNywgb3A2LApAQCAtMTA5
MCwzICsxMTAxLDcgQEAgdm9pZCB2cHhfbHBmX3ZlcnRpY2FsXzE2X2R1YWxfbmVvbih1aW50OF90
ICpzLCBpbnQgcCwgY29uc3QgdWludDhfdCAqYmxpbWl0LAogICAgICAgICAgICAgICB2Z2V0X2hp
Z2hfdTgob3EwKSwgdmdldF9oaWdoX3U4KG9xMSkpOwogICB9CiB9CisKKyNpZiBkZWZpbmVkKF9f
R05VQ19fKSAmJiBfX0dOVUNfXyA+PSA0ICYmICFkZWZpbmVkKF9fY2xhbmdfXykKKyNwcmFnbWEg
R0NDIGRpYWdub3N0aWMgcG9wCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC9taXBzL21hY3Jvc19tc2EuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9taXBzL21hY3Jvc19tc2Eu
aAppbmRleCBhM2E1YTRkZmVlYjJkYzVhN2ZlODhjNTc1YTA4MDAxYzI5NzdiNWE4Li4zYzJmNTBj
NzkwYmY1M2Q0YjVjYjFhMmE1M2VhNGU0Yzk1NTFmODJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AvbWlwcy9tYWNyb3NfbXNhLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL21pcHMv
bWFjcm9zX21zYS5oCkBAIC04OCwxMCArODgsMTAgQEAKICAgICBjb25zdCB1aW50OF90ICpwc3Jj
X2x3X20gPSAoY29uc3QgdWludDhfdCAqKShwc3JjKTsgICAgICAgICAgXAogICAgIHVpbnQzMl90
IHZhbF9sd19tOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKLSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygidWx3ICAlW3ZhbF9sd19tXSwgICVb
cHNyY19sd19tXSAgXG5cdCIgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICAgICAgICAgICAgICAgICAgICAg
OiBbdmFsX2x3X21dICI9ciIodmFsX2x3X20pICAgICAgICAgICAgIFwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICA6IFtwc3JjX2x3X21dICJtIigqcHNyY19sd19tKSk7ICAgICAgICAgXAorICAg
IF9fYXNtX18gX192b2xhdGlsZV9fKCJsd3IgJVt2YWxfbHdfbV0sIDAoJVtwc3JjX2x3X21dKSBc
blx0IiBcCisgICAgICAgICAgICAgICAgICAgICAgICAgImx3bCAlW3ZhbF9sd19tXSwgMyglW3Bz
cmNfbHdfbV0pIFxuXHQiIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6IFt2YWxfbHdfbV0g
Ij0mciIodmFsX2x3X20pICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgIDog
W3BzcmNfbHdfbV0gInIiKHBzcmNfbHdfbSkpOyAgICAgICAgICBcCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICB2
YWxfbHdfbTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAogICB9KQpAQCAtMTAyLDEwICsxMDIsMTAgQEAKICAgICBjb25zdCB1aW50OF90ICpwc3Jj
X2xkX20gPSAoY29uc3QgdWludDhfdCAqKShwc3JjKTsgICAgICAgICAgXAogICAgIHVpbnQ2NF90
IHZhbF9sZF9tID0gMDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKLSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygidWxkICAlW3ZhbF9sZF9tXSwgICVb
cHNyY19sZF9tXSAgXG5cdCIgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICAgICAgICAgICAgICAgICAgICAg
OiBbdmFsX2xkX21dICI9ciIodmFsX2xkX20pICAgICAgICAgICAgIFwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICA6IFtwc3JjX2xkX21dICJtIigqcHNyY19sZF9tKSk7ICAgICAgICAgXAorICAg
IF9fYXNtX18gX192b2xhdGlsZV9fKCJsZHIgJVt2YWxfbGRfbV0sIDAoJVtwc3JjX2xkX21dKSBc
blx0IiBcCisgICAgICAgICAgICAgICAgICAgICAgICAgImxkbCAlW3ZhbF9sZF9tXSwgNyglW3Bz
cmNfbGRfbV0pIFxuXHQiIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICA6IFt2YWxfbGRfbV0g
Ij0mciIodmFsX2xkX20pICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgIDog
W3BzcmNfbGRfbV0gInIiKHBzcmNfbGRfbSkpOyAgICAgICAgICBcCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICB2
YWxfbGRfbTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAogICB9KQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL21pcHMvc2FkX21taS5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL21pcHMvc2FkX21taS5jCmluZGV4IDQzNjhkYjVmZGI3NzA4
Y2Q0MTU3MGE0MDI5NDk2ZDY5MmRkMWNjNDAuLmVhY2E0NzczZjJiODZlYmEyNTQwMDU0MjlmYzU5
NjgyODExY2YzMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9taXBzL3NhZF9tbWku
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbWlwcy9zYWRfbW1pLmMKQEAgLTM2NCw4ICszNjQs
OSBAQCBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCB2cHhfc2FkNjR4KGNvbnN0IHVpbnQ4X3Qg
KnNyYywgaW50IHNyY19zdHJpZGUsCiAgIGRvdWJsZSBmdG1wMSwgZnRtcDIsIGZ0bXAzLCBmdG1w
NCwgZnRtcDU7CiAgIG1pcHNfcmVnIGxfY291bnRlciA9IGNvdW50ZXI7CiAKKyAgLyogY2xhbmct
Zm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlICgKLSAgICAieG9yICAgICAgICAlW2Z0
bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgorICAgICJw
eG9yICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW2Z0bXA1XSAgICAgICAgICAg
IFxuXHQiCiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXG5cdCIKICAgICAvLyBJbmNsdWRlIHR3byBsb29wIGJvZHksIHRvIHJl
ZHVjZSBsb29wIHRpbWUuCiAgICAgU0FEX1NSQ19SRUZfQUJTX1NVQl82NApAQCAtMzgzLDYgKzM4
NCw3IEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IHZweF9zYWQ2NHgoY29uc3QgdWludDhf
dCAqc3JjLCBpbnQgc3JjX3N0cmlkZSwKICAgICA6IFtzcmNfc3RyaWRlXSJyIigobWlwc19yZWcp
c3JjX3N0cmlkZSksCiAgICAgICBbcmVmX3N0cmlkZV0iciIoKG1pcHNfcmVnKXJlZl9zdHJpZGUp
CiAgICk7CisgIC8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCiAgIHJldHVybiBzYWQ7CiB9CkBAIC00
MDUsOSArNDA3LDExIEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IHZweF9zYWRfYXZnNjR4
KGNvbnN0IHVpbnQ4X3QgKnNyYywgaW50IHNyY19zdHJpZGUsCiAgIHVuc2lnbmVkIGludCBzYWQ7
CiAgIGRvdWJsZSBmdG1wMSwgZnRtcDIsIGZ0bXAzLCBmdG1wNCwgZnRtcDU7CiAgIG1pcHNfcmVn
IGxfY291bnRlciA9IGNvdW50ZXI7CisgIG1pcHNfcmVnIGxfc2Vjb25kX3ByZWQgPSAobWlwc19y
ZWcpc2Vjb25kX3ByZWQ7CiAKKyAgLyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZv
bGF0aWxlICgKLSAgICAieG9yICAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgJVtm
dG1wNV0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDVdLCAgICVbZnRt
cDVdLCAgICAgICAlW2Z0bXA1XSAgICAgICAgICAgIFxuXHQiCiAgICAgIjE6ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAv
LyBJbmNsdWRlIHR3byBsb29wIGJvZHksIHRvIHJlZHVjZSBsb29wIHRpbWUuCiAgICAgU0FEX1NS
Q19BVkdSRUZfQUJTX1NVQl82NApAQCAtNDI0LDExICs0MjgsMTIgQEAgc3RhdGljIGlubGluZSB1
bnNpZ25lZCBpbnQgdnB4X3NhZF9hdmc2NHgoY29uc3QgdWludDhfdCAqc3JjLCBpbnQgc3JjX3N0
cmlkZSwKICAgICA6IFtmdG1wMV0iPSZmIihmdG1wMSksIFtmdG1wMl0iPSZmIihmdG1wMiksIFtm
dG1wM10iPSZmIihmdG1wMyksCiAgICAgICBbZnRtcDRdIj0mZiIoZnRtcDQpLCBbZnRtcDVdIj0m
ZiIoZnRtcDUpLCBbY291bnRlcl0iKyZyIihsX2NvdW50ZXIpLAogICAgICAgW3NyY10iKyZyIihz
cmMpLCBbcmVmXSIrJnIiKHJlZiksCi0gICAgICBbc2Vjb25kX3ByZWRdIismciIoKG1pcHNfcmVn
KXNlY29uZF9wcmVkKSwKKyAgICAgIFtzZWNvbmRfcHJlZF0iKyZyIihsX3NlY29uZF9wcmVkKSwK
ICAgICAgIFtzYWRdIj0mciIoc2FkKQogICAgIDogW3NyY19zdHJpZGVdInIiKChtaXBzX3JlZylz
cmNfc3RyaWRlKSwKICAgICAgIFtyZWZfc3RyaWRlXSJyIigobWlwc19yZWcpcmVmX3N0cmlkZSkK
ICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICovCiAKICAgcmV0dXJuIHNhZDsKIH0KQEAgLTQ1
MCw4ICs0NTUsOSBAQCBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCB2cHhfc2FkMzJ4KGNvbnN0
IHVpbnQ4X3QgKnNyYywgaW50IHNyY19zdHJpZGUsCiAgIGRvdWJsZSBmdG1wMSwgZnRtcDIsIGZ0
bXAzLCBmdG1wNCwgZnRtcDU7CiAgIG1pcHNfcmVnIGxfY291bnRlciA9IGNvdW50ZXI7CiAKKyAg
LyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlICgKLSAgICAieG9yICAg
ICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0
IgorICAgICJweG9yICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW2Z0bXA1XSAg
ICAgICAgICAgIFxuXHQiCiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAvLyBJbmNsdWRlIHR3byBsb29wIGJv
ZHksIHRvIHJlZHVjZSBsb29wIHRpbWUuCiAgICAgU0FEX1NSQ19SRUZfQUJTX1NVQl8zMgpAQCAt
NDY5LDYgKzQ3NSw3IEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IHZweF9zYWQzMngoY29u
c3QgdWludDhfdCAqc3JjLCBpbnQgc3JjX3N0cmlkZSwKICAgICA6IFtzcmNfc3RyaWRlXSJyIigo
bWlwc19yZWcpc3JjX3N0cmlkZSksCiAgICAgICBbcmVmX3N0cmlkZV0iciIoKG1pcHNfcmVnKXJl
Zl9zdHJpZGUpCiAgICk7CisgIC8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCiAgIHJldHVybiBzYWQ7
CiB9CkBAIC00OTMsOSArNTAwLDExIEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IHZweF9z
YWRfYXZnMzJ4KGNvbnN0IHVpbnQ4X3QgKnNyYywgaW50IHNyY19zdHJpZGUsCiAgIHVuc2lnbmVk
IGludCBzYWQ7CiAgIGRvdWJsZSBmdG1wMSwgZnRtcDIsIGZ0bXAzLCBmdG1wNCwgZnRtcDU7CiAg
IG1pcHNfcmVnIGxfY291bnRlciA9IGNvdW50ZXI7CisgIG1pcHNfcmVnIGxfc2Vjb25kX3ByZWQg
PSAobWlwc19yZWcpc2Vjb25kX3ByZWQ7CiAKKyAgLyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBf
X2FzbV9fIHZvbGF0aWxlICgKLSAgICAieG9yICAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwg
ICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDVd
LCAgICVbZnRtcDVdLCAgICAgICAlW2Z0bXA1XSAgICAgICAgICAgIFxuXHQiCiAgICAgIjE6ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5c
dCIKICAgICAvLyBJbmNsdWRlIHR3byBsb29wIGJvZHksIHRvIHJlZHVjZSBsb29wIHRpbWUuCiAg
ICAgU0FEX1NSQ19BVkdSRUZfQUJTX1NVQl8zMgpAQCAtNTEyLDExICs1MjEsMTIgQEAgc3RhdGlj
IGlubGluZSB1bnNpZ25lZCBpbnQgdnB4X3NhZF9hdmczMngoY29uc3QgdWludDhfdCAqc3JjLCBp
bnQgc3JjX3N0cmlkZSwKICAgICA6IFtmdG1wMV0iPSZmIihmdG1wMSksIFtmdG1wMl0iPSZmIihm
dG1wMiksIFtmdG1wM10iPSZmIihmdG1wMyksCiAgICAgICBbZnRtcDRdIj0mZiIoZnRtcDQpLCBb
ZnRtcDVdIj0mZiIoZnRtcDUpLCBbY291bnRlcl0iKyZyIihsX2NvdW50ZXIpLAogICAgICAgW3Ny
Y10iKyZyIihzcmMpLCBbcmVmXSIrJnIiKHJlZiksCi0gICAgICBbc2Vjb25kX3ByZWRdIismciIo
KG1pcHNfcmVnKXNlY29uZF9wcmVkKSwKKyAgICAgIFtzZWNvbmRfcHJlZF0iKyZyIihsX3NlY29u
ZF9wcmVkKSwKICAgICAgIFtzYWRdIj0mciIoc2FkKQogICAgIDogW3NyY19zdHJpZGVdInIiKCht
aXBzX3JlZylzcmNfc3RyaWRlKSwKICAgICAgIFtyZWZfc3RyaWRlXSJyIigobWlwc19yZWcpcmVm
X3N0cmlkZSkKICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICovCiAKICAgcmV0dXJuIHNhZDsK
IH0KQEAgLTUzOSw4ICs1NDksOSBAQCBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCB2cHhfc2Fk
MTZ4KGNvbnN0IHVpbnQ4X3QgKnNyYywgaW50IHNyY19zdHJpZGUsCiAgIGRvdWJsZSBmdG1wMSwg
ZnRtcDIsIGZ0bXAzLCBmdG1wNCwgZnRtcDU7CiAgIG1pcHNfcmVnIGxfY291bnRlciA9IGNvdW50
ZXI7CiAKKyAgLyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlICgKLSAg
ICAieG9yICAgICAgICAlW2Z0bXA1XSwgICAlW2Z0bXA1XSwgICAgICAgJVtmdG1wNV0gICAgICAg
ICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAl
W2Z0bXA1XSAgICAgICAgICAgIFxuXHQiCiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAvLyBJbmNsdWRlIHR3
byBsb29wIGJvZHksIHRvIHJlZHVjZSBsb29wIHRpbWUuCiAgICAgU0FEX1NSQ19SRUZfQUJTX1NV
Ql8xNgpAQCAtNTU4LDYgKzU2OSw3IEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IHZweF9z
YWQxNngoY29uc3QgdWludDhfdCAqc3JjLCBpbnQgc3JjX3N0cmlkZSwKICAgICA6IFtzcmNfc3Ry
aWRlXSJyIigobWlwc19yZWcpc3JjX3N0cmlkZSksCiAgICAgICBbcmVmX3N0cmlkZV0iciIoKG1p
cHNfcmVnKXJlZl9zdHJpZGUpCiAgICk7CisgIC8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCiAgIHJl
dHVybiBzYWQ7CiB9CkBAIC01ODYsOSArNTk4LDExIEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQg
aW50IHZweF9zYWRfYXZnMTZ4KGNvbnN0IHVpbnQ4X3QgKnNyYywgaW50IHNyY19zdHJpZGUsCiAg
IHVuc2lnbmVkIGludCBzYWQ7CiAgIGRvdWJsZSBmdG1wMSwgZnRtcDIsIGZ0bXAzLCBmdG1wNCwg
ZnRtcDU7CiAgIG1pcHNfcmVnIGxfY291bnRlciA9IGNvdW50ZXI7CisgIG1pcHNfcmVnIGxfc2Vj
b25kX3ByZWQgPSAobWlwc19yZWcpc2Vjb25kX3ByZWQ7CiAKKyAgLyogY2xhbmctZm9ybWF0IG9m
ZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlICgKLSAgICAieG9yICAgICAgICAlW2Z0bXA1XSwgICAl
W2Z0bXA1XSwgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAg
ICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW2Z0bXA1XSAgICAgICAgICAgIFxuXHQiCiAg
ICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXG5cdCIKICAgICAvLyBJbmNsdWRlIHR3byBsb29wIGJvZHksIHRvIHJlZHVjZSBsb29w
IHRpbWUuCiAgICAgU0FEX1NSQ19BVkdSRUZfQUJTX1NVQl8xNgpAQCAtNjA1LDExICs2MTksMTIg
QEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgdnB4X3NhZF9hdmcxNngoY29uc3QgdWludDhf
dCAqc3JjLCBpbnQgc3JjX3N0cmlkZSwKICAgICA6IFtmdG1wMV0iPSZmIihmdG1wMSksIFtmdG1w
Ml0iPSZmIihmdG1wMiksIFtmdG1wM10iPSZmIihmdG1wMyksCiAgICAgICBbZnRtcDRdIj0mZiIo
ZnRtcDQpLCBbZnRtcDVdIj0mZiIoZnRtcDUpLCBbY291bnRlcl0iKyZyIihsX2NvdW50ZXIpLAog
ICAgICAgW3NyY10iKyZyIihzcmMpLCBbcmVmXSIrJnIiKHJlZiksCi0gICAgICBbc2Vjb25kX3By
ZWRdIismciIoKG1pcHNfcmVnKXNlY29uZF9wcmVkKSwKKyAgICAgIFtzZWNvbmRfcHJlZF0iKyZy
IihsX3NlY29uZF9wcmVkKSwKICAgICAgIFtzYWRdIj0mciIoc2FkKQogICAgIDogW3NyY19zdHJp
ZGVdInIiKChtaXBzX3JlZylzcmNfc3RyaWRlKSwKICAgICAgIFtyZWZfc3RyaWRlXSJyIigobWlw
c19yZWcpcmVmX3N0cmlkZSkKICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICovCiAKICAgcmV0
dXJuIHNhZDsKIH0KQEAgLTYzMiw4ICs2NDcsOSBAQCBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGlu
dCB2cHhfc2FkOHgoY29uc3QgdWludDhfdCAqc3JjLCBpbnQgc3JjX3N0cmlkZSwKICAgZG91Ymxl
IGZ0bXAxLCBmdG1wMiwgZnRtcDM7CiAgIG1pcHNfcmVnIGxfY291bnRlciA9IGNvdW50ZXI7CiAK
KyAgLyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlICgKLSAgICAieG9y
ICAgICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAzXSwgICAgICAgJVtmdG1wM10gICAgICAgICAgICBc
blx0IgorICAgICJweG9yICAgICAgICVbZnRtcDNdLCAgICVbZnRtcDNdLCAgICAgICAlW2Z0bXAz
XSAgICAgICAgICAgIFxuXHQiCiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAvLyBJbmNsdWRlIHR3byBsb29w
IGJvZHksIHRvIHJlZHVjZSBsb29wIHRpbWUuCiAgICAgU0FEX1NSQ19SRUZfQUJTX1NVQl84CkBA
IC02NTEsNiArNjY3LDcgQEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgdnB4X3NhZDh4KGNv
bnN0IHVpbnQ4X3QgKnNyYywgaW50IHNyY19zdHJpZGUsCiAgICAgOiBbc3JjX3N0cmlkZV0iciIo
KG1pcHNfcmVnKXNyY19zdHJpZGUpLAogICAgICAgW3JlZl9zdHJpZGVdInIiKChtaXBzX3JlZyly
ZWZfc3RyaWRlKQogICApOworICAvKiBjbGFuZy1mb3JtYXQgb24gKi8KIAogICByZXR1cm4gc2Fk
OwogfQpAQCAtNjc5LDkgKzY5NiwxMSBAQCBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCB2cHhf
c2FkX2F2Zzh4KGNvbnN0IHVpbnQ4X3QgKnNyYywgaW50IHNyY19zdHJpZGUsCiAgIHVuc2lnbmVk
IGludCBzYWQ7CiAgIGRvdWJsZSBmdG1wMSwgZnRtcDIsIGZ0bXAzOwogICBtaXBzX3JlZyBsX2Nv
dW50ZXIgPSBjb3VudGVyOworICBtaXBzX3JlZyBsX3NlY29uZF9wcmVkID0gKG1pcHNfcmVnKXNl
Y29uZF9wcmVkOwogCisgIC8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KICAgX19hc21fXyB2b2xhdGls
ZSAoCi0gICAgInhvciAgICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICVbZnRtcDNd
ICAgICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAzXSwg
ICAgICAgJVtmdG1wM10gICAgICAgICAgICBcblx0IgogICAgICIxOiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgLy8gSW5j
bHVkZSB0d28gbG9vcCBib2R5LCB0byByZWR1Y2UgbG9vcCB0aW1lLgogICAgIFNBRF9TUkNfQVZH
UkVGX0FCU19TVUJfOApAQCAtNjk3LDExICs3MTYsMTIgQEAgc3RhdGljIGlubGluZSB1bnNpZ25l
ZCBpbnQgdnB4X3NhZF9hdmc4eChjb25zdCB1aW50OF90ICpzcmMsIGludCBzcmNfc3RyaWRlLAog
ICAgICJtZmMxICAgICAgICVbc2FkXSwgICAgICVbZnRtcDNdICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCiAgICAgOiBbZnRtcDFdIj0mZiIoZnRtcDEpLCBbZnRtcDJdIj0mZiIoZnRt
cDIpLCBbZnRtcDNdIj0mZiIoZnRtcDMpLAogICAgICAgW2NvdW50ZXJdIismciIobF9jb3VudGVy
KSwgW3NyY10iKyZyIihzcmMpLCBbcmVmXSIrJnIiKHJlZiksCi0gICAgICBbc2Vjb25kX3ByZWRd
IismciIoKG1pcHNfcmVnKXNlY29uZF9wcmVkKSwKKyAgICAgIFtzZWNvbmRfcHJlZF0iKyZyIihs
X3NlY29uZF9wcmVkKSwKICAgICAgIFtzYWRdIj0mciIoc2FkKQogICAgIDogW3NyY19zdHJpZGVd
InIiKChtaXBzX3JlZylzcmNfc3RyaWRlKSwKICAgICAgIFtyZWZfc3RyaWRlXSJyIigobWlwc19y
ZWcpcmVmX3N0cmlkZSkKICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICovCiAKICAgcmV0dXJu
IHNhZDsKIH0KQEAgLTcyNCw4ICs3NDQsOSBAQCBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCB2
cHhfc2FkNHgoY29uc3QgdWludDhfdCAqc3JjLCBpbnQgc3JjX3N0cmlkZSwKICAgZG91YmxlIGZ0
bXAxLCBmdG1wMiwgZnRtcDM7CiAgIG1pcHNfcmVnIGxfY291bnRlciA9IGNvdW50ZXI7CiAKKyAg
LyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlICgKLSAgICAieG9yICAg
ICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAzXSwgICAgICAgJVtmdG1wM10gICAgICAgICAgICBcblx0
IgorICAgICJweG9yICAgICAgICVbZnRtcDNdLCAgICVbZnRtcDNdLCAgICAgICAlW2Z0bXAzXSAg
ICAgICAgICAgIFxuXHQiCiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAvLyBJbmNsdWRlIHR3byBsb29wIGJv
ZHksIHRvIHJlZHVjZSBsb29wIHRpbWUuCiAgICAgU0FEX1NSQ19SRUZfQUJTX1NVQl80CkBAIC03
NDMsNiArNzY0LDcgQEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgdnB4X3NhZDR4KGNvbnN0
IHVpbnQ4X3QgKnNyYywgaW50IHNyY19zdHJpZGUsCiAgICAgOiBbc3JjX3N0cmlkZV0iciIoKG1p
cHNfcmVnKXNyY19zdHJpZGUpLAogICAgICAgW3JlZl9zdHJpZGVdInIiKChtaXBzX3JlZylyZWZf
c3RyaWRlKQogICApOworICAvKiBjbGFuZy1mb3JtYXQgb24gKi8KIAogICByZXR1cm4gc2FkOwog
fQpAQCAtNzY3LDkgKzc4OSwxMSBAQCBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCB2cHhfc2Fk
X2F2ZzR4KGNvbnN0IHVpbnQ4X3QgKnNyYywgaW50IHNyY19zdHJpZGUsCiAgIHVuc2lnbmVkIGlu
dCBzYWQ7CiAgIGRvdWJsZSBmdG1wMSwgZnRtcDIsIGZ0bXAzOwogICBtaXBzX3JlZyBsX2NvdW50
ZXIgPSBjb3VudGVyOworICBtaXBzX3JlZyBsX3NlY29uZF9wcmVkID0gKG1pcHNfcmVnKXNlY29u
ZF9wcmVkOwogCisgIC8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KICAgX19hc21fXyB2b2xhdGlsZSAo
Ci0gICAgInhvciAgICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICVbZnRtcDNdICAg
ICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAzXSwgICAg
ICAgJVtmdG1wM10gICAgICAgICAgICBcblx0IgogICAgICIxOiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgLy8gSW5jbHVk
ZSB0d28gbG9vcCBib2R5LCB0byByZWR1Y2UgbG9vcCB0aW1lLgogICAgIFNBRF9TUkNfQVZHUkVG
X0FCU19TVUJfNApAQCAtNzg1LDExICs4MDksMTIgQEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBp
bnQgdnB4X3NhZF9hdmc0eChjb25zdCB1aW50OF90ICpzcmMsIGludCBzcmNfc3RyaWRlLAogICAg
ICJtZmMxICAgICAgICVbc2FkXSwgICAgICVbZnRtcDNdICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFxuXHQiCiAgICAgOiBbZnRtcDFdIj0mZiIoZnRtcDEpLCBbZnRtcDJdIj0mZiIoZnRtcDIp
LCBbZnRtcDNdIj0mZiIoZnRtcDMpLAogICAgICAgW2NvdW50ZXJdIismciIobF9jb3VudGVyKSwg
W3NyY10iKyZyIihzcmMpLCBbcmVmXSIrJnIiKHJlZiksCi0gICAgICBbc2Vjb25kX3ByZWRdIism
ciIoKG1pcHNfcmVnKXNlY29uZF9wcmVkKSwKKyAgICAgIFtzZWNvbmRfcHJlZF0iKyZyIihsX3Nl
Y29uZF9wcmVkKSwKICAgICAgIFtzYWRdIj0mciIoc2FkKQogICAgIDogW3NyY19zdHJpZGVdInIi
KChtaXBzX3JlZylzcmNfc3RyaWRlKSwKICAgICAgIFtyZWZfc3RyaWRlXSJyIigobWlwc19yZWcp
cmVmX3N0cmlkZSkKICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICovCiAKICAgcmV0dXJuIHNh
ZDsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9taXBzL3N1YnRyYWN0X21taS5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL21pcHMvc3VidHJhY3RfbW1pLmMKaW5kZXggOWYzNjE3MDRh
ODFiYmIyZmZkZjE2NGI4ZWU2MjA3NGUyMjIxYjQ2NC4uOGJkN2U2OTc3Y2QwNzE5MjgyMDkyMmZi
NGZmM2ZmN2MwZmI0YmM3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL21pcHMvc3Vi
dHJhY3RfbW1pLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL21pcHMvc3VidHJhY3RfbW1pLmMK
QEAgLTI0LDcgKzI0LDcgQEAgdm9pZCB2cHhfc3VidHJhY3RfYmxvY2tfbW1pKGludCByb3dzLCBp
bnQgY29scywgaW50MTZfdCAqZGlmZiwKICAgICBzd2l0Y2ggKHJvd3MpIHsKICAgICAgIGNhc2Ug
NDoKICAgICAgICAgX19hc21fXyB2b2xhdGlsZSgKLSAgICAgICAgICAgICJ4b3IgICAgICAgICVb
ZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMF0gICAgICAgIFxuXHQiCisgICAg
ICAgICAgICAicHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRt
cDBdICAgICAgICBcblx0IgogI2lmIF9NSVBTX1NJTSA9PSBfQUJJTzMyCiAgICAgICAgICAgICAi
dWx3ICAgICAgICAlW3RtcDBdLCAgICAweDAwKCVbc3JjXSkgICAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgogICAgICAgICAgICAgIm10YzEgICAgICAgJVt0bXAwXSwgICAgJVtmdG1wMV0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKQEAgLTExOCw3ICsxMTgsNyBAQCB2b2lkIHZw
eF9zdWJ0cmFjdF9ibG9ja19tbWkoaW50IHJvd3MsIGludCBjb2xzLCBpbnQxNl90ICpkaWZmLAog
ICAgICAgICBicmVhazsKICAgICAgIGNhc2UgODoKICAgICAgICAgX19hc21fXyB2b2xhdGlsZSgK
LSAgICAgICAgICAgICJ4b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAgICAg
JVtmdG1wMF0gICAgICAgIFxuXHQiCisgICAgICAgICAgICAicHhvciAgICAgICAlW2Z0bXAwXSwg
ICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDBdICAgICAgICBcblx0IgogICAgICAgICAgICAg
ImxpICAgICAgICAgJVt0bXAwXSwgICAgMHgwMiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXG5cdCIKICAgICAgICAgICAgICIxOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgICAgICAgICAiZ3NsZGxjMSAgICAl
W2Z0bXAxXSwgICAweDA3KCVbc3JjXSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgpAQCAt
MjA2LDcgKzIwNiw3IEBAIHZvaWQgdnB4X3N1YnRyYWN0X2Jsb2NrX21taShpbnQgcm93cywgaW50
IGNvbHMsIGludDE2X3QgKmRpZmYsCiAgICAgICAgIGJyZWFrOwogICAgICAgY2FzZSAxNjoKICAg
ICAgICAgX19hc21fXyB2b2xhdGlsZSgKLSAgICAgICAgICAgICJ4b3IgICAgICAgICVbZnRtcDBd
LCAgICVbZnRtcDBdLCAgICAgICAgICAgJVtmdG1wMF0gICAgICAgIFxuXHQiCisgICAgICAgICAg
ICAicHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgICAgICVbZnRtcDBdICAg
ICAgICBcblx0IgogICAgICAgICAgICAgImxpICAgICAgICAgJVt0bXAwXSwgICAgMHgwOCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAgICAgICAgICIxOiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAg
ICAgICAgICAgICAiZ3NsZGxjMSAgICAlW2Z0bXAxXSwgICAweDA3KCVbc3JjXSkgICAgICAgICAg
ICAgICAgICAgICAgICBcblx0IgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL21pcHMv
dmFyaWFuY2VfbW1pLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbWlwcy92YXJpYW5jZV9tbWkuYwpp
bmRleCBjMTc4MGMzM2FmYTk4NTBjZGE2ZWJhZTU0MzkyMWJmOTg0NTA2NTYzLi5jMmFkY2ZhMDE4
OTQ3ZWI5N2ZkOTQ3ZDllMjdjOTkxM2ZlZDAzYmU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AvbWlwcy92YXJpYW5jZV9tbWkuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbWlwcy92
YXJpYW5jZV9tbWkuYwpAQCAtMTUwLDcgKzE1MCw3IEBAIHN0YXRpYyBjb25zdCB1aW50OF90IGJp
bGluZWFyX2ZpbHRlcnNbOF1bMl0gPSB7CiAgICJwc3JsaCAgICAgICVbZnRtcDJdLCAgICVbZnRt
cDJdLCAgICAgICAlW2Z0bXA2XSAgICAgICAgICAgIFxuXHQiIFwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAv
KiBzdG9yZTogdGVtcDJbMF0gfiB0ZW1wMlszXSAqLyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCi0gICJhbmQgICAgICAgICVbZnRtcDJdLCAgICVbZnRtcDJdLCAgICAgICAlW21h
c2tdICAgICAgICAgICAgIFxuXHQiIFwKKyAgInBhbmQgICAgICAgJVtmdG1wMl0sICAgJVtmdG1w
Ml0sICAgICAgICVbbWFza10gICAgICAgICAgICAgXG5cdCIgXAogICAicGFja3VzaGIgICAlW2Z0
bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IiBcCiAgICJn
c3NkcmMxICAgICVbZnRtcDJdLCAgIDB4MDAoJVt0ZW1wMl9wdHJdKSAgICAgICAgICAgICAgICAg
IFxuXHQiCiAKQEAgLTE2Myw3ICsxNjMsNyBAQCBzdGF0aWMgY29uc3QgdWludDhfdCBiaWxpbmVh
cl9maWx0ZXJzWzhdWzJdID0gewogICAicHNybGggICAgICAlW2Z0bXA0XSwgICAlW2Z0bXA0XSwg
ICAgICAgJVtmdG1wNl0gICAgICAgICAgICBcblx0IiBcCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgLyogc3Rv
cmU6IHRlbXAyWzBdIH4gdGVtcDJbM10gKi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAotICAiYW5kICAgICAgICAlW2Z0bXA0XSwgICAlW2Z0bXA0XSwgICAgICAgJVttYXNrXSAg
ICAgICAgICAgICBcblx0IiBcCisgICJwYW5kICAgICAgICVbZnRtcDRdLCAgICVbZnRtcDRdLCAg
ICAgICAlW21hc2tdICAgICAgICAgICAgIFxuXHQiIFwKICAgInBhY2t1c2hiICAgJVtmdG1wNF0s
ICAgJVtmdG1wNF0sICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIgXAogICAiZ3NzZHJj
MSAgICAlW2Z0bXA0XSwgICAweDAwKCVbdGVtcDJfcHRyXSkgICAgICAgICAgICAgICAgICBcblx0
IgogCkBAIC0yMjUsOCArMjI1LDggQEAgc3RhdGljIGNvbnN0IHVpbnQ4X3QgYmlsaW5lYXJfZmls
dGVyc1s4XVsyXSA9IHsKICAgInBzcmxoICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAg
ICVbZnRtcDE0XSAgICAgICAgICAgXG5cdCIgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgIC8qIHN0b3JlOiB0
ZW1wMlswXSB+IHRlbXAyWzddICovICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
LSAgImFuZCAgICAgICAgJVtmdG1wMl0sICAgJVtmdG1wMl0sICAgICAgICVbbWFza10gICAgICAg
ICAgICAgXG5cdCIgXAotICAiYW5kICAgICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAzXSwgICAgICAg
JVttYXNrXSAgICAgICAgICAgICBcblx0IiBcCisgICJwYW5kICAgICAgICVbZnRtcDJdLCAgICVb
ZnRtcDJdLCAgICAgICAlW21hc2tdICAgICAgICAgICAgIFxuXHQiIFwKKyAgInBhbmQgICAgICAg
JVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICVbbWFza10gICAgICAgICAgICAgXG5cdCIgXAog
ICAicGFja3VzaGIgICAlW2Z0bXAyXSwgICAlW2Z0bXAyXSwgICAgICAgJVtmdG1wM10gICAgICAg
ICAgICBcblx0IiBcCiAgICJnc3NkbGMxICAgICVbZnRtcDJdLCAgIDB4MDcoJVt0ZW1wMl9wdHJd
KSAgICAgICAgICAgICAgICAgIFxuXHQiIFwKICAgImdzc2RyYzEgICAgJVtmdG1wMl0sICAgMHgw
MCglW3RlbXAyX3B0cl0pICAgICAgICAgICAgICAgICAgXG5cdCIKQEAgLTI0Nyw4ICsyNDcsOCBA
QCBzdGF0aWMgY29uc3QgdWludDhfdCBiaWxpbmVhcl9maWx0ZXJzWzhdWzJdID0gewogICAicHNy
bGggICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA5XSwgICAgICAgJVtmdG1wMTRdICAgICAgICAgICBc
blx0IiBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwKICAgLyogc3RvcmU6IHRlbXAyWzBdIH4gdGVtcDJbN10gKi8g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAiYW5kICAgICAgICAlW2Z0bXA4
XSwgICAlW2Z0bXA4XSwgICAgICAgJVttYXNrXSAgICAgICAgICAgICBcblx0IiBcCi0gICJhbmQg
ICAgICAgICVbZnRtcDldLCAgICVbZnRtcDldLCAgICAgICAlW21hc2tdICAgICAgICAgICAgIFxu
XHQiIFwKKyAgInBhbmQgICAgICAgJVtmdG1wOF0sICAgJVtmdG1wOF0sICAgICAgICVbbWFza10g
ICAgICAgICAgICAgXG5cdCIgXAorICAicGFuZCAgICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA5XSwg
ICAgICAgJVttYXNrXSAgICAgICAgICAgICBcblx0IiBcCiAgICJwYWNrdXNoYiAgICVbZnRtcDhd
LCAgICVbZnRtcDhdLCAgICAgICAlW2Z0bXA5XSAgICAgICAgICAgIFxuXHQiIFwKICAgImdzc2Rs
YzEgICAgJVtmdG1wOF0sICAgMHgwNyglW3RlbXAyX3B0cl0pICAgICAgICAgICAgICAgICAgXG5c
dCIgXAogICAiZ3NzZHJjMSAgICAlW2Z0bXA4XSwgICAweDAwKCVbdGVtcDJfcHRyXSkgICAgICAg
ICAgICAgICAgICBcblx0IgpAQCAtMzE5LDggKzMxOSw4IEBAIHN0YXRpYyBjb25zdCB1aW50OF90
IGJpbGluZWFyX2ZpbHRlcnNbOF1bMl0gPSB7CiAgICJwc3JsaCAgICAgICVbZnRtcDVdLCAgICVb
ZnRtcDVdLCAgICAgICAlW2Z0bXAxNF0gICAgICAgICAgIFxuXHQiIFwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAog
ICAvKiBzdG9yZTogdGVtcDJbOF0gfiB0ZW1wMlsxNV0gKi8gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCi0gICJhbmQgICAgICAgICVbZnRtcDRdLCAgICVbZnRtcDRdLCAgICAgICAl
W21hc2tdICAgICAgICAgICAgIFxuXHQiIFwKLSAgImFuZCAgICAgICAgJVtmdG1wNV0sICAgJVtm
dG1wNV0sICAgICAgICVbbWFza10gICAgICAgICAgICAgXG5cdCIgXAorICAicGFuZCAgICAgICAl
W2Z0bXA0XSwgICAlW2Z0bXA0XSwgICAgICAgJVttYXNrXSAgICAgICAgICAgICBcblx0IiBcCisg
ICJwYW5kICAgICAgICVbZnRtcDVdLCAgICVbZnRtcDVdLCAgICAgICAlW21hc2tdICAgICAgICAg
ICAgIFxuXHQiIFwKICAgInBhY2t1c2hiICAgJVtmdG1wNF0sICAgJVtmdG1wNF0sICAgICAgICVb
ZnRtcDVdICAgICAgICAgICAgXG5cdCIgXAogICAiZ3NzZGxjMSAgICAlW2Z0bXA0XSwgICAweDBm
KCVbdGVtcDJfcHRyXSkgICAgICAgICAgICAgICAgICBcblx0IiBcCiAgICJnc3NkcmMxICAgICVb
ZnRtcDRdLCAgIDB4MDgoJVt0ZW1wMl9wdHJdKSAgICAgICAgICAgICAgICAgIFxuXHQiCkBAIC0z
NDMsOCArMzQzLDggQEAgc3RhdGljIGNvbnN0IHVpbnQ4X3QgYmlsaW5lYXJfZmlsdGVyc1s4XVsy
XSA9IHsKICAgInBzcmxoICAgICAgJVtmdG1wMTFdLCAgJVtmdG1wMTFdLCAgICAgICVbZnRtcDE0
XSAgICAgICAgICAgXG5cdCIgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgIC8qIHN0b3JlOiB0ZW1wMls4XSB+
IHRlbXAyWzE1XSAqLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgImFuZCAg
ICAgICAgJVtmdG1wMTBdLCAgJVtmdG1wMTBdLCAgICAgICVbbWFza10gICAgICAgICAgICAgXG5c
dCIgXAotICAiYW5kICAgICAgICAlW2Z0bXAxMV0sICAlW2Z0bXAxMV0sICAgICAgJVttYXNrXSAg
ICAgICAgICAgICBcblx0IiBcCisgICJwYW5kICAgICAgICVbZnRtcDEwXSwgICVbZnRtcDEwXSwg
ICAgICAlW21hc2tdICAgICAgICAgICAgIFxuXHQiIFwKKyAgInBhbmQgICAgICAgJVtmdG1wMTFd
LCAgJVtmdG1wMTFdLCAgICAgICVbbWFza10gICAgICAgICAgICAgXG5cdCIgXAogICAicGFja3Vz
aGIgICAlW2Z0bXAxMF0sICAlW2Z0bXAxMF0sICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0
IiBcCiAgICJnc3NkbGMxICAgICVbZnRtcDEwXSwgIDB4MGYoJVt0ZW1wMl9wdHJdKSAgICAgICAg
ICAgICAgICAgIFxuXHQiIFwKICAgImdzc2RyYzEgICAgJVtmdG1wMTBdLCAgMHgwOCglW3RlbXAy
X3B0cl0pICAgICAgICAgICAgICAgICAgXG5cdCIKQEAgLTQxNCwxMyArNDE0LDE0IEBAIHN0YXRp
YyBpbmxpbmUgdWludDMyX3QgdnB4X3ZhcmlhbmNlNjR4KGNvbnN0IHVpbnQ4X3QgKnNyY19wdHIs
IGludCBzcmNfc3RyaWRlLAogCiAgICpzc2UgPSAwOwogCisgIC8qIGNsYW5nLWZvcm1hdCBvZmYg
Ki8KICAgX19hc21fXyB2b2xhdGlsZSAoCiAgICAgImxpICAgICAgICAgJVt0bXAwXSwgICAgMHgy
MCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAibXRjMSAgICAgICAl
W3RtcDBdLCAgICAlW2Z0bXAxMV0gICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAg
IE1NSV9MKCVbdG1wMF0sICVbaGlnaF0sIDB4MDApCi0gICAgInhvciAgICAgICAgJVtmdG1wMF0s
ICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKLSAgICAieG9yICAg
ICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA5XSwgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0
IgotICAgICJ4b3IgICAgICAgICVbZnRtcDEwXSwgICVbZnRtcDEwXSwgICAgICAlW2Z0bXAxMF0g
ICAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAg
ICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA5XSwg
ICAlW2Z0bXA5XSwgICAgICAgJVtmdG1wOV0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAg
ICAgICVbZnRtcDEwXSwgICVbZnRtcDEwXSwgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQi
CiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXG5cdCIKICAgICAiZ3NsZGxjMSAgICAlW2Z0bXAxXSwgICAweDA3KCVbc3JjX3B0
cl0pICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJnc2xkcmMxICAgICVbZnRtcDFdLCAg
IDB4MDAoJVtzcmNfcHRyXSkgICAgICAgICAgICAgICAgICAgIFxuXHQiCkBAIC00NzgsNyArNDc5
LDcgQEAgc3RhdGljIGlubGluZSB1aW50MzJfdCB2cHhfdmFyaWFuY2U2NHgoY29uc3QgdWludDhf
dCAqc3JjX3B0ciwgaW50IHNyY19zdHJpZGUsCiAgICAgIm1mYzEgICAgICAgJVt0bXAxXSwgICAg
JVtmdG1wOV0gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAibWZoYzEgICAg
ICAlW3RtcDJdLCAgICAlW2Z0bXA5XSAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0Igog
ICAgICJhZGR1ICAgICAgICVbc3VtXSwgICAgICVbdG1wMV0sICAgICAgICAlW3RtcDJdICAgICAg
ICAgICAgIFxuXHQiCi0gICAgImRzcmwgICAgICAgJVtmdG1wMV0sICAgJVtmdG1wMTBdLCAgICAg
ICVbZnRtcDExXSAgICAgICAgICAgXG5cdCIKKyAgICAic3NybGQgICAgICAlW2Z0bXAxXSwgICAl
W2Z0bXAxMF0sICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0IgogICAgICJwYWRkdyAgICAg
ICVbZnRtcDFdLCAgICVbZnRtcDFdLCAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCiAg
ICAgInN3YzEgICAgICAgJVtmdG1wMV0sICAgMHgwMCglW3NzZV0pICAgICAgICAgICAgICAgICAg
ICAgICAgXG5cdCIKICAgICA6IFtmdG1wMF0iPSZmIihmdG1wWzBdKSwgICAgICAgICAgICBbZnRt
cDFdIj0mZiIoZnRtcFsxXSksCkBAIC00OTYsNiArNDk3LDcgQEAgc3RhdGljIGlubGluZSB1aW50
MzJfdCB2cHhfdmFyaWFuY2U2NHgoY29uc3QgdWludDhfdCAqc3JjX3B0ciwgaW50IHNyY19zdHJp
ZGUsCiAgICAgICBbaGlnaF0iciIoJmhpZ2gpLCBbc3NlXSJyIihzc2UpCiAgICAgOiAibWVtb3J5
IgogICApOworICAvKiBjbGFuZy1mb3JtYXQgb24gKi8KIAogICByZXR1cm4gKnNzZSAtICgoKGlu
dDY0X3Qpc3VtICogc3VtKSAvICg2NCAqIGhpZ2gpKTsKIH0KQEAgLTUxOSwxMyArNTIxLDE0IEBA
IHVpbnQzMl90IHZweF92YXJpYW5jZTMyeDY0X21taShjb25zdCB1aW50OF90ICpzcmNfcHRyLCBp
bnQgc3JjX3N0cmlkZSwKIAogICAqc3NlID0gMDsKIAorICAvKiBjbGFuZy1mb3JtYXQgb2ZmICov
CiAgIF9fYXNtX18gdm9sYXRpbGUgKAogICAgICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4MjAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgIm10YzEgICAgICAgJVt0
bXAwXSwgICAgJVtmdG1wMTFdICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAi
bGkgICAgICAgICAlW3RtcDBdLCAgICAweDQwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0
bXAwXSAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wOV0sICAgJVtmdG1w
OV0sICAgICAgICVbZnRtcDldICAgICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0
bXAxMF0sICAlW2Z0bXAxMF0sICAgICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0IgorICAgICJw
eG9yICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0bXAwXSAgICAgICAgICAg
IFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgICAgICVbZnRt
cDldICAgICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAxMF0sICAlW2Z0bXAx
MF0sICAgICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0IgogICAgICIxOiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImdz
bGRsYzEgICAgJVtmdG1wMV0sICAgMHgwNyglW3NyY19wdHJdKSAgICAgICAgICAgICAgICAgICAg
XG5cdCIKICAgICAiZ3NsZHJjMSAgICAlW2Z0bXAxXSwgICAweDAwKCVbc3JjX3B0cl0pICAgICAg
ICAgICAgICAgICAgICBcblx0IgpAQCAtNTU5LDcgKzU2Miw3IEBAIHVpbnQzMl90IHZweF92YXJp
YW5jZTMyeDY0X21taShjb25zdCB1aW50OF90ICpzcmNfcHRyLCBpbnQgc3JjX3N0cmlkZSwKICAg
ICAibWZjMSAgICAgICAlW3RtcDFdLCAgICAlW2Z0bXA5XSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcblx0IgogICAgICJtZmhjMSAgICAgICVbdG1wMl0sICAgICVbZnRtcDldICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImFkZHUgICAgICAgJVtzdW1dLCAgICAgJVt0
bXAxXSwgICAgICAgICVbdG1wMl0gICAgICAgICAgICAgXG5cdCIKLSAgICAiZHNybCAgICAgICAl
W2Z0bXAxXSwgICAlW2Z0bXAxMF0sICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0IgorICAg
ICJzc3JsZCAgICAgICVbZnRtcDFdLCAgICVbZnRtcDEwXSwgICAgICAlW2Z0bXAxMV0gICAgICAg
ICAgIFxuXHQiCiAgICAgInBhZGR3ICAgICAgJVtmdG1wMV0sICAgJVtmdG1wMV0sICAgICAgICVb
ZnRtcDEwXSAgICAgICAgICAgXG5cdCIKICAgICAic3djMSAgICAgICAlW2Z0bXAxXSwgICAweDAw
KCVbc3NlXSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgIDogW2Z0bXAwXSI9JmYi
KGZ0bXBbMF0pLCAgICAgICAgICAgIFtmdG1wMV0iPSZmIihmdG1wWzFdKSwKQEAgLTU3Nyw2ICs1
ODAsNyBAQCB1aW50MzJfdCB2cHhfdmFyaWFuY2UzMng2NF9tbWkoY29uc3QgdWludDhfdCAqc3Jj
X3B0ciwgaW50IHNyY19zdHJpZGUsCiAgICAgICBbc3NlXSJyIihzc2UpCiAgICAgOiAibWVtb3J5
IgogICApOworICAvKiBjbGFuZy1mb3JtYXQgb24gKi8KIAogICByZXR1cm4gKnNzZSAtICgoKGlu
dDY0X3Qpc3VtICogc3VtKSAvIDIwNDgpOwogfQpAQCAtNTkwLDE0ICs1OTQsMTUgQEAgc3RhdGlj
IGlubGluZSB1aW50MzJfdCB2cHhfdmFyaWFuY2UzMngoY29uc3QgdWludDhfdCAqc3JjX3B0ciwg
aW50IHNyY19zdHJpZGUsCiAKICAgKnNzZSA9IDA7CiAKKyAgLyogY2xhbmctZm9ybWF0IG9mZiAq
LwogICBfX2FzbV9fIHZvbGF0aWxlICgKICAgICAibGkgICAgICAgICAlW3RtcDBdLCAgICAweDIw
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJtdGMxICAgICAgICVb
dG1wMF0sICAgICVbZnRtcDExXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAg
TU1JX0woJVt0bXAwXSwgJVtoaWdoXSwgMHgwMCkKLSAgICAieG9yICAgICAgICAlW2Z0bXAwXSwg
ICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgotICAgICJ4b3IgICAg
ICAgICVbZnRtcDhdLCAgICVbZnRtcDhdLCAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQi
Ci0gICAgInhvciAgICAgICAgJVtmdG1wMTBdLCAgJVtmdG1wMTBdLCAgICAgICVbZnRtcDEwXSAg
ICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXAxMl0sICAlW2Z0bXAxMl0sICAg
ICAgJVtmdG1wMTJdICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDBdLCAg
ICVbZnRtcDBdLCAgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAg
ICAgJVtmdG1wOF0sICAgJVtmdG1wOF0sICAgICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIK
KyAgICAicHhvciAgICAgICAlW2Z0bXAxMF0sICAlW2Z0bXAxMF0sICAgICAgJVtmdG1wMTBdICAg
ICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDEyXSwgICVbZnRtcDEyXSwgICAg
ICAlW2Z0bXAxMl0gICAgICAgICAgIFxuXHQiCiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAiZ3NsZGxjMSAg
ICAlW2Z0bXAxXSwgICAweDA3KCVbc3JjX3B0cl0pICAgICAgICAgICAgICAgICAgICBcblx0Igog
ICAgICJnc2xkcmMxICAgICVbZnRtcDFdLCAgIDB4MDAoJVtzcmNfcHRyXSkgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCkBAIC02MjUsNyArNjMwLDcgQEAgc3RhdGljIGlubGluZSB1aW50MzJfdCB2
cHhfdmFyaWFuY2UzMngoY29uc3QgdWludDhfdCAqc3JjX3B0ciwgaW50IHNyY19zdHJpZGUsCiAg
ICAgTU1JX0FERFUoJVtyZWZfcHRyXSwgJVtyZWZfcHRyXSwgJVtyZWZfc3RyaWRlXSkKICAgICAi
Ym5leiAgICAgICAlW3RtcDBdLCAgICAxYiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcblx0IgogCi0gICAgImRzcmwgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOF0sICAgICAgICVb
ZnRtcDExXSAgICAgICAgICAgXG5cdCIKKyAgICAic3NybGQgICAgICAlW2Z0bXA5XSwgICAlW2Z0
bXA4XSwgICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0IgogICAgICJwYWRkdyAgICAgICVb
ZnRtcDldLCAgICVbZnRtcDldLCAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCiAgICAg
InN3YzEgICAgICAgJVtmdG1wOV0sICAgMHgwMCglW3NzZV0pICAgICAgICAgICAgICAgICAgICAg
ICAgXG5cdCIKIApAQCAtNjM2LDcgKzY0MSw3IEBAIHN0YXRpYyBpbmxpbmUgdWludDMyX3QgdnB4
X3ZhcmlhbmNlMzJ4KGNvbnN0IHVpbnQ4X3QgKnNyY19wdHIsIGludCBzcmNfc3RyaWRlLAogICAg
ICJwYWRkdyAgICAgICVbZnRtcDNdLCAgICVbZnRtcDNdLCAgICAgICAlW2Z0bXA0XSAgICAgICAg
ICAgIFxuXHQiCiAgICAgInBzdWJ3ICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICVb
ZnRtcDVdICAgICAgICAgICAgXG5cdCIKICAgICAicHN1YncgICAgICAlW2Z0bXAzXSwgICAlW2Z0
bXAzXSwgICAgICAgJVtmdG1wNl0gICAgICAgICAgICBcblx0IgotICAgICJkc3JsICAgICAgICVb
ZnRtcDBdLCAgICVbZnRtcDNdLCAgICAgICAlW2Z0bXAxMV0gICAgICAgICAgIFxuXHQiCisgICAg
InNzcmxkICAgICAgJVtmdG1wMF0sICAgJVtmdG1wM10sICAgICAgICVbZnRtcDExXSAgICAgICAg
ICAgXG5cdCIKICAgICAicGFkZHcgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtm
dG1wM10gICAgICAgICAgICBcblx0IgogICAgICJzd2MxICAgICAgICVbZnRtcDBdLCAgIDB4MDAo
JVtzdW1dKSAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAKQEAgLTY1Myw2ICs2NTgsNyBA
QCBzdGF0aWMgaW5saW5lIHVpbnQzMl90IHZweF92YXJpYW5jZTMyeChjb25zdCB1aW50OF90ICpz
cmNfcHRyLCBpbnQgc3JjX3N0cmlkZSwKICAgICAgIFtoaWdoXSJyIigmaGlnaCksIFtzc2VdInIi
KHNzZSksIFtzdW1dInIiKCZzdW0pCiAgICAgOiAibWVtb3J5IgogICApOworICAvKiBjbGFuZy1m
b3JtYXQgb24gKi8KIAogICByZXR1cm4gKnNzZSAtICgoKGludDY0X3Qpc3VtICogc3VtKSAvICgz
MiAqIGhpZ2gpKTsKIH0KQEAgLTY3NiwxNCArNjgyLDE1IEBAIHN0YXRpYyBpbmxpbmUgdWludDMy
X3QgdnB4X3ZhcmlhbmNlMTZ4KGNvbnN0IHVpbnQ4X3QgKnNyY19wdHIsIGludCBzcmNfc3RyaWRl
LAogCiAgICpzc2UgPSAwOwogCisgIC8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KICAgX19hc21fXyB2
b2xhdGlsZSAoCiAgICAgImxpICAgICAgICAgJVt0bXAwXSwgICAgMHgyMCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAibXRjMSAgICAgICAlW3RtcDBdLCAgICAlW2Z0
bXAxMV0gICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgIE1NSV9MKCVbdG1wMF0s
ICVbaGlnaF0sIDB4MDApCi0gICAgInhvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAg
ICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA4XSwg
ICAlW2Z0bXA4XSwgICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgotICAgICJ4b3IgICAg
ICAgICVbZnRtcDEwXSwgICVbZnRtcDEwXSwgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQi
Ci0gICAgInhvciAgICAgICAgJVtmdG1wMTJdLCAgJVtmdG1wMTJdLCAgICAgICVbZnRtcDEyXSAg
ICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAg
ICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDhdLCAg
ICVbZnRtcDhdLCAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAg
ICAgJVtmdG1wMTBdLCAgJVtmdG1wMTBdLCAgICAgICVbZnRtcDEwXSAgICAgICAgICAgXG5cdCIK
KyAgICAicHhvciAgICAgICAlW2Z0bXAxMl0sICAlW2Z0bXAxMl0sICAgICAgJVtmdG1wMTJdICAg
ICAgICAgICBcblx0IgogICAgICIxOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgImdzbGRsYzEgICAgJVtmdG1wMV0sICAg
MHgwNyglW3NyY19wdHJdKSAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAiZ3NsZHJjMSAg
ICAlW2Z0bXAxXSwgICAweDAwKCVbc3JjX3B0cl0pICAgICAgICAgICAgICAgICAgICBcblx0IgpA
QCAtNzAxLDcgKzcwOCw3IEBAIHN0YXRpYyBpbmxpbmUgdWludDMyX3QgdnB4X3ZhcmlhbmNlMTZ4
KGNvbnN0IHVpbnQ4X3QgKnNyY19wdHIsIGludCBzcmNfc3RyaWRlLAogICAgIE1NSV9BRERVKCVb
cmVmX3B0cl0sICVbcmVmX3B0cl0sICVbcmVmX3N0cmlkZV0pCiAgICAgImJuZXogICAgICAgJVt0
bXAwXSwgICAgMWIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKIAotICAg
ICJkc3JsICAgICAgICVbZnRtcDldLCAgICVbZnRtcDhdLCAgICAgICAlW2Z0bXAxMV0gICAgICAg
ICAgIFxuXHQiCisgICAgInNzcmxkICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOF0sICAgICAgICVb
ZnRtcDExXSAgICAgICAgICAgXG5cdCIKICAgICAicGFkZHcgICAgICAlW2Z0bXA5XSwgICAlW2Z0
bXA5XSwgICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgogICAgICJzd2MxICAgICAgICVb
ZnRtcDldLCAgIDB4MDAoJVtzc2VdKSAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAKQEAg
LTcxMiw3ICs3MTksNyBAQCBzdGF0aWMgaW5saW5lIHVpbnQzMl90IHZweF92YXJpYW5jZTE2eChj
b25zdCB1aW50OF90ICpzcmNfcHRyLCBpbnQgc3JjX3N0cmlkZSwKICAgICAicGFkZHcgICAgICAl
W2Z0bXAzXSwgICAlW2Z0bXAzXSwgICAgICAgJVtmdG1wNF0gICAgICAgICAgICBcblx0IgogICAg
ICJwc3VidyAgICAgICVbZnRtcDNdLCAgICVbZnRtcDNdLCAgICAgICAlW2Z0bXA1XSAgICAgICAg
ICAgIFxuXHQiCiAgICAgInBzdWJ3ICAgICAgJVtmdG1wM10sICAgJVtmdG1wM10sICAgICAgICVb
ZnRtcDZdICAgICAgICAgICAgXG5cdCIKLSAgICAiZHNybCAgICAgICAlW2Z0bXAwXSwgICAlW2Z0
bXAzXSwgICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0IgorICAgICJzc3JsZCAgICAgICVb
ZnRtcDBdLCAgICVbZnRtcDNdLCAgICAgICAlW2Z0bXAxMV0gICAgICAgICAgIFxuXHQiCiAgICAg
InBhZGR3ICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDNdICAgICAgICAg
ICAgXG5cdCIKICAgICAic3djMSAgICAgICAlW2Z0bXAwXSwgICAweDAwKCVbc3VtXSkgICAgICAg
ICAgICAgICAgICAgICAgICBcblx0IgogCkBAIC03MjksNiArNzM2LDcgQEAgc3RhdGljIGlubGlu
ZSB1aW50MzJfdCB2cHhfdmFyaWFuY2UxNngoY29uc3QgdWludDhfdCAqc3JjX3B0ciwgaW50IHNy
Y19zdHJpZGUsCiAgICAgICBbaGlnaF0iciIoJmhpZ2gpLCBbc3NlXSJyIihzc2UpLCBbc3VtXSJy
Iigmc3VtKQogICAgIDogIm1lbW9yeSIKICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICovCiAK
ICAgcmV0dXJuICpzc2UgLSAoKChpbnQ2NF90KXN1bSAqIHN1bSkgLyAoMTYgKiBoaWdoKSk7CiB9
CkBAIC03NTMsMTQgKzc2MSwxNSBAQCBzdGF0aWMgaW5saW5lIHVpbnQzMl90IHZweF92YXJpYW5j
ZTh4KGNvbnN0IHVpbnQ4X3QgKnNyY19wdHIsIGludCBzcmNfc3RyaWRlLAogCiAgICpzc2UgPSAw
OwogCisgIC8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KICAgX19hc21fXyB2b2xhdGlsZSAoCiAgICAg
ImxpICAgICAgICAgJVt0bXAwXSwgICAgMHgyMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXG5cdCIKICAgICAibXRjMSAgICAgICAlW3RtcDBdLCAgICAlW2Z0bXAxMV0gICAgICAgICAg
ICAgICAgICAgICAgICAgICBcblx0IgogICAgIE1NSV9MKCVbdG1wMF0sICVbaGlnaF0sIDB4MDAp
Ci0gICAgInhvciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDBdICAg
ICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA4XSwgICAlW2Z0bXA4XSwgICAg
ICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRtcDEwXSwg
ICVbZnRtcDEwXSwgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAg
ICAgJVtmdG1wMTJdLCAgJVtmdG1wMTJdLCAgICAgICVbZnRtcDEyXSAgICAgICAgICAgXG5cdCIK
KyAgICAicHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAg
ICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDhdLCAgICVbZnRtcDhdLCAgICAg
ICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMTBdLCAg
JVtmdG1wMTBdLCAgICAgICVbZnRtcDEwXSAgICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAg
ICAlW2Z0bXAxMl0sICAlW2Z0bXAxMl0sICAgICAgJVtmdG1wMTJdICAgICAgICAgICBcblx0Igog
ICAgICIxOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFxuXHQiCiAgICAgImdzbGRsYzEgICAgJVtmdG1wMV0sICAgMHgwNyglW3NyY19wdHJd
KSAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAiZ3NsZHJjMSAgICAlW2Z0bXAxXSwgICAw
eDAwKCVbc3JjX3B0cl0pICAgICAgICAgICAgICAgICAgICBcblx0IgpAQCAtNzczLDcgKzc4Miw3
IEBAIHN0YXRpYyBpbmxpbmUgdWludDMyX3QgdnB4X3ZhcmlhbmNlOHgoY29uc3QgdWludDhfdCAq
c3JjX3B0ciwgaW50IHNyY19zdHJpZGUsCiAgICAgTU1JX0FERFUoJVtyZWZfcHRyXSwgJVtyZWZf
cHRyXSwgJVtyZWZfc3RyaWRlXSkKICAgICAiYm5leiAgICAgICAlW3RtcDBdLCAgICAxYiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogCi0gICAgImRzcmwgICAgICAgJVtm
dG1wOV0sICAgJVtmdG1wOF0sICAgICAgICVbZnRtcDExXSAgICAgICAgICAgXG5cdCIKKyAgICAi
c3NybGQgICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA4XSwgICAgICAgJVtmdG1wMTFdICAgICAgICAg
ICBcblx0IgogICAgICJwYWRkdyAgICAgICVbZnRtcDldLCAgICVbZnRtcDldLCAgICAgICAlW2Z0
bXA4XSAgICAgICAgICAgIFxuXHQiCiAgICAgInN3YzEgICAgICAgJVtmdG1wOV0sICAgMHgwMCgl
W3NzZV0pICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKIApAQCAtNzg0LDcgKzc5Myw3IEBA
IHN0YXRpYyBpbmxpbmUgdWludDMyX3QgdnB4X3ZhcmlhbmNlOHgoY29uc3QgdWludDhfdCAqc3Jj
X3B0ciwgaW50IHNyY19zdHJpZGUsCiAgICAgInBhZGR3ICAgICAgJVtmdG1wM10sICAgJVtmdG1w
M10sICAgICAgICVbZnRtcDRdICAgICAgICAgICAgXG5cdCIKICAgICAicHN1YncgICAgICAlW2Z0
bXAzXSwgICAlW2Z0bXAzXSwgICAgICAgJVtmdG1wNV0gICAgICAgICAgICBcblx0IgogICAgICJw
c3VidyAgICAgICVbZnRtcDNdLCAgICVbZnRtcDNdLCAgICAgICAlW2Z0bXA2XSAgICAgICAgICAg
IFxuXHQiCi0gICAgImRzcmwgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wM10sICAgICAgICVbZnRt
cDExXSAgICAgICAgICAgXG5cdCIKKyAgICAic3NybGQgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAz
XSwgICAgICAgJVtmdG1wMTFdICAgICAgICAgICBcblx0IgogICAgICJwYWRkdyAgICAgICVbZnRt
cDBdLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0bXAzXSAgICAgICAgICAgIFxuXHQiCiAgICAgInN3
YzEgICAgICAgJVtmdG1wMF0sICAgMHgwMCglW3N1bV0pICAgICAgICAgICAgICAgICAgICAgICAg
XG5cdCIKIApAQCAtODAxLDYgKzgxMCw3IEBAIHN0YXRpYyBpbmxpbmUgdWludDMyX3QgdnB4X3Zh
cmlhbmNlOHgoY29uc3QgdWludDhfdCAqc3JjX3B0ciwgaW50IHNyY19zdHJpZGUsCiAgICAgICBb
aGlnaF0iciIoJmhpZ2gpLCBbc3NlXSJyIihzc2UpLCBbc3VtXSJyIigmc3VtKQogICAgIDogIm1l
bW9yeSIKICAgKTsKKyAgLyogY2xhbmctZm9ybWF0IG9uICovCiAKICAgcmV0dXJuICpzc2UgLSAo
KChpbnQ2NF90KXN1bSAqIHN1bSkgLyAoOCAqIGhpZ2gpKTsKIH0KQEAgLTgyNSwxNCArODM1LDE1
IEBAIHN0YXRpYyBpbmxpbmUgdWludDMyX3QgdnB4X3ZhcmlhbmNlNHgoY29uc3QgdWludDhfdCAq
c3JjX3B0ciwgaW50IHNyY19zdHJpZGUsCiAKICAgKnNzZSA9IDA7CiAKKyAgLyogY2xhbmctZm9y
bWF0IG9mZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlICgKICAgICAibGkgICAgICAgICAlW3RtcDBd
LCAgICAweDIwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJtdGMx
ICAgICAgICVbdG1wMF0sICAgICVbZnRtcDEwXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxu
XHQiCiAgICAgTU1JX0woJVt0bXAwXSwgJVtoaWdoXSwgMHgwMCkKLSAgICAieG9yICAgICAgICAl
W2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgotICAg
ICJ4b3IgICAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAlW2Z0bXA2XSAgICAgICAg
ICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtmdG1wN10sICAgJVtmdG1wN10sICAgICAgICVb
ZnRtcDddICAgICAgICAgICAgXG5cdCIKLSAgICAieG9yICAgICAgICAlW2Z0bXA4XSwgICAlW2Z0
bXA4XSwgICAgICAgJVtmdG1wOF0gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVb
ZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCisgICAg
InB4b3IgICAgICAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAgICAgICVbZnRtcDZdICAgICAgICAg
ICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA3XSwgICAlW2Z0bXA3XSwgICAgICAgJVtm
dG1wN10gICAgICAgICAgICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDhdLCAgICVbZnRt
cDhdLCAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCiAgICAgIjE6ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICAi
Z3NsZGxjMSAgICAlW2Z0bXAxXSwgICAweDA3KCVbc3JjX3B0cl0pICAgICAgICAgICAgICAgICAg
ICBcblx0IgogICAgICJnc2xkcmMxICAgICVbZnRtcDFdLCAgIDB4MDAoJVtzcmNfcHRyXSkgICAg
ICAgICAgICAgICAgICAgIFxuXHQiCkBAIC04NDUsNyArODU2LDcgQEAgc3RhdGljIGlubGluZSB1
aW50MzJfdCB2cHhfdmFyaWFuY2U0eChjb25zdCB1aW50OF90ICpzcmNfcHRyLCBpbnQgc3JjX3N0
cmlkZSwKICAgICBNTUlfQUREVSglW3JlZl9wdHJdLCAlW3JlZl9wdHJdLCAlW3JlZl9zdHJpZGVd
KQogICAgICJibmV6ICAgICAgICVbdG1wMF0sICAgIDFiICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFxuXHQiCiAKLSAgICAiZHNybCAgICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA2XSwg
ICAgICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0IgorICAgICJzc3JsZCAgICAgICVbZnRtcDld
LCAgICVbZnRtcDZdLCAgICAgICAlW2Z0bXAxMF0gICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR3
ICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOV0sICAgICAgICVbZnRtcDZdICAgICAgICAgICAgXG5c
dCIKICAgICAic3djMSAgICAgICAlW2Z0bXA5XSwgICAweDAwKCVbc3NlXSkgICAgICAgICAgICAg
ICAgICAgICAgICBcblx0IgogCkBAIC04NTYsNyArODY3LDcgQEAgc3RhdGljIGlubGluZSB1aW50
MzJfdCB2cHhfdmFyaWFuY2U0eChjb25zdCB1aW50OF90ICpzcmNfcHRyLCBpbnQgc3JjX3N0cmlk
ZSwKICAgICAicGFkZHcgICAgICAlW2Z0bXAzXSwgICAlW2Z0bXAzXSwgICAgICAgJVtmdG1wNF0g
ICAgICAgICAgICBcblx0IgogICAgICJwc3VidyAgICAgICVbZnRtcDNdLCAgICVbZnRtcDNdLCAg
ICAgICAlW2Z0bXA1XSAgICAgICAgICAgIFxuXHQiCiAgICAgInBzdWJ3ICAgICAgJVtmdG1wM10s
ICAgJVtmdG1wM10sICAgICAgICVbZnRtcDZdICAgICAgICAgICAgXG5cdCIKLSAgICAiZHNybCAg
ICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAzXSwgICAgICAgJVtmdG1wMTBdICAgICAgICAgICBcblx0
IgorICAgICJzc3JsZCAgICAgICVbZnRtcDBdLCAgICVbZnRtcDNdLCAgICAgICAlW2Z0bXAxMF0g
ICAgICAgICAgIFxuXHQiCiAgICAgInBhZGR3ICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAg
ICAgICVbZnRtcDNdICAgICAgICAgICAgXG5cdCIKICAgICAic3djMSAgICAgICAlW2Z0bXAwXSwg
ICAweDAwKCVbc3VtXSkgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgIDogW2Z0bXAw
XSI9JmYiKGZ0bXBbMF0pLCAgICAgICAgICAgIFtmdG1wMV0iPSZmIihmdG1wWzFdKSwKQEAgLTg3
Miw2ICs4ODMsNyBAQCBzdGF0aWMgaW5saW5lIHVpbnQzMl90IHZweF92YXJpYW5jZTR4KGNvbnN0
IHVpbnQ4X3QgKnNyY19wdHIsIGludCBzcmNfc3RyaWRlLAogICAgICAgW2hpZ2hdInIiKCZoaWdo
KSwgW3NzZV0iciIoc3NlKSwgW3N1bV0iciIoJnN1bSkKICAgICA6ICJtZW1vcnkiCiAgICk7Cisg
IC8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCiAgIHJldHVybiAqc3NlIC0gKCgoaW50NjRfdClzdW0g
KiBzdW0pIC8gKDQgKiBoaWdoKSk7CiB9CkBAIC04OTQsMTIgKzkwNiwxMyBAQCBzdGF0aWMgaW5s
aW5lIHVpbnQzMl90IHZweF9tc2UxNngoY29uc3QgdWludDhfdCAqc3JjX3B0ciwgaW50IHNyY19z
dHJpZGUsCiAKICAgKnNzZSA9IDA7CiAKKyAgLyogY2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2Fz
bV9fIHZvbGF0aWxlICgKICAgICAibGkgICAgICAgICAlW3RtcDBdLCAgICAweDIwICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgICJtdGMxICAgICAgICVbdG1wMF0sICAg
ICVbZnRtcDExXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgTU1JX0woJVt0
bXAwXSwgJVtoaWdoXSwgMHgwMCkKLSAgICAieG9yICAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAw
XSwgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRt
cDhdLCAgICVbZnRtcDhdLCAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCisgICAgInB4
b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDBdICAgICAgICAgICAg
XG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXA4XSwgICAlW2Z0bXA4XSwgICAgICAgJVtmdG1w
OF0gICAgICAgICAgICBcblx0IgogCiAgICAgIjE6ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICBWQVJJQU5DRV9TU0VfMTYK
QEAgLTkwOSw3ICs5MjIsNyBAQCBzdGF0aWMgaW5saW5lIHVpbnQzMl90IHZweF9tc2UxNngoY29u
c3QgdWludDhfdCAqc3JjX3B0ciwgaW50IHNyY19zdHJpZGUsCiAgICAgTU1JX0FERFUoJVtyZWZf
cHRyXSwgJVtyZWZfcHRyXSwgJVtyZWZfc3RyaWRlXSkKICAgICAiYm5leiAgICAgICAlW3RtcDBd
LCAgICAxYiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogCi0gICAgImRz
cmwgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOF0sICAgICAgICVbZnRtcDExXSAgICAgICAgICAg
XG5cdCIKKyAgICAic3NybGQgICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA4XSwgICAgICAgJVtmdG1w
MTFdICAgICAgICAgICBcblx0IgogICAgICJwYWRkdyAgICAgICVbZnRtcDldLCAgICVbZnRtcDld
LCAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCiAgICAgInN3YzEgICAgICAgJVtmdG1w
OV0sICAgMHgwMCglW3NzZV0pICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICA6IFtm
dG1wMF0iPSZmIihmdG1wWzBdKSwgICAgICAgICAgICBbZnRtcDFdIj0mZiIoZnRtcFsxXSksCkBA
IC05MjUsNiArOTM4LDcgQEAgc3RhdGljIGlubGluZSB1aW50MzJfdCB2cHhfbXNlMTZ4KGNvbnN0
IHVpbnQ4X3QgKnNyY19wdHIsIGludCBzcmNfc3RyaWRlLAogICAgICAgW2hpZ2hdInIiKCZoaWdo
KSwgW3NzZV0iciIoc3NlKQogICAgIDogIm1lbW9yeSIKICAgKTsKKyAgLyogY2xhbmctZm9ybWF0
IG9uICovCiAKICAgcmV0dXJuICpzc2U7CiB9CkBAIC05NDcsMTIgKzk2MSwxMyBAQCBzdGF0aWMg
aW5saW5lIHVpbnQzMl90IHZweF9tc2U4eChjb25zdCB1aW50OF90ICpzcmNfcHRyLCBpbnQgc3Jj
X3N0cmlkZSwKIAogICAqc3NlID0gMDsKIAorICAvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiAgIF9f
YXNtX18gdm9sYXRpbGUgKAogICAgICJsaSAgICAgICAgICVbdG1wMF0sICAgIDB4MjAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQiCiAgICAgIm10YzEgICAgICAgJVt0bXAwXSwg
ICAgJVtmdG1wMTFdICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICBNTUlfTCgl
W3RtcDBdLCAlW2hpZ2hdLCAweDAwKQotICAgICJ4b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRt
cDBdLCAgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAgICAgICAgJVtm
dG1wOF0sICAgJVtmdG1wOF0sICAgICAgICVbZnRtcDhdICAgICAgICAgICAgXG5cdCIKKyAgICAi
cHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAgICAgICAg
ICBcblx0IgorICAgICJweG9yICAgICAgICVbZnRtcDhdLCAgICVbZnRtcDhdLCAgICAgICAlW2Z0
bXA4XSAgICAgICAgICAgIFxuXHQiCiAKICAgICAiMTogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogICAgIFZBUklBTkNFX1NTRV84
CkBAIC05NjIsNyArOTc3LDcgQEAgc3RhdGljIGlubGluZSB1aW50MzJfdCB2cHhfbXNlOHgoY29u
c3QgdWludDhfdCAqc3JjX3B0ciwgaW50IHNyY19zdHJpZGUsCiAgICAgTU1JX0FERFUoJVtyZWZf
cHRyXSwgJVtyZWZfcHRyXSwgJVtyZWZfc3RyaWRlXSkKICAgICAiYm5leiAgICAgICAlW3RtcDBd
LCAgICAxYiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcblx0IgogCi0gICAgImRz
cmwgICAgICAgJVtmdG1wOV0sICAgJVtmdG1wOF0sICAgICAgICVbZnRtcDExXSAgICAgICAgICAg
XG5cdCIKKyAgICAic3NybGQgICAgICAlW2Z0bXA5XSwgICAlW2Z0bXA4XSwgICAgICAgJVtmdG1w
MTFdICAgICAgICAgICBcblx0IgogICAgICJwYWRkdyAgICAgICVbZnRtcDldLCAgICVbZnRtcDld
LCAgICAgICAlW2Z0bXA4XSAgICAgICAgICAgIFxuXHQiCiAgICAgInN3YzEgICAgICAgJVtmdG1w
OV0sICAgMHgwMCglW3NzZV0pICAgICAgICAgICAgICAgICAgICAgICAgXG5cdCIKICAgICA6IFtm
dG1wMF0iPSZmIihmdG1wWzBdKSwgICAgICAgICAgICBbZnRtcDFdIj0mZiIoZnRtcFsxXSksCkBA
IC05NzgsNiArOTkzLDcgQEAgc3RhdGljIGlubGluZSB1aW50MzJfdCB2cHhfbXNlOHgoY29uc3Qg
dWludDhfdCAqc3JjX3B0ciwgaW50IHNyY19zdHJpZGUsCiAgICAgICBbaGlnaF0iciIoJmhpZ2gp
LCBbc3NlXSJyIihzc2UpCiAgICAgOiAibWVtb3J5IgogICApOworICAvKiBjbGFuZy1mb3JtYXQg
b24gKi8KIAogICByZXR1cm4gKnNzZTsKIH0KQEAgLTEwMjEsMjIgKzEwMzcsMzkgQEAgc3RhdGlj
IGlubGluZSB2b2lkIHZhcl9maWx0ZXJfYmxvY2syZF9iaWxfMTZ4KGNvbnN0IHVpbnQ4X3QgKnNy
Y19wdHIsCiAgIHVpbnQ4X3QgKnRlbXAyX3B0ciA9IHRlbXAyOwogICBtaXBzX3JlZyBsX2NvdW50
ZXIgPSBjb3VudGVyOwogICBkb3VibGUgZnRtcFsxNV07CisgIGRvdWJsZSBmZl9waF80MCwgbWFz
azsKKyAgZG91YmxlIGZpbHRlcl94MCwgZmlsdGVyX3gxLCBmaWx0ZXJfeTAsIGZpbHRlcl95MTsK
ICAgbWlwc19yZWcgdG1wWzJdOwotICBERUNMQVJFX0FMSUdORUQoOCwgY29uc3QgdWludDY0X3Qs
IGZmX3BoXzQwKSA9IHsgMHgwMDQwMDA0MDAwNDAwMDQwVUxMIH07Ci0gIERFQ0xBUkVfQUxJR05F
RCg4LCBjb25zdCB1aW50NjRfdCwgbWFzaykgPSB7IDB4MDBmZjAwZmYwMGZmMDBmZlVMTCB9Owor
ICB1aW50NjRfdCB4MCwgeDEsIHkwLCB5MSwgYWxsOwogCiAgIGNvbnN0IHVpbnQ4X3QgKmZpbHRl
cl94ID0gYmlsaW5lYXJfZmlsdGVyc1t4X29mZnNldF07CiAgIGNvbnN0IHVpbnQ4X3QgKmZpbHRl
cl95ID0gYmlsaW5lYXJfZmlsdGVyc1t5X29mZnNldF07CisgIHgwID0gKHVpbnQ2NF90KWZpbHRl
cl94WzBdOworICB4MSA9ICh1aW50NjRfdClmaWx0ZXJfeFsxXTsKKyAgeTAgPSAodWludDY0X3Qp
ZmlsdGVyX3lbMF07CisgIHkxID0gKHVpbnQ2NF90KWZpbHRlcl95WzFdOworICBhbGwgPSB4MCB8
IHgxIDw8IDggfCB5MCA8PCAxNiB8IHkxIDw8IDI0OwogCisgIC8qIGNsYW5nLWZvcm1hdCBvZmYg
Ki8KICAgX19hc21fXyB2b2xhdGlsZSAoCi0gICAgInhvciAgICAgICAgJVtmdG1wMF0sICAgJVtm
dG1wMF0sICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAl
W2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgorICAg
IE1NSV9NVEMxKCVbYWxsXSwgJVtmdG1wMTRdKQorICAgICJwdW5wY2tsYmggICVbZnRtcDE0XSwg
ICVbZnRtcDE0XSwgICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCisgICAgInBzaHVmaCAg
ICAgJVtmaWx0ZXJfeDBdLCAlW2Z0bXAxNF0sICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIK
KyAgICBNTUlfTEkoJVt0bXAwXSwgMHgxMCkKKyAgICBNTUlfTVRDMSglW3RtcDBdLCAlW21hc2td
KQorICAgICJzc3JsZCAgICAgICVbZnRtcDE0XSwgICVbZnRtcDE0XSwgICAgICAlW21hc2tdICAg
ICAgICAgICAgIFxuXHQiCisgICAgInBzaHVmaCAgICAgJVtmaWx0ZXJfeDFdLCAlW2Z0bXAxNF0s
ICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKKyAgICAic3NybGQgICAgICAlW2Z0bXAxNF0s
ICAlW2Z0bXAxNF0sICAgICAgJVttYXNrXSAgICAgICAgICAgICBcblx0IgorICAgICJwc2h1Zmgg
ICAgICVbZmlsdGVyX3kwXSwgJVtmdG1wMTRdLCAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQi
CisgICAgInNzcmxkICAgICAgJVtmdG1wMTRdLCAgJVtmdG1wMTRdLCAgICAgICVbbWFza10gICAg
ICAgICAgICAgXG5cdCIKKyAgICAicHNodWZoICAgICAlW2ZpbHRlcl95MV0sICVbZnRtcDE0XSwg
ICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgogICAgIE1NSV9MSSglW3RtcDBdLCAweDA3KQog
ICAgIE1NSV9NVEMxKCVbdG1wMF0sICVbZnRtcDE0XSkKLSAgICAicHNodWZoICAgICAlW2ZpbHRl
cl94MF0sICVbZmlsdGVyX3gwXSwgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgotICAgICJwc2h1
ZmggICAgICVbZmlsdGVyX3gxXSwgJVtmaWx0ZXJfeDFdLCAlW2Z0bXAwXSAgICAgICAgICAgIFxu
XHQiCi0gICAgInBzaHVmaCAgICAgJVtmaWx0ZXJfeTBdLCAlW2ZpbHRlcl95MF0sICVbZnRtcDBd
ICAgICAgICAgICAgXG5cdCIKLSAgICAicHNodWZoICAgICAlW2ZpbHRlcl95MV0sICVbZmlsdGVy
X3kxXSwgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgotCisgICAgTU1JX0xJKCVbdG1wMF0sIDB4
MDA0MDAwNDAwMDQwMDA0MCkKKyAgICBNTUlfTVRDMSglW3RtcDBdLCAlW2ZmX3BoXzQwXSkKKyAg
ICBNTUlfTEkoJVt0bXAwXSwgMHgwMGZmMDBmZjAwZmYwMGZmKQorICAgIE1NSV9NVEMxKCVbdG1w
MF0sICVbbWFza10pCiAgICAgLy8gZmRhdGEzOiBmZGF0YTNbMF0gfiBmZGF0YTNbMTVdCiAgICAg
VkFSX0ZJTFRFUl9CTE9DSzJEX0JJTF9GSVJTVF9QQVNTXzE2X0EKIApAQCAtMTA3MiwxNSArMTEw
NSwxMyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgdmFyX2ZpbHRlcl9ibG9jazJkX2JpbF8xNngoY29u
c3QgdWludDhfdCAqc3JjX3B0ciwKICAgICAgIFtmdG1wMTFdICI9JmYiKGZ0bXBbMTFdKSwgW2Z0
bXAxMl0gIj0mZiIoZnRtcFsxMl0pLAogICAgICAgW2Z0bXAxM10gIj0mZiIoZnRtcFsxM10pLCBb
ZnRtcDE0XSAiPSZmIihmdG1wWzE0XSksCiAgICAgICBbdG1wMF0gIj0mciIodG1wWzBdKSwgW3Ny
Y19wdHJdICIrJnIiKHNyY19wdHIpLCBbdGVtcDJfcHRyXSAiKyZyIih0ZW1wMl9wdHIpLAotICAg
ICAgW2NvdW50ZXJdIismciIobF9jb3VudGVyKQotICAgIDogW2ZpbHRlcl94MF0gImYiKCh1aW50
NjRfdClmaWx0ZXJfeFswXSksCi0gICAgICBbZmlsdGVyX3gxXSAiZiIoKHVpbnQ2NF90KWZpbHRl
cl94WzFdKSwKLSAgICAgIFtmaWx0ZXJfeTBdICJmIigodWludDY0X3QpZmlsdGVyX3lbMF0pLAot
ICAgICAgW2ZpbHRlcl95MV0gImYiKCh1aW50NjRfdClmaWx0ZXJfeVsxXSksCi0gICAgICBbc3Jj
X3N0cmlkZV0gInIiKChtaXBzX3JlZylzcmNfc3RyaWRlKSwgW2ZmX3BoXzQwXSAiZiIoZmZfcGhf
NDApLAotICAgICAgW21hc2tdICJmIihtYXNrKQorICAgICAgW2NvdW50ZXJdIismciIobF9jb3Vu
dGVyKSwgW2ZmX3BoXzQwXSAiPSZmIihmZl9waF80MCksIFttYXNrXSAiPSZmIihtYXNrKSwKKyAg
ICAgIFtmaWx0ZXJfeDBdICI9JmYiKGZpbHRlcl94MCksIFtmaWx0ZXJfeDFdICI9JmYiKGZpbHRl
cl94MSksCisgICAgICBbZmlsdGVyX3kwXSAiPSZmIihmaWx0ZXJfeTApLCBbZmlsdGVyX3kxXSAi
PSZmIihmaWx0ZXJfeTEpCisgICAgOiBbc3JjX3N0cmlkZV0gInIiKChtaXBzX3JlZylzcmNfc3Ry
aWRlKSwgW2FsbF0gInIiKGFsbCkKICAgICA6ICJtZW1vcnkiCiAgICk7CisgIC8qIGNsYW5nLWZv
cm1hdCBvbiAqLwogfQogCiAjZGVmaW5lIFNVQlBJWF9WQVIxNlhOKEgpICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApAQCAtMTEwNSwxOSArMTEz
NiwzOCBAQCBzdGF0aWMgaW5saW5lIHZvaWQgdmFyX2ZpbHRlcl9ibG9jazJkX2JpbF84eChjb25z
dCB1aW50OF90ICpzcmNfcHRyLAogICBtaXBzX3JlZyBsX2NvdW50ZXIgPSBjb3VudGVyOwogICBk
b3VibGUgZnRtcFsxNV07CiAgIG1pcHNfcmVnIHRtcFsyXTsKLSAgREVDTEFSRV9BTElHTkVEKDgs
IGNvbnN0IHVpbnQ2NF90LCBmZl9waF80MCkgPSB7IDB4MDA0MDAwNDAwMDQwMDA0MFVMTCB9Owot
ICBERUNMQVJFX0FMSUdORUQoOCwgY29uc3QgdWludDY0X3QsIG1hc2spID0geyAweDAwZmYwMGZm
MDBmZjAwZmZVTEwgfTsKKyAgZG91YmxlIGZmX3BoXzQwLCBtYXNrOworICB1aW50NjRfdCB4MCwg
eDEsIHkwLCB5MSwgYWxsOworICBkb3VibGUgZmlsdGVyX3gwLCBmaWx0ZXJfeDEsIGZpbHRlcl95
MCwgZmlsdGVyX3kxOwogICBjb25zdCB1aW50OF90ICpmaWx0ZXJfeCA9IGJpbGluZWFyX2ZpbHRl
cnNbeF9vZmZzZXRdOwogICBjb25zdCB1aW50OF90ICpmaWx0ZXJfeSA9IGJpbGluZWFyX2ZpbHRl
cnNbeV9vZmZzZXRdOworICB4MCA9ICh1aW50NjRfdClmaWx0ZXJfeFswXTsKKyAgeDEgPSAodWlu
dDY0X3QpZmlsdGVyX3hbMV07CisgIHkwID0gKHVpbnQ2NF90KWZpbHRlcl95WzBdOworICB5MSA9
ICh1aW50NjRfdClmaWx0ZXJfeVsxXTsKKyAgYWxsID0geDAgfCB4MSA8PCA4IHwgeTAgPDwgMTYg
fCB5MSA8PCAyNDsKIAorICAvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiAgIF9fYXNtX18gdm9sYXRp
bGUgKAotICAgICJ4b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAgICAlW2Z0bXAw
XSAgICAgICAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0s
ICAgICAgICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKKyAgICBNTUlfTVRDMSglW2FsbF0sICVb
ZnRtcDE0XSkKKyAgICAicHVucGNrbGJoICAlW2Z0bXAxNF0sICAlW2Z0bXAxNF0sICAgICAgJVtm
dG1wMF0gICAgICAgICAgICBcblx0IgorICAgICJwc2h1ZmggICAgICVbZmlsdGVyX3gwXSwgJVtm
dG1wMTRdLCAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCisgICAgTU1JX0xJKCVbdG1wMF0s
IDB4MTApCisgICAgTU1JX01UQzEoJVt0bXAwXSwgJVttYXNrXSkKKyAgICAic3NybGQgICAgICAl
W2Z0bXAxNF0sICAlW2Z0bXAxNF0sICAgICAgJVttYXNrXSAgICAgICAgICAgICBcblx0IgorICAg
ICJwc2h1ZmggICAgICVbZmlsdGVyX3gxXSwgJVtmdG1wMTRdLCAgICAlW2Z0bXAwXSAgICAgICAg
ICAgIFxuXHQiCisgICAgInNzcmxkICAgICAgJVtmdG1wMTRdLCAgJVtmdG1wMTRdLCAgICAgICVb
bWFza10gICAgICAgICAgICAgXG5cdCIKKyAgICAicHNodWZoICAgICAlW2ZpbHRlcl95MF0sICVb
ZnRtcDE0XSwgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgorICAgICJzc3JsZCAgICAgICVb
ZnRtcDE0XSwgICVbZnRtcDE0XSwgICAgICAlW21hc2tdICAgICAgICAgICAgIFxuXHQiCisgICAg
InBzaHVmaCAgICAgJVtmaWx0ZXJfeTFdLCAlW2Z0bXAxNF0sICAgICVbZnRtcDBdICAgICAgICAg
ICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtm
dG1wMF0gICAgICAgICAgICBcblx0IgogICAgIE1NSV9MSSglW3RtcDBdLCAweDA3KQogICAgIE1N
SV9NVEMxKCVbdG1wMF0sICVbZnRtcDE0XSkKLSAgICAicHNodWZoICAgICAlW2ZpbHRlcl94MF0s
ICVbZmlsdGVyX3gwXSwgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgotICAgICJwc2h1ZmggICAg
ICVbZmlsdGVyX3gxXSwgJVtmaWx0ZXJfeDFdLCAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCi0g
ICAgInBzaHVmaCAgICAgJVtmaWx0ZXJfeTBdLCAlW2ZpbHRlcl95MF0sICVbZnRtcDBdICAgICAg
ICAgICAgXG5cdCIKLSAgICAicHNodWZoICAgICAlW2ZpbHRlcl95MV0sICVbZmlsdGVyX3kxXSwg
JVtmdG1wMF0gICAgICAgICAgICBcblx0IgorICAgIE1NSV9MSSglW3RtcDBdLCAweDAwNDAwMDQw
MDA0MDAwNDApCisgICAgTU1JX01UQzEoJVt0bXAwXSwgJVtmZl9waF80MF0pCisgICAgTU1JX0xJ
KCVbdG1wMF0sIDB4MDBmZjAwZmYwMGZmMDBmZikKKyAgICBNTUlfTVRDMSglW3RtcDBdLCAlW21h
c2tdKQogCiAgICAgLy8gZmRhdGEzOiBmZGF0YTNbMF0gfiBmZGF0YTNbN10KICAgICBWQVJfRklM
VEVSX0JMT0NLMkRfQklMX0ZJUlNUX1BBU1NfOF9BCkBAIC0xMTU0LDE1ICsxMjA0LDEzIEBAIHN0
YXRpYyBpbmxpbmUgdm9pZCB2YXJfZmlsdGVyX2Jsb2NrMmRfYmlsXzh4KGNvbnN0IHVpbnQ4X3Qg
KnNyY19wdHIsCiAgICAgICBbZnRtcDExXSAiPSZmIihmdG1wWzExXSksIFtmdG1wMTJdICI9JmYi
KGZ0bXBbMTJdKSwKICAgICAgIFtmdG1wMTNdICI9JmYiKGZ0bXBbMTNdKSwgW2Z0bXAxNF0gIj0m
ZiIoZnRtcFsxNF0pLAogICAgICAgW3RtcDBdICI9JnIiKHRtcFswXSksIFtzcmNfcHRyXSAiKyZy
IihzcmNfcHRyKSwgW3RlbXAyX3B0cl0gIismciIodGVtcDJfcHRyKSwKLSAgICAgIFtjb3VudGVy
XSIrJnIiKGxfY291bnRlcikKLSAgICA6IFtmaWx0ZXJfeDBdICJmIigodWludDY0X3QpZmlsdGVy
X3hbMF0pLAotICAgICAgW2ZpbHRlcl94MV0gImYiKCh1aW50NjRfdClmaWx0ZXJfeFsxXSksCi0g
ICAgICBbZmlsdGVyX3kwXSAiZiIoKHVpbnQ2NF90KWZpbHRlcl95WzBdKSwKLSAgICAgIFtmaWx0
ZXJfeTFdICJmIigodWludDY0X3QpZmlsdGVyX3lbMV0pLAotICAgICAgW3NyY19zdHJpZGVdICJy
IigobWlwc19yZWcpc3JjX3N0cmlkZSksIFtmZl9waF80MF0gImYiKGZmX3BoXzQwKSwKLSAgICAg
IFttYXNrXSAiZiIobWFzaykKKyAgICAgIFtjb3VudGVyXSIrJnIiKGxfY291bnRlciksIFtmZl9w
aF80MF0gIj0mZiIoZmZfcGhfNDApLCBbbWFza10gIj0mZiIobWFzayksCisgICAgICBbZmlsdGVy
X3gwXSAiPSZmIihmaWx0ZXJfeDApLCBbZmlsdGVyX3gxXSAiPSZmIihmaWx0ZXJfeDEpLAorICAg
ICAgW2ZpbHRlcl95MF0gIj0mZiIoZmlsdGVyX3kwKSwgW2ZpbHRlcl95MV0gIj0mZiIoZmlsdGVy
X3kxKQorICAgIDogW3NyY19zdHJpZGVdICJyIigobWlwc19yZWcpc3JjX3N0cmlkZSksIFthbGxd
ICJyIihhbGwpCiAgICAgOiAibWVtb3J5IgogICApOworICAvKiBjbGFuZy1mb3JtYXQgb24gKi8K
IH0KIAogI2RlZmluZSBTVUJQSVhfVkFSOFhOKEgpICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXApAQCAtMTE4OCwxOSArMTIzNiwzOCBAQCBzdGF0
aWMgaW5saW5lIHZvaWQgdmFyX2ZpbHRlcl9ibG9jazJkX2JpbF80eChjb25zdCB1aW50OF90ICpz
cmNfcHRyLAogICBtaXBzX3JlZyBsX2NvdW50ZXIgPSBjb3VudGVyOwogICBkb3VibGUgZnRtcFs3
XTsKICAgbWlwc19yZWcgdG1wWzJdOwotICBERUNMQVJFX0FMSUdORUQoOCwgY29uc3QgdWludDY0
X3QsIGZmX3BoXzQwKSA9IHsgMHgwMDQwMDA0MDAwNDAwMDQwVUxMIH07Ci0gIERFQ0xBUkVfQUxJ
R05FRCg4LCBjb25zdCB1aW50NjRfdCwgbWFzaykgPSB7IDB4MDBmZjAwZmYwMGZmMDBmZlVMTCB9
OworICBkb3VibGUgZmZfcGhfNDAsIG1hc2s7CisgIHVpbnQ2NF90IHgwLCB4MSwgeTAsIHkxLCBh
bGw7CisgIGRvdWJsZSBmaWx0ZXJfeDAsIGZpbHRlcl94MSwgZmlsdGVyX3kwLCBmaWx0ZXJfeTE7
CiAgIGNvbnN0IHVpbnQ4X3QgKmZpbHRlcl94ID0gYmlsaW5lYXJfZmlsdGVyc1t4X29mZnNldF07
CiAgIGNvbnN0IHVpbnQ4X3QgKmZpbHRlcl95ID0gYmlsaW5lYXJfZmlsdGVyc1t5X29mZnNldF07
CisgIHgwID0gKHVpbnQ2NF90KWZpbHRlcl94WzBdOworICB4MSA9ICh1aW50NjRfdClmaWx0ZXJf
eFsxXTsKKyAgeTAgPSAodWludDY0X3QpZmlsdGVyX3lbMF07CisgIHkxID0gKHVpbnQ2NF90KWZp
bHRlcl95WzFdOworICBhbGwgPSB4MCB8IHgxIDw8IDggfCB5MCA8PCAxNiB8IHkxIDw8IDI0Owog
CisgIC8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KICAgX19hc21fXyB2b2xhdGlsZSAoCi0gICAgInhv
ciAgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDBdICAgICAgICAgICAg
XG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgICAgJVtmdG1w
MF0gICAgICAgICAgICBcblx0IgorICAgIE1NSV9NVEMxKCVbYWxsXSwgJVtmdG1wNl0pCisgICAg
InB1bnBja2xiaCAgJVtmdG1wNl0sICAgJVtmdG1wNl0sICAgICAgICVbZnRtcDBdICAgICAgICAg
ICAgXG5cdCIKKyAgICAicHNodWZoICAgICAlW2ZpbHRlcl94MF0sICVbZnRtcDZdLCAgICAgJVtm
dG1wMF0gICAgICAgICAgICBcblx0IgorICAgIE1NSV9MSSglW3RtcDBdLCAweDEwKQorICAgIE1N
SV9NVEMxKCVbdG1wMF0sICVbbWFza10pCisgICAgInNzcmxkICAgICAgJVtmdG1wNl0sICAgJVtm
dG1wNl0sICAgICAgICVbbWFza10gICAgICAgICAgICAgXG5cdCIKKyAgICAicHNodWZoICAgICAl
W2ZpbHRlcl94MV0sICVbZnRtcDZdLCAgICAgJVtmdG1wMF0gICAgICAgICAgICBcblx0IgorICAg
ICJzc3JsZCAgICAgICVbZnRtcDZdLCAgICVbZnRtcDZdLCAgICAgICAlW21hc2tdICAgICAgICAg
ICAgIFxuXHQiCisgICAgInBzaHVmaCAgICAgJVtmaWx0ZXJfeTBdLCAlW2Z0bXA2XSwgICAgICVb
ZnRtcDBdICAgICAgICAgICAgXG5cdCIKKyAgICAic3NybGQgICAgICAlW2Z0bXA2XSwgICAlW2Z0
bXA2XSwgICAgICAgJVttYXNrXSAgICAgICAgICAgICBcblx0IgorICAgICJwc2h1ZmggICAgICVb
ZmlsdGVyX3kxXSwgJVtmdG1wNl0sICAgICAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCisgICAg
InB4b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICAgICVbZnRtcDBdICAgICAgICAg
ICAgXG5cdCIKICAgICBNTUlfTEkoJVt0bXAwXSwgMHgwNykKICAgICBNTUlfTVRDMSglW3RtcDBd
LCAlW2Z0bXA2XSkKLSAgICAicHNodWZoICAgICAlW2ZpbHRlcl94MF0sICVbZmlsdGVyX3gwXSwg
JVtmdG1wMF0gICAgICAgICAgICBcblx0IgotICAgICJwc2h1ZmggICAgICVbZmlsdGVyX3gxXSwg
JVtmaWx0ZXJfeDFdLCAlW2Z0bXAwXSAgICAgICAgICAgIFxuXHQiCi0gICAgInBzaHVmaCAgICAg
JVtmaWx0ZXJfeTBdLCAlW2ZpbHRlcl95MF0sICVbZnRtcDBdICAgICAgICAgICAgXG5cdCIKLSAg
ICAicHNodWZoICAgICAlW2ZpbHRlcl95MV0sICVbZmlsdGVyX3kxXSwgJVtmdG1wMF0gICAgICAg
ICAgICBcblx0IgorICAgIE1NSV9MSSglW3RtcDBdLCAweDAwNDAwMDQwMDA0MDAwNDApCisgICAg
TU1JX01UQzEoJVt0bXAwXSwgJVtmZl9waF80MF0pCisgICAgTU1JX0xJKCVbdG1wMF0sIDB4MDBm
ZjAwZmYwMGZmMDBmZikKKyAgICBNTUlfTVRDMSglW3RtcDBdLCAlW21hc2tdKQogICAgIC8vIGZk
YXRhMzogZmRhdGEzWzBdIH4gZmRhdGEzWzNdCiAgICAgVkFSX0ZJTFRFUl9CTE9DSzJEX0JJTF9G
SVJTVF9QQVNTXzRfQQogCkBAIC0xMjMyLDE1ICsxMjk5LDE0IEBAIHN0YXRpYyBpbmxpbmUgdm9p
ZCB2YXJfZmlsdGVyX2Jsb2NrMmRfYmlsXzR4KGNvbnN0IHVpbnQ4X3QgKnNyY19wdHIsCiAgICAg
OiBbZnRtcDBdICI9JmYiKGZ0bXBbMF0pLCBbZnRtcDFdICI9JmYiKGZ0bXBbMV0pLCBbZnRtcDJd
ICI9JmYiKGZ0bXBbMl0pLAogICAgICAgW2Z0bXAzXSAiPSZmIihmdG1wWzNdKSwgW2Z0bXA0XSAi
PSZmIihmdG1wWzRdKSwgW2Z0bXA1XSAiPSZmIihmdG1wWzVdKSwKICAgICAgIFtmdG1wNl0gIj0m
ZiIoZnRtcFs2XSksIFt0bXAwXSAiPSZyIih0bXBbMF0pLCBbc3JjX3B0cl0gIismciIoc3JjX3B0
ciksCi0gICAgICBbdGVtcDJfcHRyXSAiKyZyIih0ZW1wMl9wdHIpLCBbY291bnRlcl0iKyZyIihs
X2NvdW50ZXIpCi0gICAgOiBbZmlsdGVyX3gwXSAiZiIoKHVpbnQ2NF90KWZpbHRlcl94WzBdKSwK
LSAgICAgIFtmaWx0ZXJfeDFdICJmIigodWludDY0X3QpZmlsdGVyX3hbMV0pLAotICAgICAgW2Zp
bHRlcl95MF0gImYiKCh1aW50NjRfdClmaWx0ZXJfeVswXSksCi0gICAgICBbZmlsdGVyX3kxXSAi
ZiIoKHVpbnQ2NF90KWZpbHRlcl95WzFdKSwKLSAgICAgIFtzcmNfc3RyaWRlXSAiciIoKG1pcHNf
cmVnKXNyY19zdHJpZGUpLCBbZmZfcGhfNDBdICJmIihmZl9waF80MCksCi0gICAgICBbbWFza10g
ImYiKG1hc2spCisgICAgICBbdGVtcDJfcHRyXSAiKyZyIih0ZW1wMl9wdHIpLCBbY291bnRlcl0i
KyZyIihsX2NvdW50ZXIpLAorICAgICAgW2ZmX3BoXzQwXSAiPSZmIihmZl9waF80MCksIFttYXNr
XSAiPSZmIihtYXNrKSwKKyAgICAgIFtmaWx0ZXJfeDBdICI9JmYiKGZpbHRlcl94MCksIFtmaWx0
ZXJfeDFdICI9JmYiKGZpbHRlcl94MSksCisgICAgICBbZmlsdGVyX3kwXSAiPSZmIihmaWx0ZXJf
eTApLCBbZmlsdGVyX3kxXSAiPSZmIihmaWx0ZXJfeTEpCisgICAgOiBbc3JjX3N0cmlkZV0gInIi
KChtaXBzX3JlZylzcmNfc3RyaWRlKSwgW2FsbF0gInIiKGFsbCkKICAgICA6ICJtZW1vcnkiCiAg
ICk7CisgIC8qIGNsYW5nLWZvcm1hdCBvbiAqLwogfQogCiAjZGVmaW5lIFNVQlBJWF9WQVI0WE4o
SCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbWlwcy92cHhfY29udm9sdmU4X21taS5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhfZHNwL21pcHMvdnB4X2NvbnZvbHZlOF9tbWkuYwppbmRleCBiYTlj
ZWI4NjY1OGQ2ZjU4N2U1YmMzODkzZjlmYjZjNWNmM2Q4ODcyLi5jYjdiY2E1NTg5ZGI1MjQ0Y2Y2
MGNhYmVhYjkwNmZmYTEzNzEwMjE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AvbWlw
cy92cHhfY29udm9sdmU4X21taS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC9taXBzL3ZweF9j
b252b2x2ZThfbW1pLmMKQEAgLTEwNSw3ICsxMDUsNyBAQCBzdGF0aWMgdm9pZCBjb252b2x2ZV9o
b3Jpel9tbWkoY29uc3QgdWludDhfdCAqc3JjLCBwdHJkaWZmX3Qgc3JjX3N0cmlkZSwKICAgLyog
Y2xhbmctZm9ybWF0IG9mZiAqLwogICBfX2FzbV9fIHZvbGF0aWxlKAogICAgICJtb3ZlICAgICAg
ICVbdG1wMV0sICAgICVbd2lkdGhdICAgICAgICAgICAgICAgICAgIFxuXHQiCi0gICAgInhvciAg
ICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0sICAgICVbZnRtcDBdICAgICAgXG5cdCIKKyAgICAi
cHhvciAgICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAgJVtmdG1wMF0gICAgICBcblx0Igog
ICAgICJnc2xkbGMxICAgICVbZmlsdGVyMV0sIDB4MDMoJVtmaWx0ZXJdKSAgICAgICAgICAgIFxu
XHQiCiAgICAgImdzbGRyYzEgICAgJVtmaWx0ZXIxXSwgMHgwMCglW2ZpbHRlcl0pICAgICAgICAg
ICAgXG5cdCIKICAgICAiZ3NsZGxjMSAgICAlW2ZpbHRlcjJdLCAweDBiKCVbZmlsdGVyXSkgICAg
ICAgICAgICBcblx0IgpAQCAtMTc4LDcgKzE3OCw3IEBAIHN0YXRpYyB2b2lkIGNvbnZvbHZlX3Zl
cnRfbW1pKGNvbnN0IHVpbnQ4X3QgKnNyYywgcHRyZGlmZl90IHNyY19zdHJpZGUsCiAgICh2b2lk
KXlfc3RlcF9xNDsKIAogICBfX2FzbV9fIHZvbGF0aWxlKAotICAgICJ4b3IgICAgICAgICVbZnRt
cDBdLCAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAg
JVtmdG1wMF0sICAgICVbZnRtcDBdLCAgICVbZnRtcDBdICAgICAgXG5cdCIKICAgICAiZ3NsZGxj
MSAgICAlW2Z0bXA0XSwgICAgMHgwMyglW2ZpbHRlcl0pICAgICAgICAgICBcblx0IgogICAgICJn
c2xkcmMxICAgICVbZnRtcDRdLCAgICAweDAwKCVbZmlsdGVyXSkgICAgICAgICAgIFxuXHQiCiAg
ICAgImdzbGRsYzEgICAgJVtmdG1wNV0sICAgIDB4MGIoJVtmaWx0ZXJdKSAgICAgICAgICAgXG5c
dCIKQEAgLTI3MSw3ICsyNzEsNyBAQCBzdGF0aWMgdm9pZCBjb252b2x2ZV9hdmdfaG9yaXpfbW1p
KGNvbnN0IHVpbnQ4X3QgKnNyYywgcHRyZGlmZl90IHNyY19zdHJpZGUsCiAKICAgX19hc21fXyB2
b2xhdGlsZSgKICAgICAibW92ZSAgICAgICAlW3RtcDFdLCAgICAlW3dpZHRoXSAgICAgICAgICAg
ICAgICAgICBcblx0IgotICAgICJ4b3IgICAgICAgICVbZnRtcDBdLCAgICVbZnRtcDBdLCAgICAl
W2Z0bXAwXSAgICAgIFxuXHQiCisgICAgInB4b3IgICAgICAgJVtmdG1wMF0sICAgJVtmdG1wMF0s
ICAgICVbZnRtcDBdICAgICAgXG5cdCIKICAgICAiZ3NsZGxjMSAgICAlW2ZpbHRlcjFdLCAweDAz
KCVbZmlsdGVyXSkgICAgICAgICAgICBcblx0IgogICAgICJnc2xkcmMxICAgICVbZmlsdGVyMV0s
IDB4MDAoJVtmaWx0ZXJdKSAgICAgICAgICAgIFxuXHQiCiAgICAgImdzbGRsYzEgICAgJVtmaWx0
ZXIyXSwgMHgwYiglW2ZpbHRlcl0pICAgICAgICAgICAgXG5cdCIKQEAgLTM1NCw3ICszNTQsNyBA
QCBzdGF0aWMgdm9pZCBjb252b2x2ZV9hdmdfdmVydF9tbWkoY29uc3QgdWludDhfdCAqc3JjLCBw
dHJkaWZmX3Qgc3JjX3N0cmlkZSwKICAgKHZvaWQpeV9zdGVwX3E0OwogCiAgIF9fYXNtX18gdm9s
YXRpbGUoCi0gICAgInhvciAgICAgICAgJVtmdG1wMF0sICAgICVbZnRtcDBdLCAgICVbZnRtcDBd
ICAgICAgXG5cdCIKKyAgICAicHhvciAgICAgICAlW2Z0bXAwXSwgICAgJVtmdG1wMF0sICAgJVtm
dG1wMF0gICAgICBcblx0IgogICAgICJnc2xkbGMxICAgICVbZnRtcDRdLCAgICAweDAzKCVbZmls
dGVyXSkgICAgICAgICAgIFxuXHQiCiAgICAgImdzbGRyYzEgICAgJVtmdG1wNF0sICAgIDB4MDAo
JVtmaWx0ZXJdKSAgICAgICAgICAgXG5cdCIKICAgICAiZ3NsZGxjMSAgICAlW2Z0bXA1XSwgICAg
MHgwYiglW2ZpbHRlcl0pICAgICAgICAgICBcblx0IgpAQCAtNDY3LDcgKzQ2Nyw3IEBAIHZvaWQg
dnB4X2NvbnZvbHZlX2F2Z19tbWkoY29uc3QgdWludDhfdCAqc3JjLCBwdHJkaWZmX3Qgc3JjX3N0
cmlkZSwKIAogICAgIF9fYXNtX18gdm9sYXRpbGUoCiAgICAgICAibW92ZSAgICAgICAlW3RtcDFd
LCAgICAlW3dpZHRoXSAgICAgICAgICAgICAgICAgIFxuXHQiCi0gICAgICAieG9yICAgICAgICAl
W2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSAgICAgIFxuXHQiCisgICAgICAicHhvciAg
ICAgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSwgICAlW2Z0bXAwXSAgICAgIFxuXHQiCiAgICAgICAi
bGkgICAgICAgICAlW3RtcDBdLCAgICAweDEwMDAxICAgICAgICAgICAgICAgICAgIFxuXHQiCiAg
ICAgICBNTUlfTVRDMSglW3RtcDBdLCAgICAlW2Z0bXAzXSkKICAgICAgICJwdW5wY2tsaHcgICVb
ZnRtcDNdLCAgICVbZnRtcDNdLCAgICVbZnRtcDNdICAgICAgXG5cdCIKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC94ODYvYWRkX25vaXNlX3NzZTIuYXNtIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
ZHNwL3g4Ni9hZGRfbm9pc2Vfc3NlMi5hc20KaW5kZXggODBjY2VkNGNlZGFhNGI3MWIyMzYyZDA0
Y2FmN2JiOWVkZDI4ZDQ0Ni4uZjUxNzE4Y2Y5OTRkZTFiNzcyYmQ1MWQ5ZTE1Y2UxMjg5MDI1Zjc3
MSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9hZGRfbm9pc2Vfc3NlMi5hc20K
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9hZGRfbm9pc2Vfc3NlMi5hc20KQEAgLTE2LDcg
KzE2LDcgQEAgU0VDVElPTiAudGV4dAogO3ZvaWQgdnB4X3BsYW5lX2FkZF9ub2lzZV9zc2UyKHVp
bnQ4X3QgKnN0YXJ0LCBjb25zdCBpbnQ4X3QgKm5vaXNlLAogOyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGludCBibGFja2NsYW1wLCBpbnQgd2hpdGVjbGFtcCwKIDsgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpbnQgd2lkdGgsIGludCBoZWlnaHQsIGludCBwaXRjaCkKLWdsb2Jh
bCBzeW0odnB4X3BsYW5lX2FkZF9ub2lzZV9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X3Bs
YW5lX2FkZF9ub2lzZV9zc2UyKQogc3ltKHZweF9wbGFuZV9hZGRfbm9pc2Vfc3NlMik6CiAgICAg
cHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC94ODYvZGVibG9ja19zc2UyLmFzbSBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC94ODYvZGVibG9ja19zc2UyLmFzbQppbmRleCA5ZDhlNWUzZTA5MDcwZmNlNTI4NzhiMTZkMTc5
NTJmZjFiMTJjODI4Li5iM2FmNjc3ZDJlODY4NWViNzUyOWYyYTdkNDhmNDRjNjAxOTI3MjY2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2RlYmxvY2tfc3NlMi5hc20KKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9kZWJsb2NrX3NzZTIuYXNtCkBAIC05NSw3ICs5NSw3IEBA
IFNFQ1RJT04gLnRleHQKIDsgICAgaW50ICpmbGltaXRzLAogOyAgICBpbnQgc2l6ZQogOykKLWds
b2JhbCBzeW0odnB4X3Bvc3RfcHJvY19kb3duX2FuZF9hY3Jvc3NfbWJfcm93X3NzZTIpIFBSSVZB
VEUKK2dsb2JhbHN5bSh2cHhfcG9zdF9wcm9jX2Rvd25fYW5kX2Fjcm9zc19tYl9yb3dfc3NlMikK
IHN5bSh2cHhfcG9zdF9wcm9jX2Rvd25fYW5kX2Fjcm9zc19tYl9yb3dfc3NlMik6CiAgICAgcHVz
aCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTIzNSw3ICsyMzUsNyBA
QCBzeW0odnB4X3Bvc3RfcHJvY19kb3duX2FuZF9hY3Jvc3NfbWJfcm93X3NzZTIpOgogCiA7dm9p
ZCB2cHhfbWJwb3N0X3Byb2NfYWNyb3NzX2lwX3NzZTIodW5zaWduZWQgY2hhciAqc3JjLAogOyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBwaXRjaCwgaW50IHJvd3MsIGlu
dCBjb2xzLGludCBmbGltaXQpCi1nbG9iYWwgc3ltKHZweF9tYnBvc3RfcHJvY19hY3Jvc3NfaXBf
c3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9tYnBvc3RfcHJvY19hY3Jvc3NfaXBfc3NlMikK
IHN5bSh2cHhfbWJwb3N0X3Byb2NfYWNyb3NzX2lwX3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJi
cAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AveDg2L2hpZ2hiZF92YXJpYW5jZV9pbXBsX3NzZTIuYXNtIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3g4Ni9oaWdoYmRfdmFyaWFuY2VfaW1wbF9zc2UyLmFzbQppbmRleCBhMjU2YTU5ZWMwZTJiZWZm
MTQ5NGU3OGU0Mzk5M2RjOWZkNTMzMjAwLi41YmVlNTFmYTBjMDY0ODQ4MjZlMGIxYTI3MTQyNTRh
Y2E2NjJkNzg3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L2hpZ2hiZF92YXJp
YW5jZV9pbXBsX3NzZTIuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvaGlnaGJkX3Zh
cmlhbmNlX2ltcGxfc3NlMi5hc20KQEAgLTIyLDcgKzIyLDcgQEAgU0VDVElPTiAudGV4dAogOyAg
ICB1bnNpZ25lZCBpbnQgICAgKiAgU1NFLAogOyAgICBpbnQgICAgICAgICAgICAgKiAgU3VtCiA7
KQotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2NhbGMxNngxNnZhcl9zc2UyKSBQUklWQVRFCitnbG9i
YWxzeW0odnB4X2hpZ2hiZF9jYWxjMTZ4MTZ2YXJfc3NlMikKIHN5bSh2cHhfaGlnaGJkX2NhbGMx
NngxNnZhcl9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAs
IHJzcApAQCAtMTc1LDcgKzE3NSw3IEBAIHN5bSh2cHhfaGlnaGJkX2NhbGMxNngxNnZhcl9zc2Uy
KToKIDsgICAgdW5zaWduZWQgaW50ICAgICogIFNTRSwKIDsgICAgaW50ICAgICAgICAgICAgICog
IFN1bQogOykKLWdsb2JhbCBzeW0odnB4X2hpZ2hiZF9jYWxjOHg4dmFyX3NzZTIpIFBSSVZBVEUK
K2dsb2JhbHN5bSh2cHhfaGlnaGJkX2NhbGM4eDh2YXJfc3NlMikKIHN5bSh2cHhfaGlnaGJkX2Nh
bGM4eDh2YXJfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJw
LCByc3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvc2FkX3NzZTMuYXNtIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zYWRfc3NlMy5hc20KaW5kZXggMTc1ZGNjMDg5NTQ3ZmZm
MWZmZWI4YTEwOTRiMzI2NDg3MDYzNTMyZC4uYWNiZDJlNGZhMTIyYTU4M2FlZmM3MmUzMjJiMjc0
ODA0OTZkNzFlZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zYWRfc3NlMy5h
c20KKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zYWRfc3NlMy5hc20KQEAgLTE3Myw3ICsx
NzMsNyBAQCBTRUNUSU9OIC50ZXh0CiA7ICAgIHVuc2lnbmVkIGNoYXIgKnJlZl9wdHIsCiA7ICAg
IGludCAgcmVmX3N0cmlkZSwKIDsgICAgaW50ICAqcmVzdWx0cykKLWdsb2JhbCBzeW0odnB4X3Nh
ZDE2eDE2eDNfc3NlMykgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9zYWQxNngxNngzX3NzZTMpCiBz
eW0odnB4X3NhZDE2eDE2eDNfc3NlMyk6CiAKICAgICBTVEFDS19GUkFNRV9DUkVBVEVfWDMKQEAg
LTIxNSw3ICsyMTUsNyBAQCBzeW0odnB4X3NhZDE2eDE2eDNfc3NlMyk6CiA7ICAgIHVuc2lnbmVk
IGNoYXIgKnJlZl9wdHIsCiA7ICAgIGludCAgcmVmX3N0cmlkZSwKIDsgICAgaW50ICAqcmVzdWx0
cykKLWdsb2JhbCBzeW0odnB4X3NhZDE2eDh4M19zc2UzKSBQUklWQVRFCitnbG9iYWxzeW0odnB4
X3NhZDE2eDh4M19zc2UzKQogc3ltKHZweF9zYWQxNng4eDNfc3NlMyk6CiAKICAgICBTVEFDS19G
UkFNRV9DUkVBVEVfWDMKQEAgLTI1Myw3ICsyNTMsNyBAQCBzeW0odnB4X3NhZDE2eDh4M19zc2Uz
KToKIDsgICAgdW5zaWduZWQgY2hhciAqcmVmX3B0ciwKIDsgICAgaW50ICByZWZfc3RyaWRlLAog
OyAgICBpbnQgICpyZXN1bHRzKQotZ2xvYmFsIHN5bSh2cHhfc2FkOHgxNngzX3NzZTMpIFBSSVZB
VEUKK2dsb2JhbHN5bSh2cHhfc2FkOHgxNngzX3NzZTMpCiBzeW0odnB4X3NhZDh4MTZ4M19zc2Uz
KToKIAogICAgIFNUQUNLX0ZSQU1FX0NSRUFURV9YMwpAQCAtMjgyLDcgKzI4Miw3IEBAIHN5bSh2
cHhfc2FkOHgxNngzX3NzZTMpOgogOyAgICB1bnNpZ25lZCBjaGFyICpyZWZfcHRyLAogOyAgICBp
bnQgIHJlZl9zdHJpZGUsCiA7ICAgIGludCAgKnJlc3VsdHMpCi1nbG9iYWwgc3ltKHZweF9zYWQ4
eDh4M19zc2UzKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X3NhZDh4OHgzX3NzZTMpCiBzeW0odnB4
X3NhZDh4OHgzX3NzZTMpOgogCiAgICAgU1RBQ0tfRlJBTUVfQ1JFQVRFX1gzCkBAIC0zMDcsNyAr
MzA3LDcgQEAgc3ltKHZweF9zYWQ4eDh4M19zc2UzKToKIDsgICAgdW5zaWduZWQgY2hhciAqcmVm
X3B0ciwKIDsgICAgaW50ICByZWZfc3RyaWRlLAogOyAgICBpbnQgICpyZXN1bHRzKQotZ2xvYmFs
IHN5bSh2cHhfc2FkNHg0eDNfc3NlMykgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9zYWQ0eDR4M19z
c2UzKQogc3ltKHZweF9zYWQ0eDR4M19zc2UzKToKIAogICAgIFNUQUNLX0ZSQU1FX0NSRUFURV9Y
MwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zYWRfc3NlNC5hc20gYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2Uv
bGlidnB4L3ZweF9kc3AveDg2L3NhZF9zc2U0LmFzbQppbmRleCAwMzk5OWRmY2EyNTAyZDFlYzA4
MzQ1MDhlMDgwNGVjMDlmNjUxZDA1Li4wODE4ZWQ1ZjBhY2M3ZTJiMTk1MjQxNWU5N2VmOGI3MmVi
ZjUzOGY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3NhZF9zc2U0LmFzbQor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3NhZF9zc2U0LmFzbQpAQCAtMTczLDcgKzE3Myw3
IEBAIFNFQ1RJT04gLnRleHQKIDsgICAgY29uc3QgdW5zaWduZWQgY2hhciAqcmVmX3B0ciwKIDsg
ICAgaW50ICByZWZfc3RyaWRlLAogOyAgICB1bnNpZ25lZCBzaG9ydCAqc2FkX2FycmF5KTsKLWds
b2JhbCBzeW0odnB4X3NhZDE2eDE2eDhfc3NlNF8xKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X3Nh
ZDE2eDE2eDhfc3NlNF8xKQogc3ltKHZweF9zYWQxNngxNng4X3NzZTRfMSk6CiAgICAgcHVzaCAg
ICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTIxNCw3ICsyMTQsNyBAQCBz
eW0odnB4X3NhZDE2eDE2eDhfc3NlNF8xKToKIDsgICAgaW50ICByZWZfc3RyaWRlLAogOyAgICB1
bnNpZ25lZCBzaG9ydCAqc2FkX2FycmF5CiA7KTsKLWdsb2JhbCBzeW0odnB4X3NhZDE2eDh4OF9z
c2U0XzEpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfc2FkMTZ4OHg4X3NzZTRfMSkKIHN5bSh2cHhf
c2FkMTZ4OHg4X3NzZTRfMSk6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAg
cmJwLCByc3AKQEAgLTI1MSw3ICsyNTEsNyBAQCBzeW0odnB4X3NhZDE2eDh4OF9zc2U0XzEpOgog
OyAgICBpbnQgIHJlZl9zdHJpZGUsCiA7ICAgIHVuc2lnbmVkIHNob3J0ICpzYWRfYXJyYXkKIDsp
OwotZ2xvYmFsIHN5bSh2cHhfc2FkOHg4eDhfc3NlNF8xKSBQUklWQVRFCitnbG9iYWxzeW0odnB4
X3NhZDh4OHg4X3NzZTRfMSkKIHN5bSh2cHhfc2FkOHg4eDhfc3NlNF8xKToKICAgICBwdXNoICAg
ICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMjg4LDcgKzI4OCw3IEBAIHN5
bSh2cHhfc2FkOHg4eDhfc3NlNF8xKToKIDsgICAgaW50ICByZWZfc3RyaWRlLAogOyAgICB1bnNp
Z25lZCBzaG9ydCAqc2FkX2FycmF5CiA7KTsKLWdsb2JhbCBzeW0odnB4X3NhZDh4MTZ4OF9zc2U0
XzEpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfc2FkOHgxNng4X3NzZTRfMSkKIHN5bSh2cHhfc2Fk
OHgxNng4X3NzZTRfMSk6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJw
LCByc3AKQEAgLTMyOSw3ICszMjksNyBAQCBzeW0odnB4X3NhZDh4MTZ4OF9zc2U0XzEpOgogOyAg
ICBpbnQgIHJlZl9zdHJpZGUsCiA7ICAgIHVuc2lnbmVkIHNob3J0ICpzYWRfYXJyYXkKIDspOwot
Z2xvYmFsIHN5bSh2cHhfc2FkNHg0eDhfc3NlNF8xKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X3Nh
ZDR4NHg4X3NzZTRfMSkKIHN5bSh2cHhfc2FkNHg0eDhfc3NlNF8xKToKICAgICBwdXNoICAgICAg
ICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3g4Ni9zYWRfc3NzZTMuYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zYWRfc3Nz
ZTMuYXNtCmluZGV4IDdjZjkzY2Y1MWRlZTdjYzViMzAxNmNhZDg1MWM0YmJlNjI0Zjk1ZWEuLmE1
YmM2ZDczMDZjMDhjYmFlZTYzMjY3MzdmMWViYmVhZTYzY2ZjMTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC94ODYvc2FkX3Nzc2UzLmFzbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3Av
eDg2L3NhZF9zc3NlMy5hc20KQEAgLTE1NCw3ICsxNTQsNyBAQCBTRUNUSU9OIC50ZXh0CiA7ICAg
IHVuc2lnbmVkIGNoYXIgKnJlZl9wdHIsCiA7ICAgIGludCAgcmVmX3N0cmlkZSwKIDsgICAgaW50
ICAqcmVzdWx0cykKLWdsb2JhbCBzeW0odnB4X3NhZDE2eDE2eDNfc3NzZTMpIFBSSVZBVEUKK2ds
b2JhbHN5bSh2cHhfc2FkMTZ4MTZ4M19zc3NlMykKIHN5bSh2cHhfc2FkMTZ4MTZ4M19zc3NlMyk6
CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTI2Nyw3
ICsyNjcsNyBAQCBzeW0odnB4X3NhZDE2eDE2eDNfc3NzZTMpOgogOyAgICB1bnNpZ25lZCBjaGFy
ICpyZWZfcHRyLAogOyAgICBpbnQgIHJlZl9zdHJpZGUsCiA7ICAgIGludCAgKnJlc3VsdHMpCi1n
bG9iYWwgc3ltKHZweF9zYWQxNng4eDNfc3NzZTMpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfc2Fk
MTZ4OHgzX3Nzc2UzKQogc3ltKHZweF9zYWQxNng4eDNfc3NzZTMpOgogICAgIHB1c2ggICAgICAg
IHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3Zw
eF9kc3AveDg2L3NzaW1fb3B0X3g4Nl82NC5hc20gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3Nz
aW1fb3B0X3g4Nl82NC5hc20KaW5kZXggMzAwZmE4YWFiY2UzYjQ0OGYwNjc2ZmQyMmQyMTM1MGM3
ZWVjZDY3MS4uNDFmZmJiMDdlNjRkMWE5MDNkNzljZTc3YzliZmE0YTgwYmM0N2UwZCAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2
cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni9zc2ltX29wdF94ODZfNjQuYXNtCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC94ODYvc3NpbV9vcHRfeDg2XzY0LmFzbQpAQCAtNjQsNyArNjQsNyBA
QCBTRUNUSU9OIC50ZXh0CiA7IG9yIHBhdmdiIEF0IHRoaXMgcG9pbnQgdGhpcyBpcyBqdXN0IG1l
YW50IHRvIGJlIGZpcnN0IHBhc3MgZm9yIGNhbGN1bGF0aW5nCiA7IGFsbCB0aGUgcGFybXMgbmVl
ZGVkIGZvciAxNngxNiBzc2ltIHNvIHdlIGNhbiBwbGF5IHdpdGggZHNzaW0gYXMgZGlzdG9ydGlv
bgogOyBpbiBtb2RlIHNlbGVjdGlvbiBjb2RlLgotZ2xvYmFsIHN5bSh2cHhfc3NpbV9wYXJtc18x
NngxNl9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X3NzaW1fcGFybXNfMTZ4MTZfc3NlMikK
IHN5bSh2cHhfc3NpbV9wYXJtc18xNngxNl9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAg
ICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMTU0LDcgKzE1NCw3IEBAIHN5bSh2cHhfc3NpbV9w
YXJtc18xNngxNl9zc2UyKToKIDsgb3IgcGF2Z2IgQXQgdGhpcyBwb2ludCB0aGlzIGlzIGp1c3Qg
bWVhbnQgdG8gYmUgZmlyc3QgcGFzcyBmb3IgY2FsY3VsYXRpbmcKIDsgYWxsIHRoZSBwYXJtcyBu
ZWVkZWQgZm9yIDE2eDE2IHNzaW0gc28gd2UgY2FuIHBsYXkgd2l0aCBkc3NpbSBhcyBkaXN0b3J0
aW9uCiA7IGluIG1vZGUgc2VsZWN0aW9uIGNvZGUuCi1nbG9iYWwgc3ltKHZweF9zc2ltX3Bhcm1z
Xzh4OF9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X3NzaW1fcGFybXNfOHg4X3NzZTIpCiBz
eW0odnB4X3NzaW1fcGFybXNfOHg4X3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1v
diAgICAgICAgIHJicCwgcnNwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3Ry
YW5zcG9zZV9zc2UyLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3RyYW5zcG9zZV9zc2UyLmgK
aW5kZXggNmUwNzg3MWIxODE2MTg0NTcyMGE5MGU4ZDRiNWJhMWE0NmYxZjAwZC4uYjRmMTE5MGQ3
NGEyNmIwZTEzOTA2NzhmNzAwMzVmOWQyMjU0MDFiYiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92
cHhfZHNwL3g4Ni90cmFuc3Bvc2Vfc3NlMi5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYv
dHJhbnNwb3NlX3NzZTIuaApAQCAtMTYsNyArMTYsNyBAQAogI2luY2x1ZGUgIi4vdnB4X2NvbmZp
Zy5oIgogCiBzdGF0aWMgSU5MSU5FIF9fbTEyOGkgdHJhbnNwb3NlXzhiaXRfNHg0KGNvbnN0IF9f
bTEyOGkgKmNvbnN0IGluKSB7Ci0gIC8vIFVucGFjayAxNiBiaXQgZWxlbWVudHMuIEdvZXMgZnJv
bToKKyAgLy8gVW5wYWNrIDggYml0IGVsZW1lbnRzLiBHb2VzIGZyb206CiAgIC8vIGluWzBdOiAw
MCAwMSAwMiAwMwogICAvLyBpblsxXTogMTAgMTEgMTIgMTMKICAgLy8gaW5bMl06IDIwIDIxIDIy
IDIzCkBAIC0yNyw3ICsyNyw3IEBAIHN0YXRpYyBJTkxJTkUgX19tMTI4aSB0cmFuc3Bvc2VfOGJp
dF80eDQoY29uc3QgX19tMTI4aSAqY29uc3QgaW4pIHsKICAgY29uc3QgX19tMTI4aSBhMCA9IF9t
bV91bnBhY2tsb19lcGk4KGluWzBdLCBpblsxXSk7CiAgIGNvbnN0IF9fbTEyOGkgYTEgPSBfbW1f
dW5wYWNrbG9fZXBpOChpblsyXSwgaW5bM10pOwogCi0gIC8vIFVucGFjayAzMiBiaXQgZWxlbWVu
dHMgcmVzdWx0aW5nIGluOgorICAvLyBVbnBhY2sgMTYgYml0IGVsZW1lbnRzIHJlc3VsdGluZyBp
bjoKICAgLy8gMDAgMTAgMjAgMzAgIDAxIDExIDIxIDMxICAwMiAxMiAyMiAzMiAgMDMgMTMgMjMg
MzMKICAgcmV0dXJuIF9tbV91bnBhY2tsb19lcGkxNihhMCwgYTEpOwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92cHhfaGlnaF9zdWJwaXhlbF84dF9zc2UyLmFzbSBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X2hpZ2hfc3VicGl4ZWxfOHRfc3NlMi5hc20KaW5kZXgg
YzU3MTQ5NjU3YWIzN2YwYzdkYjQwM2MwYTg0ZjY0MjQ2NGJlZjNkNy4uZmMzMDFmYjM5ZTZmMzVj
OGIyZTJjN2VhNGUwZWU2NTZiNGI3NmExNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNw
L3g4Ni92cHhfaGlnaF9zdWJwaXhlbF84dF9zc2UyLmFzbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9k
c3AveDg2L3ZweF9oaWdoX3N1YnBpeGVsXzh0X3NzZTIuYXNtCkBAIC0yMDgsNyArMjA4LDcgQEAg
U0VDVElPTiAudGV4dAogOyAgICB1bnNpZ25lZCBpbnQgICBvdXRwdXRfaGVpZ2h0LAogOyAgICBz
aG9ydCAqZmlsdGVyCiA7KQotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF92
OF9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDRfdjhf
c3NlMikKIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF92OF9zc2UyKToKICAgICBwdXNo
ICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMjc4LDcgKzI3OCw3IEBA
IHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF92OF9zc2UyKToKIDsgICAgdW5zaWduZWQg
aW50ICAgb3V0cHV0X2hlaWdodCwKIDsgICAgc2hvcnQgKmZpbHRlcgogOykKLWdsb2JhbCBzeW0o
dnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDhfdjhfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZw
eF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ4X3Y4X3NzZTIpCiBzeW0odnB4X2hpZ2hiZF9maWx0ZXJf
YmxvY2sxZDhfdjhfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAg
cmJwLCByc3AKQEAgLTMzNyw3ICszMzcsNyBAQCBzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sx
ZDhfdjhfc3NlMik6CiA7ICAgIHVuc2lnbmVkIGludCAgIG91dHB1dF9oZWlnaHQsCiA7ICAgIHNo
b3J0ICpmaWx0ZXIKIDspCi1nbG9iYWwgc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl92
OF9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDE2X3Y4
X3NzZTIpCiBzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDE2X3Y4X3NzZTIpOgogICAgIHB1
c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC0zOTEsNyArMzkxLDcg
QEAgc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl92OF9zc2UyKToKICAgICBwb3AgICAg
ICAgICByYnAKICAgICByZXQKIAotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFk
NF92OF9hdmdfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2Nr
MWQ0X3Y4X2F2Z19zc2UyKQogc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ0X3Y4X2F2Z19z
c2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAt
NDUyLDcgKzQ1Miw3IEBAIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF92OF9hdmdfc3Nl
Mik6CiAgICAgcG9wICAgICAgICAgcmJwCiAgICAgcmV0CiAKLWdsb2JhbCBzeW0odnB4X2hpZ2hi
ZF9maWx0ZXJfYmxvY2sxZDhfdjhfYXZnX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfaGln
aGJkX2ZpbHRlcl9ibG9jazFkOF92OF9hdmdfc3NlMikKIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9i
bG9jazFkOF92OF9hdmdfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAg
ICAgcmJwLCByc3AKQEAgLTUwMSw3ICs1MDEsNyBAQCBzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxv
Y2sxZDhfdjhfYXZnX3NzZTIpOgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9i
YWwgc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl92OF9hdmdfc3NlMikgUFJJVkFURQor
Z2xvYmFsc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl92OF9hdmdfc3NlMikKIHN5bSh2
cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkMTZfdjhfYXZnX3NzZTIpOgogICAgIHB1c2ggICAgICAg
IHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC01NjMsNyArNTYzLDcgQEAgc3ltKHZw
eF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl92OF9hdmdfc3NlMik6CiA7ICAgIHVuc2lnbmVkIGlu
dCAgICBvdXRwdXRfaGVpZ2h0LAogOyAgICBzaG9ydCAqZmlsdGVyCiA7KQotZ2xvYmFsIHN5bSh2
cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF9oOF9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4
X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDRfaDhfc3NlMikKIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9i
bG9jazFkNF9oOF9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICBy
YnAsIHJzcApAQCAtNjM4LDcgKzYzOCw3IEBAIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFk
NF9oOF9zc2UyKToKIDsgICAgdW5zaWduZWQgaW50ICAgIG91dHB1dF9oZWlnaHQsCiA7ICAgIHNo
b3J0ICpmaWx0ZXIKIDspCi1nbG9iYWwgc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ4X2g4
X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkOF9oOF9z
c2UyKQogc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ4X2g4X3NzZTIpOgogICAgIHB1c2gg
ICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC03MDQsNyArNzA0LDcgQEAg
c3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ4X2g4X3NzZTIpOgogOyAgICB1bnNpZ25lZCBp
bnQgICAgb3V0cHV0X2hlaWdodCwKIDsgICAgc2hvcnQgKmZpbHRlcgogOykKLWdsb2JhbCBzeW0o
dnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDE2X2g4X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2
cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkMTZfaDhfc3NlMikKIHN5bSh2cHhfaGlnaGJkX2ZpbHRl
cl9ibG9jazFkMTZfaDhfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAg
ICAgcmJwLCByc3AKQEAgLTc3Miw3ICs3NzIsNyBAQCBzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxv
Y2sxZDE2X2g4X3NzZTIpOgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9iYWwg
c3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ0X2g4X2F2Z19zc2UyKSBQUklWQVRFCitnbG9i
YWxzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDRfaDhfYXZnX3NzZTIpCiBzeW0odnB4X2hp
Z2hiZF9maWx0ZXJfYmxvY2sxZDRfaDhfYXZnX3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAog
ICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC04MzgsNyArODM4LDcgQEAgc3ltKHZweF9oaWdo
YmRfZmlsdGVyX2Jsb2NrMWQ0X2g4X2F2Z19zc2UyKToKICAgICBwb3AgICAgICAgICByYnAKICAg
ICByZXQKIAotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkOF9oOF9hdmdfc3Nl
MikgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ4X2g4X2F2Z19z
c2UyKQogc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ4X2g4X2F2Z19zc2UyKToKICAgICBw
dXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtODk1LDcgKzg5NSw3
IEBAIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkOF9oOF9hdmdfc3NlMik6CiAgICAgcG9w
ICAgICAgICAgcmJwCiAgICAgcmV0CiAKLWdsb2JhbCBzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxv
Y2sxZDE2X2g4X2F2Z19zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2hpZ2hiZF9maWx0ZXJf
YmxvY2sxZDE2X2g4X2F2Z19zc2UyKQogc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl9o
OF9hdmdfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCBy
c3AKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X2hpZ2hfc3VicGl4ZWxf
YmlsaW5lYXJfc3NlMi5hc20gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9oaWdoX3N1YnBp
eGVsX2JpbGluZWFyX3NzZTIuYXNtCmluZGV4IGVjMThkMzcwZTIxNWNmOTljYzYyMmRhMTUwY2Vj
OTIyODEzNmM2NTMuLmJkNTFjNzViY2I2MzlmOWRmZDViMmU2MzdjNTkzYzBiNmJhMDIzZTggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X2hpZ2hfc3VicGl4ZWxfYmlsaW5l
YXJfc3NlMi5hc20KKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfZHNwL3g4Ni92cHhfaGlnaF9zdWJwaXhl
bF9iaWxpbmVhcl9zc2UyLmFzbQpAQCAtMTczLDcgKzE3Myw3IEBACiAKIFNFQ1RJT04gLnRleHQK
IAotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF92Ml9zc2UyKSBQUklWQVRF
CitnbG9iYWxzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDRfdjJfc3NlMikKIHN5bSh2cHhf
aGlnaGJkX2ZpbHRlcl9ibG9jazFkNF92Ml9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAg
ICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMTk4LDcgKzE5OCw3IEBAIHN5bSh2cHhfaGlnaGJk
X2ZpbHRlcl9ibG9jazFkNF92Ml9zc2UyKToKICAgICByZXQKIAogJWlmIFZQWF9BUkNIX1g4Nl82
NAotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkOF92Ml9zc2UyKSBQUklWQVRF
CitnbG9iYWxzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDhfdjJfc3NlMikKIHN5bSh2cHhf
aGlnaGJkX2ZpbHRlcl9ibG9jazFkOF92Ml9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAg
ICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMjI0LDcgKzIyNCw3IEBAIHN5bSh2cHhfaGlnaGJk
X2ZpbHRlcl9ibG9jazFkOF92Ml9zc2UyKToKICAgICBwb3AgICAgICAgICByYnAKICAgICByZXQK
IAotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkMTZfdjJfc3NlMikgUFJJVkFU
RQorZ2xvYmFsc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl92Ml9zc2UyKQogc3ltKHZw
eF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl92Ml9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAK
ICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMjUzLDcgKzI1Myw3IEBAIHN5bSh2cHhfaGln
aGJkX2ZpbHRlcl9ibG9jazFkMTZfdjJfc3NlMik6CiAgICAgcmV0CiAlZW5kaWYKIAotZ2xvYmFs
IHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF92Ml9hdmdfc3NlMikgUFJJVkFURQorZ2xv
YmFsc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ0X3YyX2F2Z19zc2UyKQogc3ltKHZweF9o
aWdoYmRfZmlsdGVyX2Jsb2NrMWQ0X3YyX2F2Z19zc2UyKToKICAgICBwdXNoICAgICAgICByYnAK
ICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMjc4LDcgKzI3OCw3IEBAIHN5bSh2cHhfaGln
aGJkX2ZpbHRlcl9ibG9jazFkNF92Ml9hdmdfc3NlMik6CiAgICAgcmV0CiAKICVpZiBWUFhfQVJD
SF9YODZfNjQKLWdsb2JhbCBzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDhfdjJfYXZnX3Nz
ZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkOF92Ml9hdmdf
c3NlMikKIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkOF92Ml9hdmdfc3NlMik6CiAgICAg
cHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTMwNCw3ICszMDQs
NyBAQCBzeW0odnB4X2hpZ2hiZF9maWx0ZXJfYmxvY2sxZDhfdjJfYXZnX3NzZTIpOgogICAgIHBv
cCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9iYWwgc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Js
b2NrMWQxNl92Ml9hdmdfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9oaWdoYmRfZmlsdGVy
X2Jsb2NrMWQxNl92Ml9hdmdfc3NlMikKIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkMTZf
djJfYXZnX3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwg
cnNwCkBAIC0zMzMsNyArMzMzLDcgQEAgc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl92
Ml9hdmdfc3NlMik6CiAgICAgcmV0CiAlZW5kaWYKIAotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2Zp
bHRlcl9ibG9jazFkNF9oMl9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2hpZ2hiZF9maWx0
ZXJfYmxvY2sxZDRfaDJfc3NlMikKIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF9oMl9z
c2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAt
MzU5LDcgKzM1OSw3IEBAIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF9oMl9zc2UyKToK
ICAgICByZXQKIAogJWlmIFZQWF9BUkNIX1g4Nl82NAotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2Zp
bHRlcl9ibG9jazFkOF9oMl9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2hpZ2hiZF9maWx0
ZXJfYmxvY2sxZDhfaDJfc3NlMikKIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkOF9oMl9z
c2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAt
Mzg1LDcgKzM4NSw3IEBAIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkOF9oMl9zc2UyKToK
ICAgICBwb3AgICAgICAgICByYnAKICAgICByZXQKIAotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2Zp
bHRlcl9ibG9jazFkMTZfaDJfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9oaWdoYmRfZmls
dGVyX2Jsb2NrMWQxNl9oMl9zc2UyKQogc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl9o
Ml9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApA
QCAtNDE0LDcgKzQxNCw3IEBAIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkMTZfaDJfc3Nl
Mik6CiAgICAgcmV0CiAlZW5kaWYKIAotZ2xvYmFsIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9j
azFkNF9oMl9hdmdfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Js
b2NrMWQ0X2gyX2F2Z19zc2UyKQogc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQ0X2gyX2F2
Z19zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApA
QCAtNDQwLDcgKzQ0MCw3IEBAIHN5bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkNF9oMl9hdmdf
c3NlMik6CiAgICAgcmV0CiAKICVpZiBWUFhfQVJDSF9YODZfNjQKLWdsb2JhbCBzeW0odnB4X2hp
Z2hiZF9maWx0ZXJfYmxvY2sxZDhfaDJfYXZnX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhf
aGlnaGJkX2ZpbHRlcl9ibG9jazFkOF9oMl9hdmdfc3NlMikKIHN5bSh2cHhfaGlnaGJkX2ZpbHRl
cl9ibG9jazFkOF9oMl9hdmdfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAg
ICAgICAgcmJwLCByc3AKQEAgLTQ2Niw3ICs0NjYsNyBAQCBzeW0odnB4X2hpZ2hiZF9maWx0ZXJf
YmxvY2sxZDhfaDJfYXZnX3NzZTIpOgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1n
bG9iYWwgc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl9oMl9hdmdfc3NlMikgUFJJVkFU
RQorZ2xvYmFsc3ltKHZweF9oaWdoYmRfZmlsdGVyX2Jsb2NrMWQxNl9oMl9hdmdfc3NlMikKIHN5
bSh2cHhfaGlnaGJkX2ZpbHRlcl9ibG9jazFkMTZfaDJfYXZnX3NzZTIpOgogICAgIHB1c2ggICAg
ICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4
L3ZweF9kc3AveDg2L3ZweF9zdWJwaXhlbF84dF9zc2UyLmFzbSBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC94ODYvdnB4X3N1YnBpeGVsXzh0X3NzZTIuYXNtCmluZGV4IDg0OTdlMTcyMWI5MGJiNTU2N2Iw
ZDAzNTc0YzZjYjdlZTU1NWNmNmYuLmM4NDU1ZTEzYTI1MDNlYjQxN2Q5YjdiMzkyMTdjZjkzNTJh
NTk1OGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X3N1YnBpeGVsXzh0
X3NzZTIuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X3N1YnBpeGVsXzh0X3Nz
ZTIuYXNtCkBAIC0xODcsNyArMTg3LDcgQEAgU0VDVElPTiAudGV4dAogOyAgICB1bnNpZ25lZCBp
bnQgICBvdXRwdXRfaGVpZ2h0LAogOyAgICBzaG9ydCAqZmlsdGVyCiA7KQotZ2xvYmFsIHN5bSh2
cHhfZmlsdGVyX2Jsb2NrMWQ0X3Y4X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVy
X2Jsb2NrMWQ0X3Y4X3NzZTIpCiBzeW0odnB4X2ZpbHRlcl9ibG9jazFkNF92OF9zc2UyKToKICAg
ICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMjU0LDcgKzI1
NCw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3Y4X3NzZTIpOgogOyAgICB1bnNpZ25lZCBp
bnQgICBvdXRwdXRfaGVpZ2h0LAogOyAgICBzaG9ydCAqZmlsdGVyCiA7KQotZ2xvYmFsIHN5bSh2
cHhfZmlsdGVyX2Jsb2NrMWQ4X3Y4X3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVy
X2Jsb2NrMWQ4X3Y4X3NzZTIpCiBzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF92OF9zc2UyKToKICAg
ICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMzEzLDcgKzMx
Myw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4X3Y4X3NzZTIpOgogOyAgICB1bnNpZ25lZCBp
bnQgICBvdXRwdXRfaGVpZ2h0LAogOyAgICBzaG9ydCAqZmlsdGVyCiA7KQotZ2xvYmFsIHN5bSh2
cHhfZmlsdGVyX2Jsb2NrMWQxNl92OF9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2ZpbHRl
cl9ibG9jazFkMTZfdjhfc3NlMikKIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92OF9zc2UyKToK
ICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMzY3LDcg
KzM2Nyw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92OF9zc2UyKToKICAgICBwb3AgICAg
ICAgICByYnAKICAgICByZXQKIAotZ2xvYmFsIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3Y4X2F2
Z19zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkNF92OF9hdmdfc3Nl
MikKIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3Y4X2F2Z19zc2UyKToKICAgICBwdXNoICAgICAg
ICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtNDI1LDcgKzQyNSw3IEBAIHN5bSh2
cHhfZmlsdGVyX2Jsb2NrMWQ0X3Y4X2F2Z19zc2UyKToKICAgICBwb3AgICAgICAgICByYnAKICAg
ICByZXQKIAotZ2xvYmFsIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4X3Y4X2F2Z19zc2UyKSBQUklW
QVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF92OF9hdmdfc3NlMikKIHN5bSh2cHhf
ZmlsdGVyX2Jsb2NrMWQ4X3Y4X2F2Z19zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBt
b3YgICAgICAgICByYnAsIHJzcApAQCAtNDc0LDcgKzQ3NCw3IEBAIHN5bSh2cHhfZmlsdGVyX2Js
b2NrMWQ4X3Y4X2F2Z19zc2UyKToKICAgICBwb3AgICAgICAgICByYnAKICAgICByZXQKIAotZ2xv
YmFsIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92OF9hdmdfc3NlMikgUFJJVkFURQorZ2xvYmFs
c3ltKHZweF9maWx0ZXJfYmxvY2sxZDE2X3Y4X2F2Z19zc2UyKQogc3ltKHZweF9maWx0ZXJfYmxv
Y2sxZDE2X3Y4X2F2Z19zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAg
ICByYnAsIHJzcApAQCAtNTM2LDcgKzUzNiw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92
OF9hdmdfc3NlMik6CiA7ICAgIHVuc2lnbmVkIGludCAgICBvdXRwdXRfaGVpZ2h0LAogOyAgICBz
aG9ydCAqZmlsdGVyCiA7KQotZ2xvYmFsIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X2g4X3NzZTIp
IFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X2g4X3NzZTIpCiBzeW0odnB4
X2ZpbHRlcl9ibG9jazFkNF9oOF9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3Yg
ICAgICAgICByYnAsIHJzcApAQCAtNjEwLDcgKzYxMCw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2Nr
MWQ0X2g4X3NzZTIpOgogOyAgICB1bnNpZ25lZCBpbnQgICAgb3V0cHV0X2hlaWdodCwKIDsgICAg
c2hvcnQgKmZpbHRlcgogOykKLWdsb2JhbCBzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF9oOF9zc2Uy
KSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF9oOF9zc2UyKQogc3ltKHZw
eF9maWx0ZXJfYmxvY2sxZDhfaDhfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92
ICAgICAgICAgcmJwLCByc3AKQEAgLTY4NSw3ICs2ODUsNyBAQCBzeW0odnB4X2ZpbHRlcl9ibG9j
azFkOF9oOF9zc2UyKToKIDsgICAgdW5zaWduZWQgaW50ICAgIG91dHB1dF9oZWlnaHQsCiA7ICAg
IHNob3J0ICpmaWx0ZXIKIDspCi1nbG9iYWwgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDE2X2g4X3Nz
ZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl9oOF9zc2UyKQogc3lt
KHZweF9maWx0ZXJfYmxvY2sxZDE2X2g4X3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAg
IG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC03NzEsNyArNzcxLDcgQEAgc3ltKHZweF9maWx0ZXJf
YmxvY2sxZDE2X2g4X3NzZTIpOgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9i
YWwgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDRfaDhfYXZnX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5
bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X2g4X2F2Z19zc2UyKQogc3ltKHZweF9maWx0ZXJfYmxvY2sx
ZDRfaDhfYXZnX3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJi
cCwgcnNwCkBAIC04MzYsNyArODM2LDcgQEAgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDRfaDhfYXZn
X3NzZTIpOgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9iYWwgc3ltKHZweF9m
aWx0ZXJfYmxvY2sxZDhfaDhfYXZnX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVy
X2Jsb2NrMWQ4X2g4X2F2Z19zc2UyKQogc3ltKHZweF9maWx0ZXJfYmxvY2sxZDhfaDhfYXZnX3Nz
ZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC05
MDIsNyArOTAyLDcgQEAgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDhfaDhfYXZnX3NzZTIpOgogICAg
IHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9iYWwgc3ltKHZweF9maWx0ZXJfYmxvY2sx
ZDE2X2g4X2F2Z19zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkMTZf
aDhfYXZnX3NzZTIpCiBzeW0odnB4X2ZpbHRlcl9ibG9jazFkMTZfaDhfYXZnX3NzZTIpOgogICAg
IHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3Vy
Y2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9zdWJwaXhlbF9iaWxpbmVhcl9zc2UyLmFzbSBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJj
ZS9saWJ2cHgvdnB4X2RzcC94ODYvdnB4X3N1YnBpeGVsX2JpbGluZWFyX3NzZTIuYXNtCmluZGV4
IDZkNzk0OTJlNGE0NzY1Y2QxNWI1NTViOTc2NWFjMzg0ODg4NDIxMzUuLjY1NzkwYjFjMjFlMWQ2
NjczMGIxNjk1ZTBiNTdhZjE2MTczZmI4MmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X2Rz
cC94ODYvdnB4X3N1YnBpeGVsX2JpbGluZWFyX3NzZTIuYXNtCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
X2RzcC94ODYvdnB4X3N1YnBpeGVsX2JpbGluZWFyX3NzZTIuYXNtCkBAIC0xMzMsNyArMTMzLDcg
QEAKIAogU0VDVElPTiAudGV4dAogCi1nbG9iYWwgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDRfdjJf
c3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9maWx0ZXJfYmxvY2sxZDRfdjJfc3NlMikKIHN5
bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3YyX3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAg
IG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC0xNTcsNyArMTU3LDcgQEAgc3ltKHZweF9maWx0ZXJf
YmxvY2sxZDRfdjJfc3NlMik6CiAgICAgcG9wICAgICAgICAgcmJwCiAgICAgcmV0CiAKLWdsb2Jh
bCBzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF92Ml9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4
X2ZpbHRlcl9ibG9jazFkOF92Ml9zc2UyKQogc3ltKHZweF9maWx0ZXJfYmxvY2sxZDhfdjJfc3Nl
Mik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTE4
Myw3ICsxODMsNyBAQCBzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF92Ml9zc2UyKToKICAgICBwb3Ag
ICAgICAgICByYnAKICAgICByZXQKIAotZ2xvYmFsIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92
Ml9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkMTZfdjJfc3NlMikK
IHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92Ml9zc2UyKToKICAgICBwdXNoICAgICAgICByYnAK
ICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMjExLDcgKzIxMSw3IEBAIHN5bSh2cHhfZmls
dGVyX2Jsb2NrMWQxNl92Ml9zc2UyKToKICAgICBwb3AgICAgICAgICByYnAKICAgICByZXQKIAot
Z2xvYmFsIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3YyX2F2Z19zc2UyKSBQUklWQVRFCitnbG9i
YWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkNF92Ml9hdmdfc3NlMikKIHN5bSh2cHhfZmlsdGVyX2Js
b2NrMWQ0X3YyX2F2Z19zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAg
ICByYnAsIHJzcApAQCAtMjM1LDcgKzIzNSw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3Yy
X2F2Z19zc2UyKToKICAgICBwb3AgICAgICAgICByYnAKICAgICByZXQKIAotZ2xvYmFsIHN5bSh2
cHhfZmlsdGVyX2Jsb2NrMWQ4X3YyX2F2Z19zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2Zp
bHRlcl9ibG9jazFkOF92Ml9hdmdfc3NlMikKIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4X3YyX2F2
Z19zc2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApA
QCAtMjYxLDcgKzI2MSw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4X3YyX2F2Z19zc2UyKToK
ICAgICBwb3AgICAgICAgICByYnAKICAgICByZXQKIAotZ2xvYmFsIHN5bSh2cHhfZmlsdGVyX2Js
b2NrMWQxNl92Ml9hdmdfc3NlMikgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9maWx0ZXJfYmxvY2sx
ZDE2X3YyX2F2Z19zc2UyKQogc3ltKHZweF9maWx0ZXJfYmxvY2sxZDE2X3YyX2F2Z19zc2UyKToK
ICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMjg5LDcg
KzI4OSw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92Ml9hdmdfc3NlMik6CiAgICAgcG9w
ICAgICAgICAgcmJwCiAgICAgcmV0CiAKLWdsb2JhbCBzeW0odnB4X2ZpbHRlcl9ibG9jazFkNF9o
Ml9zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkNF9oMl9zc2UyKQog
c3ltKHZweF9maWx0ZXJfYmxvY2sxZDRfaDJfc3NlMik6CiAgICAgcHVzaCAgICAgICAgcmJwCiAg
ICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTMxNCw3ICszMTQsNyBAQCBzeW0odnB4X2ZpbHRl
cl9ibG9jazFkNF9oMl9zc2UyKToKICAgICBwb3AgICAgICAgICByYnAKICAgICByZXQKIAotZ2xv
YmFsIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4X2gyX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2
cHhfZmlsdGVyX2Jsb2NrMWQ4X2gyX3NzZTIpCiBzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF9oMl9z
c2UyKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAt
MzQxLDcgKzM0MSw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4X2gyX3NzZTIpOgogICAgIHBv
cCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9iYWwgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDE2
X2gyX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl9oMl9zc2Uy
KQogc3ltKHZweF9maWx0ZXJfYmxvY2sxZDE2X2gyX3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJi
cAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC0zNjksNyArMzY5LDcgQEAgc3ltKHZweF9m
aWx0ZXJfYmxvY2sxZDE2X2gyX3NzZTIpOgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAog
Ci1nbG9iYWwgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDRfaDJfYXZnX3NzZTIpIFBSSVZBVEUKK2ds
b2JhbHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X2gyX2F2Z19zc2UyKQogc3ltKHZweF9maWx0ZXJf
YmxvY2sxZDRfaDJfYXZnX3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAg
ICAgIHJicCwgcnNwCkBAIC0zOTQsNyArMzk0LDcgQEAgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDRf
aDJfYXZnX3NzZTIpOgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9iYWwgc3lt
KHZweF9maWx0ZXJfYmxvY2sxZDhfaDJfYXZnX3NzZTIpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhf
ZmlsdGVyX2Jsb2NrMWQ4X2gyX2F2Z19zc2UyKQogc3ltKHZweF9maWx0ZXJfYmxvY2sxZDhfaDJf
YXZnX3NzZTIpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNw
CkBAIC00MjEsNyArNDIxLDcgQEAgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDhfaDJfYXZnX3NzZTIp
OgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9iYWwgc3ltKHZweF9maWx0ZXJf
YmxvY2sxZDE2X2gyX2F2Z19zc2UyKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9j
azFkMTZfaDJfYXZnX3NzZTIpCiBzeW0odnB4X2ZpbHRlcl9ibG9jazFkMTZfaDJfYXZnX3NzZTIp
OgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9zdWJwaXhlbF9iaWxpbmVhcl9zc3NlMy5h
c20gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9kc3AveDg2L3ZweF9zdWJwaXhlbF9iaWxpbmVhcl9zc3NlMy5h
c20KaW5kZXggOGM5YzgxN2JlNzJkYTQ5MDEwNDBiMDQ2NmNiYzUxNjgyNGJmNjA0OC4uMzJlM2Nk
M2Q5Zjc3MDE0YmNjYzBjZTIzYjJmMzA1YjExYWE4YTFhMyAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC92cHhfZHNwL3g4Ni92cHhfc3VicGl4ZWxfYmlsaW5lYXJfc3NzZTMuYXNtCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X2RzcC94ODYvdnB4X3N1YnBpeGVsX2JpbGluZWFyX3Nzc2UzLmFzbQpAQCAtMTA3
LDcgKzEwNyw3IEBACiAKIFNFQ1RJT04gLnRleHQKIAotZ2xvYmFsIHN5bSh2cHhfZmlsdGVyX2Js
b2NrMWQ0X3YyX3Nzc2UzKSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkNF92
Ml9zc3NlMykKIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3YyX3Nzc2UzKToKICAgICBwdXNoICAg
ICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMTMxLDcgKzEzMSw3IEBAIHN5
bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3YyX3Nzc2UzKToKICAgICBwb3AgICAgICAgICByYnAKICAg
ICByZXQKIAotZ2xvYmFsIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4X3YyX3Nzc2UzKSBQUklWQVRF
CitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF92Ml9zc3NlMykKIHN5bSh2cHhfZmlsdGVy
X2Jsb2NrMWQ4X3YyX3Nzc2UzKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAg
ICByYnAsIHJzcApAQCAtMTU3LDcgKzE1Nyw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4X3Yy
X3Nzc2UzKToKICAgICBwb3AgICAgICAgICByYnAKICAgICByZXQKIAotZ2xvYmFsIHN5bSh2cHhf
ZmlsdGVyX2Jsb2NrMWQxNl92Ml9zc3NlMykgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9maWx0ZXJf
YmxvY2sxZDE2X3YyX3Nzc2UzKQogc3ltKHZweF9maWx0ZXJfYmxvY2sxZDE2X3YyX3Nzc2UzKToK
ICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMTg0LDcg
KzE4NCw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92Ml9zc3NlMyk6CiAgICAgcG9wICAg
ICAgICAgcmJwCiAgICAgcmV0CiAKLWdsb2JhbCBzeW0odnB4X2ZpbHRlcl9ibG9jazFkNF92Ml9h
dmdfc3NzZTMpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3YyX2F2Z19z
c3NlMykKIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X3YyX2F2Z19zc3NlMyk6CiAgICAgcHVzaCAg
ICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAgLTIwOCw3ICsyMDgsNyBAQCBz
eW0odnB4X2ZpbHRlcl9ibG9jazFkNF92Ml9hdmdfc3NzZTMpOgogICAgIHBvcCAgICAgICAgIHJi
cAogICAgIHJldAogCi1nbG9iYWwgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDhfdjJfYXZnX3Nzc2Uz
KSBQUklWQVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF92Ml9hdmdfc3NzZTMpCiBz
eW0odnB4X2ZpbHRlcl9ibG9jazFkOF92Ml9hdmdfc3NzZTMpOgogICAgIHB1c2ggICAgICAgIHJi
cAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC0yMzQsNyArMjM0LDcgQEAgc3ltKHZweF9m
aWx0ZXJfYmxvY2sxZDhfdjJfYXZnX3Nzc2UzKToKICAgICBwb3AgICAgICAgICByYnAKICAgICBy
ZXQKIAotZ2xvYmFsIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92Ml9hdmdfc3NzZTMpIFBSSVZB
VEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl92Ml9hdmdfc3NzZTMpCiBzeW0odnB4
X2ZpbHRlcl9ibG9jazFkMTZfdjJfYXZnX3Nzc2UzKToKICAgICBwdXNoICAgICAgICByYnAKICAg
ICBtb3YgICAgICAgICByYnAsIHJzcApAQCAtMjYxLDcgKzI2MSw3IEBAIHN5bSh2cHhfZmlsdGVy
X2Jsb2NrMWQxNl92Ml9hdmdfc3NzZTMpOgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAog
Ci1nbG9iYWwgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDRfaDJfc3NzZTMpIFBSSVZBVEUKK2dsb2Jh
bHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X2gyX3Nzc2UzKQogc3ltKHZweF9maWx0ZXJfYmxvY2sx
ZDRfaDJfc3NzZTMpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwg
cnNwCkBAIC0yODYsNyArMjg2LDcgQEAgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDRfaDJfc3NzZTMp
OgogICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9iYWwgc3ltKHZweF9maWx0ZXJf
YmxvY2sxZDhfaDJfc3NzZTMpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4
X2gyX3Nzc2UzKQogc3ltKHZweF9maWx0ZXJfYmxvY2sxZDhfaDJfc3NzZTMpOgogICAgIHB1c2gg
ICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCkBAIC0zMTMsNyArMzEzLDcgQEAg
c3ltKHZweF9maWx0ZXJfYmxvY2sxZDhfaDJfc3NzZTMpOgogICAgIHBvcCAgICAgICAgIHJicAog
ICAgIHJldAogCi1nbG9iYWwgc3ltKHZweF9maWx0ZXJfYmxvY2sxZDE2X2gyX3Nzc2UzKSBQUklW
QVRFCitnbG9iYWxzeW0odnB4X2ZpbHRlcl9ibG9jazFkMTZfaDJfc3NzZTMpCiBzeW0odnB4X2Zp
bHRlcl9ibG9jazFkMTZfaDJfc3NzZTMpOgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAg
ICAgICAgIHJicCwgcnNwCkBAIC0zNDAsNyArMzQwLDcgQEAgc3ltKHZweF9maWx0ZXJfYmxvY2sx
ZDE2X2gyX3Nzc2UzKToKICAgICBwb3AgICAgICAgICByYnAKICAgICByZXQKIAotZ2xvYmFsIHN5
bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X2gyX2F2Z19zc3NlMykgUFJJVkFURQorZ2xvYmFsc3ltKHZw
eF9maWx0ZXJfYmxvY2sxZDRfaDJfYXZnX3Nzc2UzKQogc3ltKHZweF9maWx0ZXJfYmxvY2sxZDRf
aDJfYXZnX3Nzc2UzKToKICAgICBwdXNoICAgICAgICByYnAKICAgICBtb3YgICAgICAgICByYnAs
IHJzcApAQCAtMzY1LDcgKzM2NSw3IEBAIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ0X2gyX2F2Z19z
c3NlMyk6CiAgICAgcG9wICAgICAgICAgcmJwCiAgICAgcmV0CiAKLWdsb2JhbCBzeW0odnB4X2Zp
bHRlcl9ibG9jazFkOF9oMl9hdmdfc3NzZTMpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfZmlsdGVy
X2Jsb2NrMWQ4X2gyX2F2Z19zc3NlMykKIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQ4X2gyX2F2Z19z
c3NlMyk6CiAgICAgcHVzaCAgICAgICAgcmJwCiAgICAgbW92ICAgICAgICAgcmJwLCByc3AKQEAg
LTM5Miw3ICszOTIsNyBAQCBzeW0odnB4X2ZpbHRlcl9ibG9jazFkOF9oMl9hdmdfc3NzZTMpOgog
ICAgIHBvcCAgICAgICAgIHJicAogICAgIHJldAogCi1nbG9iYWwgc3ltKHZweF9maWx0ZXJfYmxv
Y2sxZDE2X2gyX2F2Z19zc3NlMykgUFJJVkFURQorZ2xvYmFsc3ltKHZweF9maWx0ZXJfYmxvY2sx
ZDE2X2gyX2F2Z19zc3NlMykKIHN5bSh2cHhfZmlsdGVyX2Jsb2NrMWQxNl9oMl9hdmdfc3NzZTMp
OgogICAgIHB1c2ggICAgICAgIHJicAogICAgIG1vdiAgICAgICAgIHJicCwgcnNwCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hc21kZWZzX21taS5oIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhf
cG9ydHMvYXNtZGVmc19tbWkuaAppbmRleCAyODM1NWJmOWZiZmJlNGFjYjhhMDM3OTgwODFlNGNj
MmEwYmY2YzVkLi40MDBhNTFjYzMyYjliMDg0MTI5NmMxM2RhOTc0M2NjNDU5NTYxMWE1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9hc21kZWZzX21taS5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3BvcnRzL2FzbWRlZnNfbW1pLmgKQEAgLTM0LDcgKzM0LDcgQEAKICAgImxkICAgICAg
ICAgICIgI3JlZyAiLCAgICAgICAgIiAjYmlhcyAiKCIgI2FkZHIgIikgICAgICAgICAgICAgICBc
blx0IgogCiAjZGVmaW5lIE1NSV9TUkwocmVnMSwgcmVnMiwgc2hpZnQpIFwKLSAgImRzcmwgICAg
ICAgICIgI3JlZzEgIiwgICAgICAgIiAjcmVnMiAiLCAgICAgICAiICNzaGlmdCAiICAgICAgICBc
blx0IgorICAic3NybGQgICAgICAgIiAjcmVnMSAiLCAgICAgICAiICNyZWcyICIsICAgICAgICIg
I3NoaWZ0ICIgICAgICAgIFxuXHQiCiAKICNkZWZpbmUgTU1JX1NMTChyZWcxLCByZWcyLCBzaGlm
dCkgXAogICAiZHNsbCAgICAgICAgIiAjcmVnMSAiLCAgICAgICAiICNyZWcyICIsICAgICAgICIg
I3NoaWZ0ICIgICAgICAgIFxuXHQiCkBAIC02Myw3ICs2Myw3IEBACiAgICJsdyAgICAgICAgICAi
ICNyZWcgIiwgICAgICAgICIgI2JpYXMgIigiICNhZGRyICIpICAgICAgICAgICAgICAgXG5cdCIK
IAogI2RlZmluZSBNTUlfU1JMKHJlZzEsIHJlZzIsIHNoaWZ0KSBcCi0gICJzcmwgICAgICAgICAi
ICNyZWcxICIsICAgICAgICIgI3JlZzIgIiwgICAgICAgIiAjc2hpZnQgIiAgICAgICAgXG5cdCIK
KyAgInNzcmx3ICAgICAgICIgI3JlZzEgIiwgICAgICAgIiAjcmVnMiAiLCAgICAgICAiICNzaGlm
dCAiICAgICAgICBcblx0IgogCiAjZGVmaW5lIE1NSV9TTEwocmVnMSwgcmVnMiwgc2hpZnQpIFwK
ICAgInNsbCAgICAgICAgICIgI3JlZzEgIiwgICAgICAgIiAjcmVnMiAiLCAgICAgICAiICNzaGlm
dCAiICAgICAgICBcblx0IgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvZW1tc19t
bXguYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvZW1tc19tbXguYXNtCmluZGV4IDlmMzM1OTBh
Mjg1YTI4NjRmZmQzYzZhNTRmMzQwZjEzOTZjNmM3ZTAuLmIzMWIyNWViZGVkYTRmMTAwMTg4N2Zi
ZmY1ZGU1MTZkYzUxY2I2N2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL2VtbXNf
bW14LmFzbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9lbW1zX21teC5hc20KQEAgLTEyLDcg
KzEyLDcgQEAKICVpbmNsdWRlICJ2cHhfcG9ydHMveDg2X2FiaV9zdXBwb3J0LmFzbSIKIAogc2Vj
dGlvbiAudGV4dAotZ2xvYmFsIHN5bSh2cHhfY2xlYXJfc3lzdGVtX3N0YXRlKSBQUklWQVRFCitn
bG9iYWxzeW0odnB4X2NsZWFyX3N5c3RlbV9zdGF0ZSkKIHN5bSh2cHhfY2xlYXJfc3lzdGVtX3N0
YXRlKToKICAgICBlbW1zCiAgICAgcmV0CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0
cy9mbG9hdF9jb250cm9sX3dvcmQuYXNtIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvZmxvYXRfY29u
dHJvbF93b3JkLmFzbQppbmRleCAyNTZkYWUwODQ0Nzk4OWQxOWJjY2Q3NzViNTZjNmRiNmQ4ZDNj
OGZjLi5iYjc1YjdhMzFmNTkwZDkyZjE0NDlkM2U0MzljYTdhZjMwNjk5YjNiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9z
b3VyY2UvbGlidnB4L3ZweF9wb3J0cy9mbG9hdF9jb250cm9sX3dvcmQuYXNtCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4X3BvcnRzL2Zsb2F0X2NvbnRyb2xfd29yZC5hc20KQEAgLTE0LDcgKzE0LDcgQEAK
IHNlY3Rpb24gLnRleHQKIAogJWlmIExJQlZQWF9ZQVNNX1dJTjY0Ci1nbG9iYWwgc3ltKHZweF93
aW54NjRfZmxkY3cpIFBSSVZBVEUKK2dsb2JhbHN5bSh2cHhfd2lueDY0X2ZsZGN3KQogc3ltKHZw
eF93aW54NjRfZmxkY3cpOgogICAgIHN1YiAgIHJzcCwgOAogICAgIG1vdiAgIFtyc3BdLCByY3gg
OyB3aW4geDY0IHNwZWNpZmljCkBAIC0yMyw3ICsyMyw3IEBAIHN5bSh2cHhfd2lueDY0X2ZsZGN3
KToKICAgICByZXQKIAogCi1nbG9iYWwgc3ltKHZweF93aW54NjRfZnN0Y3cpIFBSSVZBVEUKK2ds
b2JhbHN5bSh2cHhfd2lueDY0X2ZzdGN3KQogc3ltKHZweF93aW54NjRfZnN0Y3cpOgogICAgIHN1
YiAgIHJzcCwgOAogICAgIGZzdGN3IFtyc3BdCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9w
b3J0cy9taXBzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9taXBzLmgKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmRj
NzUyNWY3YmU0Yzg4ZDU0YzY2MWU2ZGY4ZGE0Y2Q1NmQ4MzI5YQotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3BvcnRzL21pcHMuaApAQCAtMCwwICsxLDI3IEBACisvKgorICogIENv
cHlyaWdodCAoYykgMjAyMCBUaGUgV2ViTSBwcm9qZWN0IGF1dGhvcnMuIEFsbCBSaWdodHMgUmVz
ZXJ2ZWQuCisgKgorICogIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEg
QlNELXN0eWxlIGxpY2Vuc2UKKyAqICB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBm
aWxlIGluIHRoZSByb290IG9mIHRoZSBzb3VyY2UKKyAqICB0cmVlLiBBbiBhZGRpdGlvbmFsIGlu
dGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHMgZ3JhbnQgY2FuIGJlIGZvdW5kCisgKiAgaW4gdGhl
IGZpbGUgUEFURU5UUy4gIEFsbCBjb250cmlidXRpbmcgcHJvamVjdCBhdXRob3JzIG1heQorICog
IGJlIGZvdW5kIGluIHRoZSBBVVRIT1JTIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHNvdXJjZSB0
cmVlLgorICovCisKKyNpZm5kZWYgVlBYX1BPUlRTX01JUFNfSF8KKyNkZWZpbmUgVlBYX1BPUlRT
X01JUFNfSF8KKworI2lmZGVmIF9fY3BsdXNwbHVzCitleHRlcm4gIkMiIHsKKyNlbmRpZgorCisj
ZGVmaW5lIEhBU19NTUkgMHgwMQorI2RlZmluZSBIQVNfTVNBIDB4MDIKKworaW50IG1pcHNfY3B1
X2NhcHModm9pZCk7CisKKyNpZmRlZiBfX2NwbHVzcGx1cworfSAgLy8gZXh0ZXJuICJDIgorI2Vu
ZGlmCisKKyNlbmRpZiAgLy8gVlBYX1BPUlRTX01JUFNfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2
cHgvdnB4X3BvcnRzL21pcHNfY3B1ZGV0ZWN0LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9taXBz
X2NwdWRldGVjdC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmUwZWNhMmQ0OGRlYjc0YjAzZTE2ODZmMDI1NWE3NTE4
ODNjZmRiYWEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy9taXBzX2Nw
dWRldGVjdC5jCkBAIC0wLDAgKzEsNTcgQEAKKy8qCisgKiAgQ29weXJpZ2h0IChjKSAyMDIwIFRo
ZSBXZWJNIHByb2plY3QgYXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyAqCisgKiAgVXNl
IG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZQor
ICogIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2Yg
dGhlIHNvdXJjZQorICogIHRyZWUuIEFuIGFkZGl0aW9uYWwgaW50ZWxsZWN0dWFsIHByb3BlcnR5
IHJpZ2h0cyBncmFudCBjYW4gYmUgZm91bmQKKyAqICBpbiB0aGUgZmlsZSBQQVRFTlRTLiAgQWxs
IGNvbnRyaWJ1dGluZyBwcm9qZWN0IGF1dGhvcnMgbWF5CisgKiAgYmUgZm91bmQgaW4gdGhlIEFV
VEhPUlMgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNlIHRyZWUuCisgKi8KKyNpbmNsdWRl
IDxzdGRpby5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgIi4vdnB4X2NvbmZpZy5o
IgorI2luY2x1ZGUgInZweF9wb3J0cy9taXBzLmgiCisKKyNpZiBDT05GSUdfUlVOVElNRV9DUFVf
REVURUNUCisjaWYgZGVmaW5lZChfX21pcHNfXykgJiYgZGVmaW5lZChfX2xpbnV4X18pCitpbnQg
bWlwc19jcHVfY2Fwcyh2b2lkKSB7CisgIGNoYXIgY3B1aW5mb19saW5lWzUxMl07CisgIGludCBm
bGFnID0gMHgwOworICBGSUxFICpmID0gZm9wZW4oIi9wcm9jL2NwdWluZm8iLCAiciIpOworICBp
ZiAoIWYpIHsKKyAgICAvLyBBc3N1bWUgbm90aGluZyBpZiAvcHJvYy9jcHVpbmZvIGlzIHVuYXZh
aWxhYmxlLgorICAgIC8vIFRoaXMgd2lsbCBvY2N1ciBmb3IgQ2hyb21lIHNhbmRib3ggZm9yIFBl
cHBlciBvciBSZW5kZXIgcHJvY2Vzcy4KKyAgICByZXR1cm4gMDsKKyAgfQorICB3aGlsZSAoZmdl
dHMoY3B1aW5mb19saW5lLCBzaXplb2YoY3B1aW5mb19saW5lKSAtIDEsIGYpKSB7CisgICAgaWYg
KG1lbWNtcChjcHVpbmZvX2xpbmUsICJjcHUgbW9kZWwiLCA5KSA9PSAwKSB7CisgICAgICAvLyBX
b3JrYXJvdW5kIGVhcmx5IGtlcm5lbCB3aXRob3V0IG1taSBpbiBBU0VzIGxpbmUuCisgICAgICBp
ZiAoc3Ryc3RyKGNwdWluZm9fbGluZSwgIkxvb25nc29uLTMiKSkgeworICAgICAgICBmbGFnIHw9
IEhBU19NTUk7CisgICAgICB9IGVsc2UgaWYgKHN0cnN0cihjcHVpbmZvX2xpbmUsICJMb29uZ3Nv
bi0ySyIpKSB7CisgICAgICAgIGZsYWcgfD0gSEFTX01NSSB8IEhBU19NU0E7CisgICAgICB9Cisg
ICAgfQorICAgIGlmIChtZW1jbXAoY3B1aW5mb19saW5lLCAiQVNFcyBpbXBsZW1lbnRlZCIsIDE2
KSA9PSAwKSB7CisgICAgICBpZiAoc3Ryc3RyKGNwdWluZm9fbGluZSwgImxvb25nc29uLW1taSIp
ICYmCisgICAgICAgICAgc3Ryc3RyKGNwdWluZm9fbGluZSwgImxvb25nc29uLWV4dCIpKSB7Cisg
ICAgICAgIGZsYWcgfD0gSEFTX01NSTsKKyAgICAgIH0KKyAgICAgIGlmIChzdHJzdHIoY3B1aW5m
b19saW5lLCAibXNhIikpIHsKKyAgICAgICAgZmxhZyB8PSBIQVNfTVNBOworICAgICAgfQorICAg
ICAgLy8gQVNFcyBpcyB0aGUgbGFzdCBsaW5lLCBzbyB3ZSBjYW4gYnJlYWsgaGVyZS4KKyAgICAg
IGJyZWFrOworICAgIH0KKyAgfQorICBmY2xvc2UoZik7CisgIHJldHVybiBmbGFnOworfQorI2Vs
c2UgLyogZW5kIF9fbWlwc19fICYmIF9fbGludXhfXyAqLworI2Vycm9yIFwKKyAgICAiLS1lbmFi
bGUtcnVudGltZS1jcHUtZGV0ZWN0IHNlbGVjdGVkLCBidXQgbm8gQ1BVIGRldGVjdGlvbiBtZXRo
b2QgIiBcCisiYXZhaWxhYmxlIGZvciB5b3VyIHBsYXRmb3JtLiBSZWNvbmZpZ3VyZSB3aXRoIC0t
ZGlzYWJsZS1ydW50aW1lLWNwdS1kZXRlY3QuIgorI2VuZGlmCisjZWxzZSAvKiBlbmQgQ09ORklH
X1JVTlRJTUVfQ1BVX0RFVEVDVCAqLworaW50IG1pcHNfY3B1X2NhcHModm9pZCkgeyByZXR1cm4g
MDsgfQorI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfcG9ydHMu
bWsgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy92cHhfcG9ydHMubWsKaW5kZXggMjMzMTc3MzY5M2Y0
YzE2N2EyZjhhM2IwODk1MjAzMDE5MTVhN2I5YS4uZTUwMDFiZTQ5Njc0ZGZjNjRhZjA2ZjJkZWFk
MGVkMjIzZjI3MjZhZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMvdnB4X3BvcnRz
Lm1rCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4X3BvcnRzL3ZweF9wb3J0cy5tawpAQCAtNDIsNiArNDIs
OSBAQCBQT1JUU19TUkNTLSQoVlBYX0FSQ0hfQVJNKSArPSBhcm0uaAogUE9SVFNfU1JDUy0kKFZQ
WF9BUkNIX1BQQykgKz0gcHBjX2NwdWRldGVjdC5jCiBQT1JUU19TUkNTLSQoVlBYX0FSQ0hfUFBD
KSArPSBwcGMuaAogCitQT1JUU19TUkNTLSQoVlBYX0FSQ0hfTUlQUykgKz0gbWlwc19jcHVkZXRl
Y3QuYworUE9SVFNfU1JDUy0kKFZQWF9BUkNIX01JUFMpICs9IG1pcHMuaAorCiBpZmVxICgkKFZQ
WF9BUkNIX01JUFMpLCB5ZXMpCiBQT1JUU19TUkNTLXllcyArPSBhc21kZWZzX21taS5oCiBlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMveDg2X2FiaV9zdXBwb3J0LmFzbSBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3Nv
dXJjZS9saWJ2cHgvdnB4X3BvcnRzL3g4Nl9hYmlfc3VwcG9ydC5hc20KaW5kZXggNzA4ZmExMDFj
NWRkMTYxYmU0YjUwMDliYTZjNzRhZGNmMTA3MGM4MC4uNmIyZDZiOTY4NDZlZjU4ZDY0MjVlYzRj
NmYzZTkxYzZkMThlYzI1NCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhfcG9ydHMveDg2X2Fi
aV9zdXBwb3J0LmFzbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweF9wb3J0cy94ODZfYWJpX3N1cHBvcnQu
YXNtCkBAIC04OSw0OSArODksNzAgQEAKICVkZWZpbmUgTElCVlBYX1lBU01fV0lONjQgMAogJWVu
ZGlmCiAKKzsgRGVjbGFyZSBncm91cHMgb2YgcGxhdGZvcm1zCislaWZpZG4gICBfX09VVFBVVF9G
T1JNQVRfXyxlbGYzMgorICAlZGVmaW5lIExJQlZQWF9FTEYgMQorJWVsaWZpZG4gICBfX09VVFBV
VF9GT1JNQVRfXyxlbGZ4MzIKKyAgJWRlZmluZSBMSUJWUFhfRUxGIDEKKyVlbGlmaWRuICAgX19P
VVRQVVRfRk9STUFUX18sZWxmNjQKKyAgJWRlZmluZSBMSUJWUFhfRUxGIDEKKyVlbHNlCisgICVk
ZWZpbmUgTElCVlBYX0VMRiAwCislZW5kaWYKKworJWlmaWRuIF9fT1VUUFVUX0ZPUk1BVF9fLG1h
Y2hvMzIKKyAgJWRlZmluZSBMSUJWUFhfTUFDSE8gMQorJWVsaWZpZG4gX19PVVRQVVRfRk9STUFU
X18sbWFjaG82NAorICAlZGVmaW5lIExJQlZQWF9NQUNITyAxCislZWxzZQorICAlZGVmaW5lIExJ
QlZQWF9NQUNITyAwCislZW5kaWYKKwogOyBzeW0oKQogOyBSZXR1cm4gdGhlIHByb3BlciBzeW1i
b2wgbmFtZSBmb3IgdGhlIHRhcmdldCBBQkkuCiA7CiA7IENlcnRhaW4gQUJJcywgbm90YWJseSBN
UyBDT0ZGIGFuZCBEYXJ3aW4gTUFDSC1PLCByZXF1aXJlIHRoYXQgc3ltYm9scwogOyB3aXRoIEMg
bGlua2FnZSBiZSBwcmVmaXhlZCB3aXRoIGFuIHVuZGVyc2NvcmUuCiA7Ci0laWZpZG4gICBfX09V
VFBVVF9GT1JNQVRfXyxlbGYzMgotJWRlZmluZSBzeW0oeCkgeAotJWVsaWZpZG4gX19PVVRQVVRf
Rk9STUFUX18sZWxmNjQKLSVkZWZpbmUgc3ltKHgpIHgKLSVlbGlmaWRuIF9fT1VUUFVUX0ZPUk1B
VF9fLGVsZngzMgotJWRlZmluZSBzeW0oeCkgeAotJWVsaWYgTElCVlBYX1lBU01fV0lONjQKLSVk
ZWZpbmUgc3ltKHgpIHgKKyVpZiBMSUJWUFhfRUxGIHx8IExJQlZQWF9ZQVNNX1dJTjY0CisgICVk
ZWZpbmUgc3ltKHgpIHgKICVlbHNlCi0lZGVmaW5lIHN5bSh4KSBfICUrIHgKKyAgOyBNYWNoLU8g
LyBDT0ZGCisgICVkZWZpbmUgc3ltKHgpIF8gJSsgeAogJWVuZGlmCiAKLTsgIFBSSVZBVEUKLTsg
IE1hY3JvIGZvciB0aGUgYXR0cmlidXRlIHRvIGhpZGUgYSBnbG9iYWwgc3ltYm9sIGZvciB0aGUg
dGFyZ2V0IEFCSS4KLTsgIFRoaXMgaXMgb25seSBhY3RpdmUgaWYgQ0hST01JVU0gaXMgZGVmaW5l
ZC4KKzsgZ2xvYmFsc3ltKCkKKzsgUmV0dXJuIGEgZ2xvYmFsIGRlY2xhcmF0aW9uIHdpdGggdGhl
IHByb3BlciBkZWNvcmF0aW9uIGZvciB0aGUgdGFyZ2V0IEFCSS4KIDsKLTsgIENocm9taXVtIGRv
ZXNuJ3QgbGlrZSBleHBvcnRlZCBnbG9iYWwgc3ltYm9scyBkdWUgdG8gc3ltYm9sIGNsYXNoaW5n
IHdpdGgKLTsgIHBsdWdpbnMgYW1vbmcgb3RoZXIgdGhpbmdzLgorOyBXaGVuIENIUk9NSVVNIGlz
IGRlZmluZWQsIGluY2x1ZGUgYXR0cmlidXRlcyB0byBoaWRlIHRoZSBzeW1ib2wgZnJvbSB0aGUK
KzsgZ2xvYmFsIG5hbWVzcGFjZS4KIDsKLTsgIFJlcXVpcmVzIENocm9taXVtJ3MgcGF0Y2hlZCBj
b3B5IG9mIHlhc206Ci07ICAgIGh0dHA6Ly9zcmMuY2hyb21pdW0ub3JnL3ZpZXd2Yy9jaHJvbWU/
dmlldz1yZXYmcmV2aXNpb249NzM3NjEKLTsgICAgaHR0cDovL3d3dy50b3J0YWxsLm5ldC9wcm9q
ZWN0cy95YXNtL3RpY2tldC8yMzYKKzsgQ2hyb21pdW0gZG9lc24ndCBsaWtlIGV4cG9ydGVkIGds
b2JhbCBzeW1ib2xzIGR1ZSB0byBzeW1ib2wgY2xhc2hpbmcgd2l0aAorOyBwbHVnaW5zIGFtb25n
IG90aGVyIHRoaW5ncy4KKzsKKzsgUmVxdWlyZXMgQ2hyb21pdW0ncyBwYXRjaGVkIGNvcHkgb2Yg
eWFzbToKKzsgICBodHRwOi8vc3JjLmNocm9taXVtLm9yZy92aWV3dmMvY2hyb21lP3ZpZXc9cmV2
JnJldmlzaW9uPTczNzYxCis7ICAgaHR0cDovL3d3dy50b3J0YWxsLm5ldC9wcm9qZWN0cy95YXNt
L3RpY2tldC8yMzYKKzsgb3IgbmFzbSA+IDIuMTQuCiA7CiAlaWZkZWYgQ0hST01JVU0KLSAgJWlm
aWRuICAgX19PVVRQVVRfRk9STUFUX18sZWxmMzIKLSAgICAlZGVmaW5lIFBSSVZBVEUgOmhpZGRl
bgotICAlZWxpZmlkbiBfX09VVFBVVF9GT1JNQVRfXyxlbGY2NAotICAgICVkZWZpbmUgUFJJVkFU
RSA6aGlkZGVuCi0gICVlbGlmaWRuIF9fT1VUUFVUX0ZPUk1BVF9fLGVsZngzMgotICAgICVkZWZp
bmUgUFJJVkFURSA6aGlkZGVuCi0gICVlbGlmIExJQlZQWF9ZQVNNX1dJTjY0Ci0gICAgJWRlZmlu
ZSBQUklWQVRFCisgICVpZmRlZiBfX05BU01fVkVSX18KKyAgICAlaWYgX19OQVNNX1ZFUlNJT05f
SURfXyA8IDB4MDIwZTAwMDAgOyAyLjE0CisgICAgICA7IG5hc20gPCAyLjE0IGRvZXMgbm90IHN1
cHBvcnQgOnByaXZhdGVfZXh0ZXJuIGRpcmVjdGl2ZQorICAgICAgJWZhdGFsIE11c3QgdXNlIG5h
c20gMi4xNCBvciBuZXdlcgorICAgICVlbmRpZgorICAlZW5kaWYKKworICAlaWYgTElCVlBYX0VM
RgorICAgICVkZWZpbmUgZ2xvYmFsc3ltKHgpIGdsb2JhbCBzeW0oeCkgJSsgOmZ1bmN0aW9uIGhp
ZGRlbgorICAlZWxpZiBMSUJWUFhfTUFDSE8KKyAgICAlZGVmaW5lIGdsb2JhbHN5bSh4KSBnbG9i
YWwgc3ltKHgpICUrIDpwcml2YXRlX2V4dGVybgogICAlZWxzZQotICAgICVkZWZpbmUgUFJJVkFU
RSA6cHJpdmF0ZV9leHRlcm4KKyAgICA7IENPRkYgLyBQRTMyKworICAgICVkZWZpbmUgZ2xvYmFs
c3ltKHgpIGdsb2JhbCBzeW0oeCkKICAgJWVuZGlmCiAlZWxzZQotICAlZGVmaW5lIFBSSVZBVEUK
KyAgJWRlZmluZSBnbG9iYWxzeW0oeCkgZ2xvYmFsIHN5bSh4KQogJWVuZGlmCiAKIDsgYXJnKCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4ZW5jLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweGVuYy5jCmlu
ZGV4IDUwYzM2YmVkZDU0MTA1NzNlMTdkZmQ2ZmZlOTE1NDBmNWFlYjE3NDcuLjUwNDJlNjg4Yzk2
MDE3YTJhZDZkMzFlMzE3ZGZiOGY3OTNjN2FhMTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvdnB4
ZW5jLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhlbmMuYwpAQCAtOTUsNiArOTUsOCBAQCBzdGF0aWMg
Y29uc3QgYXJnX2RlZl90IGRlYnVnbW9kZSA9CiAgICAgQVJHX0RFRigiRCIsICJkZWJ1ZyIsIDAs
ICJEZWJ1ZyBtb2RlIChtYWtlcyBvdXRwdXQgZGV0ZXJtaW5pc3RpYykiKTsKIHN0YXRpYyBjb25z
dCBhcmdfZGVmX3Qgb3V0cHV0ZmlsZSA9CiAgICAgQVJHX0RFRigibyIsICJvdXRwdXQiLCAxLCAi
T3V0cHV0IGZpbGVuYW1lIik7CitzdGF0aWMgY29uc3QgYXJnX2RlZl90IHVzZV9udjEyID0KKyAg
ICBBUkdfREVGKE5VTEwsICJudjEyIiwgMCwgIklucHV0IGZpbGUgaXMgTlYxMiAiKTsKIHN0YXRp
YyBjb25zdCBhcmdfZGVmX3QgdXNlX3l2MTIgPQogICAgIEFSR19ERUYoTlVMTCwgInl2MTIiLCAw
LCAiSW5wdXQgZmlsZSBpcyBZVjEyICIpOwogc3RhdGljIGNvbnN0IGFyZ19kZWZfdCB1c2VfaTQy
MCA9CkBAIC0yMjAsNyArMjIyLDggQEAgc3RhdGljIGNvbnN0IGFyZ19kZWZfdCBlcnJvcl9yZXNp
bGllbnQgPQogc3RhdGljIGNvbnN0IGFyZ19kZWZfdCBsYWdfaW5fZnJhbWVzID0KICAgICBBUkdf
REVGKE5VTEwsICJsYWctaW4tZnJhbWVzIiwgMSwgIk1heCBudW1iZXIgb2YgZnJhbWVzIHRvIGxh
ZyIpOwogCi1zdGF0aWMgY29uc3QgYXJnX2RlZl90ICpnbG9iYWxfYXJnc1tdID0geyAmdXNlX3l2
MTIsCitzdGF0aWMgY29uc3QgYXJnX2RlZl90ICpnbG9iYWxfYXJnc1tdID0geyAmdXNlX252MTIs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdXNlX3l2MTIsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdXNlX2k0MjAsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdXNlX2k0MjIsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdXNlX2k0NDQsCkBAIC00NjIsNiAr
NDY1LDEzIEBAIHN0YXRpYyBjb25zdCBhcmdfZGVmX3QgdGFyZ2V0X2xldmVsID0gQVJHX0RFRigK
IHN0YXRpYyBjb25zdCBhcmdfZGVmX3Qgcm93X210ID0KICAgICBBUkdfREVGKE5VTEwsICJyb3ct
bXQiLCAxLAogICAgICAgICAgICAgIkVuYWJsZSByb3cgYmFzZWQgbm9uLWRldGVybWluaXN0aWMg
bXVsdGktdGhyZWFkaW5nIGluIFZQOSIpOworCitzdGF0aWMgY29uc3QgYXJnX2RlZl90IGRpc2Fi
bGVfbG9vcGZpbHRlciA9CisgICAgQVJHX0RFRihOVUxMLCAiZGlzYWJsZS1sb29wZmlsdGVyIiwg
MSwKKyAgICAgICAgICAgICJDb250cm9sIExvb3BmaWx0ZXIgaW4gVlA5XG4iCisgICAgICAgICAg
ICAiMDogTG9vcGZpbHRlciBvbiBmb3IgYWxsIGZyYW1lcyAoZGVmYXVsdClcbiIKKyAgICAgICAg
ICAgICIxOiBMb29wZmlsdGVyIG9mZiBmb3Igbm9uIHJlZmVyZW5jZSBmcmFtZXNcbiIKKyAgICAg
ICAgICAgICIyOiBMb29wZmlsdGVyIG9mZiBmb3IgYWxsIGZyYW1lcyIpOwogI2VuZGlmCiAKICNp
ZiBDT05GSUdfVlA5X0VOQ09ERVIKQEAgLTQ5Miw2ICs1MDIsMTAgQEAgc3RhdGljIGNvbnN0IGFy
Z19kZWZfdCAqdnA5X2FyZ3NbXSA9IHsgJmNwdV91c2VkX3ZwOSwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICZtYXhfZ2ZfaW50ZXJ2YWwsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAmdGFyZ2V0X2xldmVsLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgJnJvd19tdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICZkaXNhYmxlX2xvb3BmaWx0ZXIsCisvLyBOT1RFOiBUaGUgZW50cmllcyBh
Ym92ZSBoYXZlIGEgY29ycmVzcG9uZGluZyBlbnRyeSBpbiB2cDlfYXJnX2N0cmxfbWFwLiBUaGUK
Ky8vIGVudHJpZXMgYmVsb3cgZG8gbm90IGhhdmUgYSBjb3JyZXNwb25kaW5nIGVudHJ5IGluIHZw
OV9hcmdfY3RybF9tYXAuIFRoZXkKKy8vIG11c3QgYmUgbGlzdGVkIGF0IHRoZSBlbmQgb2YgdnA5
X2FyZ3MuCiAjaWYgQ09ORklHX1ZQOV9ISUdIQklUREVQVEgKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICZiaXRkZXB0aGFyZywKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICZpbmJpdGRlcHRoYXJnLApAQCAtNTI0LDYgKzUzOCw3IEBAIHN0YXRp
YyBjb25zdCBpbnQgdnA5X2FyZ19jdHJsX21hcFtdID0geyBWUDhFX1NFVF9DUFVVU0VELAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQOUVfU0VUX01BWF9HRl9JTlRF
UlZBTCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWUDlFX1NFVF9U
QVJHRVRfTEVWRUwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVlA5
RV9TRVRfUk9XX01ULAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZQ
OUVfU0VUX0RJU0FCTEVfTE9PUEZJTFRFUiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAwIH07CiAjZW5kaWYKIApAQCAtNjk2LDYgKzcxMSw4IEBAIHN0YXRpYyB2b2lk
IHBhcnNlX2dsb2JhbF9jb25maWcoc3RydWN0IFZweEVuY29kZXJDb25maWcgKmdsb2JhbCwgY2hh
ciAqKmFyZ3YpIHsKICAgICAgIGdsb2JhbC0+ZGVhZGxpbmUgPSBWUFhfRExfUkVBTFRJTUU7CiAg
ICAgZWxzZSBpZiAoYXJnX21hdGNoKCZhcmcsICZ1c2VfeXYxMiwgYXJnaSkpCiAgICAgICBnbG9i
YWwtPmNvbG9yX3R5cGUgPSBZVjEyOworICAgIGVsc2UgaWYgKGFyZ19tYXRjaCgmYXJnLCAmdXNl
X252MTIsIGFyZ2kpKQorICAgICAgZ2xvYmFsLT5jb2xvcl90eXBlID0gTlYxMjsKICAgICBlbHNl
IGlmIChhcmdfbWF0Y2goJmFyZywgJnVzZV9pNDIwLCBhcmdpKSkKICAgICAgIGdsb2JhbC0+Y29s
b3JfdHlwZSA9IEk0MjA7CiAgICAgZWxzZSBpZiAoYXJnX21hdGNoKCZhcmcsICZ1c2VfaTQyMiwg
YXJnaSkpCkBAIC0xNjE5LDYgKzE2MzYsNyBAQCBpbnQgbWFpbihpbnQgYXJnYywgY29uc3QgY2hh
ciAqKmFyZ3ZfKSB7CiAgIGludCByZXMgPSAwOwogCiAgIG1lbXNldCgmaW5wdXQsIDAsIHNpemVv
ZihpbnB1dCkpOworICBtZW1zZXQoJnJhdywgMCwgc2l6ZW9mKHJhdykpOwogICBleGVjX25hbWUg
PSBhcmd2X1swXTsKIAogICAvKiBTZXR1cCBkZWZhdWx0IGlucHV0IHN0cmVhbSBzZXR0aW5ncyAq
LwpAQCAtMTY0Miw2ICsxNjYwLDcgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiph
cmd2XykgewogICAgIGNhc2UgSTQ0NDogaW5wdXQuZm10ID0gVlBYX0lNR19GTVRfSTQ0NDsgYnJl
YWs7CiAgICAgY2FzZSBJNDQwOiBpbnB1dC5mbXQgPSBWUFhfSU1HX0ZNVF9JNDQwOyBicmVhazsK
ICAgICBjYXNlIFlWMTI6IGlucHV0LmZtdCA9IFZQWF9JTUdfRk1UX1lWMTI7IGJyZWFrOworICAg
IGNhc2UgTlYxMjogaW5wdXQuZm10ID0gVlBYX0lNR19GTVRfTlYxMjsgYnJlYWs7CiAgIH0KIAog
ICB7CkBAIC0xNzYzLDE0ICsxNzgyLDEwIEBAIGludCBtYWluKGludCBhcmdjLCBjb25zdCBjaGFy
ICoqYXJndl8pIHsKICAgICAgIEZPUkVBQ0hfU1RSRUFNKHNob3dfc3RyZWFtX2NvbmZpZyhzdHJl
YW0sICZnbG9iYWwsICZpbnB1dCkpOwogCiAgICAgaWYgKHBhc3MgPT0gKGdsb2JhbC5wYXNzID8g
Z2xvYmFsLnBhc3MgLSAxIDogMCkpIHsKLSAgICAgIGlmIChpbnB1dC5maWxlX3R5cGUgPT0gRklM
RV9UWVBFX1k0TSkKLSAgICAgICAgLypUaGUgWTRNIHJlYWRlciBkb2VzIGl0cyBvd24gYWxsb2Nh
dGlvbi4KLSAgICAgICAgICBKdXN0IGluaXRpYWxpemUgdGhpcyBoZXJlIHRvIGF2b2lkIHByb2Js
ZW1zIGlmIHdlIG5ldmVyIHJlYWQgYW55Ci0gICAgICAgICAgIGZyYW1lcy4qLwotICAgICAgICBt
ZW1zZXQoJnJhdywgMCwgc2l6ZW9mKHJhdykpOwotICAgICAgZWxzZQorICAgICAgLy8gVGhlIFk0
TSByZWFkZXIgZG9lcyBpdHMgb3duIGFsbG9jYXRpb24uCisgICAgICBpZiAoaW5wdXQuZmlsZV90
eXBlICE9IEZJTEVfVFlQRV9ZNE0pIHsKICAgICAgICAgdnB4X2ltZ19hbGxvYygmcmF3LCBpbnB1
dC5mbXQsIGlucHV0LndpZHRoLCBpbnB1dC5oZWlnaHQsIDMyKTsKLQorICAgICAgfQogICAgICAg
Rk9SRUFDSF9TVFJFQU0oc3RyZWFtLT5yYXRlX2hpc3QgPSBpbml0X3JhdGVfaGlzdG9ncmFtKAog
ICAgICAgICAgICAgICAgICAgICAgICAgICZzdHJlYW0tPmNvbmZpZy5jZmcsICZnbG9iYWwuZnJh
bWVyYXRlKSk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC92cHhlbmMuaCBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9s
aWJ2cHgvdnB4ZW5jLmgKaW5kZXggYjc4MGFlZGNhNjk5ZmFhN2RkYTdlZmRhY2VmMzcwNzVmMTZi
MmU0Ni4uYmU1NDg0MGY3ZGQyNjZkMDFlNDliZDFhYWI5MmEyZDUzYjcyYzcxYiAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgv
c291cmNlL2xpYnZweC92cHhlbmMuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3ZweGVuYy5oCkBAIC0yOCw2
ICsyOCw3IEBAIHR5cGVkZWYgZW51bSB7CiAgIEk0NDQsICAvLyA0OjQ6NCA4KyBiaXQtZGVwdGgK
ICAgSTQ0MCwgIC8vIDQ6NDowIDgrIGJpdC1kZXB0aAogICBZVjEyLCAgLy8gNDoyOjAgd2l0aCB1
diBmbGlwcGVkLCBvbmx5IDgtYml0IGRlcHRoCisgIE5WMTIsICAvLyA0OjI6MCB3aXRoIHV2IGlu
dGVybGVhdmVkCiB9IENvbG9ySW5wdXRUeXBlOwogCiBzdHJ1Y3QgVnB4SW50ZXJmYWNlOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJ2cHgvc291cmNlL2xpYnZweC93ZWJtZGVjLmNjIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC93ZWJtZGVjLmNjCmlu
ZGV4IGQ2MDkwNzVhOTMyNmJkYmNjMzJjZmE0ZjI3NWI4MmEyNGRkZWIxYmIuLjY4YzZmNDc4MmQ3
ZDllYzE5NTQwZDBhMmYzMDQ0NmZkOGE1MmEwOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvd2Vi
bWRlYy5jYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3dlYm1kZWMuY2MKQEAgLTE5LDI1ICsxOSwyNSBAQAog
bmFtZXNwYWNlIHsKIAogdm9pZCByZXNldChzdHJ1Y3QgV2VibUlucHV0Q29udGV4dCAqY29uc3Qg
d2VibV9jdHgpIHsKLSAgaWYgKHdlYm1fY3R4LT5yZWFkZXIgIT0gTlVMTCkgeworICBpZiAod2Vi
bV9jdHgtPnJlYWRlciAhPSBudWxscHRyKSB7CiAgICAgbWt2cGFyc2VyOjpNa3ZSZWFkZXIgKmNv
bnN0IHJlYWRlciA9CiAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8bWt2cGFyc2VyOjpNa3ZSZWFk
ZXIgKj4od2VibV9jdHgtPnJlYWRlcik7CiAgICAgZGVsZXRlIHJlYWRlcjsKICAgfQotICBpZiAo
d2VibV9jdHgtPnNlZ21lbnQgIT0gTlVMTCkgeworICBpZiAod2VibV9jdHgtPnNlZ21lbnQgIT0g
bnVsbHB0cikgewogICAgIG1rdnBhcnNlcjo6U2VnbWVudCAqY29uc3Qgc2VnbWVudCA9CiAgICAg
ICAgIHJlaW50ZXJwcmV0X2Nhc3Q8bWt2cGFyc2VyOjpTZWdtZW50ICo+KHdlYm1fY3R4LT5zZWdt
ZW50KTsKICAgICBkZWxldGUgc2VnbWVudDsKICAgfQotICBpZiAod2VibV9jdHgtPmJ1ZmZlciAh
PSBOVUxMKSB7CisgIGlmICh3ZWJtX2N0eC0+YnVmZmVyICE9IG51bGxwdHIpIHsKICAgICBkZWxl
dGVbXSB3ZWJtX2N0eC0+YnVmZmVyOwogICB9Ci0gIHdlYm1fY3R4LT5yZWFkZXIgPSBOVUxMOwot
ICB3ZWJtX2N0eC0+c2VnbWVudCA9IE5VTEw7Ci0gIHdlYm1fY3R4LT5idWZmZXIgPSBOVUxMOwot
ICB3ZWJtX2N0eC0+Y2x1c3RlciA9IE5VTEw7Ci0gIHdlYm1fY3R4LT5ibG9ja19lbnRyeSA9IE5V
TEw7Ci0gIHdlYm1fY3R4LT5ibG9jayA9IE5VTEw7CisgIHdlYm1fY3R4LT5yZWFkZXIgPSBudWxs
cHRyOworICB3ZWJtX2N0eC0+c2VnbWVudCA9IG51bGxwdHI7CisgIHdlYm1fY3R4LT5idWZmZXIg
PSBudWxscHRyOworICB3ZWJtX2N0eC0+Y2x1c3RlciA9IG51bGxwdHI7CisgIHdlYm1fY3R4LT5i
bG9ja19lbnRyeSA9IG51bGxwdHI7CisgIHdlYm1fY3R4LT5ibG9jayA9IG51bGxwdHI7CiAgIHdl
Ym1fY3R4LT5ibG9ja19mcmFtZV9pbmRleCA9IDA7CiAgIHdlYm1fY3R4LT52aWRlb190cmFja19p
bmRleCA9IDA7CiAgIHdlYm1fY3R4LT50aW1lc3RhbXBfbnMgPSAwOwpAQCAtODQsNyArODQsNyBA
QCBpbnQgZmlsZV9pc193ZWJtKHN0cnVjdCBXZWJtSW5wdXRDb250ZXh0ICp3ZWJtX2N0eCwKICAg
fQogCiAgIGNvbnN0IG1rdnBhcnNlcjo6VHJhY2tzICpjb25zdCB0cmFja3MgPSBzZWdtZW50LT5H
ZXRUcmFja3MoKTsKLSAgY29uc3QgbWt2cGFyc2VyOjpWaWRlb1RyYWNrICp2aWRlb190cmFjayA9
IE5VTEw7CisgIGNvbnN0IG1rdnBhcnNlcjo6VmlkZW9UcmFjayAqdmlkZW9fdHJhY2sgPSBudWxs
cHRyOwogICBmb3IgKHVuc2lnbmVkIGxvbmcgaSA9IDA7IGkgPCB0cmFja3MtPkdldFRyYWNrc0Nv
dW50KCk7ICsraSkgewogICAgIGNvbnN0IG1rdnBhcnNlcjo6VHJhY2sgKmNvbnN0IHRyYWNrID0g
dHJhY2tzLT5HZXRUcmFja0J5SW5kZXgoaSk7CiAgICAgaWYgKHRyYWNrLT5HZXRUeXBlKCkgPT0g
bWt2cGFyc2VyOjpUcmFjazo6a1ZpZGVvKSB7CkBAIC05NCw3ICs5NCw3IEBAIGludCBmaWxlX2lz
X3dlYm0oc3RydWN0IFdlYm1JbnB1dENvbnRleHQgKndlYm1fY3R4LAogICAgIH0KICAgfQogCi0g
IGlmICh2aWRlb190cmFjayA9PSBOVUxMIHx8IHZpZGVvX3RyYWNrLT5HZXRDb2RlY0lkKCkgPT0g
TlVMTCkgeworICBpZiAodmlkZW9fdHJhY2sgPT0gbnVsbHB0ciB8fCB2aWRlb190cmFjay0+R2V0
Q29kZWNJZCgpID09IG51bGxwdHIpIHsKICAgICByZXdpbmRfYW5kX3Jlc2V0KHdlYm1fY3R4LCB2
cHhfY3R4KTsKICAgICByZXR1cm4gMDsKICAgfQpAQCAtMTM3LDEyICsxMzcsMTIgQEAgaW50IHdl
Ym1fcmVhZF9mcmFtZShzdHJ1Y3QgV2VibUlucHV0Q29udGV4dCAqd2VibV9jdHgsIHVpbnQ4X3Qg
KipidWZmZXIsCiAgIGRvIHsKICAgICBsb25nIHN0YXR1cyA9IDA7CiAgICAgYm9vbCBnZXRfbmV3
X2Jsb2NrID0gZmFsc2U7Ci0gICAgaWYgKGJsb2NrX2VudHJ5ID09IE5VTEwgJiYgIWJsb2NrX2Vu
dHJ5X2VvcykgeworICAgIGlmIChibG9ja19lbnRyeSA9PSBudWxscHRyICYmICFibG9ja19lbnRy
eV9lb3MpIHsKICAgICAgIHN0YXR1cyA9IGNsdXN0ZXItPkdldEZpcnN0KGJsb2NrX2VudHJ5KTsK
ICAgICAgIGdldF9uZXdfYmxvY2sgPSB0cnVlOwogICAgIH0gZWxzZSBpZiAoYmxvY2tfZW50cnlf
ZW9zIHx8IGJsb2NrX2VudHJ5LT5FT1MoKSkgewogICAgICAgY2x1c3RlciA9IHNlZ21lbnQtPkdl
dE5leHQoY2x1c3Rlcik7Ci0gICAgICBpZiAoY2x1c3RlciA9PSBOVUxMIHx8IGNsdXN0ZXItPkVP
UygpKSB7CisgICAgICBpZiAoY2x1c3RlciA9PSBudWxscHRyIHx8IGNsdXN0ZXItPkVPUygpKSB7
CiAgICAgICAgICpidWZmZXJfc2l6ZSA9IDA7CiAgICAgICAgIHdlYm1fY3R4LT5yZWFjaGVkX2Vv
cyA9IDE7CiAgICAgICAgIHJldHVybiAxOwpAQCAtMTUwLDIyICsxNTAsMjIgQEAgaW50IHdlYm1f
cmVhZF9mcmFtZShzdHJ1Y3QgV2VibUlucHV0Q29udGV4dCAqd2VibV9jdHgsIHVpbnQ4X3QgKipi
dWZmZXIsCiAgICAgICBzdGF0dXMgPSBjbHVzdGVyLT5HZXRGaXJzdChibG9ja19lbnRyeSk7CiAg
ICAgICBibG9ja19lbnRyeV9lb3MgPSBmYWxzZTsKICAgICAgIGdldF9uZXdfYmxvY2sgPSB0cnVl
OwotICAgIH0gZWxzZSBpZiAoYmxvY2sgPT0gTlVMTCB8fAorICAgIH0gZWxzZSBpZiAoYmxvY2sg
PT0gbnVsbHB0ciB8fAogICAgICAgICAgICAgICAgd2VibV9jdHgtPmJsb2NrX2ZyYW1lX2luZGV4
ID09IGJsb2NrLT5HZXRGcmFtZUNvdW50KCkgfHwKICAgICAgICAgICAgICAgIGJsb2NrLT5HZXRU
cmFja051bWJlcigpICE9IHdlYm1fY3R4LT52aWRlb190cmFja19pbmRleCkgewogICAgICAgc3Rh
dHVzID0gY2x1c3Rlci0+R2V0TmV4dChibG9ja19lbnRyeSwgYmxvY2tfZW50cnkpOwotICAgICAg
aWYgKGJsb2NrX2VudHJ5ID09IE5VTEwgfHwgYmxvY2tfZW50cnktPkVPUygpKSB7CisgICAgICBp
ZiAoYmxvY2tfZW50cnkgPT0gbnVsbHB0ciB8fCBibG9ja19lbnRyeS0+RU9TKCkpIHsKICAgICAg
ICAgYmxvY2tfZW50cnlfZW9zID0gdHJ1ZTsKICAgICAgICAgY29udGludWU7CiAgICAgICB9CiAg
ICAgICBnZXRfbmV3X2Jsb2NrID0gdHJ1ZTsKICAgICB9Ci0gICAgaWYgKHN0YXR1cyB8fCBibG9j
a19lbnRyeSA9PSBOVUxMKSB7CisgICAgaWYgKHN0YXR1cyB8fCBibG9ja19lbnRyeSA9PSBudWxs
cHRyKSB7CiAgICAgICByZXR1cm4gLTE7CiAgICAgfQogICAgIGlmIChnZXRfbmV3X2Jsb2NrKSB7
CiAgICAgICBibG9jayA9IGJsb2NrX2VudHJ5LT5HZXRCbG9jaygpOwotICAgICAgaWYgKGJsb2Nr
ID09IE5VTEwpIHJldHVybiAtMTsKKyAgICAgIGlmIChibG9jayA9PSBudWxscHRyKSByZXR1cm4g
LTE7CiAgICAgICB3ZWJtX2N0eC0+YmxvY2tfZnJhbWVfaW5kZXggPSAwOwogICAgIH0KICAgfSB3
aGlsZSAoYmxvY2tfZW50cnlfZW9zIHx8CkBAIC0xODEsNyArMTgxLDcgQEAgaW50IHdlYm1fcmVh
ZF9mcmFtZShzdHJ1Y3QgV2VibUlucHV0Q29udGV4dCAqd2VibV9jdHgsIHVpbnQ4X3QgKipidWZm
ZXIsCiAgIGlmIChmcmFtZS5sZW4gPiBzdGF0aWNfY2FzdDxsb25nPigqYnVmZmVyX3NpemUpKSB7
CiAgICAgZGVsZXRlW10gKiBidWZmZXI7CiAgICAgKmJ1ZmZlciA9IG5ldyB1aW50OF90W2ZyYW1l
Lmxlbl07Ci0gICAgaWYgKCpidWZmZXIgPT0gTlVMTCkgeworICAgIGlmICgqYnVmZmVyID09IG51
bGxwdHIpIHsKICAgICAgIHJldHVybiAtMTsKICAgICB9CiAgICAgd2VibV9jdHgtPmJ1ZmZlciA9
ICpidWZmZXI7CkBAIC0xOTgsNyArMTk4LDcgQEAgaW50IHdlYm1fcmVhZF9mcmFtZShzdHJ1Y3Qg
V2VibUlucHV0Q29udGV4dCAqd2VibV9jdHgsIHVpbnQ4X3QgKipidWZmZXIsCiBpbnQgd2VibV9n
dWVzc19mcmFtZXJhdGUoc3RydWN0IFdlYm1JbnB1dENvbnRleHQgKndlYm1fY3R4LAogICAgICAg
ICAgICAgICAgICAgICAgICAgIHN0cnVjdCBWcHhJbnB1dENvbnRleHQgKnZweF9jdHgpIHsKICAg
dWludDMyX3QgaSA9IDA7Ci0gIHVpbnQ4X3QgKmJ1ZmZlciA9IE5VTEw7CisgIHVpbnQ4X3QgKmJ1
ZmZlciA9IG51bGxwdHI7CiAgIHNpemVfdCBidWZmZXJfc2l6ZSA9IDA7CiAgIHdoaWxlICh3ZWJt
X2N0eC0+dGltZXN0YW1wX25zIDwgMTAwMDAwMDAwMCAmJiBpIDwgNTApIHsKICAgICBpZiAod2Vi
bV9yZWFkX2ZyYW1lKHdlYm1fY3R4LCAmYnVmZmVyLCAmYnVmZmVyX3NpemUpKSB7CkBAIC0yMTIs
OCArMjEyLDggQEAgaW50IHdlYm1fZ3Vlc3NfZnJhbWVyYXRlKHN0cnVjdCBXZWJtSW5wdXRDb250
ZXh0ICp3ZWJtX2N0eCwKICAgZGVsZXRlW10gYnVmZmVyOwogCiAgIGdldF9maXJzdF9jbHVzdGVy
KHdlYm1fY3R4KTsKLSAgd2VibV9jdHgtPmJsb2NrID0gTlVMTDsKLSAgd2VibV9jdHgtPmJsb2Nr
X2VudHJ5ID0gTlVMTDsKKyAgd2VibV9jdHgtPmJsb2NrID0gbnVsbHB0cjsKKyAgd2VibV9jdHgt
PmJsb2NrX2VudHJ5ID0gbnVsbHB0cjsKICAgd2VibV9jdHgtPmJsb2NrX2ZyYW1lX2luZGV4ID0g
MDsKICAgd2VibV9jdHgtPnRpbWVzdGFtcF9ucyA9IDA7CiAgIHdlYm1fY3R4LT5yZWFjaGVkX2Vv
cyA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3dlYm1lbmMuY2MgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3dl
Ym1lbmMuY2MKaW5kZXggNjY2MDY2NzRiMDAxZDM4M2EwMGFhYWQyYjM2ODc1MTRlODU1NzIwNy4u
YzcxOGFiNWE5ZmIwNWQzMmU0Nzk5MWMwOGU4YmYzOTU4ZTFlMzMwYiAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNl
L2xpYnZweC93ZWJtZW5jLmNjCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgvd2VibWVuYy5jYwpAQCAtOTAsNiAr
OTAsNiBAQCB2b2lkIHdyaXRlX3dlYm1fZmlsZV9mb290ZXIoc3RydWN0IFdlYm1PdXRwdXRDb250
ZXh0ICp3ZWJtX2N0eCkgewogICBzZWdtZW50LT5GaW5hbGl6ZSgpOwogICBkZWxldGUgc2VnbWVu
dDsKICAgZGVsZXRlIHdyaXRlcjsKLSAgd2VibV9jdHgtPndyaXRlciA9IE5VTEw7Ci0gIHdlYm1f
Y3R4LT5zZWdtZW50ID0gTlVMTDsKKyAgd2VibV9jdHgtPndyaXRlciA9IG51bGxwdHI7CisgIHdl
Ym1fY3R4LT5zZWdtZW50ID0gbnVsbHB0cjsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgveTRt
aW5wdXQuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlidnB4L3NvdXJjZS9saWJ2cHgveTRtaW5wdXQuYwppbmRleCAwMDdiZDk5NzFiNGZiOWE4ODA2
ZDc2NmExYjlmNzAwMGFmMjgwNzQwLi5mOTIzZWRhMzRhZWRmZTA4ZWQyZjZkYWY3NzMyZmUyMjgy
Y2QxNzBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnZweC9zb3VyY2UvbGlidnB4L3k0bWlucHV0LmMKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZw
eC95NG1pbnB1dC5jCkBAIC0xMCw2ICsxMCw3IEBACiAgKiAgQmFzZWQgb24gY29kZSBmcm9tIHRo
ZSBPZ2dUaGVvcmEgc29mdHdhcmUgY29kZWMgc291cmNlIGNvZGUsCiAgKiAgQ29weXJpZ2h0IChD
KSAyMDAyLTIwMTAgVGhlIFhpcGguT3JnIEZvdW5kYXRpb24gYW5kIGNvbnRyaWJ1dG9ycy4KICAq
LworI2luY2x1ZGUgPGFzc2VydC5oPgogI2luY2x1ZGUgPGVycm5vLmg+CiAjaW5jbHVkZSA8c3Rk
bGliLmg+CiAjaW5jbHVkZSA8c3RyaW5nLmg+CkBAIC01MSwxNSArNTIsOCBAQCBzdGF0aWMgaW50
IGZpbGVfcmVhZCh2b2lkICpidWYsIHNpemVfdCBzaXplLCBGSUxFICpmaWxlKSB7CiB9CiAKIHN0
YXRpYyBpbnQgeTRtX3BhcnNlX3RhZ3MoeTRtX2lucHV0ICpfeTRtLCBjaGFyICpfdGFncykgewot
ICBpbnQgZ290X3c7Ci0gIGludCBnb3RfaDsKLSAgaW50IGdvdF9mcHM7Ci0gIGludCBnb3RfaW50
ZXJsYWNlOwotICBpbnQgZ290X3BhcjsKLSAgaW50IGdvdF9jaHJvbWE7CiAgIGNoYXIgKnA7CiAg
IGNoYXIgKnE7Ci0gIGdvdF93ID0gZ290X2ggPSBnb3RfZnBzID0gZ290X2ludGVybGFjZSA9IGdv
dF9wYXIgPSBnb3RfY2hyb21hID0gMDsKICAgZm9yIChwID0gX3RhZ3M7OyBwID0gcSkgewogICAg
IC8qU2tpcCBhbnkgbGVhZGluZyBzcGFjZXMuKi8KICAgICB3aGlsZSAoKnAgPT0gJyAnKSBwKys7
CkBAIC03Miw1MiArNjYsMTE5IEBAIHN0YXRpYyBpbnQgeTRtX3BhcnNlX3RhZ3MoeTRtX2lucHV0
ICpfeTRtLCBjaGFyICpfdGFncykgewogICAgIHN3aXRjaCAocFswXSkgewogICAgICAgY2FzZSAn
Vyc6IHsKICAgICAgICAgaWYgKHNzY2FuZihwICsgMSwgIiVkIiwgJl95NG0tPnBpY193KSAhPSAx
KSByZXR1cm4gLTE7Ci0gICAgICAgIGdvdF93ID0gMTsKICAgICAgICAgYnJlYWs7CiAgICAgICB9
CiAgICAgICBjYXNlICdIJzogewogICAgICAgICBpZiAoc3NjYW5mKHAgKyAxLCAiJWQiLCAmX3k0
bS0+cGljX2gpICE9IDEpIHJldHVybiAtMTsKLSAgICAgICAgZ290X2ggPSAxOwogICAgICAgICBi
cmVhazsKICAgICAgIH0KICAgICAgIGNhc2UgJ0YnOiB7CiAgICAgICAgIGlmIChzc2NhbmYocCAr
IDEsICIlZDolZCIsICZfeTRtLT5mcHNfbiwgJl95NG0tPmZwc19kKSAhPSAyKSB7CiAgICAgICAg
ICAgcmV0dXJuIC0xOwogICAgICAgICB9Ci0gICAgICAgIGdvdF9mcHMgPSAxOwogICAgICAgICBi
cmVhazsKICAgICAgIH0KICAgICAgIGNhc2UgJ0knOiB7CiAgICAgICAgIF95NG0tPmludGVybGFj
ZSA9IHBbMV07Ci0gICAgICAgIGdvdF9pbnRlcmxhY2UgPSAxOwogICAgICAgICBicmVhazsKICAg
ICAgIH0KICAgICAgIGNhc2UgJ0EnOiB7CiAgICAgICAgIGlmIChzc2NhbmYocCArIDEsICIlZDol
ZCIsICZfeTRtLT5wYXJfbiwgJl95NG0tPnBhcl9kKSAhPSAyKSB7CiAgICAgICAgICAgcmV0dXJu
IC0xOwogICAgICAgICB9Ci0gICAgICAgIGdvdF9wYXIgPSAxOwogICAgICAgICBicmVhazsKICAg
ICAgIH0KICAgICAgIGNhc2UgJ0MnOiB7CiAgICAgICAgIGlmIChxIC0gcCA+IDE2KSByZXR1cm4g
LTE7CiAgICAgICAgIG1lbWNweShfeTRtLT5jaHJvbWFfdHlwZSwgcCArIDEsIHEgLSBwIC0gMSk7
CiAgICAgICAgIF95NG0tPmNocm9tYV90eXBlW3EgLSBwIC0gMV0gPSAnXDAnOwotICAgICAgICBn
b3RfY2hyb21hID0gMTsKICAgICAgICAgYnJlYWs7CiAgICAgICB9CiAgICAgICAgIC8qSWdub3Jl
IHVua25vd24gdGFncy4qLwogICAgIH0KICAgfQotICBpZiAoIWdvdF93IHx8ICFnb3RfaCB8fCAh
Z290X2ZwcykgcmV0dXJuIC0xOwotICBpZiAoIWdvdF9pbnRlcmxhY2UpIF95NG0tPmludGVybGFj
ZSA9ICc/JzsKLSAgaWYgKCFnb3RfcGFyKSBfeTRtLT5wYXJfbiA9IF95NG0tPnBhcl9kID0gMDsK
LSAgLypDaHJvbWEtdHlwZSBpcyBub3Qgc3BlY2lmaWVkIGluIG9sZGVyIGZpbGVzLCBlLmcuLCB0
aG9zZSBnZW5lcmF0ZWQgYnkKLSAgICAgbXBsYXllci4qLwotICBpZiAoIWdvdF9jaHJvbWEpIHN0
cmNweShfeTRtLT5jaHJvbWFfdHlwZSwgIjQyMCIpOwogICByZXR1cm4gMDsKIH0KIAorLy8gQ29w
eSBhIHNpbmdsZSB0YWcgaW50byB0aGUgYnVmZmVyLCBhbG9uZyB3aXRoIGEgbnVsbCBjaGFyYWN0
ZXIuCisvLyBSZXR1cm5zIDAgaWYgYW55IGZpbGUgSU8gZXJyb3JzIG9jY3VyLgorc3RhdGljIGlu
dCBjb3B5X3RhZyhjaGFyICpidWYsIHNpemVfdCBidWZfbGVuLCBjaGFyICplbmRfdGFnLCBGSUxF
ICpmaWxlKSB7CisgIHNpemVfdCBpOworICBhc3NlcnQoYnVmX2xlbiA+PSAxKTsKKyAgLy8gU2tp
cCBsZWFkaW5nIHNwYWNlIGNoYXJhY3RlcnMuCisgIGRvIHsKKyAgICBpZiAoIWZpbGVfcmVhZChi
dWYsIDEsIGZpbGUpKSB7CisgICAgICByZXR1cm4gMDsKKyAgICB9CisgIH0gd2hpbGUgKGJ1Zlsw
XSA9PSAnICcpOworCisgIC8vIElmIHdlIGhpdCB0aGUgbmV3bGluZSwgdHJlYXQgdGhpcyBhcyB0
aGUgImVtcHR5IiB0YWcuCisgIGlmIChidWZbMF0gPT0gJ1xuJykgeworICAgIGJ1ZlswXSA9ICdc
MCc7CisgICAgKmVuZF90YWcgPSAnXG4nOworICAgIHJldHVybiAxOworICB9CisKKyAgLy8gQ29w
eSBvdmVyIGNoYXJhY3RlcnMgdW50aWwgYSBzcGFjZSBpcyBoaXQsIG9yIHRoZSBidWZmZXIgaXMg
ZXhoYXVzdGVkLgorICBmb3IgKGkgPSAxOyBpIDwgYnVmX2xlbjsgKytpKSB7CisgICAgaWYgKCFm
aWxlX3JlYWQoYnVmICsgaSwgMSwgZmlsZSkpIHsKKyAgICAgIHJldHVybiAwOworICAgIH0KKyAg
ICBpZiAoYnVmW2ldID09ICcgJyB8fCBidWZbaV0gPT0gJ1xuJykgeworICAgICAgYnJlYWs7Cisg
ICAgfQorICB9CisgIGlmIChpID09IGJ1Zl9sZW4pIHsKKyAgICBmcHJpbnRmKHN0ZGVyciwgIkVy
cm9yOiBZNE0gaGVhZGVyIHRhZ3MgbXVzdCBiZSBsZXNzIHRoYW4gJWx1IGNoYXJhY3RlcnNcbiIs
CisgICAgICAgICAgICAodW5zaWduZWQgbG9uZylpKTsKKyAgICByZXR1cm4gMDsKKyAgfQorICAq
ZW5kX3RhZyA9IGJ1ZltpXTsKKyAgYnVmW2ldID0gJ1wwJzsKKyAgcmV0dXJuIDE7Cit9CisKKy8q
IFJldHVybnMgMSBpZiB0YWdzIHdlcmUgcGFyc2VkIHN1Y2Nlc3NmdWxseSwgMCBvdGhlcndpc2Uu
ICovCitzdGF0aWMgaW50IHBhcnNlX3RhZ3MoeTRtX2lucHV0ICp5NG1fY3R4LCBGSUxFICpmaWxl
KSB7CisgIGNoYXIgdGFnWzI1Nl07CisgIGNoYXIgZW5kOyAvKiBDaGFyYWN0ZXIgZGVub3Rpbmcg
dGhlIGVuZCBvZiB0aGUgdGFnLCAnICcgb3IgJ1xuJy4gKi8KKyAgLyogU2V0IFk0TSB0YWdzIHRv
IGRlZmF1bHRzLCB1cGRhdGluZyB0aGVtIGFzIHByb2Nlc3Npbmcgb2NjdXJzLiBNYW5kYXRvcnkK
KyAgICAgZmllbGRzIGFyZSBtYXJrZWQgd2l0aCAtMSBhbmQgd2lsbCBiZSBjaGVja2VkIGFmdGVy
IHRoZSB0YWdzIGFyZSBwYXJzZWQuICovCisgIHk0bV9jdHgtPnBpY193ID0gLTE7CisgIHk0bV9j
dHgtPnBpY19oID0gLTE7CisgIHk0bV9jdHgtPmZwc19uID0gLTE7IC8qIEFsc28gc2VydmVzIGFz
IG1hcmtlciBmb3IgZnBzX2QgKi8KKyAgeTRtX2N0eC0+cGFyX24gPSAwOworICB5NG1fY3R4LT5w
YXJfZCA9IDA7CisgIHk0bV9jdHgtPmludGVybGFjZSA9ICc/JzsKKyAgc25wcmludGYoeTRtX2N0
eC0+Y2hyb21hX3R5cGUsIHNpemVvZih5NG1fY3R4LT5jaHJvbWFfdHlwZSksICI0MjAiKTsKKwor
ICAvKiBGaW5kIG9uZSB0YWcgYXQgYSB0aW1lLiAqLworICBkbyB7CisgICAgaWYgKCFjb3B5X3Rh
Zyh0YWcsIHNpemVvZih0YWcpLCAmZW5kLCBmaWxlKSkgeworICAgICAgcmV0dXJuIDA7CisgICAg
fQorICAgIC8qIHk0bV9wYXJzZV90YWdzIHJldHVybnMgMCBvbiBzdWNjZXNzLiAqLworICAgIGlm
ICh5NG1fcGFyc2VfdGFncyh5NG1fY3R4LCB0YWcpKSB7CisgICAgICByZXR1cm4gMDsKKyAgICB9
CisgIH0gd2hpbGUgKGVuZCAhPSAnXG4nKTsKKworICAvKiBDaGVjayB0aGUgbWFuZGF0b3J5IGZp
ZWxkcy4gKi8KKyAgaWYgKHk0bV9jdHgtPnBpY193ID09IC0xKSB7CisgICAgZnByaW50ZihzdGRl
cnIsICJXaWR0aCBmaWVsZCBtaXNzaW5nXG4iKTsKKyAgICByZXR1cm4gMDsKKyAgfQorICBpZiAo
eTRtX2N0eC0+cGljX2ggPT0gLTEpIHsKKyAgICBmcHJpbnRmKHN0ZGVyciwgIkhlaWdodCBmaWVs
ZCBtaXNzaW5nXG4iKTsKKyAgICByZXR1cm4gMDsKKyAgfQorICBpZiAoeTRtX2N0eC0+ZnBzX24g
PT0gLTEpIHsKKyAgICBmcHJpbnRmKHN0ZGVyciwgIkZQUyBmaWVsZCBtaXNzaW5nXG4iKTsKKyAg
ICByZXR1cm4gMDsKKyAgfQorICByZXR1cm4gMTsKK30KKwogLypBbGwgYW50aS1hbGlhc2luZyBm
aWx0ZXJzIGluIHRoZSBmb2xsb3dpbmcgY29udmVyc2lvbiBmdW5jdGlvbnMgYXJlIGJhc2VkIG9u
CiAgICBvbmUgb2YgdHdvIHdpbmRvdyBmdW5jdGlvbnM6CiAgIFRoZSA2LXRhcCBMYW5jem9zIHdp
bmRvdyAoZm9yIGRvd24tc2FtcGxpbmcgYW5kIHNoaWZ0cyk6CkBAIC03ODQsMjc3ICs4NDUsMjc4
IEBAIHN0YXRpYyB2b2lkIHk0bV9jb252ZXJ0X251bGwoeTRtX2lucHV0ICpfeTRtLCB1bnNpZ25l
ZCBjaGFyICpfZHN0LAogICAodm9pZClfYXV4OwogfQogCi1pbnQgeTRtX2lucHV0X29wZW4oeTRt
X2lucHV0ICpfeTRtLCBGSUxFICpfZmluLCBjaGFyICpfc2tpcCwgaW50IF9uc2tpcCwKLSAgICAg
ICAgICAgICAgICAgICBpbnQgb25seV80MjApIHsKLSAgY2hhciBidWZmZXJbODBdID0geyAwIH07
Ci0gIGludCByZXQ7Ci0gIGludCBpOwotICAvKlJlYWQgdW50aWwgbmV3bGluZSwgb3IgODAgY29s
cywgd2hpY2hldmVyIGhhcHBlbnMgZmlyc3QuKi8KLSAgZm9yIChpID0gMDsgaSA8IDc5OyBpKysp
IHsKLSAgICBpZiAoX25za2lwID4gMCkgewotICAgICAgYnVmZmVyW2ldID0gKl9za2lwKys7Ci0g
ICAgICBfbnNraXAtLTsKLSAgICB9IGVsc2UgewotICAgICAgaWYgKCFmaWxlX3JlYWQoYnVmZmVy
ICsgaSwgMSwgX2ZpbikpIHJldHVybiAtMTsKLSAgICB9Ci0gICAgaWYgKGJ1ZmZlcltpXSA9PSAn
XG4nKSBicmVhazsKK3N0YXRpYyBjb25zdCBjaGFyIFRBR1tdID0gIllVVjRNUEVHMiI7CisKK2lu
dCB5NG1faW5wdXRfb3Blbih5NG1faW5wdXQgKnk0bV9jdHgsIEZJTEUgKmZpbGUsIGNoYXIgKnNr
aXBfYnVmZmVyLAorICAgICAgICAgICAgICAgICAgIGludCBudW1fc2tpcCwgaW50IG9ubHlfNDIw
KSB7CisgIC8vIEZpbGUgbXVzdCBzdGFydCB3aXRoIHxUQUd8LgorICBjaGFyIHRhZ19idWZmZXJb
OV07ICAvLyA5ID09IHN0cmxlbihUQUcpCisgIC8vIFJlYWQgYXMgbXVjaCBhcyBwb3NzaWJsZSBm
cm9tIHxza2lwX2J1ZmZlcnwsIHdoaWNoIHdlcmUgY2hhcmFjdGVycworICAvLyB0aGF0IHdlcmUg
cHJldmlvdXNseSByZWFkIGZyb20gdGhlIGZpbGUgdG8gZG8gaW5wdXQtdHlwZSBkZXRlY3Rpb24u
CisgIGFzc2VydChudW1fc2tpcCA+PSAwICYmIG51bV9za2lwIDw9IDgpOworICBpZiAobnVtX3Nr
aXAgPiAwKSB7CisgICAgbWVtY3B5KHRhZ19idWZmZXIsIHNraXBfYnVmZmVyLCBudW1fc2tpcCk7
CiAgIH0KLSAgLypXZSBza2lwcGVkIHRvbyBtdWNoIGhlYWRlciBkYXRhLiovCi0gIGlmIChfbnNr
aXAgPiAwKSByZXR1cm4gLTE7Ci0gIGlmIChpID09IDc5KSB7Ci0gICAgZnByaW50ZihzdGRlcnIs
ICJFcnJvciBwYXJzaW5nIGhlYWRlcjsgbm90IGEgWVVWMk1QRUcyIGZpbGU/XG4iKTsKKyAgLy8g
U3RhcnQgcmVhZGluZyBmcm9tIHRoZSBmaWxlIG5vdyB0aGF0IHRoZSB8c2tpcF9idWZmZXJ8IGlz
IGRlcGxldGVkLgorICBpZiAoIWZpbGVfcmVhZCh0YWdfYnVmZmVyICsgbnVtX3NraXAsIDkgLSBu
dW1fc2tpcCwgZmlsZSkpIHsKICAgICByZXR1cm4gLTE7CiAgIH0KLSAgYnVmZmVyW2ldID0gJ1ww
JzsKLSAgaWYgKG1lbWNtcChidWZmZXIsICJZVVY0TVBFRyIsIDgpKSB7Ci0gICAgZnByaW50Zihz
dGRlcnIsICJJbmNvbXBsZXRlIG1hZ2ljIGZvciBZVVY0TVBFRyBmaWxlLlxuIik7CisgIGlmICht
ZW1jbXAoVEFHLCB0YWdfYnVmZmVyLCA5KSAhPSAwKSB7CisgICAgZnByaW50ZihzdGRlcnIsICJF
cnJvciBwYXJzaW5nIGhlYWRlcjogbXVzdCBzdGFydCB3aXRoICVzXG4iLCBUQUcpOwogICAgIHJl
dHVybiAtMTsKICAgfQotICBpZiAoYnVmZmVyWzhdICE9ICcyJykgewotICAgIGZwcmludGYoc3Rk
ZXJyLCAiSW5jb3JyZWN0IFlVViBpbnB1dCBmaWxlIHZlcnNpb247IFlVVjRNUEVHMiByZXF1aXJl
ZC5cbiIpOworICAvLyBOZXh0IGNoYXJhY3RlciBtdXN0IGJlIGEgc3BhY2UuCisgIGlmICghZmls
ZV9yZWFkKHRhZ19idWZmZXIsIDEsIGZpbGUpIHx8IHRhZ19idWZmZXJbMF0gIT0gJyAnKSB7Cisg
ICAgZnByaW50ZihzdGRlcnIsICJFcnJvciBwYXJzaW5nIGhlYWRlcjogc3BhY2UgbXVzdCBmb2xs
b3cgJXNcbiIsIFRBRyk7CisgICAgcmV0dXJuIC0xOwogICB9Ci0gIHJldCA9IHk0bV9wYXJzZV90
YWdzKF95NG0sIGJ1ZmZlciArIDUpOwotICBpZiAocmV0IDwgMCkgewotICAgIGZwcmludGYoc3Rk
ZXJyLCAiRXJyb3IgcGFyc2luZyBZVVY0TVBFRzIgaGVhZGVyLlxuIik7Ci0gICAgcmV0dXJuIHJl
dDsKKyAgaWYgKCFwYXJzZV90YWdzKHk0bV9jdHgsIGZpbGUpKSB7CisgICAgZnByaW50ZihzdGRl
cnIsICJFcnJvciBwYXJzaW5nICVzIGhlYWRlci5cbiIsIFRBRyk7CiAgIH0KLSAgaWYgKF95NG0t
PmludGVybGFjZSA9PSAnPycpIHsKKyAgaWYgKHk0bV9jdHgtPmludGVybGFjZSA9PSAnPycpIHsK
ICAgICBmcHJpbnRmKHN0ZGVyciwKICAgICAgICAgICAgICJXYXJuaW5nOiBJbnB1dCB2aWRlbyBp
bnRlcmxhY2luZyBmb3JtYXQgdW5rbm93bjsgIgogICAgICAgICAgICAgImFzc3VtaW5nIHByb2dy
ZXNzaXZlIHNjYW4uXG4iKTsKLSAgfSBlbHNlIGlmIChfeTRtLT5pbnRlcmxhY2UgIT0gJ3AnKSB7
CisgIH0gZWxzZSBpZiAoeTRtX2N0eC0+aW50ZXJsYWNlICE9ICdwJykgewogICAgIGZwcmludGYo
c3RkZXJyLAogICAgICAgICAgICAgIklucHV0IHZpZGVvIGlzIGludGVybGFjZWQ7ICIKICAgICAg
ICAgICAgICJPbmx5IHByb2dyZXNzaXZlIHNjYW4gaGFuZGxlZC5cbiIpOwogICAgIHJldHVybiAt
MTsKICAgfQotICBfeTRtLT52cHhfZm10ID0gVlBYX0lNR19GTVRfSTQyMDsKLSAgX3k0bS0+YnBz
ID0gMTI7Ci0gIF95NG0tPmJpdF9kZXB0aCA9IDg7Ci0gIGlmIChzdHJjbXAoX3k0bS0+Y2hyb21h
X3R5cGUsICI0MjAiKSA9PSAwIHx8Ci0gICAgICBzdHJjbXAoX3k0bS0+Y2hyb21hX3R5cGUsICI0
MjBqcGVnIikgPT0gMCkgewotICAgIF95NG0tPnNyY19jX2RlY19oID0gX3k0bS0+ZHN0X2NfZGVj
X2ggPSBfeTRtLT5zcmNfY19kZWNfdiA9Ci0gICAgICAgIF95NG0tPmRzdF9jX2RlY192ID0gMjsK
LSAgICBfeTRtLT5kc3RfYnVmX3JlYWRfc3ogPQotICAgICAgICBfeTRtLT5waWNfdyAqIF95NG0t
PnBpY19oICsKLSAgICAgICAgMiAqICgoX3k0bS0+cGljX3cgKyAxKSAvIDIpICogKChfeTRtLT5w
aWNfaCArIDEpIC8gMik7CisgIHk0bV9jdHgtPnZweF9mbXQgPSBWUFhfSU1HX0ZNVF9JNDIwOwor
ICB5NG1fY3R4LT5icHMgPSAxMjsKKyAgeTRtX2N0eC0+Yml0X2RlcHRoID0gODsKKyAgeTRtX2N0
eC0+YXV4X2J1ZiA9IE5VTEw7CisgIHk0bV9jdHgtPmRzdF9idWYgPSBOVUxMOworICBpZiAoc3Ry
Y21wKHk0bV9jdHgtPmNocm9tYV90eXBlLCAiNDIwIikgPT0gMCB8fAorICAgICAgc3RyY21wKHk0
bV9jdHgtPmNocm9tYV90eXBlLCAiNDIwanBlZyIpID09IDApIHsKKyAgICB5NG1fY3R4LT5zcmNf
Y19kZWNfaCA9IHk0bV9jdHgtPmRzdF9jX2RlY19oID0geTRtX2N0eC0+c3JjX2NfZGVjX3YgPQor
ICAgICAgICB5NG1fY3R4LT5kc3RfY19kZWNfdiA9IDI7CisgICAgeTRtX2N0eC0+ZHN0X2J1Zl9y
ZWFkX3N6ID0KKyAgICAgICAgeTRtX2N0eC0+cGljX3cgKiB5NG1fY3R4LT5waWNfaCArCisgICAg
ICAgIDIgKiAoKHk0bV9jdHgtPnBpY193ICsgMSkgLyAyKSAqICgoeTRtX2N0eC0+cGljX2ggKyAx
KSAvIDIpOwogICAgIC8qIE5hdGl2ZWx5IHN1cHBvcnRlZDogbm8gY29udmVyc2lvbiByZXF1aXJl
ZC4gKi8KLSAgICBfeTRtLT5hdXhfYnVmX3N6ID0gX3k0bS0+YXV4X2J1Zl9yZWFkX3N6ID0gMDsK
LSAgICBfeTRtLT5jb252ZXJ0ID0geTRtX2NvbnZlcnRfbnVsbDsKLSAgfSBlbHNlIGlmIChzdHJj
bXAoX3k0bS0+Y2hyb21hX3R5cGUsICI0MjBwMTAiKSA9PSAwKSB7Ci0gICAgX3k0bS0+c3JjX2Nf
ZGVjX2ggPSAyOwotICAgIF95NG0tPmRzdF9jX2RlY19oID0gMjsKLSAgICBfeTRtLT5zcmNfY19k
ZWNfdiA9IDI7Ci0gICAgX3k0bS0+ZHN0X2NfZGVjX3YgPSAyOwotICAgIF95NG0tPmRzdF9idWZf
cmVhZF9zeiA9Ci0gICAgICAgIDIgKiAoX3k0bS0+cGljX3cgKiBfeTRtLT5waWNfaCArCi0gICAg
ICAgICAgICAgMiAqICgoX3k0bS0+cGljX3cgKyAxKSAvIDIpICogKChfeTRtLT5waWNfaCArIDEp
IC8gMikpOworICAgIHk0bV9jdHgtPmF1eF9idWZfc3ogPSB5NG1fY3R4LT5hdXhfYnVmX3JlYWRf
c3ogPSAwOworICAgIHk0bV9jdHgtPmNvbnZlcnQgPSB5NG1fY29udmVydF9udWxsOworICB9IGVs
c2UgaWYgKHN0cmNtcCh5NG1fY3R4LT5jaHJvbWFfdHlwZSwgIjQyMHAxMCIpID09IDApIHsKKyAg
ICB5NG1fY3R4LT5zcmNfY19kZWNfaCA9IDI7CisgICAgeTRtX2N0eC0+ZHN0X2NfZGVjX2ggPSAy
OworICAgIHk0bV9jdHgtPnNyY19jX2RlY192ID0gMjsKKyAgICB5NG1fY3R4LT5kc3RfY19kZWNf
diA9IDI7CisgICAgeTRtX2N0eC0+ZHN0X2J1Zl9yZWFkX3N6ID0KKyAgICAgICAgMiAqICh5NG1f
Y3R4LT5waWNfdyAqIHk0bV9jdHgtPnBpY19oICsKKyAgICAgICAgICAgICAyICogKCh5NG1fY3R4
LT5waWNfdyArIDEpIC8gMikgKiAoKHk0bV9jdHgtPnBpY19oICsgMSkgLyAyKSk7CiAgICAgLyog
TmF0aXZlbHkgc3VwcG9ydGVkOiBubyBjb252ZXJzaW9uIHJlcXVpcmVkLiAqLwotICAgIF95NG0t
PmF1eF9idWZfc3ogPSBfeTRtLT5hdXhfYnVmX3JlYWRfc3ogPSAwOwotICAgIF95NG0tPmNvbnZl
cnQgPSB5NG1fY29udmVydF9udWxsOwotICAgIF95NG0tPmJpdF9kZXB0aCA9IDEwOwotICAgIF95
NG0tPmJwcyA9IDE1OwotICAgIF95NG0tPnZweF9mbXQgPSBWUFhfSU1HX0ZNVF9JNDIwMTY7Cisg
ICAgeTRtX2N0eC0+YXV4X2J1Zl9zeiA9IHk0bV9jdHgtPmF1eF9idWZfcmVhZF9zeiA9IDA7Cisg
ICAgeTRtX2N0eC0+Y29udmVydCA9IHk0bV9jb252ZXJ0X251bGw7CisgICAgeTRtX2N0eC0+Yml0
X2RlcHRoID0gMTA7CisgICAgeTRtX2N0eC0+YnBzID0gMTU7CisgICAgeTRtX2N0eC0+dnB4X2Zt
dCA9IFZQWF9JTUdfRk1UX0k0MjAxNjsKICAgICBpZiAob25seV80MjApIHsKICAgICAgIGZwcmlu
dGYoc3RkZXJyLCAiVW5zdXBwb3J0ZWQgY29udmVyc2lvbiBmcm9tIDQyMHAxMCB0byA0MjBqcGVn
XG4iKTsKICAgICAgIHJldHVybiAtMTsKICAgICB9Ci0gIH0gZWxzZSBpZiAoc3RyY21wKF95NG0t
PmNocm9tYV90eXBlLCAiNDIwcDEyIikgPT0gMCkgewotICAgIF95NG0tPnNyY19jX2RlY19oID0g
MjsKLSAgICBfeTRtLT5kc3RfY19kZWNfaCA9IDI7Ci0gICAgX3k0bS0+c3JjX2NfZGVjX3YgPSAy
OwotICAgIF95NG0tPmRzdF9jX2RlY192ID0gMjsKLSAgICBfeTRtLT5kc3RfYnVmX3JlYWRfc3og
PQotICAgICAgICAyICogKF95NG0tPnBpY193ICogX3k0bS0+cGljX2ggKwotICAgICAgICAgICAg
IDIgKiAoKF95NG0tPnBpY193ICsgMSkgLyAyKSAqICgoX3k0bS0+cGljX2ggKyAxKSAvIDIpKTsK
KyAgfSBlbHNlIGlmIChzdHJjbXAoeTRtX2N0eC0+Y2hyb21hX3R5cGUsICI0MjBwMTIiKSA9PSAw
KSB7CisgICAgeTRtX2N0eC0+c3JjX2NfZGVjX2ggPSAyOworICAgIHk0bV9jdHgtPmRzdF9jX2Rl
Y19oID0gMjsKKyAgICB5NG1fY3R4LT5zcmNfY19kZWNfdiA9IDI7CisgICAgeTRtX2N0eC0+ZHN0
X2NfZGVjX3YgPSAyOworICAgIHk0bV9jdHgtPmRzdF9idWZfcmVhZF9zeiA9CisgICAgICAgIDIg
KiAoeTRtX2N0eC0+cGljX3cgKiB5NG1fY3R4LT5waWNfaCArCisgICAgICAgICAgICAgMiAqICgo
eTRtX2N0eC0+cGljX3cgKyAxKSAvIDIpICogKCh5NG1fY3R4LT5waWNfaCArIDEpIC8gMikpOwog
ICAgIC8qIE5hdGl2ZWx5IHN1cHBvcnRlZDogbm8gY29udmVyc2lvbiByZXF1aXJlZC4gKi8KLSAg
ICBfeTRtLT5hdXhfYnVmX3N6ID0gX3k0bS0+YXV4X2J1Zl9yZWFkX3N6ID0gMDsKLSAgICBfeTRt
LT5jb252ZXJ0ID0geTRtX2NvbnZlcnRfbnVsbDsKLSAgICBfeTRtLT5iaXRfZGVwdGggPSAxMjsK
LSAgICBfeTRtLT5icHMgPSAxODsKLSAgICBfeTRtLT52cHhfZm10ID0gVlBYX0lNR19GTVRfSTQy
MDE2OworICAgIHk0bV9jdHgtPmF1eF9idWZfc3ogPSB5NG1fY3R4LT5hdXhfYnVmX3JlYWRfc3og
PSAwOworICAgIHk0bV9jdHgtPmNvbnZlcnQgPSB5NG1fY29udmVydF9udWxsOworICAgIHk0bV9j
dHgtPmJpdF9kZXB0aCA9IDEyOworICAgIHk0bV9jdHgtPmJwcyA9IDE4OworICAgIHk0bV9jdHgt
PnZweF9mbXQgPSBWUFhfSU1HX0ZNVF9JNDIwMTY7CiAgICAgaWYgKG9ubHlfNDIwKSB7CiAgICAg
ICBmcHJpbnRmKHN0ZGVyciwgIlVuc3VwcG9ydGVkIGNvbnZlcnNpb24gZnJvbSA0MjBwMTIgdG8g
NDIwanBlZ1xuIik7CiAgICAgICByZXR1cm4gLTE7CiAgICAgfQotICB9IGVsc2UgaWYgKHN0cmNt
cChfeTRtLT5jaHJvbWFfdHlwZSwgIjQyMG1wZWcyIikgPT0gMCkgewotICAgIF95NG0tPnNyY19j
X2RlY19oID0gX3k0bS0+ZHN0X2NfZGVjX2ggPSBfeTRtLT5zcmNfY19kZWNfdiA9Ci0gICAgICAg
IF95NG0tPmRzdF9jX2RlY192ID0gMjsKLSAgICBfeTRtLT5kc3RfYnVmX3JlYWRfc3ogPSBfeTRt
LT5waWNfdyAqIF95NG0tPnBpY19oOworICB9IGVsc2UgaWYgKHN0cmNtcCh5NG1fY3R4LT5jaHJv
bWFfdHlwZSwgIjQyMG1wZWcyIikgPT0gMCkgeworICAgIHk0bV9jdHgtPnNyY19jX2RlY19oID0g
eTRtX2N0eC0+ZHN0X2NfZGVjX2ggPSB5NG1fY3R4LT5zcmNfY19kZWNfdiA9CisgICAgICAgIHk0
bV9jdHgtPmRzdF9jX2RlY192ID0gMjsKKyAgICB5NG1fY3R4LT5kc3RfYnVmX3JlYWRfc3ogPSB5
NG1fY3R4LT5waWNfdyAqIHk0bV9jdHgtPnBpY19oOwogICAgIC8qQ2hyb21hIGZpbHRlciByZXF1
aXJlZDogcmVhZCBpbnRvIHRoZSBhdXggYnVmIGZpcnN0LiovCi0gICAgX3k0bS0+YXV4X2J1Zl9z
eiA9IF95NG0tPmF1eF9idWZfcmVhZF9zeiA9Ci0gICAgICAgIDIgKiAoKF95NG0tPnBpY193ICsg
MSkgLyAyKSAqICgoX3k0bS0+cGljX2ggKyAxKSAvIDIpOwotICAgIF95NG0tPmNvbnZlcnQgPSB5
NG1fY29udmVydF80MnhtcGVnMl80MnhqcGVnOwotICB9IGVsc2UgaWYgKHN0cmNtcChfeTRtLT5j
aHJvbWFfdHlwZSwgIjQyMHBhbGR2IikgPT0gMCkgewotICAgIF95NG0tPnNyY19jX2RlY19oID0g
X3k0bS0+ZHN0X2NfZGVjX2ggPSBfeTRtLT5zcmNfY19kZWNfdiA9Ci0gICAgICAgIF95NG0tPmRz
dF9jX2RlY192ID0gMjsKLSAgICBfeTRtLT5kc3RfYnVmX3JlYWRfc3ogPSBfeTRtLT5waWNfdyAq
IF95NG0tPnBpY19oOworICAgIHk0bV9jdHgtPmF1eF9idWZfc3ogPSB5NG1fY3R4LT5hdXhfYnVm
X3JlYWRfc3ogPQorICAgICAgICAyICogKCh5NG1fY3R4LT5waWNfdyArIDEpIC8gMikgKiAoKHk0
bV9jdHgtPnBpY19oICsgMSkgLyAyKTsKKyAgICB5NG1fY3R4LT5jb252ZXJ0ID0geTRtX2NvbnZl
cnRfNDJ4bXBlZzJfNDJ4anBlZzsKKyAgfSBlbHNlIGlmIChzdHJjbXAoeTRtX2N0eC0+Y2hyb21h
X3R5cGUsICI0MjBwYWxkdiIpID09IDApIHsKKyAgICB5NG1fY3R4LT5zcmNfY19kZWNfaCA9IHk0
bV9jdHgtPmRzdF9jX2RlY19oID0geTRtX2N0eC0+c3JjX2NfZGVjX3YgPQorICAgICAgICB5NG1f
Y3R4LT5kc3RfY19kZWNfdiA9IDI7CisgICAgeTRtX2N0eC0+ZHN0X2J1Zl9yZWFkX3N6ID0geTRt
X2N0eC0+cGljX3cgKiB5NG1fY3R4LT5waWNfaDsKICAgICAvKkNocm9tYSBmaWx0ZXIgcmVxdWly
ZWQ6IHJlYWQgaW50byB0aGUgYXV4IGJ1ZiBmaXJzdC4KICAgICAgIFdlIG5lZWQgdG8gbWFrZSB0
d28gZmlsdGVyIHBhc3Nlcywgc28gd2UgbmVlZCBzb21lIGV4dHJhIHNwYWNlIGluIHRoZQogICAg
ICAgIGF1eCBidWZmZXIuKi8KLSAgICBfeTRtLT5hdXhfYnVmX3N6ID0gMyAqICgoX3k0bS0+cGlj
X3cgKyAxKSAvIDIpICogKChfeTRtLT5waWNfaCArIDEpIC8gMik7Ci0gICAgX3k0bS0+YXV4X2J1
Zl9yZWFkX3N6ID0KLSAgICAgICAgMiAqICgoX3k0bS0+cGljX3cgKyAxKSAvIDIpICogKChfeTRt
LT5waWNfaCArIDEpIC8gMik7Ci0gICAgX3k0bS0+Y29udmVydCA9IHk0bV9jb252ZXJ0XzQyeHBh
bGR2XzQyeGpwZWc7Ci0gIH0gZWxzZSBpZiAoc3RyY21wKF95NG0tPmNocm9tYV90eXBlLCAiNDIy
anBlZyIpID09IDApIHsKLSAgICBfeTRtLT5zcmNfY19kZWNfaCA9IF95NG0tPmRzdF9jX2RlY19o
ID0gMjsKLSAgICBfeTRtLT5zcmNfY19kZWNfdiA9IDE7Ci0gICAgX3k0bS0+ZHN0X2NfZGVjX3Yg
PSAyOwotICAgIF95NG0tPmRzdF9idWZfcmVhZF9zeiA9IF95NG0tPnBpY193ICogX3k0bS0+cGlj
X2g7CisgICAgeTRtX2N0eC0+YXV4X2J1Zl9zeiA9CisgICAgICAgIDMgKiAoKHk0bV9jdHgtPnBp
Y193ICsgMSkgLyAyKSAqICgoeTRtX2N0eC0+cGljX2ggKyAxKSAvIDIpOworICAgIHk0bV9jdHgt
PmF1eF9idWZfcmVhZF9zeiA9CisgICAgICAgIDIgKiAoKHk0bV9jdHgtPnBpY193ICsgMSkgLyAy
KSAqICgoeTRtX2N0eC0+cGljX2ggKyAxKSAvIDIpOworICAgIHk0bV9jdHgtPmNvbnZlcnQgPSB5
NG1fY29udmVydF80MnhwYWxkdl80MnhqcGVnOworICB9IGVsc2UgaWYgKHN0cmNtcCh5NG1fY3R4
LT5jaHJvbWFfdHlwZSwgIjQyMmpwZWciKSA9PSAwKSB7CisgICAgeTRtX2N0eC0+c3JjX2NfZGVj
X2ggPSB5NG1fY3R4LT5kc3RfY19kZWNfaCA9IDI7CisgICAgeTRtX2N0eC0+c3JjX2NfZGVjX3Yg
PSAxOworICAgIHk0bV9jdHgtPmRzdF9jX2RlY192ID0gMjsKKyAgICB5NG1fY3R4LT5kc3RfYnVm
X3JlYWRfc3ogPSB5NG1fY3R4LT5waWNfdyAqIHk0bV9jdHgtPnBpY19oOwogICAgIC8qQ2hyb21h
IGZpbHRlciByZXF1aXJlZDogcmVhZCBpbnRvIHRoZSBhdXggYnVmIGZpcnN0LiovCi0gICAgX3k0
bS0+YXV4X2J1Zl9zeiA9IF95NG0tPmF1eF9idWZfcmVhZF9zeiA9Ci0gICAgICAgIDIgKiAoKF95
NG0tPnBpY193ICsgMSkgLyAyKSAqIF95NG0tPnBpY19oOwotICAgIF95NG0tPmNvbnZlcnQgPSB5
NG1fY29udmVydF80MjJqcGVnXzQyMGpwZWc7Ci0gIH0gZWxzZSBpZiAoc3RyY21wKF95NG0tPmNo
cm9tYV90eXBlLCAiNDIyIikgPT0gMCkgewotICAgIF95NG0tPnNyY19jX2RlY19oID0gMjsKLSAg
ICBfeTRtLT5zcmNfY19kZWNfdiA9IDE7CisgICAgeTRtX2N0eC0+YXV4X2J1Zl9zeiA9IHk0bV9j
dHgtPmF1eF9idWZfcmVhZF9zeiA9CisgICAgICAgIDIgKiAoKHk0bV9jdHgtPnBpY193ICsgMSkg
LyAyKSAqIHk0bV9jdHgtPnBpY19oOworICAgIHk0bV9jdHgtPmNvbnZlcnQgPSB5NG1fY29udmVy
dF80MjJqcGVnXzQyMGpwZWc7CisgIH0gZWxzZSBpZiAoc3RyY21wKHk0bV9jdHgtPmNocm9tYV90
eXBlLCAiNDIyIikgPT0gMCkgeworICAgIHk0bV9jdHgtPnNyY19jX2RlY19oID0gMjsKKyAgICB5
NG1fY3R4LT5zcmNfY19kZWNfdiA9IDE7CiAgICAgaWYgKG9ubHlfNDIwKSB7Ci0gICAgICBfeTRt
LT5kc3RfY19kZWNfaCA9IDI7Ci0gICAgICBfeTRtLT5kc3RfY19kZWNfdiA9IDI7Ci0gICAgICBf
eTRtLT5kc3RfYnVmX3JlYWRfc3ogPSBfeTRtLT5waWNfdyAqIF95NG0tPnBpY19oOworICAgICAg
eTRtX2N0eC0+ZHN0X2NfZGVjX2ggPSAyOworICAgICAgeTRtX2N0eC0+ZHN0X2NfZGVjX3YgPSAy
OworICAgICAgeTRtX2N0eC0+ZHN0X2J1Zl9yZWFkX3N6ID0geTRtX2N0eC0+cGljX3cgKiB5NG1f
Y3R4LT5waWNfaDsKICAgICAgIC8qQ2hyb21hIGZpbHRlciByZXF1aXJlZDogcmVhZCBpbnRvIHRo
ZSBhdXggYnVmIGZpcnN0LgogICAgICAgICBXZSBuZWVkIHRvIG1ha2UgdHdvIGZpbHRlciBwYXNz
ZXMsIHNvIHdlIG5lZWQgc29tZSBleHRyYSBzcGFjZSBpbiB0aGUKICAgICAgICAgIGF1eCBidWZm
ZXIuKi8KLSAgICAgIF95NG0tPmF1eF9idWZfcmVhZF9zeiA9IDIgKiAoKF95NG0tPnBpY193ICsg
MSkgLyAyKSAqIF95NG0tPnBpY19oOwotICAgICAgX3k0bS0+YXV4X2J1Zl9zeiA9Ci0gICAgICAg
ICAgX3k0bS0+YXV4X2J1Zl9yZWFkX3N6ICsgKChfeTRtLT5waWNfdyArIDEpIC8gMikgKiBfeTRt
LT5waWNfaDsKLSAgICAgIF95NG0tPmNvbnZlcnQgPSB5NG1fY29udmVydF80MjJfNDIwanBlZzsK
KyAgICAgIHk0bV9jdHgtPmF1eF9idWZfcmVhZF9zeiA9CisgICAgICAgICAgMiAqICgoeTRtX2N0
eC0+cGljX3cgKyAxKSAvIDIpICogeTRtX2N0eC0+cGljX2g7CisgICAgICB5NG1fY3R4LT5hdXhf
YnVmX3N6ID0geTRtX2N0eC0+YXV4X2J1Zl9yZWFkX3N6ICsKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAoKHk0bV9jdHgtPnBpY193ICsgMSkgLyAyKSAqIHk0bV9jdHgtPnBpY19oOworICAg
ICAgeTRtX2N0eC0+Y29udmVydCA9IHk0bV9jb252ZXJ0XzQyMl80MjBqcGVnOwogICAgIH0gZWxz
ZSB7Ci0gICAgICBfeTRtLT52cHhfZm10ID0gVlBYX0lNR19GTVRfSTQyMjsKLSAgICAgIF95NG0t
PmJwcyA9IDE2OwotICAgICAgX3k0bS0+ZHN0X2NfZGVjX2ggPSBfeTRtLT5zcmNfY19kZWNfaDsK
LSAgICAgIF95NG0tPmRzdF9jX2RlY192ID0gX3k0bS0+c3JjX2NfZGVjX3Y7Ci0gICAgICBfeTRt
LT5kc3RfYnVmX3JlYWRfc3ogPQotICAgICAgICAgIF95NG0tPnBpY193ICogX3k0bS0+cGljX2gg
KyAyICogKChfeTRtLT5waWNfdyArIDEpIC8gMikgKiBfeTRtLT5waWNfaDsKKyAgICAgIHk0bV9j
dHgtPnZweF9mbXQgPSBWUFhfSU1HX0ZNVF9JNDIyOworICAgICAgeTRtX2N0eC0+YnBzID0gMTY7
CisgICAgICB5NG1fY3R4LT5kc3RfY19kZWNfaCA9IHk0bV9jdHgtPnNyY19jX2RlY19oOworICAg
ICAgeTRtX2N0eC0+ZHN0X2NfZGVjX3YgPSB5NG1fY3R4LT5zcmNfY19kZWNfdjsKKyAgICAgIHk0
bV9jdHgtPmRzdF9idWZfcmVhZF9zeiA9CisgICAgICAgICAgeTRtX2N0eC0+cGljX3cgKiB5NG1f
Y3R4LT5waWNfaCArCisgICAgICAgICAgMiAqICgoeTRtX2N0eC0+cGljX3cgKyAxKSAvIDIpICog
eTRtX2N0eC0+cGljX2g7CiAgICAgICAvKk5hdGl2ZWx5IHN1cHBvcnRlZDogbm8gY29udmVyc2lv
biByZXF1aXJlZC4qLwotICAgICAgX3k0bS0+YXV4X2J1Zl9zeiA9IF95NG0tPmF1eF9idWZfcmVh
ZF9zeiA9IDA7Ci0gICAgICBfeTRtLT5jb252ZXJ0ID0geTRtX2NvbnZlcnRfbnVsbDsKKyAgICAg
IHk0bV9jdHgtPmF1eF9idWZfc3ogPSB5NG1fY3R4LT5hdXhfYnVmX3JlYWRfc3ogPSAwOworICAg
ICAgeTRtX2N0eC0+Y29udmVydCA9IHk0bV9jb252ZXJ0X251bGw7CiAgICAgfQotICB9IGVsc2Ug
aWYgKHN0cmNtcChfeTRtLT5jaHJvbWFfdHlwZSwgIjQyMnAxMCIpID09IDApIHsKLSAgICBfeTRt
LT5zcmNfY19kZWNfaCA9IDI7Ci0gICAgX3k0bS0+c3JjX2NfZGVjX3YgPSAxOwotICAgIF95NG0t
PnZweF9mbXQgPSBWUFhfSU1HX0ZNVF9JNDIyMTY7Ci0gICAgX3k0bS0+YnBzID0gMjA7Ci0gICAg
X3k0bS0+Yml0X2RlcHRoID0gMTA7Ci0gICAgX3k0bS0+ZHN0X2NfZGVjX2ggPSBfeTRtLT5zcmNf
Y19kZWNfaDsKLSAgICBfeTRtLT5kc3RfY19kZWNfdiA9IF95NG0tPnNyY19jX2RlY192OwotICAg
IF95NG0tPmRzdF9idWZfcmVhZF9zeiA9IDIgKiAoX3k0bS0+cGljX3cgKiBfeTRtLT5waWNfaCAr
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyICogKChfeTRtLT5waWNfdyArIDEp
IC8gMikgKiBfeTRtLT5waWNfaCk7Ci0gICAgX3k0bS0+YXV4X2J1Zl9zeiA9IF95NG0tPmF1eF9i
dWZfcmVhZF9zeiA9IDA7Ci0gICAgX3k0bS0+Y29udmVydCA9IHk0bV9jb252ZXJ0X251bGw7Cisg
IH0gZWxzZSBpZiAoc3RyY21wKHk0bV9jdHgtPmNocm9tYV90eXBlLCAiNDIycDEwIikgPT0gMCkg
eworICAgIHk0bV9jdHgtPnNyY19jX2RlY19oID0gMjsKKyAgICB5NG1fY3R4LT5zcmNfY19kZWNf
diA9IDE7CisgICAgeTRtX2N0eC0+dnB4X2ZtdCA9IFZQWF9JTUdfRk1UX0k0MjIxNjsKKyAgICB5
NG1fY3R4LT5icHMgPSAyMDsKKyAgICB5NG1fY3R4LT5iaXRfZGVwdGggPSAxMDsKKyAgICB5NG1f
Y3R4LT5kc3RfY19kZWNfaCA9IHk0bV9jdHgtPnNyY19jX2RlY19oOworICAgIHk0bV9jdHgtPmRz
dF9jX2RlY192ID0geTRtX2N0eC0+c3JjX2NfZGVjX3Y7CisgICAgeTRtX2N0eC0+ZHN0X2J1Zl9y
ZWFkX3N6ID0KKyAgICAgICAgMiAqICh5NG1fY3R4LT5waWNfdyAqIHk0bV9jdHgtPnBpY19oICsK
KyAgICAgICAgICAgICAyICogKCh5NG1fY3R4LT5waWNfdyArIDEpIC8gMikgKiB5NG1fY3R4LT5w
aWNfaCk7CisgICAgeTRtX2N0eC0+YXV4X2J1Zl9zeiA9IHk0bV9jdHgtPmF1eF9idWZfcmVhZF9z
eiA9IDA7CisgICAgeTRtX2N0eC0+Y29udmVydCA9IHk0bV9jb252ZXJ0X251bGw7CiAgICAgaWYg
KG9ubHlfNDIwKSB7CiAgICAgICBmcHJpbnRmKHN0ZGVyciwgIlVuc3VwcG9ydGVkIGNvbnZlcnNp
b24gZnJvbSA0MjJwMTAgdG8gNDIwanBlZ1xuIik7CiAgICAgICByZXR1cm4gLTE7CiAgICAgfQot
ICB9IGVsc2UgaWYgKHN0cmNtcChfeTRtLT5jaHJvbWFfdHlwZSwgIjQyMnAxMiIpID09IDApIHsK
LSAgICBfeTRtLT5zcmNfY19kZWNfaCA9IDI7Ci0gICAgX3k0bS0+c3JjX2NfZGVjX3YgPSAxOwot
ICAgIF95NG0tPnZweF9mbXQgPSBWUFhfSU1HX0ZNVF9JNDIyMTY7Ci0gICAgX3k0bS0+YnBzID0g
MjQ7Ci0gICAgX3k0bS0+Yml0X2RlcHRoID0gMTI7Ci0gICAgX3k0bS0+ZHN0X2NfZGVjX2ggPSBf
eTRtLT5zcmNfY19kZWNfaDsKLSAgICBfeTRtLT5kc3RfY19kZWNfdiA9IF95NG0tPnNyY19jX2Rl
Y192OwotICAgIF95NG0tPmRzdF9idWZfcmVhZF9zeiA9IDIgKiAoX3k0bS0+cGljX3cgKiBfeTRt
LT5waWNfaCArCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyICogKChfeTRtLT5w
aWNfdyArIDEpIC8gMikgKiBfeTRtLT5waWNfaCk7Ci0gICAgX3k0bS0+YXV4X2J1Zl9zeiA9IF95
NG0tPmF1eF9idWZfcmVhZF9zeiA9IDA7Ci0gICAgX3k0bS0+Y29udmVydCA9IHk0bV9jb252ZXJ0
X251bGw7CisgIH0gZWxzZSBpZiAoc3RyY21wKHk0bV9jdHgtPmNocm9tYV90eXBlLCAiNDIycDEy
IikgPT0gMCkgeworICAgIHk0bV9jdHgtPnNyY19jX2RlY19oID0gMjsKKyAgICB5NG1fY3R4LT5z
cmNfY19kZWNfdiA9IDE7CisgICAgeTRtX2N0eC0+dnB4X2ZtdCA9IFZQWF9JTUdfRk1UX0k0MjIx
NjsKKyAgICB5NG1fY3R4LT5icHMgPSAyNDsKKyAgICB5NG1fY3R4LT5iaXRfZGVwdGggPSAxMjsK
KyAgICB5NG1fY3R4LT5kc3RfY19kZWNfaCA9IHk0bV9jdHgtPnNyY19jX2RlY19oOworICAgIHk0
bV9jdHgtPmRzdF9jX2RlY192ID0geTRtX2N0eC0+c3JjX2NfZGVjX3Y7CisgICAgeTRtX2N0eC0+
ZHN0X2J1Zl9yZWFkX3N6ID0KKyAgICAgICAgMiAqICh5NG1fY3R4LT5waWNfdyAqIHk0bV9jdHgt
PnBpY19oICsKKyAgICAgICAgICAgICAyICogKCh5NG1fY3R4LT5waWNfdyArIDEpIC8gMikgKiB5
NG1fY3R4LT5waWNfaCk7CisgICAgeTRtX2N0eC0+YXV4X2J1Zl9zeiA9IHk0bV9jdHgtPmF1eF9i
dWZfcmVhZF9zeiA9IDA7CisgICAgeTRtX2N0eC0+Y29udmVydCA9IHk0bV9jb252ZXJ0X251bGw7
CiAgICAgaWYgKG9ubHlfNDIwKSB7CiAgICAgICBmcHJpbnRmKHN0ZGVyciwgIlVuc3VwcG9ydGVk
IGNvbnZlcnNpb24gZnJvbSA0MjJwMTIgdG8gNDIwanBlZ1xuIik7CiAgICAgICByZXR1cm4gLTE7
CiAgICAgfQotICB9IGVsc2UgaWYgKHN0cmNtcChfeTRtLT5jaHJvbWFfdHlwZSwgIjQxMSIpID09
IDApIHsKLSAgICBfeTRtLT5zcmNfY19kZWNfaCA9IDQ7Ci0gICAgX3k0bS0+ZHN0X2NfZGVjX2gg
PSAyOwotICAgIF95NG0tPnNyY19jX2RlY192ID0gMTsKLSAgICBfeTRtLT5kc3RfY19kZWNfdiA9
IDI7Ci0gICAgX3k0bS0+ZHN0X2J1Zl9yZWFkX3N6ID0gX3k0bS0+cGljX3cgKiBfeTRtLT5waWNf
aDsKKyAgfSBlbHNlIGlmIChzdHJjbXAoeTRtX2N0eC0+Y2hyb21hX3R5cGUsICI0MTEiKSA9PSAw
KSB7CisgICAgeTRtX2N0eC0+c3JjX2NfZGVjX2ggPSA0OworICAgIHk0bV9jdHgtPmRzdF9jX2Rl
Y19oID0gMjsKKyAgICB5NG1fY3R4LT5zcmNfY19kZWNfdiA9IDE7CisgICAgeTRtX2N0eC0+ZHN0
X2NfZGVjX3YgPSAyOworICAgIHk0bV9jdHgtPmRzdF9idWZfcmVhZF9zeiA9IHk0bV9jdHgtPnBp
Y193ICogeTRtX2N0eC0+cGljX2g7CiAgICAgLypDaHJvbWEgZmlsdGVyIHJlcXVpcmVkOiByZWFk
IGludG8gdGhlIGF1eCBidWYgZmlyc3QuCiAgICAgICBXZSBuZWVkIHRvIG1ha2UgdHdvIGZpbHRl
ciBwYXNzZXMsIHNvIHdlIG5lZWQgc29tZSBleHRyYSBzcGFjZSBpbiB0aGUKICAgICAgICBhdXgg
YnVmZmVyLiovCi0gICAgX3k0bS0+YXV4X2J1Zl9yZWFkX3N6ID0gMiAqICgoX3k0bS0+cGljX3cg
KyAzKSAvIDQpICogX3k0bS0+cGljX2g7Ci0gICAgX3k0bS0+YXV4X2J1Zl9zeiA9Ci0gICAgICAg
IF95NG0tPmF1eF9idWZfcmVhZF9zeiArICgoX3k0bS0+cGljX3cgKyAxKSAvIDIpICogX3k0bS0+
cGljX2g7Ci0gICAgX3k0bS0+Y29udmVydCA9IHk0bV9jb252ZXJ0XzQxMV80MjBqcGVnOworICAg
IHk0bV9jdHgtPmF1eF9idWZfcmVhZF9zeiA9IDIgKiAoKHk0bV9jdHgtPnBpY193ICsgMykgLyA0
KSAqIHk0bV9jdHgtPnBpY19oOworICAgIHk0bV9jdHgtPmF1eF9idWZfc3ogPQorICAgICAgICB5
NG1fY3R4LT5hdXhfYnVmX3JlYWRfc3ogKyAoKHk0bV9jdHgtPnBpY193ICsgMSkgLyAyKSAqIHk0
bV9jdHgtPnBpY19oOworICAgIHk0bV9jdHgtPmNvbnZlcnQgPSB5NG1fY29udmVydF80MTFfNDIw
anBlZzsKICAgICBmcHJpbnRmKHN0ZGVyciwgIlVuc3VwcG9ydGVkIGNvbnZlcnNpb24gZnJvbSB5
dXYgNDExXG4iKTsKICAgICByZXR1cm4gLTE7Ci0gIH0gZWxzZSBpZiAoc3RyY21wKF95NG0tPmNo
cm9tYV90eXBlLCAiNDQ0IikgPT0gMCkgewotICAgIF95NG0tPnNyY19jX2RlY19oID0gMTsKLSAg
ICBfeTRtLT5zcmNfY19kZWNfdiA9IDE7CisgIH0gZWxzZSBpZiAoc3RyY21wKHk0bV9jdHgtPmNo
cm9tYV90eXBlLCAiNDQ0IikgPT0gMCkgeworICAgIHk0bV9jdHgtPnNyY19jX2RlY19oID0gMTsK
KyAgICB5NG1fY3R4LT5zcmNfY19kZWNfdiA9IDE7CiAgICAgaWYgKG9ubHlfNDIwKSB7Ci0gICAg
ICBfeTRtLT5kc3RfY19kZWNfaCA9IDI7Ci0gICAgICBfeTRtLT5kc3RfY19kZWNfdiA9IDI7Ci0g
ICAgICBfeTRtLT5kc3RfYnVmX3JlYWRfc3ogPSBfeTRtLT5waWNfdyAqIF95NG0tPnBpY19oOwor
ICAgICAgeTRtX2N0eC0+ZHN0X2NfZGVjX2ggPSAyOworICAgICAgeTRtX2N0eC0+ZHN0X2NfZGVj
X3YgPSAyOworICAgICAgeTRtX2N0eC0+ZHN0X2J1Zl9yZWFkX3N6ID0geTRtX2N0eC0+cGljX3cg
KiB5NG1fY3R4LT5waWNfaDsKICAgICAgIC8qQ2hyb21hIGZpbHRlciByZXF1aXJlZDogcmVhZCBp
bnRvIHRoZSBhdXggYnVmIGZpcnN0LgogICAgICAgICBXZSBuZWVkIHRvIG1ha2UgdHdvIGZpbHRl
ciBwYXNzZXMsIHNvIHdlIG5lZWQgc29tZSBleHRyYSBzcGFjZSBpbiB0aGUKICAgICAgICAgIGF1
eCBidWZmZXIuKi8KLSAgICAgIF95NG0tPmF1eF9idWZfcmVhZF9zeiA9IDIgKiBfeTRtLT5waWNf
dyAqIF95NG0tPnBpY19oOwotICAgICAgX3k0bS0+YXV4X2J1Zl9zeiA9Ci0gICAgICAgICAgX3k0
bS0+YXV4X2J1Zl9yZWFkX3N6ICsgKChfeTRtLT5waWNfdyArIDEpIC8gMikgKiBfeTRtLT5waWNf
aDsKLSAgICAgIF95NG0tPmNvbnZlcnQgPSB5NG1fY29udmVydF80NDRfNDIwanBlZzsKKyAgICAg
IHk0bV9jdHgtPmF1eF9idWZfcmVhZF9zeiA9IDIgKiB5NG1fY3R4LT5waWNfdyAqIHk0bV9jdHgt
PnBpY19oOworICAgICAgeTRtX2N0eC0+YXV4X2J1Zl9zeiA9IHk0bV9jdHgtPmF1eF9idWZfcmVh
ZF9zeiArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCh5NG1fY3R4LT5waWNfdyArIDEp
IC8gMikgKiB5NG1fY3R4LT5waWNfaDsKKyAgICAgIHk0bV9jdHgtPmNvbnZlcnQgPSB5NG1fY29u
dmVydF80NDRfNDIwanBlZzsKICAgICB9IGVsc2UgewotICAgICAgX3k0bS0+dnB4X2ZtdCA9IFZQ
WF9JTUdfRk1UX0k0NDQ7Ci0gICAgICBfeTRtLT5icHMgPSAyNDsKLSAgICAgIF95NG0tPmRzdF9j
X2RlY19oID0gX3k0bS0+c3JjX2NfZGVjX2g7Ci0gICAgICBfeTRtLT5kc3RfY19kZWNfdiA9IF95
NG0tPnNyY19jX2RlY192OwotICAgICAgX3k0bS0+ZHN0X2J1Zl9yZWFkX3N6ID0gMyAqIF95NG0t
PnBpY193ICogX3k0bS0+cGljX2g7CisgICAgICB5NG1fY3R4LT52cHhfZm10ID0gVlBYX0lNR19G
TVRfSTQ0NDsKKyAgICAgIHk0bV9jdHgtPmJwcyA9IDI0OworICAgICAgeTRtX2N0eC0+ZHN0X2Nf
ZGVjX2ggPSB5NG1fY3R4LT5zcmNfY19kZWNfaDsKKyAgICAgIHk0bV9jdHgtPmRzdF9jX2RlY192
ID0geTRtX2N0eC0+c3JjX2NfZGVjX3Y7CisgICAgICB5NG1fY3R4LT5kc3RfYnVmX3JlYWRfc3og
PSAzICogeTRtX2N0eC0+cGljX3cgKiB5NG1fY3R4LT5waWNfaDsKICAgICAgIC8qTmF0aXZlbHkg
c3VwcG9ydGVkOiBubyBjb252ZXJzaW9uIHJlcXVpcmVkLiovCi0gICAgICBfeTRtLT5hdXhfYnVm
X3N6ID0gX3k0bS0+YXV4X2J1Zl9yZWFkX3N6ID0gMDsKLSAgICAgIF95NG0tPmNvbnZlcnQgPSB5
NG1fY29udmVydF9udWxsOworICAgICAgeTRtX2N0eC0+YXV4X2J1Zl9zeiA9IHk0bV9jdHgtPmF1
eF9idWZfcmVhZF9zeiA9IDA7CisgICAgICB5NG1fY3R4LT5jb252ZXJ0ID0geTRtX2NvbnZlcnRf
bnVsbDsKICAgICB9Ci0gIH0gZWxzZSBpZiAoc3RyY21wKF95NG0tPmNocm9tYV90eXBlLCAiNDQ0
cDEwIikgPT0gMCkgewotICAgIF95NG0tPnNyY19jX2RlY19oID0gMTsKLSAgICBfeTRtLT5zcmNf
Y19kZWNfdiA9IDE7Ci0gICAgX3k0bS0+dnB4X2ZtdCA9IFZQWF9JTUdfRk1UX0k0NDQxNjsKLSAg
ICBfeTRtLT5icHMgPSAzMDsKLSAgICBfeTRtLT5iaXRfZGVwdGggPSAxMDsKLSAgICBfeTRtLT5k
c3RfY19kZWNfaCA9IF95NG0tPnNyY19jX2RlY19oOwotICAgIF95NG0tPmRzdF9jX2RlY192ID0g
X3k0bS0+c3JjX2NfZGVjX3Y7Ci0gICAgX3k0bS0+ZHN0X2J1Zl9yZWFkX3N6ID0gMiAqIDMgKiBf
eTRtLT5waWNfdyAqIF95NG0tPnBpY19oOwotICAgIF95NG0tPmF1eF9idWZfc3ogPSBfeTRtLT5h
dXhfYnVmX3JlYWRfc3ogPSAwOwotICAgIF95NG0tPmNvbnZlcnQgPSB5NG1fY29udmVydF9udWxs
OworICB9IGVsc2UgaWYgKHN0cmNtcCh5NG1fY3R4LT5jaHJvbWFfdHlwZSwgIjQ0NHAxMCIpID09
IDApIHsKKyAgICB5NG1fY3R4LT5zcmNfY19kZWNfaCA9IDE7CisgICAgeTRtX2N0eC0+c3JjX2Nf
ZGVjX3YgPSAxOworICAgIHk0bV9jdHgtPnZweF9mbXQgPSBWUFhfSU1HX0ZNVF9JNDQ0MTY7Cisg
ICAgeTRtX2N0eC0+YnBzID0gMzA7CisgICAgeTRtX2N0eC0+Yml0X2RlcHRoID0gMTA7CisgICAg
eTRtX2N0eC0+ZHN0X2NfZGVjX2ggPSB5NG1fY3R4LT5zcmNfY19kZWNfaDsKKyAgICB5NG1fY3R4
LT5kc3RfY19kZWNfdiA9IHk0bV9jdHgtPnNyY19jX2RlY192OworICAgIHk0bV9jdHgtPmRzdF9i
dWZfcmVhZF9zeiA9IDIgKiAzICogeTRtX2N0eC0+cGljX3cgKiB5NG1fY3R4LT5waWNfaDsKKyAg
ICB5NG1fY3R4LT5hdXhfYnVmX3N6ID0geTRtX2N0eC0+YXV4X2J1Zl9yZWFkX3N6ID0gMDsKKyAg
ICB5NG1fY3R4LT5jb252ZXJ0ID0geTRtX2NvbnZlcnRfbnVsbDsKICAgICBpZiAob25seV80MjAp
IHsKICAgICAgIGZwcmludGYoc3RkZXJyLCAiVW5zdXBwb3J0ZWQgY29udmVyc2lvbiBmcm9tIDQ0
NHAxMCB0byA0MjBqcGVnXG4iKTsKICAgICAgIHJldHVybiAtMTsKICAgICB9Ci0gIH0gZWxzZSBp
ZiAoc3RyY21wKF95NG0tPmNocm9tYV90eXBlLCAiNDQ0cDEyIikgPT0gMCkgewotICAgIF95NG0t
PnNyY19jX2RlY19oID0gMTsKLSAgICBfeTRtLT5zcmNfY19kZWNfdiA9IDE7Ci0gICAgX3k0bS0+
dnB4X2ZtdCA9IFZQWF9JTUdfRk1UX0k0NDQxNjsKLSAgICBfeTRtLT5icHMgPSAzNjsKLSAgICBf
eTRtLT5iaXRfZGVwdGggPSAxMjsKLSAgICBfeTRtLT5kc3RfY19kZWNfaCA9IF95NG0tPnNyY19j
X2RlY19oOwotICAgIF95NG0tPmRzdF9jX2RlY192ID0gX3k0bS0+c3JjX2NfZGVjX3Y7Ci0gICAg
X3k0bS0+ZHN0X2J1Zl9yZWFkX3N6ID0gMiAqIDMgKiBfeTRtLT5waWNfdyAqIF95NG0tPnBpY19o
OwotICAgIF95NG0tPmF1eF9idWZfc3ogPSBfeTRtLT5hdXhfYnVmX3JlYWRfc3ogPSAwOwotICAg
IF95NG0tPmNvbnZlcnQgPSB5NG1fY29udmVydF9udWxsOworICB9IGVsc2UgaWYgKHN0cmNtcCh5
NG1fY3R4LT5jaHJvbWFfdHlwZSwgIjQ0NHAxMiIpID09IDApIHsKKyAgICB5NG1fY3R4LT5zcmNf
Y19kZWNfaCA9IDE7CisgICAgeTRtX2N0eC0+c3JjX2NfZGVjX3YgPSAxOworICAgIHk0bV9jdHgt
PnZweF9mbXQgPSBWUFhfSU1HX0ZNVF9JNDQ0MTY7CisgICAgeTRtX2N0eC0+YnBzID0gMzY7Cisg
ICAgeTRtX2N0eC0+Yml0X2RlcHRoID0gMTI7CisgICAgeTRtX2N0eC0+ZHN0X2NfZGVjX2ggPSB5
NG1fY3R4LT5zcmNfY19kZWNfaDsKKyAgICB5NG1fY3R4LT5kc3RfY19kZWNfdiA9IHk0bV9jdHgt
PnNyY19jX2RlY192OworICAgIHk0bV9jdHgtPmRzdF9idWZfcmVhZF9zeiA9IDIgKiAzICogeTRt
X2N0eC0+cGljX3cgKiB5NG1fY3R4LT5waWNfaDsKKyAgICB5NG1fY3R4LT5hdXhfYnVmX3N6ID0g
eTRtX2N0eC0+YXV4X2J1Zl9yZWFkX3N6ID0gMDsKKyAgICB5NG1fY3R4LT5jb252ZXJ0ID0geTRt
X2NvbnZlcnRfbnVsbDsKICAgICBpZiAob25seV80MjApIHsKICAgICAgIGZwcmludGYoc3RkZXJy
LCAiVW5zdXBwb3J0ZWQgY29udmVyc2lvbiBmcm9tIDQ0NHAxMiB0byA0MjBqcGVnXG4iKTsKICAg
ICAgIHJldHVybiAtMTsKICAgICB9Ci0gIH0gZWxzZSBpZiAoc3RyY21wKF95NG0tPmNocm9tYV90
eXBlLCAibW9ubyIpID09IDApIHsKLSAgICBfeTRtLT5zcmNfY19kZWNfaCA9IF95NG0tPnNyY19j
X2RlY192ID0gMDsKLSAgICBfeTRtLT5kc3RfY19kZWNfaCA9IF95NG0tPmRzdF9jX2RlY192ID0g
MjsKLSAgICBfeTRtLT5kc3RfYnVmX3JlYWRfc3ogPSBfeTRtLT5waWNfdyAqIF95NG0tPnBpY19o
OworICB9IGVsc2UgaWYgKHN0cmNtcCh5NG1fY3R4LT5jaHJvbWFfdHlwZSwgIm1vbm8iKSA9PSAw
KSB7CisgICAgeTRtX2N0eC0+c3JjX2NfZGVjX2ggPSB5NG1fY3R4LT5zcmNfY19kZWNfdiA9IDA7
CisgICAgeTRtX2N0eC0+ZHN0X2NfZGVjX2ggPSB5NG1fY3R4LT5kc3RfY19kZWNfdiA9IDI7Cisg
ICAgeTRtX2N0eC0+ZHN0X2J1Zl9yZWFkX3N6ID0geTRtX2N0eC0+cGljX3cgKiB5NG1fY3R4LT5w
aWNfaDsKICAgICAvKk5vIGV4dHJhIHNwYWNlIHJlcXVpcmVkLCBidXQgd2UgbmVlZCB0byBjbGVh
ciB0aGUgY2hyb21hIHBsYW5lcy4qLwotICAgIF95NG0tPmF1eF9idWZfc3ogPSBfeTRtLT5hdXhf
YnVmX3JlYWRfc3ogPSAwOwotICAgIF95NG0tPmNvbnZlcnQgPSB5NG1fY29udmVydF9tb25vXzQy
MGpwZWc7CisgICAgeTRtX2N0eC0+YXV4X2J1Zl9zeiA9IHk0bV9jdHgtPmF1eF9idWZfcmVhZF9z
eiA9IDA7CisgICAgeTRtX2N0eC0+Y29udmVydCA9IHk0bV9jb252ZXJ0X21vbm9fNDIwanBlZzsK
ICAgfSBlbHNlIHsKLSAgICBmcHJpbnRmKHN0ZGVyciwgIlVua25vd24gY2hyb21hIHNhbXBsaW5n
IHR5cGU6ICVzXG4iLCBfeTRtLT5jaHJvbWFfdHlwZSk7CisgICAgZnByaW50ZihzdGRlcnIsICJV
bmtub3duIGNocm9tYSBzYW1wbGluZyB0eXBlOiAlc1xuIiwgeTRtX2N0eC0+Y2hyb21hX3R5cGUp
OwogICAgIHJldHVybiAtMTsKICAgfQogICAvKlRoZSBzaXplIG9mIHRoZSBmaW5hbCBmcmFtZSBi
dWZmZXJzIGlzIGFsd2F5cyBjb21wdXRlZCBmcm9tIHRoZQogICAgICBkZXN0aW5hdGlvbiBjaHJv
bWEgZGVjaW1hdGlvbiB0eXBlLiovCi0gIF95NG0tPmRzdF9idWZfc3ogPQotICAgICAgX3k0bS0+
cGljX3cgKiBfeTRtLT5waWNfaCArCi0gICAgICAyICogKChfeTRtLT5waWNfdyArIF95NG0tPmRz
dF9jX2RlY19oIC0gMSkgLyBfeTRtLT5kc3RfY19kZWNfaCkgKgotICAgICAgICAgICgoX3k0bS0+
cGljX2ggKyBfeTRtLT5kc3RfY19kZWNfdiAtIDEpIC8gX3k0bS0+ZHN0X2NfZGVjX3YpOwotICBp
ZiAoX3k0bS0+Yml0X2RlcHRoID09IDgpCi0gICAgX3k0bS0+ZHN0X2J1ZiA9ICh1bnNpZ25lZCBj
aGFyICopbWFsbG9jKF95NG0tPmRzdF9idWZfc3opOworICB5NG1fY3R4LT5kc3RfYnVmX3N6ID0K
KyAgICAgIHk0bV9jdHgtPnBpY193ICogeTRtX2N0eC0+cGljX2ggKworICAgICAgMiAqICgoeTRt
X2N0eC0+cGljX3cgKyB5NG1fY3R4LT5kc3RfY19kZWNfaCAtIDEpIC8geTRtX2N0eC0+ZHN0X2Nf
ZGVjX2gpICoKKyAgICAgICAgICAoKHk0bV9jdHgtPnBpY19oICsgeTRtX2N0eC0+ZHN0X2NfZGVj
X3YgLSAxKSAvIHk0bV9jdHgtPmRzdF9jX2RlY192KTsKKyAgaWYgKHk0bV9jdHgtPmJpdF9kZXB0
aCA9PSA4KQorICAgIHk0bV9jdHgtPmRzdF9idWYgPSAodW5zaWduZWQgY2hhciAqKW1hbGxvYyh5
NG1fY3R4LT5kc3RfYnVmX3N6KTsKICAgZWxzZQotICAgIF95NG0tPmRzdF9idWYgPSAodW5zaWdu
ZWQgY2hhciAqKW1hbGxvYygyICogX3k0bS0+ZHN0X2J1Zl9zeik7CisgICAgeTRtX2N0eC0+ZHN0
X2J1ZiA9ICh1bnNpZ25lZCBjaGFyICopbWFsbG9jKDIgKiB5NG1fY3R4LT5kc3RfYnVmX3N6KTsK
IAotICBpZiAoX3k0bS0+YXV4X2J1Zl9zeiA+IDApCi0gICAgX3k0bS0+YXV4X2J1ZiA9ICh1bnNp
Z25lZCBjaGFyICopbWFsbG9jKF95NG0tPmF1eF9idWZfc3opOworICBpZiAoeTRtX2N0eC0+YXV4
X2J1Zl9zeiA+IDApCisgICAgeTRtX2N0eC0+YXV4X2J1ZiA9ICh1bnNpZ25lZCBjaGFyICopbWFs
bG9jKHk0bV9jdHgtPmF1eF9idWZfc3opOwogICByZXR1cm4gMDsKIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291
cmNlL2xpYnZweC95NG1pbnB1dC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJ2cHgvc291cmNlL2xpYnZweC95NG1pbnB1dC5oCmluZGV4IGE0YThi
MThkYzUzZDhkNTIyZmM5NTBiOWU0OTAxNjU2YmJiNmIzOGEuLjU3Mzc1MGQ3NDk5NjAwOTkzZGZi
ZDcxZTk0Mjk2NjYzODk3ZTAxOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlidnB4L3NvdXJjZS9saWJ2cHgveTRtaW5wdXQuaAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnZw
eC9zb3VyY2UvbGlidnB4L3k0bWlucHV0LmgKQEAgLTU2LDggKzU2LDE2IEBAIHN0cnVjdCB5NG1f
aW5wdXQgewogICB1bnNpZ25lZCBpbnQgYml0X2RlcHRoOwogfTsKIAotaW50IHk0bV9pbnB1dF9v
cGVuKHk0bV9pbnB1dCAqX3k0bSwgRklMRSAqX2ZpbiwgY2hhciAqX3NraXAsIGludCBfbnNraXAs
Ci0gICAgICAgICAgICAgICAgICAgaW50IG9ubHlfNDIwKTsKKy8qKgorICogT3BlbiB0aGUgaW5w
dXQgZmlsZSwgdHJlYXRpbmcgaXQgYXMgWTRNLiB8eTRtX2N0eHwgaXMgZmlsbGVkIGluIGFmdGVy
CisgKiByZWFkaW5nIGl0LiBUaGUgfHNraXBfYnVmZmVyfCBpbmRpY2F0ZXMgYnl0ZXMgdGhhdCB3
ZXJlIHByZXZpb3VzbHkgcmVhZAorICogZnJvbSB8ZmlsZXwsIHRvIGRvIGlucHV0LXR5cGUgZGV0
ZWN0aW9uOyB0aGlzIGJ1ZmZlciB3aWxsIGJlIHJlYWQgYmVmb3JlCisgKiB0aGUgfGZpbGV8IGlz
IHJlYWQuIEl0IGlzIG9mIHNpemUgfG51bV9za2lwfCwgd2hpY2ggKm11c3QqIGJlIDggb3IgbGVz
cy4KKyAqCisgKiBSZXR1cm5zIDAgb24gc3VjY2VzcywgLTEgb24gZmFpbHVyZS4KKyAqLworaW50
IHk0bV9pbnB1dF9vcGVuKHk0bV9pbnB1dCAqeTRtX2N0eCwgRklMRSAqZmlsZSwgY2hhciAqc2tp
cF9idWZmZXIsCisgICAgICAgICAgICAgICAgICAgaW50IG51bV9za2lwLCBpbnQgb25seV80MjAp
Owogdm9pZCB5NG1faW5wdXRfY2xvc2UoeTRtX2lucHV0ICpfeTRtKTsKIGludCB5NG1faW5wdXRf
ZmV0Y2hfZnJhbWUoeTRtX2lucHV0ICpfeTRtLCBGSUxFICpfZmluLCB2cHhfaW1hZ2VfdCAqaW1n
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL2xpYndlYnJ0Yy54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL2xp
YndlYnJ0Yy54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDNhYzYwOTQzMGY4MGRkNDQz
NWUxMmM3NGRmOTllMjAxOWEwNmU5MjguLmNhZTEzZDFmNDc2ZDNjYTEwYWZjMmIzODMwNGRmY2Q1
MDBjYmI1YmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9saWJ3ZWJy
dGMueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvbGlid2VicnRjLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTIwNDAsNiArMjA0
MCw4IEBACiAJCTQxQkEwNEU2MjE2NTk5MjgwMEI1MjdFMCAvKiB0aHJlYWRpbmcuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxNDUwMjA4MjE1MkUwMUIw
MDMzQjREMyAvKiB0aHJlYWRpbmcuaCAqLzsgfTsKIAkJNDFCQTA0RTcyMTY1OTkyODAwQjUyN0Uw
IC8qIHZwOF9lbnRyb3B5bW9kZWRhdGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDQxNDUwMjBBMjE1MkUwMUIwMDMzQjREMyAvKiB2cDhfZW50cm9weW1v
ZGVkYXRhLmggKi87IH07CiAJCTQxQkEwNEU4MjE2NTk5MjgwMEI1MjdFMCAvKiB2cDhfc2tpbl9k
ZXRlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDQxNDUwMjA2MjE1MkUwMUIwMDMzQjREMyAvKiB2cDhfc2tpbl9kZXRlY3Rpb24uaCAqLzsgfTsK
KwkJNDFCQUUwRDgyNjZFMDMwRDAwNERCNkFBIC8qIHZwOV9leHRfcmF0ZWN0cmwuYyBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxQkFFMEQ2MjY2RTAzMEMw
MDREQjZBQSAvKiB2cDlfZXh0X3JhdGVjdHJsLmMgKi87IH07CisJCTQxQkFFMEQ5MjY2RTAzMEQw
MDREQjZBQSAvKiB2cDlfZXh0X3JhdGVjdHJsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA0MUJBRTBENzI2NkUwMzBEMDA0REI2QUEgLyogdnA5X2V4dF9y
YXRlY3RybC5oICovOyB9OwogCQk0MUJBRTNDMDIxMkUyQzVCMDBFMjI0ODIgLyogdnB4X3RocmVh
ZC5jIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEzMzBB
MzkyMTJFMkMzNjAwMjgwOTM5IC8qIHZweF90aHJlYWQuYyAqLzsgfTsKIAkJNDFCQUUzQzEyMTJF
MkM1QjAwRTIyNDgyIC8qIHZweF90aHJlYWQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDQxMzMwQTM2MjEyRTJDMzUwMDI4MDkzOSAvKiB2cHhfdGhyZWFk
LmggKi87IH07CiAJCTQxQkFFM0MyMjEyRTJDNUIwMEUyMjQ4MiAvKiB2cHhfd3JpdGVfeXV2X2Zy
YW1lLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTMz
MEEzNzIxMkUyQzM2MDAyODA5MzkgLyogdnB4X3dyaXRlX3l1dl9mcmFtZS5jICovOyB9OwpAQCAt
NjM5MCw2ICs2MzkyLDggQEAKIAkJNDFBMzkyMEUxRUZDNEFGRTAwQzQ1MTZBIC8qIHJhbmRfZXh0
cmEuYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5jOyBwYXRoID0gcmFuZF9leHRyYS5jOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MUEzOTIwRjFFRkM0QUZFMDBDNDUxNkEgLyogd2lu
ZG93cy5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmM7IHBhdGggPSB3aW5kb3dzLmM7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxQTM5MjE4MUVGQzVBQjgwMEM0NTE2QSAvKiB4MjU1
MTktYXNtLWFybS5TICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5hc207IHBhdGggPSAieDI1NTE5LWFz
bS1hcm0uUyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQkFFMEQ2MjY2RTAzMEMw
MDREQjZBQSAvKiB2cDlfZXh0X3JhdGVjdHJsLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsg
cGF0aCA9IHZwOV9leHRfcmF0ZWN0cmwuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDFCQUUwRDcyNjZFMDMwRDAwNERCNkFBIC8qIHZwOV9leHRfcmF0ZWN0cmwuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gdnA5X2V4dF9yYXRlY3RybC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk0MUJBRTNDNTIxMkUyRDhGMDBFMjI0ODIgLyogaGlnaGJkX2xvb3Bm
aWx0ZXJfc3NlMi5jICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmM7IHBhdGggPSBoaWdoYmRfbG9vcGZpbHRlcl9zc2UyLmM7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxQkFFM0M2MjEyRTJEOEYwMEUyMjQ4MiAvKiBo
aWdoYmRfaW50cmFwcmVkX2ludHJpbl9zc2UyLmMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsgcGF0aCA9IGhpZ2hiZF9pbnRy
YXByZWRfaW50cmluX3NzZTIuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDFCQUUz
QzcyMTJFMkQ5MDAwRTIyNDgyIC8qIGhpZ2hiZF9pZGN0NHg0X2FkZF9zc2U0LmMgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuYzsg
cGF0aCA9IGhpZ2hiZF9pZGN0NHg0X2FkZF9zc2U0LmM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CkBAIC05NDcyLDYgKzk0NzYsOCBAQAogCQkJCTQxNDAzNjUwMjRBQTMwQTUwMEJDRTlCMiAv
KiB2cDlfZXRocmVhZC5oICovLAogCQkJCTQxNDAzNjcwMjRBQTMwQUQwMEJDRTlCMiAvKiB2cDlf
ZXh0ZW5kLmMgKi8sCiAJCQkJNDE0MDM2NEUyNEFBMzBBNTAwQkNFOUIyIC8qIHZwOV9leHRlbmQu
aCAqLywKKwkJCQk0MUJBRTBENjI2NkUwMzBDMDA0REI2QUEgLyogdnA5X2V4dF9yYXRlY3RybC5j
ICovLAorCQkJCTQxQkFFMEQ3MjY2RTAzMEQwMDREQjZBQSAvKiB2cDlfZXh0X3JhdGVjdHJsLmgg
Ki8sCiAJCQkJNDE0MDM2ODEyNEFBMzBCNDAwQkNFOUIyIC8qIHZwOV9maXJzdHBhc3MuYyAqLywK
IAkJCQk0MTQwMzY4MzI0QUEzMEI1MDBCQ0U5QjIgLyogdnA5X2ZpcnN0cGFzcy5oICovLAogCQkJ
CTQxNDAzNjg4MjRBQTMwQjYwMEJDRTlCMiAvKiB2cDlfZnJhbWVfc2NhbGUuYyAqLywKQEAgLTE1
NDAxLDYgKzE1NDA3LDcgQEAKIAkJCQk0MTQwMzc1NTI0QUEzMERBMDBCQ0U5QjIgLyogdnA5X212
cmVmX2NvbW1vbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDE0MDM2QjgyNEFBMzBCNzAwQkNFOUIy
IC8qIHZwOV9ub2lzZV9lc3RpbWF0ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDE0MDM2QjkyNEFB
MzBCNzAwQkNFOUIyIC8qIHZwOV9ub25fZ3JlZWR5X212LmggaW4gSGVhZGVycyAqLywKKwkJCQk0
MUJBRTBEOTI2NkUwMzBEMDA0REI2QUEgLyogdnA5X2V4dF9yYXRlY3RybC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJNDE0MDM3M0IyNEFBMzBEQTAwQkNFOUIyIC8qIHZwOV9vbnl4Y19pbnQuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTQxNDAzNkI3MjRBQTMwQjcwMEJDRTlCMiAvKiB2cDlfcGFydGl0aW9u
X21vZGVscy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDE0MDM2QkEyNEFBMzBCNzAwQkNFOUIyIC8q
IHZwOV9waWNrbHBmLmggaW4gSGVhZGVycyAqLywKQEAgLTE3NTQwLDYgKzE3NTQ3LDcgQEAKIAkJ
CQk0MTQwMzZBODI0QUEzMEI3MDBCQ0U5QjIgLyogdnA5X2FxXzM2MC5jIGluIFNvdXJjZXMgKi8s
CiAJCQkJNDE0MDM2OUMyNEFBMzBCNjAwQkNFOUIyIC8qIHZwOV9hcV9jb21wbGV4aXR5LmMgaW4g
U291cmNlcyAqLywKIAkJCQk0MTQwMzZBMDI0QUEzMEI2MDBCQ0U5QjIgLyogdnA5X2FxX2N5Y2xp
Y3JlZnJlc2guYyBpbiBTb3VyY2VzICovLAorCQkJCTQxQkFFMEQ4MjY2RTAzMEQwMDREQjZBQSAv
KiB2cDlfZXh0X3JhdGVjdHJsLmMgaW4gU291cmNlcyAqLywKIAkJCQk0MTQwMzZDODI0QUEzMEI3
MDBCQ0U5QjIgLyogdnA5X2FxX3ZhcmlhbmNlLmMgaW4gU291cmNlcyAqLywKIAkJCQk0MTQwMzZE
NTI0QUEzMEI3MDBCQ0U5QjIgLyogdnA5X2JpdHN0cmVhbS5jIGluIFNvdXJjZXMgKi8sCiAJCQkJ
NDE0MDM3MjgyNEFBMzBEOTAwQkNFOUIyIC8qIHZwOV9ibG9ja2QuYyBpbiBTb3VyY2VzICovLAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>