<?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>162859</bug_id>
          
          <creation_ts>2016-10-02 09:29:54 -0700</creation_ts>
          <short_desc>Rename ExceptionCode-based exception handling to &quot;legacy&quot;</short_desc>
          <delta_ts>2016-10-02 14:31:05 -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>Bindings</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Darin Adler">darin</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1235722</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2016-10-02 09:29:54 -0700</bug_when>
    <thetext>Rename ExceptionCode-based exception handling to &quot;legacy&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1235723</commentid>
    <comment_count>1</comment_count>
      <attachid>290469</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2016-10-02 09:50:57 -0700</bug_when>
    <thetext>Created attachment 290469
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1235724</commentid>
    <comment_count>2</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2016-10-02 09:51:30 -0700</bug_when>
    <thetext>Chris, this is the rename we talked about on Friday.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1235743</commentid>
    <comment_count>3</comment_count>
      <attachid>290469</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-02 14:31:01 -0700</bug_when>
    <thetext>Comment on attachment 290469
Patch

Clearing flags on attachment: 290469

Committed r206723: &lt;http://trac.webkit.org/changeset/206723&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1235744</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-02 14:31:05 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>290469</attachid>
            <date>2016-10-02 09:50:57 -0700</date>
            <delta_ts>2016-10-02 14:31:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-162859-20161002094749.patch</filename>
            <type>text/plain</type>
            <size>452019</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA2NzE4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjI5NGNhNzM1N2I5ODIx
OWY3MmM1NDhmN2QyNzUxZDUwZTRiZDQwNy4uMmZmNmNmZTMxYTEyNzU1Y2RkOTg1YTljOTcwZmIy
N2Q2ZWE1NzhhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzMiBAQAorMjAxNi0xMC0wMiAgRGFy
aW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVuYW1lIEV4Y2VwdGlvbkNv
ZGUtYmFzZWQgZXhjZXB0aW9uIGhhbmRsaW5nIHRvICJsZWdhY3kiCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjI4NTkKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSYWlzZXNFeGNlcHRpb24gaXMgbm93IE1h
eVRocm93TGVnYWN5RXhjZXB0aW9uLgorCisgICAgICAgIEEgZm9sbG93LXVwIHBhdGNoIHNvb24g
d2lsbCBhZGQgTWF5VGhyb3dFeGNlcHRpb24gZm9yIHRoZSBuZXcgc3R5bGUsCisgICAgICAgIHdo
ZXJlIHdlIHVzZSBFeGNlcHRpb25Pcjw+IGFzIHRoZSByZXR1cm4gdHlwZSBpbnN0ZWFkIG9mIGFu
IEV4Y2VwdGlvbkNvZGUKKyAgICAgICAgb3V0IGFyZ3VtZW50LgorCisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIFJlbW92ZWQgdGhlIHF1b3Rh
dGlvbiBtYXJrcyBmcm9tIHRoZSBzeW50YXggb2JqZWN0LT57UHJvcGVydHlOYW1lfSBzbyB0aGUK
KyAgICAgICAgcmVuYW1pbmcgc2NyaXB0IGNvdWxkIGhhbmRsZSBpdC4gVHdlYWtlZCB2YXJpb3Vz
IGNvbW1lbnRzIGFuZCBsb2dpYyBmb3IgY2xhcml0eS4KKyAgICAgICAgQ2hhbmdlZCB0byB1c2Ug
dGhlIHBlcmwgInggaWYgeSIgc3ludGF4IGZvciBicmV2aXR5IGluIG1hbnkgcGxhY2VzLgorICAg
ICAgICBSZW5hbWVkIHdpdGggdGhlIHNjcmlwdCBhbmQgYnkgaGFuZC4gQWRkZWQgY29kZSB0byBz
a2lwIGluY2x1ZGluZyB0aGUgc2FtZSBoZWFkZXIKKyAgICAgICAgaW4gYm90aCB0aGUgaW1wbGVt
ZW50YXRpb24gZmlsZSBhbmQgdGhlIGhlYWRlciwganVzdCB0byBtYWtlIGdlbmVyYXRlZCBiaW5k
aW5ncworICAgICAgICBzbGlnaHRseSBzbWFsbGVyIGFuZCBmYXN0ZXIgdG8gY29tcGlsZS4gVXNl
ZCAidXNpbmciIGluc3RlYWQgb2YgInR5cGVkZWYiLgorCisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy9JRExBdHRyaWJ1dGVzLnR4dDogVXBkYXRlZCBmcm9tIG9sZCBuYW1lcyB0byBuZXcgb25l
cy4KKworICAgICAgICAqIE1vZHVsZXMvYXBwbGVwYXkvQXBwbGVQYXlTZXNzaW9uLmlkbDoKKyAg
ICAgICAgKiBNb2R1bGVzL2VuY3J5cHRlZG1lZGlhL01lZGlhS2V5U2Vzc2lvbi5pZGw6CisgICAg
ICAgICogTW9kdWxlcy9lbmNyeXB0ZWRtZWRpYS9NZWRpYUtleXMuaWRsOgorICAgICAgICAqIE1v
ZHVsZXMvZmV0Y2gvRmV0Y2hIZWFkZXJzLmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2ZldGNoL0Zl
dGNoUmVxdWVzdC5pZGw6CisgICAgICAgICogTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmlk
bDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsOgorICAgICAgICAq
IE1vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlLmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2lu
ZGV4ZWRkYi9JREJGYWN0b3J5LmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJJ
bmRleC5pZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UmFuZ2UuaWRsOgor
ICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQk9iamVjdFN0b3JlLmlkbDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9JREJSZXF1ZXN0LmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2lu
ZGV4ZWRkYi9JREJUcmFuc2FjdGlvbi5pZGw6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXNvdXJj
ZS9NZWRpYVNvdXJjZS5pZGw6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXNvdXJjZS9Tb3VyY2VC
dWZmZXIuaWRsOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFEZXZpY2VzLmlk
bDoKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RUTUZTZW5kZXIuaWRsOgorICAg
ICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5uZWwuaWRsOgorICAgICAgICAq
IE1vZHVsZXMvbWVkaWFzdHJlYW0vUlRDSWNlQ2FuZGlkYXRlLmlkbDoKKyAgICAgICAgKiBNb2R1
bGVzL21lZGlhc3RyZWFtL1JUQ1BlZXJDb25uZWN0aW9uLmlkbDoKKyAgICAgICAgKiBNb2R1bGVz
L21lZGlhc3RyZWFtL1JUQ1J0cFNlbmRlci5pZGw6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0
cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb24uaWRsOgorICAgICAgICAqIE1vZHVsZXMvbmF2aWdh
dG9yY29udGVudHV0aWxzL05hdmlnYXRvckNvbnRlbnRVdGlscy5pZGw6CisgICAgICAgICogTW9k
dWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5pZGw6CisgICAgICAgICogTW9k
dWxlcy93ZWJhdWRpby9BbmFseXNlck5vZGUuaWRsOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVk
aW8vQXVkaW9CdWZmZXIuaWRsOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vQXVkaW9CdWZm
ZXJTb3VyY2VOb2RlLmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvQ29udGV4
dC5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9BdWRpb05vZGUuaWRsOgorICAgICAg
ICAqIE1vZHVsZXMvd2ViYXVkaW8vQ29udm9sdmVyTm9kZS5pZGw6CisgICAgICAgICogTW9kdWxl
cy93ZWJhdWRpby9PZmZsaW5lQXVkaW9Db250ZXh0LmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL3dl
YmF1ZGlvL09zY2lsbGF0b3JOb2RlLmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNl
L0RPTVdpbmRvd1dlYkRhdGFiYXNlLmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNl
L1NRTFJlc3VsdFNldC5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tl
dC5pZGw6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RJbXBsZW1lbnRzLmlk
bDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdEludGVyZmFjZS5pZGw6Cisg
ICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3ROYW1lZENvbnN0cnVjdG9yLmlkbDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE5vbmRldGVybWluaXN0aWMuaWRs
OgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbDoKKyAgICAgICAg
KiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdFN1cHBsZW1lbnRhbC5pZGw6CisgICAgICAgICog
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RUeXBlZGVmcy5pZGw6CisgICAgICAgICogY3NzL0NT
U0NoYXJzZXRSdWxlLmlkbDoKKyAgICAgICAgKiBjc3MvQ1NTTWVkaWFSdWxlLmlkbDoKKyAgICAg
ICAgKiBjc3MvQ1NTUHJpbWl0aXZlVmFsdWUuaWRsOgorICAgICAgICAqIGNzcy9DU1NSdWxlLmlk
bDoKKyAgICAgICAgKiBjc3MvQ1NTU3R5bGVEZWNsYXJhdGlvbi5pZGw6CisgICAgICAgICogY3Nz
L0NTU1N0eWxlU2hlZXQuaWRsOgorICAgICAgICAqIGNzcy9DU1NTdXBwb3J0c1J1bGUuaWRsOgor
ICAgICAgICAqIGNzcy9DU1NWYWx1ZS5pZGw6CisgICAgICAgICogY3NzL0ZvbnRGYWNlLmlkbDoK
KyAgICAgICAgKiBjc3MvRm9udEZhY2VTZXQuaWRsOgorICAgICAgICAqIGNzcy9NZWRpYUxpc3Qu
aWRsOgorICAgICAgICAqIGNzcy9XZWJLaXRDU1NNYXRyaXguaWRsOgorICAgICAgICAqIGRvbS9D
aGFyYWN0ZXJEYXRhLmlkbDoKKyAgICAgICAgKiBkb20vQ2hpbGROb2RlLmlkbDoKKyAgICAgICAg
KiBkb20vQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5LmlkbDoKKyAgICAgICAgKiBkb20vRGF0YVRyYW5z
ZmVySXRlbUxpc3QuaWRsOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5pZGw6CisgICAgICAgICog
ZG9tL0VsZW1lbnQuaWRsOgorICAgICAgICAqIGRvbS9FdmVudFRhcmdldC5pZGw6CisgICAgICAg
ICogZG9tL01lc3NhZ2VQb3J0LmlkbDoKKyAgICAgICAgKiBkb20vTXV0YXRpb25PYnNlcnZlci5p
ZGw6CisgICAgICAgICogZG9tL05hbWVkTm9kZU1hcC5pZGw6CisgICAgICAgICogZG9tL05vZGUu
aWRsOgorICAgICAgICAqIGRvbS9QYXJlbnROb2RlLmlkbDoKKyAgICAgICAgKiBkb20vUmFuZ2Uu
aWRsOgorICAgICAgICAqIGRvbS9TaGFkb3dSb290LmlkbDoKKyAgICAgICAgKiBkb20vVGV4dC5p
ZGw6CisgICAgICAgICogZmlsZWFwaS9GaWxlUmVhZGVyLmlkbDoKKyAgICAgICAgKiBmaWxlYXBp
L0ZpbGVSZWFkZXJTeW5jLmlkbDoKKyAgICAgICAgKiBodG1sL0RPTVRva2VuTGlzdC5pZGw6Cisg
ICAgICAgICogaHRtbC9ET01VUkwuaWRsOgorICAgICAgICAqIGh0bWwvSFRNTENhbnZhc0VsZW1l
bnQuaWRsOgorICAgICAgICAqIGh0bWwvSFRNTEVsZW1lbnQuaWRsOgorICAgICAgICAqIGh0bWwv
SFRNTEVtYmVkRWxlbWVudC5pZGw6CisgICAgICAgICogaHRtbC9IVE1MRnJhbWVFbGVtZW50Lmlk
bDoKKyAgICAgICAgKiBodG1sL0hUTUxJRnJhbWVFbGVtZW50LmlkbDoKKyAgICAgICAgKiBodG1s
L0hUTUxJbnB1dEVsZW1lbnQuaWRsOgorICAgICAgICAqIGh0bWwvSFRNTE1hcnF1ZWVFbGVtZW50
LmlkbDoKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuaWRsOgorICAgICAgICAqIGh0
bWwvSFRNTE9iamVjdEVsZW1lbnQuaWRsOgorICAgICAgICAqIGh0bWwvSFRNTE9wdGlvbkVsZW1l
bnQuaWRsOgorICAgICAgICAqIGh0bWwvSFRNTE9wdGlvbnNDb2xsZWN0aW9uLmlkbDoKKyAgICAg
ICAgKiBodG1sL0hUTUxQcm9ncmVzc0VsZW1lbnQuaWRsOgorICAgICAgICAqIGh0bWwvSFRNTFNl
bGVjdEVsZW1lbnQuaWRsOgorICAgICAgICAqIGh0bWwvSFRNTFRhYmxlRWxlbWVudC5pZGw6Cisg
ICAgICAgICogaHRtbC9IVE1MVGFibGVSb3dFbGVtZW50LmlkbDoKKyAgICAgICAgKiBodG1sL0hU
TUxUYWJsZVNlY3Rpb25FbGVtZW50LmlkbDoKKyAgICAgICAgKiBodG1sL0hUTUxUZXh0QXJlYUVs
ZW1lbnQuaWRsOgorICAgICAgICAqIGh0bWwvSFRNTFZpZGVvRWxlbWVudC5pZGw6CisgICAgICAg
ICogaHRtbC9JbWFnZURhdGEuaWRsOgorICAgICAgICAqIGh0bWwvTWVkaWFDb250cm9sbGVyLmlk
bDoKKyAgICAgICAgKiBodG1sL1RpbWVSYW5nZXMuaWRsOgorICAgICAgICAqIGh0bWwvVVJMVXRp
bHMuaWRsOgorICAgICAgICAqIGh0bWwvY2FudmFzL0NhbnZhc0dyYWRpZW50LmlkbDoKKyAgICAg
ICAgKiBodG1sL2NhbnZhcy9DYW52YXNQYXRoLmlkbDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9D
YW52YXNSZW5kZXJpbmdDb250ZXh0MkQuaWRsOgorICAgICAgICAqIGh0bWwvY2FudmFzL09FU1Zl
cnRleEFycmF5T2JqZWN0LmlkbDoKKyAgICAgICAgKiBodG1sL2NhbnZhcy9XZWJHTFJlbmRlcmlu
Z0NvbnRleHRCYXNlLmlkbDoKKyAgICAgICAgKiBodG1sL3RyYWNrL0RhdGFDdWUuaWRsOgorICAg
ICAgICAqIGh0bWwvdHJhY2svVGV4dFRyYWNrLmlkbDoKKyAgICAgICAgKiBodG1sL3RyYWNrL1Rl
eHRUcmFja0N1ZS5pZGw6CisgICAgICAgICogaHRtbC90cmFjay9WVFRDdWUuaWRsOgorICAgICAg
ICAqIGh0bWwvdHJhY2svVlRUUmVnaW9uLmlkbDoKKyAgICAgICAgKiBsb2FkZXIvYXBwY2FjaGUv
RE9NQXBwbGljYXRpb25DYWNoZS5pZGw6CisgICAgICAgICogcGFnZS9DcnlwdG8uaWRsOgorICAg
ICAgICAqIHBhZ2UvRE9NU2VsZWN0aW9uLmlkbDoKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5p
ZGw6CisgICAgICAgICogcGFnZS9FdmVudFNvdXJjZS5pZGw6CisgICAgICAgICogcGFnZS9IaXN0
b3J5LmlkbDoKKyAgICAgICAgKiBwYWdlL0xvY2F0aW9uLmlkbDoKKyAgICAgICAgKiBwYWdlL1Bl
cmZvcm1hbmNlLmlkbDoKKyAgICAgICAgKiBwYWdlL1VzZXJNZXNzYWdlSGFuZGxlci5pZGw6Cisg
ICAgICAgICogcGFnZS9XaW5kb3dPcldvcmtlckdsb2JhbFNjb3BlLmlkbDoKKyAgICAgICAgKiBz
dG9yYWdlL1N0b3JhZ2UuaWRsOgorICAgICAgICAqIHN2Zy9TVkdBbHRHbHlwaEVsZW1lbnQuaWRs
OgorICAgICAgICAqIHN2Zy9TVkdBbmdsZS5pZGw6CisgICAgICAgICogc3ZnL1NWR0FuaW1hdGVk
Qm9vbGVhbi5pZGw6CisgICAgICAgICogc3ZnL1NWR0FuaW1hdGVkRW51bWVyYXRpb24uaWRsOgor
ICAgICAgICAqIHN2Zy9TVkdBbmltYXRlZEludGVnZXIuaWRsOgorICAgICAgICAqIHN2Zy9TVkdB
bmltYXRlZE51bWJlci5pZGw6CisgICAgICAgICogc3ZnL1NWR0FuaW1hdGVkU3RyaW5nLmlkbDoK
KyAgICAgICAgKiBzdmcvU1ZHQW5pbWF0aW9uRWxlbWVudC5pZGw6CisgICAgICAgICogc3ZnL1NW
R0NvbG9yLmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHR2x5cGhSZWZFbGVtZW50LmlkbDoKKyAgICAg
ICAgKiBzdmcvU1ZHR3JhcGhpY3NFbGVtZW50LmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHTGVuZ3Ro
LmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHTGVuZ3RoTGlzdC5pZGw6CisgICAgICAgICogc3ZnL1NW
R01hdHJpeC5pZGw6CisgICAgICAgICogc3ZnL1NWR051bWJlckxpc3QuaWRsOgorICAgICAgICAq
IHN2Zy9TVkdQYWludC5pZGw6CisgICAgICAgICogc3ZnL1NWR1BhdGhTZWdMaXN0LmlkbDoKKyAg
ICAgICAgKiBzdmcvU1ZHUG9pbnRMaXN0LmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHUHJlc2VydmVB
c3BlY3RSYXRpby5pZGw6CisgICAgICAgICogc3ZnL1NWR1N0cmluZ0xpc3QuaWRsOgorICAgICAg
ICAqIHN2Zy9TVkdTdHlsZUVsZW1lbnQuaWRsOgorICAgICAgICAqIHN2Zy9TVkdUZXh0Q29udGVu
dEVsZW1lbnQuaWRsOgorICAgICAgICAqIHN2Zy9TVkdUcmFuc2Zvcm1MaXN0LmlkbDoKKyAgICAg
ICAgKiBzdmcvU1ZHVmlld1NwZWMuaWRsOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxTZXR0
aW5ncy5pZGw6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaWRsOgorICAgICAgICAqIHdv
cmtlcnMvRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaWRsOgorICAgICAgICAqIHdvcmtlcnMv
V29ya2VyLmlkbDoKKyAgICAgICAgKiB4bWwvRE9NUGFyc2VyLmlkbDoKKyAgICAgICAgKiB4bWwv
WE1MSHR0cFJlcXVlc3QuaWRsOgorICAgICAgICAqIHhtbC9YUGF0aEV2YWx1YXRvci5pZGw6Cisg
ICAgICAgICogeG1sL1hQYXRoRXhwcmVzc2lvbi5pZGw6CisgICAgICAgICogeG1sL1hQYXRoUmVz
dWx0LmlkbDoKKyAgICAgICAgQWxsb3dlZCB0aGUgcmVuYW1lIHNjcmlwdCB0byByZW5hbWUgdGhl
IGV4Y2VwdGlvbi1yZWxhdGVkIGV4dGVuZGVkIGF0dHJpYnV0ZXMuCisKKyAgICAgICAgKiBiaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNJbnRlcmZhY2VOYW1lLmNwcDoKKyAgICAgICAgKiBiaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNJbnRlcmZhY2VOYW1lLmg6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEFjdGl2ZURPTU9iamVjdC5jcHA6CisgICAgICAgICog
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEFjdGl2ZURPTU9iamVjdC5oOgorICAgICAg
ICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFjay5jcHA6CisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0
cnVjdG9yLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xh
c3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0Q3VzdG9tQ29uc3RydWN0b3JXaXRoTm9JbnRlcmZhY2VPYmplY3QuY3Bw
OgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDdXN0b21Db25zdHJ1
Y3RvcldpdGhOb0ludGVyZmFjZU9iamVjdC5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RDdXN0b21OYW1lZEdldHRlci5jcHA6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEN1c3RvbU5hbWVkR2V0dGVyLmg6CisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50Q29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmg6Cisg
ICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50VGFyZ2V0LmNwcDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQuaDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXhjZXB0aW9uLmNwcDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXhjZXB0aW9uLmg6Cisg
ICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlSXNSZWFjaGFi
bGUuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0
ZUlzUmVhY2hhYmxlLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEdsb2JhbE9iamVjdC5jcHA6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEdsb2JhbE9iamVjdC5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RJbnRlcmZhY2UuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RJbnRlcmZhY2UuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0SXRlcmFibGUuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RJdGVyYWJsZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RK
U0J1aWx0aW5Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yLmg6CisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXIuY3BwOgorICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLmg6
CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQ29uc3RydWN0
b3IuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZENv
bnN0cnVjdG9yLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5v
ZGUuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmg6
CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5vbmRldGVybWluaXN0
aWMuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb25kZXRl
cm1pbmlzdGljLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9i
ai5jcHA6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9iai5oOgor
ICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3Ry
dWN0b3JzLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3Zl
cmxvYWRlZENvbnN0cnVjdG9ycy5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmNwcDoKKyAgICAgICAg
KiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dp
dGhTZXF1ZW5jZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RP
dmVycmlkZUJ1aWx0aW5zLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0T3ZlcnJpZGVCdWlsdGlucy5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UuY3BwOgorICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRl
cmZhY2UuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VHlwZWRl
ZnMuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUeXBlZGVm
cy5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU2F0dHJpYnV0ZS5jcHA6
CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTYXR0cmlidXRlLmg6CisgICAg
ICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTcmVhZG9ubHkuY3BwOgorICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU3JlYWRvbmx5Lmg6CisgICAgICAgIFJlZ2VuZXJh
dGVkLgorCisKIDIwMTYtMTAtMDIgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KIAog
ICAgICAgICBUcmllZCB0byBmaXggdGhlIGJ1aWxkIGFmdGVyIHIyMDY2OTIuCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VM
b2cKaW5kZXggMWFlNTFiODI0MTIzOTU5NTBlODQ3OGJjZjhiNmUwZWYyZmQ0NjI1NS4uYzQwODZm
ZGFlOGZjOTQxZDY4MjJkZDdlOTE4MmNmMWE1MWI0MjUyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC93aW4vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDEyIEBACisyMDE2LTEwLTAyICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4K
KworICAgICAgICBSZW5hbWUgRXhjZXB0aW9uQ29kZS1iYXNlZCBleGNlcHRpb24gaGFuZGxpbmcg
dG8gImxlZ2FjeSIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE2Mjg1OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogSW50ZXJmYWNlcy9ET01FdmVudHMuaWRsOiBMZXQgdGhlIHNjcmlwdCByZW5hbWUgaGVy
ZSAoaW4gYSBjb21tZW50KS4KKwogMjAxNi0wOS0yOSAgS29uc3RhbnRpbiBUb2thcmV2ICA8YW5u
dWxlbkB5YW5kZXgucnU+CiAKICAgICAgICAgRml4ZWQgY29tcGlsYXRpb24gb2YgUGx1Z2luVmll
dyB3aGVuIE5FVFNDQVBFX1BMVUdJTl9BUEkgaXMgZGlzYWJsZWQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvYXBwbGVwYXkvQXBwbGVQYXlTZXNzaW9uLmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvYXBwbGVwYXkvQXBwbGVQYXlTZXNzaW9uLmlkbAppbmRleCA5NzkzNmY5
NmQyMGY3OWMzYTJlOGI4NWU4NGE1YmQ3ODBlYTUzOGU5Li44ZmE2Y2M3NWQwMzc0NjAwMmE3YWVi
ZmM5NTViZDVkZWUwNTJhYjdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2Fw
cGxlcGF5L0FwcGxlUGF5U2Vzc2lvbi5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9h
cHBsZXBheS9BcHBsZVBheVNlc3Npb24uaWRsCkBAIC0yOCw3ICsyOCw3IEBACiAgICAgQ29uZGl0
aW9uYWw9QVBQTEVfUEFZLAogICAgIENvbnN0cnVjdG9yKHVuc2lnbmVkIGxvbmcgdmVyc2lvbiwg
RGljdGlvbmFyeSBwYXltZW50UmVxdWVzdCksCiAgICAgQ29uc3RydWN0b3JDYWxsV2l0aD1Eb2N1
bWVudCwKLSAgICBDb25zdHJ1Y3RvclJhaXNlc0V4Y2VwdGlvbiwKKyAgICBDb25zdHJ1Y3Rvck1h
eVRocm93TGVnYWN5RXhjZXB0aW9uLAogICAgIEVuYWJsZWRCeVNldHRpbmc9QXBwbGVQYXksCiBd
IGludGVyZmFjZSBBcHBsZVBheVNlc3Npb24gOiBFdmVudFRhcmdldCB7CiAgICAgY29uc3QgdW5z
aWduZWQgc2hvcnQgU1RBVFVTX1NVQ0NFU1MgPSAwOwpAQCAtNDAsMTggKzQwLDE4IEBACiAgICAg
Y29uc3QgdW5zaWduZWQgc2hvcnQgU1RBVFVTX1BJTl9JTkNPUlJFQ1QgPSA2OwogICAgIGNvbnN0
IHVuc2lnbmVkIHNob3J0IFNUQVRVU19QSU5fTE9DS09VVCA9IDc7CiAKLSAgICBbQ2FsbFdpdGg9
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgUmFpc2VzRXhjZXB0aW9uXSBzdGF0aWMgYm9vbGVhbiBz
dXBwb3J0c1ZlcnNpb24odW5zaWduZWQgbG9uZyB2ZXJzaW9uKTsKLSAgICBbQ2FsbFdpdGg9U2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCwgUmFpc2VzRXhjZXB0aW9uXSBzdGF0aWMgYm9vbGVhbiBjYW5N
YWtlUGF5bWVudHMoKTsKLSAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgUmFp
c2VzRXhjZXB0aW9uXSBzdGF0aWMgUHJvbWlzZSBjYW5NYWtlUGF5bWVudHNXaXRoQWN0aXZlQ2Fy
ZChET01TdHJpbmcgbWVyY2hhbnRJZGVudGlmaWVyKTsKLSAgICBbQ2FsbFdpdGg9U2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCwgUmFpc2VzRXhjZXB0aW9uXSBzdGF0aWMgUHJvbWlzZSBvcGVuUGF5bWVu
dFNldHVwKERPTVN0cmluZyBtZXJjaGFudElkZW50aWZpZXIpOworICAgIFtDYWxsV2l0aD1TY3Jp
cHRFeGVjdXRpb25Db250ZXh0LCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gc3RhdGljIGJvb2xl
YW4gc3VwcG9ydHNWZXJzaW9uKHVuc2lnbmVkIGxvbmcgdmVyc2lvbik7CisgICAgW0NhbGxXaXRo
PVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIE1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBzdGF0aWMg
Ym9vbGVhbiBjYW5NYWtlUGF5bWVudHMoKTsKKyAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9u
Q29udGV4dCwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHN0YXRpYyBQcm9taXNlIGNhbk1ha2VQ
YXltZW50c1dpdGhBY3RpdmVDYXJkKERPTVN0cmluZyBtZXJjaGFudElkZW50aWZpZXIpOworICAg
IFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlv
bl0gc3RhdGljIFByb21pc2Ugb3BlblBheW1lbnRTZXR1cChET01TdHJpbmcgbWVyY2hhbnRJZGVu
dGlmaWVyKTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgYmVnaW4oKTsKLSAgICBbUmFp
c2VzRXhjZXB0aW9uXSB2b2lkIGFib3J0KCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBj
b21wbGV0ZU1lcmNoYW50VmFsaWRhdGlvbihEaWN0aW9uYXJ5IG1lcmNoYW50U2Vzc2lvbik7Ci0g
ICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGNvbXBsZXRlU2hpcHBpbmdNZXRob2RT
ZWxlY3Rpb24odW5zaWduZWQgc2hvcnQgc3RhdHVzLCBEaWN0aW9uYXJ5IG5ld1RvdGFsLCBzZXF1
ZW5jZTxEaWN0aW9uYXJ5PiBuZXdMaW5lSXRlbXMpOwotICAgIFtDdXN0b20sIFJhaXNlc0V4Y2Vw
dGlvbl0gdm9pZCBjb21wbGV0ZVNoaXBwaW5nQ29udGFjdFNlbGVjdGlvbih1bnNpZ25lZCBzaG9y
dCBzdGF0dXMsIHNlcXVlbmNlPERpY3Rpb25hcnk+IG5ld1NoaXBwaW5nTWV0aG9kcywgRGljdGlv
bmFyeSBuZXdUb3RhbCwgc2VxdWVuY2U8RGljdGlvbmFyeT4gbmV3TGluZUl0ZW1zKTsKLSAgICBb
Q3VzdG9tLCBSYWlzZXNFeGNlcHRpb25dIHZvaWQgY29tcGxldGVQYXltZW50TWV0aG9kU2VsZWN0
aW9uKERpY3Rpb25hcnkgbmV3VG90YWwsIHNlcXVlbmNlPERpY3Rpb25hcnk+IG5ld0xpbmVJdGVt
cyk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBjb21wbGV0ZVBheW1lbnQodW5zaWduZWQg
c2hvcnQgc3RhdHVzKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgYmVnaW4o
KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgYWJvcnQoKTsKKyAgICBbTWF5
VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgY29tcGxldGVNZXJjaGFudFZhbGlkYXRpb24oRGlj
dGlvbmFyeSBtZXJjaGFudFNlc3Npb24pOworICAgIFtDdXN0b20sIE1heVRocm93TGVnYWN5RXhj
ZXB0aW9uXSB2b2lkIGNvbXBsZXRlU2hpcHBpbmdNZXRob2RTZWxlY3Rpb24odW5zaWduZWQgc2hv
cnQgc3RhdHVzLCBEaWN0aW9uYXJ5IG5ld1RvdGFsLCBzZXF1ZW5jZTxEaWN0aW9uYXJ5PiBuZXdM
aW5lSXRlbXMpOworICAgIFtDdXN0b20sIE1heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIGNv
bXBsZXRlU2hpcHBpbmdDb250YWN0U2VsZWN0aW9uKHVuc2lnbmVkIHNob3J0IHN0YXR1cywgc2Vx
dWVuY2U8RGljdGlvbmFyeT4gbmV3U2hpcHBpbmdNZXRob2RzLCBEaWN0aW9uYXJ5IG5ld1RvdGFs
LCBzZXF1ZW5jZTxEaWN0aW9uYXJ5PiBuZXdMaW5lSXRlbXMpOworICAgIFtDdXN0b20sIE1heVRo
cm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIGNvbXBsZXRlUGF5bWVudE1ldGhvZFNlbGVjdGlvbihE
aWN0aW9uYXJ5IG5ld1RvdGFsLCBzZXF1ZW5jZTxEaWN0aW9uYXJ5PiBuZXdMaW5lSXRlbXMpOwor
ICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBjb21wbGV0ZVBheW1lbnQodW5zaWdu
ZWQgc2hvcnQgc3RhdHVzKTsKIAogICAgIGF0dHJpYnV0ZSBFdmVudEhhbmRsZXIgb252YWxpZGF0
ZW1lcmNoYW50OwogICAgIGF0dHJpYnV0ZSBFdmVudEhhbmRsZXIgb25wYXltZW50bWV0aG9kc2Vs
ZWN0ZWQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2VuY3J5cHRlZG1lZGlh
L01lZGlhS2V5U2Vzc2lvbi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2VuY3J5cHRlZG1l
ZGlhL01lZGlhS2V5U2Vzc2lvbi5pZGwKaW5kZXggNTk1NTljZjFhMDY3YmNjYTRlMWEyODhiZjk4
MzU5ZDE2OTMwZTAzNi4uYzczNmNjNTU5ZjdmYTc1NjE3NDBkOTQzZDI1ZTRjMjZlZTJiOTBjNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9lbmNyeXB0ZWRtZWRpYS9NZWRpYUtl
eVNlc3Npb24uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZW5jcnlwdGVkbWVkaWEv
TWVkaWFLZXlTZXNzaW9uLmlkbApAQCAtMzYsNyArMzYsNyBAQAogICAgIHJlYWRvbmx5IGF0dHJp
YnV0ZSBET01TdHJpbmcgc2Vzc2lvbklkOwogCiAgICAgLy8gc2Vzc2lvbiBvcGVyYXRpb25zCi0g
ICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCB1cGRhdGUoVWludDhBcnJheSBrZXkpOworICAgIFtN
YXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCB1cGRhdGUoVWludDhBcnJheSBrZXkpOwogICAg
IHZvaWQgY2xvc2UoKTsKICAgICAKICAgICBhdHRyaWJ1dGUgRXZlbnRIYW5kbGVyIG9ud2Via2l0
a2V5YWRkZWQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2VuY3J5cHRlZG1l
ZGlhL01lZGlhS2V5cy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2VuY3J5cHRlZG1lZGlh
L01lZGlhS2V5cy5pZGwKaW5kZXggYzg2ODhmZTQ5MjRiNDQ2ZDgxNGQ0ZWMyYWEyZGIwNzgwYWI3
ODRiOC4uMDViNTE5NTMyZGZiZTUwMDUwNGVmNDc3NDA5ZjE2ZTA0ZmQ3MTJiYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9lbmNyeXB0ZWRtZWRpYS9NZWRpYUtleXMuaWRsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZW5jcnlwdGVkbWVkaWEvTWVkaWFLZXlzLmlkbApA
QCAtMjYsMTAgKzI2LDEwIEBACiBbCiAgICAgQ29uZGl0aW9uYWw9RU5DUllQVEVEX01FRElBX1Yy
LAogICAgIENvbnN0cnVjdG9yKERPTVN0cmluZyBrZXlTeXN0ZW0pLAotICAgIENvbnN0cnVjdG9y
UmFpc2VzRXhjZXB0aW9uLAorICAgIENvbnN0cnVjdG9yTWF5VGhyb3dMZWdhY3lFeGNlcHRpb24s
CiAgICAgSW50ZXJmYWNlTmFtZT1XZWJLaXRNZWRpYUtleXMsCiBdIGludGVyZmFjZSBNZWRpYUtl
eXMgewotICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LCBSYWlzZXNFeGNlcHRp
b25dIE1lZGlhS2V5U2Vzc2lvbiBjcmVhdGVTZXNzaW9uKERPTVN0cmluZyB0eXBlLCBVaW50OEFy
cmF5IGluaXREYXRhKTsKKyAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgTWF5
VGhyb3dMZWdhY3lFeGNlcHRpb25dIE1lZGlhS2V5U2Vzc2lvbiBjcmVhdGVTZXNzaW9uKERPTVN0
cmluZyB0eXBlLCBVaW50OEFycmF5IGluaXREYXRhKTsKICAgICBzdGF0aWMgYm9vbGVhbiBpc1R5
cGVTdXBwb3J0ZWQoRE9NU3RyaW5nIGtleVN5c3RlbSwgb3B0aW9uYWwgRE9NU3RyaW5nIHR5cGUp
OwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcga2V5U3lzdGVtOwogfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hIZWFkZXJzLmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hIZWFkZXJzLmlkbAppbmRleCBhNzMzYzU0
NDU4OWFhNTYxOTNjYjlkY2EwN2Y1NTc2YTI4ZTI1MWZmLi4xNTNkZGJiYjU3ODNiOTk1ZTg4ODk2
N2ViYzRhYjMzZmI5MTg0ZjczIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2Zl
dGNoL0ZldGNoSGVhZGVycy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9G
ZXRjaEhlYWRlcnMuaWRsCkBAIC0zNiwxNCArMzYsMTQgQEAKICAgICBQcml2YXRlSWRlbnRpZmll
ciwKICAgICBQdWJsaWNJZGVudGlmaWVyXQogaW50ZXJmYWNlIEZldGNoSGVhZGVycyB7Ci0gICAg
W1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBhcHBlbmQoRE9NU3RyaW5nIG5hbWUsIERPTVN0cmluZyB2
YWx1ZSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbiwgSW1wbGVtZW50ZWRBcz1yZW1vdmVdIHZvaWQg
ZGVsZXRlKERPTVN0cmluZyBuYW1lKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBET01TdHJpbmc/
IGdldChET01TdHJpbmcgbmFtZSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gYm9vbGVhbiBoYXMo
RE9NU3RyaW5nIG5hbWUpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0KERPTVN0cmlu
ZyBuYW1lLCBET01TdHJpbmcgdmFsdWUpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0g
dm9pZCBhcHBlbmQoRE9NU3RyaW5nIG5hbWUsIERPTVN0cmluZyB2YWx1ZSk7CisgICAgW01heVRo
cm93TGVnYWN5RXhjZXB0aW9uLCBJbXBsZW1lbnRlZEFzPXJlbW92ZV0gdm9pZCBkZWxldGUoRE9N
U3RyaW5nIG5hbWUpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gRE9NU3RyaW5nPyBn
ZXQoRE9NU3RyaW5nIG5hbWUpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYm9vbGVh
biBoYXMoRE9NU3RyaW5nIG5hbWUpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9p
ZCBzZXQoRE9NU3RyaW5nIG5hbWUsIERPTVN0cmluZyB2YWx1ZSk7CiAKICAgICBbRW5hYmxlZEF0
UnVudGltZT1ET01JdGVyYXRvcl0gaXRlcmFibGU8RE9NU3RyaW5nLCBET01TdHJpbmc+OwogCi0g
ICAgW1ByaXZhdGVJZGVudGlmaWVyLCBSYWlzZXNFeGNlcHRpb24sIEltcGxlbWVudGVkQXM9YXBw
ZW5kXSB2b2lkIGFwcGVuZEZyb21KUyhET01TdHJpbmcgbmFtZSwgRE9NU3RyaW5nIHZhbHVlKTsK
KyAgICBbUHJpdmF0ZUlkZW50aWZpZXIsIE1heVRocm93TGVnYWN5RXhjZXB0aW9uLCBJbXBsZW1l
bnRlZEFzPWFwcGVuZF0gdm9pZCBhcHBlbmRGcm9tSlMoRE9NU3RyaW5nIG5hbWUsIERPTVN0cmlu
ZyB2YWx1ZSk7CiAgICAgW1ByaXZhdGVJZGVudGlmaWVyLCBJbXBsZW1lbnRlZEFzPWZpbGxdIHZv
aWQgZmlsbEZyb21KUyhGZXRjaEhlYWRlcnM/IGhlYWRlcnMpOwogfTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXF1ZXN0LmlkbCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXF1ZXN0LmlkbAppbmRleCBlNzllMTc3ZWRmYjBjMzUw
Y2Q1ODhiNThmMjdlMTFlMzQ4NDYxMzgyLi41Y2ZlMWQyYTg3NjNlY2IyZDMwYzk0ZDkzZjg2MWM2
MDBjYTA4M2MwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNo
UmVxdWVzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlcXVl
c3QuaWRsCkBAIC02MCwxMCArNjAsMTAgQEAgaW50ZXJmYWNlIEZldGNoUmVxdWVzdCB7CiAgICAg
cmVhZG9ubHkgYXR0cmlidXRlIFJlcXVlc3RSZWRpcmVjdCByZWRpcmVjdDsKICAgICByZWFkb25s
eSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGludGVncml0eTsKIAotICAgIFtOZXdPYmplY3QsIENhbGxX
aXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIFJhaXNlc0V4Y2VwdGlvbl0gRmV0Y2hSZXF1ZXN0
IGNsb25lKCk7CisgICAgW05ld09iamVjdCwgQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4
dCwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIEZldGNoUmVxdWVzdCBjbG9uZSgpOwogCi0gICAg
W1ByaXZhdGVJZGVudGlmaWVyLCBSYWlzZXNFeGNlcHRpb25dIEZldGNoSGVhZGVycyBpbml0aWFs
aXplV2l0aChGZXRjaFJlcXVlc3QgaW5wdXQsIERpY3Rpb25hcnkgaW5pdCk7Ci0gICAgW1ByaXZh
dGVJZGVudGlmaWVyLCBSYWlzZXNFeGNlcHRpb25dIEZldGNoSGVhZGVycyBpbml0aWFsaXplV2l0
aChET01TdHJpbmcgaW5wdXQsIERpY3Rpb25hcnkgaW5pdCk7Ci0gICAgW1ByaXZhdGVJZGVudGlm
aWVyLCBSYWlzZXNFeGNlcHRpb24sIENhbGxXaXRoPVNjcmlwdFN0YXRlXSB2b2lkIHNldEJvZHko
YW55IGJvZHksIEZldGNoUmVxdWVzdD8gcmVxdWVzdCk7CisgICAgW1ByaXZhdGVJZGVudGlmaWVy
LCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gRmV0Y2hIZWFkZXJzIGluaXRpYWxpemVXaXRoKEZl
dGNoUmVxdWVzdCBpbnB1dCwgRGljdGlvbmFyeSBpbml0KTsKKyAgICBbUHJpdmF0ZUlkZW50aWZp
ZXIsIE1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBGZXRjaEhlYWRlcnMgaW5pdGlhbGl6ZVdpdGgo
RE9NU3RyaW5nIGlucHV0LCBEaWN0aW9uYXJ5IGluaXQpOworICAgIFtQcml2YXRlSWRlbnRpZmll
ciwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb24sIENhbGxXaXRoPVNjcmlwdFN0YXRlXSB2b2lkIHNl
dEJvZHkoYW55IGJvZHksIEZldGNoUmVxdWVzdD8gcmVxdWVzdCk7CiB9OwogRmV0Y2hSZXF1ZXN0
IGltcGxlbWVudHMgRmV0Y2hCb2R5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9mZXRjaC9GZXRjaFJlc3BvbnNlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gv
RmV0Y2hSZXNwb25zZS5pZGwKaW5kZXggNDI4MTVkM2RkZTg0ZGQ1ZWVlMGQyOWVlNjZjZDgzOWE5
ZWM2NTFiMS4uOTI1YjViZjg4NmMxNWYxMzczZDM0ZjhlYmJhOTI3OTI0ZmI4NjAyYiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmlkbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuaWRsCkBAIC00MCw3
ICs0MCw3IEBAIGVudW0gUmVzcG9uc2VUeXBlIHsgImJhc2ljIiwgImNvcnMiLCAiZGVmYXVsdCIs
ICJlcnJvciIsICJvcGFxdWUiLCAib3BhcXVlcmVkaXJlCiBdCiBpbnRlcmZhY2UgRmV0Y2hSZXNw
b25zZSB7CiAgICAgW05ld09iamVjdCwgQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0g
c3RhdGljIEZldGNoUmVzcG9uc2UgZXJyb3IoKTsKLSAgICBbTmV3T2JqZWN0LCBDYWxsV2l0aD1T
Y3JpcHRFeGVjdXRpb25Db250ZXh0LCBSYWlzZXNFeGNlcHRpb25dIHN0YXRpYyBGZXRjaFJlc3Bv
bnNlIHJlZGlyZWN0KERPTVN0cmluZyB1cmwsIG9wdGlvbmFsIHVuc2lnbmVkIHNob3J0IHN0YXR1
cyA9IDMwMik7CisgICAgW05ld09iamVjdCwgQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4
dCwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHN0YXRpYyBGZXRjaFJlc3BvbnNlIHJlZGlyZWN0
KERPTVN0cmluZyB1cmwsIG9wdGlvbmFsIHVuc2lnbmVkIHNob3J0IHN0YXR1cyA9IDMwMik7CiAK
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgUmVzcG9uc2VUeXBlIHR5cGU7CiAKQEAgLTcxLDcgKzcx
LDcgQEAgaW50ZXJmYWNlIEZldGNoUmVzcG9uc2UgewogCiAgICAgW1ByaXZhdGVJZGVudGlmaWVy
XSBQcm9taXNlIGNvbnN1bWUodW5zaWduZWQgc2hvcnQgdHlwZSk7CiAgICAgW1ByaXZhdGVJZGVu
dGlmaWVyXSBib29sZWFuIGlzTG9hZGluZygpOwotICAgIFtQcml2YXRlSWRlbnRpZmllciwgUmFp
c2VzRXhjZXB0aW9uXSB2b2lkIHNldFN0YXR1cyh1bnNpZ25lZCBzaG9ydCBzdGF0dXMsIERPTVN0
cmluZyBzdGF0dXNUZXh0KTsKKyAgICBbUHJpdmF0ZUlkZW50aWZpZXIsIE1heVRocm93TGVnYWN5
RXhjZXB0aW9uXSB2b2lkIHNldFN0YXR1cyh1bnNpZ25lZCBzaG9ydCBzdGF0dXMsIERPTVN0cmlu
ZyBzdGF0dXNUZXh0KTsKICAgICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGUsIFByaXZhdGVJZGVudGlm
aWVyXSB2b2lkIGluaXRpYWxpemVXaXRoKGFueSBib2R5KTsKICAgICBbUHJpdmF0ZUlkZW50aWZp
ZXIsIE5ld09iamVjdF0gUmVhZGFibGVTdHJlYW1Tb3VyY2UgY3JlYXRlUmVhZGFibGVTdHJlYW1T
b3VyY2UoKTsKICAgICBbUHJpdmF0ZUlkZW50aWZpZXJdIGJvb2xlYW4gaXNEaXN0dXJiZWQoKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsCmluZGV4
IDhkNDRkMmNjY2Q0ZTQ0Nzg3NDllMDg1MjIzNzJlZTI0Y2Y5MjgxMmMuLjAwZTdlNmViM2I0OWRk
ZWYwZDllZDI1NzI4MDBmYTg1M2UwZWZkN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCQ3Vyc29yLmlkbApAQCAtMzYsOCArMzYsOCBAQAogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBhbnkga2V5OwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBhbnkgcHJpbWFyeUtl
eTsKIAotICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwgUmFpc2VzRXhjZXB0aW9uV2l0aE1lc3Nh
Z2VdIElEQlJlcXVlc3QgdXBkYXRlKGFueSB2YWx1ZSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbldp
dGhNZXNzYWdlXSB2b2lkIGFkdmFuY2UoW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyBjb3Vu
dCk7Ci0gICAgW0NhbGxXaXRoPVNjcmlwdFN0YXRlLCBJbXBsZW1lbnRlZEFzPWNvbnRpbnVlRnVu
Y3Rpb24sIFJhaXNlc0V4Y2VwdGlvbldpdGhNZXNzYWdlXSB2b2lkIGNvbnRpbnVlKG9wdGlvbmFs
IGFueSBrZXkpOwotICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwgSW1wbGVtZW50ZWRBcz1kZWxl
dGVGdW5jdGlvbiwgUmFpc2VzRXhjZXB0aW9uV2l0aE1lc3NhZ2VdIElEQlJlcXVlc3QgZGVsZXRl
KCk7CisgICAgW0NhbGxXaXRoPVNjcmlwdFN0YXRlLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbldp
dGhNZXNzYWdlXSBJREJSZXF1ZXN0IHVwZGF0ZShhbnkgdmFsdWUpOworICAgIFtNYXlUaHJvd0xl
Z2FjeUV4Y2VwdGlvbldpdGhNZXNzYWdlXSB2b2lkIGFkdmFuY2UoW0VuZm9yY2VSYW5nZV0gdW5z
aWduZWQgbG9uZyBjb3VudCk7CisgICAgW0NhbGxXaXRoPVNjcmlwdFN0YXRlLCBJbXBsZW1lbnRl
ZEFzPWNvbnRpbnVlRnVuY3Rpb24sIE1heVRocm93TGVnYWN5RXhjZXB0aW9uV2l0aE1lc3NhZ2Vd
IHZvaWQgY29udGludWUob3B0aW9uYWwgYW55IGtleSk7CisgICAgW0NhbGxXaXRoPVNjcmlwdFN0
YXRlLCBJbXBsZW1lbnRlZEFzPWRlbGV0ZUZ1bmN0aW9uLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlv
bldpdGhNZXNzYWdlXSBJREJSZXF1ZXN0IGRlbGV0ZSgpOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlLmlkbCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlLmlkbAppbmRleCAyNDQ1ZDU1ZTRlODMz
MGEwZjIxNzg4ZWNjNmY0MzlmYjg5YmFhYjhjLi45Y2YxNjIxMjQ3MTcwYjgyMTgyMTU3ZjBiMTA1
MGFiODcyNmYwN2RkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9JREJEYXRhYmFzZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCRGF0YWJhc2UuaWRsCkBAIC0zNCwxMyArMzQsMTMgQEAKICAgICByZWFkb25seSBhdHRyaWJ1
dGUgdW5zaWduZWQgbG9uZyBsb25nIHZlcnNpb247CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERP
TVN0cmluZ0xpc3Qgb2JqZWN0U3RvcmVOYW1lczsKIAotICAgIFtDdXN0b20sIFJhaXNlc0V4Y2Vw
dGlvbldpdGhNZXNzYWdlXSBJREJPYmplY3RTdG9yZSBjcmVhdGVPYmplY3RTdG9yZShET01TdHJp
bmcgbmFtZSwgb3B0aW9uYWwgRGljdGlvbmFyeSBvcHRpb25zKTsKLSAgICBbUmFpc2VzRXhjZXB0
aW9uV2l0aE1lc3NhZ2VdIHZvaWQgZGVsZXRlT2JqZWN0U3RvcmUoRE9NU3RyaW5nIG5hbWUpOwot
ICAgIFtSYWlzZXNFeGNlcHRpb25XaXRoTWVzc2FnZV0gSURCVHJhbnNhY3Rpb24gdHJhbnNhY3Rp
b24oRE9NU3RyaW5nIHN0b3JlTmFtZSwgb3B0aW9uYWwgRE9NU3RyaW5nIG1vZGUgPSAicmVhZG9u
bHkiKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uV2l0aE1lc3NhZ2VdIElEQlRyYW5zYWN0aW9uIHRy
YW5zYWN0aW9uKHNlcXVlbmNlPERPTVN0cmluZz4gc3RvcmVOYW1lcywgb3B0aW9uYWwgRE9NU3Ry
aW5nIG1vZGUgPSAicmVhZG9ubHkiKTsKKyAgICBbQ3VzdG9tLCBNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbldpdGhNZXNzYWdlXSBJREJPYmplY3RTdG9yZSBjcmVhdGVPYmplY3RTdG9yZShET01TdHJp
bmcgbmFtZSwgb3B0aW9uYWwgRGljdGlvbmFyeSBvcHRpb25zKTsKKyAgICBbTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb25XaXRoTWVzc2FnZV0gdm9pZCBkZWxldGVPYmplY3RTdG9yZShET01TdHJpbmcg
bmFtZSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uV2l0aE1lc3NhZ2VdIElEQlRyYW5z
YWN0aW9uIHRyYW5zYWN0aW9uKERPTVN0cmluZyBzdG9yZU5hbWUsIG9wdGlvbmFsIERPTVN0cmlu
ZyBtb2RlID0gInJlYWRvbmx5Iik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uV2l0aE1l
c3NhZ2VdIElEQlRyYW5zYWN0aW9uIHRyYW5zYWN0aW9uKHNlcXVlbmNlPERPTVN0cmluZz4gc3Rv
cmVOYW1lcywgb3B0aW9uYWwgRE9NU3RyaW5nIG1vZGUgPSAicmVhZG9ubHkiKTsKICAgICAvLyBG
SVhNRTogVGhpcyBpcyBub3QgcGFydCBvZiB0aGUgc3BlYywgYnV0IGlzIG5lZWRlZCBmb3IgY29t
cGF0aWJpbGl0eS4KICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3czYy9JbmRleGVkREIv
aXNzdWVzLzg1Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbldpdGhNZXNzYWdlXSBJREJUcmFuc2FjdGlv
biB0cmFuc2FjdGlvbihET01TdHJpbmdMaXN0IHN0b3JlTmFtZXMsIG9wdGlvbmFsIERPTVN0cmlu
ZyBtb2RlID0gInJlYWRvbmx5Iik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uV2l0aE1l
c3NhZ2VdIElEQlRyYW5zYWN0aW9uIHRyYW5zYWN0aW9uKERPTVN0cmluZ0xpc3Qgc3RvcmVOYW1l
cywgb3B0aW9uYWwgRE9NU3RyaW5nIG1vZGUgPSAicmVhZG9ubHkiKTsKICAgICB2b2lkIGNsb3Nl
KCk7CiAKICAgICBhdHRyaWJ1dGUgRXZlbnRIYW5kbGVyIG9uYWJvcnQ7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaWRsCmluZGV4IDM1MWJhODA4ODkx
OGRkMjg4ZmUzYzMyNTI5YjA3M2ExNjAzOTQ3ZDEuLjNjNjA1YTI0MDk4ZGI1YWE1NjFhM2QyOGI4
MTFlNjY3ZjM2MWQ1ZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL0lEQkZhY3RvcnkuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQkZhY3RvcnkuaWRsCkBAIC0yOCw4ICsyOCw4IEBACiAgICAgRW5hYmxlZEF0UnVudGltZT1J
bmRleGVkREIsCiAgICAgU2tpcFZUYWJsZVZhbGlkYXRpb24sCiBdIGludGVyZmFjZSBJREJGYWN0
b3J5IHsKLSAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgUmFpc2VzRXhjZXB0
aW9uV2l0aE1lc3NhZ2VdIElEQk9wZW5EQlJlcXVlc3Qgb3BlbihET01TdHJpbmcgbmFtZSwgW0Vu
Zm9yY2VSYW5nZV0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBsb25nIHZlcnNpb24pOwotICAgIFtD
YWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LCBSYWlzZXNFeGNlcHRpb25XaXRoTWVzc2Fn
ZV0gSURCT3BlbkRCUmVxdWVzdCBkZWxldGVEYXRhYmFzZShET01TdHJpbmcgbmFtZSk7Ci0gICAg
W0NhbGxXaXRoPVNjcmlwdFN0YXRlLCBSYWlzZXNFeGNlcHRpb25XaXRoTWVzc2FnZV0gc2hvcnQg
Y21wKGFueSBmaXJzdCwgYW55IHNlY29uZCk7CisgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQsIE1heVRocm93TGVnYWN5RXhjZXB0aW9uV2l0aE1lc3NhZ2VdIElEQk9wZW5EQlJl
cXVlc3Qgb3BlbihET01TdHJpbmcgbmFtZSwgW0VuZm9yY2VSYW5nZV0gb3B0aW9uYWwgdW5zaWdu
ZWQgbG9uZyBsb25nIHZlcnNpb24pOworICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250
ZXh0LCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbldpdGhNZXNzYWdlXSBJREJPcGVuREJSZXF1ZXN0
IGRlbGV0ZURhdGFiYXNlKERPTVN0cmluZyBuYW1lKTsKKyAgICBbQ2FsbFdpdGg9U2NyaXB0U3Rh
dGUsIE1heVRocm93TGVnYWN5RXhjZXB0aW9uV2l0aE1lc3NhZ2VdIHNob3J0IGNtcChhbnkgZmly
c3QsIGFueSBzZWNvbmQpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCSW5kZXguaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCSW5kZXguaWRsCmluZGV4IDg3YmQwNDVhNmIwMDcwMDgwMGYwN2Y5NGIyMjM0NTcwODUz
MWRhYjIuLjZmZmQ2ZDBiN2MwNGFhODdlYTA2MDlmNmMwMGNlOGIyODkwOThjODUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkluZGV4LmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJJbmRleC5pZGwKQEAgLTM2LDE3ICsz
NiwxNyBAQAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIG11bHRpRW50cnk7CiAgICAg
cmVhZG9ubHkgYXR0cmlidXRlIGJvb2xlYW4gdW5pcXVlOwogCi0gICAgW0NhbGxXaXRoPVNjcmlw
dFN0YXRlLCBSYWlzZXNFeGNlcHRpb25XaXRoTWVzc2FnZV0gSURCUmVxdWVzdCBvcGVuQ3Vyc29y
KG9wdGlvbmFsIElEQktleVJhbmdlPyByYW5nZSA9IG51bGwsIG9wdGlvbmFsIERPTVN0cmluZyBk
aXJlY3Rpb24gPSAibmV4dCIpOwotICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwgUmFpc2VzRXhj
ZXB0aW9uV2l0aE1lc3NhZ2VdIElEQlJlcXVlc3Qgb3BlbkN1cnNvcihhbnkga2V5LCBvcHRpb25h
bCBET01TdHJpbmcgZGlyZWN0aW9uID0gIm5leHQiKTsKKyAgICBbQ2FsbFdpdGg9U2NyaXB0U3Rh
dGUsIE1heVRocm93TGVnYWN5RXhjZXB0aW9uV2l0aE1lc3NhZ2VdIElEQlJlcXVlc3Qgb3BlbkN1
cnNvcihvcHRpb25hbCBJREJLZXlSYW5nZT8gcmFuZ2UgPSBudWxsLCBvcHRpb25hbCBET01TdHJp
bmcgZGlyZWN0aW9uID0gIm5leHQiKTsKKyAgICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGUsIE1heVRo
cm93TGVnYWN5RXhjZXB0aW9uV2l0aE1lc3NhZ2VdIElEQlJlcXVlc3Qgb3BlbkN1cnNvcihhbnkg
a2V5LCBvcHRpb25hbCBET01TdHJpbmcgZGlyZWN0aW9uID0gIm5leHQiKTsKIAotICAgIFtDYWxs
V2l0aD1TY3JpcHRTdGF0ZSwgUmFpc2VzRXhjZXB0aW9uV2l0aE1lc3NhZ2VdIElEQlJlcXVlc3Qg
b3BlbktleUN1cnNvcihvcHRpb25hbCBJREJLZXlSYW5nZT8gcmFuZ2UgPSBudWxsLCBvcHRpb25h
bCBET01TdHJpbmcgZGlyZWN0aW9uID0gIm5leHQiKTsKLSAgICBbQ2FsbFdpdGg9U2NyaXB0U3Rh
dGUsIFJhaXNlc0V4Y2VwdGlvbldpdGhNZXNzYWdlXSBJREJSZXF1ZXN0IG9wZW5LZXlDdXJzb3Io
YW55IGtleSwgb3B0aW9uYWwgRE9NU3RyaW5nIGRpcmVjdGlvbiA9ICJuZXh0Iik7CisgICAgW0Nh
bGxXaXRoPVNjcmlwdFN0YXRlLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbldpdGhNZXNzYWdlXSBJ
REJSZXF1ZXN0IG9wZW5LZXlDdXJzb3Iob3B0aW9uYWwgSURCS2V5UmFuZ2U/IHJhbmdlID0gbnVs
bCwgb3B0aW9uYWwgRE9NU3RyaW5nIGRpcmVjdGlvbiA9ICJuZXh0Iik7CisgICAgW0NhbGxXaXRo
PVNjcmlwdFN0YXRlLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbldpdGhNZXNzYWdlXSBJREJSZXF1
ZXN0IG9wZW5LZXlDdXJzb3IoYW55IGtleSwgb3B0aW9uYWwgRE9NU3RyaW5nIGRpcmVjdGlvbiA9
ICJuZXh0Iik7CiAKLSAgICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGUsIFJhaXNlc0V4Y2VwdGlvbldp
dGhNZXNzYWdlXSBJREJSZXF1ZXN0IGdldChJREJLZXlSYW5nZT8ga2V5KTsKLSAgICBbQ2FsbFdp
dGg9U2NyaXB0U3RhdGUsIFJhaXNlc0V4Y2VwdGlvbldpdGhNZXNzYWdlXSBJREJSZXF1ZXN0IGdl
dChhbnkga2V5KTsKLSAgICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGUsIFJhaXNlc0V4Y2VwdGlvbldp
dGhNZXNzYWdlXSBJREJSZXF1ZXN0IGdldEtleShJREJLZXlSYW5nZT8ga2V5KTsKLSAgICBbQ2Fs
bFdpdGg9U2NyaXB0U3RhdGUsIFJhaXNlc0V4Y2VwdGlvbldpdGhNZXNzYWdlXSBJREJSZXF1ZXN0
IGdldEtleShhbnkga2V5KTsKLSAgICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGUsIFJhaXNlc0V4Y2Vw
dGlvbldpdGhNZXNzYWdlXSBJREJSZXF1ZXN0IGNvdW50KG9wdGlvbmFsIElEQktleVJhbmdlPyBy
YW5nZSA9IG51bGwpOwotICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwgUmFpc2VzRXhjZXB0aW9u
V2l0aE1lc3NhZ2VdIElEQlJlcXVlc3QgY291bnQoYW55IGtleSk7CisgICAgW0NhbGxXaXRoPVNj
cmlwdFN0YXRlLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbldpdGhNZXNzYWdlXSBJREJSZXF1ZXN0
IGdldChJREJLZXlSYW5nZT8ga2V5KTsKKyAgICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGUsIE1heVRo
cm93TGVnYWN5RXhjZXB0aW9uV2l0aE1lc3NhZ2VdIElEQlJlcXVlc3QgZ2V0KGFueSBrZXkpOwor
ICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRoTWVz
c2FnZV0gSURCUmVxdWVzdCBnZXRLZXkoSURCS2V5UmFuZ2U/IGtleSk7CisgICAgW0NhbGxXaXRo
PVNjcmlwdFN0YXRlLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbldpdGhNZXNzYWdlXSBJREJSZXF1
ZXN0IGdldEtleShhbnkga2V5KTsKKyAgICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGUsIE1heVRocm93
TGVnYWN5RXhjZXB0aW9uV2l0aE1lc3NhZ2VdIElEQlJlcXVlc3QgY291bnQob3B0aW9uYWwgSURC
S2V5UmFuZ2U/IHJhbmdlID0gbnVsbCk7CisgICAgW0NhbGxXaXRoPVNjcmlwdFN0YXRlLCBNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbldpdGhNZXNzYWdlXSBJREJSZXF1ZXN0IGNvdW50KGFueSBrZXkp
OwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
S2V5UmFuZ2UuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UmFu
Z2UuaWRsCmluZGV4IDVhMDc1NGQ2ODUyYzMyMTU1MTQzZTk1NmUxNmNiZjUyNTQwOGM1ZDMuLjRh
YzQ1OTE3Njk0ZGQ4NjNhOTk4YTFjZjBlNDU2MGQxNGQwYTJkMDIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlLmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlSYW5nZS5pZGwKQEAgLTMzLDggKzMzLDgg
QEAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBsb3dlck9wZW47CiAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIGJvb2xlYW4gdXBwZXJPcGVuOwogCi0gICAgW0NhbGxXaXRoPVNjcmlwdFN0
YXRlLCBSYWlzZXNFeGNlcHRpb25dIHN0YXRpYyBJREJLZXlSYW5nZSBvbmx5KGFueSB2YWx1ZSk7
Ci0gICAgW0NhbGxXaXRoPVNjcmlwdFN0YXRlLCBSYWlzZXNFeGNlcHRpb25dIHN0YXRpYyBJREJL
ZXlSYW5nZSBsb3dlckJvdW5kKGFueSBsb3dlciwgb3B0aW9uYWwgYm9vbGVhbiBvcGVuID0gZmFs
c2UpOwotICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwgUmFpc2VzRXhjZXB0aW9uXSBzdGF0aWMg
SURCS2V5UmFuZ2UgdXBwZXJCb3VuZChhbnkgdXBwZXIsIG9wdGlvbmFsIGJvb2xlYW4gb3BlbiA9
IGZhbHNlKTsKLSAgICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGUsIFJhaXNlc0V4Y2VwdGlvbl0gc3Rh
dGljIElEQktleVJhbmdlIGJvdW5kKGFueSBsb3dlciwgYW55IHVwcGVyLCBvcHRpb25hbCBib29s
ZWFuIGxvd2VyT3BlbiA9IGZhbHNlLCBvcHRpb25hbCBib29sZWFuIHVwcGVyT3BlbiA9IGZhbHNl
KTsKKyAgICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGUsIE1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBz
dGF0aWMgSURCS2V5UmFuZ2Ugb25seShhbnkgdmFsdWUpOworICAgIFtDYWxsV2l0aD1TY3JpcHRT
dGF0ZSwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHN0YXRpYyBJREJLZXlSYW5nZSBsb3dlckJv
dW5kKGFueSBsb3dlciwgb3B0aW9uYWwgYm9vbGVhbiBvcGVuID0gZmFsc2UpOworICAgIFtDYWxs
V2l0aD1TY3JpcHRTdGF0ZSwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHN0YXRpYyBJREJLZXlS
YW5nZSB1cHBlckJvdW5kKGFueSB1cHBlciwgb3B0aW9uYWwgYm9vbGVhbiBvcGVuID0gZmFsc2Up
OworICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHN0
YXRpYyBJREJLZXlSYW5nZSBib3VuZChhbnkgbG93ZXIsIGFueSB1cHBlciwgb3B0aW9uYWwgYm9v
bGVhbiBsb3dlck9wZW4gPSBmYWxzZSwgb3B0aW9uYWwgYm9vbGVhbiB1cHBlck9wZW4gPSBmYWxz
ZSk7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
T2JqZWN0U3RvcmUuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCT2Jq
ZWN0U3RvcmUuaWRsCmluZGV4IGRiMDg3OTZkMjUwZGZhNzY3OGZhOGU1NGE2ZjMwYjI4Y2FlYzc0
NGIuLjE1NTlkMzE0ODQ5ZjIxMjc4NGM2NjU5NjQ2NWRkOGZkMTQ1NjhmYjkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQk9iamVjdFN0b3JlLmlkbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPYmplY3RTdG9yZS5pZGwKQEAg
LTM2LDIxICszNiwyMSBAQAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBJREJUcmFuc2FjdGlvbiB0
cmFuc2FjdGlvbjsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBhdXRvSW5jcmVtZW50
OwogCi0gICAgW0NhbGxXaXRoPVNjcmlwdFN0YXRlLCBSYWlzZXNFeGNlcHRpb25XaXRoTWVzc2Fn
ZV0gSURCUmVxdWVzdCBwdXQoYW55IHZhbHVlLCBvcHRpb25hbCBhbnkga2V5KTsKLSAgICBbQ2Fs
bFdpdGg9U2NyaXB0U3RhdGUsIFJhaXNlc0V4Y2VwdGlvbldpdGhNZXNzYWdlXSBJREJSZXF1ZXN0
IGFkZChhbnkgdmFsdWUsIG9wdGlvbmFsIGFueSBrZXkpOwotICAgIFtDYWxsV2l0aD1TY3JpcHRT
dGF0ZSwgSW1wbGVtZW50ZWRBcz1kZWxldGVGdW5jdGlvbiwgUmFpc2VzRXhjZXB0aW9uV2l0aE1l
c3NhZ2VdIElEQlJlcXVlc3QgZGVsZXRlKElEQktleVJhbmdlPyBrZXlSYW5nZSk7Ci0gICAgW0Nh
bGxXaXRoPVNjcmlwdFN0YXRlLCBJbXBsZW1lbnRlZEFzPWRlbGV0ZUZ1bmN0aW9uLCBSYWlzZXNF
eGNlcHRpb25XaXRoTWVzc2FnZV0gSURCUmVxdWVzdCBkZWxldGUoYW55IGtleSk7Ci0gICAgW0Nh
bGxXaXRoPVNjcmlwdFN0YXRlLCBSYWlzZXNFeGNlcHRpb25XaXRoTWVzc2FnZV0gSURCUmVxdWVz
dCBnZXQoSURCS2V5UmFuZ2U/IGtleSk7Ci0gICAgW0NhbGxXaXRoPVNjcmlwdFN0YXRlLCBSYWlz
ZXNFeGNlcHRpb25XaXRoTWVzc2FnZV0gSURCUmVxdWVzdCBnZXQoYW55IGtleSk7Ci0gICAgW0Nh
bGxXaXRoPVNjcmlwdFN0YXRlLCBSYWlzZXNFeGNlcHRpb25XaXRoTWVzc2FnZV0gSURCUmVxdWVz
dCBjbGVhcigpOwotICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwgUmFpc2VzRXhjZXB0aW9uV2l0
aE1lc3NhZ2VdIElEQlJlcXVlc3Qgb3BlbkN1cnNvcihvcHRpb25hbCBJREJLZXlSYW5nZT8gcmFu
Z2UgPSBudWxsLCBvcHRpb25hbCBET01TdHJpbmcgZGlyZWN0aW9uID0gIm5leHQiKTsKLSAgICBb
Q2FsbFdpdGg9U2NyaXB0U3RhdGUsIFJhaXNlc0V4Y2VwdGlvbldpdGhNZXNzYWdlXSBJREJSZXF1
ZXN0IG9wZW5DdXJzb3IoYW55IGtleSwgb3B0aW9uYWwgRE9NU3RyaW5nIGRpcmVjdGlvbiA9ICJu
ZXh0Iik7Ci0gICAgW0NhbGxXaXRoPVNjcmlwdFN0YXRlLCBSYWlzZXNFeGNlcHRpb25XaXRoTWVz
c2FnZV0gSURCSW5kZXggY3JlYXRlSW5kZXgoRE9NU3RyaW5nIG5hbWUsIHNlcXVlbmNlPERPTVN0
cmluZz4ga2V5UGF0aCwgb3B0aW9uYWwgSURCSW5kZXhQYXJhbWV0ZXJzIG9wdGlvbnMpOwotICAg
IFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwgUmFpc2VzRXhjZXB0aW9uV2l0aE1lc3NhZ2VdIElEQklu
ZGV4IGNyZWF0ZUluZGV4KERPTVN0cmluZyBuYW1lLCBET01TdHJpbmcga2V5UGF0aCwgb3B0aW9u
YWwgSURCSW5kZXhQYXJhbWV0ZXJzIG9wdGlvbnMpOwotICAgIFtSYWlzZXNFeGNlcHRpb25XaXRo
TWVzc2FnZV0gSURCSW5kZXggaW5kZXgoRE9NU3RyaW5nIG5hbWUpOwotICAgIFtSYWlzZXNFeGNl
cHRpb25XaXRoTWVzc2FnZV0gdm9pZCBkZWxldGVJbmRleChET01TdHJpbmcgbmFtZSk7Ci0gICAg
W0NhbGxXaXRoPVNjcmlwdFN0YXRlLCBSYWlzZXNFeGNlcHRpb25XaXRoTWVzc2FnZV0gSURCUmVx
dWVzdCBjb3VudChvcHRpb25hbCBJREJLZXlSYW5nZT8gcmFuZ2UgPSBudWxsKTsKLSAgICBbQ2Fs
bFdpdGg9U2NyaXB0U3RhdGUsIFJhaXNlc0V4Y2VwdGlvbldpdGhNZXNzYWdlXSBJREJSZXF1ZXN0
IGNvdW50KGFueSBrZXkpOworICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwgTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb25XaXRoTWVzc2FnZV0gSURCUmVxdWVzdCBwdXQoYW55IHZhbHVlLCBvcHRpb25h
bCBhbnkga2V5KTsKKyAgICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGUsIE1heVRocm93TGVnYWN5RXhj
ZXB0aW9uV2l0aE1lc3NhZ2VdIElEQlJlcXVlc3QgYWRkKGFueSB2YWx1ZSwgb3B0aW9uYWwgYW55
IGtleSk7CisgICAgW0NhbGxXaXRoPVNjcmlwdFN0YXRlLCBJbXBsZW1lbnRlZEFzPWRlbGV0ZUZ1
bmN0aW9uLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbldpdGhNZXNzYWdlXSBJREJSZXF1ZXN0IGRl
bGV0ZShJREJLZXlSYW5nZT8ga2V5UmFuZ2UpOworICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwg
SW1wbGVtZW50ZWRBcz1kZWxldGVGdW5jdGlvbiwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRo
TWVzc2FnZV0gSURCUmVxdWVzdCBkZWxldGUoYW55IGtleSk7CisgICAgW0NhbGxXaXRoPVNjcmlw
dFN0YXRlLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbldpdGhNZXNzYWdlXSBJREJSZXF1ZXN0IGdl
dChJREJLZXlSYW5nZT8ga2V5KTsKKyAgICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGUsIE1heVRocm93
TGVnYWN5RXhjZXB0aW9uV2l0aE1lc3NhZ2VdIElEQlJlcXVlc3QgZ2V0KGFueSBrZXkpOworICAg
IFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRoTWVzc2Fn
ZV0gSURCUmVxdWVzdCBjbGVhcigpOworICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwgTWF5VGhy
b3dMZWdhY3lFeGNlcHRpb25XaXRoTWVzc2FnZV0gSURCUmVxdWVzdCBvcGVuQ3Vyc29yKG9wdGlv
bmFsIElEQktleVJhbmdlPyByYW5nZSA9IG51bGwsIG9wdGlvbmFsIERPTVN0cmluZyBkaXJlY3Rp
b24gPSAibmV4dCIpOworICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwgTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb25XaXRoTWVzc2FnZV0gSURCUmVxdWVzdCBvcGVuQ3Vyc29yKGFueSBrZXksIG9wdGlv
bmFsIERPTVN0cmluZyBkaXJlY3Rpb24gPSAibmV4dCIpOworICAgIFtDYWxsV2l0aD1TY3JpcHRT
dGF0ZSwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRoTWVzc2FnZV0gSURCSW5kZXggY3JlYXRl
SW5kZXgoRE9NU3RyaW5nIG5hbWUsIHNlcXVlbmNlPERPTVN0cmluZz4ga2V5UGF0aCwgb3B0aW9u
YWwgSURCSW5kZXhQYXJhbWV0ZXJzIG9wdGlvbnMpOworICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0
ZSwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRoTWVzc2FnZV0gSURCSW5kZXggY3JlYXRlSW5k
ZXgoRE9NU3RyaW5nIG5hbWUsIERPTVN0cmluZyBrZXlQYXRoLCBvcHRpb25hbCBJREJJbmRleFBh
cmFtZXRlcnMgb3B0aW9ucyk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uV2l0aE1lc3Nh
Z2VdIElEQkluZGV4IGluZGV4KERPTVN0cmluZyBuYW1lKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb25XaXRoTWVzc2FnZV0gdm9pZCBkZWxldGVJbmRleChET01TdHJpbmcgbmFtZSk7Cisg
ICAgW0NhbGxXaXRoPVNjcmlwdFN0YXRlLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbldpdGhNZXNz
YWdlXSBJREJSZXF1ZXN0IGNvdW50KG9wdGlvbmFsIElEQktleVJhbmdlPyByYW5nZSA9IG51bGwp
OworICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRo
TWVzc2FnZV0gSURCUmVxdWVzdCBjb3VudChhbnkga2V5KTsKIH07CiAKIGRpY3Rpb25hcnkgSURC
SW5kZXhQYXJhbWV0ZXJzIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQlJlcXVlc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCUmVxdWVzdC5pZGwKaW5kZXggYTJiZWExNmM0YjEzMWU4ZmZlMzc3MGViNTMxYjMwOTQ0ODU1
OWNiNi4uMzk4ZTE2NTdhNGYyNTBmOGM5OWM0Njg3MGU0YTA4OWZiNmE3MWViZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCUmVxdWVzdC5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCUmVxdWVzdC5pZGwKQEAgLTM1LDcg
KzM1LDcgQEAKICAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbiwKIF0gaW50ZXJmYWNlIElEQlJlcXVl
c3QgOiBFdmVudFRhcmdldCB7CiAgICAgW0N1c3RvbUdldHRlcl0gcmVhZG9ubHkgYXR0cmlidXRl
IGFueSByZXN1bHQ7Ci0gICAgW0dldHRlclJhaXNlc0V4Y2VwdGlvbldpdGhNZXNzYWdlXSByZWFk
b25seSBhdHRyaWJ1dGUgRE9NRXJyb3IgZXJyb3I7CisgICAgW0dldHRlck1heVRocm93TGVnYWN5
RXhjZXB0aW9uV2l0aE1lc3NhZ2VdIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01FcnJvciBlcnJvcjsK
ICAgICBbQ3VzdG9tR2V0dGVyXSByZWFkb25seSBhdHRyaWJ1dGUgYW55IHNvdXJjZTsKICAgICBy
ZWFkb25seSBhdHRyaWJ1dGUgSURCVHJhbnNhY3Rpb24gdHJhbnNhY3Rpb247CiAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIERPTVN0cmluZyByZWFkeVN0YXRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24uaWRsIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24uaWRsCmluZGV4IGVlYjA4OTZiZGY0
OTNmMTZlOGEyOTE1YzY0ZjA1Y2Q3ZDIzOTExNTMuLjU3YTJjNzBkNGM0Y2VhN2RkNmNlNGI1MmYx
YzkxZTQ4NDk2NGFhZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL0lEQlRyYW5zYWN0aW9uLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJUcmFuc2FjdGlvbi5pZGwKQEAgLTM0LDggKzM0LDggQEAKICAgICByZWFkb25seSBh
dHRyaWJ1dGUgSURCRGF0YWJhc2UgZGI7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTUVycm9y
IGVycm9yOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbldpdGhNZXNzYWdlXSBJREJPYmplY3RTdG9y
ZSBvYmplY3RTdG9yZSAoRE9NU3RyaW5nIG5hbWUpOwotICAgIFtSYWlzZXNFeGNlcHRpb25XaXRo
TWVzc2FnZV0gdm9pZCBhYm9ydCAoKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRo
TWVzc2FnZV0gSURCT2JqZWN0U3RvcmUgb2JqZWN0U3RvcmUgKERPTVN0cmluZyBuYW1lKTsKKyAg
ICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRoTWVzc2FnZV0gdm9pZCBhYm9ydCAoKTsKIAog
ICAgIGF0dHJpYnV0ZSBFdmVudEhhbmRsZXIgb25hYm9ydDsKICAgICBhdHRyaWJ1dGUgRXZlbnRI
YW5kbGVyIG9uY29tcGxldGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc291cmNlL01lZGlhU291cmNlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFz
b3VyY2UvTWVkaWFTb3VyY2UuaWRsCmluZGV4IDIwMjI5Y2UzYjU4YzRiMTg2NTBlMjdmM2Y4NDRh
YTc3MGE2YTBiZWEuLjM3ZTlkYTQ0ZTI1ZjY0NjkxNGYxNTVjNmEyZmI5NTE1NWZjOTg2ZGEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvTWVkaWFTb3VyY2Uu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2UvTWVkaWFTb3VyY2Uu
aWRsCkBAIC00NiwxOSArNDYsMTkgQEAgZW51bSBFbmRPZlN0cmVhbUVycm9yIHsKICAgICAvLyBT
dWJzZXQgb2Ygc291cmNlQnVmZmVycyB0aGF0IHByb3ZpZGUgZGF0YSBmb3IgdGhlIHNlbGVjdGVk
L2VuYWJsZWQgdHJhY2tzLgogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBTb3VyY2VCdWZmZXJMaXN0
IGFjdGl2ZVNvdXJjZUJ1ZmZlcnM7CiAKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRy
aWJ1dGUgdW5yZXN0cmljdGVkIGRvdWJsZSBkdXJhdGlvbjsKKyAgICBbU2V0dGVyTWF5VGhyb3dM
ZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91YmxlIGR1cmF0aW9uOwog
Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gU291cmNlQnVmZmVyIGFkZFNvdXJjZUJ1ZmZlcihET01T
dHJpbmcgdHlwZSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCByZW1vdmVTb3VyY2VCdWZm
ZXIoU291cmNlQnVmZmVyIGJ1ZmZlcik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBT
b3VyY2VCdWZmZXIgYWRkU291cmNlQnVmZmVyKERPTVN0cmluZyB0eXBlKTsKKyAgICBbTWF5VGhy
b3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgcmVtb3ZlU291cmNlQnVmZmVyKFNvdXJjZUJ1ZmZlciBi
dWZmZXIpOwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyByZWFkeVN0YXRlOwog
ICAgIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgZW5kT2ZTdHJlYW0ob3B0aW9uYWwgRW5k
T2ZTdHJlYW1FcnJvciBlcnJvcik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lk
IGVuZE9mU3RyZWFtKG9wdGlvbmFsIEVuZE9mU3RyZWFtRXJyb3IgZXJyb3IpOwogCiAgICAgc3Rh
dGljIGJvb2xlYW4gaXNUeXBlU3VwcG9ydGVkIChET01TdHJpbmcgdHlwZSk7CiAKLSAgICBbUmFp
c2VzRXhjZXB0aW9uXSB2b2lkIHNldExpdmVTZWVrYWJsZVJhbmdlKGRvdWJsZSBzdGFydCwgZG91
YmxlIGVuZCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBjbGVhckxpdmVTZWVrYWJsZVJh
bmdlKCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNldExpdmVTZWVrYWJs
ZVJhbmdlKGRvdWJsZSBzdGFydCwgZG91YmxlIGVuZCk7CisgICAgW01heVRocm93TGVnYWN5RXhj
ZXB0aW9uXSB2b2lkIGNsZWFyTGl2ZVNlZWthYmxlUmFuZ2UoKTsKIAogICAgIGF0dHJpYnV0ZSBF
dmVudEhhbmRsZXIgb25zb3VyY2VvcGVuOwogICAgIGF0dHJpYnV0ZSBFdmVudEhhbmRsZXIgb25z
b3VyY2VlbmRlZDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3Vy
Y2UvU291cmNlQnVmZmVyLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzb3VyY2Uv
U291cmNlQnVmZmVyLmlkbAppbmRleCAzMjE5YTc3NDhmZTA5NDM2NWI5Mjk0NDEyNDI1MDg5YWYy
NDlmYTIyLi5lNDViN2MzN2UwNTczODEzYzdmZGIzOWM5MTY3NzIzMjNhMDhhMDEzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc291cmNlL1NvdXJjZUJ1ZmZlci5pZGwK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXNvdXJjZS9Tb3VyY2VCdWZmZXIuaWRs
CkBAIC0zOSwzMSArMzksMzEgQEAKICAgICBFeHBvcnRNYWNybz1XRUJDT1JFX0VYUE9SVCwKIF0g
aW50ZXJmYWNlIFNvdXJjZUJ1ZmZlciA6IEV2ZW50VGFyZ2V0IHsKIAotICAgIFtTZXR0ZXJSYWlz
ZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBBcHBlbmRNb2RlIG1vZGU7CisgICAgW1NldHRlck1heVRo
cm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgQXBwZW5kTW9kZSBtb2RlOwogCiAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIGJvb2xlYW4gdXBkYXRpbmc7CiAgIAogICAgIC8vIFJldHVybnMgdGhl
IHRpbWUgcmFuZ2VzIGJ1ZmZlcmVkLgotICAgIFtHZXR0ZXJSYWlzZXNFeGNlcHRpb25dIHJlYWRv
bmx5IGF0dHJpYnV0ZSBUaW1lUmFuZ2VzIGJ1ZmZlcmVkOworICAgIFtHZXR0ZXJNYXlUaHJvd0xl
Z2FjeUV4Y2VwdGlvbl0gcmVhZG9ubHkgYXR0cmlidXRlIFRpbWVSYW5nZXMgYnVmZmVyZWQ7CiAK
ICAgICAvLyBBcHBsaWVzIGFuIG9mZnNldCB0byBtZWRpYSBzZWdtZW50IHRpbWVzdGFtcHMuCi0g
ICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIGRvdWJsZSB0aW1lc3RhbXBPZmZz
ZXQ7CisgICAgW1NldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgZG91Ymxl
IHRpbWVzdGFtcE9mZnNldDsKIAogICAgIC8vIFRyYWNrIHN1cHBvcnQKICAgICBbQ29uZGl0aW9u
YWw9VklERU9fVFJBQ0tdIHJlYWRvbmx5IGF0dHJpYnV0ZSBBdWRpb1RyYWNrTGlzdCBhdWRpb1Ry
YWNrczsKICAgICBbQ29uZGl0aW9uYWw9VklERU9fVFJBQ0tdIHJlYWRvbmx5IGF0dHJpYnV0ZSBW
aWRlb1RyYWNrTGlzdCB2aWRlb1RyYWNrczsKICAgICBbQ29uZGl0aW9uYWw9VklERU9fVFJBQ0td
IHJlYWRvbmx5IGF0dHJpYnV0ZSBUZXh0VHJhY2tMaXN0IHRleHRUcmFja3M7CiAKLSAgICBbU2V0
dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgZG91YmxlIGFwcGVuZFdpbmRvd1N0YXJ0Owot
ICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91Ymxl
IGFwcGVuZFdpbmRvd0VuZDsKKyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0
dHJpYnV0ZSBkb3VibGUgYXBwZW5kV2luZG93U3RhcnQ7CisgICAgW1NldHRlck1heVRocm93TGVn
YWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGRvdWJsZSBhcHBlbmRXaW5kb3dF
bmQ7CiAKICAgICAvLyBBcHBlbmQgc2VnbWVudCBkYXRhLgotICAgIFtSYWlzZXNFeGNlcHRpb25d
IHZvaWQgYXBwZW5kQnVmZmVyKEFycmF5QnVmZmVyIGRhdGEpOwotICAgIFtSYWlzZXNFeGNlcHRp
b25dIHZvaWQgYXBwZW5kQnVmZmVyKEFycmF5QnVmZmVyVmlldyBkYXRhKTsKKyAgICBbTWF5VGhy
b3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgYXBwZW5kQnVmZmVyKEFycmF5QnVmZmVyIGRhdGEpOwor
ICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBhcHBlbmRCdWZmZXIoQXJyYXlCdWZm
ZXJWaWV3IGRhdGEpOwogCiAgICAgLy8gQWJvcnQgdGhlIGN1cnJlbnQgc2VnbWVudCBhcHBlbmQg
c2VxdWVuY2UuCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBhYm9ydCgpOwotICAgIFtSYWlz
ZXNFeGNlcHRpb25dIHZvaWQgcmVtb3ZlKHVucmVzdHJpY3RlZCBkb3VibGUgc3RhcnQsIHVucmVz
dHJpY3RlZCBkb3VibGUgZW5kKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQg
YWJvcnQoKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgcmVtb3ZlKHVucmVz
dHJpY3RlZCBkb3VibGUgc3RhcnQsIHVucmVzdHJpY3RlZCBkb3VibGUgZW5kKTsKIAogICAgIGF0
dHJpYnV0ZSBFdmVudEhhbmRsZXIgb251cGRhdGVzdGFydDsKICAgICBhdHRyaWJ1dGUgRXZlbnRI
YW5kbGVyIG9udXBkYXRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YXN0cmVhbS9NZWRpYURldmljZXMuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0
cmVhbS9NZWRpYURldmljZXMuaWRsCmluZGV4IDNkMTY4MjA5NDg1YjA2MGFjOWZiMTEzY2UzZjI4
ZTg5ZjY2NTMwZjQuLjE2NTdhYjkyMjY3MjE2MjgyMjdjN2Y5MzFiMjA4YTNhZDUxMzQzZmEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFEZXZpY2Vz
LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhRGV2aWNl
cy5pZGwKQEAgLTM1LDUgKzM1LDUgQEAKICAgICBNZWRpYVRyYWNrU3VwcG9ydGVkQ29uc3RyYWlu
dHMgZ2V0U3VwcG9ydGVkQ29uc3RyYWludHMoKTsKIAogICAgIFtDdXN0b20sIFByaXZhdGVJZGVu
dGlmaWVyLCBQdWJsaWNJZGVudGlmaWVyXSBQcm9taXNlIGdldFVzZXJNZWRpYShEaWN0aW9uYXJ5
IG9wdGlvbnMpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIFByb21pc2UgZW51bWVyYXRlRGV2aWNl
cygpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gUHJvbWlzZSBlbnVtZXJhdGVEZXZp
Y2VzKCk7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9SVENEVE1GU2VuZGVyLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
UlRDRFRNRlNlbmRlci5pZGwKaW5kZXggMDQ0MzRjYTY1ZjEwNzNjNjViZjU2NWMxZjI2OTIzZjA1
YmI0Y2EyZi4uNzk1YjkzOTE0OWYzMjM0NDdhZTQ4MWE5Nzk4Mjc3NTg3ODg3ZDM4ZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEVE1GU2VuZGVyLmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RUTUZTZW5kZXIu
aWRsCkBAIC0zNCw3ICszNCw3IEBACiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGxvbmcgZHVyYXRp
b247CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGxvbmcgaW50ZXJUb25lR2FwOwogCi0gICAgW1Jh
aXNlc0V4Y2VwdGlvbl0gdm9pZCBpbnNlcnREVE1GKERPTVN0cmluZyB0b25lcywgb3B0aW9uYWwg
bG9uZyBkdXJhdGlvbiwgb3B0aW9uYWwgbG9uZyBpbnRlclRvbmVHYXApOworICAgIFtNYXlUaHJv
d0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBpbnNlcnREVE1GKERPTVN0cmluZyB0b25lcywgb3B0aW9u
YWwgbG9uZyBkdXJhdGlvbiwgb3B0aW9uYWwgbG9uZyBpbnRlclRvbmVHYXApOwogCiAgICAgYXR0
cmlidXRlIEV2ZW50SGFuZGxlciBvbnRvbmVjaGFuZ2U7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbC5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RhdGFDaGFubmVsLmlkbAppbmRleCA1NWUw
ZDg2YjE1MzY2M2EzYzkwYjIyZmE2ZTU3NzgxYmFiNDBkNGJhLi41ZmU2ZGVkZWNjZTc2ZTA5YWI1
Y2UxMzhkZTNiNzA0ZjdlNTE4YTliIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhc3RyZWFtL1JUQ0RhdGFDaGFubmVsLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21lZGlhc3RyZWFtL1JUQ0RhdGFDaGFubmVsLmlkbApAQCAtMzYsMTIgKzM2LDEyIEBACiAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyByZWFkeVN0YXRlOwogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGJ1ZmZlcmVkQW1vdW50OwogCi0gICAgW1NldHRlclJh
aXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBiaW5hcnlUeXBlOworICAgIFtTZXR0
ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBiaW5hcnlUeXBl
OwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZW5kKEFycmF5QnVmZmVyIGRhdGEpOwot
ICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2VuZChBcnJheUJ1ZmZlclZpZXcgZGF0YSk7Ci0g
ICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZW5kKEJsb2IgZGF0YSk7Ci0gICAgW1JhaXNlc0V4
Y2VwdGlvbl0gdm9pZCBzZW5kKERPTVN0cmluZyBkYXRhKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb25dIHZvaWQgc2VuZChBcnJheUJ1ZmZlciBkYXRhKTsKKyAgICBbTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb25dIHZvaWQgc2VuZChBcnJheUJ1ZmZlclZpZXcgZGF0YSk7CisgICAgW01heVRo
cm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNlbmQoQmxvYiBkYXRhKTsKKyAgICBbTWF5VGhyb3dM
ZWdhY3lFeGNlcHRpb25dIHZvaWQgc2VuZChET01TdHJpbmcgZGF0YSk7CiAKICAgICB2b2lkIGNs
b3NlKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
UlRDSWNlQ2FuZGlkYXRlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
UlRDSWNlQ2FuZGlkYXRlLmlkbAppbmRleCA4YzJkOWJlODQ0ODUwNTRjMTZiNTE5MzM0M2NhZGM3
Njc3MDI5ZjQzLi5hYzRmZGM0Mjg2YWVlM2Q0NjJkNWM3ZjNhZjZiOWIzMTFhNzAxNWE1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0ljZUNhbmRpZGF0
ZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENJY2VDYW5k
aWRhdGUuaWRsCkBAIC0zMiw3ICszMiw3IEBACiBbCiAgICAgQ29uZGl0aW9uYWw9V0VCX1JUQywK
ICAgICBDb25zdHJ1Y3RvcihEaWN0aW9uYXJ5IGRpY3Rpb25hcnkpLAotICAgIENvbnN0cnVjdG9y
UmFpc2VzRXhjZXB0aW9uLAorICAgIENvbnN0cnVjdG9yTWF5VGhyb3dMZWdhY3lFeGNlcHRpb24s
CiAgICAgUHJpdmF0ZUlkZW50aWZpZXIsCiAgICAgUHVibGljSWRlbnRpZmllcgogXSBpbnRlcmZh
Y2UgUlRDSWNlQ2FuZGlkYXRlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bWVkaWFzdHJlYW0vUlRDUGVlckNvbm5lY3Rpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5pZGwKaW5kZXggMmFkMTM5NDhhYWMwZGY3
YTk0YzFlNGVjZjZhMWRkMmVmOTc1ZDZkZi4uZjllZTIyODcyOWYyM2NiM2JiZjI2ODcxZjllNjI2
NmU4NGJhMzY2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9SVENQZWVyQ29ubmVjdGlvbi5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YXN0cmVhbS9SVENQZWVyQ29ubmVjdGlvbi5pZGwKQEAgLTM4LDE4ICszOCwxOCBAQAogICAgIElu
dGVyZmFjZU5hbWU9d2Via2l0UlRDUGVlckNvbm5lY3Rpb24sCiBdIGludGVyZmFjZSBSVENQZWVy
Q29ubmVjdGlvbiA6IEV2ZW50VGFyZ2V0IHsKICAgICAvLyBQcml2YXRlIGluaXRpYWxpemVyCi0g
ICAgW1ByaXZhdGVJZGVudGlmaWVyLCBDYWxsV2l0aD1Eb2N1bWVudCwgUmFpc2VzRXhjZXB0aW9u
XSB2b2lkIGluaXRpYWxpemVXaXRoKERpY3Rpb25hcnkgcGFyYW1ldGVycyk7CisgICAgW1ByaXZh
dGVJZGVudGlmaWVyLCBDYWxsV2l0aD1Eb2N1bWVudCwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25d
IHZvaWQgaW5pdGlhbGl6ZVdpdGgoRGljdGlvbmFyeSBwYXJhbWV0ZXJzKTsKIAogICAgIC8vIFJU
UCBNZWRpYSBBUEkgZXh0ZW5zaW9ucwogICAgIFtQcml2YXRlSWRlbnRpZmllciwgUHVibGljSWRl
bnRpZmllcl0gc2VxdWVuY2U8UlRDUnRwU2VuZGVyPiBnZXRTZW5kZXJzKCk7CiAgICAgc2VxdWVu
Y2U8UlRDUnRwUmVjZWl2ZXI+IGdldFJlY2VpdmVycygpOwogICAgIHNlcXVlbmNlPFJUQ1J0cFRy
YW5zY2VpdmVyPiBnZXRUcmFuc2NlaXZlcnMoKTsKIAotICAgIFtQcml2YXRlSWRlbnRpZmllciwg
UHVibGljSWRlbnRpZmllciwgUmFpc2VzRXhjZXB0aW9uXSBSVENSdHBTZW5kZXIgYWRkVHJhY2so
TWVkaWFTdHJlYW1UcmFjayB0cmFjaywgTWVkaWFTdHJlYW0uLi4gc3RyZWFtcyk7Ci0gICAgW1By
aXZhdGVJZGVudGlmaWVyLCBQdWJsaWNJZGVudGlmaWVyLCBSYWlzZXNFeGNlcHRpb25dIHZvaWQg
cmVtb3ZlVHJhY2soUlRDUnRwU2VuZGVyIHNlbmRlcik7CisgICAgW1ByaXZhdGVJZGVudGlmaWVy
LCBQdWJsaWNJZGVudGlmaWVyLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gUlRDUnRwU2VuZGVy
IGFkZFRyYWNrKE1lZGlhU3RyZWFtVHJhY2sgdHJhY2ssIE1lZGlhU3RyZWFtLi4uIHN0cmVhbXMp
OworICAgIFtQcml2YXRlSWRlbnRpZmllciwgUHVibGljSWRlbnRpZmllciwgTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb25dIHZvaWQgcmVtb3ZlVHJhY2soUlRDUnRwU2VuZGVyIHNlbmRlcik7CiAKLSAg
ICBbUmFpc2VzRXhjZXB0aW9uXSBSVENSdHBUcmFuc2NlaXZlciBhZGRUcmFuc2NlaXZlcihNZWRp
YVN0cmVhbVRyYWNrIHRyYWNrLCBvcHRpb25hbCBSVENSdHBUcmFuc2NlaXZlckluaXQgaW5pdCk7
Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gUlRDUnRwVHJhbnNjZWl2ZXIgYWRkVHJhbnNjZWl2ZXIo
RE9NU3RyaW5nIGtpbmQsIG9wdGlvbmFsIFJUQ1J0cFRyYW5zY2VpdmVySW5pdCBpbml0KTsKKyAg
ICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIFJUQ1J0cFRyYW5zY2VpdmVyIGFkZFRyYW5zY2Vp
dmVyKE1lZGlhU3RyZWFtVHJhY2sgdHJhY2ssIG9wdGlvbmFsIFJUQ1J0cFRyYW5zY2VpdmVySW5p
dCBpbml0KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIFJUQ1J0cFRyYW5zY2VpdmVy
IGFkZFRyYW5zY2VpdmVyKERPTVN0cmluZyBraW5kLCBvcHRpb25hbCBSVENSdHBUcmFuc2NlaXZl
ckluaXQgaW5pdCk7CiAKICAgICAvLyBMZWdhY3kgTWVkaWFTcmVhbS1iYXNlZCBBUEkgKGltcGxl
bWVudGVkIG9uIHRvcCBvZiB0aGUgUlRQIE1lZGlhIEFQSSkKICAgICBbSlNCdWlsdGluXSBzZXF1
ZW5jZTxNZWRpYVN0cmVhbT4gZ2V0TG9jYWxTdHJlYW1zKCk7CkBAIC05OCw3ICs5OCw3IEBACiAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBpY2VDb25uZWN0aW9uU3RhdGU7CiAKICAg
ICBSVENDb25maWd1cmF0aW9uIGdldENvbmZpZ3VyYXRpb24oKTsKLSAgICBbUmFpc2VzRXhjZXB0
aW9uXSB2b2lkIHNldENvbmZpZ3VyYXRpb24oRGljdGlvbmFyeSBjb25maWd1cmF0aW9uKTsKKyAg
ICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0Q29uZmlndXJhdGlvbihEaWN0aW9u
YXJ5IGNvbmZpZ3VyYXRpb24pOwogCiAgICAgW0pTQnVpbHRpbl0gUHJvbWlzZSBnZXRTdGF0cyhv
cHRpb25hbCBNZWRpYVN0cmVhbVRyYWNrPyBzZWxlY3RvciA9IG51bGwpOwogICAgIC8vIExlZ2Fj
eSBzaWduYXR1cmU6IFByb21pc2UgZ2V0U3RhdHMoTWVkaWFTdHJlYW1UcmFjaz8gc2VsZWN0b3IK
QEAgLTExNCw3ICsxMTQsNyBAQAogICAgIFtQcml2YXRlSWRlbnRpZmllcl0gUHJvbWlzZSBxdWV1
ZWRBZGRJY2VDYW5kaWRhdGUoUlRDSWNlQ2FuZGlkYXRlIGNhbmRpZGF0ZSk7CiAgICAgW1ByaXZh
dGVJZGVudGlmaWVyXSBQcm9taXNlIHByaXZhdGVHZXRTdGF0cyhNZWRpYVN0cmVhbVRyYWNrPyBz
ZWxlY3Rvcik7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBSVENEYXRhQ2hhbm5lbCBjcmVhdGVE
YXRhQ2hhbm5lbChbVHJlYXROdWxsQXM9RW1wdHlTdHJpbmddIERPTVN0cmluZyBsYWJlbCwgb3B0
aW9uYWwgRGljdGlvbmFyeSBvcHRpb25zKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25d
IFJUQ0RhdGFDaGFubmVsIGNyZWF0ZURhdGFDaGFubmVsKFtUcmVhdE51bGxBcz1FbXB0eVN0cmlu
Z10gRE9NU3RyaW5nIGxhYmVsLCBvcHRpb25hbCBEaWN0aW9uYXJ5IG9wdGlvbnMpOwogCiAgICAg
dm9pZCBjbG9zZSgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL1JUQ1J0cFNlbmRlci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL1JUQ1J0cFNlbmRlci5pZGwKaW5kZXggZTVhMzQ3ODc3NjE2ZTNlMzQwOGYzNDBhNDY5ZjQz
ZWZjYjgwNjExZi4uMGRiNWE5MDg2MWJmNDU0YzM1Mjc5NWE1ZjE3MGMyZjhmN2NjOWMwNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENSdHBTZW5kZXIu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUnRwU2VuZGVy
LmlkbApAQCAtMzMsNSArMzMsNSBAQAogXSBpbnRlcmZhY2UgUlRDUnRwU2VuZGVyIHsKICAgICBy
ZWFkb25seSBhdHRyaWJ1dGUgTWVkaWFTdHJlYW1UcmFjaz8gdHJhY2s7CiAKLSAgICBbUmFpc2Vz
RXhjZXB0aW9uXSBQcm9taXNlIHJlcGxhY2VUcmFjayhNZWRpYVN0cmVhbVRyYWNrIHdpdGhUcmFj
ayk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBQcm9taXNlIHJlcGxhY2VUcmFjayhN
ZWRpYVN0cmVhbVRyYWNrIHdpdGhUcmFjayk7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb24uaWRsIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENTZXNzaW9uRGVzY3JpcHRpb24uaWRsCmlu
ZGV4IDczNTA5MmJjNTMwNThmZWNmYzc5ZWQ2OTcxZTRkMjk5NmExNTQ1ZGMuLjNhMDI4ZDc4YjA1
YjdhNWUzMzZmMmZjYzEwY2I4OGIxOTBjZWYxNDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDU2Vzc2lvbkRlc2NyaXB0aW9uLmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1Nlc3Npb25EZXNjcmlwdGlvbi5pZGwK
QEAgLTMyLDExICszMiwxMSBAQAogWwogICAgIENvbmRpdGlvbmFsPVdFQl9SVEMsCiAgICAgQ29u
c3RydWN0b3IoRGljdGlvbmFyeSBkaWN0aW9uYXJ5KSwKLSAgICBDb25zdHJ1Y3RvclJhaXNlc0V4
Y2VwdGlvbiwKKyAgICBDb25zdHJ1Y3Rvck1heVRocm93TGVnYWN5RXhjZXB0aW9uLAogICAgIFBy
aXZhdGVJZGVudGlmaWVyLAogICAgIFB1YmxpY0lkZW50aWZpZXIKIF0gaW50ZXJmYWNlIFJUQ1Nl
c3Npb25EZXNjcmlwdGlvbiB7Ci0gICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gcmVhZG9ubHkg
YXR0cmlidXRlIFJUQ1NkcFR5cGUgdHlwZTsKKyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNl
cHRpb25dIHJlYWRvbmx5IGF0dHJpYnV0ZSBSVENTZHBUeXBlIHR5cGU7CiAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIERPTVN0cmluZyBzZHA7CiAKICAgICBzZXJpYWxpemVyID0ge3R5cGUsIHNkcH07
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25hdmlnYXRvcmNvbnRlbnR1dGls
cy9OYXZpZ2F0b3JDb250ZW50VXRpbHMuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9uYXZp
Z2F0b3Jjb250ZW50dXRpbHMvTmF2aWdhdG9yQ29udGVudFV0aWxzLmlkbAppbmRleCBhOWY0YjMx
MTRiMThhY2Q3YmViNmI5ZGJjMGM3ZTcyNzg2MDhkMzc5Li4zMTNhMGVlOTBmNWI4YmIxZDlhZDdm
MjFhMDRhYjRjZmI1NWRmMjRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25h
dmlnYXRvcmNvbnRlbnR1dGlscy9OYXZpZ2F0b3JDb250ZW50VXRpbHMuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbmF2aWdhdG9yY29udGVudHV0aWxzL05hdmlnYXRvckNvbnRlbnRV
dGlscy5pZGwKQEAgLTIwLDggKzIwLDggQEAKIAogLy8gaHR0cDovL3d3dy53My5vcmcvVFIvaHRt
bDUvc3lzdGVtLXN0YXRlLWFuZC1jYXBhYmlsaXRpZXMuaHRtbCNjdXN0b20taGFuZGxlcnMKIHBh
cnRpYWwgaW50ZXJmYWNlIE5hdmlnYXRvciB7Ci0gICAgW0NvbmRpdGlvbmFsPU5BVklHQVRPUl9D
T05URU5UX1VUSUxTLCBSYWlzZXNFeGNlcHRpb25dIHZvaWQgcmVnaXN0ZXJQcm90b2NvbEhhbmRs
ZXIoRE9NU3RyaW5nIHNjaGVtZSwgRE9NU3RyaW5nIHVybCwgRE9NU3RyaW5nIHRpdGxlKTsKLSAg
ICBbQ29uZGl0aW9uYWw9TkFWSUdBVE9SX0NPTlRFTlRfVVRJTFMmQ1VTVE9NX1NDSEVNRV9IQU5E
TEVSLCBSYWlzZXNFeGNlcHRpb25dIERPTVN0cmluZyBpc1Byb3RvY29sSGFuZGxlclJlZ2lzdGVy
ZWQoRE9NU3RyaW5nIHNjaGVtZSwgRE9NU3RyaW5nIHVybCk7Ci0gICAgW0NvbmRpdGlvbmFsPU5B
VklHQVRPUl9DT05URU5UX1VUSUxTJkNVU1RPTV9TQ0hFTUVfSEFORExFUiwgUmFpc2VzRXhjZXB0
aW9uXSB2b2lkIHVucmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoRE9NU3RyaW5nIHNjaGVtZSwgRE9N
U3RyaW5nIHVybCk7CisgICAgW0NvbmRpdGlvbmFsPU5BVklHQVRPUl9DT05URU5UX1VUSUxTLCBN
YXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCByZWdpc3RlclByb3RvY29sSGFuZGxlcihET01T
dHJpbmcgc2NoZW1lLCBET01TdHJpbmcgdXJsLCBET01TdHJpbmcgdGl0bGUpOworICAgIFtDb25k
aXRpb25hbD1OQVZJR0FUT1JfQ09OVEVOVF9VVElMUyZDVVNUT01fU0NIRU1FX0hBTkRMRVIsIE1h
eVRocm93TGVnYWN5RXhjZXB0aW9uXSBET01TdHJpbmcgaXNQcm90b2NvbEhhbmRsZXJSZWdpc3Rl
cmVkKERPTVN0cmluZyBzY2hlbWUsIERPTVN0cmluZyB1cmwpOworICAgIFtDb25kaXRpb25hbD1O
QVZJR0FUT1JfQ09OVEVOVF9VVElMUyZDVVNUT01fU0NIRU1FX0hBTkRMRVIsIE1heVRocm93TGVn
YWN5RXhjZXB0aW9uXSB2b2lkIHVucmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoRE9NU3RyaW5nIHNj
aGVtZSwgRE9NU3RyaW5nIHVybCk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmlkbCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuaWRsCmluZGV4IGFl
NWI1YjY2YjQ0OTgxOGUxM2UxNWIyZDgyYjQ1OWEzYjEzMmFkYzIuLjM2Y2IyMzk5YWJlNTMxMDdm
YmEwNTZhMGM1OTM0ZjBiYWFkMDk5NGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuaWRsCkBAIC0zNCw3
ICszNCw3IEBACiAgICAgQ29uZGl0aW9uYWw9TEVHQUNZX05PVElGSUNBVElPTlMsCiAgICAgTm9J
bnRlcmZhY2VPYmplY3QsCiBdIGludGVyZmFjZSBOb3RpZmljYXRpb25DZW50ZXIgewotICAgW1Jh
aXNlc0V4Y2VwdGlvbl0gTm90aWZpY2F0aW9uIGNyZWF0ZU5vdGlmaWNhdGlvbihET01TdHJpbmcg
aWNvblVybCwgRE9NU3RyaW5nIHRpdGxlLCBET01TdHJpbmcgYm9keSk7CisgICBbTWF5VGhyb3dM
ZWdhY3lFeGNlcHRpb25dIE5vdGlmaWNhdGlvbiBjcmVhdGVOb3RpZmljYXRpb24oRE9NU3RyaW5n
IGljb25VcmwsIERPTVN0cmluZyB0aXRsZSwgRE9NU3RyaW5nIGJvZHkpOwogCiAgICBsb25nIGNo
ZWNrUGVybWlzc2lvbigpOwogICAgdm9pZCByZXF1ZXN0UGVybWlzc2lvbihvcHRpb25hbCBWb2lk
Q2FsbGJhY2s/IGNhbGxiYWNrKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViYXVkaW8vQW5hbHlzZXJOb2RlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVk
aW8vQW5hbHlzZXJOb2RlLmlkbAppbmRleCBiYjA2YTk4MWUwOTBlMDVmNDc2ZGRlNzBjOGJhNTc3
YTA5YjkzZDk3Li4zM2Q1ZmI2ZTY3Y2I5NmY0NjY0M2U5NGI1NDZmNWQ5YmUyZDg4MjdjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0FuYWx5c2VyTm9kZS5pZGwK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BbmFseXNlck5vZGUuaWRsCkBA
IC0yNiwxNSArMjYsMTUgQEAKICAgICBDb25kaXRpb25hbD1XRUJfQVVESU8sCiAgICAgSlNHZW5l
cmF0ZVRvSlNPYmplY3QsCiBdIGludGVyZmFjZSBBbmFseXNlck5vZGUgOiBBdWRpb05vZGUgewot
ICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGZmdFNp
emU7CisgICAgW1NldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgdW5zaWdu
ZWQgbG9uZyBmZnRTaXplOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGZy
ZXF1ZW5jeUJpbkNvdW50OwogCiAgICAgLy8gbWluRGVjaWJlbHMgLyBtYXhEZWNpYmVscyByZXBy
ZXNlbnQgdGhlIHJhbmdlIHRvIHNjYWxlIHRoZSBGRlQgYW5hbHlzaXMgZGF0YSBmb3IgY29udmVy
c2lvbiB0byB1bnNpZ25lZCBieXRlIHZhbHVlcy4KLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9u
XSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGRvdWJsZSBtaW5EZWNpYmVsczsKLSAgICBbU2V0dGVy
UmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGRvdWJsZSBtYXhEZWNpYmVs
czsKKyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3Ry
aWN0ZWQgZG91YmxlIG1pbkRlY2liZWxzOworICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBkb3VibGUgbWF4RGVjaWJlbHM7CiAKICAgICAv
LyBBIHZhbHVlIGZyb20gMC4wIC0+IDEuMCB3aGVyZSAwLjAgcmVwcmVzZW50cyBubyB0aW1lIGF2
ZXJhZ2luZyB3aXRoIHRoZSBsYXN0IGFuYWx5c2lzIGZyYW1lLgotICAgIFtTZXR0ZXJSYWlzZXNF
eGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91YmxlIHNtb290aGluZ1RpbWVDb25z
dGFudDsKKyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJl
c3RyaWN0ZWQgZG91YmxlIHNtb290aGluZ1RpbWVDb25zdGFudDsKIAogICAgIC8vIENvcGllcyB0
aGUgY3VycmVudCBmcmVxdWVuY3kgZGF0YSBpbnRvIHRoZSBwYXNzZWQgYXJyYXkuCiAgICAgLy8g
SWYgdGhlIGFycmF5IGhhcyBmZXdlciBlbGVtZW50cyB0aGFuIHRoZSBmcmVxdWVuY3lCaW5Db3Vu
dCwgdGhlIGV4Y2VzcyBlbGVtZW50cyB3aWxsIGJlIGRyb3BwZWQuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvQnVmZmVyLmlkbCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9CdWZmZXIuaWRsCmluZGV4IDg3ZTI0ZTgwZmY3M2Zl
YjMyZDQ0MjYxZDU2NmU1M2MxMTU4Zjc0NjMuLjdiOGUwZTI2YzBiM2ZlMDBjZjZiODU1MmUxMWJh
MmQ1OTg4NjUyYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
QXVkaW9CdWZmZXIuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVk
aW9CdWZmZXIuaWRsCkBAIC0zOSw1ICszOSw1IEBACiAKICAgICAvLyBDaGFubmVsIGFjY2Vzcwog
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIG51bWJlck9mQ2hhbm5lbHM7Ci0g
ICAgW1JhaXNlc0V4Y2VwdGlvbl0gRmxvYXQzMkFycmF5IGdldENoYW5uZWxEYXRhKHVuc2lnbmVk
IGxvbmcgY2hhbm5lbEluZGV4KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIEZsb2F0
MzJBcnJheSBnZXRDaGFubmVsRGF0YSh1bnNpZ25lZCBsb25nIGNoYW5uZWxJbmRleCk7CiB9Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb0J1ZmZlclNv
dXJjZU5vZGUuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb0J1ZmZl
clNvdXJjZU5vZGUuaWRsCmluZGV4IDVlYzlkNTQzYTczNGIyMDE2Zjk2MzU0NDc1Y2RiMTkwMTg4
Yzg4MmQuLjA3MDllMDYyYWYyOTM4YjVmMzAyNGUzOGFiNWYwYjYxYjI5MTg0MjkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9CdWZmZXJTb3VyY2VOb2Rl
LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvQnVmZmVyU291
cmNlTm9kZS5pZGwKQEAgLTQ0LDggKzQ0LDggQEAKICAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVk
IGRvdWJsZSBsb29wU3RhcnQ7CiAgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBkb3VibGUgbG9v
cEVuZDsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc3RhcnQob3B0aW9uYWwgdW5yZXN0
cmljdGVkIGRvdWJsZSB3aGVuID0gMCwgb3B0aW9uYWwgdW5yZXN0cmljdGVkIGRvdWJsZSBncmFp
bk9mZnNldCA9IDAsIG9wdGlvbmFsIHVucmVzdHJpY3RlZCBkb3VibGUgZ3JhaW5EdXJhdGlvbik7
Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzdG9wKG9wdGlvbmFsIHVucmVzdHJpY3RlZCBk
b3VibGUgd2hlbiA9IDApOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzdGFy
dChvcHRpb25hbCB1bnJlc3RyaWN0ZWQgZG91YmxlIHdoZW4gPSAwLCBvcHRpb25hbCB1bnJlc3Ry
aWN0ZWQgZG91YmxlIGdyYWluT2Zmc2V0ID0gMCwgb3B0aW9uYWwgdW5yZXN0cmljdGVkIGRvdWJs
ZSBncmFpbkR1cmF0aW9uKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc3Rv
cChvcHRpb25hbCB1bnJlc3RyaWN0ZWQgZG91YmxlIHdoZW4gPSAwKTsKIAogICAgIGF0dHJpYnV0
ZSBFdmVudEhhbmRsZXIgb25lbmRlZDsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmF1ZGlvL0F1ZGlvQ29udGV4dC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3dlYmF1ZGlvL0F1ZGlvQ29udGV4dC5pZGwKaW5kZXggZjNmNmY4MjI3MzBlM2I0MDdlMTIwYjlk
Y2VmYzZhZDQyMWQwY2NhMS4uODI2OThhOWQzNzg4OTY1MzJkZjZjNTkxYTViZTcyOTk1OTMxMjFm
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb0NvbnRl
eHQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Db250ZXh0
LmlkbApAQCAtNjEsOCArNjEsOCBAQCBlbnVtIEF1ZGlvQ29udGV4dFN0YXRlIHsKICAgICAvLyBO
dW1iZXIgb2YgQXVkaW9CdWZmZXJTb3VyY2VOb2RlcyB0aGF0IGFyZSBjdXJyZW50bHkgcGxheWlu
Zy4KICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBhY3RpdmVTb3VyY2VDb3Vu
dDsKICAgICAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBBdWRpb0J1ZmZlciBjcmVhdGVCdWZmZXIo
dW5zaWduZWQgbG9uZyBudW1iZXJPZkNoYW5uZWxzLCB1bnNpZ25lZCBsb25nIG51bWJlck9mRnJh
bWVzLCB1bnJlc3RyaWN0ZWQgZmxvYXQgc2FtcGxlUmF0ZSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlv
bl0gQXVkaW9CdWZmZXIgY3JlYXRlQnVmZmVyKEFycmF5QnVmZmVyIGJ1ZmZlciwgYm9vbGVhbiBt
aXhUb01vbm8pOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gQXVkaW9CdWZmZXIgY3Jl
YXRlQnVmZmVyKHVuc2lnbmVkIGxvbmcgbnVtYmVyT2ZDaGFubmVscywgdW5zaWduZWQgbG9uZyBu
dW1iZXJPZkZyYW1lcywgdW5yZXN0cmljdGVkIGZsb2F0IHNhbXBsZVJhdGUpOworICAgIFtNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbl0gQXVkaW9CdWZmZXIgY3JlYXRlQnVmZmVyKEFycmF5QnVmZmVy
IGJ1ZmZlciwgYm9vbGVhbiBtaXhUb01vbm8pOwogCiAgICAgLy8gQXN5bmNocm9ub3VzIGF1ZGlv
IGZpbGUgZGF0YSBkZWNvZGluZy4KICAgICAvLyBGSVhNRTogc3VjY2Vzc0NhbGxiYWNrIHNob3Vs
ZCBiZSBvcHRpb25hbCBhbmQgdGhlIGNhbGxiYWNrcyBzaG91bGQgbm90IGJlIG51bGxhYmxlLiBU
aGlzIHNob3VsZCBhbHNvIHJldHVybiBhIFByb21pc2UuCkBAIC03MSwyNyArNzEsMjcgQEAgZW51
bSBBdWRpb0NvbnRleHRTdGF0ZSB7CiAgICAgLy8gU291cmNlcwogICAgIEF1ZGlvQnVmZmVyU291
cmNlTm9kZSBjcmVhdGVCdWZmZXJTb3VyY2UoKTsKIAotICAgIFtDb25kaXRpb25hbD1WSURFTywg
UmFpc2VzRXhjZXB0aW9uXSBNZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUgY3JlYXRlTWVkaWFF
bGVtZW50U291cmNlKEhUTUxNZWRpYUVsZW1lbnQgbWVkaWFFbGVtZW50KTsKKyAgICBbQ29uZGl0
aW9uYWw9VklERU8sIE1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBNZWRpYUVsZW1lbnRBdWRpb1Nv
dXJjZU5vZGUgY3JlYXRlTWVkaWFFbGVtZW50U291cmNlKEhUTUxNZWRpYUVsZW1lbnQgbWVkaWFF
bGVtZW50KTsKIAotICAgIFtDb25kaXRpb25hbD1NRURJQV9TVFJFQU0sIFJhaXNlc0V4Y2VwdGlv
bl0gTWVkaWFTdHJlYW1BdWRpb1NvdXJjZU5vZGUgY3JlYXRlTWVkaWFTdHJlYW1Tb3VyY2UoTWVk
aWFTdHJlYW0gbWVkaWFTdHJlYW0pOworICAgIFtDb25kaXRpb25hbD1NRURJQV9TVFJFQU0sIE1h
eVRocm93TGVnYWN5RXhjZXB0aW9uXSBNZWRpYVN0cmVhbUF1ZGlvU291cmNlTm9kZSBjcmVhdGVN
ZWRpYVN0cmVhbVNvdXJjZShNZWRpYVN0cmVhbSBtZWRpYVN0cmVhbSk7CiAgICAgW0NvbmRpdGlv
bmFsPU1FRElBX1NUUkVBTV0gTWVkaWFTdHJlYW1BdWRpb0Rlc3RpbmF0aW9uTm9kZSBjcmVhdGVN
ZWRpYVN0cmVhbURlc3RpbmF0aW9uKCk7CiAKICAgICAvLyBQcm9jZXNzaW5nIG5vZGVzCiAgICAg
R2Fpbk5vZGUgY3JlYXRlR2FpbigpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIERlbGF5Tm9kZSBj
cmVhdGVEZWxheShvcHRpb25hbCB1bnJlc3RyaWN0ZWQgZG91YmxlIG1heERlbGF5VGltZSA9IDEp
OworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gRGVsYXlOb2RlIGNyZWF0ZURlbGF5KG9w
dGlvbmFsIHVucmVzdHJpY3RlZCBkb3VibGUgbWF4RGVsYXlUaW1lID0gMSk7CiAgICAgQmlxdWFk
RmlsdGVyTm9kZSBjcmVhdGVCaXF1YWRGaWx0ZXIoKTsKICAgICBXYXZlU2hhcGVyTm9kZSBjcmVh
dGVXYXZlU2hhcGVyKCk7CiAgICAgUGFubmVyTm9kZSBjcmVhdGVQYW5uZXIoKTsKICAgICBDb252
b2x2ZXJOb2RlIGNyZWF0ZUNvbnZvbHZlcigpOwogICAgIER5bmFtaWNzQ29tcHJlc3Nvck5vZGUg
Y3JlYXRlRHluYW1pY3NDb21wcmVzc29yKCk7CiAgICAgQW5hbHlzZXJOb2RlIGNyZWF0ZUFuYWx5
c2VyKCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gU2NyaXB0UHJvY2Vzc29yTm9kZSBjcmVhdGVT
Y3JpcHRQcm9jZXNzb3IodW5zaWduZWQgbG9uZyBidWZmZXJTaXplLCBvcHRpb25hbCB1bnNpZ25l
ZCBsb25nIG51bWJlck9mSW5wdXRDaGFubmVscyA9IDIsIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcg
bnVtYmVyT2ZPdXRwdXRDaGFubmVscyA9IDIpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlv
bl0gU2NyaXB0UHJvY2Vzc29yTm9kZSBjcmVhdGVTY3JpcHRQcm9jZXNzb3IodW5zaWduZWQgbG9u
ZyBidWZmZXJTaXplLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nIG51bWJlck9mSW5wdXRDaGFubmVs
cyA9IDIsIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgbnVtYmVyT2ZPdXRwdXRDaGFubmVscyA9IDIp
OwogICAgIE9zY2lsbGF0b3JOb2RlIGNyZWF0ZU9zY2lsbGF0b3IoKTsKLSAgICBbUmFpc2VzRXhj
ZXB0aW9uXSBQZXJpb2RpY1dhdmUgY3JlYXRlUGVyaW9kaWNXYXZlKEZsb2F0MzJBcnJheSByZWFs
LCBGbG9hdDMyQXJyYXkgaW1hZyk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBQZXJp
b2RpY1dhdmUgY3JlYXRlUGVyaW9kaWNXYXZlKEZsb2F0MzJBcnJheSByZWFsLCBGbG9hdDMyQXJy
YXkgaW1hZyk7CiAKICAgICAvLyBDaGFubmVsIHNwbGl0dGluZyBhbmQgbWVyZ2luZwotICAgIFtS
YWlzZXNFeGNlcHRpb25dIENoYW5uZWxTcGxpdHRlck5vZGUgY3JlYXRlQ2hhbm5lbFNwbGl0dGVy
KG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgbnVtYmVyT2ZPdXRwdXRzID0gNik7Ci0gICAgW1JhaXNl
c0V4Y2VwdGlvbl0gQ2hhbm5lbE1lcmdlck5vZGUgY3JlYXRlQ2hhbm5lbE1lcmdlcihvcHRpb25h
bCB1bnNpZ25lZCBsb25nIG51bWJlck9mSW5wdXRzID0gNik7CisgICAgW01heVRocm93TGVnYWN5
RXhjZXB0aW9uXSBDaGFubmVsU3BsaXR0ZXJOb2RlIGNyZWF0ZUNoYW5uZWxTcGxpdHRlcihvcHRp
b25hbCB1bnNpZ25lZCBsb25nIG51bWJlck9mT3V0cHV0cyA9IDYpOworICAgIFtNYXlUaHJvd0xl
Z2FjeUV4Y2VwdGlvbl0gQ2hhbm5lbE1lcmdlck5vZGUgY3JlYXRlQ2hhbm5lbE1lcmdlcihvcHRp
b25hbCB1bnNpZ25lZCBsb25nIG51bWJlck9mSW5wdXRzID0gNik7CiAKICAgICAvLyBPZmZsaW5l
IHJlbmRlcmluZwogICAgIC8vIHZvaWQgcHJlcGFyZU9mZmxpbmVCdWZmZXJSZW5kZXJpbmcodW5z
aWduZWQgbG9uZyBudW1iZXJPZkNoYW5uZWxzLCB1bnNpZ25lZCBsb25nIG51bWJlck9mRnJhbWVz
LCB1bnJlc3RyaWN0ZWQgZmxvYXQgc2FtcGxlUmF0ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5pZGwKaW5kZXggOTkyM2ExMGVlZDA0NjI2MjBhYTY4YWEx
NjZlYTRjNjExMDBiNTViNy4uODUzM2RmY2VjNDBhZmQ2NjQwMDY0MjNmMjllYmU4Y2RmMTczNTJi
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb05vZGUu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Ob2RlLmlkbApA
QCAtMzAsMTEgKzMwLDExIEBACiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcg
bnVtYmVyT2ZJbnB1dHM7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbnVt
YmVyT2ZPdXRwdXRzOwogCi0gICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIHVu
c2lnbmVkIGxvbmcgY2hhbm5lbENvdW50OwotICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0
dHJpYnV0ZSBET01TdHJpbmcgY2hhbm5lbENvdW50TW9kZTsKLSAgICBbU2V0dGVyUmFpc2VzRXhj
ZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGNoYW5uZWxJbnRlcnByZXRhdGlvbjsKKyAgICBb
U2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGNo
YW5uZWxDb3VudDsKKyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0
ZSBET01TdHJpbmcgY2hhbm5lbENvdW50TW9kZTsKKyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmcgY2hhbm5lbEludGVycHJldGF0aW9uOwogCi0g
ICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBjb25uZWN0KEF1ZGlvTm9kZT8gZGVzdGluYXRpb24s
IG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgb3V0cHV0ID0gMCwgb3B0aW9uYWwgdW5zaWduZWQgbG9u
ZyBpbnB1dCA9IDApOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgY29ubmVjdChBdWRpb1Bh
cmFtPyBkZXN0aW5hdGlvbiwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBvdXRwdXQgPSAwKTsKLSAg
ICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGRpc2Nvbm5lY3Qob3B0aW9uYWwgdW5zaWduZWQgbG9u
ZyBvdXRwdXQgPSAwKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgY29ubmVj
dChBdWRpb05vZGU/IGRlc3RpbmF0aW9uLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nIG91dHB1dCA9
IDAsIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5wdXQgPSAwKTsKKyAgICBbTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb25dIHZvaWQgY29ubmVjdChBdWRpb1BhcmFtPyBkZXN0aW5hdGlvbiwgb3B0aW9u
YWwgdW5zaWduZWQgbG9uZyBvdXRwdXQgPSAwKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRp
b25dIHZvaWQgZGlzY29ubmVjdChvcHRpb25hbCB1bnNpZ25lZCBsb25nIG91dHB1dCA9IDApOwog
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQ29udm9sdmVy
Tm9kZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0NvbnZvbHZlck5vZGUu
aWRsCmluZGV4IGYwZDNmNzRkNjc4NDk2MmQ1NjM1OTI5NjMzOTBkN2U0YzIyZTAzYTEuLmM5ZTk3
ZTBjNmNhMGYxMTQ4YTFlMjM1NzI4YmQ1NzY1M2FkZjAyNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQ29udm9sdmVyTm9kZS5pZGwKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJhdWRpby9Db252b2x2ZXJOb2RlLmlkbApAQCAtMjcsNiArMjcsNiBA
QAogICAgIENvbmRpdGlvbmFsPVdFQl9BVURJTywKICAgICBKU0dlbmVyYXRlVG9KU09iamVjdAog
XSBpbnRlcmZhY2UgQ29udm9sdmVyTm9kZSA6IEF1ZGlvTm9kZSB7Ci0gICAgW1NldHRlclJhaXNl
c0V4Y2VwdGlvbl0gYXR0cmlidXRlIEF1ZGlvQnVmZmVyPyBidWZmZXI7CisgICAgW1NldHRlck1h
eVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgQXVkaW9CdWZmZXI/IGJ1ZmZlcjsKICAg
ICBhdHRyaWJ1dGUgYm9vbGVhbiBub3JtYWxpemU7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9Db250ZXh0LmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5pZGwKaW5kZXggZTFk
MWY1NTY4Nzk4ZDgyNTgxYTBkNjdhM2JjOGZmMGExMGExYTVlYi4uNzVmOTM4MDI4YjAyOTA1ZDQ4
NjQ1NDc3NGE5MDQwMWQ2NjIxNmUzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJhdWRpby9PZmZsaW5lQXVkaW9Db250ZXh0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0NvbnRleHQuaWRsCkBAIC0yNiw3ICsyNiw3IEBA
CiAgICAgQ29uZGl0aW9uYWw9V0VCX0FVRElPLAogICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LAog
ICAgIENvbnN0cnVjdG9yKHVuc2lnbmVkIGxvbmcgbnVtYmVyT2ZDaGFubmVscywgdW5zaWduZWQg
bG9uZyBudW1iZXJPZkZyYW1lcywgdW5yZXN0cmljdGVkIGZsb2F0IHNhbXBsZVJhdGUpLAotICAg
IENvbnN0cnVjdG9yUmFpc2VzRXhjZXB0aW9uLAorICAgIENvbnN0cnVjdG9yTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb24sCiAgICAgQ29uc3RydWN0b3JDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250
ZXh0LAogICAgIEludGVyZmFjZU5hbWU9d2Via2l0T2ZmbGluZUF1ZGlvQ29udGV4dAogXSBpbnRl
cmZhY2UgT2ZmbGluZUF1ZGlvQ29udGV4dCA6IEF1ZGlvQ29udGV4dCB7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL09zY2lsbGF0b3JOb2RlLmlkbCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT3NjaWxsYXRvck5vZGUuaWRsCmluZGV4IDMzZjcz
NDI4MTE3MGYzZjlmZDA3YzU2MGU3YjZkN2U1MjJlNmRkMGIuLjI2M2FjN2MxNTQ2ZTA3MTY0NjM5
NzJlZjNkNDU5ZmI3YTAxNzMyNTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViYXVkaW8vT3NjaWxsYXRvck5vZGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViYXVkaW8vT3NjaWxsYXRvck5vZGUuaWRsCkBAIC0zNSw3ICszNSw3IEBAIGVudW0gT3NjaWxs
YXRvclR5cGUgewogICAgIENvbmRpdGlvbmFsPVdFQl9BVURJTywKICAgICBKU0dlbmVyYXRlVG9K
U09iamVjdCwKIF0gaW50ZXJmYWNlIE9zY2lsbGF0b3JOb2RlIDogQXVkaW9Ob2RlIHsKLSAgICBb
U2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgT3NjaWxsYXRvclR5cGUgdHlwZTsKKyAg
ICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSBPc2NpbGxhdG9yVHlw
ZSB0eXBlOwogCiAgICAgLy8gUGxheWJhY2sgc3RhdGUgY29uc3RhbnRzLgogICAgIGNvbnN0IHVu
c2lnbmVkIHNob3J0IFVOU0NIRURVTEVEX1NUQVRFID0gMDsKQEAgLTQ4LDggKzQ4LDggQEAgZW51
bSBPc2NpbGxhdG9yVHlwZSB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEF1ZGlvUGFyYW0gZnJl
cXVlbmN5OyAvLyBpbiBIZXJ0egogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBBdWRpb1BhcmFtIGRl
dHVuZTsgLy8gaW4gQ2VudHMKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc3RhcnQob3B0
aW9uYWwgdW5yZXN0cmljdGVkIGRvdWJsZSB3aGVuID0gMCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlv
bl0gdm9pZCBzdG9wKG9wdGlvbmFsIHVucmVzdHJpY3RlZCBkb3VibGUgd2hlbiA9IDApOworICAg
IFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzdGFydChvcHRpb25hbCB1bnJlc3RyaWN0
ZWQgZG91YmxlIHdoZW4gPSAwKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQg
c3RvcChvcHRpb25hbCB1bnJlc3RyaWN0ZWQgZG91YmxlIHdoZW4gPSAwKTsKIAogICAgIHZvaWQg
c2V0UGVyaW9kaWNXYXZlKFBlcmlvZGljV2F2ZT8gd2F2ZSk7IC8vIEZJWE1FOiBUaGUgcGFyYW1l
dGVyIHNob3VsZCBub3QgYmUgbnVsbGFibGUuCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvd2ViZGF0YWJhc2UvRE9NV2luZG93V2ViRGF0YWJhc2UuaWRsIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9ET01XaW5kb3dXZWJEYXRhYmFzZS5pZGwKaW5kZXgg
N2E1MzZkNGRmMjdiNzQzYTc0MTFmZmFlMGZjOTE3ODY1NWFjNjBiNy4uMDg2MzRmMTZlYWY3NzM4
OTYwMjliNjAwYjdjZmQ0ZWVhNzAyNzZmNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJkYXRhYmFzZS9ET01XaW5kb3dXZWJEYXRhYmFzZS5pZGwKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9ET01XaW5kb3dXZWJEYXRhYmFzZS5pZGwKQEAgLTI2
LDYgKzI2LDYgQEAKIAogWwogXSBwYXJ0aWFsIGludGVyZmFjZSBET01XaW5kb3cgewotICAgIFtS
YWlzZXNFeGNlcHRpb25dIERhdGFiYXNlIG9wZW5EYXRhYmFzZShET01TdHJpbmcgbmFtZSwgRE9N
U3RyaW5nIHZlcnNpb24sIERPTVN0cmluZyBkaXNwbGF5TmFtZSwgdW5zaWduZWQgbG9uZyBlc3Rp
bWF0ZWRTaXplLCBvcHRpb25hbCBEYXRhYmFzZUNhbGxiYWNrPyBjcmVhdGlvbkNhbGxiYWNrKTsK
KyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIERhdGFiYXNlIG9wZW5EYXRhYmFzZShET01T
dHJpbmcgbmFtZSwgRE9NU3RyaW5nIHZlcnNpb24sIERPTVN0cmluZyBkaXNwbGF5TmFtZSwgdW5z
aWduZWQgbG9uZyBlc3RpbWF0ZWRTaXplLCBvcHRpb25hbCBEYXRhYmFzZUNhbGxiYWNrPyBjcmVh
dGlvbkNhbGxiYWNrKTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViZGF0YWJhc2UvU1FMUmVzdWx0U2V0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vi
ZGF0YWJhc2UvU1FMUmVzdWx0U2V0LmlkbAppbmRleCBmMmNjZDQ1ODMzZjg4YWVmNzJjNzM0MTA4
MGFhOTg0OWU1ZDg0NWUwLi40ZjFjMmQxZDM1MTE1YTQwMTdjMjAxZjM0Njk3M2EwOTNlMTI0OGU4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFJlc3Vs
dFNldC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxSZXN1
bHRTZXQuaWRsCkBAIC0zMCw2ICszMCw2IEBACiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJs
ZQogXSBpbnRlcmZhY2UgU1FMUmVzdWx0U2V0IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgU1FM
UmVzdWx0U2V0Um93TGlzdCByb3dzOwotICAgIFtHZXR0ZXJSYWlzZXNFeGNlcHRpb25dIHJlYWRv
bmx5IGF0dHJpYnV0ZSBsb25nIGluc2VydElkOworICAgIFtHZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4
Y2VwdGlvbl0gcmVhZG9ubHkgYXR0cmlidXRlIGxvbmcgaW5zZXJ0SWQ7CiAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIGxvbmcgcm93c0FmZmVjdGVkOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXQuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldC5pZGwKaW5kZXggYzcxODgxZWFlZDYyZWFiMmYxMGU5
YWMxYzVhZDMyOTk1ZDI0ZDI3MS4uZjUxNGU2YjU3NDNhMjVkM2YwOGExZGU3YzJkMGVmNTQyYTM1
NzQ0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNv
Y2tldC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tl
dC5pZGwKQEAgLTM0LDcgKzM0LDcgQEAKICAgICBDb25kaXRpb25hbD1XRUJfU09DS0VUUywKICAg
ICBDb25zdHJ1Y3RvcihVU1ZTdHJpbmcgdXJsLCBvcHRpb25hbCBzZXF1ZW5jZTxET01TdHJpbmc+
IHByb3RvY29scyA9IFtdKSwKICAgICBDb25zdHJ1Y3RvcihVU1ZTdHJpbmcgdXJsLCBET01TdHJp
bmcgcHJvdG9jb2wpLAotICAgIENvbnN0cnVjdG9yUmFpc2VzRXhjZXB0aW9uLAorICAgIENvbnN0
cnVjdG9yTWF5VGhyb3dMZWdhY3lFeGNlcHRpb24sCiAgICAgQ29uc3RydWN0b3JDYWxsV2l0aD1T
Y3JpcHRFeGVjdXRpb25Db250ZXh0LAogICAgIEVuYWJsZWRBdFJ1bnRpbWUsCiAgICAgRXhwb3Nl
ZD0oV2luZG93LFdvcmtlciksCkBAIC02MCwxMiArNjAsMTIgQEAKICAgICByZWFkb25seSBhdHRy
aWJ1dGUgRE9NU3RyaW5nPyBwcm90b2NvbDsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3Ry
aW5nPyBleHRlbnNpb25zOwogCi0gICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRl
IERPTVN0cmluZyBiaW5hcnlUeXBlOworICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlv
bl0gYXR0cmlidXRlIERPTVN0cmluZyBiaW5hcnlUeXBlOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlv
bl0gdm9pZCBzZW5kKEFycmF5QnVmZmVyIGRhdGEpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZv
aWQgc2VuZChBcnJheUJ1ZmZlclZpZXcgZGF0YSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9p
ZCBzZW5kKEJsb2IgZGF0YSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZW5kKFVTVlN0
cmluZyBkYXRhKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2VuZChBcnJh
eUJ1ZmZlciBkYXRhKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2VuZChB
cnJheUJ1ZmZlclZpZXcgZGF0YSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lk
IHNlbmQoQmxvYiBkYXRhKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2Vu
ZChVU1ZTdHJpbmcgZGF0YSk7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGNsb3NlKFtD
bGFtcF0gb3B0aW9uYWwgdW5zaWduZWQgc2hvcnQgY29kZSwgb3B0aW9uYWwgRE9NU3RyaW5nIHJl
YXNvbik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIGNsb3NlKFtDbGFtcF0g
b3B0aW9uYWwgdW5zaWduZWQgc2hvcnQgY29kZSwgb3B0aW9uYWwgRE9NU3RyaW5nIHJlYXNvbik7
CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2Vu
ZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0
b3JKUy5wbQppbmRleCA5NjcwYzU3MTBmZjgzMDIwNzA3ZjdkN2MwZDJmZDk2N2IyMmRhOTlmLi5k
MWZkMjQxMzFiMDI2ZjI4ODkxZTYxODhlM2JiNjgxNTI5YjEwYjdhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQpAQCAtMTQ2LDcg
KzE0Niw3IEBAIHN1YiBBZGRTdHJpbmdpZmllck9wZXJhdGlvbklmTmVlZGVkCiAgICAgICAgIG15
ICRzdHJpbmdpZmllciA9IGRvbUZ1bmN0aW9uLT5uZXcoKTsKICAgICAgICAgJHN0cmluZ2lmaWVy
LT5zaWduYXR1cmUoZG9tU2lnbmF0dXJlLT5uZXcoKSk7CiAgICAgICAgIG15ICRleHRlbmRlZEF0
dHJpYnV0ZUxpc3QgPSB7fTsKLSAgICAgICAgJGV4dGVuZGVkQXR0cmlidXRlTGlzdC0+eyJJbXBs
ZW1lbnRlZEFzIn0gPSAkYXR0cmlidXRlLT5zaWduYXR1cmUtPm5hbWU7CisgICAgICAgICRleHRl
bmRlZEF0dHJpYnV0ZUxpc3QtPntJbXBsZW1lbnRlZEFzfSA9ICRhdHRyaWJ1dGUtPnNpZ25hdHVy
ZS0+bmFtZTsKICAgICAgICAgJHN0cmluZ2lmaWVyLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmli
dXRlcygkZXh0ZW5kZWRBdHRyaWJ1dGVMaXN0KTsKICAgICAgICAgJHN0cmluZ2lmaWVyLT5zaWdu
YXR1cmUtPm5hbWUoInRvU3RyaW5nIik7CiAgICAgICAgIGRpZSAic3RyaW5naWZpZXIgY2FuIG9u
bHkgYmUgdXNlZCBvbiBhdHRyaWJ1dGVzIG9mIFN0cmluZyB0eXBlcyIgdW5sZXNzICRjb2RlR2Vu
ZXJhdG9yLT5Jc1N0cmluZ1R5cGUoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT50eXBlKTsKQEAgLTE1
OSw3ICsxNTksNyBAQCBzdWIgQWRkU3RyaW5naWZpZXJPcGVyYXRpb25JZk5lZWRlZAogc3ViIEV2
ZW50SGFuZGxlckF0dHJpYnV0ZUV2ZW50TmFtZQogewogICAgIG15ICRhdHRyaWJ1dGUgPSBzaGlm
dDsKLSAgICBteSAkZXZlbnRUeXBlID0gJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiSW1wbGVtZW50ZWRBcyJ9IHx8ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+bmFt
ZTsKKyAgICBteSAkZXZlbnRUeXBlID0gJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPntJbXBsZW1lbnRlZEFzfSB8fCAkYXR0cmlidXRlLT5zaWduYXR1cmUtPm5hbWU7
CiAKICAgICAjIFJlbW92ZSB0aGUgIm9uIiBwcmVmaXguCiAgICAgJGV2ZW50VHlwZSA9IHN1YnN0
cigkZXZlbnRUeXBlLCAyKTsKQEAgLTE3MSw3ICsxNzEsNyBAQCBzdWIgR2V0UGFyZW50Q2xhc3NO
YW1lCiB7CiAgICAgbXkgJGludGVyZmFjZSA9IHNoaWZ0OwogCi0gICAgcmV0dXJuICRpbnRlcmZh
Y2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0xlZ2FjeVBhcmVudCJ9IGlmICRpbnRlcmZhY2Ut
PmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0xlZ2FjeVBhcmVudCJ9OworICAgIHJldHVybiAkaW50
ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntKU0xlZ2FjeVBhcmVudH0gaWYgJGludGVyZmFj
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57SlNMZWdhY3lQYXJlbnR9OwogICAgIHJldHVybiAiSlNE
T01PYmplY3QiIHVubGVzcyBOZWVkc0ltcGxlbWVudGF0aW9uQ2xhc3MoJGludGVyZmFjZSk7CiAg
ICAgcmV0dXJuICJKU0RPTVdyYXBwZXI8IiAuIEdldEltcGxDbGFzc05hbWUoJGludGVyZmFjZS0+
bmFtZSkgLiAiPiIgdW5sZXNzICRpbnRlcmZhY2UtPnBhcmVudDsKICAgICByZXR1cm4gIkpTIiAu
ICRpbnRlcmZhY2UtPnBhcmVudDsKQEAgLTE4OCw3ICsxODgsNyBAQCBzdWIgR2V0SlNDYWxsYmFj
a0RhdGFUeXBlCiB7CiAgICAgbXkgJGNhbGxiYWNrSW50ZXJmYWNlID0gc2hpZnQ7CiAKLSAgICBy
ZXR1cm4gJGNhbGxiYWNrSW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSXNXZWFrQ2Fs
bGJhY2sifSA/ICJKU0NhbGxiYWNrRGF0YVdlYWsiIDogIkpTQ2FsbGJhY2tEYXRhU3Ryb25nIjsK
KyAgICByZXR1cm4gJGNhbGxiYWNrSW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntJc1dl
YWtDYWxsYmFja30gPyAiSlNDYWxsYmFja0RhdGFXZWFrIiA6ICJKU0NhbGxiYWNrRGF0YVN0cm9u
ZyI7CiB9CiAKIHN1YiBBZGRJbmNsdWRlc0ZvclR5cGVJbkltcGwKQEAgLTIxMSw3ICsyMTEsNyBA
QCBzdWIgR2V0RXhwb3J0TWFjcm9Gb3JKU0NsYXNzCiB7CiAgICAgbXkgJGludGVyZmFjZSA9IHNo
aWZ0OwogCi0gICAgcmV0dXJuICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFeHBv
cnRNYWNybyJ9IC4gIiAiIGlmICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFeHBv
cnRNYWNybyJ9OworICAgIHJldHVybiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntF
eHBvcnRNYWNyb30gLiAiICIgaWYgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57RXhw
b3J0TWFjcm99OwogICAgIHJldHVybiAiIjsKIH0KIApAQCAtMjU3LDE2ICsyNTcsMTUgQEAgc3Vi
IEFkZFRvSW1wbEluY2x1ZGVzCiBzdWIgSXNSZWFkb25seQogewogICAgIG15ICRhdHRyaWJ1dGUg
PSBzaGlmdDsKLSAgICByZXR1cm4gJGF0dHJpYnV0ZS0+aXNSZWFkT25seSAmJiAhJGF0dHJpYnV0
ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiUmVwbGFjZWFibGUifSAmJiAhJGF0
dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiUHV0Rm9yd2FyZHMifTsK
KyAgICByZXR1cm4gJGF0dHJpYnV0ZS0+aXNSZWFkT25seSAmJiAhJGF0dHJpYnV0ZS0+c2lnbmF0
dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntSZXBsYWNlYWJsZX0gJiYgISRhdHRyaWJ1dGUtPnNp
Z25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57UHV0Rm9yd2FyZHN9OwogfQogCiBzdWIgQWRk
Q2xhc3NGb3J3YXJkSWZOZWVkZWQKIHsKICAgICBteSAkaW50ZXJmYWNlTmFtZSA9IHNoaWZ0Owog
Ci0gICAgIyBTVkdBbmltYXRlZExlbmd0aC9OdW1iZXIvZXRjLiBhcmUgdHlwZWRlZnMgYW5kIHNo
b3VsZCBub3QgYmUgZm9yd2FyZC1kZWNsYXJlZCBhcyBjbGFzc2VzLgorICAgICMgU1ZHQW5pbWF0
ZWRMZW5ndGgvTnVtYmVyL2V0Yy4gYXJlIG5vdCBjbGFzc2VzIHNvIHRoZXkgY2FuJ3QgYmUgZm9y
d2FyZCBkZWNsYXJlZCBhcyBjbGFzc2VzLgogICAgIHJldHVybiBpZiAkY29kZUdlbmVyYXRvci0+
SXNTVkdBbmltYXRlZFR5cGUoJGludGVyZmFjZU5hbWUpOwotCiAgICAgcmV0dXJuIGlmICRjb2Rl
R2VuZXJhdG9yLT5Jc1R5cGVkQXJyYXlUeXBlKCRpbnRlcmZhY2VOYW1lKTsKIAogICAgIHB1c2go
QGhlYWRlckNvbnRlbnQsICJjbGFzcyAkaW50ZXJmYWNlTmFtZTtcblxuIik7CkBAIC0yNzUsMTMg
KzI3NCwxMyBAQCBzdWIgQWRkQ2xhc3NGb3J3YXJkSWZOZWVkZWQKIHN1YiBHZXRHZW5lcmF0ZUlz
UmVhY2hhYmxlCiB7CiAgICAgbXkgJGludGVyZmFjZSA9IHNoaWZ0OwotICAgIHJldHVybiAkaW50
ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiR2VuZXJhdGVJc1JlYWNoYWJsZSJ9OworICAg
IHJldHVybiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntHZW5lcmF0ZUlzUmVhY2hh
YmxlfTsKIH0KIAogc3ViIEdldEN1c3RvbUlzUmVhY2hhYmxlCiB7CiAgICAgbXkgJGludGVyZmFj
ZSA9IHNoaWZ0OwotICAgIHJldHVybiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsi
Q3VzdG9tSXNSZWFjaGFibGUifTsKKyAgICByZXR1cm4gJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57Q3VzdG9tSXNSZWFjaGFibGV9OwogfQogCiBzdWIgSXNET01HbG9iYWxPYmplY3QK
QEAgLTMzNiw3ICszMzUsNyBAQCBzdWIgR2VuZXJhdGVHZXRPd25Qcm9wZXJ0eVNsb3RCb2R5CiAg
ICAgICAgIH0KICAgICAgICAgcHVzaChAZ2V0T3duUHJvcGVydHlTbG90SW1wbCwgIiAgICAgICAg
dW5zaWduZWQgaW5kZXggPSBvcHRpb25hbEluZGV4LnZhbHVlKCk7XG4iKTsKICAgICAgICAgIyBB
c3N1bWUgdGhhdCBpZiB0aGVyZSdzIGEgc2V0dGVyLCB0aGUgaW5kZXggd2lsbCBiZSB3cml0YWJs
ZQotICAgICAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbUlu
ZGV4ZWRTZXR0ZXIifSkgeworICAgICAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57Q3VzdG9tSW5kZXhlZFNldHRlcn0pIHsKICAgICAgICAgICAgIHB1c2goQGdldE93blBy
b3BlcnR5U2xvdEltcGwsICIgICAgICAgIHVuc2lnbmVkIGF0dHJpYnV0ZXMgPSAwO1xuIik7CiAg
ICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBwdXNoKEBnZXRPd25Qcm9wZXJ0eVNsb3RJbXBs
LCAiICAgICAgICB1bnNpZ25lZCBhdHRyaWJ1dGVzID0gJHtuYW1lc3BhY2VNYXliZX1SZWFkT25s
eTtcbiIpOwpAQCAtMzQ2LDkgKzM0NSw5IEBAIHN1YiBHZW5lcmF0ZUdldE93blByb3BlcnR5U2xv
dEJvZHkKICAgICAgICAgcHVzaChAZ2V0T3duUHJvcGVydHlTbG90SW1wbCwgIiAgICB9XG4iKTsK
ICAgICB9CiAKLSAgICBteSAkaGFzTmFtZWRHZXR0ZXIgPSAkbmFtZWRHZXR0ZXJGdW5jdGlvbiB8
fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tTmFtZWRHZXR0ZXIifTsK
KyAgICBteSAkaGFzTmFtZWRHZXR0ZXIgPSAkbmFtZWRHZXR0ZXJGdW5jdGlvbiB8fCAkaW50ZXJm
YWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDdXN0b21OYW1lZEdldHRlcn07CiAgICAgaWYgKCRo
YXNOYW1lZEdldHRlcikgewotICAgICAgICBpZiAoISRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmli
dXRlcy0+eyJPdmVycmlkZUJ1aWx0aW5zIn0pIHsKKyAgICAgICAgaWYgKCEkaW50ZXJmYWNlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPntPdmVycmlkZUJ1aWx0aW5zfSkgewogICAgICAgICAgICAgJiRv
d25Qcm9wZXJ0eUNoZWNrKCk7CiAgICAgICAgICAgICAmJHByb3RvdHlwZUNoZWNrKCk7CiAgICAg
ICAgIH0KQEAgLTM3NSwxMiArMzc0LDEyIEBAIHN1YiBHZW5lcmF0ZUdldE93blByb3BlcnR5U2xv
dEJvZHkKICAgICAgICAgfQogICAgIH0KIAotICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiSlNDdXN0b21HZXRPd25Qcm9wZXJ0eVNsb3RBbmREZXNjcmlwdG9yIn0pIHsK
KyAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57SlNDdXN0b21HZXRPd25Q
cm9wZXJ0eVNsb3RBbmREZXNjcmlwdG9yfSkgewogICAgICAgICBwdXNoKEBnZXRPd25Qcm9wZXJ0
eVNsb3RJbXBsLCAiICAgIGlmICh0aGlzT2JqZWN0LT5nZXRPd25Qcm9wZXJ0eVNsb3REZWxlZ2F0
ZShzdGF0ZSwgcHJvcGVydHlOYW1lLCBzbG90KSlcbiIpOwogICAgICAgICBwdXNoKEBnZXRPd25Q
cm9wZXJ0eVNsb3RJbXBsLCAiICAgICAgICByZXR1cm4gdHJ1ZTtcbiIpOwogICAgIH0KIAotICAg
IGlmICghJGhhc05hbWVkR2V0dGVyIHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+
eyJPdmVycmlkZUJ1aWx0aW5zIn0pIHsKKyAgICBpZiAoISRoYXNOYW1lZEdldHRlciB8fCAkaW50
ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntPdmVycmlkZUJ1aWx0aW5zfSkgewogICAgICAg
ICAmJG93blByb3BlcnR5Q2hlY2soKTsKICAgICB9CiAKQEAgLTM5NSw3ICszOTQsNyBAQCBzdWIg
R2VuZXJhdGVIZWFkZXJDb250ZW50SGVhZGVyCiAgICAgbXkgJGNsYXNzTmFtZSA9ICJKUyIgLiAk
aW50ZXJmYWNlLT5uYW1lOwogCiAgICAgbXkgQGhlYWRlckNvbnRlbnRIZWFkZXI7Ci0gICAgaWYg
KCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJBcHBsZUNvcHlyaWdodCJ9KSB7Cisg
ICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0FwcGxlQ29weXJpZ2h0fSkg
ewogICAgICAgICBAaGVhZGVyQ29udGVudEhlYWRlciA9IHNwbGl0KCJcciIsICRiZWdpbkFwcGxl
Q29weXJpZ2h0Rm9ySGVhZGVyRmlsZXMpOwogICAgIH0gZWxzZSB7CiAgICAgICAgIEBoZWFkZXJD
b250ZW50SGVhZGVyID0gc3BsaXQoIlxyIiwgJGhlYWRlclRlbXBsYXRlKTsKQEAgLTQxNCw3ICs0
MTMsNyBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbkNvbnRlbnRIZWFkZXIKICAgICBteSAk
Y2xhc3NOYW1lID0gIkpTIiAuICRpbnRlcmZhY2UtPm5hbWU7CiAKICAgICBteSBAaW1wbENvbnRl
bnRIZWFkZXI7Ci0gICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJBcHBs
ZUNvcHlyaWdodCJ9KSB7CisgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+
e0FwcGxlQ29weXJpZ2h0fSkgewogICAgICAgICBAaW1wbENvbnRlbnRIZWFkZXIgPSBzcGxpdCgi
XHIiLCAkYmVnaW5BcHBsZUNvcHlyaWdodEZvclNvdXJjZUZpbGVzKTsKICAgICB9IGVsc2Ugewog
ICAgICAgICBAaW1wbENvbnRlbnRIZWFkZXIgPSBzcGxpdCgiXHIiLCAkaGVhZGVyVGVtcGxhdGUp
OwpAQCAtNDMxLDcgKzQzMCw3IEBAIHN1YiBOZWVkc0ltcGxlbWVudGF0aW9uQ2xhc3MKIHsKICAg
ICBteSAoJGludGVyZmFjZSkgPSBAXzsKIAotICAgIHJldHVybiAwIGlmICRpbnRlcmZhY2UtPmV4
dGVuZGVkQXR0cmlidXRlcy0+eyJKU0J1aWx0aW4ifTsKKyAgICByZXR1cm4gMCBpZiAkaW50ZXJm
YWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntKU0J1aWx0aW59OwogICAgIHJldHVybiAxOwogfQog
CkBAIC00NDAsNyArNDM5LDcgQEAgc3ViIFNob3VsZEdlbmVyYXRlVG9XcmFwcGVkCiAgICAgbXkg
KCRoYXNQYXJlbnQsICRpbnRlcmZhY2UpID0gQF87CiAKICAgICByZXR1cm4gMCBpZiBub3QgTmVl
ZHNJbXBsZW1lbnRhdGlvbkNsYXNzKCRpbnRlcmZhY2UpOwotICAgIHJldHVybiAxIGlmICEkaGFz
UGFyZW50IG9yICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0dlbmVyYXRlVG9O
YXRpdmVPYmplY3QifTsKKyAgICByZXR1cm4gMSBpZiAhJGhhc1BhcmVudCBvciAkaW50ZXJmYWNl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPntKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3R9OwogICAgIHJl
dHVybiAxIGlmICRpbnRlcmZhY2UtPnBhcmVudCAmJiAkaW50ZXJmYWNlLT5wYXJlbnQgZXEgIkV2
ZW50VGFyZ2V0IjsKICAgICByZXR1cm4gMDsKIH0KQEAgLTQ1MCwxMyArNDQ5LDExIEBAIHN1YiBT
aG91bGRHZW5lcmF0ZVdyYXBwZXJPd25lckNvZGUKICAgICBteSAoJGhhc1BhcmVudCwgJGludGVy
ZmFjZSkgPSBAXzsKIAogICAgIHJldHVybiAwIGlmIG5vdCBOZWVkc0ltcGxlbWVudGF0aW9uQ2xh
c3MoJGludGVyZmFjZSk7Ci0gICAgaWYgKCEkaGFzUGFyZW50IHx8Ci0gICAgICAgIEdldEdlbmVy
YXRlSXNSZWFjaGFibGUoJGludGVyZmFjZSkgfHwKLSAgICAgICAgR2V0Q3VzdG9tSXNSZWFjaGFi
bGUoJGludGVyZmFjZSkgfHwKLSAgICAgICAgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVz
LT57IkpTQ3VzdG9tRmluYWxpemUifSB8fAotICAgICAgICAkY29kZUdlbmVyYXRvci0+SW5oZXJp
dHNFeHRlbmRlZEF0dHJpYnV0ZSgkaW50ZXJmYWNlLCAiQWN0aXZlRE9NT2JqZWN0IikpIHsKLSAg
ICAgICAgcmV0dXJuIDE7Ci0gICAgfQorICAgIHJldHVybiAxIGlmICEkaGFzUGFyZW50OworICAg
IHJldHVybiAxIGlmIEdldEdlbmVyYXRlSXNSZWFjaGFibGUoJGludGVyZmFjZSk7CisgICAgcmV0
dXJuIDEgaWYgR2V0Q3VzdG9tSXNSZWFjaGFibGUoJGludGVyZmFjZSk7CisgICAgcmV0dXJuIDEg
aWYgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57SlNDdXN0b21GaW5hbGl6ZX07Cisg
ICAgcmV0dXJuIDEgaWYgJGNvZGVHZW5lcmF0b3ItPkluaGVyaXRzRXh0ZW5kZWRBdHRyaWJ1dGUo
JGludGVyZmFjZSwgIkFjdGl2ZURPTU9iamVjdCIpOwogICAgIHJldHVybiAwOwogfQogCkBAIC00
NjQsMTIgKzQ2MSwxMiBAQCBzdWIgU2hvdWxkR2VuZXJhdGVUb0pTRGVjbGFyYXRpb24KIHsKICAg
ICBteSAoJGhhc1BhcmVudCwgJGludGVyZmFjZSkgPSBAXzsKIAotICAgIHJldHVybiAwIGlmICgk
aW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiU3VwcHJlc3NUb0pTT2JqZWN0In0pOwor
ICAgIHJldHVybiAwIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntTdXBwcmVz
c1RvSlNPYmplY3R9KTsKICAgICByZXR1cm4gMCBpZiBub3QgTmVlZHNJbXBsZW1lbnRhdGlvbkNs
YXNzKCRpbnRlcmZhY2UpOwotICAgIHJldHVybiAwIGlmICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0
cmlidXRlcy0+eyJDdXN0b21Qcm94eVRvSlNPYmplY3QifTsKLSAgICByZXR1cm4gMSBpZiAoISRo
YXNQYXJlbnQgb3IgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTR2VuZXJhdGVU
b0pTT2JqZWN0In0gb3IgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbVRv
SlNPYmplY3QifSk7CisgICAgcmV0dXJuIDAgaWYgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57Q3VzdG9tUHJveHlUb0pTT2JqZWN0fTsKKyAgICByZXR1cm4gMSBpZiAoISRoYXNQYXJl
bnQgb3IgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57SlNHZW5lcmF0ZVRvSlNPYmpl
Y3R9IG9yICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0N1c3RvbVRvSlNPYmplY3R9
KTsKICAgICByZXR1cm4gMSBpZiAkaW50ZXJmYWNlLT5wYXJlbnQgJiYgJGludGVyZmFjZS0+cGFy
ZW50IGVxICJFdmVudFRhcmdldCI7Ci0gICAgcmV0dXJuIDEgaWYgJGludGVyZmFjZS0+ZXh0ZW5k
ZWRBdHRyaWJ1dGVzLT57IkNvbnN0cnVjdG9yIn0gb3IgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57Ik5hbWVkQ29uc3RydWN0b3IifTsKKyAgICByZXR1cm4gMSBpZiAkaW50ZXJmYWNl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDb25zdHJ1Y3Rvcn0gb3IgJGludGVyZmFjZS0+ZXh0ZW5k
ZWRBdHRyaWJ1dGVzLT57TmFtZWRDb25zdHJ1Y3Rvcn07CiAgICAgcmV0dXJuIDA7CiB9CiAKQEAg
LTQ3OCw3ICs0NzUsNyBAQCBzdWIgU2hvdWxkR2VuZXJhdGVUb0pTSW1wbGVtZW50YXRpb24KICAg
ICBteSAoJGhhc1BhcmVudCwgJGludGVyZmFjZSkgPSBAXzsKIAogICAgIHJldHVybiAwIGlmIG5v
dCBTaG91bGRHZW5lcmF0ZVRvSlNEZWNsYXJhdGlvbigkaGFzUGFyZW50LCAkaW50ZXJmYWNlKTsK
LSAgICByZXR1cm4gMSBpZiBub3QgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1
c3RvbVRvSlNPYmplY3QifTsKKyAgICByZXR1cm4gMSBpZiBub3QgJGludGVyZmFjZS0+ZXh0ZW5k
ZWRBdHRyaWJ1dGVzLT57Q3VzdG9tVG9KU09iamVjdH07CiAgICAgcmV0dXJuIDA7CiB9CiAKQEAg
LTUzNSwyMSArNTMyLDkgQEAgc3ViIEdldFNwZWNpYWxBY2Nlc3NvckZ1bmN0aW9uRm9yVHlwZQog
c3ViIEhhc0NvbXBsZXhHZXRPd25Qcm9wZXJ0eQogewogICAgIG15ICRpbnRlcmZhY2UgPSBzaGlm
dDsKLQotICAgIG15ICRuYW1lZEdldHRlckZ1bmN0aW9uID0gR2V0TmFtZWRHZXR0ZXJGdW5jdGlv
bigkaW50ZXJmYWNlKTsKLSAgICBteSAkaW5kZXhlZEdldHRlckZ1bmN0aW9uID0gR2V0SW5kZXhl
ZEdldHRlckZ1bmN0aW9uKCRpbnRlcmZhY2UpOwotCi0gICAgbXkgJGhhc05hbWVkR2V0dGVyID0g
JG5hbWVkR2V0dGVyRnVuY3Rpb24gfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
IkN1c3RvbU5hbWVkR2V0dGVyIn07Ci0KLSAgICBteSAkaGFzQ29tcGxleEdldHRlciA9ICRpbmRl
eGVkR2V0dGVyRnVuY3Rpb24KLSAgICAgICAgfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57IkpTQ3VzdG9tR2V0T3duUHJvcGVydHlTbG90QW5kRGVzY3JpcHRvciJ9Ci0gICAgICAg
IHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21HZXRPd25Qcm9wZXJ0
eVNsb3QifQotICAgICAgICB8fCAkaGFzTmFtZWRHZXR0ZXI7Ci0KLSAgICByZXR1cm4gMSBpZiAk
aW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ2hlY2tTZWN1cml0eSJ9OwotICAgIHJl
dHVybiAxIGlmIElzRE9NR2xvYmFsT2JqZWN0KCRpbnRlcmZhY2UpOwotICAgIHJldHVybiAxIGlm
ICRoYXNDb21wbGV4R2V0dGVyOwotICAgIHJldHVybiAwOworICAgIHJldHVybiAkaW50ZXJmYWNl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDaGVja1NlY3VyaXR5fQorICAgICAgICB8fCBJc0RPTUds
b2JhbE9iamVjdCgkaW50ZXJmYWNlKQorICAgICAgICB8fCBJbnN0YW5jZU92ZXJyaWRlc0dldE93
blByb3BlcnR5U2xvdCgkaW50ZXJmYWNlKTsKIH0KIAogc3ViIEludGVyZmFjZVJlcXVpcmVzQXR0
cmlidXRlc09uSW5zdGFuY2UKQEAgLTU1OSw3ICs1NDQsNyBAQCBzdWIgSW50ZXJmYWNlUmVxdWly
ZXNBdHRyaWJ1dGVzT25JbnN0YW5jZQogCiAgICAgIyBGSVhNRTogQWxsIHRoZXNlIHJldHVybiAx
IGlmIC4uLiBzaG91bGQgaWRlYWxseSBiZSByZW1vdmVkLgogICAgICMgU29tZSBvZiB0aGVtIGFy
ZSB1bmF2b2lkYWJsZSBkdWUgdG8gRE9NIHdlaXJkbmVzcywgaW4gd2hpY2ggY2FzZSB3ZSBzaG91
bGQKLSAgICAjIGFkZCBhbiBJREwgYXR0cmlidXRlIGZvciB0aGVtCisgICAgIyBhZGQgYW4gSURM
IGF0dHJpYnV0ZSBmb3IgdGhlbS4KIAogICAgICMgRklYTUU6IFdlIHNob3VsZCBiZSBhYmxlIHRv
IGRyb3AgdGhpcyBvbmNlIDxyZGFyOi8vcHJvYmxlbS8yNDQ2NjA5Nz4gaXMgZml4ZWQuCiAgICAg
cmV0dXJuIDEgaWYgJGludGVyZmFjZS0+aXNFeGNlcHRpb247CkBAIC01NzYsNyArNTYxLDcgQEAg
c3ViIEF0dHJpYnV0ZVNob3VsZEJlT25JbnN0YW5jZQogICAgIG15ICRhdHRyaWJ1dGUgPSBzaGlm
dDsKIAogICAgICMgRklYTUU6IFRoZSBiaW5kaW5ncyBnZW5lcmF0b3IgZG9lcyBub3Qgc3VwcG9y
dCBwdXR0aW5nIHJ1bnRpbWUtZW5hYmxlZCBhdHRyaWJ1dGVzIG9uIHRoZSBpbnN0YW5jZSB5ZXQg
KGV4Y2VwdCBmb3IgZ2xvYmFsIG9iamVjdHMpLgotICAgIHJldHVybiAwIGlmICRhdHRyaWJ1dGUt
PnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkVuYWJsZWRBdFJ1bnRpbWUifSAmJiAh
SXNET01HbG9iYWxPYmplY3QoJGludGVyZmFjZSk7CisgICAgcmV0dXJuIDAgaWYgJGF0dHJpYnV0
ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntFbmFibGVkQXRSdW50aW1lfSAmJiAh
SXNET01HbG9iYWxPYmplY3QoJGludGVyZmFjZSk7CiAKICAgICByZXR1cm4gMSBpZiBJbnRlcmZh
Y2VSZXF1aXJlc0F0dHJpYnV0ZXNPbkluc3RhbmNlKCRpbnRlcmZhY2UpOwogICAgIHJldHVybiAx
IGlmICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+dHlwZSA9fiAvQ29uc3RydWN0b3IkLzsKQEAgLTU4
NSwxMyArNTcwLDEyIEBAIHN1YiBBdHRyaWJ1dGVTaG91bGRCZU9uSW5zdGFuY2UKICAgICAjIGh0
dHBzOi8vaGV5Y2FtLmdpdGh1Yi5pby93ZWJpZGwvI1VuZm9yZ2VhYmxlCiAgICAgcmV0dXJuIDEg
aWYgSXNVbmZvcmdlYWJsZSgkaW50ZXJmYWNlLCAkYXR0cmlidXRlKTsKIAotICAgIGlmICgkaW50
ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ2hlY2tTZWN1cml0eSJ9KSB7Ci0gICAgICAg
IGlmICgkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJEb05vdENo
ZWNrU2VjdXJpdHkifSBvcgotICAgICAgICAgICAgJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRl
bmRlZEF0dHJpYnV0ZXMtPnsiRG9Ob3RDaGVja1NlY3VyaXR5T25HZXR0ZXIifSkgewotICAgICAg
ICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIH0KKyAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57Q2hlY2tTZWN1cml0eX0pIHsKKyAgICAgICAgcmV0dXJuIDAgaWYgJGF0dHJp
YnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntEb05vdENoZWNrU2VjdXJpdHl9
OworICAgICAgICByZXR1cm4gMCBpZiAkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0
cmlidXRlcy0+e0RvTm90Q2hlY2tTZWN1cml0eU9uR2V0dGVyfTsKICAgICAgICAgcmV0dXJuIDE7
CiAgICAgfQorCiAgICAgcmV0dXJuIDA7CiB9CiAKQEAgLTYwNSw3ICs1ODksNyBAQCBzdWIgT3Bl
cmF0aW9uU2hvdWxkQmVPbkluc3RhbmNlCiAgICAgcmV0dXJuIDEgaWYgSXNET01HbG9iYWxPYmpl
Y3QoJGludGVyZmFjZSkgJiYgJGludGVyZmFjZS0+bmFtZSBuZSAiV29ya2VyR2xvYmFsU2NvcGUi
OwogCiAgICAgIyBGSVhNRTogVGhlIGJpbmRpbmdzIGdlbmVyYXRvciBkb2VzIG5vdCBzdXBwb3J0
IHB1dHRpbmcgcnVudGltZS1lbmFibGVkIG9wZXJhdGlvbnMgb24gdGhlIGluc3RhbmNlIHlldCAo
ZXhjZXB0IGZvciBnbG9iYWwgb2JqZWN0cykuCi0gICAgcmV0dXJuIDAgaWYgJGZ1bmN0aW9uLT5z
aWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFbmFibGVkQXRSdW50aW1lIn07CisgICAg
cmV0dXJuIDAgaWYgJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0Vu
YWJsZWRBdFJ1bnRpbWV9OwogCiAgICAgIyBbVW5mb3JnZWFibGVdIG9wZXJhdGlvbnMgc2hvdWxk
IGJlIG9uIHRoZSBpbnN0YW5jZS4gaHR0cHM6Ly9oZXljYW0uZ2l0aHViLmlvL3dlYmlkbC8jVW5m
b3JnZWFibGUKICAgICByZXR1cm4gMSBpZiBJc1VuZm9yZ2VhYmxlKCRpbnRlcmZhY2UsICRmdW5j
dGlvbik7CkBAIC02MjMsNyArNjA3LDcgQEAgc3ViIEdldEpTQ0F0dHJpYnV0ZXNGb3JBdHRyaWJ1
dGUKIAogICAgICMgQXMgcGVyIFdlYiBJREwgc3BlY2lmaWNhdGlvbiwgY29uc3RydWN0b3IgcHJv
cGVydGllcyBvbiB0aGUgRUNNQVNjcmlwdCBnbG9iYWwgb2JqZWN0IHNob3VsZCBub3QgYmUgZW51
bWVyYWJsZS4KICAgICBteSAkaXNfZ2xvYmFsX2NvbnN0cnVjdG9yID0gJGF0dHJpYnV0ZS0+c2ln
bmF0dXJlLT50eXBlID1+IC9Db25zdHJ1Y3RvciQvOwotICAgIHB1c2goQHNwZWNpYWxzLCAiRG9u
dEVudW0iKSBpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsi
Tm90RW51bWVyYWJsZSJ9IHx8ICRpc19nbG9iYWxfY29uc3RydWN0b3IpOworICAgIHB1c2goQHNw
ZWNpYWxzLCAiRG9udEVudW0iKSBpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPntOb3RFbnVtZXJhYmxlfSB8fCAkaXNfZ2xvYmFsX2NvbnN0cnVjdG9yKTsKICAg
ICBwdXNoKEBzcGVjaWFscywgIlJlYWRPbmx5IikgaWYgSXNSZWFkb25seSgkYXR0cmlidXRlKTsK
ICAgICBwdXNoKEBzcGVjaWFscywgIkN1c3RvbUFjY2Vzc29yIikgdW5sZXNzICRpc19nbG9iYWxf
Y29uc3RydWN0b3Igb3IgSXNKU0J1aWx0aW4oJGludGVyZmFjZSwgJGF0dHJpYnV0ZSk7CiAgICAg
cHVzaChAc3BlY2lhbHMsICJBY2Nlc3NvciB8IEJ1aWx0aW4iKSBpZiAgSXNKU0J1aWx0aW4oJGlu
dGVyZmFjZSwgJGF0dHJpYnV0ZSk7CkBAIC02OTUsNTggKzY3OSw0OSBAQCBzdWIgUHJvdG90eXBl
UHJvcGVydHlDb3VudAogc3ViIEluc3RhbmNlT3ZlcnJpZGVzR2V0T3duUHJvcGVydHlTbG90CiB7
CiAgICAgbXkgJGludGVyZmFjZSA9IHNoaWZ0OwotCi0gICAgbXkgJG5hbWVkR2V0dGVyRnVuY3Rp
b24gPSBHZXROYW1lZEdldHRlckZ1bmN0aW9uKCRpbnRlcmZhY2UpOwotICAgIG15ICRpbmRleGVk
R2V0dGVyRnVuY3Rpb24gPSBHZXRJbmRleGVkR2V0dGVyRnVuY3Rpb24oJGludGVyZmFjZSk7Ci0K
LSAgICBteSAkaGFzTmFtZWRHZXR0ZXIgPSAkbmFtZWRHZXR0ZXJGdW5jdGlvbgotICAgICAgICB8
fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tTmFtZWRHZXR0ZXIifTsK
LQotICAgIG15ICRoYXNDb21wbGV4R2V0dGVyID0gJGluZGV4ZWRHZXR0ZXJGdW5jdGlvbgotICAg
ICAgICB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNDdXN0b21HZXRPd25Q
cm9wZXJ0eVNsb3RBbmREZXNjcmlwdG9yIn0KLSAgICAgICAgfHwgJGludGVyZmFjZS0+ZXh0ZW5k
ZWRBdHRyaWJ1dGVzLT57IkN1c3RvbUdldE93blByb3BlcnR5U2xvdCJ9Ci0gICAgICAgIHx8ICRo
YXNOYW1lZEdldHRlcjsKLQotICAgIHJldHVybiAkaGFzQ29tcGxleEdldHRlcjsKKyAgICByZXR1
cm4gJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Q3VzdG9tR2V0T3duUHJvcGVydHlT
bG90fQorICAgICAgICB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDdXN0b21O
YW1lZEdldHRlcn0KKyAgICAgICAgfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
SlNDdXN0b21HZXRPd25Qcm9wZXJ0eVNsb3RBbmREZXNjcmlwdG9yfQorICAgICAgICB8fCBHZXRJ
bmRleGVkR2V0dGVyRnVuY3Rpb24oJGludGVyZmFjZSkKKyAgICAgICAgfHwgR2V0TmFtZWRHZXR0
ZXJGdW5jdGlvbigkaW50ZXJmYWNlKTsKIH0KIAogc3ViIFByb3RvdHlwZUhhc1N0YXRpY1Byb3Bl
cnR5VGFibGUKIHsKICAgICBteSAkaW50ZXJmYWNlID0gc2hpZnQ7Ci0gICAgbXkgJG51bVByb3Rv
dHlwZVByb3BlcnRpZXMgPSBQcm90b3R5cGVQcm9wZXJ0eUNvdW50KCRpbnRlcmZhY2UpOwogICAg
IG15ICRudW1Db25zdGFudHMgPSBAeyRpbnRlcmZhY2UtPmNvbnN0YW50c307Ci0gICAgcmV0dXJu
ICRudW1Db25zdGFudHMgPiAwIHx8ICRudW1Qcm90b3R5cGVQcm9wZXJ0aWVzID4gMDsKKyAgICBy
ZXR1cm4gJG51bUNvbnN0YW50cyA+IDAgfHwgUHJvdG90eXBlUHJvcGVydHlDb3VudCgkaW50ZXJm
YWNlKSA+IDA7CiB9CiAKIHN1YiBJbnN0YW5jZU92ZXJyaWRlc1B1dEltcGxlbWVudGF0aW9uCiB7
CiAgICAgbXkgJGludGVyZmFjZSA9IHNoaWZ0OwotICAgIHJldHVybiAkaW50ZXJmYWNlLT5leHRl
bmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tTmFtZWRTZXR0ZXIifQotICAgICAgICB8fCAkaW50ZXJm
YWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tSW5kZXhlZFNldHRlciJ9OworICAgIHJl
dHVybiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDdXN0b21OYW1lZFNldHRlcn0K
KyAgICAgICAgfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Q3VzdG9tSW5kZXhl
ZFNldHRlcn07CiB9CiAKIHN1YiBJbnN0YW5jZU92ZXJyaWRlc1B1dERlY2xhcmF0aW9uCiB7CiAg
ICAgbXkgJGludGVyZmFjZSA9IHNoaWZ0OwotICAgIHJldHVybiAkaW50ZXJmYWNlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tUHV0RnVuY3Rpb24ifQotICAgICAgICB8fCAkaW50ZXJmYWNl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tTmFtZWRTZXR0ZXIifQotICAgICAgICB8fCAk
aW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tSW5kZXhlZFNldHRlciJ9Owor
ICAgIHJldHVybiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDdXN0b21QdXRGdW5j
dGlvbn0KKyAgICAgICAgfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Q3VzdG9t
TmFtZWRTZXR0ZXJ9CisgICAgICAgIHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+
e0N1c3RvbUluZGV4ZWRTZXR0ZXJ9OwogfQogCiBzdWIgSW5zdGFuY2VOZWVkc1Zpc2l0Q2hpbGRy
ZW4KIHsKICAgICBteSAkaW50ZXJmYWNlID0gc2hpZnQ7Ci0gICAgcmV0dXJuICRpbnRlcmZhY2Ut
PmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0N1c3RvbU1hcmtGdW5jdGlvbiJ9CisgICAgcmV0dXJu
ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0pTQ3VzdG9tTWFya0Z1bmN0aW9ufQog
ICAgICAgICB8fCAkY29kZUdlbmVyYXRvci0+SW5oZXJpdHNJbnRlcmZhY2UoJGludGVyZmFjZSwg
IkV2ZW50VGFyZ2V0IikKICAgICAgICAgfHwgJGludGVyZmFjZS0+bmFtZSBlcSAiRXZlbnRUYXJn
ZXQiCi0gICAgICAgIHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJSZXBvcnRF
eHRyYU1lbW9yeUNvc3QifQorICAgICAgICB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPntSZXBvcnRFeHRyYU1lbW9yeUNvc3R9CiAgICAgICAgIHx8IElzSlNCdWlsdGluQ29uc3Ry
dWN0b3IoJGludGVyZmFjZSkKIH0KIAogc3ViIEluc3RhbmNlTmVlZHNFc3RpbWF0ZWRTaXplCiB7
CiAgICAgbXkgJGludGVyZmFjZSA9IHNoaWZ0OwotICAgIHJldHVybiAkaW50ZXJmYWNlLT5leHRl
bmRlZEF0dHJpYnV0ZXMtPnsiUmVwb3J0RXh0cmFNZW1vcnlDb3N0In07CisgICAgcmV0dXJuICRp
bnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e1JlcG9ydEV4dHJhTWVtb3J5Q29zdH07CiB9
CiAKIHN1YiBHZXRJbXBsQ2xhc3NOYW1lCkBAIC0xMDgxLDcgKzEwNTYsNyBAQCBzdWIgR2VuZXJh
dGVIZWFkZXIKICAgICBteSAkY2xhc3NOYW1lID0gIkpTJGludGVyZmFjZU5hbWUiOwogICAgIG15
ICVzdHJ1Y3R1cmVGbGFncyA9ICgpOwogCi0gICAgbXkgJGhhc0xlZ2FjeVBhcmVudCA9ICRpbnRl
cmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0xlZ2FjeVBhcmVudCJ9OworICAgIG15ICRo
YXNMZWdhY3lQYXJlbnQgPSAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntKU0xlZ2Fj
eVBhcmVudH07CiAgICAgbXkgJGhhc1JlYWxQYXJlbnQgPSAkaW50ZXJmYWNlLT5wYXJlbnQ7CiAg
ICAgbXkgJGhhc1BhcmVudCA9ICRoYXNMZWdhY3lQYXJlbnQgfHwgJGhhc1JlYWxQYXJlbnQ7CiAg
ICAgbXkgJHBhcmVudENsYXNzTmFtZSA9IEdldFBhcmVudENsYXNzTmFtZSgkaW50ZXJmYWNlKTsK
QEAgLTEwOTksMTQgKzEwNzQsMTAgQEAgc3ViIEdlbmVyYXRlSGVhZGVyCiAgICAgICAgIH0KICAg
ICB9CiAKLSAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbUNh
bGwifSkgewotICAgICAgICAkaGVhZGVySW5jbHVkZXN7IjxydW50aW1lL0NhbGxEYXRhLmg+In0g
PSAxOwotICAgIH0KKyAgICAkaGVhZGVySW5jbHVkZXN7IjxydW50aW1lL0NhbGxEYXRhLmg+In0g
PSAxIGlmICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0N1c3RvbUNhbGx9OworCisg
ICAgJGhlYWRlckluY2x1ZGVzeyIkaW50ZXJmYWNlTmFtZS5oIn0gPSAxIGlmICRoYXNQYXJlbnQg
JiYgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57SlNHZW5lcmF0ZVRvTmF0aXZlT2Jq
ZWN0fTsKIAotICAgIGlmICgkaGFzUGFyZW50ICYmICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmli
dXRlcy0+eyJKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3QifSkgewotICAgICAgICAkaGVhZGVySW5j
bHVkZXN7IiRpbnRlcmZhY2VOYW1lLmgifSA9IDE7Ci0gICAgfQotICAgIAogICAgICRoZWFkZXJJ
bmNsdWRlc3siU1ZHRWxlbWVudC5oIn0gPSAxIGlmICRjbGFzc05hbWUgPX4gL15KU1NWRy87CiAK
ICAgICBteSAkaW1wbFR5cGUgPSBHZXRJbXBsQ2xhc3NOYW1lKCRpbnRlcmZhY2VOYW1lKTsKQEAg
LTExNDAsOCArMTExMSw4IEBAIHN1YiBHZW5lcmF0ZUhlYWRlcgogCiAgICAgIyBTdGF0aWMgY3Jl
YXRlIG1ldGhvZHMKICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAicHVibGljOlxuIik7Ci0gICAg
cHVzaChAaGVhZGVyQ29udGVudCwgIiAgICB0eXBlZGVmICRwYXJlbnRDbGFzc05hbWUgQmFzZTtc
biIpOwotICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgdHlwZWRlZiAkaW1wbFR5cGUgRE9N
V3JhcHBlZDtcbiIpIGlmICRpbnRlcmZhY2UtPnBhcmVudDsKKyAgICBwdXNoKEBoZWFkZXJDb250
ZW50LCAiICAgIHVzaW5nIEJhc2UgPSAkcGFyZW50Q2xhc3NOYW1lO1xuIik7CisgICAgcHVzaChA
aGVhZGVyQ29udGVudCwgIiAgICB1c2luZyBET01XcmFwcGVkID0gJGltcGxUeXBlO1xuIikgaWYg
JGludGVyZmFjZS0+cGFyZW50OwogCiAgICAgaWYgKCRpbnRlcmZhY2VOYW1lIGVxICJET01XaW5k
b3ciKSB7CiAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgc3RhdGljICRjbGFzc05h
bWUqIGNyZWF0ZShKU0M6OlZNJiB2bSwgSlNDOjpTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmPCRp
bXBsVHlwZT4mJiBpbXBsLCBKU0RPTVdpbmRvd1NoZWxsKiB3aW5kb3dTaGVsbClcbiIpOwpAQCAt
MTE1OSw3ICsxMTMwLDcgQEAgc3ViIEdlbmVyYXRlSGVhZGVyCiAgICAgICAgIHB1c2goQGhlYWRl
ckNvbnRlbnQsICIgICAgICAgIHZtLmhlYXAuYWRkRmluYWxpemVyKHB0ciwgZGVzdHJveSk7XG4i
KTsKICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICAgICAgcmV0dXJuIHB0cjtcbiIp
OwogICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIH1cblxuIik7Ci0gICAgfSBlbHNp
ZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik1hc3F1ZXJhZGVzQXNVbmRlZmlu
ZWQifSkgeworICAgIH0gZWxzaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e01h
c3F1ZXJhZGVzQXNVbmRlZmluZWR9KSB7CiAgICAgICAgIEFkZEluY2x1ZGVzRm9yVHlwZUluSGVh
ZGVyKCRpbXBsVHlwZSkgdW5sZXNzICRzdmdQcm9wZXJ0eU9yTGlzdFByb3BlcnR5VHlwZTsKICAg
ICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICBzdGF0aWMgJGNsYXNzTmFtZSogY3JlYXRl
KEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIFJlZjwkaW1wbFR5cGU+JiYgaW1wbClcbiIpOwogICAgICAgICBwdXNoKEBoZWFkZXJDb250
ZW50LCAiICAgIHtcbiIpOwpAQCAtMTE4NSwxMyArMTE1Niw5IEBAIHN1YiBHZW5lcmF0ZUhlYWRl
cgogICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIH1cblxuIik7CiAgICAgfQogCi0g
ICAgaWYgKElzRE9NR2xvYmFsT2JqZWN0KCRpbnRlcmZhY2UpKSB7Ci0gICAgICAgIHB1c2goQGhl
YWRlckNvbnRlbnQsICIgICAgc3RhdGljIGNvbnN0IGJvb2wgbmVlZHNEZXN0cnVjdGlvbiA9IGZh
bHNlO1xuXG4iKTsKLSAgICB9CisgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICBzdGF0aWMg
Y29uc3QgYm9vbCBuZWVkc0Rlc3RydWN0aW9uID0gZmFsc2U7XG5cbiIpIGlmIElzRE9NR2xvYmFs
T2JqZWN0KCRpbnRlcmZhY2UpOwogCi0gICAgaWYgKEluc3RhbmNlUHJvcGVydHlDb3VudCgkaW50
ZXJmYWNlKSA+IDApIHsKLSAgICAgICAgJHN0cnVjdHVyZUZsYWdzeyJKU0M6Okhhc1N0YXRpY1By
b3BlcnR5VGFibGUifSA9IDE7Ci0gICAgfQorICAgICRzdHJ1Y3R1cmVGbGFnc3siSlNDOjpIYXNT
dGF0aWNQcm9wZXJ0eVRhYmxlIn0gPSAxIGlmIEluc3RhbmNlUHJvcGVydHlDb3VudCgkaW50ZXJm
YWNlKSA+IDA7CiAKICAgICAjIFByb3RvdHlwZQogICAgIHVubGVzcyAoU2hvdWxkVXNlR2xvYmFs
T2JqZWN0UHJvdG90eXBlKCRpbnRlcmZhY2UpKSB7CkBAIC0xMjA2LDQ1ICsxMTczLDQwIEBAIHN1
YiBHZW5lcmF0ZUhlYWRlcgogICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICBz
dGF0aWMgJG5hdGl2ZVR5cGUgdG9XcmFwcGVkKEpTQzo6RXhlY1N0YXRlJiwgSlNDOjpKU1ZhbHVl
KTtcbiIpOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgbXkgJGV4cG9ydCA9ICIiOwot
ICAgICAgICAgICAgJGV4cG9ydCA9ICJXRUJDT1JFX0VYUE9SVCAiIGlmICRpbnRlcmZhY2UtPmV4
dGVuZGVkQXR0cmlidXRlcy0+eyJFeHBvcnRUb1dyYXBwZWRGdW5jdGlvbiJ9OworICAgICAgICAg
ICAgJGV4cG9ydCA9ICJXRUJDT1JFX0VYUE9SVCAiIGlmICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0
cmlidXRlcy0+e0V4cG9ydFRvV3JhcHBlZEZ1bmN0aW9ufTsKICAgICAgICAgICAgIHB1c2goQGhl
YWRlckNvbnRlbnQsICIgICAgc3RhdGljICRleHBvcnQkbmF0aXZlVHlwZSB0b1dyYXBwZWQoSlND
OjpKU1ZhbHVlKTtcbiIpOwogICAgICAgICB9CiAgICAgfQogCi0gICAgJGhlYWRlclRyYWlsaW5n
SW5jbHVkZXN7IiR7Y2xhc3NOYW1lfUN1c3RvbS5oIn0gPSAxIGlmICRpbnRlcmZhY2UtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+eyJKU0N1c3RvbUhlYWRlciJ9OworICAgICRoZWFkZXJUcmFpbGluZ0lu
Y2x1ZGVzeyIke2NsYXNzTmFtZX1DdXN0b20uaCJ9ID0gMSBpZiAkaW50ZXJmYWNlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPntKU0N1c3RvbUhlYWRlcn07CiAKICAgICBteSAkbmFtZWRHZXR0ZXJGdW5j
dGlvbiA9IEdldE5hbWVkR2V0dGVyRnVuY3Rpb24oJGludGVyZmFjZSk7CiAgICAgbXkgJGluZGV4
ZWRHZXR0ZXJGdW5jdGlvbiA9IEdldEluZGV4ZWRHZXR0ZXJGdW5jdGlvbigkaW50ZXJmYWNlKTsK
IAogICAgIG15ICRoYXNOYW1lZEdldHRlciA9ICRuYW1lZEdldHRlckZ1bmN0aW9uCi0gICAgICAg
IHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21OYW1lZEdldHRlciJ9
OworICAgICAgICB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDdXN0b21OYW1l
ZEdldHRlcn07CiAKLSAgICBteSAkaGFzQ29tcGxleEdldHRlciA9Ci0gICAgICAgICRpbmRleGVk
R2V0dGVyRnVuY3Rpb24KLSAgICAgICAgfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVz
LT57IkpTQ3VzdG9tR2V0T3duUHJvcGVydHlTbG90QW5kRGVzY3JpcHRvciJ9Ci0gICAgICAgIHx8
ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21HZXRPd25Qcm9wZXJ0eVNs
b3QifQorICAgIG15ICRoYXNDb21wbGV4R2V0dGVyID0gJGluZGV4ZWRHZXR0ZXJGdW5jdGlvbgor
ICAgICAgICB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntKU0N1c3RvbUdldE93
blByb3BlcnR5U2xvdEFuZERlc2NyaXB0b3J9CisgICAgICAgIHx8ICRpbnRlcmZhY2UtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+e0N1c3RvbUdldE93blByb3BlcnR5U2xvdH0KICAgICAgICAgfHwgJGhh
c05hbWVkR2V0dGVyOwotICAgIAorCiAgICAgbXkgJGhhc0dldHRlciA9IEluc3RhbmNlT3ZlcnJp
ZGVzR2V0T3duUHJvcGVydHlTbG90KCRpbnRlcmZhY2UpOwogCiAgICAgaWYgKCRoYXNOYW1lZEdl
dHRlcikgewotICAgICAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik92
ZXJyaWRlQnVpbHRpbnMifSkgeworICAgICAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57T3ZlcnJpZGVCdWlsdGluc30pIHsKICAgICAgICAgICAgICRzdHJ1Y3R1cmVGbGFn
c3siSlNDOjpHZXRPd25Qcm9wZXJ0eVNsb3RJc0ltcHVyZSJ9ID0gMTsKICAgICAgICAgfSBlbHNl
IHsKICAgICAgICAgICAgICRzdHJ1Y3R1cmVGbGFnc3siSlNDOjpHZXRPd25Qcm9wZXJ0eVNsb3RJ
c0ltcHVyZUZvclByb3BlcnR5QWJzZW5jZSJ9ID0gMTsKICAgICAgICAgfQogICAgIH0KLSAgICBp
ZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik5ld0ltcHVyZVByb3BlcnR5Rmly
ZXNXYXRjaHBvaW50cyJ9KSB7Ci0gICAgICAgICRzdHJ1Y3R1cmVGbGFnc3siSlNDOjpOZXdJbXB1
cmVQcm9wZXJ0eUZpcmVzV2F0Y2hwb2ludHMifSA9IDE7Ci0gICAgfQotICAgIGlmICgkaW50ZXJm
YWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tQ2FsbCJ9KSB7Ci0gICAgICAgICRzdHJ1
Y3R1cmVGbGFnc3siSlNDOjpUeXBlT2ZTaG91bGRDYWxsR2V0Q2FsbERhdGEifSA9IDE7Ci0gICAg
fQorICAgICRzdHJ1Y3R1cmVGbGFnc3siSlNDOjpOZXdJbXB1cmVQcm9wZXJ0eUZpcmVzV2F0Y2hw
b2ludHMifSA9IDEgaWYgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57TmV3SW1wdXJl
UHJvcGVydHlGaXJlc1dhdGNocG9pbnRzfTsKKyAgICAkc3RydWN0dXJlRmxhZ3N7IkpTQzo6VHlw
ZU9mU2hvdWxkQ2FsbEdldENhbGxEYXRhIn0gPSAxIGlmICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0
cmlidXRlcy0+e0N1c3RvbUNhbGx9OwogCiAgICAgIyBHZXR0ZXJzCiAgICAgaWYgKCRoYXNHZXR0
ZXIpIHsKICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICBzdGF0aWMgYm9vbCBnZXRP
d25Qcm9wZXJ0eVNsb3QoSlNDOjpKU09iamVjdCosIEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpQcm9w
ZXJ0eU5hbWUsIEpTQzo6UHJvcGVydHlTbG90Jik7XG4iKTsKLSAgICAgICAgcHVzaChAaGVhZGVy
Q29udGVudCwgIiAgICBib29sIGdldE93blByb3BlcnR5U2xvdERlbGVnYXRlKEpTQzo6RXhlY1N0
YXRlKiwgSlNDOjpQcm9wZXJ0eU5hbWUsIEpTQzo6UHJvcGVydHlTbG90Jik7XG4iKSBpZiAkaW50
ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNDdXN0b21HZXRPd25Qcm9wZXJ0eVNsb3RB
bmREZXNjcmlwdG9yIn07CisgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgYm9vbCBn
ZXRPd25Qcm9wZXJ0eVNsb3REZWxlZ2F0ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6UHJvcGVydHlO
YW1lLCBKU0M6OlByb3BlcnR5U2xvdCYpO1xuIikgaWYgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57SlNDdXN0b21HZXRPd25Qcm9wZXJ0eVNsb3RBbmREZXNjcmlwdG9yfTsKICAgICAg
ICAgJHN0cnVjdHVyZUZsYWdzeyJKU0M6Ok92ZXJyaWRlc0dldE93blByb3BlcnR5U2xvdCJ9ID0g
MTsKIAogICAgICAgICBpZiAoJGhhc0NvbXBsZXhHZXR0ZXIpIHsKQEAgLTEyNTksNyArMTIyMSw3
IEBAIHN1YiBHZW5lcmF0ZUhlYWRlcgogICAgIGlmICgkb3ZlcnJpZGVzUHV0KSB7CiAgICAgICAg
IHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgc3RhdGljIGJvb2wgcHV0KEpTQzo6SlNDZWxsKiwg
SlNDOjpFeGVjU3RhdGUqLCBKU0M6OlByb3BlcnR5TmFtZSwgSlNDOjpKU1ZhbHVlLCBKU0M6OlB1
dFByb3BlcnR5U2xvdCYpO1xuIik7CiAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAg
c3RhdGljIGJvb2wgcHV0QnlJbmRleChKU0M6OkpTQ2VsbCosIEpTQzo6RXhlY1N0YXRlKiwgdW5z
aWduZWQgcHJvcGVydHlOYW1lLCBKU0M6OkpTVmFsdWUsIGJvb2wgc2hvdWxkVGhyb3cpO1xuIik7
Ci0gICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgYm9vbCBwdXREZWxlZ2F0ZShKU0M6
OkV4ZWNTdGF0ZSosIEpTQzo6UHJvcGVydHlOYW1lLCBKU0M6OkpTVmFsdWUsIEpTQzo6UHV0UHJv
cGVydHlTbG90JiwgYm9vbCYgcHV0UmVzdWx0KTtcbiIpIGlmICRpbnRlcmZhY2UtPmV4dGVuZGVk
QXR0cmlidXRlcy0+eyJDdXN0b21OYW1lZFNldHRlciJ9OworICAgICAgICBwdXNoKEBoZWFkZXJD
b250ZW50LCAiICAgIGJvb2wgcHV0RGVsZWdhdGUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OlByb3Bl
cnR5TmFtZSwgSlNDOjpKU1ZhbHVlLCBKU0M6OlB1dFByb3BlcnR5U2xvdCYsIGJvb2wmIHB1dFJl
c3VsdCk7XG4iKSBpZiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDdXN0b21OYW1l
ZFNldHRlcn07CiAgICAgfQogCiAgICAgaWYgKCEkaGFzUGFyZW50KSB7CkBAIC0xMjc3LDEwICsx
MjM5LDkgQEAgc3ViIEdlbmVyYXRlSGVhZGVyCiAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQs
ICJcbiIpOwogICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIERFQ0xBUkVfSU5GTztc
blxuIik7CiAgICAgfQorCiAgICAgIyBTdHJ1Y3R1cmUgSUQKLSAgICBpZiAoJGludGVyZmFjZU5h
bWUgZXEgIkRPTVdpbmRvdyIpIHsKLSAgICAgICAgJHN0cnVjdHVyZUZsYWdzeyJKU0M6OkltcGxl
bWVudHNIYXNJbnN0YW5jZSB8IEpTQzo6SW1wbGVtZW50c0RlZmF1bHRIYXNJbnN0YW5jZSJ9ID0g
MTsKLSAgICB9CisgICAgJHN0cnVjdHVyZUZsYWdzeyJKU0M6OkltcGxlbWVudHNIYXNJbnN0YW5j
ZSB8IEpTQzo6SW1wbGVtZW50c0RlZmF1bHRIYXNJbnN0YW5jZSJ9ID0gMSBpZiAkaW50ZXJmYWNl
TmFtZSBlcSAiRE9NV2luZG93IjsKICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIHN0YXRp
YyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpXG4iKTsKICAg
ICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIHtcbiIpOwogICAgIGlmIChJc0RPTUdsb2JhbE9i
amVjdCgkaW50ZXJmYWNlKSkgewpAQCAtMTI5NywxNCArMTI1OCwxNCBAQCBzdWIgR2VuZXJhdGVI
ZWFkZXIKICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIH1cblxuIik7CiAKICAgICAjIEN1
c3RvbSBwdXNoRXZlbnRIYW5kbGVyU2NvcGUgZnVuY3Rpb24KLSAgICBwdXNoKEBoZWFkZXJDb250
ZW50LCAiICAgIEpTQzo6SlNTY29wZSogcHVzaEV2ZW50SGFuZGxlclNjb3BlKEpTQzo6RXhlY1N0
YXRlKiwgSlNDOjpKU1Njb3BlKikgY29uc3Q7XG5cbiIpIGlmICRpbnRlcmZhY2UtPmV4dGVuZGVk
QXR0cmlidXRlcy0+eyJKU0N1c3RvbVB1c2hFdmVudEhhbmRsZXJTY29wZSJ9OworICAgIHB1c2go
QGhlYWRlckNvbnRlbnQsICIgICAgSlNDOjpKU1Njb3BlKiBwdXNoRXZlbnRIYW5kbGVyU2NvcGUo
SlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTU2NvcGUqKSBjb25zdDtcblxuIikgaWYgJGludGVyZmFj
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57SlNDdXN0b21QdXNoRXZlbnRIYW5kbGVyU2NvcGV9Owog
CiAgICAgIyBDdXN0b20gY2FsbCBmdW5jdGlvbnMKLSAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAi
ICAgIHN0YXRpYyBKU0M6OkNhbGxUeXBlIGdldENhbGxEYXRhKEpTQzo6SlNDZWxsKiwgSlNDOjpD
YWxsRGF0YSYpO1xuXG4iKSBpZiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3Vz
dG9tQ2FsbCJ9OworICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgc3RhdGljIEpTQzo6Q2Fs
bFR5cGUgZ2V0Q2FsbERhdGEoSlNDOjpKU0NlbGwqLCBKU0M6OkNhbGxEYXRhJik7XG5cbiIpIGlm
ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0N1c3RvbUNhbGx9OwogCiAgICAgIyBD
dXN0b20gZGVsZXRlUHJvcGVydHkgZnVuY3Rpb24KLSAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAi
ICAgIHN0YXRpYyBib29sIGRlbGV0ZVByb3BlcnR5KEpTQzo6SlNDZWxsKiwgSlNDOjpFeGVjU3Rh
dGUqLCBKU0M6OlByb3BlcnR5TmFtZSk7XG4iKSBpZiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJp
YnV0ZXMtPnsiQ3VzdG9tRGVsZXRlUHJvcGVydHkifTsKLSAgICBwdXNoKEBoZWFkZXJDb250ZW50
LCAiICAgIHN0YXRpYyBib29sIGRlbGV0ZVByb3BlcnR5QnlJbmRleChKU0M6OkpTQ2VsbCosIEpT
Qzo6RXhlY1N0YXRlKiwgdW5zaWduZWQpO1xuIikgaWYgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57IkN1c3RvbURlbGV0ZVByb3BlcnR5In07CisgICAgcHVzaChAaGVhZGVyQ29udGVu
dCwgIiAgICBzdGF0aWMgYm9vbCBkZWxldGVQcm9wZXJ0eShKU0M6OkpTQ2VsbCosIEpTQzo6RXhl
Y1N0YXRlKiwgSlNDOjpQcm9wZXJ0eU5hbWUpO1xuIikgaWYgJGludGVyZmFjZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57Q3VzdG9tRGVsZXRlUHJvcGVydHl9OworICAgIHB1c2goQGhlYWRlckNvbnRl
bnQsICIgICAgc3RhdGljIGJvb2wgZGVsZXRlUHJvcGVydHlCeUluZGV4KEpTQzo6SlNDZWxsKiwg
SlNDOjpFeGVjU3RhdGUqLCB1bnNpZ25lZCk7XG4iKSBpZiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPntDdXN0b21EZWxldGVQcm9wZXJ0eX07CiAKICAgICAjIEN1c3RvbSBnZXRQcm9w
ZXJ0eU5hbWVzIGZ1bmN0aW9uIGV4aXN0cyBvbiBET01XaW5kb3cKICAgICBpZiAoJGludGVyZmFj
ZU5hbWUgZXEgIkRPTVdpbmRvdyIpIHsKQEAgLTEzMTYsMzAgKzEyNzcsMjcgQEAgc3ViIEdlbmVy
YXRlSGVhZGVyCiAgICAgfQogCiAgICAgIyBDdXN0b20gZ2V0T3duUHJvcGVydHlOYW1lcyBmdW5j
dGlvbgotICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tRW51
bWVyYXRlUHJvcGVydHkifSB8fCAkaW5kZXhlZEdldHRlckZ1bmN0aW9uIHx8ICRuYW1lZEdldHRl
ckZ1bmN0aW9uKSB7CisgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0N1
c3RvbUVudW1lcmF0ZVByb3BlcnR5fSB8fCAkaW5kZXhlZEdldHRlckZ1bmN0aW9uIHx8ICRuYW1l
ZEdldHRlckZ1bmN0aW9uKSB7CiAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgc3Rh
dGljIHZvaWQgZ2V0T3duUHJvcGVydHlOYW1lcyhKU0M6OkpTT2JqZWN0KiwgSlNDOjpFeGVjU3Rh
dGUqLCBKU0M6OlByb3BlcnR5TmFtZUFycmF5JiwgSlNDOjpFbnVtZXJhdGlvbk1vZGUgPSBKU0M6
OkVudW1lcmF0aW9uTW9kZSgpKTtcbiIpOwogICAgICAgICAkc3RydWN0dXJlRmxhZ3N7IkpTQzo6
T3ZlcnJpZGVzR2V0UHJvcGVydHlOYW1lcyJ9ID0gMTsgICAgICAgCiAgICAgfQogCiAgICAgIyBD
dXN0b20gZGVmaW5lT3duUHJvcGVydHkgZnVuY3Rpb24KLSAgICBwdXNoKEBoZWFkZXJDb250ZW50
LCAiICAgIHN0YXRpYyBib29sIGRlZmluZU93blByb3BlcnR5KEpTQzo6SlNPYmplY3QqLCBKU0M6
OkV4ZWNTdGF0ZSosIEpTQzo6UHJvcGVydHlOYW1lLCBjb25zdCBKU0M6OlByb3BlcnR5RGVzY3Jp
cHRvciYsIGJvb2wgc2hvdWxkVGhyb3cpO1xuIikgaWYgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57IkpTQ3VzdG9tRGVmaW5lT3duUHJvcGVydHkifTsKKyAgICBwdXNoKEBoZWFkZXJD
b250ZW50LCAiICAgIHN0YXRpYyBib29sIGRlZmluZU93blByb3BlcnR5KEpTQzo6SlNPYmplY3Qq
LCBKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6UHJvcGVydHlOYW1lLCBjb25zdCBKU0M6OlByb3BlcnR5
RGVzY3JpcHRvciYsIGJvb2wgc2hvdWxkVGhyb3cpO1xuIikgaWYgJGludGVyZmFjZS0+ZXh0ZW5k
ZWRBdHRyaWJ1dGVzLT57SlNDdXN0b21EZWZpbmVPd25Qcm9wZXJ0eX07CiAKICAgICAjIEN1c3Rv
bSBnZXRQcm90b3R5cGUgLyBzZXRQcm90b3R5cGUgZnVuY3Rpb25zLgotICAgIHB1c2ggKEBoZWFk
ZXJDb250ZW50LCAiICAgIHN0YXRpYyBKU0M6OkpTVmFsdWUgZ2V0UHJvdG90eXBlKEpTQzo6SlNP
YmplY3QqLCBKU0M6OkV4ZWNTdGF0ZSopO1xuIikgaWYgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57IkN1c3RvbUdldFByb3RvdHlwZSJ9OwotICAgIHB1c2ggKEBoZWFkZXJDb250ZW50
LCAiICAgIHN0YXRpYyBib29sIHNldFByb3RvdHlwZShKU0M6OkpTT2JqZWN0KiwgSlNDOjpFeGVj
U3RhdGUqLCBKU0M6OkpTVmFsdWUsIGJvb2wgc2hvdWxkVGhyb3dJZkNhbnRTZXQpO1xuIikgaWYg
JGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbVNldFByb3RvdHlwZSJ9Owor
ICAgIHB1c2ggKEBoZWFkZXJDb250ZW50LCAiICAgIHN0YXRpYyBKU0M6OkpTVmFsdWUgZ2V0UHJv
dG90eXBlKEpTQzo6SlNPYmplY3QqLCBKU0M6OkV4ZWNTdGF0ZSopO1xuIikgaWYgJGludGVyZmFj
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Q3VzdG9tR2V0UHJvdG90eXBlfTsKKyAgICBwdXNoIChA
aGVhZGVyQ29udGVudCwgIiAgICBzdGF0aWMgYm9vbCBzZXRQcm90b3R5cGUoSlNDOjpKU09iamVj
dCosIEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCBib29sIHNob3VsZFRocm93SWZDYW50
U2V0KTtcbiIpIGlmICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0N1c3RvbVNldFBy
b3RvdHlwZX07CiAKICAgICAjIEN1c3RvbSBwcmV2ZW50RXh0ZW5zaW9ucyBmdW5jdGlvbi4KLSAg
ICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIHN0YXRpYyBib29sIHByZXZlbnRFeHRlbnNpb25z
KEpTQzo6SlNPYmplY3QqLCBKU0M6OkV4ZWNTdGF0ZSopO1xuIikgaWYgJGludGVyZmFjZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbVByZXZlbnRFeHRlbnNpb25zIn07CisgICAgcHVzaChA
aGVhZGVyQ29udGVudCwgIiAgICBzdGF0aWMgYm9vbCBwcmV2ZW50RXh0ZW5zaW9ucyhKU0M6OkpT
T2JqZWN0KiwgSlNDOjpFeGVjU3RhdGUqKTtcbiIpIGlmICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0
cmlidXRlcy0+e0N1c3RvbVByZXZlbnRFeHRlbnNpb25zfTsKICAgICAKLSAgICAjIE92ZXJyaWRl
IHRvQm9vbGVhbiB0byByZXR1cm4gZmFsc2UgZm9yIG9iamVjdHMgdGhhdCB3YW50IHRvICdNYXNx
dWVyYWRlc0FzVW5kZWZpbmVkJy4KLSAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57Ik1hc3F1ZXJhZGVzQXNVbmRlZmluZWQifSkgewotICAgICAgICAkc3RydWN0dXJlRmxh
Z3N7IkpTQzo6TWFzcXVlcmFkZXNBc1VuZGVmaW5lZCJ9ID0gMTsKLSAgICB9CisgICAgJHN0cnVj
dHVyZUZsYWdzeyJKU0M6Ok1hc3F1ZXJhZGVzQXNVbmRlZmluZWQifSA9IDEgaWYgJGludGVyZmFj
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57TWFzcXVlcmFkZXNBc1VuZGVmaW5lZH07CiAKICAgICAj
IENvbnN0cnVjdG9yIG9iamVjdCBnZXR0ZXIKLSAgICB1bmxlc3MgKCRpbnRlcmZhY2UtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+eyJOb0ludGVyZmFjZU9iamVjdCJ9KSB7CisgICAgdW5sZXNzICgkaW50
ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntOb0ludGVyZmFjZU9iamVjdH0pIHsKICAgICAg
ICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICBzdGF0aWMgSlNDOjpKU1ZhbHVlIGdldENvbnN0
cnVjdG9yKEpTQzo6Vk0mLCBjb25zdCBKU0M6OkpTR2xvYmFsT2JqZWN0Kik7XG4iKTsKLSAgICAg
ICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICBzdGF0aWMgSlNDOjpKU1ZhbHVlIGdldE5hbWVk
Q29uc3RydWN0b3IoSlNDOjpWTSYsIEpTQzo6SlNHbG9iYWxPYmplY3QqKTtcbiIpIGlmICRpbnRl
cmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOYW1lZENvbnN0cnVjdG9yIn07CisgICAgICAg
IHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgc3RhdGljIEpTQzo6SlNWYWx1ZSBnZXROYW1lZENv
bnN0cnVjdG9yKEpTQzo6Vk0mLCBKU0M6OkpTR2xvYmFsT2JqZWN0Kik7XG4iKSBpZiAkaW50ZXJm
YWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntOYW1lZENvbnN0cnVjdG9yfTsKICAgICB9CiAKICAg
ICBteSAkbnVtQ3VzdG9tRnVuY3Rpb25zID0gMDsKQEAgLTEzNTQsNyArMTMxMiw3IEBAIHN1YiBH
ZW5lcmF0ZUhlYWRlcgogICAgICAgICAgICAgbXkgJGF0dHJpYnV0ZSA9ICRfOwogICAgICAgICAg
ICAgJG51bUN1c3RvbUF0dHJpYnV0ZXMrKyBpZiBIYXNDdXN0b21HZXR0ZXIoJGF0dHJpYnV0ZS0+
c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMpOwogICAgICAgICAgICAgJG51bUN1c3RvbUF0
dHJpYnV0ZXMrKyBpZiBIYXNDdXN0b21TZXR0ZXIoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRl
bmRlZEF0dHJpYnV0ZXMpOwotICAgICAgICAgICAgaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+
ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNhY2hlZEF0dHJpYnV0ZSJ9KSB7CisgICAgICAgICAgICBp
ZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDYWNoZWRBdHRy
aWJ1dGV9KSB7CiAgICAgICAgICAgICAgICAgbXkgJGNvbmRpdGlvbmFsU3RyaW5nID0gJGNvZGVH
ZW5lcmF0b3ItPkdlbmVyYXRlQ29uZGl0aW9uYWxTdHJpbmcoJGF0dHJpYnV0ZS0+c2lnbmF0dXJl
KTsKICAgICAgICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiI2lmICR7Y29uZGl0aW9u
YWxTdHJpbmd9XG4iKSBpZiAkY29uZGl0aW9uYWxTdHJpbmc7CiAgICAgICAgICAgICAgICAgcHVz
aChAaGVhZGVyQ29udGVudCwgIiAgICBtdXRhYmxlIEpTQzo6V3JpdGVCYXJyaWVyPEpTQzo6VW5r
bm93bj4gbV8iIC4gJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5uYW1lIC4gIjtcbiIpOwpAQCAtMTM2
MywxNiArMTMyMSwxNCBAQCBzdWIgR2VuZXJhdGVIZWFkZXIKICAgICAgICAgICAgICAgICBwdXNo
KEBoZWFkZXJDb250ZW50LCAiI2VuZGlmXG4iKSBpZiAkY29uZGl0aW9uYWxTdHJpbmc7CiAgICAg
ICAgICAgICB9CiAKLSAgICAgICAgICAgIGlmICgkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+eyJGb3J3YXJkRGVjbGFyZUluSGVhZGVyIn0pIHsKLSAgICAgICAgICAg
ICAgICAkaGFzRm9yd2FyZERlY2xhcmluZ0F0dHJpYnV0ZXMgPSAxOwotICAgICAgICAgICAgfQor
ICAgICAgICAgICAgJGhhc0ZvcndhcmREZWNsYXJpbmdBdHRyaWJ1dGVzID0gMSBpZiAkYXR0cmli
dXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0ZvcndhcmREZWNsYXJlSW5IZWFk
ZXJ9OwogICAgICAgICB9CiAgICAgfQogCiAgICAgIyB2aXNpdCBmdW5jdGlvbgogICAgIGlmICgk
bmVlZHNWaXNpdENoaWxkcmVuKSB7CiAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAg
c3RhdGljIHZvaWQgdmlzaXRDaGlsZHJlbihKU0NlbGwqLCBKU0M6OlNsb3RWaXNpdG9yJik7XG4i
KTsKLSAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICB2b2lkIHZpc2l0QWRkaXRpb25h
bENoaWxkcmVuKEpTQzo6U2xvdFZpc2l0b3ImKTtcbiIpIGlmICRpbnRlcmZhY2UtPmV4dGVuZGVk
QXR0cmlidXRlcy0+eyJKU0N1c3RvbU1hcmtGdW5jdGlvbiJ9OworICAgICAgICBwdXNoKEBoZWFk
ZXJDb250ZW50LCAiICAgIHZvaWQgdmlzaXRBZGRpdGlvbmFsQ2hpbGRyZW4oSlNDOjpTbG90Vmlz
aXRvciYpO1xuIikgaWYgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57SlNDdXN0b21N
YXJrRnVuY3Rpb259OwogICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiXG4iKTsKICAgICB9
CiAKQEAgLTE0MDEsMTggKzEzNTcsMTQgQEAgc3ViIEdlbmVyYXRlSGVhZGVyCiAKICAgICBmb3Jl
YWNoIG15ICRmdW5jdGlvbiAoQHskaW50ZXJmYWNlLT5mdW5jdGlvbnN9KSB7CiAgICAgICAgICRu
dW1DdXN0b21GdW5jdGlvbnMrKyBpZiBIYXNDdXN0b21NZXRob2QoJGZ1bmN0aW9uLT5zaWduYXR1
cmUtPmV4dGVuZGVkQXR0cmlidXRlcyk7Ci0KLSAgICAgICAgaWYgKCRmdW5jdGlvbi0+c2lnbmF0
dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRm9yd2FyZERlY2xhcmVJbkhlYWRlciJ9KSB7Ci0g
ICAgICAgICAgICAkaGFzRm9yd2FyZERlY2xhcmluZ0Z1bmN0aW9ucyA9IDE7Ci0gICAgICAgIH0K
KyAgICAgICAgJGhhc0ZvcndhcmREZWNsYXJpbmdGdW5jdGlvbnMgPSAxIGlmICRmdW5jdGlvbi0+
c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntGb3J3YXJkRGVjbGFyZUluSGVhZGVyfTsK
ICAgICB9CiAKICAgICBpZiAoJG51bUN1c3RvbUZ1bmN0aW9ucyA+IDApIHsKICAgICAgICAgbXkg
JGluQXBwbGVDb3B5cmlnaHQgPSAwOwogICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiXG4g
ICAgLy8gQ3VzdG9tIGZ1bmN0aW9uc1xuIik7CiAgICAgICAgIGZvcmVhY2ggbXkgJGZ1bmN0aW9u
IChAeyRpbnRlcmZhY2UtPmZ1bmN0aW9uc30pIHsKLSAgICAgICAgICAgIG15ICRuZWVkc0FwcGxl
Q29weXJpZ2h0ID0gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJB
cHBsZUNvcHlyaWdodCJ9OwotICAgICAgICAgICAgaWYgKCRuZWVkc0FwcGxlQ29weXJpZ2h0KSB7
CisgICAgICAgICAgICBpZiAoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRl
cy0+e0FwcGxlQ29weXJpZ2h0fSkgewogICAgICAgICAgICAgICAgIGlmICghJGluQXBwbGVDb3B5
cmlnaHQpIHsKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgJGJlZ2lu
QXBwbGVDb3B5cmlnaHRGb3JIZWFkZXJGaWxlcyk7CiAgICAgICAgICAgICAgICAgICAgICRpbkFw
cGxlQ29weXJpZ2h0ID0gMTsKQEAgLTE0MjUsNyArMTM3Nyw3IEBAIHN1YiBHZW5lcmF0ZUhlYWRl
cgogICAgICAgICAgICAgbmV4dCBpZiAkZnVuY3Rpb24tPntvdmVybG9hZHN9ICYmICRmdW5jdGlv
bi0+e292ZXJsb2FkSW5kZXh9ICE9IDE7CiAgICAgICAgICAgICBteSAkY29uZGl0aW9uYWxTdHJp
bmcgPSAkY29kZUdlbmVyYXRvci0+R2VuZXJhdGVDb25kaXRpb25hbFN0cmluZygkZnVuY3Rpb24t
PnNpZ25hdHVyZSk7CiAgICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiI2lmICR7Y29u
ZGl0aW9uYWxTdHJpbmd9XG4iKSBpZiAkY29uZGl0aW9uYWxTdHJpbmc7Ci0gICAgICAgICAgICBt
eSAkZnVuY3Rpb25JbXBsZW1lbnRhdGlvbk5hbWUgPSAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkltcGxlbWVudGVkQXMifSB8fCAkY29kZUdlbmVyYXRvci0+V0tf
bGNmaXJzdCgkZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFtZSk7CisgICAgICAgICAgICBteSAkZnVu
Y3Rpb25JbXBsZW1lbnRhdGlvbk5hbWUgPSAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57SW1wbGVtZW50ZWRBc30gfHwgJGNvZGVHZW5lcmF0b3ItPldLX2xjZmlyc3Qo
JGZ1bmN0aW9uLT5zaWduYXR1cmUtPm5hbWUpOwogICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29u
dGVudCwgIiAgICAiIC4gKCRmdW5jdGlvbi0+aXNTdGF0aWMgPyAic3RhdGljICIgOiAiIikgLiAi
SlNDOjpKU1ZhbHVlICIgLiAkZnVuY3Rpb25JbXBsZW1lbnRhdGlvbk5hbWUgLiAiKEpTQzo6RXhl
Y1N0YXRlJik7XG4iKTsKICAgICAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIjZW5kaWZc
biIpIGlmICRjb25kaXRpb25hbFN0cmluZzsKICAgICAgICAgfQpAQCAtMTQ3NywxMiArMTQyOSw5
IEBAIHN1YiBHZW5lcmF0ZUhlYWRlcgogICAgICAgICB9CiAgICAgfQogCi0gICAgIyBJbmRleCBz
ZXR0ZXIKLSAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbUlu
ZGV4ZWRTZXR0ZXIifSkgewotICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIHZvaWQg
aW5kZXhTZXR0ZXIoSlNDOjpFeGVjU3RhdGUqLCB1bnNpZ25lZCBpbmRleCwgSlNDOjpKU1ZhbHVl
KTtcbiIpOwotICAgIH0KLSAgICAjIE5hbWUgZ2V0dGVyCi0gICAgaWYgKCRuYW1lZEdldHRlckZ1
bmN0aW9uIHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21OYW1lZEdl
dHRlciJ9KSB7CisgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICB2b2lkIGluZGV4U2V0dGVy
KEpTQzo6RXhlY1N0YXRlKiwgdW5zaWduZWQgaW5kZXgsIEpTQzo6SlNWYWx1ZSk7XG4iKSBpZiAk
aW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDdXN0b21JbmRleGVkU2V0dGVyfTsKKwor
ICAgIGlmICgkbmFtZWRHZXR0ZXJGdW5jdGlvbiB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJp
YnV0ZXMtPntDdXN0b21OYW1lZEdldHRlcn0pIHsKICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVu
dCwgInByaXZhdGU6XG4iKTsKICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICBib29s
IG5hbWVHZXR0ZXIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OlByb3BlcnR5TmFtZSwgSlNDOjpKU1Zh
bHVlJik7XG4iKTsKICAgICB9CkBAIC0xNTM3LDEwICsxNDg2LDkgQEAgc3ViIEdlbmVyYXRlSGVh
ZGVyCiAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsIi8vIEZ1bmN0aW9uc1xuXG4iKTsKICAg
ICAgICAgZm9yZWFjaCBteSAkZnVuY3Rpb24gKEB7JGludGVyZmFjZS0+ZnVuY3Rpb25zfSkgewog
ICAgICAgICAgICAgbmV4dCBpZiAkZnVuY3Rpb24tPntvdmVybG9hZEluZGV4fSAmJiAkZnVuY3Rp
b24tPntvdmVybG9hZEluZGV4fSA+IDE7Ci0gICAgICAgICAgICBuZXh0IHVubGVzcyAkZnVuY3Rp
b24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkZvcndhcmREZWNsYXJlSW5IZWFk
ZXIifTsKKyAgICAgICAgICAgIG5leHQgdW5sZXNzICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRl
bmRlZEF0dHJpYnV0ZXMtPntGb3J3YXJkRGVjbGFyZUluSGVhZGVyfTsKIAotICAgICAgICAgICAg
bXkgJG5lZWRzQXBwbGVDb3B5cmlnaHQgPSAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57IkFwcGxlQ29weXJpZ2h0In07Ci0gICAgICAgICAgICBpZiAoJG5lZWRzQXBw
bGVDb3B5cmlnaHQpIHsKKyAgICAgICAgICAgIGlmICgkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57QXBwbGVDb3B5cmlnaHR9KSB7CiAgICAgICAgICAgICAgICAgaWYg
KCEkaW5BcHBsZUNvcHlyaWdodCkgewogICAgICAgICAgICAgICAgICAgICBwdXNoKEBoZWFkZXJD
b250ZW50LCAkYmVnaW5BcHBsZUNvcHlyaWdodEZvckhlYWRlckZpbGVzKTsKICAgICAgICAgICAg
ICAgICAgICAgJGluQXBwbGVDb3B5cmlnaHQgPSAxOwpAQCAtMTU2NSw3ICsxNTEzLDcgQEAgc3Vi
IEdlbmVyYXRlSGVhZGVyCiAgICAgaWYgKCRoYXNGb3J3YXJkRGVjbGFyaW5nQXR0cmlidXRlcykg
ewogICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCIvLyBBdHRyaWJ1dGVzXG5cbiIpOwogICAg
ICAgICBmb3JlYWNoIG15ICRhdHRyaWJ1dGUgKEB7JGludGVyZmFjZS0+YXR0cmlidXRlc30pIHsK
LSAgICAgICAgICAgIG5leHQgdW5sZXNzICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57IkZvcndhcmREZWNsYXJlSW5IZWFkZXIifTsKKyAgICAgICAgICAgIG5leHQg
dW5sZXNzICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Rm9yd2Fy
ZERlY2xhcmVJbkhlYWRlcn07CiAKICAgICAgICAgICAgIG15ICRjb25kaXRpb25hbFN0cmluZyA9
ICRjb2RlR2VuZXJhdG9yLT5HZW5lcmF0ZUNvbmRpdGlvbmFsU3RyaW5nKCRhdHRyaWJ1dGUtPnNp
Z25hdHVyZSk7CiAgICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiI2lmICR7Y29uZGl0
aW9uYWxTdHJpbmd9XG4iKSBpZiAkY29uZGl0aW9uYWxTdHJpbmc7CkBAIC0xNTk4LDcgKzE1NDYs
NyBAQCBzdWIgR2VuZXJhdGVIZWFkZXIKICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiXG59IC8v
IG5hbWVzcGFjZSBXZWJDb3JlXG4iKTsKICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiXG4jZW5k
aWYgLy8gJHtjb25kaXRpb25hbFN0cmluZ31cbiIpIGlmICRjb25kaXRpb25hbFN0cmluZzsKIAot
ICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQXBwbGVDb3B5cmlnaHQi
fSkgeworICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntBcHBsZUNvcHly
aWdodH0pIHsKICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIlxuIik7CiAgICAgICAgIHB1
c2goQGhlYWRlckNvbnRlbnQsIHNwbGl0KCJcciIsICRlbmRBcHBsZUNvcHlyaWdodCkpOwogICAg
IH0KQEAgLTE2NDQsNyArMTU5Miw3IEBAIHN1YiBHZW5lcmF0ZVByb3BlcnRpZXNIYXNoVGFibGUK
ICAgICAgICAgbmV4dCBpZiBBdHRyaWJ1dGVTaG91bGRCZU9uSW5zdGFuY2UoJGludGVyZmFjZSwg
JGF0dHJpYnV0ZSkgIT0gJGlzSW5zdGFuY2U7CiAKICAgICAgICAgIyBHbG9iYWwgb2JqZWN0cyBh
ZGQgUnVudGltZUVuYWJsZWQgYXR0cmlidXRlcyBhZnRlciBjcmVhdGlvbiBzbyBkbyBub3QgYWRk
IHRoZW0gdG8gdGhlIHN0YXRpYyB0YWJsZS4KLSAgICAgICAgaWYgKElzRE9NR2xvYmFsT2JqZWN0
KCRpbnRlcmZhY2UpICYmICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVz
LT57IkVuYWJsZWRBdFJ1bnRpbWUifSkgeworICAgICAgICBpZiAoSXNET01HbG9iYWxPYmplY3Qo
JGludGVyZmFjZSkgJiYgJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMt
PntFbmFibGVkQXRSdW50aW1lfSkgewogICAgICAgICAgICAgJHByb3BlcnR5Q291bnQgLT0gMTsK
ICAgICAgICAgICAgIG5leHQ7CiAgICAgICAgIH0KQEAgLTE2NjUsMTcgKzE2MTMsMTIgQEAgc3Vi
IEdlbmVyYXRlUHJvcGVydGllc0hhc2hUYWJsZQogICAgICAgICAgICAgcHVzaChAJGhhc2hWYWx1
ZTIsICRzZXR0ZXIpOwogICAgICAgICB9CiAKLSAgICAgICAgbXkgJGNvbmRpdGlvbmFsID0gJGF0
dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ29uZGl0aW9uYWwifTsK
LSAgICAgICAgaWYgKCRjb25kaXRpb25hbCkgewotICAgICAgICAgICAgJGNvbmRpdGlvbmFscy0+
eyRuYW1lfSA9ICAkY29uZGl0aW9uYWw7Ci0gICAgICAgIH0KKyAgICAgICAgbXkgJGNvbmRpdGlv
bmFsID0gJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDb25kaXRp
b25hbH07CisgICAgICAgICRjb25kaXRpb25hbHMtPnskbmFtZX0gPSAkY29uZGl0aW9uYWwgaWYg
JGNvbmRpdGlvbmFsOwogCi0gICAgICAgIGlmICgkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+eyJFbmFibGVkQXRSdW50aW1lIn0pIHsKLSAgICAgICAgICAgIGlmICgk
aXNJbnN0YW5jZSkgewotICAgICAgICAgICAgICAgIGRpZSAiV2UgY3VycmVudGx5IGRvIG5vdCBz
dXBwb3J0IFtFbmFibGVkQXRSdW50aW1lXSBhdHRyaWJ1dGVzIG9uIHRoZSBpbnN0YW5jZSAoZXhj
ZXB0IGZvciBnbG9iYWwgb2JqZWN0cykuIjsKLSAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAg
ICAgICAgICAgcHVzaChAJHJ1bnRpbWVFbmFibGVkQXR0cmlidXRlcywgJGF0dHJpYnV0ZSk7Ci0g
ICAgICAgICAgICB9CisgICAgICAgIGlmICgkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVk
QXR0cmlidXRlcy0+e0VuYWJsZWRBdFJ1bnRpbWV9KSB7CisgICAgICAgICAgICBkaWUgIldlIGN1
cnJlbnRseSBkbyBub3Qgc3VwcG9ydCBbRW5hYmxlZEF0UnVudGltZV0gYXR0cmlidXRlcyBvbiB0
aGUgaW5zdGFuY2UgKGV4Y2VwdCBmb3IgZ2xvYmFsIG9iamVjdHMpLiIgaWYgJGlzSW5zdGFuY2U7
CisgICAgICAgICAgICBwdXNoKEAkcnVudGltZUVuYWJsZWRBdHRyaWJ1dGVzLCAkYXR0cmlidXRl
KTsKICAgICAgICAgfQogICAgIH0KIApAQCAtMTY4MywxNCArMTYyNiwxNCBAQCBzdWIgR2VuZXJh
dGVQcm9wZXJ0aWVzSGFzaFRhYmxlCiAgICAgcHVzaChAZnVuY3Rpb25zLCBAeyRpbnRlcmZhY2Ut
Pml0ZXJhYmxlLT5mdW5jdGlvbnN9KSBpZiBJc0tleVZhbHVlSXRlcmFibGVJbnRlcmZhY2UoJGlu
dGVyZmFjZSk7CiAgICAgcHVzaChAZnVuY3Rpb25zLCBAeyRpbnRlcmZhY2UtPnNlcmlhbGl6YWJs
ZS0+ZnVuY3Rpb25zfSkgaWYgJGludGVyZmFjZS0+c2VyaWFsaXphYmxlOwogICAgIGZvcmVhY2gg
bXkgJGZ1bmN0aW9uIChAZnVuY3Rpb25zKSB7Ci0gICAgICAgIG5leHQgaWYgKCRmdW5jdGlvbi0+
c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiUHJpdmF0ZUlkZW50aWZpZXIifSBhbmQg
bm90ICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiUHVibGljSWRl
bnRpZmllciJ9KTsKKyAgICAgICAgbmV4dCBpZiAoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+e1ByaXZhdGVJZGVudGlmaWVyfSBhbmQgbm90ICRmdW5jdGlvbi0+c2ln
bmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntQdWJsaWNJZGVudGlmaWVyfSk7CiAgICAgICAg
IG5leHQgaWYgKCRmdW5jdGlvbi0+aXNTdGF0aWMpOwogICAgICAgICBuZXh0IGlmICRmdW5jdGlv
bi0+e292ZXJsb2FkSW5kZXh9ICYmICRmdW5jdGlvbi0+e292ZXJsb2FkSW5kZXh9ID4gMTsKICAg
ICAgICAgbmV4dCBpZiBPcGVyYXRpb25TaG91bGRCZU9uSW5zdGFuY2UoJGludGVyZmFjZSwgJGZ1
bmN0aW9uKSAhPSAkaXNJbnN0YW5jZTsKICAgICAgICAgbmV4dCBpZiAkZnVuY3Rpb24tPnNpZ25h
dHVyZS0+bmFtZSBlcSAiW1N5bWJvbC5JdGVyYXRvcl0iOwogCiAgICAgICAgICMgR2xvYmFsIG9i
amVjdHMgYWRkIFJ1bnRpbWVFbmFibGVkIG9wZXJhdGlvbnMgYWZ0ZXIgY3JlYXRpb24gc28gZG8g
bm90IGFkZCB0aGVtIHRvIHRoZSBzdGF0aWMgdGFibGUuCi0gICAgICAgIGlmIChJc0RPTUdsb2Jh
bE9iamVjdCgkaW50ZXJmYWNlKSAmJiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57IkVuYWJsZWRBdFJ1bnRpbWUifSkgeworICAgICAgICBpZiAoSXNET01HbG9iYWxP
YmplY3QoJGludGVyZmFjZSkgJiYgJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmli
dXRlcy0+e0VuYWJsZWRBdFJ1bnRpbWV9KSB7CiAgICAgICAgICAgICAkcHJvcGVydHlDb3VudCAt
PSAxOwogICAgICAgICAgICAgbmV4dDsKICAgICAgICAgfQpAQCAtMTcwNywxNiArMTY1MCwxMSBA
QCBzdWIgR2VuZXJhdGVQcm9wZXJ0aWVzSGFzaFRhYmxlCiAgICAgICAgIHB1c2goQCRoYXNoU3Bl
Y2lhbHMsIENvbXB1dGVGdW5jdGlvblNwZWNpYWwoJGludGVyZmFjZSwgJGZ1bmN0aW9uKSk7CiAK
ICAgICAgICAgbXkgJGNvbmRpdGlvbmFsID0gZ2V0Q29uZGl0aW9uYWxGb3JGdW5jdGlvbkNvbnNp
ZGVyaW5nT3ZlcmxvYWRzKCRmdW5jdGlvbik7Ci0gICAgICAgIGlmICgkY29uZGl0aW9uYWwpIHsK
LSAgICAgICAgICAgICRjb25kaXRpb25hbHMtPnskbmFtZX0gPSAkY29uZGl0aW9uYWw7Ci0gICAg
ICAgIH0KKyAgICAgICAgJGNvbmRpdGlvbmFscy0+eyRuYW1lfSA9ICRjb25kaXRpb25hbCBpZiAk
Y29uZGl0aW9uYWw7CiAKLSAgICAgICAgaWYgKCRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPnsiRW5hYmxlZEF0UnVudGltZSJ9KSB7Ci0gICAgICAgICAgICBpZiAoJGlz
SW5zdGFuY2UpIHsKLSAgICAgICAgICAgICAgICBkaWUgIldlIGN1cnJlbnRseSBkbyBub3Qgc3Vw
cG9ydCBbRW5hYmxlZEF0UnVudGltZV0gb3BlcmF0aW9ucyBvbiB0aGUgaW5zdGFuY2UgKGV4Y2Vw
dCBmb3IgZ2xvYmFsIG9iamVjdHMpLiI7Ci0gICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAg
ICAgICAgIHB1c2goQCRydW50aW1lRW5hYmxlZEZ1bmN0aW9ucywgJGZ1bmN0aW9uKTsKLSAgICAg
ICAgICAgIH0KKyAgICAgICAgaWYgKCRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJp
YnV0ZXMtPntFbmFibGVkQXRSdW50aW1lfSkgeworICAgICAgICAgICAgZGllICJXZSBjdXJyZW50
bHkgZG8gbm90IHN1cHBvcnQgW0VuYWJsZWRBdFJ1bnRpbWVdIG9wZXJhdGlvbnMgb24gdGhlIGlu
c3RhbmNlIChleGNlcHQgZm9yIGdsb2JhbCBvYmplY3RzKS4iIGlmICRpc0luc3RhbmNlOworICAg
ICAgICAgICAgcHVzaChAJHJ1bnRpbWVFbmFibGVkRnVuY3Rpb25zLCAkZnVuY3Rpb24pOwogICAg
ICAgICB9CiAgICAgfQogCkBAIC0xODY0LDE1ICsxODAyLDEzIEBAIHN1YiBnZXRDb25kaXRpb25h
bEZvckZ1bmN0aW9uQ29uc2lkZXJpbmdPdmVybG9hZHMKIHsKICAgICBteSAkZnVuY3Rpb24gPSBz
aGlmdDsKIAotICAgIHJldHVybiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57IkNvbmRpdGlvbmFsIn0gdW5sZXNzICRmdW5jdGlvbi0+e292ZXJsb2Fkc307CisgICAg
cmV0dXJuICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDb25kaXRp
b25hbH0gdW5sZXNzICRmdW5jdGlvbi0+e292ZXJsb2Fkc307CiAKICAgICBteSAlY29uZGl0aW9u
czsKICAgICBmb3JlYWNoIG15ICRvdmVybG9hZCAoQHskZnVuY3Rpb24tPntvdmVybG9hZHN9fSkg
ewotICAgICAgICBpZiAoJG92ZXJsb2FkLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+
eyJDb25kaXRpb25hbCJ9KSB7Ci0gICAgICAgICAgICAkY29uZGl0aW9uc3skb3ZlcmxvYWQtPnNp
Z25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNvbmRpdGlvbmFsIn19ID0gMTsKLSAgICAg
ICAgfSBlbHNlIHsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgfQorICAgICAgICBteSAk
Y29uZGl0aW9uYWwgPSAkb3ZlcmxvYWQtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
Q29uZGl0aW9uYWx9OworICAgICAgICByZXR1cm4gdW5sZXNzICRjb25kaXRpb25hbDsKKyAgICAg
ICAgJGNvbmRpdGlvbnN7JGNvbmRpdGlvbmFsfSA9IDE7CiAgICAgfQogICAgIHJldHVybiBqb2lu
KCJ8Iiwga2V5cyAlY29uZGl0aW9ucyk7CiB9CkBAIC0yMjAyLDE5ICsyMTM4LDE5IEBAIHN1YiBH
ZXRXaW5NYW5nbGVkTmFtZUZvckludGVyZmFjZQogc3ViIEdldE5hbWVzcGFjZUZvckludGVyZmFj
ZQogewogICAgIG15ICRpbnRlcmZhY2UgPSBzaGlmdDsKLSAgICByZXR1cm4gJGludGVyZmFjZS0+
ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkltcGxlbWVudGF0aW9uTmFtZXNwYWNlIn0gfHwgIldlYkNv
cmUiOworICAgIHJldHVybiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntJbXBsZW1l
bnRhdGlvbk5hbWVzcGFjZX0gfHwgIldlYkNvcmUiOwogfQogCiBzdWIgR2V0SW1wbGVtZW50YXRp
b25MYWNrc1ZUYWJsZUZvckludGVyZmFjZQogewogICAgIG15ICRpbnRlcmZhY2UgPSBzaGlmdDsK
LSAgICByZXR1cm4gJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkltcGxlbWVudGF0
aW9uTGFja3NWVGFibGUifTsKKyAgICByZXR1cm4gJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57SW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZX07CiB9CiAKIHN1YiBHZXRTa2lwVlRhYmxl
VmFsaWRhdGlvbkZvckludGVyZmFjZQogewogICAgIG15ICRpbnRlcmZhY2UgPSBzaGlmdDsKLSAg
ICByZXR1cm4gJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IlNraXBWVGFibGVWYWxp
ZGF0aW9uIn07CisgICAgcmV0dXJuICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e1Nr
aXBWVGFibGVWYWxpZGF0aW9ufTsKIH0KIAogIyBVUkwgYmVjb21lcyB1cmwsIGJ1dCBTZXRVUkwg
YmVjb21lcyBzZXRVUkwuCkBAIC0yMjQ0LDcgKzIxODAsNyBAQCBzdWIgR2V0UnVudGltZUVuYWJs
ZUZ1bmN0aW9uTmFtZQogICAgIG15ICRzaWduYXR1cmUgPSBzaGlmdDsKIAogICAgICMgSWYgYSBw
YXJhbWV0ZXIgaXMgZ2l2ZW4gKGUuZy4gIkVuYWJsZWRBdFJ1bnRpbWU9RmVhdHVyZU5hbWUiKSBy
ZXR1cm4gdGhlIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkue0ZlYXR1
cmVOYW1lfUVuYWJsZWQoKSBtZXRob2QuCi0gICAgcmV0dXJuICJSdW50aW1lRW5hYmxlZEZlYXR1
cmVzOjpzaGFyZWRGZWF0dXJlcygpLiIgLiBUb01ldGhvZE5hbWUoJHNpZ25hdHVyZS0+ZXh0ZW5k
ZWRBdHRyaWJ1dGVzLT57IkVuYWJsZWRBdFJ1bnRpbWUifSkgLiAiRW5hYmxlZCIgaWYgKCRzaWdu
YXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFbmFibGVkQXRSdW50aW1lIn0gJiYgJHNpZ25h
dHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkVuYWJsZWRBdFJ1bnRpbWUifSBuZSAiVkFMVUVf
SVNfTUlTU0lORyIpOworICAgIHJldHVybiAiUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVk
RmVhdHVyZXMoKS4iIC4gVG9NZXRob2ROYW1lKCRzaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRl
cy0+e0VuYWJsZWRBdFJ1bnRpbWV9KSAuICJFbmFibGVkIiBpZiAoJHNpZ25hdHVyZS0+ZXh0ZW5k
ZWRBdHRyaWJ1dGVzLT57RW5hYmxlZEF0UnVudGltZX0gJiYgJHNpZ25hdHVyZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57RW5hYmxlZEF0UnVudGltZX0gbmUgIlZBTFVFX0lTX01JU1NJTkciKTsKIAog
ICAgICMgT3RoZXJ3aXNlIHJldHVybiBhIGZ1bmN0aW9uIG5hbWVkIFJ1bnRpbWVFbmFibGVkRmVh
dHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkue21ldGhvZE5hbWV9RW5hYmxlZCgpLgogICAgIHJldHVy
biAiUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS4iIC4gVG9NZXRob2RO
YW1lKCRzaWduYXR1cmUtPm5hbWUpIC4gIkVuYWJsZWQiOwpAQCAtMjI3OCw3ICsyMjE0LDcgQEAg
c3ViIGFkZFVuc2NvcGFibGVQcm9wZXJ0aWVzCiAKICAgICBteSBAdW5zY29wYWJsZXM7CiAgICAg
Zm9yZWFjaCBteSAkZnVuY3Rpb25PckF0dHJpYnV0ZSAoQHskaW50ZXJmYWNlLT5mdW5jdGlvbnN9
LCBAeyRpbnRlcmZhY2UtPmF0dHJpYnV0ZXN9KSB7Ci0gICAgICAgIHB1c2goQHVuc2NvcGFibGVz
LCAkZnVuY3Rpb25PckF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5uYW1lKSBpZiAkZnVuY3Rpb25PckF0
dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiVW5zY29wYWJsZSJ9Owor
ICAgICAgICBwdXNoKEB1bnNjb3BhYmxlcywgJGZ1bmN0aW9uT3JBdHRyaWJ1dGUtPnNpZ25hdHVy
ZS0+bmFtZSkgaWYgJGZ1bmN0aW9uT3JBdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57VW5zY29wYWJsZX07CiAgICAgfQogICAgIHJldHVybiBpZiBzY2FsYXIoQHVuc2Nv
cGFibGVzKSA9PSAwOwogCkBAIC0yMjk3LDcgKzIyMzMsNyBAQCBzdWIgR2VuZXJhdGVJbXBsZW1l
bnRhdGlvbgogICAgIG15ICRpbnRlcmZhY2VOYW1lID0gJGludGVyZmFjZS0+bmFtZTsKICAgICBt
eSAkY2xhc3NOYW1lID0gIkpTJGludGVyZmFjZU5hbWUiOwogCi0gICAgbXkgJGhhc0xlZ2FjeVBh
cmVudCA9ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0xlZ2FjeVBhcmVudCJ9
OworICAgIG15ICRoYXNMZWdhY3lQYXJlbnQgPSAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPntKU0xlZ2FjeVBhcmVudH07CiAgICAgbXkgJGhhc1JlYWxQYXJlbnQgPSAkaW50ZXJmYWNl
LT5wYXJlbnQ7CiAgICAgbXkgJGhhc1BhcmVudCA9ICRoYXNMZWdhY3lQYXJlbnQgfHwgJGhhc1Jl
YWxQYXJlbnQ7CiAgICAgbXkgJHBhcmVudENsYXNzTmFtZSA9IEdldFBhcmVudENsYXNzTmFtZSgk
aW50ZXJmYWNlKTsKQEAgLTIzNDAsMTEgKzIyNzYsMTAgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50
YXRpb24KICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsIi8vIEZ1bmN0aW9uc1xuXG4iKTsKICAg
ICAgICAgZm9yZWFjaCBteSAkZnVuY3Rpb24gKEBmdW5jdGlvbnMpIHsKICAgICAgICAgICAgIG5l
eHQgaWYgJGZ1bmN0aW9uLT57b3ZlcmxvYWRJbmRleH0gJiYgJGZ1bmN0aW9uLT57b3ZlcmxvYWRJ
bmRleH0gPiAxOwotICAgICAgICAgICAgbmV4dCBpZiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkZvcndhcmREZWNsYXJlSW5IZWFkZXIifTsKKyAgICAgICAgICAg
IG5leHQgaWYgJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0Zvcndh
cmREZWNsYXJlSW5IZWFkZXJ9OwogICAgICAgICAgICAgbmV4dCBpZiBJc0pTQnVpbHRpbigkaW50
ZXJmYWNlLCAkZnVuY3Rpb24pOwogCi0gICAgICAgICAgICBteSAkbmVlZHNBcHBsZUNvcHlyaWdo
dCA9ICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQXBwbGVDb3B5
cmlnaHQifTsKLSAgICAgICAgICAgIGlmICgkbmVlZHNBcHBsZUNvcHlyaWdodCkgeworICAgICAg
ICAgICAgaWYgKCRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntBcHBs
ZUNvcHlyaWdodH0pIHsKICAgICAgICAgICAgICAgICBpZiAoISRpbkFwcGxlQ29weXJpZ2h0KSB7
CiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAkYmVnaW5BcHBsZUNvcHly
aWdodEZvckhlYWRlckZpbGVzKTsKICAgICAgICAgICAgICAgICAgICAgJGluQXBwbGVDb3B5cmln
aHQgPSAxOwpAQCAtMjM3MCw3ICsyMzA1LDcgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24K
ICAgICBpZiAoJG51bUF0dHJpYnV0ZXMgPiAwIHx8IE5lZWRzQ29uc3RydWN0b3JQcm9wZXJ0eSgk
aW50ZXJmYWNlKSkgewogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIi8vIEF0dHJpYnV0ZXNc
blxuIik7CiAgICAgICAgIGZvcmVhY2ggbXkgJGF0dHJpYnV0ZSAoQHskaW50ZXJmYWNlLT5hdHRy
aWJ1dGVzfSkgewotICAgICAgICAgICAgbmV4dCBpZiAkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4
dGVuZGVkQXR0cmlidXRlcy0+eyJGb3J3YXJkRGVjbGFyZUluSGVhZGVyIn07CisgICAgICAgICAg
ICBuZXh0IGlmICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Rm9y
d2FyZERlY2xhcmVJbkhlYWRlcn07CiAgICAgICAgICAgICBuZXh0IGlmIElzSlNCdWlsdGluKCRp
bnRlcmZhY2UsICRhdHRyaWJ1dGUpOwogCiAgICAgICAgICAgICBteSAkY29uZGl0aW9uYWxTdHJp
bmcgPSAkY29kZUdlbmVyYXRvci0+R2VuZXJhdGVDb25kaXRpb25hbFN0cmluZygkYXR0cmlidXRl
LT5zaWduYXR1cmUpOwpAQCAtMjQzOSwxNSArMjM3NCwxMiBAQCBzdWIgR2VuZXJhdGVJbXBsZW1l
bnRhdGlvbgogICAgICAgICAgICAgcHVzaChAaGFzaFZhbHVlMiwgIjAiKTsKICAgICAgICAgICAg
IHB1c2goQGhhc2hTcGVjaWFscywgIkRvbnREZWxldGUgfCBSZWFkT25seSB8IENvbnN0YW50SW50
ZWdlciIpOwogCi0gICAgICAgICAgICBteSAkaW1wbGVtZW50ZWRCeSA9ICRjb25zdGFudC0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkltcGxlbWVudGVkQnkifTsKLSAgICAgICAgICAgIGlmICgkaW1w
bGVtZW50ZWRCeSkgewotICAgICAgICAgICAgICAgICRpbXBsSW5jbHVkZXN7IiR7aW1wbGVtZW50
ZWRCeX0uaCJ9ID0gMTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIG15ICRjb25kaXRpb25h
bCA9ICRjb25zdGFudC0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNvbmRpdGlvbmFsIn07Ci0gICAg
ICAgICAgICBpZiAoJGNvbmRpdGlvbmFsKSB7Ci0gICAgICAgICAgICAgICAgJGNvbmRpdGlvbmFs
c3skbmFtZX0gPSAkY29uZGl0aW9uYWw7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAKKyAg
ICAgICAgICAgIG15ICRpbXBsZW1lbnRlZEJ5ID0gJGNvbnN0YW50LT5leHRlbmRlZEF0dHJpYnV0
ZXMtPntJbXBsZW1lbnRlZEJ5fTsKKyAgICAgICAgICAgICRpbXBsSW5jbHVkZXN7IiR7aW1wbGVt
ZW50ZWRCeX0uaCJ9ID0gMSBpZiAkaW1wbGVtZW50ZWRCeTsKKworICAgICAgICAgICAgbXkgJGNv
bmRpdGlvbmFsID0gJGNvbnN0YW50LT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDb25kaXRpb25hbH07
CisgICAgICAgICAgICAkY29uZGl0aW9uYWxzeyRuYW1lfSA9ICRjb25kaXRpb25hbCBpZiAkY29u
ZGl0aW9uYWw7CisKICAgICAgICAgICAgICRoYXNoU2l6ZSsrOwogICAgICAgICB9CiAKQEAgLTI0
NTcsNyArMjM4OSw3IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICBw
dXNoKEBoYXNoS2V5cywgJG5hbWUpOwogCiAgICAgICAgICAgICBteSBAc3BlY2lhbHMgPSAoKTsK
LSAgICAgICAgICAgIHB1c2goQHNwZWNpYWxzLCAiRG9udERlbGV0ZSIpIHVubGVzcyAkYXR0cmli
dXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJEZWxldGFibGUifTsKKyAgICAg
ICAgICAgIHB1c2goQHNwZWNpYWxzLCAiRG9udERlbGV0ZSIpIHVubGVzcyAkYXR0cmlidXRlLT5z
aWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0RlbGV0YWJsZX07CiAgICAgICAgICAgICBw
dXNoKEBzcGVjaWFscywgIlJlYWRPbmx5IikgaWYgSXNSZWFkb25seSgkYXR0cmlidXRlKTsKICAg
ICAgICAgICAgIG15ICRzcGVjaWFsID0gKEBzcGVjaWFscyA+IDApID8gam9pbigiIHwgIiwgQHNw
ZWNpYWxzKSA6ICIwIjsKICAgICAgICAgICAgIHB1c2goQGhhc2hTcGVjaWFscywgJHNwZWNpYWwp
OwpAQCAtMjQ3MiwxMCArMjQwNCw4IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAg
ICAgICAgICAgICAgcHVzaChAaGFzaFZhbHVlMiwgJHNldHRlcik7CiAgICAgICAgICAgICB9CiAK
LSAgICAgICAgICAgIG15ICRjb25kaXRpb25hbCA9ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkNvbmRpdGlvbmFsIn07Ci0gICAgICAgICAgICBpZiAoJGNvbmRp
dGlvbmFsKSB7Ci0gICAgICAgICAgICAgICAgJGNvbmRpdGlvbmFsc3skbmFtZX0gPSAkY29uZGl0
aW9uYWw7Ci0gICAgICAgICAgICB9CisgICAgICAgICAgICBteSAkY29uZGl0aW9uYWwgPSAkYXR0
cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0NvbmRpdGlvbmFsfTsKKyAg
ICAgICAgICAgICRjb25kaXRpb25hbHN7JG5hbWV9ID0gJGNvbmRpdGlvbmFsIGlmICRjb25kaXRp
b25hbDsKIAogICAgICAgICAgICAgJGhhc2hTaXplKys7CiAgICAgICAgIH0KQEAgLTI0OTQsMTEg
KzI0MjQsOSBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogCiAgICAgICAgICAgICBwdXNo
KEBoYXNoU3BlY2lhbHMsIENvbXB1dGVGdW5jdGlvblNwZWNpYWwoJGludGVyZmFjZSwgJGZ1bmN0
aW9uKSk7CiAKLSAgICAgICAgICAgIG15ICRjb25kaXRpb25hbCA9ICRmdW5jdGlvbi0+c2lnbmF0
dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ29uZGl0aW9uYWwifTsKLSAgICAgICAgICAgIGlm
ICgkY29uZGl0aW9uYWwpIHsKLSAgICAgICAgICAgICAgICAkY29uZGl0aW9uYWxzeyRuYW1lfSA9
ICRjb25kaXRpb25hbDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIAorICAgICAgICAgICAg
bXkgJGNvbmRpdGlvbmFsID0gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRl
cy0+e0NvbmRpdGlvbmFsfTsKKyAgICAgICAgICAgICRjb25kaXRpb25hbHN7JG5hbWV9ID0gJGNv
bmRpdGlvbmFsIGlmICRjb25kaXRpb25hbDsKKwogICAgICAgICAgICAgJGhhc2hTaXplKys7CiAg
ICAgICAgIH0KIApAQCAtMjUxMSw5ICsyNDM5LDkgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRp
b24KIAogICAgICAgICBteSAkcHJvdG9DbGFzc05hbWUgPSAiJHtjbGFzc05hbWV9UHJvdG90eXBl
IjsKICAgICAgICAgR2VuZXJhdGVDb25zdHJ1Y3RvckRlZmluaXRpb25zKFxAaW1wbENvbnRlbnQs
ICRjbGFzc05hbWUsICRwcm90b0NsYXNzTmFtZSwgJHZpc2libGVJbnRlcmZhY2VOYW1lLCAkaW50
ZXJmYWNlKTsKLSAgICAgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJO
YW1lZENvbnN0cnVjdG9yIn0pIHsKLSAgICAgICAgICAgIEdlbmVyYXRlQ29uc3RydWN0b3JEZWZp
bml0aW9ucyhcQGltcGxDb250ZW50LCAkY2xhc3NOYW1lLCAkcHJvdG9DbGFzc05hbWUsICRpbnRl
cmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOYW1lZENvbnN0cnVjdG9yIn0sICRpbnRlcmZh
Y2UsICJHZW5lcmF0aW5nTmFtZWRDb25zdHJ1Y3RvciIpOwotICAgICAgICB9CisKKyAgICAgICAg
bXkgJG5hbWVkQ29uc3RydWN0b3IgPSAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntO
YW1lZENvbnN0cnVjdG9yfTsKKyAgICAgICAgR2VuZXJhdGVDb25zdHJ1Y3RvckRlZmluaXRpb25z
KFxAaW1wbENvbnRlbnQsICRjbGFzc05hbWUsICRwcm90b0NsYXNzTmFtZSwgJG5hbWVkQ29uc3Ry
dWN0b3IsICRpbnRlcmZhY2UsICJHZW5lcmF0aW5nTmFtZWRDb25zdHJ1Y3RvciIpIGlmICRuYW1l
ZENvbnN0cnVjdG9yOwogICAgIH0KIAogICAgICMgLSBBZGQgZnVuY3Rpb25zIGFuZCBjb25zdGFu
dHMgdG8gYSBoYXNodGFibGUgZGVmaW5pdGlvbgpAQCAtMjU0MywxMSArMjQ3MSw5IEBAIHN1YiBH
ZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgICAgIHB1c2goQGhhc2hWYWx1ZTIsICIwIik7CiAg
ICAgICAgIHB1c2goQGhhc2hTcGVjaWFscywgIkRvbnREZWxldGUgfCBSZWFkT25seSB8IENvbnN0
YW50SW50ZWdlciIpOwogCi0gICAgICAgIG15ICRjb25kaXRpb25hbCA9ICRjb25zdGFudC0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkNvbmRpdGlvbmFsIn07Ci0gICAgICAgIGlmICgkY29uZGl0aW9u
YWwpIHsKLSAgICAgICAgICAgICRjb25kaXRpb25hbHN7JG5hbWV9ID0gJGNvbmRpdGlvbmFsOwot
ICAgICAgICB9Ci0gICAgICAgIAorICAgICAgICBteSAkY29uZGl0aW9uYWwgPSAkY29uc3RhbnQt
PmV4dGVuZGVkQXR0cmlidXRlcy0+e0NvbmRpdGlvbmFsfTsKKyAgICAgICAgJGNvbmRpdGlvbmFs
c3skbmFtZX0gPSAkY29uZGl0aW9uYWwgaWYgJGNvbmRpdGlvbmFsOworCiAgICAgICAgICRoYXNo
U2l6ZSsrOwogICAgIH0KIApAQCAtMjU4OSw3ICsyNTE1LDcgQEAgc3ViIEdlbmVyYXRlSW1wbGVt
ZW50YXRpb24KIAogICAgICAgICBteSAkZmlyc3RQcml2YXRlRnVuY3Rpb24gPSAxOwogICAgICAg
ICBmb3JlYWNoIG15ICRmdW5jdGlvbiAoQHskaW50ZXJmYWNlLT5mdW5jdGlvbnN9KSB7Ci0gICAg
ICAgICAgICBuZXh0IHVubGVzcyAoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmli
dXRlcy0+eyJQcml2YXRlSWRlbnRpZmllciJ9KTsKKyAgICAgICAgICAgIG5leHQgdW5sZXNzICgk
ZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57UHJpdmF0ZUlkZW50aWZp
ZXJ9KTsKICAgICAgICAgICAgIEFkZFRvSW1wbEluY2x1ZGVzKCJXZWJDb3JlSlNDbGllbnREYXRh
LmgiKTsKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIEpTVk1DbGllbnREYXRh
JiBjbGllbnREYXRhID0gKnN0YXRpY19jYXN0PEpTVk1DbGllbnREYXRhKj4odm0uY2xpZW50RGF0
YSk7XG4iKSBpZiAkZmlyc3RQcml2YXRlRnVuY3Rpb247CiAgICAgICAgICAgICAkZmlyc3RQcml2
YXRlRnVuY3Rpb24gPSAwOwpAQCAtMjYwNSw3ICsyNTMxLDcgQEAgc3ViIEdlbmVyYXRlSW1wbGVt
ZW50YXRpb24KICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ9XG5cbiIpOwogICAgIH0KIAot
ICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNDdXN0b21OYW1lZEdl
dHRlck9uUHJvdG90eXBlIn0pIHsKKyAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57SlNDdXN0b21OYW1lZEdldHRlck9uUHJvdG90eXBlfSkgewogICAgICAgICBwdXNoKEBp
bXBsQ29udGVudCwgImJvb2wgJHtjbGFzc05hbWV9UHJvdG90eXBlOjpwdXQoSlNDZWxsKiBjZWxs
LCBFeGVjU3RhdGUqIHN0YXRlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lLCBKU1ZhbHVlIHZh
bHVlLCBQdXRQcm9wZXJ0eVNsb3QmIHNsb3QpXG4iKTsKICAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICJ7XG4iKTsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXV0byogdGhpc09i
amVjdCA9IGpzQ2FzdDwke2NsYXNzTmFtZX1Qcm90b3R5cGUqPihjZWxsKTtcbiIpOwpAQCAtMjY2
Niw3ICsyNTkyLDcgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICAgICAgfQogICAg
ICAgICAjIFN1cHBvcnQgZm9yIFJ1bnRpbWVFbmFibGVkIGF0dHJpYnV0ZXMgb24gZ2xvYmFsIG9i
amVjdHMuCiAgICAgICAgIGZvcmVhY2ggbXkgJGF0dHJpYnV0ZSAoQHskaW50ZXJmYWNlLT5hdHRy
aWJ1dGVzfSkgewotICAgICAgICAgICAgbmV4dCB1bmxlc3MgJGF0dHJpYnV0ZS0+c2lnbmF0dXJl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRW5hYmxlZEF0UnVudGltZSJ9OworICAgICAgICAgICAg
bmV4dCB1bmxlc3MgJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntF
bmFibGVkQXRSdW50aW1lfTsKIAogICAgICAgICAgICAgQWRkVG9JbXBsSW5jbHVkZXMoIlJ1bnRp
bWVFbmFibGVkRmVhdHVyZXMuaCIpOwogICAgICAgICAgICAgbXkgJGNvbmRpdGlvbmFsU3RyaW5n
ID0gJGNvZGVHZW5lcmF0b3ItPkdlbmVyYXRlQ29uZGl0aW9uYWxTdHJpbmcoJGF0dHJpYnV0ZS0+
c2lnbmF0dXJlKTsKQEAgLTI2ODUsNyArMjYxMSw3IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0
aW9uCiAKICAgICAgICAgIyBTdXBwb3J0IFByaXZhdGVJZGVudGlmaWVyIGF0dHJpYnV0ZXMgb24g
Z2xvYmFsIG9iamVjdHMKICAgICAgICAgZm9yZWFjaCBteSAkYXR0cmlidXRlIChAeyRpbnRlcmZh
Y2UtPmF0dHJpYnV0ZXN9KSB7Ci0gICAgICAgICAgICBuZXh0IHVubGVzcyAkYXR0cmlidXRlLT5z
aWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJQcml2YXRlSWRlbnRpZmllciJ9OworICAg
ICAgICAgICAgbmV4dCB1bmxlc3MgJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJp
YnV0ZXMtPntQcml2YXRlSWRlbnRpZmllcn07CiAKICAgICAgICAgICAgIEFkZFRvSW1wbEluY2x1
ZGVzKCJXZWJDb3JlSlNDbGllbnREYXRhLmgiKTsKICAgICAgICAgICAgIG15ICRjb25kaXRpb25h
bFN0cmluZyA9ICRjb2RlR2VuZXJhdG9yLT5HZW5lcmF0ZUNvbmRpdGlvbmFsU3RyaW5nKCRhdHRy
aWJ1dGUtPnNpZ25hdHVyZSk7CkBAIC0yNjk5LDcgKzI2MjUsNyBAQCBzdWIgR2VuZXJhdGVJbXBs
ZW1lbnRhdGlvbgogCiAgICAgICAgICMgU3VwcG9ydCBmb3IgUnVudGltZUVuYWJsZWQgb3BlcmF0
aW9ucyBvbiBnbG9iYWwgb2JqZWN0cy4KICAgICAgICAgZm9yZWFjaCBteSAkZnVuY3Rpb24gKEB7
JGludGVyZmFjZS0+ZnVuY3Rpb25zfSkgewotICAgICAgICAgICAgbmV4dCB1bmxlc3MgJGZ1bmN0
aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFbmFibGVkQXRSdW50aW1lIn07
CisgICAgICAgICAgICBuZXh0IHVubGVzcyAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57RW5hYmxlZEF0UnVudGltZX07CiAgICAgICAgICAgICBuZXh0IGlmICRmdW5j
dGlvbi0+e292ZXJsb2FkSW5kZXh9ICYmICRmdW5jdGlvbi0+e292ZXJsb2FkSW5kZXh9ID4gMTsK
IAogICAgICAgICAgICAgQWRkVG9JbXBsSW5jbHVkZXMoIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMu
aCIpOwpAQCAtMjcxMyw5ICsyNjM5LDcgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAg
ICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGlmICgke2VuYWJsZV9mdW5jdGlvbn0o
KSlcbiIpOwogCiAgICAgICAgICAgICBteSAkcHJvcGVydHlOYW1lID0gInZtLnByb3BlcnR5TmFt
ZXMtPiRmdW5jdGlvbk5hbWUiOwotICAgICAgICAgICAgaWYgKCRmdW5jdGlvbi0+c2lnbmF0dXJl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiUHJpdmF0ZUlkZW50aWZpZXIifSkgewotICAgICAgICAg
ICAgICAgICRwcm9wZXJ0eU5hbWUgPSAic3RhdGljX2Nhc3Q8SlNWTUNsaWVudERhdGEqPih2bS5j
bGllbnREYXRhKS0+YnVpbHRpbk5hbWVzKCkuIiAuICRmdW5jdGlvbk5hbWUgLiAiUHJpdmF0ZU5h
bWUoKSI7Ci0gICAgICAgICAgICB9CisgICAgICAgICAgICAkcHJvcGVydHlOYW1lID0gInN0YXRp
Y19jYXN0PEpTVk1DbGllbnREYXRhKj4odm0uY2xpZW50RGF0YSktPmJ1aWx0aW5OYW1lcygpLiIg
LiAkZnVuY3Rpb25OYW1lIC4gIlByaXZhdGVOYW1lKCkiIGlmICRmdW5jdGlvbi0+c2lnbmF0dXJl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPntQcml2YXRlSWRlbnRpZmllcn07CiAgICAgICAgICAgICBp
ZiAoSXNKU0J1aWx0aW4oJGludGVyZmFjZSwgJGZ1bmN0aW9uKSkgewogICAgICAgICAgICAgICAg
IHB1c2goQGltcGxDb250ZW50LCAiICAgICAgICBwdXREaXJlY3RCdWlsdGluRnVuY3Rpb24odm0s
IHRoaXMsICRwcm9wZXJ0eU5hbWUsICRpbXBsZW1lbnRhdGlvbkZ1bmN0aW9uKHZtKSwgYXR0cmli
dXRlc0ZvclN0cnVjdHVyZSgkanNBdHRyaWJ1dGVzKSk7XG4iKTsKICAgICAgICAgICAgIH0gZWxz
ZSB7CkBAIC0yNzU2LDcgKzI2ODAsNyBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogCiAg
ICAgIyBBdHRyaWJ1dGVzCiAgICAgaWYgKCRoYXNHZXR0ZXIpIHsKLSAgICAgICAgaWYgKCEkaW50
ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tR2V0T3duUHJvcGVydHlTbG90In0p
IHsKKyAgICAgICAgaWYgKCEkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDdXN0b21H
ZXRPd25Qcm9wZXJ0eVNsb3R9KSB7CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgImJv
b2wgJHtjbGFzc05hbWV9OjpnZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3QqIG9iamVjdCwgRXhl
Y1N0YXRlKiBzdGF0ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlTbG90JiBz
bG90KVxuIik7CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIntcbiIpOwogICAgICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXV0byogdGhpc09iamVjdCA9IGpzQ2FzdDwk
e2NsYXNzTmFtZX0qPihvYmplY3QpO1xuIik7CkBAIC0yNzY2LDggKzI2OTAsOCBAQCBzdWIgR2Vu
ZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgICAgICB9CiAKICAgICAgICAgaWYgKCRpbmRleGVkR2V0
dGVyRnVuY3Rpb24gfHwgJG5hbWVkR2V0dGVyRnVuY3Rpb24KLSAgICAgICAgICAgICAgICB8fCAk
aW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tTmFtZWRHZXR0ZXIifQotICAg
ICAgICAgICAgICAgIHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0N1c3Rv
bUdldE93blByb3BlcnR5U2xvdEFuZERlc2NyaXB0b3IifSkgeworICAgICAgICAgICAgICAgIHx8
ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0N1c3RvbU5hbWVkR2V0dGVyfQorICAg
ICAgICAgICAgICAgIHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0pTQ3VzdG9t
R2V0T3duUHJvcGVydHlTbG90QW5kRGVzY3JpcHRvcn0pIHsKICAgICAgICAgICAgIHB1c2goQGlt
cGxDb250ZW50LCAiYm9vbCAke2NsYXNzTmFtZX06OmdldE93blByb3BlcnR5U2xvdEJ5SW5kZXgo
SlNPYmplY3QqIG9iamVjdCwgRXhlY1N0YXRlKiBzdGF0ZSwgdW5zaWduZWQgaW5kZXgsIFByb3Bl
cnR5U2xvdCYgc2xvdClcbiIpOwogICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ7XG4i
KTsKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGF1dG8qIHRoaXNPYmplY3Qg
PSBqc0Nhc3Q8JHtjbGFzc05hbWV9Kj4ob2JqZWN0KTtcbiIpOwpAQCAtMjc5MSw3ICsyNzE1LDcg
QEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICAgICAgICAgICAgICAgICAgcHVzaChA
aW1wbENvbnRlbnQsICIgICAgaWYgKExJS0VMWShpbmRleCA8IHRoaXNPYmplY3QtPndyYXBwZWQo
KS5sZW5ndGgoKSkpIHtcbiIpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAj
IEFzc3VtZSB0aGF0IGlmIHRoZXJlJ3MgYSBzZXR0ZXIsIHRoZSBpbmRleCB3aWxsIGJlIHdyaXRh
YmxlCi0gICAgICAgICAgICAgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+
eyJDdXN0b21JbmRleGVkU2V0dGVyIn0pIHsKKyAgICAgICAgICAgICAgICBpZiAoJGludGVyZmFj
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Q3VzdG9tSW5kZXhlZFNldHRlcn0pIHsKICAgICAgICAg
ICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIHVuc2lnbmVkIGF0dHJpYnV0
ZXMgPSBEb250RGVsZXRlO1xuIik7CiAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAg
ICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIHVuc2lnbmVkIGF0dHJpYnV0
ZXMgPSBEb250RGVsZXRlIHwgUmVhZE9ubHk7XG4iKTsKQEAgLTI4MDMsNyArMjcyNyw3IEBAIHN1
YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAKICAgICAgICAgICAgICMgSW5kZXhpbmcgYW4gb2Jq
ZWN0IHdpdGggYW4gaW50ZWdlciB0aGF0IGlzIG5vdCBhIHN1cHBvcnRlZCBwcm9wZXJ0eSBpbmRl
eCBzaG91bGQgbm90IGNhbGwgdGhlIG5hbWVkIHByb3BlcnR5IGdldHRlci4KICAgICAgICAgICAg
ICMgaHR0cHM6Ly9oZXljYW0uZ2l0aHViLmlvL3dlYmlkbC8jaWRsLWluZGV4ZWQtcHJvcGVydGll
cwotICAgICAgICAgICAgaWYgKCEkaW5kZXhlZEdldHRlckZ1bmN0aW9uICYmICgkbmFtZWRHZXR0
ZXJGdW5jdGlvbiB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tTmFt
ZWRHZXR0ZXIifSkpIHsKKyAgICAgICAgICAgIGlmICghJGluZGV4ZWRHZXR0ZXJGdW5jdGlvbiAm
JiAoJG5hbWVkR2V0dGVyRnVuY3Rpb24gfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVz
LT57Q3VzdG9tTmFtZWRHZXR0ZXJ9KSkgewogICAgICAgICAgICAgICAgICYkcHJvcGVydHlOYW1l
R2VuZXJhdGlvbigpOwogCiAgICAgICAgICAgICAgICAgIyBUaGlzIGNvbmRpdGlvbiBpcyB0byBt
YWtlIHN1cmUgd2UgdXNlIHRoZSBzdWJjbGFzcycgbmFtZWQgZ2V0dGVyIGluc3RlYWQgb2YgdGhl
IGJhc2UgY2xhc3Mgb25lIHdoZW4gcG9zc2libGUuCkBAIC0yODE3LDcgKzI3NDEsNyBAQCBzdWIg
R2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgICAgICAgICAgICAgICRpbXBsSW5jbHVkZXN7Ind0
Zi90ZXh0L0F0b21pY1N0cmluZy5oIn0gPSAxOwogICAgICAgICAgICAgfQogCi0gICAgICAgICAg
ICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQ3VzdG9tR2V0T3duUHJv
cGVydHlTbG90QW5kRGVzY3JpcHRvciJ9KSB7CisgICAgICAgICAgICBpZiAoJGludGVyZmFjZS0+
ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57SlNDdXN0b21HZXRPd25Qcm9wZXJ0eVNsb3RBbmREZXNjcmlw
dG9yfSkgewogICAgICAgICAgICAgICAgICYkcHJvcGVydHlOYW1lR2VuZXJhdGlvbigpOwogICAg
ICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGlmICh0aGlzT2JqZWN0LT5nZXRP
d25Qcm9wZXJ0eVNsb3REZWxlZ2F0ZShzdGF0ZSwgcHJvcGVydHlOYW1lLCBzbG90KSlcbiIpOwog
ICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICAgICByZXR1cm4gdHJ1ZTtc
biIpOwpAQCAtMjgzNiwxMyArMjc2MCwxMSBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgog
ICAgICAgICAgICAgbXkgJG5hbWUgPSAkYXR0cmlidXRlLT5zaWduYXR1cmUtPm5hbWU7CiAgICAg
ICAgICAgICBteSAkdHlwZSA9ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+dHlwZTsKICAgICAgICAg
ICAgIG15ICRnZXRGdW5jdGlvbk5hbWUgPSBHZXRBdHRyaWJ1dGVHZXR0ZXJOYW1lKCRpbnRlcmZh
Y2UsICRjbGFzc05hbWUsICRhdHRyaWJ1dGUpOwotICAgICAgICAgICAgbXkgJGltcGxHZXR0ZXJG
dW5jdGlvbk5hbWUgPSAkY29kZUdlbmVyYXRvci0+V0tfbGNmaXJzdCgkYXR0cmlidXRlLT5zaWdu
YXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbXBsZW1lbnRlZEFzIn0gfHwgJG5hbWUpOwot
ICAgICAgICAgICAgbXkgJGdldHRlckV4Y2VwdGlvbnNXaXRoTWVzc2FnZSA9ICRhdHRyaWJ1dGUt
PnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkdldHRlclJhaXNlc0V4Y2VwdGlvbldp
dGhNZXNzYWdlIn07Ci0gICAgICAgICAgICBteSAkZ2V0dGVyRXhjZXB0aW9ucyA9ICRhdHRyaWJ1
dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkdldHRlclJhaXNlc0V4Y2VwdGlv
biJ9IHx8ICRnZXR0ZXJFeGNlcHRpb25zV2l0aE1lc3NhZ2U7CisgICAgICAgICAgICBteSAkaW1w
bEdldHRlckZ1bmN0aW9uTmFtZSA9ICRjb2RlR2VuZXJhdG9yLT5XS19sY2ZpcnN0KCRhdHRyaWJ1
dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57SW1wbGVtZW50ZWRBc30gfHwgJG5h
bWUpOworICAgICAgICAgICAgbXkgJGdldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uV2l0aE1l
c3NhZ2UgPSAkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0dldHRl
ck1heVRocm93TGVnYWN5RXhjZXB0aW9uV2l0aE1lc3NhZ2V9OworICAgICAgICAgICAgbXkgJGdl
dHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uID0gJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRl
bmRlZEF0dHJpYnV0ZXMtPntHZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbn0gfHwgJGdldHRl
ck1heVRocm93TGVnYWN5RXhjZXB0aW9uV2l0aE1lc3NhZ2U7CiAKLSAgICAgICAgICAgIGlmICgk
Z2V0dGVyRXhjZXB0aW9ucykgewotICAgICAgICAgICAgICAgICRpbXBsSW5jbHVkZXN7IkV4Y2Vw
dGlvbkNvZGUuaCJ9ID0gMTsKLSAgICAgICAgICAgIH0KKyAgICAgICAgICAgICRpbXBsSW5jbHVk
ZXN7IkV4Y2VwdGlvbkNvZGUuaCJ9ID0gMSBpZiAkZ2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRp
b247CiAKICAgICAgICAgICAgIG15ICRhdHRyaWJ1dGVDb25kaXRpb25hbFN0cmluZyA9ICRjb2Rl
R2VuZXJhdG9yLT5HZW5lcmF0ZUNvbmRpdGlvbmFsU3RyaW5nKCRhdHRyaWJ1dGUtPnNpZ25hdHVy
ZSk7CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiNpZiAke2F0dHJpYnV0ZUNvbmRp
dGlvbmFsU3RyaW5nfVxuIikgaWYgJGF0dHJpYnV0ZUNvbmRpdGlvbmFsU3RyaW5nOwpAQCAtMjg1
NywxNSArMjc3OSwxNSBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogCiAgICAgICAgICAg
ICBpZiAoISRhdHRyaWJ1dGUtPmlzU3RhdGljIHx8ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+dHlw
ZSA9fiAvQ29uc3RydWN0b3IkLykgewogICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50
LCAiICAgIEpTVmFsdWUgZGVjb2RlZFRoaXNWYWx1ZSA9IEpTVmFsdWU6OmRlY29kZSh0aGlzVmFs
dWUpO1xuIik7Ci0gICAgICAgICAgICAgICAgbXkgJGNhc3RpbmdGdW5jdGlvbiA9ICRpbnRlcmZh
Y2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21Qcm94eVRvSlNPYmplY3QifSA/ICJ0byR7
Y2xhc3NOYW1lfSIgOiBHZXRDYXN0aW5nSGVscGVyRm9yVGhpc09iamVjdCgkaW50ZXJmYWNlKTsK
KyAgICAgICAgICAgICAgICBteSAkY2FzdGluZ0Z1bmN0aW9uID0gJGludGVyZmFjZS0+ZXh0ZW5k
ZWRBdHRyaWJ1dGVzLT57Q3VzdG9tUHJveHlUb0pTT2JqZWN0fSA/ICJ0byR7Y2xhc3NOYW1lfSIg
OiBHZXRDYXN0aW5nSGVscGVyRm9yVGhpc09iamVjdCgkaW50ZXJmYWNlKTsKICAgICAgICAgICAg
ICAgICAjIGh0dHA6Ly9oZXljYW0uZ2l0aHViLmlvL3dlYmlkbC8jSW1wbGljaXRUaGlzCi0gICAg
ICAgICAgICAgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbXBsaWNp
dFRoaXMifSkgeworICAgICAgICAgICAgICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJp
YnV0ZXMtPntJbXBsaWNpdFRoaXN9KSB7CiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxD
b250ZW50LCAiICAgIGF1dG8qIGNhc3RlZFRoaXMgPSBkZWNvZGVkVGhpc1ZhbHVlLmlzVW5kZWZp
bmVkT3JOdWxsKCkgPyAkY2FzdGluZ0Z1bmN0aW9uKHN0YXRlLT50aGlzVmFsdWUoKS50b1RoaXMo
c3RhdGUsIE5vdFN0cmljdE1vZGUpKSA6ICRjYXN0aW5nRnVuY3Rpb24oZGVjb2RlZFRoaXNWYWx1
ZSk7XG4iKTsKICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICBw
dXNoKEBpbXBsQ29udGVudCwgIiAgICBhdXRvKiBjYXN0ZWRUaGlzID0gJGNhc3RpbmdGdW5jdGlv
bihkZWNvZGVkVGhpc1ZhbHVlKTtcbiIpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg
ICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBpZiAoVU5MSUtFTFkoIWNhc3RlZFRoaXMpKSB7
XG4iKTsKLSAgICAgICAgICAgICAgICBpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPnsiTGVuaWVudFRoaXMifSkgeworICAgICAgICAgICAgICAgIGlmICgkYXR0
cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0xlbmllbnRUaGlzfSkgewog
ICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgcmV0dXJuIEpT
VmFsdWU6OmVuY29kZShqc1VuZGVmaW5lZCgpKTtcbiIpOwogICAgICAgICAgICAgICAgIH0gZWxz
ZSB7CiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICAgICByZXR1
cm4gdGhyb3dHZXR0ZXJUeXBlRXJyb3IoKnN0YXRlLCB0aHJvd1Njb3BlLCBcIiR2aXNpYmxlSW50
ZXJmYWNlTmFtZVwiLCBcIiRuYW1lXCIpO1xuIik7CkBAIC0yODc0LDkgKzI3OTYsOSBAQCBzdWIg
R2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBteSBA
YXJndW1lbnRzID0gKCk7Ci0gICAgICAgICAgICBpZiAoJGdldHRlckV4Y2VwdGlvbnMgJiYgIUhh
c0N1c3RvbUdldHRlcigkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcykp
IHsKKyAgICAgICAgICAgIGlmICgkZ2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb24gJiYgIUhh
c0N1c3RvbUdldHRlcigkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcykp
IHsKICAgICAgICAgICAgICAgICBwdXNoKEBhcmd1bWVudHMsICJlYyIpOwotICAgICAgICAgICAg
ICAgIGlmICgkZ2V0dGVyRXhjZXB0aW9uc1dpdGhNZXNzYWdlKSB7CisgICAgICAgICAgICAgICAg
aWYgKCRnZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbldpdGhNZXNzYWdlKSB7CiAgICAgICAg
ICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIEV4Y2VwdGlvbkNvZGVXaXRoTWVz
c2FnZSBlYztcbiIpOwogICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAg
ICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwO1xuIik7CkBA
IC0yODg1LDEwICsyODA3LDEwIEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAKICAgICAg
ICAgICAgICMgR2xvYmFsIGNvbnN0cnVjdG9ycyBjYW4gYmUgZGlzYWJsZWQgYXQgcnVudGltZS4K
ICAgICAgICAgICAgIGlmICgkYXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGUgPX4gL0NvbnN0cnVj
dG9yJC8pIHsKLSAgICAgICAgICAgICAgICBpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRl
bmRlZEF0dHJpYnV0ZXMtPnsiRW5hYmxlZEJ5U2V0dGluZyJ9KSB7CisgICAgICAgICAgICAgICAg
aWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57RW5hYmxlZEJ5
U2V0dGluZ30pIHsKICAgICAgICAgICAgICAgICAgICAgQWRkVG9JbXBsSW5jbHVkZXMoIkZyYW1l
LmgiKTsKICAgICAgICAgICAgICAgICAgICAgQWRkVG9JbXBsSW5jbHVkZXMoIlNldHRpbmdzLmgi
KTsKLSAgICAgICAgICAgICAgICAgICAgbXkgJGVuYWJsZV9mdW5jdGlvbiA9IFRvTWV0aG9kTmFt
ZSgkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFbmFibGVkQnlT
ZXR0aW5nIn0pIC4gIkVuYWJsZWQiOworICAgICAgICAgICAgICAgICAgICBteSAkZW5hYmxlX2Z1
bmN0aW9uID0gVG9NZXRob2ROYW1lKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57RW5hYmxlZEJ5U2V0dGluZ30pIC4gIkVuYWJsZWQiOwogICAgICAgICAgICAgICAg
ICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBpZiAoVU5MSUtFTFkoIWNhc3RlZFRoaXMtPndy
YXBwZWQoKS5mcmFtZSgpKSlcbiIpOwogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29u
dGVudCwgIiAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1VuZGVmaW5lZCgpKTtcbiIp
OwogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBTZXR0aW5ncyYg
c2V0dGluZ3MgPSBjYXN0ZWRUaGlzLT53cmFwcGVkKCkuZnJhbWUoKS0+c2V0dGluZ3MoKTtcbiIp
OwpAQCAtMjg5NywxMyArMjgxOSwxMSBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAg
ICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgaWYgKCRhdHRyaWJ1
dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNhY2hlZEF0dHJpYnV0ZSJ9KSB7
Ci0gICAgICAgICAgICAgICAgJG5lZWRzVmlzaXRDaGlsZHJlbiA9IDE7Ci0gICAgICAgICAgICB9
CisgICAgICAgICAgICAkbmVlZHNWaXNpdENoaWxkcmVuID0gMSBpZiAkYXR0cmlidXRlLT5zaWdu
YXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0NhY2hlZEF0dHJpYnV0ZX07CiAKLSAgICAgICAg
ICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ2hlY2tTZWN1cml0eSJ9
ICYmCi0gICAgICAgICAgICAgICAgISRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57IkRvTm90Q2hlY2tTZWN1cml0eSJ9ICYmCi0gICAgICAgICAgICAgICAgISRhdHRy
aWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkRvTm90Q2hlY2tTZWN1cml0
eU9uR2V0dGVyIn0pIHsKKyAgICAgICAgICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJp
YnV0ZXMtPntDaGVja1NlY3VyaXR5fSAmJgorICAgICAgICAgICAgICAgICEkYXR0cmlidXRlLT5z
aWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0RvTm90Q2hlY2tTZWN1cml0eX0gJiYKKyAg
ICAgICAgICAgICAgICAhJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMt
PntEb05vdENoZWNrU2VjdXJpdHlPbkdldHRlcn0pIHsKICAgICAgICAgICAgICAgICBpZiAoJGlu
dGVyZmFjZU5hbWUgZXEgIkRPTVdpbmRvdyIpIHsKICAgICAgICAgICAgICAgICAgICAgcHVzaChA
aW1wbENvbnRlbnQsICIgICAgaWYgKCFCaW5kaW5nU2VjdXJpdHk6OnNob3VsZEFsbG93QWNjZXNz
VG9ET01XaW5kb3coc3RhdGUsIGNhc3RlZFRoaXMtPndyYXBwZWQoKSwgVGhyb3dTZWN1cml0eUVy
cm9yKSlcbiIpOwogICAgICAgICAgICAgICAgIH0gZWxzZSB7CkBAIC0yOTEyLDcgKzI4MzIsNyBA
QCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgICAgICAgICAgICAgIHB1c2goQGltcGxD
b250ZW50LCAiICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzVW5kZWZpbmVkKCkpO1xu
Iik7CiAgICAgICAgICAgICB9CiAKLSAgICAgICAgICAgIGlmICgkYXR0cmlidXRlLT5zaWduYXR1
cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOb25kZXRlcm1pbmlzdGljIn0pIHsKKyAgICAgICAg
ICAgIGlmICgkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e05vbmRl
dGVybWluaXN0aWN9KSB7CiAgICAgICAgICAgICAgICAgQWRkVG9JbXBsSW5jbHVkZXMoIk1lbW9p
emVkRE9NUmVzdWx0LmgiLCAiV0VCX1JFUExBWSIpOwogICAgICAgICAgICAgICAgIEFkZFRvSW1w
bEluY2x1ZGVzKCI8cmVwbGF5L0lucHV0Q3Vyc29yLmg+IiwgIldFQl9SRVBMQVkiKTsKICAgICAg
ICAgICAgICAgICBBZGRUb0ltcGxJbmNsdWRlcygiPHd0Zi9OZXZlckRlc3Ryb3llZC5oPiIsICJX
RUJfUkVQTEFZIik7CkBAIC0yOTIzLDEzICsyODQzLDEzIEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVu
dGF0aW9uCiAKICAgICAgICAgICAgICAgICBteSAkbmF0aXZlVHlwZSA9IEdldE5hdGl2ZVR5cGUo
JGludGVyZmFjZSwgJHR5cGUpOwogICAgICAgICAgICAgICAgIG15ICRtZW1vaXplZFR5cGUgPSBH
ZXROYXRpdmVUeXBlRm9yTWVtb2l6YXRpb24oJGludGVyZmFjZSwgJHR5cGUpOwotICAgICAgICAg
ICAgICAgIG15ICRleGNlcHRpb25Db2RlID0gJGdldHRlckV4Y2VwdGlvbnNXaXRoTWVzc2FnZSA/
ICJlYy5jb2RlIiA6ICgkZ2V0dGVyRXhjZXB0aW9ucyA/ICJlYyIgOiAiMCIpOworICAgICAgICAg
ICAgICAgIG15ICRleGNlcHRpb25Db2RlID0gJGdldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9u
V2l0aE1lc3NhZ2UgPyAiZWMuY29kZSIgOiAoJGdldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9u
ID8gImVjIiA6ICIwIik7CiAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAg
c3RhdGljIE5ldmVyRGVzdHJveWVkPGNvbnN0IEF0b21pY1N0cmluZz4gYmluZGluZ05hbWUoXCIk
aW50ZXJmYWNlTmFtZS4kbmFtZVwiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFs
KTtcbiIpOwogICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGlmIChjdXJz
b3IuaXNDYXB0dXJpbmcoKSkge1xuIik7CiAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICIgICAgICAgICRtZW1vaXplZFR5cGUgbWVtb2l6ZWRSZXN1bHQgPSBjYXN0ZWRUaGlzLT53
cmFwcGVkKCkuJGltcGxHZXR0ZXJGdW5jdGlvbk5hbWUoIiAuIGpvaW4oIiwgIiwgQGFyZ3VtZW50
cykgLiAiKTtcbiIpOwogICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICAg
ICBjdXJzb3IuYXBwZW5kSW5wdXQ8TWVtb2l6ZWRET01SZXN1bHQ8JG1lbW9pemVkVHlwZT4+KGJp
bmRpbmdOYW1lLmdldCgpLnN0cmluZygpLCBtZW1vaXplZFJlc3VsdCwgJGV4Y2VwdGlvbkNvZGUp
O1xuIik7CiAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIEpTVmFs
dWUgcmVzdWx0ID0gIiAuIE5hdGl2ZVRvSlNWYWx1ZSgkYXR0cmlidXRlLT5zaWduYXR1cmUsIDAs
ICRpbnRlcmZhY2UsICJtZW1vaXplZFJlc3VsdCIsICJjYXN0ZWRUaGlzIikgLiAiO1xuIik7Ci0g
ICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIHNldERPTUV4Y2VwdGlv
bihzdGF0ZSwgdGhyb3dTY29wZSwgZWMpO1xuIikgaWYgJGdldHRlckV4Y2VwdGlvbnM7CisgICAg
ICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIHNldERPTUV4Y2VwdGlvbihz
dGF0ZSwgdGhyb3dTY29wZSwgZWMpO1xuIikgaWYgJGdldHRlck1heVRocm93TGVnYWN5RXhjZXB0
aW9uOwogICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICAgICByZXR1cm4g
SlNWYWx1ZTo6ZW5jb2RlKHJlc3VsdCk7XG4iKTsKICAgICAgICAgICAgICAgICBwdXNoKEBpbXBs
Q29udGVudCwgIiAgICB9XG4iKTsKICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwg
IlxuIik7CkBAIC0yOTM5LDcgKzI4NTksNyBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgog
ICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICAgICBpZiAoaW5wdXQgJiYg
aW5wdXQtPmNvbnZlcnRUbzwkbWVtb2l6ZWRUeXBlPihtZW1vaXplZFJlc3VsdCkpIHtcbiIpOwog
ICAgICAgICAgICAgICAgICMgRklYTUU6IHRoZSBnZW5lcmF0ZWQgY29kZSBzaG91bGQgcmVwb3J0
IGFuIGVycm9yIGlmIGFuIGlucHV0IGNhbm5vdCBiZSBmZXRjaGVkIG9yIGNvbnZlcnRlZC4KICAg
ICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgICAgIEpTVmFsdWUgcmVz
dWx0ID0gIiAuIE5hdGl2ZVRvSlNWYWx1ZSgkYXR0cmlidXRlLT5zaWduYXR1cmUsIDAsICRpbnRl
cmZhY2UsICJtZW1vaXplZFJlc3VsdCIsICJjYXN0ZWRUaGlzIikgLiAiO1xuIik7Ci0gICAgICAg
ICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgICAgICBzZXRET01FeGNlcHRpb24o
c3RhdGUsIHRocm93U2NvcGUsIGlucHV0LT5leGNlcHRpb25Db2RlKCkpO1xuIikgaWYgJGdldHRl
ckV4Y2VwdGlvbnM7CisgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAg
ICAgICBzZXRET01FeGNlcHRpb24oc3RhdGUsIHRocm93U2NvcGUsIGlucHV0LT5leGNlcHRpb25D
b2RlKCkpO1xuIikgaWYgJGdldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uOwogICAgICAgICAg
ICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVu
Y29kZShyZXN1bHQpO1xuIik7CiAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIg
ICAgICAgIH1cbiIpOwogICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIH1c
biIpOwpAQCAtMjk0OCwxNCArMjg2OCwxNCBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgog
CiAgICAgICAgICAgICBpZiAoSGFzQ3VzdG9tR2V0dGVyKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+
ZXh0ZW5kZWRBdHRyaWJ1dGVzKSkgewogICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50
LCAiICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoY2FzdGVkVGhpcy0+JGltcGxHZXR0ZXJGdW5j
dGlvbk5hbWUoKnN0YXRlKSk7XG4iKTsKLSAgICAgICAgICAgIH0gZWxzaWYgKCRhdHRyaWJ1dGUt
PnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNoZWNrU2VjdXJpdHlGb3JOb2RlIn0p
IHsKKyAgICAgICAgICAgIH0gZWxzaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57Q2hlY2tTZWN1cml0eUZvck5vZGV9KSB7CiAgICAgICAgICAgICAgICAgJGlt
cGxJbmNsdWRlc3siSlNET01CaW5kaW5nLmgifSA9IDE7CiAgICAgICAgICAgICAgICAgcHVzaChA
aW1wbENvbnRlbnQsICIgICAgYXV0byYgaW1wbCA9IGNhc3RlZFRoaXMtPndyYXBwZWQoKTtcbiIp
OwogICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIHJldHVybiBKU1ZhbHVl
OjplbmNvZGUoc2hvdWxkQWxsb3dBY2Nlc3NUb05vZGUoc3RhdGUsIGltcGwuIiAuICRhdHRyaWJ1
dGUtPnNpZ25hdHVyZS0+bmFtZSAuICIoKSkgPyAiIC4gTmF0aXZlVG9KU1ZhbHVlKCRhdHRyaWJ1
dGUtPnNpZ25hdHVyZSwgMCwgJGludGVyZmFjZSwgImltcGwuJGltcGxHZXR0ZXJGdW5jdGlvbk5h
bWUoKSIsICJjYXN0ZWRUaGlzIikgLiAiIDoganNOdWxsKCkpO1xuIik7CiAgICAgICAgICAgICB9
IGVsc2lmICgkdHlwZSBlcSAiRXZlbnRIYW5kbGVyIikgewogICAgICAgICAgICAgICAgICRpbXBs
SW5jbHVkZXN7IkV2ZW50TmFtZXMuaCJ9ID0gMTsKLSAgICAgICAgICAgICAgICBteSAkZ2V0dGVy
ID0gJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiV2luZG93RXZl
bnRIYW5kbGVyIn0gPyAid2luZG93RXZlbnRIYW5kbGVyQXR0cmlidXRlIgotICAgICAgICAgICAg
ICAgICAgICA6ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkRv
Y3VtZW50RXZlbnRIYW5kbGVyIn0gPyAiZG9jdW1lbnRFdmVudEhhbmRsZXJBdHRyaWJ1dGUiCisg
ICAgICAgICAgICAgICAgbXkgJGdldHRlciA9ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5k
ZWRBdHRyaWJ1dGVzLT57V2luZG93RXZlbnRIYW5kbGVyfSA/ICJ3aW5kb3dFdmVudEhhbmRsZXJB
dHRyaWJ1dGUiCisgICAgICAgICAgICAgICAgICAgIDogJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPntEb2N1bWVudEV2ZW50SGFuZGxlcn0gPyAiZG9jdW1lbnRFdmVu
dEhhbmRsZXJBdHRyaWJ1dGUiCiAgICAgICAgICAgICAgICAgICAgIDogImV2ZW50SGFuZGxlckF0
dHJpYnV0ZSI7CiAgICAgICAgICAgICAgICAgbXkgJGV2ZW50TmFtZSA9IEV2ZW50SGFuZGxlckF0
dHJpYnV0ZUV2ZW50TmFtZSgkYXR0cmlidXRlKTsKICAgICAgICAgICAgICAgICBwdXNoKEBpbXBs
Q29udGVudCwgIiAgICBVTlVTRURfUEFSQU0oc3RhdGUpO1xuIik7CkBAIC0yOTcwLDE5ICsyODkw
LDE5IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICAgICAgICAgICRj
b25zdHJ1Y3RvclR5cGUgPX4gcy9OYW1lZCQvLzsKICAgICAgICAgICAgICAgICAgICAgcHVzaChA
aW1wbENvbnRlbnQsICIgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShKUyIgLiAkY29uc3RydWN0
b3JUeXBlIC4gIjo6Z2V0JHtuYW1lZH1Db25zdHJ1Y3RvcihzdGF0ZS0+dm0oKSwgY2FzdGVkVGhp
cykpO1xuIik7CiAgICAgICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAg
QWRkVG9JbXBsSW5jbHVkZXMoIkpTIiAuICRjb25zdHJ1Y3RvclR5cGUgLiAiLmgiLCAkYXR0cmli
dXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDb25kaXRpb25hbCJ9KTsKKyAg
ICAgICAgICAgICAgICAgICAgQWRkVG9JbXBsSW5jbHVkZXMoIkpTIiAuICRjb25zdHJ1Y3RvclR5
cGUgLiAiLmgiLCAkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0Nv
bmRpdGlvbmFsfSk7CiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAg
IHJldHVybiBKU1ZhbHVlOjplbmNvZGUoSlMiIC4gJGNvbnN0cnVjdG9yVHlwZSAuICI6OmdldENv
bnN0cnVjdG9yKHN0YXRlLT52bSgpLCBjYXN0ZWRUaGlzLT5nbG9iYWxPYmplY3QoKSkpO1xuIik7
CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfSBlbHNpZiAoISRhdHRyaWJ1dGUtPnNp
Z25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkdldHRlclJhaXNlc0V4Y2VwdGlvbiJ9ICYm
ICEkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJHZXR0ZXJSYWlz
ZXNFeGNlcHRpb25XaXRoTWVzc2FnZSJ9KSB7CisgICAgICAgICAgICB9IGVsc2lmICghJGF0dHJp
YnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntHZXR0ZXJNYXlUaHJvd0xlZ2Fj
eUV4Y2VwdGlvbn0gJiYgISRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVz
LT57R2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRoTWVzc2FnZX0pIHsKICAgICAgICAg
ICAgICAgICBteSAkY2FjaGVJbmRleCA9IDA7Ci0gICAgICAgICAgICAgICAgaWYgKCRhdHRyaWJ1
dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNhY2hlZEF0dHJpYnV0ZSJ9KSB7
CisgICAgICAgICAgICAgICAgaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57Q2FjaGVkQXR0cmlidXRlfSkgewogICAgICAgICAgICAgICAgICAgICAkY2FjaGVJ
bmRleCA9ICRjdXJyZW50Q2FjaGVkQXR0cmlidXRlOwogICAgICAgICAgICAgICAgICAgICAkY3Vy
cmVudENhY2hlZEF0dHJpYnV0ZSsrOwogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29u
dGVudCwgIiAgICBpZiAoSlNWYWx1ZSBjYWNoZWRWYWx1ZSA9IGNhc3RlZFRoaXMtPm1fIiAuICRh
dHRyaWJ1dGUtPnNpZ25hdHVyZS0+bmFtZSAuICIuZ2V0KCkpXG4iKTsKICAgICAgICAgICAgICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUo
Y2FjaGVkVmFsdWUpO1xuIik7CiAgICAgICAgICAgICAgICAgfQogCi0gICAgICAgICAgICAgICAg
bXkgQGNhbGxXaXRoQXJncyA9IEdlbmVyYXRlQ2FsbFdpdGgoJGF0dHJpYnV0ZS0+c2lnbmF0dXJl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ2FsbFdpdGgifSwgXEBpbXBsQ29udGVudCwgIkpTVmFs
dWU6OmVuY29kZShqc1VuZGVmaW5lZCgpKSIpOworICAgICAgICAgICAgICAgIG15IEBjYWxsV2l0
aEFyZ3MgPSBHZW5lcmF0ZUNhbGxXaXRoKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57Q2FsbFdpdGh9LCBcQGltcGxDb250ZW50LCAiSlNWYWx1ZTo6ZW5jb2RlKGpz
VW5kZWZpbmVkKCkpIik7CiAKICAgICAgICAgICAgICAgICBpZiAoJHN2Z0xpc3RQcm9wZXJ0eVR5
cGUpIHsKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgSlNWYWx1
ZSByZXN1bHQgPSAgIiAuIE5hdGl2ZVRvSlNWYWx1ZSgkYXR0cmlidXRlLT5zaWduYXR1cmUsIDAs
ICRpbnRlcmZhY2UsICJjYXN0ZWRUaGlzLT53cmFwcGVkKCkuJGltcGxHZXR0ZXJGdW5jdGlvbk5h
bWUoIiAuIChqb2luICIsICIsIEBjYWxsV2l0aEFyZ3MpIC4gIikiLCAiY2FzdGVkVGhpcyIpIC4g
IjtcbiIpOwpAQCAtMjk5Niw4ICsyOTE2LDggQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24K
ICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAg
ICAgICAgICAgICAgIG15ICgkZnVuY3Rpb25OYW1lLCBAYXJndW1lbnRzKSA9ICRjb2RlR2VuZXJh
dG9yLT5HZXR0ZXJFeHByZXNzaW9uKFwlaW1wbEluY2x1ZGVzLCAkaW50ZXJmYWNlTmFtZSwgJGF0
dHJpYnV0ZSk7Ci0gICAgICAgICAgICAgICAgICAgIGlmICgkYXR0cmlidXRlLT5zaWduYXR1cmUt
PmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbXBsZW1lbnRlZEJ5In0pIHsKLSAgICAgICAgICAgICAg
ICAgICAgICAgIG15ICRpbXBsZW1lbnRlZEJ5ID0gJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRl
bmRlZEF0dHJpYnV0ZXMtPnsiSW1wbGVtZW50ZWRCeSJ9OworICAgICAgICAgICAgICAgICAgICBt
eSAkaW1wbGVtZW50ZWRCeSA9ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57SW1wbGVtZW50ZWRCeX07CisgICAgICAgICAgICAgICAgICAgIGlmICgkaW1wbGVtZW50
ZWRCeSkgewogICAgICAgICAgICAgICAgICAgICAgICAgJGltcGxJbmNsdWRlc3siJHtpbXBsZW1l
bnRlZEJ5fS5oIn0gPSAxOwogICAgICAgICAgICAgICAgICAgICAgICAgJGZ1bmN0aW9uTmFtZSA9
ICJXZWJDb3JlOjoke2ltcGxlbWVudGVkQnl9Ojoke2Z1bmN0aW9uTmFtZX0iOwogICAgICAgICAg
ICAgICAgICAgICAgICAgdW5zaGlmdChAYXJndW1lbnRzLCAiaW1wbCIpIGlmICEkYXR0cmlidXRl
LT5pc1N0YXRpYzsKQEAgLTMwMTgsMTEgKzI5MzgsMTEgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50
YXRpb24KICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KIAotICAgICAg
ICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGNhc3RlZFRoaXMtPm1fIiAuICRhdHRy
aWJ1dGUtPnNpZ25hdHVyZS0+bmFtZSAuICIuc2V0KHN0YXRlLT52bSgpLCBjYXN0ZWRUaGlzLCBy
ZXN1bHQpO1xuIikgaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVz
LT57IkNhY2hlZEF0dHJpYnV0ZSJ9KTsKKyAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVu
dCwgIiAgICBjYXN0ZWRUaGlzLT5tXyIgLiAkYXR0cmlidXRlLT5zaWduYXR1cmUtPm5hbWUgLiAi
LnNldChzdGF0ZS0+dm0oKSwgY2FzdGVkVGhpcywgcmVzdWx0KTtcbiIpIGlmICRhdHRyaWJ1dGUt
PnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Q2FjaGVkQXR0cmlidXRlfTsKICAgICAg
ICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2Rl
KHJlc3VsdCk7XG4iKTsKIAogICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICB1
bnNoaWZ0KEBhcmd1bWVudHMsIEdlbmVyYXRlQ2FsbFdpdGgoJGF0dHJpYnV0ZS0+c2lnbmF0dXJl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ2FsbFdpdGgifSwgXEBpbXBsQ29udGVudCwgIkpTVmFs
dWU6OmVuY29kZShqc1VuZGVmaW5lZCgpKSIpKTsKKyAgICAgICAgICAgICAgICB1bnNoaWZ0KEBh
cmd1bWVudHMsIEdlbmVyYXRlQ2FsbFdpdGgoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPntDYWxsV2l0aH0sIFxAaW1wbENvbnRlbnQsICJKU1ZhbHVlOjplbmNvZGUo
anNVbmRlZmluZWQoKSkiKSk7CiAKICAgICAgICAgICAgICAgICBpZiAoJHN2Z1Byb3BlcnR5T3JM
aXN0UHJvcGVydHlUeXBlKSB7CiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50
LCAiICAgICRzdmdQcm9wZXJ0eU9yTGlzdFByb3BlcnR5VHlwZSBpbXBsKCpjYXN0ZWRUaGlzLT53
cmFwcGVkKCkpO1xuIik7CkBAIC0zMDU1LDcgKzI5NzUsNyBAQCBzdWIgR2VuZXJhdGVJbXBsZW1l
bnRhdGlvbgogICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgaWYgKFVOTElLRUxZ
KCFkb21PYmplY3QpKVxuIik7CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3Ioc3RhdGUsIHRocm93U2NvcGUpO1xuIik7CiAKLSAg
ICAgICAgICAgIGlmICghJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik5vSW50ZXJm
YWNlT2JqZWN0In0pIHsKKyAgICAgICAgICAgIGlmICghJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57Tm9JbnRlcmZhY2VPYmplY3R9KSB7CiAgICAgICAgICAgICAgICAgcHVzaChAaW1w
bENvbnRlbnQsICIgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSgke2NsYXNzTmFtZX06OmdldENv
bnN0cnVjdG9yKHN0YXRlLT52bSgpLCBkb21PYmplY3QtPmdsb2JhbE9iamVjdCgpKSk7XG4iKTsK
ICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQs
ICIgICAgSlNWYWx1ZSBjb25zdHJ1Y3RvciA9ICR7Y2xhc3NOYW1lfUNvbnN0cnVjdG9yOjpjcmVh
dGUoc3RhdGUtPnZtKCksICR7Y2xhc3NOYW1lfUNvbnN0cnVjdG9yOjpjcmVhdGVTdHJ1Y3R1cmUo
c3RhdGUtPnZtKCksICpkb21PYmplY3QtPmdsb2JhbE9iamVjdCgpLCBkb21PYmplY3QtPmdsb2Jh
bE9iamVjdCgpLT5vYmplY3RQcm90b3R5cGUoKSksICpqc0Nhc3Q8SlNET01HbG9iYWxPYmplY3Qq
Pihkb21PYmplY3QtPmdsb2JhbE9iamVjdCgpKSk7XG4iKTsKQEAgLTMwODQsMjIgKzMwMDQsMjEg
QEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQs
ICIgICAgcmV0dXJuIGRvbU9iamVjdC0+cHV0RGlyZWN0KHN0YXRlLT52bSgpLCBzdGF0ZS0+cHJv
cGVydHlOYW1lcygpLmNvbnN0cnVjdG9yLCB2YWx1ZSk7XG4iKTsKICAgICAgICAgcHVzaChAaW1w
bENvbnRlbnQsICJ9XG5cbiIpOwogICAgIH0KLSAgICBteSAkaGFzQ3VzdG9tU2V0dGVyID0gJGlu
dGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbU5hbWVkU2V0dGVyIn0KLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
IkN1c3RvbUluZGV4ZWRTZXR0ZXIifTsKIAorICAgIG15ICRoYXNDdXN0b21TZXR0ZXIgPSAkaW50
ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDdXN0b21OYW1lZFNldHRlcn0gfHwgJGludGVy
ZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Q3VzdG9tSW5kZXhlZFNldHRlcn07CiAgICAgaWYg
KCRoYXNDdXN0b21TZXR0ZXIpIHsKLSAgICAgICAgaWYgKCEkaW50ZXJmYWNlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiQ3VzdG9tUHV0RnVuY3Rpb24ifSkgeworICAgICAgICBpZiAoISRpbnRlcmZh
Y2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0N1c3RvbVB1dEZ1bmN0aW9ufSkgewogICAgICAgICAg
ICAgcHVzaChAaW1wbENvbnRlbnQsICJib29sICR7Y2xhc3NOYW1lfTo6cHV0KEpTQ2VsbCogY2Vs
bCwgRXhlY1N0YXRlKiBzdGF0ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgSlNWYWx1ZSB2
YWx1ZSwgUHV0UHJvcGVydHlTbG90JiBzbG90KVxuIik7CiAgICAgICAgICAgICBwdXNoKEBpbXBs
Q29udGVudCwgIntcbiIpOwogICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXV0
byogdGhpc09iamVjdCA9IGpzQ2FzdDwke2NsYXNzTmFtZX0qPihjZWxsKTtcbiIpOwogICAgICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgQVNTRVJUX0dDX09CSkVDVF9JTkhFUklUUyh0
aGlzT2JqZWN0LCBpbmZvKCkpO1xuIik7Ci0gICAgICAgICAgICBpZiAoJGludGVyZmFjZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbUluZGV4ZWRTZXR0ZXIifSkgeworICAgICAgICAgICAg
aWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0N1c3RvbUluZGV4ZWRTZXR0ZXJ9
KSB7CiAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgaWYgKE9wdGlvbmFs
PHVpbnQzMl90PiBpbmRleCA9IHBhcnNlSW5kZXgocHJvcGVydHlOYW1lKSkge1xuIik7CiAgICAg
ICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIHRoaXNPYmplY3QtPmluZGV4
U2V0dGVyKHN0YXRlLCBpbmRleC52YWx1ZSgpLCB2YWx1ZSk7XG4iKTsKICAgICAgICAgICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgcmV0dXJuIHRydWU7XG4iKTsKICAgICAgICAg
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICB9XG4iKTsKICAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tTmFt
ZWRTZXR0ZXIifSkgeworICAgICAgICAgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmli
dXRlcy0+e0N1c3RvbU5hbWVkU2V0dGVyfSkgewogICAgICAgICAgICAgICAgIHB1c2goQGltcGxD
b250ZW50LCAiICAgIGJvb2wgcHV0UmVzdWx0ID0gZmFsc2U7XG4iKTsKICAgICAgICAgICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBpZiAodGhpc09iamVjdC0+cHV0RGVsZWdhdGUoc3Rh
dGUsIHByb3BlcnR5TmFtZSwgdmFsdWUsIHNsb3QsIHB1dFJlc3VsdCkpXG4iKTsKICAgICAgICAg
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgcmV0dXJuIHB1dFJlc3VsdDtcbiIp
OwpAQCAtMzEwOCwyMCArMzAyNywyMCBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAg
ICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgcmV0dXJuIEJhc2U6OnB1dCh0aGlzT2Jq
ZWN0LCBzdGF0ZSwgcHJvcGVydHlOYW1lLCB2YWx1ZSwgc2xvdCk7XG4iKTsKICAgICAgICAgICAg
IHB1c2goQGltcGxDb250ZW50LCAifVxuXG4iKTsKIAotICAgICAgICAgICAgaWYgKCRpbnRlcmZh
Y2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21JbmRleGVkU2V0dGVyIn0gfHwgJGludGVy
ZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbU5hbWVkU2V0dGVyIn0pIHsKKyAgICAg
ICAgICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDdXN0b21JbmRleGVk
U2V0dGVyfSB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDdXN0b21OYW1lZFNl
dHRlcn0pIHsKICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgImJvb2wgJHtjbGFz
c05hbWV9OjpwdXRCeUluZGV4KEpTQ2VsbCogY2VsbCwgRXhlY1N0YXRlKiBzdGF0ZSwgdW5zaWdu
ZWQgaW5kZXgsIEpTVmFsdWUgdmFsdWUsIGJvb2wgc2hvdWxkVGhyb3cpXG4iKTsKICAgICAgICAg
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIntcbiIpOwogICAgICAgICAgICAgICAgIHB1c2go
QGltcGxDb250ZW50LCAiICAgIGF1dG8qIHRoaXNPYmplY3QgPSBqc0Nhc3Q8JHtjbGFzc05hbWV9
Kj4oY2VsbCk7XG4iKTsKICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBB
U1NFUlRfR0NfT0JKRUNUX0lOSEVSSVRTKHRoaXNPYmplY3QsIGluZm8oKSk7XG4iKTsKIAotICAg
ICAgICAgICAgICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9t
SW5kZXhlZFNldHRlciJ9KSB7CisgICAgICAgICAgICAgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+e0N1c3RvbUluZGV4ZWRTZXR0ZXJ9KSB7CiAgICAgICAgICAgICAgICAg
ICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGlmIChMSUtFTFkoaW5kZXggPD0gTUFYX0FSUkFZ
X0lOREVYKSkge1xuIik7CiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAi
ICAgICAgICB0aGlzT2JqZWN0LT5pbmRleFNldHRlcihzdGF0ZSwgaW5kZXgsIHZhbHVlKTtcbiIp
OwogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgcmV0dXJu
IHRydWU7XG4iKTsKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAg
fVxuIik7CiAgICAgICAgICAgICAgICAgfQogCi0gICAgICAgICAgICAgICAgaWYgKCRpbnRlcmZh
Y2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21OYW1lZFNldHRlciJ9KSB7CisgICAgICAg
ICAgICAgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0N1c3RvbU5hbWVk
U2V0dGVyfSkgewogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBJ
ZGVudGlmaWVyIHByb3BlcnR5TmFtZSA9IElkZW50aWZpZXI6OmZyb20oc3RhdGUsIGluZGV4KTtc
biIpOwogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBQdXRQcm9w
ZXJ0eVNsb3Qgc2xvdCh0aGlzT2JqZWN0LCBzaG91bGRUaHJvdyk7XG4iKTsKICAgICAgICAgICAg
ICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYm9vbCBwdXRSZXN1bHQgPSBmYWxzZTtc
biIpOwpAQCAtMzE0MywxMiArMzA2MiwxMCBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgog
ICAgICAgICAgICAgbXkgJHR5cGUgPSAkYXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGU7CiAgICAg
ICAgICAgICBteSAkcHV0RnVuY3Rpb25OYW1lID0gR2V0QXR0cmlidXRlU2V0dGVyTmFtZSgkaW50
ZXJmYWNlLCAkY2xhc3NOYW1lLCAkYXR0cmlidXRlKTsKICAgICAgICAgICAgIG15ICRpbXBsU2V0
dGVyRnVuY3Rpb25OYW1lID0gJGNvZGVHZW5lcmF0b3ItPldLX3VjZmlyc3QoJG5hbWUpOwotICAg
ICAgICAgICAgbXkgJHNldHRlclJhaXNlc0V4Y2VwdGlvbldpdGhNZXNzYWdlID0gJGF0dHJpYnV0
ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiU2V0dGVyUmFpc2VzRXhjZXB0aW9u
V2l0aE1lc3NhZ2UifTsKLSAgICAgICAgICAgIG15ICRzZXR0ZXJSYWlzZXNFeGNlcHRpb24gPSAk
YXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJTZXR0ZXJSYWlzZXNF
eGNlcHRpb24ifSB8fCAkc2V0dGVyUmFpc2VzRXhjZXB0aW9uV2l0aE1lc3NhZ2U7CisgICAgICAg
ICAgICBteSAkc2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRoTWVzc2FnZSA9ICRhdHRy
aWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57U2V0dGVyTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb25XaXRoTWVzc2FnZX07CisgICAgICAgICAgICBteSAkc2V0dGVyTWF5VGhyb3dM
ZWdhY3lFeGNlcHRpb24gPSAkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRl
cy0+e1NldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9ufSB8fCAkc2V0dGVyTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb25XaXRoTWVzc2FnZTsKIAotICAgICAgICAgICAgaWYgKCRzZXR0ZXJSYWlzZXNF
eGNlcHRpb24pIHsKLSAgICAgICAgICAgICAgICAkaW1wbEluY2x1ZGVzeyJFeGNlcHRpb25Db2Rl
LmgifSA9IDE7Ci0gICAgICAgICAgICB9CisgICAgICAgICAgICAkaW1wbEluY2x1ZGVzeyJFeGNl
cHRpb25Db2RlLmgifSA9IDEgaWYgJHNldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uOwogCiAg
ICAgICAgICAgICBteSAkYXR0cmlidXRlQ29uZGl0aW9uYWxTdHJpbmcgPSAkY29kZUdlbmVyYXRv
ci0+R2VuZXJhdGVDb25kaXRpb25hbFN0cmluZygkYXR0cmlidXRlLT5zaWduYXR1cmUpOwogICAg
ICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIjaWYgJHthdHRyaWJ1dGVDb25kaXRpb25hbFN0
cmluZ31cbiIpIGlmICRhdHRyaWJ1dGVDb25kaXRpb25hbFN0cmluZzsKQEAgLTMxNjEsMjAgKzMw
NzgsMjAgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICAgICAgICAgIHB1c2goQGlt
cGxDb250ZW50LCAiICAgIEpTVmFsdWUgdmFsdWUgPSBKU1ZhbHVlOjpkZWNvZGUoZW5jb2RlZFZh
bHVlKTtcbiIpOwogICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgVU5VU0VEX1BB
UkFNKHRoaXNWYWx1ZSk7XG4iKSBpZiAhJGF0dHJpYnV0ZS0+aXNTdGF0aWM7CiAgICAgICAgICAg
ICBpZiAoISRhdHRyaWJ1dGUtPmlzU3RhdGljKSB7Ci0gICAgICAgICAgICAgICAgaWYgKCRpbnRl
cmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21Qcm94eVRvSlNPYmplY3QifSkgewor
ICAgICAgICAgICAgICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDdXN0
b21Qcm94eVRvSlNPYmplY3R9KSB7CiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250
ZW50LCAiICAgICR7Y2xhc3NOYW1lfSogY2FzdGVkVGhpcyA9IHRvJHtjbGFzc05hbWV9KEpTVmFs
dWU6OmRlY29kZSh0aGlzVmFsdWUpKTtcbiIpOwogICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAg
ICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICR7Y2xhc3NOYW1lfSog
Y2FzdGVkVGhpcyA9ICIgLiBHZXRDYXN0aW5nSGVscGVyRm9yVGhpc09iamVjdCgkaW50ZXJmYWNl
KSAuICIoSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpO1xuIik7CiAgICAgICAgICAgICAgICAg
fQogICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGlmIChVTkxJS0VMWSgh
Y2FzdGVkVGhpcykpIHtcbiIpOwotICAgICAgICAgICAgICAgIGlmICgkYXR0cmlidXRlLT5zaWdu
YXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJMZW5pZW50VGhpcyJ9KSB7CisgICAgICAgICAg
ICAgICAgaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57TGVu
aWVudFRoaXN9KSB7CiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAg
ICAgICByZXR1cm4gZmFsc2U7XG4iKTsKICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAg
ICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgcmV0dXJuIHRocm93U2V0
dGVyVHlwZUVycm9yKCpzdGF0ZSwgdGhyb3dTY29wZSwgXCIkdmlzaWJsZUludGVyZmFjZU5hbWVc
IiwgXCIkbmFtZVwiKTtcbiIpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBw
dXNoKEBpbXBsQ29udGVudCwgIiAgICB9XG4iKTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAg
IGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ2hlY2tTZWN1cml0eSJ9ICYm
ICEkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJEb05vdENoZWNr
U2VjdXJpdHkifSAmJiAhJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMt
PnsiRG9Ob3RDaGVja1NlY3VyaXR5T25TZXR0ZXIifSkgeworICAgICAgICAgICAgaWYgKCRpbnRl
cmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0NoZWNrU2VjdXJpdHl9ICYmICEkYXR0cmlidXRl
LT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0RvTm90Q2hlY2tTZWN1cml0eX0gJiYg
ISRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57RG9Ob3RDaGVja1Nl
Y3VyaXR5T25TZXR0ZXJ9KSB7CiAgICAgICAgICAgICAgICAgaWYgKCRpbnRlcmZhY2VOYW1lIGVx
ICJET01XaW5kb3ciKSB7CiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAi
ICAgIGlmICghQmluZGluZ1NlY3VyaXR5OjpzaG91bGRBbGxvd0FjY2Vzc1RvRE9NV2luZG93KHN0
YXRlLCBjYXN0ZWRUaGlzLT53cmFwcGVkKCksIFRocm93U2VjdXJpdHlFcnJvcikpXG4iKTsKICAg
ICAgICAgICAgICAgICB9IGVsc2UgewpAQCAtMzE5NSw4ICszMTEyLDggQEAgc3ViIEdlbmVyYXRl
SW1wbGVtZW50YXRpb24KICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIg
ICAgY2FzdGVkVGhpcy0+d3JhcHBlZCgpLnNldEF0dHJpYnV0ZUV2ZW50TGlzdGVuZXIoJGV2ZW50
TmFtZSwgY3JlYXRlSlNFcnJvckhhbmRsZXIoc3RhdGUsIHZhbHVlLCBjYXN0ZWRUaGlzKSk7XG4i
KTsKICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAkaW1wbElu
Y2x1ZGVzeyJKU0V2ZW50TGlzdGVuZXIuaCJ9ID0gMTsKLSAgICAgICAgICAgICAgICAgICAgbXkg
JHNldHRlciA9ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ildp
bmRvd0V2ZW50SGFuZGxlciJ9ID8gInNldFdpbmRvd0V2ZW50SGFuZGxlckF0dHJpYnV0ZSIKLSAg
ICAgICAgICAgICAgICAgICAgICAgIDogJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiRG9jdW1lbnRFdmVudEhhbmRsZXIifSA/ICJzZXREb2N1bWVudEV2ZW50SGFu
ZGxlckF0dHJpYnV0ZSIKKyAgICAgICAgICAgICAgICAgICAgbXkgJHNldHRlciA9ICRhdHRyaWJ1
dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57V2luZG93RXZlbnRIYW5kbGVyfSA/
ICJzZXRXaW5kb3dFdmVudEhhbmRsZXJBdHRyaWJ1dGUiCisgICAgICAgICAgICAgICAgICAgICAg
ICA6ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57RG9jdW1lbnRF
dmVudEhhbmRsZXJ9ID8gInNldERvY3VtZW50RXZlbnRIYW5kbGVyQXR0cmlidXRlIgogICAgICAg
ICAgICAgICAgICAgICAgICAgOiAic2V0RXZlbnRIYW5kbGVyQXR0cmlidXRlIjsKICAgICAgICAg
ICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgJHNldHRlcigqc3RhdGUsICpjYXN0
ZWRUaGlzLCBjYXN0ZWRUaGlzLT53cmFwcGVkKCksICRldmVudE5hbWUsIHZhbHVlKTtcbiIpOwog
ICAgICAgICAgICAgICAgIH0KQEAgLTMyMDgsMTEgKzMxMjUsMTEgQEAgc3ViIEdlbmVyYXRlSW1w
bGVtZW50YXRpb24KICAgICAgICAgICAgICAgICAjIFdlIGRvIG5vdCBnZW5lcmF0ZSB0aGUgaGVh
ZGVyIGZpbGUgZm9yIE5hbWVkQ29uc3RydWN0b3Igb2YgY2xhc3MgWFhYWCwKICAgICAgICAgICAg
ICAgICAjIHNpbmNlIHdlIGdlbmVyYXRlIHRoZSBOYW1lZENvbnN0cnVjdG9yIGRlY2xhcmF0aW9u
IGludG8gdGhlIGhlYWRlciBmaWxlIG9mIGNsYXNzIFhYWFguCiAgICAgICAgICAgICAgICAgaWYg
KCRjb25zdHJ1Y3RvclR5cGUgbmUgImFueSIgYW5kICRjb25zdHJ1Y3RvclR5cGUgIX4gL05hbWVk
JC8pIHsKLSAgICAgICAgICAgICAgICAgICAgQWRkVG9JbXBsSW5jbHVkZXMoIkpTIiAuICRjb25z
dHJ1Y3RvclR5cGUgLiAiLmgiLCAkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmli
dXRlcy0+eyJDb25kaXRpb25hbCJ9KTsKKyAgICAgICAgICAgICAgICAgICAgQWRkVG9JbXBsSW5j
bHVkZXMoIkpTIiAuICRjb25zdHJ1Y3RvclR5cGUgLiAiLmgiLCAkYXR0cmlidXRlLT5zaWduYXR1
cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0NvbmRpdGlvbmFsfSk7CiAgICAgICAgICAgICAgICAg
fQogICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIC8vIFNoYWRvd2luZyBh
IGJ1aWx0LWluIGNvbnN0cnVjdG9yLlxuIik7CiAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENv
bnRlbnQsICIgICAgcmV0dXJuIGNhc3RlZFRoaXMtPnB1dERpcmVjdChzdGF0ZS0+dm0oKSwgSWRl
bnRpZmllcjo6ZnJvbVN0cmluZyhzdGF0ZSwgXCIkbmFtZVwiKSwgdmFsdWUpO1xuIik7Ci0gICAg
ICAgICAgICB9IGVsc2lmICgkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRl
cy0+eyJSZXBsYWNlYWJsZSJ9KSB7CisgICAgICAgICAgICB9IGVsc2lmICgkYXR0cmlidXRlLT5z
aWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e1JlcGxhY2VhYmxlfSkgewogICAgICAgICAg
ICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIC8vIFNoYWRvd2luZyBhIGJ1aWx0LWluIHBy
b3BlcnR5LlxuIik7CiAgICAgICAgICAgICAgICAgaWYgKEF0dHJpYnV0ZVNob3VsZEJlT25JbnN0
YW5jZSgkaW50ZXJmYWNlLCAkYXR0cmlidXRlKSkgewogICAgICAgICAgICAgICAgICAgICBwdXNo
KEBpbXBsQ29udGVudCwgIiAgICByZXR1cm4gcmVwbGFjZVN0YXRpY1Byb3BlcnR5U2xvdChzdGF0
ZS0+dm0oKSwgY2FzdGVkVGhpcywgSWRlbnRpZmllcjo6ZnJvbVN0cmluZyhzdGF0ZSwgXCIkbmFt
ZVwiKSwgdmFsdWUpO1xuIik7CkBAIC0zMjIxLDkgKzMxMzgsOSBAQCBzdWIgR2VuZXJhdGVJbXBs
ZW1lbnRhdGlvbgogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAg
ICAgICAgICAgICAgaWYgKCEkYXR0cmlidXRlLT5pc1N0YXRpYykgewotICAgICAgICAgICAgICAg
ICAgICBteSAkcHV0Rm9yd2FyZHMgPSAkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0
cmlidXRlcy0+eyJQdXRGb3J3YXJkcyJ9OworICAgICAgICAgICAgICAgICAgICBteSAkcHV0Rm9y
d2FyZHMgPSAkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e1B1dEZv
cndhcmRzfTsKICAgICAgICAgICAgICAgICAgICAgaWYgKCRwdXRGb3J3YXJkcykgewotICAgICAg
ICAgICAgICAgICAgICAgICAgbXkgJGltcGxHZXR0ZXJGdW5jdGlvbk5hbWUgPSAkY29kZUdlbmVy
YXRvci0+V0tfbGNmaXJzdCgkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRl
cy0+eyJJbXBsZW1lbnRlZEFzIn0gfHwgJG5hbWUpOworICAgICAgICAgICAgICAgICAgICAgICAg
bXkgJGltcGxHZXR0ZXJGdW5jdGlvbk5hbWUgPSAkY29kZUdlbmVyYXRvci0+V0tfbGNmaXJzdCgk
YXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0ltcGxlbWVudGVkQXN9
IHx8ICRuYW1lKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkYXR0cmlidXRlLT5zaWdu
YXR1cmUtPmlzTnVsbGFibGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXNoKEBp
bXBsQ29udGVudCwgIiAgICBSZWZQdHI8JHt0eXBlfT4gZm9yd2FyZGVkSW1wbCA9IGNhc3RlZFRo
aXMtPndyYXBwZWQoKS4ke2ltcGxHZXR0ZXJGdW5jdGlvbk5hbWV9KCk7XG4iKTsKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBpZiAoIWZvcndhcmRl
ZEltcGwpXG4iKTsKQEAgLTMyNDAsMjMgKzMxNTcsMjEgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50
YXRpb24KICAgICAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGF1
dG8mIGltcGwgPSBjYXN0ZWRUaGlzLT53cmFwcGVkKCk7XG4iKTsKICAgICAgICAgICAgICAgICAg
ICAgfQogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoJHNldHRlclJhaXNl
c0V4Y2VwdGlvbldpdGhNZXNzYWdlKSB7CisgICAgICAgICAgICAgICAgaWYgKCRzZXR0ZXJNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbldpdGhNZXNzYWdlKSB7CiAgICAgICAgICAgICAgICAgICAgIHB1
c2goQGltcGxDb250ZW50LCAiICAgIEV4Y2VwdGlvbkNvZGVXaXRoTWVzc2FnZSBlYztcbiIpOwot
ICAgICAgICAgICAgICAgIH0gZWxzaWYgKCRzZXR0ZXJSYWlzZXNFeGNlcHRpb24pIHsKKyAgICAg
ICAgICAgICAgICB9IGVsc2lmICgkc2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb24pIHsKICAg
ICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgRXhjZXB0aW9uQ29kZSBl
YyA9IDA7XG4iKTsKICAgICAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgICAgICBteSAkc2hv
dWxkUGFzc0J5UmVmZXJlbmNlID0gU2hvdWxkUGFzc1dyYXBwZXJCeVJlZmVyZW5jZSgkYXR0cmli
dXRlLT5zaWduYXR1cmUsICRpbnRlcmZhY2UpOwogCi0gICAgICAgICAgICAgICAgbXkgKCRuYXRp
dmVWYWx1ZSwgJG1heVRocm93RXhjZXB0aW9uKSA9IEpTVmFsdWVUb05hdGl2ZSgkaW50ZXJmYWNl
LCAkYXR0cmlidXRlLT5zaWduYXR1cmUsICJ2YWx1ZSIsICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+
ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNvbmRpdGlvbmFsIn0pOworICAgICAgICAgICAgICAgIG15
ICgkbmF0aXZlVmFsdWUsICRtYXlUaHJvd0V4Y2VwdGlvbikgPSBKU1ZhbHVlVG9OYXRpdmUoJGlu
dGVyZmFjZSwgJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLCAidmFsdWUiLCAkYXR0cmlidXRlLT5zaWdu
YXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0NvbmRpdGlvbmFsfSk7CiAgICAgICAgICAgICAg
ICAgaWYgKCEkc2hvdWxkUGFzc0J5UmVmZXJlbmNlICYmICRjb2RlR2VuZXJhdG9yLT5Jc1dyYXBw
ZXJUeXBlKCR0eXBlKSkgewogICAgICAgICAgICAgICAgICAgICAkaW1wbEluY2x1ZGVzeyI8cnVu
dGltZS9FcnJvci5oPiJ9ID0gMTsKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICIgICAgIiAuIEdldE5hdGl2ZVR5cGVGcm9tU2lnbmF0dXJlKCRpbnRlcmZhY2UsICRhdHRy
aWJ1dGUtPnNpZ25hdHVyZSkgLiAiIG5hdGl2ZVZhbHVlID0gbnVsbHB0cjtcbiIpOwogICAgICAg
ICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBpZiAoIXZhbHVlLmlzVW5kZWZp
bmVkT3JOdWxsKCkpIHtcbiIpOwogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVu
dCwgIiAgICAgICAgbmF0aXZlVmFsdWUgPSAkbmF0aXZlVmFsdWU7XG4iKTsKLSAgICAgICAgICAg
ICAgICAgICAgaWYgKCRtYXlUaHJvd0V4Y2VwdGlvbikgewotICAgICAgICAgICAgICAgICAgICAg
ICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04odGhyb3dT
Y29wZSwgZmFsc2UpO1xuIik7Ci0gICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04odGhy
b3dTY29wZSwgZmFsc2UpO1xuIikgaWYgJG1heVRocm93RXhjZXB0aW9uOwogICAgICAgICAgICAg
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgaWYgKFVOTElLRUxZKCFuYXRpdmVW
YWx1ZSkpIHtcbiIpOwogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAg
ICAgICAgICAgIHRocm93QXR0cmlidXRlVHlwZUVycm9yKCpzdGF0ZSwgdGhyb3dTY29wZSwgXCIk
dmlzaWJsZUludGVyZmFjZU5hbWVcIiwgXCIkbmFtZVwiLCBcIiR0eXBlXCIpO1xuIik7CiAgICAg
ICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICAgICAgICAgcmV0dXJuIGZh
bHNlO1xuIik7CkBAIC0zMjY0LDkgKzMxNzksNyBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlv
bgogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICB9XG4iKTsKICAg
ICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29u
dGVudCwgIiAgICBhdXRvIG5hdGl2ZVZhbHVlID0gJG5hdGl2ZVZhbHVlO1xuIik7Ci0gICAgICAg
ICAgICAgICAgICAgIGlmICgkbWF5VGhyb3dFeGNlcHRpb24pIHsKLSAgICAgICAgICAgICAgICAg
ICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIFJFVFVSTl9JRl9FWENFUFRJT04odGhyb3dT
Y29wZSwgZmFsc2UpO1xuIik7Ci0gICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Nj
b3BlLCBmYWxzZSk7XG4iKSBpZiAkbWF5VGhyb3dFeGNlcHRpb247CiAgICAgICAgICAgICAgICAg
fQogCiAgICAgICAgICAgICAgICAgaWYgKCRjb2RlR2VuZXJhdG9yLT5Jc0VudW1UeXBlKCR0eXBl
KSkgewpAQCAtMzI5NCwxNSArMzIwNywxNSBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgog
ICAgICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgcG9kSW1wbCA9
IG5hdGl2ZVZhbHVlO1xuIik7CiAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAg
ICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBwb2RJbXBsLnNldCRpbXBs
U2V0dGVyRnVuY3Rpb25OYW1lKG5hdGl2ZVZhbHVlIik7Ci0gICAgICAgICAgICAgICAgICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudCwgIiwgZWMiKSBpZiAkc2V0dGVyUmFpc2VzRXhjZXB0aW9uOwor
ICAgICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIsIGVjIikgaWYgJHNl
dHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uOwogICAgICAgICAgICAgICAgICAgICAgICAgcHVz
aChAaW1wbENvbnRlbnQsICIpO1xuIik7Ci0gICAgICAgICAgICAgICAgICAgICAgICBwdXNoKEBp
bXBsQ29udGVudCwgIiAgICBzZXRET01FeGNlcHRpb24oc3RhdGUsIHRocm93U2NvcGUsIGVjKTtc
biIpIGlmICRzZXR0ZXJSYWlzZXNFeGNlcHRpb247CisgICAgICAgICAgICAgICAgICAgICAgICBw
dXNoKEBpbXBsQ29udGVudCwgIiAgICBzZXRET01FeGNlcHRpb24oc3RhdGUsIHRocm93U2NvcGUs
IGVjKTtcbiIpIGlmICRzZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbjsKICAgICAgICAgICAg
ICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICBpZiAoJHN2Z1Byb3BlcnR5VHlwZSkgewot
ICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRzZXR0ZXJSYWlzZXNFeGNlcHRpb25XaXRoTWVz
c2FnZSkgeworICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRzZXR0ZXJNYXlUaHJvd0xlZ2Fj
eUV4Y2VwdGlvbldpdGhNZXNzYWdlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHVz
aChAaW1wbENvbnRlbnQsICIgICAgaWYgKExJS0VMWSghZWMuY29kZSkpXG4iKTsKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgaW1wbC5jb21t
aXRDaGFuZ2UoKTtcbiIpOwotICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNpZiAoJHNldHRl
clJhaXNlc0V4Y2VwdGlvbikgeworICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNpZiAoJHNl
dHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgaWYgKExJS0VMWSghZWMpKVxuIik7CiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIGltcGwuY29t
bWl0Q2hhbmdlKCk7XG4iKTsKICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CkBAIC0z
MzE5LDkgKzMyMzIsOSBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgICAgICAgICAg
ICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgcHVzaChAYXJndW1lbnRz
LCAkc2hvdWxkUGFzc0J5UmVmZXJlbmNlID8gIipuYXRpdmVWYWx1ZSIgOiAiV1RGTW92ZShuYXRp
dmVWYWx1ZSkiKTsKICAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICBp
ZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW1wbGVtZW50
ZWRCeSJ9KSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBteSAkaW1wbGVtZW50ZWRCeSA9ICRh
dHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkltcGxlbWVudGVkQnki
fTsKLSAgICAgICAgICAgICAgICAgICAgICAgIEFkZFRvSW1wbEluY2x1ZGVzKCIke2ltcGxlbWVu
dGVkQnl9LmgiLCAkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJD
b25kaXRpb25hbCJ9KTsKKyAgICAgICAgICAgICAgICAgICAgbXkgJGltcGxlbWVudGVkQnkgPSAk
YXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0ltcGxlbWVudGVkQnl9
OworICAgICAgICAgICAgICAgICAgICBpZiAoJGltcGxlbWVudGVkQnkpIHsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIEFkZFRvSW1wbEluY2x1ZGVzKCIke2ltcGxlbWVudGVkQnl9LmgiLCAkYXR0
cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0NvbmRpdGlvbmFsfSk7CiAg
ICAgICAgICAgICAgICAgICAgICAgICB1bnNoaWZ0KEBhcmd1bWVudHMsICJpbXBsIikgaWYgISRh
dHRyaWJ1dGUtPmlzU3RhdGljOwogICAgICAgICAgICAgICAgICAgICAgICAgJGZ1bmN0aW9uTmFt
ZSA9ICJXZWJDb3JlOjoke2ltcGxlbWVudGVkQnl9Ojoke2Z1bmN0aW9uTmFtZX0iOwogICAgICAg
ICAgICAgICAgICAgICB9IGVsc2lmICgkYXR0cmlidXRlLT5pc1N0YXRpYykgewpAQCAtMzMzMCwx
MiArMzI0MywxMiBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgICAgICAgICAgICAg
ICAgICAgICAgJGZ1bmN0aW9uTmFtZSA9ICJpbXBsLiR7ZnVuY3Rpb25OYW1lfSI7CiAgICAgICAg
ICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgICAgICAgICB1bnNoaWZ0KEBhcmd1bWVudHMs
IEdlbmVyYXRlQ2FsbFdpdGgoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPnsiU2V0dGVyQ2FsbFdpdGgifSwgXEBpbXBsQ29udGVudCwgImZhbHNlIikpOwotICAgICAg
ICAgICAgICAgICAgICB1bnNoaWZ0KEBhcmd1bWVudHMsIEdlbmVyYXRlQ2FsbFdpdGgoJGF0dHJp
YnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ2FsbFdpdGgifSwgXEBpbXBs
Q29udGVudCwgImZhbHNlIikpOworICAgICAgICAgICAgICAgICAgICB1bnNoaWZ0KEBhcmd1bWVu
dHMsIEdlbmVyYXRlQ2FsbFdpdGgoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJp
YnV0ZXMtPntTZXR0ZXJDYWxsV2l0aH0sIFxAaW1wbENvbnRlbnQsICJmYWxzZSIpKTsKKyAgICAg
ICAgICAgICAgICAgICAgdW5zaGlmdChAYXJndW1lbnRzLCBHZW5lcmF0ZUNhbGxXaXRoKCRhdHRy
aWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Q2FsbFdpdGh9LCBcQGltcGxD
b250ZW50LCAiZmFsc2UiKSk7CiAKLSAgICAgICAgICAgICAgICAgICAgcHVzaChAYXJndW1lbnRz
LCAiZWMiKSBpZiAkc2V0dGVyUmFpc2VzRXhjZXB0aW9uOworICAgICAgICAgICAgICAgICAgICBw
dXNoKEBhcmd1bWVudHMsICJlYyIpIGlmICRzZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbjsK
ICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgJHtmdW5jdGlvbk5h
bWV9KCIgLiBqb2luKCIsICIsIEBhcmd1bWVudHMpIC4gIik7XG4iKTsKLSAgICAgICAgICAgICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgc2V0RE9NRXhjZXB0aW9uKHN0YXRlLCB0aHJv
d1Njb3BlLCBlYyk7XG4iKSBpZiAkc2V0dGVyUmFpc2VzRXhjZXB0aW9uOworICAgICAgICAgICAg
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBzZXRET01FeGNlcHRpb24oc3RhdGUsIHRo
cm93U2NvcGUsIGVjKTtcbiIpIGlmICRzZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbjsKICAg
ICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgcmV0dXJuIHRydWU7XG4i
KTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CkBAIC0zMzQ2LDcgKzMyNTksNyBA
QCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgICAgICB9CiAgICAgfQogCi0gICAgaWYg
KCgkaW5kZXhlZEdldHRlckZ1bmN0aW9uIHx8ICRuYW1lZEdldHRlckZ1bmN0aW9uKSAmJiAhJGlu
dGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbUVudW1lcmF0ZVByb3BlcnR5In0p
IHsKKyAgICBpZiAoKCRpbmRleGVkR2V0dGVyRnVuY3Rpb24gfHwgJG5hbWVkR2V0dGVyRnVuY3Rp
b24pICYmICEkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDdXN0b21FbnVtZXJhdGVQ
cm9wZXJ0eX0pIHsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ2b2lkICR7Y2xhc3NOYW1l
fTo6Z2V0T3duUHJvcGVydHlOYW1lcyhKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIHN0YXRl
LCBQcm9wZXJ0eU5hbWVBcnJheSYgcHJvcGVydHlOYW1lcywgRW51bWVyYXRpb25Nb2RlIG1vZGUp
XG4iKTsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ7XG4iKTsKICAgICAgICAgcHVzaChA
aW1wbENvbnRlbnQsICIgICAgYXV0byogdGhpc09iamVjdCA9IGpzQ2FzdDwke2NsYXNzTmFtZX0q
PihvYmplY3QpO1xuIik7CkBAIC0zMzY2LDExICszMjc5LDExIEBAIHN1YiBHZW5lcmF0ZUltcGxl
bWVudGF0aW9uCiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAifVxuXG4iKTsKICAgICB9CiAK
LSAgICBpZiAoISRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOb0ludGVyZmFjZU9i
amVjdCJ9KSB7CisgICAgaWYgKCEkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntOb0lu
dGVyZmFjZU9iamVjdH0pIHsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJKU1ZhbHVlICR7
Y2xhc3NOYW1lfTo6Z2V0Q29uc3RydWN0b3IoVk0mIHZtLCBjb25zdCBKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0KVxue1xuIik7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIHJl
dHVybiBnZXRET01Db25zdHJ1Y3Rvcjwke2NsYXNzTmFtZX1Db25zdHJ1Y3Rvcj4odm0sICpqc0Nh
c3Q8Y29uc3QgSlNET01HbG9iYWxPYmplY3QqPihnbG9iYWxPYmplY3QpKTtcbiIpOwogICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudCwgIn1cblxuIik7Ci0gICAgICAgIGlmICgkaW50ZXJmYWNlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPnsiTmFtZWRDb25zdHJ1Y3RvciJ9KSB7CisgICAgICAgIGlmICgk
aW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntOYW1lZENvbnN0cnVjdG9yfSkgewogICAg
ICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJKU1ZhbHVlICR7Y2xhc3NOYW1lfTo6Z2V0TmFt
ZWRDb25zdHJ1Y3RvcihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpXG57XG4i
KTsKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIHJldHVybiBnZXRET01Db25z
dHJ1Y3Rvcjwke2NsYXNzTmFtZX1OYW1lZENvbnN0cnVjdG9yPih2bSwgKmpzQ2FzdDxKU0RPTUds
b2JhbE9iamVjdCo+KGdsb2JhbE9iamVjdCkpO1xuIik7CiAgICAgICAgICAgICBwdXNoKEBpbXBs
Q29udGVudCwgIn1cblxuIik7CkBAIC0zMzgyLDggKzMyOTUsNyBAQCBzdWIgR2VuZXJhdGVJbXBs
ZW1lbnRhdGlvbgogICAgICAgICBteSAkaW5BcHBsZUNvcHlyaWdodCA9IDA7CiAgICAgICAgIGZv
cmVhY2ggbXkgJGZ1bmN0aW9uIChAeyRpbnRlcmZhY2UtPmZ1bmN0aW9uc30pIHsKICAgICAgICAg
ICAgIG5leHQgaWYgSXNKU0J1aWx0aW4oJGludGVyZmFjZSwgJGZ1bmN0aW9uKTsKLSAgICAgICAg
ICAgIG15ICRuZWVkc0FwcGxlQ29weXJpZ2h0ID0gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+eyJBcHBsZUNvcHlyaWdodCJ9OwotICAgICAgICAgICAgaWYgKCRuZWVk
c0FwcGxlQ29weXJpZ2h0KSB7CisgICAgICAgICAgICBpZiAoJGZ1bmN0aW9uLT5zaWduYXR1cmUt
PmV4dGVuZGVkQXR0cmlidXRlcy0+e0FwcGxlQ29weXJpZ2h0fSkgewogICAgICAgICAgICAgICAg
IGlmICghJGluQXBwbGVDb3B5cmlnaHQpIHsKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1w
bENvbnRlbnQsICRiZWdpbkFwcGxlQ29weXJpZ2h0Rm9yU291cmNlRmlsZXMpOwogICAgICAgICAg
ICAgICAgICAgICAkaW5BcHBsZUNvcHlyaWdodCA9IDE7CkBAIC0zMzk2LDEwICszMzA4LDEwIEBA
IHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICBteSAkaXNDdXN0b20gPSBI
YXNDdXN0b21NZXRob2QoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcyk7
CiAgICAgICAgICAgICBteSAkaXNPdmVybG9hZGVkID0gJGZ1bmN0aW9uLT57b3ZlcmxvYWRzfSAm
JiBAeyRmdW5jdGlvbi0+e292ZXJsb2Fkc319ID4gMTsKIAotICAgICAgICAgICAgZGllICJSYWlz
ZXNFeGNlcHRpb24gYW5kIFJhaXNlc0V4Y2VwdGlvbldpdGhNZXNzYWdlIGFyZSBtdXR1YWxseSBl
eGNsdXNpdmUiIGlmICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsi
UmFpc2VzRXhjZXB0aW9uIn0gJiYgJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmli
dXRlcy0+eyJSYWlzZXNFeGNlcHRpb25XaXRoTWVzc2FnZSJ9OworICAgICAgICAgICAgZGllICJN
YXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbiBhbmQgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRoTWVz
c2FnZSBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIiBpZiAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57TWF5VGhyb3dMZWdhY3lFeGNlcHRpb259ICYmICRmdW5jdGlvbi0+
c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbldp
dGhNZXNzYWdlfTsKIAotICAgICAgICAgICAgbXkgJHJhaXNlc0V4Y2VwdGlvbldpdGhNZXNzYWdl
ID0gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJSYWlzZXNFeGNl
cHRpb25XaXRoTWVzc2FnZSJ9OwotICAgICAgICAgICAgbXkgJHJhaXNlc0V4Y2VwdGlvbiA9ICRm
dW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiUmFpc2VzRXhjZXB0aW9u
In0gfHwgJHJhaXNlc0V4Y2VwdGlvbldpdGhNZXNzYWdlOworICAgICAgICAgICAgbXkgJG1heVRo
cm93TGVnYWN5RXhjZXB0aW9uV2l0aE1lc3NhZ2UgPSAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57TWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRoTWVzc2FnZX07Cisg
ICAgICAgICAgICBteSAkbWF5VGhyb3dMZWdhY3lFeGNlcHRpb24gPSAkZnVuY3Rpb24tPnNpZ25h
dHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57TWF5VGhyb3dMZWdhY3lFeGNlcHRpb259IHx8ICRt
YXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbldpdGhNZXNzYWdlOwogCiAgICAgICAgICAgICBuZXh0IGlm
ICRpc0N1c3RvbSAmJiAkaXNPdmVybG9hZGVkICYmICRmdW5jdGlvbi0+e292ZXJsb2FkSW5kZXh9
ID4gMTsKIApAQCAtMzQwNyw3ICszMzE5LDcgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24K
IAogICAgICAgICAgICAgbXkgJGZ1bmN0aW9uTmFtZSA9IEdldEZ1bmN0aW9uTmFtZSgkaW50ZXJm
YWNlLCAkY2xhc3NOYW1lLCAkZnVuY3Rpb24pOwogCi0gICAgICAgICAgICBteSAkY29uZGl0aW9u
YWwgPSAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNvbmRpdGlv
bmFsIn07CisgICAgICAgICAgICBteSAkY29uZGl0aW9uYWwgPSAkZnVuY3Rpb24tPnNpZ25hdHVy
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Q29uZGl0aW9uYWx9OwogICAgICAgICAgICAgaWYgKCRj
b25kaXRpb25hbCkgewogICAgICAgICAgICAgICAgIG15ICRjb25kaXRpb25hbFN0cmluZyA9ICRj
b2RlR2VuZXJhdG9yLT5HZW5lcmF0ZUNvbmRpdGlvbmFsU3RyaW5nRnJvbUF0dHJpYnV0ZVZhbHVl
KCRjb25kaXRpb25hbCk7CiAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIjaWYg
JHtjb25kaXRpb25hbFN0cmluZ31cbiIpOwpAQCAtMzQyMSwxNCArMzMzMywxMiBAQCBzdWIgR2Vu
ZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgICAgICAgICAgICAgICRmdW5jdGlvblJldHVybiA9ICJz
dGF0aWMgaW5saW5lIEVuY29kZWRKU1ZhbHVlIjsKICAgICAgICAgICAgIH0KIAotICAgICAgICAg
ICAgbXkgJGZ1bmN0aW9uSW1wbGVtZW50YXRpb25OYW1lID0gJGZ1bmN0aW9uLT5zaWduYXR1cmUt
PmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbXBsZW1lbnRlZEFzIn0gfHwgJGNvZGVHZW5lcmF0b3It
PldLX2xjZmlyc3QoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPm5hbWUpOworICAgICAgICAgICAgbXkg
JGZ1bmN0aW9uSW1wbGVtZW50YXRpb25OYW1lID0gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+e0ltcGxlbWVudGVkQXN9IHx8ICRjb2RlR2VuZXJhdG9yLT5XS19sY2Zp
cnN0KCRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1lKTsKIAotICAgICAgICAgICAgaWYgKElzUmV0
dXJuaW5nUHJvbWlzZSgkZnVuY3Rpb24pKSB7Ci0gICAgICAgICAgICAgICAgQWRkVG9JbXBsSW5j
bHVkZXMoIkpTRE9NUHJvbWlzZS5oIik7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiAo
SXNSZXR1cm5pbmdQcm9taXNlKCRmdW5jdGlvbikgJiYgISRpc0N1c3RvbSkgeworICAgICAgICAg
ICAgQWRkVG9JbXBsSW5jbHVkZXMoIkpTRE9NUHJvbWlzZS5oIikgaWYgSXNSZXR1cm5pbmdQcm9t
aXNlKCRmdW5jdGlvbik7CiAKLSAgICAgICAgICAgICAgICBteSAkc2NvcGUgPSAkaW50ZXJmYWNl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRXhwb3NlZCJ9ID8gIldpbmRvd09yV29ya2VyIiA6ICJX
aW5kb3dPbmx5IjsKKyAgICAgICAgICAgIGlmIChJc1JldHVybmluZ1Byb21pc2UoJGZ1bmN0aW9u
KSAmJiAhJGlzQ3VzdG9tKSB7CisgICAgICAgICAgICAgICAgbXkgJHNjb3BlID0gJGludGVyZmFj
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57RXhwb3NlZH0gPyAiV2luZG93T3JXb3JrZXIiIDogIldp
bmRvd09ubHkiOwogICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCA8PEVORCk7CiBz
dGF0aWMgRW5jb2RlZEpTVmFsdWUgJHtmdW5jdGlvbk5hbWV9UHJvbWlzZShFeGVjU3RhdGUqLCBS
ZWY8RGVmZXJyZWRQcm9taXNlPiYmKTsKIApAQCAtMzQ0MCw4ICszMzUwLDcgQEAgJHtmdW5jdGlv
blJldHVybn0gJHtmdW5jdGlvbk5hbWV9KEV4ZWNTdGF0ZSogc3RhdGUpCiAKIHN0YXRpYyBpbmxp
bmUgRW5jb2RlZEpTVmFsdWUgJHtmdW5jdGlvbk5hbWV9UHJvbWlzZShFeGVjU3RhdGUqIHN0YXRl
LCBSZWY8RGVmZXJyZWRQcm9taXNlPiYmIHByb21pc2UpCiBFTkQKLSAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBw
dXNoKEBpbXBsQ29udGVudCwgIiR7ZnVuY3Rpb25SZXR1cm59ICR7ZnVuY3Rpb25OYW1lfShFeGVj
U3RhdGUqIHN0YXRlKVxuIik7CiAgICAgICAgICAgICB9CiAKQEAgLTM0NTMsNyArMzM2Miw3IEBA
IEVORAogICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXV0byB0aHJvd1Njb3Bl
ID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7XG4iKTsKICAgICAgICAgICAgIHB1c2goQGltcGxD
b250ZW50LCAiICAgIFVOVVNFRF9QQVJBTSh0aHJvd1Njb3BlKTtcbiIpOwogCi0gICAgICAgICAg
ICBpZiAoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDRVJlYWN0
aW9ucyJ9KSB7CisgICAgICAgICAgICBpZiAoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVk
QXR0cmlidXRlcy0+e0NFUmVhY3Rpb25zfSkgewogICAgICAgICAgICAgICAgIHB1c2goQGltcGxD
b250ZW50LCAiI2lmIEVOQUJMRShDVVNUT01fRUxFTUVOVFMpXG4iKTsKICAgICAgICAgICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBDdXN0b21FbGVtZW50UmVhY3Rpb25TdGFjayBjdXN0
b21FbGVtZW50UmVhY3Rpb25TdGFjaztcbiIpOwogICAgICAgICAgICAgICAgIHB1c2goQGltcGxD
b250ZW50LCAiI2VuZGlmXG4iKTsKQEAgLTM0NjcsOSArMzM3Niw5IEBAIEVORAogICAgICAgICAg
ICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlQXJndW1lbnRzQ291
bnRDaGVjayhcQGltcGxDb250ZW50LCAkZnVuY3Rpb24sICRpbnRlcmZhY2UpOwogCi0gICAgICAg
ICAgICAgICAgICAgIGlmICgkcmFpc2VzRXhjZXB0aW9uV2l0aE1lc3NhZ2UpIHsKKyAgICAgICAg
ICAgICAgICAgICAgaWYgKCRtYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbldpdGhNZXNzYWdlKSB7CiAg
ICAgICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBFeGNlcHRpb25D
b2RlV2l0aE1lc3NhZ2UgZWM7XG4iKTsKLSAgICAgICAgICAgICAgICAgICAgfSBlbHNpZiAoJHJh
aXNlc0V4Y2VwdGlvbikgeworICAgICAgICAgICAgICAgICAgICB9IGVsc2lmICgkbWF5VGhyb3dM
ZWdhY3lFeGNlcHRpb24pIHsKICAgICAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250
ZW50LCAiICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwO1xuIik7CiAgICAgICAgICAgICAgICAgICAg
IH0KIApAQCAtMzQ4MCw3ICszMzg5LDcgQEAgRU5ECiAgICAgICAgICAgICAgICAgbXkgJHNob3Vs
ZFJlamVjdENhc3RlZFRoaXMgPSAkaXNDdXN0b20gJiYgSXNSZXR1cm5pbmdQcm9taXNlKCRmdW5j
dGlvbik7CiAgICAgICAgICAgICAgICAgR2VuZXJhdGVGdW5jdGlvbkNhc3RlZFRoaXMoJGludGVy
ZmFjZSwgJGNsYXNzTmFtZSwgJGZ1bmN0aW9uLCAkc2hvdWxkUmVqZWN0Q2FzdGVkVGhpcyk7CiAK
LSAgICAgICAgICAgICAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNo
ZWNrU2VjdXJpdHkifSBhbmQgISRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPnsiRG9Ob3RDaGVja1NlY3VyaXR5In0pIHsKKyAgICAgICAgICAgICAgICBpZiAoJGludGVy
ZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Q2hlY2tTZWN1cml0eX0gYW5kICEkZnVuY3Rpb24t
PnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57RG9Ob3RDaGVja1NlY3VyaXR5fSkgewog
ICAgICAgICAgICAgICAgICAgICBpZiAoJGludGVyZmFjZU5hbWUgZXEgIkRPTVdpbmRvdyIpIHsK
ICAgICAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGlmICghQmlu
ZGluZ1NlY3VyaXR5OjpzaG91bGRBbGxvd0FjY2Vzc1RvRE9NV2luZG93KHN0YXRlLCBjYXN0ZWRU
aGlzLT53cmFwcGVkKCksIFRocm93U2VjdXJpdHlFcnJvcikpXG4iKTsKICAgICAgICAgICAgICAg
ICAgICAgfSBlbHNlIHsKQEAgLTM1MTMsMTQgKzM0MjIsMTQgQEAgRU5ECiAKICAgICAgICAgICAg
ICAgICAgICAgR2VuZXJhdGVBcmd1bWVudHNDb3VudENoZWNrKFxAaW1wbENvbnRlbnQsICRmdW5j
dGlvbiwgJGludGVyZmFjZSk7CiAKLSAgICAgICAgICAgICAgICAgICAgaWYgKCRyYWlzZXNFeGNl
cHRpb25XaXRoTWVzc2FnZSkgeworICAgICAgICAgICAgICAgICAgICBpZiAoJG1heVRocm93TGVn
YWN5RXhjZXB0aW9uV2l0aE1lc3NhZ2UpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIHB1c2go
QGltcGxDb250ZW50LCAiICAgIEV4Y2VwdGlvbkNvZGVXaXRoTWVzc2FnZSBlYztcbiIpOwotICAg
ICAgICAgICAgICAgICAgICB9IGVsc2lmICgkcmFpc2VzRXhjZXB0aW9uKSB7CisgICAgICAgICAg
ICAgICAgICAgIH0gZWxzaWYgKCRtYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbikgewogICAgICAgICAg
ICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgRXhjZXB0aW9uQ29kZSBlYyA9
IDA7XG4iKTsKICAgICAgICAgICAgICAgICAgICAgfQogCi0gICAgICAgICAgICAgICAgICAgIGlm
ICgkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNoZWNrU2VjdXJp
dHlGb3JOb2RlIn0pIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50
LCAiICAgIGlmICghc2hvdWxkQWxsb3dBY2Nlc3NUb05vZGUoc3RhdGUsIGltcGwuIiAuICRmdW5j
dGlvbi0+c2lnbmF0dXJlLT5uYW1lIC4gIigiIC4gKCRyYWlzZXNFeGNlcHRpb24gPyAiZWMiIDog
IiIpIC4iKSkpXG4iKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKCRmdW5jdGlvbi0+c2lnbmF0
dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDaGVja1NlY3VyaXR5Rm9yTm9kZX0pIHsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGlmICghc2hvdWxkQWxs
b3dBY2Nlc3NUb05vZGUoc3RhdGUsIGltcGwuIiAuICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1l
IC4gIigiIC4gKCRtYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbiA/ICJlYyIgOiAiIikgLiIpKSlcbiIp
OwogICAgICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIHJl
dHVybiBKU1ZhbHVlOjplbmNvZGUoanNOdWxsKCkpO1xuIik7CiAgICAgICAgICAgICAgICAgICAg
ICAgICAkaW1wbEluY2x1ZGVzeyJKU0RPTUJpbmRpbmcuaCJ9ID0gMTsKICAgICAgICAgICAgICAg
ICAgICAgfQpAQCAtMzU1NCwxMCArMzQ2MywxMCBAQCBFTkQKICAgICAgICAgaWYgKCRjb2RlR2Vu
ZXJhdG9yLT5Jbmhlcml0c0ludGVyZmFjZSgkaW50ZXJmYWNlLCAiRXZlbnRUYXJnZXQiKSkgewog
ICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgdGhpc09iamVjdC0+d3JhcHBlZCgp
LnZpc2l0SlNFdmVudExpc3RlbmVycyh2aXNpdG9yKTtcbiIpOwogICAgICAgICB9Ci0gICAgICAg
IHB1c2goQGltcGxDb250ZW50LCAiICAgIHRoaXNPYmplY3QtPnZpc2l0QWRkaXRpb25hbENoaWxk
cmVuKHZpc2l0b3IpO1xuIikgaWYgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpT
Q3VzdG9tTWFya0Z1bmN0aW9uIn07Ci0gICAgICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiUmVwb3J0RXh0cmFNZW1vcnlDb3N0In0pIHsKKyAgICAgICAgcHVzaChAaW1w
bENvbnRlbnQsICIgICAgdGhpc09iamVjdC0+dmlzaXRBZGRpdGlvbmFsQ2hpbGRyZW4odmlzaXRv
cik7XG4iKSBpZiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntKU0N1c3RvbU1hcmtG
dW5jdGlvbn07CisgICAgICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntS
ZXBvcnRFeHRyYU1lbW9yeUNvc3R9KSB7CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwg
IiAgICB2aXNpdG9yLnJlcG9ydEV4dHJhTWVtb3J5VmlzaXRlZCh0aGlzT2JqZWN0LT53cmFwcGVk
KCkubWVtb3J5Q29zdCgpKTtcbiIpOwotICAgICAgICAgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+eyJSZXBvcnRFeHRlcm5hbE1lbW9yeUNvc3QifSkgezsKKyAgICAgICAg
ICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntSZXBvcnRFeHRlcm5hbE1l
bW9yeUNvc3R9KSB7OwogICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiI2lmIEVO
QUJMRShSRVNPVVJDRV9VU0FHRSlcbiIpOwogICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250
ZW50LCAiICAgIHZpc2l0b3IucmVwb3J0RXh0ZXJuYWxNZW1vcnlWaXNpdGVkKHRoaXNPYmplY3Qt
PndyYXBwZWQoKS5leHRlcm5hbE1lbW9yeUNvc3QoKSk7XG4iKTsKICAgICAgICAgICAgICAgICBw
dXNoKEBpbXBsQ29udGVudCwgIiNlbmRpZlxuIik7CkBAIC0zNTY2LDcgKzM0NzUsNyBAQCBFTkQK
ICAgICAgICAgaWYgKCRudW1DYWNoZWRBdHRyaWJ1dGVzID4gMCkgewogICAgICAgICAgICAgZm9y
ZWFjaCAoQHskaW50ZXJmYWNlLT5hdHRyaWJ1dGVzfSkgewogICAgICAgICAgICAgICAgIG15ICRh
dHRyaWJ1dGUgPSAkXzsKLSAgICAgICAgICAgICAgICBpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ2FjaGVkQXR0cmlidXRlIn0pIHsKKyAgICAgICAgICAg
ICAgICBpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDYWNo
ZWRBdHRyaWJ1dGV9KSB7CiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAi
ICAgIHZpc2l0b3IuYXBwZW5kKCZ0aGlzT2JqZWN0LT5tXyIgLiAkYXR0cmlidXRlLT5zaWduYXR1
cmUtPm5hbWUgLiAiKTtcbiIpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KQEAg
LTM1ODUsMTIgKzM0OTQsMTAgQEAgRU5ECiAgICAgIyBDYWNoZWQgYXR0cmlidXRlcyBhcmUgaW5k
ZWVkIGFsbG93ZWQgd2hlbiB0aGVyZSBpcyBhIGN1c3RvbSBtYXJrL3Zpc2l0Q2hpbGRyZW4gZnVu
Y3Rpb24uCiAgICAgIyBUaGUgY3VzdG9tIGZ1bmN0aW9uIG11c3QgbWFrZSBzdXJlIHRvIGFjY291
bnQgZm9yIHRoZSBjYWNoZWQgYXR0cmlidXRlLgogICAgICMgVW5jb21tZW50IHRoZSBiZWxvdyBs
aW5lIHRvIHRlbXBvcmFyaWx5IGVuZm9yY2UgZ2VuZXJhdGVkIG1hcmsgZnVuY3Rpb25zIHdoZW4g
Y2FjaGVkIGF0dHJpYnV0ZXMgYXJlIHByZXNlbnQuCi0gICAgIyBkaWUgIkNhbid0IGdlbmVyYXRl
IGJpbmRpbmcgZm9yIGNsYXNzIHdpdGggY2FjaGVkIGF0dHJpYnV0ZSBhbmQgY3VzdG9tIG1hcmsu
IiBpZiAoKCRudW1DYWNoZWRBdHRyaWJ1dGVzID4gMCkgYW5kICgkaW50ZXJmYWNlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPnsiSlNDdXN0b21NYXJrRnVuY3Rpb24ifSkpOworICAgICMgZGllICJDYW4n
dCBnZW5lcmF0ZSBiaW5kaW5nIGZvciBjbGFzcyB3aXRoIGNhY2hlZCBhdHRyaWJ1dGUgYW5kIGN1
c3RvbSBtYXJrLiIgaWYgJG51bUNhY2hlZEF0dHJpYnV0ZXMgPiAwIGFuZCAkaW50ZXJmYWNlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPntKU0N1c3RvbU1hcmtGdW5jdGlvbn07CiAKICAgICBpZiAoJGlu
ZGV4ZWRHZXR0ZXJGdW5jdGlvbikgewotICAgICAgICBpZiAoJGluZGV4ZWRHZXR0ZXJGdW5jdGlv
bi0+c2lnbmF0dXJlLT50eXBlIGVxICJET01TdHJpbmciKSB7Ci0gICAgICAgICAgICAkaW1wbElu
Y2x1ZGVzeyJVUkwuaCJ9ID0gMTsKLSAgICAgICAgfQorICAgICAgICAkaW1wbEluY2x1ZGVzeyJV
UkwuaCJ9ID0gMSBpZiAkaW5kZXhlZEdldHRlckZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUgZXEg
IkRPTVN0cmluZyI7CiAgICAgICAgIGlmICgkaW50ZXJmYWNlTmFtZSA9fiAvXkhUTUxcdypDb2xs
ZWN0aW9uJC8gb3IgJGludGVyZmFjZU5hbWUgZXEgIlJhZGlvTm9kZUxpc3QiKSB7CiAgICAgICAg
ICAgICAkaW1wbEluY2x1ZGVzeyJKU05vZGUuaCJ9ID0gMTsKICAgICAgICAgICAgICRpbXBsSW5j
bHVkZXN7Ik5vZGUuaCJ9ID0gMTsKQEAgLTM2ODAsNyArMzU4Nyw3IEBAIEVORAogICAgICAgICBw
dXNoKEBpbXBsQ29udGVudCwgIn1cblxuIik7CiAgICAgfQogCi0gICAgaWYgKFNob3VsZEdlbmVy
YXRlV3JhcHBlck93bmVyQ29kZSgkaGFzUGFyZW50LCAkaW50ZXJmYWNlKSAmJiAhJGludGVyZmFj
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQ3VzdG9tRmluYWxpemUifSkgeworICAgIGlmIChT
aG91bGRHZW5lcmF0ZVdyYXBwZXJPd25lckNvZGUoJGhhc1BhcmVudCwgJGludGVyZmFjZSkgJiYg
ISRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0pTQ3VzdG9tRmluYWxpemV9KSB7CiAg
ICAgICAgIHB1c2goQGltcGxDb250ZW50LCAidm9pZCBKUyR7aW50ZXJmYWNlTmFtZX1Pd25lcjo6
ZmluYWxpemUoSlNDOjpIYW5kbGU8SlNDOjpVbmtub3duPiBoYW5kbGUsIHZvaWQqIGNvbnRleHQp
XG4iKTsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ7XG4iKTsKICAgICAgICAgcHVzaChA
aW1wbENvbnRlbnQsICIgICAgYXV0byoganMke2ludGVyZmFjZU5hbWV9ID0ganNDYXN0PEpTJHtp
bnRlcmZhY2VOYW1lfSo+KGhhbmRsZS5zbG90KCktPmFzQ2VsbCgpKTtcbiIpOwpAQCAtMzcyOSw3
ICszNjM2LDcgQEAgRU5ECiAgICAgUkVMRUFTRV9BU1NFUlQoYWN0dWFsVlRhYmxlUG9pbnRlciA9
PSBleHBlY3RlZFZUYWJsZVBvaW50ZXIpOwogI2VuZGlmCiBFTkQKLSAgICAgICAgcHVzaChAaW1w
bENvbnRlbnQsIDw8RU5EKSBpZiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW1w
bGVtZW50YXRpb25MYWNrc1ZUYWJsZSJ9OworICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgPDxF
TkQpIGlmICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0ltcGxlbWVudGF0aW9uTGFj
a3NWVGFibGV9OwogI2lmIENPTVBJTEVSKENMQU5HKQogICAgIC8vIElmIHlvdSBoaXQgdGhpcyBm
YWlsdXJlIHRoZSBpbnRlcmZhY2UgZGVmaW5pdGlvbiBoYXMgdGhlIEltcGxlbWVudGF0aW9uTGFj
a3NWVGFibGUKICAgICAvLyBhdHRyaWJ1dGUuIFlvdSBzaG91bGQgcmVtb3ZlIHRoYXQgYXR0cmli
dXRlLiBJZiB0aGUgY2xhc3MgaGFzIHN1YmNsYXNzZXMKQEAgLTM3MzgsNyArMzY0NSw3IEBAIEVO
RAogICAgIHN0YXRpY19hc3NlcnQoIV9faXNfcG9seW1vcnBoaWMoJGltcGxUeXBlKSwgIiR7aW1w
bFR5cGV9IGlzIHBvbHltb3JwaGljIGJ1dCB0aGUgSURMIGNsYWltcyBpdCBpcyBub3QiKTsKICNl
bmRpZgogRU5ECi0gICAgICAgIHB1c2goQGltcGxDb250ZW50LCA8PEVORCkgaWYgJGludGVyZmFj
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IlJlcG9ydEV4dHJhTWVtb3J5Q29zdCJ9OworICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudCwgPDxFTkQpIGlmICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmli
dXRlcy0+e1JlcG9ydEV4dHJhTWVtb3J5Q29zdH07CiAgICAgZ2xvYmFsT2JqZWN0LT52bSgpLmhl
YXAucmVwb3J0RXh0cmFNZW1vcnlBbGxvY2F0ZWQoaW1wbC0+bWVtb3J5Q29zdCgpKTsKIEVORAog
CkBAIC0zNzUxLDcgKzM2NTgsNyBAQCBFTkQKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ9
XG5cbiIpOwogICAgIH0KIAotICAgIGlmIChTaG91bGRHZW5lcmF0ZVRvV3JhcHBlZCgkaGFzUGFy
ZW50LCAkaW50ZXJmYWNlKSBhbmQgISRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJK
U0N1c3RvbVRvTmF0aXZlT2JqZWN0In0pIHsKKyAgICBpZiAoU2hvdWxkR2VuZXJhdGVUb1dyYXBw
ZWQoJGhhc1BhcmVudCwgJGludGVyZmFjZSkgYW5kICEkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJp
YnV0ZXMtPntKU0N1c3RvbVRvTmF0aXZlT2JqZWN0fSkgewogICAgICAgICBwdXNoKEBpbXBsQ29u
dGVudCwgIiRpbXBsVHlwZSogJHtjbGFzc05hbWV9Ojp0b1dyYXBwZWQoSlNDOjpKU1ZhbHVlIHZh
bHVlKVxuIik7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAie1xuIik7CiAgICAgICAgIHB1
c2goQGltcGxDb250ZW50LCAiICAgIGlmIChhdXRvKiB3cmFwcGVyID0gIiAuIEdldENhc3RpbmdI
ZWxwZXJGb3JUaGlzT2JqZWN0KCRpbnRlcmZhY2UpIC4gIih2YWx1ZSkpXG4iKTsKQEAgLTM4MDIs
NyArMzcwOSw3IEBAIHN1YiBHZW5lcmF0ZUZ1bmN0aW9uQ2FzdGVkVGhpcwogewogICAgIG15ICgk
aW50ZXJmYWNlLCAkY2xhc3NOYW1lLCAkZnVuY3Rpb24sICRzaG91bGRSZWplY3RQcm9taXNlKSA9
IEBfOwogCi0gICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21Q
cm94eVRvSlNPYmplY3QifSkgeworICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPntDdXN0b21Qcm94eVRvSlNPYmplY3R9KSB7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50
LCAiICAgICRjbGFzc05hbWUqIGNhc3RlZFRoaXMgPSB0byR7Y2xhc3NOYW1lfShzdGF0ZS0+dGhp
c1ZhbHVlKCkudG9UaGlzKHN0YXRlLCBOb3RTdHJpY3RNb2RlKSk7XG4iKTsKICAgICAgICAgcHVz
aChAaW1wbENvbnRlbnQsICIgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSlcbiIpOwogICAg
ICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3Io
c3RhdGUsIHRocm93U2NvcGUpO1xuIik7CkBAIC0zOTQ5LDExICszODU2LDExIEBAIHN1YiBHZW5l
cmF0ZVBhcmFtZXRlcnNDaGVjawogICAgIG15ICR2aXNpYmxlSW50ZXJmYWNlTmFtZSA9ICRjb2Rl
R2VuZXJhdG9yLT5HZXRWaXNpYmxlSW50ZXJmYWNlTmFtZSgkaW50ZXJmYWNlKTsKICAgICBteSBA
YXJndW1lbnRzOwogICAgIG15ICRmdW5jdGlvbk5hbWU7Ci0gICAgbXkgJGltcGxlbWVudGVkQnkg
PSAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkltcGxlbWVudGVk
QnkifTsKKyAgICBteSAkaW1wbGVtZW50ZWRCeSA9ICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRl
bmRlZEF0dHJpYnV0ZXMtPntJbXBsZW1lbnRlZEJ5fTsKICAgICBteSAkbnVtUGFyYW1ldGVycyA9
IEB7JGZ1bmN0aW9uLT5wYXJhbWV0ZXJzfTsKIAogICAgIGlmICgkaW1wbGVtZW50ZWRCeSkgewot
ICAgICAgICBBZGRUb0ltcGxJbmNsdWRlcygiJHtpbXBsZW1lbnRlZEJ5fS5oIiwgJGZ1bmN0aW9u
LT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDb25kaXRpb25hbCJ9KTsKKyAgICAg
ICAgQWRkVG9JbXBsSW5jbHVkZXMoIiR7aW1wbGVtZW50ZWRCeX0uaCIsICRmdW5jdGlvbi0+c2ln
bmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDb25kaXRpb25hbH0pOwogICAgICAgICB1bnNo
aWZ0KEBhcmd1bWVudHMsICJpbXBsIikgaWYgISRmdW5jdGlvbi0+aXNTdGF0aWM7CiAgICAgICAg
ICRmdW5jdGlvbk5hbWUgPSAiV2ViQ29yZTo6JHtpbXBsZW1lbnRlZEJ5fTo6JHtmdW5jdGlvbklt
cGxlbWVudGF0aW9uTmFtZX0iOwogICAgIH0gZWxzaWYgKCRmdW5jdGlvbi0+aXNTdGF0aWMpIHsK
QEAgLTM5NjUsMTAgKzM4NzIsMTAgQEAgc3ViIEdlbmVyYXRlUGFyYW1ldGVyc0NoZWNrCiAgICAg
fQogCiAgICAgbXkgJHF1b3RlZEZ1bmN0aW9uTmFtZTsKLSAgICBpZiAoISRmdW5jdGlvbi0+c2ln
bmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ29uc3RydWN0b3IifSkgeworICAgIGlmICgh
JGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0NvbnN0cnVjdG9yfSkg
ewogICAgICAgICBteSAkbmFtZSA9ICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1lOwogICAgICAg
ICAkcXVvdGVkRnVuY3Rpb25OYW1lID0gIlwiJG5hbWVcIiI7Ci0gICAgICAgIHB1c2goQGFyZ3Vt
ZW50cywgR2VuZXJhdGVDYWxsV2l0aCgkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57IkNhbGxXaXRoIn0sIFxAJG91dHB1dEFycmF5LCAiSlNWYWx1ZTo6ZW5jb2RlKGpz
VW5kZWZpbmVkKCkpIiwgJGZ1bmN0aW9uKSk7CisgICAgICAgIHB1c2goQGFyZ3VtZW50cywgR2Vu
ZXJhdGVDYWxsV2l0aCgkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
Q2FsbFdpdGh9LCBcQCRvdXRwdXRBcnJheSwgIkpTVmFsdWU6OmVuY29kZShqc1VuZGVmaW5lZCgp
KSIsICRmdW5jdGlvbikpOwogICAgIH0gZWxzZSB7CiAgICAgICAgICRxdW90ZWRGdW5jdGlvbk5h
bWUgPSAibnVsbHB0ciI7CiAgICAgfQpAQCAtNDA0MCw3ICszOTQ3LDcgQEAgc3ViIEdlbmVyYXRl
UGFyYW1ldGVyc0NoZWNrCiAgICAgICAgICAgICB9CiAgICAgICAgICAgICAkdmFsdWUgPSAiV1RG
TW92ZSgkbmFtZSkiOwogICAgICAgICB9IGVsc2lmICgkcGFyYW1ldGVyLT5pc1ZhcmlhZGljKSB7
Ci0gICAgICAgICAgICBBZGRUb0ltcGxJbmNsdWRlcygiSlMke3R5cGV9LmgiLCAkZnVuY3Rpb24t
PnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNvbmRpdGlvbmFsIn0pIHVubGVzcyAk
Y29kZUdlbmVyYXRvci0+U2tpcEluY2x1ZGVIZWFkZXIoJHR5cGUpIG9yICEkY29kZUdlbmVyYXRv
ci0+SXNXcmFwcGVyVHlwZSgkdHlwZSk7CisgICAgICAgICAgICBBZGRUb0ltcGxJbmNsdWRlcygi
SlMke3R5cGV9LmgiLCAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
Q29uZGl0aW9uYWx9KSB1bmxlc3MgJGNvZGVHZW5lcmF0b3ItPlNraXBJbmNsdWRlSGVhZGVyKCR0
eXBlKSBvciAhJGNvZGVHZW5lcmF0b3ItPklzV3JhcHBlclR5cGUoJHR5cGUpOwogICAgICAgICAg
ICAgbXkgKCR3cmFwcGVyVHlwZSwgJHdyYXBwZWRUeXBlKSA9IEdldFZhcmlhZGljVHlwZSgkaW50
ZXJmYWNlLCAkdHlwZSk7CiAgICAgICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgYXV0
byAkbmFtZSA9IHRvQXJndW1lbnRzPFZhcmlhZGljSGVscGVyPCR3cmFwcGVyVHlwZSwgJHdyYXBw
ZWRUeXBlPj4oKnN0YXRlLCAkYXJndW1lbnRJbmRleCk7XG4iKTsKIApAQCAtNDEwNywxMyArNDAx
NCwxMSBAQCBzdWIgR2VuZXJhdGVQYXJhbWV0ZXJzQ2hlY2sKICAgICAgICAgICAgICAgICAkaW1w
bEluY2x1ZGVzeyI8cnVudGltZS9FcnJvci5oPiJ9ID0gMTsKICAgICAgICAgICAgICAgICBteSAk
Y2hlY2tlZEFyZ3VtZW50ID0gInN0YXRlLT4kYXJndW1lbnRMb29rdXBNZXRob2QoJGFyZ3VtZW50
SW5kZXgpIjsKICAgICAgICAgICAgICAgICBteSAkdW5jaGVja2VkQXJndW1lbnQgPSAic3RhdGUt
PnVuY2hlY2tlZEFyZ3VtZW50KCRhcmd1bWVudEluZGV4KSI7Ci0gICAgICAgICAgICAgICAgbXkg
KCRuYXRpdmVWYWx1ZSwgJG1heVRocm93RXhjZXB0aW9uKSA9IEpTVmFsdWVUb05hdGl2ZSgkaW50
ZXJmYWNlLCAkcGFyYW1ldGVyLCAkdW5jaGVja2VkQXJndW1lbnQsICRmdW5jdGlvbi0+c2lnbmF0
dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ29uZGl0aW9uYWwifSk7CisgICAgICAgICAgICAg
ICAgbXkgKCRuYXRpdmVWYWx1ZSwgJG1heVRocm93RXhjZXB0aW9uKSA9IEpTVmFsdWVUb05hdGl2
ZSgkaW50ZXJmYWNlLCAkcGFyYW1ldGVyLCAkdW5jaGVja2VkQXJndW1lbnQsICRmdW5jdGlvbi0+
c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDb25kaXRpb25hbH0pOwogICAgICAgICAg
ICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICAkbmF0aXZlVHlwZSAkbmFtZSA9IG51bGxw
dHI7XG4iKTsKICAgICAgICAgICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgaWYgKCEk
Y2hlY2tlZEFyZ3VtZW50LmlzVW5kZWZpbmVkT3JOdWxsKCkpIHtcbiIpOwogICAgICAgICAgICAg
ICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICAgICAgJG5hbWUgPSAkbmF0aXZlVmFsdWU7XG4i
KTsKLSAgICAgICAgICAgICAgICBpZiAoJG1heVRocm93RXhjZXB0aW9uKSB7Ci0gICAgICAgICAg
ICAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElP
Tih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTtcbiIpOwotICAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgICAgIFJFVFVSTl9JRl9F
WENFUFRJT04odGhyb3dTY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7XG4iKSBpZiAkbWF5VGhyb3dF
eGNlcHRpb247CiAgICAgICAgICAgICAgICAgcHVzaChAJG91dHB1dEFycmF5LCAiICAgICAgICBp
ZiAoVU5MSUtFTFkoISRuYW1lKSlcbiIpOwogICAgICAgICAgICAgICAgIHB1c2goQCRvdXRwdXRB
cnJheSwgIiAgICAgICAgICAgIHJldHVybiB0aHJvd0FyZ3VtZW50VHlwZUVycm9yKCpzdGF0ZSwg
dGhyb3dTY29wZSwgJGFyZ3VtZW50SW5kZXgsIFwiJG5hbWVcIiwgXCIkdmlzaWJsZUludGVyZmFj
ZU5hbWVcIiwgJHF1b3RlZEZ1bmN0aW9uTmFtZSwgXCIkdHlwZVwiKTtcbiIpOwogICAgICAgICAg
ICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICB9XG4iKTsKQEAgLTQxMjQsNyArNDAyOSw3
IEBAIHN1YiBHZW5lcmF0ZVBhcmFtZXRlcnNDaGVjawogCiAgICAgICAgICAgICAgICAgICAgICMg
U3RyaW5nLXJlbGF0ZWQgb3B0aW1pemF0aW9ucy4KICAgICAgICAgICAgICAgICAgICAgaWYgKCRj
b2RlR2VuZXJhdG9yLT5Jc1N0cmluZ1R5cGUoJHR5cGUpKSB7Ci0gICAgICAgICAgICAgICAgICAg
ICAgICBteSAkdXNlQXRvbWljU3RyaW5nID0gJHBhcmFtZXRlci0+ZXh0ZW5kZWRBdHRyaWJ1dGVz
LT57IkF0b21pY1N0cmluZyJ9OworICAgICAgICAgICAgICAgICAgICAgICAgbXkgJHVzZUF0b21p
Y1N0cmluZyA9ICRwYXJhbWV0ZXItPmV4dGVuZGVkQXR0cmlidXRlcy0+e0F0b21pY1N0cmluZ307
CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGRlZmF1bHRWYWx1ZSBlcSAibnVsbCIpIHsK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZGVmYXVsdFZhbHVlID0gJHVzZUF0b21pY1N0
cmluZyA/ICJudWxsQXRvbSIgOiAiU3RyaW5nKCkiOwogICAgICAgICAgICAgICAgICAgICAgICAg
fSBlbHNpZiAoJGRlZmF1bHRWYWx1ZSBlcSAiXCJcIiIpIHsKQEAgLTQxNTAsMTIgKzQwNTUsMTAg
QEAgc3ViIEdlbmVyYXRlUGFyYW1ldGVyc0NoZWNrCiAgICAgICAgICAgICAgICAgICAgICRpbm5l
ciA9ICJzdGF0ZS0+JGFyZ3VtZW50TG9va3VwTWV0aG9kKCRhcmd1bWVudEluZGV4KSI7CiAgICAg
ICAgICAgICAgICAgfQogCi0gICAgICAgICAgICAgICAgbXkgKCRuYXRpdmVWYWx1ZSwgJG1heVRo
cm93RXhjZXB0aW9uKSA9IEpTVmFsdWVUb05hdGl2ZSgkaW50ZXJmYWNlLCAkcGFyYW1ldGVyLCAk
aW5uZXIsICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ29uZGl0
aW9uYWwifSk7CisgICAgICAgICAgICAgICAgbXkgKCRuYXRpdmVWYWx1ZSwgJG1heVRocm93RXhj
ZXB0aW9uKSA9IEpTVmFsdWVUb05hdGl2ZSgkaW50ZXJmYWNlLCAkcGFyYW1ldGVyLCAkaW5uZXIs
ICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDb25kaXRpb25hbH0p
OwogICAgICAgICAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICBhdXRvICRuYW1lID0g
JHtvdXRlcn0ke25hdGl2ZVZhbHVlfTtcbiIpOwogICAgICAgICAgICAgICAgICR2YWx1ZSA9ICJX
VEZNb3ZlKCRuYW1lKSI7Ci0gICAgICAgICAgICAgICAgaWYgKCRtYXlUaHJvd0V4Y2VwdGlvbikg
ewotICAgICAgICAgICAgICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgUkVUVVJOX0lG
X0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTtcbiIpOwotICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgUkVUVVJO
X0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTtcbiIpIGlmICRtYXlU
aHJvd0V4Y2VwdGlvbjsKICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgaWYgKCRzaG91bGRQ
YXNzQnlSZWZlcmVuY2UpIHsKQEAgLTQxODgsNyArNDA5MSw3IEBAIHN1YiBHZW5lcmF0ZVJldHVy
blBhcmFtZXRlcnMKICAgICBpZiAoSXNSZXR1cm5pbmdQcm9taXNlKCRmdW5jdGlvbikpIHsKICAg
ICAgICAgcHVzaChAYXJndW1lbnRzLCAiV1RGTW92ZShwcm9taXNlKSIpOwogICAgIH0KLSAgICBw
dXNoKEBhcmd1bWVudHMsICJlYyIpIGlmICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiUmFpc2VzRXhjZXB0aW9uIn0gfHwgJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4
dGVuZGVkQXR0cmlidXRlcy0+eyJSYWlzZXNFeGNlcHRpb25XaXRoTWVzc2FnZSJ9OworICAgIHB1
c2goQGFyZ3VtZW50cywgImVjIikgaWYgJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0
cmlidXRlcy0+e01heVRocm93TGVnYWN5RXhjZXB0aW9ufSB8fCAkZnVuY3Rpb24tPnNpZ25hdHVy
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57TWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRoTWVzc2Fn
ZX07CiAgICAgcmV0dXJuIEBhcmd1bWVudHM7CiB9CiAKQEAgLTQyMTcsMjIgKzQxMjAsMTUgQEAg
c3ViIEdlbmVyYXRlQ2FsbGJhY2tIZWFkZXIKICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAg
ICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyAkY2xhc3NOYW1lKGNhbGxiYWNrLCBnbG9iYWxPYmpl
Y3QpKTtcbiIpOwogICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgfVxuXG4iKTsKIAotICAg
ICMgU2NyaXB0RXhlY3V0aW9uQ29udGV4dAogICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAg
dmlydHVhbCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkg
Y29uc3QgeyByZXR1cm4gQ29udGV4dERlc3RydWN0aW9uT2JzZXJ2ZXI6OnNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQoKTsgfVxuXG4iKTsKIAotICAgICMgRGVzdHJ1Y3RvcgogICAgIHB1c2goQGhlYWRl
ckNvbnRlbnQsICIgICAgdmlydHVhbCB+JGNsYXNzTmFtZSgpO1xuIik7CiAKICAgICBwdXNoKEBo
ZWFkZXJDb250ZW50LCAiICAgICIgLiBHZXRKU0NhbGxiYWNrRGF0YVR5cGUoJGludGVyZmFjZSkg
LiAiKiBjYWxsYmFja0RhdGEoKSB7IHJldHVybiBtX2RhdGE7IH1cbiIpOwogCi0gICAgIyBDb25z
dHJ1Y3RvciBvYmplY3QgZ2V0dGVyLgotICAgIGlmIChAeyRpbnRlcmZhY2UtPmNvbnN0YW50c30p
IHsKLSAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICBzdGF0aWMgSlNDOjpKU1ZhbHVl
IGdldENvbnN0cnVjdG9yKEpTQzo6Vk0mLCBjb25zdCBKU0M6OkpTR2xvYmFsT2JqZWN0Kik7XG4i
KTsKLSAgICB9CisgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICBzdGF0aWMgSlNDOjpKU1Zh
bHVlIGdldENvbnN0cnVjdG9yKEpTQzo6Vk0mLCBjb25zdCBKU0M6OkpTR2xvYmFsT2JqZWN0Kik7
XG4iKSBpZiBAeyRpbnRlcmZhY2UtPmNvbnN0YW50c307CiAKLSAgICBpZiAoJGludGVyZmFjZS0+
ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNhbGxiYWNrTmVlZHNPcGVyYXRvckVxdWFsIn0pIHsKLSAg
ICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICB2aXJ0dWFsIGJvb2wgb3BlcmF0b3I9PShj
b25zdCAkaW50ZXJmYWNlTmFtZSYpIGNvbnN0O1xuXG4iKQotICAgIH0KKyAgICBwdXNoKEBoZWFk
ZXJDb250ZW50LCAiICAgIHZpcnR1YWwgYm9vbCBvcGVyYXRvcj09KGNvbnN0ICRpbnRlcmZhY2VO
YW1lJikgY29uc3Q7XG5cbiIpIGlmICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0Nh
bGxiYWNrTmVlZHNPcGVyYXRvckVxdWFsfTsKIAogICAgICMgRnVuY3Rpb25zCiAgICAgbXkgJG51
bUZ1bmN0aW9ucyA9IEB7JGludGVyZmFjZS0+ZnVuY3Rpb25zfTsKQEAgLTQyODksNyArNDE4NSw3
IEBAIHN1YiBHZW5lcmF0ZUNhbGxiYWNrSW1wbGVtZW50YXRpb24KIAogICAgICMgQ29uc3RydWN0
b3IKICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiR7Y2xhc3NOYW1lfTo6JHtjbGFzc05hbWV9KEpT
T2JqZWN0KiBjYWxsYmFjaywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdClcbiIpOwot
ICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ2FsbGJhY2tOZWVkc09w
ZXJhdG9yRXF1YWwifSkgeworICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMt
PntDYWxsYmFja05lZWRzT3BlcmF0b3JFcXVhbH0pIHsKICAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICIgICAgOiAke2ludGVyZmFjZU5hbWV9KCR7Y2xhc3NOYW1lfVR5cGUpXG4iKTsKICAgICB9
IGVsc2UgewogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICA6ICR7aW50ZXJmYWNlTmFt
ZX0oKVxuIik7CkBAIC00MzE0LDcgKzQyMTAsNyBAQCBzdWIgR2VuZXJhdGVDYWxsYmFja0ltcGxl
bWVudGF0aW9uCiAgICAgcHVzaChAaW1wbENvbnRlbnQsICIjZW5kaWZcbiIpOwogICAgIHB1c2go
QGltcGxDb250ZW50LCAifVxuXG4iKTsKIAotICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiQ2FsbGJhY2tOZWVkc09wZXJhdG9yRXF1YWwifSkgeworICAgIGlmICgkaW50
ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDYWxsYmFja05lZWRzT3BlcmF0b3JFcXVhbH0p
IHsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJib29sICR7Y2xhc3NOYW1lfTo6b3BlcmF0
b3I9PShjb25zdCAke2ludGVyZmFjZU5hbWV9JiBvdGhlcikgY29uc3RcbiIpOwogICAgICAgICBw
dXNoKEBpbXBsQ29udGVudCwgIntcbiIpOwogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAg
ICBpZiAob3RoZXIudHlwZSgpICE9IHR5cGUoKSlcbiIpOwpAQCAtNDM0NCwyOSArNDI0MCwyMyBA
QCBzdWIgR2VuZXJhdGVDYWxsYmFja0ltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICBwdXNoKEBo
YXNoVmFsdWUyLCAiMCIpOwogICAgICAgICAgICAgcHVzaChAaGFzaFNwZWNpYWxzLCAiRG9udERl
bGV0ZSB8IFJlYWRPbmx5IHwgQ29uc3RhbnRJbnRlZ2VyIik7CiAKLSAgICAgICAgICAgIG15ICRp
bXBsZW1lbnRlZEJ5ID0gJGNvbnN0YW50LT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW1wbGVtZW50
ZWRCeSJ9OwotICAgICAgICAgICAgaWYgKCRpbXBsZW1lbnRlZEJ5KSB7Ci0gICAgICAgICAgICAg
ICAgJGltcGxJbmNsdWRlc3siJHtpbXBsZW1lbnRlZEJ5fS5oIn0gPSAxOwotICAgICAgICAgICAg
fQotICAgICAgICAgICAgbXkgJGNvbmRpdGlvbmFsID0gJGNvbnN0YW50LT5leHRlbmRlZEF0dHJp
YnV0ZXMtPnsiQ29uZGl0aW9uYWwifTsKLSAgICAgICAgICAgIGlmICgkY29uZGl0aW9uYWwpIHsK
LSAgICAgICAgICAgICAgICAkY29uZGl0aW9uYWxzeyRuYW1lfSA9ICRjb25kaXRpb25hbDsKLSAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIG15ICRpbXBsZW1lbnRlZEJ5ID0gJGNvbnN0YW50LT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPntJbXBsZW1lbnRlZEJ5fTsKKyAgICAgICAgICAgICRpbXBsSW5j
bHVkZXN7IiR7aW1wbGVtZW50ZWRCeX0uaCJ9ID0gMSBpZiAkaW1wbGVtZW50ZWRCeTsKKworICAg
ICAgICAgICAgbXkgJGNvbmRpdGlvbmFsID0gJGNvbnN0YW50LT5leHRlbmRlZEF0dHJpYnV0ZXMt
PntDb25kaXRpb25hbH07CisgICAgICAgICAgICAkY29uZGl0aW9uYWxzeyRuYW1lfSA9ICRjb25k
aXRpb25hbCBpZiAkY29uZGl0aW9uYWw7CiAKICAgICAgICAgICAgICRoYXNoU2l6ZSsrOwogICAg
ICAgICB9Ci0gICAgICAgICRvYmplY3QtPkdlbmVyYXRlSGFzaFRhYmxlKCRoYXNoTmFtZSwgJGhh
c2hTaXplLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcQGhhc2hLZXlzLCBc
QGhhc2hTcGVjaWFscywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXEBoYXNo
VmFsdWUxLCBcQGhhc2hWYWx1ZTIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwlY29uZGl0aW9uYWxzLCAxKSBpZiAkaGFzaFNpemUgPiAwOworICAgICAgICAkb2JqZWN0LT5H
ZW5lcmF0ZUhhc2hUYWJsZSgkaGFzaE5hbWUsICRoYXNoU2l6ZSwgXEBoYXNoS2V5cywgXEBoYXNo
U3BlY2lhbHMsIFxAaGFzaFZhbHVlMSwgXEBoYXNoVmFsdWUyLCBcJWNvbmRpdGlvbmFscywgMSkg
aWYgJGhhc2hTaXplID4gMDsKIAotICAgICAgIHB1c2goQGltcGxDb250ZW50LCAkY29kZUdlbmVy
YXRvci0+R2VuZXJhdGVDb21waWxlVGltZUNoZWNrRm9yRW51bXNJZk5lZWRlZCgkaW50ZXJmYWNl
KSk7CisgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAkY29kZUdlbmVyYXRvci0+R2VuZXJhdGVD
b21waWxlVGltZUNoZWNrRm9yRW51bXNJZk5lZWRlZCgkaW50ZXJmYWNlKSk7CiAKLSAgICAgICBH
ZW5lcmF0ZUNvbnN0cnVjdG9yRGVmaW5pdGlvbnMoXEBpbXBsQ29udGVudCwgJGNsYXNzTmFtZSwg
IiIsICR2aXNpYmxlSW50ZXJmYWNlTmFtZSwgJGludGVyZmFjZSk7CisgICAgICAgIEdlbmVyYXRl
Q29uc3RydWN0b3JEZWZpbml0aW9ucyhcQGltcGxDb250ZW50LCAkY2xhc3NOYW1lLCAiIiwgJHZp
c2libGVJbnRlcmZhY2VOYW1lLCAkaW50ZXJmYWNlKTsKIAotICAgICAgIHB1c2goQGltcGxDb250
ZW50LCAiSlNWYWx1ZSAke2NsYXNzTmFtZX06OmdldENvbnN0cnVjdG9yKFZNJiB2bSwgY29uc3Qg
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdClcbntcbiIpOwotICAgICAgIHB1c2goQGltcGxD
b250ZW50LCAiICAgIHJldHVybiBnZXRET01Db25zdHJ1Y3Rvcjwke2NsYXNzTmFtZX1Db25zdHJ1
Y3Rvcj4odm0sICpqc0Nhc3Q8Y29uc3QgSlNET01HbG9iYWxPYmplY3QqPihnbG9iYWxPYmplY3Qp
KTtcbiIpOwotICAgICAgIHB1c2goQGltcGxDb250ZW50LCAifVxuXG4iKTsKKyAgICAgICAgcHVz
aChAaW1wbENvbnRlbnQsICJKU1ZhbHVlICR7Y2xhc3NOYW1lfTo6Z2V0Q29uc3RydWN0b3IoVk0m
IHZtLCBjb25zdCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KVxue1xuIik7CisgICAgICAg
IHB1c2goQGltcGxDb250ZW50LCAiICAgIHJldHVybiBnZXRET01Db25zdHJ1Y3Rvcjwke2NsYXNz
TmFtZX1Db25zdHJ1Y3Rvcj4odm0sICpqc0Nhc3Q8Y29uc3QgSlNET01HbG9iYWxPYmplY3QqPihn
bG9iYWxPYmplY3QpKTtcbiIpOworICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIn1cblxuIik7
CiAgICAgfQogCiAgICAgIyBGdW5jdGlvbnMuCkBAIC00Mzc1LDcgKzQyNjUsNyBAQCBzdWIgR2Vu
ZXJhdGVDYWxsYmFja0ltcGxlbWVudGF0aW9uCiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAi
XG4vLyBGdW5jdGlvbnNcbiIpOwogICAgICAgICBmb3JlYWNoIG15ICRmdW5jdGlvbiAoQHskaW50
ZXJmYWNlLT5mdW5jdGlvbnN9KSB7CiAgICAgICAgICAgICBteSBAcGFyYW1zID0gQHskZnVuY3Rp
b24tPnBhcmFtZXRlcnN9OwotICAgICAgICAgICAgaWYgKCRmdW5jdGlvbi0+c2lnbmF0dXJlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tIn0gfHwgR2V0TmF0aXZlVHlwZSgkaW50ZXJmYWNl
LCAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlwZSkgbmUgImJvb2wiKSB7CisgICAgICAgICAgICBp
ZiAoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0N1c3RvbX0gfHwg
R2V0TmF0aXZlVHlwZSgkaW50ZXJmYWNlLCAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlwZSkgbmUg
ImJvb2wiKSB7CiAgICAgICAgICAgICAgICAgbmV4dDsKICAgICAgICAgICAgIH0KIApAQCAtNDQx
MSw3ICs0MzAxLDcgQEAgc3ViIEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlvbgogCiAgICAg
ICAgICAgICBteSAkcHJvcGVydHlUb0xvb2t1cCA9ICJJZGVudGlmaWVyOjpmcm9tU3RyaW5nKHN0
YXRlLCBcIiR7ZnVuY3Rpb25OYW1lfVwiKSI7CiAgICAgICAgICAgICBteSAkaW52b2tlTWV0aG9k
ID0gIkpTQ2FsbGJhY2tEYXRhOjpDYWxsYmFja1R5cGU6OkZ1bmN0aW9uT3JPYmplY3QiOwotICAg
ICAgICAgICAgaWYgKCRjb2RlR2VuZXJhdG9yLT5FeHRlbmRlZEF0dHJpYnV0ZUNvbnRhaW5zKCRp
bnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDYWxsYmFjayJ9LCAiRnVuY3Rpb25Pbmx5
IikpIHsKKyAgICAgICAgICAgIGlmICgkY29kZUdlbmVyYXRvci0+RXh0ZW5kZWRBdHRyaWJ1dGVD
b250YWlucygkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDYWxsYmFja30sICJGdW5j
dGlvbk9ubHkiKSkgewogICAgICAgICAgICAgICAgICMgRm9yIGNhbGxiYWNrIGZ1bmN0aW9ucywg
ZG8gbm90IGxvb2sgdXAgY2FsbGFibGUgcHJvcGVydHkgb24gdGhlIHVzZXIgb2JqZWN0LgogICAg
ICAgICAgICAgICAgICMgaHR0cHM6Ly9oZXljYW0uZ2l0aHViLmlvL3dlYmlkbC8jZXMtY2FsbGJh
Y2stZnVuY3Rpb24KICAgICAgICAgICAgICAgICAkaW52b2tlTWV0aG9kID0gIkpTQ2FsbGJhY2tE
YXRhOjpDYWxsYmFja1R5cGU6OkZ1bmN0aW9uIjsKQEAgLTQ0NDYsMTggKzQzMzYsMTYgQEAgc3Vi
IEdlbmVyYXRlQ2FsbGJhY2tJbXBsZW1lbnRhdGlvbgogICAgIG15ICRjb25kaXRpb25hbFN0cmlu
ZyA9ICRjb2RlR2VuZXJhdG9yLT5HZW5lcmF0ZUNvbmRpdGlvbmFsU3RyaW5nKCRpbnRlcmZhY2Up
OwogICAgIHB1c2goQGltcGxDb250ZW50LCAiXG4jZW5kaWYgLy8gJHtjb25kaXRpb25hbFN0cmlu
Z31cbiIpIGlmICRjb25kaXRpb25hbFN0cmluZzsKIAotICAgIGlmICgkaW50ZXJmYWNlLT5leHRl
bmRlZEF0dHJpYnV0ZXMtPnsiQXBwbGVDb3B5cmlnaHQifSkgewotICAgICAgICBwdXNoKEBpbXBs
Q29udGVudCwgc3BsaXQoIlxyIiwgJGVuZEFwcGxlQ29weXJpZ2h0KSk7Ci0gICAgfQorICAgIHB1
c2goQGltcGxDb250ZW50LCBzcGxpdCgiXHIiLCAkZW5kQXBwbGVDb3B5cmlnaHQpKSBpZiAkaW50
ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntBcHBsZUNvcHlyaWdodH07CiB9CiAKIHN1YiBH
ZW5lcmF0ZUltcGxlbWVudGF0aW9uRnVuY3Rpb25DYWxsKCkKIHsKICAgICBteSAoJGZ1bmN0aW9u
LCAkZnVuY3Rpb25TdHJpbmcsICRpbmRlbnQsICRzdmdQcm9wZXJ0eVR5cGUsICRpbnRlcmZhY2Up
ID0gQF87CiAKLSAgICBteSAkbm9uZGV0ZXJtaW5pc3RpYyA9ICRmdW5jdGlvbi0+c2lnbmF0dXJl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiTm9uZGV0ZXJtaW5pc3RpYyJ9OwotICAgIG15ICRyYWlz
ZXNFeGNlcHRpb25XaXRoTWVzc2FnZSA9ICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiUmFpc2VzRXhjZXB0aW9uV2l0aE1lc3NhZ2UifTsKLSAgICBteSAkcmFpc2Vz
RXhjZXB0aW9uID0gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJS
YWlzZXNFeGNlcHRpb24ifSB8fCAkcmFpc2VzRXhjZXB0aW9uV2l0aE1lc3NhZ2U7CisgICAgbXkg
JG5vbmRldGVybWluaXN0aWMgPSAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57Tm9uZGV0ZXJtaW5pc3RpY307CisgICAgbXkgJG1heVRocm93TGVnYWN5RXhjZXB0aW9u
V2l0aE1lc3NhZ2UgPSAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
TWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRoTWVzc2FnZX07CisgICAgbXkgJG1heVRocm93TGVn
YWN5RXhjZXB0aW9uID0gJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+
e01heVRocm93TGVnYWN5RXhjZXB0aW9ufSB8fCAkbWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRo
TWVzc2FnZTsKIAogICAgIGlmICgkZnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlwZSBlcSAidm9pZCIg
fHwgSXNSZXR1cm5pbmdQcm9taXNlKCRmdW5jdGlvbikpIHsKICAgICAgICAgaWYgKCRub25kZXRl
cm1pbmlzdGljKSB7CkBAIC00NDY2LDIyICs0MzU0LDIyIEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVu
dGF0aW9uRnVuY3Rpb25DYWxsKCkKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAkaW5k
ZW50IC4gIklucHV0Q3Vyc29yJiBjdXJzb3IgPSBzdGF0ZS0+bGV4aWNhbEdsb2JhbE9iamVjdCgp
LT5pbnB1dEN1cnNvcigpO1xuIik7CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgJGlu
ZGVudCAuICJpZiAoIWN1cnNvci5pc1JlcGxheWluZygpKSB7XG4iKTsKICAgICAgICAgICAgIHB1
c2goQGltcGxDb250ZW50LCAkaW5kZW50IC4gIiAgICAkZnVuY3Rpb25TdHJpbmc7XG4iKTsKLSAg
ICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAkaW5kZW50IC4gIiAgICBzZXRET01FeGNlcHRp
b24oc3RhdGUsIHRocm93U2NvcGUsIGVjKTtcbiIpIGlmICRyYWlzZXNFeGNlcHRpb247CisgICAg
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgJGluZGVudCAuICIgICAgc2V0RE9NRXhjZXB0aW9u
KHN0YXRlLCB0aHJvd1Njb3BlLCBlYyk7XG4iKSBpZiAkbWF5VGhyb3dMZWdhY3lFeGNlcHRpb247
CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgJGluZGVudCAuICJ9XG4iKTsKICAgICAg
ICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiI2Vsc2VcbiIpOwogICAgICAgICAgICAgcHVzaChA
aW1wbENvbnRlbnQsICRpbmRlbnQgLiAiJGZ1bmN0aW9uU3RyaW5nO1xuIik7Ci0gICAgICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudCwgJGluZGVudCAuICJzZXRET01FeGNlcHRpb24oc3RhdGUsIHRo
cm93U2NvcGUsIGVjKTtcbiIpIGlmICRyYWlzZXNFeGNlcHRpb247CisgICAgICAgICAgICBwdXNo
KEBpbXBsQ29udGVudCwgJGluZGVudCAuICJzZXRET01FeGNlcHRpb24oc3RhdGUsIHRocm93U2Nv
cGUsIGVjKTtcbiIpIGlmICRtYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbjsKICAgICAgICAgICAgIHB1
c2goQGltcGxDb250ZW50LCAiI2VuZGlmXG4iKTsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAg
ICAgIHB1c2goQGltcGxDb250ZW50LCAkaW5kZW50IC4gIiRmdW5jdGlvblN0cmluZztcbiIpOwot
ICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICRpbmRlbnQgLiAic2V0RE9NRXhjZXB0aW9u
KHN0YXRlLCB0aHJvd1Njb3BlLCBlYyk7XG4iKSBpZiAkcmFpc2VzRXhjZXB0aW9uOworICAgICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICRpbmRlbnQgLiAic2V0RE9NRXhjZXB0aW9uKHN0YXRl
LCB0aHJvd1Njb3BlLCBlYyk7XG4iKSBpZiAkbWF5VGhyb3dMZWdhY3lFeGNlcHRpb247CiAgICAg
ICAgIH0KIAogICAgICAgICBpZiAoJHN2Z1Byb3BlcnR5VHlwZSBhbmQgISRmdW5jdGlvbi0+aXNT
dGF0aWMpIHsKLSAgICAgICAgICAgIGlmICgkcmFpc2VzRXhjZXB0aW9uV2l0aE1lc3NhZ2UpIHsK
KyAgICAgICAgICAgIGlmICgkbWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRoTWVzc2FnZSkgewog
ICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAkaW5kZW50IC4gImlmIChMSUtFTFko
IWVjLmNvZGUpKVxuIik7CiAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICRpbmRl
bnQgLiAiICAgIGltcGwuY29tbWl0Q2hhbmdlKCk7XG4iKTsKLSAgICAgICAgICAgIH0gZWxzaWYg
KCRyYWlzZXNFeGNlcHRpb24pIHsKKyAgICAgICAgICAgIH0gZWxzaWYgKCRtYXlUaHJvd0xlZ2Fj
eUV4Y2VwdGlvbikgewogICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAkaW5kZW50
IC4gImlmIChMSUtFTFkoIWVjKSlcbiIpOwogICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250
ZW50LCAkaW5kZW50IC4gIiAgICBpbXBsLmNvbW1pdENoYW5nZSgpO1xuIik7CiAgICAgICAgICAg
ICB9IGVsc2UgewpAQCAtNDUwNiw3ICs0Mzk0LDcgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRp
b25GdW5jdGlvbkNhbGwoKQogICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICRpbmRlbnQg
LiAic3RhdGljIE5ldmVyRGVzdHJveWVkPGNvbnN0IEF0b21pY1N0cmluZz4gYmluZGluZ05hbWUo
XCIkYmluZGluZ05hbWVcIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7XG4i
KTsKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAkaW5kZW50IC4gImlmIChjdXJzb3Iu
aXNDYXB0dXJpbmcoKSkge1xuIik7CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgJGlu
ZGVudCAuICIgICAgJG5hdGl2ZVR5cGUgbWVtb2l6ZWRSZXN1bHQgPSAkZnVuY3Rpb25TdHJpbmc7
XG4iKTsKLSAgICAgICAgICAgIG15ICRleGNlcHRpb25Db2RlID0gJHJhaXNlc0V4Y2VwdGlvbldp
dGhNZXNzYWdlID8gImVjLmNvZGUiIDogKCRyYWlzZXNFeGNlcHRpb24gPyAiZWMiIDogIjAiKTsK
KyAgICAgICAgICAgIG15ICRleGNlcHRpb25Db2RlID0gJG1heVRocm93TGVnYWN5RXhjZXB0aW9u
V2l0aE1lc3NhZ2UgPyAiZWMuY29kZSIgOiAoJG1heVRocm93TGVnYWN5RXhjZXB0aW9uID8gImVj
IiA6ICIwIik7CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgJGluZGVudCAuICIgICAg
Y3Vyc29yLmFwcGVuZElucHV0PE1lbW9pemVkRE9NUmVzdWx0PCRtZW1vaXplZFR5cGU+PihiaW5k
aW5nTmFtZS5nZXQoKS5zdHJpbmcoKSwgbWVtb2l6ZWRSZXN1bHQsICRleGNlcHRpb25Db2RlKTtc
biIpOwogICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICRpbmRlbnQgLiAiICAgIHJlc3Vs
dCA9ICIgLiBOYXRpdmVUb0pTVmFsdWUoJGZ1bmN0aW9uLT5zaWduYXR1cmUsIDEsICRpbnRlcmZh
Y2UsICJtZW1vaXplZFJlc3VsdCIsICR0aGlzT2JqZWN0KSAuICI7XG4iKTsKICAgICAgICAgICAg
IHB1c2goQGltcGxDb250ZW50LCAkaW5kZW50IC4gIn0gZWxzZSBpZiAoY3Vyc29yLmlzUmVwbGF5
aW5nKCkpIHtcbiIpOwpAQCAtNDUxNSw4ICs0NDAzLDggQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50
YXRpb25GdW5jdGlvbkNhbGwoKQogICAgICAgICAgICAgIyBGSVhNRTogdGhlIGdlbmVyYXRlZCBj
b2RlIHNob3VsZCByZXBvcnQgYW4gZXJyb3IgaWYgYW4gaW5wdXQgY2Fubm90IGJlIGZldGNoZWQg
b3IgY29udmVydGVkLgogICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICRpbmRlbnQgLiAi
ICAgIGlmIChpbnB1dCAmJiBpbnB1dC0+Y29udmVydFRvPCRtZW1vaXplZFR5cGU+KG1lbW9pemVk
UmVzdWx0KSkge1xuIik7CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgJGluZGVudCAu
ICIgICAgICAgIHJlc3VsdCA9ICIgLiBOYXRpdmVUb0pTVmFsdWUoJGZ1bmN0aW9uLT5zaWduYXR1
cmUsIDEsICRpbnRlcmZhY2UsICJtZW1vaXplZFJlc3VsdCIsICR0aGlzT2JqZWN0KSAuICI7XG4i
KTsKLSAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAkaW5kZW50IC4gIiAgICAgICAgZWMu
Y29kZSA9IGlucHV0LT5leGNlcHRpb25Db2RlKCk7XG4iKSBpZiAkcmFpc2VzRXhjZXB0aW9uV2l0
aE1lc3NhZ2U7Ci0gICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgJGluZGVudCAuICIgICAg
ICAgIGVjID0gaW5wdXQtPmV4Y2VwdGlvbkNvZGUoKTtcbiIpIGlmICRyYWlzZXNFeGNlcHRpb24g
JiYgISRyYWlzZXNFeGNlcHRpb25XaXRoTWVzc2FnZTsKKyAgICAgICAgICAgIHB1c2goQGltcGxD
b250ZW50LCAkaW5kZW50IC4gIiAgICAgICAgZWMuY29kZSA9IGlucHV0LT5leGNlcHRpb25Db2Rl
KCk7XG4iKSBpZiAkbWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRoTWVzc2FnZTsKKyAgICAgICAg
ICAgIHB1c2goQGltcGxDb250ZW50LCAkaW5kZW50IC4gIiAgICAgICAgZWMgPSBpbnB1dC0+ZXhj
ZXB0aW9uQ29kZSgpO1xuIikgaWYgJG1heVRocm93TGVnYWN5RXhjZXB0aW9uICYmICEkbWF5VGhy
b3dMZWdhY3lFeGNlcHRpb25XaXRoTWVzc2FnZTsKICAgICAgICAgICAgIHB1c2goQGltcGxDb250
ZW50LCAkaW5kZW50IC4gIiAgICB9IGVsc2VcbiIpOwogICAgICAgICAgICAgcHVzaChAaW1wbENv
bnRlbnQsICRpbmRlbnQgLiAiICAgICAgICByZXN1bHQgPSAiIC4gTmF0aXZlVG9KU1ZhbHVlKCRm
dW5jdGlvbi0+c2lnbmF0dXJlLCAxLCAkaW50ZXJmYWNlLCAkZnVuY3Rpb25TdHJpbmcsICR0aGlz
T2JqZWN0KSAuICI7XG4iKTsKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAkaW5kZW50
IC4gIn0gZWxzZVxuIik7CkBAIC00NTI3LDkgKzQ0MTUsOSBAQCBzdWIgR2VuZXJhdGVJbXBsZW1l
bnRhdGlvbkZ1bmN0aW9uQ2FsbCgpCiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBwdXNo
KEBpbXBsQ29udGVudCwgJGluZGVudCAuICJKU1ZhbHVlIHJlc3VsdCA9ICIgLiBOYXRpdmVUb0pT
VmFsdWUoJGZ1bmN0aW9uLT5zaWduYXR1cmUsIDEsICRpbnRlcmZhY2UsICRmdW5jdGlvblN0cmlu
ZywgJHRoaXNPYmplY3QpIC4gIjtcbiIpOwogICAgICAgICB9Ci0gICAgICAgIHB1c2goQGltcGxD
b250ZW50LCAiXG4iIC4gJGluZGVudCAuICJzZXRET01FeGNlcHRpb24oc3RhdGUsIHRocm93U2Nv
cGUsIGVjKTtcbiIpIGlmICRyYWlzZXNFeGNlcHRpb247CisgICAgICAgIHB1c2goQGltcGxDb250
ZW50LCAiXG4iIC4gJGluZGVudCAuICJzZXRET01FeGNlcHRpb24oc3RhdGUsIHRocm93U2NvcGUs
IGVjKTtcbiIpIGlmICRtYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbjsKIAotICAgICAgICBpZiAoJGNv
ZGVHZW5lcmF0b3ItPkV4dGVuZGVkQXR0cmlidXRlQ29udGFpbnMoJGZ1bmN0aW9uLT5zaWduYXR1
cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDYWxsV2l0aCJ9LCAiU2NyaXB0U3RhdGUiKSkgewor
ICAgICAgICBpZiAoJGNvZGVHZW5lcmF0b3ItPkV4dGVuZGVkQXR0cmlidXRlQ29udGFpbnMoJGZ1
bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0NhbGxXaXRofSwgIlNjcmlw
dFN0YXRlIikpIHsKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAkaW5kZW50IC4gIlJF
VFVSTl9JRl9FWENFUFRJT04odGhyb3dTY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7XG4iKTsKICAg
ICAgICAgfQogCkBAIC00NjEyLDcgKzQ1MDAsNyBAQCBzdWIgYWRkSXRlcmFibGVQcm9wZXJ0aWVz
KCkKICAgICBteSAkaW50ZXJmYWNlID0gc2hpZnQ7CiAgICAgbXkgJGNsYXNzTmFtZSA9IHNoaWZ0
OwogCi0gICAgaWYgKCRpbnRlcmZhY2UtPml0ZXJhYmxlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsi
RW5hYmxlZEF0UnVudGltZSJ9KSB7CisgICAgaWYgKCRpbnRlcmZhY2UtPml0ZXJhYmxlLT5leHRl
bmRlZEF0dHJpYnV0ZXMtPntFbmFibGVkQXRSdW50aW1lfSkgewogICAgICAgICBBZGRUb0ltcGxJ
bmNsdWRlcygiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIik7CiAgICAgICAgIG15ICRlbmFibGVf
ZnVuY3Rpb24gPSBHZXRSdW50aW1lRW5hYmxlRnVuY3Rpb25OYW1lKCRpbnRlcmZhY2UtPml0ZXJh
YmxlKTsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgaWYgKCR7ZW5hYmxlX2Z1bmN0
aW9ufSgpKSB7XG4gICAgIik7CkBAIC00NjI1LDcgKzQ1MTMsNyBAQCBzdWIgYWRkSXRlcmFibGVQ
cm9wZXJ0aWVzKCkKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYWRkVmFsdWVJdGVy
YWJsZU1ldGhvZHMoKmdsb2JhbE9iamVjdCgpLCAqdGhpcyk7XG4iKTsKICAgICB9CiAKLSAgICBp
ZiAoJGludGVyZmFjZS0+aXRlcmFibGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFbmFibGVkQXRS
dW50aW1lIn0pIHsKKyAgICBpZiAoJGludGVyZmFjZS0+aXRlcmFibGUtPmV4dGVuZGVkQXR0cmli
dXRlcy0+e0VuYWJsZWRBdFJ1bnRpbWV9KSB7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAi
ICAgIH1cbiIpOwogICAgIH0KIApAQCAtNDc3Miw4ICs0NjYwLDggQEAgc3ViIEdldEludGVnZXJD
b252ZXJzaW9uQ29uZmlndXJhdGlvbgogewogICAgIG15ICRzaWduYXR1cmUgPSBzaGlmdDsKIAot
ICAgIHJldHVybiAiRW5mb3JjZVJhbmdlIiBpZiAkc2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPnsiRW5mb3JjZVJhbmdlIn07Ci0gICAgcmV0dXJuICJDbGFtcCIgaWYgJHNpZ25hdHVyZS0+
ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNsYW1wIn07CisgICAgcmV0dXJuICJFbmZvcmNlUmFuZ2Ui
IGlmICRzaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0VuZm9yY2VSYW5nZX07CisgICAg
cmV0dXJuICJDbGFtcCIgaWYgJHNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Q2xhbXB9
OwogICAgIHJldHVybiAiTm9ybWFsQ29udmVyc2lvbiI7CiB9CiAKQEAgLTQ3OTIsMTYgKzQ2ODAs
MTYgQEAgc3ViIEpTVmFsdWVUb05hdGl2ZQogICAgIH0KIAogICAgIGlmICgkdHlwZSBlcSAiRE9N
U3RyaW5nIikgewotICAgICAgICByZXR1cm4gKCJBdG9taWNTdHJpbmcoJHZhbHVlLnRvU3RyaW5n
KHN0YXRlKS0+dG9FeGlzdGluZ0F0b21pY1N0cmluZyhzdGF0ZSkpIiwgMSkgaWYgJHNpZ25hdHVy
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IlJlcXVpcmVzRXhpc3RpbmdBdG9taWNTdHJpbmcifTsK
KyAgICAgICAgcmV0dXJuICgiQXRvbWljU3RyaW5nKCR2YWx1ZS50b1N0cmluZyhzdGF0ZSktPnRv
RXhpc3RpbmdBdG9taWNTdHJpbmcoc3RhdGUpKSIsIDEpIGlmICRzaWduYXR1cmUtPmV4dGVuZGVk
QXR0cmlidXRlcy0+e1JlcXVpcmVzRXhpc3RpbmdBdG9taWNTdHJpbmd9OwogCi0gICAgICAgIG15
ICR0cmVhdE51bGxBcyA9ICRzaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJUcmVhdE51
bGxBcyJ9OworICAgICAgICBteSAkdHJlYXROdWxsQXMgPSAkc2lnbmF0dXJlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPntUcmVhdE51bGxBc307CiAgICAgICAgIHJldHVybiAoInZhbHVlVG9TdHJpbmdU
cmVhdGluZ051bGxBc0VtcHR5U3RyaW5nKHN0YXRlLCAkdmFsdWUpIiwgMSkgaWYgJHRyZWF0TnVs
bEFzICYmICR0cmVhdE51bGxBcyBlcSAiRW1wdHlTdHJpbmciOwogICAgICAgICByZXR1cm4gKCJ2
YWx1ZVRvU3RyaW5nV2l0aFVuZGVmaW5lZE9yTnVsbENoZWNrKHN0YXRlLCAkdmFsdWUpIiwgMSkg
aWYgJHNpZ25hdHVyZS0+aXNOdWxsYWJsZTsKLSAgICAgICAgcmV0dXJuICgiJHZhbHVlLnRvU3Ry
aW5nKHN0YXRlKS0+dG9BdG9taWNTdHJpbmcoc3RhdGUpIiwgMSkgaWYgJHNpZ25hdHVyZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkF0b21pY1N0cmluZyJ9OworICAgICAgICByZXR1cm4gKCIkdmFs
dWUudG9TdHJpbmcoc3RhdGUpLT50b0F0b21pY1N0cmluZyhzdGF0ZSkiLCAxKSBpZiAkc2lnbmF0
dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntBdG9taWNTdHJpbmd9OwogICAgICAgICByZXR1cm4g
KCIkdmFsdWUudG9XVEZTdHJpbmcoc3RhdGUpIiwgMSk7CiAgICAgfQogICAgIGlmICgkdHlwZSBl
cSAiVVNWU3RyaW5nIikgewotICAgICAgICBteSAkdHJlYXROdWxsQXMgPSAkc2lnbmF0dXJlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPnsiVHJlYXROdWxsQXMifTsKKyAgICAgICAgbXkgJHRyZWF0TnVs
bEFzID0gJHNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57VHJlYXROdWxsQXN9OwogICAg
ICAgICByZXR1cm4gKCJ2YWx1ZVRvVVNWU3RyaW5nVHJlYXRpbmdOdWxsQXNFbXB0eVN0cmluZyhz
dGF0ZSwgJHZhbHVlKSIsIDEpIGlmICR0cmVhdE51bGxBcyAmJiAkdHJlYXROdWxsQXMgZXEgIkVt
cHR5U3RyaW5nIjsKICAgICAgICAgcmV0dXJuICgidmFsdWVUb1VTVlN0cmluZ1dpdGhVbmRlZmlu
ZWRPck51bGxDaGVjayhzdGF0ZSwgJHZhbHVlKSIsIDEpIGlmICRzaWduYXR1cmUtPmlzTnVsbGFi
bGU7CiAgICAgICAgIHJldHVybiAoInZhbHVlVG9VU1ZTdHJpbmcoc3RhdGUsICR2YWx1ZSkiLCAx
KTsKQEAgLTQ4NTcsNyArNDc0NSw3IEBAIHN1YiBOYXRpdmVUb0pTVmFsdWUKIHsKICAgICBteSAo
JHNpZ25hdHVyZSwgJGluRnVuY3Rpb25DYWxsLCAkaW50ZXJmYWNlLCAkdmFsdWUsICR0aGlzVmFs
dWUpID0gQF87CiAKLSAgICBteSAkY29uZGl0aW9uYWwgPSAkc2lnbmF0dXJlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiQ29uZGl0aW9uYWwifTsKKyAgICBteSAkY29uZGl0aW9uYWwgPSAkc2lnbmF0
dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDb25kaXRpb25hbH07CiAgICAgbXkgJHR5cGUgPSAk
c2lnbmF0dXJlLT50eXBlOwogCiAgICAgbXkgJGdsb2JhbE9iamVjdCA9ICR0aGlzVmFsdWUgPyAi
JHRoaXNWYWx1ZS0+Z2xvYmFsT2JqZWN0KCkiIDogImpzQ2FzdDxKU0RPTUdsb2JhbE9iamVjdCo+
KHN0YXRlLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkpIjsKQEAgLTQ4NzMsNyArNDc2MSw3IEBAIHN1
YiBOYXRpdmVUb0pTVmFsdWUKICAgICAgICAgIyBXZSBjb3VsZCBpbnN0ZWFkIG92ZXJsb2FkIGEg
ZnVuY3Rpb24gdG8gd29yayB3aXRoIG9wdGlvbmFsIGFzIHdlbGwgYXMgbm9uLW9wdGlvbmFsIG51
bWJlcnMsIGJ1dCB0aGlzCiAgICAgICAgICMgaXMgc2xpZ2h0bHkgYmV0dGVyIGJlY2F1c2UgaXQg
Z3VhcmFudGVlcyB3ZSB3aWxsIGZhaWwgdG8gY29tcGlsZSBpZiB0aGUgSURMIGZpbGUgZG9lc24n
dCBtYXRjaCB0aGUgQysrLgogICAgICAgICBteSAkZnVuY3Rpb24gPSAkc2lnbmF0dXJlLT5pc051
bGxhYmxlID8gInRvTnVsbGFibGVKU051bWJlciIgOiAianNOdW1iZXIiOwotICAgICAgICBpZiAo
JHNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IlJlZmxlY3QifSBhbmQgKCR0eXBlIGVx
ICJ1bnNpZ25lZCBsb25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQgc2hvcnQiKSkgeworICAgICAg
ICBpZiAoJHNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57UmVmbGVjdH0gYW5kICgkdHlw
ZSBlcSAidW5zaWduZWQgbG9uZyIgb3IgJHR5cGUgZXEgInVuc2lnbmVkIHNob3J0IikpIHsKICAg
ICAgICAgICAgICR2YWx1ZSA9fiBzL2dldFVuc2lnbmVkSW50ZWdyYWxBdHRyaWJ1dGUvZ2V0SW50
ZWdyYWxBdHRyaWJ1dGUvZzsKICAgICAgICAgICAgICR2YWx1ZSA9ICJzdGQ6Om1heCgwLCAkdmFs
dWUpIjsKICAgICAgICAgfQpAQCAtNDkwMyw3ICs0NzkxLDcgQEAgc3ViIE5hdGl2ZVRvSlNWYWx1
ZQogICAgIH0KIAogICAgIGlmICgkdHlwZSBlcSAiYW55IikgewotICAgICAgICBteSAkcmV0dXJu
VHlwZSA9ICRzaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbXBsZW1lbnRhdGlvblJl
dHVyblR5cGUifTsKKyAgICAgICAgbXkgJHJldHVyblR5cGUgPSAkc2lnbmF0dXJlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPntJbXBsZW1lbnRhdGlvblJldHVyblR5cGV9OwogICAgICAgICBpZiAoZGVm
aW5lZCAkcmV0dXJuVHlwZSBhbmQgKCRyZXR1cm5UeXBlIGVxICJJREJLZXlQYXRoIiBvciAkcmV0
dXJuVHlwZSBlcSAiSURCS2V5IikpIHsKICAgICAgICAgICAgIEFkZFRvSW1wbEluY2x1ZGVzKCJJ
REJCaW5kaW5nVXRpbGl0aWVzLmgiLCAkY29uZGl0aW9uYWwpOwogICAgICAgICAgICAgcmV0dXJu
ICJ0b0pTKCpzdGF0ZSwgKiRnbG9iYWxPYmplY3QsICR2YWx1ZSkiOwpAQCAtNDkzMCw3ICs0ODE4
LDcgQEAgc3ViIE5hdGl2ZVRvSlNWYWx1ZQogICAgICAgICAkdmFsdWUgPSAic3RhdGljX2Nhc3Q8
IiAuIEdldE5hdGl2ZVR5cGUoJGludGVyZmFjZSwgJHR5cGUpIC4gIj4oJHZhbHVlKSI7CiAgICAg
fSBlbHNpZiAoJGNvZGVHZW5lcmF0b3ItPklzU1ZHVHlwZU5lZWRpbmdUZWFyT2ZmKCR0eXBlKSBh
bmQgbm90ICRpbnRlcmZhY2UtPm5hbWUgPX4gL0xpc3QkLykgewogICAgICAgICBteSAkdGVhck9m
ZlR5cGUgPSAkY29kZUdlbmVyYXRvci0+R2V0U1ZHVHlwZU5lZWRpbmdUZWFyT2ZmKCR0eXBlKTsK
LSAgICAgICAgaWYgKCRjb2RlR2VuZXJhdG9yLT5Jc1NWR1R5cGVXaXRoV3JpdGFibGVQcm9wZXJ0
aWVzTmVlZGluZ1RlYXJPZmYoJHR5cGUpIGFuZCAhJGluRnVuY3Rpb25DYWxsIGFuZCBub3QgZGVm
aW5lZCAkc2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW1tdXRhYmxlIn0pIHsKKyAg
ICAgICAgaWYgKCRjb2RlR2VuZXJhdG9yLT5Jc1NWR1R5cGVXaXRoV3JpdGFibGVQcm9wZXJ0aWVz
TmVlZGluZ1RlYXJPZmYoJHR5cGUpIGFuZCAhJGluRnVuY3Rpb25DYWxsIGFuZCBub3QgZGVmaW5l
ZCAkc2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntJbW11dGFibGV9KSB7CiAgICAgICAg
ICAgICBteSAkZ2V0dGVyID0gJHZhbHVlOwogICAgICAgICAgICAgJGdldHRlciA9fiBzL2ltcGxc
Li8vOwogICAgICAgICAgICAgJGdldHRlciA9fiBzL2ltcGwtPi8vOwpAQCAtNDk1NSw3ICs0ODQz
LDcgQEAgc3ViIE5hdGl2ZVRvSlNWYWx1ZQogICAgICAgICB9CiAgICAgfQogCi0gICAgbXkgJGZ1
bmN0aW9uID0gJHNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik5ld09iamVjdCJ9ID8g
InRvSlNOZXdseUNyZWF0ZWQiIDogInRvSlMiOworICAgIG15ICRmdW5jdGlvbiA9ICRzaWduYXR1
cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e05ld09iamVjdH0gPyAidG9KU05ld2x5Q3JlYXRlZCIg
OiAidG9KUyI7CiAgICAgcmV0dXJuICIkZnVuY3Rpb24oc3RhdGUsICRnbG9iYWxPYmplY3QsICR2
YWx1ZSkiOwogfQogCkBAIC01MTQwLDcgKzUwMjgsMTEgQEAgc3ViIFdyaXRlRGF0YQogICAgIG15
IEBpbmNsdWRlcyA9ICgpOwogICAgIG15ICVpbXBsSW5jbHVkZUNvbmRpdGlvbnMgPSAoKTsKICAg
ICBmb3JlYWNoIG15ICRpbmNsdWRlIChrZXlzICVpbXBsSW5jbHVkZXMpIHsKKyAgICAgICAgbmV4
dCBpZiAkaGVhZGVySW5jbHVkZXN7JGluY2x1ZGV9OworICAgICAgICBuZXh0IGlmICRoZWFkZXJU
cmFpbGluZ0luY2x1ZGVzeyRpbmNsdWRlfTsKKwogICAgICAgICBteSAkY29uZGl0aW9uID0gJGlt
cGxJbmNsdWRlc3skaW5jbHVkZX07CisKICAgICAgICAgbXkgJGNoZWNrVHlwZSA9ICRpbmNsdWRl
OwogICAgICAgICAkY2hlY2tUeXBlID1+IHMvXC5oLy87CiAgICAgICAgIG5leHQgaWYgJGNvZGVH
ZW5lcmF0b3ItPklzU1ZHQW5pbWF0ZWRUeXBlKCRjaGVja1R5cGUpOwpAQCAtNTIyMCw3ICs1MTEy
LDcgQEAgc3ViIEdlbmVyYXRlUHJvdG90eXBlRGVjbGFyYXRpb24KICAgICBteSAlc3RydWN0dXJl
RmxhZ3MgPSAoKTsKICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICJjbGFzcyAke3Byb3RvdHlwZUNs
YXNzTmFtZX0gOiBwdWJsaWMgSlNDOjpKU05vbkZpbmFsT2JqZWN0IHtcbiIpOwogICAgIHB1c2go
QCRvdXRwdXRBcnJheSwgInB1YmxpYzpcbiIpOwotICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAg
ICB0eXBlZGVmIEpTQzo6SlNOb25GaW5hbE9iamVjdCBCYXNlO1xuIik7CisgICAgcHVzaChAJG91
dHB1dEFycmF5LCAiICAgIHVzaW5nIEJhc2UgPSBKU0M6OkpTTm9uRmluYWxPYmplY3Q7XG4iKTsK
IAogICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICBzdGF0aWMgJHtwcm90b3R5cGVDbGFzc05h
bWV9KiBjcmVhdGUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCwgSlNDOjpTdHJ1Y3R1cmUqIHN0cnVjdHVyZSlcbiIpOwogICAgIHB1c2goQCRvdXRwdXRBcnJh
eSwgIiAgICB7XG4iKTsKQEAgLTUyNTIsMTQgKzUxNDQsMTQgQEAgc3ViIEdlbmVyYXRlUHJvdG90
eXBlRGVjbGFyYXRpb24KICAgICAgICAgfQogICAgIH0KIAotICAgIGlmICgkaW50ZXJmYWNlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNDdXN0b21OYW1lZEdldHRlck9uUHJvdG90eXBlIn0pIHsK
KyAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57SlNDdXN0b21OYW1lZEdl
dHRlck9uUHJvdG90eXBlfSkgewogICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICJcbiIpOwog
ICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgc3RhdGljIGJvb2wgcHV0KEpTQzo6SlND
ZWxsKiwgSlNDOjpFeGVjU3RhdGUqLCBKU0M6OlByb3BlcnR5TmFtZSwgSlNDOjpKU1ZhbHVlLCBK
U0M6OlB1dFByb3BlcnR5U2xvdCYpO1xuIik7CiAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwg
IiAgICBib29sIHB1dERlbGVnYXRlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpQcm9wZXJ0eU5hbWUs
IEpTQzo6SlNWYWx1ZSwgSlNDOjpQdXRQcm9wZXJ0eVNsb3QmLCBib29sJiBwdXRSZXN1bHQpO1xu
Iik7CiAgICAgfQogCiAgICAgIyBDdXN0b20gZGVmaW5lT3duUHJvcGVydHkgZnVuY3Rpb24KLSAg
ICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQ3VzdG9tRGVmaW5lT3du
UHJvcGVydHlPblByb3RvdHlwZSJ9KSB7CisgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0
cmlidXRlcy0+e0pTQ3VzdG9tRGVmaW5lT3duUHJvcGVydHlPblByb3RvdHlwZX0pIHsKICAgICAg
ICAgcHVzaChAJG91dHB1dEFycmF5LCAiXG4iKTsKICAgICAgICAgcHVzaChAJG91dHB1dEFycmF5
LCAiICAgIHN0YXRpYyBib29sIGRlZmluZU93blByb3BlcnR5KEpTQzo6SlNPYmplY3QqLCBKU0M6
OkV4ZWNTdGF0ZSosIEpTQzo6UHJvcGVydHlOYW1lLCBjb25zdCBKU0M6OlByb3BlcnR5RGVzY3Jp
cHRvciYsIGJvb2wgc2hvdWxkVGhyb3cpO1xuIik7CiAgICAgfQpAQCAtNTI4MCw3ICs1MTcyLDcg
QEAgc3ViIEdlbmVyYXRlUHJvdG90eXBlRGVjbGFyYXRpb24KIHN1YiBHZXRDb25zdHJ1Y3RvclRl
bXBsYXRlQ2xhc3NOYW1lCiB7CiAgICAgbXkgJGludGVyZmFjZSA9IHNoaWZ0OwotICAgIHJldHVy
biAiSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGUiIGlmICgkaW50ZXJmYWNlLT5leHRl
bmRlZEF0dHJpYnV0ZXMtPnsiTmFtZWRDb25zdHJ1Y3RvciJ9KTsKKyAgICByZXR1cm4gIkpTRE9N
Q29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlIiBpZiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJp
YnV0ZXMtPntOYW1lZENvbnN0cnVjdG9yfTsKICAgICByZXR1cm4gIkpTRE9NQ29uc3RydWN0b3JO
b3RDb25zdHJ1Y3RhYmxlIiB1bmxlc3MgSXNDb25zdHJ1Y3RhYmxlKCRpbnRlcmZhY2UpOwogICAg
IHJldHVybiAiSlNCdWlsdGluQ29uc3RydWN0b3IiIGlmIElzSlNCdWlsdGluQ29uc3RydWN0b3Io
JGludGVyZmFjZSk7CiAgICAgcmV0dXJuICJKU0RPTUNvbnN0cnVjdG9yIjsKQEAgLTUyOTYsOCAr
NTE4OCw4IEBAIHN1YiBHZW5lcmF0ZUNvbnN0cnVjdG9yRGVjbGFyYXRpb24KIAogICAgICRpbXBs
SW5jbHVkZXN7IkpTRE9NQ29uc3RydWN0b3IuaCJ9ID0gMTsKIAotICAgIHB1c2goQCRvdXRwdXRB
cnJheSwgInR5cGVkZWYgJHRlbXBsYXRlQ2xhc3NOYW1lPCRjbGFzc05hbWU+ICR7Y29uc3RydWN0
b3JDbGFzc05hbWV9O1xuIik7Ci0gICAgcHVzaChAJG91dHB1dEFycmF5LCAidHlwZWRlZiBKU0RP
TU5hbWVkQ29uc3RydWN0b3I8JGNsYXNzTmFtZT4gSlMke2ludGVyZmFjZU5hbWV9TmFtZWRDb25z
dHJ1Y3RvcjtcbiIpIGlmICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOYW1lZENv
bnN0cnVjdG9yIn07CisgICAgcHVzaChAJG91dHB1dEFycmF5LCAidXNpbmcgJGNvbnN0cnVjdG9y
Q2xhc3NOYW1lID0gJHRlbXBsYXRlQ2xhc3NOYW1lPCRjbGFzc05hbWU+O1xuIik7CisgICAgcHVz
aChAJG91dHB1dEFycmF5LCAidXNpbmcgSlMke2ludGVyZmFjZU5hbWV9TmFtZWRDb25zdHJ1Y3Rv
ciA9IEpTRE9NTmFtZWRDb25zdHJ1Y3RvcjwkY2xhc3NOYW1lPjtcbiIpIGlmICRpbnRlcmZhY2Ut
PmV4dGVuZGVkQXR0cmlidXRlcy0+e05hbWVkQ29uc3RydWN0b3J9OwogICAgIHB1c2goQCRvdXRw
dXRBcnJheSwgIlxuIik7CiB9CiAKQEAgLTUzODgsOSArNTI4MCw5IEBAIEVORAogCiAgICAgICAg
ICAgICBmb3IgKG15ICRpbmRleCA9IDA7ICRpbmRleCA8IEB7JGludGVyZmFjZS0+YXR0cmlidXRl
c307ICRpbmRleCsrKSB7CiAgICAgICAgICAgICAgICAgbXkgJGF0dHJpYnV0ZSA9IEB7JGludGVy
ZmFjZS0+YXR0cmlidXRlc31bJGluZGV4XTsKLSAgICAgICAgICAgICAgICBpZiAoJGF0dHJpYnV0
ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW5pdGlhbGl6ZWRCeUV2ZW50Q29u
c3RydWN0b3IifSkgeworICAgICAgICAgICAgICAgIGlmICgkYXR0cmlidXRlLT5zaWduYXR1cmUt
PmV4dGVuZGVkQXR0cmlidXRlcy0+e0luaXRpYWxpemVkQnlFdmVudENvbnN0cnVjdG9yfSkgewog
ICAgICAgICAgICAgICAgICAgICBteSAkYXR0cmlidXRlTmFtZSA9ICRhdHRyaWJ1dGUtPnNpZ25h
dHVyZS0+bmFtZTsKLSAgICAgICAgICAgICAgICAgICAgbXkgJGF0dHJpYnV0ZUltcGxOYW1lID0g
JGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW1wbGVtZW50ZWRB
cyJ9IHx8ICRhdHRyaWJ1dGVOYW1lOworICAgICAgICAgICAgICAgICAgICBteSAkYXR0cmlidXRl
SW1wbE5hbWUgPSAkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0lt
cGxlbWVudGVkQXN9IHx8ICRhdHRyaWJ1dGVOYW1lOwogICAgICAgICAgICAgICAgICAgICBteSAk
Y29uZGl0aW9uYWxTdHJpbmcgPSAkY29kZUdlbmVyYXRvci0+R2VuZXJhdGVDb25kaXRpb25hbFN0
cmluZygkYXR0cmlidXRlLT5zaWduYXR1cmUpOwogCiAgICAgICAgICAgICAgICAgICAgIHB1c2go
QGltcGxDb250ZW50LCAiI2lmICR7Y29uZGl0aW9uYWxTdHJpbmd9XG4iKSBpZiAkY29uZGl0aW9u
YWxTdHJpbmc7CkBAIC01NDA5LDEzICs1MzAxLDEzIEBAIEVORAogfQogCiBFTkQKLSAgICAgICAg
IH0gZWxzaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21Db25zdHJ1
Y3RvciJ9KSB7CisgICAgICAgICB9IGVsc2lmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPntDdXN0b21Db25zdHJ1Y3Rvcn0pIHsKICAgICAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJh
eSwgInRlbXBsYXRlPD4gSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMICR7Y29uc3Ry
dWN0b3JDbGFzc05hbWV9Ojpjb25zdHJ1Y3QoSlNDOjpFeGVjU3RhdGUqIGV4ZWMpXG4iKTsKICAg
ICAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIntcbiIpOwogICAgICAgICAgICAgcHVzaChA
JG91dHB1dEFycmF5LCAiICAgIEFTU0VSVChleGVjKTtcbiIpOwogICAgICAgICAgICAgcHVzaChA
JG91dHB1dEFycmF5LCAiICAgIHJldHVybiBjb25zdHJ1Y3Qke2NsYXNzTmFtZX0oKmV4ZWMpO1xu
Iik7CiAgICAgICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICJ9XG5cbiIpOwotICAgICAgICAg
fSBlbHNpZiAoIUhhc0N1c3RvbUNvbnN0cnVjdG9yKCRpbnRlcmZhY2UpICYmICghJGludGVyZmFj
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik5hbWVkQ29uc3RydWN0b3IifSB8fCAkZ2VuZXJhdGlu
Z05hbWVkQ29uc3RydWN0b3IpKSB7CisgICAgICAgICB9IGVsc2lmICghSGFzQ3VzdG9tQ29uc3Ry
dWN0b3IoJGludGVyZmFjZSkgJiYgKCEkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntO
YW1lZENvbnN0cnVjdG9yfSB8fCAkZ2VuZXJhdGluZ05hbWVkQ29uc3RydWN0b3IpKSB7CiAgICAg
ICAgICAgICBteSAkaXNPdmVybG9hZGVkID0gJGZ1bmN0aW9uLT57b3ZlcmxvYWRzfSAmJiBAeyRm
dW5jdGlvbi0+e292ZXJsb2Fkc319ID4gMTsKICAgICAgICAgICAgIGlmICgkaXNPdmVybG9hZGVk
KSB7CiAgICAgICAgICAgICAgICAgcHVzaChAJG91dHB1dEFycmF5LCAic3RhdGljIGlubGluZSBF
bmNvZGVkSlNWYWx1ZSBjb25zdHJ1Y3Qke2NsYXNzTmFtZX0kZnVuY3Rpb24tPntvdmVybG9hZElu
ZGV4fShFeGVjU3RhdGUqIHN0YXRlKVxuIik7CkBAIC01NDM2LDkgKzUzMjgsOSBAQCBFTkQKIAog
ICAgICAgICAgICAgR2VuZXJhdGVBcmd1bWVudHNDb3VudENoZWNrKCRvdXRwdXRBcnJheSwgJGZ1
bmN0aW9uLCAkaW50ZXJmYWNlKTsKIAotICAgICAgICAgICAgaWYgKCRmdW5jdGlvbi0+c2lnbmF0
dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiUmFpc2VzRXhjZXB0aW9uIn0gfHwgJGZ1bmN0aW9u
LT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJSYWlzZXNFeGNlcHRpb25XaXRoTWVz
c2FnZSJ9IHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDb25zdHJ1Y3RvclJh
aXNlc0V4Y2VwdGlvbiJ9KSB7CisgICAgICAgICAgICBpZiAoJGZ1bmN0aW9uLT5zaWduYXR1cmUt
PmV4dGVuZGVkQXR0cmlidXRlcy0+e01heVRocm93TGVnYWN5RXhjZXB0aW9ufSB8fCAkZnVuY3Rp
b24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57TWF5VGhyb3dMZWdhY3lFeGNlcHRp
b25XaXRoTWVzc2FnZX0gfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Q29uc3Ry
dWN0b3JNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbn0pIHsKICAgICAgICAgICAgICAgICAkaW1wbElu
Y2x1ZGVzeyJFeGNlcHRpb25Db2RlLmgifSA9IDE7Ci0gICAgICAgICAgICAgICAgaWYgKCRmdW5j
dGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiUmFpc2VzRXhjZXB0aW9uV2l0
aE1lc3NhZ2UifSkgeworICAgICAgICAgICAgICAgIGlmICgkZnVuY3Rpb24tPnNpZ25hdHVyZS0+
ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57TWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRoTWVzc2FnZX0p
IHsKICAgICAgICAgICAgICAgICAgICAgcHVzaChAJG91dHB1dEFycmF5LCAiICAgIEV4Y2VwdGlv
bkNvZGVXaXRoTWVzc2FnZSBlYztcbiIpOwogICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAg
ICAgICAgICAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICBFeGNlcHRpb25Db2RlIGVj
ID0gMDtcbiIpOwpAQCAtNTQ0OSwxNiArNTM0MSwxNiBAQCBFTkQKICAgICAgICAgICAgICMgRklY
TUU6IEN1cnJlbnRseSBbQ29uc3RydWN0b3IoLi4uKV0gZG9lcyBub3QgeWV0IHN1cHBvcnQgb3B0
aW9uYWwgYXJndW1lbnRzIHdpdGhvdXQgW0RlZmF1bHQ9Li4uXQogICAgICAgICAgICAgbXkgKCRk
dW1teSwgJHBhcmFtSW5kZXgpID0gR2VuZXJhdGVQYXJhbWV0ZXJzQ2hlY2soJG91dHB1dEFycmF5
LCAkZnVuY3Rpb24sICRpbnRlcmZhY2UsICJjb25zdHJ1Y3RvckNhbGxiYWNrIiwgdW5kZWYsIHVu
ZGVmLCB1bmRlZik7CiAKLSAgICAgICAgICAgIGlmICgkY29kZUdlbmVyYXRvci0+RXh0ZW5kZWRB
dHRyaWJ1dGVDb250YWlucygkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ29uc3Ry
dWN0b3JDYWxsV2l0aCJ9LCAiU2NyaXB0U3RhdGUiKSkgewotICAgICAgICAgICAgICAgIHB1c2go
QGNvbnN0cnVjdG9yQXJnTGlzdCwgIipzdGF0ZSIpOwotICAgICAgICAgICAgfQotICAgICAgICAg
ICAgaWYgKCRjb2RlR2VuZXJhdG9yLT5FeHRlbmRlZEF0dHJpYnV0ZUNvbnRhaW5zKCRpbnRlcmZh
Y2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDb25zdHJ1Y3RvckNhbGxXaXRoIn0sICJTY3JpcHRF
eGVjdXRpb25Db250ZXh0IikpIHsKKyAgICAgICAgICAgIHB1c2goQGNvbnN0cnVjdG9yQXJnTGlz
dCwgIipzdGF0ZSIpIGlmICRjb2RlR2VuZXJhdG9yLT5FeHRlbmRlZEF0dHJpYnV0ZUNvbnRhaW5z
KCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0NvbnN0cnVjdG9yQ2FsbFdpdGh9LCAi
U2NyaXB0U3RhdGUiKTs7CisKKyAgICAgICAgICAgIGlmICgkY29kZUdlbmVyYXRvci0+RXh0ZW5k
ZWRBdHRyaWJ1dGVDb250YWlucygkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDb25z
dHJ1Y3RvckNhbGxXaXRofSwgIlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQiKSkgewogICAgICAgICAg
ICAgICAgIHB1c2goQGNvbnN0cnVjdG9yQXJnTGlzdCwgIipjb250ZXh0Iik7CiAgICAgICAgICAg
ICAgICAgcHVzaChAJG91dHB1dEFycmF5LCAiICAgIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNv
bnRleHQgPSBjYXN0ZWRUaGlzLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCk7XG4iKTsKICAgICAg
ICAgICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgaWYgKFVOTElLRUxZKCFjb250ZXh0
KSlcbiIpOwogICAgICAgICAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICAgICAgcmV0
dXJuIHRocm93Q29uc3RydWN0b3JTY3JpcHRFeGVjdXRpb25Db250ZXh0VW5hdmFpbGFibGVFcnJv
cigqc3RhdGUsIHRocm93U2NvcGUsIFwiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX1cIik7XG4iKTsK
ICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmICgkY29kZUdlbmVyYXRvci0+RXh0ZW5kZWRB
dHRyaWJ1dGVDb250YWlucygkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ29uc3Ry
dWN0b3JDYWxsV2l0aCJ9LCAiRG9jdW1lbnQiKSkgeworCisgICAgICAgICAgICBpZiAoJGNvZGVH
ZW5lcmF0b3ItPkV4dGVuZGVkQXR0cmlidXRlQ29udGFpbnMoJGludGVyZmFjZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57Q29uc3RydWN0b3JDYWxsV2l0aH0sICJEb2N1bWVudCIpKSB7CiAgICAgICAg
ICAgICAgICAgJGltcGxJbmNsdWRlc3siRG9jdW1lbnQuaCJ9ID0gMTsKICAgICAgICAgICAgICAg
ICBwdXNoKEBjb25zdHJ1Y3RvckFyZ0xpc3QsICJkb2N1bWVudCIpOwogICAgICAgICAgICAgICAg
IHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0
ID0gY2FzdGVkVGhpcy0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpO1xuIik7CkBAIC01NDY3LDkg
KzUzNTksOCBAQCBFTkQKICAgICAgICAgICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAg
QVNTRVJUKGNvbnRleHQtPmlzRG9jdW1lbnQoKSk7XG4iKTsKICAgICAgICAgICAgICAgICBwdXNo
KEAkb3V0cHV0QXJyYXksICIgICAgYXV0byYgZG9jdW1lbnQgPSBkb3duY2FzdDxEb2N1bWVudD4o
KmNvbnRleHQpO1xuIik7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiAoJGdlbmVyYXRp
bmdOYW1lZENvbnN0cnVjdG9yKSB7Ci0gICAgICAgICAgICAgICAgcHVzaChAY29uc3RydWN0b3JB
cmdMaXN0LCAiKmNhc3RlZFRoaXMtPmRvY3VtZW50KCkiKTsKLSAgICAgICAgICAgIH0KKworICAg
ICAgICAgICAgcHVzaChAY29uc3RydWN0b3JBcmdMaXN0LCAiKmNhc3RlZFRoaXMtPmRvY3VtZW50
KCkiKSBpZiAkZ2VuZXJhdGluZ05hbWVkQ29uc3RydWN0b3I7CiAKICAgICAgICAgICAgIG15ICRp
bmRleCA9IDA7CiAgICAgICAgICAgICBmb3JlYWNoIG15ICRwYXJhbWV0ZXIgKEB7JGZ1bmN0aW9u
LT5wYXJhbWV0ZXJzfSkgewpAQCAtNTQ4NCw5ICs1Mzc1LDggQEAgRU5ECiAgICAgICAgICAgICAg
ICAgJGluZGV4Kys7CiAgICAgICAgICAgICB9CiAKLSAgICAgICAgICAgIGlmICgkaW50ZXJmYWNl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ29uc3RydWN0b3JSYWlzZXNFeGNlcHRpb24ifSkgewot
ICAgICAgICAgICAgICAgIHB1c2goQGNvbnN0cnVjdG9yQXJnTGlzdCwgImVjIik7Ci0gICAgICAg
ICAgICB9CisgICAgICAgICAgICBwdXNoKEBjb25zdHJ1Y3RvckFyZ0xpc3QsICJlYyIpIGlmICRp
bnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0NvbnN0cnVjdG9yTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb259OworCiAgICAgICAgICAgICBteSAkY29uc3RydWN0b3JBcmcgPSBqb2luKCIsICIs
IEBjb25zdHJ1Y3RvckFyZ0xpc3QpOwogICAgICAgICAgICAgaWYgKCRnZW5lcmF0aW5nTmFtZWRD
b25zdHJ1Y3RvcikgewogICAgICAgICAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICBh
dXRvIG9iamVjdCA9ICR7aW50ZXJmYWNlTmFtZX06OmNyZWF0ZUZvckpTQ29uc3RydWN0b3IoJHtj
b25zdHJ1Y3RvckFyZ30pO1xuIik7CkBAIC01NDk0LDE3ICs1Mzg0LDE0IEBAIEVORAogICAgICAg
ICAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICBhdXRvIG9iamVjdCA9ICR7aW50ZXJm
YWNlTmFtZX06OmNyZWF0ZSgke2NvbnN0cnVjdG9yQXJnfSk7XG4iKTsKICAgICAgICAgICAgIH0K
IAotICAgICAgICAgICAgaWYgKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDb25z
dHJ1Y3RvclJhaXNlc0V4Y2VwdGlvbiJ9KSB7CisgICAgICAgICAgICBpZiAoJGludGVyZmFjZS0+
ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Q29uc3RydWN0b3JNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbn0p
IHsKICAgICAgICAgICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgaWYgKFVOTElLRUxZ
KGVjKSkge1xuIik7CiAgICAgICAgICAgICAgICAgcHVzaChAJG91dHB1dEFycmF5LCAiICAgICAg
ICBzZXRET01FeGNlcHRpb24oc3RhdGUsIHRocm93U2NvcGUsIGVjKTtcbiIpOwogICAgICAgICAg
ICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29k
ZShKU1ZhbHVlKCkpO1xuIik7CiAgICAgICAgICAgICAgICAgcHVzaChAJG91dHB1dEFycmF5LCAi
ICAgIH1cbiIpOwogICAgICAgICAgICAgfQogCi0gICAgICAgICAgICBpZiAoJGNvZGVHZW5lcmF0
b3ItPkV4dGVuZGVkQXR0cmlidXRlQ29udGFpbnMoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57IkNvbnN0cnVjdG9yQ2FsbFdpdGgifSwgIlNjcmlwdFN0YXRlIikpIHsKLSAgICAgICAg
ICAgICAgICAgcHVzaChAJG91dHB1dEFycmF5LCAiICAgIFJFVFVSTl9JRl9FWENFUFRJT04odGhy
b3dTY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7XG4iKTsKLSAgICAgICAgICAgIH0KLQorICAgICAg
ICAgICAgcHVzaChAJG91dHB1dEFycmF5LCAiICAgIFJFVFVSTl9JRl9FWENFUFRJT04odGhyb3dT
Y29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7XG4iKSBpZiAkY29kZUdlbmVyYXRvci0+RXh0ZW5kZWRB
dHRyaWJ1dGVDb250YWlucygkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDb25zdHJ1
Y3RvckNhbGxXaXRofSwgIlNjcmlwdFN0YXRlIik7CiAgICAgICAgICAgICBwdXNoKEAkb3V0cHV0
QXJyYXksICIgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0b0pTTmV3bHlDcmVhdGVkKHN0YXRl
LCBjYXN0ZWRUaGlzLT5nbG9iYWxPYmplY3QoKSwgV1RGTW92ZShvYmplY3QpKSk7XG4iKTsKICAg
ICAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIn1cblxuIik7CiAgICAgICAgIH0KQEAgLTU1
NDAsNyArNTQyNyw3IEBAIHN1YiBHZW5lcmF0ZUNvbnN0cnVjdG9ySGVscGVyTWV0aG9kcwogICAg
IG15ICRsZWFzdENvbnN0cnVjdG9yTGVuZ3RoID0gMDsKICAgICBpZiAoJGNvZGVHZW5lcmF0b3It
PklzQ29uc3RydWN0b3JUZW1wbGF0ZSgkaW50ZXJmYWNlLCAiRXZlbnQiKSkgewogICAgICAgICAk
bGVhc3RDb25zdHJ1Y3Rvckxlbmd0aCA9IDE7Ci0gICAgfSBlbHNpZiAoJGludGVyZmFjZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkNvbnN0cnVjdG9yIn0gfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57IkN1c3RvbUNvbnN0cnVjdG9yIn0pIHsKKyAgICB9IGVsc2lmICgkaW50ZXJm
YWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDb25zdHJ1Y3Rvcn0gfHwgJGludGVyZmFjZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57Q3VzdG9tQ29uc3RydWN0b3J9KSB7CiAgICAgICAgIG15IEBjb25z
dHJ1Y3RvcnMgPSBAeyRpbnRlcmZhY2UtPmNvbnN0cnVjdG9yc307CiAgICAgICAgIG15IEBjdXN0
b21Db25zdHJ1Y3RvcnMgPSBAeyRpbnRlcmZhY2UtPmN1c3RvbUNvbnN0cnVjdG9yc307CiAgICAg
ICAgICRsZWFzdENvbnN0cnVjdG9yTGVuZ3RoID0gMjU1OwpAQCAtNTU1OSw3ICs1NDQ2LDcgQEAg
c3ViIEdlbmVyYXRlQ29uc3RydWN0b3JIZWxwZXJNZXRob2RzCiAgICAgIyBGSVhNRTogSURMIGRv
ZXMgbm90IGFsbG93IGFuIGludGVyZmFjZSB3aXRob3V0IFtOb0ludGVyZmFjZU9iamVjdF0gdG8g
aW5oZXJpdCBvbmUgdGhhdCBpcyBtYXJrZWQgYXMgW05vSW50ZXJmYWNlT2JqZWN0XQogICAgICMg
c28gd2Ugc2hvdWxkIGJlIGFibGUgdG8gdXNlIG91ciBwYXJlbnQncyBpbnRlcmZhY2Ugb2JqZWN0
IG5vIG1hdHRlciB3aGF0LiBIb3dldmVyLCBzb21lIG9mIG91ciBJREwgZmlsZXMgKGUuZy4gQ2Fu
dmFzUmVuZGVyaW5nQ29udGV4dDJEKQogICAgICMgYXJlIG5vdCB2YWxpZCBzbyB3ZSBuZWVkIHRo
aXMgY2hlY2sgZm9yIG5vdy4KLSAgICBpZiAoJGludGVyZmFjZS0+cGFyZW50ICYmICEkY29kZUdl
bmVyYXRvci0+Z2V0SW50ZXJmYWNlRXh0ZW5kZWRBdHRyaWJ1dGVzRnJvbU5hbWUoJGludGVyZmFj
ZS0+cGFyZW50KS0+eyJOb0ludGVyZmFjZU9iamVjdCJ9KSB7CisgICAgaWYgKCRpbnRlcmZhY2Ut
PnBhcmVudCAmJiAhJGNvZGVHZW5lcmF0b3ItPmdldEludGVyZmFjZUV4dGVuZGVkQXR0cmlidXRl
c0Zyb21OYW1lKCRpbnRlcmZhY2UtPnBhcmVudCktPntOb0ludGVyZmFjZU9iamVjdH0pIHsKICAg
ICAgICAgbXkgJHBhcmVudENsYXNzTmFtZSA9ICJKUyIgLiAkaW50ZXJmYWNlLT5wYXJlbnQ7CiAg
ICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICByZXR1cm4gJHtwYXJlbnRDbGFzc05hbWV9
OjpnZXRDb25zdHJ1Y3Rvcih2bSwgJmdsb2JhbE9iamVjdCk7XG4iKTsKICAgICB9IGVsc2lmICgk
aW50ZXJmYWNlLT5pc0NhbGxiYWNrKSB7CkBAIC01NjI0LDYyICs1NTExLDYwIEBAIHN1YiBHZW5l
cmF0ZUNvbnN0cnVjdG9ySGVscGVyTWV0aG9kcwogc3ViIEhhc0N1c3RvbUNvbnN0cnVjdG9yCiB7
CiAgICAgbXkgJGludGVyZmFjZSA9IHNoaWZ0OwotCi0gICAgcmV0dXJuICRpbnRlcmZhY2UtPmV4
dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21Db25zdHJ1Y3RvciJ9OworICAgIHJldHVybiAkaW50
ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDdXN0b21Db25zdHJ1Y3Rvcn07CiB9CiAKIHN1
YiBIYXNDdXN0b21HZXR0ZXIKIHsKLSAgICBteSAkYXR0ckV4dCA9IHNoaWZ0OwotICAgIHJldHVy
biAkYXR0ckV4dC0+eyJDdXN0b20ifSB8fCAkYXR0ckV4dC0+eyJDdXN0b21HZXR0ZXIifSA7Cisg
ICAgbXkgJGV4dGVuZGVkQXR0cmlidXRlcyA9IHNoaWZ0OworICAgIHJldHVybiAkZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57Q3VzdG9tfSB8fCAkZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Q3VzdG9tR2V0dGVy
fSA7CiB9CiAKIHN1YiBIYXNDdXN0b21TZXR0ZXIKIHsKLSAgICBteSAkYXR0ckV4dCA9IHNoaWZ0
OwotICAgIHJldHVybiAkYXR0ckV4dC0+eyJDdXN0b20ifSB8fCAkYXR0ckV4dC0+eyJDdXN0b21T
ZXR0ZXIifTsKKyAgICBteSAkZXh0ZW5kZWRBdHRyaWJ1dGVzID0gc2hpZnQ7CisgICAgcmV0dXJu
ICRleHRlbmRlZEF0dHJpYnV0ZXMtPntDdXN0b219IHx8ICRleHRlbmRlZEF0dHJpYnV0ZXMtPntD
dXN0b21TZXR0ZXJ9OwogfQogCiBzdWIgSGFzQ3VzdG9tTWV0aG9kCiB7Ci0gICAgbXkgJGF0dHJF
eHQgPSBzaGlmdDsKLSAgICByZXR1cm4gJGF0dHJFeHQtPnsiQ3VzdG9tIn07CisgICAgbXkgJGV4
dGVuZGVkQXR0cmlidXRlcyA9IHNoaWZ0OworICAgIHJldHVybiAkZXh0ZW5kZWRBdHRyaWJ1dGVz
LT57Q3VzdG9tfTsKIH0KIAogc3ViIE5lZWRzQ29uc3RydWN0b3JQcm9wZXJ0eQogewogICAgIG15
ICRpbnRlcmZhY2UgPSBzaGlmdDsKLQotICAgIHJldHVybiAhJGludGVyZmFjZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57Ik5vSW50ZXJmYWNlT2JqZWN0In0gfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57IkN1c3RvbUNvbnN0cnVjdG9yIn07CisgICAgcmV0dXJuICEkaW50ZXJmYWNl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPntOb0ludGVyZmFjZU9iamVjdH0gfHwgJGludGVyZmFjZS0+
ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Q3VzdG9tQ29uc3RydWN0b3J9OwogfQogCiBzdWIgSXNSZXR1
cm5pbmdQcm9taXNlCiB7CiAgICAgbXkgJGZ1bmN0aW9uID0gc2hpZnQ7Ci0KLSAgICByZXR1cm4g
JGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUgZXEgIlByb21pc2UiIGlmICgkZnVuY3Rpb24tPnNp
Z25hdHVyZS0+dHlwZSk7CisgICAgcmV0dXJuICRmdW5jdGlvbi0+c2lnbmF0dXJlLT50eXBlICYm
ICRmdW5jdGlvbi0+c2lnbmF0dXJlLT50eXBlIGVxICJQcm9taXNlIjsKIH0KIAogc3ViIElzQ29u
c3RydWN0YWJsZQogewogICAgIG15ICRpbnRlcmZhY2UgPSBzaGlmdDsKLQotICAgIHJldHVybiBI
YXNDdXN0b21Db25zdHJ1Y3RvcigkaW50ZXJmYWNlKSB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiQ29uc3RydWN0b3IifSB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPnsiTmFtZWRDb25zdHJ1Y3RvciJ9IHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRl
cy0+eyJDb25zdHJ1Y3RvclRlbXBsYXRlIn0gfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57IkpTQnVpbHRpbkNvbnN0cnVjdG9yIn07CisgICAgcmV0dXJuIEhhc0N1c3RvbUNvbnN0
cnVjdG9yKCRpbnRlcmZhY2UpCisgICAgICAgIHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmli
dXRlcy0+e0NvbnN0cnVjdG9yfQorICAgICAgICB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJp
YnV0ZXMtPntOYW1lZENvbnN0cnVjdG9yfQorICAgICAgICB8fCAkaW50ZXJmYWNlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPntDb25zdHJ1Y3RvclRlbXBsYXRlfQorICAgICAgICB8fCAkaW50ZXJmYWNl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPntKU0J1aWx0aW5Db25zdHJ1Y3Rvcn07CiB9CiAKIHN1YiBI
ZWFkZXJOZWVkc1Byb3RvdHlwZURlY2xhcmF0aW9uCiB7CiAgICAgbXkgJGludGVyZmFjZSA9IHNo
aWZ0OwotCi0gICAgcmV0dXJuIElzRE9NR2xvYmFsT2JqZWN0KCRpbnRlcmZhY2UpIHx8ICRpbnRl
cmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0N1c3RvbU5hbWVkR2V0dGVyT25Qcm90b3R5
cGUifSB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNDdXN0b21EZWZpbmVP
d25Qcm9wZXJ0eU9uUHJvdG90eXBlIn07CisgICAgcmV0dXJuIElzRE9NR2xvYmFsT2JqZWN0KCRp
bnRlcmZhY2UpIHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+e0pTQ3VzdG9tTmFt
ZWRHZXR0ZXJPblByb3RvdHlwZX0gfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
SlNDdXN0b21EZWZpbmVPd25Qcm9wZXJ0eU9uUHJvdG90eXBlfTsKIH0KIAogc3ViIElzVW5mb3Jn
ZWFibGUKIHsKICAgICBteSAkaW50ZXJmYWNlID0gc2hpZnQ7CiAgICAgbXkgJHByb3BlcnR5ID0g
c2hpZnQ7Ci0KLSAgICByZXR1cm4gJHByb3BlcnR5LT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmli
dXRlcy0+eyJVbmZvcmdlYWJsZSJ9IHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+
eyJVbmZvcmdlYWJsZSJ9OworICAgIHJldHVybiAkcHJvcGVydHktPnNpZ25hdHVyZS0+ZXh0ZW5k
ZWRBdHRyaWJ1dGVzLT57VW5mb3JnZWFibGV9IHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmli
dXRlcy0+e1VuZm9yZ2VhYmxlfTsKIH0KIAogc3ViIENvbXB1dGVGdW5jdGlvblNwZWNpYWwKQEAg
LTU2ODksNyArNTU3NCw3IEBAIHN1YiBDb21wdXRlRnVuY3Rpb25TcGVjaWFsCiAKICAgICBteSBA
c3BlY2lhbHMgPSAoKTsKICAgICBwdXNoKEBzcGVjaWFscywgKCJEb250RGVsZXRlIiwgIlJlYWRP
bmx5IikpIGlmIElzVW5mb3JnZWFibGUoJGludGVyZmFjZSwgJGZ1bmN0aW9uKTsKLSAgICBwdXNo
KEBzcGVjaWFscywgIkRvbnRFbnVtIikgaWYgJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVk
QXR0cmlidXRlcy0+eyJOb3RFbnVtZXJhYmxlIn07CisgICAgcHVzaChAc3BlY2lhbHMsICJEb250
RW51bSIpIGlmICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntOb3RF
bnVtZXJhYmxlfTsKICAgICBpZiAoSXNKU0J1aWx0aW4oJGludGVyZmFjZSwgJGZ1bmN0aW9uKSkg
ewogICAgICAgICBwdXNoKEBzcGVjaWFscywgIkpTQzo6QnVpbHRpbiIpOwogICAgIH0KQEAgLTU3
MDMsMTIgKzU1ODgsMTIgQEAgc3ViIElzSlNCdWlsdGluCiB7CiAgICAgbXkgKCRpbnRlcmZhY2Us
ICRvYmplY3QpID0gQF87CiAKLSAgICByZXR1cm4gMCBpZiAkb2JqZWN0LT5zaWduYXR1cmUtPmV4
dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b20ifTsKLSAgICByZXR1cm4gMCBpZiAkb2JqZWN0LT5z
aWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21HZXR0ZXIifTsKLSAgICByZXR1
cm4gMCBpZiAkb2JqZWN0LT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21T
ZXR0ZXIifTsKKyAgICByZXR1cm4gMCBpZiAkb2JqZWN0LT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0
cmlidXRlcy0+e0N1c3RvbX07CisgICAgcmV0dXJuIDAgaWYgJG9iamVjdC0+c2lnbmF0dXJlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPntDdXN0b21HZXR0ZXJ9OworICAgIHJldHVybiAwIGlmICRvYmpl
Y3QtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Q3VzdG9tU2V0dGVyfTsKIAotICAg
IHJldHVybiAxIGlmICRvYmplY3QtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpT
QnVpbHRpbiJ9OwotICAgIHJldHVybiAxIGlmICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRl
cy0+eyJKU0J1aWx0aW4ifTsKKyAgICByZXR1cm4gMSBpZiAkb2JqZWN0LT5zaWduYXR1cmUtPmV4
dGVuZGVkQXR0cmlidXRlcy0+e0pTQnVpbHRpbn07CisgICAgcmV0dXJuIDEgaWYgJGludGVyZmFj
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57SlNCdWlsdGlufTsKIAogICAgIHJldHVybiAwOwogfQpA
QCAtNTcxNywxNiArNTYwMiwxNiBAQCBzdWIgSXNKU0J1aWx0aW5Db25zdHJ1Y3RvcgogewogICAg
IG15ICgkaW50ZXJmYWNlKSA9IEBfOwogCi0gICAgcmV0dXJuIDAgaWYgJGludGVyZmFjZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbUNvbnN0cnVjdG9yIn07Ci0gICAgcmV0dXJuIDEgaWYg
JGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQnVpbHRpbiJ9OwotICAgIHJldHVy
biAxIGlmICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0J1aWx0aW5Db25zdHJ1
Y3RvciJ9OworICAgIHJldHVybiAwIGlmICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+
e0N1c3RvbUNvbnN0cnVjdG9yfTsKKyAgICByZXR1cm4gMSBpZiAkaW50ZXJmYWNlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPntKU0J1aWx0aW59OworICAgIHJldHVybiAxIGlmICRpbnRlcmZhY2UtPmV4
dGVuZGVkQXR0cmlidXRlcy0+e0pTQnVpbHRpbkNvbnN0cnVjdG9yfTsKICAgICByZXR1cm4gMDsK
IH0KIAogc3ViIEdldEpTQnVpbHRpbkZ1bmN0aW9uTmFtZQogewogICAgIG15ICgkY2xhc3NOYW1l
LCAkZnVuY3Rpb24pID0gQF87Ci0gICAgbXkgJHNjb3BlTmFtZSA9ICRmdW5jdGlvbi0+c2lnbmF0
dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW1wbGVtZW50ZWRCeSJ9OworICAgIG15ICRzY29w
ZU5hbWUgPSAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57SW1wbGVt
ZW50ZWRCeX07CiAgICAgJHNjb3BlTmFtZSA9IHN1YnN0ciAkY2xhc3NOYW1lLCAyIHVubGVzcyAk
c2NvcGVOYW1lOwogICAgIHJldHVybiBHZXRKU0J1aWx0aW5GdW5jdGlvbk5hbWVGcm9tU3RyaW5n
KCRzY29wZU5hbWUsICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1lKTsKIH0KQEAgLTU3MzksMjgg
KzU2MjQsMjUgQEAgc3ViIEdldEpTQnVpbHRpbkZ1bmN0aW9uTmFtZUZyb21TdHJpbmcKIAogc3Vi
IEdldEpTQnVpbHRpblNjb3BlTmFtZQogewotICAgIG15ICRpbnRlcmZhY2UgPSBzaGlmdDsKLSAg
ICBteSAkb2JqZWN0ID0gc2hpZnQ7Ci0KLSAgICByZXR1cm4gJG9iamVjdC0+c2lnbmF0dXJlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPnsiSW1wbGVtZW50ZWRCeSJ9IGlmICRvYmplY3QtPnNpZ25hdHVy
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkltcGxlbWVudGVkQnkifTsKLSAgICByZXR1cm4gJGlu
dGVyZmFjZS0+bmFtZTsKKyAgICBteSAoJGludGVyZmFjZSwgJG9iamVjdCkgPSBAXzsKKyAgICBy
ZXR1cm4gJG9iamVjdC0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntJbXBsZW1lbnRl
ZEJ5fSB8fCAkaW50ZXJmYWNlLT5uYW1lOwogfQogCiBzdWIgQWRkSlNCdWlsdGluSW5jbHVkZXNJ
Zk5lZWRlZCgpCiB7CiAgICAgbXkgJGludGVyZmFjZSA9IHNoaWZ0OwogCi0gICAgaWYgKCRpbnRl
cmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0J1aWx0aW4ifSB8fCAkaW50ZXJmYWNlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNCdWlsdGluQ29uc3RydWN0b3IifSkgeworICAgIGlmICgk
aW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntKU0J1aWx0aW59IHx8ICRpbnRlcmZhY2Ut
PmV4dGVuZGVkQXR0cmlidXRlcy0+e0pTQnVpbHRpbkNvbnN0cnVjdG9yfSkgewogICAgICAgICBB
ZGRUb0ltcGxJbmNsdWRlcygkaW50ZXJmYWNlLT5uYW1lIC4gIkJ1aWx0aW5zLmgiKTsKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KIAogICAgIGZvcmVhY2ggbXkgJGZ1bmN0aW9uIChAeyRpbnRlcmZh
Y2UtPmZ1bmN0aW9uc30pIHsKLSAgICAgICAgQWRkVG9JbXBsSW5jbHVkZXMoR2V0SlNCdWlsdGlu
U2NvcGVOYW1lKCRpbnRlcmZhY2UsICRmdW5jdGlvbikgLiAiQnVpbHRpbnMuaCIsICRmdW5jdGlv
bi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ29uZGl0aW9uYWwifSkgaWYgSXNK
U0J1aWx0aW4oJGludGVyZmFjZSwgJGZ1bmN0aW9uKTsKKyAgICAgICAgQWRkVG9JbXBsSW5jbHVk
ZXMoR2V0SlNCdWlsdGluU2NvcGVOYW1lKCRpbnRlcmZhY2UsICRmdW5jdGlvbikgLiAiQnVpbHRp
bnMuaCIsICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDb25kaXRp
b25hbH0pIGlmIElzSlNCdWlsdGluKCRpbnRlcmZhY2UsICRmdW5jdGlvbik7CiAgICAgfQogCiAg
ICAgZm9yZWFjaCBteSAkYXR0cmlidXRlIChAeyRpbnRlcmZhY2UtPmF0dHJpYnV0ZXN9KSB7Ci0g
ICAgICAgIEFkZFRvSW1wbEluY2x1ZGVzKEdldEpTQnVpbHRpblNjb3BlTmFtZSgkaW50ZXJmYWNl
LCAkYXR0cmlidXRlKSAuICJCdWlsdGlucy5oIiwgJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRl
bmRlZEF0dHJpYnV0ZXMtPnsiQ29uZGl0aW9uYWwifSkgaWYgSXNKU0J1aWx0aW4oJGludGVyZmFj
ZSwgJGF0dHJpYnV0ZSk7CisgICAgICAgIEFkZFRvSW1wbEluY2x1ZGVzKEdldEpTQnVpbHRpblNj
b3BlTmFtZSgkaW50ZXJmYWNlLCAkYXR0cmlidXRlKSAuICJCdWlsdGlucy5oIiwgJGF0dHJpYnV0
ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDb25kaXRpb25hbH0pIGlmIElzSlNC
dWlsdGluKCRpbnRlcmZhY2UsICRhdHRyaWJ1dGUpOwogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQKaW5kZXggZDI4ODVh
ODQyZDc0NDA5OTFjNjM4Mzk3MGNjN2Q5YjJhNjVmNDI2ZC4uM2MyNGE1NDIxYWNhMzJjZDcyNmI5
OGI3ZDk5YzhkODMwNmFjNmY2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0CkBAIC0zMyw3ICszMyw3IEBAIENvbmRpdGlvbmFsPSoK
IENvbnN0cnVjdG9yCiBDb25zdHJ1Y3RvckNhbGxXaXRoPURvY3VtZW50fFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHR8U2NyaXB0U3RhdGUKIENvbnN0cnVjdG9yQ29uZGl0aW9uYWw9KgotQ29uc3RydWN0
b3JSYWlzZXNFeGNlcHRpb24KK0NvbnN0cnVjdG9yTWF5VGhyb3dMZWdhY3lFeGNlcHRpb24KIENv
bnN0cnVjdG9yVGVtcGxhdGU9RXZlbnR8VHlwZWRBcnJheQogQ3VzdG9tCiBDdXN0b21DYWxsCkBA
IC02OCw4ICs2OCw4IEBAIEV4cG9ydFRvV3JhcHBlZEZ1bmN0aW9uCiBFeHBvc2VkPSoKIEZvcndh
cmREZWNsYXJlSW5IZWFkZXIKIEdlbmVyYXRlSXNSZWFjaGFibGU9fEltcGx8SW1wbFdlYkdMUmVu
ZGVyaW5nQ29udGV4dHxJbXBsRG9jdW1lbnR8SW1wbEVsZW1lbnRSb290fEltcGxGcmFtZXxJbXBs
T3duZXJOb2RlUm9vdHxJbXBsU2NyaXB0RXhlY3V0aW9uQ29udGV4dAotR2V0dGVyUmFpc2VzRXhj
ZXB0aW9uCi1HZXR0ZXJSYWlzZXNFeGNlcHRpb25XaXRoTWVzc2FnZQorR2V0dGVyTWF5VGhyb3dM
ZWdhY3lFeGNlcHRpb24KK0dldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uV2l0aE1lc3NhZ2UK
IEltbXV0YWJsZQogSW1wbGVtZW50ZWRBcz0qCiBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCkBA
IC05NSw2ICs5NSw4IEBAIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdAogSlNMZWdhY3lQYXJlbnQ9
KgogTGVuaWVudFRoaXMKIE1hc3F1ZXJhZGVzQXNVbmRlZmluZWQKK01heVRocm93TGVnYWN5RXhj
ZXB0aW9uCitNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbldpdGhNZXNzYWdlCiBOYW1lZENvbnN0cnVj
dG9yPSoKIE5ld0ltcHVyZVByb3BlcnR5RmlyZXNXYXRjaHBvaW50cwogTmV3T2JqZWN0CkBAIC0x
MDYsMTYgKzEwOCwxNCBAQCBQYXNzQ29udGV4dAogUHJpdmF0ZUlkZW50aWZpZXIKIFB1YmxpY0lk
ZW50aWZpZXIKIFB1dEZvcndhcmRzPSoKLVJhaXNlc0V4Y2VwdGlvbgotUmFpc2VzRXhjZXB0aW9u
V2l0aE1lc3NhZ2UKIFJlZmxlY3Q9KgogUmVwbGFjZWFibGUKIFJlcG9ydEV4dHJhTWVtb3J5Q29z
dAogUmVwb3J0RXh0ZXJuYWxNZW1vcnlDb3N0CiBSZXF1aXJlc0V4aXN0aW5nQXRvbWljU3RyaW5n
Ci1TZXR0ZXJSYWlzZXNFeGNlcHRpb24KLVNldHRlclJhaXNlc0V4Y2VwdGlvbldpdGhNZXNzYWdl
CiBTZXR0ZXJDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0fFNjcmlwdFN0YXRlfFNjcmlw
dEFyZ3VtZW50c3xDYWxsU3RhY2t8QWN0aXZlV2luZG93fEZpcnN0V2luZG93CitTZXR0ZXJNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbgorU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25XaXRoTWVz
c2FnZQogU2tpcFZUYWJsZVZhbGlkYXRpb24KIFN1cHByZXNzVG9KU09iamVjdAogVHJlYXROdWxs
QXM9RW1wdHlTdHJpbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU0ludGVyZmFjZU5hbWUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTSW50ZXJmYWNlTmFtZS5jcHAKaW5kZXggNWUwZmIxNzUyNDk0MTg2
ZmUzZTEyMWYzMzZiODdiMTllMmI0ZTg4Yi4uZGVhYWU2M2MxMjg4NDY1N2M4MDA3YjNkZjNiMDE4
ODdiNjJjNGE0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTSW50ZXJmYWNlTmFtZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTSW50ZXJmYWNlTmFtZS5jcHAKQEAgLTM3LDcgKzM3LDcgQEAgYm9v
bCBzZXRKU0ludGVyZmFjZU5hbWVDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6RW5j
b2RlZEpTVmFsdWUsIEpTQzo6RW4KIAogY2xhc3MgSlNJbnRlcmZhY2VOYW1lUHJvdG90eXBlIDog
cHVibGljIEpTQzo6SlNOb25GaW5hbE9iamVjdCB7CiBwdWJsaWM6Ci0gICAgdHlwZWRlZiBKU0M6
OkpTTm9uRmluYWxPYmplY3QgQmFzZTsKKyAgICB1c2luZyBCYXNlID0gSlNDOjpKU05vbkZpbmFs
T2JqZWN0OwogICAgIHN0YXRpYyBKU0ludGVyZmFjZU5hbWVQcm90b3R5cGUqIGNyZWF0ZShKU0M6
OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OlN0cnVjdHVy
ZSogc3RydWN0dXJlKQogICAgIHsKICAgICAgICAgSlNJbnRlcmZhY2VOYW1lUHJvdG90eXBlKiBw
dHIgPSBuZXcgKE5vdE51bGwsIEpTQzo6YWxsb2NhdGVDZWxsPEpTSW50ZXJmYWNlTmFtZVByb3Rv
dHlwZT4odm0uaGVhcCkpIEpTSW50ZXJmYWNlTmFtZVByb3RvdHlwZSh2bSwgZ2xvYmFsT2JqZWN0
LCBzdHJ1Y3R1cmUpOwpAQCAtNjAsNyArNjAsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZmluaXNo
Q3JlYXRpb24oSlNDOjpWTSYpOwogfTsKIAotdHlwZWRlZiBKU0RPTUNvbnN0cnVjdG9yTm90Q29u
c3RydWN0YWJsZTxKU0ludGVyZmFjZU5hbWU+IEpTSW50ZXJmYWNlTmFtZUNvbnN0cnVjdG9yOwor
dXNpbmcgSlNJbnRlcmZhY2VOYW1lQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29u
c3RydWN0YWJsZTxKU0ludGVyZmFjZU5hbWU+OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNJbnRl
cmZhY2VOYW1lQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
Y29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0ludGVyZmFjZU5hbWUuaCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0ludGVyZmFjZU5hbWUu
aAppbmRleCBjYmRjYjBiMDdhMmM5NGJmYmNiZjM4MWQ3ZDNkOWFhZGUwZjRhN2NmLi5iNjcyOTUx
Njc2MzU3NWNiYzZhMTdjMTdjYmEzOTNkZGNhZjdmMTY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNJbnRlcmZhY2VOYW1lLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTSW50ZXJmYWNlTmFtZS5oCkBA
IC0yOCw3ICsyOCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgSlNJbnRlcmZhY2VO
YW1lIDogcHVibGljIEpTRE9NV3JhcHBlcjxJbnRlcmZhY2VOYW1lPiB7CiBwdWJsaWM6Ci0gICAg
dHlwZWRlZiBKU0RPTVdyYXBwZXI8SW50ZXJmYWNlTmFtZT4gQmFzZTsKKyAgICB1c2luZyBCYXNl
ID0gSlNET01XcmFwcGVyPEludGVyZmFjZU5hbWU+OwogICAgIHN0YXRpYyBKU0ludGVyZmFjZU5h
bWUqIGNyZWF0ZShKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCBSZWY8SW50ZXJmYWNlTmFtZT4mJiBpbXBsKQogICAgIHsKICAgICAgICAg
SlNJbnRlcmZhY2VOYW1lKiBwdHIgPSBuZXcgKE5vdE51bGwsIEpTQzo6YWxsb2NhdGVDZWxsPEpT
SW50ZXJmYWNlTmFtZT4oZ2xvYmFsT2JqZWN0LT52bSgpLmhlYXApKSBKU0ludGVyZmFjZU5hbWUo
c3RydWN0dXJlLCAqZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RBY3RpdmVET01PYmpl
Y3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEFj
dGl2ZURPTU9iamVjdC5jcHAKaW5kZXggZjE4MjMwY2I3ZDdiNzBmNDdlMmU2ODM2YTQ2ZTI5MzJh
ZmRlNmJhZS4uYWU3YzFkZGE4YWFkZWIyMDcxZjM0Mzg3MWE1OGU5ZjgwYWUzOTc2YSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEFjdGl2
ZURPTU9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEFjdGl2ZURPTU9iamVjdC5jcHAKQEAgLTQ2LDcgKzQ2LDcgQEAgYm9vbCBzZXRK
U1Rlc3RBY3RpdmVET01PYmplY3RDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6RW5j
b2RlZEpTVmFsdWUsIEoKIAogY2xhc3MgSlNUZXN0QWN0aXZlRE9NT2JqZWN0UHJvdG90eXBlIDog
cHVibGljIEpTQzo6SlNOb25GaW5hbE9iamVjdCB7CiBwdWJsaWM6Ci0gICAgdHlwZWRlZiBKU0M6
OkpTTm9uRmluYWxPYmplY3QgQmFzZTsKKyAgICB1c2luZyBCYXNlID0gSlNDOjpKU05vbkZpbmFs
T2JqZWN0OwogICAgIHN0YXRpYyBKU1Rlc3RBY3RpdmVET01PYmplY3RQcm90b3R5cGUqIGNyZWF0
ZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OlN0
cnVjdHVyZSogc3RydWN0dXJlKQogICAgIHsKICAgICAgICAgSlNUZXN0QWN0aXZlRE9NT2JqZWN0
UHJvdG90eXBlKiBwdHIgPSBuZXcgKE5vdE51bGwsIEpTQzo6YWxsb2NhdGVDZWxsPEpTVGVzdEFj
dGl2ZURPTU9iamVjdFByb3RvdHlwZT4odm0uaGVhcCkpIEpTVGVzdEFjdGl2ZURPTU9iamVjdFBy
b3RvdHlwZSh2bSwgZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1cmUpOwpAQCAtNjksNyArNjksNyBAQCBw
cml2YXRlOgogICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oSlNDOjpWTSYpOwogfTsKIAotdHlwZWRl
ZiBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RBY3RpdmVET01PYmplY3Q+
IEpTVGVzdEFjdGl2ZURPTU9iamVjdENvbnN0cnVjdG9yOwordXNpbmcgSlNUZXN0QWN0aXZlRE9N
T2JqZWN0Q29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rl
c3RBY3RpdmVET01PYmplY3Q+OwogCiAvKiBIYXNoIHRhYmxlICovCiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RBY3RpdmVET01PYmpl
Y3QuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RBY3Rp
dmVET01PYmplY3QuaAppbmRleCA5NWVkZTdiMjVmNjA1ZDQxMmE4ZTkwYmEyZDUzYmRiZmM4MTU5
MTRlLi40MGQ1YTI3YzFmZjA0MGJmYWUxM2RjN2E1YjI5MGE5OWFkMjMzZTk2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0QWN0aXZlRE9N
T2JqZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEFjdGl2ZURPTU9iamVjdC5oCkBAIC0yOCw3ICsyOCw3IEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAogY2xhc3MgSlNUZXN0QWN0aXZlRE9NT2JqZWN0IDogcHVibGljIEpTRE9NV3JhcHBlcjxU
ZXN0QWN0aXZlRE9NT2JqZWN0PiB7CiBwdWJsaWM6Ci0gICAgdHlwZWRlZiBKU0RPTVdyYXBwZXI8
VGVzdEFjdGl2ZURPTU9iamVjdD4gQmFzZTsKKyAgICB1c2luZyBCYXNlID0gSlNET01XcmFwcGVy
PFRlc3RBY3RpdmVET01PYmplY3Q+OwogICAgIHN0YXRpYyBKU1Rlc3RBY3RpdmVET01PYmplY3Qq
IGNyZWF0ZShKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBSZWY8VGVzdEFjdGl2ZURPTU9iamVjdD4mJiBpbXBsKQogICAgIHsKICAgICAg
ICAgSlNUZXN0QWN0aXZlRE9NT2JqZWN0KiBwdHIgPSBuZXcgKE5vdE51bGwsIEpTQzo6YWxsb2Nh
dGVDZWxsPEpTVGVzdEFjdGl2ZURPTU9iamVjdD4oZ2xvYmFsT2JqZWN0LT52bSgpLmhlYXApKSBK
U1Rlc3RBY3RpdmVET01PYmplY3Qoc3RydWN0dXJlLCAqZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGlt
cGwpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RDYWxsYmFjay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0Q2FsbGJhY2suY3BwCmluZGV4IDY1ODJlNjI0N2VkOWM3MTIxNmYxMWY1N2Rl
MTVkYzQ5ZjRiNTA5NjguLjM0MWUzYTA4ZDczZDlkODA1MTQ3NjFkY2ViYjdhYmZlMDQyMGU4MWYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RDYWxsYmFjay5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdENhbGxiYWNrLmNwcApAQCAtNTksNyArNTksNyBAQCBKU1Rlc3RDYWxsYmFjazo6
fkpTVGVzdENhbGxiYWNrKCkKICNlbmRpZgogfQogCi10eXBlZGVmIEpTRE9NQ29uc3RydWN0b3JO
b3RDb25zdHJ1Y3RhYmxlPEpTVGVzdENhbGxiYWNrPiBKU1Rlc3RDYWxsYmFja0NvbnN0cnVjdG9y
OwordXNpbmcgSlNUZXN0Q2FsbGJhY2tDb25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RD
b25zdHJ1Y3RhYmxlPEpTVGVzdENhbGxiYWNrPjsKIAogLyogSGFzaCB0YWJsZSBmb3IgY29uc3Ry
dWN0b3IgKi8KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5D
b25zdHJ1Y3Rvci5jcHAKaW5kZXggNDI3ZWIxYzIxNWJlYzMwODkyOTBhNWQ5Mjg1NzQ0OWUwOTEw
OGFlOS4uMDdhZGRkYjhkOTFkZmU3MGViOTZmZDQxMDVlZWZhNmZiZjJiM2VhYSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENsYXNzV2l0
aEpTQnVpbHRpbkNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IuY3BwCkBA
IC0zOCw3ICszOCw3IEBAIGJvb2wgc2V0SlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0
b3JDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6RW5jCiAKIGNsYXNzIEpTVGVzdENs
YXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yUHJvdG90eXBlIDogcHVibGljIEpTQzo6SlNOb25G
aW5hbE9iamVjdCB7CiBwdWJsaWM6Ci0gICAgdHlwZWRlZiBKU0M6OkpTTm9uRmluYWxPYmplY3Qg
QmFzZTsKKyAgICB1c2luZyBCYXNlID0gSlNDOjpKU05vbkZpbmFsT2JqZWN0OwogICAgIHN0YXRp
YyBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZSogY3JlYXRlKEpT
Qzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6U3RydWN0
dXJlKiBzdHJ1Y3R1cmUpCiAgICAgewogICAgICAgICBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5D
b25zdHJ1Y3RvclByb3RvdHlwZSogcHRyID0gbmV3IChOb3ROdWxsLCBKU0M6OmFsbG9jYXRlQ2Vs
bDxKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZT4odm0uaGVhcCkp
IEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yUHJvdG90eXBlKHZtLCBnbG9iYWxP
YmplY3QsIHN0cnVjdHVyZSk7CkBAIC02MSw3ICs2MSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBm
aW5pc2hDcmVhdGlvbihKU0M6OlZNJik7CiB9OwogCi10eXBlZGVmIEpTQnVpbHRpbkNvbnN0cnVj
dG9yPEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yPiBKU1Rlc3RDbGFzc1dpdGhK
U0J1aWx0aW5Db25zdHJ1Y3RvckNvbnN0cnVjdG9yOwordXNpbmcgSlNUZXN0Q2xhc3NXaXRoSlNC
dWlsdGluQ29uc3RydWN0b3JDb25zdHJ1Y3RvciA9IEpTQnVpbHRpbkNvbnN0cnVjdG9yPEpTVGVz
dENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yPjsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpT
VGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yQ29uc3RydWN0b3I6OnByb3RvdHlwZUZv
clN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9i
amVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvci5oIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0
cnVjdG9yLmgKaW5kZXggYWE3MDkxNmQwNWZjNDIyNTEzYmI0NTdlNmIyNzQ1YTEzODBjNDdmMi4u
OWM4MjVhYmI5OWJhNjU1NTIxMzg4NmFmYThhOTI1M2IwOGMzMjFmYyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENsYXNzV2l0aEpTQnVp
bHRpbkNvbnN0cnVjdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yLmgKQEAgLTI4LDcgKzI4
LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0
aW5Db25zdHJ1Y3RvciA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdENsYXNzV2l0aEpTQnVpbHRp
bkNvbnN0cnVjdG9yPiB7CiBwdWJsaWM6Ci0gICAgdHlwZWRlZiBKU0RPTVdyYXBwZXI8VGVzdENs
YXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yPiBCYXNlOworICAgIHVzaW5nIEJhc2UgPSBKU0RP
TVdyYXBwZXI8VGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yPjsKICAgICBzdGF0aWMg
SlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IqIGNyZWF0ZShKU0M6OlN0cnVjdHVy
ZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdENs
YXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yPiYmIGltcGwpCiAgICAgewogICAgICAgICBKU1Rl
c3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvciogcHRyID0gbmV3IChOb3ROdWxsLCBKU0M6
OmFsbG9jYXRlQ2VsbDxKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvcj4oZ2xvYmFs
T2JqZWN0LT52bSgpLmhlYXApKSBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvcihz
dHJ1Y3R1cmUsICpnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEN1c3RvbUNvbnN0cnVj
dG9yV2l0aE5vSW50ZXJmYWNlT2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RDdXN0b21Db25zdHJ1Y3RvcldpdGhOb0ludGVyZmFjZU9iamVj
dC5jcHAKaW5kZXggNWJjM2QwNWM1OWY3ZGMyMGU4ZGNmYTliZDhkMmYwMzI1NzFjYjBlNy4uYTM1
OWM1NDhhYjA5NWIxNDM2NDYyNzRhNGNlYTUzZWNmNDk5M2I4ZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEN1c3RvbUNvbnN0cnVjdG9y
V2l0aE5vSW50ZXJmYWNlT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q3VzdG9tQ29uc3RydWN0b3JXaXRoTm9JbnRlcmZhY2VPYmpl
Y3QuY3BwCkBAIC0zNyw3ICszNyw3IEBAIGJvb2wgc2V0SlNUZXN0Q3VzdG9tQ29uc3RydWN0b3JX
aXRoTm9JbnRlcmZhY2VPYmplY3RDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosCiAKIGNsYXNz
IEpTVGVzdEN1c3RvbUNvbnN0cnVjdG9yV2l0aE5vSW50ZXJmYWNlT2JqZWN0UHJvdG90eXBlIDog
cHVibGljIEpTQzo6SlNOb25GaW5hbE9iamVjdCB7CiBwdWJsaWM6Ci0gICAgdHlwZWRlZiBKU0M6
OkpTTm9uRmluYWxPYmplY3QgQmFzZTsKKyAgICB1c2luZyBCYXNlID0gSlNDOjpKU05vbkZpbmFs
T2JqZWN0OwogICAgIHN0YXRpYyBKU1Rlc3RDdXN0b21Db25zdHJ1Y3RvcldpdGhOb0ludGVyZmFj
ZU9iamVjdFByb3RvdHlwZSogY3JlYXRlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgewogICAgICAg
ICBKU1Rlc3RDdXN0b21Db25zdHJ1Y3RvcldpdGhOb0ludGVyZmFjZU9iamVjdFByb3RvdHlwZSog
cHRyID0gbmV3IChOb3ROdWxsLCBKU0M6OmFsbG9jYXRlQ2VsbDxKU1Rlc3RDdXN0b21Db25zdHJ1
Y3RvcldpdGhOb0ludGVyZmFjZU9iamVjdFByb3RvdHlwZT4odm0uaGVhcCkpIEpTVGVzdEN1c3Rv
bUNvbnN0cnVjdG9yV2l0aE5vSW50ZXJmYWNlT2JqZWN0UHJvdG90eXBlKHZtLCBnbG9iYWxPYmpl
Y3QsIHN0cnVjdHVyZSk7CkBAIC02MCw3ICs2MCw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBmaW5p
c2hDcmVhdGlvbihKU0M6OlZNJik7CiB9OwogCi10eXBlZGVmIEpTRE9NQ29uc3RydWN0b3I8SlNU
ZXN0Q3VzdG9tQ29uc3RydWN0b3JXaXRoTm9JbnRlcmZhY2VPYmplY3Q+IEpTVGVzdEN1c3RvbUNv
bnN0cnVjdG9yV2l0aE5vSW50ZXJmYWNlT2JqZWN0Q29uc3RydWN0b3I7Cit1c2luZyBKU1Rlc3RD
dXN0b21Db25zdHJ1Y3RvcldpdGhOb0ludGVyZmFjZU9iamVjdENvbnN0cnVjdG9yID0gSlNET01D
b25zdHJ1Y3RvcjxKU1Rlc3RDdXN0b21Db25zdHJ1Y3RvcldpdGhOb0ludGVyZmFjZU9iamVjdD47
CiAKIHRlbXBsYXRlPD4gSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEpTVGVzdEN1
c3RvbUNvbnN0cnVjdG9yV2l0aE5vSW50ZXJmYWNlT2JqZWN0Q29uc3RydWN0b3I6OmNvbnN0cnVj
dChKU0M6OkV4ZWNTdGF0ZSogZXhlYykKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDdXN0b21Db25zdHJ1Y3RvcldpdGhOb0ludGVy
ZmFjZU9iamVjdC5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEN1c3RvbUNvbnN0cnVjdG9yV2l0aE5vSW50ZXJmYWNlT2JqZWN0LmgKaW5kZXggZDA3NTk5
NTkzOTkzZWMwOGQyY2U4MTkzMjM3OWU1NGMxY2ZlYTE1My4uMTdiOWNhODAwMWIyMmRhMDdjYzEx
ZTE4M2Y5NTQ5YTVkMDg4OWEwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEN1c3RvbUNvbnN0cnVjdG9yV2l0aE5vSW50ZXJmYWNlT2Jq
ZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEN1c3RvbUNvbnN0cnVjdG9yV2l0aE5vSW50ZXJmYWNlT2JqZWN0LmgKQEAgLTI4LDcgKzI4LDcg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBKU1Rlc3RDdXN0b21Db25zdHJ1Y3Rvcldp
dGhOb0ludGVyZmFjZU9iamVjdCA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdEN1c3RvbUNvbnN0
cnVjdG9yV2l0aE5vSW50ZXJmYWNlT2JqZWN0PiB7CiBwdWJsaWM6Ci0gICAgdHlwZWRlZiBKU0RP
TVdyYXBwZXI8VGVzdEN1c3RvbUNvbnN0cnVjdG9yV2l0aE5vSW50ZXJmYWNlT2JqZWN0PiBCYXNl
OworICAgIHVzaW5nIEJhc2UgPSBKU0RPTVdyYXBwZXI8VGVzdEN1c3RvbUNvbnN0cnVjdG9yV2l0
aE5vSW50ZXJmYWNlT2JqZWN0PjsKICAgICBzdGF0aWMgSlNUZXN0Q3VzdG9tQ29uc3RydWN0b3JX
aXRoTm9JbnRlcmZhY2VPYmplY3QqIGNyZWF0ZShKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBK
U0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEN1c3RvbUNvbnN0cnVjdG9y
V2l0aE5vSW50ZXJmYWNlT2JqZWN0PiYmIGltcGwpCiAgICAgewogICAgICAgICBKU1Rlc3RDdXN0
b21Db25zdHJ1Y3RvcldpdGhOb0ludGVyZmFjZU9iamVjdCogcHRyID0gbmV3IChOb3ROdWxsLCBK
U0M6OmFsbG9jYXRlQ2VsbDxKU1Rlc3RDdXN0b21Db25zdHJ1Y3RvcldpdGhOb0ludGVyZmFjZU9i
amVjdD4oZ2xvYmFsT2JqZWN0LT52bSgpLmhlYXApKSBKU1Rlc3RDdXN0b21Db25zdHJ1Y3Rvcldp
dGhOb0ludGVyZmFjZU9iamVjdChzdHJ1Y3R1cmUsICpnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1w
bCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdEN1c3RvbU5hbWVkR2V0dGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RDdXN0b21OYW1lZEdldHRlci5jcHAKaW5kZXggZjJjMDBmNGM4
OWEwMzFmNGY3NzNkM2ZlMGQ4YTJmYWU3YThhM2RlZC4uZTc4NjQ0NTllNjA0ODY1MTY5MTAyYmY5
ODE2NGNkZmIyYzVlMDM2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdEN1c3RvbU5hbWVkR2V0dGVyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q3VzdG9tTmFtZWRHZXR0ZXIuY3Bw
CkBAIC00NCw3ICs0NCw3IEBAIGJvb2wgc2V0SlNUZXN0Q3VzdG9tTmFtZWRHZXR0ZXJDb25zdHJ1
Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6RW5jb2RlZEpTVmFsdWUsCiAKIGNsYXNzIEpTVGVz
dEN1c3RvbU5hbWVkR2V0dGVyUHJvdG90eXBlIDogcHVibGljIEpTQzo6SlNOb25GaW5hbE9iamVj
dCB7CiBwdWJsaWM6Ci0gICAgdHlwZWRlZiBKU0M6OkpTTm9uRmluYWxPYmplY3QgQmFzZTsKKyAg
ICB1c2luZyBCYXNlID0gSlNDOjpKU05vbkZpbmFsT2JqZWN0OwogICAgIHN0YXRpYyBKU1Rlc3RD
dXN0b21OYW1lZEdldHRlclByb3RvdHlwZSogY3JlYXRlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAg
ewogICAgICAgICBKU1Rlc3RDdXN0b21OYW1lZEdldHRlclByb3RvdHlwZSogcHRyID0gbmV3IChO
b3ROdWxsLCBKU0M6OmFsbG9jYXRlQ2VsbDxKU1Rlc3RDdXN0b21OYW1lZEdldHRlclByb3RvdHlw
ZT4odm0uaGVhcCkpIEpTVGVzdEN1c3RvbU5hbWVkR2V0dGVyUHJvdG90eXBlKHZtLCBnbG9iYWxP
YmplY3QsIHN0cnVjdHVyZSk7CkBAIC02Nyw3ICs2Nyw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBm
aW5pc2hDcmVhdGlvbihKU0M6OlZNJik7CiB9OwogCi10eXBlZGVmIEpTRE9NQ29uc3RydWN0b3JO
b3RDb25zdHJ1Y3RhYmxlPEpTVGVzdEN1c3RvbU5hbWVkR2V0dGVyPiBKU1Rlc3RDdXN0b21OYW1l
ZEdldHRlckNvbnN0cnVjdG9yOwordXNpbmcgSlNUZXN0Q3VzdG9tTmFtZWRHZXR0ZXJDb25zdHJ1
Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdEN1c3RvbU5hbWVk
R2V0dGVyPjsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEN1c3RvbU5hbWVkR2V0dGVyQ29u
c3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDdXN0b21OYW1lZEdldHRlci5oIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEN1c3RvbU5hbWVkR2V0
dGVyLmgKaW5kZXggZjY0MzViMjkwMWRlOTgxZTU1NDM3ZTE0NmU3NGJkNDFiNGE1MmQ2NS4uOWEy
ZDY0ZGI2YzA0MjkzYzE5OWNhOGM5YTI0NmJiYTJlOWQ1YWNiOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEN1c3RvbU5hbWVkR2V0dGVy
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEN1
c3RvbU5hbWVkR2V0dGVyLmgKQEAgLTI4LDcgKzI4LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
CiBjbGFzcyBKU1Rlc3RDdXN0b21OYW1lZEdldHRlciA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVz
dEN1c3RvbU5hbWVkR2V0dGVyPiB7CiBwdWJsaWM6Ci0gICAgdHlwZWRlZiBKU0RPTVdyYXBwZXI8
VGVzdEN1c3RvbU5hbWVkR2V0dGVyPiBCYXNlOworICAgIHVzaW5nIEJhc2UgPSBKU0RPTVdyYXBw
ZXI8VGVzdEN1c3RvbU5hbWVkR2V0dGVyPjsKICAgICBzdGF0aWMgSlNUZXN0Q3VzdG9tTmFtZWRH
ZXR0ZXIqIGNyZWF0ZShKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEN1c3RvbU5hbWVkR2V0dGVyPiYmIGltcGwpCiAgICAg
ewogICAgICAgICBKU1Rlc3RDdXN0b21OYW1lZEdldHRlciogcHRyID0gbmV3IChOb3ROdWxsLCBK
U0M6OmFsbG9jYXRlQ2VsbDxKU1Rlc3RDdXN0b21OYW1lZEdldHRlcj4oZ2xvYmFsT2JqZWN0LT52
bSgpLmhlYXApKSBKU1Rlc3RDdXN0b21OYW1lZEdldHRlcihzdHJ1Y3R1cmUsICpnbG9iYWxPYmpl
Y3QsIFdURk1vdmUoaW1wbCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50Q29uc3RydWN0b3IuY3BwCmlu
ZGV4IDk4OWRlYTMwYWVhM2ZmMTI1NWM4ODk4Y2I4OTM1MmU0NWIzYjUwN2IuLjg4ZjgzNWQyYzc3
ZmMxMDU4YWEzODBkMjExYzVkNGFkZTFjMmQyODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRDb25z
dHJ1Y3Rvci5jcHAKQEAgLTQ2LDcgKzQ2LDcgQEAgYm9vbCBzZXRKU1Rlc3RFdmVudENvbnN0cnVj
dG9yQ29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLAogCiBj
bGFzcyBKU1Rlc3RFdmVudENvbnN0cnVjdG9yUHJvdG90eXBlIDogcHVibGljIEpTQzo6SlNOb25G
aW5hbE9iamVjdCB7CiBwdWJsaWM6Ci0gICAgdHlwZWRlZiBKU0M6OkpTTm9uRmluYWxPYmplY3Qg
QmFzZTsKKyAgICB1c2luZyBCYXNlID0gSlNDOjpKU05vbkZpbmFsT2JqZWN0OwogICAgIHN0YXRp
YyBKU1Rlc3RFdmVudENvbnN0cnVjdG9yUHJvdG90eXBlKiBjcmVhdGUoSlNDOjpWTSYgdm0sIEpT
Qzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSkKICAgICB7CiAgICAgICAgIEpTVGVzdEV2ZW50Q29uc3RydWN0b3JQcm90b3R5cGUqIHB0ciA9
IG5ldyAoTm90TnVsbCwgSlNDOjphbGxvY2F0ZUNlbGw8SlNUZXN0RXZlbnRDb25zdHJ1Y3RvclBy
b3RvdHlwZT4odm0uaGVhcCkpIEpTVGVzdEV2ZW50Q29uc3RydWN0b3JQcm90b3R5cGUodm0sIGds
b2JhbE9iamVjdCwgc3RydWN0dXJlKTsKQEAgLTY5LDcgKzY5LDcgQEAgcHJpdmF0ZToKICAgICB2
b2lkIGZpbmlzaENyZWF0aW9uKEpTQzo6Vk0mKTsKIH07CiAKLXR5cGVkZWYgSlNET01Db25zdHJ1
Y3RvcjxKU1Rlc3RFdmVudENvbnN0cnVjdG9yPiBKU1Rlc3RFdmVudENvbnN0cnVjdG9yQ29uc3Ry
dWN0b3I7Cit1c2luZyBKU1Rlc3RFdmVudENvbnN0cnVjdG9yQ29uc3RydWN0b3IgPSBKU0RPTUNv
bnN0cnVjdG9yPEpTVGVzdEV2ZW50Q29uc3RydWN0b3I+OwogCiB0ZW1wbGF0ZTw+IEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgSlNUZXN0RXZlbnRDb25zdHJ1Y3RvckNvbnN0cnVjdG9yOjpj
b25zdHJ1Y3QoRXhlY1N0YXRlKiBzdGF0ZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRDb25zdHJ1Y3Rv
ci5oCmluZGV4IDQyOTdlMzY5NDRlZWJlN2FkNjFlZTk1MzU0OThmY2ZhMTJlZjU3ZjMuLmQ3YWJl
NzE1NGZiYmI2ZjcxOTM3ZjUwMjY0YWE1YTc3MDlmMzA3YzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50
Q29uc3RydWN0b3IuaApAQCAtMzAsNyArMzAsNyBAQCBjbGFzcyBKU0RpY3Rpb25hcnk7CiAKIGNs
YXNzIEpTVGVzdEV2ZW50Q29uc3RydWN0b3IgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RFdmVu
dENvbnN0cnVjdG9yPiB7CiBwdWJsaWM6Ci0gICAgdHlwZWRlZiBKU0RPTVdyYXBwZXI8VGVzdEV2
ZW50Q29uc3RydWN0b3I+IEJhc2U7CisgICAgdXNpbmcgQmFzZSA9IEpTRE9NV3JhcHBlcjxUZXN0
RXZlbnRDb25zdHJ1Y3Rvcj47CiAgICAgc3RhdGljIEpTVGVzdEV2ZW50Q29uc3RydWN0b3IqIGNy
ZWF0ZShKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0LCBSZWY8VGVzdEV2ZW50Q29uc3RydWN0b3I+JiYgaW1wbCkKICAgICB7CiAgICAgICAg
IEpTVGVzdEV2ZW50Q29uc3RydWN0b3IqIHB0ciA9IG5ldyAoTm90TnVsbCwgSlNDOjphbGxvY2F0
ZUNlbGw8SlNUZXN0RXZlbnRDb25zdHJ1Y3Rvcj4oZ2xvYmFsT2JqZWN0LT52bSgpLmhlYXApKSBK
U1Rlc3RFdmVudENvbnN0cnVjdG9yKHN0cnVjdHVyZSwgKmdsb2JhbE9iamVjdCwgV1RGTW92ZShp
bXBsKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0RXZlbnRUYXJnZXQuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdEV2ZW50VGFyZ2V0LmNwcAppbmRleCA4ZjNkODc3N2Q1NWNjZDU0YTE2
YjU0ZGU2NDhiYWMzNzg4OTVhMGYzLi4yZTU0ZDdhZjI3YjVlYmUyOTNiMDA2ZGUzNjc3NTY4NmNh
NGM2ZmQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0RXZlbnRUYXJnZXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudFRhcmdldC5jcHAKQEAgLTQ3LDcgKzQ3LDcgQEAgYm9v
bCBzZXRKU1Rlc3RFdmVudFRhcmdldENvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpF
bmNvZGVkSlNWYWx1ZSwgSlNDOjoKIAogY2xhc3MgSlNUZXN0RXZlbnRUYXJnZXRQcm90b3R5cGUg
OiBwdWJsaWMgSlNDOjpKU05vbkZpbmFsT2JqZWN0IHsKIHB1YmxpYzoKLSAgICB0eXBlZGVmIEpT
Qzo6SlNOb25GaW5hbE9iamVjdCBCYXNlOworICAgIHVzaW5nIEJhc2UgPSBKU0M6OkpTTm9uRmlu
YWxPYmplY3Q7CiAgICAgc3RhdGljIEpTVGVzdEV2ZW50VGFyZ2V0UHJvdG90eXBlKiBjcmVhdGUo
SlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSkKICAgICB7CiAgICAgICAgIEpTVGVzdEV2ZW50VGFyZ2V0UHJvdG90
eXBlKiBwdHIgPSBuZXcgKE5vdE51bGwsIEpTQzo6YWxsb2NhdGVDZWxsPEpTVGVzdEV2ZW50VGFy
Z2V0UHJvdG90eXBlPih2bS5oZWFwKSkgSlNUZXN0RXZlbnRUYXJnZXRQcm90b3R5cGUodm0sIGds
b2JhbE9iamVjdCwgc3RydWN0dXJlKTsKQEAgLTcwLDcgKzcwLDcgQEAgcHJpdmF0ZToKICAgICB2
b2lkIGZpbmlzaENyZWF0aW9uKEpTQzo6Vk0mKTsKIH07CiAKLXR5cGVkZWYgSlNET01Db25zdHJ1
Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0RXZlbnRUYXJnZXQ+IEpTVGVzdEV2ZW50VGFyZ2V0
Q29uc3RydWN0b3I7Cit1c2luZyBKU1Rlc3RFdmVudFRhcmdldENvbnN0cnVjdG9yID0gSlNET01D
b25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0RXZlbnRUYXJnZXQ+OwogCiB0ZW1wbGF0
ZTw+IEpTVmFsdWUgSlNUZXN0RXZlbnRUYXJnZXRDb25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3Ry
dWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdEV2ZW50VGFyZ2V0LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQuaAppbmRleCAxMzRjYTczY2U4MDlkM2JlYThiYjNkNDcz
YjM5ZTg3MWNhMTBjMGY3Li4yMjMxYjRiMGI0YzQ4ZWNkZWI0OGVhYzI1NDhhMWY1ODE2NmE2YzBm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0RXZlbnRUYXJnZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQuaApAQCAtMjcsOCArMjcsOCBAQCBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKIGNsYXNzIEpTVGVzdEV2ZW50VGFyZ2V0IDogcHVibGljIEpTRXZlbnRUYXJnZXQg
ewogcHVibGljOgotICAgIHR5cGVkZWYgSlNFdmVudFRhcmdldCBCYXNlOwotICAgIHR5cGVkZWYg
VGVzdEV2ZW50VGFyZ2V0IERPTVdyYXBwZWQ7CisgICAgdXNpbmcgQmFzZSA9IEpTRXZlbnRUYXJn
ZXQ7CisgICAgdXNpbmcgRE9NV3JhcHBlZCA9IFRlc3RFdmVudFRhcmdldDsKICAgICBzdGF0aWMg
SlNUZXN0RXZlbnRUYXJnZXQqIGNyZWF0ZShKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RP
TUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEV2ZW50VGFyZ2V0PiYmIGltcGwp
CiAgICAgewogICAgICAgICBnbG9iYWxPYmplY3QtPm1hc3F1ZXJhZGVzQXNVbmRlZmluZWRXYXRj
aHBvaW50KCktPmZpcmVBbGwoZ2xvYmFsT2JqZWN0LT52bSgpLCAiQWxsb2NhdGVkIG1hc3F1ZXJh
ZGluZyBvYmplY3QiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RFeGNlcHRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV4Y2VwdGlvbi5jcHAKaW5kZXggMDJhODFkMjc0NGNkNmQ2
YTJlZGI4NGU5YWNiZDEyOWY3ZTEwMzQ1Ny4uMTUwZjJjYjQyYzExYzgzZjA2ZDQwNmU3NGFhY2Jl
ZmM5ZTc0Nzk4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEV4Y2VwdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV4Y2VwdGlvbi5jcHAKQEAgLTQwLDcgKzQwLDcgQEAgYm9v
bCBzZXRKU1Rlc3RFeGNlcHRpb25Db25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6RW5j
b2RlZEpTVmFsdWUsIEpTQzo6RW4KIAogY2xhc3MgSlNUZXN0RXhjZXB0aW9uUHJvdG90eXBlIDog
cHVibGljIEpTQzo6SlNOb25GaW5hbE9iamVjdCB7CiBwdWJsaWM6Ci0gICAgdHlwZWRlZiBKU0M6
OkpTTm9uRmluYWxPYmplY3QgQmFzZTsKKyAgICB1c2luZyBCYXNlID0gSlNDOjpKU05vbkZpbmFs
T2JqZWN0OwogICAgIHN0YXRpYyBKU1Rlc3RFeGNlcHRpb25Qcm90b3R5cGUqIGNyZWF0ZShKU0M6
OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OlN0cnVjdHVy
ZSogc3RydWN0dXJlKQogICAgIHsKICAgICAgICAgSlNUZXN0RXhjZXB0aW9uUHJvdG90eXBlKiBw
dHIgPSBuZXcgKE5vdE51bGwsIEpTQzo6YWxsb2NhdGVDZWxsPEpTVGVzdEV4Y2VwdGlvblByb3Rv
dHlwZT4odm0uaGVhcCkpIEpTVGVzdEV4Y2VwdGlvblByb3RvdHlwZSh2bSwgZ2xvYmFsT2JqZWN0
LCBzdHJ1Y3R1cmUpOwpAQCAtNjMsNyArNjMsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZmluaXNo
Q3JlYXRpb24oSlNDOjpWTSYpOwogfTsKIAotdHlwZWRlZiBKU0RPTUNvbnN0cnVjdG9yTm90Q29u
c3RydWN0YWJsZTxKU1Rlc3RFeGNlcHRpb24+IEpTVGVzdEV4Y2VwdGlvbkNvbnN0cnVjdG9yOwor
dXNpbmcgSlNUZXN0RXhjZXB0aW9uQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29u
c3RydWN0YWJsZTxKU1Rlc3RFeGNlcHRpb24+OwogCiAvKiBIYXNoIHRhYmxlICovCiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNl
cHRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RF
eGNlcHRpb24uaAppbmRleCA4MWVlMWE4MTJmODY3MWJmM2E1YzUzMmQzNzUxMjcyMWM2NDQwYzk4
Li4zNzJlNWQ0MGYzZGZjNjg5ZDY4M2M1MDE0MWIzYmFlMGM4Yzc2MDc1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXhjZXB0aW9uLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV4Y2Vw
dGlvbi5oCkBAIC0yOSw3ICsyOSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgSlNU
ZXN0RXhjZXB0aW9uIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0RXhjZXB0aW9uPiB7CiBwdWJs
aWM6Ci0gICAgdHlwZWRlZiBKU0RPTVdyYXBwZXI8VGVzdEV4Y2VwdGlvbj4gQmFzZTsKKyAgICB1
c2luZyBCYXNlID0gSlNET01XcmFwcGVyPFRlc3RFeGNlcHRpb24+OwogICAgIHN0YXRpYyBKU1Rl
c3RFeGNlcHRpb24qIGNyZWF0ZShKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEV4Y2VwdGlvbj4mJiBpbXBsKQogICAgIHsK
ICAgICAgICAgSlNUZXN0RXhjZXB0aW9uKiBwdHIgPSBuZXcgKE5vdE51bGwsIEpTQzo6YWxsb2Nh
dGVDZWxsPEpTVGVzdEV4Y2VwdGlvbj4oZ2xvYmFsT2JqZWN0LT52bSgpLmhlYXApKSBKU1Rlc3RF
eGNlcHRpb24oc3RydWN0dXJlLCAqZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5l
cmF0ZUlzUmVhY2hhYmxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlLmNwcAppbmRleCA2Y2QzM2IwNGJmZmU5NDhm
NTg5MjMzMGJhMDIwMjQxMzFmYzFjZDgxLi43N2Y5ZDM1ZjdmOGEzYjhlOGU5NTc4Y2U4OGM2MTBk
MmY1NTYzYWNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUuY3BwCkBA
IC0zNyw3ICszNyw3IEBAIGJvb2wgc2V0SlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZUNvbnN0cnVj
dG9yKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpFbmNvZGVkSlNWYWx1CiAKIGNsYXNzIEpTVGVzdEdl
bmVyYXRlSXNSZWFjaGFibGVQcm90b3R5cGUgOiBwdWJsaWMgSlNDOjpKU05vbkZpbmFsT2JqZWN0
IHsKIHB1YmxpYzoKLSAgICB0eXBlZGVmIEpTQzo6SlNOb25GaW5hbE9iamVjdCBCYXNlOworICAg
IHVzaW5nIEJhc2UgPSBKU0M6OkpTTm9uRmluYWxPYmplY3Q7CiAgICAgc3RhdGljIEpTVGVzdEdl
bmVyYXRlSXNSZWFjaGFibGVQcm90b3R5cGUqIGNyZWF0ZShKU0M6OlZNJiB2bSwgSlNDOjpKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlKQogICAg
IHsKICAgICAgICAgSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZVByb3RvdHlwZSogcHRyID0gbmV3
IChOb3ROdWxsLCBKU0M6OmFsbG9jYXRlQ2VsbDxKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlUHJv
dG90eXBlPih2bS5oZWFwKSkgSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZVByb3RvdHlwZSh2bSwg
Z2xvYmFsT2JqZWN0LCBzdHJ1Y3R1cmUpOwpAQCAtNjAsNyArNjAsNyBAQCBwcml2YXRlOgogICAg
IHZvaWQgZmluaXNoQ3JlYXRpb24oSlNDOjpWTSYpOwogfTsKIAotdHlwZWRlZiBKU0RPTUNvbnN0
cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlPiBKU1Rlc3RH
ZW5lcmF0ZUlzUmVhY2hhYmxlQ29uc3RydWN0b3I7Cit1c2luZyBKU1Rlc3RHZW5lcmF0ZUlzUmVh
Y2hhYmxlQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rl
c3RHZW5lcmF0ZUlzUmVhY2hhYmxlPjsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEdlbmVy
YXRlSXNSZWFjaGFibGVDb25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0m
IHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRl
SXNSZWFjaGFibGUuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlLmgKaW5kZXggZDIzNzg2ZjE1NTgxZDljYWExZjA3NDQz
ZWQwZGMxMWQ4ZGNiOGIwOC4uNmM0MmM2MDRkMjUwYzcwODQ0Y2NhNjBhYTk0NTEyMzg4MmVlNGZl
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEdlbmVyYXRlSXNSZWFjaGFibGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZS5oCkBAIC0yOCw3ICsyOCw3
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJs
ZSA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdEdlbmVyYXRlSXNSZWFjaGFibGU+IHsKIHB1Ymxp
YzoKLSAgICB0eXBlZGVmIEpTRE9NV3JhcHBlcjxUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZT4gQmFz
ZTsKKyAgICB1c2luZyBCYXNlID0gSlNET01XcmFwcGVyPFRlc3RHZW5lcmF0ZUlzUmVhY2hhYmxl
PjsKICAgICBzdGF0aWMgSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZSogY3JlYXRlKEpTQzo6U3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxU
ZXN0R2VuZXJhdGVJc1JlYWNoYWJsZT4mJiBpbXBsKQogICAgIHsKICAgICAgICAgSlNUZXN0R2Vu
ZXJhdGVJc1JlYWNoYWJsZSogcHRyID0gbmV3IChOb3ROdWxsLCBKU0M6OmFsbG9jYXRlQ2VsbDxK
U1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlPihnbG9iYWxPYmplY3QtPnZtKCkuaGVhcCkpIEpTVGVz
dEdlbmVyYXRlSXNSZWFjaGFibGUoc3RydWN0dXJlLCAqZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGlt
cGwpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RHbG9iYWxPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdEdsb2JhbE9iamVjdC5jcHAKaW5kZXggNGFlZjQxMmFhZDFkZjZhYWFm
ZjU3NTVhOTY4NDkzMmJiYmE4NjNiNy4uZDFkM2MxODYxNzE2MjAzZjBhYTU0ZWY2YjE1NTc0MWFl
YmY2ZTVkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEdsb2JhbE9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdsb2JhbE9iamVjdC5jcHAKQEAgLTY4LDcgKzY4LDcgQEAg
Ym9vbCBzZXRKU1Rlc3RHbG9iYWxPYmplY3RFbmFibGVkQXRSdW50aW1lQXR0cmlidXRlKEpTQzo6
RXhlY1N0YXRlKiwgSlNDOjpFbmNvZGUKIEpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0R2xvYmFs
T2JqZWN0Q29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBK
U0M6OlByb3BlcnR5TmFtZSk7CiBib29sIHNldEpTVGVzdEdsb2JhbE9iamVjdENvbnN0cnVjdG9y
KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1
ZSk7CiAKLXR5cGVkZWYgSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0R2xv
YmFsT2JqZWN0PiBKU1Rlc3RHbG9iYWxPYmplY3RDb25zdHJ1Y3RvcjsKK3VzaW5nIEpTVGVzdEds
b2JhbE9iamVjdENvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8
SlNUZXN0R2xvYmFsT2JqZWN0PjsKIAogLyogSGFzaCB0YWJsZSAqLwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2xvYmFsT2JqZWN0
LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2xvYmFs
T2JqZWN0LmgKaW5kZXggNTRjM2MxNDQ2YjNmMDQ1OWMwNjU3MTk2MjlmYzVjMTJiNTBjYWZlMC4u
Mjc4NDJlMWIzYTI5NDM4ZjRlZmI2MTlhZWQwN2MyNTQ4MWEzMTZlNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdsb2JhbE9iamVjdC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHbG9i
YWxPYmplY3QuaApAQCAtMzAsNyArMzAsNyBAQCBjbGFzcyBUZXN0R2xvYmFsT2JqZWN0OwogCiBj
bGFzcyBKU1Rlc3RHbG9iYWxPYmplY3QgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RHbG9iYWxP
YmplY3Q+IHsKIHB1YmxpYzoKLSAgICB0eXBlZGVmIEpTRE9NV3JhcHBlcjxUZXN0R2xvYmFsT2Jq
ZWN0PiBCYXNlOworICAgIHVzaW5nIEJhc2UgPSBKU0RPTVdyYXBwZXI8VGVzdEdsb2JhbE9iamVj
dD47CiAgICAgc3RhdGljIEpTVGVzdEdsb2JhbE9iamVjdCogY3JlYXRlKEpTQzo6U3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0R2xv
YmFsT2JqZWN0PiYmIGltcGwpCiAgICAgewogICAgICAgICBKU1Rlc3RHbG9iYWxPYmplY3QqIHB0
ciA9IG5ldyAoTm90TnVsbCwgSlNDOjphbGxvY2F0ZUNlbGw8SlNUZXN0R2xvYmFsT2JqZWN0Pihn
bG9iYWxPYmplY3QtPnZtKCkuaGVhcCkpIEpTVGVzdEdsb2JhbE9iamVjdChzdHJ1Y3R1cmUsICpn
bG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpOwpAQCAtODksNyArODksNyBAQCBpbmxpbmUgSlND
OjpKU1ZhbHVlIHRvSlNOZXdseUNyZWF0ZWQoSlNDOjpFeGVjU3RhdGUqIHN0YXRlLCBKU0RPTUds
b2JhbE9iamVjdCogZwogCiBjbGFzcyBKU1Rlc3RHbG9iYWxPYmplY3RQcm90b3R5cGUgOiBwdWJs
aWMgSlNDOjpKU05vbkZpbmFsT2JqZWN0IHsKIHB1YmxpYzoKLSAgICB0eXBlZGVmIEpTQzo6SlNO
b25GaW5hbE9iamVjdCBCYXNlOworICAgIHVzaW5nIEJhc2UgPSBKU0M6OkpTTm9uRmluYWxPYmpl
Y3Q7CiAgICAgc3RhdGljIEpTVGVzdEdsb2JhbE9iamVjdFByb3RvdHlwZSogY3JlYXRlKEpTQzo6
Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6U3RydWN0dXJl
KiBzdHJ1Y3R1cmUpCiAgICAgewogICAgICAgICBKU1Rlc3RHbG9iYWxPYmplY3RQcm90b3R5cGUq
IHB0ciA9IG5ldyAoTm90TnVsbCwgSlNDOjphbGxvY2F0ZUNlbGw8SlNUZXN0R2xvYmFsT2JqZWN0
UHJvdG90eXBlPih2bS5oZWFwKSkgSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBlKHZtLCBnbG9i
YWxPYmplY3QsIHN0cnVjdHVyZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwCmluZGV4IGU2N2VjZjY1
ZmU0ZDE1YmJiNmI1MzM1ZDg0NjYwNDMwNWFlZWNlNzkuLjdhY2MzN2U2Y2JmZmUzZDE1MDZlNDNj
NmM5YTg2MTMzN2FmM2E1ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwCkBAIC0xMjYsNyArMTI2
LDcgQEAgYm9vbCBzZXRKU1Rlc3RJbnRlcmZhY2VDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSos
IEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW4KIAogY2xhc3MgSlNUZXN0SW50ZXJmYWNlUHJv
dG90eXBlIDogcHVibGljIEpTQzo6SlNOb25GaW5hbE9iamVjdCB7CiBwdWJsaWM6Ci0gICAgdHlw
ZWRlZiBKU0M6OkpTTm9uRmluYWxPYmplY3QgQmFzZTsKKyAgICB1c2luZyBCYXNlID0gSlNDOjpK
U05vbkZpbmFsT2JqZWN0OwogICAgIHN0YXRpYyBKU1Rlc3RJbnRlcmZhY2VQcm90b3R5cGUqIGNy
ZWF0ZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6
OlN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIHsKICAgICAgICAgSlNUZXN0SW50ZXJmYWNlUHJv
dG90eXBlKiBwdHIgPSBuZXcgKE5vdE51bGwsIEpTQzo6YWxsb2NhdGVDZWxsPEpTVGVzdEludGVy
ZmFjZVByb3RvdHlwZT4odm0uaGVhcCkpIEpTVGVzdEludGVyZmFjZVByb3RvdHlwZSh2bSwgZ2xv
YmFsT2JqZWN0LCBzdHJ1Y3R1cmUpOwpAQCAtMTQ5LDcgKzE0OSw3IEBAIHByaXZhdGU6CiAgICAg
dm9pZCBmaW5pc2hDcmVhdGlvbihKU0M6OlZNJik7CiB9OwogCi10eXBlZGVmIEpTRE9NQ29uc3Ry
dWN0b3I8SlNUZXN0SW50ZXJmYWNlPiBKU1Rlc3RJbnRlcmZhY2VDb25zdHJ1Y3RvcjsKK3VzaW5n
IEpTVGVzdEludGVyZmFjZUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3RvcjxKU1Rlc3RJbnRl
cmZhY2U+OwogCiAvKiBIYXNoIHRhYmxlIGZvciBjb25zdHJ1Y3RvciAqLwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNl
LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJm
YWNlLmgKaW5kZXggMjQzMzU3MGViMmMwODYyN2I1ZDc2YjE1MWVhNjVjNTVlY2E4MTIzNi4uYmQ2
M2E5NGM3NWNmOGQxNTNjNzQ1YWYwYzU1M2MyNzRkYzFkYjYxMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2Uu
aApAQCAtMzAsNyArMzAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIFdFQkNPUkVf
RVhQT1JUIEpTVGVzdEludGVyZmFjZSA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdEludGVyZmFj
ZT4gewogcHVibGljOgotICAgIHR5cGVkZWYgSlNET01XcmFwcGVyPFRlc3RJbnRlcmZhY2U+IEJh
c2U7CisgICAgdXNpbmcgQmFzZSA9IEpTRE9NV3JhcHBlcjxUZXN0SW50ZXJmYWNlPjsKICAgICBz
dGF0aWMgSlNUZXN0SW50ZXJmYWNlKiBjcmVhdGUoSlNDOjpTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwg
SlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RJbnRlcmZhY2U+JiYgaW1w
bCkKICAgICB7CiAgICAgICAgIEpTVGVzdEludGVyZmFjZSogcHRyID0gbmV3IChOb3ROdWxsLCBK
U0M6OmFsbG9jYXRlQ2VsbDxKU1Rlc3RJbnRlcmZhY2U+KGdsb2JhbE9iamVjdC0+dm0oKS5oZWFw
KSkgSlNUZXN0SW50ZXJmYWNlKHN0cnVjdHVyZSwgKmdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBs
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0SXRlcmFibGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEl0ZXJhYmxlLmNwcAppbmRleCA3MWYwNWU3OTAxNmU1OTFhZjExODVhOWRiYzc0
YmFmZmM5MTIzYTc4Li5kMzdkYWI1NWYxZTlhYTU4ZmM5N2IwNGJhNmFkMTIxODU0MjdjZTFjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
SXRlcmFibGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RJdGVyYWJsZS5jcHAKQEAgLTQ2LDcgKzQ2LDcgQEAgYm9vbCBzZXRKU1Rlc3RJdGVy
YWJsZUNvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlND
OjpFbmMKIAogY2xhc3MgSlNUZXN0SXRlcmFibGVQcm90b3R5cGUgOiBwdWJsaWMgSlNDOjpKU05v
bkZpbmFsT2JqZWN0IHsKIHB1YmxpYzoKLSAgICB0eXBlZGVmIEpTQzo6SlNOb25GaW5hbE9iamVj
dCBCYXNlOworICAgIHVzaW5nIEJhc2UgPSBKU0M6OkpTTm9uRmluYWxPYmplY3Q7CiAgICAgc3Rh
dGljIEpTVGVzdEl0ZXJhYmxlUHJvdG90eXBlKiBjcmVhdGUoSlNDOjpWTSYgdm0sIEpTQzo6SlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAg
ICB7CiAgICAgICAgIEpTVGVzdEl0ZXJhYmxlUHJvdG90eXBlKiBwdHIgPSBuZXcgKE5vdE51bGws
IEpTQzo6YWxsb2NhdGVDZWxsPEpTVGVzdEl0ZXJhYmxlUHJvdG90eXBlPih2bS5oZWFwKSkgSlNU
ZXN0SXRlcmFibGVQcm90b3R5cGUodm0sIGdsb2JhbE9iamVjdCwgc3RydWN0dXJlKTsKQEAgLTY5
LDcgKzY5LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEpTQzo6Vk0mKTsK
IH07CiAKLXR5cGVkZWYgSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0SXRl
cmFibGU+IEpTVGVzdEl0ZXJhYmxlQ29uc3RydWN0b3I7Cit1c2luZyBKU1Rlc3RJdGVyYWJsZUNv
bnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0SXRlcmFi
bGU+OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0SXRlcmFibGVDb25zdHJ1Y3Rvcjo6cHJv
dG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdEl0ZXJhYmxlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuaAppbmRleCBiMTk5ZmJkMDc4YWNmZGYxYWZl
NzZjY2I1MTZiM2Q1ZTY2OWQ0ODNkLi44NzAyMmQ1MzY4ZWM0M2Q5YWI4ZjA1YWVlMjMwZDFhMmYy
MTc1OTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0SXRlcmFibGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuaApAQCAtMjgsNyArMjgsNyBAQCBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKIGNsYXNzIEpTVGVzdEl0ZXJhYmxlIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0
SXRlcmFibGU+IHsKIHB1YmxpYzoKLSAgICB0eXBlZGVmIEpTRE9NV3JhcHBlcjxUZXN0SXRlcmFi
bGU+IEJhc2U7CisgICAgdXNpbmcgQmFzZSA9IEpTRE9NV3JhcHBlcjxUZXN0SXRlcmFibGU+Owog
ICAgIHN0YXRpYyBKU1Rlc3RJdGVyYWJsZSogY3JlYXRlKEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0SXRlcmFibGU+JiYg
aW1wbCkKICAgICB7CiAgICAgICAgIEpTVGVzdEl0ZXJhYmxlKiBwdHIgPSBuZXcgKE5vdE51bGws
IEpTQzo6YWxsb2NhdGVDZWxsPEpTVGVzdEl0ZXJhYmxlPihnbG9iYWxPYmplY3QtPnZtKCkuaGVh
cCkpIEpTVGVzdEl0ZXJhYmxlKHN0cnVjdHVyZSwgKmdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBs
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yLmNwcAppbmRleCAwOGFm
ODk1Y2ZmNGMwZGY3YThkMDQzODBhYTVmOWI3YmNmNDE3ODkwLi44MzIxNzg2YzRhNTFhMDY0NzFh
M2Q2YzE2OTE4MmI3ZjRmNzIxNWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RKU0J1aWx0aW5Db25z
dHJ1Y3Rvci5jcHAKQEAgLTQ2LDcgKzQ2LDcgQEAgYm9vbCBzZXRKU1Rlc3RKU0J1aWx0aW5Db25z
dHJ1Y3RvckNvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpFbmNvZGVkSlNWYWwKIAog
Y2xhc3MgSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGUgOiBwdWJsaWMgSlNDOjpK
U05vbkZpbmFsT2JqZWN0IHsKIHB1YmxpYzoKLSAgICB0eXBlZGVmIEpTQzo6SlNOb25GaW5hbE9i
amVjdCBCYXNlOworICAgIHVzaW5nIEJhc2UgPSBKU0M6OkpTTm9uRmluYWxPYmplY3Q7CiAgICAg
c3RhdGljIEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yUHJvdG90eXBlKiBjcmVhdGUoSlNDOjpW
TSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSkKICAgICB7CiAgICAgICAgIEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yUHJv
dG90eXBlKiBwdHIgPSBuZXcgKE5vdE51bGwsIEpTQzo6YWxsb2NhdGVDZWxsPEpTVGVzdEpTQnVp
bHRpbkNvbnN0cnVjdG9yUHJvdG90eXBlPih2bS5oZWFwKSkgSlNUZXN0SlNCdWlsdGluQ29uc3Ry
dWN0b3JQcm90b3R5cGUodm0sIGdsb2JhbE9iamVjdCwgc3RydWN0dXJlKTsKQEAgLTY5LDcgKzY5
LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEpTQzo6Vk0mKTsKIH07CiAK
LXR5cGVkZWYgSlNCdWlsdGluQ29uc3RydWN0b3I8SlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3I+
IEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yQ29uc3RydWN0b3I7Cit1c2luZyBKU1Rlc3RKU0J1
aWx0aW5Db25zdHJ1Y3RvckNvbnN0cnVjdG9yID0gSlNCdWlsdGluQ29uc3RydWN0b3I8SlNUZXN0
SlNCdWlsdGluQ29uc3RydWN0b3I+OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0SlNCdWls
dGluQ29uc3RydWN0b3JDb25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0m
IHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRp
bkNvbnN0cnVjdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IuaAppbmRleCBlMzlmMDFmOTBjYzNmM2RiOGI4NTQ4
ODIzYmYyNmRjMWI0Zjk4NzdkLi5iOGM1OTMxMmNhZmYzNWMzNGYzNDlkMTZiY2ZjMGQ1Njg5YzYy
NWUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IuaApAQCAtMjYsNyAr
MjYsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIEpTVGVzdEpTQnVpbHRpbkNvbnN0
cnVjdG9yIDogcHVibGljIEpTRE9NT2JqZWN0IHsKIHB1YmxpYzoKLSAgICB0eXBlZGVmIEpTRE9N
T2JqZWN0IEJhc2U7CisgICAgdXNpbmcgQmFzZSA9IEpTRE9NT2JqZWN0OwogICAgIHN0YXRpYyBK
U1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvciogY3JlYXRlKEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiAgICAgewogICAgICAgICBKU1Rl
c3RKU0J1aWx0aW5Db25zdHJ1Y3RvciogcHRyID0gbmV3IChOb3ROdWxsLCBKU0M6OmFsbG9jYXRl
Q2VsbDxKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3Rvcj4oZ2xvYmFsT2JqZWN0LT52bSgpLmhlYXAp
KSBKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvcihzdHJ1Y3R1cmUsICpnbG9iYWxPYmplY3QpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE1lZGlhUXVlcnlMaXN0TGlzdGVuZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXIuY3BwCmluZGV4IDc3YWYx
NTNmNTVlMTQyOTBkMmI1MTEwODBhZTNiYjU4MTlhYzA5MDkuLjZmNjVlZmE3ZDEyOTA2NGUxODNh
MjljOTRiMGNmZWRmYmI3ZjZjZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWVkaWFRdWVyeUxp
c3RMaXN0ZW5lci5jcHAKQEAgLTQ0LDcgKzQ0LDcgQEAgYm9vbCBzZXRKU1Rlc3RNZWRpYVF1ZXJ5
TGlzdExpc3RlbmVyQ29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkVuY29kZWRKU1YK
IAogY2xhc3MgSlNUZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lclByb3RvdHlwZSA6IHB1YmxpYyBK
U0M6OkpTTm9uRmluYWxPYmplY3QgewogcHVibGljOgotICAgIHR5cGVkZWYgSlNDOjpKU05vbkZp
bmFsT2JqZWN0IEJhc2U7CisgICAgdXNpbmcgQmFzZSA9IEpTQzo6SlNOb25GaW5hbE9iamVjdDsK
ICAgICBzdGF0aWMgSlNUZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lclByb3RvdHlwZSogY3JlYXRl
KEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6U3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgewogICAgICAgICBKU1Rlc3RNZWRpYVF1ZXJ5TGlzdExp
c3RlbmVyUHJvdG90eXBlKiBwdHIgPSBuZXcgKE5vdE51bGwsIEpTQzo6YWxsb2NhdGVDZWxsPEpT
VGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXJQcm90b3R5cGU+KHZtLmhlYXApKSBKU1Rlc3RNZWRp
YVF1ZXJ5TGlzdExpc3RlbmVyUHJvdG90eXBlKHZtLCBnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSk7
CkBAIC02Nyw3ICs2Nyw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBmaW5pc2hDcmVhdGlvbihKU0M6
OlZNJik7CiB9OwogCi10eXBlZGVmIEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpT
VGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXI+IEpTVGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXJD
b25zdHJ1Y3RvcjsKK3VzaW5nIEpTVGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXJDb25zdHJ1Y3Rv
ciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE1lZGlhUXVlcnlMaXN0
TGlzdGVuZXI+OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TWVkaWFRdWVyeUxpc3RMaXN0
ZW5lckNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0
IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWVkaWFRdWVyeUxpc3RMaXN0
ZW5lci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1l
ZGlhUXVlcnlMaXN0TGlzdGVuZXIuaAppbmRleCAzMTk1M2Q2ZmFkY2ZmZmExZDViNjJmOGFmZTMz
ZDJhNmUwMTI2ODA2Li4zZjVmNDI2MWNhYWU2NGY3OTJiZjU3NWFlMWU5ZGViODY1ZTkxNjY2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TWVkaWFRdWVyeUxpc3RMaXN0ZW5lci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLmgKQEAgLTI4LDcgKzI4
LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBKU1Rlc3RNZWRpYVF1ZXJ5TGlzdExp
c3RlbmVyIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lcj4g
ewogcHVibGljOgotICAgIHR5cGVkZWYgSlNET01XcmFwcGVyPFRlc3RNZWRpYVF1ZXJ5TGlzdExp
c3RlbmVyPiBCYXNlOworICAgIHVzaW5nIEJhc2UgPSBKU0RPTVdyYXBwZXI8VGVzdE1lZGlhUXVl
cnlMaXN0TGlzdGVuZXI+OwogICAgIHN0YXRpYyBKU1Rlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVy
KiBjcmVhdGUoSlNDOjpTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgUmVmPFRlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyPiYmIGltcGwpCiAgICAg
ewogICAgICAgICBKU1Rlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyKiBwdHIgPSBuZXcgKE5vdE51
bGwsIEpTQzo6YWxsb2NhdGVDZWxsPEpTVGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXI+KGdsb2Jh
bE9iamVjdC0+dm0oKS5oZWFwKSkgSlNUZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lcihzdHJ1Y3R1
cmUsICpnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQ29uc3RydWN0b3IuY3Bw
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQ29u
c3RydWN0b3IuY3BwCmluZGV4IGVkMDhiMmYzZjg5OGZmODM0YTk2OThmOTBhNjJmZWYxYTE1NGNi
ODMuLjc4N2U4ZGNkZGY0YThmYzAyODFkMmRlZTZjYjcwNzUwODFlMGU3ZGUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZENvbnN0
cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0TmFtZWRDb25zdHJ1Y3Rvci5jcHAKQEAgLTM5LDcgKzM5LDcgQEAgYm9vbCBzZXRKU1Rl
c3ROYW1lZENvbnN0cnVjdG9yQ29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkVuY29k
ZWRKU1ZhbHVlLAogCiBjbGFzcyBKU1Rlc3ROYW1lZENvbnN0cnVjdG9yUHJvdG90eXBlIDogcHVi
bGljIEpTQzo6SlNOb25GaW5hbE9iamVjdCB7CiBwdWJsaWM6Ci0gICAgdHlwZWRlZiBKU0M6OkpT
Tm9uRmluYWxPYmplY3QgQmFzZTsKKyAgICB1c2luZyBCYXNlID0gSlNDOjpKU05vbkZpbmFsT2Jq
ZWN0OwogICAgIHN0YXRpYyBKU1Rlc3ROYW1lZENvbnN0cnVjdG9yUHJvdG90eXBlKiBjcmVhdGUo
SlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSkKICAgICB7CiAgICAgICAgIEpTVGVzdE5hbWVkQ29uc3RydWN0b3JQ
cm90b3R5cGUqIHB0ciA9IG5ldyAoTm90TnVsbCwgSlNDOjphbGxvY2F0ZUNlbGw8SlNUZXN0TmFt
ZWRDb25zdHJ1Y3RvclByb3RvdHlwZT4odm0uaGVhcCkpIEpTVGVzdE5hbWVkQ29uc3RydWN0b3JQ
cm90b3R5cGUodm0sIGdsb2JhbE9iamVjdCwgc3RydWN0dXJlKTsKQEAgLTYyLDggKzYyLDggQEAg
cHJpdmF0ZToKICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEpTQzo6Vk0mKTsKIH07CiAKLXR5cGVk
ZWYgSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TmFtZWRDb25zdHJ1Y3Rv
cj4gSlNUZXN0TmFtZWRDb25zdHJ1Y3RvckNvbnN0cnVjdG9yOwotdHlwZWRlZiBKU0RPTU5hbWVk
Q29uc3RydWN0b3I8SlNUZXN0TmFtZWRDb25zdHJ1Y3Rvcj4gSlNUZXN0TmFtZWRDb25zdHJ1Y3Rv
ck5hbWVkQ29uc3RydWN0b3I7Cit1c2luZyBKU1Rlc3ROYW1lZENvbnN0cnVjdG9yQ29uc3RydWN0
b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1lZENvbnN0cnVj
dG9yPjsKK3VzaW5nIEpTVGVzdE5hbWVkQ29uc3RydWN0b3JOYW1lZENvbnN0cnVjdG9yID0gSlNE
T01OYW1lZENvbnN0cnVjdG9yPEpTVGVzdE5hbWVkQ29uc3RydWN0b3I+OwogCiB0ZW1wbGF0ZTw+
IEpTVmFsdWUgSlNUZXN0TmFtZWRDb25zdHJ1Y3RvckNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0TmFtZWRDb25zdHJ1Y3Rvci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQ29uc3RydWN0b3IuaAppbmRleCA1NGU1YjAxNmVhMjlk
ZjIzNTRmMjdkNjBlODNhNzBkMjRmZjMxNDhlLi44MDI0MTVkZWM5YzM5NGE5MDE5MGNmMmM4NDAz
YmU2Zjg4ZDIxZjBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZWRDb25zdHJ1Y3Rvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZENvbnN0cnVjdG9yLmgKQEAgLTI4LDcg
KzI4LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBKU1Rlc3ROYW1lZENvbnN0cnVj
dG9yIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRDb25zdHJ1Y3Rvcj4gewogcHVibGlj
OgotICAgIHR5cGVkZWYgSlNET01XcmFwcGVyPFRlc3ROYW1lZENvbnN0cnVjdG9yPiBCYXNlOwor
ICAgIHVzaW5nIEJhc2UgPSBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkQ29uc3RydWN0b3I+OwogICAg
IHN0YXRpYyBKU1Rlc3ROYW1lZENvbnN0cnVjdG9yKiBjcmVhdGUoSlNDOjpTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZENv
bnN0cnVjdG9yPiYmIGltcGwpCiAgICAgewogICAgICAgICBKU1Rlc3ROYW1lZENvbnN0cnVjdG9y
KiBwdHIgPSBuZXcgKE5vdE51bGwsIEpTQzo6YWxsb2NhdGVDZWxsPEpTVGVzdE5hbWVkQ29uc3Ry
dWN0b3I+KGdsb2JhbE9iamVjdC0+dm0oKS5oZWFwKSkgSlNUZXN0TmFtZWRDb25zdHJ1Y3Rvcihz
dHJ1Y3R1cmUsICpnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5vZGUuY3BwIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5vZGUuY3BwCmluZGV4
IDhjNDZjODgwZDAwZDU0MDAxZmFjMzFlYWI4MjdlMTJiN2MwZmRkZmUuLjRlOWExM2M4YTMyNmRh
ZWU3ZTI5NzVjZjQ0ZGQ2OGExZDBiODlkNzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Tm9kZS5jcHAKQEAgLTU2LDcgKzU2LDcg
QEAgYm9vbCBzZXRKU1Rlc3ROb2RlQ29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkVu
Y29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWQKIAogY2xhc3MgSlNUZXN0Tm9kZVByb3RvdHlwZSA6
IHB1YmxpYyBKU0M6OkpTTm9uRmluYWxPYmplY3QgewogcHVibGljOgotICAgIHR5cGVkZWYgSlND
OjpKU05vbkZpbmFsT2JqZWN0IEJhc2U7CisgICAgdXNpbmcgQmFzZSA9IEpTQzo6SlNOb25GaW5h
bE9iamVjdDsKICAgICBzdGF0aWMgSlNUZXN0Tm9kZVByb3RvdHlwZSogY3JlYXRlKEpTQzo6Vk0m
IHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6U3RydWN0dXJlKiBz
dHJ1Y3R1cmUpCiAgICAgewogICAgICAgICBKU1Rlc3ROb2RlUHJvdG90eXBlKiBwdHIgPSBuZXcg
KE5vdE51bGwsIEpTQzo6YWxsb2NhdGVDZWxsPEpTVGVzdE5vZGVQcm90b3R5cGU+KHZtLmhlYXAp
KSBKU1Rlc3ROb2RlUHJvdG90eXBlKHZtLCBnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSk7CkBAIC03
OSw3ICs3OSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBmaW5pc2hDcmVhdGlvbihKU0M6OlZNJik7
CiB9OwogCi10eXBlZGVmIEpTRE9NQ29uc3RydWN0b3I8SlNUZXN0Tm9kZT4gSlNUZXN0Tm9kZUNv
bnN0cnVjdG9yOwordXNpbmcgSlNUZXN0Tm9kZUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rv
cjxKU1Rlc3ROb2RlPjsKIAogdGVtcGxhdGU8PiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IEpTVGVzdE5vZGVDb25zdHJ1Y3Rvcjo6Y29uc3RydWN0KEV4ZWNTdGF0ZSogc3RhdGUpCiB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
Tm9kZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5v
ZGUuaAppbmRleCA0YTMwY2ViNTk0YzZhYjA4ZDAwZDQ5NTY2MWYzYmI2NjAzMzJhMGQzLi4zODYz
ZGJmMTkzNTkzZmI4NjdhMzE2NTVlZjY2NzY0OTYyNTVlYjM4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Tm9kZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmgKQEAgLTI3LDgg
KzI3LDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBXRUJDT1JFX1RFU1RTVVBQT1JU
X0VYUE9SVCBKU1Rlc3ROb2RlIDogcHVibGljIEpTTm9kZSB7CiBwdWJsaWM6Ci0gICAgdHlwZWRl
ZiBKU05vZGUgQmFzZTsKLSAgICB0eXBlZGVmIFRlc3ROb2RlIERPTVdyYXBwZWQ7CisgICAgdXNp
bmcgQmFzZSA9IEpTTm9kZTsKKyAgICB1c2luZyBET01XcmFwcGVkID0gVGVzdE5vZGU7CiAgICAg
c3RhdGljIEpTVGVzdE5vZGUqIGNyZWF0ZShKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RP
TUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5vZGU+JiYgaW1wbCkKICAgICB7
CiAgICAgICAgIEpTVGVzdE5vZGUqIHB0ciA9IG5ldyAoTm90TnVsbCwgSlNDOjphbGxvY2F0ZUNl
bGw8SlNUZXN0Tm9kZT4oZ2xvYmFsT2JqZWN0LT52bSgpLmhlYXApKSBKU1Rlc3ROb2RlKHN0cnVj
dHVyZSwgKmdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Tm9uZGV0ZXJtaW5pc3RpYy5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Tm9uZGV0
ZXJtaW5pc3RpYy5jcHAKaW5kZXggNzZhNTZjNTI2NGI0NzdmZmZiZTA2MWUxODRhZjg2MGExNDhj
Y2I4Mi4uYjZlMjViZTNjZmFjZTFhM2QwYmEzMzBlODA4ODE5ZWQzZjJhMzA3OCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5vbmRldGVy
bWluaXN0aWMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3ROb25kZXRlcm1pbmlzdGljLmNwcApAQCAtMzMsNyArMzMsNiBAQAogI2lmIEVOQUJM
RShXRUJfUkVQTEFZKQogI2luY2x1ZGUgIk1lbW9pemVkRE9NUmVzdWx0LmgiCiAjaW5jbHVkZSA8
cmVwbGF5L0lucHV0Q3Vyc29yLmg+Ci0jaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CiAj
ZW5kaWYKIAogdXNpbmcgbmFtZXNwYWNlIEpTQzsKQEAgLTYwLDcgKzU5LDcgQEAgYm9vbCBzZXRK
U1Rlc3ROb25kZXRlcm1pbmlzdGljQ29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkVu
Y29kZWRKU1ZhbHVlLAogCiBjbGFzcyBKU1Rlc3ROb25kZXRlcm1pbmlzdGljUHJvdG90eXBlIDog
cHVibGljIEpTQzo6SlNOb25GaW5hbE9iamVjdCB7CiBwdWJsaWM6Ci0gICAgdHlwZWRlZiBKU0M6
OkpTTm9uRmluYWxPYmplY3QgQmFzZTsKKyAgICB1c2luZyBCYXNlID0gSlNDOjpKU05vbkZpbmFs
T2JqZWN0OwogICAgIHN0YXRpYyBKU1Rlc3ROb25kZXRlcm1pbmlzdGljUHJvdG90eXBlKiBjcmVh
dGUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICB7CiAgICAgICAgIEpTVGVzdE5vbmRldGVybWluaXN0
aWNQcm90b3R5cGUqIHB0ciA9IG5ldyAoTm90TnVsbCwgSlNDOjphbGxvY2F0ZUNlbGw8SlNUZXN0
Tm9uZGV0ZXJtaW5pc3RpY1Byb3RvdHlwZT4odm0uaGVhcCkpIEpTVGVzdE5vbmRldGVybWluaXN0
aWNQcm90b3R5cGUodm0sIGdsb2JhbE9iamVjdCwgc3RydWN0dXJlKTsKQEAgLTgzLDcgKzgyLDcg
QEAgcHJpdmF0ZToKICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEpTQzo6Vk0mKTsKIH07CiAKLXR5
cGVkZWYgSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0Tm9uZGV0ZXJtaW5p
c3RpYz4gSlNUZXN0Tm9uZGV0ZXJtaW5pc3RpY0NvbnN0cnVjdG9yOwordXNpbmcgSlNUZXN0Tm9u
ZGV0ZXJtaW5pc3RpY0NvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFi
bGU8SlNUZXN0Tm9uZGV0ZXJtaW5pc3RpYz47CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RO
b25kZXRlcm1pbmlzdGljQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZN
JiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb25kZXRl
cm1pbmlzdGljLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0Tm9uZGV0ZXJtaW5pc3RpYy5oCmluZGV4IDNiOTBjNjgzN2JkODVmOWM3YTIzMmVjOTY4YTk0
YWE3ZWNkMWFkNGIuLmY5NmNiNzZmMDdhNTYzMWFlOTIyNTViNzNkOTYyYmZiNGY2ZTk5NmEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RO
b25kZXRlcm1pbmlzdGljLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE5vbmRldGVybWluaXN0aWMuaApAQCAtMjgsNyArMjgsNyBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKIGNsYXNzIEpTVGVzdE5vbmRldGVybWluaXN0aWMgOiBwdWJsaWMgSlNE
T01XcmFwcGVyPFRlc3ROb25kZXRlcm1pbmlzdGljPiB7CiBwdWJsaWM6Ci0gICAgdHlwZWRlZiBK
U0RPTVdyYXBwZXI8VGVzdE5vbmRldGVybWluaXN0aWM+IEJhc2U7CisgICAgdXNpbmcgQmFzZSA9
IEpTRE9NV3JhcHBlcjxUZXN0Tm9uZGV0ZXJtaW5pc3RpYz47CiAgICAgc3RhdGljIEpTVGVzdE5v
bmRldGVybWluaXN0aWMqIGNyZWF0ZShKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5vbmRldGVybWluaXN0aWM+JiYgaW1w
bCkKICAgICB7CiAgICAgICAgIEpTVGVzdE5vbmRldGVybWluaXN0aWMqIHB0ciA9IG5ldyAoTm90
TnVsbCwgSlNDOjphbGxvY2F0ZUNlbGw8SlNUZXN0Tm9uZGV0ZXJtaW5pc3RpYz4oZ2xvYmFsT2Jq
ZWN0LT52bSgpLmhlYXApKSBKU1Rlc3ROb25kZXRlcm1pbmlzdGljKHN0cnVjdHVyZSwgKmdsb2Jh
bE9iamVjdCwgV1RGTW92ZShpbXBsKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouY3BwCmluZGV4IDI3NmI1MmU3MDE2Nzg5ZTNm
NGZmODIwMzBhNThhOGE4NWRmNzJiMjguLjM1Y2NkMzRkMjIxODE4MTlmYTkwYTM4ZmQzZmI3ZGEx
MTM4NTcyOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RPYmouY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RPYmouY3BwCkBAIC02MCw3ICs2MCw2IEBACiAjaW5jbHVkZSAiU1ZHU3Rh
dGljUHJvcGVydHlUZWFyT2ZmLmgiCiAjaW5jbHVkZSAiU2VyaWFsaXplZFNjcmlwdFZhbHVlLmgi
CiAjaW5jbHVkZSAiU2V0dGluZ3MuaCIKLSNpbmNsdWRlICJUZXN0T2JqLmgiCiAjaW5jbHVkZSAi
VVJMLmgiCiAjaW5jbHVkZSAiV2ViQ29yZUpTQ2xpZW50RGF0YS5oIgogI2luY2x1ZGUgPGluc3Bl
Y3Rvci9TY3JpcHRBcmd1bWVudHMuaD4KQEAgLTk3MCw3ICs5NjksNyBAQCBib29sIHNldEpTVGVz
dE9iakNvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlND
OjpFbmNvZGVkSgogCiBjbGFzcyBKU1Rlc3RPYmpQcm90b3R5cGUgOiBwdWJsaWMgSlNDOjpKU05v
bkZpbmFsT2JqZWN0IHsKIHB1YmxpYzoKLSAgICB0eXBlZGVmIEpTQzo6SlNOb25GaW5hbE9iamVj
dCBCYXNlOworICAgIHVzaW5nIEJhc2UgPSBKU0M6OkpTTm9uRmluYWxPYmplY3Q7CiAgICAgc3Rh
dGljIEpTVGVzdE9ialByb3RvdHlwZSogY3JlYXRlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgewog
ICAgICAgICBKU1Rlc3RPYmpQcm90b3R5cGUqIHB0ciA9IG5ldyAoTm90TnVsbCwgSlNDOjphbGxv
Y2F0ZUNlbGw8SlNUZXN0T2JqUHJvdG90eXBlPih2bS5oZWFwKSkgSlNUZXN0T2JqUHJvdG90eXBl
KHZtLCBnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSk7CkBAIC05OTMsNyArOTkyLDcgQEAgcHJpdmF0
ZToKICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEpTQzo6Vk0mKTsKIH07CiAKLXR5cGVkZWYgSlNE
T01Db25zdHJ1Y3RvcjxKU1Rlc3RPYmo+IEpTVGVzdE9iakNvbnN0cnVjdG9yOwordXNpbmcgSlNU
ZXN0T2JqQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yPEpTVGVzdE9iaj47CiAKIC8qIEhh
c2ggdGFibGUgKi8KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE9iai5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE9iai5oCmluZGV4IGE0YWUyZTA0ZDcyNjgwNjRjMjFlMzkxMjE5NzMzNzc2
ZDZkZjQwOWMuLjkxZDdlYTljMTk4MDRhMTQwYjNlYmI3MjRiODU1ZDFiZWMyY2FkMTkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmou
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2Jq
LmgKQEAgLTI4LDcgKzI4LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBKU1Rlc3RP
YmogOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RPYmo+IHsKIHB1YmxpYzoKLSAgICB0eXBlZGVm
IEpTRE9NV3JhcHBlcjxUZXN0T2JqPiBCYXNlOworICAgIHVzaW5nIEJhc2UgPSBKU0RPTVdyYXBw
ZXI8VGVzdE9iaj47CiAgICAgc3RhdGljIEpTVGVzdE9iaiogY3JlYXRlKEpTQzo6U3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0T2Jq
PiYmIGltcGwpCiAgICAgewogICAgICAgICBKU1Rlc3RPYmoqIHB0ciA9IG5ldyAoTm90TnVsbCwg
SlNDOjphbGxvY2F0ZUNlbGw8SlNUZXN0T2JqPihnbG9iYWxPYmplY3QtPnZtKCkuaGVhcCkpIEpT
VGVzdE9iaihzdHJ1Y3R1cmUsICpnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJs
b2FkZWRDb25zdHJ1Y3RvcnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuY3BwCmluZGV4IDA4YzZkYTRiMjcw
YzdiZTU0NDBhNzM2NjA3ZDI5OWFlOTIyN2ZmZmYuLjZiYzcxYjJmYWQxNmY0N2Q2YjZlYmVhZjkz
MDU4YzQwYzQ3ZDI1YmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVj
dG9ycy5jcHAKQEAgLTQwLDcgKzQwLDcgQEAgYm9vbCBzZXRKU1Rlc3RPdmVybG9hZGVkQ29uc3Ry
dWN0b3JzQ29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkVuY29kZWRKU1YKIAogY2xh
c3MgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1Byb3RvdHlwZSA6IHB1YmxpYyBKU0M6OkpT
Tm9uRmluYWxPYmplY3QgewogcHVibGljOgotICAgIHR5cGVkZWYgSlNDOjpKU05vbkZpbmFsT2Jq
ZWN0IEJhc2U7CisgICAgdXNpbmcgQmFzZSA9IEpTQzo6SlNOb25GaW5hbE9iamVjdDsKICAgICBz
dGF0aWMgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1Byb3RvdHlwZSogY3JlYXRlKEpTQzo6
Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6U3RydWN0dXJl
KiBzdHJ1Y3R1cmUpCiAgICAgewogICAgICAgICBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3Jz
UHJvdG90eXBlKiBwdHIgPSBuZXcgKE5vdE51bGwsIEpTQzo6YWxsb2NhdGVDZWxsPEpTVGVzdE92
ZXJsb2FkZWRDb25zdHJ1Y3RvcnNQcm90b3R5cGU+KHZtLmhlYXApKSBKU1Rlc3RPdmVybG9hZGVk
Q29uc3RydWN0b3JzUHJvdG90eXBlKHZtLCBnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSk7CkBAIC02
Myw3ICs2Myw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBmaW5pc2hDcmVhdGlvbihKU0M6OlZNJik7
CiB9OwogCi10eXBlZGVmIEpTRE9NQ29uc3RydWN0b3I8SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVj
dG9ycz4gSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0NvbnN0cnVjdG9yOwordXNpbmcgSlNU
ZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0NvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3RvcjxK
U1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzPjsKIAogc3RhdGljIGlubGluZSBFbmNvZGVkSlNW
YWx1ZSBjb25zdHJ1Y3RKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzMShFeGVjU3RhdGUqIHN0
YXRlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmgKaW5kZXgg
OGJiM2IwNTJjNDUzYzM2OTdlZDZlODVhMTQwYTQwNWUzNDViYTI0Yi4uMDY1ZGU1ZmI0YzVlOWUy
NTUxMWU5ZmRmMjdhODNiMzdhNTJlNGFkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRl
ZENvbnN0cnVjdG9ycy5oCkBAIC0yOCw3ICsyOCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
Y2xhc3MgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycyA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8
VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnM+IHsKIHB1YmxpYzoKLSAgICB0eXBlZGVmIEpTRE9N
V3JhcHBlcjxUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycz4gQmFzZTsKKyAgICB1c2luZyBCYXNl
ID0gSlNET01XcmFwcGVyPFRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzPjsKICAgICBzdGF0aWMg
SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycyogY3JlYXRlKEpTQzo6U3RydWN0dXJlKiBzdHJ1
Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0T3ZlcmxvYWRl
ZENvbnN0cnVjdG9ycz4mJiBpbXBsKQogICAgIHsKICAgICAgICAgSlNUZXN0T3ZlcmxvYWRlZENv
bnN0cnVjdG9ycyogcHRyID0gbmV3IChOb3ROdWxsLCBKU0M6OmFsbG9jYXRlQ2VsbDxKU1Rlc3RP
dmVybG9hZGVkQ29uc3RydWN0b3JzPihnbG9iYWxPYmplY3QtPnZtKCkuaGVhcCkpIEpTVGVzdE92
ZXJsb2FkZWRDb25zdHJ1Y3RvcnMoc3RydWN0dXJlLCAqZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGlt
cGwpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0
b3JzV2l0aFNlcXVlbmNlLmNwcAppbmRleCA1N2MzMDE0ZjViNzBkNjAyZDA4N2QwMDM2YTZlNTVm
Y2RjMTlmNTk1Li42Mzk3N2M5ZDY4MDNkMjQwMDg4MjE2ZDgwZDk2ODNhNDQ1MGE5OGI2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3Zl
cmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRo
U2VxdWVuY2UuY3BwCkBAIC0zOSw3ICszOSw3IEBAIGJvb2wgc2V0SlNUZXN0T3ZlcmxvYWRlZENv
bnN0cnVjdG9yc1dpdGhTZXF1ZW5jZUNvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlKiwgSlNDCiAK
IGNsYXNzIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VQcm90b3R5cGUg
OiBwdWJsaWMgSlNDOjpKU05vbkZpbmFsT2JqZWN0IHsKIHB1YmxpYzoKLSAgICB0eXBlZGVmIEpT
Qzo6SlNOb25GaW5hbE9iamVjdCBCYXNlOworICAgIHVzaW5nIEJhc2UgPSBKU0M6OkpTTm9uRmlu
YWxPYmplY3Q7CiAgICAgc3RhdGljIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2Vx
dWVuY2VQcm90b3R5cGUqIGNyZWF0ZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCBKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIHsKICAgICAgICAg
SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZVByb3RvdHlwZSogcHRyID0g
bmV3IChOb3ROdWxsLCBKU0M6OmFsbG9jYXRlQ2VsbDxKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0
b3JzV2l0aFNlcXVlbmNlUHJvdG90eXBlPih2bS5oZWFwKSkgSlNUZXN0T3ZlcmxvYWRlZENvbnN0
cnVjdG9yc1dpdGhTZXF1ZW5jZVByb3RvdHlwZSh2bSwgZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1cmUp
OwpAQCAtNjIsNyArNjIsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oSlND
OjpWTSYpOwogfTsKIAotdHlwZWRlZiBKU0RPTUNvbnN0cnVjdG9yPEpTVGVzdE92ZXJsb2FkZWRD
b25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2U+IEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRo
U2VxdWVuY2VDb25zdHJ1Y3RvcjsKK3VzaW5nIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNX
aXRoU2VxdWVuY2VDb25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3I8SlNUZXN0T3ZlcmxvYWRl
ZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZT47CiAKIHN0YXRpYyBpbmxpbmUgRW5jb2RlZEpTVmFs
dWUgY29uc3RydWN0SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZTEoRXhl
Y1N0YXRlKiBzdGF0ZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRl
ZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZS5oCmluZGV4IGNhODhjYmRjM2FmM2NjNDgyMTk2NzI2
NzZhZWNkN2Q2MTk4ZWM5NzguLmE0Y2U2NGJhYzUzZDNjY2YyNWM1NzBiM2YyNmY0N2NiOTc0MzBh
YWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3Rv
cnNXaXRoU2VxdWVuY2UuaApAQCAtMjgsNyArMjgsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
IGNsYXNzIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UgOiBwdWJsaWMg
SlNET01XcmFwcGVyPFRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlPiB7CiBw
dWJsaWM6Ci0gICAgdHlwZWRlZiBKU0RPTVdyYXBwZXI8VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3Rv
cnNXaXRoU2VxdWVuY2U+IEJhc2U7CisgICAgdXNpbmcgQmFzZSA9IEpTRE9NV3JhcHBlcjxUZXN0
T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZT47CiAgICAgc3RhdGljIEpTVGVzdE92
ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UqIGNyZWF0ZShKU0M6OlN0cnVjdHVyZSog
c3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE92ZXJs
b2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2U+JiYgaW1wbCkKICAgICB7CiAgICAgICAgIEpT
VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UqIHB0ciA9IG5ldyAoTm90TnVs
bCwgSlNDOjphbGxvY2F0ZUNlbGw8SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1
ZW5jZT4oZ2xvYmFsT2JqZWN0LT52bSgpLmhlYXApKSBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0
b3JzV2l0aFNlcXVlbmNlKHN0cnVjdHVyZSwgKmdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0T3ZlcnJpZGVCdWlsdGlucy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0T3ZlcnJpZGVCdWlsdGlucy5jcHAKaW5kZXggNWY2ZWIwMDk1NmM3MGVi
YmJiMzViMDllMDJmNzlmZjAwYzRlOTg1Mi4uOTMxMjRiMjZlYjQ3ZDNlZmFkODIxYTg4MTM0MjFl
NmNjYmFhYTc1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE92ZXJyaWRlQnVpbHRpbnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVycmlkZUJ1aWx0aW5zLmNwcApAQCAtNDYs
NyArNDYsNyBAQCBib29sIHNldEpTVGVzdE92ZXJyaWRlQnVpbHRpbnNDb25zdHJ1Y3RvcihKU0M6
OkV4ZWNTdGF0ZSosIEpTQzo6RW5jb2RlZEpTVmFsdWUsCiAKIGNsYXNzIEpTVGVzdE92ZXJyaWRl
QnVpbHRpbnNQcm90b3R5cGUgOiBwdWJsaWMgSlNDOjpKU05vbkZpbmFsT2JqZWN0IHsKIHB1Ymxp
YzoKLSAgICB0eXBlZGVmIEpTQzo6SlNOb25GaW5hbE9iamVjdCBCYXNlOworICAgIHVzaW5nIEJh
c2UgPSBKU0M6OkpTTm9uRmluYWxPYmplY3Q7CiAgICAgc3RhdGljIEpTVGVzdE92ZXJyaWRlQnVp
bHRpbnNQcm90b3R5cGUqIGNyZWF0ZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCBKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIHsKICAgICAgICAg
SlNUZXN0T3ZlcnJpZGVCdWlsdGluc1Byb3RvdHlwZSogcHRyID0gbmV3IChOb3ROdWxsLCBKU0M6
OmFsbG9jYXRlQ2VsbDxKU1Rlc3RPdmVycmlkZUJ1aWx0aW5zUHJvdG90eXBlPih2bS5oZWFwKSkg
SlNUZXN0T3ZlcnJpZGVCdWlsdGluc1Byb3RvdHlwZSh2bSwgZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1
cmUpOwpAQCAtNjksNyArNjksNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZmluaXNoQ3JlYXRpb24o
SlNDOjpWTSYpOwogfTsKIAotdHlwZWRlZiBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJs
ZTxKU1Rlc3RPdmVycmlkZUJ1aWx0aW5zPiBKU1Rlc3RPdmVycmlkZUJ1aWx0aW5zQ29uc3RydWN0
b3I7Cit1c2luZyBKU1Rlc3RPdmVycmlkZUJ1aWx0aW5zQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0
cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RPdmVycmlkZUJ1aWx0aW5zPjsKIAogdGVtcGxh
dGU8PiBKU1ZhbHVlIEpTVGVzdE92ZXJyaWRlQnVpbHRpbnNDb25zdHJ1Y3Rvcjo6cHJvdG90eXBl
Rm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE92ZXJyaWRlQnVpbHRpbnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVycmlkZUJ1aWx0aW5zLmgKaW5kZXggODg2ODRiYzc4
ZWYwMDk3ZmM5Yzg1ZjFhZmQ0NzNjYTZkNDMwN2JlMi4uZmJjMjNiNThhNWZlODI0YTE3MzAzZDVh
ZDA0NjNjNTFkNzFlNzZjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJyaWRlQnVpbHRpbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcnJpZGVCdWlsdGlucy5oCkBAIC0y
OCw3ICsyOCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgSlNUZXN0T3ZlcnJpZGVC
dWlsdGlucyA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdE92ZXJyaWRlQnVpbHRpbnM+IHsKIHB1
YmxpYzoKLSAgICB0eXBlZGVmIEpTRE9NV3JhcHBlcjxUZXN0T3ZlcnJpZGVCdWlsdGlucz4gQmFz
ZTsKKyAgICB1c2luZyBCYXNlID0gSlNET01XcmFwcGVyPFRlc3RPdmVycmlkZUJ1aWx0aW5zPjsK
ICAgICBzdGF0aWMgSlNUZXN0T3ZlcnJpZGVCdWlsdGlucyogY3JlYXRlKEpTQzo6U3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0T3Zl
cnJpZGVCdWlsdGlucz4mJiBpbXBsKQogICAgIHsKICAgICAgICAgSlNUZXN0T3ZlcnJpZGVCdWls
dGlucyogcHRyID0gbmV3IChOb3ROdWxsLCBKU0M6OmFsbG9jYXRlQ2VsbDxKU1Rlc3RPdmVycmlk
ZUJ1aWx0aW5zPihnbG9iYWxPYmplY3QtPnZtKCkuaGVhcCkpIEpTVGVzdE92ZXJyaWRlQnVpbHRp
bnMoc3RydWN0dXJlLCAqZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXJpYWxpemVk
U2NyaXB0VmFsdWVJbnRlcmZhY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHAKaW5kZXgg
Y2U2MGViNDQxZjcwNWJjZjk0ZjIwZWU4YTkxODc1NjUwOGUxMzI2YS4uMTViZjNkY2RiNDY3YTdm
YzMzOGE5NGM4MmM4OTRjOGI1OTNmMzFmNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFj
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHAKQEAgLTQ5LDcgKzQ5LDcgQEAgYm9v
bCBzZXRKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VDb25zdHJ1Y3RvcihKU0M6
OkV4ZWNTdGF0ZSosIEpTQzo6RW4KIAogY2xhc3MgSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVl
SW50ZXJmYWNlUHJvdG90eXBlIDogcHVibGljIEpTQzo6SlNOb25GaW5hbE9iamVjdCB7CiBwdWJs
aWM6Ci0gICAgdHlwZWRlZiBKU0M6OkpTTm9uRmluYWxPYmplY3QgQmFzZTsKKyAgICB1c2luZyBC
YXNlID0gSlNDOjpKU05vbkZpbmFsT2JqZWN0OwogICAgIHN0YXRpYyBKU1Rlc3RTZXJpYWxpemVk
U2NyaXB0VmFsdWVJbnRlcmZhY2VQcm90b3R5cGUqIGNyZWF0ZShKU0M6OlZNJiB2bSwgSlNDOjpK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlKQog
ICAgIHsKICAgICAgICAgSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlUHJvdG90
eXBlKiBwdHIgPSBuZXcgKE5vdE51bGwsIEpTQzo6YWxsb2NhdGVDZWxsPEpTVGVzdFNlcmlhbGl6
ZWRTY3JpcHRWYWx1ZUludGVyZmFjZVByb3RvdHlwZT4odm0uaGVhcCkpIEpTVGVzdFNlcmlhbGl6
ZWRTY3JpcHRWYWx1ZUludGVyZmFjZVByb3RvdHlwZSh2bSwgZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1
cmUpOwpAQCAtNzIsNyArNzIsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZmluaXNoQ3JlYXRpb24o
SlNDOjpWTSYpOwogfTsKIAotdHlwZWRlZiBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJs
ZTxKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2U+IEpTVGVzdFNlcmlhbGl6ZWRT
Y3JpcHRWYWx1ZUludGVyZmFjZUNvbnN0cnVjdG9yOwordXNpbmcgSlNUZXN0U2VyaWFsaXplZFNj
cmlwdFZhbHVlSW50ZXJmYWNlQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3Ry
dWN0YWJsZTxKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2U+OwogCiB0ZW1wbGF0
ZTw+IEpTVmFsdWUgSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlQ29uc3RydWN0
b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2Uu
aCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXJpYWxp
emVkU2NyaXB0VmFsdWVJbnRlcmZhY2UuaAppbmRleCAyMmRjODE4MTAyYzI1OTcxMTFkODhiOGM1
YTM3YjQwNDNjNzdlNzgyLi40OWU1YjQ2MDNmNjY3YjM4MDc5NTFkYTA4ODZjZDY4NGFhMzIyYjBm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVy
ZmFjZS5oCkBAIC0zMCw3ICszMCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgSlNU
ZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlIDogcHVibGljIEpTRE9NV3JhcHBlcjxU
ZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlPiB7CiBwdWJsaWM6Ci0gICAgdHlwZWRl
ZiBKU0RPTVdyYXBwZXI8VGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZT4gQmFzZTsK
KyAgICB1c2luZyBCYXNlID0gSlNET01XcmFwcGVyPFRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJ
bnRlcmZhY2U+OwogICAgIHN0YXRpYyBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZh
Y2UqIGNyZWF0ZShKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCBSZWY8VGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZT4mJiBp
bXBsKQogICAgIHsKICAgICAgICAgSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNl
KiBwdHIgPSBuZXcgKE5vdE51bGwsIEpTQzo6YWxsb2NhdGVDZWxsPEpTVGVzdFNlcmlhbGl6ZWRT
Y3JpcHRWYWx1ZUludGVyZmFjZT4oZ2xvYmFsT2JqZWN0LT52bSgpLmhlYXApKSBKU1Rlc3RTZXJp
YWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2Uoc3RydWN0dXJlLCAqZ2xvYmFsT2JqZWN0LCBXVEZN
b3ZlKGltcGwpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RUeXBlZGVmcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0VHlwZWRlZnMuY3BwCmluZGV4IDU2OWEwNzEzMWE4ZDcyM2VmZWFh
NGNjZDBiMGNjZDdjMmExNDEyMTIuLjliMWE5NzIzMmJmZTIwNjhjYTMyY2FiYTRlYWVmNjUzYjNm
Yzg3OTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RUeXBlZGVmcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdFR5cGVkZWZzLmNwcApAQCAtNzYsNyArNzYsNyBAQCBib29sIHNldEpT
VGVzdFR5cGVkZWZzQ29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkVuY29kZWRKU1Zh
bHVlLCBKU0M6OkVuYwogCiBjbGFzcyBKU1Rlc3RUeXBlZGVmc1Byb3RvdHlwZSA6IHB1YmxpYyBK
U0M6OkpTTm9uRmluYWxPYmplY3QgewogcHVibGljOgotICAgIHR5cGVkZWYgSlNDOjpKU05vbkZp
bmFsT2JqZWN0IEJhc2U7CisgICAgdXNpbmcgQmFzZSA9IEpTQzo6SlNOb25GaW5hbE9iamVjdDsK
ICAgICBzdGF0aWMgSlNUZXN0VHlwZWRlZnNQcm90b3R5cGUqIGNyZWF0ZShKU0M6OlZNJiB2bSwg
SlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OlN0cnVjdHVyZSogc3RydWN0
dXJlKQogICAgIHsKICAgICAgICAgSlNUZXN0VHlwZWRlZnNQcm90b3R5cGUqIHB0ciA9IG5ldyAo
Tm90TnVsbCwgSlNDOjphbGxvY2F0ZUNlbGw8SlNUZXN0VHlwZWRlZnNQcm90b3R5cGU+KHZtLmhl
YXApKSBKU1Rlc3RUeXBlZGVmc1Byb3RvdHlwZSh2bSwgZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1cmUp
OwpAQCAtOTksNyArOTksNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oSlND
OjpWTSYpOwogfTsKIAotdHlwZWRlZiBKU0RPTUNvbnN0cnVjdG9yPEpTVGVzdFR5cGVkZWZzPiBK
U1Rlc3RUeXBlZGVmc0NvbnN0cnVjdG9yOwordXNpbmcgSlNUZXN0VHlwZWRlZnNDb25zdHJ1Y3Rv
ciA9IEpTRE9NQ29uc3RydWN0b3I8SlNUZXN0VHlwZWRlZnM+OwogCiAvKiBIYXNoIHRhYmxlICov
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RUeXBlZGVmcy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFR5cGVkZWZzLmgKaW5kZXggOTdhMWY2NTg3MDcyN2RkMTFhMWI2MjA5ZGE5OWNjZDA3
YmMyOWQ5YS4uYjFkMzZiZmE5ZmFjZTlhZWZkNDcwMTMwNWRkN2IxZWEyZmE3NDVlMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFR5cGVk
ZWZzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dFR5cGVkZWZzLmgKQEAgLTI4LDcgKzI4LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFz
cyBKU1Rlc3RUeXBlZGVmcyA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdFR5cGVkZWZzPiB7CiBw
dWJsaWM6Ci0gICAgdHlwZWRlZiBKU0RPTVdyYXBwZXI8VGVzdFR5cGVkZWZzPiBCYXNlOworICAg
IHVzaW5nIEJhc2UgPSBKU0RPTVdyYXBwZXI8VGVzdFR5cGVkZWZzPjsKICAgICBzdGF0aWMgSlNU
ZXN0VHlwZWRlZnMqIGNyZWF0ZShKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFR5cGVkZWZzPiYmIGltcGwpCiAgICAgewog
ICAgICAgICBKU1Rlc3RUeXBlZGVmcyogcHRyID0gbmV3IChOb3ROdWxsLCBKU0M6OmFsbG9jYXRl
Q2VsbDxKU1Rlc3RUeXBlZGVmcz4oZ2xvYmFsT2JqZWN0LT52bSgpLmhlYXApKSBKU1Rlc3RUeXBl
ZGVmcyhzdHJ1Y3R1cmUsICpnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTYXR0cmlidXRlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU2F0dHJpYnV0ZS5j
cHAKaW5kZXggNzdmYjVmNmQzMWQ1NGVlZDk4NmNmYmUxM2UzMTgxMDhkNjg5NDRmYy4uOGM4MzVh
ZTZmYWU4YmU3N2VmYzQyZWEzNjExMTI2Y2RjMDRjNDFmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTYXR0cmlidXRlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNhdHRyaWJ1dGUuY3BwCkBAIC00
MCw3ICs0MCw3IEBAIGJvb2wgc2V0SlNhdHRyaWJ1dGVDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0
ZSosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlCiAKIGNsYXNzIEpTYXR0cmlidXRl
UHJvdG90eXBlIDogcHVibGljIEpTQzo6SlNOb25GaW5hbE9iamVjdCB7CiBwdWJsaWM6Ci0gICAg
dHlwZWRlZiBKU0M6OkpTTm9uRmluYWxPYmplY3QgQmFzZTsKKyAgICB1c2luZyBCYXNlID0gSlND
OjpKU05vbkZpbmFsT2JqZWN0OwogICAgIHN0YXRpYyBKU2F0dHJpYnV0ZVByb3RvdHlwZSogY3Jl
YXRlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6
U3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgewogICAgICAgICBKU2F0dHJpYnV0ZVByb3RvdHlw
ZSogcHRyID0gbmV3IChOb3ROdWxsLCBKU0M6OmFsbG9jYXRlQ2VsbDxKU2F0dHJpYnV0ZVByb3Rv
dHlwZT4odm0uaGVhcCkpIEpTYXR0cmlidXRlUHJvdG90eXBlKHZtLCBnbG9iYWxPYmplY3QsIHN0
cnVjdHVyZSk7CkBAIC02Myw3ICs2Myw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBmaW5pc2hDcmVh
dGlvbihKU0M6OlZNJik7CiB9OwogCi10eXBlZGVmIEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1
Y3RhYmxlPEpTYXR0cmlidXRlPiBKU2F0dHJpYnV0ZUNvbnN0cnVjdG9yOwordXNpbmcgSlNhdHRy
aWJ1dGVDb25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTYXR0
cmlidXRlPjsKIAogLyogSGFzaCB0YWJsZSAqLwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNhdHRyaWJ1dGUuaCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU2F0dHJpYnV0ZS5oCmluZGV4IGJhOTNjMzRkNTVl
MWU4YzZhZDYzOTNhZTUyNDQwYWQ1Y2NhZmZmMDYuLmM5YzhjZDg1ZTM5M2E4Y2FmYTg3ODgwM2Jm
NTgwOGI3NTM2ODc5MzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU2F0dHJpYnV0ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU2F0dHJpYnV0ZS5oCkBAIC0yOSw3ICsyOSw3IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogY2xhc3MgSlNhdHRyaWJ1dGUgOiBwdWJsaWMgSlNET01XcmFwcGVyPGF0dHJp
YnV0ZT4gewogcHVibGljOgotICAgIHR5cGVkZWYgSlNET01XcmFwcGVyPGF0dHJpYnV0ZT4gQmFz
ZTsKKyAgICB1c2luZyBCYXNlID0gSlNET01XcmFwcGVyPGF0dHJpYnV0ZT47CiAgICAgc3RhdGlj
IEpTYXR0cmlidXRlKiBjcmVhdGUoSlNDOjpTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgUmVmPGF0dHJpYnV0ZT4mJiBpbXBsKQogICAgIHsKICAg
ICAgICAgSlNhdHRyaWJ1dGUqIHB0ciA9IG5ldyAoTm90TnVsbCwgSlNDOjphbGxvY2F0ZUNlbGw8
SlNhdHRyaWJ1dGU+KGdsb2JhbE9iamVjdC0+dm0oKS5oZWFwKSkgSlNhdHRyaWJ1dGUoc3RydWN0
dXJlLCAqZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU3JlYWRvbmx5LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU3JlYWRvbmx5LmNwcAppbmRleCA0ZjE3
ZDgxNDU2ODI1YWE0NTA5MjM3MWM2YjA2ODk0ZTZmNTc0YmJkLi43YjBmNzI2YmNiY2QxZTcwMWNk
OTJkODdhOGQ2YjdlZmZkNzk5M2M2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNyZWFkb25seS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTcmVhZG9ubHkuY3BwCkBAIC0zNyw3ICszNyw3IEBAIGJv
b2wgc2V0SlNyZWFkb25seUNvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpFbmNvZGVk
SlNWYWx1ZSwgSlNDOjpFbmNvZGVkCiAKIGNsYXNzIEpTcmVhZG9ubHlQcm90b3R5cGUgOiBwdWJs
aWMgSlNDOjpKU05vbkZpbmFsT2JqZWN0IHsKIHB1YmxpYzoKLSAgICB0eXBlZGVmIEpTQzo6SlNO
b25GaW5hbE9iamVjdCBCYXNlOworICAgIHVzaW5nIEJhc2UgPSBKU0M6OkpTTm9uRmluYWxPYmpl
Y3Q7CiAgICAgc3RhdGljIEpTcmVhZG9ubHlQcm90b3R5cGUqIGNyZWF0ZShKU0M6OlZNJiB2bSwg
SlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OlN0cnVjdHVyZSogc3RydWN0
dXJlKQogICAgIHsKICAgICAgICAgSlNyZWFkb25seVByb3RvdHlwZSogcHRyID0gbmV3IChOb3RO
dWxsLCBKU0M6OmFsbG9jYXRlQ2VsbDxKU3JlYWRvbmx5UHJvdG90eXBlPih2bS5oZWFwKSkgSlNy
ZWFkb25seVByb3RvdHlwZSh2bSwgZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1cmUpOwpAQCAtNjAsNyAr
NjAsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oSlNDOjpWTSYpOwogfTsK
IAotdHlwZWRlZiBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU3JlYWRvbmx5PiBK
U3JlYWRvbmx5Q29uc3RydWN0b3I7Cit1c2luZyBKU3JlYWRvbmx5Q29uc3RydWN0b3IgPSBKU0RP
TUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU3JlYWRvbmx5PjsKIAogdGVtcGxhdGU8PiBK
U1ZhbHVlIEpTcmVhZG9ubHlDb25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6
Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTcmVhZG9ubHku
aCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU3JlYWRvbmx5LmgK
aW5kZXggMjlmOGJhZWYyZGEyOGJjZWMzNTAzYzA1NWJiYWJkNWJkMGVkMjFmNy4uODBmMzA5NWJi
NGQyOWIzNjA5N2VhMDBhMDJlZjU3ZWM2NjQ4NTQyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTcmVhZG9ubHkuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNyZWFkb25seS5oCkBAIC0yOCw3ICsyOCw3
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgSlNyZWFkb25seSA6IHB1YmxpYyBKU0RP
TVdyYXBwZXI8cmVhZG9ubHk+IHsKIHB1YmxpYzoKLSAgICB0eXBlZGVmIEpTRE9NV3JhcHBlcjxy
ZWFkb25seT4gQmFzZTsKKyAgICB1c2luZyBCYXNlID0gSlNET01XcmFwcGVyPHJlYWRvbmx5PjsK
ICAgICBzdGF0aWMgSlNyZWFkb25seSogY3JlYXRlKEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1cmUs
IEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxyZWFkb25seT4mJiBpbXBsKQog
ICAgIHsKICAgICAgICAgSlNyZWFkb25seSogcHRyID0gbmV3IChOb3ROdWxsLCBKU0M6OmFsbG9j
YXRlQ2VsbDxKU3JlYWRvbmx5PihnbG9iYWxPYmplY3QtPnZtKCkuaGVhcCkpIEpTcmVhZG9ubHko
c3RydWN0dXJlLCAqZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0SW1wbGVtZW50cy5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdEltcGxlbWVudHMuaWRsCmlu
ZGV4IDI2NjVlODk5MWJmZTk2NDRkZDdmNjkxOGFlYjMxYzJiYjBkZTJiYTcuLmFkODcwNWEyMDMw
ZjMxMTQ5ODBmNjA2YmE2YWE3MmZmMDc0ZTE2YjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0SW1wbGVtZW50cy5pZGwKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RJbXBsZW1lbnRzLmlkbApAQCAtNDEsNyAr
NDEsNyBAQAogICAgIGF0dHJpYnV0ZSBOb2RlIGltcGxlbWVudHNOb2RlOwogCiAgICAgdm9pZCBp
bXBsZW1lbnRzTWV0aG9kMSgpOwotICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0
LCBSYWlzZXNFeGNlcHRpb25dIFRlc3RPYmogaW1wbGVtZW50c01ldGhvZDIoRE9NU3RyaW5nIHN0
ckFyZywgVGVzdE9iaiBvYmpBcmcpOworICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250
ZXh0LCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gVGVzdE9iaiBpbXBsZW1lbnRzTWV0aG9kMihE
T01TdHJpbmcgc3RyQXJnLCBUZXN0T2JqIG9iakFyZyk7CiAgICAgW0N1c3RvbV0gdm9pZCBpbXBs
ZW1lbnRzTWV0aG9kMygpOwogICAgIHN0YXRpYyB2b2lkIGltcGxlbWVudHNNZXRob2Q0KCk7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0SW50
ZXJmYWNlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0SW50
ZXJmYWNlLmlkbAppbmRleCAwMDE1MDdkN2NjYzhmMWM4M2IxNGI5MWJmNTc1ZWY2YWUzMGZhNWFl
Li4xZWEzZGM5MjNjNDJhMjE3NjVkZGRhZjAxZDc4NWFmMDllN2Y4NjViIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdEludGVyZmFjZS5pZGwKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RJbnRlcmZhY2UuaWRs
CkBAIC0zNCw3ICszNCw3IEBACiAgICAgQ29uZGl0aW9uYWw9Q29uZGl0aW9uMXxDb25kaXRpb24y
LAogICAgIENvbnN0cnVjdG9yQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwKICAgICBD
b25zdHJ1Y3RvcihET01TdHJpbmcgc3RyMSwgb3B0aW9uYWwgRE9NU3RyaW5nIHN0cjIgPSAiZGVm
YXVsdFN0cmluZyIpLAotICAgIENvbnN0cnVjdG9yUmFpc2VzRXhjZXB0aW9uLAorICAgIENvbnN0
cnVjdG9yTWF5VGhyb3dMZWdhY3lFeGNlcHRpb24sCiAgICAgQ29uc3RydWN0b3JDb25kaXRpb25h
bD1URVNUX0lOVEVSRkFDRSwKICAgICBFeHBvcnRNYWNybz1XRUJDT1JFX0VYUE9SVCwKICAgICBJ
bXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE5hbWVkQ29uc3RydWN0b3IuaWRsIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3ROYW1lZENvbnN0cnVjdG9yLmlkbAppbmRleCBk
MjAyMTVkZDY4NDViNTZhYjIzYmJjNmI1YmY1MDE4NjQ1MjkzNjM5Li5kZDU0YzgyNzNkZmVmNzU4
YzU3NjM2YTNiZWIxNGYyOWZlNzQ2NzMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE5hbWVkQ29uc3RydWN0b3IuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0TmFtZWRDb25zdHJ1Y3Rvci5pZGwKQEAg
LTMxLDYgKzMxLDYgQEAKIFsKICAgICBBY3RpdmVET01PYmplY3QsCiAgICAgTmFtZWRDb25zdHJ1
Y3Rvcj1BdWRpbyhET01TdHJpbmcgc3RyMSwgb3B0aW9uYWwgRE9NU3RyaW5nIHN0cjIgPSAiZGVm
YXVsdFN0cmluZyIsIG9wdGlvbmFsIERPTVN0cmluZyBzdHIzKSwKLSAgICBDb25zdHJ1Y3RvclJh
aXNlc0V4Y2VwdGlvbgorICAgIENvbnN0cnVjdG9yTWF5VGhyb3dMZWdhY3lFeGNlcHRpb24KIF0g
aW50ZXJmYWNlIFRlc3ROYW1lZENvbnN0cnVjdG9yIHsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE5vbmRldGVybWluaXN0aWMuaWRsIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3ROb25kZXRlcm1pbmlzdGlj
LmlkbAppbmRleCBkNmU0N2ZkMGYxYWEzN2I2ZjRjZjE2OTU0NTliYzAxNGRmOTNhN2MxLi41NGI1
MzY1NGUwOTVjY2YxZGRhMjA0MDU5Y2I0ZGM4NmY4MmRhMWUwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE5vbmRldGVybWluaXN0aWMuaWRsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0Tm9uZGV0ZXJtaW5p
c3RpYy5pZGwKQEAgLTMyLDkgKzMyLDkgQEAKIGludGVyZmFjZSBUZXN0Tm9uZGV0ZXJtaW5pc3Rp
YyB7CiAgICAgW05vbmRldGVybWluaXN0aWNdIHJlYWRvbmx5IGF0dHJpYnV0ZSBsb25nIG5vbmRl
dGVybWluaXN0aWNSZWFkb25seUF0dHI7CiAgICAgW05vbmRldGVybWluaXN0aWNdIGF0dHJpYnV0
ZSBET01TdHJpbmcgbm9uZGV0ZXJtaW5pc3RpY1dyaXRlYWJsZUF0dHI7Ci0gICAgW05vbmRldGVy
bWluaXN0aWMsIFJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBub25kZXRlcm1p
bmlzdGljRXhjZXB0aW9uQXR0cjsKLSAgICBbTm9uZGV0ZXJtaW5pc3RpYywgR2V0dGVyUmFpc2Vz
RXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIG5vbmRldGVybWluaXN0aWNHZXR0ZXJFeGNl
cHRpb25BdHRyOwotICAgIFtOb25kZXRlcm1pbmlzdGljLCBTZXR0ZXJSYWlzZXNFeGNlcHRpb25d
IGF0dHJpYnV0ZSBET01TdHJpbmcgbm9uZGV0ZXJtaW5pc3RpY1NldHRlckV4Y2VwdGlvbkF0dHI7
CisgICAgW05vbmRldGVybWluaXN0aWMsIE1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1
dGUgRE9NU3RyaW5nIG5vbmRldGVybWluaXN0aWNFeGNlcHRpb25BdHRyOworICAgIFtOb25kZXRl
cm1pbmlzdGljLCBHZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0
cmluZyBub25kZXRlcm1pbmlzdGljR2V0dGVyRXhjZXB0aW9uQXR0cjsKKyAgICBbTm9uZGV0ZXJt
aW5pc3RpYywgU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJp
bmcgbm9uZGV0ZXJtaW5pc3RpY1NldHRlckV4Y2VwdGlvbkF0dHI7CiAKICAgICBbTm9uZGV0ZXJt
aW5pc3RpY10gYm9vbGVhbiBub25kZXRlcm1pbmlzdGljWmVyb0FyZ0Z1bmN0aW9uKCk7CiB9Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RPYmou
aWRsIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRsCmlu
ZGV4IDBmNTlhOGVhMTk1ZTM2M2RlYjdiNDNlOTMyZjg1NmFiOGZjZWE4NGQuLmNmNGJiODgwMGQ0
NTRlNmFhMzgxODE1YzM5N2M3MTU4ZWFjMWEwYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwKQEAgLTEzNyw3ICsxMzcsNyBAQCBlbnVt
IFRlc3RDb25maWRlbmNlIHsgImhpZ2giLCAia2luZGEtbG93IiB9OwogICAgIHZvaWQgbWV0aG9k
V2l0aEVudW1BcmcoVGVzdEVudW1UeXBlIGVudW1BcmcpOwogICAgIHZvaWQgbWV0aG9kV2l0aE9w
dGlvbmFsRW51bUFyZyhvcHRpb25hbCBUZXN0RW51bVR5cGUgZW51bUFyZyk7CiAgICAgdm9pZCBt
ZXRob2RXaXRoT3B0aW9uYWxFbnVtQXJnQW5kRGVmYXVsdFZhbHVlKG9wdGlvbmFsIFRlc3RFbnVt
VHlwZSBlbnVtQXJnID0gIkVudW1WYWx1ZTEiKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBUZXN0
T2JqIG1ldGhvZFRoYXRSZXF1aXJlc0FsbEFyZ3NBbmRUaHJvd3MoRE9NU3RyaW5nIHN0ckFyZywg
VGVzdE9iaiBvYmpBcmcpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gVGVzdE9iaiBt
ZXRob2RUaGF0UmVxdWlyZXNBbGxBcmdzQW5kVGhyb3dzKERPTVN0cmluZyBzdHJBcmcsIFRlc3RP
Ymogb2JqQXJnKTsKIAogI2lmIGRlZmluZWQoVEVTVElOR19KUykKICAgICB2b2lkIG1ldGhvZFdp
dGhVU1ZTdHJpbmdBcmcoVVNWU3RyaW5nIHN0cik7CkBAIC0xNDksMTQgKzE0OSwxNCBAQCBlbnVt
IFRlc3RDb25maWRlbmNlIHsgImhpZ2giLCAia2luZGEtbG93IiB9OwogICAgIHZvaWQgb3B0aW9u
c09iamVjdChEaWN0aW9uYXJ5IG9vLCBvcHRpb25hbCBEaWN0aW9uYXJ5IG9vbyk7CiAKICAgICAv
LyBFeGNlcHRpb25zCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBtZXRob2RXaXRoRXhjZXB0
aW9uKCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbldpdGhNZXNzYWdlXSB2b2lkIG1ldGhvZFdpdGhF
eGNlcHRpb25XaXRoTWVzc2FnZSgpOwotICAgIFtHZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJp
YnV0ZSBsb25nIGF0dHJXaXRoR2V0dGVyRXhjZXB0aW9uOwotICAgIFtHZXR0ZXJSYWlzZXNFeGNl
cHRpb25XaXRoTWVzc2FnZV0gYXR0cmlidXRlIGxvbmcgYXR0cldpdGhHZXR0ZXJFeGNlcHRpb25X
aXRoTWVzc2FnZTsKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgbG9uZyBh
dHRyV2l0aFNldHRlckV4Y2VwdGlvbjsKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uV2l0aE1l
c3NhZ2VdIGF0dHJpYnV0ZSBsb25nIGF0dHJXaXRoU2V0dGVyRXhjZXB0aW9uV2l0aE1lc3NhZ2U7
Ci0gICAgW0dldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBzdHJpbmdB
dHRyV2l0aEdldHRlckV4Y2VwdGlvbjsKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRy
aWJ1dGUgRE9NU3RyaW5nIHN0cmluZ0F0dHJXaXRoU2V0dGVyRXhjZXB0aW9uOworICAgIFtNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBtZXRob2RXaXRoRXhjZXB0aW9uKCk7CisgICAgW01h
eVRocm93TGVnYWN5RXhjZXB0aW9uV2l0aE1lc3NhZ2VdIHZvaWQgbWV0aG9kV2l0aEV4Y2VwdGlv
bldpdGhNZXNzYWdlKCk7CisgICAgW0dldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRy
aWJ1dGUgbG9uZyBhdHRyV2l0aEdldHRlckV4Y2VwdGlvbjsKKyAgICBbR2V0dGVyTWF5VGhyb3dM
ZWdhY3lFeGNlcHRpb25XaXRoTWVzc2FnZV0gYXR0cmlidXRlIGxvbmcgYXR0cldpdGhHZXR0ZXJF
eGNlcHRpb25XaXRoTWVzc2FnZTsKKyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25d
IGF0dHJpYnV0ZSBsb25nIGF0dHJXaXRoU2V0dGVyRXhjZXB0aW9uOworICAgIFtTZXR0ZXJNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbldpdGhNZXNzYWdlXSBhdHRyaWJ1dGUgbG9uZyBhdHRyV2l0aFNl
dHRlckV4Y2VwdGlvbldpdGhNZXNzYWdlOworICAgIFtHZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBzdHJpbmdBdHRyV2l0aEdldHRlckV4Y2VwdGlvbjsK
KyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmcg
c3RyaW5nQXR0cldpdGhTZXR0ZXJFeGNlcHRpb247CiAKICAgICAvLyAnQ3VzdG9tJyBleHRlbmRl
ZCBhdHRyaWJ1dGUKICAgICBbQ3VzdG9tXSBhdHRyaWJ1dGUgbG9uZyAgICAgICAgICAgIGN1c3Rv
bUF0dHI7CkBAIC0xODEsMTEgKzE4MSwxMSBAQCBlbnVtIFRlc3RDb25maWRlbmNlIHsgImhpZ2gi
LCAia2luZGEtbG93IiB9OwogICAgIC8vICdDYWxsV2l0aCcgZXh0ZW5kZWQgYXR0cmlidXRlCiAg
ICAgW0NhbGxXaXRoPVNjcmlwdFN0YXRlXSB2b2lkIHdpdGhTY3JpcHRTdGF0ZVZvaWQoKTsKICAg
ICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGVdIFRlc3RPYmogd2l0aFNjcmlwdFN0YXRlT2JqKCk7Ci0g
ICAgW0NhbGxXaXRoPVNjcmlwdFN0YXRlLCBSYWlzZXNFeGNlcHRpb25dIHZvaWQgd2l0aFNjcmlw
dFN0YXRlVm9pZEV4Y2VwdGlvbigpOwotICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwgUmFpc2Vz
RXhjZXB0aW9uXSBUZXN0T2JqIHdpdGhTY3JpcHRTdGF0ZU9iakV4Y2VwdGlvbigpOworICAgIFtD
YWxsV2l0aD1TY3JpcHRTdGF0ZSwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgd2l0aFNj
cmlwdFN0YXRlVm9pZEV4Y2VwdGlvbigpOworICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwgTWF5
VGhyb3dMZWdhY3lFeGNlcHRpb25dIFRlc3RPYmogd2l0aFNjcmlwdFN0YXRlT2JqRXhjZXB0aW9u
KCk7CiAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIHZvaWQgd2l0aFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQoKTsKICAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4
dCZTY3JpcHRTdGF0ZV0gdm9pZCB3aXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEFuZFNjcmlwdFN0
YXRlKCk7Ci0gICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmU2NyaXB0U3RhdGUs
IFJhaXNlc0V4Y2VwdGlvbl0gVGVzdE9iaiB3aXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEFuZFNj
cmlwdFN0YXRlT2JqRXhjZXB0aW9uKCk7CisgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQmU2NyaXB0U3RhdGUsIE1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBUZXN0T2JqIHdpdGhT
Y3JpcHRFeGVjdXRpb25Db250ZXh0QW5kU2NyaXB0U3RhdGVPYmpFeGNlcHRpb24oKTsKICAgICBb
Q2FsbFdpdGg9ICBTY3JpcHRFeGVjdXRpb25Db250ZXh0ICAmICBTY3JpcHRTdGF0ZSAgXSBUZXN0
T2JqIHdpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QW5kU2NyaXB0U3RhdGVXaXRoU3BhY2VzKCk7
CiAgICAgW0NhbGxXaXRoPVNjcmlwdEFyZ3VtZW50cyZDYWxsU3RhY2tdIHZvaWQgd2l0aFNjcmlw
dEFyZ3VtZW50c0FuZENhbGxTdGFjaygpOwogICAgIFtDYWxsV2l0aD1Eb2N1bWVudF0gdm9pZCB3
aXRoRG9jdW1lbnRBcmd1bWVudCgpOwpAQCAtMTk1LDEwICsxOTUsMTAgQEAgZW51bSBUZXN0Q29u
ZmlkZW5jZSB7ICJoaWdoIiwgImtpbmRhLWxvdyIgfTsKICAgICBbQ2FsbFdpdGg9U2NyaXB0U3Rh
dGVdIGF0dHJpYnV0ZSBsb25nIHdpdGhTY3JpcHRTdGF0ZUF0dHJpYnV0ZTsKICAgICBbQ2FsbFdp
dGg9U2NyaXB0U3RhdGUsIFNldHRlckNhbGxXaXRoPUFjdGl2ZVdpbmRvdyZGaXJzdFdpbmRvd10g
YXR0cmlidXRlIGxvbmcgd2l0aENhbGxXaXRoQW5kU2V0dGVyQ2FsbFdpdGhBdHRyaWJ1dGU7CiAg
ICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGF0dHJpYnV0ZSBUZXN0T2JqIHdp
dGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QXR0cmlidXRlOwotICAgIFtDYWxsV2l0aD1TY3JpcHRT
dGF0ZSwgR2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgVGVzdE9iaiB3aXRoU2NyaXB0
U3RhdGVBdHRyaWJ1dGVSYWlzZXM7Ci0gICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQsIEdldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIFRlc3RPYmogd2l0aFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHRBdHRyaWJ1dGVSYWlzZXM7CisgICAgW0NhbGxXaXRoPVNjcmlwdFN0YXRl
LCBHZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIFRlc3RPYmogd2l0aFNj
cmlwdFN0YXRlQXR0cmlidXRlUmFpc2VzOworICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25D
b250ZXh0LCBHZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIFRlc3RPYmog
d2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRBdHRyaWJ1dGVSYWlzZXM7CiAgICAgW0NhbGxXaXRo
PVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmU2NyaXB0U3RhdGVdIGF0dHJpYnV0ZSBUZXN0T2JqIHdp
dGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QW5kU2NyaXB0U3RhdGVBdHRyaWJ1dGU7Ci0gICAgW0Nh
bGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmU2NyaXB0U3RhdGUsR2V0dGVyUmFpc2VzRXhj
ZXB0aW9uXSBhdHRyaWJ1dGUgVGVzdE9iaiB3aXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEFuZFNj
cmlwdFN0YXRlQXR0cmlidXRlUmFpc2VzOworICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25D
b250ZXh0JlNjcmlwdFN0YXRlLEdldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1
dGUgVGVzdE9iaiB3aXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEFuZFNjcmlwdFN0YXRlQXR0cmli
dXRlUmFpc2VzOwogICAgIFtDYWxsV2l0aD0gIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQgICYgIFNj
cmlwdFN0YXRlICBdIGF0dHJpYnV0ZSBUZXN0T2JqIHdpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0
QW5kU2NyaXB0U3RhdGVXaXRoU3BhY2VzQXR0cmlidXRlOwogICAgIFtDYWxsV2l0aD1TY3JpcHRB
cmd1bWVudHMmQ2FsbFN0YWNrXSBhdHRyaWJ1dGUgVGVzdE9iaiB3aXRoU2NyaXB0QXJndW1lbnRz
QW5kQ2FsbFN0YWNrQXR0cmlidXRlOwogCkBAIC0zMTIsOCArMzEyLDggQEAgZW51bSBUZXN0Q29u
ZmlkZW5jZSB7ICJoaWdoIiwgImtpbmRhLWxvdyIgfTsKIAogI2lmIGRlZmluZWQoVEVTVElOR19K
UykKICAgICB2b2lkIG1ldGhvZFdpdGhVbnNpZ25lZExvbmdTZXF1ZW5jZShzZXF1ZW5jZTx1bnNp
Z25lZCBsb25nPiB1bnNpZ25lZExvbmdTZXF1ZW5jZSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0g
c2VxdWVuY2U8RE9NU3RyaW5nPiBzdHJpbmdBcnJheUZ1bmN0aW9uKHNlcXVlbmNlPERPTVN0cmlu
Zz4gdmFsdWVzKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBET01TdHJpbmdMaXN0IGRvbVN0cmlu
Z0xpc3RGdW5jdGlvbihET01TdHJpbmdMaXN0IHZhbHVlcyk7CisgICAgW01heVRocm93TGVnYWN5
RXhjZXB0aW9uXSBzZXF1ZW5jZTxET01TdHJpbmc+IHN0cmluZ0FycmF5RnVuY3Rpb24oc2VxdWVu
Y2U8RE9NU3RyaW5nPiB2YWx1ZXMpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gRE9N
U3RyaW5nTGlzdCBkb21TdHJpbmdMaXN0RnVuY3Rpb24oRE9NU3RyaW5nTGlzdCB2YWx1ZXMpOwog
CiAgICAgdm9pZCBtZXRob2RXaXRoQW5kV2l0aG91dE51bGxhYmxlU2VxdWVuY2Uoc2VxdWVuY2U8
dW5zaWduZWQgbG9uZz4gYXJyYXlBcmcsIHNlcXVlbmNlPHVuc2lnbmVkIGxvbmc+PyBudWxsYWJs
ZUFycmF5QXJnKTsKIApAQCAtMzIxLDcgKzMyMSw3IEBAIGVudW0gVGVzdENvbmZpZGVuY2UgeyAi
aGlnaCIsICJraW5kYS1sb3ciIH07CiAjZW5kaWYKIAogICAgIFtDaGVja1NlY3VyaXR5Rm9yTm9k
ZV0gcmVhZG9ubHkgYXR0cmlidXRlIERvY3VtZW50IGNvbnRlbnREb2N1bWVudDsKLSAgICBbQ2hl
Y2tTZWN1cml0eUZvck5vZGUsIFJhaXNlc0V4Y2VwdGlvbl0gU1ZHRG9jdW1lbnQgZ2V0U1ZHRG9j
dW1lbnQoKTsKKyAgICBbQ2hlY2tTZWN1cml0eUZvck5vZGUsIE1heVRocm93TGVnYWN5RXhjZXB0
aW9uXSBTVkdEb2N1bWVudCBnZXRTVkdEb2N1bWVudCgpOwogCiAgICAgdm9pZCBjb252ZXJ0MShU
ZXN0Tm9kZSB2YWx1ZSk7CiAgICAgdm9pZCBjb252ZXJ0MihUZXN0Tm9kZT8gdmFsdWUpOwpAQCAt
MzcyLDcgKzM3Miw3IEBAIGVudW0gVGVzdENvbmZpZGVuY2UgeyAiaGlnaCIsICJraW5kYS1sb3ci
IH07CiAgICAgYXR0cmlidXRlIFVTVlN0cmluZz8gbnVsbGFibGVVU1ZTdHJpbmdTZXR0YWJsZUF0
dHJpYnV0ZTsKICNlbmRpZgogCi0gICAgW0dldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRl
IGxvbmc/IG51bGxhYmxlU3RyaW5nVmFsdWU7CisgICAgW0dldHRlck1heVRocm93TGVnYWN5RXhj
ZXB0aW9uXSBhdHRyaWJ1dGUgbG9uZz8gbnVsbGFibGVTdHJpbmdWYWx1ZTsKIAogICAgIC8vIElk
ZW50aWZpZXJzIHdpdGggYSBsZWFkaW5nIHVuZGVyc2NvcmUsIHdoaWNoIHNob3VsZCBiZSByZW1v
dmVkLgogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0ICAgICAgICAgICAgICAgX3JlYWRvbmx5ID0g
MDsKQEAgLTM4MywxMiArMzgzLDEyIEBAIGVudW0gVGVzdENvbmZpZGVuY2UgeyAiaGlnaCIsICJr
aW5kYS1sb3ciIH07CiAgICAgLy8gUHJvbWlzZSBmdW5jdGlvbgogICAgIFByb21pc2UgdGVzdFBy
b21pc2VGdW5jdGlvbigpOwogICAgIFByb21pc2UgdGVzdFByb21pc2VGdW5jdGlvbldpdGhGbG9h
dEFyZ3VtZW50KGZsb2F0IGEpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIFByb21pc2UgdGVzdFBy
b21pc2VGdW5jdGlvbldpdGhFeGNlcHRpb24oKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRp
b25dIFByb21pc2UgdGVzdFByb21pc2VGdW5jdGlvbldpdGhFeGNlcHRpb24oKTsKICAgICBQcm9t
aXNlIHRlc3RQcm9taXNlRnVuY3Rpb25XaXRoT3B0aW9uYWxJbnRBcmd1bWVudChvcHRpb25hbCBs
b25nIGEpOwogICAgIFByb21pc2UgdGVzdFByb21pc2VPdmVybG9hZGVkRnVuY3Rpb24oZmxvYXQg
YSk7CiAgICAgUHJvbWlzZSB0ZXN0UHJvbWlzZU92ZXJsb2FkZWRGdW5jdGlvbihGZXRjaFJlcXVl
c3QgcmVxdWVzdCk7CiAgICAgc3RhdGljIFByb21pc2UgdGVzdFN0YXRpY1Byb21pc2VGdW5jdGlv
bigpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHN0YXRpYyBQcm9taXNlIHRlc3RTdGF0aWNQcm9t
aXNlRnVuY3Rpb25XaXRoRXhjZXB0aW9uKCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9u
XSBzdGF0aWMgUHJvbWlzZSB0ZXN0U3RhdGljUHJvbWlzZUZ1bmN0aW9uV2l0aEV4Y2VwdGlvbigp
OwogICAgIFtDdXN0b21dIFByb21pc2UgdGVzdEN1c3RvbVByb21pc2VGdW5jdGlvbigpOwogCiAg
ICAgLy8gUHV0Rm9yd2FyZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9UZXN0U3VwcGxlbWVudGFsLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9UZXN0U3VwcGxlbWVudGFsLmlkbAppbmRleCAxOTU1NWMyYmY3YWUzY2Vi
N2Y1NjU1ZmVkZjRlOTk4OThiZTdiYTE0Li45Y2I2ODVlYzk4NWY1MmM3ZjczMDg5ZDY4MmExMTEz
NzIyNzI2MmQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvVGVzdFN1cHBsZW1lbnRhbC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L1Rlc3RTdXBwbGVtZW50YWwuaWRsCkBAIC0zOSw3ICszOSw3IEBACiAgICAgYXR0
cmlidXRlIE5vZGUgc3VwcGxlbWVudGFsTm9kZTsKIAogICAgIHZvaWQgc3VwcGxlbWVudGFsTWV0
aG9kMSgpOwotICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LCBSYWlzZXNFeGNl
cHRpb25dIFRlc3RPYmogc3VwcGxlbWVudGFsTWV0aG9kMihET01TdHJpbmcgc3RyQXJnLCBUZXN0
T2JqIG9iakFyZyk7CisgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIE1heVRo
cm93TGVnYWN5RXhjZXB0aW9uXSBUZXN0T2JqIHN1cHBsZW1lbnRhbE1ldGhvZDIoRE9NU3RyaW5n
IHN0ckFyZywgVGVzdE9iaiBvYmpBcmcpOwogICAgIFtDdXN0b21dIHZvaWQgc3VwcGxlbWVudGFs
TWV0aG9kMygpOwogICAgIHN0YXRpYyB2b2lkIHN1cHBsZW1lbnRhbE1ldGhvZDQoKTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RUeXBlZGVm
cy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdFR5cGVkZWZz
LmlkbAppbmRleCA5MjQ1YWM5MDFhMDYwMmJhOGMxMzU0NWU3NTBjMWFkYjI0NmUyNTNmLi44MDEz
MTVhOTVlODA4YmQ3NDQ5NTI2MWM4NzdlOWRhYTk5MDA2MTZhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdFR5cGVkZWZzLmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdFR5cGVkZWZzLmlkbApAQCAtNTIs
MTcgKzUyLDE3IEBACiAKICAgICBbSW1tdXRhYmxlXSBTVkdQT0lOVCBpbW11dGFibGVQb2ludEZ1
bmN0aW9uKCk7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBTRVFVRU5DRV9PRl9TVFJJTkdTIHN0
cmluZ1NlcXVlbmNlRnVuY3Rpb24oU0VRVUVOQ0VfT0ZfU1RSSU5HUyB2YWx1ZXMpOwotICAgIFtS
YWlzZXNFeGNlcHRpb25dIHNlcXVlbmNlPFNUUklORz4gc3RyaW5nU2VxdWVuY2VGdW5jdGlvbjIo
c2VxdWVuY2U8U1RSSU5HPiB2YWx1ZXMpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0g
U0VRVUVOQ0VfT0ZfU1RSSU5HUyBzdHJpbmdTZXF1ZW5jZUZ1bmN0aW9uKFNFUVVFTkNFX09GX1NU
UklOR1MgdmFsdWVzKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHNlcXVlbmNlPFNU
UklORz4gc3RyaW5nU2VxdWVuY2VGdW5jdGlvbjIoc2VxdWVuY2U8U1RSSU5HPiB2YWx1ZXMpOwog
CiAgICAgYm9vbGVhbiBjYWxsV2l0aFNlcXVlbmNlVGhhdFJlcXVpcmVzSW5jbHVkZShzZXF1ZW5j
ZTxUZXN0RXZlbnRUYXJnZXQ+IHNlcXVlbmNlQXJnKTsKIAogICAgIC8vIEV4Y2VwdGlvbnMKLSAg
ICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIG1ldGhvZFdpdGhFeGNlcHRpb24oKTsKLSAgICBbR2V0
dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgbG9uZyBhdHRyV2l0aEdldHRlckV4Y2VwdGlv
bjsKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgbG9uZyBhdHRyV2l0aFNl
dHRlckV4Y2VwdGlvbjsKLSAgICBbR2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9N
U3RyaW5nIHN0cmluZ0F0dHJXaXRoR2V0dGVyRXhjZXB0aW9uOwotICAgIFtTZXR0ZXJSYWlzZXNF
eGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmcgc3RyaW5nQXR0cldpdGhTZXR0ZXJFeGNlcHRp
b247CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIG1ldGhvZFdpdGhFeGNlcHRp
b24oKTsKKyAgICBbR2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSBsb25n
IGF0dHJXaXRoR2V0dGVyRXhjZXB0aW9uOworICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gYXR0cmlidXRlIGxvbmcgYXR0cldpdGhTZXR0ZXJFeGNlcHRpb247CisgICAgW0dldHRl
ck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHN0cmluZ0F0dHJX
aXRoR2V0dGVyRXhjZXB0aW9uOworICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0g
YXR0cmlidXRlIERPTVN0cmluZyBzdHJpbmdBdHRyV2l0aFNldHRlckV4Y2VwdGlvbjsKIH07CiAK
IHR5cGVkZWYgdW5yZXN0cmljdGVkIGZsb2F0ICAgICAgICAgRE9VQkxFOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0NoYXJzZXRSdWxlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NDaGFyc2V0UnVsZS5pZGwKaW5kZXggYWExYWUyN2Q5YTlkYmRjZjNiODA0YjFiMTQxMjFk
ZGM0NGNkMGU4Ni4uZjk5NTgxN2ExZjRiN2IyNTcwZWQwOGI0ODdjZGUxOWU5NzI2YzJkNiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NoYXJzZXRSdWxlLmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTQ2hhcnNldFJ1bGUuaWRsCkBAIC0yMCw2ICsyMCw2IEBACiAKIC8v
IEludHJvZHVjZWQgaW4gRE9NIExldmVsIDI6CiBpbnRlcmZhY2UgQ1NTQ2hhcnNldFJ1bGUgOiBD
U1NSdWxlIHsKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5n
PyBlbmNvZGluZzsKKyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0
ZSBET01TdHJpbmc/IGVuY29kaW5nOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU01lZGlhUnVsZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTTWVkaWFSdWxlLmlk
bAppbmRleCAwYTYwNjUxNGM3MmM0OWNlNTk3ODIyYzNlMjJmZmRhY2ZkNjZkNGIyLi40ZWRhODk3
OWQ1MTFlZjljMDk5MGQ5ZWQ0Njc1N2I0MjkwZmY4OGU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTTWVkaWFSdWxlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTTWVk
aWFSdWxlLmlkbApAQCAtMjIsNiArMjIsNiBAQCBpbnRlcmZhY2UgQ1NTTWVkaWFSdWxlIDogQ1NT
UnVsZSB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIE1lZGlhTGlzdCBtZWRpYTsKICAgICByZWFk
b25seSBhdHRyaWJ1dGUgQ1NTUnVsZUxpc3QgY3NzUnVsZXM7CiAKLSAgICBbUmFpc2VzRXhjZXB0
aW9uXSB1bnNpZ25lZCBsb25nIGluc2VydFJ1bGUob3B0aW9uYWwgRE9NU3RyaW5nIHJ1bGUgPSAi
dW5kZWZpbmVkIiwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCA9IDApOwotICAgIFtSYWlz
ZXNFeGNlcHRpb25dIHZvaWQgZGVsZXRlUnVsZShvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4
ID0gMCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB1bnNpZ25lZCBsb25nIGluc2Vy
dFJ1bGUob3B0aW9uYWwgRE9NU3RyaW5nIHJ1bGUgPSAidW5kZWZpbmVkIiwgb3B0aW9uYWwgdW5z
aWduZWQgbG9uZyBpbmRleCA9IDApOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9p
ZCBkZWxldGVSdWxlKG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgaW5kZXggPSAwKTsKIH07CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuaWRsIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlLmlkbAppbmRleCA1YTk0Njk0M2RlYTJkYmIx
MTFkNDQyYzRlMTA4ZDlkNzVlZmM0OTdkLi4yMzRiMDBmYzU0OTlhMTJhZmYzZWQyMDViZmJjOWE0
NDA0YmViMjgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFs
dWUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZS5pZGwKQEAg
LTU1LDEzICs1NSwxMyBAQAogICAgIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBz
aG9ydCBwcmltaXRpdmVUeXBlOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRGbG9h
dFZhbHVlKG9wdGlvbmFsIHVuc2lnbmVkIHNob3J0IHVuaXRUeXBlID0gMCwgb3B0aW9uYWwgdW5y
ZXN0cmljdGVkIGZsb2F0IGZsb2F0VmFsdWUgPSBOYU4pOwotICAgIFtSYWlzZXNFeGNlcHRpb25d
IHVucmVzdHJpY3RlZCBmbG9hdCBnZXRGbG9hdFZhbHVlKG9wdGlvbmFsIHVuc2lnbmVkIHNob3J0
IHVuaXRUeXBlID0gMCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNldEZs
b2F0VmFsdWUob3B0aW9uYWwgdW5zaWduZWQgc2hvcnQgdW5pdFR5cGUgPSAwLCBvcHRpb25hbCB1
bnJlc3RyaWN0ZWQgZmxvYXQgZmxvYXRWYWx1ZSA9IE5hTik7CisgICAgW01heVRocm93TGVnYWN5
RXhjZXB0aW9uXSB1bnJlc3RyaWN0ZWQgZmxvYXQgZ2V0RmxvYXRWYWx1ZShvcHRpb25hbCB1bnNp
Z25lZCBzaG9ydCB1bml0VHlwZSA9IDApOwogCiAgICAgLy8gRklYTUU6IFVzaW5nICJ1bmRlZmlu
ZWQiIGFzIGRlZmF1bHQgcGFyYW1ldGVyIHZhbHVlIGlzIHdyb25nLgotICAgIFtSYWlzZXNFeGNl
cHRpb25dIHZvaWQgc2V0U3RyaW5nVmFsdWUob3B0aW9uYWwgdW5zaWduZWQgc2hvcnQgc3RyaW5n
VHlwZSA9IDAsIG9wdGlvbmFsIERPTVN0cmluZyBzdHJpbmdWYWx1ZSA9ICJ1bmRlZmluZWQiKTsK
LSAgICBbUmFpc2VzRXhjZXB0aW9uXSBET01TdHJpbmcgZ2V0U3RyaW5nVmFsdWUoKTsKLSAgICBb
UmFpc2VzRXhjZXB0aW9uXSBDb3VudGVyIGdldENvdW50ZXJWYWx1ZSgpOwotICAgIFtSYWlzZXNF
eGNlcHRpb25dIFJlY3QgZ2V0UmVjdFZhbHVlKCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gUkdC
Q29sb3IgZ2V0UkdCQ29sb3JWYWx1ZSgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0g
dm9pZCBzZXRTdHJpbmdWYWx1ZShvcHRpb25hbCB1bnNpZ25lZCBzaG9ydCBzdHJpbmdUeXBlID0g
MCwgb3B0aW9uYWwgRE9NU3RyaW5nIHN0cmluZ1ZhbHVlID0gInVuZGVmaW5lZCIpOworICAgIFtN
YXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gRE9NU3RyaW5nIGdldFN0cmluZ1ZhbHVlKCk7CisgICAg
W01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBDb3VudGVyIGdldENvdW50ZXJWYWx1ZSgpOworICAg
IFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gUmVjdCBnZXRSZWN0VmFsdWUoKTsKKyAgICBbTWF5
VGhyb3dMZWdhY3lFeGNlcHRpb25dIFJHQkNvbG9yIGdldFJHQkNvbG9yVmFsdWUoKTsKIH07CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUnVsZS5pZGwgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTUnVsZS5pZGwKaW5kZXggYmI1NmYxYjdhOTQwYTk0ZThhMTM3YjNkNGY5YzdkYzU2
MzE3MTFiMi4uNTgyZWFmOTU2ZjNkM2JmMjBmMzM4YmM0YTZmMDg5OWNlYmVmMzZjMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1J1bGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NSdWxlLmlkbApAQCAtNDgsNyArNDgsNyBAQAogCiAgICAgcmVhZG9ubHkgYXR0cmli
dXRlIHVuc2lnbmVkIHNob3J0IHR5cGU7CiAKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBh
dHRyaWJ1dGUgRE9NU3RyaW5nPyBjc3NUZXh0OworICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4
Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZz8gY3NzVGV4dDsKIAogICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSBDU1NTdHlsZVNoZWV0PyBwYXJlbnRTdHlsZVNoZWV0OwogICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSBDU1NSdWxlPyBwYXJlbnRSdWxlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1N0eWxlRGVjbGFyYXRpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxl
RGVjbGFyYXRpb24uaWRsCmluZGV4IDA2YzUzMDQ2ZDU1YmQzYTZlYzViOGU3N2ExMzVjMjhkNTk2
MGY1ODguLjQ3ODkzYTI1NjgyYjk0YzU3Mjk3MWNmOGVlNzFlYmRiODEyMTZiOWUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZURlY2xhcmF0aW9uLmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVEZWNsYXJhdGlvbi5pZGwKQEAgLTI4LDE1ICsyOCwxNSBA
QAogICAgIEpTQ3VzdG9tTWFya0Z1bmN0aW9uLAogICAgIFNraXBWVGFibGVWYWxpZGF0aW9uLAog
XSBpbnRlcmZhY2UgQ1NTU3R5bGVEZWNsYXJhdGlvbiB7Ci0gICAgW1NldHRlclJhaXNlc0V4Y2Vw
dGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBjc3NUZXh0OworICAgIFtTZXR0ZXJNYXlUaHJvd0xl
Z2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBjc3NUZXh0OwogCiAgICAgRE9NU3Ry
aW5nIGdldFByb3BlcnR5VmFsdWUoRE9NU3RyaW5nIHByb3BlcnR5TmFtZSk7CiAgICAgW0N1c3Rv
bV0gQ1NTVmFsdWU/IGdldFByb3BlcnR5Q1NTVmFsdWUoRE9NU3RyaW5nIHByb3BlcnR5TmFtZSk7
CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBET01TdHJpbmcgcmVtb3ZlUHJvcGVydHkoRE9NU3Ry
aW5nIHByb3BlcnR5TmFtZSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBET01TdHJp
bmcgcmVtb3ZlUHJvcGVydHkoRE9NU3RyaW5nIHByb3BlcnR5TmFtZSk7CiAgICAgRE9NU3RyaW5n
PyBnZXRQcm9wZXJ0eVByaW9yaXR5KERPTVN0cmluZyBwcm9wZXJ0eU5hbWUpOwogCi0gICAgW1Jh
aXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRQcm9wZXJ0eShET01TdHJpbmcgcHJvcGVydHlOYW1lLCBb
VHJlYXROdWxsQXM9RW1wdHlTdHJpbmddIERPTVN0cmluZyB2YWx1ZSwgW1RyZWF0TnVsbEFzPUVt
cHR5U3RyaW5nXSBvcHRpb25hbCBET01TdHJpbmcgcHJpb3JpdHkgPSAiIik7CisgICAgW01heVRo
cm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNldFByb3BlcnR5KERPTVN0cmluZyBwcm9wZXJ0eU5h
bWUsIFtUcmVhdE51bGxBcz1FbXB0eVN0cmluZ10gRE9NU3RyaW5nIHZhbHVlLCBbVHJlYXROdWxs
QXM9RW1wdHlTdHJpbmddIG9wdGlvbmFsIERPTVN0cmluZyBwcmlvcml0eSA9ICIiKTsKIAogICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKICAgICBnZXR0ZXIgRE9N
U3RyaW5nIGl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTU3R5bGVTaGVldC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVT
aGVldC5pZGwKaW5kZXggODZkODcyM2Y0ZmUzZDkxYjE1OWJjMDI2M2VkNDEzNWY1YTY3YTk5My4u
OTUzOGY4NTY4NDMxOWYyNjNkODAzNjg4YWY0MzU5ZjY1ZjllZjc2NiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2hlZXQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NTdHlsZVNoZWV0LmlkbApAQCAtMjIsMTQgKzIyLDE0IEBAIGludGVyZmFjZSBDU1NTdHls
ZVNoZWV0IDogU3R5bGVTaGVldCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIENTU1J1bGUgb3du
ZXJSdWxlOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBDU1NSdWxlTGlzdCBjc3NSdWxlczsKIAot
ICAgIFtSYWlzZXNFeGNlcHRpb25dIHVuc2lnbmVkIGxvbmcgaW5zZXJ0UnVsZShET01TdHJpbmcg
cnVsZSwgdW5zaWduZWQgbG9uZyBpbmRleCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbiwgSW1wbGVt
ZW50ZWRBcz1kZXByZWNhdGVkSW5zZXJ0UnVsZV0gdW5zaWduZWQgbG9uZyBpbnNlcnRSdWxlKERP
TVN0cmluZyBydWxlKTsgLy8gRGVwcmVjYXRlZC4KKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRp
b25dIHVuc2lnbmVkIGxvbmcgaW5zZXJ0UnVsZShET01TdHJpbmcgcnVsZSwgdW5zaWduZWQgbG9u
ZyBpbmRleCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uLCBJbXBsZW1lbnRlZEFzPWRl
cHJlY2F0ZWRJbnNlcnRSdWxlXSB1bnNpZ25lZCBsb25nIGluc2VydFJ1bGUoRE9NU3RyaW5nIHJ1
bGUpOyAvLyBEZXByZWNhdGVkLgogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBkZWxldGVS
dWxlKHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0g
dm9pZCBkZWxldGVSdWxlKHVuc2lnbmVkIGxvbmcgaW5kZXgpOwogCiAgICAgcmVhZG9ubHkgYXR0
cmlidXRlIENTU1J1bGVMaXN0IHJ1bGVzOwogCiAgICAgLy8gRklYTUU6IFRob3NlIG9wZXJhdGlv
bnMgYXJlIFdlYktpdC1zcGVjaWZpYy4KLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBsb25nIGFkZFJ1
bGUob3B0aW9uYWwgRE9NU3RyaW5nIHNlbGVjdG9yID0gInVuZGVmaW5lZCIsIG9wdGlvbmFsIERP
TVN0cmluZyBzdHlsZSA9ICJ1bmRlZmluZWQiLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4
KTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHJlbW92ZVJ1bGUob3B0aW9uYWwgdW5zaWdu
ZWQgbG9uZyBpbmRleCA9IDApOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gbG9uZyBh
ZGRSdWxlKG9wdGlvbmFsIERPTVN0cmluZyBzZWxlY3RvciA9ICJ1bmRlZmluZWQiLCBvcHRpb25h
bCBET01TdHJpbmcgc3R5bGUgPSAidW5kZWZpbmVkIiwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBp
bmRleCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHJlbW92ZVJ1bGUob3B0
aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCA9IDApOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NTdXBwb3J0c1J1bGUuaWRsIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N1
cHBvcnRzUnVsZS5pZGwKaW5kZXggZWE4NTllZmVjNmJjZGExZjNjMWQxODE2MjM2OGU4NDY3MTMx
ZmZhYS4uYWQzNjRmNjM0YTAyZTY5YjZmOTFmMWQ1ZjU5MjQ3OGRmMDExOTJjOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N1cHBvcnRzUnVsZS5pZGwKKysrIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1N1cHBvcnRzUnVsZS5pZGwKQEAgLTMwLDcgKzMwLDcgQEAgaW50ZXJmYWNl
IENTU1N1cHBvcnRzUnVsZSA6IENTU1J1bGUgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBDU1NS
dWxlTGlzdCBjc3NSdWxlczsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGNvbmRp
dGlvblRleHQ7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB1bnNpZ25lZCBsb25nIGluc2VydFJ1
bGUoRE9NU3RyaW5nIHJ1bGUsIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwotICAgIFtSYWlzZXNFeGNl
cHRpb25dIHZvaWQgZGVsZXRlUnVsZSh1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBbTWF5VGhy
b3dMZWdhY3lFeGNlcHRpb25dIHVuc2lnbmVkIGxvbmcgaW5zZXJ0UnVsZShET01TdHJpbmcgcnVs
ZSwgdW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2
b2lkIGRlbGV0ZVJ1bGUodW5zaWduZWQgbG9uZyBpbmRleCk7CiB9OwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaWRsIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Zh
bHVlLmlkbAppbmRleCA4NDFkNTM4NjBkN2ZhZDFkZDkyZDJmOWFiMzZkZmQ5NzViOTMzYTI4Li42
MDliZmMwYzY2NTQ3MGQ5YTg1ZjBiYTliNjlhYmM4MTYzYWMwY2MwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NW
YWx1ZS5pZGwKQEAgLTMxLDcgKzMxLDcgQEAKICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBDU1Nf
VkFMVUVfTElTVCA9IDI7CiAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgQ1NTX0NVU1RPTSA9IDM7
CiAKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nPyBjc3NU
ZXh0OworICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0
cmluZz8gY3NzVGV4dDsKIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBzaG9ydCBj
c3NWYWx1ZVR5cGU7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNl
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5pZGwKaW5kZXggZDkxNmM2OTQ2NGIy
MTE1NGMyZTcwZThhMjkyZGNjNzE0N2Q1OGUxOC4uNzdmYTE0NzJkZDQyNzBlYWMzMWY2ODA2YjY2
M2M3OGE3NWY3NGUxZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2UuaWRsCkBAIC00MSwxNiArNDEsMTYg
QEAgZGljdGlvbmFyeSBGb250RmFjZURlc2NyaXB0b3JzIHsKIAogWwogICAgIENvbnN0cnVjdG9y
Q2FsbFdpdGg9RG9jdW1lbnQmU2NyaXB0U3RhdGUsCi0gICAgQ29uc3RydWN0b3JSYWlzZXNFeGNl
cHRpb24sCisgICAgQ29uc3RydWN0b3JNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbiwKICAgICBDb25z
dHJ1Y3RvcihET01TdHJpbmcgZmFtaWx5LCBhbnkgc291cmNlLCBvcHRpb25hbCBGb250RmFjZURl
c2NyaXB0b3JzIGRlc2NyaXB0b3JzKQogXSBpbnRlcmZhY2UgRm9udEZhY2UgewotICAgIFtTZXR0
ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmcgZmFtaWx5OwotICAgIFtTZXR0
ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmcgc3R5bGU7Ci0gICAgW1NldHRl
clJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyB3ZWlnaHQ7Ci0gICAgW1NldHRl
clJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBzdHJldGNoOwotICAgIFtTZXR0
ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmcgdW5pY29kZVJhbmdlOwotICAg
IFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmcgdmFyaWFudDsKLSAg
ICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGZlYXR1cmVTZXR0
aW5nczsKKyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01T
dHJpbmcgZmFtaWx5OworICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmli
dXRlIERPTVN0cmluZyBzdHlsZTsKKyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25d
IGF0dHJpYnV0ZSBET01TdHJpbmcgd2VpZ2h0OworICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4
Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBzdHJldGNoOworICAgIFtTZXR0ZXJNYXlUaHJv
d0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyB1bmljb2RlUmFuZ2U7CisgICAg
W1NldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHZhcmlh
bnQ7CisgICAgW1NldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3Ry
aW5nIGZlYXR1cmVTZXR0aW5nczsKIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBGb250RmFjZUxv
YWRTdGF0dXMgc3RhdHVzOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZh
Y2VTZXQuaWRsIGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlU2V0LmlkbAppbmRleCA4ZWRm
NjgxOGExZjFlMTI1MGYxMmJjNmQ3NmEwNDkwYWUwNmQ4YWU0Li5iNzZhMWExOWI4YmEyYzE5YWFi
MTA1MTBiZTI2ODRmNWNkMzI4MGVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9u
dEZhY2VTZXQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZVNldC5pZGwKQEAg
LTQ4LDcgKzQ4LDcgQEAgZW51bSBGb250RmFjZVNldExvYWRTdGF0dXMgewogICAgIGF0dHJpYnV0
ZSBFdmVudEhhbmRsZXIgb25sb2FkaW5nZXJyb3I7CiAKICAgICBQcm9taXNlIGxvYWQoRE9NU3Ry
aW5nIGZvbnQsIG9wdGlvbmFsIERPTVN0cmluZyB0ZXh0ID0gIiAiKTsKLSAgICBbUmFpc2VzRXhj
ZXB0aW9uXSBib29sZWFuIGNoZWNrKERPTVN0cmluZyBmb250LCBvcHRpb25hbCBET01TdHJpbmcg
dGV4dCA9ICIgIik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBib29sZWFuIGNoZWNr
KERPTVN0cmluZyBmb250LCBvcHRpb25hbCBET01TdHJpbmcgdGV4dCA9ICIgIik7CiAKICAgICBb
Q3VzdG9tR2V0dGVyLCBDYWNoZWRBdHRyaWJ1dGVdIHJlYWRvbmx5IGF0dHJpYnV0ZSBQcm9taXNl
IHJlYWR5OwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBGb250RmFjZVNldExvYWRTdGF0dXMgc3Rh
dHVzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL01lZGlhTGlzdC5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvTWVkaWFMaXN0LmlkbAppbmRleCBmZjg2NTcyMzI0Y2NkNWE5ZDEyY2U5
NWRiZDVjMjE0ZWI0ZmNjOTBmLi5iYWY1YzkzMzhhMWUyMDJkNGVkNjY1MjZlMmFmOTE5ODc4NzJh
MmFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvTWVkaWFMaXN0LmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvTWVkaWFMaXN0LmlkbApAQCAtMjksMTEgKzI5LDExIEBACiAgICAg
SW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKICAgICBKU0N1c3RvbUhlYWRlciwKIF0gaW50ZXJm
YWNlIE1lZGlhTGlzdCB7Ci0gICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbiwgVHJlYXROdWxsQXM9
RW1wdHlTdHJpbmddIGF0dHJpYnV0ZSBET01TdHJpbmcgbWVkaWFUZXh0OworICAgIFtTZXR0ZXJN
YXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbiwgVHJlYXROdWxsQXM9RW1wdHlTdHJpbmddIGF0dHJpYnV0
ZSBET01TdHJpbmcgbWVkaWFUZXh0OwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBs
b25nIGxlbmd0aDsKIAogICAgIGdldHRlciBET01TdHJpbmc/IGl0ZW0odW5zaWduZWQgbG9uZyBp
bmRleCk7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGRlbGV0ZU1lZGl1bShET01TdHJp
bmcgb2xkTWVkaXVtKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGFwcGVuZE1lZGl1bShE
T01TdHJpbmcgbmV3TWVkaXVtKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQg
ZGVsZXRlTWVkaXVtKERPTVN0cmluZyBvbGRNZWRpdW0pOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4
Y2VwdGlvbl0gdm9pZCBhcHBlbmRNZWRpdW0oRE9NU3RyaW5nIG5ld01lZGl1bSk7CiB9OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01hdHJpeC5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWF0cml4LmlkbAppbmRleCAwMzA3NDBiM2JkNzIzYzA2ZTU2
ZjM0NDRmZTcyN2ZhNTE1ZWJkOTkwLi5iN2YxMmIyY2M2M2Y0OTVkYzVjODdjZTJjOWUyYTBkNjUw
NWZlN2YzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWF0cml4Lmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWF0cml4LmlkbApAQCAtMjYsNyAr
MjYsNyBAQAogLy8gSW50cm9kdWNlZCBpbiBET00gTGV2ZWwgPzoKIFsKICAgICBDb25zdHJ1Y3Rv
cihvcHRpb25hbCBET01TdHJpbmcgY3NzVmFsdWUpLAotICAgIENvbnN0cnVjdG9yUmFpc2VzRXhj
ZXB0aW9uLAorICAgIENvbnN0cnVjdG9yTWF5VGhyb3dMZWdhY3lFeGNlcHRpb24sCiAgICAgSW1w
bGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKIF0gaW50ZXJmYWNlIFdlYktpdENTU01hdHJpeCB7CiAK
QEAgLTU3LDEzICs1NywxMyBAQAogICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91YmxlIG00
NDsKIAogICAgIC8vIEZJWE1FOiBVc2luZyAidW5kZWZpbmVkIiBhcyBkZWZhdWx0IHBhcmFtZXRl
ciB2YWx1ZSBpcyB3cm9uZy4KLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldE1hdHJpeFZh
bHVlKG9wdGlvbmFsIERPTVN0cmluZyBzdHJpbmcgPSAidW5kZWZpbmVkIik7CisgICAgW01heVRo
cm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNldE1hdHJpeFZhbHVlKG9wdGlvbmFsIERPTVN0cmlu
ZyBzdHJpbmcgPSAidW5kZWZpbmVkIik7CiAgICAgCiAgICAgLy8gTXVsdGlwbHkgdGhpcyBtYXRy
aXggYnkgc2Vjb25kTWF0cml4LCBvbiB0aGUgcmlnaHQgKHJlc3VsdCA9IHRoaXMgKiBzZWNvbmRN
YXRyaXgpCiAgICAgW0ltbXV0YWJsZV0gV2ViS2l0Q1NTTWF0cml4IG11bHRpcGx5KG9wdGlvbmFs
IFdlYktpdENTU01hdHJpeD8gc2Vjb25kTWF0cml4ID0gbnVsbCk7CiAgICAgCiAgICAgLy8gUmV0
dXJuIHRoZSBpbnZlcnNlIG9mIHRoaXMgbWF0cml4LiBUaHJvdyBhbiBleGNlcHRpb24gaWYgdGhl
IG1hdHJpeCBpcyBub3QgaW52ZXJ0aWJsZQotICAgIFtJbW11dGFibGUsIFJhaXNlc0V4Y2VwdGlv
bl0gV2ViS2l0Q1NTTWF0cml4IGludmVyc2UoKTsKKyAgICBbSW1tdXRhYmxlLCBNYXlUaHJvd0xl
Z2FjeUV4Y2VwdGlvbl0gV2ViS2l0Q1NTTWF0cml4IGludmVyc2UoKTsKICAgICAKICAgICAvLyBS
ZXR1cm4gdGhpcyBtYXRyaXggdHJhbnNsYXRlZCBieSB0aGUgcGFzc2VkIHZhbHVlcy4KICAgICAv
LyBQYXNzaW5nIGEgTmFOIHdpbGwgdXNlIGEgdmFsdWUgb2YgMC4gVGhpcyBhbGxvd3MgdGhlIDNE
IGZvcm0gdG8gdXNlZCBmb3IgMkQgb3BlcmF0aW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvZG9tL0NoYXJhY3RlckRhdGEuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0NoYXJhY3RlckRh
dGEuaWRsCmluZGV4IDM3OWM0YThiNTAwNjJkOGY4MGM3YzRkZThhMWYwZTY3NGYzZDQ1MjcuLjBi
MTM5OTBkMGVmNWY0Mzc1YTU1ZTBjNzg4ZjVkZGQ4ZjY5N2FiYWEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9DaGFyYWN0ZXJEYXRhLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
Q2hhcmFjdGVyRGF0YS5pZGwKQEAgLTIxLDEyICsyMSwxMiBAQCBpbnRlcmZhY2UgQ2hhcmFjdGVy
RGF0YSA6IE5vZGUgewogICAgIFtUcmVhdE51bGxBcz1FbXB0eVN0cmluZ10gYXR0cmlidXRlIERP
TVN0cmluZyBkYXRhOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0
aDsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIERPTVN0cmluZz8gc3Vic3RyaW5nRGF0YSh1bnNp
Z25lZCBsb25nIG9mZnNldCwgdW5zaWduZWQgbG9uZyBsZW5ndGgpOworICAgIFtNYXlUaHJvd0xl
Z2FjeUV4Y2VwdGlvbl0gRE9NU3RyaW5nPyBzdWJzdHJpbmdEYXRhKHVuc2lnbmVkIGxvbmcgb2Zm
c2V0LCB1bnNpZ25lZCBsb25nIGxlbmd0aCk7CiAKICAgICB2b2lkIGFwcGVuZERhdGEoRE9NU3Ry
aW5nIGRhdGEpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgaW5zZXJ0RGF0YSh1bnNpZ25l
ZCBsb25nIG9mZnNldCwgRE9NU3RyaW5nIGRhdGEpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZv
aWQgZGVsZXRlRGF0YSh1bnNpZ25lZCBsb25nIG9mZnNldCwgdW5zaWduZWQgbG9uZyBsZW5ndGgp
OwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgcmVwbGFjZURhdGEodW5zaWduZWQgbG9uZyBv
ZmZzZXQsIHVuc2lnbmVkIGxvbmcgbGVuZ3RoLCBET01TdHJpbmcgZGF0YSk7CisgICAgW01heVRo
cm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIGluc2VydERhdGEodW5zaWduZWQgbG9uZyBvZmZzZXQs
IERPTVN0cmluZyBkYXRhKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgZGVs
ZXRlRGF0YSh1bnNpZ25lZCBsb25nIG9mZnNldCwgdW5zaWduZWQgbG9uZyBsZW5ndGgpOworICAg
IFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCByZXBsYWNlRGF0YSh1bnNpZ25lZCBsb25n
IG9mZnNldCwgdW5zaWduZWQgbG9uZyBsZW5ndGgsIERPTVN0cmluZyBkYXRhKTsKIH07CiAKIENo
YXJhY3RlckRhdGEgaW1wbGVtZW50cyBDaGlsZE5vZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vQ2hpbGROb2RlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9DaGlsZE5vZGUuaWRs
CmluZGV4IDFmNGI3NzhmZjlmZTgxZWU5ZTQ5MjFmNmY5ZjI1OTkzMmQ3MTllNjIuLjA5N2Y0OWFk
YjRiNjM4N2I2MDRjNTkwYWVkOTZmNzZmOThiNGRhOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9DaGlsZE5vZGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9DaGlsZE5vZGUu
aWRsCkBAIC0yMiw4ICsyMiw4IEBACiBbCiAgICAgTm9JbnRlcmZhY2VPYmplY3QsCiBdIGludGVy
ZmFjZSBDaGlsZE5vZGUgewotICAgIFtVbnNjb3BhYmxlLCBSYWlzZXNFeGNlcHRpb24sIEN1c3Rv
bV0gdm9pZCBiZWZvcmUoKE5vZGUgb3IgRE9NU3RyaW5nKS4uLiBub2Rlcyk7Ci0gICAgW1Vuc2Nv
cGFibGUsIFJhaXNlc0V4Y2VwdGlvbiwgQ3VzdG9tXSB2b2lkIGFmdGVyKChOb2RlIG9yIERPTVN0
cmluZykuLi4gbm9kZXMpOwotICAgIFtVbnNjb3BhYmxlLCBSYWlzZXNFeGNlcHRpb24sIEN1c3Rv
bV0gdm9pZCByZXBsYWNlV2l0aCgoTm9kZSBvciBET01TdHJpbmcpLi4uIG5vZGVzKTsKLSAgICBb
VW5zY29wYWJsZSwgUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHJlbW92ZSgpOworICAgIFtVbnNjb3Bh
YmxlLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbiwgQ3VzdG9tXSB2b2lkIGJlZm9yZSgoTm9kZSBv
ciBET01TdHJpbmcpLi4uIG5vZGVzKTsKKyAgICBbVW5zY29wYWJsZSwgTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb24sIEN1c3RvbV0gdm9pZCBhZnRlcigoTm9kZSBvciBET01TdHJpbmcpLi4uIG5vZGVz
KTsKKyAgICBbVW5zY29wYWJsZSwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb24sIEN1c3RvbV0gdm9p
ZCByZXBsYWNlV2l0aCgoTm9kZSBvciBET01TdHJpbmcpLi4uIG5vZGVzKTsKKyAgICBbVW5zY29w
YWJsZSwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgcmVtb3ZlKCk7CiB9OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0N1c3RvbUVsZW1lbnRSZWdpc3RyeS5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5LmlkbAppbmRleCBiYTBjNzYzNDJm
ZDkyZDZmYTM5ODRkMTU4ZTk1NDZiOTQ4NzgzYWYxLi40ZTVmOTg4ZTBhNjY1NjBjNDllZGZiNDBj
ZmE3MTJiZmYyMjkxNWUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vQ3VzdG9tRWxl
bWVudFJlZ2lzdHJ5LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ3VzdG9tRWxlbWVudFJl
Z2lzdHJ5LmlkbApAQCAtMzIsNiArMzIsNiBAQAogCiAgICAgW0NFUmVhY3Rpb25zLCBDdXN0b21d
IHZvaWQgZGVmaW5lKERPTVN0cmluZyBuYW1lLCBGdW5jdGlvbiBjb25zdHJ1Y3Rvcik7CiAgICAg
YW55IGdldChET01TdHJpbmcgbmFtZSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbldpdGhNZXNzYWdl
LCBDdXN0b21dIFByb21pc2Ugd2hlbkRlZmluZWQoRE9NU3RyaW5nIG5hbWUpOworICAgIFtNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbldpdGhNZXNzYWdlLCBDdXN0b21dIFByb21pc2Ugd2hlbkRlZmlu
ZWQoRE9NU3RyaW5nIG5hbWUpOwogCiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9t
L0RhdGFUcmFuc2Zlckl0ZW1MaXN0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EYXRhVHJhbnNm
ZXJJdGVtTGlzdC5pZGwKaW5kZXggNjkzZjUzOWVhMjUxYzE4OGZmMTAzNGNkZDFkYTg1MDRkMWMw
MDZjMS4uZGQ1NDllNjdmNzVlOWUxNWQ5YWJjNzc2M2ViM2E1NzYyNGYxZGMwMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZG9tL0RhdGFUcmFuc2Zlckl0ZW1MaXN0LmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRGF0YVRyYW5zZmVySXRlbUxpc3QuaWRsCkBAIC00MSw2ICs0MSw2IEBA
CiAgICAgdm9pZCBhZGQoRmlsZT8gZmlsZSk7CiAKICAgICAvLyBGSVhNRTogVXNpbmcgInVuZGVm
aW5lZCIgYXMgZGVmYXVsdCBwYXJhbWV0ZXIgdmFsdWUgaXMgd3JvbmcuCi0gICAgW1JhaXNlc0V4
Y2VwdGlvbl0gdm9pZCBhZGQob3B0aW9uYWwgRE9NU3RyaW5nIGRhdGEgPSAidW5kZWZpbmVkIiwg
b3B0aW9uYWwgRE9NU3RyaW5nIHR5cGUgPSAidW5kZWZpbmVkIik7CisgICAgW01heVRocm93TGVn
YWN5RXhjZXB0aW9uXSB2b2lkIGFkZChvcHRpb25hbCBET01TdHJpbmcgZGF0YSA9ICJ1bmRlZmlu
ZWQiLCBvcHRpb25hbCBET01TdHJpbmcgdHlwZSA9ICJ1bmRlZmluZWQiKTsKIH07CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vRG9jdW1lbnQuaWRsCmluZGV4IDgzYWUwZGEyMWZkNTUyYzhmYjY1MTFhYzY1MzAxNzVjNGJi
NDY1MjcuLjNiMTgyZjA4Y2Y5ZWM1YzNmZmUyZTdmOWE1OTIwOGMyNDM5NDNmMzUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0RvY3VtZW50LmlkbApAQCAtMzEsMzUgKzMxLDM1IEBACiAgICAgcmVhZG9ubHkgYXR0cmli
dXRlIERPTUltcGxlbWVudGF0aW9uIGltcGxlbWVudGF0aW9uOwogICAgIHJlYWRvbmx5IGF0dHJp
YnV0ZSBFbGVtZW50PyBkb2N1bWVudEVsZW1lbnQ7CiAKLSAgICBbTmV3T2JqZWN0LCBSYWlzZXNF
eGNlcHRpb24sIEltcGxlbWVudGVkQXM9Y3JlYXRlRWxlbWVudEZvckJpbmRpbmdzXSBFbGVtZW50
IGNyZWF0ZUVsZW1lbnQoRE9NU3RyaW5nIHRhZ05hbWUpOworICAgIFtOZXdPYmplY3QsIE1heVRo
cm93TGVnYWN5RXhjZXB0aW9uLCBJbXBsZW1lbnRlZEFzPWNyZWF0ZUVsZW1lbnRGb3JCaW5kaW5n
c10gRWxlbWVudCBjcmVhdGVFbGVtZW50KERPTVN0cmluZyB0YWdOYW1lKTsKICAgICBbTmV3T2Jq
ZWN0XSBEb2N1bWVudEZyYWdtZW50ICAgY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpOwogCiAgICAg
W05ld09iamVjdF0gVGV4dCBjcmVhdGVUZXh0Tm9kZShET01TdHJpbmcgZGF0YSk7CiAgICAgW05l
d09iamVjdF0gQ29tbWVudCBjcmVhdGVDb21tZW50KERPTVN0cmluZyBkYXRhKTsKLSAgICBbTmV3
T2JqZWN0LCBSYWlzZXNFeGNlcHRpb25dIENEQVRBU2VjdGlvbiBjcmVhdGVDREFUQVNlY3Rpb24o
RE9NU3RyaW5nIGRhdGEpOwotICAgIFtOZXdPYmplY3QsIFJhaXNlc0V4Y2VwdGlvbl0gUHJvY2Vz
c2luZ0luc3RydWN0aW9uIGNyZWF0ZVByb2Nlc3NpbmdJbnN0cnVjdGlvbihET01TdHJpbmcgdGFy
Z2V0LCBET01TdHJpbmcgZGF0YSk7Ci0gICAgW05ld09iamVjdCwgUmFpc2VzRXhjZXB0aW9uXSBB
dHRyIGNyZWF0ZUF0dHJpYnV0ZShET01TdHJpbmcgbmFtZSk7CisgICAgW05ld09iamVjdCwgTWF5
VGhyb3dMZWdhY3lFeGNlcHRpb25dIENEQVRBU2VjdGlvbiBjcmVhdGVDREFUQVNlY3Rpb24oRE9N
U3RyaW5nIGRhdGEpOworICAgIFtOZXdPYmplY3QsIE1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBQ
cm9jZXNzaW5nSW5zdHJ1Y3Rpb24gY3JlYXRlUHJvY2Vzc2luZ0luc3RydWN0aW9uKERPTVN0cmlu
ZyB0YXJnZXQsIERPTVN0cmluZyBkYXRhKTsKKyAgICBbTmV3T2JqZWN0LCBNYXlUaHJvd0xlZ2Fj
eUV4Y2VwdGlvbl0gQXR0ciBjcmVhdGVBdHRyaWJ1dGUoRE9NU3RyaW5nIG5hbWUpOwogCiAgICAg
SFRNTENvbGxlY3Rpb24gZ2V0RWxlbWVudHNCeVRhZ05hbWUoRE9NU3RyaW5nIHRhZ25hbWUpOwog
Ci0gICAgW05ld09iamVjdCwgUmFpc2VzRXhjZXB0aW9uXSBOb2RlIGltcG9ydE5vZGUoTm9kZSBp
bXBvcnRlZE5vZGUsIG9wdGlvbmFsIGJvb2xlYW4gZGVlcCA9IGZhbHNlKTsKKyAgICBbTmV3T2Jq
ZWN0LCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gTm9kZSBpbXBvcnROb2RlKE5vZGUgaW1wb3J0
ZWROb2RlLCBvcHRpb25hbCBib29sZWFuIGRlZXAgPSBmYWxzZSk7CiAKLSAgICBbTmV3T2JqZWN0
LCBSYWlzZXNFeGNlcHRpb25dIEVsZW1lbnQgY3JlYXRlRWxlbWVudE5TKERPTVN0cmluZz8gbmFt
ZXNwYWNlVVJJLCBET01TdHJpbmcgcXVhbGlmaWVkTmFtZSk7Ci0gICAgW05ld09iamVjdCwgUmFp
c2VzRXhjZXB0aW9uXSBBdHRyIGNyZWF0ZUF0dHJpYnV0ZU5TKERPTVN0cmluZz8gbmFtZXNwYWNl
VVJJLCBET01TdHJpbmcgcXVhbGlmaWVkTmFtZSk7CisgICAgW05ld09iamVjdCwgTWF5VGhyb3dM
ZWdhY3lFeGNlcHRpb25dIEVsZW1lbnQgY3JlYXRlRWxlbWVudE5TKERPTVN0cmluZz8gbmFtZXNw
YWNlVVJJLCBET01TdHJpbmcgcXVhbGlmaWVkTmFtZSk7CisgICAgW05ld09iamVjdCwgTWF5VGhy
b3dMZWdhY3lFeGNlcHRpb25dIEF0dHIgY3JlYXRlQXR0cmlidXRlTlMoRE9NU3RyaW5nPyBuYW1l
c3BhY2VVUkksIERPTVN0cmluZyBxdWFsaWZpZWROYW1lKTsKIAogICAgIEhUTUxDb2xsZWN0aW9u
IGdldEVsZW1lbnRzQnlUYWdOYW1lTlMoRE9NU3RyaW5nPyBuYW1lc3BhY2VVUkksIERPTVN0cmlu
ZyBsb2NhbE5hbWUpOwogCiAgICAgW0ltcGxlbWVudGVkQXM9Y2hhcmFjdGVyU2V0V2l0aFVURjhG
YWxsYmFja10gcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBpbnB1dEVuY29kaW5nOwogCiAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZz8geG1sRW5jb2Rpbmc7Ci0gICAgW1NldHRl
clJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZz8geG1sVmVyc2lvbjsKKyAgICBb
U2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmc/IHhtbFZl
cnNpb247CiAgICAgYXR0cmlidXRlIGJvb2xlYW4geG1sU3RhbmRhbG9uZTsKIAotICAgIFtSYWlz
ZXNFeGNlcHRpb25dIE5vZGUgYWRvcHROb2RlKE5vZGUgc291cmNlKTsKKyAgICBbTWF5VGhyb3dM
ZWdhY3lFeGNlcHRpb25dIE5vZGUgYWRvcHROb2RlKE5vZGUgc291cmNlKTsKIAogICAgIFtJbXBs
ZW1lbnRlZEFzPXVybEZvckJpbmRpbmdzXSByZWFkb25seSBhdHRyaWJ1dGUgVVNWU3RyaW5nIGRv
Y3VtZW50VVJJOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbiwgTmV3T2JqZWN0XSBFdmVudCBjcmVh
dGVFdmVudChET01TdHJpbmcgZXZlbnRUeXBlKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRp
b24sIE5ld09iamVjdF0gRXZlbnQgY3JlYXRlRXZlbnQoRE9NU3RyaW5nIGV2ZW50VHlwZSk7CiAK
ICAgICBbTmV3T2JqZWN0XSBSYW5nZSBjcmVhdGVSYW5nZSgpOwogCkBAIC04MCwxMSArODAsMTEg
QEAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGNvbnRlbnRUeXBlOwogCiAgICAg
Ly8gRklYTUU6IFVzaW5nICJ1bmRlZmluZWQiIGFzIGRlZmF1bHQgcGFyYW1ldGVyIHZhbHVlIGlz
IHdyb25nLgotICAgIFtSYWlzZXNFeGNlcHRpb25dIFhQYXRoRXhwcmVzc2lvbiBjcmVhdGVFeHBy
ZXNzaW9uKG9wdGlvbmFsIERPTVN0cmluZyBleHByZXNzaW9uID0gInVuZGVmaW5lZCIsIG9wdGlv
bmFsIFhQYXRoTlNSZXNvbHZlcj8gcmVzb2x2ZXIpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gWFBhdGhFeHByZXNzaW9uIGNyZWF0ZUV4cHJlc3Npb24ob3B0aW9uYWwgRE9NU3RyaW5n
IGV4cHJlc3Npb24gPSAidW5kZWZpbmVkIiwgb3B0aW9uYWwgWFBhdGhOU1Jlc29sdmVyPyByZXNv
bHZlcik7CiAgICAgWFBhdGhOU1Jlc29sdmVyIGNyZWF0ZU5TUmVzb2x2ZXIoTm9kZT8gbm9kZVJl
c29sdmVyKTsKIAogICAgIC8vIEZJWE1FOiBVc2luZyAidW5kZWZpbmVkIiBhcyBkZWZhdWx0IHBh
cmFtZXRlciB2YWx1ZSBpcyB3cm9uZy4KLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBYUGF0aFJlc3Vs
dCBldmFsdWF0ZShvcHRpb25hbCBET01TdHJpbmcgZXhwcmVzc2lvbiA9ICJ1bmRlZmluZWQiLCBv
cHRpb25hbCBOb2RlPyBjb250ZXh0Tm9kZSwgb3B0aW9uYWwgWFBhdGhOU1Jlc29sdmVyPyByZXNv
bHZlciwKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIFhQYXRoUmVzdWx0IGV2YWx1YXRl
KG9wdGlvbmFsIERPTVN0cmluZyBleHByZXNzaW9uID0gInVuZGVmaW5lZCIsIG9wdGlvbmFsIE5v
ZGU/IGNvbnRleHROb2RlLCBvcHRpb25hbCBYUGF0aE5TUmVzb2x2ZXI/IHJlc29sdmVyLAogICAg
ICAgICBvcHRpb25hbCB1bnNpZ25lZCBzaG9ydCB0eXBlID0gMCwgb3B0aW9uYWwgWFBhdGhSZXN1
bHQ/IGluUmVzdWx0KTsKIAogICAgIC8vIEZJWE1FOiBUaGUgZGVmYXVsdCB2YWx1ZSBmb3IgdGhl
IGxhc3QgcGFyYW1ldGVyIHNob3VsZCBiZSB0aGUgZW1wdHkgc3RyaW5nLgpAQCAtMTAxLDEyICsx
MDEsMTIgQEAKICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nIGRlc2lnbk1vZGU7CiAKICAgICByZWFk
b25seSBhdHRyaWJ1dGUgVVNWU3RyaW5nIHJlZmVycmVyOwotICAgIFtTZXR0ZXJSYWlzZXNFeGNl
cHRpb25dIGF0dHJpYnV0ZSBVU1ZTdHJpbmcgZG9tYWluOworICAgIFtTZXR0ZXJNYXlUaHJvd0xl
Z2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIFVTVlN0cmluZyBkb21haW47CiAgICAgW0ltcGxlbWVu
dGVkQXM9dXJsRm9yQmluZGluZ3NdIHJlYWRvbmx5IGF0dHJpYnV0ZSBVU1ZTdHJpbmcgVVJMOwog
Ci0gICAgW0dldHRlclJhaXNlc0V4Y2VwdGlvbiwgU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRy
aWJ1dGUgVVNWU3RyaW5nIGNvb2tpZTsKKyAgICBbR2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRp
b24sIFNldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgVVNWU3RyaW5nIGNv
b2tpZTsKIAotICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb24sIEltcGxlbWVudGVkQXM9Ym9keU9y
RnJhbWVzZXRdIGF0dHJpYnV0ZSBIVE1MRWxlbWVudD8gYm9keTsKKyAgICBbU2V0dGVyTWF5VGhy
b3dMZWdhY3lFeGNlcHRpb24sIEltcGxlbWVudGVkQXM9Ym9keU9yRnJhbWVzZXRdIGF0dHJpYnV0
ZSBIVE1MRWxlbWVudD8gYm9keTsKIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBIVE1MSGVhZEVs
ZW1lbnQ/IGhlYWQ7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEhUTUxDb2xsZWN0aW9uIGltYWdl
czsKQEAgLTE2OSw3ICsxNjksNyBAQAogI2lmIGRlZmluZWQoRU5BQkxFX0lPU19UT1VDSF9FVkVO
VFMpICYmIEVOQUJMRV9JT1NfVE9VQ0hfRVZFTlRTCiAjaW5jbHVkZSA8V2ViS2l0QWRkaXRpb25z
L0RvY3VtZW50SU9TLmlkbD4KICNlbGlmIGRlZmluZWQoRU5BQkxFX1RPVUNIX0VWRU5UUykgJiYg
RU5BQkxFX1RPVUNIX0VWRU5UUwotICAgIFtOZXdPYmplY3QsIFJhaXNlc0V4Y2VwdGlvbl0gVG91
Y2ggY3JlYXRlVG91Y2gob3B0aW9uYWwgRE9NV2luZG93PyB3aW5kb3cgPSBudWxsLCBvcHRpb25h
bCBFdmVudFRhcmdldD8gdGFyZ2V0ID0gbnVsbCwKKyAgICBbTmV3T2JqZWN0LCBNYXlUaHJvd0xl
Z2FjeUV4Y2VwdGlvbl0gVG91Y2ggY3JlYXRlVG91Y2gob3B0aW9uYWwgRE9NV2luZG93PyB3aW5k
b3cgPSBudWxsLCBvcHRpb25hbCBFdmVudFRhcmdldD8gdGFyZ2V0ID0gbnVsbCwKICAgICAgICAg
b3B0aW9uYWwgbG9uZyBpZGVudGlmaWVyID0gMCwKICAgICAgICAgb3B0aW9uYWwgbG9uZyBwYWdl
WCA9IDAsIG9wdGlvbmFsIGxvbmcgcGFnZVkgPSAwLCBvcHRpb25hbCBsb25nIHNjcmVlblggPSAw
LCBvcHRpb25hbCBsb25nIHNjcmVlblkgPSAwLAogICAgICAgICBvcHRpb25hbCBsb25nIHdlYmtp
dFJhZGl1c1ggPSAwLCBvcHRpb25hbCBsb25nIHdlYmtpdFJhZGl1c1kgPSAwLApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0Vs
ZW1lbnQuaWRsCmluZGV4IGQ4YTVjNWQ5NmUyMjc1ZjRlZDMxZmM2Mzk3NGQyNmM3OGI0OTRlZTMu
LmQ5ZGU2NzA3NmVjNGIyMTdhZmVlODg0YmQ3MWE3MjRjMTdjODIzNjEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxl
bWVudC5pZGwKQEAgLTI4LDEzICsyOCwxMyBAQAogCiAgICAgRE9NU3RyaW5nPyBnZXRBdHRyaWJ1
dGUoRE9NU3RyaW5nIG5hbWUpOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbiwgQ0VSZWFjdGlvbnNd
IHZvaWQgc2V0QXR0cmlidXRlKERPTVN0cmluZyBuYW1lLCBET01TdHJpbmcgdmFsdWUpOworICAg
IFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbiwgQ0VSZWFjdGlvbnNdIHZvaWQgc2V0QXR0cmlidXRl
KERPTVN0cmluZyBuYW1lLCBET01TdHJpbmcgdmFsdWUpOwogCiAgICAgW0NFUmVhY3Rpb25zXSB2
b2lkIHJlbW92ZUF0dHJpYnV0ZShET01TdHJpbmcgbmFtZSk7CiAgICAgQXR0cj8gZ2V0QXR0cmli
dXRlTm9kZShET01TdHJpbmcgbmFtZSk7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uLCBDRVJlYWN0
aW9uc10gQXR0cj8gc2V0QXR0cmlidXRlTm9kZShBdHRyIG5ld0F0dHIpOwotICAgIFtSYWlzZXNF
eGNlcHRpb24sIENFUmVhY3Rpb25zXSBBdHRyIHJlbW92ZUF0dHJpYnV0ZU5vZGUoQXR0ciBvbGRB
dHRyKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb24sIENFUmVhY3Rpb25zXSBBdHRyPyBz
ZXRBdHRyaWJ1dGVOb2RlKEF0dHIgbmV3QXR0cik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0
aW9uLCBDRVJlYWN0aW9uc10gQXR0ciByZW1vdmVBdHRyaWJ1dGVOb2RlKEF0dHIgb2xkQXR0cik7
CiAKICAgICBIVE1MQ29sbGVjdGlvbiBnZXRFbGVtZW50c0J5VGFnTmFtZShET01TdHJpbmcgbmFt
ZSk7CiAKQEAgLTQzLDEzICs0MywxMyBAQAogCiAgICAgRE9NU3RyaW5nPyBnZXRBdHRyaWJ1dGVO
UyhET01TdHJpbmc/IG5hbWVzcGFjZVVSSSwgRE9NU3RyaW5nIGxvY2FsTmFtZSk7CiAKLSAgICBb
UmFpc2VzRXhjZXB0aW9uLCBDRVJlYWN0aW9uc10gdm9pZCBzZXRBdHRyaWJ1dGVOUyhET01TdHJp
bmc/IG5hbWVzcGFjZVVSSSwgRE9NU3RyaW5nIHF1YWxpZmllZE5hbWUsIERPTVN0cmluZyB2YWx1
ZSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uLCBDRVJlYWN0aW9uc10gdm9pZCBzZXRB
dHRyaWJ1dGVOUyhET01TdHJpbmc/IG5hbWVzcGFjZVVSSSwgRE9NU3RyaW5nIHF1YWxpZmllZE5h
bWUsIERPTVN0cmluZyB2YWx1ZSk7CiAgICAgW0NFUmVhY3Rpb25zXSB2b2lkIHJlbW92ZUF0dHJp
YnV0ZU5TKERPTVN0cmluZz8gbmFtZXNwYWNlVVJJLCBET01TdHJpbmcgbG9jYWxOYW1lKTsKIAog
ICAgIEhUTUxDb2xsZWN0aW9uIGdldEVsZW1lbnRzQnlUYWdOYW1lTlMoRE9NU3RyaW5nPyBuYW1l
c3BhY2VVUkksIERPTVN0cmluZyBsb2NhbE5hbWUpOwogCiAgICAgQXR0cj8gZ2V0QXR0cmlidXRl
Tm9kZU5TKERPTVN0cmluZz8gbmFtZXNwYWNlVVJJLCBET01TdHJpbmcgbG9jYWxOYW1lKTsKLSAg
ICBbUmFpc2VzRXhjZXB0aW9uLCBDRVJlYWN0aW9uc10gQXR0cj8gc2V0QXR0cmlidXRlTm9kZU5T
KEF0dHIgbmV3QXR0cik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uLCBDRVJlYWN0aW9u
c10gQXR0cj8gc2V0QXR0cmlidXRlTm9kZU5TKEF0dHIgbmV3QXR0cik7CiAgICAgYm9vbGVhbiBo
YXNBdHRyaWJ1dGUoRE9NU3RyaW5nIG5hbWUpOwogCiAgICAgYm9vbGVhbiBoYXNBdHRyaWJ1dGVO
UyhET01TdHJpbmc/IG5hbWVzcGFjZVVSSSwgRE9NU3RyaW5nIGxvY2FsTmFtZSk7CkBAIC05Nywx
NSArOTcsMTUgQEAKICAgICBzZXF1ZW5jZTxET01TdHJpbmc+IGdldEF0dHJpYnV0ZU5hbWVzKCk7
CiAKICAgICBIVE1MQ29sbGVjdGlvbiBnZXRFbGVtZW50c0J5Q2xhc3NOYW1lKERPTVN0cmluZyBu
YW1lKTsKLSAgICBbVHJlYXROdWxsQXM9RW1wdHlTdHJpbmcsIFNldHRlclJhaXNlc0V4Y2VwdGlv
bl0gYXR0cmlidXRlIERPTVN0cmluZyBpbm5lckhUTUw7Ci0gICAgW1RyZWF0TnVsbEFzPUVtcHR5
U3RyaW5nLCBTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmcgb3V0ZXJI
VE1MOworICAgIFtUcmVhdE51bGxBcz1FbXB0eVN0cmluZywgU2V0dGVyTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmcgaW5uZXJIVE1MOworICAgIFtUcmVhdE51bGxB
cz1FbXB0eVN0cmluZywgU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSBE
T01TdHJpbmcgb3V0ZXJIVE1MOwogCiAgICAgW1JlZmxlY3Q9Y2xhc3NdIGF0dHJpYnV0ZSBET01T
dHJpbmcgY2xhc3NOYW1lOwogICAgIFtQdXRGb3J3YXJkcz12YWx1ZV0gcmVhZG9ubHkgYXR0cmli
dXRlIERPTVRva2VuTGlzdCBjbGFzc0xpc3Q7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBib29s
ZWFuIG1hdGNoZXMoRE9NU3RyaW5nIHNlbGVjdG9ycyk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0g
RWxlbWVudCBjbG9zZXN0KERPTVN0cmluZyBzZWxlY3RvcnMpOyAgICAKLSAgICBbSW1wbGVtZW50
ZWRBcz1tYXRjaGVzLCBSYWlzZXNFeGNlcHRpb25dIGJvb2xlYW4gd2Via2l0TWF0Y2hlc1NlbGVj
dG9yKERPTVN0cmluZyBzZWxlY3RvcnMpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0g
Ym9vbGVhbiBtYXRjaGVzKERPTVN0cmluZyBzZWxlY3RvcnMpOworICAgIFtNYXlUaHJvd0xlZ2Fj
eUV4Y2VwdGlvbl0gRWxlbWVudCBjbG9zZXN0KERPTVN0cmluZyBzZWxlY3RvcnMpOyAgICAKKyAg
ICBbSW1wbGVtZW50ZWRBcz1tYXRjaGVzLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYm9vbGVh
biB3ZWJraXRNYXRjaGVzU2VsZWN0b3IoRE9NU3RyaW5nIHNlbGVjdG9ycyk7CiAKICAgICAvLyBD
U1NPTSBWaWV3IE1vZHVsZSBBUEkKICAgICBDbGllbnRSZWN0TGlzdCBnZXRDbGllbnRSZWN0cygp
OwpAQCAtMTI0LDkgKzEyNCw5IEBACiAgICAgW1JlZmxlY3RdIGF0dHJpYnV0ZSBET01TdHJpbmcg
dWlhY3Rpb25zOwogI2VuZGlmCiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBFbGVtZW50IGluc2Vy
dEFkamFjZW50RWxlbWVudChET01TdHJpbmcgd2hlcmUsIEVsZW1lbnQgZWxlbWVudCk7Ci0gICAg
W1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBpbnNlcnRBZGphY2VudEhUTUwoRE9NU3RyaW5nIHdoZXJl
LCBET01TdHJpbmcgaHRtbCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBpbnNlcnRBZGph
Y2VudFRleHQoRE9NU3RyaW5nIHdoZXJlLCBET01TdHJpbmcgdGV4dCk7CisgICAgW01heVRocm93
TGVnYWN5RXhjZXB0aW9uXSBFbGVtZW50IGluc2VydEFkamFjZW50RWxlbWVudChET01TdHJpbmcg
d2hlcmUsIEVsZW1lbnQgZWxlbWVudCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2
b2lkIGluc2VydEFkamFjZW50SFRNTChET01TdHJpbmcgd2hlcmUsIERPTVN0cmluZyBodG1sKTsK
KyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgaW5zZXJ0QWRqYWNlbnRUZXh0KERP
TVN0cmluZyB3aGVyZSwgRE9NU3RyaW5nIHRleHQpOwogCiAgICAgW0NvbmRpdGlvbmFsPVBPSU5U
RVJfTE9DS10gdm9pZCByZXF1ZXN0UG9pbnRlckxvY2soKTsKIApAQCAtMTM1LDcgKzEzNSw3IEBA
CiAgICAgW0NvbmRpdGlvbmFsPUNTU19SRUdJT05TXSBzZXF1ZW5jZTxSYW5nZT4gd2Via2l0R2V0
UmVnaW9uRmxvd1JhbmdlcygpOwogCiAgICAgLy8gU2hhZG93IERPTSBBUEkKLSAgICBbRW5hYmxl
ZEF0UnVudGltZT1TaGFkb3dET00sIFJhaXNlc0V4Y2VwdGlvbl0gU2hhZG93Um9vdCBhdHRhY2hT
aGFkb3coU2hhZG93Um9vdEluaXQgaW5pdCk7CisgICAgW0VuYWJsZWRBdFJ1bnRpbWU9U2hhZG93
RE9NLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gU2hhZG93Um9vdCBhdHRhY2hTaGFkb3coU2hh
ZG93Um9vdEluaXQgaW5pdCk7CiAgICAgW0VuYWJsZWRBdFJ1bnRpbWU9U2hhZG93RE9NLCBJbXBs
ZW1lbnRlZEFzPXNoYWRvd1Jvb3RGb3JCaW5kaW5ncywgQ2FsbFdpdGg9U2NyaXB0U3RhdGVdIHJl
YWRvbmx5IGF0dHJpYnV0ZSBTaGFkb3dSb290IHNoYWRvd1Jvb3Q7CiAgICAgW0VuYWJsZWRBdFJ1
bnRpbWU9U2hhZG93RE9NLCBSZWZsZWN0XSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHNsb3Q7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldC5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRXZlbnRUYXJnZXQuaWRsCmluZGV4IDMzNmE0MmUyZDI0MTQwZGIwYzcyODAxMGQx
MDQ5MDRkNjExNDFmNGYuLjBlNDFjZGJlZTIxYmU0NzZkODE3NjU4ZTQwMDc3NzZmMGUwNGYwY2Mg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFRhcmdldC5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0LmlkbApAQCAtMzUsNyArMzUsNyBAQAogICAgIFtJ
bXBsZW1lbnRlZEFzPWFkZEV2ZW50TGlzdGVuZXJGb3JCaW5kaW5nc10gdm9pZCBhZGRFdmVudExp
c3RlbmVyKFtBdG9taWNTdHJpbmddIERPTVN0cmluZyB0eXBlLCBFdmVudExpc3RlbmVyPyBsaXN0
ZW5lciwgYm9vbGVhbiB1c2VDYXB0dXJlKTsKICAgICBbSW1wbGVtZW50ZWRBcz1yZW1vdmVFdmVu
dExpc3RlbmVyRm9yQmluZGluZ3NdIHZvaWQgcmVtb3ZlRXZlbnRMaXN0ZW5lcihbQXRvbWljU3Ry
aW5nXSBET01TdHJpbmcgdHlwZSwgRXZlbnRMaXN0ZW5lcj8gbGlzdGVuZXIsIGJvb2xlYW4gdXNl
Q2FwdHVyZSk7CiAKLSAgICBbSW1wbGVtZW50ZWRBcz1kaXNwYXRjaEV2ZW50Rm9yQmluZGluZ3Ms
IFJhaXNlc0V4Y2VwdGlvbl0gYm9vbGVhbiBkaXNwYXRjaEV2ZW50KEV2ZW50IGV2ZW50KTsKKyAg
ICBbSW1wbGVtZW50ZWRBcz1kaXNwYXRjaEV2ZW50Rm9yQmluZGluZ3MsIE1heVRocm93TGVnYWN5
RXhjZXB0aW9uXSBib29sZWFuIGRpc3BhdGNoRXZlbnQoRXZlbnQgZXZlbnQpOwogfTsKIAogZGlj
dGlvbmFyeSBFdmVudExpc3RlbmVyT3B0aW9ucyB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vTWVzc2FnZVBvcnQuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL01lc3NhZ2VQb3J0Lmlk
bAppbmRleCBiNTcyZDk0ZWM2ZjU4M2NhMmMzZmY2MzQwNWVjMzYwODg2OWE3ZDc5Li5jYTQ3YTMz
NjQzNjNlYzRlZjA1NmMxNzdkOGI4NjVlMDljNGZlZWQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vTWVzc2FnZVBvcnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdl
UG9ydC5pZGwKQEAgLTMxLDcgKzMxLDcgQEAKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGws
CiAgICAgSlNDdXN0b21NYXJrRnVuY3Rpb24sCiBdIGludGVyZmFjZSBNZXNzYWdlUG9ydCA6IEV2
ZW50VGFyZ2V0IHsKLSAgICBbQ3VzdG9tLCBSYWlzZXNFeGNlcHRpb25dIHZvaWQgcG9zdE1lc3Nh
Z2UoYW55IG1lc3NhZ2UsIG9wdGlvbmFsIEFycmF5IG1lc3NhZ2VQb3J0cyk7CisgICAgW0N1c3Rv
bSwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgcG9zdE1lc3NhZ2UoYW55IG1lc3NhZ2Us
IG9wdGlvbmFsIEFycmF5IG1lc3NhZ2VQb3J0cyk7CiAKICAgICB2b2lkIHN0YXJ0KCk7CiAgICAg
dm9pZCBjbG9zZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL011dGF0aW9uT2Jz
ZXJ2ZXIuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL011dGF0aW9uT2JzZXJ2ZXIuaWRsCmluZGV4
IDkzMzZjMGI5NjZmM2ViNzBiM2I5YTk5OTk0YWI0OTNiY2Q1YjI3ZmQuLjk5YzRiOWIwZDdiOTNj
ZDFjZTBiY2FkNjg4NTIxY2UzN2NjYTNhMzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9NdXRhdGlvbk9ic2VydmVyLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTXV0YXRpb25P
YnNlcnZlci5pZGwKQEAgLTMzLDcgKzMzLDcgQEAKICAgICBDdXN0b21Jc1JlYWNoYWJsZSwKICAg
ICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLAogXSBpbnRlcmZhY2UgTXV0YXRpb25PYnNlcnZl
ciB7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBvYnNlcnZlKE5vZGUgdGFyZ2V0LCBvcHRp
b25hbCBNdXRhdGlvbk9ic2VydmVySW5pdCBvcHRpb25zKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb25dIHZvaWQgb2JzZXJ2ZShOb2RlIHRhcmdldCwgb3B0aW9uYWwgTXV0YXRpb25PYnNl
cnZlckluaXQgb3B0aW9ucyk7CiAgICAgc2VxdWVuY2U8TXV0YXRpb25SZWNvcmQ+IHRha2VSZWNv
cmRzKCk7CiAgICAgdm9pZCBkaXNjb25uZWN0KCk7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvZG9tL05hbWVkTm9kZU1hcC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTmFtZWROb2Rl
TWFwLmlkbAppbmRleCBjNjcyNjczNTI0OWI5NjJlZDM4OTBhMTJkNWEyYWM5M2FlMTljNDI2Li5m
NmU4YTRhYzNjYmE5ZDZlOTc4MmVlN2VmNTAxYzBiZDlhMTExZTA2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vTmFtZWROb2RlTWFwLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
TmFtZWROb2RlTWFwLmlkbApAQCAtMjYsMTAgKzI2LDEwIEBACiAgICAgcmVhZG9ubHkgYXR0cmli
dXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwogCiAgICAgZ2V0dGVyIEF0dHI/IGdldE5hbWVkSXRl
bShET01TdHJpbmcgbmFtZSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gQXR0cj8gc2V0TmFtZWRJ
dGVtKEF0dHIgYXR0cik7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gQXR0ciByZW1vdmVOYW1lZEl0
ZW0oRE9NU3RyaW5nIG5hbWUpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gQXR0cj8g
c2V0TmFtZWRJdGVtKEF0dHIgYXR0cik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBB
dHRyIHJlbW92ZU5hbWVkSXRlbShET01TdHJpbmcgbmFtZSk7CiAgICAgZ2V0dGVyIEF0dHI/IGl0
ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CiAgICAgQXR0cj8gZ2V0TmFtZWRJdGVtTlMoRE9NU3Ry
aW5nPyBuYW1lc3BhY2VVUkksIERPTVN0cmluZyBsb2NhbE5hbWUpOwotICAgIFtSYWlzZXNFeGNl
cHRpb24sIEltcGxlbWVudGVkQXM9c2V0TmFtZWRJdGVtXSBBdHRyPyBzZXROYW1lZEl0ZW1OUyhB
dHRyIGF0dHIpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIEF0dHIgcmVtb3ZlTmFtZWRJdGVtTlMo
RE9NU3RyaW5nPyBuYW1lc3BhY2VVUkksIERPTVN0cmluZyBsb2NhbE5hbWUpOworICAgIFtNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbiwgSW1wbGVtZW50ZWRBcz1zZXROYW1lZEl0ZW1dIEF0dHI/IHNl
dE5hbWVkSXRlbU5TKEF0dHIgYXR0cik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBB
dHRyIHJlbW92ZU5hbWVkSXRlbU5TKERPTVN0cmluZz8gbmFtZXNwYWNlVVJJLCBET01TdHJpbmcg
bG9jYWxOYW1lKTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5pZGwg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5pZGwKaW5kZXggMTFkMWU2ZjM2MjNkMDEwMzc5NjNm
MTJjY2NjMDY4ZWU0ZTUwMWViYi4uNmI3N2UzMzQ1ODM5NGM3NjVmNDA2Y2FmODBhZTVmY2ZhMWRi
MTIzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Ob2RlLmlkbApAQCAtNDQsNyArNDQsNyBAQAogICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSBET01TdHJpbmcgbm9kZU5hbWU7CiAKICAgICAvLyBGSVhNRTogdGhlIHNwZWMgc2F5
cyB0aGlzIGNhbiBhbHNvIHJhaXNlIG9uIHJldHJpZXZhbC4KLSAgICBbU2V0dGVyUmFpc2VzRXhj
ZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nPyBub2RlVmFsdWU7CisgICAgW1NldHRlck1heVRo
cm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nPyBub2RlVmFsdWU7CiAKICAg
ICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQgbm9kZVR5cGU7CiAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIE5vZGU/IHBhcmVudE5vZGU7CkBAIC01NSwyMSArNTUsMjEgQEAKICAgICBy
ZWFkb25seSBhdHRyaWJ1dGUgTm9kZT8gbmV4dFNpYmxpbmc7CiAgICAgcmVhZG9ubHkgYXR0cmli
dXRlIERvY3VtZW50PyBvd25lckRvY3VtZW50OwogCi0gICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0
aW9uXSBOb2RlIGluc2VydEJlZm9yZShbQ3VzdG9tUmV0dXJuXSBOb2RlIG5ld0NoaWxkLCBOb2Rl
PyByZWZDaGlsZCk7Ci0gICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSBOb2RlIHJlcGxhY2VD
aGlsZChOb2RlIG5ld0NoaWxkLCBbQ3VzdG9tUmV0dXJuXSBOb2RlIG9sZENoaWxkKTsKLSAgICBb
Q3VzdG9tLCBSYWlzZXNFeGNlcHRpb24sIENFUmVhY3Rpb25zXSBOb2RlIHJlbW92ZUNoaWxkKFtD
dXN0b21SZXR1cm5dIE5vZGUgb2xkQ2hpbGQpOwotICAgIFtDdXN0b20sIFJhaXNlc0V4Y2VwdGlv
biwgQ0VSZWFjdGlvbnNdIE5vZGUgYXBwZW5kQ2hpbGQoW0N1c3RvbVJldHVybl0gTm9kZSBuZXdD
aGlsZCk7CisgICAgW0N1c3RvbSwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIE5vZGUgaW5zZXJ0
QmVmb3JlKFtDdXN0b21SZXR1cm5dIE5vZGUgbmV3Q2hpbGQsIE5vZGU/IHJlZkNoaWxkKTsKKyAg
ICBbQ3VzdG9tLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gTm9kZSByZXBsYWNlQ2hpbGQoTm9k
ZSBuZXdDaGlsZCwgW0N1c3RvbVJldHVybl0gTm9kZSBvbGRDaGlsZCk7CisgICAgW0N1c3RvbSwg
TWF5VGhyb3dMZWdhY3lFeGNlcHRpb24sIENFUmVhY3Rpb25zXSBOb2RlIHJlbW92ZUNoaWxkKFtD
dXN0b21SZXR1cm5dIE5vZGUgb2xkQ2hpbGQpOworICAgIFtDdXN0b20sIE1heVRocm93TGVnYWN5
RXhjZXB0aW9uLCBDRVJlYWN0aW9uc10gTm9kZSBhcHBlbmRDaGlsZChbQ3VzdG9tUmV0dXJuXSBO
b2RlIG5ld0NoaWxkKTsKIAogICAgIGJvb2xlYW4gaGFzQ2hpbGROb2RlcygpOwogCi0gICAgW05l
d09iamVjdCwgUmFpc2VzRXhjZXB0aW9uLCBJbXBsZW1lbnRlZEFzPWNsb25lTm9kZUZvckJpbmRp
bmdzLCBDRVJlYWN0aW9uc10gTm9kZSBjbG9uZU5vZGUob3B0aW9uYWwgYm9vbGVhbiBkZWVwID0g
ZmFsc2UpOworICAgIFtOZXdPYmplY3QsIE1heVRocm93TGVnYWN5RXhjZXB0aW9uLCBJbXBsZW1l
bnRlZEFzPWNsb25lTm9kZUZvckJpbmRpbmdzLCBDRVJlYWN0aW9uc10gTm9kZSBjbG9uZU5vZGUo
b3B0aW9uYWwgYm9vbGVhbiBkZWVwID0gZmFsc2UpOwogCiAgICAgdm9pZCBub3JtYWxpemUoKTsK
IAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBVU1ZTdHJpbmcgYmFzZVVSSTsKIAogICAgIC8vIEZJ
WE1FOiB0aGUgc3BlYyBzYXlzIHRoaXMgY2FuIGFsc28gcmFpc2Ugb24gcmV0cmlldmFsLgotICAg
IFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmc/IHRleHRDb250ZW50
OworICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmlu
Zz8gdGV4dENvbnRlbnQ7CiAKICAgICBib29sZWFuIGlzU2FtZU5vZGUoTm9kZT8gb3RoZXIpOwog
ICAgIGJvb2xlYW4gaXNFcXVhbE5vZGUoTm9kZT8gb3RoZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9tL1BhcmVudE5vZGUuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL1BhcmVudE5v
ZGUuaWRsCmluZGV4IDVjODc3MmEwODAxZDJmMzg5ZGQ0ODg2MmY2MzhlMjlkZjNjM2NmMmIuLjFl
NDljOWRlZDRjNjliZGJhNWMwYTE1YjE5ZmNjZWFjYmY5YjgxYzIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9QYXJlbnROb2RlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUGFy
ZW50Tm9kZS5pZGwKQEAgLTMzLDExICszMywxMSBAQAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBF
bGVtZW50IGxhc3RFbGVtZW50Q2hpbGQ7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVk
IGxvbmcgY2hpbGRFbGVtZW50Q291bnQ7CiAKLSAgICBbVW5zY29wYWJsZSwgUmFpc2VzRXhjZXB0
aW9uLCBDdXN0b21dIHZvaWQgcHJlcGVuZCgoTm9kZSBvciBET01TdHJpbmcpLi4uIG5vZGVzKTsK
LSAgICBbVW5zY29wYWJsZSwgUmFpc2VzRXhjZXB0aW9uLCBDdXN0b21dIHZvaWQgYXBwZW5kKChO
b2RlIG9yIERPTVN0cmluZykuLi4gbm9kZXMpOworICAgIFtVbnNjb3BhYmxlLCBNYXlUaHJvd0xl
Z2FjeUV4Y2VwdGlvbiwgQ3VzdG9tXSB2b2lkIHByZXBlbmQoKE5vZGUgb3IgRE9NU3RyaW5nKS4u
LiBub2Rlcyk7CisgICAgW1Vuc2NvcGFibGUsIE1heVRocm93TGVnYWN5RXhjZXB0aW9uLCBDdXN0
b21dIHZvaWQgYXBwZW5kKChOb2RlIG9yIERPTVN0cmluZykuLi4gbm9kZXMpOwogCiAgICAgLy8g
W1Vuc2NvcGFibGVdIEVsZW1lbnQ/IHF1ZXJ5KERPTVN0cmluZyByZWxhdGl2ZVNlbGVjdG9ycyk7
CiAgICAgLy8gW05ld09iamVjdCwgVW5zY29wYWJsZV0gRWxlbWVudHMgcXVlcnlBbGwoRE9NU3Ry
aW5nIHJlbGF0aXZlU2VsZWN0b3JzKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBFbGVtZW50IHF1
ZXJ5U2VsZWN0b3IoRE9NU3RyaW5nIHNlbGVjdG9ycyk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbiwg
TmV3T2JqZWN0XSBOb2RlTGlzdCBxdWVyeVNlbGVjdG9yQWxsKERPTVN0cmluZyBzZWxlY3RvcnMp
OworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gRWxlbWVudCBxdWVyeVNlbGVjdG9yKERP
TVN0cmluZyBzZWxlY3RvcnMpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbiwgTmV3T2Jq
ZWN0XSBOb2RlTGlzdCBxdWVyeVNlbGVjdG9yQWxsKERPTVN0cmluZyBzZWxlY3RvcnMpOwogfTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5pZGwgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vUmFuZ2UuaWRsCmluZGV4IGY0YTNjNDFjMjcwOTBlYzQ2ZjBjOGFlZjgwOThiMTJmM2I3
M2IxMzQuLmU3ZDUwMTY5MWMwZTM1MWU4MzgyOGQ4YzVmZDA5N2U3ZWNjOWMzNzcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9t
L1JhbmdlLmlkbApAQCAtMzMsMTYgKzMzLDE2IEBACiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGJv
b2xlYW4gY29sbGFwc2VkOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBOb2RlIGNvbW1vbkFuY2Vz
dG9yQ29udGFpbmVyOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRTdGFydChOb2Rl
IHJlZk5vZGUsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0KTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2
b2lkIHNldEVuZChOb2RlIHJlZk5vZGUsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0KTsKKyAgICBbTWF5
VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0U3RhcnQoTm9kZSByZWZOb2RlLCB1bnNpZ25l
ZCBsb25nIG9mZnNldCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNldEVu
ZChOb2RlIHJlZk5vZGUsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0KTsKIAotICAgIFtSYWlzZXNFeGNl
cHRpb25dIHZvaWQgc2V0U3RhcnRCZWZvcmUoTm9kZSByZWZOb2RlKTsKLSAgICBbUmFpc2VzRXhj
ZXB0aW9uXSB2b2lkIHNldFN0YXJ0QWZ0ZXIoTm9kZSByZWZOb2RlKTsKLSAgICBbUmFpc2VzRXhj
ZXB0aW9uXSB2b2lkIHNldEVuZEJlZm9yZShOb2RlIHJlZk5vZGUpOwotICAgIFtSYWlzZXNFeGNl
cHRpb25dIHZvaWQgc2V0RW5kQWZ0ZXIoTm9kZSByZWZOb2RlKTsKKyAgICBbTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb25dIHZvaWQgc2V0U3RhcnRCZWZvcmUoTm9kZSByZWZOb2RlKTsKKyAgICBbTWF5
VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0U3RhcnRBZnRlcihOb2RlIHJlZk5vZGUpOwor
ICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRFbmRCZWZvcmUoTm9kZSByZWZO
b2RlKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0RW5kQWZ0ZXIoTm9k
ZSByZWZOb2RlKTsKICAgICB2b2lkIGNvbGxhcHNlKG9wdGlvbmFsIGJvb2xlYW4gdG9TdGFydCA9
IGZhbHNlKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNlbGVjdE5vZGUoTm9kZSByZWZO
b2RlKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNlbGVjdE5vZGVDb250ZW50cyhOb2Rl
IHJlZk5vZGUpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZWxlY3ROb2Rl
KE5vZGUgcmVmTm9kZSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNlbGVj
dE5vZGVDb250ZW50cyhOb2RlIHJlZk5vZGUpOwogCiAgICAgLy8gQ29tcGFyZUhvdwogICAgIGNv
bnN0IHVuc2lnbmVkIHNob3J0IFNUQVJUX1RPX1NUQVJUID0gMDsKQEAgLTUwLDEzICs1MCwxMyBA
QAogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IEVORF9UT19FTkQgPSAyOwogICAgIGNvbnN0IHVu
c2lnbmVkIHNob3J0IEVORF9UT19TVEFSVCA9IDM7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uLCBJ
bXBsZW1lbnRlZEFzPWNvbXBhcmVCb3VuZGFyeVBvaW50c0ZvckJpbmRpbmdzXSBzaG9ydCBjb21w
YXJlQm91bmRhcnlQb2ludHModW5zaWduZWQgc2hvcnQgaG93LCBSYW5nZSBzb3VyY2VSYW5nZSk7
CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uLCBJbXBsZW1lbnRlZEFzPWNvbXBhcmVCb3Vu
ZGFyeVBvaW50c0ZvckJpbmRpbmdzXSBzaG9ydCBjb21wYXJlQm91bmRhcnlQb2ludHModW5zaWdu
ZWQgc2hvcnQgaG93LCBSYW5nZSBzb3VyY2VSYW5nZSk7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9u
XSB2b2lkIGRlbGV0ZUNvbnRlbnRzKCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbiwgTmV3T2JqZWN0
XSBEb2N1bWVudEZyYWdtZW50IGV4dHJhY3RDb250ZW50cygpOwotICAgIFtSYWlzZXNFeGNlcHRp
b24sIE5ld09iamVjdF0gRG9jdW1lbnRGcmFnbWVudCBjbG9uZUNvbnRlbnRzKCk7Ci0gICAgW1Jh
aXNlc0V4Y2VwdGlvbl0gdm9pZCBpbnNlcnROb2RlKE5vZGUgbmV3Tm9kZSk7Ci0gICAgW1JhaXNl
c0V4Y2VwdGlvbl0gdm9pZCBzdXJyb3VuZENvbnRlbnRzKE5vZGUgbmV3UGFyZW50KTsKKyAgICBb
TWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgZGVsZXRlQ29udGVudHMoKTsKKyAgICBbTWF5
VGhyb3dMZWdhY3lFeGNlcHRpb24sIE5ld09iamVjdF0gRG9jdW1lbnRGcmFnbWVudCBleHRyYWN0
Q29udGVudHMoKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb24sIE5ld09iamVjdF0gRG9j
dW1lbnRGcmFnbWVudCBjbG9uZUNvbnRlbnRzKCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0
aW9uXSB2b2lkIGluc2VydE5vZGUoTm9kZSBuZXdOb2RlKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb25dIHZvaWQgc3Vycm91bmRDb250ZW50cyhOb2RlIG5ld1BhcmVudCk7CiAgICAgW05l
d09iamVjdF0gUmFuZ2UgY2xvbmVSYW5nZSgpOwogICAgIERPTVN0cmluZyB0b1N0cmluZygpOwog
CkBAIC02NSw5ICs2NSw5IEBACiAgICAgQ2xpZW50UmVjdExpc3QgZ2V0Q2xpZW50UmVjdHMoKTsK
ICAgICBDbGllbnRSZWN0IGdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOwogCi0gICAgW1JhaXNlc0V4
Y2VwdGlvbiwgTmV3T2JqZWN0XSBEb2N1bWVudEZyYWdtZW50IGNyZWF0ZUNvbnRleHR1YWxGcmFn
bWVudChET01TdHJpbmcgaHRtbCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uLCBOZXdP
YmplY3RdIERvY3VtZW50RnJhZ21lbnQgY3JlYXRlQ29udGV4dHVhbEZyYWdtZW50KERPTVN0cmlu
ZyBodG1sKTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHNob3J0IGNvbXBhcmVOb2RlKE5vZGUg
cmVmTm9kZSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBzaG9ydCBjb21wYXJlTm9k
ZShOb2RlIHJlZk5vZGUpOwogCiAgICAgLy8gQ29tcGFyZVJlc3VsdHMKICAgICBjb25zdCB1bnNp
Z25lZCBzaG9ydCBOT0RFX0JFRk9SRSA9IDA7CkBAIC03NSwxMSArNzUsMTEgQEAKICAgICBjb25z
dCB1bnNpZ25lZCBzaG9ydCBOT0RFX0JFRk9SRV9BTkRfQUZURVIgPSAyOwogICAgIGNvbnN0IHVu
c2lnbmVkIHNob3J0IE5PREVfSU5TSURFID0gMzsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIGJv
b2xlYW4gaW50ZXJzZWN0c05vZGUoTm9kZSByZWZOb2RlKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb25dIGJvb2xlYW4gaW50ZXJzZWN0c05vZGUoTm9kZSByZWZOb2RlKTsKIAotICAgIFtS
YWlzZXNFeGNlcHRpb25dIHNob3J0IGNvbXBhcmVQb2ludChOb2RlIHJlZk5vZGUsIHVuc2lnbmVk
IGxvbmcgb2Zmc2V0KTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBib29sZWFuIGlzUG9pbnRJblJh
bmdlKE5vZGUgcmVmTm9kZSwgdW5zaWduZWQgbG9uZyBvZmZzZXQpOworICAgIFtNYXlUaHJvd0xl
Z2FjeUV4Y2VwdGlvbl0gc2hvcnQgY29tcGFyZVBvaW50KE5vZGUgcmVmTm9kZSwgdW5zaWduZWQg
bG9uZyBvZmZzZXQpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYm9vbGVhbiBpc1Bv
aW50SW5SYW5nZShOb2RlIHJlZk5vZGUsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0KTsKIAogICAgIC8v
IEZJWE1FOiBVc2luZyAidW5kZWZpbmVkIiBhcyBkZWZhdWx0IHBhcmFtZXRlciB2YWx1ZSBpcyB3
cm9uZy4KLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGV4cGFuZChvcHRpb25hbCBET01TdHJp
bmcgdW5pdCA9ICJ1bmRlZmluZWQiKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZv
aWQgZXhwYW5kKG9wdGlvbmFsIERPTVN0cmluZyB1bml0ID0gInVuZGVmaW5lZCIpOwogfTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TaGFkb3dSb290LmlkbCBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9TaGFkb3dSb290LmlkbAppbmRleCBjYTI1MTU3ZTVjYjFkMmJiY2QzZTBhOGExYjBh
NTlhNWYzNTZlZDkzLi4zYTdiZDY2NGZiZGY4MWRmMTgxY2M5ZmVlM2MyZWU0NWVkMGU1MmJkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2hhZG93Um9vdC5pZGwKKysrIGIvU291cmNl
L1dlYkNvcmUvZG9tL1NoYWRvd1Jvb3QuaWRsCkBAIC0zMSw3ICszMSw3IEBACiAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIEVsZW1lbnQgICAgICAgICAgYWN0aXZlRWxlbWVudDsKICAgICByZWFkb25s
eSBhdHRyaWJ1dGUgRWxlbWVudCAgICAgICAgICBob3N0OwogCi0gICAgW1RyZWF0TnVsbEFzPUVt
cHR5U3RyaW5nLCBTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmcgaW5u
ZXJIVE1MOworICAgIFtUcmVhdE51bGxBcz1FbXB0eVN0cmluZywgU2V0dGVyTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmcgaW5uZXJIVE1MOwogfTsKIAogLy8gInVz
ZXItYWdlbnQiIGlzIGEgV2ViS2l0IGV4dGVuc2lvbiB0aGF0IGlzIG5vdCBleHBvc2VkIHRvIHRo
ZSBXZWIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vVGV4dC5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vVGV4dC5pZGwKaW5kZXggNGNlMWJiNzdiMzk5NDA2M2RjMGE1MTYwNWM1YWRl
ZWIyOTY2ZTE1ZS4uYTRhZmQxMzJiYTE0NjQzNTU5YTcwMjFmNGE2OWM1ZTlkNDdmOTk1MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1RleHQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9UZXh0LmlkbApAQCAtMjQsNyArMjQsNyBAQAogCiAgICAgLy8gRE9NIExldmVsIDEKIAot
ICAgIFtSYWlzZXNFeGNlcHRpb25dIFRleHQgc3BsaXRUZXh0KHVuc2lnbmVkIGxvbmcgb2Zmc2V0
KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIFRleHQgc3BsaXRUZXh0KHVuc2lnbmVk
IGxvbmcgb2Zmc2V0KTsKIAogICAgIC8vIEludHJvZHVjZWQgaW4gRE9NIExldmVsIDM6CiAgICAg
cmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyB3aG9sZVRleHQ7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIuaWRsIGIvU291cmNlL1dlYkNvcmUvZmlsZWFw
aS9GaWxlUmVhZGVyLmlkbAppbmRleCA2NTAxMDUzMDE2MTNiOGQ5ZTQwOTMzOGM5NDlmOTcwYTA1
ODlhNjdmLi42YTk4MjFjYzM5Yjc5NzkxYWVhZjIzZWU2YmEyOTY0YmZlYTBjZjYzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlci5pZGwKQEAgLTQzLDEwICs0MywxMCBAQAogCiAgICAg
Ly8gRklYTUU6IEluIGFsbCBmb3VyIG1ldGhvZHMgZm91bmQgYmVsb3csIHRoZSBibG9iIHBhcmFt
ZXRlciBzaG91bGQgbm90IGJlIG51bGxhYmxlLgogICAgIC8vIGFzeW5jIHJlYWQgbWV0aG9kcwot
ICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgcmVhZEFzQXJyYXlCdWZmZXIoQmxvYj8gYmxvYik7
Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCByZWFkQXNCaW5hcnlTdHJpbmcoQmxvYj8gYmxv
Yik7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCByZWFkQXNUZXh0KEJsb2I/IGJsb2IsIG9w
dGlvbmFsIERPTVN0cmluZyBlbmNvZGluZyk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBy
ZWFkQXNEYXRhVVJMKEJsb2I/IGJsb2IpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0g
dm9pZCByZWFkQXNBcnJheUJ1ZmZlcihCbG9iPyBibG9iKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb25dIHZvaWQgcmVhZEFzQmluYXJ5U3RyaW5nKEJsb2I/IGJsb2IpOworICAgIFtNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCByZWFkQXNUZXh0KEJsb2I/IGJsb2IsIG9wdGlvbmFs
IERPTVN0cmluZyBlbmNvZGluZyk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lk
IHJlYWRBc0RhdGFVUkwoQmxvYj8gYmxvYik7CiAKICAgICB2b2lkIGFib3J0KCk7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlclN5bmMuaWRsIGIvU291cmNl
L1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyU3luYy5pZGwKaW5kZXggYzg5ZGIzYTlmM2Y0OTg2
YjFlMTZlMDA3Njk4NzU0ODlmMWIxYzJmZC4uODIyNzZjYWZmZTY4Y2U1NjRlNzgwMGVhMDQzNzAx
Mzc2ZTI0MzUzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVy
U3luYy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyU3luYy5pZGwK
QEAgLTMyLDggKzMyLDggQEAKICAgICBDb25zdHJ1Y3RvciwKICAgICBFeHBvc2VkPVdvcmtlciwK
IF0gaW50ZXJmYWNlIEZpbGVSZWFkZXJTeW5jIHsKLSAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0
aW9uQ29udGV4dCwgUmFpc2VzRXhjZXB0aW9uXSBBcnJheUJ1ZmZlciByZWFkQXNBcnJheUJ1ZmZl
cihCbG9iIGJsb2IpOwotICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LCBSYWlz
ZXNFeGNlcHRpb25dIERPTVN0cmluZyByZWFkQXNCaW5hcnlTdHJpbmcoQmxvYiBibG9iKTsKLSAg
ICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgUmFpc2VzRXhjZXB0aW9uXSBET01T
dHJpbmcgcmVhZEFzVGV4dChCbG9iIGJsb2IsIG9wdGlvbmFsIERPTVN0cmluZyBlbmNvZGluZyA9
ICIiKTsKLSAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgUmFpc2VzRXhjZXB0
aW9uXSBET01TdHJpbmcgcmVhZEFzRGF0YVVSTChCbG9iIGJsb2IpOworICAgIFtDYWxsV2l0aD1T
Y3JpcHRFeGVjdXRpb25Db250ZXh0LCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gQXJyYXlCdWZm
ZXIgcmVhZEFzQXJyYXlCdWZmZXIoQmxvYiBibG9iKTsKKyAgICBbQ2FsbFdpdGg9U2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIERPTVN0cmluZyByZWFkQXNC
aW5hcnlTdHJpbmcoQmxvYiBibG9iKTsKKyAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIERPTVN0cmluZyByZWFkQXNUZXh0KEJsb2Ig
YmxvYiwgb3B0aW9uYWwgRE9NU3RyaW5nIGVuY29kaW5nID0gIiIpOworICAgIFtDYWxsV2l0aD1T
Y3JpcHRFeGVjdXRpb25Db250ZXh0LCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gRE9NU3RyaW5n
IHJlYWRBc0RhdGFVUkwoQmxvYiBibG9iKTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0RPTVRva2VuTGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0RPTVRva2VuTGlz
dC5pZGwKaW5kZXggYmFjODFhODNlMjVhOTI4N2U3ZGMxYzczYzVkYzJlMTU5ODAxNDMxNC4uNzQ2
M2IzZGVkMjMyOWQ2YTVlNzU5NzE4MTA1MzExZWYyOGVmODMxOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9ET01Ub2tlbkxpc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
RE9NVG9rZW5MaXN0LmlkbApAQCAtMzAsMTEgKzMwLDExIEBACiAgICAgcmVhZG9ubHkgYXR0cmli
dXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwogICAgIGdldHRlciBET01TdHJpbmc/IGl0ZW0odW5z
aWduZWQgbG9uZyBpbmRleCk7CiAgICAgYm9vbGVhbiBjb250YWlucyhET01TdHJpbmcgdG9rZW4p
OwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgYWRkKERPTVN0cmluZy4uLiB0b2tlbnMpOwot
ICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgcmVtb3ZlKERPTVN0cmluZy4uLiB0b2tlbnMpOwot
ICAgIFtSYWlzZXNFeGNlcHRpb25dIGJvb2xlYW4gdG9nZ2xlKERPTVN0cmluZyB0b2tlbiwgb3B0
aW9uYWwgYm9vbGVhbiBmb3JjZSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCByZXBsYWNl
KERPTVN0cmluZyB0b2tlbiwgRE9NU3RyaW5nIG5ld1Rva2VuKTsKLSAgICBbUmFpc2VzRXhjZXB0
aW9uXSBib29sZWFuIHN1cHBvcnRzKERPTVN0cmluZyB0b2tlbik7CisgICAgW01heVRocm93TGVn
YWN5RXhjZXB0aW9uXSB2b2lkIGFkZChET01TdHJpbmcuLi4gdG9rZW5zKTsKKyAgICBbTWF5VGhy
b3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgcmVtb3ZlKERPTVN0cmluZy4uLiB0b2tlbnMpOworICAg
IFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYm9vbGVhbiB0b2dnbGUoRE9NU3RyaW5nIHRva2Vu
LCBvcHRpb25hbCBib29sZWFuIGZvcmNlKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25d
IHZvaWQgcmVwbGFjZShET01TdHJpbmcgdG9rZW4sIERPTVN0cmluZyBuZXdUb2tlbik7CisgICAg
W01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBib29sZWFuIHN1cHBvcnRzKERPTVN0cmluZyB0b2tl
bik7CiAKICAgICBpdGVyYWJsZTxET01TdHJpbmc+OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0RPTVVSTC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0RPTVVSTC5pZGwKaW5k
ZXggMDc5NjZkYTJjYTE2NzI5NWJlNmZhMmVlMzY4MDg2NjNhMzE1ZmYxNy4uYWRkMjkxODlhYzNl
OWUzMWVlYzMwM2U0YzM5MGYwYWZkMzU1MjY0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9ET01VUkwuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVVJMLmlkbApAQCAt
MjksNyArMjksNyBAQAogICAgIENvbnN0cnVjdG9yKFVTVlN0cmluZyB1cmwpLAogICAgIENvbnN0
cnVjdG9yKFVTVlN0cmluZyB1cmwsIFVTVlN0cmluZyBiYXNlKSwKICAgICBDb25zdHJ1Y3RvcihV
U1ZTdHJpbmcgdXJsLCBET01VUkwgYmFzZSksCi0gICAgQ29uc3RydWN0b3JSYWlzZXNFeGNlcHRp
b24sCisgICAgQ29uc3RydWN0b3JNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbiwKICAgICBKU0dlbmVy
YXRlVG9OYXRpdmVPYmplY3QsCiAgICAgSlNHZW5lcmF0ZVRvSlNPYmplY3QsCiAgICAgSW50ZXJm
YWNlTmFtZT1VUkwsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxDYW52YXNF
bGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTENhbnZhc0VsZW1lbnQuaWRsCmlu
ZGV4IDE2ZmI0MGM4ZmUyMjU2OGU3N2JhZWVjOTU4OTNjN2VkMTU5Y2E4NTQuLmZiYWYwNWI3NWJi
NDBjNTFlYzM4MTRjOWY1YzYwNjJkM2VhZGEyZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTENhbnZhc0VsZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TENhbnZhc0VsZW1lbnQuaWRsCkBAIC0zMiw3ICszMiw3IEBACiAgICAgYXR0cmlidXRlIHVuc2ln
bmVkIGxvbmcgd2lkdGg7CiAgICAgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgaGVpZ2h0OwogCi0g
ICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSBET01TdHJpbmcgdG9EYXRhVVJMKG9wdGlvbmFs
IERPTVN0cmluZz8gdHlwZSk7CisgICAgW0N1c3RvbSwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25d
IERPTVN0cmluZyB0b0RhdGFVUkwob3B0aW9uYWwgRE9NU3RyaW5nPyB0eXBlKTsKIAogICAgIC8v
IFRoZSBjdXN0b20gYmluZGluZyBpcyBuZWVkZWQgdG8gaGFuZGxlIGNvbnRleHQgY3JlYXRpb24g
YXR0cmlidXRlcy4KICAgICBbQ3VzdG9tXSBhbnkgZ2V0Q29udGV4dChET01TdHJpbmcgY29udGV4
dElkLCBhbnkuLi4gYXJndW1lbnRzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTEVsZW1lbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5pZGwKaW5k
ZXggZmVhYmE2MGM4MzhhOTI2OTY1OTVlNWY0MWZmN2I4ODQyMzhhMjkyMC4uNTVmNjkyOWJlZGE2
ZDNkNzllYjYwMDg3ZmJmNjA2NTA3MmZkMzc0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MRWxlbWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVu
dC5pZGwKQEAgLTQxLDEwICs0MSwxMCBAQAogICAgIFtSZWZsZWN0XSBhdHRyaWJ1dGUgYm9vbGVh
biBoaWRkZW47CiAgICAgW1JlZmxlY3RdIGF0dHJpYnV0ZSBET01TdHJpbmcgYWNjZXNzS2V5Owog
Ci0gICAgW1RyZWF0TnVsbEFzPUVtcHR5U3RyaW5nLCBTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0
dHJpYnV0ZSBET01TdHJpbmcgaW5uZXJUZXh0OwotICAgIFtUcmVhdE51bGxBcz1FbXB0eVN0cmlu
ZywgU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIG91dGVyVGV4dDsK
KyAgICBbVHJlYXROdWxsQXM9RW1wdHlTdHJpbmcsIFNldHRlck1heVRocm93TGVnYWN5RXhjZXB0
aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGlubmVyVGV4dDsKKyAgICBbVHJlYXROdWxsQXM9RW1w
dHlTdHJpbmcsIFNldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3Ry
aW5nIG91dGVyVGV4dDsKIAotICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBE
T01TdHJpbmcgY29udGVudEVkaXRhYmxlOworICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBjb250ZW50RWRpdGFibGU7CiAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIGJvb2xlYW4gaXNDb250ZW50RWRpdGFibGU7CiAKICAgICBhdHRyaWJ1dGUgYm9v
bGVhbiBzcGVsbGNoZWNrOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRW1i
ZWRFbGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVtYmVkRWxlbWVudC5pZGwK
aW5kZXggMWQ4MzBlYTMwZjlmYWJmZDdmOWVkZjBlMGQyYmI3MTYzYjhkYTBiYy4uNGJiODVkNGNm
NDVlYjRkODRkZjNiNjU5ZDY4MzY2MTFjNjM5NGI1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRW1iZWRFbGVtZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxFbWJlZEVsZW1lbnQuaWRsCkBAIC0zMCw2ICszMCw2IEBACiBbUmVmbGVjdF0gYXR0cmlidXRl
IERPTVN0cmluZyB0eXBlOwogW1JlZmxlY3RdIGF0dHJpYnV0ZSBET01TdHJpbmcgd2lkdGg7CiAK
LVtDaGVja1NlY3VyaXR5Rm9yTm9kZSwgUmFpc2VzRXhjZXB0aW9uXSBTVkdEb2N1bWVudCBnZXRT
VkdEb2N1bWVudCgpOworW0NoZWNrU2VjdXJpdHlGb3JOb2RlLCBNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gU1ZHRG9jdW1lbnQgZ2V0U1ZHRG9jdW1lbnQoKTsKIH07CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1lRWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxGcmFtZUVsZW1lbnQuaWRsCmluZGV4IDU1Mzc1ZjIwMjI0MWRlNjY5MzE5MmQ2Zjgw
MzA0YWVmYzBjNDVhOWMuLjVlZDczYjViZTA0NjdiMjM2NWE3ZWQ0NmFmZDhlNTAxODNmY2RhMjEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1lRWxlbWVudC5pZGwKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRnJhbWVFbGVtZW50LmlkbApAQCAtMzcsNyArMzcs
NyBAQCBpbnRlcmZhY2UgSFRNTEZyYW1lRWxlbWVudCA6IEhUTUxFbGVtZW50IHsKICAgICAvLyBF
eHRlbnNpb25zCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVdpbmRvdyBjb250ZW50V2luZG93
OwogCi0gICAgW0NoZWNrU2VjdXJpdHlGb3JOb2RlLCBSYWlzZXNFeGNlcHRpb25dIFNWR0RvY3Vt
ZW50IGdldFNWR0RvY3VtZW50KCk7CisgICAgW0NoZWNrU2VjdXJpdHlGb3JOb2RlLCBNYXlUaHJv
d0xlZ2FjeUV4Y2VwdGlvbl0gU1ZHRG9jdW1lbnQgZ2V0U1ZHRG9jdW1lbnQoKTsKIAogICAgIC8v
IEZJWE1FOiBObyBvdGhlciBicm93c2VyIGhhcyB0aGlzIGF0dHJpYnV0ZS4KICAgICBbQ3VzdG9t
U2V0dGVyXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGxvY2F0aW9uOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MSUZyYW1lRWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxJRnJhbWVFbGVtZW50LmlkbAppbmRleCBiMmYwZjJkMTVlZjU5NzIwYTlmYWQwMTA0YWJi
MDI4ZGM4ZmFhMjU5Li4zZGFjYTFjNzMyNjEwNGE1MDJmNzE5ZGRiOGNhMTk3MTA1MWQzMjc5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJRnJhbWVFbGVtZW50LmlkbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJRnJhbWVFbGVtZW50LmlkbApAQCAtNDEsNiArNDEs
NiBAQCBpbnRlcmZhY2UgSFRNTElGcmFtZUVsZW1lbnQgOiBIVE1MRWxlbWVudCB7CiAgICAgLy8g
RXh0ZW5zaW9ucwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01XaW5kb3cgY29udGVudFdpbmRv
dzsKIAotICAgIFtDaGVja1NlY3VyaXR5Rm9yTm9kZSwgUmFpc2VzRXhjZXB0aW9uXSBTVkdEb2N1
bWVudCBnZXRTVkdEb2N1bWVudCgpOworICAgIFtDaGVja1NlY3VyaXR5Rm9yTm9kZSwgTWF5VGhy
b3dMZWdhY3lFeGNlcHRpb25dIFNWR0RvY3VtZW50IGdldFNWR0RvY3VtZW50KCk7CiB9OwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuaWRsIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmlkbAppbmRleCA2ZTYxMDg2NzY1ZWM3
MDFiZWYzNTQ0OTZlZDY3ODg1NGMxMWZiOGMzLi44ZWFlMzIxZmZlMGVkYzFhNzJjM2I0MDRmOWVl
OGRmZGY3NmNlZTVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVs
ZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5pZGwK
QEAgLTQ0LDggKzQ0LDggQEAKICAgICBhdHRyaWJ1dGUgYm9vbGVhbiBpbmRldGVybWluYXRlOwog
ICAgIFtDb25kaXRpb25hbD1EQVRBTElTVF9FTEVNRU5UXSByZWFkb25seSBhdHRyaWJ1dGUgSFRN
TEVsZW1lbnQgbGlzdDsKICAgICBbUmVmbGVjdF0gYXR0cmlidXRlIERPTVN0cmluZyBtYXg7Ci0g
ICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIGxvbmcgbWluTGVuZ3RoOwotICAg
IFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBsb25nIG1heExlbmd0aDsKKyAgICBb
U2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSBsb25nIG1pbkxlbmd0aDsK
KyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSBsb25nIG1heExl
bmd0aDsKICAgICBbUmVmbGVjdF0gYXR0cmlidXRlIERPTVN0cmluZyBtaW47CiAgICAgW1JlZmxl
Y3RdIGF0dHJpYnV0ZSBib29sZWFuIG11bHRpcGxlOwogICAgIFtSZWZsZWN0XSBhdHRyaWJ1dGUg
RE9NU3RyaW5nIG5hbWU7CkBAIC01MywxOCArNTMsMTggQEAKICAgICBbUmVmbGVjdF0gYXR0cmli
dXRlIERPTVN0cmluZyBwbGFjZWhvbGRlcjsKICAgICBbUmVmbGVjdF0gYXR0cmlidXRlIGJvb2xl
YW4gcmVhZE9ubHk7CiAgICAgW1JlZmxlY3RdIGF0dHJpYnV0ZSBib29sZWFuIHJlcXVpcmVkOwot
ICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIHNpemU7
IC8vIENoYW5nZWQgc3RyaW5nIC0+IGxvbmcgLT4gdW5zaWduZWQgbG9uZworICAgIFtTZXR0ZXJN
YXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgc2l6ZTsgLy8g
Q2hhbmdlZCBzdHJpbmcgLT4gbG9uZyAtPiB1bnNpZ25lZCBsb25nCiAgICAgW1JlZmxlY3QsIFVS
TF0gYXR0cmlidXRlIFVTVlN0cmluZyBzcmM7CiAgICAgW1JlZmxlY3RdIGF0dHJpYnV0ZSBET01T
dHJpbmcgc3RlcDsKICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nIHR5cGU7IC8vIHJlYWRvbmx5IGRy
b3BwZWQgYXMgcGFydCBvZiBET00gbGV2ZWwgMgogICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgZGVm
YXVsdFZhbHVlOwogICAgIC8vIFNlZSB0aGUgZGlzY3Vzc2lvbiBpbiBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAwMDg1Ci0gICAgW1RyZWF0TnVsbEFzPUVtcHR5U3Ry
aW5nLCBTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmcgdmFsdWU7Ci0g
ICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIERhdGU/IHZhbHVlQXNEYXRlOwot
ICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91Ymxl
IHZhbHVlQXNOdW1iZXI7CisgICAgW1RyZWF0TnVsbEFzPUVtcHR5U3RyaW5nLCBTZXR0ZXJNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyB2YWx1ZTsKKyAgICBbU2V0
dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSBEYXRlPyB2YWx1ZUFzRGF0ZTsK
KyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0
ZWQgZG91YmxlIHZhbHVlQXNOdW1iZXI7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHN0
ZXBVcChvcHRpb25hbCBsb25nIG4gPSAxKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHN0
ZXBEb3duKG9wdGlvbmFsIGxvbmcgbiA9IDEpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlv
bl0gdm9pZCBzdGVwVXAob3B0aW9uYWwgbG9uZyBuID0gMSk7CisgICAgW01heVRocm93TGVnYWN5
RXhjZXB0aW9uXSB2b2lkIHN0ZXBEb3duKG9wdGlvbmFsIGxvbmcgbiA9IDEpOwogCiAgICAgYXR0
cmlidXRlIHVuc2lnbmVkIGxvbmcgd2lkdGg7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGJvb2xl
YW4gd2lsbFZhbGlkYXRlOwpAQCAtODAsOCArODAsOCBAQAogICAgIFtDdXN0b21dIGF0dHJpYnV0
ZSBsb25nIHNlbGVjdGlvbkVuZDsKICAgICBbQ3VzdG9tXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHNl
bGVjdGlvbkRpcmVjdGlvbjsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0UmFuZ2VU
ZXh0KERPTVN0cmluZyByZXBsYWNlbWVudCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBz
ZXRSYW5nZVRleHQoRE9NU3RyaW5nIHJlcGxhY2VtZW50LCB1bnNpZ25lZCBsb25nIHN0YXJ0LCB1
bnNpZ25lZCBsb25nIGVuZCwgb3B0aW9uYWwgRE9NU3RyaW5nIHNlbGVjdGlvbk1vZGUpOworICAg
IFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRSYW5nZVRleHQoRE9NU3RyaW5nIHJl
cGxhY2VtZW50KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0UmFuZ2VU
ZXh0KERPTVN0cmluZyByZXBsYWNlbWVudCwgdW5zaWduZWQgbG9uZyBzdGFydCwgdW5zaWduZWQg
bG9uZyBlbmQsIG9wdGlvbmFsIERPTVN0cmluZyBzZWxlY3Rpb25Nb2RlKTsKIAogICAgIFtDdXN0
b21dIHZvaWQgc2V0U2VsZWN0aW9uUmFuZ2UobG9uZyBzdGFydCwgbG9uZyBlbmQsIG9wdGlvbmFs
IERPTVN0cmluZyBkaXJlY3Rpb24pOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxNYXJxdWVlRWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNYXJxdWVl
RWxlbWVudC5pZGwKaW5kZXggNjQxY2U3YTNiMWFlZWE5MGIyY2NjMjI4YWY3ZjNiMjBkNzliN2Y1
Yi4uNmM3MGNhNzNlZTNjZjIzNjIyMDAwNmFjMDZjYzUyY2RiZWYwNTgwYiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWFycXVlZUVsZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTE1hcnF1ZWVFbGVtZW50LmlkbApAQCAtMjYsNyArMjYsNyBAQCBpbnRl
cmZhY2UgSFRNTE1hcnF1ZWVFbGVtZW50IDogSFRNTEVsZW1lbnQgewogICAgIFtSZWZsZWN0XSBh
dHRyaWJ1dGUgRE9NU3RyaW5nIGRpcmVjdGlvbjsKICAgICBbUmVmbGVjdF0gYXR0cmlidXRlIERP
TVN0cmluZyBoZWlnaHQ7CiAgICAgW1JlZmxlY3RdIGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGhz
cGFjZTsKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgbG9uZyBsb29wOwor
ICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIGxvbmcgbG9vcDsK
ICAgICBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBzY3JvbGxBbW91bnQ7CiAgICAgYXR0cmlidXRl
IHVuc2lnbmVkIGxvbmcgc2Nyb2xsRGVsYXk7CiAgICAgW1JlZmxlY3RdIGF0dHJpYnV0ZSBib29s
ZWFuIHRydWVTcGVlZDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlh
RWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaWRsCmlu
ZGV4IDdlYmEwNGIxMGFiZTIyNzhjNzkxYTk3MjU4YTAzYTYxYmJlNmIxZDMuLjA4ZWY5ZWQ3MWFm
NTUyMDY4ZGQ5ZTYwNjQ2ZGIxMDIwNDA3MmNiM2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTE1lZGlhRWxlbWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
TWVkaWFFbGVtZW50LmlkbApAQCAtNjAsNyArNjAsNyBAQAogICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSBib29sZWFuIHNlZWtpbmc7CiAKICAgICAvLyBwbGF5YmFjayBzdGF0ZQotICAgIFtTZXR0ZXJS
YWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91YmxlIGN1cnJlbnRUaW1l
OworICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIHVucmVzdHJp
Y3RlZCBkb3VibGUgY3VycmVudFRpbWU7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVucmVzdHJp
Y3RlZCBkb3VibGUgZHVyYXRpb247CiAgICAgRGF0ZSBnZXRTdGFydERhdGUoKTsKICAgICByZWFk
b25seSBhdHRyaWJ1dGUgYm9vbGVhbiBwYXVzZWQ7CkBAIC03Nyw3ICs3Nyw3IEBACiAKICAgICAv
LyBjb250cm9scwogICAgIGF0dHJpYnV0ZSBib29sZWFuIGNvbnRyb2xzOwotICAgIFtTZXR0ZXJS
YWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91YmxlIHZvbHVtZTsKKyAg
ICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQg
ZG91YmxlIHZvbHVtZTsKICAgICBhdHRyaWJ1dGUgYm9vbGVhbiBtdXRlZDsKICAgICBbUmVmbGVj
dD1tdXRlZF0gYXR0cmlidXRlIGJvb2xlYW4gZGVmYXVsdE11dGVkOwogCkBAIC05NCw3ICs5NCw3
IEBACiAgICAgW0NvbmRpdGlvbmFsPUVOQ1JZUFRFRF9NRURJQV9WMiwgSW1wbGVtZW50ZWRBcz1r
ZXlzXSByZWFkb25seSBhdHRyaWJ1dGUgTWVkaWFLZXlzIHdlYmtpdEtleXM7CiAgICAgW0NvbmRp
dGlvbmFsPUVOQ1JZUFRFRF9NRURJQV9WMiwgSW1wbGVtZW50ZWRBcz1zZXRNZWRpYUtleXNdIHZv
aWQgd2Via2l0U2V0TWVkaWFLZXlzKE1lZGlhS2V5cz8gbWVkaWFLZXlzKTsKIAotICAgIFtDb25k
aXRpb25hbD1WSURFT19UUkFDSywgUmFpc2VzRXhjZXB0aW9uXSBUZXh0VHJhY2sgYWRkVGV4dFRy
YWNrKERPTVN0cmluZyBraW5kLCBvcHRpb25hbCBET01TdHJpbmcgbGFiZWwgPSAiIiwgb3B0aW9u
YWwgRE9NU3RyaW5nIGxhbmd1YWdlID0gIiIpOworICAgIFtDb25kaXRpb25hbD1WSURFT19UUkFD
SywgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIFRleHRUcmFjayBhZGRUZXh0VHJhY2soRE9NU3Ry
aW5nIGtpbmQsIG9wdGlvbmFsIERPTVN0cmluZyBsYWJlbCA9ICIiLCBvcHRpb25hbCBET01TdHJp
bmcgbGFuZ3VhZ2UgPSAiIik7CiAgICAgW0NvbmRpdGlvbmFsPVZJREVPX1RSQUNLXSByZWFkb25s
eSBhdHRyaWJ1dGUgQXVkaW9UcmFja0xpc3QgYXVkaW9UcmFja3M7CiAgICAgW0NvbmRpdGlvbmFs
PVZJREVPX1RSQUNLXSByZWFkb25seSBhdHRyaWJ1dGUgVGV4dFRyYWNrTGlzdCB0ZXh0VHJhY2tz
OwogICAgIFtDb25kaXRpb25hbD1WSURFT19UUkFDS10gcmVhZG9ubHkgYXR0cmlidXRlIFZpZGVv
VHJhY2tMaXN0IHZpZGVvVHJhY2tzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MT2JqZWN0RWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPYmplY3RFbGVt
ZW50LmlkbAppbmRleCBjMzg5MmUwMTVlNzA2OGFhNGE1NmZiMGI5YjJiYTU1MDY3ZmMyZTVkLi5j
NThlNTU4MGY2ZjQ5ODdjN2FiYmUxNWNiM2QxYzYwZDk4MWMzYzA5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxPYmplY3RFbGVtZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxPYmplY3RFbGVtZW50LmlkbApAQCAtNDksNiArNDksNiBAQAogICAgIC8vIElu
dHJvZHVjZWQgaW4gRE9NIExldmVsIDI6CiAgICAgW0NoZWNrU2VjdXJpdHlGb3JOb2RlXSByZWFk
b25seSBhdHRyaWJ1dGUgRG9jdW1lbnQgY29udGVudERvY3VtZW50OwogCi0gICAgW0NoZWNrU2Vj
dXJpdHlGb3JOb2RlLCBSYWlzZXNFeGNlcHRpb25dIFNWR0RvY3VtZW50IGdldFNWR0RvY3VtZW50
KCk7CisgICAgW0NoZWNrU2VjdXJpdHlGb3JOb2RlLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0g
U1ZHRG9jdW1lbnQgZ2V0U1ZHRG9jdW1lbnQoKTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTE9wdGlvbkVsZW1lbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MT3B0aW9uRWxlbWVudC5pZGwKaW5kZXggNWJmMDNlNDcxNTEyMmM2NmQwZDFlMDBlODdjNjIw
OTk2YWVjYjg5ZS4uNzdiZTZmNjlkNzI1ZWEwMGRhNzQ0ODkzZDFlZTExOTMwNjg5YjFmMSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT3B0aW9uRWxlbWVudC5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT3B0aW9uRWxlbWVudC5pZGwKQEAgLTE5LDcgKzE5LDcg
QEAKICAqLwogCiBbCi0gICAgQ29uc3RydWN0b3JSYWlzZXNFeGNlcHRpb24sCisgICAgQ29uc3Ry
dWN0b3JNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbiwKICAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmpl
Y3QsCiAgICAgTmFtZWRDb25zdHJ1Y3Rvcj1PcHRpb24ob3B0aW9uYWwgRE9NU3RyaW5nIGRhdGEs
IG9wdGlvbmFsIERPTVN0cmluZyB2YWx1ZSwgb3B0aW9uYWwgYm9vbGVhbiBkZWZhdWx0U2VsZWN0
ZWQgPSBmYWxzZSwgb3B0aW9uYWwgYm9vbGVhbiBzZWxlY3RlZCA9IGZhbHNlKSwKIF0gaW50ZXJm
YWNlIEhUTUxPcHRpb25FbGVtZW50IDogSFRNTEVsZW1lbnQgewpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MT3B0aW9uc0NvbGxlY3Rpb24uaWRsIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MT3B0aW9uc0NvbGxlY3Rpb24uaWRsCmluZGV4IDgzODc1OGM0MWNjZWQ0ODRmODZk
MjMwNTcxMjMyZGQyMjgwMGI0MjQuLjhkNTgwNzFhZmI3Yjk4YjczZjNmZWE5MGU2ZDM3MDI0M2Ri
YjAyODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9wdGlvbnNDb2xsZWN0
aW9uLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRpb25zQ29sbGVjdGlvbi5p
ZGwKQEAgLTI1LDE1ICsyNSwxNSBAQAogICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKIF0g
aW50ZXJmYWNlIEhUTUxPcHRpb25zQ29sbGVjdGlvbiA6IEhUTUxDb2xsZWN0aW9uIHsKICAgICBh
dHRyaWJ1dGUgbG9uZyBzZWxlY3RlZEluZGV4OwotICAgIFtDdXN0b21TZXR0ZXIsIFNldHRlclJh
aXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOworICAgIFtDdXN0
b21TZXR0ZXIsIFNldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgdW5zaWdu
ZWQgbG9uZyBsZW5ndGg7CiAKICAgICBnZXR0ZXIgSFRNTE9wdGlvbkVsZW1lbnQ/IGl0ZW0odW5z
aWduZWQgbG9uZyBpbmRleCk7CiAgICAgZ2V0dGVyIEhUTUxPcHRpb25FbGVtZW50PyBuYW1lZEl0
ZW0oRE9NU3RyaW5nIG5hbWUpOwogCiAgICAgLy8gRklYTUU6IFNob3VsZCBiZToKICAgICAvLyB2
b2lkIGFkZCgoSFRNTE9wdGlvbkVsZW1lbnQgb3IgSFRNTE9wdEdyb3VwRWxlbWVudCkgZWxlbWVu
dCwgb3B0aW9uYWwgKEhUTUxFbGVtZW50IG9yIGxvbmcpPyBiZWZvcmUgPSBudWxsKTsKLSAgICBb
UmFpc2VzRXhjZXB0aW9uXSB2b2lkIGFkZChIVE1MRWxlbWVudCBlbGVtZW50LCBvcHRpb25hbCBI
VE1MRWxlbWVudD8gYmVmb3JlID0gbnVsbCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBh
ZGQoSFRNTEVsZW1lbnQgZWxlbWVudCwgbG9uZyBpbmRleCk7CisgICAgW01heVRocm93TGVnYWN5
RXhjZXB0aW9uXSB2b2lkIGFkZChIVE1MRWxlbWVudCBlbGVtZW50LCBvcHRpb25hbCBIVE1MRWxl
bWVudD8gYmVmb3JlID0gbnVsbCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lk
IGFkZChIVE1MRWxlbWVudCBlbGVtZW50LCBsb25nIGluZGV4KTsKIAogICAgIHZvaWQgcmVtb3Zl
KGxvbmcgaW5kZXgpOwogICAgIC8vIEZJWE1FOiBUaGlzIG92ZXJsb2FkIGlzIG5vdCBpbiB0aGUg
c3BlY2lmaWNhdGlvbiBhbmQgaGFzIGJlZW4gZHJvcHBlZCBpbiBCbGluay4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFByb2dyZXNzRWxlbWVudC5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxQcm9ncmVzc0VsZW1lbnQuaWRsCmluZGV4IGVmZjk5Nzg4Y2YzNDRjM2Vj
ZGI0MTdkYmIwZjZjOWE3MmQ3MWNhNmIuLjc4ZDYzODM1Yjg2NDY1MTlkY2U5YmNmYTk2NmVhYTVk
ZjY3MDQ1MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFByb2dyZXNzRWxl
bWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUHJvZ3Jlc3NFbGVtZW50Lmlk
bApAQCAtMTgsOCArMTgsOCBAQAogICovCiAKIGludGVyZmFjZSBIVE1MUHJvZ3Jlc3NFbGVtZW50
IDogSFRNTEVsZW1lbnQgewotICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSAg
dW5yZXN0cmljdGVkIGRvdWJsZSB2YWx1ZTsKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBh
dHRyaWJ1dGUgIHVucmVzdHJpY3RlZCBkb3VibGUgbWF4OworICAgIFtTZXR0ZXJNYXlUaHJvd0xl
Z2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlICB1bnJlc3RyaWN0ZWQgZG91YmxlIHZhbHVlOworICAg
IFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlICB1bnJlc3RyaWN0ZWQg
ZG91YmxlIG1heDsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgIHVucmVzdHJpY3RlZCBkb3VibGUg
ICAgICAgICAgICAgICAgcG9zaXRpb247CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlICBOb2RlTGlz
dCAgICAgICAgICAgICAgbGFiZWxzOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTFNlbGVjdEVsZW1lbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU2VsZWN0
RWxlbWVudC5pZGwKaW5kZXggZTM5ZjM5OGMwYTBhMDM0Y2NlMDg3OTg5MzhlYjQ1MDM1YTI2NTBh
MS4uMjljNjBjYjNmMGMxODYxZDZlNDZhNTAzNjQwZmY1MDEzYWJjMTljOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU2VsZWN0RWxlbWVudC5pZGwKKysrIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MU2VsZWN0RWxlbWVudC5pZGwKQEAgLTM1LDE3ICszNSwxNyBAQAogICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgdHlwZTsKIAogICAgIHJlYWRvbmx5IGF0dHJp
YnV0ZSBIVE1MT3B0aW9uc0NvbGxlY3Rpb24gb3B0aW9uczsKLSAgICBbU2V0dGVyUmFpc2VzRXhj
ZXB0aW9uXSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7CisgICAgW1NldHRlck1heVRo
cm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7CiAKICAg
ICBnZXR0ZXIgSFRNTE9wdGlvbkVsZW1lbnQ/IGl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CiAg
ICAgSFRNTE9wdGlvbkVsZW1lbnQ/IG5hbWVkSXRlbShET01TdHJpbmcgbmFtZSk7CiAKLSAgICBb
UmFpc2VzRXhjZXB0aW9uXSB2b2lkIGFkZChIVE1MRWxlbWVudCBlbGVtZW50LCBvcHRpb25hbCBI
VE1MRWxlbWVudD8gYmVmb3JlID0gbnVsbCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9u
XSB2b2lkIGFkZChIVE1MRWxlbWVudCBlbGVtZW50LCBvcHRpb25hbCBIVE1MRWxlbWVudD8gYmVm
b3JlID0gbnVsbCk7CiAgICAgLy8gRklYTUU6IFNob3VsZCBiZToKICAgICAvLyB2b2lkIGFkZCgo
SFRNTE9wdGlvbkVsZW1lbnQgb3IgSFRNTE9wdEdyb3VwRWxlbWVudCkgZWxlbWVudCwgb3B0aW9u
YWwgKEhUTUxFbGVtZW50IG9yIGxvbmcpPyBiZWZvcmUgPSBudWxsKTsKLSAgICBbUmFpc2VzRXhj
ZXB0aW9uXSB2b2lkIGFkZChIVE1MRWxlbWVudCBlbGVtZW50LCBsb25nIGluZGV4KTsKKyAgICBb
TWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgYWRkKEhUTUxFbGVtZW50IGVsZW1lbnQsIGxv
bmcgaW5kZXgpOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCByZW1vdmUoKTsgLy8gQ2hp
bGROb2RlIG92ZXJsb2FkCisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHJlbW92
ZSgpOyAvLyBDaGlsZE5vZGUgb3ZlcmxvYWQKICAgICAvLyBGSVhNRTogVGhpcyBvdmVybG9hZCBp
cyBub3QgaW4gdGhlIHNwZWNpZmljYXRpb24gYW5kIHdhcyBkcm9wcGVkIGluIEJsaW5rLgogICAg
IHZvaWQgcmVtb3ZlKEhUTUxPcHRpb25FbGVtZW50IG9wdGlvbik7CiAgICAgW0ltcGxlbWVudGVk
QXM9cmVtb3ZlQnlJbmRleF0gdm9pZCByZW1vdmUobG9uZyBpbmRleCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUYWJsZUVsZW1lbnQuaWRsIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MVGFibGVFbGVtZW50LmlkbAppbmRleCBlNzUzMzNjYTMxNDYxN2M5OTZjNTFjZGM0
OGJmY2UzODk4ZTc4ZTFkLi5lYjUzYjI4ZjdhYmNlNjljZmJlNDQzN2E5ZWJiNTQyODI0MTM5NGVm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUYWJsZUVsZW1lbnQuaWRsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRhYmxlRWxlbWVudC5pZGwKQEAgLTE5LDkgKzE5
LDkgQEAKICAqLwogCiBpbnRlcmZhY2UgSFRNTFRhYmxlRWxlbWVudCA6IEhUTUxFbGVtZW50IHsK
LSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgSFRNTFRhYmxlQ2FwdGlvbkVs
ZW1lbnQ/IGNhcHRpb247Ci0gICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIEhU
TUxUYWJsZVNlY3Rpb25FbGVtZW50PyB0SGVhZDsKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9u
XSBhdHRyaWJ1dGUgSFRNTFRhYmxlU2VjdGlvbkVsZW1lbnQ/IHRGb290OworICAgIFtTZXR0ZXJN
YXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIEhUTUxUYWJsZUNhcHRpb25FbGVtZW50
PyBjYXB0aW9uOworICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRl
IEhUTUxUYWJsZVNlY3Rpb25FbGVtZW50PyB0SGVhZDsKKyAgICBbU2V0dGVyTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb25dIGF0dHJpYnV0ZSBIVE1MVGFibGVTZWN0aW9uRWxlbWVudD8gdEZvb3Q7CiAK
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgSFRNTENvbGxlY3Rpb24gcm93czsKICAgICByZWFkb25s
eSBhdHRyaWJ1dGUgSFRNTENvbGxlY3Rpb24gdEJvZGllczsKQEAgLTQ1LDcgKzQ1LDcgQEAgaW50
ZXJmYWNlIEhUTUxUYWJsZUVsZW1lbnQgOiBIVE1MRWxlbWVudCB7CiAgICAgSFRNTEVsZW1lbnQg
Y3JlYXRlQ2FwdGlvbigpOwogICAgIHZvaWQgZGVsZXRlQ2FwdGlvbigpOwogCi0gICAgW1JhaXNl
c0V4Y2VwdGlvbl0gSFRNTEVsZW1lbnQgaW5zZXJ0Um93KG9wdGlvbmFsIGxvbmcgaW5kZXggPSAt
MSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBkZWxldGVSb3cobG9uZyBpbmRleCk7Cisg
ICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBIVE1MRWxlbWVudCBpbnNlcnRSb3cob3B0aW9u
YWwgbG9uZyBpbmRleCA9IC0xKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQg
ZGVsZXRlUm93KGxvbmcgaW5kZXgpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MVGFibGVSb3dFbGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRh
YmxlUm93RWxlbWVudC5pZGwKaW5kZXggMTBjODZkZDViYjRlYWVkMjg4ZDRmZDUxMzRlNmVlNjNi
ZThmZDVmNi4uN2NjNWIzYTkxYmRlZDA2N2JkMTlmYjM5MjJmMzBlZDcwNzNhY2YyMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFibGVSb3dFbGVtZW50LmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUYWJsZVJvd0VsZW1lbnQuaWRsCkBAIC0yNyw3ICsyNyw3
IEBAIGludGVyZmFjZSBIVE1MVGFibGVSb3dFbGVtZW50IDogSFRNTEVsZW1lbnQgewogICAgIFtS
ZWZsZWN0PWNoYXJdIGF0dHJpYnV0ZSBET01TdHJpbmcgY2g7CiAgICAgW1JlZmxlY3Q9Y2hhcm9m
Zl0gYXR0cmlidXRlIERPTVN0cmluZyBjaE9mZjsKICAgICBbUmVmbGVjdF0gYXR0cmlidXRlIERP
TVN0cmluZyB2QWxpZ247Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gSFRNTEVsZW1lbnQgaW5zZXJ0
Q2VsbChvcHRpb25hbCBsb25nIGluZGV4ID0gLTEpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZv
aWQgZGVsZXRlQ2VsbChsb25nIGluZGV4KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25d
IEhUTUxFbGVtZW50IGluc2VydENlbGwob3B0aW9uYWwgbG9uZyBpbmRleCA9IC0xKTsKKyAgICBb
TWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgZGVsZXRlQ2VsbChsb25nIGluZGV4KTsKIH07
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRhYmxlU2VjdGlvbkVsZW1l
bnQuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFibGVTZWN0aW9uRWxlbWVudC5pZGwK
aW5kZXggNTJkZDU1NTZiODAwM2RkODRlNGIzYWM5ZjE5MDBlNzIwYjI4ZmQzNy4uNzkzN2M3ZGI0
NGZhNzM3NzYyZDAxNGJkMjVjOTdmNjBjOGJjZWJlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MVGFibGVTZWN0aW9uRWxlbWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MVGFibGVTZWN0aW9uRWxlbWVudC5pZGwKQEAgLTI2LDcgKzI2LDcgQEAKICAgICBb
UmVmbGVjdD1jaGFyb2ZmXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGNoT2ZmOwogICAgIFtSZWZsZWN0
XSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHZBbGlnbjsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgSFRN
TENvbGxlY3Rpb24gcm93czsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBIVE1MRWxlbWVudCBpbnNl
cnRSb3cob3B0aW9uYWwgbG9uZyBpbmRleCA9IC0xKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2
b2lkIGRlbGV0ZVJvdyhsb25nIGluZGV4KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25d
IEhUTUxFbGVtZW50IGluc2VydFJvdyhvcHRpb25hbCBsb25nIGluZGV4ID0gLTEpOworICAgIFtN
YXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBkZWxldGVSb3cobG9uZyBpbmRleCk7CiB9Owog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuaWRs
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmlkbAppbmRleCA1OGU5
NGJkYmQxNDU1NzgxNjZlYmU4N2U3Zjc2NGRhODU4NDJiMTFmLi5kZGQyMTFhNWRjN2JiYjlhNGQ1
YTJlOWEzMjdjMmEwMmJjNmRiZWY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxUZXh0QXJlYUVsZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRB
cmVhRWxlbWVudC5pZGwKQEAgLTI0LDggKzI0LDggQEAgaW50ZXJmYWNlIEhUTUxUZXh0QXJlYUVs
ZW1lbnQgOiBIVE1MRWxlbWVudCB7CiAgICAgW1JlZmxlY3RdIGF0dHJpYnV0ZSBET01TdHJpbmcg
ZGlyTmFtZTsKICAgICBbUmVmbGVjdF0gYXR0cmlidXRlIGJvb2xlYW4gZGlzYWJsZWQ7CiAgICAg
cmVhZG9ubHkgYXR0cmlidXRlIEhUTUxGb3JtRWxlbWVudCBmb3JtOwotICAgIFtTZXR0ZXJSYWlz
ZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBsb25nIG1pbkxlbmd0aDsKLSAgICBbU2V0dGVyUmFpc2Vz
RXhjZXB0aW9uXSBhdHRyaWJ1dGUgbG9uZyBtYXhMZW5ndGg7CisgICAgW1NldHRlck1heVRocm93
TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgbG9uZyBtaW5MZW5ndGg7CisgICAgW1NldHRlck1h
eVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgbG9uZyBtYXhMZW5ndGg7CiAgICAgW1Jl
ZmxlY3RdIGF0dHJpYnV0ZSBET01TdHJpbmcgbmFtZTsKICAgICBbUmVmbGVjdF0gYXR0cmlidXRl
IERPTVN0cmluZyBwbGFjZWhvbGRlcjsKICAgICBbUmVmbGVjdF0gYXR0cmlidXRlIGJvb2xlYW4g
cmVhZE9ubHk7CkBAIC01Miw4ICs1Miw4IEBAIGludGVyZmFjZSBIVE1MVGV4dEFyZWFFbGVtZW50
IDogSFRNTEVsZW1lbnQgewogICAgIGF0dHJpYnV0ZSBsb25nIHNlbGVjdGlvbkVuZDsKICAgICBh
dHRyaWJ1dGUgRE9NU3RyaW5nIHNlbGVjdGlvbkRpcmVjdGlvbjsKIAotICAgIFtSYWlzZXNFeGNl
cHRpb25dIHZvaWQgc2V0UmFuZ2VUZXh0KERPTVN0cmluZyByZXBsYWNlbWVudCk7Ci0gICAgW1Jh
aXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRSYW5nZVRleHQoRE9NU3RyaW5nIHJlcGxhY2VtZW50LAor
ICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRSYW5nZVRleHQoRE9NU3RyaW5n
IHJlcGxhY2VtZW50KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0UmFu
Z2VUZXh0KERPTVN0cmluZyByZXBsYWNlbWVudCwKICAgICAgICAgICAgICAgICAgICAgICAgIHVu
c2lnbmVkIGxvbmcgc3RhcnQsCiAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25n
IGVuZCwKICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbmFsIERPTVN0cmluZyBzZWxlY3Rp
b25Nb2RlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVu
dC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuaWRsCmluZGV4IDI2
MWYzYjNhYWE5ODYwN2ZlZTI1MmUwM2M4MDQ0MjEwODE3OWZjYTIuLjViNzc1MTQ0YzNiNjRhNjk4
YzhhODk3MDBkYWMxYWFhZmFhNmNjZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTFZpZGVvRWxlbWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9F
bGVtZW50LmlkbApAQCAtMzcsMTEgKzM3LDExIEBACiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGJv
b2xlYW4gd2Via2l0U3VwcG9ydHNGdWxsc2NyZWVuOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBi
b29sZWFuIHdlYmtpdERpc3BsYXlpbmdGdWxsc2NyZWVuOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlv
bl0gdm9pZCB3ZWJraXRFbnRlckZ1bGxzY3JlZW4oKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNl
cHRpb25dIHZvaWQgd2Via2l0RW50ZXJGdWxsc2NyZWVuKCk7CiAgICAgdm9pZCB3ZWJraXRFeGl0
RnVsbHNjcmVlbigpOwogCiAgICAgLy8gTm90ZSB0aGUgZGlmZmVyZW50IGNhcGl0YWxpemF0aW9u
IG9mIHRoZSAiUyIgaW4gRnVsbFNjcmVlbi4KLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHdl
YmtpdEVudGVyRnVsbFNjcmVlbigpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9p
ZCB3ZWJraXRFbnRlckZ1bGxTY3JlZW4oKTsKICAgICB2b2lkIHdlYmtpdEV4aXRGdWxsU2NyZWVu
KCk7CiAKICAgICBbQ29uZGl0aW9uYWw9V0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUXSBhdHRyaWJ1
dGUgYm9vbGVhbiB3ZWJraXRXaXJlbGVzc1ZpZGVvUGxheWJhY2tEaXNhYmxlZDsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW1hZ2VEYXRhLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSW1hZ2VEYXRhLmlkbAppbmRleCBjOTdkNmQ5ZTIzZjQwYjRhNDg3YzYxMTMyOWVjZjEyMzY4
ZTliZDk3Li5kYzYyODIxOWYyY2FlOGY3OGE0OGVkOTcyMDU1NzMxNjFjYWNjZmFlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0ltYWdlRGF0YS5pZGwKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9JbWFnZURhdGEuaWRsCkBAIC0yOSw3ICsyOSw3IEBACiBbCiAgICAgQ29uc3RydWN0
b3IoVWludDhDbGFtcGVkQXJyYXkgZGF0YSwgdW5zaWduZWQgbG9uZyBzdywgb3B0aW9uYWwgdW5z
aWduZWQgbG9uZyBzaCA9IDApLAogICAgIENvbnN0cnVjdG9yKHVuc2lnbmVkIGxvbmcgc3csIHVu
c2lnbmVkIGxvbmcgc2gpLAotICAgIENvbnN0cnVjdG9yUmFpc2VzRXhjZXB0aW9uLAorICAgIENv
bnN0cnVjdG9yTWF5VGhyb3dMZWdhY3lFeGNlcHRpb24sCiAgICAgQ3VzdG9tVG9KU09iamVjdCwK
ICAgICBFeHBvc2VkPShXaW5kb3csV29ya2VyKSwKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRh
YmxlLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9NZWRpYUNvbnRyb2xsZXIuaWRs
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9NZWRpYUNvbnRyb2xsZXIuaWRsCmluZGV4IGM1YzQyY2Vl
Mzc0OTA4NWUzMDQ5ZWMwODY2ZDRkNzM5NzkxZWY1NmMuLjEyMjMyMGFjMzc1MGVlNjYzNDZlZjRk
MWM0MzAwMzBmNjg0YmVjZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvTWVkaWFD
b250cm9sbGVyLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL01lZGlhQ29udHJvbGxlci5p
ZGwKQEAgLTQ0LDYgKzQ0LDYgQEAKICAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGRvdWJsZSBk
ZWZhdWx0UGxheWJhY2tSYXRlOwogICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91YmxlIHBs
YXliYWNrUmF0ZTsKIAotICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJl
c3RyaWN0ZWQgZG91YmxlIHZvbHVtZTsKKyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRp
b25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91YmxlIHZvbHVtZTsKICAgICBhdHRyaWJ1dGUg
Ym9vbGVhbiBtdXRlZDsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1RpbWVS
YW5nZXMuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9UaW1lUmFuZ2VzLmlkbAppbmRleCA2ZmRk
OTlhY2ZmZmEzMjI4NDZmZWQzMWI5Yjc3ODkyZThiOGYwNTgwLi4yYTNiYWNiMjFiOTk0NDUyZGY2
NmI5ZjhmNmFmYzU1YzU1NmQ0ZjJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1Rp
bWVSYW5nZXMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGltZVJhbmdlcy5pZGwKQEAg
LTI5LDcgKzI5LDcgQEAKICAgICBFeHBvcnRNYWNybz1XRUJDT1JFX0VYUE9SVCwKIF0gaW50ZXJm
YWNlIFRpbWVSYW5nZXMgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxl
bmd0aDsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB1bnJlc3RyaWN0ZWQgZG91YmxlIHN0YXJ0KHVu
c2lnbmVkIGxvbmcgaW5kZXgpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHVucmVzdHJpY3RlZCBk
b3VibGUgZW5kKHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gdW5yZXN0cmljdGVkIGRvdWJsZSBzdGFydCh1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAg
ICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHVucmVzdHJpY3RlZCBkb3VibGUgZW5kKHVuc2ln
bmVkIGxvbmcgaW5kZXgpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9V
UkxVdGlscy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1VSTFV0aWxzLmlkbAppbmRleCBhYmY2
YzM0ZmRkZWFjZDFjNDNkYTRmMmJjNGI5YTg1NTg2NmFhYTYwLi44M2EwZTNmMTVhYTQzNzNjY2M4
ZDAwMzJlMzJjY2I2OTZhOTEzZDI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1VS
TFV0aWxzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1VSTFV0aWxzLmlkbApAQCAtMjQs
NyArMjQsNyBAQAogICovCiAKIFtOb0ludGVyZmFjZU9iamVjdF0gaW50ZXJmYWNlIFVSTFV0aWxz
IHsKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uLCBVUkxdIGF0dHJpYnV0ZSBVU1ZTdHJpbmcg
aHJlZjsKKyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb24sIFVSTF0gYXR0cmlidXRl
IFVTVlN0cmluZyBocmVmOwogCiAgICAgW05vdEVudW1lcmFibGVdIERPTVN0cmluZyB0b1N0cmlu
ZygpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNHcmFk
aWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNHcmFkaWVudC5pZGwK
aW5kZXggMWI4YWIyNGYzYjMwZDQ2ZmZlNGM0MzFhMGU1YWIyY2ZlZTY0MWFiMy4uY2NkYTMxMGQ3
ODhhYzg4NDk4YjAwZTcyNzZlYWQ3NTAzYjUzZmFlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC9jYW52YXMvQ2FudmFzR3JhZGllbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvY2FudmFzL0NhbnZhc0dyYWRpZW50LmlkbApAQCAtMjUsNiArMjUsNiBAQAogWwogICAgIElt
cGxlbWVudGF0aW9uTGFja3NWVGFibGUsCiBdIGludGVyZmFjZSBDYW52YXNHcmFkaWVudCB7Ci0g
ICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBhZGRDb2xvclN0b3AoZmxvYXQgb2Zmc2V0LCBET01T
dHJpbmcgY29sb3IpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBhZGRDb2xv
clN0b3AoZmxvYXQgb2Zmc2V0LCBET01TdHJpbmcgY29sb3IpOwogfTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvQ2FudmFzUGF0aC5pZGwgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL2NhbnZhcy9DYW52YXNQYXRoLmlkbAppbmRleCA1YjJlZjNjMzVmYTIxNGQ3ZjUwMmI3
ZjEzODdlMTA1Zjg3MWQ1ZDZmLi5kYmRiZDg2NGYzM2Y2MTg2OGFiNDk3Y2QxYTEyZDgxMjhkZWRk
MDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNQYXRoLmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNQYXRoLmlkbApAQCAtMzMs
OSArMzMsOSBAQAogICAgIHZvaWQgbGluZVRvKHVucmVzdHJpY3RlZCBkb3VibGUgeCwgdW5yZXN0
cmljdGVkIGRvdWJsZSB5KTsKICAgICB2b2lkIHF1YWRyYXRpY0N1cnZlVG8odW5yZXN0cmljdGVk
IGRvdWJsZSBjcHgsIHVucmVzdHJpY3RlZCBkb3VibGUgY3B5LCB1bnJlc3RyaWN0ZWQgZG91Ymxl
IHgsIHVucmVzdHJpY3RlZCBkb3VibGUgeSk7CiAgICAgdm9pZCBiZXppZXJDdXJ2ZVRvKHVucmVz
dHJpY3RlZCBkb3VibGUgY3AxeCwgdW5yZXN0cmljdGVkIGRvdWJsZSBjcDF5LCB1bnJlc3RyaWN0
ZWQgZG91YmxlIGNwMngsIHVucmVzdHJpY3RlZCBkb3VibGUgY3AyeSwgdW5yZXN0cmljdGVkIGRv
dWJsZSB4LCB1bnJlc3RyaWN0ZWQgZG91YmxlIHkpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZv
aWQgYXJjVG8odW5yZXN0cmljdGVkIGRvdWJsZSB4MSwgdW5yZXN0cmljdGVkIGRvdWJsZSB5MSwg
dW5yZXN0cmljdGVkIGRvdWJsZSB4MiwgdW5yZXN0cmljdGVkIGRvdWJsZSB5MiwgdW5yZXN0cmlj
dGVkIGRvdWJsZSByYWRpdXMpOwotICAgIC8vIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgYXJjVG8o
dW5yZXN0cmljdGVkIGRvdWJsZSB4MSwgdW5yZXN0cmljdGVkIGRvdWJsZSB5MSwgdW5yZXN0cmlj
dGVkIGRvdWJsZSB4MiwgdW5yZXN0cmljdGVkIGRvdWJsZSB5MiwgdW5yZXN0cmljdGVkIGRvdWJs
ZSByYWRpdXNYLCB1bnJlc3RyaWN0ZWQgZG91YmxlIHJhZGl1c1ksIHVucmVzdHJpY3RlZCBkb3Vi
bGUgcm90YXRpb24pOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBhcmNUbyh1
bnJlc3RyaWN0ZWQgZG91YmxlIHgxLCB1bnJlc3RyaWN0ZWQgZG91YmxlIHkxLCB1bnJlc3RyaWN0
ZWQgZG91YmxlIHgyLCB1bnJlc3RyaWN0ZWQgZG91YmxlIHkyLCB1bnJlc3RyaWN0ZWQgZG91Ymxl
IHJhZGl1cyk7CisgICAgLy8gW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIGFyY1RvKHVu
cmVzdHJpY3RlZCBkb3VibGUgeDEsIHVucmVzdHJpY3RlZCBkb3VibGUgeTEsIHVucmVzdHJpY3Rl
ZCBkb3VibGUgeDIsIHVucmVzdHJpY3RlZCBkb3VibGUgeTIsIHVucmVzdHJpY3RlZCBkb3VibGUg
cmFkaXVzWCwgdW5yZXN0cmljdGVkIGRvdWJsZSByYWRpdXNZLCB1bnJlc3RyaWN0ZWQgZG91Ymxl
IHJvdGF0aW9uKTsKICAgICB2b2lkIHJlY3QodW5yZXN0cmljdGVkIGRvdWJsZSB4LCB1bnJlc3Ry
aWN0ZWQgZG91YmxlIHksIHVucmVzdHJpY3RlZCBkb3VibGUgdywgdW5yZXN0cmljdGVkIGRvdWJs
ZSBoKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGFyYyh1bnJlc3RyaWN0ZWQgZG91Ymxl
IHgsIHVucmVzdHJpY3RlZCBkb3VibGUgeSwgdW5yZXN0cmljdGVkIGRvdWJsZSByYWRpdXMsIHVu
cmVzdHJpY3RlZCBkb3VibGUgc3RhcnRBbmdsZSwgdW5yZXN0cmljdGVkIGRvdWJsZSBlbmRBbmds
ZSwgb3B0aW9uYWwgYm9vbGVhbiBhbnRpY2xvY2t3aXNlID0gZmFsc2UpOwotICAgIFtSYWlzZXNF
eGNlcHRpb25dIHZvaWQgZWxsaXBzZSh1bnJlc3RyaWN0ZWQgZG91YmxlIHgsIHVucmVzdHJpY3Rl
ZCBkb3VibGUgeSwgdW5yZXN0cmljdGVkIGRvdWJsZSByYWRpdXNYLCB1bnJlc3RyaWN0ZWQgZG91
YmxlIHJhZGl1c1ksIHVucmVzdHJpY3RlZCBkb3VibGUgcm90YXRpb24sIHVucmVzdHJpY3RlZCBk
b3VibGUgc3RhcnRBbmdsZSwgdW5yZXN0cmljdGVkIGRvdWJsZSBlbmRBbmdsZSwgb3B0aW9uYWwg
Ym9vbGVhbiBhbnRpY2xvY2t3aXNlID0gZmFsc2UpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gdm9pZCBhcmModW5yZXN0cmljdGVkIGRvdWJsZSB4LCB1bnJlc3RyaWN0ZWQgZG91Ymxl
IHksIHVucmVzdHJpY3RlZCBkb3VibGUgcmFkaXVzLCB1bnJlc3RyaWN0ZWQgZG91YmxlIHN0YXJ0
QW5nbGUsIHVucmVzdHJpY3RlZCBkb3VibGUgZW5kQW5nbGUsIG9wdGlvbmFsIGJvb2xlYW4gYW50
aWNsb2Nrd2lzZSA9IGZhbHNlKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQg
ZWxsaXBzZSh1bnJlc3RyaWN0ZWQgZG91YmxlIHgsIHVucmVzdHJpY3RlZCBkb3VibGUgeSwgdW5y
ZXN0cmljdGVkIGRvdWJsZSByYWRpdXNYLCB1bnJlc3RyaWN0ZWQgZG91YmxlIHJhZGl1c1ksIHVu
cmVzdHJpY3RlZCBkb3VibGUgcm90YXRpb24sIHVucmVzdHJpY3RlZCBkb3VibGUgc3RhcnRBbmds
ZSwgdW5yZXN0cmljdGVkIGRvdWJsZSBlbmRBbmdsZSwgb3B0aW9uYWwgYm9vbGVhbiBhbnRpY2xv
Y2t3aXNlID0gZmFsc2UpOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2Fu
dmFzL0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2Nh
bnZhcy9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQuaWRsCmluZGV4IDVmN2M2NTZkODBjMjA1OTlm
MjdlMTc2OGRjOTI5MzYwMTY1MzI2ZWQuLjkyNTk4MzdjZGIwYTAwODBiOTcxYmNjODY5MTkxNzU2
OTE3MzFiMDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0NhbnZhc1Jl
bmRlcmluZ0NvbnRleHQyRC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvQ2Fu
dmFzUmVuZGVyaW5nQ29udGV4dDJELmlkbApAQCAtNTMsOCArNTMsOCBAQCBlbnVtIENhbnZhc1dp
bmRpbmdSdWxlIHsgIm5vbnplcm8iLCAiZXZlbm9kZCIgfTsKIAogICAgIGF0dHJpYnV0ZSBET01T
dHJpbmcgZ2xvYmFsQ29tcG9zaXRlT3BlcmF0aW9uOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0g
Q2FudmFzR3JhZGllbnQgY3JlYXRlTGluZWFyR3JhZGllbnQoZmxvYXQgeDAsIGZsb2F0IHkwLCBm
bG9hdCB4MSwgZmxvYXQgeTEpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIENhbnZhc0dyYWRpZW50
IGNyZWF0ZVJhZGlhbEdyYWRpZW50KGZsb2F0IHgwLCBmbG9hdCB5MCwgZmxvYXQgcjAsIGZsb2F0
IHgxLCBmbG9hdCB5MSwgZmxvYXQgcjEpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0g
Q2FudmFzR3JhZGllbnQgY3JlYXRlTGluZWFyR3JhZGllbnQoZmxvYXQgeDAsIGZsb2F0IHkwLCBm
bG9hdCB4MSwgZmxvYXQgeTEpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gQ2FudmFz
R3JhZGllbnQgY3JlYXRlUmFkaWFsR3JhZGllbnQoZmxvYXQgeDAsIGZsb2F0IHkwLCBmbG9hdCBy
MCwgZmxvYXQgeDEsIGZsb2F0IHkxLCBmbG9hdCByMSk7CiAKICAgICBhdHRyaWJ1dGUgdW5yZXN0
cmljdGVkIGZsb2F0IGxpbmVXaWR0aDsKICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nIGxpbmVDYXA7
CkBAIC0xMzIsMjAgKzEzMiwyMCBAQCBlbnVtIENhbnZhc1dpbmRpbmdSdWxlIHsgIm5vbnplcm8i
LCAiZXZlbm9kZCIgfTsKIAogICAgIHZvaWQgc3Ryb2tlUmVjdCh1bnJlc3RyaWN0ZWQgZmxvYXQg
eCwgdW5yZXN0cmljdGVkIGZsb2F0IHksIHVucmVzdHJpY3RlZCBmbG9hdCB3aWR0aCwgdW5yZXN0
cmljdGVkIGZsb2F0IGhlaWdodCk7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGRyYXdJ
bWFnZShIVE1MSW1hZ2VFbGVtZW50IGltYWdlLCB1bnJlc3RyaWN0ZWQgZmxvYXQgeCwgdW5yZXN0
cmljdGVkIGZsb2F0IHkpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgZHJhd0ltYWdlKEhU
TUxJbWFnZUVsZW1lbnQgaW1hZ2UsIHVucmVzdHJpY3RlZCBmbG9hdCB4LCB1bnJlc3RyaWN0ZWQg
ZmxvYXQgeSwKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgZHJhd0ltYWdlKEhU
TUxJbWFnZUVsZW1lbnQgaW1hZ2UsIHVucmVzdHJpY3RlZCBmbG9hdCB4LCB1bnJlc3RyaWN0ZWQg
ZmxvYXQgeSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIGRyYXdJbWFnZShI
VE1MSW1hZ2VFbGVtZW50IGltYWdlLCB1bnJlc3RyaWN0ZWQgZmxvYXQgeCwgdW5yZXN0cmljdGVk
IGZsb2F0IHksCiAgICAgICAgIHVucmVzdHJpY3RlZCBmbG9hdCB3aWR0aCwgdW5yZXN0cmljdGVk
IGZsb2F0IGhlaWdodCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBkcmF3SW1hZ2UoSFRN
TEltYWdlRWxlbWVudCBpbWFnZSwgdW5yZXN0cmljdGVkIGZsb2F0IHN4LCB1bnJlc3RyaWN0ZWQg
ZmxvYXQgc3ksIHVucmVzdHJpY3RlZCBmbG9hdCBzdywKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNl
cHRpb25dIHZvaWQgZHJhd0ltYWdlKEhUTUxJbWFnZUVsZW1lbnQgaW1hZ2UsIHVucmVzdHJpY3Rl
ZCBmbG9hdCBzeCwgdW5yZXN0cmljdGVkIGZsb2F0IHN5LCB1bnJlc3RyaWN0ZWQgZmxvYXQgc3cs
CiAgICAgICAgIHVucmVzdHJpY3RlZCBmbG9hdCBzaCwgdW5yZXN0cmljdGVkIGZsb2F0IGR4LCB1
bnJlc3RyaWN0ZWQgZmxvYXQgZHksIHVucmVzdHJpY3RlZCBmbG9hdCBkdywgdW5yZXN0cmljdGVk
IGZsb2F0IGRoKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGRyYXdJbWFnZShIVE1MQ2Fu
dmFzRWxlbWVudCBjYW52YXMsIHVucmVzdHJpY3RlZCBmbG9hdCB4LCB1bnJlc3RyaWN0ZWQgZmxv
YXQgeSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBkcmF3SW1hZ2UoSFRNTENhbnZhc0Vs
ZW1lbnQgY2FudmFzLCB1bnJlc3RyaWN0ZWQgZmxvYXQgeCwgdW5yZXN0cmljdGVkIGZsb2F0IHks
CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIGRyYXdJbWFnZShIVE1MQ2FudmFz
RWxlbWVudCBjYW52YXMsIHVucmVzdHJpY3RlZCBmbG9hdCB4LCB1bnJlc3RyaWN0ZWQgZmxvYXQg
eSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIGRyYXdJbWFnZShIVE1MQ2Fu
dmFzRWxlbWVudCBjYW52YXMsIHVucmVzdHJpY3RlZCBmbG9hdCB4LCB1bnJlc3RyaWN0ZWQgZmxv
YXQgeSwKICAgICAgICAgdW5yZXN0cmljdGVkIGZsb2F0IHdpZHRoLCB1bnJlc3RyaWN0ZWQgZmxv
YXQgaGVpZ2h0KTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGRyYXdJbWFnZShIVE1MQ2Fu
dmFzRWxlbWVudCBjYW52YXMsIHVucmVzdHJpY3RlZCBmbG9hdCBzeCwgdW5yZXN0cmljdGVkIGZs
b2F0IHN5LCB1bnJlc3RyaWN0ZWQgZmxvYXQgc3csCisgICAgW01heVRocm93TGVnYWN5RXhjZXB0
aW9uXSB2b2lkIGRyYXdJbWFnZShIVE1MQ2FudmFzRWxlbWVudCBjYW52YXMsIHVucmVzdHJpY3Rl
ZCBmbG9hdCBzeCwgdW5yZXN0cmljdGVkIGZsb2F0IHN5LCB1bnJlc3RyaWN0ZWQgZmxvYXQgc3cs
CiAgICAgICAgIHVucmVzdHJpY3RlZCBmbG9hdCBzaCwgdW5yZXN0cmljdGVkIGZsb2F0IGR4LCB1
bnJlc3RyaWN0ZWQgZmxvYXQgZHksIHVucmVzdHJpY3RlZCBmbG9hdCBkdywgdW5yZXN0cmljdGVk
IGZsb2F0IGRoKTsKLSAgICBbQ29uZGl0aW9uYWw9VklERU8sIFJhaXNlc0V4Y2VwdGlvbl0gdm9p
ZCBkcmF3SW1hZ2UoSFRNTFZpZGVvRWxlbWVudCB2aWRlbywgdW5yZXN0cmljdGVkIGZsb2F0IHgs
IHVucmVzdHJpY3RlZCBmbG9hdCB5KTsKLSAgICBbQ29uZGl0aW9uYWw9VklERU8sIFJhaXNlc0V4
Y2VwdGlvbl0gdm9pZCBkcmF3SW1hZ2UoSFRNTFZpZGVvRWxlbWVudCB2aWRlbywgdW5yZXN0cmlj
dGVkIGZsb2F0IHgsIHVucmVzdHJpY3RlZCBmbG9hdCB5LAorICAgIFtDb25kaXRpb25hbD1WSURF
TywgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgZHJhd0ltYWdlKEhUTUxWaWRlb0VsZW1l
bnQgdmlkZW8sIHVucmVzdHJpY3RlZCBmbG9hdCB4LCB1bnJlc3RyaWN0ZWQgZmxvYXQgeSk7Cisg
ICAgW0NvbmRpdGlvbmFsPVZJREVPLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBkcmF3
SW1hZ2UoSFRNTFZpZGVvRWxlbWVudCB2aWRlbywgdW5yZXN0cmljdGVkIGZsb2F0IHgsIHVucmVz
dHJpY3RlZCBmbG9hdCB5LAogICAgICAgICB1bnJlc3RyaWN0ZWQgZmxvYXQgd2lkdGgsIHVucmVz
dHJpY3RlZCBmbG9hdCBoZWlnaHQpOwotICAgIFtDb25kaXRpb25hbD1WSURFTywgUmFpc2VzRXhj
ZXB0aW9uXSB2b2lkIGRyYXdJbWFnZShIVE1MVmlkZW9FbGVtZW50IHZpZGVvLCB1bnJlc3RyaWN0
ZWQgZmxvYXQgc3gsIHVucmVzdHJpY3RlZCBmbG9hdCBzeSwgdW5yZXN0cmljdGVkIGZsb2F0IHN3
LAorICAgIFtDb25kaXRpb25hbD1WSURFTywgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQg
ZHJhd0ltYWdlKEhUTUxWaWRlb0VsZW1lbnQgdmlkZW8sIHVucmVzdHJpY3RlZCBmbG9hdCBzeCwg
dW5yZXN0cmljdGVkIGZsb2F0IHN5LCB1bnJlc3RyaWN0ZWQgZmxvYXQgc3csCiAgICAgICAgIHVu
cmVzdHJpY3RlZCBmbG9hdCBzaCwgdW5yZXN0cmljdGVkIGZsb2F0IGR4LCB1bnJlc3RyaWN0ZWQg
ZmxvYXQgZHksIHVucmVzdHJpY3RlZCBmbG9hdCBkdywgdW5yZXN0cmljdGVkIGZsb2F0IGRoKTsK
IAogICAgIHZvaWQgZHJhd0ltYWdlRnJvbVJlY3QoSFRNTEltYWdlRWxlbWVudCBpbWFnZSwKQEAg
LTE2MiwyNSArMTYyLDI1IEBAIGVudW0gQ2FudmFzV2luZGluZ1J1bGUgeyAibm9uemVybyIsICJl
dmVub2RkIiB9OwogICAgIHZvaWQgc2V0U2hhZG93KGZsb2F0IHdpZHRoLCB1bnJlc3RyaWN0ZWQg
ZmxvYXQgaGVpZ2h0LCB1bnJlc3RyaWN0ZWQgZmxvYXQgYmx1ciwgdW5yZXN0cmljdGVkIGZsb2F0
IGMsIHVucmVzdHJpY3RlZCBmbG9hdCBtLCAKICAgICAgICAgdW5yZXN0cmljdGVkIGZsb2F0IHks
IHVucmVzdHJpY3RlZCBmbG9hdCBrLCB1bnJlc3RyaWN0ZWQgZmxvYXQgYSk7CiAKLSAgICBbUmFp
c2VzRXhjZXB0aW9uXSB2b2lkIHB1dEltYWdlRGF0YShJbWFnZURhdGEgaW1hZ2VkYXRhLCBmbG9h
dCBkeCwgZmxvYXQgZHkpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgcHV0SW1hZ2VEYXRh
KEltYWdlRGF0YSBpbWFnZWRhdGEsIGZsb2F0IGR4LCBmbG9hdCBkeSwgZmxvYXQgZGlydHlYLCBm
bG9hdCBkaXJ0eVksIGZsb2F0IGRpcnR5V2lkdGgsIGZsb2F0IGRpcnR5SGVpZ2h0KTsKKyAgICBb
TWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgcHV0SW1hZ2VEYXRhKEltYWdlRGF0YSBpbWFn
ZWRhdGEsIGZsb2F0IGR4LCBmbG9hdCBkeSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9u
XSB2b2lkIHB1dEltYWdlRGF0YShJbWFnZURhdGEgaW1hZ2VkYXRhLCBmbG9hdCBkeCwgZmxvYXQg
ZHksIGZsb2F0IGRpcnR5WCwgZmxvYXQgZGlydHlZLCBmbG9hdCBkaXJ0eVdpZHRoLCBmbG9hdCBk
aXJ0eUhlaWdodCk7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHdlYmtpdFB1dEltYWdl
RGF0YUhEKEltYWdlRGF0YSBpbWFnZWRhdGEsIGZsb2F0IGR4LCBmbG9hdCBkeSk7Ci0gICAgW1Jh
aXNlc0V4Y2VwdGlvbl0gdm9pZCB3ZWJraXRQdXRJbWFnZURhdGFIRChJbWFnZURhdGEgaW1hZ2Vk
YXRhLCBmbG9hdCBkeCwgZmxvYXQgZHksIGZsb2F0IGRpcnR5WCwgZmxvYXQgZGlydHlZLCBmbG9h
dCBkaXJ0eVdpZHRoLCBmbG9hdCBkaXJ0eUhlaWdodCk7CisgICAgW01heVRocm93TGVnYWN5RXhj
ZXB0aW9uXSB2b2lkIHdlYmtpdFB1dEltYWdlRGF0YUhEKEltYWdlRGF0YSBpbWFnZWRhdGEsIGZs
b2F0IGR4LCBmbG9hdCBkeSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHdl
YmtpdFB1dEltYWdlRGF0YUhEKEltYWdlRGF0YSBpbWFnZWRhdGEsIGZsb2F0IGR4LCBmbG9hdCBk
eSwgZmxvYXQgZGlydHlYLCBmbG9hdCBkaXJ0eVksIGZsb2F0IGRpcnR5V2lkdGgsIGZsb2F0IGRp
cnR5SGVpZ2h0KTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIENhbnZhc1BhdHRlcm4gY3JlYXRl
UGF0dGVybihIVE1MQ2FudmFzRWxlbWVudCBjYW52YXMsIFtUcmVhdE51bGxBcz1FbXB0eVN0cmlu
Z10gRE9NU3RyaW5nIHJlcGV0aXRpb25UeXBlKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBDYW52
YXNQYXR0ZXJuIGNyZWF0ZVBhdHRlcm4oSFRNTEltYWdlRWxlbWVudCBpbWFnZSwgW1RyZWF0TnVs
bEFzPUVtcHR5U3RyaW5nXSBET01TdHJpbmcgcmVwZXRpdGlvblR5cGUpOwotICAgIFtDb25kaXRp
b25hbD1WSURFTywgUmFpc2VzRXhjZXB0aW9uXSBDYW52YXNQYXR0ZXJuPyBjcmVhdGVQYXR0ZXJu
KEhUTUxWaWRlb0VsZW1lbnQgdmlkZW8sIFtUcmVhdE51bGxBcz1FbXB0eVN0cmluZ10gRE9NU3Ry
aW5nIHJlcGV0aXRpb25UeXBlKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBJbWFnZURhdGEgY3Jl
YXRlSW1hZ2VEYXRhKEltYWdlRGF0YT8gaW1hZ2VkYXRhKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9u
XSBJbWFnZURhdGEgY3JlYXRlSW1hZ2VEYXRhKGZsb2F0IHN3LCBmbG9hdCBzaCk7CisgICAgW01h
eVRocm93TGVnYWN5RXhjZXB0aW9uXSBDYW52YXNQYXR0ZXJuIGNyZWF0ZVBhdHRlcm4oSFRNTENh
bnZhc0VsZW1lbnQgY2FudmFzLCBbVHJlYXROdWxsQXM9RW1wdHlTdHJpbmddIERPTVN0cmluZyBy
ZXBldGl0aW9uVHlwZSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBDYW52YXNQYXR0
ZXJuIGNyZWF0ZVBhdHRlcm4oSFRNTEltYWdlRWxlbWVudCBpbWFnZSwgW1RyZWF0TnVsbEFzPUVt
cHR5U3RyaW5nXSBET01TdHJpbmcgcmVwZXRpdGlvblR5cGUpOworICAgIFtDb25kaXRpb25hbD1W
SURFTywgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIENhbnZhc1BhdHRlcm4/IGNyZWF0ZVBhdHRl
cm4oSFRNTFZpZGVvRWxlbWVudCB2aWRlbywgW1RyZWF0TnVsbEFzPUVtcHR5U3RyaW5nXSBET01T
dHJpbmcgcmVwZXRpdGlvblR5cGUpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gSW1h
Z2VEYXRhIGNyZWF0ZUltYWdlRGF0YShJbWFnZURhdGE/IGltYWdlZGF0YSk7CisgICAgW01heVRo
cm93TGVnYWN5RXhjZXB0aW9uXSBJbWFnZURhdGEgY3JlYXRlSW1hZ2VEYXRhKGZsb2F0IHN3LCBm
bG9hdCBzaCk7CiAKICAgICBbQ3VzdG9tXSBhdHRyaWJ1dGUgY3VzdG9tIHN0cm9rZVN0eWxlOwog
ICAgIFtDdXN0b21dIGF0dHJpYnV0ZSBjdXN0b20gZmlsbFN0eWxlOwogCiAgICAgLy8gcGl4ZWwg
bWFuaXB1bGF0aW9uCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gSW1hZ2VEYXRhIGdldEltYWdlRGF0
YShmbG9hdCBzeCwgZmxvYXQgc3ksIGZsb2F0IHN3LCBmbG9hdCBzaCk7CisgICAgW01heVRocm93
TGVnYWN5RXhjZXB0aW9uXSBJbWFnZURhdGEgZ2V0SW1hZ2VEYXRhKGZsb2F0IHN4LCBmbG9hdCBz
eSwgZmxvYXQgc3csIGZsb2F0IHNoKTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIEltYWdlRGF0
YSB3ZWJraXRHZXRJbWFnZURhdGFIRChmbG9hdCBzeCwgZmxvYXQgc3ksIGZsb2F0IHN3LCBmbG9h
dCBzaCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBJbWFnZURhdGEgd2Via2l0R2V0
SW1hZ2VEYXRhSEQoZmxvYXQgc3gsIGZsb2F0IHN5LCBmbG9hdCBzdywgZmxvYXQgc2gpOwogICAg
IAogICAgIC8vIEZvY3VzIHJpbmdzCiAgICAgdm9pZCBkcmF3Rm9jdXNJZk5lZWRlZChFbGVtZW50
PyBlbGVtZW50KTsgLy8gRklYTUU6IFRoZSBlbGVtZW50IHBhcmFtZXRlciBzaG91bGQgbm90IGJl
IG51bGxhYmxlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvT0VTVmVy
dGV4QXJyYXlPYmplY3QuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvT0VTVmVydGV4
QXJyYXlPYmplY3QuaWRsCmluZGV4IDEwNjEyNTdjZDkzOTQyYzVlYmE5OGI3OGVjZDUxZGVjNmI4
OTAzNjYuLmM3YmYzMzhlZDhjMTBmMzJjY2ZlMzEwOWI4NmZmZDA3NWU0OWFmM2YgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL09FU1ZlcnRleEFycmF5T2JqZWN0LmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9PRVNWZXJ0ZXhBcnJheU9iamVjdC5pZGwK
QEAgLTM0LDUgKzM0LDUgQEAKICAgICBXZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTIGNyZWF0ZVZl
cnRleEFycmF5T0VTKCk7CiAgICAgdm9pZCBkZWxldGVWZXJ0ZXhBcnJheU9FUyhvcHRpb25hbCBX
ZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTPyBhcnJheU9iamVjdCA9IG51bGwpOwogICAgIGJvb2xl
YW4gaXNWZXJ0ZXhBcnJheU9FUyhvcHRpb25hbCBXZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTPyBh
cnJheU9iamVjdCA9IG51bGwpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgYmluZFZlcnRl
eEFycmF5T0VTKG9wdGlvbmFsIFdlYkdMVmVydGV4QXJyYXlPYmplY3RPRVM/IGFycmF5T2JqZWN0
ID0gbnVsbCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIGJpbmRWZXJ0ZXhB
cnJheU9FUyhvcHRpb25hbCBXZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTPyBhcnJheU9iamVjdCA9
IG51bGwpOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL1dlYkdM
UmVuZGVyaW5nQ29udGV4dEJhc2UuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2Vi
R0xSZW5kZXJpbmdDb250ZXh0QmFzZS5pZGwKaW5kZXggN2U1YmJjODQ1NWMwNmU3YjBkZGI3ZjM1
NGJiZDBiMDE5NjgyMmJkNi4uZTFhZjBhYTVhZmVjZDcwODNjNWQxNWMzMjg1MTgzZjJkZjEwNjcx
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5kZXJpbmdD
b250ZXh0QmFzZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvV2ViR0xSZW5k
ZXJpbmdDb250ZXh0QmFzZS5pZGwKQEAgLTQ3MiwyMyArNDcyLDIzIEBAIHR5cGVkZWYgdW5yZXN0
cmljdGVkIGZsb2F0IEdMY2xhbXBmOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBHTHNpemVpIGRy
YXdpbmdCdWZmZXJXaWR0aDsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgR0xzaXplaSBkcmF3aW5n
QnVmZmVySGVpZ2h0OwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBhY3RpdmVUZXh0dXJl
KEdMZW51bSB0ZXh0dXJlKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGF0dGFjaFNoYWRl
cihXZWJHTFByb2dyYW0/IHByb2dyYW0sIFdlYkdMU2hhZGVyPyBzaGFkZXIpOwotICAgIFtSYWlz
ZXNFeGNlcHRpb25dIHZvaWQgYmluZEF0dHJpYkxvY2F0aW9uKFdlYkdMUHJvZ3JhbT8gcHJvZ3Jh
bSwgR0x1aW50IGluZGV4LCBET01TdHJpbmcgbmFtZSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0g
dm9pZCBiaW5kQnVmZmVyKEdMZW51bSB0YXJnZXQsIFdlYkdMQnVmZmVyPyBidWZmZXIpOwotICAg
IFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgYmluZEZyYW1lYnVmZmVyKEdMZW51bSB0YXJnZXQsIFdl
YkdMRnJhbWVidWZmZXI/IGZyYW1lYnVmZmVyKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lk
IGJpbmRSZW5kZXJidWZmZXIoR0xlbnVtIHRhcmdldCwgV2ViR0xSZW5kZXJidWZmZXI/IHJlbmRl
cmJ1ZmZlcik7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBiaW5kVGV4dHVyZShHTGVudW0g
dGFyZ2V0LCBXZWJHTFRleHR1cmU/IHRleHR1cmUpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gdm9pZCBhY3RpdmVUZXh0dXJlKEdMZW51bSB0ZXh0dXJlKTsKKyAgICBbTWF5VGhyb3dM
ZWdhY3lFeGNlcHRpb25dIHZvaWQgYXR0YWNoU2hhZGVyKFdlYkdMUHJvZ3JhbT8gcHJvZ3JhbSwg
V2ViR0xTaGFkZXI/IHNoYWRlcik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lk
IGJpbmRBdHRyaWJMb2NhdGlvbihXZWJHTFByb2dyYW0/IHByb2dyYW0sIEdMdWludCBpbmRleCwg
RE9NU3RyaW5nIG5hbWUpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBiaW5k
QnVmZmVyKEdMZW51bSB0YXJnZXQsIFdlYkdMQnVmZmVyPyBidWZmZXIpOworICAgIFtNYXlUaHJv
d0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBiaW5kRnJhbWVidWZmZXIoR0xlbnVtIHRhcmdldCwgV2Vi
R0xGcmFtZWJ1ZmZlcj8gZnJhbWVidWZmZXIpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlv
bl0gdm9pZCBiaW5kUmVuZGVyYnVmZmVyKEdMZW51bSB0YXJnZXQsIFdlYkdMUmVuZGVyYnVmZmVy
PyByZW5kZXJidWZmZXIpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBiaW5k
VGV4dHVyZShHTGVudW0gdGFyZ2V0LCBXZWJHTFRleHR1cmU/IHRleHR1cmUpOwogICAgIHZvaWQg
YmxlbmRDb2xvcihHTGNsYW1wZiByZWQsIEdMY2xhbXBmIGdyZWVuLCBHTGNsYW1wZiBibHVlLCBH
TGNsYW1wZiBhbHBoYSk7CiAgICAgdm9pZCBibGVuZEVxdWF0aW9uKEdMZW51bSBtb2RlKTsKICAg
ICB2b2lkIGJsZW5kRXF1YXRpb25TZXBhcmF0ZShHTGVudW0gbW9kZVJHQiwgR0xlbnVtIG1vZGVB
bHBoYSk7CiAgICAgdm9pZCBibGVuZEZ1bmMoR0xlbnVtIHNmYWN0b3IsIEdMZW51bSBkZmFjdG9y
KTsKICAgICB2b2lkIGJsZW5kRnVuY1NlcGFyYXRlKEdMZW51bSBzcmNSR0IsIEdMZW51bSBkc3RS
R0IsIEdMZW51bSBzcmNBbHBoYSwgR0xlbnVtIGRzdEFscGhhKTsKLSAgICBbUmFpc2VzRXhjZXB0
aW9uXSB2b2lkIGJ1ZmZlckRhdGEoR0xlbnVtIHRhcmdldCwgQXJyYXlCdWZmZXIgZGF0YSwgR0xl
bnVtIHVzYWdlKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGJ1ZmZlckRhdGEoR0xlbnVt
IHRhcmdldCwgQXJyYXlCdWZmZXJWaWV3IGRhdGEsIEdMZW51bSB1c2FnZSk7Ci0gICAgW1JhaXNl
c0V4Y2VwdGlvbl0gdm9pZCBidWZmZXJEYXRhKEdMZW51bSB0YXJnZXQsIEdMc2l6ZWlwdHIgc2l6
ZSwgR0xlbnVtIHVzYWdlKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGJ1ZmZlclN1YkRh
dGEoR0xlbnVtIHRhcmdldCwgR0xpbnRwdHIgb2Zmc2V0LCBBcnJheUJ1ZmZlcj8gZGF0YSk7Ci0g
ICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBidWZmZXJTdWJEYXRhKEdMZW51bSB0YXJnZXQsIEdM
aW50cHRyIG9mZnNldCwgQXJyYXlCdWZmZXJWaWV3PyBkYXRhKTsKKyAgICBbTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb25dIHZvaWQgYnVmZmVyRGF0YShHTGVudW0gdGFyZ2V0LCBBcnJheUJ1ZmZlciBk
YXRhLCBHTGVudW0gdXNhZ2UpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBi
dWZmZXJEYXRhKEdMZW51bSB0YXJnZXQsIEFycmF5QnVmZmVyVmlldyBkYXRhLCBHTGVudW0gdXNh
Z2UpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBidWZmZXJEYXRhKEdMZW51
bSB0YXJnZXQsIEdMc2l6ZWlwdHIgc2l6ZSwgR0xlbnVtIHVzYWdlKTsKKyAgICBbTWF5VGhyb3dM
ZWdhY3lFeGNlcHRpb25dIHZvaWQgYnVmZmVyU3ViRGF0YShHTGVudW0gdGFyZ2V0LCBHTGludHB0
ciBvZmZzZXQsIEFycmF5QnVmZmVyPyBkYXRhKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRp
b25dIHZvaWQgYnVmZmVyU3ViRGF0YShHTGVudW0gdGFyZ2V0LCBHTGludHB0ciBvZmZzZXQsIEFy
cmF5QnVmZmVyVmlldz8gZGF0YSk7CiAKICAgICBHTGVudW0gY2hlY2tGcmFtZWJ1ZmZlclN0YXR1
cyhHTGVudW0gdGFyZ2V0KTsKICAgICB2b2lkIGNsZWFyKEdMYml0ZmllbGQgbWFzayk7CkBAIC00
OTYsNyArNDk2LDcgQEAgdHlwZWRlZiB1bnJlc3RyaWN0ZWQgZmxvYXQgR0xjbGFtcGY7CiAgICAg
dm9pZCBjbGVhckRlcHRoKEdMY2xhbXBmIGRlcHRoKTsKICAgICB2b2lkIGNsZWFyU3RlbmNpbChH
TGludCBzKTsKICAgICB2b2lkIGNvbG9yTWFzayhHTGJvb2xlYW4gcmVkLCBHTGJvb2xlYW4gZ3Jl
ZW4sIEdMYm9vbGVhbiBibHVlLCBHTGJvb2xlYW4gYWxwaGEpOwotICAgIFtSYWlzZXNFeGNlcHRp
b25dIHZvaWQgY29tcGlsZVNoYWRlcihXZWJHTFNoYWRlcj8gc2hhZGVyKTsKKyAgICBbTWF5VGhy
b3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgY29tcGlsZVNoYWRlcihXZWJHTFNoYWRlcj8gc2hhZGVy
KTsKIAogICAgIHZvaWQgY29tcHJlc3NlZFRleEltYWdlMkQoR0xlbnVtIHRhcmdldCwgR0xpbnQg
bGV2ZWwsIEdMZW51bSBpbnRlcm5hbGZvcm1hdCwKICAgICBHTHNpemVpIHdpZHRoLCBHTHNpemVp
IGhlaWdodCwgR0xpbnQgYm9yZGVyLCBBcnJheUJ1ZmZlclZpZXcgZGF0YSk7CkBAIC01MTAsNyAr
NTEwLDcgQEAgdHlwZWRlZiB1bnJlc3RyaWN0ZWQgZmxvYXQgR0xjbGFtcGY7CiAgICAgV2ViR0xG
cmFtZWJ1ZmZlciBjcmVhdGVGcmFtZWJ1ZmZlcigpOwogICAgIFdlYkdMUHJvZ3JhbSBjcmVhdGVQ
cm9ncmFtKCk7CiAgICAgV2ViR0xSZW5kZXJidWZmZXIgY3JlYXRlUmVuZGVyYnVmZmVyKCk7Ci0g
ICAgW1JhaXNlc0V4Y2VwdGlvbl0gV2ViR0xTaGFkZXIgY3JlYXRlU2hhZGVyKEdMZW51bSB0eXBl
KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIFdlYkdMU2hhZGVyIGNyZWF0ZVNoYWRl
cihHTGVudW0gdHlwZSk7CiAgICAgV2ViR0xUZXh0dXJlIGNyZWF0ZVRleHR1cmUoKTsKIAogICAg
IHZvaWQgY3VsbEZhY2UoR0xlbnVtIG1vZGUpOwpAQCAtNTI1LDI1ICs1MjUsMjUgQEAgdHlwZWRl
ZiB1bnJlc3RyaWN0ZWQgZmxvYXQgR0xjbGFtcGY7CiAgICAgdm9pZCBkZXB0aEZ1bmMoR0xlbnVt
IGZ1bmMpOwogICAgIHZvaWQgZGVwdGhNYXNrKEdMYm9vbGVhbiBmbGFnKTsKICAgICB2b2lkIGRl
cHRoUmFuZ2UoR0xjbGFtcGYgek5lYXIsIEdMY2xhbXBmIHpGYXIpOwotICAgIFtSYWlzZXNFeGNl
cHRpb25dIHZvaWQgZGV0YWNoU2hhZGVyKFdlYkdMUHJvZ3JhbT8gcHJvZ3JhbSwgV2ViR0xTaGFk
ZXI/IHNoYWRlcik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIGRldGFjaFNo
YWRlcihXZWJHTFByb2dyYW0/IHByb2dyYW0sIFdlYkdMU2hhZGVyPyBzaGFkZXIpOwogICAgIHZv
aWQgZGlzYWJsZShHTGVudW0gY2FwKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGRpc2Fi
bGVWZXJ0ZXhBdHRyaWJBcnJheShHTHVpbnQgaW5kZXgpOwotICAgIFtSYWlzZXNFeGNlcHRpb25d
IHZvaWQgZHJhd0FycmF5cyhHTGVudW0gbW9kZSwgR0xpbnQgZmlyc3QsIEdMc2l6ZWkgY291bnQp
OwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgZHJhd0VsZW1lbnRzKEdMZW51bSBtb2RlLCBH
THNpemVpIGNvdW50LCBHTGVudW0gdHlwZSwgR0xpbnRwdHIgb2Zmc2V0KTsKKyAgICBbTWF5VGhy
b3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgZGlzYWJsZVZlcnRleEF0dHJpYkFycmF5KEdMdWludCBp
bmRleCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIGRyYXdBcnJheXMoR0xl
bnVtIG1vZGUsIEdMaW50IGZpcnN0LCBHTHNpemVpIGNvdW50KTsKKyAgICBbTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb25dIHZvaWQgZHJhd0VsZW1lbnRzKEdMZW51bSBtb2RlLCBHTHNpemVpIGNvdW50
LCBHTGVudW0gdHlwZSwgR0xpbnRwdHIgb2Zmc2V0KTsKIAogICAgIHZvaWQgZW5hYmxlKEdMZW51
bSBjYXApOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgZW5hYmxlVmVydGV4QXR0cmliQXJy
YXkoR0x1aW50IGluZGV4KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgZW5h
YmxlVmVydGV4QXR0cmliQXJyYXkoR0x1aW50IGluZGV4KTsKICAgICB2b2lkIGZpbmlzaCgpOwog
ICAgIHZvaWQgZmx1c2goKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGZyYW1lYnVmZmVy
UmVuZGVyYnVmZmVyKEdMZW51bSB0YXJnZXQsIEdMZW51bSBhdHRhY2htZW50LCBHTGVudW0gcmVu
ZGVyYnVmZmVydGFyZ2V0LCBXZWJHTFJlbmRlcmJ1ZmZlcj8gcmVuZGVyYnVmZmVyKTsKLSAgICBb
UmFpc2VzRXhjZXB0aW9uXSB2b2lkIGZyYW1lYnVmZmVyVGV4dHVyZTJEKEdMZW51bSB0YXJnZXQs
IEdMZW51bSBhdHRhY2htZW50LCBHTGVudW0gdGV4dGFyZ2V0LCBXZWJHTFRleHR1cmU/IHRleHR1
cmUsIEdMaW50IGxldmVsKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgZnJh
bWVidWZmZXJSZW5kZXJidWZmZXIoR0xlbnVtIHRhcmdldCwgR0xlbnVtIGF0dGFjaG1lbnQsIEdM
ZW51bSByZW5kZXJidWZmZXJ0YXJnZXQsIFdlYkdMUmVuZGVyYnVmZmVyPyByZW5kZXJidWZmZXIp
OworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBmcmFtZWJ1ZmZlclRleHR1cmUy
RChHTGVudW0gdGFyZ2V0LCBHTGVudW0gYXR0YWNobWVudCwgR0xlbnVtIHRleHRhcmdldCwgV2Vi
R0xUZXh0dXJlPyB0ZXh0dXJlLCBHTGludCBsZXZlbCk7CiAgICAgdm9pZCBmcm9udEZhY2UoR0xl
bnVtIG1vZGUpOwogICAgIHZvaWQgZ2VuZXJhdGVNaXBtYXAoR0xlbnVtIHRhcmdldCk7CiAgICAg
Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gV2ViR0xBY3RpdmVJbmZvIGdldEFjdGl2ZUF0dHJpYihX
ZWJHTFByb2dyYW0/IHByb2dyYW0sIEdMdWludCBpbmRleCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlv
bl0gV2ViR0xBY3RpdmVJbmZvIGdldEFjdGl2ZVVuaWZvcm0oV2ViR0xQcm9ncmFtPyBwcm9ncmFt
LCBHTHVpbnQgaW5kZXgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gV2ViR0xBY3Rp
dmVJbmZvIGdldEFjdGl2ZUF0dHJpYihXZWJHTFByb2dyYW0/IHByb2dyYW0sIEdMdWludCBpbmRl
eCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBXZWJHTEFjdGl2ZUluZm8gZ2V0QWN0
aXZlVW5pZm9ybShXZWJHTFByb2dyYW0/IHByb2dyYW0sIEdMdWludCBpbmRleCk7CiAKLSAgICBb
Q3VzdG9tLCBSYWlzZXNFeGNlcHRpb25dIHZvaWQgZ2V0QXR0YWNoZWRTaGFkZXJzKFdlYkdMUHJv
Z3JhbT8gcHJvZ3JhbSk7CisgICAgW0N1c3RvbSwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZv
aWQgZ2V0QXR0YWNoZWRTaGFkZXJzKFdlYkdMUHJvZ3JhbT8gcHJvZ3JhbSk7CiAKICAgICBHTGlu
dCBnZXRBdHRyaWJMb2NhdGlvbihXZWJHTFByb2dyYW0/IHByb2dyYW0sIERPTVN0cmluZyBuYW1l
KTsKIApAQCAtNTU2LDI4ICs1NTYsMjggQEAgdHlwZWRlZiB1bnJlc3RyaWN0ZWQgZmxvYXQgR0xj
bGFtcGY7CiAgICAgLy8gb2JqZWN0IGdldEV4dGVuc2lvbihET01TdHJpbmcgbmFtZSk7CiAgICAg
W0N1c3RvbV0gYW55IGdldEV4dGVuc2lvbihET01TdHJpbmcgbmFtZSk7CiAKLSAgICBbQ3VzdG9t
LCBSYWlzZXNFeGNlcHRpb25dIGFueSBnZXRGcmFtZWJ1ZmZlckF0dGFjaG1lbnRQYXJhbWV0ZXIo
R0xlbnVtIHRhcmdldCwgR0xlbnVtIGF0dGFjaG1lbnQsIEdMZW51bSBwbmFtZSk7Ci0gICAgW0N1
c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSBhbnkgZ2V0UGFyYW1ldGVyKEdMZW51bSBwbmFtZSk7Ci0g
ICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSBhbnkgZ2V0UHJvZ3JhbVBhcmFtZXRlcihXZWJH
TFByb2dyYW0/IHByb2dyYW0sIEdMZW51bSBwbmFtZSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0g
RE9NU3RyaW5nPyBnZXRQcm9ncmFtSW5mb0xvZyhXZWJHTFByb2dyYW0/IHByb2dyYW0pOwotICAg
IFtDdXN0b20sIFJhaXNlc0V4Y2VwdGlvbl0gYW55IGdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihH
TGVudW0gdGFyZ2V0LCBHTGVudW0gcG5hbWUpOwotICAgIFtDdXN0b20sIFJhaXNlc0V4Y2VwdGlv
bl0gYW55IGdldFNoYWRlclBhcmFtZXRlcihXZWJHTFNoYWRlcj8gc2hhZGVyLCBHTGVudW0gcG5h
bWUpOworICAgIFtDdXN0b20sIE1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhbnkgZ2V0RnJhbWVi
dWZmZXJBdHRhY2htZW50UGFyYW1ldGVyKEdMZW51bSB0YXJnZXQsIEdMZW51bSBhdHRhY2htZW50
LCBHTGVudW0gcG5hbWUpOworICAgIFtDdXN0b20sIE1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBh
bnkgZ2V0UGFyYW1ldGVyKEdMZW51bSBwbmFtZSk7CisgICAgW0N1c3RvbSwgTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb25dIGFueSBnZXRQcm9ncmFtUGFyYW1ldGVyKFdlYkdMUHJvZ3JhbT8gcHJvZ3Jh
bSwgR0xlbnVtIHBuYW1lKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIERPTVN0cmlu
Zz8gZ2V0UHJvZ3JhbUluZm9Mb2coV2ViR0xQcm9ncmFtPyBwcm9ncmFtKTsKKyAgICBbQ3VzdG9t
LCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYW55IGdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcihH
TGVudW0gdGFyZ2V0LCBHTGVudW0gcG5hbWUpOworICAgIFtDdXN0b20sIE1heVRocm93TGVnYWN5
RXhjZXB0aW9uXSBhbnkgZ2V0U2hhZGVyUGFyYW1ldGVyKFdlYkdMU2hhZGVyPyBzaGFkZXIsIEdM
ZW51bSBwbmFtZSk7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBET01TdHJpbmc/IGdldFNoYWRl
ckluZm9Mb2coV2ViR0xTaGFkZXI/IHNoYWRlcik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0
aW9uXSBET01TdHJpbmc/IGdldFNoYWRlckluZm9Mb2coV2ViR0xTaGFkZXI/IHNoYWRlcik7CiAK
LSAgICBbUmFpc2VzRXhjZXB0aW9uXSBXZWJHTFNoYWRlclByZWNpc2lvbkZvcm1hdCBnZXRTaGFk
ZXJQcmVjaXNpb25Gb3JtYXQoR0xlbnVtIHNoYWRlcnR5cGUsIEdMZW51bSBwcmVjaXNpb250eXBl
KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIFdlYkdMU2hhZGVyUHJlY2lzaW9uRm9y
bWF0IGdldFNoYWRlclByZWNpc2lvbkZvcm1hdChHTGVudW0gc2hhZGVydHlwZSwgR0xlbnVtIHBy
ZWNpc2lvbnR5cGUpOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gRE9NU3RyaW5nPyBnZXRTaGFk
ZXJTb3VyY2UoV2ViR0xTaGFkZXI/IHNoYWRlcik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0
aW9uXSBET01TdHJpbmc/IGdldFNoYWRlclNvdXJjZShXZWJHTFNoYWRlcj8gc2hhZGVyKTsKIAog
ICAgIFtDdXN0b21dIHNlcXVlbmNlPERPTVN0cmluZz4gZ2V0U3VwcG9ydGVkRXh0ZW5zaW9ucygp
OwogCi0gICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSBhbnkgZ2V0VGV4UGFyYW1ldGVyKEdM
ZW51bSB0YXJnZXQsIEdMZW51bSBwbmFtZSk7CisgICAgW0N1c3RvbSwgTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb25dIGFueSBnZXRUZXhQYXJhbWV0ZXIoR0xlbnVtIHRhcmdldCwgR0xlbnVtIHBuYW1l
KTsKIAotICAgIFtDdXN0b20sIFJhaXNlc0V4Y2VwdGlvbl0gYW55IGdldFVuaWZvcm0oV2ViR0xQ
cm9ncmFtPyBwcm9ncmFtLCBXZWJHTFVuaWZvcm1Mb2NhdGlvbj8gbG9jYXRpb24pOworICAgIFtD
dXN0b20sIE1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhbnkgZ2V0VW5pZm9ybShXZWJHTFByb2dy
YW0/IHByb2dyYW0sIFdlYkdMVW5pZm9ybUxvY2F0aW9uPyBsb2NhdGlvbik7CiAKLSAgICBbUmFp
c2VzRXhjZXB0aW9uXSBXZWJHTFVuaWZvcm1Mb2NhdGlvbiBnZXRVbmlmb3JtTG9jYXRpb24oV2Vi
R0xQcm9ncmFtPyBwcm9ncmFtLCBET01TdHJpbmcgbmFtZSk7CisgICAgW01heVRocm93TGVnYWN5
RXhjZXB0aW9uXSBXZWJHTFVuaWZvcm1Mb2NhdGlvbiBnZXRVbmlmb3JtTG9jYXRpb24oV2ViR0xQ
cm9ncmFtPyBwcm9ncmFtLCBET01TdHJpbmcgbmFtZSk7CiAKLSAgICBbQ3VzdG9tLCBSYWlzZXNF
eGNlcHRpb25dIGFueSBnZXRWZXJ0ZXhBdHRyaWIoR0x1aW50IGluZGV4LCBHTGVudW0gcG5hbWUp
OworICAgIFtDdXN0b20sIE1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhbnkgZ2V0VmVydGV4QXR0
cmliKEdMdWludCBpbmRleCwgR0xlbnVtIHBuYW1lKTsKIAogICAgIEdMc2l6ZWlwdHIgZ2V0VmVy
dGV4QXR0cmliT2Zmc2V0KEdMdWludCBpbmRleCwgR0xlbnVtIHBuYW1lKTsKIApAQCAtNTkxLDE3
ICs1OTEsMTcgQEAgdHlwZWRlZiB1bnJlc3RyaWN0ZWQgZmxvYXQgR0xjbGFtcGY7CiAgICAgR0xi
b29sZWFuIGlzU2hhZGVyKFdlYkdMU2hhZGVyPyBzaGFkZXIpOwogICAgIEdMYm9vbGVhbiBpc1Rl
eHR1cmUoV2ViR0xUZXh0dXJlPyB0ZXh0dXJlKTsKICAgICB2b2lkIGxpbmVXaWR0aChHTGZsb2F0
IHdpZHRoKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGxpbmtQcm9ncmFtKFdlYkdMUHJv
Z3JhbT8gcHJvZ3JhbSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIGxpbmtQ
cm9ncmFtKFdlYkdMUHJvZ3JhbT8gcHJvZ3JhbSk7CiAgICAgdm9pZCBwaXhlbFN0b3JlaShHTGVu
dW0gcG5hbWUsIEdMaW50IHBhcmFtKTsKICAgICB2b2lkIHBvbHlnb25PZmZzZXQoR0xmbG9hdCBm
YWN0b3IsIEdMZmxvYXQgdW5pdHMpOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCByZWFk
UGl4ZWxzKEdMaW50IHgsIEdMaW50IHksIEdMc2l6ZWkgd2lkdGgsIEdMc2l6ZWkgaGVpZ2h0LCBH
TGVudW0gZm9ybWF0LCBHTGVudW0gdHlwZSwgQXJyYXlCdWZmZXJWaWV3IHBpeGVscyk7CisgICAg
W01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHJlYWRQaXhlbHMoR0xpbnQgeCwgR0xpbnQg
eSwgR0xzaXplaSB3aWR0aCwgR0xzaXplaSBoZWlnaHQsIEdMZW51bSBmb3JtYXQsIEdMZW51bSB0
eXBlLCBBcnJheUJ1ZmZlclZpZXcgcGl4ZWxzKTsKICAgICAKICAgICB2b2lkIHJlbGVhc2VTaGFk
ZXJDb21waWxlcigpOwogICAgIHZvaWQgcmVuZGVyYnVmZmVyU3RvcmFnZShHTGVudW0gdGFyZ2V0
LCBHTGVudW0gaW50ZXJuYWxmb3JtYXQsIEdMc2l6ZWkgd2lkdGgsIEdMc2l6ZWkgaGVpZ2h0KTsK
ICAgICB2b2lkIHNhbXBsZUNvdmVyYWdlKEdMY2xhbXBmIHZhbHVlLCBHTGJvb2xlYW4gaW52ZXJ0
KTsKICAgICB2b2lkIHNjaXNzb3IoR0xpbnQgeCwgR0xpbnQgeSwgR0xzaXplaSB3aWR0aCwgR0xz
aXplaSBoZWlnaHQpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2hhZGVyU291cmNlKFdl
YkdMU2hhZGVyPyBzaGFkZXIsIERPTVN0cmluZyBzdHJpbmcpOworICAgIFtNYXlUaHJvd0xlZ2Fj
eUV4Y2VwdGlvbl0gdm9pZCBzaGFkZXJTb3VyY2UoV2ViR0xTaGFkZXI/IHNoYWRlciwgRE9NU3Ry
aW5nIHN0cmluZyk7CiAgICAgdm9pZCBzdGVuY2lsRnVuYyhHTGVudW0gZnVuYywgR0xpbnQgcmVm
LCBHTHVpbnQgbWFzayk7CiAgICAgdm9pZCBzdGVuY2lsRnVuY1NlcGFyYXRlKEdMZW51bSBmYWNl
LCBHTGVudW0gZnVuYywgR0xpbnQgcmVmLCBHTHVpbnQgbWFzayk7CiAgICAgdm9pZCBzdGVuY2ls
TWFzayhHTHVpbnQgbWFzayk7CkBAIC02MTMsNTYgKzYxMyw1NiBAQCB0eXBlZGVmIHVucmVzdHJp
Y3RlZCBmbG9hdCBHTGNsYW1wZjsKICAgICB2b2lkIHRleFBhcmFtZXRlcmkoR0xlbnVtIHRhcmdl
dCwgR0xlbnVtIHBuYW1lLCBHTGludCBwYXJhbSk7CiAKICAgICAvLyBTdXBwb3J0ZWQgZm9ybXM6
Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCB0ZXhJbWFnZTJEKEdMZW51bSB0YXJnZXQsIEdM
aW50IGxldmVsLCBHTGVudW0gaW50ZXJuYWxmb3JtYXQsIEdMc2l6ZWkgd2lkdGgsIEdMc2l6ZWkg
aGVpZ2h0LAorICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCB0ZXhJbWFnZTJEKEdM
ZW51bSB0YXJnZXQsIEdMaW50IGxldmVsLCBHTGVudW0gaW50ZXJuYWxmb3JtYXQsIEdMc2l6ZWkg
d2lkdGgsIEdMc2l6ZWkgaGVpZ2h0LAogICBHTGludCBib3JkZXIsIEdMZW51bSBmb3JtYXQsIEdM
ZW51bSB0eXBlLCBBcnJheUJ1ZmZlclZpZXc/IHBpeGVscyk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlv
bl0gdm9pZCB0ZXhJbWFnZTJEKEdMZW51bSB0YXJnZXQsIEdMaW50IGxldmVsLCBHTGVudW0gaW50
ZXJuYWxmb3JtYXQsCisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHRleEltYWdl
MkQoR0xlbnVtIHRhcmdldCwgR0xpbnQgbGV2ZWwsIEdMZW51bSBpbnRlcm5hbGZvcm1hdCwKICAg
R0xlbnVtIGZvcm1hdCwgR0xlbnVtIHR5cGUsIEltYWdlRGF0YT8gcGl4ZWxzKTsKLSAgICBbUmFp
c2VzRXhjZXB0aW9uXSB2b2lkIHRleEltYWdlMkQoR0xlbnVtIHRhcmdldCwgR0xpbnQgbGV2ZWws
IEdMZW51bSBpbnRlcm5hbGZvcm1hdCwKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZv
aWQgdGV4SW1hZ2UyRChHTGVudW0gdGFyZ2V0LCBHTGludCBsZXZlbCwgR0xlbnVtIGludGVybmFs
Zm9ybWF0LAogICBHTGVudW0gZm9ybWF0LCBHTGVudW0gdHlwZSwgSFRNTEltYWdlRWxlbWVudD8g
aW1hZ2UpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgdGV4SW1hZ2UyRChHTGVudW0gdGFy
Z2V0LCBHTGludCBsZXZlbCwgR0xlbnVtIGludGVybmFsZm9ybWF0LAorICAgIFtNYXlUaHJvd0xl
Z2FjeUV4Y2VwdGlvbl0gdm9pZCB0ZXhJbWFnZTJEKEdMZW51bSB0YXJnZXQsIEdMaW50IGxldmVs
LCBHTGVudW0gaW50ZXJuYWxmb3JtYXQsCiAgIEdMZW51bSBmb3JtYXQsIEdMZW51bSB0eXBlLCBI
VE1MQ2FudmFzRWxlbWVudD8gY2FudmFzKTsKICNpZiBkZWZpbmVkKEVOQUJMRV9WSURFTykgJiYg
RU5BQkxFX1ZJREVPCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCB0ZXhJbWFnZTJEKEdMZW51
bSB0YXJnZXQsIEdMaW50IGxldmVsLCBHTGVudW0gaW50ZXJuYWxmb3JtYXQsCisgICAgW01heVRo
cm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHRleEltYWdlMkQoR0xlbnVtIHRhcmdldCwgR0xpbnQg
bGV2ZWwsIEdMZW51bSBpbnRlcm5hbGZvcm1hdCwKICAgR0xlbnVtIGZvcm1hdCwgR0xlbnVtIHR5
cGUsIEhUTUxWaWRlb0VsZW1lbnQ/IHZpZGVvKTsKICNlbmRpZgogCi0gICAgW1JhaXNlc0V4Y2Vw
dGlvbl0gdm9pZCB0ZXhTdWJJbWFnZTJEKEdMZW51bSB0YXJnZXQsIEdMaW50IGxldmVsLCBHTGlu
dCB4b2Zmc2V0LCBHTGludCB5b2Zmc2V0LAorICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0g
dm9pZCB0ZXhTdWJJbWFnZTJEKEdMZW51bSB0YXJnZXQsIEdMaW50IGxldmVsLCBHTGludCB4b2Zm
c2V0LCBHTGludCB5b2Zmc2V0LAogIEdMc2l6ZWkgd2lkdGgsIEdMc2l6ZWkgaGVpZ2h0LAogIEdM
ZW51bSBmb3JtYXQsIEdMZW51bSB0eXBlLCBBcnJheUJ1ZmZlclZpZXc/IHBpeGVscyk7Ci0gICAg
W1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCB0ZXhTdWJJbWFnZTJEKEdMZW51bSB0YXJnZXQsIEdMaW50
IGxldmVsLCBHTGludCB4b2Zmc2V0LCBHTGludCB5b2Zmc2V0LAorICAgIFtNYXlUaHJvd0xlZ2Fj
eUV4Y2VwdGlvbl0gdm9pZCB0ZXhTdWJJbWFnZTJEKEdMZW51bSB0YXJnZXQsIEdMaW50IGxldmVs
LCBHTGludCB4b2Zmc2V0LCBHTGludCB5b2Zmc2V0LAogIEdMZW51bSBmb3JtYXQsIEdMZW51bSB0
eXBlLCBJbWFnZURhdGE/IHBpeGVscyk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCB0ZXhT
dWJJbWFnZTJEKEdMZW51bSB0YXJnZXQsIEdMaW50IGxldmVsLCBHTGludCB4b2Zmc2V0LCBHTGlu
dCB5b2Zmc2V0LAorICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCB0ZXhTdWJJbWFn
ZTJEKEdMZW51bSB0YXJnZXQsIEdMaW50IGxldmVsLCBHTGludCB4b2Zmc2V0LCBHTGludCB5b2Zm
c2V0LAogIEdMZW51bSBmb3JtYXQsIEdMZW51bSB0eXBlLCBIVE1MSW1hZ2VFbGVtZW50PyBpbWFn
ZSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCB0ZXhTdWJJbWFnZTJEKEdMZW51bSB0YXJn
ZXQsIEdMaW50IGxldmVsLCBHTGludCB4b2Zmc2V0LCBHTGludCB5b2Zmc2V0LAorICAgIFtNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCB0ZXhTdWJJbWFnZTJEKEdMZW51bSB0YXJnZXQsIEdM
aW50IGxldmVsLCBHTGludCB4b2Zmc2V0LCBHTGludCB5b2Zmc2V0LAogIEdMZW51bSBmb3JtYXQs
IEdMZW51bSB0eXBlLCBIVE1MQ2FudmFzRWxlbWVudD8gY2FudmFzKTsKICNpZiBkZWZpbmVkKEVO
QUJMRV9WSURFTykgJiYgRU5BQkxFX1ZJREVPCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCB0
ZXhTdWJJbWFnZTJEKEdMZW51bSB0YXJnZXQsIEdMaW50IGxldmVsLCBHTGludCB4b2Zmc2V0LCBH
TGludCB5b2Zmc2V0LAorICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCB0ZXhTdWJJ
bWFnZTJEKEdMZW51bSB0YXJnZXQsIEdMaW50IGxldmVsLCBHTGludCB4b2Zmc2V0LCBHTGludCB5
b2Zmc2V0LAogIEdMZW51bSBmb3JtYXQsIEdMZW51bSB0eXBlLCBIVE1MVmlkZW9FbGVtZW50PyB2
aWRlbyk7CiAjZW5kaWYKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgdW5pZm9ybTFmKFdl
YkdMVW5pZm9ybUxvY2F0aW9uPyBsb2NhdGlvbiwgR0xmbG9hdCB4KTsKLSAgICBbQ3VzdG9tLCBS
YWlzZXNFeGNlcHRpb25dIHZvaWQgdW5pZm9ybTFmdihXZWJHTFVuaWZvcm1Mb2NhdGlvbj8gbG9j
YXRpb24sIEZsb2F0MzJBcnJheSB2KTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHVuaWZv
cm0xaShXZWJHTFVuaWZvcm1Mb2NhdGlvbj8gbG9jYXRpb24sIEdMaW50IHgpOwotICAgIFtDdXN0
b20sIFJhaXNlc0V4Y2VwdGlvbl0gdm9pZCB1bmlmb3JtMWl2KFdlYkdMVW5pZm9ybUxvY2F0aW9u
PyBsb2NhdGlvbiwgSW50MzJBcnJheSB2KTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHVu
aWZvcm0yZihXZWJHTFVuaWZvcm1Mb2NhdGlvbj8gbG9jYXRpb24sIEdMZmxvYXQgeCwgR0xmbG9h
dCB5KTsKLSAgICBbQ3VzdG9tLCBSYWlzZXNFeGNlcHRpb25dIHZvaWQgdW5pZm9ybTJmdihXZWJH
TFVuaWZvcm1Mb2NhdGlvbj8gbG9jYXRpb24sIEZsb2F0MzJBcnJheSB2KTsKLSAgICBbUmFpc2Vz
RXhjZXB0aW9uXSB2b2lkIHVuaWZvcm0yaShXZWJHTFVuaWZvcm1Mb2NhdGlvbj8gbG9jYXRpb24s
IEdMaW50IHgsIEdMaW50IHkpOwotICAgIFtDdXN0b20sIFJhaXNlc0V4Y2VwdGlvbl0gdm9pZCB1
bmlmb3JtMml2KFdlYkdMVW5pZm9ybUxvY2F0aW9uPyBsb2NhdGlvbiwgSW50MzJBcnJheSB2KTsK
LSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHVuaWZvcm0zZihXZWJHTFVuaWZvcm1Mb2NhdGlv
bj8gbG9jYXRpb24sIEdMZmxvYXQgeCwgR0xmbG9hdCB5LCBHTGZsb2F0IHopOwotICAgIFtDdXN0
b20sIFJhaXNlc0V4Y2VwdGlvbl0gdm9pZCB1bmlmb3JtM2Z2KFdlYkdMVW5pZm9ybUxvY2F0aW9u
PyBsb2NhdGlvbiwgRmxvYXQzMkFycmF5IHYpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQg
dW5pZm9ybTNpKFdlYkdMVW5pZm9ybUxvY2F0aW9uPyBsb2NhdGlvbiwgR0xpbnQgeCwgR0xpbnQg
eSwgR0xpbnQgeik7Ci0gICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHVuaWZvcm0z
aXYoV2ViR0xVbmlmb3JtTG9jYXRpb24/IGxvY2F0aW9uLCBJbnQzMkFycmF5IHYpOwotICAgIFtS
YWlzZXNFeGNlcHRpb25dIHZvaWQgdW5pZm9ybTRmKFdlYkdMVW5pZm9ybUxvY2F0aW9uPyBsb2Nh
dGlvbiwgR0xmbG9hdCB4LCBHTGZsb2F0IHksIEdMZmxvYXQgeiwgR0xmbG9hdCB3KTsKLSAgICBb
Q3VzdG9tLCBSYWlzZXNFeGNlcHRpb25dIHZvaWQgdW5pZm9ybTRmdihXZWJHTFVuaWZvcm1Mb2Nh
dGlvbj8gbG9jYXRpb24sIEZsb2F0MzJBcnJheSB2KTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2
b2lkIHVuaWZvcm00aShXZWJHTFVuaWZvcm1Mb2NhdGlvbj8gbG9jYXRpb24sIEdMaW50IHgsIEdM
aW50IHksIEdMaW50IHosIEdMaW50IHcpOwotICAgIFtDdXN0b20sIFJhaXNlc0V4Y2VwdGlvbl0g
dm9pZCB1bmlmb3JtNGl2KFdlYkdMVW5pZm9ybUxvY2F0aW9uPyBsb2NhdGlvbiwgSW50MzJBcnJh
eSB2KTsKLQotICAgIFtDdXN0b20sIFJhaXNlc0V4Y2VwdGlvbl0gdm9pZCB1bmlmb3JtTWF0cml4
MmZ2KFdlYkdMVW5pZm9ybUxvY2F0aW9uPyBsb2NhdGlvbiwgR0xib29sZWFuIHRyYW5zcG9zZSwg
RmxvYXQzMkFycmF5IGFycmF5KTsKLSAgICBbQ3VzdG9tLCBSYWlzZXNFeGNlcHRpb25dIHZvaWQg
dW5pZm9ybU1hdHJpeDNmdihXZWJHTFVuaWZvcm1Mb2NhdGlvbj8gbG9jYXRpb24sIEdMYm9vbGVh
biB0cmFuc3Bvc2UsIEZsb2F0MzJBcnJheSBhcnJheSk7Ci0gICAgW0N1c3RvbSwgUmFpc2VzRXhj
ZXB0aW9uXSB2b2lkIHVuaWZvcm1NYXRyaXg0ZnYoV2ViR0xVbmlmb3JtTG9jYXRpb24/IGxvY2F0
aW9uLCBHTGJvb2xlYW4gdHJhbnNwb3NlLCBGbG9hdDMyQXJyYXkgYXJyYXkpOwotCi0gICAgW1Jh
aXNlc0V4Y2VwdGlvbl0gdm9pZCB1c2VQcm9ncmFtKFdlYkdMUHJvZ3JhbT8gcHJvZ3JhbSk7Ci0g
ICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCB2YWxpZGF0ZVByb2dyYW0oV2ViR0xQcm9ncmFtPyBw
cm9ncmFtKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgdW5pZm9ybTFmKFdl
YkdMVW5pZm9ybUxvY2F0aW9uPyBsb2NhdGlvbiwgR0xmbG9hdCB4KTsKKyAgICBbQ3VzdG9tLCBN
YXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCB1bmlmb3JtMWZ2KFdlYkdMVW5pZm9ybUxvY2F0
aW9uPyBsb2NhdGlvbiwgRmxvYXQzMkFycmF5IHYpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gdm9pZCB1bmlmb3JtMWkoV2ViR0xVbmlmb3JtTG9jYXRpb24/IGxvY2F0aW9uLCBHTGlu
dCB4KTsKKyAgICBbQ3VzdG9tLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCB1bmlmb3Jt
MWl2KFdlYkdMVW5pZm9ybUxvY2F0aW9uPyBsb2NhdGlvbiwgSW50MzJBcnJheSB2KTsKKyAgICBb
TWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgdW5pZm9ybTJmKFdlYkdMVW5pZm9ybUxvY2F0
aW9uPyBsb2NhdGlvbiwgR0xmbG9hdCB4LCBHTGZsb2F0IHkpOworICAgIFtDdXN0b20sIE1heVRo
cm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHVuaWZvcm0yZnYoV2ViR0xVbmlmb3JtTG9jYXRpb24/
IGxvY2F0aW9uLCBGbG9hdDMyQXJyYXkgdik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9u
XSB2b2lkIHVuaWZvcm0yaShXZWJHTFVuaWZvcm1Mb2NhdGlvbj8gbG9jYXRpb24sIEdMaW50IHgs
IEdMaW50IHkpOworICAgIFtDdXN0b20sIE1heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHVu
aWZvcm0yaXYoV2ViR0xVbmlmb3JtTG9jYXRpb24/IGxvY2F0aW9uLCBJbnQzMkFycmF5IHYpOwor
ICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCB1bmlmb3JtM2YoV2ViR0xVbmlmb3Jt
TG9jYXRpb24/IGxvY2F0aW9uLCBHTGZsb2F0IHgsIEdMZmxvYXQgeSwgR0xmbG9hdCB6KTsKKyAg
ICBbQ3VzdG9tLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCB1bmlmb3JtM2Z2KFdlYkdM
VW5pZm9ybUxvY2F0aW9uPyBsb2NhdGlvbiwgRmxvYXQzMkFycmF5IHYpOworICAgIFtNYXlUaHJv
d0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCB1bmlmb3JtM2koV2ViR0xVbmlmb3JtTG9jYXRpb24/IGxv
Y2F0aW9uLCBHTGludCB4LCBHTGludCB5LCBHTGludCB6KTsKKyAgICBbQ3VzdG9tLCBNYXlUaHJv
d0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCB1bmlmb3JtM2l2KFdlYkdMVW5pZm9ybUxvY2F0aW9uPyBs
b2NhdGlvbiwgSW50MzJBcnJheSB2KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZv
aWQgdW5pZm9ybTRmKFdlYkdMVW5pZm9ybUxvY2F0aW9uPyBsb2NhdGlvbiwgR0xmbG9hdCB4LCBH
TGZsb2F0IHksIEdMZmxvYXQgeiwgR0xmbG9hdCB3KTsKKyAgICBbQ3VzdG9tLCBNYXlUaHJvd0xl
Z2FjeUV4Y2VwdGlvbl0gdm9pZCB1bmlmb3JtNGZ2KFdlYkdMVW5pZm9ybUxvY2F0aW9uPyBsb2Nh
dGlvbiwgRmxvYXQzMkFycmF5IHYpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9p
ZCB1bmlmb3JtNGkoV2ViR0xVbmlmb3JtTG9jYXRpb24/IGxvY2F0aW9uLCBHTGludCB4LCBHTGlu
dCB5LCBHTGludCB6LCBHTGludCB3KTsKKyAgICBbQ3VzdG9tLCBNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gdm9pZCB1bmlmb3JtNGl2KFdlYkdMVW5pZm9ybUxvY2F0aW9uPyBsb2NhdGlvbiwgSW50
MzJBcnJheSB2KTsKKworICAgIFtDdXN0b20sIE1heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lk
IHVuaWZvcm1NYXRyaXgyZnYoV2ViR0xVbmlmb3JtTG9jYXRpb24/IGxvY2F0aW9uLCBHTGJvb2xl
YW4gdHJhbnNwb3NlLCBGbG9hdDMyQXJyYXkgYXJyYXkpOworICAgIFtDdXN0b20sIE1heVRocm93
TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHVuaWZvcm1NYXRyaXgzZnYoV2ViR0xVbmlmb3JtTG9jYXRp
b24/IGxvY2F0aW9uLCBHTGJvb2xlYW4gdHJhbnNwb3NlLCBGbG9hdDMyQXJyYXkgYXJyYXkpOwor
ICAgIFtDdXN0b20sIE1heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHVuaWZvcm1NYXRyaXg0
ZnYoV2ViR0xVbmlmb3JtTG9jYXRpb24/IGxvY2F0aW9uLCBHTGJvb2xlYW4gdHJhbnNwb3NlLCBG
bG9hdDMyQXJyYXkgYXJyYXkpOworCisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lk
IHVzZVByb2dyYW0oV2ViR0xQcm9ncmFtPyBwcm9ncmFtKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb25dIHZvaWQgdmFsaWRhdGVQcm9ncmFtKFdlYkdMUHJvZ3JhbT8gcHJvZ3JhbSk7CiAK
ICAgICB2b2lkIHZlcnRleEF0dHJpYjFmKEdMdWludCBpbmR4LCBHTGZsb2F0IHgpOwogICAgIFtD
dXN0b21dIHZvaWQgdmVydGV4QXR0cmliMWZ2KEdMdWludCBpbmR4LCBGbG9hdDMyQXJyYXkgdmFs
dWVzKTsKQEAgLTY3Miw3ICs2NzIsNyBAQCB0eXBlZGVmIHVucmVzdHJpY3RlZCBmbG9hdCBHTGNs
YW1wZjsKICAgICBbQ3VzdG9tXSB2b2lkIHZlcnRleEF0dHJpYjNmdihHTHVpbnQgaW5keCwgRmxv
YXQzMkFycmF5IHZhbHVlcyk7CiAgICAgdm9pZCB2ZXJ0ZXhBdHRyaWI0ZihHTHVpbnQgaW5keCwg
R0xmbG9hdCB4LCBHTGZsb2F0IHksIEdMZmxvYXQgeiwgR0xmbG9hdCB3KTsKICAgICBbQ3VzdG9t
XSB2b2lkIHZlcnRleEF0dHJpYjRmdihHTHVpbnQgaW5keCwgRmxvYXQzMkFycmF5IHZhbHVlcyk7
Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCB2ZXJ0ZXhBdHRyaWJQb2ludGVyKEdMdWludCBp
bmR4LCBHTGludCBzaXplLCBHTGVudW0gdHlwZSwgR0xib29sZWFuIG5vcm1hbGl6ZWQsIEdMc2l6
ZWkgc3RyaWRlLCBHTGludHB0ciBvZmZzZXQpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlv
bl0gdm9pZCB2ZXJ0ZXhBdHRyaWJQb2ludGVyKEdMdWludCBpbmR4LCBHTGludCBzaXplLCBHTGVu
dW0gdHlwZSwgR0xib29sZWFuIG5vcm1hbGl6ZWQsIEdMc2l6ZWkgc3RyaWRlLCBHTGludHB0ciBv
ZmZzZXQpOwogCiAgICAgdm9pZCB2aWV3cG9ydChHTGludCB4LCBHTGludCB5LCBHTHNpemVpIHdp
ZHRoLCBHTHNpemVpIGhlaWdodCk7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC90cmFjay9EYXRhQ3VlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svRGF0YUN1ZS5p
ZGwKaW5kZXggNTkyMzQ4OWZjZDVmOGM2NWU5YTUyMDc0YWQzMjk0YTdhMTczMmZiYy4uNzdmMzM2
MTczODA5MDdmYmE2MzRjNTkyZjIzYzg5OGVmNDBiNDJkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC90cmFjay9EYXRhQ3VlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3Ry
YWNrL0RhdGFDdWUuaWRsCkBAIC0zMiw3ICszMiw3IEBACiAjZWxzZQogICAgIEN1c3RvbUNvbnN0
cnVjdG9yKHVucmVzdHJpY3RlZCBkb3VibGUgc3RhcnRUaW1lLCB1bnJlc3RyaWN0ZWQgZG91Ymxl
IGVuZFRpbWUsIEFycmF5QnVmZmVyIGRhdGEpLAogI2VuZGlmCi0gICAgQ29uc3RydWN0b3JSYWlz
ZXNFeGNlcHRpb24sCisgICAgQ29uc3RydWN0b3JNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbiwKIF0g
aW50ZXJmYWNlIERhdGFDdWUgOiBUZXh0VHJhY2tDdWUgewogICAgIGF0dHJpYnV0ZSBBcnJheUJ1
ZmZlciBkYXRhOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRU
cmFjay5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFjay5pZGwKaW5kZXgg
MDAwODE0NzdmZjMyYWFiZWMxYzI5MDdmMzExMTg1YTVjYzhhMGIxNy4uOTdkYWU5ZGUyYzQ5ODcw
MGIwMzQwMGYwMWQ3ZjYzODA5ZTc1NzIwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC90cmFjay9UZXh0VHJhY2suaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4
dFRyYWNrLmlkbApAQCAtNDQsMTMgKzQ0LDEzIEBAIGVudW0gVGV4dFRyYWNrS2luZCB7ICJzdWJ0
aXRsZXMiLCAiY2FwdGlvbnMiLCAiZGVzY3JpcHRpb25zIiwgImNoYXB0ZXJzIiwgIm1ldGFkCiAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIFRleHRUcmFja0N1ZUxpc3Q/IGFjdGl2ZUN1ZXM7CiAKICAg
ICAvLyBGSVhNRTogY3VlIHBhcmFtZXRlciBzaG91bGQgbm90IGJlIG51bGxhYmxlIGluIGFkZEN1
ZSBhbmQgcmVtb3ZlQ3VlLgotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgYWRkQ3VlKFRleHRU
cmFja0N1ZT8gY3VlKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHJlbW92ZUN1ZShUZXh0
VHJhY2tDdWU/IGN1ZSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIGFkZEN1
ZShUZXh0VHJhY2tDdWU/IGN1ZSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lk
IHJlbW92ZUN1ZShUZXh0VHJhY2tDdWU/IGN1ZSk7CiAKICAgICBhdHRyaWJ1dGUgRXZlbnRIYW5k
bGVyIG9uY3VlY2hhbmdlOwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFZUVFJlZ2lvbkxpc3Qg
cmVnaW9uczsKICAgICAvLyBGSVhNRTogcmVnaW9uIHBhcmFtZXRlciBzaG91bGQgbm90IGJlIG51
bGxhYmxlIGluIGFkZFJlZ2lvbiBhbmQgcmVtb3ZlUmVnaW9uLgogICAgIHZvaWQgYWRkUmVnaW9u
KFZUVFJlZ2lvbj8gcmVnaW9uKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHJlbW92ZVJl
Z2lvbihWVFRSZWdpb24/IHJlZ2lvbik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2
b2lkIHJlbW92ZVJlZ2lvbihWVFRSZWdpb24/IHJlZ2lvbik7CiB9OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC90cmFjay9UZXh0VHJhY2tDdWUuaWRsIGIvU291cmNlL1dlYkNvcmUv
aHRtbC90cmFjay9UZXh0VHJhY2tDdWUuaWRsCmluZGV4IDMyYmY3ODBkZWYyMGFhODQ5ZjE5MGI5
N2M3N2M5ZWVjZWUxMjMzMDcuLjcwNWFlYmZjMGVmNGUyOTE1MmVmMzA1ZGMzNzU1MWMzMTU5YzU2
OTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVGV4dFRyYWNrQ3VlLmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RleHRUcmFja0N1ZS5pZGwKQEAgLTMz
LDggKzMzLDggQEAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgVGV4dFRyYWNrIHRyYWNrOwogCiAg
ICAgYXR0cmlidXRlIERPTVN0cmluZyBpZDsKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBh
dHRyaWJ1dGUgdW5yZXN0cmljdGVkIGRvdWJsZSBzdGFydFRpbWU7Ci0gICAgW1NldHRlclJhaXNl
c0V4Y2VwdGlvbl0gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBkb3VibGUgZW5kVGltZTsKKyAgICBb
U2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91
YmxlIHN0YXJ0VGltZTsKKyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJp
YnV0ZSB1bnJlc3RyaWN0ZWQgZG91YmxlIGVuZFRpbWU7CiAgICAgYXR0cmlidXRlIGJvb2xlYW4g
cGF1c2VPbkV4aXQ7CiAKICAgICBhdHRyaWJ1dGUgRXZlbnRIYW5kbGVyIG9uZW50ZXI7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1ZUVEN1ZS5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3RyYWNrL1ZUVEN1ZS5pZGwKaW5kZXggNGM5MWI5ZjAyNzA0MTdjNDI2Y2RhY2I4
MmU5NjUzYTE4OWE5NTYzMC4uNTA0MTBiM2U1MTg5YzQxNzkxZTIwY2JiZmMxMWRiOTgzNGM5ZWI4
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9WVFRDdWUuaWRsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2svVlRUQ3VlLmlkbApAQCAtMjksMTIgKzI5LDEyIEBA
CiAgICAgSlNHZW5lcmF0ZVRvSlNPYmplY3QsCiAgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0
LAogXSBpbnRlcmZhY2UgVlRUQ3VlIDogVGV4dFRyYWNrQ3VlIHsKLSAgICBbU2V0dGVyUmFpc2Vz
RXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHZlcnRpY2FsOworICAgIFtTZXR0ZXJNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyB2ZXJ0aWNhbDsKICAgICBh
dHRyaWJ1dGUgYm9vbGVhbiBzbmFwVG9MaW5lczsKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9u
XSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGRvdWJsZSBsaW5lOwotICAgIFtTZXR0ZXJSYWlzZXNF
eGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91YmxlIHBvc2l0aW9uOwotICAgIFtT
ZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91YmxlIHNpemU7
Ci0gICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBhbGlnbjsK
KyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0
ZWQgZG91YmxlIGxpbmU7CisgICAgW1NldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRy
aWJ1dGUgdW5yZXN0cmljdGVkIGRvdWJsZSBwb3NpdGlvbjsKKyAgICBbU2V0dGVyTWF5VGhyb3dM
ZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91YmxlIHNpemU7CisgICAg
W1NldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGFsaWdu
OwogICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgdGV4dDsKICAgICBEb2N1bWVudEZyYWdtZW50IGdl
dEN1ZUFzSFRNTCgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1ZU
VFJlZ2lvbi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1ZUVFJlZ2lvbi5pZGwKaW5k
ZXggY2FiZTkzOTcwMDQ0MGFiZjc1YTY0OTMxMGY3ZjdmMThiZjM2YzU2MS4uMjA2ZDFjMWZlZTRl
Mjc1ZWYwYzcwNWRiNzgyOTUwNTY3MTM1ZTg5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC90cmFjay9WVFRSZWdpb24uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvdHJhY2sv
VlRUUmVnaW9uLmlkbApAQCAtMzMsMTIgKzMzLDEyIEBACiAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IFRleHRUcmFjayB0cmFjazsKIAogICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgaWQ7Ci0gICAgW1Nl
dHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBkb3VibGUgd2lkdGg7
Ci0gICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIGxvbmcgaGVpZ2h0OwotICAg
IFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91YmxlIHJl
Z2lvbkFuY2hvclg7Ci0gICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIHVucmVz
dHJpY3RlZCBkb3VibGUgcmVnaW9uQW5jaG9yWTsKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9u
XSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGRvdWJsZSB2aWV3cG9ydEFuY2hvclg7Ci0gICAgW1Nl
dHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBkb3VibGUgdmlld3Bv
cnRBbmNob3JZOwotICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJp
bmcgc2Nyb2xsOworICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRl
IHVucmVzdHJpY3RlZCBkb3VibGUgd2lkdGg7CisgICAgW1NldHRlck1heVRocm93TGVnYWN5RXhj
ZXB0aW9uXSBhdHRyaWJ1dGUgbG9uZyBoZWlnaHQ7CisgICAgW1NldHRlck1heVRocm93TGVnYWN5
RXhjZXB0aW9uXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGRvdWJsZSByZWdpb25BbmNob3JYOwor
ICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIHVucmVzdHJpY3Rl
ZCBkb3VibGUgcmVnaW9uQW5jaG9yWTsKKyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRp
b25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91YmxlIHZpZXdwb3J0QW5jaG9yWDsKKyAgICBb
U2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91
YmxlIHZpZXdwb3J0QW5jaG9yWTsKKyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25d
IGF0dHJpYnV0ZSBET01TdHJpbmcgc2Nyb2xsOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2FwcGNhY2hlL0RPTUFwcGxpY2F0aW9uQ2FjaGUuaWRsIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2FwcGNhY2hlL0RPTUFwcGxpY2F0aW9uQ2FjaGUuaWRsCmluZGV4IDIxY2Vl
MTRmMzE2YmU3NDU0Y2QxMzM4M2U5NmM2YTIwNWYwODJmNmIuLjcxNmViYTA4MmIzN2JkZjQwYzNm
ZTcxY2RmODEwZmVkYmY2MjJjMTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9h
cHBjYWNoZS9ET01BcHBsaWNhdGlvbkNhY2hlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvYXBwY2FjaGUvRE9NQXBwbGljYXRpb25DYWNoZS5pZGwKQEAgLTM3LDggKzM3LDggQEAKICAg
ICBjb25zdCB1bnNpZ25lZCBzaG9ydCBPQlNPTEVURSA9IDU7CiAgICAgcmVhZG9ubHkgYXR0cmli
dXRlIHVuc2lnbmVkIHNob3J0IHN0YXR1czsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQg
dXBkYXRlKCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzd2FwQ2FjaGUoKTsKKyAgICBb
TWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgdXBkYXRlKCk7CisgICAgW01heVRocm93TGVn
YWN5RXhjZXB0aW9uXSB2b2lkIHN3YXBDYWNoZSgpOwogICAgIHZvaWQgYWJvcnQoKTsKIAogICAg
IGF0dHJpYnV0ZSBFdmVudEhhbmRsZXIgb25jaGVja2luZzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvQ3J5cHRvLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ3J5cHRvLmlkbApp
bmRleCA5MjQwODc4ZWFlN2JiMTk0MGVhNTEzN2QyMWM2MGY3ZGJkZmUwYTg1Li43NGFkYTBlZjIy
MWRlYTljNzA4NWJiNjllNDkwNWY5OTU0YzNhMzE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0NyeXB0by5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9DcnlwdG8uaWRsCkBA
IC0zMSw3ICszMSw3IEBACiAgICAgRXhwb3NlZD0oV2luZG93LFdvcmtlciksCiAgICAgR2VuZXJh
dGVJc1JlYWNoYWJsZT1JbXBsU2NyaXB0RXhlY3V0aW9uQ29udGV4dCwKIF0gaW50ZXJmYWNlIENy
eXB0byB7Ci0gICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSBBcnJheUJ1ZmZlclZpZXcgZ2V0
UmFuZG9tVmFsdWVzKEFycmF5QnVmZmVyVmlldyBhcnJheSk7CisgICAgW0N1c3RvbSwgTWF5VGhy
b3dMZWdhY3lFeGNlcHRpb25dIEFycmF5QnVmZmVyVmlldyBnZXRSYW5kb21WYWx1ZXMoQXJyYXlC
dWZmZXJWaWV3IGFycmF5KTsKIAotICAgIFtDb25kaXRpb25hbD1TVUJUTEVfQ1JZUFRPLCBHZXR0
ZXJSYWlzZXNFeGNlcHRpb25dIHJlYWRvbmx5IGF0dHJpYnV0ZSBXZWJLaXRTdWJ0bGVDcnlwdG8g
d2Via2l0U3VidGxlOworICAgIFtDb25kaXRpb25hbD1TVUJUTEVfQ1JZUFRPLCBHZXR0ZXJNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbl0gcmVhZG9ubHkgYXR0cmlidXRlIFdlYktpdFN1YnRsZUNyeXB0
byB3ZWJraXRTdWJ0bGU7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01T
ZWxlY3Rpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uaWRsCmluZGV4
IDc2MTkzOWFhM2JmZWM3ZDM4NmNlN2ZhNDNjYmMzYjdiZTFhMDM3NjIuLmY1NTdiYTczMjlkOTQ2
YzZhZDhjNDgzMTNiNTlkZDkwYTBkZDZlYmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvRE9NU2VsZWN0aW9uLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVNlbGVjdGlv
bi5pZGwKQEAgLTQxLDE2ICs0MSwxNiBAQAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25l
ZCBsb25nIHJhbmdlQ291bnQ7CiAKICAgICB2b2lkIGNvbGxhcHNlKE5vZGU/IG5vZGUsIG9wdGlv
bmFsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0ID0gMCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9p
ZCBjb2xsYXBzZVRvRW5kKCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBjb2xsYXBzZVRv
U3RhcnQoKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgY29sbGFwc2VUb0Vu
ZCgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBjb2xsYXBzZVRvU3RhcnQo
KTsKIAogICAgIHZvaWQgZGVsZXRlRnJvbURvY3VtZW50KCk7CiAgICAgYm9vbGVhbiBjb250YWlu
c05vZGUoTm9kZSBub2RlLCBvcHRpb25hbCBib29sZWFuIGFsbG93UGFydGlhbCA9IGZhbHNlKTsK
ICAgICB2b2lkIHNlbGVjdEFsbENoaWxkcmVuKE5vZGUgbm9kZSk7CiAKLSAgICBbUmFpc2VzRXhj
ZXB0aW9uXSB2b2lkIGV4dGVuZChOb2RlIG5vZGUsIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgb2Zm
c2V0ID0gMCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIGV4dGVuZChOb2Rl
IG5vZGUsIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0ID0gMCk7CiAKLSAgICBbUmFpc2Vz
RXhjZXB0aW9uXSBSYW5nZSBnZXRSYW5nZUF0KHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIFtN
YXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gUmFuZ2UgZ2V0UmFuZ2VBdCh1bnNpZ25lZCBsb25nIGlu
ZGV4KTsKICAgICB2b2lkIHJlbW92ZUFsbFJhbmdlcygpOwogICAgIHZvaWQgYWRkUmFuZ2UoUmFu
Z2UgcmFuZ2UpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5pZGwKaW5kZXggZmFjNmU4MWIzY2E4
YzUwNzY4NTAzZmRhNTdmYmVhNWRlYjg5ZTRmNi4uNmYwOWNhMDQ1YWE4N2NhZTljNTQ0NWJlZTBh
YWQyYmVmODZlNjQ4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbApAQCAtMTQ1LDcgKzE0
NSw3IEBACiAgICAgLy8gRE9NIExldmVsIDIgU3R5bGUgSW50ZXJmYWNlCiAgICAgW05ld09iamVj
dF0gQ1NTU3R5bGVEZWNsYXJhdGlvbiBnZXRDb21wdXRlZFN0eWxlKEVsZW1lbnQgZWxlbWVudCwg
b3B0aW9uYWwgRE9NU3RyaW5nPyBwc2V1ZG9FbGVtZW50ID0gbnVsbCk7CiAgICAgLy8gRklYTUU6
IERyb3AgdGhpcyBvdmVybG9hZCBvbmNlIDxyZGFyOi8vcHJvYmxlbS8yODAxNjc3OD4gaGFzIGJl
ZW4gZml4ZWQuCi0gICAgW05ld09iamVjdCwgUmFpc2VzRXhjZXB0aW9uXSBDU1NTdHlsZURlY2xh
cmF0aW9uIGdldENvbXB1dGVkU3R5bGUoRG9jdW1lbnQgZG9jdW1lbnQsIG9wdGlvbmFsIERPTVN0
cmluZz8gcHNldWRvRWxlbWVudCA9IG51bGwpOworICAgIFtOZXdPYmplY3QsIE1heVRocm93TGVn
YWN5RXhjZXB0aW9uXSBDU1NTdHlsZURlY2xhcmF0aW9uIGdldENvbXB1dGVkU3R5bGUoRG9jdW1l
bnQgZG9jdW1lbnQsIG9wdGlvbmFsIERPTVN0cmluZz8gcHNldWRvRWxlbWVudCA9IG51bGwpOwog
CiAgICAgLy8gV2ViS2l0IGV4dGVuc2lvbnMKICAgICBDU1NSdWxlTGlzdCBnZXRNYXRjaGVkQ1NT
UnVsZXMob3B0aW9uYWwgRWxlbWVudD8gZWxlbWVudCA9IG51bGwsIG9wdGlvbmFsIERPTVN0cmlu
Zz8gcHNldWRvRWxlbWVudCA9IG51bGwpOwpAQCAtMTU5LDggKzE1OSw4IEBACiAKICAgICByZWFk
b25seSBhdHRyaWJ1dGUgRE9NQXBwbGljYXRpb25DYWNoZSBhcHBsaWNhdGlvbkNhY2hlOwogCi0g
ICAgW0dldHRlclJhaXNlc0V4Y2VwdGlvbl0gcmVhZG9ubHkgYXR0cmlidXRlIFN0b3JhZ2Ugc2Vz
c2lvblN0b3JhZ2U7Ci0gICAgW0dldHRlclJhaXNlc0V4Y2VwdGlvbl0gcmVhZG9ubHkgYXR0cmli
dXRlIFN0b3JhZ2UgbG9jYWxTdG9yYWdlOworICAgIFtHZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gcmVhZG9ubHkgYXR0cmlidXRlIFN0b3JhZ2Ugc2Vzc2lvblN0b3JhZ2U7CisgICAgW0dl
dHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSByZWFkb25seSBhdHRyaWJ1dGUgU3RvcmFnZSBs
b2NhbFN0b3JhZ2U7CiAKICAgICAvLyBUaGlzIGlzIHRoZSBpbnRlcmZhY2Ugb3JpZW50YXRpb24g
aW4gZGVncmVlcy4gU29tZSBleGFtcGxlcyBhcmU6CiAgICAgLy8gIDAgaXMgc3RyYWlnaHQgdXA7
IC05MCBpcyB3aGVuIHRoZSBkZXZpY2UgaXMgcm90YXRlZCA5MCBjbG9ja3dpc2U7CkBAIC0xNjgs
NyArMTY4LDcgQEAKICAgICBbQ29uZGl0aW9uYWw9T1JJRU5UQVRJT05fRVZFTlRTXSByZWFkb25s
eSBhdHRyaWJ1dGUgbG9uZyBvcmllbnRhdGlvbjsKIAogICAgIC8vIGNyb3NzLWRvY3VtZW50IG1l
c3NhZ2luZwotICAgIFtEb05vdENoZWNrU2VjdXJpdHksIEN1c3RvbSwgUmFpc2VzRXhjZXB0aW9u
LCBGb3J3YXJkRGVjbGFyZUluSGVhZGVyXSB2b2lkIHBvc3RNZXNzYWdlKFNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZSBtZXNzYWdlLCBVU1ZTdHJpbmcgdGFyZ2V0T3JpZ2luLCBvcHRpb25hbCBBcnJheSBt
ZXNzYWdlUG9ydHMpOworICAgIFtEb05vdENoZWNrU2VjdXJpdHksIEN1c3RvbSwgTWF5VGhyb3dM
ZWdhY3lFeGNlcHRpb24sIEZvcndhcmREZWNsYXJlSW5IZWFkZXJdIHZvaWQgcG9zdE1lc3NhZ2Uo
U2VyaWFsaXplZFNjcmlwdFZhbHVlIG1lc3NhZ2UsIFVTVlN0cmluZyB0YXJnZXRPcmlnaW4sIG9w
dGlvbmFsIEFycmF5IG1lc3NhZ2VQb3J0cyk7CiAKICAgICBbQ29uZGl0aW9uYWw9V0VCX1RJTUlO
RywgUmVwbGFjZWFibGVdIHJlYWRvbmx5IGF0dHJpYnV0ZSBQZXJmb3JtYW5jZSBwZXJmb3JtYW5j
ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudFNvdXJjZS5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmlkbAppbmRleCA0ZmJlMTZiNTFhNDY4OTlj
ZTM1Y2RkMGY2OGY1Y2ZhOWNmNWQ3MzA1Li4zMjRlMmJjYzY4NGVjN2E0OTkzMDY5MDg4MjZjZjFm
MGZlOGMyMGU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmlkbApAQCAtMzQsNyArMzQs
NyBAQAogICAgIEFjdGl2ZURPTU9iamVjdCwKICAgICBDb25zdHJ1Y3RvcihVU1ZTdHJpbmcgdXJs
LCBvcHRpb25hbCBFdmVudFNvdXJjZUluaXQgZXZlbnRTb3VyY2VJbml0RGljdCksCiAgICAgQ29u
c3RydWN0b3JDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LAotICAgIENvbnN0cnVjdG9y
UmFpc2VzRXhjZXB0aW9uLAorICAgIENvbnN0cnVjdG9yTWF5VGhyb3dMZWdhY3lFeGNlcHRpb24s
CiBdIGludGVyZmFjZSBFdmVudFNvdXJjZSA6IEV2ZW50VGFyZ2V0IHsKICAgICByZWFkb25seSBh
dHRyaWJ1dGUgVVNWU3RyaW5nIFVSTDsgLy8gTG93ZXJjYXNlZCAudXJsIGlzIHRoZSBvbmUgaW4g
dGhlIHNwZWMsIGJ1dCBsZWF2aW5nIC5VUkwgZm9yIGNvbXBhdGliaWxpdHkgcmVhc29ucy4KICAg
ICByZWFkb25seSBhdHRyaWJ1dGUgVVNWU3RyaW5nIHVybDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvSGlzdG9yeS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0hpc3RvcnkuaWRs
CmluZGV4IGY5YTgzYTEyNWQ0YzMxNGJmYzJmZjVmZWExMjJjMDc1OWRlZDI4YmMuLmUyNmYwY2Rh
ZmQwYTNiOWFiMjc5ZTIxNzc3MjgyMWEzYzNmNmMwMjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvSGlzdG9yeS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9IaXN0b3J5Lmlk
bApAQCAtMzMsNiArMzMsNiBAQAogICAgIFtDYWxsV2l0aD1Eb2N1bWVudCwgRm9yd2FyZERlY2xh
cmVJbkhlYWRlcl0gdm9pZCBmb3J3YXJkKCk7CiAgICAgW0NhbGxXaXRoPURvY3VtZW50LCBGb3J3
YXJkRGVjbGFyZUluSGVhZGVyXSB2b2lkIGdvKG9wdGlvbmFsIGxvbmcgZGlzdGFuY2UgPSAwKTsK
IAotICAgIFtDdXN0b20sIFJhaXNlc0V4Y2VwdGlvbl0gdm9pZCBwdXNoU3RhdGUoYW55IGRhdGEs
IERPTVN0cmluZyB0aXRsZSwgb3B0aW9uYWwgVVNWU3RyaW5nPyB1cmwgPSBudWxsKTsKLSAgICBb
Q3VzdG9tLCBSYWlzZXNFeGNlcHRpb25dIHZvaWQgcmVwbGFjZVN0YXRlKGFueSBkYXRhLCBET01T
dHJpbmcgdGl0bGUsIG9wdGlvbmFsIFVTVlN0cmluZz8gdXJsID0gbnVsbCk7CisgICAgW0N1c3Rv
bSwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgcHVzaFN0YXRlKGFueSBkYXRhLCBET01T
dHJpbmcgdGl0bGUsIG9wdGlvbmFsIFVTVlN0cmluZz8gdXJsID0gbnVsbCk7CisgICAgW0N1c3Rv
bSwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgcmVwbGFjZVN0YXRlKGFueSBkYXRhLCBE
T01TdHJpbmcgdGl0bGUsIG9wdGlvbmFsIFVTVlN0cmluZz8gdXJsID0gbnVsbCk7CiB9OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Mb2NhdGlvbi5pZGwgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0xvY2F0aW9uLmlkbAppbmRleCA3Nzc5NGZmMjM3NTMzNjJhZjhjNDJhZDRlM2FkMjll
M2Q5MWQ3NmRlLi4wNTJjOGJjY2FkODhmYzE4ZmQ3NzE2OTAwNjZlZmQ3ZGNlMTNlOGE4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0xvY2F0aW9uLmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0xvY2F0aW9uLmlkbApAQCAtNDgsNyArNDgsNyBAQAogICAgIFtDYWxsV2l0aD1B
Y3RpdmVXaW5kb3csIEZvcndhcmREZWNsYXJlSW5IZWFkZXJdIHZvaWQgcmVsb2FkKCk7CiAKICAg
ICAvLyBVUkkgZGVjb21wb3NpdGlvbiBhdHRyaWJ1dGVzCi0gICAgW1NldHRlckNhbGxXaXRoPUFj
dGl2ZVdpbmRvdyZGaXJzdFdpbmRvdywgU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUg
VVNWU3RyaW5nIHByb3RvY29sOworICAgIFtTZXR0ZXJDYWxsV2l0aD1BY3RpdmVXaW5kb3cmRmly
c3RXaW5kb3csIFNldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgVVNWU3Ry
aW5nIHByb3RvY29sOwogICAgIFtTZXR0ZXJDYWxsV2l0aD1BY3RpdmVXaW5kb3cmRmlyc3RXaW5k
b3ddIGF0dHJpYnV0ZSBVU1ZTdHJpbmcgaG9zdDsKICAgICBbU2V0dGVyQ2FsbFdpdGg9QWN0aXZl
V2luZG93JkZpcnN0V2luZG93XSBhdHRyaWJ1dGUgVVNWU3RyaW5nIGhvc3RuYW1lOwogICAgIFtT
ZXR0ZXJDYWxsV2l0aD1BY3RpdmVXaW5kb3cmRmlyc3RXaW5kb3ddIGF0dHJpYnV0ZSBVU1ZTdHJp
bmcgcG9ydDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGVyZm9ybWFuY2UuaWRs
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5pZGwKaW5kZXggNTg5OTVmZWI1ZGZm
MDUwNjM3OWZlNzdiOTAzZmI2NmRiNjM0YmQwYi4uOTk4YjFlMDA2Mzk5MTk1YjM1MWRiMjkxMGM4
OTA4YzM3MjRhNTNmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5j
ZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QZXJmb3JtYW5jZS5pZGwKQEAgLTQ5LDEw
ICs0OSwxMCBAQAogCiAgICAgLy8gU2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTIvQ1ItdXNl
ci10aW1pbmctMjAxMjA3MjYvCiAjaWYgZGVmaW5lZChFTkFCTEVfVVNFUl9USU1JTkcpICYmIEVO
QUJMRV9VU0VSX1RJTUlORwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgd2Via2l0TWFyayhE
T01TdHJpbmcgbWFya05hbWUpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCB3
ZWJraXRNYXJrKERPTVN0cmluZyBtYXJrTmFtZSk7CiAgICAgdm9pZCB3ZWJraXRDbGVhck1hcmtz
KG9wdGlvbmFsICBET01TdHJpbmcgbWFya05hbWUpOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0g
dm9pZCB3ZWJraXRNZWFzdXJlKERPTVN0cmluZyBtZWFzdXJlTmFtZSwgb3B0aW9uYWwgRE9NU3Ry
aW5nIHN0YXJ0TWFyaywgb3B0aW9uYWwgRE9NU3RyaW5nIGVuZE1hcmspOworICAgIFtNYXlUaHJv
d0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCB3ZWJraXRNZWFzdXJlKERPTVN0cmluZyBtZWFzdXJlTmFt
ZSwgb3B0aW9uYWwgRE9NU3RyaW5nIHN0YXJ0TWFyaywgb3B0aW9uYWwgRE9NU3RyaW5nIGVuZE1h
cmspOwogICAgIHZvaWQgd2Via2l0Q2xlYXJNZWFzdXJlcyhvcHRpb25hbCBET01TdHJpbmcgbWVh
c3VyZU5hbWUpOwogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvVXNl
ck1lc3NhZ2VIYW5kbGVyLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvVXNlck1lc3NhZ2VIYW5k
bGVyLmlkbAppbmRleCBiMWEwMzg3YTJjYTMzNzM3OWQ2ZWZhOTJhODc5N2I3N2ZlN2FhMzc5Li5j
ZjhjMzM1Y2JkNGQ3N2I0NGVkMzFhMThmM2Q0ZWU5ZmY1MDAzOGNkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1VzZXJNZXNzYWdlSGFuZGxlci5pZGwKKysrIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9Vc2VyTWVzc2FnZUhhbmRsZXIuaWRsCkBAIC0yNiw1ICsyNiw1IEBACiBbCiAgICAg
Q29uZGl0aW9uYWw9VVNFUl9NRVNTQUdFX0hBTkRMRVJTCiBdIGludGVyZmFjZSBVc2VyTWVzc2Fn
ZUhhbmRsZXIgewotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgcG9zdE1lc3NhZ2UoU2VyaWFs
aXplZFNjcmlwdFZhbHVlIG1lc3NhZ2UpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0g
dm9pZCBwb3N0TWVzc2FnZShTZXJpYWxpemVkU2NyaXB0VmFsdWUgbWVzc2FnZSk7CiB9OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9XaW5kb3dPcldvcmtlckdsb2JhbFNjb3BlLmlk
bCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvV2luZG93T3JXb3JrZXJHbG9iYWxTY29wZS5pZGwKaW5k
ZXggZGJlYmJlMjc3M2JkYTgxMDk5OTRhODVhZTI2OWUxZGQwZDQ0ZjVlOS4uNDEwZmRhOGY0NmNl
MjJiZGM4ZTMwNWJhMjg0Yjg1N2EwNDFkNWIwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9XaW5kb3dPcldvcmtlckdsb2JhbFNjb3BlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1dpbmRvd09yV29ya2VyR2xvYmFsU2NvcGUuaWRsCkBAIC0zNSw3ICszNSw3IEBACiAgICAg
dm9pZCBjbGVhckludGVydmFsKG9wdGlvbmFsIGxvbmcgaGFuZGxlID0gMCk7CiAKICAgICAvLyBC
YXNlNjQgdXRpbGl0eSBtZXRob2RzLgotICAgIFtSYWlzZXNFeGNlcHRpb25dIERPTVN0cmluZyBh
dG9iKERPTVN0cmluZyBzdHJpbmcpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIERPTVN0cmluZyBi
dG9hKERPTVN0cmluZyBzdHJpbmcpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gRE9N
U3RyaW5nIGF0b2IoRE9NU3RyaW5nIHN0cmluZyk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0
aW9uXSBET01TdHJpbmcgYnRvYShET01TdHJpbmcgc3RyaW5nKTsKIH07CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvU3RvcmFnZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdG9y
YWdlL1N0b3JhZ2UuaWRsCmluZGV4IGU2N2I3ZDA3Y2E5YWQzOGZjMzJiMDBhNDI5YjM0ODEzYWY5
ZjU2MWIuLmIwODRmN2QxNTJhNDIzNDk0Y2Q0MTAwMmU3NmNmNjc4MmFlOTljYWUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvU3RvcmFnZS5pZGwKKysrIGIvU291cmNlL1dlYkNv
cmUvc3RvcmFnZS9TdG9yYWdlLmlkbApAQCAtMzAsMTEgKzMwLDExIEBACiAgICAgQ3VzdG9tTmFt
ZWRTZXR0ZXIsCiAgICAgU2tpcFZUYWJsZVZhbGlkYXRpb24sCiBdIGludGVyZmFjZSBTdG9yYWdl
IHsKLSAgICBbR2V0dGVyUmFpc2VzRXhjZXB0aW9uXSByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWdu
ZWQgbG9uZyBsZW5ndGg7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gRE9NU3RyaW5nPyBrZXkodW5z
aWduZWQgbG9uZyBpbmRleCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gZ2V0dGVyIERPTVN0cmlu
Zz8gZ2V0SXRlbShET01TdHJpbmcga2V5KTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNl
dEl0ZW0oRE9NU3RyaW5nIGtleSwgRE9NU3RyaW5nIGRhdGEpOwotICAgIFtSYWlzZXNFeGNlcHRp
b25dIHZvaWQgcmVtb3ZlSXRlbShET01TdHJpbmcga2V5KTsKLSAgICBbUmFpc2VzRXhjZXB0aW9u
XSB2b2lkIGNsZWFyKCk7CisgICAgW0dldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSByZWFk
b25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7CisgICAgW01heVRocm93TGVnYWN5
RXhjZXB0aW9uXSBET01TdHJpbmc/IGtleSh1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBbTWF5
VGhyb3dMZWdhY3lFeGNlcHRpb25dIGdldHRlciBET01TdHJpbmc/IGdldEl0ZW0oRE9NU3RyaW5n
IGtleSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNldEl0ZW0oRE9NU3Ry
aW5nIGtleSwgRE9NU3RyaW5nIGRhdGEpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0g
dm9pZCByZW1vdmVJdGVtKERPTVN0cmluZyBrZXkpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gdm9pZCBjbGVhcigpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3Zn
L1NWR0FsdEdseXBoRWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQWx0R2x5cGhF
bGVtZW50LmlkbAppbmRleCBhMzRmNjA5OWZjYmEwMmFjMDA3NjYzYjM0YmJlZjE1YjAxNTBhM2I1
Li4yNWZiN2Q1NTk5NmNiODAwYzE1ZjY0MDBlMDdmZTkzNjkzZDU5Y2I1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHQWx0R2x5cGhFbGVtZW50LmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9zdmcvU1ZHQWx0R2x5cGhFbGVtZW50LmlkbApAQCAtMjYsOCArMjYsOCBAQAogWwogICAg
IENvbmRpdGlvbmFsPVNWR19GT05UUywKIF0gaW50ZXJmYWNlIFNWR0FsdEdseXBoRWxlbWVudCA6
IFNWR1RleHRQb3NpdGlvbmluZ0VsZW1lbnQgewotICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25d
IGF0dHJpYnV0ZSBET01TdHJpbmcgZ2x5cGhSZWY7Ci0gICAgW1NldHRlclJhaXNlc0V4Y2VwdGlv
bl0gYXR0cmlidXRlIERPTVN0cmluZyBmb3JtYXQ7CisgICAgW1NldHRlck1heVRocm93TGVnYWN5
RXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGdseXBoUmVmOworICAgIFtTZXR0ZXJNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBmb3JtYXQ7CiB9OwogCiBT
VkdBbHRHbHlwaEVsZW1lbnQgaW1wbGVtZW50cyBTVkdVUklSZWZlcmVuY2U7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5nbGUuaWRsIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NW
R0FuZ2xlLmlkbAppbmRleCAxMDM1NzE0ZTAzNWY4YmQzZGMzNjk1NmMxNzU5NTcyZGRhYjE0MTE5
Li44OWM0NDdkYTlmNmI1Y2M2MzdhZWExMTAwMTYwNzZiNzhmNjAyMmI3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5nbGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9T
VkdBbmdsZS5pZGwKQEAgLTMyLDEwICszMiwxMCBAQCBpbnRlcmZhY2UgU1ZHQW5nbGUgewogICAg
IGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgdmFsdWU7CiAgICAgYXR0cmlidXRlIHVucmVz
dHJpY3RlZCBmbG9hdCB2YWx1ZUluU3BlY2lmaWVkVW5pdHM7CiAKLSAgICBbU2V0dGVyUmFpc2Vz
RXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHZhbHVlQXNTdHJpbmc7CisgICAgW1NldHRl
ck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHZhbHVlQXNTdHJp
bmc7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIG5ld1ZhbHVlU3BlY2lmaWVkVW5pdHMo
dW5zaWduZWQgc2hvcnQgdW5pdFR5cGUsIHVucmVzdHJpY3RlZCBmbG9hdCB2YWx1ZUluU3BlY2lm
aWVkVW5pdHMpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBuZXdWYWx1ZVNw
ZWNpZmllZFVuaXRzKHVuc2lnbmVkIHNob3J0IHVuaXRUeXBlLCB1bnJlc3RyaWN0ZWQgZmxvYXQg
dmFsdWVJblNwZWNpZmllZFVuaXRzKTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgY29u
dmVydFRvU3BlY2lmaWVkVW5pdHModW5zaWduZWQgc2hvcnQgdW5pdFR5cGUpOworICAgIFtNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBjb252ZXJ0VG9TcGVjaWZpZWRVbml0cyh1bnNpZ25l
ZCBzaG9ydCB1bml0VHlwZSk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcv
U1ZHQW5pbWF0ZWRCb29sZWFuLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlZEJv
b2xlYW4uaWRsCmluZGV4IGIwNzIzNzEyOTBlYzIyYTc5MzRkN2E3ODE0MmQ1YTdlZTIyMzBmMWQu
LjRkNDFhYzA2ZDQ1NzI5N2QyMDQyZDZhMDQzY2M1ODBmNmUwMjdhYjggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlZEJvb2xlYW4uaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdBbmltYXRlZEJvb2xlYW4uaWRsCkBAIC0yNiw3ICsyNiw3IEBACiBbCiAgICAg
U2tpcFZUYWJsZVZhbGlkYXRpb24KIF0gaW50ZXJmYWNlIFNWR0FuaW1hdGVkQm9vbGVhbiB7Ci0g
ICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIGJvb2xlYW4gYmFzZVZhbDsKKyAg
ICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSBib29sZWFuIGJhc2VW
YWw7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGJvb2xlYW4gYW5pbVZhbDsKIH07CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlZEVudW1lcmF0aW9uLmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlZEVudW1lcmF0aW9uLmlkbAppbmRleCBkMDM2MWVk
OTViMzBhNjA4NjllMWU1MGU4ZjI4MmIxMjhkM2QzMjM3Li4zYTlmM2I4ZjhlNGE5YjgxODcwYmRi
YmY4YmU2YjA0MDVkYTY1OTJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5p
bWF0ZWRFbnVtZXJhdGlvbi5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVk
RW51bWVyYXRpb24uaWRsCkBAIC0yNiw3ICsyNiw3IEBACiBbCiAgICAgU2tpcFZUYWJsZVZhbGlk
YXRpb24KIF0gaW50ZXJmYWNlIFNWR0FuaW1hdGVkRW51bWVyYXRpb24gewotICAgIFtTZXR0ZXJS
YWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnNpZ25lZCBzaG9ydCBiYXNlVmFsOworICAgIFtT
ZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0IGJh
c2VWYWw7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0IGFuaW1WYWw7CiB9
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZWRJbnRlZ2VyLmlk
bCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlZEludGVnZXIuaWRsCmluZGV4IDI4NWUx
NjRhYmJmYzRiOGY3MDUzOWY4ZTgzYzY2Y2NmMjZhMmQxYzkuLjg0ZjNmOTcwNTRmYmQ2ZjVmNmQz
OTFlYzBiYWUzMjJkZjliMzNmMTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdB
bmltYXRlZEludGVnZXIuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlZElu
dGVnZXIuaWRsCkBAIC0yNiw3ICsyNiw3IEBACiBbCiAgICAgU2tpcFZUYWJsZVZhbGlkYXRpb24K
IF0gaW50ZXJmYWNlIFNWR0FuaW1hdGVkSW50ZWdlciB7Ci0gICAgW1NldHRlclJhaXNlc0V4Y2Vw
dGlvbl0gYXR0cmlidXRlIGxvbmcgYmFzZVZhbDsKKyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb25dIGF0dHJpYnV0ZSBsb25nIGJhc2VWYWw7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IGxvbmcgYW5pbVZhbDsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdB
bmltYXRlZE51bWJlci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZWROdW1iZXIu
aWRsCmluZGV4IDJlMTBmMDJiMjVkYjExOWQ0NGY5MzY1MTgzYTZiM2M0YTk4ZGY1YTAuLjczYTNh
NWUzMDFmODU4Y2VkZDk5ZjY1NTAyOTI5MDYzMTZkZThhYzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdBbmltYXRlZE51bWJlci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3Zn
L1NWR0FuaW1hdGVkTnVtYmVyLmlkbApAQCAtMjcsNyArMjcsNyBAQAogWwogICAgIFNraXBWVGFi
bGVWYWxpZGF0aW9uCiBdIGludGVyZmFjZSBTVkdBbmltYXRlZE51bWJlciB7Ci0gICAgW1NldHRl
clJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCBiYXNlVmFsOwor
ICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIHVucmVzdHJpY3Rl
ZCBmbG9hdCBiYXNlVmFsOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxv
YXQgYW5pbVZhbDsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmlt
YXRlZFN0cmluZy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZWRTdHJpbmcuaWRs
CmluZGV4IGMwN2EyZTQwMDAzMmIzMmQyYzYwZWJjNzU2NjFiMzhiNTlkNDIwOTcuLmIwMjk0ZjRj
OWU0MzUyODMxNjU2ZTY0YjYyOWQ1ZTdmZWE4OWFlMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdBbmltYXRlZFN0cmluZy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NW
R0FuaW1hdGVkU3RyaW5nLmlkbApAQCAtMjYsNyArMjYsNyBAQAogWwogICAgIFNraXBWVGFibGVW
YWxpZGF0aW9uCiBdIGludGVyZmFjZSBTVkdBbmltYXRlZFN0cmluZyB7Ci0gICAgW1NldHRlclJh
aXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBiYXNlVmFsOworICAgIFtTZXR0ZXJN
YXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBiYXNlVmFsOwogICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgYW5pbVZhbDsKIH07CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRpb25FbGVtZW50LmlkbCBiL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdBbmltYXRpb25FbGVtZW50LmlkbAppbmRleCBmOWExN2Y1YjQ5OGZiNmIyNjFl
ZDUyYTE4MjY0MTdlNDFmNjY0YTA4Li4wZDcxOTY0OGU0N2ZiYzNiNGM4OWM3MjdhYTE2N2QyMzRm
NDM3NWQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0aW9uRWxlbWVu
dC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGlvbkVsZW1lbnQuaWRsCkBA
IC0yOSw3ICsyOSw3IEBAIGludGVyZmFjZSBTVkdBbmltYXRpb25FbGVtZW50IDogU1ZHRWxlbWVu
dCB7CiAKICAgICB1bnJlc3RyaWN0ZWQgZmxvYXQgZ2V0U3RhcnRUaW1lKCk7CiAgICAgdW5yZXN0
cmljdGVkIGZsb2F0IGdldEN1cnJlbnRUaW1lKCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdW5y
ZXN0cmljdGVkIGZsb2F0IGdldFNpbXBsZUR1cmF0aW9uKCk7CisgICAgW01heVRocm93TGVnYWN5
RXhjZXB0aW9uXSB1bnJlc3RyaWN0ZWQgZmxvYXQgZ2V0U2ltcGxlRHVyYXRpb24oKTsKIAogICAg
IHZvaWQgYmVnaW5FbGVtZW50KCk7CiAgICAgdm9pZCBiZWdpbkVsZW1lbnRBdChvcHRpb25hbCB1
bnJlc3RyaWN0ZWQgZmxvYXQgb2Zmc2V0ID0gTmFOKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdDb2xvci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQ29sb3IuaWRsCmlu
ZGV4IDkxZDU1NjM4ZGU3OTBhODQ0YWYwMjJiNTNiMWVkMmM1M2JlNGQ0Y2EuLmIyOWRkMjgwNDgx
OTk0NTU3NmFmZmNmY2EzZDZiOTFmNTgzZjI5OGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdDb2xvci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0NvbG9yLmlkbApA
QCAtMzEsMTAgKzMxLDEwIEBACiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFJHQkNvbG9yIHJnYkNv
bG9yOwogICAgIC8vIEZJWE1FOiByZWFkb25seSBhdHRyaWJ1dGUgU1ZHSUNDQ29sb3IgaWNjQ29s
b3I7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldFJHQkNvbG9yKERPTVN0cmluZyBy
Z2JDb2xvcik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNldFJHQkNvbG9y
KERPTVN0cmluZyByZ2JDb2xvcik7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldFJH
QkNvbG9ySUNDQ29sb3IoRE9NU3RyaW5nIHJnYkNvbG9yLCBET01TdHJpbmcgaWNjQ29sb3IpOwor
ICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRSR0JDb2xvcklDQ0NvbG9yKERP
TVN0cmluZyByZ2JDb2xvciwgRE9NU3RyaW5nIGljY0NvbG9yKTsKIAotICAgIFtSYWlzZXNFeGNl
cHRpb25dIHZvaWQgc2V0Q29sb3IodW5zaWduZWQgc2hvcnQgY29sb3JUeXBlLCBET01TdHJpbmcg
cmdiQ29sb3IsIERPTVN0cmluZyBpY2NDb2xvcik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0
aW9uXSB2b2lkIHNldENvbG9yKHVuc2lnbmVkIHNob3J0IGNvbG9yVHlwZSwgRE9NU3RyaW5nIHJn
YkNvbG9yLCBET01TdHJpbmcgaWNjQ29sb3IpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvc3ZnL1NWR0dseXBoUmVmRWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZH
R2x5cGhSZWZFbGVtZW50LmlkbAppbmRleCAxN2QzOWNlYjVhMDQ0YjQxNjYwNTkyZmVkN2NmYTc4
YzJmNjRkYTA1Li40ZjFhMzMzNWMxNDI4M2RmYTljMWQwNjYxMzFkZjlmNmY3YTMyYmViIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHR2x5cGhSZWZFbGVtZW50LmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHR2x5cGhSZWZFbGVtZW50LmlkbApAQCAtMjEsMTIgKzIxLDEy
IEBACiAgICAgQ29uZGl0aW9uYWw9U1ZHX0ZPTlRTCiBdIGludGVyZmFjZSBTVkdHbHlwaFJlZkVs
ZW1lbnQgOiBTVkdFbGVtZW50IHsKICAgICAvLyBGSVhNRTogVXNlIFtSZWZsZWN0XSBhZnRlciBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjQ4NDMgaXMgZml4ZWQuCi0g
ICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBnbHlwaFJlZjsK
KyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmcg
Z2x5cGhSZWY7CiAgICAgW1JlZmxlY3RdIGF0dHJpYnV0ZSBET01TdHJpbmcgZm9ybWF0OwotICAg
IFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeDsK
LSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0
IHk7Ci0gICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBm
bG9hdCBkeDsKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgdW5yZXN0cmlj
dGVkIGZsb2F0IGR5OworICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmli
dXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4OworICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5OworICAgIFtTZXR0ZXJNYXlUaHJv
d0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCBkeDsKKyAgICBb
U2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxv
YXQgZHk7CiB9OwogCiBTVkdHbHlwaFJlZkVsZW1lbnQgaW1wbGVtZW50cyBTVkdVUklSZWZlcmVu
Y2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHR3JhcGhpY3NFbGVtZW50Lmlk
bCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdHcmFwaGljc0VsZW1lbnQuaWRsCmluZGV4IDhiNmQ0
ZWJhNDczZDM5YzQxYWJjOTljN2NiMTFiNDNhYjNkMjc4MmIuLjQ3N2U1NGQwM2NmMGM5ZWE1MjY1
YTBjZjRjMjkwYzU5MjgwOWZlOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdH
cmFwaGljc0VsZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdHcmFwaGljc0Vs
ZW1lbnQuaWRsCkBAIC0zMiw3ICszMiw3IEBAIGludGVyZmFjZSBTVkdHcmFwaGljc0VsZW1lbnQg
OiBTVkdFbGVtZW50IHsKICAgICBTVkdSZWN0IGdldEJCb3goKTsKICAgICBTVkdNYXRyaXggZ2V0
Q1RNKCk7CiAgICAgU1ZHTWF0cml4IGdldFNjcmVlbkNUTSgpOwotICAgIFtSYWlzZXNFeGNlcHRp
b25dIFNWR01hdHJpeCBnZXRUcmFuc2Zvcm1Ub0VsZW1lbnQob3B0aW9uYWwgU1ZHRWxlbWVudD8g
ZWxlbWVudCA9IG51bGwpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gU1ZHTWF0cml4
IGdldFRyYW5zZm9ybVRvRWxlbWVudChvcHRpb25hbCBTVkdFbGVtZW50PyBlbGVtZW50ID0gbnVs
bCk7CiB9OwogCiBTVkdHcmFwaGljc0VsZW1lbnQgaW1wbGVtZW50cyBTVkdUZXN0czsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdMZW5ndGguaWRsIGIvU291cmNlL1dlYkNvcmUv
c3ZnL1NWR0xlbmd0aC5pZGwKaW5kZXggMTc3MGE5Zjg0ZjYwZDgzZWUxMzFhMjEyOWI2NDVlYmY0
NWU2ZTA5My4uZDYwMjY3YzhkMWYzZjI1NDViYzZjZTI1NTA5Mzc5Y2RlOWNmZWNlYiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0xlbmd0aC5pZGwKKysrIGIvU291cmNlL1dlYkNv
cmUvc3ZnL1NWR0xlbmd0aC5pZGwKQEAgLTM1LDE1ICszNSwxNSBAQCBpbnRlcmZhY2UgU1ZHTGVu
Z3RoIHsKICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBTVkdfTEVOR1RIVFlQRV9QQyAgICAgICAg
ID0gMTA7CiAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQgdW5pdFR5cGU7
Ci0gICAgW0dldHRlclJhaXNlc0V4Y2VwdGlvbiwgU2V0dGVyUmFpc2VzRXhjZXB0aW9uLCBDdXN0
b21dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgdmFsdWU7CisgICAgW0dldHRlck1heVRo
cm93TGVnYWN5RXhjZXB0aW9uLCBTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbiwgQ3VzdG9t
XSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHZhbHVlOwogCiAgICAgYXR0cmlidXRlIHVu
cmVzdHJpY3RlZCBmbG9hdCB2YWx1ZUluU3BlY2lmaWVkVW5pdHM7CiAKLSAgICBbU2V0dGVyUmFp
c2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHZhbHVlQXNTdHJpbmc7CisgICAgW1Nl
dHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHZhbHVlQXNT
dHJpbmc7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIG5ld1ZhbHVlU3BlY2lmaWVkVW5p
dHModW5zaWduZWQgc2hvcnQgdW5pdFR5cGUsCisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9u
XSB2b2lkIG5ld1ZhbHVlU3BlY2lmaWVkVW5pdHModW5zaWduZWQgc2hvcnQgdW5pdFR5cGUsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVucmVz
dHJpY3RlZCBmbG9hdCB2YWx1ZUluU3BlY2lmaWVkVW5pdHMpOwogCi0gICAgW0N1c3RvbSwgUmFp
c2VzRXhjZXB0aW9uXSB2b2lkIGNvbnZlcnRUb1NwZWNpZmllZFVuaXRzKHVuc2lnbmVkIHNob3J0
IHVuaXRUeXBlKTsKKyAgICBbQ3VzdG9tLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBj
b252ZXJ0VG9TcGVjaWZpZWRVbml0cyh1bnNpZ25lZCBzaG9ydCB1bml0VHlwZSk7CiB9OwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTGVuZ3RoTGlzdC5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHTGVuZ3RoTGlzdC5pZGwKaW5kZXggMjU4ZDk3ZDdlNjg3YWJmY2Q5MjVh
ZGFkMzQ4OGYzNWVhMWQxYWYxMS4uZTMzNGI0NTNkMTBlNzg1OWE0ZDk0YzYxZmFkNTI1NTRjODcx
MmM0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0xlbmd0aExpc3QuaWRsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdMZW5ndGhMaXN0LmlkbApAQCAtMjcsMTEgKzI3LDEx
IEBACiBpbnRlcmZhY2UgU1ZHTGVuZ3RoTGlzdCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVu
c2lnbmVkIGxvbmcgbnVtYmVyT2ZJdGVtczsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQg
Y2xlYXIoKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBTVkdMZW5ndGggaW5pdGlhbGl6ZShTVkdM
ZW5ndGggaXRlbSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gU1ZHTGVuZ3RoIGdldEl0ZW0odW5z
aWduZWQgbG9uZyBpbmRleCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gU1ZHTGVuZ3RoIGluc2Vy
dEl0ZW1CZWZvcmUoU1ZHTGVuZ3RoIGl0ZW0sIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwotICAgIFtS
YWlzZXNFeGNlcHRpb25dIFNWR0xlbmd0aCByZXBsYWNlSXRlbShTVkdMZW5ndGggaXRlbSwgdW5z
aWduZWQgbG9uZyBpbmRleCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gU1ZHTGVuZ3RoIHJlbW92
ZUl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gU1ZHTGVu
Z3RoIGFwcGVuZEl0ZW0oU1ZHTGVuZ3RoIGl0ZW0pOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gdm9pZCBjbGVhcigpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gU1ZHTGVu
Z3RoIGluaXRpYWxpemUoU1ZHTGVuZ3RoIGl0ZW0pOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gU1ZHTGVuZ3RoIGdldEl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgW01heVRo
cm93TGVnYWN5RXhjZXB0aW9uXSBTVkdMZW5ndGggaW5zZXJ0SXRlbUJlZm9yZShTVkdMZW5ndGgg
aXRlbSwgdW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9u
XSBTVkdMZW5ndGggcmVwbGFjZUl0ZW0oU1ZHTGVuZ3RoIGl0ZW0sIHVuc2lnbmVkIGxvbmcgaW5k
ZXgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gU1ZHTGVuZ3RoIHJlbW92ZUl0ZW0o
dW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBTVkdM
ZW5ndGggYXBwZW5kSXRlbShTVkdMZW5ndGggaXRlbSk7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvc3ZnL1NWR01hdHJpeC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTWF0cml4
LmlkbAppbmRleCBjODUwMzNkYzk0OTFlMjkzMDgwNWJmODRmOTEyZGJiMWNlMDk1YTljLi5mYTU5
MzU1OTU0ZjEwMjM0Yzc3OTg0ZDhhNTE1ZTk2NmNlMTc3NWFlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHTWF0cml4LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTWF0
cml4LmlkbApAQCAtMzEsMTIgKzMxLDEyIEBAIGludGVyZmFjZSBTVkdNYXRyaXggewogICAgIGF0
dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91YmxlIGY7CiAKICAgICBTVkdNYXRyaXggbXVsdGlwbHko
U1ZHTWF0cml4IHNlY29uZE1hdHJpeCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gU1ZHTWF0cml4
IGludmVyc2UoKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIFNWR01hdHJpeCBpbnZl
cnNlKCk7CiAgICAgW0ltbXV0YWJsZV0gU1ZHTWF0cml4IHRyYW5zbGF0ZSh1bnJlc3RyaWN0ZWQg
ZmxvYXQgeCwgdW5yZXN0cmljdGVkIGZsb2F0IHkpOwogICAgIFtJbW11dGFibGVdIFNWR01hdHJp
eCBzY2FsZSh1bnJlc3RyaWN0ZWQgZmxvYXQgc2NhbGVGYWN0b3IpOwogICAgIFtJbW11dGFibGVd
IFNWR01hdHJpeCBzY2FsZU5vblVuaWZvcm0odW5yZXN0cmljdGVkIGZsb2F0IHNjYWxlRmFjdG9y
WCwgdW5yZXN0cmljdGVkIGZsb2F0IHNjYWxlRmFjdG9yWSk7CiAgICAgW0ltbXV0YWJsZV0gU1ZH
TWF0cml4IHJvdGF0ZSh1bnJlc3RyaWN0ZWQgZmxvYXQgYW5nbGUpOwotICAgIFtSYWlzZXNFeGNl
cHRpb25dIFNWR01hdHJpeCByb3RhdGVGcm9tVmVjdG9yKHVucmVzdHJpY3RlZCBmbG9hdCB4LCB1
bnJlc3RyaWN0ZWQgZmxvYXQgeSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBTVkdN
YXRyaXggcm90YXRlRnJvbVZlY3Rvcih1bnJlc3RyaWN0ZWQgZmxvYXQgeCwgdW5yZXN0cmljdGVk
IGZsb2F0IHkpOwogICAgIFtJbW11dGFibGVdIFNWR01hdHJpeCBmbGlwWCgpOwogICAgIFtJbW11
dGFibGVdIFNWR01hdHJpeCBmbGlwWSgpOwogICAgIFtJbW11dGFibGVdIFNWR01hdHJpeCBza2V3
WCh1bnJlc3RyaWN0ZWQgZmxvYXQgYW5nbGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
c3ZnL1NWR051bWJlckxpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR051bWJlckxpc3Qu
aWRsCmluZGV4IDU2MmY5ZDViYWNiNmViMTU4ZWJkOTMyZTgyYWFlODViYTI4MTM0MjYuLjM4Y2Fl
NjY5YjI5NWZkZWZiMzY0YjU4YjE2YmJhMzI0ZDk1Y2Y3YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdOdW1iZXJMaXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZH
TnVtYmVyTGlzdC5pZGwKQEAgLTI3LDExICsyNywxMSBAQAogaW50ZXJmYWNlIFNWR051bWJlckxp
c3QgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIG51bWJlck9mSXRlbXM7
CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGNsZWFyKCk7Ci0gICAgW1JhaXNlc0V4Y2Vw
dGlvbl0gU1ZHTnVtYmVyIGluaXRpYWxpemUoU1ZHTnVtYmVyIGl0ZW0pOwotICAgIFtSYWlzZXNF
eGNlcHRpb25dIFNWR051bWJlciBnZXRJdGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOwotICAgIFtS
YWlzZXNFeGNlcHRpb25dIFNWR051bWJlciBpbnNlcnRJdGVtQmVmb3JlKFNWR051bWJlciBpdGVt
LCB1bnNpZ25lZCBsb25nIGluZGV4KTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBTVkdOdW1iZXIg
cmVwbGFjZUl0ZW0oU1ZHTnVtYmVyIGl0ZW0sIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwotICAgIFtS
YWlzZXNFeGNlcHRpb25dIFNWR051bWJlciByZW1vdmVJdGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgp
OwotICAgIFtSYWlzZXNFeGNlcHRpb25dIFNWR051bWJlciBhcHBlbmRJdGVtKFNWR051bWJlciBp
dGVtKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgY2xlYXIoKTsKKyAgICBb
TWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIFNWR051bWJlciBpbml0aWFsaXplKFNWR051bWJlciBp
dGVtKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIFNWR051bWJlciBnZXRJdGVtKHVu
c2lnbmVkIGxvbmcgaW5kZXgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gU1ZHTnVt
YmVyIGluc2VydEl0ZW1CZWZvcmUoU1ZHTnVtYmVyIGl0ZW0sIHVuc2lnbmVkIGxvbmcgaW5kZXgp
OworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gU1ZHTnVtYmVyIHJlcGxhY2VJdGVtKFNW
R051bWJlciBpdGVtLCB1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb25dIFNWR051bWJlciByZW1vdmVJdGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAg
IFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gU1ZHTnVtYmVyIGFwcGVuZEl0ZW0oU1ZHTnVtYmVy
IGl0ZW0pOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYWludC5pZGwg
Yi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGFpbnQuaWRsCmluZGV4IGRiYTlkOWRjM2JlNzgzZTgz
MWY1ZWMwM2UwOTg0ODFhZjkzMzk5NDAuLmE5MmZhZTA3Zjk5ZDFkZDc4MDkwMTc1MDUwMjNkZmU5
Mjc3NWRmMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYWludC5pZGwKKysr
IGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhaW50LmlkbApAQCAtNDEsNiArNDEsNiBAQAogICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgdXJpOwogCiAgICAgdm9pZCBzZXRVcmkoRE9N
U3RyaW5nIHVyaSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRQYWludCh1bnNpZ25l
ZCBzaG9ydCBwYWludFR5cGUsIERPTVN0cmluZyB1cmksIERPTVN0cmluZyByZ2JDb2xvciwgRE9N
U3RyaW5nIGljY0NvbG9yKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0
UGFpbnQodW5zaWduZWQgc2hvcnQgcGFpbnRUeXBlLCBET01TdHJpbmcgdXJpLCBET01TdHJpbmcg
cmdiQ29sb3IsIERPTVN0cmluZyBpY2NDb2xvcik7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0xpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1Bh
dGhTZWdMaXN0LmlkbAppbmRleCAyMmJmYjJhYTlmMGZmNzc1NjFkYWVlYWE4NzhiMDhlODQwYmIx
NTA4Li5jZThmNDI3ZjVjNTdiYzUzZjI5YzU0OGQ1MGVkOTI2Yzg5YTEyNzdiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0xpc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdQYXRoU2VnTGlzdC5pZGwKQEAgLTI3LDExICsyNywxMSBAQAogaW50ZXJmYWNl
IFNWR1BhdGhTZWdMaXN0IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBu
dW1iZXJPZkl0ZW1zOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBjbGVhcigpOwotICAg
IFtSYWlzZXNFeGNlcHRpb25dIFNWR1BhdGhTZWcgaW5pdGlhbGl6ZShTVkdQYXRoU2VnPyBuZXdJ
dGVtKTsgLy8gRklYTUU6IFNob3VsZCBub3QgYmUgbnVsbGFibGUuCi0gICAgW1JhaXNlc0V4Y2Vw
dGlvbl0gU1ZHUGF0aFNlZyBnZXRJdGVtKHVuc2lnbmVkIGxvbmcgaW5kZXgpOwotICAgIFtSYWlz
ZXNFeGNlcHRpb25dIFNWR1BhdGhTZWcgaW5zZXJ0SXRlbUJlZm9yZShTVkdQYXRoU2VnPyBuZXdJ
dGVtLCB1bnNpZ25lZCBsb25nIGluZGV4KTsgLy8gRklYTUU6IFNob3VsZCBub3QgYmUgbnVsbGFi
bGUuCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gU1ZHUGF0aFNlZyByZXBsYWNlSXRlbShTVkdQYXRo
U2VnPyBuZXdJdGVtLCB1bnNpZ25lZCBsb25nIGluZGV4KTsgLy8gRklYTUU6IFNob3VsZCBub3Qg
YmUgbnVsbGFibGUuCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gU1ZHUGF0aFNlZyByZW1vdmVJdGVt
KHVuc2lnbmVkIGxvbmcgaW5kZXgpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIFNWR1BhdGhTZWcg
YXBwZW5kSXRlbShTVkdQYXRoU2VnPyBuZXdJdGVtKTsgLy8gRklYTUU6IFNob3VsZCBub3QgYmUg
bnVsbGFibGUuCisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIGNsZWFyKCk7Cisg
ICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBTVkdQYXRoU2VnIGluaXRpYWxpemUoU1ZHUGF0
aFNlZz8gbmV3SXRlbSk7IC8vIEZJWE1FOiBTaG91bGQgbm90IGJlIG51bGxhYmxlLgorICAgIFtN
YXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gU1ZHUGF0aFNlZyBnZXRJdGVtKHVuc2lnbmVkIGxvbmcg
aW5kZXgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gU1ZHUGF0aFNlZyBpbnNlcnRJ
dGVtQmVmb3JlKFNWR1BhdGhTZWc/IG5ld0l0ZW0sIHVuc2lnbmVkIGxvbmcgaW5kZXgpOyAvLyBG
SVhNRTogU2hvdWxkIG5vdCBiZSBudWxsYWJsZS4KKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRp
b25dIFNWR1BhdGhTZWcgcmVwbGFjZUl0ZW0oU1ZHUGF0aFNlZz8gbmV3SXRlbSwgdW5zaWduZWQg
bG9uZyBpbmRleCk7IC8vIEZJWE1FOiBTaG91bGQgbm90IGJlIG51bGxhYmxlLgorICAgIFtNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbl0gU1ZHUGF0aFNlZyByZW1vdmVJdGVtKHVuc2lnbmVkIGxvbmcg
aW5kZXgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gU1ZHUGF0aFNlZyBhcHBlbmRJ
dGVtKFNWR1BhdGhTZWc/IG5ld0l0ZW0pOyAvLyBGSVhNRTogU2hvdWxkIG5vdCBiZSBudWxsYWJs
ZS4KIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUG9pbnRMaXN0LmlkbCBi
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQb2ludExpc3QuaWRsCmluZGV4IDdkNDk3YWEwYzM3OWFk
ZGVkZjBlZmY3MGMxNWEzOTM2ZGNhYjFkNjQuLjQ5NmIyMzUxNjdhNjczNGM4M2FmYWQ1Y2ZjZGRh
ODlkYjY5YTgwNjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQb2ludExpc3Qu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQb2ludExpc3QuaWRsCkBAIC0yNiwxMSAr
MjYsMTEgQEAKIGludGVyZmFjZSBTVkdQb2ludExpc3QgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSB1bnNpZ25lZCBsb25nIG51bWJlck9mSXRlbXM7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2
b2lkIGNsZWFyKCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gU1ZHUG9pbnQgaW5pdGlhbGl6ZShT
VkdQb2ludCBpdGVtKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBTVkdQb2ludCBnZXRJdGVtKHVu
c2lnbmVkIGxvbmcgaW5kZXgpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIFNWR1BvaW50IGluc2Vy
dEl0ZW1CZWZvcmUoU1ZHUG9pbnQgaXRlbSwgdW5zaWduZWQgbG9uZyBpbmRleCk7Ci0gICAgW1Jh
aXNlc0V4Y2VwdGlvbl0gU1ZHUG9pbnQgcmVwbGFjZUl0ZW0oU1ZHUG9pbnQgaXRlbSwgdW5zaWdu
ZWQgbG9uZyBpbmRleCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gU1ZHUG9pbnQgcmVtb3ZlSXRl
bSh1bnNpZ25lZCBsb25nIGluZGV4KTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBTVkdQb2ludCBh
cHBlbmRJdGVtKFNWR1BvaW50IGl0ZW0pOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0g
dm9pZCBjbGVhcigpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gU1ZHUG9pbnQgaW5p
dGlhbGl6ZShTVkdQb2ludCBpdGVtKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIFNW
R1BvaW50IGdldEl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgW01heVRocm93TGVnYWN5
RXhjZXB0aW9uXSBTVkdQb2ludCBpbnNlcnRJdGVtQmVmb3JlKFNWR1BvaW50IGl0ZW0sIHVuc2ln
bmVkIGxvbmcgaW5kZXgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gU1ZHUG9pbnQg
cmVwbGFjZUl0ZW0oU1ZHUG9pbnQgaXRlbSwgdW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAgW01h
eVRocm93TGVnYWN5RXhjZXB0aW9uXSBTVkdQb2ludCByZW1vdmVJdGVtKHVuc2lnbmVkIGxvbmcg
aW5kZXgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gU1ZHUG9pbnQgYXBwZW5kSXRl
bShTVkdQb2ludCBpdGVtKTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZH
UHJlc2VydmVBc3BlY3RSYXRpby5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUHJlc2VydmVB
c3BlY3RSYXRpby5pZGwKaW5kZXggZDQ3N2I4MGRiOThjYTg3MjRlYzRhMTVhYTVjMDI0NWY4MTVh
NWJmOS4uMTg2ODIxYzE4YWIxMjEyOTAzYzI0MWVlNWY4ZDY4YTNhMzYyMjhkZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1ByZXNlcnZlQXNwZWN0UmF0aW8uaWRsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdQcmVzZXJ2ZUFzcGVjdFJhdGlvLmlkbApAQCAtNDIsOCArNDIs
OCBAQCBpbnRlcmZhY2UgU1ZHUHJlc2VydmVBc3BlY3RSYXRpbyB7CiAgICAgY29uc3QgdW5zaWdu
ZWQgc2hvcnQgU1ZHX01FRVRPUlNMSUNFX01FRVQgPSAxOwogICAgIGNvbnN0IHVuc2lnbmVkIHNo
b3J0IFNWR19NRUVUT1JTTElDRV9TTElDRSA9IDI7CiAKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0
aW9uXSBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQgYWxpZ247CisgICAgW1NldHRlck1heVRocm93
TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQgYWxpZ247CiAKLSAgICBb
U2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQgbWVldE9yU2xp
Y2U7CisgICAgW1NldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgdW5zaWdu
ZWQgc2hvcnQgbWVldE9yU2xpY2U7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHU3RyaW5nTGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU3RyaW5nTGlzdC5p
ZGwKaW5kZXggNTVmNDIyZGE0OGFmYzNjN2ZmOWMzYWUwNDdiM2Y5YWNkMWUyYmJiOS4uZjdiMTRk
MWU3ZjVmMGY1YWVkMTNlYWFmYzNkMTQ5MmQ5NDE0MmMyMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvc3ZnL1NWR1N0cmluZ0xpc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdT
dHJpbmdMaXN0LmlkbApAQCAtMjYsMTIgKzI2LDEyIEBACiBpbnRlcmZhY2UgU1ZHU3RyaW5nTGlz
dCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbnVtYmVyT2ZJdGVtczsK
IAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgY2xlYXIoKTsKLSAgICBbUmFpc2VzRXhjZXB0
aW9uXSBET01TdHJpbmcgaW5pdGlhbGl6ZShET01TdHJpbmcgaXRlbSk7Ci0gICAgW1JhaXNlc0V4
Y2VwdGlvbl0gRE9NU3RyaW5nIGdldEl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7Ci0gICAgW1Jh
aXNlc0V4Y2VwdGlvbl0gRE9NU3RyaW5nIGluc2VydEl0ZW1CZWZvcmUoRE9NU3RyaW5nIGl0ZW0s
IHVuc2lnbmVkIGxvbmcgaW5kZXgpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIERPTVN0cmluZyBy
ZXBsYWNlSXRlbShET01TdHJpbmcgaXRlbSwgdW5zaWduZWQgbG9uZyBpbmRleCk7Ci0gICAgW1Jh
aXNlc0V4Y2VwdGlvbl0gRE9NU3RyaW5nIHJlbW92ZUl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7
Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gRE9NU3RyaW5nIGFwcGVuZEl0ZW0oRE9NU3RyaW5nIGl0
ZW0pOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBjbGVhcigpOworICAgIFtN
YXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gRE9NU3RyaW5nIGluaXRpYWxpemUoRE9NU3RyaW5nIGl0
ZW0pOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gRE9NU3RyaW5nIGdldEl0ZW0odW5z
aWduZWQgbG9uZyBpbmRleCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBET01TdHJp
bmcgaW5zZXJ0SXRlbUJlZm9yZShET01TdHJpbmcgaXRlbSwgdW5zaWduZWQgbG9uZyBpbmRleCk7
CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBET01TdHJpbmcgcmVwbGFjZUl0ZW0oRE9N
U3RyaW5nIGl0ZW0sIHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4
Y2VwdGlvbl0gRE9NU3RyaW5nIHJlbW92ZUl0ZW0odW5zaWduZWQgbG9uZyBpbmRleCk7CisgICAg
W01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBET01TdHJpbmcgYXBwZW5kSXRlbShET01TdHJpbmcg
aXRlbSk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU3R5bGVFbGVt
ZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdTdHlsZUVsZW1lbnQuaWRsCmluZGV4IDcy
OTAyYzJhNjk1NWZlZjM3ZDg4MTQwMDAyODg0YWY0YWZhNzY3OWUuLjhlZDMyOWFkOWIwMjJjNmJj
ZTlkN2U2YTBmYTdhYWJjZDk3YjhjMDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9T
VkdTdHlsZUVsZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdTdHlsZUVsZW1l
bnQuaWRsCkBAIC0yNiw4ICsyNiw4IEBACiAKIGludGVyZmFjZSBTVkdTdHlsZUVsZW1lbnQgOiBT
VkdFbGVtZW50IHsKICAgICAgICAgICAgICBhdHRyaWJ1dGUgYm9vbGVhbiBkaXNhYmxlZDsKLSAg
ICAgICAgICAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHR5
cGU7Ci0gICAgICAgICAgICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0
cmluZyBtZWRpYTsKLSAgICAgICAgICAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1
dGUgRE9NU3RyaW5nIHRpdGxlOworICAgICAgICAgICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4
Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyB0eXBlOworICAgICAgICAgICAgIFtTZXR0ZXJN
YXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyBtZWRpYTsKKyAgICAg
ICAgICAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJp
bmcgdGl0bGU7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVGV4dENv
bnRlbnRFbGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdUZXh0Q29udGVudEVsZW1l
bnQuaWRsCmluZGV4IGI4NWU2NTExOGE4MTI3MmZkNTFmZmVkYzE1ZDAzMDBiN2VlM2ZiYzQuLmFm
ZjUxNDU1OTE5OTY2NmVlNzFmYmQ4YjdkMjY5Mjc5MGYyZDI0MWQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdUZXh0Q29udGVudEVsZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdUZXh0Q29udGVudEVsZW1lbnQuaWRsCkBAIC0zNCwxNCArMzQsMTQgQEAgaW50
ZXJmYWNlIFNWR1RleHRDb250ZW50RWxlbWVudCA6IFNWR0dyYXBoaWNzRWxlbWVudCB7CiAKICAg
ICBsb25nIGdldE51bWJlck9mQ2hhcnMoKTsKICAgICB1bnJlc3RyaWN0ZWQgZmxvYXQgZ2V0Q29t
cHV0ZWRUZXh0TGVuZ3RoKCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdW5yZXN0cmljdGVkIGZs
b2F0IGdldFN1YlN0cmluZ0xlbmd0aChvcHRpb25hbCB1bnNpZ25lZCBsb25nIG9mZnNldCA9IDAs
CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB1bnJlc3RyaWN0ZWQgZmxvYXQgZ2V0U3Vi
U3RyaW5nTGVuZ3RoKG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0ID0gMCwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBsZW5ndGggPSAwKTsK
LSAgICBbUmFpc2VzRXhjZXB0aW9uXSBTVkdQb2ludCBnZXRTdGFydFBvc2l0aW9uT2ZDaGFyKG9w
dGlvbmFsIHVuc2lnbmVkIGxvbmcgb2Zmc2V0ID0gMCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0g
U1ZHUG9pbnQgZ2V0RW5kUG9zaXRpb25PZkNoYXIob3B0aW9uYWwgdW5zaWduZWQgbG9uZyBvZmZz
ZXQgPSAwKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBTVkdSZWN0IGdldEV4dGVudE9mQ2hhcihv
cHRpb25hbCB1bnNpZ25lZCBsb25nIG9mZnNldCA9IDApOwotICAgIFtSYWlzZXNFeGNlcHRpb25d
IHVucmVzdHJpY3RlZCBmbG9hdCBnZXRSb3RhdGlvbk9mQ2hhcihvcHRpb25hbCB1bnNpZ25lZCBs
b25nIG9mZnNldCA9IDApOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gU1ZHUG9pbnQg
Z2V0U3RhcnRQb3NpdGlvbk9mQ2hhcihvcHRpb25hbCB1bnNpZ25lZCBsb25nIG9mZnNldCA9IDAp
OworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gU1ZHUG9pbnQgZ2V0RW5kUG9zaXRpb25P
ZkNoYXIob3B0aW9uYWwgdW5zaWduZWQgbG9uZyBvZmZzZXQgPSAwKTsKKyAgICBbTWF5VGhyb3dM
ZWdhY3lFeGNlcHRpb25dIFNWR1JlY3QgZ2V0RXh0ZW50T2ZDaGFyKG9wdGlvbmFsIHVuc2lnbmVk
IGxvbmcgb2Zmc2V0ID0gMCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB1bnJlc3Ry
aWN0ZWQgZmxvYXQgZ2V0Um90YXRpb25PZkNoYXIob3B0aW9uYWwgdW5zaWduZWQgbG9uZyBvZmZz
ZXQgPSAwKTsKICAgICBsb25nIGdldENoYXJOdW1BdFBvc2l0aW9uKFNWR1BvaW50IHBvaW50KTsK
LSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNlbGVjdFN1YlN0cmluZyhvcHRpb25hbCB1bnNp
Z25lZCBsb25nIG9mZnNldCA9IDAsIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgbGVuZ3RoID0gMCk7
CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNlbGVjdFN1YlN0cmluZyhvcHRp
b25hbCB1bnNpZ25lZCBsb25nIG9mZnNldCA9IDAsIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcgbGVu
Z3RoID0gMCk7CiB9OwogCiAvLyBGSVhNRTogU1ZHVGV4dENvbnRlbnRFbGVtZW50IGlzIG5vdCBz
dXBwb3NlZCB0byBpbXBsZW1lbnQgU1ZHRXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZC4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdUcmFuc2Zvcm1MaXN0LmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdUcmFuc2Zvcm1MaXN0LmlkbAppbmRleCA2NTk2NmE2OWFhMGM1M2FjZGVk
MDg5YWQ0MTZlYThkYzhiMTI5Yjc4Li5lZTM5ZDFlODQ4NzljNjUyNjNjNjY1YTA3NjllNTAwNmMw
ZWQ4MmJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVHJhbnNmb3JtTGlzdC5p
ZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1RyYW5zZm9ybUxpc3QuaWRsCkBAIC0yNywx
NSArMjcsMTUgQEAKIGludGVyZmFjZSBTVkdUcmFuc2Zvcm1MaXN0IHsKICAgICByZWFkb25seSBh
dHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBudW1iZXJPZkl0ZW1zOwogCi0gICAgW1JhaXNlc0V4Y2Vw
dGlvbl0gdm9pZCBjbGVhcigpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIFNWR1RyYW5zZm9ybSBp
bml0aWFsaXplKFNWR1RyYW5zZm9ybSBpdGVtKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBTVkdU
cmFuc2Zvcm0gZ2V0SXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsKLSAgICBbUmFpc2VzRXhjZXB0
aW9uXSBTVkdUcmFuc2Zvcm0gaW5zZXJ0SXRlbUJlZm9yZShTVkdUcmFuc2Zvcm0gaXRlbSwgdW5z
aWduZWQgbG9uZyBpbmRleCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gU1ZHVHJhbnNmb3JtIHJl
cGxhY2VJdGVtKFNWR1RyYW5zZm9ybSBpdGVtLCB1bnNpZ25lZCBsb25nIGluZGV4KTsKLSAgICBb
UmFpc2VzRXhjZXB0aW9uXSBTVkdUcmFuc2Zvcm0gcmVtb3ZlSXRlbSh1bnNpZ25lZCBsb25nIGlu
ZGV4KTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBTVkdUcmFuc2Zvcm0gYXBwZW5kSXRlbShTVkdU
cmFuc2Zvcm0gaXRlbSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIGNsZWFy
KCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBTVkdUcmFuc2Zvcm0gaW5pdGlhbGl6
ZShTVkdUcmFuc2Zvcm0gaXRlbSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBTVkdU
cmFuc2Zvcm0gZ2V0SXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBbTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb25dIFNWR1RyYW5zZm9ybSBpbnNlcnRJdGVtQmVmb3JlKFNWR1RyYW5zZm9ybSBp
dGVtLCB1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25d
IFNWR1RyYW5zZm9ybSByZXBsYWNlSXRlbShTVkdUcmFuc2Zvcm0gaXRlbSwgdW5zaWduZWQgbG9u
ZyBpbmRleCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBTVkdUcmFuc2Zvcm0gcmVt
b3ZlSXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRp
b25dIFNWR1RyYW5zZm9ybSBhcHBlbmRJdGVtKFNWR1RyYW5zZm9ybSBpdGVtKTsKIAotICAgIFtS
YWlzZXNFeGNlcHRpb25dIFNWR1RyYW5zZm9ybSBjcmVhdGVTVkdUcmFuc2Zvcm1Gcm9tTWF0cml4
KFNWR01hdHJpeCBtYXRyaXgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gU1ZHVHJh
bnNmb3JtIGNyZWF0ZVNWR1RyYW5zZm9ybUZyb21NYXRyaXgoU1ZHTWF0cml4IG1hdHJpeCk7CiAK
LSAgICBbUmFpc2VzRXhjZXB0aW9uXSBTVkdUcmFuc2Zvcm0gY29uc29saWRhdGUoKTsKKyAgICBb
TWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIFNWR1RyYW5zZm9ybSBjb25zb2xpZGF0ZSgpOwogfTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdWaWV3U3BlYy5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHVmlld1NwZWMuaWRsCmluZGV4IGMzNzhmZGM3NDY5YmZhOTg5Y2RlNTVk
NTdiNDkwM2NlMmYxMDBhMzUuLjVlMzNlYzZmYmE3YzU5ODlhZjVlMTg4YzYwMTE0ZWYwZjU5Yzhm
YjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdWaWV3U3BlYy5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvc3ZnL1NWR1ZpZXdTcGVjLmlkbApAQCAtMzYsNyArMzYsNyBAQAogICAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyB2aWV3VGFyZ2V0U3RyaW5nOwogCiAgICAg
ICAvLyBTVkdab29tQW5kUGFuCi0gICAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1
dGUgdW5zaWduZWQgc2hvcnQgem9vbUFuZFBhbjsKKyAgICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2Fj
eUV4Y2VwdGlvbl0gYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0IHpvb21BbmRQYW47CiB9OwogCiBT
VkdWaWV3U3BlYyBpbXBsZW1lbnRzIFNWR0ZpdFRvVmlld0JveDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsCmluZGV4IDBiMzdiZmNiNWVkNGY3OWZmZWZjNGI4
YzU2NGE2ZTNiNzA0ODkyNjguLmNiZGNkYTFiNTNjM2IzNzBkMzVhNjdjOWRjMjkzNDRjOTliZDk4
ZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5p
ZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlkbApAQCAt
MjksNjQgKzI5LDY0IEBACiAgICAgSlNHZW5lcmF0ZVRvSlNPYmplY3QsCiAgICAgRXhwb3J0TWFj
cm89V0VCQ09SRV9URVNUU1VQUE9SVF9FWFBPUlQsCiBdIGludGVyZmFjZSBJbnRlcm5hbFNldHRp
bmdzIDogSW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZCB7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0g
dm9pZCBzZXRUb3VjaEV2ZW50RW11bGF0aW9uRW5hYmxlZChib29sZWFuIGVuYWJsZWQpOworICAg
IFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRUb3VjaEV2ZW50RW11bGF0aW9uRW5h
YmxlZChib29sZWFuIGVuYWJsZWQpOwogCiAgICAgLy8gRm9udHMsIHRleHQKLSAgICBbUmFpc2Vz
RXhjZXB0aW9uXSB2b2lkIHNldFN0YW5kYXJkRm9udEZhbWlseShET01TdHJpbmcgZmFtaWx5LCBE
T01TdHJpbmcgc2NyaXB0KTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldFNlcmlmRm9u
dEZhbWlseShET01TdHJpbmcgZmFtaWx5LCBET01TdHJpbmcgc2NyaXB0KTsKLSAgICBbUmFpc2Vz
RXhjZXB0aW9uXSB2b2lkIHNldFNhbnNTZXJpZkZvbnRGYW1pbHkoRE9NU3RyaW5nIGZhbWlseSwg
RE9NU3RyaW5nIHNjcmlwdCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRGaXhlZEZv
bnRGYW1pbHkoRE9NU3RyaW5nIGZhbWlseSwgRE9NU3RyaW5nIHNjcmlwdCk7Ci0gICAgW1JhaXNl
c0V4Y2VwdGlvbl0gdm9pZCBzZXRDdXJzaXZlRm9udEZhbWlseShET01TdHJpbmcgZmFtaWx5LCBE
T01TdHJpbmcgc2NyaXB0KTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldEZhbnRhc3lG
b250RmFtaWx5KERPTVN0cmluZyBmYW1pbHksIERPTVN0cmluZyBzY3JpcHQpOwotICAgIFtSYWlz
ZXNFeGNlcHRpb25dIHZvaWQgc2V0UGljdG9ncmFwaEZvbnRGYW1pbHkoRE9NU3RyaW5nIGZhbWls
eSwgRE9NU3RyaW5nIHNjcmlwdCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRGb250
RmFsbGJhY2tQcmVmZXJzUGljdG9ncmFwaHMoYm9vbGVhbiBwcmVmZXJQaWN0b2dyYXBocyk7Ci0g
ICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRXZWJGb250c0Fsd2F5c0ZhbGxCYWNrKGJvb2xl
YW4gZW5hYmxlKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0U3RhbmRh
cmRGb250RmFtaWx5KERPTVN0cmluZyBmYW1pbHksIERPTVN0cmluZyBzY3JpcHQpOworICAgIFtN
YXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRTZXJpZkZvbnRGYW1pbHkoRE9NU3RyaW5n
IGZhbWlseSwgRE9NU3RyaW5nIHNjcmlwdCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9u
XSB2b2lkIHNldFNhbnNTZXJpZkZvbnRGYW1pbHkoRE9NU3RyaW5nIGZhbWlseSwgRE9NU3RyaW5n
IHNjcmlwdCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNldEZpeGVkRm9u
dEZhbWlseShET01TdHJpbmcgZmFtaWx5LCBET01TdHJpbmcgc2NyaXB0KTsKKyAgICBbTWF5VGhy
b3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0Q3Vyc2l2ZUZvbnRGYW1pbHkoRE9NU3RyaW5nIGZh
bWlseSwgRE9NU3RyaW5nIHNjcmlwdCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2
b2lkIHNldEZhbnRhc3lGb250RmFtaWx5KERPTVN0cmluZyBmYW1pbHksIERPTVN0cmluZyBzY3Jp
cHQpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRQaWN0b2dyYXBoRm9u
dEZhbWlseShET01TdHJpbmcgZmFtaWx5LCBET01TdHJpbmcgc2NyaXB0KTsKKyAgICBbTWF5VGhy
b3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0Rm9udEZhbGxiYWNrUHJlZmVyc1BpY3RvZ3JhcGhz
KGJvb2xlYW4gcHJlZmVyUGljdG9ncmFwaHMpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlv
bl0gdm9pZCBzZXRXZWJGb250c0Fsd2F5c0ZhbGxCYWNrKGJvb2xlYW4gZW5hYmxlKTsKIAotICAg
IFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0VGV4dEF1dG9zaXppbmdFbmFibGVkKGJvb2xlYW4g
ZW5hYmxlZCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRUZXh0QXV0b3NpemluZ1dp
bmRvd1NpemVPdmVycmlkZShsb25nIHdpZHRoLCBsb25nIGhlaWdodCk7CisgICAgW01heVRocm93
TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNldFRleHRBdXRvc2l6aW5nRW5hYmxlZChib29sZWFuIGVu
YWJsZWQpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRUZXh0QXV0b3Np
emluZ1dpbmRvd1NpemVPdmVycmlkZShsb25nIHdpZHRoLCBsb25nIGhlaWdodCk7CiAKICAgICAv
LyBNZWRpYQotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0Q2FuU3RhcnRNZWRpYShib29s
ZWFuIGVuYWJsZWQpOwotICAgIFtDb25kaXRpb25hbD1WSURFT19UUkFDSywgUmFpc2VzRXhjZXB0
aW9uXSB2b2lkIHNldFNob3VsZERpc3BsYXlUcmFja0tpbmQoRE9NU3RyaW5nIGtpbmQsIGJvb2xl
YW4gZW5hYmxlZCk7Ci0gICAgW0NvbmRpdGlvbmFsPVZJREVPX1RSQUNLLCBSYWlzZXNFeGNlcHRp
b25dIGJvb2xlYW4gc2hvdWxkRGlzcGxheVRyYWNrS2luZChET01TdHJpbmcgdHJhY2tLaW5kKTsK
LSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldERlZmF1bHRWaWRlb1Bvc3RlclVSTChET01T
dHJpbmcgcG9zdGVyKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldFRpbWVXaXRob3V0
TW91c2VNb3ZlbWVudEJlZm9yZUhpZGluZ0NvbnRyb2xzKHVucmVzdHJpY3RlZCBkb3VibGUgdGlt
ZSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRNZWRpYVR5cGVPdmVycmlkZShET01T
dHJpbmcgbWVkaWFUeXBlT3ZlcnJpZGUpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0g
dm9pZCBzZXRDYW5TdGFydE1lZGlhKGJvb2xlYW4gZW5hYmxlZCk7CisgICAgW0NvbmRpdGlvbmFs
PVZJREVPX1RSQUNLLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRTaG91bGREaXNw
bGF5VHJhY2tLaW5kKERPTVN0cmluZyBraW5kLCBib29sZWFuIGVuYWJsZWQpOworICAgIFtDb25k
aXRpb25hbD1WSURFT19UUkFDSywgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGJvb2xlYW4gc2hv
dWxkRGlzcGxheVRyYWNrS2luZChET01TdHJpbmcgdHJhY2tLaW5kKTsKKyAgICBbTWF5VGhyb3dM
ZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0RGVmYXVsdFZpZGVvUG9zdGVyVVJMKERPTVN0cmluZyBw
b3N0ZXIpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRUaW1lV2l0aG91
dE1vdXNlTW92ZW1lbnRCZWZvcmVIaWRpbmdDb250cm9scyh1bnJlc3RyaWN0ZWQgZG91YmxlIHRp
bWUpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRNZWRpYVR5cGVPdmVy
cmlkZShET01TdHJpbmcgbWVkaWFUeXBlT3ZlcnJpZGUpOwogICAgIHZvaWQgc2V0QWxsb3dzQWly
UGxheUZvck1lZGlhUGxheWJhY2soYm9vbGVhbiBhdmFpbGFibGUpOwogCi0gICAgW1JhaXNlc0V4
Y2VwdGlvbl0gdm9pZCBzZXRGb3JjZVBlbmRpbmdXZWJHTFBvbGljeShib29sZWFuIGZvcmNlZCk7
CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNldEZvcmNlUGVuZGluZ1dlYkdM
UG9saWN5KGJvb2xlYW4gZm9yY2VkKTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0
UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKGJvb2xlYW4gZW5hYmxlZCk7Ci0gICAg
W1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRZb3VUdWJlRmxhc2hQbHVnaW5SZXBsYWNlbWVudEVu
YWJsZWQoYm9vbGVhbiBlbmFibGVkKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZv
aWQgc2V0UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKGJvb2xlYW4gZW5hYmxlZCk7
CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNldFlvdVR1YmVGbGFzaFBsdWdp
blJlcGxhY2VtZW50RW5hYmxlZChib29sZWFuIGVuYWJsZWQpOwogCiAgICAgLy8gRWRpdGluZywg
Zm9ybXMKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldEVkaXRpbmdCZWhhdmlvcihET01T
dHJpbmcgYmVoYXZpb3IpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0U2hvdWxkQ29u
dmVydFBvc2l0aW9uU3R5bGVPbkNvcHkoYm9vbGVhbiBjb252ZXJ0KTsKKyAgICBbTWF5VGhyb3dM
ZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0RWRpdGluZ0JlaGF2aW9yKERPTVN0cmluZyBiZWhhdmlv
cik7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNldFNob3VsZENvbnZlcnRQ
b3NpdGlvblN0eWxlT25Db3B5KGJvb2xlYW4gY29udmVydCk7CiAgICAgdm9pZCBzZXRMYW5nQXR0
cmlidXRlQXdhcmVGb3JtQ29udHJvbFVJRW5hYmxlZChib29sZWFuIGVuYWJsZWQpOwotICAgIFtS
YWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0UHJlZmVyTUlNRVR5cGVGb3JJbWFnZXMoYm9vbGVhbiBw
cmVmZXJNaW1lVHlwZUZvckltYWdlKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZv
aWQgc2V0UHJlZmVyTUlNRVR5cGVGb3JJbWFnZXMoYm9vbGVhbiBwcmVmZXJNaW1lVHlwZUZvcklt
YWdlKTsKIAogICAgIC8vIE90aGVyIHN3aXRjaGVzCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9p
ZCBzZXRTdG9yYWdlQmxvY2tpbmdQb2xpY3koRE9NU3RyaW5nIHBvbGljeSk7Ci0gICAgW1JhaXNl
c0V4Y2VwdGlvbl0gdm9pZCBzZXRJbWFnZXNFbmFibGVkKGJvb2xlYW4gZW5hYmxlZCk7Ci0gICAg
W1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRQREZJbWFnZUNhY2hpbmdQb2xpY3koRE9NU3RyaW5n
IHBvbGljeSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRVc2VMZWdhY3lCYWNrZ3Jv
dW5kU2l6ZVNob3J0aGFuZEJlaGF2aW9yKGJvb2xlYW4gZW5hYmxlZCk7Ci0gICAgW1JhaXNlc0V4
Y2VwdGlvbl0gdm9pZCBzZXRBdXRvc2Nyb2xsRm9yRHJhZ0FuZERyb3BFbmFibGVkKGJvb2xlYW4g
ZW5hYmxlZCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRCYWNrZ3JvdW5kU2hvdWxk
RXh0ZW5kQmV5b25kUGFnZShib29sZWFuIGhhc0V4dGVuZGVkQmFja2dyb3VuZCk7Ci0gICAgW1Jh
aXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRTY3JvbGxpbmdUcmVlSW5jbHVkZXNGcmFtZXMoYm9vbGVh
biBlbmFibGVkKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0U3RvcmFn
ZUJsb2NraW5nUG9saWN5KERPTVN0cmluZyBwb2xpY3kpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4
Y2VwdGlvbl0gdm9pZCBzZXRJbWFnZXNFbmFibGVkKGJvb2xlYW4gZW5hYmxlZCk7CisgICAgW01h
eVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNldFBERkltYWdlQ2FjaGluZ1BvbGljeShET01T
dHJpbmcgcG9saWN5KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0VXNl
TGVnYWN5QmFja2dyb3VuZFNpemVTaG9ydGhhbmRCZWhhdmlvcihib29sZWFuIGVuYWJsZWQpOwor
ICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRBdXRvc2Nyb2xsRm9yRHJhZ0Fu
ZERyb3BFbmFibGVkKGJvb2xlYW4gZW5hYmxlZCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0
aW9uXSB2b2lkIHNldEJhY2tncm91bmRTaG91bGRFeHRlbmRCZXlvbmRQYWdlKGJvb2xlYW4gaGFz
RXh0ZW5kZWRCYWNrZ3JvdW5kKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQg
c2V0U2Nyb2xsaW5nVHJlZUluY2x1ZGVzRnJhbWVzKGJvb2xlYW4gZW5hYmxlZCk7CiAKLSAgICBb
UmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldE1pbmltdW1UaW1lckludGVydmFsKHVucmVzdHJpY3Rl
ZCBkb3VibGUgaW50ZXJ2YWxJblNlY29uZHMpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQg
c2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFjayhib29sZWFuIGFsbG93cyk7Ci0gICAgW1JhaXNl
c0V4Y2VwdGlvbl0gdm9pZCBzZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrQWZ0ZXJGdWxsc2Ny
ZWVuKGJvb2xlYW4gYWxsb3dzKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldElubGlu
ZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlKGJvb2xlYW4gcmVxdWly
ZXMpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRNaW5pbXVtVGltZXJJ
bnRlcnZhbCh1bnJlc3RyaWN0ZWQgZG91YmxlIGludGVydmFsSW5TZWNvbmRzKTsKKyAgICBbTWF5
VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFjayhi
b29sZWFuIGFsbG93cyk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNldEFs
bG93c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW4oYm9vbGVhbiBhbGxvd3MpOwor
ICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRJbmxpbmVNZWRpYVBsYXliYWNr
UmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZShib29sZWFuIHJlcXVpcmVzKTsKIAotICAgIFtS
YWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0SW5kZXhlZERCV29ya2Vyc0VuYWJsZWQoYm9vbGVhbiBy
ZXF1aXJlcyk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNldEluZGV4ZWRE
QldvcmtlcnNFbmFibGVkKGJvb2xlYW4gcmVxdWlyZXMpOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlv
bl0gRE9NU3RyaW5nIHVzZXJJbnRlcmZhY2VEaXJlY3Rpb25Qb2xpY3koKTsKLSAgICBbUmFpc2Vz
RXhjZXB0aW9uXSB2b2lkIHNldFVzZXJJbnRlcmZhY2VEaXJlY3Rpb25Qb2xpY3koRE9NU3RyaW5n
IHBvbGljeSk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gRE9NU3RyaW5nIHN5c3RlbUxheW91dERp
cmVjdGlvbigpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0U3lzdGVtTGF5b3V0RGly
ZWN0aW9uKERPTVN0cmluZyBkaXJlY3Rpb24pOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlv
bl0gRE9NU3RyaW5nIHVzZXJJbnRlcmZhY2VEaXJlY3Rpb25Qb2xpY3koKTsKKyAgICBbTWF5VGhy
b3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0VXNlckludGVyZmFjZURpcmVjdGlvblBvbGljeShE
T01TdHJpbmcgcG9saWN5KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIERPTVN0cmlu
ZyBzeXN0ZW1MYXlvdXREaXJlY3Rpb24oKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25d
IHZvaWQgc2V0U3lzdGVtTGF5b3V0RGlyZWN0aW9uKERPTVN0cmluZyBkaXJlY3Rpb24pOwogCi0g
ICAgW1JhaXNlc0V4Y2VwdGlvbl0gYm9vbGVhbiB2YXJpYXRpb25Gb250c0VuYWJsZWQoKTsKLSAg
ICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldFZhcmlhdGlvbkZvbnRzRW5hYmxlZChib29sZWFu
IGVuYWJsZWQpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYm9vbGVhbiB2YXJpYXRp
b25Gb250c0VuYWJsZWQoKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0
VmFyaWF0aW9uRm9udHNFbmFibGVkKGJvb2xlYW4gZW5hYmxlZCk7CiB9OwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5pZGwKaW5kZXggN2ExMWU3MDA5NDZkMDBiZGY1ODA5ZGFiZGU5Mzli
ZmViZmUwNzBlNy4uNzYxMDU3OGQwNjY3YzhmNzEzZDhkMWQwNzQ5NWJmNTkwOTExZjY1NCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbApAQCAtODIsNyArODIsNyBAQCBlbnVtIFVz
ZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb24gewogICAgIC8vIEFuaW1hdGVkIGltYWdlIHBhdXNp
bmcgdGVzdGluZy4KICAgICBib29sZWFuIGhhc1BhdXNlZEltYWdlQW5pbWF0aW9ucyhFbGVtZW50
IGVsZW1lbnQpOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gRE9NU3RyaW5nIGVsZW1lbnRSZW5k
ZXJUcmVlQXNUZXh0KEVsZW1lbnQgZWxlbWVudCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0
aW9uXSBET01TdHJpbmcgZWxlbWVudFJlbmRlclRyZWVBc1RleHQoRWxlbWVudCBlbGVtZW50KTsK
ICAgICBib29sZWFuIGlzUHJlbG9hZGVkKERPTVN0cmluZyB1cmwpOwogICAgIGJvb2xlYW4gaXNM
b2FkaW5nRnJvbU1lbW9yeUNhY2hlKERPTVN0cmluZyB1cmwpOwogICAgIERPTVN0cmluZyB4aHJS
ZXNwb25zZVNvdXJjZShYTUxIdHRwUmVxdWVzdCB4aHIpOwpAQCAtMTAwLDkxICsxMDAsODcgQEAg
ZW51bSBVc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uIHsKIAogICAgIENTU1N0eWxlRGVjbGFy
YXRpb24gY29tcHV0ZWRTdHlsZUluY2x1ZGluZ1Zpc2l0ZWRJbmZvKEVsZW1lbnQgZWxlbWVudCk7
CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBOb2RlIGVuc3VyZVNoYWRvd1Jvb3QoRWxlbWVudCBo
b3N0KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIE5vZGUgZW5zdXJlU2hhZG93Um9v
dChFbGVtZW50IGhvc3QpOwogICAgIE5vZGUgZW5zdXJlVXNlckFnZW50U2hhZG93Um9vdChFbGVt
ZW50IGhvc3QpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIE5vZGUgY3JlYXRlU2hhZG93Um9vdChF
bGVtZW50IGhvc3QpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gTm9kZSBjcmVhdGVT
aGFkb3dSb290KEVsZW1lbnQgaG9zdCk7CiAgICAgTm9kZSBzaGFkb3dSb290KEVsZW1lbnQgaG9z
dCk7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBET01TdHJpbmcgc2hhZG93Um9vdFR5cGUoTm9k
ZSByb290KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIERPTVN0cmluZyBzaGFkb3dS
b290VHlwZShOb2RlIHJvb3QpOwogICAgIERPTVN0cmluZyBzaGFkb3dQc2V1ZG9JZChFbGVtZW50
IGVsZW1lbnQpOwogICAgIHZvaWQgc2V0U2hhZG93UHNldWRvSWQoRWxlbWVudCBlbGVtZW50LCBE
T01TdHJpbmcgaWQpOwogICAgIE5vZGUgdHJlZVNjb3BlUm9vdE5vZGUoTm9kZSBub2RlKTsKICAg
ICBOb2RlIHBhcmVudFRyZWVTY29wZShOb2RlIG5vZGUpOwogCiAgICAgLy8gU3BhdGlhbCBOYXZp
Z2F0aW9uIHRlc3RpbmcKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB1bnNpZ25lZCBsb25nIGxhc3RT
cGF0aWFsTmF2aWdhdGlvbkNhbmRpZGF0ZUNvdW50KCk7CisgICAgW01heVRocm93TGVnYWN5RXhj
ZXB0aW9uXSB1bnNpZ25lZCBsb25nIGxhc3RTcGF0aWFsTmF2aWdhdGlvbkNhbmRpZGF0ZUNvdW50
KCk7CiAKICAgICAvLyBDU1MgQW5pbWF0aW9uIHRlc3RpbmcuCiAgICAgdW5zaWduZWQgbG9uZyBu
dW1iZXJPZkFjdGl2ZUFuaW1hdGlvbnMoKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHN1
c3BlbmRBbmltYXRpb25zKCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCByZXN1bWVBbmlt
YXRpb25zKCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gYm9vbGVhbiBhbmltYXRpb25zQXJlU3Vz
cGVuZGVkKCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gYm9vbGVhbiBwYXVzZUFuaW1hdGlvbkF0
VGltZU9uRWxlbWVudChET01TdHJpbmcgYW5pbWF0aW9uTmFtZSwgdW5yZXN0cmljdGVkIGRvdWJs
ZSBwYXVzZVRpbWUsIEVsZW1lbnQgZWxlbWVudCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gYm9v
bGVhbiBwYXVzZUFuaW1hdGlvbkF0VGltZU9uUHNldWRvRWxlbWVudChET01TdHJpbmcgYW5pbWF0
aW9uTmFtZSwgdW5yZXN0cmljdGVkIGRvdWJsZSBwYXVzZVRpbWUsIEVsZW1lbnQgZWxlbWVudCwg
RE9NU3RyaW5nIHBzZXVkb0lkKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQg
c3VzcGVuZEFuaW1hdGlvbnMoKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQg
cmVzdW1lQW5pbWF0aW9ucygpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYm9vbGVh
biBhbmltYXRpb25zQXJlU3VzcGVuZGVkKCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9u
XSBib29sZWFuIHBhdXNlQW5pbWF0aW9uQXRUaW1lT25FbGVtZW50KERPTVN0cmluZyBhbmltYXRp
b25OYW1lLCB1bnJlc3RyaWN0ZWQgZG91YmxlIHBhdXNlVGltZSwgRWxlbWVudCBlbGVtZW50KTsK
KyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGJvb2xlYW4gcGF1c2VBbmltYXRpb25BdFRp
bWVPblBzZXVkb0VsZW1lbnQoRE9NU3RyaW5nIGFuaW1hdGlvbk5hbWUsIHVucmVzdHJpY3RlZCBk
b3VibGUgcGF1c2VUaW1lLCBFbGVtZW50IGVsZW1lbnQsIERPTVN0cmluZyBwc2V1ZG9JZCk7CiAK
ICAgICAvLyBDU1MgVHJhbnNpdGlvbiB0ZXN0aW5nLgotICAgIFtSYWlzZXNFeGNlcHRpb25dIGJv
b2xlYW4gcGF1c2VUcmFuc2l0aW9uQXRUaW1lT25FbGVtZW50KERPTVN0cmluZyBwcm9wZXJ0eU5h
bWUsIHVucmVzdHJpY3RlZCBkb3VibGUgcGF1c2VUaW1lLCBFbGVtZW50IGVsZW1lbnQpOwotICAg
IFtSYWlzZXNFeGNlcHRpb25dIGJvb2xlYW4gcGF1c2VUcmFuc2l0aW9uQXRUaW1lT25Qc2V1ZG9F
bGVtZW50KERPTVN0cmluZyBwcm9wZXJ0eSwgdW5yZXN0cmljdGVkIGRvdWJsZSBwYXVzZVRpbWUs
IEVsZW1lbnQgZWxlbWVudCwgRE9NU3RyaW5nIHBzZXVkb0lkKTsKKyAgICBbTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb25dIGJvb2xlYW4gcGF1c2VUcmFuc2l0aW9uQXRUaW1lT25FbGVtZW50KERPTVN0
cmluZyBwcm9wZXJ0eU5hbWUsIHVucmVzdHJpY3RlZCBkb3VibGUgcGF1c2VUaW1lLCBFbGVtZW50
IGVsZW1lbnQpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYm9vbGVhbiBwYXVzZVRy
YW5zaXRpb25BdFRpbWVPblBzZXVkb0VsZW1lbnQoRE9NU3RyaW5nIHByb3BlcnR5LCB1bnJlc3Ry
aWN0ZWQgZG91YmxlIHBhdXNlVGltZSwgRWxlbWVudCBlbGVtZW50LCBET01TdHJpbmcgcHNldWRv
SWQpOwogCiAgICAgRE9NU3RyaW5nIHZpc2libGVQbGFjZWhvbGRlcihFbGVtZW50IGVsZW1lbnQp
OwogICAgIHZvaWQgc2VsZWN0Q29sb3JJbkNvbG9yQ2hvb3NlcihIVE1MSW5wdXRFbGVtZW50IGVs
ZW1lbnQsIERPTVN0cmluZyBjb2xvclZhbHVlKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBzZXF1
ZW5jZTxET01TdHJpbmc+IGZvcm1Db250cm9sU3RhdGVPZlByZXZpb3VzSGlzdG9yeUl0ZW0oKTsK
LSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldEZvcm1Db250cm9sU3RhdGVPZlByZXZpb3Vz
SGlzdG9yeUl0ZW0oc2VxdWVuY2U8RE9NU3RyaW5nPiB2YWx1ZXMpOworICAgIFtNYXlUaHJvd0xl
Z2FjeUV4Y2VwdGlvbl0gc2VxdWVuY2U8RE9NU3RyaW5nPiBmb3JtQ29udHJvbFN0YXRlT2ZQcmV2
aW91c0hpc3RvcnlJdGVtKCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNl
dEZvcm1Db250cm9sU3RhdGVPZlByZXZpb3VzSGlzdG9yeUl0ZW0oc2VxdWVuY2U8RE9NU3RyaW5n
PiB2YWx1ZXMpOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gQ2xpZW50UmVjdCBhYnNvbHV0ZUNh
cmV0Qm91bmRzKCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBDbGllbnRSZWN0IGFi
c29sdXRlQ2FyZXRCb3VuZHMoKTsKIAogICAgIENsaWVudFJlY3QgYm91bmRpbmdCb3goRWxlbWVu
dCBlbGVtZW50KTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIENsaWVudFJlY3RMaXN0IGluc3Bl
Y3RvckhpZ2hsaWdodFJlY3RzKCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gRE9NU3RyaW5nIGlu
c3BlY3RvckhpZ2hsaWdodE9iamVjdCgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0g
Q2xpZW50UmVjdExpc3QgaW5zcGVjdG9ySGlnaGxpZ2h0UmVjdHMoKTsKKyAgICBbTWF5VGhyb3dM
ZWdhY3lFeGNlcHRpb25dIERPTVN0cmluZyBpbnNwZWN0b3JIaWdobGlnaHRPYmplY3QoKTsKIAot
ICAgIFtSYWlzZXNFeGNlcHRpb25dIHVuc2lnbmVkIGxvbmcgbWFya2VyQ291bnRGb3JOb2RlKE5v
ZGUgbm9kZSwgRE9NU3RyaW5nIG1hcmtlclR5cGUpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIFJh
bmdlIG1hcmtlclJhbmdlRm9yTm9kZShOb2RlIG5vZGUsIERPTVN0cmluZyBtYXJrZXJUeXBlLCB1
bnNpZ25lZCBsb25nIGluZGV4KTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBET01TdHJpbmcgbWFy
a2VyRGVzY3JpcHRpb25Gb3JOb2RlKE5vZGUgbm9kZSwgRE9NU3RyaW5nIG1hcmtlclR5cGUsIHVu
c2lnbmVkIGxvbmcgaW5kZXgpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIERPTVN0cmluZyBkdW1w
TWFya2VyUmVjdHMoRE9NU3RyaW5nIG1hcmtlclR5cGUpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4
Y2VwdGlvbl0gdW5zaWduZWQgbG9uZyBtYXJrZXJDb3VudEZvck5vZGUoTm9kZSBub2RlLCBET01T
dHJpbmcgbWFya2VyVHlwZSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBSYW5nZSBt
YXJrZXJSYW5nZUZvck5vZGUoTm9kZSBub2RlLCBET01TdHJpbmcgbWFya2VyVHlwZSwgdW5zaWdu
ZWQgbG9uZyBpbmRleCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBET01TdHJpbmcg
bWFya2VyRGVzY3JpcHRpb25Gb3JOb2RlKE5vZGUgbm9kZSwgRE9NU3RyaW5nIG1hcmtlclR5cGUs
IHVuc2lnbmVkIGxvbmcgaW5kZXgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gRE9N
U3RyaW5nIGR1bXBNYXJrZXJSZWN0cyhET01TdHJpbmcgbWFya2VyVHlwZSk7CiAgICAgdm9pZCBh
ZGRUZXh0TWF0Y2hNYXJrZXIoUmFuZ2UgcmFuZ2UsIGJvb2xlYW4gaXNBY3RpdmUpOwotICAgIFtS
YWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0TWFya2VkVGV4dE1hdGNoZXNBcmVIaWdobGlnaHRlZChi
b29sZWFuIGZsYWcpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRNYXJr
ZWRUZXh0TWF0Y2hlc0FyZUhpZ2hsaWdodGVkKGJvb2xlYW4gZmxhZyk7CiAKICAgICB2b2lkIGlu
dmFsaWRhdGVGb250Q2FjaGUoKTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0U2Ny
b2xsVmlld1Bvc2l0aW9uKGxvbmcgeCwgbG9uZyB5KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNl
cHRpb25dIHZvaWQgc2V0U2Nyb2xsVmlld1Bvc2l0aW9uKGxvbmcgeCwgbG9uZyB5KTsKIAotICAg
IFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0Vmlld0Jhc2VCYWNrZ3JvdW5kQ29sb3IoRE9NU3Ry
aW5nIGNvbG9yVmFsdWUpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRW
aWV3QmFzZUJhY2tncm91bmRDb2xvcihET01TdHJpbmcgY29sb3JWYWx1ZSk7CiAKLSAgICBbUmFp
c2VzRXhjZXB0aW9uXSB2b2lkIHNldFBhZ2luYXRpb24oRE9NU3RyaW5nIG1vZGUsIGxvbmcgZ2Fw
LCBvcHRpb25hbCBsb25nIHBhZ2VMZW5ndGggPSAwKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2
b2lkIHNldFBhZ2luYXRpb25MaW5lR3JpZEVuYWJsZWQoYm9vbGVhbiBlbmFibGVkKTsKKyAgICBb
TWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0UGFnaW5hdGlvbihET01TdHJpbmcgbW9k
ZSwgbG9uZyBnYXAsIG9wdGlvbmFsIGxvbmcgcGFnZUxlbmd0aCA9IDApOworICAgIFtNYXlUaHJv
d0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRQYWdpbmF0aW9uTGluZUdyaWRFbmFibGVkKGJvb2xl
YW4gZW5hYmxlZCk7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBET01TdHJpbmcgY29uZmlndXJh
dGlvbkZvclZpZXdwb3J0KHVucmVzdHJpY3RlZCBmbG9hdCBkZXZpY2VQaXhlbFJhdGlvLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9uZyBkZXZpY2VXaWR0aCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvbmcgZGV2aWNlSGVpZ2h0LAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9uZyBhdmFpbGFibGVXaWR0
aCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvbmcgYXZhaWxhYmxl
SGVpZ2h0KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIERPTVN0cmluZyBjb25maWd1
cmF0aW9uRm9yVmlld3BvcnQodW5yZXN0cmljdGVkIGZsb2F0IGRldmljZVBpeGVsUmF0aW8sIGxv
bmcgZGV2aWNlV2lkdGgsIGxvbmcgZGV2aWNlSGVpZ2h0LCBsb25nIGF2YWlsYWJsZVdpZHRoLCBs
b25nIGF2YWlsYWJsZUhlaWdodCk7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBib29sZWFuIHdh
c0xhc3RDaGFuZ2VVc2VyRWRpdChFbGVtZW50IHRleHRGaWVsZCk7CisgICAgW01heVRocm93TGVn
YWN5RXhjZXB0aW9uXSBib29sZWFuIHdhc0xhc3RDaGFuZ2VVc2VyRWRpdChFbGVtZW50IHRleHRG
aWVsZCk7CiAgICAgYm9vbGVhbiBlbGVtZW50U2hvdWxkQXV0b0NvbXBsZXRlKEhUTUxJbnB1dEVs
ZW1lbnQgaW5wdXRFbGVtZW50KTsKICAgICB2b2lkIHNldEVkaXRpbmdWYWx1ZShIVE1MSW5wdXRF
bGVtZW50IGlucHV0RWxlbWVudCwgRE9NU3RyaW5nIHZhbHVlKTsKICAgICB2b2lkIHNldEF1dG9m
aWxsZWQoSFRNTElucHV0RWxlbWVudCBpbnB1dEVsZW1lbnQsIGJvb2xlYW4gZW5hYmxlZCk7CiAg
ICAgdm9pZCBzZXRTaG93QXV0b0ZpbGxCdXR0b24oSFRNTElucHV0RWxlbWVudCBpbnB1dEVsZW1l
bnQsIEF1dG9GaWxsQnV0dG9uVHlwZSBhdXRvRmlsbEJ1dHRvblR5cGUpOwotICAgIFtSYWlzZXNF
eGNlcHRpb25dIHVuc2lnbmVkIGxvbmcgY291bnRNYXRjaGVzRm9yVGV4dChET01TdHJpbmcgdGV4
dCwgdW5zaWduZWQgbG9uZyBmaW5kT3B0aW9ucywgRE9NU3RyaW5nIG1hcmtNYXRjaGVzKTsKLSAg
ICBbUmFpc2VzRXhjZXB0aW9uXSB1bnNpZ25lZCBsb25nIGNvdW50RmluZE1hdGNoZXMoRE9NU3Ry
aW5nIHRleHQsIHVuc2lnbmVkIGxvbmcgZmluZE9wdGlvbnMpOworICAgIFtNYXlUaHJvd0xlZ2Fj
eUV4Y2VwdGlvbl0gdW5zaWduZWQgbG9uZyBjb3VudE1hdGNoZXNGb3JUZXh0KERPTVN0cmluZyB0
ZXh0LCB1bnNpZ25lZCBsb25nIGZpbmRPcHRpb25zLCBET01TdHJpbmcgbWFya01hdGNoZXMpOwor
ICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdW5zaWduZWQgbG9uZyBjb3VudEZpbmRNYXRj
aGVzKERPTVN0cmluZyB0ZXh0LCB1bnNpZ25lZCBsb25nIGZpbmRPcHRpb25zKTsKIAotICAgIFtS
YWlzZXNFeGNlcHRpb25dIERPTVN0cmluZyBhdXRvZmlsbEZpZWxkTmFtZShFbGVtZW50IGZvcm1D
b250cm9sRWxlbWVudCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBET01TdHJpbmcg
YXV0b2ZpbGxGaWVsZE5hbWUoRWxlbWVudCBmb3JtQ29udHJvbEVsZW1lbnQpOwogCi0gICAgW1Jh
aXNlc0V4Y2VwdGlvbl0gdm9pZCBwYWludENvbnRyb2xUaW50cygpOworICAgIFtNYXlUaHJvd0xl
Z2FjeUV4Y2VwdGlvbl0gdm9pZCBwYWludENvbnRyb2xUaW50cygpOwogCi0gICAgW1JhaXNlc0V4
Y2VwdGlvbl0gdm9pZCBzY3JvbGxFbGVtZW50VG9SZWN0KEVsZW1lbnQgZWxlbWVudCwgbG9uZyB4
LCBsb25nIHksIGxvbmcgdywgbG9uZyBoKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25d
IHZvaWQgc2Nyb2xsRWxlbWVudFRvUmVjdChFbGVtZW50IGVsZW1lbnQsIGxvbmcgeCwgbG9uZyB5
LCBsb25nIHcsIGxvbmcgaCk7CiAKICAgICBSYW5nZSByYW5nZUZyb21Mb2NhdGlvbkFuZExlbmd0
aChFbGVtZW50IHNjb3BlLCBsb25nIHJhbmdlTG9jYXRpb24sIGxvbmcgcmFuZ2VMZW5ndGgpOwog
ICAgIHVuc2lnbmVkIGxvbmcgbG9jYXRpb25Gcm9tUmFuZ2UoRWxlbWVudCBzY29wZSwgUmFuZ2Ug
cmFuZ2UpOwogICAgIHVuc2lnbmVkIGxvbmcgbGVuZ3RoRnJvbVJhbmdlKEVsZW1lbnQgc2NvcGUs
IFJhbmdlIHJhbmdlKTsKICAgICBET01TdHJpbmcgcmFuZ2VBc1RleHQoUmFuZ2UgcmFuZ2UpOwog
ICAgIFJhbmdlIHN1YnJhbmdlKFJhbmdlIHJhbmdlLCBsb25nIHJhbmdlTG9jYXRpb24sIGxvbmcg
cmFuZ2VMZW5ndGgpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIFJhbmdlIHJhbmdlRm9yRGljdGlv
bmFyeUxvb2t1cEF0TG9jYXRpb24obG9uZyB4LCBsb25nIHkpOworICAgIFtNYXlUaHJvd0xlZ2Fj
eUV4Y2VwdGlvbl0gUmFuZ2UgcmFuZ2VGb3JEaWN0aW9uYXJ5TG9va3VwQXRMb2NhdGlvbihsb25n
IHgsIGxvbmcgeSk7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldERlbGVnYXRlc1Nj
cm9sbGluZyhib29sZWFuIGVuYWJsZWQpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0g
dm9pZCBzZXREZWxlZ2F0ZXNTY3JvbGxpbmcoYm9vbGVhbiBlbmFibGVkKTsKIAotICAgIFtSYWlz
ZXNFeGNlcHRpb25dIGxvbmcgbGFzdFNwZWxsQ2hlY2tSZXF1ZXN0U2VxdWVuY2UoKTsKLSAgICBb
UmFpc2VzRXhjZXB0aW9uXSBsb25nIGxhc3RTcGVsbENoZWNrUHJvY2Vzc2VkU2VxdWVuY2UoKTsK
KyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGxvbmcgbGFzdFNwZWxsQ2hlY2tSZXF1ZXN0
U2VxdWVuY2UoKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGxvbmcgbGFzdFNwZWxs
Q2hlY2tQcm9jZXNzZWRTZXF1ZW5jZSgpOwogCiAgICAgc2VxdWVuY2U8RE9NU3RyaW5nPiB1c2Vy
UHJlZmVycmVkTGFuZ3VhZ2VzKCk7CiAgICAgdm9pZCBzZXRVc2VyUHJlZmVycmVkTGFuZ3VhZ2Vz
KHNlcXVlbmNlPERPTVN0cmluZz4gbGFuZ3VhZ2VzKTsKQEAgLTE5MiwxMCArMTg4LDEwIEBAIGVu
dW0gVXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbiB7CiAgICAgc2VxdWVuY2U8RE9NU3RyaW5n
PiB1c2VyUHJlZmVycmVkQXVkaW9DaGFyYWN0ZXJpc3RpY3MoKTsKICAgICB2b2lkIHNldFVzZXJQ
cmVmZXJyZWRBdWRpb0NoYXJhY3RlcmlzdGljKERPTVN0cmluZyBjaGFyYWN0ZXJpc3RpYyk7CiAK
LSAgICBbUmFpc2VzRXhjZXB0aW9uXSB1bnNpZ25lZCBsb25nIHdoZWVsRXZlbnRIYW5kbGVyQ291
bnQoKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB1bnNpZ25lZCBsb25nIHRvdWNoRXZlbnRIYW5k
bGVyQ291bnQoKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHVuc2lnbmVkIGxvbmcg
d2hlZWxFdmVudEhhbmRsZXJDb3VudCgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0g
dW5zaWduZWQgbG9uZyB0b3VjaEV2ZW50SGFuZGxlckNvdW50KCk7CiAKLSAgICBbUmFpc2VzRXhj
ZXB0aW9uXSBOb2RlTGlzdCBub2Rlc0Zyb21SZWN0KERvY3VtZW50IGRvY3VtZW50LCBsb25nIHgs
IGxvbmcgeSwKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIE5vZGVMaXN0IG5vZGVzRnJv
bVJlY3QoRG9jdW1lbnQgZG9jdW1lbnQsIGxvbmcgeCwgbG9uZyB5LAogICAgICAgICB1bnNpZ25l
ZCBsb25nIHRvcFBhZGRpbmcsIHVuc2lnbmVkIGxvbmcgcmlnaHRQYWRkaW5nLCB1bnNpZ25lZCBs
b25nIGJvdHRvbVBhZGRpbmcsIHVuc2lnbmVkIGxvbmcgbGVmdFBhZGRpbmcsCiAgICAgICAgIGJv
b2xlYW4gaWdub3JlQ2xpcHBpbmcsIGJvb2xlYW4gYWxsb3dTaGFkb3dDb250ZW50LCBib29sZWFu
IGFsbG93Q2hpbGRGcmFtZUNvbnRlbnQpOwogCkBAIC0yMDQsOSArMjAwLDkgQEAgZW51bSBVc2Vy
SW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uIHsKIAogICAgIHZvaWQgdXBkYXRlRWRpdG9yVUlOb3dJ
ZlNjaGVkdWxlZCgpOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gYm9vbGVhbiBoYXNTcGVsbGlu
Z01hcmtlcihsb25nIGZyb20sIGxvbmcgbGVuZ3RoKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBi
b29sZWFuIGhhc0dyYW1tYXJNYXJrZXIobG9uZyBmcm9tLCBsb25nIGxlbmd0aCk7Ci0gICAgW1Jh
aXNlc0V4Y2VwdGlvbl0gYm9vbGVhbiBoYXNBdXRvY29ycmVjdGVkTWFya2VyKGxvbmcgZnJvbSwg
bG9uZyBsZW5ndGgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYm9vbGVhbiBoYXNT
cGVsbGluZ01hcmtlcihsb25nIGZyb20sIGxvbmcgbGVuZ3RoKTsKKyAgICBbTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb25dIGJvb2xlYW4gaGFzR3JhbW1hck1hcmtlcihsb25nIGZyb20sIGxvbmcgbGVu
Z3RoKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGJvb2xlYW4gaGFzQXV0b2NvcnJl
Y3RlZE1hcmtlcihsb25nIGZyb20sIGxvbmcgbGVuZ3RoKTsKICAgICB2b2lkIHNldENvbnRpbnVv
dXNTcGVsbENoZWNraW5nRW5hYmxlZChib29sZWFuIGVuYWJsZWQpOwogICAgIHZvaWQgc2V0QXV0
b21hdGljUXVvdGVTdWJzdGl0dXRpb25FbmFibGVkKGJvb2xlYW4gZW5hYmxlZCk7CiAgICAgdm9p
ZCBzZXRBdXRvbWF0aWNMaW5rRGV0ZWN0aW9uRW5hYmxlZChib29sZWFuIGVuYWJsZWQpOwpAQCAt
MjE0LDE0ICsyMTAsMTQgQEAgZW51bSBVc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uIHsKICAg
ICB2b2lkIHNldEF1dG9tYXRpY1RleHRSZXBsYWNlbWVudEVuYWJsZWQoYm9vbGVhbiBlbmFibGVk
KTsKICAgICB2b2lkIHNldEF1dG9tYXRpY1NwZWxsaW5nQ29ycmVjdGlvbkVuYWJsZWQoYm9vbGVh
biBlbmFibGVkKTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgaGFuZGxlQWNjZXB0ZWRD
YW5kaWRhdGUoRE9NU3RyaW5nIGNhbmRpZGF0ZSwgdW5zaWduZWQgbG9uZyBsb2NhdGlvbiwgdW5z
aWduZWQgbG9uZyBsZW5ndGgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBo
YW5kbGVBY2NlcHRlZENhbmRpZGF0ZShET01TdHJpbmcgY2FuZGlkYXRlLCB1bnNpZ25lZCBsb25n
IGxvY2F0aW9uLCB1bnNpZ25lZCBsb25nIGxlbmd0aCk7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9u
XSBib29sZWFuIGlzT3ZlcndyaXRlTW9kZUVuYWJsZWQoKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9u
XSB2b2lkIHRvZ2dsZU92ZXJ3cml0ZU1vZGVFbmFibGVkKCk7CisgICAgW01heVRocm93TGVnYWN5
RXhjZXB0aW9uXSBib29sZWFuIGlzT3ZlcndyaXRlTW9kZUVuYWJsZWQoKTsKKyAgICBbTWF5VGhy
b3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgdG9nZ2xlT3ZlcndyaXRlTW9kZUVuYWJsZWQoKTsKIAot
ICAgIFtSYWlzZXNFeGNlcHRpb25dIHVuc2lnbmVkIGxvbmcgbnVtYmVyT2ZTY3JvbGxhYmxlQXJl
YXMoKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHVuc2lnbmVkIGxvbmcgbnVtYmVy
T2ZTY3JvbGxhYmxlQXJlYXMoKTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIGJvb2xlYW4gaXNQ
YWdlQm94VmlzaWJsZShsb25nIHBhZ2VOdW1iZXIpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gYm9vbGVhbiBpc1BhZ2VCb3hWaXNpYmxlKGxvbmcgcGFnZU51bWJlcik7CiAKICAgICB1
bnNpZ25lZCBsb25nIGltYWdlRnJhbWVJbmRleChIVE1MSW1hZ2VFbGVtZW50IGVsZW1lbnQpOwog
CkBAIC0yMzQsNjMgKzIzMCw2MyBAQCBlbnVtIFVzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb24g
ewogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IExBWUVSX1RSRUVfSU5DTFVERVNfUkVQQUlOVF9S
RUNUUyA9IDQ7CiAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgTEFZRVJfVFJFRV9JTkNMVURFU19Q
QUlOVElOR19QSEFTRVMgPSA4OwogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IExBWUVSX1RSRUVf
SU5DTFVERVNfQ09OVEVOVF9MQVlFUlMgPSAxNjsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBET01T
dHJpbmcgbGF5ZXJUcmVlQXNUZXh0KERvY3VtZW50IGRvY3VtZW50LCBvcHRpb25hbCB1bnNpZ25l
ZCBzaG9ydCBmbGFncyA9IDApOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gRE9NU3Ry
aW5nIGxheWVyVHJlZUFzVGV4dChEb2N1bWVudCBkb2N1bWVudCwgb3B0aW9uYWwgdW5zaWduZWQg
c2hvcnQgZmxhZ3MgPSAwKTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIERPTVN0cmluZyBzY3Jv
bGxpbmdTdGF0ZVRyZWVBc1RleHQoKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBET01TdHJpbmcg
bWFpblRocmVhZFNjcm9sbGluZ1JlYXNvbnMoKTsgLy8gRklYTUU6IHJlbmFtZSB0byBzeW5jaHJv
bm91c1Njcm9sbGluZ1JlYXNvbnMoKS4KLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBDbGllbnRSZWN0
TGlzdCBub25GYXN0U2Nyb2xsYWJsZVJlY3RzKCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0
aW9uXSBET01TdHJpbmcgc2Nyb2xsaW5nU3RhdGVUcmVlQXNUZXh0KCk7CisgICAgW01heVRocm93
TGVnYWN5RXhjZXB0aW9uXSBET01TdHJpbmcgbWFpblRocmVhZFNjcm9sbGluZ1JlYXNvbnMoKTsg
Ly8gRklYTUU6IHJlbmFtZSB0byBzeW5jaHJvbm91c1Njcm9sbGluZ1JlYXNvbnMoKS4KKyAgICBb
TWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIENsaWVudFJlY3RMaXN0IG5vbkZhc3RTY3JvbGxhYmxl
UmVjdHMoKTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIERPTVN0cmluZyByZXBhaW50UmVjdHNB
c1RleHQoKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIERPTVN0cmluZyByZXBhaW50
UmVjdHNBc1RleHQoKTsKIAogICAgIC8vIFRoZXNlIHRocm93IGlmIHRoZSBlbGVtZW50IGRvZXMg
bm90IGhhdmUgYSBjb21wb3NpdGluZyBsYXllci4KLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lk
IHNldEVsZW1lbnRVc2VzRGlzcGxheUxpc3REcmF3aW5nKEVsZW1lbnQgZWxlbWVudCwgYm9vbGVh
biB1c2VzRGlzcGxheUxpc3REcmF3aW5nKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNl
dEVsZW1lbnRUcmFja3NEaXNwbGF5TGlzdFJlcGxheShFbGVtZW50IGVsZW1lbnQsIGJvb2xlYW4g
dHJhY2tSZXBsYXkpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRFbGVt
ZW50VXNlc0Rpc3BsYXlMaXN0RHJhd2luZyhFbGVtZW50IGVsZW1lbnQsIGJvb2xlYW4gdXNlc0Rp
c3BsYXlMaXN0RHJhd2luZyk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNl
dEVsZW1lbnRUcmFja3NEaXNwbGF5TGlzdFJlcGxheShFbGVtZW50IGVsZW1lbnQsIGJvb2xlYW4g
dHJhY2tSZXBsYXkpOwogCiAgICAgLy8gRmxhZ3MgZm9yIGRpc3BsYXlMaXN0Rm9yRWxlbWVudC4K
ICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBESVNQTEFZX0xJU1RfSU5DTFVERVNfUExBVEZPUk1f
T1BFUkFUSU9OUyA9IDE7CiAgICAgLy8gUmV0dXJucyB0aGUgcmVjb3JkZWQgZGlzcGxheSBsaXN0
LgotICAgIFtSYWlzZXNFeGNlcHRpb25dIERPTVN0cmluZyBkaXNwbGF5TGlzdEZvckVsZW1lbnQo
RWxlbWVudCBlbGVtZW50LCBvcHRpb25hbCB1bnNpZ25lZCBzaG9ydCBmbGFncyA9IDApOworICAg
IFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gRE9NU3RyaW5nIGRpc3BsYXlMaXN0Rm9yRWxlbWVu
dChFbGVtZW50IGVsZW1lbnQsIG9wdGlvbmFsIHVuc2lnbmVkIHNob3J0IGZsYWdzID0gMCk7CiAg
ICAgLy8gUmV0dXJucyB0aGUgZGlzcGxheSBsaXN0IHRoYXQgd2FzIGFjdHVhbGx5IHBhaW50ZWQu
Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gRE9NU3RyaW5nIHJlcGxheURpc3BsYXlMaXN0Rm9yRWxl
bWVudChFbGVtZW50IGVsZW1lbnQsIG9wdGlvbmFsIHVuc2lnbmVkIHNob3J0IGZsYWdzID0gMCk7
CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBET01TdHJpbmcgcmVwbGF5RGlzcGxheUxp
c3RGb3JFbGVtZW50KEVsZW1lbnQgZWxlbWVudCwgb3B0aW9uYWwgdW5zaWduZWQgc2hvcnQgZmxh
Z3MgPSAwKTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgZ2FyYmFnZUNvbGxlY3REb2N1
bWVudFJlc291cmNlcygpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBnYXJi
YWdlQ29sbGVjdERvY3VtZW50UmVzb3VyY2VzKCk7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2
b2lkIGluc2VydEF1dGhvckNTUyhET01TdHJpbmcgY3NzKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9u
XSB2b2lkIGluc2VydFVzZXJDU1MoRE9NU3RyaW5nIGNzcyk7CisgICAgW01heVRocm93TGVnYWN5
RXhjZXB0aW9uXSB2b2lkIGluc2VydEF1dGhvckNTUyhET01TdHJpbmcgY3NzKTsKKyAgICBbTWF5
VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgaW5zZXJ0VXNlckNTUyhET01TdHJpbmcgY3NzKTsK
IAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIGlzVW5kZXJNZW1vcnlQcmVzc3VyZTsK
ICAgICB2b2lkIGJlZ2luU2ltdWxhdGVkTWVtb3J5UHJlc3N1cmUoKTsKICAgICB2b2lkIGVuZFNp
bXVsYXRlZE1lbW9yeVByZXNzdXJlKCk7CiAKICNpZiBkZWZpbmVkKEVOQUJMRV9CQVRURVJZX1NU
QVRVUykgJiYgRU5BQkxFX0JBVFRFUllfU1RBVFVTCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9p
ZCBzZXRCYXR0ZXJ5U3RhdHVzKERPTVN0cmluZyBldmVudFR5cGUsIGJvb2xlYW4gY2hhcmdpbmcs
IHVucmVzdHJpY3RlZCBkb3VibGUgY2hhcmdpbmdUaW1lLCB1bnJlc3RyaWN0ZWQgZG91YmxlIGRp
c2NoYXJnaW5nVGltZSwgdW5yZXN0cmljdGVkIGRvdWJsZSBsZXZlbCk7CisgICAgW01heVRocm93
TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNldEJhdHRlcnlTdGF0dXMoRE9NU3RyaW5nIGV2ZW50VHlw
ZSwgYm9vbGVhbiBjaGFyZ2luZywgdW5yZXN0cmljdGVkIGRvdWJsZSBjaGFyZ2luZ1RpbWUsIHVu
cmVzdHJpY3RlZCBkb3VibGUgZGlzY2hhcmdpbmdUaW1lLCB1bnJlc3RyaWN0ZWQgZG91YmxlIGxl
dmVsKTsKICNlbmRpZgogCiAjaWYgZGVmaW5lZChFTkFCTEVfUFJPWElNSVRZX0VWRU5UUykgJiYg
RU5BQkxFX1BST1hJTUlUWV9FVkVOVFMKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldERl
dmljZVByb3hpbWl0eShET01TdHJpbmcgZXZlbnRUeXBlLCB1bnJlc3RyaWN0ZWQgZG91YmxlIHZh
bHVlLCB1bnJlc3RyaWN0ZWQgZG91YmxlIG1pbiwgdW5yZXN0cmljdGVkIGRvdWJsZSBtYXgpOwor
ICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXREZXZpY2VQcm94aW1pdHkoRE9N
U3RyaW5nIGV2ZW50VHlwZSwgdW5yZXN0cmljdGVkIGRvdWJsZSB2YWx1ZSwgdW5yZXN0cmljdGVk
IGRvdWJsZSBtaW4sIHVucmVzdHJpY3RlZCBkb3VibGUgbWF4KTsKICNlbmRpZgogCiAgICAgdW5z
aWduZWQgbG9uZyBudW1iZXJPZkxpdmVOb2RlcygpOwogICAgIHVuc2lnbmVkIGxvbmcgbnVtYmVy
T2ZMaXZlRG9jdW1lbnRzKCk7CiAgICAgRE9NV2luZG93IG9wZW5EdW1teUluc3BlY3RvckZyb250
ZW5kKERPTVN0cmluZyB1cmwpOwogICAgIHZvaWQgY2xvc2VEdW1teUluc3BlY3RvckZyb250ZW5k
KCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRJbnNwZWN0b3JJc1VuZGVyVGVzdChi
b29sZWFuIGlzVW5kZXJUZXN0KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQg
c2V0SW5zcGVjdG9ySXNVbmRlclRlc3QoYm9vbGVhbiBpc1VuZGVyVGVzdCk7CiAKICAgICBET01T
dHJpbmcgY291bnRlclZhbHVlKEVsZW1lbnQgZWxlbWVudCk7CiAgICAgbG9uZyBwYWdlTnVtYmVy
KEVsZW1lbnQgZWxlbWVudCwgb3B0aW9uYWwgdW5yZXN0cmljdGVkIGZsb2F0IHBhZ2VXaWR0aCA9
IDgwMCwgb3B0aW9uYWwgdW5yZXN0cmljdGVkIGZsb2F0IHBhZ2VIZWlnaHQgPSA2MDApOwogICAg
IHNlcXVlbmNlPERPTVN0cmluZz4gc2hvcnRjdXRJY29uVVJMcygpOwogICAgIGxvbmcgbnVtYmVy
T2ZQYWdlcyhvcHRpb25hbCB1bnJlc3RyaWN0ZWQgZG91YmxlIHBhZ2VXaWR0aEluUGl4ZWxzID0g
ODAwLCBvcHRpb25hbCB1bnJlc3RyaWN0ZWQgZG91YmxlIHBhZ2VIZWlnaHRJblBpeGVscyA9IDYw
MCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gRE9NU3RyaW5nIHBhZ2VQcm9wZXJ0eShET01TdHJp
bmcgcHJvcGVydHlOYW1lLCBsb25nIHBhZ2VOdW1iZXIpOwotICAgIFtSYWlzZXNFeGNlcHRpb25d
IERPTVN0cmluZyBwYWdlU2l6ZUFuZE1hcmdpbnNJblBpeGVscyhsb25nIHBhZ2VJbmRleCwgbG9u
ZyB3aWR0aCwgbG9uZyBoZWlnaHQsIGxvbmcgbWFyZ2luVG9wLCBsb25nIG1hcmdpblJpZ2h0LCBs
b25nIG1hcmdpbkJvdHRvbSwgbG9uZyBtYXJnaW5MZWZ0KTsKKyAgICBbTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb25dIERPTVN0cmluZyBwYWdlUHJvcGVydHkoRE9NU3RyaW5nIHByb3BlcnR5TmFtZSwg
bG9uZyBwYWdlTnVtYmVyKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIERPTVN0cmlu
ZyBwYWdlU2l6ZUFuZE1hcmdpbnNJblBpeGVscyhsb25nIHBhZ2VJbmRleCwgbG9uZyB3aWR0aCwg
bG9uZyBoZWlnaHQsIGxvbmcgbWFyZ2luVG9wLCBsb25nIG1hcmdpblJpZ2h0LCBsb25nIG1hcmdp
bkJvdHRvbSwgbG9uZyBtYXJnaW5MZWZ0KTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQg
c2V0UGFnZVNjYWxlRmFjdG9yKHVucmVzdHJpY3RlZCBmbG9hdCBzY2FsZUZhY3RvciwgbG9uZyB4
LCBsb25nIHkpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0UGFnZVpvb21GYWN0b3Io
dW5yZXN0cmljdGVkIGZsb2F0IHpvb21GYWN0b3IpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZv
aWQgc2V0VGV4dFpvb21GYWN0b3IodW5yZXN0cmljdGVkIGZsb2F0IHpvb21GYWN0b3IpOworICAg
IFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRQYWdlU2NhbGVGYWN0b3IodW5yZXN0
cmljdGVkIGZsb2F0IHNjYWxlRmFjdG9yLCBsb25nIHgsIGxvbmcgeSk7CisgICAgW01heVRocm93
TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNldFBhZ2Vab29tRmFjdG9yKHVucmVzdHJpY3RlZCBmbG9h
dCB6b29tRmFjdG9yKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0VGV4
dFpvb21GYWN0b3IodW5yZXN0cmljdGVkIGZsb2F0IHpvb21GYWN0b3IpOwogCi0gICAgW1JhaXNl
c0V4Y2VwdGlvbl0gdm9pZCBzZXRVc2VGaXhlZExheW91dChib29sZWFuIHVzZUZpeGVkTGF5b3V0
KTsKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldEZpeGVkTGF5b3V0U2l6ZShsb25nIHdp
ZHRoLCBsb25nIGhlaWdodCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNl
dFVzZUZpeGVkTGF5b3V0KGJvb2xlYW4gdXNlRml4ZWRMYXlvdXQpOworICAgIFtNYXlUaHJvd0xl
Z2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRGaXhlZExheW91dFNpemUobG9uZyB3aWR0aCwgbG9uZyBo
ZWlnaHQpOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRWaWV3RXhwb3NlZFJlY3Qo
dW5yZXN0cmljdGVkIGZsb2F0IHgsIHVucmVzdHJpY3RlZCBmbG9hdCB5LCB1bnJlc3RyaWN0ZWQg
ZmxvYXQgd2lkdGgsIHVucmVzdHJpY3RlZCBmbG9hdCBoZWlnaHQpOworICAgIFtNYXlUaHJvd0xl
Z2FjeUV4Y2VwdGlvbl0gdm9pZCBzZXRWaWV3RXhwb3NlZFJlY3QodW5yZXN0cmljdGVkIGZsb2F0
IHgsIHVucmVzdHJpY3RlZCBmbG9hdCB5LCB1bnJlc3RyaWN0ZWQgZmxvYXQgd2lkdGgsIHVucmVz
dHJpY3RlZCBmbG9hdCBoZWlnaHQpOwogCiAgICAgdm9pZCBzZXRIZWFkZXJIZWlnaHQodW5yZXN0
cmljdGVkIGZsb2F0IGhlaWdodCk7CiAgICAgdm9pZCBzZXRGb290ZXJIZWlnaHQodW5yZXN0cmlj
dGVkIGZsb2F0IGhlaWdodCk7CkBAIC0zMTcsMzMgKzMxMywzMyBAQCBlbnVtIFVzZXJJbnRlcmZh
Y2VMYXlvdXREaXJlY3Rpb24gewogCiAgICAgLy8gVGhlc2UgZnVuY3Rpb25zIGJvdGggcmVzZXQg
dGhlIHRyYWNrZWQgcmVwYWludCByZWN0cy4gVGhleSBhcmUgaW50ZW5kZWQgdG8gYmUgdXNlZCBp
biB0aGUgZm9sbG93aW5nIG9yZGVyOgogICAgIC8vICBzdGFydFRyYWNraW5nUmVwYWludHMsIHJl
cGFpbnRSZWN0c0FzVGV4dCwgc3RvcFRyYWNraW5nUmVwYWludHMuCi0gICAgW1JhaXNlc0V4Y2Vw
dGlvbl0gdm9pZCBzdGFydFRyYWNraW5nUmVwYWludHMoKTsKLSAgICBbUmFpc2VzRXhjZXB0aW9u
XSB2b2lkIHN0b3BUcmFja2luZ1JlcGFpbnRzKCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0
aW9uXSB2b2lkIHN0YXJ0VHJhY2tpbmdSZXBhaW50cygpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4
Y2VwdGlvbl0gdm9pZCBzdG9wVHJhY2tpbmdSZXBhaW50cygpOwogCi0gICAgW1JhaXNlc0V4Y2Vw
dGlvbl0gdm9pZCBzdGFydFRyYWNraW5nTGF5ZXJGbHVzaGVzKCk7Ci0gICAgW1JhaXNlc0V4Y2Vw
dGlvbl0gdW5zaWduZWQgbG9uZyBsYXllckZsdXNoQ291bnQoKTsKKyAgICBbTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb25dIHZvaWQgc3RhcnRUcmFja2luZ0xheWVyRmx1c2hlcygpOworICAgIFtNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdW5zaWduZWQgbG9uZyBsYXllckZsdXNoQ291bnQoKTsKIAog
ICAgIC8vIFF1ZXJ5IGlmIGEgdGltZXIgaXMgY3VycmVudGx5IHRocm90dGxlZCwgdG8gZGVidWcg
dGltZXIgdGhyb3R0bGluZy4KLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBib29sZWFuIGlzVGltZXJU
aHJvdHRsZWQobG9uZyB0aW1lckhhbmRsZSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9u
XSBib29sZWFuIGlzVGltZXJUaHJvdHRsZWQobG9uZyB0aW1lckhhbmRsZSk7CiAKICAgICBib29s
ZWFuIGlzUmVxdWVzdEFuaW1hdGlvbkZyYW1lVGhyb3R0bGVkKCk7CiAgICAgYm9vbGVhbiBhcmVU
aW1lcnNUaHJvdHRsZWQoKTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc3RhcnRUcmFj
a2luZ1N0eWxlUmVjYWxjcygpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIHVuc2lnbmVkIGxvbmcg
c3R5bGVSZWNhbGNDb3VudCgpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBz
dGFydFRyYWNraW5nU3R5bGVSZWNhbGNzKCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9u
XSB1bnNpZ25lZCBsb25nIHN0eWxlUmVjYWxjQ291bnQoKTsKIAotICAgIFtSYWlzZXNFeGNlcHRp
b25dIHZvaWQgc3RhcnRUcmFja2luZ0NvbXBvc2l0aW5nVXBkYXRlcygpOwotICAgIFtSYWlzZXNF
eGNlcHRpb25dIHVuc2lnbmVkIGxvbmcgY29tcG9zaXRpbmdVcGRhdGVDb3VudCgpOworICAgIFtN
YXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzdGFydFRyYWNraW5nQ29tcG9zaXRpbmdVcGRh
dGVzKCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB1bnNpZ25lZCBsb25nIGNvbXBv
c2l0aW5nVXBkYXRlQ291bnQoKTsKIAogICAgIC8vIHxub2RlfCBzaG91bGQgYmUgRG9jdW1lbnQs
IEhUTUxJRnJhbWVFbGVtZW50LCBvciB1bnNwZWNpZmllZC4KICAgICAvLyBJZiB8bm9kZXwgaXMg
YW4gSFRNTElGcmFtZUVsZW1lbnQsIGl0IGFzc3VtZXMgbm9kZS5jb250ZW50RG9jdW1lbnQgaXMK
ICAgICAvLyBzcGVjaWZpZWQgd2l0aG91dCBzZWN1cml0eSBjaGVja3MuIFVuc3BlY2lmaWVkIG9y
IG51bGwgbWVhbnMgdGhpcyBkb2N1bWVudC4KLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHVw
ZGF0ZUxheW91dElnbm9yZVBlbmRpbmdTdHlsZXNoZWV0c0FuZFJ1blBvc3RMYXlvdXRUYXNrcyhv
cHRpb25hbCBOb2RlPyBub2RlID0gbnVsbCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9u
XSB2b2lkIHVwZGF0ZUxheW91dElnbm9yZVBlbmRpbmdTdHlsZXNoZWV0c0FuZFJ1blBvc3RMYXlv
dXRUYXNrcyhvcHRpb25hbCBOb2RlPyBub2RlID0gbnVsbCk7CiAKICAgICByZWFkb25seSBhdHRy
aWJ1dGUgdW5zaWduZWQgbG9uZyBsYXlvdXRDb3VudDsKIAogICAgIC8vIFJldHVybnMgYSBzdHJp
bmcgd2l0aCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgbW91c2UgY3Vyc29yIHVzZWQgYXQgdGhlIHNw
ZWNpZmllZCBjbGllbnQgbG9jYXRpb24uCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gRE9NU3RyaW5n
IGdldEN1cnJlbnRDdXJzb3JJbmZvKCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBE
T01TdHJpbmcgZ2V0Q3VycmVudEN1cnNvckluZm8oKTsKIAogICAgIERPTVN0cmluZyBtYXJrZXJU
ZXh0Rm9yTGlzdEl0ZW0oRWxlbWVudCBlbGVtZW50KTsKIApAQCAtMzYyLDcgKzM1OCw3IEBAIGVu
dW0gVXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbiB7CiAgICAgdm9pZCBlbmFibGVBdXRvU2l6
ZU1vZGUoYm9vbGVhbiBlbmFibGVkLCBsb25nIG1pbmltdW1XaWR0aCwgbG9uZyBtaW5pbXVtSGVp
Z2h0LCBsb25nIG1heGltdW1XaWR0aCwgbG9uZyBtYXhpbXVtSGVpZ2h0KTsKIAogICAgIFtDb25k
aXRpb25hbD1WSURFT10gdm9pZCBzaW11bGF0ZUF1ZGlvSW50ZXJydXB0aW9uKEhUTUxNZWRpYUVs
ZW1lbnQgZWxlbWVudCk7Ci0gICAgW0NvbmRpdGlvbmFsPVZJREVPLCBSYWlzZXNFeGNlcHRpb25d
IGJvb2xlYW4gbWVkaWFFbGVtZW50SGFzQ2hhcmFjdGVyaXN0aWMoSFRNTE1lZGlhRWxlbWVudCBl
bGVtZW50LCBET01TdHJpbmcgY2hhcmFjdGVyaXN0aWMpOworICAgIFtDb25kaXRpb25hbD1WSURF
TywgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGJvb2xlYW4gbWVkaWFFbGVtZW50SGFzQ2hhcmFj
dGVyaXN0aWMoSFRNTE1lZGlhRWxlbWVudCBlbGVtZW50LCBET01TdHJpbmcgY2hhcmFjdGVyaXN0
aWMpOwogCiAgICAgW0NvbmRpdGlvbmFsPUVOQ1JZUFRFRF9NRURJQV9WMl0gdm9pZCBpbml0aWFs
aXplTW9ja0NETSgpOwogCkBAIC0zNzAsMTAgKzM2NiwxMCBAQCBlbnVtIFVzZXJJbnRlcmZhY2VM
YXlvdXREaXJlY3Rpb24gewogCiAgICAgRE9NU3RyaW5nIGdldEltYWdlU291cmNlVVJMKEVsZW1l
bnQgZWxlbWVudCk7CiAKLSAgICBbQ29uZGl0aW9uYWw9VklERU9fVFJBQ0ssIFJhaXNlc0V4Y2Vw
dGlvbl0gRE9NU3RyaW5nIGNhcHRpb25zU3R5bGVTaGVldE92ZXJyaWRlKCk7Ci0gICAgW0NvbmRp
dGlvbmFsPVZJREVPX1RSQUNLLCBSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0Q2FwdGlvbnNTdHls
ZVNoZWV0T3ZlcnJpZGUoRE9NU3RyaW5nIG92ZXJyaWRlKTsKLSAgICBbQ29uZGl0aW9uYWw9VklE
RU9fVFJBQ0ssIFJhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRQcmltYXJ5QXVkaW9UcmFja0xhbmd1
YWdlT3ZlcnJpZGUoRE9NU3RyaW5nIGxhbmd1YWdlKTsKLSAgICBbQ29uZGl0aW9uYWw9VklERU9f
VFJBQ0ssIFJhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRDYXB0aW9uRGlzcGxheU1vZGUoRE9NU3Ry
aW5nIG1vZGUpOworICAgIFtDb25kaXRpb25hbD1WSURFT19UUkFDSywgTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb25dIERPTVN0cmluZyBjYXB0aW9uc1N0eWxlU2hlZXRPdmVycmlkZSgpOworICAgIFtD
b25kaXRpb25hbD1WSURFT19UUkFDSywgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgc2V0
Q2FwdGlvbnNTdHlsZVNoZWV0T3ZlcnJpZGUoRE9NU3RyaW5nIG92ZXJyaWRlKTsKKyAgICBbQ29u
ZGl0aW9uYWw9VklERU9fVFJBQ0ssIE1heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHNldFBy
aW1hcnlBdWRpb1RyYWNrTGFuZ3VhZ2VPdmVycmlkZShET01TdHJpbmcgbGFuZ3VhZ2UpOworICAg
IFtDb25kaXRpb25hbD1WSURFT19UUkFDSywgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQg
c2V0Q2FwdGlvbkRpc3BsYXlNb2RlKERPTVN0cmluZyBtb2RlKTsKIAogICAgIFtDb25kaXRpb25h
bD1WSURFT10gVGltZVJhbmdlcyBjcmVhdGVUaW1lUmFuZ2VzKEZsb2F0MzJBcnJheSBzdGFydFRp
bWVzLCBGbG9hdDMyQXJyYXkKICAgICAgZW5kVGltZXMpOwpAQCAtMzg1LDE3ICszODEsMTcgQEAg
ZW51bSBVc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uIHsKICAgICBib29sZWFuIGlzVmlicmF0
aW5nKCk7CiAjZW5kaWYKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIGJvb2xlYW4gaXNQbHVnaW5V
bmF2YWlsYWJpbGl0eUluZGljYXRvck9ic2N1cmVkKEVsZW1lbnQgZWxlbWVudCk7CisgICAgW01h
eVRocm93TGVnYWN5RXhjZXB0aW9uXSBib29sZWFuIGlzUGx1Z2luVW5hdmFpbGFiaWxpdHlJbmRp
Y2F0b3JPYnNjdXJlZChFbGVtZW50IGVsZW1lbnQpOwogICAgIGJvb2xlYW4gaXNQbHVnaW5TbmFw
c2hvdHRlZChFbGVtZW50IGVsZW1lbnQpOwogCi0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gQ2xpZW50
UmVjdCBzZWxlY3Rpb25Cb3VuZHMoKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIENs
aWVudFJlY3Qgc2VsZWN0aW9uQm91bmRzKCk7CiAKICAgICBbQ29uZGl0aW9uYWw9TUVESUFfU09V
UkNFXSB2b2lkIGluaXRpYWxpemVNb2NrTWVkaWFTb3VyY2UoKTsKICAgICBbQ29uZGl0aW9uYWw9
TUVESUFfU09VUkNFXSBzZXF1ZW5jZTxET01TdHJpbmc+IGJ1ZmZlcmVkU2FtcGxlc0ZvclRyYWNr
SUQoU291cmNlQnVmZmVyIGJ1ZmZlciwgRE9NU3RyaW5nIHRyYWNrSUQpOwogICAgIFtDb25kaXRp
b25hbD1NRURJQV9TT1VSQ0VdIHNlcXVlbmNlPERPTVN0cmluZz4gZW5xdWV1ZWRTYW1wbGVzRm9y
VHJhY2tJRChTb3VyY2VCdWZmZXIgYnVmZmVyLCBET01TdHJpbmcgdHJhY2tJRCk7CiAgICAgW0Nv
bmRpdGlvbmFsPU1FRElBX1NPVVJDRV0gdm9pZCBzZXRTaG91bGRHZW5lcmF0ZVRpbWVzdGFtcHMo
U291cmNlQnVmZmVyIGJ1ZmZlciwgYm9vbGVhbiBmbGFnKTsKIAotICAgIFtDb25kaXRpb25hbD1W
SURFTywgUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGJlZ2luTWVkaWFTZXNzaW9uSW50ZXJydXB0aW9u
KERPTVN0cmluZyBpbnRlcnJ1cHRpb25UeXBlKTsKKyAgICBbQ29uZGl0aW9uYWw9VklERU8sIE1h
eVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIGJlZ2luTWVkaWFTZXNzaW9uSW50ZXJydXB0aW9u
KERPTVN0cmluZyBpbnRlcnJ1cHRpb25UeXBlKTsKICAgICBbQ29uZGl0aW9uYWw9VklERU9dIHZv
aWQgZW5kTWVkaWFTZXNzaW9uSW50ZXJydXB0aW9uKERPTVN0cmluZyBmbGFncyk7CiAgICAgW0Nv
bmRpdGlvbmFsPU1FRElBX1NFU1NJT05dIHZvaWQgc2VuZE1lZGlhU2Vzc2lvblN0YXJ0T2ZJbnRl
cnJ1cHRpb25Ob3RpZmljYXRpb24oTWVkaWFTZXNzaW9uSW50ZXJydXB0aW5nQ2F0ZWdvcnkgY2F0
ZWdvcnkpOwogICAgIFtDb25kaXRpb25hbD1NRURJQV9TRVNTSU9OXSB2b2lkIHNlbmRNZWRpYVNl
c3Npb25FbmRPZkludGVycnVwdGlvbk5vdGlmaWNhdGlvbihNZWRpYVNlc3Npb25JbnRlcnJ1cHRp
bmdDYXRlZ29yeSBjYXRlZ29yeSk7CkBAIC00MDQsMjAgKzQwMCwyMCBAQCBlbnVtIFVzZXJJbnRl
cmZhY2VMYXlvdXREaXJlY3Rpb24gewogICAgIFtDb25kaXRpb25hbD1NRURJQV9TRVNTSU9OXSB2
b2lkIHNlbmRNZWRpYUNvbnRyb2xFdmVudChNZWRpYUNvbnRyb2xFdmVudCBldmVudCk7CiAgICAg
W0NvbmRpdGlvbmFsPVZJREVPXSB2b2lkIGFwcGxpY2F0aW9uRGlkRW50ZXJGb3JlZ3JvdW5kKCk7
CiAgICAgW0NvbmRpdGlvbmFsPVZJREVPXSB2b2lkIGFwcGxpY2F0aW9uV2lsbEVudGVyQmFja2dy
b3VuZCgpOwotICAgIFtDb25kaXRpb25hbD1WSURFTywgUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNl
dE1lZGlhU2Vzc2lvblJlc3RyaWN0aW9ucyhET01TdHJpbmcgbWVkaWFUeXBlLCBET01TdHJpbmcg
cmVzdHJpY3Rpb25zKTsKKyAgICBbQ29uZGl0aW9uYWw9VklERU8sIE1heVRocm93TGVnYWN5RXhj
ZXB0aW9uXSB2b2lkIHNldE1lZGlhU2Vzc2lvblJlc3RyaWN0aW9ucyhET01TdHJpbmcgbWVkaWFU
eXBlLCBET01TdHJpbmcgcmVzdHJpY3Rpb25zKTsKICAgICBbQ29uZGl0aW9uYWw9VklERU9dIHZv
aWQgc2V0TWVkaWFFbGVtZW50UmVzdHJpY3Rpb25zKEhUTUxNZWRpYUVsZW1lbnQgZWxlbWVudCwg
RE9NU3RyaW5nIHJlc3RyaWN0aW9ucyk7CiAgICAgW0NvbmRpdGlvbmFsPVdFQl9BVURJT10gdm9p
ZCBzZXRBdWRpb0NvbnRleHRSZXN0cmljdGlvbnMoQXVkaW9Db250ZXh0IGNvbnRleHQsIERPTVN0
cmluZyByZXN0cmljdGlvbnMpOwotICAgIFtDb25kaXRpb25hbD1WSURFTywgUmFpc2VzRXhjZXB0
aW9uXSB2b2lkIHBvc3RSZW1vdGVDb250cm9sQ29tbWFuZChET01TdHJpbmcgY29tbWFuZCwgb3B0
aW9uYWwgdW5yZXN0cmljdGVkIGZsb2F0IGFyZ3VtZW50ID0gMCk7CisgICAgW0NvbmRpdGlvbmFs
PVZJREVPLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBwb3N0UmVtb3RlQ29udHJvbENv
bW1hbmQoRE9NU3RyaW5nIGNvbW1hbmQsIG9wdGlvbmFsIHVucmVzdHJpY3RlZCBmbG9hdCBhcmd1
bWVudCA9IDApOwogICAgIFtDb25kaXRpb25hbD1XSVJFTEVTU19QTEFZQkFDS19UQVJHRVRdIHZv
aWQgc2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJFbmFibGVkKGJvb2xlYW4gZW5hYmxl
ZCk7Ci0gICAgW0NvbmRpdGlvbmFsPVdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCwgUmFpc2VzRXhj
ZXB0aW9uXSB2b2lkIHNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUoRE9NU3Ry
aW5nIGRldmljZU5hbWUsIERPTVN0cmluZyBkZXZpY2VTdGF0ZSk7CisgICAgW0NvbmRpdGlvbmFs
PVdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQg
c2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJTdGF0ZShET01TdHJpbmcgZGV2aWNlTmFt
ZSwgRE9NU3RyaW5nIGRldmljZVN0YXRlKTsKICAgICBbQ29uZGl0aW9uYWw9TUVESUFfU1RSRUFN
XSB2b2lkIHNldE1vY2tNZWRpYUNhcHR1cmVEZXZpY2VzRW5hYmxlZChib29sZWFuIGVuYWJsZWQp
OwogCiAgICAgW0NvbmRpdGlvbmFsPVZJREVPXSB2b2lkIHNpbXVsYXRlU3lzdGVtU2xlZXAoKTsK
ICAgICBbQ29uZGl0aW9uYWw9VklERU9dIHZvaWQgc2ltdWxhdGVTeXN0ZW1XYWtlKCk7CiAgICAg
W0NvbmRpdGlvbmFsPVZJREVPXSBib29sZWFuIGVsZW1lbnRJc0Jsb2NraW5nRGlzcGxheVNsZWVw
KEhUTUxNZWRpYUVsZW1lbnQgZWxlbWVudCk7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSBNb2Nr
UGFnZU92ZXJsYXkgaW5zdGFsbE1vY2tQYWdlT3ZlcmxheShQYWdlT3ZlcmxheVR5cGUgdHlwZSk7
Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gRE9NU3RyaW5nIHBhZ2VPdmVybGF5TGF5ZXJUcmVlQXNU
ZXh0KCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBNb2NrUGFnZU92ZXJsYXkgaW5z
dGFsbE1vY2tQYWdlT3ZlcmxheShQYWdlT3ZlcmxheVR5cGUgdHlwZSk7CisgICAgW01heVRocm93
TGVnYWN5RXhjZXB0aW9uXSBET01TdHJpbmcgcGFnZU92ZXJsYXlMYXllclRyZWVBc1RleHQoKTsK
IAogICAgIHZvaWQgc2V0UGFnZU11dGVkKGJvb2xlYW4gbXV0ZWQpOwogICAgIGJvb2xlYW4gaXNQ
YWdlUGxheWluZ0F1ZGlvKCk7CkBAIC00MzEsMTAgKzQyNywxMCBAQCBlbnVtIFVzZXJJbnRlcmZh
Y2VMYXlvdXREaXJlY3Rpb24gewogICAgIFtDb25kaXRpb25hbD1DT05URU5UX0ZJTFRFUklOR10g
cmVhZG9ubHkgYXR0cmlidXRlIE1vY2tDb250ZW50RmlsdGVyU2V0dGluZ3MgbW9ja0NvbnRlbnRG
aWx0ZXJTZXR0aW5nczsKIAogI2lmIGRlZmluZWQoRU5BQkxFX0NTU19TQ1JPTExfU05BUCkgJiYg
RU5BQkxFX0NTU19TQ1JPTExfU05BUAotICAgIFtSYWlzZXNFeGNlcHRpb25dIERPTVN0cmluZyBz
Y3JvbGxTbmFwT2Zmc2V0cyhFbGVtZW50IGVsZW1lbnQpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4
Y2VwdGlvbl0gRE9NU3RyaW5nIHNjcm9sbFNuYXBPZmZzZXRzKEVsZW1lbnQgZWxlbWVudCk7CiAj
ZW5kaWYKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIERPTVN0cmluZyBwYXRoU3RyaW5nV2l0aFNo
cmlua1dyYXBwZWRSZWN0cyhzZXF1ZW5jZTxkb3VibGU+IHJlY3RDb21wb25lbnRzLCBkb3VibGUg
cmFkaXVzKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIERPTVN0cmluZyBwYXRoU3Ry
aW5nV2l0aFNocmlua1dyYXBwZWRSZWN0cyhzZXF1ZW5jZTxkb3VibGU+IHJlY3RDb21wb25lbnRz
LCBkb3VibGUgcmFkaXVzKTsKIAogICAgIFtDb25kaXRpb25hbD1WSURFT10gRE9NU3RyaW5nIGdl
dEN1cnJlbnRNZWRpYUNvbnRyb2xzU3RhdHVzRm9yRWxlbWVudChIVE1MTWVkaWFFbGVtZW50IGVs
ZW1lbnQpOwogCkBAIC00NDcsNyArNDQzLDcgQEAgZW51bSBVc2VySW50ZXJmYWNlTGF5b3V0RGly
ZWN0aW9uIHsKICAgICBET01TdHJpbmcgcmVzb3VyY2VMb2FkU3RhdGlzdGljc0Zvck9yaWdpbihE
T01TdHJpbmcgZG9tYWluKTsKICAgICB2b2lkIHNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFi
bGVkKGJvb2xlYW4gZW5hYmxlKTsKIAotICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0Q2Fu
U2hvd01vZGFsRGlhbG9nT3ZlcnJpZGUoYm9vbGVhbiBhbGxvdyk7CisgICAgW01heVRocm93TGVn
YWN5RXhjZXB0aW9uXSB2b2lkIHNldENhblNob3dNb2RhbERpYWxvZ092ZXJyaWRlKGJvb2xlYW4g
YWxsb3cpOwogCiAgICAgRE9NU3RyaW5nIGNvbXBvc2VkVHJlZUFzVGV4dChOb2RlIHBhcmVudCk7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29ya2VyR2xv
YmFsU2NvcGUuaWRsIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJHbG9i
YWxTY29wZS5pZGwKaW5kZXggZmRmY2E3MGQ2MzdhOGM4YWYyODNhZjQ5ZTMxZTUxMTA3MTViMmFk
OS4uN2NhY2NkMTExNDgwZWVmNTdmZDQ1MDVkM2ZlNjg0YTliZDNjODQ0NCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5pZGwKKysr
IGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5pZGwK
QEAgLTMzLDcgKzMzLDcgQEAKICAgICBFeHBvc2VkPURlZGljYXRlZFdvcmtlciwKICAgICBKU0dl
bmVyYXRlVG9OYXRpdmVPYmplY3QsCiBdIGludGVyZmFjZSBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxT
Y29wZSA6IFdvcmtlckdsb2JhbFNjb3BlIHsKLSAgICBbQ3VzdG9tLCBSYWlzZXNFeGNlcHRpb25d
IHZvaWQgcG9zdE1lc3NhZ2UoYW55IG1lc3NhZ2UsIG9wdGlvbmFsIEFycmF5IG1lc3NhZ2VQb3J0
cyk7CisgICAgW0N1c3RvbSwgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgcG9zdE1lc3Nh
Z2UoYW55IG1lc3NhZ2UsIG9wdGlvbmFsIEFycmF5IG1lc3NhZ2VQb3J0cyk7CiAKICAgICBhdHRy
aWJ1dGUgRXZlbnRIYW5kbGVyIG9ubWVzc2FnZTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL1dvcmtlci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5p
ZGwKaW5kZXggMjA0N2E4NDI2YzkzOGY0ZjIyNzMyMDExZmMwYTI5ZDFmMmQ1ZGUxZC4uMmMyYzU0
OGViYzExYTI0NjU4NjhlMGZlYmYyZWU4Mzc1ZWM4NTk3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvd29ya2Vycy9Xb3JrZXIuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29y
a2VyLmlkbApAQCAtMzEsNyArMzEsNyBAQAogXSBpbnRlcmZhY2UgV29ya2VyIDogRXZlbnRUYXJn
ZXQgewogICAgIGF0dHJpYnV0ZSBFdmVudEhhbmRsZXIgb25tZXNzYWdlOwogCi0gICAgW0N1c3Rv
bSwgUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHBvc3RNZXNzYWdlKFNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZSBtZXNzYWdlLCBvcHRpb25hbCBBcnJheSBtZXNzYWdlUG9ydHMpOworICAgIFtDdXN0b20sIE1h
eVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIHBvc3RNZXNzYWdlKFNlcmlhbGl6ZWRTY3JpcHRW
YWx1ZSBtZXNzYWdlLCBvcHRpb25hbCBBcnJheSBtZXNzYWdlUG9ydHMpOwogCiAgICAgdm9pZCB0
ZXJtaW5hdGUoKTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS94bWwvRE9NUGFyc2Vy
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3htbC9ET01QYXJzZXIuaWRsCmluZGV4IDQ2MTMxNTg4OGM1
ZTA4YjRjOWY0NDE0NTI5MjUxZTg3NTI3ZDQxNGQuLjI5MDNkMTg3YTIzZmVkYWM5OTg2YmM3YjFm
M2EyNjBiMGM1M2MwM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3htbC9ET01QYXJzZXIu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3htbC9ET01QYXJzZXIuaWRsCkBAIC0yMiw1ICsyMiw1
IEBACiAgICAgQ29uc3RydWN0b3JDYWxsV2l0aD1Eb2N1bWVudCwKICAgICBJbXBsZW1lbnRhdGlv
bkxhY2tzVlRhYmxlLAogXSBpbnRlcmZhY2UgRE9NUGFyc2VyIHsKLSAgICBbUmFpc2VzRXhjZXB0
aW9uLCBOZXdPYmplY3RdIERvY3VtZW50IHBhcnNlRnJvbVN0cmluZyhET01TdHJpbmcgc3RyLCBE
T01TdHJpbmcgY29udGVudFR5cGUpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbiwgTmV3
T2JqZWN0XSBEb2N1bWVudCBwYXJzZUZyb21TdHJpbmcoRE9NU3RyaW5nIHN0ciwgRE9NU3RyaW5n
IGNvbnRlbnRUeXBlKTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0
cFJlcXVlc3QuaWRsIGIvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0LmlkbAppbmRl
eCBlNGM4N2UwYWRlZDM3YmM1MmQwMzIyMjhjODg5NTZhYjIxOGRkYjk3Li42YmI3YmI3NmRkZGYz
NjRmMDJlMWYwN2Y2ZWZmMTEyOWRjODQ0OGIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS94
bWwvWE1MSHR0cFJlcXVlc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVx
dWVzdC5pZGwKQEAgLTU2LDE4ICs1NiwxOCBAQCBlbnVtIFhNTEh0dHBSZXF1ZXN0UmVzcG9uc2VU
eXBlIHsKICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBMT0FESU5HID0gMzsKICAgICBjb25zdCB1
bnNpZ25lZCBzaG9ydCBET05FID0gNDsKIAotICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0
dHJpYnV0ZSB1bnNpZ25lZCBsb25nIHRpbWVvdXQ7CisgICAgW1NldHRlck1heVRocm93TGVnYWN5
RXhjZXB0aW9uXSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyB0aW1lb3V0OwogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSB1bnNpZ25lZCBzaG9ydCByZWFkeVN0YXRlOwogCi0gICAgW1NldHRlclJhaXNl
c0V4Y2VwdGlvbl0gYXR0cmlidXRlIGJvb2xlYW4gd2l0aENyZWRlbnRpYWxzOworICAgIFtTZXR0
ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIGJvb2xlYW4gd2l0aENyZWRlbnRp
YWxzOwogCiAgICAgLy8gVXNlIG92ZXJsb2FkaW5nIHJhdGhlciB0aGFuICJib29sZWFuIGFzeW5j
ID0gdHJ1ZSIgYmVjYXVzZSBsZWdhY3kgY29udGVudCBwcmV2ZW50cyB0cmVhdGluZyB0aGUgJ2Fz
eW5jJyBhcmd1bWVudCBiZWluZyB1bmRlZmluZWQgaWRlbnRpY2FsIGZyb20gaXQgYmVpbmcgb21p
dHRlZC4KLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIG9wZW4oRE9NU3RyaW5nIG1ldGhvZCwg
RE9NU3RyaW5nIHVybCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBvcGVuKERPTVN0cmlu
ZyBtZXRob2QsIERPTVN0cmluZyB1cmwsIGJvb2xlYW4gYXN5bmMsIG9wdGlvbmFsIERPTVN0cmlu
Zz8gdXNlciA9IG51bGwsIG9wdGlvbmFsIERPTVN0cmluZz8gcGFzc3dvcmQgPSBudWxsKTsKKyAg
ICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgb3BlbihET01TdHJpbmcgbWV0aG9kLCBE
T01TdHJpbmcgdXJsKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgb3BlbihE
T01TdHJpbmcgbWV0aG9kLCBET01TdHJpbmcgdXJsLCBib29sZWFuIGFzeW5jLCBvcHRpb25hbCBE
T01TdHJpbmc/IHVzZXIgPSBudWxsLCBvcHRpb25hbCBET01TdHJpbmc/IHBhc3N3b3JkID0gbnVs
bCk7CiAKLSAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldFJlcXVlc3RIZWFkZXIoRE9NU3Ry
aW5nIGhlYWRlciwgRE9NU3RyaW5nIHZhbHVlKTsKKyAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRp
b25dIHZvaWQgc2V0UmVxdWVzdEhlYWRlcihET01TdHJpbmcgaGVhZGVyLCBET01TdHJpbmcgdmFs
dWUpOwogCi0gICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNlbmQoKTsKKyAgICBb
Q3VzdG9tLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBzZW5kKCk7CiAKICAgICB2b2lk
IGFib3J0KCk7CiAKQEAgLTc2LDEwICs3NiwxMCBAQCBlbnVtIFhNTEh0dHBSZXF1ZXN0UmVzcG9u
c2VUeXBlIHsKICAgICAvLyByZXNwb25zZQogICAgIERPTVN0cmluZyBnZXRBbGxSZXNwb25zZUhl
YWRlcnMoKTsKICAgICBET01TdHJpbmc/IGdldFJlc3BvbnNlSGVhZGVyKERPTVN0cmluZyBoZWFk
ZXIpOwotICAgIFtHZXR0ZXJSYWlzZXNFeGNlcHRpb24sIEN1c3RvbUdldHRlcl0gcmVhZG9ubHkg
YXR0cmlidXRlIERPTVN0cmluZz8gcmVzcG9uc2VUZXh0OwotICAgIFtHZXR0ZXJSYWlzZXNFeGNl
cHRpb25dIHJlYWRvbmx5IGF0dHJpYnV0ZSBEb2N1bWVudCByZXNwb25zZVhNTDsKKyAgICBbR2V0
dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb24sIEN1c3RvbUdldHRlcl0gcmVhZG9ubHkgYXR0cmli
dXRlIERPTVN0cmluZz8gcmVzcG9uc2VUZXh0OworICAgIFtHZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4
Y2VwdGlvbl0gcmVhZG9ubHkgYXR0cmlidXRlIERvY3VtZW50IHJlc3BvbnNlWE1MOwogCi0gICAg
W1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIFhNTEh0dHBSZXF1ZXN0UmVzcG9uc2VU
eXBlIHJlc3BvbnNlVHlwZTsKKyAgICBbU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0
dHJpYnV0ZSBYTUxIdHRwUmVxdWVzdFJlc3BvbnNlVHlwZSByZXNwb25zZVR5cGU7CiAgICAgW0pT
QnVpbHRpbl0gcmVhZG9ubHkgYXR0cmlidXRlIE9iamVjdCByZXNwb25zZTsKIAogICAgIHJlYWRv
bmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBzaG9ydCBzdGF0dXM7CkBAIC05MCw1ICs5MCw1IEBAIGVu
dW0gWE1MSHR0cFJlcXVlc3RSZXNwb25zZVR5cGUgewogICAgIFtQcml2YXRlSWRlbnRpZmllciwg
Q3VzdG9tXSBhbnkgcmV0cmlldmVSZXNwb25zZSgpOwogCiAgICAgLy8gRXh0ZW5zaW9uCi0gICAg
W1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBvdmVycmlkZU1pbWVUeXBlKERPTVN0cmluZyBvdmVycmlk
ZSk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2b2lkIG92ZXJyaWRlTWltZVR5cGUo
RE9NU3RyaW5nIG92ZXJyaWRlKTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS94bWwv
WFBhdGhFdmFsdWF0b3IuaWRsIGIvU291cmNlL1dlYkNvcmUveG1sL1hQYXRoRXZhbHVhdG9yLmlk
bAppbmRleCAzNTA0MGVjMjNiY2EyZWQ4NjVjY2VjZjIwMDc4YWQwM2EyMjY4MTA1Li43ZDEwNTgy
MjA4NGZhYjY5MDExNjQ3MDFlNzczOGQxNjNmNDBjYWM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS94bWwvWFBhdGhFdmFsdWF0b3IuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3htbC9YUGF0
aEV2YWx1YXRvci5pZGwKQEAgLTIyLDEyICsyMiwxMiBAQAogICAgIEltcGxlbWVudGF0aW9uTGFj
a3NWVGFibGUsCiBdIGludGVyZmFjZSBYUGF0aEV2YWx1YXRvciB7CiAgICAgLy8gRklYTUU6IFVz
aW5nICJ1bmRlZmluZWQiIGFzIGRlZmF1bHQgcGFyYW1ldGVyIHZhbHVlIGlzIHdyb25nLgotICAg
IFtSYWlzZXNFeGNlcHRpb25dIFhQYXRoRXhwcmVzc2lvbiBjcmVhdGVFeHByZXNzaW9uKG9wdGlv
bmFsIERPTVN0cmluZyBleHByZXNzaW9uID0gInVuZGVmaW5lZCIsIG9wdGlvbmFsIFhQYXRoTlNS
ZXNvbHZlcj8gcmVzb2x2ZXIpOworICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gWFBhdGhF
eHByZXNzaW9uIGNyZWF0ZUV4cHJlc3Npb24ob3B0aW9uYWwgRE9NU3RyaW5nIGV4cHJlc3Npb24g
PSAidW5kZWZpbmVkIiwgb3B0aW9uYWwgWFBhdGhOU1Jlc29sdmVyPyByZXNvbHZlcik7CiAKICAg
ICBYUGF0aE5TUmVzb2x2ZXIgY3JlYXRlTlNSZXNvbHZlcihvcHRpb25hbCBOb2RlPyBub2RlUmVz
b2x2ZXIpOwogCiAgICAgLy8gRklYTUU6IFVzaW5nICJ1bmRlZmluZWQiIGFzIGRlZmF1bHQgcGFy
YW1ldGVyIHZhbHVlIGlzIHdyb25nLgotICAgIFtSYWlzZXNFeGNlcHRpb25dIFhQYXRoUmVzdWx0
IGV2YWx1YXRlKG9wdGlvbmFsIERPTVN0cmluZyBleHByZXNzaW9uID0gInVuZGVmaW5lZCIsCisg
ICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBYUGF0aFJlc3VsdCBldmFsdWF0ZShvcHRpb25h
bCBET01TdHJpbmcgZXhwcmVzc2lvbiA9ICJ1bmRlZmluZWQiLAogICAgICAgICAgICAgICAgICAg
ICAgICAgIG9wdGlvbmFsIE5vZGU/IGNvbnRleHROb2RlLAogICAgICAgICAgICAgICAgICAgICAg
ICAgIG9wdGlvbmFsIFhQYXRoTlNSZXNvbHZlcj8gcmVzb2x2ZXIsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgb3B0aW9uYWwgdW5zaWduZWQgc2hvcnQgdHlwZSA9IDAsCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS94bWwvWFBhdGhFeHByZXNzaW9uLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3ht
bC9YUGF0aEV4cHJlc3Npb24uaWRsCmluZGV4IGIwZGYxNTFkODliNDgyZDNlZTlhNGY3NmY2MjFm
NWUzOWY1Yzk0MTkuLjY3NGNlOGQ5M2Q1MmY4OGUwOTUzMmU4ZTRiMTAzMzk4YjAyMzU3MGYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3htbC9YUGF0aEV4cHJlc3Npb24uaWRsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3htbC9YUGF0aEV4cHJlc3Npb24uaWRsCkBAIC0yMiw1ICsyMiw1IEBACiAg
ICAgRXhwb3J0VG9XcmFwcGVkRnVuY3Rpb24sCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJs
ZSwKIF0gaW50ZXJmYWNlIFhQYXRoRXhwcmVzc2lvbiB7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0g
WFBhdGhSZXN1bHQgZXZhbHVhdGUob3B0aW9uYWwgTm9kZT8gY29udGV4dE5vZGUgPSBudWxsLCBv
cHRpb25hbCB1bnNpZ25lZCBzaG9ydCB0eXBlID0gMCwgb3B0aW9uYWwgWFBhdGhSZXN1bHQ/IGlu
UmVzdWx0ID0gbnVsbCk7CisgICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBYUGF0aFJlc3Vs
dCBldmFsdWF0ZShvcHRpb25hbCBOb2RlPyBjb250ZXh0Tm9kZSA9IG51bGwsIG9wdGlvbmFsIHVu
c2lnbmVkIHNob3J0IHR5cGUgPSAwLCBvcHRpb25hbCBYUGF0aFJlc3VsdD8gaW5SZXN1bHQgPSBu
dWxsKTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS94bWwvWFBhdGhSZXN1bHQuaWRs
IGIvU291cmNlL1dlYkNvcmUveG1sL1hQYXRoUmVzdWx0LmlkbAppbmRleCBmNTgxMWUxZWQwMDQ0
OWU0ZTNhNGE4MThlZDBiNTkzODM0ZDU0M2ZiLi5jZGFjYjY2NmFhNjY1N2QzY2M0ZTBhNTY4ZDYw
NjdiZWM2MzFlMzQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS94bWwvWFBhdGhSZXN1bHQu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3htbC9YUGF0aFJlc3VsdC5pZGwKQEAgLTM0LDE0ICsz
NCwxNCBAQAogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IEZJUlNUX09SREVSRURfTk9ERV9UWVBF
ID0gOTsKIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBzaG9ydCByZXN1bHRUeXBl
OwotICAgIFtHZXR0ZXJSYWlzZXNFeGNlcHRpb25dIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnJlc3Ry
aWN0ZWQgZG91YmxlIG51bWJlclZhbHVlOwotICAgIFtHZXR0ZXJSYWlzZXNFeGNlcHRpb25dIHJl
YWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgc3RyaW5nVmFsdWU7Ci0gICAgW0dldHRlclJhaXNl
c0V4Y2VwdGlvbl0gcmVhZG9ubHkgYXR0cmlidXRlIGJvb2xlYW4gYm9vbGVhblZhbHVlOwotICAg
IFtHZXR0ZXJSYWlzZXNFeGNlcHRpb25dIHJlYWRvbmx5IGF0dHJpYnV0ZSBOb2RlIHNpbmdsZU5v
ZGVWYWx1ZTsKKyAgICBbR2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHJlYWRvbmx5IGF0
dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91YmxlIG51bWJlclZhbHVlOworICAgIFtHZXR0ZXJNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbl0gcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBzdHJpbmdW
YWx1ZTsKKyAgICBbR2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHJlYWRvbmx5IGF0dHJp
YnV0ZSBib29sZWFuIGJvb2xlYW5WYWx1ZTsKKyAgICBbR2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNl
cHRpb25dIHJlYWRvbmx5IGF0dHJpYnV0ZSBOb2RlIHNpbmdsZU5vZGVWYWx1ZTsKIAogICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIGludmFsaWRJdGVyYXRvclN0YXRlOwotICAgIFtHZXR0
ZXJSYWlzZXNFeGNlcHRpb25dIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIHNuYXBz
aG90TGVuZ3RoOworICAgIFtHZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gcmVhZG9ubHkg
YXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgc25hcHNob3RMZW5ndGg7CiAKLSAgICBbUmFpc2VzRXhj
ZXB0aW9uXSBOb2RlIGl0ZXJhdGVOZXh0KCk7Ci0gICAgW1JhaXNlc0V4Y2VwdGlvbl0gTm9kZSBz
bmFwc2hvdEl0ZW0ob3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCA9IDApOworICAgIFtNYXlU
aHJvd0xlZ2FjeUV4Y2VwdGlvbl0gTm9kZSBpdGVyYXRlTmV4dCgpOworICAgIFtNYXlUaHJvd0xl
Z2FjeUV4Y2VwdGlvbl0gTm9kZSBzbmFwc2hvdEl0ZW0ob3B0aW9uYWwgdW5zaWduZWQgbG9uZyBp
bmRleCA9IDApOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL0ludGVyZmFjZXMv
RE9NRXZlbnRzLmlkbCBiL1NvdXJjZS9XZWJLaXQvd2luL0ludGVyZmFjZXMvRE9NRXZlbnRzLmlk
bAppbmRleCAxZDcwYzAzZWFlNjI4YTBjM2M5MzIwZWNhODI4MjlmZmZiYjRjMDQ3Li42YjAxMzAz
MDg0ODlmNjA1NDJhMjMxYThlMzQwZTlkYWRhYTIxMTU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L3dpbi9JbnRlcmZhY2VzL0RPTUV2ZW50cy5pZGwKKysrIGIvU291cmNlL1dlYktpdC93aW4v
SW50ZXJmYWNlcy9ET01FdmVudHMuaWRsCkBAIC0xNTAsNyArMTUwLDcgQEAgaW50ZXJmYWNlIElE
T01FdmVudFRhcmdldCA6IElVbmtub3duCiBdCiBpbnRlcmZhY2UgSURPTURvY3VtZW50RXZlbnQg
OiBJVW5rbm93bgogewotICAgIC8vW1JhaXNlc0V4Y2VwdGlvbl0gRXZlbnQgICAgICAgICAgICAg
IGNyZWF0ZUV2ZW50KERPTVN0cmluZyBldmVudFR5cGUpOworICAgIC8vW01heVRocm93TGVnYWN5
RXhjZXB0aW9uXSBFdmVudCAgICAgICAgICAgICAgY3JlYXRlRXZlbnQoRE9NU3RyaW5nIGV2ZW50
VHlwZSk7CiAgICAgSFJFU1VMVCBjcmVhdGVFdmVudChbaW5dIEJTVFIgZXZlbnRUeXBlLCBbb3V0
LCByZXR2YWxdIElET01FdmVudCoqIHJlc3VsdCk7CiB9CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL0No
YW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBlNTFkYzNhODQ3ODYxYzEzYWI0ZmMwZjky
MWNhMTdiNDJmMDkzY2E4Li5mMWMzMjdlN2E2MjdhZTVmOTBlNjMzMTJkM2U1NzljZDZiZTAzODJi
IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTIgQEAKKzIwMTYtMTAtMDIgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgor
CisgICAgICAgIFJlbmFtZSBFeGNlcHRpb25Db2RlLWJhc2VkIGV4Y2VwdGlvbiBoYW5kbGluZyB0
byAibGVnYWN5IgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTYyODU5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBTY3JpcHRzL2RvLXdlYmNvcmUtcmVuYW1lOiBVcGRhdGVkIHNjcmlwdCB0byBkbyB0aGlz
IHJvdW5kIG9mIHJlbmFtZXMuCisKIDIwMTYtMDktMzAgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hy
aXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBGaXggb2ZmLWJ5LW9uZSBlcnJvciBpbiBV
UkxQYXJzZXI6OnBhcnNlSVB2NEhvc3QKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvZG8td2Vi
Y29yZS1yZW5hbWUgYi9Ub29scy9TY3JpcHRzL2RvLXdlYmNvcmUtcmVuYW1lCmluZGV4IDgyZDEy
ZjA4MDkyZmNkYjcyMmM5MjQ2ZWQ4ZmU0OWRlYjc5ZTQxZGMuLmFiNTU5ZjA5MzM2NDUzM2Y2ODNi
M2QzMmQ1NmU1MzU1MWZhMDgxNjcgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvZG8td2ViY29y
ZS1yZW5hbWUKKysrIGIvVG9vbHMvU2NyaXB0cy9kby13ZWJjb3JlLXJlbmFtZQpAQCAtOTksNyAr
OTksMTMgQEAgc3ViIHdhbnRlZAogbXkgJGlzRE9NVHlwZVJlbmFtZSA9IDA7CiBteSAlcmVuYW1l
cyA9ICgKICAgICAjIFJlbmFtZXMgZ28gaGVyZSBpbiB0aGUgZm9ybSBvZjoKLSAgICAiSlNET01C
dWlsZCIgPT4gIkpTRE9NQ29udmVydCIsCisgICAgIkNvbnN0cnVjdG9yUmFpc2VzRXhjZXB0aW9u
IiA9PiAiQ29uc3RydWN0b3JNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbiIsCisgICAgIkdldHRlclJh
aXNlc0V4Y2VwdGlvbiIgPT4gIkdldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uIiwKKyAgICAi
R2V0dGVyUmFpc2VzRXhjZXB0aW9uV2l0aE1lc3NhZ2UiID0+ICJHZXR0ZXJNYXlUaHJvd0xlZ2Fj
eUV4Y2VwdGlvbldpdGhNZXNzYWdlIiwKKyAgICAiUmFpc2VzRXhjZXB0aW9uIiA9PiAiTWF5VGhy
b3dMZWdhY3lFeGNlcHRpb24iLAorICAgICJSYWlzZXNFeGNlcHRpb25XaXRoTWVzc2FnZSIgPT4g
Ik1heVRocm93TGVnYWN5RXhjZXB0aW9uV2l0aE1lc3NhZ2UiLAorICAgICJTZXR0ZXJSYWlzZXNF
eGNlcHRpb24iID0+ICJTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbiIsCisgICAgIlNldHRl
clJhaXNlc0V4Y2VwdGlvbldpdGhNZXNzYWdlIiA9PiAiU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNl
cHRpb25XaXRoTWVzc2FnZSIsCiApOwogCiBteSAlcmVuYW1lc0NvbnRlbXBsYXRlZEZvclRoZUZ1
dHVyZSA9ICgK
</data>

          </attachment>
      

    </bug>

</bugzilla>